From 1896d12cec29a61bf64d71236619ad8ff49f3d4b Mon Sep 17 00:00:00 2001 From: Lukas Fittl Date: Fri, 22 Dec 2023 17:44:06 -0800 Subject: [PATCH] Release 5.0.0 (v5), add Postgres 16 support (#106) --- Makefile | 4 +- README.md | 52 +- benchmark_test.go | 4 +- fingerprint_test.go | 2 +- go.mod | 2 +- normalize_test.go | 4 +- parse_test.go | 42 +- parser/include/access/amapi.h | 4 +- parser/include/access/attmap.h | 8 +- parser/include/access/attnum.h | 2 +- parser/include/access/clog.h | 2 +- parser/include/access/commit_ts.h | 2 +- parser/include/access/detoast.h | 2 +- parser/include/access/genam.h | 12 +- parser/include/access/gin.h | 19 +- parser/include/access/htup.h | 2 +- parser/include/access/htup_details.h | 8 +- parser/include/access/itup.h | 119 +- parser/include/access/parallel.h | 4 +- parser/include/access/printtup.h | 2 +- parser/include/access/relation.h | 2 +- parser/include/access/relscan.h | 2 +- parser/include/access/rmgrlist.h | 4 +- parser/include/access/sdir.h | 15 +- parser/include/access/skey.h | 2 +- parser/include/access/stratnum.h | 2 +- parser/include/access/sysattr.h | 2 +- parser/include/access/table.h | 2 +- parser/include/access/tableam.h | 113 +- parser/include/access/toast_compression.h | 2 +- parser/include/access/transam.h | 2 +- parser/include/access/tsmapi.h | 82 + parser/include/access/tupconvert.h | 7 +- parser/include/access/tupdesc.h | 4 +- parser/include/access/tupmacs.h | 156 +- parser/include/access/twophase.h | 4 +- parser/include/access/xact.h | 43 +- parser/include/access/xlog.h | 31 +- parser/include/access/xlog_internal.h | 162 +- parser/include/access/xlogbackup.h | 41 + parser/include/access/xlogdefs.h | 31 +- parser/include/access/xlogprefetcher.h | 2 +- parser/include/access/xlogreader.h | 13 +- parser/include/access/xlogrecord.h | 22 +- parser/include/access/xlogrecovery.h | 7 +- parser/include/archive/archive_module.h | 59 + parser/include/c.h | 300 +- parser/include/catalog/catalog.h | 7 +- parser/include/catalog/catversion.h | 8 +- parser/include/catalog/dependency.h | 9 +- parser/include/catalog/genbki.h | 13 +- parser/include/catalog/index.h | 8 +- parser/include/catalog/indexing.h | 2 +- parser/include/catalog/namespace.h | 4 +- parser/include/catalog/objectaccess.h | 18 +- parser/include/catalog/objectaddress.h | 6 +- parser/include/catalog/pg_aggregate.h | 2 +- parser/include/catalog/pg_aggregate_d.h | 2 +- parser/include/catalog/pg_am.h | 2 +- parser/include/catalog/pg_am_d.h | 2 +- parser/include/catalog/pg_attribute.h | 36 +- parser/include/catalog/pg_attribute_d.h | 38 +- parser/include/catalog/pg_authid.h | 2 +- parser/include/catalog/pg_authid_d.h | 4 +- parser/include/catalog/pg_class.h | 2 +- parser/include/catalog/pg_class_d.h | 2 +- parser/include/catalog/pg_collation.h | 4 +- parser/include/catalog/pg_collation_d.h | 7 +- parser/include/catalog/pg_constraint.h | 4 +- parser/include/catalog/pg_constraint_d.h | 2 +- parser/include/catalog/pg_control.h | 10 +- parser/include/catalog/pg_conversion.h | 4 +- parser/include/catalog/pg_conversion_d.h | 2 +- parser/include/catalog/pg_database.h | 124 + parser/include/catalog/pg_database_d.h | 52 + parser/include/catalog/pg_depend.h | 2 +- parser/include/catalog/pg_depend_d.h | 2 +- parser/include/catalog/pg_event_trigger.h | 2 +- parser/include/catalog/pg_event_trigger_d.h | 2 +- parser/include/catalog/pg_index.h | 2 +- parser/include/catalog/pg_index_d.h | 2 +- parser/include/catalog/pg_language.h | 2 +- parser/include/catalog/pg_language_d.h | 2 +- parser/include/catalog/pg_namespace.h | 2 +- parser/include/catalog/pg_namespace_d.h | 2 +- parser/include/catalog/pg_opclass.h | 2 +- parser/include/catalog/pg_opclass_d.h | 2 +- parser/include/catalog/pg_operator.h | 2 +- parser/include/catalog/pg_operator_d.h | 2 +- parser/include/catalog/pg_opfamily.h | 5 +- parser/include/catalog/pg_opfamily_d.h | 6 +- parser/include/catalog/pg_parameter_acl.h | 60 - parser/include/catalog/pg_parameter_acl_d.h | 34 - parser/include/catalog/pg_partitioned_table.h | 2 +- .../include/catalog/pg_partitioned_table_d.h | 2 +- parser/include/catalog/pg_proc.h | 2 +- parser/include/catalog/pg_proc_d.h | 2 +- parser/include/catalog/pg_publication.h | 7 +- parser/include/catalog/pg_publication_d.h | 2 +- .../include/catalog/pg_replication_origin.h | 2 +- .../include/catalog/pg_replication_origin_d.h | 2 +- parser/include/catalog/pg_statistic.h | 2 +- parser/include/catalog/pg_statistic_d.h | 2 +- parser/include/catalog/pg_statistic_ext.h | 2 +- parser/include/catalog/pg_statistic_ext_d.h | 2 +- parser/include/catalog/pg_transform.h | 2 +- parser/include/catalog/pg_transform_d.h | 2 +- parser/include/catalog/pg_trigger.h | 2 +- parser/include/catalog/pg_trigger_d.h | 2 +- parser/include/catalog/pg_ts_config.h | 2 +- parser/include/catalog/pg_ts_config_d.h | 2 +- parser/include/catalog/pg_ts_dict.h | 2 +- parser/include/catalog/pg_ts_dict_d.h | 2 +- parser/include/catalog/pg_ts_parser.h | 2 +- parser/include/catalog/pg_ts_parser_d.h | 2 +- parser/include/catalog/pg_ts_template.h | 2 +- parser/include/catalog/pg_ts_template_d.h | 2 +- parser/include/catalog/pg_type.h | 2 +- parser/include/catalog/pg_type_d.h | 2 +- parser/include/catalog/storage.h | 12 +- parser/include/commands/async.h | 2 +- parser/include/commands/dbcommands.h | 3 +- parser/include/commands/defrem.h | 3 +- parser/include/commands/event_trigger.h | 2 +- parser/include/commands/explain.h | 4 +- parser/include/commands/prepare.h | 2 +- parser/include/commands/tablespace.h | 8 +- parser/include/commands/trigger.h | 29 +- parser/include/commands/user.h | 12 +- parser/include/commands/vacuum.h | 74 +- parser/include/commands/variable.h | 38 - parser/include/common/cryptohash.h | 39 + parser/include/common/file_perm.h | 2 +- parser/include/common/hashfn.h | 2 +- parser/include/common/int.h | 437 + parser/include/common/ip.h | 6 +- parser/include/common/keywords.h | 2 +- parser/include/common/kwlookup.h | 4 +- parser/include/common/pg_prng.h | 5 +- parser/include/common/relpath.h | 33 +- parser/include/common/scram-common.h | 70 + parser/include/common/sha2.h | 32 + parser/include/common/string.h | 8 +- .../common/unicode_east_asian_fw_table.h | 20 +- ...ing_table.h => unicode_nonspacing_table.h} | 44 +- parser/include/copyfuncs.funcs.c | 5013 + parser/include/copyfuncs.switch.c | 938 + parser/include/datatype/timestamp.h | 15 +- parser/include/equalfuncs.funcs.c | 3097 + parser/include/equalfuncs.switch.c | 785 + parser/include/executor/execdesc.h | 2 +- parser/include/executor/executor.h | 51 +- parser/include/executor/functions.h | 2 +- parser/include/executor/instrument.h | 2 +- parser/include/executor/spi.h | 4 +- parser/include/executor/tablefunc.h | 2 +- parser/include/executor/tuptable.h | 29 +- parser/include/fmgr.h | 23 +- parser/include/foreign/fdwapi.h | 294 + parser/include/funcapi.h | 24 +- parser/include/getaddrinfo.h | 162 - parser/include/gram.h | 1127 + parser/include/{parser => }/gramparse.h | 8 +- parser/include/jit/jit.h | 4 +- parser/include/kwlist_d.h | 1044 +- parser/include/lib/dshash.h | 5 +- parser/include/lib/ilist.h | 457 +- parser/include/lib/pairingheap.h | 2 +- parser/include/lib/simplehash.h | 18 +- parser/include/lib/sort_template.h | 2 +- parser/include/lib/stringinfo.h | 6 +- parser/include/libpq/auth.h | 10 +- parser/include/libpq/crypt.h | 2 +- parser/include/libpq/hba.h | 41 +- parser/include/libpq/libpq-be.h | 61 +- parser/include/libpq/libpq.h | 2 +- parser/include/libpq/pqcomm.h | 51 +- parser/include/libpq/pqformat.h | 4 +- parser/include/libpq/pqsignal.h | 32 +- parser/include/libpq/sasl.h | 136 + parser/include/libpq/scram.h | 37 + parser/include/mb/pg_wchar.h | 53 +- parser/include/mb/stringinfo_mb.h | 2 +- parser/include/miscadmin.h | 40 +- parser/include/nodes/bitmapset.h | 18 +- parser/include/nodes/execnodes.h | 113 +- parser/include/nodes/extensible.h | 8 +- parser/include/nodes/lockoptions.h | 2 +- parser/include/nodes/makefuncs.h | 16 +- parser/include/nodes/memnodes.h | 11 +- parser/include/nodes/miscnodes.h | 56 + parser/include/nodes/nodeFuncs.h | 118 +- parser/include/nodes/nodes.h | 605 +- parser/include/nodes/nodetags.h | 471 + parser/include/nodes/params.h | 6 +- parser/include/nodes/parsenodes.h | 516 +- parser/include/nodes/pathnodes.h | 1530 +- parser/include/nodes/pg_list.h | 37 +- parser/include/nodes/plannodes.h | 491 +- parser/include/nodes/primnodes.h | 892 +- parser/include/nodes/print.h | 2 +- parser/include/{utils => nodes}/queryjumble.h | 12 +- parser/include/nodes/replnodes.h | 111 + parser/include/nodes/supportnodes.h | 346 + parser/include/nodes/tidbitmap.h | 2 +- parser/include/nodes/value.h | 14 +- parser/include/optimizer/cost.h | 10 +- parser/include/optimizer/geqo.h | 2 +- parser/include/optimizer/geqo_gene.h | 2 +- parser/include/optimizer/optimizer.h | 16 +- parser/include/optimizer/paths.h | 23 +- parser/include/optimizer/planmain.h | 9 +- parser/include/parser/analyze.h | 7 +- parser/include/parser/gram.h | 1101 - parser/include/parser/kwlist.h | 13 +- parser/include/parser/parse_agg.h | 6 +- parser/include/parser/parse_coerce.h | 4 +- parser/include/parser/parse_expr.h | 2 +- parser/include/parser/parse_func.h | 2 +- parser/include/parser/parse_node.h | 26 +- parser/include/parser/parse_oper.h | 6 +- parser/include/parser/parse_relation.h | 11 +- parser/include/parser/parse_type.h | 7 +- parser/include/parser/parser.h | 2 +- parser/include/parser/parsetree.h | 2 +- parser/include/parser/scanner.h | 4 +- parser/include/parser/scansup.h | 2 +- parser/include/partitioning/partdefs.h | 2 +- parser/include/pg_config.h | 237 +- parser/include/pg_config_manual.h | 54 +- parser/include/pg_getopt.h | 2 +- parser/include/pg_query.h | 30 +- parser/include/pg_query_enum_defs.c | 460 +- parser/include/pg_query_fingerprint_conds.c | 1034 +- parser/include/pg_query_fingerprint_defs.c | 9524 +- parser/include/pg_query_outfuncs_conds.c | 728 +- parser/include/pg_query_outfuncs_defs.c | 2455 +- parser/include/pg_query_readfuncs_conds.c | 260 +- parser/include/pg_query_readfuncs_defs.c | 3153 +- parser/include/pg_trace.h | 2 +- parser/include/pgstat.h | 265 +- parser/include/pgtime.h | 6 +- parser/include/pl_gram.h | 126 +- parser/include/pl_reserved_kwlist.h | 2 +- parser/include/pl_reserved_kwlist_d.h | 2 +- parser/include/pl_unreserved_kwlist.h | 3 +- parser/include/pl_unreserved_kwlist_d.h | 94 +- parser/include/plpgsql.h | 39 +- parser/include/port.h | 117 +- parser/include/port/atomics.h | 9 +- parser/include/port/atomics/arch-arm.h | 6 +- parser/include/port/atomics/arch-ppc.h | 42 +- parser/include/port/atomics/arch-x86.h | 4 +- parser/include/port/atomics/fallback.h | 6 +- parser/include/port/atomics/generic-gcc.h | 2 +- parser/include/port/atomics/generic.h | 2 +- parser/include/port/pg_bitutils.h | 87 +- parser/include/port/pg_bswap.h | 2 +- parser/include/port/pg_crc32c.h | 2 +- parser/include/port/simd.h | 375 + parser/include/portability/instr_time.h | 221 +- parser/include/postgres.h | 639 +- parser/include/postgres_ext.h | 1 - parser/include/postmaster/autovacuum.h | 5 +- parser/include/postmaster/auxprocess.h | 2 +- parser/include/postmaster/bgworker.h | 4 +- .../include/postmaster/bgworker_internals.h | 2 +- parser/include/postmaster/bgwriter.h | 4 +- parser/include/postmaster/fork_process.h | 2 +- parser/include/postmaster/interrupt.h | 2 +- parser/include/postmaster/pgarch.h | 39 +- parser/include/postmaster/postmaster.h | 7 +- parser/include/postmaster/startup.h | 4 +- parser/include/postmaster/syslogger.h | 4 +- parser/include/postmaster/walwriter.h | 4 +- parser/include/protobuf/pg_query.pb-c.h | 11771 +- parser/include/protobuf/pg_query.pb.h | 203665 ++++++++------- parser/include/regex/regex.h | 15 +- parser/include/replication/logicallauncher.h | 7 +- parser/include/replication/logicalproto.h | 40 +- parser/include/replication/logicalworker.h | 15 +- parser/include/replication/origin.h | 8 +- parser/include/replication/reorderbuffer.h | 158 +- parser/include/replication/slot.h | 31 +- parser/include/replication/syncrep.h | 10 +- parser/include/replication/walreceiver.h | 24 +- parser/include/replication/walsender.h | 26 +- parser/include/rewrite/prs2lock.h | 2 +- parser/include/rewrite/rewriteHandler.h | 5 +- parser/include/rewrite/rewriteManip.h | 13 +- parser/include/rewrite/rewriteSupport.h | 2 +- .../src_backend_nodes_copyfuncs.funcs.c | 5321 + .../src_backend_nodes_equalfuncs.funcs.c | 3354 + parser/include/storage/backendid.h | 2 +- parser/include/storage/block.h | 55 +- parser/include/storage/buf.h | 2 +- parser/include/storage/bufmgr.h | 270 +- parser/include/storage/bufpage.h | 239 +- parser/include/storage/condition_variable.h | 4 +- parser/include/storage/dsm.h | 9 +- parser/include/storage/dsm_impl.h | 5 +- parser/include/storage/fd.h | 44 +- parser/include/storage/fileset.h | 2 +- parser/include/storage/ipc.h | 2 +- parser/include/storage/item.h | 2 +- parser/include/storage/itemid.h | 2 +- parser/include/storage/itemptr.h | 151 +- parser/include/storage/large_object.h | 2 +- parser/include/storage/latch.h | 10 +- parser/include/storage/lmgr.h | 7 +- parser/include/storage/lock.h | 34 +- parser/include/storage/lockdefs.h | 6 +- parser/include/storage/lwlock.h | 18 +- parser/include/storage/off.h | 2 +- parser/include/storage/pg_sema.h | 2 +- parser/include/storage/pg_shmem.h | 2 +- parser/include/storage/pmsignal.h | 2 +- parser/include/storage/predicate.h | 4 +- parser/include/storage/proc.h | 39 +- parser/include/storage/procarray.h | 5 +- parser/include/storage/proclist_types.h | 2 +- parser/include/storage/procsignal.h | 4 +- parser/include/storage/relfilelocator.h | 99 + parser/include/storage/relfilenode.h | 99 - parser/include/storage/s_lock.h | 375 +- parser/include/storage/sharedfileset.h | 2 +- parser/include/storage/shm_mq.h | 2 +- parser/include/storage/shm_toc.h | 2 +- parser/include/storage/shmem.h | 24 +- parser/include/storage/sinval.h | 6 +- parser/include/storage/sinvaladt.h | 6 +- parser/include/storage/smgr.h | 22 +- parser/include/storage/spin.h | 2 +- parser/include/storage/standby.h | 17 +- parser/include/storage/standbydefs.h | 2 +- parser/include/storage/sync.h | 6 +- parser/include/tcop/cmdtag.h | 9 +- parser/include/tcop/cmdtaglist.h | 2 +- parser/include/tcop/deparse_utility.h | 2 +- parser/include/tcop/dest.h | 4 +- parser/include/tcop/fastpath.h | 2 +- parser/include/tcop/pquery.h | 2 +- parser/include/tcop/tcopprot.h | 5 +- parser/include/tcop/utility.h | 2 +- parser/include/tsearch/ts_cache.h | 6 +- parser/include/utils/acl.h | 107 +- parser/include/utils/aclchk_internal.h | 2 +- parser/include/utils/array.h | 20 +- parser/include/utils/backend_progress.h | 3 +- parser/include/utils/backend_status.h | 27 +- parser/include/utils/builtins.h | 19 +- parser/include/utils/bytea.h | 2 +- parser/include/utils/catcache.h | 2 +- parser/include/utils/date.h | 46 +- parser/include/utils/datetime.h | 62 +- parser/include/utils/datum.h | 2 +- parser/include/utils/dsa.h | 6 +- parser/include/utils/dynahash.h | 20 - parser/include/utils/elog.h | 127 +- parser/include/utils/expandeddatum.h | 17 +- parser/include/utils/expandedrecord.h | 18 +- parser/include/utils/float.h | 13 +- parser/include/utils/fmgroids.h | 55 +- parser/include/utils/fmgrprotos.h | 48 +- parser/include/utils/fmgrtab.h | 2 +- parser/include/utils/guc.h | 137 +- parser/include/utils/guc_hooks.h | 163 + parser/include/utils/guc_tables.h | 52 +- parser/include/utils/hsearch.h | 2 +- parser/include/utils/inval.h | 6 +- parser/include/utils/logtape.h | 77 + parser/include/utils/lsyscache.h | 6 +- parser/include/utils/memdebug.h | 2 +- parser/include/utils/memutils.h | 54 +- parser/include/utils/memutils_internal.h | 136 + parser/include/utils/memutils_memorychunk.h | 237 + parser/include/utils/numeric.h | 25 +- parser/include/utils/palloc.h | 9 +- parser/include/utils/partcache.h | 5 +- parser/include/utils/pg_locale.h | 36 +- parser/include/utils/pg_lsn.h | 29 - parser/include/utils/pgstat_internal.h | 44 +- parser/include/utils/pidfile.h | 2 +- parser/include/utils/plancache.h | 2 +- parser/include/utils/portal.h | 2 +- parser/include/utils/probes.h | 12 +- parser/include/utils/ps_status.h | 24 +- parser/include/utils/queryenvironment.h | 2 +- parser/include/utils/regproc.h | 6 +- parser/include/utils/rel.h | 103 +- parser/include/utils/relcache.h | 21 +- parser/include/utils/reltrigger.h | 2 +- parser/include/utils/resowner.h | 2 +- parser/include/utils/rls.h | 50 - parser/include/utils/ruleutils.h | 7 +- parser/include/utils/sharedtuplestore.h | 2 +- parser/include/utils/snapmgr.h | 6 +- parser/include/utils/snapshot.h | 2 +- parser/include/utils/sortsupport.h | 4 +- parser/include/utils/syscache.h | 5 +- parser/include/utils/timeout.h | 2 +- parser/include/utils/timestamp.h | 52 +- parser/include/utils/tuplesort.h | 224 +- parser/include/utils/tuplestore.h | 2 +- parser/include/utils/typcache.h | 2 +- parser/include/utils/tzparser.h | 39 - parser/include/utils/varlena.h | 14 +- parser/include/utils/wait_event.h | 13 +- parser/include/utils/xml.h | 20 +- parser/include/varatt.h | 358 + parser/parser.go | 9 +- parser/pg_query.c | 2 +- parser/pg_query.pb-c.c | 37512 +-- parser/pg_query_fingerprint.c | 11 +- parser/pg_query_fingerprint.h | 2 +- parser/pg_query_internal.h | 2 +- parser/pg_query_json_plpgsql.c | 1 + parser/pg_query_normalize.c | 2 +- parser/pg_query_outfuncs_protobuf.c | 4 +- parser/pg_query_parse.c | 50 +- parser/pg_query_parse_plpgsql.c | 2 +- parser/pg_query_scan.c | 2 +- parser/pg_query_split.c | 4 +- parser/postgres_deparse.c | 608 +- parser/src_backend_catalog_namespace.c | 9 +- parser/src_backend_catalog_pg_proc.c | 2 +- parser/src_backend_commands_define.c | 2 +- parser/src_backend_nodes_bitmapset.c | 81 +- parser/src_backend_nodes_copyfuncs.c | 6298 +- parser/src_backend_nodes_equalfuncs.c | 4163 +- parser/src_backend_nodes_extensible.c | 35 +- parser/src_backend_nodes_list.c | 16 +- parser/src_backend_nodes_makefuncs.c | 96 +- parser/src_backend_nodes_nodeFuncs.c | 415 +- parser/src_backend_nodes_value.c | 2 +- parser/src_backend_parser_gram.c | 65014 ++--- parser/src_backend_parser_parser.c | 30 +- parser/src_backend_parser_scan.c | 7647 +- parser/src_backend_parser_scansup.c | 2 +- parser/src_backend_postmaster_postmaster.c | 239 +- parser/src_backend_storage_ipc_ipc.c | 2 +- parser/src_backend_storage_lmgr_s_lock.c | 371 - parser/src_backend_tcop_postgres.c | 153 +- ...c_backend_utils_activity_pgstat_database.c | 2 +- parser/src_backend_utils_adt_datum.c | 12 +- parser/src_backend_utils_adt_expandeddatum.c | 2 +- parser/src_backend_utils_adt_format_type.c | 2 +- parser/src_backend_utils_adt_numutils.c | 489 + parser/src_backend_utils_adt_ruleutils.c | 84 +- parser/src_backend_utils_error_assert.c | 11 +- parser/src_backend_utils_error_elog.c | 451 +- parser/src_backend_utils_fmgr_fmgr.c | 34 +- parser/src_backend_utils_hash_dynahash.c | 1116 - parser/src_backend_utils_init_globals.c | 7 +- parser/src_backend_utils_mb_mbutils.c | 17 +- parser/src_backend_utils_misc_guc.c | 1993 - parser/src_backend_utils_misc_guc_tables.c | 494 + parser/src_backend_utils_mmgr_alignedalloc.c | 163 + parser/src_backend_utils_mmgr_aset.c | 761 +- parser/src_backend_utils_mmgr_generation.c | 1039 + parser/src_backend_utils_mmgr_mcxt.c | 447 +- parser/src_backend_utils_mmgr_slab.c | 1021 + parser/src_common_encnames.c | 5 +- parser/src_common_hashfn.c | 2 +- parser/src_common_keywords.c | 2 +- parser/src_common_kwlist_d.h | 1044 +- parser/src_common_kwlookup.c | 2 +- parser/src_common_pg_prng.c | 152 - parser/src_common_psprintf.c | 2 +- parser/src_common_string.c | 92 - parser/src_common_stringinfo.c | 8 +- parser/src_common_wchar.c | 17 +- parser/src_pl_plpgsql_src_pl_comp.c | 2 +- parser/src_pl_plpgsql_src_pl_funcs.c | 4 +- parser/src_pl_plpgsql_src_pl_gram.c | 1355 +- parser/src_pl_plpgsql_src_pl_handler.c | 2 +- .../src_pl_plpgsql_src_pl_reserved_kwlist_d.h | 2 +- parser/src_pl_plpgsql_src_pl_scanner.c | 2 +- ...rc_pl_plpgsql_src_pl_unreserved_kwlist_d.h | 94 +- parser/src_port_pg_bitutils.c | 2 +- parser/src_port_pgsleep.c | 69 - parser/src_port_pgstrcasecmp.c | 30 +- parser/src_port_snprintf.c | 10 +- parser/src_port_strerror.c | 2 +- parser/src_port_strnlen.c | 2 +- pg_query.go | 2 +- pg_query.pb.go | 36451 +-- split_test.go | 2 +- 488 files changed, 243237 insertions(+), 198904 deletions(-) create mode 100644 parser/include/access/tsmapi.h create mode 100644 parser/include/access/xlogbackup.h create mode 100644 parser/include/archive/archive_module.h create mode 100644 parser/include/catalog/pg_database.h create mode 100644 parser/include/catalog/pg_database_d.h delete mode 100644 parser/include/catalog/pg_parameter_acl.h delete mode 100644 parser/include/catalog/pg_parameter_acl_d.h delete mode 100644 parser/include/commands/variable.h create mode 100644 parser/include/common/cryptohash.h create mode 100644 parser/include/common/int.h create mode 100644 parser/include/common/scram-common.h create mode 100644 parser/include/common/sha2.h rename parser/include/common/{unicode_combining_table.h => unicode_nonspacing_table.h} (88%) create mode 100644 parser/include/copyfuncs.funcs.c create mode 100644 parser/include/copyfuncs.switch.c create mode 100644 parser/include/equalfuncs.funcs.c create mode 100644 parser/include/equalfuncs.switch.c create mode 100644 parser/include/foreign/fdwapi.h delete mode 100644 parser/include/getaddrinfo.h create mode 100644 parser/include/gram.h rename parser/include/{parser => }/gramparse.h (91%) create mode 100644 parser/include/libpq/sasl.h create mode 100644 parser/include/libpq/scram.h create mode 100644 parser/include/nodes/miscnodes.h create mode 100644 parser/include/nodes/nodetags.h rename parser/include/{utils => nodes}/queryjumble.h (87%) create mode 100644 parser/include/nodes/replnodes.h create mode 100644 parser/include/nodes/supportnodes.h delete mode 100644 parser/include/parser/gram.h create mode 100644 parser/include/port/simd.h create mode 100644 parser/include/src_backend_nodes_copyfuncs.funcs.c create mode 100644 parser/include/src_backend_nodes_equalfuncs.funcs.c create mode 100644 parser/include/storage/relfilelocator.h delete mode 100644 parser/include/storage/relfilenode.h delete mode 100644 parser/include/utils/dynahash.h create mode 100644 parser/include/utils/guc_hooks.h create mode 100644 parser/include/utils/logtape.h create mode 100644 parser/include/utils/memutils_internal.h create mode 100644 parser/include/utils/memutils_memorychunk.h delete mode 100644 parser/include/utils/pg_lsn.h delete mode 100644 parser/include/utils/rls.h delete mode 100644 parser/include/utils/tzparser.h create mode 100644 parser/include/varatt.h delete mode 100644 parser/src_backend_storage_lmgr_s_lock.c create mode 100644 parser/src_backend_utils_adt_numutils.c delete mode 100644 parser/src_backend_utils_hash_dynahash.c delete mode 100644 parser/src_backend_utils_misc_guc.c create mode 100644 parser/src_backend_utils_misc_guc_tables.c create mode 100644 parser/src_backend_utils_mmgr_alignedalloc.c create mode 100644 parser/src_backend_utils_mmgr_generation.c create mode 100644 parser/src_backend_utils_mmgr_slab.c delete mode 100644 parser/src_common_pg_prng.c delete mode 100644 parser/src_common_string.c delete mode 100644 parser/src_port_pgsleep.c diff --git a/Makefile b/Makefile index 9b7e75c8..4cec87cb 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,7 @@ benchmark: # --- Below only needed for releasing new versions -LIB_PG_QUERY_TAG = 15-4.2.3 +LIB_PG_QUERY_TAG = 16-5.0.0 root_dir := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) LIB_TMPDIR = $(root_dir)/tmp @@ -41,7 +41,7 @@ update_source: $(LIBDIR) rmdir parser/postgres cp -a $(LIBDIR)/pg_query.h parser/include # Make sure every .c in the top-level directory is its own translation unit - mv parser/*{_conds,_defs,_helper}.c parser/include + mv parser/*{_conds,_defs,_helper,.funcs}.c parser/include # Protobuf definitions mkdir -p $(PWD)/bin GOBIN=$(PWD)/bin go install google.golang.org/protobuf/cmd/protoc-gen-go diff --git a/README.md b/README.md index ea13851a..bf51a12f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# pg_query_go [![GoDoc](https://godoc.org/github.com/pganalyze/pg_query_go/v4?status.svg)](https://godoc.org/github.com/pganalyze/pg_query_go/v4) +# pg_query_go [![GoDoc](https://godoc.org/github.com/pganalyze/pg_query_go/v5?status.svg)](https://godoc.org/github.com/pganalyze/pg_query_go/v5) Go version of https://github.com/pganalyze/pg_query @@ -10,7 +10,7 @@ You can find further background to why a query's parse tree is useful here: http ## Installation ``` -go get github.com/pganalyze/pg_query_go/v4@latest +go get github.com/pganalyze/pg_query_go/v5@latest ``` Due to compiling parts of PostgreSQL, the first time you build against this library it will take a bit longer. @@ -44,7 +44,7 @@ package main import ( "fmt" - pg_query "github.com/pganalyze/pg_query_go/v4" + pg_query "github.com/pganalyze/pg_query_go/v5" ) func main() { @@ -72,7 +72,7 @@ package main import ( "fmt" - pg_query "github.com/pganalyze/pg_query_go/v4" + pg_query "github.com/pganalyze/pg_query_go/v5" ) func main() { @@ -98,7 +98,7 @@ package main import ( "fmt" - pg_query "github.com/pganalyze/pg_query_go/v4" + pg_query "github.com/pganalyze/pg_query_go/v5" ) func main() { @@ -135,7 +135,7 @@ package main import ( "fmt" - pg_query "github.com/pganalyze/pg_query_go/v4" + pg_query "github.com/pganalyze/pg_query_go/v5" ) func main() { @@ -173,27 +173,27 @@ go build -a go test -test.bench=. -test.run=XXX -test.benchtime 10s -test.benchmem -test.cpu=4 goos: darwin goarch: arm64 -pkg: github.com/pganalyze/pg_query_go/v4 -BenchmarkParseSelect1-4 3230398 3656 ns/op 1104 B/op 20 allocs/op -BenchmarkParseSelect2-4 927363 12739 ns/op 2896 B/op 59 allocs/op -BenchmarkParseCreateTable-4 399819 30080 ns/op 8432 B/op 151 allocs/op -BenchmarkParseSelect1Parallel-4 10951803 1094 ns/op 1104 B/op 20 allocs/op -BenchmarkParseSelect2Parallel-4 3255471 3675 ns/op 2896 B/op 59 allocs/op -BenchmarkParseCreateTableParallel-4 1341716 8919 ns/op 8432 B/op 151 allocs/op -BenchmarkRawParseSelect1-4 4275111 2795 ns/op 192 B/op 5 allocs/op -BenchmarkRawParseSelect2-4 1252704 9534 ns/op 352 B/op 5 allocs/op -BenchmarkRawParseCreateTable-4 503385 23168 ns/op 1120 B/op 5 allocs/op -BenchmarkRawParseSelect1Parallel-4 15446528 780.1 ns/op 192 B/op 5 allocs/op -BenchmarkRawParseSelect2Parallel-4 4638837 2595 ns/op 352 B/op 5 allocs/op -BenchmarkRawParseCreateTableParallel-4 1932316 6197 ns/op 1120 B/op 5 allocs/op -BenchmarkFingerprintSelect1-4 6583965 1795 ns/op 112 B/op 4 allocs/op -BenchmarkFingerprintSelect2-4 2962663 4015 ns/op 112 B/op 4 allocs/op -BenchmarkFingerprintCreateTable-4 1796041 6831 ns/op 112 B/op 4 allocs/op -BenchmarkNormalizeSelect1-4 10073278 1171 ns/op 72 B/op 4 allocs/op -BenchmarkNormalizeSelect2-4 6029834 1932 ns/op 104 B/op 4 allocs/op -BenchmarkNormalizeCreateTable-4 4703816 2490 ns/op 184 B/op 4 allocs/op +pkg: github.com/pganalyze/pg_query_go/v5 +BenchmarkParseSelect1-4 2945772 4234 ns/op 1104 B/op 20 allocs/op +BenchmarkParseSelect2-4 798510 14618 ns/op 2896 B/op 59 allocs/op +BenchmarkParseCreateTable-4 340454 33893 ns/op 8544 B/op 151 allocs/op +BenchmarkParseSelect1Parallel-4 9166213 1332 ns/op 1104 B/op 20 allocs/op +BenchmarkParseSelect2Parallel-4 2795493 4329 ns/op 2896 B/op 59 allocs/op +BenchmarkParseCreateTableParallel-4 1000000 10325 ns/op 8544 B/op 151 allocs/op +BenchmarkRawParseSelect1-4 3775879 3186 ns/op 192 B/op 5 allocs/op +BenchmarkRawParseSelect2-4 1000000 10708 ns/op 352 B/op 5 allocs/op +BenchmarkRawParseCreateTable-4 466368 25662 ns/op 1120 B/op 5 allocs/op +BenchmarkRawParseSelect1Parallel-4 13386709 894.4 ns/op 192 B/op 5 allocs/op +BenchmarkRawParseSelect2Parallel-4 4188447 2871 ns/op 352 B/op 5 allocs/op +BenchmarkRawParseCreateTableParallel-4 1758555 6809 ns/op 1120 B/op 5 allocs/op +BenchmarkFingerprintSelect1-4 6139764 1970 ns/op 112 B/op 4 allocs/op +BenchmarkFingerprintSelect2-4 2813995 4264 ns/op 112 B/op 4 allocs/op +BenchmarkFingerprintCreateTable-4 1668691 7194 ns/op 112 B/op 4 allocs/op +BenchmarkNormalizeSelect1-4 10068253 1189 ns/op 72 B/op 4 allocs/op +BenchmarkNormalizeSelect2-4 6039188 1981 ns/op 104 B/op 4 allocs/op +BenchmarkNormalizeCreateTable-4 4560278 2636 ns/op 184 B/op 4 allocs/op PASS -ok github.com/pganalyze/pg_query_go/v4 273.449s +ok github.com/pganalyze/pg_query_go/v5 257.324s ``` Note that allocation counts exclude the cgo portion, so they are higher than shown here. diff --git a/benchmark_test.go b/benchmark_test.go index 18d5748c..3fce505a 100644 --- a/benchmark_test.go +++ b/benchmark_test.go @@ -6,8 +6,8 @@ package pg_query_test import ( "testing" - pg_query "github.com/pganalyze/pg_query_go/v4" - "github.com/pganalyze/pg_query_go/v4/parser" + pg_query "github.com/pganalyze/pg_query_go/v5" + "github.com/pganalyze/pg_query_go/v5/parser" ) // Prevent compiler optimizations by assigning all results to global variables diff --git a/fingerprint_test.go b/fingerprint_test.go index b28e1b1e..7fe21383 100644 --- a/fingerprint_test.go +++ b/fingerprint_test.go @@ -10,7 +10,7 @@ import ( "strconv" "testing" - pg_query "github.com/pganalyze/pg_query_go/v4" + pg_query "github.com/pganalyze/pg_query_go/v5" ) type fingerprintTest struct { diff --git a/go.mod b/go.mod index 9d82e083..972d882b 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/pganalyze/pg_query_go/v4 +module github.com/pganalyze/pg_query_go/v5 go 1.14 diff --git a/normalize_test.go b/normalize_test.go index bccc015f..1bdd3731 100644 --- a/normalize_test.go +++ b/normalize_test.go @@ -7,8 +7,8 @@ import ( "reflect" "testing" - pg_query "github.com/pganalyze/pg_query_go/v4" - "github.com/pganalyze/pg_query_go/v4/parser" + pg_query "github.com/pganalyze/pg_query_go/v5" + "github.com/pganalyze/pg_query_go/v5/parser" ) var normalizeTests = []struct { diff --git a/parse_test.go b/parse_test.go index 0d92890d..f998f976 100644 --- a/parse_test.go +++ b/parse_test.go @@ -10,8 +10,8 @@ import ( "testing" "github.com/google/go-cmp/cmp" - pg_query "github.com/pganalyze/pg_query_go/v4" - "github.com/pganalyze/pg_query_go/v4/parser" + pg_query "github.com/pganalyze/pg_query_go/v5" + "github.com/pganalyze/pg_query_go/v5/parser" "google.golang.org/protobuf/testing/protocmp" ) @@ -22,9 +22,9 @@ var parseTests = []struct { }{ { "SELECT 1", - `{"version":150001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"A_Const":{"ival":{"ival":1},"location":7}},"location":7}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, + `{"version":160001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"A_Const":{"ival":{"ival":1},"location":7}},"location":7}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, &pg_query.ParseResult{ - Version: int32(150001), + Version: int32(160001), Stmts: []*pg_query.RawStmt{ { Stmt: &pg_query.Node{ @@ -47,9 +47,9 @@ var parseTests = []struct { }, { "SELECT * FROM x WHERE z = 1", - `{"version":150001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"ColumnRef":{"fields":[{"A_Star":{}}],"location":7}},"location":7}}],"fromClause":[{"RangeVar":{"relname":"x","inh":true,"relpersistence":"p","location":14}}],"whereClause":{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"="}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"z"}}],"location":22}},"rexpr":{"A_Const":{"ival":{"ival":1},"location":26}},"location":24}},"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, + `{"version":160001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"ColumnRef":{"fields":[{"A_Star":{}}],"location":7}},"location":7}}],"fromClause":[{"RangeVar":{"relname":"x","inh":true,"relpersistence":"p","location":14}}],"whereClause":{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"="}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"z"}}],"location":22}},"rexpr":{"A_Const":{"ival":{"ival":1},"location":26}},"location":24}},"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, &pg_query.ParseResult{ - Version: int32(150001), + Version: int32(160001), Stmts: []*pg_query.RawStmt{ { Stmt: &pg_query.Node{ @@ -98,9 +98,9 @@ var parseTests = []struct { }, { `INSERT INTO "schema_index_stats" ("snapshot_id","schema_index_id","size_bytes") VALUES (11710849,8448632,16384),(11710849,8448633,16384) RETURNING id`, - `{"version":150001,"stmts":[{"stmt":{"InsertStmt":{"relation":{"relname":"schema_index_stats","inh":true,"relpersistence":"p","location":12},"cols":[{"ResTarget":{"name":"snapshot_id","location":34}},{"ResTarget":{"name":"schema_index_id","location":48}},{"ResTarget":{"name":"size_bytes","location":66}}],"selectStmt":{"SelectStmt":{"valuesLists":[{"List":{"items":[{"A_Const":{"ival":{"ival":11710849},"location":88}},{"A_Const":{"ival":{"ival":8448632},"location":97}},{"A_Const":{"ival":{"ival":16384},"location":105}}]}},{"List":{"items":[{"A_Const":{"ival":{"ival":11710849},"location":113}},{"A_Const":{"ival":{"ival":8448633},"location":122}},{"A_Const":{"ival":{"ival":16384},"location":130}}]}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}},"returningList":[{"ResTarget":{"val":{"ColumnRef":{"fields":[{"String":{"sval":"id"}}],"location":147}},"location":147}}],"override":"OVERRIDING_NOT_SET"}}}]}`, + `{"version":160001,"stmts":[{"stmt":{"InsertStmt":{"relation":{"relname":"schema_index_stats","inh":true,"relpersistence":"p","location":12},"cols":[{"ResTarget":{"name":"snapshot_id","location":34}},{"ResTarget":{"name":"schema_index_id","location":48}},{"ResTarget":{"name":"size_bytes","location":66}}],"selectStmt":{"SelectStmt":{"valuesLists":[{"List":{"items":[{"A_Const":{"ival":{"ival":11710849},"location":88}},{"A_Const":{"ival":{"ival":8448632},"location":97}},{"A_Const":{"ival":{"ival":16384},"location":105}}]}},{"List":{"items":[{"A_Const":{"ival":{"ival":11710849},"location":113}},{"A_Const":{"ival":{"ival":8448633},"location":122}},{"A_Const":{"ival":{"ival":16384},"location":130}}]}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}},"returningList":[{"ResTarget":{"val":{"ColumnRef":{"fields":[{"String":{"sval":"id"}}],"location":147}},"location":147}}],"override":"OVERRIDING_NOT_SET"}}}]}`, &pg_query.ParseResult{ - Version: int32(150001), + Version: int32(160001), Stmts: []*pg_query.RawStmt{ { Stmt: &pg_query.Node{ @@ -153,9 +153,9 @@ var parseTests = []struct { }, { "SELECT * FROM x WHERE y IN ($1)", - `{"version":150001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"ColumnRef":{"fields":[{"A_Star":{}}],"location":7}},"location":7}}],"fromClause":[{"RangeVar":{"relname":"x","inh":true,"relpersistence":"p","location":14}}],"whereClause":{"A_Expr":{"kind":"AEXPR_IN","name":[{"String":{"sval":"="}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"y"}}],"location":22}},"rexpr":{"List":{"items":[{"ParamRef":{"number":1,"location":28}}]}},"location":24}},"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, + `{"version":160001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"ColumnRef":{"fields":[{"A_Star":{}}],"location":7}},"location":7}}],"fromClause":[{"RangeVar":{"relname":"x","inh":true,"relpersistence":"p","location":14}}],"whereClause":{"A_Expr":{"kind":"AEXPR_IN","name":[{"String":{"sval":"="}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"y"}}],"location":22}},"rexpr":{"List":{"items":[{"ParamRef":{"number":1,"location":28}}]}},"location":24}},"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, &pg_query.ParseResult{ - Version: int32(150001), + Version: int32(160001), Stmts: []*pg_query.RawStmt{ { Stmt: &pg_query.Node{ @@ -217,9 +217,9 @@ var parseTests = []struct { AND n.nspname !~ '^pg_toast' AND pg_catalog.pg_table_is_visible(c.oid) ORDER BY 1,2;`, - `{"version":150001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"name":"Schema","val":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"nspname"}}],"location":7}},"location":7}},{"ResTarget":{"name":"Name","val":{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relname"}}],"location":36}},"location":36}},{"ResTarget":{"name":"Type","val":{"CaseExpr":{"arg":{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relkind"}}],"location":68}},"args":[{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"r"},"location":83}},"result":{"A_Const":{"sval":{"sval":"table"},"location":92}},"location":78}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"v"},"location":105}},"result":{"A_Const":{"sval":{"sval":"view"},"location":114}},"location":100}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"m"},"location":126}},"result":{"A_Const":{"sval":{"sval":"materialized view"},"location":135}},"location":121}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"i"},"location":160}},"result":{"A_Const":{"sval":{"sval":"index"},"location":169}},"location":155}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"S"},"location":182}},"result":{"A_Const":{"sval":{"sval":"sequence"},"location":191}},"location":177}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"s"},"location":207}},"result":{"A_Const":{"sval":{"sval":"special"},"location":216}},"location":202}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"f"},"location":231}},"result":{"A_Const":{"sval":{"sval":"foreign table"},"location":240}},"location":226}}],"location":63}},"location":63}},{"ResTarget":{"name":"Owner","val":{"FuncCall":{"funcname":[{"String":{"sval":"pg_catalog"}},{"String":{"sval":"pg_get_userbyid"}}],"args":[{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relowner"}}],"location":304}}],"funcformat":"COERCE_EXPLICIT_CALL","location":277}},"location":277}}],"fromClause":[{"JoinExpr":{"jointype":"JOIN_LEFT","larg":{"RangeVar":{"schemaname":"pg_catalog","relname":"pg_class","inh":true,"relpersistence":"p","alias":{"aliasname":"c"},"location":336}},"rarg":{"RangeVar":{"schemaname":"pg_catalog","relname":"pg_namespace","inh":true,"relpersistence":"p","alias":{"aliasname":"n"},"location":374}},"quals":{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"="}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"oid"}}],"location":403}},"rexpr":{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relnamespace"}}],"location":411}},"location":409}}}}],"whereClause":{"BoolExpr":{"boolop":"AND_EXPR","args":[{"A_Expr":{"kind":"AEXPR_IN","name":[{"String":{"sval":"="}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relkind"}}],"location":435}},"rexpr":{"List":{"items":[{"A_Const":{"sval":{"sval":"r"},"location":449}},{"A_Const":{"sval":{"sval":""},"location":453}}]}},"location":445}},{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"\u003c\u003e"}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"nspname"}}],"location":467}},"rexpr":{"A_Const":{"sval":{"sval":"pg_catalog"},"location":480}},"location":477}},{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"\u003c\u003e"}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"nspname"}}],"location":503}},"rexpr":{"A_Const":{"sval":{"sval":"information_schema"},"location":516}},"location":513}},{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"!~"}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"nspname"}}],"location":547}},"rexpr":{"A_Const":{"sval":{"sval":"^pg_toast"},"location":560}},"location":557}},{"FuncCall":{"funcname":[{"String":{"sval":"pg_catalog"}},{"String":{"sval":"pg_table_is_visible"}}],"args":[{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"oid"}}],"location":613}}],"funcformat":"COERCE_EXPLICIT_CALL","location":582}}],"location":463}},"sortClause":[{"SortBy":{"node":{"A_Const":{"ival":{"ival":1},"location":632}},"sortby_dir":"SORTBY_DEFAULT","sortby_nulls":"SORTBY_NULLS_DEFAULT","location":-1}},{"SortBy":{"node":{"A_Const":{"ival":{"ival":2},"location":634}},"sortby_dir":"SORTBY_DEFAULT","sortby_nulls":"SORTBY_NULLS_DEFAULT","location":-1}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}},"stmt_len":635}]}`, + `{"version":160001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"name":"Schema","val":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"nspname"}}],"location":7}},"location":7}},{"ResTarget":{"name":"Name","val":{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relname"}}],"location":36}},"location":36}},{"ResTarget":{"name":"Type","val":{"CaseExpr":{"arg":{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relkind"}}],"location":68}},"args":[{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"r"},"location":83}},"result":{"A_Const":{"sval":{"sval":"table"},"location":92}},"location":78}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"v"},"location":105}},"result":{"A_Const":{"sval":{"sval":"view"},"location":114}},"location":100}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"m"},"location":126}},"result":{"A_Const":{"sval":{"sval":"materialized view"},"location":135}},"location":121}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"i"},"location":160}},"result":{"A_Const":{"sval":{"sval":"index"},"location":169}},"location":155}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"S"},"location":182}},"result":{"A_Const":{"sval":{"sval":"sequence"},"location":191}},"location":177}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"s"},"location":207}},"result":{"A_Const":{"sval":{"sval":"special"},"location":216}},"location":202}},{"CaseWhen":{"expr":{"A_Const":{"sval":{"sval":"f"},"location":231}},"result":{"A_Const":{"sval":{"sval":"foreign table"},"location":240}},"location":226}}],"location":63}},"location":63}},{"ResTarget":{"name":"Owner","val":{"FuncCall":{"funcname":[{"String":{"sval":"pg_catalog"}},{"String":{"sval":"pg_get_userbyid"}}],"args":[{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relowner"}}],"location":304}}],"funcformat":"COERCE_EXPLICIT_CALL","location":277}},"location":277}}],"fromClause":[{"JoinExpr":{"jointype":"JOIN_LEFT","larg":{"RangeVar":{"schemaname":"pg_catalog","relname":"pg_class","inh":true,"relpersistence":"p","alias":{"aliasname":"c"},"location":336}},"rarg":{"RangeVar":{"schemaname":"pg_catalog","relname":"pg_namespace","inh":true,"relpersistence":"p","alias":{"aliasname":"n"},"location":374}},"quals":{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"="}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"oid"}}],"location":403}},"rexpr":{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relnamespace"}}],"location":411}},"location":409}}}}],"whereClause":{"BoolExpr":{"boolop":"AND_EXPR","args":[{"A_Expr":{"kind":"AEXPR_IN","name":[{"String":{"sval":"="}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"relkind"}}],"location":435}},"rexpr":{"List":{"items":[{"A_Const":{"sval":{"sval":"r"},"location":449}},{"A_Const":{"sval":{"sval":""},"location":453}}]}},"location":445}},{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"\u003c\u003e"}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"nspname"}}],"location":467}},"rexpr":{"A_Const":{"sval":{"sval":"pg_catalog"},"location":480}},"location":477}},{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"\u003c\u003e"}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"nspname"}}],"location":503}},"rexpr":{"A_Const":{"sval":{"sval":"information_schema"},"location":516}},"location":513}},{"A_Expr":{"kind":"AEXPR_OP","name":[{"String":{"sval":"!~"}}],"lexpr":{"ColumnRef":{"fields":[{"String":{"sval":"n"}},{"String":{"sval":"nspname"}}],"location":547}},"rexpr":{"A_Const":{"sval":{"sval":"^pg_toast"},"location":560}},"location":557}},{"FuncCall":{"funcname":[{"String":{"sval":"pg_catalog"}},{"String":{"sval":"pg_table_is_visible"}}],"args":[{"ColumnRef":{"fields":[{"String":{"sval":"c"}},{"String":{"sval":"oid"}}],"location":613}}],"funcformat":"COERCE_EXPLICIT_CALL","location":582}}],"location":463}},"sortClause":[{"SortBy":{"node":{"A_Const":{"ival":{"ival":1},"location":632}},"sortby_dir":"SORTBY_DEFAULT","sortby_nulls":"SORTBY_NULLS_DEFAULT","location":-1}},{"SortBy":{"node":{"A_Const":{"ival":{"ival":2},"location":634}},"sortby_dir":"SORTBY_DEFAULT","sortby_nulls":"SORTBY_NULLS_DEFAULT","location":-1}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}},"stmt_len":635}]}`, &pg_query.ParseResult{ - Version: int32(150001), + Version: int32(160001), Stmts: []*pg_query.RawStmt{ { Stmt: &pg_query.Node{ @@ -399,9 +399,9 @@ var parseTests = []struct { PERFORM 'dummy'; END; $$;`, - `{"version":150001,"stmts":[{"stmt":{"CreateFunctionStmt":{"funcname":[{"String":{"sval":"change_trigger_v2"}}],"returnType":{"names":[{"String":{"sval":"trigger"}}],"typemod":-1,"location":44},"options":[{"DefElem":{"defname":"language","arg":{"String":{"sval":"plpgsql"}},"defaction":"DEFELEM_UNSPEC","location":53}},{"DefElem":{"defname":"as","arg":{"List":{"items":[{"String":{"sval":"\n\t\tDECLARE\n\t\tBEGIN\n\t\t\tPERFORM 'dummy';\n\t\tEND;\n\t\t"}}]}},"defaction":"DEFELEM_UNSPEC","location":71}}]}},"stmt_len":126}]}`, + `{"version":160001,"stmts":[{"stmt":{"CreateFunctionStmt":{"funcname":[{"String":{"sval":"change_trigger_v2"}}],"returnType":{"names":[{"String":{"sval":"trigger"}}],"typemod":-1,"location":44},"options":[{"DefElem":{"defname":"language","arg":{"String":{"sval":"plpgsql"}},"defaction":"DEFELEM_UNSPEC","location":53}},{"DefElem":{"defname":"as","arg":{"List":{"items":[{"String":{"sval":"\n\t\tDECLARE\n\t\tBEGIN\n\t\t\tPERFORM 'dummy';\n\t\tEND;\n\t\t"}}]}},"defaction":"DEFELEM_UNSPEC","location":71}}]}},"stmt_len":126}]}`, &pg_query.ParseResult{ - Version: int32(150001), + Version: int32(160001), Stmts: []*pg_query.RawStmt{ { Stmt: &pg_query.Node{ @@ -442,9 +442,9 @@ var parseTests = []struct { id SERIAL PRIMARY KEY, user_id integer DEFAULT 0 NOT NULL, created_at timestamp without time zone NOT NULL);`, - `{"version":150001,"stmts":[{"stmt":{"CreateStmt":{"relation":{"relname":"test","inh":true,"relpersistence":"p","location":13},"tableElts":[{"ColumnDef":{"colname":"id","typeName":{"names":[{"String":{"sval":"serial"}}],"typemod":-1,"location":27},"is_local":true,"constraints":[{"Constraint":{"contype":"CONSTR_PRIMARY","location":34}}],"location":24}},{"ColumnDef":{"colname":"user_id","typeName":{"names":[{"String":{"sval":"pg_catalog"}},{"String":{"sval":"int4"}}],"typemod":-1,"location":59},"is_local":true,"constraints":[{"Constraint":{"contype":"CONSTR_DEFAULT","location":67,"raw_expr":{"A_Const":{"ival":{},"location":75}}}},{"Constraint":{"contype":"CONSTR_NOTNULL","location":77}}],"location":51}},{"ColumnDef":{"colname":"created_at","typeName":{"names":[{"String":{"sval":"pg_catalog"}},{"String":{"sval":"timestamp"}}],"typemod":-1,"location":102},"is_local":true,"constraints":[{"Constraint":{"contype":"CONSTR_NOTNULL","location":130}}],"location":91}}],"oncommit":"ONCOMMIT_NOOP"}},"stmt_len":139}]}`, + `{"version":160001,"stmts":[{"stmt":{"CreateStmt":{"relation":{"relname":"test","inh":true,"relpersistence":"p","location":13},"tableElts":[{"ColumnDef":{"colname":"id","typeName":{"names":[{"String":{"sval":"serial"}}],"typemod":-1,"location":27},"is_local":true,"constraints":[{"Constraint":{"contype":"CONSTR_PRIMARY","location":34}}],"location":24}},{"ColumnDef":{"colname":"user_id","typeName":{"names":[{"String":{"sval":"pg_catalog"}},{"String":{"sval":"int4"}}],"typemod":-1,"location":59},"is_local":true,"constraints":[{"Constraint":{"contype":"CONSTR_DEFAULT","location":67,"raw_expr":{"A_Const":{"ival":{},"location":75}}}},{"Constraint":{"contype":"CONSTR_NOTNULL","location":77}}],"location":51}},{"ColumnDef":{"colname":"created_at","typeName":{"names":[{"String":{"sval":"pg_catalog"}},{"String":{"sval":"timestamp"}}],"typemod":-1,"location":102},"is_local":true,"constraints":[{"Constraint":{"contype":"CONSTR_NOTNULL","location":130}}],"location":91}}],"oncommit":"ONCOMMIT_NOOP"}},"stmt_len":139}]}`, &pg_query.ParseResult{ - Version: int32(150001), + Version: int32(160001), Stmts: []*pg_query.RawStmt{ { Stmt: &pg_query.Node{ @@ -509,9 +509,9 @@ var parseTests = []struct { }, { `SELECT * FROM a(1)`, - `{"version":150001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"ColumnRef":{"fields":[{"A_Star":{}}],"location":7}},"location":7}}],"fromClause":[{"RangeFunction":{"functions":[{"List":{"items":[{"FuncCall":{"funcname":[{"String":{"sval":"a"}}],"args":[{"A_Const":{"ival":{"ival":1},"location":16}}],"funcformat":"COERCE_EXPLICIT_CALL","location":14}},{}]}}]}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, + `{"version":160001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"ColumnRef":{"fields":[{"A_Star":{}}],"location":7}},"location":7}}],"fromClause":[{"RangeFunction":{"functions":[{"List":{"items":[{"FuncCall":{"funcname":[{"String":{"sval":"a"}}],"args":[{"A_Const":{"ival":{"ival":1},"location":16}}],"funcformat":"COERCE_EXPLICIT_CALL","location":14}},{}]}}]}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, &pg_query.ParseResult{ - Version: int32(150001), + Version: int32(160001), Stmts: []*pg_query.RawStmt{ { Stmt: &pg_query.Node{ @@ -552,9 +552,9 @@ var parseTests = []struct { { // Test for null-byte related crashes string([]byte{'S', 'E', 'L', 'E', 'C', 'T', ' ', '1', '\x00'}), - `{"version":150001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"A_Const":{"ival":{"ival":1},"location":7}},"location":7}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, + `{"version":160001,"stmts":[{"stmt":{"SelectStmt":{"targetList":[{"ResTarget":{"val":{"A_Const":{"ival":{"ival":1},"location":7}},"location":7}}],"limitOption":"LIMIT_OPTION_DEFAULT","op":"SETOP_NONE"}}}]}`, &pg_query.ParseResult{ - Version: int32(150001), + Version: int32(160001), Stmts: []*pg_query.RawStmt{ { Stmt: &pg_query.Node{ @@ -680,7 +680,7 @@ var parsePlPgSQLTests = []struct { `END;` + `$$ LANGUAGE plpgsql;`, `[ -{"PLpgSQL_function":{"datums":[{"PLpgSQL_var":{"refname":"v_name","datatype":{"PLpgSQL_type":{"typname":"UNKNOWN"}}}},{"PLpgSQL_var":{"refname":"v_version","datatype":{"PLpgSQL_type":{"typname":"UNKNOWN"}}}},{"PLpgSQL_var":{"refname":"found","datatype":{"PLpgSQL_type":{"typname":"UNKNOWN"}}}}],"action":{"PLpgSQL_stmt_block":{"lineno":1,"body":[{"PLpgSQL_stmt_if":{"lineno":1,"cond":{"PLpgSQL_expr":{"query":"v_version IS NULL"}},"then_body":[{"PLpgSQL_stmt_return":{"lineno":1,"expr":{"PLpgSQL_expr":{"query":"v_name"}}}}]}},{"PLpgSQL_stmt_return":{"lineno":1,"expr":{"PLpgSQL_expr":{"query":"v_name || '/' || v_version"}}}}]}}}} +{"PLpgSQL_function":{"datums":[{"PLpgSQL_var":{"refname":"v_name","datatype":{"PLpgSQL_type":{"typname":"UNKNOWN"}}}},{"PLpgSQL_var":{"refname":"v_version","datatype":{"PLpgSQL_type":{"typname":"UNKNOWN"}}}},{"PLpgSQL_var":{"refname":"found","datatype":{"PLpgSQL_type":{"typname":"UNKNOWN"}}}}],"action":{"PLpgSQL_stmt_block":{"lineno":1,"body":[{"PLpgSQL_stmt_if":{"lineno":1,"cond":{"PLpgSQL_expr":{"query":"v_version IS NULL","parseMode":2}},"then_body":[{"PLpgSQL_stmt_return":{"lineno":1,"expr":{"PLpgSQL_expr":{"query":"v_name","parseMode":2}}}}]}},{"PLpgSQL_stmt_return":{"lineno":1,"expr":{"PLpgSQL_expr":{"query":"v_name || '/' || v_version","parseMode":2}}}}]}}}} ]`, }, } diff --git a/parser/include/access/amapi.h b/parser/include/access/amapi.h index 1dc674d2..4476ff7f 100644 --- a/parser/include/access/amapi.h +++ b/parser/include/access/amapi.h @@ -3,7 +3,7 @@ * amapi.h * API for Postgres index access methods. * - * Copyright (c) 2015-2022, PostgreSQL Global Development Group + * Copyright (c) 2015-2023, PostgreSQL Global Development Group * * src/include/access/amapi.h * @@ -244,6 +244,8 @@ typedef struct IndexAmRoutine bool amcaninclude; /* does AM use maintenance_work_mem? */ bool amusemaintenanceworkmem; + /* does AM store tuple information only at block granularity? */ + bool amsummarizing; /* OR of parallel vacuum flags. See vacuum.h for flags. */ uint8 amparallelvacuumoptions; /* type of data stored in index, or InvalidOid if variable */ diff --git a/parser/include/access/attmap.h b/parser/include/access/attmap.h index 3ae40cad..9156a120 100644 --- a/parser/include/access/attmap.h +++ b/parser/include/access/attmap.h @@ -4,7 +4,7 @@ * Definitions for PostgreSQL attribute mappings * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/attmap.h @@ -42,9 +42,11 @@ extern void free_attrmap(AttrMap *map); /* Conversion routines to build mappings */ extern AttrMap *build_attrmap_by_name(TupleDesc indesc, - TupleDesc outdesc); + TupleDesc outdesc, + bool missing_ok); extern AttrMap *build_attrmap_by_name_if_req(TupleDesc indesc, - TupleDesc outdesc); + TupleDesc outdesc, + bool missing_ok); extern AttrMap *build_attrmap_by_position(TupleDesc indesc, TupleDesc outdesc, const char *msg); diff --git a/parser/include/access/attnum.h b/parser/include/access/attnum.h index 508c583e..4c432952 100644 --- a/parser/include/access/attnum.h +++ b/parser/include/access/attnum.h @@ -4,7 +4,7 @@ * POSTGRES attribute number definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/attnum.h diff --git a/parser/include/access/clog.h b/parser/include/access/clog.h index 543f2e26..d99444f0 100644 --- a/parser/include/access/clog.h +++ b/parser/include/access/clog.h @@ -3,7 +3,7 @@ * * PostgreSQL transaction-commit-log manager * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/clog.h diff --git a/parser/include/access/commit_ts.h b/parser/include/access/commit_ts.h index 7662f8e1..5087cdce 100644 --- a/parser/include/access/commit_ts.h +++ b/parser/include/access/commit_ts.h @@ -3,7 +3,7 @@ * * PostgreSQL commit timestamp manager * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/commit_ts.h diff --git a/parser/include/access/detoast.h b/parser/include/access/detoast.h index b1d8ea09..908e1fc6 100644 --- a/parser/include/access/detoast.h +++ b/parser/include/access/detoast.h @@ -3,7 +3,7 @@ * detoast.h * Access to compressed and external varlena values. * - * Copyright (c) 2000-2022, PostgreSQL Global Development Group + * Copyright (c) 2000-2023, PostgreSQL Global Development Group * * src/include/access/detoast.h * diff --git a/parser/include/access/genam.h b/parser/include/access/genam.h index 134b20f1..a3087956 100644 --- a/parser/include/access/genam.h +++ b/parser/include/access/genam.h @@ -4,7 +4,7 @@ * POSTGRES generalized index access method definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/genam.h @@ -44,6 +44,7 @@ typedef struct IndexBuildResult typedef struct IndexVacuumInfo { Relation index; /* the index being vacuumed */ + Relation heaprel; /* the heap relation the index belongs to */ bool analyze_only; /* ANALYZE (without any actual vacuum) */ bool report_progress; /* emit progress.h status reports */ bool estimated_count; /* num_heap_tuples is an estimate */ @@ -161,9 +162,10 @@ extern void index_rescan(IndexScanDesc scan, extern void index_endscan(IndexScanDesc scan); extern void index_markpos(IndexScanDesc scan); extern void index_restrpos(IndexScanDesc scan); -extern Size index_parallelscan_estimate(Relation indexrel, Snapshot snapshot); -extern void index_parallelscan_initialize(Relation heaprel, Relation indexrel, - Snapshot snapshot, ParallelIndexScanDesc target); +extern Size index_parallelscan_estimate(Relation indexRelation, Snapshot snapshot); +extern void index_parallelscan_initialize(Relation heapRelation, + Relation indexRelation, Snapshot snapshot, + ParallelIndexScanDesc target); extern void index_parallelrescan(IndexScanDesc scan); extern IndexScanDesc index_beginscan_parallel(Relation heaprel, Relation indexrel, int nkeys, int norderbys, @@ -191,7 +193,7 @@ extern void index_store_float8_orderby_distances(IndexScanDesc scan, Oid *orderByTypes, IndexOrderByDistance *distances, bool recheckOrderBy); -extern bytea *index_opclass_options(Relation relation, AttrNumber attnum, +extern bytea *index_opclass_options(Relation indrel, AttrNumber attnum, Datum attoptions, bool validate); diff --git a/parser/include/access/gin.h b/parser/include/access/gin.h index aacc665f..f1655065 100644 --- a/parser/include/access/gin.h +++ b/parser/include/access/gin.h @@ -2,7 +2,7 @@ * gin.h * Public header file for Generalized Inverted Index access method. * - * Copyright (c) 2006-2022, PostgreSQL Global Development Group + * Copyright (c) 2006-2023, PostgreSQL Global Development Group * * src/include/access/gin.h *-------------------------------------------------------------------------- @@ -57,13 +57,26 @@ typedef struct GinStatsData */ typedef char GinTernaryValue; +StaticAssertDecl(sizeof(GinTernaryValue) == sizeof(bool), + "sizes of GinTernaryValue and bool are not equal"); + #define GIN_FALSE 0 /* item is not present / does not match */ #define GIN_TRUE 1 /* item is present / matches */ #define GIN_MAYBE 2 /* don't know if item is present / don't know * if matches */ -#define DatumGetGinTernaryValue(X) ((GinTernaryValue)(X)) -#define GinTernaryValueGetDatum(X) ((Datum)(X)) +static inline GinTernaryValue +DatumGetGinTernaryValue(Datum X) +{ + return (GinTernaryValue) X; +} + +static inline Datum +GinTernaryValueGetDatum(GinTernaryValue X) +{ + return (Datum) X; +} + #define PG_RETURN_GIN_TERNARY_VALUE(x) return GinTernaryValueGetDatum(x) /* GUC parameters */ diff --git a/parser/include/access/htup.h b/parser/include/access/htup.h index a4bc7256..a8f7ff5d 100644 --- a/parser/include/access/htup.h +++ b/parser/include/access/htup.h @@ -4,7 +4,7 @@ * POSTGRES heap tuple definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/htup.h diff --git a/parser/include/access/htup_details.h b/parser/include/access/htup_details.h index 51a60eda..e01f4f35 100644 --- a/parser/include/access/htup_details.h +++ b/parser/include/access/htup_details.h @@ -4,7 +4,7 @@ * POSTGRES heap tuple header definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/htup_details.h @@ -19,6 +19,7 @@ #include "access/tupdesc.h" #include "access/tupmacs.h" #include "storage/bufpage.h" +#include "varatt.h" /* * MaxTupleAttributeNumber limits the number of (user) columns in a tuple. @@ -426,6 +427,9 @@ do { \ (tup)->t_choice.t_heap.t_field3.t_xvac = (xid); \ } while (0) +StaticAssertDecl(MaxOffsetNumber < SpecTokenOffsetNumber, + "invalid speculative token constant"); + #define HeapTupleHeaderIsSpeculative(tup) \ ( \ (ItemPointerGetOffsetNumberNoCheck(&(tup)->t_ctid) == SpecTokenOffsetNumber) \ @@ -699,7 +703,7 @@ extern void heap_fill_tuple(TupleDesc tupleDesc, uint16 *infomask, bits8 *bit); extern bool heap_attisnull(HeapTuple tup, int attnum, TupleDesc tupleDesc); extern Datum nocachegetattr(HeapTuple tup, int attnum, - TupleDesc att); + TupleDesc tupleDesc); extern Datum heap_getsysattr(HeapTuple tup, int attnum, TupleDesc tupleDesc, bool *isnull); extern Datum getmissingattr(TupleDesc tupleDesc, diff --git a/parser/include/access/itup.h b/parser/include/access/itup.h index 7458bc2f..2e2b8c7a 100644 --- a/parser/include/access/itup.h +++ b/parser/include/access/itup.h @@ -4,7 +4,7 @@ * POSTGRES index tuple definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/itup.h @@ -73,21 +73,38 @@ typedef IndexAttributeBitMapData * IndexAttributeBitMap; #define IndexTupleHasVarwidths(itup) ((((IndexTuple) (itup))->t_info & INDEX_VAR_MASK)) +/* routines in indextuple.c */ +extern IndexTuple index_form_tuple(TupleDesc tupleDescriptor, + Datum *values, bool *isnull); +extern IndexTuple index_form_tuple_context(TupleDesc tupleDescriptor, + Datum *values, bool *isnull, + MemoryContext context); +extern Datum nocache_index_getattr(IndexTuple tup, int attnum, + TupleDesc tupleDesc); +extern void index_deform_tuple(IndexTuple tup, TupleDesc tupleDescriptor, + Datum *values, bool *isnull); +extern void index_deform_tuple_internal(TupleDesc tupleDescriptor, + Datum *values, bool *isnull, + char *tp, bits8 *bp, int hasnulls); +extern IndexTuple CopyIndexTuple(IndexTuple source); +extern IndexTuple index_truncate_tuple(TupleDesc sourceDescriptor, + IndexTuple source, int leavenatts); + + /* * Takes an infomask as argument (primarily because this needs to be usable * at index_form_tuple time so enough space is allocated). */ -#define IndexInfoFindDataOffset(t_info) \ -( \ - (!((t_info) & INDEX_NULL_MASK)) ? \ - ( \ - (Size)MAXALIGN(sizeof(IndexTupleData)) \ - ) \ - : \ - ( \ - (Size)MAXALIGN(sizeof(IndexTupleData) + sizeof(IndexAttributeBitMapData)) \ - ) \ -) +static inline Size +IndexInfoFindDataOffset(unsigned short t_info) +{ + if (!(t_info & INDEX_NULL_MASK)) + return MAXALIGN(sizeof(IndexTupleData)); + else + return MAXALIGN(sizeof(IndexTupleData) + sizeof(IndexAttributeBitMapData)); +} + +#ifndef FRONTEND /* ---------------- * index_getattr @@ -97,34 +114,38 @@ typedef IndexAttributeBitMapData * IndexAttributeBitMap; * * ---------------- */ -#define index_getattr(tup, attnum, tupleDesc, isnull) \ -( \ - AssertMacro(PointerIsValid(isnull) && (attnum) > 0), \ - *(isnull) = false, \ - !IndexTupleHasNulls(tup) ? \ - ( \ - TupleDescAttr((tupleDesc), (attnum)-1)->attcacheoff >= 0 ? \ - ( \ - fetchatt(TupleDescAttr((tupleDesc), (attnum)-1), \ - (char *) (tup) + IndexInfoFindDataOffset((tup)->t_info) \ - + TupleDescAttr((tupleDesc), (attnum)-1)->attcacheoff) \ - ) \ - : \ - nocache_index_getattr((tup), (attnum), (tupleDesc)) \ - ) \ - : \ - ( \ - (att_isnull((attnum)-1, (char *)(tup) + sizeof(IndexTupleData))) ? \ - ( \ - *(isnull) = true, \ - (Datum)NULL \ - ) \ - : \ - ( \ - nocache_index_getattr((tup), (attnum), (tupleDesc)) \ - ) \ - ) \ -) +static inline Datum +index_getattr(IndexTuple tup, int attnum, TupleDesc tupleDesc, bool *isnull) +{ + Assert(PointerIsValid(isnull)); + Assert(attnum > 0); + + *isnull = false; + + if (!IndexTupleHasNulls(tup)) + { + if (TupleDescAttr(tupleDesc, attnum - 1)->attcacheoff >= 0) + { + return fetchatt(TupleDescAttr(tupleDesc, attnum - 1), + (char *) tup + IndexInfoFindDataOffset(tup->t_info) + + TupleDescAttr(tupleDesc, attnum - 1)->attcacheoff); + } + else + return nocache_index_getattr(tup, attnum, tupleDesc); + } + else + { + if (att_isnull(attnum - 1, (bits8 *) tup + sizeof(IndexTupleData))) + { + *isnull = true; + return (Datum) NULL; + } + else + return nocache_index_getattr(tup, attnum, tupleDesc); + } +} + +#endif /* * MaxIndexTuplesPerPage is an upper bound on the number of tuples that can @@ -146,22 +167,4 @@ typedef IndexAttributeBitMapData * IndexAttributeBitMap; ((int) ((BLCKSZ - SizeOfPageHeaderData) / \ (MAXALIGN(sizeof(IndexTupleData) + 1) + sizeof(ItemIdData)))) - -/* routines in indextuple.c */ -extern IndexTuple index_form_tuple(TupleDesc tupleDescriptor, - Datum *values, bool *isnull); -extern IndexTuple index_form_tuple_context(TupleDesc tupleDescriptor, - Datum *values, bool *isnull, - MemoryContext context); -extern Datum nocache_index_getattr(IndexTuple tup, int attnum, - TupleDesc tupleDesc); -extern void index_deform_tuple(IndexTuple tup, TupleDesc tupleDescriptor, - Datum *values, bool *isnull); -extern void index_deform_tuple_internal(TupleDesc tupleDescriptor, - Datum *values, bool *isnull, - char *tp, bits8 *bp, int hasnulls); -extern IndexTuple CopyIndexTuple(IndexTuple source); -extern IndexTuple index_truncate_tuple(TupleDesc sourceDescriptor, - IndexTuple source, int leavenatts); - #endif /* ITUP_H */ diff --git a/parser/include/access/parallel.h b/parser/include/access/parallel.h index 983841d4..061f8a4c 100644 --- a/parser/include/access/parallel.h +++ b/parser/include/access/parallel.h @@ -3,7 +3,7 @@ * parallel.h * Infrastructure for launching parallel workers * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/parallel.h @@ -54,7 +54,7 @@ typedef struct ParallelWorkerContext shm_toc *toc; } ParallelWorkerContext; -extern PGDLLIMPORT volatile bool ParallelMessagePending; +extern PGDLLIMPORT volatile sig_atomic_t ParallelMessagePending; extern PGDLLIMPORT int ParallelWorkerNumber; extern PGDLLIMPORT bool InitializingParallelWorker; diff --git a/parser/include/access/printtup.h b/parser/include/access/printtup.h index 971a74cf..747ecb80 100644 --- a/parser/include/access/printtup.h +++ b/parser/include/access/printtup.h @@ -4,7 +4,7 @@ * * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/printtup.h diff --git a/parser/include/access/relation.h b/parser/include/access/relation.h index d3627931..66efd367 100644 --- a/parser/include/access/relation.h +++ b/parser/include/access/relation.h @@ -4,7 +4,7 @@ * Generic relation related routines. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/relation.h diff --git a/parser/include/access/relscan.h b/parser/include/access/relscan.h index 53a93ccb..d03360ea 100644 --- a/parser/include/access/relscan.h +++ b/parser/include/access/relscan.h @@ -4,7 +4,7 @@ * POSTGRES relation scan descriptor definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/relscan.h diff --git a/parser/include/access/rmgrlist.h b/parser/include/access/rmgrlist.h index 9a74721c..463bcb67 100644 --- a/parser/include/access/rmgrlist.h +++ b/parser/include/access/rmgrlist.h @@ -6,7 +6,7 @@ * by the PG_RMGR macro, which is not defined in this file; it can be * defined by the caller for special purposes. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/rmgrlist.h @@ -24,7 +24,7 @@ * Changes to this list possibly need an XLOG_PAGE_MAGIC bump. */ -/* symbol name, textual name, redo, desc, identify, startup, cleanup */ +/* symbol name, textual name, redo, desc, identify, startup, cleanup, mask, decode */ PG_RMGR(RM_XLOG_ID, "XLOG", xlog_redo, xlog_desc, xlog_identify, NULL, NULL, NULL, xlog_decode) PG_RMGR(RM_XACT_ID, "Transaction", xact_redo, xact_desc, xact_identify, NULL, NULL, NULL, xact_decode) PG_RMGR(RM_SMGR_ID, "Storage", smgr_redo, smgr_desc, smgr_identify, NULL, NULL, NULL, NULL) diff --git a/parser/include/access/sdir.h b/parser/include/access/sdir.h index 1ab4d5e1..322aeb3f 100644 --- a/parser/include/access/sdir.h +++ b/parser/include/access/sdir.h @@ -4,7 +4,7 @@ * POSTGRES scan direction definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/sdir.h @@ -16,8 +16,10 @@ /* - * ScanDirection was an int8 for no apparent reason. I kept the original - * values because I'm not sure if I'll break anything otherwise. -ay 2/95 + * Defines the direction for scanning a table or an index. Scans are never + * invoked using NoMovementScanDirectionScans. For convenience, we use the + * values -1 and 1 for backward and forward scans. This allows us to perform + * a few mathematical tricks such as what is done in ScanDirectionCombine. */ typedef enum ScanDirection { @@ -26,6 +28,13 @@ typedef enum ScanDirection ForwardScanDirection = 1 } ScanDirection; +/* + * Determine the net effect of two direction specifications. + * This relies on having ForwardScanDirection = +1, BackwardScanDirection = -1, + * and will probably not do what you want if applied to any other values. + */ +#define ScanDirectionCombine(a, b) ((a) * (b)) + /* * ScanDirectionIsValid * True iff scan direction is valid. diff --git a/parser/include/access/skey.h b/parser/include/access/skey.h index b5ab17f7..fbdb23c5 100644 --- a/parser/include/access/skey.h +++ b/parser/include/access/skey.h @@ -4,7 +4,7 @@ * POSTGRES scan key definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/skey.h diff --git a/parser/include/access/stratnum.h b/parser/include/access/stratnum.h index ac15f844..1b29653a 100644 --- a/parser/include/access/stratnum.h +++ b/parser/include/access/stratnum.h @@ -4,7 +4,7 @@ * POSTGRES strategy number definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/stratnum.h diff --git a/parser/include/access/sysattr.h b/parser/include/access/sysattr.h index c0b1d5ab..8f086827 100644 --- a/parser/include/access/sysattr.h +++ b/parser/include/access/sysattr.h @@ -4,7 +4,7 @@ * POSTGRES system attribute definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/sysattr.h diff --git a/parser/include/access/table.h b/parser/include/access/table.h index 969952d6..e664c7b7 100644 --- a/parser/include/access/table.h +++ b/parser/include/access/table.h @@ -4,7 +4,7 @@ * Generic routines for table related code. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/table.h diff --git a/parser/include/access/tableam.h b/parser/include/access/tableam.h index fe869c6c..230bc39c 100644 --- a/parser/include/access/tableam.h +++ b/parser/include/access/tableam.h @@ -4,7 +4,7 @@ * POSTGRES table access method definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/tableam.h @@ -20,7 +20,7 @@ #include "access/relscan.h" #include "access/sdir.h" #include "access/xact.h" -#include "utils/guc.h" +#include "executor/tuptable.h" #include "utils/rel.h" #include "utils/snapshot.h" @@ -102,6 +102,22 @@ typedef enum TM_Result TM_WouldBlock } TM_Result; +/* + * Result codes for table_update(..., update_indexes*..). + * Used to determine which indexes to update. + */ +typedef enum TU_UpdateIndexes +{ + /* No indexed columns were updated (incl. TID addressing of tuple) */ + TU_None, + + /* A non-summarizing indexed column was updated, or the TID has changed */ + TU_All, + + /* Only summarized columns were updated, TID is unchanged */ + TU_Summarizing +} TU_UpdateIndexes; + /* * When table_tuple_update, table_tuple_delete, or table_tuple_lock fail * because the target tuple is already outdated, they fill in this struct to @@ -342,7 +358,7 @@ typedef struct TableAmRoutine * allowed by the AM. * * Implementations can assume that scan_set_tidrange is always called - * before can_getnextslot_tidrange or after scan_rescan and before any + * before scan_getnextslot_tidrange or after scan_rescan and before any * further calls to scan_getnextslot_tidrange. */ void (*scan_set_tidrange) (TableScanDesc scan, @@ -526,7 +542,7 @@ typedef struct TableAmRoutine bool wait, TM_FailureData *tmfd, LockTupleMode *lockmode, - bool *update_indexes); + TU_UpdateIndexes *update_indexes); /* see table_tuple_lock() for reference about parameters */ TM_Result (*tuple_lock) (Relation rel, @@ -560,32 +576,32 @@ typedef struct TableAmRoutine */ /* - * This callback needs to create a new relation filenode for `rel`, with + * This callback needs to create new relation storage for `rel`, with * appropriate durability behaviour for `persistence`. * * Note that only the subset of the relcache filled by * RelationBuildLocalRelation() can be relied upon and that the relation's * catalog entries will either not yet exist (new relation), or will still - * reference the old relfilenode. + * reference the old relfilelocator. * * As output *freezeXid, *minmulti must be set to the values appropriate * for pg_class.{relfrozenxid, relminmxid}. For AMs that don't need those * fields to be filled they can be set to InvalidTransactionId and * InvalidMultiXactId, respectively. * - * See also table_relation_set_new_filenode(). + * See also table_relation_set_new_filelocator(). */ - void (*relation_set_new_filenode) (Relation rel, - const RelFileNode *newrnode, - char persistence, - TransactionId *freezeXid, - MultiXactId *minmulti); + void (*relation_set_new_filelocator) (Relation rel, + const RelFileLocator *newrlocator, + char persistence, + TransactionId *freezeXid, + MultiXactId *minmulti); /* * This callback needs to remove all contents from `rel`'s current - * relfilenode. No provisions for transactional behaviour need to be made. - * Often this can be implemented by truncating the underlying storage to - * its minimal size. + * relfilelocator. No provisions for transactional behaviour need to be + * made. Often this can be implemented by truncating the underlying + * storage to its minimal size. * * See also table_relation_nontransactional_truncate(). */ @@ -598,7 +614,7 @@ typedef struct TableAmRoutine * storage, unless it contains references to the tablespace internally. */ void (*relation_copy_data) (Relation rel, - const RelFileNode *newrnode); + const RelFileLocator *newrlocator); /* See table_relation_copy_for_cluster() */ void (*relation_copy_for_cluster) (Relation NewTable, @@ -863,13 +879,13 @@ typedef struct TableAmRoutine * for the relation. Works for tables, views, foreign tables and partitioned * tables. */ -extern const TupleTableSlotOps *table_slot_callbacks(Relation rel); +extern const TupleTableSlotOps *table_slot_callbacks(Relation relation); /* * Returns slot using the callbacks returned by table_slot_callbacks(), and * registers it on *reglist. */ -extern TupleTableSlot *table_slot_create(Relation rel, List **reglist); +extern TupleTableSlot *table_slot_create(Relation relation, List **reglist); /* ---------------------------------------------------------------------------- @@ -886,7 +902,7 @@ table_beginscan(Relation rel, Snapshot snapshot, int nkeys, struct ScanKeyData *key) { uint32 flags = SO_TYPE_SEQSCAN | - SO_ALLOW_STRAT | SO_ALLOW_SYNC | SO_ALLOW_PAGEMODE; + SO_ALLOW_STRAT | SO_ALLOW_SYNC | SO_ALLOW_PAGEMODE; return rel->rd_tableam->scan_begin(rel, snapshot, nkeys, key, NULL, flags); } @@ -895,7 +911,7 @@ table_beginscan(Relation rel, Snapshot snapshot, * Like table_beginscan(), but for scanning catalog. It'll automatically use a * snapshot appropriate for scanning catalog relations. */ -extern TableScanDesc table_beginscan_catalog(Relation rel, int nkeys, +extern TableScanDesc table_beginscan_catalog(Relation relation, int nkeys, struct ScanKeyData *key); /* @@ -1035,6 +1051,10 @@ table_scan_getnextslot(TableScanDesc sscan, ScanDirection direction, TupleTableS { slot->tts_tableOid = RelationGetRelid(sscan->rs_rd); + /* We don't expect actual scans using NoMovementScanDirection */ + Assert(direction == ForwardScanDirection || + direction == BackwardScanDirection); + /* * We don't expect direct calls to table_scan_getnextslot with valid * CheckXidAlive for catalog or regular tables. See detailed comments in @@ -1099,6 +1119,10 @@ table_scan_getnextslot_tidrange(TableScanDesc sscan, ScanDirection direction, /* Ensure table_beginscan_tidrange() was used. */ Assert((sscan->rs_flags & SO_TYPE_TIDRANGESCAN) != 0); + /* We don't expect actual scans using NoMovementScanDirection */ + Assert(direction == ForwardScanDirection || + direction == BackwardScanDirection); + return sscan->rs_rd->rd_tableam->scan_getnextslot_tidrange(sscan, direction, slot); @@ -1133,7 +1157,7 @@ extern void table_parallelscan_initialize(Relation rel, * * Caller must hold a suitable lock on the relation. */ -extern TableScanDesc table_beginscan_parallel(Relation rel, +extern TableScanDesc table_beginscan_parallel(Relation relation, ParallelTableScanDesc pscan); /* @@ -1318,7 +1342,7 @@ table_tuple_satisfies_snapshot(Relation rel, TupleTableSlot *slot, * marked as deletable. See comments above TM_IndexDelete and comments above * TM_IndexDeleteOp for full details. * - * Returns a latestRemovedXid transaction ID that caller generally places in + * Returns a snapshotConflictHorizon transaction ID that caller places in * its index deletion WAL record. This might be used during subsequent REDO * of the WAL record when in Hot Standby mode -- a recovery conflict for the * index deletion operation might be required on the standby. @@ -1348,7 +1372,7 @@ table_index_delete_tuples(Relation rel, TM_IndexDeleteOp *delstate) * RelationGetBufferForTuple. See that method for more information. * * TABLE_INSERT_FROZEN should only be specified for inserts into - * relfilenodes created during the current subtransaction and when + * relation storage created during the current subtransaction and when * there are no prior snapshots or pre-existing portals open. * This causes rows to be frozen, which is an MVCC violation and * requires explicit options chosen by user. @@ -1506,7 +1530,7 @@ static inline TM_Result table_tuple_update(Relation rel, ItemPointer otid, TupleTableSlot *slot, CommandId cid, Snapshot snapshot, Snapshot crosscheck, bool wait, TM_FailureData *tmfd, LockTupleMode *lockmode, - bool *update_indexes) + TU_UpdateIndexes *update_indexes) { return rel->rd_tableam->tuple_update(rel, otid, slot, cid, snapshot, crosscheck, @@ -1577,33 +1601,34 @@ table_finish_bulk_insert(Relation rel, int options) */ /* - * Create storage for `rel` in `newrnode`, with persistence set to + * Create storage for `rel` in `newrlocator`, with persistence set to * `persistence`. * * This is used both during relation creation and various DDL operations to - * create a new relfilenode that can be filled from scratch. When creating - * new storage for an existing relfilenode, this should be called before the + * create new rel storage that can be filled from scratch. When creating + * new storage for an existing relfilelocator, this should be called before the * relcache entry has been updated. * * *freezeXid, *minmulti are set to the xid / multixact horizon for the table * that pg_class.{relfrozenxid, relminmxid} have to be set to. */ static inline void -table_relation_set_new_filenode(Relation rel, - const RelFileNode *newrnode, - char persistence, - TransactionId *freezeXid, - MultiXactId *minmulti) +table_relation_set_new_filelocator(Relation rel, + const RelFileLocator *newrlocator, + char persistence, + TransactionId *freezeXid, + MultiXactId *minmulti) { - rel->rd_tableam->relation_set_new_filenode(rel, newrnode, persistence, - freezeXid, minmulti); + rel->rd_tableam->relation_set_new_filelocator(rel, newrlocator, + persistence, freezeXid, + minmulti); } /* * Remove all table contents from `rel`, in a non-transactional manner. * Non-transactional meaning that there's no need to support rollbacks. This - * commonly only is used to perform truncations for relfilenodes created in the - * current transaction. + * commonly only is used to perform truncations for relation storage created in + * the current transaction. */ static inline void table_relation_nontransactional_truncate(Relation rel) @@ -1612,15 +1637,15 @@ table_relation_nontransactional_truncate(Relation rel) } /* - * Copy data from `rel` into the new relfilenode `newrnode`. The new - * relfilenode may not have storage associated before this function is + * Copy data from `rel` into the new relfilelocator `newrlocator`. The new + * relfilelocator may not have storage associated before this function is * called. This is only supposed to be used for low level operations like * changing a relation's tablespace. */ static inline void -table_relation_copy_data(Relation rel, const RelFileNode *newrnode) +table_relation_copy_data(Relation rel, const RelFileLocator *newrlocator) { - rel->rd_tableam->relation_copy_data(rel, newrnode); + rel->rd_tableam->relation_copy_data(rel, newrlocator); } /* @@ -1633,7 +1658,7 @@ table_relation_copy_data(Relation rel, const RelFileNode *newrnode) * in that index's order; if false and OldIndex is InvalidOid, no sorting is * performed * - OldIndex - see use_sort - * - OldestXmin - computed by vacuum_set_xid_limits(), even when + * - OldestXmin - computed by vacuum_get_cutoffs(), even when * not needed for the relation's AM * - *xid_cutoff - ditto * - *multi_cutoff - ditto @@ -1870,7 +1895,7 @@ table_relation_toast_am(Relation rel) * * toastrel is the relation in which the toasted value is stored. * - * valueid identifes which toast value is to be fetched. For the heap, + * valueid identifies which toast value is to be fetched. For the heap, * this corresponds to the values stored in the chunk_id column. * * attrsize is the total size of the toast value to be fetched. @@ -2029,7 +2054,7 @@ extern void simple_table_tuple_delete(Relation rel, ItemPointer tid, Snapshot snapshot); extern void simple_table_tuple_update(Relation rel, ItemPointer otid, TupleTableSlot *slot, Snapshot snapshot, - bool *update_indexes); + TU_UpdateIndexes *update_indexes); /* ---------------------------------------------------------------------------- @@ -2071,7 +2096,5 @@ extern void table_block_relation_estimate_size(Relation rel, extern const TableAmRoutine *GetTableAmRoutine(Oid amhandler); extern const TableAmRoutine *GetHeapamTableAmRoutine(void); -extern bool check_default_table_access_method(char **newval, void **extra, - GucSource source); #endif /* TABLEAM_H */ diff --git a/parser/include/access/toast_compression.h b/parser/include/access/toast_compression.h index deb8f99d..7f02820c 100644 --- a/parser/include/access/toast_compression.h +++ b/parser/include/access/toast_compression.h @@ -3,7 +3,7 @@ * toast_compression.h * Functions for toast compression. * - * Copyright (c) 2021-2022, PostgreSQL Global Development Group + * Copyright (c) 2021-2023, PostgreSQL Global Development Group * * src/include/access/toast_compression.h * diff --git a/parser/include/access/transam.h b/parser/include/access/transam.h index 775471d2..f5af6d30 100644 --- a/parser/include/access/transam.h +++ b/parser/include/access/transam.h @@ -4,7 +4,7 @@ * postgres transaction access method support code * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/transam.h diff --git a/parser/include/access/tsmapi.h b/parser/include/access/tsmapi.h new file mode 100644 index 00000000..80784bed --- /dev/null +++ b/parser/include/access/tsmapi.h @@ -0,0 +1,82 @@ +/*------------------------------------------------------------------------- + * + * tsmapi.h + * API for tablesample methods + * + * Copyright (c) 2015-2023, PostgreSQL Global Development Group + * + * src/include/access/tsmapi.h + * + *------------------------------------------------------------------------- + */ +#ifndef TSMAPI_H +#define TSMAPI_H + +#include "nodes/execnodes.h" +#include "nodes/pathnodes.h" + + +/* + * Callback function signatures --- see tablesample-method.sgml for more info. + */ + +typedef void (*SampleScanGetSampleSize_function) (PlannerInfo *root, + RelOptInfo *baserel, + List *paramexprs, + BlockNumber *pages, + double *tuples); + +typedef void (*InitSampleScan_function) (SampleScanState *node, + int eflags); + +typedef void (*BeginSampleScan_function) (SampleScanState *node, + Datum *params, + int nparams, + uint32 seed); + +typedef BlockNumber (*NextSampleBlock_function) (SampleScanState *node, + BlockNumber nblocks); + +typedef OffsetNumber (*NextSampleTuple_function) (SampleScanState *node, + BlockNumber blockno, + OffsetNumber maxoffset); + +typedef void (*EndSampleScan_function) (SampleScanState *node); + +/* + * TsmRoutine is the struct returned by a tablesample method's handler + * function. It provides pointers to the callback functions needed by the + * planner and executor, as well as additional information about the method. + * + * More function pointers are likely to be added in the future. + * Therefore it's recommended that the handler initialize the struct with + * makeNode(TsmRoutine) so that all fields are set to NULL. This will + * ensure that no fields are accidentally left undefined. + */ +typedef struct TsmRoutine +{ + NodeTag type; + + /* List of datatype OIDs for the arguments of the TABLESAMPLE clause */ + List *parameterTypes; + + /* Can method produce repeatable samples across, or even within, queries? */ + bool repeatable_across_queries; + bool repeatable_across_scans; + + /* Functions for planning a SampleScan on a physical table */ + SampleScanGetSampleSize_function SampleScanGetSampleSize; + + /* Functions for executing a SampleScan on a physical table */ + InitSampleScan_function InitSampleScan; /* can be NULL */ + BeginSampleScan_function BeginSampleScan; + NextSampleBlock_function NextSampleBlock; /* can be NULL */ + NextSampleTuple_function NextSampleTuple; + EndSampleScan_function EndSampleScan; /* can be NULL */ +} TsmRoutine; + + +/* Functions in access/tablesample/tablesample.c */ +extern TsmRoutine *GetTsmRoutine(Oid tsmhandler); + +#endif /* TSMAPI_H */ diff --git a/parser/include/access/tupconvert.h b/parser/include/access/tupconvert.h index f5a5fd82..f00918b5 100644 --- a/parser/include/access/tupconvert.h +++ b/parser/include/access/tupconvert.h @@ -4,7 +4,7 @@ * Tuple conversion support. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/tupconvert.h @@ -39,12 +39,15 @@ extern TupleConversionMap *convert_tuples_by_position(TupleDesc indesc, extern TupleConversionMap *convert_tuples_by_name(TupleDesc indesc, TupleDesc outdesc); +extern TupleConversionMap *convert_tuples_by_name_attrmap(TupleDesc indesc, + TupleDesc outdesc, + AttrMap *attrMap); extern HeapTuple execute_attr_map_tuple(HeapTuple tuple, TupleConversionMap *map); extern TupleTableSlot *execute_attr_map_slot(AttrMap *attrMap, TupleTableSlot *in_slot, TupleTableSlot *out_slot); -extern Bitmapset *execute_attr_map_cols(AttrMap *attrMap, Bitmapset *inbitmap); +extern Bitmapset *execute_attr_map_cols(AttrMap *attrMap, Bitmapset *in_cols); extern void free_conversion_map(TupleConversionMap *map); diff --git a/parser/include/access/tupdesc.h b/parser/include/access/tupdesc.h index 28dd6de1..b4286cf9 100644 --- a/parser/include/access/tupdesc.h +++ b/parser/include/access/tupdesc.h @@ -4,7 +4,7 @@ * POSTGRES tuple descriptor definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/tupdesc.h @@ -127,7 +127,7 @@ extern void DecrTupleDescRefCount(TupleDesc tupdesc); extern bool equalTupleDescs(TupleDesc tupdesc1, TupleDesc tupdesc2); -extern uint32 hashTupleDesc(TupleDesc tupdesc); +extern uint32 hashTupleDesc(TupleDesc desc); extern void TupleDescInitEntry(TupleDesc desc, AttrNumber attributeNumber, diff --git a/parser/include/access/tupmacs.h b/parser/include/access/tupmacs.h index 16c74a58..34144465 100644 --- a/parser/include/access/tupmacs.h +++ b/parser/include/access/tupmacs.h @@ -4,7 +4,7 @@ * Tuple macros used by both index tuples and heap tuples. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/tupmacs.h @@ -22,8 +22,13 @@ * Note that a 0 in the null bitmap indicates a null, while 1 indicates * non-null. */ -#define att_isnull(ATT, BITS) (!((BITS)[(ATT) >> 3] & (1 << ((ATT) & 0x07)))) +static inline bool +att_isnull(int ATT, const bits8 *BITS) +{ + return !(BITS[ATT >> 3] & (1 << (ATT & 0x07))); +} +#ifndef FRONTEND /* * Given a Form_pg_attribute and a pointer into a tuple's data area, * return the correct value or pointer. @@ -43,56 +48,32 @@ /* * Same, but work from byval/len parameters rather than Form_pg_attribute. */ +static inline Datum +fetch_att(const void *T, bool attbyval, int attlen) +{ + if (attbyval) + { + switch (attlen) + { + case sizeof(char): + return CharGetDatum(*((const char *) T)); + case sizeof(int16): + return Int16GetDatum(*((const int16 *) T)); + case sizeof(int32): + return Int32GetDatum(*((const int32 *) T)); #if SIZEOF_DATUM == 8 - -#define fetch_att(T,attbyval,attlen) \ -( \ - (attbyval) ? \ - ( \ - (attlen) == (int) sizeof(Datum) ? \ - *((Datum *)(T)) \ - : \ - ( \ - (attlen) == (int) sizeof(int32) ? \ - Int32GetDatum(*((int32 *)(T))) \ - : \ - ( \ - (attlen) == (int) sizeof(int16) ? \ - Int16GetDatum(*((int16 *)(T))) \ - : \ - ( \ - AssertMacro((attlen) == 1), \ - CharGetDatum(*((char *)(T))) \ - ) \ - ) \ - ) \ - ) \ - : \ - PointerGetDatum((char *) (T)) \ -) -#else /* SIZEOF_DATUM != 8 */ - -#define fetch_att(T,attbyval,attlen) \ -( \ - (attbyval) ? \ - ( \ - (attlen) == (int) sizeof(int32) ? \ - Int32GetDatum(*((int32 *)(T))) \ - : \ - ( \ - (attlen) == (int) sizeof(int16) ? \ - Int16GetDatum(*((int16 *)(T))) \ - : \ - ( \ - AssertMacro((attlen) == 1), \ - CharGetDatum(*((char *)(T))) \ - ) \ - ) \ - ) \ - : \ - PointerGetDatum((char *) (T)) \ -) -#endif /* SIZEOF_DATUM == 8 */ + case sizeof(Datum): + return *((const Datum *) T); +#endif + default: + elog(ERROR, "unsupported byval length: %d", attlen); + return 0; + } + } + else + return PointerGetDatum(T); +} +#endif /* FRONTEND */ /* * att_align_datum aligns the given offset as needed for a datum of alignment @@ -190,58 +171,37 @@ )) \ ) +#ifndef FRONTEND /* * store_att_byval is a partial inverse of fetch_att: store a given Datum * value into a tuple data area at the specified address. However, it only * handles the byval case, because in typical usage the caller needs to - * distinguish by-val and by-ref cases anyway, and so a do-it-all macro + * distinguish by-val and by-ref cases anyway, and so a do-it-all function * wouldn't be convenient. */ +static inline void +store_att_byval(void *T, Datum newdatum, int attlen) +{ + switch (attlen) + { + case sizeof(char): + *(char *) T = DatumGetChar(newdatum); + break; + case sizeof(int16): + *(int16 *) T = DatumGetInt16(newdatum); + break; + case sizeof(int32): + *(int32 *) T = DatumGetInt32(newdatum); + break; #if SIZEOF_DATUM == 8 - -#define store_att_byval(T,newdatum,attlen) \ - do { \ - switch (attlen) \ - { \ - case sizeof(char): \ - *(char *) (T) = DatumGetChar(newdatum); \ - break; \ - case sizeof(int16): \ - *(int16 *) (T) = DatumGetInt16(newdatum); \ - break; \ - case sizeof(int32): \ - *(int32 *) (T) = DatumGetInt32(newdatum); \ - break; \ - case sizeof(Datum): \ - *(Datum *) (T) = (newdatum); \ - break; \ - default: \ - elog(ERROR, "unsupported byval length: %d", \ - (int) (attlen)); \ - break; \ - } \ - } while (0) -#else /* SIZEOF_DATUM != 8 */ - -#define store_att_byval(T,newdatum,attlen) \ - do { \ - switch (attlen) \ - { \ - case sizeof(char): \ - *(char *) (T) = DatumGetChar(newdatum); \ - break; \ - case sizeof(int16): \ - *(int16 *) (T) = DatumGetInt16(newdatum); \ - break; \ - case sizeof(int32): \ - *(int32 *) (T) = DatumGetInt32(newdatum); \ - break; \ - default: \ - elog(ERROR, "unsupported byval length: %d", \ - (int) (attlen)); \ - break; \ - } \ - } while (0) -#endif /* SIZEOF_DATUM == 8 */ - + case sizeof(Datum): + *(Datum *) T = newdatum; + break; #endif + default: + elog(ERROR, "unsupported byval length: %d", attlen); + } +} +#endif /* FRONTEND */ + +#endif /* TUPMACS_H */ diff --git a/parser/include/access/twophase.h b/parser/include/access/twophase.h index 5d6544e2..21e2af73 100644 --- a/parser/include/access/twophase.h +++ b/parser/include/access/twophase.h @@ -4,7 +4,7 @@ * Two-phase-commit related declarations. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/twophase.h @@ -60,6 +60,6 @@ extern void PrepareRedoAdd(char *buf, XLogRecPtr start_lsn, XLogRecPtr end_lsn, RepOriginId origin_id); extern void PrepareRedoRemove(TransactionId xid, bool giveWarning); extern void restoreTwoPhaseData(void); -extern bool LookupGXact(const char *gid, XLogRecPtr prepare_at_lsn, +extern bool LookupGXact(const char *gid, XLogRecPtr prepare_end_lsn, TimestampTz origin_prepare_timestamp); #endif /* TWOPHASE_H */ diff --git a/parser/include/access/xact.h b/parser/include/access/xact.h index 65616ca2..7d3b9446 100644 --- a/parser/include/access/xact.h +++ b/parser/include/access/xact.h @@ -4,7 +4,7 @@ * postgres transaction system definitions * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/xact.h @@ -19,7 +19,7 @@ #include "datatype/timestamp.h" #include "lib/stringinfo.h" #include "nodes/pg_list.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" #include "storage/sinval.h" /* @@ -113,6 +113,13 @@ extern PGDLLIMPORT int MyXactFlags; */ #define XACT_FLAGS_NEEDIMMEDIATECOMMIT (1U << 2) +/* + * XACT_FLAGS_PIPELINING - set when we complete an extended-query-protocol + * Execute message. This is useful for detecting that an implicit transaction + * block has been created via pipelining. + */ +#define XACT_FLAGS_PIPELINING (1U << 3) + /* * start- and end-of-transaction callbacks for dynamically loaded modules */ @@ -180,7 +187,7 @@ typedef struct SavedTransactionCharacteristics */ #define XACT_XINFO_HAS_DBINFO (1U << 0) #define XACT_XINFO_HAS_SUBXACTS (1U << 1) -#define XACT_XINFO_HAS_RELFILENODES (1U << 2) +#define XACT_XINFO_HAS_RELFILELOCATORS (1U << 2) #define XACT_XINFO_HAS_INVALS (1U << 3) #define XACT_XINFO_HAS_TWOPHASE (1U << 4) #define XACT_XINFO_HAS_ORIGIN (1U << 5) @@ -258,12 +265,12 @@ typedef struct xl_xact_subxacts } xl_xact_subxacts; #define MinSizeOfXactSubxacts offsetof(xl_xact_subxacts, subxacts) -typedef struct xl_xact_relfilenodes +typedef struct xl_xact_relfilelocators { int nrels; /* number of relations */ - RelFileNode xnodes[FLEXIBLE_ARRAY_MEMBER]; -} xl_xact_relfilenodes; -#define MinSizeOfXactRelfilenodes offsetof(xl_xact_relfilenodes, xnodes) + RelFileLocator xlocators[FLEXIBLE_ARRAY_MEMBER]; +} xl_xact_relfilelocators; +#define MinSizeOfXactRelfileLocators offsetof(xl_xact_relfilelocators, xlocators) /* * A transactionally dropped statistics entry. @@ -311,7 +318,7 @@ typedef struct xl_xact_commit /* xl_xact_xinfo follows if XLOG_XACT_HAS_INFO */ /* xl_xact_dbinfo follows if XINFO_HAS_DBINFO */ /* xl_xact_subxacts follows if XINFO_HAS_SUBXACT */ - /* xl_xact_relfilenodes follows if XINFO_HAS_RELFILENODES */ + /* xl_xact_relfilelocators follows if XINFO_HAS_RELFILELOCATORS */ /* xl_xact_stats_items follows if XINFO_HAS_DROPPED_STATS */ /* xl_xact_invals follows if XINFO_HAS_INVALS */ /* xl_xact_twophase follows if XINFO_HAS_TWOPHASE */ @@ -327,7 +334,7 @@ typedef struct xl_xact_abort /* xl_xact_xinfo follows if XLOG_XACT_HAS_INFO */ /* xl_xact_dbinfo follows if XINFO_HAS_DBINFO */ /* xl_xact_subxacts follows if XINFO_HAS_SUBXACT */ - /* xl_xact_relfilenodes follows if XINFO_HAS_RELFILENODES */ + /* xl_xact_relfilelocators follows if XINFO_HAS_RELFILELOCATORS */ /* xl_xact_stats_items follows if XINFO_HAS_DROPPED_STATS */ /* No invalidation messages needed. */ /* xl_xact_twophase follows if XINFO_HAS_TWOPHASE */ @@ -373,7 +380,7 @@ typedef struct xl_xact_parsed_commit TransactionId *subxacts; int nrels; - RelFileNode *xnodes; + RelFileLocator *xlocators; int nstats; xl_xact_stats_item *stats; @@ -384,7 +391,7 @@ typedef struct xl_xact_parsed_commit TransactionId twophase_xid; /* only for 2PC */ char twophase_gid[GIDSIZE]; /* only for 2PC */ int nabortrels; /* only for 2PC */ - RelFileNode *abortnodes; /* only for 2PC */ + RelFileLocator *abortlocators; /* only for 2PC */ int nabortstats; /* only for 2PC */ xl_xact_stats_item *abortstats; /* only for 2PC */ @@ -406,7 +413,7 @@ typedef struct xl_xact_parsed_abort TransactionId *subxacts; int nrels; - RelFileNode *xnodes; + RelFileLocator *xlocators; int nstats; xl_xact_stats_item *stats; @@ -489,9 +496,9 @@ extern int xactGetCommittedChildren(TransactionId **ptr); extern XLogRecPtr XactLogCommitRecord(TimestampTz commit_time, int nsubxacts, TransactionId *subxacts, - int nrels, RelFileNode *rels, - int nstats, - xl_xact_stats_item *stats, + int nrels, RelFileLocator *rels, + int ndroppedstats, + xl_xact_stats_item *droppedstats, int nmsgs, SharedInvalidationMessage *msgs, bool relcacheInval, int xactflags, @@ -500,9 +507,9 @@ extern XLogRecPtr XactLogCommitRecord(TimestampTz commit_time, extern XLogRecPtr XactLogAbortRecord(TimestampTz abort_time, int nsubxacts, TransactionId *subxacts, - int nrels, RelFileNode *rels, - int nstats, - xl_xact_stats_item *stats, + int nrels, RelFileLocator *rels, + int ndroppedstats, + xl_xact_stats_item *droppedstats, int xactflags, TransactionId twophase_xid, const char *twophase_gid); extern void xact_redo(XLogReaderState *record); diff --git a/parser/include/access/xlog.h b/parser/include/access/xlog.h index cd674c3c..48ca8523 100644 --- a/parser/include/access/xlog.h +++ b/parser/include/access/xlog.h @@ -3,7 +3,7 @@ * * PostgreSQL write-ahead log manager * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/xlog.h @@ -11,8 +11,8 @@ #ifndef XLOG_H #define XLOG_H +#include "access/xlogbackup.h" #include "access/xlogdefs.h" -#include "access/xlogreader.h" #include "datatype/timestamp.h" #include "lib/stringinfo.h" #include "nodes/pg_list.h" @@ -191,25 +191,26 @@ typedef enum WALAvailability } WALAvailability; struct XLogRecData; +struct XLogReaderState; extern XLogRecPtr XLogInsertRecord(struct XLogRecData *rdata, XLogRecPtr fpw_lsn, uint8 flags, int num_fpi, bool topxid_included); -extern void XLogFlush(XLogRecPtr RecPtr); +extern void XLogFlush(XLogRecPtr record); extern bool XLogBackgroundFlush(void); -extern bool XLogNeedsFlush(XLogRecPtr RecPtr); -extern int XLogFileInit(XLogSegNo segno, TimeLineID tli); +extern bool XLogNeedsFlush(XLogRecPtr record); +extern int XLogFileInit(XLogSegNo logsegno, TimeLineID logtli); extern int XLogFileOpen(XLogSegNo segno, TimeLineID tli); extern void CheckXLogRemoved(XLogSegNo segno, TimeLineID tli); extern XLogSegNo XLogGetLastRemovedSegno(void); -extern void XLogSetAsyncXactLSN(XLogRecPtr record); +extern void XLogSetAsyncXactLSN(XLogRecPtr asyncXactLSN); extern void XLogSetReplicationSlotMinimumLSN(XLogRecPtr lsn); -extern void xlog_redo(XLogReaderState *record); -extern void xlog_desc(StringInfo buf, XLogReaderState *record); +extern void xlog_redo(struct XLogReaderState *record); +extern void xlog_desc(StringInfo buf, struct XLogReaderState *record); extern const char *xlog_identify(uint8 info); extern void issue_xlog_fsync(int fd, XLogSegNo segno, TimeLineID tli); @@ -227,7 +228,9 @@ extern XLogRecPtr GetFakeLSNForUnloggedRel(void); extern Size XLOGShmemSize(void); extern void XLOGShmemInit(void); extern void BootStrapXLOG(void); +extern void InitializeWalConsistencyChecking(void); extern void LocalProcessControlFile(bool reset); +extern WalLevel GetActiveWalLevelOnStandby(void); extern void StartupXLOG(void); extern void ShutdownXLOG(int code, Datum arg); extern void CreateCheckPoint(int flags); @@ -245,9 +248,6 @@ extern XLogRecPtr GetLastImportantRecPtr(void); extern void SetWalWriterSleeping(bool sleeping); -extern void assign_max_wal_size(int newval, void *extra); -extern void assign_checkpoint_completion_target(double newval, void *extra); - /* * Routines used by xlogrecovery.c to call back into xlog.c during recovery. */ @@ -279,11 +279,10 @@ typedef enum SessionBackupState SESSION_BACKUP_RUNNING, } SessionBackupState; -extern XLogRecPtr do_pg_backup_start(const char *backupidstr, bool fast, - TimeLineID *starttli_p, StringInfo labelfile, - List **tablespaces, StringInfo tblspcmapfile); -extern XLogRecPtr do_pg_backup_stop(char *labelfile, bool waitforarchive, - TimeLineID *stoptli_p); +extern void do_pg_backup_start(const char *backupidstr, bool fast, + List **tablespaces, BackupState *state, + StringInfo tblspcmapfile); +extern void do_pg_backup_stop(BackupState *state, bool waitforarchive); extern void do_pg_abort_backup(int code, Datum arg); extern void register_persistent_abort_backup_handler(void); extern SessionBackupState get_backup_status(void); diff --git a/parser/include/access/xlog_internal.h b/parser/include/access/xlog_internal.h index fae0bef8..b0fd338a 100644 --- a/parser/include/access/xlog_internal.h +++ b/parser/include/access/xlog_internal.h @@ -11,7 +11,7 @@ * Note: This file must be includable in both frontend and backend contexts, * to allow stand-alone tools like pg_receivewal to deal with WAL files. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/xlog_internal.h @@ -25,13 +25,13 @@ #include "lib/stringinfo.h" #include "pgtime.h" #include "storage/block.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" /* * Each page of XLOG file has a header like this: */ -#define XLOG_PAGE_MAGIC 0xD110 /* can be used as WAL version indicator */ +#define XLOG_PAGE_MAGIC 0xD113 /* can be used as WAL version indicator */ typedef struct XLogPageHeaderData { @@ -159,74 +159,112 @@ typedef XLogLongPageHeaderData *XLogLongPageHeader; #define XLOG_FNAME_LEN 24 /* - * Generate a WAL segment file name. Do not use this macro in a helper + * Generate a WAL segment file name. Do not use this function in a helper * function allocating the result generated. */ -#define XLogFileName(fname, tli, logSegNo, wal_segsz_bytes) \ - snprintf(fname, MAXFNAMELEN, "%08X%08X%08X", tli, \ - (uint32) ((logSegNo) / XLogSegmentsPerXLogId(wal_segsz_bytes)), \ - (uint32) ((logSegNo) % XLogSegmentsPerXLogId(wal_segsz_bytes))) +static inline void +XLogFileName(char *fname, TimeLineID tli, XLogSegNo logSegNo, int wal_segsz_bytes) +{ + snprintf(fname, MAXFNAMELEN, "%08X%08X%08X", tli, + (uint32) (logSegNo / XLogSegmentsPerXLogId(wal_segsz_bytes)), + (uint32) (logSegNo % XLogSegmentsPerXLogId(wal_segsz_bytes))); +} -#define XLogFileNameById(fname, tli, log, seg) \ - snprintf(fname, MAXFNAMELEN, "%08X%08X%08X", tli, log, seg) +static inline void +XLogFileNameById(char *fname, TimeLineID tli, uint32 log, uint32 seg) +{ + snprintf(fname, MAXFNAMELEN, "%08X%08X%08X", tli, log, seg); +} -#define IsXLogFileName(fname) \ - (strlen(fname) == XLOG_FNAME_LEN && \ - strspn(fname, "0123456789ABCDEF") == XLOG_FNAME_LEN) +static inline bool +IsXLogFileName(const char *fname) +{ + return (strlen(fname) == XLOG_FNAME_LEN && \ + strspn(fname, "0123456789ABCDEF") == XLOG_FNAME_LEN); +} /* * XLOG segment with .partial suffix. Used by pg_receivewal and at end of * archive recovery, when we want to archive a WAL segment but it might not * be complete yet. */ -#define IsPartialXLogFileName(fname) \ - (strlen(fname) == XLOG_FNAME_LEN + strlen(".partial") && \ - strspn(fname, "0123456789ABCDEF") == XLOG_FNAME_LEN && \ - strcmp((fname) + XLOG_FNAME_LEN, ".partial") == 0) - -#define XLogFromFileName(fname, tli, logSegNo, wal_segsz_bytes) \ - do { \ - uint32 log; \ - uint32 seg; \ - sscanf(fname, "%08X%08X%08X", tli, &log, &seg); \ - *logSegNo = (uint64) log * XLogSegmentsPerXLogId(wal_segsz_bytes) + seg; \ - } while (0) - -#define XLogFilePath(path, tli, logSegNo, wal_segsz_bytes) \ - snprintf(path, MAXPGPATH, XLOGDIR "/%08X%08X%08X", tli, \ - (uint32) ((logSegNo) / XLogSegmentsPerXLogId(wal_segsz_bytes)), \ - (uint32) ((logSegNo) % XLogSegmentsPerXLogId(wal_segsz_bytes))) - -#define TLHistoryFileName(fname, tli) \ - snprintf(fname, MAXFNAMELEN, "%08X.history", tli) - -#define IsTLHistoryFileName(fname) \ - (strlen(fname) == 8 + strlen(".history") && \ - strspn(fname, "0123456789ABCDEF") == 8 && \ - strcmp((fname) + 8, ".history") == 0) - -#define TLHistoryFilePath(path, tli) \ - snprintf(path, MAXPGPATH, XLOGDIR "/%08X.history", tli) - -#define StatusFilePath(path, xlog, suffix) \ - snprintf(path, MAXPGPATH, XLOGDIR "/archive_status/%s%s", xlog, suffix) - -#define BackupHistoryFileName(fname, tli, logSegNo, startpoint, wal_segsz_bytes) \ - snprintf(fname, MAXFNAMELEN, "%08X%08X%08X.%08X.backup", tli, \ - (uint32) ((logSegNo) / XLogSegmentsPerXLogId(wal_segsz_bytes)), \ - (uint32) ((logSegNo) % XLogSegmentsPerXLogId(wal_segsz_bytes)), \ - (uint32) (XLogSegmentOffset(startpoint, wal_segsz_bytes))) - -#define IsBackupHistoryFileName(fname) \ - (strlen(fname) > XLOG_FNAME_LEN && \ - strspn(fname, "0123456789ABCDEF") == XLOG_FNAME_LEN && \ - strcmp((fname) + strlen(fname) - strlen(".backup"), ".backup") == 0) - -#define BackupHistoryFilePath(path, tli, logSegNo, startpoint, wal_segsz_bytes) \ - snprintf(path, MAXPGPATH, XLOGDIR "/%08X%08X%08X.%08X.backup", tli, \ - (uint32) ((logSegNo) / XLogSegmentsPerXLogId(wal_segsz_bytes)), \ - (uint32) ((logSegNo) % XLogSegmentsPerXLogId(wal_segsz_bytes)), \ - (uint32) (XLogSegmentOffset((startpoint), wal_segsz_bytes))) +static inline bool +IsPartialXLogFileName(const char *fname) +{ + return (strlen(fname) == XLOG_FNAME_LEN + strlen(".partial") && + strspn(fname, "0123456789ABCDEF") == XLOG_FNAME_LEN && + strcmp(fname + XLOG_FNAME_LEN, ".partial") == 0); +} + +static inline void +XLogFromFileName(const char *fname, TimeLineID *tli, XLogSegNo *logSegNo, int wal_segsz_bytes) +{ + uint32 log; + uint32 seg; + + sscanf(fname, "%08X%08X%08X", tli, &log, &seg); + *logSegNo = (uint64) log * XLogSegmentsPerXLogId(wal_segsz_bytes) + seg; +} + +static inline void +XLogFilePath(char *path, TimeLineID tli, XLogSegNo logSegNo, int wal_segsz_bytes) +{ + snprintf(path, MAXPGPATH, XLOGDIR "/%08X%08X%08X", tli, + (uint32) (logSegNo / XLogSegmentsPerXLogId(wal_segsz_bytes)), + (uint32) (logSegNo % XLogSegmentsPerXLogId(wal_segsz_bytes))); +} + +static inline void +TLHistoryFileName(char *fname, TimeLineID tli) +{ + snprintf(fname, MAXFNAMELEN, "%08X.history", tli); +} + +static inline bool +IsTLHistoryFileName(const char *fname) +{ + return (strlen(fname) == 8 + strlen(".history") && + strspn(fname, "0123456789ABCDEF") == 8 && + strcmp(fname + 8, ".history") == 0); +} + +static inline void +TLHistoryFilePath(char *path, TimeLineID tli) +{ + snprintf(path, MAXPGPATH, XLOGDIR "/%08X.history", tli); +} + +static inline void +StatusFilePath(char *path, const char *xlog, const char *suffix) +{ + snprintf(path, MAXPGPATH, XLOGDIR "/archive_status/%s%s", xlog, suffix); +} + +static inline void +BackupHistoryFileName(char *fname, TimeLineID tli, XLogSegNo logSegNo, XLogRecPtr startpoint, int wal_segsz_bytes) +{ + snprintf(fname, MAXFNAMELEN, "%08X%08X%08X.%08X.backup", tli, + (uint32) (logSegNo / XLogSegmentsPerXLogId(wal_segsz_bytes)), + (uint32) (logSegNo % XLogSegmentsPerXLogId(wal_segsz_bytes)), + (uint32) (XLogSegmentOffset(startpoint, wal_segsz_bytes))); +} + +static inline bool +IsBackupHistoryFileName(const char *fname) +{ + return (strlen(fname) > XLOG_FNAME_LEN && + strspn(fname, "0123456789ABCDEF") == XLOG_FNAME_LEN && + strcmp(fname + strlen(fname) - strlen(".backup"), ".backup") == 0); +} + +static inline void +BackupHistoryFilePath(char *path, TimeLineID tli, XLogSegNo logSegNo, XLogRecPtr startpoint, int wal_segsz_bytes) +{ + snprintf(path, MAXPGPATH, XLOGDIR "/%08X%08X%08X.%08X.backup", tli, + (uint32) (logSegNo / XLogSegmentsPerXLogId(wal_segsz_bytes)), + (uint32) (logSegNo % XLogSegmentsPerXLogId(wal_segsz_bytes)), + (uint32) (XLogSegmentOffset((startpoint), wal_segsz_bytes))); +} /* * Information logged when we detect a change in one of the parameters @@ -324,7 +362,7 @@ extern PGDLLIMPORT RmgrData RmgrTable[]; extern void RmgrStartup(void); extern void RmgrCleanup(void); extern void RmgrNotFound(RmgrId rmid); -extern void RegisterCustomRmgr(RmgrId rmid, RmgrData *rmgr); +extern void RegisterCustomRmgr(RmgrId rmid, const RmgrData *rmgr); #ifndef FRONTEND static inline bool diff --git a/parser/include/access/xlogbackup.h b/parser/include/access/xlogbackup.h new file mode 100644 index 00000000..16113581 --- /dev/null +++ b/parser/include/access/xlogbackup.h @@ -0,0 +1,41 @@ +/*------------------------------------------------------------------------- + * + * xlogbackup.h + * Definitions for internals of base backups. + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * IDENTIFICATION + * src/include/access/xlogbackup.h + *------------------------------------------------------------------------- + */ + +#ifndef XLOG_BACKUP_H +#define XLOG_BACKUP_H + +#include "access/xlogdefs.h" +#include "pgtime.h" + +/* Structure to hold backup state. */ +typedef struct BackupState +{ + /* Fields saved at backup start */ + /* Backup label name one extra byte for null-termination */ + char name[MAXPGPATH + 1]; + XLogRecPtr startpoint; /* backup start WAL location */ + TimeLineID starttli; /* backup start TLI */ + XLogRecPtr checkpointloc; /* last checkpoint location */ + pg_time_t starttime; /* backup start time */ + bool started_in_recovery; /* backup started in recovery? */ + + /* Fields saved at the end of backup */ + XLogRecPtr stoppoint; /* backup stop WAL location */ + TimeLineID stoptli; /* backup stop TLI */ + pg_time_t stoptime; /* backup stop time */ +} BackupState; + +extern char *build_backup_content(BackupState *state, + bool ishistoryfile); + +#endif /* XLOG_BACKUP_H */ diff --git a/parser/include/access/xlogdefs.h b/parser/include/access/xlogdefs.h index a47e3eeb..fe794c77 100644 --- a/parser/include/access/xlogdefs.h +++ b/parser/include/access/xlogdefs.h @@ -4,7 +4,7 @@ * Postgres write-ahead log manager record pointer and * timeline number definitions * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/xlogdefs.h @@ -67,35 +67,16 @@ typedef uint16 RepOriginId; /* * This chunk of hackery attempts to determine which file sync methods * are available on the current platform, and to choose an appropriate - * default method. We assume that fsync() is always available, and that - * configure determined whether fdatasync() is. + * default method. + * + * Note that we define our own O_DSYNC on Windows, but not O_SYNC. */ -#if defined(O_SYNC) -#define OPEN_SYNC_FLAG O_SYNC -#elif defined(O_FSYNC) -#define OPEN_SYNC_FLAG O_FSYNC -#endif - -#if defined(O_DSYNC) -#if defined(OPEN_SYNC_FLAG) -/* O_DSYNC is distinct? */ -#if O_DSYNC != OPEN_SYNC_FLAG -#define OPEN_DATASYNC_FLAG O_DSYNC -#endif -#else /* !defined(OPEN_SYNC_FLAG) */ -/* Win32 only has O_DSYNC */ -#define OPEN_DATASYNC_FLAG O_DSYNC -#endif -#endif - #if defined(PLATFORM_DEFAULT_SYNC_METHOD) #define DEFAULT_SYNC_METHOD PLATFORM_DEFAULT_SYNC_METHOD -#elif defined(OPEN_DATASYNC_FLAG) +#elif defined(O_DSYNC) && (!defined(O_SYNC) || O_DSYNC != O_SYNC) #define DEFAULT_SYNC_METHOD SYNC_METHOD_OPEN_DSYNC -#elif defined(HAVE_FDATASYNC) -#define DEFAULT_SYNC_METHOD SYNC_METHOD_FDATASYNC #else -#define DEFAULT_SYNC_METHOD SYNC_METHOD_FSYNC +#define DEFAULT_SYNC_METHOD SYNC_METHOD_FDATASYNC #endif #endif /* XLOG_DEFS_H */ diff --git a/parser/include/access/xlogprefetcher.h b/parser/include/access/xlogprefetcher.h index fdd67fce..7dd7f20a 100644 --- a/parser/include/access/xlogprefetcher.h +++ b/parser/include/access/xlogprefetcher.h @@ -3,7 +3,7 @@ * xlogprefetcher.h * Declarations for the recovery prefetching module. * - * Portions Copyright (c) 2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2022-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION diff --git a/parser/include/access/xlogreader.h b/parser/include/access/xlogreader.h index 9e63162e..da32c7db 100644 --- a/parser/include/access/xlogreader.h +++ b/parser/include/access/xlogreader.h @@ -3,7 +3,7 @@ * xlogreader.h * Definitions for the generic XLog reading facility * - * Portions Copyright (c) 2013-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2013-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/include/access/xlogreader.h @@ -122,7 +122,7 @@ typedef struct bool in_use; /* Identify the block this refers to */ - RelFileNode rnode; + RelFileLocator rlocator; ForkNumber forknum; BlockNumber blkno; @@ -332,7 +332,6 @@ extern XLogReaderState *XLogReaderAllocate(int wal_segment_size, const char *waldir, XLogReaderRoutine *routine, void *private_data); -extern XLogReaderRoutine *LocalXLogReaderRoutine(void); /* Free an XLogReader */ extern void XLogReaderFree(XLogReaderState *state); @@ -400,7 +399,7 @@ extern bool DecodeXLogRecord(XLogReaderState *state, DecodedXLogRecord *decoded, XLogRecord *record, XLogRecPtr lsn, - char **errmsg); + char **errormsg); /* * Macros that provide access to parts of the record most recently returned by @@ -425,6 +424,8 @@ extern bool DecodeXLogRecord(XLogReaderState *state, ((decoder)->record->blocks[block_id].has_image) #define XLogRecBlockImageApply(decoder, block_id) \ ((decoder)->record->blocks[block_id].apply_image) +#define XLogRecHasBlockData(decoder, block_id) \ + ((decoder)->record->blocks[block_id].has_data) #ifndef FRONTEND extern FullTransactionId XLogRecGetFullXid(XLogReaderState *record); @@ -433,10 +434,10 @@ extern FullTransactionId XLogRecGetFullXid(XLogReaderState *record); extern bool RestoreBlockImage(XLogReaderState *record, uint8 block_id, char *page); extern char *XLogRecGetBlockData(XLogReaderState *record, uint8 block_id, Size *len); extern void XLogRecGetBlockTag(XLogReaderState *record, uint8 block_id, - RelFileNode *rnode, ForkNumber *forknum, + RelFileLocator *rlocator, ForkNumber *forknum, BlockNumber *blknum); extern bool XLogRecGetBlockTagExtended(XLogReaderState *record, uint8 block_id, - RelFileNode *rnode, ForkNumber *forknum, + RelFileLocator *rlocator, ForkNumber *forknum, BlockNumber *blknum, Buffer *prefetch_buffer); diff --git a/parser/include/access/xlogrecord.h b/parser/include/access/xlogrecord.h index 052ac681..f355e08e 100644 --- a/parser/include/access/xlogrecord.h +++ b/parser/include/access/xlogrecord.h @@ -3,7 +3,7 @@ * * Definitions for the WAL record format. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/xlogrecord.h @@ -15,7 +15,7 @@ #include "access/xlogdefs.h" #include "port/pg_crc32c.h" #include "storage/block.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" /* * The overall layout of an XLOG record is: @@ -62,6 +62,17 @@ typedef struct XLogRecord #define XLR_INFO_MASK 0x0F #define XLR_RMGR_INFO_MASK 0xF0 +/* + * XLogReader needs to allocate all the data of a WAL record in a single + * chunk. This means that a single XLogRecord cannot exceed MaxAllocSize + * in length if we ignore any allocation overhead of the XLogReader. + * + * To accommodate some overhead, this value allows for 4M of allocation + * overhead, that should be plenty enough for what + * DecodeXLogRecordRequiredSpace() expects as extra. + */ +#define XLogRecordMaxSize (1020 * 1024 * 1024) + /* * If a WAL record modifies any relation files, in ways not covered by the * usual block references, this flag is set. This is not used for anything @@ -97,7 +108,7 @@ typedef struct XLogRecordBlockHeader * image) */ /* If BKPBLOCK_HAS_IMAGE, an XLogRecordBlockImageHeader struct follows */ - /* If BKPBLOCK_SAME_REL is not set, a RelFileNode follows */ + /* If BKPBLOCK_SAME_REL is not set, a RelFileLocator follows */ /* BlockNumber follows */ } XLogRecordBlockHeader; @@ -175,7 +186,7 @@ typedef struct XLogRecordBlockCompressHeader (SizeOfXLogRecordBlockHeader + \ SizeOfXLogRecordBlockImageHeader + \ SizeOfXLogRecordBlockCompressHeader + \ - sizeof(RelFileNode) + \ + sizeof(RelFileLocator) + \ sizeof(BlockNumber)) /* @@ -187,7 +198,8 @@ typedef struct XLogRecordBlockCompressHeader #define BKPBLOCK_HAS_IMAGE 0x10 /* block data is an XLogRecordBlockImage */ #define BKPBLOCK_HAS_DATA 0x20 #define BKPBLOCK_WILL_INIT 0x40 /* redo will re-init the page */ -#define BKPBLOCK_SAME_REL 0x80 /* RelFileNode omitted, same as previous */ +#define BKPBLOCK_SAME_REL 0x80 /* RelFileLocator omitted, same as + * previous */ /* * XLogRecordDataHeaderShort/Long are used for the "main data" portion of diff --git a/parser/include/access/xlogrecovery.h b/parser/include/access/xlogrecovery.h index 0aa85d90..47c29350 100644 --- a/parser/include/access/xlogrecovery.h +++ b/parser/include/access/xlogrecovery.h @@ -3,7 +3,7 @@ * * Functions for WAL recovery and standby mode * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/access/xlogrecovery.h @@ -65,7 +65,6 @@ extern PGDLLIMPORT TimestampTz recoveryTargetTime; extern PGDLLIMPORT const char *recoveryTargetName; extern PGDLLIMPORT XLogRecPtr recoveryTargetLSN; extern PGDLLIMPORT RecoveryTargetType recoveryTarget; -extern PGDLLIMPORT char *PromoteTriggerFile; extern PGDLLIMPORT bool wal_receiver_create_temp_slot; extern PGDLLIMPORT RecoveryTargetTimeLineGoal recoveryTargetTimeLineGoal; extern PGDLLIMPORT TimeLineID recoveryTargetTLIRequested; @@ -80,7 +79,9 @@ extern PGDLLIMPORT bool StandbyMode; extern Size XLogRecoveryShmemSize(void); extern void XLogRecoveryShmemInit(void); -extern void InitWalRecovery(ControlFileData *ControlFile, bool *wasShutdownPtr, bool *haveBackupLabel, bool *haveTblspcMap); +extern void InitWalRecovery(ControlFileData *ControlFile, + bool *wasShutdown_ptr, bool *haveBackupLabel_ptr, + bool *haveTblspcMap_ptr); extern void PerformWalRecovery(void); /* diff --git a/parser/include/archive/archive_module.h b/parser/include/archive/archive_module.h new file mode 100644 index 00000000..679ce5a6 --- /dev/null +++ b/parser/include/archive/archive_module.h @@ -0,0 +1,59 @@ +/*------------------------------------------------------------------------- + * + * archive_module.h + * Exports for archive modules. + * + * Copyright (c) 2022-2023, PostgreSQL Global Development Group + * + * src/include/archive/archive_module.h + * + *------------------------------------------------------------------------- + */ +#ifndef _ARCHIVE_MODULE_H +#define _ARCHIVE_MODULE_H + +/* + * The value of the archive_library GUC. + */ +extern PGDLLIMPORT char *XLogArchiveLibrary; + +typedef struct ArchiveModuleState +{ + /* + * Private data pointer for use by an archive module. This can be used to + * store state for the module that will be passed to each of its + * callbacks. + */ + void *private_data; +} ArchiveModuleState; + +/* + * Archive module callbacks + * + * These callback functions should be defined by archive libraries and returned + * via _PG_archive_module_init(). ArchiveFileCB is the only required callback. + * For more information about the purpose of each callback, refer to the + * archive modules documentation. + */ +typedef void (*ArchiveStartupCB) (ArchiveModuleState *state); +typedef bool (*ArchiveCheckConfiguredCB) (ArchiveModuleState *state); +typedef bool (*ArchiveFileCB) (ArchiveModuleState *state, const char *file, const char *path); +typedef void (*ArchiveShutdownCB) (ArchiveModuleState *state); + +typedef struct ArchiveModuleCallbacks +{ + ArchiveStartupCB startup_cb; + ArchiveCheckConfiguredCB check_configured_cb; + ArchiveFileCB archive_file_cb; + ArchiveShutdownCB shutdown_cb; +} ArchiveModuleCallbacks; + +/* + * Type of the shared library symbol _PG_archive_module_init that is looked + * up when loading an archive library. + */ +typedef const ArchiveModuleCallbacks *(*ArchiveModuleInit) (void); + +extern PGDLLEXPORT const ArchiveModuleCallbacks *_PG_archive_module_init(void); + +#endif /* _ARCHIVE_MODULE_H */ diff --git a/parser/include/c.h b/parser/include/c.h index e2f60807..549bf067 100644 --- a/parser/include/c.h +++ b/parser/include/c.h @@ -9,7 +9,7 @@ * polluting the namespace with lots of stuff... * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/c.h @@ -30,7 +30,7 @@ * 2) bool, true, false * 3) standard system types * 4) IsValid macros for system types - * 5) offsetof, lengthof, alignment + * 5) lengthof, alignment * 6) assertions * 7) widely useful macros * 8) random stuff @@ -144,6 +144,17 @@ #define pg_attribute_no_sanitize_alignment() #endif +/* + * pg_attribute_nonnull means the compiler should warn if the function is + * called with the listed arguments set to NULL. If no arguments are + * listed, the compiler should warn if any pointer arguments are set to NULL. + */ +#if __has_attribute (nonnull) +#define pg_attribute_nonnull(...) __attribute__((nonnull(__VA_ARGS__))) +#else +#define pg_attribute_nonnull(...) +#endif + /* * Append PG_USED_FOR_ASSERTS_ONLY to definitions of variables that are only * used in assert-enabled builds, to avoid compiler warnings about unused @@ -170,6 +181,17 @@ #define pg_attribute_noreturn() __attribute__((noreturn)) #define pg_attribute_packed() __attribute__((packed)) #define HAVE_PG_ATTRIBUTE_NORETURN 1 +#elif defined(_MSC_VER) +/* + * MSVC supports aligned. noreturn is also possible but in MSVC it is + * declared before the definition while pg_attribute_noreturn() macro + * is currently used after the definition. + * + * Packing is also possible but only by wrapping the entire struct definition + * which doesn't fit into our current macro declarations. + */ +#define pg_attribute_aligned(a) __declspec(align(a)) +#define pg_attribute_noreturn() #else /* * NB: aligned and packed are not given default definitions because they @@ -302,7 +324,25 @@ * pretty trivial: VA_ARGS_NARGS_() returns its 64th argument, and we set up * the call so that that is the appropriate one of the list of constants. * This idea is due to Laurent Deniau. + * + * MSVC has an implementation of __VA_ARGS__ that doesn't conform to the + * standard unless you use the /Zc:preprocessor compiler flag, but that + * isn't available before Visual Studio 2019. For now, use a different + * definition that also works on older compilers. */ +#ifdef _MSC_VER +#define EXPAND(args) args +#define VA_ARGS_NARGS(...) \ + VA_ARGS_NARGS_ EXPAND((__VA_ARGS__, \ + 63,62,61,60, \ + 59,58,57,56,55,54,53,52,51,50, \ + 49,48,47,46,45,44,43,42,41,40, \ + 39,38,37,36,35,34,33,32,31,30, \ + 29,28,27,26,25,24,23,22,21,20, \ + 19,18,17,16,15,14,13,12,11,10, \ + 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)) +#else + #define VA_ARGS_NARGS(...) \ VA_ARGS_NARGS_(__VA_ARGS__, \ 63,62,61,60, \ @@ -312,6 +352,8 @@ 29,28,27,26,25,24,23,22,21,20, \ 19,18,17,16,15,14,13,12,11,10, \ 9, 8, 7, 6, 5, 4, 3, 2, 1, 0) +#endif + #define VA_ARGS_NARGS_( \ _01,_02,_03,_04,_05,_06,_07,_08,_09,_10, \ _11,_12,_13,_14,_15,_16,_17,_18,_19,_20, \ @@ -322,16 +364,6 @@ _61,_62,_63, N, ...) \ (N) -/* - * dummyret is used to set return values in macros that use ?: to make - * assignments. gcc wants these to be void, other compilers like char - */ -#ifdef __GNUC__ /* GNU cc */ -#define dummyret void -#else -#define dummyret char -#endif - /* * Generic function pointer. This can be used in the rare cases where it's * necessary to cast a function pointer to a seemingly incompatible function @@ -349,15 +381,32 @@ typedef void (*pg_funcptr_t) (void); */ #define FLEXIBLE_ARRAY_MEMBER /* empty */ -/* Which __func__ symbol do we have, if any? */ -#ifdef HAVE_FUNCNAME__FUNC -#define PG_FUNCNAME_MACRO __func__ -#else -#ifdef HAVE_FUNCNAME__FUNCTION -#define PG_FUNCNAME_MACRO __FUNCTION__ -#else -#define PG_FUNCNAME_MACRO NULL -#endif +/* + * Does the compiler support #pragma GCC system_header? We optionally use it + * to avoid warnings that we can't fix (e.g. in the perl headers). + * See https://gcc.gnu.org/onlinedocs/cpp/System-Headers.html + * + * Headers for which we do not want to show compiler warnings can, + * conditionally, use #pragma GCC system_header to avoid warnings. Obviously + * this should only be used for external headers over which we do not have + * control. + * + * Support for the pragma is tested here, instead of during configure, as gcc + * also warns about the pragma being used in a .c file. It's surprisingly hard + * to get autoconf to use .h as the file-ending. Looks like gcc has + * implemented the pragma since the 2000, so this test should suffice. + * + * + * Alternatively, we could add the include paths for problematic headers with + * -isystem, but that is a larger hammer and is harder to search for. + * + * A more granular alternative would be to use #pragma GCC diagnostic + * push/ignored/pop, but gcc warns about unknown warnings being ignored, so + * every to-be-ignored-temporarily compiler warning would require its own + * pg_config.h symbol and #ifdef. + */ +#ifdef __GNUC__ +#define HAVE_PRAGMA_GCC_SYSTEM_HEADER 1 #endif @@ -713,20 +762,9 @@ typedef NameData *Name; /* ---------------------------------------------------------------- - * Section 5: offsetof, lengthof, alignment + * Section 5: lengthof, alignment * ---------------------------------------------------------------- */ -/* - * offsetof - * Offset of a structure/union field within that structure/union. - * - * XXX This is supposed to be part of stddef.h, but isn't on - * some systems (like SunOS 4). - */ -#ifndef offsetof -#define offsetof(type, field) ((long) &((type *)0)->field) -#endif /* offsetof */ - /* * lengthof * Number of elements in an array. @@ -803,80 +841,42 @@ typedef NameData *Name; #define Assert(condition) ((void)true) #define AssertMacro(condition) ((void)true) -#define AssertArg(condition) ((void)true) -#define AssertState(condition) ((void)true) -#define AssertPointerAlignment(ptr, bndr) ((void)true) -#define Trap(condition, errorType) ((void)true) -#define TrapMacro(condition, errorType) (true) #elif defined(FRONTEND) #include #define Assert(p) assert(p) #define AssertMacro(p) ((void) assert(p)) -#define AssertArg(condition) assert(condition) -#define AssertState(condition) assert(condition) -#define AssertPointerAlignment(ptr, bndr) ((void)true) #else /* USE_ASSERT_CHECKING && !FRONTEND */ /* - * Trap - * Generates an exception if the given condition is true. + * Assert + * Generates a fatal exception if the given condition is false. */ -#define Trap(condition, errorType) \ +#define Assert(condition) \ do { \ - if (condition) \ - ExceptionalCondition(#condition, (errorType), \ - __FILE__, __LINE__); \ + if (!(condition)) \ + ExceptionalCondition(#condition, __FILE__, __LINE__); \ } while (0) /* - * TrapMacro is the same as Trap but it's intended for use in macros: + * AssertMacro is the same as Assert but it's suitable for use in + * expression-like macros, for example: * * #define foo(x) (AssertMacro(x != 0), bar(x)) - * - * Isn't CPP fun? */ -#define TrapMacro(condition, errorType) \ - ((bool) (! (condition) || \ - (ExceptionalCondition(#condition, (errorType), \ - __FILE__, __LINE__), 0))) - -#define Assert(condition) \ - do { \ - if (!(condition)) \ - ExceptionalCondition(#condition, "FailedAssertion", \ - __FILE__, __LINE__); \ - } while (0) - #define AssertMacro(condition) \ ((void) ((condition) || \ - (ExceptionalCondition(#condition, "FailedAssertion", \ - __FILE__, __LINE__), 0))) + (ExceptionalCondition(#condition, __FILE__, __LINE__), 0))) -#define AssertArg(condition) \ - do { \ - if (!(condition)) \ - ExceptionalCondition(#condition, "BadArgument", \ - __FILE__, __LINE__); \ - } while (0) - -#define AssertState(condition) \ - do { \ - if (!(condition)) \ - ExceptionalCondition(#condition, "BadState", \ - __FILE__, __LINE__); \ - } while (0) +#endif /* USE_ASSERT_CHECKING && !FRONTEND */ /* * Check that `ptr' is `bndr' aligned. */ #define AssertPointerAlignment(ptr, bndr) \ - Trap(TYPEALIGN(bndr, (uintptr_t)(ptr)) != (uintptr_t)(ptr), \ - "UnalignedPointer") - -#endif /* USE_ASSERT_CHECKING && !FRONTEND */ + Assert(TYPEALIGN(bndr, (uintptr_t)(ptr)) == (uintptr_t)(ptr)) /* * ExceptionalCondition is compiled into the backend whether or not @@ -886,7 +886,6 @@ typedef NameData *Name; */ #ifndef FRONTEND extern void ExceptionalCondition(const char *conditionName, - const char *errorType, const char *fileName, int lineNumber) pg_attribute_noreturn(); #endif @@ -896,47 +895,50 @@ extern void ExceptionalCondition(const char *conditionName, * If the "condition" (a compile-time-constant expression) evaluates to false, * throw a compile error using the "errmessage" (a string literal). * - * gcc 4.6 and up supports _Static_assert(), but there are bizarre syntactic - * placement restrictions. Macros StaticAssertStmt() and StaticAssertExpr() + * C11 has _Static_assert(), and most C99 compilers already support that. For + * portability, we wrap it into StaticAssertDecl(). _Static_assert() is a + * "declaration", and so it must be placed where for example a variable + * declaration would be valid. As long as we compile with + * -Wno-declaration-after-statement, that also means it cannot be placed after + * statements in a function. Macros StaticAssertStmt() and StaticAssertExpr() * make it safe to use as a statement or in an expression, respectively. - * The macro StaticAssertDecl() is suitable for use at file scope (outside of - * any function). * - * Otherwise we fall back on a kluge that assumes the compiler will complain - * about a negative width for a struct bit-field. This will not include a - * helpful error message, but it beats not getting an error at all. + * For compilers without _Static_assert(), we fall back on a kluge that + * assumes the compiler will complain about a negative width for a struct + * bit-field. This will not include a helpful error message, but it beats not + * getting an error at all. */ #ifndef __cplusplus #ifdef HAVE__STATIC_ASSERT +#define StaticAssertDecl(condition, errmessage) \ + _Static_assert(condition, errmessage) #define StaticAssertStmt(condition, errmessage) \ do { _Static_assert(condition, errmessage); } while(0) #define StaticAssertExpr(condition, errmessage) \ ((void) ({ StaticAssertStmt(condition, errmessage); true; })) -#define StaticAssertDecl(condition, errmessage) \ - _Static_assert(condition, errmessage) #else /* !HAVE__STATIC_ASSERT */ +#define StaticAssertDecl(condition, errmessage) \ + extern void static_assert_func(int static_assert_failure[(condition) ? 1 : -1]) #define StaticAssertStmt(condition, errmessage) \ ((void) sizeof(struct { int static_assert_failure : (condition) ? 1 : -1; })) #define StaticAssertExpr(condition, errmessage) \ StaticAssertStmt(condition, errmessage) -#define StaticAssertDecl(condition, errmessage) \ - extern void static_assert_func(int static_assert_failure[(condition) ? 1 : -1]) #endif /* HAVE__STATIC_ASSERT */ #else /* C++ */ #if defined(__cpp_static_assert) && __cpp_static_assert >= 200410 +#define StaticAssertDecl(condition, errmessage) \ + static_assert(condition, errmessage) #define StaticAssertStmt(condition, errmessage) \ static_assert(condition, errmessage) #define StaticAssertExpr(condition, errmessage) \ ({ static_assert(condition, errmessage); }) -#define StaticAssertDecl(condition, errmessage) \ - static_assert(condition, errmessage) #else /* !__cpp_static_assert */ +#define StaticAssertDecl(condition, errmessage) \ + extern void static_assert_func(int static_assert_failure[(condition) ? 1 : -1]) #define StaticAssertStmt(condition, errmessage) \ do { struct static_assert_struct { int static_assert_failure : (condition) ? 1 : -1; }; } while(0) #define StaticAssertExpr(condition, errmessage) \ ((void) ({ StaticAssertStmt(condition, errmessage); })) -#define StaticAssertDecl(condition, errmessage) \ - extern void static_assert_func(int static_assert_failure[(condition) ? 1 : -1]) #endif /* __cpp_static_assert */ #endif /* C++ */ @@ -985,12 +987,6 @@ extern void ExceptionalCondition(const char *conditionName, */ #define Min(x, y) ((x) < (y) ? (x) : (y)) -/* - * Abs - * Return the absolute value of the argument. - */ -#define Abs(x) ((x) >= 0 ? (x) : -(x)) - /* Get a bit mask of the bits set in non-long aligned addresses */ #define LONG_ALIGN_MASK (sizeof(long) - 1) @@ -1113,10 +1109,6 @@ extern void ExceptionalCondition(const char *conditionName, * ---------------------------------------------------------------- */ -#ifdef HAVE_STRUCT_SOCKADDR_UN -#define HAVE_UNIX_SOCKETS 1 -#endif - /* * Invert the sign of a qsort-style comparison result, ie, exchange negative * and positive integer values, being careful not to get the wrong answer @@ -1127,14 +1119,11 @@ extern void ExceptionalCondition(const char *conditionName, /* * Use this, not "char buf[BLCKSZ]", to declare a field or local variable - * holding a page buffer, if that page might be accessed as a page and not - * just a string of bytes. Otherwise the variable might be under-aligned, - * causing problems on alignment-picky hardware. (In some places, we use - * this to declare buffers even though we only pass them to read() and - * write(), because copying to/from aligned buffers is usually faster than - * using unaligned buffers.) We include both "double" and "int64" in the - * union to ensure that the compiler knows the value must be MAXALIGN'ed - * (cf. configure's computation of MAXIMUM_ALIGNOF). + * holding a page buffer, if that page might be accessed as a page. Otherwise + * the variable might be under-aligned, causing problems on alignment-picky + * hardware. We include both "double" and "int64" in the union to ensure that + * the compiler knows the value must be MAXALIGN'ed (cf. configure's + * computation of MAXIMUM_ALIGNOF). */ typedef union PGAlignedBlock { @@ -1143,9 +1132,30 @@ typedef union PGAlignedBlock int64 force_align_i64; } PGAlignedBlock; +/* + * Use this to declare a field or local variable holding a page buffer, if that + * page might be accessed as a page or passed to an SMgr I/O function. If + * allocating using the MemoryContext API, the aligned allocation functions + * should be used with PG_IO_ALIGN_SIZE. This alignment may be more efficient + * for I/O in general, but may be strictly required on some platforms when + * using direct I/O. + */ +typedef union PGIOAlignedBlock +{ +#ifdef pg_attribute_aligned + pg_attribute_aligned(PG_IO_ALIGN_SIZE) +#endif + char data[BLCKSZ]; + double force_align_d; + int64 force_align_i64; +} PGIOAlignedBlock; + /* Same, but for an XLOG_BLCKSZ-sized buffer */ typedef union PGAlignedXLogBlock { +#ifdef pg_attribute_aligned + pg_attribute_aligned(PG_IO_ALIGN_SIZE) +#endif char data[XLOG_BLCKSZ]; double force_align_d; int64 force_align_i64; @@ -1279,39 +1289,10 @@ typedef union PGAlignedXLogBlock * standard C library. */ -#if defined(HAVE_FDATASYNC) && !HAVE_DECL_FDATASYNC +#if !HAVE_DECL_FDATASYNC extern int fdatasync(int fildes); #endif -/* Older platforms may provide strto[u]ll functionality under other names */ -#if !defined(HAVE_STRTOLL) && defined(HAVE___STRTOLL) -#define strtoll __strtoll -#define HAVE_STRTOLL 1 -#endif - -#if !defined(HAVE_STRTOLL) && defined(HAVE_STRTOQ) -#define strtoll strtoq -#define HAVE_STRTOLL 1 -#endif - -#if !defined(HAVE_STRTOULL) && defined(HAVE___STRTOULL) -#define strtoull __strtoull -#define HAVE_STRTOULL 1 -#endif - -#if !defined(HAVE_STRTOULL) && defined(HAVE_STRTOUQ) -#define strtoull strtouq -#define HAVE_STRTOULL 1 -#endif - -#if defined(HAVE_STRTOLL) && !HAVE_DECL_STRTOLL -extern long long strtoll(const char *str, char **endptr, int base); -#endif - -#if defined(HAVE_STRTOULL) && !HAVE_DECL_STRTOULL -extern unsigned long long strtoull(const char *str, char **endptr, int base); -#endif - /* * Thin wrappers that convert strings to exactly 64-bit integers, matching our * definition of int64. (For the naming, compare that POSIX has @@ -1325,6 +1306,15 @@ extern unsigned long long strtoull(const char *str, char **endptr, int base); #define strtou64(str, endptr, base) ((uint64) strtoull(str, endptr, base)) #endif +/* + * Similarly, wrappers around labs()/llabs() matching our int64. + */ +#ifdef HAVE_LONG_INT_64 +#define i64abs(i) labs(i) +#else +#define i64abs(i) llabs(i) +#endif + /* * Use "extern PGDLLIMPORT ..." to declare variables that are defined * in the core backend and need to be accessible by loadable modules. @@ -1336,14 +1326,19 @@ extern unsigned long long strtoull(const char *str, char **endptr, int base); /* * Use "extern PGDLLEXPORT ..." to declare functions that are defined in - * loadable modules and need to be callable by the core backend. (Usually, - * this is not necessary because our build process automatically exports - * such symbols, but sometimes manual marking is required.) - * No special marking is required on most ports. + * loadable modules and need to be callable by the core backend or other + * loadable modules. + * If the compiler knows __attribute__((visibility("*"))), we use that, + * unless we already have a platform-specific definition. Otherwise, + * no special marking is required. */ #ifndef PGDLLEXPORT +#ifdef HAVE_VISIBILITY_ATTRIBUTE +#define PGDLLEXPORT __attribute__((visibility("default"))) +#else #define PGDLLEXPORT #endif +#endif /* * The following is used as the arg list for signal handlers. Any ports @@ -1376,13 +1371,6 @@ typedef intptr_t sigjmp_buf[5]; #endif /* __MINGW64__ */ #endif /* WIN32 */ -/* EXEC_BACKEND defines */ -#ifdef EXEC_BACKEND -#define NON_EXEC_STATIC -#else -#define NON_EXEC_STATIC static -#endif - /* /port compatibility functions */ #include "port.h" diff --git a/parser/include/catalog/catalog.h b/parser/include/catalog/catalog.h index 60c12153..48b0fdc6 100644 --- a/parser/include/catalog/catalog.h +++ b/parser/include/catalog/catalog.h @@ -4,7 +4,7 @@ * prototypes for functions in backend/catalog/catalog.c * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/catalog.h @@ -38,7 +38,8 @@ extern bool IsPinnedObject(Oid classId, Oid objectId); extern Oid GetNewOidWithIndex(Relation relation, Oid indexId, AttrNumber oidcolumn); -extern Oid GetNewRelFileNode(Oid reltablespace, Relation pg_class, - char relpersistence); +extern RelFileNumber GetNewRelFileNumber(Oid reltablespace, + Relation pg_class, + char relpersistence); #endif /* CATALOG_H */ diff --git a/parser/include/catalog/catversion.h b/parser/include/catalog/catversion.h index c616a258..cc1de6e6 100644 --- a/parser/include/catalog/catversion.h +++ b/parser/include/catalog/catversion.h @@ -32,9 +32,13 @@ * include/catalog is the most common kind of initdb-forcing change. * But it could be used to protect any kind of incompatible change in * database contents or layout, such as altering tuple headers. + * Another common reason for a catversion update is a change in parsetree + * external representation, since serialized parsetrees appear in stored + * rules and new-style SQL functions. Almost any change in primnodes.h or + * parsenodes.h will warrant a catversion update. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/catversion.h @@ -53,6 +57,6 @@ */ /* yyyymmddN */ -#define CATALOG_VERSION_NO 202209061 +#define CATALOG_VERSION_NO 202307071 #endif diff --git a/parser/include/catalog/dependency.h b/parser/include/catalog/dependency.h index 6684933d..ffd5e9dc 100644 --- a/parser/include/catalog/dependency.h +++ b/parser/include/catalog/dependency.h @@ -4,7 +4,7 @@ * Routines to support inter-object dependencies. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/dependency.h @@ -112,6 +112,7 @@ typedef enum ObjectClass OCLASS_TSTEMPLATE, /* pg_ts_template */ OCLASS_TSCONFIG, /* pg_ts_config */ OCLASS_ROLE, /* pg_authid */ + OCLASS_ROLE_MEMBERSHIP, /* pg_auth_members */ OCLASS_DATABASE, /* pg_database */ OCLASS_TBLSPACE, /* pg_tablespace */ OCLASS_FDW, /* pg_foreign_data_wrapper */ @@ -248,7 +249,7 @@ extern void recordDependencyOnTablespace(Oid classId, Oid objectId, extern void changeDependencyOnTablespace(Oid classId, Oid objectId, Oid newTablespaceId); -extern void updateAclDependencies(Oid classId, Oid objectId, int32 objectSubId, +extern void updateAclDependencies(Oid classId, Oid objectId, int32 objsubId, Oid ownerId, int noldmembers, Oid *oldmembers, int nnewmembers, Oid *newmembers); @@ -262,8 +263,8 @@ extern void copyTemplateDependencies(Oid templateDbId, Oid newDbId); extern void dropDatabaseDependencies(Oid databaseId); -extern void shdepDropOwned(List *relids, DropBehavior behavior); +extern void shdepDropOwned(List *roleids, DropBehavior behavior); -extern void shdepReassignOwned(List *relids, Oid newrole); +extern void shdepReassignOwned(List *roleids, Oid newrole); #endif /* DEPENDENCY_H */ diff --git a/parser/include/catalog/genbki.h b/parser/include/catalog/genbki.h index 992b7842..c42ba0ce 100644 --- a/parser/include/catalog/genbki.h +++ b/parser/include/catalog/genbki.h @@ -9,7 +9,7 @@ * bootstrap file from these header files.) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/genbki.h @@ -71,12 +71,13 @@ * DECLARE_UNIQUE_INDEX_PKEY. ("PKEY" marks the index as being the catalog's * primary key; currently this is only cosmetically different from a regular * unique index. By convention, we usually make a catalog's OID column its - * pkey, if it has one.) The first two arguments are the index's name and - * OID, the rest is much like a standard 'create index' SQL command. + * pkey, if it has one.) * - * For each index, we also provide a #define for its OID. References to - * the index in the C code should always use these #defines, not the actual - * index name (much less the numeric OID). + * The first two arguments are the index's name and OID. The third argument + * is the name of a #define to generate for its OID. References to the index + * in the C code should always use these #defines, not the actual index name + * (much less the numeric OID). The rest is much like a standard 'create + * index' SQL command. * * The macro definitions are just to keep the C compiler from spitting up. */ diff --git a/parser/include/catalog/index.h b/parser/include/catalog/index.h index a1d6e3b6..c8532fb9 100644 --- a/parser/include/catalog/index.h +++ b/parser/include/catalog/index.h @@ -4,7 +4,7 @@ * prototypes for catalog/index.c. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/index.h @@ -71,7 +71,7 @@ extern Oid index_create(Relation heapRelation, Oid indexRelationId, Oid parentIndexRelid, Oid parentConstraintId, - Oid relFileNode, + RelFileNumber relFileNumber, IndexInfo *indexInfo, List *indexColNames, Oid accessMethodObjectId, @@ -149,7 +149,7 @@ extern void index_set_state_flags(Oid indexId, IndexStateFlagsAction action); extern Oid IndexGetRelation(Oid indexId, bool missing_ok); extern void reindex_index(Oid indexId, bool skip_constraint_checks, - char relpersistence, ReindexParams *params); + char persistence, ReindexParams *params); /* Flag bits for reindex_relation(): */ #define REINDEX_REL_PROCESS_TOAST 0x01 @@ -168,7 +168,7 @@ extern Size EstimateReindexStateSpace(void); extern void SerializeReindexState(Size maxsize, char *start_address); extern void RestoreReindexState(void *reindexstate); -extern void IndexSetParentIndex(Relation idx, Oid parentOid); +extern void IndexSetParentIndex(Relation partitionIdx, Oid parentOid); /* diff --git a/parser/include/catalog/indexing.h b/parser/include/catalog/indexing.h index 3fe769be..5c069383 100644 --- a/parser/include/catalog/indexing.h +++ b/parser/include/catalog/indexing.h @@ -5,7 +5,7 @@ * on system catalogs * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/indexing.h diff --git a/parser/include/catalog/namespace.h b/parser/include/catalog/namespace.h index 1bc55c01..f64a0ec2 100644 --- a/parser/include/catalog/namespace.h +++ b/parser/include/catalog/namespace.h @@ -4,7 +4,7 @@ * prototypes for functions in backend/catalog/namespace.c * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/namespace.h @@ -85,7 +85,7 @@ extern Oid RangeVarGetRelidExtended(const RangeVar *relation, RangeVarGetRelidCallback callback, void *callback_arg); extern Oid RangeVarGetCreationNamespace(const RangeVar *newRelation); -extern Oid RangeVarGetAndCheckCreationNamespace(RangeVar *newRelation, +extern Oid RangeVarGetAndCheckCreationNamespace(RangeVar *relation, LOCKMODE lockmode, Oid *existing_relation_id); extern void RangeVarAdjustRelationPersistence(RangeVar *newRelation, Oid nspid); diff --git a/parser/include/catalog/objectaccess.h b/parser/include/catalog/objectaccess.h index 567ab63e..d8145dd4 100644 --- a/parser/include/catalog/objectaccess.h +++ b/parser/include/catalog/objectaccess.h @@ -3,7 +3,7 @@ * * Object access hooks. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California */ @@ -17,7 +17,9 @@ * * OAT_POST_CREATE should be invoked just after the object is created. * Typically, this is done after inserting the primary catalog records and - * associated dependencies. + * associated dependencies. The command counter may or may not be incremented + * at the time the hook is invoked; if not, the extension can use SnapshotSelf + * to get the new version of the tuple. * * OAT_DROP should be invoked just before deletion of objects; typically * deleteOneObject(). Its arguments are packed within ObjectAccessDrop. @@ -151,15 +153,15 @@ extern bool RunNamespaceSearchHook(Oid objectId, bool ereport_on_violation); extern void RunFunctionExecuteHook(Oid objectId); /* String versions */ -extern void RunObjectPostCreateHookStr(Oid classId, const char *objectStr, int subId, +extern void RunObjectPostCreateHookStr(Oid classId, const char *objectName, int subId, bool is_internal); -extern void RunObjectDropHookStr(Oid classId, const char *objectStr, int subId, +extern void RunObjectDropHookStr(Oid classId, const char *objectName, int subId, int dropflags); -extern void RunObjectTruncateHookStr(const char *objectStr); -extern void RunObjectPostAlterHookStr(Oid classId, const char *objectStr, int subId, +extern void RunObjectTruncateHookStr(const char *objectName); +extern void RunObjectPostAlterHookStr(Oid classId, const char *objectName, int subId, Oid auxiliaryId, bool is_internal); -extern bool RunNamespaceSearchHookStr(const char *objectStr, bool ereport_on_violation); -extern void RunFunctionExecuteHookStr(const char *objectStr); +extern bool RunNamespaceSearchHookStr(const char *objectName, bool ereport_on_violation); +extern void RunFunctionExecuteHookStr(const char *objectName); /* diff --git a/parser/include/catalog/objectaddress.h b/parser/include/catalog/objectaddress.h index cf4d8b31..9caa3109 100644 --- a/parser/include/catalog/objectaddress.h +++ b/parser/include/catalog/objectaddress.h @@ -3,7 +3,7 @@ * objectaddress.h * functions for working with object addresses * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/objectaddress.h @@ -77,9 +77,9 @@ extern char *getObjectDescriptionOids(Oid classid, Oid objid); extern int read_objtype_from_string(const char *objtype); extern char *getObjectTypeDescription(const ObjectAddress *object, bool missing_ok); -extern char *getObjectIdentity(const ObjectAddress *address, +extern char *getObjectIdentity(const ObjectAddress *object, bool missing_ok); -extern char *getObjectIdentityParts(const ObjectAddress *address, +extern char *getObjectIdentityParts(const ObjectAddress *object, List **objname, List **objargs, bool missing_ok); extern struct ArrayType *strlist_to_textarray(List *list); diff --git a/parser/include/catalog/pg_aggregate.h b/parser/include/catalog/pg_aggregate.h index 593da9f7..31128811 100644 --- a/parser/include/catalog/pg_aggregate.h +++ b/parser/include/catalog/pg_aggregate.h @@ -4,7 +4,7 @@ * definition of the "aggregate" system catalog (pg_aggregate) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_aggregate.h diff --git a/parser/include/catalog/pg_aggregate_d.h b/parser/include/catalog/pg_aggregate_d.h index 1b82972a..b39c740b 100644 --- a/parser/include/catalog/pg_aggregate_d.h +++ b/parser/include/catalog/pg_aggregate_d.h @@ -3,7 +3,7 @@ * pg_aggregate_d.h * Macro definitions for pg_aggregate * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_am.h b/parser/include/catalog/pg_am.h index 50a68fe4..dab54be1 100644 --- a/parser/include/catalog/pg_am.h +++ b/parser/include/catalog/pg_am.h @@ -4,7 +4,7 @@ * definition of the "access method" system catalog (pg_am) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_am.h diff --git a/parser/include/catalog/pg_am_d.h b/parser/include/catalog/pg_am_d.h index 0391b9c2..7059591d 100644 --- a/parser/include/catalog/pg_am_d.h +++ b/parser/include/catalog/pg_am_d.h @@ -3,7 +3,7 @@ * pg_am_d.h * Macro definitions for pg_am * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_attribute.h b/parser/include/catalog/pg_attribute.h index 053294c9..f8b4861b 100644 --- a/parser/include/catalog/pg_attribute.h +++ b/parser/include/catalog/pg_attribute.h @@ -8,7 +8,7 @@ * relations need be included. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_attribute.h @@ -52,15 +52,6 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75, */ Oid atttypid BKI_LOOKUP_OPT(pg_type); - /* - * attstattarget is the target number of statistics datapoints to collect - * during VACUUM ANALYZE of this column. A zero here indicates that we do - * not wish to collect any stats about this column. A "-1" here indicates - * that no value has been explicitly set for this column, so ANALYZE - * should use the default setting. - */ - int32 attstattarget BKI_DEFAULT(-1); - /* * attlen is a copy of the typlen field from pg_type for this attribute. * See atttypid comments above. @@ -82,12 +73,6 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75, */ int16 attnum; - /* - * attndims is the declared number of dimensions, if an array type, - * otherwise zero. - */ - int32 attndims; - /* * fastgetattr() uses attcacheoff to cache byte offsets of attributes in * heap tuples. The value actually stored in pg_attribute (-1) indicates @@ -105,6 +90,12 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75, */ int32 atttypmod BKI_DEFAULT(-1); + /* + * attndims is the declared number of dimensions, if an array type, + * otherwise zero. + */ + int16 attndims; + /* * attbyval is a copy of the typbyval field from pg_type for this * attribute. See atttypid comments above. @@ -165,7 +156,18 @@ CATALOG(pg_attribute,1249,AttributeRelationId) BKI_BOOTSTRAP BKI_ROWTYPE_OID(75, bool attislocal BKI_DEFAULT(t); /* Number of times inherited from direct parent relation(s) */ - int32 attinhcount BKI_DEFAULT(0); + int16 attinhcount BKI_DEFAULT(0); + + /* + * attstattarget is the target number of statistics datapoints to collect + * during VACUUM ANALYZE of this column. A zero here indicates that we do + * not wish to collect any stats about this column. A "-1" here indicates + * that no value has been explicitly set for this column, so ANALYZE + * should use the default setting. + * + * int16 is sufficient because the max value is currently 10000. + */ + int16 attstattarget BKI_DEFAULT(-1); /* attribute's collation, if any */ Oid attcollation BKI_LOOKUP_OPT(pg_collation); diff --git a/parser/include/catalog/pg_attribute_d.h b/parser/include/catalog/pg_attribute_d.h index 01656dd1..c669c28c 100644 --- a/parser/include/catalog/pg_attribute_d.h +++ b/parser/include/catalog/pg_attribute_d.h @@ -3,7 +3,7 @@ * pg_attribute_d.h * Macro definitions for pg_attribute * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -26,24 +26,24 @@ #define Anum_pg_attribute_attrelid 1 #define Anum_pg_attribute_attname 2 #define Anum_pg_attribute_atttypid 3 -#define Anum_pg_attribute_attstattarget 4 -#define Anum_pg_attribute_attlen 5 -#define Anum_pg_attribute_attnum 6 -#define Anum_pg_attribute_attndims 7 -#define Anum_pg_attribute_attcacheoff 8 -#define Anum_pg_attribute_atttypmod 9 -#define Anum_pg_attribute_attbyval 10 -#define Anum_pg_attribute_attalign 11 -#define Anum_pg_attribute_attstorage 12 -#define Anum_pg_attribute_attcompression 13 -#define Anum_pg_attribute_attnotnull 14 -#define Anum_pg_attribute_atthasdef 15 -#define Anum_pg_attribute_atthasmissing 16 -#define Anum_pg_attribute_attidentity 17 -#define Anum_pg_attribute_attgenerated 18 -#define Anum_pg_attribute_attisdropped 19 -#define Anum_pg_attribute_attislocal 20 -#define Anum_pg_attribute_attinhcount 21 +#define Anum_pg_attribute_attlen 4 +#define Anum_pg_attribute_attnum 5 +#define Anum_pg_attribute_attcacheoff 6 +#define Anum_pg_attribute_atttypmod 7 +#define Anum_pg_attribute_attndims 8 +#define Anum_pg_attribute_attbyval 9 +#define Anum_pg_attribute_attalign 10 +#define Anum_pg_attribute_attstorage 11 +#define Anum_pg_attribute_attcompression 12 +#define Anum_pg_attribute_attnotnull 13 +#define Anum_pg_attribute_atthasdef 14 +#define Anum_pg_attribute_atthasmissing 15 +#define Anum_pg_attribute_attidentity 16 +#define Anum_pg_attribute_attgenerated 17 +#define Anum_pg_attribute_attisdropped 18 +#define Anum_pg_attribute_attislocal 19 +#define Anum_pg_attribute_attinhcount 20 +#define Anum_pg_attribute_attstattarget 21 #define Anum_pg_attribute_attcollation 22 #define Anum_pg_attribute_attacl 23 #define Anum_pg_attribute_attoptions 24 diff --git a/parser/include/catalog/pg_authid.h b/parser/include/catalog/pg_authid.h index 3512601c..c70baf78 100644 --- a/parser/include/catalog/pg_authid.h +++ b/parser/include/catalog/pg_authid.h @@ -6,7 +6,7 @@ * pg_shadow and pg_group are now publicly accessible views on pg_authid. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_authid.h diff --git a/parser/include/catalog/pg_authid_d.h b/parser/include/catalog/pg_authid_d.h index 19325e4c..26900a5c 100644 --- a/parser/include/catalog/pg_authid_d.h +++ b/parser/include/catalog/pg_authid_d.h @@ -3,7 +3,7 @@ * pg_authid_d.h * Macro definitions for pg_authid * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -53,5 +53,7 @@ #define ROLE_PG_EXECUTE_SERVER_PROGRAM 4571 #define ROLE_PG_SIGNAL_BACKEND 4200 #define ROLE_PG_CHECKPOINT 4544 +#define ROLE_PG_USE_RESERVED_CONNECTIONS 4550 +#define ROLE_PG_CREATE_SUBSCRIPTION 6304 #endif /* PG_AUTHID_D_H */ diff --git a/parser/include/catalog/pg_class.h b/parser/include/catalog/pg_class.h index e1f4eefa..2d1bb7af 100644 --- a/parser/include/catalog/pg_class.h +++ b/parser/include/catalog/pg_class.h @@ -4,7 +4,7 @@ * definition of the "relation" system catalog (pg_class) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_class.h diff --git a/parser/include/catalog/pg_class_d.h b/parser/include/catalog/pg_class_d.h index e4cb9940..51208d69 100644 --- a/parser/include/catalog/pg_class_d.h +++ b/parser/include/catalog/pg_class_d.h @@ -3,7 +3,7 @@ * pg_class_d.h * Macro definitions for pg_class * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_collation.h b/parser/include/catalog/pg_collation.h index 2190ccb5..bfa35684 100644 --- a/parser/include/catalog/pg_collation.h +++ b/parser/include/catalog/pg_collation.h @@ -4,7 +4,7 @@ * definition of the "collation" system catalog (pg_collation) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_collation.h @@ -43,6 +43,7 @@ CATALOG(pg_collation,3456,CollationRelationId) text collcollate BKI_DEFAULT(_null_); /* LC_COLLATE setting */ text collctype BKI_DEFAULT(_null_); /* LC_CTYPE setting */ text colliculocale BKI_DEFAULT(_null_); /* ICU locale ID */ + text collicurules BKI_DEFAULT(_null_); /* ICU collation rules */ text collversion BKI_DEFAULT(_null_); /* provider-dependent * version of collation * data */ @@ -91,6 +92,7 @@ extern Oid CollationCreate(const char *collname, Oid collnamespace, int32 collencoding, const char *collcollate, const char *collctype, const char *colliculocale, + const char *collicurules, const char *collversion, bool if_not_exists, bool quiet); diff --git a/parser/include/catalog/pg_collation_d.h b/parser/include/catalog/pg_collation_d.h index c257e327..a5a675b3 100644 --- a/parser/include/catalog/pg_collation_d.h +++ b/parser/include/catalog/pg_collation_d.h @@ -3,7 +3,7 @@ * pg_collation_d.h * Macro definitions for pg_collation * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -32,9 +32,10 @@ #define Anum_pg_collation_collcollate 8 #define Anum_pg_collation_collctype 9 #define Anum_pg_collation_colliculocale 10 -#define Anum_pg_collation_collversion 11 +#define Anum_pg_collation_collicurules 11 +#define Anum_pg_collation_collversion 12 -#define Natts_pg_collation 11 +#define Natts_pg_collation 12 #define COLLPROVIDER_DEFAULT 'd' diff --git a/parser/include/catalog/pg_constraint.h b/parser/include/catalog/pg_constraint.h index e7d967f1..16bf5f55 100644 --- a/parser/include/catalog/pg_constraint.h +++ b/parser/include/catalog/pg_constraint.h @@ -4,7 +4,7 @@ * definition of the "constraint" system catalog (pg_constraint) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_constraint.h @@ -102,7 +102,7 @@ CATALOG(pg_constraint,2606,ConstraintRelationId) bool conislocal; /* Number of times inherited from direct parent relation(s) */ - int32 coninhcount; + int16 coninhcount; /* Has a local definition and cannot be inherited */ bool connoinherit; diff --git a/parser/include/catalog/pg_constraint_d.h b/parser/include/catalog/pg_constraint_d.h index 307c3315..ccd977b8 100644 --- a/parser/include/catalog/pg_constraint_d.h +++ b/parser/include/catalog/pg_constraint_d.h @@ -3,7 +3,7 @@ * pg_constraint_d.h * Macro definitions for pg_constraint * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_control.h b/parser/include/catalog/pg_control.h index 06368e23..dc953977 100644 --- a/parser/include/catalog/pg_control.h +++ b/parser/include/catalog/pg_control.h @@ -5,7 +5,7 @@ * However, we define it here so that the format is documented. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_control.h @@ -247,4 +247,12 @@ typedef struct ControlFileData */ #define PG_CONTROL_FILE_SIZE 8192 +/* + * Ensure that the size of the pg_control data structure is sane. + */ +StaticAssertDecl(sizeof(ControlFileData) <= PG_CONTROL_MAX_SAFE_SIZE, + "pg_control is too large for atomic disk writes"); +StaticAssertDecl(sizeof(ControlFileData) <= PG_CONTROL_FILE_SIZE, + "sizeof(ControlFileData) exceeds PG_CONTROL_FILE_SIZE"); + #endif /* PG_CONTROL_H */ diff --git a/parser/include/catalog/pg_conversion.h b/parser/include/catalog/pg_conversion.h index fb26123a..de40909d 100644 --- a/parser/include/catalog/pg_conversion.h +++ b/parser/include/catalog/pg_conversion.h @@ -3,7 +3,7 @@ * pg_conversion.h * definition of the "conversion" system catalog (pg_conversion) * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_conversion.h @@ -69,7 +69,7 @@ extern ObjectAddress ConversionCreate(const char *conname, Oid connamespace, Oid conowner, int32 conforencoding, int32 contoencoding, Oid conproc, bool def); -extern Oid FindDefaultConversion(Oid connamespace, int32 for_encoding, +extern Oid FindDefaultConversion(Oid name_space, int32 for_encoding, int32 to_encoding); #endif /* PG_CONVERSION_H */ diff --git a/parser/include/catalog/pg_conversion_d.h b/parser/include/catalog/pg_conversion_d.h index 33e4bb48..30857dd6 100644 --- a/parser/include/catalog/pg_conversion_d.h +++ b/parser/include/catalog/pg_conversion_d.h @@ -3,7 +3,7 @@ * pg_conversion_d.h * Macro definitions for pg_conversion * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_database.h b/parser/include/catalog/pg_database.h new file mode 100644 index 00000000..ff5baaf5 --- /dev/null +++ b/parser/include/catalog/pg_database.h @@ -0,0 +1,124 @@ +/*------------------------------------------------------------------------- + * + * pg_database.h + * definition of the "database" system catalog (pg_database) + * + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/catalog/pg_database.h + * + * NOTES + * The Catalog.pm module reads this file and derives schema + * information. + * + *------------------------------------------------------------------------- + */ +#ifndef PG_DATABASE_H +#define PG_DATABASE_H + +#include "catalog/genbki.h" +#include "catalog/pg_database_d.h" + +/* ---------------- + * pg_database definition. cpp turns this into + * typedef struct FormData_pg_database + * ---------------- + */ +CATALOG(pg_database,1262,DatabaseRelationId) BKI_SHARED_RELATION BKI_ROWTYPE_OID(1248,DatabaseRelation_Rowtype_Id) BKI_SCHEMA_MACRO +{ + /* oid */ + Oid oid; + + /* database name */ + NameData datname; + + /* owner of database */ + Oid datdba BKI_DEFAULT(POSTGRES) BKI_LOOKUP(pg_authid); + + /* character encoding */ + int32 encoding; + + /* locale provider, see pg_collation.collprovider */ + char datlocprovider; + + /* allowed as CREATE DATABASE template? */ + bool datistemplate; + + /* new connections allowed? */ + bool datallowconn; + + /* + * Max connections allowed. Negative values have special meaning, see + * DATCONNLIMIT_* defines below. + */ + int32 datconnlimit; + + /* all Xids < this are frozen in this DB */ + TransactionId datfrozenxid; + + /* all multixacts in the DB are >= this */ + TransactionId datminmxid; + + /* default table space for this DB */ + Oid dattablespace BKI_LOOKUP(pg_tablespace); + +#ifdef CATALOG_VARLEN /* variable-length fields start here */ + /* LC_COLLATE setting */ + text datcollate BKI_FORCE_NOT_NULL; + + /* LC_CTYPE setting */ + text datctype BKI_FORCE_NOT_NULL; + + /* ICU locale ID */ + text daticulocale; + + /* ICU collation rules */ + text daticurules; + + /* provider-dependent version of collation data */ + text datcollversion BKI_DEFAULT(_null_); + + /* access permissions */ + aclitem datacl[1]; +#endif +} FormData_pg_database; + +/* ---------------- + * Form_pg_database corresponds to a pointer to a tuple with + * the format of pg_database relation. + * ---------------- + */ +typedef FormData_pg_database *Form_pg_database; + +DECLARE_TOAST_WITH_MACRO(pg_database, 4177, 4178, PgDatabaseToastTable, PgDatabaseToastIndex); + +DECLARE_UNIQUE_INDEX(pg_database_datname_index, 2671, DatabaseNameIndexId, on pg_database using btree(datname name_ops)); +DECLARE_UNIQUE_INDEX_PKEY(pg_database_oid_index, 2672, DatabaseOidIndexId, on pg_database using btree(oid oid_ops)); + +/* + * pg_database.dat contains an entry for template1, but not for the template0 + * or postgres databases, because those are created later in initdb. + * However, we still want to manually assign the OIDs for template0 and + * postgres, so declare those here. + */ +DECLARE_OID_DEFINING_MACRO(Template0DbOid, 4); +DECLARE_OID_DEFINING_MACRO(PostgresDbOid, 5); + +/* + * Special values for pg_database.datconnlimit. Normal values are >= 0. + */ +#define DATCONNLIMIT_UNLIMITED -1 /* no limit */ + +/* + * A database is set to invalid partway through being dropped. Using + * datconnlimit=-2 for this purpose isn't particularly clean, but is + * backpatchable. + */ +#define DATCONNLIMIT_INVALID_DB -2 + +extern bool database_is_invalid_form(Form_pg_database datform); +extern bool database_is_invalid_oid(Oid dboid); + +#endif /* PG_DATABASE_H */ diff --git a/parser/include/catalog/pg_database_d.h b/parser/include/catalog/pg_database_d.h new file mode 100644 index 00000000..a3a68998 --- /dev/null +++ b/parser/include/catalog/pg_database_d.h @@ -0,0 +1,52 @@ +/*------------------------------------------------------------------------- + * + * pg_database_d.h + * Macro definitions for pg_database + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/catalog/genbki.pl + * + *------------------------------------------------------------------------- + */ +#ifndef PG_DATABASE_D_H +#define PG_DATABASE_D_H + +#define DatabaseRelationId 1262 +#define DatabaseRelation_Rowtype_Id 1248 +#define PgDatabaseToastTable 4177 +#define PgDatabaseToastIndex 4178 +#define DatabaseNameIndexId 2671 +#define DatabaseOidIndexId 2672 +#define Template0DbOid 4 +#define PostgresDbOid 5 + +#define Anum_pg_database_oid 1 +#define Anum_pg_database_datname 2 +#define Anum_pg_database_datdba 3 +#define Anum_pg_database_encoding 4 +#define Anum_pg_database_datlocprovider 5 +#define Anum_pg_database_datistemplate 6 +#define Anum_pg_database_datallowconn 7 +#define Anum_pg_database_datconnlimit 8 +#define Anum_pg_database_datfrozenxid 9 +#define Anum_pg_database_datminmxid 10 +#define Anum_pg_database_dattablespace 11 +#define Anum_pg_database_datcollate 12 +#define Anum_pg_database_datctype 13 +#define Anum_pg_database_daticulocale 14 +#define Anum_pg_database_daticurules 15 +#define Anum_pg_database_datcollversion 16 +#define Anum_pg_database_datacl 17 + +#define Natts_pg_database 17 + +#define Template1DbOid 1 + +#endif /* PG_DATABASE_D_H */ diff --git a/parser/include/catalog/pg_depend.h b/parser/include/catalog/pg_depend.h index 2f736ecd..30dde6f8 100644 --- a/parser/include/catalog/pg_depend.h +++ b/parser/include/catalog/pg_depend.h @@ -17,7 +17,7 @@ * convenient to find from the contents of other catalogs. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_depend.h diff --git a/parser/include/catalog/pg_depend_d.h b/parser/include/catalog/pg_depend_d.h index 812e19a3..f0c7a35e 100644 --- a/parser/include/catalog/pg_depend_d.h +++ b/parser/include/catalog/pg_depend_d.h @@ -3,7 +3,7 @@ * pg_depend_d.h * Macro definitions for pg_depend * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_event_trigger.h b/parser/include/catalog/pg_event_trigger.h index 3fe0e8db..e30550f6 100644 --- a/parser/include/catalog/pg_event_trigger.h +++ b/parser/include/catalog/pg_event_trigger.h @@ -4,7 +4,7 @@ * definition of the "event trigger" system catalog (pg_event_trigger) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_event_trigger.h diff --git a/parser/include/catalog/pg_event_trigger_d.h b/parser/include/catalog/pg_event_trigger_d.h index 1f44e4e9..f66be700 100644 --- a/parser/include/catalog/pg_event_trigger_d.h +++ b/parser/include/catalog/pg_event_trigger_d.h @@ -3,7 +3,7 @@ * pg_event_trigger_d.h * Macro definitions for pg_event_trigger * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_index.h b/parser/include/catalog/pg_index.h index f853846e..b0592571 100644 --- a/parser/include/catalog/pg_index.h +++ b/parser/include/catalog/pg_index.h @@ -4,7 +4,7 @@ * definition of the "index" system catalog (pg_index) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_index.h diff --git a/parser/include/catalog/pg_index_d.h b/parser/include/catalog/pg_index_d.h index 1716a3f1..20927db1 100644 --- a/parser/include/catalog/pg_index_d.h +++ b/parser/include/catalog/pg_index_d.h @@ -3,7 +3,7 @@ * pg_index_d.h * Macro definitions for pg_index * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_language.h b/parser/include/catalog/pg_language.h index 4b9c2595..02003b46 100644 --- a/parser/include/catalog/pg_language.h +++ b/parser/include/catalog/pg_language.h @@ -4,7 +4,7 @@ * definition of the "language" system catalog (pg_language) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_language.h diff --git a/parser/include/catalog/pg_language_d.h b/parser/include/catalog/pg_language_d.h index 53f26af2..2c876541 100644 --- a/parser/include/catalog/pg_language_d.h +++ b/parser/include/catalog/pg_language_d.h @@ -3,7 +3,7 @@ * pg_language_d.h * Macro definitions for pg_language * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_namespace.h b/parser/include/catalog/pg_namespace.h index ba56e44d..2b0c2431 100644 --- a/parser/include/catalog/pg_namespace.h +++ b/parser/include/catalog/pg_namespace.h @@ -4,7 +4,7 @@ * definition of the "namespace" system catalog (pg_namespace) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_namespace.h diff --git a/parser/include/catalog/pg_namespace_d.h b/parser/include/catalog/pg_namespace_d.h index 5ca92cc2..954c39d1 100644 --- a/parser/include/catalog/pg_namespace_d.h +++ b/parser/include/catalog/pg_namespace_d.h @@ -3,7 +3,7 @@ * pg_namespace_d.h * Macro definitions for pg_namespace * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_opclass.h b/parser/include/catalog/pg_opclass.h index 3a3a19b8..b4b6325c 100644 --- a/parser/include/catalog/pg_opclass.h +++ b/parser/include/catalog/pg_opclass.h @@ -24,7 +24,7 @@ * AMs support this. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_opclass.h diff --git a/parser/include/catalog/pg_opclass_d.h b/parser/include/catalog/pg_opclass_d.h index d6678056..707d3c93 100644 --- a/parser/include/catalog/pg_opclass_d.h +++ b/parser/include/catalog/pg_opclass_d.h @@ -3,7 +3,7 @@ * pg_opclass_d.h * Macro definitions for pg_opclass * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_operator.h b/parser/include/catalog/pg_operator.h index 51263f55..e60cf782 100644 --- a/parser/include/catalog/pg_operator.h +++ b/parser/include/catalog/pg_operator.h @@ -4,7 +4,7 @@ * definition of the "operator" system catalog (pg_operator) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_operator.h diff --git a/parser/include/catalog/pg_operator_d.h b/parser/include/catalog/pg_operator_d.h index 6b350eb2..84ec7dc0 100644 --- a/parser/include/catalog/pg_operator_d.h +++ b/parser/include/catalog/pg_operator_d.h @@ -3,7 +3,7 @@ * pg_operator_d.h * Macro definitions for pg_operator * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_opfamily.h b/parser/include/catalog/pg_opfamily.h index 8dc9ce01..39b8d7c2 100644 --- a/parser/include/catalog/pg_opfamily.h +++ b/parser/include/catalog/pg_opfamily.h @@ -4,7 +4,7 @@ * definition of the "operator family" system catalog (pg_opfamily) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_opfamily.h @@ -55,7 +55,8 @@ DECLARE_UNIQUE_INDEX_PKEY(pg_opfamily_oid_index, 2755, OpfamilyOidIndexId, on pg #ifdef EXPOSE_TO_CLIENT_CODE -#define IsBooleanOpfamily(opfamily) \ +/* This does not account for non-core opfamilies that might accept boolean */ +#define IsBuiltinBooleanOpfamily(opfamily) \ ((opfamily) == BOOL_BTREE_FAM_OID || (opfamily) == BOOL_HASH_FAM_OID) #endif /* EXPOSE_TO_CLIENT_CODE */ diff --git a/parser/include/catalog/pg_opfamily_d.h b/parser/include/catalog/pg_opfamily_d.h index 5b00cfc1..7be8ff7a 100644 --- a/parser/include/catalog/pg_opfamily_d.h +++ b/parser/include/catalog/pg_opfamily_d.h @@ -3,7 +3,7 @@ * pg_opfamily_d.h * Macro definitions for pg_opfamily * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -31,7 +31,8 @@ #define Natts_pg_opfamily 5 -#define IsBooleanOpfamily(opfamily) \ +/* This does not account for non-core opfamilies that might accept boolean */ +#define IsBuiltinBooleanOpfamily(opfamily) \ ((opfamily) == BOOL_BTREE_FAM_OID || (opfamily) == BOOL_HASH_FAM_OID) #define BOOL_BTREE_FAM_OID 424 @@ -39,6 +40,7 @@ #define BYTEA_BTREE_FAM_OID 428 #define NETWORK_BTREE_FAM_OID 1974 #define INTEGER_BTREE_FAM_OID 1976 +#define INTERVAL_BTREE_FAM_OID 1982 #define OID_BTREE_FAM_OID 1989 #define TEXT_BTREE_FAM_OID 1994 #define TEXT_PATTERN_BTREE_FAM_OID 2095 diff --git a/parser/include/catalog/pg_parameter_acl.h b/parser/include/catalog/pg_parameter_acl.h deleted file mode 100644 index 4bd52c2d..00000000 --- a/parser/include/catalog/pg_parameter_acl.h +++ /dev/null @@ -1,60 +0,0 @@ -/*------------------------------------------------------------------------- - * - * pg_parameter_acl.h - * definition of the "configuration parameter ACL" system catalog - * (pg_parameter_acl). - * - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * src/include/catalog/pg_parameter_acl.h - * - * NOTES - * The Catalog.pm module reads this file and derives schema - * information. - * - *------------------------------------------------------------------------- - */ -#ifndef PG_PARAMETER_ACL_H -#define PG_PARAMETER_ACL_H - -#include "catalog/genbki.h" -#include "catalog/pg_parameter_acl_d.h" - -/* ---------------- - * pg_parameter_acl definition. cpp turns this into - * typedef struct FormData_pg_parameter_acl - * ---------------- - */ -CATALOG(pg_parameter_acl,6243,ParameterAclRelationId) BKI_SHARED_RELATION -{ - Oid oid; /* oid */ - -#ifdef CATALOG_VARLEN /* variable-length fields start here */ - /* name of parameter */ - text parname BKI_FORCE_NOT_NULL; - - /* access permissions */ - aclitem paracl[1] BKI_DEFAULT(_null_); -#endif -} FormData_pg_parameter_acl; - - -/* ---------------- - * Form_pg_parameter_acl corresponds to a pointer to a tuple with - * the format of pg_parameter_acl relation. - * ---------------- - */ -typedef FormData_pg_parameter_acl * Form_pg_parameter_acl; - -DECLARE_TOAST_WITH_MACRO(pg_parameter_acl, 6244, 6245, PgParameterAclToastTable, PgParameterAclToastIndex); - -DECLARE_UNIQUE_INDEX(pg_parameter_acl_parname_index, 6246, ParameterAclParnameIndexId, on pg_parameter_acl using btree(parname text_ops)); -DECLARE_UNIQUE_INDEX_PKEY(pg_parameter_acl_oid_index, 6247, ParameterAclOidIndexId, on pg_parameter_acl using btree(oid oid_ops)); - - -extern Oid ParameterAclLookup(const char *parameter, bool missing_ok); -extern Oid ParameterAclCreate(const char *parameter); - -#endif /* PG_PARAMETER_ACL_H */ diff --git a/parser/include/catalog/pg_parameter_acl_d.h b/parser/include/catalog/pg_parameter_acl_d.h deleted file mode 100644 index 8a27703a..00000000 --- a/parser/include/catalog/pg_parameter_acl_d.h +++ /dev/null @@ -1,34 +0,0 @@ -/*------------------------------------------------------------------------- - * - * pg_parameter_acl_d.h - * Macro definitions for pg_parameter_acl - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * NOTES - * ****************************** - * *** DO NOT EDIT THIS FILE! *** - * ****************************** - * - * It has been GENERATED by src/backend/catalog/genbki.pl - * - *------------------------------------------------------------------------- - */ -#ifndef PG_PARAMETER_ACL_D_H -#define PG_PARAMETER_ACL_D_H - -#define ParameterAclRelationId 6243 -#define PgParameterAclToastTable 6244 -#define PgParameterAclToastIndex 6245 -#define ParameterAclParnameIndexId 6246 -#define ParameterAclOidIndexId 6247 - -#define Anum_pg_parameter_acl_oid 1 -#define Anum_pg_parameter_acl_parname 2 -#define Anum_pg_parameter_acl_paracl 3 - -#define Natts_pg_parameter_acl 3 - - -#endif /* PG_PARAMETER_ACL_D_H */ diff --git a/parser/include/catalog/pg_partitioned_table.h b/parser/include/catalog/pg_partitioned_table.h index 9b78f84c..eb867ad6 100644 --- a/parser/include/catalog/pg_partitioned_table.h +++ b/parser/include/catalog/pg_partitioned_table.h @@ -5,7 +5,7 @@ * (pg_partitioned_table) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_partitioned_table.h diff --git a/parser/include/catalog/pg_partitioned_table_d.h b/parser/include/catalog/pg_partitioned_table_d.h index 6f4338a1..838a94e5 100644 --- a/parser/include/catalog/pg_partitioned_table_d.h +++ b/parser/include/catalog/pg_partitioned_table_d.h @@ -3,7 +3,7 @@ * pg_partitioned_table_d.h * Macro definitions for pg_partitioned_table * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_proc.h b/parser/include/catalog/pg_proc.h index 76310d4c..e7abe0b4 100644 --- a/parser/include/catalog/pg_proc.h +++ b/parser/include/catalog/pg_proc.h @@ -3,7 +3,7 @@ * pg_proc.h * definition of the "procedure" system catalog (pg_proc) * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_proc.h diff --git a/parser/include/catalog/pg_proc_d.h b/parser/include/catalog/pg_proc_d.h index 27fbfdd1..d9beb520 100644 --- a/parser/include/catalog/pg_proc_d.h +++ b/parser/include/catalog/pg_proc_d.h @@ -3,7 +3,7 @@ * pg_proc_d.h * Macro definitions for pg_proc * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_publication.h b/parser/include/catalog/pg_publication.h index 48205ba4..6ecaa2a0 100644 --- a/parser/include/catalog/pg_publication.h +++ b/parser/include/catalog/pg_publication.h @@ -3,7 +3,7 @@ * pg_publication.h * definition of the "publication" system catalog (pg_publication) * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_publication.h @@ -137,7 +137,7 @@ extern List *GetPublicationSchemas(Oid pubid); extern List *GetSchemaPublications(Oid schemaid); extern List *GetSchemaPublicationRelations(Oid schemaid, PublicationPartOpt pub_partopt); -extern List *GetAllSchemaPublicationRelations(Oid puboid, +extern List *GetAllSchemaPublicationRelations(Oid pubid, PublicationPartOpt pub_partopt); extern List *GetPubPartitionOptionRelations(List *result, PublicationPartOpt pub_partopt, @@ -155,7 +155,4 @@ extern ObjectAddress publication_add_schema(Oid pubid, Oid schemaid, extern Bitmapset *pub_collist_to_bitmapset(Bitmapset *columns, Datum pubcols, MemoryContext mcxt); -extern Oid get_publication_oid(const char *pubname, bool missing_ok); -extern char *get_publication_name(Oid pubid, bool missing_ok); - #endif /* PG_PUBLICATION_H */ diff --git a/parser/include/catalog/pg_publication_d.h b/parser/include/catalog/pg_publication_d.h index 189d7df6..be01c625 100644 --- a/parser/include/catalog/pg_publication_d.h +++ b/parser/include/catalog/pg_publication_d.h @@ -3,7 +3,7 @@ * pg_publication_d.h * Macro definitions for pg_publication * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_replication_origin.h b/parser/include/catalog/pg_replication_origin.h index 3b11cd21..fa54f120 100644 --- a/parser/include/catalog/pg_replication_origin.h +++ b/parser/include/catalog/pg_replication_origin.h @@ -4,7 +4,7 @@ * definition of the "replication origin" system catalog * (pg_replication_origin) * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_replication_origin.h diff --git a/parser/include/catalog/pg_replication_origin_d.h b/parser/include/catalog/pg_replication_origin_d.h index 2cfa387a..55308ada 100644 --- a/parser/include/catalog/pg_replication_origin_d.h +++ b/parser/include/catalog/pg_replication_origin_d.h @@ -3,7 +3,7 @@ * pg_replication_origin_d.h * Macro definitions for pg_replication_origin * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_statistic.h b/parser/include/catalog/pg_statistic.h index cdf74481..8770c5b4 100644 --- a/parser/include/catalog/pg_statistic.h +++ b/parser/include/catalog/pg_statistic.h @@ -4,7 +4,7 @@ * definition of the "statistics" system catalog (pg_statistic) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_statistic.h diff --git a/parser/include/catalog/pg_statistic_d.h b/parser/include/catalog/pg_statistic_d.h index a9e6aa99..5024895d 100644 --- a/parser/include/catalog/pg_statistic_d.h +++ b/parser/include/catalog/pg_statistic_d.h @@ -3,7 +3,7 @@ * pg_statistic_d.h * Macro definitions for pg_statistic * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_statistic_ext.h b/parser/include/catalog/pg_statistic_ext.h index b8520ba9..53eec902 100644 --- a/parser/include/catalog/pg_statistic_ext.h +++ b/parser/include/catalog/pg_statistic_ext.h @@ -8,7 +8,7 @@ * objects, created by CREATE STATISTICS, but not the actual statistical data, * created by running ANALYZE. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_statistic_ext.h diff --git a/parser/include/catalog/pg_statistic_ext_d.h b/parser/include/catalog/pg_statistic_ext_d.h index 93758595..055451d6 100644 --- a/parser/include/catalog/pg_statistic_ext_d.h +++ b/parser/include/catalog/pg_statistic_ext_d.h @@ -3,7 +3,7 @@ * pg_statistic_ext_d.h * Macro definitions for pg_statistic_ext * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_transform.h b/parser/include/catalog/pg_transform.h index 2a026915..6273b0a4 100644 --- a/parser/include/catalog/pg_transform.h +++ b/parser/include/catalog/pg_transform.h @@ -4,7 +4,7 @@ * definition of the "transform" system catalog (pg_transform) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_transform.h diff --git a/parser/include/catalog/pg_transform_d.h b/parser/include/catalog/pg_transform_d.h index ca3a1dcb..ddb3b9c2 100644 --- a/parser/include/catalog/pg_transform_d.h +++ b/parser/include/catalog/pg_transform_d.h @@ -3,7 +3,7 @@ * pg_transform_d.h * Macro definitions for pg_transform * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_trigger.h b/parser/include/catalog/pg_trigger.h index 194277bc..3679b039 100644 --- a/parser/include/catalog/pg_trigger.h +++ b/parser/include/catalog/pg_trigger.h @@ -4,7 +4,7 @@ * definition of the "trigger" system catalog (pg_trigger) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_trigger.h diff --git a/parser/include/catalog/pg_trigger_d.h b/parser/include/catalog/pg_trigger_d.h index e20967b4..95109053 100644 --- a/parser/include/catalog/pg_trigger_d.h +++ b/parser/include/catalog/pg_trigger_d.h @@ -3,7 +3,7 @@ * pg_trigger_d.h * Macro definitions for pg_trigger * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_ts_config.h b/parser/include/catalog/pg_ts_config.h index e5a30847..aee0bf71 100644 --- a/parser/include/catalog/pg_ts_config.h +++ b/parser/include/catalog/pg_ts_config.h @@ -5,7 +5,7 @@ * (pg_ts_config) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_ts_config.h diff --git a/parser/include/catalog/pg_ts_config_d.h b/parser/include/catalog/pg_ts_config_d.h index 9a9bda7b..20cc7823 100644 --- a/parser/include/catalog/pg_ts_config_d.h +++ b/parser/include/catalog/pg_ts_config_d.h @@ -3,7 +3,7 @@ * pg_ts_config_d.h * Macro definitions for pg_ts_config * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_ts_dict.h b/parser/include/catalog/pg_ts_dict.h index 4b6188f4..476325f0 100644 --- a/parser/include/catalog/pg_ts_dict.h +++ b/parser/include/catalog/pg_ts_dict.h @@ -4,7 +4,7 @@ * definition of the "text search dictionary" system catalog (pg_ts_dict) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_ts_dict.h diff --git a/parser/include/catalog/pg_ts_dict_d.h b/parser/include/catalog/pg_ts_dict_d.h index 34614093..c504853d 100644 --- a/parser/include/catalog/pg_ts_dict_d.h +++ b/parser/include/catalog/pg_ts_dict_d.h @@ -3,7 +3,7 @@ * pg_ts_dict_d.h * Macro definitions for pg_ts_dict * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_ts_parser.h b/parser/include/catalog/pg_ts_parser.h index c2d474dc..283de252 100644 --- a/parser/include/catalog/pg_ts_parser.h +++ b/parser/include/catalog/pg_ts_parser.h @@ -4,7 +4,7 @@ * definition of the "text search parser" system catalog (pg_ts_parser) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_ts_parser.h diff --git a/parser/include/catalog/pg_ts_parser_d.h b/parser/include/catalog/pg_ts_parser_d.h index 64032e86..ff7d4638 100644 --- a/parser/include/catalog/pg_ts_parser_d.h +++ b/parser/include/catalog/pg_ts_parser_d.h @@ -3,7 +3,7 @@ * pg_ts_parser_d.h * Macro definitions for pg_ts_parser * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_ts_template.h b/parser/include/catalog/pg_ts_template.h index 2a553fef..f4e510c8 100644 --- a/parser/include/catalog/pg_ts_template.h +++ b/parser/include/catalog/pg_ts_template.h @@ -4,7 +4,7 @@ * definition of the "text search template" system catalog (pg_ts_template) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_ts_template.h diff --git a/parser/include/catalog/pg_ts_template_d.h b/parser/include/catalog/pg_ts_template_d.h index cac7d9bb..e32b88a6 100644 --- a/parser/include/catalog/pg_ts_template_d.h +++ b/parser/include/catalog/pg_ts_template_d.h @@ -3,7 +3,7 @@ * pg_ts_template_d.h * Macro definitions for pg_ts_template * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/pg_type.h b/parser/include/catalog/pg_type.h index 48a25591..519e570c 100644 --- a/parser/include/catalog/pg_type.h +++ b/parser/include/catalog/pg_type.h @@ -4,7 +4,7 @@ * definition of the "type" system catalog (pg_type) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/pg_type.h diff --git a/parser/include/catalog/pg_type_d.h b/parser/include/catalog/pg_type_d.h index 3877e0b7..d0f8d034 100644 --- a/parser/include/catalog/pg_type_d.h +++ b/parser/include/catalog/pg_type_d.h @@ -3,7 +3,7 @@ * pg_type_d.h * Macro definitions for pg_type * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/catalog/storage.h b/parser/include/catalog/storage.h index 59f3404a..45a3c783 100644 --- a/parser/include/catalog/storage.h +++ b/parser/include/catalog/storage.h @@ -4,7 +4,7 @@ * prototypes for functions in backend/catalog/storage.c * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/catalog/storage.h @@ -15,23 +15,23 @@ #define STORAGE_H #include "storage/block.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" #include "storage/smgr.h" #include "utils/relcache.h" /* GUC variables */ extern PGDLLIMPORT int wal_skip_threshold; -extern SMgrRelation RelationCreateStorage(RelFileNode rnode, +extern SMgrRelation RelationCreateStorage(RelFileLocator rlocator, char relpersistence, bool register_delete); extern void RelationDropStorage(Relation rel); -extern void RelationPreserveStorage(RelFileNode rnode, bool atCommit); +extern void RelationPreserveStorage(RelFileLocator rlocator, bool atCommit); extern void RelationPreTruncate(Relation rel); extern void RelationTruncate(Relation rel, BlockNumber nblocks); extern void RelationCopyStorage(SMgrRelation src, SMgrRelation dst, ForkNumber forkNum, char relpersistence); -extern bool RelFileNodeSkippingWAL(RelFileNode rnode); +extern bool RelFileLocatorSkippingWAL(RelFileLocator rlocator); extern Size EstimatePendingSyncsSpace(void); extern void SerializePendingSyncs(Size maxSize, char *startAddress); extern void RestorePendingSyncs(char *startAddress); @@ -42,7 +42,7 @@ extern void RestorePendingSyncs(char *startAddress); */ extern void smgrDoPendingDeletes(bool isCommit); extern void smgrDoPendingSyncs(bool isCommit, bool isParallelWorker); -extern int smgrGetPendingDeletes(bool forCommit, RelFileNode **ptr); +extern int smgrGetPendingDeletes(bool forCommit, RelFileLocator **ptr); extern void AtSubCommit_smgr(void); extern void AtSubAbort_smgr(void); extern void PostPrepare_smgr(void); diff --git a/parser/include/commands/async.h b/parser/include/commands/async.h index 926af933..02da6ba7 100644 --- a/parser/include/commands/async.h +++ b/parser/include/commands/async.h @@ -3,7 +3,7 @@ * async.h * Asynchronous notification: NOTIFY, LISTEN, UNLISTEN * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/commands/async.h diff --git a/parser/include/commands/dbcommands.h b/parser/include/commands/dbcommands.h index c4947fa7..5fbc3ca7 100644 --- a/parser/include/commands/dbcommands.h +++ b/parser/include/commands/dbcommands.h @@ -4,7 +4,7 @@ * Database management commands (create/drop database). * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/commands/dbcommands.h @@ -30,6 +30,7 @@ extern ObjectAddress AlterDatabaseOwner(const char *dbname, Oid newOwnerId); extern Oid get_database_oid(const char *dbname, bool missing_ok); extern char *get_database_name(Oid dbid); +extern bool have_createdb_privilege(void); extern void check_encoding_locale_matches(int encoding, const char *collate, const char *ctype); diff --git a/parser/include/commands/defrem.h b/parser/include/commands/defrem.h index 1d3ce246..478203ed 100644 --- a/parser/include/commands/defrem.h +++ b/parser/include/commands/defrem.h @@ -4,7 +4,7 @@ * POSTGRES define and remove utility definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/commands/defrem.h @@ -29,6 +29,7 @@ extern ObjectAddress DefineIndex(Oid relationId, Oid indexRelationId, Oid parentIndexId, Oid parentConstraintId, + int total_parts, bool is_alter_table, bool check_rights, bool check_not_in_use, diff --git a/parser/include/commands/event_trigger.h b/parser/include/commands/event_trigger.h index 10091c3a..5ed6ece5 100644 --- a/parser/include/commands/event_trigger.h +++ b/parser/include/commands/event_trigger.h @@ -3,7 +3,7 @@ * event_trigger.h * Declarations for command trigger handling. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/commands/event_trigger.h diff --git a/parser/include/commands/explain.h b/parser/include/commands/explain.h index 666977fb..3d3e632a 100644 --- a/parser/include/commands/explain.h +++ b/parser/include/commands/explain.h @@ -3,7 +3,7 @@ * explain.h * prototypes for explain.c * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994-5, Regents of the University of California * * src/include/commands/explain.h @@ -46,6 +46,7 @@ typedef struct ExplainState bool timing; /* print detailed node timing */ bool summary; /* print total planning and execution timing */ bool settings; /* print modified settings */ + bool generic; /* generate a generic plan */ ExplainFormat format; /* output format */ /* state for output formatting --- not reset for each new plan tree */ int indent; /* current indentation level */ @@ -99,6 +100,7 @@ extern void ExplainPrintTriggers(ExplainState *es, QueryDesc *queryDesc); extern void ExplainPrintJITSummary(ExplainState *es, QueryDesc *queryDesc); extern void ExplainQueryText(ExplainState *es, QueryDesc *queryDesc); +extern void ExplainQueryParameters(ExplainState *es, ParamListInfo params, int maxlen); extern void ExplainBeginOutput(ExplainState *es); extern void ExplainEndOutput(ExplainState *es); diff --git a/parser/include/commands/prepare.h b/parser/include/commands/prepare.h index e30df8f7..79f16156 100644 --- a/parser/include/commands/prepare.h +++ b/parser/include/commands/prepare.h @@ -4,7 +4,7 @@ * PREPARE, EXECUTE and DEALLOCATE commands, and prepared-stmt storage * * - * Copyright (c) 2002-2022, PostgreSQL Global Development Group + * Copyright (c) 2002-2023, PostgreSQL Global Development Group * * src/include/commands/prepare.h * diff --git a/parser/include/commands/tablespace.h b/parser/include/commands/tablespace.h index 24b64733..f1961c18 100644 --- a/parser/include/commands/tablespace.h +++ b/parser/include/commands/tablespace.h @@ -4,7 +4,7 @@ * Tablespace management commands (create/drop tablespace). * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/commands/tablespace.h @@ -50,7 +50,7 @@ extern void DropTableSpace(DropTableSpaceStmt *stmt); extern ObjectAddress RenameTableSpace(const char *oldname, const char *newname); extern Oid AlterTableSpaceOptions(AlterTableSpaceOptionsStmt *stmt); -extern void TablespaceCreateDbspace(Oid spcNode, Oid dbNode, bool isRedo); +extern void TablespaceCreateDbspace(Oid spcOid, Oid dbOid, bool isRedo); extern Oid GetDefaultTablespace(char relpersistence, bool partitioned); @@ -62,8 +62,8 @@ extern char *get_tablespace_name(Oid spc_oid); extern bool directory_is_empty(const char *path); extern void remove_tablespace_symlink(const char *linkloc); -extern void tblspc_redo(XLogReaderState *rptr); -extern void tblspc_desc(StringInfo buf, XLogReaderState *rptr); +extern void tblspc_redo(XLogReaderState *record); +extern void tblspc_desc(StringInfo buf, XLogReaderState *record); extern const char *tblspc_identify(uint8 info); #endif /* TABLESPACE_H */ diff --git a/parser/include/commands/trigger.h b/parser/include/commands/trigger.h index 03774388..430e3ca7 100644 --- a/parser/include/commands/trigger.h +++ b/parser/include/commands/trigger.h @@ -3,7 +3,7 @@ * trigger.h * Declarations for trigger handling. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/commands/trigger.h @@ -166,15 +166,13 @@ extern void TriggerSetParentTrigger(Relation trigRel, Oid parentTrigId, Oid childTableId); extern void RemoveTriggerById(Oid trigOid); -extern Oid get_trigger_oid(Oid relid, const char *name, bool missing_ok); +extern Oid get_trigger_oid(Oid relid, const char *trigname, bool missing_ok); extern ObjectAddress renametrig(RenameStmt *stmt); -extern void EnableDisableTriggerNew(Relation rel, const char *tgname, - char fires_when, bool skip_system, bool recurse, - LOCKMODE lockmode); -extern void EnableDisableTrigger(Relation rel, const char *tgname, - char fires_when, bool skip_system, LOCKMODE lockmode); +extern void EnableDisableTrigger(Relation rel, const char *tgname, Oid tgparent, + char fires_when, bool skip_system, bool recurse, + LOCKMODE lockmode); extern void RelationBuildTriggers(Relation relation); @@ -213,7 +211,9 @@ extern bool ExecBRDeleteTriggers(EState *estate, ResultRelInfo *relinfo, ItemPointer tupleid, HeapTuple fdw_trigtuple, - TupleTableSlot **epqslot); + TupleTableSlot **epqslot, + TM_Result *tmresult, + TM_FailureData *tmfd); extern void ExecARDeleteTriggers(EState *estate, ResultRelInfo *relinfo, ItemPointer tupleid, @@ -233,22 +233,23 @@ extern bool ExecBRUpdateTriggers(EState *estate, ResultRelInfo *relinfo, ItemPointer tupleid, HeapTuple fdw_trigtuple, - TupleTableSlot *slot, - TM_FailureData *tmfdp); + TupleTableSlot *newslot, + TM_Result *tmresult, + TM_FailureData *tmfd); extern void ExecARUpdateTriggers(EState *estate, ResultRelInfo *relinfo, ResultRelInfo *src_partinfo, ResultRelInfo *dst_partinfo, ItemPointer tupleid, HeapTuple fdw_trigtuple, - TupleTableSlot *slot, + TupleTableSlot *newslot, List *recheckIndexes, TransitionCaptureState *transition_capture, bool is_crosspart_update); extern bool ExecIRUpdateTriggers(EState *estate, ResultRelInfo *relinfo, HeapTuple trigtuple, - TupleTableSlot *slot); + TupleTableSlot *newslot); extern void ExecBSTruncateTriggers(EState *estate, ResultRelInfo *relinfo); extern void ExecASTruncateTriggers(EState *estate, @@ -269,9 +270,9 @@ extern bool AfterTriggerPendingOnRel(Oid relid); * in utils/adt/ri_triggers.c */ extern bool RI_FKey_pk_upd_check_required(Trigger *trigger, Relation pk_rel, - TupleTableSlot *old_slot, TupleTableSlot *new_slot); + TupleTableSlot *oldslot, TupleTableSlot *newslot); extern bool RI_FKey_fk_upd_check_required(Trigger *trigger, Relation fk_rel, - TupleTableSlot *old_slot, TupleTableSlot *new_slot); + TupleTableSlot *oldslot, TupleTableSlot *newslot); extern bool RI_Initial_Check(Trigger *trigger, Relation fk_rel, Relation pk_rel); extern void RI_PartitionRemove_Check(Trigger *trigger, Relation fk_rel, diff --git a/parser/include/commands/user.h b/parser/include/commands/user.h index d3dd8303..97dcb937 100644 --- a/parser/include/commands/user.h +++ b/parser/include/commands/user.h @@ -15,9 +15,11 @@ #include "libpq/crypt.h" #include "nodes/parsenodes.h" #include "parser/parse_node.h" +#include "utils/guc.h" -/* GUC. Is actually of type PasswordType. */ -extern PGDLLIMPORT int Password_encryption; +/* GUCs */ +extern PGDLLIMPORT int Password_encryption; /* values from enum PasswordType */ +extern PGDLLIMPORT char *createrole_self_grant; /* Hook to check passwords in CreateRole() and AlterRole() */ typedef void (*check_password_hook_type) (const char *username, const char *shadow_pass, PasswordType password_type, Datum validuntil_time, bool validuntil_null); @@ -28,10 +30,14 @@ extern Oid CreateRole(ParseState *pstate, CreateRoleStmt *stmt); extern Oid AlterRole(ParseState *pstate, AlterRoleStmt *stmt); extern Oid AlterRoleSet(AlterRoleSetStmt *stmt); extern void DropRole(DropRoleStmt *stmt); -extern void GrantRole(GrantRoleStmt *stmt); +extern void GrantRole(ParseState *pstate, GrantRoleStmt *stmt); extern ObjectAddress RenameRole(const char *oldname, const char *newname); extern void DropOwnedObjects(DropOwnedStmt *stmt); extern void ReassignOwnedObjects(ReassignOwnedStmt *stmt); extern List *roleSpecsToIds(List *memberNames); +extern bool check_createrole_self_grant(char **newval, void **extra, + GucSource source); +extern void assign_createrole_self_grant(const char *newval, void *extra); + #endif /* USER_H */ diff --git a/parser/include/commands/vacuum.h b/parser/include/commands/vacuum.h index f38e1148..39fbd5f1 100644 --- a/parser/include/commands/vacuum.h +++ b/parser/include/commands/vacuum.h @@ -4,7 +4,7 @@ * header file for postgres vacuum cleaner and statistics analyzer * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/commands/vacuum.h @@ -186,8 +186,11 @@ typedef struct VacAttrStats #define VACOPT_FREEZE 0x08 /* FREEZE option */ #define VACOPT_FULL 0x10 /* FULL (non-concurrent) vacuum */ #define VACOPT_SKIP_LOCKED 0x20 /* skip if cannot get lock */ -#define VACOPT_PROCESS_TOAST 0x40 /* process the TOAST table, if any */ -#define VACOPT_DISABLE_PAGE_SKIPPING 0x80 /* don't skip any pages */ +#define VACOPT_PROCESS_MAIN 0x40 /* process main relation */ +#define VACOPT_PROCESS_TOAST 0x80 /* process the TOAST table, if any */ +#define VACOPT_DISABLE_PAGE_SKIPPING 0x100 /* don't skip any pages */ +#define VACOPT_SKIP_DATABASE_STATS 0x200 /* skip vac_update_datfrozenxid() */ +#define VACOPT_ONLY_DATABASE_STATS 0x400 /* only vac_update_datfrozenxid() */ /* * Values used by index_cleanup and truncate params. @@ -210,6 +213,9 @@ typedef enum VacOptValue * * Note that at least one of VACOPT_VACUUM and VACOPT_ANALYZE must be set * in options. + * + * When adding a new VacuumParam member, consider adding it to vacuumdb as + * well. */ typedef struct VacuumParams { @@ -235,6 +241,45 @@ typedef struct VacuumParams int nworkers; } VacuumParams; +/* + * VacuumCutoffs is immutable state that describes the cutoffs used by VACUUM. + * Established at the beginning of each VACUUM operation. + */ +struct VacuumCutoffs +{ + /* + * Existing pg_class fields at start of VACUUM + */ + TransactionId relfrozenxid; + MultiXactId relminmxid; + + /* + * OldestXmin is the Xid below which tuples deleted by any xact (that + * committed) should be considered DEAD, not just RECENTLY_DEAD. + * + * OldestMxact is the Mxid below which MultiXacts are definitely not seen + * as visible by any running transaction. + * + * OldestXmin and OldestMxact are also the most recent values that can + * ever be passed to vac_update_relstats() as frozenxid and minmulti + * arguments at the end of VACUUM. These same values should be passed + * when it turns out that VACUUM will leave no unfrozen XIDs/MXIDs behind + * in the table. + */ + TransactionId OldestXmin; + MultiXactId OldestMxact; + + /* + * FreezeLimit is the Xid below which all Xids are definitely frozen or + * removed in pages VACUUM scans and cleanup locks. + * + * MultiXactCutoff is the value below which all MultiXactIds are + * definitely removed from Xmax in pages VACUUM scans and cleanup locks. + */ + TransactionId FreezeLimit; + MultiXactId MultiXactCutoff; +}; + /* * VacDeadItems stores TIDs whose index tuples are deleted by index vacuuming. */ @@ -264,11 +309,15 @@ extern PGDLLIMPORT pg_atomic_uint32 *VacuumSharedCostBalance; extern PGDLLIMPORT pg_atomic_uint32 *VacuumActiveNWorkers; extern PGDLLIMPORT int VacuumCostBalanceLocal; +extern PGDLLIMPORT bool VacuumFailsafeActive; +extern PGDLLIMPORT double vacuum_cost_delay; +extern PGDLLIMPORT int vacuum_cost_limit; /* in commands/vacuum.c */ extern void ExecVacuum(ParseState *pstate, VacuumStmt *vacstmt, bool isTopLevel); extern void vacuum(List *relations, VacuumParams *params, - BufferAccessStrategy bstrategy, bool isTopLevel); + BufferAccessStrategy bstrategy, MemoryContext vac_context, + bool isTopLevel); extern void vac_open_indexes(Relation relation, LOCKMODE lockmode, int *nindexes, Relation **Irel); extern void vac_close_indexes(int nindexes, Relation *Irel, LOCKMODE lockmode); @@ -286,16 +335,9 @@ extern void vac_update_relstats(Relation relation, bool *frozenxid_updated, bool *minmulti_updated, bool in_outer_xact); -extern bool vacuum_set_xid_limits(Relation rel, - int freeze_min_age, int freeze_table_age, - int multixact_freeze_min_age, - int multixact_freeze_table_age, - TransactionId *oldestXmin, - MultiXactId *oldestMxact, - TransactionId *freezeLimit, - MultiXactId *multiXactCutoff); -extern bool vacuum_xid_failsafe_check(TransactionId relfrozenxid, - MultiXactId relminmxid); +extern bool vacuum_get_cutoffs(Relation rel, const VacuumParams *params, + struct VacuumCutoffs *cutoffs); +extern bool vacuum_xid_failsafe_check(const struct VacuumCutoffs *cutoffs); extern void vac_update_datfrozenxid(void); extern void vacuum_delay_point(void); extern bool vacuum_is_relation_owner(Oid relid, Form_pg_class reltuple, @@ -310,6 +352,10 @@ extern IndexBulkDeleteResult *vac_cleanup_one_index(IndexVacuumInfo *ivinfo, IndexBulkDeleteResult *istat); extern Size vac_max_items_to_alloc_size(int max_items); +/* In postmaster/autovacuum.c */ +extern void AutoVacuumUpdateCostLimit(void); +extern void VacuumUpdateCosts(void); + /* in commands/vacuumparallel.c */ extern ParallelVacuumState *parallel_vacuum_init(Relation rel, Relation *indrels, int nindexes, int nrequested_workers, diff --git a/parser/include/commands/variable.h b/parser/include/commands/variable.h deleted file mode 100644 index 0e5ddcbc..00000000 --- a/parser/include/commands/variable.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - * variable.h - * Routines for handling specialized SET variables. - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * src/include/commands/variable.h - */ -#ifndef VARIABLE_H -#define VARIABLE_H - -#include "utils/guc.h" - - -extern bool check_datestyle(char **newval, void **extra, GucSource source); -extern void assign_datestyle(const char *newval, void *extra); -extern bool check_timezone(char **newval, void **extra, GucSource source); -extern void assign_timezone(const char *newval, void *extra); -extern const char *show_timezone(void); -extern bool check_log_timezone(char **newval, void **extra, GucSource source); -extern void assign_log_timezone(const char *newval, void *extra); -extern const char *show_log_timezone(void); -extern bool check_transaction_read_only(bool *newval, void **extra, GucSource source); -extern bool check_XactIsoLevel(int *newval, void **extra, GucSource source); -extern bool check_transaction_deferrable(bool *newval, void **extra, GucSource source); -extern bool check_random_seed(double *newval, void **extra, GucSource source); -extern void assign_random_seed(double newval, void *extra); -extern const char *show_random_seed(void); -extern bool check_client_encoding(char **newval, void **extra, GucSource source); -extern void assign_client_encoding(const char *newval, void *extra); -extern bool check_session_authorization(char **newval, void **extra, GucSource source); -extern void assign_session_authorization(const char *newval, void *extra); -extern bool check_role(char **newval, void **extra, GucSource source); -extern void assign_role(const char *newval, void *extra); -extern const char *show_role(void); - -#endif /* VARIABLE_H */ diff --git a/parser/include/common/cryptohash.h b/parser/include/common/cryptohash.h new file mode 100644 index 00000000..24b6dbeb --- /dev/null +++ b/parser/include/common/cryptohash.h @@ -0,0 +1,39 @@ +/*------------------------------------------------------------------------- + * + * cryptohash.h + * Generic headers for cryptographic hash functions. + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * IDENTIFICATION + * src/include/common/cryptohash.h + * + *------------------------------------------------------------------------- + */ + +#ifndef PG_CRYPTOHASH_H +#define PG_CRYPTOHASH_H + +/* Context Structures for each hash function */ +typedef enum +{ + PG_MD5 = 0, + PG_SHA1, + PG_SHA224, + PG_SHA256, + PG_SHA384, + PG_SHA512 +} pg_cryptohash_type; + +/* opaque context, private to each cryptohash implementation */ +typedef struct pg_cryptohash_ctx pg_cryptohash_ctx; + +extern pg_cryptohash_ctx *pg_cryptohash_create(pg_cryptohash_type type); +extern int pg_cryptohash_init(pg_cryptohash_ctx *ctx); +extern int pg_cryptohash_update(pg_cryptohash_ctx *ctx, const uint8 *data, size_t len); +extern int pg_cryptohash_final(pg_cryptohash_ctx *ctx, uint8 *dest, size_t len); +extern void pg_cryptohash_free(pg_cryptohash_ctx *ctx); +extern const char *pg_cryptohash_error(pg_cryptohash_ctx *ctx); + +#endif /* PG_CRYPTOHASH_H */ diff --git a/parser/include/common/file_perm.h b/parser/include/common/file_perm.h index 48d68ef2..978c0d07 100644 --- a/parser/include/common/file_perm.h +++ b/parser/include/common/file_perm.h @@ -3,7 +3,7 @@ * File and directory permission definitions * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/common/file_perm.h diff --git a/parser/include/common/hashfn.h b/parser/include/common/hashfn.h index 8d539c0a..5e89aef9 100644 --- a/parser/include/common/hashfn.h +++ b/parser/include/common/hashfn.h @@ -1,7 +1,7 @@ /* * Utilities for working with hash values. * - * Portions Copyright (c) 2017-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2017-2023, PostgreSQL Global Development Group */ #ifndef HASHFN_H diff --git a/parser/include/common/int.h b/parser/include/common/int.h new file mode 100644 index 00000000..45080089 --- /dev/null +++ b/parser/include/common/int.h @@ -0,0 +1,437 @@ +/*------------------------------------------------------------------------- + * + * int.h + * Routines to perform integer math, while checking for overflows. + * + * The routines in this file are intended to be well defined C, without + * relying on compiler flags like -fwrapv. + * + * To reduce the overhead of these routines try to use compiler intrinsics + * where available. That's not that important for the 16, 32 bit cases, but + * the 64 bit cases can be considerably faster with intrinsics. In case no + * intrinsics are available 128 bit math is used where available. + * + * Copyright (c) 2017-2023, PostgreSQL Global Development Group + * + * src/include/common/int.h + * + *------------------------------------------------------------------------- + */ +#ifndef COMMON_INT_H +#define COMMON_INT_H + + +/*--------- + * The following guidelines apply to all the routines: + * - If a + b overflows, return true, otherwise store the result of a + b + * into *result. The content of *result is implementation defined in case of + * overflow. + * - If a - b overflows, return true, otherwise store the result of a - b + * into *result. The content of *result is implementation defined in case of + * overflow. + * - If a * b overflows, return true, otherwise store the result of a * b + * into *result. The content of *result is implementation defined in case of + * overflow. + *--------- + */ + +/*------------------------------------------------------------------------ + * Overflow routines for signed integers + *------------------------------------------------------------------------ + */ + +/* + * INT16 + */ +static inline bool +pg_add_s16_overflow(int16 a, int16 b, int16 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_add_overflow(a, b, result); +#else + int32 res = (int32) a + (int32) b; + + if (res > PG_INT16_MAX || res < PG_INT16_MIN) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (int16) res; + return false; +#endif +} + +static inline bool +pg_sub_s16_overflow(int16 a, int16 b, int16 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_sub_overflow(a, b, result); +#else + int32 res = (int32) a - (int32) b; + + if (res > PG_INT16_MAX || res < PG_INT16_MIN) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (int16) res; + return false; +#endif +} + +static inline bool +pg_mul_s16_overflow(int16 a, int16 b, int16 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_mul_overflow(a, b, result); +#else + int32 res = (int32) a * (int32) b; + + if (res > PG_INT16_MAX || res < PG_INT16_MIN) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (int16) res; + return false; +#endif +} + +/* + * INT32 + */ +static inline bool +pg_add_s32_overflow(int32 a, int32 b, int32 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_add_overflow(a, b, result); +#else + int64 res = (int64) a + (int64) b; + + if (res > PG_INT32_MAX || res < PG_INT32_MIN) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (int32) res; + return false; +#endif +} + +static inline bool +pg_sub_s32_overflow(int32 a, int32 b, int32 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_sub_overflow(a, b, result); +#else + int64 res = (int64) a - (int64) b; + + if (res > PG_INT32_MAX || res < PG_INT32_MIN) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (int32) res; + return false; +#endif +} + +static inline bool +pg_mul_s32_overflow(int32 a, int32 b, int32 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_mul_overflow(a, b, result); +#else + int64 res = (int64) a * (int64) b; + + if (res > PG_INT32_MAX || res < PG_INT32_MIN) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (int32) res; + return false; +#endif +} + +/* + * INT64 + */ +static inline bool +pg_add_s64_overflow(int64 a, int64 b, int64 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_add_overflow(a, b, result); +#elif defined(HAVE_INT128) + int128 res = (int128) a + (int128) b; + + if (res > PG_INT64_MAX || res < PG_INT64_MIN) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (int64) res; + return false; +#else + if ((a > 0 && b > 0 && a > PG_INT64_MAX - b) || + (a < 0 && b < 0 && a < PG_INT64_MIN - b)) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = a + b; + return false; +#endif +} + +static inline bool +pg_sub_s64_overflow(int64 a, int64 b, int64 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_sub_overflow(a, b, result); +#elif defined(HAVE_INT128) + int128 res = (int128) a - (int128) b; + + if (res > PG_INT64_MAX || res < PG_INT64_MIN) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (int64) res; + return false; +#else + if ((a < 0 && b > 0 && a < PG_INT64_MIN + b) || + (a > 0 && b < 0 && a > PG_INT64_MAX + b)) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = a - b; + return false; +#endif +} + +static inline bool +pg_mul_s64_overflow(int64 a, int64 b, int64 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_mul_overflow(a, b, result); +#elif defined(HAVE_INT128) + int128 res = (int128) a * (int128) b; + + if (res > PG_INT64_MAX || res < PG_INT64_MIN) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (int64) res; + return false; +#else + /* + * Overflow can only happen if at least one value is outside the range + * sqrt(min)..sqrt(max) so check that first as the division can be quite a + * bit more expensive than the multiplication. + * + * Multiplying by 0 or 1 can't overflow of course and checking for 0 + * separately avoids any risk of dividing by 0. Be careful about dividing + * INT_MIN by -1 also, note reversing the a and b to ensure we're always + * dividing it by a positive value. + * + */ + if ((a > PG_INT32_MAX || a < PG_INT32_MIN || + b > PG_INT32_MAX || b < PG_INT32_MIN) && + a != 0 && a != 1 && b != 0 && b != 1 && + ((a > 0 && b > 0 && a > PG_INT64_MAX / b) || + (a > 0 && b < 0 && b < PG_INT64_MIN / a) || + (a < 0 && b > 0 && a < PG_INT64_MIN / b) || + (a < 0 && b < 0 && a < PG_INT64_MAX / b))) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = a * b; + return false; +#endif +} + +/*------------------------------------------------------------------------ + * Overflow routines for unsigned integers + *------------------------------------------------------------------------ + */ + +/* + * UINT16 + */ +static inline bool +pg_add_u16_overflow(uint16 a, uint16 b, uint16 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_add_overflow(a, b, result); +#else + uint16 res = a + b; + + if (res < a) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = res; + return false; +#endif +} + +static inline bool +pg_sub_u16_overflow(uint16 a, uint16 b, uint16 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_sub_overflow(a, b, result); +#else + if (b > a) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = a - b; + return false; +#endif +} + +static inline bool +pg_mul_u16_overflow(uint16 a, uint16 b, uint16 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_mul_overflow(a, b, result); +#else + uint32 res = (uint32) a * (uint32) b; + + if (res > PG_UINT16_MAX) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (uint16) res; + return false; +#endif +} + +/* + * INT32 + */ +static inline bool +pg_add_u32_overflow(uint32 a, uint32 b, uint32 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_add_overflow(a, b, result); +#else + uint32 res = a + b; + + if (res < a) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = res; + return false; +#endif +} + +static inline bool +pg_sub_u32_overflow(uint32 a, uint32 b, uint32 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_sub_overflow(a, b, result); +#else + if (b > a) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = a - b; + return false; +#endif +} + +static inline bool +pg_mul_u32_overflow(uint32 a, uint32 b, uint32 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_mul_overflow(a, b, result); +#else + uint64 res = (uint64) a * (uint64) b; + + if (res > PG_UINT32_MAX) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (uint32) res; + return false; +#endif +} + +/* + * UINT64 + */ +static inline bool +pg_add_u64_overflow(uint64 a, uint64 b, uint64 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_add_overflow(a, b, result); +#else + uint64 res = a + b; + + if (res < a) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = res; + return false; +#endif +} + +static inline bool +pg_sub_u64_overflow(uint64 a, uint64 b, uint64 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_sub_overflow(a, b, result); +#else + if (b > a) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = a - b; + return false; +#endif +} + +static inline bool +pg_mul_u64_overflow(uint64 a, uint64 b, uint64 *result) +{ +#if defined(HAVE__BUILTIN_OP_OVERFLOW) + return __builtin_mul_overflow(a, b, result); +#elif defined(HAVE_INT128) + uint128 res = (uint128) a * (uint128) b; + + if (res > PG_UINT64_MAX) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = (uint64) res; + return false; +#else + uint64 res = a * b; + + if (a != 0 && b != res / a) + { + *result = 0x5EED; /* to avoid spurious warnings */ + return true; + } + *result = res; + return false; +#endif +} + +#endif /* COMMON_INT_H */ diff --git a/parser/include/common/ip.h b/parser/include/common/ip.h index 84145209..9f2ed5fe 100644 --- a/parser/include/common/ip.h +++ b/parser/include/common/ip.h @@ -5,7 +5,7 @@ * * These definitions are used by both frontend and backend code. * - * Copyright (c) 2003-2022, PostgreSQL Global Development Group + * Copyright (c) 2003-2023, PostgreSQL Global Development Group * * src/include/common/ip.h * @@ -14,7 +14,9 @@ #ifndef IP_H #define IP_H -#include "getaddrinfo.h" /* pgrminclude ignore */ +#include +#include + #include "libpq/pqcomm.h" /* pgrminclude ignore */ diff --git a/parser/include/common/keywords.h b/parser/include/common/keywords.h index b85237f9..6bb12d8e 100644 --- a/parser/include/common/keywords.h +++ b/parser/include/common/keywords.h @@ -4,7 +4,7 @@ * PostgreSQL's list of SQL keywords * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/common/keywords.h diff --git a/parser/include/common/kwlookup.h b/parser/include/common/kwlookup.h index 48d7f08b..3fc3faa0 100644 --- a/parser/include/common/kwlookup.h +++ b/parser/include/common/kwlookup.h @@ -4,7 +4,7 @@ * Key word lookup for PostgreSQL * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/common/kwlookup.h @@ -32,7 +32,7 @@ typedef struct ScanKeywordList } ScanKeywordList; -extern int ScanKeywordLookup(const char *text, const ScanKeywordList *keywords); +extern int ScanKeywordLookup(const char *str, const ScanKeywordList *keywords); /* Code that wants to retrieve the text of the N'th keyword should use this. */ static inline const char * diff --git a/parser/include/common/pg_prng.h b/parser/include/common/pg_prng.h index 4be9a83e..b5c0b8d2 100644 --- a/parser/include/common/pg_prng.h +++ b/parser/include/common/pg_prng.h @@ -2,7 +2,7 @@ * * Pseudo-Random Number Generator * - * Copyright (c) 2021-2022, PostgreSQL Global Development Group + * Copyright (c) 2021-2023, PostgreSQL Global Development Group * * src/include/common/pg_prng.h * @@ -26,7 +26,7 @@ typedef struct pg_prng_state * Callers not needing local PRNG series may use this global state vector, * after initializing it with one of the pg_prng_...seed functions. */ -extern PGDLLIMPORT __thread pg_prng_state pg_global_prng_state; +extern PGDLLIMPORT pg_prng_state pg_global_prng_state; extern void pg_prng_seed(pg_prng_state *state, uint64 seed); extern void pg_prng_fseed(pg_prng_state *state, double fseed); @@ -55,6 +55,7 @@ extern uint32 pg_prng_uint32(pg_prng_state *state); extern int32 pg_prng_int32(pg_prng_state *state); extern int32 pg_prng_int32p(pg_prng_state *state); extern double pg_prng_double(pg_prng_state *state); +extern double pg_prng_double_normal(pg_prng_state *state); extern bool pg_prng_bool(pg_prng_state *state); #endif /* PG_PRNG_H */ diff --git a/parser/include/common/relpath.h b/parser/include/common/relpath.h index 13849a37..511c2168 100644 --- a/parser/include/common/relpath.h +++ b/parser/include/common/relpath.h @@ -3,7 +3,7 @@ * relpath.h * Declarations for GetRelationPath() and friends * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/common/relpath.h @@ -19,6 +19,13 @@ */ #include "catalog/catversion.h" /* pgrminclude ignore */ +/* + * RelFileNumber data type identifies the specific relation file name. + */ +typedef Oid RelFileNumber; +#define InvalidRelFileNumber ((RelFileNumber) InvalidOid) +#define RelFileNumberIsValid(relnumber) \ + ((bool) ((relnumber) != InvalidRelFileNumber)) /* * Name of major-version-specific tablespace subdirectories @@ -64,27 +71,27 @@ extern int forkname_chars(const char *str, ForkNumber *fork); /* * Stuff for computing filesystem pathnames for relations. */ -extern char *GetDatabasePath(Oid dbNode, Oid spcNode); +extern char *GetDatabasePath(Oid dbOid, Oid spcOid); -extern char *GetRelationPath(Oid dbNode, Oid spcNode, Oid relNode, +extern char *GetRelationPath(Oid dbOid, Oid spcOid, RelFileNumber relNumber, int backendId, ForkNumber forkNumber); /* * Wrapper macros for GetRelationPath. Beware of multiple - * evaluation of the RelFileNode or RelFileNodeBackend argument! + * evaluation of the RelFileLocator or RelFileLocatorBackend argument! */ -/* First argument is a RelFileNode */ -#define relpathbackend(rnode, backend, forknum) \ - GetRelationPath((rnode).dbNode, (rnode).spcNode, (rnode).relNode, \ +/* First argument is a RelFileLocator */ +#define relpathbackend(rlocator, backend, forknum) \ + GetRelationPath((rlocator).dbOid, (rlocator).spcOid, (rlocator).relNumber, \ backend, forknum) -/* First argument is a RelFileNode */ -#define relpathperm(rnode, forknum) \ - relpathbackend(rnode, InvalidBackendId, forknum) +/* First argument is a RelFileLocator */ +#define relpathperm(rlocator, forknum) \ + relpathbackend(rlocator, InvalidBackendId, forknum) -/* First argument is a RelFileNodeBackend */ -#define relpath(rnode, forknum) \ - relpathbackend((rnode).node, (rnode).backend, forknum) +/* First argument is a RelFileLocatorBackend */ +#define relpath(rlocator, forknum) \ + relpathbackend((rlocator).locator, (rlocator).backend, forknum) #endif /* RELPATH_H */ diff --git a/parser/include/common/scram-common.h b/parser/include/common/scram-common.h new file mode 100644 index 00000000..5ccff96e --- /dev/null +++ b/parser/include/common/scram-common.h @@ -0,0 +1,70 @@ +/*------------------------------------------------------------------------- + * + * scram-common.h + * Declarations for helper functions used for SCRAM authentication + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/common/scram-common.h + * + *------------------------------------------------------------------------- + */ +#ifndef SCRAM_COMMON_H +#define SCRAM_COMMON_H + +#include "common/cryptohash.h" +#include "common/sha2.h" + +/* Name of SCRAM mechanisms per IANA */ +#define SCRAM_SHA_256_NAME "SCRAM-SHA-256" +#define SCRAM_SHA_256_PLUS_NAME "SCRAM-SHA-256-PLUS" /* with channel binding */ + +/* Length of SCRAM keys (client and server) */ +#define SCRAM_SHA_256_KEY_LEN PG_SHA256_DIGEST_LENGTH + +/* + * Size of buffers used internally by SCRAM routines, that should be the + * maximum of SCRAM_SHA_*_KEY_LEN among the hash methods supported. + */ +#define SCRAM_MAX_KEY_LEN SCRAM_SHA_256_KEY_LEN + +/* + * Size of random nonce generated in the authentication exchange. This + * is in "raw" number of bytes, the actual nonces sent over the wire are + * encoded using only ASCII-printable characters. + */ +#define SCRAM_RAW_NONCE_LEN 18 + +/* + * Length of salt when generating new secrets, in bytes. (It will be stored + * and sent over the wire encoded in Base64.) 16 bytes is what the example in + * RFC 7677 uses. + */ +#define SCRAM_DEFAULT_SALT_LEN 16 + +/* + * Default number of iterations when generating secret. Should be at least + * 4096 per RFC 7677. + */ +#define SCRAM_SHA_256_DEFAULT_ITERATIONS 4096 + +extern int scram_SaltedPassword(const char *password, + pg_cryptohash_type hash_type, int key_length, + const char *salt, int saltlen, int iterations, + uint8 *result, const char **errstr); +extern int scram_H(const uint8 *input, pg_cryptohash_type hash_type, + int key_length, uint8 *result, + const char **errstr); +extern int scram_ClientKey(const uint8 *salted_password, + pg_cryptohash_type hash_type, int key_length, + uint8 *result, const char **errstr); +extern int scram_ServerKey(const uint8 *salted_password, + pg_cryptohash_type hash_type, int key_length, + uint8 *result, const char **errstr); + +extern char *scram_build_secret(pg_cryptohash_type hash_type, int key_length, + const char *salt, int saltlen, int iterations, + const char *password, const char **errstr); + +#endif /* SCRAM_COMMON_H */ diff --git a/parser/include/common/sha2.h b/parser/include/common/sha2.h new file mode 100644 index 00000000..9b46cd1a --- /dev/null +++ b/parser/include/common/sha2.h @@ -0,0 +1,32 @@ +/*------------------------------------------------------------------------- + * + * sha2.h + * Constants related to SHA224, 256, 384 AND 512. + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * IDENTIFICATION + * src/include/common/sha2.h + * + *------------------------------------------------------------------------- + */ + +#ifndef _PG_SHA2_H_ +#define _PG_SHA2_H_ + +/*** SHA224/256/384/512 Various Length Definitions ***********************/ +#define PG_SHA224_BLOCK_LENGTH 64 +#define PG_SHA224_DIGEST_LENGTH 28 +#define PG_SHA224_DIGEST_STRING_LENGTH (PG_SHA224_DIGEST_LENGTH * 2 + 1) +#define PG_SHA256_BLOCK_LENGTH 64 +#define PG_SHA256_DIGEST_LENGTH 32 +#define PG_SHA256_DIGEST_STRING_LENGTH (PG_SHA256_DIGEST_LENGTH * 2 + 1) +#define PG_SHA384_BLOCK_LENGTH 128 +#define PG_SHA384_DIGEST_LENGTH 48 +#define PG_SHA384_DIGEST_STRING_LENGTH (PG_SHA384_DIGEST_LENGTH * 2 + 1) +#define PG_SHA512_BLOCK_LENGTH 128 +#define PG_SHA512_DIGEST_LENGTH 64 +#define PG_SHA512_DIGEST_STRING_LENGTH (PG_SHA512_DIGEST_LENGTH * 2 + 1) + +#endif /* _PG_SHA2_H_ */ diff --git a/parser/include/common/string.h b/parser/include/common/string.h index cf00fb53..977ef327 100644 --- a/parser/include/common/string.h +++ b/parser/include/common/string.h @@ -2,7 +2,7 @@ * string.h * string handling helpers * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/common/string.h @@ -10,13 +10,15 @@ #ifndef COMMON_STRING_H #define COMMON_STRING_H +#include + struct StringInfoData; /* avoid including stringinfo.h here */ typedef struct PromptInterruptContext { /* To avoid including here, jmpbuf is declared "void *" */ void *jmpbuf; /* existing longjmp buffer */ - volatile bool *enabled; /* flag that enables longjmp-on-interrupt */ + volatile sig_atomic_t *enabled; /* flag that enables longjmp-on-interrupt */ bool canceled; /* indicates whether cancellation occurred */ } PromptInterruptContext; @@ -24,7 +26,7 @@ typedef struct PromptInterruptContext extern bool pg_str_endswith(const char *str, const char *end); extern int strtoint(const char *pg_restrict str, char **pg_restrict endptr, int base); -extern void pg_clean_ascii(char *str); +extern char *pg_clean_ascii(const char *str, int alloc_flags); extern int pg_strip_crlf(char *str); extern bool pg_is_ascii(const char *str); diff --git a/parser/include/common/unicode_east_asian_fw_table.h b/parser/include/common/unicode_east_asian_fw_table.h index e9abfa24..f77e6dfd 100644 --- a/parser/include/common/unicode_east_asian_fw_table.h +++ b/parser/include/common/unicode_east_asian_fw_table.h @@ -69,7 +69,9 @@ static const struct mbinterval east_asian_fw[] = { {0x1AFF5, 0x1AFFB}, {0x1AFFD, 0x1AFFE}, {0x1B000, 0x1B122}, + {0x1B132, 0x1B132}, {0x1B150, 0x1B152}, + {0x1B155, 0x1B155}, {0x1B164, 0x1B167}, {0x1B170, 0x1B2FB}, {0x1F004, 0x1F004}, @@ -103,7 +105,7 @@ static const struct mbinterval east_asian_fw[] = { {0x1F6CC, 0x1F6CC}, {0x1F6D0, 0x1F6D2}, {0x1F6D5, 0x1F6D7}, - {0x1F6DD, 0x1F6DF}, + {0x1F6DC, 0x1F6DF}, {0x1F6EB, 0x1F6EC}, {0x1F6F4, 0x1F6FC}, {0x1F7E0, 0x1F7EB}, @@ -111,15 +113,13 @@ static const struct mbinterval east_asian_fw[] = { {0x1F90C, 0x1F93A}, {0x1F93C, 0x1F945}, {0x1F947, 0x1F9FF}, - {0x1FA70, 0x1FA74}, - {0x1FA78, 0x1FA7C}, - {0x1FA80, 0x1FA86}, - {0x1FA90, 0x1FAAC}, - {0x1FAB0, 0x1FABA}, - {0x1FAC0, 0x1FAC5}, - {0x1FAD0, 0x1FAD9}, - {0x1FAE0, 0x1FAE7}, - {0x1FAF0, 0x1FAF6}, + {0x1FA70, 0x1FA7C}, + {0x1FA80, 0x1FA88}, + {0x1FA90, 0x1FABD}, + {0x1FABF, 0x1FAC5}, + {0x1FACE, 0x1FADB}, + {0x1FAE0, 0x1FAE8}, + {0x1FAF0, 0x1FAF8}, {0x20000, 0x2FFFD}, {0x30000, 0x3FFFD}, }; diff --git a/parser/include/common/unicode_combining_table.h b/parser/include/common/unicode_nonspacing_table.h similarity index 88% rename from parser/include/common/unicode_combining_table.h rename to parser/include/common/unicode_nonspacing_table.h index de1eab3a..8d00e127 100644 --- a/parser/include/common/unicode_combining_table.h +++ b/parser/include/common/unicode_nonspacing_table.h @@ -1,6 +1,7 @@ -/* generated by src/common/unicode/generate-unicode_combining_table.pl, do not edit */ +/* generated by src/common/unicode/generate-unicode_nonspacing_table.pl, do not edit */ -static const struct mbinterval combining[] = { +static const struct mbinterval nonspacing[] = { + {0x00AD, 0x00AD}, {0x0300, 0x036F}, {0x0483, 0x0489}, {0x0591, 0x05BD}, @@ -8,13 +9,16 @@ static const struct mbinterval combining[] = { {0x05C1, 0x05C2}, {0x05C4, 0x05C5}, {0x05C7, 0x05C7}, + {0x0600, 0x0605}, {0x0610, 0x061A}, + {0x061C, 0x061C}, {0x064B, 0x065F}, {0x0670, 0x0670}, - {0x06D6, 0x06DC}, + {0x06D6, 0x06DD}, {0x06DF, 0x06E4}, {0x06E7, 0x06E8}, {0x06EA, 0x06ED}, + {0x070F, 0x070F}, {0x0711, 0x0711}, {0x0730, 0x074A}, {0x07A6, 0x07B0}, @@ -25,9 +29,8 @@ static const struct mbinterval combining[] = { {0x0825, 0x0827}, {0x0829, 0x082D}, {0x0859, 0x085B}, - {0x0898, 0x089F}, - {0x08CA, 0x08E1}, - {0x08E3, 0x0902}, + {0x0890, 0x089F}, + {0x08CA, 0x0902}, {0x093A, 0x093A}, {0x093C, 0x093C}, {0x0941, 0x0948}, @@ -83,7 +86,7 @@ static const struct mbinterval combining[] = { {0x0E47, 0x0E4E}, {0x0EB1, 0x0EB1}, {0x0EB4, 0x0EBC}, - {0x0EC8, 0x0ECD}, + {0x0EC8, 0x0ECE}, {0x0F18, 0x0F19}, {0x0F35, 0x0F35}, {0x0F37, 0x0F37}, @@ -114,8 +117,7 @@ static const struct mbinterval combining[] = { {0x17C6, 0x17C6}, {0x17C9, 0x17D3}, {0x17DD, 0x17DD}, - {0x180B, 0x180D}, - {0x180F, 0x180F}, + {0x180B, 0x180F}, {0x1885, 0x1886}, {0x18A9, 0x18A9}, {0x1920, 0x1922}, @@ -152,6 +154,9 @@ static const struct mbinterval combining[] = { {0x1CF4, 0x1CF4}, {0x1CF8, 0x1CF9}, {0x1DC0, 0x1DFF}, + {0x200B, 0x200F}, + {0x202A, 0x202E}, + {0x2060, 0x206F}, {0x20D0, 0x20F0}, {0x2CEF, 0x2CF1}, {0x2D7F, 0x2D7F}, @@ -196,6 +201,8 @@ static const struct mbinterval combining[] = { {0xFB1E, 0xFB1E}, {0xFE00, 0xFE0F}, {0xFE20, 0xFE2F}, + {0xFEFF, 0xFEFF}, + {0xFFF9, 0xFFFB}, {0x101FD, 0x101FD}, {0x102E0, 0x102E0}, {0x10376, 0x1037A}, @@ -204,6 +211,7 @@ static const struct mbinterval combining[] = { {0x10AE5, 0x10AE6}, {0x10D24, 0x10D27}, {0x10EAB, 0x10EAC}, + {0x10EFD, 0x10EFF}, {0x10F46, 0x10F50}, {0x10F82, 0x10F85}, {0x11001, 0x11001}, @@ -213,7 +221,8 @@ static const struct mbinterval combining[] = { {0x1107F, 0x11081}, {0x110B3, 0x110B6}, {0x110B9, 0x110BA}, - {0x110C2, 0x110C2}, + {0x110BD, 0x110BD}, + {0x110C2, 0x110CD}, {0x11100, 0x11102}, {0x11127, 0x1112B}, {0x1112D, 0x11134}, @@ -226,6 +235,7 @@ static const struct mbinterval combining[] = { {0x11234, 0x11234}, {0x11236, 0x11237}, {0x1123E, 0x1123E}, + {0x11241, 0x11241}, {0x112DF, 0x112DF}, {0x112E3, 0x112EA}, {0x11300, 0x11301}, @@ -281,15 +291,21 @@ static const struct mbinterval combining[] = { {0x11D95, 0x11D95}, {0x11D97, 0x11D97}, {0x11EF3, 0x11EF4}, + {0x11F00, 0x11F01}, + {0x11F36, 0x11F3A}, + {0x11F40, 0x11F40}, + {0x11F42, 0x11F42}, + {0x13430, 0x13440}, + {0x13447, 0x13455}, {0x16AF0, 0x16AF4}, {0x16B30, 0x16B36}, {0x16F4F, 0x16F4F}, {0x16F8F, 0x16F92}, {0x16FE4, 0x16FE4}, {0x1BC9D, 0x1BC9E}, - {0x1CF00, 0x1CF46}, + {0x1BCA0, 0x1CF46}, {0x1D167, 0x1D169}, - {0x1D17B, 0x1D182}, + {0x1D173, 0x1D182}, {0x1D185, 0x1D18B}, {0x1D1AA, 0x1D1AD}, {0x1D242, 0x1D244}, @@ -299,10 +315,12 @@ static const struct mbinterval combining[] = { {0x1DA84, 0x1DA84}, {0x1DA9B, 0x1DAAF}, {0x1E000, 0x1E02A}, + {0x1E08F, 0x1E08F}, {0x1E130, 0x1E136}, {0x1E2AE, 0x1E2AE}, {0x1E2EC, 0x1E2EF}, + {0x1E4EC, 0x1E4EF}, {0x1E8D0, 0x1E8D6}, {0x1E944, 0x1E94A}, - {0xE0100, 0xE01EF}, + {0xE0001, 0xE01EF}, }; diff --git a/parser/include/copyfuncs.funcs.c b/parser/include/copyfuncs.funcs.c new file mode 100644 index 00000000..61dc7f13 --- /dev/null +++ b/parser/include/copyfuncs.funcs.c @@ -0,0 +1,5013 @@ +/*------------------------------------------------------------------------- + * + * copyfuncs.funcs.c + * Generated node infrastructure code + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/nodes/gen_node_support.pl + * + *------------------------------------------------------------------------- + */ +#include "access/amapi.h" +#include "access/sdir.h" +#include "access/tableam.h" +#include "access/tsmapi.h" +#include "commands/event_trigger.h" +#include "commands/trigger.h" +#include "executor/tuptable.h" +#include "foreign/fdwapi.h" +#include "nodes/bitmapset.h" +#include "nodes/execnodes.h" +#include "nodes/extensible.h" +#include "nodes/lockoptions.h" +#include "nodes/miscnodes.h" +#include "nodes/nodes.h" +#include "nodes/parsenodes.h" +#include "nodes/pathnodes.h" +#include "nodes/plannodes.h" +#include "nodes/primnodes.h" +#include "nodes/replnodes.h" +#include "nodes/supportnodes.h" +#include "nodes/value.h" +#include "utils/rel.h" + +static Alias * +_copyAlias(const Alias *from) +{ + Alias *newnode = makeNode(Alias); + + COPY_STRING_FIELD(aliasname); + COPY_NODE_FIELD(colnames); + + return newnode; +} + +static RangeVar * +_copyRangeVar(const RangeVar *from) +{ + RangeVar *newnode = makeNode(RangeVar); + + COPY_STRING_FIELD(catalogname); + COPY_STRING_FIELD(schemaname); + COPY_STRING_FIELD(relname); + COPY_SCALAR_FIELD(inh); + COPY_SCALAR_FIELD(relpersistence); + COPY_NODE_FIELD(alias); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static TableFunc * +_copyTableFunc(const TableFunc *from) +{ + TableFunc *newnode = makeNode(TableFunc); + + COPY_NODE_FIELD(ns_uris); + COPY_NODE_FIELD(ns_names); + COPY_NODE_FIELD(docexpr); + COPY_NODE_FIELD(rowexpr); + COPY_NODE_FIELD(colnames); + COPY_NODE_FIELD(coltypes); + COPY_NODE_FIELD(coltypmods); + COPY_NODE_FIELD(colcollations); + COPY_NODE_FIELD(colexprs); + COPY_NODE_FIELD(coldefexprs); + COPY_BITMAPSET_FIELD(notnulls); + COPY_SCALAR_FIELD(ordinalitycol); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static IntoClause * +_copyIntoClause(const IntoClause *from) +{ + IntoClause *newnode = makeNode(IntoClause); + + COPY_NODE_FIELD(rel); + COPY_NODE_FIELD(colNames); + COPY_STRING_FIELD(accessMethod); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(onCommit); + COPY_STRING_FIELD(tableSpaceName); + COPY_NODE_FIELD(viewQuery); + COPY_SCALAR_FIELD(skipData); + + return newnode; +} + +static Var * +_copyVar(const Var *from) +{ + Var *newnode = makeNode(Var); + + COPY_SCALAR_FIELD(varno); + COPY_SCALAR_FIELD(varattno); + COPY_SCALAR_FIELD(vartype); + COPY_SCALAR_FIELD(vartypmod); + COPY_SCALAR_FIELD(varcollid); + COPY_BITMAPSET_FIELD(varnullingrels); + COPY_SCALAR_FIELD(varlevelsup); + COPY_SCALAR_FIELD(varnosyn); + COPY_SCALAR_FIELD(varattnosyn); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static Param * +_copyParam(const Param *from) +{ + Param *newnode = makeNode(Param); + + COPY_SCALAR_FIELD(paramkind); + COPY_SCALAR_FIELD(paramid); + COPY_SCALAR_FIELD(paramtype); + COPY_SCALAR_FIELD(paramtypmod); + COPY_SCALAR_FIELD(paramcollid); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static Aggref * +_copyAggref(const Aggref *from) +{ + Aggref *newnode = makeNode(Aggref); + + COPY_SCALAR_FIELD(aggfnoid); + COPY_SCALAR_FIELD(aggtype); + COPY_SCALAR_FIELD(aggcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_SCALAR_FIELD(aggtranstype); + COPY_NODE_FIELD(aggargtypes); + COPY_NODE_FIELD(aggdirectargs); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(aggorder); + COPY_NODE_FIELD(aggdistinct); + COPY_NODE_FIELD(aggfilter); + COPY_SCALAR_FIELD(aggstar); + COPY_SCALAR_FIELD(aggvariadic); + COPY_SCALAR_FIELD(aggkind); + COPY_SCALAR_FIELD(aggpresorted); + COPY_SCALAR_FIELD(agglevelsup); + COPY_SCALAR_FIELD(aggsplit); + COPY_SCALAR_FIELD(aggno); + COPY_SCALAR_FIELD(aggtransno); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static GroupingFunc * +_copyGroupingFunc(const GroupingFunc *from) +{ + GroupingFunc *newnode = makeNode(GroupingFunc); + + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(refs); + COPY_NODE_FIELD(cols); + COPY_SCALAR_FIELD(agglevelsup); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static WindowFunc * +_copyWindowFunc(const WindowFunc *from) +{ + WindowFunc *newnode = makeNode(WindowFunc); + + COPY_SCALAR_FIELD(winfnoid); + COPY_SCALAR_FIELD(wintype); + COPY_SCALAR_FIELD(wincollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(aggfilter); + COPY_SCALAR_FIELD(winref); + COPY_SCALAR_FIELD(winstar); + COPY_SCALAR_FIELD(winagg); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SubscriptingRef * +_copySubscriptingRef(const SubscriptingRef *from) +{ + SubscriptingRef *newnode = makeNode(SubscriptingRef); + + COPY_SCALAR_FIELD(refcontainertype); + COPY_SCALAR_FIELD(refelemtype); + COPY_SCALAR_FIELD(refrestype); + COPY_SCALAR_FIELD(reftypmod); + COPY_SCALAR_FIELD(refcollid); + COPY_NODE_FIELD(refupperindexpr); + COPY_NODE_FIELD(reflowerindexpr); + COPY_NODE_FIELD(refexpr); + COPY_NODE_FIELD(refassgnexpr); + + return newnode; +} + +static FuncExpr * +_copyFuncExpr(const FuncExpr *from) +{ + FuncExpr *newnode = makeNode(FuncExpr); + + COPY_SCALAR_FIELD(funcid); + COPY_SCALAR_FIELD(funcresulttype); + COPY_SCALAR_FIELD(funcretset); + COPY_SCALAR_FIELD(funcvariadic); + COPY_SCALAR_FIELD(funcformat); + COPY_SCALAR_FIELD(funccollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static NamedArgExpr * +_copyNamedArgExpr(const NamedArgExpr *from) +{ + NamedArgExpr *newnode = makeNode(NamedArgExpr); + + COPY_NODE_FIELD(arg); + COPY_STRING_FIELD(name); + COPY_SCALAR_FIELD(argnumber); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static OpExpr * +_copyOpExpr(const OpExpr *from) +{ + OpExpr *newnode = makeNode(OpExpr); + + COPY_SCALAR_FIELD(opno); + COPY_SCALAR_FIELD(opfuncid); + COPY_SCALAR_FIELD(opresulttype); + COPY_SCALAR_FIELD(opretset); + COPY_SCALAR_FIELD(opcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static DistinctExpr * +_copyDistinctExpr(const DistinctExpr *from) +{ + DistinctExpr *newnode = makeNode(DistinctExpr); + + COPY_SCALAR_FIELD(opno); + COPY_SCALAR_FIELD(opfuncid); + COPY_SCALAR_FIELD(opresulttype); + COPY_SCALAR_FIELD(opretset); + COPY_SCALAR_FIELD(opcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static NullIfExpr * +_copyNullIfExpr(const NullIfExpr *from) +{ + NullIfExpr *newnode = makeNode(NullIfExpr); + + COPY_SCALAR_FIELD(opno); + COPY_SCALAR_FIELD(opfuncid); + COPY_SCALAR_FIELD(opresulttype); + COPY_SCALAR_FIELD(opretset); + COPY_SCALAR_FIELD(opcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ScalarArrayOpExpr * +_copyScalarArrayOpExpr(const ScalarArrayOpExpr *from) +{ + ScalarArrayOpExpr *newnode = makeNode(ScalarArrayOpExpr); + + COPY_SCALAR_FIELD(opno); + COPY_SCALAR_FIELD(opfuncid); + COPY_SCALAR_FIELD(hashfuncid); + COPY_SCALAR_FIELD(negfuncid); + COPY_SCALAR_FIELD(useOr); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static BoolExpr * +_copyBoolExpr(const BoolExpr *from) +{ + BoolExpr *newnode = makeNode(BoolExpr); + + COPY_SCALAR_FIELD(boolop); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SubLink * +_copySubLink(const SubLink *from) +{ + SubLink *newnode = makeNode(SubLink); + + COPY_SCALAR_FIELD(subLinkType); + COPY_SCALAR_FIELD(subLinkId); + COPY_NODE_FIELD(testexpr); + COPY_NODE_FIELD(operName); + COPY_NODE_FIELD(subselect); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SubPlan * +_copySubPlan(const SubPlan *from) +{ + SubPlan *newnode = makeNode(SubPlan); + + COPY_SCALAR_FIELD(subLinkType); + COPY_NODE_FIELD(testexpr); + COPY_NODE_FIELD(paramIds); + COPY_SCALAR_FIELD(plan_id); + COPY_STRING_FIELD(plan_name); + COPY_SCALAR_FIELD(firstColType); + COPY_SCALAR_FIELD(firstColTypmod); + COPY_SCALAR_FIELD(firstColCollation); + COPY_SCALAR_FIELD(useHashTable); + COPY_SCALAR_FIELD(unknownEqFalse); + COPY_SCALAR_FIELD(parallel_safe); + COPY_NODE_FIELD(setParam); + COPY_NODE_FIELD(parParam); + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(startup_cost); + COPY_SCALAR_FIELD(per_call_cost); + + return newnode; +} + +static AlternativeSubPlan * +_copyAlternativeSubPlan(const AlternativeSubPlan *from) +{ + AlternativeSubPlan *newnode = makeNode(AlternativeSubPlan); + + COPY_NODE_FIELD(subplans); + + return newnode; +} + +static FieldSelect * +_copyFieldSelect(const FieldSelect *from) +{ + FieldSelect *newnode = makeNode(FieldSelect); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(fieldnum); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resulttypmod); + COPY_SCALAR_FIELD(resultcollid); + + return newnode; +} + +static FieldStore * +_copyFieldStore(const FieldStore *from) +{ + FieldStore *newnode = makeNode(FieldStore); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(newvals); + COPY_NODE_FIELD(fieldnums); + COPY_SCALAR_FIELD(resulttype); + + return newnode; +} + +static RelabelType * +_copyRelabelType(const RelabelType *from) +{ + RelabelType *newnode = makeNode(RelabelType); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resulttypmod); + COPY_SCALAR_FIELD(resultcollid); + COPY_SCALAR_FIELD(relabelformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CoerceViaIO * +_copyCoerceViaIO(const CoerceViaIO *from) +{ + CoerceViaIO *newnode = makeNode(CoerceViaIO); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resultcollid); + COPY_SCALAR_FIELD(coerceformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ArrayCoerceExpr * +_copyArrayCoerceExpr(const ArrayCoerceExpr *from) +{ + ArrayCoerceExpr *newnode = makeNode(ArrayCoerceExpr); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(elemexpr); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resulttypmod); + COPY_SCALAR_FIELD(resultcollid); + COPY_SCALAR_FIELD(coerceformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ConvertRowtypeExpr * +_copyConvertRowtypeExpr(const ConvertRowtypeExpr *from) +{ + ConvertRowtypeExpr *newnode = makeNode(ConvertRowtypeExpr); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(convertformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CollateExpr * +_copyCollateExpr(const CollateExpr *from) +{ + CollateExpr *newnode = makeNode(CollateExpr); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(collOid); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CaseExpr * +_copyCaseExpr(const CaseExpr *from) +{ + CaseExpr *newnode = makeNode(CaseExpr); + + COPY_SCALAR_FIELD(casetype); + COPY_SCALAR_FIELD(casecollid); + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(defresult); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CaseWhen * +_copyCaseWhen(const CaseWhen *from) +{ + CaseWhen *newnode = makeNode(CaseWhen); + + COPY_NODE_FIELD(expr); + COPY_NODE_FIELD(result); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CaseTestExpr * +_copyCaseTestExpr(const CaseTestExpr *from) +{ + CaseTestExpr *newnode = makeNode(CaseTestExpr); + + COPY_SCALAR_FIELD(typeId); + COPY_SCALAR_FIELD(typeMod); + COPY_SCALAR_FIELD(collation); + + return newnode; +} + +static ArrayExpr * +_copyArrayExpr(const ArrayExpr *from) +{ + ArrayExpr *newnode = makeNode(ArrayExpr); + + COPY_SCALAR_FIELD(array_typeid); + COPY_SCALAR_FIELD(array_collid); + COPY_SCALAR_FIELD(element_typeid); + COPY_NODE_FIELD(elements); + COPY_SCALAR_FIELD(multidims); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RowExpr * +_copyRowExpr(const RowExpr *from) +{ + RowExpr *newnode = makeNode(RowExpr); + + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(row_typeid); + COPY_SCALAR_FIELD(row_format); + COPY_NODE_FIELD(colnames); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RowCompareExpr * +_copyRowCompareExpr(const RowCompareExpr *from) +{ + RowCompareExpr *newnode = makeNode(RowCompareExpr); + + COPY_SCALAR_FIELD(rctype); + COPY_NODE_FIELD(opnos); + COPY_NODE_FIELD(opfamilies); + COPY_NODE_FIELD(inputcollids); + COPY_NODE_FIELD(largs); + COPY_NODE_FIELD(rargs); + + return newnode; +} + +static CoalesceExpr * +_copyCoalesceExpr(const CoalesceExpr *from) +{ + CoalesceExpr *newnode = makeNode(CoalesceExpr); + + COPY_SCALAR_FIELD(coalescetype); + COPY_SCALAR_FIELD(coalescecollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static MinMaxExpr * +_copyMinMaxExpr(const MinMaxExpr *from) +{ + MinMaxExpr *newnode = makeNode(MinMaxExpr); + + COPY_SCALAR_FIELD(minmaxtype); + COPY_SCALAR_FIELD(minmaxcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_SCALAR_FIELD(op); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SQLValueFunction * +_copySQLValueFunction(const SQLValueFunction *from) +{ + SQLValueFunction *newnode = makeNode(SQLValueFunction); + + COPY_SCALAR_FIELD(op); + COPY_SCALAR_FIELD(type); + COPY_SCALAR_FIELD(typmod); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static XmlExpr * +_copyXmlExpr(const XmlExpr *from) +{ + XmlExpr *newnode = makeNode(XmlExpr); + + COPY_SCALAR_FIELD(op); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(named_args); + COPY_NODE_FIELD(arg_names); + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(xmloption); + COPY_SCALAR_FIELD(indent); + COPY_SCALAR_FIELD(type); + COPY_SCALAR_FIELD(typmod); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonFormat * +_copyJsonFormat(const JsonFormat *from) +{ + JsonFormat *newnode = makeNode(JsonFormat); + + COPY_SCALAR_FIELD(format_type); + COPY_SCALAR_FIELD(encoding); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonReturning * +_copyJsonReturning(const JsonReturning *from) +{ + JsonReturning *newnode = makeNode(JsonReturning); + + COPY_NODE_FIELD(format); + COPY_SCALAR_FIELD(typid); + COPY_SCALAR_FIELD(typmod); + + return newnode; +} + +static JsonValueExpr * +_copyJsonValueExpr(const JsonValueExpr *from) +{ + JsonValueExpr *newnode = makeNode(JsonValueExpr); + + COPY_NODE_FIELD(raw_expr); + COPY_NODE_FIELD(formatted_expr); + COPY_NODE_FIELD(format); + + return newnode; +} + +static JsonConstructorExpr * +_copyJsonConstructorExpr(const JsonConstructorExpr *from) +{ + JsonConstructorExpr *newnode = makeNode(JsonConstructorExpr); + + COPY_SCALAR_FIELD(type); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(func); + COPY_NODE_FIELD(coercion); + COPY_NODE_FIELD(returning); + COPY_SCALAR_FIELD(absent_on_null); + COPY_SCALAR_FIELD(unique); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonIsPredicate * +_copyJsonIsPredicate(const JsonIsPredicate *from) +{ + JsonIsPredicate *newnode = makeNode(JsonIsPredicate); + + COPY_NODE_FIELD(expr); + COPY_NODE_FIELD(format); + COPY_SCALAR_FIELD(item_type); + COPY_SCALAR_FIELD(unique_keys); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static NullTest * +_copyNullTest(const NullTest *from) +{ + NullTest *newnode = makeNode(NullTest); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(nulltesttype); + COPY_SCALAR_FIELD(argisrow); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static BooleanTest * +_copyBooleanTest(const BooleanTest *from) +{ + BooleanTest *newnode = makeNode(BooleanTest); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(booltesttype); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CoerceToDomain * +_copyCoerceToDomain(const CoerceToDomain *from) +{ + CoerceToDomain *newnode = makeNode(CoerceToDomain); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resulttypmod); + COPY_SCALAR_FIELD(resultcollid); + COPY_SCALAR_FIELD(coercionformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CoerceToDomainValue * +_copyCoerceToDomainValue(const CoerceToDomainValue *from) +{ + CoerceToDomainValue *newnode = makeNode(CoerceToDomainValue); + + COPY_SCALAR_FIELD(typeId); + COPY_SCALAR_FIELD(typeMod); + COPY_SCALAR_FIELD(collation); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SetToDefault * +_copySetToDefault(const SetToDefault *from) +{ + SetToDefault *newnode = makeNode(SetToDefault); + + COPY_SCALAR_FIELD(typeId); + COPY_SCALAR_FIELD(typeMod); + COPY_SCALAR_FIELD(collation); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CurrentOfExpr * +_copyCurrentOfExpr(const CurrentOfExpr *from) +{ + CurrentOfExpr *newnode = makeNode(CurrentOfExpr); + + COPY_SCALAR_FIELD(cvarno); + COPY_STRING_FIELD(cursor_name); + COPY_SCALAR_FIELD(cursor_param); + + return newnode; +} + +static NextValueExpr * +_copyNextValueExpr(const NextValueExpr *from) +{ + NextValueExpr *newnode = makeNode(NextValueExpr); + + COPY_SCALAR_FIELD(seqid); + COPY_SCALAR_FIELD(typeId); + + return newnode; +} + +static InferenceElem * +_copyInferenceElem(const InferenceElem *from) +{ + InferenceElem *newnode = makeNode(InferenceElem); + + COPY_NODE_FIELD(expr); + COPY_SCALAR_FIELD(infercollid); + COPY_SCALAR_FIELD(inferopclass); + + return newnode; +} + +static TargetEntry * +_copyTargetEntry(const TargetEntry *from) +{ + TargetEntry *newnode = makeNode(TargetEntry); + + COPY_NODE_FIELD(expr); + COPY_SCALAR_FIELD(resno); + COPY_STRING_FIELD(resname); + COPY_SCALAR_FIELD(ressortgroupref); + COPY_SCALAR_FIELD(resorigtbl); + COPY_SCALAR_FIELD(resorigcol); + COPY_SCALAR_FIELD(resjunk); + + return newnode; +} + +static RangeTblRef * +_copyRangeTblRef(const RangeTblRef *from) +{ + RangeTblRef *newnode = makeNode(RangeTblRef); + + COPY_SCALAR_FIELD(rtindex); + + return newnode; +} + +static JoinExpr * +_copyJoinExpr(const JoinExpr *from) +{ + JoinExpr *newnode = makeNode(JoinExpr); + + COPY_SCALAR_FIELD(jointype); + COPY_SCALAR_FIELD(isNatural); + COPY_NODE_FIELD(larg); + COPY_NODE_FIELD(rarg); + COPY_NODE_FIELD(usingClause); + COPY_NODE_FIELD(join_using_alias); + COPY_NODE_FIELD(quals); + COPY_NODE_FIELD(alias); + COPY_SCALAR_FIELD(rtindex); + + return newnode; +} + +static FromExpr * +_copyFromExpr(const FromExpr *from) +{ + FromExpr *newnode = makeNode(FromExpr); + + COPY_NODE_FIELD(fromlist); + COPY_NODE_FIELD(quals); + + return newnode; +} + +static OnConflictExpr * +_copyOnConflictExpr(const OnConflictExpr *from) +{ + OnConflictExpr *newnode = makeNode(OnConflictExpr); + + COPY_SCALAR_FIELD(action); + COPY_NODE_FIELD(arbiterElems); + COPY_NODE_FIELD(arbiterWhere); + COPY_SCALAR_FIELD(constraint); + COPY_NODE_FIELD(onConflictSet); + COPY_NODE_FIELD(onConflictWhere); + COPY_SCALAR_FIELD(exclRelIndex); + COPY_NODE_FIELD(exclRelTlist); + + return newnode; +} + +static Query * +_copyQuery(const Query *from) +{ + Query *newnode = makeNode(Query); + + COPY_SCALAR_FIELD(commandType); + COPY_SCALAR_FIELD(querySource); + COPY_SCALAR_FIELD(queryId); + COPY_SCALAR_FIELD(canSetTag); + COPY_NODE_FIELD(utilityStmt); + COPY_SCALAR_FIELD(resultRelation); + COPY_SCALAR_FIELD(hasAggs); + COPY_SCALAR_FIELD(hasWindowFuncs); + COPY_SCALAR_FIELD(hasTargetSRFs); + COPY_SCALAR_FIELD(hasSubLinks); + COPY_SCALAR_FIELD(hasDistinctOn); + COPY_SCALAR_FIELD(hasRecursive); + COPY_SCALAR_FIELD(hasModifyingCTE); + COPY_SCALAR_FIELD(hasForUpdate); + COPY_SCALAR_FIELD(hasRowSecurity); + COPY_SCALAR_FIELD(isReturn); + COPY_NODE_FIELD(cteList); + COPY_NODE_FIELD(rtable); + COPY_NODE_FIELD(rteperminfos); + COPY_NODE_FIELD(jointree); + COPY_NODE_FIELD(mergeActionList); + COPY_SCALAR_FIELD(mergeUseOuterJoin); + COPY_NODE_FIELD(targetList); + COPY_SCALAR_FIELD(override); + COPY_NODE_FIELD(onConflict); + COPY_NODE_FIELD(returningList); + COPY_NODE_FIELD(groupClause); + COPY_SCALAR_FIELD(groupDistinct); + COPY_NODE_FIELD(groupingSets); + COPY_NODE_FIELD(havingQual); + COPY_NODE_FIELD(windowClause); + COPY_NODE_FIELD(distinctClause); + COPY_NODE_FIELD(sortClause); + COPY_NODE_FIELD(limitOffset); + COPY_NODE_FIELD(limitCount); + COPY_SCALAR_FIELD(limitOption); + COPY_NODE_FIELD(rowMarks); + COPY_NODE_FIELD(setOperations); + COPY_NODE_FIELD(constraintDeps); + COPY_NODE_FIELD(withCheckOptions); + COPY_LOCATION_FIELD(stmt_location); + COPY_SCALAR_FIELD(stmt_len); + + return newnode; +} + +static TypeName * +_copyTypeName(const TypeName *from) +{ + TypeName *newnode = makeNode(TypeName); + + COPY_NODE_FIELD(names); + COPY_SCALAR_FIELD(typeOid); + COPY_SCALAR_FIELD(setof); + COPY_SCALAR_FIELD(pct_type); + COPY_NODE_FIELD(typmods); + COPY_SCALAR_FIELD(typemod); + COPY_NODE_FIELD(arrayBounds); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ColumnRef * +_copyColumnRef(const ColumnRef *from) +{ + ColumnRef *newnode = makeNode(ColumnRef); + + COPY_NODE_FIELD(fields); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ParamRef * +_copyParamRef(const ParamRef *from) +{ + ParamRef *newnode = makeNode(ParamRef); + + COPY_SCALAR_FIELD(number); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static A_Expr * +_copyA_Expr(const A_Expr *from) +{ + A_Expr *newnode = makeNode(A_Expr); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(name); + COPY_NODE_FIELD(lexpr); + COPY_NODE_FIELD(rexpr); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static TypeCast * +_copyTypeCast(const TypeCast *from) +{ + TypeCast *newnode = makeNode(TypeCast); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(typeName); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CollateClause * +_copyCollateClause(const CollateClause *from) +{ + CollateClause *newnode = makeNode(CollateClause); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(collname); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RoleSpec * +_copyRoleSpec(const RoleSpec *from) +{ + RoleSpec *newnode = makeNode(RoleSpec); + + COPY_SCALAR_FIELD(roletype); + COPY_STRING_FIELD(rolename); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static FuncCall * +_copyFuncCall(const FuncCall *from) +{ + FuncCall *newnode = makeNode(FuncCall); + + COPY_NODE_FIELD(funcname); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(agg_order); + COPY_NODE_FIELD(agg_filter); + COPY_NODE_FIELD(over); + COPY_SCALAR_FIELD(agg_within_group); + COPY_SCALAR_FIELD(agg_star); + COPY_SCALAR_FIELD(agg_distinct); + COPY_SCALAR_FIELD(func_variadic); + COPY_SCALAR_FIELD(funcformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static A_Star * +_copyA_Star(const A_Star *from) +{ + A_Star *newnode = makeNode(A_Star); + + + return newnode; +} + +static A_Indices * +_copyA_Indices(const A_Indices *from) +{ + A_Indices *newnode = makeNode(A_Indices); + + COPY_SCALAR_FIELD(is_slice); + COPY_NODE_FIELD(lidx); + COPY_NODE_FIELD(uidx); + + return newnode; +} + +static A_Indirection * +_copyA_Indirection(const A_Indirection *from) +{ + A_Indirection *newnode = makeNode(A_Indirection); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(indirection); + + return newnode; +} + +static A_ArrayExpr * +_copyA_ArrayExpr(const A_ArrayExpr *from) +{ + A_ArrayExpr *newnode = makeNode(A_ArrayExpr); + + COPY_NODE_FIELD(elements); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ResTarget * +_copyResTarget(const ResTarget *from) +{ + ResTarget *newnode = makeNode(ResTarget); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(indirection); + COPY_NODE_FIELD(val); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static MultiAssignRef * +_copyMultiAssignRef(const MultiAssignRef *from) +{ + MultiAssignRef *newnode = makeNode(MultiAssignRef); + + COPY_NODE_FIELD(source); + COPY_SCALAR_FIELD(colno); + COPY_SCALAR_FIELD(ncolumns); + + return newnode; +} + +static SortBy * +_copySortBy(const SortBy *from) +{ + SortBy *newnode = makeNode(SortBy); + + COPY_NODE_FIELD(node); + COPY_SCALAR_FIELD(sortby_dir); + COPY_SCALAR_FIELD(sortby_nulls); + COPY_NODE_FIELD(useOp); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static WindowDef * +_copyWindowDef(const WindowDef *from) +{ + WindowDef *newnode = makeNode(WindowDef); + + COPY_STRING_FIELD(name); + COPY_STRING_FIELD(refname); + COPY_NODE_FIELD(partitionClause); + COPY_NODE_FIELD(orderClause); + COPY_SCALAR_FIELD(frameOptions); + COPY_NODE_FIELD(startOffset); + COPY_NODE_FIELD(endOffset); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RangeSubselect * +_copyRangeSubselect(const RangeSubselect *from) +{ + RangeSubselect *newnode = makeNode(RangeSubselect); + + COPY_SCALAR_FIELD(lateral); + COPY_NODE_FIELD(subquery); + COPY_NODE_FIELD(alias); + + return newnode; +} + +static RangeFunction * +_copyRangeFunction(const RangeFunction *from) +{ + RangeFunction *newnode = makeNode(RangeFunction); + + COPY_SCALAR_FIELD(lateral); + COPY_SCALAR_FIELD(ordinality); + COPY_SCALAR_FIELD(is_rowsfrom); + COPY_NODE_FIELD(functions); + COPY_NODE_FIELD(alias); + COPY_NODE_FIELD(coldeflist); + + return newnode; +} + +static RangeTableFunc * +_copyRangeTableFunc(const RangeTableFunc *from) +{ + RangeTableFunc *newnode = makeNode(RangeTableFunc); + + COPY_SCALAR_FIELD(lateral); + COPY_NODE_FIELD(docexpr); + COPY_NODE_FIELD(rowexpr); + COPY_NODE_FIELD(namespaces); + COPY_NODE_FIELD(columns); + COPY_NODE_FIELD(alias); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RangeTableFuncCol * +_copyRangeTableFuncCol(const RangeTableFuncCol *from) +{ + RangeTableFuncCol *newnode = makeNode(RangeTableFuncCol); + + COPY_STRING_FIELD(colname); + COPY_NODE_FIELD(typeName); + COPY_SCALAR_FIELD(for_ordinality); + COPY_SCALAR_FIELD(is_not_null); + COPY_NODE_FIELD(colexpr); + COPY_NODE_FIELD(coldefexpr); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RangeTableSample * +_copyRangeTableSample(const RangeTableSample *from) +{ + RangeTableSample *newnode = makeNode(RangeTableSample); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(method); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(repeatable); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ColumnDef * +_copyColumnDef(const ColumnDef *from) +{ + ColumnDef *newnode = makeNode(ColumnDef); + + COPY_STRING_FIELD(colname); + COPY_NODE_FIELD(typeName); + COPY_STRING_FIELD(compression); + COPY_SCALAR_FIELD(inhcount); + COPY_SCALAR_FIELD(is_local); + COPY_SCALAR_FIELD(is_not_null); + COPY_SCALAR_FIELD(is_from_type); + COPY_SCALAR_FIELD(storage); + COPY_STRING_FIELD(storage_name); + COPY_NODE_FIELD(raw_default); + COPY_NODE_FIELD(cooked_default); + COPY_SCALAR_FIELD(identity); + COPY_NODE_FIELD(identitySequence); + COPY_SCALAR_FIELD(generated); + COPY_NODE_FIELD(collClause); + COPY_SCALAR_FIELD(collOid); + COPY_NODE_FIELD(constraints); + COPY_NODE_FIELD(fdwoptions); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static TableLikeClause * +_copyTableLikeClause(const TableLikeClause *from) +{ + TableLikeClause *newnode = makeNode(TableLikeClause); + + COPY_NODE_FIELD(relation); + COPY_SCALAR_FIELD(options); + COPY_SCALAR_FIELD(relationOid); + + return newnode; +} + +static IndexElem * +_copyIndexElem(const IndexElem *from) +{ + IndexElem *newnode = makeNode(IndexElem); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(expr); + COPY_STRING_FIELD(indexcolname); + COPY_NODE_FIELD(collation); + COPY_NODE_FIELD(opclass); + COPY_NODE_FIELD(opclassopts); + COPY_SCALAR_FIELD(ordering); + COPY_SCALAR_FIELD(nulls_ordering); + + return newnode; +} + +static DefElem * +_copyDefElem(const DefElem *from) +{ + DefElem *newnode = makeNode(DefElem); + + COPY_STRING_FIELD(defnamespace); + COPY_STRING_FIELD(defname); + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(defaction); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static LockingClause * +_copyLockingClause(const LockingClause *from) +{ + LockingClause *newnode = makeNode(LockingClause); + + COPY_NODE_FIELD(lockedRels); + COPY_SCALAR_FIELD(strength); + COPY_SCALAR_FIELD(waitPolicy); + + return newnode; +} + +static XmlSerialize * +_copyXmlSerialize(const XmlSerialize *from) +{ + XmlSerialize *newnode = makeNode(XmlSerialize); + + COPY_SCALAR_FIELD(xmloption); + COPY_NODE_FIELD(expr); + COPY_NODE_FIELD(typeName); + COPY_SCALAR_FIELD(indent); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionElem * +_copyPartitionElem(const PartitionElem *from) +{ + PartitionElem *newnode = makeNode(PartitionElem); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(expr); + COPY_NODE_FIELD(collation); + COPY_NODE_FIELD(opclass); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionSpec * +_copyPartitionSpec(const PartitionSpec *from) +{ + PartitionSpec *newnode = makeNode(PartitionSpec); + + COPY_SCALAR_FIELD(strategy); + COPY_NODE_FIELD(partParams); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionBoundSpec * +_copyPartitionBoundSpec(const PartitionBoundSpec *from) +{ + PartitionBoundSpec *newnode = makeNode(PartitionBoundSpec); + + COPY_SCALAR_FIELD(strategy); + COPY_SCALAR_FIELD(is_default); + COPY_SCALAR_FIELD(modulus); + COPY_SCALAR_FIELD(remainder); + COPY_NODE_FIELD(listdatums); + COPY_NODE_FIELD(lowerdatums); + COPY_NODE_FIELD(upperdatums); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionRangeDatum * +_copyPartitionRangeDatum(const PartitionRangeDatum *from) +{ + PartitionRangeDatum *newnode = makeNode(PartitionRangeDatum); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(value); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionCmd * +_copyPartitionCmd(const PartitionCmd *from) +{ + PartitionCmd *newnode = makeNode(PartitionCmd); + + COPY_NODE_FIELD(name); + COPY_NODE_FIELD(bound); + COPY_SCALAR_FIELD(concurrent); + + return newnode; +} + +static RangeTblEntry * +_copyRangeTblEntry(const RangeTblEntry *from) +{ + RangeTblEntry *newnode = makeNode(RangeTblEntry); + + COPY_SCALAR_FIELD(rtekind); + COPY_SCALAR_FIELD(relid); + COPY_SCALAR_FIELD(relkind); + COPY_SCALAR_FIELD(rellockmode); + COPY_NODE_FIELD(tablesample); + COPY_SCALAR_FIELD(perminfoindex); + COPY_NODE_FIELD(subquery); + COPY_SCALAR_FIELD(security_barrier); + COPY_SCALAR_FIELD(jointype); + COPY_SCALAR_FIELD(joinmergedcols); + COPY_NODE_FIELD(joinaliasvars); + COPY_NODE_FIELD(joinleftcols); + COPY_NODE_FIELD(joinrightcols); + COPY_NODE_FIELD(join_using_alias); + COPY_NODE_FIELD(functions); + COPY_SCALAR_FIELD(funcordinality); + COPY_NODE_FIELD(tablefunc); + COPY_NODE_FIELD(values_lists); + COPY_STRING_FIELD(ctename); + COPY_SCALAR_FIELD(ctelevelsup); + COPY_SCALAR_FIELD(self_reference); + COPY_NODE_FIELD(coltypes); + COPY_NODE_FIELD(coltypmods); + COPY_NODE_FIELD(colcollations); + COPY_STRING_FIELD(enrname); + COPY_SCALAR_FIELD(enrtuples); + COPY_NODE_FIELD(alias); + COPY_NODE_FIELD(eref); + COPY_SCALAR_FIELD(lateral); + COPY_SCALAR_FIELD(inh); + COPY_SCALAR_FIELD(inFromCl); + COPY_NODE_FIELD(securityQuals); + + return newnode; +} + +static RTEPermissionInfo * +_copyRTEPermissionInfo(const RTEPermissionInfo *from) +{ + RTEPermissionInfo *newnode = makeNode(RTEPermissionInfo); + + COPY_SCALAR_FIELD(relid); + COPY_SCALAR_FIELD(inh); + COPY_SCALAR_FIELD(requiredPerms); + COPY_SCALAR_FIELD(checkAsUser); + COPY_BITMAPSET_FIELD(selectedCols); + COPY_BITMAPSET_FIELD(insertedCols); + COPY_BITMAPSET_FIELD(updatedCols); + + return newnode; +} + +static RangeTblFunction * +_copyRangeTblFunction(const RangeTblFunction *from) +{ + RangeTblFunction *newnode = makeNode(RangeTblFunction); + + COPY_NODE_FIELD(funcexpr); + COPY_SCALAR_FIELD(funccolcount); + COPY_NODE_FIELD(funccolnames); + COPY_NODE_FIELD(funccoltypes); + COPY_NODE_FIELD(funccoltypmods); + COPY_NODE_FIELD(funccolcollations); + COPY_BITMAPSET_FIELD(funcparams); + + return newnode; +} + +static TableSampleClause * +_copyTableSampleClause(const TableSampleClause *from) +{ + TableSampleClause *newnode = makeNode(TableSampleClause); + + COPY_SCALAR_FIELD(tsmhandler); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(repeatable); + + return newnode; +} + +static WithCheckOption * +_copyWithCheckOption(const WithCheckOption *from) +{ + WithCheckOption *newnode = makeNode(WithCheckOption); + + COPY_SCALAR_FIELD(kind); + COPY_STRING_FIELD(relname); + COPY_STRING_FIELD(polname); + COPY_NODE_FIELD(qual); + COPY_SCALAR_FIELD(cascaded); + + return newnode; +} + +static SortGroupClause * +_copySortGroupClause(const SortGroupClause *from) +{ + SortGroupClause *newnode = makeNode(SortGroupClause); + + COPY_SCALAR_FIELD(tleSortGroupRef); + COPY_SCALAR_FIELD(eqop); + COPY_SCALAR_FIELD(sortop); + COPY_SCALAR_FIELD(nulls_first); + COPY_SCALAR_FIELD(hashable); + + return newnode; +} + +static GroupingSet * +_copyGroupingSet(const GroupingSet *from) +{ + GroupingSet *newnode = makeNode(GroupingSet); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(content); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static WindowClause * +_copyWindowClause(const WindowClause *from) +{ + WindowClause *newnode = makeNode(WindowClause); + + COPY_STRING_FIELD(name); + COPY_STRING_FIELD(refname); + COPY_NODE_FIELD(partitionClause); + COPY_NODE_FIELD(orderClause); + COPY_SCALAR_FIELD(frameOptions); + COPY_NODE_FIELD(startOffset); + COPY_NODE_FIELD(endOffset); + COPY_NODE_FIELD(runCondition); + COPY_SCALAR_FIELD(startInRangeFunc); + COPY_SCALAR_FIELD(endInRangeFunc); + COPY_SCALAR_FIELD(inRangeColl); + COPY_SCALAR_FIELD(inRangeAsc); + COPY_SCALAR_FIELD(inRangeNullsFirst); + COPY_SCALAR_FIELD(winref); + COPY_SCALAR_FIELD(copiedOrder); + + return newnode; +} + +static RowMarkClause * +_copyRowMarkClause(const RowMarkClause *from) +{ + RowMarkClause *newnode = makeNode(RowMarkClause); + + COPY_SCALAR_FIELD(rti); + COPY_SCALAR_FIELD(strength); + COPY_SCALAR_FIELD(waitPolicy); + COPY_SCALAR_FIELD(pushedDown); + + return newnode; +} + +static WithClause * +_copyWithClause(const WithClause *from) +{ + WithClause *newnode = makeNode(WithClause); + + COPY_NODE_FIELD(ctes); + COPY_SCALAR_FIELD(recursive); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static InferClause * +_copyInferClause(const InferClause *from) +{ + InferClause *newnode = makeNode(InferClause); + + COPY_NODE_FIELD(indexElems); + COPY_NODE_FIELD(whereClause); + COPY_STRING_FIELD(conname); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static OnConflictClause * +_copyOnConflictClause(const OnConflictClause *from) +{ + OnConflictClause *newnode = makeNode(OnConflictClause); + + COPY_SCALAR_FIELD(action); + COPY_NODE_FIELD(infer); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(whereClause); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CTESearchClause * +_copyCTESearchClause(const CTESearchClause *from) +{ + CTESearchClause *newnode = makeNode(CTESearchClause); + + COPY_NODE_FIELD(search_col_list); + COPY_SCALAR_FIELD(search_breadth_first); + COPY_STRING_FIELD(search_seq_column); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CTECycleClause * +_copyCTECycleClause(const CTECycleClause *from) +{ + CTECycleClause *newnode = makeNode(CTECycleClause); + + COPY_NODE_FIELD(cycle_col_list); + COPY_STRING_FIELD(cycle_mark_column); + COPY_NODE_FIELD(cycle_mark_value); + COPY_NODE_FIELD(cycle_mark_default); + COPY_STRING_FIELD(cycle_path_column); + COPY_LOCATION_FIELD(location); + COPY_SCALAR_FIELD(cycle_mark_type); + COPY_SCALAR_FIELD(cycle_mark_typmod); + COPY_SCALAR_FIELD(cycle_mark_collation); + COPY_SCALAR_FIELD(cycle_mark_neop); + + return newnode; +} + +static CommonTableExpr * +_copyCommonTableExpr(const CommonTableExpr *from) +{ + CommonTableExpr *newnode = makeNode(CommonTableExpr); + + COPY_STRING_FIELD(ctename); + COPY_NODE_FIELD(aliascolnames); + COPY_SCALAR_FIELD(ctematerialized); + COPY_NODE_FIELD(ctequery); + COPY_NODE_FIELD(search_clause); + COPY_NODE_FIELD(cycle_clause); + COPY_LOCATION_FIELD(location); + COPY_SCALAR_FIELD(cterecursive); + COPY_SCALAR_FIELD(cterefcount); + COPY_NODE_FIELD(ctecolnames); + COPY_NODE_FIELD(ctecoltypes); + COPY_NODE_FIELD(ctecoltypmods); + COPY_NODE_FIELD(ctecolcollations); + + return newnode; +} + +static MergeWhenClause * +_copyMergeWhenClause(const MergeWhenClause *from) +{ + MergeWhenClause *newnode = makeNode(MergeWhenClause); + + COPY_SCALAR_FIELD(matched); + COPY_SCALAR_FIELD(commandType); + COPY_SCALAR_FIELD(override); + COPY_NODE_FIELD(condition); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(values); + + return newnode; +} + +static MergeAction * +_copyMergeAction(const MergeAction *from) +{ + MergeAction *newnode = makeNode(MergeAction); + + COPY_SCALAR_FIELD(matched); + COPY_SCALAR_FIELD(commandType); + COPY_SCALAR_FIELD(override); + COPY_NODE_FIELD(qual); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(updateColnos); + + return newnode; +} + +static TriggerTransition * +_copyTriggerTransition(const TriggerTransition *from) +{ + TriggerTransition *newnode = makeNode(TriggerTransition); + + COPY_STRING_FIELD(name); + COPY_SCALAR_FIELD(isNew); + COPY_SCALAR_FIELD(isTable); + + return newnode; +} + +static JsonOutput * +_copyJsonOutput(const JsonOutput *from) +{ + JsonOutput *newnode = makeNode(JsonOutput); + + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(returning); + + return newnode; +} + +static JsonKeyValue * +_copyJsonKeyValue(const JsonKeyValue *from) +{ + JsonKeyValue *newnode = makeNode(JsonKeyValue); + + COPY_NODE_FIELD(key); + COPY_NODE_FIELD(value); + + return newnode; +} + +static JsonObjectConstructor * +_copyJsonObjectConstructor(const JsonObjectConstructor *from) +{ + JsonObjectConstructor *newnode = makeNode(JsonObjectConstructor); + + COPY_NODE_FIELD(exprs); + COPY_NODE_FIELD(output); + COPY_SCALAR_FIELD(absent_on_null); + COPY_SCALAR_FIELD(unique); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonArrayConstructor * +_copyJsonArrayConstructor(const JsonArrayConstructor *from) +{ + JsonArrayConstructor *newnode = makeNode(JsonArrayConstructor); + + COPY_NODE_FIELD(exprs); + COPY_NODE_FIELD(output); + COPY_SCALAR_FIELD(absent_on_null); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonArrayQueryConstructor * +_copyJsonArrayQueryConstructor(const JsonArrayQueryConstructor *from) +{ + JsonArrayQueryConstructor *newnode = makeNode(JsonArrayQueryConstructor); + + COPY_NODE_FIELD(query); + COPY_NODE_FIELD(output); + COPY_NODE_FIELD(format); + COPY_SCALAR_FIELD(absent_on_null); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonAggConstructor * +_copyJsonAggConstructor(const JsonAggConstructor *from) +{ + JsonAggConstructor *newnode = makeNode(JsonAggConstructor); + + COPY_NODE_FIELD(output); + COPY_NODE_FIELD(agg_filter); + COPY_NODE_FIELD(agg_order); + COPY_NODE_FIELD(over); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonObjectAgg * +_copyJsonObjectAgg(const JsonObjectAgg *from) +{ + JsonObjectAgg *newnode = makeNode(JsonObjectAgg); + + COPY_NODE_FIELD(constructor); + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(absent_on_null); + COPY_SCALAR_FIELD(unique); + + return newnode; +} + +static JsonArrayAgg * +_copyJsonArrayAgg(const JsonArrayAgg *from) +{ + JsonArrayAgg *newnode = makeNode(JsonArrayAgg); + + COPY_NODE_FIELD(constructor); + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(absent_on_null); + + return newnode; +} + +static RawStmt * +_copyRawStmt(const RawStmt *from) +{ + RawStmt *newnode = makeNode(RawStmt); + + COPY_NODE_FIELD(stmt); + COPY_LOCATION_FIELD(stmt_location); + COPY_SCALAR_FIELD(stmt_len); + + return newnode; +} + +static InsertStmt * +_copyInsertStmt(const InsertStmt *from) +{ + InsertStmt *newnode = makeNode(InsertStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(cols); + COPY_NODE_FIELD(selectStmt); + COPY_NODE_FIELD(onConflictClause); + COPY_NODE_FIELD(returningList); + COPY_NODE_FIELD(withClause); + COPY_SCALAR_FIELD(override); + + return newnode; +} + +static DeleteStmt * +_copyDeleteStmt(const DeleteStmt *from) +{ + DeleteStmt *newnode = makeNode(DeleteStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(usingClause); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(returningList); + COPY_NODE_FIELD(withClause); + + return newnode; +} + +static UpdateStmt * +_copyUpdateStmt(const UpdateStmt *from) +{ + UpdateStmt *newnode = makeNode(UpdateStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(fromClause); + COPY_NODE_FIELD(returningList); + COPY_NODE_FIELD(withClause); + + return newnode; +} + +static MergeStmt * +_copyMergeStmt(const MergeStmt *from) +{ + MergeStmt *newnode = makeNode(MergeStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(sourceRelation); + COPY_NODE_FIELD(joinCondition); + COPY_NODE_FIELD(mergeWhenClauses); + COPY_NODE_FIELD(withClause); + + return newnode; +} + +static SelectStmt * +_copySelectStmt(const SelectStmt *from) +{ + SelectStmt *newnode = makeNode(SelectStmt); + + COPY_NODE_FIELD(distinctClause); + COPY_NODE_FIELD(intoClause); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(fromClause); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(groupClause); + COPY_SCALAR_FIELD(groupDistinct); + COPY_NODE_FIELD(havingClause); + COPY_NODE_FIELD(windowClause); + COPY_NODE_FIELD(valuesLists); + COPY_NODE_FIELD(sortClause); + COPY_NODE_FIELD(limitOffset); + COPY_NODE_FIELD(limitCount); + COPY_SCALAR_FIELD(limitOption); + COPY_NODE_FIELD(lockingClause); + COPY_NODE_FIELD(withClause); + COPY_SCALAR_FIELD(op); + COPY_SCALAR_FIELD(all); + COPY_NODE_FIELD(larg); + COPY_NODE_FIELD(rarg); + + return newnode; +} + +static SetOperationStmt * +_copySetOperationStmt(const SetOperationStmt *from) +{ + SetOperationStmt *newnode = makeNode(SetOperationStmt); + + COPY_SCALAR_FIELD(op); + COPY_SCALAR_FIELD(all); + COPY_NODE_FIELD(larg); + COPY_NODE_FIELD(rarg); + COPY_NODE_FIELD(colTypes); + COPY_NODE_FIELD(colTypmods); + COPY_NODE_FIELD(colCollations); + COPY_NODE_FIELD(groupClauses); + + return newnode; +} + +static ReturnStmt * +_copyReturnStmt(const ReturnStmt *from) +{ + ReturnStmt *newnode = makeNode(ReturnStmt); + + COPY_NODE_FIELD(returnval); + + return newnode; +} + +static PLAssignStmt * +_copyPLAssignStmt(const PLAssignStmt *from) +{ + PLAssignStmt *newnode = makeNode(PLAssignStmt); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(indirection); + COPY_SCALAR_FIELD(nnames); + COPY_NODE_FIELD(val); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CreateSchemaStmt * +_copyCreateSchemaStmt(const CreateSchemaStmt *from) +{ + CreateSchemaStmt *newnode = makeNode(CreateSchemaStmt); + + COPY_STRING_FIELD(schemaname); + COPY_NODE_FIELD(authrole); + COPY_NODE_FIELD(schemaElts); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static AlterTableStmt * +_copyAlterTableStmt(const AlterTableStmt *from) +{ + AlterTableStmt *newnode = makeNode(AlterTableStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(cmds); + COPY_SCALAR_FIELD(objtype); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static ReplicaIdentityStmt * +_copyReplicaIdentityStmt(const ReplicaIdentityStmt *from) +{ + ReplicaIdentityStmt *newnode = makeNode(ReplicaIdentityStmt); + + COPY_SCALAR_FIELD(identity_type); + COPY_STRING_FIELD(name); + + return newnode; +} + +static AlterTableCmd * +_copyAlterTableCmd(const AlterTableCmd *from) +{ + AlterTableCmd *newnode = makeNode(AlterTableCmd); + + COPY_SCALAR_FIELD(subtype); + COPY_STRING_FIELD(name); + COPY_SCALAR_FIELD(num); + COPY_NODE_FIELD(newowner); + COPY_NODE_FIELD(def); + COPY_SCALAR_FIELD(behavior); + COPY_SCALAR_FIELD(missing_ok); + COPY_SCALAR_FIELD(recurse); + + return newnode; +} + +static AlterCollationStmt * +_copyAlterCollationStmt(const AlterCollationStmt *from) +{ + AlterCollationStmt *newnode = makeNode(AlterCollationStmt); + + COPY_NODE_FIELD(collname); + + return newnode; +} + +static AlterDomainStmt * +_copyAlterDomainStmt(const AlterDomainStmt *from) +{ + AlterDomainStmt *newnode = makeNode(AlterDomainStmt); + + COPY_SCALAR_FIELD(subtype); + COPY_NODE_FIELD(typeName); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(def); + COPY_SCALAR_FIELD(behavior); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static GrantStmt * +_copyGrantStmt(const GrantStmt *from) +{ + GrantStmt *newnode = makeNode(GrantStmt); + + COPY_SCALAR_FIELD(is_grant); + COPY_SCALAR_FIELD(targtype); + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(objects); + COPY_NODE_FIELD(privileges); + COPY_NODE_FIELD(grantees); + COPY_SCALAR_FIELD(grant_option); + COPY_NODE_FIELD(grantor); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static ObjectWithArgs * +_copyObjectWithArgs(const ObjectWithArgs *from) +{ + ObjectWithArgs *newnode = makeNode(ObjectWithArgs); + + COPY_NODE_FIELD(objname); + COPY_NODE_FIELD(objargs); + COPY_NODE_FIELD(objfuncargs); + COPY_SCALAR_FIELD(args_unspecified); + + return newnode; +} + +static AccessPriv * +_copyAccessPriv(const AccessPriv *from) +{ + AccessPriv *newnode = makeNode(AccessPriv); + + COPY_STRING_FIELD(priv_name); + COPY_NODE_FIELD(cols); + + return newnode; +} + +static GrantRoleStmt * +_copyGrantRoleStmt(const GrantRoleStmt *from) +{ + GrantRoleStmt *newnode = makeNode(GrantRoleStmt); + + COPY_NODE_FIELD(granted_roles); + COPY_NODE_FIELD(grantee_roles); + COPY_SCALAR_FIELD(is_grant); + COPY_NODE_FIELD(opt); + COPY_NODE_FIELD(grantor); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static AlterDefaultPrivilegesStmt * +_copyAlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt *from) +{ + AlterDefaultPrivilegesStmt *newnode = makeNode(AlterDefaultPrivilegesStmt); + + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(action); + + return newnode; +} + +static CopyStmt * +_copyCopyStmt(const CopyStmt *from) +{ + CopyStmt *newnode = makeNode(CopyStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(query); + COPY_NODE_FIELD(attlist); + COPY_SCALAR_FIELD(is_from); + COPY_SCALAR_FIELD(is_program); + COPY_STRING_FIELD(filename); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(whereClause); + + return newnode; +} + +static VariableSetStmt * +_copyVariableSetStmt(const VariableSetStmt *from) +{ + VariableSetStmt *newnode = makeNode(VariableSetStmt); + + COPY_SCALAR_FIELD(kind); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(is_local); + + return newnode; +} + +static VariableShowStmt * +_copyVariableShowStmt(const VariableShowStmt *from) +{ + VariableShowStmt *newnode = makeNode(VariableShowStmt); + + COPY_STRING_FIELD(name); + + return newnode; +} + +static CreateStmt * +_copyCreateStmt(const CreateStmt *from) +{ + CreateStmt *newnode = makeNode(CreateStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(tableElts); + COPY_NODE_FIELD(inhRelations); + COPY_NODE_FIELD(partbound); + COPY_NODE_FIELD(partspec); + COPY_NODE_FIELD(ofTypename); + COPY_NODE_FIELD(constraints); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(oncommit); + COPY_STRING_FIELD(tablespacename); + COPY_STRING_FIELD(accessMethod); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static Constraint * +_copyConstraint(const Constraint *from) +{ + Constraint *newnode = makeNode(Constraint); + + COPY_SCALAR_FIELD(contype); + COPY_STRING_FIELD(conname); + COPY_SCALAR_FIELD(deferrable); + COPY_SCALAR_FIELD(initdeferred); + COPY_LOCATION_FIELD(location); + COPY_SCALAR_FIELD(is_no_inherit); + COPY_NODE_FIELD(raw_expr); + COPY_STRING_FIELD(cooked_expr); + COPY_SCALAR_FIELD(generated_when); + COPY_SCALAR_FIELD(nulls_not_distinct); + COPY_NODE_FIELD(keys); + COPY_NODE_FIELD(including); + COPY_NODE_FIELD(exclusions); + COPY_NODE_FIELD(options); + COPY_STRING_FIELD(indexname); + COPY_STRING_FIELD(indexspace); + COPY_SCALAR_FIELD(reset_default_tblspc); + COPY_STRING_FIELD(access_method); + COPY_NODE_FIELD(where_clause); + COPY_NODE_FIELD(pktable); + COPY_NODE_FIELD(fk_attrs); + COPY_NODE_FIELD(pk_attrs); + COPY_SCALAR_FIELD(fk_matchtype); + COPY_SCALAR_FIELD(fk_upd_action); + COPY_SCALAR_FIELD(fk_del_action); + COPY_NODE_FIELD(fk_del_set_cols); + COPY_NODE_FIELD(old_conpfeqop); + COPY_SCALAR_FIELD(old_pktable_oid); + COPY_SCALAR_FIELD(skip_validation); + COPY_SCALAR_FIELD(initially_valid); + + return newnode; +} + +static CreateTableSpaceStmt * +_copyCreateTableSpaceStmt(const CreateTableSpaceStmt *from) +{ + CreateTableSpaceStmt *newnode = makeNode(CreateTableSpaceStmt); + + COPY_STRING_FIELD(tablespacename); + COPY_NODE_FIELD(owner); + COPY_STRING_FIELD(location); + COPY_NODE_FIELD(options); + + return newnode; +} + +static DropTableSpaceStmt * +_copyDropTableSpaceStmt(const DropTableSpaceStmt *from) +{ + DropTableSpaceStmt *newnode = makeNode(DropTableSpaceStmt); + + COPY_STRING_FIELD(tablespacename); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static AlterTableSpaceOptionsStmt * +_copyAlterTableSpaceOptionsStmt(const AlterTableSpaceOptionsStmt *from) +{ + AlterTableSpaceOptionsStmt *newnode = makeNode(AlterTableSpaceOptionsStmt); + + COPY_STRING_FIELD(tablespacename); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(isReset); + + return newnode; +} + +static AlterTableMoveAllStmt * +_copyAlterTableMoveAllStmt(const AlterTableMoveAllStmt *from) +{ + AlterTableMoveAllStmt *newnode = makeNode(AlterTableMoveAllStmt); + + COPY_STRING_FIELD(orig_tablespacename); + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(roles); + COPY_STRING_FIELD(new_tablespacename); + COPY_SCALAR_FIELD(nowait); + + return newnode; +} + +static CreateExtensionStmt * +_copyCreateExtensionStmt(const CreateExtensionStmt *from) +{ + CreateExtensionStmt *newnode = makeNode(CreateExtensionStmt); + + COPY_STRING_FIELD(extname); + COPY_SCALAR_FIELD(if_not_exists); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterExtensionStmt * +_copyAlterExtensionStmt(const AlterExtensionStmt *from) +{ + AlterExtensionStmt *newnode = makeNode(AlterExtensionStmt); + + COPY_STRING_FIELD(extname); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterExtensionContentsStmt * +_copyAlterExtensionContentsStmt(const AlterExtensionContentsStmt *from) +{ + AlterExtensionContentsStmt *newnode = makeNode(AlterExtensionContentsStmt); + + COPY_STRING_FIELD(extname); + COPY_SCALAR_FIELD(action); + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(object); + + return newnode; +} + +static CreateFdwStmt * +_copyCreateFdwStmt(const CreateFdwStmt *from) +{ + CreateFdwStmt *newnode = makeNode(CreateFdwStmt); + + COPY_STRING_FIELD(fdwname); + COPY_NODE_FIELD(func_options); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterFdwStmt * +_copyAlterFdwStmt(const AlterFdwStmt *from) +{ + AlterFdwStmt *newnode = makeNode(AlterFdwStmt); + + COPY_STRING_FIELD(fdwname); + COPY_NODE_FIELD(func_options); + COPY_NODE_FIELD(options); + + return newnode; +} + +static CreateForeignServerStmt * +_copyCreateForeignServerStmt(const CreateForeignServerStmt *from) +{ + CreateForeignServerStmt *newnode = makeNode(CreateForeignServerStmt); + + COPY_STRING_FIELD(servername); + COPY_STRING_FIELD(servertype); + COPY_STRING_FIELD(version); + COPY_STRING_FIELD(fdwname); + COPY_SCALAR_FIELD(if_not_exists); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterForeignServerStmt * +_copyAlterForeignServerStmt(const AlterForeignServerStmt *from) +{ + AlterForeignServerStmt *newnode = makeNode(AlterForeignServerStmt); + + COPY_STRING_FIELD(servername); + COPY_STRING_FIELD(version); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(has_version); + + return newnode; +} + +static CreateForeignTableStmt * +_copyCreateForeignTableStmt(const CreateForeignTableStmt *from) +{ + CreateForeignTableStmt *newnode = makeNode(CreateForeignTableStmt); + + COPY_NODE_FIELD(base.relation); + COPY_NODE_FIELD(base.tableElts); + COPY_NODE_FIELD(base.inhRelations); + COPY_NODE_FIELD(base.partbound); + COPY_NODE_FIELD(base.partspec); + COPY_NODE_FIELD(base.ofTypename); + COPY_NODE_FIELD(base.constraints); + COPY_NODE_FIELD(base.options); + COPY_SCALAR_FIELD(base.oncommit); + COPY_STRING_FIELD(base.tablespacename); + COPY_STRING_FIELD(base.accessMethod); + COPY_SCALAR_FIELD(base.if_not_exists); + COPY_STRING_FIELD(servername); + COPY_NODE_FIELD(options); + + return newnode; +} + +static CreateUserMappingStmt * +_copyCreateUserMappingStmt(const CreateUserMappingStmt *from) +{ + CreateUserMappingStmt *newnode = makeNode(CreateUserMappingStmt); + + COPY_NODE_FIELD(user); + COPY_STRING_FIELD(servername); + COPY_SCALAR_FIELD(if_not_exists); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterUserMappingStmt * +_copyAlterUserMappingStmt(const AlterUserMappingStmt *from) +{ + AlterUserMappingStmt *newnode = makeNode(AlterUserMappingStmt); + + COPY_NODE_FIELD(user); + COPY_STRING_FIELD(servername); + COPY_NODE_FIELD(options); + + return newnode; +} + +static DropUserMappingStmt * +_copyDropUserMappingStmt(const DropUserMappingStmt *from) +{ + DropUserMappingStmt *newnode = makeNode(DropUserMappingStmt); + + COPY_NODE_FIELD(user); + COPY_STRING_FIELD(servername); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static ImportForeignSchemaStmt * +_copyImportForeignSchemaStmt(const ImportForeignSchemaStmt *from) +{ + ImportForeignSchemaStmt *newnode = makeNode(ImportForeignSchemaStmt); + + COPY_STRING_FIELD(server_name); + COPY_STRING_FIELD(remote_schema); + COPY_STRING_FIELD(local_schema); + COPY_SCALAR_FIELD(list_type); + COPY_NODE_FIELD(table_list); + COPY_NODE_FIELD(options); + + return newnode; +} + +static CreatePolicyStmt * +_copyCreatePolicyStmt(const CreatePolicyStmt *from) +{ + CreatePolicyStmt *newnode = makeNode(CreatePolicyStmt); + + COPY_STRING_FIELD(policy_name); + COPY_NODE_FIELD(table); + COPY_STRING_FIELD(cmd_name); + COPY_SCALAR_FIELD(permissive); + COPY_NODE_FIELD(roles); + COPY_NODE_FIELD(qual); + COPY_NODE_FIELD(with_check); + + return newnode; +} + +static AlterPolicyStmt * +_copyAlterPolicyStmt(const AlterPolicyStmt *from) +{ + AlterPolicyStmt *newnode = makeNode(AlterPolicyStmt); + + COPY_STRING_FIELD(policy_name); + COPY_NODE_FIELD(table); + COPY_NODE_FIELD(roles); + COPY_NODE_FIELD(qual); + COPY_NODE_FIELD(with_check); + + return newnode; +} + +static CreateAmStmt * +_copyCreateAmStmt(const CreateAmStmt *from) +{ + CreateAmStmt *newnode = makeNode(CreateAmStmt); + + COPY_STRING_FIELD(amname); + COPY_NODE_FIELD(handler_name); + COPY_SCALAR_FIELD(amtype); + + return newnode; +} + +static CreateTrigStmt * +_copyCreateTrigStmt(const CreateTrigStmt *from) +{ + CreateTrigStmt *newnode = makeNode(CreateTrigStmt); + + COPY_SCALAR_FIELD(replace); + COPY_SCALAR_FIELD(isconstraint); + COPY_STRING_FIELD(trigname); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(funcname); + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(row); + COPY_SCALAR_FIELD(timing); + COPY_SCALAR_FIELD(events); + COPY_NODE_FIELD(columns); + COPY_NODE_FIELD(whenClause); + COPY_NODE_FIELD(transitionRels); + COPY_SCALAR_FIELD(deferrable); + COPY_SCALAR_FIELD(initdeferred); + COPY_NODE_FIELD(constrrel); + + return newnode; +} + +static CreateEventTrigStmt * +_copyCreateEventTrigStmt(const CreateEventTrigStmt *from) +{ + CreateEventTrigStmt *newnode = makeNode(CreateEventTrigStmt); + + COPY_STRING_FIELD(trigname); + COPY_STRING_FIELD(eventname); + COPY_NODE_FIELD(whenclause); + COPY_NODE_FIELD(funcname); + + return newnode; +} + +static AlterEventTrigStmt * +_copyAlterEventTrigStmt(const AlterEventTrigStmt *from) +{ + AlterEventTrigStmt *newnode = makeNode(AlterEventTrigStmt); + + COPY_STRING_FIELD(trigname); + COPY_SCALAR_FIELD(tgenabled); + + return newnode; +} + +static CreatePLangStmt * +_copyCreatePLangStmt(const CreatePLangStmt *from) +{ + CreatePLangStmt *newnode = makeNode(CreatePLangStmt); + + COPY_SCALAR_FIELD(replace); + COPY_STRING_FIELD(plname); + COPY_NODE_FIELD(plhandler); + COPY_NODE_FIELD(plinline); + COPY_NODE_FIELD(plvalidator); + COPY_SCALAR_FIELD(pltrusted); + + return newnode; +} + +static CreateRoleStmt * +_copyCreateRoleStmt(const CreateRoleStmt *from) +{ + CreateRoleStmt *newnode = makeNode(CreateRoleStmt); + + COPY_SCALAR_FIELD(stmt_type); + COPY_STRING_FIELD(role); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterRoleStmt * +_copyAlterRoleStmt(const AlterRoleStmt *from) +{ + AlterRoleStmt *newnode = makeNode(AlterRoleStmt); + + COPY_NODE_FIELD(role); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(action); + + return newnode; +} + +static AlterRoleSetStmt * +_copyAlterRoleSetStmt(const AlterRoleSetStmt *from) +{ + AlterRoleSetStmt *newnode = makeNode(AlterRoleSetStmt); + + COPY_NODE_FIELD(role); + COPY_STRING_FIELD(database); + COPY_NODE_FIELD(setstmt); + + return newnode; +} + +static DropRoleStmt * +_copyDropRoleStmt(const DropRoleStmt *from) +{ + DropRoleStmt *newnode = makeNode(DropRoleStmt); + + COPY_NODE_FIELD(roles); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static CreateSeqStmt * +_copyCreateSeqStmt(const CreateSeqStmt *from) +{ + CreateSeqStmt *newnode = makeNode(CreateSeqStmt); + + COPY_NODE_FIELD(sequence); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(ownerId); + COPY_SCALAR_FIELD(for_identity); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static AlterSeqStmt * +_copyAlterSeqStmt(const AlterSeqStmt *from) +{ + AlterSeqStmt *newnode = makeNode(AlterSeqStmt); + + COPY_NODE_FIELD(sequence); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(for_identity); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static DefineStmt * +_copyDefineStmt(const DefineStmt *from) +{ + DefineStmt *newnode = makeNode(DefineStmt); + + COPY_SCALAR_FIELD(kind); + COPY_SCALAR_FIELD(oldstyle); + COPY_NODE_FIELD(defnames); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(definition); + COPY_SCALAR_FIELD(if_not_exists); + COPY_SCALAR_FIELD(replace); + + return newnode; +} + +static CreateDomainStmt * +_copyCreateDomainStmt(const CreateDomainStmt *from) +{ + CreateDomainStmt *newnode = makeNode(CreateDomainStmt); + + COPY_NODE_FIELD(domainname); + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(collClause); + COPY_NODE_FIELD(constraints); + + return newnode; +} + +static CreateOpClassStmt * +_copyCreateOpClassStmt(const CreateOpClassStmt *from) +{ + CreateOpClassStmt *newnode = makeNode(CreateOpClassStmt); + + COPY_NODE_FIELD(opclassname); + COPY_NODE_FIELD(opfamilyname); + COPY_STRING_FIELD(amname); + COPY_NODE_FIELD(datatype); + COPY_NODE_FIELD(items); + COPY_SCALAR_FIELD(isDefault); + + return newnode; +} + +static CreateOpClassItem * +_copyCreateOpClassItem(const CreateOpClassItem *from) +{ + CreateOpClassItem *newnode = makeNode(CreateOpClassItem); + + COPY_SCALAR_FIELD(itemtype); + COPY_NODE_FIELD(name); + COPY_SCALAR_FIELD(number); + COPY_NODE_FIELD(order_family); + COPY_NODE_FIELD(class_args); + COPY_NODE_FIELD(storedtype); + + return newnode; +} + +static CreateOpFamilyStmt * +_copyCreateOpFamilyStmt(const CreateOpFamilyStmt *from) +{ + CreateOpFamilyStmt *newnode = makeNode(CreateOpFamilyStmt); + + COPY_NODE_FIELD(opfamilyname); + COPY_STRING_FIELD(amname); + + return newnode; +} + +static AlterOpFamilyStmt * +_copyAlterOpFamilyStmt(const AlterOpFamilyStmt *from) +{ + AlterOpFamilyStmt *newnode = makeNode(AlterOpFamilyStmt); + + COPY_NODE_FIELD(opfamilyname); + COPY_STRING_FIELD(amname); + COPY_SCALAR_FIELD(isDrop); + COPY_NODE_FIELD(items); + + return newnode; +} + +static DropStmt * +_copyDropStmt(const DropStmt *from) +{ + DropStmt *newnode = makeNode(DropStmt); + + COPY_NODE_FIELD(objects); + COPY_SCALAR_FIELD(removeType); + COPY_SCALAR_FIELD(behavior); + COPY_SCALAR_FIELD(missing_ok); + COPY_SCALAR_FIELD(concurrent); + + return newnode; +} + +static TruncateStmt * +_copyTruncateStmt(const TruncateStmt *from) +{ + TruncateStmt *newnode = makeNode(TruncateStmt); + + COPY_NODE_FIELD(relations); + COPY_SCALAR_FIELD(restart_seqs); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static CommentStmt * +_copyCommentStmt(const CommentStmt *from) +{ + CommentStmt *newnode = makeNode(CommentStmt); + + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(object); + COPY_STRING_FIELD(comment); + + return newnode; +} + +static SecLabelStmt * +_copySecLabelStmt(const SecLabelStmt *from) +{ + SecLabelStmt *newnode = makeNode(SecLabelStmt); + + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(object); + COPY_STRING_FIELD(provider); + COPY_STRING_FIELD(label); + + return newnode; +} + +static DeclareCursorStmt * +_copyDeclareCursorStmt(const DeclareCursorStmt *from) +{ + DeclareCursorStmt *newnode = makeNode(DeclareCursorStmt); + + COPY_STRING_FIELD(portalname); + COPY_SCALAR_FIELD(options); + COPY_NODE_FIELD(query); + + return newnode; +} + +static ClosePortalStmt * +_copyClosePortalStmt(const ClosePortalStmt *from) +{ + ClosePortalStmt *newnode = makeNode(ClosePortalStmt); + + COPY_STRING_FIELD(portalname); + + return newnode; +} + +static FetchStmt * +_copyFetchStmt(const FetchStmt *from) +{ + FetchStmt *newnode = makeNode(FetchStmt); + + COPY_SCALAR_FIELD(direction); + COPY_SCALAR_FIELD(howMany); + COPY_STRING_FIELD(portalname); + COPY_SCALAR_FIELD(ismove); + + return newnode; +} + +static IndexStmt * +_copyIndexStmt(const IndexStmt *from) +{ + IndexStmt *newnode = makeNode(IndexStmt); + + COPY_STRING_FIELD(idxname); + COPY_NODE_FIELD(relation); + COPY_STRING_FIELD(accessMethod); + COPY_STRING_FIELD(tableSpace); + COPY_NODE_FIELD(indexParams); + COPY_NODE_FIELD(indexIncludingParams); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(excludeOpNames); + COPY_STRING_FIELD(idxcomment); + COPY_SCALAR_FIELD(indexOid); + COPY_SCALAR_FIELD(oldNumber); + COPY_SCALAR_FIELD(oldCreateSubid); + COPY_SCALAR_FIELD(oldFirstRelfilelocatorSubid); + COPY_SCALAR_FIELD(unique); + COPY_SCALAR_FIELD(nulls_not_distinct); + COPY_SCALAR_FIELD(primary); + COPY_SCALAR_FIELD(isconstraint); + COPY_SCALAR_FIELD(deferrable); + COPY_SCALAR_FIELD(initdeferred); + COPY_SCALAR_FIELD(transformed); + COPY_SCALAR_FIELD(concurrent); + COPY_SCALAR_FIELD(if_not_exists); + COPY_SCALAR_FIELD(reset_default_tblspc); + + return newnode; +} + +static CreateStatsStmt * +_copyCreateStatsStmt(const CreateStatsStmt *from) +{ + CreateStatsStmt *newnode = makeNode(CreateStatsStmt); + + COPY_NODE_FIELD(defnames); + COPY_NODE_FIELD(stat_types); + COPY_NODE_FIELD(exprs); + COPY_NODE_FIELD(relations); + COPY_STRING_FIELD(stxcomment); + COPY_SCALAR_FIELD(transformed); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static StatsElem * +_copyStatsElem(const StatsElem *from) +{ + StatsElem *newnode = makeNode(StatsElem); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(expr); + + return newnode; +} + +static AlterStatsStmt * +_copyAlterStatsStmt(const AlterStatsStmt *from) +{ + AlterStatsStmt *newnode = makeNode(AlterStatsStmt); + + COPY_NODE_FIELD(defnames); + COPY_SCALAR_FIELD(stxstattarget); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static CreateFunctionStmt * +_copyCreateFunctionStmt(const CreateFunctionStmt *from) +{ + CreateFunctionStmt *newnode = makeNode(CreateFunctionStmt); + + COPY_SCALAR_FIELD(is_procedure); + COPY_SCALAR_FIELD(replace); + COPY_NODE_FIELD(funcname); + COPY_NODE_FIELD(parameters); + COPY_NODE_FIELD(returnType); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(sql_body); + + return newnode; +} + +static FunctionParameter * +_copyFunctionParameter(const FunctionParameter *from) +{ + FunctionParameter *newnode = makeNode(FunctionParameter); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(argType); + COPY_SCALAR_FIELD(mode); + COPY_NODE_FIELD(defexpr); + + return newnode; +} + +static AlterFunctionStmt * +_copyAlterFunctionStmt(const AlterFunctionStmt *from) +{ + AlterFunctionStmt *newnode = makeNode(AlterFunctionStmt); + + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(func); + COPY_NODE_FIELD(actions); + + return newnode; +} + +static DoStmt * +_copyDoStmt(const DoStmt *from) +{ + DoStmt *newnode = makeNode(DoStmt); + + COPY_NODE_FIELD(args); + + return newnode; +} + +static CallStmt * +_copyCallStmt(const CallStmt *from) +{ + CallStmt *newnode = makeNode(CallStmt); + + COPY_NODE_FIELD(funccall); + COPY_NODE_FIELD(funcexpr); + COPY_NODE_FIELD(outargs); + + return newnode; +} + +static RenameStmt * +_copyRenameStmt(const RenameStmt *from) +{ + RenameStmt *newnode = makeNode(RenameStmt); + + COPY_SCALAR_FIELD(renameType); + COPY_SCALAR_FIELD(relationType); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(object); + COPY_STRING_FIELD(subname); + COPY_STRING_FIELD(newname); + COPY_SCALAR_FIELD(behavior); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static AlterObjectDependsStmt * +_copyAlterObjectDependsStmt(const AlterObjectDependsStmt *from) +{ + AlterObjectDependsStmt *newnode = makeNode(AlterObjectDependsStmt); + + COPY_SCALAR_FIELD(objectType); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(object); + COPY_NODE_FIELD(extname); + COPY_SCALAR_FIELD(remove); + + return newnode; +} + +static AlterObjectSchemaStmt * +_copyAlterObjectSchemaStmt(const AlterObjectSchemaStmt *from) +{ + AlterObjectSchemaStmt *newnode = makeNode(AlterObjectSchemaStmt); + + COPY_SCALAR_FIELD(objectType); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(object); + COPY_STRING_FIELD(newschema); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static AlterOwnerStmt * +_copyAlterOwnerStmt(const AlterOwnerStmt *from) +{ + AlterOwnerStmt *newnode = makeNode(AlterOwnerStmt); + + COPY_SCALAR_FIELD(objectType); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(object); + COPY_NODE_FIELD(newowner); + + return newnode; +} + +static AlterOperatorStmt * +_copyAlterOperatorStmt(const AlterOperatorStmt *from) +{ + AlterOperatorStmt *newnode = makeNode(AlterOperatorStmt); + + COPY_NODE_FIELD(opername); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterTypeStmt * +_copyAlterTypeStmt(const AlterTypeStmt *from) +{ + AlterTypeStmt *newnode = makeNode(AlterTypeStmt); + + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(options); + + return newnode; +} + +static RuleStmt * +_copyRuleStmt(const RuleStmt *from) +{ + RuleStmt *newnode = makeNode(RuleStmt); + + COPY_NODE_FIELD(relation); + COPY_STRING_FIELD(rulename); + COPY_NODE_FIELD(whereClause); + COPY_SCALAR_FIELD(event); + COPY_SCALAR_FIELD(instead); + COPY_NODE_FIELD(actions); + COPY_SCALAR_FIELD(replace); + + return newnode; +} + +static NotifyStmt * +_copyNotifyStmt(const NotifyStmt *from) +{ + NotifyStmt *newnode = makeNode(NotifyStmt); + + COPY_STRING_FIELD(conditionname); + COPY_STRING_FIELD(payload); + + return newnode; +} + +static ListenStmt * +_copyListenStmt(const ListenStmt *from) +{ + ListenStmt *newnode = makeNode(ListenStmt); + + COPY_STRING_FIELD(conditionname); + + return newnode; +} + +static UnlistenStmt * +_copyUnlistenStmt(const UnlistenStmt *from) +{ + UnlistenStmt *newnode = makeNode(UnlistenStmt); + + COPY_STRING_FIELD(conditionname); + + return newnode; +} + +static TransactionStmt * +_copyTransactionStmt(const TransactionStmt *from) +{ + TransactionStmt *newnode = makeNode(TransactionStmt); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(options); + COPY_STRING_FIELD(savepoint_name); + COPY_STRING_FIELD(gid); + COPY_SCALAR_FIELD(chain); + + return newnode; +} + +static CompositeTypeStmt * +_copyCompositeTypeStmt(const CompositeTypeStmt *from) +{ + CompositeTypeStmt *newnode = makeNode(CompositeTypeStmt); + + COPY_NODE_FIELD(typevar); + COPY_NODE_FIELD(coldeflist); + + return newnode; +} + +static CreateEnumStmt * +_copyCreateEnumStmt(const CreateEnumStmt *from) +{ + CreateEnumStmt *newnode = makeNode(CreateEnumStmt); + + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(vals); + + return newnode; +} + +static CreateRangeStmt * +_copyCreateRangeStmt(const CreateRangeStmt *from) +{ + CreateRangeStmt *newnode = makeNode(CreateRangeStmt); + + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(params); + + return newnode; +} + +static AlterEnumStmt * +_copyAlterEnumStmt(const AlterEnumStmt *from) +{ + AlterEnumStmt *newnode = makeNode(AlterEnumStmt); + + COPY_NODE_FIELD(typeName); + COPY_STRING_FIELD(oldVal); + COPY_STRING_FIELD(newVal); + COPY_STRING_FIELD(newValNeighbor); + COPY_SCALAR_FIELD(newValIsAfter); + COPY_SCALAR_FIELD(skipIfNewValExists); + + return newnode; +} + +static ViewStmt * +_copyViewStmt(const ViewStmt *from) +{ + ViewStmt *newnode = makeNode(ViewStmt); + + COPY_NODE_FIELD(view); + COPY_NODE_FIELD(aliases); + COPY_NODE_FIELD(query); + COPY_SCALAR_FIELD(replace); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(withCheckOption); + + return newnode; +} + +static LoadStmt * +_copyLoadStmt(const LoadStmt *from) +{ + LoadStmt *newnode = makeNode(LoadStmt); + + COPY_STRING_FIELD(filename); + + return newnode; +} + +static CreatedbStmt * +_copyCreatedbStmt(const CreatedbStmt *from) +{ + CreatedbStmt *newnode = makeNode(CreatedbStmt); + + COPY_STRING_FIELD(dbname); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterDatabaseStmt * +_copyAlterDatabaseStmt(const AlterDatabaseStmt *from) +{ + AlterDatabaseStmt *newnode = makeNode(AlterDatabaseStmt); + + COPY_STRING_FIELD(dbname); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterDatabaseRefreshCollStmt * +_copyAlterDatabaseRefreshCollStmt(const AlterDatabaseRefreshCollStmt *from) +{ + AlterDatabaseRefreshCollStmt *newnode = makeNode(AlterDatabaseRefreshCollStmt); + + COPY_STRING_FIELD(dbname); + + return newnode; +} + +static AlterDatabaseSetStmt * +_copyAlterDatabaseSetStmt(const AlterDatabaseSetStmt *from) +{ + AlterDatabaseSetStmt *newnode = makeNode(AlterDatabaseSetStmt); + + COPY_STRING_FIELD(dbname); + COPY_NODE_FIELD(setstmt); + + return newnode; +} + +static DropdbStmt * +_copyDropdbStmt(const DropdbStmt *from) +{ + DropdbStmt *newnode = makeNode(DropdbStmt); + + COPY_STRING_FIELD(dbname); + COPY_SCALAR_FIELD(missing_ok); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterSystemStmt * +_copyAlterSystemStmt(const AlterSystemStmt *from) +{ + AlterSystemStmt *newnode = makeNode(AlterSystemStmt); + + COPY_NODE_FIELD(setstmt); + + return newnode; +} + +static ClusterStmt * +_copyClusterStmt(const ClusterStmt *from) +{ + ClusterStmt *newnode = makeNode(ClusterStmt); + + COPY_NODE_FIELD(relation); + COPY_STRING_FIELD(indexname); + COPY_NODE_FIELD(params); + + return newnode; +} + +static VacuumStmt * +_copyVacuumStmt(const VacuumStmt *from) +{ + VacuumStmt *newnode = makeNode(VacuumStmt); + + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(rels); + COPY_SCALAR_FIELD(is_vacuumcmd); + + return newnode; +} + +static VacuumRelation * +_copyVacuumRelation(const VacuumRelation *from) +{ + VacuumRelation *newnode = makeNode(VacuumRelation); + + COPY_NODE_FIELD(relation); + COPY_SCALAR_FIELD(oid); + COPY_NODE_FIELD(va_cols); + + return newnode; +} + +static ExplainStmt * +_copyExplainStmt(const ExplainStmt *from) +{ + ExplainStmt *newnode = makeNode(ExplainStmt); + + COPY_NODE_FIELD(query); + COPY_NODE_FIELD(options); + + return newnode; +} + +static CreateTableAsStmt * +_copyCreateTableAsStmt(const CreateTableAsStmt *from) +{ + CreateTableAsStmt *newnode = makeNode(CreateTableAsStmt); + + COPY_NODE_FIELD(query); + COPY_NODE_FIELD(into); + COPY_SCALAR_FIELD(objtype); + COPY_SCALAR_FIELD(is_select_into); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static RefreshMatViewStmt * +_copyRefreshMatViewStmt(const RefreshMatViewStmt *from) +{ + RefreshMatViewStmt *newnode = makeNode(RefreshMatViewStmt); + + COPY_SCALAR_FIELD(concurrent); + COPY_SCALAR_FIELD(skipData); + COPY_NODE_FIELD(relation); + + return newnode; +} + +static CheckPointStmt * +_copyCheckPointStmt(const CheckPointStmt *from) +{ + CheckPointStmt *newnode = makeNode(CheckPointStmt); + + + return newnode; +} + +static DiscardStmt * +_copyDiscardStmt(const DiscardStmt *from) +{ + DiscardStmt *newnode = makeNode(DiscardStmt); + + COPY_SCALAR_FIELD(target); + + return newnode; +} + +static LockStmt * +_copyLockStmt(const LockStmt *from) +{ + LockStmt *newnode = makeNode(LockStmt); + + COPY_NODE_FIELD(relations); + COPY_SCALAR_FIELD(mode); + COPY_SCALAR_FIELD(nowait); + + return newnode; +} + +static ConstraintsSetStmt * +_copyConstraintsSetStmt(const ConstraintsSetStmt *from) +{ + ConstraintsSetStmt *newnode = makeNode(ConstraintsSetStmt); + + COPY_NODE_FIELD(constraints); + COPY_SCALAR_FIELD(deferred); + + return newnode; +} + +static ReindexStmt * +_copyReindexStmt(const ReindexStmt *from) +{ + ReindexStmt *newnode = makeNode(ReindexStmt); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(relation); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(params); + + return newnode; +} + +static CreateConversionStmt * +_copyCreateConversionStmt(const CreateConversionStmt *from) +{ + CreateConversionStmt *newnode = makeNode(CreateConversionStmt); + + COPY_NODE_FIELD(conversion_name); + COPY_STRING_FIELD(for_encoding_name); + COPY_STRING_FIELD(to_encoding_name); + COPY_NODE_FIELD(func_name); + COPY_SCALAR_FIELD(def); + + return newnode; +} + +static CreateCastStmt * +_copyCreateCastStmt(const CreateCastStmt *from) +{ + CreateCastStmt *newnode = makeNode(CreateCastStmt); + + COPY_NODE_FIELD(sourcetype); + COPY_NODE_FIELD(targettype); + COPY_NODE_FIELD(func); + COPY_SCALAR_FIELD(context); + COPY_SCALAR_FIELD(inout); + + return newnode; +} + +static CreateTransformStmt * +_copyCreateTransformStmt(const CreateTransformStmt *from) +{ + CreateTransformStmt *newnode = makeNode(CreateTransformStmt); + + COPY_SCALAR_FIELD(replace); + COPY_NODE_FIELD(type_name); + COPY_STRING_FIELD(lang); + COPY_NODE_FIELD(fromsql); + COPY_NODE_FIELD(tosql); + + return newnode; +} + +static PrepareStmt * +_copyPrepareStmt(const PrepareStmt *from) +{ + PrepareStmt *newnode = makeNode(PrepareStmt); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(argtypes); + COPY_NODE_FIELD(query); + + return newnode; +} + +static ExecuteStmt * +_copyExecuteStmt(const ExecuteStmt *from) +{ + ExecuteStmt *newnode = makeNode(ExecuteStmt); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(params); + + return newnode; +} + +static DeallocateStmt * +_copyDeallocateStmt(const DeallocateStmt *from) +{ + DeallocateStmt *newnode = makeNode(DeallocateStmt); + + COPY_STRING_FIELD(name); + + return newnode; +} + +static DropOwnedStmt * +_copyDropOwnedStmt(const DropOwnedStmt *from) +{ + DropOwnedStmt *newnode = makeNode(DropOwnedStmt); + + COPY_NODE_FIELD(roles); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static ReassignOwnedStmt * +_copyReassignOwnedStmt(const ReassignOwnedStmt *from) +{ + ReassignOwnedStmt *newnode = makeNode(ReassignOwnedStmt); + + COPY_NODE_FIELD(roles); + COPY_NODE_FIELD(newrole); + + return newnode; +} + +static AlterTSDictionaryStmt * +_copyAlterTSDictionaryStmt(const AlterTSDictionaryStmt *from) +{ + AlterTSDictionaryStmt *newnode = makeNode(AlterTSDictionaryStmt); + + COPY_NODE_FIELD(dictname); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterTSConfigurationStmt * +_copyAlterTSConfigurationStmt(const AlterTSConfigurationStmt *from) +{ + AlterTSConfigurationStmt *newnode = makeNode(AlterTSConfigurationStmt); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(cfgname); + COPY_NODE_FIELD(tokentype); + COPY_NODE_FIELD(dicts); + COPY_SCALAR_FIELD(override); + COPY_SCALAR_FIELD(replace); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static PublicationTable * +_copyPublicationTable(const PublicationTable *from) +{ + PublicationTable *newnode = makeNode(PublicationTable); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(columns); + + return newnode; +} + +static PublicationObjSpec * +_copyPublicationObjSpec(const PublicationObjSpec *from) +{ + PublicationObjSpec *newnode = makeNode(PublicationObjSpec); + + COPY_SCALAR_FIELD(pubobjtype); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(pubtable); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CreatePublicationStmt * +_copyCreatePublicationStmt(const CreatePublicationStmt *from) +{ + CreatePublicationStmt *newnode = makeNode(CreatePublicationStmt); + + COPY_STRING_FIELD(pubname); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(pubobjects); + COPY_SCALAR_FIELD(for_all_tables); + + return newnode; +} + +static AlterPublicationStmt * +_copyAlterPublicationStmt(const AlterPublicationStmt *from) +{ + AlterPublicationStmt *newnode = makeNode(AlterPublicationStmt); + + COPY_STRING_FIELD(pubname); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(pubobjects); + COPY_SCALAR_FIELD(for_all_tables); + COPY_SCALAR_FIELD(action); + + return newnode; +} + +static CreateSubscriptionStmt * +_copyCreateSubscriptionStmt(const CreateSubscriptionStmt *from) +{ + CreateSubscriptionStmt *newnode = makeNode(CreateSubscriptionStmt); + + COPY_STRING_FIELD(subname); + COPY_STRING_FIELD(conninfo); + COPY_NODE_FIELD(publication); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterSubscriptionStmt * +_copyAlterSubscriptionStmt(const AlterSubscriptionStmt *from) +{ + AlterSubscriptionStmt *newnode = makeNode(AlterSubscriptionStmt); + + COPY_SCALAR_FIELD(kind); + COPY_STRING_FIELD(subname); + COPY_STRING_FIELD(conninfo); + COPY_NODE_FIELD(publication); + COPY_NODE_FIELD(options); + + return newnode; +} + +static DropSubscriptionStmt * +_copyDropSubscriptionStmt(const DropSubscriptionStmt *from) +{ + DropSubscriptionStmt *newnode = makeNode(DropSubscriptionStmt); + + COPY_STRING_FIELD(subname); + COPY_SCALAR_FIELD(missing_ok); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static PathKey * +_copyPathKey(const PathKey *from) +{ + PathKey *newnode = makeNode(PathKey); + + COPY_SCALAR_FIELD(pk_eclass); + COPY_SCALAR_FIELD(pk_opfamily); + COPY_SCALAR_FIELD(pk_strategy); + COPY_SCALAR_FIELD(pk_nulls_first); + + return newnode; +} + +static RestrictInfo * +_copyRestrictInfo(const RestrictInfo *from) +{ + RestrictInfo *newnode = makeNode(RestrictInfo); + + COPY_NODE_FIELD(clause); + COPY_SCALAR_FIELD(is_pushed_down); + COPY_SCALAR_FIELD(can_join); + COPY_SCALAR_FIELD(pseudoconstant); + COPY_SCALAR_FIELD(has_clone); + COPY_SCALAR_FIELD(is_clone); + COPY_SCALAR_FIELD(leakproof); + COPY_SCALAR_FIELD(has_volatile); + COPY_SCALAR_FIELD(security_level); + COPY_SCALAR_FIELD(num_base_rels); + COPY_BITMAPSET_FIELD(clause_relids); + COPY_BITMAPSET_FIELD(required_relids); + COPY_BITMAPSET_FIELD(incompatible_relids); + COPY_BITMAPSET_FIELD(outer_relids); + COPY_BITMAPSET_FIELD(left_relids); + COPY_BITMAPSET_FIELD(right_relids); + COPY_NODE_FIELD(orclause); + COPY_SCALAR_FIELD(rinfo_serial); + COPY_SCALAR_FIELD(parent_ec); + COPY_SCALAR_FIELD(eval_cost); + COPY_SCALAR_FIELD(norm_selec); + COPY_SCALAR_FIELD(outer_selec); + COPY_NODE_FIELD(mergeopfamilies); + COPY_SCALAR_FIELD(left_ec); + COPY_SCALAR_FIELD(right_ec); + COPY_SCALAR_FIELD(left_em); + COPY_SCALAR_FIELD(right_em); + newnode->scansel_cache = NIL; + COPY_SCALAR_FIELD(outer_is_left); + COPY_SCALAR_FIELD(hashjoinoperator); + COPY_SCALAR_FIELD(left_bucketsize); + COPY_SCALAR_FIELD(right_bucketsize); + COPY_SCALAR_FIELD(left_mcvfreq); + COPY_SCALAR_FIELD(right_mcvfreq); + COPY_SCALAR_FIELD(left_hasheqoperator); + COPY_SCALAR_FIELD(right_hasheqoperator); + + return newnode; +} + +static PlaceHolderVar * +_copyPlaceHolderVar(const PlaceHolderVar *from) +{ + PlaceHolderVar *newnode = makeNode(PlaceHolderVar); + + COPY_NODE_FIELD(phexpr); + COPY_BITMAPSET_FIELD(phrels); + COPY_BITMAPSET_FIELD(phnullingrels); + COPY_SCALAR_FIELD(phid); + COPY_SCALAR_FIELD(phlevelsup); + + return newnode; +} + +static SpecialJoinInfo * +_copySpecialJoinInfo(const SpecialJoinInfo *from) +{ + SpecialJoinInfo *newnode = makeNode(SpecialJoinInfo); + + COPY_BITMAPSET_FIELD(min_lefthand); + COPY_BITMAPSET_FIELD(min_righthand); + COPY_BITMAPSET_FIELD(syn_lefthand); + COPY_BITMAPSET_FIELD(syn_righthand); + COPY_SCALAR_FIELD(jointype); + COPY_SCALAR_FIELD(ojrelid); + COPY_BITMAPSET_FIELD(commute_above_l); + COPY_BITMAPSET_FIELD(commute_above_r); + COPY_BITMAPSET_FIELD(commute_below_l); + COPY_BITMAPSET_FIELD(commute_below_r); + COPY_SCALAR_FIELD(lhs_strict); + COPY_SCALAR_FIELD(semi_can_btree); + COPY_SCALAR_FIELD(semi_can_hash); + COPY_NODE_FIELD(semi_operators); + COPY_NODE_FIELD(semi_rhs_exprs); + + return newnode; +} + +static AppendRelInfo * +_copyAppendRelInfo(const AppendRelInfo *from) +{ + AppendRelInfo *newnode = makeNode(AppendRelInfo); + + COPY_SCALAR_FIELD(parent_relid); + COPY_SCALAR_FIELD(child_relid); + COPY_SCALAR_FIELD(parent_reltype); + COPY_SCALAR_FIELD(child_reltype); + COPY_NODE_FIELD(translated_vars); + COPY_SCALAR_FIELD(num_child_cols); + COPY_POINTER_FIELD(parent_colnos, from->num_child_cols * sizeof(AttrNumber)); + COPY_SCALAR_FIELD(parent_reloid); + + return newnode; +} + +static PlaceHolderInfo * +_copyPlaceHolderInfo(const PlaceHolderInfo *from) +{ + PlaceHolderInfo *newnode = makeNode(PlaceHolderInfo); + + COPY_SCALAR_FIELD(phid); + COPY_NODE_FIELD(ph_var); + COPY_BITMAPSET_FIELD(ph_eval_at); + COPY_BITMAPSET_FIELD(ph_lateral); + COPY_BITMAPSET_FIELD(ph_needed); + COPY_SCALAR_FIELD(ph_width); + + return newnode; +} + +static PlannedStmt * +_copyPlannedStmt(const PlannedStmt *from) +{ + PlannedStmt *newnode = makeNode(PlannedStmt); + + COPY_SCALAR_FIELD(commandType); + COPY_SCALAR_FIELD(queryId); + COPY_SCALAR_FIELD(hasReturning); + COPY_SCALAR_FIELD(hasModifyingCTE); + COPY_SCALAR_FIELD(canSetTag); + COPY_SCALAR_FIELD(transientPlan); + COPY_SCALAR_FIELD(dependsOnRole); + COPY_SCALAR_FIELD(parallelModeNeeded); + COPY_SCALAR_FIELD(jitFlags); + COPY_NODE_FIELD(planTree); + COPY_NODE_FIELD(rtable); + COPY_NODE_FIELD(permInfos); + COPY_NODE_FIELD(resultRelations); + COPY_NODE_FIELD(appendRelations); + COPY_NODE_FIELD(subplans); + COPY_BITMAPSET_FIELD(rewindPlanIDs); + COPY_NODE_FIELD(rowMarks); + COPY_NODE_FIELD(relationOids); + COPY_NODE_FIELD(invalItems); + COPY_NODE_FIELD(paramExecTypes); + COPY_NODE_FIELD(utilityStmt); + COPY_LOCATION_FIELD(stmt_location); + COPY_SCALAR_FIELD(stmt_len); + + return newnode; +} + +static Result * +_copyResult(const Result *from) +{ + Result *newnode = makeNode(Result); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(resconstantqual); + + return newnode; +} + +static ProjectSet * +_copyProjectSet(const ProjectSet *from) +{ + ProjectSet *newnode = makeNode(ProjectSet); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + + return newnode; +} + +static ModifyTable * +_copyModifyTable(const ModifyTable *from) +{ + ModifyTable *newnode = makeNode(ModifyTable); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(operation); + COPY_SCALAR_FIELD(canSetTag); + COPY_SCALAR_FIELD(nominalRelation); + COPY_SCALAR_FIELD(rootRelation); + COPY_SCALAR_FIELD(partColsUpdated); + COPY_NODE_FIELD(resultRelations); + COPY_NODE_FIELD(updateColnosLists); + COPY_NODE_FIELD(withCheckOptionLists); + COPY_NODE_FIELD(returningLists); + COPY_NODE_FIELD(fdwPrivLists); + COPY_BITMAPSET_FIELD(fdwDirectModifyPlans); + COPY_NODE_FIELD(rowMarks); + COPY_SCALAR_FIELD(epqParam); + COPY_SCALAR_FIELD(onConflictAction); + COPY_NODE_FIELD(arbiterIndexes); + COPY_NODE_FIELD(onConflictSet); + COPY_NODE_FIELD(onConflictCols); + COPY_NODE_FIELD(onConflictWhere); + COPY_SCALAR_FIELD(exclRelRTI); + COPY_NODE_FIELD(exclRelTlist); + COPY_NODE_FIELD(mergeActionLists); + + return newnode; +} + +static Append * +_copyAppend(const Append *from) +{ + Append *newnode = makeNode(Append); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_BITMAPSET_FIELD(apprelids); + COPY_NODE_FIELD(appendplans); + COPY_SCALAR_FIELD(nasyncplans); + COPY_SCALAR_FIELD(first_partial_plan); + COPY_NODE_FIELD(part_prune_info); + + return newnode; +} + +static MergeAppend * +_copyMergeAppend(const MergeAppend *from) +{ + MergeAppend *newnode = makeNode(MergeAppend); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_BITMAPSET_FIELD(apprelids); + COPY_NODE_FIELD(mergeplans); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(sortColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(sortOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(collations, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(nullsFirst, from->numCols * sizeof(bool)); + COPY_NODE_FIELD(part_prune_info); + + return newnode; +} + +static RecursiveUnion * +_copyRecursiveUnion(const RecursiveUnion *from) +{ + RecursiveUnion *newnode = makeNode(RecursiveUnion); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(wtParam); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(dupColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(dupOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(dupCollations, from->numCols * sizeof(Oid)); + COPY_SCALAR_FIELD(numGroups); + + return newnode; +} + +static BitmapAnd * +_copyBitmapAnd(const BitmapAnd *from) +{ + BitmapAnd *newnode = makeNode(BitmapAnd); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(bitmapplans); + + return newnode; +} + +static BitmapOr * +_copyBitmapOr(const BitmapOr *from) +{ + BitmapOr *newnode = makeNode(BitmapOr); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(isshared); + COPY_NODE_FIELD(bitmapplans); + + return newnode; +} + +static SeqScan * +_copySeqScan(const SeqScan *from) +{ + SeqScan *newnode = makeNode(SeqScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + + return newnode; +} + +static SampleScan * +_copySampleScan(const SampleScan *from) +{ + SampleScan *newnode = makeNode(SampleScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(tablesample); + + return newnode; +} + +static IndexScan * +_copyIndexScan(const IndexScan *from) +{ + IndexScan *newnode = makeNode(IndexScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(indexid); + COPY_NODE_FIELD(indexqual); + COPY_NODE_FIELD(indexqualorig); + COPY_NODE_FIELD(indexorderby); + COPY_NODE_FIELD(indexorderbyorig); + COPY_NODE_FIELD(indexorderbyops); + COPY_SCALAR_FIELD(indexorderdir); + + return newnode; +} + +static IndexOnlyScan * +_copyIndexOnlyScan(const IndexOnlyScan *from) +{ + IndexOnlyScan *newnode = makeNode(IndexOnlyScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(indexid); + COPY_NODE_FIELD(indexqual); + COPY_NODE_FIELD(recheckqual); + COPY_NODE_FIELD(indexorderby); + COPY_NODE_FIELD(indextlist); + COPY_SCALAR_FIELD(indexorderdir); + + return newnode; +} + +static BitmapIndexScan * +_copyBitmapIndexScan(const BitmapIndexScan *from) +{ + BitmapIndexScan *newnode = makeNode(BitmapIndexScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(indexid); + COPY_SCALAR_FIELD(isshared); + COPY_NODE_FIELD(indexqual); + COPY_NODE_FIELD(indexqualorig); + + return newnode; +} + +static BitmapHeapScan * +_copyBitmapHeapScan(const BitmapHeapScan *from) +{ + BitmapHeapScan *newnode = makeNode(BitmapHeapScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(bitmapqualorig); + + return newnode; +} + +static TidScan * +_copyTidScan(const TidScan *from) +{ + TidScan *newnode = makeNode(TidScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(tidquals); + + return newnode; +} + +static TidRangeScan * +_copyTidRangeScan(const TidRangeScan *from) +{ + TidRangeScan *newnode = makeNode(TidRangeScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(tidrangequals); + + return newnode; +} + +static SubqueryScan * +_copySubqueryScan(const SubqueryScan *from) +{ + SubqueryScan *newnode = makeNode(SubqueryScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(subplan); + COPY_SCALAR_FIELD(scanstatus); + + return newnode; +} + +static FunctionScan * +_copyFunctionScan(const FunctionScan *from) +{ + FunctionScan *newnode = makeNode(FunctionScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(functions); + COPY_SCALAR_FIELD(funcordinality); + + return newnode; +} + +static ValuesScan * +_copyValuesScan(const ValuesScan *from) +{ + ValuesScan *newnode = makeNode(ValuesScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(values_lists); + + return newnode; +} + +static TableFuncScan * +_copyTableFuncScan(const TableFuncScan *from) +{ + TableFuncScan *newnode = makeNode(TableFuncScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(tablefunc); + + return newnode; +} + +static CteScan * +_copyCteScan(const CteScan *from) +{ + CteScan *newnode = makeNode(CteScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(ctePlanId); + COPY_SCALAR_FIELD(cteParam); + + return newnode; +} + +static NamedTuplestoreScan * +_copyNamedTuplestoreScan(const NamedTuplestoreScan *from) +{ + NamedTuplestoreScan *newnode = makeNode(NamedTuplestoreScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_STRING_FIELD(enrname); + + return newnode; +} + +static WorkTableScan * +_copyWorkTableScan(const WorkTableScan *from) +{ + WorkTableScan *newnode = makeNode(WorkTableScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(wtParam); + + return newnode; +} + +static ForeignScan * +_copyForeignScan(const ForeignScan *from) +{ + ForeignScan *newnode = makeNode(ForeignScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(operation); + COPY_SCALAR_FIELD(resultRelation); + COPY_SCALAR_FIELD(checkAsUser); + COPY_SCALAR_FIELD(fs_server); + COPY_NODE_FIELD(fdw_exprs); + COPY_NODE_FIELD(fdw_private); + COPY_NODE_FIELD(fdw_scan_tlist); + COPY_NODE_FIELD(fdw_recheck_quals); + COPY_BITMAPSET_FIELD(fs_relids); + COPY_BITMAPSET_FIELD(fs_base_relids); + COPY_SCALAR_FIELD(fsSystemCol); + + return newnode; +} + +static CustomScan * +_copyCustomScan(const CustomScan *from) +{ + CustomScan *newnode = makeNode(CustomScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(flags); + COPY_NODE_FIELD(custom_plans); + COPY_NODE_FIELD(custom_exprs); + COPY_NODE_FIELD(custom_private); + COPY_NODE_FIELD(custom_scan_tlist); + COPY_BITMAPSET_FIELD(custom_relids); + COPY_SCALAR_FIELD(methods); + + return newnode; +} + +static NestLoop * +_copyNestLoop(const NestLoop *from) +{ + NestLoop *newnode = makeNode(NestLoop); + + COPY_SCALAR_FIELD(join.plan.startup_cost); + COPY_SCALAR_FIELD(join.plan.total_cost); + COPY_SCALAR_FIELD(join.plan.plan_rows); + COPY_SCALAR_FIELD(join.plan.plan_width); + COPY_SCALAR_FIELD(join.plan.parallel_aware); + COPY_SCALAR_FIELD(join.plan.parallel_safe); + COPY_SCALAR_FIELD(join.plan.async_capable); + COPY_SCALAR_FIELD(join.plan.plan_node_id); + COPY_NODE_FIELD(join.plan.targetlist); + COPY_NODE_FIELD(join.plan.qual); + COPY_NODE_FIELD(join.plan.lefttree); + COPY_NODE_FIELD(join.plan.righttree); + COPY_NODE_FIELD(join.plan.initPlan); + COPY_BITMAPSET_FIELD(join.plan.extParam); + COPY_BITMAPSET_FIELD(join.plan.allParam); + COPY_SCALAR_FIELD(join.jointype); + COPY_SCALAR_FIELD(join.inner_unique); + COPY_NODE_FIELD(join.joinqual); + COPY_NODE_FIELD(nestParams); + + return newnode; +} + +static NestLoopParam * +_copyNestLoopParam(const NestLoopParam *from) +{ + NestLoopParam *newnode = makeNode(NestLoopParam); + + COPY_SCALAR_FIELD(paramno); + COPY_NODE_FIELD(paramval); + + return newnode; +} + +static MergeJoin * +_copyMergeJoin(const MergeJoin *from) +{ + MergeJoin *newnode = makeNode(MergeJoin); + + COPY_SCALAR_FIELD(join.plan.startup_cost); + COPY_SCALAR_FIELD(join.plan.total_cost); + COPY_SCALAR_FIELD(join.plan.plan_rows); + COPY_SCALAR_FIELD(join.plan.plan_width); + COPY_SCALAR_FIELD(join.plan.parallel_aware); + COPY_SCALAR_FIELD(join.plan.parallel_safe); + COPY_SCALAR_FIELD(join.plan.async_capable); + COPY_SCALAR_FIELD(join.plan.plan_node_id); + COPY_NODE_FIELD(join.plan.targetlist); + COPY_NODE_FIELD(join.plan.qual); + COPY_NODE_FIELD(join.plan.lefttree); + COPY_NODE_FIELD(join.plan.righttree); + COPY_NODE_FIELD(join.plan.initPlan); + COPY_BITMAPSET_FIELD(join.plan.extParam); + COPY_BITMAPSET_FIELD(join.plan.allParam); + COPY_SCALAR_FIELD(join.jointype); + COPY_SCALAR_FIELD(join.inner_unique); + COPY_NODE_FIELD(join.joinqual); + COPY_SCALAR_FIELD(skip_mark_restore); + COPY_NODE_FIELD(mergeclauses); + COPY_POINTER_FIELD(mergeFamilies, list_length(from->mergeclauses) * sizeof(Oid)); + COPY_POINTER_FIELD(mergeCollations, list_length(from->mergeclauses) * sizeof(Oid)); + COPY_POINTER_FIELD(mergeStrategies, list_length(from->mergeclauses) * sizeof(int)); + COPY_POINTER_FIELD(mergeNullsFirst, list_length(from->mergeclauses) * sizeof(bool)); + + return newnode; +} + +static HashJoin * +_copyHashJoin(const HashJoin *from) +{ + HashJoin *newnode = makeNode(HashJoin); + + COPY_SCALAR_FIELD(join.plan.startup_cost); + COPY_SCALAR_FIELD(join.plan.total_cost); + COPY_SCALAR_FIELD(join.plan.plan_rows); + COPY_SCALAR_FIELD(join.plan.plan_width); + COPY_SCALAR_FIELD(join.plan.parallel_aware); + COPY_SCALAR_FIELD(join.plan.parallel_safe); + COPY_SCALAR_FIELD(join.plan.async_capable); + COPY_SCALAR_FIELD(join.plan.plan_node_id); + COPY_NODE_FIELD(join.plan.targetlist); + COPY_NODE_FIELD(join.plan.qual); + COPY_NODE_FIELD(join.plan.lefttree); + COPY_NODE_FIELD(join.plan.righttree); + COPY_NODE_FIELD(join.plan.initPlan); + COPY_BITMAPSET_FIELD(join.plan.extParam); + COPY_BITMAPSET_FIELD(join.plan.allParam); + COPY_SCALAR_FIELD(join.jointype); + COPY_SCALAR_FIELD(join.inner_unique); + COPY_NODE_FIELD(join.joinqual); + COPY_NODE_FIELD(hashclauses); + COPY_NODE_FIELD(hashoperators); + COPY_NODE_FIELD(hashcollations); + COPY_NODE_FIELD(hashkeys); + + return newnode; +} + +static Material * +_copyMaterial(const Material *from) +{ + Material *newnode = makeNode(Material); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + + return newnode; +} + +static Memoize * +_copyMemoize(const Memoize *from) +{ + Memoize *newnode = makeNode(Memoize); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(numKeys); + COPY_POINTER_FIELD(hashOperators, from->numKeys * sizeof(Oid)); + COPY_POINTER_FIELD(collations, from->numKeys * sizeof(Oid)); + COPY_NODE_FIELD(param_exprs); + COPY_SCALAR_FIELD(singlerow); + COPY_SCALAR_FIELD(binary_mode); + COPY_SCALAR_FIELD(est_entries); + COPY_BITMAPSET_FIELD(keyparamids); + + return newnode; +} + +static Sort * +_copySort(const Sort *from) +{ + Sort *newnode = makeNode(Sort); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(sortColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(sortOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(collations, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(nullsFirst, from->numCols * sizeof(bool)); + + return newnode; +} + +static IncrementalSort * +_copyIncrementalSort(const IncrementalSort *from) +{ + IncrementalSort *newnode = makeNode(IncrementalSort); + + COPY_SCALAR_FIELD(sort.plan.startup_cost); + COPY_SCALAR_FIELD(sort.plan.total_cost); + COPY_SCALAR_FIELD(sort.plan.plan_rows); + COPY_SCALAR_FIELD(sort.plan.plan_width); + COPY_SCALAR_FIELD(sort.plan.parallel_aware); + COPY_SCALAR_FIELD(sort.plan.parallel_safe); + COPY_SCALAR_FIELD(sort.plan.async_capable); + COPY_SCALAR_FIELD(sort.plan.plan_node_id); + COPY_NODE_FIELD(sort.plan.targetlist); + COPY_NODE_FIELD(sort.plan.qual); + COPY_NODE_FIELD(sort.plan.lefttree); + COPY_NODE_FIELD(sort.plan.righttree); + COPY_NODE_FIELD(sort.plan.initPlan); + COPY_BITMAPSET_FIELD(sort.plan.extParam); + COPY_BITMAPSET_FIELD(sort.plan.allParam); + COPY_SCALAR_FIELD(sort.numCols); + COPY_POINTER_FIELD(sort.sortColIdx, from->sort.numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(sort.sortOperators, from->sort.numCols * sizeof(Oid)); + COPY_POINTER_FIELD(sort.collations, from->sort.numCols * sizeof(Oid)); + COPY_POINTER_FIELD(sort.nullsFirst, from->sort.numCols * sizeof(bool)); + COPY_SCALAR_FIELD(nPresortedCols); + + return newnode; +} + +static Group * +_copyGroup(const Group *from) +{ + Group *newnode = makeNode(Group); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(grpColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(grpOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(grpCollations, from->numCols * sizeof(Oid)); + + return newnode; +} + +static Agg * +_copyAgg(const Agg *from) +{ + Agg *newnode = makeNode(Agg); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(aggstrategy); + COPY_SCALAR_FIELD(aggsplit); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(grpColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(grpOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(grpCollations, from->numCols * sizeof(Oid)); + COPY_SCALAR_FIELD(numGroups); + COPY_SCALAR_FIELD(transitionSpace); + COPY_BITMAPSET_FIELD(aggParams); + COPY_NODE_FIELD(groupingSets); + COPY_NODE_FIELD(chain); + + return newnode; +} + +static WindowAgg * +_copyWindowAgg(const WindowAgg *from) +{ + WindowAgg *newnode = makeNode(WindowAgg); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(winref); + COPY_SCALAR_FIELD(partNumCols); + COPY_POINTER_FIELD(partColIdx, from->partNumCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(partOperators, from->partNumCols * sizeof(Oid)); + COPY_POINTER_FIELD(partCollations, from->partNumCols * sizeof(Oid)); + COPY_SCALAR_FIELD(ordNumCols); + COPY_POINTER_FIELD(ordColIdx, from->ordNumCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(ordOperators, from->ordNumCols * sizeof(Oid)); + COPY_POINTER_FIELD(ordCollations, from->ordNumCols * sizeof(Oid)); + COPY_SCALAR_FIELD(frameOptions); + COPY_NODE_FIELD(startOffset); + COPY_NODE_FIELD(endOffset); + COPY_NODE_FIELD(runCondition); + COPY_NODE_FIELD(runConditionOrig); + COPY_SCALAR_FIELD(startInRangeFunc); + COPY_SCALAR_FIELD(endInRangeFunc); + COPY_SCALAR_FIELD(inRangeColl); + COPY_SCALAR_FIELD(inRangeAsc); + COPY_SCALAR_FIELD(inRangeNullsFirst); + COPY_SCALAR_FIELD(topWindow); + + return newnode; +} + +static Unique * +_copyUnique(const Unique *from) +{ + Unique *newnode = makeNode(Unique); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(uniqColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(uniqOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(uniqCollations, from->numCols * sizeof(Oid)); + + return newnode; +} + +static Gather * +_copyGather(const Gather *from) +{ + Gather *newnode = makeNode(Gather); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(num_workers); + COPY_SCALAR_FIELD(rescan_param); + COPY_SCALAR_FIELD(single_copy); + COPY_SCALAR_FIELD(invisible); + COPY_BITMAPSET_FIELD(initParam); + + return newnode; +} + +static GatherMerge * +_copyGatherMerge(const GatherMerge *from) +{ + GatherMerge *newnode = makeNode(GatherMerge); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(num_workers); + COPY_SCALAR_FIELD(rescan_param); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(sortColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(sortOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(collations, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(nullsFirst, from->numCols * sizeof(bool)); + COPY_BITMAPSET_FIELD(initParam); + + return newnode; +} + +static Hash * +_copyHash(const Hash *from) +{ + Hash *newnode = makeNode(Hash); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(hashkeys); + COPY_SCALAR_FIELD(skewTable); + COPY_SCALAR_FIELD(skewColumn); + COPY_SCALAR_FIELD(skewInherit); + COPY_SCALAR_FIELD(rows_total); + + return newnode; +} + +static SetOp * +_copySetOp(const SetOp *from) +{ + SetOp *newnode = makeNode(SetOp); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(cmd); + COPY_SCALAR_FIELD(strategy); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(dupColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(dupOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(dupCollations, from->numCols * sizeof(Oid)); + COPY_SCALAR_FIELD(flagColIdx); + COPY_SCALAR_FIELD(firstFlag); + COPY_SCALAR_FIELD(numGroups); + + return newnode; +} + +static LockRows * +_copyLockRows(const LockRows *from) +{ + LockRows *newnode = makeNode(LockRows); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(rowMarks); + COPY_SCALAR_FIELD(epqParam); + + return newnode; +} + +static Limit * +_copyLimit(const Limit *from) +{ + Limit *newnode = makeNode(Limit); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(limitOffset); + COPY_NODE_FIELD(limitCount); + COPY_SCALAR_FIELD(limitOption); + COPY_SCALAR_FIELD(uniqNumCols); + COPY_POINTER_FIELD(uniqColIdx, from->uniqNumCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(uniqOperators, from->uniqNumCols * sizeof(Oid)); + COPY_POINTER_FIELD(uniqCollations, from->uniqNumCols * sizeof(Oid)); + + return newnode; +} + +static PlanRowMark * +_copyPlanRowMark(const PlanRowMark *from) +{ + PlanRowMark *newnode = makeNode(PlanRowMark); + + COPY_SCALAR_FIELD(rti); + COPY_SCALAR_FIELD(prti); + COPY_SCALAR_FIELD(rowmarkId); + COPY_SCALAR_FIELD(markType); + COPY_SCALAR_FIELD(allMarkTypes); + COPY_SCALAR_FIELD(strength); + COPY_SCALAR_FIELD(waitPolicy); + COPY_SCALAR_FIELD(isParent); + + return newnode; +} + +static PartitionPruneInfo * +_copyPartitionPruneInfo(const PartitionPruneInfo *from) +{ + PartitionPruneInfo *newnode = makeNode(PartitionPruneInfo); + + COPY_NODE_FIELD(prune_infos); + COPY_BITMAPSET_FIELD(other_subplans); + + return newnode; +} + +static PartitionedRelPruneInfo * +_copyPartitionedRelPruneInfo(const PartitionedRelPruneInfo *from) +{ + PartitionedRelPruneInfo *newnode = makeNode(PartitionedRelPruneInfo); + + COPY_SCALAR_FIELD(rtindex); + COPY_BITMAPSET_FIELD(present_parts); + COPY_SCALAR_FIELD(nparts); + COPY_POINTER_FIELD(subplan_map, from->nparts * sizeof(int)); + COPY_POINTER_FIELD(subpart_map, from->nparts * sizeof(int)); + COPY_POINTER_FIELD(relid_map, from->nparts * sizeof(Oid)); + COPY_NODE_FIELD(initial_pruning_steps); + COPY_NODE_FIELD(exec_pruning_steps); + COPY_BITMAPSET_FIELD(execparamids); + + return newnode; +} + +static PartitionPruneStepOp * +_copyPartitionPruneStepOp(const PartitionPruneStepOp *from) +{ + PartitionPruneStepOp *newnode = makeNode(PartitionPruneStepOp); + + COPY_SCALAR_FIELD(step.step_id); + COPY_SCALAR_FIELD(opstrategy); + COPY_NODE_FIELD(exprs); + COPY_NODE_FIELD(cmpfns); + COPY_BITMAPSET_FIELD(nullkeys); + + return newnode; +} + +static PartitionPruneStepCombine * +_copyPartitionPruneStepCombine(const PartitionPruneStepCombine *from) +{ + PartitionPruneStepCombine *newnode = makeNode(PartitionPruneStepCombine); + + COPY_SCALAR_FIELD(step.step_id); + COPY_SCALAR_FIELD(combineOp); + COPY_NODE_FIELD(source_stepids); + + return newnode; +} + +static PlanInvalItem * +_copyPlanInvalItem(const PlanInvalItem *from) +{ + PlanInvalItem *newnode = makeNode(PlanInvalItem); + + COPY_SCALAR_FIELD(cacheId); + COPY_SCALAR_FIELD(hashValue); + + return newnode; +} + +static Integer * +_copyInteger(const Integer *from) +{ + Integer *newnode = makeNode(Integer); + + COPY_SCALAR_FIELD(ival); + + return newnode; +} + +static Float * +_copyFloat(const Float *from) +{ + Float *newnode = makeNode(Float); + + COPY_STRING_FIELD(fval); + + return newnode; +} + +static Boolean * +_copyBoolean(const Boolean *from) +{ + Boolean *newnode = makeNode(Boolean); + + COPY_SCALAR_FIELD(boolval); + + return newnode; +} + +static String * +_copyString(const String *from) +{ + String *newnode = makeNode(String); + + COPY_STRING_FIELD(sval); + + return newnode; +} + +static BitString * +_copyBitString(const BitString *from) +{ + BitString *newnode = makeNode(BitString); + + COPY_STRING_FIELD(bsval); + + return newnode; +} + +static ForeignKeyCacheInfo * +_copyForeignKeyCacheInfo(const ForeignKeyCacheInfo *from) +{ + ForeignKeyCacheInfo *newnode = makeNode(ForeignKeyCacheInfo); + + COPY_SCALAR_FIELD(conoid); + COPY_SCALAR_FIELD(conrelid); + COPY_SCALAR_FIELD(confrelid); + COPY_SCALAR_FIELD(nkeys); + COPY_ARRAY_FIELD(conkey); + COPY_ARRAY_FIELD(confkey); + COPY_ARRAY_FIELD(conpfeqop); + + return newnode; +} diff --git a/parser/include/copyfuncs.switch.c b/parser/include/copyfuncs.switch.c new file mode 100644 index 00000000..15404a40 --- /dev/null +++ b/parser/include/copyfuncs.switch.c @@ -0,0 +1,938 @@ +/*------------------------------------------------------------------------- + * + * copyfuncs.switch.c + * Generated node infrastructure code + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/nodes/gen_node_support.pl + * + *------------------------------------------------------------------------- + */ + case T_Alias: + retval = _copyAlias(from); + break; + case T_RangeVar: + retval = _copyRangeVar(from); + break; + case T_TableFunc: + retval = _copyTableFunc(from); + break; + case T_IntoClause: + retval = _copyIntoClause(from); + break; + case T_Var: + retval = _copyVar(from); + break; + case T_Const: + retval = _copyConst(from); + break; + case T_Param: + retval = _copyParam(from); + break; + case T_Aggref: + retval = _copyAggref(from); + break; + case T_GroupingFunc: + retval = _copyGroupingFunc(from); + break; + case T_WindowFunc: + retval = _copyWindowFunc(from); + break; + case T_SubscriptingRef: + retval = _copySubscriptingRef(from); + break; + case T_FuncExpr: + retval = _copyFuncExpr(from); + break; + case T_NamedArgExpr: + retval = _copyNamedArgExpr(from); + break; + case T_OpExpr: + retval = _copyOpExpr(from); + break; + case T_DistinctExpr: + retval = _copyDistinctExpr(from); + break; + case T_NullIfExpr: + retval = _copyNullIfExpr(from); + break; + case T_ScalarArrayOpExpr: + retval = _copyScalarArrayOpExpr(from); + break; + case T_BoolExpr: + retval = _copyBoolExpr(from); + break; + case T_SubLink: + retval = _copySubLink(from); + break; + case T_SubPlan: + retval = _copySubPlan(from); + break; + case T_AlternativeSubPlan: + retval = _copyAlternativeSubPlan(from); + break; + case T_FieldSelect: + retval = _copyFieldSelect(from); + break; + case T_FieldStore: + retval = _copyFieldStore(from); + break; + case T_RelabelType: + retval = _copyRelabelType(from); + break; + case T_CoerceViaIO: + retval = _copyCoerceViaIO(from); + break; + case T_ArrayCoerceExpr: + retval = _copyArrayCoerceExpr(from); + break; + case T_ConvertRowtypeExpr: + retval = _copyConvertRowtypeExpr(from); + break; + case T_CollateExpr: + retval = _copyCollateExpr(from); + break; + case T_CaseExpr: + retval = _copyCaseExpr(from); + break; + case T_CaseWhen: + retval = _copyCaseWhen(from); + break; + case T_CaseTestExpr: + retval = _copyCaseTestExpr(from); + break; + case T_ArrayExpr: + retval = _copyArrayExpr(from); + break; + case T_RowExpr: + retval = _copyRowExpr(from); + break; + case T_RowCompareExpr: + retval = _copyRowCompareExpr(from); + break; + case T_CoalesceExpr: + retval = _copyCoalesceExpr(from); + break; + case T_MinMaxExpr: + retval = _copyMinMaxExpr(from); + break; + case T_SQLValueFunction: + retval = _copySQLValueFunction(from); + break; + case T_XmlExpr: + retval = _copyXmlExpr(from); + break; + case T_JsonFormat: + retval = _copyJsonFormat(from); + break; + case T_JsonReturning: + retval = _copyJsonReturning(from); + break; + case T_JsonValueExpr: + retval = _copyJsonValueExpr(from); + break; + case T_JsonConstructorExpr: + retval = _copyJsonConstructorExpr(from); + break; + case T_JsonIsPredicate: + retval = _copyJsonIsPredicate(from); + break; + case T_NullTest: + retval = _copyNullTest(from); + break; + case T_BooleanTest: + retval = _copyBooleanTest(from); + break; + case T_CoerceToDomain: + retval = _copyCoerceToDomain(from); + break; + case T_CoerceToDomainValue: + retval = _copyCoerceToDomainValue(from); + break; + case T_SetToDefault: + retval = _copySetToDefault(from); + break; + case T_CurrentOfExpr: + retval = _copyCurrentOfExpr(from); + break; + case T_NextValueExpr: + retval = _copyNextValueExpr(from); + break; + case T_InferenceElem: + retval = _copyInferenceElem(from); + break; + case T_TargetEntry: + retval = _copyTargetEntry(from); + break; + case T_RangeTblRef: + retval = _copyRangeTblRef(from); + break; + case T_JoinExpr: + retval = _copyJoinExpr(from); + break; + case T_FromExpr: + retval = _copyFromExpr(from); + break; + case T_OnConflictExpr: + retval = _copyOnConflictExpr(from); + break; + case T_Query: + retval = _copyQuery(from); + break; + case T_TypeName: + retval = _copyTypeName(from); + break; + case T_ColumnRef: + retval = _copyColumnRef(from); + break; + case T_ParamRef: + retval = _copyParamRef(from); + break; + case T_A_Expr: + retval = _copyA_Expr(from); + break; + case T_A_Const: + retval = _copyA_Const(from); + break; + case T_TypeCast: + retval = _copyTypeCast(from); + break; + case T_CollateClause: + retval = _copyCollateClause(from); + break; + case T_RoleSpec: + retval = _copyRoleSpec(from); + break; + case T_FuncCall: + retval = _copyFuncCall(from); + break; + case T_A_Star: + retval = _copyA_Star(from); + break; + case T_A_Indices: + retval = _copyA_Indices(from); + break; + case T_A_Indirection: + retval = _copyA_Indirection(from); + break; + case T_A_ArrayExpr: + retval = _copyA_ArrayExpr(from); + break; + case T_ResTarget: + retval = _copyResTarget(from); + break; + case T_MultiAssignRef: + retval = _copyMultiAssignRef(from); + break; + case T_SortBy: + retval = _copySortBy(from); + break; + case T_WindowDef: + retval = _copyWindowDef(from); + break; + case T_RangeSubselect: + retval = _copyRangeSubselect(from); + break; + case T_RangeFunction: + retval = _copyRangeFunction(from); + break; + case T_RangeTableFunc: + retval = _copyRangeTableFunc(from); + break; + case T_RangeTableFuncCol: + retval = _copyRangeTableFuncCol(from); + break; + case T_RangeTableSample: + retval = _copyRangeTableSample(from); + break; + case T_ColumnDef: + retval = _copyColumnDef(from); + break; + case T_TableLikeClause: + retval = _copyTableLikeClause(from); + break; + case T_IndexElem: + retval = _copyIndexElem(from); + break; + case T_DefElem: + retval = _copyDefElem(from); + break; + case T_LockingClause: + retval = _copyLockingClause(from); + break; + case T_XmlSerialize: + retval = _copyXmlSerialize(from); + break; + case T_PartitionElem: + retval = _copyPartitionElem(from); + break; + case T_PartitionSpec: + retval = _copyPartitionSpec(from); + break; + case T_PartitionBoundSpec: + retval = _copyPartitionBoundSpec(from); + break; + case T_PartitionRangeDatum: + retval = _copyPartitionRangeDatum(from); + break; + case T_PartitionCmd: + retval = _copyPartitionCmd(from); + break; + case T_RangeTblEntry: + retval = _copyRangeTblEntry(from); + break; + case T_RTEPermissionInfo: + retval = _copyRTEPermissionInfo(from); + break; + case T_RangeTblFunction: + retval = _copyRangeTblFunction(from); + break; + case T_TableSampleClause: + retval = _copyTableSampleClause(from); + break; + case T_WithCheckOption: + retval = _copyWithCheckOption(from); + break; + case T_SortGroupClause: + retval = _copySortGroupClause(from); + break; + case T_GroupingSet: + retval = _copyGroupingSet(from); + break; + case T_WindowClause: + retval = _copyWindowClause(from); + break; + case T_RowMarkClause: + retval = _copyRowMarkClause(from); + break; + case T_WithClause: + retval = _copyWithClause(from); + break; + case T_InferClause: + retval = _copyInferClause(from); + break; + case T_OnConflictClause: + retval = _copyOnConflictClause(from); + break; + case T_CTESearchClause: + retval = _copyCTESearchClause(from); + break; + case T_CTECycleClause: + retval = _copyCTECycleClause(from); + break; + case T_CommonTableExpr: + retval = _copyCommonTableExpr(from); + break; + case T_MergeWhenClause: + retval = _copyMergeWhenClause(from); + break; + case T_MergeAction: + retval = _copyMergeAction(from); + break; + case T_TriggerTransition: + retval = _copyTriggerTransition(from); + break; + case T_JsonOutput: + retval = _copyJsonOutput(from); + break; + case T_JsonKeyValue: + retval = _copyJsonKeyValue(from); + break; + case T_JsonObjectConstructor: + retval = _copyJsonObjectConstructor(from); + break; + case T_JsonArrayConstructor: + retval = _copyJsonArrayConstructor(from); + break; + case T_JsonArrayQueryConstructor: + retval = _copyJsonArrayQueryConstructor(from); + break; + case T_JsonAggConstructor: + retval = _copyJsonAggConstructor(from); + break; + case T_JsonObjectAgg: + retval = _copyJsonObjectAgg(from); + break; + case T_JsonArrayAgg: + retval = _copyJsonArrayAgg(from); + break; + case T_RawStmt: + retval = _copyRawStmt(from); + break; + case T_InsertStmt: + retval = _copyInsertStmt(from); + break; + case T_DeleteStmt: + retval = _copyDeleteStmt(from); + break; + case T_UpdateStmt: + retval = _copyUpdateStmt(from); + break; + case T_MergeStmt: + retval = _copyMergeStmt(from); + break; + case T_SelectStmt: + retval = _copySelectStmt(from); + break; + case T_SetOperationStmt: + retval = _copySetOperationStmt(from); + break; + case T_ReturnStmt: + retval = _copyReturnStmt(from); + break; + case T_PLAssignStmt: + retval = _copyPLAssignStmt(from); + break; + case T_CreateSchemaStmt: + retval = _copyCreateSchemaStmt(from); + break; + case T_AlterTableStmt: + retval = _copyAlterTableStmt(from); + break; + case T_ReplicaIdentityStmt: + retval = _copyReplicaIdentityStmt(from); + break; + case T_AlterTableCmd: + retval = _copyAlterTableCmd(from); + break; + case T_AlterCollationStmt: + retval = _copyAlterCollationStmt(from); + break; + case T_AlterDomainStmt: + retval = _copyAlterDomainStmt(from); + break; + case T_GrantStmt: + retval = _copyGrantStmt(from); + break; + case T_ObjectWithArgs: + retval = _copyObjectWithArgs(from); + break; + case T_AccessPriv: + retval = _copyAccessPriv(from); + break; + case T_GrantRoleStmt: + retval = _copyGrantRoleStmt(from); + break; + case T_AlterDefaultPrivilegesStmt: + retval = _copyAlterDefaultPrivilegesStmt(from); + break; + case T_CopyStmt: + retval = _copyCopyStmt(from); + break; + case T_VariableSetStmt: + retval = _copyVariableSetStmt(from); + break; + case T_VariableShowStmt: + retval = _copyVariableShowStmt(from); + break; + case T_CreateStmt: + retval = _copyCreateStmt(from); + break; + case T_Constraint: + retval = _copyConstraint(from); + break; + case T_CreateTableSpaceStmt: + retval = _copyCreateTableSpaceStmt(from); + break; + case T_DropTableSpaceStmt: + retval = _copyDropTableSpaceStmt(from); + break; + case T_AlterTableSpaceOptionsStmt: + retval = _copyAlterTableSpaceOptionsStmt(from); + break; + case T_AlterTableMoveAllStmt: + retval = _copyAlterTableMoveAllStmt(from); + break; + case T_CreateExtensionStmt: + retval = _copyCreateExtensionStmt(from); + break; + case T_AlterExtensionStmt: + retval = _copyAlterExtensionStmt(from); + break; + case T_AlterExtensionContentsStmt: + retval = _copyAlterExtensionContentsStmt(from); + break; + case T_CreateFdwStmt: + retval = _copyCreateFdwStmt(from); + break; + case T_AlterFdwStmt: + retval = _copyAlterFdwStmt(from); + break; + case T_CreateForeignServerStmt: + retval = _copyCreateForeignServerStmt(from); + break; + case T_AlterForeignServerStmt: + retval = _copyAlterForeignServerStmt(from); + break; + case T_CreateForeignTableStmt: + retval = _copyCreateForeignTableStmt(from); + break; + case T_CreateUserMappingStmt: + retval = _copyCreateUserMappingStmt(from); + break; + case T_AlterUserMappingStmt: + retval = _copyAlterUserMappingStmt(from); + break; + case T_DropUserMappingStmt: + retval = _copyDropUserMappingStmt(from); + break; + case T_ImportForeignSchemaStmt: + retval = _copyImportForeignSchemaStmt(from); + break; + case T_CreatePolicyStmt: + retval = _copyCreatePolicyStmt(from); + break; + case T_AlterPolicyStmt: + retval = _copyAlterPolicyStmt(from); + break; + case T_CreateAmStmt: + retval = _copyCreateAmStmt(from); + break; + case T_CreateTrigStmt: + retval = _copyCreateTrigStmt(from); + break; + case T_CreateEventTrigStmt: + retval = _copyCreateEventTrigStmt(from); + break; + case T_AlterEventTrigStmt: + retval = _copyAlterEventTrigStmt(from); + break; + case T_CreatePLangStmt: + retval = _copyCreatePLangStmt(from); + break; + case T_CreateRoleStmt: + retval = _copyCreateRoleStmt(from); + break; + case T_AlterRoleStmt: + retval = _copyAlterRoleStmt(from); + break; + case T_AlterRoleSetStmt: + retval = _copyAlterRoleSetStmt(from); + break; + case T_DropRoleStmt: + retval = _copyDropRoleStmt(from); + break; + case T_CreateSeqStmt: + retval = _copyCreateSeqStmt(from); + break; + case T_AlterSeqStmt: + retval = _copyAlterSeqStmt(from); + break; + case T_DefineStmt: + retval = _copyDefineStmt(from); + break; + case T_CreateDomainStmt: + retval = _copyCreateDomainStmt(from); + break; + case T_CreateOpClassStmt: + retval = _copyCreateOpClassStmt(from); + break; + case T_CreateOpClassItem: + retval = _copyCreateOpClassItem(from); + break; + case T_CreateOpFamilyStmt: + retval = _copyCreateOpFamilyStmt(from); + break; + case T_AlterOpFamilyStmt: + retval = _copyAlterOpFamilyStmt(from); + break; + case T_DropStmt: + retval = _copyDropStmt(from); + break; + case T_TruncateStmt: + retval = _copyTruncateStmt(from); + break; + case T_CommentStmt: + retval = _copyCommentStmt(from); + break; + case T_SecLabelStmt: + retval = _copySecLabelStmt(from); + break; + case T_DeclareCursorStmt: + retval = _copyDeclareCursorStmt(from); + break; + case T_ClosePortalStmt: + retval = _copyClosePortalStmt(from); + break; + case T_FetchStmt: + retval = _copyFetchStmt(from); + break; + case T_IndexStmt: + retval = _copyIndexStmt(from); + break; + case T_CreateStatsStmt: + retval = _copyCreateStatsStmt(from); + break; + case T_StatsElem: + retval = _copyStatsElem(from); + break; + case T_AlterStatsStmt: + retval = _copyAlterStatsStmt(from); + break; + case T_CreateFunctionStmt: + retval = _copyCreateFunctionStmt(from); + break; + case T_FunctionParameter: + retval = _copyFunctionParameter(from); + break; + case T_AlterFunctionStmt: + retval = _copyAlterFunctionStmt(from); + break; + case T_DoStmt: + retval = _copyDoStmt(from); + break; + case T_CallStmt: + retval = _copyCallStmt(from); + break; + case T_RenameStmt: + retval = _copyRenameStmt(from); + break; + case T_AlterObjectDependsStmt: + retval = _copyAlterObjectDependsStmt(from); + break; + case T_AlterObjectSchemaStmt: + retval = _copyAlterObjectSchemaStmt(from); + break; + case T_AlterOwnerStmt: + retval = _copyAlterOwnerStmt(from); + break; + case T_AlterOperatorStmt: + retval = _copyAlterOperatorStmt(from); + break; + case T_AlterTypeStmt: + retval = _copyAlterTypeStmt(from); + break; + case T_RuleStmt: + retval = _copyRuleStmt(from); + break; + case T_NotifyStmt: + retval = _copyNotifyStmt(from); + break; + case T_ListenStmt: + retval = _copyListenStmt(from); + break; + case T_UnlistenStmt: + retval = _copyUnlistenStmt(from); + break; + case T_TransactionStmt: + retval = _copyTransactionStmt(from); + break; + case T_CompositeTypeStmt: + retval = _copyCompositeTypeStmt(from); + break; + case T_CreateEnumStmt: + retval = _copyCreateEnumStmt(from); + break; + case T_CreateRangeStmt: + retval = _copyCreateRangeStmt(from); + break; + case T_AlterEnumStmt: + retval = _copyAlterEnumStmt(from); + break; + case T_ViewStmt: + retval = _copyViewStmt(from); + break; + case T_LoadStmt: + retval = _copyLoadStmt(from); + break; + case T_CreatedbStmt: + retval = _copyCreatedbStmt(from); + break; + case T_AlterDatabaseStmt: + retval = _copyAlterDatabaseStmt(from); + break; + case T_AlterDatabaseRefreshCollStmt: + retval = _copyAlterDatabaseRefreshCollStmt(from); + break; + case T_AlterDatabaseSetStmt: + retval = _copyAlterDatabaseSetStmt(from); + break; + case T_DropdbStmt: + retval = _copyDropdbStmt(from); + break; + case T_AlterSystemStmt: + retval = _copyAlterSystemStmt(from); + break; + case T_ClusterStmt: + retval = _copyClusterStmt(from); + break; + case T_VacuumStmt: + retval = _copyVacuumStmt(from); + break; + case T_VacuumRelation: + retval = _copyVacuumRelation(from); + break; + case T_ExplainStmt: + retval = _copyExplainStmt(from); + break; + case T_CreateTableAsStmt: + retval = _copyCreateTableAsStmt(from); + break; + case T_RefreshMatViewStmt: + retval = _copyRefreshMatViewStmt(from); + break; + case T_CheckPointStmt: + retval = _copyCheckPointStmt(from); + break; + case T_DiscardStmt: + retval = _copyDiscardStmt(from); + break; + case T_LockStmt: + retval = _copyLockStmt(from); + break; + case T_ConstraintsSetStmt: + retval = _copyConstraintsSetStmt(from); + break; + case T_ReindexStmt: + retval = _copyReindexStmt(from); + break; + case T_CreateConversionStmt: + retval = _copyCreateConversionStmt(from); + break; + case T_CreateCastStmt: + retval = _copyCreateCastStmt(from); + break; + case T_CreateTransformStmt: + retval = _copyCreateTransformStmt(from); + break; + case T_PrepareStmt: + retval = _copyPrepareStmt(from); + break; + case T_ExecuteStmt: + retval = _copyExecuteStmt(from); + break; + case T_DeallocateStmt: + retval = _copyDeallocateStmt(from); + break; + case T_DropOwnedStmt: + retval = _copyDropOwnedStmt(from); + break; + case T_ReassignOwnedStmt: + retval = _copyReassignOwnedStmt(from); + break; + case T_AlterTSDictionaryStmt: + retval = _copyAlterTSDictionaryStmt(from); + break; + case T_AlterTSConfigurationStmt: + retval = _copyAlterTSConfigurationStmt(from); + break; + case T_PublicationTable: + retval = _copyPublicationTable(from); + break; + case T_PublicationObjSpec: + retval = _copyPublicationObjSpec(from); + break; + case T_CreatePublicationStmt: + retval = _copyCreatePublicationStmt(from); + break; + case T_AlterPublicationStmt: + retval = _copyAlterPublicationStmt(from); + break; + case T_CreateSubscriptionStmt: + retval = _copyCreateSubscriptionStmt(from); + break; + case T_AlterSubscriptionStmt: + retval = _copyAlterSubscriptionStmt(from); + break; + case T_DropSubscriptionStmt: + retval = _copyDropSubscriptionStmt(from); + break; + case T_PathKey: + retval = _copyPathKey(from); + break; + case T_RestrictInfo: + retval = _copyRestrictInfo(from); + break; + case T_PlaceHolderVar: + retval = _copyPlaceHolderVar(from); + break; + case T_SpecialJoinInfo: + retval = _copySpecialJoinInfo(from); + break; + case T_AppendRelInfo: + retval = _copyAppendRelInfo(from); + break; + case T_PlaceHolderInfo: + retval = _copyPlaceHolderInfo(from); + break; + case T_PlannedStmt: + retval = _copyPlannedStmt(from); + break; + case T_Result: + retval = _copyResult(from); + break; + case T_ProjectSet: + retval = _copyProjectSet(from); + break; + case T_ModifyTable: + retval = _copyModifyTable(from); + break; + case T_Append: + retval = _copyAppend(from); + break; + case T_MergeAppend: + retval = _copyMergeAppend(from); + break; + case T_RecursiveUnion: + retval = _copyRecursiveUnion(from); + break; + case T_BitmapAnd: + retval = _copyBitmapAnd(from); + break; + case T_BitmapOr: + retval = _copyBitmapOr(from); + break; + case T_SeqScan: + retval = _copySeqScan(from); + break; + case T_SampleScan: + retval = _copySampleScan(from); + break; + case T_IndexScan: + retval = _copyIndexScan(from); + break; + case T_IndexOnlyScan: + retval = _copyIndexOnlyScan(from); + break; + case T_BitmapIndexScan: + retval = _copyBitmapIndexScan(from); + break; + case T_BitmapHeapScan: + retval = _copyBitmapHeapScan(from); + break; + case T_TidScan: + retval = _copyTidScan(from); + break; + case T_TidRangeScan: + retval = _copyTidRangeScan(from); + break; + case T_SubqueryScan: + retval = _copySubqueryScan(from); + break; + case T_FunctionScan: + retval = _copyFunctionScan(from); + break; + case T_ValuesScan: + retval = _copyValuesScan(from); + break; + case T_TableFuncScan: + retval = _copyTableFuncScan(from); + break; + case T_CteScan: + retval = _copyCteScan(from); + break; + case T_NamedTuplestoreScan: + retval = _copyNamedTuplestoreScan(from); + break; + case T_WorkTableScan: + retval = _copyWorkTableScan(from); + break; + case T_ForeignScan: + retval = _copyForeignScan(from); + break; + case T_CustomScan: + retval = _copyCustomScan(from); + break; + case T_NestLoop: + retval = _copyNestLoop(from); + break; + case T_NestLoopParam: + retval = _copyNestLoopParam(from); + break; + case T_MergeJoin: + retval = _copyMergeJoin(from); + break; + case T_HashJoin: + retval = _copyHashJoin(from); + break; + case T_Material: + retval = _copyMaterial(from); + break; + case T_Memoize: + retval = _copyMemoize(from); + break; + case T_Sort: + retval = _copySort(from); + break; + case T_IncrementalSort: + retval = _copyIncrementalSort(from); + break; + case T_Group: + retval = _copyGroup(from); + break; + case T_Agg: + retval = _copyAgg(from); + break; + case T_WindowAgg: + retval = _copyWindowAgg(from); + break; + case T_Unique: + retval = _copyUnique(from); + break; + case T_Gather: + retval = _copyGather(from); + break; + case T_GatherMerge: + retval = _copyGatherMerge(from); + break; + case T_Hash: + retval = _copyHash(from); + break; + case T_SetOp: + retval = _copySetOp(from); + break; + case T_LockRows: + retval = _copyLockRows(from); + break; + case T_Limit: + retval = _copyLimit(from); + break; + case T_PlanRowMark: + retval = _copyPlanRowMark(from); + break; + case T_PartitionPruneInfo: + retval = _copyPartitionPruneInfo(from); + break; + case T_PartitionedRelPruneInfo: + retval = _copyPartitionedRelPruneInfo(from); + break; + case T_PartitionPruneStepOp: + retval = _copyPartitionPruneStepOp(from); + break; + case T_PartitionPruneStepCombine: + retval = _copyPartitionPruneStepCombine(from); + break; + case T_PlanInvalItem: + retval = _copyPlanInvalItem(from); + break; + case T_Bitmapset: + retval = _copyBitmapset(from); + break; + case T_ExtensibleNode: + retval = _copyExtensibleNode(from); + break; + case T_Integer: + retval = _copyInteger(from); + break; + case T_Float: + retval = _copyFloat(from); + break; + case T_Boolean: + retval = _copyBoolean(from); + break; + case T_String: + retval = _copyString(from); + break; + case T_BitString: + retval = _copyBitString(from); + break; + case T_ForeignKeyCacheInfo: + retval = _copyForeignKeyCacheInfo(from); + break; diff --git a/parser/include/datatype/timestamp.h b/parser/include/datatype/timestamp.h index d155f1b0..ab8ccf89 100644 --- a/parser/include/datatype/timestamp.h +++ b/parser/include/datatype/timestamp.h @@ -5,7 +5,7 @@ * * Note: this file must be includable in both frontend and backend contexts. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/datatype/timestamp.h @@ -143,10 +143,17 @@ struct pg_itm_in #define TZDISP_LIMIT ((MAX_TZDISP_HOUR + 1) * SECS_PER_HOUR) /* - * DT_NOBEGIN represents timestamp -infinity; DT_NOEND represents +infinity + * We reserve the minimum and maximum integer values to represent + * timestamp (or timestamptz) -infinity and +infinity. */ -#define DT_NOBEGIN PG_INT64_MIN -#define DT_NOEND PG_INT64_MAX +#define TIMESTAMP_MINUS_INFINITY PG_INT64_MIN +#define TIMESTAMP_INFINITY PG_INT64_MAX + +/* + * Historically these alias for infinity have been used. + */ +#define DT_NOBEGIN TIMESTAMP_MINUS_INFINITY +#define DT_NOEND TIMESTAMP_INFINITY #define TIMESTAMP_NOBEGIN(j) \ do {(j) = DT_NOBEGIN;} while (0) diff --git a/parser/include/equalfuncs.funcs.c b/parser/include/equalfuncs.funcs.c new file mode 100644 index 00000000..f65b2d6f --- /dev/null +++ b/parser/include/equalfuncs.funcs.c @@ -0,0 +1,3097 @@ +/*------------------------------------------------------------------------- + * + * equalfuncs.funcs.c + * Generated node infrastructure code + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/nodes/gen_node_support.pl + * + *------------------------------------------------------------------------- + */ +#include "access/amapi.h" +#include "access/sdir.h" +#include "access/tableam.h" +#include "access/tsmapi.h" +#include "commands/event_trigger.h" +#include "commands/trigger.h" +#include "executor/tuptable.h" +#include "foreign/fdwapi.h" +#include "nodes/bitmapset.h" +#include "nodes/execnodes.h" +#include "nodes/extensible.h" +#include "nodes/lockoptions.h" +#include "nodes/miscnodes.h" +#include "nodes/nodes.h" +#include "nodes/parsenodes.h" +#include "nodes/pathnodes.h" +#include "nodes/plannodes.h" +#include "nodes/primnodes.h" +#include "nodes/replnodes.h" +#include "nodes/supportnodes.h" +#include "nodes/value.h" +#include "utils/rel.h" + +static bool +_equalAlias(const Alias *a, const Alias *b) +{ + COMPARE_STRING_FIELD(aliasname); + COMPARE_NODE_FIELD(colnames); + + return true; +} + +static bool +_equalRangeVar(const RangeVar *a, const RangeVar *b) +{ + COMPARE_STRING_FIELD(catalogname); + COMPARE_STRING_FIELD(schemaname); + COMPARE_STRING_FIELD(relname); + COMPARE_SCALAR_FIELD(inh); + COMPARE_SCALAR_FIELD(relpersistence); + COMPARE_NODE_FIELD(alias); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalTableFunc(const TableFunc *a, const TableFunc *b) +{ + COMPARE_NODE_FIELD(ns_uris); + COMPARE_NODE_FIELD(ns_names); + COMPARE_NODE_FIELD(docexpr); + COMPARE_NODE_FIELD(rowexpr); + COMPARE_NODE_FIELD(colnames); + COMPARE_NODE_FIELD(coltypes); + COMPARE_NODE_FIELD(coltypmods); + COMPARE_NODE_FIELD(colcollations); + COMPARE_NODE_FIELD(colexprs); + COMPARE_NODE_FIELD(coldefexprs); + COMPARE_BITMAPSET_FIELD(notnulls); + COMPARE_SCALAR_FIELD(ordinalitycol); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalIntoClause(const IntoClause *a, const IntoClause *b) +{ + COMPARE_NODE_FIELD(rel); + COMPARE_NODE_FIELD(colNames); + COMPARE_STRING_FIELD(accessMethod); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(onCommit); + COMPARE_STRING_FIELD(tableSpaceName); + COMPARE_NODE_FIELD(viewQuery); + COMPARE_SCALAR_FIELD(skipData); + + return true; +} + +static bool +_equalVar(const Var *a, const Var *b) +{ + COMPARE_SCALAR_FIELD(varno); + COMPARE_SCALAR_FIELD(varattno); + COMPARE_SCALAR_FIELD(vartype); + COMPARE_SCALAR_FIELD(vartypmod); + COMPARE_SCALAR_FIELD(varcollid); + COMPARE_BITMAPSET_FIELD(varnullingrels); + COMPARE_SCALAR_FIELD(varlevelsup); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalParam(const Param *a, const Param *b) +{ + COMPARE_SCALAR_FIELD(paramkind); + COMPARE_SCALAR_FIELD(paramid); + COMPARE_SCALAR_FIELD(paramtype); + COMPARE_SCALAR_FIELD(paramtypmod); + COMPARE_SCALAR_FIELD(paramcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalAggref(const Aggref *a, const Aggref *b) +{ + COMPARE_SCALAR_FIELD(aggfnoid); + COMPARE_SCALAR_FIELD(aggtype); + COMPARE_SCALAR_FIELD(aggcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(aggargtypes); + COMPARE_NODE_FIELD(aggdirectargs); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(aggorder); + COMPARE_NODE_FIELD(aggdistinct); + COMPARE_NODE_FIELD(aggfilter); + COMPARE_SCALAR_FIELD(aggstar); + COMPARE_SCALAR_FIELD(aggvariadic); + COMPARE_SCALAR_FIELD(aggkind); + COMPARE_SCALAR_FIELD(agglevelsup); + COMPARE_SCALAR_FIELD(aggsplit); + COMPARE_SCALAR_FIELD(aggno); + COMPARE_SCALAR_FIELD(aggtransno); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalGroupingFunc(const GroupingFunc *a, const GroupingFunc *b) +{ + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(agglevelsup); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalWindowFunc(const WindowFunc *a, const WindowFunc *b) +{ + COMPARE_SCALAR_FIELD(winfnoid); + COMPARE_SCALAR_FIELD(wintype); + COMPARE_SCALAR_FIELD(wincollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(aggfilter); + COMPARE_SCALAR_FIELD(winref); + COMPARE_SCALAR_FIELD(winstar); + COMPARE_SCALAR_FIELD(winagg); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSubscriptingRef(const SubscriptingRef *a, const SubscriptingRef *b) +{ + COMPARE_SCALAR_FIELD(refcontainertype); + COMPARE_SCALAR_FIELD(refelemtype); + COMPARE_SCALAR_FIELD(refrestype); + COMPARE_SCALAR_FIELD(reftypmod); + COMPARE_SCALAR_FIELD(refcollid); + COMPARE_NODE_FIELD(refupperindexpr); + COMPARE_NODE_FIELD(reflowerindexpr); + COMPARE_NODE_FIELD(refexpr); + COMPARE_NODE_FIELD(refassgnexpr); + + return true; +} + +static bool +_equalFuncExpr(const FuncExpr *a, const FuncExpr *b) +{ + COMPARE_SCALAR_FIELD(funcid); + COMPARE_SCALAR_FIELD(funcresulttype); + COMPARE_SCALAR_FIELD(funcretset); + COMPARE_SCALAR_FIELD(funcvariadic); + COMPARE_SCALAR_FIELD(funccollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalNamedArgExpr(const NamedArgExpr *a, const NamedArgExpr *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_STRING_FIELD(name); + COMPARE_SCALAR_FIELD(argnumber); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalOpExpr(const OpExpr *a, const OpExpr *b) +{ + COMPARE_SCALAR_FIELD(opno); + if (a->opfuncid != b->opfuncid && a->opfuncid != 0 && b->opfuncid != 0) + return false; + COMPARE_SCALAR_FIELD(opresulttype); + COMPARE_SCALAR_FIELD(opretset); + COMPARE_SCALAR_FIELD(opcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalDistinctExpr(const DistinctExpr *a, const DistinctExpr *b) +{ + COMPARE_SCALAR_FIELD(opno); + if (a->opfuncid != b->opfuncid && a->opfuncid != 0 && b->opfuncid != 0) + return false; + COMPARE_SCALAR_FIELD(opresulttype); + COMPARE_SCALAR_FIELD(opretset); + COMPARE_SCALAR_FIELD(opcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalNullIfExpr(const NullIfExpr *a, const NullIfExpr *b) +{ + COMPARE_SCALAR_FIELD(opno); + if (a->opfuncid != b->opfuncid && a->opfuncid != 0 && b->opfuncid != 0) + return false; + COMPARE_SCALAR_FIELD(opresulttype); + COMPARE_SCALAR_FIELD(opretset); + COMPARE_SCALAR_FIELD(opcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalScalarArrayOpExpr(const ScalarArrayOpExpr *a, const ScalarArrayOpExpr *b) +{ + COMPARE_SCALAR_FIELD(opno); + if (a->opfuncid != b->opfuncid && a->opfuncid != 0 && b->opfuncid != 0) + return false; + if (a->hashfuncid != b->hashfuncid && a->hashfuncid != 0 && b->hashfuncid != 0) + return false; + if (a->negfuncid != b->negfuncid && a->negfuncid != 0 && b->negfuncid != 0) + return false; + COMPARE_SCALAR_FIELD(useOr); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalBoolExpr(const BoolExpr *a, const BoolExpr *b) +{ + COMPARE_SCALAR_FIELD(boolop); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSubLink(const SubLink *a, const SubLink *b) +{ + COMPARE_SCALAR_FIELD(subLinkType); + COMPARE_SCALAR_FIELD(subLinkId); + COMPARE_NODE_FIELD(testexpr); + COMPARE_NODE_FIELD(operName); + COMPARE_NODE_FIELD(subselect); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSubPlan(const SubPlan *a, const SubPlan *b) +{ + COMPARE_SCALAR_FIELD(subLinkType); + COMPARE_NODE_FIELD(testexpr); + COMPARE_NODE_FIELD(paramIds); + COMPARE_SCALAR_FIELD(plan_id); + COMPARE_STRING_FIELD(plan_name); + COMPARE_SCALAR_FIELD(firstColType); + COMPARE_SCALAR_FIELD(firstColTypmod); + COMPARE_SCALAR_FIELD(firstColCollation); + COMPARE_SCALAR_FIELD(useHashTable); + COMPARE_SCALAR_FIELD(unknownEqFalse); + COMPARE_SCALAR_FIELD(parallel_safe); + COMPARE_NODE_FIELD(setParam); + COMPARE_NODE_FIELD(parParam); + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(startup_cost); + COMPARE_SCALAR_FIELD(per_call_cost); + + return true; +} + +static bool +_equalAlternativeSubPlan(const AlternativeSubPlan *a, const AlternativeSubPlan *b) +{ + COMPARE_NODE_FIELD(subplans); + + return true; +} + +static bool +_equalFieldSelect(const FieldSelect *a, const FieldSelect *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(fieldnum); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resulttypmod); + COMPARE_SCALAR_FIELD(resultcollid); + + return true; +} + +static bool +_equalFieldStore(const FieldStore *a, const FieldStore *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(newvals); + COMPARE_NODE_FIELD(fieldnums); + COMPARE_SCALAR_FIELD(resulttype); + + return true; +} + +static bool +_equalRelabelType(const RelabelType *a, const RelabelType *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resulttypmod); + COMPARE_SCALAR_FIELD(resultcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCoerceViaIO(const CoerceViaIO *a, const CoerceViaIO *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resultcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalArrayCoerceExpr(const ArrayCoerceExpr *a, const ArrayCoerceExpr *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(elemexpr); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resulttypmod); + COMPARE_SCALAR_FIELD(resultcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalConvertRowtypeExpr(const ConvertRowtypeExpr *a, const ConvertRowtypeExpr *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCollateExpr(const CollateExpr *a, const CollateExpr *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(collOid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCaseExpr(const CaseExpr *a, const CaseExpr *b) +{ + COMPARE_SCALAR_FIELD(casetype); + COMPARE_SCALAR_FIELD(casecollid); + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(defresult); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCaseWhen(const CaseWhen *a, const CaseWhen *b) +{ + COMPARE_NODE_FIELD(expr); + COMPARE_NODE_FIELD(result); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCaseTestExpr(const CaseTestExpr *a, const CaseTestExpr *b) +{ + COMPARE_SCALAR_FIELD(typeId); + COMPARE_SCALAR_FIELD(typeMod); + COMPARE_SCALAR_FIELD(collation); + + return true; +} + +static bool +_equalArrayExpr(const ArrayExpr *a, const ArrayExpr *b) +{ + COMPARE_SCALAR_FIELD(array_typeid); + COMPARE_SCALAR_FIELD(array_collid); + COMPARE_SCALAR_FIELD(element_typeid); + COMPARE_NODE_FIELD(elements); + COMPARE_SCALAR_FIELD(multidims); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRowExpr(const RowExpr *a, const RowExpr *b) +{ + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(row_typeid); + COMPARE_NODE_FIELD(colnames); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRowCompareExpr(const RowCompareExpr *a, const RowCompareExpr *b) +{ + COMPARE_SCALAR_FIELD(rctype); + COMPARE_NODE_FIELD(opnos); + COMPARE_NODE_FIELD(opfamilies); + COMPARE_NODE_FIELD(inputcollids); + COMPARE_NODE_FIELD(largs); + COMPARE_NODE_FIELD(rargs); + + return true; +} + +static bool +_equalCoalesceExpr(const CoalesceExpr *a, const CoalesceExpr *b) +{ + COMPARE_SCALAR_FIELD(coalescetype); + COMPARE_SCALAR_FIELD(coalescecollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalMinMaxExpr(const MinMaxExpr *a, const MinMaxExpr *b) +{ + COMPARE_SCALAR_FIELD(minmaxtype); + COMPARE_SCALAR_FIELD(minmaxcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_SCALAR_FIELD(op); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSQLValueFunction(const SQLValueFunction *a, const SQLValueFunction *b) +{ + COMPARE_SCALAR_FIELD(op); + COMPARE_SCALAR_FIELD(type); + COMPARE_SCALAR_FIELD(typmod); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalXmlExpr(const XmlExpr *a, const XmlExpr *b) +{ + COMPARE_SCALAR_FIELD(op); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(named_args); + COMPARE_NODE_FIELD(arg_names); + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(xmloption); + COMPARE_SCALAR_FIELD(indent); + COMPARE_SCALAR_FIELD(type); + COMPARE_SCALAR_FIELD(typmod); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonFormat(const JsonFormat *a, const JsonFormat *b) +{ + COMPARE_SCALAR_FIELD(format_type); + COMPARE_SCALAR_FIELD(encoding); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonReturning(const JsonReturning *a, const JsonReturning *b) +{ + COMPARE_NODE_FIELD(format); + COMPARE_SCALAR_FIELD(typid); + COMPARE_SCALAR_FIELD(typmod); + + return true; +} + +static bool +_equalJsonValueExpr(const JsonValueExpr *a, const JsonValueExpr *b) +{ + COMPARE_NODE_FIELD(raw_expr); + COMPARE_NODE_FIELD(formatted_expr); + COMPARE_NODE_FIELD(format); + + return true; +} + +static bool +_equalJsonConstructorExpr(const JsonConstructorExpr *a, const JsonConstructorExpr *b) +{ + COMPARE_SCALAR_FIELD(type); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(func); + COMPARE_NODE_FIELD(coercion); + COMPARE_NODE_FIELD(returning); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_SCALAR_FIELD(unique); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonIsPredicate(const JsonIsPredicate *a, const JsonIsPredicate *b) +{ + COMPARE_NODE_FIELD(expr); + COMPARE_NODE_FIELD(format); + COMPARE_SCALAR_FIELD(item_type); + COMPARE_SCALAR_FIELD(unique_keys); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalNullTest(const NullTest *a, const NullTest *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(nulltesttype); + COMPARE_SCALAR_FIELD(argisrow); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalBooleanTest(const BooleanTest *a, const BooleanTest *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(booltesttype); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCoerceToDomain(const CoerceToDomain *a, const CoerceToDomain *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resulttypmod); + COMPARE_SCALAR_FIELD(resultcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCoerceToDomainValue(const CoerceToDomainValue *a, const CoerceToDomainValue *b) +{ + COMPARE_SCALAR_FIELD(typeId); + COMPARE_SCALAR_FIELD(typeMod); + COMPARE_SCALAR_FIELD(collation); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSetToDefault(const SetToDefault *a, const SetToDefault *b) +{ + COMPARE_SCALAR_FIELD(typeId); + COMPARE_SCALAR_FIELD(typeMod); + COMPARE_SCALAR_FIELD(collation); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCurrentOfExpr(const CurrentOfExpr *a, const CurrentOfExpr *b) +{ + COMPARE_SCALAR_FIELD(cvarno); + COMPARE_STRING_FIELD(cursor_name); + COMPARE_SCALAR_FIELD(cursor_param); + + return true; +} + +static bool +_equalNextValueExpr(const NextValueExpr *a, const NextValueExpr *b) +{ + COMPARE_SCALAR_FIELD(seqid); + COMPARE_SCALAR_FIELD(typeId); + + return true; +} + +static bool +_equalInferenceElem(const InferenceElem *a, const InferenceElem *b) +{ + COMPARE_NODE_FIELD(expr); + COMPARE_SCALAR_FIELD(infercollid); + COMPARE_SCALAR_FIELD(inferopclass); + + return true; +} + +static bool +_equalTargetEntry(const TargetEntry *a, const TargetEntry *b) +{ + COMPARE_NODE_FIELD(expr); + COMPARE_SCALAR_FIELD(resno); + COMPARE_STRING_FIELD(resname); + COMPARE_SCALAR_FIELD(ressortgroupref); + COMPARE_SCALAR_FIELD(resorigtbl); + COMPARE_SCALAR_FIELD(resorigcol); + COMPARE_SCALAR_FIELD(resjunk); + + return true; +} + +static bool +_equalRangeTblRef(const RangeTblRef *a, const RangeTblRef *b) +{ + COMPARE_SCALAR_FIELD(rtindex); + + return true; +} + +static bool +_equalJoinExpr(const JoinExpr *a, const JoinExpr *b) +{ + COMPARE_SCALAR_FIELD(jointype); + COMPARE_SCALAR_FIELD(isNatural); + COMPARE_NODE_FIELD(larg); + COMPARE_NODE_FIELD(rarg); + COMPARE_NODE_FIELD(usingClause); + COMPARE_NODE_FIELD(join_using_alias); + COMPARE_NODE_FIELD(quals); + COMPARE_NODE_FIELD(alias); + COMPARE_SCALAR_FIELD(rtindex); + + return true; +} + +static bool +_equalFromExpr(const FromExpr *a, const FromExpr *b) +{ + COMPARE_NODE_FIELD(fromlist); + COMPARE_NODE_FIELD(quals); + + return true; +} + +static bool +_equalOnConflictExpr(const OnConflictExpr *a, const OnConflictExpr *b) +{ + COMPARE_SCALAR_FIELD(action); + COMPARE_NODE_FIELD(arbiterElems); + COMPARE_NODE_FIELD(arbiterWhere); + COMPARE_SCALAR_FIELD(constraint); + COMPARE_NODE_FIELD(onConflictSet); + COMPARE_NODE_FIELD(onConflictWhere); + COMPARE_SCALAR_FIELD(exclRelIndex); + COMPARE_NODE_FIELD(exclRelTlist); + + return true; +} + +static bool +_equalQuery(const Query *a, const Query *b) +{ + COMPARE_SCALAR_FIELD(commandType); + COMPARE_SCALAR_FIELD(querySource); + COMPARE_SCALAR_FIELD(canSetTag); + COMPARE_NODE_FIELD(utilityStmt); + COMPARE_SCALAR_FIELD(resultRelation); + COMPARE_SCALAR_FIELD(hasAggs); + COMPARE_SCALAR_FIELD(hasWindowFuncs); + COMPARE_SCALAR_FIELD(hasTargetSRFs); + COMPARE_SCALAR_FIELD(hasSubLinks); + COMPARE_SCALAR_FIELD(hasDistinctOn); + COMPARE_SCALAR_FIELD(hasRecursive); + COMPARE_SCALAR_FIELD(hasModifyingCTE); + COMPARE_SCALAR_FIELD(hasForUpdate); + COMPARE_SCALAR_FIELD(hasRowSecurity); + COMPARE_SCALAR_FIELD(isReturn); + COMPARE_NODE_FIELD(cteList); + COMPARE_NODE_FIELD(rtable); + COMPARE_NODE_FIELD(rteperminfos); + COMPARE_NODE_FIELD(jointree); + COMPARE_NODE_FIELD(mergeActionList); + COMPARE_SCALAR_FIELD(mergeUseOuterJoin); + COMPARE_NODE_FIELD(targetList); + COMPARE_SCALAR_FIELD(override); + COMPARE_NODE_FIELD(onConflict); + COMPARE_NODE_FIELD(returningList); + COMPARE_NODE_FIELD(groupClause); + COMPARE_SCALAR_FIELD(groupDistinct); + COMPARE_NODE_FIELD(groupingSets); + COMPARE_NODE_FIELD(havingQual); + COMPARE_NODE_FIELD(windowClause); + COMPARE_NODE_FIELD(distinctClause); + COMPARE_NODE_FIELD(sortClause); + COMPARE_NODE_FIELD(limitOffset); + COMPARE_NODE_FIELD(limitCount); + COMPARE_SCALAR_FIELD(limitOption); + COMPARE_NODE_FIELD(rowMarks); + COMPARE_NODE_FIELD(setOperations); + COMPARE_NODE_FIELD(constraintDeps); + COMPARE_NODE_FIELD(withCheckOptions); + COMPARE_LOCATION_FIELD(stmt_location); + COMPARE_SCALAR_FIELD(stmt_len); + + return true; +} + +static bool +_equalTypeName(const TypeName *a, const TypeName *b) +{ + COMPARE_NODE_FIELD(names); + COMPARE_SCALAR_FIELD(typeOid); + COMPARE_SCALAR_FIELD(setof); + COMPARE_SCALAR_FIELD(pct_type); + COMPARE_NODE_FIELD(typmods); + COMPARE_SCALAR_FIELD(typemod); + COMPARE_NODE_FIELD(arrayBounds); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalColumnRef(const ColumnRef *a, const ColumnRef *b) +{ + COMPARE_NODE_FIELD(fields); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalParamRef(const ParamRef *a, const ParamRef *b) +{ + COMPARE_SCALAR_FIELD(number); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalA_Expr(const A_Expr *a, const A_Expr *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(name); + COMPARE_NODE_FIELD(lexpr); + COMPARE_NODE_FIELD(rexpr); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalTypeCast(const TypeCast *a, const TypeCast *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(typeName); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCollateClause(const CollateClause *a, const CollateClause *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(collname); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRoleSpec(const RoleSpec *a, const RoleSpec *b) +{ + COMPARE_SCALAR_FIELD(roletype); + COMPARE_STRING_FIELD(rolename); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalFuncCall(const FuncCall *a, const FuncCall *b) +{ + COMPARE_NODE_FIELD(funcname); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(agg_order); + COMPARE_NODE_FIELD(agg_filter); + COMPARE_NODE_FIELD(over); + COMPARE_SCALAR_FIELD(agg_within_group); + COMPARE_SCALAR_FIELD(agg_star); + COMPARE_SCALAR_FIELD(agg_distinct); + COMPARE_SCALAR_FIELD(func_variadic); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalA_Star(const A_Star *a, const A_Star *b) +{ + + return true; +} + +static bool +_equalA_Indices(const A_Indices *a, const A_Indices *b) +{ + COMPARE_SCALAR_FIELD(is_slice); + COMPARE_NODE_FIELD(lidx); + COMPARE_NODE_FIELD(uidx); + + return true; +} + +static bool +_equalA_Indirection(const A_Indirection *a, const A_Indirection *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(indirection); + + return true; +} + +static bool +_equalA_ArrayExpr(const A_ArrayExpr *a, const A_ArrayExpr *b) +{ + COMPARE_NODE_FIELD(elements); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalResTarget(const ResTarget *a, const ResTarget *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(indirection); + COMPARE_NODE_FIELD(val); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalMultiAssignRef(const MultiAssignRef *a, const MultiAssignRef *b) +{ + COMPARE_NODE_FIELD(source); + COMPARE_SCALAR_FIELD(colno); + COMPARE_SCALAR_FIELD(ncolumns); + + return true; +} + +static bool +_equalSortBy(const SortBy *a, const SortBy *b) +{ + COMPARE_NODE_FIELD(node); + COMPARE_SCALAR_FIELD(sortby_dir); + COMPARE_SCALAR_FIELD(sortby_nulls); + COMPARE_NODE_FIELD(useOp); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalWindowDef(const WindowDef *a, const WindowDef *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_STRING_FIELD(refname); + COMPARE_NODE_FIELD(partitionClause); + COMPARE_NODE_FIELD(orderClause); + COMPARE_SCALAR_FIELD(frameOptions); + COMPARE_NODE_FIELD(startOffset); + COMPARE_NODE_FIELD(endOffset); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRangeSubselect(const RangeSubselect *a, const RangeSubselect *b) +{ + COMPARE_SCALAR_FIELD(lateral); + COMPARE_NODE_FIELD(subquery); + COMPARE_NODE_FIELD(alias); + + return true; +} + +static bool +_equalRangeFunction(const RangeFunction *a, const RangeFunction *b) +{ + COMPARE_SCALAR_FIELD(lateral); + COMPARE_SCALAR_FIELD(ordinality); + COMPARE_SCALAR_FIELD(is_rowsfrom); + COMPARE_NODE_FIELD(functions); + COMPARE_NODE_FIELD(alias); + COMPARE_NODE_FIELD(coldeflist); + + return true; +} + +static bool +_equalRangeTableFunc(const RangeTableFunc *a, const RangeTableFunc *b) +{ + COMPARE_SCALAR_FIELD(lateral); + COMPARE_NODE_FIELD(docexpr); + COMPARE_NODE_FIELD(rowexpr); + COMPARE_NODE_FIELD(namespaces); + COMPARE_NODE_FIELD(columns); + COMPARE_NODE_FIELD(alias); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRangeTableFuncCol(const RangeTableFuncCol *a, const RangeTableFuncCol *b) +{ + COMPARE_STRING_FIELD(colname); + COMPARE_NODE_FIELD(typeName); + COMPARE_SCALAR_FIELD(for_ordinality); + COMPARE_SCALAR_FIELD(is_not_null); + COMPARE_NODE_FIELD(colexpr); + COMPARE_NODE_FIELD(coldefexpr); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRangeTableSample(const RangeTableSample *a, const RangeTableSample *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(method); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(repeatable); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalColumnDef(const ColumnDef *a, const ColumnDef *b) +{ + COMPARE_STRING_FIELD(colname); + COMPARE_NODE_FIELD(typeName); + COMPARE_STRING_FIELD(compression); + COMPARE_SCALAR_FIELD(inhcount); + COMPARE_SCALAR_FIELD(is_local); + COMPARE_SCALAR_FIELD(is_not_null); + COMPARE_SCALAR_FIELD(is_from_type); + COMPARE_SCALAR_FIELD(storage); + COMPARE_STRING_FIELD(storage_name); + COMPARE_NODE_FIELD(raw_default); + COMPARE_NODE_FIELD(cooked_default); + COMPARE_SCALAR_FIELD(identity); + COMPARE_NODE_FIELD(identitySequence); + COMPARE_SCALAR_FIELD(generated); + COMPARE_NODE_FIELD(collClause); + COMPARE_SCALAR_FIELD(collOid); + COMPARE_NODE_FIELD(constraints); + COMPARE_NODE_FIELD(fdwoptions); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalTableLikeClause(const TableLikeClause *a, const TableLikeClause *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_SCALAR_FIELD(options); + COMPARE_SCALAR_FIELD(relationOid); + + return true; +} + +static bool +_equalIndexElem(const IndexElem *a, const IndexElem *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(expr); + COMPARE_STRING_FIELD(indexcolname); + COMPARE_NODE_FIELD(collation); + COMPARE_NODE_FIELD(opclass); + COMPARE_NODE_FIELD(opclassopts); + COMPARE_SCALAR_FIELD(ordering); + COMPARE_SCALAR_FIELD(nulls_ordering); + + return true; +} + +static bool +_equalDefElem(const DefElem *a, const DefElem *b) +{ + COMPARE_STRING_FIELD(defnamespace); + COMPARE_STRING_FIELD(defname); + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(defaction); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalLockingClause(const LockingClause *a, const LockingClause *b) +{ + COMPARE_NODE_FIELD(lockedRels); + COMPARE_SCALAR_FIELD(strength); + COMPARE_SCALAR_FIELD(waitPolicy); + + return true; +} + +static bool +_equalXmlSerialize(const XmlSerialize *a, const XmlSerialize *b) +{ + COMPARE_SCALAR_FIELD(xmloption); + COMPARE_NODE_FIELD(expr); + COMPARE_NODE_FIELD(typeName); + COMPARE_SCALAR_FIELD(indent); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionElem(const PartitionElem *a, const PartitionElem *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(expr); + COMPARE_NODE_FIELD(collation); + COMPARE_NODE_FIELD(opclass); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionSpec(const PartitionSpec *a, const PartitionSpec *b) +{ + COMPARE_SCALAR_FIELD(strategy); + COMPARE_NODE_FIELD(partParams); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionBoundSpec(const PartitionBoundSpec *a, const PartitionBoundSpec *b) +{ + COMPARE_SCALAR_FIELD(strategy); + COMPARE_SCALAR_FIELD(is_default); + COMPARE_SCALAR_FIELD(modulus); + COMPARE_SCALAR_FIELD(remainder); + COMPARE_NODE_FIELD(listdatums); + COMPARE_NODE_FIELD(lowerdatums); + COMPARE_NODE_FIELD(upperdatums); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionRangeDatum(const PartitionRangeDatum *a, const PartitionRangeDatum *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(value); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionCmd(const PartitionCmd *a, const PartitionCmd *b) +{ + COMPARE_NODE_FIELD(name); + COMPARE_NODE_FIELD(bound); + COMPARE_SCALAR_FIELD(concurrent); + + return true; +} + +static bool +_equalRangeTblEntry(const RangeTblEntry *a, const RangeTblEntry *b) +{ + COMPARE_SCALAR_FIELD(rtekind); + COMPARE_SCALAR_FIELD(relid); + COMPARE_SCALAR_FIELD(relkind); + COMPARE_SCALAR_FIELD(rellockmode); + COMPARE_NODE_FIELD(tablesample); + COMPARE_SCALAR_FIELD(perminfoindex); + COMPARE_NODE_FIELD(subquery); + COMPARE_SCALAR_FIELD(security_barrier); + COMPARE_SCALAR_FIELD(jointype); + COMPARE_SCALAR_FIELD(joinmergedcols); + COMPARE_NODE_FIELD(joinaliasvars); + COMPARE_NODE_FIELD(joinleftcols); + COMPARE_NODE_FIELD(joinrightcols); + COMPARE_NODE_FIELD(join_using_alias); + COMPARE_NODE_FIELD(functions); + COMPARE_SCALAR_FIELD(funcordinality); + COMPARE_NODE_FIELD(tablefunc); + COMPARE_NODE_FIELD(values_lists); + COMPARE_STRING_FIELD(ctename); + COMPARE_SCALAR_FIELD(ctelevelsup); + COMPARE_SCALAR_FIELD(self_reference); + COMPARE_NODE_FIELD(coltypes); + COMPARE_NODE_FIELD(coltypmods); + COMPARE_NODE_FIELD(colcollations); + COMPARE_STRING_FIELD(enrname); + COMPARE_SCALAR_FIELD(enrtuples); + COMPARE_NODE_FIELD(alias); + COMPARE_NODE_FIELD(eref); + COMPARE_SCALAR_FIELD(lateral); + COMPARE_SCALAR_FIELD(inh); + COMPARE_SCALAR_FIELD(inFromCl); + COMPARE_NODE_FIELD(securityQuals); + + return true; +} + +static bool +_equalRTEPermissionInfo(const RTEPermissionInfo *a, const RTEPermissionInfo *b) +{ + COMPARE_SCALAR_FIELD(relid); + COMPARE_SCALAR_FIELD(inh); + COMPARE_SCALAR_FIELD(requiredPerms); + COMPARE_SCALAR_FIELD(checkAsUser); + COMPARE_BITMAPSET_FIELD(selectedCols); + COMPARE_BITMAPSET_FIELD(insertedCols); + COMPARE_BITMAPSET_FIELD(updatedCols); + + return true; +} + +static bool +_equalRangeTblFunction(const RangeTblFunction *a, const RangeTblFunction *b) +{ + COMPARE_NODE_FIELD(funcexpr); + COMPARE_SCALAR_FIELD(funccolcount); + COMPARE_NODE_FIELD(funccolnames); + COMPARE_NODE_FIELD(funccoltypes); + COMPARE_NODE_FIELD(funccoltypmods); + COMPARE_NODE_FIELD(funccolcollations); + COMPARE_BITMAPSET_FIELD(funcparams); + + return true; +} + +static bool +_equalTableSampleClause(const TableSampleClause *a, const TableSampleClause *b) +{ + COMPARE_SCALAR_FIELD(tsmhandler); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(repeatable); + + return true; +} + +static bool +_equalWithCheckOption(const WithCheckOption *a, const WithCheckOption *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_STRING_FIELD(relname); + COMPARE_STRING_FIELD(polname); + COMPARE_NODE_FIELD(qual); + COMPARE_SCALAR_FIELD(cascaded); + + return true; +} + +static bool +_equalSortGroupClause(const SortGroupClause *a, const SortGroupClause *b) +{ + COMPARE_SCALAR_FIELD(tleSortGroupRef); + COMPARE_SCALAR_FIELD(eqop); + COMPARE_SCALAR_FIELD(sortop); + COMPARE_SCALAR_FIELD(nulls_first); + COMPARE_SCALAR_FIELD(hashable); + + return true; +} + +static bool +_equalGroupingSet(const GroupingSet *a, const GroupingSet *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(content); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalWindowClause(const WindowClause *a, const WindowClause *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_STRING_FIELD(refname); + COMPARE_NODE_FIELD(partitionClause); + COMPARE_NODE_FIELD(orderClause); + COMPARE_SCALAR_FIELD(frameOptions); + COMPARE_NODE_FIELD(startOffset); + COMPARE_NODE_FIELD(endOffset); + COMPARE_NODE_FIELD(runCondition); + COMPARE_SCALAR_FIELD(startInRangeFunc); + COMPARE_SCALAR_FIELD(endInRangeFunc); + COMPARE_SCALAR_FIELD(inRangeColl); + COMPARE_SCALAR_FIELD(inRangeAsc); + COMPARE_SCALAR_FIELD(inRangeNullsFirst); + COMPARE_SCALAR_FIELD(winref); + COMPARE_SCALAR_FIELD(copiedOrder); + + return true; +} + +static bool +_equalRowMarkClause(const RowMarkClause *a, const RowMarkClause *b) +{ + COMPARE_SCALAR_FIELD(rti); + COMPARE_SCALAR_FIELD(strength); + COMPARE_SCALAR_FIELD(waitPolicy); + COMPARE_SCALAR_FIELD(pushedDown); + + return true; +} + +static bool +_equalWithClause(const WithClause *a, const WithClause *b) +{ + COMPARE_NODE_FIELD(ctes); + COMPARE_SCALAR_FIELD(recursive); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalInferClause(const InferClause *a, const InferClause *b) +{ + COMPARE_NODE_FIELD(indexElems); + COMPARE_NODE_FIELD(whereClause); + COMPARE_STRING_FIELD(conname); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalOnConflictClause(const OnConflictClause *a, const OnConflictClause *b) +{ + COMPARE_SCALAR_FIELD(action); + COMPARE_NODE_FIELD(infer); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(whereClause); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCTESearchClause(const CTESearchClause *a, const CTESearchClause *b) +{ + COMPARE_NODE_FIELD(search_col_list); + COMPARE_SCALAR_FIELD(search_breadth_first); + COMPARE_STRING_FIELD(search_seq_column); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCTECycleClause(const CTECycleClause *a, const CTECycleClause *b) +{ + COMPARE_NODE_FIELD(cycle_col_list); + COMPARE_STRING_FIELD(cycle_mark_column); + COMPARE_NODE_FIELD(cycle_mark_value); + COMPARE_NODE_FIELD(cycle_mark_default); + COMPARE_STRING_FIELD(cycle_path_column); + COMPARE_LOCATION_FIELD(location); + COMPARE_SCALAR_FIELD(cycle_mark_type); + COMPARE_SCALAR_FIELD(cycle_mark_typmod); + COMPARE_SCALAR_FIELD(cycle_mark_collation); + COMPARE_SCALAR_FIELD(cycle_mark_neop); + + return true; +} + +static bool +_equalCommonTableExpr(const CommonTableExpr *a, const CommonTableExpr *b) +{ + COMPARE_STRING_FIELD(ctename); + COMPARE_NODE_FIELD(aliascolnames); + COMPARE_SCALAR_FIELD(ctematerialized); + COMPARE_NODE_FIELD(ctequery); + COMPARE_NODE_FIELD(search_clause); + COMPARE_NODE_FIELD(cycle_clause); + COMPARE_LOCATION_FIELD(location); + COMPARE_SCALAR_FIELD(cterecursive); + COMPARE_SCALAR_FIELD(cterefcount); + COMPARE_NODE_FIELD(ctecolnames); + COMPARE_NODE_FIELD(ctecoltypes); + COMPARE_NODE_FIELD(ctecoltypmods); + COMPARE_NODE_FIELD(ctecolcollations); + + return true; +} + +static bool +_equalMergeWhenClause(const MergeWhenClause *a, const MergeWhenClause *b) +{ + COMPARE_SCALAR_FIELD(matched); + COMPARE_SCALAR_FIELD(commandType); + COMPARE_SCALAR_FIELD(override); + COMPARE_NODE_FIELD(condition); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(values); + + return true; +} + +static bool +_equalMergeAction(const MergeAction *a, const MergeAction *b) +{ + COMPARE_SCALAR_FIELD(matched); + COMPARE_SCALAR_FIELD(commandType); + COMPARE_SCALAR_FIELD(override); + COMPARE_NODE_FIELD(qual); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(updateColnos); + + return true; +} + +static bool +_equalTriggerTransition(const TriggerTransition *a, const TriggerTransition *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_SCALAR_FIELD(isNew); + COMPARE_SCALAR_FIELD(isTable); + + return true; +} + +static bool +_equalJsonOutput(const JsonOutput *a, const JsonOutput *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(returning); + + return true; +} + +static bool +_equalJsonKeyValue(const JsonKeyValue *a, const JsonKeyValue *b) +{ + COMPARE_NODE_FIELD(key); + COMPARE_NODE_FIELD(value); + + return true; +} + +static bool +_equalJsonObjectConstructor(const JsonObjectConstructor *a, const JsonObjectConstructor *b) +{ + COMPARE_NODE_FIELD(exprs); + COMPARE_NODE_FIELD(output); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_SCALAR_FIELD(unique); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonArrayConstructor(const JsonArrayConstructor *a, const JsonArrayConstructor *b) +{ + COMPARE_NODE_FIELD(exprs); + COMPARE_NODE_FIELD(output); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonArrayQueryConstructor(const JsonArrayQueryConstructor *a, const JsonArrayQueryConstructor *b) +{ + COMPARE_NODE_FIELD(query); + COMPARE_NODE_FIELD(output); + COMPARE_NODE_FIELD(format); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonAggConstructor(const JsonAggConstructor *a, const JsonAggConstructor *b) +{ + COMPARE_NODE_FIELD(output); + COMPARE_NODE_FIELD(agg_filter); + COMPARE_NODE_FIELD(agg_order); + COMPARE_NODE_FIELD(over); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonObjectAgg(const JsonObjectAgg *a, const JsonObjectAgg *b) +{ + COMPARE_NODE_FIELD(constructor); + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_SCALAR_FIELD(unique); + + return true; +} + +static bool +_equalJsonArrayAgg(const JsonArrayAgg *a, const JsonArrayAgg *b) +{ + COMPARE_NODE_FIELD(constructor); + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(absent_on_null); + + return true; +} + +static bool +_equalRawStmt(const RawStmt *a, const RawStmt *b) +{ + COMPARE_NODE_FIELD(stmt); + COMPARE_LOCATION_FIELD(stmt_location); + COMPARE_SCALAR_FIELD(stmt_len); + + return true; +} + +static bool +_equalInsertStmt(const InsertStmt *a, const InsertStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(cols); + COMPARE_NODE_FIELD(selectStmt); + COMPARE_NODE_FIELD(onConflictClause); + COMPARE_NODE_FIELD(returningList); + COMPARE_NODE_FIELD(withClause); + COMPARE_SCALAR_FIELD(override); + + return true; +} + +static bool +_equalDeleteStmt(const DeleteStmt *a, const DeleteStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(usingClause); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(returningList); + COMPARE_NODE_FIELD(withClause); + + return true; +} + +static bool +_equalUpdateStmt(const UpdateStmt *a, const UpdateStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(fromClause); + COMPARE_NODE_FIELD(returningList); + COMPARE_NODE_FIELD(withClause); + + return true; +} + +static bool +_equalMergeStmt(const MergeStmt *a, const MergeStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(sourceRelation); + COMPARE_NODE_FIELD(joinCondition); + COMPARE_NODE_FIELD(mergeWhenClauses); + COMPARE_NODE_FIELD(withClause); + + return true; +} + +static bool +_equalSelectStmt(const SelectStmt *a, const SelectStmt *b) +{ + COMPARE_NODE_FIELD(distinctClause); + COMPARE_NODE_FIELD(intoClause); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(fromClause); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(groupClause); + COMPARE_SCALAR_FIELD(groupDistinct); + COMPARE_NODE_FIELD(havingClause); + COMPARE_NODE_FIELD(windowClause); + COMPARE_NODE_FIELD(valuesLists); + COMPARE_NODE_FIELD(sortClause); + COMPARE_NODE_FIELD(limitOffset); + COMPARE_NODE_FIELD(limitCount); + COMPARE_SCALAR_FIELD(limitOption); + COMPARE_NODE_FIELD(lockingClause); + COMPARE_NODE_FIELD(withClause); + COMPARE_SCALAR_FIELD(op); + COMPARE_SCALAR_FIELD(all); + COMPARE_NODE_FIELD(larg); + COMPARE_NODE_FIELD(rarg); + + return true; +} + +static bool +_equalSetOperationStmt(const SetOperationStmt *a, const SetOperationStmt *b) +{ + COMPARE_SCALAR_FIELD(op); + COMPARE_SCALAR_FIELD(all); + COMPARE_NODE_FIELD(larg); + COMPARE_NODE_FIELD(rarg); + COMPARE_NODE_FIELD(colTypes); + COMPARE_NODE_FIELD(colTypmods); + COMPARE_NODE_FIELD(colCollations); + COMPARE_NODE_FIELD(groupClauses); + + return true; +} + +static bool +_equalReturnStmt(const ReturnStmt *a, const ReturnStmt *b) +{ + COMPARE_NODE_FIELD(returnval); + + return true; +} + +static bool +_equalPLAssignStmt(const PLAssignStmt *a, const PLAssignStmt *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(indirection); + COMPARE_SCALAR_FIELD(nnames); + COMPARE_NODE_FIELD(val); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCreateSchemaStmt(const CreateSchemaStmt *a, const CreateSchemaStmt *b) +{ + COMPARE_STRING_FIELD(schemaname); + COMPARE_NODE_FIELD(authrole); + COMPARE_NODE_FIELD(schemaElts); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalAlterTableStmt(const AlterTableStmt *a, const AlterTableStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(cmds); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalReplicaIdentityStmt(const ReplicaIdentityStmt *a, const ReplicaIdentityStmt *b) +{ + COMPARE_SCALAR_FIELD(identity_type); + COMPARE_STRING_FIELD(name); + + return true; +} + +static bool +_equalAlterTableCmd(const AlterTableCmd *a, const AlterTableCmd *b) +{ + COMPARE_SCALAR_FIELD(subtype); + COMPARE_STRING_FIELD(name); + COMPARE_SCALAR_FIELD(num); + COMPARE_NODE_FIELD(newowner); + COMPARE_NODE_FIELD(def); + COMPARE_SCALAR_FIELD(behavior); + COMPARE_SCALAR_FIELD(missing_ok); + COMPARE_SCALAR_FIELD(recurse); + + return true; +} + +static bool +_equalAlterCollationStmt(const AlterCollationStmt *a, const AlterCollationStmt *b) +{ + COMPARE_NODE_FIELD(collname); + + return true; +} + +static bool +_equalAlterDomainStmt(const AlterDomainStmt *a, const AlterDomainStmt *b) +{ + COMPARE_SCALAR_FIELD(subtype); + COMPARE_NODE_FIELD(typeName); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(def); + COMPARE_SCALAR_FIELD(behavior); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalGrantStmt(const GrantStmt *a, const GrantStmt *b) +{ + COMPARE_SCALAR_FIELD(is_grant); + COMPARE_SCALAR_FIELD(targtype); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(objects); + COMPARE_NODE_FIELD(privileges); + COMPARE_NODE_FIELD(grantees); + COMPARE_SCALAR_FIELD(grant_option); + COMPARE_NODE_FIELD(grantor); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalObjectWithArgs(const ObjectWithArgs *a, const ObjectWithArgs *b) +{ + COMPARE_NODE_FIELD(objname); + COMPARE_NODE_FIELD(objargs); + COMPARE_NODE_FIELD(objfuncargs); + COMPARE_SCALAR_FIELD(args_unspecified); + + return true; +} + +static bool +_equalAccessPriv(const AccessPriv *a, const AccessPriv *b) +{ + COMPARE_STRING_FIELD(priv_name); + COMPARE_NODE_FIELD(cols); + + return true; +} + +static bool +_equalGrantRoleStmt(const GrantRoleStmt *a, const GrantRoleStmt *b) +{ + COMPARE_NODE_FIELD(granted_roles); + COMPARE_NODE_FIELD(grantee_roles); + COMPARE_SCALAR_FIELD(is_grant); + COMPARE_NODE_FIELD(opt); + COMPARE_NODE_FIELD(grantor); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalAlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt *a, const AlterDefaultPrivilegesStmt *b) +{ + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(action); + + return true; +} + +static bool +_equalCopyStmt(const CopyStmt *a, const CopyStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(query); + COMPARE_NODE_FIELD(attlist); + COMPARE_SCALAR_FIELD(is_from); + COMPARE_SCALAR_FIELD(is_program); + COMPARE_STRING_FIELD(filename); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(whereClause); + + return true; +} + +static bool +_equalVariableSetStmt(const VariableSetStmt *a, const VariableSetStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(is_local); + + return true; +} + +static bool +_equalVariableShowStmt(const VariableShowStmt *a, const VariableShowStmt *b) +{ + COMPARE_STRING_FIELD(name); + + return true; +} + +static bool +_equalCreateStmt(const CreateStmt *a, const CreateStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(tableElts); + COMPARE_NODE_FIELD(inhRelations); + COMPARE_NODE_FIELD(partbound); + COMPARE_NODE_FIELD(partspec); + COMPARE_NODE_FIELD(ofTypename); + COMPARE_NODE_FIELD(constraints); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(oncommit); + COMPARE_STRING_FIELD(tablespacename); + COMPARE_STRING_FIELD(accessMethod); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalConstraint(const Constraint *a, const Constraint *b) +{ + COMPARE_SCALAR_FIELD(contype); + COMPARE_STRING_FIELD(conname); + COMPARE_SCALAR_FIELD(deferrable); + COMPARE_SCALAR_FIELD(initdeferred); + COMPARE_LOCATION_FIELD(location); + COMPARE_SCALAR_FIELD(is_no_inherit); + COMPARE_NODE_FIELD(raw_expr); + COMPARE_STRING_FIELD(cooked_expr); + COMPARE_SCALAR_FIELD(generated_when); + COMPARE_SCALAR_FIELD(nulls_not_distinct); + COMPARE_NODE_FIELD(keys); + COMPARE_NODE_FIELD(including); + COMPARE_NODE_FIELD(exclusions); + COMPARE_NODE_FIELD(options); + COMPARE_STRING_FIELD(indexname); + COMPARE_STRING_FIELD(indexspace); + COMPARE_SCALAR_FIELD(reset_default_tblspc); + COMPARE_STRING_FIELD(access_method); + COMPARE_NODE_FIELD(where_clause); + COMPARE_NODE_FIELD(pktable); + COMPARE_NODE_FIELD(fk_attrs); + COMPARE_NODE_FIELD(pk_attrs); + COMPARE_SCALAR_FIELD(fk_matchtype); + COMPARE_SCALAR_FIELD(fk_upd_action); + COMPARE_SCALAR_FIELD(fk_del_action); + COMPARE_NODE_FIELD(fk_del_set_cols); + COMPARE_NODE_FIELD(old_conpfeqop); + COMPARE_SCALAR_FIELD(old_pktable_oid); + COMPARE_SCALAR_FIELD(skip_validation); + COMPARE_SCALAR_FIELD(initially_valid); + + return true; +} + +static bool +_equalCreateTableSpaceStmt(const CreateTableSpaceStmt *a, const CreateTableSpaceStmt *b) +{ + COMPARE_STRING_FIELD(tablespacename); + COMPARE_NODE_FIELD(owner); + COMPARE_STRING_FIELD(location); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalDropTableSpaceStmt(const DropTableSpaceStmt *a, const DropTableSpaceStmt *b) +{ + COMPARE_STRING_FIELD(tablespacename); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalAlterTableSpaceOptionsStmt(const AlterTableSpaceOptionsStmt *a, const AlterTableSpaceOptionsStmt *b) +{ + COMPARE_STRING_FIELD(tablespacename); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(isReset); + + return true; +} + +static bool +_equalAlterTableMoveAllStmt(const AlterTableMoveAllStmt *a, const AlterTableMoveAllStmt *b) +{ + COMPARE_STRING_FIELD(orig_tablespacename); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(roles); + COMPARE_STRING_FIELD(new_tablespacename); + COMPARE_SCALAR_FIELD(nowait); + + return true; +} + +static bool +_equalCreateExtensionStmt(const CreateExtensionStmt *a, const CreateExtensionStmt *b) +{ + COMPARE_STRING_FIELD(extname); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterExtensionStmt(const AlterExtensionStmt *a, const AlterExtensionStmt *b) +{ + COMPARE_STRING_FIELD(extname); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterExtensionContentsStmt(const AlterExtensionContentsStmt *a, const AlterExtensionContentsStmt *b) +{ + COMPARE_STRING_FIELD(extname); + COMPARE_SCALAR_FIELD(action); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(object); + + return true; +} + +static bool +_equalCreateFdwStmt(const CreateFdwStmt *a, const CreateFdwStmt *b) +{ + COMPARE_STRING_FIELD(fdwname); + COMPARE_NODE_FIELD(func_options); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterFdwStmt(const AlterFdwStmt *a, const AlterFdwStmt *b) +{ + COMPARE_STRING_FIELD(fdwname); + COMPARE_NODE_FIELD(func_options); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalCreateForeignServerStmt(const CreateForeignServerStmt *a, const CreateForeignServerStmt *b) +{ + COMPARE_STRING_FIELD(servername); + COMPARE_STRING_FIELD(servertype); + COMPARE_STRING_FIELD(version); + COMPARE_STRING_FIELD(fdwname); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterForeignServerStmt(const AlterForeignServerStmt *a, const AlterForeignServerStmt *b) +{ + COMPARE_STRING_FIELD(servername); + COMPARE_STRING_FIELD(version); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(has_version); + + return true; +} + +static bool +_equalCreateForeignTableStmt(const CreateForeignTableStmt *a, const CreateForeignTableStmt *b) +{ + COMPARE_NODE_FIELD(base.relation); + COMPARE_NODE_FIELD(base.tableElts); + COMPARE_NODE_FIELD(base.inhRelations); + COMPARE_NODE_FIELD(base.partbound); + COMPARE_NODE_FIELD(base.partspec); + COMPARE_NODE_FIELD(base.ofTypename); + COMPARE_NODE_FIELD(base.constraints); + COMPARE_NODE_FIELD(base.options); + COMPARE_SCALAR_FIELD(base.oncommit); + COMPARE_STRING_FIELD(base.tablespacename); + COMPARE_STRING_FIELD(base.accessMethod); + COMPARE_SCALAR_FIELD(base.if_not_exists); + COMPARE_STRING_FIELD(servername); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalCreateUserMappingStmt(const CreateUserMappingStmt *a, const CreateUserMappingStmt *b) +{ + COMPARE_NODE_FIELD(user); + COMPARE_STRING_FIELD(servername); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterUserMappingStmt(const AlterUserMappingStmt *a, const AlterUserMappingStmt *b) +{ + COMPARE_NODE_FIELD(user); + COMPARE_STRING_FIELD(servername); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalDropUserMappingStmt(const DropUserMappingStmt *a, const DropUserMappingStmt *b) +{ + COMPARE_NODE_FIELD(user); + COMPARE_STRING_FIELD(servername); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalImportForeignSchemaStmt(const ImportForeignSchemaStmt *a, const ImportForeignSchemaStmt *b) +{ + COMPARE_STRING_FIELD(server_name); + COMPARE_STRING_FIELD(remote_schema); + COMPARE_STRING_FIELD(local_schema); + COMPARE_SCALAR_FIELD(list_type); + COMPARE_NODE_FIELD(table_list); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalCreatePolicyStmt(const CreatePolicyStmt *a, const CreatePolicyStmt *b) +{ + COMPARE_STRING_FIELD(policy_name); + COMPARE_NODE_FIELD(table); + COMPARE_STRING_FIELD(cmd_name); + COMPARE_SCALAR_FIELD(permissive); + COMPARE_NODE_FIELD(roles); + COMPARE_NODE_FIELD(qual); + COMPARE_NODE_FIELD(with_check); + + return true; +} + +static bool +_equalAlterPolicyStmt(const AlterPolicyStmt *a, const AlterPolicyStmt *b) +{ + COMPARE_STRING_FIELD(policy_name); + COMPARE_NODE_FIELD(table); + COMPARE_NODE_FIELD(roles); + COMPARE_NODE_FIELD(qual); + COMPARE_NODE_FIELD(with_check); + + return true; +} + +static bool +_equalCreateAmStmt(const CreateAmStmt *a, const CreateAmStmt *b) +{ + COMPARE_STRING_FIELD(amname); + COMPARE_NODE_FIELD(handler_name); + COMPARE_SCALAR_FIELD(amtype); + + return true; +} + +static bool +_equalCreateTrigStmt(const CreateTrigStmt *a, const CreateTrigStmt *b) +{ + COMPARE_SCALAR_FIELD(replace); + COMPARE_SCALAR_FIELD(isconstraint); + COMPARE_STRING_FIELD(trigname); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(funcname); + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(row); + COMPARE_SCALAR_FIELD(timing); + COMPARE_SCALAR_FIELD(events); + COMPARE_NODE_FIELD(columns); + COMPARE_NODE_FIELD(whenClause); + COMPARE_NODE_FIELD(transitionRels); + COMPARE_SCALAR_FIELD(deferrable); + COMPARE_SCALAR_FIELD(initdeferred); + COMPARE_NODE_FIELD(constrrel); + + return true; +} + +static bool +_equalCreateEventTrigStmt(const CreateEventTrigStmt *a, const CreateEventTrigStmt *b) +{ + COMPARE_STRING_FIELD(trigname); + COMPARE_STRING_FIELD(eventname); + COMPARE_NODE_FIELD(whenclause); + COMPARE_NODE_FIELD(funcname); + + return true; +} + +static bool +_equalAlterEventTrigStmt(const AlterEventTrigStmt *a, const AlterEventTrigStmt *b) +{ + COMPARE_STRING_FIELD(trigname); + COMPARE_SCALAR_FIELD(tgenabled); + + return true; +} + +static bool +_equalCreatePLangStmt(const CreatePLangStmt *a, const CreatePLangStmt *b) +{ + COMPARE_SCALAR_FIELD(replace); + COMPARE_STRING_FIELD(plname); + COMPARE_NODE_FIELD(plhandler); + COMPARE_NODE_FIELD(plinline); + COMPARE_NODE_FIELD(plvalidator); + COMPARE_SCALAR_FIELD(pltrusted); + + return true; +} + +static bool +_equalCreateRoleStmt(const CreateRoleStmt *a, const CreateRoleStmt *b) +{ + COMPARE_SCALAR_FIELD(stmt_type); + COMPARE_STRING_FIELD(role); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterRoleStmt(const AlterRoleStmt *a, const AlterRoleStmt *b) +{ + COMPARE_NODE_FIELD(role); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(action); + + return true; +} + +static bool +_equalAlterRoleSetStmt(const AlterRoleSetStmt *a, const AlterRoleSetStmt *b) +{ + COMPARE_NODE_FIELD(role); + COMPARE_STRING_FIELD(database); + COMPARE_NODE_FIELD(setstmt); + + return true; +} + +static bool +_equalDropRoleStmt(const DropRoleStmt *a, const DropRoleStmt *b) +{ + COMPARE_NODE_FIELD(roles); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalCreateSeqStmt(const CreateSeqStmt *a, const CreateSeqStmt *b) +{ + COMPARE_NODE_FIELD(sequence); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(ownerId); + COMPARE_SCALAR_FIELD(for_identity); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalAlterSeqStmt(const AlterSeqStmt *a, const AlterSeqStmt *b) +{ + COMPARE_NODE_FIELD(sequence); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(for_identity); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalDefineStmt(const DefineStmt *a, const DefineStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_SCALAR_FIELD(oldstyle); + COMPARE_NODE_FIELD(defnames); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(definition); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_SCALAR_FIELD(replace); + + return true; +} + +static bool +_equalCreateDomainStmt(const CreateDomainStmt *a, const CreateDomainStmt *b) +{ + COMPARE_NODE_FIELD(domainname); + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(collClause); + COMPARE_NODE_FIELD(constraints); + + return true; +} + +static bool +_equalCreateOpClassStmt(const CreateOpClassStmt *a, const CreateOpClassStmt *b) +{ + COMPARE_NODE_FIELD(opclassname); + COMPARE_NODE_FIELD(opfamilyname); + COMPARE_STRING_FIELD(amname); + COMPARE_NODE_FIELD(datatype); + COMPARE_NODE_FIELD(items); + COMPARE_SCALAR_FIELD(isDefault); + + return true; +} + +static bool +_equalCreateOpClassItem(const CreateOpClassItem *a, const CreateOpClassItem *b) +{ + COMPARE_SCALAR_FIELD(itemtype); + COMPARE_NODE_FIELD(name); + COMPARE_SCALAR_FIELD(number); + COMPARE_NODE_FIELD(order_family); + COMPARE_NODE_FIELD(class_args); + COMPARE_NODE_FIELD(storedtype); + + return true; +} + +static bool +_equalCreateOpFamilyStmt(const CreateOpFamilyStmt *a, const CreateOpFamilyStmt *b) +{ + COMPARE_NODE_FIELD(opfamilyname); + COMPARE_STRING_FIELD(amname); + + return true; +} + +static bool +_equalAlterOpFamilyStmt(const AlterOpFamilyStmt *a, const AlterOpFamilyStmt *b) +{ + COMPARE_NODE_FIELD(opfamilyname); + COMPARE_STRING_FIELD(amname); + COMPARE_SCALAR_FIELD(isDrop); + COMPARE_NODE_FIELD(items); + + return true; +} + +static bool +_equalDropStmt(const DropStmt *a, const DropStmt *b) +{ + COMPARE_NODE_FIELD(objects); + COMPARE_SCALAR_FIELD(removeType); + COMPARE_SCALAR_FIELD(behavior); + COMPARE_SCALAR_FIELD(missing_ok); + COMPARE_SCALAR_FIELD(concurrent); + + return true; +} + +static bool +_equalTruncateStmt(const TruncateStmt *a, const TruncateStmt *b) +{ + COMPARE_NODE_FIELD(relations); + COMPARE_SCALAR_FIELD(restart_seqs); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalCommentStmt(const CommentStmt *a, const CommentStmt *b) +{ + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(object); + COMPARE_STRING_FIELD(comment); + + return true; +} + +static bool +_equalSecLabelStmt(const SecLabelStmt *a, const SecLabelStmt *b) +{ + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(object); + COMPARE_STRING_FIELD(provider); + COMPARE_STRING_FIELD(label); + + return true; +} + +static bool +_equalDeclareCursorStmt(const DeclareCursorStmt *a, const DeclareCursorStmt *b) +{ + COMPARE_STRING_FIELD(portalname); + COMPARE_SCALAR_FIELD(options); + COMPARE_NODE_FIELD(query); + + return true; +} + +static bool +_equalClosePortalStmt(const ClosePortalStmt *a, const ClosePortalStmt *b) +{ + COMPARE_STRING_FIELD(portalname); + + return true; +} + +static bool +_equalFetchStmt(const FetchStmt *a, const FetchStmt *b) +{ + COMPARE_SCALAR_FIELD(direction); + COMPARE_SCALAR_FIELD(howMany); + COMPARE_STRING_FIELD(portalname); + COMPARE_SCALAR_FIELD(ismove); + + return true; +} + +static bool +_equalIndexStmt(const IndexStmt *a, const IndexStmt *b) +{ + COMPARE_STRING_FIELD(idxname); + COMPARE_NODE_FIELD(relation); + COMPARE_STRING_FIELD(accessMethod); + COMPARE_STRING_FIELD(tableSpace); + COMPARE_NODE_FIELD(indexParams); + COMPARE_NODE_FIELD(indexIncludingParams); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(excludeOpNames); + COMPARE_STRING_FIELD(idxcomment); + COMPARE_SCALAR_FIELD(indexOid); + COMPARE_SCALAR_FIELD(oldNumber); + COMPARE_SCALAR_FIELD(oldCreateSubid); + COMPARE_SCALAR_FIELD(oldFirstRelfilelocatorSubid); + COMPARE_SCALAR_FIELD(unique); + COMPARE_SCALAR_FIELD(nulls_not_distinct); + COMPARE_SCALAR_FIELD(primary); + COMPARE_SCALAR_FIELD(isconstraint); + COMPARE_SCALAR_FIELD(deferrable); + COMPARE_SCALAR_FIELD(initdeferred); + COMPARE_SCALAR_FIELD(transformed); + COMPARE_SCALAR_FIELD(concurrent); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_SCALAR_FIELD(reset_default_tblspc); + + return true; +} + +static bool +_equalCreateStatsStmt(const CreateStatsStmt *a, const CreateStatsStmt *b) +{ + COMPARE_NODE_FIELD(defnames); + COMPARE_NODE_FIELD(stat_types); + COMPARE_NODE_FIELD(exprs); + COMPARE_NODE_FIELD(relations); + COMPARE_STRING_FIELD(stxcomment); + COMPARE_SCALAR_FIELD(transformed); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalStatsElem(const StatsElem *a, const StatsElem *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(expr); + + return true; +} + +static bool +_equalAlterStatsStmt(const AlterStatsStmt *a, const AlterStatsStmt *b) +{ + COMPARE_NODE_FIELD(defnames); + COMPARE_SCALAR_FIELD(stxstattarget); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalCreateFunctionStmt(const CreateFunctionStmt *a, const CreateFunctionStmt *b) +{ + COMPARE_SCALAR_FIELD(is_procedure); + COMPARE_SCALAR_FIELD(replace); + COMPARE_NODE_FIELD(funcname); + COMPARE_NODE_FIELD(parameters); + COMPARE_NODE_FIELD(returnType); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(sql_body); + + return true; +} + +static bool +_equalFunctionParameter(const FunctionParameter *a, const FunctionParameter *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(argType); + COMPARE_SCALAR_FIELD(mode); + COMPARE_NODE_FIELD(defexpr); + + return true; +} + +static bool +_equalAlterFunctionStmt(const AlterFunctionStmt *a, const AlterFunctionStmt *b) +{ + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(func); + COMPARE_NODE_FIELD(actions); + + return true; +} + +static bool +_equalDoStmt(const DoStmt *a, const DoStmt *b) +{ + COMPARE_NODE_FIELD(args); + + return true; +} + +static bool +_equalCallStmt(const CallStmt *a, const CallStmt *b) +{ + COMPARE_NODE_FIELD(funccall); + COMPARE_NODE_FIELD(funcexpr); + COMPARE_NODE_FIELD(outargs); + + return true; +} + +static bool +_equalRenameStmt(const RenameStmt *a, const RenameStmt *b) +{ + COMPARE_SCALAR_FIELD(renameType); + COMPARE_SCALAR_FIELD(relationType); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(object); + COMPARE_STRING_FIELD(subname); + COMPARE_STRING_FIELD(newname); + COMPARE_SCALAR_FIELD(behavior); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalAlterObjectDependsStmt(const AlterObjectDependsStmt *a, const AlterObjectDependsStmt *b) +{ + COMPARE_SCALAR_FIELD(objectType); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(object); + COMPARE_NODE_FIELD(extname); + COMPARE_SCALAR_FIELD(remove); + + return true; +} + +static bool +_equalAlterObjectSchemaStmt(const AlterObjectSchemaStmt *a, const AlterObjectSchemaStmt *b) +{ + COMPARE_SCALAR_FIELD(objectType); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(object); + COMPARE_STRING_FIELD(newschema); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalAlterOwnerStmt(const AlterOwnerStmt *a, const AlterOwnerStmt *b) +{ + COMPARE_SCALAR_FIELD(objectType); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(object); + COMPARE_NODE_FIELD(newowner); + + return true; +} + +static bool +_equalAlterOperatorStmt(const AlterOperatorStmt *a, const AlterOperatorStmt *b) +{ + COMPARE_NODE_FIELD(opername); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterTypeStmt(const AlterTypeStmt *a, const AlterTypeStmt *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalRuleStmt(const RuleStmt *a, const RuleStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_STRING_FIELD(rulename); + COMPARE_NODE_FIELD(whereClause); + COMPARE_SCALAR_FIELD(event); + COMPARE_SCALAR_FIELD(instead); + COMPARE_NODE_FIELD(actions); + COMPARE_SCALAR_FIELD(replace); + + return true; +} + +static bool +_equalNotifyStmt(const NotifyStmt *a, const NotifyStmt *b) +{ + COMPARE_STRING_FIELD(conditionname); + COMPARE_STRING_FIELD(payload); + + return true; +} + +static bool +_equalListenStmt(const ListenStmt *a, const ListenStmt *b) +{ + COMPARE_STRING_FIELD(conditionname); + + return true; +} + +static bool +_equalUnlistenStmt(const UnlistenStmt *a, const UnlistenStmt *b) +{ + COMPARE_STRING_FIELD(conditionname); + + return true; +} + +static bool +_equalTransactionStmt(const TransactionStmt *a, const TransactionStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(options); + COMPARE_STRING_FIELD(savepoint_name); + COMPARE_STRING_FIELD(gid); + COMPARE_SCALAR_FIELD(chain); + + return true; +} + +static bool +_equalCompositeTypeStmt(const CompositeTypeStmt *a, const CompositeTypeStmt *b) +{ + COMPARE_NODE_FIELD(typevar); + COMPARE_NODE_FIELD(coldeflist); + + return true; +} + +static bool +_equalCreateEnumStmt(const CreateEnumStmt *a, const CreateEnumStmt *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(vals); + + return true; +} + +static bool +_equalCreateRangeStmt(const CreateRangeStmt *a, const CreateRangeStmt *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(params); + + return true; +} + +static bool +_equalAlterEnumStmt(const AlterEnumStmt *a, const AlterEnumStmt *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_STRING_FIELD(oldVal); + COMPARE_STRING_FIELD(newVal); + COMPARE_STRING_FIELD(newValNeighbor); + COMPARE_SCALAR_FIELD(newValIsAfter); + COMPARE_SCALAR_FIELD(skipIfNewValExists); + + return true; +} + +static bool +_equalViewStmt(const ViewStmt *a, const ViewStmt *b) +{ + COMPARE_NODE_FIELD(view); + COMPARE_NODE_FIELD(aliases); + COMPARE_NODE_FIELD(query); + COMPARE_SCALAR_FIELD(replace); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(withCheckOption); + + return true; +} + +static bool +_equalLoadStmt(const LoadStmt *a, const LoadStmt *b) +{ + COMPARE_STRING_FIELD(filename); + + return true; +} + +static bool +_equalCreatedbStmt(const CreatedbStmt *a, const CreatedbStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterDatabaseStmt(const AlterDatabaseStmt *a, const AlterDatabaseStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterDatabaseRefreshCollStmt(const AlterDatabaseRefreshCollStmt *a, const AlterDatabaseRefreshCollStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + + return true; +} + +static bool +_equalAlterDatabaseSetStmt(const AlterDatabaseSetStmt *a, const AlterDatabaseSetStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + COMPARE_NODE_FIELD(setstmt); + + return true; +} + +static bool +_equalDropdbStmt(const DropdbStmt *a, const DropdbStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + COMPARE_SCALAR_FIELD(missing_ok); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterSystemStmt(const AlterSystemStmt *a, const AlterSystemStmt *b) +{ + COMPARE_NODE_FIELD(setstmt); + + return true; +} + +static bool +_equalClusterStmt(const ClusterStmt *a, const ClusterStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_STRING_FIELD(indexname); + COMPARE_NODE_FIELD(params); + + return true; +} + +static bool +_equalVacuumStmt(const VacuumStmt *a, const VacuumStmt *b) +{ + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(rels); + COMPARE_SCALAR_FIELD(is_vacuumcmd); + + return true; +} + +static bool +_equalVacuumRelation(const VacuumRelation *a, const VacuumRelation *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_SCALAR_FIELD(oid); + COMPARE_NODE_FIELD(va_cols); + + return true; +} + +static bool +_equalExplainStmt(const ExplainStmt *a, const ExplainStmt *b) +{ + COMPARE_NODE_FIELD(query); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalCreateTableAsStmt(const CreateTableAsStmt *a, const CreateTableAsStmt *b) +{ + COMPARE_NODE_FIELD(query); + COMPARE_NODE_FIELD(into); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_SCALAR_FIELD(is_select_into); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalRefreshMatViewStmt(const RefreshMatViewStmt *a, const RefreshMatViewStmt *b) +{ + COMPARE_SCALAR_FIELD(concurrent); + COMPARE_SCALAR_FIELD(skipData); + COMPARE_NODE_FIELD(relation); + + return true; +} + +static bool +_equalCheckPointStmt(const CheckPointStmt *a, const CheckPointStmt *b) +{ + + return true; +} + +static bool +_equalDiscardStmt(const DiscardStmt *a, const DiscardStmt *b) +{ + COMPARE_SCALAR_FIELD(target); + + return true; +} + +static bool +_equalLockStmt(const LockStmt *a, const LockStmt *b) +{ + COMPARE_NODE_FIELD(relations); + COMPARE_SCALAR_FIELD(mode); + COMPARE_SCALAR_FIELD(nowait); + + return true; +} + +static bool +_equalConstraintsSetStmt(const ConstraintsSetStmt *a, const ConstraintsSetStmt *b) +{ + COMPARE_NODE_FIELD(constraints); + COMPARE_SCALAR_FIELD(deferred); + + return true; +} + +static bool +_equalReindexStmt(const ReindexStmt *a, const ReindexStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(relation); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(params); + + return true; +} + +static bool +_equalCreateConversionStmt(const CreateConversionStmt *a, const CreateConversionStmt *b) +{ + COMPARE_NODE_FIELD(conversion_name); + COMPARE_STRING_FIELD(for_encoding_name); + COMPARE_STRING_FIELD(to_encoding_name); + COMPARE_NODE_FIELD(func_name); + COMPARE_SCALAR_FIELD(def); + + return true; +} + +static bool +_equalCreateCastStmt(const CreateCastStmt *a, const CreateCastStmt *b) +{ + COMPARE_NODE_FIELD(sourcetype); + COMPARE_NODE_FIELD(targettype); + COMPARE_NODE_FIELD(func); + COMPARE_SCALAR_FIELD(context); + COMPARE_SCALAR_FIELD(inout); + + return true; +} + +static bool +_equalCreateTransformStmt(const CreateTransformStmt *a, const CreateTransformStmt *b) +{ + COMPARE_SCALAR_FIELD(replace); + COMPARE_NODE_FIELD(type_name); + COMPARE_STRING_FIELD(lang); + COMPARE_NODE_FIELD(fromsql); + COMPARE_NODE_FIELD(tosql); + + return true; +} + +static bool +_equalPrepareStmt(const PrepareStmt *a, const PrepareStmt *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(argtypes); + COMPARE_NODE_FIELD(query); + + return true; +} + +static bool +_equalExecuteStmt(const ExecuteStmt *a, const ExecuteStmt *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(params); + + return true; +} + +static bool +_equalDeallocateStmt(const DeallocateStmt *a, const DeallocateStmt *b) +{ + COMPARE_STRING_FIELD(name); + + return true; +} + +static bool +_equalDropOwnedStmt(const DropOwnedStmt *a, const DropOwnedStmt *b) +{ + COMPARE_NODE_FIELD(roles); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalReassignOwnedStmt(const ReassignOwnedStmt *a, const ReassignOwnedStmt *b) +{ + COMPARE_NODE_FIELD(roles); + COMPARE_NODE_FIELD(newrole); + + return true; +} + +static bool +_equalAlterTSDictionaryStmt(const AlterTSDictionaryStmt *a, const AlterTSDictionaryStmt *b) +{ + COMPARE_NODE_FIELD(dictname); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterTSConfigurationStmt(const AlterTSConfigurationStmt *a, const AlterTSConfigurationStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(cfgname); + COMPARE_NODE_FIELD(tokentype); + COMPARE_NODE_FIELD(dicts); + COMPARE_SCALAR_FIELD(override); + COMPARE_SCALAR_FIELD(replace); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalPublicationTable(const PublicationTable *a, const PublicationTable *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(columns); + + return true; +} + +static bool +_equalPublicationObjSpec(const PublicationObjSpec *a, const PublicationObjSpec *b) +{ + COMPARE_SCALAR_FIELD(pubobjtype); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(pubtable); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCreatePublicationStmt(const CreatePublicationStmt *a, const CreatePublicationStmt *b) +{ + COMPARE_STRING_FIELD(pubname); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(pubobjects); + COMPARE_SCALAR_FIELD(for_all_tables); + + return true; +} + +static bool +_equalAlterPublicationStmt(const AlterPublicationStmt *a, const AlterPublicationStmt *b) +{ + COMPARE_STRING_FIELD(pubname); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(pubobjects); + COMPARE_SCALAR_FIELD(for_all_tables); + COMPARE_SCALAR_FIELD(action); + + return true; +} + +static bool +_equalCreateSubscriptionStmt(const CreateSubscriptionStmt *a, const CreateSubscriptionStmt *b) +{ + COMPARE_STRING_FIELD(subname); + COMPARE_STRING_FIELD(conninfo); + COMPARE_NODE_FIELD(publication); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterSubscriptionStmt(const AlterSubscriptionStmt *a, const AlterSubscriptionStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_STRING_FIELD(subname); + COMPARE_STRING_FIELD(conninfo); + COMPARE_NODE_FIELD(publication); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalDropSubscriptionStmt(const DropSubscriptionStmt *a, const DropSubscriptionStmt *b) +{ + COMPARE_STRING_FIELD(subname); + COMPARE_SCALAR_FIELD(missing_ok); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalPathKey(const PathKey *a, const PathKey *b) +{ + COMPARE_SCALAR_FIELD(pk_eclass); + COMPARE_SCALAR_FIELD(pk_opfamily); + COMPARE_SCALAR_FIELD(pk_strategy); + COMPARE_SCALAR_FIELD(pk_nulls_first); + + return true; +} + +static bool +_equalRestrictInfo(const RestrictInfo *a, const RestrictInfo *b) +{ + COMPARE_NODE_FIELD(clause); + COMPARE_SCALAR_FIELD(is_pushed_down); + COMPARE_SCALAR_FIELD(has_clone); + COMPARE_SCALAR_FIELD(is_clone); + COMPARE_SCALAR_FIELD(security_level); + COMPARE_BITMAPSET_FIELD(required_relids); + COMPARE_BITMAPSET_FIELD(incompatible_relids); + COMPARE_BITMAPSET_FIELD(outer_relids); + COMPARE_SCALAR_FIELD(rinfo_serial); + + return true; +} + +static bool +_equalPlaceHolderVar(const PlaceHolderVar *a, const PlaceHolderVar *b) +{ + COMPARE_BITMAPSET_FIELD(phnullingrels); + COMPARE_SCALAR_FIELD(phid); + COMPARE_SCALAR_FIELD(phlevelsup); + + return true; +} + +static bool +_equalSpecialJoinInfo(const SpecialJoinInfo *a, const SpecialJoinInfo *b) +{ + COMPARE_BITMAPSET_FIELD(min_lefthand); + COMPARE_BITMAPSET_FIELD(min_righthand); + COMPARE_BITMAPSET_FIELD(syn_lefthand); + COMPARE_BITMAPSET_FIELD(syn_righthand); + COMPARE_SCALAR_FIELD(jointype); + COMPARE_SCALAR_FIELD(ojrelid); + COMPARE_BITMAPSET_FIELD(commute_above_l); + COMPARE_BITMAPSET_FIELD(commute_above_r); + COMPARE_BITMAPSET_FIELD(commute_below_l); + COMPARE_BITMAPSET_FIELD(commute_below_r); + COMPARE_SCALAR_FIELD(lhs_strict); + COMPARE_SCALAR_FIELD(semi_can_btree); + COMPARE_SCALAR_FIELD(semi_can_hash); + COMPARE_NODE_FIELD(semi_operators); + COMPARE_NODE_FIELD(semi_rhs_exprs); + + return true; +} + +static bool +_equalAppendRelInfo(const AppendRelInfo *a, const AppendRelInfo *b) +{ + COMPARE_SCALAR_FIELD(parent_relid); + COMPARE_SCALAR_FIELD(child_relid); + COMPARE_SCALAR_FIELD(parent_reltype); + COMPARE_SCALAR_FIELD(child_reltype); + COMPARE_NODE_FIELD(translated_vars); + COMPARE_SCALAR_FIELD(num_child_cols); + COMPARE_POINTER_FIELD(parent_colnos, a->num_child_cols * sizeof(AttrNumber)); + COMPARE_SCALAR_FIELD(parent_reloid); + + return true; +} + +static bool +_equalPlaceHolderInfo(const PlaceHolderInfo *a, const PlaceHolderInfo *b) +{ + COMPARE_SCALAR_FIELD(phid); + COMPARE_NODE_FIELD(ph_var); + COMPARE_BITMAPSET_FIELD(ph_eval_at); + COMPARE_BITMAPSET_FIELD(ph_lateral); + COMPARE_BITMAPSET_FIELD(ph_needed); + COMPARE_SCALAR_FIELD(ph_width); + + return true; +} + +static bool +_equalInteger(const Integer *a, const Integer *b) +{ + COMPARE_SCALAR_FIELD(ival); + + return true; +} + +static bool +_equalFloat(const Float *a, const Float *b) +{ + COMPARE_STRING_FIELD(fval); + + return true; +} + +static bool +_equalBoolean(const Boolean *a, const Boolean *b) +{ + COMPARE_SCALAR_FIELD(boolval); + + return true; +} + +static bool +_equalString(const String *a, const String *b) +{ + COMPARE_STRING_FIELD(sval); + + return true; +} + +static bool +_equalBitString(const BitString *a, const BitString *b) +{ + COMPARE_STRING_FIELD(bsval); + + return true; +} diff --git a/parser/include/equalfuncs.switch.c b/parser/include/equalfuncs.switch.c new file mode 100644 index 00000000..6fde221e --- /dev/null +++ b/parser/include/equalfuncs.switch.c @@ -0,0 +1,785 @@ +/*------------------------------------------------------------------------- + * + * equalfuncs.switch.c + * Generated node infrastructure code + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/nodes/gen_node_support.pl + * + *------------------------------------------------------------------------- + */ + case T_Alias: + retval = _equalAlias(a, b); + break; + case T_RangeVar: + retval = _equalRangeVar(a, b); + break; + case T_TableFunc: + retval = _equalTableFunc(a, b); + break; + case T_IntoClause: + retval = _equalIntoClause(a, b); + break; + case T_Var: + retval = _equalVar(a, b); + break; + case T_Const: + retval = _equalConst(a, b); + break; + case T_Param: + retval = _equalParam(a, b); + break; + case T_Aggref: + retval = _equalAggref(a, b); + break; + case T_GroupingFunc: + retval = _equalGroupingFunc(a, b); + break; + case T_WindowFunc: + retval = _equalWindowFunc(a, b); + break; + case T_SubscriptingRef: + retval = _equalSubscriptingRef(a, b); + break; + case T_FuncExpr: + retval = _equalFuncExpr(a, b); + break; + case T_NamedArgExpr: + retval = _equalNamedArgExpr(a, b); + break; + case T_OpExpr: + retval = _equalOpExpr(a, b); + break; + case T_DistinctExpr: + retval = _equalDistinctExpr(a, b); + break; + case T_NullIfExpr: + retval = _equalNullIfExpr(a, b); + break; + case T_ScalarArrayOpExpr: + retval = _equalScalarArrayOpExpr(a, b); + break; + case T_BoolExpr: + retval = _equalBoolExpr(a, b); + break; + case T_SubLink: + retval = _equalSubLink(a, b); + break; + case T_SubPlan: + retval = _equalSubPlan(a, b); + break; + case T_AlternativeSubPlan: + retval = _equalAlternativeSubPlan(a, b); + break; + case T_FieldSelect: + retval = _equalFieldSelect(a, b); + break; + case T_FieldStore: + retval = _equalFieldStore(a, b); + break; + case T_RelabelType: + retval = _equalRelabelType(a, b); + break; + case T_CoerceViaIO: + retval = _equalCoerceViaIO(a, b); + break; + case T_ArrayCoerceExpr: + retval = _equalArrayCoerceExpr(a, b); + break; + case T_ConvertRowtypeExpr: + retval = _equalConvertRowtypeExpr(a, b); + break; + case T_CollateExpr: + retval = _equalCollateExpr(a, b); + break; + case T_CaseExpr: + retval = _equalCaseExpr(a, b); + break; + case T_CaseWhen: + retval = _equalCaseWhen(a, b); + break; + case T_CaseTestExpr: + retval = _equalCaseTestExpr(a, b); + break; + case T_ArrayExpr: + retval = _equalArrayExpr(a, b); + break; + case T_RowExpr: + retval = _equalRowExpr(a, b); + break; + case T_RowCompareExpr: + retval = _equalRowCompareExpr(a, b); + break; + case T_CoalesceExpr: + retval = _equalCoalesceExpr(a, b); + break; + case T_MinMaxExpr: + retval = _equalMinMaxExpr(a, b); + break; + case T_SQLValueFunction: + retval = _equalSQLValueFunction(a, b); + break; + case T_XmlExpr: + retval = _equalXmlExpr(a, b); + break; + case T_JsonFormat: + retval = _equalJsonFormat(a, b); + break; + case T_JsonReturning: + retval = _equalJsonReturning(a, b); + break; + case T_JsonValueExpr: + retval = _equalJsonValueExpr(a, b); + break; + case T_JsonConstructorExpr: + retval = _equalJsonConstructorExpr(a, b); + break; + case T_JsonIsPredicate: + retval = _equalJsonIsPredicate(a, b); + break; + case T_NullTest: + retval = _equalNullTest(a, b); + break; + case T_BooleanTest: + retval = _equalBooleanTest(a, b); + break; + case T_CoerceToDomain: + retval = _equalCoerceToDomain(a, b); + break; + case T_CoerceToDomainValue: + retval = _equalCoerceToDomainValue(a, b); + break; + case T_SetToDefault: + retval = _equalSetToDefault(a, b); + break; + case T_CurrentOfExpr: + retval = _equalCurrentOfExpr(a, b); + break; + case T_NextValueExpr: + retval = _equalNextValueExpr(a, b); + break; + case T_InferenceElem: + retval = _equalInferenceElem(a, b); + break; + case T_TargetEntry: + retval = _equalTargetEntry(a, b); + break; + case T_RangeTblRef: + retval = _equalRangeTblRef(a, b); + break; + case T_JoinExpr: + retval = _equalJoinExpr(a, b); + break; + case T_FromExpr: + retval = _equalFromExpr(a, b); + break; + case T_OnConflictExpr: + retval = _equalOnConflictExpr(a, b); + break; + case T_Query: + retval = _equalQuery(a, b); + break; + case T_TypeName: + retval = _equalTypeName(a, b); + break; + case T_ColumnRef: + retval = _equalColumnRef(a, b); + break; + case T_ParamRef: + retval = _equalParamRef(a, b); + break; + case T_A_Expr: + retval = _equalA_Expr(a, b); + break; + case T_A_Const: + retval = _equalA_Const(a, b); + break; + case T_TypeCast: + retval = _equalTypeCast(a, b); + break; + case T_CollateClause: + retval = _equalCollateClause(a, b); + break; + case T_RoleSpec: + retval = _equalRoleSpec(a, b); + break; + case T_FuncCall: + retval = _equalFuncCall(a, b); + break; + case T_A_Star: + retval = _equalA_Star(a, b); + break; + case T_A_Indices: + retval = _equalA_Indices(a, b); + break; + case T_A_Indirection: + retval = _equalA_Indirection(a, b); + break; + case T_A_ArrayExpr: + retval = _equalA_ArrayExpr(a, b); + break; + case T_ResTarget: + retval = _equalResTarget(a, b); + break; + case T_MultiAssignRef: + retval = _equalMultiAssignRef(a, b); + break; + case T_SortBy: + retval = _equalSortBy(a, b); + break; + case T_WindowDef: + retval = _equalWindowDef(a, b); + break; + case T_RangeSubselect: + retval = _equalRangeSubselect(a, b); + break; + case T_RangeFunction: + retval = _equalRangeFunction(a, b); + break; + case T_RangeTableFunc: + retval = _equalRangeTableFunc(a, b); + break; + case T_RangeTableFuncCol: + retval = _equalRangeTableFuncCol(a, b); + break; + case T_RangeTableSample: + retval = _equalRangeTableSample(a, b); + break; + case T_ColumnDef: + retval = _equalColumnDef(a, b); + break; + case T_TableLikeClause: + retval = _equalTableLikeClause(a, b); + break; + case T_IndexElem: + retval = _equalIndexElem(a, b); + break; + case T_DefElem: + retval = _equalDefElem(a, b); + break; + case T_LockingClause: + retval = _equalLockingClause(a, b); + break; + case T_XmlSerialize: + retval = _equalXmlSerialize(a, b); + break; + case T_PartitionElem: + retval = _equalPartitionElem(a, b); + break; + case T_PartitionSpec: + retval = _equalPartitionSpec(a, b); + break; + case T_PartitionBoundSpec: + retval = _equalPartitionBoundSpec(a, b); + break; + case T_PartitionRangeDatum: + retval = _equalPartitionRangeDatum(a, b); + break; + case T_PartitionCmd: + retval = _equalPartitionCmd(a, b); + break; + case T_RangeTblEntry: + retval = _equalRangeTblEntry(a, b); + break; + case T_RTEPermissionInfo: + retval = _equalRTEPermissionInfo(a, b); + break; + case T_RangeTblFunction: + retval = _equalRangeTblFunction(a, b); + break; + case T_TableSampleClause: + retval = _equalTableSampleClause(a, b); + break; + case T_WithCheckOption: + retval = _equalWithCheckOption(a, b); + break; + case T_SortGroupClause: + retval = _equalSortGroupClause(a, b); + break; + case T_GroupingSet: + retval = _equalGroupingSet(a, b); + break; + case T_WindowClause: + retval = _equalWindowClause(a, b); + break; + case T_RowMarkClause: + retval = _equalRowMarkClause(a, b); + break; + case T_WithClause: + retval = _equalWithClause(a, b); + break; + case T_InferClause: + retval = _equalInferClause(a, b); + break; + case T_OnConflictClause: + retval = _equalOnConflictClause(a, b); + break; + case T_CTESearchClause: + retval = _equalCTESearchClause(a, b); + break; + case T_CTECycleClause: + retval = _equalCTECycleClause(a, b); + break; + case T_CommonTableExpr: + retval = _equalCommonTableExpr(a, b); + break; + case T_MergeWhenClause: + retval = _equalMergeWhenClause(a, b); + break; + case T_MergeAction: + retval = _equalMergeAction(a, b); + break; + case T_TriggerTransition: + retval = _equalTriggerTransition(a, b); + break; + case T_JsonOutput: + retval = _equalJsonOutput(a, b); + break; + case T_JsonKeyValue: + retval = _equalJsonKeyValue(a, b); + break; + case T_JsonObjectConstructor: + retval = _equalJsonObjectConstructor(a, b); + break; + case T_JsonArrayConstructor: + retval = _equalJsonArrayConstructor(a, b); + break; + case T_JsonArrayQueryConstructor: + retval = _equalJsonArrayQueryConstructor(a, b); + break; + case T_JsonAggConstructor: + retval = _equalJsonAggConstructor(a, b); + break; + case T_JsonObjectAgg: + retval = _equalJsonObjectAgg(a, b); + break; + case T_JsonArrayAgg: + retval = _equalJsonArrayAgg(a, b); + break; + case T_RawStmt: + retval = _equalRawStmt(a, b); + break; + case T_InsertStmt: + retval = _equalInsertStmt(a, b); + break; + case T_DeleteStmt: + retval = _equalDeleteStmt(a, b); + break; + case T_UpdateStmt: + retval = _equalUpdateStmt(a, b); + break; + case T_MergeStmt: + retval = _equalMergeStmt(a, b); + break; + case T_SelectStmt: + retval = _equalSelectStmt(a, b); + break; + case T_SetOperationStmt: + retval = _equalSetOperationStmt(a, b); + break; + case T_ReturnStmt: + retval = _equalReturnStmt(a, b); + break; + case T_PLAssignStmt: + retval = _equalPLAssignStmt(a, b); + break; + case T_CreateSchemaStmt: + retval = _equalCreateSchemaStmt(a, b); + break; + case T_AlterTableStmt: + retval = _equalAlterTableStmt(a, b); + break; + case T_ReplicaIdentityStmt: + retval = _equalReplicaIdentityStmt(a, b); + break; + case T_AlterTableCmd: + retval = _equalAlterTableCmd(a, b); + break; + case T_AlterCollationStmt: + retval = _equalAlterCollationStmt(a, b); + break; + case T_AlterDomainStmt: + retval = _equalAlterDomainStmt(a, b); + break; + case T_GrantStmt: + retval = _equalGrantStmt(a, b); + break; + case T_ObjectWithArgs: + retval = _equalObjectWithArgs(a, b); + break; + case T_AccessPriv: + retval = _equalAccessPriv(a, b); + break; + case T_GrantRoleStmt: + retval = _equalGrantRoleStmt(a, b); + break; + case T_AlterDefaultPrivilegesStmt: + retval = _equalAlterDefaultPrivilegesStmt(a, b); + break; + case T_CopyStmt: + retval = _equalCopyStmt(a, b); + break; + case T_VariableSetStmt: + retval = _equalVariableSetStmt(a, b); + break; + case T_VariableShowStmt: + retval = _equalVariableShowStmt(a, b); + break; + case T_CreateStmt: + retval = _equalCreateStmt(a, b); + break; + case T_Constraint: + retval = _equalConstraint(a, b); + break; + case T_CreateTableSpaceStmt: + retval = _equalCreateTableSpaceStmt(a, b); + break; + case T_DropTableSpaceStmt: + retval = _equalDropTableSpaceStmt(a, b); + break; + case T_AlterTableSpaceOptionsStmt: + retval = _equalAlterTableSpaceOptionsStmt(a, b); + break; + case T_AlterTableMoveAllStmt: + retval = _equalAlterTableMoveAllStmt(a, b); + break; + case T_CreateExtensionStmt: + retval = _equalCreateExtensionStmt(a, b); + break; + case T_AlterExtensionStmt: + retval = _equalAlterExtensionStmt(a, b); + break; + case T_AlterExtensionContentsStmt: + retval = _equalAlterExtensionContentsStmt(a, b); + break; + case T_CreateFdwStmt: + retval = _equalCreateFdwStmt(a, b); + break; + case T_AlterFdwStmt: + retval = _equalAlterFdwStmt(a, b); + break; + case T_CreateForeignServerStmt: + retval = _equalCreateForeignServerStmt(a, b); + break; + case T_AlterForeignServerStmt: + retval = _equalAlterForeignServerStmt(a, b); + break; + case T_CreateForeignTableStmt: + retval = _equalCreateForeignTableStmt(a, b); + break; + case T_CreateUserMappingStmt: + retval = _equalCreateUserMappingStmt(a, b); + break; + case T_AlterUserMappingStmt: + retval = _equalAlterUserMappingStmt(a, b); + break; + case T_DropUserMappingStmt: + retval = _equalDropUserMappingStmt(a, b); + break; + case T_ImportForeignSchemaStmt: + retval = _equalImportForeignSchemaStmt(a, b); + break; + case T_CreatePolicyStmt: + retval = _equalCreatePolicyStmt(a, b); + break; + case T_AlterPolicyStmt: + retval = _equalAlterPolicyStmt(a, b); + break; + case T_CreateAmStmt: + retval = _equalCreateAmStmt(a, b); + break; + case T_CreateTrigStmt: + retval = _equalCreateTrigStmt(a, b); + break; + case T_CreateEventTrigStmt: + retval = _equalCreateEventTrigStmt(a, b); + break; + case T_AlterEventTrigStmt: + retval = _equalAlterEventTrigStmt(a, b); + break; + case T_CreatePLangStmt: + retval = _equalCreatePLangStmt(a, b); + break; + case T_CreateRoleStmt: + retval = _equalCreateRoleStmt(a, b); + break; + case T_AlterRoleStmt: + retval = _equalAlterRoleStmt(a, b); + break; + case T_AlterRoleSetStmt: + retval = _equalAlterRoleSetStmt(a, b); + break; + case T_DropRoleStmt: + retval = _equalDropRoleStmt(a, b); + break; + case T_CreateSeqStmt: + retval = _equalCreateSeqStmt(a, b); + break; + case T_AlterSeqStmt: + retval = _equalAlterSeqStmt(a, b); + break; + case T_DefineStmt: + retval = _equalDefineStmt(a, b); + break; + case T_CreateDomainStmt: + retval = _equalCreateDomainStmt(a, b); + break; + case T_CreateOpClassStmt: + retval = _equalCreateOpClassStmt(a, b); + break; + case T_CreateOpClassItem: + retval = _equalCreateOpClassItem(a, b); + break; + case T_CreateOpFamilyStmt: + retval = _equalCreateOpFamilyStmt(a, b); + break; + case T_AlterOpFamilyStmt: + retval = _equalAlterOpFamilyStmt(a, b); + break; + case T_DropStmt: + retval = _equalDropStmt(a, b); + break; + case T_TruncateStmt: + retval = _equalTruncateStmt(a, b); + break; + case T_CommentStmt: + retval = _equalCommentStmt(a, b); + break; + case T_SecLabelStmt: + retval = _equalSecLabelStmt(a, b); + break; + case T_DeclareCursorStmt: + retval = _equalDeclareCursorStmt(a, b); + break; + case T_ClosePortalStmt: + retval = _equalClosePortalStmt(a, b); + break; + case T_FetchStmt: + retval = _equalFetchStmt(a, b); + break; + case T_IndexStmt: + retval = _equalIndexStmt(a, b); + break; + case T_CreateStatsStmt: + retval = _equalCreateStatsStmt(a, b); + break; + case T_StatsElem: + retval = _equalStatsElem(a, b); + break; + case T_AlterStatsStmt: + retval = _equalAlterStatsStmt(a, b); + break; + case T_CreateFunctionStmt: + retval = _equalCreateFunctionStmt(a, b); + break; + case T_FunctionParameter: + retval = _equalFunctionParameter(a, b); + break; + case T_AlterFunctionStmt: + retval = _equalAlterFunctionStmt(a, b); + break; + case T_DoStmt: + retval = _equalDoStmt(a, b); + break; + case T_CallStmt: + retval = _equalCallStmt(a, b); + break; + case T_RenameStmt: + retval = _equalRenameStmt(a, b); + break; + case T_AlterObjectDependsStmt: + retval = _equalAlterObjectDependsStmt(a, b); + break; + case T_AlterObjectSchemaStmt: + retval = _equalAlterObjectSchemaStmt(a, b); + break; + case T_AlterOwnerStmt: + retval = _equalAlterOwnerStmt(a, b); + break; + case T_AlterOperatorStmt: + retval = _equalAlterOperatorStmt(a, b); + break; + case T_AlterTypeStmt: + retval = _equalAlterTypeStmt(a, b); + break; + case T_RuleStmt: + retval = _equalRuleStmt(a, b); + break; + case T_NotifyStmt: + retval = _equalNotifyStmt(a, b); + break; + case T_ListenStmt: + retval = _equalListenStmt(a, b); + break; + case T_UnlistenStmt: + retval = _equalUnlistenStmt(a, b); + break; + case T_TransactionStmt: + retval = _equalTransactionStmt(a, b); + break; + case T_CompositeTypeStmt: + retval = _equalCompositeTypeStmt(a, b); + break; + case T_CreateEnumStmt: + retval = _equalCreateEnumStmt(a, b); + break; + case T_CreateRangeStmt: + retval = _equalCreateRangeStmt(a, b); + break; + case T_AlterEnumStmt: + retval = _equalAlterEnumStmt(a, b); + break; + case T_ViewStmt: + retval = _equalViewStmt(a, b); + break; + case T_LoadStmt: + retval = _equalLoadStmt(a, b); + break; + case T_CreatedbStmt: + retval = _equalCreatedbStmt(a, b); + break; + case T_AlterDatabaseStmt: + retval = _equalAlterDatabaseStmt(a, b); + break; + case T_AlterDatabaseRefreshCollStmt: + retval = _equalAlterDatabaseRefreshCollStmt(a, b); + break; + case T_AlterDatabaseSetStmt: + retval = _equalAlterDatabaseSetStmt(a, b); + break; + case T_DropdbStmt: + retval = _equalDropdbStmt(a, b); + break; + case T_AlterSystemStmt: + retval = _equalAlterSystemStmt(a, b); + break; + case T_ClusterStmt: + retval = _equalClusterStmt(a, b); + break; + case T_VacuumStmt: + retval = _equalVacuumStmt(a, b); + break; + case T_VacuumRelation: + retval = _equalVacuumRelation(a, b); + break; + case T_ExplainStmt: + retval = _equalExplainStmt(a, b); + break; + case T_CreateTableAsStmt: + retval = _equalCreateTableAsStmt(a, b); + break; + case T_RefreshMatViewStmt: + retval = _equalRefreshMatViewStmt(a, b); + break; + case T_CheckPointStmt: + retval = _equalCheckPointStmt(a, b); + break; + case T_DiscardStmt: + retval = _equalDiscardStmt(a, b); + break; + case T_LockStmt: + retval = _equalLockStmt(a, b); + break; + case T_ConstraintsSetStmt: + retval = _equalConstraintsSetStmt(a, b); + break; + case T_ReindexStmt: + retval = _equalReindexStmt(a, b); + break; + case T_CreateConversionStmt: + retval = _equalCreateConversionStmt(a, b); + break; + case T_CreateCastStmt: + retval = _equalCreateCastStmt(a, b); + break; + case T_CreateTransformStmt: + retval = _equalCreateTransformStmt(a, b); + break; + case T_PrepareStmt: + retval = _equalPrepareStmt(a, b); + break; + case T_ExecuteStmt: + retval = _equalExecuteStmt(a, b); + break; + case T_DeallocateStmt: + retval = _equalDeallocateStmt(a, b); + break; + case T_DropOwnedStmt: + retval = _equalDropOwnedStmt(a, b); + break; + case T_ReassignOwnedStmt: + retval = _equalReassignOwnedStmt(a, b); + break; + case T_AlterTSDictionaryStmt: + retval = _equalAlterTSDictionaryStmt(a, b); + break; + case T_AlterTSConfigurationStmt: + retval = _equalAlterTSConfigurationStmt(a, b); + break; + case T_PublicationTable: + retval = _equalPublicationTable(a, b); + break; + case T_PublicationObjSpec: + retval = _equalPublicationObjSpec(a, b); + break; + case T_CreatePublicationStmt: + retval = _equalCreatePublicationStmt(a, b); + break; + case T_AlterPublicationStmt: + retval = _equalAlterPublicationStmt(a, b); + break; + case T_CreateSubscriptionStmt: + retval = _equalCreateSubscriptionStmt(a, b); + break; + case T_AlterSubscriptionStmt: + retval = _equalAlterSubscriptionStmt(a, b); + break; + case T_DropSubscriptionStmt: + retval = _equalDropSubscriptionStmt(a, b); + break; + case T_PathKey: + retval = _equalPathKey(a, b); + break; + case T_RestrictInfo: + retval = _equalRestrictInfo(a, b); + break; + case T_PlaceHolderVar: + retval = _equalPlaceHolderVar(a, b); + break; + case T_SpecialJoinInfo: + retval = _equalSpecialJoinInfo(a, b); + break; + case T_AppendRelInfo: + retval = _equalAppendRelInfo(a, b); + break; + case T_PlaceHolderInfo: + retval = _equalPlaceHolderInfo(a, b); + break; + case T_Bitmapset: + retval = _equalBitmapset(a, b); + break; + case T_ExtensibleNode: + retval = _equalExtensibleNode(a, b); + break; + case T_Integer: + retval = _equalInteger(a, b); + break; + case T_Float: + retval = _equalFloat(a, b); + break; + case T_Boolean: + retval = _equalBoolean(a, b); + break; + case T_String: + retval = _equalString(a, b); + break; + case T_BitString: + retval = _equalBitString(a, b); + break; diff --git a/parser/include/executor/execdesc.h b/parser/include/executor/execdesc.h index e79e2c00..af2bf36d 100644 --- a/parser/include/executor/execdesc.h +++ b/parser/include/executor/execdesc.h @@ -5,7 +5,7 @@ * and related modules. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/executor/execdesc.h diff --git a/parser/include/executor/executor.h b/parser/include/executor/executor.h index 82925b4b..ac022479 100644 --- a/parser/include/executor/executor.h +++ b/parser/include/executor/executor.h @@ -4,7 +4,7 @@ * support for the POSTGRES executor module * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/executor/executor.h @@ -36,6 +36,11 @@ * of startup should occur. However, error checks (such as permission checks) * should be performed. * + * EXPLAIN_GENERIC can only be used together with EXPLAIN_ONLY. It indicates + * that a generic plan is being shown using EXPLAIN (GENERIC_PLAN), which + * means that missing parameter values must be tolerated. Currently, the only + * effect is to suppress execution-time partition pruning. + * * REWIND indicates that the plan node should try to efficiently support * rescans without parameter changes. (Nodes must support ExecReScan calls * in any case, but if this flag was not given, they are at liberty to do it @@ -52,13 +57,18 @@ * AfterTriggerBeginQuery/AfterTriggerEndQuery. This does not necessarily * mean that the plan can't queue any AFTER triggers; just that the caller * is responsible for there being a trigger context for them to be queued in. + * + * WITH_NO_DATA indicates that we are performing REFRESH MATERIALIZED VIEW + * ... WITH NO DATA. Currently, the only effect is to suppress errors about + * scanning unpopulated materialized views. */ -#define EXEC_FLAG_EXPLAIN_ONLY 0x0001 /* EXPLAIN, no ANALYZE */ -#define EXEC_FLAG_REWIND 0x0002 /* need efficient rescan */ -#define EXEC_FLAG_BACKWARD 0x0004 /* need backward scan */ -#define EXEC_FLAG_MARK 0x0008 /* need mark/restore */ -#define EXEC_FLAG_SKIP_TRIGGERS 0x0010 /* skip AfterTrigger calls */ -#define EXEC_FLAG_WITH_NO_DATA 0x0020 /* rel scannability doesn't matter */ +#define EXEC_FLAG_EXPLAIN_ONLY 0x0001 /* EXPLAIN, no ANALYZE */ +#define EXEC_FLAG_EXPLAIN_GENERIC 0x0002 /* EXPLAIN (GENERIC_PLAN) */ +#define EXEC_FLAG_REWIND 0x0004 /* need efficient rescan */ +#define EXEC_FLAG_BACKWARD 0x0008 /* need backward scan */ +#define EXEC_FLAG_MARK 0x0010 /* need mark/restore */ +#define EXEC_FLAG_SKIP_TRIGGERS 0x0020 /* skip AfterTrigger setup */ +#define EXEC_FLAG_WITH_NO_DATA 0x0040 /* REFRESH ... WITH NO DATA */ /* Hook for plugins to get control in ExecutorStart() */ @@ -80,8 +90,10 @@ extern PGDLLIMPORT ExecutorFinish_hook_type ExecutorFinish_hook; typedef void (*ExecutorEnd_hook_type) (QueryDesc *queryDesc); extern PGDLLIMPORT ExecutorEnd_hook_type ExecutorEnd_hook; -/* Hook for plugins to get control in ExecCheckRTPerms() */ -typedef bool (*ExecutorCheckPerms_hook_type) (List *, bool); +/* Hook for plugins to get control in ExecCheckPermissions() */ +typedef bool (*ExecutorCheckPerms_hook_type) (List *rangeTable, + List *rtePermInfos, + bool ereport_on_violation); extern PGDLLIMPORT ExecutorCheckPerms_hook_type ExecutorCheckPerms_hook; @@ -196,7 +208,8 @@ extern void standard_ExecutorFinish(QueryDesc *queryDesc); extern void ExecutorEnd(QueryDesc *queryDesc); extern void standard_ExecutorEnd(QueryDesc *queryDesc); extern void ExecutorRewind(QueryDesc *queryDesc); -extern bool ExecCheckRTPerms(List *rangeTable, bool ereport_on_violation); +extern bool ExecCheckPermissions(List *rangeTable, + List *rteperminfos, bool ereport_on_violation); extern void CheckValidResultRel(ResultRelInfo *resultRelInfo, CmdType operation); extern void InitResultRelInfo(ResultRelInfo *resultRelInfo, Relation resultRelationDesc, @@ -218,9 +231,10 @@ extern LockTupleMode ExecUpdateLockMode(EState *estate, ResultRelInfo *relinfo); extern ExecRowMark *ExecFindRowMark(EState *estate, Index rti, bool missing_ok); extern ExecAuxRowMark *ExecBuildAuxRowMark(ExecRowMark *erm, List *targetlist); extern TupleTableSlot *EvalPlanQual(EPQState *epqstate, Relation relation, - Index rti, TupleTableSlot *testslot); + Index rti, TupleTableSlot *inputslot); extern void EvalPlanQualInit(EPQState *epqstate, EState *parentestate, - Plan *subplan, List *auxrowmarks, int epqParam); + Plan *subplan, List *auxrowmarks, + int epqParam, List *resultRelations); extern void EvalPlanQualSetPlan(EPQState *epqstate, Plan *subplan, List *auxrowmarks); extern TupleTableSlot *EvalPlanQualSlot(EPQState *epqstate, @@ -239,7 +253,7 @@ extern PlanState *ExecInitNode(Plan *node, EState *estate, int eflags); extern void ExecSetExecProcNode(PlanState *node, ExecProcNodeMtd function); extern Node *MultiExecProcNode(PlanState *node); extern void ExecEndNode(PlanState *node); -extern bool ExecShutdownNode(PlanState *node); +extern void ExecShutdownNode(PlanState *node); extern void ExecSetTupleBound(int64 tuples_needed, PlanState *child_node); @@ -432,7 +446,7 @@ ExecQualAndReset(ExprState *state, ExprContext *econtext) } #endif -extern bool ExecCheck(ExprState *state, ExprContext *context); +extern bool ExecCheck(ExprState *state, ExprContext *econtext); /* * prototypes from functions in execSRF.c @@ -473,7 +487,7 @@ extern void ExecInitResultSlot(PlanState *planstate, extern void ExecInitResultTupleSlotTL(PlanState *planstate, const TupleTableSlotOps *tts_ops); extern void ExecInitScanTupleSlot(EState *estate, ScanState *scanstate, - TupleDesc tupleDesc, + TupleDesc tupledesc, const TupleTableSlotOps *tts_ops); extern TupleTableSlot *ExecInitExtraTupleSlot(EState *estate, TupleDesc tupledesc, @@ -565,7 +579,7 @@ extern bool ExecRelationIsTargetRelation(EState *estate, Index scanrelid); extern Relation ExecOpenScanRelation(EState *estate, Index scanrelid, int eflags); -extern void ExecInitRangeTable(EState *estate, List *rangeTable); +extern void ExecInitRangeTable(EState *estate, List *rangeTable, List *permInfos); extern void ExecCloseRangeTableRelations(EState *estate); extern void ExecCloseResultRelations(EState *estate); @@ -600,7 +614,9 @@ extern TupleTableSlot *ExecGetTriggerOldSlot(EState *estate, ResultRelInfo *relI extern TupleTableSlot *ExecGetTriggerNewSlot(EState *estate, ResultRelInfo *relInfo); extern TupleTableSlot *ExecGetReturningSlot(EState *estate, ResultRelInfo *relInfo); extern TupleConversionMap *ExecGetChildToRootMap(ResultRelInfo *resultRelInfo); +extern TupleConversionMap *ExecGetRootToChildMap(ResultRelInfo *resultRelInfo, EState *estate); +extern Oid ExecGetResultRelCheckAsUser(ResultRelInfo *relInfo, EState *estate); extern Bitmapset *ExecGetInsertedCols(ResultRelInfo *relinfo, EState *estate); extern Bitmapset *ExecGetUpdatedCols(ResultRelInfo *relinfo, EState *estate); extern Bitmapset *ExecGetExtraUpdatedCols(ResultRelInfo *relinfo, EState *estate); @@ -615,7 +631,8 @@ extern List *ExecInsertIndexTuples(ResultRelInfo *resultRelInfo, TupleTableSlot *slot, EState *estate, bool update, bool noDupErr, - bool *specConflict, List *arbiterIndexes); + bool *specConflict, List *arbiterIndexes, + bool onlySummarizing); extern bool ExecCheckIndexConstraints(ResultRelInfo *resultRelInfo, TupleTableSlot *slot, EState *estate, ItemPointer conflictTid, diff --git a/parser/include/executor/functions.h b/parser/include/executor/functions.h index 4c20cf4d..5d9f3256 100644 --- a/parser/include/executor/functions.h +++ b/parser/include/executor/functions.h @@ -4,7 +4,7 @@ * Declarations for execution of SQL-language functions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/executor/functions.h diff --git a/parser/include/executor/instrument.h b/parser/include/executor/instrument.h index 2945cce3..87e5e218 100644 --- a/parser/include/executor/instrument.h +++ b/parser/include/executor/instrument.h @@ -4,7 +4,7 @@ * definitions for run-time statistics collection * * - * Copyright (c) 2001-2022, PostgreSQL Global Development Group + * Copyright (c) 2001-2023, PostgreSQL Global Development Group * * src/include/executor/instrument.h * diff --git a/parser/include/executor/spi.h b/parser/include/executor/spi.h index b2c0c748..d1de139a 100644 --- a/parser/include/executor/spi.h +++ b/parser/include/executor/spi.h @@ -3,7 +3,7 @@ * spi.h * Server Programming Interface public declarations * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/executor/spi.h @@ -174,7 +174,7 @@ extern void *SPI_palloc(Size size); extern void *SPI_repalloc(void *pointer, Size size); extern void SPI_pfree(void *pointer); extern Datum SPI_datumTransfer(Datum value, bool typByVal, int typLen); -extern void SPI_freetuple(HeapTuple pointer); +extern void SPI_freetuple(HeapTuple tuple); extern void SPI_freetuptable(SPITupleTable *tuptable); extern Portal SPI_cursor_open(const char *name, SPIPlanPtr plan, diff --git a/parser/include/executor/tablefunc.h b/parser/include/executor/tablefunc.h index 23b7ae55..ca235ae1 100644 --- a/parser/include/executor/tablefunc.h +++ b/parser/include/executor/tablefunc.h @@ -3,7 +3,7 @@ * tablefunc.h * interface for TableFunc executor node * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/executor/tablefunc.h diff --git a/parser/include/executor/tuptable.h b/parser/include/executor/tuptable.h index 6306bb6f..4210d6d8 100644 --- a/parser/include/executor/tuptable.h +++ b/parser/include/executor/tuptable.h @@ -4,7 +4,7 @@ * tuple table support stuff * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/executor/tuptable.h @@ -46,7 +46,6 @@ * A "minimal" tuple is handled similarly to a palloc'd regular tuple. * At present, minimal tuples never are stored in buffers, so there is no * parallel to case 1. Note that a minimal tuple has no "system columns". - * (Actually, it could have an OID, but we have no need to access the OID.) * * A "virtual" tuple is an optimization used to minimize physical data copying * in a nest of plan nodes. Until materialized pass-by-reference Datums in @@ -68,8 +67,8 @@ * A TupleTableSlot can also be "empty", indicated by flag TTS_FLAG_EMPTY set * in tts_flags, holding no valid data. This is the only valid state for a * freshly-created slot that has not yet had a tuple descriptor assigned to - * it. In this state, TTS_SHOULDFREE should not be set in tts_flags, tts_tuple - * must be NULL and tts_nvalid zero. + * it. In this state, TTS_FLAG_SHOULDFREE should not be set in tts_flags and + * tts_nvalid should be set to zero. * * The tupleDescriptor is simply referenced, not copied, by the TupleTableSlot * code. The caller of ExecSetSlotDescriptor() is responsible for providing @@ -79,8 +78,8 @@ * mechanism to do more. However, the slot will increment the tupdesc * reference count if a reference-counted tupdesc is supplied.) * - * When TTS_SHOULDFREE is set in tts_flags, the physical tuple is "owned" by - * the slot and should be freed when the slot's reference to the tuple is + * When TTS_FLAG_SHOULDFREE is set in tts_flags, the physical tuple is "owned" + * by the slot and should be freed when the slot's reference to the tuple is * dropped. * * tts_values/tts_isnull are allocated either when the slot is created (when @@ -237,6 +236,8 @@ extern PGDLLIMPORT const TupleTableSlotOps TTSOpsBufferHeapTuple; typedef struct VirtualTupleTableSlot { + pg_node_attr(abstract) + TupleTableSlot base; char *data; /* data for materialized slots */ @@ -244,6 +245,8 @@ typedef struct VirtualTupleTableSlot typedef struct HeapTupleTableSlot { + pg_node_attr(abstract) + TupleTableSlot base; #define FIELDNO_HEAPTUPLETABLESLOT_TUPLE 1 @@ -256,19 +259,23 @@ typedef struct HeapTupleTableSlot /* heap tuple residing in a buffer */ typedef struct BufferHeapTupleTableSlot { + pg_node_attr(abstract) + HeapTupleTableSlot base; /* * If buffer is not InvalidBuffer, then the slot is holding a pin on the * indicated buffer page; drop the pin when we release the slot's * reference to that buffer. (TTS_FLAG_SHOULDFREE should not be set in - * such a case, since presumably tts_tuple is pointing into the buffer.) + * such a case, since presumably base.tuple is pointing into the buffer.) */ Buffer buffer; /* tuple's buffer, or InvalidBuffer */ } BufferHeapTupleTableSlot; typedef struct MinimalTupleTableSlot { + pg_node_attr(abstract) + TupleTableSlot base; /* @@ -366,7 +373,7 @@ slot_getallattrs(TupleTableSlot *slot) static inline bool slot_attisnull(TupleTableSlot *slot, int attnum) { - AssertArg(attnum > 0); + Assert(attnum > 0); if (attnum > slot->tts_nvalid) slot_getsomeattrs(slot, attnum); @@ -381,7 +388,7 @@ static inline Datum slot_getattr(TupleTableSlot *slot, int attnum, bool *isnull) { - AssertArg(attnum > 0); + Assert(attnum > 0); if (attnum > slot->tts_nvalid) slot_getsomeattrs(slot, attnum); @@ -401,7 +408,7 @@ slot_getattr(TupleTableSlot *slot, int attnum, static inline Datum slot_getsysattr(TupleTableSlot *slot, int attnum, bool *isnull) { - AssertArg(attnum < 0); /* caller error */ + Assert(attnum < 0); /* caller error */ if (attnum == TableOidAttributeNumber) { @@ -475,7 +482,7 @@ static inline TupleTableSlot * ExecCopySlot(TupleTableSlot *dstslot, TupleTableSlot *srcslot) { Assert(!TTS_EMPTY(srcslot)); - AssertArg(srcslot != dstslot); + Assert(srcslot != dstslot); dstslot->tts_ops->copyslot(dstslot, srcslot); diff --git a/parser/include/fmgr.h b/parser/include/fmgr.h index 5314b737..b120f5e7 100644 --- a/parser/include/fmgr.h +++ b/parser/include/fmgr.h @@ -8,7 +8,7 @@ * or call fmgr-callable functions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/fmgr.h @@ -413,7 +413,7 @@ typedef const Pg_finfo_record *(*PGFInfoFunction) (void); * info function, since authors shouldn't need to be explicitly aware of it. */ #define PG_FUNCTION_INFO_V1(funcname) \ -extern Datum funcname(PG_FUNCTION_ARGS); \ +extern PGDLLEXPORT Datum funcname(PG_FUNCTION_ARGS); \ extern PGDLLEXPORT const Pg_finfo_record * CppConcat(pg_finfo_,funcname)(void); \ const Pg_finfo_record * \ CppConcat(pg_finfo_,funcname) (void) \ @@ -424,6 +424,17 @@ CppConcat(pg_finfo_,funcname) (void) \ extern int no_such_variable +/* + * Declare _PG_init/_PG_fini centrally. Historically each shared library had + * its own declaration; but now that we want to mark these PGDLLEXPORT, using + * central declarations avoids each extension having to add that. Any + * existing declarations in extensions will continue to work if fmgr.h is + * included before them, otherwise compilation for Windows will fail. + */ +extern PGDLLEXPORT void _PG_init(void); +extern PGDLLEXPORT void _PG_fini(void); + + /*------------------------------------------------------------------------- * Support for verifying backend compatibility of loaded modules * @@ -689,6 +700,14 @@ extern Datum OidFunctionCall9Coll(Oid functionId, Oid collation, /* Special cases for convenient invocation of datatype I/O functions. */ extern Datum InputFunctionCall(FmgrInfo *flinfo, char *str, Oid typioparam, int32 typmod); +extern bool InputFunctionCallSafe(FmgrInfo *flinfo, char *str, + Oid typioparam, int32 typmod, + fmNodePtr escontext, + Datum *result); +extern bool DirectInputFunctionCallSafe(PGFunction func, char *str, + Oid typioparam, int32 typmod, + fmNodePtr escontext, + Datum *result); extern Datum OidInputFunctionCall(Oid functionId, char *str, Oid typioparam, int32 typmod); extern char *OutputFunctionCall(FmgrInfo *flinfo, Datum val); diff --git a/parser/include/foreign/fdwapi.h b/parser/include/foreign/fdwapi.h new file mode 100644 index 00000000..996c62e3 --- /dev/null +++ b/parser/include/foreign/fdwapi.h @@ -0,0 +1,294 @@ +/*------------------------------------------------------------------------- + * + * fdwapi.h + * API for foreign-data wrappers + * + * Copyright (c) 2010-2023, PostgreSQL Global Development Group + * + * src/include/foreign/fdwapi.h + * + *------------------------------------------------------------------------- + */ +#ifndef FDWAPI_H +#define FDWAPI_H + +#include "access/parallel.h" +#include "nodes/execnodes.h" +#include "nodes/pathnodes.h" + +/* To avoid including explain.h here, reference ExplainState thus: */ +struct ExplainState; + + +/* + * Callback function signatures --- see fdwhandler.sgml for more info. + */ + +typedef void (*GetForeignRelSize_function) (PlannerInfo *root, + RelOptInfo *baserel, + Oid foreigntableid); + +typedef void (*GetForeignPaths_function) (PlannerInfo *root, + RelOptInfo *baserel, + Oid foreigntableid); + +typedef ForeignScan *(*GetForeignPlan_function) (PlannerInfo *root, + RelOptInfo *baserel, + Oid foreigntableid, + ForeignPath *best_path, + List *tlist, + List *scan_clauses, + Plan *outer_plan); + +typedef void (*BeginForeignScan_function) (ForeignScanState *node, + int eflags); + +typedef TupleTableSlot *(*IterateForeignScan_function) (ForeignScanState *node); + +typedef bool (*RecheckForeignScan_function) (ForeignScanState *node, + TupleTableSlot *slot); + +typedef void (*ReScanForeignScan_function) (ForeignScanState *node); + +typedef void (*EndForeignScan_function) (ForeignScanState *node); + +typedef void (*GetForeignJoinPaths_function) (PlannerInfo *root, + RelOptInfo *joinrel, + RelOptInfo *outerrel, + RelOptInfo *innerrel, + JoinType jointype, + JoinPathExtraData *extra); + +typedef void (*GetForeignUpperPaths_function) (PlannerInfo *root, + UpperRelationKind stage, + RelOptInfo *input_rel, + RelOptInfo *output_rel, + void *extra); + +typedef void (*AddForeignUpdateTargets_function) (PlannerInfo *root, + Index rtindex, + RangeTblEntry *target_rte, + Relation target_relation); + +typedef List *(*PlanForeignModify_function) (PlannerInfo *root, + ModifyTable *plan, + Index resultRelation, + int subplan_index); + +typedef void (*BeginForeignModify_function) (ModifyTableState *mtstate, + ResultRelInfo *rinfo, + List *fdw_private, + int subplan_index, + int eflags); + +typedef TupleTableSlot *(*ExecForeignInsert_function) (EState *estate, + ResultRelInfo *rinfo, + TupleTableSlot *slot, + TupleTableSlot *planSlot); + +typedef TupleTableSlot **(*ExecForeignBatchInsert_function) (EState *estate, + ResultRelInfo *rinfo, + TupleTableSlot **slots, + TupleTableSlot **planSlots, + int *numSlots); + +typedef int (*GetForeignModifyBatchSize_function) (ResultRelInfo *rinfo); + +typedef TupleTableSlot *(*ExecForeignUpdate_function) (EState *estate, + ResultRelInfo *rinfo, + TupleTableSlot *slot, + TupleTableSlot *planSlot); + +typedef TupleTableSlot *(*ExecForeignDelete_function) (EState *estate, + ResultRelInfo *rinfo, + TupleTableSlot *slot, + TupleTableSlot *planSlot); + +typedef void (*EndForeignModify_function) (EState *estate, + ResultRelInfo *rinfo); + +typedef void (*BeginForeignInsert_function) (ModifyTableState *mtstate, + ResultRelInfo *rinfo); + +typedef void (*EndForeignInsert_function) (EState *estate, + ResultRelInfo *rinfo); + +typedef int (*IsForeignRelUpdatable_function) (Relation rel); + +typedef bool (*PlanDirectModify_function) (PlannerInfo *root, + ModifyTable *plan, + Index resultRelation, + int subplan_index); + +typedef void (*BeginDirectModify_function) (ForeignScanState *node, + int eflags); + +typedef TupleTableSlot *(*IterateDirectModify_function) (ForeignScanState *node); + +typedef void (*EndDirectModify_function) (ForeignScanState *node); + +typedef RowMarkType (*GetForeignRowMarkType_function) (RangeTblEntry *rte, + LockClauseStrength strength); + +typedef void (*RefetchForeignRow_function) (EState *estate, + ExecRowMark *erm, + Datum rowid, + TupleTableSlot *slot, + bool *updated); + +typedef void (*ExplainForeignScan_function) (ForeignScanState *node, + struct ExplainState *es); + +typedef void (*ExplainForeignModify_function) (ModifyTableState *mtstate, + ResultRelInfo *rinfo, + List *fdw_private, + int subplan_index, + struct ExplainState *es); + +typedef void (*ExplainDirectModify_function) (ForeignScanState *node, + struct ExplainState *es); + +typedef int (*AcquireSampleRowsFunc) (Relation relation, int elevel, + HeapTuple *rows, int targrows, + double *totalrows, + double *totaldeadrows); + +typedef bool (*AnalyzeForeignTable_function) (Relation relation, + AcquireSampleRowsFunc *func, + BlockNumber *totalpages); + +typedef List *(*ImportForeignSchema_function) (ImportForeignSchemaStmt *stmt, + Oid serverOid); + +typedef void (*ExecForeignTruncate_function) (List *rels, + DropBehavior behavior, + bool restart_seqs); + +typedef Size (*EstimateDSMForeignScan_function) (ForeignScanState *node, + ParallelContext *pcxt); +typedef void (*InitializeDSMForeignScan_function) (ForeignScanState *node, + ParallelContext *pcxt, + void *coordinate); +typedef void (*ReInitializeDSMForeignScan_function) (ForeignScanState *node, + ParallelContext *pcxt, + void *coordinate); +typedef void (*InitializeWorkerForeignScan_function) (ForeignScanState *node, + shm_toc *toc, + void *coordinate); +typedef void (*ShutdownForeignScan_function) (ForeignScanState *node); +typedef bool (*IsForeignScanParallelSafe_function) (PlannerInfo *root, + RelOptInfo *rel, + RangeTblEntry *rte); +typedef List *(*ReparameterizeForeignPathByChild_function) (PlannerInfo *root, + List *fdw_private, + RelOptInfo *child_rel); + +typedef bool (*IsForeignPathAsyncCapable_function) (ForeignPath *path); + +typedef void (*ForeignAsyncRequest_function) (AsyncRequest *areq); + +typedef void (*ForeignAsyncConfigureWait_function) (AsyncRequest *areq); + +typedef void (*ForeignAsyncNotify_function) (AsyncRequest *areq); + +/* + * FdwRoutine is the struct returned by a foreign-data wrapper's handler + * function. It provides pointers to the callback functions needed by the + * planner and executor. + * + * More function pointers are likely to be added in the future. Therefore + * it's recommended that the handler initialize the struct with + * makeNode(FdwRoutine) so that all fields are set to NULL. This will + * ensure that no fields are accidentally left undefined. + */ +typedef struct FdwRoutine +{ + NodeTag type; + + /* Functions for scanning foreign tables */ + GetForeignRelSize_function GetForeignRelSize; + GetForeignPaths_function GetForeignPaths; + GetForeignPlan_function GetForeignPlan; + BeginForeignScan_function BeginForeignScan; + IterateForeignScan_function IterateForeignScan; + ReScanForeignScan_function ReScanForeignScan; + EndForeignScan_function EndForeignScan; + + /* + * Remaining functions are optional. Set the pointer to NULL for any that + * are not provided. + */ + + /* Functions for remote-join planning */ + GetForeignJoinPaths_function GetForeignJoinPaths; + + /* Functions for remote upper-relation (post scan/join) planning */ + GetForeignUpperPaths_function GetForeignUpperPaths; + + /* Functions for updating foreign tables */ + AddForeignUpdateTargets_function AddForeignUpdateTargets; + PlanForeignModify_function PlanForeignModify; + BeginForeignModify_function BeginForeignModify; + ExecForeignInsert_function ExecForeignInsert; + ExecForeignBatchInsert_function ExecForeignBatchInsert; + GetForeignModifyBatchSize_function GetForeignModifyBatchSize; + ExecForeignUpdate_function ExecForeignUpdate; + ExecForeignDelete_function ExecForeignDelete; + EndForeignModify_function EndForeignModify; + BeginForeignInsert_function BeginForeignInsert; + EndForeignInsert_function EndForeignInsert; + IsForeignRelUpdatable_function IsForeignRelUpdatable; + PlanDirectModify_function PlanDirectModify; + BeginDirectModify_function BeginDirectModify; + IterateDirectModify_function IterateDirectModify; + EndDirectModify_function EndDirectModify; + + /* Functions for SELECT FOR UPDATE/SHARE row locking */ + GetForeignRowMarkType_function GetForeignRowMarkType; + RefetchForeignRow_function RefetchForeignRow; + RecheckForeignScan_function RecheckForeignScan; + + /* Support functions for EXPLAIN */ + ExplainForeignScan_function ExplainForeignScan; + ExplainForeignModify_function ExplainForeignModify; + ExplainDirectModify_function ExplainDirectModify; + + /* Support functions for ANALYZE */ + AnalyzeForeignTable_function AnalyzeForeignTable; + + /* Support functions for IMPORT FOREIGN SCHEMA */ + ImportForeignSchema_function ImportForeignSchema; + + /* Support functions for TRUNCATE */ + ExecForeignTruncate_function ExecForeignTruncate; + + /* Support functions for parallelism under Gather node */ + IsForeignScanParallelSafe_function IsForeignScanParallelSafe; + EstimateDSMForeignScan_function EstimateDSMForeignScan; + InitializeDSMForeignScan_function InitializeDSMForeignScan; + ReInitializeDSMForeignScan_function ReInitializeDSMForeignScan; + InitializeWorkerForeignScan_function InitializeWorkerForeignScan; + ShutdownForeignScan_function ShutdownForeignScan; + + /* Support functions for path reparameterization. */ + ReparameterizeForeignPathByChild_function ReparameterizeForeignPathByChild; + + /* Support functions for asynchronous execution */ + IsForeignPathAsyncCapable_function IsForeignPathAsyncCapable; + ForeignAsyncRequest_function ForeignAsyncRequest; + ForeignAsyncConfigureWait_function ForeignAsyncConfigureWait; + ForeignAsyncNotify_function ForeignAsyncNotify; +} FdwRoutine; + + +/* Functions in foreign/foreign.c */ +extern FdwRoutine *GetFdwRoutine(Oid fdwhandler); +extern Oid GetForeignServerIdByRelId(Oid relid); +extern FdwRoutine *GetFdwRoutineByServerId(Oid serverid); +extern FdwRoutine *GetFdwRoutineByRelId(Oid relid); +extern FdwRoutine *GetFdwRoutineForRelation(Relation relation, bool makecopy); +extern bool IsImportableForeignTable(const char *tablename, + ImportForeignSchemaStmt *stmt); +extern Path *GetExistingLocalJoinPath(RelOptInfo *joinrel); + +#endif /* FDWAPI_H */ diff --git a/parser/include/funcapi.h b/parser/include/funcapi.h index 8c47054e..cc0cca32 100644 --- a/parser/include/funcapi.h +++ b/parser/include/funcapi.h @@ -8,7 +8,7 @@ * or call FUNCAPI-callable functions or macros. * * - * Copyright (c) 2002-2022, PostgreSQL Global Development Group + * Copyright (c) 2002-2023, PostgreSQL Global Development Group * * src/include/funcapi.h * @@ -204,7 +204,7 @@ extern TupleDesc build_function_result_tupdesc_t(HeapTuple procTuple); * Datum HeapTupleHeaderGetDatum(HeapTupleHeader tuple) - convert a * HeapTupleHeader to a Datum. * - * Macro declarations: + * Inline declarations: * HeapTupleGetDatum(HeapTuple tuple) - convert a HeapTuple to a Datum. * * Obsolete routines and macros: @@ -217,10 +217,6 @@ extern TupleDesc build_function_result_tupdesc_t(HeapTuple procTuple); *---------- */ -#define HeapTupleGetDatum(tuple) HeapTupleHeaderGetDatum((tuple)->t_data) -/* obsolete version of above */ -#define TupleGetDatum(_slot, _tuple) HeapTupleGetDatum(_tuple) - extern TupleDesc RelationNameGetTupleDesc(const char *relname); extern TupleDesc TypeGetTupleDesc(Oid typeoid, List *colaliases); @@ -230,6 +226,15 @@ extern AttInMetadata *TupleDescGetAttInMetadata(TupleDesc tupdesc); extern HeapTuple BuildTupleFromCStrings(AttInMetadata *attinmeta, char **values); extern Datum HeapTupleHeaderGetDatum(HeapTupleHeader tuple); +static inline Datum +HeapTupleGetDatum(const HeapTupleData *tuple) +{ + return HeapTupleHeaderGetDatum(tuple->t_data); +} + +/* obsolete version of above */ +#define TupleGetDatum(_slot, _tuple) HeapTupleGetDatum(_tuple) + /*---------- * Support for Set Returning Functions (SRFs) @@ -293,11 +298,6 @@ extern Datum HeapTupleHeaderGetDatum(HeapTupleHeader tuple); * BlessTupleDesc(). */ extern void InitMaterializedSRF(FunctionCallInfo fcinfo, bits32 flags); -/* Compatibility declarations, for v15 */ -#define SRF_SINGLE_USE_EXPECTED MAT_SRF_USE_EXPECTED_DESC -#define SRF_SINGLE_BLESS MAT_SRF_BLESS -extern void SetSingleFuncCall(FunctionCallInfo fcinfo, bits32 flags); - extern FuncCallContext *init_MultiFuncCall(PG_FUNCTION_ARGS); extern FuncCallContext *per_MultiFuncCall(PG_FUNCTION_ARGS); extern void end_MultiFuncCall(PG_FUNCTION_ARGS, FuncCallContext *funcctx); @@ -354,7 +354,7 @@ extern void end_MultiFuncCall(PG_FUNCTION_ARGS, FuncCallContext *funcctx); * "VARIADIC NULL". */ extern int extract_variadic_args(FunctionCallInfo fcinfo, int variadic_start, - bool convert_unknown, Datum **values, + bool convert_unknown, Datum **args, Oid **types, bool **nulls); #endif /* FUNCAPI_H */ diff --git a/parser/include/getaddrinfo.h b/parser/include/getaddrinfo.h deleted file mode 100644 index 2042c2d3..00000000 --- a/parser/include/getaddrinfo.h +++ /dev/null @@ -1,162 +0,0 @@ -/*------------------------------------------------------------------------- - * - * getaddrinfo.h - * Support getaddrinfo() on platforms that don't have it. - * - * Note: we use our own routines on platforms that don't HAVE_STRUCT_ADDRINFO, - * whether or not the library routine getaddrinfo() can be found. This - * policy is needed because on some platforms a manually installed libbind.a - * may provide getaddrinfo(), yet the system headers may not provide the - * struct definitions needed to call it. To avoid conflict with the libbind - * definition in such cases, we rename our routines to pg_xxx() via macros. - * - * This code will also work on platforms where struct addrinfo is defined - * in the system headers but no getaddrinfo() can be located. - * - * Copyright (c) 2003-2022, PostgreSQL Global Development Group - * - * src/include/getaddrinfo.h - * - *------------------------------------------------------------------------- - */ -#ifndef GETADDRINFO_H -#define GETADDRINFO_H - -#include -#include - - -/* Various macros that ought to be in , but might not be */ - -#ifndef EAI_FAIL -#ifndef WIN32 -#define EAI_BADFLAGS (-1) -#define EAI_NONAME (-2) -#define EAI_AGAIN (-3) -#define EAI_FAIL (-4) -#define EAI_FAMILY (-6) -#define EAI_SOCKTYPE (-7) -#define EAI_SERVICE (-8) -#define EAI_MEMORY (-10) -#define EAI_SYSTEM (-11) -#else /* WIN32 */ -#ifdef _MSC_VER -#ifndef WSA_NOT_ENOUGH_MEMORY -#define WSA_NOT_ENOUGH_MEMORY (WSAENOBUFS) -#endif -#define WSATYPE_NOT_FOUND (WSABASEERR+109) -#endif -#define EAI_AGAIN WSATRY_AGAIN -#define EAI_BADFLAGS WSAEINVAL -#define EAI_FAIL WSANO_RECOVERY -#define EAI_FAMILY WSAEAFNOSUPPORT -#define EAI_MEMORY WSA_NOT_ENOUGH_MEMORY -#define EAI_NODATA WSANO_DATA -#define EAI_NONAME WSAHOST_NOT_FOUND -#define EAI_SERVICE WSATYPE_NOT_FOUND -#define EAI_SOCKTYPE WSAESOCKTNOSUPPORT -#endif /* !WIN32 */ -#endif /* !EAI_FAIL */ - -#ifndef AI_PASSIVE -#define AI_PASSIVE 0x0001 -#endif - -#ifndef AI_NUMERICHOST -/* - * some platforms don't support AI_NUMERICHOST; define as zero if using - * the system version of getaddrinfo... - */ -#if defined(HAVE_STRUCT_ADDRINFO) && defined(HAVE_GETADDRINFO) -#define AI_NUMERICHOST 0 -#else -#define AI_NUMERICHOST 0x0004 -#endif -#endif - -#ifndef NI_NUMERICHOST -#define NI_NUMERICHOST 1 -#endif -#ifndef NI_NUMERICSERV -#define NI_NUMERICSERV 2 -#endif -#ifndef NI_NAMEREQD -#define NI_NAMEREQD 4 -#endif - -#ifndef NI_MAXHOST -#define NI_MAXHOST 1025 -#endif -#ifndef NI_MAXSERV -#define NI_MAXSERV 32 -#endif - - -#ifndef HAVE_STRUCT_ADDRINFO - -#ifndef WIN32 -struct addrinfo -{ - int ai_flags; - int ai_family; - int ai_socktype; - int ai_protocol; - size_t ai_addrlen; - struct sockaddr *ai_addr; - char *ai_canonname; - struct addrinfo *ai_next; -}; -#else -/* - * The order of the structure elements on Win32 doesn't match the - * order specified in the standard, but we have to match it for - * IPv6 to work. - */ -struct addrinfo -{ - int ai_flags; - int ai_family; - int ai_socktype; - int ai_protocol; - size_t ai_addrlen; - char *ai_canonname; - struct sockaddr *ai_addr; - struct addrinfo *ai_next; -}; -#endif -#endif /* HAVE_STRUCT_ADDRINFO */ - - -#ifndef HAVE_GETADDRINFO - -/* Rename private copies per comments above */ -#ifdef getaddrinfo -#undef getaddrinfo -#endif -#define getaddrinfo pg_getaddrinfo - -#ifdef freeaddrinfo -#undef freeaddrinfo -#endif -#define freeaddrinfo pg_freeaddrinfo - -#ifdef gai_strerror -#undef gai_strerror -#endif -#define gai_strerror pg_gai_strerror - -#ifdef getnameinfo -#undef getnameinfo -#endif -#define getnameinfo pg_getnameinfo - -extern int getaddrinfo(const char *node, const char *service, - const struct addrinfo *hints, struct addrinfo **res); -extern void freeaddrinfo(struct addrinfo *res); -extern const char *gai_strerror(int errcode); -extern int getnameinfo(const struct sockaddr *sa, int salen, - char *node, int nodelen, - char *service, int servicelen, int flags); -#endif /* HAVE_GETADDRINFO */ - -#endif /* GETADDRINFO_H */ diff --git a/parser/include/gram.h b/parser/include/gram.h new file mode 100644 index 00000000..dfbd2c40 --- /dev/null +++ b/parser/include/gram.h @@ -0,0 +1,1127 @@ +/* A Bison parser, made by GNU Bison 2.3. */ + +/* Skeleton interface for Bison's Yacc-like parsers in C + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ + +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. + + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ + +/* Tokens. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + /* Put the tokens into the symbol table, so that GDB and other debuggers + know about them. */ + enum yytokentype { + IDENT = 258, + UIDENT = 259, + FCONST = 260, + SCONST = 261, + USCONST = 262, + BCONST = 263, + XCONST = 264, + Op = 265, + ICONST = 266, + PARAM = 267, + TYPECAST = 268, + DOT_DOT = 269, + COLON_EQUALS = 270, + EQUALS_GREATER = 271, + LESS_EQUALS = 272, + GREATER_EQUALS = 273, + NOT_EQUALS = 274, + SQL_COMMENT = 275, + C_COMMENT = 276, + ABORT_P = 277, + ABSENT = 278, + ABSOLUTE_P = 279, + ACCESS = 280, + ACTION = 281, + ADD_P = 282, + ADMIN = 283, + AFTER = 284, + AGGREGATE = 285, + ALL = 286, + ALSO = 287, + ALTER = 288, + ALWAYS = 289, + ANALYSE = 290, + ANALYZE = 291, + AND = 292, + ANY = 293, + ARRAY = 294, + AS = 295, + ASC = 296, + ASENSITIVE = 297, + ASSERTION = 298, + ASSIGNMENT = 299, + ASYMMETRIC = 300, + ATOMIC = 301, + AT = 302, + ATTACH = 303, + ATTRIBUTE = 304, + AUTHORIZATION = 305, + BACKWARD = 306, + BEFORE = 307, + BEGIN_P = 308, + BETWEEN = 309, + BIGINT = 310, + BINARY = 311, + BIT = 312, + BOOLEAN_P = 313, + BOTH = 314, + BREADTH = 315, + BY = 316, + CACHE = 317, + CALL = 318, + CALLED = 319, + CASCADE = 320, + CASCADED = 321, + CASE = 322, + CAST = 323, + CATALOG_P = 324, + CHAIN = 325, + CHAR_P = 326, + CHARACTER = 327, + CHARACTERISTICS = 328, + CHECK = 329, + CHECKPOINT = 330, + CLASS = 331, + CLOSE = 332, + CLUSTER = 333, + COALESCE = 334, + COLLATE = 335, + COLLATION = 336, + COLUMN = 337, + COLUMNS = 338, + COMMENT = 339, + COMMENTS = 340, + COMMIT = 341, + COMMITTED = 342, + COMPRESSION = 343, + CONCURRENTLY = 344, + CONFIGURATION = 345, + CONFLICT = 346, + CONNECTION = 347, + CONSTRAINT = 348, + CONSTRAINTS = 349, + CONTENT_P = 350, + CONTINUE_P = 351, + CONVERSION_P = 352, + COPY = 353, + COST = 354, + CREATE = 355, + CROSS = 356, + CSV = 357, + CUBE = 358, + CURRENT_P = 359, + CURRENT_CATALOG = 360, + CURRENT_DATE = 361, + CURRENT_ROLE = 362, + CURRENT_SCHEMA = 363, + CURRENT_TIME = 364, + CURRENT_TIMESTAMP = 365, + CURRENT_USER = 366, + CURSOR = 367, + CYCLE = 368, + DATA_P = 369, + DATABASE = 370, + DAY_P = 371, + DEALLOCATE = 372, + DEC = 373, + DECIMAL_P = 374, + DECLARE = 375, + DEFAULT = 376, + DEFAULTS = 377, + DEFERRABLE = 378, + DEFERRED = 379, + DEFINER = 380, + DELETE_P = 381, + DELIMITER = 382, + DELIMITERS = 383, + DEPENDS = 384, + DEPTH = 385, + DESC = 386, + DETACH = 387, + DICTIONARY = 388, + DISABLE_P = 389, + DISCARD = 390, + DISTINCT = 391, + DO = 392, + DOCUMENT_P = 393, + DOMAIN_P = 394, + DOUBLE_P = 395, + DROP = 396, + EACH = 397, + ELSE = 398, + ENABLE_P = 399, + ENCODING = 400, + ENCRYPTED = 401, + END_P = 402, + ENUM_P = 403, + ESCAPE = 404, + EVENT = 405, + EXCEPT = 406, + EXCLUDE = 407, + EXCLUDING = 408, + EXCLUSIVE = 409, + EXECUTE = 410, + EXISTS = 411, + EXPLAIN = 412, + EXPRESSION = 413, + EXTENSION = 414, + EXTERNAL = 415, + EXTRACT = 416, + FALSE_P = 417, + FAMILY = 418, + FETCH = 419, + FILTER = 420, + FINALIZE = 421, + FIRST_P = 422, + FLOAT_P = 423, + FOLLOWING = 424, + FOR = 425, + FORCE = 426, + FOREIGN = 427, + FORMAT = 428, + FORWARD = 429, + FREEZE = 430, + FROM = 431, + FULL = 432, + FUNCTION = 433, + FUNCTIONS = 434, + GENERATED = 435, + GLOBAL = 436, + GRANT = 437, + GRANTED = 438, + GREATEST = 439, + GROUP_P = 440, + GROUPING = 441, + GROUPS = 442, + HANDLER = 443, + HAVING = 444, + HEADER_P = 445, + HOLD = 446, + HOUR_P = 447, + IDENTITY_P = 448, + IF_P = 449, + ILIKE = 450, + IMMEDIATE = 451, + IMMUTABLE = 452, + IMPLICIT_P = 453, + IMPORT_P = 454, + IN_P = 455, + INCLUDE = 456, + INCLUDING = 457, + INCREMENT = 458, + INDENT = 459, + INDEX = 460, + INDEXES = 461, + INHERIT = 462, + INHERITS = 463, + INITIALLY = 464, + INLINE_P = 465, + INNER_P = 466, + INOUT = 467, + INPUT_P = 468, + INSENSITIVE = 469, + INSERT = 470, + INSTEAD = 471, + INT_P = 472, + INTEGER = 473, + INTERSECT = 474, + INTERVAL = 475, + INTO = 476, + INVOKER = 477, + IS = 478, + ISNULL = 479, + ISOLATION = 480, + JOIN = 481, + JSON = 482, + JSON_ARRAY = 483, + JSON_ARRAYAGG = 484, + JSON_OBJECT = 485, + JSON_OBJECTAGG = 486, + KEY = 487, + KEYS = 488, + LABEL = 489, + LANGUAGE = 490, + LARGE_P = 491, + LAST_P = 492, + LATERAL_P = 493, + LEADING = 494, + LEAKPROOF = 495, + LEAST = 496, + LEFT = 497, + LEVEL = 498, + LIKE = 499, + LIMIT = 500, + LISTEN = 501, + LOAD = 502, + LOCAL = 503, + LOCALTIME = 504, + LOCALTIMESTAMP = 505, + LOCATION = 506, + LOCK_P = 507, + LOCKED = 508, + LOGGED = 509, + MAPPING = 510, + MATCH = 511, + MATCHED = 512, + MATERIALIZED = 513, + MAXVALUE = 514, + MERGE = 515, + METHOD = 516, + MINUTE_P = 517, + MINVALUE = 518, + MODE = 519, + MONTH_P = 520, + MOVE = 521, + NAME_P = 522, + NAMES = 523, + NATIONAL = 524, + NATURAL = 525, + NCHAR = 526, + NEW = 527, + NEXT = 528, + NFC = 529, + NFD = 530, + NFKC = 531, + NFKD = 532, + NO = 533, + NONE = 534, + NORMALIZE = 535, + NORMALIZED = 536, + NOT = 537, + NOTHING = 538, + NOTIFY = 539, + NOTNULL = 540, + NOWAIT = 541, + NULL_P = 542, + NULLIF = 543, + NULLS_P = 544, + NUMERIC = 545, + OBJECT_P = 546, + OF = 547, + OFF = 548, + OFFSET = 549, + OIDS = 550, + OLD = 551, + ON = 552, + ONLY = 553, + OPERATOR = 554, + OPTION = 555, + OPTIONS = 556, + OR = 557, + ORDER = 558, + ORDINALITY = 559, + OTHERS = 560, + OUT_P = 561, + OUTER_P = 562, + OVER = 563, + OVERLAPS = 564, + OVERLAY = 565, + OVERRIDING = 566, + OWNED = 567, + OWNER = 568, + PARALLEL = 569, + PARAMETER = 570, + PARSER = 571, + PARTIAL = 572, + PARTITION = 573, + PASSING = 574, + PASSWORD = 575, + PLACING = 576, + PLANS = 577, + POLICY = 578, + POSITION = 579, + PRECEDING = 580, + PRECISION = 581, + PRESERVE = 582, + PREPARE = 583, + PREPARED = 584, + PRIMARY = 585, + PRIOR = 586, + PRIVILEGES = 587, + PROCEDURAL = 588, + PROCEDURE = 589, + PROCEDURES = 590, + PROGRAM = 591, + PUBLICATION = 592, + QUOTE = 593, + RANGE = 594, + READ = 595, + REAL = 596, + REASSIGN = 597, + RECHECK = 598, + RECURSIVE = 599, + REF_P = 600, + REFERENCES = 601, + REFERENCING = 602, + REFRESH = 603, + REINDEX = 604, + RELATIVE_P = 605, + RELEASE = 606, + RENAME = 607, + REPEATABLE = 608, + REPLACE = 609, + REPLICA = 610, + RESET = 611, + RESTART = 612, + RESTRICT = 613, + RETURN = 614, + RETURNING = 615, + RETURNS = 616, + REVOKE = 617, + RIGHT = 618, + ROLE = 619, + ROLLBACK = 620, + ROLLUP = 621, + ROUTINE = 622, + ROUTINES = 623, + ROW = 624, + ROWS = 625, + RULE = 626, + SAVEPOINT = 627, + SCALAR = 628, + SCHEMA = 629, + SCHEMAS = 630, + SCROLL = 631, + SEARCH = 632, + SECOND_P = 633, + SECURITY = 634, + SELECT = 635, + SEQUENCE = 636, + SEQUENCES = 637, + SERIALIZABLE = 638, + SERVER = 639, + SESSION = 640, + SESSION_USER = 641, + SET = 642, + SETS = 643, + SETOF = 644, + SHARE = 645, + SHOW = 646, + SIMILAR = 647, + SIMPLE = 648, + SKIP = 649, + SMALLINT = 650, + SNAPSHOT = 651, + SOME = 652, + SQL_P = 653, + STABLE = 654, + STANDALONE_P = 655, + START = 656, + STATEMENT = 657, + STATISTICS = 658, + STDIN = 659, + STDOUT = 660, + STORAGE = 661, + STORED = 662, + STRICT_P = 663, + STRIP_P = 664, + SUBSCRIPTION = 665, + SUBSTRING = 666, + SUPPORT = 667, + SYMMETRIC = 668, + SYSID = 669, + SYSTEM_P = 670, + SYSTEM_USER = 671, + TABLE = 672, + TABLES = 673, + TABLESAMPLE = 674, + TABLESPACE = 675, + TEMP = 676, + TEMPLATE = 677, + TEMPORARY = 678, + TEXT_P = 679, + THEN = 680, + TIES = 681, + TIME = 682, + TIMESTAMP = 683, + TO = 684, + TRAILING = 685, + TRANSACTION = 686, + TRANSFORM = 687, + TREAT = 688, + TRIGGER = 689, + TRIM = 690, + TRUE_P = 691, + TRUNCATE = 692, + TRUSTED = 693, + TYPE_P = 694, + TYPES_P = 695, + UESCAPE = 696, + UNBOUNDED = 697, + UNCOMMITTED = 698, + UNENCRYPTED = 699, + UNION = 700, + UNIQUE = 701, + UNKNOWN = 702, + UNLISTEN = 703, + UNLOGGED = 704, + UNTIL = 705, + UPDATE = 706, + USER = 707, + USING = 708, + VACUUM = 709, + VALID = 710, + VALIDATE = 711, + VALIDATOR = 712, + VALUE_P = 713, + VALUES = 714, + VARCHAR = 715, + VARIADIC = 716, + VARYING = 717, + VERBOSE = 718, + VERSION_P = 719, + VIEW = 720, + VIEWS = 721, + VOLATILE = 722, + WHEN = 723, + WHERE = 724, + WHITESPACE_P = 725, + WINDOW = 726, + WITH = 727, + WITHIN = 728, + WITHOUT = 729, + WORK = 730, + WRAPPER = 731, + WRITE = 732, + XML_P = 733, + XMLATTRIBUTES = 734, + XMLCONCAT = 735, + XMLELEMENT = 736, + XMLEXISTS = 737, + XMLFOREST = 738, + XMLNAMESPACES = 739, + XMLPARSE = 740, + XMLPI = 741, + XMLROOT = 742, + XMLSERIALIZE = 743, + XMLTABLE = 744, + YEAR_P = 745, + YES_P = 746, + ZONE = 747, + FORMAT_LA = 748, + NOT_LA = 749, + NULLS_LA = 750, + WITH_LA = 751, + WITHOUT_LA = 752, + MODE_TYPE_NAME = 753, + MODE_PLPGSQL_EXPR = 754, + MODE_PLPGSQL_ASSIGN1 = 755, + MODE_PLPGSQL_ASSIGN2 = 756, + MODE_PLPGSQL_ASSIGN3 = 757, + UMINUS = 758 + }; +#endif +/* Tokens. */ +#define IDENT 258 +#define UIDENT 259 +#define FCONST 260 +#define SCONST 261 +#define USCONST 262 +#define BCONST 263 +#define XCONST 264 +#define Op 265 +#define ICONST 266 +#define PARAM 267 +#define TYPECAST 268 +#define DOT_DOT 269 +#define COLON_EQUALS 270 +#define EQUALS_GREATER 271 +#define LESS_EQUALS 272 +#define GREATER_EQUALS 273 +#define NOT_EQUALS 274 +#define SQL_COMMENT 275 +#define C_COMMENT 276 +#define ABORT_P 277 +#define ABSENT 278 +#define ABSOLUTE_P 279 +#define ACCESS 280 +#define ACTION 281 +#define ADD_P 282 +#define ADMIN 283 +#define AFTER 284 +#define AGGREGATE 285 +#define ALL 286 +#define ALSO 287 +#define ALTER 288 +#define ALWAYS 289 +#define ANALYSE 290 +#define ANALYZE 291 +#define AND 292 +#define ANY 293 +#define ARRAY 294 +#define AS 295 +#define ASC 296 +#define ASENSITIVE 297 +#define ASSERTION 298 +#define ASSIGNMENT 299 +#define ASYMMETRIC 300 +#define ATOMIC 301 +#define AT 302 +#define ATTACH 303 +#define ATTRIBUTE 304 +#define AUTHORIZATION 305 +#define BACKWARD 306 +#define BEFORE 307 +#define BEGIN_P 308 +#define BETWEEN 309 +#define BIGINT 310 +#define BINARY 311 +#define BIT 312 +#define BOOLEAN_P 313 +#define BOTH 314 +#define BREADTH 315 +#define BY 316 +#define CACHE 317 +#define CALL 318 +#define CALLED 319 +#define CASCADE 320 +#define CASCADED 321 +#define CASE 322 +#define CAST 323 +#define CATALOG_P 324 +#define CHAIN 325 +#define CHAR_P 326 +#define CHARACTER 327 +#define CHARACTERISTICS 328 +#define CHECK 329 +#define CHECKPOINT 330 +#define CLASS 331 +#define CLOSE 332 +#define CLUSTER 333 +#define COALESCE 334 +#define COLLATE 335 +#define COLLATION 336 +#define COLUMN 337 +#define COLUMNS 338 +#define COMMENT 339 +#define COMMENTS 340 +#define COMMIT 341 +#define COMMITTED 342 +#define COMPRESSION 343 +#define CONCURRENTLY 344 +#define CONFIGURATION 345 +#define CONFLICT 346 +#define CONNECTION 347 +#define CONSTRAINT 348 +#define CONSTRAINTS 349 +#define CONTENT_P 350 +#define CONTINUE_P 351 +#define CONVERSION_P 352 +#define COPY 353 +#define COST 354 +#define CREATE 355 +#define CROSS 356 +#define CSV 357 +#define CUBE 358 +#define CURRENT_P 359 +#define CURRENT_CATALOG 360 +#define CURRENT_DATE 361 +#define CURRENT_ROLE 362 +#define CURRENT_SCHEMA 363 +#define CURRENT_TIME 364 +#define CURRENT_TIMESTAMP 365 +#define CURRENT_USER 366 +#define CURSOR 367 +#define CYCLE 368 +#define DATA_P 369 +#define DATABASE 370 +#define DAY_P 371 +#define DEALLOCATE 372 +#define DEC 373 +#define DECIMAL_P 374 +#define DECLARE 375 +#define DEFAULT 376 +#define DEFAULTS 377 +#define DEFERRABLE 378 +#define DEFERRED 379 +#define DEFINER 380 +#define DELETE_P 381 +#define DELIMITER 382 +#define DELIMITERS 383 +#define DEPENDS 384 +#define DEPTH 385 +#define DESC 386 +#define DETACH 387 +#define DICTIONARY 388 +#define DISABLE_P 389 +#define DISCARD 390 +#define DISTINCT 391 +#define DO 392 +#define DOCUMENT_P 393 +#define DOMAIN_P 394 +#define DOUBLE_P 395 +#define DROP 396 +#define EACH 397 +#define ELSE 398 +#define ENABLE_P 399 +#define ENCODING 400 +#define ENCRYPTED 401 +#define END_P 402 +#define ENUM_P 403 +#define ESCAPE 404 +#define EVENT 405 +#define EXCEPT 406 +#define EXCLUDE 407 +#define EXCLUDING 408 +#define EXCLUSIVE 409 +#define EXECUTE 410 +#define EXISTS 411 +#define EXPLAIN 412 +#define EXPRESSION 413 +#define EXTENSION 414 +#define EXTERNAL 415 +#define EXTRACT 416 +#define FALSE_P 417 +#define FAMILY 418 +#define FETCH 419 +#define FILTER 420 +#define FINALIZE 421 +#define FIRST_P 422 +#define FLOAT_P 423 +#define FOLLOWING 424 +#define FOR 425 +#define FORCE 426 +#define FOREIGN 427 +#define FORMAT 428 +#define FORWARD 429 +#define FREEZE 430 +#define FROM 431 +#define FULL 432 +#define FUNCTION 433 +#define FUNCTIONS 434 +#define GENERATED 435 +#define GLOBAL 436 +#define GRANT 437 +#define GRANTED 438 +#define GREATEST 439 +#define GROUP_P 440 +#define GROUPING 441 +#define GROUPS 442 +#define HANDLER 443 +#define HAVING 444 +#define HEADER_P 445 +#define HOLD 446 +#define HOUR_P 447 +#define IDENTITY_P 448 +#define IF_P 449 +#define ILIKE 450 +#define IMMEDIATE 451 +#define IMMUTABLE 452 +#define IMPLICIT_P 453 +#define IMPORT_P 454 +#define IN_P 455 +#define INCLUDE 456 +#define INCLUDING 457 +#define INCREMENT 458 +#define INDENT 459 +#define INDEX 460 +#define INDEXES 461 +#define INHERIT 462 +#define INHERITS 463 +#define INITIALLY 464 +#define INLINE_P 465 +#define INNER_P 466 +#define INOUT 467 +#define INPUT_P 468 +#define INSENSITIVE 469 +#define INSERT 470 +#define INSTEAD 471 +#define INT_P 472 +#define INTEGER 473 +#define INTERSECT 474 +#define INTERVAL 475 +#define INTO 476 +#define INVOKER 477 +#define IS 478 +#define ISNULL 479 +#define ISOLATION 480 +#define JOIN 481 +#define JSON 482 +#define JSON_ARRAY 483 +#define JSON_ARRAYAGG 484 +#define JSON_OBJECT 485 +#define JSON_OBJECTAGG 486 +#define KEY 487 +#define KEYS 488 +#define LABEL 489 +#define LANGUAGE 490 +#define LARGE_P 491 +#define LAST_P 492 +#define LATERAL_P 493 +#define LEADING 494 +#define LEAKPROOF 495 +#define LEAST 496 +#define LEFT 497 +#define LEVEL 498 +#define LIKE 499 +#define LIMIT 500 +#define LISTEN 501 +#define LOAD 502 +#define LOCAL 503 +#define LOCALTIME 504 +#define LOCALTIMESTAMP 505 +#define LOCATION 506 +#define LOCK_P 507 +#define LOCKED 508 +#define LOGGED 509 +#define MAPPING 510 +#define MATCH 511 +#define MATCHED 512 +#define MATERIALIZED 513 +#define MAXVALUE 514 +#define MERGE 515 +#define METHOD 516 +#define MINUTE_P 517 +#define MINVALUE 518 +#define MODE 519 +#define MONTH_P 520 +#define MOVE 521 +#define NAME_P 522 +#define NAMES 523 +#define NATIONAL 524 +#define NATURAL 525 +#define NCHAR 526 +#define NEW 527 +#define NEXT 528 +#define NFC 529 +#define NFD 530 +#define NFKC 531 +#define NFKD 532 +#define NO 533 +#define NONE 534 +#define NORMALIZE 535 +#define NORMALIZED 536 +#define NOT 537 +#define NOTHING 538 +#define NOTIFY 539 +#define NOTNULL 540 +#define NOWAIT 541 +#define NULL_P 542 +#define NULLIF 543 +#define NULLS_P 544 +#define NUMERIC 545 +#define OBJECT_P 546 +#define OF 547 +#define OFF 548 +#define OFFSET 549 +#define OIDS 550 +#define OLD 551 +#define ON 552 +#define ONLY 553 +#define OPERATOR 554 +#define OPTION 555 +#define OPTIONS 556 +#define OR 557 +#define ORDER 558 +#define ORDINALITY 559 +#define OTHERS 560 +#define OUT_P 561 +#define OUTER_P 562 +#define OVER 563 +#define OVERLAPS 564 +#define OVERLAY 565 +#define OVERRIDING 566 +#define OWNED 567 +#define OWNER 568 +#define PARALLEL 569 +#define PARAMETER 570 +#define PARSER 571 +#define PARTIAL 572 +#define PARTITION 573 +#define PASSING 574 +#define PASSWORD 575 +#define PLACING 576 +#define PLANS 577 +#define POLICY 578 +#define POSITION 579 +#define PRECEDING 580 +#define PRECISION 581 +#define PRESERVE 582 +#define PREPARE 583 +#define PREPARED 584 +#define PRIMARY 585 +#define PRIOR 586 +#define PRIVILEGES 587 +#define PROCEDURAL 588 +#define PROCEDURE 589 +#define PROCEDURES 590 +#define PROGRAM 591 +#define PUBLICATION 592 +#define QUOTE 593 +#define RANGE 594 +#define READ 595 +#define REAL 596 +#define REASSIGN 597 +#define RECHECK 598 +#define RECURSIVE 599 +#define REF_P 600 +#define REFERENCES 601 +#define REFERENCING 602 +#define REFRESH 603 +#define REINDEX 604 +#define RELATIVE_P 605 +#define RELEASE 606 +#define RENAME 607 +#define REPEATABLE 608 +#define REPLACE 609 +#define REPLICA 610 +#define RESET 611 +#define RESTART 612 +#define RESTRICT 613 +#define RETURN 614 +#define RETURNING 615 +#define RETURNS 616 +#define REVOKE 617 +#define RIGHT 618 +#define ROLE 619 +#define ROLLBACK 620 +#define ROLLUP 621 +#define ROUTINE 622 +#define ROUTINES 623 +#define ROW 624 +#define ROWS 625 +#define RULE 626 +#define SAVEPOINT 627 +#define SCALAR 628 +#define SCHEMA 629 +#define SCHEMAS 630 +#define SCROLL 631 +#define SEARCH 632 +#define SECOND_P 633 +#define SECURITY 634 +#define SELECT 635 +#define SEQUENCE 636 +#define SEQUENCES 637 +#define SERIALIZABLE 638 +#define SERVER 639 +#define SESSION 640 +#define SESSION_USER 641 +#define SET 642 +#define SETS 643 +#define SETOF 644 +#define SHARE 645 +#define SHOW 646 +#define SIMILAR 647 +#define SIMPLE 648 +#define SKIP 649 +#define SMALLINT 650 +#define SNAPSHOT 651 +#define SOME 652 +#define SQL_P 653 +#define STABLE 654 +#define STANDALONE_P 655 +#define START 656 +#define STATEMENT 657 +#define STATISTICS 658 +#define STDIN 659 +#define STDOUT 660 +#define STORAGE 661 +#define STORED 662 +#define STRICT_P 663 +#define STRIP_P 664 +#define SUBSCRIPTION 665 +#define SUBSTRING 666 +#define SUPPORT 667 +#define SYMMETRIC 668 +#define SYSID 669 +#define SYSTEM_P 670 +#define SYSTEM_USER 671 +#define TABLE 672 +#define TABLES 673 +#define TABLESAMPLE 674 +#define TABLESPACE 675 +#define TEMP 676 +#define TEMPLATE 677 +#define TEMPORARY 678 +#define TEXT_P 679 +#define THEN 680 +#define TIES 681 +#define TIME 682 +#define TIMESTAMP 683 +#define TO 684 +#define TRAILING 685 +#define TRANSACTION 686 +#define TRANSFORM 687 +#define TREAT 688 +#define TRIGGER 689 +#define TRIM 690 +#define TRUE_P 691 +#define TRUNCATE 692 +#define TRUSTED 693 +#define TYPE_P 694 +#define TYPES_P 695 +#define UESCAPE 696 +#define UNBOUNDED 697 +#define UNCOMMITTED 698 +#define UNENCRYPTED 699 +#define UNION 700 +#define UNIQUE 701 +#define UNKNOWN 702 +#define UNLISTEN 703 +#define UNLOGGED 704 +#define UNTIL 705 +#define UPDATE 706 +#define USER 707 +#define USING 708 +#define VACUUM 709 +#define VALID 710 +#define VALIDATE 711 +#define VALIDATOR 712 +#define VALUE_P 713 +#define VALUES 714 +#define VARCHAR 715 +#define VARIADIC 716 +#define VARYING 717 +#define VERBOSE 718 +#define VERSION_P 719 +#define VIEW 720 +#define VIEWS 721 +#define VOLATILE 722 +#define WHEN 723 +#define WHERE 724 +#define WHITESPACE_P 725 +#define WINDOW 726 +#define WITH 727 +#define WITHIN 728 +#define WITHOUT 729 +#define WORK 730 +#define WRAPPER 731 +#define WRITE 732 +#define XML_P 733 +#define XMLATTRIBUTES 734 +#define XMLCONCAT 735 +#define XMLELEMENT 736 +#define XMLEXISTS 737 +#define XMLFOREST 738 +#define XMLNAMESPACES 739 +#define XMLPARSE 740 +#define XMLPI 741 +#define XMLROOT 742 +#define XMLSERIALIZE 743 +#define XMLTABLE 744 +#define YEAR_P 745 +#define YES_P 746 +#define ZONE 747 +#define FORMAT_LA 748 +#define NOT_LA 749 +#define NULLS_LA 750 +#define WITH_LA 751 +#define WITHOUT_LA 752 +#define MODE_TYPE_NAME 753 +#define MODE_PLPGSQL_EXPR 754 +#define MODE_PLPGSQL_ASSIGN1 755 +#define MODE_PLPGSQL_ASSIGN2 756 +#define MODE_PLPGSQL_ASSIGN3 757 +#define UMINUS 758 + + + + +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +typedef union YYSTYPE +#line 234 "gram.y" +{ + core_YYSTYPE core_yystype; + /* these fields must match core_YYSTYPE: */ + int ival; + char *str; + const char *keyword; + + char chr; + bool boolean; + JoinType jtype; + DropBehavior dbehavior; + OnCommitAction oncommit; + List *list; + Node *node; + ObjectType objtype; + TypeName *typnam; + FunctionParameter *fun_param; + FunctionParameterMode fun_param_mode; + ObjectWithArgs *objwithargs; + DefElem *defelt; + SortBy *sortby; + WindowDef *windef; + JoinExpr *jexpr; + IndexElem *ielem; + StatsElem *selem; + Alias *alias; + RangeVar *range; + IntoClause *into; + WithClause *with; + InferClause *infer; + OnConflictClause *onconflict; + A_Indices *aind; + ResTarget *target; + struct PrivTarget *privtarget; + AccessPriv *accesspriv; + struct ImportQual *importqual; + InsertStmt *istmt; + VariableSetStmt *vsetstmt; + PartitionElem *partelem; + PartitionSpec *partspec; + PartitionBoundSpec *partboundspec; + RoleSpec *rolespec; + PublicationObjSpec *publicationobjectspec; + struct SelectLimit *selectlimit; + SetQuantifier setquantifier; + struct GroupClause *groupclause; + MergeWhenClause *mergewhen; + struct KeyActions *keyactions; + struct KeyAction *keyaction; +} +/* Line 1529 of yacc.c. */ +#line 1106 "gram.h" + YYSTYPE; +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ +# define YYSTYPE_IS_DECLARED 1 +# define YYSTYPE_IS_TRIVIAL 1 +#endif + + + +#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED +typedef struct YYLTYPE +{ + int first_line; + int first_column; + int last_line; + int last_column; +} YYLTYPE; +# define yyltype YYLTYPE /* obsolescent; will be withdrawn */ +# define YYLTYPE_IS_DECLARED 1 +# define YYLTYPE_IS_TRIVIAL 1 +#endif + + diff --git a/parser/include/parser/gramparse.h b/parser/include/gramparse.h similarity index 91% rename from parser/include/parser/gramparse.h rename to parser/include/gramparse.h index d9d4ac57..1b9fef3e 100644 --- a/parser/include/parser/gramparse.h +++ b/parser/include/gramparse.h @@ -4,14 +4,14 @@ * Shared definitions for the "raw" parser (flex and bison phases only) * * NOTE: this file is only meant to be included in the core parsing files, - * ie, parser.c, gram.y, scan.l, and src/common/keywords.c. + * i.e., parser.c, gram.y, and scan.l. * Definitions that are needed outside the core parser should be in parser.h. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * src/include/parser/gramparse.h + * src/backend/parser/gramparse.h * *------------------------------------------------------------------------- */ @@ -26,7 +26,7 @@ * NB: include gram.h only AFTER including scanner.h, because scanner.h * is what #defines YYLTYPE. */ -#include "parser/gram.h" +#include "gram.h" /* * The YY_EXTRA data that a flex scanner allows us to pass around. Private diff --git a/parser/include/jit/jit.h b/parser/include/jit/jit.h index d1940332..14f2e36b 100644 --- a/parser/include/jit/jit.h +++ b/parser/include/jit/jit.h @@ -2,7 +2,7 @@ * jit.h * Provider independent JIT infrastructure. * - * Copyright (c) 2016-2022, PostgreSQL Global Development Group + * Copyright (c) 2016-2023, PostgreSQL Global Development Group * * src/include/jit/jit.h * @@ -63,7 +63,7 @@ typedef struct JitContext typedef struct JitProviderCallbacks JitProviderCallbacks; -extern void _PG_jit_provider_init(JitProviderCallbacks *cb); +extern PGDLLEXPORT void _PG_jit_provider_init(JitProviderCallbacks *cb); typedef void (*JitProviderInit) (JitProviderCallbacks *cb); typedef void (*JitProviderResetAfterErrorCB) (void); typedef void (*JitProviderReleaseContextCB) (JitContext *context); diff --git a/parser/include/kwlist_d.h b/parser/include/kwlist_d.h index 568dc8a6..e8af2602 100644 --- a/parser/include/kwlist_d.h +++ b/parser/include/kwlist_d.h @@ -3,7 +3,7 @@ * kwlist_d.h * List of keywords represented as a ScanKeywordList. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -23,6 +23,7 @@ static const char ScanKeywords_kw_string[] = "abort\0" + "absent\0" "absolute\0" "access\0" "action\0" @@ -172,6 +173,7 @@ static const char ScanKeywords_kw_string[] = "for\0" "force\0" "foreign\0" + "format\0" "forward\0" "freeze\0" "from\0" @@ -202,6 +204,7 @@ static const char ScanKeywords_kw_string[] = "include\0" "including\0" "increment\0" + "indent\0" "index\0" "indexes\0" "inherit\0" @@ -224,7 +227,13 @@ static const char ScanKeywords_kw_string[] = "isnull\0" "isolation\0" "join\0" + "json\0" + "json_array\0" + "json_arrayagg\0" + "json_object\0" + "json_objectagg\0" "key\0" + "keys\0" "label\0" "language\0" "large\0" @@ -364,6 +373,7 @@ static const char ScanKeywords_kw_string[] = "rows\0" "rule\0" "savepoint\0" + "scalar\0" "schema\0" "schemas\0" "scroll\0" @@ -406,6 +416,7 @@ static const char ScanKeywords_kw_string[] = "symmetric\0" "sysid\0" "system\0" + "system_user\0" "table\0" "tables\0" "tablesample\0" @@ -486,588 +497,601 @@ static const char ScanKeywords_kw_string[] = static const uint16 ScanKeywords_kw_offsets[] = { 0, 6, - 15, + 13, 22, 29, - 33, - 39, - 45, - 55, - 59, - 64, - 70, + 36, + 40, + 46, + 52, + 62, + 66, + 71, 77, - 85, - 93, - 97, - 101, - 107, - 110, + 84, + 92, + 100, + 104, + 108, 114, - 125, - 135, - 146, - 157, - 160, + 117, + 121, + 132, + 142, + 153, + 164, 167, 174, - 184, - 198, - 207, + 181, + 191, + 205, 214, - 220, - 228, + 221, + 227, 235, 242, - 246, - 254, - 259, - 267, - 270, - 276, - 281, + 249, + 253, + 261, + 266, + 274, + 277, + 283, 288, - 296, - 305, - 310, - 315, - 323, - 329, - 334, - 344, - 360, - 366, - 377, - 383, - 389, - 397, - 406, - 414, - 424, + 295, + 303, + 312, + 317, + 322, + 330, + 336, + 341, + 351, + 367, + 373, + 384, + 390, + 396, + 404, + 413, + 421, 431, - 439, - 447, - 456, + 438, + 446, + 454, 463, - 473, - 485, - 498, - 512, - 521, - 532, - 543, - 555, - 563, - 572, - 583, - 588, - 593, + 470, + 480, + 492, + 505, + 519, + 528, + 539, + 550, + 562, + 570, + 579, + 590, + 595, 600, - 606, - 610, - 615, - 623, - 639, - 652, - 665, - 680, - 693, - 711, - 724, + 607, + 613, + 617, + 622, + 630, + 646, + 659, + 672, + 687, + 700, + 718, 731, - 737, - 742, - 751, - 755, - 766, - 770, - 778, - 786, - 794, - 803, - 814, - 823, - 831, + 738, + 744, + 749, + 758, + 762, + 773, + 777, + 785, + 793, + 801, + 810, + 821, + 830, 838, - 848, - 859, - 867, - 873, - 878, + 845, + 855, + 866, + 874, + 880, 885, - 896, - 904, - 912, - 921, - 924, - 933, + 892, + 903, + 911, + 919, + 928, + 931, 940, 947, - 952, - 957, - 962, + 954, + 959, + 964, 969, - 978, - 988, - 992, - 997, + 976, + 985, + 995, + 999, 1004, - 1010, + 1011, 1017, - 1025, - 1035, - 1045, - 1053, + 1024, + 1032, + 1042, + 1052, 1060, - 1068, - 1079, - 1089, - 1098, - 1106, - 1112, + 1067, + 1075, + 1086, + 1096, + 1105, + 1113, 1119, - 1125, + 1126, 1132, - 1141, - 1147, - 1153, - 1163, - 1167, - 1173, - 1181, - 1189, - 1196, - 1201, - 1206, + 1139, + 1148, + 1154, + 1160, + 1170, + 1174, + 1180, + 1188, + 1195, + 1203, + 1210, 1215, - 1225, - 1235, - 1242, - 1248, + 1220, + 1229, + 1239, + 1249, 1256, - 1265, - 1271, - 1280, - 1287, - 1295, - 1302, + 1262, + 1270, + 1279, + 1285, + 1294, + 1301, 1309, - 1314, - 1319, + 1316, + 1323, 1328, - 1331, - 1337, - 1347, - 1357, - 1366, - 1373, - 1376, - 1384, - 1394, - 1404, - 1410, + 1333, + 1342, + 1345, + 1351, + 1361, + 1371, + 1380, + 1387, + 1390, + 1398, + 1408, 1418, - 1426, - 1435, - 1445, - 1452, - 1458, - 1464, - 1470, - 1482, - 1489, - 1497, - 1501, - 1509, - 1519, - 1528, - 1533, - 1541, - 1544, - 1551, - 1561, - 1566, - 1570, - 1576, - 1585, - 1591, - 1596, - 1604, - 1612, - 1622, - 1628, - 1633, - 1639, + 1425, + 1431, + 1439, + 1447, + 1456, + 1466, + 1473, + 1479, + 1485, + 1491, + 1503, + 1510, + 1518, + 1522, + 1530, + 1540, + 1549, + 1554, + 1562, + 1565, + 1572, + 1582, + 1587, + 1592, + 1603, + 1617, + 1629, 1644, - 1650, - 1657, - 1662, + 1648, + 1653, + 1659, 1668, - 1678, - 1693, - 1702, - 1707, - 1714, - 1721, - 1729, - 1735, - 1743, - 1756, - 1765, - 1771, - 1778, + 1674, + 1679, + 1687, + 1695, + 1705, + 1711, + 1716, + 1722, + 1727, + 1733, + 1740, + 1745, + 1751, + 1761, + 1776, 1785, - 1794, - 1799, - 1805, - 1810, - 1815, - 1821, - 1830, - 1838, - 1844, + 1790, + 1797, + 1804, + 1812, + 1818, + 1826, + 1839, 1848, - 1853, - 1857, + 1854, 1861, - 1866, - 1871, - 1874, - 1879, - 1889, - 1900, + 1868, + 1877, + 1882, + 1888, + 1893, + 1898, 1904, - 1912, - 1919, + 1913, + 1921, 1927, - 1934, - 1939, - 1946, - 1952, - 1960, - 1967, - 1970, - 1974, - 1981, - 1986, - 1990, - 1993, - 1998, - 2007, - 2014, + 1931, + 1936, + 1940, + 1944, + 1949, + 1954, + 1957, + 1962, + 1972, + 1983, + 1987, + 1995, + 2002, + 2010, + 2017, 2022, - 2025, - 2031, - 2042, - 2049, + 2029, + 2035, + 2043, + 2050, 2053, - 2059, + 2057, 2064, + 2069, 2073, + 2076, 2081, - 2092, - 2098, - 2104, - 2113, - 2123, - 2130, - 2138, - 2148, + 2090, + 2097, + 2105, + 2108, + 2114, + 2125, + 2132, + 2136, + 2142, + 2147, 2156, - 2165, - 2173, - 2179, - 2186, - 2195, - 2205, - 2215, - 2223, - 2232, - 2241, - 2249, - 2255, - 2266, - 2277, - 2287, + 2164, + 2175, + 2181, + 2187, + 2196, + 2206, + 2213, + 2221, + 2231, + 2239, + 2248, + 2256, + 2262, + 2269, + 2278, + 2288, 2298, 2306, - 2318, + 2315, 2324, - 2330, - 2335, - 2340, + 2332, + 2338, 2349, - 2357, - 2367, - 2371, - 2382, - 2394, - 2402, - 2410, - 2419, - 2427, - 2434, - 2445, - 2453, - 2461, - 2467, - 2475, - 2484, - 2491, - 2501, - 2509, - 2516, - 2522, - 2527, + 2360, + 2370, + 2381, + 2389, + 2401, + 2407, + 2413, + 2418, + 2423, + 2432, + 2440, + 2450, + 2454, + 2465, + 2477, + 2485, + 2493, + 2502, + 2510, + 2517, + 2528, 2536, - 2543, - 2551, - 2560, - 2564, - 2569, + 2544, + 2550, + 2558, + 2567, 2574, 2584, - 2591, + 2592, 2599, - 2606, - 2613, - 2620, - 2629, - 2636, - 2645, - 2655, - 2668, - 2675, - 2683, + 2605, + 2610, + 2619, + 2626, + 2634, + 2643, + 2647, + 2652, + 2657, + 2667, + 2674, + 2681, + 2689, 2696, - 2700, - 2706, - 2711, - 2717, - 2722, - 2730, - 2737, - 2742, - 2751, - 2760, + 2703, + 2710, + 2719, + 2726, + 2735, + 2745, + 2758, 2765, - 2769, - 2776, - 2787, - 2793, - 2803, - 2814, + 2773, + 2786, + 2790, + 2796, + 2801, + 2807, + 2812, 2820, 2827, - 2835, - 2842, - 2849, + 2832, + 2841, + 2850, 2855, - 2868, - 2878, - 2886, - 2896, - 2902, - 2909, - 2915, - 2922, - 2934, + 2859, + 2866, + 2877, + 2883, + 2893, + 2904, + 2910, + 2917, + 2925, + 2932, + 2939, 2945, - 2950, - 2959, - 2969, - 2974, - 2979, - 2984, - 2989, + 2958, + 2968, + 2976, + 2986, + 2992, 2999, - 3002, 3011, - 3023, - 3033, - 3039, + 3017, + 3024, + 3036, 3047, 3052, - 3057, - 3066, - 3074, - 3079, - 3085, - 3093, - 3103, - 3115, - 3127, - 3133, - 3140, - 3148, - 3157, - 3166, - 3172, - 3179, - 3184, - 3190, - 3197, - 3203, - 3212, - 3222, - 3228, + 3061, + 3071, + 3076, + 3081, + 3086, + 3091, + 3101, + 3104, + 3113, + 3125, + 3135, + 3141, + 3149, + 3154, + 3159, + 3168, + 3176, + 3181, + 3187, + 3195, + 3205, + 3217, + 3229, 3235, - 3243, - 3252, - 3260, + 3242, + 3250, + 3259, 3268, - 3276, + 3274, 3281, - 3287, - 3296, - 3301, - 3307, - 3318, - 3325, + 3286, + 3292, + 3299, + 3305, + 3314, + 3324, 3330, 3337, 3345, - 3350, - 3358, - 3364, - 3368, - 3382, - 3392, + 3354, + 3362, + 3370, + 3378, + 3383, + 3389, + 3398, 3403, - 3413, - 3423, - 3437, - 3446, + 3409, + 3420, + 3427, + 3432, + 3439, + 3447, 3452, 3460, - 3473, - 3482, - 3487, - 3491, + 3466, + 3470, + 3484, + 3494, + 3505, + 3515, + 3525, + 3539, + 3548, + 3554, + 3562, + 3575, + 3584, + 3589, + 3593, }; -#define SCANKEYWORDS_NUM_KEYWORDS 460 +#define SCANKEYWORDS_NUM_KEYWORDS 471 static int ScanKeywords_hash_func(const void *key, size_t keylen) { - static const int16 h[921] = { - 207, -201, 0, 223, -255, 28, 32767, -86, - 32767, 0, -35, -938, 32767, 32767, -13, 32767, - 450, 62, 42, 327, 309, -13, 0, 114, - 32767, -230, 135, -12, 424, 191, -114, 32767, - 45, 440, 673, 0, 0, 224, 286, 32767, - 32767, 16, 5, 0, 32767, 32767, -349, 32767, - -43, 32767, 32767, 32767, 32767, 32767, 0, 32767, - 32767, 262, 573, -75, 32767, 32767, 1113, 88, - 111, 32767, 7, -41, 223, 32767, 478, 275, - 32767, 0, 245, 1004, 59, 32767, 322, 256, - -130, 32767, 0, 378, 606, 994, -59, 32767, - -219, 32767, 489, 32767, -328, 32767, 88, 32767, - -228, 0, 1181, -705, 32767, 32767, 149, 32767, - 32767, 177, 0, 0, 32767, 32767, 32767, 473, - 142, 167, 130, 345, 461, 50, 426, 32767, - 32767, -104, 333, 32767, 5, 32767, 32767, 115, - 0, 34, 32767, -178, 32767, 32767, 0, 32767, - 32767, 32767, 429, 573, 32767, 3, 32767, 0, - 237, 32767, 324, 379, 32767, 409, 32767, 32767, - 362, -707, 638, 32767, 32767, -18, 23, 127, - 32767, 32767, -55, 0, 254, 32767, 0, 32767, - -16, 389, 32767, -287, 0, -43, 32767, 0, - 32767, 157, 23, 438, 907, 0, 32767, -213, - 299, 32767, 0, 32767, 32767, 229, 32767, 32767, - 32767, 32767, 186, 32767, 81, 32767, -707, 525, - 732, 515, 32767, 32767, 0, 32767, 32767, 126, - 32767, 32767, 0, 443, 32767, 102, -148, 188, - 393, 32767, 383, 32767, 212, 247, 32767, 389, - 54, -258, 0, 6, -32, 32767, 261, -190, - 112, 32767, 32767, 32767, 0, 32767, 0, 32767, - 32767, 215, 32767, 196, 32767, 445, 32767, 32767, - -456, -66, 161, 32767, 617, -484, 230, 32767, - 1078, 77, 124, 32767, 32767, -44, 32767, -271, - 148, 20, 344, 83, 32767, 32767, 32767, 108, - -768, 269, 32767, 32767, -66, 0, 32767, 32767, - 524, 433, 32767, 32767, 0, 32767, -564, -138, - 0, 4, 463, 354, 32767, 57, 0, 32767, - 552, 351, 32767, 32767, 0, 32767, 32767, 32767, - 65, 32767, 32767, 285, 158, 32767, 32767, -931, - 281, 32767, 32767, 32767, 32767, -357, -115, 32767, - 294, 435, 2, 32767, 305, 32767, 35, 434, - 32767, 172, 0, 32767, 326, -597, 263, 2, - 32767, -111, -79, 32767, 32767, -717, 198, 32767, - -715, 407, 32767, 32767, 159, 214, -135, 379, - 672, 656, 278, 0, 32767, 32767, 32767, 1109, - 830, -173, 32767, 32767, 334, 32767, 32767, 32767, - 32767, -447, 270, 61, 281, 32767, 0, 116, - 32767, 99, -302, 32767, 32767, 0, 39, 32767, - -61, 276, -45, 144, -121, 32767, 0, 198, - 325, 72, 294, -174, -218, 73, -489, 32767, - -372, 32767, 32767, 360, 345, 283, -453, 32767, - 32767, 32767, 283, 806, 0, 32767, 32767, 32767, - -65, 0, 32767, 8, 32767, 150, 32767, -251, - 132, 0, 32767, 32767, 272, 32767, 15, -417, - 889, -77, 0, 0, 16, 32767, 32767, 32767, - 94, 32767, 32767, 32767, 32767, 219, 32767, -416, - 391, 31, 208, 396, 0, 143, -37, 32767, - 252, 0, 32767, 185, 32767, -140, 0, 32767, - 456, -258, 32767, 381, 32767, 393, 32767, 32767, - 32767, 32767, 1160, 32767, 32767, 384, 201, 197, - 32767, 0, 131, 469, 89, 32767, 397, 0, - 32767, 211, 32767, 102, 138, 32767, -379, 264, - 32767, 386, 6, 32767, 32767, 162, 53, -81, - -135, 59, 338, 230, 0, 0, 19, 8, - 32767, 785, 423, 0, 257, 301, 523, -398, - 421, 0, 32767, 0, 32767, 32767, 0, -758, - 0, 562, 32767, 0, 32767, 32767, -213, 32767, - 28, 32767, -696, 173, -413, 352, -223, 472, - 275, 316, 32767, -186, 323, 32767, -163, 221, - 246, 29, 222, -1042, 0, 33, 184, 32767, - 32767, 0, 32767, 32767, 805, 32767, 305, 8, - 226, 84, 32767, 379, 0, 32767, 134, 82, - 32767, 399, 32767, 0, 0, 617, 32767, 32767, - 31, 0, 256, 0, 32767, 103, 302, 32767, - 208, 32767, -56, 0, -146, 32767, 243, 32767, - 0, 32767, 32767, 32767, 32767, 784, 32767, 32767, - 0, 197, 32767, 32767, 914, 155, -50, 32767, - 32767, 32767, 292, 1122, 32767, 0, 32767, -167, - 32767, 139, 113, 113, 32767, 410, 32767, 459, - 331, 0, 295, 0, 0, 483, -345, 32767, - 32767, -456, 32767, 32767, 0, 32767, 304, 32767, - 138, 32767, 520, 326, 412, -237, 453, 32767, - 50, 328, 32767, 32767, 0, -116, 0, -754, - 0, -149, 32767, 32767, 28, -398, 0, 32767, - 32767, -89, 353, -64, 51, 139, 32767, 32767, - 66, 32767, 314, 209, 1218, 32767, 32767, 325, - 0, 268, 32767, 32767, 446, 32767, 0, 32767, - -115, 32767, 32767, 32767, 239, 344, 32767, 5, - 32767, 0, -314, 0, -327, 32767, 181, 32767, - 107, 393, 0, 32767, 12, 582, 119, 32767, - -751, 32767, -578, 0, 349, 0, 32767, 404, - 307, 85, 32767, 452, 53, -307, 0, 0, - 32767, 32767, 664, 32767, 32767, 32767, -44, 32767, - 0, 259, 366, 32767, 0, 0, 32767, -97, - -131, 0, 32767, 178, 32767, 779, -231, -73, - 0, 0, 145, 487, 223, 0, 0, 86, - 32767, 0, 32767, 192, 321, 32767, 32767, 32767, - -360, -140, 32767, 32767, 32767, 507, 32767, 247, - 416, 32767, 0, 32767, 68, 98, 32767, 0, - -268, 0, 32767, 204, 32767, 0, 739, 112, - -283, 1180, 193, 32767, 32767, 220, 0, 0, - 0, 0, 0, 32767, 0, 32767, 32767, 32767, - 32767, 206, -374, 0, 315, 32767, 0, 0, - -37, -363, 32767, 32767, 258, 32767, 459, 32767, - 128, -1018, 374, 32767, 0, 32767, 0, -602, - 32767, 346, 76, 363, 387, 296, -186, 32, - 21, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 0, 165, 32767, 32767, 32767, 0, - 790, -10, 32767, 32767, 32767, 32767, 0, 32767, - 0, 228, 32767, -993, 32, -878, -154, 32767, - 72, 369, 411, 585, 32767, 32767, 124, 32767, - -253, -177, 294, 32767, 335, 0, 9, 0, - 32767, 442, 0, 0, 32767, 449, 448, 0, - 0, 32767, 0, 593, 0, 32767, 242, 432, - 0, 32767, 0, 32767, 32767, 1360, 0, 32767, - 238 + static const int16 h[943] = { + 543, -186, 201, 0, 32767, 32767, 32767, 32767, + 221, -207, 32767, 0, 135, 283, 32767, 454, + 14, 79, 32767, 32767, 77, 32767, 102, 160, + 0, 32767, 151, 32767, 30, 392, -322, 452, + 32767, 0, 32767, 0, 0, 32767, 32767, 32767, + 234, 32767, 0, 32767, 0, 631, 32767, 368, + 80, 0, 0, -115, 32767, 285, 32767, 423, + 0, 32767, 155, 229, 32767, 126, 291, 165, + -22, 400, 327, 32767, 32767, 32767, 32767, -399, + 0, 406, 32767, 210, 1102, -203, 32767, 32767, + 32767, -944, 0, -188, 32767, 32767, 0, 347, + 32767, 0, 559, 316, 133, 32767, 202, 32767, + 305, 0, 32767, -94, 32767, 0, 32767, -222, + 32767, 138, 32767, -52, 32767, 32767, 279, 69, + -136, 0, 32767, 32767, 189, 32767, 32767, 88, + 0, 32767, 32767, 274, 32767, 514, 769, 248, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 81, + 8, -29, 32767, 32767, 32767, -174, 258, 0, + 465, 211, 32767, 0, -229, 32767, -191, 32767, + 1263, 48, 32767, 343, 0, 58, 0, 32767, + 32767, 855, 0, 415, 0, -217, 32767, 1195, + 32767, 32767, 166, 32767, 42, 262, -736, 0, + 32767, 32767, 418, 178, 122, 32767, 46, 32767, + 32767, 32767, 229, 443, 32767, 32767, 250, 32767, + -300, 0, 32767, 1153, 32767, 108, 32767, -462, + 266, 32767, 478, -220, 235, 32767, 32767, -127, + 32767, 32767, 32767, 427, -231, 156, 32767, 0, + 0, 148, -218, 142, 73, 420, 32767, 32767, + 523, 32767, -36, 32767, 32767, 467, 844, -415, + 32767, 32767, -148, 179, 361, 32767, 151, 0, + 0, 32767, 145, 32767, 248, 110, 29, 125, + 282, 32767, -36, 43, 32767, 1125, 32767, 530, + 251, 519, 191, 0, 32767, -34, -502, 313, + 462, 845, 32767, 32767, -255, 412, 32767, 78, + 0, 32767, 444, 161, 0, 32767, 308, 32767, + -273, 400, 32767, 296, 32767, 32767, 72, 32767, + 32767, 34, 32767, 364, 151, -63, 4, 229, + 0, -276, 32767, 32767, 32767, 32767, -406, 32767, + 203, 32767, 140, 187, 160, 32767, 286, 0, + 32767, 32767, -88, 0, 100, -361, 32767, 9, + 0, -456, 32767, -37, -404, 32767, -969, 32767, + 371, 95, 0, 703, -31, 263, 373, -745, + 507, 14, 32767, -159, 0, 32767, 47, 299, + -126, 0, 32767, 83, 32767, 32767, 420, 236, + 32767, 32767, 0, 310, 89, 233, 32767, 93, + 32767, 0, 816, 60, 301, 211, 193, 0, + 452, -107, -403, -242, 353, 18, 32767, 32767, + 32767, 243, 104, 32767, 32767, 32767, -305, 32767, + -1048, 54, 0, 383, 32767, 32767, 32767, 226, + 319, 0, 32767, 32767, 32767, -130, 537, 32767, + 0, -206, 240, 696, 121, 32767, 180, 164, + 32767, 390, 185, 32767, 220, 545, 29, 32767, + 0, 32767, 32767, 1120, -163, 32767, 32767, 32767, + -368, 136, 445, 171, 233, 32767, 73, 32767, + 92, 32767, 0, 32767, 0, 208, 354, 32767, + 54, 32767, 32767, -246, -93, 389, 32767, 32767, + 32767, 32767, 50, 32767, 32767, 308, 32767, -278, + 0, 32767, 32767, -1172, 32767, 8, 32767, 0, + 32767, 341, 304, 242, -174, -92, 76, 419, + 32767, 87, 32767, -262, 32767, 32767, 32767, 109, + 200, 0, 32767, 0, 85, 530, 32767, -316, + 32767, 0, -286, 32767, 193, 268, 32767, 32767, + 278, 32767, 32767, 155, 445, 95, -310, 32767, + 207, -56, 32767, 32767, 0, -127, 232, -283, + 103, 32767, 1, 0, 32767, 32767, -485, 350, + 79, -56, -354, 32767, 121, 24, 81, 20, + 325, 40, 248, 32767, 32767, 32767, 358, 32767, + -56, 32767, 0, 174, -28, -301, -92, 32767, + 114, 295, 32767, 363, -355, 32767, 290, 0, + 32767, 32767, 32767, 122, 55, -142, 32767, 50, + 32767, 32767, 152, 571, 1397, 0, 472, -448, + 185, 140, 228, 435, 0, 32767, 32767, 414, + 32767, 379, 92, 185, 23, 299, 32767, 32767, + 0, 32767, 32767, 32767, 306, 439, -198, 219, + 340, 32767, 416, 0, -123, 377, 32767, 32767, + 0, 32767, 670, -670, 339, 32767, 32767, 32767, + 0, -256, 70, 514, 331, 0, 302, 469, + 0, 370, 32767, 32767, 42, 255, 212, 0, + 322, 277, 32767, -163, 32767, 216, 32767, 32767, + 0, 32767, 190, 32767, 32767, 0, 32767, 0, + -409, 1366, 32767, 32767, 32767, 193, 32767, 325, + 32767, 0, 142, 466, 32767, 32767, 32767, 113, + 32767, 32767, 62, 0, -62, 113, -90, 34, + -256, 32767, 32767, -936, 32767, 32767, 32767, 0, + -64, 0, -34, 451, 290, 108, 32767, 276, + 842, 0, 556, -153, 32767, 412, -168, 32767, + 32767, 1331, 407, 234, -60, 115, 457, -73, + 502, 772, 32767, 33, 404, -925, 32767, 32767, + 421, -123, 32767, 32767, 32767, 0, 0, 32767, + 32767, 32767, 429, 0, 3, 769, -81, 306, + 64, 32767, 192, 96, 0, 63, 44, 32767, + 32767, 32767, 32767, 0, 284, 32767, 575, 32767, + 32767, 12, 32767, 516, 116, 32767, 32767, 150, + 442, 134, 32767, 198, -45, 249, 40, 373, + 32767, 0, 32767, 32767, 0, 0, 352, 32767, + 117, 32767, 426, 0, 0, 32767, 32767, 32767, + 32767, -92, 32767, -442, 32767, 269, 32767, 32767, + 32767, 429, 32767, 0, 32767, 0, 143, 32767, + 508, -66, 32767, 280, 32767, 39, 162, 32767, + 32767, 0, 32767, 31, 32767, 32767, 32767, 0, + 32767, 257, -90, -249, 224, 272, 32767, 32767, + 313, -467, 214, 0, -85, 32767, 48, 0, + 32767, -336, 202, 0, 447, 90, 264, 32767, + 32767, 0, 101, 32767, 32767, 32767, 0, 32767, + 32767, 227, -1093, 32767, 0, 32767, 27, 174, + 32767, 7, 32767, -621, 146, 32767, 32767, 32767, + 854, 0, 32767, 161, 0, 137, 32767, 32767, + 32767, 32767, 0, 391, 219, 276, 32767, 168, + 32767, 32767, 0, 32767, 32767, 32767, 1, -4, + 32767, 0, 293, 0, 374, 256, 0, 0, + 32767, 355, 212, 404, 0, 186, 32767, 0, + 359, 32767, 32767, 172, 32767, 32767, -131, 0, + 402, 0, 56, 32767, 462, 389, 82, 0, + 32767, 0, 32767, 0, 32767, 32767, 32767, 32767, + 106, 425, -160, 31, 32767, 55, 0, 0, + 32767, 32767, 430, 1224, 179, -179, 0, 397, + 32767, 0, 0, 0, -60, 47, 32767, 396, + 32767, 326, 383, 369, 32767, 368, 32767 }; const unsigned char *k = (const unsigned char *) key; @@ -1079,9 +1103,9 @@ ScanKeywords_hash_func(const void *key, size_t keylen) unsigned char c = *k++ | 0x20; a = a * 257 + c; - b = b * 127 + c; + b = b * 31 + c; } - return h[a % 921] + h[b % 921]; + return h[a % 943] + h[b % 943]; } const ScanKeywordList ScanKeywords = { diff --git a/parser/include/lib/dshash.h b/parser/include/lib/dshash.h index 28f8db2e..ece55521 100644 --- a/parser/include/lib/dshash.h +++ b/parser/include/lib/dshash.h @@ -3,7 +3,7 @@ * dshash.h * Concurrent hash tables backed by dynamic shared memory areas. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -23,6 +23,9 @@ typedef struct dshash_table dshash_table; /* A handle for a dshash_table which can be shared with other processes. */ typedef dsa_pointer dshash_table_handle; +/* Sentinel value to use for invalid dshash_table handles. */ +#define DSHASH_HANDLE_INVALID ((dshash_table_handle) InvalidDsaPointer) + /* The type for hash values. */ typedef uint32 dshash_hash; diff --git a/parser/include/lib/ilist.h b/parser/include/lib/ilist.h index 7ab0888f..095107a9 100644 --- a/parser/include/lib/ilist.h +++ b/parser/include/lib/ilist.h @@ -10,20 +10,36 @@ * the link fields in the remainder would be wasted space. But usually, * it saves space to not have separately-allocated list nodes.) * + * The doubly-linked list comes in 2 forms. dlist_head defines a head of a + * doubly-linked list of dlist_nodes, whereas dclist_head defines the head of + * a doubly-linked list of dlist_nodes with an additional 'count' field to + * keep track of how many items are contained within the given list. For + * simplicity, dlist_head and dclist_head share the same node and iterator + * types. The functions to manipulate a dlist_head always have a name + * starting with "dlist", whereas functions to manipulate a dclist_head have a + * name starting with "dclist". dclist_head comes with an additional function + * (dclist_count) to return the number of entries in the list. dclists are + * able to store a maximum of PG_UINT32_MAX elements. It is up to the caller + * to ensure no more than this many items are added to a dclist. + * * None of the functions here allocate any memory; they just manipulate - * externally managed memory. The APIs for singly and doubly linked lists - * are identical as far as capabilities of both allow. + * externally managed memory. With the exception doubly-linked count lists + * providing the ability to obtain the number of items in the list, the APIs + * for singly and both doubly linked lists are identical as far as + * capabilities of both allow. * * Each list has a list header, which exists even when the list is empty. * An empty singly-linked list has a NULL pointer in its header. - * There are two kinds of empty doubly linked lists: those that have been - * initialized to NULL, and those that have been initialized to circularity. + * + * For both doubly-linked list types, there are two valid ways to represent an + * empty list. The head's 'next' pointer can either be NULL or the head's + * 'next' and 'prev' links can both point back to the list head (circular). * (If a dlist is modified and then all its elements are deleted, it will be - * in the circular state.) We prefer circular dlists because there are some + * in the circular state.). We prefer circular dlists because there are some * operations that can be done without branches (and thus faster) on lists * that use circular representation. However, it is often convenient to * initialize list headers to zeroes rather than setting them up with an - * explicit initialization function, so we also allow the other case. + * explicit initialization function, so we also allow the NULL initialization. * * EXAMPLES * @@ -96,7 +112,7 @@ * } * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -146,15 +162,17 @@ typedef struct dlist_head /* - * Doubly linked list iterator. + * Doubly linked list iterator type for dlist_head and dclist_head types. * - * Used as state in dlist_foreach() and dlist_reverse_foreach(). To get the - * current element of the iteration use the 'cur' member. + * Used as state in dlist_foreach() and dlist_reverse_foreach() (and the + * dclist variant thereof). + * + * To get the current element of the iteration use the 'cur' member. * * Iterations using this are *not* allowed to change the list while iterating! * * NB: We use an extra "end" field here to avoid multiple evaluations of - * arguments in the dlist_foreach() macro. + * arguments in the dlist_foreach() and dclist_foreach() macros. */ typedef struct dlist_iter { @@ -163,10 +181,12 @@ typedef struct dlist_iter } dlist_iter; /* - * Doubly linked list iterator allowing some modifications while iterating. + * Doubly linked list iterator for both dlist_head and dclist_head types. + * This iterator type allows some modifications while iterating. * - * Used as state in dlist_foreach_modify(). To get the current element of the - * iteration use the 'cur' member. + * Used as state in dlist_foreach_modify() and dclist_foreach_modify(). + * + * To get the current element of the iteration use the 'cur' member. * * Iterations using this are only allowed to change the list at the current * point of iteration. It is fine to delete the current node, but it is *not* @@ -182,6 +202,19 @@ typedef struct dlist_mutable_iter dlist_node *end; /* last node we'll iterate to */ } dlist_mutable_iter; +/* + * Head of a doubly linked list with a count of the number of items + * + * This internally makes use of a dlist to implement the actual list. When + * items are added or removed from the list the count is updated to reflect + * the current number of items in the list. + */ +typedef struct dclist_head +{ + dlist_head dlist; /* the actual list header */ + uint32 count; /* the number of items in the list */ +} dclist_head; + /* * Node of a singly linked list. * @@ -246,17 +279,19 @@ typedef struct slist_mutable_iter /* Static initializers */ #define DLIST_STATIC_INIT(name) {{&(name).head, &(name).head}} +#define DCLIST_STATIC_INIT(name) {{{&(name).dlist.head, &(name).dlist.head}}, 0} #define SLIST_STATIC_INIT(name) {{NULL}} /* Prototypes for functions too big to be inline */ /* Caution: this is O(n); consider using slist_delete_current() instead */ -extern void slist_delete(slist_head *head, slist_node *node); +extern void slist_delete(slist_head *head, const slist_node *node); #ifdef ILIST_DEBUG -extern void dlist_check(dlist_head *head); -extern void slist_check(slist_head *head); +extern void dlist_member_check(const dlist_head *head, const dlist_node *node); +extern void dlist_check(const dlist_head *head); +extern void slist_check(const slist_head *head); #else /* * These seemingly useless casts to void are here to keep the compiler quiet @@ -264,6 +299,7 @@ extern void slist_check(slist_head *head); * in which functions the only point of passing the list head pointer is to be * able to run these checks. */ +#define dlist_member_check(head, node) ((void) (head)) #define dlist_check(head) ((void) (head)) #define slist_check(head) ((void) (head)) #endif /* ILIST_DEBUG */ @@ -280,13 +316,24 @@ dlist_init(dlist_head *head) head->head.next = head->head.prev = &head->head; } +/* + * Initialize a doubly linked list element. + * + * This is only needed when dlist_node_is_detached() may be needed. + */ +static inline void +dlist_node_init(dlist_node *node) +{ + node->next = node->prev = NULL; +} + /* * Is the list empty? * * An empty list has either its first 'next' pointer set to NULL, or to itself. */ static inline bool -dlist_is_empty(dlist_head *head) +dlist_is_empty(const dlist_head *head) { dlist_check(head); @@ -361,6 +408,41 @@ dlist_delete(dlist_node *node) node->next->prev = node->prev; } +/* + * Like dlist_delete(), but also sets next/prev to NULL to signal not being in + * a list. + */ +static inline void +dlist_delete_thoroughly(dlist_node *node) +{ + node->prev->next = node->next; + node->next->prev = node->prev; + node->next = NULL; + node->prev = NULL; +} + +/* + * Same as dlist_delete, but performs checks in ILIST_DEBUG builds to ensure + * that 'node' belongs to 'head'. + */ +static inline void +dlist_delete_from(dlist_head *head, dlist_node *node) +{ + dlist_member_check(head, node); + dlist_delete(node); +} + +/* + * Like dlist_delete_from, but also sets next/prev to NULL to signal not + * being in a list. + */ +static inline void +dlist_delete_from_thoroughly(dlist_head *head, dlist_node *node) +{ + dlist_member_check(head, node); + dlist_delete_thoroughly(node); +} + /* * Remove and return the first node from a list (there must be one). */ @@ -418,7 +500,7 @@ dlist_move_tail(dlist_head *head, dlist_node *node) * Caution: unreliable if 'node' is not in the list. */ static inline bool -dlist_has_next(dlist_head *head, dlist_node *node) +dlist_has_next(const dlist_head *head, const dlist_node *node) { return node->next != &head->head; } @@ -428,11 +510,26 @@ dlist_has_next(dlist_head *head, dlist_node *node) * Caution: unreliable if 'node' is not in the list. */ static inline bool -dlist_has_prev(dlist_head *head, dlist_node *node) +dlist_has_prev(const dlist_head *head, const dlist_node *node) { return node->prev != &head->head; } +/* + * Check if node is detached. A node is only detached if it either has been + * initialized with dlist_init_node(), or deleted with + * dlist_delete_thoroughly() / dlist_delete_from_thoroughly() / + * dclist_delete_from_thoroughly(). + */ +static inline bool +dlist_node_is_detached(const dlist_node *node) +{ + Assert((node->next == NULL && node->prev == NULL) || + (node->next != NULL && node->prev != NULL)); + + return node->next == NULL; +} + /* * Return the next node in the list (there must be one). */ @@ -562,6 +659,322 @@ dlist_tail_node(dlist_head *head) (iter).cur != (iter).end; \ (iter).cur = (iter).cur->prev) +/* doubly-linked count list implementation */ + +/* + * dclist_init + * Initialize a doubly linked count list. + * + * Previous state will be thrown away without any cleanup. + */ +static inline void +dclist_init(dclist_head *head) +{ + dlist_init(&head->dlist); + head->count = 0; +} + +/* + * dclist_is_empty + * Returns true if the list is empty, otherwise false. + */ +static inline bool +dclist_is_empty(const dclist_head *head) +{ + Assert(dlist_is_empty(&head->dlist) == (head->count == 0)); + return (head->count == 0); +} + +/* + * dclist_push_head + * Insert a node at the beginning of the list. + */ +static inline void +dclist_push_head(dclist_head *head, dlist_node *node) +{ + if (head->dlist.head.next == NULL) /* convert NULL header to circular */ + dclist_init(head); + + dlist_push_head(&head->dlist, node); + head->count++; + + Assert(head->count > 0); /* count overflow check */ +} + +/* + * dclist_push_tail + * Insert a node at the end of the list. + */ +static inline void +dclist_push_tail(dclist_head *head, dlist_node *node) +{ + if (head->dlist.head.next == NULL) /* convert NULL header to circular */ + dclist_init(head); + + dlist_push_tail(&head->dlist, node); + head->count++; + + Assert(head->count > 0); /* count overflow check */ +} + +/* + * dclist_insert_after + * Insert a node after another *in the same list* + * + * Caution: 'after' must be a member of 'head'. + */ +static inline void +dclist_insert_after(dclist_head *head, dlist_node *after, dlist_node *node) +{ + dlist_member_check(&head->dlist, after); + Assert(head->count > 0); /* must be at least 1 already */ + + dlist_insert_after(after, node); + head->count++; + + Assert(head->count > 0); /* count overflow check */ +} + +/* + * dclist_insert_before + * Insert a node before another *in the same list* + * + * Caution: 'before' must be a member of 'head'. + */ +static inline void +dclist_insert_before(dclist_head *head, dlist_node *before, dlist_node *node) +{ + dlist_member_check(&head->dlist, before); + Assert(head->count > 0); /* must be at least 1 already */ + + dlist_insert_before(before, node); + head->count++; + + Assert(head->count > 0); /* count overflow check */ +} + +/* + * dclist_delete_from + * Deletes 'node' from 'head'. + * + * Caution: 'node' must be a member of 'head'. + */ +static inline void +dclist_delete_from(dclist_head *head, dlist_node *node) +{ + Assert(head->count > 0); + + dlist_delete_from(&head->dlist, node); + head->count--; +} + +/* + * Like dclist_delete_from(), but also sets next/prev to NULL to signal not + * being in a list. + */ +static inline void +dclist_delete_from_thoroughly(dclist_head *head, dlist_node *node) +{ + Assert(head->count > 0); + + dlist_delete_from_thoroughly(&head->dlist, node); + head->count--; +} + +/* + * dclist_pop_head_node + * Remove and return the first node from a list (there must be one). + */ +static inline dlist_node * +dclist_pop_head_node(dclist_head *head) +{ + dlist_node *node; + + Assert(head->count > 0); + + node = dlist_pop_head_node(&head->dlist); + head->count--; + return node; +} + +/* + * dclist_move_head + * Move 'node' from its current position in the list to the head position + * in 'head'. + * + * Caution: 'node' must be a member of 'head'. + */ +static inline void +dclist_move_head(dclist_head *head, dlist_node *node) +{ + dlist_member_check(&head->dlist, node); + Assert(head->count > 0); + + dlist_move_head(&head->dlist, node); +} + +/* + * dclist_move_tail + * Move 'node' from its current position in the list to the tail position + * in 'head'. + * + * Caution: 'node' must be a member of 'head'. + */ +static inline void +dclist_move_tail(dclist_head *head, dlist_node *node) +{ + dlist_member_check(&head->dlist, node); + Assert(head->count > 0); + + dlist_move_tail(&head->dlist, node); +} + +/* + * dclist_has_next + * Check whether 'node' has a following node. + * + * Caution: 'node' must be a member of 'head'. + */ +static inline bool +dclist_has_next(const dclist_head *head, const dlist_node *node) +{ + dlist_member_check(&head->dlist, node); + Assert(head->count > 0); + + return dlist_has_next(&head->dlist, node); +} + +/* + * dclist_has_prev + * Check whether 'node' has a preceding node. + * + * Caution: 'node' must be a member of 'head'. + */ +static inline bool +dclist_has_prev(const dclist_head *head, const dlist_node *node) +{ + dlist_member_check(&head->dlist, node); + Assert(head->count > 0); + + return dlist_has_prev(&head->dlist, node); +} + +/* + * dclist_next_node + * Return the next node in the list (there must be one). + */ +static inline dlist_node * +dclist_next_node(dclist_head *head, dlist_node *node) +{ + Assert(head->count > 0); + + return dlist_next_node(&head->dlist, node); +} + +/* + * dclist_prev_node + * Return the prev node in the list (there must be one). + */ +static inline dlist_node * +dclist_prev_node(dclist_head *head, dlist_node *node) +{ + Assert(head->count > 0); + + return dlist_prev_node(&head->dlist, node); +} + +/* internal support function to get address of head element's struct */ +static inline void * +dclist_head_element_off(dclist_head *head, size_t off) +{ + Assert(!dclist_is_empty(head)); + + return (char *) head->dlist.head.next - off; +} + +/* + * dclist_head_node + * Return the first node in the list (there must be one). + */ +static inline dlist_node * +dclist_head_node(dclist_head *head) +{ + Assert(head->count > 0); + + return (dlist_node *) dlist_head_element_off(&head->dlist, 0); +} + +/* internal support function to get address of tail element's struct */ +static inline void * +dclist_tail_element_off(dclist_head *head, size_t off) +{ + Assert(!dclist_is_empty(head)); + + return (char *) head->dlist.head.prev - off; +} + +/* + * Return the last node in the list (there must be one). + */ +static inline dlist_node * +dclist_tail_node(dclist_head *head) +{ + Assert(head->count > 0); + + return (dlist_node *) dlist_tail_element_off(&head->dlist, 0); +} + +/* + * dclist_count + * Returns the stored number of entries in 'head' + */ +static inline uint32 +dclist_count(const dclist_head *head) +{ + Assert(dlist_is_empty(&head->dlist) == (head->count == 0)); + + return head->count; +} + +/* + * Return the containing struct of 'type' where 'membername' is the dlist_node + * pointed at by 'ptr'. + * + * This is used to convert a dlist_node * back to its containing struct. + * + * Note: This is effectively just the same as dlist_container, so reuse that. + */ +#define dclist_container(type, membername, ptr) \ + dlist_container(type, membername, ptr) + + /* + * Return the address of the first element in the list. + * + * The list must not be empty. + */ +#define dclist_head_element(type, membername, lhead) \ + (AssertVariableIsOfTypeMacro(((type *) NULL)->membername, dlist_node), \ + (type *) dclist_head_element_off(lhead, offsetof(type, membername))) + + /* + * Return the address of the last element in the list. + * + * The list must not be empty. + */ +#define dclist_tail_element(type, membername, lhead) \ + (AssertVariableIsOfTypeMacro(((type *) NULL)->membername, dlist_node), \ + ((type *) dclist_tail_element_off(lhead, offsetof(type, membername)))) + + +/* Iterators for dclists */ +#define dclist_foreach(iter, lhead) \ + dlist_foreach(iter, &((lhead)->dlist)) + +#define dclist_foreach_modify(iter, lhead) \ + dlist_foreach_modify(iter, &((lhead)->dlist)) + +#define dclist_reverse_foreach(iter, lhead) \ + dlist_reverse_foreach(iter, &((lhead)->dlist)) /* singly linked list implementation */ @@ -579,7 +992,7 @@ slist_init(slist_head *head) * Is the list empty? */ static inline bool -slist_is_empty(slist_head *head) +slist_is_empty(const slist_head *head) { slist_check(head); @@ -627,7 +1040,7 @@ slist_pop_head_node(slist_head *head) * Check whether 'node' has a following node. */ static inline bool -slist_has_next(slist_head *head, slist_node *node) +slist_has_next(const slist_head *head, const slist_node *node) { slist_check(head); diff --git a/parser/include/lib/pairingheap.h b/parser/include/lib/pairingheap.h index 26b1cad5..5691e103 100644 --- a/parser/include/lib/pairingheap.h +++ b/parser/include/lib/pairingheap.h @@ -3,7 +3,7 @@ * * A Pairing Heap implementation * - * Portions Copyright (c) 2012-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2012-2023, PostgreSQL Global Development Group * * src/include/lib/pairingheap.h */ diff --git a/parser/include/lib/simplehash.h b/parser/include/lib/simplehash.h index d03a0018..b7adc16b 100644 --- a/parser/include/lib/simplehash.h +++ b/parser/include/lib/simplehash.h @@ -87,7 +87,7 @@ * looking or is done - buckets following a deleted element are shifted * backwards, unless they're empty or already at their optimal position. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/lib/simplehash.h @@ -546,13 +546,13 @@ SH_GROW(SH_TYPE * tb, uint64 newsize) if (oldentry->status == SH_STATUS_IN_USE) { uint32 hash; - uint32 startelem; + uint32 startelem2; uint32 curelem; SH_ELEMENT_TYPE *newentry; hash = SH_ENTRY_HASH(tb, oldentry); - startelem = SH_INITIAL_BUCKET(tb, hash); - curelem = startelem; + startelem2 = SH_INITIAL_BUCKET(tb, hash); + curelem = startelem2; /* find empty element to put data into */ while (true) @@ -564,7 +564,7 @@ SH_GROW(SH_TYPE * tb, uint64 newsize) break; } - curelem = SH_NEXT(tb, curelem, startelem); + curelem = SH_NEXT(tb, curelem, startelem2); } /* copy entry to new slot */ @@ -810,7 +810,7 @@ SH_LOOKUP_HASH_INTERNAL(SH_TYPE * tb, SH_KEY_TYPE key, uint32 hash) } /* - * Lookup up entry in hash table. Returns NULL if key not present. + * Lookup entry in hash table. Returns NULL if key not present. */ SH_SCOPE SH_ELEMENT_TYPE * SH_LOOKUP(SH_TYPE * tb, SH_KEY_TYPE key) @@ -821,7 +821,7 @@ SH_LOOKUP(SH_TYPE * tb, SH_KEY_TYPE key) } /* - * Lookup up entry in hash table using an already-calculated hash. + * Lookup entry in hash table using an already-calculated hash. * * Returns NULL if key not present. */ @@ -964,7 +964,6 @@ SH_DELETE_ITEM(SH_TYPE * tb, SH_ELEMENT_TYPE * entry) SH_SCOPE void SH_START_ITERATE(SH_TYPE * tb, SH_ITERATOR * iter) { - int i; uint64 startelem = PG_UINT64_MAX; /* @@ -972,7 +971,7 @@ SH_START_ITERATE(SH_TYPE * tb, SH_ITERATOR * iter) * supported, we want to start/end at an element that cannot be affected * by elements being shifted. */ - for (i = 0; i < tb->size; i++) + for (uint32 i = 0; i < tb->size; i++) { SH_ELEMENT_TYPE *entry = &tb->data[i]; @@ -983,6 +982,7 @@ SH_START_ITERATE(SH_TYPE * tb, SH_ITERATOR * iter) } } + /* we should have found an empty element */ Assert(startelem < SH_MAX_SIZE); /* diff --git a/parser/include/lib/sort_template.h b/parser/include/lib/sort_template.h index 3122a930..1edd05c7 100644 --- a/parser/include/lib/sort_template.h +++ b/parser/include/lib/sort_template.h @@ -5,7 +5,7 @@ * A template for a sort algorithm that supports varying degrees of * specialization. * - * Copyright (c) 2021-2022, PostgreSQL Global Development Group + * Copyright (c) 2021-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1992-1994, Regents of the University of California * * Usage notes: diff --git a/parser/include/lib/stringinfo.h b/parser/include/lib/stringinfo.h index 9b755c48..36a416f8 100644 --- a/parser/include/lib/stringinfo.h +++ b/parser/include/lib/stringinfo.h @@ -8,7 +8,7 @@ * (null-terminated text) or arbitrary binary data. All storage is allocated * with palloc() (falling back to malloc in frontend code). * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/lib/stringinfo.h @@ -142,7 +142,7 @@ extern void appendStringInfoSpaces(StringInfo str, int count); * if necessary. */ extern void appendBinaryStringInfo(StringInfo str, - const char *data, int datalen); + const void *data, int datalen); /*------------------------ * appendBinaryStringInfoNT @@ -150,7 +150,7 @@ extern void appendBinaryStringInfo(StringInfo str, * if necessary. Does not ensure a trailing null-byte exists. */ extern void appendBinaryStringInfoNT(StringInfo str, - const char *data, int datalen); + const void *data, int datalen); /*------------------------ * enlargeStringInfo diff --git a/parser/include/libpq/auth.h b/parser/include/libpq/auth.h index d3c189ef..7fac05b8 100644 --- a/parser/include/libpq/auth.h +++ b/parser/include/libpq/auth.h @@ -4,7 +4,7 @@ * Definitions for network authentication routines * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/libpq/auth.h @@ -18,7 +18,7 @@ extern PGDLLIMPORT char *pg_krb_server_keyfile; extern PGDLLIMPORT bool pg_krb_caseins_users; -extern PGDLLIMPORT char *pg_krb_realm; +extern PGDLLIMPORT bool pg_gss_accept_delegation; extern void ClientAuthentication(Port *port); extern void sendAuthRequest(Port *port, AuthRequest areq, const char *extradata, @@ -28,4 +28,10 @@ extern void sendAuthRequest(Port *port, AuthRequest areq, const char *extradata, typedef void (*ClientAuthentication_hook_type) (Port *, int); extern PGDLLIMPORT ClientAuthentication_hook_type ClientAuthentication_hook; +/* hook type for password manglers */ +typedef char *(*auth_password_hook_typ) (char *input); + +/* Default LDAP password mutator hook, can be overridden by a shared library */ +extern PGDLLIMPORT auth_password_hook_typ ldap_password_hook; + #endif /* AUTH_H */ diff --git a/parser/include/libpq/crypt.h b/parser/include/libpq/crypt.h index 3238cf66..ddcd2746 100644 --- a/parser/include/libpq/crypt.h +++ b/parser/include/libpq/crypt.h @@ -3,7 +3,7 @@ * crypt.h * Interface to libpq/crypt.c * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/libpq/crypt.h diff --git a/parser/include/libpq/hba.h b/parser/include/libpq/hba.h index d06da818..189f6d0d 100644 --- a/parser/include/libpq/hba.h +++ b/parser/include/libpq/hba.h @@ -77,8 +77,23 @@ typedef enum ClientCertName clientCertDN } ClientCertName; +/* + * A single string token lexed from an authentication configuration file + * (pg_ident.conf or pg_hba.conf), together with whether the token has + * been quoted. If "string" begins with a slash, it may optionally + * contain a regular expression (currently used for pg_ident.conf when + * building IdentLines and for pg_hba.conf when building HbaLines). + */ +typedef struct AuthToken +{ + char *string; + bool quoted; + regex_t *regex; +} AuthToken; + typedef struct HbaLine { + char *sourcefile; int linenumber; char *rawline; ConnType conntype; @@ -127,22 +142,10 @@ typedef struct IdentLine int linenumber; char *usermap; - char *ident_user; - char *pg_role; - regex_t re; + AuthToken *system_user; + AuthToken *pg_user; } IdentLine; -/* - * A single string token lexed from an authentication configuration file - * (pg_ident.conf or pg_hba.conf), together with whether the token has - * been quoted. - */ -typedef struct AuthToken -{ - char *string; - bool quoted; -} AuthToken; - /* * TokenizedAuthLine represents one line lexed from an authentication * configuration file. Each item in the "fields" list is a sub-list of @@ -155,6 +158,7 @@ typedef struct AuthToken typedef struct TokenizedAuthLine { List *fields; /* List of lists of AuthTokens */ + char *file_name; /* File name of origin */ int line_num; /* Line number */ char *raw_line; /* Raw line text */ char *err_msg; /* Error message if any */ @@ -168,12 +172,15 @@ extern bool load_ident(void); extern const char *hba_authname(UserAuth auth_method); extern void hba_getauthmethod(hbaPort *port); extern int check_usermap(const char *usermap_name, - const char *pg_role, const char *auth_user, + const char *pg_user, const char *system_user, bool case_insensitive); extern HbaLine *parse_hba_line(TokenizedAuthLine *tok_line, int elevel); extern IdentLine *parse_ident_line(TokenizedAuthLine *tok_line, int elevel); extern bool pg_isblank(const char c); -extern MemoryContext tokenize_auth_file(const char *filename, FILE *file, - List **tok_lines, int elevel); +extern FILE *open_auth_file(const char *filename, int elevel, int depth, + char **err_msg); +extern void free_auth_file(FILE *file, int depth); +extern void tokenize_auth_file(const char *filename, FILE *file, + List **tok_lines, int elevel, int depth); #endif /* HBA_H */ diff --git a/parser/include/libpq/libpq-be.h b/parser/include/libpq/libpq-be.h index 90c20da2..3b2ce990 100644 --- a/parser/include/libpq/libpq-be.h +++ b/parser/include/libpq/libpq-be.h @@ -8,7 +8,7 @@ * Structs that need to be client-visible are in pqcomm.h. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/libpq/libpq-be.h @@ -23,9 +23,7 @@ #include #include #endif -#ifdef HAVE_NETINET_TCP_H #include -#endif #ifdef ENABLE_GSS #if defined(HAVE_GSSAPI_H) @@ -33,14 +31,6 @@ #else #include #endif /* HAVE_GSSAPI_H */ -/* - * GSSAPI brings in headers that set a lot of things in the global namespace on win32, - * that doesn't match the msvc build. It gives a bunch of compiler warnings that we ignore, - * but also defines a symbol that simply does not exist. Undefine it again. - */ -#ifdef _MSC_VER -#undef HAVE_GETADDRINFO -#endif #endif /* ENABLE_GSS */ #ifdef ENABLE_SSPI @@ -94,10 +84,42 @@ typedef struct * GSSAPI auth was not used */ bool auth; /* GSSAPI Authentication used */ bool enc; /* GSSAPI encryption in use */ + bool delegated_creds; /* GSSAPI Delegated credentials */ #endif } pg_gssinfo; #endif +/* + * ClientConnectionInfo includes the fields describing the client connection + * that are copied over to parallel workers as nothing from Port does that. + * The same rules apply for allocations here as for Port (everything must be + * malloc'd or palloc'd in TopMemoryContext). + * + * If you add a struct member here, remember to also handle serialization in + * SerializeClientConnectionInfo() and co. + */ +typedef struct ClientConnectionInfo +{ + /* + * Authenticated identity. The meaning of this identifier is dependent on + * auth_method; it is the identity (if any) that the user presented during + * the authentication cycle, before they were assigned a database role. + * (It is effectively the "SYSTEM-USERNAME" of a pg_ident usermap -- + * though the exact string in use may be different, depending on pg_hba + * options.) + * + * authn_id is NULL if the user has not actually been authenticated, for + * example if the "trust" auth method is in use. + */ + const char *authn_id; + + /* + * The HBA method that determined the above authn_id. This only has + * meaning if authn_id is not NULL; otherwise it's undefined. + */ + UserAuth auth_method; +} ClientConnectionInfo; + /* * This is used by the postmaster in its communication with frontends. It * contains all state information needed during this communication before the @@ -158,19 +180,6 @@ typedef struct Port */ HbaLine *hba; - /* - * Authenticated identity. The meaning of this identifier is dependent on - * hba->auth_method; it is the identity (if any) that the user presented - * during the authentication cycle, before they were assigned a database - * role. (It is effectively the "SYSTEM-USERNAME" of a pg_ident usermap - * -- though the exact string in use may be different, depending on pg_hba - * options.) - * - * authn_id is NULL if the user has not actually been authenticated, for - * example if the "trust" auth method is in use. - */ - const char *authn_id; - /* * TCP keepalive and user timeout settings. * @@ -300,7 +309,7 @@ extern void be_tls_get_peer_serial(Port *port, char *ptr, size_t len); * This is not supported with old versions of OpenSSL that don't have * the X509_get_signature_nid() function. */ -#if defined(USE_OPENSSL) && defined(HAVE_X509_GET_SIGNATURE_NID) +#if defined(USE_OPENSSL) && (defined(HAVE_X509_GET_SIGNATURE_NID) || defined(HAVE_X509_GET_SIGNATURE_INFO)) #define HAVE_BE_TLS_GET_CERTIFICATE_HASH extern char *be_tls_get_certificate_hash(Port *port, size_t *len); #endif @@ -320,6 +329,7 @@ extern PGDLLIMPORT openssl_tls_init_hook_typ openssl_tls_init_hook; extern bool be_gssapi_get_auth(Port *port); extern bool be_gssapi_get_enc(Port *port); extern const char *be_gssapi_get_princ(Port *port); +extern bool be_gssapi_get_delegation(Port *port); /* Read and write to a GSSAPI-encrypted connection. */ extern ssize_t be_gssapi_read(Port *port, void *ptr, size_t len); @@ -327,6 +337,7 @@ extern ssize_t be_gssapi_write(Port *port, void *ptr, size_t len); #endif /* ENABLE_GSS */ extern PGDLLIMPORT ProtocolVersion FrontendProtocol; +extern PGDLLIMPORT ClientConnectionInfo MyClientConnectionInfo; /* TCP keepalives configuration. These are no-ops on an AF_UNIX socket. */ diff --git a/parser/include/libpq/libpq.h b/parser/include/libpq/libpq.h index 2de7d9ba..50fc781f 100644 --- a/parser/include/libpq/libpq.h +++ b/parser/include/libpq/libpq.h @@ -4,7 +4,7 @@ * POSTGRES LIBPQ buffer structure definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/libpq/libpq.h diff --git a/parser/include/libpq/pqcomm.h b/parser/include/libpq/pqcomm.h index b418283d..c8509025 100644 --- a/parser/include/libpq/pqcomm.h +++ b/parser/include/libpq/pqcomm.h @@ -6,7 +6,7 @@ * NOTE: for historical reasons, this does not correspond to pqcomm.c. * pqcomm.c's routines are declared in libpq.h. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/libpq/pqcomm.h @@ -17,54 +17,22 @@ #define PQCOMM_H #include -#include -#ifdef HAVE_SYS_UN_H #include -#endif +#include #include -#ifdef HAVE_STRUCT_SOCKADDR_STORAGE - -#ifndef HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY -#ifdef HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY -#define ss_family __ss_family -#else -#error struct sockaddr_storage does not provide an ss_family member -#endif -#endif - -#ifdef HAVE_STRUCT_SOCKADDR_STORAGE___SS_LEN -#define ss_len __ss_len -#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1 -#endif -#else /* !HAVE_STRUCT_SOCKADDR_STORAGE */ - -/* Define a struct sockaddr_storage if we don't have one. */ - -struct sockaddr_storage -{ - union - { - struct sockaddr sa; /* get the system-dependent fields */ - int64 ss_align; /* ensures struct is properly aligned */ - char ss_pad[128]; /* ensures struct has desired size */ - } ss_stuff; -}; - -#define ss_family ss_stuff.sa.sa_family -/* It should have an ss_len field if sockaddr has sa_len. */ -#ifdef HAVE_STRUCT_SOCKADDR_SA_LEN -#define ss_len ss_stuff.sa.sa_len -#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1 -#endif -#endif /* HAVE_STRUCT_SOCKADDR_STORAGE */ - typedef struct { struct sockaddr_storage addr; socklen_t salen; } SockAddr; +typedef struct +{ + int family; + SockAddr addr; +} AddrInfo; + /* Configure the UNIX socket location for the well known port. */ #define UNIXSOCK_PATH(path, port, sockdir) \ @@ -154,13 +122,14 @@ extern PGDLLIMPORT bool Db_user_namespace; #define AUTH_REQ_PASSWORD 3 /* Password */ #define AUTH_REQ_CRYPT 4 /* crypt password. Not supported any more. */ #define AUTH_REQ_MD5 5 /* md5 password */ -#define AUTH_REQ_SCM_CREDS 6 /* transfer SCM credentials */ +/* 6 is available. It was used for SCM creds, not supported any more. */ #define AUTH_REQ_GSS 7 /* GSSAPI without wrap() */ #define AUTH_REQ_GSS_CONT 8 /* Continue GSS exchanges */ #define AUTH_REQ_SSPI 9 /* SSPI negotiate without wrap() */ #define AUTH_REQ_SASL 10 /* Begin SASL authentication */ #define AUTH_REQ_SASL_CONT 11 /* Continue SASL authentication */ #define AUTH_REQ_SASL_FIN 12 /* Final SASL message */ +#define AUTH_REQ_MAX AUTH_REQ_SASL_FIN /* maximum AUTH_REQ_* value */ typedef uint32 AuthRequest; diff --git a/parser/include/libpq/pqformat.h b/parser/include/libpq/pqformat.h index cd834825..0d2f958a 100644 --- a/parser/include/libpq/pqformat.h +++ b/parser/include/libpq/pqformat.h @@ -3,7 +3,7 @@ * pqformat.h * Definitions for formatting and parsing frontend/backend messages * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/libpq/pqformat.h @@ -22,7 +22,7 @@ extern void pq_beginmessage_reuse(StringInfo buf, char msgtype); extern void pq_endmessage(StringInfo buf); extern void pq_endmessage_reuse(StringInfo buf); -extern void pq_sendbytes(StringInfo buf, const char *data, int datalen); +extern void pq_sendbytes(StringInfo buf, const void *data, int datalen); extern void pq_sendcountedtext(StringInfo buf, const char *str, int slen, bool countincludesself); extern void pq_sendtext(StringInfo buf, const char *str, int slen); diff --git a/parser/include/libpq/pqsignal.h b/parser/include/libpq/pqsignal.h index 41227a30..023bcd13 100644 --- a/parser/include/libpq/pqsignal.h +++ b/parser/include/libpq/pqsignal.h @@ -3,7 +3,7 @@ * pqsignal.h * Backend signal(2) support (see also src/port/pqsignal.c) * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/libpq/pqsignal.h @@ -15,15 +15,30 @@ #include -#ifndef WIN32 -#define PG_SETMASK(mask) sigprocmask(SIG_SETMASK, mask, NULL) -#else +#ifdef WIN32 /* Emulate POSIX sigset_t APIs on Windows */ typedef int sigset_t; -extern int pqsigsetmask(int mask); - -#define PG_SETMASK(mask) pqsigsetmask(*(mask)) +#define SA_RESTART 1 +#define SA_NODEFER 2 + +struct sigaction +{ + void (*sa_handler) (int); + /* sa_sigaction not yet implemented */ + sigset_t sa_mask; + int sa_flags; +}; + +extern int pqsigprocmask(int how, const sigset_t *set, sigset_t *oset); +extern int pqsigaction(int signum, const struct sigaction *act, + struct sigaction *oldact); + +#define SIG_BLOCK 1 +#define SIG_UNBLOCK 2 +#define SIG_SETMASK 3 +#define sigprocmask(how, set, oset) pqsigprocmask((how), (set), (oset)) +#define sigaction(signum, act, oldact) pqsigaction((signum), (act), (oldact)) #define sigemptyset(set) (*(set) = 0) #define sigfillset(set) (*(set) = ~0) #define sigaddset(set, signum) (*(set) |= (sigmask(signum))) @@ -36,7 +51,4 @@ extern PGDLLIMPORT sigset_t StartupBlockSig; extern void pqinitmask(void); -/* pqsigfunc is declared in src/include/port.h */ -extern pqsigfunc pqsignal_pm(int signo, pqsigfunc func); - #endif /* PQSIGNAL_H */ diff --git a/parser/include/libpq/sasl.h b/parser/include/libpq/sasl.h new file mode 100644 index 00000000..7a1b1ed0 --- /dev/null +++ b/parser/include/libpq/sasl.h @@ -0,0 +1,136 @@ +/*------------------------------------------------------------------------- + * + * sasl.h + * Defines the SASL mechanism interface for the backend. + * + * Each SASL mechanism defines a frontend and a backend callback structure. + * + * See src/interfaces/libpq/fe-auth-sasl.h for the frontend counterpart. + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/libpq/sasl.h + * + *------------------------------------------------------------------------- + */ + +#ifndef PG_SASL_H +#define PG_SASL_H + +#include "lib/stringinfo.h" +#include "libpq/libpq-be.h" + +/* Status codes for message exchange */ +#define PG_SASL_EXCHANGE_CONTINUE 0 +#define PG_SASL_EXCHANGE_SUCCESS 1 +#define PG_SASL_EXCHANGE_FAILURE 2 + +/* + * Backend SASL mechanism callbacks. + * + * To implement a backend mechanism, declare a pg_be_sasl_mech struct with + * appropriate callback implementations. Then pass the mechanism to + * CheckSASLAuth() during ClientAuthentication(), once the server has decided + * which authentication method to use. + */ +typedef struct pg_be_sasl_mech +{ + /*--------- + * get_mechanisms() + * + * Retrieves the list of SASL mechanism names supported by this + * implementation. + * + * Input parameters: + * + * port: The client Port + * + * Output parameters: + * + * buf: A StringInfo buffer that the callback should populate with + * supported mechanism names. The names are appended into this + * StringInfo, each one ending with '\0' bytes. + *--------- + */ + void (*get_mechanisms) (Port *port, StringInfo buf); + + /*--------- + * init() + * + * Initializes mechanism-specific state for a connection. This callback + * must return a pointer to its allocated state, which will be passed + * as-is as the first argument to the other callbacks. + * + * Input parameters: + * + * port: The client Port. + * + * mech: The actual mechanism name in use by the client. + * + * shadow_pass: The stored secret for the role being authenticated, or + * NULL if one does not exist. Mechanisms that do not use + * shadow entries may ignore this parameter. If a + * mechanism uses shadow entries but shadow_pass is NULL, + * the implementation must continue the exchange as if the + * user existed and the password did not match, to avoid + * disclosing valid user names. + *--------- + */ + void *(*init) (Port *port, const char *mech, const char *shadow_pass); + + /*--------- + * exchange() + * + * Produces a server challenge to be sent to the client. The callback + * must return one of the PG_SASL_EXCHANGE_* values, depending on + * whether the exchange continues, has finished successfully, or has + * failed. + * + * Input parameters: + * + * state: The opaque mechanism state returned by init() + * + * input: The response data sent by the client, or NULL if the + * mechanism is client-first but the client did not send an + * initial response. (This can only happen during the first + * message from the client.) This is guaranteed to be + * null-terminated for safety, but SASL allows embedded + * nulls in responses, so mechanisms must be careful to + * check inputlen. + * + * inputlen: The length of the challenge data sent by the server, or + * -1 if the client did not send an initial response + * + * Output parameters, to be set by the callback function: + * + * output: A palloc'd buffer containing either the server's next + * challenge (if PG_SASL_EXCHANGE_CONTINUE is returned) or + * the server's outcome data (if PG_SASL_EXCHANGE_SUCCESS is + * returned and the mechanism requires data to be sent during + * a successful outcome). The callback should set this to + * NULL if the exchange is over and no output should be sent, + * which should correspond to either PG_SASL_EXCHANGE_FAILURE + * or a PG_SASL_EXCHANGE_SUCCESS with no outcome data. + * + * outputlen: The length of the challenge data. Ignored if *output is + * NULL. + * + * logdetail: Set to an optional DETAIL message to be printed to the + * server log, to disambiguate failure modes. (The client + * will only ever see the same generic authentication + * failure message.) Ignored if the exchange is completed + * with PG_SASL_EXCHANGE_SUCCESS. + *--------- + */ + int (*exchange) (void *state, + const char *input, int inputlen, + char **output, int *outputlen, + const char **logdetail); +} pg_be_sasl_mech; + +/* Common implementation for auth.c */ +extern int CheckSASLAuth(const pg_be_sasl_mech *mech, Port *port, + char *shadow_pass, const char **logdetail); + +#endif /* PG_SASL_H */ diff --git a/parser/include/libpq/scram.h b/parser/include/libpq/scram.h new file mode 100644 index 00000000..310bc365 --- /dev/null +++ b/parser/include/libpq/scram.h @@ -0,0 +1,37 @@ +/*------------------------------------------------------------------------- + * + * scram.h + * Interface to libpq/scram.c + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/libpq/scram.h + * + *------------------------------------------------------------------------- + */ +#ifndef PG_SCRAM_H +#define PG_SCRAM_H + +#include "common/cryptohash.h" +#include "lib/stringinfo.h" +#include "libpq/libpq-be.h" +#include "libpq/sasl.h" + +/* Number of iterations when generating new secrets */ +extern PGDLLIMPORT int scram_sha_256_iterations; + +/* SASL implementation callbacks */ +extern PGDLLIMPORT const pg_be_sasl_mech pg_be_scram_mech; + +/* Routines to handle and check SCRAM-SHA-256 secret */ +extern char *pg_be_scram_build_secret(const char *password); +extern bool parse_scram_secret(const char *secret, + int *iterations, + pg_cryptohash_type *hash_type, + int *key_length, char **salt, + uint8 *stored_key, uint8 *server_key); +extern bool scram_verify_plain_password(const char *username, + const char *password, const char *secret); + +#endif /* PG_SCRAM_H */ diff --git a/parser/include/mb/pg_wchar.h b/parser/include/mb/pg_wchar.h index 31f5b393..25276b19 100644 --- a/parser/include/mb/pg_wchar.h +++ b/parser/include/mb/pg_wchar.h @@ -3,7 +3,7 @@ * pg_wchar.h * multibyte-character support * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/mb/pg_wchar.h @@ -19,6 +19,8 @@ #ifndef PG_WCHAR_H #define PG_WCHAR_H +#include "port/simd.h" + /* * The pg_wchar type */ @@ -604,11 +606,11 @@ extern int pg_encoding_wchar2mb_with_len(int encoding, extern int pg_char_and_wchar_strcmp(const char *s1, const pg_wchar *s2); extern int pg_wchar_strncmp(const pg_wchar *s1, const pg_wchar *s2, size_t n); extern int pg_char_and_wchar_strncmp(const char *s1, const pg_wchar *s2, size_t n); -extern size_t pg_wchar_strlen(const pg_wchar *wstr); +extern size_t pg_wchar_strlen(const pg_wchar *str); extern int pg_mblen(const char *mbstr); extern int pg_dsplen(const char *mbstr); extern int pg_mbstrlen(const char *mbstr); -extern int pg_mbstrlen_with_len(const char *mbstr, int len); +extern int pg_mbstrlen_with_len(const char *mbstr, int limit); extern int pg_mbcliplen(const char *mbstr, int len, int limit); extern int pg_encoding_mbcliplen(int encoding, const char *mbstr, int len, int limit); @@ -639,7 +641,7 @@ extern int pg_do_encoding_conversion_buf(Oid proc, int src_encoding, int dest_encoding, unsigned char *src, int srclen, - unsigned char *dst, int dstlen, + unsigned char *dest, int destlen, bool noError); extern char *pg_client_to_server(const char *s, int len); @@ -648,6 +650,7 @@ extern char *pg_any_to_server(const char *s, int len, int encoding); extern char *pg_server_to_any(const char *s, int len, int encoding); extern void pg_unicode_to_server(pg_wchar c, unsigned char *s); +extern bool pg_unicode_to_server_noerror(pg_wchar c, unsigned char *s); extern unsigned short BIG5toCNS(unsigned short big5, unsigned char *lc); extern unsigned short CNStoBIG5(unsigned short cns, unsigned char lc); @@ -704,24 +707,28 @@ extern WCHAR *pgwin32_message_to_UTF16(const char *str, int len, int *utf16len); * Verify a chunk of bytes for valid ASCII. * * Returns false if the input contains any zero bytes or bytes with the - * high-bit set. Input len must be a multiple of 8. + * high-bit set. Input len must be a multiple of the chunk size (8 or 16). */ static inline bool is_valid_ascii(const unsigned char *s, int len) { - uint64 chunk, - highbit_cum = UINT64CONST(0), - zero_cum = UINT64CONST(0x8080808080808080); + const unsigned char *const s_end = s + len; + Vector8 chunk; + Vector8 highbit_cum = vector8_broadcast(0); +#ifdef USE_NO_SIMD + Vector8 zero_cum = vector8_broadcast(0x80); +#endif Assert(len % sizeof(chunk) == 0); - while (len > 0) + while (s < s_end) { - memcpy(&chunk, s, sizeof(chunk)); + vector8_load(&chunk, s); + + /* Capture any zero bytes in this chunk. */ +#ifdef USE_NO_SIMD /* - * Capture any zero bytes in this chunk. - * * First, add 0x7f to each byte. This sets the high bit in each byte, * unless it was a zero. If any resulting high bits are zero, the * corresponding high bits in the zero accumulator will be cleared. @@ -732,22 +739,32 @@ is_valid_ascii(const unsigned char *s, int len) * any input bytes did have the high bit set, it doesn't matter * because we check for those separately. */ - zero_cum &= (chunk + UINT64CONST(0x7f7f7f7f7f7f7f7f)); + zero_cum &= (chunk + vector8_broadcast(0x7F)); +#else - /* Capture any set bits in this chunk. */ - highbit_cum |= chunk; + /* + * Set all bits in each lane of the highbit accumulator where input + * bytes are zero. + */ + highbit_cum = vector8_or(highbit_cum, + vector8_eq(chunk, vector8_broadcast(0))); +#endif + + /* Capture all set bits in this chunk. */ + highbit_cum = vector8_or(highbit_cum, chunk); s += sizeof(chunk); - len -= sizeof(chunk); } /* Check if any high bits in the high bit accumulator got set. */ - if (highbit_cum & UINT64CONST(0x8080808080808080)) + if (vector8_is_highbit_set(highbit_cum)) return false; +#ifdef USE_NO_SIMD /* Check if any high bits in the zero accumulator got cleared. */ - if (zero_cum != UINT64CONST(0x8080808080808080)) + if (zero_cum != vector8_broadcast(0x80)) return false; +#endif return true; } diff --git a/parser/include/mb/stringinfo_mb.h b/parser/include/mb/stringinfo_mb.h index 8781ffdf..9c533f3e 100644 --- a/parser/include/mb/stringinfo_mb.h +++ b/parser/include/mb/stringinfo_mb.h @@ -3,7 +3,7 @@ * stringinfo_mb.h * multibyte support for StringInfo * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/mb/stringinfo_mb.h diff --git a/parser/include/miscadmin.h b/parser/include/miscadmin.h index d06c547a..6e5284d5 100644 --- a/parser/include/miscadmin.h +++ b/parser/include/miscadmin.h @@ -10,7 +10,7 @@ * Over time, this has also become the preferred place for widely known * resource-limitation stuff, such as work_mem and check_stack_depth(). * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/miscadmin.h @@ -263,6 +263,15 @@ extern PGDLLIMPORT double hash_mem_multiplier; extern PGDLLIMPORT int maintenance_work_mem; extern PGDLLIMPORT int max_parallel_maintenance_workers; +/* + * Upper and lower hard limits for the buffer access strategy ring size + * specified by the VacuumBufferUsageLimit GUC and BUFFER_USAGE_LIMIT option + * to VACUUM and ANALYZE. + */ +#define MIN_BAS_VAC_RING_SIZE_KB 128 +#define MAX_BAS_VAC_RING_SIZE_KB (16 * 1024 * 1024) + +extern PGDLLIMPORT int VacuumBufferUsageLimit; extern PGDLLIMPORT int VacuumCostPageHit; extern PGDLLIMPORT int VacuumCostPageMiss; extern PGDLLIMPORT int VacuumCostPageDirty; @@ -279,15 +288,7 @@ extern PGDLLIMPORT bool VacuumCostActive; /* in tcop/postgres.c */ -#if defined(__ia64__) || defined(__ia64) -typedef struct -{ - char *stack_base_ptr; - char *register_stack_base_ptr; -} pg_stack_base_t; -#else typedef char *pg_stack_base_t; -#endif extern pg_stack_base_t set_stack_base(void); extern void restore_stack_base(pg_stack_base_t base); @@ -299,7 +300,7 @@ extern void PreventCommandIfReadOnly(const char *cmdname); extern void PreventCommandIfParallelMode(const char *cmdname); extern void PreventCommandDuringRecovery(const char *cmdname); -/* in utils/misc/guc.c */ +/* in utils/misc/guc_tables.c */ extern PGDLLIMPORT int trace_recovery_messages; extern int trace_recovery(int trace_level); @@ -318,26 +319,30 @@ extern PGDLLIMPORT char *DatabasePath; /* now in utils/init/miscinit.c */ extern void InitPostmasterChild(void); extern void InitStandaloneProcess(const char *argv0); +extern void InitProcessLocalLatch(void); extern void SwitchToSharedLatch(void); extern void SwitchBackToLocalLatch(void); typedef enum BackendType { B_INVALID = 0, + B_ARCHIVER, B_AUTOVAC_LAUNCHER, B_AUTOVAC_WORKER, B_BACKEND, B_BG_WORKER, B_BG_WRITER, B_CHECKPOINTER, + B_LOGGER, + B_STANDALONE_BACKEND, B_STARTUP, B_WAL_RECEIVER, B_WAL_SENDER, B_WAL_WRITER, - B_ARCHIVER, - B_LOGGER, } BackendType; +#define BACKEND_NUM_TYPES (B_WAL_WRITER + 1) + extern PGDLLIMPORT BackendType MyBackendType; extern const char *GetBackendTypeDesc(BackendType backendType); @@ -359,11 +364,14 @@ extern bool InSecurityRestrictedOperation(void); extern bool InNoForceRLSOperation(void); extern void GetUserIdAndContext(Oid *userid, bool *sec_def_context); extern void SetUserIdAndContext(Oid userid, bool sec_def_context); -extern void InitializeSessionUserId(const char *rolename, Oid useroid); +extern void InitializeSessionUserId(const char *rolename, Oid roleid); extern void InitializeSessionUserIdStandalone(void); extern void SetSessionAuthorization(Oid userid, bool is_superuser); extern Oid GetCurrentRoleId(void); extern void SetCurrentRoleId(Oid roleid, bool is_superuser); +extern void InitializeSystemUser(const char *authn_id, + const char *auth_method); +extern const char *GetSystemUser(void); /* in utils/misc/superuser.c */ extern bool superuser(void); /* current user is superuser */ @@ -411,7 +419,7 @@ extern PGDLLIMPORT ProcessingMode Mode; #define SetProcessingMode(mode) \ do { \ - AssertArg((mode) == BootstrapProcessing || \ + Assert((mode) == BootstrapProcessing || \ (mode) == InitProcessing || \ (mode) == NormalProcessing); \ Mode = (mode); \ @@ -489,6 +497,10 @@ extern bool has_rolreplication(Oid roleid); typedef void (*shmem_request_hook_type) (void); extern PGDLLIMPORT shmem_request_hook_type shmem_request_hook; +extern Size EstimateClientConnectionInfoSpace(void); +extern void SerializeClientConnectionInfo(Size maxsize, char *start_address); +extern void RestoreClientConnectionInfo(char *conninfo); + /* in executor/nodeHash.c */ extern size_t get_hash_memory_limit(void); diff --git a/parser/include/nodes/bitmapset.h b/parser/include/nodes/bitmapset.h index 75b5ce1a..14de6a9f 100644 --- a/parser/include/nodes/bitmapset.h +++ b/parser/include/nodes/bitmapset.h @@ -5,13 +5,11 @@ * * A bitmap set can represent any set of nonnegative integers, although * it is mainly intended for sets where the maximum value is not large, - * say at most a few hundred. By convention, a NULL pointer is always - * accepted by all operations to represent the empty set. (But beware - * that this is not the only representation of the empty set. Use - * bms_is_empty() in preference to testing for NULL.) + * say at most a few hundred. By convention, we always represent the + * empty set by a NULL pointer. * * - * Copyright (c) 2003-2022, PostgreSQL Global Development Group + * Copyright (c) 2003-2023, PostgreSQL Global Development Group * * src/include/nodes/bitmapset.h * @@ -20,6 +18,8 @@ #ifndef BITMAPSET_H #define BITMAPSET_H +#include "nodes/nodes.h" + /* * Forward decl to save including pg_list.h */ @@ -48,6 +48,9 @@ typedef int32 signedbitmapword; /* must be the matching signed type */ typedef struct Bitmapset { + pg_node_attr(custom_copy_equal, special_read_write, no_query_jumble) + + NodeTag type; int nwords; /* number of words in array */ bitmapword words[FLEXIBLE_ARRAY_MEMBER]; /* really [nwords] */ } Bitmapset; @@ -97,7 +100,9 @@ extern int bms_num_members(const Bitmapset *a); /* optimized tests when we don't need to know exact membership count: */ extern BMS_Membership bms_membership(const Bitmapset *a); -extern bool bms_is_empty(const Bitmapset *a); + +/* NULL is now the only allowed representation of an empty bitmapset */ +#define bms_is_empty(a) ((a) == NULL) /* these routines recycle (modify or free) their non-const inputs: */ @@ -110,7 +115,6 @@ extern Bitmapset *bms_del_members(Bitmapset *a, const Bitmapset *b); extern Bitmapset *bms_join(Bitmapset *a, Bitmapset *b); /* support for iterating through the integer elements of a set: */ -extern int bms_first_member(Bitmapset *a); extern int bms_next_member(const Bitmapset *a, int prevbit); extern int bms_prev_member(const Bitmapset *a, int prevbit); diff --git a/parser/include/nodes/execnodes.h b/parser/include/nodes/execnodes.h index 57288013..869465d6 100644 --- a/parser/include/nodes/execnodes.h +++ b/parser/include/nodes/execnodes.h @@ -3,8 +3,23 @@ * execnodes.h * definitions for executor state nodes * - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Most plan node types declared in plannodes.h have a corresponding + * execution-state node type declared here. An exception is that + * expression nodes (subtypes of Expr) are usually represented by steps + * of an ExprState, and fully handled within execExpr* - but sometimes + * their state needs to be shared with other parts of the executor, as + * for example with SubPlanState, which nodeSubplan.c has to modify. + * + * Node types declared in this file do not have any copy/equal/out/read + * support. (That is currently hard-wired in gen_node_support.pl, rather + * than being explicitly represented by pg_node_attr decorations here.) + * There is no need for copy, equal, or read support for executor trees. + * Output support could be useful for debugging; but there are a lot of + * specialized fields that would require custom code, so for now it's + * not provided. + * + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/execnodes.h @@ -47,7 +62,7 @@ struct LogicalTapeSet; /* ---------------- * ExprState node * - * ExprState is the top-level node for expression evaluation. + * ExprState represents the evaluation state for a whole expression tree. * It contains instructions (in ->steps) to evaluate the expression. * ---------------- */ @@ -146,6 +161,7 @@ typedef struct ExprState * IndexUnchanged aminsert hint, cached for retail inserts * Concurrent are we doing a concurrent index build? * BrokenHotChain did we detect any broken HOT chains? + * Summarizing is it a summarizing index? * ParallelWorkers # of workers requested (excludes leader) * Am Oid of index AM * AmCache private cache area for index AM @@ -179,6 +195,7 @@ typedef struct IndexInfo bool ii_IndexUnchanged; bool ii_Concurrent; bool ii_BrokenHotChain; + bool ii_Summarizing; int ii_ParallelWorkers; Oid ii_Am; void *ii_AmCache; @@ -447,6 +464,9 @@ typedef struct ResultRelInfo */ AttrNumber ri_RowIdAttNo; + /* For UPDATE, attnums of generated columns to be computed */ + Bitmapset *ri_extraUpdatedCols; + /* Projection to generate new tuple in an INSERT/UPDATE */ ProjectionInfo *ri_projectNew; /* Slot to hold that tuple */ @@ -498,11 +518,13 @@ typedef struct ResultRelInfo /* array of constraint-checking expr states */ ExprState **ri_ConstraintExprs; - /* array of stored generated columns expr states */ - ExprState **ri_GeneratedExprs; + /* arrays of stored generated columns expr states, for INSERT and UPDATE */ + ExprState **ri_GeneratedExprsI; + ExprState **ri_GeneratedExprsU; /* number of stored generated columns we need to compute */ - int ri_NumGeneratedNeeded; + int ri_NumGeneratedNeededI; + int ri_NumGeneratedNeededU; /* list of RETURNING expressions */ List *ri_returningList; @@ -523,6 +545,21 @@ typedef struct ResultRelInfo /* partition check expression state (NULL if not set up yet) */ ExprState *ri_PartitionCheckExpr; + /* + * Map to convert child result relation tuples to the format of the table + * actually mentioned in the query (called "root"). Computed only if + * needed. A NULL map value indicates that no conversion is needed, so we + * must have a separate flag to show if the map has been computed. + */ + TupleConversionMap *ri_ChildToRootMap; + bool ri_ChildToRootMapValid; + + /* + * As above, but in the other direction. + */ + TupleConversionMap *ri_RootToChildMap; + bool ri_RootToChildMapValid; + /* * Information needed by tuple routing target relations * @@ -531,23 +568,12 @@ typedef struct ResultRelInfo * mentioned in the query is an inherited table, nor when tuple routing is * not needed. * - * RootToPartitionMap and PartitionTupleSlot, initialized by - * ExecInitRoutingInfo, are non-NULL if partition has a different tuple - * format than the root table. + * PartitionTupleSlot is non-NULL if RootToChild conversion is needed and + * the relation is a partition. */ struct ResultRelInfo *ri_RootResultRelInfo; - TupleConversionMap *ri_RootToPartitionMap; TupleTableSlot *ri_PartitionTupleSlot; - /* - * Map to convert child result relation tuples to the format of the table - * actually mentioned in the query (called "root"). Computed only if - * needed. A NULL map value indicates that no conversion is needed, so we - * must have a separate flag to show if the map has been computed. - */ - TupleConversionMap *ri_ChildToRootMap; - bool ri_ChildToRootMapValid; - /* for use by copyfrom.c when performing multi-inserts */ struct CopyMultiInsertBuffer *ri_CopyMultiInsertBuffer; @@ -595,6 +621,7 @@ typedef struct EState * pointers, or NULL if not yet opened */ struct ExecRowMark **es_rowmarks; /* Array of per-range-table-entry * ExecRowMarks, or NULL if none */ + List *es_rteperminfos; /* List of RTEPermissionInfo */ PlannedStmt *es_plannedstmt; /* link to top of plan tree */ const char *es_sourceText; /* Source text from QueryDesc */ @@ -633,7 +660,10 @@ typedef struct EState List *es_tupleTable; /* List of TupleTableSlots */ - uint64 es_processed; /* # of tuples processed */ + uint64 es_processed; /* # of tuples processed during one + * ExecutorRun() call. */ + uint64 es_total_processed; /* total # of tuples aggregated across all + * ExecutorRun() calls. */ int es_top_eflags; /* eflags passed to ExecutorStart */ int es_instrument; /* OR of InstrumentOption flags */ @@ -677,6 +707,13 @@ typedef struct EState int es_jit_flags; struct JitContext *es_jit; struct JitInstrumentation *es_jit_worker_instr; + + /* + * Lists of ResultRelInfos for foreign tables on which batch-inserts are + * to be executed and owning ModifyTableStates, stored in the same order. + */ + List *es_insert_pending_result_relations; + List *es_insert_pending_modifytables; } EState; @@ -684,8 +721,8 @@ typedef struct EState * ExecRowMark - * runtime representation of FOR [KEY] UPDATE/SHARE clauses * - * When doing UPDATE, DELETE, or SELECT FOR [KEY] UPDATE/SHARE, we will have an - * ExecRowMark for each non-target relation in the query (except inheritance + * When doing UPDATE/DELETE/MERGE/SELECT FOR [KEY] UPDATE/SHARE, we will have + * an ExecRowMark for each non-target relation in the query (except inheritance * parent RTEs, which can be ignored at runtime). Virtual relations such as * subqueries-in-FROM will have an ExecRowMark with relation == NULL. See * PlanRowMark for details about most of the fields. In addition to fields @@ -993,6 +1030,8 @@ typedef TupleTableSlot *(*ExecProcNodeMtd) (struct PlanState *pstate); */ typedef struct PlanState { + pg_node_attr(abstract) + NodeTag type; Plan *plan; /* associated Plan node */ @@ -1130,15 +1169,16 @@ typedef struct PlanState */ typedef struct EPQState { - /* Initialized at EvalPlanQualInit() time: */ - + /* These are initialized by EvalPlanQualInit() and do not change later: */ EState *parentestate; /* main query's EState */ int epqParam; /* ID of Param to force scan node re-eval */ + List *resultRelations; /* integer list of RT indexes, or NIL */ /* - * Tuples to be substituted by scan nodes. They need to set up, before - * calling EvalPlanQual()/EvalPlanQualNext(), into the slot returned by - * EvalPlanQualSlot(scanrelid). The array is indexed by scanrelid - 1. + * relsubs_slot[scanrelid - 1] holds the EPQ test tuple to be returned by + * the scan node for the scanrelid'th RT index, in place of performing an + * actual table scan. Callers should use EvalPlanQualSlot() to fetch + * these slots. */ List *tuple_table; /* tuple table for relsubs_slot */ TupleTableSlot **relsubs_slot; @@ -1172,11 +1212,21 @@ typedef struct EPQState ExecAuxRowMark **relsubs_rowmark; /* - * True if a relation's EPQ tuple has been fetched for relation, indexed - * by scanrelid - 1. + * relsubs_done[scanrelid - 1] is true if there is no EPQ tuple for this + * target relation or it has already been fetched in the current scan of + * this target relation within the current EvalPlanQual test. */ bool *relsubs_done; + /* + * relsubs_blocked[scanrelid - 1] is true if there is no EPQ tuple for + * this target relation during the current EvalPlanQual test. We keep + * these flags set for all relids listed in resultRelations, but + * transiently clear the one for the relation whose tuple is actually + * passed to EvalPlanQual(). + */ + bool *relsubs_blocked; + PlanState *recheckplanstate; /* EPQ specific exec nodes, for ->plan */ } EPQState; @@ -1317,6 +1367,7 @@ struct AppendState ParallelAppendState *as_pstate; /* parallel coordination info */ Size pstate_len; /* size of parallel coordination info */ struct PartitionPruneState *as_prune_state; + bool as_valid_subplans_identified; /* is as_valid_subplans valid? */ Bitmapset *as_valid_subplans; Bitmapset *as_valid_asyncplans; /* valid asynchronous plans indexes */ bool (*choose_next_subplan) (AppendState *); @@ -1932,6 +1983,7 @@ typedef struct CustomScanState List *custom_ps; /* list of child PlanState nodes, if any */ Size pscan_len; /* size of parallel coordination information */ const struct CustomExecMethods *methods; + const struct TupleTableSlotOps *slotOps; } CustomScanState; /* ---------------------------------------------------------------- @@ -2034,7 +2086,8 @@ typedef struct MergeJoinState * OuterTupleSlot is empty!) * hj_OuterTupleSlot tuple slot for outer tuples * hj_HashTupleSlot tuple slot for inner (hashed) tuples - * hj_NullOuterTupleSlot prepared null tuple for right/full outer joins + * hj_NullOuterTupleSlot prepared null tuple for right/right-anti/full + * outer joins * hj_NullInnerTupleSlot prepared null tuple for left/full outer joins * hj_FirstOuterTupleSlot first tuple retrieved from outer plan * hj_JoinState current state of ExecHashJoin state machine diff --git a/parser/include/nodes/extensible.h b/parser/include/nodes/extensible.h index 6244c8d9..7d51c603 100644 --- a/parser/include/nodes/extensible.h +++ b/parser/include/nodes/extensible.h @@ -4,7 +4,7 @@ * Definitions for extensible nodes and custom scans * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/extensible.h @@ -31,6 +31,8 @@ */ typedef struct ExtensibleNode { + pg_node_attr(custom_copy_equal, custom_read_write) + NodeTag type; const char *extnodename; /* identifier of ExtensibleNodeMethods */ } ExtensibleNode; @@ -70,8 +72,8 @@ typedef struct ExtensibleNodeMethods void (*nodeRead) (struct ExtensibleNode *node); } ExtensibleNodeMethods; -extern void RegisterExtensibleNodeMethods(const ExtensibleNodeMethods *method); -extern const ExtensibleNodeMethods *GetExtensibleNodeMethods(const char *name, +extern void RegisterExtensibleNodeMethods(const ExtensibleNodeMethods *methods); +extern const ExtensibleNodeMethods *GetExtensibleNodeMethods(const char *extnodename, bool missing_ok); /* diff --git a/parser/include/nodes/lockoptions.h b/parser/include/nodes/lockoptions.h index 399f7296..bc5e9833 100644 --- a/parser/include/nodes/lockoptions.h +++ b/parser/include/nodes/lockoptions.h @@ -4,7 +4,7 @@ * Common header for some locking-related declarations. * * - * Copyright (c) 2014-2022, PostgreSQL Global Development Group + * Copyright (c) 2014-2023, PostgreSQL Global Development Group * * src/include/nodes/lockoptions.h * diff --git a/parser/include/nodes/makefuncs.h b/parser/include/nodes/makefuncs.h index 50de4c62..31807030 100644 --- a/parser/include/nodes/makefuncs.h +++ b/parser/include/nodes/makefuncs.h @@ -4,7 +4,7 @@ * prototypes for the creator functions of various nodes * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/makefuncs.h @@ -96,7 +96,9 @@ extern List *make_ands_implicit(Expr *clause); extern IndexInfo *makeIndexInfo(int numattrs, int numkeyattrs, Oid amoid, List *expressions, List *predicates, - bool unique, bool nulls_not_distinct, bool isready, bool concurrent); + bool unique, bool nulls_not_distinct, + bool isready, bool concurrent, + bool summarizing); extern DefElem *makeDefElem(char *name, Node *arg, int location); extern DefElem *makeDefElemExtended(char *nameSpace, char *name, Node *arg, @@ -106,4 +108,14 @@ extern GroupingSet *makeGroupingSet(GroupingSetKind kind, List *content, int loc extern VacuumRelation *makeVacuumRelation(RangeVar *relation, Oid oid, List *va_cols); +extern JsonFormat *makeJsonFormat(JsonFormatType type, JsonEncoding encoding, + int location); +extern JsonValueExpr *makeJsonValueExpr(Expr *raw_expr, Expr *formatted_expr, + JsonFormat *format); +extern Node *makeJsonKeyValue(Node *key, Node *value); +extern Node *makeJsonIsPredicate(Node *expr, JsonFormat *format, + JsonValueType item_type, bool unique_keys, + int location); +extern JsonEncoding makeJsonEncoding(char *name); + #endif /* MAKEFUNC_H */ diff --git a/parser/include/nodes/memnodes.h b/parser/include/nodes/memnodes.h index bbbe151e..ff6453bb 100644 --- a/parser/include/nodes/memnodes.h +++ b/parser/include/nodes/memnodes.h @@ -4,7 +4,7 @@ * POSTGRES memory context node definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/memnodes.h @@ -59,11 +59,12 @@ typedef struct MemoryContextMethods { void *(*alloc) (MemoryContext context, Size size); /* call this free_p in case someone #define's free() */ - void (*free_p) (MemoryContext context, void *pointer); - void *(*realloc) (MemoryContext context, void *pointer, Size size); + void (*free_p) (void *pointer); + void *(*realloc) (void *pointer, Size size); void (*reset) (MemoryContext context); void (*delete_context) (MemoryContext context); - Size (*get_chunk_space) (MemoryContext context, void *pointer); + MemoryContext (*get_chunk_context) (void *pointer); + Size (*get_chunk_space) (void *pointer); bool (*is_empty) (MemoryContext context); void (*stats) (MemoryContext context, MemoryStatsPrintFunc printfunc, void *passthru, @@ -77,6 +78,8 @@ typedef struct MemoryContextMethods typedef struct MemoryContextData { + pg_node_attr(abstract) /* there are no nodes of this type */ + NodeTag type; /* identifies exact kind of context */ /* these two fields are placed here to minimize alignment wastage: */ bool isReset; /* T = no space alloced since last reset */ diff --git a/parser/include/nodes/miscnodes.h b/parser/include/nodes/miscnodes.h new file mode 100644 index 00000000..79cc0db4 --- /dev/null +++ b/parser/include/nodes/miscnodes.h @@ -0,0 +1,56 @@ +/*------------------------------------------------------------------------- + * + * miscnodes.h + * Definitions for hard-to-classify node types. + * + * Node types declared here are not part of parse trees, plan trees, + * or execution state trees. We only assign them NodeTag values because + * IsA() tests provide a convenient way to disambiguate what kind of + * structure is being passed through assorted APIs, such as function + * "context" pointers. + * + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/nodes/miscnodes.h + * + *------------------------------------------------------------------------- + */ +#ifndef MISCNODES_H +#define MISCNODES_H + +#include "nodes/nodes.h" + +/* + * ErrorSaveContext - + * function call context node for handling of "soft" errors + * + * A caller wishing to trap soft errors must initialize a struct like this + * with all fields zero/NULL except for the NodeTag. Optionally, set + * details_wanted = true if more than the bare knowledge that a soft error + * occurred is required. The struct is then passed to a SQL-callable function + * via the FunctionCallInfo.context field; or below the level of SQL calls, + * it could be passed to a subroutine directly. + * + * After calling code that might report an error this way, check + * error_occurred to see if an error happened. If so, and if details_wanted + * is true, error_data has been filled with error details (stored in the + * callee's memory context!). FreeErrorData() can be called to release + * error_data, although that step is typically not necessary if the called + * code was run in a short-lived context. + */ +typedef struct ErrorSaveContext +{ + NodeTag type; + bool error_occurred; /* set to true if we detect a soft error */ + bool details_wanted; /* does caller want more info than that? */ + ErrorData *error_data; /* details of error, if so */ +} ErrorSaveContext; + +/* Often-useful macro for checking if a soft error was reported */ +#define SOFT_ERROR_OCCURRED(escontext) \ + ((escontext) != NULL && IsA(escontext, ErrorSaveContext) && \ + ((ErrorSaveContext *) (escontext))->error_occurred) + +#endif /* MISCNODES_H */ diff --git a/parser/include/nodes/nodeFuncs.h b/parser/include/nodes/nodeFuncs.h index 93c60bde..20921b45 100644 --- a/parser/include/nodes/nodeFuncs.h +++ b/parser/include/nodes/nodeFuncs.h @@ -3,7 +3,7 @@ * nodeFuncs.h * Various general-purpose manipulations of Node trees * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/nodeFuncs.h @@ -15,6 +15,8 @@ #include "nodes/parsenodes.h" +struct PlanState; /* avoid including execnodes.h too */ + /* flags bits for query_tree_walker and query_tree_mutator */ #define QTW_IGNORE_RT_SUBQUERIES 0x01 /* subqueries in rtable */ @@ -27,11 +29,19 @@ #define QTW_EXAMINE_RTES_AFTER 0x20 /* examine RTE nodes after their * contents */ #define QTW_DONT_COPY_QUERY 0x40 /* do not copy top Query */ -#define QTW_EXAMINE_SORTGROUP 0x80 /* include SortGroupNode lists */ +#define QTW_EXAMINE_SORTGROUP 0x80 /* include SortGroupClause lists */ /* callback function for check_functions_in_node */ typedef bool (*check_function_callback) (Oid func_id, void *context); +/* callback functions for tree walkers */ +typedef bool (*tree_walker_callback) (Node *node, void *context); +typedef bool (*planstate_tree_walker_callback) (struct PlanState *planstate, + void *context); + +/* callback functions for tree mutators */ +typedef Node *(*tree_mutator_callback) (Node *node, void *context); + extern Oid exprType(const Node *expr); extern int32 exprTypmod(const Node *expr); @@ -129,34 +139,84 @@ get_notclausearg(const void *notclause) extern bool check_functions_in_node(Node *node, check_function_callback checker, void *context); -extern bool expression_tree_walker(Node *node, bool (*walker) (), - void *context); -extern Node *expression_tree_mutator(Node *node, Node *(*mutator) (), - void *context); - -extern bool query_tree_walker(Query *query, bool (*walker) (), - void *context, int flags); -extern Query *query_tree_mutator(Query *query, Node *(*mutator) (), - void *context, int flags); - -extern bool range_table_walker(List *rtable, bool (*walker) (), - void *context, int flags); -extern List *range_table_mutator(List *rtable, Node *(*mutator) (), - void *context, int flags); - -extern bool range_table_entry_walker(RangeTblEntry *rte, bool (*walker) (), - void *context, int flags); - -extern bool query_or_expression_tree_walker(Node *node, bool (*walker) (), - void *context, int flags); -extern Node *query_or_expression_tree_mutator(Node *node, Node *(*mutator) (), - void *context, int flags); +/* + * The following functions are usually passed walker or mutator callbacks + * that are declared like "bool walker(Node *node, my_struct *context)" + * rather than "bool walker(Node *node, void *context)" as a strict reading + * of the C standard would require. Changing the callbacks' declarations + * to "void *" would create serious hazards of passing them the wrong context + * struct type, so we respectfully decline to support the standard's position + * that a pointer to struct is incompatible with "void *". Instead, silence + * related compiler warnings by inserting casts into these macro wrappers. + */ -extern bool raw_expression_tree_walker(Node *node, bool (*walker) (), +#define expression_tree_walker(n, w, c) \ + expression_tree_walker_impl(n, (tree_walker_callback) (w), c) +#define expression_tree_mutator(n, m, c) \ + expression_tree_mutator_impl(n, (tree_mutator_callback) (m), c) + +#define query_tree_walker(q, w, c, f) \ + query_tree_walker_impl(q, (tree_walker_callback) (w), c, f) +#define query_tree_mutator(q, m, c, f) \ + query_tree_mutator_impl(q, (tree_mutator_callback) (m), c, f) + +#define range_table_walker(rt, w, c, f) \ + range_table_walker_impl(rt, (tree_walker_callback) (w), c, f) +#define range_table_mutator(rt, m, c, f) \ + range_table_mutator_impl(rt, (tree_mutator_callback) (m), c, f) + +#define range_table_entry_walker(r, w, c, f) \ + range_table_entry_walker_impl(r, (tree_walker_callback) (w), c, f) + +#define query_or_expression_tree_walker(n, w, c, f) \ + query_or_expression_tree_walker_impl(n, (tree_walker_callback) (w), c, f) +#define query_or_expression_tree_mutator(n, m, c, f) \ + query_or_expression_tree_mutator_impl(n, (tree_mutator_callback) (m), c, f) + +#define raw_expression_tree_walker(n, w, c) \ + raw_expression_tree_walker_impl(n, (tree_walker_callback) (w), c) + +#define planstate_tree_walker(ps, w, c) \ + planstate_tree_walker_impl(ps, (planstate_tree_walker_callback) (w), c) + +extern bool expression_tree_walker_impl(Node *node, + tree_walker_callback walker, + void *context); +extern Node *expression_tree_mutator_impl(Node *node, + tree_mutator_callback mutator, + void *context); + +extern bool query_tree_walker_impl(Query *query, + tree_walker_callback walker, + void *context, int flags); +extern Query *query_tree_mutator_impl(Query *query, + tree_mutator_callback mutator, + void *context, int flags); + +extern bool range_table_walker_impl(List *rtable, + tree_walker_callback walker, + void *context, int flags); +extern List *range_table_mutator_impl(List *rtable, + tree_mutator_callback mutator, + void *context, int flags); + +extern bool range_table_entry_walker_impl(RangeTblEntry *rte, + tree_walker_callback walker, + void *context, int flags); + +extern bool query_or_expression_tree_walker_impl(Node *node, + tree_walker_callback walker, + void *context, int flags); +extern Node *query_or_expression_tree_mutator_impl(Node *node, + tree_mutator_callback mutator, + void *context, int flags); + +extern bool raw_expression_tree_walker_impl(Node *node, + tree_walker_callback walker, + void *context); + +extern bool planstate_tree_walker_impl(struct PlanState *planstate, + planstate_tree_walker_callback walker, void *context); -struct PlanState; -extern bool planstate_tree_walker(struct PlanState *planstate, bool (*walker) (), - void *context); - #endif /* NODEFUNCS_H */ diff --git a/parser/include/nodes/nodes.h b/parser/include/nodes/nodes.h index 8f5c0ec1..13ea9cae 100644 --- a/parser/include/nodes/nodes.h +++ b/parser/include/nodes/nodes.h @@ -4,7 +4,7 @@ * Definitions for tagged nodes. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/nodes.h @@ -27,515 +27,98 @@ typedef enum NodeTag { T_Invalid = 0, - /* - * TAGS FOR EXECUTOR NODES (execnodes.h) - */ - T_IndexInfo, - T_ExprContext, - T_ProjectionInfo, - T_JunkFilter, - T_OnConflictSetState, - T_MergeActionState, - T_ResultRelInfo, - T_EState, - T_TupleTableSlot, - - /* - * TAGS FOR PLAN NODES (plannodes.h) - */ - T_Plan, - T_Result, - T_ProjectSet, - T_ModifyTable, - T_Append, - T_MergeAppend, - T_RecursiveUnion, - T_BitmapAnd, - T_BitmapOr, - T_Scan, - T_SeqScan, - T_SampleScan, - T_IndexScan, - T_IndexOnlyScan, - T_BitmapIndexScan, - T_BitmapHeapScan, - T_TidScan, - T_TidRangeScan, - T_SubqueryScan, - T_FunctionScan, - T_ValuesScan, - T_TableFuncScan, - T_CteScan, - T_NamedTuplestoreScan, - T_WorkTableScan, - T_ForeignScan, - T_CustomScan, - T_Join, - T_NestLoop, - T_MergeJoin, - T_HashJoin, - T_Material, - T_Memoize, - T_Sort, - T_IncrementalSort, - T_Group, - T_Agg, - T_WindowAgg, - T_Unique, - T_Gather, - T_GatherMerge, - T_Hash, - T_SetOp, - T_LockRows, - T_Limit, - /* these aren't subclasses of Plan: */ - T_NestLoopParam, - T_PlanRowMark, - T_PartitionPruneInfo, - T_PartitionedRelPruneInfo, - T_PartitionPruneStepOp, - T_PartitionPruneStepCombine, - T_PlanInvalItem, - - /* - * TAGS FOR PLAN STATE NODES (execnodes.h) - * - * These should correspond one-to-one with Plan node types. - */ - T_PlanState, - T_ResultState, - T_ProjectSetState, - T_ModifyTableState, - T_AppendState, - T_MergeAppendState, - T_RecursiveUnionState, - T_BitmapAndState, - T_BitmapOrState, - T_ScanState, - T_SeqScanState, - T_SampleScanState, - T_IndexScanState, - T_IndexOnlyScanState, - T_BitmapIndexScanState, - T_BitmapHeapScanState, - T_TidScanState, - T_TidRangeScanState, - T_SubqueryScanState, - T_FunctionScanState, - T_TableFuncScanState, - T_ValuesScanState, - T_CteScanState, - T_NamedTuplestoreScanState, - T_WorkTableScanState, - T_ForeignScanState, - T_CustomScanState, - T_JoinState, - T_NestLoopState, - T_MergeJoinState, - T_HashJoinState, - T_MaterialState, - T_MemoizeState, - T_SortState, - T_IncrementalSortState, - T_GroupState, - T_AggState, - T_WindowAggState, - T_UniqueState, - T_GatherState, - T_GatherMergeState, - T_HashState, - T_SetOpState, - T_LockRowsState, - T_LimitState, - - /* - * TAGS FOR PRIMITIVE NODES (primnodes.h) - */ - T_Alias, - T_RangeVar, - T_TableFunc, - T_Var, - T_Const, - T_Param, - T_Aggref, - T_GroupingFunc, - T_WindowFunc, - T_SubscriptingRef, - T_FuncExpr, - T_NamedArgExpr, - T_OpExpr, - T_DistinctExpr, - T_NullIfExpr, - T_ScalarArrayOpExpr, - T_BoolExpr, - T_SubLink, - T_SubPlan, - T_AlternativeSubPlan, - T_FieldSelect, - T_FieldStore, - T_RelabelType, - T_CoerceViaIO, - T_ArrayCoerceExpr, - T_ConvertRowtypeExpr, - T_CollateExpr, - T_CaseExpr, - T_CaseWhen, - T_CaseTestExpr, - T_ArrayExpr, - T_RowExpr, - T_RowCompareExpr, - T_CoalesceExpr, - T_MinMaxExpr, - T_SQLValueFunction, - T_XmlExpr, - T_NullTest, - T_BooleanTest, - T_CoerceToDomain, - T_CoerceToDomainValue, - T_SetToDefault, - T_CurrentOfExpr, - T_NextValueExpr, - T_InferenceElem, - T_TargetEntry, - T_RangeTblRef, - T_JoinExpr, - T_FromExpr, - T_OnConflictExpr, - T_IntoClause, - - /* - * TAGS FOR EXPRESSION STATE NODES (execnodes.h) - * - * ExprState represents the evaluation state for a whole expression tree. - * Most Expr-based plan nodes do not have a corresponding expression state - * node, they're fully handled within execExpr* - but sometimes the state - * needs to be shared with other parts of the executor, as for example - * with SubPlanState, which nodeSubplan.c has to modify. - */ - T_ExprState, - T_WindowFuncExprState, - T_SetExprState, - T_SubPlanState, - T_DomainConstraintState, - - /* - * TAGS FOR PLANNER NODES (pathnodes.h) - */ - T_PlannerInfo, - T_PlannerGlobal, - T_RelOptInfo, - T_IndexOptInfo, - T_ForeignKeyOptInfo, - T_ParamPathInfo, - T_Path, - T_IndexPath, - T_BitmapHeapPath, - T_BitmapAndPath, - T_BitmapOrPath, - T_TidPath, - T_TidRangePath, - T_SubqueryScanPath, - T_ForeignPath, - T_CustomPath, - T_NestPath, - T_MergePath, - T_HashPath, - T_AppendPath, - T_MergeAppendPath, - T_GroupResultPath, - T_MaterialPath, - T_MemoizePath, - T_UniquePath, - T_GatherPath, - T_GatherMergePath, - T_ProjectionPath, - T_ProjectSetPath, - T_SortPath, - T_IncrementalSortPath, - T_GroupPath, - T_UpperUniquePath, - T_AggPath, - T_GroupingSetsPath, - T_MinMaxAggPath, - T_WindowAggPath, - T_SetOpPath, - T_RecursiveUnionPath, - T_LockRowsPath, - T_ModifyTablePath, - T_LimitPath, - /* these aren't subclasses of Path: */ - T_EquivalenceClass, - T_EquivalenceMember, - T_PathKey, - T_PathKeyInfo, - T_PathTarget, - T_RestrictInfo, - T_IndexClause, - T_PlaceHolderVar, - T_SpecialJoinInfo, - T_AppendRelInfo, - T_RowIdentityVarInfo, - T_PlaceHolderInfo, - T_MinMaxAggInfo, - T_PlannerParamItem, - T_RollupData, - T_GroupingSetData, - T_StatisticExtInfo, - T_MergeAction, - - /* - * TAGS FOR MEMORY NODES (memnodes.h) - */ - T_AllocSetContext, - T_SlabContext, - T_GenerationContext, - - /* - * TAGS FOR VALUE NODES (value.h) - */ - T_Integer, - T_Float, - T_Boolean, - T_String, - T_BitString, - - /* - * TAGS FOR LIST NODES (pg_list.h) - */ - T_List, - T_IntList, - T_OidList, - - /* - * TAGS FOR EXTENSIBLE NODES (extensible.h) - */ - T_ExtensibleNode, - - /* - * TAGS FOR STATEMENT NODES (mostly in parsenodes.h) - */ - T_RawStmt, - T_Query, - T_PlannedStmt, - T_InsertStmt, - T_DeleteStmt, - T_UpdateStmt, - T_MergeStmt, - T_SelectStmt, - T_ReturnStmt, - T_PLAssignStmt, - T_AlterTableStmt, - T_AlterTableCmd, - T_AlterDomainStmt, - T_SetOperationStmt, - T_GrantStmt, - T_GrantRoleStmt, - T_AlterDefaultPrivilegesStmt, - T_ClosePortalStmt, - T_ClusterStmt, - T_CopyStmt, - T_CreateStmt, - T_DefineStmt, - T_DropStmt, - T_TruncateStmt, - T_CommentStmt, - T_FetchStmt, - T_IndexStmt, - T_CreateFunctionStmt, - T_AlterFunctionStmt, - T_DoStmt, - T_RenameStmt, - T_RuleStmt, - T_NotifyStmt, - T_ListenStmt, - T_UnlistenStmt, - T_TransactionStmt, - T_ViewStmt, - T_LoadStmt, - T_CreateDomainStmt, - T_CreatedbStmt, - T_DropdbStmt, - T_VacuumStmt, - T_ExplainStmt, - T_CreateTableAsStmt, - T_CreateSeqStmt, - T_AlterSeqStmt, - T_VariableSetStmt, - T_VariableShowStmt, - T_DiscardStmt, - T_CreateTrigStmt, - T_CreatePLangStmt, - T_CreateRoleStmt, - T_AlterRoleStmt, - T_DropRoleStmt, - T_LockStmt, - T_ConstraintsSetStmt, - T_ReindexStmt, - T_CheckPointStmt, - T_CreateSchemaStmt, - T_AlterDatabaseStmt, - T_AlterDatabaseRefreshCollStmt, - T_AlterDatabaseSetStmt, - T_AlterRoleSetStmt, - T_CreateConversionStmt, - T_CreateCastStmt, - T_CreateOpClassStmt, - T_CreateOpFamilyStmt, - T_AlterOpFamilyStmt, - T_PrepareStmt, - T_ExecuteStmt, - T_DeallocateStmt, - T_DeclareCursorStmt, - T_CreateTableSpaceStmt, - T_DropTableSpaceStmt, - T_AlterObjectDependsStmt, - T_AlterObjectSchemaStmt, - T_AlterOwnerStmt, - T_AlterOperatorStmt, - T_AlterTypeStmt, - T_DropOwnedStmt, - T_ReassignOwnedStmt, - T_CompositeTypeStmt, - T_CreateEnumStmt, - T_CreateRangeStmt, - T_AlterEnumStmt, - T_AlterTSDictionaryStmt, - T_AlterTSConfigurationStmt, - T_CreateFdwStmt, - T_AlterFdwStmt, - T_CreateForeignServerStmt, - T_AlterForeignServerStmt, - T_CreateUserMappingStmt, - T_AlterUserMappingStmt, - T_DropUserMappingStmt, - T_AlterTableSpaceOptionsStmt, - T_AlterTableMoveAllStmt, - T_SecLabelStmt, - T_CreateForeignTableStmt, - T_ImportForeignSchemaStmt, - T_CreateExtensionStmt, - T_AlterExtensionStmt, - T_AlterExtensionContentsStmt, - T_CreateEventTrigStmt, - T_AlterEventTrigStmt, - T_RefreshMatViewStmt, - T_ReplicaIdentityStmt, - T_AlterSystemStmt, - T_CreatePolicyStmt, - T_AlterPolicyStmt, - T_CreateTransformStmt, - T_CreateAmStmt, - T_CreatePublicationStmt, - T_AlterPublicationStmt, - T_CreateSubscriptionStmt, - T_AlterSubscriptionStmt, - T_DropSubscriptionStmt, - T_CreateStatsStmt, - T_AlterCollationStmt, - T_CallStmt, - T_AlterStatsStmt, - - /* - * TAGS FOR PARSE TREE NODES (parsenodes.h) - */ - T_A_Expr, - T_ColumnRef, - T_ParamRef, - T_A_Const, - T_FuncCall, - T_A_Star, - T_A_Indices, - T_A_Indirection, - T_A_ArrayExpr, - T_ResTarget, - T_MultiAssignRef, - T_TypeCast, - T_CollateClause, - T_SortBy, - T_WindowDef, - T_RangeSubselect, - T_RangeFunction, - T_RangeTableSample, - T_RangeTableFunc, - T_RangeTableFuncCol, - T_TypeName, - T_ColumnDef, - T_IndexElem, - T_StatsElem, - T_Constraint, - T_DefElem, - T_RangeTblEntry, - T_RangeTblFunction, - T_TableSampleClause, - T_WithCheckOption, - T_SortGroupClause, - T_GroupingSet, - T_WindowClause, - T_ObjectWithArgs, - T_AccessPriv, - T_CreateOpClassItem, - T_TableLikeClause, - T_FunctionParameter, - T_LockingClause, - T_RowMarkClause, - T_XmlSerialize, - T_WithClause, - T_InferClause, - T_OnConflictClause, - T_CTESearchClause, - T_CTECycleClause, - T_CommonTableExpr, - T_MergeWhenClause, - T_RoleSpec, - T_TriggerTransition, - T_PartitionElem, - T_PartitionSpec, - T_PartitionBoundSpec, - T_PartitionRangeDatum, - T_PartitionCmd, - T_VacuumRelation, - T_PublicationObjSpec, - T_PublicationTable, - - /* - * TAGS FOR REPLICATION GRAMMAR PARSE NODES (replnodes.h) - */ - T_IdentifySystemCmd, - T_BaseBackupCmd, - T_CreateReplicationSlotCmd, - T_DropReplicationSlotCmd, - T_ReadReplicationSlotCmd, - T_StartReplicationCmd, - T_TimeLineHistoryCmd, - - /* - * TAGS FOR RANDOM OTHER STUFF - * - * These are objects that aren't part of parse/plan/execute node tree - * structures, but we give them NodeTags anyway for identification - * purposes (usually because they are involved in APIs where we want to - * pass multiple object types through the same pointer). - */ - T_TriggerData, /* in commands/trigger.h */ - T_EventTriggerData, /* in commands/event_trigger.h */ - T_ReturnSetInfo, /* in nodes/execnodes.h */ - T_WindowObjectData, /* private in nodeWindowAgg.c */ - T_TIDBitmap, /* in nodes/tidbitmap.h */ - T_InlineCodeBlock, /* in nodes/parsenodes.h */ - T_FdwRoutine, /* in foreign/fdwapi.h */ - T_IndexAmRoutine, /* in access/amapi.h */ - T_TableAmRoutine, /* in access/tableam.h */ - T_TsmRoutine, /* in access/tsmapi.h */ - T_ForeignKeyCacheInfo, /* in utils/rel.h */ - T_CallContext, /* in nodes/parsenodes.h */ - T_SupportRequestSimplify, /* in nodes/supportnodes.h */ - T_SupportRequestSelectivity, /* in nodes/supportnodes.h */ - T_SupportRequestCost, /* in nodes/supportnodes.h */ - T_SupportRequestRows, /* in nodes/supportnodes.h */ - T_SupportRequestIndexCondition, /* in nodes/supportnodes.h */ - T_SupportRequestWFuncMonotonic /* in nodes/supportnodes.h */ +#include "nodes/nodetags.h" } NodeTag; +/* + * pg_node_attr() - Used in node definitions to set extra information for + * gen_node_support.pl + * + * Attributes can be attached to a node as a whole (place the attribute + * specification on the first line after the struct's opening brace) + * or to a specific field (place it at the end of that field's line). The + * argument is a comma-separated list of attributes. Unrecognized attributes + * cause an error. + * + * Valid node attributes: + * + * - abstract: Abstract types are types that cannot be instantiated but that + * can be supertypes of other types. We track their fields, so that + * subtypes can use them, but we don't emit a node tag, so you can't + * instantiate them. + * + * - custom_copy_equal: Has custom implementations in copyfuncs.c and + * equalfuncs.c. + * + * - custom_read_write: Has custom implementations in outfuncs.c and + * readfuncs.c. + * + * - custom_query_jumble: Has custom implementation in queryjumblefuncs.c. + * + * - no_copy: Does not support copyObject() at all. + * + * - no_equal: Does not support equal() at all. + * + * - no_copy_equal: Shorthand for both no_copy and no_equal. + * + * - no_query_jumble: Does not support JumbleQuery() at all. + * + * - no_read: Does not support nodeRead() at all. + * + * - nodetag_only: Does not support copyObject(), equal(), jumbleQuery() + * outNode() or nodeRead(). + * + * - special_read_write: Has special treatment in outNode() and nodeRead(). + * + * - nodetag_number(VALUE): assign the specified nodetag number instead of + * an auto-generated number. Typically this would only be used in stable + * branches, to give a newly-added node type a number without breaking ABI + * by changing the numbers of existing node types. + * + * Node types can be supertypes of other types whether or not they are marked + * abstract: if a node struct appears as the first field of another struct + * type, then it is the supertype of that type. The no_copy, no_equal, + * no_query_jumble and no_read node attributes are automatically inherited + * from the supertype. (Notice that nodetag_only does not inherit, so it's + * not quite equivalent to a combination of other attributes.) + * + * Valid node field attributes: + * + * - array_size(OTHERFIELD): This field is a dynamically allocated array with + * size indicated by the mentioned other field. The other field is either a + * scalar or a list, in which case the length of the list is used. + * + * - copy_as(VALUE): In copyObject(), replace the field's value with VALUE. + * + * - copy_as_scalar: In copyObject(), copy the field as a scalar value + * (e.g. a pointer) even if it is a node-type pointer. + * + * - equal_as_scalar: In equal(), compare the field as a scalar value + * even if it is a node-type pointer. + * + * - equal_ignore: Ignore the field for equality. + * + * - equal_ignore_if_zero: Ignore the field for equality if it is zero. + * (Otherwise, compare normally.) + * + * - query_jumble_ignore: Ignore the field for the query jumbling. Note + * that typmod and collation information are usually irrelevant for the + * query jumbling. + * + * - query_jumble_location: Mark the field as a location to track. This is + * only allowed for integer fields that include "location" in their name. + * + * - read_as(VALUE): In nodeRead(), replace the field's value with VALUE. + * + * - read_write_ignore: Ignore the field for read/write. This is only allowed + * if the node type is marked no_read or read_as() is also specified. + * + * - write_only_relids, write_only_nondefault_pathtarget, write_only_req_outer: + * Special handling for Path struct; see there. + * + */ +#define pg_node_attr(...) + /* * The first field of a node of any type is guaranteed to be the NodeTag. * Hence the type of any node can be gotten by casting it to Node. Declaring @@ -652,7 +235,7 @@ extern int16 *readAttrNumberCols(int numCols); /* * nodes/copyfuncs.c */ -extern void *copyObjectImpl(const void *obj); +extern void *copyObjectImpl(const void *from); /* cast result back to argument type, if supported by compiler */ #ifdef HAVE_TYPEOF @@ -734,6 +317,7 @@ typedef enum JoinType */ JOIN_SEMI, /* 1 copy of each LHS row that has match(es) */ JOIN_ANTI, /* 1 copy of each LHS row that has no match */ + JOIN_RIGHT_ANTI, /* 1 copy of each RHS row that has no match */ /* * These codes are used internally in the planner, but are not supported @@ -766,7 +350,8 @@ typedef enum JoinType ((1 << JOIN_LEFT) | \ (1 << JOIN_FULL) | \ (1 << JOIN_RIGHT) | \ - (1 << JOIN_ANTI))) != 0) + (1 << JOIN_ANTI) | \ + (1 << JOIN_RIGHT_ANTI))) != 0) /* * AggStrategy - diff --git a/parser/include/nodes/nodetags.h b/parser/include/nodes/nodetags.h new file mode 100644 index 00000000..f75ac7a0 --- /dev/null +++ b/parser/include/nodes/nodetags.h @@ -0,0 +1,471 @@ +/*------------------------------------------------------------------------- + * + * nodetags.h + * Generated node infrastructure code + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/nodes/gen_node_support.pl + * + *------------------------------------------------------------------------- + */ + T_List = 1, + T_Alias = 2, + T_RangeVar = 3, + T_TableFunc = 4, + T_IntoClause = 5, + T_Var = 6, + T_Const = 7, + T_Param = 8, + T_Aggref = 9, + T_GroupingFunc = 10, + T_WindowFunc = 11, + T_SubscriptingRef = 12, + T_FuncExpr = 13, + T_NamedArgExpr = 14, + T_OpExpr = 15, + T_DistinctExpr = 16, + T_NullIfExpr = 17, + T_ScalarArrayOpExpr = 18, + T_BoolExpr = 19, + T_SubLink = 20, + T_SubPlan = 21, + T_AlternativeSubPlan = 22, + T_FieldSelect = 23, + T_FieldStore = 24, + T_RelabelType = 25, + T_CoerceViaIO = 26, + T_ArrayCoerceExpr = 27, + T_ConvertRowtypeExpr = 28, + T_CollateExpr = 29, + T_CaseExpr = 30, + T_CaseWhen = 31, + T_CaseTestExpr = 32, + T_ArrayExpr = 33, + T_RowExpr = 34, + T_RowCompareExpr = 35, + T_CoalesceExpr = 36, + T_MinMaxExpr = 37, + T_SQLValueFunction = 38, + T_XmlExpr = 39, + T_JsonFormat = 40, + T_JsonReturning = 41, + T_JsonValueExpr = 42, + T_JsonConstructorExpr = 43, + T_JsonIsPredicate = 44, + T_NullTest = 45, + T_BooleanTest = 46, + T_CoerceToDomain = 47, + T_CoerceToDomainValue = 48, + T_SetToDefault = 49, + T_CurrentOfExpr = 50, + T_NextValueExpr = 51, + T_InferenceElem = 52, + T_TargetEntry = 53, + T_RangeTblRef = 54, + T_JoinExpr = 55, + T_FromExpr = 56, + T_OnConflictExpr = 57, + T_Query = 58, + T_TypeName = 59, + T_ColumnRef = 60, + T_ParamRef = 61, + T_A_Expr = 62, + T_A_Const = 63, + T_TypeCast = 64, + T_CollateClause = 65, + T_RoleSpec = 66, + T_FuncCall = 67, + T_A_Star = 68, + T_A_Indices = 69, + T_A_Indirection = 70, + T_A_ArrayExpr = 71, + T_ResTarget = 72, + T_MultiAssignRef = 73, + T_SortBy = 74, + T_WindowDef = 75, + T_RangeSubselect = 76, + T_RangeFunction = 77, + T_RangeTableFunc = 78, + T_RangeTableFuncCol = 79, + T_RangeTableSample = 80, + T_ColumnDef = 81, + T_TableLikeClause = 82, + T_IndexElem = 83, + T_DefElem = 84, + T_LockingClause = 85, + T_XmlSerialize = 86, + T_PartitionElem = 87, + T_PartitionSpec = 88, + T_PartitionBoundSpec = 89, + T_PartitionRangeDatum = 90, + T_PartitionCmd = 91, + T_RangeTblEntry = 92, + T_RTEPermissionInfo = 93, + T_RangeTblFunction = 94, + T_TableSampleClause = 95, + T_WithCheckOption = 96, + T_SortGroupClause = 97, + T_GroupingSet = 98, + T_WindowClause = 99, + T_RowMarkClause = 100, + T_WithClause = 101, + T_InferClause = 102, + T_OnConflictClause = 103, + T_CTESearchClause = 104, + T_CTECycleClause = 105, + T_CommonTableExpr = 106, + T_MergeWhenClause = 107, + T_MergeAction = 108, + T_TriggerTransition = 109, + T_JsonOutput = 110, + T_JsonKeyValue = 111, + T_JsonObjectConstructor = 112, + T_JsonArrayConstructor = 113, + T_JsonArrayQueryConstructor = 114, + T_JsonAggConstructor = 115, + T_JsonObjectAgg = 116, + T_JsonArrayAgg = 117, + T_RawStmt = 118, + T_InsertStmt = 119, + T_DeleteStmt = 120, + T_UpdateStmt = 121, + T_MergeStmt = 122, + T_SelectStmt = 123, + T_SetOperationStmt = 124, + T_ReturnStmt = 125, + T_PLAssignStmt = 126, + T_CreateSchemaStmt = 127, + T_AlterTableStmt = 128, + T_ReplicaIdentityStmt = 129, + T_AlterTableCmd = 130, + T_AlterCollationStmt = 131, + T_AlterDomainStmt = 132, + T_GrantStmt = 133, + T_ObjectWithArgs = 134, + T_AccessPriv = 135, + T_GrantRoleStmt = 136, + T_AlterDefaultPrivilegesStmt = 137, + T_CopyStmt = 138, + T_VariableSetStmt = 139, + T_VariableShowStmt = 140, + T_CreateStmt = 141, + T_Constraint = 142, + T_CreateTableSpaceStmt = 143, + T_DropTableSpaceStmt = 144, + T_AlterTableSpaceOptionsStmt = 145, + T_AlterTableMoveAllStmt = 146, + T_CreateExtensionStmt = 147, + T_AlterExtensionStmt = 148, + T_AlterExtensionContentsStmt = 149, + T_CreateFdwStmt = 150, + T_AlterFdwStmt = 151, + T_CreateForeignServerStmt = 152, + T_AlterForeignServerStmt = 153, + T_CreateForeignTableStmt = 154, + T_CreateUserMappingStmt = 155, + T_AlterUserMappingStmt = 156, + T_DropUserMappingStmt = 157, + T_ImportForeignSchemaStmt = 158, + T_CreatePolicyStmt = 159, + T_AlterPolicyStmt = 160, + T_CreateAmStmt = 161, + T_CreateTrigStmt = 162, + T_CreateEventTrigStmt = 163, + T_AlterEventTrigStmt = 164, + T_CreatePLangStmt = 165, + T_CreateRoleStmt = 166, + T_AlterRoleStmt = 167, + T_AlterRoleSetStmt = 168, + T_DropRoleStmt = 169, + T_CreateSeqStmt = 170, + T_AlterSeqStmt = 171, + T_DefineStmt = 172, + T_CreateDomainStmt = 173, + T_CreateOpClassStmt = 174, + T_CreateOpClassItem = 175, + T_CreateOpFamilyStmt = 176, + T_AlterOpFamilyStmt = 177, + T_DropStmt = 178, + T_TruncateStmt = 179, + T_CommentStmt = 180, + T_SecLabelStmt = 181, + T_DeclareCursorStmt = 182, + T_ClosePortalStmt = 183, + T_FetchStmt = 184, + T_IndexStmt = 185, + T_CreateStatsStmt = 186, + T_StatsElem = 187, + T_AlterStatsStmt = 188, + T_CreateFunctionStmt = 189, + T_FunctionParameter = 190, + T_AlterFunctionStmt = 191, + T_DoStmt = 192, + T_InlineCodeBlock = 193, + T_CallStmt = 194, + T_CallContext = 195, + T_RenameStmt = 196, + T_AlterObjectDependsStmt = 197, + T_AlterObjectSchemaStmt = 198, + T_AlterOwnerStmt = 199, + T_AlterOperatorStmt = 200, + T_AlterTypeStmt = 201, + T_RuleStmt = 202, + T_NotifyStmt = 203, + T_ListenStmt = 204, + T_UnlistenStmt = 205, + T_TransactionStmt = 206, + T_CompositeTypeStmt = 207, + T_CreateEnumStmt = 208, + T_CreateRangeStmt = 209, + T_AlterEnumStmt = 210, + T_ViewStmt = 211, + T_LoadStmt = 212, + T_CreatedbStmt = 213, + T_AlterDatabaseStmt = 214, + T_AlterDatabaseRefreshCollStmt = 215, + T_AlterDatabaseSetStmt = 216, + T_DropdbStmt = 217, + T_AlterSystemStmt = 218, + T_ClusterStmt = 219, + T_VacuumStmt = 220, + T_VacuumRelation = 221, + T_ExplainStmt = 222, + T_CreateTableAsStmt = 223, + T_RefreshMatViewStmt = 224, + T_CheckPointStmt = 225, + T_DiscardStmt = 226, + T_LockStmt = 227, + T_ConstraintsSetStmt = 228, + T_ReindexStmt = 229, + T_CreateConversionStmt = 230, + T_CreateCastStmt = 231, + T_CreateTransformStmt = 232, + T_PrepareStmt = 233, + T_ExecuteStmt = 234, + T_DeallocateStmt = 235, + T_DropOwnedStmt = 236, + T_ReassignOwnedStmt = 237, + T_AlterTSDictionaryStmt = 238, + T_AlterTSConfigurationStmt = 239, + T_PublicationTable = 240, + T_PublicationObjSpec = 241, + T_CreatePublicationStmt = 242, + T_AlterPublicationStmt = 243, + T_CreateSubscriptionStmt = 244, + T_AlterSubscriptionStmt = 245, + T_DropSubscriptionStmt = 246, + T_PlannerGlobal = 247, + T_PlannerInfo = 248, + T_RelOptInfo = 249, + T_IndexOptInfo = 250, + T_ForeignKeyOptInfo = 251, + T_StatisticExtInfo = 252, + T_JoinDomain = 253, + T_EquivalenceClass = 254, + T_EquivalenceMember = 255, + T_PathKey = 256, + T_PathTarget = 257, + T_ParamPathInfo = 258, + T_Path = 259, + T_IndexPath = 260, + T_IndexClause = 261, + T_BitmapHeapPath = 262, + T_BitmapAndPath = 263, + T_BitmapOrPath = 264, + T_TidPath = 265, + T_TidRangePath = 266, + T_SubqueryScanPath = 267, + T_ForeignPath = 268, + T_CustomPath = 269, + T_AppendPath = 270, + T_MergeAppendPath = 271, + T_GroupResultPath = 272, + T_MaterialPath = 273, + T_MemoizePath = 274, + T_UniquePath = 275, + T_GatherPath = 276, + T_GatherMergePath = 277, + T_NestPath = 278, + T_MergePath = 279, + T_HashPath = 280, + T_ProjectionPath = 281, + T_ProjectSetPath = 282, + T_SortPath = 283, + T_IncrementalSortPath = 284, + T_GroupPath = 285, + T_UpperUniquePath = 286, + T_AggPath = 287, + T_GroupingSetData = 288, + T_RollupData = 289, + T_GroupingSetsPath = 290, + T_MinMaxAggPath = 291, + T_WindowAggPath = 292, + T_SetOpPath = 293, + T_RecursiveUnionPath = 294, + T_LockRowsPath = 295, + T_ModifyTablePath = 296, + T_LimitPath = 297, + T_RestrictInfo = 298, + T_PlaceHolderVar = 299, + T_SpecialJoinInfo = 300, + T_OuterJoinClauseInfo = 301, + T_AppendRelInfo = 302, + T_RowIdentityVarInfo = 303, + T_PlaceHolderInfo = 304, + T_MinMaxAggInfo = 305, + T_PlannerParamItem = 306, + T_AggInfo = 307, + T_AggTransInfo = 308, + T_PlannedStmt = 309, + T_Result = 310, + T_ProjectSet = 311, + T_ModifyTable = 312, + T_Append = 313, + T_MergeAppend = 314, + T_RecursiveUnion = 315, + T_BitmapAnd = 316, + T_BitmapOr = 317, + T_SeqScan = 318, + T_SampleScan = 319, + T_IndexScan = 320, + T_IndexOnlyScan = 321, + T_BitmapIndexScan = 322, + T_BitmapHeapScan = 323, + T_TidScan = 324, + T_TidRangeScan = 325, + T_SubqueryScan = 326, + T_FunctionScan = 327, + T_ValuesScan = 328, + T_TableFuncScan = 329, + T_CteScan = 330, + T_NamedTuplestoreScan = 331, + T_WorkTableScan = 332, + T_ForeignScan = 333, + T_CustomScan = 334, + T_NestLoop = 335, + T_NestLoopParam = 336, + T_MergeJoin = 337, + T_HashJoin = 338, + T_Material = 339, + T_Memoize = 340, + T_Sort = 341, + T_IncrementalSort = 342, + T_Group = 343, + T_Agg = 344, + T_WindowAgg = 345, + T_Unique = 346, + T_Gather = 347, + T_GatherMerge = 348, + T_Hash = 349, + T_SetOp = 350, + T_LockRows = 351, + T_Limit = 352, + T_PlanRowMark = 353, + T_PartitionPruneInfo = 354, + T_PartitionedRelPruneInfo = 355, + T_PartitionPruneStepOp = 356, + T_PartitionPruneStepCombine = 357, + T_PlanInvalItem = 358, + T_ExprState = 359, + T_IndexInfo = 360, + T_ExprContext = 361, + T_ReturnSetInfo = 362, + T_ProjectionInfo = 363, + T_JunkFilter = 364, + T_OnConflictSetState = 365, + T_MergeActionState = 366, + T_ResultRelInfo = 367, + T_EState = 368, + T_WindowFuncExprState = 369, + T_SetExprState = 370, + T_SubPlanState = 371, + T_DomainConstraintState = 372, + T_ResultState = 373, + T_ProjectSetState = 374, + T_ModifyTableState = 375, + T_AppendState = 376, + T_MergeAppendState = 377, + T_RecursiveUnionState = 378, + T_BitmapAndState = 379, + T_BitmapOrState = 380, + T_ScanState = 381, + T_SeqScanState = 382, + T_SampleScanState = 383, + T_IndexScanState = 384, + T_IndexOnlyScanState = 385, + T_BitmapIndexScanState = 386, + T_BitmapHeapScanState = 387, + T_TidScanState = 388, + T_TidRangeScanState = 389, + T_SubqueryScanState = 390, + T_FunctionScanState = 391, + T_ValuesScanState = 392, + T_TableFuncScanState = 393, + T_CteScanState = 394, + T_NamedTuplestoreScanState = 395, + T_WorkTableScanState = 396, + T_ForeignScanState = 397, + T_CustomScanState = 398, + T_JoinState = 399, + T_NestLoopState = 400, + T_MergeJoinState = 401, + T_HashJoinState = 402, + T_MaterialState = 403, + T_MemoizeState = 404, + T_SortState = 405, + T_IncrementalSortState = 406, + T_GroupState = 407, + T_AggState = 408, + T_WindowAggState = 409, + T_UniqueState = 410, + T_GatherState = 411, + T_GatherMergeState = 412, + T_HashState = 413, + T_SetOpState = 414, + T_LockRowsState = 415, + T_LimitState = 416, + T_IndexAmRoutine = 417, + T_TableAmRoutine = 418, + T_TsmRoutine = 419, + T_EventTriggerData = 420, + T_TriggerData = 421, + T_TupleTableSlot = 422, + T_FdwRoutine = 423, + T_Bitmapset = 424, + T_ExtensibleNode = 425, + T_ErrorSaveContext = 426, + T_IdentifySystemCmd = 427, + T_BaseBackupCmd = 428, + T_CreateReplicationSlotCmd = 429, + T_DropReplicationSlotCmd = 430, + T_StartReplicationCmd = 431, + T_ReadReplicationSlotCmd = 432, + T_TimeLineHistoryCmd = 433, + T_SupportRequestSimplify = 434, + T_SupportRequestSelectivity = 435, + T_SupportRequestCost = 436, + T_SupportRequestRows = 437, + T_SupportRequestIndexCondition = 438, + T_SupportRequestWFuncMonotonic = 439, + T_SupportRequestOptimizeWindowClause = 440, + T_Integer = 441, + T_Float = 442, + T_Boolean = 443, + T_String = 444, + T_BitString = 445, + T_ForeignKeyCacheInfo = 446, + T_IntList = 447, + T_OidList = 448, + T_XidList = 449, + T_AllocSetContext = 450, + T_GenerationContext = 451, + T_SlabContext = 452, + T_TIDBitmap = 453, + T_WindowObjectData = 454, diff --git a/parser/include/nodes/params.h b/parser/include/nodes/params.h index de2dd907..ad23113a 100644 --- a/parser/include/nodes/params.h +++ b/parser/include/nodes/params.h @@ -4,7 +4,7 @@ * Support for finding the values associated with Param nodes. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/params.h @@ -163,8 +163,8 @@ extern ParamListInfo copyParamList(ParamListInfo from); extern Size EstimateParamListSpace(ParamListInfo paramLI); extern void SerializeParamList(ParamListInfo paramLI, char **start_address); extern ParamListInfo RestoreParamList(char **start_address); -extern char *BuildParamLogString(ParamListInfo params, char **paramTextValues, - int valueLen); +extern char *BuildParamLogString(ParamListInfo params, char **knownTextValues, + int maxlen); extern void ParamsErrorCallback(void *arg); #endif /* PARAMS_H */ diff --git a/parser/include/nodes/parsenodes.h b/parser/include/nodes/parsenodes.h index 1e728034..9dca3b65 100644 --- a/parser/include/nodes/parsenodes.h +++ b/parser/include/nodes/parsenodes.h @@ -12,7 +12,7 @@ * identifying statement boundaries in multi-statement source strings. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/parsenodes.h @@ -22,6 +22,7 @@ #ifndef PARSENODES_H #define PARSENODES_H +#include "common/relpath.h" #include "nodes/bitmapset.h" #include "nodes/lockoptions.h" #include "nodes/primnodes.h" @@ -72,12 +73,12 @@ typedef enum SetQuantifier /* * Grantable rights are encoded so that we can OR them together in a bitmask. - * The present representation of AclItem limits us to 16 distinct rights, - * even though AclMode is defined as uint32. See utils/acl.h. + * The present representation of AclItem limits us to 32 distinct rights, + * even though AclMode is defined as uint64. See utils/acl.h. * * Caution: changing these codes breaks stored ACLs, hence forces initdb. */ -typedef uint32 AclMode; /* a bitmask of privilege bits */ +typedef uint64 AclMode; /* a bitmask of privilege bits */ #define ACL_INSERT (1<<0) /* for relations */ #define ACL_SELECT (1<<1) @@ -87,8 +88,7 @@ typedef uint32 AclMode; /* a bitmask of privilege bits */ #define ACL_REFERENCES (1<<5) #define ACL_TRIGGER (1<<6) #define ACL_EXECUTE (1<<7) /* for functions */ -#define ACL_USAGE (1<<8) /* for languages, namespaces, FDWs, and - * servers */ +#define ACL_USAGE (1<<8) /* for various object types */ #define ACL_CREATE (1<<9) /* for namespaces and databases */ #define ACL_CREATE_TEMP (1<<10) /* for databases */ #define ACL_CONNECT (1<<11) /* for databases */ @@ -114,6 +114,11 @@ typedef uint32 AclMode; /* a bitmask of privilege bits */ * * Planning converts a Query tree into a Plan tree headed by a PlannedStmt * node --- the Query structure is not used by the executor. + * + * All the fields ignored for the query jumbling are not semantically + * significant (such as alias names), as is ignored anything that can + * be deduced from child nodes (else we'd just be double-hashing that + * piece of information). */ typedef struct Query { @@ -121,41 +126,69 @@ typedef struct Query CmdType commandType; /* select|insert|update|delete|merge|utility */ - QuerySource querySource; /* where did I come from? */ + /* where did I come from? */ + QuerySource querySource pg_node_attr(query_jumble_ignore); - uint64 queryId; /* query identifier (can be set by plugins) */ + /* + * query identifier (can be set by plugins); ignored for equal, as it + * might not be set; also not stored. This is the result of the query + * jumble, hence ignored. + */ + uint64 queryId pg_node_attr(equal_ignore, query_jumble_ignore, read_write_ignore, read_as(0)); - bool canSetTag; /* do I set the command result tag? */ + /* do I set the command result tag? */ + bool canSetTag pg_node_attr(query_jumble_ignore); Node *utilityStmt; /* non-null if commandType == CMD_UTILITY */ - int resultRelation; /* rtable index of target relation for - * INSERT/UPDATE/DELETE/MERGE; 0 for SELECT */ - - bool hasAggs; /* has aggregates in tlist or havingQual */ - bool hasWindowFuncs; /* has window functions in tlist */ - bool hasTargetSRFs; /* has set-returning functions in tlist */ - bool hasSubLinks; /* has subquery SubLink */ - bool hasDistinctOn; /* distinctClause is from DISTINCT ON */ - bool hasRecursive; /* WITH RECURSIVE was specified */ - bool hasModifyingCTE; /* has INSERT/UPDATE/DELETE in WITH */ - bool hasForUpdate; /* FOR [KEY] UPDATE/SHARE was specified */ - bool hasRowSecurity; /* rewriter has applied some RLS policy */ - - bool isReturn; /* is a RETURN statement */ + /* + * rtable index of target relation for INSERT/UPDATE/DELETE/MERGE; 0 for + * SELECT. This is ignored in the query jumble as unrelated to the + * compilation of the query ID. + */ + int resultRelation pg_node_attr(query_jumble_ignore); + + /* has aggregates in tlist or havingQual */ + bool hasAggs pg_node_attr(query_jumble_ignore); + /* has window functions in tlist */ + bool hasWindowFuncs pg_node_attr(query_jumble_ignore); + /* has set-returning functions in tlist */ + bool hasTargetSRFs pg_node_attr(query_jumble_ignore); + /* has subquery SubLink */ + bool hasSubLinks pg_node_attr(query_jumble_ignore); + /* distinctClause is from DISTINCT ON */ + bool hasDistinctOn pg_node_attr(query_jumble_ignore); + /* WITH RECURSIVE was specified */ + bool hasRecursive pg_node_attr(query_jumble_ignore); + /* has INSERT/UPDATE/DELETE in WITH */ + bool hasModifyingCTE pg_node_attr(query_jumble_ignore); + /* FOR [KEY] UPDATE/SHARE was specified */ + bool hasForUpdate pg_node_attr(query_jumble_ignore); + /* rewriter has applied some RLS policy */ + bool hasRowSecurity pg_node_attr(query_jumble_ignore); + /* is a RETURN statement */ + bool isReturn pg_node_attr(query_jumble_ignore); List *cteList; /* WITH list (of CommonTableExpr's) */ List *rtable; /* list of range table entries */ + + /* + * list of RTEPermissionInfo nodes for the rtable entries having + * perminfoindex > 0 + */ + List *rteperminfos pg_node_attr(query_jumble_ignore); FromExpr *jointree; /* table join tree (FROM and WHERE clauses); * also USING clause for MERGE */ List *mergeActionList; /* list of actions for MERGE (only) */ - bool mergeUseOuterJoin; /* whether to use outer join */ + /* whether to use outer join */ + bool mergeUseOuterJoin pg_node_attr(query_jumble_ignore); List *targetList; /* target list (of TargetEntry) */ - OverridingKind override; /* OVERRIDING clause */ + /* OVERRIDING clause */ + OverridingKind override pg_node_attr(query_jumble_ignore); OnConflictExpr *onConflict; /* ON CONFLICT DO [NOTHING | UPDATE] */ @@ -183,11 +216,14 @@ typedef struct Query Node *setOperations; /* set-operation tree if this is top level of * a UNION/INTERSECT/EXCEPT query */ - List *constraintDeps; /* a list of pg_constraint OIDs that the query - * depends on to be semantically valid */ + /* + * A list of pg_constraint OIDs that the query depends on to be + * semantically valid + */ + List *constraintDeps pg_node_attr(query_jumble_ignore); - List *withCheckOptions; /* a list of WithCheckOption's (added - * during rewrite) */ + /* a list of WithCheckOption's (added during rewrite) */ + List *withCheckOptions pg_node_attr(query_jumble_ignore); /* * The following two fields identify the portion of the source text string @@ -195,8 +231,10 @@ typedef struct Query * Queries, not in sub-queries. When not set, they might both be zero, or * both be -1 meaning "unknown". */ - int stmt_location; /* start location, or -1 if unknown */ - int stmt_len; /* length in bytes; 0 means "rest of string" */ + /* start location, or -1 if unknown */ + int stmt_location; + /* length in bytes; 0 means "rest of string" */ + int stmt_len pg_node_attr(query_jumble_ignore); } Query; @@ -287,6 +325,8 @@ typedef enum A_Expr_Kind typedef struct A_Expr { + pg_node_attr(custom_read_write) + NodeTag type; A_Expr_Kind kind; /* see above */ List *name; /* possibly-qualified name of operator */ @@ -297,24 +337,26 @@ typedef struct A_Expr /* * A_Const - a literal constant + * + * Value nodes are inline for performance. You can treat 'val' as a node, + * as in IsA(&val, Integer). 'val' is not valid if isnull is true. */ +union ValUnion +{ + Node node; + Integer ival; + Float fval; + Boolean boolval; + String sval; + BitString bsval; +}; + typedef struct A_Const { - NodeTag type; + pg_node_attr(custom_copy_equal, custom_read_write, custom_query_jumble) - /* - * Value nodes are inline for performance. You can treat 'val' as a node, - * as in IsA(&val, Integer). 'val' is not valid if isnull is true. - */ - union ValUnion - { - Node node; - Integer ival; - Float fval; - Boolean boolval; - String sval; - BitString bsval; - } val; + NodeTag type; + union ValUnion val; bool isnull; /* SQL NULL constant */ int location; /* token location, or -1 if unknown */ } A_Const; @@ -683,6 +725,7 @@ typedef struct ColumnDef bool is_not_null; /* NOT NULL constraint specified? */ bool is_from_type; /* column definition came from table type */ char storage; /* attstorage setting, or 0 for default */ + char *storage_name; /* attstorage setting name or NULL for default */ Node *raw_default; /* default value (untransformed parse tree) */ Node *cooked_default; /* default value (transformed expr tree) */ char identity; /* attidentity setting */ @@ -796,6 +839,7 @@ typedef struct XmlSerialize XmlOptionType xmloption; /* DOCUMENT or CONTENT */ Node *expr; TypeName *typeName; + bool indent; /* [NO] INDENT */ int location; /* token location, or -1 if unknown */ } XmlSerialize; @@ -817,6 +861,13 @@ typedef struct PartitionElem int location; /* token location, or -1 if unknown */ } PartitionElem; +typedef enum PartitionStrategy +{ + PARTITION_STRATEGY_LIST = 'l', + PARTITION_STRATEGY_RANGE = 'r', + PARTITION_STRATEGY_HASH = 'h' +} PartitionStrategy; + /* * PartitionSpec - parse-time representation of a partition key specification * @@ -825,17 +876,11 @@ typedef struct PartitionElem typedef struct PartitionSpec { NodeTag type; - char *strategy; /* partitioning strategy ('hash', 'list' or - * 'range') */ + PartitionStrategy strategy; List *partParams; /* List of PartitionElems */ int location; /* token location, or -1 if unknown */ } PartitionSpec; -/* Internal codes for partitioning strategies */ -#define PARTITION_STRATEGY_HASH 'h' -#define PARTITION_STRATEGY_LIST 'l' -#define PARTITION_STRATEGY_RANGE 'r' - /* * PartitionBoundSpec - a partition bound specification * @@ -955,37 +1000,6 @@ typedef struct PartitionCmd * control visibility. But it is needed by ruleutils.c to determine * whether RTEs should be shown in decompiled queries. * - * requiredPerms and checkAsUser specify run-time access permissions - * checks to be performed at query startup. The user must have *all* - * of the permissions that are OR'd together in requiredPerms (zero - * indicates no permissions checking). If checkAsUser is not zero, - * then do the permissions checks using the access rights of that user, - * not the current effective user ID. (This allows rules to act as - * setuid gateways.) Permissions checks only apply to RELATION RTEs. - * - * For SELECT/INSERT/UPDATE permissions, if the user doesn't have - * table-wide permissions then it is sufficient to have the permissions - * on all columns identified in selectedCols (for SELECT) and/or - * insertedCols and/or updatedCols (INSERT with ON CONFLICT DO UPDATE may - * have all 3). selectedCols, insertedCols and updatedCols are bitmapsets, - * which cannot have negative integer members, so we subtract - * FirstLowInvalidHeapAttributeNumber from column numbers before storing - * them in these fields. A whole-row Var reference is represented by - * setting the bit for InvalidAttrNumber. - * - * updatedCols is also used in some other places, for example, to determine - * which triggers to fire and in FDWs to know which changed columns they - * need to ship off. - * - * Generated columns that are caused to be updated by an update to a base - * column are listed in extraUpdatedCols. This is not considered for - * permission checking, but it is useful in those places that want to know - * the full set of columns being updated as opposed to only the ones the - * user explicitly mentioned in the query. (There is currently no need for - * an extraInsertedCols, but it could exist.) Note that extraUpdatedCols - * is populated during query rewrite, NOT in the parser, since generated - * columns could be added after a rule has been parsed and stored. - * * securityQuals is a list of security barrier quals (boolean expressions), * to be tested in the listed order before returning a row from the * relation. It is always NIL in parser output. Entries are added by the @@ -1011,6 +1025,8 @@ typedef enum RTEKind typedef struct RangeTblEntry { + pg_node_attr(custom_read_write, custom_query_jumble) + NodeTag type; RTEKind rtekind; /* see above */ @@ -1024,11 +1040,6 @@ typedef struct RangeTblEntry /* * Fields valid for a plain relation RTE (else zero): * - * As a special case, RTE_NAMEDTUPLESTORE can also set relid to indicate - * that the tuple format of the tuplestore is the same as the referenced - * relation. This allows plans referencing AFTER trigger transition - * tables to be invalidated if the underlying table is altered. - * * rellockmode is really LOCKMODE, but it's declared int to avoid having * to include lock-related headers here. It must be RowExclusiveLock if * the RTE is an INSERT/UPDATE/DELETE/MERGE target, else RowShareLock if @@ -1039,11 +1050,29 @@ typedef struct RangeTblEntry * current query; this happens if a DO ALSO rule simply scans the original * target table. We leave such RTEs with their original lockmode so as to * avoid getting an additional, lesser lock. + * + * perminfoindex is 1-based index of the RTEPermissionInfo belonging to + * this RTE in the containing struct's list of same; 0 if permissions need + * not be checked for this RTE. + * + * As a special case, relid, relkind, rellockmode, and perminfoindex can + * also be set (nonzero) in an RTE_SUBQUERY RTE. This occurs when we + * convert an RTE_RELATION RTE naming a view into an RTE_SUBQUERY + * containing the view's query. We still need to perform run-time locking + * and permission checks on the view, even though it's not directly used + * in the query anymore, and the most expedient way to do that is to + * retain these fields from the old state of the RTE. + * + * As a special case, RTE_NAMEDTUPLESTORE can also set relid to indicate + * that the tuple format of the tuplestore is the same as the referenced + * relation. This allows plans referencing AFTER trigger transition + * tables to be invalidated if the underlying table is altered. */ Oid relid; /* OID of the relation */ char relkind; /* relation kind (see pg_class.relkind) */ int rellockmode; /* lock level that query requires on the rel */ struct TableSampleClause *tablesample; /* sampling info, or NULL */ + Index perminfoindex; /* * Fields valid for a subquery RTE (else NULL): @@ -1067,6 +1096,14 @@ typedef struct RangeTblEntry * alias Vars are generated only for merged columns). We keep these * entries only because they're needed in expandRTE() and similar code. * + * Vars appearing within joinaliasvars are marked with varnullingrels sets + * that describe the nulling effects of this join and lower ones. This is + * essential for FULL JOIN cases, because the COALESCE expression only + * describes the semantics correctly if its inputs have been nulled by the + * join. For other cases, it allows expandRTE() to generate a valid + * representation of the join's output without consulting additional + * parser state. + * * Within a Query loaded from a stored rule, it is possible for non-merged * joinaliasvars items to be null pointers, which are placeholders for * (necessarily unreferenced) columns dropped since the rule was made. @@ -1163,14 +1200,54 @@ typedef struct RangeTblEntry bool lateral; /* subquery, function, or values is LATERAL? */ bool inh; /* inheritance requested? */ bool inFromCl; /* present in FROM clause? */ + List *securityQuals; /* security barrier quals to apply, if any */ +} RangeTblEntry; + +/* + * RTEPermissionInfo + * Per-relation information for permission checking. Added to the Query + * node by the parser when adding the corresponding RTE to the query + * range table and subsequently editorialized on by the rewriter if + * needed after rule expansion. + * + * Only the relations directly mentioned in the query are checked for + * access permissions by the core executor, so only their RTEPermissionInfos + * are present in the Query. However, extensions may want to check inheritance + * children too, depending on the value of rte->inh, so it's copied in 'inh' + * for their perusal. + * + * requiredPerms and checkAsUser specify run-time access permissions checks + * to be performed at query startup. The user must have *all* of the + * permissions that are OR'd together in requiredPerms (never 0!). If + * checkAsUser is not zero, then do the permissions checks using the access + * rights of that user, not the current effective user ID. (This allows rules + * to act as setuid gateways.) + * + * For SELECT/INSERT/UPDATE permissions, if the user doesn't have table-wide + * permissions then it is sufficient to have the permissions on all columns + * identified in selectedCols (for SELECT) and/or insertedCols and/or + * updatedCols (INSERT with ON CONFLICT DO UPDATE may have all 3). + * selectedCols, insertedCols and updatedCols are bitmapsets, which cannot have + * negative integer members, so we subtract FirstLowInvalidHeapAttributeNumber + * from column numbers before storing them in these fields. A whole-row Var + * reference is represented by setting the bit for InvalidAttrNumber. + * + * updatedCols is also used in some other places, for example, to determine + * which triggers to fire and in FDWs to know which changed columns they need + * to ship off. + */ +typedef struct RTEPermissionInfo +{ + NodeTag type; + + Oid relid; /* relation OID */ + bool inh; /* separately check inheritance children? */ AclMode requiredPerms; /* bitmask of required access permissions */ Oid checkAsUser; /* if valid, check access as this role */ Bitmapset *selectedCols; /* columns needing SELECT permission */ Bitmapset *insertedCols; /* columns needing INSERT permission */ Bitmapset *updatedCols; /* columns needing UPDATE permission */ - Bitmapset *extraUpdatedCols; /* generated columns being updated */ - List *securityQuals; /* security barrier quals to apply, if any */ -} RangeTblEntry; +} RTEPermissionInfo; /* * RangeTblFunction - @@ -1187,20 +1264,29 @@ typedef struct RangeTblEntry * time. We do however remember how many columns we thought the type had * (including dropped columns!), so that we can successfully ignore any * columns added after the query was parsed. + * + * The query jumbling only needs to track the function expression. */ typedef struct RangeTblFunction { NodeTag type; Node *funcexpr; /* expression tree for func call */ - int funccolcount; /* number of columns it contributes to RTE */ + /* number of columns it contributes to RTE */ + int funccolcount pg_node_attr(query_jumble_ignore); /* These fields record the contents of a column definition list, if any: */ - List *funccolnames; /* column names (list of String) */ - List *funccoltypes; /* OID list of column type OIDs */ - List *funccoltypmods; /* integer list of column typmods */ - List *funccolcollations; /* OID list of column collation OIDs */ + /* column names (list of String) */ + List *funccolnames pg_node_attr(query_jumble_ignore); + /* OID list of column type OIDs */ + List *funccoltypes pg_node_attr(query_jumble_ignore); + /* integer list of column typmods */ + List *funccoltypmods pg_node_attr(query_jumble_ignore); + /* OID list of column collation OIDs */ + List *funccolcollations pg_node_attr(query_jumble_ignore); + /* This is set during planning for use by the executor: */ - Bitmapset *funcparams; /* PARAM_EXEC Param IDs affecting this func */ + /* PARAM_EXEC Param IDs affecting this func */ + Bitmapset *funcparams pg_node_attr(query_jumble_ignore); } RangeTblFunction; /* @@ -1307,7 +1393,8 @@ typedef struct SortGroupClause Oid eqop; /* the equality operator ('=' op) */ Oid sortop; /* the ordering operator ('<' op), or 0 */ bool nulls_first; /* do NULLs come before normal values? */ - bool hashable; /* can eqop be implemented by hashing? */ + /* can eqop be implemented by hashing? */ + bool hashable pg_node_attr(query_jumble_ignore); } SortGroupClause; /* @@ -1372,7 +1459,7 @@ typedef enum GroupingSetKind typedef struct GroupingSet { NodeTag type; - GroupingSetKind kind; + GroupingSetKind kind pg_node_attr(query_jumble_ignore); List *content; int location; } GroupingSet; @@ -1393,25 +1480,38 @@ typedef struct GroupingSet * When refname isn't null, the partitionClause is always copied from there; * the orderClause might or might not be copied (see copiedOrder); the framing * options are never copied, per spec. + * + * The information relevant for the query jumbling is the partition clause + * type and its bounds. */ typedef struct WindowClause { NodeTag type; - char *name; /* window name (NULL in an OVER clause) */ - char *refname; /* referenced window name, if any */ + /* window name (NULL in an OVER clause) */ + char *name pg_node_attr(query_jumble_ignore); + /* referenced window name, if any */ + char *refname pg_node_attr(query_jumble_ignore); List *partitionClause; /* PARTITION BY list */ - List *orderClause; /* ORDER BY list */ + /* ORDER BY list */ + List *orderClause; int frameOptions; /* frame_clause options, see WindowDef */ Node *startOffset; /* expression for starting bound, if any */ Node *endOffset; /* expression for ending bound, if any */ - List *runCondition; /* qual to help short-circuit execution */ - Oid startInRangeFunc; /* in_range function for startOffset */ - Oid endInRangeFunc; /* in_range function for endOffset */ - Oid inRangeColl; /* collation for in_range tests */ - bool inRangeAsc; /* use ASC sort order for in_range tests? */ - bool inRangeNullsFirst; /* nulls sort first for in_range tests? */ + /* qual to help short-circuit execution */ + List *runCondition pg_node_attr(query_jumble_ignore); + /* in_range function for startOffset */ + Oid startInRangeFunc pg_node_attr(query_jumble_ignore); + /* in_range function for endOffset */ + Oid endInRangeFunc pg_node_attr(query_jumble_ignore); + /* collation for in_range tests */ + Oid inRangeColl pg_node_attr(query_jumble_ignore); + /* use ASC sort order for in_range tests? */ + bool inRangeAsc pg_node_attr(query_jumble_ignore); + /* nulls sort first for in_range tests? */ + bool inRangeNullsFirst pg_node_attr(query_jumble_ignore); Index winref; /* ID referenced by window functions */ - bool copiedOrder; /* did we copy orderClause from refname? */ + /* did we copy orderClause from refname? */ + bool copiedOrder pg_node_attr(query_jumble_ignore); } WindowClause; /* @@ -1521,22 +1621,37 @@ typedef struct CTECycleClause typedef struct CommonTableExpr { NodeTag type; - char *ctename; /* query name (never qualified) */ - List *aliascolnames; /* optional list of column names */ + + /* + * Query name (never qualified). The string name is included in the query + * jumbling because RTE_CTE RTEs need it. + */ + char *ctename; + /* optional list of column names */ + List *aliascolnames pg_node_attr(query_jumble_ignore); CTEMaterialize ctematerialized; /* is this an optimization fence? */ /* SelectStmt/InsertStmt/etc before parse analysis, Query afterwards: */ Node *ctequery; /* the CTE's subquery */ - CTESearchClause *search_clause; - CTECycleClause *cycle_clause; + CTESearchClause *search_clause pg_node_attr(query_jumble_ignore); + CTECycleClause *cycle_clause pg_node_attr(query_jumble_ignore); int location; /* token location, or -1 if unknown */ /* These fields are set during parse analysis: */ - bool cterecursive; /* is this CTE actually recursive? */ - int cterefcount; /* number of RTEs referencing this CTE - * (excluding internal self-references) */ - List *ctecolnames; /* list of output column names */ - List *ctecoltypes; /* OID list of output column type OIDs */ - List *ctecoltypmods; /* integer list of output column typmods */ - List *ctecolcollations; /* OID list of column collation OIDs */ + /* is this CTE actually recursive? */ + bool cterecursive pg_node_attr(query_jumble_ignore); + + /* + * Number of RTEs referencing this CTE (excluding internal + * self-references), irrelevant for query jumbling. + */ + int cterefcount pg_node_attr(query_jumble_ignore); + /* list of output column names */ + List *ctecolnames pg_node_attr(query_jumble_ignore); + /* OID list of output column type OIDs */ + List *ctecoltypes pg_node_attr(query_jumble_ignore); + /* integer list of output column typmods */ + List *ctecoltypmods pg_node_attr(query_jumble_ignore); + /* OID list of column collation OIDs */ + List *ctecolcollations pg_node_attr(query_jumble_ignore); } CommonTableExpr; /* Convenience macro to get the output tlist of a CTE's query */ @@ -1573,10 +1688,12 @@ typedef struct MergeAction NodeTag type; bool matched; /* true=MATCHED, false=NOT MATCHED */ CmdType commandType; /* INSERT/UPDATE/DELETE/DO NOTHING */ - OverridingKind override; /* OVERRIDING clause */ + /* OVERRIDING clause */ + OverridingKind override pg_node_attr(query_jumble_ignore); Node *qual; /* transformed WHEN conditions */ List *targetList; /* the target list (of TargetEntry) */ - List *updateColnos; /* target attribute numbers of an UPDATE */ + /* target attribute numbers of an UPDATE */ + List *updateColnos pg_node_attr(query_jumble_ignore); } MergeAction; /* @@ -1595,6 +1712,113 @@ typedef struct TriggerTransition bool isTable; } TriggerTransition; +/* Nodes for SQL/JSON support */ + +/* + * JsonOutput - + * representation of JSON output clause (RETURNING type [FORMAT format]) + */ +typedef struct JsonOutput +{ + NodeTag type; + TypeName *typeName; /* RETURNING type name, if specified */ + JsonReturning *returning; /* RETURNING FORMAT clause and type Oids */ +} JsonOutput; + +/* + * JsonKeyValue - + * untransformed representation of JSON object key-value pair for + * JSON_OBJECT() and JSON_OBJECTAGG() + */ +typedef struct JsonKeyValue +{ + NodeTag type; + Expr *key; /* key expression */ + JsonValueExpr *value; /* JSON value expression */ +} JsonKeyValue; + +/* + * JsonObjectConstructor - + * untransformed representation of JSON_OBJECT() constructor + */ +typedef struct JsonObjectConstructor +{ + NodeTag type; + List *exprs; /* list of JsonKeyValue pairs */ + JsonOutput *output; /* RETURNING clause, if specified */ + bool absent_on_null; /* skip NULL values? */ + bool unique; /* check key uniqueness? */ + int location; /* token location, or -1 if unknown */ +} JsonObjectConstructor; + +/* + * JsonArrayConstructor - + * untransformed representation of JSON_ARRAY(element,...) constructor + */ +typedef struct JsonArrayConstructor +{ + NodeTag type; + List *exprs; /* list of JsonValueExpr elements */ + JsonOutput *output; /* RETURNING clause, if specified */ + bool absent_on_null; /* skip NULL elements? */ + int location; /* token location, or -1 if unknown */ +} JsonArrayConstructor; + +/* + * JsonArrayQueryConstructor - + * untransformed representation of JSON_ARRAY(subquery) constructor + */ +typedef struct JsonArrayQueryConstructor +{ + NodeTag type; + Node *query; /* subquery */ + JsonOutput *output; /* RETURNING clause, if specified */ + JsonFormat *format; /* FORMAT clause for subquery, if specified */ + bool absent_on_null; /* skip NULL elements? */ + int location; /* token location, or -1 if unknown */ +} JsonArrayQueryConstructor; + +/* + * JsonAggConstructor - + * common fields of untransformed representation of + * JSON_ARRAYAGG() and JSON_OBJECTAGG() + */ +typedef struct JsonAggConstructor +{ + NodeTag type; + JsonOutput *output; /* RETURNING clause, if any */ + Node *agg_filter; /* FILTER clause, if any */ + List *agg_order; /* ORDER BY clause, if any */ + struct WindowDef *over; /* OVER clause, if any */ + int location; /* token location, or -1 if unknown */ +} JsonAggConstructor; + +/* + * JsonObjectAgg - + * untransformed representation of JSON_OBJECTAGG() + */ +typedef struct JsonObjectAgg +{ + NodeTag type; + JsonAggConstructor *constructor; /* common fields */ + JsonKeyValue *arg; /* object key-value pair */ + bool absent_on_null; /* skip NULL values? */ + bool unique; /* check key uniqueness? */ +} JsonObjectAgg; + +/* + * JsonArrayAgg - + * untransformed representation of JSON_ARRAYAGG() + */ +typedef struct JsonArrayAgg +{ + NodeTag type; + JsonAggConstructor *constructor; /* common fields */ + JsonValueExpr *arg; /* array element expression */ + bool absent_on_null; /* skip NULL elements? */ +} JsonArrayAgg; + + /***************************************************************************** * Raw Grammar Output Statements *****************************************************************************/ @@ -1610,9 +1834,14 @@ typedef struct TriggerTransition * * stmt_location/stmt_len identify the portion of the source text string * containing this raw statement (useful for multi-statement strings). + * + * This is irrelevant for query jumbling, as this is not used in parsed + * queries. */ typedef struct RawStmt { + pg_node_attr(no_query_jumble) + NodeTag type; Node *stmt; /* raw parse tree */ int stmt_location; /* start location, or -1 if unknown */ @@ -1785,11 +2014,15 @@ typedef struct SetOperationStmt Node *rarg; /* right child */ /* Eventually add fields for CORRESPONDING spec here */ - /* Fields derived during parse analysis: */ - List *colTypes; /* OID list of output column type OIDs */ - List *colTypmods; /* integer list of output column typmods */ - List *colCollations; /* OID list of output column collation OIDs */ - List *groupClauses; /* a list of SortGroupClause's */ + /* Fields derived during parse analysis (irrelevant for query jumbling): */ + /* OID list of output column type OIDs */ + List *colTypes pg_node_attr(query_jumble_ignore); + /* integer list of output column typmods */ + List *colTypmods pg_node_attr(query_jumble_ignore); + /* OID list of output column collation OIDs */ + List *colCollations pg_node_attr(query_jumble_ignore); + /* a list of SortGroupClause's */ + List *groupClauses pg_node_attr(query_jumble_ignore); /* groupClauses is NIL if UNION ALL, but must be set otherwise */ } SetOperationStmt; @@ -1938,7 +2171,6 @@ typedef struct AlterTableStmt typedef enum AlterTableType { AT_AddColumn, /* add column */ - AT_AddColumnRecurse, /* internal to commands/tablecmds.c */ AT_AddColumnToView, /* implicitly via CREATE OR REPLACE VIEW */ AT_ColumnDefault, /* alter column default */ AT_CookedColumnDefault, /* add a pre-cooked column default */ @@ -1952,19 +2184,15 @@ typedef enum AlterTableType AT_SetStorage, /* alter column set storage */ AT_SetCompression, /* alter column set compression */ AT_DropColumn, /* drop column */ - AT_DropColumnRecurse, /* internal to commands/tablecmds.c */ AT_AddIndex, /* add index */ AT_ReAddIndex, /* internal to commands/tablecmds.c */ AT_AddConstraint, /* add constraint */ - AT_AddConstraintRecurse, /* internal to commands/tablecmds.c */ AT_ReAddConstraint, /* internal to commands/tablecmds.c */ AT_ReAddDomainConstraint, /* internal to commands/tablecmds.c */ AT_AlterConstraint, /* alter constraint */ AT_ValidateConstraint, /* validate constraint */ - AT_ValidateConstraintRecurse, /* internal to commands/tablecmds.c */ AT_AddIndexConstraint, /* add constraint using existing index */ AT_DropConstraint, /* drop constraint */ - AT_DropConstraintRecurse, /* internal to commands/tablecmds.c */ AT_ReAddComment, /* internal to commands/tablecmds.c */ AT_AlterColumnType, /* alter column type */ AT_AlterColumnGenericOptions, /* alter column OPTIONS (...) */ @@ -2153,7 +2381,7 @@ typedef struct GrantRoleStmt List *granted_roles; /* list of roles to be granted/revoked */ List *grantee_roles; /* list of member roles to add/delete */ bool is_grant; /* true = GRANT, false = REVOKE */ - bool admin_opt; /* with admin option */ + List *opt; /* options e.g. WITH GRANT OPTION */ RoleSpec *grantor; /* set grantor to other than current role */ DropBehavior behavior; /* drop behavior (for REVOKE) */ } GrantRoleStmt; @@ -2321,6 +2549,8 @@ typedef enum ConstrType /* types of constraints */ typedef struct Constraint { + pg_node_attr(custom_read_write) + NodeTag type; ConstrType contype; /* see above */ @@ -2961,10 +3191,10 @@ typedef struct IndexStmt List *excludeOpNames; /* exclusion operator names, or NIL if none */ char *idxcomment; /* comment to apply to index, or NULL */ Oid indexOid; /* OID of an existing index, if any */ - Oid oldNode; /* relfilenode of existing storage, if any */ - SubTransactionId oldCreateSubid; /* rd_createSubid of oldNode */ - SubTransactionId oldFirstRelfilenodeSubid; /* rd_firstRelfilenodeSubid of - * oldNode */ + RelFileNumber oldNumber; /* relfilenumber of existing storage, if any */ + SubTransactionId oldCreateSubid; /* rd_createSubid of oldNumber */ + SubTransactionId oldFirstRelfilelocatorSubid; /* rd_firstRelfilelocatorSubid + * of oldNumber */ bool unique; /* is index unique? */ bool nulls_not_distinct; /* null treatment for UNIQUE constraints */ bool primary; /* is index a primary key? */ @@ -3080,6 +3310,8 @@ typedef struct DoStmt typedef struct InlineCodeBlock { + pg_node_attr(nodetag_only) /* this is not a member of parse trees */ + NodeTag type; char *source_text; /* source text of anonymous code block */ Oid langOid; /* OID of selected language */ @@ -3094,18 +3326,24 @@ typedef struct InlineCodeBlock * list contains copies of the expressions for all output arguments, in the * order of the procedure's declared arguments. (outargs is never evaluated, * but is useful to the caller as a reference for what to assign to.) + * The transformed call state is not relevant in the query jumbling, only the + * function call is. * ---------------------- */ typedef struct CallStmt { NodeTag type; FuncCall *funccall; /* from the parser */ - FuncExpr *funcexpr; /* transformed call, with only input args */ - List *outargs; /* transformed output-argument expressions */ + /* transformed call, with only input args */ + FuncExpr *funcexpr pg_node_attr(query_jumble_ignore); + /* transformed output-argument expressions */ + List *outargs pg_node_attr(query_jumble_ignore); } CallStmt; typedef struct CallContext { + pg_node_attr(nodetag_only) /* this is not a member of parse trees */ + NodeTag type; bool atomic; } CallContext; diff --git a/parser/include/nodes/pathnodes.h b/parser/include/nodes/pathnodes.h index 540de8a4..94aebadd 100644 --- a/parser/include/nodes/pathnodes.h +++ b/parser/include/nodes/pathnodes.h @@ -3,8 +3,10 @@ * pathnodes.h * Definitions for planner's internal data structures, especially Paths. * + * We don't support copying RelOptInfo, IndexOptInfo, or Path nodes. + * There are some subsidiary structs that are useful to copy, though. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/pathnodes.h @@ -85,51 +87,79 @@ typedef enum UpperRelationKind * PlannerGlobal holds state for an entire planner invocation; this state * is shared across all levels of sub-Queries that exist in the command being * planned. + * + * Not all fields are printed. (In some cases, there is no print support for + * the field type; in others, doing so would lead to infinite recursion.) *---------- */ typedef struct PlannerGlobal { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; - ParamListInfo boundParams; /* Param values provided to planner() */ + /* Param values provided to planner() */ + ParamListInfo boundParams pg_node_attr(read_write_ignore); - List *subplans; /* Plans for SubPlan nodes */ + /* Plans for SubPlan nodes */ + List *subplans; - List *subroots; /* PlannerInfos for SubPlan nodes */ + /* PlannerInfos for SubPlan nodes */ + List *subroots pg_node_attr(read_write_ignore); - Bitmapset *rewindPlanIDs; /* indices of subplans that require REWIND */ + /* indices of subplans that require REWIND */ + Bitmapset *rewindPlanIDs; - List *finalrtable; /* "flat" rangetable for executor */ + /* "flat" rangetable for executor */ + List *finalrtable; - List *finalrowmarks; /* "flat" list of PlanRowMarks */ + /* "flat" list of RTEPermissionInfos */ + List *finalrteperminfos; - List *resultRelations; /* "flat" list of integer RT indexes */ + /* "flat" list of PlanRowMarks */ + List *finalrowmarks; - List *appendRelations; /* "flat" list of AppendRelInfos */ + /* "flat" list of integer RT indexes */ + List *resultRelations; - List *relationOids; /* OIDs of relations the plan depends on */ + /* "flat" list of AppendRelInfos */ + List *appendRelations; - List *invalItems; /* other dependencies, as PlanInvalItems */ + /* OIDs of relations the plan depends on */ + List *relationOids; - List *paramExecTypes; /* type OIDs for PARAM_EXEC Params */ + /* other dependencies, as PlanInvalItems */ + List *invalItems; - Index lastPHId; /* highest PlaceHolderVar ID assigned */ + /* type OIDs for PARAM_EXEC Params */ + List *paramExecTypes; - Index lastRowMarkId; /* highest PlanRowMark ID assigned */ + /* highest PlaceHolderVar ID assigned */ + Index lastPHId; - int lastPlanNodeId; /* highest plan node ID assigned */ + /* highest PlanRowMark ID assigned */ + Index lastRowMarkId; - bool transientPlan; /* redo plan when TransactionXmin changes? */ + /* highest plan node ID assigned */ + int lastPlanNodeId; - bool dependsOnRole; /* is plan specific to current role? */ + /* redo plan when TransactionXmin changes? */ + bool transientPlan; - bool parallelModeOK; /* parallel mode potentially OK? */ + /* is plan specific to current role? */ + bool dependsOnRole; - bool parallelModeNeeded; /* parallel mode actually required? */ + /* parallel mode potentially OK? */ + bool parallelModeOK; - char maxParallelHazard; /* worst PROPARALLEL hazard level */ + /* parallel mode actually required? */ + bool parallelModeNeeded; - PartitionDirectory partition_directory; /* partition descriptors */ + /* worst PROPARALLEL hazard level */ + char maxParallelHazard; + + /* partition descriptors */ + PartitionDirectory partition_directory pg_node_attr(read_write_ignore); } PlannerGlobal; /* macro for fetching the Plan associated with a SubPlan node */ @@ -148,6 +178,10 @@ typedef struct PlannerGlobal * * For reasons explained in optimizer/optimizer.h, we define the typedef * either here or in that header, whichever is read first. + * + * Not all fields are printed. (In some cases, there is no print support for + * the field type; in others, doing so would lead to infinite recursion or + * bloat dump output more than seems useful.) *---------- */ #ifndef HAVE_PLANNERINFO_TYPEDEF @@ -157,15 +191,21 @@ typedef struct PlannerInfo PlannerInfo; struct PlannerInfo { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; - Query *parse; /* the Query being planned */ + /* the Query being planned */ + Query *parse; - PlannerGlobal *glob; /* global info for current planner run */ + /* global info for current planner run */ + PlannerGlobal *glob; - Index query_level; /* 1 at the outermost Query */ + /* 1 at the outermost Query */ + Index query_level; - PlannerInfo *parent_root; /* NULL at outermost Query */ + /* NULL at outermost Query */ + PlannerInfo *parent_root pg_node_attr(read_write_ignore); /* * plan_params contains the expressions that this query level needs to @@ -173,7 +213,8 @@ struct PlannerInfo * outer_params contains the paramIds of PARAM_EXEC Params that outer * query levels will make available to this query level. */ - List *plan_params; /* list of PlannerParamItems, see below */ + /* list of PlannerParamItems, see below */ + List *plan_params; Bitmapset *outer_params; /* @@ -183,39 +224,46 @@ struct PlannerInfo * does not correspond to a base relation, such as a join RTE or an * unreferenced view RTE; or if the RelOptInfo hasn't been made yet. */ - struct RelOptInfo **simple_rel_array; /* All 1-rel RelOptInfos */ - int simple_rel_array_size; /* allocated size of array */ + struct RelOptInfo **simple_rel_array pg_node_attr(array_size(simple_rel_array_size)); + /* allocated size of array */ + int simple_rel_array_size; /* * simple_rte_array is the same length as simple_rel_array and holds * pointers to the associated rangetable entries. Using this is a shade - * faster than using rt_fetch(), mostly due to fewer indirections. + * faster than using rt_fetch(), mostly due to fewer indirections. (Not + * printed because it'd be redundant with parse->rtable.) */ - RangeTblEntry **simple_rte_array; /* rangetable as an array */ + RangeTblEntry **simple_rte_array pg_node_attr(read_write_ignore); /* * append_rel_array is the same length as the above arrays, and holds * pointers to the corresponding AppendRelInfo entry indexed by * child_relid, or NULL if the rel is not an appendrel child. The array - * itself is not allocated if append_rel_list is empty. + * itself is not allocated if append_rel_list is empty. (Not printed + * because it'd be redundant with append_rel_list.) */ - struct AppendRelInfo **append_rel_array; + struct AppendRelInfo **append_rel_array pg_node_attr(read_write_ignore); /* - * all_baserels is a Relids set of all base relids (but not "other" - * relids) in the query; that is, the Relids identifier of the final join - * we need to form. This is computed in make_one_rel, just before we - * start making Paths. + * all_baserels is a Relids set of all base relids (but not joins or + * "other" rels) in the query. This is computed in deconstruct_jointree. */ Relids all_baserels; /* - * nullable_baserels is a Relids set of base relids that are nullable by - * some outer join in the jointree; these are rels that are potentially - * nullable below the WHERE clause, SELECT targetlist, etc. This is - * computed in deconstruct_jointree. + * outer_join_rels is a Relids set of all outer-join relids in the query. + * This is computed in deconstruct_jointree. + */ + Relids outer_join_rels; + + /* + * all_query_rels is a Relids set of all base relids and outer join relids + * (but not "other" relids) in the query. This is the Relids identifier + * of the final join we need to form. This is computed in + * deconstruct_jointree. */ - Relids nullable_baserels; + Relids all_query_rels; /* * join_rel_list is a list of all join-relation RelOptInfos we have @@ -226,8 +274,8 @@ struct PlannerInfo * even when using the hash table for lookups; this simplifies life for * GEQO. */ - List *join_rel_list; /* list of join-relation RelOptInfos */ - struct HTAB *join_rel_hash; /* optional hashtable for join relations */ + List *join_rel_list; + struct HTAB *join_rel_hash pg_node_attr(read_write_ignore); /* * When doing a dynamic-programming-style join search, join_rel_level[k] @@ -235,36 +283,61 @@ struct PlannerInfo * join_cur_level is the current level. New join-relation RelOptInfos are * automatically added to the join_rel_level[join_cur_level] list. * join_rel_level is NULL if not in use. + * + * Note: we've already printed all baserel and joinrel RelOptInfos above, + * so we don't dump join_rel_level or other lists of RelOptInfos. + */ + /* lists of join-relation RelOptInfos */ + List **join_rel_level pg_node_attr(read_write_ignore); + /* index of list being extended */ + int join_cur_level; + + /* init SubPlans for query */ + List *init_plans; + + /* + * per-CTE-item list of subplan IDs (or -1 if no subplan was made for that + * CTE) */ - List **join_rel_level; /* lists of join-relation RelOptInfos */ - int join_cur_level; /* index of list being extended */ + List *cte_plan_ids; - List *init_plans; /* init SubPlans for query */ + /* List of Lists of Params for MULTIEXPR subquery outputs */ + List *multiexpr_params; - List *cte_plan_ids; /* per-CTE-item list of subplan IDs (or -1 if - * no subplan was made for that CTE) */ + /* list of JoinDomains used in the query (higher ones first) */ + List *join_domains; - List *multiexpr_params; /* List of Lists of Params for MULTIEXPR - * subquery outputs */ + /* list of active EquivalenceClasses */ + List *eq_classes; - List *eq_classes; /* list of active EquivalenceClasses */ + /* set true once ECs are canonical */ + bool ec_merging_done; - bool ec_merging_done; /* set true once ECs are canonical */ + /* list of "canonical" PathKeys */ + List *canon_pathkeys; - List *canon_pathkeys; /* list of "canonical" PathKeys */ + /* + * list of OuterJoinClauseInfos for mergejoinable outer join clauses + * w/nonnullable var on left + */ + List *left_join_clauses; - List *left_join_clauses; /* list of RestrictInfos for mergejoinable - * outer join clauses w/nonnullable var on - * left */ + /* + * list of OuterJoinClauseInfos for mergejoinable outer join clauses + * w/nonnullable var on right + */ + List *right_join_clauses; - List *right_join_clauses; /* list of RestrictInfos for mergejoinable - * outer join clauses w/nonnullable var on - * right */ + /* + * list of OuterJoinClauseInfos for mergejoinable full join clauses + */ + List *full_join_clauses; - List *full_join_clauses; /* list of RestrictInfos for mergejoinable - * full join clauses */ + /* list of SpecialJoinInfos */ + List *join_info_list; - List *join_info_list; /* list of SpecialJoinInfos */ + /* counter for assigning RestrictInfo serial numbers */ + int last_rinfo_serial; /* * all_result_relids is empty for SELECT, otherwise it contains at least @@ -274,41 +347,99 @@ struct PlannerInfo * included. leaf_result_relids is similar except that only actual result * tables, not partitioned tables, are included in it. */ - Relids all_result_relids; /* set of all result relids */ - Relids leaf_result_relids; /* set of all leaf relids */ + /* set of all result relids */ + Relids all_result_relids; + /* set of all leaf relids */ + Relids leaf_result_relids; /* + * list of AppendRelInfos + * * Note: for AppendRelInfos describing partitions of a partitioned table, * we guarantee that partitions that come earlier in the partitioned * table's PartitionDesc will appear earlier in append_rel_list. */ - List *append_rel_list; /* list of AppendRelInfos */ + List *append_rel_list; - List *row_identity_vars; /* list of RowIdentityVarInfos */ + /* list of RowIdentityVarInfos */ + List *row_identity_vars; - List *rowMarks; /* list of PlanRowMarks */ + /* list of PlanRowMarks */ + List *rowMarks; - List *placeholder_list; /* list of PlaceHolderInfos */ + /* list of PlaceHolderInfos */ + List *placeholder_list; - List *fkey_list; /* list of ForeignKeyOptInfos */ + /* array of PlaceHolderInfos indexed by phid */ + struct PlaceHolderInfo **placeholder_array pg_node_attr(read_write_ignore, array_size(placeholder_array_size)); + /* allocated size of array */ + int placeholder_array_size pg_node_attr(read_write_ignore); - List *query_pathkeys; /* desired pathkeys for query_planner() */ + /* list of ForeignKeyOptInfos */ + List *fkey_list; + + /* desired pathkeys for query_planner() */ + List *query_pathkeys; + + /* groupClause pathkeys, if any */ + List *group_pathkeys; + + /* + * The number of elements in the group_pathkeys list which belong to the + * GROUP BY clause. Additional ones belong to ORDER BY / DISTINCT + * aggregates. + */ + int num_groupby_pathkeys; - List *group_pathkeys; /* groupClause pathkeys, if any */ - List *window_pathkeys; /* pathkeys of bottom window, if any */ - List *distinct_pathkeys; /* distinctClause pathkeys, if any */ - List *sort_pathkeys; /* sortClause pathkeys, if any */ + /* pathkeys of bottom window, if any */ + List *window_pathkeys; + /* distinctClause pathkeys, if any */ + List *distinct_pathkeys; + /* sortClause pathkeys, if any */ + List *sort_pathkeys; - List *part_schemes; /* Canonicalised partition schemes used in the - * query. */ + /* Canonicalised partition schemes used in the query. */ + List *part_schemes pg_node_attr(read_write_ignore); - List *initial_rels; /* RelOptInfos we are now trying to join */ + /* RelOptInfos we are now trying to join */ + List *initial_rels pg_node_attr(read_write_ignore); - /* Use fetch_upper_rel() to get any particular upper rel */ - List *upper_rels[UPPERREL_FINAL + 1]; /* upper-rel RelOptInfos */ + /* + * Upper-rel RelOptInfos. Use fetch_upper_rel() to get any particular + * upper rel. + */ + List *upper_rels[UPPERREL_FINAL + 1] pg_node_attr(read_write_ignore); /* Result tlists chosen by grouping_planner for upper-stage processing */ - struct PathTarget *upper_targets[UPPERREL_FINAL + 1]; + struct PathTarget *upper_targets[UPPERREL_FINAL + 1] pg_node_attr(read_write_ignore); + + /* + * The fully-processed groupClause is kept here. It differs from + * parse->groupClause in that we remove any items that we can prove + * redundant, so that only the columns named here actually need to be + * compared to determine grouping. Note that it's possible for *all* the + * items to be proven redundant, implying that there is only one group + * containing all the query's rows. Hence, if you want to check whether + * GROUP BY was specified, test for nonempty parse->groupClause, not for + * nonempty processed_groupClause. + * + * Currently, when grouping sets are specified we do not attempt to + * optimize the groupClause, so that processed_groupClause will be + * identical to parse->groupClause. + */ + List *processed_groupClause; + + /* + * The fully-processed distinctClause is kept here. It differs from + * parse->distinctClause in that we remove any items that we can prove + * redundant, so that only the columns named here actually need to be + * compared to determine uniqueness. Note that it's possible for *all* + * the items to be proven redundant, implying that there should be only + * one output row. Hence, if you want to check whether DISTINCT was + * specified, test for nonempty parse->distinctClause, not for nonempty + * processed_distinctClause. + */ + List *processed_distinctClause; /* * The fully-processed targetlist is kept here. It differs from @@ -329,52 +460,87 @@ struct PlannerInfo */ List *update_colnos; - /* Fields filled during create_plan() for use in setrefs.c */ - AttrNumber *grouping_map; /* for GroupingFunc fixup */ - List *minmax_aggs; /* List of MinMaxAggInfos */ - - MemoryContext planner_cxt; /* context holding PlannerInfo */ + /* + * Fields filled during create_plan() for use in setrefs.c + */ + /* for GroupingFunc fixup (can't print: array length not known here) */ + AttrNumber *grouping_map pg_node_attr(read_write_ignore); + /* List of MinMaxAggInfos */ + List *minmax_aggs; - Cardinality total_table_pages; /* # of pages in all non-dummy tables of - * query */ + /* context holding PlannerInfo */ + MemoryContext planner_cxt pg_node_attr(read_write_ignore); - Selectivity tuple_fraction; /* tuple_fraction passed to query_planner */ - Cardinality limit_tuples; /* limit_tuples passed to query_planner */ + /* # of pages in all non-dummy tables of query */ + Cardinality total_table_pages; - Index qual_security_level; /* minimum security_level for quals */ - /* Note: qual_security_level is zero if there are no securityQuals */ + /* tuple_fraction passed to query_planner */ + Selectivity tuple_fraction; + /* limit_tuples passed to query_planner */ + Cardinality limit_tuples; - bool hasJoinRTEs; /* true if any RTEs are RTE_JOIN kind */ - bool hasLateralRTEs; /* true if any RTEs are marked LATERAL */ - bool hasHavingQual; /* true if havingQual was non-null */ - bool hasPseudoConstantQuals; /* true if any RestrictInfo has - * pseudoconstant = true */ - bool hasAlternativeSubPlans; /* true if we've made any of those */ - bool hasRecursion; /* true if planning a recursive WITH item */ + /* + * Minimum security_level for quals. Note: qual_security_level is zero if + * there are no securityQuals. + */ + Index qual_security_level; + + /* true if any RTEs are RTE_JOIN kind */ + bool hasJoinRTEs; + /* true if any RTEs are marked LATERAL */ + bool hasLateralRTEs; + /* true if havingQual was non-null */ + bool hasHavingQual; + /* true if any RestrictInfo has pseudoconstant = true */ + bool hasPseudoConstantQuals; + /* true if we've made any of those */ + bool hasAlternativeSubPlans; + /* true once we're no longer allowed to add PlaceHolderInfos */ + bool placeholdersFrozen; + /* true if planning a recursive WITH item */ + bool hasRecursion; /* * Information about aggregates. Filled by preprocess_aggrefs(). */ - List *agginfos; /* AggInfo structs */ - List *aggtransinfos; /* AggTransInfo structs */ - int numOrderedAggs; /* number w/ DISTINCT/ORDER BY/WITHIN GROUP */ - bool hasNonPartialAggs; /* does any agg not support partial mode? */ - bool hasNonSerialAggs; /* is any partial agg non-serializable? */ + /* AggInfo structs */ + List *agginfos; + /* AggTransInfo structs */ + List *aggtransinfos; + /* number of aggs with DISTINCT/ORDER BY/WITHIN GROUP */ + int numOrderedAggs; + /* does any agg not support partial mode? */ + bool hasNonPartialAggs; + /* is any partial agg non-serializable? */ + bool hasNonSerialAggs; - /* These fields are used only when hasRecursion is true: */ - int wt_param_id; /* PARAM_EXEC ID for the work table */ - struct Path *non_recursive_path; /* a path for non-recursive term */ + /* + * These fields are used only when hasRecursion is true: + */ + /* PARAM_EXEC ID for the work table */ + int wt_param_id; + /* a path for non-recursive term */ + struct Path *non_recursive_path; - /* These fields are workspace for createplan.c */ - Relids curOuterRels; /* outer rels above current node */ - List *curOuterParams; /* not-yet-assigned NestLoopParams */ + /* + * These fields are workspace for createplan.c + */ + /* outer rels above current node */ + Relids curOuterRels; + /* not-yet-assigned NestLoopParams */ + List *curOuterParams; - /* These fields are workspace for setrefs.c */ - bool *isAltSubplan; /* array corresponding to glob->subplans */ - bool *isUsedSubplan; /* array corresponding to glob->subplans */ + /* + * These fields are workspace for setrefs.c. Each is an array + * corresponding to glob->subplans. (We could probably teach + * gen_node_support.pl how to determine the array length, but it doesn't + * seem worth the trouble, so just mark them read_write_ignore.) + */ + bool *isAltSubplan pg_node_attr(read_write_ignore); + bool *isUsedSubplan pg_node_attr(read_write_ignore); /* optional private data for join_search_hook, e.g., GEQO */ - void *join_search_private; + void *join_search_private pg_node_attr(read_write_ignore); /* Does this query modify any partition key columns? */ bool partColsUpdated; @@ -430,9 +596,10 @@ typedef struct PartitionSchemeData *PartitionScheme; * or the output of a sub-SELECT or function that appears in the range table. * In either case it is uniquely identified by an RT index. A "joinrel" * is the joining of two or more base rels. A joinrel is identified by - * the set of RT indexes for its component baserels. We create RelOptInfo - * nodes for each baserel and joinrel, and store them in the PlannerInfo's - * simple_rel_array and join_rel_list respectively. + * the set of RT indexes for its component baserels, along with RT indexes + * for any outer joins it has computed. We create RelOptInfo nodes for each + * baserel and joinrel, and store them in the PlannerInfo's simple_rel_array + * and join_rel_list respectively. * * Note that there is only one joinrel for any given set of component * baserels, no matter what order we assemble them in; so an unordered @@ -465,14 +632,13 @@ typedef struct PartitionSchemeData *PartitionScheme; * Many of the fields in these RelOptInfos are meaningless, but their Path * fields always hold Paths showing ways to do that processing step. * - * Lastly, there is a RelOptKind for "dead" relations, which are base rels - * that we have proven we don't need to join after all. - * * Parts of this data structure are specific to various scan and join * mechanisms. It didn't seem worth creating new node types for them. * - * relids - Set of base-relation identifiers; it is a base relation - * if there is just one, a join relation if more than one + * relids - Set of relation identifiers (RT indexes). This is a base + * relation if there is just one, a join relation if more; + * in the join case, RT indexes of any outer joins formed + * at or below this join are included along with baserels * rows - estimated number of tuples in the relation after restriction * clauses have been applied (ie, output rows of a plan for it) * consider_startup - true if there is any value in keeping plain paths for @@ -514,12 +680,13 @@ typedef struct PartitionSchemeData *PartitionScheme; * the attribute is needed as part of final targetlist * attr_widths - cache space for per-attribute width estimates; * zero means not computed yet + * nulling_relids - relids of outer joins that can null this rel * lateral_vars - lateral cross-references of rel, if any (list of * Vars and PlaceHolderVars) * lateral_referencers - relids of rels that reference this one laterally * (includes both direct and indirect lateral references) * indexlist - list of IndexOptInfo nodes for relation's indexes - * (always NIL if it's not a table) + * (always NIL if it's not a table or partitioned table) * pages - number of disk pages in relation (zero if not a table) * tuples - number of tuples in relation (not considering restrictions) * allvisfrac - fraction of disk pages that are marked all-visible @@ -631,6 +798,9 @@ typedef struct PartitionSchemeData *PartitionScheme; * Furthermore, FULL JOINs add extra nullable_partexprs expressions * corresponding to COALESCE expressions of the left and right join columns, * to simplify matching join clauses to those lists. + * + * Not all fields are printed. (In some cases, there is no print support for + * the field type.) *---------- */ @@ -644,8 +814,7 @@ typedef enum RelOptKind RELOPT_OTHER_MEMBER_REL, RELOPT_OTHER_JOINREL, RELOPT_UPPER_REL, - RELOPT_OTHER_UPPER_REL, - RELOPT_DEADREL + RELOPT_OTHER_UPPER_REL } RelOptKind; /* @@ -674,25 +843,43 @@ typedef enum RelOptKind typedef struct RelOptInfo { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; RelOptKind reloptkind; - /* all relations included in this RelOptInfo */ - Relids relids; /* set of base relids (rangetable indexes) */ + /* + * all relations included in this RelOptInfo; set of base + OJ relids + * (rangetable indexes) + */ + Relids relids; - /* size estimates generated by planner */ - Cardinality rows; /* estimated number of result tuples */ + /* + * size estimates generated by planner + */ + /* estimated number of result tuples */ + Cardinality rows; - /* per-relation planner control flags */ - bool consider_startup; /* keep cheap-startup-cost paths? */ - bool consider_param_startup; /* ditto, for parameterized paths? */ - bool consider_parallel; /* consider parallel paths? */ + /* + * per-relation planner control flags + */ + /* keep cheap-startup-cost paths? */ + bool consider_startup; + /* ditto, for parameterized paths? */ + bool consider_param_startup; + /* consider parallel paths? */ + bool consider_parallel; - /* default result targetlist for Paths scanning this relation */ - struct PathTarget *reltarget; /* list of Vars/Exprs, cost, width */ + /* + * default result targetlist for Paths scanning this relation; list of + * Vars/Exprs, cost, width + */ + struct PathTarget *reltarget; - /* materialization information */ + /* + * materialization information + */ List *pathlist; /* Path structures */ List *ppilist; /* ParamPathInfos used in pathlist */ List *partial_pathlist; /* partial Paths */ @@ -701,79 +888,146 @@ typedef struct RelOptInfo struct Path *cheapest_unique_path; List *cheapest_parameterized_paths; - /* parameterization information needed for both base rels and join rels */ - /* (see also lateral_vars and lateral_referencers) */ - Relids direct_lateral_relids; /* rels directly laterally referenced */ - Relids lateral_relids; /* minimum parameterization of rel */ + /* + * parameterization information needed for both base rels and join rels + * (see also lateral_vars and lateral_referencers) + */ + /* rels directly laterally referenced */ + Relids direct_lateral_relids; + /* minimum parameterization of rel */ + Relids lateral_relids; - /* information about a base rel (not set for join rels!) */ + /* + * information about a base rel (not set for join rels!) + */ Index relid; - Oid reltablespace; /* containing tablespace */ - RTEKind rtekind; /* RELATION, SUBQUERY, FUNCTION, etc */ - AttrNumber min_attr; /* smallest attrno of rel (often <0) */ - AttrNumber max_attr; /* largest attrno of rel */ - Relids *attr_needed; /* array indexed [min_attr .. max_attr] */ - int32 *attr_widths; /* array indexed [min_attr .. max_attr] */ - List *lateral_vars; /* LATERAL Vars and PHVs referenced by rel */ - Relids lateral_referencers; /* rels that reference me laterally */ - List *indexlist; /* list of IndexOptInfo */ - List *statlist; /* list of StatisticExtInfo */ - BlockNumber pages; /* size estimates derived from pg_class */ + /* containing tablespace */ + Oid reltablespace; + /* RELATION, SUBQUERY, FUNCTION, etc */ + RTEKind rtekind; + /* smallest attrno of rel (often <0) */ + AttrNumber min_attr; + /* largest attrno of rel */ + AttrNumber max_attr; + /* array indexed [min_attr .. max_attr] */ + Relids *attr_needed pg_node_attr(read_write_ignore); + /* array indexed [min_attr .. max_attr] */ + int32 *attr_widths pg_node_attr(read_write_ignore); + /* relids of outer joins that can null this baserel */ + Relids nulling_relids; + /* LATERAL Vars and PHVs referenced by rel */ + List *lateral_vars; + /* rels that reference this baserel laterally */ + Relids lateral_referencers; + /* list of IndexOptInfo */ + List *indexlist; + /* list of StatisticExtInfo */ + List *statlist; + /* size estimates derived from pg_class */ + BlockNumber pages; Cardinality tuples; double allvisfrac; - Bitmapset *eclass_indexes; /* Indexes in PlannerInfo's eq_classes list of - * ECs that mention this rel */ + /* indexes in PlannerInfo's eq_classes list of ECs that mention this rel */ + Bitmapset *eclass_indexes; PlannerInfo *subroot; /* if subquery */ List *subplan_params; /* if subquery */ - int rel_parallel_workers; /* wanted number of parallel workers */ - uint32 amflags; /* Bitmask of optional features supported by - * the table AM */ - - /* Information about foreign tables and foreign joins */ - Oid serverid; /* identifies server for the table or join */ - Oid userid; /* identifies user to check access as */ - bool useridiscurrent; /* join is only valid for current user */ + /* wanted number of parallel workers */ + int rel_parallel_workers; + /* Bitmask of optional features supported by the table AM */ + uint32 amflags; + + /* + * Information about foreign tables and foreign joins + */ + /* identifies server for the table or join */ + Oid serverid; + /* identifies user to check access as; 0 means to check as current user */ + Oid userid; + /* join is only valid for current user */ + bool useridiscurrent; /* use "struct FdwRoutine" to avoid including fdwapi.h here */ - struct FdwRoutine *fdwroutine; - void *fdw_private; - - /* cache space for remembering if we have proven this relation unique */ - List *unique_for_rels; /* known unique for these other relid - * set(s) */ - List *non_unique_for_rels; /* known not unique for these set(s) */ - - /* used by various scans and joins: */ - List *baserestrictinfo; /* RestrictInfo structures (if base rel) */ - QualCost baserestrictcost; /* cost of evaluating the above */ - Index baserestrict_min_security; /* min security_level found in - * baserestrictinfo */ - List *joininfo; /* RestrictInfo structures for join clauses - * involving this rel */ - bool has_eclass_joins; /* T means joininfo is incomplete */ - - /* used by partitionwise joins: */ - bool consider_partitionwise_join; /* consider partitionwise join - * paths? (if partitioned rel) */ - Relids top_parent_relids; /* Relids of topmost parents (if "other" - * rel) */ - - /* used for partitioned relations: */ - PartitionScheme part_scheme; /* Partitioning scheme */ - int nparts; /* Number of partitions; -1 if not yet set; in - * case of a join relation 0 means it's - * considered unpartitioned */ - struct PartitionBoundInfoData *boundinfo; /* Partition bounds */ - bool partbounds_merged; /* True if partition bounds were created - * by partition_bounds_merge() */ - List *partition_qual; /* Partition constraint, if not the root */ - struct RelOptInfo **part_rels; /* Array of RelOptInfos of partitions, - * stored in the same order as bounds */ - Bitmapset *live_parts; /* Bitmap with members acting as indexes into - * the part_rels[] array to indicate which - * partitions survived partition pruning. */ - Relids all_partrels; /* Relids set of all partition relids */ - List **partexprs; /* Non-nullable partition key expressions */ - List **nullable_partexprs; /* Nullable partition key expressions */ + struct FdwRoutine *fdwroutine pg_node_attr(read_write_ignore); + void *fdw_private pg_node_attr(read_write_ignore); + + /* + * cache space for remembering if we have proven this relation unique + */ + /* known unique for these other relid set(s) */ + List *unique_for_rels; + /* known not unique for these set(s) */ + List *non_unique_for_rels; + + /* + * used by various scans and joins: + */ + /* RestrictInfo structures (if base rel) */ + List *baserestrictinfo; + /* cost of evaluating the above */ + QualCost baserestrictcost; + /* min security_level found in baserestrictinfo */ + Index baserestrict_min_security; + /* RestrictInfo structures for join clauses involving this rel */ + List *joininfo; + /* T means joininfo is incomplete */ + bool has_eclass_joins; + + /* + * used by partitionwise joins: + */ + /* consider partitionwise join paths? (if partitioned rel) */ + bool consider_partitionwise_join; + + /* + * inheritance links, if this is an otherrel (otherwise NULL): + */ + /* Immediate parent relation (dumping it would be too verbose) */ + struct RelOptInfo *parent pg_node_attr(read_write_ignore); + /* Topmost parent relation (dumping it would be too verbose) */ + struct RelOptInfo *top_parent pg_node_attr(read_write_ignore); + /* Relids of topmost parent (redundant, but handy) */ + Relids top_parent_relids; + + /* + * used for partitioned relations: + */ + /* Partitioning scheme */ + PartitionScheme part_scheme pg_node_attr(read_write_ignore); + + /* + * Number of partitions; -1 if not yet set; in case of a join relation 0 + * means it's considered unpartitioned + */ + int nparts; + /* Partition bounds */ + struct PartitionBoundInfoData *boundinfo pg_node_attr(read_write_ignore); + /* True if partition bounds were created by partition_bounds_merge() */ + bool partbounds_merged; + /* Partition constraint, if not the root */ + List *partition_qual; + + /* + * Array of RelOptInfos of partitions, stored in the same order as bounds + * (don't print, too bulky and duplicative) + */ + struct RelOptInfo **part_rels pg_node_attr(read_write_ignore); + + /* + * Bitmap with members acting as indexes into the part_rels[] array to + * indicate which partitions survived partition pruning. + */ + Bitmapset *live_parts; + /* Relids set of all partition relids */ + Relids all_partrels; + + /* + * These arrays are of length partkey->partnatts, which we don't have at + * hand, so don't try to print + */ + + /* Non-nullable partition key expressions */ + List **partexprs pg_node_attr(read_write_ignore); + /* Nullable partition key expressions */ + List **nullable_partexprs pg_node_attr(read_write_ignore); } RelOptInfo; /* @@ -834,60 +1088,104 @@ typedef struct IndexOptInfo IndexOptInfo; struct IndexOptInfo { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; - Oid indexoid; /* OID of the index relation */ - Oid reltablespace; /* tablespace of index (not table) */ - RelOptInfo *rel; /* back-link to index's table */ - - /* index-size statistics (from pg_class and elsewhere) */ - BlockNumber pages; /* number of disk pages in index */ - Cardinality tuples; /* number of index tuples in index */ - int tree_height; /* index tree height, or -1 if unknown */ - - /* index descriptor information */ - int ncolumns; /* number of columns in index */ - int nkeycolumns; /* number of key columns in index */ - int *indexkeys; /* column numbers of index's attributes both - * key and included columns, or 0 */ - Oid *indexcollations; /* OIDs of collations of index columns */ - Oid *opfamily; /* OIDs of operator families for columns */ - Oid *opcintype; /* OIDs of opclass declared input data types */ - Oid *sortopfamily; /* OIDs of btree opfamilies, if orderable */ - bool *reverse_sort; /* is sort order descending? */ - bool *nulls_first; /* do NULLs come first in the sort order? */ - bytea **opclassoptions; /* opclass-specific options for columns */ - bool *canreturn; /* which index cols can be returned in an - * index-only scan? */ - Oid relam; /* OID of the access method (in pg_am) */ - - List *indexprs; /* expressions for non-simple index columns */ - List *indpred; /* predicate if a partial index, else NIL */ - - List *indextlist; /* targetlist representing index columns */ - - List *indrestrictinfo; /* parent relation's baserestrictinfo - * list, less any conditions implied by - * the index's predicate (unless it's a - * target rel, see comments in - * check_index_predicates()) */ - - bool predOK; /* true if index predicate matches query */ - bool unique; /* true if a unique index */ - bool immediate; /* is uniqueness enforced immediately? */ - bool hypothetical; /* true if index doesn't really exist */ - - /* Remaining fields are copied from the index AM's API struct: */ - bool amcanorderbyop; /* does AM support order by operator result? */ - bool amoptionalkey; /* can query omit key for the first column? */ - bool amsearcharray; /* can AM handle ScalarArrayOpExpr quals? */ - bool amsearchnulls; /* can AM search for NULL/NOT NULL entries? */ - bool amhasgettuple; /* does AM have amgettuple interface? */ - bool amhasgetbitmap; /* does AM have amgetbitmap interface? */ - bool amcanparallel; /* does AM support parallel scan? */ - bool amcanmarkpos; /* does AM support mark/restore? */ + /* OID of the index relation */ + Oid indexoid; + /* tablespace of index (not table) */ + Oid reltablespace; + /* back-link to index's table; don't print, else infinite recursion */ + RelOptInfo *rel pg_node_attr(read_write_ignore); + + /* + * index-size statistics (from pg_class and elsewhere) + */ + /* number of disk pages in index */ + BlockNumber pages; + /* number of index tuples in index */ + Cardinality tuples; + /* index tree height, or -1 if unknown */ + int tree_height; + + /* + * index descriptor information + */ + /* number of columns in index */ + int ncolumns; + /* number of key columns in index */ + int nkeycolumns; + + /* + * table column numbers of index's columns (both key and included + * columns), or 0 for expression columns + */ + int *indexkeys pg_node_attr(array_size(ncolumns)); + /* OIDs of collations of index columns */ + Oid *indexcollations pg_node_attr(array_size(nkeycolumns)); + /* OIDs of operator families for columns */ + Oid *opfamily pg_node_attr(array_size(nkeycolumns)); + /* OIDs of opclass declared input data types */ + Oid *opcintype pg_node_attr(array_size(nkeycolumns)); + /* OIDs of btree opfamilies, if orderable. NULL if partitioned index */ + Oid *sortopfamily pg_node_attr(array_size(nkeycolumns)); + /* is sort order descending? or NULL if partitioned index */ + bool *reverse_sort pg_node_attr(array_size(nkeycolumns)); + /* do NULLs come first in the sort order? or NULL if partitioned index */ + bool *nulls_first pg_node_attr(array_size(nkeycolumns)); + /* opclass-specific options for columns */ + bytea **opclassoptions pg_node_attr(read_write_ignore); + /* which index cols can be returned in an index-only scan? */ + bool *canreturn pg_node_attr(array_size(ncolumns)); + /* OID of the access method (in pg_am) */ + Oid relam; + + /* + * expressions for non-simple index columns; redundant to print since we + * print indextlist + */ + List *indexprs pg_node_attr(read_write_ignore); + /* predicate if a partial index, else NIL */ + List *indpred; + + /* targetlist representing index columns */ + List *indextlist; + + /* + * parent relation's baserestrictinfo list, less any conditions implied by + * the index's predicate (unless it's a target rel, see comments in + * check_index_predicates()) + */ + List *indrestrictinfo; + + /* true if index predicate matches query */ + bool predOK; + /* true if a unique index */ + bool unique; + /* is uniqueness enforced immediately? */ + bool immediate; + /* true if index doesn't really exist */ + bool hypothetical; + + /* + * Remaining fields are copied from the index AM's API struct + * (IndexAmRoutine). These fields are not set for partitioned indexes. + */ + bool amcanorderbyop; + bool amoptionalkey; + bool amsearcharray; + bool amsearchnulls; + /* does AM have amgettuple interface? */ + bool amhasgettuple; + /* does AM have amgetbitmap interface? */ + bool amhasgetbitmap; + bool amcanparallel; + /* does AM have ammarkpos interface? */ + bool amcanmarkpos; + /* AM's cost estimator */ /* Rather than include amapi.h here, we declare amcostestimate like this */ - void (*amcostestimate) (); /* AM's cost estimator */ + void (*amcostestimate) () pg_node_attr(read_write_ignore); }; /* @@ -900,21 +1198,39 @@ struct IndexOptInfo */ typedef struct ForeignKeyOptInfo { + pg_node_attr(custom_read_write, no_copy_equal, no_read, no_query_jumble) + NodeTag type; - /* Basic data about the foreign key (fetched from catalogs): */ - Index con_relid; /* RT index of the referencing table */ - Index ref_relid; /* RT index of the referenced table */ - int nkeys; /* number of columns in the foreign key */ - AttrNumber conkey[INDEX_MAX_KEYS]; /* cols in referencing table */ - AttrNumber confkey[INDEX_MAX_KEYS]; /* cols in referenced table */ - Oid conpfeqop[INDEX_MAX_KEYS]; /* PK = FK operator OIDs */ - - /* Derived info about whether FK's equality conditions match the query: */ - int nmatched_ec; /* # of FK cols matched by ECs */ - int nconst_ec; /* # of these ECs that are ec_has_const */ - int nmatched_rcols; /* # of FK cols matched by non-EC rinfos */ - int nmatched_ri; /* total # of non-EC rinfos matched to FK */ + /* + * Basic data about the foreign key (fetched from catalogs): + */ + + /* RT index of the referencing table */ + Index con_relid; + /* RT index of the referenced table */ + Index ref_relid; + /* number of columns in the foreign key */ + int nkeys; + /* cols in referencing table */ + AttrNumber conkey[INDEX_MAX_KEYS] pg_node_attr(array_size(nkeys)); + /* cols in referenced table */ + AttrNumber confkey[INDEX_MAX_KEYS] pg_node_attr(array_size(nkeys)); + /* PK = FK operator OIDs */ + Oid conpfeqop[INDEX_MAX_KEYS] pg_node_attr(array_size(nkeys)); + + /* + * Derived info about whether FK's equality conditions match the query: + */ + + /* # of FK cols matched by ECs */ + int nmatched_ec; + /* # of these ECs that are ec_has_const */ + int nconst_ec; + /* # of FK cols matched by non-EC rinfos */ + int nmatched_rcols; + /* total # of non-EC rinfos matched to FK */ + int nmatched_ri; /* Pointer to eclass matching each column's condition, if there is one */ struct EquivalenceClass *eclass[INDEX_MAX_KEYS]; /* Pointer to eclass member for the referencing Var, if there is one */ @@ -932,21 +1248,69 @@ typedef struct ForeignKeyOptInfo */ typedef struct StatisticExtInfo { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; - Oid statOid; /* OID of the statistics row */ - bool inherit; /* includes child relations */ - RelOptInfo *rel; /* back-link to statistic's table */ - char kind; /* statistics kind of this entry */ - Bitmapset *keys; /* attnums of the columns covered */ - List *exprs; /* expressions */ + /* OID of the statistics row */ + Oid statOid; + + /* includes child relations */ + bool inherit; + + /* back-link to statistic's table; don't print, else infinite recursion */ + RelOptInfo *rel pg_node_attr(read_write_ignore); + + /* statistics kind of this entry */ + char kind; + + /* attnums of the columns covered */ + Bitmapset *keys; + + /* expressions */ + List *exprs; } StatisticExtInfo; +/* + * JoinDomains + * + * A "join domain" defines the scope of applicability of deductions made via + * the EquivalenceClass mechanism. Roughly speaking, a join domain is a set + * of base+OJ relations that are inner-joined together. More precisely, it is + * the set of relations at which equalities deduced from an EquivalenceClass + * can be enforced or should be expected to hold. The topmost JoinDomain + * covers the whole query (so its jd_relids should equal all_query_rels). + * An outer join creates a new JoinDomain that includes all base+OJ relids + * within its nullable side, but (by convention) not the OJ's own relid. + * A FULL join creates two new JoinDomains, one for each side. + * + * Notice that a rel that is below outer join(s) will thus appear to belong + * to multiple join domains. However, any of its Vars that appear in + * EquivalenceClasses belonging to higher join domains will have nullingrel + * bits preventing them from being evaluated at the rel's scan level, so that + * we will not be able to derive enforceable-at-the-rel-scan-level clauses + * from such ECs. We define the join domain relid sets this way so that + * domains can be said to be "higher" or "lower" when one domain relid set + * includes another. + * + * The JoinDomains for a query are computed in deconstruct_jointree. + * We do not copy JoinDomain structs once made, so they can be compared + * for equality by simple pointer equality. + */ +typedef struct JoinDomain +{ + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + + NodeTag type; + + Relids jd_relids; /* all relids contained within the domain */ +} JoinDomain; + /* * EquivalenceClasses * - * Whenever we can determine that a mergejoinable equality clause A = B is - * not delayed by any outer join, we create an EquivalenceClass containing + * Whenever we identify a mergejoinable equality clause A = B that is + * not an outer-join clause, we create an EquivalenceClass containing * the expressions A and B to record this knowledge. If we later find another * equivalence B = C, we add C to the existing EquivalenceClass; this may * require merging two existing EquivalenceClasses. At the end of the qual @@ -960,6 +1324,18 @@ typedef struct StatisticExtInfo * that all or none of the input datatypes are collatable, so that a single * collation value is sufficient.) * + * Strictly speaking, deductions from an EquivalenceClass hold only within + * a "join domain", that is a set of relations that are innerjoined together + * (see JoinDomain above). For the most part we don't need to account for + * this explicitly, because equality clauses from different join domains + * will contain Vars that are not equal() because they have different + * nullingrel sets, and thus we will never falsely merge ECs from different + * join domains. But Var-free (pseudoconstant) expressions lack that safety + * feature. We handle that by marking "const" EC members with the JoinDomain + * of the clause they came from; two nominally-equal const members will be + * considered different if they came from different JoinDomains. This ensures + * no false EquivalenceClass merges will occur. + * * We also use EquivalenceClasses as the base structure for PathKeys, letting * us represent knowledge about different sort orderings being equivalent. * Since every PathKey must reference an EquivalenceClass, we will end up @@ -974,16 +1350,19 @@ typedef struct StatisticExtInfo * entry: consider SELECT random() AS a, random() AS b ... ORDER BY b,a. * So we record the SortGroupRef of the originating sort clause. * - * We allow equality clauses appearing below the nullable side of an outer join - * to form EquivalenceClasses, but these have a slightly different meaning: - * the included values might be all NULL rather than all the same non-null - * values. See src/backend/optimizer/README for more on that point. - * * NB: if ec_merged isn't NULL, this class has been merged into another, and * should be ignored in favor of using the pointed-to class. + * + * NB: EquivalenceClasses are never copied after creation. Therefore, + * copyObject() copies pointers to them as pointers, and equal() compares + * pointers to EquivalenceClasses via pointer equality. This is implemented + * by putting copy_as_scalar and equal_as_scalar attributes on fields that + * are pointers to EquivalenceClasses. The same goes for EquivalenceMembers. */ typedef struct EquivalenceClass { + pg_node_attr(custom_read_write, no_copy_equal, no_read, no_query_jumble) + NodeTag type; List *ec_opfamilies; /* btree operator family OIDs */ @@ -995,7 +1374,6 @@ typedef struct EquivalenceClass * for child members (see below) */ bool ec_has_const; /* any pseudoconstants in ec_members? */ bool ec_has_volatile; /* the (sole) member is a volatile expr */ - bool ec_below_outer_join; /* equivalence applies below an OJ */ bool ec_broken; /* failed to generate needed clauses? */ Index ec_sortref; /* originating sortclause label, or 0 */ Index ec_min_security; /* minimum security_level in ec_sources */ @@ -1004,11 +1382,11 @@ typedef struct EquivalenceClass } EquivalenceClass; /* - * If an EC contains a const and isn't below-outer-join, any PathKey depending - * on it must be redundant, since there's only one possible value of the key. + * If an EC contains a constant, any PathKey depending on it must be + * redundant, since there's only one possible value of the key. */ #define EC_MUST_BE_REDUNDANT(eclass) \ - ((eclass)->ec_has_const && !(eclass)->ec_below_outer_join) + ((eclass)->ec_has_const) /* * EquivalenceMember - one member expression of an EquivalenceClass @@ -1034,14 +1412,18 @@ typedef struct EquivalenceClass */ typedef struct EquivalenceMember { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; Expr *em_expr; /* the expression represented */ Relids em_relids; /* all relids appearing in em_expr */ - Relids em_nullable_relids; /* nullable by lower outer joins */ bool em_is_const; /* expression is pseudoconstant? */ bool em_is_child; /* derived version for a child relation? */ Oid em_datatype; /* the "nominal type" used by the opfamily */ + JoinDomain *em_jdomain; /* join domain containing the source clause */ + /* if em_is_child is true, this links to corresponding EM for top parent */ + struct EquivalenceMember *em_parent pg_node_attr(read_write_ignore); } EquivalenceMember; /* @@ -1063,9 +1445,12 @@ typedef struct EquivalenceMember */ typedef struct PathKey { + pg_node_attr(no_read, no_query_jumble) + NodeTag type; - EquivalenceClass *pk_eclass; /* the value that is ordered */ + /* the value that is ordered */ + EquivalenceClass *pk_eclass pg_node_attr(copy_as_scalar, equal_as_scalar); Oid pk_opfamily; /* btree opfamily defining the ordering */ int pk_strategy; /* sort direction (ASC or DESC) */ bool pk_nulls_first; /* do NULLs come before normal values? */ @@ -1108,13 +1493,24 @@ typedef enum VolatileFunctionStatus */ typedef struct PathTarget { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; - List *exprs; /* list of expressions to be computed */ - Index *sortgrouprefs; /* corresponding sort/group refnos, or 0 */ - QualCost cost; /* cost of evaluating the expressions */ - int width; /* estimated avg width of result tuples */ - VolatileFunctionStatus has_volatile_expr; /* indicates if exprs contain - * any volatile functions. */ + + /* list of expressions to be computed */ + List *exprs; + + /* corresponding sort/group refnos, or 0 */ + Index *sortgrouprefs pg_node_attr(array_size(exprs)); + + /* cost of evaluating the expressions */ + QualCost cost; + + /* estimated avg width of result tuples */ + int width; + + /* indicates if exprs contain any volatile functions */ + VolatileFunctionStatus has_volatile_expr; } PathTarget; /* Convenience macro to get a sort/group refno from a PathTarget */ @@ -1134,15 +1530,24 @@ typedef struct PathTarget * Note: ppi_clauses is only used in ParamPathInfos for base relation paths; * in join cases it's NIL because the set of relevant clauses varies depending * on how the join is formed. The relevant clauses will appear in each - * parameterized join path's joinrestrictinfo list, instead. + * parameterized join path's joinrestrictinfo list, instead. ParamPathInfos + * for append relations don't bother with this, either. + * + * ppi_serials is the set of rinfo_serial numbers for quals that are enforced + * by this path. As with ppi_clauses, it's only maintained for baserels. + * (We could construct it on-the-fly from ppi_clauses, but it seems better + * to materialize a copy.) */ typedef struct ParamPathInfo { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; Relids ppi_req_outer; /* rels supplying parameters used by path */ Cardinality ppi_rows; /* estimated number of result tuples */ List *ppi_clauses; /* join clauses available from outer rels */ + Bitmapset *ppi_serials; /* set of rinfo_serial for enforced quals */ } ParamPathInfo; @@ -1174,29 +1579,58 @@ typedef struct ParamPathInfo * * "pathkeys" is a List of PathKey nodes (see above), describing the sort * ordering of the path's output rows. + * + * We do not support copying Path trees, mainly because the circular linkages + * between RelOptInfo and Path nodes can't be handled easily in a simple + * depth-first traversal. We also don't have read support at the moment. */ typedef struct Path { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; - NodeTag pathtype; /* tag identifying scan/join method */ + /* tag identifying scan/join method */ + NodeTag pathtype; + + /* + * the relation this path can build + * + * We do NOT print the parent, else we'd be in infinite recursion. We can + * print the parent's relids for identification purposes, though. + */ + RelOptInfo *parent pg_node_attr(write_only_relids); - RelOptInfo *parent; /* the relation this path can build */ - PathTarget *pathtarget; /* list of Vars/Exprs, cost, width */ + /* + * list of Vars/Exprs, cost, width + * + * We print the pathtarget only if it's not the default one for the rel. + */ + PathTarget *pathtarget pg_node_attr(write_only_nondefault_pathtarget); - ParamPathInfo *param_info; /* parameterization info, or NULL if none */ + /* + * parameterization info, or NULL if none + * + * We do not print the whole of param_info, since it's printed via + * RelOptInfo; it's sufficient and less cluttering to print just the + * required outer relids. + */ + ParamPathInfo *param_info pg_node_attr(write_only_req_outer); - bool parallel_aware; /* engage parallel-aware logic? */ - bool parallel_safe; /* OK to use as part of parallel plan? */ - int parallel_workers; /* desired # of workers; 0 = not parallel */ + /* engage parallel-aware logic? */ + bool parallel_aware; + /* OK to use as part of parallel plan? */ + bool parallel_safe; + /* desired # of workers; 0 = not parallel */ + int parallel_workers; /* estimated size/costs for path (see costsize.c for more info) */ Cardinality rows; /* estimated number of result tuples */ Cost startup_cost; /* cost expended before fetching any tuples */ Cost total_cost; /* total cost (assuming all tuples fetched) */ - List *pathkeys; /* sort ordering of path's output */ - /* pathkeys is a List of PathKey nodes; see above */ + /* sort ordering of path's output; a List of PathKey nodes; see above */ + List *pathkeys; } Path; /* Macro for extracting a path's parameterization relids; beware double eval */ @@ -1228,12 +1662,9 @@ typedef struct Path * on which index column each ORDER BY can be used with.) * * 'indexscandir' is one of: - * ForwardScanDirection: forward scan of an ordered index + * ForwardScanDirection: forward scan of an index * BackwardScanDirection: backward scan of an ordered index - * NoMovementScanDirection: scan of an unordered index, or don't care - * (The executor doesn't care whether it gets ForwardScanDirection or - * NoMovementScanDirection for an indexscan, but the planner wants to - * distinguish ordered from unordered indexes for building pathkeys.) + * Unordered indexes will always have an indexscandir of ForwardScanDirection. * * 'indextotalcost' and 'indexselectivity' are saved in the IndexPath so that * we need not recompute them when considering using the same index in a @@ -1289,6 +1720,8 @@ typedef struct IndexPath */ typedef struct IndexClause { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; struct RestrictInfo *rinfo; /* original restriction or join clause */ List *indexquals; /* indexqual(s) derived from it */ @@ -1403,15 +1836,18 @@ typedef struct ForeignPath } ForeignPath; /* - * CustomPath represents a table scan done by some out-of-core extension. + * CustomPath represents a table scan or a table join done by some out-of-core + * extension. * * We provide a set of hooks here - which the provider must take care to set * up correctly - to allow extensions to supply their own methods of scanning - * a relation. For example, a provider might provide GPU acceleration, a - * cache-based scan, or some other kind of logic we haven't dreamed up yet. + * a relation or joing relations. For example, a provider might provide GPU + * acceleration, a cache-based scan, or some other kind of logic we haven't + * dreamed up yet. * - * CustomPaths can be injected into the planning process for a relation by - * set_rel_pathlist_hook functions. + * CustomPaths can be injected into the planning process for a base or join + * relation by set_rel_pathlist_hook or set_join_pathlist_hook functions, + * respectively. * * Core code must avoid assuming that the CustomPath is only as large as * the structure declared here; providers are allowed to make it the first @@ -1513,8 +1949,8 @@ typedef struct MemoizePath { Path path; Path *subpath; /* outerpath to cache tuples from */ - List *hash_operators; /* hash operators for each key */ - List *param_exprs; /* cache keys */ + List *hash_operators; /* OIDs of hash equality ops for cache keys */ + List *param_exprs; /* expressions that are cache keys */ bool singlerow; /* true if the cache entry is to be marked as * complete after caching the first record. */ bool binary_mode; /* true when cache key should be compared bit @@ -1584,6 +2020,8 @@ typedef struct GatherMergePath typedef struct JoinPath { + pg_node_attr(abstract) + Path path; JoinType jointype; @@ -1786,6 +2224,8 @@ typedef struct AggPath typedef struct GroupingSetData { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; List *set; /* grouping set as list of sortgrouprefs */ Cardinality numGroups; /* est. number of result groups */ @@ -1793,6 +2233,8 @@ typedef struct GroupingSetData typedef struct RollupData { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; List *groupClause; /* applicable subset of parse->groupClause */ List *gsets; /* lists of integer indexes into groupClause */ @@ -1892,7 +2334,7 @@ typedef struct ModifyTablePath CmdType operation; /* INSERT, UPDATE, DELETE, or MERGE */ bool canSetTag; /* do we set the command tag/es_processed? */ Index nominalRelation; /* Parent RT index for use of EXPLAIN */ - Index rootRelation; /* Root RT index, if target is partitioned */ + Index rootRelation; /* Root RT index, if partitioned/inherited */ bool partColsUpdated; /* some part key in hierarchy updated? */ List *resultRelations; /* integer list of RT indexes */ List *updateColnosLists; /* per-target-table update_colnos lists */ @@ -1930,17 +2372,17 @@ typedef struct LimitPath * If a restriction clause references a single base relation, it will appear * in the baserestrictinfo list of the RelOptInfo for that base rel. * - * If a restriction clause references more than one base rel, it will + * If a restriction clause references more than one base+OJ relation, it will * appear in the joininfo list of every RelOptInfo that describes a strict - * subset of the base rels mentioned in the clause. The joininfo lists are + * subset of the relations mentioned in the clause. The joininfo lists are * used to drive join tree building by selecting plausible join candidates. * The clause cannot actually be applied until we have built a join rel - * containing all the base rels it references, however. + * containing all the relations it references, however. * - * When we construct a join rel that includes all the base rels referenced + * When we construct a join rel that includes all the relations referenced * in a multi-relation restriction clause, we place that clause into the * joinrestrictinfo lists of paths for the join rel, if neither left nor - * right sub-path includes all base rels referenced in the clause. The clause + * right sub-path includes all relations referenced in the clause. The clause * will be applied at that join level, and will not propagate any further up * the join tree. (Note: the "predicate migration" code was once intended to * push restriction clauses up and down the plan tree based on evaluation @@ -1961,12 +2403,14 @@ typedef struct LimitPath * or join to enforce that all members of each EquivalenceClass are in fact * equal in all rows emitted by the scan or join. * - * When dealing with outer joins we have to be very careful about pushing qual - * clauses up and down the tree. An outer join's own JOIN/ON conditions must - * be evaluated exactly at that join node, unless they are "degenerate" - * conditions that reference only Vars from the nullable side of the join. - * Quals appearing in WHERE or in a JOIN above the outer join cannot be pushed - * down below the outer join, if they reference any nullable Vars. + * The clause_relids field lists the base plus outer-join RT indexes that + * actually appear in the clause. required_relids lists the minimum set of + * relids needed to evaluate the clause; while this is often equal to + * clause_relids, it can be more. We will add relids to required_relids when + * we need to force an outer join ON clause to be evaluated exactly at the + * level of the outer join, which is true except when it is a "degenerate" + * condition that references only Vars from the nullable side of the join. + * * RestrictInfo nodes contain a flag to indicate whether a qual has been * pushed down to a lower level than its original syntactic placement in the * join tree would suggest. If an outer join prevents us from pushing a qual @@ -1989,10 +2433,14 @@ typedef struct LimitPath * conditions. Possibly we should rename it to reflect that meaning? But * see also the comments for RINFO_IS_PUSHED_DOWN, below.) * - * RestrictInfo nodes also contain an outerjoin_delayed flag, which is true - * if the clause's applicability must be delayed due to any outer joins - * appearing below it (ie, it has to be postponed to some join level higher - * than the set of relations it actually references). + * There is also an incompatible_relids field, which is a set of outer-join + * relids above which we cannot evaluate the clause (because they might null + * Vars it uses that should not be nulled yet). In principle this could be + * filled in any RestrictInfo as the set of OJ relids that appear above the + * clause and null Vars that it uses. In practice we only bother to populate + * it for "clone" clauses, as it's currently only needed to prevent multiple + * clones of the same clause from being accepted for evaluation at the same + * join level. * * There is also an outer_relids field, which is NULL except for outer join * clauses; for those, it is the set of relids on the outer side of the @@ -2000,15 +2448,6 @@ typedef struct LimitPath * in parameterized scans, since pushing it into the join's outer side would * lead to wrong answers.) * - * There is also a nullable_relids field, which is the set of rels the clause - * references that can be forced null by some outer join below the clause. - * - * outerjoin_delayed = true is subtly different from nullable_relids != NULL: - * a clause might reference some nullable rels and yet not be - * outerjoin_delayed because it also references all the other rels of the - * outer join(s). A clause that is not outerjoin_delayed can be enforced - * anywhere it is computable. - * * To handle security-barrier conditions efficiently, we mark RestrictInfo * nodes with a security_level field, in which higher values identify clauses * coming from less-trusted sources. The exact semantics are that a clause @@ -2051,89 +2490,174 @@ typedef struct LimitPath * or merge or hash join clause, so it's of no interest to large parts of * the planner. * + * When we generate multiple versions of a clause so as to have versions + * that will work after commuting some left joins per outer join identity 3, + * we mark the one with the fewest nullingrels bits with has_clone = true, + * and the rest with is_clone = true. This allows proper filtering of + * these redundant clauses, so that we apply only one version of them. + * * When join clauses are generated from EquivalenceClasses, there may be * several equally valid ways to enforce join equivalence, of which we need * apply only one. We mark clauses of this kind by setting parent_ec to * point to the generating EquivalenceClass. Multiple clauses with the same * parent_ec in the same join are redundant. + * + * Most fields are ignored for equality, since they may not be set yet, and + * should be derivable from the clause anyway. + * + * parent_ec, left_ec, right_ec are not printed, lest it lead to infinite + * recursion in plan tree dump. */ typedef struct RestrictInfo { + pg_node_attr(no_read, no_query_jumble) + NodeTag type; - Expr *clause; /* the represented clause of WHERE or JOIN */ + /* the represented clause of WHERE or JOIN */ + Expr *clause; - bool is_pushed_down; /* true if clause was pushed down in level */ + /* true if clause was pushed down in level */ + bool is_pushed_down; - bool outerjoin_delayed; /* true if delayed by lower outer join */ + /* see comment above */ + bool can_join pg_node_attr(equal_ignore); - bool can_join; /* see comment above */ + /* see comment above */ + bool pseudoconstant pg_node_attr(equal_ignore); - bool pseudoconstant; /* see comment above */ + /* see comment above */ + bool has_clone; + bool is_clone; - bool leakproof; /* true if known to contain no leaked Vars */ + /* true if known to contain no leaked Vars */ + bool leakproof pg_node_attr(equal_ignore); - VolatileFunctionStatus has_volatile; /* to indicate if clause contains - * any volatile functions. */ + /* indicates if clause contains any volatile functions */ + VolatileFunctionStatus has_volatile pg_node_attr(equal_ignore); - Index security_level; /* see comment above */ + /* see comment above */ + Index security_level; - /* The set of relids (varnos) actually referenced in the clause: */ - Relids clause_relids; + /* number of base rels in clause_relids */ + int num_base_rels pg_node_attr(equal_ignore); + + /* The relids (varnos+varnullingrels) actually referenced in the clause: */ + Relids clause_relids pg_node_attr(equal_ignore); /* The set of relids required to evaluate the clause: */ Relids required_relids; + /* Relids above which we cannot evaluate the clause (see comment above) */ + Relids incompatible_relids; + /* If an outer-join clause, the outer-side relations, else NULL: */ Relids outer_relids; - /* The relids used in the clause that are nullable by lower outer joins: */ - Relids nullable_relids; + /* + * Relids in the left/right side of the clause. These fields are set for + * any binary opclause. + */ + Relids left_relids pg_node_attr(equal_ignore); + Relids right_relids pg_node_attr(equal_ignore); + + /* + * Modified clause with RestrictInfos. This field is NULL unless clause + * is an OR clause. + */ + Expr *orclause pg_node_attr(equal_ignore); + + /*---------- + * Serial number of this RestrictInfo. This is unique within the current + * PlannerInfo context, with a few critical exceptions: + * 1. When we generate multiple clones of the same qual condition to + * cope with outer join identity 3, all the clones get the same serial + * number. This reflects that we only want to apply one of them in any + * given plan. + * 2. If we manufacture a commuted version of a qual to use as an index + * condition, it copies the original's rinfo_serial, since it is in + * practice the same condition. + * 3. RestrictInfos made for a child relation copy their parent's + * rinfo_serial. Likewise, when an EquivalenceClass makes a derived + * equality clause for a child relation, it copies the rinfo_serial of + * the matching equality clause for the parent. This allows detection + * of redundant pushed-down equality clauses. + *---------- + */ + int rinfo_serial; + + /* + * Generating EquivalenceClass. This field is NULL unless clause is + * potentially redundant. + */ + EquivalenceClass *parent_ec pg_node_attr(copy_as_scalar, equal_ignore, read_write_ignore); + + /* + * cache space for cost and selectivity + */ - /* These fields are set for any binary opclause: */ - Relids left_relids; /* relids in left side of clause */ - Relids right_relids; /* relids in right side of clause */ + /* eval cost of clause; -1 if not yet set */ + QualCost eval_cost pg_node_attr(equal_ignore); - /* This field is NULL unless clause is an OR clause: */ - Expr *orclause; /* modified clause with RestrictInfos */ + /* selectivity for "normal" (JOIN_INNER) semantics; -1 if not yet set */ + Selectivity norm_selec pg_node_attr(equal_ignore); + /* selectivity for outer join semantics; -1 if not yet set */ + Selectivity outer_selec pg_node_attr(equal_ignore); - /* This field is NULL unless clause is potentially redundant: */ - EquivalenceClass *parent_ec; /* generating EquivalenceClass */ + /* + * opfamilies containing clause operator; valid if clause is + * mergejoinable, else NIL + */ + List *mergeopfamilies pg_node_attr(equal_ignore); - /* cache space for cost and selectivity */ - QualCost eval_cost; /* eval cost of clause; -1 if not yet set */ - Selectivity norm_selec; /* selectivity for "normal" (JOIN_INNER) - * semantics; -1 if not yet set; >1 means a - * redundant clause */ - Selectivity outer_selec; /* selectivity for outer join semantics; -1 if - * not yet set */ + /* + * cache space for mergeclause processing; NULL if not yet set + */ - /* valid if clause is mergejoinable, else NIL */ - List *mergeopfamilies; /* opfamilies containing clause operator */ + /* EquivalenceClass containing lefthand */ + EquivalenceClass *left_ec pg_node_attr(copy_as_scalar, equal_ignore, read_write_ignore); + /* EquivalenceClass containing righthand */ + EquivalenceClass *right_ec pg_node_attr(copy_as_scalar, equal_ignore, read_write_ignore); + /* EquivalenceMember for lefthand */ + EquivalenceMember *left_em pg_node_attr(copy_as_scalar, equal_ignore); + /* EquivalenceMember for righthand */ + EquivalenceMember *right_em pg_node_attr(copy_as_scalar, equal_ignore); - /* cache space for mergeclause processing; NULL if not yet set */ - EquivalenceClass *left_ec; /* EquivalenceClass containing lefthand */ - EquivalenceClass *right_ec; /* EquivalenceClass containing righthand */ - EquivalenceMember *left_em; /* EquivalenceMember for lefthand */ - EquivalenceMember *right_em; /* EquivalenceMember for righthand */ - List *scansel_cache; /* list of MergeScanSelCache structs */ + /* + * List of MergeScanSelCache structs. Those aren't Nodes, so hard to + * copy; instead replace with NIL. That has the effect that copying will + * just reset the cache. Likewise, can't compare or print them. + */ + List *scansel_cache pg_node_attr(copy_as(NIL), equal_ignore, read_write_ignore); - /* transient workspace for use while considering a specific join path */ - bool outer_is_left; /* T = outer var on left, F = on right */ + /* + * transient workspace for use while considering a specific join path; T = + * outer var on left, F = on right + */ + bool outer_is_left pg_node_attr(equal_ignore); - /* valid if clause is hashjoinable, else InvalidOid: */ - Oid hashjoinoperator; /* copy of clause operator */ + /* + * copy of clause operator; valid if clause is hashjoinable, else + * InvalidOid + */ + Oid hashjoinoperator pg_node_attr(equal_ignore); - /* cache space for hashclause processing; -1 if not yet set */ - Selectivity left_bucketsize; /* avg bucketsize of left side */ - Selectivity right_bucketsize; /* avg bucketsize of right side */ - Selectivity left_mcvfreq; /* left side's most common val's freq */ - Selectivity right_mcvfreq; /* right side's most common val's freq */ + /* + * cache space for hashclause processing; -1 if not yet set + */ + /* avg bucketsize of left side */ + Selectivity left_bucketsize pg_node_attr(equal_ignore); + /* avg bucketsize of right side */ + Selectivity right_bucketsize pg_node_attr(equal_ignore); + /* left side's most common val's freq */ + Selectivity left_mcvfreq pg_node_attr(equal_ignore); + /* right side's most common val's freq */ + Selectivity right_mcvfreq pg_node_attr(equal_ignore); /* hash equality operators used for memoize nodes, else InvalidOid */ - Oid left_hasheqoperator; - Oid right_hasheqoperator; + Oid left_hasheqoperator pg_node_attr(equal_ignore); + Oid right_hasheqoperator pg_node_attr(equal_ignore); } RestrictInfo; /* @@ -2176,22 +2700,53 @@ typedef struct MergeScanSelCache * of a plan tree. This is used during planning to represent the contained * expression. At the end of the planning process it is replaced by either * the contained expression or a Var referring to a lower-level evaluation of - * the contained expression. Typically the evaluation occurs below an outer + * the contained expression. Generally the evaluation occurs below an outer * join, and Var references above the outer join might thereby yield NULL * instead of the expression value. * + * phrels and phlevelsup correspond to the varno/varlevelsup fields of a + * plain Var, except that phrels has to be a relid set since the evaluation + * level of a PlaceHolderVar might be a join rather than a base relation. + * Likewise, phnullingrels corresponds to varnullingrels. + * * Although the planner treats this as an expression node type, it is not * recognized by the parser or executor, so we declare it here rather than * in primnodes.h. + * + * We intentionally do not compare phexpr. Two PlaceHolderVars with the + * same ID and levelsup should be considered equal even if the contained + * expressions have managed to mutate to different states. This will + * happen during final plan construction when there are nested PHVs, since + * the inner PHV will get replaced by a Param in some copies of the outer + * PHV. Another way in which it can happen is that initplan sublinks + * could get replaced by differently-numbered Params when sublink folding + * is done. (The end result of such a situation would be some + * unreferenced initplans, which is annoying but not really a problem.) + * On the same reasoning, there is no need to examine phrels. But we do + * need to compare phnullingrels, as that represents effects that are + * external to the original value of the PHV. */ typedef struct PlaceHolderVar { + pg_node_attr(no_query_jumble) + Expr xpr; - Expr *phexpr; /* the represented expression */ - Relids phrels; /* base relids syntactically within expr src */ - Index phid; /* ID for PHV (unique within planner run) */ - Index phlevelsup; /* > 0 if PHV belongs to outer query */ + + /* the represented expression */ + Expr *phexpr pg_node_attr(equal_ignore); + + /* base+OJ relids syntactically within expr src */ + Relids phrels pg_node_attr(equal_ignore); + + /* RT indexes of outer joins that can null PHV's value */ + Relids phnullingrels; + + /* ID for PHV (unique within planner run) */ + Index phid; + + /* > 0 if PHV belongs to outer query */ + Index phlevelsup; } PlaceHolderVar; /* @@ -2210,25 +2765,53 @@ typedef struct PlaceHolderVar * We make SpecialJoinInfos for FULL JOINs even though there is no flexibility * of planning for them, because this simplifies make_join_rel()'s API. * - * min_lefthand and min_righthand are the sets of base relids that must be - * available on each side when performing the special join. lhs_strict is - * true if the special join's condition cannot succeed when the LHS variables - * are all NULL (this means that an outer join can commute with upper-level - * outer joins even if it appears in their RHS). We don't bother to set - * lhs_strict for FULL JOINs, however. - * + * min_lefthand and min_righthand are the sets of base+OJ relids that must be + * available on each side when performing the special join. * It is not valid for either min_lefthand or min_righthand to be empty sets; * if they were, this would break the logic that enforces join order. * - * syn_lefthand and syn_righthand are the sets of base relids that are + * syn_lefthand and syn_righthand are the sets of base+OJ relids that are * syntactically below this special join. (These are needed to help compute * min_lefthand and min_righthand for higher joins.) * - * delay_upper_joins is set true if we detect a pushed-down clause that has - * to be evaluated after this join is formed (because it references the RHS). - * Any outer joins that have such a clause and this join in their RHS cannot - * commute with this join, because that would leave noplace to check the - * pushed-down clause. (We don't track this for FULL JOINs, either.) + * jointype is never JOIN_RIGHT; a RIGHT JOIN is handled by switching + * the inputs to make it a LEFT JOIN. It's never JOIN_RIGHT_ANTI either. + * So the allowed values of jointype in a join_info_list member are only + * LEFT, FULL, SEMI, or ANTI. + * + * ojrelid is the RT index of the join RTE representing this outer join, + * if there is one. It is zero when jointype is INNER or SEMI, and can be + * zero for jointype ANTI (if the join was transformed from a SEMI join). + * One use for this field is that when constructing the output targetlist of a + * join relation that implements this OJ, we add ojrelid to the varnullingrels + * and phnullingrels fields of nullable (RHS) output columns, so that the + * output Vars and PlaceHolderVars correctly reflect the nulling that has + * potentially happened to them. + * + * commute_above_l is filled with the relids of syntactically-higher outer + * joins that have been found to commute with this one per outer join identity + * 3 (see optimizer/README), when this join is in the LHS of the upper join + * (so, this is the lower join in the first form of the identity). + * + * commute_above_r is filled with the relids of syntactically-higher outer + * joins that have been found to commute with this one per outer join identity + * 3, when this join is in the RHS of the upper join (so, this is the lower + * join in the second form of the identity). + * + * commute_below_l is filled with the relids of syntactically-lower outer + * joins that have been found to commute with this one per outer join identity + * 3 and are in the LHS of this join (so, this is the upper join in the first + * form of the identity). + * + * commute_below_r is filled with the relids of syntactically-lower outer + * joins that have been found to commute with this one per outer join identity + * 3 and are in the RHS of this join (so, this is the upper join in the second + * form of the identity). + * + * lhs_strict is true if the special join's condition cannot succeed when the + * LHS variables are all NULL (this means that an outer join can commute with + * upper-level outer joins even if it appears in their RHS). We don't bother + * to set lhs_strict for FULL JOINs, however. * * For a semijoin, we also extract the join operators and their RHS arguments * and set semi_operators, semi_rhs_exprs, semi_can_btree, and semi_can_hash. @@ -2238,18 +2821,14 @@ typedef struct PlaceHolderVar * join planning; but it's helpful to have it available during planning of * parameterized table scans, so we store it in the SpecialJoinInfo structs.) * - * jointype is never JOIN_RIGHT; a RIGHT JOIN is handled by switching - * the inputs to make it a LEFT JOIN. So the allowed values of jointype - * in a join_info_list member are only LEFT, FULL, SEMI, or ANTI. - * * For purposes of join selectivity estimation, we create transient * SpecialJoinInfo structures for regular inner joins; so it is possible * to have jointype == JOIN_INNER in such a structure, even though this is * not allowed within join_info_list. We also create transient * SpecialJoinInfos with jointype == JOIN_INNER for outer joins, since for * cost estimation purposes it is sometimes useful to know the join size under - * plain innerjoin semantics. Note that lhs_strict, delay_upper_joins, and - * of course the semi_xxx fields are not set meaningfully within such structs. + * plain innerjoin semantics. Note that lhs_strict and the semi_xxx fields + * are not set meaningfully within such structs. */ #ifndef HAVE_SPECIALJOININFO_TYPEDEF typedef struct SpecialJoinInfo SpecialJoinInfo; @@ -2258,14 +2837,20 @@ typedef struct SpecialJoinInfo SpecialJoinInfo; struct SpecialJoinInfo { + pg_node_attr(no_read, no_query_jumble) + NodeTag type; - Relids min_lefthand; /* base relids in minimum LHS for join */ - Relids min_righthand; /* base relids in minimum RHS for join */ - Relids syn_lefthand; /* base relids syntactically within LHS */ - Relids syn_righthand; /* base relids syntactically within RHS */ + Relids min_lefthand; /* base+OJ relids in minimum LHS for join */ + Relids min_righthand; /* base+OJ relids in minimum RHS for join */ + Relids syn_lefthand; /* base+OJ relids syntactically within LHS */ + Relids syn_righthand; /* base+OJ relids syntactically within RHS */ JoinType jointype; /* always INNER, LEFT, FULL, SEMI, or ANTI */ + Index ojrelid; /* outer join's RT index; 0 if none */ + Relids commute_above_l; /* commuting OJs above this one, if LHS */ + Relids commute_above_r; /* commuting OJs above this one, if RHS */ + Relids commute_below_l; /* commuting OJs in this one's LHS */ + Relids commute_below_r; /* commuting OJs in this one's RHS */ bool lhs_strict; /* joinclause is strict for some LHS rel */ - bool delay_upper_joins; /* can't commute with upper RHS */ /* Remaining fields are set only for JOIN_SEMI jointype: */ bool semi_can_btree; /* true if semi_operators are all btree */ bool semi_can_hash; /* true if semi_operators are all hash */ @@ -2273,6 +2858,21 @@ struct SpecialJoinInfo List *semi_rhs_exprs; /* righthand-side expressions of these ops */ }; +/* + * Transient outer-join clause info. + * + * We set aside every outer join ON clause that looks mergejoinable, + * and process it specially at the end of qual distribution. + */ +typedef struct OuterJoinClauseInfo +{ + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + + NodeTag type; + RestrictInfo *rinfo; /* a mergejoinable outer-join clause */ + SpecialJoinInfo *sjinfo; /* the outer join's SpecialJoinInfo */ +} OuterJoinClauseInfo; + /* * Append-relation info. * @@ -2305,6 +2905,8 @@ struct SpecialJoinInfo typedef struct AppendRelInfo { + pg_node_attr(no_query_jumble) + NodeTag type; /* @@ -2350,7 +2952,7 @@ typedef struct AppendRelInfo * child column is dropped or doesn't exist in the parent. */ int num_child_cols; /* length of array */ - AttrNumber *parent_colnos; /* array of parent attnos, or zeroes */ + AttrNumber *parent_colnos pg_node_attr(array_size(num_child_cols)); /* * We store the parent table's OID here for inheritance, or InvalidOid for @@ -2380,6 +2982,8 @@ typedef struct AppendRelInfo */ typedef struct RowIdentityVarInfo { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; Var *rowidvar; /* Var to be evaluated (but varno=ROWID_VAR) */ @@ -2416,14 +3020,30 @@ typedef struct RowIdentityVarInfo typedef struct PlaceHolderInfo { + pg_node_attr(no_read, no_query_jumble) + NodeTag type; - Index phid; /* ID for PH (unique within planner run) */ - PlaceHolderVar *ph_var; /* copy of PlaceHolderVar tree */ - Relids ph_eval_at; /* lowest level we can evaluate value at */ - Relids ph_lateral; /* relids of contained lateral refs, if any */ - Relids ph_needed; /* highest level the value is needed at */ - int32 ph_width; /* estimated attribute width */ + /* ID for PH (unique within planner run) */ + Index phid; + + /* + * copy of PlaceHolderVar tree (should be redundant for comparison, could + * be ignored) + */ + PlaceHolderVar *ph_var; + + /* lowest level we can evaluate value at */ + Relids ph_eval_at; + + /* relids of contained lateral refs, if any */ + Relids ph_lateral; + + /* highest level the value is needed at */ + Relids ph_needed; + + /* estimated attribute width */ + int32 ph_width; } PlaceHolderInfo; /* @@ -2433,15 +3053,33 @@ typedef struct PlaceHolderInfo */ typedef struct MinMaxAggInfo { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; - Oid aggfnoid; /* pg_proc Oid of the aggregate */ - Oid aggsortop; /* Oid of its sort operator */ - Expr *target; /* expression we are aggregating on */ - PlannerInfo *subroot; /* modified "root" for planning the subquery */ - Path *path; /* access path for subquery */ - Cost pathcost; /* estimated cost to fetch first row */ - Param *param; /* param for subplan's output */ + /* pg_proc Oid of the aggregate */ + Oid aggfnoid; + + /* Oid of its sort operator */ + Oid aggsortop; + + /* expression we are aggregating on */ + Expr *target; + + /* + * modified "root" for planning the subquery; not printed, too large, not + * interesting enough + */ + PlannerInfo *subroot pg_node_attr(read_write_ignore); + + /* access path for subquery */ + Path *path; + + /* estimated cost to fetch first row */ + Cost pathcost; + + /* param for subplan's output */ + Param *param; } MinMaxAggInfo; /* @@ -2493,6 +3131,8 @@ typedef struct MinMaxAggInfo */ typedef struct PlannerParamItem { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + NodeTag type; Node *item; /* the Var, PlaceHolderVar, or Aggref */ @@ -2671,14 +3311,19 @@ typedef struct JoinCostWorkspace */ typedef struct AggInfo { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + + NodeTag type; + /* - * Link to an Aggref expr this state value is for. + * List of Aggref exprs that this state value is for. * - * There can be multiple identical Aggref's sharing the same per-agg. This - * points to the first one of them. + * There will always be at least one, but there can be multiple identical + * Aggref's sharing the same per-agg. */ - Aggref *representative_aggref; + List *aggrefs; + /* Transition state number for this aggregate */ int transno; /* @@ -2687,9 +3332,8 @@ typedef struct AggInfo */ bool shareable; - /* Oid of the final function or InvalidOid */ + /* Oid of the final function, or InvalidOid if none */ Oid finalfn_oid; - } AggInfo; /* @@ -2701,34 +3345,40 @@ typedef struct AggInfo */ typedef struct AggTransInfo { + pg_node_attr(no_copy_equal, no_read, no_query_jumble) + + NodeTag type; + + /* Inputs for this transition state */ List *args; Expr *aggfilter; /* Oid of the state transition function */ Oid transfn_oid; - /* Oid of the serialization function or InvalidOid */ + /* Oid of the serialization function, or InvalidOid if none */ Oid serialfn_oid; - /* Oid of the deserialization function or InvalidOid */ + /* Oid of the deserialization function, or InvalidOid if none */ Oid deserialfn_oid; - /* Oid of the combine function or InvalidOid */ + /* Oid of the combine function, or InvalidOid if none */ Oid combinefn_oid; /* Oid of state value's datatype */ Oid aggtranstype; + + /* Additional data about transtype */ int32 aggtranstypmod; int transtypeLen; bool transtypeByVal; + + /* Space-consumption estimate */ int32 aggtransspace; - /* - * initial value from pg_aggregate entry - */ - Datum initValue; + /* Initial value from pg_aggregate entry */ + Datum initValue pg_node_attr(read_write_ignore); bool initValueIsNull; - } AggTransInfo; #endif /* PATHNODES_H */ diff --git a/parser/include/nodes/pg_list.h b/parser/include/nodes/pg_list.h index 5a43290a..529a382d 100644 --- a/parser/include/nodes/pg_list.h +++ b/parser/include/nodes/pg_list.h @@ -15,19 +15,21 @@ * Non-empty lists have a header, which will not be relocated as long as the * list remains non-empty, and an expansible data array. * - * We support three types of lists: + * We support four types of lists: * * T_List: lists of pointers * (in practice usually pointers to Nodes, but not always; * declared as "void *" to minimize casting annoyances) * T_IntList: lists of integers * T_OidList: lists of Oids + * T_XidList: lists of TransactionIds + * (the XidList infrastructure is less complete than the other cases) * - * (At the moment, ints and Oids are the same size, but they may not - * always be so; try to be careful to maintain the distinction.) + * (At the moment, ints, Oids, and XIDs are the same size, but they may not + * always be so; be careful to use the appropriate list type for your data.) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/pg_list.h @@ -45,11 +47,12 @@ typedef union ListCell void *ptr_value; int int_value; Oid oid_value; + TransactionId xid_value; } ListCell; typedef struct List { - NodeTag type; /* T_List, T_IntList, or T_OidList */ + NodeTag type; /* T_List, T_IntList, T_OidList, or T_XidList */ int length; /* number of elements currently present */ int max_length; /* allocated length of elements[] */ ListCell *elements; /* re-allocatable array of cells */ @@ -169,6 +172,7 @@ list_length(const List *l) #define lfirst(lc) ((lc)->ptr_value) #define lfirst_int(lc) ((lc)->int_value) #define lfirst_oid(lc) ((lc)->oid_value) +#define lfirst_xid(lc) ((lc)->xid_value) #define lfirst_node(type,lc) castNode(type, lfirst(lc)) #define linitial(l) lfirst(list_nth_cell(l, 0)) @@ -194,6 +198,7 @@ list_length(const List *l) #define llast(l) lfirst(list_last_cell(l)) #define llast_int(l) lfirst_int(list_last_cell(l)) #define llast_oid(l) lfirst_oid(list_last_cell(l)) +#define llast_xid(l) lfirst_xid(list_last_cell(l)) #define llast_node(type,l) castNode(type, llast(l)) /* @@ -202,6 +207,7 @@ list_length(const List *l) #define list_make_ptr_cell(v) ((ListCell) {.ptr_value = (v)}) #define list_make_int_cell(v) ((ListCell) {.int_value = (v)}) #define list_make_oid_cell(v) ((ListCell) {.oid_value = (v)}) +#define list_make_xid_cell(v) ((ListCell) {.xid_value = (v)}) #define list_make1(x1) \ list_make1_impl(T_List, list_make_ptr_cell(x1)) @@ -248,6 +254,21 @@ list_length(const List *l) list_make_oid_cell(x3), list_make_oid_cell(x4), \ list_make_oid_cell(x5)) +#define list_make1_xid(x1) \ + list_make1_impl(T_XidList, list_make_xid_cell(x1)) +#define list_make2_xid(x1,x2) \ + list_make2_impl(T_XidList, list_make_xid_cell(x1), list_make_xid_cell(x2)) +#define list_make3_xid(x1,x2,x3) \ + list_make3_impl(T_XidList, list_make_xid_cell(x1), list_make_xid_cell(x2), \ + list_make_xid_cell(x3)) +#define list_make4_xid(x1,x2,x3,x4) \ + list_make4_impl(T_XidList, list_make_xid_cell(x1), list_make_xid_cell(x2), \ + list_make_xid_cell(x3), list_make_xid_cell(x4)) +#define list_make5_xid(x1,x2,x3,x4,x5) \ + list_make5_impl(T_XidList, list_make_xid_cell(x1), list_make_xid_cell(x2), \ + list_make_xid_cell(x3), list_make_xid_cell(x4), \ + list_make_xid_cell(x5)) + /* * Locate the n'th cell (counting from 0) of the list. * It is an assertion failure if there is no such cell. @@ -539,6 +560,7 @@ extern List *list_make5_impl(NodeTag t, ListCell datum1, ListCell datum2, extern pg_nodiscard List *lappend(List *list, void *datum); extern pg_nodiscard List *lappend_int(List *list, int datum); extern pg_nodiscard List *lappend_oid(List *list, Oid datum); +extern pg_nodiscard List *lappend_xid(List *list, TransactionId datum); extern pg_nodiscard List *list_insert_nth(List *list, int pos, void *datum); extern pg_nodiscard List *list_insert_nth_int(List *list, int pos, int datum); @@ -557,6 +579,7 @@ extern bool list_member(const List *list, const void *datum); extern bool list_member_ptr(const List *list, const void *datum); extern bool list_member_int(const List *list, int datum); extern bool list_member_oid(const List *list, Oid datum); +extern bool list_member_xid(const List *list, TransactionId datum); extern pg_nodiscard List *list_delete(List *list, void *datum); extern pg_nodiscard List *list_delete_ptr(List *list, void *datum); @@ -598,9 +621,9 @@ extern void list_deduplicate_oid(List *list); extern void list_free(List *list); extern void list_free_deep(List *list); -extern pg_nodiscard List *list_copy(const List *list); +extern pg_nodiscard List *list_copy(const List *oldlist); extern pg_nodiscard List *list_copy_head(const List *oldlist, int len); -extern pg_nodiscard List *list_copy_tail(const List *list, int nskip); +extern pg_nodiscard List *list_copy_tail(const List *oldlist, int nskip); extern pg_nodiscard List *list_copy_deep(const List *oldlist); typedef int (*list_sort_comparator) (const ListCell *a, const ListCell *b); diff --git a/parser/include/nodes/plannodes.h b/parser/include/nodes/plannodes.h index 493a2a9e..d64fe6a3 100644 --- a/parser/include/nodes/plannodes.h +++ b/parser/include/nodes/plannodes.h @@ -4,7 +4,7 @@ * definitions for query plan nodes * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/plannodes.h @@ -16,6 +16,7 @@ #include "access/sdir.h" #include "access/stratnum.h" +#include "common/relpath.h" #include "lib/stringinfo.h" #include "nodes/bitmapset.h" #include "nodes/lockoptions.h" @@ -38,10 +39,15 @@ * nodes; in such cases, commandType == CMD_UTILITY, the statement itself * is in the utilityStmt field, and the rest of the struct is mostly dummy. * (We do use canSetTag, stmt_location, stmt_len, and possibly queryId.) + * + * PlannedStmt, as well as all varieties of Plan, do not support equal(), + * not because it's not sensible but because we currently have no need. * ---------------- */ typedef struct PlannedStmt { + pg_node_attr(no_equal, no_query_jumble) + NodeTag type; CmdType commandType; /* select|insert|update|delete|merge|utility */ @@ -66,6 +72,9 @@ typedef struct PlannedStmt List *rtable; /* list of RangeTblEntry nodes */ + List *permInfos; /* list of RTEPermissionInfo nodes for rtable + * entries needing one */ + /* rtable indexes of target relations for INSERT/UPDATE/DELETE/MERGE */ List *resultRelations; /* integer list of RT indexes, or NIL */ @@ -110,6 +119,8 @@ typedef struct PlannedStmt */ typedef struct Plan { + pg_node_attr(abstract, no_equal, no_query_jumble) + NodeTag type; /* @@ -205,11 +216,12 @@ typedef struct ProjectSet * Apply rows produced by outer plan to result table(s), * by inserting, updating, or deleting. * - * If the originally named target table is a partitioned table, both - * nominalRelation and rootRelation contain the RT index of the partition - * root, which is not otherwise mentioned in the plan. Otherwise rootRelation - * is zero. However, nominalRelation will always be set, as it's the rel that - * EXPLAIN should claim is the INSERT/UPDATE/DELETE/MERGE target. + * If the originally named target table is a partitioned table or inheritance + * tree, both nominalRelation and rootRelation contain the RT index of the + * partition root or appendrel RTE, which is not otherwise mentioned in the + * plan. Otherwise rootRelation is zero. However, nominalRelation will + * always be set, as it's the rel that EXPLAIN should claim is the + * INSERT/UPDATE/DELETE/MERGE target. * * Note that rowMarks and epqParam are presumed to be valid for all the * table(s); they can't contain any info that varies across tables. @@ -221,7 +233,7 @@ typedef struct ModifyTable CmdType operation; /* INSERT, UPDATE, DELETE, or MERGE */ bool canSetTag; /* do we set the command tag/es_processed? */ Index nominalRelation; /* Parent RT index for use of EXPLAIN */ - Index rootRelation; /* Root RT index, if target is partitioned */ + Index rootRelation; /* Root RT index, if partitioned/inherited */ bool partColsUpdated; /* some part key in hierarchy updated? */ List *resultRelations; /* integer list of RT indexes */ List *updateColnosLists; /* per-target-table update_colnos lists */ @@ -274,14 +286,29 @@ typedef struct Append typedef struct MergeAppend { Plan plan; - Bitmapset *apprelids; /* RTIs of appendrel(s) formed by this node */ + + /* RTIs of appendrel(s) formed by this node */ + Bitmapset *apprelids; + List *mergeplans; + /* these fields are just like the sort-key info in struct Sort: */ - int numCols; /* number of sort-key columns */ - AttrNumber *sortColIdx; /* their indexes in the target list */ - Oid *sortOperators; /* OIDs of operators to sort them by */ - Oid *collations; /* OIDs of collations */ - bool *nullsFirst; /* NULLS FIRST/LAST directions */ + + /* number of sort-key columns */ + int numCols; + + /* their indexes in the target list */ + AttrNumber *sortColIdx pg_node_attr(array_size(numCols)); + + /* OIDs of operators to sort them by */ + Oid *sortOperators pg_node_attr(array_size(numCols)); + + /* OIDs of collations */ + Oid *collations pg_node_attr(array_size(numCols)); + + /* NULLS FIRST/LAST directions */ + bool *nullsFirst pg_node_attr(array_size(numCols)); + /* Info for run-time subplan pruning; NULL if we're not doing that */ struct PartitionPruneInfo *part_prune_info; } MergeAppend; @@ -297,14 +324,24 @@ typedef struct MergeAppend typedef struct RecursiveUnion { Plan plan; - int wtParam; /* ID of Param representing work table */ + + /* ID of Param representing work table */ + int wtParam; + /* Remaining fields are zero/null in UNION ALL case */ - int numCols; /* number of columns to check for - * duplicate-ness */ - AttrNumber *dupColIdx; /* their indexes in the target list */ - Oid *dupOperators; /* equality operators to compare with */ - Oid *dupCollations; - long numGroups; /* estimated number of groups in input */ + + /* number of columns to check for duplicate-ness */ + int numCols; + + /* their indexes in the target list */ + AttrNumber *dupColIdx pg_node_attr(array_size(numCols)); + + /* equality operators to compare with */ + Oid *dupOperators pg_node_attr(array_size(numCols)); + Oid *dupCollations pg_node_attr(array_size(numCols)); + + /* estimated number of groups in input */ + long numGroups; } RecursiveUnion; /* ---------------- @@ -339,10 +376,14 @@ typedef struct BitmapOr /* * ========== * Scan nodes + * + * Scan is an abstract type that all relation scan plan types inherit from. * ========== */ typedef struct Scan { + pg_node_attr(abstract) + Plan plan; Index scanrelid; /* relid is index into the range table */ } Scan; @@ -652,6 +693,7 @@ typedef struct WorkTableScan * When the plan node represents a foreign join, scan.scanrelid is zero and * fs_relids must be consulted to identify the join relation. (fs_relids * is valid for simple scans as well, but will always match scan.scanrelid.) + * fs_relids includes outer joins; fs_base_relids does not. * * If the FDW's PlanDirectModify() callback decides to repurpose a ForeignScan * node to perform the UPDATE or DELETE operation directly in the remote @@ -666,12 +708,15 @@ typedef struct ForeignScan Scan scan; CmdType operation; /* SELECT/INSERT/UPDATE/DELETE */ Index resultRelation; /* direct modification target's RT index */ + Oid checkAsUser; /* user to perform the scan as; 0 means to + * check as current user */ Oid fs_server; /* OID of foreign server */ List *fdw_exprs; /* expressions that FDW may evaluate */ List *fdw_private; /* private data for FDW */ List *fdw_scan_tlist; /* optional tlist describing scan tuple */ List *fdw_recheck_quals; /* original quals not in scan.plan.qual */ - Bitmapset *fs_relids; /* RTIs generated by this scan */ + Bitmapset *fs_relids; /* base+OJ RTIs generated by this scan */ + Bitmapset *fs_base_relids; /* base RTIs generated by this scan */ bool fsSystemCol; /* true if any "system column" is needed */ } ForeignScan; @@ -700,6 +745,12 @@ typedef struct CustomScan List *custom_private; /* private data for custom code */ List *custom_scan_tlist; /* optional tlist describing scan tuple */ Bitmapset *custom_relids; /* RTIs generated by this scan */ + + /* + * NOTE: The method field of CustomScan is required to be a pointer to a + * static table of callback functions. So we don't copy the table itself, + * just reference the original one. + */ const struct CustomScanMethods *methods; } CustomScan; @@ -733,6 +784,8 @@ typedef struct CustomScan */ typedef struct Join { + pg_node_attr(abstract) + Plan plan; JoinType jointype; bool inner_unique; @@ -758,6 +811,8 @@ typedef struct NestLoop typedef struct NestLoopParam { + pg_node_attr(no_equal, no_query_jumble) + NodeTag type; int paramno; /* number of the PARAM_EXEC Param to set */ Var *paramval; /* outer-relation Var to assign to Param */ @@ -777,13 +832,26 @@ typedef struct NestLoopParam typedef struct MergeJoin { Join join; - bool skip_mark_restore; /* Can we skip mark/restore calls? */ - List *mergeclauses; /* mergeclauses as expression trees */ + + /* Can we skip mark/restore calls? */ + bool skip_mark_restore; + + /* mergeclauses as expression trees */ + List *mergeclauses; + /* these are arrays, but have the same length as the mergeclauses list: */ - Oid *mergeFamilies; /* per-clause OIDs of btree opfamilies */ - Oid *mergeCollations; /* per-clause OIDs of collations */ - int *mergeStrategies; /* per-clause ordering (ASC or DESC) */ - bool *mergeNullsFirst; /* per-clause nulls ordering */ + + /* per-clause OIDs of btree opfamilies */ + Oid *mergeFamilies pg_node_attr(array_size(mergeclauses)); + + /* per-clause OIDs of collations */ + Oid *mergeCollations pg_node_attr(array_size(mergeclauses)); + + /* per-clause ordering (ASC or DESC) */ + int *mergeStrategies pg_node_attr(array_size(mergeclauses)); + + /* per-clause nulls ordering */ + bool *mergeNullsFirst pg_node_attr(array_size(mergeclauses)); } MergeJoin; /* ---------------- @@ -821,21 +889,38 @@ typedef struct Memoize { Plan plan; - int numKeys; /* size of the two arrays below */ - - Oid *hashOperators; /* hash operators for each key */ - Oid *collations; /* collations for each key */ - List *param_exprs; /* cache keys in the form of exprs containing - * parameters */ - bool singlerow; /* true if the cache entry should be marked as - * complete after we store the first tuple in - * it. */ - bool binary_mode; /* true when cache key should be compared bit - * by bit, false when using hash equality ops */ - uint32 est_entries; /* The maximum number of entries that the - * planner expects will fit in the cache, or 0 - * if unknown */ - Bitmapset *keyparamids; /* paramids from param_exprs */ + /* size of the two arrays below */ + int numKeys; + + /* hash operators for each key */ + Oid *hashOperators pg_node_attr(array_size(numKeys)); + + /* collations for each key */ + Oid *collations pg_node_attr(array_size(numKeys)); + + /* cache keys in the form of exprs containing parameters */ + List *param_exprs; + + /* + * true if the cache entry should be marked as complete after we store the + * first tuple in it. + */ + bool singlerow; + + /* + * true when cache key should be compared bit by bit, false when using + * hash equality ops + */ + bool binary_mode; + + /* + * The maximum number of entries that the planner expects will fit in the + * cache, or 0 if unknown + */ + uint32 est_entries; + + /* paramids from param_exprs */ + Bitmapset *keyparamids; } Memoize; /* ---------------- @@ -845,11 +930,21 @@ typedef struct Memoize typedef struct Sort { Plan plan; - int numCols; /* number of sort-key columns */ - AttrNumber *sortColIdx; /* their indexes in the target list */ - Oid *sortOperators; /* OIDs of operators to sort them by */ - Oid *collations; /* OIDs of collations */ - bool *nullsFirst; /* NULLS FIRST/LAST directions */ + + /* number of sort-key columns */ + int numCols; + + /* their indexes in the target list */ + AttrNumber *sortColIdx pg_node_attr(array_size(numCols)); + + /* OIDs of operators to sort them by */ + Oid *sortOperators pg_node_attr(array_size(numCols)); + + /* OIDs of collations */ + Oid *collations pg_node_attr(array_size(numCols)); + + /* NULLS FIRST/LAST directions */ + bool *nullsFirst pg_node_attr(array_size(numCols)); } Sort; /* ---------------- @@ -871,10 +966,16 @@ typedef struct IncrementalSort typedef struct Group { Plan plan; - int numCols; /* number of grouping columns */ - AttrNumber *grpColIdx; /* their indexes in the target list */ - Oid *grpOperators; /* equality operators to compare with */ - Oid *grpCollations; + + /* number of grouping columns */ + int numCols; + + /* their indexes in the target list */ + AttrNumber *grpColIdx pg_node_attr(array_size(numCols)); + + /* equality operators to compare with */ + Oid *grpOperators pg_node_attr(array_size(numCols)); + Oid *grpCollations pg_node_attr(array_size(numCols)); } Group; /* --------------- @@ -894,18 +995,39 @@ typedef struct Group typedef struct Agg { Plan plan; - AggStrategy aggstrategy; /* basic strategy, see nodes.h */ - AggSplit aggsplit; /* agg-splitting mode, see nodes.h */ - int numCols; /* number of grouping columns */ - AttrNumber *grpColIdx; /* their indexes in the target list */ - Oid *grpOperators; /* equality operators to compare with */ - Oid *grpCollations; - long numGroups; /* estimated number of groups in input */ - uint64 transitionSpace; /* for pass-by-ref transition data */ - Bitmapset *aggParams; /* IDs of Params used in Aggref inputs */ + + /* basic strategy, see nodes.h */ + AggStrategy aggstrategy; + + /* agg-splitting mode, see nodes.h */ + AggSplit aggsplit; + + /* number of grouping columns */ + int numCols; + + /* their indexes in the target list */ + AttrNumber *grpColIdx pg_node_attr(array_size(numCols)); + + /* equality operators to compare with */ + Oid *grpOperators pg_node_attr(array_size(numCols)); + Oid *grpCollations pg_node_attr(array_size(numCols)); + + /* estimated number of groups in input */ + long numGroups; + + /* for pass-by-ref transition data */ + uint64 transitionSpace; + + /* IDs of Params used in Aggref inputs */ + Bitmapset *aggParams; + /* Note: planner provides numGroups & aggParams only in HASHED/MIXED case */ - List *groupingSets; /* grouping sets to use */ - List *chain; /* chained Agg/Sort nodes */ + + /* grouping sets to use */ + List *groupingSets; + + /* chained Agg/Sort nodes */ + List *chain; } Agg; /* ---------------- @@ -915,28 +1037,71 @@ typedef struct Agg typedef struct WindowAgg { Plan plan; - Index winref; /* ID referenced by window functions */ - int partNumCols; /* number of columns in partition clause */ - AttrNumber *partColIdx; /* their indexes in the target list */ - Oid *partOperators; /* equality operators for partition columns */ - Oid *partCollations; /* collations for partition columns */ - int ordNumCols; /* number of columns in ordering clause */ - AttrNumber *ordColIdx; /* their indexes in the target list */ - Oid *ordOperators; /* equality operators for ordering columns */ - Oid *ordCollations; /* collations for ordering columns */ - int frameOptions; /* frame_clause options, see WindowDef */ - Node *startOffset; /* expression for starting bound, if any */ - Node *endOffset; /* expression for ending bound, if any */ - List *runCondition; /* qual to help short-circuit execution */ - List *runConditionOrig; /* runCondition for display in EXPLAIN */ + + /* ID referenced by window functions */ + Index winref; + + /* number of columns in partition clause */ + int partNumCols; + + /* their indexes in the target list */ + AttrNumber *partColIdx pg_node_attr(array_size(partNumCols)); + + /* equality operators for partition columns */ + Oid *partOperators pg_node_attr(array_size(partNumCols)); + + /* collations for partition columns */ + Oid *partCollations pg_node_attr(array_size(partNumCols)); + + /* number of columns in ordering clause */ + int ordNumCols; + + /* their indexes in the target list */ + AttrNumber *ordColIdx pg_node_attr(array_size(ordNumCols)); + + /* equality operators for ordering columns */ + Oid *ordOperators pg_node_attr(array_size(ordNumCols)); + + /* collations for ordering columns */ + Oid *ordCollations pg_node_attr(array_size(ordNumCols)); + + /* frame_clause options, see WindowDef */ + int frameOptions; + + /* expression for starting bound, if any */ + Node *startOffset; + + /* expression for ending bound, if any */ + Node *endOffset; + + /* qual to help short-circuit execution */ + List *runCondition; + + /* runCondition for display in EXPLAIN */ + List *runConditionOrig; + /* these fields are used with RANGE offset PRECEDING/FOLLOWING: */ - Oid startInRangeFunc; /* in_range function for startOffset */ - Oid endInRangeFunc; /* in_range function for endOffset */ - Oid inRangeColl; /* collation for in_range tests */ - bool inRangeAsc; /* use ASC sort order for in_range tests? */ - bool inRangeNullsFirst; /* nulls sort first for in_range tests? */ - bool topWindow; /* false for all apart from the WindowAgg - * that's closest to the root of the plan */ + + /* in_range function for startOffset */ + Oid startInRangeFunc; + + /* in_range function for endOffset */ + Oid endInRangeFunc; + + /* collation for in_range tests */ + Oid inRangeColl; + + /* use ASC sort order for in_range tests? */ + bool inRangeAsc; + + /* nulls sort first for in_range tests? */ + bool inRangeNullsFirst; + + /* + * false for all apart from the WindowAgg that's closest to the root of + * the plan + */ + bool topWindow; } WindowAgg; /* ---------------- @@ -946,10 +1111,18 @@ typedef struct WindowAgg typedef struct Unique { Plan plan; - int numCols; /* number of columns to check for uniqueness */ - AttrNumber *uniqColIdx; /* their indexes in the target list */ - Oid *uniqOperators; /* equality operators to compare with */ - Oid *uniqCollations; /* collations for equality comparisons */ + + /* number of columns to check for uniqueness */ + int numCols; + + /* their indexes in the target list */ + AttrNumber *uniqColIdx pg_node_attr(array_size(numCols)); + + /* equality operators to compare with */ + Oid *uniqOperators pg_node_attr(array_size(numCols)); + + /* collations for equality comparisons */ + Oid *uniqCollations pg_node_attr(array_size(numCols)); } Unique; /* ------------ @@ -981,16 +1154,35 @@ typedef struct Gather typedef struct GatherMerge { Plan plan; - int num_workers; /* planned number of worker processes */ - int rescan_param; /* ID of Param that signals a rescan, or -1 */ + + /* planned number of worker processes */ + int num_workers; + + /* ID of Param that signals a rescan, or -1 */ + int rescan_param; + /* remaining fields are just like the sort-key info in struct Sort */ - int numCols; /* number of sort-key columns */ - AttrNumber *sortColIdx; /* their indexes in the target list */ - Oid *sortOperators; /* OIDs of operators to sort them by */ - Oid *collations; /* OIDs of collations */ - bool *nullsFirst; /* NULLS FIRST/LAST directions */ - Bitmapset *initParam; /* param id's of initplans which are referred - * at gather merge or one of it's child node */ + + /* number of sort-key columns */ + int numCols; + + /* their indexes in the target list */ + AttrNumber *sortColIdx pg_node_attr(array_size(numCols)); + + /* OIDs of operators to sort them by */ + Oid *sortOperators pg_node_attr(array_size(numCols)); + + /* OIDs of collations */ + Oid *collations pg_node_attr(array_size(numCols)); + + /* NULLS FIRST/LAST directions */ + bool *nullsFirst pg_node_attr(array_size(numCols)); + + /* + * param id's of initplans which are referred at gather merge or one of + * it's child node + */ + Bitmapset *initParam; } GatherMerge; /* ---------------- @@ -1024,16 +1216,31 @@ typedef struct Hash typedef struct SetOp { Plan plan; - SetOpCmd cmd; /* what to do, see nodes.h */ - SetOpStrategy strategy; /* how to do it, see nodes.h */ - int numCols; /* number of columns to check for - * duplicate-ness */ - AttrNumber *dupColIdx; /* their indexes in the target list */ - Oid *dupOperators; /* equality operators to compare with */ - Oid *dupCollations; - AttrNumber flagColIdx; /* where is the flag column, if any */ - int firstFlag; /* flag value for first input relation */ - long numGroups; /* estimated number of groups in input */ + + /* what to do, see nodes.h */ + SetOpCmd cmd; + + /* how to do it, see nodes.h */ + SetOpStrategy strategy; + + /* number of columns to check for duplicate-ness */ + int numCols; + + /* their indexes in the target list */ + AttrNumber *dupColIdx pg_node_attr(array_size(numCols)); + + /* equality operators to compare with */ + Oid *dupOperators pg_node_attr(array_size(numCols)); + Oid *dupCollations pg_node_attr(array_size(numCols)); + + /* where is the flag column, if any */ + AttrNumber flagColIdx; + + /* flag value for first input relation */ + int firstFlag; + + /* estimated number of groups in input */ + long numGroups; } SetOp; /* ---------------- @@ -1062,13 +1269,27 @@ typedef struct LockRows typedef struct Limit { Plan plan; - Node *limitOffset; /* OFFSET parameter, or NULL if none */ - Node *limitCount; /* COUNT parameter, or NULL if none */ - LimitOption limitOption; /* limit type */ - int uniqNumCols; /* number of columns to check for similarity */ - AttrNumber *uniqColIdx; /* their indexes in the target list */ - Oid *uniqOperators; /* equality operators to compare with */ - Oid *uniqCollations; /* collations for equality comparisons */ + + /* OFFSET parameter, or NULL if none */ + Node *limitOffset; + + /* COUNT parameter, or NULL if none */ + Node *limitCount; + + /* limit type */ + LimitOption limitOption; + + /* number of columns to check for similarity */ + int uniqNumCols; + + /* their indexes in the target list */ + AttrNumber *uniqColIdx pg_node_attr(array_size(uniqNumCols)); + + /* equality operators to compare with */ + Oid *uniqOperators pg_node_attr(array_size(uniqNumCols)); + + /* collations for equality comparisons */ + Oid *uniqCollations pg_node_attr(array_size(uniqNumCols)); } Limit; @@ -1089,7 +1310,7 @@ typedef struct Limit * doing a separate remote query to lock each selected row is usually pretty * unappealing, so early locking remains a credible design choice for FDWs. * - * When doing UPDATE, DELETE, or SELECT FOR UPDATE/SHARE, we have to uniquely + * When doing UPDATE/DELETE/MERGE/SELECT FOR UPDATE/SHARE, we have to uniquely * identify all the source rows, not only those from the target relations, so * that we can perform EvalPlanQual rechecking at need. For plain tables we * can just fetch the TID, much as for a target relation; this case is @@ -1118,7 +1339,7 @@ typedef enum RowMarkType * PlanRowMark - * plan-time representation of FOR [KEY] UPDATE/SHARE clauses * - * When doing UPDATE, DELETE, or SELECT FOR UPDATE/SHARE, we create a separate + * When doing UPDATE/DELETE/MERGE/SELECT FOR UPDATE/SHARE, we create a separate * PlanRowMark node for each non-target relation in the query. Relations that * are not specified as FOR UPDATE/SHARE are marked ROW_MARK_REFERENCE (if * regular tables or supported foreign tables) or ROW_MARK_COPY (if not). @@ -1154,6 +1375,8 @@ typedef enum RowMarkType */ typedef struct PlanRowMark { + pg_node_attr(no_equal, no_query_jumble) + NodeTag type; Index rti; /* range table index of markable relation */ Index prti; /* range table index of parent relation */ @@ -1198,6 +1421,8 @@ typedef struct PlanRowMark */ typedef struct PartitionPruneInfo { + pg_node_attr(no_equal, no_query_jumble) + NodeTag type; List *prune_infos; Bitmapset *other_subplans; @@ -1222,14 +1447,27 @@ typedef struct PartitionPruneInfo */ typedef struct PartitionedRelPruneInfo { + pg_node_attr(no_equal, no_query_jumble) + NodeTag type; - Index rtindex; /* RT index of partition rel for this level */ - Bitmapset *present_parts; /* Indexes of all partitions which subplans or - * subparts are present for */ - int nparts; /* Length of the following arrays: */ - int *subplan_map; /* subplan index by partition index, or -1 */ - int *subpart_map; /* subpart index by partition index, or -1 */ - Oid *relid_map; /* relation OID by partition index, or 0 */ + + /* RT index of partition rel for this level */ + Index rtindex; + + /* Indexes of all partitions which subplans or subparts are present for */ + Bitmapset *present_parts; + + /* Length of the following arrays: */ + int nparts; + + /* subplan index by partition index, or -1 */ + int *subplan_map pg_node_attr(array_size(nparts)); + + /* subpart index by partition index, or -1 */ + int *subpart_map pg_node_attr(array_size(nparts)); + + /* relation OID by partition index, or 0 */ + Oid *relid_map pg_node_attr(array_size(nparts)); /* * initial_pruning_steps shows how to prune during executor startup (i.e., @@ -1239,8 +1477,9 @@ typedef struct PartitionedRelPruneInfo */ List *initial_pruning_steps; /* List of PartitionPruneStep */ List *exec_pruning_steps; /* List of PartitionPruneStep */ - Bitmapset *execparamids; /* All PARAM_EXEC Param IDs in - * exec_pruning_steps */ + + /* All PARAM_EXEC Param IDs in exec_pruning_steps */ + Bitmapset *execparamids; } PartitionedRelPruneInfo; /* @@ -1251,6 +1490,8 @@ typedef struct PartitionedRelPruneInfo */ typedef struct PartitionPruneStep { + pg_node_attr(abstract, no_equal, no_query_jumble) + NodeTag type; int step_id; } PartitionPruneStep; @@ -1324,6 +1565,8 @@ typedef struct PartitionPruneStepCombine */ typedef struct PlanInvalItem { + pg_node_attr(no_equal, no_query_jumble) + NodeTag type; int cacheId; /* a syscache ID, see utils/syscache.h */ uint32 hashValue; /* hash value of object's cache lookup key */ diff --git a/parser/include/nodes/primnodes.h b/parser/include/nodes/primnodes.h index 3d48dbb4..e1aadc39 100644 --- a/parser/include/nodes/primnodes.h +++ b/parser/include/nodes/primnodes.h @@ -7,7 +7,7 @@ * and join trees. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/primnodes.h @@ -63,14 +63,27 @@ typedef enum OnCommitAction typedef struct RangeVar { NodeTag type; - char *catalogname; /* the catalog (database) name, or NULL */ - char *schemaname; /* the schema name, or NULL */ - char *relname; /* the relation/sequence name */ - bool inh; /* expand rel by inheritance? recursively act - * on children? */ - char relpersistence; /* see RELPERSISTENCE_* in pg_class.h */ - Alias *alias; /* table alias & optional column aliases */ - int location; /* token location, or -1 if unknown */ + + /* the catalog (database) name, or NULL */ + char *catalogname; + + /* the schema name, or NULL */ + char *schemaname; + + /* the relation/sequence name */ + char *relname; + + /* expand rel by inheritance? recursively act on children? */ + bool inh; + + /* see RELPERSISTENCE_* in pg_class.h */ + char relpersistence; + + /* table alias & optional column aliases */ + Alias *alias; + + /* token location, or -1 if unknown */ + int location; } RangeVar; /* @@ -82,19 +95,32 @@ typedef struct RangeVar typedef struct TableFunc { NodeTag type; - List *ns_uris; /* list of namespace URI expressions */ - List *ns_names; /* list of namespace names or NULL */ - Node *docexpr; /* input document expression */ - Node *rowexpr; /* row filter expression */ - List *colnames; /* column names (list of String) */ - List *coltypes; /* OID list of column type OIDs */ - List *coltypmods; /* integer list of column typmods */ - List *colcollations; /* OID list of column collation OIDs */ - List *colexprs; /* list of column filter expressions */ - List *coldefexprs; /* list of column default expressions */ - Bitmapset *notnulls; /* nullability flag for each output column */ - int ordinalitycol; /* counts from 0; -1 if none specified */ - int location; /* token location, or -1 if unknown */ + /* list of namespace URI expressions */ + List *ns_uris pg_node_attr(query_jumble_ignore); + /* list of namespace names or NULL */ + List *ns_names pg_node_attr(query_jumble_ignore); + /* input document expression */ + Node *docexpr; + /* row filter expression */ + Node *rowexpr; + /* column names (list of String) */ + List *colnames pg_node_attr(query_jumble_ignore); + /* OID list of column type OIDs */ + List *coltypes pg_node_attr(query_jumble_ignore); + /* integer list of column typmods */ + List *coltypmods pg_node_attr(query_jumble_ignore); + /* OID list of column collation OIDs */ + List *colcollations pg_node_attr(query_jumble_ignore); + /* list of column filter expressions */ + List *colexprs; + /* list of column default expressions */ + List *coldefexprs pg_node_attr(query_jumble_ignore); + /* nullability flag for each output column */ + Bitmapset *notnulls pg_node_attr(query_jumble_ignore); + /* counts from 0; -1 if none specified */ + int ordinalitycol pg_node_attr(query_jumble_ignore); + /* token location, or -1 if unknown */ + int location; } TableFunc; /* @@ -102,8 +128,10 @@ typedef struct TableFunc * CREATE MATERIALIZED VIEW * * For CREATE MATERIALIZED VIEW, viewQuery is the parsed-but-not-rewritten - * SELECT Query for the view; otherwise it's NULL. (Although it's actually - * Query*, we declare it as Node* to avoid a forward reference.) + * SELECT Query for the view; otherwise it's NULL. This is irrelevant in + * the query jumbling as CreateTableAsStmt already includes a reference to + * its own Query, so ignore it. (Although it's actually Query*, we declare + * it as Node* to avoid a forward reference.) */ typedef struct IntoClause { @@ -115,7 +143,8 @@ typedef struct IntoClause List *options; /* options from WITH clause */ OnCommitAction onCommit; /* what do we do at COMMIT? */ char *tableSpaceName; /* table space to use, or NULL */ - Node *viewQuery; /* materialized view's SELECT query */ + /* materialized view's SELECT query */ + Node *viewQuery pg_node_attr(query_jumble_ignore); bool skipData; /* true for WITH NO DATA */ } IntoClause; @@ -135,6 +164,8 @@ typedef struct IntoClause */ typedef struct Expr { + pg_node_attr(abstract) + NodeTag type; } Expr; @@ -162,6 +193,14 @@ typedef struct Expr * row identity information during UPDATE/DELETE/MERGE. This value should * never be seen outside the planner. * + * varnullingrels is the set of RT indexes of outer joins that can force + * the Var's value to null (at the point where it appears in the query). + * See optimizer/README for discussion of that. + * + * varlevelsup is greater than zero in Vars that represent outer references. + * Note that it affects the meaning of all of varno, varnullingrels, and + * varnosyn, all of which refer to the range table of that query level. + * * In the parser, varnosyn and varattnosyn are either identical to * varno/varattno, or they specify the column's position in an aliased JOIN * RTE that hides the semantic referent RTE's refname. This is a syntactic @@ -186,19 +225,50 @@ typedef struct Expr typedef struct Var { Expr xpr; - int varno; /* index of this var's relation in the range - * table, or INNER_VAR/OUTER_VAR/etc */ - AttrNumber varattno; /* attribute number of this var, or zero for - * all attrs ("whole-row Var") */ - Oid vartype; /* pg_type OID for the type of this var */ - int32 vartypmod; /* pg_attribute typmod value */ - Oid varcollid; /* OID of collation, or InvalidOid if none */ - Index varlevelsup; /* for subquery variables referencing outer - * relations; 0 in a normal var, >0 means N - * levels up */ - Index varnosyn; /* syntactic relation index (0 if unknown) */ - AttrNumber varattnosyn; /* syntactic attribute number */ - int location; /* token location, or -1 if unknown */ + + /* + * index of this var's relation in the range table, or + * INNER_VAR/OUTER_VAR/etc + */ + int varno; + + /* + * attribute number of this var, or zero for all attrs ("whole-row Var") + */ + AttrNumber varattno; + + /* pg_type OID for the type of this var */ + Oid vartype pg_node_attr(query_jumble_ignore); + /* pg_attribute typmod value */ + int32 vartypmod pg_node_attr(query_jumble_ignore); + /* OID of collation, or InvalidOid if none */ + Oid varcollid pg_node_attr(query_jumble_ignore); + + /* + * RT indexes of outer joins that can replace the Var's value with null. + * We can omit varnullingrels in the query jumble, because it's fully + * determined by varno/varlevelsup plus the Var's query location. + */ + Bitmapset *varnullingrels pg_node_attr(query_jumble_ignore); + + /* + * for subquery variables referencing outer relations; 0 in a normal var, + * >0 means N levels up + */ + Index varlevelsup; + + /* + * varnosyn/varattnosyn are ignored for equality, because Vars with + * different syntactic identifiers are semantically the same as long as + * their varno/varattno match. + */ + /* syntactic relation index (0 if unknown) */ + Index varnosyn pg_node_attr(equal_ignore, query_jumble_ignore); + /* syntactic attribute number */ + AttrNumber varattnosyn pg_node_attr(equal_ignore, query_jumble_ignore); + + /* token location, or -1 if unknown */ + int location; } Var; /* @@ -208,22 +278,39 @@ typedef struct Var * must be in non-extended form (4-byte header, no compression or external * references). This ensures that the Const node is self-contained and makes * it more likely that equal() will see logically identical values as equal. + * + * Only the constant type OID is relevant for the query jumbling. */ typedef struct Const { + pg_node_attr(custom_copy_equal, custom_read_write) + Expr xpr; - Oid consttype; /* pg_type OID of the constant's datatype */ - int32 consttypmod; /* typmod value, if any */ - Oid constcollid; /* OID of collation, or InvalidOid if none */ - int constlen; /* typlen of the constant's datatype */ - Datum constvalue; /* the constant's value */ - bool constisnull; /* whether the constant is null (if true, - * constvalue is undefined) */ - bool constbyval; /* whether this datatype is passed by value. - * If true, then all the information is stored - * in the Datum. If false, then the Datum - * contains a pointer to the information. */ - int location; /* token location, or -1 if unknown */ + /* pg_type OID of the constant's datatype */ + Oid consttype; + /* typmod value, if any */ + int32 consttypmod pg_node_attr(query_jumble_ignore); + /* OID of collation, or InvalidOid if none */ + Oid constcollid pg_node_attr(query_jumble_ignore); + /* typlen of the constant's datatype */ + int constlen pg_node_attr(query_jumble_ignore); + /* the constant's value */ + Datum constvalue pg_node_attr(query_jumble_ignore); + /* whether the constant is null (if true, constvalue is undefined) */ + bool constisnull pg_node_attr(query_jumble_ignore); + + /* + * Whether this datatype is passed by value. If true, then all the + * information is stored in the Datum. If false, then the Datum contains + * a pointer to the information. + */ + bool constbyval pg_node_attr(query_jumble_ignore); + + /* + * token location, or -1 if unknown. All constants are tracked as + * locations in query jumbling, to be marked as parameters. + */ + int location pg_node_attr(query_jumble_location); } Const; /* @@ -267,9 +354,12 @@ typedef struct Param ParamKind paramkind; /* kind of parameter. See above */ int paramid; /* numeric ID for parameter */ Oid paramtype; /* pg_type OID of parameter's datatype */ - int32 paramtypmod; /* typmod value, if known */ - Oid paramcollid; /* OID of collation, or InvalidOid if none */ - int location; /* token location, or -1 if unknown */ + /* typmod value, if known */ + int32 paramtypmod pg_node_attr(query_jumble_ignore); + /* OID of collation, or InvalidOid if none */ + Oid paramcollid pg_node_attr(query_jumble_ignore); + /* token location, or -1 if unknown */ + int location; } Param; /* @@ -304,6 +394,10 @@ typedef struct Param * replaced with a single argument representing the partial-aggregate * transition values. * + * aggpresorted is set by the query planner for ORDER BY and DISTINCT + * aggregates where the chosen plan provides presorted input for this + * aggregate during execution. + * * aggsplit indicates the expected partial-aggregation mode for the Aggref's * parent plan node. It's always set to AGGSPLIT_SIMPLE in the parser, but * the planner might change it to something else. We use this mainly as @@ -316,30 +410,79 @@ typedef struct Param * and can share the result. Aggregates with same 'transno' but different * 'aggno' can share the same transition state, only the final function needs * to be called separately. + * + * Information related to collations, transition types and internal states + * are irrelevant for the query jumbling. */ typedef struct Aggref { Expr xpr; - Oid aggfnoid; /* pg_proc Oid of the aggregate */ - Oid aggtype; /* type Oid of result of the aggregate */ - Oid aggcollid; /* OID of collation of result */ - Oid inputcollid; /* OID of collation that function should use */ - Oid aggtranstype; /* type Oid of aggregate's transition value */ - List *aggargtypes; /* type Oids of direct and aggregated args */ - List *aggdirectargs; /* direct arguments, if an ordered-set agg */ - List *args; /* aggregated arguments and sort expressions */ - List *aggorder; /* ORDER BY (list of SortGroupClause) */ - List *aggdistinct; /* DISTINCT (list of SortGroupClause) */ - Expr *aggfilter; /* FILTER expression, if any */ - bool aggstar; /* true if argument list was really '*' */ - bool aggvariadic; /* true if variadic arguments have been - * combined into an array last argument */ - char aggkind; /* aggregate kind (see pg_aggregate.h) */ - Index agglevelsup; /* > 0 if agg belongs to outer query */ - AggSplit aggsplit; /* expected agg-splitting mode of parent Agg */ - int aggno; /* unique ID within the Agg node */ - int aggtransno; /* unique ID of transition state in the Agg */ - int location; /* token location, or -1 if unknown */ + + /* pg_proc Oid of the aggregate */ + Oid aggfnoid; + + /* type Oid of result of the aggregate */ + Oid aggtype pg_node_attr(query_jumble_ignore); + + /* OID of collation of result */ + Oid aggcollid pg_node_attr(query_jumble_ignore); + + /* OID of collation that function should use */ + Oid inputcollid pg_node_attr(query_jumble_ignore); + + /* + * type Oid of aggregate's transition value; ignored for equal since it + * might not be set yet + */ + Oid aggtranstype pg_node_attr(equal_ignore, query_jumble_ignore); + + /* type Oids of direct and aggregated args */ + List *aggargtypes pg_node_attr(query_jumble_ignore); + + /* direct arguments, if an ordered-set agg */ + List *aggdirectargs; + + /* aggregated arguments and sort expressions */ + List *args; + + /* ORDER BY (list of SortGroupClause) */ + List *aggorder; + + /* DISTINCT (list of SortGroupClause) */ + List *aggdistinct; + + /* FILTER expression, if any */ + Expr *aggfilter; + + /* true if argument list was really '*' */ + bool aggstar pg_node_attr(query_jumble_ignore); + + /* + * true if variadic arguments have been combined into an array last + * argument + */ + bool aggvariadic pg_node_attr(query_jumble_ignore); + + /* aggregate kind (see pg_aggregate.h) */ + char aggkind pg_node_attr(query_jumble_ignore); + + /* aggregate input already sorted */ + bool aggpresorted pg_node_attr(equal_ignore, query_jumble_ignore); + + /* > 0 if agg belongs to outer query */ + Index agglevelsup pg_node_attr(query_jumble_ignore); + + /* expected agg-splitting mode of parent Agg */ + AggSplit aggsplit pg_node_attr(query_jumble_ignore); + + /* unique ID within the Agg node */ + int aggno pg_node_attr(query_jumble_ignore); + + /* unique ID of transition state in the Agg */ + int aggtransno pg_node_attr(query_jumble_ignore); + + /* token location, or -1 if unknown */ + int location; } Aggref; /* @@ -365,34 +508,59 @@ typedef struct Aggref * * In raw parse output we have only the args list; parse analysis fills in the * refs list, and the planner fills in the cols list. + * + * All the fields used as information for an internal state are irrelevant + * for the query jumbling. */ typedef struct GroupingFunc { Expr xpr; - List *args; /* arguments, not evaluated but kept for - * benefit of EXPLAIN etc. */ - List *refs; /* ressortgrouprefs of arguments */ - List *cols; /* actual column positions set by planner */ - Index agglevelsup; /* same as Aggref.agglevelsup */ - int location; /* token location */ + + /* arguments, not evaluated but kept for benefit of EXPLAIN etc. */ + List *args pg_node_attr(query_jumble_ignore); + + /* ressortgrouprefs of arguments */ + List *refs pg_node_attr(equal_ignore); + + /* actual column positions set by planner */ + List *cols pg_node_attr(equal_ignore, query_jumble_ignore); + + /* same as Aggref.agglevelsup */ + Index agglevelsup; + + /* token location */ + int location; } GroupingFunc; /* * WindowFunc + * + * Collation information is irrelevant for the query jumbling, as is the + * internal state information of the node like "winstar" and "winagg". */ typedef struct WindowFunc { Expr xpr; - Oid winfnoid; /* pg_proc Oid of the function */ - Oid wintype; /* type Oid of result of the window function */ - Oid wincollid; /* OID of collation of result */ - Oid inputcollid; /* OID of collation that function should use */ - List *args; /* arguments to the window function */ - Expr *aggfilter; /* FILTER expression, if any */ - Index winref; /* index of associated WindowClause */ - bool winstar; /* true if argument list was really '*' */ - bool winagg; /* is function a simple aggregate? */ - int location; /* token location, or -1 if unknown */ + /* pg_proc Oid of the function */ + Oid winfnoid; + /* type Oid of result of the window function */ + Oid wintype pg_node_attr(query_jumble_ignore); + /* OID of collation of result */ + Oid wincollid pg_node_attr(query_jumble_ignore); + /* OID of collation that function should use */ + Oid inputcollid pg_node_attr(query_jumble_ignore); + /* arguments to the window function */ + List *args; + /* FILTER expression, if any */ + Expr *aggfilter; + /* index of associated WindowClause */ + Index winref; + /* true if argument list was really '*' */ + bool winstar pg_node_attr(query_jumble_ignore); + /* is function a simple aggregate? */ + bool winagg pg_node_attr(query_jumble_ignore); + /* token location, or -1 if unknown */ + int location; } WindowFunc; /* @@ -429,6 +597,8 @@ typedef struct WindowFunc * subscripting logic. Likewise, reftypmod and refcollid will match the * container's properties in a store, but could be different in a fetch. * + * Any internal state data is ignored for the query jumbling. + * * Note: for the cases where a container is returned, if refexpr yields a R/W * expanded container, then the implementation is allowed to modify that * object in-place and return the same object. @@ -436,20 +606,28 @@ typedef struct WindowFunc typedef struct SubscriptingRef { Expr xpr; - Oid refcontainertype; /* type of the container proper */ - Oid refelemtype; /* the container type's pg_type.typelem */ - Oid refrestype; /* type of the SubscriptingRef's result */ - int32 reftypmod; /* typmod of the result */ - Oid refcollid; /* collation of result, or InvalidOid if none */ - List *refupperindexpr; /* expressions that evaluate to upper - * container indexes */ - List *reflowerindexpr; /* expressions that evaluate to lower - * container indexes, or NIL for single - * container element */ - Expr *refexpr; /* the expression that evaluates to a - * container value */ - Expr *refassgnexpr; /* expression for the source value, or NULL if - * fetch */ + /* type of the container proper */ + Oid refcontainertype pg_node_attr(query_jumble_ignore); + /* the container type's pg_type.typelem */ + Oid refelemtype pg_node_attr(query_jumble_ignore); + /* type of the SubscriptingRef's result */ + Oid refrestype pg_node_attr(query_jumble_ignore); + /* typmod of the result */ + int32 reftypmod pg_node_attr(query_jumble_ignore); + /* collation of result, or InvalidOid if none */ + Oid refcollid pg_node_attr(query_jumble_ignore); + /* expressions that evaluate to upper container indexes */ + List *refupperindexpr; + + /* + * expressions that evaluate to lower container indexes, or NIL for single + * container element. + */ + List *reflowerindexpr; + /* the expression that evaluates to a container value */ + Expr *refexpr; + /* expression for the source value, or NULL if fetch */ + Expr *refassgnexpr; } SubscriptingRef; /* @@ -488,20 +666,35 @@ typedef enum CoercionForm /* * FuncExpr - expression node for a function call + * + * Collation information is irrelevant for the query jumbling, only the + * arguments and the function OID matter. */ typedef struct FuncExpr { Expr xpr; - Oid funcid; /* PG_PROC OID of the function */ - Oid funcresulttype; /* PG_TYPE OID of result value */ - bool funcretset; /* true if function returns set */ - bool funcvariadic; /* true if variadic arguments have been - * combined into an array last argument */ - CoercionForm funcformat; /* how to display this function call */ - Oid funccollid; /* OID of collation of result */ - Oid inputcollid; /* OID of collation that function should use */ - List *args; /* arguments to the function */ - int location; /* token location, or -1 if unknown */ + /* PG_PROC OID of the function */ + Oid funcid; + /* PG_TYPE OID of result value */ + Oid funcresulttype pg_node_attr(query_jumble_ignore); + /* true if function returns set */ + bool funcretset pg_node_attr(query_jumble_ignore); + + /* + * true if variadic arguments have been combined into an array last + * argument + */ + bool funcvariadic pg_node_attr(query_jumble_ignore); + /* how to display this function call */ + CoercionForm funcformat pg_node_attr(query_jumble_ignore); + /* OID of collation of result */ + Oid funccollid pg_node_attr(query_jumble_ignore); + /* OID of collation that function should use */ + Oid inputcollid pg_node_attr(query_jumble_ignore); + /* arguments to the function */ + List *args; + /* token location, or -1 if unknown */ + int location; } FuncExpr; /* @@ -521,10 +714,14 @@ typedef struct FuncExpr typedef struct NamedArgExpr { Expr xpr; - Expr *arg; /* the argument expression */ - char *name; /* the name */ - int argnumber; /* argument's number in positional notation */ - int location; /* argument name location, or -1 if unknown */ + /* the argument expression */ + Expr *arg; + /* the name */ + char *name pg_node_attr(query_jumble_ignore); + /* argument's number in positional notation */ + int argnumber; + /* argument name location, or -1 if unknown */ + int location; } NamedArgExpr; /* @@ -535,18 +732,38 @@ typedef struct NamedArgExpr * Note that opfuncid is not necessarily filled in immediately on creation * of the node. The planner makes sure it is valid before passing the node * tree to the executor, but during parsing/planning opfuncid can be 0. + * Therefore, equal() will accept a zero value as being equal to other values. + * + * Internal state information and collation data is irrelevant for the query + * jumbling. */ typedef struct OpExpr { Expr xpr; - Oid opno; /* PG_OPERATOR OID of the operator */ - Oid opfuncid; /* PG_PROC OID of underlying function */ - Oid opresulttype; /* PG_TYPE OID of result value */ - bool opretset; /* true if operator returns set */ - Oid opcollid; /* OID of collation of result */ - Oid inputcollid; /* OID of collation that operator should use */ - List *args; /* arguments to the operator (1 or 2) */ - int location; /* token location, or -1 if unknown */ + + /* PG_OPERATOR OID of the operator */ + Oid opno; + + /* PG_PROC OID of underlying function */ + Oid opfuncid pg_node_attr(equal_ignore_if_zero, query_jumble_ignore); + + /* PG_TYPE OID of result value */ + Oid opresulttype pg_node_attr(query_jumble_ignore); + + /* true if operator returns set */ + bool opretset pg_node_attr(query_jumble_ignore); + + /* OID of collation of result */ + Oid opcollid pg_node_attr(query_jumble_ignore); + + /* OID of collation that operator should use */ + Oid inputcollid pg_node_attr(query_jumble_ignore); + + /* arguments to the operator (1 or 2) */ + List *args; + + /* token location, or -1 if unknown */ + int location; } OpExpr; /* @@ -592,19 +809,41 @@ typedef OpExpr NullIfExpr; * corresponding function and won't be used during execution. For * non-hashtable based NOT INs, negfuncid will be set to InvalidOid. See * convert_saop_to_hashed_saop(). + * + * Similar to OpExpr, opfuncid, hashfuncid, and negfuncid are not necessarily + * filled in right away, so will be ignored for equality if they are not set + * yet. + * + * OID entries of the internal function types are irrelevant for the query + * jumbling, but the operator OID and the arguments are. */ typedef struct ScalarArrayOpExpr { Expr xpr; - Oid opno; /* PG_OPERATOR OID of the operator */ - Oid opfuncid; /* PG_PROC OID of comparison function */ - Oid hashfuncid; /* PG_PROC OID of hash func or InvalidOid */ - Oid negfuncid; /* PG_PROC OID of negator of opfuncid function - * or InvalidOid. See above */ - bool useOr; /* true for ANY, false for ALL */ - Oid inputcollid; /* OID of collation that operator should use */ - List *args; /* the scalar and array operands */ - int location; /* token location, or -1 if unknown */ + + /* PG_OPERATOR OID of the operator */ + Oid opno; + + /* PG_PROC OID of comparison function */ + Oid opfuncid pg_node_attr(equal_ignore_if_zero, query_jumble_ignore); + + /* PG_PROC OID of hash func or InvalidOid */ + Oid hashfuncid pg_node_attr(equal_ignore_if_zero, query_jumble_ignore); + + /* PG_PROC OID of negator of opfuncid function or InvalidOid. See above */ + Oid negfuncid pg_node_attr(equal_ignore_if_zero, query_jumble_ignore); + + /* true for ANY, false for ALL */ + bool useOr; + + /* OID of collation that operator should use */ + Oid inputcollid pg_node_attr(query_jumble_ignore); + + /* the scalar and array operands */ + List *args; + + /* token location, or -1 if unknown */ + int location; } ScalarArrayOpExpr; /* @@ -621,6 +860,8 @@ typedef enum BoolExprType typedef struct BoolExpr { + pg_node_attr(custom_read_write) + Expr xpr; BoolExprType boolop; List *args; /* arguments to this expression */ @@ -697,8 +938,10 @@ typedef struct SubLink SubLinkType subLinkType; /* see above */ int subLinkId; /* ID (1..n); 0 if not MULTIEXPR */ Node *testexpr; /* outer-query test for ALL/ANY/ROWCOMPARE */ - List *operName; /* originally specified operator name */ - Node *subselect; /* subselect as Query* or raw parsetree */ + /* originally specified operator name */ + List *operName pg_node_attr(query_jumble_ignore); + /* subselect as Query* or raw parsetree */ + Node *subselect; int location; /* token location, or -1 if unknown */ } SubLink; @@ -732,9 +975,9 @@ typedef struct SubLink * The values are assigned to the global PARAM_EXEC params indexed by parParam * (the parParam and args lists must have the same ordering). setParam is a * list of the PARAM_EXEC params that are computed by the sub-select, if it - * is an initplan; they are listed in order by sub-select output column - * position. (parParam and setParam are integer Lists, not Bitmapsets, - * because their ordering is significant.) + * is an initplan or MULTIEXPR plan; they are listed in order by sub-select + * output column position. (parParam and setParam are integer Lists, not + * Bitmapsets, because their ordering is significant.) * * Also, the planner computes startup and per-call costs for use of the * SubPlan. Note that these include the cost of the subquery proper, @@ -742,6 +985,8 @@ typedef struct SubLink */ typedef struct SubPlan { + pg_node_attr(no_query_jumble) + Expr xpr; /* Fields copied from original SubLink: */ SubLinkType subLinkType; /* see above */ @@ -767,8 +1012,8 @@ typedef struct SubPlan /* Note: parallel_safe does not consider contents of testexpr or args */ /* Information for passing params into and out of the subselect: */ /* setParam and parParam are lists of integers (param IDs) */ - List *setParam; /* initplan subqueries have to set these - * Params for parent plan */ + List *setParam; /* initplan and MULTIEXPR subqueries have to + * set these Params for parent plan */ List *parParam; /* indices of input Params from parent plan */ List *args; /* exprs to pass as parParam values */ /* Estimated execution costs: */ @@ -789,6 +1034,8 @@ typedef struct SubPlan */ typedef struct AlternativeSubPlan { + pg_node_attr(no_query_jumble) + Expr xpr; List *subplans; /* SubPlan(s) with equivalent results */ } AlternativeSubPlan; @@ -807,10 +1054,12 @@ typedef struct FieldSelect Expr xpr; Expr *arg; /* input expression */ AttrNumber fieldnum; /* attribute number of field to extract */ - Oid resulttype; /* type of the field (result type of this - * node) */ - int32 resulttypmod; /* output typmod (usually -1) */ - Oid resultcollid; /* OID of collation of the field */ + /* type of the field (result type of this node) */ + Oid resulttype pg_node_attr(query_jumble_ignore); + /* output typmod (usually -1) */ + int32 resulttypmod pg_node_attr(query_jumble_ignore); + /* OID of collation of the field */ + Oid resultcollid pg_node_attr(query_jumble_ignore); } FieldSelect; /* ---------------- @@ -836,8 +1085,10 @@ typedef struct FieldStore Expr xpr; Expr *arg; /* input tuple value */ List *newvals; /* new value(s) for field(s) */ - List *fieldnums; /* integer list of field attnums */ - Oid resulttype; /* type of result (same as type of arg) */ + /* integer list of field attnums */ + List *fieldnums pg_node_attr(query_jumble_ignore); + /* type of result (same as type of arg) */ + Oid resulttype pg_node_attr(query_jumble_ignore); /* Like RowExpr, we deliberately omit a typmod and collation here */ } FieldStore; @@ -859,9 +1110,12 @@ typedef struct RelabelType Expr xpr; Expr *arg; /* input expression */ Oid resulttype; /* output type of coercion expression */ - int32 resulttypmod; /* output typmod (usually -1) */ - Oid resultcollid; /* OID of collation, or InvalidOid if none */ - CoercionForm relabelformat; /* how to display this node */ + /* output typmod (usually -1) */ + int32 resulttypmod pg_node_attr(query_jumble_ignore); + /* OID of collation, or InvalidOid if none */ + Oid resultcollid pg_node_attr(query_jumble_ignore); + /* how to display this node */ + CoercionForm relabelformat pg_node_attr(query_jumble_ignore); int location; /* token location, or -1 if unknown */ } RelabelType; @@ -880,8 +1134,10 @@ typedef struct CoerceViaIO Expr *arg; /* input expression */ Oid resulttype; /* output type of coercion */ /* output typmod is not stored, but is presumed -1 */ - Oid resultcollid; /* OID of collation, or InvalidOid if none */ - CoercionForm coerceformat; /* how to display this node */ + /* OID of collation, or InvalidOid if none */ + Oid resultcollid pg_node_attr(query_jumble_ignore); + /* how to display this node */ + CoercionForm coerceformat pg_node_attr(query_jumble_ignore); int location; /* token location, or -1 if unknown */ } CoerceViaIO; @@ -904,9 +1160,12 @@ typedef struct ArrayCoerceExpr Expr *arg; /* input expression (yields an array) */ Expr *elemexpr; /* expression representing per-element work */ Oid resulttype; /* output type of coercion (an array type) */ - int32 resulttypmod; /* output typmod (also element typmod) */ - Oid resultcollid; /* OID of collation, or InvalidOid if none */ - CoercionForm coerceformat; /* how to display this node */ + /* output typmod (also element typmod) */ + int32 resulttypmod pg_node_attr(query_jumble_ignore); + /* OID of collation, or InvalidOid if none */ + Oid resultcollid pg_node_attr(query_jumble_ignore); + /* how to display this node */ + CoercionForm coerceformat pg_node_attr(query_jumble_ignore); int location; /* token location, or -1 if unknown */ } ArrayCoerceExpr; @@ -929,7 +1188,8 @@ typedef struct ConvertRowtypeExpr Expr *arg; /* input expression */ Oid resulttype; /* output type (always a composite type) */ /* Like RowExpr, we deliberately omit a typmod and collation here */ - CoercionForm convertformat; /* how to display this node */ + /* how to display this node */ + CoercionForm convertformat pg_node_attr(query_jumble_ignore); int location; /* token location, or -1 if unknown */ } ConvertRowtypeExpr; @@ -973,8 +1233,10 @@ typedef struct CollateExpr typedef struct CaseExpr { Expr xpr; - Oid casetype; /* type of expression result */ - Oid casecollid; /* OID of collation, or InvalidOid if none */ + /* type of expression result */ + Oid casetype pg_node_attr(query_jumble_ignore); + /* OID of collation, or InvalidOid if none */ + Oid casecollid pg_node_attr(query_jumble_ignore); Expr *arg; /* implicit equality comparison argument */ List *args; /* the arguments (list of WHEN clauses) */ Expr *defresult; /* the default result (ELSE clause) */ @@ -1002,6 +1264,8 @@ typedef struct CaseWhen * see build_coercion_expression(). * * Nested FieldStore/SubscriptingRef assignment expressions in INSERT/UPDATE; * see transformAssignmentIndirection(). + * * Placeholder for intermediate results in some SQL/JSON expression nodes, + * such as JsonConstructorExpr. * * The uses in CaseExpr and ArrayCoerceExpr are safe only to the extent that * there is not any other CaseExpr or ArrayCoerceExpr between the value source @@ -1016,8 +1280,10 @@ typedef struct CaseTestExpr { Expr xpr; Oid typeId; /* type for substituted value */ - int32 typeMod; /* typemod for substituted value */ - Oid collation; /* collation for the substituted value */ + /* typemod for substituted value */ + int32 typeMod pg_node_attr(query_jumble_ignore); + /* collation for the substituted value */ + Oid collation pg_node_attr(query_jumble_ignore); } CaseTestExpr; /* @@ -1031,12 +1297,18 @@ typedef struct CaseTestExpr typedef struct ArrayExpr { Expr xpr; - Oid array_typeid; /* type of expression result */ - Oid array_collid; /* OID of collation, or InvalidOid if none */ - Oid element_typeid; /* common type of array elements */ - List *elements; /* the array elements or sub-arrays */ - bool multidims; /* true if elements are sub-arrays */ - int location; /* token location, or -1 if unknown */ + /* type of expression result */ + Oid array_typeid pg_node_attr(query_jumble_ignore); + /* OID of collation, or InvalidOid if none */ + Oid array_collid pg_node_attr(query_jumble_ignore); + /* common type of array elements */ + Oid element_typeid pg_node_attr(query_jumble_ignore); + /* the array elements or sub-arrays */ + List *elements; + /* true if elements are sub-arrays */ + bool multidims pg_node_attr(query_jumble_ignore); + /* token location, or -1 if unknown */ + int location; } ArrayExpr; /* @@ -1064,7 +1336,9 @@ typedef struct RowExpr { Expr xpr; List *args; /* the fields */ - Oid row_typeid; /* RECORDOID or a composite type's ID */ + + /* RECORDOID or a composite type's ID */ + Oid row_typeid pg_node_attr(query_jumble_ignore); /* * row_typeid cannot be a domain over composite, only plain composite. To @@ -1078,8 +1352,13 @@ typedef struct RowExpr * We don't need to store a collation either. The result type is * necessarily composite, and composite types never have a collation. */ - CoercionForm row_format; /* how to display this node */ - List *colnames; /* list of String, or NIL */ + + /* how to display this node */ + CoercionForm row_format pg_node_attr(query_jumble_ignore); + + /* list of String, or NIL */ + List *colnames pg_node_attr(query_jumble_ignore); + int location; /* token location, or -1 if unknown */ } RowExpr; @@ -1111,12 +1390,19 @@ typedef enum RowCompareType typedef struct RowCompareExpr { Expr xpr; - RowCompareType rctype; /* LT LE GE or GT, never EQ or NE */ - List *opnos; /* OID list of pairwise comparison ops */ - List *opfamilies; /* OID list of containing operator families */ - List *inputcollids; /* OID list of collations for comparisons */ - List *largs; /* the left-hand input arguments */ - List *rargs; /* the right-hand input arguments */ + + /* LT LE GE or GT, never EQ or NE */ + RowCompareType rctype; + /* OID list of pairwise comparison ops */ + List *opnos pg_node_attr(query_jumble_ignore); + /* OID list of containing operator families */ + List *opfamilies pg_node_attr(query_jumble_ignore); + /* OID list of collations for comparisons */ + List *inputcollids pg_node_attr(query_jumble_ignore); + /* the left-hand input arguments */ + List *largs; + /* the right-hand input arguments */ + List *rargs; } RowCompareExpr; /* @@ -1125,10 +1411,14 @@ typedef struct RowCompareExpr typedef struct CoalesceExpr { Expr xpr; - Oid coalescetype; /* type of expression result */ - Oid coalescecollid; /* OID of collation, or InvalidOid if none */ - List *args; /* the arguments */ - int location; /* token location, or -1 if unknown */ + /* type of expression result */ + Oid coalescetype pg_node_attr(query_jumble_ignore); + /* OID of collation, or InvalidOid if none */ + Oid coalescecollid pg_node_attr(query_jumble_ignore); + /* the arguments */ + List *args; + /* token location, or -1 if unknown */ + int location; } CoalesceExpr; /* @@ -1143,12 +1433,18 @@ typedef enum MinMaxOp typedef struct MinMaxExpr { Expr xpr; - Oid minmaxtype; /* common type of arguments and result */ - Oid minmaxcollid; /* OID of collation of result */ - Oid inputcollid; /* OID of collation that function should use */ - MinMaxOp op; /* function to execute */ - List *args; /* the arguments */ - int location; /* token location, or -1 if unknown */ + /* common type of arguments and result */ + Oid minmaxtype pg_node_attr(query_jumble_ignore); + /* OID of collation of result */ + Oid minmaxcollid pg_node_attr(query_jumble_ignore); + /* OID of collation that function should use */ + Oid inputcollid pg_node_attr(query_jumble_ignore); + /* function to execute */ + MinMaxOp op; + /* the arguments */ + List *args; + /* token location, or -1 if unknown */ + int location; } MinMaxExpr; /* @@ -1185,7 +1481,12 @@ typedef struct SQLValueFunction { Expr xpr; SQLValueFunctionOp op; /* which function this is */ - Oid type; /* result type/typmod */ + + /* + * Result type/typmod. Type is fully determined by "op", so no need to + * include this Oid in the query jumbling. + */ + Oid type pg_node_attr(query_jumble_ignore); int32 typmod; int location; /* token location, or -1 if unknown */ } SQLValueFunction; @@ -1209,7 +1510,7 @@ typedef enum XmlExprOp IS_XMLPARSE, /* XMLPARSE(text, is_doc, preserve_ws) */ IS_XMLPI, /* XMLPI(name [, args]) */ IS_XMLROOT, /* XMLROOT(xml, version, standalone) */ - IS_XMLSERIALIZE, /* XMLSERIALIZE(is_document, xmlval) */ + IS_XMLSERIALIZE, /* XMLSERIALIZE(is_document, xmlval, indent) */ IS_DOCUMENT /* xmlval IS DOCUMENT */ } XmlExprOp; @@ -1222,17 +1523,142 @@ typedef enum XmlOptionType typedef struct XmlExpr { Expr xpr; - XmlExprOp op; /* xml function ID */ - char *name; /* name in xml(NAME foo ...) syntaxes */ - List *named_args; /* non-XML expressions for xml_attributes */ - List *arg_names; /* parallel list of String values */ - List *args; /* list of expressions */ - XmlOptionType xmloption; /* DOCUMENT or CONTENT */ - Oid type; /* target type/typmod for XMLSERIALIZE */ - int32 typmod; - int location; /* token location, or -1 if unknown */ + /* xml function ID */ + XmlExprOp op; + /* name in xml(NAME foo ...) syntaxes */ + char *name pg_node_attr(query_jumble_ignore); + /* non-XML expressions for xml_attributes */ + List *named_args; + /* parallel list of String values */ + List *arg_names pg_node_attr(query_jumble_ignore); + /* list of expressions */ + List *args; + /* DOCUMENT or CONTENT */ + XmlOptionType xmloption pg_node_attr(query_jumble_ignore); + /* INDENT option for XMLSERIALIZE */ + bool indent; + /* target type/typmod for XMLSERIALIZE */ + Oid type pg_node_attr(query_jumble_ignore); + int32 typmod pg_node_attr(query_jumble_ignore); + /* token location, or -1 if unknown */ + int location; } XmlExpr; +/* + * JsonEncoding - + * representation of JSON ENCODING clause + */ +typedef enum JsonEncoding +{ + JS_ENC_DEFAULT, /* unspecified */ + JS_ENC_UTF8, + JS_ENC_UTF16, + JS_ENC_UTF32, +} JsonEncoding; + +/* + * JsonFormatType - + * enumeration of JSON formats used in JSON FORMAT clause + */ +typedef enum JsonFormatType +{ + JS_FORMAT_DEFAULT, /* unspecified */ + JS_FORMAT_JSON, /* FORMAT JSON [ENCODING ...] */ + JS_FORMAT_JSONB /* implicit internal format for RETURNING + * jsonb */ +} JsonFormatType; + +/* + * JsonFormat - + * representation of JSON FORMAT clause + */ +typedef struct JsonFormat +{ + NodeTag type; + JsonFormatType format_type; /* format type */ + JsonEncoding encoding; /* JSON encoding */ + int location; /* token location, or -1 if unknown */ +} JsonFormat; + +/* + * JsonReturning - + * transformed representation of JSON RETURNING clause + */ +typedef struct JsonReturning +{ + NodeTag type; + JsonFormat *format; /* output JSON format */ + Oid typid; /* target type Oid */ + int32 typmod; /* target type modifier */ +} JsonReturning; + +/* + * JsonValueExpr - + * representation of JSON value expression (expr [FORMAT JsonFormat]) + * + * The actual value is obtained by evaluating formatted_expr. raw_expr is + * only there for displaying the original user-written expression and is not + * evaluated by ExecInterpExpr() and eval_const_exprs_mutator(). + */ +typedef struct JsonValueExpr +{ + NodeTag type; + Expr *raw_expr; /* raw expression */ + Expr *formatted_expr; /* formatted expression */ + JsonFormat *format; /* FORMAT clause, if specified */ +} JsonValueExpr; + +typedef enum JsonConstructorType +{ + JSCTOR_JSON_OBJECT = 1, + JSCTOR_JSON_ARRAY = 2, + JSCTOR_JSON_OBJECTAGG = 3, + JSCTOR_JSON_ARRAYAGG = 4 +} JsonConstructorType; + +/* + * JsonConstructorExpr - + * wrapper over FuncExpr/Aggref/WindowFunc for SQL/JSON constructors + */ +typedef struct JsonConstructorExpr +{ + Expr xpr; + JsonConstructorType type; /* constructor type */ + List *args; + Expr *func; /* underlying json[b]_xxx() function call */ + Expr *coercion; /* coercion to RETURNING type */ + JsonReturning *returning; /* RETURNING clause */ + bool absent_on_null; /* ABSENT ON NULL? */ + bool unique; /* WITH UNIQUE KEYS? (JSON_OBJECT[AGG] only) */ + int location; +} JsonConstructorExpr; + +/* + * JsonValueType - + * representation of JSON item type in IS JSON predicate + */ +typedef enum JsonValueType +{ + JS_TYPE_ANY, /* IS JSON [VALUE] */ + JS_TYPE_OBJECT, /* IS JSON OBJECT */ + JS_TYPE_ARRAY, /* IS JSON ARRAY */ + JS_TYPE_SCALAR /* IS JSON SCALAR */ +} JsonValueType; + +/* + * JsonIsPredicate - + * representation of IS JSON predicate + */ +typedef struct JsonIsPredicate +{ + NodeTag type; + Node *expr; /* subject expression */ + JsonFormat *format; /* FORMAT clause, if specified */ + JsonValueType item_type; /* JSON item type */ + bool unique_keys; /* check key uniqueness? */ + int location; /* token location, or -1 if unknown */ +} JsonIsPredicate; + /* ---------------- * NullTest * @@ -1262,7 +1688,8 @@ typedef struct NullTest Expr xpr; Expr *arg; /* input expression */ NullTestType nulltesttype; /* IS NULL, IS NOT NULL */ - bool argisrow; /* T to perform field-by-field null checks */ + /* T to perform field-by-field null checks */ + bool argisrow pg_node_attr(query_jumble_ignore); int location; /* token location, or -1 if unknown */ } NullTest; @@ -1302,9 +1729,12 @@ typedef struct CoerceToDomain Expr xpr; Expr *arg; /* input expression */ Oid resulttype; /* domain type ID (result type) */ - int32 resulttypmod; /* output typmod (currently always -1) */ - Oid resultcollid; /* OID of collation, or InvalidOid if none */ - CoercionForm coercionformat; /* how to display this node */ + /* output typmod (currently always -1) */ + int32 resulttypmod pg_node_attr(query_jumble_ignore); + /* OID of collation, or InvalidOid if none */ + Oid resultcollid pg_node_attr(query_jumble_ignore); + /* how to display this node */ + CoercionForm coercionformat pg_node_attr(query_jumble_ignore); int location; /* token location, or -1 if unknown */ } CoerceToDomain; @@ -1320,10 +1750,14 @@ typedef struct CoerceToDomain typedef struct CoerceToDomainValue { Expr xpr; - Oid typeId; /* type for substituted value */ - int32 typeMod; /* typemod for substituted value */ - Oid collation; /* collation for the substituted value */ - int location; /* token location, or -1 if unknown */ + /* type for substituted value */ + Oid typeId; + /* typemod for substituted value */ + int32 typeMod pg_node_attr(query_jumble_ignore); + /* collation for the substituted value */ + Oid collation pg_node_attr(query_jumble_ignore); + /* token location, or -1 if unknown */ + int location; } CoerceToDomainValue; /* @@ -1336,10 +1770,14 @@ typedef struct CoerceToDomainValue typedef struct SetToDefault { Expr xpr; - Oid typeId; /* type for substituted value */ - int32 typeMod; /* typemod for substituted value */ - Oid collation; /* collation for the substituted value */ - int location; /* token location, or -1 if unknown */ + /* type for substituted value */ + Oid typeId; + /* typemod for substituted value */ + int32 typeMod pg_node_attr(query_jumble_ignore); + /* collation for the substituted value */ + Oid collation pg_node_attr(query_jumble_ignore); + /* token location, or -1 if unknown */ + int location; } SetToDefault; /* @@ -1450,15 +1888,20 @@ typedef struct InferenceElem typedef struct TargetEntry { Expr xpr; - Expr *expr; /* expression to evaluate */ - AttrNumber resno; /* attribute number (see notes above) */ - char *resname; /* name of the column (could be NULL) */ - Index ressortgroupref; /* nonzero if referenced by a sort/group - * clause */ - Oid resorigtbl; /* OID of column's source table */ - AttrNumber resorigcol; /* column's number in source table */ - bool resjunk; /* set to true to eliminate the attribute from - * final target list */ + /* expression to evaluate */ + Expr *expr; + /* attribute number (see notes above) */ + AttrNumber resno; + /* name of the column (could be NULL) */ + char *resname pg_node_attr(query_jumble_ignore); + /* nonzero if referenced by a sort/group clause */ + Index ressortgroupref; + /* OID of column's source table */ + Oid resorigtbl pg_node_attr(query_jumble_ignore); + /* column's number in source table */ + AttrNumber resorigcol pg_node_attr(query_jumble_ignore); + /* set to true to eliminate the attribute from final target list */ + bool resjunk pg_node_attr(query_jumble_ignore); } TargetEntry; @@ -1540,11 +1983,16 @@ typedef struct JoinExpr bool isNatural; /* Natural join? Will need to shape table */ Node *larg; /* left subtree */ Node *rarg; /* right subtree */ - List *usingClause; /* USING clause, if any (list of String) */ - Alias *join_using_alias; /* alias attached to USING clause, if any */ - Node *quals; /* qualifiers on join, if any */ - Alias *alias; /* user-written alias clause, if any */ - int rtindex; /* RT index assigned for join, or 0 */ + /* USING clause, if any (list of String) */ + List *usingClause pg_node_attr(query_jumble_ignore); + /* alias attached to USING clause, if any */ + Alias *join_using_alias pg_node_attr(query_jumble_ignore); + /* qualifiers on join, if any */ + Node *quals; + /* user-written alias clause, if any */ + Alias *alias pg_node_attr(query_jumble_ignore); + /* RT index assigned for join, or 0 */ + int rtindex; } JoinExpr; /*---------- diff --git a/parser/include/nodes/print.h b/parser/include/nodes/print.h index be5e2287..3c0473fd 100644 --- a/parser/include/nodes/print.h +++ b/parser/include/nodes/print.h @@ -4,7 +4,7 @@ * definitions for nodes/print.c * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/nodes/print.h diff --git a/parser/include/utils/queryjumble.h b/parser/include/nodes/queryjumble.h similarity index 87% rename from parser/include/utils/queryjumble.h rename to parser/include/nodes/queryjumble.h index 3c2d9bea..7649e095 100644 --- a/parser/include/utils/queryjumble.h +++ b/parser/include/nodes/queryjumble.h @@ -3,21 +3,19 @@ * queryjumble.h * Query normalization and fingerprinting. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * src/include/utils/queryjumble.h + * src/include/nodes/queryjumble.h * *------------------------------------------------------------------------- */ -#ifndef QUERYJUBLE_H -#define QUERYJUBLE_H +#ifndef QUERYJUMBLE_H +#define QUERYJUMBLE_H #include "nodes/parsenodes.h" -#define JUMBLE_SIZE 1024 /* query serialization buffer size */ - /* * Struct for tracking locations/lengths of constants during normalization */ @@ -66,7 +64,7 @@ extern PGDLLIMPORT int compute_query_id; extern const char *CleanQuerytext(const char *query, int *location, int *len); -extern JumbleState *JumbleQuery(Query *query, const char *querytext); +extern JumbleState *JumbleQuery(Query *query); extern void EnableQueryId(void); extern PGDLLIMPORT bool query_id_enabled; diff --git a/parser/include/nodes/replnodes.h b/parser/include/nodes/replnodes.h new file mode 100644 index 00000000..4321ba8f --- /dev/null +++ b/parser/include/nodes/replnodes.h @@ -0,0 +1,111 @@ +/*------------------------------------------------------------------------- + * + * replnodes.h + * definitions for replication grammar parse nodes + * + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/nodes/replnodes.h + * + *------------------------------------------------------------------------- + */ +#ifndef REPLNODES_H +#define REPLNODES_H + +#include "access/xlogdefs.h" +#include "nodes/pg_list.h" + +typedef enum ReplicationKind +{ + REPLICATION_KIND_PHYSICAL, + REPLICATION_KIND_LOGICAL +} ReplicationKind; + + +/* ---------------------- + * IDENTIFY_SYSTEM command + * ---------------------- + */ +typedef struct IdentifySystemCmd +{ + NodeTag type; +} IdentifySystemCmd; + + +/* ---------------------- + * BASE_BACKUP command + * ---------------------- + */ +typedef struct BaseBackupCmd +{ + NodeTag type; + List *options; +} BaseBackupCmd; + + +/* ---------------------- + * CREATE_REPLICATION_SLOT command + * ---------------------- + */ +typedef struct CreateReplicationSlotCmd +{ + NodeTag type; + char *slotname; + ReplicationKind kind; + char *plugin; + bool temporary; + List *options; +} CreateReplicationSlotCmd; + + +/* ---------------------- + * DROP_REPLICATION_SLOT command + * ---------------------- + */ +typedef struct DropReplicationSlotCmd +{ + NodeTag type; + char *slotname; + bool wait; +} DropReplicationSlotCmd; + + +/* ---------------------- + * START_REPLICATION command + * ---------------------- + */ +typedef struct StartReplicationCmd +{ + NodeTag type; + ReplicationKind kind; + char *slotname; + TimeLineID timeline; + XLogRecPtr startpoint; + List *options; +} StartReplicationCmd; + + +/* ---------------------- + * READ_REPLICATION_SLOT command + * ---------------------- + */ +typedef struct ReadReplicationSlotCmd +{ + NodeTag type; + char *slotname; +} ReadReplicationSlotCmd; + + +/* ---------------------- + * TIMELINE_HISTORY command + * ---------------------- + */ +typedef struct TimeLineHistoryCmd +{ + NodeTag type; + TimeLineID timeline; +} TimeLineHistoryCmd; + +#endif /* REPLNODES_H */ diff --git a/parser/include/nodes/supportnodes.h b/parser/include/nodes/supportnodes.h new file mode 100644 index 00000000..4cfa661d --- /dev/null +++ b/parser/include/nodes/supportnodes.h @@ -0,0 +1,346 @@ +/*------------------------------------------------------------------------- + * + * supportnodes.h + * Definitions for planner support functions. + * + * This file defines the API for "planner support functions", which + * are SQL functions (normally written in C) that can be attached to + * another "target" function to give the system additional knowledge + * about the target function. All the current capabilities have to do + * with planning queries that use the target function, though it is + * possible that future extensions will add functionality to be invoked + * by the parser or executor. + * + * A support function must have the SQL signature + * supportfn(internal) returns internal + * The argument is a pointer to one of the Node types defined in this file. + * The result is usually also a Node pointer, though its type depends on + * which capability is being invoked. In all cases, a NULL pointer result + * (that's PG_RETURN_POINTER(NULL), not PG_RETURN_NULL()) indicates that + * the support function cannot do anything useful for the given request. + * Support functions must return a NULL pointer, not fail, if they do not + * recognize the request node type or cannot handle the given case; this + * allows for future extensions of the set of request cases. + * + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/nodes/supportnodes.h + * + *------------------------------------------------------------------------- + */ +#ifndef SUPPORTNODES_H +#define SUPPORTNODES_H + +#include "nodes/plannodes.h" + +struct PlannerInfo; /* avoid including pathnodes.h here */ +struct IndexOptInfo; +struct SpecialJoinInfo; +struct WindowClause; + +/* + * The Simplify request allows the support function to perform plan-time + * simplification of a call to its target function. For example, a varchar + * length coercion that does not decrease the allowed length of its argument + * could be replaced by a RelabelType node, or "x + 0" could be replaced by + * "x". This is invoked during the planner's constant-folding pass, so the + * function's arguments can be presumed already simplified. + * + * The planner's PlannerInfo "root" is typically not needed, but can be + * consulted if it's necessary to obtain info about Vars present in + * the given node tree. Beware that root could be NULL in some usages. + * + * "fcall" will be a FuncExpr invoking the support function's target + * function. (This is true even if the original parsetree node was an + * operator call; a FuncExpr is synthesized for this purpose.) + * + * The result should be a semantically-equivalent transformed node tree, + * or NULL if no simplification could be performed. Do *not* return or + * modify *fcall, as it isn't really a separately allocated Node. But + * it's okay to use fcall->args, or parts of it, in the result tree. + */ +typedef struct SupportRequestSimplify +{ + NodeTag type; + + struct PlannerInfo *root; /* Planner's infrastructure */ + FuncExpr *fcall; /* Function call to be simplified */ +} SupportRequestSimplify; + +/* + * The Selectivity request allows the support function to provide a + * selectivity estimate for a function appearing at top level of a WHERE + * clause (so it applies only to functions returning boolean). + * + * The input arguments are the same as are supplied to operator restriction + * and join estimators, except that we unify those two APIs into just one + * request type. See clause_selectivity() for the details. + * + * If an estimate can be made, store it into the "selectivity" field and + * return the address of the SupportRequestSelectivity node; the estimate + * must be between 0 and 1 inclusive. Return NULL if no estimate can be + * made (in which case the planner will fall back to a default estimate, + * traditionally 1/3). + * + * If the target function is being used as the implementation of an operator, + * the support function will not be used for this purpose; the operator's + * restriction or join estimator is consulted instead. + */ +typedef struct SupportRequestSelectivity +{ + NodeTag type; + + /* Input fields: */ + struct PlannerInfo *root; /* Planner's infrastructure */ + Oid funcid; /* function we are inquiring about */ + List *args; /* pre-simplified arguments to function */ + Oid inputcollid; /* function's input collation */ + bool is_join; /* is this a join or restriction case? */ + int varRelid; /* if restriction, RTI of target relation */ + JoinType jointype; /* if join, outer join type */ + struct SpecialJoinInfo *sjinfo; /* if outer join, info about join */ + + /* Output fields: */ + Selectivity selectivity; /* returned selectivity estimate */ +} SupportRequestSelectivity; + +/* + * The Cost request allows the support function to provide an execution + * cost estimate for its target function. The cost estimate can include + * both a one-time (query startup) component and a per-execution component. + * The estimate should *not* include the costs of evaluating the target + * function's arguments, only the target function itself. + * + * The "node" argument is normally the parse node that is invoking the + * target function. This is a FuncExpr in the simplest case, but it could + * also be an OpExpr, DistinctExpr, NullIfExpr, or WindowFunc, or possibly + * other cases in future. NULL is passed if the function cannot presume + * its arguments to be equivalent to what the calling node presents as + * arguments; that happens for, e.g., aggregate support functions and + * per-column comparison operators used by RowExprs. + * + * If an estimate can be made, store it into the cost fields and return the + * address of the SupportRequestCost node. Return NULL if no estimate can be + * made, in which case the planner will rely on the target function's procost + * field. (Note: while procost is automatically scaled by cpu_operator_cost, + * this is not the case for the outputs of the Cost request; the support + * function must scale its results appropriately on its own.) + */ +typedef struct SupportRequestCost +{ + NodeTag type; + + /* Input fields: */ + struct PlannerInfo *root; /* Planner's infrastructure (could be NULL) */ + Oid funcid; /* function we are inquiring about */ + Node *node; /* parse node invoking function, or NULL */ + + /* Output fields: */ + Cost startup; /* one-time cost */ + Cost per_tuple; /* per-evaluation cost */ +} SupportRequestCost; + +/* + * The Rows request allows the support function to provide an output rowcount + * estimate for its target function (so it applies only to set-returning + * functions). + * + * The "node" argument is the parse node that is invoking the target function; + * currently this will always be a FuncExpr or OpExpr. + * + * If an estimate can be made, store it into the rows field and return the + * address of the SupportRequestRows node. Return NULL if no estimate can be + * made, in which case the planner will rely on the target function's prorows + * field. + */ +typedef struct SupportRequestRows +{ + NodeTag type; + + /* Input fields: */ + struct PlannerInfo *root; /* Planner's infrastructure (could be NULL) */ + Oid funcid; /* function we are inquiring about */ + Node *node; /* parse node invoking function */ + + /* Output fields: */ + double rows; /* number of rows expected to be returned */ +} SupportRequestRows; + +/* + * The IndexCondition request allows the support function to generate + * a directly-indexable condition based on a target function call that is + * not itself indexable. The target function call must appear at the top + * level of WHERE or JOIN/ON, so this applies only to functions returning + * boolean. + * + * The "node" argument is the parse node that is invoking the target function; + * currently this will always be a FuncExpr or OpExpr. The call is made + * only if at least one function argument matches an index column's variable + * or expression. "indexarg" identifies the matching argument (it's the + * argument's zero-based index in the node's args list). + * + * If the transformation is possible, return a List of directly-indexable + * condition expressions, else return NULL. (A List is used because it's + * sometimes useful to generate more than one indexable condition, such as + * when a LIKE with constant prefix gives rise to both >= and < conditions.) + * + * "Directly indexable" means that the condition must be directly executable + * by the index machinery. Typically this means that it is a binary OpExpr + * with the index column value on the left, a pseudo-constant on the right, + * and an operator that is in the index column's operator family. Other + * possibilities include RowCompareExpr, ScalarArrayOpExpr, and NullTest, + * depending on the index type; but those seem less likely to be useful for + * derived index conditions. "Pseudo-constant" means that the right-hand + * expression must not contain any volatile functions, nor any Vars of the + * table the index is for; use is_pseudo_constant_for_index() to check this. + * (Note: if the passed "node" is an OpExpr, the core planner already verified + * that the non-indexkey operand is pseudo-constant; but when the "node" + * is a FuncExpr, it does not check, since it doesn't know which of the + * function's arguments you might need to use in an index comparison value.) + * + * In many cases, an index condition can be generated but it is weaker than + * the function condition itself; for example, a LIKE with a constant prefix + * can produce an index range check based on the prefix, but we still need + * to execute the LIKE operator to verify the rest of the pattern. We say + * that such an index condition is "lossy". When returning an index condition, + * you should set the "lossy" request field to true if the condition is lossy, + * or false if it is an exact equivalent of the function's result. The core + * code will initialize that field to true, which is the common case. + * + * It is important to verify that the index operator family is the correct + * one for the condition you want to generate. Core support functions tend + * to use the known OID of a built-in opfamily for this, but extensions need + * to work harder, since their OIDs aren't fixed. A possibly workable + * answer for an index on an extension datatype is to verify the index AM's + * OID instead, and then assume that there's only one relevant opclass for + * your datatype so the opfamily must be the right one. Generating OpExpr + * nodes may also require knowing extension datatype OIDs (often you can + * find these out by applying exprType() to a function argument) and + * operator OIDs (which you can look up using get_opfamily_member). + */ +typedef struct SupportRequestIndexCondition +{ + NodeTag type; + + /* Input fields: */ + struct PlannerInfo *root; /* Planner's infrastructure */ + Oid funcid; /* function we are inquiring about */ + Node *node; /* parse node invoking function */ + int indexarg; /* index of function arg matching indexcol */ + struct IndexOptInfo *index; /* planner's info about target index */ + int indexcol; /* index of target index column (0-based) */ + Oid opfamily; /* index column's operator family */ + Oid indexcollation; /* index column's collation */ + + /* Output fields: */ + bool lossy; /* set to false if index condition is an exact + * equivalent of the function call */ +} SupportRequestIndexCondition; + +/* ---------- + * To support more efficient query execution of any monotonically increasing + * and/or monotonically decreasing window functions, we support calling the + * window function's prosupport function passing along this struct whenever + * the planner sees an OpExpr qual directly reference a window function in a + * subquery. When the planner encounters this, we populate this struct and + * pass it along to the window function's prosupport function so that it can + * evaluate if the given WindowFunc is; + * + * a) monotonically increasing, or + * b) monotonically decreasing, or + * c) both monotonically increasing and decreasing, or + * d) none of the above. + * + * A function that is monotonically increasing can never return a value that + * is lower than a value returned in a "previous call". A monotonically + * decreasing function can never return a value higher than a value returned + * in a previous call. A function that is both must return the same value + * each time. + * + * We define "previous call" to mean a previous call to the same WindowFunc + * struct in the same window partition. + * + * row_number() is an example of a monotonically increasing function. The + * return value will be reset back to 1 in each new partition. An example of + * a monotonically increasing and decreasing function is COUNT(*) OVER (). + * Since there is no ORDER BY clause in this example, all rows in the + * partition are peers and all rows within the partition will be within the + * frame bound. Likewise for COUNT(*) OVER(ORDER BY a ROWS BETWEEN UNBOUNDED + * PRECEDING AND UNBOUNDED FOLLOWING). + * + * COUNT(*) OVER (ORDER BY a ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) + * is an example of a monotonically decreasing function. + * + * Implementations must only concern themselves with the given WindowFunc + * being monotonic in a single partition. + * + * Inputs: + * 'window_func' is the pointer to the window function being called. + * + * 'window_clause' pointer to the WindowClause data. Support functions can + * use this to check frame bounds, etc. + * + * Outputs: + * 'monotonic' the resulting MonotonicFunction value for the given input + * window function and window clause. + * ---------- + */ +typedef struct SupportRequestWFuncMonotonic +{ + NodeTag type; + + /* Input fields: */ + WindowFunc *window_func; /* Pointer to the window function data */ + struct WindowClause *window_clause; /* Pointer to the window clause data */ + + /* Output fields: */ + MonotonicFunction monotonic; +} SupportRequestWFuncMonotonic; + +/* + * Some WindowFunc behavior might not be affected by certain variations in + * the WindowClause's frameOptions. For example, row_number() is coded in + * such a way that the frame options don't change the returned row number. + * nodeWindowAgg.c will have less work to do if the ROWS option is used + * instead of the RANGE option as no check needs to be done for peer rows. + * Since RANGE is included in the default frame options, window functions + * such as row_number() might want to change that to ROW. + * + * Here we allow a WindowFunc's support function to determine which, if + * anything, can be changed about the WindowClause which the WindowFunc + * belongs to. Currently only the frameOptions can be modified. However, + * we may want to allow more optimizations in the future. + * + * The support function is responsible for ensuring the optimized version of + * the frameOptions doesn't affect the result of the window function. The + * planner is responsible for only changing the frame options when all + * WindowFuncs using this particular WindowClause agree on what the optimized + * version of the frameOptions are. If a particular WindowFunc being used + * does not have a support function then the planner will not make any changes + * to the WindowClause's frameOptions. + * + * 'window_func' and 'window_clause' are set by the planner before calling the + * support function so that the support function has these fields available. + * These may be required in order to determine which optimizations are + * possible. + * + * 'frameOptions' is set by the planner to WindowClause.frameOptions. The + * support function must only adjust this if optimizations are possible for + * the given WindowFunc. + */ +typedef struct SupportRequestOptimizeWindowClause +{ + NodeTag type; + + /* Input fields: */ + WindowFunc *window_func; /* Pointer to the window function data */ + struct WindowClause *window_clause; /* Pointer to the window clause data */ + + /* Input/Output fields: */ + int frameOptions; /* New frameOptions, or left untouched if no + * optimizations are possible. */ +} SupportRequestOptimizeWindowClause; + +#endif /* SUPPORTNODES_H */ diff --git a/parser/include/nodes/tidbitmap.h b/parser/include/nodes/tidbitmap.h index 64ed8d16..b64e3643 100644 --- a/parser/include/nodes/tidbitmap.h +++ b/parser/include/nodes/tidbitmap.h @@ -13,7 +13,7 @@ * fact that a particular page needs to be visited. * * - * Copyright (c) 2003-2022, PostgreSQL Global Development Group + * Copyright (c) 2003-2023, PostgreSQL Global Development Group * * src/include/nodes/tidbitmap.h * diff --git a/parser/include/nodes/value.h b/parser/include/nodes/value.h index eaf93705..b24c4c1a 100644 --- a/parser/include/nodes/value.h +++ b/parser/include/nodes/value.h @@ -4,7 +4,7 @@ * interface for value nodes * * - * Copyright (c) 2003-2022, PostgreSQL Global Development Group + * Copyright (c) 2003-2023, PostgreSQL Global Development Group * * src/include/nodes/value.h * @@ -27,6 +27,8 @@ typedef struct Integer { + pg_node_attr(special_read_write) + NodeTag type; int ival; } Integer; @@ -44,24 +46,32 @@ typedef struct Integer */ typedef struct Float { + pg_node_attr(special_read_write) + NodeTag type; char *fval; } Float; typedef struct Boolean { + pg_node_attr(special_read_write) + NodeTag type; bool boolval; } Boolean; typedef struct String { + pg_node_attr(special_read_write) + NodeTag type; char *sval; } String; typedef struct BitString { + pg_node_attr(special_read_write) + NodeTag type; char *bsval; } BitString; @@ -73,7 +83,7 @@ typedef struct BitString extern Integer *makeInteger(int i); extern Float *makeFloat(char *numericStr); -extern Boolean *makeBoolean(bool var); +extern Boolean *makeBoolean(bool val); extern String *makeString(char *str); extern BitString *makeBitString(char *str); diff --git a/parser/include/optimizer/cost.h b/parser/include/optimizer/cost.h index bc12071a..6cf49705 100644 --- a/parser/include/optimizer/cost.h +++ b/parser/include/optimizer/cost.h @@ -4,7 +4,7 @@ * prototypes for costsize.c and clausesel.c. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/optimizer/cost.h @@ -68,6 +68,7 @@ extern PGDLLIMPORT bool enable_partitionwise_aggregate; extern PGDLLIMPORT bool enable_parallel_append; extern PGDLLIMPORT bool enable_parallel_hash; extern PGDLLIMPORT bool enable_partition_pruning; +extern PGDLLIMPORT bool enable_presorted_aggregate; extern PGDLLIMPORT bool enable_async_append; extern PGDLLIMPORT int constraint_exclusion; @@ -91,7 +92,8 @@ extern void cost_tidrangescan(Path *path, PlannerInfo *root, RelOptInfo *baserel, List *tidrangequals, ParamPathInfo *param_info); extern void cost_subqueryscan(SubqueryScanPath *path, PlannerInfo *root, - RelOptInfo *baserel, ParamPathInfo *param_info); + RelOptInfo *baserel, ParamPathInfo *param_info, + bool trivial_pathtarget); extern void cost_functionscan(Path *path, PlannerInfo *root, RelOptInfo *baserel, ParamPathInfo *param_info); extern void cost_valuesscan(Path *path, PlannerInfo *root, @@ -114,7 +116,7 @@ extern void cost_incremental_sort(Path *path, Cost input_startup_cost, Cost input_total_cost, double input_tuples, int width, Cost comparison_cost, int sort_mem, double limit_tuples); -extern void cost_append(AppendPath *path); +extern void cost_append(AppendPath *apath); extern void cost_merge_append(Path *path, PlannerInfo *root, List *pathkeys, int n_streams, Cost input_startup_cost, Cost input_total_cost, @@ -166,7 +168,7 @@ extern void final_cost_hashjoin(PlannerInfo *root, HashPath *path, JoinCostWorkspace *workspace, JoinPathExtraData *extra); extern void cost_gather(GatherPath *path, PlannerInfo *root, - RelOptInfo *baserel, ParamPathInfo *param_info, double *rows); + RelOptInfo *rel, ParamPathInfo *param_info, double *rows); extern void cost_gather_merge(GatherMergePath *path, PlannerInfo *root, RelOptInfo *rel, ParamPathInfo *param_info, Cost input_startup_cost, Cost input_total_cost, diff --git a/parser/include/optimizer/geqo.h b/parser/include/optimizer/geqo.h index d3993233..c7981973 100644 --- a/parser/include/optimizer/geqo.h +++ b/parser/include/optimizer/geqo.h @@ -3,7 +3,7 @@ * geqo.h * prototypes for various files in optimizer/geqo * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/optimizer/geqo.h diff --git a/parser/include/optimizer/geqo_gene.h b/parser/include/optimizer/geqo_gene.h index 414f54d1..40256a4c 100644 --- a/parser/include/optimizer/geqo_gene.h +++ b/parser/include/optimizer/geqo_gene.h @@ -3,7 +3,7 @@ * geqo_gene.h * genome representation in optimizer/geqo * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/optimizer/geqo_gene.h diff --git a/parser/include/optimizer/optimizer.h b/parser/include/optimizer/optimizer.h index 409005ba..514746c5 100644 --- a/parser/include/optimizer/optimizer.h +++ b/parser/include/optimizer/optimizer.h @@ -12,7 +12,7 @@ * example. For the most part, however, code outside the core planner * should not need to include any optimizer/ header except this one. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/optimizer/optimizer.h @@ -99,16 +99,16 @@ extern bool is_pseudo_constant_for_index(PlannerInfo *root, Node *expr, /* in plan/planner.c: */ -/* possible values for force_parallel_mode */ +/* possible values for debug_parallel_query */ typedef enum { - FORCE_PARALLEL_OFF, - FORCE_PARALLEL_ON, - FORCE_PARALLEL_REGRESS -} ForceParallelMode; + DEBUG_PARALLEL_OFF, + DEBUG_PARALLEL_ON, + DEBUG_PARALLEL_REGRESS +} DebugParallelMode; /* GUC parameters */ -extern PGDLLIMPORT int force_parallel_mode; +extern PGDLLIMPORT int debug_parallel_query; extern PGDLLIMPORT bool parallel_leader_participation; extern struct PlannedStmt *planner(Query *parse, const char *query_string, @@ -197,6 +197,6 @@ extern bool contain_var_clause(Node *node); extern bool contain_vars_of_level(Node *node, int levelsup); extern int locate_var_of_level(Node *node, int levelsup); extern List *pull_var_clause(Node *node, int flags); -extern Node *flatten_join_alias_vars(Query *query, Node *node); +extern Node *flatten_join_alias_vars(PlannerInfo *root, Query *query, Node *node); #endif /* OPTIMIZER_H */ diff --git a/parser/include/optimizer/paths.h b/parser/include/optimizer/paths.h index e313eb21..50bc3b50 100644 --- a/parser/include/optimizer/paths.h +++ b/parser/include/optimizer/paths.h @@ -4,7 +4,7 @@ * prototypes for various files in optimizer/path * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/optimizer/paths.h @@ -104,6 +104,9 @@ extern void add_paths_to_joinrel(PlannerInfo *root, RelOptInfo *joinrel, extern void join_search_one_level(PlannerInfo *root, int level); extern RelOptInfo *make_join_rel(PlannerInfo *root, RelOptInfo *rel1, RelOptInfo *rel2); +extern Relids add_outer_joins_to_relids(PlannerInfo *root, Relids input_relids, + SpecialJoinInfo *sjinfo, + List **pushed_down_joins); extern bool have_join_order_restriction(PlannerInfo *root, RelOptInfo *rel1, RelOptInfo *rel2); extern bool have_dangerous_phv(PlannerInfo *root, @@ -122,13 +125,12 @@ typedef bool (*ec_matches_callback_type) (PlannerInfo *root, extern bool process_equivalence(PlannerInfo *root, RestrictInfo **p_restrictinfo, - bool below_outer_join); + JoinDomain *jdomain); extern Expr *canonicalize_ec_expression(Expr *expr, Oid req_type, Oid req_collation); extern void reconsider_outer_join_clauses(PlannerInfo *root); extern EquivalenceClass *get_eclass_for_sort_expr(PlannerInfo *root, Expr *expr, - Relids nullable_relids, List *opfamilies, Oid opcintype, Oid collation, @@ -150,7 +152,8 @@ extern void generate_base_implied_equalities(PlannerInfo *root); extern List *generate_join_implied_equalities(PlannerInfo *root, Relids join_relids, Relids outer_relids, - RelOptInfo *inner_rel); + RelOptInfo *inner_rel, + SpecialJoinInfo *sjinfo); extern List *generate_join_implied_equalities_for_ecs(PlannerInfo *root, List *eclasses, Relids join_relids, @@ -169,8 +172,8 @@ extern void add_child_rel_equivalences(PlannerInfo *root, extern void add_child_join_rel_equivalences(PlannerInfo *root, int nappinfos, AppendRelInfo **appinfos, - RelOptInfo *parent_rel, - RelOptInfo *child_rel); + RelOptInfo *parent_joinrel, + RelOptInfo *child_joinrel); extern List *generate_implied_equalities_for_column(PlannerInfo *root, RelOptInfo *rel, ec_matches_callback_type callback, @@ -216,7 +219,7 @@ extern List *build_index_pathkeys(PlannerInfo *root, IndexOptInfo *index, extern List *build_partition_pathkeys(PlannerInfo *root, RelOptInfo *partrel, ScanDirection scandir, bool *partialkeys); extern List *build_expression_pathkey(PlannerInfo *root, Expr *expr, - Relids nullable_relids, Oid opno, + Oid opno, Relids rel, bool create_it); extern List *convert_subquery_pathkeys(PlannerInfo *root, RelOptInfo *rel, List *subquery_pathkeys, @@ -228,6 +231,11 @@ extern List *build_join_pathkeys(PlannerInfo *root, extern List *make_pathkeys_for_sortclauses(PlannerInfo *root, List *sortclauses, List *tlist); +extern List *make_pathkeys_for_sortclauses_extended(PlannerInfo *root, + List **sortclauses, + List *tlist, + bool remove_redundant, + bool *sortable); extern void initialize_mergeclause_eclasses(PlannerInfo *root, RestrictInfo *restrictinfo); extern void update_mergeclause_eclasses(PlannerInfo *root, @@ -248,6 +256,7 @@ extern List *truncate_useless_pathkeys(PlannerInfo *root, RelOptInfo *rel, List *pathkeys); extern bool has_useful_pathkeys(PlannerInfo *root, RelOptInfo *rel); +extern List *append_pathkeys(List *target, List *source); extern PathKey *make_canonical_pathkey(PlannerInfo *root, EquivalenceClass *eclass, Oid opfamily, int strategy, bool nulls_first); diff --git a/parser/include/optimizer/planmain.h b/parser/include/optimizer/planmain.h index c4f61c1a..5fc90073 100644 --- a/parser/include/optimizer/planmain.h +++ b/parser/include/optimizer/planmain.h @@ -4,7 +4,7 @@ * prototypes for various files in optimizer/plan * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/optimizer/planmain.h @@ -71,7 +71,7 @@ extern void add_base_rels_to_query(PlannerInfo *root, Node *jtnode); extern void add_other_rels_to_query(PlannerInfo *root); extern void build_base_rel_tlists(PlannerInfo *root, List *final_tlist); extern void add_vars_to_targetlist(PlannerInfo *root, List *vars, - Relids where_needed, bool create_new_ph); + Relids where_needed); extern void find_lateral_references(PlannerInfo *root); extern void create_lateral_join_info(PlannerInfo *root); extern List *deconstruct_jointree(PlannerInfo *root); @@ -83,9 +83,7 @@ extern RestrictInfo *process_implied_equality(PlannerInfo *root, Expr *item1, Expr *item2, Relids qualscope, - Relids nullable_relids, Index security_level, - bool below_outer_join, bool both_const); extern RestrictInfo *build_implied_join_equality(PlannerInfo *root, Oid opno, @@ -93,7 +91,6 @@ extern RestrictInfo *build_implied_join_equality(PlannerInfo *root, Expr *item1, Expr *item2, Relids qualscope, - Relids nullable_relids, Index security_level); extern void match_foreign_keys_to_quals(PlannerInfo *root); @@ -115,6 +112,6 @@ extern Plan *set_plan_references(PlannerInfo *root, Plan *plan); extern bool trivial_subqueryscan(SubqueryScan *plan); extern void record_plan_function_dependency(PlannerInfo *root, Oid funcid); extern void record_plan_type_dependency(PlannerInfo *root, Oid typid); -extern bool extract_query_dependencies_walker(Node *node, PlannerInfo *root); +extern bool extract_query_dependencies_walker(Node *node, PlannerInfo *context); #endif /* PLANMAIN_H */ diff --git a/parser/include/parser/analyze.h b/parser/include/parser/analyze.h index dc379547..c96483ae 100644 --- a/parser/include/parser/analyze.h +++ b/parser/include/parser/analyze.h @@ -4,7 +4,7 @@ * parse analysis for optimizable statements * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/analyze.h @@ -15,8 +15,8 @@ #define ANALYZE_H #include "nodes/params.h" +#include "nodes/queryjumble.h" #include "parser/parse_node.h" -#include "utils/queryjumble.h" /* Hook for plugins to get control at end of parse analysis */ typedef void (*post_parse_analyze_hook_type) (ParseState *pstate, @@ -43,10 +43,11 @@ extern List *transformInsertRow(ParseState *pstate, List *exprlist, List *stmtcols, List *icolumns, List *attrnos, bool strip_indirection); extern List *transformUpdateTargetList(ParseState *pstate, - List *targetList); + List *origTlist); extern Query *transformTopLevelStmt(ParseState *pstate, RawStmt *parseTree); extern Query *transformStmt(ParseState *pstate, Node *parseTree); +extern bool stmt_requires_parse_analysis(RawStmt *parseTree); extern bool analyze_requires_snapshot(RawStmt *parseTree); extern const char *LCS_asString(LockClauseStrength strength); diff --git a/parser/include/parser/gram.h b/parser/include/parser/gram.h deleted file mode 100644 index 70a82065..00000000 --- a/parser/include/parser/gram.h +++ /dev/null @@ -1,1101 +0,0 @@ -/* A Bison parser, made by GNU Bison 2.3. */ - -/* Skeleton interface for Bison's Yacc-like parsers in C - - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ - -/* As a special exception, you may create a larger work that contains - part or all of the Bison parser skeleton and distribute that work - under terms of your choice, so long as that work isn't itself a - parser generator using the skeleton or a modified version thereof - as a parser skeleton. Alternatively, if you modify or redistribute - the parser skeleton itself, you may (at your option) remove this - special exception, which will cause the skeleton and the resulting - Bison output files to be licensed under the GNU General Public - License without this special exception. - - This special exception was added by the Free Software Foundation in - version 2.2 of Bison. */ - -/* Tokens. */ -#ifndef YYTOKENTYPE -# define YYTOKENTYPE - /* Put the tokens into the symbol table, so that GDB and other debuggers - know about them. */ - enum yytokentype { - IDENT = 258, - UIDENT = 259, - FCONST = 260, - SCONST = 261, - USCONST = 262, - BCONST = 263, - XCONST = 264, - Op = 265, - ICONST = 266, - PARAM = 267, - TYPECAST = 268, - DOT_DOT = 269, - COLON_EQUALS = 270, - EQUALS_GREATER = 271, - LESS_EQUALS = 272, - GREATER_EQUALS = 273, - NOT_EQUALS = 274, - SQL_COMMENT = 275, - C_COMMENT = 276, - ABORT_P = 277, - ABSOLUTE_P = 278, - ACCESS = 279, - ACTION = 280, - ADD_P = 281, - ADMIN = 282, - AFTER = 283, - AGGREGATE = 284, - ALL = 285, - ALSO = 286, - ALTER = 287, - ALWAYS = 288, - ANALYSE = 289, - ANALYZE = 290, - AND = 291, - ANY = 292, - ARRAY = 293, - AS = 294, - ASC = 295, - ASENSITIVE = 296, - ASSERTION = 297, - ASSIGNMENT = 298, - ASYMMETRIC = 299, - ATOMIC = 300, - AT = 301, - ATTACH = 302, - ATTRIBUTE = 303, - AUTHORIZATION = 304, - BACKWARD = 305, - BEFORE = 306, - BEGIN_P = 307, - BETWEEN = 308, - BIGINT = 309, - BINARY = 310, - BIT = 311, - BOOLEAN_P = 312, - BOTH = 313, - BREADTH = 314, - BY = 315, - CACHE = 316, - CALL = 317, - CALLED = 318, - CASCADE = 319, - CASCADED = 320, - CASE = 321, - CAST = 322, - CATALOG_P = 323, - CHAIN = 324, - CHAR_P = 325, - CHARACTER = 326, - CHARACTERISTICS = 327, - CHECK = 328, - CHECKPOINT = 329, - CLASS = 330, - CLOSE = 331, - CLUSTER = 332, - COALESCE = 333, - COLLATE = 334, - COLLATION = 335, - COLUMN = 336, - COLUMNS = 337, - COMMENT = 338, - COMMENTS = 339, - COMMIT = 340, - COMMITTED = 341, - COMPRESSION = 342, - CONCURRENTLY = 343, - CONFIGURATION = 344, - CONFLICT = 345, - CONNECTION = 346, - CONSTRAINT = 347, - CONSTRAINTS = 348, - CONTENT_P = 349, - CONTINUE_P = 350, - CONVERSION_P = 351, - COPY = 352, - COST = 353, - CREATE = 354, - CROSS = 355, - CSV = 356, - CUBE = 357, - CURRENT_P = 358, - CURRENT_CATALOG = 359, - CURRENT_DATE = 360, - CURRENT_ROLE = 361, - CURRENT_SCHEMA = 362, - CURRENT_TIME = 363, - CURRENT_TIMESTAMP = 364, - CURRENT_USER = 365, - CURSOR = 366, - CYCLE = 367, - DATA_P = 368, - DATABASE = 369, - DAY_P = 370, - DEALLOCATE = 371, - DEC = 372, - DECIMAL_P = 373, - DECLARE = 374, - DEFAULT = 375, - DEFAULTS = 376, - DEFERRABLE = 377, - DEFERRED = 378, - DEFINER = 379, - DELETE_P = 380, - DELIMITER = 381, - DELIMITERS = 382, - DEPENDS = 383, - DEPTH = 384, - DESC = 385, - DETACH = 386, - DICTIONARY = 387, - DISABLE_P = 388, - DISCARD = 389, - DISTINCT = 390, - DO = 391, - DOCUMENT_P = 392, - DOMAIN_P = 393, - DOUBLE_P = 394, - DROP = 395, - EACH = 396, - ELSE = 397, - ENABLE_P = 398, - ENCODING = 399, - ENCRYPTED = 400, - END_P = 401, - ENUM_P = 402, - ESCAPE = 403, - EVENT = 404, - EXCEPT = 405, - EXCLUDE = 406, - EXCLUDING = 407, - EXCLUSIVE = 408, - EXECUTE = 409, - EXISTS = 410, - EXPLAIN = 411, - EXPRESSION = 412, - EXTENSION = 413, - EXTERNAL = 414, - EXTRACT = 415, - FALSE_P = 416, - FAMILY = 417, - FETCH = 418, - FILTER = 419, - FINALIZE = 420, - FIRST_P = 421, - FLOAT_P = 422, - FOLLOWING = 423, - FOR = 424, - FORCE = 425, - FOREIGN = 426, - FORWARD = 427, - FREEZE = 428, - FROM = 429, - FULL = 430, - FUNCTION = 431, - FUNCTIONS = 432, - GENERATED = 433, - GLOBAL = 434, - GRANT = 435, - GRANTED = 436, - GREATEST = 437, - GROUP_P = 438, - GROUPING = 439, - GROUPS = 440, - HANDLER = 441, - HAVING = 442, - HEADER_P = 443, - HOLD = 444, - HOUR_P = 445, - IDENTITY_P = 446, - IF_P = 447, - ILIKE = 448, - IMMEDIATE = 449, - IMMUTABLE = 450, - IMPLICIT_P = 451, - IMPORT_P = 452, - IN_P = 453, - INCLUDE = 454, - INCLUDING = 455, - INCREMENT = 456, - INDEX = 457, - INDEXES = 458, - INHERIT = 459, - INHERITS = 460, - INITIALLY = 461, - INLINE_P = 462, - INNER_P = 463, - INOUT = 464, - INPUT_P = 465, - INSENSITIVE = 466, - INSERT = 467, - INSTEAD = 468, - INT_P = 469, - INTEGER = 470, - INTERSECT = 471, - INTERVAL = 472, - INTO = 473, - INVOKER = 474, - IS = 475, - ISNULL = 476, - ISOLATION = 477, - JOIN = 478, - KEY = 479, - LABEL = 480, - LANGUAGE = 481, - LARGE_P = 482, - LAST_P = 483, - LATERAL_P = 484, - LEADING = 485, - LEAKPROOF = 486, - LEAST = 487, - LEFT = 488, - LEVEL = 489, - LIKE = 490, - LIMIT = 491, - LISTEN = 492, - LOAD = 493, - LOCAL = 494, - LOCALTIME = 495, - LOCALTIMESTAMP = 496, - LOCATION = 497, - LOCK_P = 498, - LOCKED = 499, - LOGGED = 500, - MAPPING = 501, - MATCH = 502, - MATCHED = 503, - MATERIALIZED = 504, - MAXVALUE = 505, - MERGE = 506, - METHOD = 507, - MINUTE_P = 508, - MINVALUE = 509, - MODE = 510, - MONTH_P = 511, - MOVE = 512, - NAME_P = 513, - NAMES = 514, - NATIONAL = 515, - NATURAL = 516, - NCHAR = 517, - NEW = 518, - NEXT = 519, - NFC = 520, - NFD = 521, - NFKC = 522, - NFKD = 523, - NO = 524, - NONE = 525, - NORMALIZE = 526, - NORMALIZED = 527, - NOT = 528, - NOTHING = 529, - NOTIFY = 530, - NOTNULL = 531, - NOWAIT = 532, - NULL_P = 533, - NULLIF = 534, - NULLS_P = 535, - NUMERIC = 536, - OBJECT_P = 537, - OF = 538, - OFF = 539, - OFFSET = 540, - OIDS = 541, - OLD = 542, - ON = 543, - ONLY = 544, - OPERATOR = 545, - OPTION = 546, - OPTIONS = 547, - OR = 548, - ORDER = 549, - ORDINALITY = 550, - OTHERS = 551, - OUT_P = 552, - OUTER_P = 553, - OVER = 554, - OVERLAPS = 555, - OVERLAY = 556, - OVERRIDING = 557, - OWNED = 558, - OWNER = 559, - PARALLEL = 560, - PARAMETER = 561, - PARSER = 562, - PARTIAL = 563, - PARTITION = 564, - PASSING = 565, - PASSWORD = 566, - PLACING = 567, - PLANS = 568, - POLICY = 569, - POSITION = 570, - PRECEDING = 571, - PRECISION = 572, - PRESERVE = 573, - PREPARE = 574, - PREPARED = 575, - PRIMARY = 576, - PRIOR = 577, - PRIVILEGES = 578, - PROCEDURAL = 579, - PROCEDURE = 580, - PROCEDURES = 581, - PROGRAM = 582, - PUBLICATION = 583, - QUOTE = 584, - RANGE = 585, - READ = 586, - REAL = 587, - REASSIGN = 588, - RECHECK = 589, - RECURSIVE = 590, - REF_P = 591, - REFERENCES = 592, - REFERENCING = 593, - REFRESH = 594, - REINDEX = 595, - RELATIVE_P = 596, - RELEASE = 597, - RENAME = 598, - REPEATABLE = 599, - REPLACE = 600, - REPLICA = 601, - RESET = 602, - RESTART = 603, - RESTRICT = 604, - RETURN = 605, - RETURNING = 606, - RETURNS = 607, - REVOKE = 608, - RIGHT = 609, - ROLE = 610, - ROLLBACK = 611, - ROLLUP = 612, - ROUTINE = 613, - ROUTINES = 614, - ROW = 615, - ROWS = 616, - RULE = 617, - SAVEPOINT = 618, - SCHEMA = 619, - SCHEMAS = 620, - SCROLL = 621, - SEARCH = 622, - SECOND_P = 623, - SECURITY = 624, - SELECT = 625, - SEQUENCE = 626, - SEQUENCES = 627, - SERIALIZABLE = 628, - SERVER = 629, - SESSION = 630, - SESSION_USER = 631, - SET = 632, - SETS = 633, - SETOF = 634, - SHARE = 635, - SHOW = 636, - SIMILAR = 637, - SIMPLE = 638, - SKIP = 639, - SMALLINT = 640, - SNAPSHOT = 641, - SOME = 642, - SQL_P = 643, - STABLE = 644, - STANDALONE_P = 645, - START = 646, - STATEMENT = 647, - STATISTICS = 648, - STDIN = 649, - STDOUT = 650, - STORAGE = 651, - STORED = 652, - STRICT_P = 653, - STRIP_P = 654, - SUBSCRIPTION = 655, - SUBSTRING = 656, - SUPPORT = 657, - SYMMETRIC = 658, - SYSID = 659, - SYSTEM_P = 660, - TABLE = 661, - TABLES = 662, - TABLESAMPLE = 663, - TABLESPACE = 664, - TEMP = 665, - TEMPLATE = 666, - TEMPORARY = 667, - TEXT_P = 668, - THEN = 669, - TIES = 670, - TIME = 671, - TIMESTAMP = 672, - TO = 673, - TRAILING = 674, - TRANSACTION = 675, - TRANSFORM = 676, - TREAT = 677, - TRIGGER = 678, - TRIM = 679, - TRUE_P = 680, - TRUNCATE = 681, - TRUSTED = 682, - TYPE_P = 683, - TYPES_P = 684, - UESCAPE = 685, - UNBOUNDED = 686, - UNCOMMITTED = 687, - UNENCRYPTED = 688, - UNION = 689, - UNIQUE = 690, - UNKNOWN = 691, - UNLISTEN = 692, - UNLOGGED = 693, - UNTIL = 694, - UPDATE = 695, - USER = 696, - USING = 697, - VACUUM = 698, - VALID = 699, - VALIDATE = 700, - VALIDATOR = 701, - VALUE_P = 702, - VALUES = 703, - VARCHAR = 704, - VARIADIC = 705, - VARYING = 706, - VERBOSE = 707, - VERSION_P = 708, - VIEW = 709, - VIEWS = 710, - VOLATILE = 711, - WHEN = 712, - WHERE = 713, - WHITESPACE_P = 714, - WINDOW = 715, - WITH = 716, - WITHIN = 717, - WITHOUT = 718, - WORK = 719, - WRAPPER = 720, - WRITE = 721, - XML_P = 722, - XMLATTRIBUTES = 723, - XMLCONCAT = 724, - XMLELEMENT = 725, - XMLEXISTS = 726, - XMLFOREST = 727, - XMLNAMESPACES = 728, - XMLPARSE = 729, - XMLPI = 730, - XMLROOT = 731, - XMLSERIALIZE = 732, - XMLTABLE = 733, - YEAR_P = 734, - YES_P = 735, - ZONE = 736, - NOT_LA = 737, - NULLS_LA = 738, - WITH_LA = 739, - MODE_TYPE_NAME = 740, - MODE_PLPGSQL_EXPR = 741, - MODE_PLPGSQL_ASSIGN1 = 742, - MODE_PLPGSQL_ASSIGN2 = 743, - MODE_PLPGSQL_ASSIGN3 = 744, - UMINUS = 745 - }; -#endif -/* Tokens. */ -#define IDENT 258 -#define UIDENT 259 -#define FCONST 260 -#define SCONST 261 -#define USCONST 262 -#define BCONST 263 -#define XCONST 264 -#define Op 265 -#define ICONST 266 -#define PARAM 267 -#define TYPECAST 268 -#define DOT_DOT 269 -#define COLON_EQUALS 270 -#define EQUALS_GREATER 271 -#define LESS_EQUALS 272 -#define GREATER_EQUALS 273 -#define NOT_EQUALS 274 -#define SQL_COMMENT 275 -#define C_COMMENT 276 -#define ABORT_P 277 -#define ABSOLUTE_P 278 -#define ACCESS 279 -#define ACTION 280 -#define ADD_P 281 -#define ADMIN 282 -#define AFTER 283 -#define AGGREGATE 284 -#define ALL 285 -#define ALSO 286 -#define ALTER 287 -#define ALWAYS 288 -#define ANALYSE 289 -#define ANALYZE 290 -#define AND 291 -#define ANY 292 -#define ARRAY 293 -#define AS 294 -#define ASC 295 -#define ASENSITIVE 296 -#define ASSERTION 297 -#define ASSIGNMENT 298 -#define ASYMMETRIC 299 -#define ATOMIC 300 -#define AT 301 -#define ATTACH 302 -#define ATTRIBUTE 303 -#define AUTHORIZATION 304 -#define BACKWARD 305 -#define BEFORE 306 -#define BEGIN_P 307 -#define BETWEEN 308 -#define BIGINT 309 -#define BINARY 310 -#define BIT 311 -#define BOOLEAN_P 312 -#define BOTH 313 -#define BREADTH 314 -#define BY 315 -#define CACHE 316 -#define CALL 317 -#define CALLED 318 -#define CASCADE 319 -#define CASCADED 320 -#define CASE 321 -#define CAST 322 -#define CATALOG_P 323 -#define CHAIN 324 -#define CHAR_P 325 -#define CHARACTER 326 -#define CHARACTERISTICS 327 -#define CHECK 328 -#define CHECKPOINT 329 -#define CLASS 330 -#define CLOSE 331 -#define CLUSTER 332 -#define COALESCE 333 -#define COLLATE 334 -#define COLLATION 335 -#define COLUMN 336 -#define COLUMNS 337 -#define COMMENT 338 -#define COMMENTS 339 -#define COMMIT 340 -#define COMMITTED 341 -#define COMPRESSION 342 -#define CONCURRENTLY 343 -#define CONFIGURATION 344 -#define CONFLICT 345 -#define CONNECTION 346 -#define CONSTRAINT 347 -#define CONSTRAINTS 348 -#define CONTENT_P 349 -#define CONTINUE_P 350 -#define CONVERSION_P 351 -#define COPY 352 -#define COST 353 -#define CREATE 354 -#define CROSS 355 -#define CSV 356 -#define CUBE 357 -#define CURRENT_P 358 -#define CURRENT_CATALOG 359 -#define CURRENT_DATE 360 -#define CURRENT_ROLE 361 -#define CURRENT_SCHEMA 362 -#define CURRENT_TIME 363 -#define CURRENT_TIMESTAMP 364 -#define CURRENT_USER 365 -#define CURSOR 366 -#define CYCLE 367 -#define DATA_P 368 -#define DATABASE 369 -#define DAY_P 370 -#define DEALLOCATE 371 -#define DEC 372 -#define DECIMAL_P 373 -#define DECLARE 374 -#define DEFAULT 375 -#define DEFAULTS 376 -#define DEFERRABLE 377 -#define DEFERRED 378 -#define DEFINER 379 -#define DELETE_P 380 -#define DELIMITER 381 -#define DELIMITERS 382 -#define DEPENDS 383 -#define DEPTH 384 -#define DESC 385 -#define DETACH 386 -#define DICTIONARY 387 -#define DISABLE_P 388 -#define DISCARD 389 -#define DISTINCT 390 -#define DO 391 -#define DOCUMENT_P 392 -#define DOMAIN_P 393 -#define DOUBLE_P 394 -#define DROP 395 -#define EACH 396 -#define ELSE 397 -#define ENABLE_P 398 -#define ENCODING 399 -#define ENCRYPTED 400 -#define END_P 401 -#define ENUM_P 402 -#define ESCAPE 403 -#define EVENT 404 -#define EXCEPT 405 -#define EXCLUDE 406 -#define EXCLUDING 407 -#define EXCLUSIVE 408 -#define EXECUTE 409 -#define EXISTS 410 -#define EXPLAIN 411 -#define EXPRESSION 412 -#define EXTENSION 413 -#define EXTERNAL 414 -#define EXTRACT 415 -#define FALSE_P 416 -#define FAMILY 417 -#define FETCH 418 -#define FILTER 419 -#define FINALIZE 420 -#define FIRST_P 421 -#define FLOAT_P 422 -#define FOLLOWING 423 -#define FOR 424 -#define FORCE 425 -#define FOREIGN 426 -#define FORWARD 427 -#define FREEZE 428 -#define FROM 429 -#define FULL 430 -#define FUNCTION 431 -#define FUNCTIONS 432 -#define GENERATED 433 -#define GLOBAL 434 -#define GRANT 435 -#define GRANTED 436 -#define GREATEST 437 -#define GROUP_P 438 -#define GROUPING 439 -#define GROUPS 440 -#define HANDLER 441 -#define HAVING 442 -#define HEADER_P 443 -#define HOLD 444 -#define HOUR_P 445 -#define IDENTITY_P 446 -#define IF_P 447 -#define ILIKE 448 -#define IMMEDIATE 449 -#define IMMUTABLE 450 -#define IMPLICIT_P 451 -#define IMPORT_P 452 -#define IN_P 453 -#define INCLUDE 454 -#define INCLUDING 455 -#define INCREMENT 456 -#define INDEX 457 -#define INDEXES 458 -#define INHERIT 459 -#define INHERITS 460 -#define INITIALLY 461 -#define INLINE_P 462 -#define INNER_P 463 -#define INOUT 464 -#define INPUT_P 465 -#define INSENSITIVE 466 -#define INSERT 467 -#define INSTEAD 468 -#define INT_P 469 -#define INTEGER 470 -#define INTERSECT 471 -#define INTERVAL 472 -#define INTO 473 -#define INVOKER 474 -#define IS 475 -#define ISNULL 476 -#define ISOLATION 477 -#define JOIN 478 -#define KEY 479 -#define LABEL 480 -#define LANGUAGE 481 -#define LARGE_P 482 -#define LAST_P 483 -#define LATERAL_P 484 -#define LEADING 485 -#define LEAKPROOF 486 -#define LEAST 487 -#define LEFT 488 -#define LEVEL 489 -#define LIKE 490 -#define LIMIT 491 -#define LISTEN 492 -#define LOAD 493 -#define LOCAL 494 -#define LOCALTIME 495 -#define LOCALTIMESTAMP 496 -#define LOCATION 497 -#define LOCK_P 498 -#define LOCKED 499 -#define LOGGED 500 -#define MAPPING 501 -#define MATCH 502 -#define MATCHED 503 -#define MATERIALIZED 504 -#define MAXVALUE 505 -#define MERGE 506 -#define METHOD 507 -#define MINUTE_P 508 -#define MINVALUE 509 -#define MODE 510 -#define MONTH_P 511 -#define MOVE 512 -#define NAME_P 513 -#define NAMES 514 -#define NATIONAL 515 -#define NATURAL 516 -#define NCHAR 517 -#define NEW 518 -#define NEXT 519 -#define NFC 520 -#define NFD 521 -#define NFKC 522 -#define NFKD 523 -#define NO 524 -#define NONE 525 -#define NORMALIZE 526 -#define NORMALIZED 527 -#define NOT 528 -#define NOTHING 529 -#define NOTIFY 530 -#define NOTNULL 531 -#define NOWAIT 532 -#define NULL_P 533 -#define NULLIF 534 -#define NULLS_P 535 -#define NUMERIC 536 -#define OBJECT_P 537 -#define OF 538 -#define OFF 539 -#define OFFSET 540 -#define OIDS 541 -#define OLD 542 -#define ON 543 -#define ONLY 544 -#define OPERATOR 545 -#define OPTION 546 -#define OPTIONS 547 -#define OR 548 -#define ORDER 549 -#define ORDINALITY 550 -#define OTHERS 551 -#define OUT_P 552 -#define OUTER_P 553 -#define OVER 554 -#define OVERLAPS 555 -#define OVERLAY 556 -#define OVERRIDING 557 -#define OWNED 558 -#define OWNER 559 -#define PARALLEL 560 -#define PARAMETER 561 -#define PARSER 562 -#define PARTIAL 563 -#define PARTITION 564 -#define PASSING 565 -#define PASSWORD 566 -#define PLACING 567 -#define PLANS 568 -#define POLICY 569 -#define POSITION 570 -#define PRECEDING 571 -#define PRECISION 572 -#define PRESERVE 573 -#define PREPARE 574 -#define PREPARED 575 -#define PRIMARY 576 -#define PRIOR 577 -#define PRIVILEGES 578 -#define PROCEDURAL 579 -#define PROCEDURE 580 -#define PROCEDURES 581 -#define PROGRAM 582 -#define PUBLICATION 583 -#define QUOTE 584 -#define RANGE 585 -#define READ 586 -#define REAL 587 -#define REASSIGN 588 -#define RECHECK 589 -#define RECURSIVE 590 -#define REF_P 591 -#define REFERENCES 592 -#define REFERENCING 593 -#define REFRESH 594 -#define REINDEX 595 -#define RELATIVE_P 596 -#define RELEASE 597 -#define RENAME 598 -#define REPEATABLE 599 -#define REPLACE 600 -#define REPLICA 601 -#define RESET 602 -#define RESTART 603 -#define RESTRICT 604 -#define RETURN 605 -#define RETURNING 606 -#define RETURNS 607 -#define REVOKE 608 -#define RIGHT 609 -#define ROLE 610 -#define ROLLBACK 611 -#define ROLLUP 612 -#define ROUTINE 613 -#define ROUTINES 614 -#define ROW 615 -#define ROWS 616 -#define RULE 617 -#define SAVEPOINT 618 -#define SCHEMA 619 -#define SCHEMAS 620 -#define SCROLL 621 -#define SEARCH 622 -#define SECOND_P 623 -#define SECURITY 624 -#define SELECT 625 -#define SEQUENCE 626 -#define SEQUENCES 627 -#define SERIALIZABLE 628 -#define SERVER 629 -#define SESSION 630 -#define SESSION_USER 631 -#define SET 632 -#define SETS 633 -#define SETOF 634 -#define SHARE 635 -#define SHOW 636 -#define SIMILAR 637 -#define SIMPLE 638 -#define SKIP 639 -#define SMALLINT 640 -#define SNAPSHOT 641 -#define SOME 642 -#define SQL_P 643 -#define STABLE 644 -#define STANDALONE_P 645 -#define START 646 -#define STATEMENT 647 -#define STATISTICS 648 -#define STDIN 649 -#define STDOUT 650 -#define STORAGE 651 -#define STORED 652 -#define STRICT_P 653 -#define STRIP_P 654 -#define SUBSCRIPTION 655 -#define SUBSTRING 656 -#define SUPPORT 657 -#define SYMMETRIC 658 -#define SYSID 659 -#define SYSTEM_P 660 -#define TABLE 661 -#define TABLES 662 -#define TABLESAMPLE 663 -#define TABLESPACE 664 -#define TEMP 665 -#define TEMPLATE 666 -#define TEMPORARY 667 -#define TEXT_P 668 -#define THEN 669 -#define TIES 670 -#define TIME 671 -#define TIMESTAMP 672 -#define TO 673 -#define TRAILING 674 -#define TRANSACTION 675 -#define TRANSFORM 676 -#define TREAT 677 -#define TRIGGER 678 -#define TRIM 679 -#define TRUE_P 680 -#define TRUNCATE 681 -#define TRUSTED 682 -#define TYPE_P 683 -#define TYPES_P 684 -#define UESCAPE 685 -#define UNBOUNDED 686 -#define UNCOMMITTED 687 -#define UNENCRYPTED 688 -#define UNION 689 -#define UNIQUE 690 -#define UNKNOWN 691 -#define UNLISTEN 692 -#define UNLOGGED 693 -#define UNTIL 694 -#define UPDATE 695 -#define USER 696 -#define USING 697 -#define VACUUM 698 -#define VALID 699 -#define VALIDATE 700 -#define VALIDATOR 701 -#define VALUE_P 702 -#define VALUES 703 -#define VARCHAR 704 -#define VARIADIC 705 -#define VARYING 706 -#define VERBOSE 707 -#define VERSION_P 708 -#define VIEW 709 -#define VIEWS 710 -#define VOLATILE 711 -#define WHEN 712 -#define WHERE 713 -#define WHITESPACE_P 714 -#define WINDOW 715 -#define WITH 716 -#define WITHIN 717 -#define WITHOUT 718 -#define WORK 719 -#define WRAPPER 720 -#define WRITE 721 -#define XML_P 722 -#define XMLATTRIBUTES 723 -#define XMLCONCAT 724 -#define XMLELEMENT 725 -#define XMLEXISTS 726 -#define XMLFOREST 727 -#define XMLNAMESPACES 728 -#define XMLPARSE 729 -#define XMLPI 730 -#define XMLROOT 731 -#define XMLSERIALIZE 732 -#define XMLTABLE 733 -#define YEAR_P 734 -#define YES_P 735 -#define ZONE 736 -#define NOT_LA 737 -#define NULLS_LA 738 -#define WITH_LA 739 -#define MODE_TYPE_NAME 740 -#define MODE_PLPGSQL_EXPR 741 -#define MODE_PLPGSQL_ASSIGN1 742 -#define MODE_PLPGSQL_ASSIGN2 743 -#define MODE_PLPGSQL_ASSIGN3 744 -#define UMINUS 745 - - - - -#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED -typedef union YYSTYPE -#line 237 "gram.y" -{ - core_YYSTYPE core_yystype; - /* these fields must match core_YYSTYPE: */ - int ival; - char *str; - const char *keyword; - - char chr; - bool boolean; - JoinType jtype; - DropBehavior dbehavior; - OnCommitAction oncommit; - List *list; - Node *node; - ObjectType objtype; - TypeName *typnam; - FunctionParameter *fun_param; - FunctionParameterMode fun_param_mode; - ObjectWithArgs *objwithargs; - DefElem *defelt; - SortBy *sortby; - WindowDef *windef; - JoinExpr *jexpr; - IndexElem *ielem; - StatsElem *selem; - Alias *alias; - RangeVar *range; - IntoClause *into; - WithClause *with; - InferClause *infer; - OnConflictClause *onconflict; - A_Indices *aind; - ResTarget *target; - struct PrivTarget *privtarget; - AccessPriv *accesspriv; - struct ImportQual *importqual; - InsertStmt *istmt; - VariableSetStmt *vsetstmt; - PartitionElem *partelem; - PartitionSpec *partspec; - PartitionBoundSpec *partboundspec; - RoleSpec *rolespec; - PublicationObjSpec *publicationobjectspec; - struct SelectLimit *selectlimit; - SetQuantifier setquantifier; - struct GroupClause *groupclause; - MergeWhenClause *mergewhen; - struct KeyActions *keyactions; - struct KeyAction *keyaction; -} -/* Line 1529 of yacc.c. */ -#line 1080 "gram.h" - YYSTYPE; -# define yystype YYSTYPE /* obsolescent; will be withdrawn */ -# define YYSTYPE_IS_DECLARED 1 -# define YYSTYPE_IS_TRIVIAL 1 -#endif - - - -#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED -typedef struct YYLTYPE -{ - int first_line; - int first_column; - int last_line; - int last_column; -} YYLTYPE; -# define yyltype YYLTYPE /* obsolescent; will be withdrawn */ -# define YYLTYPE_IS_DECLARED 1 -# define YYLTYPE_IS_TRIVIAL 1 -#endif - - diff --git a/parser/include/parser/kwlist.h b/parser/include/parser/kwlist.h index 65ffa897..f5b2e61c 100644 --- a/parser/include/parser/kwlist.h +++ b/parser/include/parser/kwlist.h @@ -7,7 +7,7 @@ * by the PG_KEYWORD macro, which is not defined in this file; it can * be defined by the caller for special purposes. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -26,6 +26,7 @@ /* name, value, category, is-bare-label */ PG_KEYWORD("abort", ABORT_P, UNRESERVED_KEYWORD, BARE_LABEL) +PG_KEYWORD("absent", ABSENT, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("absolute", ABSOLUTE_P, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("access", ACCESS, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("action", ACTION, UNRESERVED_KEYWORD, BARE_LABEL) @@ -175,6 +176,7 @@ PG_KEYWORD("following", FOLLOWING, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("for", FOR, RESERVED_KEYWORD, AS_LABEL) PG_KEYWORD("force", FORCE, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("foreign", FOREIGN, RESERVED_KEYWORD, BARE_LABEL) +PG_KEYWORD("format", FORMAT, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("forward", FORWARD, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("freeze", FREEZE, TYPE_FUNC_NAME_KEYWORD, BARE_LABEL) PG_KEYWORD("from", FROM, RESERVED_KEYWORD, AS_LABEL) @@ -205,6 +207,7 @@ PG_KEYWORD("in", IN_P, RESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("include", INCLUDE, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("including", INCLUDING, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("increment", INCREMENT, UNRESERVED_KEYWORD, BARE_LABEL) +PG_KEYWORD("indent", INDENT, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("index", INDEX, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("indexes", INDEXES, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("inherit", INHERIT, UNRESERVED_KEYWORD, BARE_LABEL) @@ -227,7 +230,13 @@ PG_KEYWORD("is", IS, TYPE_FUNC_NAME_KEYWORD, BARE_LABEL) PG_KEYWORD("isnull", ISNULL, TYPE_FUNC_NAME_KEYWORD, AS_LABEL) PG_KEYWORD("isolation", ISOLATION, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("join", JOIN, TYPE_FUNC_NAME_KEYWORD, BARE_LABEL) +PG_KEYWORD("json", JSON, UNRESERVED_KEYWORD, BARE_LABEL) +PG_KEYWORD("json_array", JSON_ARRAY, COL_NAME_KEYWORD, BARE_LABEL) +PG_KEYWORD("json_arrayagg", JSON_ARRAYAGG, COL_NAME_KEYWORD, BARE_LABEL) +PG_KEYWORD("json_object", JSON_OBJECT, COL_NAME_KEYWORD, BARE_LABEL) +PG_KEYWORD("json_objectagg", JSON_OBJECTAGG, COL_NAME_KEYWORD, BARE_LABEL) PG_KEYWORD("key", KEY, UNRESERVED_KEYWORD, BARE_LABEL) +PG_KEYWORD("keys", KEYS, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("label", LABEL, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("language", LANGUAGE, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("large", LARGE_P, UNRESERVED_KEYWORD, BARE_LABEL) @@ -367,6 +376,7 @@ PG_KEYWORD("row", ROW, COL_NAME_KEYWORD, BARE_LABEL) PG_KEYWORD("rows", ROWS, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("rule", RULE, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("savepoint", SAVEPOINT, UNRESERVED_KEYWORD, BARE_LABEL) +PG_KEYWORD("scalar", SCALAR, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("schema", SCHEMA, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("schemas", SCHEMAS, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("scroll", SCROLL, UNRESERVED_KEYWORD, BARE_LABEL) @@ -409,6 +419,7 @@ PG_KEYWORD("support", SUPPORT, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("symmetric", SYMMETRIC, RESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("sysid", SYSID, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("system", SYSTEM_P, UNRESERVED_KEYWORD, BARE_LABEL) +PG_KEYWORD("system_user", SYSTEM_USER, RESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("table", TABLE, RESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("tables", TABLES, UNRESERVED_KEYWORD, BARE_LABEL) PG_KEYWORD("tablesample", TABLESAMPLE, TYPE_FUNC_NAME_KEYWORD, BARE_LABEL) diff --git a/parser/include/parser/parse_agg.h b/parser/include/parser/parse_agg.h index c56822f6..e9afd99d 100644 --- a/parser/include/parser/parse_agg.h +++ b/parser/include/parser/parse_agg.h @@ -3,7 +3,7 @@ * parse_agg.h * handle aggregates and window functions in parser * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parse_agg.h @@ -19,7 +19,7 @@ extern void transformAggregateCall(ParseState *pstate, Aggref *agg, List *args, List *aggorder, bool agg_distinct); -extern Node *transformGroupingFunc(ParseState *pstate, GroupingFunc *g); +extern Node *transformGroupingFunc(ParseState *pstate, GroupingFunc *p); extern void transformWindowFuncCall(ParseState *pstate, WindowFunc *wfunc, WindowDef *windef); @@ -35,6 +35,8 @@ extern Oid resolve_aggregate_transtype(Oid aggfuncid, Oid *inputTypes, int numArguments); +extern bool agg_args_support_sendreceive(Aggref *aggref); + extern void build_aggregate_transfn_expr(Oid *agg_input_types, int agg_num_inputs, int agg_num_direct_inputs, diff --git a/parser/include/parser/parse_coerce.h b/parser/include/parser/parse_coerce.h index b105c7da..35ce4a35 100644 --- a/parser/include/parser/parse_coerce.h +++ b/parser/include/parser/parse_coerce.h @@ -4,7 +4,7 @@ * Routines for type coercion. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parse_coerce.h @@ -32,6 +32,8 @@ typedef enum CoercionPathType extern bool IsBinaryCoercible(Oid srctype, Oid targettype); +extern bool IsBinaryCoercibleWithCast(Oid srctype, Oid targettype, + Oid *castoid); extern bool IsPreferredType(TYPCATEGORY category, Oid type); extern TYPCATEGORY TypeCategory(Oid type); diff --git a/parser/include/parser/parse_expr.h b/parser/include/parser/parse_expr.h index c8e5c57b..7d38ca75 100644 --- a/parser/include/parser/parse_expr.h +++ b/parser/include/parser/parse_expr.h @@ -3,7 +3,7 @@ * parse_expr.h * handle expressions in parser * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parse_expr.h diff --git a/parser/include/parser/parse_func.h b/parser/include/parser/parse_func.h index 8711e392..e316f5da 100644 --- a/parser/include/parser/parse_func.h +++ b/parser/include/parser/parse_func.h @@ -4,7 +4,7 @@ * * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parse_func.h diff --git a/parser/include/parser/parse_node.h b/parser/include/parser/parse_node.h index cf9c7590..f589112d 100644 --- a/parser/include/parser/parse_node.h +++ b/parser/include/parser/parse_node.h @@ -4,7 +4,7 @@ * Internal definitions for parser * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parse_node.h @@ -111,10 +111,20 @@ typedef Node *(*CoerceParamHook) (ParseState *pstate, Param *param, * Note that neither relname nor refname of these entries are necessarily * unique; searching the rtable by name is a bad idea. * + * p_rteperminfos: list of RTEPermissionInfo containing an entry corresponding + * to each RTE_RELATION entry in p_rtable. + * * p_joinexprs: list of JoinExpr nodes associated with p_rtable entries. * This is one-for-one with p_rtable, but contains NULLs for non-join * RTEs, and may be shorter than p_rtable if the last RTE(s) aren't joins. * + * p_nullingrels: list of Bitmapsets associated with p_rtable entries, each + * containing the set of outer-join RTE indexes that can null that relation + * at the current point in the parse tree. This is one-for-one with p_rtable, + * but may be shorter than p_rtable, in which case the missing entries are + * implicitly empty (NULL). That rule allows us to save work when the query + * contains no outer joins. + * * p_joinlist: list of join items (RangeTblRef and JoinExpr nodes) that * will become the fromlist of the query's top-level FromExpr node. * @@ -181,7 +191,10 @@ struct ParseState ParseState *parentParseState; /* stack link */ const char *p_sourcetext; /* source text, or NULL if not available */ List *p_rtable; /* range table so far */ + List *p_rteperminfos; /* list of RTEPermissionInfo nodes for each + * RTE_RELATION entry in rtable */ List *p_joinexprs; /* JoinExprs for RTE_JOIN p_rtable entries */ + List *p_nullingrels; /* Bitmapsets showing nulling outer joins */ List *p_joinlist; /* join items so far (will become FromExpr * node's fromlist) */ List *p_namespace; /* currently-referenceable RTEs (List of @@ -234,7 +247,8 @@ struct ParseState * join's first N columns, the net effect is just that we expose only those * join columns via this nsitem.) * - * p_rte and p_rtindex link to the underlying rangetable entry. + * p_rte and p_rtindex link to the underlying rangetable entry, and + * p_perminfo to the entry in rteperminfos. * * The p_nscolumns array contains info showing how to construct Vars * referencing the names appearing in the p_names->colnames list. @@ -246,8 +260,11 @@ struct ParseState * visible for qualified references) but it does hide their columns * (unqualified references to the columns refer to the JOIN, not the member * tables, so we must not complain that such a reference is ambiguous). - * Various special RTEs such as NEW/OLD for rules may also appear with only - * one flag set. + * Conversely, a subquery without an alias does not hide the columns selected + * by the subquery, but it does hide the auto-generated relation name (so the + * subquery columns are visible for unqualified references only). Various + * special RTEs such as NEW/OLD for rules may also appear with only one flag + * set. * * While processing the FROM clause, namespace items may appear with * p_lateral_only set, meaning they are visible only to LATERAL @@ -268,6 +285,7 @@ struct ParseNamespaceItem Alias *p_names; /* Table and column names */ RangeTblEntry *p_rte; /* The relation's rangetable entry */ int p_rtindex; /* The relation's index in the rangetable */ + RTEPermissionInfo *p_perminfo; /* The relation's rteperminfos entry */ /* array of same length as p_names->colnames: */ ParseNamespaceColumn *p_nscolumns; /* per-column data */ bool p_rel_visible; /* Relation name is visible? */ diff --git a/parser/include/parser/parse_oper.h b/parser/include/parser/parse_oper.h index e15b6229..5768a1ce 100644 --- a/parser/include/parser/parse_oper.h +++ b/parser/include/parser/parse_oper.h @@ -4,7 +4,7 @@ * handle operator things for parser * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parse_oper.h @@ -29,8 +29,8 @@ extern Oid LookupOperWithArgs(ObjectWithArgs *oper, bool noError); /* Routines to find operators matching a name and given input types */ /* NB: the selected operator may require coercion of the input types! */ -extern Operator oper(ParseState *pstate, List *op, Oid arg1, Oid arg2, - bool noError, int location); +extern Operator oper(ParseState *pstate, List *opname, Oid ltypeId, + Oid rtypeId, bool noError, int location); extern Operator left_oper(ParseState *pstate, List *op, Oid arg, bool noError, int location); diff --git a/parser/include/parser/parse_relation.h b/parser/include/parser/parse_relation.h index de21c3c6..67d9b1e4 100644 --- a/parser/include/parser/parse_relation.h +++ b/parser/include/parser/parse_relation.h @@ -4,7 +4,7 @@ * prototypes for parse_relation.c. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parse_relation.h @@ -41,6 +41,7 @@ extern Node *scanNSItemForColumn(ParseState *pstate, ParseNamespaceItem *nsitem, int location); extern Node *colNameToVar(ParseState *pstate, const char *colname, bool localonly, int location); +extern void markNullableIfNeeded(ParseState *pstate, Var *var); extern void markVarForSelectPriv(ParseState *pstate, Var *var); extern Relation parserOpenTable(ParseState *pstate, const RangeVar *relation, int lockmode); @@ -88,7 +89,7 @@ extern ParseNamespaceItem *addRangeTableEntryForJoin(ParseState *pstate, List *aliasvars, List *leftcols, List *rightcols, - Alias *joinalias, + Alias *join_using_alias, Alias *alias, bool inFromCl); extern ParseNamespaceItem *addRangeTableEntryForCTE(ParseState *pstate, @@ -99,6 +100,10 @@ extern ParseNamespaceItem *addRangeTableEntryForCTE(ParseState *pstate, extern ParseNamespaceItem *addRangeTableEntryForENR(ParseState *pstate, RangeVar *rv, bool inFromCl); +extern RTEPermissionInfo *addRTEPermissionInfo(List **rteperminfos, + RangeTblEntry *rte); +extern RTEPermissionInfo *getRTEPermissionInfo(List *rteperminfos, + RangeTblEntry *rte); extern bool isLockedRefname(ParseState *pstate, const char *refname); extern void addNSItemToQuery(ParseState *pstate, ParseNamespaceItem *nsitem, bool addToJoinList, @@ -109,7 +114,7 @@ extern void errorMissingColumn(ParseState *pstate, extern void expandRTE(RangeTblEntry *rte, int rtindex, int sublevels_up, int location, bool include_dropped, List **colnames, List **colvars); -extern List *expandNSItemVars(ParseNamespaceItem *nsitem, +extern List *expandNSItemVars(ParseState *pstate, ParseNamespaceItem *nsitem, int sublevels_up, int location, List **colnames); extern List *expandNSItemAttrs(ParseState *pstate, ParseNamespaceItem *nsitem, diff --git a/parser/include/parser/parse_type.h b/parser/include/parser/parse_type.h index 4e5624d7..848c467a 100644 --- a/parser/include/parser/parse_type.h +++ b/parser/include/parser/parse_type.h @@ -3,7 +3,7 @@ * parse_type.h * handle type operations for parser * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parse_type.h @@ -51,8 +51,9 @@ extern Datum stringTypeDatum(Type tp, char *string, int32 atttypmod); extern Oid typeidTypeRelid(Oid type_id); extern Oid typeOrDomainTypeRelid(Oid type_id); -extern TypeName *typeStringToTypeName(const char *str); -extern void parseTypeString(const char *str, Oid *typeid_p, int32 *typmod_p, bool missing_ok); +extern TypeName *typeStringToTypeName(const char *str, Node *escontext); +extern bool parseTypeString(const char *str, Oid *typeid_p, int32 *typmod_p, + Node *escontext); /* true if typeid is composite, or domain over composite, but not RECORD */ #define ISCOMPLEX(typeid) (typeOrDomainTypeRelid(typeid) != InvalidOid) diff --git a/parser/include/parser/parser.h b/parser/include/parser/parser.h index e1dc5c5b..cd7588c7 100644 --- a/parser/include/parser/parser.h +++ b/parser/include/parser/parser.h @@ -5,7 +5,7 @@ * * This is the external API for the raw lexing/parsing functions. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parser.h diff --git a/parser/include/parser/parsetree.h b/parser/include/parser/parsetree.h index 3a1afffd..69a9a258 100644 --- a/parser/include/parser/parsetree.h +++ b/parser/include/parser/parsetree.h @@ -5,7 +5,7 @@ * parse trees. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/parsetree.h diff --git a/parser/include/parser/scanner.h b/parser/include/parser/scanner.h index 2acd7e05..e2a73201 100644 --- a/parser/include/parser/scanner.h +++ b/parser/include/parser/scanner.h @@ -8,7 +8,7 @@ * higher-level API provided by parser.h. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/scanner.h @@ -140,7 +140,7 @@ extern core_yyscan_t scanner_init(const char *str, const ScanKeywordList *keywordlist, const uint16 *keyword_tokens); extern void scanner_finish(core_yyscan_t yyscanner); -extern int core_yylex(core_YYSTYPE *lvalp, YYLTYPE *llocp, +extern int core_yylex(core_YYSTYPE *yylval_param, YYLTYPE *yylloc_param, core_yyscan_t yyscanner); extern int scanner_errposition(int location, core_yyscan_t yyscanner); extern void setup_scanner_errposition_callback(ScannerCallbackState *scbstate, diff --git a/parser/include/parser/scansup.h b/parser/include/parser/scansup.h index ff65224b..f2fa1977 100644 --- a/parser/include/parser/scansup.h +++ b/parser/include/parser/scansup.h @@ -3,7 +3,7 @@ * scansup.h * scanner support routines used by the core lexer * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/parser/scansup.h diff --git a/parser/include/partitioning/partdefs.h b/parser/include/partitioning/partdefs.h index aed62eae..55bb49c8 100644 --- a/parser/include/partitioning/partdefs.h +++ b/parser/include/partitioning/partdefs.h @@ -3,7 +3,7 @@ * partdefs.h * Base definitions for partitioned table handling * - * Copyright (c) 2007-2022, PostgreSQL Global Development Group + * Copyright (c) 2007-2023, PostgreSQL Global Development Group * * src/include/partitioning/partdefs.h * diff --git a/parser/include/pg_config.h b/parser/include/pg_config.h index 59a2288e..d1dd7b72 100644 --- a/parser/include/pg_config.h +++ b/parser/include/pg_config.h @@ -32,7 +32,7 @@ #define BLCKSZ 8192 /* Saved arguments from configure */ -#define CONFIGURE_ARGS " '--without-readline' '--without-zlib'" +#define CONFIGURE_ARGS " '--without-readline' '--without-zlib' '--without-icu'" /* Define to the default TCP port number on which the server listens and to which clients will try to connect. This can be overridden at run-time, but @@ -44,7 +44,7 @@ #define DEF_PGPORT_STR "5432" /* Define to the file name extension of dynamically-loadable modules. */ -#define DLSUFFIX ".so" +#define DLSUFFIX ".dylib" /* Define to build with GSSAPI support. (--with-gssapi) */ /* #undef ENABLE_GSS */ @@ -56,13 +56,6 @@ (--enable-thread-safety) */ #define ENABLE_THREAD_SAFETY 1 -/* Define to 1 if gettimeofday() takes only 1 argument. */ -/* #undef GETTIMEOFDAY_1ARG */ - -#ifdef GETTIMEOFDAY_1ARG -# define gettimeofday(a,b) gettimeofday(a) -#endif - /* Define to 1 if you have the `append_history' function. */ /* #undef HAVE_APPEND_HISTORY */ @@ -84,9 +77,6 @@ /* Define to 1 if you have the `BIO_meth_new' function. */ /* #undef HAVE_BIO_METH_NEW */ -/* Define to 1 if you have the `clock_gettime' function. */ -#define HAVE_CLOCK_GETTIME 1 - /* Define to 1 if your compiler handles computed gotos. */ #define HAVE_COMPUTED_GOTO 1 @@ -142,18 +132,6 @@ don't. */ #define HAVE_DECL_PWRITEV 1 -/* Define to 1 if you have the declaration of `RTLD_GLOBAL', and to 0 if you - don't. */ -#define HAVE_DECL_RTLD_GLOBAL 1 - -/* Define to 1 if you have the declaration of `RTLD_NOW', and to 0 if you - don't. */ -#define HAVE_DECL_RTLD_NOW 1 - -/* Define to 1 if you have the declaration of `sigwait', and to 0 if you - don't. */ -#define HAVE_DECL_SIGWAIT 1 - /* Define to 1 if you have the declaration of `strlcat', and to 0 if you don't. */ #define HAVE_DECL_STRLCAT 1 @@ -166,17 +144,6 @@ don't. */ #define HAVE_DECL_STRNLEN 1 -/* Define to 1 if you have the declaration of `strtoll', and to 0 if you - don't. */ -#define HAVE_DECL_STRTOLL 1 - -/* Define to 1 if you have the declaration of `strtoull', and to 0 if you - don't. */ -#define HAVE_DECL_STRTOULL 1 - -/* Define to 1 if you have the `dlopen' function. */ -#define HAVE_DLOPEN 1 - /* Define to 1 if you have the header file. */ /* #undef HAVE_EDITLINE_HISTORY_H */ @@ -189,21 +156,9 @@ /* Define to 1 if you have the `explicit_bzero' function. */ /* #undef HAVE_EXPLICIT_BZERO */ -/* Define to 1 if you have the `fdatasync' function. */ -#define HAVE_FDATASYNC 1 - -/* Define to 1 if you have the `fls' function. */ -#define HAVE_FLS 1 - /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 -/* Define to 1 if your compiler understands __func__. */ -#define HAVE_FUNCNAME__FUNC 1 - -/* Define to 1 if your compiler understands __FUNCTION__. */ -/* #undef HAVE_FUNCNAME__FUNCTION */ - /* Define to 1 if you have __atomic_compare_exchange_n(int *, int *, int). */ #define HAVE_GCC__ATOMIC_INT32_CAS 1 @@ -224,12 +179,6 @@ */ #define HAVE_GCC__SYNC_INT64_CAS 1 -/* Define to 1 if you have the `getaddrinfo' function. */ -#define HAVE_GETADDRINFO 1 - -/* Define to 1 if you have the `gethostbyname_r' function. */ -/* #undef HAVE_GETHOSTBYNAME_R */ - /* Define to 1 if you have the `getifaddrs' function. */ #define HAVE_GETIFADDRS 1 @@ -248,17 +197,11 @@ /* Define to 1 if you have the `getpeerucred' function. */ /* #undef HAVE_GETPEERUCRED */ -/* Define to 1 if you have the `getpwuid_r' function. */ -#define HAVE_GETPWUID_R 1 - -/* Define to 1 if you have the `getrlimit' function. */ -#define HAVE_GETRLIMIT 1 +/* Define to 1 if you have the header file. */ +/* #undef HAVE_GSSAPI_EXT_H */ -/* Define to 1 if you have the `getrusage' function. */ -#define HAVE_GETRUSAGE 1 - -/* Define to 1 if you have the `gettimeofday' function. */ -/* #undef HAVE_GETTIMEOFDAY */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_GSSAPI_GSSAPI_EXT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_GSSAPI_GSSAPI_H */ @@ -305,9 +248,6 @@ /* Define to 1 if you have the global variable 'int timezone'. */ #define HAVE_INT_TIMEZONE 1 -/* Define to 1 if you have support for IPv6. */ -#define HAVE_IPV6 1 - /* Define to 1 if __builtin_constant_p(x) implies "i"(x) acceptance. */ /* #undef HAVE_I_CONSTRAINT__BUILTIN_CONSTANT_P */ @@ -317,9 +257,6 @@ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LDAP_H */ - /* Define to 1 if you have the `ldap_initialize' function. */ /* #undef HAVE_LDAP_INITIALIZE */ @@ -362,9 +299,6 @@ /* Define to 1 if you have the `zstd' library (-lzstd). */ /* #undef HAVE_LIBZSTD */ -/* Define to 1 if you have the `link' function. */ -#define HAVE_LINK 1 - /* Define to 1 if the system has the type `locale_t'. */ #define HAVE_LOCALE_T 1 @@ -386,18 +320,9 @@ /* Define to 1 if you have the `memset_s' function. */ #define HAVE_MEMSET_S 1 -/* Define to 1 if the system has the type `MINIDUMP_TYPE'. */ -/* #undef HAVE_MINIDUMP_TYPE */ - /* Define to 1 if you have the `mkdtemp' function. */ #define HAVE_MKDTEMP 1 -/* Define to 1 if you have the header file. */ -#define HAVE_NETINET_TCP_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NET_IF_H 1 - /* Define to 1 if you have the `OPENSSL_init_ssl' function. */ /* #undef HAVE_OPENSSL_INIT_SSL */ @@ -407,36 +332,15 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_PAM_PAM_APPL_H */ -/* Define to 1 if you have the `poll' function. */ -#define HAVE_POLL 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_POLL_H 1 - -/* Define to 1 if you have a POSIX-conforming sigwait declaration. */ -#define HAVE_POSIX_DECL_SIGWAIT 1 - /* Define to 1 if you have the `posix_fadvise' function. */ /* #undef HAVE_POSIX_FADVISE */ /* Define to 1 if you have the `posix_fallocate' function. */ /* #undef HAVE_POSIX_FALLOCATE */ -/* Define to 1 if the assembler supports PPC's LWARX mutex hint bit. */ -/* #undef HAVE_PPC_LWARX_MUTEX_HINT */ - /* Define to 1 if you have the `ppoll' function. */ /* #undef HAVE_PPOLL */ -/* Define to 1 if you have the `pread' function. */ -#define HAVE_PREAD 1 - -/* Define to 1 if you have the `pstat' function. */ -/* #undef HAVE_PSTAT */ - -/* Define to 1 if the PS_STRINGS thing exists. */ -/* #undef HAVE_PS_STRINGS */ - /* Define if you have POSIX threads libraries and header files. */ #define HAVE_PTHREAD 1 @@ -449,9 +353,6 @@ /* Have PTHREAD_PRIO_INHERIT. */ #define HAVE_PTHREAD_PRIO_INHERIT 1 -/* Define to 1 if you have the `pwrite' function. */ -#define HAVE_PWRITE 1 - /* Define to 1 if you have the header file. */ /* #undef HAVE_READLINE_H */ @@ -461,12 +362,6 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_READLINE_READLINE_H */ -/* Define to 1 if you have the `readlink' function. */ -#define HAVE_READLINK 1 - -/* Define to 1 if you have the `readv' function. */ -#define HAVE_READV 1 - /* Define to 1 if you have the `rl_completion_matches' function. */ /* #undef HAVE_RL_COMPLETION_MATCHES */ @@ -494,27 +389,21 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SECURITY_PAM_APPL_H */ -/* Define to 1 if you have the `setenv' function. */ -#define HAVE_SETENV 1 - /* Define to 1 if you have the `setproctitle' function. */ /* #undef HAVE_SETPROCTITLE */ /* Define to 1 if you have the `setproctitle_fast' function. */ /* #undef HAVE_SETPROCTITLE_FAST */ -/* Define to 1 if you have the `setsid' function. */ -#define HAVE_SETSID 1 - -/* Define to 1 if you have the `shm_open' function. */ -#define HAVE_SHM_OPEN 1 - /* Define to 1 if the system has the type `socklen_t'. */ #define HAVE_SOCKLEN_T 1 /* Define to 1 if you have spinlocks. */ #define HAVE_SPINLOCKS 1 +/* Define to 1 if you have the `SSL_CTX_set_cert_cb' function. */ +/* #undef HAVE_SSL_CTX_SET_CERT_CB */ + /* Define to 1 if stdbool.h conforms to C99. */ #define HAVE_STDBOOL_H 1 @@ -548,57 +437,15 @@ /* Define to 1 if you have the `strsignal' function. */ #define HAVE_STRSIGNAL 1 -/* Define to 1 if you have the `strtof' function. */ -#define HAVE_STRTOF 1 - -/* Define to 1 if you have the `strtoll' function. */ -#define HAVE_STRTOLL 1 - -/* Define to 1 if you have the `strtoq' function. */ -/* #undef HAVE_STRTOQ */ - -/* Define to 1 if you have the `strtoull' function. */ -#define HAVE_STRTOULL 1 - -/* Define to 1 if you have the `strtouq' function. */ -/* #undef HAVE_STRTOUQ */ - -/* Define to 1 if the system has the type `struct addrinfo'. */ -#define HAVE_STRUCT_ADDRINFO 1 - -/* Define to 1 if the system has the type `struct cmsgcred'. */ -/* #undef HAVE_STRUCT_CMSGCRED */ - /* Define to 1 if the system has the type `struct option'. */ #define HAVE_STRUCT_OPTION 1 /* Define to 1 if `sa_len' is a member of `struct sockaddr'. */ #define HAVE_STRUCT_SOCKADDR_SA_LEN 1 -/* Define to 1 if the system has the type `struct sockaddr_storage'. */ -#define HAVE_STRUCT_SOCKADDR_STORAGE 1 - -/* Define to 1 if `ss_family' is a member of `struct sockaddr_storage'. */ -#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1 - -/* Define to 1 if `ss_len' is a member of `struct sockaddr_storage'. */ -#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1 - -/* Define to 1 if `__ss_family' is a member of `struct sockaddr_storage'. */ -/* #undef HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY */ - -/* Define to 1 if `__ss_len' is a member of `struct sockaddr_storage'. */ -/* #undef HAVE_STRUCT_SOCKADDR_STORAGE___SS_LEN */ - -/* Define to 1 if the system has the type `struct sockaddr_un'. */ -#define HAVE_STRUCT_SOCKADDR_UN 1 - /* Define to 1 if `tm_zone' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_ZONE 1 -/* Define to 1 if you have the `symlink' function. */ -#define HAVE_SYMLINK 1 - /* Define to 1 if you have the `syncfs' function. */ /* #undef HAVE_SYNCFS */ @@ -614,9 +461,6 @@ /* Define to 1 if you have the header file. */ #define HAVE_SYS_EVENT_H 1 -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_IPC_H 1 - /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_PERSONALITY_H */ @@ -626,45 +470,18 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_PROCCTL_H */ -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_PSTAT_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_RESOURCE_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_SELECT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_SEM_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_SHM_H 1 - /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_SIGNALFD_H */ -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_SOCKIO_H 1 - /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_TAS_H */ - /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_UCRED_H 1 -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_UIO_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_UN_H 1 - /* Define to 1 if you have the header file. */ #define HAVE_TERMIOS_H 1 @@ -686,9 +503,6 @@ /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 -/* Define to 1 if you have the `unsetenv' function. */ -#define HAVE_UNSETENV 1 - /* Define to 1 if you have the `uselocale' function. */ #define HAVE_USELOCALE 1 @@ -707,17 +521,14 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_UUID_UUID_H */ +/* Define to 1 if your compiler knows the visibility("hidden") attribute. */ +#define HAVE_VISIBILITY_ATTRIBUTE 1 + /* Define to 1 if you have the `wcstombs_l' function. */ #define HAVE_WCSTOMBS_L 1 -/* Define to 1 if you have the header file. */ -#define HAVE_WCTYPE_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_WINLDAP_H */ - -/* Define to 1 if you have the `writev' function. */ -#define HAVE_WRITEV 1 +/* Define to 1 if you have the `X509_get_signature_info' function. */ +/* #undef HAVE_X509_GET_SIGNATURE_INFO */ /* Define to 1 if you have the `X509_get_signature_nid' function. */ /* #undef HAVE_X509_GET_SIGNATURE_NID */ @@ -773,12 +584,6 @@ /* Define to 1 if your compiler understands _Static_assert. */ #define HAVE__STATIC_ASSERT 1 -/* Define to 1 if you have the `__strtoll' function. */ -/* #undef HAVE___STRTOLL */ - -/* Define to 1 if you have the `__strtoull' function. */ -/* #undef HAVE___STRTOULL */ - /* Define to the appropriate printf length modifier for 64-bit ints. */ #define INT64_MODIFIER "l" @@ -802,7 +607,7 @@ #define PACKAGE_NAME "PostgreSQL" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "PostgreSQL 15.1" +#define PACKAGE_STRING "PostgreSQL 16.1" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "postgresql" @@ -811,7 +616,7 @@ #define PACKAGE_URL "https://www.postgresql.org/" /* Define to the version of this package. */ -#define PACKAGE_VERSION "15.1" +#define PACKAGE_VERSION "16.1" /* Define to the name of a signed 128-bit integer type. */ #define PG_INT128_TYPE __int128 @@ -824,10 +629,10 @@ #define PG_KRB_SRVNAM "postgres" /* PostgreSQL major version as a string */ -#define PG_MAJORVERSION "15" +#define PG_MAJORVERSION "16" /* PostgreSQL major version number */ -#define PG_MAJORVERSION_NUM 15 +#define PG_MAJORVERSION_NUM 16 /* PostgreSQL minor version number */ #define PG_MINORVERSION_NUM 1 @@ -839,13 +644,13 @@ #define PG_USE_STDBOOL 1 /* PostgreSQL version as a string */ -#define PG_VERSION "15.1" +#define PG_VERSION "16.1" /* PostgreSQL version as a number */ -#define PG_VERSION_NUM 150001 +#define PG_VERSION_NUM 160001 /* A string containing the version number, platform, and C compiler */ -#define PG_VERSION_STR "PostgreSQL 15.1 on aarch64-apple-darwin21.6.0, compiled by Apple clang version 14.0.0 (clang-1400.0.29.102), 64-bit" +#define PG_VERSION_STR "PostgreSQL 16.1 on aarch64-apple-darwin21.6.0, compiled by Apple clang version 14.0.0 (clang-1400.0.29.102), 64-bit" /* Define to 1 to allow profiling output to be saved separately for each process. */ diff --git a/parser/include/pg_config_manual.h b/parser/include/pg_config_manual.h index 8d2e3e3a..a1a93ad7 100644 --- a/parser/include/pg_config_manual.h +++ b/parser/include/pg_config_manual.h @@ -6,7 +6,7 @@ * for developers. If you edit any of these, be sure to do a *full* * rebuild (and an initdb if noted). * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/pg_config_manual.h @@ -114,17 +114,6 @@ */ #define MAXPGPATH 1024 -/* - * PG_SOMAXCONN: maximum accept-queue length limit passed to - * listen(2). You'd think we should use SOMAXCONN from - * , but on many systems that symbol is much smaller - * than the kernel's actual limit. In any case, this symbol need be - * twiddled only if you have a kernel that refuses large limit values, - * rather than silently reducing the value to what it can handle - * (which is what most if not all Unixen do). - */ -#define PG_SOMAXCONN 10000 - /* * You can try changing this if you have a machine with bytes of * another size, but no guarantee... @@ -152,13 +141,6 @@ #define EXEC_BACKEND #endif -/* - * Define this if your operating system supports link() - */ -#if !defined(WIN32) && !defined(__CYGWIN__) -#define HAVE_WORKING_LINK 1 -#endif - /* * USE_POSIX_FADVISE controls whether Postgres will attempt to use the * posix_fadvise() kernel call. Usually the automatic configure tests are @@ -234,32 +216,6 @@ */ #define DEFAULT_EVENT_SOURCE "PostgreSQL" -/* - * On PPC machines, decide whether to use the mutex hint bit in LWARX - * instructions. Setting the hint bit will slightly improve spinlock - * performance on POWER6 and later machines, but does nothing before that, - * and will result in illegal-instruction failures on some pre-POWER4 - * machines. By default we use the hint bit when building for 64-bit PPC, - * which should be safe in nearly all cases. You might want to override - * this if you are building 32-bit code for a known-recent PPC machine. - */ -#ifdef HAVE_PPC_LWARX_MUTEX_HINT /* must have assembler support in any case */ -#if defined(__ppc64__) || defined(__powerpc64__) -#define USE_PPC_LWARX_MUTEX_HINT -#endif -#endif - -/* - * On PPC machines, decide whether to use LWSYNC instructions in place of - * ISYNC and SYNC. This provides slightly better performance, but will - * result in illegal-instruction failures on some pre-POWER4 machines. - * By default we use LWSYNC when building for 64-bit PPC, which should be - * safe in nearly all cases. - */ -#if defined(__ppc64__) || defined(__powerpc64__) -#define USE_PPC_LWSYNC -#endif - /* * Assumed cache line size. This doesn't affect correctness, but can be used * for low-level optimizations. Currently, this is used to pad some data @@ -271,6 +227,12 @@ */ #define PG_CACHE_LINE_SIZE 128 +/* + * Assumed alignment requirement for direct I/O. 4K corresponds to common + * sector and memory page size. + */ +#define PG_IO_ALIGN_SIZE 4096 + /* *------------------------------------------------------------------------ * The following symbols are for enabling debugging code, not for @@ -355,7 +317,7 @@ /* * Recover memory used for relcache entries when invalidated. See - * RelationBuildDescr() in src/backend/utils/cache/relcache.c. + * RelationBuildDesc() in src/backend/utils/cache/relcache.c. * * This is active automatically for clobber-cache builds when clobbering is * active, but can be overridden here by explicitly defining diff --git a/parser/include/pg_getopt.h b/parser/include/pg_getopt.h index 9d91e602..252b4e19 100644 --- a/parser/include/pg_getopt.h +++ b/parser/include/pg_getopt.h @@ -11,7 +11,7 @@ * Portions Copyright (c) 1987, 1993, 1994 * The Regents of the University of California. All rights reserved. * - * Portions Copyright (c) 2003-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2003-2023, PostgreSQL Global Development Group * * src/include/pg_getopt.h */ diff --git a/parser/include/pg_query.h b/parser/include/pg_query.h index ba926c3e..c7d5701b 100644 --- a/parser/include/pg_query.h +++ b/parser/include/pg_query.h @@ -70,6 +70,27 @@ typedef struct { PgQueryError* error; } PgQueryNormalizeResult; +// Postgres parser options (parse mode and GUCs that affect parsing) + +typedef enum +{ + PG_QUERY_PARSE_DEFAULT = 0, + PG_QUERY_PARSE_TYPE_NAME, + PG_QUERY_PARSE_PLPGSQL_EXPR, + PG_QUERY_PARSE_PLPGSQL_ASSIGN1, + PG_QUERY_PARSE_PLPGSQL_ASSIGN2, + PG_QUERY_PARSE_PLPGSQL_ASSIGN3 +} PgQueryParseMode; + +// We technically only need 3 bits to store parse mode, but +// having 4 bits avoids API breaks if another one gets added. +#define PG_QUERY_PARSE_MODE_BITS 4 +#define PG_QUERY_PARSE_MODE_BITMASK ((1 << PG_QUERY_PARSE_MODE_BITS) - 1) + +#define PG_QUERY_DISABLE_BACKSLASH_QUOTE 16 // backslash_quote = off (default is safe_encoding, which is effectively on) +#define PG_QUERY_DISABLE_STANDARD_CONFORMING_STRINGS 32 // standard_conforming_strings = off (default is on) +#define PG_QUERY_DISABLE_ESCAPE_STRING_WARNING 64 // escape_string_warning = off (default is on) + #ifdef __cplusplus extern "C" { #endif @@ -77,10 +98,13 @@ extern "C" { PgQueryNormalizeResult pg_query_normalize(const char* input); PgQueryScanResult pg_query_scan(const char* input); PgQueryParseResult pg_query_parse(const char* input); +PgQueryParseResult pg_query_parse_opts(const char* input, int parser_options); PgQueryProtobufParseResult pg_query_parse_protobuf(const char* input); +PgQueryProtobufParseResult pg_query_parse_protobuf_opts(const char* input, int parser_options); PgQueryPlpgsqlParseResult pg_query_parse_plpgsql(const char* input); PgQueryFingerprintResult pg_query_fingerprint(const char* input); +PgQueryFingerprintResult pg_query_fingerprint_opts(const char* input, int parser_options); // Use pg_query_split_with_scanner when you need to split statements that may // contain parse errors, otherwise pg_query_split_with_parser is recommended @@ -107,9 +131,9 @@ void pg_query_free_fingerprint_result(PgQueryFingerprintResult result); void pg_query_exit(void); // Postgres version information -#define PG_MAJORVERSION "15" -#define PG_VERSION "15.1" -#define PG_VERSION_NUM 150001 +#define PG_MAJORVERSION "16" +#define PG_VERSION "16.1" +#define PG_VERSION_NUM 160001 // Deprecated APIs below diff --git a/parser/include/pg_query_enum_defs.c b/parser/include/pg_query_enum_defs.c index a64ccb6f..378ca9df 100644 --- a/parser/include/pg_query_enum_defs.c +++ b/parser/include/pg_query_enum_defs.c @@ -123,6 +123,17 @@ _enumToStringDefElemAction(DefElemAction value) { return NULL; } +static const char* +_enumToStringPartitionStrategy(PartitionStrategy value) { + switch(value) { + case PARTITION_STRATEGY_LIST: return "PARTITION_STRATEGY_LIST"; + case PARTITION_STRATEGY_RANGE: return "PARTITION_STRATEGY_RANGE"; + case PARTITION_STRATEGY_HASH: return "PARTITION_STRATEGY_HASH"; + } + Assert(false); + return NULL; +} + static const char* _enumToStringPartitionRangeDatumKind(PartitionRangeDatumKind value) { switch(value) { @@ -275,7 +286,6 @@ static const char* _enumToStringAlterTableType(AlterTableType value) { switch(value) { case AT_AddColumn: return "AT_AddColumn"; - case AT_AddColumnRecurse: return "AT_AddColumnRecurse"; case AT_AddColumnToView: return "AT_AddColumnToView"; case AT_ColumnDefault: return "AT_ColumnDefault"; case AT_CookedColumnDefault: return "AT_CookedColumnDefault"; @@ -289,19 +299,15 @@ _enumToStringAlterTableType(AlterTableType value) { case AT_SetStorage: return "AT_SetStorage"; case AT_SetCompression: return "AT_SetCompression"; case AT_DropColumn: return "AT_DropColumn"; - case AT_DropColumnRecurse: return "AT_DropColumnRecurse"; case AT_AddIndex: return "AT_AddIndex"; case AT_ReAddIndex: return "AT_ReAddIndex"; case AT_AddConstraint: return "AT_AddConstraint"; - case AT_AddConstraintRecurse: return "AT_AddConstraintRecurse"; case AT_ReAddConstraint: return "AT_ReAddConstraint"; case AT_ReAddDomainConstraint: return "AT_ReAddDomainConstraint"; case AT_AlterConstraint: return "AT_AlterConstraint"; case AT_ValidateConstraint: return "AT_ValidateConstraint"; - case AT_ValidateConstraintRecurse: return "AT_ValidateConstraintRecurse"; case AT_AddIndexConstraint: return "AT_AddIndexConstraint"; case AT_DropConstraint: return "AT_DropConstraint"; - case AT_DropConstraintRecurse: return "AT_DropConstraintRecurse"; case AT_ReAddComment: return "AT_ReAddComment"; case AT_AlterColumnType: return "AT_AlterColumnType"; case AT_AlterColumnGenericOptions: return "AT_AlterColumnGenericOptions"; @@ -699,6 +705,53 @@ _enumToStringXmlOptionType(XmlOptionType value) { return NULL; } +static const char* +_enumToStringJsonEncoding(JsonEncoding value) { + switch(value) { + case JS_ENC_DEFAULT: return "JS_ENC_DEFAULT"; + case JS_ENC_UTF8: return "JS_ENC_UTF8"; + case JS_ENC_UTF16: return "JS_ENC_UTF16"; + case JS_ENC_UTF32: return "JS_ENC_UTF32"; + } + Assert(false); + return NULL; +} + +static const char* +_enumToStringJsonFormatType(JsonFormatType value) { + switch(value) { + case JS_FORMAT_DEFAULT: return "JS_FORMAT_DEFAULT"; + case JS_FORMAT_JSON: return "JS_FORMAT_JSON"; + case JS_FORMAT_JSONB: return "JS_FORMAT_JSONB"; + } + Assert(false); + return NULL; +} + +static const char* +_enumToStringJsonConstructorType(JsonConstructorType value) { + switch(value) { + case JSCTOR_JSON_OBJECT: return "JSCTOR_JSON_OBJECT"; + case JSCTOR_JSON_ARRAY: return "JSCTOR_JSON_ARRAY"; + case JSCTOR_JSON_OBJECTAGG: return "JSCTOR_JSON_OBJECTAGG"; + case JSCTOR_JSON_ARRAYAGG: return "JSCTOR_JSON_ARRAYAGG"; + } + Assert(false); + return NULL; +} + +static const char* +_enumToStringJsonValueType(JsonValueType value) { + switch(value) { + case JS_TYPE_ANY: return "JS_TYPE_ANY"; + case JS_TYPE_OBJECT: return "JS_TYPE_OBJECT"; + case JS_TYPE_ARRAY: return "JS_TYPE_ARRAY"; + case JS_TYPE_SCALAR: return "JS_TYPE_SCALAR"; + } + Assert(false); + return NULL; +} + static const char* _enumToStringNullTestType(NullTestType value) { switch(value) { @@ -748,6 +801,7 @@ _enumToStringJoinType(JoinType value) { case JOIN_RIGHT: return "JOIN_RIGHT"; case JOIN_SEMI: return "JOIN_SEMI"; case JOIN_ANTI: return "JOIN_ANTI"; + case JOIN_RIGHT_ANTI: return "JOIN_RIGHT_ANTI"; case JOIN_UNIQUE_OUTER: return "JOIN_UNIQUE_OUTER"; case JOIN_UNIQUE_INNER: return "JOIN_UNIQUE_INNER"; } @@ -979,6 +1033,17 @@ _enumToIntDefElemAction(DefElemAction value) { return -1; } +static int +_enumToIntPartitionStrategy(PartitionStrategy value) { + switch(value) { + case PARTITION_STRATEGY_LIST: return 1; + case PARTITION_STRATEGY_RANGE: return 2; + case PARTITION_STRATEGY_HASH: return 3; + } + Assert(false); + return -1; +} + static int _enumToIntPartitionRangeDatumKind(PartitionRangeDatumKind value) { switch(value) { @@ -1131,76 +1196,71 @@ static int _enumToIntAlterTableType(AlterTableType value) { switch(value) { case AT_AddColumn: return 1; - case AT_AddColumnRecurse: return 2; - case AT_AddColumnToView: return 3; - case AT_ColumnDefault: return 4; - case AT_CookedColumnDefault: return 5; - case AT_DropNotNull: return 6; - case AT_SetNotNull: return 7; - case AT_DropExpression: return 8; - case AT_CheckNotNull: return 9; - case AT_SetStatistics: return 10; - case AT_SetOptions: return 11; - case AT_ResetOptions: return 12; - case AT_SetStorage: return 13; - case AT_SetCompression: return 14; - case AT_DropColumn: return 15; - case AT_DropColumnRecurse: return 16; - case AT_AddIndex: return 17; - case AT_ReAddIndex: return 18; - case AT_AddConstraint: return 19; - case AT_AddConstraintRecurse: return 20; - case AT_ReAddConstraint: return 21; - case AT_ReAddDomainConstraint: return 22; - case AT_AlterConstraint: return 23; - case AT_ValidateConstraint: return 24; - case AT_ValidateConstraintRecurse: return 25; - case AT_AddIndexConstraint: return 26; - case AT_DropConstraint: return 27; - case AT_DropConstraintRecurse: return 28; - case AT_ReAddComment: return 29; - case AT_AlterColumnType: return 30; - case AT_AlterColumnGenericOptions: return 31; - case AT_ChangeOwner: return 32; - case AT_ClusterOn: return 33; - case AT_DropCluster: return 34; - case AT_SetLogged: return 35; - case AT_SetUnLogged: return 36; - case AT_DropOids: return 37; - case AT_SetAccessMethod: return 38; - case AT_SetTableSpace: return 39; - case AT_SetRelOptions: return 40; - case AT_ResetRelOptions: return 41; - case AT_ReplaceRelOptions: return 42; - case AT_EnableTrig: return 43; - case AT_EnableAlwaysTrig: return 44; - case AT_EnableReplicaTrig: return 45; - case AT_DisableTrig: return 46; - case AT_EnableTrigAll: return 47; - case AT_DisableTrigAll: return 48; - case AT_EnableTrigUser: return 49; - case AT_DisableTrigUser: return 50; - case AT_EnableRule: return 51; - case AT_EnableAlwaysRule: return 52; - case AT_EnableReplicaRule: return 53; - case AT_DisableRule: return 54; - case AT_AddInherit: return 55; - case AT_DropInherit: return 56; - case AT_AddOf: return 57; - case AT_DropOf: return 58; - case AT_ReplicaIdentity: return 59; - case AT_EnableRowSecurity: return 60; - case AT_DisableRowSecurity: return 61; - case AT_ForceRowSecurity: return 62; - case AT_NoForceRowSecurity: return 63; - case AT_GenericOptions: return 64; - case AT_AttachPartition: return 65; - case AT_DetachPartition: return 66; - case AT_DetachPartitionFinalize: return 67; - case AT_AddIdentity: return 68; - case AT_SetIdentity: return 69; - case AT_DropIdentity: return 70; - case AT_ReAddStatistics: return 71; + case AT_AddColumnToView: return 2; + case AT_ColumnDefault: return 3; + case AT_CookedColumnDefault: return 4; + case AT_DropNotNull: return 5; + case AT_SetNotNull: return 6; + case AT_DropExpression: return 7; + case AT_CheckNotNull: return 8; + case AT_SetStatistics: return 9; + case AT_SetOptions: return 10; + case AT_ResetOptions: return 11; + case AT_SetStorage: return 12; + case AT_SetCompression: return 13; + case AT_DropColumn: return 14; + case AT_AddIndex: return 15; + case AT_ReAddIndex: return 16; + case AT_AddConstraint: return 17; + case AT_ReAddConstraint: return 18; + case AT_ReAddDomainConstraint: return 19; + case AT_AlterConstraint: return 20; + case AT_ValidateConstraint: return 21; + case AT_AddIndexConstraint: return 22; + case AT_DropConstraint: return 23; + case AT_ReAddComment: return 24; + case AT_AlterColumnType: return 25; + case AT_AlterColumnGenericOptions: return 26; + case AT_ChangeOwner: return 27; + case AT_ClusterOn: return 28; + case AT_DropCluster: return 29; + case AT_SetLogged: return 30; + case AT_SetUnLogged: return 31; + case AT_DropOids: return 32; + case AT_SetAccessMethod: return 33; + case AT_SetTableSpace: return 34; + case AT_SetRelOptions: return 35; + case AT_ResetRelOptions: return 36; + case AT_ReplaceRelOptions: return 37; + case AT_EnableTrig: return 38; + case AT_EnableAlwaysTrig: return 39; + case AT_EnableReplicaTrig: return 40; + case AT_DisableTrig: return 41; + case AT_EnableTrigAll: return 42; + case AT_DisableTrigAll: return 43; + case AT_EnableTrigUser: return 44; + case AT_DisableTrigUser: return 45; + case AT_EnableRule: return 46; + case AT_EnableAlwaysRule: return 47; + case AT_EnableReplicaRule: return 48; + case AT_DisableRule: return 49; + case AT_AddInherit: return 50; + case AT_DropInherit: return 51; + case AT_AddOf: return 52; + case AT_DropOf: return 53; + case AT_ReplicaIdentity: return 54; + case AT_EnableRowSecurity: return 55; + case AT_DisableRowSecurity: return 56; + case AT_ForceRowSecurity: return 57; + case AT_NoForceRowSecurity: return 58; + case AT_GenericOptions: return 59; + case AT_AttachPartition: return 60; + case AT_DetachPartition: return 61; + case AT_DetachPartitionFinalize: return 62; + case AT_AddIdentity: return 63; + case AT_SetIdentity: return 64; + case AT_DropIdentity: return 65; + case AT_ReAddStatistics: return 66; } Assert(false); return -1; @@ -1555,6 +1615,53 @@ _enumToIntXmlOptionType(XmlOptionType value) { return -1; } +static int +_enumToIntJsonEncoding(JsonEncoding value) { + switch(value) { + case JS_ENC_DEFAULT: return 1; + case JS_ENC_UTF8: return 2; + case JS_ENC_UTF16: return 3; + case JS_ENC_UTF32: return 4; + } + Assert(false); + return -1; +} + +static int +_enumToIntJsonFormatType(JsonFormatType value) { + switch(value) { + case JS_FORMAT_DEFAULT: return 1; + case JS_FORMAT_JSON: return 2; + case JS_FORMAT_JSONB: return 3; + } + Assert(false); + return -1; +} + +static int +_enumToIntJsonConstructorType(JsonConstructorType value) { + switch(value) { + case JSCTOR_JSON_OBJECT: return 1; + case JSCTOR_JSON_ARRAY: return 2; + case JSCTOR_JSON_OBJECTAGG: return 3; + case JSCTOR_JSON_ARRAYAGG: return 4; + } + Assert(false); + return -1; +} + +static int +_enumToIntJsonValueType(JsonValueType value) { + switch(value) { + case JS_TYPE_ANY: return 1; + case JS_TYPE_OBJECT: return 2; + case JS_TYPE_ARRAY: return 3; + case JS_TYPE_SCALAR: return 4; + } + Assert(false); + return -1; +} + static int _enumToIntNullTestType(NullTestType value) { switch(value) { @@ -1604,8 +1711,9 @@ _enumToIntJoinType(JoinType value) { case JOIN_RIGHT: return 4; case JOIN_SEMI: return 5; case JOIN_ANTI: return 6; - case JOIN_UNIQUE_OUTER: return 7; - case JOIN_UNIQUE_INNER: return 8; + case JOIN_RIGHT_ANTI: return 7; + case JOIN_UNIQUE_OUTER: return 8; + case JOIN_UNIQUE_INNER: return 9; } Assert(false); return -1; @@ -1835,6 +1943,17 @@ _intToEnumDefElemAction(int value) { return DEFELEM_UNSPEC; } +static PartitionStrategy +_intToEnumPartitionStrategy(int value) { + switch(value) { + case 1: return PARTITION_STRATEGY_LIST; + case 2: return PARTITION_STRATEGY_RANGE; + case 3: return PARTITION_STRATEGY_HASH; + } + Assert(false); + return PARTITION_STRATEGY_LIST; +} + static PartitionRangeDatumKind _intToEnumPartitionRangeDatumKind(int value) { switch(value) { @@ -1987,76 +2106,71 @@ static AlterTableType _intToEnumAlterTableType(int value) { switch(value) { case 1: return AT_AddColumn; - case 2: return AT_AddColumnRecurse; - case 3: return AT_AddColumnToView; - case 4: return AT_ColumnDefault; - case 5: return AT_CookedColumnDefault; - case 6: return AT_DropNotNull; - case 7: return AT_SetNotNull; - case 8: return AT_DropExpression; - case 9: return AT_CheckNotNull; - case 10: return AT_SetStatistics; - case 11: return AT_SetOptions; - case 12: return AT_ResetOptions; - case 13: return AT_SetStorage; - case 14: return AT_SetCompression; - case 15: return AT_DropColumn; - case 16: return AT_DropColumnRecurse; - case 17: return AT_AddIndex; - case 18: return AT_ReAddIndex; - case 19: return AT_AddConstraint; - case 20: return AT_AddConstraintRecurse; - case 21: return AT_ReAddConstraint; - case 22: return AT_ReAddDomainConstraint; - case 23: return AT_AlterConstraint; - case 24: return AT_ValidateConstraint; - case 25: return AT_ValidateConstraintRecurse; - case 26: return AT_AddIndexConstraint; - case 27: return AT_DropConstraint; - case 28: return AT_DropConstraintRecurse; - case 29: return AT_ReAddComment; - case 30: return AT_AlterColumnType; - case 31: return AT_AlterColumnGenericOptions; - case 32: return AT_ChangeOwner; - case 33: return AT_ClusterOn; - case 34: return AT_DropCluster; - case 35: return AT_SetLogged; - case 36: return AT_SetUnLogged; - case 37: return AT_DropOids; - case 38: return AT_SetAccessMethod; - case 39: return AT_SetTableSpace; - case 40: return AT_SetRelOptions; - case 41: return AT_ResetRelOptions; - case 42: return AT_ReplaceRelOptions; - case 43: return AT_EnableTrig; - case 44: return AT_EnableAlwaysTrig; - case 45: return AT_EnableReplicaTrig; - case 46: return AT_DisableTrig; - case 47: return AT_EnableTrigAll; - case 48: return AT_DisableTrigAll; - case 49: return AT_EnableTrigUser; - case 50: return AT_DisableTrigUser; - case 51: return AT_EnableRule; - case 52: return AT_EnableAlwaysRule; - case 53: return AT_EnableReplicaRule; - case 54: return AT_DisableRule; - case 55: return AT_AddInherit; - case 56: return AT_DropInherit; - case 57: return AT_AddOf; - case 58: return AT_DropOf; - case 59: return AT_ReplicaIdentity; - case 60: return AT_EnableRowSecurity; - case 61: return AT_DisableRowSecurity; - case 62: return AT_ForceRowSecurity; - case 63: return AT_NoForceRowSecurity; - case 64: return AT_GenericOptions; - case 65: return AT_AttachPartition; - case 66: return AT_DetachPartition; - case 67: return AT_DetachPartitionFinalize; - case 68: return AT_AddIdentity; - case 69: return AT_SetIdentity; - case 70: return AT_DropIdentity; - case 71: return AT_ReAddStatistics; + case 2: return AT_AddColumnToView; + case 3: return AT_ColumnDefault; + case 4: return AT_CookedColumnDefault; + case 5: return AT_DropNotNull; + case 6: return AT_SetNotNull; + case 7: return AT_DropExpression; + case 8: return AT_CheckNotNull; + case 9: return AT_SetStatistics; + case 10: return AT_SetOptions; + case 11: return AT_ResetOptions; + case 12: return AT_SetStorage; + case 13: return AT_SetCompression; + case 14: return AT_DropColumn; + case 15: return AT_AddIndex; + case 16: return AT_ReAddIndex; + case 17: return AT_AddConstraint; + case 18: return AT_ReAddConstraint; + case 19: return AT_ReAddDomainConstraint; + case 20: return AT_AlterConstraint; + case 21: return AT_ValidateConstraint; + case 22: return AT_AddIndexConstraint; + case 23: return AT_DropConstraint; + case 24: return AT_ReAddComment; + case 25: return AT_AlterColumnType; + case 26: return AT_AlterColumnGenericOptions; + case 27: return AT_ChangeOwner; + case 28: return AT_ClusterOn; + case 29: return AT_DropCluster; + case 30: return AT_SetLogged; + case 31: return AT_SetUnLogged; + case 32: return AT_DropOids; + case 33: return AT_SetAccessMethod; + case 34: return AT_SetTableSpace; + case 35: return AT_SetRelOptions; + case 36: return AT_ResetRelOptions; + case 37: return AT_ReplaceRelOptions; + case 38: return AT_EnableTrig; + case 39: return AT_EnableAlwaysTrig; + case 40: return AT_EnableReplicaTrig; + case 41: return AT_DisableTrig; + case 42: return AT_EnableTrigAll; + case 43: return AT_DisableTrigAll; + case 44: return AT_EnableTrigUser; + case 45: return AT_DisableTrigUser; + case 46: return AT_EnableRule; + case 47: return AT_EnableAlwaysRule; + case 48: return AT_EnableReplicaRule; + case 49: return AT_DisableRule; + case 50: return AT_AddInherit; + case 51: return AT_DropInherit; + case 52: return AT_AddOf; + case 53: return AT_DropOf; + case 54: return AT_ReplicaIdentity; + case 55: return AT_EnableRowSecurity; + case 56: return AT_DisableRowSecurity; + case 57: return AT_ForceRowSecurity; + case 58: return AT_NoForceRowSecurity; + case 59: return AT_GenericOptions; + case 60: return AT_AttachPartition; + case 61: return AT_DetachPartition; + case 62: return AT_DetachPartitionFinalize; + case 63: return AT_AddIdentity; + case 64: return AT_SetIdentity; + case 65: return AT_DropIdentity; + case 66: return AT_ReAddStatistics; } Assert(false); return AT_AddColumn; @@ -2411,6 +2525,53 @@ _intToEnumXmlOptionType(int value) { return XMLOPTION_DOCUMENT; } +static JsonEncoding +_intToEnumJsonEncoding(int value) { + switch(value) { + case 1: return JS_ENC_DEFAULT; + case 2: return JS_ENC_UTF8; + case 3: return JS_ENC_UTF16; + case 4: return JS_ENC_UTF32; + } + Assert(false); + return JS_ENC_DEFAULT; +} + +static JsonFormatType +_intToEnumJsonFormatType(int value) { + switch(value) { + case 1: return JS_FORMAT_DEFAULT; + case 2: return JS_FORMAT_JSON; + case 3: return JS_FORMAT_JSONB; + } + Assert(false); + return JS_FORMAT_DEFAULT; +} + +static JsonConstructorType +_intToEnumJsonConstructorType(int value) { + switch(value) { + case 1: return JSCTOR_JSON_OBJECT; + case 2: return JSCTOR_JSON_ARRAY; + case 3: return JSCTOR_JSON_OBJECTAGG; + case 4: return JSCTOR_JSON_ARRAYAGG; + } + Assert(false); + return JSCTOR_JSON_OBJECT; +} + +static JsonValueType +_intToEnumJsonValueType(int value) { + switch(value) { + case 1: return JS_TYPE_ANY; + case 2: return JS_TYPE_OBJECT; + case 3: return JS_TYPE_ARRAY; + case 4: return JS_TYPE_SCALAR; + } + Assert(false); + return JS_TYPE_ANY; +} + static NullTestType _intToEnumNullTestType(int value) { switch(value) { @@ -2460,8 +2621,9 @@ _intToEnumJoinType(int value) { case 4: return JOIN_RIGHT; case 5: return JOIN_SEMI; case 6: return JOIN_ANTI; - case 7: return JOIN_UNIQUE_OUTER; - case 8: return JOIN_UNIQUE_INNER; + case 7: return JOIN_RIGHT_ANTI; + case 8: return JOIN_UNIQUE_OUTER; + case 9: return JOIN_UNIQUE_INNER; } Assert(false); return JOIN_INNER; diff --git a/parser/include/pg_query_fingerprint_conds.c b/parser/include/pg_query_fingerprint_conds.c index 8247423b..278d50ab 100644 --- a/parser/include/pg_query_fingerprint_conds.c +++ b/parser/include/pg_query_fingerprint_conds.c @@ -9,6 +9,10 @@ case T_TableFunc: _fingerprintString(ctx, "TableFunc"); _fingerprintTableFunc(ctx, obj, parent, field_name, depth); break; +case T_IntoClause: + _fingerprintString(ctx, "IntoClause"); + _fingerprintIntoClause(ctx, obj, parent, field_name, depth); + break; case T_Var: _fingerprintString(ctx, "Var"); _fingerprintVar(ctx, obj, parent, field_name, depth); @@ -137,6 +141,26 @@ case T_XmlExpr: _fingerprintString(ctx, "XmlExpr"); _fingerprintXmlExpr(ctx, obj, parent, field_name, depth); break; +case T_JsonFormat: + _fingerprintString(ctx, "JsonFormat"); + _fingerprintJsonFormat(ctx, obj, parent, field_name, depth); + break; +case T_JsonReturning: + _fingerprintString(ctx, "JsonReturning"); + _fingerprintJsonReturning(ctx, obj, parent, field_name, depth); + break; +case T_JsonValueExpr: + _fingerprintString(ctx, "JsonValueExpr"); + _fingerprintJsonValueExpr(ctx, obj, parent, field_name, depth); + break; +case T_JsonConstructorExpr: + _fingerprintString(ctx, "JsonConstructorExpr"); + _fingerprintJsonConstructorExpr(ctx, obj, parent, field_name, depth); + break; +case T_JsonIsPredicate: + _fingerprintString(ctx, "JsonIsPredicate"); + _fingerprintJsonIsPredicate(ctx, obj, parent, field_name, depth); + break; case T_NullTest: _fingerprintString(ctx, "NullTest"); _fingerprintNullTest(ctx, obj, parent, field_name, depth); @@ -188,22 +212,248 @@ case T_OnConflictExpr: _fingerprintString(ctx, "OnConflictExpr"); _fingerprintOnConflictExpr(ctx, obj, parent, field_name, depth); break; -case T_IntoClause: - _fingerprintString(ctx, "IntoClause"); - _fingerprintIntoClause(ctx, obj, parent, field_name, depth); +case T_Query: + _fingerprintString(ctx, "Query"); + _fingerprintQuery(ctx, obj, parent, field_name, depth); + break; +case T_TypeName: + _fingerprintString(ctx, "TypeName"); + _fingerprintTypeName(ctx, obj, parent, field_name, depth); + break; +case T_ColumnRef: + _fingerprintString(ctx, "ColumnRef"); + _fingerprintColumnRef(ctx, obj, parent, field_name, depth); + break; +case T_ParamRef: + // Intentionally ignoring for fingerprinting + break; +case T_A_Expr: + _fingerprintString(ctx, "A_Expr"); + _fingerprintA_Expr(ctx, obj, parent, field_name, depth); + break; +case T_TypeCast: + if (!IsA(castNode(TypeCast, (void*) obj)->arg, A_Const) && !IsA(castNode(TypeCast, (void*) obj)->arg, ParamRef)) + { + _fingerprintString(ctx, "TypeCast"); + _fingerprintTypeCast(ctx, obj, parent, field_name, depth); + } + break; +case T_CollateClause: + _fingerprintString(ctx, "CollateClause"); + _fingerprintCollateClause(ctx, obj, parent, field_name, depth); + break; +case T_RoleSpec: + _fingerprintString(ctx, "RoleSpec"); + _fingerprintRoleSpec(ctx, obj, parent, field_name, depth); + break; +case T_FuncCall: + _fingerprintString(ctx, "FuncCall"); + _fingerprintFuncCall(ctx, obj, parent, field_name, depth); + break; +case T_A_Star: + _fingerprintString(ctx, "A_Star"); + _fingerprintA_Star(ctx, obj, parent, field_name, depth); + break; +case T_A_Indices: + _fingerprintString(ctx, "A_Indices"); + _fingerprintA_Indices(ctx, obj, parent, field_name, depth); + break; +case T_A_Indirection: + _fingerprintString(ctx, "A_Indirection"); + _fingerprintA_Indirection(ctx, obj, parent, field_name, depth); + break; +case T_A_ArrayExpr: + _fingerprintString(ctx, "A_ArrayExpr"); + _fingerprintA_ArrayExpr(ctx, obj, parent, field_name, depth); + break; +case T_ResTarget: + _fingerprintString(ctx, "ResTarget"); + _fingerprintResTarget(ctx, obj, parent, field_name, depth); + break; +case T_MultiAssignRef: + _fingerprintString(ctx, "MultiAssignRef"); + _fingerprintMultiAssignRef(ctx, obj, parent, field_name, depth); + break; +case T_SortBy: + _fingerprintString(ctx, "SortBy"); + _fingerprintSortBy(ctx, obj, parent, field_name, depth); + break; +case T_WindowDef: + _fingerprintString(ctx, "WindowDef"); + _fingerprintWindowDef(ctx, obj, parent, field_name, depth); + break; +case T_RangeSubselect: + _fingerprintString(ctx, "RangeSubselect"); + _fingerprintRangeSubselect(ctx, obj, parent, field_name, depth); + break; +case T_RangeFunction: + _fingerprintString(ctx, "RangeFunction"); + _fingerprintRangeFunction(ctx, obj, parent, field_name, depth); + break; +case T_RangeTableFunc: + _fingerprintString(ctx, "RangeTableFunc"); + _fingerprintRangeTableFunc(ctx, obj, parent, field_name, depth); + break; +case T_RangeTableFuncCol: + _fingerprintString(ctx, "RangeTableFuncCol"); + _fingerprintRangeTableFuncCol(ctx, obj, parent, field_name, depth); + break; +case T_RangeTableSample: + _fingerprintString(ctx, "RangeTableSample"); + _fingerprintRangeTableSample(ctx, obj, parent, field_name, depth); + break; +case T_ColumnDef: + _fingerprintString(ctx, "ColumnDef"); + _fingerprintColumnDef(ctx, obj, parent, field_name, depth); + break; +case T_TableLikeClause: + _fingerprintString(ctx, "TableLikeClause"); + _fingerprintTableLikeClause(ctx, obj, parent, field_name, depth); + break; +case T_IndexElem: + _fingerprintString(ctx, "IndexElem"); + _fingerprintIndexElem(ctx, obj, parent, field_name, depth); + break; +case T_DefElem: + _fingerprintString(ctx, "DefElem"); + _fingerprintDefElem(ctx, obj, parent, field_name, depth); + break; +case T_LockingClause: + _fingerprintString(ctx, "LockingClause"); + _fingerprintLockingClause(ctx, obj, parent, field_name, depth); + break; +case T_XmlSerialize: + _fingerprintString(ctx, "XmlSerialize"); + _fingerprintXmlSerialize(ctx, obj, parent, field_name, depth); + break; +case T_PartitionElem: + _fingerprintString(ctx, "PartitionElem"); + _fingerprintPartitionElem(ctx, obj, parent, field_name, depth); + break; +case T_PartitionSpec: + _fingerprintString(ctx, "PartitionSpec"); + _fingerprintPartitionSpec(ctx, obj, parent, field_name, depth); + break; +case T_PartitionBoundSpec: + _fingerprintString(ctx, "PartitionBoundSpec"); + _fingerprintPartitionBoundSpec(ctx, obj, parent, field_name, depth); + break; +case T_PartitionRangeDatum: + _fingerprintString(ctx, "PartitionRangeDatum"); + _fingerprintPartitionRangeDatum(ctx, obj, parent, field_name, depth); + break; +case T_PartitionCmd: + _fingerprintString(ctx, "PartitionCmd"); + _fingerprintPartitionCmd(ctx, obj, parent, field_name, depth); + break; +case T_RangeTblEntry: + _fingerprintString(ctx, "RangeTblEntry"); + _fingerprintRangeTblEntry(ctx, obj, parent, field_name, depth); + break; +case T_RTEPermissionInfo: + _fingerprintString(ctx, "RTEPermissionInfo"); + _fingerprintRTEPermissionInfo(ctx, obj, parent, field_name, depth); + break; +case T_RangeTblFunction: + _fingerprintString(ctx, "RangeTblFunction"); + _fingerprintRangeTblFunction(ctx, obj, parent, field_name, depth); + break; +case T_TableSampleClause: + _fingerprintString(ctx, "TableSampleClause"); + _fingerprintTableSampleClause(ctx, obj, parent, field_name, depth); + break; +case T_WithCheckOption: + _fingerprintString(ctx, "WithCheckOption"); + _fingerprintWithCheckOption(ctx, obj, parent, field_name, depth); + break; +case T_SortGroupClause: + _fingerprintString(ctx, "SortGroupClause"); + _fingerprintSortGroupClause(ctx, obj, parent, field_name, depth); + break; +case T_GroupingSet: + _fingerprintString(ctx, "GroupingSet"); + _fingerprintGroupingSet(ctx, obj, parent, field_name, depth); + break; +case T_WindowClause: + _fingerprintString(ctx, "WindowClause"); + _fingerprintWindowClause(ctx, obj, parent, field_name, depth); + break; +case T_RowMarkClause: + _fingerprintString(ctx, "RowMarkClause"); + _fingerprintRowMarkClause(ctx, obj, parent, field_name, depth); + break; +case T_WithClause: + _fingerprintString(ctx, "WithClause"); + _fingerprintWithClause(ctx, obj, parent, field_name, depth); + break; +case T_InferClause: + _fingerprintString(ctx, "InferClause"); + _fingerprintInferClause(ctx, obj, parent, field_name, depth); + break; +case T_OnConflictClause: + _fingerprintString(ctx, "OnConflictClause"); + _fingerprintOnConflictClause(ctx, obj, parent, field_name, depth); + break; +case T_CTESearchClause: + _fingerprintString(ctx, "CTESearchClause"); + _fingerprintCTESearchClause(ctx, obj, parent, field_name, depth); + break; +case T_CTECycleClause: + _fingerprintString(ctx, "CTECycleClause"); + _fingerprintCTECycleClause(ctx, obj, parent, field_name, depth); + break; +case T_CommonTableExpr: + _fingerprintString(ctx, "CommonTableExpr"); + _fingerprintCommonTableExpr(ctx, obj, parent, field_name, depth); + break; +case T_MergeWhenClause: + _fingerprintString(ctx, "MergeWhenClause"); + _fingerprintMergeWhenClause(ctx, obj, parent, field_name, depth); break; case T_MergeAction: _fingerprintString(ctx, "MergeAction"); _fingerprintMergeAction(ctx, obj, parent, field_name, depth); break; +case T_TriggerTransition: + _fingerprintString(ctx, "TriggerTransition"); + _fingerprintTriggerTransition(ctx, obj, parent, field_name, depth); + break; +case T_JsonOutput: + _fingerprintString(ctx, "JsonOutput"); + _fingerprintJsonOutput(ctx, obj, parent, field_name, depth); + break; +case T_JsonKeyValue: + _fingerprintString(ctx, "JsonKeyValue"); + _fingerprintJsonKeyValue(ctx, obj, parent, field_name, depth); + break; +case T_JsonObjectConstructor: + _fingerprintString(ctx, "JsonObjectConstructor"); + _fingerprintJsonObjectConstructor(ctx, obj, parent, field_name, depth); + break; +case T_JsonArrayConstructor: + _fingerprintString(ctx, "JsonArrayConstructor"); + _fingerprintJsonArrayConstructor(ctx, obj, parent, field_name, depth); + break; +case T_JsonArrayQueryConstructor: + _fingerprintString(ctx, "JsonArrayQueryConstructor"); + _fingerprintJsonArrayQueryConstructor(ctx, obj, parent, field_name, depth); + break; +case T_JsonAggConstructor: + _fingerprintString(ctx, "JsonAggConstructor"); + _fingerprintJsonAggConstructor(ctx, obj, parent, field_name, depth); + break; +case T_JsonObjectAgg: + _fingerprintString(ctx, "JsonObjectAgg"); + _fingerprintJsonObjectAgg(ctx, obj, parent, field_name, depth); + break; +case T_JsonArrayAgg: + _fingerprintString(ctx, "JsonArrayAgg"); + _fingerprintJsonArrayAgg(ctx, obj, parent, field_name, depth); + break; case T_RawStmt: _fingerprintString(ctx, "RawStmt"); _fingerprintRawStmt(ctx, obj, parent, field_name, depth); break; -case T_Query: - _fingerprintString(ctx, "Query"); - _fingerprintQuery(ctx, obj, parent, field_name, depth); - break; case T_InsertStmt: _fingerprintString(ctx, "InsertStmt"); _fingerprintInsertStmt(ctx, obj, parent, field_name, depth); @@ -224,6 +474,10 @@ case T_SelectStmt: _fingerprintString(ctx, "SelectStmt"); _fingerprintSelectStmt(ctx, obj, parent, field_name, depth); break; +case T_SetOperationStmt: + _fingerprintString(ctx, "SetOperationStmt"); + _fingerprintSetOperationStmt(ctx, obj, parent, field_name, depth); + break; case T_ReturnStmt: _fingerprintString(ctx, "ReturnStmt"); _fingerprintReturnStmt(ctx, obj, parent, field_name, depth); @@ -232,26 +486,42 @@ case T_PLAssignStmt: _fingerprintString(ctx, "PLAssignStmt"); _fingerprintPLAssignStmt(ctx, obj, parent, field_name, depth); break; +case T_CreateSchemaStmt: + _fingerprintString(ctx, "CreateSchemaStmt"); + _fingerprintCreateSchemaStmt(ctx, obj, parent, field_name, depth); + break; case T_AlterTableStmt: _fingerprintString(ctx, "AlterTableStmt"); _fingerprintAlterTableStmt(ctx, obj, parent, field_name, depth); break; +case T_ReplicaIdentityStmt: + _fingerprintString(ctx, "ReplicaIdentityStmt"); + _fingerprintReplicaIdentityStmt(ctx, obj, parent, field_name, depth); + break; case T_AlterTableCmd: _fingerprintString(ctx, "AlterTableCmd"); _fingerprintAlterTableCmd(ctx, obj, parent, field_name, depth); break; +case T_AlterCollationStmt: + _fingerprintString(ctx, "AlterCollationStmt"); + _fingerprintAlterCollationStmt(ctx, obj, parent, field_name, depth); + break; case T_AlterDomainStmt: _fingerprintString(ctx, "AlterDomainStmt"); _fingerprintAlterDomainStmt(ctx, obj, parent, field_name, depth); break; -case T_SetOperationStmt: - _fingerprintString(ctx, "SetOperationStmt"); - _fingerprintSetOperationStmt(ctx, obj, parent, field_name, depth); - break; case T_GrantStmt: _fingerprintString(ctx, "GrantStmt"); _fingerprintGrantStmt(ctx, obj, parent, field_name, depth); break; +case T_ObjectWithArgs: + _fingerprintString(ctx, "ObjectWithArgs"); + _fingerprintObjectWithArgs(ctx, obj, parent, field_name, depth); + break; +case T_AccessPriv: + _fingerprintString(ctx, "AccessPriv"); + _fingerprintAccessPriv(ctx, obj, parent, field_name, depth); + break; case T_GrantRoleStmt: _fingerprintString(ctx, "GrantRoleStmt"); _fingerprintGrantRoleStmt(ctx, obj, parent, field_name, depth); @@ -260,26 +530,166 @@ case T_AlterDefaultPrivilegesStmt: _fingerprintString(ctx, "AlterDefaultPrivilegesStmt"); _fingerprintAlterDefaultPrivilegesStmt(ctx, obj, parent, field_name, depth); break; -case T_ClosePortalStmt: - _fingerprintString(ctx, "ClosePortalStmt"); - _fingerprintClosePortalStmt(ctx, obj, parent, field_name, depth); +case T_CopyStmt: + _fingerprintString(ctx, "CopyStmt"); + _fingerprintCopyStmt(ctx, obj, parent, field_name, depth); break; -case T_ClusterStmt: - _fingerprintString(ctx, "ClusterStmt"); - _fingerprintClusterStmt(ctx, obj, parent, field_name, depth); +case T_VariableSetStmt: + _fingerprintString(ctx, "VariableSetStmt"); + _fingerprintVariableSetStmt(ctx, obj, parent, field_name, depth); break; -case T_CopyStmt: - _fingerprintString(ctx, "CopyStmt"); - _fingerprintCopyStmt(ctx, obj, parent, field_name, depth); +case T_VariableShowStmt: + _fingerprintString(ctx, "VariableShowStmt"); + _fingerprintVariableShowStmt(ctx, obj, parent, field_name, depth); break; case T_CreateStmt: _fingerprintString(ctx, "CreateStmt"); _fingerprintCreateStmt(ctx, obj, parent, field_name, depth); break; +case T_Constraint: + _fingerprintString(ctx, "Constraint"); + _fingerprintConstraint(ctx, obj, parent, field_name, depth); + break; +case T_CreateTableSpaceStmt: + _fingerprintString(ctx, "CreateTableSpaceStmt"); + _fingerprintCreateTableSpaceStmt(ctx, obj, parent, field_name, depth); + break; +case T_DropTableSpaceStmt: + _fingerprintString(ctx, "DropTableSpaceStmt"); + _fingerprintDropTableSpaceStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterTableSpaceOptionsStmt: + _fingerprintString(ctx, "AlterTableSpaceOptionsStmt"); + _fingerprintAlterTableSpaceOptionsStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterTableMoveAllStmt: + _fingerprintString(ctx, "AlterTableMoveAllStmt"); + _fingerprintAlterTableMoveAllStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateExtensionStmt: + _fingerprintString(ctx, "CreateExtensionStmt"); + _fingerprintCreateExtensionStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterExtensionStmt: + _fingerprintString(ctx, "AlterExtensionStmt"); + _fingerprintAlterExtensionStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterExtensionContentsStmt: + _fingerprintString(ctx, "AlterExtensionContentsStmt"); + _fingerprintAlterExtensionContentsStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateFdwStmt: + _fingerprintString(ctx, "CreateFdwStmt"); + _fingerprintCreateFdwStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterFdwStmt: + _fingerprintString(ctx, "AlterFdwStmt"); + _fingerprintAlterFdwStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateForeignServerStmt: + _fingerprintString(ctx, "CreateForeignServerStmt"); + _fingerprintCreateForeignServerStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterForeignServerStmt: + _fingerprintString(ctx, "AlterForeignServerStmt"); + _fingerprintAlterForeignServerStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateForeignTableStmt: + _fingerprintString(ctx, "CreateForeignTableStmt"); + _fingerprintCreateForeignTableStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateUserMappingStmt: + _fingerprintString(ctx, "CreateUserMappingStmt"); + _fingerprintCreateUserMappingStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterUserMappingStmt: + _fingerprintString(ctx, "AlterUserMappingStmt"); + _fingerprintAlterUserMappingStmt(ctx, obj, parent, field_name, depth); + break; +case T_DropUserMappingStmt: + _fingerprintString(ctx, "DropUserMappingStmt"); + _fingerprintDropUserMappingStmt(ctx, obj, parent, field_name, depth); + break; +case T_ImportForeignSchemaStmt: + _fingerprintString(ctx, "ImportForeignSchemaStmt"); + _fingerprintImportForeignSchemaStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreatePolicyStmt: + _fingerprintString(ctx, "CreatePolicyStmt"); + _fingerprintCreatePolicyStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterPolicyStmt: + _fingerprintString(ctx, "AlterPolicyStmt"); + _fingerprintAlterPolicyStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateAmStmt: + _fingerprintString(ctx, "CreateAmStmt"); + _fingerprintCreateAmStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateTrigStmt: + _fingerprintString(ctx, "CreateTrigStmt"); + _fingerprintCreateTrigStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateEventTrigStmt: + _fingerprintString(ctx, "CreateEventTrigStmt"); + _fingerprintCreateEventTrigStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterEventTrigStmt: + _fingerprintString(ctx, "AlterEventTrigStmt"); + _fingerprintAlterEventTrigStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreatePLangStmt: + _fingerprintString(ctx, "CreatePLangStmt"); + _fingerprintCreatePLangStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateRoleStmt: + _fingerprintString(ctx, "CreateRoleStmt"); + _fingerprintCreateRoleStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterRoleStmt: + _fingerprintString(ctx, "AlterRoleStmt"); + _fingerprintAlterRoleStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterRoleSetStmt: + _fingerprintString(ctx, "AlterRoleSetStmt"); + _fingerprintAlterRoleSetStmt(ctx, obj, parent, field_name, depth); + break; +case T_DropRoleStmt: + _fingerprintString(ctx, "DropRoleStmt"); + _fingerprintDropRoleStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateSeqStmt: + _fingerprintString(ctx, "CreateSeqStmt"); + _fingerprintCreateSeqStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterSeqStmt: + _fingerprintString(ctx, "AlterSeqStmt"); + _fingerprintAlterSeqStmt(ctx, obj, parent, field_name, depth); + break; case T_DefineStmt: _fingerprintString(ctx, "DefineStmt"); _fingerprintDefineStmt(ctx, obj, parent, field_name, depth); break; +case T_CreateDomainStmt: + _fingerprintString(ctx, "CreateDomainStmt"); + _fingerprintCreateDomainStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateOpClassStmt: + _fingerprintString(ctx, "CreateOpClassStmt"); + _fingerprintCreateOpClassStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateOpClassItem: + _fingerprintString(ctx, "CreateOpClassItem"); + _fingerprintCreateOpClassItem(ctx, obj, parent, field_name, depth); + break; +case T_CreateOpFamilyStmt: + _fingerprintString(ctx, "CreateOpFamilyStmt"); + _fingerprintCreateOpFamilyStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterOpFamilyStmt: + _fingerprintString(ctx, "AlterOpFamilyStmt"); + _fingerprintAlterOpFamilyStmt(ctx, obj, parent, field_name, depth); + break; case T_DropStmt: _fingerprintString(ctx, "DropStmt"); _fingerprintDropStmt(ctx, obj, parent, field_name, depth); @@ -292,6 +702,18 @@ case T_CommentStmt: _fingerprintString(ctx, "CommentStmt"); _fingerprintCommentStmt(ctx, obj, parent, field_name, depth); break; +case T_SecLabelStmt: + _fingerprintString(ctx, "SecLabelStmt"); + _fingerprintSecLabelStmt(ctx, obj, parent, field_name, depth); + break; +case T_DeclareCursorStmt: + _fingerprintString(ctx, "DeclareCursorStmt"); + _fingerprintDeclareCursorStmt(ctx, obj, parent, field_name, depth); + break; +case T_ClosePortalStmt: + _fingerprintString(ctx, "ClosePortalStmt"); + _fingerprintClosePortalStmt(ctx, obj, parent, field_name, depth); + break; case T_FetchStmt: _fingerprintString(ctx, "FetchStmt"); _fingerprintFetchStmt(ctx, obj, parent, field_name, depth); @@ -300,10 +722,26 @@ case T_IndexStmt: _fingerprintString(ctx, "IndexStmt"); _fingerprintIndexStmt(ctx, obj, parent, field_name, depth); break; +case T_CreateStatsStmt: + _fingerprintString(ctx, "CreateStatsStmt"); + _fingerprintCreateStatsStmt(ctx, obj, parent, field_name, depth); + break; +case T_StatsElem: + _fingerprintString(ctx, "StatsElem"); + _fingerprintStatsElem(ctx, obj, parent, field_name, depth); + break; +case T_AlterStatsStmt: + _fingerprintString(ctx, "AlterStatsStmt"); + _fingerprintAlterStatsStmt(ctx, obj, parent, field_name, depth); + break; case T_CreateFunctionStmt: _fingerprintString(ctx, "CreateFunctionStmt"); _fingerprintCreateFunctionStmt(ctx, obj, parent, field_name, depth); break; +case T_FunctionParameter: + _fingerprintString(ctx, "FunctionParameter"); + _fingerprintFunctionParameter(ctx, obj, parent, field_name, depth); + break; case T_AlterFunctionStmt: _fingerprintString(ctx, "AlterFunctionStmt"); _fingerprintAlterFunctionStmt(ctx, obj, parent, field_name, depth); @@ -312,10 +750,42 @@ case T_DoStmt: _fingerprintString(ctx, "DoStmt"); _fingerprintDoStmt(ctx, obj, parent, field_name, depth); break; +case T_InlineCodeBlock: + _fingerprintString(ctx, "InlineCodeBlock"); + _fingerprintInlineCodeBlock(ctx, obj, parent, field_name, depth); + break; +case T_CallStmt: + _fingerprintString(ctx, "CallStmt"); + _fingerprintCallStmt(ctx, obj, parent, field_name, depth); + break; +case T_CallContext: + _fingerprintString(ctx, "CallContext"); + _fingerprintCallContext(ctx, obj, parent, field_name, depth); + break; case T_RenameStmt: _fingerprintString(ctx, "RenameStmt"); _fingerprintRenameStmt(ctx, obj, parent, field_name, depth); break; +case T_AlterObjectDependsStmt: + _fingerprintString(ctx, "AlterObjectDependsStmt"); + _fingerprintAlterObjectDependsStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterObjectSchemaStmt: + _fingerprintString(ctx, "AlterObjectSchemaStmt"); + _fingerprintAlterObjectSchemaStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterOwnerStmt: + _fingerprintString(ctx, "AlterOwnerStmt"); + _fingerprintAlterOwnerStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterOperatorStmt: + _fingerprintString(ctx, "AlterOperatorStmt"); + _fingerprintAlterOperatorStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterTypeStmt: + _fingerprintString(ctx, "AlterTypeStmt"); + _fingerprintAlterTypeStmt(ctx, obj, parent, field_name, depth); + break; case T_RuleStmt: _fingerprintString(ctx, "RuleStmt"); _fingerprintRuleStmt(ctx, obj, parent, field_name, depth); @@ -336,6 +806,22 @@ case T_TransactionStmt: _fingerprintString(ctx, "TransactionStmt"); _fingerprintTransactionStmt(ctx, obj, parent, field_name, depth); break; +case T_CompositeTypeStmt: + _fingerprintString(ctx, "CompositeTypeStmt"); + _fingerprintCompositeTypeStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateEnumStmt: + _fingerprintString(ctx, "CreateEnumStmt"); + _fingerprintCreateEnumStmt(ctx, obj, parent, field_name, depth); + break; +case T_CreateRangeStmt: + _fingerprintString(ctx, "CreateRangeStmt"); + _fingerprintCreateRangeStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterEnumStmt: + _fingerprintString(ctx, "AlterEnumStmt"); + _fingerprintAlterEnumStmt(ctx, obj, parent, field_name, depth); + break; case T_ViewStmt: _fingerprintString(ctx, "ViewStmt"); _fingerprintViewStmt(ctx, obj, parent, field_name, depth); @@ -344,22 +830,42 @@ case T_LoadStmt: _fingerprintString(ctx, "LoadStmt"); _fingerprintLoadStmt(ctx, obj, parent, field_name, depth); break; -case T_CreateDomainStmt: - _fingerprintString(ctx, "CreateDomainStmt"); - _fingerprintCreateDomainStmt(ctx, obj, parent, field_name, depth); - break; case T_CreatedbStmt: _fingerprintString(ctx, "CreatedbStmt"); _fingerprintCreatedbStmt(ctx, obj, parent, field_name, depth); break; +case T_AlterDatabaseStmt: + _fingerprintString(ctx, "AlterDatabaseStmt"); + _fingerprintAlterDatabaseStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterDatabaseRefreshCollStmt: + _fingerprintString(ctx, "AlterDatabaseRefreshCollStmt"); + _fingerprintAlterDatabaseRefreshCollStmt(ctx, obj, parent, field_name, depth); + break; +case T_AlterDatabaseSetStmt: + _fingerprintString(ctx, "AlterDatabaseSetStmt"); + _fingerprintAlterDatabaseSetStmt(ctx, obj, parent, field_name, depth); + break; case T_DropdbStmt: _fingerprintString(ctx, "DropdbStmt"); _fingerprintDropdbStmt(ctx, obj, parent, field_name, depth); break; +case T_AlterSystemStmt: + _fingerprintString(ctx, "AlterSystemStmt"); + _fingerprintAlterSystemStmt(ctx, obj, parent, field_name, depth); + break; +case T_ClusterStmt: + _fingerprintString(ctx, "ClusterStmt"); + _fingerprintClusterStmt(ctx, obj, parent, field_name, depth); + break; case T_VacuumStmt: _fingerprintString(ctx, "VacuumStmt"); _fingerprintVacuumStmt(ctx, obj, parent, field_name, depth); break; +case T_VacuumRelation: + _fingerprintString(ctx, "VacuumRelation"); + _fingerprintVacuumRelation(ctx, obj, parent, field_name, depth); + break; case T_ExplainStmt: _fingerprintString(ctx, "ExplainStmt"); _fingerprintExplainStmt(ctx, obj, parent, field_name, depth); @@ -368,46 +874,18 @@ case T_CreateTableAsStmt: _fingerprintString(ctx, "CreateTableAsStmt"); _fingerprintCreateTableAsStmt(ctx, obj, parent, field_name, depth); break; -case T_CreateSeqStmt: - _fingerprintString(ctx, "CreateSeqStmt"); - _fingerprintCreateSeqStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterSeqStmt: - _fingerprintString(ctx, "AlterSeqStmt"); - _fingerprintAlterSeqStmt(ctx, obj, parent, field_name, depth); - break; -case T_VariableSetStmt: - _fingerprintString(ctx, "VariableSetStmt"); - _fingerprintVariableSetStmt(ctx, obj, parent, field_name, depth); +case T_RefreshMatViewStmt: + _fingerprintString(ctx, "RefreshMatViewStmt"); + _fingerprintRefreshMatViewStmt(ctx, obj, parent, field_name, depth); break; -case T_VariableShowStmt: - _fingerprintString(ctx, "VariableShowStmt"); - _fingerprintVariableShowStmt(ctx, obj, parent, field_name, depth); +case T_CheckPointStmt: + _fingerprintString(ctx, "CheckPointStmt"); + _fingerprintCheckPointStmt(ctx, obj, parent, field_name, depth); break; case T_DiscardStmt: _fingerprintString(ctx, "DiscardStmt"); _fingerprintDiscardStmt(ctx, obj, parent, field_name, depth); break; -case T_CreateTrigStmt: - _fingerprintString(ctx, "CreateTrigStmt"); - _fingerprintCreateTrigStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreatePLangStmt: - _fingerprintString(ctx, "CreatePLangStmt"); - _fingerprintCreatePLangStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateRoleStmt: - _fingerprintString(ctx, "CreateRoleStmt"); - _fingerprintCreateRoleStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterRoleStmt: - _fingerprintString(ctx, "AlterRoleStmt"); - _fingerprintAlterRoleStmt(ctx, obj, parent, field_name, depth); - break; -case T_DropRoleStmt: - _fingerprintString(ctx, "DropRoleStmt"); - _fingerprintDropRoleStmt(ctx, obj, parent, field_name, depth); - break; case T_LockStmt: _fingerprintString(ctx, "LockStmt"); _fingerprintLockStmt(ctx, obj, parent, field_name, depth); @@ -420,30 +898,6 @@ case T_ReindexStmt: _fingerprintString(ctx, "ReindexStmt"); _fingerprintReindexStmt(ctx, obj, parent, field_name, depth); break; -case T_CheckPointStmt: - _fingerprintString(ctx, "CheckPointStmt"); - _fingerprintCheckPointStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateSchemaStmt: - _fingerprintString(ctx, "CreateSchemaStmt"); - _fingerprintCreateSchemaStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterDatabaseStmt: - _fingerprintString(ctx, "AlterDatabaseStmt"); - _fingerprintAlterDatabaseStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterDatabaseRefreshCollStmt: - _fingerprintString(ctx, "AlterDatabaseRefreshCollStmt"); - _fingerprintAlterDatabaseRefreshCollStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterDatabaseSetStmt: - _fingerprintString(ctx, "AlterDatabaseSetStmt"); - _fingerprintAlterDatabaseSetStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterRoleSetStmt: - _fingerprintString(ctx, "AlterRoleSetStmt"); - _fingerprintAlterRoleSetStmt(ctx, obj, parent, field_name, depth); - break; case T_CreateConversionStmt: _fingerprintString(ctx, "CreateConversionStmt"); _fingerprintCreateConversionStmt(ctx, obj, parent, field_name, depth); @@ -452,17 +906,9 @@ case T_CreateCastStmt: _fingerprintString(ctx, "CreateCastStmt"); _fingerprintCreateCastStmt(ctx, obj, parent, field_name, depth); break; -case T_CreateOpClassStmt: - _fingerprintString(ctx, "CreateOpClassStmt"); - _fingerprintCreateOpClassStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateOpFamilyStmt: - _fingerprintString(ctx, "CreateOpFamilyStmt"); - _fingerprintCreateOpFamilyStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterOpFamilyStmt: - _fingerprintString(ctx, "AlterOpFamilyStmt"); - _fingerprintAlterOpFamilyStmt(ctx, obj, parent, field_name, depth); +case T_CreateTransformStmt: + _fingerprintString(ctx, "CreateTransformStmt"); + _fingerprintCreateTransformStmt(ctx, obj, parent, field_name, depth); break; case T_PrepareStmt: _fingerprintString(ctx, "PrepareStmt"); @@ -476,38 +922,6 @@ case T_DeallocateStmt: _fingerprintString(ctx, "DeallocateStmt"); _fingerprintDeallocateStmt(ctx, obj, parent, field_name, depth); break; -case T_DeclareCursorStmt: - _fingerprintString(ctx, "DeclareCursorStmt"); - _fingerprintDeclareCursorStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateTableSpaceStmt: - _fingerprintString(ctx, "CreateTableSpaceStmt"); - _fingerprintCreateTableSpaceStmt(ctx, obj, parent, field_name, depth); - break; -case T_DropTableSpaceStmt: - _fingerprintString(ctx, "DropTableSpaceStmt"); - _fingerprintDropTableSpaceStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterObjectDependsStmt: - _fingerprintString(ctx, "AlterObjectDependsStmt"); - _fingerprintAlterObjectDependsStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterObjectSchemaStmt: - _fingerprintString(ctx, "AlterObjectSchemaStmt"); - _fingerprintAlterObjectSchemaStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterOwnerStmt: - _fingerprintString(ctx, "AlterOwnerStmt"); - _fingerprintAlterOwnerStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterOperatorStmt: - _fingerprintString(ctx, "AlterOperatorStmt"); - _fingerprintAlterOperatorStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterTypeStmt: - _fingerprintString(ctx, "AlterTypeStmt"); - _fingerprintAlterTypeStmt(ctx, obj, parent, field_name, depth); - break; case T_DropOwnedStmt: _fingerprintString(ctx, "DropOwnedStmt"); _fingerprintDropOwnedStmt(ctx, obj, parent, field_name, depth); @@ -516,22 +930,6 @@ case T_ReassignOwnedStmt: _fingerprintString(ctx, "ReassignOwnedStmt"); _fingerprintReassignOwnedStmt(ctx, obj, parent, field_name, depth); break; -case T_CompositeTypeStmt: - _fingerprintString(ctx, "CompositeTypeStmt"); - _fingerprintCompositeTypeStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateEnumStmt: - _fingerprintString(ctx, "CreateEnumStmt"); - _fingerprintCreateEnumStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateRangeStmt: - _fingerprintString(ctx, "CreateRangeStmt"); - _fingerprintCreateRangeStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterEnumStmt: - _fingerprintString(ctx, "AlterEnumStmt"); - _fingerprintAlterEnumStmt(ctx, obj, parent, field_name, depth); - break; case T_AlterTSDictionaryStmt: _fingerprintString(ctx, "AlterTSDictionaryStmt"); _fingerprintAlterTSDictionaryStmt(ctx, obj, parent, field_name, depth); @@ -540,101 +938,13 @@ case T_AlterTSConfigurationStmt: _fingerprintString(ctx, "AlterTSConfigurationStmt"); _fingerprintAlterTSConfigurationStmt(ctx, obj, parent, field_name, depth); break; -case T_CreateFdwStmt: - _fingerprintString(ctx, "CreateFdwStmt"); - _fingerprintCreateFdwStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterFdwStmt: - _fingerprintString(ctx, "AlterFdwStmt"); - _fingerprintAlterFdwStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateForeignServerStmt: - _fingerprintString(ctx, "CreateForeignServerStmt"); - _fingerprintCreateForeignServerStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterForeignServerStmt: - _fingerprintString(ctx, "AlterForeignServerStmt"); - _fingerprintAlterForeignServerStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateUserMappingStmt: - _fingerprintString(ctx, "CreateUserMappingStmt"); - _fingerprintCreateUserMappingStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterUserMappingStmt: - _fingerprintString(ctx, "AlterUserMappingStmt"); - _fingerprintAlterUserMappingStmt(ctx, obj, parent, field_name, depth); - break; -case T_DropUserMappingStmt: - _fingerprintString(ctx, "DropUserMappingStmt"); - _fingerprintDropUserMappingStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterTableSpaceOptionsStmt: - _fingerprintString(ctx, "AlterTableSpaceOptionsStmt"); - _fingerprintAlterTableSpaceOptionsStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterTableMoveAllStmt: - _fingerprintString(ctx, "AlterTableMoveAllStmt"); - _fingerprintAlterTableMoveAllStmt(ctx, obj, parent, field_name, depth); - break; -case T_SecLabelStmt: - _fingerprintString(ctx, "SecLabelStmt"); - _fingerprintSecLabelStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateForeignTableStmt: - _fingerprintString(ctx, "CreateForeignTableStmt"); - _fingerprintCreateForeignTableStmt(ctx, obj, parent, field_name, depth); - break; -case T_ImportForeignSchemaStmt: - _fingerprintString(ctx, "ImportForeignSchemaStmt"); - _fingerprintImportForeignSchemaStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateExtensionStmt: - _fingerprintString(ctx, "CreateExtensionStmt"); - _fingerprintCreateExtensionStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterExtensionStmt: - _fingerprintString(ctx, "AlterExtensionStmt"); - _fingerprintAlterExtensionStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterExtensionContentsStmt: - _fingerprintString(ctx, "AlterExtensionContentsStmt"); - _fingerprintAlterExtensionContentsStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateEventTrigStmt: - _fingerprintString(ctx, "CreateEventTrigStmt"); - _fingerprintCreateEventTrigStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterEventTrigStmt: - _fingerprintString(ctx, "AlterEventTrigStmt"); - _fingerprintAlterEventTrigStmt(ctx, obj, parent, field_name, depth); - break; -case T_RefreshMatViewStmt: - _fingerprintString(ctx, "RefreshMatViewStmt"); - _fingerprintRefreshMatViewStmt(ctx, obj, parent, field_name, depth); - break; -case T_ReplicaIdentityStmt: - _fingerprintString(ctx, "ReplicaIdentityStmt"); - _fingerprintReplicaIdentityStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterSystemStmt: - _fingerprintString(ctx, "AlterSystemStmt"); - _fingerprintAlterSystemStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreatePolicyStmt: - _fingerprintString(ctx, "CreatePolicyStmt"); - _fingerprintCreatePolicyStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterPolicyStmt: - _fingerprintString(ctx, "AlterPolicyStmt"); - _fingerprintAlterPolicyStmt(ctx, obj, parent, field_name, depth); - break; -case T_CreateTransformStmt: - _fingerprintString(ctx, "CreateTransformStmt"); - _fingerprintCreateTransformStmt(ctx, obj, parent, field_name, depth); +case T_PublicationTable: + _fingerprintString(ctx, "PublicationTable"); + _fingerprintPublicationTable(ctx, obj, parent, field_name, depth); break; -case T_CreateAmStmt: - _fingerprintString(ctx, "CreateAmStmt"); - _fingerprintCreateAmStmt(ctx, obj, parent, field_name, depth); +case T_PublicationObjSpec: + _fingerprintString(ctx, "PublicationObjSpec"); + _fingerprintPublicationObjSpec(ctx, obj, parent, field_name, depth); break; case T_CreatePublicationStmt: _fingerprintString(ctx, "CreatePublicationStmt"); @@ -656,257 +966,3 @@ case T_DropSubscriptionStmt: _fingerprintString(ctx, "DropSubscriptionStmt"); _fingerprintDropSubscriptionStmt(ctx, obj, parent, field_name, depth); break; -case T_CreateStatsStmt: - _fingerprintString(ctx, "CreateStatsStmt"); - _fingerprintCreateStatsStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterCollationStmt: - _fingerprintString(ctx, "AlterCollationStmt"); - _fingerprintAlterCollationStmt(ctx, obj, parent, field_name, depth); - break; -case T_CallStmt: - _fingerprintString(ctx, "CallStmt"); - _fingerprintCallStmt(ctx, obj, parent, field_name, depth); - break; -case T_AlterStatsStmt: - _fingerprintString(ctx, "AlterStatsStmt"); - _fingerprintAlterStatsStmt(ctx, obj, parent, field_name, depth); - break; -case T_A_Expr: - _fingerprintString(ctx, "A_Expr"); - _fingerprintA_Expr(ctx, obj, parent, field_name, depth); - break; -case T_ColumnRef: - _fingerprintString(ctx, "ColumnRef"); - _fingerprintColumnRef(ctx, obj, parent, field_name, depth); - break; -case T_ParamRef: - // Intentionally ignoring for fingerprinting - break; -case T_FuncCall: - _fingerprintString(ctx, "FuncCall"); - _fingerprintFuncCall(ctx, obj, parent, field_name, depth); - break; -case T_A_Star: - _fingerprintString(ctx, "A_Star"); - _fingerprintA_Star(ctx, obj, parent, field_name, depth); - break; -case T_A_Indices: - _fingerprintString(ctx, "A_Indices"); - _fingerprintA_Indices(ctx, obj, parent, field_name, depth); - break; -case T_A_Indirection: - _fingerprintString(ctx, "A_Indirection"); - _fingerprintA_Indirection(ctx, obj, parent, field_name, depth); - break; -case T_A_ArrayExpr: - _fingerprintString(ctx, "A_ArrayExpr"); - _fingerprintA_ArrayExpr(ctx, obj, parent, field_name, depth); - break; -case T_ResTarget: - _fingerprintString(ctx, "ResTarget"); - _fingerprintResTarget(ctx, obj, parent, field_name, depth); - break; -case T_MultiAssignRef: - _fingerprintString(ctx, "MultiAssignRef"); - _fingerprintMultiAssignRef(ctx, obj, parent, field_name, depth); - break; -case T_TypeCast: - if (!IsA(castNode(TypeCast, (void*) obj)->arg, A_Const) && !IsA(castNode(TypeCast, (void*) obj)->arg, ParamRef)) - { - _fingerprintString(ctx, "TypeCast"); - _fingerprintTypeCast(ctx, obj, parent, field_name, depth); - } - break; -case T_CollateClause: - _fingerprintString(ctx, "CollateClause"); - _fingerprintCollateClause(ctx, obj, parent, field_name, depth); - break; -case T_SortBy: - _fingerprintString(ctx, "SortBy"); - _fingerprintSortBy(ctx, obj, parent, field_name, depth); - break; -case T_WindowDef: - _fingerprintString(ctx, "WindowDef"); - _fingerprintWindowDef(ctx, obj, parent, field_name, depth); - break; -case T_RangeSubselect: - _fingerprintString(ctx, "RangeSubselect"); - _fingerprintRangeSubselect(ctx, obj, parent, field_name, depth); - break; -case T_RangeFunction: - _fingerprintString(ctx, "RangeFunction"); - _fingerprintRangeFunction(ctx, obj, parent, field_name, depth); - break; -case T_RangeTableSample: - _fingerprintString(ctx, "RangeTableSample"); - _fingerprintRangeTableSample(ctx, obj, parent, field_name, depth); - break; -case T_RangeTableFunc: - _fingerprintString(ctx, "RangeTableFunc"); - _fingerprintRangeTableFunc(ctx, obj, parent, field_name, depth); - break; -case T_RangeTableFuncCol: - _fingerprintString(ctx, "RangeTableFuncCol"); - _fingerprintRangeTableFuncCol(ctx, obj, parent, field_name, depth); - break; -case T_TypeName: - _fingerprintString(ctx, "TypeName"); - _fingerprintTypeName(ctx, obj, parent, field_name, depth); - break; -case T_ColumnDef: - _fingerprintString(ctx, "ColumnDef"); - _fingerprintColumnDef(ctx, obj, parent, field_name, depth); - break; -case T_IndexElem: - _fingerprintString(ctx, "IndexElem"); - _fingerprintIndexElem(ctx, obj, parent, field_name, depth); - break; -case T_StatsElem: - _fingerprintString(ctx, "StatsElem"); - _fingerprintStatsElem(ctx, obj, parent, field_name, depth); - break; -case T_Constraint: - _fingerprintString(ctx, "Constraint"); - _fingerprintConstraint(ctx, obj, parent, field_name, depth); - break; -case T_DefElem: - _fingerprintString(ctx, "DefElem"); - _fingerprintDefElem(ctx, obj, parent, field_name, depth); - break; -case T_RangeTblEntry: - _fingerprintString(ctx, "RangeTblEntry"); - _fingerprintRangeTblEntry(ctx, obj, parent, field_name, depth); - break; -case T_RangeTblFunction: - _fingerprintString(ctx, "RangeTblFunction"); - _fingerprintRangeTblFunction(ctx, obj, parent, field_name, depth); - break; -case T_TableSampleClause: - _fingerprintString(ctx, "TableSampleClause"); - _fingerprintTableSampleClause(ctx, obj, parent, field_name, depth); - break; -case T_WithCheckOption: - _fingerprintString(ctx, "WithCheckOption"); - _fingerprintWithCheckOption(ctx, obj, parent, field_name, depth); - break; -case T_SortGroupClause: - _fingerprintString(ctx, "SortGroupClause"); - _fingerprintSortGroupClause(ctx, obj, parent, field_name, depth); - break; -case T_GroupingSet: - _fingerprintString(ctx, "GroupingSet"); - _fingerprintGroupingSet(ctx, obj, parent, field_name, depth); - break; -case T_WindowClause: - _fingerprintString(ctx, "WindowClause"); - _fingerprintWindowClause(ctx, obj, parent, field_name, depth); - break; -case T_ObjectWithArgs: - _fingerprintString(ctx, "ObjectWithArgs"); - _fingerprintObjectWithArgs(ctx, obj, parent, field_name, depth); - break; -case T_AccessPriv: - _fingerprintString(ctx, "AccessPriv"); - _fingerprintAccessPriv(ctx, obj, parent, field_name, depth); - break; -case T_CreateOpClassItem: - _fingerprintString(ctx, "CreateOpClassItem"); - _fingerprintCreateOpClassItem(ctx, obj, parent, field_name, depth); - break; -case T_TableLikeClause: - _fingerprintString(ctx, "TableLikeClause"); - _fingerprintTableLikeClause(ctx, obj, parent, field_name, depth); - break; -case T_FunctionParameter: - _fingerprintString(ctx, "FunctionParameter"); - _fingerprintFunctionParameter(ctx, obj, parent, field_name, depth); - break; -case T_LockingClause: - _fingerprintString(ctx, "LockingClause"); - _fingerprintLockingClause(ctx, obj, parent, field_name, depth); - break; -case T_RowMarkClause: - _fingerprintString(ctx, "RowMarkClause"); - _fingerprintRowMarkClause(ctx, obj, parent, field_name, depth); - break; -case T_XmlSerialize: - _fingerprintString(ctx, "XmlSerialize"); - _fingerprintXmlSerialize(ctx, obj, parent, field_name, depth); - break; -case T_WithClause: - _fingerprintString(ctx, "WithClause"); - _fingerprintWithClause(ctx, obj, parent, field_name, depth); - break; -case T_InferClause: - _fingerprintString(ctx, "InferClause"); - _fingerprintInferClause(ctx, obj, parent, field_name, depth); - break; -case T_OnConflictClause: - _fingerprintString(ctx, "OnConflictClause"); - _fingerprintOnConflictClause(ctx, obj, parent, field_name, depth); - break; -case T_CTESearchClause: - _fingerprintString(ctx, "CTESearchClause"); - _fingerprintCTESearchClause(ctx, obj, parent, field_name, depth); - break; -case T_CTECycleClause: - _fingerprintString(ctx, "CTECycleClause"); - _fingerprintCTECycleClause(ctx, obj, parent, field_name, depth); - break; -case T_CommonTableExpr: - _fingerprintString(ctx, "CommonTableExpr"); - _fingerprintCommonTableExpr(ctx, obj, parent, field_name, depth); - break; -case T_MergeWhenClause: - _fingerprintString(ctx, "MergeWhenClause"); - _fingerprintMergeWhenClause(ctx, obj, parent, field_name, depth); - break; -case T_RoleSpec: - _fingerprintString(ctx, "RoleSpec"); - _fingerprintRoleSpec(ctx, obj, parent, field_name, depth); - break; -case T_TriggerTransition: - _fingerprintString(ctx, "TriggerTransition"); - _fingerprintTriggerTransition(ctx, obj, parent, field_name, depth); - break; -case T_PartitionElem: - _fingerprintString(ctx, "PartitionElem"); - _fingerprintPartitionElem(ctx, obj, parent, field_name, depth); - break; -case T_PartitionSpec: - _fingerprintString(ctx, "PartitionSpec"); - _fingerprintPartitionSpec(ctx, obj, parent, field_name, depth); - break; -case T_PartitionBoundSpec: - _fingerprintString(ctx, "PartitionBoundSpec"); - _fingerprintPartitionBoundSpec(ctx, obj, parent, field_name, depth); - break; -case T_PartitionRangeDatum: - _fingerprintString(ctx, "PartitionRangeDatum"); - _fingerprintPartitionRangeDatum(ctx, obj, parent, field_name, depth); - break; -case T_PartitionCmd: - _fingerprintString(ctx, "PartitionCmd"); - _fingerprintPartitionCmd(ctx, obj, parent, field_name, depth); - break; -case T_VacuumRelation: - _fingerprintString(ctx, "VacuumRelation"); - _fingerprintVacuumRelation(ctx, obj, parent, field_name, depth); - break; -case T_PublicationObjSpec: - _fingerprintString(ctx, "PublicationObjSpec"); - _fingerprintPublicationObjSpec(ctx, obj, parent, field_name, depth); - break; -case T_PublicationTable: - _fingerprintString(ctx, "PublicationTable"); - _fingerprintPublicationTable(ctx, obj, parent, field_name, depth); - break; -case T_InlineCodeBlock: - _fingerprintString(ctx, "InlineCodeBlock"); - _fingerprintInlineCodeBlock(ctx, obj, parent, field_name, depth); - break; -case T_CallContext: - _fingerprintString(ctx, "CallContext"); - _fingerprintCallContext(ctx, obj, parent, field_name, depth); - break; diff --git a/parser/include/pg_query_fingerprint_defs.c b/parser/include/pg_query_fingerprint_defs.c index c8fee7e1..0837af60 100644 --- a/parser/include/pg_query_fingerprint_defs.c +++ b/parser/include/pg_query_fingerprint_defs.c @@ -1,6 +1,7 @@ static void _fingerprintAlias(FingerprintContext *ctx, const Alias *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintRangeVar(FingerprintContext *ctx, const RangeVar *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintTableFunc(FingerprintContext *ctx, const TableFunc *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintIntoClause(FingerprintContext *ctx, const IntoClause *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintVar(FingerprintContext *ctx, const Var *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintConst(FingerprintContext *ctx, const Const *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintParam(FingerprintContext *ctx, const Param *node, const void *parent, const char *field_name, unsigned int depth); @@ -33,6 +34,11 @@ static void _fingerprintCoalesceExpr(FingerprintContext *ctx, const CoalesceExpr static void _fingerprintMinMaxExpr(FingerprintContext *ctx, const MinMaxExpr *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintSQLValueFunction(FingerprintContext *ctx, const SQLValueFunction *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintXmlExpr(FingerprintContext *ctx, const XmlExpr *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonFormat(FingerprintContext *ctx, const JsonFormat *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonReturning(FingerprintContext *ctx, const JsonReturning *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonValueExpr(FingerprintContext *ctx, const JsonValueExpr *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonConstructorExpr(FingerprintContext *ctx, const JsonConstructorExpr *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonIsPredicate(FingerprintContext *ctx, const JsonIsPredicate *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintNullTest(FingerprintContext *ctx, const NullTest *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintBooleanTest(FingerprintContext *ctx, const BooleanTest *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCoerceToDomain(FingerprintContext *ctx, const CoerceToDomain *node, const void *parent, const char *field_name, unsigned int depth); @@ -46,186 +52,194 @@ static void _fingerprintRangeTblRef(FingerprintContext *ctx, const RangeTblRef * static void _fingerprintJoinExpr(FingerprintContext *ctx, const JoinExpr *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintFromExpr(FingerprintContext *ctx, const FromExpr *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintOnConflictExpr(FingerprintContext *ctx, const OnConflictExpr *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintIntoClause(FingerprintContext *ctx, const IntoClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintQuery(FingerprintContext *ctx, const Query *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintTypeName(FingerprintContext *ctx, const TypeName *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintColumnRef(FingerprintContext *ctx, const ColumnRef *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintParamRef(FingerprintContext *ctx, const ParamRef *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintA_Expr(FingerprintContext *ctx, const A_Expr *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintTypeCast(FingerprintContext *ctx, const TypeCast *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCollateClause(FingerprintContext *ctx, const CollateClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRoleSpec(FingerprintContext *ctx, const RoleSpec *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintFuncCall(FingerprintContext *ctx, const FuncCall *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintA_Star(FingerprintContext *ctx, const A_Star *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintA_Indices(FingerprintContext *ctx, const A_Indices *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintA_Indirection(FingerprintContext *ctx, const A_Indirection *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintA_ArrayExpr(FingerprintContext *ctx, const A_ArrayExpr *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintResTarget(FingerprintContext *ctx, const ResTarget *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintMultiAssignRef(FingerprintContext *ctx, const MultiAssignRef *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintSortBy(FingerprintContext *ctx, const SortBy *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintWindowDef(FingerprintContext *ctx, const WindowDef *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRangeSubselect(FingerprintContext *ctx, const RangeSubselect *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRangeFunction(FingerprintContext *ctx, const RangeFunction *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRangeTableFunc(FingerprintContext *ctx, const RangeTableFunc *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRangeTableFuncCol(FingerprintContext *ctx, const RangeTableFuncCol *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRangeTableSample(FingerprintContext *ctx, const RangeTableSample *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintColumnDef(FingerprintContext *ctx, const ColumnDef *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintTableLikeClause(FingerprintContext *ctx, const TableLikeClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintIndexElem(FingerprintContext *ctx, const IndexElem *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintDefElem(FingerprintContext *ctx, const DefElem *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintLockingClause(FingerprintContext *ctx, const LockingClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintXmlSerialize(FingerprintContext *ctx, const XmlSerialize *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintPartitionElem(FingerprintContext *ctx, const PartitionElem *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintPartitionSpec(FingerprintContext *ctx, const PartitionSpec *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintPartitionBoundSpec(FingerprintContext *ctx, const PartitionBoundSpec *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintPartitionRangeDatum(FingerprintContext *ctx, const PartitionRangeDatum *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintPartitionCmd(FingerprintContext *ctx, const PartitionCmd *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRangeTblEntry(FingerprintContext *ctx, const RangeTblEntry *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRTEPermissionInfo(FingerprintContext *ctx, const RTEPermissionInfo *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRangeTblFunction(FingerprintContext *ctx, const RangeTblFunction *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintTableSampleClause(FingerprintContext *ctx, const TableSampleClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintWithCheckOption(FingerprintContext *ctx, const WithCheckOption *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintSortGroupClause(FingerprintContext *ctx, const SortGroupClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintGroupingSet(FingerprintContext *ctx, const GroupingSet *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintWindowClause(FingerprintContext *ctx, const WindowClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRowMarkClause(FingerprintContext *ctx, const RowMarkClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintWithClause(FingerprintContext *ctx, const WithClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintInferClause(FingerprintContext *ctx, const InferClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintOnConflictClause(FingerprintContext *ctx, const OnConflictClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCTESearchClause(FingerprintContext *ctx, const CTESearchClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCTECycleClause(FingerprintContext *ctx, const CTECycleClause *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCommonTableExpr(FingerprintContext *ctx, const CommonTableExpr *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintMergeWhenClause(FingerprintContext *ctx, const MergeWhenClause *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintMergeAction(FingerprintContext *ctx, const MergeAction *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintTriggerTransition(FingerprintContext *ctx, const TriggerTransition *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonOutput(FingerprintContext *ctx, const JsonOutput *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonKeyValue(FingerprintContext *ctx, const JsonKeyValue *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonObjectConstructor(FingerprintContext *ctx, const JsonObjectConstructor *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonArrayConstructor(FingerprintContext *ctx, const JsonArrayConstructor *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonArrayQueryConstructor(FingerprintContext *ctx, const JsonArrayQueryConstructor *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonAggConstructor(FingerprintContext *ctx, const JsonAggConstructor *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonObjectAgg(FingerprintContext *ctx, const JsonObjectAgg *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintJsonArrayAgg(FingerprintContext *ctx, const JsonArrayAgg *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintRawStmt(FingerprintContext *ctx, const RawStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintQuery(FingerprintContext *ctx, const Query *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintInsertStmt(FingerprintContext *ctx, const InsertStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintDeleteStmt(FingerprintContext *ctx, const DeleteStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintUpdateStmt(FingerprintContext *ctx, const UpdateStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintMergeStmt(FingerprintContext *ctx, const MergeStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintSelectStmt(FingerprintContext *ctx, const SelectStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintSetOperationStmt(FingerprintContext *ctx, const SetOperationStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintReturnStmt(FingerprintContext *ctx, const ReturnStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintPLAssignStmt(FingerprintContext *ctx, const PLAssignStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateSchemaStmt(FingerprintContext *ctx, const CreateSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintAlterTableStmt(FingerprintContext *ctx, const AlterTableStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintReplicaIdentityStmt(FingerprintContext *ctx, const ReplicaIdentityStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintAlterTableCmd(FingerprintContext *ctx, const AlterTableCmd *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterCollationStmt(FingerprintContext *ctx, const AlterCollationStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintAlterDomainStmt(FingerprintContext *ctx, const AlterDomainStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintSetOperationStmt(FingerprintContext *ctx, const SetOperationStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintGrantStmt(FingerprintContext *ctx, const GrantStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintObjectWithArgs(FingerprintContext *ctx, const ObjectWithArgs *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAccessPriv(FingerprintContext *ctx, const AccessPriv *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintGrantRoleStmt(FingerprintContext *ctx, const GrantRoleStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintAlterDefaultPrivilegesStmt(FingerprintContext *ctx, const AlterDefaultPrivilegesStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintClosePortalStmt(FingerprintContext *ctx, const ClosePortalStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintClusterStmt(FingerprintContext *ctx, const ClusterStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCopyStmt(FingerprintContext *ctx, const CopyStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintVariableSetStmt(FingerprintContext *ctx, const VariableSetStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintVariableShowStmt(FingerprintContext *ctx, const VariableShowStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCreateStmt(FingerprintContext *ctx, const CreateStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintConstraint(FingerprintContext *ctx, const Constraint *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateTableSpaceStmt(FingerprintContext *ctx, const CreateTableSpaceStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintDropTableSpaceStmt(FingerprintContext *ctx, const DropTableSpaceStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterTableSpaceOptionsStmt(FingerprintContext *ctx, const AlterTableSpaceOptionsStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterTableMoveAllStmt(FingerprintContext *ctx, const AlterTableMoveAllStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateExtensionStmt(FingerprintContext *ctx, const CreateExtensionStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterExtensionStmt(FingerprintContext *ctx, const AlterExtensionStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterExtensionContentsStmt(FingerprintContext *ctx, const AlterExtensionContentsStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateFdwStmt(FingerprintContext *ctx, const CreateFdwStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterFdwStmt(FingerprintContext *ctx, const AlterFdwStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateForeignServerStmt(FingerprintContext *ctx, const CreateForeignServerStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterForeignServerStmt(FingerprintContext *ctx, const AlterForeignServerStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateForeignTableStmt(FingerprintContext *ctx, const CreateForeignTableStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateUserMappingStmt(FingerprintContext *ctx, const CreateUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterUserMappingStmt(FingerprintContext *ctx, const AlterUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintDropUserMappingStmt(FingerprintContext *ctx, const DropUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintImportForeignSchemaStmt(FingerprintContext *ctx, const ImportForeignSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreatePolicyStmt(FingerprintContext *ctx, const CreatePolicyStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterPolicyStmt(FingerprintContext *ctx, const AlterPolicyStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateAmStmt(FingerprintContext *ctx, const CreateAmStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateTrigStmt(FingerprintContext *ctx, const CreateTrigStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateEventTrigStmt(FingerprintContext *ctx, const CreateEventTrigStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterEventTrigStmt(FingerprintContext *ctx, const AlterEventTrigStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreatePLangStmt(FingerprintContext *ctx, const CreatePLangStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateRoleStmt(FingerprintContext *ctx, const CreateRoleStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterRoleStmt(FingerprintContext *ctx, const AlterRoleStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterRoleSetStmt(FingerprintContext *ctx, const AlterRoleSetStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintDropRoleStmt(FingerprintContext *ctx, const DropRoleStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateSeqStmt(FingerprintContext *ctx, const CreateSeqStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterSeqStmt(FingerprintContext *ctx, const AlterSeqStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintDefineStmt(FingerprintContext *ctx, const DefineStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateDomainStmt(FingerprintContext *ctx, const CreateDomainStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateOpClassStmt(FingerprintContext *ctx, const CreateOpClassStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateOpClassItem(FingerprintContext *ctx, const CreateOpClassItem *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateOpFamilyStmt(FingerprintContext *ctx, const CreateOpFamilyStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterOpFamilyStmt(FingerprintContext *ctx, const AlterOpFamilyStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintDropStmt(FingerprintContext *ctx, const DropStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintTruncateStmt(FingerprintContext *ctx, const TruncateStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCommentStmt(FingerprintContext *ctx, const CommentStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintSecLabelStmt(FingerprintContext *ctx, const SecLabelStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintDeclareCursorStmt(FingerprintContext *ctx, const DeclareCursorStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintClosePortalStmt(FingerprintContext *ctx, const ClosePortalStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintFetchStmt(FingerprintContext *ctx, const FetchStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintIndexStmt(FingerprintContext *ctx, const IndexStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateStatsStmt(FingerprintContext *ctx, const CreateStatsStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintStatsElem(FingerprintContext *ctx, const StatsElem *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterStatsStmt(FingerprintContext *ctx, const AlterStatsStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCreateFunctionStmt(FingerprintContext *ctx, const CreateFunctionStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintFunctionParameter(FingerprintContext *ctx, const FunctionParameter *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintAlterFunctionStmt(FingerprintContext *ctx, const AlterFunctionStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintDoStmt(FingerprintContext *ctx, const DoStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintInlineCodeBlock(FingerprintContext *ctx, const InlineCodeBlock *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCallStmt(FingerprintContext *ctx, const CallStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCallContext(FingerprintContext *ctx, const CallContext *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintRenameStmt(FingerprintContext *ctx, const RenameStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterObjectDependsStmt(FingerprintContext *ctx, const AlterObjectDependsStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterObjectSchemaStmt(FingerprintContext *ctx, const AlterObjectSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterOwnerStmt(FingerprintContext *ctx, const AlterOwnerStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterOperatorStmt(FingerprintContext *ctx, const AlterOperatorStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterTypeStmt(FingerprintContext *ctx, const AlterTypeStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintRuleStmt(FingerprintContext *ctx, const RuleStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintNotifyStmt(FingerprintContext *ctx, const NotifyStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintListenStmt(FingerprintContext *ctx, const ListenStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintUnlistenStmt(FingerprintContext *ctx, const UnlistenStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintTransactionStmt(FingerprintContext *ctx, const TransactionStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCompositeTypeStmt(FingerprintContext *ctx, const CompositeTypeStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateEnumStmt(FingerprintContext *ctx, const CreateEnumStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateRangeStmt(FingerprintContext *ctx, const CreateRangeStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterEnumStmt(FingerprintContext *ctx, const AlterEnumStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintViewStmt(FingerprintContext *ctx, const ViewStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintLoadStmt(FingerprintContext *ctx, const LoadStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateDomainStmt(FingerprintContext *ctx, const CreateDomainStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCreatedbStmt(FingerprintContext *ctx, const CreatedbStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterDatabaseStmt(FingerprintContext *ctx, const AlterDatabaseStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterDatabaseRefreshCollStmt(FingerprintContext *ctx, const AlterDatabaseRefreshCollStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterDatabaseSetStmt(FingerprintContext *ctx, const AlterDatabaseSetStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintDropdbStmt(FingerprintContext *ctx, const DropdbStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintAlterSystemStmt(FingerprintContext *ctx, const AlterSystemStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintClusterStmt(FingerprintContext *ctx, const ClusterStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintVacuumStmt(FingerprintContext *ctx, const VacuumStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintVacuumRelation(FingerprintContext *ctx, const VacuumRelation *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintExplainStmt(FingerprintContext *ctx, const ExplainStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCreateTableAsStmt(FingerprintContext *ctx, const CreateTableAsStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateSeqStmt(FingerprintContext *ctx, const CreateSeqStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterSeqStmt(FingerprintContext *ctx, const AlterSeqStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintVariableSetStmt(FingerprintContext *ctx, const VariableSetStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintVariableShowStmt(FingerprintContext *ctx, const VariableShowStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintRefreshMatViewStmt(FingerprintContext *ctx, const RefreshMatViewStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCheckPointStmt(FingerprintContext *ctx, const CheckPointStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintDiscardStmt(FingerprintContext *ctx, const DiscardStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateTrigStmt(FingerprintContext *ctx, const CreateTrigStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreatePLangStmt(FingerprintContext *ctx, const CreatePLangStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateRoleStmt(FingerprintContext *ctx, const CreateRoleStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterRoleStmt(FingerprintContext *ctx, const AlterRoleStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintDropRoleStmt(FingerprintContext *ctx, const DropRoleStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintLockStmt(FingerprintContext *ctx, const LockStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintConstraintsSetStmt(FingerprintContext *ctx, const ConstraintsSetStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintReindexStmt(FingerprintContext *ctx, const ReindexStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCheckPointStmt(FingerprintContext *ctx, const CheckPointStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateSchemaStmt(FingerprintContext *ctx, const CreateSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterDatabaseStmt(FingerprintContext *ctx, const AlterDatabaseStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterDatabaseRefreshCollStmt(FingerprintContext *ctx, const AlterDatabaseRefreshCollStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterDatabaseSetStmt(FingerprintContext *ctx, const AlterDatabaseSetStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterRoleSetStmt(FingerprintContext *ctx, const AlterRoleSetStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCreateConversionStmt(FingerprintContext *ctx, const CreateConversionStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCreateCastStmt(FingerprintContext *ctx, const CreateCastStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateOpClassStmt(FingerprintContext *ctx, const CreateOpClassStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateOpFamilyStmt(FingerprintContext *ctx, const CreateOpFamilyStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterOpFamilyStmt(FingerprintContext *ctx, const AlterOpFamilyStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintCreateTransformStmt(FingerprintContext *ctx, const CreateTransformStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintPrepareStmt(FingerprintContext *ctx, const PrepareStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintExecuteStmt(FingerprintContext *ctx, const ExecuteStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintDeallocateStmt(FingerprintContext *ctx, const DeallocateStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintDeclareCursorStmt(FingerprintContext *ctx, const DeclareCursorStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateTableSpaceStmt(FingerprintContext *ctx, const CreateTableSpaceStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintDropTableSpaceStmt(FingerprintContext *ctx, const DropTableSpaceStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterObjectDependsStmt(FingerprintContext *ctx, const AlterObjectDependsStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterObjectSchemaStmt(FingerprintContext *ctx, const AlterObjectSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterOwnerStmt(FingerprintContext *ctx, const AlterOwnerStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterOperatorStmt(FingerprintContext *ctx, const AlterOperatorStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterTypeStmt(FingerprintContext *ctx, const AlterTypeStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintDropOwnedStmt(FingerprintContext *ctx, const DropOwnedStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintReassignOwnedStmt(FingerprintContext *ctx, const ReassignOwnedStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCompositeTypeStmt(FingerprintContext *ctx, const CompositeTypeStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateEnumStmt(FingerprintContext *ctx, const CreateEnumStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateRangeStmt(FingerprintContext *ctx, const CreateRangeStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterEnumStmt(FingerprintContext *ctx, const AlterEnumStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintAlterTSDictionaryStmt(FingerprintContext *ctx, const AlterTSDictionaryStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintAlterTSConfigurationStmt(FingerprintContext *ctx, const AlterTSConfigurationStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateFdwStmt(FingerprintContext *ctx, const CreateFdwStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterFdwStmt(FingerprintContext *ctx, const AlterFdwStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateForeignServerStmt(FingerprintContext *ctx, const CreateForeignServerStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterForeignServerStmt(FingerprintContext *ctx, const AlterForeignServerStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateUserMappingStmt(FingerprintContext *ctx, const CreateUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterUserMappingStmt(FingerprintContext *ctx, const AlterUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintDropUserMappingStmt(FingerprintContext *ctx, const DropUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterTableSpaceOptionsStmt(FingerprintContext *ctx, const AlterTableSpaceOptionsStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterTableMoveAllStmt(FingerprintContext *ctx, const AlterTableMoveAllStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintSecLabelStmt(FingerprintContext *ctx, const SecLabelStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateForeignTableStmt(FingerprintContext *ctx, const CreateForeignTableStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintImportForeignSchemaStmt(FingerprintContext *ctx, const ImportForeignSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateExtensionStmt(FingerprintContext *ctx, const CreateExtensionStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterExtensionStmt(FingerprintContext *ctx, const AlterExtensionStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterExtensionContentsStmt(FingerprintContext *ctx, const AlterExtensionContentsStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateEventTrigStmt(FingerprintContext *ctx, const CreateEventTrigStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterEventTrigStmt(FingerprintContext *ctx, const AlterEventTrigStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRefreshMatViewStmt(FingerprintContext *ctx, const RefreshMatViewStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintReplicaIdentityStmt(FingerprintContext *ctx, const ReplicaIdentityStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterSystemStmt(FingerprintContext *ctx, const AlterSystemStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreatePolicyStmt(FingerprintContext *ctx, const CreatePolicyStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterPolicyStmt(FingerprintContext *ctx, const AlterPolicyStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateTransformStmt(FingerprintContext *ctx, const CreateTransformStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateAmStmt(FingerprintContext *ctx, const CreateAmStmt *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintPublicationTable(FingerprintContext *ctx, const PublicationTable *node, const void *parent, const char *field_name, unsigned int depth); +static void _fingerprintPublicationObjSpec(FingerprintContext *ctx, const PublicationObjSpec *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCreatePublicationStmt(FingerprintContext *ctx, const CreatePublicationStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintAlterPublicationStmt(FingerprintContext *ctx, const AlterPublicationStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintCreateSubscriptionStmt(FingerprintContext *ctx, const CreateSubscriptionStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintAlterSubscriptionStmt(FingerprintContext *ctx, const AlterSubscriptionStmt *node, const void *parent, const char *field_name, unsigned int depth); static void _fingerprintDropSubscriptionStmt(FingerprintContext *ctx, const DropSubscriptionStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateStatsStmt(FingerprintContext *ctx, const CreateStatsStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterCollationStmt(FingerprintContext *ctx, const AlterCollationStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCallStmt(FingerprintContext *ctx, const CallStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAlterStatsStmt(FingerprintContext *ctx, const AlterStatsStmt *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintA_Expr(FingerprintContext *ctx, const A_Expr *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintColumnRef(FingerprintContext *ctx, const ColumnRef *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintParamRef(FingerprintContext *ctx, const ParamRef *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintFuncCall(FingerprintContext *ctx, const FuncCall *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintA_Star(FingerprintContext *ctx, const A_Star *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintA_Indices(FingerprintContext *ctx, const A_Indices *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintA_Indirection(FingerprintContext *ctx, const A_Indirection *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintA_ArrayExpr(FingerprintContext *ctx, const A_ArrayExpr *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintResTarget(FingerprintContext *ctx, const ResTarget *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintMultiAssignRef(FingerprintContext *ctx, const MultiAssignRef *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintTypeCast(FingerprintContext *ctx, const TypeCast *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCollateClause(FingerprintContext *ctx, const CollateClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintSortBy(FingerprintContext *ctx, const SortBy *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintWindowDef(FingerprintContext *ctx, const WindowDef *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRangeSubselect(FingerprintContext *ctx, const RangeSubselect *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRangeFunction(FingerprintContext *ctx, const RangeFunction *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRangeTableSample(FingerprintContext *ctx, const RangeTableSample *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRangeTableFunc(FingerprintContext *ctx, const RangeTableFunc *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRangeTableFuncCol(FingerprintContext *ctx, const RangeTableFuncCol *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintTypeName(FingerprintContext *ctx, const TypeName *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintColumnDef(FingerprintContext *ctx, const ColumnDef *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintIndexElem(FingerprintContext *ctx, const IndexElem *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintStatsElem(FingerprintContext *ctx, const StatsElem *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintConstraint(FingerprintContext *ctx, const Constraint *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintDefElem(FingerprintContext *ctx, const DefElem *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRangeTblEntry(FingerprintContext *ctx, const RangeTblEntry *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRangeTblFunction(FingerprintContext *ctx, const RangeTblFunction *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintTableSampleClause(FingerprintContext *ctx, const TableSampleClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintWithCheckOption(FingerprintContext *ctx, const WithCheckOption *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintSortGroupClause(FingerprintContext *ctx, const SortGroupClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintGroupingSet(FingerprintContext *ctx, const GroupingSet *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintWindowClause(FingerprintContext *ctx, const WindowClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintObjectWithArgs(FingerprintContext *ctx, const ObjectWithArgs *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintAccessPriv(FingerprintContext *ctx, const AccessPriv *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCreateOpClassItem(FingerprintContext *ctx, const CreateOpClassItem *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintTableLikeClause(FingerprintContext *ctx, const TableLikeClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintFunctionParameter(FingerprintContext *ctx, const FunctionParameter *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintLockingClause(FingerprintContext *ctx, const LockingClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRowMarkClause(FingerprintContext *ctx, const RowMarkClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintXmlSerialize(FingerprintContext *ctx, const XmlSerialize *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintWithClause(FingerprintContext *ctx, const WithClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintInferClause(FingerprintContext *ctx, const InferClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintOnConflictClause(FingerprintContext *ctx, const OnConflictClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCTESearchClause(FingerprintContext *ctx, const CTESearchClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCTECycleClause(FingerprintContext *ctx, const CTECycleClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCommonTableExpr(FingerprintContext *ctx, const CommonTableExpr *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintMergeWhenClause(FingerprintContext *ctx, const MergeWhenClause *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintRoleSpec(FingerprintContext *ctx, const RoleSpec *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintTriggerTransition(FingerprintContext *ctx, const TriggerTransition *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintPartitionElem(FingerprintContext *ctx, const PartitionElem *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintPartitionSpec(FingerprintContext *ctx, const PartitionSpec *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintPartitionBoundSpec(FingerprintContext *ctx, const PartitionBoundSpec *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintPartitionRangeDatum(FingerprintContext *ctx, const PartitionRangeDatum *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintPartitionCmd(FingerprintContext *ctx, const PartitionCmd *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintVacuumRelation(FingerprintContext *ctx, const VacuumRelation *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintPublicationObjSpec(FingerprintContext *ctx, const PublicationObjSpec *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintPublicationTable(FingerprintContext *ctx, const PublicationTable *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintInlineCodeBlock(FingerprintContext *ctx, const InlineCodeBlock *node, const void *parent, const char *field_name, unsigned int depth); -static void _fingerprintCallContext(FingerprintContext *ctx, const CallContext *node, const void *parent, const char *field_name, unsigned int depth); static void @@ -418,12 +432,12 @@ _fingerprintTableFunc(FingerprintContext *ctx, const TableFunc *node, const void // Intentionally ignoring node->location for fingerprinting if (true) { - int x; + int x = -1; Bitmapset *bms = bms_copy(node->notnulls); _fingerprintString(ctx, "notnulls"); - while ((x = bms_first_member(bms)) >= 0) { + while ((x = bms_next_member(bms, x)) >= 0) { char buffer[50]; sprintf(buffer, "%d", x); _fingerprintString(ctx, buffer); @@ -491,21 +505,105 @@ _fingerprintTableFunc(FingerprintContext *ctx, const TableFunc *node, const void } static void -_fingerprintVar(FingerprintContext *ctx, const Var *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintIntoClause(FingerprintContext *ctx, const IntoClause *node, const void *parent, const char *field_name, unsigned int depth) { - // Intentionally ignoring node->location for fingerprinting + if (node->accessMethod != NULL) { + _fingerprintString(ctx, "accessMethod"); + _fingerprintString(ctx, node->accessMethod); + } - if (node->varattno != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->varattno); - _fingerprintString(ctx, "varattno"); - _fingerprintString(ctx, buffer); + if (node->colNames != NULL && node->colNames->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "colNames"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->colNames, node, "colNames", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colNames) == 1 && linitial(node->colNames) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (true) { + _fingerprintString(ctx, "onCommit"); + _fingerprintString(ctx, _enumToStringOnCommitAction(node->onCommit)); + } + + if (node->options != NULL && node->options->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "options"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->rel != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "rel"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRangeVar(ctx, node->rel, node, "rel", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (node->skipData) { + _fingerprintString(ctx, "skipData"); + _fingerprintString(ctx, "true"); + } + + if (node->tableSpaceName != NULL) { + _fingerprintString(ctx, "tableSpaceName"); + _fingerprintString(ctx, node->tableSpaceName); } - if (node->varattnosyn != 0) { + if (node->viewQuery != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "viewQuery"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->viewQuery, node, "viewQuery", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + +} + +static void +_fingerprintVar(FingerprintContext *ctx, const Var *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring node->location for fingerprinting + + if (node->varattno != 0) { char buffer[50]; - sprintf(buffer, "%d", node->varattnosyn); - _fingerprintString(ctx, "varattnosyn"); + sprintf(buffer, "%d", node->varattno); + _fingerprintString(ctx, "varattno"); _fingerprintString(ctx, buffer); } @@ -530,11 +628,19 @@ _fingerprintVar(FingerprintContext *ctx, const Var *node, const void *parent, co _fingerprintString(ctx, buffer); } - if (node->varnosyn != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->varnosyn); - _fingerprintString(ctx, "varnosyn"); - _fingerprintString(ctx, buffer); + if (true) { + int x = -1; + Bitmapset *bms = bms_copy(node->varnullingrels); + + _fingerprintString(ctx, "varnullingrels"); + + while ((x = bms_next_member(bms, x)) >= 0) { + char buffer[50]; + sprintf(buffer, "%d", x); + _fingerprintString(ctx, buffer); + } + + bms_free(bms); } if (node->vartype != 0) { @@ -773,13 +879,6 @@ _fingerprintAggref(FingerprintContext *ctx, const Aggref *node, const void *pare _fingerprintString(ctx, buffer); } - if (node->aggtranstype != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->aggtranstype); - _fingerprintString(ctx, "aggtranstype"); - _fingerprintString(ctx, buffer); - } - if (node->aggtype != 0) { char buffer[50]; sprintf(buffer, "%d", node->aggtype); @@ -845,22 +944,6 @@ _fingerprintGroupingFunc(FingerprintContext *ctx, const GroupingFunc *node, cons } XXH3_freeState(prev); } - if (node->cols != NULL && node->cols->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cols"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->cols, node, "cols", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cols) == 1 && linitial(node->cols) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } // Intentionally ignoring node->location for fingerprinting if (node->refs != NULL && node->refs->length > 0) { @@ -1209,13 +1292,6 @@ _fingerprintOpExpr(FingerprintContext *ctx, const OpExpr *node, const void *pare _fingerprintString(ctx, buffer); } - if (node->opfuncid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->opfuncid); - _fingerprintString(ctx, "opfuncid"); - _fingerprintString(ctx, buffer); - } - if (node->opno != 0) { char buffer[50]; sprintf(buffer, "%d", node->opno); @@ -1256,13 +1332,6 @@ _fingerprintScalarArrayOpExpr(FingerprintContext *ctx, const ScalarArrayOpExpr * } XXH3_freeState(prev); } - if (node->hashfuncid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->hashfuncid); - _fingerprintString(ctx, "hashfuncid"); - _fingerprintString(ctx, buffer); - } - if (node->inputcollid != 0) { char buffer[50]; sprintf(buffer, "%d", node->inputcollid); @@ -1272,20 +1341,6 @@ _fingerprintScalarArrayOpExpr(FingerprintContext *ctx, const ScalarArrayOpExpr * // Intentionally ignoring node->location for fingerprinting - if (node->negfuncid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->negfuncid); - _fingerprintString(ctx, "negfuncid"); - _fingerprintString(ctx, buffer); - } - - if (node->opfuncid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->opfuncid); - _fingerprintString(ctx, "opfuncid"); - _fingerprintString(ctx, buffer); - } - if (node->opno != 0) { char buffer[50]; sprintf(buffer, "%d", node->opno); @@ -2384,6 +2439,11 @@ _fingerprintXmlExpr(FingerprintContext *ctx, const XmlExpr *node, const void *pa } XXH3_freeState(prev); } + if (node->indent) { + _fingerprintString(ctx, "indent"); + _fingerprintString(ctx, "true"); + } + // Intentionally ignoring node->location for fingerprinting if (node->name != NULL) { @@ -2434,17 +2494,34 @@ _fingerprintXmlExpr(FingerprintContext *ctx, const XmlExpr *node, const void *pa } static void -_fingerprintNullTest(FingerprintContext *ctx, const NullTest *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintJsonFormat(FingerprintContext *ctx, const JsonFormat *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->arg != NULL) { + if (true) { + _fingerprintString(ctx, "encoding"); + _fingerprintString(ctx, _enumToStringJsonEncoding(node->encoding)); + } + + if (true) { + _fingerprintString(ctx, "format_type"); + _fingerprintString(ctx, _enumToStringJsonFormatType(node->format_type)); + } + + // Intentionally ignoring node->location for fingerprinting + +} + +static void +_fingerprintJsonReturning(FingerprintContext *ctx, const JsonReturning *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->format != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "arg"); + _fingerprintString(ctx, "format"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + _fingerprintJsonFormat(ctx, node->format, node, "format", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -2453,32 +2530,34 @@ _fingerprintNullTest(FingerprintContext *ctx, const NullTest *node, const void * XXH3_freeState(prev); } - if (node->argisrow) { - _fingerprintString(ctx, "argisrow"); - _fingerprintString(ctx, "true"); + if (node->typid != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->typid); + _fingerprintString(ctx, "typid"); + _fingerprintString(ctx, buffer); } - // Intentionally ignoring node->location for fingerprinting - - if (true) { - _fingerprintString(ctx, "nulltesttype"); - _fingerprintString(ctx, _enumToStringNullTestType(node->nulltesttype)); + if (node->typmod != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->typmod); + _fingerprintString(ctx, "typmod"); + _fingerprintString(ctx, buffer); } } static void -_fingerprintBooleanTest(FingerprintContext *ctx, const BooleanTest *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintJsonValueExpr(FingerprintContext *ctx, const JsonValueExpr *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->arg != NULL) { + if (node->format != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "arg"); + _fingerprintString(ctx, "format"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + _fingerprintJsonFormat(ctx, node->format, node, "format", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -2487,27 +2566,15 @@ _fingerprintBooleanTest(FingerprintContext *ctx, const BooleanTest *node, const XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "booltesttype"); - _fingerprintString(ctx, _enumToStringBoolTestType(node->booltesttype)); - } - - // Intentionally ignoring node->location for fingerprinting - -} - -static void -_fingerprintCoerceToDomain(FingerprintContext *ctx, const CoerceToDomain *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->arg != NULL) { + if (node->formatted_expr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "arg"); + _fingerprintString(ctx, "formatted_expr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + _fingerprintNode(ctx, node->formatted_expr, node, "formatted_expr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -2516,63 +2583,305 @@ _fingerprintCoerceToDomain(FingerprintContext *ctx, const CoerceToDomain *node, XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "coercionformat"); - _fingerprintString(ctx, _enumToStringCoercionForm(node->coercionformat)); - } - - // Intentionally ignoring node->location for fingerprinting - - if (node->resultcollid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->resultcollid); - _fingerprintString(ctx, "resultcollid"); - _fingerprintString(ctx, buffer); - } + if (node->raw_expr != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; - if (node->resulttype != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->resulttype); - _fingerprintString(ctx, "resulttype"); - _fingerprintString(ctx, buffer); - } + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "raw_expr"); - if (node->resulttypmod != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->resulttypmod); - _fingerprintString(ctx, "resulttypmod"); - _fingerprintString(ctx, buffer); + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->raw_expr, node, "raw_expr", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } } static void -_fingerprintCoerceToDomainValue(FingerprintContext *ctx, const CoerceToDomainValue *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintJsonConstructorExpr(FingerprintContext *ctx, const JsonConstructorExpr *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->collation != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->collation); - _fingerprintString(ctx, "collation"); - _fingerprintString(ctx, buffer); - } - - // Intentionally ignoring node->location for fingerprinting - - if (node->typeId != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->typeId); - _fingerprintString(ctx, "typeId"); - _fingerprintString(ctx, buffer); + if (node->absent_on_null) { + _fingerprintString(ctx, "absent_on_null"); + _fingerprintString(ctx, "true"); } - if (node->typeMod != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->typeMod); - _fingerprintString(ctx, "typeMod"); - _fingerprintString(ctx, buffer); - } + if (node->args != NULL && node->args->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; -} + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "args"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->args, node, "args", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->coercion != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "coercion"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->coercion, node, "coercion", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (node->func != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "func"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->func, node, "func", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + // Intentionally ignoring node->location for fingerprinting + + if (node->returning != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "returning"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintJsonReturning(ctx, node->returning, node, "returning", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (true) { + _fingerprintString(ctx, "type"); + _fingerprintString(ctx, _enumToStringJsonConstructorType(node->type)); + } + + if (node->unique) { + _fingerprintString(ctx, "unique"); + _fingerprintString(ctx, "true"); + } + +} + +static void +_fingerprintJsonIsPredicate(FingerprintContext *ctx, const JsonIsPredicate *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->expr != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "expr"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->expr, node, "expr", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (node->format != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "format"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintJsonFormat(ctx, node->format, node, "format", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (true) { + _fingerprintString(ctx, "item_type"); + _fingerprintString(ctx, _enumToStringJsonValueType(node->item_type)); + } + + // Intentionally ignoring node->location for fingerprinting + + if (node->unique_keys) { + _fingerprintString(ctx, "unique_keys"); + _fingerprintString(ctx, "true"); + } + +} + +static void +_fingerprintNullTest(FingerprintContext *ctx, const NullTest *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->arg != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "arg"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (node->argisrow) { + _fingerprintString(ctx, "argisrow"); + _fingerprintString(ctx, "true"); + } + + // Intentionally ignoring node->location for fingerprinting + + if (true) { + _fingerprintString(ctx, "nulltesttype"); + _fingerprintString(ctx, _enumToStringNullTestType(node->nulltesttype)); + } + +} + +static void +_fingerprintBooleanTest(FingerprintContext *ctx, const BooleanTest *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->arg != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "arg"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (true) { + _fingerprintString(ctx, "booltesttype"); + _fingerprintString(ctx, _enumToStringBoolTestType(node->booltesttype)); + } + + // Intentionally ignoring node->location for fingerprinting + +} + +static void +_fingerprintCoerceToDomain(FingerprintContext *ctx, const CoerceToDomain *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->arg != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "arg"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (true) { + _fingerprintString(ctx, "coercionformat"); + _fingerprintString(ctx, _enumToStringCoercionForm(node->coercionformat)); + } + + // Intentionally ignoring node->location for fingerprinting + + if (node->resultcollid != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->resultcollid); + _fingerprintString(ctx, "resultcollid"); + _fingerprintString(ctx, buffer); + } + + if (node->resulttype != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->resulttype); + _fingerprintString(ctx, "resulttype"); + _fingerprintString(ctx, buffer); + } + + if (node->resulttypmod != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->resulttypmod); + _fingerprintString(ctx, "resulttypmod"); + _fingerprintString(ctx, buffer); + } + +} + +static void +_fingerprintCoerceToDomainValue(FingerprintContext *ctx, const CoerceToDomainValue *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->collation != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->collation); + _fingerprintString(ctx, "collation"); + _fingerprintString(ctx, buffer); + } + + // Intentionally ignoring node->location for fingerprinting + + if (node->typeId != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->typeId); + _fingerprintString(ctx, "typeId"); + _fingerprintString(ctx, buffer); + } + + if (node->typeMod != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->typeMod); + _fingerprintString(ctx, "typeMod"); + _fingerprintString(ctx, buffer); + } + +} static void _fingerprintSetToDefault(FingerprintContext *ctx, const SetToDefault *node, const void *parent, const char *field_name, unsigned int depth) @@ -2999,193 +3308,7 @@ _fingerprintOnConflictExpr(FingerprintContext *ctx, const OnConflictExpr *node, } static void -_fingerprintIntoClause(FingerprintContext *ctx, const IntoClause *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->accessMethod != NULL) { - _fingerprintString(ctx, "accessMethod"); - _fingerprintString(ctx, node->accessMethod); - } - - if (node->colNames != NULL && node->colNames->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "colNames"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->colNames, node, "colNames", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colNames) == 1 && linitial(node->colNames) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - if (true) { - _fingerprintString(ctx, "onCommit"); - _fingerprintString(ctx, _enumToStringOnCommitAction(node->onCommit)); - } - - if (node->options != NULL && node->options->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - if (node->rel != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "rel"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->rel, node, "rel", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - - if (node->skipData) { - _fingerprintString(ctx, "skipData"); - _fingerprintString(ctx, "true"); - } - - if (node->tableSpaceName != NULL) { - _fingerprintString(ctx, "tableSpaceName"); - _fingerprintString(ctx, node->tableSpaceName); - } - - if (node->viewQuery != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "viewQuery"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->viewQuery, node, "viewQuery", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - -} - -static void -_fingerprintMergeAction(FingerprintContext *ctx, const MergeAction *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "commandType"); - _fingerprintString(ctx, _enumToStringCmdType(node->commandType)); - } - - if (node->matched) { - _fingerprintString(ctx, "matched"); - _fingerprintString(ctx, "true"); - } - - if (true) { - _fingerprintString(ctx, "override"); - _fingerprintString(ctx, _enumToStringOverridingKind(node->override)); - } - - if (node->qual != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "qual"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->qual, node, "qual", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - - if (node->targetList != NULL && node->targetList->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "targetList"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - if (node->updateColnos != NULL && node->updateColnos->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "updateColnos"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->updateColnos, node, "updateColnos", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->updateColnos) == 1 && linitial(node->updateColnos) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } -} - -static void -_fingerprintRawStmt(FingerprintContext *ctx, const RawStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->stmt != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "stmt"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->stmt, node, "stmt", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - - // Intentionally ignoring node->stmt_len for fingerprinting - - // Intentionally ignoring node->stmt_location for fingerprinting - -} - -static void -_fingerprintQuery(FingerprintContext *ctx, const Query *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintQuery(FingerprintContext *ctx, const Query *node, const void *parent, const char *field_name, unsigned int depth) { if (node->canSetTag) { _fingerprintString(ctx, "canSetTag"); @@ -3448,13 +3571,6 @@ _fingerprintQuery(FingerprintContext *ctx, const Query *node, const void *parent _fingerprintString(ctx, _enumToStringOverridingKind(node->override)); } - if (node->queryId != 0) { - char buffer[50]; - sprintf(buffer, "%ld", node->queryId); - _fingerprintString(ctx, "queryId"); - _fingerprintString(ctx, buffer); - } - if (true) { _fingerprintString(ctx, "querySource"); _fingerprintString(ctx, _enumToStringQuerySource(node->querySource)); @@ -3515,6 +3631,22 @@ _fingerprintQuery(FingerprintContext *ctx, const Query *node, const void *parent } XXH3_freeState(prev); } + if (node->rteperminfos != NULL && node->rteperminfos->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "rteperminfos"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->rteperminfos, node, "rteperminfos", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->rteperminfos) == 1 && linitial(node->rteperminfos) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } if (node->setOperations != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; @@ -3630,88 +3762,133 @@ _fingerprintQuery(FingerprintContext *ctx, const Query *node, const void *parent } static void -_fingerprintInsertStmt(FingerprintContext *ctx, const InsertStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintTypeName(FingerprintContext *ctx, const TypeName *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->cols != NULL && node->cols->length > 0) { + if (node->arrayBounds != NULL && node->arrayBounds->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cols"); + _fingerprintString(ctx, "arrayBounds"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->cols, node, "cols", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cols) == 1 && linitial(node->cols) == NIL)) { + _fingerprintNode(ctx, node->arrayBounds, node, "arrayBounds", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->arrayBounds) == 1 && linitial(node->arrayBounds) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->onConflictClause != NULL) { + // Intentionally ignoring node->location for fingerprinting + + if (node->names != NULL && node->names->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "onConflictClause"); + _fingerprintString(ctx, "names"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintOnConflictClause(ctx, node->onConflictClause, node, "onConflictClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->names, node, "names", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->names) == 1 && linitial(node->names) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->pct_type) { + _fingerprintString(ctx, "pct_type"); + _fingerprintString(ctx, "true"); + } - if (true) { - _fingerprintString(ctx, "override"); - _fingerprintString(ctx, _enumToStringOverridingKind(node->override)); + if (node->setof) { + _fingerprintString(ctx, "setof"); + _fingerprintString(ctx, "true"); } - if (node->relation != NULL) { + if (node->typeOid != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->typeOid); + _fingerprintString(ctx, "typeOid"); + _fingerprintString(ctx, buffer); + } + + if (node->typemod != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->typemod); + _fingerprintString(ctx, "typemod"); + _fingerprintString(ctx, buffer); + } + + if (node->typmods != NULL && node->typmods->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "typmods"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->typmods, node, "typmods", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typmods) == 1 && linitial(node->typmods) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->returningList != NULL && node->returningList->length > 0) { +static void +_fingerprintColumnRef(FingerprintContext *ctx, const ColumnRef *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->fields != NULL && node->fields->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "returningList"); + _fingerprintString(ctx, "fields"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->returningList, node, "returningList", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->returningList) == 1 && linitial(node->returningList) == NIL)) { + _fingerprintNode(ctx, node->fields, node, "fields", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fields) == 1 && linitial(node->fields) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->selectStmt != NULL) { + // Intentionally ignoring node->location for fingerprinting + +} + +static void +_fingerprintParamRef(FingerprintContext *ctx, const ParamRef *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring all fields for fingerprinting +} + +static void +_fingerprintA_Expr(FingerprintContext *ctx, const A_Expr *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (true) { + _fingerprintString(ctx, "kind"); + if (node->kind == AEXPR_OP_ANY || node->kind == AEXPR_IN) + _fingerprintString(ctx, "AEXPR_OP"); + else + _fingerprintString(ctx, _enumToStringA_Expr_Kind(node->kind)); + } + + if (node->lexpr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "selectStmt"); + _fingerprintString(ctx, "lexpr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->selectStmt, node, "selectStmt", depth + 1); + _fingerprintNode(ctx, node->lexpr, node, "lexpr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -3720,37 +3897,33 @@ _fingerprintInsertStmt(FingerprintContext *ctx, const InsertStmt *node, const vo XXH3_freeState(prev); } - if (node->withClause != NULL) { + // Intentionally ignoring node->location for fingerprinting + + if (node->name != NULL && node->name->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "withClause"); + _fingerprintString(ctx, "name"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->name, node, "name", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->name) == 1 && linitial(node->name) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - -} - -static void -_fingerprintDeleteStmt(FingerprintContext *ctx, const DeleteStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->relation != NULL) { + if (node->rexpr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "rexpr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintNode(ctx, node->rexpr, node, "rexpr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -3759,47 +3932,61 @@ _fingerprintDeleteStmt(FingerprintContext *ctx, const DeleteStmt *node, const vo XXH3_freeState(prev); } - if (node->returningList != NULL && node->returningList->length > 0) { +} + +static void +_fingerprintTypeCast(FingerprintContext *ctx, const TypeCast *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->arg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "returningList"); + _fingerprintString(ctx, "arg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->returningList, node, "returningList", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->returningList) == 1 && linitial(node->returningList) == NIL)) { + _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->usingClause != NULL && node->usingClause->length > 0) { + + // Intentionally ignoring node->location for fingerprinting + + if (node->typeName != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "usingClause"); + _fingerprintString(ctx, "typeName"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->usingClause, node, "usingClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->usingClause) == 1 && linitial(node->usingClause) == NIL)) { + _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->whereClause != NULL) { + +} + +static void +_fingerprintCollateClause(FingerprintContext *ctx, const CollateClause *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->arg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whereClause"); + _fingerprintString(ctx, "arg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -3808,53 +3995,60 @@ _fingerprintDeleteStmt(FingerprintContext *ctx, const DeleteStmt *node, const vo XXH3_freeState(prev); } - if (node->withClause != NULL) { + if (node->collname != NULL && node->collname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "withClause"); + _fingerprintString(ctx, "collname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->collname, node, "collname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->collname) == 1 && linitial(node->collname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + // Intentionally ignoring node->location for fingerprinting } static void -_fingerprintUpdateStmt(FingerprintContext *ctx, const UpdateStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintRoleSpec(FingerprintContext *ctx, const RoleSpec *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->fromClause != NULL && node->fromClause->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + // Intentionally ignoring node->location for fingerprinting - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "fromClause"); + if (node->rolename != NULL) { + _fingerprintString(ctx, "rolename"); + _fingerprintString(ctx, node->rolename); + } - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->fromClause, node, "fromClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fromClause) == 1 && linitial(node->fromClause) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); + if (true) { + _fingerprintString(ctx, "roletype"); + _fingerprintString(ctx, _enumToStringRoleSpecType(node->roletype)); } - if (node->relation != NULL) { + +} + +static void +_fingerprintFuncCall(FingerprintContext *ctx, const FuncCall *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->agg_distinct) { + _fingerprintString(ctx, "agg_distinct"); + _fingerprintString(ctx, "true"); + } + + if (node->agg_filter != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "agg_filter"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintNode(ctx, node->agg_filter, node, "agg_filter", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -3863,64 +4057,85 @@ _fingerprintUpdateStmt(FingerprintContext *ctx, const UpdateStmt *node, const vo XXH3_freeState(prev); } - if (node->returningList != NULL && node->returningList->length > 0) { + if (node->agg_order != NULL && node->agg_order->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "returningList"); + _fingerprintString(ctx, "agg_order"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->returningList, node, "returningList", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->returningList) == 1 && linitial(node->returningList) == NIL)) { + _fingerprintNode(ctx, node->agg_order, node, "agg_order", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->agg_order) == 1 && linitial(node->agg_order) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->targetList != NULL && node->targetList->length > 0) { + if (node->agg_star) { + _fingerprintString(ctx, "agg_star"); + _fingerprintString(ctx, "true"); + } + + if (node->agg_within_group) { + _fingerprintString(ctx, "agg_within_group"); + _fingerprintString(ctx, "true"); + } + + if (node->args != NULL && node->args->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "targetList"); + _fingerprintString(ctx, "args"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { + _fingerprintNode(ctx, node->args, node, "args", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->whereClause != NULL) { + if (node->func_variadic) { + _fingerprintString(ctx, "func_variadic"); + _fingerprintString(ctx, "true"); + } + + if (true) { + _fingerprintString(ctx, "funcformat"); + _fingerprintString(ctx, _enumToStringCoercionForm(node->funcformat)); + } + + if (node->funcname != NULL && node->funcname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whereClause"); + _fingerprintString(ctx, "funcname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->funcname, node, "funcname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funcname) == 1 && linitial(node->funcname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + // Intentionally ignoring node->location for fingerprinting - if (node->withClause != NULL) { + if (node->over != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "withClause"); + _fingerprintString(ctx, "over"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); + _fingerprintWindowDef(ctx, node->over, node, "over", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -3932,17 +4147,27 @@ _fingerprintUpdateStmt(FingerprintContext *ctx, const UpdateStmt *node, const vo } static void -_fingerprintMergeStmt(FingerprintContext *ctx, const MergeStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintA_Star(FingerprintContext *ctx, const A_Star *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->joinCondition != NULL) { +} + +static void +_fingerprintA_Indices(FingerprintContext *ctx, const A_Indices *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->is_slice) { + _fingerprintString(ctx, "is_slice"); + _fingerprintString(ctx, "true"); + } + + if (node->lidx != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "joinCondition"); + _fingerprintString(ctx, "lidx"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->joinCondition, node, "joinCondition", depth + 1); + _fingerprintNode(ctx, node->lidx, node, "lidx", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -3951,31 +4176,37 @@ _fingerprintMergeStmt(FingerprintContext *ctx, const MergeStmt *node, const void XXH3_freeState(prev); } - if (node->mergeWhenClauses != NULL && node->mergeWhenClauses->length > 0) { + if (node->uidx != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "mergeWhenClauses"); + _fingerprintString(ctx, "uidx"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->mergeWhenClauses, node, "mergeWhenClauses", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->mergeWhenClauses) == 1 && linitial(node->mergeWhenClauses) == NIL)) { + _fingerprintNode(ctx, node->uidx, node, "uidx", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->relation != NULL) { + +} + +static void +_fingerprintA_Indirection(FingerprintContext *ctx, const A_Indirection *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->arg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "arg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -3984,112 +4215,118 @@ _fingerprintMergeStmt(FingerprintContext *ctx, const MergeStmt *node, const void XXH3_freeState(prev); } - if (node->sourceRelation != NULL) { + if (node->indirection != NULL && node->indirection->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "sourceRelation"); + _fingerprintString(ctx, "indirection"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->sourceRelation, node, "sourceRelation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->indirection, node, "indirection", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indirection) == 1 && linitial(node->indirection) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->withClause != NULL) { +static void +_fingerprintA_ArrayExpr(FingerprintContext *ctx, const A_ArrayExpr *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->elements != NULL && node->elements->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "withClause"); + _fingerprintString(ctx, "elements"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->elements, node, "elements", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->elements) == 1 && linitial(node->elements) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + // Intentionally ignoring node->location for fingerprinting } static void -_fingerprintSelectStmt(FingerprintContext *ctx, const SelectStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintResTarget(FingerprintContext *ctx, const ResTarget *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->all) { - _fingerprintString(ctx, "all"); - _fingerprintString(ctx, "true"); - } - - if (node->distinctClause != NULL && node->distinctClause->length > 0) { + if (node->indirection != NULL && node->indirection->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "distinctClause"); + _fingerprintString(ctx, "indirection"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->distinctClause, node, "distinctClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->distinctClause) == 1 && linitial(node->distinctClause) == NIL)) { + _fingerprintNode(ctx, node->indirection, node, "indirection", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indirection) == 1 && linitial(node->indirection) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->fromClause != NULL && node->fromClause->length > 0) { + // Intentionally ignoring node->location for fingerprinting + + if (node->name != NULL && (field_name == NULL || parent == NULL || !IsA(parent, SelectStmt) || strcmp(field_name, "targetList") != 0)) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); + } + + if (node->val != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "fromClause"); + _fingerprintString(ctx, "val"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->fromClause, node, "fromClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fromClause) == 1 && linitial(node->fromClause) == NIL)) { + _fingerprintNode(ctx, node->val, node, "val", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->groupClause != NULL && node->groupClause->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "groupClause"); +} - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->groupClause, node, "groupClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->groupClause) == 1 && linitial(node->groupClause) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); +static void +_fingerprintMultiAssignRef(FingerprintContext *ctx, const MultiAssignRef *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->colno != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->colno); + _fingerprintString(ctx, "colno"); + _fingerprintString(ctx, buffer); } - if (node->groupDistinct) { - _fingerprintString(ctx, "groupDistinct"); - _fingerprintString(ctx, "true"); + + if (node->ncolumns != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->ncolumns); + _fingerprintString(ctx, "ncolumns"); + _fingerprintString(ctx, buffer); } - if (node->havingClause != NULL) { + if (node->source != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "havingClause"); + _fingerprintString(ctx, "source"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->havingClause, node, "havingClause", depth + 1); + _fingerprintNode(ctx, node->source, node, "source", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4098,15 +4335,22 @@ _fingerprintSelectStmt(FingerprintContext *ctx, const SelectStmt *node, const vo XXH3_freeState(prev); } - if (node->intoClause != NULL) { +} + +static void +_fingerprintSortBy(FingerprintContext *ctx, const SortBy *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring node->location for fingerprinting + + if (node->node != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "intoClause"); + _fingerprintString(ctx, "node"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintIntoClause(ctx, node->intoClause, node, "intoClause", depth + 1); + _fingerprintNode(ctx, node->node, node, "node", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4115,49 +4359,46 @@ _fingerprintSelectStmt(FingerprintContext *ctx, const SelectStmt *node, const vo XXH3_freeState(prev); } - if (node->larg != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "larg"); + if (true) { + _fingerprintString(ctx, "sortby_dir"); + _fingerprintString(ctx, _enumToStringSortByDir(node->sortby_dir)); + } - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintSelectStmt(ctx, node->larg, node, "larg", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); + if (true) { + _fingerprintString(ctx, "sortby_nulls"); + _fingerprintString(ctx, _enumToStringSortByNulls(node->sortby_nulls)); } - if (node->limitCount != NULL) { + if (node->useOp != NULL && node->useOp->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "limitCount"); + _fingerprintString(ctx, "useOp"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->limitCount, node, "limitCount", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->useOp, node, "useOp", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->useOp) == 1 && linitial(node->useOp) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->limitOffset != NULL) { +static void +_fingerprintWindowDef(FingerprintContext *ctx, const WindowDef *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->endOffset != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "limitOffset"); + _fingerprintString(ctx, "endOffset"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->limitOffset, node, "limitOffset", depth + 1); + _fingerprintNode(ctx, node->endOffset, node, "endOffset", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4166,106 +4407,132 @@ _fingerprintSelectStmt(FingerprintContext *ctx, const SelectStmt *node, const vo XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "limitOption"); - _fingerprintString(ctx, _enumToStringLimitOption(node->limitOption)); + if (node->frameOptions != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->frameOptions); + _fingerprintString(ctx, "frameOptions"); + _fingerprintString(ctx, buffer); } - if (node->lockingClause != NULL && node->lockingClause->length > 0) { + // Intentionally ignoring node->location for fingerprinting + + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); + } + + if (node->orderClause != NULL && node->orderClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "lockingClause"); + _fingerprintString(ctx, "orderClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->lockingClause, node, "lockingClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->lockingClause) == 1 && linitial(node->lockingClause) == NIL)) { + _fingerprintNode(ctx, node->orderClause, node, "orderClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->orderClause) == 1 && linitial(node->orderClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "op"); - _fingerprintString(ctx, _enumToStringSetOperation(node->op)); - } - - if (node->rarg != NULL) { + if (node->partitionClause != NULL && node->partitionClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "rarg"); + _fingerprintString(ctx, "partitionClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintSelectStmt(ctx, node->rarg, node, "rarg", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->partitionClause, node, "partitionClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->partitionClause) == 1 && linitial(node->partitionClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->refname != NULL) { + _fingerprintString(ctx, "refname"); + _fingerprintString(ctx, node->refname); + } - if (node->sortClause != NULL && node->sortClause->length > 0) { + if (node->startOffset != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "sortClause"); + _fingerprintString(ctx, "startOffset"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->sortClause, node, "sortClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->sortClause) == 1 && linitial(node->sortClause) == NIL)) { + _fingerprintNode(ctx, node->startOffset, node, "startOffset", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->targetList != NULL && node->targetList->length > 0) { + +} + +static void +_fingerprintRangeSubselect(FingerprintContext *ctx, const RangeSubselect *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->alias != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "targetList"); + _fingerprintString(ctx, "alias"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { + _fingerprintAlias(ctx, node->alias, node, "alias", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->valuesLists != NULL && node->valuesLists->length > 0) { + + if (node->lateral) { + _fingerprintString(ctx, "lateral"); + _fingerprintString(ctx, "true"); + } + + if (node->subquery != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "valuesLists"); + _fingerprintString(ctx, "subquery"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->valuesLists, node, "valuesLists", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->valuesLists) == 1 && linitial(node->valuesLists) == NIL)) { + _fingerprintNode(ctx, node->subquery, node, "subquery", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->whereClause != NULL) { + +} + +static void +_fingerprintRangeFunction(FingerprintContext *ctx, const RangeFunction *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->alias != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whereClause"); + _fingerprintString(ctx, "alias"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + _fingerprintAlias(ctx, node->alias, node, "alias", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4274,53 +4541,67 @@ _fingerprintSelectStmt(FingerprintContext *ctx, const SelectStmt *node, const vo XXH3_freeState(prev); } - if (node->windowClause != NULL && node->windowClause->length > 0) { + if (node->coldeflist != NULL && node->coldeflist->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "windowClause"); + _fingerprintString(ctx, "coldeflist"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->windowClause, node, "windowClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->windowClause) == 1 && linitial(node->windowClause) == NIL)) { + _fingerprintNode(ctx, node->coldeflist, node, "coldeflist", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->coldeflist) == 1 && linitial(node->coldeflist) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->withClause != NULL) { + if (node->functions != NULL && node->functions->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "withClause"); + _fingerprintString(ctx, "functions"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->functions, node, "functions", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->functions) == 1 && linitial(node->functions) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->is_rowsfrom) { + _fingerprintString(ctx, "is_rowsfrom"); + _fingerprintString(ctx, "true"); + } + + if (node->lateral) { + _fingerprintString(ctx, "lateral"); + _fingerprintString(ctx, "true"); + } + + if (node->ordinality) { + _fingerprintString(ctx, "ordinality"); + _fingerprintString(ctx, "true"); + } } static void -_fingerprintReturnStmt(FingerprintContext *ctx, const ReturnStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintRangeTableFunc(FingerprintContext *ctx, const RangeTableFunc *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->returnval != NULL) { + if (node->alias != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "returnval"); + _fingerprintString(ctx, "alias"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->returnval, node, "returnval", depth + 1); + _fingerprintAlias(ctx, node->alias, node, "alias", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4329,50 +4610,31 @@ _fingerprintReturnStmt(FingerprintContext *ctx, const ReturnStmt *node, const vo XXH3_freeState(prev); } -} - -static void -_fingerprintPLAssignStmt(FingerprintContext *ctx, const PLAssignStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->indirection != NULL && node->indirection->length > 0) { + if (node->columns != NULL && node->columns->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "indirection"); + _fingerprintString(ctx, "columns"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->indirection, node, "indirection", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indirection) == 1 && linitial(node->indirection) == NIL)) { + _fingerprintNode(ctx, node->columns, node, "columns", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->columns) == 1 && linitial(node->columns) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting - - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } - - if (node->nnames != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->nnames); - _fingerprintString(ctx, "nnames"); - _fingerprintString(ctx, buffer); - } - - if (node->val != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + if (node->docexpr != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "val"); + _fingerprintString(ctx, "docexpr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintSelectStmt(ctx, node->val, node, "val", depth + 1); + _fingerprintNode(ctx, node->docexpr, node, "docexpr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4381,46 +4643,38 @@ _fingerprintPLAssignStmt(FingerprintContext *ctx, const PLAssignStmt *node, cons XXH3_freeState(prev); } -} + if (node->lateral) { + _fingerprintString(ctx, "lateral"); + _fingerprintString(ctx, "true"); + } -static void -_fingerprintAlterTableStmt(FingerprintContext *ctx, const AlterTableStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->cmds != NULL && node->cmds->length > 0) { + // Intentionally ignoring node->location for fingerprinting + + if (node->namespaces != NULL && node->namespaces->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cmds"); + _fingerprintString(ctx, "namespaces"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->cmds, node, "cmds", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cmds) == 1 && linitial(node->cmds) == NIL)) { + _fingerprintNode(ctx, node->namespaces, node, "namespaces", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->namespaces) == 1 && linitial(node->namespaces) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); - } - - if (true) { - _fingerprintString(ctx, "objtype"); - _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); - } - - if (node->relation != NULL) { + if (node->rowexpr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "rowexpr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintNode(ctx, node->rowexpr, node, "rowexpr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4432,22 +4686,17 @@ _fingerprintAlterTableStmt(FingerprintContext *ctx, const AlterTableStmt *node, } static void -_fingerprintAlterTableCmd(FingerprintContext *ctx, const AlterTableCmd *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintRangeTableFuncCol(FingerprintContext *ctx, const RangeTableFuncCol *node, const void *parent, const char *field_name, unsigned int depth) { - if (true) { - _fingerprintString(ctx, "behavior"); - _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); - } - - if (node->def != NULL) { + if (node->coldefexpr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "def"); + _fingerprintString(ctx, "coldefexpr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->def, node, "def", depth + 1); + _fingerprintNode(ctx, node->coldefexpr, node, "coldefexpr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4456,25 +4705,15 @@ _fingerprintAlterTableCmd(FingerprintContext *ctx, const AlterTableCmd *node, co XXH3_freeState(prev); } - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); - } - - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } - - if (node->newowner != NULL) { + if (node->colexpr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "newowner"); + _fingerprintString(ctx, "colexpr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->newowner, node, "newowner", depth + 1); + _fingerprintNode(ctx, node->colexpr, node, "colexpr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4483,67 +4722,24 @@ _fingerprintAlterTableCmd(FingerprintContext *ctx, const AlterTableCmd *node, co XXH3_freeState(prev); } - if (node->num != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->num); - _fingerprintString(ctx, "num"); - _fingerprintString(ctx, buffer); + if (node->colname != NULL) { + _fingerprintString(ctx, "colname"); + _fingerprintString(ctx, node->colname); } - if (node->recurse) { - _fingerprintString(ctx, "recurse"); + if (node->for_ordinality) { + _fingerprintString(ctx, "for_ordinality"); _fingerprintString(ctx, "true"); } - if (true) { - _fingerprintString(ctx, "subtype"); - _fingerprintString(ctx, _enumToStringAlterTableType(node->subtype)); - } - -} - -static void -_fingerprintAlterDomainStmt(FingerprintContext *ctx, const AlterDomainStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "behavior"); - _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); - } - - if (node->def != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "def"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->def, node, "def", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); + if (node->is_not_null) { + _fingerprintString(ctx, "is_not_null"); _fingerprintString(ctx, "true"); } - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } - - if (node->subtype != 0) { - char buffer[2] = {node->subtype, '\0'}; - _fingerprintString(ctx, "subtype"); - _fingerprintString(ctx, buffer); - } + // Intentionally ignoring node->location for fingerprinting - if (node->typeName != NULL && node->typeName->length > 0) { + if (node->typeName != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; @@ -4551,97 +4747,80 @@ _fingerprintAlterDomainStmt(FingerprintContext *ctx, const AlterDomainStmt *node _fingerprintString(ctx, "typeName"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { + _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + } static void -_fingerprintSetOperationStmt(FingerprintContext *ctx, const SetOperationStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintRangeTableSample(FingerprintContext *ctx, const RangeTableSample *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->all) { - _fingerprintString(ctx, "all"); - _fingerprintString(ctx, "true"); - } - - if (node->colCollations != NULL && node->colCollations->length > 0) { + if (node->args != NULL && node->args->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "colCollations"); + _fingerprintString(ctx, "args"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->colCollations, node, "colCollations", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colCollations) == 1 && linitial(node->colCollations) == NIL)) { + _fingerprintNode(ctx, node->args, node, "args", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->colTypes != NULL && node->colTypes->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "colTypes"); + // Intentionally ignoring node->location for fingerprinting - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->colTypes, node, "colTypes", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colTypes) == 1 && linitial(node->colTypes) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - if (node->colTypmods != NULL && node->colTypmods->length > 0) { + if (node->method != NULL && node->method->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "colTypmods"); + _fingerprintString(ctx, "method"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->colTypmods, node, "colTypmods", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colTypmods) == 1 && linitial(node->colTypmods) == NIL)) { + _fingerprintNode(ctx, node->method, node, "method", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->method) == 1 && linitial(node->method) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->groupClauses != NULL && node->groupClauses->length > 0) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "groupClauses"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->groupClauses, node, "groupClauses", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->groupClauses) == 1 && linitial(node->groupClauses) == NIL)) { + _fingerprintNode(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->larg != NULL) { + + if (node->repeatable != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "larg"); + _fingerprintString(ctx, "repeatable"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->larg, node, "larg", depth + 1); + _fingerprintNode(ctx, node->repeatable, node, "repeatable", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4650,20 +4829,20 @@ _fingerprintSetOperationStmt(FingerprintContext *ctx, const SetOperationStmt *no XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "op"); - _fingerprintString(ctx, _enumToStringSetOperation(node->op)); - } +} - if (node->rarg != NULL) { +static void +_fingerprintColumnDef(FingerprintContext *ctx, const ColumnDef *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->collClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "rarg"); + _fingerprintString(ctx, "collClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->rarg, node, "rarg", depth + 1); + _fingerprintCollateClause(ctx, node->collClause, node, "collClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4672,46 +4851,48 @@ _fingerprintSetOperationStmt(FingerprintContext *ctx, const SetOperationStmt *no XXH3_freeState(prev); } -} + if (node->collOid != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->collOid); + _fingerprintString(ctx, "collOid"); + _fingerprintString(ctx, buffer); + } -static void -_fingerprintGrantStmt(FingerprintContext *ctx, const GrantStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "behavior"); - _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); + if (node->colname != NULL) { + _fingerprintString(ctx, "colname"); + _fingerprintString(ctx, node->colname); } - if (node->grant_option) { - _fingerprintString(ctx, "grant_option"); - _fingerprintString(ctx, "true"); + if (node->compression != NULL) { + _fingerprintString(ctx, "compression"); + _fingerprintString(ctx, node->compression); } - if (node->grantees != NULL && node->grantees->length > 0) { + if (node->constraints != NULL && node->constraints->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "grantees"); + _fingerprintString(ctx, "constraints"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->grantees, node, "grantees", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->grantees) == 1 && linitial(node->grantees) == NIL)) { + _fingerprintNode(ctx, node->constraints, node, "constraints", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->constraints) == 1 && linitial(node->constraints) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->grantor != NULL) { + if (node->cooked_default != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "grantor"); + _fingerprintString(ctx, "cooked_default"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->grantor, node, "grantor", depth + 1); + _fingerprintNode(ctx, node->cooked_default, node, "cooked_default", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4720,109 +4901,141 @@ _fingerprintGrantStmt(FingerprintContext *ctx, const GrantStmt *node, const void XXH3_freeState(prev); } - if (node->is_grant) { - _fingerprintString(ctx, "is_grant"); - _fingerprintString(ctx, "true"); - } - - if (node->objects != NULL && node->objects->length > 0) { + if (node->fdwoptions != NULL && node->fdwoptions->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "objects"); + _fingerprintString(ctx, "fdwoptions"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->objects, node, "objects", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objects) == 1 && linitial(node->objects) == NIL)) { + _fingerprintNode(ctx, node->fdwoptions, node, "fdwoptions", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fdwoptions) == 1 && linitial(node->fdwoptions) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "objtype"); - _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); + if (node->generated != 0) { + char buffer[2] = {node->generated, '\0'}; + _fingerprintString(ctx, "generated"); + _fingerprintString(ctx, buffer); } - if (node->privileges != NULL && node->privileges->length > 0) { + if (node->identity != 0) { + char buffer[2] = {node->identity, '\0'}; + _fingerprintString(ctx, "identity"); + _fingerprintString(ctx, buffer); + } + + if (node->identitySequence != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "privileges"); + _fingerprintString(ctx, "identitySequence"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->privileges, node, "privileges", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->privileges) == 1 && linitial(node->privileges) == NIL)) { + _fingerprintRangeVar(ctx, node->identitySequence, node, "identitySequence", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "targtype"); - _fingerprintString(ctx, _enumToStringGrantTargetType(node->targtype)); + + if (node->inhcount != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->inhcount); + _fingerprintString(ctx, "inhcount"); + _fingerprintString(ctx, buffer); } -} + if (node->is_from_type) { + _fingerprintString(ctx, "is_from_type"); + _fingerprintString(ctx, "true"); + } -static void -_fingerprintGrantRoleStmt(FingerprintContext *ctx, const GrantRoleStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->admin_opt) { - _fingerprintString(ctx, "admin_opt"); + if (node->is_local) { + _fingerprintString(ctx, "is_local"); _fingerprintString(ctx, "true"); } - if (true) { - _fingerprintString(ctx, "behavior"); - _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); + if (node->is_not_null) { + _fingerprintString(ctx, "is_not_null"); + _fingerprintString(ctx, "true"); } - if (node->granted_roles != NULL && node->granted_roles->length > 0) { + // Intentionally ignoring node->location for fingerprinting + + if (node->raw_default != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "granted_roles"); + _fingerprintString(ctx, "raw_default"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->granted_roles, node, "granted_roles", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->granted_roles) == 1 && linitial(node->granted_roles) == NIL)) { + _fingerprintNode(ctx, node->raw_default, node, "raw_default", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->grantee_roles != NULL && node->grantee_roles->length > 0) { + + if (node->storage != 0) { + char buffer[2] = {node->storage, '\0'}; + _fingerprintString(ctx, "storage"); + _fingerprintString(ctx, buffer); + } + + if (node->storage_name != NULL) { + _fingerprintString(ctx, "storage_name"); + _fingerprintString(ctx, node->storage_name); + } + + if (node->typeName != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "grantee_roles"); + _fingerprintString(ctx, "typeName"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->grantee_roles, node, "grantee_roles", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->grantee_roles) == 1 && linitial(node->grantee_roles) == NIL)) { + _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->grantor != NULL) { + +} + +static void +_fingerprintTableLikeClause(FingerprintContext *ctx, const TableLikeClause *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->options != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->options); + _fingerprintString(ctx, "options"); + _fingerprintString(ctx, buffer); + } + + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "grantor"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->grantor, node, "grantor", depth + 1); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4831,160 +5044,187 @@ _fingerprintGrantRoleStmt(FingerprintContext *ctx, const GrantRoleStmt *node, co XXH3_freeState(prev); } - if (node->is_grant) { - _fingerprintString(ctx, "is_grant"); - _fingerprintString(ctx, "true"); + if (node->relationOid != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->relationOid); + _fingerprintString(ctx, "relationOid"); + _fingerprintString(ctx, buffer); } } static void -_fingerprintAlterDefaultPrivilegesStmt(FingerprintContext *ctx, const AlterDefaultPrivilegesStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintIndexElem(FingerprintContext *ctx, const IndexElem *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->action != NULL) { + if (node->collation != NULL && node->collation->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "action"); + _fingerprintString(ctx, "collation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintGrantStmt(ctx, node->action, node, "action", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->collation, node, "collation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->collation) == 1 && linitial(node->collation) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->options != NULL && node->options->length > 0) { + if (node->expr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "expr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->expr, node, "expr", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintClosePortalStmt(FingerprintContext *ctx, const ClosePortalStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - // Intentionally ignoring node->portalname for fingerprinting + if (node->indexcolname != NULL) { + _fingerprintString(ctx, "indexcolname"); + _fingerprintString(ctx, node->indexcolname); + } -} + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); + } -static void -_fingerprintClusterStmt(FingerprintContext *ctx, const ClusterStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->indexname != NULL) { - _fingerprintString(ctx, "indexname"); - _fingerprintString(ctx, node->indexname); + if (true) { + _fingerprintString(ctx, "nulls_ordering"); + _fingerprintString(ctx, _enumToStringSortByNulls(node->nulls_ordering)); } - if (node->params != NULL && node->params->length > 0) { + if (node->opclass != NULL && node->opclass->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "params"); + _fingerprintString(ctx, "opclass"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->params, node, "params", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->params) == 1 && linitial(node->params) == NIL)) { + _fingerprintNode(ctx, node->opclass, node, "opclass", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opclass) == 1 && linitial(node->opclass) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->relation != NULL) { + if (node->opclassopts != NULL && node->opclassopts->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "opclassopts"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->opclassopts, node, "opclassopts", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opclassopts) == 1 && linitial(node->opclassopts) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (true) { + _fingerprintString(ctx, "ordering"); + _fingerprintString(ctx, _enumToStringSortByDir(node->ordering)); + } } static void -_fingerprintCopyStmt(FingerprintContext *ctx, const CopyStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintDefElem(FingerprintContext *ctx, const DefElem *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->attlist != NULL && node->attlist->length > 0) { + if (node->arg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "attlist"); + _fingerprintString(ctx, "arg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->attlist, node, "attlist", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->attlist) == 1 && linitial(node->attlist) == NIL)) { + _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->filename != NULL) { - _fingerprintString(ctx, "filename"); - _fingerprintString(ctx, node->filename); + + if (true) { + _fingerprintString(ctx, "defaction"); + _fingerprintString(ctx, _enumToStringDefElemAction(node->defaction)); } - if (node->is_from) { - _fingerprintString(ctx, "is_from"); - _fingerprintString(ctx, "true"); + if (node->defname != NULL) { + _fingerprintString(ctx, "defname"); + _fingerprintString(ctx, node->defname); } - if (node->is_program) { - _fingerprintString(ctx, "is_program"); - _fingerprintString(ctx, "true"); + if (node->defnamespace != NULL) { + _fingerprintString(ctx, "defnamespace"); + _fingerprintString(ctx, node->defnamespace); } - if (node->options != NULL && node->options->length > 0) { + // Intentionally ignoring node->location for fingerprinting + +} + +static void +_fingerprintLockingClause(FingerprintContext *ctx, const LockingClause *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->lockedRels != NULL && node->lockedRels->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "lockedRels"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->lockedRels, node, "lockedRels", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->lockedRels) == 1 && linitial(node->lockedRels) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->query != NULL) { + if (true) { + _fingerprintString(ctx, "strength"); + _fingerprintString(ctx, _enumToStringLockClauseStrength(node->strength)); + } + + if (true) { + _fingerprintString(ctx, "waitPolicy"); + _fingerprintString(ctx, _enumToStringLockWaitPolicy(node->waitPolicy)); + } + +} + +static void +_fingerprintXmlSerialize(FingerprintContext *ctx, const XmlSerialize *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->expr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "query"); + _fingerprintString(ctx, "expr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->query, node, "query", depth + 1); + _fingerprintNode(ctx, node->expr, node, "expr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -4993,15 +5233,22 @@ _fingerprintCopyStmt(FingerprintContext *ctx, const CopyStmt *node, const void * XXH3_freeState(prev); } - if (node->relation != NULL) { + if (node->indent) { + _fingerprintString(ctx, "indent"); + _fingerprintString(ctx, "true"); + } + + // Intentionally ignoring node->location for fingerprinting + + if (node->typeName != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "typeName"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5010,15 +5257,41 @@ _fingerprintCopyStmt(FingerprintContext *ctx, const CopyStmt *node, const void * XXH3_freeState(prev); } - if (node->whereClause != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + if (true) { + _fingerprintString(ctx, "xmloption"); + _fingerprintString(ctx, _enumToStringXmlOptionType(node->xmloption)); + } - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whereClause"); +} + +static void +_fingerprintPartitionElem(FingerprintContext *ctx, const PartitionElem *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->collation != NULL && node->collation->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "collation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + _fingerprintNode(ctx, node->collation, node, "collation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->collation) == 1 && linitial(node->collation) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->expr != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "expr"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->expr, node, "expr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5027,100 +5300,158 @@ _fingerprintCopyStmt(FingerprintContext *ctx, const CopyStmt *node, const void * XXH3_freeState(prev); } + // Intentionally ignoring node->location for fingerprinting + + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); + } + + if (node->opclass != NULL && node->opclass->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "opclass"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->opclass, node, "opclass", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opclass) == 1 && linitial(node->opclass) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } } static void -_fingerprintCreateStmt(FingerprintContext *ctx, const CreateStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintPartitionSpec(FingerprintContext *ctx, const PartitionSpec *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->accessMethod != NULL) { - _fingerprintString(ctx, "accessMethod"); - _fingerprintString(ctx, node->accessMethod); - } + // Intentionally ignoring node->location for fingerprinting - if (node->constraints != NULL && node->constraints->length > 0) { + if (node->partParams != NULL && node->partParams->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "constraints"); + _fingerprintString(ctx, "partParams"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->constraints, node, "constraints", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->constraints) == 1 && linitial(node->constraints) == NIL)) { + _fingerprintNode(ctx, node->partParams, node, "partParams", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->partParams) == 1 && linitial(node->partParams) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); + if (true) { + _fingerprintString(ctx, "strategy"); + _fingerprintString(ctx, _enumToStringPartitionStrategy(node->strategy)); + } + +} + +static void +_fingerprintPartitionBoundSpec(FingerprintContext *ctx, const PartitionBoundSpec *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->is_default) { + _fingerprintString(ctx, "is_default"); _fingerprintString(ctx, "true"); } - if (node->inhRelations != NULL && node->inhRelations->length > 0) { + if (node->listdatums != NULL && node->listdatums->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "inhRelations"); + _fingerprintString(ctx, "listdatums"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->inhRelations, node, "inhRelations", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->inhRelations) == 1 && linitial(node->inhRelations) == NIL)) { + _fingerprintNode(ctx, node->listdatums, node, "listdatums", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->listdatums) == 1 && linitial(node->listdatums) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->ofTypename != NULL) { + // Intentionally ignoring node->location for fingerprinting + + if (node->lowerdatums != NULL && node->lowerdatums->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "ofTypename"); + _fingerprintString(ctx, "lowerdatums"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->ofTypename, node, "ofTypename", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->lowerdatums, node, "lowerdatums", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->lowerdatums) == 1 && linitial(node->lowerdatums) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->modulus != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->modulus); + _fingerprintString(ctx, "modulus"); + _fingerprintString(ctx, buffer); + } - if (true) { - _fingerprintString(ctx, "oncommit"); - _fingerprintString(ctx, _enumToStringOnCommitAction(node->oncommit)); + if (node->remainder != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->remainder); + _fingerprintString(ctx, "remainder"); + _fingerprintString(ctx, buffer); } - if (node->options != NULL && node->options->length > 0) { + if (node->strategy != 0) { + char buffer[2] = {node->strategy, '\0'}; + _fingerprintString(ctx, "strategy"); + _fingerprintString(ctx, buffer); + } + + if (node->upperdatums != NULL && node->upperdatums->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "upperdatums"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->upperdatums, node, "upperdatums", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->upperdatums) == 1 && linitial(node->upperdatums) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->partbound != NULL) { +} + +static void +_fingerprintPartitionRangeDatum(FingerprintContext *ctx, const PartitionRangeDatum *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (true) { + _fingerprintString(ctx, "kind"); + _fingerprintString(ctx, _enumToStringPartitionRangeDatumKind(node->kind)); + } + + // Intentionally ignoring node->location for fingerprinting + + if (node->value != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "partbound"); + _fingerprintString(ctx, "value"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintPartitionBoundSpec(ctx, node->partbound, node, "partbound", depth + 1); + _fingerprintNode(ctx, node->value, node, "value", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5129,15 +5460,20 @@ _fingerprintCreateStmt(FingerprintContext *ctx, const CreateStmt *node, const vo XXH3_freeState(prev); } - if (node->partspec != NULL) { +} + +static void +_fingerprintPartitionCmd(FingerprintContext *ctx, const PartitionCmd *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->bound != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "partspec"); + _fingerprintString(ctx, "bound"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintPartitionSpec(ctx, node->partspec, node, "partspec", depth + 1); + _fingerprintPartitionBoundSpec(ctx, node->bound, node, "bound", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5146,15 +5482,20 @@ _fingerprintCreateStmt(FingerprintContext *ctx, const CreateStmt *node, const vo XXH3_freeState(prev); } - if (node->relation != NULL) { + if (node->concurrent) { + _fingerprintString(ctx, "concurrent"); + _fingerprintString(ctx, "true"); + } + + if (node->name != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "name"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintRangeVar(ctx, node->name, node, "name", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5163,191 +5504,157 @@ _fingerprintCreateStmt(FingerprintContext *ctx, const CreateStmt *node, const vo XXH3_freeState(prev); } - if (node->tableElts != NULL && node->tableElts->length > 0) { +} + +static void +_fingerprintRangeTblEntry(FingerprintContext *ctx, const RangeTblEntry *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->alias != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "tableElts"); + _fingerprintString(ctx, "alias"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->tableElts, node, "tableElts", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->tableElts) == 1 && linitial(node->tableElts) == NIL)) { + _fingerprintAlias(ctx, node->alias, node, "alias", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->tablespacename != NULL) { - _fingerprintString(ctx, "tablespacename"); - _fingerprintString(ctx, node->tablespacename); - } -} - -static void -_fingerprintDefineStmt(FingerprintContext *ctx, const DefineStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->args != NULL && node->args->length > 0) { + if (node->colcollations != NULL && node->colcollations->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "args"); + _fingerprintString(ctx, "colcollations"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->args, node, "args", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { + _fingerprintNode(ctx, node->colcollations, node, "colcollations", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colcollations) == 1 && linitial(node->colcollations) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->definition != NULL && node->definition->length > 0) { + if (node->coltypes != NULL && node->coltypes->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "definition"); + _fingerprintString(ctx, "coltypes"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->definition, node, "definition", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->definition) == 1 && linitial(node->definition) == NIL)) { + _fingerprintNode(ctx, node->coltypes, node, "coltypes", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->coltypes) == 1 && linitial(node->coltypes) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->defnames != NULL && node->defnames->length > 0) { + if (node->coltypmods != NULL && node->coltypmods->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "defnames"); + _fingerprintString(ctx, "coltypmods"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->defnames, node, "defnames", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->defnames) == 1 && linitial(node->defnames) == NIL)) { + _fingerprintNode(ctx, node->coltypmods, node, "coltypmods", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->coltypmods) == 1 && linitial(node->coltypmods) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); - _fingerprintString(ctx, "true"); + if (node->ctelevelsup != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->ctelevelsup); + _fingerprintString(ctx, "ctelevelsup"); + _fingerprintString(ctx, buffer); } - if (true) { - _fingerprintString(ctx, "kind"); - _fingerprintString(ctx, _enumToStringObjectType(node->kind)); + if (node->ctename != NULL) { + _fingerprintString(ctx, "ctename"); + _fingerprintString(ctx, node->ctename); } - if (node->oldstyle) { - _fingerprintString(ctx, "oldstyle"); - _fingerprintString(ctx, "true"); + if (node->enrname != NULL) { + _fingerprintString(ctx, "enrname"); + _fingerprintString(ctx, node->enrname); } - if (node->replace) { - _fingerprintString(ctx, "replace"); - _fingerprintString(ctx, "true"); + if (node->enrtuples != 0) { + char buffer[50]; + sprintf(buffer, "%f", node->enrtuples); + _fingerprintString(ctx, "enrtuples"); + _fingerprintString(ctx, buffer); } -} + if (node->eref != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; -static void -_fingerprintDropStmt(FingerprintContext *ctx, const DropStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "behavior"); - _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); - } - - if (node->concurrent) { - _fingerprintString(ctx, "concurrent"); - _fingerprintString(ctx, "true"); - } - - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); - } - - if (node->objects != NULL && node->objects->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "objects"); + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "eref"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->objects, node, "objects", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objects) == 1 && linitial(node->objects) == NIL)) { + _fingerprintAlias(ctx, node->eref, node, "eref", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "removeType"); - _fingerprintString(ctx, _enumToStringObjectType(node->removeType)); - } - -} -static void -_fingerprintTruncateStmt(FingerprintContext *ctx, const TruncateStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "behavior"); - _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); + if (node->funcordinality) { + _fingerprintString(ctx, "funcordinality"); + _fingerprintString(ctx, "true"); } - if (node->relations != NULL && node->relations->length > 0) { + if (node->functions != NULL && node->functions->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relations"); + _fingerprintString(ctx, "functions"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->relations, node, "relations", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->relations) == 1 && linitial(node->relations) == NIL)) { + _fingerprintNode(ctx, node->functions, node, "functions", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->functions) == 1 && linitial(node->functions) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->restart_seqs) { - _fingerprintString(ctx, "restart_seqs"); + if (node->inFromCl) { + _fingerprintString(ctx, "inFromCl"); _fingerprintString(ctx, "true"); } -} - -static void -_fingerprintCommentStmt(FingerprintContext *ctx, const CommentStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->comment != NULL) { - _fingerprintString(ctx, "comment"); - _fingerprintString(ctx, node->comment); + if (node->inh) { + _fingerprintString(ctx, "inh"); + _fingerprintString(ctx, "true"); } - if (node->object != NULL) { + if (node->join_using_alias != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "object"); + _fingerprintString(ctx, "join_using_alias"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->object, node, "object", depth + 1); + _fingerprintAlias(ctx, node->join_using_alias, node, "join_using_alias", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5356,191 +5663,138 @@ _fingerprintCommentStmt(FingerprintContext *ctx, const CommentStmt *node, const XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "objtype"); - _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); - } - -} - -static void -_fingerprintFetchStmt(FingerprintContext *ctx, const FetchStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "direction"); - _fingerprintString(ctx, _enumToStringFetchDirection(node->direction)); - } - - if (node->howMany != 0) { - char buffer[50]; - sprintf(buffer, "%ld", node->howMany); - _fingerprintString(ctx, "howMany"); - _fingerprintString(ctx, buffer); - } - - if (node->ismove) { - _fingerprintString(ctx, "ismove"); - _fingerprintString(ctx, "true"); - } - - // Intentionally ignoring node->portalname for fingerprinting - -} - -static void -_fingerprintIndexStmt(FingerprintContext *ctx, const IndexStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->accessMethod != NULL) { - _fingerprintString(ctx, "accessMethod"); - _fingerprintString(ctx, node->accessMethod); - } - - if (node->concurrent) { - _fingerprintString(ctx, "concurrent"); - _fingerprintString(ctx, "true"); - } - - if (node->deferrable) { - _fingerprintString(ctx, "deferrable"); - _fingerprintString(ctx, "true"); - } - - if (node->excludeOpNames != NULL && node->excludeOpNames->length > 0) { + if (node->joinaliasvars != NULL && node->joinaliasvars->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "excludeOpNames"); + _fingerprintString(ctx, "joinaliasvars"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->excludeOpNames, node, "excludeOpNames", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->excludeOpNames) == 1 && linitial(node->excludeOpNames) == NIL)) { + _fingerprintNode(ctx, node->joinaliasvars, node, "joinaliasvars", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->joinaliasvars) == 1 && linitial(node->joinaliasvars) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->idxcomment != NULL) { - _fingerprintString(ctx, "idxcomment"); - _fingerprintString(ctx, node->idxcomment); - } - - if (node->idxname != NULL) { - _fingerprintString(ctx, "idxname"); - _fingerprintString(ctx, node->idxname); - } - - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); - _fingerprintString(ctx, "true"); - } - - if (node->indexIncludingParams != NULL && node->indexIncludingParams->length > 0) { + if (node->joinleftcols != NULL && node->joinleftcols->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "indexIncludingParams"); + _fingerprintString(ctx, "joinleftcols"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->indexIncludingParams, node, "indexIncludingParams", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indexIncludingParams) == 1 && linitial(node->indexIncludingParams) == NIL)) { + _fingerprintNode(ctx, node->joinleftcols, node, "joinleftcols", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->joinleftcols) == 1 && linitial(node->joinleftcols) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->indexOid != 0) { + if (node->joinmergedcols != 0) { char buffer[50]; - sprintf(buffer, "%d", node->indexOid); - _fingerprintString(ctx, "indexOid"); + sprintf(buffer, "%d", node->joinmergedcols); + _fingerprintString(ctx, "joinmergedcols"); _fingerprintString(ctx, buffer); } - if (node->indexParams != NULL && node->indexParams->length > 0) { + if (node->joinrightcols != NULL && node->joinrightcols->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "indexParams"); + _fingerprintString(ctx, "joinrightcols"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->indexParams, node, "indexParams", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indexParams) == 1 && linitial(node->indexParams) == NIL)) { + _fingerprintNode(ctx, node->joinrightcols, node, "joinrightcols", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->joinrightcols) == 1 && linitial(node->joinrightcols) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->initdeferred) { - _fingerprintString(ctx, "initdeferred"); - _fingerprintString(ctx, "true"); + if (true) { + _fingerprintString(ctx, "jointype"); + _fingerprintString(ctx, _enumToStringJoinType(node->jointype)); } - if (node->isconstraint) { - _fingerprintString(ctx, "isconstraint"); + if (node->lateral) { + _fingerprintString(ctx, "lateral"); _fingerprintString(ctx, "true"); } - if (node->nulls_not_distinct) { - _fingerprintString(ctx, "nulls_not_distinct"); - _fingerprintString(ctx, "true"); + if (node->perminfoindex != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->perminfoindex); + _fingerprintString(ctx, "perminfoindex"); + _fingerprintString(ctx, buffer); } - if (node->oldCreateSubid != 0) { + if (node->relid != 0) { char buffer[50]; - sprintf(buffer, "%d", node->oldCreateSubid); - _fingerprintString(ctx, "oldCreateSubid"); + sprintf(buffer, "%d", node->relid); + _fingerprintString(ctx, "relid"); _fingerprintString(ctx, buffer); } - if (node->oldFirstRelfilenodeSubid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->oldFirstRelfilenodeSubid); - _fingerprintString(ctx, "oldFirstRelfilenodeSubid"); + if (node->relkind != 0) { + char buffer[2] = {node->relkind, '\0'}; + _fingerprintString(ctx, "relkind"); _fingerprintString(ctx, buffer); } - if (node->oldNode != 0) { + if (node->rellockmode != 0) { char buffer[50]; - sprintf(buffer, "%d", node->oldNode); - _fingerprintString(ctx, "oldNode"); + sprintf(buffer, "%d", node->rellockmode); + _fingerprintString(ctx, "rellockmode"); _fingerprintString(ctx, buffer); } - if (node->options != NULL && node->options->length > 0) { + if (true) { + _fingerprintString(ctx, "rtekind"); + _fingerprintString(ctx, _enumToStringRTEKind(node->rtekind)); + } + + if (node->securityQuals != NULL && node->securityQuals->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "securityQuals"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->securityQuals, node, "securityQuals", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->securityQuals) == 1 && linitial(node->securityQuals) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->primary) { - _fingerprintString(ctx, "primary"); + if (node->security_barrier) { + _fingerprintString(ctx, "security_barrier"); _fingerprintString(ctx, "true"); } - if (node->relation != NULL) { + if (node->self_reference) { + _fingerprintString(ctx, "self_reference"); + _fingerprintString(ctx, "true"); + } + + if (node->subquery != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "subquery"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintQuery(ctx, node->subquery, node, "subquery", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5549,35 +5803,15 @@ _fingerprintIndexStmt(FingerprintContext *ctx, const IndexStmt *node, const void XXH3_freeState(prev); } - if (node->reset_default_tblspc) { - _fingerprintString(ctx, "reset_default_tblspc"); - _fingerprintString(ctx, "true"); - } - - if (node->tableSpace != NULL) { - _fingerprintString(ctx, "tableSpace"); - _fingerprintString(ctx, node->tableSpace); - } - - if (node->transformed) { - _fingerprintString(ctx, "transformed"); - _fingerprintString(ctx, "true"); - } - - if (node->unique) { - _fingerprintString(ctx, "unique"); - _fingerprintString(ctx, "true"); - } - - if (node->whereClause != NULL) { + if (node->tablefunc != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whereClause"); + _fingerprintString(ctx, "tablefunc"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + _fingerprintTableFunc(ctx, node->tablefunc, node, "tablefunc", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5586,185 +5820,200 @@ _fingerprintIndexStmt(FingerprintContext *ctx, const IndexStmt *node, const void XXH3_freeState(prev); } -} - -static void -_fingerprintCreateFunctionStmt(FingerprintContext *ctx, const CreateFunctionStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->funcname != NULL && node->funcname->length > 0) { + if (node->tablesample != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funcname"); + _fingerprintString(ctx, "tablesample"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->funcname, node, "funcname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funcname) == 1 && linitial(node->funcname) == NIL)) { + _fingerprintTableSampleClause(ctx, node->tablesample, node, "tablesample", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->is_procedure) { - _fingerprintString(ctx, "is_procedure"); - _fingerprintString(ctx, "true"); - } - // Intentionally ignoring node->options for fingerprinting - - if (node->parameters != NULL && node->parameters->length > 0) { + if (node->values_lists != NULL && node->values_lists->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "parameters"); + _fingerprintString(ctx, "values_lists"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->parameters, node, "parameters", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->parameters) == 1 && linitial(node->parameters) == NIL)) { + _fingerprintNode(ctx, node->values_lists, node, "values_lists", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->values_lists) == 1 && linitial(node->values_lists) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->replace) { - _fingerprintString(ctx, "replace"); +} + +static void +_fingerprintRTEPermissionInfo(FingerprintContext *ctx, const RTEPermissionInfo *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->checkAsUser != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->checkAsUser); + _fingerprintString(ctx, "checkAsUser"); + _fingerprintString(ctx, buffer); + } + + if (node->inh) { + _fingerprintString(ctx, "inh"); _fingerprintString(ctx, "true"); } - if (node->returnType != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + if (true) { + int x = -1; + Bitmapset *bms = bms_copy(node->insertedCols); - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "returnType"); + _fingerprintString(ctx, "insertedCols"); - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->returnType, node, "returnType", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); + while ((x = bms_next_member(bms, x)) >= 0) { + char buffer[50]; + sprintf(buffer, "%d", x); + _fingerprintString(ctx, buffer); } - XXH3_freeState(prev); + + bms_free(bms); } - if (node->sql_body != NULL) { + if (node->relid != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->relid); + _fingerprintString(ctx, "relid"); + _fingerprintString(ctx, buffer); + } + + if (node->requiredPerms != 0) { + char buffer[50]; + sprintf(buffer, "%ld", node->requiredPerms); + _fingerprintString(ctx, "requiredPerms"); + _fingerprintString(ctx, buffer); + } + + if (true) { + int x = -1; + Bitmapset *bms = bms_copy(node->selectedCols); + + _fingerprintString(ctx, "selectedCols"); + + while ((x = bms_next_member(bms, x)) >= 0) { + char buffer[50]; + sprintf(buffer, "%d", x); + _fingerprintString(ctx, buffer); + } + + bms_free(bms); + } + + if (true) { + int x = -1; + Bitmapset *bms = bms_copy(node->updatedCols); + + _fingerprintString(ctx, "updatedCols"); + + while ((x = bms_next_member(bms, x)) >= 0) { + char buffer[50]; + sprintf(buffer, "%d", x); + _fingerprintString(ctx, buffer); + } + + bms_free(bms); + } + +} + +static void +_fingerprintRangeTblFunction(FingerprintContext *ctx, const RangeTblFunction *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->funccolcollations != NULL && node->funccolcollations->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "sql_body"); + _fingerprintString(ctx, "funccolcollations"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->sql_body, node, "sql_body", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->funccolcollations, node, "funccolcollations", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funccolcollations) == 1 && linitial(node->funccolcollations) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->funccolcount != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->funccolcount); + _fingerprintString(ctx, "funccolcount"); + _fingerprintString(ctx, buffer); + } -} - -static void -_fingerprintAlterFunctionStmt(FingerprintContext *ctx, const AlterFunctionStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->actions != NULL && node->actions->length > 0) { + if (node->funccolnames != NULL && node->funccolnames->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "actions"); + _fingerprintString(ctx, "funccolnames"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->actions, node, "actions", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->actions) == 1 && linitial(node->actions) == NIL)) { + _fingerprintNode(ctx, node->funccolnames, node, "funccolnames", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funccolnames) == 1 && linitial(node->funccolnames) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->func != NULL) { + if (node->funccoltypes != NULL && node->funccoltypes->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "func"); + _fingerprintString(ctx, "funccoltypes"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintObjectWithArgs(ctx, node->func, node, "func", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->funccoltypes, node, "funccoltypes", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funccoltypes) == 1 && linitial(node->funccoltypes) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (true) { - _fingerprintString(ctx, "objtype"); - _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); - } - -} - -static void -_fingerprintDoStmt(FingerprintContext *ctx, const DoStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - // Intentionally ignoring node->args for fingerprinting - -} - -static void -_fingerprintRenameStmt(FingerprintContext *ctx, const RenameStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "behavior"); - _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); - } - - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); - } - - if (node->newname != NULL) { - _fingerprintString(ctx, "newname"); - _fingerprintString(ctx, node->newname); - } - - if (node->object != NULL) { + if (node->funccoltypmods != NULL && node->funccoltypmods->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "object"); + _fingerprintString(ctx, "funccoltypmods"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->object, node, "object", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->funccoltypmods, node, "funccoltypmods", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funccoltypmods) == 1 && linitial(node->funccoltypmods) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->relation != NULL) { + if (node->funcexpr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "funcexpr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintNode(ctx, node->funcexpr, node, "funcexpr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5774,60 +6023,50 @@ _fingerprintRenameStmt(FingerprintContext *ctx, const RenameStmt *node, const vo } if (true) { - _fingerprintString(ctx, "relationType"); - _fingerprintString(ctx, _enumToStringObjectType(node->relationType)); - } + int x = -1; + Bitmapset *bms = bms_copy(node->funcparams); - if (true) { - _fingerprintString(ctx, "renameType"); - _fingerprintString(ctx, _enumToStringObjectType(node->renameType)); - } + _fingerprintString(ctx, "funcparams"); - if (node->subname != NULL) { - _fingerprintString(ctx, "subname"); - _fingerprintString(ctx, node->subname); + while ((x = bms_next_member(bms, x)) >= 0) { + char buffer[50]; + sprintf(buffer, "%d", x); + _fingerprintString(ctx, buffer); + } + + bms_free(bms); } } static void -_fingerprintRuleStmt(FingerprintContext *ctx, const RuleStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintTableSampleClause(FingerprintContext *ctx, const TableSampleClause *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->actions != NULL && node->actions->length > 0) { + if (node->args != NULL && node->args->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "actions"); + _fingerprintString(ctx, "args"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->actions, node, "actions", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->actions) == 1 && linitial(node->actions) == NIL)) { + _fingerprintNode(ctx, node->args, node, "args", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "event"); - _fingerprintString(ctx, _enumToStringCmdType(node->event)); - } - - if (node->instead) { - _fingerprintString(ctx, "instead"); - _fingerprintString(ctx, "true"); - } - - if (node->relation != NULL) { + if (node->repeatable != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "repeatable"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintNode(ctx, node->repeatable, node, "repeatable", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5836,25 +6075,42 @@ _fingerprintRuleStmt(FingerprintContext *ctx, const RuleStmt *node, const void * XXH3_freeState(prev); } - if (node->replace) { - _fingerprintString(ctx, "replace"); + if (node->tsmhandler != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->tsmhandler); + _fingerprintString(ctx, "tsmhandler"); + _fingerprintString(ctx, buffer); + } + +} + +static void +_fingerprintWithCheckOption(FingerprintContext *ctx, const WithCheckOption *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->cascaded) { + _fingerprintString(ctx, "cascaded"); _fingerprintString(ctx, "true"); } - if (node->rulename != NULL) { - _fingerprintString(ctx, "rulename"); - _fingerprintString(ctx, node->rulename); + if (true) { + _fingerprintString(ctx, "kind"); + _fingerprintString(ctx, _enumToStringWCOKind(node->kind)); } - if (node->whereClause != NULL) { + if (node->polname != NULL) { + _fingerprintString(ctx, "polname"); + _fingerprintString(ctx, node->polname); + } + + if (node->qual != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whereClause"); + _fingerprintString(ctx, "qual"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + _fingerprintNode(ctx, node->qual, node, "qual", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5863,121 +6119,207 @@ _fingerprintRuleStmt(FingerprintContext *ctx, const RuleStmt *node, const void * XXH3_freeState(prev); } + if (node->relname != NULL) { + _fingerprintString(ctx, "relname"); + _fingerprintString(ctx, node->relname); + } + } static void -_fingerprintNotifyStmt(FingerprintContext *ctx, const NotifyStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintSortGroupClause(FingerprintContext *ctx, const SortGroupClause *node, const void *parent, const char *field_name, unsigned int depth) { - // Intentionally ignoring node->conditionname for fingerprinting + if (node->eqop != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->eqop); + _fingerprintString(ctx, "eqop"); + _fingerprintString(ctx, buffer); + } - if (node->payload != NULL) { - _fingerprintString(ctx, "payload"); - _fingerprintString(ctx, node->payload); + if (node->hashable) { + _fingerprintString(ctx, "hashable"); + _fingerprintString(ctx, "true"); } -} + if (node->nulls_first) { + _fingerprintString(ctx, "nulls_first"); + _fingerprintString(ctx, "true"); + } -static void -_fingerprintListenStmt(FingerprintContext *ctx, const ListenStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - // Intentionally ignoring node->conditionname for fingerprinting + if (node->sortop != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->sortop); + _fingerprintString(ctx, "sortop"); + _fingerprintString(ctx, buffer); + } + + if (node->tleSortGroupRef != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->tleSortGroupRef); + _fingerprintString(ctx, "tleSortGroupRef"); + _fingerprintString(ctx, buffer); + } } static void -_fingerprintUnlistenStmt(FingerprintContext *ctx, const UnlistenStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintGroupingSet(FingerprintContext *ctx, const GroupingSet *node, const void *parent, const char *field_name, unsigned int depth) { - // Intentionally ignoring node->conditionname for fingerprinting + if (node->content != NULL && node->content->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "content"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->content, node, "content", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->content) == 1 && linitial(node->content) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (true) { + _fingerprintString(ctx, "kind"); + _fingerprintString(ctx, _enumToStringGroupingSetKind(node->kind)); + } + + // Intentionally ignoring node->location for fingerprinting } static void -_fingerprintTransactionStmt(FingerprintContext *ctx, const TransactionStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintWindowClause(FingerprintContext *ctx, const WindowClause *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->chain) { - _fingerprintString(ctx, "chain"); + if (node->copiedOrder) { + _fingerprintString(ctx, "copiedOrder"); _fingerprintString(ctx, "true"); } - // Intentionally ignoring node->gid for fingerprinting + if (node->endInRangeFunc != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->endInRangeFunc); + _fingerprintString(ctx, "endInRangeFunc"); + _fingerprintString(ctx, buffer); + } - if (true) { - _fingerprintString(ctx, "kind"); - _fingerprintString(ctx, _enumToStringTransactionStmtKind(node->kind)); + if (node->endOffset != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "endOffset"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->endOffset, node, "endOffset", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } - // Intentionally ignoring node->options for fingerprinting + if (node->frameOptions != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->frameOptions); + _fingerprintString(ctx, "frameOptions"); + _fingerprintString(ctx, buffer); + } - // Intentionally ignoring node->savepoint_name for fingerprinting + if (node->inRangeAsc) { + _fingerprintString(ctx, "inRangeAsc"); + _fingerprintString(ctx, "true"); + } -} + if (node->inRangeColl != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->inRangeColl); + _fingerprintString(ctx, "inRangeColl"); + _fingerprintString(ctx, buffer); + } -static void -_fingerprintViewStmt(FingerprintContext *ctx, const ViewStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->aliases != NULL && node->aliases->length > 0) { + if (node->inRangeNullsFirst) { + _fingerprintString(ctx, "inRangeNullsFirst"); + _fingerprintString(ctx, "true"); + } + + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); + } + + if (node->orderClause != NULL && node->orderClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "aliases"); + _fingerprintString(ctx, "orderClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->aliases, node, "aliases", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->aliases) == 1 && linitial(node->aliases) == NIL)) { + _fingerprintNode(ctx, node->orderClause, node, "orderClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->orderClause) == 1 && linitial(node->orderClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->options != NULL && node->options->length > 0) { + if (node->partitionClause != NULL && node->partitionClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "partitionClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->partitionClause, node, "partitionClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->partitionClause) == 1 && linitial(node->partitionClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->query != NULL) { + if (node->refname != NULL) { + _fingerprintString(ctx, "refname"); + _fingerprintString(ctx, node->refname); + } + + if (node->runCondition != NULL && node->runCondition->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "query"); + _fingerprintString(ctx, "runCondition"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->query, node, "query", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->runCondition, node, "runCondition", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->runCondition) == 1 && linitial(node->runCondition) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->replace) { - _fingerprintString(ctx, "replace"); - _fingerprintString(ctx, "true"); + if (node->startInRangeFunc != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->startInRangeFunc); + _fingerprintString(ctx, "startInRangeFunc"); + _fingerprintString(ctx, buffer); } - if (node->view != NULL) { + if (node->startOffset != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "view"); + _fingerprintString(ctx, "startOffset"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->view, node, "view", depth + 1); + _fingerprintNode(ctx, node->startOffset, node, "startOffset", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -5986,84 +6328,105 @@ _fingerprintViewStmt(FingerprintContext *ctx, const ViewStmt *node, const void * XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "withCheckOption"); - _fingerprintString(ctx, _enumToStringViewCheckOption(node->withCheckOption)); + if (node->winref != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->winref); + _fingerprintString(ctx, "winref"); + _fingerprintString(ctx, buffer); } } static void -_fingerprintLoadStmt(FingerprintContext *ctx, const LoadStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintRowMarkClause(FingerprintContext *ctx, const RowMarkClause *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->filename != NULL) { - _fingerprintString(ctx, "filename"); - _fingerprintString(ctx, node->filename); + if (node->pushedDown) { + _fingerprintString(ctx, "pushedDown"); + _fingerprintString(ctx, "true"); + } + + if (node->rti != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->rti); + _fingerprintString(ctx, "rti"); + _fingerprintString(ctx, buffer); + } + + if (true) { + _fingerprintString(ctx, "strength"); + _fingerprintString(ctx, _enumToStringLockClauseStrength(node->strength)); + } + + if (true) { + _fingerprintString(ctx, "waitPolicy"); + _fingerprintString(ctx, _enumToStringLockWaitPolicy(node->waitPolicy)); } } static void -_fingerprintCreateDomainStmt(FingerprintContext *ctx, const CreateDomainStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintWithClause(FingerprintContext *ctx, const WithClause *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->collClause != NULL) { + if (node->ctes != NULL && node->ctes->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "collClause"); + _fingerprintString(ctx, "ctes"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintCollateClause(ctx, node->collClause, node, "collClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->ctes, node, "ctes", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctes) == 1 && linitial(node->ctes) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + // Intentionally ignoring node->location for fingerprinting - if (node->constraints != NULL && node->constraints->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + if (node->recursive) { + _fingerprintString(ctx, "recursive"); + _fingerprintString(ctx, "true"); + } - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "constraints"); +} - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->constraints, node, "constraints", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->constraints) == 1 && linitial(node->constraints) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); +static void +_fingerprintInferClause(FingerprintContext *ctx, const InferClause *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->conname != NULL) { + _fingerprintString(ctx, "conname"); + _fingerprintString(ctx, node->conname); } - if (node->domainname != NULL && node->domainname->length > 0) { + + if (node->indexElems != NULL && node->indexElems->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "domainname"); + _fingerprintString(ctx, "indexElems"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->domainname, node, "domainname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->domainname) == 1 && linitial(node->domainname) == NIL)) { + _fingerprintNode(ctx, node->indexElems, node, "indexElems", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indexElems) == 1 && linitial(node->indexElems) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->typeName != NULL) { + // Intentionally ignoring node->location for fingerprinting + + if (node->whereClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typeName"); + _fingerprintString(ctx, "whereClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); + _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -6075,132 +6438,140 @@ _fingerprintCreateDomainStmt(FingerprintContext *ctx, const CreateDomainStmt *no } static void -_fingerprintCreatedbStmt(FingerprintContext *ctx, const CreatedbStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintOnConflictClause(FingerprintContext *ctx, const OnConflictClause *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->dbname != NULL) { - _fingerprintString(ctx, "dbname"); - _fingerprintString(ctx, node->dbname); + if (true) { + _fingerprintString(ctx, "action"); + _fingerprintString(ctx, _enumToStringOnConflictAction(node->action)); } - if (node->options != NULL && node->options->length > 0) { + if (node->infer != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "infer"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintInferClause(ctx, node->infer, node, "infer", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintDropdbStmt(FingerprintContext *ctx, const DropdbStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->dbname != NULL) { - _fingerprintString(ctx, "dbname"); - _fingerprintString(ctx, node->dbname); - } - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); - } + // Intentionally ignoring node->location for fingerprinting - if (node->options != NULL && node->options->length > 0) { + if (node->targetList != NULL && node->targetList->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "targetList"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintVacuumStmt(FingerprintContext *ctx, const VacuumStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->is_vacuumcmd) { - _fingerprintString(ctx, "is_vacuumcmd"); - _fingerprintString(ctx, "true"); - } - - if (node->options != NULL && node->options->length > 0) { + if (node->whereClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "whereClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->rels != NULL && node->rels->length > 0) { + +} + +static void +_fingerprintCTESearchClause(FingerprintContext *ctx, const CTESearchClause *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring node->location for fingerprinting + + if (node->search_breadth_first) { + _fingerprintString(ctx, "search_breadth_first"); + _fingerprintString(ctx, "true"); + } + + if (node->search_col_list != NULL && node->search_col_list->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "rels"); + _fingerprintString(ctx, "search_col_list"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->rels, node, "rels", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->rels) == 1 && linitial(node->rels) == NIL)) { + _fingerprintNode(ctx, node->search_col_list, node, "search_col_list", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->search_col_list) == 1 && linitial(node->search_col_list) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->search_seq_column != NULL) { + _fingerprintString(ctx, "search_seq_column"); + _fingerprintString(ctx, node->search_seq_column); + } + } static void -_fingerprintExplainStmt(FingerprintContext *ctx, const ExplainStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCTECycleClause(FingerprintContext *ctx, const CTECycleClause *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->options != NULL && node->options->length > 0) { + if (node->cycle_col_list != NULL && node->cycle_col_list->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "cycle_col_list"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->cycle_col_list, node, "cycle_col_list", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cycle_col_list) == 1 && linitial(node->cycle_col_list) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->query != NULL) { + if (node->cycle_mark_collation != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->cycle_mark_collation); + _fingerprintString(ctx, "cycle_mark_collation"); + _fingerprintString(ctx, buffer); + } + + if (node->cycle_mark_column != NULL) { + _fingerprintString(ctx, "cycle_mark_column"); + _fingerprintString(ctx, node->cycle_mark_column); + } + + if (node->cycle_mark_default != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "query"); + _fingerprintString(ctx, "cycle_mark_default"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->query, node, "query", depth + 1); + _fingerprintNode(ctx, node->cycle_mark_default, node, "cycle_mark_default", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -6209,25 +6580,36 @@ _fingerprintExplainStmt(FingerprintContext *ctx, const ExplainStmt *node, const XXH3_freeState(prev); } -} + if (node->cycle_mark_neop != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->cycle_mark_neop); + _fingerprintString(ctx, "cycle_mark_neop"); + _fingerprintString(ctx, buffer); + } -static void -_fingerprintCreateTableAsStmt(FingerprintContext *ctx, const CreateTableAsStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); - _fingerprintString(ctx, "true"); + if (node->cycle_mark_type != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->cycle_mark_type); + _fingerprintString(ctx, "cycle_mark_type"); + _fingerprintString(ctx, buffer); } - if (node->into != NULL) { + if (node->cycle_mark_typmod != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->cycle_mark_typmod); + _fingerprintString(ctx, "cycle_mark_typmod"); + _fingerprintString(ctx, buffer); + } + + if (node->cycle_mark_value != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "into"); + _fingerprintString(ctx, "cycle_mark_value"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintIntoClause(ctx, node->into, node, "into", depth + 1); + _fingerprintNode(ctx, node->cycle_mark_value, node, "cycle_mark_value", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -6236,348 +6618,362 @@ _fingerprintCreateTableAsStmt(FingerprintContext *ctx, const CreateTableAsStmt * XXH3_freeState(prev); } - if (node->is_select_into) { - _fingerprintString(ctx, "is_select_into"); - _fingerprintString(ctx, "true"); + if (node->cycle_path_column != NULL) { + _fingerprintString(ctx, "cycle_path_column"); + _fingerprintString(ctx, node->cycle_path_column); } - if (true) { - _fingerprintString(ctx, "objtype"); - _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); - } + // Intentionally ignoring node->location for fingerprinting - if (node->query != NULL) { +} + +static void +_fingerprintCommonTableExpr(FingerprintContext *ctx, const CommonTableExpr *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->aliascolnames != NULL && node->aliascolnames->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "query"); + _fingerprintString(ctx, "aliascolnames"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->query, node, "query", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->aliascolnames, node, "aliascolnames", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->aliascolnames) == 1 && linitial(node->aliascolnames) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - -} - -static void -_fingerprintCreateSeqStmt(FingerprintContext *ctx, const CreateSeqStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->for_identity) { - _fingerprintString(ctx, "for_identity"); - _fingerprintString(ctx, "true"); - } - - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); - _fingerprintString(ctx, "true"); - } - - if (node->options != NULL && node->options->length > 0) { + if (node->ctecolcollations != NULL && node->ctecolcollations->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "ctecolcollations"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->ctecolcollations, node, "ctecolcollations", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctecolcollations) == 1 && linitial(node->ctecolcollations) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->ownerId != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->ownerId); - _fingerprintString(ctx, "ownerId"); - _fingerprintString(ctx, buffer); - } - - if (node->sequence != NULL) { + if (node->ctecolnames != NULL && node->ctecolnames->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "sequence"); + _fingerprintString(ctx, "ctecolnames"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->sequence, node, "sequence", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->ctecolnames, node, "ctecolnames", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctecolnames) == 1 && linitial(node->ctecolnames) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - -} - -static void -_fingerprintAlterSeqStmt(FingerprintContext *ctx, const AlterSeqStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->for_identity) { - _fingerprintString(ctx, "for_identity"); - _fingerprintString(ctx, "true"); - } - - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); - } - - if (node->options != NULL && node->options->length > 0) { + if (node->ctecoltypes != NULL && node->ctecoltypes->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "ctecoltypes"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->ctecoltypes, node, "ctecoltypes", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctecoltypes) == 1 && linitial(node->ctecoltypes) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->sequence != NULL) { + if (node->ctecoltypmods != NULL && node->ctecoltypmods->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "sequence"); + _fingerprintString(ctx, "ctecoltypmods"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->sequence, node, "sequence", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->ctecoltypmods, node, "ctecoltypmods", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctecoltypmods) == 1 && linitial(node->ctecoltypmods) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (true) { + _fingerprintString(ctx, "ctematerialized"); + _fingerprintString(ctx, _enumToStringCTEMaterialize(node->ctematerialized)); + } -} + if (node->ctename != NULL) { + _fingerprintString(ctx, "ctename"); + _fingerprintString(ctx, node->ctename); + } -static void -_fingerprintVariableSetStmt(FingerprintContext *ctx, const VariableSetStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->args != NULL && node->args->length > 0) { + if (node->ctequery != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "args"); + _fingerprintString(ctx, "ctequery"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->args, node, "args", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { + _fingerprintNode(ctx, node->ctequery, node, "ctequery", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->is_local) { - _fingerprintString(ctx, "is_local"); - _fingerprintString(ctx, "true"); - } - if (true) { - _fingerprintString(ctx, "kind"); - _fingerprintString(ctx, _enumToStringVariableSetKind(node->kind)); + if (node->cterecursive) { + _fingerprintString(ctx, "cterecursive"); + _fingerprintString(ctx, "true"); } - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); + if (node->cterefcount != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->cterefcount); + _fingerprintString(ctx, "cterefcount"); + _fingerprintString(ctx, buffer); } -} + if (node->cycle_clause != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; -static void -_fingerprintVariableShowStmt(FingerprintContext *ctx, const VariableShowStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "cycle_clause"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintCTECycleClause(ctx, node->cycle_clause, node, "cycle_clause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } -} + // Intentionally ignoring node->location for fingerprinting -static void -_fingerprintDiscardStmt(FingerprintContext *ctx, const DiscardStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "target"); - _fingerprintString(ctx, _enumToStringDiscardMode(node->target)); + if (node->search_clause != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "search_clause"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintCTESearchClause(ctx, node->search_clause, node, "search_clause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } } static void -_fingerprintCreateTrigStmt(FingerprintContext *ctx, const CreateTrigStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintMergeWhenClause(FingerprintContext *ctx, const MergeWhenClause *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->args != NULL && node->args->length > 0) { + if (true) { + _fingerprintString(ctx, "commandType"); + _fingerprintString(ctx, _enumToStringCmdType(node->commandType)); + } + + if (node->condition != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "args"); + _fingerprintString(ctx, "condition"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->args, node, "args", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { + _fingerprintNode(ctx, node->condition, node, "condition", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->columns != NULL && node->columns->length > 0) { + + if (node->matched) { + _fingerprintString(ctx, "matched"); + _fingerprintString(ctx, "true"); + } + + if (true) { + _fingerprintString(ctx, "override"); + _fingerprintString(ctx, _enumToStringOverridingKind(node->override)); + } + + if (node->targetList != NULL && node->targetList->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "columns"); + _fingerprintString(ctx, "targetList"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->columns, node, "columns", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->columns) == 1 && linitial(node->columns) == NIL)) { + _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->constrrel != NULL) { + if (node->values != NULL && node->values->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "constrrel"); + _fingerprintString(ctx, "values"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->constrrel, node, "constrrel", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->values, node, "values", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->values) == 1 && linitial(node->values) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->deferrable) { - _fingerprintString(ctx, "deferrable"); +static void +_fingerprintMergeAction(FingerprintContext *ctx, const MergeAction *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (true) { + _fingerprintString(ctx, "commandType"); + _fingerprintString(ctx, _enumToStringCmdType(node->commandType)); + } + + if (node->matched) { + _fingerprintString(ctx, "matched"); _fingerprintString(ctx, "true"); } - if (node->events != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->events); - _fingerprintString(ctx, "events"); - _fingerprintString(ctx, buffer); + if (true) { + _fingerprintString(ctx, "override"); + _fingerprintString(ctx, _enumToStringOverridingKind(node->override)); } - if (node->funcname != NULL && node->funcname->length > 0) { + if (node->qual != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funcname"); + _fingerprintString(ctx, "qual"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->funcname, node, "funcname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funcname) == 1 && linitial(node->funcname) == NIL)) { + _fingerprintNode(ctx, node->qual, node, "qual", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->initdeferred) { - _fingerprintString(ctx, "initdeferred"); - _fingerprintString(ctx, "true"); - } - if (node->isconstraint) { - _fingerprintString(ctx, "isconstraint"); - _fingerprintString(ctx, "true"); - } + if (node->targetList != NULL && node->targetList->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; - if (node->relation != NULL) { + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "targetList"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->updateColnos != NULL && node->updateColnos->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "updateColnos"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->updateColnos, node, "updateColnos", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->updateColnos) == 1 && linitial(node->updateColnos) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->replace) { - _fingerprintString(ctx, "replace"); +static void +_fingerprintTriggerTransition(FingerprintContext *ctx, const TriggerTransition *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->isNew) { + _fingerprintString(ctx, "isNew"); _fingerprintString(ctx, "true"); } - if (node->row) { - _fingerprintString(ctx, "row"); + if (node->isTable) { + _fingerprintString(ctx, "isTable"); _fingerprintString(ctx, "true"); } - if (node->timing != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->timing); - _fingerprintString(ctx, "timing"); - _fingerprintString(ctx, buffer); + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } - if (node->transitionRels != NULL && node->transitionRels->length > 0) { +} + +static void +_fingerprintJsonOutput(FingerprintContext *ctx, const JsonOutput *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->returning != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "transitionRels"); + _fingerprintString(ctx, "returning"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->transitionRels, node, "transitionRels", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->transitionRels) == 1 && linitial(node->transitionRels) == NIL)) { + _fingerprintJsonReturning(ctx, node->returning, node, "returning", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->trigname != NULL) { - _fingerprintString(ctx, "trigname"); - _fingerprintString(ctx, node->trigname); - } - if (node->whenClause != NULL) { + if (node->typeName != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whenClause"); + _fingerprintString(ctx, "typeName"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whenClause, node, "whenClause", depth + 1); + _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -6589,139 +6985,129 @@ _fingerprintCreateTrigStmt(FingerprintContext *ctx, const CreateTrigStmt *node, } static void -_fingerprintCreatePLangStmt(FingerprintContext *ctx, const CreatePLangStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintJsonKeyValue(FingerprintContext *ctx, const JsonKeyValue *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->plhandler != NULL && node->plhandler->length > 0) { + if (node->key != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "plhandler"); + _fingerprintString(ctx, "key"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->plhandler, node, "plhandler", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->plhandler) == 1 && linitial(node->plhandler) == NIL)) { + _fingerprintNode(ctx, node->key, node, "key", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->plinline != NULL && node->plinline->length > 0) { + + if (node->value != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "plinline"); + _fingerprintString(ctx, "value"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->plinline, node, "plinline", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->plinline) == 1 && linitial(node->plinline) == NIL)) { + _fingerprintJsonValueExpr(ctx, node->value, node, "value", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->plname != NULL) { - _fingerprintString(ctx, "plname"); - _fingerprintString(ctx, node->plname); - } - if (node->pltrusted) { - _fingerprintString(ctx, "pltrusted"); +} + +static void +_fingerprintJsonObjectConstructor(FingerprintContext *ctx, const JsonObjectConstructor *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->absent_on_null) { + _fingerprintString(ctx, "absent_on_null"); _fingerprintString(ctx, "true"); } - if (node->plvalidator != NULL && node->plvalidator->length > 0) { + if (node->exprs != NULL && node->exprs->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "plvalidator"); + _fingerprintString(ctx, "exprs"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->plvalidator, node, "plvalidator", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->plvalidator) == 1 && linitial(node->plvalidator) == NIL)) { + _fingerprintNode(ctx, node->exprs, node, "exprs", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->exprs) == 1 && linitial(node->exprs) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->replace) { - _fingerprintString(ctx, "replace"); - _fingerprintString(ctx, "true"); - } - -} + // Intentionally ignoring node->location for fingerprinting -static void -_fingerprintCreateRoleStmt(FingerprintContext *ctx, const CreateRoleStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->options != NULL && node->options->length > 0) { + if (node->output != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "output"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintJsonOutput(ctx, node->output, node, "output", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->role != NULL) { - _fingerprintString(ctx, "role"); - _fingerprintString(ctx, node->role); - } - if (true) { - _fingerprintString(ctx, "stmt_type"); - _fingerprintString(ctx, _enumToStringRoleStmtType(node->stmt_type)); + if (node->unique) { + _fingerprintString(ctx, "unique"); + _fingerprintString(ctx, "true"); } } static void -_fingerprintAlterRoleStmt(FingerprintContext *ctx, const AlterRoleStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintJsonArrayConstructor(FingerprintContext *ctx, const JsonArrayConstructor *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->action != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->action); - _fingerprintString(ctx, "action"); - _fingerprintString(ctx, buffer); + if (node->absent_on_null) { + _fingerprintString(ctx, "absent_on_null"); + _fingerprintString(ctx, "true"); } - if (node->options != NULL && node->options->length > 0) { + if (node->exprs != NULL && node->exprs->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "exprs"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->exprs, node, "exprs", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->exprs) == 1 && linitial(node->exprs) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->role != NULL) { + // Intentionally ignoring node->location for fingerprinting + + if (node->output != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "role"); + _fingerprintString(ctx, "output"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->role, node, "role", depth + 1); + _fingerprintJsonOutput(ctx, node->output, node, "output", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -6733,155 +7119,115 @@ _fingerprintAlterRoleStmt(FingerprintContext *ctx, const AlterRoleStmt *node, co } static void -_fingerprintDropRoleStmt(FingerprintContext *ctx, const DropRoleStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintJsonArrayQueryConstructor(FingerprintContext *ctx, const JsonArrayQueryConstructor *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); + if (node->absent_on_null) { + _fingerprintString(ctx, "absent_on_null"); _fingerprintString(ctx, "true"); } - if (node->roles != NULL && node->roles->length > 0) { + if (node->format != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "roles"); + _fingerprintString(ctx, "format"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { + _fingerprintJsonFormat(ctx, node->format, node, "format", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintLockStmt(FingerprintContext *ctx, const LockStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->mode != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->mode); - _fingerprintString(ctx, "mode"); - _fingerprintString(ctx, buffer); - } - if (node->nowait) { - _fingerprintString(ctx, "nowait"); - _fingerprintString(ctx, "true"); - } + // Intentionally ignoring node->location for fingerprinting - if (node->relations != NULL && node->relations->length > 0) { + if (node->output != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relations"); + _fingerprintString(ctx, "output"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->relations, node, "relations", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->relations) == 1 && linitial(node->relations) == NIL)) { + _fingerprintJsonOutput(ctx, node->output, node, "output", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintConstraintsSetStmt(FingerprintContext *ctx, const ConstraintsSetStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->constraints != NULL && node->constraints->length > 0) { + if (node->query != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "constraints"); + _fingerprintString(ctx, "query"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->constraints, node, "constraints", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->constraints) == 1 && linitial(node->constraints) == NIL)) { + _fingerprintNode(ctx, node->query, node, "query", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->deferred) { - _fingerprintString(ctx, "deferred"); - _fingerprintString(ctx, "true"); - } } static void -_fingerprintReindexStmt(FingerprintContext *ctx, const ReindexStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintJsonAggConstructor(FingerprintContext *ctx, const JsonAggConstructor *node, const void *parent, const char *field_name, unsigned int depth) { - if (true) { - _fingerprintString(ctx, "kind"); - _fingerprintString(ctx, _enumToStringReindexObjectType(node->kind)); - } - - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } - - if (node->params != NULL && node->params->length > 0) { + if (node->agg_filter != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "params"); + _fingerprintString(ctx, "agg_filter"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->params, node, "params", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->params) == 1 && linitial(node->params) == NIL)) { + _fingerprintNode(ctx, node->agg_filter, node, "agg_filter", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->relation != NULL) { + + if (node->agg_order != NULL && node->agg_order->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "agg_order"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->agg_order, node, "agg_order", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->agg_order) == 1 && linitial(node->agg_order) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + // Intentionally ignoring node->location for fingerprinting -} - -static void -_fingerprintCheckPointStmt(FingerprintContext *ctx, const CheckPointStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ -} - -static void -_fingerprintCreateSchemaStmt(FingerprintContext *ctx, const CreateSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->authrole != NULL) { + if (node->output != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "authrole"); + _fingerprintString(ctx, "output"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->authrole, node, "authrole", depth + 1); + _fingerprintJsonOutput(ctx, node->output, node, "output", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -6890,87 +7236,59 @@ _fingerprintCreateSchemaStmt(FingerprintContext *ctx, const CreateSchemaStmt *no XXH3_freeState(prev); } - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); - _fingerprintString(ctx, "true"); - } - - if (node->schemaElts != NULL && node->schemaElts->length > 0) { + if (node->over != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "schemaElts"); + _fingerprintString(ctx, "over"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->schemaElts, node, "schemaElts", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->schemaElts) == 1 && linitial(node->schemaElts) == NIL)) { + _fingerprintWindowDef(ctx, node->over, node, "over", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->schemaname != NULL) { - _fingerprintString(ctx, "schemaname"); - _fingerprintString(ctx, node->schemaname); - } } static void -_fingerprintAlterDatabaseStmt(FingerprintContext *ctx, const AlterDatabaseStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintJsonObjectAgg(FingerprintContext *ctx, const JsonObjectAgg *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->dbname != NULL) { - _fingerprintString(ctx, "dbname"); - _fingerprintString(ctx, node->dbname); + if (node->absent_on_null) { + _fingerprintString(ctx, "absent_on_null"); + _fingerprintString(ctx, "true"); } - if (node->options != NULL && node->options->length > 0) { + if (node->arg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "arg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintJsonKeyValue(ctx, node->arg, node, "arg", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintAlterDatabaseRefreshCollStmt(FingerprintContext *ctx, const AlterDatabaseRefreshCollStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->dbname != NULL) { - _fingerprintString(ctx, "dbname"); - _fingerprintString(ctx, node->dbname); - } - -} - -static void -_fingerprintAlterDatabaseSetStmt(FingerprintContext *ctx, const AlterDatabaseSetStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->dbname != NULL) { - _fingerprintString(ctx, "dbname"); - _fingerprintString(ctx, node->dbname); - } - if (node->setstmt != NULL) { + if (node->constructor != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "setstmt"); + _fingerprintString(ctx, "constructor"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintVariableSetStmt(ctx, node->setstmt, node, "setstmt", depth + 1); + _fingerprintJsonAggConstructor(ctx, node->constructor, node, "constructor", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -6979,25 +7297,30 @@ _fingerprintAlterDatabaseSetStmt(FingerprintContext *ctx, const AlterDatabaseSet XXH3_freeState(prev); } + if (node->unique) { + _fingerprintString(ctx, "unique"); + _fingerprintString(ctx, "true"); + } + } static void -_fingerprintAlterRoleSetStmt(FingerprintContext *ctx, const AlterRoleSetStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintJsonArrayAgg(FingerprintContext *ctx, const JsonArrayAgg *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->database != NULL) { - _fingerprintString(ctx, "database"); - _fingerprintString(ctx, node->database); + if (node->absent_on_null) { + _fingerprintString(ctx, "absent_on_null"); + _fingerprintString(ctx, "true"); } - if (node->role != NULL) { + if (node->arg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "role"); + _fingerprintString(ctx, "arg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->role, node, "role", depth + 1); + _fingerprintJsonValueExpr(ctx, node->arg, node, "arg", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7006,15 +7329,15 @@ _fingerprintAlterRoleSetStmt(FingerprintContext *ctx, const AlterRoleSetStmt *no XXH3_freeState(prev); } - if (node->setstmt != NULL) { + if (node->constructor != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "setstmt"); + _fingerprintString(ctx, "constructor"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintVariableSetStmt(ctx, node->setstmt, node, "setstmt", depth + 1); + _fingerprintJsonAggConstructor(ctx, node->constructor, node, "constructor", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7026,74 +7349,59 @@ _fingerprintAlterRoleSetStmt(FingerprintContext *ctx, const AlterRoleSetStmt *no } static void -_fingerprintCreateConversionStmt(FingerprintContext *ctx, const CreateConversionStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintRawStmt(FingerprintContext *ctx, const RawStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->conversion_name != NULL && node->conversion_name->length > 0) { + if (node->stmt != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "conversion_name"); + _fingerprintString(ctx, "stmt"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->conversion_name, node, "conversion_name", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->conversion_name) == 1 && linitial(node->conversion_name) == NIL)) { + _fingerprintNode(ctx, node->stmt, node, "stmt", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->def) { - _fingerprintString(ctx, "def"); - _fingerprintString(ctx, "true"); - } - if (node->for_encoding_name != NULL) { - _fingerprintString(ctx, "for_encoding_name"); - _fingerprintString(ctx, node->for_encoding_name); - } + // Intentionally ignoring node->stmt_len for fingerprinting - if (node->func_name != NULL && node->func_name->length > 0) { + // Intentionally ignoring node->stmt_location for fingerprinting + +} + +static void +_fingerprintInsertStmt(FingerprintContext *ctx, const InsertStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->cols != NULL && node->cols->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "func_name"); + _fingerprintString(ctx, "cols"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->func_name, node, "func_name", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->func_name) == 1 && linitial(node->func_name) == NIL)) { + _fingerprintNode(ctx, node->cols, node, "cols", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cols) == 1 && linitial(node->cols) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->to_encoding_name != NULL) { - _fingerprintString(ctx, "to_encoding_name"); - _fingerprintString(ctx, node->to_encoding_name); - } - -} - -static void -_fingerprintCreateCastStmt(FingerprintContext *ctx, const CreateCastStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "context"); - _fingerprintString(ctx, _enumToStringCoercionContext(node->context)); - } - - if (node->func != NULL) { + if (node->onConflictClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "func"); + _fingerprintString(ctx, "onConflictClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintObjectWithArgs(ctx, node->func, node, "func", depth + 1); + _fingerprintOnConflictClause(ctx, node->onConflictClause, node, "onConflictClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7102,20 +7410,20 @@ _fingerprintCreateCastStmt(FingerprintContext *ctx, const CreateCastStmt *node, XXH3_freeState(prev); } - if (node->inout) { - _fingerprintString(ctx, "inout"); - _fingerprintString(ctx, "true"); + if (true) { + _fingerprintString(ctx, "override"); + _fingerprintString(ctx, _enumToStringOverridingKind(node->override)); } - if (node->sourcetype != NULL) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "sourcetype"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->sourcetype, node, "sourcetype", depth + 1); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7124,42 +7432,48 @@ _fingerprintCreateCastStmt(FingerprintContext *ctx, const CreateCastStmt *node, XXH3_freeState(prev); } - if (node->targettype != NULL) { + if (node->returningList != NULL && node->returningList->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "targettype"); + _fingerprintString(ctx, "returningList"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->targettype, node, "targettype", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->returningList, node, "returningList", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->returningList) == 1 && linitial(node->returningList) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->selectStmt != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; -} - -static void -_fingerprintCreateOpClassStmt(FingerprintContext *ctx, const CreateOpClassStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->amname != NULL) { - _fingerprintString(ctx, "amname"); - _fingerprintString(ctx, node->amname); + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "selectStmt"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->selectStmt, node, "selectStmt", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } - if (node->datatype != NULL) { + if (node->withClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "datatype"); + _fingerprintString(ctx, "withClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->datatype, node, "datatype", depth + 1); + _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7168,225 +7482,212 @@ _fingerprintCreateOpClassStmt(FingerprintContext *ctx, const CreateOpClassStmt * XXH3_freeState(prev); } - if (node->isDefault) { - _fingerprintString(ctx, "isDefault"); - _fingerprintString(ctx, "true"); - } +} - if (node->items != NULL && node->items->length > 0) { +static void +_fingerprintDeleteStmt(FingerprintContext *ctx, const DeleteStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "items"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->items, node, "items", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->items) == 1 && linitial(node->items) == NIL)) { + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->opclassname != NULL && node->opclassname->length > 0) { + + if (node->returningList != NULL && node->returningList->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "opclassname"); + _fingerprintString(ctx, "returningList"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->opclassname, node, "opclassname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opclassname) == 1 && linitial(node->opclassname) == NIL)) { + _fingerprintNode(ctx, node->returningList, node, "returningList", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->returningList) == 1 && linitial(node->returningList) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->opfamilyname != NULL && node->opfamilyname->length > 0) { + if (node->usingClause != NULL && node->usingClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "opfamilyname"); + _fingerprintString(ctx, "usingClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->opfamilyname, node, "opfamilyname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opfamilyname) == 1 && linitial(node->opfamilyname) == NIL)) { + _fingerprintNode(ctx, node->usingClause, node, "usingClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->usingClause) == 1 && linitial(node->usingClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} + if (node->whereClause != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; -static void -_fingerprintCreateOpFamilyStmt(FingerprintContext *ctx, const CreateOpFamilyStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->amname != NULL) { - _fingerprintString(ctx, "amname"); - _fingerprintString(ctx, node->amname); + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "whereClause"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } - if (node->opfamilyname != NULL && node->opfamilyname->length > 0) { + if (node->withClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "opfamilyname"); + _fingerprintString(ctx, "withClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->opfamilyname, node, "opfamilyname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opfamilyname) == 1 && linitial(node->opfamilyname) == NIL)) { + _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + } static void -_fingerprintAlterOpFamilyStmt(FingerprintContext *ctx, const AlterOpFamilyStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintUpdateStmt(FingerprintContext *ctx, const UpdateStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->amname != NULL) { - _fingerprintString(ctx, "amname"); - _fingerprintString(ctx, node->amname); - } - - if (node->isDrop) { - _fingerprintString(ctx, "isDrop"); - _fingerprintString(ctx, "true"); - } - - if (node->items != NULL && node->items->length > 0) { + if (node->fromClause != NULL && node->fromClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "items"); + _fingerprintString(ctx, "fromClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->items, node, "items", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->items) == 1 && linitial(node->items) == NIL)) { + _fingerprintNode(ctx, node->fromClause, node, "fromClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fromClause) == 1 && linitial(node->fromClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->opfamilyname != NULL && node->opfamilyname->length > 0) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "opfamilyname"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->opfamilyname, node, "opfamilyname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opfamilyname) == 1 && linitial(node->opfamilyname) == NIL)) { + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintPrepareStmt(FingerprintContext *ctx, const PrepareStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->argtypes != NULL && node->argtypes->length > 0) { + if (node->returningList != NULL && node->returningList->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "argtypes"); + _fingerprintString(ctx, "returningList"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->argtypes, node, "argtypes", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->argtypes) == 1 && linitial(node->argtypes) == NIL)) { + _fingerprintNode(ctx, node->returningList, node, "returningList", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->returningList) == 1 && linitial(node->returningList) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->name for fingerprinting - - if (node->query != NULL) { + if (node->targetList != NULL && node->targetList->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "query"); + _fingerprintString(ctx, "targetList"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->query, node, "query", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->whereClause != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; -} + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "whereClause"); -static void -_fingerprintExecuteStmt(FingerprintContext *ctx, const ExecuteStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - // Intentionally ignoring node->name for fingerprinting + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } - if (node->params != NULL && node->params->length > 0) { + if (node->withClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "params"); + _fingerprintString(ctx, "withClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->params, node, "params", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->params) == 1 && linitial(node->params) == NIL)) { + _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintDeallocateStmt(FingerprintContext *ctx, const DeallocateStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - // Intentionally ignoring node->name for fingerprinting } static void -_fingerprintDeclareCursorStmt(FingerprintContext *ctx, const DeclareCursorStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintMergeStmt(FingerprintContext *ctx, const MergeStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->options != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->options); - _fingerprintString(ctx, "options"); - _fingerprintString(ctx, buffer); - } - - // Intentionally ignoring node->portalname for fingerprinting - - if (node->query != NULL) { + if (node->joinCondition != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "query"); + _fingerprintString(ctx, "joinCondition"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->query, node, "query", depth + 1); + _fingerprintNode(ctx, node->joinCondition, node, "joinCondition", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7395,38 +7696,31 @@ _fingerprintDeclareCursorStmt(FingerprintContext *ctx, const DeclareCursorStmt * XXH3_freeState(prev); } -} - -static void -_fingerprintCreateTableSpaceStmt(FingerprintContext *ctx, const CreateTableSpaceStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - // Intentionally ignoring node->location for fingerprinting - - if (node->options != NULL && node->options->length > 0) { + if (node->mergeWhenClauses != NULL && node->mergeWhenClauses->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "mergeWhenClauses"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->mergeWhenClauses, node, "mergeWhenClauses", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->mergeWhenClauses) == 1 && linitial(node->mergeWhenClauses) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->owner != NULL) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "owner"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->owner, node, "owner", depth + 1); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7435,45 +7729,15 @@ _fingerprintCreateTableSpaceStmt(FingerprintContext *ctx, const CreateTableSpace XXH3_freeState(prev); } - if (node->tablespacename != NULL) { - _fingerprintString(ctx, "tablespacename"); - _fingerprintString(ctx, node->tablespacename); - } - -} - -static void -_fingerprintDropTableSpaceStmt(FingerprintContext *ctx, const DropTableSpaceStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); - } - - if (node->tablespacename != NULL) { - _fingerprintString(ctx, "tablespacename"); - _fingerprintString(ctx, node->tablespacename); - } - -} - -static void -_fingerprintAlterObjectDependsStmt(FingerprintContext *ctx, const AlterObjectDependsStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (strlen(node->extname->sval) > 0) { - _fingerprintString(ctx, "extname"); - _fingerprintString(ctx, node->extname->sval); - } - - if (node->object != NULL) { + if (node->sourceRelation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "object"); + _fingerprintString(ctx, "sourceRelation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->object, node, "object", depth + 1); + _fingerprintNode(ctx, node->sourceRelation, node, "sourceRelation", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7482,20 +7746,15 @@ _fingerprintAlterObjectDependsStmt(FingerprintContext *ctx, const AlterObjectDep XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "objectType"); - _fingerprintString(ctx, _enumToStringObjectType(node->objectType)); - } - - if (node->relation != NULL) { + if (node->withClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "withClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7504,96 +7763,78 @@ _fingerprintAlterObjectDependsStmt(FingerprintContext *ctx, const AlterObjectDep XXH3_freeState(prev); } - if (node->remove) { - _fingerprintString(ctx, "remove"); - _fingerprintString(ctx, "true"); - } - } static void -_fingerprintAlterObjectSchemaStmt(FingerprintContext *ctx, const AlterObjectSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintSelectStmt(FingerprintContext *ctx, const SelectStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); + if (node->all) { + _fingerprintString(ctx, "all"); _fingerprintString(ctx, "true"); } - if (node->newschema != NULL) { - _fingerprintString(ctx, "newschema"); - _fingerprintString(ctx, node->newschema); - } - - if (node->object != NULL) { + if (node->distinctClause != NULL && node->distinctClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "object"); + _fingerprintString(ctx, "distinctClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->object, node, "object", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->distinctClause, node, "distinctClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->distinctClause) == 1 && linitial(node->distinctClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (true) { - _fingerprintString(ctx, "objectType"); - _fingerprintString(ctx, _enumToStringObjectType(node->objectType)); - } - - if (node->relation != NULL) { + if (node->fromClause != NULL && node->fromClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "fromClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->fromClause, node, "fromClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fromClause) == 1 && linitial(node->fromClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - -} - -static void -_fingerprintAlterOwnerStmt(FingerprintContext *ctx, const AlterOwnerStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->newowner != NULL) { + if (node->groupClause != NULL && node->groupClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "newowner"); + _fingerprintString(ctx, "groupClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->newowner, node, "newowner", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->groupClause, node, "groupClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->groupClause) == 1 && linitial(node->groupClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->groupDistinct) { + _fingerprintString(ctx, "groupDistinct"); + _fingerprintString(ctx, "true"); + } - if (node->object != NULL) { + if (node->havingClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "object"); + _fingerprintString(ctx, "havingClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->object, node, "object", depth + 1); + _fingerprintNode(ctx, node->havingClause, node, "havingClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7602,20 +7843,15 @@ _fingerprintAlterOwnerStmt(FingerprintContext *ctx, const AlterOwnerStmt *node, XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "objectType"); - _fingerprintString(ctx, _enumToStringObjectType(node->objectType)); - } - - if (node->relation != NULL) { + if (node->intoClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "intoClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintIntoClause(ctx, node->intoClause, node, "intoClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7624,20 +7860,15 @@ _fingerprintAlterOwnerStmt(FingerprintContext *ctx, const AlterOwnerStmt *node, XXH3_freeState(prev); } -} - -static void -_fingerprintAlterOperatorStmt(FingerprintContext *ctx, const AlterOperatorStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->opername != NULL) { + if (node->larg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "opername"); + _fingerprintString(ctx, "larg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintObjectWithArgs(ctx, node->opername, node, "opername", depth + 1); + _fingerprintSelectStmt(ctx, node->larg, node, "larg", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7646,153 +7877,140 @@ _fingerprintAlterOperatorStmt(FingerprintContext *ctx, const AlterOperatorStmt * XXH3_freeState(prev); } - if (node->options != NULL && node->options->length > 0) { + if (node->limitCount != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "limitCount"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->limitCount, node, "limitCount", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintAlterTypeStmt(FingerprintContext *ctx, const AlterTypeStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->options != NULL && node->options->length > 0) { + if (node->limitOffset != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "limitOffset"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->limitOffset, node, "limitOffset", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->typeName != NULL && node->typeName->length > 0) { + + if (true) { + _fingerprintString(ctx, "limitOption"); + _fingerprintString(ctx, _enumToStringLimitOption(node->limitOption)); + } + + if (node->lockingClause != NULL && node->lockingClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typeName"); + _fingerprintString(ctx, "lockingClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { + _fingerprintNode(ctx, node->lockingClause, node, "lockingClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->lockingClause) == 1 && linitial(node->lockingClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintDropOwnedStmt(FingerprintContext *ctx, const DropOwnedStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ if (true) { - _fingerprintString(ctx, "behavior"); - _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); + _fingerprintString(ctx, "op"); + _fingerprintString(ctx, _enumToStringSetOperation(node->op)); } - if (node->roles != NULL && node->roles->length > 0) { + if (node->rarg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "roles"); + _fingerprintString(ctx, "rarg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { + _fingerprintSelectStmt(ctx, node->rarg, node, "rarg", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintReassignOwnedStmt(FingerprintContext *ctx, const ReassignOwnedStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->newrole != NULL) { + if (node->sortClause != NULL && node->sortClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "newrole"); + _fingerprintString(ctx, "sortClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->newrole, node, "newrole", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->sortClause, node, "sortClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->sortClause) == 1 && linitial(node->sortClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->roles != NULL && node->roles->length > 0) { + if (node->targetList != NULL && node->targetList->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "roles"); + _fingerprintString(ctx, "targetList"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { + _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintCompositeTypeStmt(FingerprintContext *ctx, const CompositeTypeStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->coldeflist != NULL && node->coldeflist->length > 0) { + if (node->valuesLists != NULL && node->valuesLists->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "coldeflist"); + _fingerprintString(ctx, "valuesLists"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->coldeflist, node, "coldeflist", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->coldeflist) == 1 && linitial(node->coldeflist) == NIL)) { + _fingerprintNode(ctx, node->valuesLists, node, "valuesLists", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->valuesLists) == 1 && linitial(node->valuesLists) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->typevar != NULL) { + if (node->whereClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typevar"); + _fingerprintString(ctx, "whereClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->typevar, node, "typevar", depth + 1); + _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -7801,485 +8019,449 @@ _fingerprintCompositeTypeStmt(FingerprintContext *ctx, const CompositeTypeStmt * XXH3_freeState(prev); } -} - -static void -_fingerprintCreateEnumStmt(FingerprintContext *ctx, const CreateEnumStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->typeName != NULL && node->typeName->length > 0) { + if (node->windowClause != NULL && node->windowClause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typeName"); + _fingerprintString(ctx, "windowClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { + _fingerprintNode(ctx, node->windowClause, node, "windowClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->windowClause) == 1 && linitial(node->windowClause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->vals != NULL && node->vals->length > 0) { + if (node->withClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "vals"); + _fingerprintString(ctx, "withClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->vals, node, "vals", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->vals) == 1 && linitial(node->vals) == NIL)) { + _fingerprintWithClause(ctx, node->withClause, node, "withClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + } static void -_fingerprintCreateRangeStmt(FingerprintContext *ctx, const CreateRangeStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintSetOperationStmt(FingerprintContext *ctx, const SetOperationStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->params != NULL && node->params->length > 0) { + if (node->all) { + _fingerprintString(ctx, "all"); + _fingerprintString(ctx, "true"); + } + + if (node->colCollations != NULL && node->colCollations->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "params"); + _fingerprintString(ctx, "colCollations"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->params, node, "params", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->params) == 1 && linitial(node->params) == NIL)) { + _fingerprintNode(ctx, node->colCollations, node, "colCollations", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colCollations) == 1 && linitial(node->colCollations) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->typeName != NULL && node->typeName->length > 0) { + if (node->colTypes != NULL && node->colTypes->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typeName"); + _fingerprintString(ctx, "colTypes"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { + _fingerprintNode(ctx, node->colTypes, node, "colTypes", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colTypes) == 1 && linitial(node->colTypes) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintAlterEnumStmt(FingerprintContext *ctx, const AlterEnumStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->newVal != NULL) { - _fingerprintString(ctx, "newVal"); - _fingerprintString(ctx, node->newVal); - } - - if (node->newValIsAfter) { - _fingerprintString(ctx, "newValIsAfter"); - _fingerprintString(ctx, "true"); - } - - if (node->newValNeighbor != NULL) { - _fingerprintString(ctx, "newValNeighbor"); - _fingerprintString(ctx, node->newValNeighbor); - } - - if (node->oldVal != NULL) { - _fingerprintString(ctx, "oldVal"); - _fingerprintString(ctx, node->oldVal); - } - - if (node->skipIfNewValExists) { - _fingerprintString(ctx, "skipIfNewValExists"); - _fingerprintString(ctx, "true"); - } - - if (node->typeName != NULL && node->typeName->length > 0) { + if (node->colTypmods != NULL && node->colTypmods->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typeName"); + _fingerprintString(ctx, "colTypmods"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { + _fingerprintNode(ctx, node->colTypmods, node, "colTypmods", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colTypmods) == 1 && linitial(node->colTypmods) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintAlterTSDictionaryStmt(FingerprintContext *ctx, const AlterTSDictionaryStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->dictname != NULL && node->dictname->length > 0) { + if (node->groupClauses != NULL && node->groupClauses->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "dictname"); + _fingerprintString(ctx, "groupClauses"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->dictname, node, "dictname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->dictname) == 1 && linitial(node->dictname) == NIL)) { + _fingerprintNode(ctx, node->groupClauses, node, "groupClauses", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->groupClauses) == 1 && linitial(node->groupClauses) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->options != NULL && node->options->length > 0) { + if (node->larg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "larg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->larg, node, "larg", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintAlterTSConfigurationStmt(FingerprintContext *ctx, const AlterTSConfigurationStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->cfgname != NULL && node->cfgname->length > 0) { + if (true) { + _fingerprintString(ctx, "op"); + _fingerprintString(ctx, _enumToStringSetOperation(node->op)); + } + + if (node->rarg != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cfgname"); + _fingerprintString(ctx, "rarg"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->cfgname, node, "cfgname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cfgname) == 1 && linitial(node->cfgname) == NIL)) { + _fingerprintNode(ctx, node->rarg, node, "rarg", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->dicts != NULL && node->dicts->length > 0) { + +} + +static void +_fingerprintReturnStmt(FingerprintContext *ctx, const ReturnStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->returnval != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "dicts"); + _fingerprintString(ctx, "returnval"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->dicts, node, "dicts", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->dicts) == 1 && linitial(node->dicts) == NIL)) { + _fingerprintNode(ctx, node->returnval, node, "returnval", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "kind"); - _fingerprintString(ctx, _enumToStringAlterTSConfigType(node->kind)); - } - - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); - } - - if (node->override) { - _fingerprintString(ctx, "override"); - _fingerprintString(ctx, "true"); - } - if (node->replace) { - _fingerprintString(ctx, "replace"); - _fingerprintString(ctx, "true"); - } +} - if (node->tokentype != NULL && node->tokentype->length > 0) { +static void +_fingerprintPLAssignStmt(FingerprintContext *ctx, const PLAssignStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->indirection != NULL && node->indirection->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "tokentype"); + _fingerprintString(ctx, "indirection"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->tokentype, node, "tokentype", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->tokentype) == 1 && linitial(node->tokentype) == NIL)) { + _fingerprintNode(ctx, node->indirection, node, "indirection", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indirection) == 1 && linitial(node->indirection) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} + // Intentionally ignoring node->location for fingerprinting -static void -_fingerprintCreateFdwStmt(FingerprintContext *ctx, const CreateFdwStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->fdwname != NULL) { - _fingerprintString(ctx, "fdwname"); - _fingerprintString(ctx, node->fdwname); + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } - if (node->func_options != NULL && node->func_options->length > 0) { + if (node->nnames != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->nnames); + _fingerprintString(ctx, "nnames"); + _fingerprintString(ctx, buffer); + } + + if (node->val != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "func_options"); + _fingerprintString(ctx, "val"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->func_options, node, "func_options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->func_options) == 1 && linitial(node->func_options) == NIL)) { + _fingerprintSelectStmt(ctx, node->val, node, "val", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->options != NULL && node->options->length > 0) { + +} + +static void +_fingerprintCreateSchemaStmt(FingerprintContext *ctx, const CreateSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->authrole != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "authrole"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintRoleSpec(ctx, node->authrole, node, "authrole", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintAlterFdwStmt(FingerprintContext *ctx, const AlterFdwStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->fdwname != NULL) { - _fingerprintString(ctx, "fdwname"); - _fingerprintString(ctx, node->fdwname); + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); + _fingerprintString(ctx, "true"); } - if (node->func_options != NULL && node->func_options->length > 0) { + if (node->schemaElts != NULL && node->schemaElts->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "func_options"); + _fingerprintString(ctx, "schemaElts"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->func_options, node, "func_options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->func_options) == 1 && linitial(node->func_options) == NIL)) { + _fingerprintNode(ctx, node->schemaElts, node, "schemaElts", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->schemaElts) == 1 && linitial(node->schemaElts) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->options != NULL && node->options->length > 0) { + if (node->schemaname != NULL) { + _fingerprintString(ctx, "schemaname"); + _fingerprintString(ctx, node->schemaname); + } + +} + +static void +_fingerprintAlterTableStmt(FingerprintContext *ctx, const AlterTableStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->cmds != NULL && node->cmds->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "cmds"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->cmds, node, "cmds", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cmds) == 1 && linitial(node->cmds) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintCreateForeignServerStmt(FingerprintContext *ctx, const CreateForeignServerStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->fdwname != NULL) { - _fingerprintString(ctx, "fdwname"); - _fingerprintString(ctx, node->fdwname); + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); } - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); - _fingerprintString(ctx, "true"); + if (true) { + _fingerprintString(ctx, "objtype"); + _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); } - if (node->options != NULL && node->options->length > 0) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->servername != NULL) { - _fingerprintString(ctx, "servername"); - _fingerprintString(ctx, node->servername); - } - if (node->servertype != NULL) { - _fingerprintString(ctx, "servertype"); - _fingerprintString(ctx, node->servertype); +} + +static void +_fingerprintReplicaIdentityStmt(FingerprintContext *ctx, const ReplicaIdentityStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->identity_type != 0) { + char buffer[2] = {node->identity_type, '\0'}; + _fingerprintString(ctx, "identity_type"); + _fingerprintString(ctx, buffer); } - if (node->version != NULL) { - _fingerprintString(ctx, "version"); - _fingerprintString(ctx, node->version); + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } } static void -_fingerprintAlterForeignServerStmt(FingerprintContext *ctx, const AlterForeignServerStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterTableCmd(FingerprintContext *ctx, const AlterTableCmd *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->has_version) { - _fingerprintString(ctx, "has_version"); - _fingerprintString(ctx, "true"); + if (true) { + _fingerprintString(ctx, "behavior"); + _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); } - if (node->options != NULL && node->options->length > 0) { + if (node->def != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "def"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->def, node, "def", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->servername != NULL) { - _fingerprintString(ctx, "servername"); - _fingerprintString(ctx, node->servername); - } - if (node->version != NULL) { - _fingerprintString(ctx, "version"); - _fingerprintString(ctx, node->version); + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); } -} - -static void -_fingerprintCreateUserMappingStmt(FingerprintContext *ctx, const CreateUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); - _fingerprintString(ctx, "true"); + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } - if (node->options != NULL && node->options->length > 0) { + if (node->newowner != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "newowner"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintRoleSpec(ctx, node->newowner, node, "newowner", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->servername != NULL) { - _fingerprintString(ctx, "servername"); - _fingerprintString(ctx, node->servername); - } - if (node->user != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + if (node->num != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->num); + _fingerprintString(ctx, "num"); + _fingerprintString(ctx, buffer); + } - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "user"); + if (node->recurse) { + _fingerprintString(ctx, "recurse"); + _fingerprintString(ctx, "true"); + } - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->user, node, "user", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); + if (true) { + _fingerprintString(ctx, "subtype"); + _fingerprintString(ctx, _enumToStringAlterTableType(node->subtype)); } } static void -_fingerprintAlterUserMappingStmt(FingerprintContext *ctx, const AlterUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterCollationStmt(FingerprintContext *ctx, const AlterCollationStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->options != NULL && node->options->length > 0) { + if (node->collname != NULL && node->collname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "collname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->collname, node, "collname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->collname) == 1 && linitial(node->collname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->servername != NULL) { - _fingerprintString(ctx, "servername"); - _fingerprintString(ctx, node->servername); +} + +static void +_fingerprintAlterDomainStmt(FingerprintContext *ctx, const AlterDomainStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (true) { + _fingerprintString(ctx, "behavior"); + _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); } - if (node->user != NULL) { + if (node->def != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "user"); + _fingerprintString(ctx, "def"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->user, node, "user", depth + 1); + _fingerprintNode(ctx, node->def, node, "def", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -8288,257 +8470,185 @@ _fingerprintAlterUserMappingStmt(FingerprintContext *ctx, const AlterUserMapping XXH3_freeState(prev); } -} - -static void -_fingerprintDropUserMappingStmt(FingerprintContext *ctx, const DropUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ if (node->missing_ok) { _fingerprintString(ctx, "missing_ok"); _fingerprintString(ctx, "true"); } - if (node->servername != NULL) { - _fingerprintString(ctx, "servername"); - _fingerprintString(ctx, node->servername); + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } - if (node->user != NULL) { + if (node->subtype != 0) { + char buffer[2] = {node->subtype, '\0'}; + _fingerprintString(ctx, "subtype"); + _fingerprintString(ctx, buffer); + } + + if (node->typeName != NULL && node->typeName->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "user"); + _fingerprintString(ctx, "typeName"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRoleSpec(ctx, node->user, node, "user", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - } static void -_fingerprintAlterTableSpaceOptionsStmt(FingerprintContext *ctx, const AlterTableSpaceOptionsStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintGrantStmt(FingerprintContext *ctx, const GrantStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->isReset) { - _fingerprintString(ctx, "isReset"); + if (true) { + _fingerprintString(ctx, "behavior"); + _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); + } + + if (node->grant_option) { + _fingerprintString(ctx, "grant_option"); _fingerprintString(ctx, "true"); } - if (node->options != NULL && node->options->length > 0) { + if (node->grantees != NULL && node->grantees->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "grantees"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->grantees, node, "grantees", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->grantees) == 1 && linitial(node->grantees) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->tablespacename != NULL) { - _fingerprintString(ctx, "tablespacename"); - _fingerprintString(ctx, node->tablespacename); - } - -} - -static void -_fingerprintAlterTableMoveAllStmt(FingerprintContext *ctx, const AlterTableMoveAllStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->new_tablespacename != NULL) { - _fingerprintString(ctx, "new_tablespacename"); - _fingerprintString(ctx, node->new_tablespacename); - } - - if (node->nowait) { - _fingerprintString(ctx, "nowait"); - _fingerprintString(ctx, "true"); - } - - if (true) { - _fingerprintString(ctx, "objtype"); - _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); - } - - if (node->orig_tablespacename != NULL) { - _fingerprintString(ctx, "orig_tablespacename"); - _fingerprintString(ctx, node->orig_tablespacename); - } - - if (node->roles != NULL && node->roles->length > 0) { + if (node->grantor != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "roles"); + _fingerprintString(ctx, "grantor"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { + _fingerprintRoleSpec(ctx, node->grantor, node, "grantor", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintSecLabelStmt(FingerprintContext *ctx, const SecLabelStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->label != NULL) { - _fingerprintString(ctx, "label"); - _fingerprintString(ctx, node->label); + if (node->is_grant) { + _fingerprintString(ctx, "is_grant"); + _fingerprintString(ctx, "true"); } - if (node->object != NULL) { + if (node->objects != NULL && node->objects->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "object"); + _fingerprintString(ctx, "objects"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->object, node, "object", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->objects, node, "objects", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objects) == 1 && linitial(node->objects) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { _fingerprintString(ctx, "objtype"); _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); } - if (node->provider != NULL) { - _fingerprintString(ctx, "provider"); - _fingerprintString(ctx, node->provider); - } - -} - -static void -_fingerprintCreateForeignTableStmt(FingerprintContext *ctx, const CreateForeignTableStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - _fingerprintString(ctx, "base"); - _fingerprintCreateStmt(ctx, (const CreateStmt*) &node->base, node, "base", depth); - if (node->options != NULL && node->options->length > 0) { + if (node->privileges != NULL && node->privileges->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "privileges"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->privileges, node, "privileges", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->privileges) == 1 && linitial(node->privileges) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->servername != NULL) { - _fingerprintString(ctx, "servername"); - _fingerprintString(ctx, node->servername); + if (true) { + _fingerprintString(ctx, "targtype"); + _fingerprintString(ctx, _enumToStringGrantTargetType(node->targtype)); } } static void -_fingerprintImportForeignSchemaStmt(FingerprintContext *ctx, const ImportForeignSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintObjectWithArgs(FingerprintContext *ctx, const ObjectWithArgs *node, const void *parent, const char *field_name, unsigned int depth) { - if (true) { - _fingerprintString(ctx, "list_type"); - _fingerprintString(ctx, _enumToStringImportForeignSchemaType(node->list_type)); - } - - if (node->local_schema != NULL) { - _fingerprintString(ctx, "local_schema"); - _fingerprintString(ctx, node->local_schema); + if (node->args_unspecified) { + _fingerprintString(ctx, "args_unspecified"); + _fingerprintString(ctx, "true"); } - if (node->options != NULL && node->options->length > 0) { + if (node->objargs != NULL && node->objargs->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "objargs"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->objargs, node, "objargs", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objargs) == 1 && linitial(node->objargs) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->remote_schema != NULL) { - _fingerprintString(ctx, "remote_schema"); - _fingerprintString(ctx, node->remote_schema); - } - - if (node->server_name != NULL) { - _fingerprintString(ctx, "server_name"); - _fingerprintString(ctx, node->server_name); - } - - if (node->table_list != NULL && node->table_list->length > 0) { + if (node->objfuncargs != NULL && node->objfuncargs->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "table_list"); + _fingerprintString(ctx, "objfuncargs"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->table_list, node, "table_list", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->table_list) == 1 && linitial(node->table_list) == NIL)) { + _fingerprintNode(ctx, node->objfuncargs, node, "objfuncargs", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objfuncargs) == 1 && linitial(node->objfuncargs) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintCreateExtensionStmt(FingerprintContext *ctx, const CreateExtensionStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->extname != NULL) { - _fingerprintString(ctx, "extname"); - _fingerprintString(ctx, node->extname); - } - - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); - _fingerprintString(ctx, "true"); - } - - if (node->options != NULL && node->options->length > 0) { + if (node->objname != NULL && node->objname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "objname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->objname, node, "objname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objname) == 1 && linitial(node->objname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); @@ -8548,150 +8658,80 @@ _fingerprintCreateExtensionStmt(FingerprintContext *ctx, const CreateExtensionSt } static void -_fingerprintAlterExtensionStmt(FingerprintContext *ctx, const AlterExtensionStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAccessPriv(FingerprintContext *ctx, const AccessPriv *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->extname != NULL) { - _fingerprintString(ctx, "extname"); - _fingerprintString(ctx, node->extname); - } - - if (node->options != NULL && node->options->length > 0) { + if (node->cols != NULL && node->cols->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "cols"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->cols, node, "cols", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cols) == 1 && linitial(node->cols) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintAlterExtensionContentsStmt(FingerprintContext *ctx, const AlterExtensionContentsStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->action != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->action); - _fingerprintString(ctx, "action"); - _fingerprintString(ctx, buffer); - } - - if (node->extname != NULL) { - _fingerprintString(ctx, "extname"); - _fingerprintString(ctx, node->extname); - } - - if (node->object != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "object"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->object, node, "object", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - - if (true) { - _fingerprintString(ctx, "objtype"); - _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); + if (node->priv_name != NULL) { + _fingerprintString(ctx, "priv_name"); + _fingerprintString(ctx, node->priv_name); } } static void -_fingerprintCreateEventTrigStmt(FingerprintContext *ctx, const CreateEventTrigStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintGrantRoleStmt(FingerprintContext *ctx, const GrantRoleStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->eventname != NULL) { - _fingerprintString(ctx, "eventname"); - _fingerprintString(ctx, node->eventname); + if (true) { + _fingerprintString(ctx, "behavior"); + _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); } - if (node->funcname != NULL && node->funcname->length > 0) { + if (node->granted_roles != NULL && node->granted_roles->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funcname"); + _fingerprintString(ctx, "granted_roles"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->funcname, node, "funcname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funcname) == 1 && linitial(node->funcname) == NIL)) { + _fingerprintNode(ctx, node->granted_roles, node, "granted_roles", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->granted_roles) == 1 && linitial(node->granted_roles) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->trigname != NULL) { - _fingerprintString(ctx, "trigname"); - _fingerprintString(ctx, node->trigname); - } - - if (node->whenclause != NULL && node->whenclause->length > 0) { + if (node->grantee_roles != NULL && node->grantee_roles->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whenclause"); + _fingerprintString(ctx, "grantee_roles"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whenclause, node, "whenclause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->whenclause) == 1 && linitial(node->whenclause) == NIL)) { + _fingerprintNode(ctx, node->grantee_roles, node, "grantee_roles", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->grantee_roles) == 1 && linitial(node->grantee_roles) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintAlterEventTrigStmt(FingerprintContext *ctx, const AlterEventTrigStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->tgenabled != 0) { - char buffer[2] = {node->tgenabled, '\0'}; - _fingerprintString(ctx, "tgenabled"); - _fingerprintString(ctx, buffer); - } - - if (node->trigname != NULL) { - _fingerprintString(ctx, "trigname"); - _fingerprintString(ctx, node->trigname); - } - -} - -static void -_fingerprintRefreshMatViewStmt(FingerprintContext *ctx, const RefreshMatViewStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->concurrent) { - _fingerprintString(ctx, "concurrent"); - _fingerprintString(ctx, "true"); - } - - if (node->relation != NULL) { + if (node->grantor != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "grantor"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + _fingerprintRoleSpec(ctx, node->grantor, node, "grantor", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -8700,78 +8740,41 @@ _fingerprintRefreshMatViewStmt(FingerprintContext *ctx, const RefreshMatViewStmt XXH3_freeState(prev); } - if (node->skipData) { - _fingerprintString(ctx, "skipData"); + if (node->is_grant) { + _fingerprintString(ctx, "is_grant"); _fingerprintString(ctx, "true"); } -} - -static void -_fingerprintReplicaIdentityStmt(FingerprintContext *ctx, const ReplicaIdentityStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->identity_type != 0) { - char buffer[2] = {node->identity_type, '\0'}; - _fingerprintString(ctx, "identity_type"); - _fingerprintString(ctx, buffer); - } - - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } - -} - -static void -_fingerprintAlterSystemStmt(FingerprintContext *ctx, const AlterSystemStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->setstmt != NULL) { + if (node->opt != NULL && node->opt->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "setstmt"); + _fingerprintString(ctx, "opt"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintVariableSetStmt(ctx, node->setstmt, node, "setstmt", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->opt, node, "opt", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opt) == 1 && linitial(node->opt) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - } static void -_fingerprintCreatePolicyStmt(FingerprintContext *ctx, const CreatePolicyStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterDefaultPrivilegesStmt(FingerprintContext *ctx, const AlterDefaultPrivilegesStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->cmd_name != NULL) { - _fingerprintString(ctx, "cmd_name"); - _fingerprintString(ctx, node->cmd_name); - } - - if (node->permissive) { - _fingerprintString(ctx, "permissive"); - _fingerprintString(ctx, "true"); - } - - if (node->policy_name != NULL) { - _fingerprintString(ctx, "policy_name"); - _fingerprintString(ctx, node->policy_name); - } - - if (node->qual != NULL) { + if (node->action != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "qual"); + _fingerprintString(ctx, "action"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->qual, node, "qual", depth + 1); + _fingerprintGrantStmt(ctx, node->action, node, "action", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -8780,108 +8783,100 @@ _fingerprintCreatePolicyStmt(FingerprintContext *ctx, const CreatePolicyStmt *no XXH3_freeState(prev); } - if (node->roles != NULL && node->roles->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "roles"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - if (node->table != NULL) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "table"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->table, node, "table", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->with_check != NULL) { +static void +_fingerprintCopyStmt(FingerprintContext *ctx, const CopyStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->attlist != NULL && node->attlist->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "with_check"); + _fingerprintString(ctx, "attlist"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->with_check, node, "with_check", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->attlist, node, "attlist", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->attlist) == 1 && linitial(node->attlist) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->filename != NULL) { + _fingerprintString(ctx, "filename"); + _fingerprintString(ctx, node->filename); + } -} + if (node->is_from) { + _fingerprintString(ctx, "is_from"); + _fingerprintString(ctx, "true"); + } -static void -_fingerprintAlterPolicyStmt(FingerprintContext *ctx, const AlterPolicyStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->policy_name != NULL) { - _fingerprintString(ctx, "policy_name"); - _fingerprintString(ctx, node->policy_name); + if (node->is_program) { + _fingerprintString(ctx, "is_program"); + _fingerprintString(ctx, "true"); } - if (node->qual != NULL) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "qual"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->qual, node, "qual", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->roles != NULL && node->roles->length > 0) { + if (node->query != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "roles"); + _fingerprintString(ctx, "query"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { + _fingerprintNode(ctx, node->query, node, "query", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->table != NULL) { + + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "table"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->table, node, "table", depth + 1); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -8890,15 +8885,15 @@ _fingerprintAlterPolicyStmt(FingerprintContext *ctx, const AlterPolicyStmt *node XXH3_freeState(prev); } - if (node->with_check != NULL) { + if (node->whereClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "with_check"); + _fingerprintString(ctx, "whereClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->with_check, node, "with_check", depth + 1); + _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -8910,161 +8905,116 @@ _fingerprintAlterPolicyStmt(FingerprintContext *ctx, const AlterPolicyStmt *node } static void -_fingerprintCreateTransformStmt(FingerprintContext *ctx, const CreateTransformStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintVariableSetStmt(FingerprintContext *ctx, const VariableSetStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->fromsql != NULL) { + if (node->args != NULL && node->args->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "fromsql"); + _fingerprintString(ctx, "args"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintObjectWithArgs(ctx, node->fromsql, node, "fromsql", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->args, node, "args", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->lang != NULL) { - _fingerprintString(ctx, "lang"); - _fingerprintString(ctx, node->lang); + if (node->is_local) { + _fingerprintString(ctx, "is_local"); + _fingerprintString(ctx, "true"); } - if (node->replace) { - _fingerprintString(ctx, "replace"); - _fingerprintString(ctx, "true"); + if (true) { + _fingerprintString(ctx, "kind"); + _fingerprintString(ctx, _enumToStringVariableSetKind(node->kind)); } - if (node->tosql != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "tosql"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintObjectWithArgs(ctx, node->tosql, node, "tosql", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } - if (node->type_name != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "type_name"); +} - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->type_name, node, "type_name", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); +static void +_fingerprintVariableShowStmt(FingerprintContext *ctx, const VariableShowStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } } static void -_fingerprintCreateAmStmt(FingerprintContext *ctx, const CreateAmStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreateStmt(FingerprintContext *ctx, const CreateStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->amname != NULL) { - _fingerprintString(ctx, "amname"); - _fingerprintString(ctx, node->amname); - } - - if (node->amtype != 0) { - char buffer[2] = {node->amtype, '\0'}; - _fingerprintString(ctx, "amtype"); - _fingerprintString(ctx, buffer); + if (node->accessMethod != NULL) { + _fingerprintString(ctx, "accessMethod"); + _fingerprintString(ctx, node->accessMethod); } - if (node->handler_name != NULL && node->handler_name->length > 0) { + if (node->constraints != NULL && node->constraints->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "handler_name"); + _fingerprintString(ctx, "constraints"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->handler_name, node, "handler_name", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->handler_name) == 1 && linitial(node->handler_name) == NIL)) { + _fingerprintNode(ctx, node->constraints, node, "constraints", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->constraints) == 1 && linitial(node->constraints) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintCreatePublicationStmt(FingerprintContext *ctx, const CreatePublicationStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->for_all_tables) { - _fingerprintString(ctx, "for_all_tables"); + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); _fingerprintString(ctx, "true"); } - if (node->options != NULL && node->options->length > 0) { + if (node->inhRelations != NULL && node->inhRelations->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "inhRelations"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintNode(ctx, node->inhRelations, node, "inhRelations", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->inhRelations) == 1 && linitial(node->inhRelations) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->pubname != NULL) { - _fingerprintString(ctx, "pubname"); - _fingerprintString(ctx, node->pubname); - } - - if (node->pubobjects != NULL && node->pubobjects->length > 0) { + if (node->ofTypename != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "pubobjects"); + _fingerprintString(ctx, "ofTypename"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->pubobjects, node, "pubobjects", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->pubobjects) == 1 && linitial(node->pubobjects) == NIL)) { + _fingerprintTypeName(ctx, node->ofTypename, node, "ofTypename", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintAlterPublicationStmt(FingerprintContext *ctx, const AlterPublicationStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ if (true) { - _fingerprintString(ctx, "action"); - _fingerprintString(ctx, _enumToStringAlterPublicationAction(node->action)); - } - - if (node->for_all_tables) { - _fingerprintString(ctx, "for_all_tables"); - _fingerprintString(ctx, "true"); + _fingerprintString(ctx, "oncommit"); + _fingerprintString(ctx, _enumToStringOnCommitAction(node->oncommit)); } if (node->options != NULL && node->options->length > 0) { @@ -9083,361 +9033,352 @@ _fingerprintAlterPublicationStmt(FingerprintContext *ctx, const AlterPublication } XXH3_freeState(prev); } - if (node->pubname != NULL) { - _fingerprintString(ctx, "pubname"); - _fingerprintString(ctx, node->pubname); - } - - if (node->pubobjects != NULL && node->pubobjects->length > 0) { + if (node->partbound != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "pubobjects"); + _fingerprintString(ctx, "partbound"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->pubobjects, node, "pubobjects", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->pubobjects) == 1 && linitial(node->pubobjects) == NIL)) { + _fingerprintPartitionBoundSpec(ctx, node->partbound, node, "partbound", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintCreateSubscriptionStmt(FingerprintContext *ctx, const CreateSubscriptionStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->conninfo != NULL) { - _fingerprintString(ctx, "conninfo"); - _fingerprintString(ctx, node->conninfo); - } - - if (node->options != NULL && node->options->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - if (node->publication != NULL && node->publication->length > 0) { + if (node->partspec != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "publication"); + _fingerprintString(ctx, "partspec"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->publication, node, "publication", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->publication) == 1 && linitial(node->publication) == NIL)) { + _fingerprintPartitionSpec(ctx, node->partspec, node, "partspec", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->subname != NULL) { - _fingerprintString(ctx, "subname"); - _fingerprintString(ctx, node->subname); - } - -} - -static void -_fingerprintAlterSubscriptionStmt(FingerprintContext *ctx, const AlterSubscriptionStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->conninfo != NULL) { - _fingerprintString(ctx, "conninfo"); - _fingerprintString(ctx, node->conninfo); - } - - if (true) { - _fingerprintString(ctx, "kind"); - _fingerprintString(ctx, _enumToStringAlterSubscriptionType(node->kind)); - } - if (node->options != NULL && node->options->length > 0) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->publication != NULL && node->publication->length > 0) { + + if (node->tableElts != NULL && node->tableElts->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "publication"); + _fingerprintString(ctx, "tableElts"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->publication, node, "publication", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->publication) == 1 && linitial(node->publication) == NIL)) { + _fingerprintNode(ctx, node->tableElts, node, "tableElts", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->tableElts) == 1 && linitial(node->tableElts) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->subname != NULL) { - _fingerprintString(ctx, "subname"); - _fingerprintString(ctx, node->subname); + if (node->tablespacename != NULL) { + _fingerprintString(ctx, "tablespacename"); + _fingerprintString(ctx, node->tablespacename); } } static void -_fingerprintDropSubscriptionStmt(FingerprintContext *ctx, const DropSubscriptionStmt *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintConstraint(FingerprintContext *ctx, const Constraint *node, const void *parent, const char *field_name, unsigned int depth) { - if (true) { - _fingerprintString(ctx, "behavior"); - _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); + if (node->access_method != NULL) { + _fingerprintString(ctx, "access_method"); + _fingerprintString(ctx, node->access_method); } - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); + if (node->conname != NULL) { + _fingerprintString(ctx, "conname"); + _fingerprintString(ctx, node->conname); } - if (node->subname != NULL) { - _fingerprintString(ctx, "subname"); - _fingerprintString(ctx, node->subname); + if (true) { + _fingerprintString(ctx, "contype"); + _fingerprintString(ctx, _enumToStringConstrType(node->contype)); } -} + if (node->cooked_expr != NULL) { + _fingerprintString(ctx, "cooked_expr"); + _fingerprintString(ctx, node->cooked_expr); + } -static void -_fingerprintCreateStatsStmt(FingerprintContext *ctx, const CreateStatsStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->defnames != NULL && node->defnames->length > 0) { + if (node->deferrable) { + _fingerprintString(ctx, "deferrable"); + _fingerprintString(ctx, "true"); + } + + if (node->exclusions != NULL && node->exclusions->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "defnames"); + _fingerprintString(ctx, "exclusions"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->defnames, node, "defnames", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->defnames) == 1 && linitial(node->defnames) == NIL)) { + _fingerprintNode(ctx, node->exclusions, node, "exclusions", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->exclusions) == 1 && linitial(node->exclusions) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->exprs != NULL && node->exprs->length > 0) { + if (node->fk_attrs != NULL && node->fk_attrs->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "exprs"); + _fingerprintString(ctx, "fk_attrs"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->exprs, node, "exprs", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->exprs) == 1 && linitial(node->exprs) == NIL)) { + _fingerprintNode(ctx, node->fk_attrs, node, "fk_attrs", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fk_attrs) == 1 && linitial(node->fk_attrs) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->if_not_exists) { - _fingerprintString(ctx, "if_not_exists"); - _fingerprintString(ctx, "true"); + if (node->fk_del_action != 0) { + char buffer[2] = {node->fk_del_action, '\0'}; + _fingerprintString(ctx, "fk_del_action"); + _fingerprintString(ctx, buffer); } - if (node->relations != NULL && node->relations->length > 0) { + if (node->fk_del_set_cols != NULL && node->fk_del_set_cols->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relations"); + _fingerprintString(ctx, "fk_del_set_cols"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->relations, node, "relations", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->relations) == 1 && linitial(node->relations) == NIL)) { + _fingerprintNode(ctx, node->fk_del_set_cols, node, "fk_del_set_cols", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fk_del_set_cols) == 1 && linitial(node->fk_del_set_cols) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->stat_types != NULL && node->stat_types->length > 0) { + if (node->fk_matchtype != 0) { + char buffer[2] = {node->fk_matchtype, '\0'}; + _fingerprintString(ctx, "fk_matchtype"); + _fingerprintString(ctx, buffer); + } + + if (node->fk_upd_action != 0) { + char buffer[2] = {node->fk_upd_action, '\0'}; + _fingerprintString(ctx, "fk_upd_action"); + _fingerprintString(ctx, buffer); + } + + if (node->generated_when != 0) { + char buffer[2] = {node->generated_when, '\0'}; + _fingerprintString(ctx, "generated_when"); + _fingerprintString(ctx, buffer); + } + + if (node->including != NULL && node->including->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "stat_types"); + _fingerprintString(ctx, "including"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->stat_types, node, "stat_types", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->stat_types) == 1 && linitial(node->stat_types) == NIL)) { + _fingerprintNode(ctx, node->including, node, "including", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->including) == 1 && linitial(node->including) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->stxcomment != NULL) { - _fingerprintString(ctx, "stxcomment"); - _fingerprintString(ctx, node->stxcomment); + if (node->indexname != NULL) { + _fingerprintString(ctx, "indexname"); + _fingerprintString(ctx, node->indexname); } - if (node->transformed) { - _fingerprintString(ctx, "transformed"); + if (node->indexspace != NULL) { + _fingerprintString(ctx, "indexspace"); + _fingerprintString(ctx, node->indexspace); + } + + if (node->initdeferred) { + _fingerprintString(ctx, "initdeferred"); _fingerprintString(ctx, "true"); } -} + if (node->initially_valid) { + _fingerprintString(ctx, "initially_valid"); + _fingerprintString(ctx, "true"); + } -static void -_fingerprintAlterCollationStmt(FingerprintContext *ctx, const AlterCollationStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->collname != NULL && node->collname->length > 0) { + if (node->is_no_inherit) { + _fingerprintString(ctx, "is_no_inherit"); + _fingerprintString(ctx, "true"); + } + + if (node->keys != NULL && node->keys->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "collname"); + _fingerprintString(ctx, "keys"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->collname, node, "collname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->collname) == 1 && linitial(node->collname) == NIL)) { + _fingerprintNode(ctx, node->keys, node, "keys", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->keys) == 1 && linitial(node->keys) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} + // Intentionally ignoring node->location for fingerprinting -static void -_fingerprintCallStmt(FingerprintContext *ctx, const CallStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->funccall != NULL) { + if (node->nulls_not_distinct) { + _fingerprintString(ctx, "nulls_not_distinct"); + _fingerprintString(ctx, "true"); + } + + if (node->old_conpfeqop != NULL && node->old_conpfeqop->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funccall"); + _fingerprintString(ctx, "old_conpfeqop"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintFuncCall(ctx, node->funccall, node, "funccall", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->old_conpfeqop, node, "old_conpfeqop", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->old_conpfeqop) == 1 && linitial(node->old_conpfeqop) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->old_pktable_oid != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->old_pktable_oid); + _fingerprintString(ctx, "old_pktable_oid"); + _fingerprintString(ctx, buffer); + } - if (node->funcexpr != NULL) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funcexpr"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintFuncExpr(ctx, node->funcexpr, node, "funcexpr", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->pk_attrs != NULL && node->pk_attrs->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; - if (node->outargs != NULL && node->outargs->length > 0) { + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "pk_attrs"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->pk_attrs, node, "pk_attrs", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->pk_attrs) == 1 && linitial(node->pk_attrs) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->pktable != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "outargs"); + _fingerprintString(ctx, "pktable"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->outargs, node, "outargs", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->outargs) == 1 && linitial(node->outargs) == NIL)) { + _fingerprintRangeVar(ctx, node->pktable, node, "pktable", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} -static void -_fingerprintAlterStatsStmt(FingerprintContext *ctx, const AlterStatsStmt *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->defnames != NULL && node->defnames->length > 0) { + if (node->raw_expr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "defnames"); + _fingerprintString(ctx, "raw_expr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->defnames, node, "defnames", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->defnames) == 1 && linitial(node->defnames) == NIL)) { + _fingerprintNode(ctx, node->raw_expr, node, "raw_expr", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->missing_ok) { - _fingerprintString(ctx, "missing_ok"); - _fingerprintString(ctx, "true"); - } - if (node->stxstattarget != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->stxstattarget); - _fingerprintString(ctx, "stxstattarget"); - _fingerprintString(ctx, buffer); + if (node->reset_default_tblspc) { + _fingerprintString(ctx, "reset_default_tblspc"); + _fingerprintString(ctx, "true"); } -} - -static void -_fingerprintA_Expr(FingerprintContext *ctx, const A_Expr *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (true) { - _fingerprintString(ctx, "kind"); - if (node->kind == AEXPR_OP_ANY || node->kind == AEXPR_IN) - _fingerprintString(ctx, "AEXPR_OP"); - else - _fingerprintString(ctx, _enumToStringA_Expr_Kind(node->kind)); + if (node->skip_validation) { + _fingerprintString(ctx, "skip_validation"); + _fingerprintString(ctx, "true"); } - if (node->lexpr != NULL) { + if (node->where_clause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "lexpr"); + _fingerprintString(ctx, "where_clause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->lexpr, node, "lexpr", depth + 1); + _fingerprintNode(ctx, node->where_clause, node, "where_clause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -9446,33 +9387,38 @@ _fingerprintA_Expr(FingerprintContext *ctx, const A_Expr *node, const void *pare XXH3_freeState(prev); } +} + +static void +_fingerprintCreateTableSpaceStmt(FingerprintContext *ctx, const CreateTableSpaceStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ // Intentionally ignoring node->location for fingerprinting - if (node->name != NULL && node->name->length > 0) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "name"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->name, node, "name", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->name) == 1 && linitial(node->name) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->rexpr != NULL) { + if (node->owner != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "rexpr"); + _fingerprintString(ctx, "owner"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->rexpr, node, "rexpr", depth + 1); + _fingerprintRoleSpec(ctx, node->owner, node, "owner", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -9481,141 +9427,181 @@ _fingerprintA_Expr(FingerprintContext *ctx, const A_Expr *node, const void *pare XXH3_freeState(prev); } + if (node->tablespacename != NULL) { + _fingerprintString(ctx, "tablespacename"); + _fingerprintString(ctx, node->tablespacename); + } + } static void -_fingerprintColumnRef(FingerprintContext *ctx, const ColumnRef *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintDropTableSpaceStmt(FingerprintContext *ctx, const DropTableSpaceStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->fields != NULL && node->fields->length > 0) { + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); + } + + if (node->tablespacename != NULL) { + _fingerprintString(ctx, "tablespacename"); + _fingerprintString(ctx, node->tablespacename); + } + +} + +static void +_fingerprintAlterTableSpaceOptionsStmt(FingerprintContext *ctx, const AlterTableSpaceOptionsStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->isReset) { + _fingerprintString(ctx, "isReset"); + _fingerprintString(ctx, "true"); + } + + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "fields"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->fields, node, "fields", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fields) == 1 && linitial(node->fields) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting + if (node->tablespacename != NULL) { + _fingerprintString(ctx, "tablespacename"); + _fingerprintString(ctx, node->tablespacename); + } } static void -_fingerprintParamRef(FingerprintContext *ctx, const ParamRef *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterTableMoveAllStmt(FingerprintContext *ctx, const AlterTableMoveAllStmt *node, const void *parent, const char *field_name, unsigned int depth) { - // Intentionally ignoring all fields for fingerprinting -} + if (node->new_tablespacename != NULL) { + _fingerprintString(ctx, "new_tablespacename"); + _fingerprintString(ctx, node->new_tablespacename); + } -static void -_fingerprintFuncCall(FingerprintContext *ctx, const FuncCall *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->agg_distinct) { - _fingerprintString(ctx, "agg_distinct"); + if (node->nowait) { + _fingerprintString(ctx, "nowait"); _fingerprintString(ctx, "true"); } - if (node->agg_filter != NULL) { + if (true) { + _fingerprintString(ctx, "objtype"); + _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); + } + + if (node->orig_tablespacename != NULL) { + _fingerprintString(ctx, "orig_tablespacename"); + _fingerprintString(ctx, node->orig_tablespacename); + } + + if (node->roles != NULL && node->roles->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "agg_filter"); + _fingerprintString(ctx, "roles"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->agg_filter, node, "agg_filter", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->agg_order != NULL && node->agg_order->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "agg_order"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->agg_order, node, "agg_order", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->agg_order) == 1 && linitial(node->agg_order) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - if (node->agg_star) { - _fingerprintString(ctx, "agg_star"); - _fingerprintString(ctx, "true"); +static void +_fingerprintCreateExtensionStmt(FingerprintContext *ctx, const CreateExtensionStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->extname != NULL) { + _fingerprintString(ctx, "extname"); + _fingerprintString(ctx, node->extname); } - if (node->agg_within_group) { - _fingerprintString(ctx, "agg_within_group"); + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); _fingerprintString(ctx, "true"); } - if (node->args != NULL && node->args->length > 0) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "args"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->args, node, "args", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->func_variadic) { - _fingerprintString(ctx, "func_variadic"); - _fingerprintString(ctx, "true"); - } +} - if (true) { - _fingerprintString(ctx, "funcformat"); - _fingerprintString(ctx, _enumToStringCoercionForm(node->funcformat)); +static void +_fingerprintAlterExtensionStmt(FingerprintContext *ctx, const AlterExtensionStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->extname != NULL) { + _fingerprintString(ctx, "extname"); + _fingerprintString(ctx, node->extname); } - if (node->funcname != NULL && node->funcname->length > 0) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funcname"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->funcname, node, "funcname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funcname) == 1 && linitial(node->funcname) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting +} - if (node->over != NULL) { +static void +_fingerprintAlterExtensionContentsStmt(FingerprintContext *ctx, const AlterExtensionContentsStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->action != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->action); + _fingerprintString(ctx, "action"); + _fingerprintString(ctx, buffer); + } + + if (node->extname != NULL) { + _fingerprintString(ctx, "extname"); + _fingerprintString(ctx, node->extname); + } + + if (node->object != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "over"); + _fingerprintString(ctx, "object"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintWindowDef(ctx, node->over, node, "over", depth + 1); + _fingerprintNode(ctx, node->object, node, "object", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -9624,87 +9610,89 @@ _fingerprintFuncCall(FingerprintContext *ctx, const FuncCall *node, const void * XXH3_freeState(prev); } -} + if (true) { + _fingerprintString(ctx, "objtype"); + _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); + } -static void -_fingerprintA_Star(FingerprintContext *ctx, const A_Star *node, const void *parent, const char *field_name, unsigned int depth) -{ } static void -_fingerprintA_Indices(FingerprintContext *ctx, const A_Indices *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreateFdwStmt(FingerprintContext *ctx, const CreateFdwStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->is_slice) { - _fingerprintString(ctx, "is_slice"); - _fingerprintString(ctx, "true"); + if (node->fdwname != NULL) { + _fingerprintString(ctx, "fdwname"); + _fingerprintString(ctx, node->fdwname); } - if (node->lidx != NULL) { + if (node->func_options != NULL && node->func_options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "lidx"); + _fingerprintString(ctx, "func_options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->lidx, node, "lidx", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->func_options, node, "func_options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->func_options) == 1 && linitial(node->func_options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->uidx != NULL) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "uidx"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->uidx, node, "uidx", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - } static void -_fingerprintA_Indirection(FingerprintContext *ctx, const A_Indirection *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterFdwStmt(FingerprintContext *ctx, const AlterFdwStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->arg != NULL) { + if (node->fdwname != NULL) { + _fingerprintString(ctx, "fdwname"); + _fingerprintString(ctx, node->fdwname); + } + + if (node->func_options != NULL && node->func_options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "arg"); + _fingerprintString(ctx, "func_options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->func_options, node, "func_options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->func_options) == 1 && linitial(node->func_options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->indirection != NULL && node->indirection->length > 0) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "indirection"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->indirection, node, "indirection", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indirection) == 1 && linitial(node->indirection) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); @@ -9714,121 +9702,153 @@ _fingerprintA_Indirection(FingerprintContext *ctx, const A_Indirection *node, co } static void -_fingerprintA_ArrayExpr(FingerprintContext *ctx, const A_ArrayExpr *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreateForeignServerStmt(FingerprintContext *ctx, const CreateForeignServerStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->elements != NULL && node->elements->length > 0) { + if (node->fdwname != NULL) { + _fingerprintString(ctx, "fdwname"); + _fingerprintString(ctx, node->fdwname); + } + + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); + _fingerprintString(ctx, "true"); + } + + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "elements"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->elements, node, "elements", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->elements) == 1 && linitial(node->elements) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting + if (node->servername != NULL) { + _fingerprintString(ctx, "servername"); + _fingerprintString(ctx, node->servername); + } + + if (node->servertype != NULL) { + _fingerprintString(ctx, "servertype"); + _fingerprintString(ctx, node->servertype); + } + + if (node->version != NULL) { + _fingerprintString(ctx, "version"); + _fingerprintString(ctx, node->version); + } } static void -_fingerprintResTarget(FingerprintContext *ctx, const ResTarget *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterForeignServerStmt(FingerprintContext *ctx, const AlterForeignServerStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->indirection != NULL && node->indirection->length > 0) { + if (node->has_version) { + _fingerprintString(ctx, "has_version"); + _fingerprintString(ctx, "true"); + } + + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "indirection"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->indirection, node, "indirection", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indirection) == 1 && linitial(node->indirection) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting + if (node->servername != NULL) { + _fingerprintString(ctx, "servername"); + _fingerprintString(ctx, node->servername); + } - if (node->name != NULL && (field_name == NULL || parent == NULL || !IsA(parent, SelectStmt) || strcmp(field_name, "targetList") != 0)) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); + if (node->version != NULL) { + _fingerprintString(ctx, "version"); + _fingerprintString(ctx, node->version); } - if (node->val != NULL) { +} + +static void +_fingerprintCreateForeignTableStmt(FingerprintContext *ctx, const CreateForeignTableStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + _fingerprintString(ctx, "base"); + _fingerprintCreateStmt(ctx, (const CreateStmt*) &node->base, node, "base", depth); + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "val"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->val, node, "val", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->servername != NULL) { + _fingerprintString(ctx, "servername"); + _fingerprintString(ctx, node->servername); + } } static void -_fingerprintMultiAssignRef(FingerprintContext *ctx, const MultiAssignRef *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreateUserMappingStmt(FingerprintContext *ctx, const CreateUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->colno != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->colno); - _fingerprintString(ctx, "colno"); - _fingerprintString(ctx, buffer); - } - - if (node->ncolumns != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->ncolumns); - _fingerprintString(ctx, "ncolumns"); - _fingerprintString(ctx, buffer); + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); + _fingerprintString(ctx, "true"); } - if (node->source != NULL) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "source"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->source, node, "source", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->servername != NULL) { + _fingerprintString(ctx, "servername"); + _fingerprintString(ctx, node->servername); + } -} - -static void -_fingerprintTypeCast(FingerprintContext *ctx, const TypeCast *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->arg != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + if (node->user != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "arg"); + _fingerprintString(ctx, "user"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + _fingerprintRoleSpec(ctx, node->user, node, "user", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -9837,39 +9857,41 @@ _fingerprintTypeCast(FingerprintContext *ctx, const TypeCast *node, const void * XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting +} - if (node->typeName != NULL) { +static void +_fingerprintAlterUserMappingStmt(FingerprintContext *ctx, const AlterUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typeName"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->servername != NULL) { + _fingerprintString(ctx, "servername"); + _fingerprintString(ctx, node->servername); + } -} - -static void -_fingerprintCollateClause(FingerprintContext *ctx, const CollateClause *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->arg != NULL) { + if (node->user != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "arg"); + _fingerprintString(ctx, "user"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); + _fingerprintRoleSpec(ctx, node->user, node, "user", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -9878,68 +9900,89 @@ _fingerprintCollateClause(FingerprintContext *ctx, const CollateClause *node, co XXH3_freeState(prev); } - if (node->collname != NULL && node->collname->length > 0) { +} + +static void +_fingerprintDropUserMappingStmt(FingerprintContext *ctx, const DropUserMappingStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); + } + + if (node->servername != NULL) { + _fingerprintString(ctx, "servername"); + _fingerprintString(ctx, node->servername); + } + + if (node->user != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "collname"); + _fingerprintString(ctx, "user"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->collname, node, "collname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->collname) == 1 && linitial(node->collname) == NIL)) { + _fingerprintRoleSpec(ctx, node->user, node, "user", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting } static void -_fingerprintSortBy(FingerprintContext *ctx, const SortBy *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintImportForeignSchemaStmt(FingerprintContext *ctx, const ImportForeignSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth) { - // Intentionally ignoring node->location for fingerprinting + if (true) { + _fingerprintString(ctx, "list_type"); + _fingerprintString(ctx, _enumToStringImportForeignSchemaType(node->list_type)); + } - if (node->node != NULL) { + if (node->local_schema != NULL) { + _fingerprintString(ctx, "local_schema"); + _fingerprintString(ctx, node->local_schema); + } + + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "node"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->node, node, "node", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (true) { - _fingerprintString(ctx, "sortby_dir"); - _fingerprintString(ctx, _enumToStringSortByDir(node->sortby_dir)); + if (node->remote_schema != NULL) { + _fingerprintString(ctx, "remote_schema"); + _fingerprintString(ctx, node->remote_schema); } - if (true) { - _fingerprintString(ctx, "sortby_nulls"); - _fingerprintString(ctx, _enumToStringSortByNulls(node->sortby_nulls)); + if (node->server_name != NULL) { + _fingerprintString(ctx, "server_name"); + _fingerprintString(ctx, node->server_name); } - if (node->useOp != NULL && node->useOp->length > 0) { + if (node->table_list != NULL && node->table_list->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "useOp"); + _fingerprintString(ctx, "table_list"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->useOp, node, "useOp", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->useOp) == 1 && linitial(node->useOp) == NIL)) { + _fingerprintNode(ctx, node->table_list, node, "table_list", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->table_list) == 1 && linitial(node->table_list) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); @@ -9949,17 +9992,32 @@ _fingerprintSortBy(FingerprintContext *ctx, const SortBy *node, const void *pare } static void -_fingerprintWindowDef(FingerprintContext *ctx, const WindowDef *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreatePolicyStmt(FingerprintContext *ctx, const CreatePolicyStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->endOffset != NULL) { + if (node->cmd_name != NULL) { + _fingerprintString(ctx, "cmd_name"); + _fingerprintString(ctx, node->cmd_name); + } + + if (node->permissive) { + _fingerprintString(ctx, "permissive"); + _fingerprintString(ctx, "true"); + } + + if (node->policy_name != NULL) { + _fingerprintString(ctx, "policy_name"); + _fingerprintString(ctx, node->policy_name); + } + + if (node->qual != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "endOffset"); + _fingerprintString(ctx, "qual"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->endOffset, node, "endOffset", depth + 1); + _fingerprintNode(ctx, node->qual, node, "qual", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -9968,66 +10026,48 @@ _fingerprintWindowDef(FingerprintContext *ctx, const WindowDef *node, const void XXH3_freeState(prev); } - if (node->frameOptions != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->frameOptions); - _fingerprintString(ctx, "frameOptions"); - _fingerprintString(ctx, buffer); - } - - // Intentionally ignoring node->location for fingerprinting - - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } - - if (node->orderClause != NULL && node->orderClause->length > 0) { + if (node->roles != NULL && node->roles->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "orderClause"); + _fingerprintString(ctx, "roles"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->orderClause, node, "orderClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->orderClause) == 1 && linitial(node->orderClause) == NIL)) { + _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->partitionClause != NULL && node->partitionClause->length > 0) { + if (node->table != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "partitionClause"); + _fingerprintString(ctx, "table"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->partitionClause, node, "partitionClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->partitionClause) == 1 && linitial(node->partitionClause) == NIL)) { + _fingerprintRangeVar(ctx, node->table, node, "table", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->refname != NULL) { - _fingerprintString(ctx, "refname"); - _fingerprintString(ctx, node->refname); - } - if (node->startOffset != NULL) { + if (node->with_check != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "startOffset"); + _fingerprintString(ctx, "with_check"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->startOffset, node, "startOffset", depth + 1); + _fingerprintNode(ctx, node->with_check, node, "with_check", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -10039,17 +10079,22 @@ _fingerprintWindowDef(FingerprintContext *ctx, const WindowDef *node, const void } static void -_fingerprintRangeSubselect(FingerprintContext *ctx, const RangeSubselect *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterPolicyStmt(FingerprintContext *ctx, const AlterPolicyStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->alias != NULL) { + if (node->policy_name != NULL) { + _fingerprintString(ctx, "policy_name"); + _fingerprintString(ctx, node->policy_name); + } + + if (node->qual != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "alias"); + _fingerprintString(ctx, "qual"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintAlias(ctx, node->alias, node, "alias", depth + 1); + _fingerprintNode(ctx, node->qual, node, "qual", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -10058,42 +10103,31 @@ _fingerprintRangeSubselect(FingerprintContext *ctx, const RangeSubselect *node, XXH3_freeState(prev); } - if (node->lateral) { - _fingerprintString(ctx, "lateral"); - _fingerprintString(ctx, "true"); - } - - if (node->subquery != NULL) { + if (node->roles != NULL && node->roles->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "subquery"); + _fingerprintString(ctx, "roles"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->subquery, node, "subquery", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - -} - -static void -_fingerprintRangeFunction(FingerprintContext *ctx, const RangeFunction *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->alias != NULL) { + if (node->table != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "alias"); + _fingerprintString(ctx, "table"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintAlias(ctx, node->alias, node, "alias", depth + 1); + _fingerprintRangeVar(ctx, node->table, node, "table", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -10102,57 +10136,59 @@ _fingerprintRangeFunction(FingerprintContext *ctx, const RangeFunction *node, co XXH3_freeState(prev); } - if (node->coldeflist != NULL && node->coldeflist->length > 0) { + if (node->with_check != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "coldeflist"); + _fingerprintString(ctx, "with_check"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->coldeflist, node, "coldeflist", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->coldeflist) == 1 && linitial(node->coldeflist) == NIL)) { + _fingerprintNode(ctx, node->with_check, node, "with_check", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->functions != NULL && node->functions->length > 0) { + +} + +static void +_fingerprintCreateAmStmt(FingerprintContext *ctx, const CreateAmStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->amname != NULL) { + _fingerprintString(ctx, "amname"); + _fingerprintString(ctx, node->amname); + } + + if (node->amtype != 0) { + char buffer[2] = {node->amtype, '\0'}; + _fingerprintString(ctx, "amtype"); + _fingerprintString(ctx, buffer); + } + + if (node->handler_name != NULL && node->handler_name->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "functions"); + _fingerprintString(ctx, "handler_name"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->functions, node, "functions", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->functions) == 1 && linitial(node->functions) == NIL)) { + _fingerprintNode(ctx, node->handler_name, node, "handler_name", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->handler_name) == 1 && linitial(node->handler_name) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->is_rowsfrom) { - _fingerprintString(ctx, "is_rowsfrom"); - _fingerprintString(ctx, "true"); - } - - if (node->lateral) { - _fingerprintString(ctx, "lateral"); - _fingerprintString(ctx, "true"); - } - - if (node->ordinality) { - _fingerprintString(ctx, "ordinality"); - _fingerprintString(ctx, "true"); - } - } static void -_fingerprintRangeTableSample(FingerprintContext *ctx, const RangeTableSample *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreateTrigStmt(FingerprintContext *ctx, const CreateTrigStmt *node, const void *parent, const char *field_name, unsigned int depth) { if (node->args != NULL && node->args->length > 0) { XXH3_state_t* prev = XXH3_createState(); @@ -10170,33 +10206,31 @@ _fingerprintRangeTableSample(FingerprintContext *ctx, const RangeTableSample *no } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting - - if (node->method != NULL && node->method->length > 0) { + if (node->columns != NULL && node->columns->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "method"); + _fingerprintString(ctx, "columns"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->method, node, "method", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->method) == 1 && linitial(node->method) == NIL)) { + _fingerprintNode(ctx, node->columns, node, "columns", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->columns) == 1 && linitial(node->columns) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->relation != NULL) { + if (node->constrrel != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "constrrel"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->relation, node, "relation", depth + 1); + _fingerprintRangeVar(ctx, node->constrrel, node, "constrrel", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -10205,37 +10239,53 @@ _fingerprintRangeTableSample(FingerprintContext *ctx, const RangeTableSample *no XXH3_freeState(prev); } - if (node->repeatable != NULL) { + if (node->deferrable) { + _fingerprintString(ctx, "deferrable"); + _fingerprintString(ctx, "true"); + } + + if (node->events != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->events); + _fingerprintString(ctx, "events"); + _fingerprintString(ctx, buffer); + } + + if (node->funcname != NULL && node->funcname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "repeatable"); + _fingerprintString(ctx, "funcname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->repeatable, node, "repeatable", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->funcname, node, "funcname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funcname) == 1 && linitial(node->funcname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->initdeferred) { + _fingerprintString(ctx, "initdeferred"); + _fingerprintString(ctx, "true"); + } -} + if (node->isconstraint) { + _fingerprintString(ctx, "isconstraint"); + _fingerprintString(ctx, "true"); + } -static void -_fingerprintRangeTableFunc(FingerprintContext *ctx, const RangeTableFunc *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->alias != NULL) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "alias"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintAlias(ctx, node->alias, node, "alias", depth + 1); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -10244,31 +10294,53 @@ _fingerprintRangeTableFunc(FingerprintContext *ctx, const RangeTableFunc *node, XXH3_freeState(prev); } - if (node->columns != NULL && node->columns->length > 0) { + if (node->replace) { + _fingerprintString(ctx, "replace"); + _fingerprintString(ctx, "true"); + } + + if (node->row) { + _fingerprintString(ctx, "row"); + _fingerprintString(ctx, "true"); + } + + if (node->timing != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->timing); + _fingerprintString(ctx, "timing"); + _fingerprintString(ctx, buffer); + } + + if (node->transitionRels != NULL && node->transitionRels->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "columns"); + _fingerprintString(ctx, "transitionRels"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->columns, node, "columns", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->columns) == 1 && linitial(node->columns) == NIL)) { + _fingerprintNode(ctx, node->transitionRels, node, "transitionRels", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->transitionRels) == 1 && linitial(node->transitionRels) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->docexpr != NULL) { + if (node->trigname != NULL) { + _fingerprintString(ctx, "trigname"); + _fingerprintString(ctx, node->trigname); + } + + if (node->whenClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "docexpr"); + _fingerprintString(ctx, "whenClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->docexpr, node, "docexpr", depth + 1); + _fingerprintNode(ctx, node->whenClause, node, "whenClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -10277,212 +10349,205 @@ _fingerprintRangeTableFunc(FingerprintContext *ctx, const RangeTableFunc *node, XXH3_freeState(prev); } - if (node->lateral) { - _fingerprintString(ctx, "lateral"); - _fingerprintString(ctx, "true"); - } +} - // Intentionally ignoring node->location for fingerprinting +static void +_fingerprintCreateEventTrigStmt(FingerprintContext *ctx, const CreateEventTrigStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->eventname != NULL) { + _fingerprintString(ctx, "eventname"); + _fingerprintString(ctx, node->eventname); + } - if (node->namespaces != NULL && node->namespaces->length > 0) { + if (node->funcname != NULL && node->funcname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "namespaces"); + _fingerprintString(ctx, "funcname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->namespaces, node, "namespaces", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->namespaces) == 1 && linitial(node->namespaces) == NIL)) { + _fingerprintNode(ctx, node->funcname, node, "funcname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funcname) == 1 && linitial(node->funcname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->rowexpr != NULL) { + if (node->trigname != NULL) { + _fingerprintString(ctx, "trigname"); + _fingerprintString(ctx, node->trigname); + } + + if (node->whenclause != NULL && node->whenclause->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "rowexpr"); + _fingerprintString(ctx, "whenclause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->rowexpr, node, "rowexpr", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->whenclause, node, "whenclause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->whenclause) == 1 && linitial(node->whenclause) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} + +static void +_fingerprintAlterEventTrigStmt(FingerprintContext *ctx, const AlterEventTrigStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->tgenabled != 0) { + char buffer[2] = {node->tgenabled, '\0'}; + _fingerprintString(ctx, "tgenabled"); + _fingerprintString(ctx, buffer); + } + + if (node->trigname != NULL) { + _fingerprintString(ctx, "trigname"); + _fingerprintString(ctx, node->trigname); + } } static void -_fingerprintRangeTableFuncCol(FingerprintContext *ctx, const RangeTableFuncCol *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreatePLangStmt(FingerprintContext *ctx, const CreatePLangStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->coldefexpr != NULL) { + if (node->plhandler != NULL && node->plhandler->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "coldefexpr"); + _fingerprintString(ctx, "plhandler"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->coldefexpr, node, "coldefexpr", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->plhandler, node, "plhandler", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->plhandler) == 1 && linitial(node->plhandler) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->colexpr != NULL) { + if (node->plinline != NULL && node->plinline->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "colexpr"); + _fingerprintString(ctx, "plinline"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->colexpr, node, "colexpr", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->plinline, node, "plinline", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->plinline) == 1 && linitial(node->plinline) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->colname != NULL) { - _fingerprintString(ctx, "colname"); - _fingerprintString(ctx, node->colname); - } - - if (node->for_ordinality) { - _fingerprintString(ctx, "for_ordinality"); - _fingerprintString(ctx, "true"); + if (node->plname != NULL) { + _fingerprintString(ctx, "plname"); + _fingerprintString(ctx, node->plname); } - if (node->is_not_null) { - _fingerprintString(ctx, "is_not_null"); + if (node->pltrusted) { + _fingerprintString(ctx, "pltrusted"); _fingerprintString(ctx, "true"); } - // Intentionally ignoring node->location for fingerprinting - - if (node->typeName != NULL) { + if (node->plvalidator != NULL && node->plvalidator->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typeName"); + _fingerprintString(ctx, "plvalidator"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->plvalidator, node, "plvalidator", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->plvalidator) == 1 && linitial(node->plvalidator) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->replace) { + _fingerprintString(ctx, "replace"); + _fingerprintString(ctx, "true"); + } } static void -_fingerprintTypeName(FingerprintContext *ctx, const TypeName *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreateRoleStmt(FingerprintContext *ctx, const CreateRoleStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->arrayBounds != NULL && node->arrayBounds->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "arrayBounds"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->arrayBounds, node, "arrayBounds", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->arrayBounds) == 1 && linitial(node->arrayBounds) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - // Intentionally ignoring node->location for fingerprinting - - if (node->names != NULL && node->names->length > 0) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "names"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->names, node, "names", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->names) == 1 && linitial(node->names) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->pct_type) { - _fingerprintString(ctx, "pct_type"); - _fingerprintString(ctx, "true"); + if (node->role != NULL) { + _fingerprintString(ctx, "role"); + _fingerprintString(ctx, node->role); } - if (node->setof) { - _fingerprintString(ctx, "setof"); - _fingerprintString(ctx, "true"); + if (true) { + _fingerprintString(ctx, "stmt_type"); + _fingerprintString(ctx, _enumToStringRoleStmtType(node->stmt_type)); } - if (node->typeOid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->typeOid); - _fingerprintString(ctx, "typeOid"); - _fingerprintString(ctx, buffer); - } +} - if (node->typemod != 0) { +static void +_fingerprintAlterRoleStmt(FingerprintContext *ctx, const AlterRoleStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->action != 0) { char buffer[50]; - sprintf(buffer, "%d", node->typemod); - _fingerprintString(ctx, "typemod"); + sprintf(buffer, "%d", node->action); + _fingerprintString(ctx, "action"); _fingerprintString(ctx, buffer); } - if (node->typmods != NULL && node->typmods->length > 0) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typmods"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->typmods, node, "typmods", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typmods) == 1 && linitial(node->typmods) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} - -static void -_fingerprintColumnDef(FingerprintContext *ctx, const ColumnDef *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->collClause != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + if (node->role != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "collClause"); + _fingerprintString(ctx, "role"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintCollateClause(ctx, node->collClause, node, "collClause", depth + 1); + _fingerprintRoleSpec(ctx, node->role, node, "role", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -10491,48 +10556,42 @@ _fingerprintColumnDef(FingerprintContext *ctx, const ColumnDef *node, const void XXH3_freeState(prev); } - if (node->collOid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->collOid); - _fingerprintString(ctx, "collOid"); - _fingerprintString(ctx, buffer); - } - - if (node->colname != NULL) { - _fingerprintString(ctx, "colname"); - _fingerprintString(ctx, node->colname); - } +} - if (node->compression != NULL) { - _fingerprintString(ctx, "compression"); - _fingerprintString(ctx, node->compression); +static void +_fingerprintAlterRoleSetStmt(FingerprintContext *ctx, const AlterRoleSetStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->database != NULL) { + _fingerprintString(ctx, "database"); + _fingerprintString(ctx, node->database); } - if (node->constraints != NULL && node->constraints->length > 0) { + if (node->role != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "constraints"); + _fingerprintString(ctx, "role"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->constraints, node, "constraints", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->constraints) == 1 && linitial(node->constraints) == NIL)) { + _fingerprintRoleSpec(ctx, node->role, node, "role", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->cooked_default != NULL) { + + if (node->setstmt != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cooked_default"); + _fingerprintString(ctx, "setstmt"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->cooked_default, node, "cooked_default", depth + 1); + _fingerprintVariableSetStmt(ctx, node->setstmt, node, "setstmt", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -10541,107 +10600,127 @@ _fingerprintColumnDef(FingerprintContext *ctx, const ColumnDef *node, const void XXH3_freeState(prev); } - if (node->fdwoptions != NULL && node->fdwoptions->length > 0) { +} + +static void +_fingerprintDropRoleStmt(FingerprintContext *ctx, const DropRoleStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); + } + + if (node->roles != NULL && node->roles->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "fdwoptions"); + _fingerprintString(ctx, "roles"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->fdwoptions, node, "fdwoptions", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fdwoptions) == 1 && linitial(node->fdwoptions) == NIL)) { + _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->generated != 0) { - char buffer[2] = {node->generated, '\0'}; - _fingerprintString(ctx, "generated"); - _fingerprintString(ctx, buffer); +} + +static void +_fingerprintCreateSeqStmt(FingerprintContext *ctx, const CreateSeqStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->for_identity) { + _fingerprintString(ctx, "for_identity"); + _fingerprintString(ctx, "true"); } - if (node->identity != 0) { - char buffer[2] = {node->identity, '\0'}; - _fingerprintString(ctx, "identity"); - _fingerprintString(ctx, buffer); + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); + _fingerprintString(ctx, "true"); } - if (node->identitySequence != NULL) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "identitySequence"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->identitySequence, node, "identitySequence", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->inhcount != 0) { + if (node->ownerId != 0) { char buffer[50]; - sprintf(buffer, "%d", node->inhcount); - _fingerprintString(ctx, "inhcount"); + sprintf(buffer, "%d", node->ownerId); + _fingerprintString(ctx, "ownerId"); _fingerprintString(ctx, buffer); } - if (node->is_from_type) { - _fingerprintString(ctx, "is_from_type"); - _fingerprintString(ctx, "true"); + if (node->sequence != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "sequence"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRangeVar(ctx, node->sequence, node, "sequence", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } - if (node->is_local) { - _fingerprintString(ctx, "is_local"); +} + +static void +_fingerprintAlterSeqStmt(FingerprintContext *ctx, const AlterSeqStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->for_identity) { + _fingerprintString(ctx, "for_identity"); _fingerprintString(ctx, "true"); } - if (node->is_not_null) { - _fingerprintString(ctx, "is_not_null"); + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); _fingerprintString(ctx, "true"); } - // Intentionally ignoring node->location for fingerprinting - - if (node->raw_default != NULL) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "raw_default"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->raw_default, node, "raw_default", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->storage != 0) { - char buffer[2] = {node->storage, '\0'}; - _fingerprintString(ctx, "storage"); - _fingerprintString(ctx, buffer); - } - - if (node->typeName != NULL) { + if (node->sequence != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typeName"); + _fingerprintString(ctx, "sequence"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); + _fingerprintRangeVar(ctx, node->sequence, node, "sequence", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -10653,350 +10732,304 @@ _fingerprintColumnDef(FingerprintContext *ctx, const ColumnDef *node, const void } static void -_fingerprintIndexElem(FingerprintContext *ctx, const IndexElem *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintDefineStmt(FingerprintContext *ctx, const DefineStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->collation != NULL && node->collation->length > 0) { + if (node->args != NULL && node->args->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "collation"); + _fingerprintString(ctx, "args"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->collation, node, "collation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->collation) == 1 && linitial(node->collation) == NIL)) { + _fingerprintNode(ctx, node->args, node, "args", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->expr != NULL) { + if (node->definition != NULL && node->definition->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "expr"); + _fingerprintString(ctx, "definition"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->expr, node, "expr", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->definition, node, "definition", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->definition) == 1 && linitial(node->definition) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->defnames != NULL && node->defnames->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; - if (node->indexcolname != NULL) { - _fingerprintString(ctx, "indexcolname"); - _fingerprintString(ctx, node->indexcolname); - } + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "defnames"); - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->defnames, node, "defnames", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->defnames) == 1 && linitial(node->defnames) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); + _fingerprintString(ctx, "true"); } if (true) { - _fingerprintString(ctx, "nulls_ordering"); - _fingerprintString(ctx, _enumToStringSortByNulls(node->nulls_ordering)); + _fingerprintString(ctx, "kind"); + _fingerprintString(ctx, _enumToStringObjectType(node->kind)); } - if (node->opclass != NULL && node->opclass->length > 0) { + if (node->oldstyle) { + _fingerprintString(ctx, "oldstyle"); + _fingerprintString(ctx, "true"); + } + + if (node->replace) { + _fingerprintString(ctx, "replace"); + _fingerprintString(ctx, "true"); + } + +} + +static void +_fingerprintCreateDomainStmt(FingerprintContext *ctx, const CreateDomainStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->collClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "opclass"); + _fingerprintString(ctx, "collClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->opclass, node, "opclass", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opclass) == 1 && linitial(node->opclass) == NIL)) { + _fingerprintCollateClause(ctx, node->collClause, node, "collClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->opclassopts != NULL && node->opclassopts->length > 0) { + + if (node->constraints != NULL && node->constraints->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "opclassopts"); + _fingerprintString(ctx, "constraints"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->opclassopts, node, "opclassopts", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opclassopts) == 1 && linitial(node->opclassopts) == NIL)) { + _fingerprintNode(ctx, node->constraints, node, "constraints", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->constraints) == 1 && linitial(node->constraints) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "ordering"); - _fingerprintString(ctx, _enumToStringSortByDir(node->ordering)); - } - -} - -static void -_fingerprintStatsElem(FingerprintContext *ctx, const StatsElem *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->expr != NULL) { + if (node->domainname != NULL && node->domainname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "expr"); + _fingerprintString(ctx, "domainname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->expr, node, "expr", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->domainname, node, "domainname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->domainname) == 1 && linitial(node->domainname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } - -} - -static void -_fingerprintConstraint(FingerprintContext *ctx, const Constraint *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->access_method != NULL) { - _fingerprintString(ctx, "access_method"); - _fingerprintString(ctx, node->access_method); - } - - if (node->conname != NULL) { - _fingerprintString(ctx, "conname"); - _fingerprintString(ctx, node->conname); - } - - if (true) { - _fingerprintString(ctx, "contype"); - _fingerprintString(ctx, _enumToStringConstrType(node->contype)); - } - - if (node->cooked_expr != NULL) { - _fingerprintString(ctx, "cooked_expr"); - _fingerprintString(ctx, node->cooked_expr); - } - - if (node->deferrable) { - _fingerprintString(ctx, "deferrable"); - _fingerprintString(ctx, "true"); - } - - if (node->exclusions != NULL && node->exclusions->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + if (node->typeName != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "exclusions"); + _fingerprintString(ctx, "typeName"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->exclusions, node, "exclusions", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->exclusions) == 1 && linitial(node->exclusions) == NIL)) { + _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->fk_attrs != NULL && node->fk_attrs->length > 0) { + +} + +static void +_fingerprintCreateOpClassStmt(FingerprintContext *ctx, const CreateOpClassStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->amname != NULL) { + _fingerprintString(ctx, "amname"); + _fingerprintString(ctx, node->amname); + } + + if (node->datatype != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "fk_attrs"); + _fingerprintString(ctx, "datatype"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->fk_attrs, node, "fk_attrs", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fk_attrs) == 1 && linitial(node->fk_attrs) == NIL)) { + _fingerprintTypeName(ctx, node->datatype, node, "datatype", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->fk_del_action != 0) { - char buffer[2] = {node->fk_del_action, '\0'}; - _fingerprintString(ctx, "fk_del_action"); - _fingerprintString(ctx, buffer); + + if (node->isDefault) { + _fingerprintString(ctx, "isDefault"); + _fingerprintString(ctx, "true"); } - if (node->fk_del_set_cols != NULL && node->fk_del_set_cols->length > 0) { + if (node->items != NULL && node->items->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "fk_del_set_cols"); + _fingerprintString(ctx, "items"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->fk_del_set_cols, node, "fk_del_set_cols", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->fk_del_set_cols) == 1 && linitial(node->fk_del_set_cols) == NIL)) { + _fingerprintNode(ctx, node->items, node, "items", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->items) == 1 && linitial(node->items) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->fk_matchtype != 0) { - char buffer[2] = {node->fk_matchtype, '\0'}; - _fingerprintString(ctx, "fk_matchtype"); - _fingerprintString(ctx, buffer); - } - - if (node->fk_upd_action != 0) { - char buffer[2] = {node->fk_upd_action, '\0'}; - _fingerprintString(ctx, "fk_upd_action"); - _fingerprintString(ctx, buffer); - } - - if (node->generated_when != 0) { - char buffer[2] = {node->generated_when, '\0'}; - _fingerprintString(ctx, "generated_when"); - _fingerprintString(ctx, buffer); - } - - if (node->including != NULL && node->including->length > 0) { + if (node->opclassname != NULL && node->opclassname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "including"); + _fingerprintString(ctx, "opclassname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->including, node, "including", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->including) == 1 && linitial(node->including) == NIL)) { + _fingerprintNode(ctx, node->opclassname, node, "opclassname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opclassname) == 1 && linitial(node->opclassname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->indexname != NULL) { - _fingerprintString(ctx, "indexname"); - _fingerprintString(ctx, node->indexname); - } - - if (node->indexspace != NULL) { - _fingerprintString(ctx, "indexspace"); - _fingerprintString(ctx, node->indexspace); - } - - if (node->initdeferred) { - _fingerprintString(ctx, "initdeferred"); - _fingerprintString(ctx, "true"); - } - - if (node->initially_valid) { - _fingerprintString(ctx, "initially_valid"); - _fingerprintString(ctx, "true"); - } - - if (node->is_no_inherit) { - _fingerprintString(ctx, "is_no_inherit"); - _fingerprintString(ctx, "true"); - } - - if (node->keys != NULL && node->keys->length > 0) { + if (node->opfamilyname != NULL && node->opfamilyname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "keys"); + _fingerprintString(ctx, "opfamilyname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->keys, node, "keys", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->keys) == 1 && linitial(node->keys) == NIL)) { + _fingerprintNode(ctx, node->opfamilyname, node, "opfamilyname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opfamilyname) == 1 && linitial(node->opfamilyname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting - - if (node->nulls_not_distinct) { - _fingerprintString(ctx, "nulls_not_distinct"); - _fingerprintString(ctx, "true"); - } +} - if (node->old_conpfeqop != NULL && node->old_conpfeqop->length > 0) { +static void +_fingerprintCreateOpClassItem(FingerprintContext *ctx, const CreateOpClassItem *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->class_args != NULL && node->class_args->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "old_conpfeqop"); + _fingerprintString(ctx, "class_args"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->old_conpfeqop, node, "old_conpfeqop", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->old_conpfeqop) == 1 && linitial(node->old_conpfeqop) == NIL)) { + _fingerprintNode(ctx, node->class_args, node, "class_args", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->class_args) == 1 && linitial(node->class_args) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->old_pktable_oid != 0) { + if (node->itemtype != 0) { char buffer[50]; - sprintf(buffer, "%d", node->old_pktable_oid); - _fingerprintString(ctx, "old_pktable_oid"); + sprintf(buffer, "%d", node->itemtype); + _fingerprintString(ctx, "itemtype"); _fingerprintString(ctx, buffer); } - if (node->options != NULL && node->options->length > 0) { + if (node->name != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "options"); + _fingerprintString(ctx, "name"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->options, node, "options", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + _fingerprintObjectWithArgs(ctx, node->name, node, "name", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->pk_attrs != NULL && node->pk_attrs->length > 0) { + + if (node->number != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->number); + _fingerprintString(ctx, "number"); + _fingerprintString(ctx, buffer); + } + + if (node->order_family != NULL && node->order_family->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "pk_attrs"); + _fingerprintString(ctx, "order_family"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->pk_attrs, node, "pk_attrs", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->pk_attrs) == 1 && linitial(node->pk_attrs) == NIL)) { + _fingerprintNode(ctx, node->order_family, node, "order_family", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->order_family) == 1 && linitial(node->order_family) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->pktable != NULL) { + if (node->storedtype != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "pktable"); + _fingerprintString(ctx, "storedtype"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->pktable, node, "pktable", depth + 1); + _fingerprintTypeName(ctx, node->storedtype, node, "storedtype", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -11005,199 +11038,202 @@ _fingerprintConstraint(FingerprintContext *ctx, const Constraint *node, const vo XXH3_freeState(prev); } - if (node->raw_expr != NULL) { +} + +static void +_fingerprintCreateOpFamilyStmt(FingerprintContext *ctx, const CreateOpFamilyStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->amname != NULL) { + _fingerprintString(ctx, "amname"); + _fingerprintString(ctx, node->amname); + } + + if (node->opfamilyname != NULL && node->opfamilyname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "raw_expr"); + _fingerprintString(ctx, "opfamilyname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->raw_expr, node, "raw_expr", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->opfamilyname, node, "opfamilyname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opfamilyname) == 1 && linitial(node->opfamilyname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->reset_default_tblspc) { - _fingerprintString(ctx, "reset_default_tblspc"); - _fingerprintString(ctx, "true"); +static void +_fingerprintAlterOpFamilyStmt(FingerprintContext *ctx, const AlterOpFamilyStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->amname != NULL) { + _fingerprintString(ctx, "amname"); + _fingerprintString(ctx, node->amname); } - if (node->skip_validation) { - _fingerprintString(ctx, "skip_validation"); + if (node->isDrop) { + _fingerprintString(ctx, "isDrop"); _fingerprintString(ctx, "true"); } - if (node->where_clause != NULL) { + if (node->items != NULL && node->items->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "where_clause"); + _fingerprintString(ctx, "items"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->where_clause, node, "where_clause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->items, node, "items", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->items) == 1 && linitial(node->items) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - -} - -static void -_fingerprintDefElem(FingerprintContext *ctx, const DefElem *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->arg != NULL) { + if (node->opfamilyname != NULL && node->opfamilyname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "arg"); + _fingerprintString(ctx, "opfamilyname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->arg, node, "arg", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->opfamilyname, node, "opfamilyname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opfamilyname) == 1 && linitial(node->opfamilyname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} +static void +_fingerprintDropStmt(FingerprintContext *ctx, const DropStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ if (true) { - _fingerprintString(ctx, "defaction"); - _fingerprintString(ctx, _enumToStringDefElemAction(node->defaction)); + _fingerprintString(ctx, "behavior"); + _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); } - if (node->defname != NULL) { - _fingerprintString(ctx, "defname"); - _fingerprintString(ctx, node->defname); + if (node->concurrent) { + _fingerprintString(ctx, "concurrent"); + _fingerprintString(ctx, "true"); } - if (node->defnamespace != NULL) { - _fingerprintString(ctx, "defnamespace"); - _fingerprintString(ctx, node->defnamespace); + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); } - // Intentionally ignoring node->location for fingerprinting - -} - -static void -_fingerprintRangeTblEntry(FingerprintContext *ctx, const RangeTblEntry *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->alias != NULL) { + if (node->objects != NULL && node->objects->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "alias"); + _fingerprintString(ctx, "objects"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintAlias(ctx, node->alias, node, "alias", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->objects, node, "objects", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objects) == 1 && linitial(node->objects) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (true) { + _fingerprintString(ctx, "removeType"); + _fingerprintString(ctx, _enumToStringObjectType(node->removeType)); + } - if (node->checkAsUser != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->checkAsUser); - _fingerprintString(ctx, "checkAsUser"); - _fingerprintString(ctx, buffer); +} + +static void +_fingerprintTruncateStmt(FingerprintContext *ctx, const TruncateStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (true) { + _fingerprintString(ctx, "behavior"); + _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); } - if (node->colcollations != NULL && node->colcollations->length > 0) { + if (node->relations != NULL && node->relations->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "colcollations"); + _fingerprintString(ctx, "relations"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->colcollations, node, "colcollations", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->colcollations) == 1 && linitial(node->colcollations) == NIL)) { + _fingerprintNode(ctx, node->relations, node, "relations", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->relations) == 1 && linitial(node->relations) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->coltypes != NULL && node->coltypes->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; + if (node->restart_seqs) { + _fingerprintString(ctx, "restart_seqs"); + _fingerprintString(ctx, "true"); + } - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "coltypes"); +} - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->coltypes, node, "coltypes", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->coltypes) == 1 && linitial(node->coltypes) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); +static void +_fingerprintCommentStmt(FingerprintContext *ctx, const CommentStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->comment != NULL) { + _fingerprintString(ctx, "comment"); + _fingerprintString(ctx, node->comment); } - if (node->coltypmods != NULL && node->coltypmods->length > 0) { + + if (node->object != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "coltypmods"); + _fingerprintString(ctx, "object"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->coltypmods, node, "coltypmods", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->coltypmods) == 1 && linitial(node->coltypmods) == NIL)) { + _fingerprintNode(ctx, node->object, node, "object", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->ctelevelsup != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->ctelevelsup); - _fingerprintString(ctx, "ctelevelsup"); - _fingerprintString(ctx, buffer); - } - if (node->ctename != NULL) { - _fingerprintString(ctx, "ctename"); - _fingerprintString(ctx, node->ctename); + if (true) { + _fingerprintString(ctx, "objtype"); + _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); } - if (node->enrname != NULL) { - _fingerprintString(ctx, "enrname"); - _fingerprintString(ctx, node->enrname); - } +} - if (node->enrtuples != 0) { - char buffer[50]; - sprintf(buffer, "%f", node->enrtuples); - _fingerprintString(ctx, "enrtuples"); - _fingerprintString(ctx, buffer); +static void +_fingerprintSecLabelStmt(FingerprintContext *ctx, const SecLabelStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->label != NULL) { + _fingerprintString(ctx, "label"); + _fingerprintString(ctx, node->label); } - if (node->eref != NULL) { + if (node->object != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "eref"); + _fingerprintString(ctx, "object"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintAlias(ctx, node->eref, node, "eref", depth + 1); + _fingerprintNode(ctx, node->object, node, "object", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -11207,230 +11243,270 @@ _fingerprintRangeTblEntry(FingerprintContext *ctx, const RangeTblEntry *node, co } if (true) { - int x; - Bitmapset *bms = bms_copy(node->extraUpdatedCols); + _fingerprintString(ctx, "objtype"); + _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); + } - _fingerprintString(ctx, "extraUpdatedCols"); + if (node->provider != NULL) { + _fingerprintString(ctx, "provider"); + _fingerprintString(ctx, node->provider); + } - while ((x = bms_first_member(bms)) >= 0) { - char buffer[50]; - sprintf(buffer, "%d", x); - _fingerprintString(ctx, buffer); - } +} - bms_free(bms); +static void +_fingerprintDeclareCursorStmt(FingerprintContext *ctx, const DeclareCursorStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->options != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->options); + _fingerprintString(ctx, "options"); + _fingerprintString(ctx, buffer); } - if (node->funcordinality) { - _fingerprintString(ctx, "funcordinality"); - _fingerprintString(ctx, "true"); - } + // Intentionally ignoring node->portalname for fingerprinting - if (node->functions != NULL && node->functions->length > 0) { + if (node->query != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "functions"); + _fingerprintString(ctx, "query"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->functions, node, "functions", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->functions) == 1 && linitial(node->functions) == NIL)) { + _fingerprintNode(ctx, node->query, node, "query", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->inFromCl) { - _fingerprintString(ctx, "inFromCl"); - _fingerprintString(ctx, "true"); + +} + +static void +_fingerprintClosePortalStmt(FingerprintContext *ctx, const ClosePortalStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring node->portalname for fingerprinting + +} + +static void +_fingerprintFetchStmt(FingerprintContext *ctx, const FetchStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (true) { + _fingerprintString(ctx, "direction"); + _fingerprintString(ctx, _enumToStringFetchDirection(node->direction)); } - if (node->inh) { - _fingerprintString(ctx, "inh"); + if (node->howMany != 0) { + char buffer[50]; + sprintf(buffer, "%ld", node->howMany); + _fingerprintString(ctx, "howMany"); + _fingerprintString(ctx, buffer); + } + + if (node->ismove) { + _fingerprintString(ctx, "ismove"); _fingerprintString(ctx, "true"); } - if (true) { - int x; - Bitmapset *bms = bms_copy(node->insertedCols); + // Intentionally ignoring node->portalname for fingerprinting - _fingerprintString(ctx, "insertedCols"); +} - while ((x = bms_first_member(bms)) >= 0) { - char buffer[50]; - sprintf(buffer, "%d", x); - _fingerprintString(ctx, buffer); - } +static void +_fingerprintIndexStmt(FingerprintContext *ctx, const IndexStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->accessMethod != NULL) { + _fingerprintString(ctx, "accessMethod"); + _fingerprintString(ctx, node->accessMethod); + } - bms_free(bms); + if (node->concurrent) { + _fingerprintString(ctx, "concurrent"); + _fingerprintString(ctx, "true"); } - if (node->join_using_alias != NULL) { + if (node->deferrable) { + _fingerprintString(ctx, "deferrable"); + _fingerprintString(ctx, "true"); + } + + if (node->excludeOpNames != NULL && node->excludeOpNames->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "join_using_alias"); + _fingerprintString(ctx, "excludeOpNames"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintAlias(ctx, node->join_using_alias, node, "join_using_alias", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->excludeOpNames, node, "excludeOpNames", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->excludeOpNames) == 1 && linitial(node->excludeOpNames) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->idxcomment != NULL) { + _fingerprintString(ctx, "idxcomment"); + _fingerprintString(ctx, node->idxcomment); + } - if (node->joinaliasvars != NULL && node->joinaliasvars->length > 0) { + if (node->idxname != NULL) { + _fingerprintString(ctx, "idxname"); + _fingerprintString(ctx, node->idxname); + } + + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); + _fingerprintString(ctx, "true"); + } + + if (node->indexIncludingParams != NULL && node->indexIncludingParams->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "joinaliasvars"); + _fingerprintString(ctx, "indexIncludingParams"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->joinaliasvars, node, "joinaliasvars", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->joinaliasvars) == 1 && linitial(node->joinaliasvars) == NIL)) { + _fingerprintNode(ctx, node->indexIncludingParams, node, "indexIncludingParams", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indexIncludingParams) == 1 && linitial(node->indexIncludingParams) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->joinleftcols != NULL && node->joinleftcols->length > 0) { + if (node->indexOid != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->indexOid); + _fingerprintString(ctx, "indexOid"); + _fingerprintString(ctx, buffer); + } + + if (node->indexParams != NULL && node->indexParams->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "joinleftcols"); + _fingerprintString(ctx, "indexParams"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->joinleftcols, node, "joinleftcols", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->joinleftcols) == 1 && linitial(node->joinleftcols) == NIL)) { + _fingerprintNode(ctx, node->indexParams, node, "indexParams", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indexParams) == 1 && linitial(node->indexParams) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->joinmergedcols != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->joinmergedcols); - _fingerprintString(ctx, "joinmergedcols"); - _fingerprintString(ctx, buffer); + if (node->initdeferred) { + _fingerprintString(ctx, "initdeferred"); + _fingerprintString(ctx, "true"); } - if (node->joinrightcols != NULL && node->joinrightcols->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "joinrightcols"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->joinrightcols, node, "joinrightcols", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->joinrightcols) == 1 && linitial(node->joinrightcols) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - if (true) { - _fingerprintString(ctx, "jointype"); - _fingerprintString(ctx, _enumToStringJoinType(node->jointype)); + if (node->isconstraint) { + _fingerprintString(ctx, "isconstraint"); + _fingerprintString(ctx, "true"); } - if (node->lateral) { - _fingerprintString(ctx, "lateral"); + if (node->nulls_not_distinct) { + _fingerprintString(ctx, "nulls_not_distinct"); _fingerprintString(ctx, "true"); } - if (node->relid != 0) { + if (node->oldCreateSubid != 0) { char buffer[50]; - sprintf(buffer, "%d", node->relid); - _fingerprintString(ctx, "relid"); - _fingerprintString(ctx, buffer); - } - - if (node->relkind != 0) { - char buffer[2] = {node->relkind, '\0'}; - _fingerprintString(ctx, "relkind"); + sprintf(buffer, "%d", node->oldCreateSubid); + _fingerprintString(ctx, "oldCreateSubid"); _fingerprintString(ctx, buffer); } - if (node->rellockmode != 0) { + if (node->oldFirstRelfilelocatorSubid != 0) { char buffer[50]; - sprintf(buffer, "%d", node->rellockmode); - _fingerprintString(ctx, "rellockmode"); + sprintf(buffer, "%d", node->oldFirstRelfilelocatorSubid); + _fingerprintString(ctx, "oldFirstRelfilelocatorSubid"); _fingerprintString(ctx, buffer); } - if (node->requiredPerms != 0) { + if (node->oldNumber != 0) { char buffer[50]; - sprintf(buffer, "%d", node->requiredPerms); - _fingerprintString(ctx, "requiredPerms"); + sprintf(buffer, "%d", node->oldNumber); + _fingerprintString(ctx, "oldNumber"); _fingerprintString(ctx, buffer); } - if (true) { - _fingerprintString(ctx, "rtekind"); - _fingerprintString(ctx, _enumToStringRTEKind(node->rtekind)); - } - - if (node->securityQuals != NULL && node->securityQuals->length > 0) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "securityQuals"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->securityQuals, node, "securityQuals", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->securityQuals) == 1 && linitial(node->securityQuals) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->security_barrier) { - _fingerprintString(ctx, "security_barrier"); + if (node->primary) { + _fingerprintString(ctx, "primary"); _fingerprintString(ctx, "true"); } - if (true) { - int x; - Bitmapset *bms = bms_copy(node->selectedCols); + if (node->relation != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; - _fingerprintString(ctx, "selectedCols"); + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "relation"); - while ((x = bms_first_member(bms)) >= 0) { - char buffer[50]; - sprintf(buffer, "%d", x); - _fingerprintString(ctx, buffer); + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); } + XXH3_freeState(prev); + } - bms_free(bms); + if (node->reset_default_tblspc) { + _fingerprintString(ctx, "reset_default_tblspc"); + _fingerprintString(ctx, "true"); } - if (node->self_reference) { - _fingerprintString(ctx, "self_reference"); + if (node->tableSpace != NULL) { + _fingerprintString(ctx, "tableSpace"); + _fingerprintString(ctx, node->tableSpace); + } + + if (node->transformed) { + _fingerprintString(ctx, "transformed"); _fingerprintString(ctx, "true"); } - if (node->subquery != NULL) { + if (node->unique) { + _fingerprintString(ctx, "unique"); + _fingerprintString(ctx, "true"); + } + + if (node->whereClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "subquery"); + _fingerprintString(ctx, "whereClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintQuery(ctx, node->subquery, node, "subquery", depth + 1); + _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -11439,156 +11515,208 @@ _fingerprintRangeTblEntry(FingerprintContext *ctx, const RangeTblEntry *node, co XXH3_freeState(prev); } - if (node->tablefunc != NULL) { +} + +static void +_fingerprintCreateStatsStmt(FingerprintContext *ctx, const CreateStatsStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->defnames != NULL && node->defnames->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "tablefunc"); + _fingerprintString(ctx, "defnames"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTableFunc(ctx, node->tablefunc, node, "tablefunc", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->defnames, node, "defnames", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->defnames) == 1 && linitial(node->defnames) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->tablesample != NULL) { + if (node->exprs != NULL && node->exprs->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "tablesample"); + _fingerprintString(ctx, "exprs"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTableSampleClause(ctx, node->tablesample, node, "tablesample", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->exprs, node, "exprs", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->exprs) == 1 && linitial(node->exprs) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); + _fingerprintString(ctx, "true"); + } - if (true) { - int x; - Bitmapset *bms = bms_copy(node->updatedCols); + if (node->relations != NULL && node->relations->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; - _fingerprintString(ctx, "updatedCols"); + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "relations"); - while ((x = bms_first_member(bms)) >= 0) { - char buffer[50]; - sprintf(buffer, "%d", x); - _fingerprintString(ctx, buffer); + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->relations, node, "relations", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->relations) == 1 && linitial(node->relations) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); } - - bms_free(bms); + XXH3_freeState(prev); } - - if (node->values_lists != NULL && node->values_lists->length > 0) { + if (node->stat_types != NULL && node->stat_types->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "values_lists"); + _fingerprintString(ctx, "stat_types"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->values_lists, node, "values_lists", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->values_lists) == 1 && linitial(node->values_lists) == NIL)) { + _fingerprintNode(ctx, node->stat_types, node, "stat_types", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->stat_types) == 1 && linitial(node->stat_types) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->stxcomment != NULL) { + _fingerprintString(ctx, "stxcomment"); + _fingerprintString(ctx, node->stxcomment); + } + + if (node->transformed) { + _fingerprintString(ctx, "transformed"); + _fingerprintString(ctx, "true"); + } + } static void -_fingerprintRangeTblFunction(FingerprintContext *ctx, const RangeTblFunction *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintStatsElem(FingerprintContext *ctx, const StatsElem *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->funccolcollations != NULL && node->funccolcollations->length > 0) { + if (node->expr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funccolcollations"); + _fingerprintString(ctx, "expr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->funccolcollations, node, "funccolcollations", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funccolcollations) == 1 && linitial(node->funccolcollations) == NIL)) { + _fingerprintNode(ctx, node->expr, node, "expr", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->funccolcount != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->funccolcount); - _fingerprintString(ctx, "funccolcount"); - _fingerprintString(ctx, buffer); + + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } - if (node->funccolnames != NULL && node->funccolnames->length > 0) { +} + +static void +_fingerprintAlterStatsStmt(FingerprintContext *ctx, const AlterStatsStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->defnames != NULL && node->defnames->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funccolnames"); + _fingerprintString(ctx, "defnames"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->funccolnames, node, "funccolnames", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funccolnames) == 1 && linitial(node->funccolnames) == NIL)) { + _fingerprintNode(ctx, node->defnames, node, "defnames", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->defnames) == 1 && linitial(node->defnames) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->funccoltypes != NULL && node->funccoltypes->length > 0) { + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); + } + + if (node->stxstattarget != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->stxstattarget); + _fingerprintString(ctx, "stxstattarget"); + _fingerprintString(ctx, buffer); + } + +} + +static void +_fingerprintCreateFunctionStmt(FingerprintContext *ctx, const CreateFunctionStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->funcname != NULL && node->funcname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funccoltypes"); + _fingerprintString(ctx, "funcname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->funccoltypes, node, "funccoltypes", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funccoltypes) == 1 && linitial(node->funccoltypes) == NIL)) { + _fingerprintNode(ctx, node->funcname, node, "funcname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funcname) == 1 && linitial(node->funcname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->funccoltypmods != NULL && node->funccoltypmods->length > 0) { + if (node->is_procedure) { + _fingerprintString(ctx, "is_procedure"); + _fingerprintString(ctx, "true"); + } + + // Intentionally ignoring node->options for fingerprinting + + if (node->parameters != NULL && node->parameters->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funccoltypmods"); + _fingerprintString(ctx, "parameters"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->funccoltypmods, node, "funccoltypmods", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->funccoltypmods) == 1 && linitial(node->funccoltypmods) == NIL)) { + _fingerprintNode(ctx, node->parameters, node, "parameters", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->parameters) == 1 && linitial(node->parameters) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->funcexpr != NULL) { + if (node->replace) { + _fingerprintString(ctx, "replace"); + _fingerprintString(ctx, "true"); + } + + if (node->returnType != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "funcexpr"); + _fingerprintString(ctx, "returnType"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->funcexpr, node, "funcexpr", depth + 1); + _fingerprintTypeName(ctx, node->returnType, node, "returnType", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -11597,51 +11725,54 @@ _fingerprintRangeTblFunction(FingerprintContext *ctx, const RangeTblFunction *no XXH3_freeState(prev); } - if (true) { - int x; - Bitmapset *bms = bms_copy(node->funcparams); + if (node->sql_body != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; - _fingerprintString(ctx, "funcparams"); + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "sql_body"); - while ((x = bms_first_member(bms)) >= 0) { - char buffer[50]; - sprintf(buffer, "%d", x); - _fingerprintString(ctx, buffer); + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->sql_body, node, "sql_body", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); } - - bms_free(bms); + XXH3_freeState(prev); } } static void -_fingerprintTableSampleClause(FingerprintContext *ctx, const TableSampleClause *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintFunctionParameter(FingerprintContext *ctx, const FunctionParameter *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->args != NULL && node->args->length > 0) { + if (node->argType != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "args"); + _fingerprintString(ctx, "argType"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->args, node, "args", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->args) == 1 && linitial(node->args) == NIL)) { + _fingerprintTypeName(ctx, node->argType, node, "argType", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->repeatable != NULL) { + + if (node->defexpr != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "repeatable"); + _fingerprintString(ctx, "defexpr"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->repeatable, node, "repeatable", depth + 1); + _fingerprintNode(ctx, node->defexpr, node, "defexpr", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -11650,42 +11781,43 @@ _fingerprintTableSampleClause(FingerprintContext *ctx, const TableSampleClause * XXH3_freeState(prev); } - if (node->tsmhandler != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->tsmhandler); - _fingerprintString(ctx, "tsmhandler"); - _fingerprintString(ctx, buffer); + if (true) { + _fingerprintString(ctx, "mode"); + _fingerprintString(ctx, _enumToStringFunctionParameterMode(node->mode)); } + // Intentionally ignoring node->name for fingerprinting + } static void -_fingerprintWithCheckOption(FingerprintContext *ctx, const WithCheckOption *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterFunctionStmt(FingerprintContext *ctx, const AlterFunctionStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->cascaded) { - _fingerprintString(ctx, "cascaded"); - _fingerprintString(ctx, "true"); - } + if (node->actions != NULL && node->actions->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; - if (true) { - _fingerprintString(ctx, "kind"); - _fingerprintString(ctx, _enumToStringWCOKind(node->kind)); - } + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "actions"); - if (node->polname != NULL) { - _fingerprintString(ctx, "polname"); - _fingerprintString(ctx, node->polname); + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->actions, node, "actions", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->actions) == 1 && linitial(node->actions) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } - - if (node->qual != NULL) { + if (node->func != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "qual"); + _fingerprintString(ctx, "func"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->qual, node, "qual", depth + 1); + _fingerprintObjectWithArgs(ctx, node->func, node, "func", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -11694,274 +11826,908 @@ _fingerprintWithCheckOption(FingerprintContext *ctx, const WithCheckOption *node XXH3_freeState(prev); } - if (node->relname != NULL) { - _fingerprintString(ctx, "relname"); - _fingerprintString(ctx, node->relname); + if (true) { + _fingerprintString(ctx, "objtype"); + _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); } } static void -_fingerprintSortGroupClause(FingerprintContext *ctx, const SortGroupClause *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintDoStmt(FingerprintContext *ctx, const DoStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->eqop != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->eqop); - _fingerprintString(ctx, "eqop"); - _fingerprintString(ctx, buffer); - } + // Intentionally ignoring node->args for fingerprinting - if (node->hashable) { - _fingerprintString(ctx, "hashable"); +} + +static void +_fingerprintInlineCodeBlock(FingerprintContext *ctx, const InlineCodeBlock *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->atomic) { + _fingerprintString(ctx, "atomic"); _fingerprintString(ctx, "true"); } - if (node->nulls_first) { - _fingerprintString(ctx, "nulls_first"); + if (node->langIsTrusted) { + _fingerprintString(ctx, "langIsTrusted"); _fingerprintString(ctx, "true"); } - if (node->sortop != 0) { + if (node->langOid != 0) { char buffer[50]; - sprintf(buffer, "%d", node->sortop); - _fingerprintString(ctx, "sortop"); + sprintf(buffer, "%d", node->langOid); + _fingerprintString(ctx, "langOid"); _fingerprintString(ctx, buffer); } - if (node->tleSortGroupRef != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->tleSortGroupRef); - _fingerprintString(ctx, "tleSortGroupRef"); - _fingerprintString(ctx, buffer); + if (node->source_text != NULL) { + _fingerprintString(ctx, "source_text"); + _fingerprintString(ctx, node->source_text); } } static void -_fingerprintGroupingSet(FingerprintContext *ctx, const GroupingSet *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCallStmt(FingerprintContext *ctx, const CallStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->content != NULL && node->content->length > 0) { + if (node->funccall != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "content"); + _fingerprintString(ctx, "funccall"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->content, node, "content", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->content) == 1 && linitial(node->content) == NIL)) { + _fingerprintFuncCall(ctx, node->funccall, node, "funccall", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "kind"); - _fingerprintString(ctx, _enumToStringGroupingSetKind(node->kind)); - } - - // Intentionally ignoring node->location for fingerprinting -} + if (node->funcexpr != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; -static void -_fingerprintWindowClause(FingerprintContext *ctx, const WindowClause *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->copiedOrder) { - _fingerprintString(ctx, "copiedOrder"); - _fingerprintString(ctx, "true"); - } + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "funcexpr"); - if (node->endInRangeFunc != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->endInRangeFunc); - _fingerprintString(ctx, "endInRangeFunc"); - _fingerprintString(ctx, buffer); + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintFuncExpr(ctx, node->funcexpr, node, "funcexpr", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } - if (node->endOffset != NULL) { + if (node->outargs != NULL && node->outargs->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "endOffset"); + _fingerprintString(ctx, "outargs"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->endOffset, node, "endOffset", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->outargs, node, "outargs", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->outargs) == 1 && linitial(node->outargs) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->frameOptions != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->frameOptions); - _fingerprintString(ctx, "frameOptions"); - _fingerprintString(ctx, buffer); - } - - if (node->inRangeAsc) { - _fingerprintString(ctx, "inRangeAsc"); +static void +_fingerprintCallContext(FingerprintContext *ctx, const CallContext *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->atomic) { + _fingerprintString(ctx, "atomic"); _fingerprintString(ctx, "true"); } - if (node->inRangeColl != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->inRangeColl); - _fingerprintString(ctx, "inRangeColl"); - _fingerprintString(ctx, buffer); +} + +static void +_fingerprintRenameStmt(FingerprintContext *ctx, const RenameStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (true) { + _fingerprintString(ctx, "behavior"); + _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); } - if (node->inRangeNullsFirst) { - _fingerprintString(ctx, "inRangeNullsFirst"); + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); _fingerprintString(ctx, "true"); } - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); + if (node->newname != NULL) { + _fingerprintString(ctx, "newname"); + _fingerprintString(ctx, node->newname); } - if (node->orderClause != NULL && node->orderClause->length > 0) { + if (node->object != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "orderClause"); + _fingerprintString(ctx, "object"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->orderClause, node, "orderClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->orderClause) == 1 && linitial(node->orderClause) == NIL)) { + _fingerprintNode(ctx, node->object, node, "object", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->partitionClause != NULL && node->partitionClause->length > 0) { + + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "partitionClause"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->partitionClause, node, "partitionClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->partitionClause) == 1 && linitial(node->partitionClause) == NIL)) { + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->refname != NULL) { - _fingerprintString(ctx, "refname"); - _fingerprintString(ctx, node->refname); + + if (true) { + _fingerprintString(ctx, "relationType"); + _fingerprintString(ctx, _enumToStringObjectType(node->relationType)); } - if (node->runCondition != NULL && node->runCondition->length > 0) { + if (true) { + _fingerprintString(ctx, "renameType"); + _fingerprintString(ctx, _enumToStringObjectType(node->renameType)); + } + + if (node->subname != NULL) { + _fingerprintString(ctx, "subname"); + _fingerprintString(ctx, node->subname); + } + +} + +static void +_fingerprintAlterObjectDependsStmt(FingerprintContext *ctx, const AlterObjectDependsStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (strlen(node->extname->sval) > 0) { + _fingerprintString(ctx, "extname"); + _fingerprintString(ctx, node->extname->sval); + } + + if (node->object != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "runCondition"); + _fingerprintString(ctx, "object"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->runCondition, node, "runCondition", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->runCondition) == 1 && linitial(node->runCondition) == NIL)) { + _fingerprintNode(ctx, node->object, node, "object", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->startInRangeFunc != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->startInRangeFunc); - _fingerprintString(ctx, "startInRangeFunc"); - _fingerprintString(ctx, buffer); + + if (true) { + _fingerprintString(ctx, "objectType"); + _fingerprintString(ctx, _enumToStringObjectType(node->objectType)); + } + + if (node->relation != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "relation"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (node->remove) { + _fingerprintString(ctx, "remove"); + _fingerprintString(ctx, "true"); + } + +} + +static void +_fingerprintAlterObjectSchemaStmt(FingerprintContext *ctx, const AlterObjectSchemaStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); + } + + if (node->newschema != NULL) { + _fingerprintString(ctx, "newschema"); + _fingerprintString(ctx, node->newschema); + } + + if (node->object != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "object"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->object, node, "object", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (true) { + _fingerprintString(ctx, "objectType"); + _fingerprintString(ctx, _enumToStringObjectType(node->objectType)); + } + + if (node->relation != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "relation"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + +} + +static void +_fingerprintAlterOwnerStmt(FingerprintContext *ctx, const AlterOwnerStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->newowner != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "newowner"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRoleSpec(ctx, node->newowner, node, "newowner", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (node->object != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "object"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->object, node, "object", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (true) { + _fingerprintString(ctx, "objectType"); + _fingerprintString(ctx, _enumToStringObjectType(node->objectType)); + } + + if (node->relation != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "relation"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + +} + +static void +_fingerprintAlterOperatorStmt(FingerprintContext *ctx, const AlterOperatorStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->opername != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "opername"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintObjectWithArgs(ctx, node->opername, node, "opername", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (node->options != NULL && node->options->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "options"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } +} + +static void +_fingerprintAlterTypeStmt(FingerprintContext *ctx, const AlterTypeStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->options != NULL && node->options->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "options"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->typeName != NULL && node->typeName->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "typeName"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } +} + +static void +_fingerprintRuleStmt(FingerprintContext *ctx, const RuleStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->actions != NULL && node->actions->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "actions"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->actions, node, "actions", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->actions) == 1 && linitial(node->actions) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (true) { + _fingerprintString(ctx, "event"); + _fingerprintString(ctx, _enumToStringCmdType(node->event)); + } + + if (node->instead) { + _fingerprintString(ctx, "instead"); + _fingerprintString(ctx, "true"); + } + + if (node->relation != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "relation"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (node->replace) { + _fingerprintString(ctx, "replace"); + _fingerprintString(ctx, "true"); + } + + if (node->rulename != NULL) { + _fingerprintString(ctx, "rulename"); + _fingerprintString(ctx, node->rulename); + } + + if (node->whereClause != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "whereClause"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + +} + +static void +_fingerprintNotifyStmt(FingerprintContext *ctx, const NotifyStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring node->conditionname for fingerprinting + + if (node->payload != NULL) { + _fingerprintString(ctx, "payload"); + _fingerprintString(ctx, node->payload); + } + +} + +static void +_fingerprintListenStmt(FingerprintContext *ctx, const ListenStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring node->conditionname for fingerprinting + +} + +static void +_fingerprintUnlistenStmt(FingerprintContext *ctx, const UnlistenStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring node->conditionname for fingerprinting + +} + +static void +_fingerprintTransactionStmt(FingerprintContext *ctx, const TransactionStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->chain) { + _fingerprintString(ctx, "chain"); + _fingerprintString(ctx, "true"); + } + + // Intentionally ignoring node->gid for fingerprinting + + if (true) { + _fingerprintString(ctx, "kind"); + _fingerprintString(ctx, _enumToStringTransactionStmtKind(node->kind)); + } + + // Intentionally ignoring node->options for fingerprinting + + // Intentionally ignoring node->savepoint_name for fingerprinting + +} + +static void +_fingerprintCompositeTypeStmt(FingerprintContext *ctx, const CompositeTypeStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->coldeflist != NULL && node->coldeflist->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "coldeflist"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->coldeflist, node, "coldeflist", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->coldeflist) == 1 && linitial(node->coldeflist) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->typevar != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "typevar"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRangeVar(ctx, node->typevar, node, "typevar", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); } - if (node->startOffset != NULL) { +} + +static void +_fingerprintCreateEnumStmt(FingerprintContext *ctx, const CreateEnumStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->typeName != NULL && node->typeName->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "typeName"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->vals != NULL && node->vals->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "vals"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->vals, node, "vals", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->vals) == 1 && linitial(node->vals) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } +} + +static void +_fingerprintCreateRangeStmt(FingerprintContext *ctx, const CreateRangeStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->params != NULL && node->params->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "params"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->params, node, "params", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->params) == 1 && linitial(node->params) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->typeName != NULL && node->typeName->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "typeName"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } +} + +static void +_fingerprintAlterEnumStmt(FingerprintContext *ctx, const AlterEnumStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->newVal != NULL) { + _fingerprintString(ctx, "newVal"); + _fingerprintString(ctx, node->newVal); + } + + if (node->newValIsAfter) { + _fingerprintString(ctx, "newValIsAfter"); + _fingerprintString(ctx, "true"); + } + + if (node->newValNeighbor != NULL) { + _fingerprintString(ctx, "newValNeighbor"); + _fingerprintString(ctx, node->newValNeighbor); + } + + if (node->oldVal != NULL) { + _fingerprintString(ctx, "oldVal"); + _fingerprintString(ctx, node->oldVal); + } + + if (node->skipIfNewValExists) { + _fingerprintString(ctx, "skipIfNewValExists"); + _fingerprintString(ctx, "true"); + } + + if (node->typeName != NULL && node->typeName->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "typeName"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->typeName, node, "typeName", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->typeName) == 1 && linitial(node->typeName) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } +} + +static void +_fingerprintViewStmt(FingerprintContext *ctx, const ViewStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->aliases != NULL && node->aliases->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "aliases"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->aliases, node, "aliases", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->aliases) == 1 && linitial(node->aliases) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->options != NULL && node->options->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "options"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->query != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "query"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->query, node, "query", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (node->replace) { + _fingerprintString(ctx, "replace"); + _fingerprintString(ctx, "true"); + } + + if (node->view != NULL) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "view"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintRangeVar(ctx, node->view, node, "view", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + + if (true) { + _fingerprintString(ctx, "withCheckOption"); + _fingerprintString(ctx, _enumToStringViewCheckOption(node->withCheckOption)); + } + +} + +static void +_fingerprintLoadStmt(FingerprintContext *ctx, const LoadStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->filename != NULL) { + _fingerprintString(ctx, "filename"); + _fingerprintString(ctx, node->filename); + } + +} + +static void +_fingerprintCreatedbStmt(FingerprintContext *ctx, const CreatedbStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->dbname != NULL) { + _fingerprintString(ctx, "dbname"); + _fingerprintString(ctx, node->dbname); + } + + if (node->options != NULL && node->options->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; + + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "options"); + + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } +} + +static void +_fingerprintAlterDatabaseStmt(FingerprintContext *ctx, const AlterDatabaseStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->dbname != NULL) { + _fingerprintString(ctx, "dbname"); + _fingerprintString(ctx, node->dbname); + } + + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "startOffset"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->startOffset, node, "startOffset", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->winref != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->winref); - _fingerprintString(ctx, "winref"); - _fingerprintString(ctx, buffer); +static void +_fingerprintAlterDatabaseRefreshCollStmt(FingerprintContext *ctx, const AlterDatabaseRefreshCollStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->dbname != NULL) { + _fingerprintString(ctx, "dbname"); + _fingerprintString(ctx, node->dbname); } } static void -_fingerprintObjectWithArgs(FingerprintContext *ctx, const ObjectWithArgs *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterDatabaseSetStmt(FingerprintContext *ctx, const AlterDatabaseSetStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->args_unspecified) { - _fingerprintString(ctx, "args_unspecified"); - _fingerprintString(ctx, "true"); + if (node->dbname != NULL) { + _fingerprintString(ctx, "dbname"); + _fingerprintString(ctx, node->dbname); } - if (node->objargs != NULL && node->objargs->length > 0) { + if (node->setstmt != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "objargs"); + _fingerprintString(ctx, "setstmt"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->objargs, node, "objargs", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objargs) == 1 && linitial(node->objargs) == NIL)) { + _fingerprintVariableSetStmt(ctx, node->setstmt, node, "setstmt", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->objfuncargs != NULL && node->objfuncargs->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "objfuncargs"); +} - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->objfuncargs, node, "objfuncargs", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objfuncargs) == 1 && linitial(node->objfuncargs) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); +static void +_fingerprintDropdbStmt(FingerprintContext *ctx, const DropdbStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->dbname != NULL) { + _fingerprintString(ctx, "dbname"); + _fingerprintString(ctx, node->dbname); } - if (node->objname != NULL && node->objname->length > 0) { + + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); + } + + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "objname"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->objname, node, "objname", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->objname) == 1 && linitial(node->objname) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); @@ -11971,66 +12737,60 @@ _fingerprintObjectWithArgs(FingerprintContext *ctx, const ObjectWithArgs *node, } static void -_fingerprintAccessPriv(FingerprintContext *ctx, const AccessPriv *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterSystemStmt(FingerprintContext *ctx, const AlterSystemStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->cols != NULL && node->cols->length > 0) { + if (node->setstmt != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cols"); + _fingerprintString(ctx, "setstmt"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->cols, node, "cols", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cols) == 1 && linitial(node->cols) == NIL)) { + _fingerprintVariableSetStmt(ctx, node->setstmt, node, "setstmt", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->priv_name != NULL) { - _fingerprintString(ctx, "priv_name"); - _fingerprintString(ctx, node->priv_name); - } } static void -_fingerprintCreateOpClassItem(FingerprintContext *ctx, const CreateOpClassItem *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintClusterStmt(FingerprintContext *ctx, const ClusterStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->class_args != NULL && node->class_args->length > 0) { + if (node->indexname != NULL) { + _fingerprintString(ctx, "indexname"); + _fingerprintString(ctx, node->indexname); + } + + if (node->params != NULL && node->params->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "class_args"); + _fingerprintString(ctx, "params"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->class_args, node, "class_args", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->class_args) == 1 && linitial(node->class_args) == NIL)) { + _fingerprintNode(ctx, node->params, node, "params", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->params) == 1 && linitial(node->params) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->itemtype != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->itemtype); - _fingerprintString(ctx, "itemtype"); - _fingerprintString(ctx, buffer); - } - - if (node->name != NULL) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "name"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintObjectWithArgs(ctx, node->name, node, "name", depth + 1); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -12039,55 +12799,57 @@ _fingerprintCreateOpClassItem(FingerprintContext *ctx, const CreateOpClassItem * XXH3_freeState(prev); } - if (node->number != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->number); - _fingerprintString(ctx, "number"); - _fingerprintString(ctx, buffer); +} + +static void +_fingerprintVacuumStmt(FingerprintContext *ctx, const VacuumStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->is_vacuumcmd) { + _fingerprintString(ctx, "is_vacuumcmd"); + _fingerprintString(ctx, "true"); } - if (node->order_family != NULL && node->order_family->length > 0) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "order_family"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->order_family, node, "order_family", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->order_family) == 1 && linitial(node->order_family) == NIL)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->storedtype != NULL) { + if (node->rels != NULL && node->rels->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "storedtype"); + _fingerprintString(ctx, "rels"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->storedtype, node, "storedtype", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->rels, node, "rels", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->rels) == 1 && linitial(node->rels) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - } static void -_fingerprintTableLikeClause(FingerprintContext *ctx, const TableLikeClause *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintVacuumRelation(FingerprintContext *ctx, const VacuumRelation *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->options != 0) { + if (node->oid != 0) { char buffer[50]; - sprintf(buffer, "%d", node->options); - _fingerprintString(ctx, "options"); + sprintf(buffer, "%d", node->oid); + _fingerprintString(ctx, "oid"); _fingerprintString(ctx, buffer); } @@ -12108,131 +12870,79 @@ _fingerprintTableLikeClause(FingerprintContext *ctx, const TableLikeClause *node XXH3_freeState(prev); } - if (node->relationOid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->relationOid); - _fingerprintString(ctx, "relationOid"); - _fingerprintString(ctx, buffer); - } - -} - -static void -_fingerprintFunctionParameter(FingerprintContext *ctx, const FunctionParameter *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->argType != NULL) { + if (node->va_cols != NULL && node->va_cols->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "argType"); + _fingerprintString(ctx, "va_cols"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->argType, node, "argType", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->va_cols, node, "va_cols", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->va_cols) == 1 && linitial(node->va_cols) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->defexpr != NULL) { +static void +_fingerprintExplainStmt(FingerprintContext *ctx, const ExplainStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "defexpr"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->defexpr, node, "defexpr", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (true) { - _fingerprintString(ctx, "mode"); - _fingerprintString(ctx, _enumToStringFunctionParameterMode(node->mode)); - } - - // Intentionally ignoring node->name for fingerprinting - -} - -static void -_fingerprintLockingClause(FingerprintContext *ctx, const LockingClause *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->lockedRels != NULL && node->lockedRels->length > 0) { + if (node->query != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "lockedRels"); + _fingerprintString(ctx, "query"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->lockedRels, node, "lockedRels", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->lockedRels) == 1 && linitial(node->lockedRels) == NIL)) { + _fingerprintNode(ctx, node->query, node, "query", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "strength"); - _fingerprintString(ctx, _enumToStringLockClauseStrength(node->strength)); - } - - if (true) { - _fingerprintString(ctx, "waitPolicy"); - _fingerprintString(ctx, _enumToStringLockWaitPolicy(node->waitPolicy)); - } } static void -_fingerprintRowMarkClause(FingerprintContext *ctx, const RowMarkClause *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreateTableAsStmt(FingerprintContext *ctx, const CreateTableAsStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->pushedDown) { - _fingerprintString(ctx, "pushedDown"); + if (node->if_not_exists) { + _fingerprintString(ctx, "if_not_exists"); _fingerprintString(ctx, "true"); } - if (node->rti != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->rti); - _fingerprintString(ctx, "rti"); - _fingerprintString(ctx, buffer); - } - - if (true) { - _fingerprintString(ctx, "strength"); - _fingerprintString(ctx, _enumToStringLockClauseStrength(node->strength)); - } - - if (true) { - _fingerprintString(ctx, "waitPolicy"); - _fingerprintString(ctx, _enumToStringLockWaitPolicy(node->waitPolicy)); - } - -} - -static void -_fingerprintXmlSerialize(FingerprintContext *ctx, const XmlSerialize *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->expr != NULL) { + if (node->into != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "expr"); + _fingerprintString(ctx, "into"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->expr, node, "expr", depth + 1); + _fingerprintIntoClause(ctx, node->into, node, "into", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -12241,17 +12951,25 @@ _fingerprintXmlSerialize(FingerprintContext *ctx, const XmlSerialize *node, cons XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting + if (node->is_select_into) { + _fingerprintString(ctx, "is_select_into"); + _fingerprintString(ctx, "true"); + } - if (node->typeName != NULL) { + if (true) { + _fingerprintString(ctx, "objtype"); + _fingerprintString(ctx, _enumToStringObjectType(node->objtype)); + } + + if (node->query != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "typeName"); + _fingerprintString(ctx, "query"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintTypeName(ctx, node->typeName, node, "typeName", depth + 1); + _fingerprintNode(ctx, node->query, node, "query", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -12260,138 +12978,152 @@ _fingerprintXmlSerialize(FingerprintContext *ctx, const XmlSerialize *node, cons XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "xmloption"); - _fingerprintString(ctx, _enumToStringXmlOptionType(node->xmloption)); - } - } static void -_fingerprintWithClause(FingerprintContext *ctx, const WithClause *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintRefreshMatViewStmt(FingerprintContext *ctx, const RefreshMatViewStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->ctes != NULL && node->ctes->length > 0) { + if (node->concurrent) { + _fingerprintString(ctx, "concurrent"); + _fingerprintString(ctx, "true"); + } + + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "ctes"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->ctes, node, "ctes", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctes) == 1 && linitial(node->ctes) == NIL)) { + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting - if (node->recursive) { - _fingerprintString(ctx, "recursive"); + if (node->skipData) { + _fingerprintString(ctx, "skipData"); _fingerprintString(ctx, "true"); } } static void -_fingerprintInferClause(FingerprintContext *ctx, const InferClause *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCheckPointStmt(FingerprintContext *ctx, const CheckPointStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->conname != NULL) { - _fingerprintString(ctx, "conname"); - _fingerprintString(ctx, node->conname); +} + +static void +_fingerprintDiscardStmt(FingerprintContext *ctx, const DiscardStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (true) { + _fingerprintString(ctx, "target"); + _fingerprintString(ctx, _enumToStringDiscardMode(node->target)); } - if (node->indexElems != NULL && node->indexElems->length > 0) { +} + +static void +_fingerprintLockStmt(FingerprintContext *ctx, const LockStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->mode != 0) { + char buffer[50]; + sprintf(buffer, "%d", node->mode); + _fingerprintString(ctx, "mode"); + _fingerprintString(ctx, buffer); + } + + if (node->nowait) { + _fingerprintString(ctx, "nowait"); + _fingerprintString(ctx, "true"); + } + + if (node->relations != NULL && node->relations->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "indexElems"); + _fingerprintString(ctx, "relations"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->indexElems, node, "indexElems", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->indexElems) == 1 && linitial(node->indexElems) == NIL)) { + _fingerprintNode(ctx, node->relations, node, "relations", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->relations) == 1 && linitial(node->relations) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting +} - if (node->whereClause != NULL) { +static void +_fingerprintConstraintsSetStmt(FingerprintContext *ctx, const ConstraintsSetStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->constraints != NULL && node->constraints->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whereClause"); + _fingerprintString(ctx, "constraints"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->constraints, node, "constraints", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->constraints) == 1 && linitial(node->constraints) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->deferred) { + _fingerprintString(ctx, "deferred"); + _fingerprintString(ctx, "true"); + } } static void -_fingerprintOnConflictClause(FingerprintContext *ctx, const OnConflictClause *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintReindexStmt(FingerprintContext *ctx, const ReindexStmt *node, const void *parent, const char *field_name, unsigned int depth) { if (true) { - _fingerprintString(ctx, "action"); - _fingerprintString(ctx, _enumToStringOnConflictAction(node->action)); + _fingerprintString(ctx, "kind"); + _fingerprintString(ctx, _enumToStringReindexObjectType(node->kind)); } - if (node->infer != NULL) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "infer"); - - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintInferClause(ctx, node->infer, node, "infer", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } - // Intentionally ignoring node->location for fingerprinting - - if (node->targetList != NULL && node->targetList->length > 0) { + if (node->params != NULL && node->params->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "targetList"); + _fingerprintString(ctx, "params"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { + _fingerprintNode(ctx, node->params, node, "params", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->params) == 1 && linitial(node->params) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->whereClause != NULL) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whereClause"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -12403,78 +13135,74 @@ _fingerprintOnConflictClause(FingerprintContext *ctx, const OnConflictClause *no } static void -_fingerprintCTESearchClause(FingerprintContext *ctx, const CTESearchClause *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreateConversionStmt(FingerprintContext *ctx, const CreateConversionStmt *node, const void *parent, const char *field_name, unsigned int depth) { - // Intentionally ignoring node->location for fingerprinting - - if (node->search_breadth_first) { - _fingerprintString(ctx, "search_breadth_first"); - _fingerprintString(ctx, "true"); - } - - if (node->search_col_list != NULL && node->search_col_list->length > 0) { + if (node->conversion_name != NULL && node->conversion_name->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "search_col_list"); + _fingerprintString(ctx, "conversion_name"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->search_col_list, node, "search_col_list", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->search_col_list) == 1 && linitial(node->search_col_list) == NIL)) { + _fingerprintNode(ctx, node->conversion_name, node, "conversion_name", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->conversion_name) == 1 && linitial(node->conversion_name) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->search_seq_column != NULL) { - _fingerprintString(ctx, "search_seq_column"); - _fingerprintString(ctx, node->search_seq_column); + if (node->def) { + _fingerprintString(ctx, "def"); + _fingerprintString(ctx, "true"); } -} + if (node->for_encoding_name != NULL) { + _fingerprintString(ctx, "for_encoding_name"); + _fingerprintString(ctx, node->for_encoding_name); + } -static void -_fingerprintCTECycleClause(FingerprintContext *ctx, const CTECycleClause *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->cycle_col_list != NULL && node->cycle_col_list->length > 0) { + if (node->func_name != NULL && node->func_name->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cycle_col_list"); + _fingerprintString(ctx, "func_name"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->cycle_col_list, node, "cycle_col_list", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cycle_col_list) == 1 && linitial(node->cycle_col_list) == NIL)) { + _fingerprintNode(ctx, node->func_name, node, "func_name", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->func_name) == 1 && linitial(node->func_name) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->cycle_mark_collation != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->cycle_mark_collation); - _fingerprintString(ctx, "cycle_mark_collation"); - _fingerprintString(ctx, buffer); + if (node->to_encoding_name != NULL) { + _fingerprintString(ctx, "to_encoding_name"); + _fingerprintString(ctx, node->to_encoding_name); } - if (node->cycle_mark_column != NULL) { - _fingerprintString(ctx, "cycle_mark_column"); - _fingerprintString(ctx, node->cycle_mark_column); +} + +static void +_fingerprintCreateCastStmt(FingerprintContext *ctx, const CreateCastStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (true) { + _fingerprintString(ctx, "context"); + _fingerprintString(ctx, _enumToStringCoercionContext(node->context)); } - if (node->cycle_mark_default != NULL) { + if (node->func != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cycle_mark_default"); + _fingerprintString(ctx, "func"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->cycle_mark_default, node, "cycle_mark_default", depth + 1); + _fingerprintObjectWithArgs(ctx, node->func, node, "func", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -12483,36 +13211,20 @@ _fingerprintCTECycleClause(FingerprintContext *ctx, const CTECycleClause *node, XXH3_freeState(prev); } - if (node->cycle_mark_neop != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->cycle_mark_neop); - _fingerprintString(ctx, "cycle_mark_neop"); - _fingerprintString(ctx, buffer); - } - - if (node->cycle_mark_type != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->cycle_mark_type); - _fingerprintString(ctx, "cycle_mark_type"); - _fingerprintString(ctx, buffer); - } - - if (node->cycle_mark_typmod != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->cycle_mark_typmod); - _fingerprintString(ctx, "cycle_mark_typmod"); - _fingerprintString(ctx, buffer); + if (node->inout) { + _fingerprintString(ctx, "inout"); + _fingerprintString(ctx, "true"); } - if (node->cycle_mark_value != NULL) { + if (node->sourcetype != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cycle_mark_value"); + _fingerprintString(ctx, "sourcetype"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->cycle_mark_value, node, "cycle_mark_value", depth + 1); + _fingerprintTypeName(ctx, node->sourcetype, node, "sourcetype", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -12521,146 +13233,121 @@ _fingerprintCTECycleClause(FingerprintContext *ctx, const CTECycleClause *node, XXH3_freeState(prev); } - if (node->cycle_path_column != NULL) { - _fingerprintString(ctx, "cycle_path_column"); - _fingerprintString(ctx, node->cycle_path_column); - } - - // Intentionally ignoring node->location for fingerprinting - -} - -static void -_fingerprintCommonTableExpr(FingerprintContext *ctx, const CommonTableExpr *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->aliascolnames != NULL && node->aliascolnames->length > 0) { + if (node->targettype != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "aliascolnames"); + _fingerprintString(ctx, "targettype"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->aliascolnames, node, "aliascolnames", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->aliascolnames) == 1 && linitial(node->aliascolnames) == NIL)) { + _fingerprintTypeName(ctx, node->targettype, node, "targettype", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->ctecolcollations != NULL && node->ctecolcollations->length > 0) { - XXH3_state_t* prev = XXH3_createState(); - XXH64_hash_t hash; - XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "ctecolcollations"); +} - hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->ctecolcollations, node, "ctecolcollations", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctecolcollations) == 1 && linitial(node->ctecolcollations) == NIL)) { - XXH3_copyState(ctx->xxh_state, prev); - if (ctx->write_tokens) - dlist_delete(dlist_tail_node(&ctx->tokens)); - } - XXH3_freeState(prev); - } - if (node->ctecolnames != NULL && node->ctecolnames->length > 0) { +static void +_fingerprintCreateTransformStmt(FingerprintContext *ctx, const CreateTransformStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->fromsql != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "ctecolnames"); + _fingerprintString(ctx, "fromsql"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->ctecolnames, node, "ctecolnames", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctecolnames) == 1 && linitial(node->ctecolnames) == NIL)) { + _fingerprintObjectWithArgs(ctx, node->fromsql, node, "fromsql", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->ctecoltypes != NULL && node->ctecoltypes->length > 0) { + + if (node->lang != NULL) { + _fingerprintString(ctx, "lang"); + _fingerprintString(ctx, node->lang); + } + + if (node->replace) { + _fingerprintString(ctx, "replace"); + _fingerprintString(ctx, "true"); + } + + if (node->tosql != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "ctecoltypes"); + _fingerprintString(ctx, "tosql"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->ctecoltypes, node, "ctecoltypes", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctecoltypes) == 1 && linitial(node->ctecoltypes) == NIL)) { + _fingerprintObjectWithArgs(ctx, node->tosql, node, "tosql", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->ctecoltypmods != NULL && node->ctecoltypmods->length > 0) { + + if (node->type_name != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "ctecoltypmods"); + _fingerprintString(ctx, "type_name"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->ctecoltypmods, node, "ctecoltypmods", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->ctecoltypmods) == 1 && linitial(node->ctecoltypmods) == NIL)) { + _fingerprintTypeName(ctx, node->type_name, node, "type_name", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (true) { - _fingerprintString(ctx, "ctematerialized"); - _fingerprintString(ctx, _enumToStringCTEMaterialize(node->ctematerialized)); - } - if (node->ctename != NULL) { - _fingerprintString(ctx, "ctename"); - _fingerprintString(ctx, node->ctename); - } +} - if (node->ctequery != NULL) { +static void +_fingerprintPrepareStmt(FingerprintContext *ctx, const PrepareStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->argtypes != NULL && node->argtypes->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "ctequery"); + _fingerprintString(ctx, "argtypes"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->ctequery, node, "ctequery", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->argtypes, node, "argtypes", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->argtypes) == 1 && linitial(node->argtypes) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + // Intentionally ignoring node->name for fingerprinting - if (node->cterecursive) { - _fingerprintString(ctx, "cterecursive"); - _fingerprintString(ctx, "true"); - } - - if (node->cterefcount != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->cterefcount); - _fingerprintString(ctx, "cterefcount"); - _fingerprintString(ctx, buffer); - } - - if (node->cycle_clause != NULL) { + if (node->query != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "cycle_clause"); + _fingerprintString(ctx, "query"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintCTECycleClause(ctx, node->cycle_clause, node, "cycle_clause", depth + 1); + _fingerprintNode(ctx, node->query, node, "query", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -12669,88 +13356,94 @@ _fingerprintCommonTableExpr(FingerprintContext *ctx, const CommonTableExpr *node XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting +} - if (node->search_clause != NULL) { +static void +_fingerprintExecuteStmt(FingerprintContext *ctx, const ExecuteStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring node->name for fingerprinting + + if (node->params != NULL && node->params->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "search_clause"); + _fingerprintString(ctx, "params"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintCTESearchClause(ctx, node->search_clause, node, "search_clause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->params, node, "params", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->params) == 1 && linitial(node->params) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} + +static void +_fingerprintDeallocateStmt(FingerprintContext *ctx, const DeallocateStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + // Intentionally ignoring node->name for fingerprinting } static void -_fingerprintMergeWhenClause(FingerprintContext *ctx, const MergeWhenClause *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintDropOwnedStmt(FingerprintContext *ctx, const DropOwnedStmt *node, const void *parent, const char *field_name, unsigned int depth) { if (true) { - _fingerprintString(ctx, "commandType"); - _fingerprintString(ctx, _enumToStringCmdType(node->commandType)); + _fingerprintString(ctx, "behavior"); + _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); } - if (node->condition != NULL) { + if (node->roles != NULL && node->roles->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "condition"); + _fingerprintString(ctx, "roles"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->condition, node, "condition", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - if (node->matched) { - _fingerprintString(ctx, "matched"); - _fingerprintString(ctx, "true"); - } - - if (true) { - _fingerprintString(ctx, "override"); - _fingerprintString(ctx, _enumToStringOverridingKind(node->override)); - } - - if (node->targetList != NULL && node->targetList->length > 0) { +static void +_fingerprintReassignOwnedStmt(FingerprintContext *ctx, const ReassignOwnedStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->newrole != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "targetList"); + _fingerprintString(ctx, "newrole"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->targetList, node, "targetList", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->targetList) == 1 && linitial(node->targetList) == NIL)) { + _fingerprintRoleSpec(ctx, node->newrole, node, "newrole", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->values != NULL && node->values->length > 0) { + + if (node->roles != NULL && node->roles->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "values"); + _fingerprintString(ctx, "roles"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->values, node, "values", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->values) == 1 && linitial(node->values) == NIL)) { + _fingerprintNode(ctx, node->roles, node, "roles", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->roles) == 1 && linitial(node->roles) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); @@ -12760,230 +13453,194 @@ _fingerprintMergeWhenClause(FingerprintContext *ctx, const MergeWhenClause *node } static void -_fingerprintRoleSpec(FingerprintContext *ctx, const RoleSpec *node, const void *parent, const char *field_name, unsigned int depth) -{ - // Intentionally ignoring node->location for fingerprinting - - if (node->rolename != NULL) { - _fingerprintString(ctx, "rolename"); - _fingerprintString(ctx, node->rolename); - } - - if (true) { - _fingerprintString(ctx, "roletype"); - _fingerprintString(ctx, _enumToStringRoleSpecType(node->roletype)); - } - -} - -static void -_fingerprintTriggerTransition(FingerprintContext *ctx, const TriggerTransition *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->isNew) { - _fingerprintString(ctx, "isNew"); - _fingerprintString(ctx, "true"); - } - - if (node->isTable) { - _fingerprintString(ctx, "isTable"); - _fingerprintString(ctx, "true"); - } - - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } - -} - -static void -_fingerprintPartitionElem(FingerprintContext *ctx, const PartitionElem *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterTSDictionaryStmt(FingerprintContext *ctx, const AlterTSDictionaryStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->collation != NULL && node->collation->length > 0) { + if (node->dictname != NULL && node->dictname->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "collation"); + _fingerprintString(ctx, "dictname"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->collation, node, "collation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->collation) == 1 && linitial(node->collation) == NIL)) { + _fingerprintNode(ctx, node->dictname, node, "dictname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->dictname) == 1 && linitial(node->dictname) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->expr != NULL) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "expr"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->expr, node, "expr", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } +} - // Intentionally ignoring node->location for fingerprinting +static void +_fingerprintAlterTSConfigurationStmt(FingerprintContext *ctx, const AlterTSConfigurationStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->cfgname != NULL && node->cfgname->length > 0) { + XXH3_state_t* prev = XXH3_createState(); + XXH64_hash_t hash; - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } + XXH3_copyState(prev, ctx->xxh_state); + _fingerprintString(ctx, "cfgname"); - if (node->opclass != NULL && node->opclass->length > 0) { + hash = XXH3_64bits_digest(ctx->xxh_state); + _fingerprintNode(ctx, node->cfgname, node, "cfgname", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->cfgname) == 1 && linitial(node->cfgname) == NIL)) { + XXH3_copyState(ctx->xxh_state, prev); + if (ctx->write_tokens) + dlist_delete(dlist_tail_node(&ctx->tokens)); + } + XXH3_freeState(prev); + } + if (node->dicts != NULL && node->dicts->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "opclass"); + _fingerprintString(ctx, "dicts"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->opclass, node, "opclass", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->opclass) == 1 && linitial(node->opclass) == NIL)) { + _fingerprintNode(ctx, node->dicts, node, "dicts", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->dicts) == 1 && linitial(node->dicts) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } -} + if (true) { + _fingerprintString(ctx, "kind"); + _fingerprintString(ctx, _enumToStringAlterTSConfigType(node->kind)); + } -static void -_fingerprintPartitionSpec(FingerprintContext *ctx, const PartitionSpec *node, const void *parent, const char *field_name, unsigned int depth) -{ - // Intentionally ignoring node->location for fingerprinting + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); + _fingerprintString(ctx, "true"); + } - if (node->partParams != NULL && node->partParams->length > 0) { + if (node->override) { + _fingerprintString(ctx, "override"); + _fingerprintString(ctx, "true"); + } + + if (node->replace) { + _fingerprintString(ctx, "replace"); + _fingerprintString(ctx, "true"); + } + + if (node->tokentype != NULL && node->tokentype->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "partParams"); + _fingerprintString(ctx, "tokentype"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->partParams, node, "partParams", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->partParams) == 1 && linitial(node->partParams) == NIL)) { + _fingerprintNode(ctx, node->tokentype, node, "tokentype", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->tokentype) == 1 && linitial(node->tokentype) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->strategy != NULL) { - _fingerprintString(ctx, "strategy"); - _fingerprintString(ctx, node->strategy); - } - } static void -_fingerprintPartitionBoundSpec(FingerprintContext *ctx, const PartitionBoundSpec *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintPublicationTable(FingerprintContext *ctx, const PublicationTable *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->is_default) { - _fingerprintString(ctx, "is_default"); - _fingerprintString(ctx, "true"); - } - - if (node->listdatums != NULL && node->listdatums->length > 0) { + if (node->columns != NULL && node->columns->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "listdatums"); + _fingerprintString(ctx, "columns"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->listdatums, node, "listdatums", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->listdatums) == 1 && linitial(node->listdatums) == NIL)) { + _fingerprintNode(ctx, node->columns, node, "columns", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->columns) == 1 && linitial(node->columns) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - // Intentionally ignoring node->location for fingerprinting - - if (node->lowerdatums != NULL && node->lowerdatums->length > 0) { + if (node->relation != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "lowerdatums"); + _fingerprintString(ctx, "relation"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->lowerdatums, node, "lowerdatums", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->lowerdatums) == 1 && linitial(node->lowerdatums) == NIL)) { + _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->modulus != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->modulus); - _fingerprintString(ctx, "modulus"); - _fingerprintString(ctx, buffer); - } - - if (node->remainder != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->remainder); - _fingerprintString(ctx, "remainder"); - _fingerprintString(ctx, buffer); - } - - if (node->strategy != 0) { - char buffer[2] = {node->strategy, '\0'}; - _fingerprintString(ctx, "strategy"); - _fingerprintString(ctx, buffer); - } - if (node->upperdatums != NULL && node->upperdatums->length > 0) { + if (node->whereClause != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "upperdatums"); + _fingerprintString(ctx, "whereClause"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->upperdatums, node, "upperdatums", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->upperdatums) == 1 && linitial(node->upperdatums) == NIL)) { + _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + } static void -_fingerprintPartitionRangeDatum(FingerprintContext *ctx, const PartitionRangeDatum *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintPublicationObjSpec(FingerprintContext *ctx, const PublicationObjSpec *node, const void *parent, const char *field_name, unsigned int depth) { - if (true) { - _fingerprintString(ctx, "kind"); - _fingerprintString(ctx, _enumToStringPartitionRangeDatumKind(node->kind)); + // Intentionally ignoring node->location for fingerprinting + + if (node->name != NULL) { + _fingerprintString(ctx, "name"); + _fingerprintString(ctx, node->name); } - // Intentionally ignoring node->location for fingerprinting + if (true) { + _fingerprintString(ctx, "pubobjtype"); + _fingerprintString(ctx, _enumToStringPublicationObjSpecType(node->pubobjtype)); + } - if (node->value != NULL) { + if (node->pubtable != NULL) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "value"); + _fingerprintString(ctx, "pubtable"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->value, node, "value", depth + 1); + _fingerprintPublicationTable(ctx, node->pubtable, node, "pubtable", depth + 1); if (hash == XXH3_64bits_digest(ctx->xxh_state)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) @@ -12995,86 +13652,96 @@ _fingerprintPartitionRangeDatum(FingerprintContext *ctx, const PartitionRangeDat } static void -_fingerprintPartitionCmd(FingerprintContext *ctx, const PartitionCmd *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreatePublicationStmt(FingerprintContext *ctx, const CreatePublicationStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->bound != NULL) { + if (node->for_all_tables) { + _fingerprintString(ctx, "for_all_tables"); + _fingerprintString(ctx, "true"); + } + + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "bound"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintPartitionBoundSpec(ctx, node->bound, node, "bound", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->concurrent) { - _fingerprintString(ctx, "concurrent"); - _fingerprintString(ctx, "true"); + if (node->pubname != NULL) { + _fingerprintString(ctx, "pubname"); + _fingerprintString(ctx, node->pubname); } - if (node->name != NULL) { + if (node->pubobjects != NULL && node->pubobjects->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "name"); + _fingerprintString(ctx, "pubobjects"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->name, node, "name", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->pubobjects, node, "pubobjects", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->pubobjects) == 1 && linitial(node->pubobjects) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - } static void -_fingerprintVacuumRelation(FingerprintContext *ctx, const VacuumRelation *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintAlterPublicationStmt(FingerprintContext *ctx, const AlterPublicationStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->oid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->oid); - _fingerprintString(ctx, "oid"); - _fingerprintString(ctx, buffer); + if (true) { + _fingerprintString(ctx, "action"); + _fingerprintString(ctx, _enumToStringAlterPublicationAction(node->action)); } - if (node->relation != NULL) { + if (node->for_all_tables) { + _fingerprintString(ctx, "for_all_tables"); + _fingerprintString(ctx, "true"); + } + + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->pubname != NULL) { + _fingerprintString(ctx, "pubname"); + _fingerprintString(ctx, node->pubname); + } - if (node->va_cols != NULL && node->va_cols->length > 0) { + if (node->pubobjects != NULL && node->pubobjects->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "va_cols"); + _fingerprintString(ctx, "pubobjects"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->va_cols, node, "va_cols", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->va_cols) == 1 && linitial(node->va_cols) == NIL)) { + _fingerprintNode(ctx, node->pubobjects, node, "pubobjects", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->pubobjects) == 1 && linitial(node->pubobjects) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); @@ -13084,127 +13751,120 @@ _fingerprintVacuumRelation(FingerprintContext *ctx, const VacuumRelation *node, } static void -_fingerprintPublicationObjSpec(FingerprintContext *ctx, const PublicationObjSpec *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintCreateSubscriptionStmt(FingerprintContext *ctx, const CreateSubscriptionStmt *node, const void *parent, const char *field_name, unsigned int depth) { - // Intentionally ignoring node->location for fingerprinting - - if (node->name != NULL) { - _fingerprintString(ctx, "name"); - _fingerprintString(ctx, node->name); - } - - if (true) { - _fingerprintString(ctx, "pubobjtype"); - _fingerprintString(ctx, _enumToStringPublicationObjSpecType(node->pubobjtype)); + if (node->conninfo != NULL) { + _fingerprintString(ctx, "conninfo"); + _fingerprintString(ctx, node->conninfo); } - if (node->pubtable != NULL) { + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "pubtable"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintPublicationTable(ctx, node->pubtable, node, "pubtable", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - -} - -static void -_fingerprintPublicationTable(FingerprintContext *ctx, const PublicationTable *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->columns != NULL && node->columns->length > 0) { + if (node->publication != NULL && node->publication->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "columns"); + _fingerprintString(ctx, "publication"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->columns, node, "columns", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->columns) == 1 && linitial(node->columns) == NIL)) { + _fingerprintNode(ctx, node->publication, node, "publication", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->publication) == 1 && linitial(node->publication) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - if (node->relation != NULL) { + if (node->subname != NULL) { + _fingerprintString(ctx, "subname"); + _fingerprintString(ctx, node->subname); + } + +} + +static void +_fingerprintAlterSubscriptionStmt(FingerprintContext *ctx, const AlterSubscriptionStmt *node, const void *parent, const char *field_name, unsigned int depth) +{ + if (node->conninfo != NULL) { + _fingerprintString(ctx, "conninfo"); + _fingerprintString(ctx, node->conninfo); + } + + if (true) { + _fingerprintString(ctx, "kind"); + _fingerprintString(ctx, _enumToStringAlterSubscriptionType(node->kind)); + } + + if (node->options != NULL && node->options->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "relation"); + _fingerprintString(ctx, "options"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintRangeVar(ctx, node->relation, node, "relation", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->options, node, "options", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->options) == 1 && linitial(node->options) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } - - if (node->whereClause != NULL) { + if (node->publication != NULL && node->publication->length > 0) { XXH3_state_t* prev = XXH3_createState(); XXH64_hash_t hash; XXH3_copyState(prev, ctx->xxh_state); - _fingerprintString(ctx, "whereClause"); + _fingerprintString(ctx, "publication"); hash = XXH3_64bits_digest(ctx->xxh_state); - _fingerprintNode(ctx, node->whereClause, node, "whereClause", depth + 1); - if (hash == XXH3_64bits_digest(ctx->xxh_state)) { + _fingerprintNode(ctx, node->publication, node, "publication", depth + 1); + if (hash == XXH3_64bits_digest(ctx->xxh_state) && !(list_length(node->publication) == 1 && linitial(node->publication) == NIL)) { XXH3_copyState(ctx->xxh_state, prev); if (ctx->write_tokens) dlist_delete(dlist_tail_node(&ctx->tokens)); } XXH3_freeState(prev); } + if (node->subname != NULL) { + _fingerprintString(ctx, "subname"); + _fingerprintString(ctx, node->subname); + } } static void -_fingerprintInlineCodeBlock(FingerprintContext *ctx, const InlineCodeBlock *node, const void *parent, const char *field_name, unsigned int depth) +_fingerprintDropSubscriptionStmt(FingerprintContext *ctx, const DropSubscriptionStmt *node, const void *parent, const char *field_name, unsigned int depth) { - if (node->atomic) { - _fingerprintString(ctx, "atomic"); - _fingerprintString(ctx, "true"); + if (true) { + _fingerprintString(ctx, "behavior"); + _fingerprintString(ctx, _enumToStringDropBehavior(node->behavior)); } - if (node->langIsTrusted) { - _fingerprintString(ctx, "langIsTrusted"); + if (node->missing_ok) { + _fingerprintString(ctx, "missing_ok"); _fingerprintString(ctx, "true"); } - if (node->langOid != 0) { - char buffer[50]; - sprintf(buffer, "%d", node->langOid); - _fingerprintString(ctx, "langOid"); - _fingerprintString(ctx, buffer); - } - - if (node->source_text != NULL) { - _fingerprintString(ctx, "source_text"); - _fingerprintString(ctx, node->source_text); - } - -} - -static void -_fingerprintCallContext(FingerprintContext *ctx, const CallContext *node, const void *parent, const char *field_name, unsigned int depth) -{ - if (node->atomic) { - _fingerprintString(ctx, "atomic"); - _fingerprintString(ctx, "true"); + if (node->subname != NULL) { + _fingerprintString(ctx, "subname"); + _fingerprintString(ctx, node->subname); } } diff --git a/parser/include/pg_query_outfuncs_conds.c b/parser/include/pg_query_outfuncs_conds.c index a0d56499..6fa3fb22 100644 --- a/parser/include/pg_query_outfuncs_conds.c +++ b/parser/include/pg_query_outfuncs_conds.c @@ -36,6 +36,9 @@ case T_RangeVar: case T_TableFunc: OUT_NODE(TableFunc, TableFunc, table_func, TABLE_FUNC, TableFunc, table_func); break; +case T_IntoClause: + OUT_NODE(IntoClause, IntoClause, into_clause, INTO_CLAUSE, IntoClause, into_clause); + break; case T_Var: OUT_NODE(Var, Var, var, VAR, Var, var); break; @@ -135,6 +138,21 @@ case T_SQLValueFunction: case T_XmlExpr: OUT_NODE(XmlExpr, XmlExpr, xml_expr, XML_EXPR, XmlExpr, xml_expr); break; +case T_JsonFormat: + OUT_NODE(JsonFormat, JsonFormat, json_format, JSON_FORMAT, JsonFormat, json_format); + break; +case T_JsonReturning: + OUT_NODE(JsonReturning, JsonReturning, json_returning, JSON_RETURNING, JsonReturning, json_returning); + break; +case T_JsonValueExpr: + OUT_NODE(JsonValueExpr, JsonValueExpr, json_value_expr, JSON_VALUE_EXPR, JsonValueExpr, json_value_expr); + break; +case T_JsonConstructorExpr: + OUT_NODE(JsonConstructorExpr, JsonConstructorExpr, json_constructor_expr, JSON_CONSTRUCTOR_EXPR, JsonConstructorExpr, json_constructor_expr); + break; +case T_JsonIsPredicate: + OUT_NODE(JsonIsPredicate, JsonIsPredicate, json_is_predicate, JSON_IS_PREDICATE, JsonIsPredicate, json_is_predicate); + break; case T_NullTest: OUT_NODE(NullTest, NullTest, null_test, NULL_TEST, NullTest, null_test); break; @@ -174,269 +192,278 @@ case T_FromExpr: case T_OnConflictExpr: OUT_NODE(OnConflictExpr, OnConflictExpr, on_conflict_expr, ON_CONFLICT_EXPR, OnConflictExpr, on_conflict_expr); break; -case T_IntoClause: - OUT_NODE(IntoClause, IntoClause, into_clause, INTO_CLAUSE, IntoClause, into_clause); - break; -case T_MergeAction: - OUT_NODE(MergeAction, MergeAction, merge_action, MERGE_ACTION, MergeAction, merge_action); - break; -case T_RawStmt: - OUT_NODE(RawStmt, RawStmt, raw_stmt, RAW_STMT, RawStmt, raw_stmt); - break; case T_Query: OUT_NODE(Query, Query, query, QUERY, Query, query); break; -case T_InsertStmt: - OUT_NODE(InsertStmt, InsertStmt, insert_stmt, INSERT_STMT, InsertStmt, insert_stmt); +case T_TypeName: + OUT_NODE(TypeName, TypeName, type_name, TYPE_NAME, TypeName, type_name); break; -case T_DeleteStmt: - OUT_NODE(DeleteStmt, DeleteStmt, delete_stmt, DELETE_STMT, DeleteStmt, delete_stmt); +case T_ColumnRef: + OUT_NODE(ColumnRef, ColumnRef, column_ref, COLUMN_REF, ColumnRef, column_ref); break; -case T_UpdateStmt: - OUT_NODE(UpdateStmt, UpdateStmt, update_stmt, UPDATE_STMT, UpdateStmt, update_stmt); +case T_ParamRef: + OUT_NODE(ParamRef, ParamRef, param_ref, PARAM_REF, ParamRef, param_ref); break; -case T_MergeStmt: - OUT_NODE(MergeStmt, MergeStmt, merge_stmt, MERGE_STMT, MergeStmt, merge_stmt); +case T_A_Expr: + OUT_NODE(A_Expr, AExpr, a__expr, A_EXPR, A_Expr, a_expr); break; -case T_SelectStmt: - OUT_NODE(SelectStmt, SelectStmt, select_stmt, SELECT_STMT, SelectStmt, select_stmt); +case T_TypeCast: + OUT_NODE(TypeCast, TypeCast, type_cast, TYPE_CAST, TypeCast, type_cast); break; -case T_ReturnStmt: - OUT_NODE(ReturnStmt, ReturnStmt, return_stmt, RETURN_STMT, ReturnStmt, return_stmt); +case T_CollateClause: + OUT_NODE(CollateClause, CollateClause, collate_clause, COLLATE_CLAUSE, CollateClause, collate_clause); break; -case T_PLAssignStmt: - OUT_NODE(PLAssignStmt, PLAssignStmt, plassign_stmt, PLASSIGN_STMT, PLAssignStmt, plassign_stmt); +case T_RoleSpec: + OUT_NODE(RoleSpec, RoleSpec, role_spec, ROLE_SPEC, RoleSpec, role_spec); break; -case T_AlterTableStmt: - OUT_NODE(AlterTableStmt, AlterTableStmt, alter_table_stmt, ALTER_TABLE_STMT, AlterTableStmt, alter_table_stmt); +case T_FuncCall: + OUT_NODE(FuncCall, FuncCall, func_call, FUNC_CALL, FuncCall, func_call); break; -case T_AlterTableCmd: - OUT_NODE(AlterTableCmd, AlterTableCmd, alter_table_cmd, ALTER_TABLE_CMD, AlterTableCmd, alter_table_cmd); +case T_A_Star: + OUT_NODE(A_Star, AStar, a__star, A_STAR, A_Star, a_star); break; -case T_AlterDomainStmt: - OUT_NODE(AlterDomainStmt, AlterDomainStmt, alter_domain_stmt, ALTER_DOMAIN_STMT, AlterDomainStmt, alter_domain_stmt); +case T_A_Indices: + OUT_NODE(A_Indices, AIndices, a__indices, A_INDICES, A_Indices, a_indices); break; -case T_SetOperationStmt: - OUT_NODE(SetOperationStmt, SetOperationStmt, set_operation_stmt, SET_OPERATION_STMT, SetOperationStmt, set_operation_stmt); +case T_A_Indirection: + OUT_NODE(A_Indirection, AIndirection, a__indirection, A_INDIRECTION, A_Indirection, a_indirection); break; -case T_GrantStmt: - OUT_NODE(GrantStmt, GrantStmt, grant_stmt, GRANT_STMT, GrantStmt, grant_stmt); +case T_A_ArrayExpr: + OUT_NODE(A_ArrayExpr, AArrayExpr, a__array_expr, A_ARRAY_EXPR, A_ArrayExpr, a_array_expr); break; -case T_GrantRoleStmt: - OUT_NODE(GrantRoleStmt, GrantRoleStmt, grant_role_stmt, GRANT_ROLE_STMT, GrantRoleStmt, grant_role_stmt); +case T_ResTarget: + OUT_NODE(ResTarget, ResTarget, res_target, RES_TARGET, ResTarget, res_target); break; -case T_AlterDefaultPrivilegesStmt: - OUT_NODE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt, alter_default_privileges_stmt, ALTER_DEFAULT_PRIVILEGES_STMT, AlterDefaultPrivilegesStmt, alter_default_privileges_stmt); +case T_MultiAssignRef: + OUT_NODE(MultiAssignRef, MultiAssignRef, multi_assign_ref, MULTI_ASSIGN_REF, MultiAssignRef, multi_assign_ref); break; -case T_ClosePortalStmt: - OUT_NODE(ClosePortalStmt, ClosePortalStmt, close_portal_stmt, CLOSE_PORTAL_STMT, ClosePortalStmt, close_portal_stmt); +case T_SortBy: + OUT_NODE(SortBy, SortBy, sort_by, SORT_BY, SortBy, sort_by); break; -case T_ClusterStmt: - OUT_NODE(ClusterStmt, ClusterStmt, cluster_stmt, CLUSTER_STMT, ClusterStmt, cluster_stmt); +case T_WindowDef: + OUT_NODE(WindowDef, WindowDef, window_def, WINDOW_DEF, WindowDef, window_def); break; -case T_CopyStmt: - OUT_NODE(CopyStmt, CopyStmt, copy_stmt, COPY_STMT, CopyStmt, copy_stmt); +case T_RangeSubselect: + OUT_NODE(RangeSubselect, RangeSubselect, range_subselect, RANGE_SUBSELECT, RangeSubselect, range_subselect); break; -case T_CreateStmt: - OUT_NODE(CreateStmt, CreateStmt, create_stmt, CREATE_STMT, CreateStmt, create_stmt); +case T_RangeFunction: + OUT_NODE(RangeFunction, RangeFunction, range_function, RANGE_FUNCTION, RangeFunction, range_function); break; -case T_DefineStmt: - OUT_NODE(DefineStmt, DefineStmt, define_stmt, DEFINE_STMT, DefineStmt, define_stmt); +case T_RangeTableFunc: + OUT_NODE(RangeTableFunc, RangeTableFunc, range_table_func, RANGE_TABLE_FUNC, RangeTableFunc, range_table_func); break; -case T_DropStmt: - OUT_NODE(DropStmt, DropStmt, drop_stmt, DROP_STMT, DropStmt, drop_stmt); +case T_RangeTableFuncCol: + OUT_NODE(RangeTableFuncCol, RangeTableFuncCol, range_table_func_col, RANGE_TABLE_FUNC_COL, RangeTableFuncCol, range_table_func_col); break; -case T_TruncateStmt: - OUT_NODE(TruncateStmt, TruncateStmt, truncate_stmt, TRUNCATE_STMT, TruncateStmt, truncate_stmt); +case T_RangeTableSample: + OUT_NODE(RangeTableSample, RangeTableSample, range_table_sample, RANGE_TABLE_SAMPLE, RangeTableSample, range_table_sample); break; -case T_CommentStmt: - OUT_NODE(CommentStmt, CommentStmt, comment_stmt, COMMENT_STMT, CommentStmt, comment_stmt); +case T_ColumnDef: + OUT_NODE(ColumnDef, ColumnDef, column_def, COLUMN_DEF, ColumnDef, column_def); break; -case T_FetchStmt: - OUT_NODE(FetchStmt, FetchStmt, fetch_stmt, FETCH_STMT, FetchStmt, fetch_stmt); +case T_TableLikeClause: + OUT_NODE(TableLikeClause, TableLikeClause, table_like_clause, TABLE_LIKE_CLAUSE, TableLikeClause, table_like_clause); break; -case T_IndexStmt: - OUT_NODE(IndexStmt, IndexStmt, index_stmt, INDEX_STMT, IndexStmt, index_stmt); +case T_IndexElem: + OUT_NODE(IndexElem, IndexElem, index_elem, INDEX_ELEM, IndexElem, index_elem); break; -case T_CreateFunctionStmt: - OUT_NODE(CreateFunctionStmt, CreateFunctionStmt, create_function_stmt, CREATE_FUNCTION_STMT, CreateFunctionStmt, create_function_stmt); +case T_DefElem: + OUT_NODE(DefElem, DefElem, def_elem, DEF_ELEM, DefElem, def_elem); break; -case T_AlterFunctionStmt: - OUT_NODE(AlterFunctionStmt, AlterFunctionStmt, alter_function_stmt, ALTER_FUNCTION_STMT, AlterFunctionStmt, alter_function_stmt); +case T_LockingClause: + OUT_NODE(LockingClause, LockingClause, locking_clause, LOCKING_CLAUSE, LockingClause, locking_clause); break; -case T_DoStmt: - OUT_NODE(DoStmt, DoStmt, do_stmt, DO_STMT, DoStmt, do_stmt); +case T_XmlSerialize: + OUT_NODE(XmlSerialize, XmlSerialize, xml_serialize, XML_SERIALIZE, XmlSerialize, xml_serialize); break; -case T_RenameStmt: - OUT_NODE(RenameStmt, RenameStmt, rename_stmt, RENAME_STMT, RenameStmt, rename_stmt); +case T_PartitionElem: + OUT_NODE(PartitionElem, PartitionElem, partition_elem, PARTITION_ELEM, PartitionElem, partition_elem); break; -case T_RuleStmt: - OUT_NODE(RuleStmt, RuleStmt, rule_stmt, RULE_STMT, RuleStmt, rule_stmt); +case T_PartitionSpec: + OUT_NODE(PartitionSpec, PartitionSpec, partition_spec, PARTITION_SPEC, PartitionSpec, partition_spec); break; -case T_NotifyStmt: - OUT_NODE(NotifyStmt, NotifyStmt, notify_stmt, NOTIFY_STMT, NotifyStmt, notify_stmt); +case T_PartitionBoundSpec: + OUT_NODE(PartitionBoundSpec, PartitionBoundSpec, partition_bound_spec, PARTITION_BOUND_SPEC, PartitionBoundSpec, partition_bound_spec); break; -case T_ListenStmt: - OUT_NODE(ListenStmt, ListenStmt, listen_stmt, LISTEN_STMT, ListenStmt, listen_stmt); +case T_PartitionRangeDatum: + OUT_NODE(PartitionRangeDatum, PartitionRangeDatum, partition_range_datum, PARTITION_RANGE_DATUM, PartitionRangeDatum, partition_range_datum); break; -case T_UnlistenStmt: - OUT_NODE(UnlistenStmt, UnlistenStmt, unlisten_stmt, UNLISTEN_STMT, UnlistenStmt, unlisten_stmt); +case T_PartitionCmd: + OUT_NODE(PartitionCmd, PartitionCmd, partition_cmd, PARTITION_CMD, PartitionCmd, partition_cmd); break; -case T_TransactionStmt: - OUT_NODE(TransactionStmt, TransactionStmt, transaction_stmt, TRANSACTION_STMT, TransactionStmt, transaction_stmt); +case T_RangeTblEntry: + OUT_NODE(RangeTblEntry, RangeTblEntry, range_tbl_entry, RANGE_TBL_ENTRY, RangeTblEntry, range_tbl_entry); break; -case T_ViewStmt: - OUT_NODE(ViewStmt, ViewStmt, view_stmt, VIEW_STMT, ViewStmt, view_stmt); +case T_RTEPermissionInfo: + OUT_NODE(RTEPermissionInfo, RTEPermissionInfo, rtepermission_info, RTEPERMISSION_INFO, RTEPermissionInfo, rtepermission_info); break; -case T_LoadStmt: - OUT_NODE(LoadStmt, LoadStmt, load_stmt, LOAD_STMT, LoadStmt, load_stmt); +case T_RangeTblFunction: + OUT_NODE(RangeTblFunction, RangeTblFunction, range_tbl_function, RANGE_TBL_FUNCTION, RangeTblFunction, range_tbl_function); break; -case T_CreateDomainStmt: - OUT_NODE(CreateDomainStmt, CreateDomainStmt, create_domain_stmt, CREATE_DOMAIN_STMT, CreateDomainStmt, create_domain_stmt); +case T_TableSampleClause: + OUT_NODE(TableSampleClause, TableSampleClause, table_sample_clause, TABLE_SAMPLE_CLAUSE, TableSampleClause, table_sample_clause); break; -case T_CreatedbStmt: - OUT_NODE(CreatedbStmt, CreatedbStmt, createdb_stmt, CREATEDB_STMT, CreatedbStmt, createdb_stmt); +case T_WithCheckOption: + OUT_NODE(WithCheckOption, WithCheckOption, with_check_option, WITH_CHECK_OPTION, WithCheckOption, with_check_option); break; -case T_DropdbStmt: - OUT_NODE(DropdbStmt, DropdbStmt, dropdb_stmt, DROPDB_STMT, DropdbStmt, dropdb_stmt); +case T_SortGroupClause: + OUT_NODE(SortGroupClause, SortGroupClause, sort_group_clause, SORT_GROUP_CLAUSE, SortGroupClause, sort_group_clause); break; -case T_VacuumStmt: - OUT_NODE(VacuumStmt, VacuumStmt, vacuum_stmt, VACUUM_STMT, VacuumStmt, vacuum_stmt); +case T_GroupingSet: + OUT_NODE(GroupingSet, GroupingSet, grouping_set, GROUPING_SET, GroupingSet, grouping_set); break; -case T_ExplainStmt: - OUT_NODE(ExplainStmt, ExplainStmt, explain_stmt, EXPLAIN_STMT, ExplainStmt, explain_stmt); +case T_WindowClause: + OUT_NODE(WindowClause, WindowClause, window_clause, WINDOW_CLAUSE, WindowClause, window_clause); break; -case T_CreateTableAsStmt: - OUT_NODE(CreateTableAsStmt, CreateTableAsStmt, create_table_as_stmt, CREATE_TABLE_AS_STMT, CreateTableAsStmt, create_table_as_stmt); +case T_RowMarkClause: + OUT_NODE(RowMarkClause, RowMarkClause, row_mark_clause, ROW_MARK_CLAUSE, RowMarkClause, row_mark_clause); break; -case T_CreateSeqStmt: - OUT_NODE(CreateSeqStmt, CreateSeqStmt, create_seq_stmt, CREATE_SEQ_STMT, CreateSeqStmt, create_seq_stmt); +case T_WithClause: + OUT_NODE(WithClause, WithClause, with_clause, WITH_CLAUSE, WithClause, with_clause); break; -case T_AlterSeqStmt: - OUT_NODE(AlterSeqStmt, AlterSeqStmt, alter_seq_stmt, ALTER_SEQ_STMT, AlterSeqStmt, alter_seq_stmt); +case T_InferClause: + OUT_NODE(InferClause, InferClause, infer_clause, INFER_CLAUSE, InferClause, infer_clause); break; -case T_VariableSetStmt: - OUT_NODE(VariableSetStmt, VariableSetStmt, variable_set_stmt, VARIABLE_SET_STMT, VariableSetStmt, variable_set_stmt); +case T_OnConflictClause: + OUT_NODE(OnConflictClause, OnConflictClause, on_conflict_clause, ON_CONFLICT_CLAUSE, OnConflictClause, on_conflict_clause); break; -case T_VariableShowStmt: - OUT_NODE(VariableShowStmt, VariableShowStmt, variable_show_stmt, VARIABLE_SHOW_STMT, VariableShowStmt, variable_show_stmt); +case T_CTESearchClause: + OUT_NODE(CTESearchClause, CTESearchClause, ctesearch_clause, CTESEARCH_CLAUSE, CTESearchClause, ctesearch_clause); break; -case T_DiscardStmt: - OUT_NODE(DiscardStmt, DiscardStmt, discard_stmt, DISCARD_STMT, DiscardStmt, discard_stmt); +case T_CTECycleClause: + OUT_NODE(CTECycleClause, CTECycleClause, ctecycle_clause, CTECYCLE_CLAUSE, CTECycleClause, ctecycle_clause); break; -case T_CreateTrigStmt: - OUT_NODE(CreateTrigStmt, CreateTrigStmt, create_trig_stmt, CREATE_TRIG_STMT, CreateTrigStmt, create_trig_stmt); +case T_CommonTableExpr: + OUT_NODE(CommonTableExpr, CommonTableExpr, common_table_expr, COMMON_TABLE_EXPR, CommonTableExpr, common_table_expr); break; -case T_CreatePLangStmt: - OUT_NODE(CreatePLangStmt, CreatePLangStmt, create_plang_stmt, CREATE_PLANG_STMT, CreatePLangStmt, create_plang_stmt); +case T_MergeWhenClause: + OUT_NODE(MergeWhenClause, MergeWhenClause, merge_when_clause, MERGE_WHEN_CLAUSE, MergeWhenClause, merge_when_clause); break; -case T_CreateRoleStmt: - OUT_NODE(CreateRoleStmt, CreateRoleStmt, create_role_stmt, CREATE_ROLE_STMT, CreateRoleStmt, create_role_stmt); +case T_MergeAction: + OUT_NODE(MergeAction, MergeAction, merge_action, MERGE_ACTION, MergeAction, merge_action); break; -case T_AlterRoleStmt: - OUT_NODE(AlterRoleStmt, AlterRoleStmt, alter_role_stmt, ALTER_ROLE_STMT, AlterRoleStmt, alter_role_stmt); +case T_TriggerTransition: + OUT_NODE(TriggerTransition, TriggerTransition, trigger_transition, TRIGGER_TRANSITION, TriggerTransition, trigger_transition); break; -case T_DropRoleStmt: - OUT_NODE(DropRoleStmt, DropRoleStmt, drop_role_stmt, DROP_ROLE_STMT, DropRoleStmt, drop_role_stmt); +case T_JsonOutput: + OUT_NODE(JsonOutput, JsonOutput, json_output, JSON_OUTPUT, JsonOutput, json_output); break; -case T_LockStmt: - OUT_NODE(LockStmt, LockStmt, lock_stmt, LOCK_STMT, LockStmt, lock_stmt); +case T_JsonKeyValue: + OUT_NODE(JsonKeyValue, JsonKeyValue, json_key_value, JSON_KEY_VALUE, JsonKeyValue, json_key_value); break; -case T_ConstraintsSetStmt: - OUT_NODE(ConstraintsSetStmt, ConstraintsSetStmt, constraints_set_stmt, CONSTRAINTS_SET_STMT, ConstraintsSetStmt, constraints_set_stmt); +case T_JsonObjectConstructor: + OUT_NODE(JsonObjectConstructor, JsonObjectConstructor, json_object_constructor, JSON_OBJECT_CONSTRUCTOR, JsonObjectConstructor, json_object_constructor); break; -case T_ReindexStmt: - OUT_NODE(ReindexStmt, ReindexStmt, reindex_stmt, REINDEX_STMT, ReindexStmt, reindex_stmt); +case T_JsonArrayConstructor: + OUT_NODE(JsonArrayConstructor, JsonArrayConstructor, json_array_constructor, JSON_ARRAY_CONSTRUCTOR, JsonArrayConstructor, json_array_constructor); break; -case T_CheckPointStmt: - OUT_NODE(CheckPointStmt, CheckPointStmt, check_point_stmt, CHECK_POINT_STMT, CheckPointStmt, check_point_stmt); +case T_JsonArrayQueryConstructor: + OUT_NODE(JsonArrayQueryConstructor, JsonArrayQueryConstructor, json_array_query_constructor, JSON_ARRAY_QUERY_CONSTRUCTOR, JsonArrayQueryConstructor, json_array_query_constructor); break; -case T_CreateSchemaStmt: - OUT_NODE(CreateSchemaStmt, CreateSchemaStmt, create_schema_stmt, CREATE_SCHEMA_STMT, CreateSchemaStmt, create_schema_stmt); +case T_JsonAggConstructor: + OUT_NODE(JsonAggConstructor, JsonAggConstructor, json_agg_constructor, JSON_AGG_CONSTRUCTOR, JsonAggConstructor, json_agg_constructor); break; -case T_AlterDatabaseStmt: - OUT_NODE(AlterDatabaseStmt, AlterDatabaseStmt, alter_database_stmt, ALTER_DATABASE_STMT, AlterDatabaseStmt, alter_database_stmt); +case T_JsonObjectAgg: + OUT_NODE(JsonObjectAgg, JsonObjectAgg, json_object_agg, JSON_OBJECT_AGG, JsonObjectAgg, json_object_agg); break; -case T_AlterDatabaseRefreshCollStmt: - OUT_NODE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt, ALTER_DATABASE_REFRESH_COLL_STMT, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt); +case T_JsonArrayAgg: + OUT_NODE(JsonArrayAgg, JsonArrayAgg, json_array_agg, JSON_ARRAY_AGG, JsonArrayAgg, json_array_agg); break; -case T_AlterDatabaseSetStmt: - OUT_NODE(AlterDatabaseSetStmt, AlterDatabaseSetStmt, alter_database_set_stmt, ALTER_DATABASE_SET_STMT, AlterDatabaseSetStmt, alter_database_set_stmt); +case T_RawStmt: + OUT_NODE(RawStmt, RawStmt, raw_stmt, RAW_STMT, RawStmt, raw_stmt); break; -case T_AlterRoleSetStmt: - OUT_NODE(AlterRoleSetStmt, AlterRoleSetStmt, alter_role_set_stmt, ALTER_ROLE_SET_STMT, AlterRoleSetStmt, alter_role_set_stmt); +case T_InsertStmt: + OUT_NODE(InsertStmt, InsertStmt, insert_stmt, INSERT_STMT, InsertStmt, insert_stmt); break; -case T_CreateConversionStmt: - OUT_NODE(CreateConversionStmt, CreateConversionStmt, create_conversion_stmt, CREATE_CONVERSION_STMT, CreateConversionStmt, create_conversion_stmt); +case T_DeleteStmt: + OUT_NODE(DeleteStmt, DeleteStmt, delete_stmt, DELETE_STMT, DeleteStmt, delete_stmt); break; -case T_CreateCastStmt: - OUT_NODE(CreateCastStmt, CreateCastStmt, create_cast_stmt, CREATE_CAST_STMT, CreateCastStmt, create_cast_stmt); +case T_UpdateStmt: + OUT_NODE(UpdateStmt, UpdateStmt, update_stmt, UPDATE_STMT, UpdateStmt, update_stmt); break; -case T_CreateOpClassStmt: - OUT_NODE(CreateOpClassStmt, CreateOpClassStmt, create_op_class_stmt, CREATE_OP_CLASS_STMT, CreateOpClassStmt, create_op_class_stmt); +case T_MergeStmt: + OUT_NODE(MergeStmt, MergeStmt, merge_stmt, MERGE_STMT, MergeStmt, merge_stmt); break; -case T_CreateOpFamilyStmt: - OUT_NODE(CreateOpFamilyStmt, CreateOpFamilyStmt, create_op_family_stmt, CREATE_OP_FAMILY_STMT, CreateOpFamilyStmt, create_op_family_stmt); +case T_SelectStmt: + OUT_NODE(SelectStmt, SelectStmt, select_stmt, SELECT_STMT, SelectStmt, select_stmt); break; -case T_AlterOpFamilyStmt: - OUT_NODE(AlterOpFamilyStmt, AlterOpFamilyStmt, alter_op_family_stmt, ALTER_OP_FAMILY_STMT, AlterOpFamilyStmt, alter_op_family_stmt); +case T_SetOperationStmt: + OUT_NODE(SetOperationStmt, SetOperationStmt, set_operation_stmt, SET_OPERATION_STMT, SetOperationStmt, set_operation_stmt); break; -case T_PrepareStmt: - OUT_NODE(PrepareStmt, PrepareStmt, prepare_stmt, PREPARE_STMT, PrepareStmt, prepare_stmt); +case T_ReturnStmt: + OUT_NODE(ReturnStmt, ReturnStmt, return_stmt, RETURN_STMT, ReturnStmt, return_stmt); break; -case T_ExecuteStmt: - OUT_NODE(ExecuteStmt, ExecuteStmt, execute_stmt, EXECUTE_STMT, ExecuteStmt, execute_stmt); +case T_PLAssignStmt: + OUT_NODE(PLAssignStmt, PLAssignStmt, plassign_stmt, PLASSIGN_STMT, PLAssignStmt, plassign_stmt); break; -case T_DeallocateStmt: - OUT_NODE(DeallocateStmt, DeallocateStmt, deallocate_stmt, DEALLOCATE_STMT, DeallocateStmt, deallocate_stmt); +case T_CreateSchemaStmt: + OUT_NODE(CreateSchemaStmt, CreateSchemaStmt, create_schema_stmt, CREATE_SCHEMA_STMT, CreateSchemaStmt, create_schema_stmt); break; -case T_DeclareCursorStmt: - OUT_NODE(DeclareCursorStmt, DeclareCursorStmt, declare_cursor_stmt, DECLARE_CURSOR_STMT, DeclareCursorStmt, declare_cursor_stmt); +case T_AlterTableStmt: + OUT_NODE(AlterTableStmt, AlterTableStmt, alter_table_stmt, ALTER_TABLE_STMT, AlterTableStmt, alter_table_stmt); break; -case T_CreateTableSpaceStmt: - OUT_NODE(CreateTableSpaceStmt, CreateTableSpaceStmt, create_table_space_stmt, CREATE_TABLE_SPACE_STMT, CreateTableSpaceStmt, create_table_space_stmt); +case T_ReplicaIdentityStmt: + OUT_NODE(ReplicaIdentityStmt, ReplicaIdentityStmt, replica_identity_stmt, REPLICA_IDENTITY_STMT, ReplicaIdentityStmt, replica_identity_stmt); break; -case T_DropTableSpaceStmt: - OUT_NODE(DropTableSpaceStmt, DropTableSpaceStmt, drop_table_space_stmt, DROP_TABLE_SPACE_STMT, DropTableSpaceStmt, drop_table_space_stmt); +case T_AlterTableCmd: + OUT_NODE(AlterTableCmd, AlterTableCmd, alter_table_cmd, ALTER_TABLE_CMD, AlterTableCmd, alter_table_cmd); break; -case T_AlterObjectDependsStmt: - OUT_NODE(AlterObjectDependsStmt, AlterObjectDependsStmt, alter_object_depends_stmt, ALTER_OBJECT_DEPENDS_STMT, AlterObjectDependsStmt, alter_object_depends_stmt); +case T_AlterCollationStmt: + OUT_NODE(AlterCollationStmt, AlterCollationStmt, alter_collation_stmt, ALTER_COLLATION_STMT, AlterCollationStmt, alter_collation_stmt); break; -case T_AlterObjectSchemaStmt: - OUT_NODE(AlterObjectSchemaStmt, AlterObjectSchemaStmt, alter_object_schema_stmt, ALTER_OBJECT_SCHEMA_STMT, AlterObjectSchemaStmt, alter_object_schema_stmt); +case T_AlterDomainStmt: + OUT_NODE(AlterDomainStmt, AlterDomainStmt, alter_domain_stmt, ALTER_DOMAIN_STMT, AlterDomainStmt, alter_domain_stmt); break; -case T_AlterOwnerStmt: - OUT_NODE(AlterOwnerStmt, AlterOwnerStmt, alter_owner_stmt, ALTER_OWNER_STMT, AlterOwnerStmt, alter_owner_stmt); +case T_GrantStmt: + OUT_NODE(GrantStmt, GrantStmt, grant_stmt, GRANT_STMT, GrantStmt, grant_stmt); break; -case T_AlterOperatorStmt: - OUT_NODE(AlterOperatorStmt, AlterOperatorStmt, alter_operator_stmt, ALTER_OPERATOR_STMT, AlterOperatorStmt, alter_operator_stmt); +case T_ObjectWithArgs: + OUT_NODE(ObjectWithArgs, ObjectWithArgs, object_with_args, OBJECT_WITH_ARGS, ObjectWithArgs, object_with_args); break; -case T_AlterTypeStmt: - OUT_NODE(AlterTypeStmt, AlterTypeStmt, alter_type_stmt, ALTER_TYPE_STMT, AlterTypeStmt, alter_type_stmt); +case T_AccessPriv: + OUT_NODE(AccessPriv, AccessPriv, access_priv, ACCESS_PRIV, AccessPriv, access_priv); break; -case T_DropOwnedStmt: - OUT_NODE(DropOwnedStmt, DropOwnedStmt, drop_owned_stmt, DROP_OWNED_STMT, DropOwnedStmt, drop_owned_stmt); +case T_GrantRoleStmt: + OUT_NODE(GrantRoleStmt, GrantRoleStmt, grant_role_stmt, GRANT_ROLE_STMT, GrantRoleStmt, grant_role_stmt); break; -case T_ReassignOwnedStmt: - OUT_NODE(ReassignOwnedStmt, ReassignOwnedStmt, reassign_owned_stmt, REASSIGN_OWNED_STMT, ReassignOwnedStmt, reassign_owned_stmt); +case T_AlterDefaultPrivilegesStmt: + OUT_NODE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt, alter_default_privileges_stmt, ALTER_DEFAULT_PRIVILEGES_STMT, AlterDefaultPrivilegesStmt, alter_default_privileges_stmt); break; -case T_CompositeTypeStmt: - OUT_NODE(CompositeTypeStmt, CompositeTypeStmt, composite_type_stmt, COMPOSITE_TYPE_STMT, CompositeTypeStmt, composite_type_stmt); +case T_CopyStmt: + OUT_NODE(CopyStmt, CopyStmt, copy_stmt, COPY_STMT, CopyStmt, copy_stmt); break; -case T_CreateEnumStmt: - OUT_NODE(CreateEnumStmt, CreateEnumStmt, create_enum_stmt, CREATE_ENUM_STMT, CreateEnumStmt, create_enum_stmt); +case T_VariableSetStmt: + OUT_NODE(VariableSetStmt, VariableSetStmt, variable_set_stmt, VARIABLE_SET_STMT, VariableSetStmt, variable_set_stmt); break; -case T_CreateRangeStmt: - OUT_NODE(CreateRangeStmt, CreateRangeStmt, create_range_stmt, CREATE_RANGE_STMT, CreateRangeStmt, create_range_stmt); +case T_VariableShowStmt: + OUT_NODE(VariableShowStmt, VariableShowStmt, variable_show_stmt, VARIABLE_SHOW_STMT, VariableShowStmt, variable_show_stmt); break; -case T_AlterEnumStmt: - OUT_NODE(AlterEnumStmt, AlterEnumStmt, alter_enum_stmt, ALTER_ENUM_STMT, AlterEnumStmt, alter_enum_stmt); +case T_CreateStmt: + OUT_NODE(CreateStmt, CreateStmt, create_stmt, CREATE_STMT, CreateStmt, create_stmt); break; -case T_AlterTSDictionaryStmt: - OUT_NODE(AlterTSDictionaryStmt, AlterTSDictionaryStmt, alter_tsdictionary_stmt, ALTER_TSDICTIONARY_STMT, AlterTSDictionaryStmt, alter_tsdictionary_stmt); +case T_Constraint: + OUT_NODE(Constraint, Constraint, constraint, CONSTRAINT, Constraint, constraint); break; -case T_AlterTSConfigurationStmt: - OUT_NODE(AlterTSConfigurationStmt, AlterTSConfigurationStmt, alter_tsconfiguration_stmt, ALTER_TSCONFIGURATION_STMT, AlterTSConfigurationStmt, alter_tsconfiguration_stmt); +case T_CreateTableSpaceStmt: + OUT_NODE(CreateTableSpaceStmt, CreateTableSpaceStmt, create_table_space_stmt, CREATE_TABLE_SPACE_STMT, CreateTableSpaceStmt, create_table_space_stmt); + break; +case T_DropTableSpaceStmt: + OUT_NODE(DropTableSpaceStmt, DropTableSpaceStmt, drop_table_space_stmt, DROP_TABLE_SPACE_STMT, DropTableSpaceStmt, drop_table_space_stmt); + break; +case T_AlterTableSpaceOptionsStmt: + OUT_NODE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt, alter_table_space_options_stmt, ALTER_TABLE_SPACE_OPTIONS_STMT, AlterTableSpaceOptionsStmt, alter_table_space_options_stmt); + break; +case T_AlterTableMoveAllStmt: + OUT_NODE(AlterTableMoveAllStmt, AlterTableMoveAllStmt, alter_table_move_all_stmt, ALTER_TABLE_MOVE_ALL_STMT, AlterTableMoveAllStmt, alter_table_move_all_stmt); + break; +case T_CreateExtensionStmt: + OUT_NODE(CreateExtensionStmt, CreateExtensionStmt, create_extension_stmt, CREATE_EXTENSION_STMT, CreateExtensionStmt, create_extension_stmt); + break; +case T_AlterExtensionStmt: + OUT_NODE(AlterExtensionStmt, AlterExtensionStmt, alter_extension_stmt, ALTER_EXTENSION_STMT, AlterExtensionStmt, alter_extension_stmt); + break; +case T_AlterExtensionContentsStmt: + OUT_NODE(AlterExtensionContentsStmt, AlterExtensionContentsStmt, alter_extension_contents_stmt, ALTER_EXTENSION_CONTENTS_STMT, AlterExtensionContentsStmt, alter_extension_contents_stmt); break; case T_CreateFdwStmt: OUT_NODE(CreateFdwStmt, CreateFdwStmt, create_fdw_stmt, CREATE_FDW_STMT, CreateFdwStmt, create_fdw_stmt); @@ -450,6 +477,9 @@ case T_CreateForeignServerStmt: case T_AlterForeignServerStmt: OUT_NODE(AlterForeignServerStmt, AlterForeignServerStmt, alter_foreign_server_stmt, ALTER_FOREIGN_SERVER_STMT, AlterForeignServerStmt, alter_foreign_server_stmt); break; +case T_CreateForeignTableStmt: + OUT_NODE(CreateForeignTableStmt, CreateForeignTableStmt, create_foreign_table_stmt, CREATE_FOREIGN_TABLE_STMT, CreateForeignTableStmt, create_foreign_table_stmt); + break; case T_CreateUserMappingStmt: OUT_NODE(CreateUserMappingStmt, CreateUserMappingStmt, create_user_mapping_stmt, CREATE_USER_MAPPING_STMT, CreateUserMappingStmt, create_user_mapping_stmt); break; @@ -459,29 +489,20 @@ case T_AlterUserMappingStmt: case T_DropUserMappingStmt: OUT_NODE(DropUserMappingStmt, DropUserMappingStmt, drop_user_mapping_stmt, DROP_USER_MAPPING_STMT, DropUserMappingStmt, drop_user_mapping_stmt); break; -case T_AlterTableSpaceOptionsStmt: - OUT_NODE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt, alter_table_space_options_stmt, ALTER_TABLE_SPACE_OPTIONS_STMT, AlterTableSpaceOptionsStmt, alter_table_space_options_stmt); - break; -case T_AlterTableMoveAllStmt: - OUT_NODE(AlterTableMoveAllStmt, AlterTableMoveAllStmt, alter_table_move_all_stmt, ALTER_TABLE_MOVE_ALL_STMT, AlterTableMoveAllStmt, alter_table_move_all_stmt); - break; -case T_SecLabelStmt: - OUT_NODE(SecLabelStmt, SecLabelStmt, sec_label_stmt, SEC_LABEL_STMT, SecLabelStmt, sec_label_stmt); - break; -case T_CreateForeignTableStmt: - OUT_NODE(CreateForeignTableStmt, CreateForeignTableStmt, create_foreign_table_stmt, CREATE_FOREIGN_TABLE_STMT, CreateForeignTableStmt, create_foreign_table_stmt); - break; case T_ImportForeignSchemaStmt: OUT_NODE(ImportForeignSchemaStmt, ImportForeignSchemaStmt, import_foreign_schema_stmt, IMPORT_FOREIGN_SCHEMA_STMT, ImportForeignSchemaStmt, import_foreign_schema_stmt); break; -case T_CreateExtensionStmt: - OUT_NODE(CreateExtensionStmt, CreateExtensionStmt, create_extension_stmt, CREATE_EXTENSION_STMT, CreateExtensionStmt, create_extension_stmt); +case T_CreatePolicyStmt: + OUT_NODE(CreatePolicyStmt, CreatePolicyStmt, create_policy_stmt, CREATE_POLICY_STMT, CreatePolicyStmt, create_policy_stmt); break; -case T_AlterExtensionStmt: - OUT_NODE(AlterExtensionStmt, AlterExtensionStmt, alter_extension_stmt, ALTER_EXTENSION_STMT, AlterExtensionStmt, alter_extension_stmt); +case T_AlterPolicyStmt: + OUT_NODE(AlterPolicyStmt, AlterPolicyStmt, alter_policy_stmt, ALTER_POLICY_STMT, AlterPolicyStmt, alter_policy_stmt); break; -case T_AlterExtensionContentsStmt: - OUT_NODE(AlterExtensionContentsStmt, AlterExtensionContentsStmt, alter_extension_contents_stmt, ALTER_EXTENSION_CONTENTS_STMT, AlterExtensionContentsStmt, alter_extension_contents_stmt); +case T_CreateAmStmt: + OUT_NODE(CreateAmStmt, CreateAmStmt, create_am_stmt, CREATE_AM_STMT, CreateAmStmt, create_am_stmt); + break; +case T_CreateTrigStmt: + OUT_NODE(CreateTrigStmt, CreateTrigStmt, create_trig_stmt, CREATE_TRIG_STMT, CreateTrigStmt, create_trig_stmt); break; case T_CreateEventTrigStmt: OUT_NODE(CreateEventTrigStmt, CreateEventTrigStmt, create_event_trig_stmt, CREATE_EVENT_TRIG_STMT, CreateEventTrigStmt, create_event_trig_stmt); @@ -489,228 +510,249 @@ case T_CreateEventTrigStmt: case T_AlterEventTrigStmt: OUT_NODE(AlterEventTrigStmt, AlterEventTrigStmt, alter_event_trig_stmt, ALTER_EVENT_TRIG_STMT, AlterEventTrigStmt, alter_event_trig_stmt); break; -case T_RefreshMatViewStmt: - OUT_NODE(RefreshMatViewStmt, RefreshMatViewStmt, refresh_mat_view_stmt, REFRESH_MAT_VIEW_STMT, RefreshMatViewStmt, refresh_mat_view_stmt); +case T_CreatePLangStmt: + OUT_NODE(CreatePLangStmt, CreatePLangStmt, create_plang_stmt, CREATE_PLANG_STMT, CreatePLangStmt, create_plang_stmt); break; -case T_ReplicaIdentityStmt: - OUT_NODE(ReplicaIdentityStmt, ReplicaIdentityStmt, replica_identity_stmt, REPLICA_IDENTITY_STMT, ReplicaIdentityStmt, replica_identity_stmt); +case T_CreateRoleStmt: + OUT_NODE(CreateRoleStmt, CreateRoleStmt, create_role_stmt, CREATE_ROLE_STMT, CreateRoleStmt, create_role_stmt); break; -case T_AlterSystemStmt: - OUT_NODE(AlterSystemStmt, AlterSystemStmt, alter_system_stmt, ALTER_SYSTEM_STMT, AlterSystemStmt, alter_system_stmt); +case T_AlterRoleStmt: + OUT_NODE(AlterRoleStmt, AlterRoleStmt, alter_role_stmt, ALTER_ROLE_STMT, AlterRoleStmt, alter_role_stmt); break; -case T_CreatePolicyStmt: - OUT_NODE(CreatePolicyStmt, CreatePolicyStmt, create_policy_stmt, CREATE_POLICY_STMT, CreatePolicyStmt, create_policy_stmt); +case T_AlterRoleSetStmt: + OUT_NODE(AlterRoleSetStmt, AlterRoleSetStmt, alter_role_set_stmt, ALTER_ROLE_SET_STMT, AlterRoleSetStmt, alter_role_set_stmt); break; -case T_AlterPolicyStmt: - OUT_NODE(AlterPolicyStmt, AlterPolicyStmt, alter_policy_stmt, ALTER_POLICY_STMT, AlterPolicyStmt, alter_policy_stmt); +case T_DropRoleStmt: + OUT_NODE(DropRoleStmt, DropRoleStmt, drop_role_stmt, DROP_ROLE_STMT, DropRoleStmt, drop_role_stmt); break; -case T_CreateTransformStmt: - OUT_NODE(CreateTransformStmt, CreateTransformStmt, create_transform_stmt, CREATE_TRANSFORM_STMT, CreateTransformStmt, create_transform_stmt); +case T_CreateSeqStmt: + OUT_NODE(CreateSeqStmt, CreateSeqStmt, create_seq_stmt, CREATE_SEQ_STMT, CreateSeqStmt, create_seq_stmt); break; -case T_CreateAmStmt: - OUT_NODE(CreateAmStmt, CreateAmStmt, create_am_stmt, CREATE_AM_STMT, CreateAmStmt, create_am_stmt); +case T_AlterSeqStmt: + OUT_NODE(AlterSeqStmt, AlterSeqStmt, alter_seq_stmt, ALTER_SEQ_STMT, AlterSeqStmt, alter_seq_stmt); break; -case T_CreatePublicationStmt: - OUT_NODE(CreatePublicationStmt, CreatePublicationStmt, create_publication_stmt, CREATE_PUBLICATION_STMT, CreatePublicationStmt, create_publication_stmt); +case T_DefineStmt: + OUT_NODE(DefineStmt, DefineStmt, define_stmt, DEFINE_STMT, DefineStmt, define_stmt); break; -case T_AlterPublicationStmt: - OUT_NODE(AlterPublicationStmt, AlterPublicationStmt, alter_publication_stmt, ALTER_PUBLICATION_STMT, AlterPublicationStmt, alter_publication_stmt); +case T_CreateDomainStmt: + OUT_NODE(CreateDomainStmt, CreateDomainStmt, create_domain_stmt, CREATE_DOMAIN_STMT, CreateDomainStmt, create_domain_stmt); break; -case T_CreateSubscriptionStmt: - OUT_NODE(CreateSubscriptionStmt, CreateSubscriptionStmt, create_subscription_stmt, CREATE_SUBSCRIPTION_STMT, CreateSubscriptionStmt, create_subscription_stmt); +case T_CreateOpClassStmt: + OUT_NODE(CreateOpClassStmt, CreateOpClassStmt, create_op_class_stmt, CREATE_OP_CLASS_STMT, CreateOpClassStmt, create_op_class_stmt); break; -case T_AlterSubscriptionStmt: - OUT_NODE(AlterSubscriptionStmt, AlterSubscriptionStmt, alter_subscription_stmt, ALTER_SUBSCRIPTION_STMT, AlterSubscriptionStmt, alter_subscription_stmt); +case T_CreateOpClassItem: + OUT_NODE(CreateOpClassItem, CreateOpClassItem, create_op_class_item, CREATE_OP_CLASS_ITEM, CreateOpClassItem, create_op_class_item); break; -case T_DropSubscriptionStmt: - OUT_NODE(DropSubscriptionStmt, DropSubscriptionStmt, drop_subscription_stmt, DROP_SUBSCRIPTION_STMT, DropSubscriptionStmt, drop_subscription_stmt); +case T_CreateOpFamilyStmt: + OUT_NODE(CreateOpFamilyStmt, CreateOpFamilyStmt, create_op_family_stmt, CREATE_OP_FAMILY_STMT, CreateOpFamilyStmt, create_op_family_stmt); break; -case T_CreateStatsStmt: - OUT_NODE(CreateStatsStmt, CreateStatsStmt, create_stats_stmt, CREATE_STATS_STMT, CreateStatsStmt, create_stats_stmt); +case T_AlterOpFamilyStmt: + OUT_NODE(AlterOpFamilyStmt, AlterOpFamilyStmt, alter_op_family_stmt, ALTER_OP_FAMILY_STMT, AlterOpFamilyStmt, alter_op_family_stmt); break; -case T_AlterCollationStmt: - OUT_NODE(AlterCollationStmt, AlterCollationStmt, alter_collation_stmt, ALTER_COLLATION_STMT, AlterCollationStmt, alter_collation_stmt); +case T_DropStmt: + OUT_NODE(DropStmt, DropStmt, drop_stmt, DROP_STMT, DropStmt, drop_stmt); break; -case T_CallStmt: - OUT_NODE(CallStmt, CallStmt, call_stmt, CALL_STMT, CallStmt, call_stmt); +case T_TruncateStmt: + OUT_NODE(TruncateStmt, TruncateStmt, truncate_stmt, TRUNCATE_STMT, TruncateStmt, truncate_stmt); break; -case T_AlterStatsStmt: - OUT_NODE(AlterStatsStmt, AlterStatsStmt, alter_stats_stmt, ALTER_STATS_STMT, AlterStatsStmt, alter_stats_stmt); +case T_CommentStmt: + OUT_NODE(CommentStmt, CommentStmt, comment_stmt, COMMENT_STMT, CommentStmt, comment_stmt); break; -case T_A_Expr: - OUT_NODE(A_Expr, AExpr, a__expr, A_EXPR, A_Expr, a_expr); +case T_SecLabelStmt: + OUT_NODE(SecLabelStmt, SecLabelStmt, sec_label_stmt, SEC_LABEL_STMT, SecLabelStmt, sec_label_stmt); break; -case T_ColumnRef: - OUT_NODE(ColumnRef, ColumnRef, column_ref, COLUMN_REF, ColumnRef, column_ref); +case T_DeclareCursorStmt: + OUT_NODE(DeclareCursorStmt, DeclareCursorStmt, declare_cursor_stmt, DECLARE_CURSOR_STMT, DeclareCursorStmt, declare_cursor_stmt); break; -case T_ParamRef: - OUT_NODE(ParamRef, ParamRef, param_ref, PARAM_REF, ParamRef, param_ref); +case T_ClosePortalStmt: + OUT_NODE(ClosePortalStmt, ClosePortalStmt, close_portal_stmt, CLOSE_PORTAL_STMT, ClosePortalStmt, close_portal_stmt); break; -case T_FuncCall: - OUT_NODE(FuncCall, FuncCall, func_call, FUNC_CALL, FuncCall, func_call); +case T_FetchStmt: + OUT_NODE(FetchStmt, FetchStmt, fetch_stmt, FETCH_STMT, FetchStmt, fetch_stmt); break; -case T_A_Star: - OUT_NODE(A_Star, AStar, a__star, A_STAR, A_Star, a_star); +case T_IndexStmt: + OUT_NODE(IndexStmt, IndexStmt, index_stmt, INDEX_STMT, IndexStmt, index_stmt); break; -case T_A_Indices: - OUT_NODE(A_Indices, AIndices, a__indices, A_INDICES, A_Indices, a_indices); +case T_CreateStatsStmt: + OUT_NODE(CreateStatsStmt, CreateStatsStmt, create_stats_stmt, CREATE_STATS_STMT, CreateStatsStmt, create_stats_stmt); break; -case T_A_Indirection: - OUT_NODE(A_Indirection, AIndirection, a__indirection, A_INDIRECTION, A_Indirection, a_indirection); +case T_StatsElem: + OUT_NODE(StatsElem, StatsElem, stats_elem, STATS_ELEM, StatsElem, stats_elem); break; -case T_A_ArrayExpr: - OUT_NODE(A_ArrayExpr, AArrayExpr, a__array_expr, A_ARRAY_EXPR, A_ArrayExpr, a_array_expr); +case T_AlterStatsStmt: + OUT_NODE(AlterStatsStmt, AlterStatsStmt, alter_stats_stmt, ALTER_STATS_STMT, AlterStatsStmt, alter_stats_stmt); break; -case T_ResTarget: - OUT_NODE(ResTarget, ResTarget, res_target, RES_TARGET, ResTarget, res_target); +case T_CreateFunctionStmt: + OUT_NODE(CreateFunctionStmt, CreateFunctionStmt, create_function_stmt, CREATE_FUNCTION_STMT, CreateFunctionStmt, create_function_stmt); break; -case T_MultiAssignRef: - OUT_NODE(MultiAssignRef, MultiAssignRef, multi_assign_ref, MULTI_ASSIGN_REF, MultiAssignRef, multi_assign_ref); +case T_FunctionParameter: + OUT_NODE(FunctionParameter, FunctionParameter, function_parameter, FUNCTION_PARAMETER, FunctionParameter, function_parameter); break; -case T_TypeCast: - OUT_NODE(TypeCast, TypeCast, type_cast, TYPE_CAST, TypeCast, type_cast); +case T_AlterFunctionStmt: + OUT_NODE(AlterFunctionStmt, AlterFunctionStmt, alter_function_stmt, ALTER_FUNCTION_STMT, AlterFunctionStmt, alter_function_stmt); break; -case T_CollateClause: - OUT_NODE(CollateClause, CollateClause, collate_clause, COLLATE_CLAUSE, CollateClause, collate_clause); +case T_DoStmt: + OUT_NODE(DoStmt, DoStmt, do_stmt, DO_STMT, DoStmt, do_stmt); break; -case T_SortBy: - OUT_NODE(SortBy, SortBy, sort_by, SORT_BY, SortBy, sort_by); +case T_InlineCodeBlock: + OUT_NODE(InlineCodeBlock, InlineCodeBlock, inline_code_block, INLINE_CODE_BLOCK, InlineCodeBlock, inline_code_block); break; -case T_WindowDef: - OUT_NODE(WindowDef, WindowDef, window_def, WINDOW_DEF, WindowDef, window_def); +case T_CallStmt: + OUT_NODE(CallStmt, CallStmt, call_stmt, CALL_STMT, CallStmt, call_stmt); break; -case T_RangeSubselect: - OUT_NODE(RangeSubselect, RangeSubselect, range_subselect, RANGE_SUBSELECT, RangeSubselect, range_subselect); +case T_CallContext: + OUT_NODE(CallContext, CallContext, call_context, CALL_CONTEXT, CallContext, call_context); break; -case T_RangeFunction: - OUT_NODE(RangeFunction, RangeFunction, range_function, RANGE_FUNCTION, RangeFunction, range_function); +case T_RenameStmt: + OUT_NODE(RenameStmt, RenameStmt, rename_stmt, RENAME_STMT, RenameStmt, rename_stmt); break; -case T_RangeTableSample: - OUT_NODE(RangeTableSample, RangeTableSample, range_table_sample, RANGE_TABLE_SAMPLE, RangeTableSample, range_table_sample); +case T_AlterObjectDependsStmt: + OUT_NODE(AlterObjectDependsStmt, AlterObjectDependsStmt, alter_object_depends_stmt, ALTER_OBJECT_DEPENDS_STMT, AlterObjectDependsStmt, alter_object_depends_stmt); break; -case T_RangeTableFunc: - OUT_NODE(RangeTableFunc, RangeTableFunc, range_table_func, RANGE_TABLE_FUNC, RangeTableFunc, range_table_func); +case T_AlterObjectSchemaStmt: + OUT_NODE(AlterObjectSchemaStmt, AlterObjectSchemaStmt, alter_object_schema_stmt, ALTER_OBJECT_SCHEMA_STMT, AlterObjectSchemaStmt, alter_object_schema_stmt); break; -case T_RangeTableFuncCol: - OUT_NODE(RangeTableFuncCol, RangeTableFuncCol, range_table_func_col, RANGE_TABLE_FUNC_COL, RangeTableFuncCol, range_table_func_col); +case T_AlterOwnerStmt: + OUT_NODE(AlterOwnerStmt, AlterOwnerStmt, alter_owner_stmt, ALTER_OWNER_STMT, AlterOwnerStmt, alter_owner_stmt); break; -case T_TypeName: - OUT_NODE(TypeName, TypeName, type_name, TYPE_NAME, TypeName, type_name); +case T_AlterOperatorStmt: + OUT_NODE(AlterOperatorStmt, AlterOperatorStmt, alter_operator_stmt, ALTER_OPERATOR_STMT, AlterOperatorStmt, alter_operator_stmt); break; -case T_ColumnDef: - OUT_NODE(ColumnDef, ColumnDef, column_def, COLUMN_DEF, ColumnDef, column_def); +case T_AlterTypeStmt: + OUT_NODE(AlterTypeStmt, AlterTypeStmt, alter_type_stmt, ALTER_TYPE_STMT, AlterTypeStmt, alter_type_stmt); break; -case T_IndexElem: - OUT_NODE(IndexElem, IndexElem, index_elem, INDEX_ELEM, IndexElem, index_elem); +case T_RuleStmt: + OUT_NODE(RuleStmt, RuleStmt, rule_stmt, RULE_STMT, RuleStmt, rule_stmt); break; -case T_StatsElem: - OUT_NODE(StatsElem, StatsElem, stats_elem, STATS_ELEM, StatsElem, stats_elem); +case T_NotifyStmt: + OUT_NODE(NotifyStmt, NotifyStmt, notify_stmt, NOTIFY_STMT, NotifyStmt, notify_stmt); break; -case T_Constraint: - OUT_NODE(Constraint, Constraint, constraint, CONSTRAINT, Constraint, constraint); +case T_ListenStmt: + OUT_NODE(ListenStmt, ListenStmt, listen_stmt, LISTEN_STMT, ListenStmt, listen_stmt); break; -case T_DefElem: - OUT_NODE(DefElem, DefElem, def_elem, DEF_ELEM, DefElem, def_elem); +case T_UnlistenStmt: + OUT_NODE(UnlistenStmt, UnlistenStmt, unlisten_stmt, UNLISTEN_STMT, UnlistenStmt, unlisten_stmt); break; -case T_RangeTblEntry: - OUT_NODE(RangeTblEntry, RangeTblEntry, range_tbl_entry, RANGE_TBL_ENTRY, RangeTblEntry, range_tbl_entry); +case T_TransactionStmt: + OUT_NODE(TransactionStmt, TransactionStmt, transaction_stmt, TRANSACTION_STMT, TransactionStmt, transaction_stmt); break; -case T_RangeTblFunction: - OUT_NODE(RangeTblFunction, RangeTblFunction, range_tbl_function, RANGE_TBL_FUNCTION, RangeTblFunction, range_tbl_function); +case T_CompositeTypeStmt: + OUT_NODE(CompositeTypeStmt, CompositeTypeStmt, composite_type_stmt, COMPOSITE_TYPE_STMT, CompositeTypeStmt, composite_type_stmt); break; -case T_TableSampleClause: - OUT_NODE(TableSampleClause, TableSampleClause, table_sample_clause, TABLE_SAMPLE_CLAUSE, TableSampleClause, table_sample_clause); +case T_CreateEnumStmt: + OUT_NODE(CreateEnumStmt, CreateEnumStmt, create_enum_stmt, CREATE_ENUM_STMT, CreateEnumStmt, create_enum_stmt); break; -case T_WithCheckOption: - OUT_NODE(WithCheckOption, WithCheckOption, with_check_option, WITH_CHECK_OPTION, WithCheckOption, with_check_option); +case T_CreateRangeStmt: + OUT_NODE(CreateRangeStmt, CreateRangeStmt, create_range_stmt, CREATE_RANGE_STMT, CreateRangeStmt, create_range_stmt); break; -case T_SortGroupClause: - OUT_NODE(SortGroupClause, SortGroupClause, sort_group_clause, SORT_GROUP_CLAUSE, SortGroupClause, sort_group_clause); +case T_AlterEnumStmt: + OUT_NODE(AlterEnumStmt, AlterEnumStmt, alter_enum_stmt, ALTER_ENUM_STMT, AlterEnumStmt, alter_enum_stmt); break; -case T_GroupingSet: - OUT_NODE(GroupingSet, GroupingSet, grouping_set, GROUPING_SET, GroupingSet, grouping_set); +case T_ViewStmt: + OUT_NODE(ViewStmt, ViewStmt, view_stmt, VIEW_STMT, ViewStmt, view_stmt); break; -case T_WindowClause: - OUT_NODE(WindowClause, WindowClause, window_clause, WINDOW_CLAUSE, WindowClause, window_clause); +case T_LoadStmt: + OUT_NODE(LoadStmt, LoadStmt, load_stmt, LOAD_STMT, LoadStmt, load_stmt); break; -case T_ObjectWithArgs: - OUT_NODE(ObjectWithArgs, ObjectWithArgs, object_with_args, OBJECT_WITH_ARGS, ObjectWithArgs, object_with_args); +case T_CreatedbStmt: + OUT_NODE(CreatedbStmt, CreatedbStmt, createdb_stmt, CREATEDB_STMT, CreatedbStmt, createdb_stmt); break; -case T_AccessPriv: - OUT_NODE(AccessPriv, AccessPriv, access_priv, ACCESS_PRIV, AccessPriv, access_priv); +case T_AlterDatabaseStmt: + OUT_NODE(AlterDatabaseStmt, AlterDatabaseStmt, alter_database_stmt, ALTER_DATABASE_STMT, AlterDatabaseStmt, alter_database_stmt); break; -case T_CreateOpClassItem: - OUT_NODE(CreateOpClassItem, CreateOpClassItem, create_op_class_item, CREATE_OP_CLASS_ITEM, CreateOpClassItem, create_op_class_item); +case T_AlterDatabaseRefreshCollStmt: + OUT_NODE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt, ALTER_DATABASE_REFRESH_COLL_STMT, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt); break; -case T_TableLikeClause: - OUT_NODE(TableLikeClause, TableLikeClause, table_like_clause, TABLE_LIKE_CLAUSE, TableLikeClause, table_like_clause); +case T_AlterDatabaseSetStmt: + OUT_NODE(AlterDatabaseSetStmt, AlterDatabaseSetStmt, alter_database_set_stmt, ALTER_DATABASE_SET_STMT, AlterDatabaseSetStmt, alter_database_set_stmt); break; -case T_FunctionParameter: - OUT_NODE(FunctionParameter, FunctionParameter, function_parameter, FUNCTION_PARAMETER, FunctionParameter, function_parameter); +case T_DropdbStmt: + OUT_NODE(DropdbStmt, DropdbStmt, dropdb_stmt, DROPDB_STMT, DropdbStmt, dropdb_stmt); break; -case T_LockingClause: - OUT_NODE(LockingClause, LockingClause, locking_clause, LOCKING_CLAUSE, LockingClause, locking_clause); +case T_AlterSystemStmt: + OUT_NODE(AlterSystemStmt, AlterSystemStmt, alter_system_stmt, ALTER_SYSTEM_STMT, AlterSystemStmt, alter_system_stmt); break; -case T_RowMarkClause: - OUT_NODE(RowMarkClause, RowMarkClause, row_mark_clause, ROW_MARK_CLAUSE, RowMarkClause, row_mark_clause); +case T_ClusterStmt: + OUT_NODE(ClusterStmt, ClusterStmt, cluster_stmt, CLUSTER_STMT, ClusterStmt, cluster_stmt); break; -case T_XmlSerialize: - OUT_NODE(XmlSerialize, XmlSerialize, xml_serialize, XML_SERIALIZE, XmlSerialize, xml_serialize); +case T_VacuumStmt: + OUT_NODE(VacuumStmt, VacuumStmt, vacuum_stmt, VACUUM_STMT, VacuumStmt, vacuum_stmt); break; -case T_WithClause: - OUT_NODE(WithClause, WithClause, with_clause, WITH_CLAUSE, WithClause, with_clause); +case T_VacuumRelation: + OUT_NODE(VacuumRelation, VacuumRelation, vacuum_relation, VACUUM_RELATION, VacuumRelation, vacuum_relation); break; -case T_InferClause: - OUT_NODE(InferClause, InferClause, infer_clause, INFER_CLAUSE, InferClause, infer_clause); +case T_ExplainStmt: + OUT_NODE(ExplainStmt, ExplainStmt, explain_stmt, EXPLAIN_STMT, ExplainStmt, explain_stmt); break; -case T_OnConflictClause: - OUT_NODE(OnConflictClause, OnConflictClause, on_conflict_clause, ON_CONFLICT_CLAUSE, OnConflictClause, on_conflict_clause); +case T_CreateTableAsStmt: + OUT_NODE(CreateTableAsStmt, CreateTableAsStmt, create_table_as_stmt, CREATE_TABLE_AS_STMT, CreateTableAsStmt, create_table_as_stmt); break; -case T_CTESearchClause: - OUT_NODE(CTESearchClause, CTESearchClause, ctesearch_clause, CTESEARCH_CLAUSE, CTESearchClause, ctesearch_clause); +case T_RefreshMatViewStmt: + OUT_NODE(RefreshMatViewStmt, RefreshMatViewStmt, refresh_mat_view_stmt, REFRESH_MAT_VIEW_STMT, RefreshMatViewStmt, refresh_mat_view_stmt); break; -case T_CTECycleClause: - OUT_NODE(CTECycleClause, CTECycleClause, ctecycle_clause, CTECYCLE_CLAUSE, CTECycleClause, ctecycle_clause); +case T_CheckPointStmt: + OUT_NODE(CheckPointStmt, CheckPointStmt, check_point_stmt, CHECK_POINT_STMT, CheckPointStmt, check_point_stmt); break; -case T_CommonTableExpr: - OUT_NODE(CommonTableExpr, CommonTableExpr, common_table_expr, COMMON_TABLE_EXPR, CommonTableExpr, common_table_expr); +case T_DiscardStmt: + OUT_NODE(DiscardStmt, DiscardStmt, discard_stmt, DISCARD_STMT, DiscardStmt, discard_stmt); break; -case T_MergeWhenClause: - OUT_NODE(MergeWhenClause, MergeWhenClause, merge_when_clause, MERGE_WHEN_CLAUSE, MergeWhenClause, merge_when_clause); +case T_LockStmt: + OUT_NODE(LockStmt, LockStmt, lock_stmt, LOCK_STMT, LockStmt, lock_stmt); break; -case T_RoleSpec: - OUT_NODE(RoleSpec, RoleSpec, role_spec, ROLE_SPEC, RoleSpec, role_spec); +case T_ConstraintsSetStmt: + OUT_NODE(ConstraintsSetStmt, ConstraintsSetStmt, constraints_set_stmt, CONSTRAINTS_SET_STMT, ConstraintsSetStmt, constraints_set_stmt); break; -case T_TriggerTransition: - OUT_NODE(TriggerTransition, TriggerTransition, trigger_transition, TRIGGER_TRANSITION, TriggerTransition, trigger_transition); +case T_ReindexStmt: + OUT_NODE(ReindexStmt, ReindexStmt, reindex_stmt, REINDEX_STMT, ReindexStmt, reindex_stmt); break; -case T_PartitionElem: - OUT_NODE(PartitionElem, PartitionElem, partition_elem, PARTITION_ELEM, PartitionElem, partition_elem); +case T_CreateConversionStmt: + OUT_NODE(CreateConversionStmt, CreateConversionStmt, create_conversion_stmt, CREATE_CONVERSION_STMT, CreateConversionStmt, create_conversion_stmt); break; -case T_PartitionSpec: - OUT_NODE(PartitionSpec, PartitionSpec, partition_spec, PARTITION_SPEC, PartitionSpec, partition_spec); +case T_CreateCastStmt: + OUT_NODE(CreateCastStmt, CreateCastStmt, create_cast_stmt, CREATE_CAST_STMT, CreateCastStmt, create_cast_stmt); break; -case T_PartitionBoundSpec: - OUT_NODE(PartitionBoundSpec, PartitionBoundSpec, partition_bound_spec, PARTITION_BOUND_SPEC, PartitionBoundSpec, partition_bound_spec); +case T_CreateTransformStmt: + OUT_NODE(CreateTransformStmt, CreateTransformStmt, create_transform_stmt, CREATE_TRANSFORM_STMT, CreateTransformStmt, create_transform_stmt); break; -case T_PartitionRangeDatum: - OUT_NODE(PartitionRangeDatum, PartitionRangeDatum, partition_range_datum, PARTITION_RANGE_DATUM, PartitionRangeDatum, partition_range_datum); +case T_PrepareStmt: + OUT_NODE(PrepareStmt, PrepareStmt, prepare_stmt, PREPARE_STMT, PrepareStmt, prepare_stmt); break; -case T_PartitionCmd: - OUT_NODE(PartitionCmd, PartitionCmd, partition_cmd, PARTITION_CMD, PartitionCmd, partition_cmd); +case T_ExecuteStmt: + OUT_NODE(ExecuteStmt, ExecuteStmt, execute_stmt, EXECUTE_STMT, ExecuteStmt, execute_stmt); break; -case T_VacuumRelation: - OUT_NODE(VacuumRelation, VacuumRelation, vacuum_relation, VACUUM_RELATION, VacuumRelation, vacuum_relation); +case T_DeallocateStmt: + OUT_NODE(DeallocateStmt, DeallocateStmt, deallocate_stmt, DEALLOCATE_STMT, DeallocateStmt, deallocate_stmt); break; -case T_PublicationObjSpec: - OUT_NODE(PublicationObjSpec, PublicationObjSpec, publication_obj_spec, PUBLICATION_OBJ_SPEC, PublicationObjSpec, publication_obj_spec); +case T_DropOwnedStmt: + OUT_NODE(DropOwnedStmt, DropOwnedStmt, drop_owned_stmt, DROP_OWNED_STMT, DropOwnedStmt, drop_owned_stmt); + break; +case T_ReassignOwnedStmt: + OUT_NODE(ReassignOwnedStmt, ReassignOwnedStmt, reassign_owned_stmt, REASSIGN_OWNED_STMT, ReassignOwnedStmt, reassign_owned_stmt); + break; +case T_AlterTSDictionaryStmt: + OUT_NODE(AlterTSDictionaryStmt, AlterTSDictionaryStmt, alter_tsdictionary_stmt, ALTER_TSDICTIONARY_STMT, AlterTSDictionaryStmt, alter_tsdictionary_stmt); + break; +case T_AlterTSConfigurationStmt: + OUT_NODE(AlterTSConfigurationStmt, AlterTSConfigurationStmt, alter_tsconfiguration_stmt, ALTER_TSCONFIGURATION_STMT, AlterTSConfigurationStmt, alter_tsconfiguration_stmt); break; case T_PublicationTable: OUT_NODE(PublicationTable, PublicationTable, publication_table, PUBLICATION_TABLE, PublicationTable, publication_table); break; -case T_InlineCodeBlock: - OUT_NODE(InlineCodeBlock, InlineCodeBlock, inline_code_block, INLINE_CODE_BLOCK, InlineCodeBlock, inline_code_block); +case T_PublicationObjSpec: + OUT_NODE(PublicationObjSpec, PublicationObjSpec, publication_obj_spec, PUBLICATION_OBJ_SPEC, PublicationObjSpec, publication_obj_spec); break; -case T_CallContext: - OUT_NODE(CallContext, CallContext, call_context, CALL_CONTEXT, CallContext, call_context); +case T_CreatePublicationStmt: + OUT_NODE(CreatePublicationStmt, CreatePublicationStmt, create_publication_stmt, CREATE_PUBLICATION_STMT, CreatePublicationStmt, create_publication_stmt); + break; +case T_AlterPublicationStmt: + OUT_NODE(AlterPublicationStmt, AlterPublicationStmt, alter_publication_stmt, ALTER_PUBLICATION_STMT, AlterPublicationStmt, alter_publication_stmt); + break; +case T_CreateSubscriptionStmt: + OUT_NODE(CreateSubscriptionStmt, CreateSubscriptionStmt, create_subscription_stmt, CREATE_SUBSCRIPTION_STMT, CreateSubscriptionStmt, create_subscription_stmt); + break; +case T_AlterSubscriptionStmt: + OUT_NODE(AlterSubscriptionStmt, AlterSubscriptionStmt, alter_subscription_stmt, ALTER_SUBSCRIPTION_STMT, AlterSubscriptionStmt, alter_subscription_stmt); + break; +case T_DropSubscriptionStmt: + OUT_NODE(DropSubscriptionStmt, DropSubscriptionStmt, drop_subscription_stmt, DROP_SUBSCRIPTION_STMT, DropSubscriptionStmt, drop_subscription_stmt); break; diff --git a/parser/include/pg_query_outfuncs_defs.c b/parser/include/pg_query_outfuncs_defs.c index 9268de26..6e88bc20 100644 --- a/parser/include/pg_query_outfuncs_defs.c +++ b/parser/include/pg_query_outfuncs_defs.c @@ -3,6 +3,7 @@ static void _outAlias(OUT_TYPE(Alias, Alias) out_node, const Alias *node); static void _outRangeVar(OUT_TYPE(RangeVar, RangeVar) out_node, const RangeVar *node); static void _outTableFunc(OUT_TYPE(TableFunc, TableFunc) out_node, const TableFunc *node); +static void _outIntoClause(OUT_TYPE(IntoClause, IntoClause) out_node, const IntoClause *node); static void _outVar(OUT_TYPE(Var, Var) out_node, const Var *node); static void _outParam(OUT_TYPE(Param, Param) out_node, const Param *node); static void _outAggref(OUT_TYPE(Aggref, Aggref) out_node, const Aggref *node); @@ -36,6 +37,11 @@ static void _outCoalesceExpr(OUT_TYPE(CoalesceExpr, CoalesceExpr) out_node, cons static void _outMinMaxExpr(OUT_TYPE(MinMaxExpr, MinMaxExpr) out_node, const MinMaxExpr *node); static void _outSQLValueFunction(OUT_TYPE(SQLValueFunction, SQLValueFunction) out_node, const SQLValueFunction *node); static void _outXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) out_node, const XmlExpr *node); +static void _outJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) out_node, const JsonFormat *node); +static void _outJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) out_node, const JsonReturning *node); +static void _outJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) out_node, const JsonValueExpr *node); +static void _outJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) out_node, const JsonConstructorExpr *node); +static void _outJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) out_node, const JsonIsPredicate *node); static void _outNullTest(OUT_TYPE(NullTest, NullTest) out_node, const NullTest *node); static void _outBooleanTest(OUT_TYPE(BooleanTest, BooleanTest) out_node, const BooleanTest *node); static void _outCoerceToDomain(OUT_TYPE(CoerceToDomain, CoerceToDomain) out_node, const CoerceToDomain *node); @@ -49,186 +55,194 @@ static void _outRangeTblRef(OUT_TYPE(RangeTblRef, RangeTblRef) out_node, const R static void _outJoinExpr(OUT_TYPE(JoinExpr, JoinExpr) out_node, const JoinExpr *node); static void _outFromExpr(OUT_TYPE(FromExpr, FromExpr) out_node, const FromExpr *node); static void _outOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) out_node, const OnConflictExpr *node); -static void _outIntoClause(OUT_TYPE(IntoClause, IntoClause) out_node, const IntoClause *node); +static void _outQuery(OUT_TYPE(Query, Query) out_node, const Query *node); +static void _outTypeName(OUT_TYPE(TypeName, TypeName) out_node, const TypeName *node); +static void _outColumnRef(OUT_TYPE(ColumnRef, ColumnRef) out_node, const ColumnRef *node); +static void _outParamRef(OUT_TYPE(ParamRef, ParamRef) out_node, const ParamRef *node); +static void _outAExpr(OUT_TYPE(A_Expr, AExpr) out_node, const A_Expr *node); +static void _outTypeCast(OUT_TYPE(TypeCast, TypeCast) out_node, const TypeCast *node); +static void _outCollateClause(OUT_TYPE(CollateClause, CollateClause) out_node, const CollateClause *node); +static void _outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out_node, const RoleSpec *node); +static void _outFuncCall(OUT_TYPE(FuncCall, FuncCall) out_node, const FuncCall *node); +static void _outAStar(OUT_TYPE(A_Star, AStar) out_node, const A_Star *node); +static void _outAIndices(OUT_TYPE(A_Indices, AIndices) out_node, const A_Indices *node); +static void _outAIndirection(OUT_TYPE(A_Indirection, AIndirection) out_node, const A_Indirection *node); +static void _outAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) out_node, const A_ArrayExpr *node); +static void _outResTarget(OUT_TYPE(ResTarget, ResTarget) out_node, const ResTarget *node); +static void _outMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) out_node, const MultiAssignRef *node); +static void _outSortBy(OUT_TYPE(SortBy, SortBy) out_node, const SortBy *node); +static void _outWindowDef(OUT_TYPE(WindowDef, WindowDef) out_node, const WindowDef *node); +static void _outRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) out_node, const RangeSubselect *node); +static void _outRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) out_node, const RangeFunction *node); +static void _outRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) out_node, const RangeTableFunc *node); +static void _outRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) out_node, const RangeTableFuncCol *node); +static void _outRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) out_node, const RangeTableSample *node); +static void _outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out_node, const ColumnDef *node); +static void _outTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) out_node, const TableLikeClause *node); +static void _outIndexElem(OUT_TYPE(IndexElem, IndexElem) out_node, const IndexElem *node); +static void _outDefElem(OUT_TYPE(DefElem, DefElem) out_node, const DefElem *node); +static void _outLockingClause(OUT_TYPE(LockingClause, LockingClause) out_node, const LockingClause *node); +static void _outXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) out_node, const XmlSerialize *node); +static void _outPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) out_node, const PartitionElem *node); +static void _outPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) out_node, const PartitionSpec *node); +static void _outPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) out_node, const PartitionBoundSpec *node); +static void _outPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) out_node, const PartitionRangeDatum *node); +static void _outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out_node, const PartitionCmd *node); +static void _outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out_node, const RangeTblEntry *node); +static void _outRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) out_node, const RTEPermissionInfo *node); +static void _outRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) out_node, const RangeTblFunction *node); +static void _outTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) out_node, const TableSampleClause *node); +static void _outWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) out_node, const WithCheckOption *node); +static void _outSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) out_node, const SortGroupClause *node); +static void _outGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) out_node, const GroupingSet *node); +static void _outWindowClause(OUT_TYPE(WindowClause, WindowClause) out_node, const WindowClause *node); +static void _outRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) out_node, const RowMarkClause *node); +static void _outWithClause(OUT_TYPE(WithClause, WithClause) out_node, const WithClause *node); +static void _outInferClause(OUT_TYPE(InferClause, InferClause) out_node, const InferClause *node); +static void _outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out_node, const OnConflictClause *node); +static void _outCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) out_node, const CTESearchClause *node); +static void _outCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) out_node, const CTECycleClause *node); +static void _outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out_node, const CommonTableExpr *node); +static void _outMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) out_node, const MergeWhenClause *node); static void _outMergeAction(OUT_TYPE(MergeAction, MergeAction) out_node, const MergeAction *node); +static void _outTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) out_node, const TriggerTransition *node); +static void _outJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) out_node, const JsonOutput *node); +static void _outJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) out_node, const JsonKeyValue *node); +static void _outJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) out_node, const JsonObjectConstructor *node); +static void _outJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) out_node, const JsonArrayConstructor *node); +static void _outJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) out_node, const JsonArrayQueryConstructor *node); +static void _outJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) out_node, const JsonAggConstructor *node); +static void _outJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) out_node, const JsonObjectAgg *node); +static void _outJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) out_node, const JsonArrayAgg *node); static void _outRawStmt(OUT_TYPE(RawStmt, RawStmt) out_node, const RawStmt *node); -static void _outQuery(OUT_TYPE(Query, Query) out_node, const Query *node); static void _outInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) out_node, const InsertStmt *node); static void _outDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) out_node, const DeleteStmt *node); static void _outUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) out_node, const UpdateStmt *node); static void _outMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) out_node, const MergeStmt *node); static void _outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out_node, const SelectStmt *node); +static void _outSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) out_node, const SetOperationStmt *node); static void _outReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) out_node, const ReturnStmt *node); static void _outPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) out_node, const PLAssignStmt *node); +static void _outCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) out_node, const CreateSchemaStmt *node); static void _outAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) out_node, const AlterTableStmt *node); +static void _outReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) out_node, const ReplicaIdentityStmt *node); static void _outAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) out_node, const AlterTableCmd *node); +static void _outAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) out_node, const AlterCollationStmt *node); static void _outAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) out_node, const AlterDomainStmt *node); -static void _outSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) out_node, const SetOperationStmt *node); static void _outGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) out_node, const GrantStmt *node); +static void _outObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) out_node, const ObjectWithArgs *node); +static void _outAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) out_node, const AccessPriv *node); static void _outGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) out_node, const GrantRoleStmt *node); static void _outAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) out_node, const AlterDefaultPrivilegesStmt *node); -static void _outClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) out_node, const ClosePortalStmt *node); -static void _outClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) out_node, const ClusterStmt *node); static void _outCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) out_node, const CopyStmt *node); +static void _outVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) out_node, const VariableSetStmt *node); +static void _outVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) out_node, const VariableShowStmt *node); static void _outCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) out_node, const CreateStmt *node); +static void _outConstraint(OUT_TYPE(Constraint, Constraint) out_node, const Constraint *node); +static void _outCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) out_node, const CreateTableSpaceStmt *node); +static void _outDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) out_node, const DropTableSpaceStmt *node); +static void _outAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) out_node, const AlterTableSpaceOptionsStmt *node); +static void _outAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) out_node, const AlterTableMoveAllStmt *node); +static void _outCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) out_node, const CreateExtensionStmt *node); +static void _outAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) out_node, const AlterExtensionStmt *node); +static void _outAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) out_node, const AlterExtensionContentsStmt *node); +static void _outCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) out_node, const CreateFdwStmt *node); +static void _outAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) out_node, const AlterFdwStmt *node); +static void _outCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) out_node, const CreateForeignServerStmt *node); +static void _outAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) out_node, const AlterForeignServerStmt *node); +static void _outCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) out_node, const CreateForeignTableStmt *node); +static void _outCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) out_node, const CreateUserMappingStmt *node); +static void _outAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) out_node, const AlterUserMappingStmt *node); +static void _outDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) out_node, const DropUserMappingStmt *node); +static void _outImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) out_node, const ImportForeignSchemaStmt *node); +static void _outCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) out_node, const CreatePolicyStmt *node); +static void _outAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) out_node, const AlterPolicyStmt *node); +static void _outCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) out_node, const CreateAmStmt *node); +static void _outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out_node, const CreateTrigStmt *node); +static void _outCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) out_node, const CreateEventTrigStmt *node); +static void _outAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) out_node, const AlterEventTrigStmt *node); +static void _outCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) out_node, const CreatePLangStmt *node); +static void _outCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) out_node, const CreateRoleStmt *node); +static void _outAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) out_node, const AlterRoleStmt *node); +static void _outAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) out_node, const AlterRoleSetStmt *node); +static void _outDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) out_node, const DropRoleStmt *node); +static void _outCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) out_node, const CreateSeqStmt *node); +static void _outAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) out_node, const AlterSeqStmt *node); static void _outDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) out_node, const DefineStmt *node); +static void _outCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) out_node, const CreateDomainStmt *node); +static void _outCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) out_node, const CreateOpClassStmt *node); +static void _outCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) out_node, const CreateOpClassItem *node); +static void _outCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) out_node, const CreateOpFamilyStmt *node); +static void _outAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) out_node, const AlterOpFamilyStmt *node); static void _outDropStmt(OUT_TYPE(DropStmt, DropStmt) out_node, const DropStmt *node); static void _outTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) out_node, const TruncateStmt *node); static void _outCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) out_node, const CommentStmt *node); +static void _outSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) out_node, const SecLabelStmt *node); +static void _outDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) out_node, const DeclareCursorStmt *node); +static void _outClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) out_node, const ClosePortalStmt *node); static void _outFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) out_node, const FetchStmt *node); static void _outIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) out_node, const IndexStmt *node); +static void _outCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) out_node, const CreateStatsStmt *node); +static void _outStatsElem(OUT_TYPE(StatsElem, StatsElem) out_node, const StatsElem *node); +static void _outAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) out_node, const AlterStatsStmt *node); static void _outCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) out_node, const CreateFunctionStmt *node); +static void _outFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) out_node, const FunctionParameter *node); static void _outAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) out_node, const AlterFunctionStmt *node); static void _outDoStmt(OUT_TYPE(DoStmt, DoStmt) out_node, const DoStmt *node); +static void _outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out_node, const InlineCodeBlock *node); +static void _outCallStmt(OUT_TYPE(CallStmt, CallStmt) out_node, const CallStmt *node); +static void _outCallContext(OUT_TYPE(CallContext, CallContext) out_node, const CallContext *node); static void _outRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) out_node, const RenameStmt *node); +static void _outAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) out_node, const AlterObjectDependsStmt *node); +static void _outAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) out_node, const AlterObjectSchemaStmt *node); +static void _outAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) out_node, const AlterOwnerStmt *node); +static void _outAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) out_node, const AlterOperatorStmt *node); +static void _outAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) out_node, const AlterTypeStmt *node); static void _outRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) out_node, const RuleStmt *node); static void _outNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) out_node, const NotifyStmt *node); static void _outListenStmt(OUT_TYPE(ListenStmt, ListenStmt) out_node, const ListenStmt *node); static void _outUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) out_node, const UnlistenStmt *node); static void _outTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) out_node, const TransactionStmt *node); +static void _outCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) out_node, const CompositeTypeStmt *node); +static void _outCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) out_node, const CreateEnumStmt *node); +static void _outCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) out_node, const CreateRangeStmt *node); +static void _outAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) out_node, const AlterEnumStmt *node); static void _outViewStmt(OUT_TYPE(ViewStmt, ViewStmt) out_node, const ViewStmt *node); static void _outLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) out_node, const LoadStmt *node); -static void _outCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) out_node, const CreateDomainStmt *node); static void _outCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) out_node, const CreatedbStmt *node); +static void _outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out_node, const AlterDatabaseStmt *node); +static void _outAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) out_node, const AlterDatabaseRefreshCollStmt *node); +static void _outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out_node, const AlterDatabaseSetStmt *node); static void _outDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) out_node, const DropdbStmt *node); +static void _outAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) out_node, const AlterSystemStmt *node); +static void _outClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) out_node, const ClusterStmt *node); static void _outVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) out_node, const VacuumStmt *node); +static void _outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out_node, const VacuumRelation *node); static void _outExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) out_node, const ExplainStmt *node); static void _outCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) out_node, const CreateTableAsStmt *node); -static void _outCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) out_node, const CreateSeqStmt *node); -static void _outAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) out_node, const AlterSeqStmt *node); -static void _outVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) out_node, const VariableSetStmt *node); -static void _outVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) out_node, const VariableShowStmt *node); +static void _outRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) out_node, const RefreshMatViewStmt *node); +static void _outCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) out_node, const CheckPointStmt *node); static void _outDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) out_node, const DiscardStmt *node); -static void _outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out_node, const CreateTrigStmt *node); -static void _outCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) out_node, const CreatePLangStmt *node); -static void _outCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) out_node, const CreateRoleStmt *node); -static void _outAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) out_node, const AlterRoleStmt *node); -static void _outDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) out_node, const DropRoleStmt *node); static void _outLockStmt(OUT_TYPE(LockStmt, LockStmt) out_node, const LockStmt *node); static void _outConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) out_node, const ConstraintsSetStmt *node); static void _outReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) out_node, const ReindexStmt *node); -static void _outCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) out_node, const CheckPointStmt *node); -static void _outCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) out_node, const CreateSchemaStmt *node); -static void _outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out_node, const AlterDatabaseStmt *node); -static void _outAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) out_node, const AlterDatabaseRefreshCollStmt *node); -static void _outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out_node, const AlterDatabaseSetStmt *node); -static void _outAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) out_node, const AlterRoleSetStmt *node); static void _outCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) out_node, const CreateConversionStmt *node); static void _outCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) out_node, const CreateCastStmt *node); -static void _outCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) out_node, const CreateOpClassStmt *node); -static void _outCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) out_node, const CreateOpFamilyStmt *node); -static void _outAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) out_node, const AlterOpFamilyStmt *node); +static void _outCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) out_node, const CreateTransformStmt *node); static void _outPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) out_node, const PrepareStmt *node); static void _outExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) out_node, const ExecuteStmt *node); static void _outDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) out_node, const DeallocateStmt *node); -static void _outDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) out_node, const DeclareCursorStmt *node); -static void _outCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) out_node, const CreateTableSpaceStmt *node); -static void _outDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) out_node, const DropTableSpaceStmt *node); -static void _outAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) out_node, const AlterObjectDependsStmt *node); -static void _outAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) out_node, const AlterObjectSchemaStmt *node); -static void _outAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) out_node, const AlterOwnerStmt *node); -static void _outAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) out_node, const AlterOperatorStmt *node); -static void _outAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) out_node, const AlterTypeStmt *node); static void _outDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) out_node, const DropOwnedStmt *node); static void _outReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) out_node, const ReassignOwnedStmt *node); -static void _outCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) out_node, const CompositeTypeStmt *node); -static void _outCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) out_node, const CreateEnumStmt *node); -static void _outCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) out_node, const CreateRangeStmt *node); -static void _outAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) out_node, const AlterEnumStmt *node); static void _outAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) out_node, const AlterTSDictionaryStmt *node); static void _outAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) out_node, const AlterTSConfigurationStmt *node); -static void _outCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) out_node, const CreateFdwStmt *node); -static void _outAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) out_node, const AlterFdwStmt *node); -static void _outCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) out_node, const CreateForeignServerStmt *node); -static void _outAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) out_node, const AlterForeignServerStmt *node); -static void _outCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) out_node, const CreateUserMappingStmt *node); -static void _outAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) out_node, const AlterUserMappingStmt *node); -static void _outDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) out_node, const DropUserMappingStmt *node); -static void _outAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) out_node, const AlterTableSpaceOptionsStmt *node); -static void _outAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) out_node, const AlterTableMoveAllStmt *node); -static void _outSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) out_node, const SecLabelStmt *node); -static void _outCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) out_node, const CreateForeignTableStmt *node); -static void _outImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) out_node, const ImportForeignSchemaStmt *node); -static void _outCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) out_node, const CreateExtensionStmt *node); -static void _outAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) out_node, const AlterExtensionStmt *node); -static void _outAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) out_node, const AlterExtensionContentsStmt *node); -static void _outCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) out_node, const CreateEventTrigStmt *node); -static void _outAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) out_node, const AlterEventTrigStmt *node); -static void _outRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) out_node, const RefreshMatViewStmt *node); -static void _outReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) out_node, const ReplicaIdentityStmt *node); -static void _outAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) out_node, const AlterSystemStmt *node); -static void _outCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) out_node, const CreatePolicyStmt *node); -static void _outAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) out_node, const AlterPolicyStmt *node); -static void _outCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) out_node, const CreateTransformStmt *node); -static void _outCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) out_node, const CreateAmStmt *node); +static void _outPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) out_node, const PublicationTable *node); +static void _outPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) out_node, const PublicationObjSpec *node); static void _outCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) out_node, const CreatePublicationStmt *node); static void _outAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) out_node, const AlterPublicationStmt *node); static void _outCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) out_node, const CreateSubscriptionStmt *node); static void _outAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) out_node, const AlterSubscriptionStmt *node); static void _outDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) out_node, const DropSubscriptionStmt *node); -static void _outCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) out_node, const CreateStatsStmt *node); -static void _outAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) out_node, const AlterCollationStmt *node); -static void _outCallStmt(OUT_TYPE(CallStmt, CallStmt) out_node, const CallStmt *node); -static void _outAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) out_node, const AlterStatsStmt *node); -static void _outAExpr(OUT_TYPE(A_Expr, AExpr) out_node, const A_Expr *node); -static void _outColumnRef(OUT_TYPE(ColumnRef, ColumnRef) out_node, const ColumnRef *node); -static void _outParamRef(OUT_TYPE(ParamRef, ParamRef) out_node, const ParamRef *node); -static void _outFuncCall(OUT_TYPE(FuncCall, FuncCall) out_node, const FuncCall *node); -static void _outAStar(OUT_TYPE(A_Star, AStar) out_node, const A_Star *node); -static void _outAIndices(OUT_TYPE(A_Indices, AIndices) out_node, const A_Indices *node); -static void _outAIndirection(OUT_TYPE(A_Indirection, AIndirection) out_node, const A_Indirection *node); -static void _outAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) out_node, const A_ArrayExpr *node); -static void _outResTarget(OUT_TYPE(ResTarget, ResTarget) out_node, const ResTarget *node); -static void _outMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) out_node, const MultiAssignRef *node); -static void _outTypeCast(OUT_TYPE(TypeCast, TypeCast) out_node, const TypeCast *node); -static void _outCollateClause(OUT_TYPE(CollateClause, CollateClause) out_node, const CollateClause *node); -static void _outSortBy(OUT_TYPE(SortBy, SortBy) out_node, const SortBy *node); -static void _outWindowDef(OUT_TYPE(WindowDef, WindowDef) out_node, const WindowDef *node); -static void _outRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) out_node, const RangeSubselect *node); -static void _outRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) out_node, const RangeFunction *node); -static void _outRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) out_node, const RangeTableSample *node); -static void _outRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) out_node, const RangeTableFunc *node); -static void _outRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) out_node, const RangeTableFuncCol *node); -static void _outTypeName(OUT_TYPE(TypeName, TypeName) out_node, const TypeName *node); -static void _outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out_node, const ColumnDef *node); -static void _outIndexElem(OUT_TYPE(IndexElem, IndexElem) out_node, const IndexElem *node); -static void _outStatsElem(OUT_TYPE(StatsElem, StatsElem) out_node, const StatsElem *node); -static void _outConstraint(OUT_TYPE(Constraint, Constraint) out_node, const Constraint *node); -static void _outDefElem(OUT_TYPE(DefElem, DefElem) out_node, const DefElem *node); -static void _outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out_node, const RangeTblEntry *node); -static void _outRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) out_node, const RangeTblFunction *node); -static void _outTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) out_node, const TableSampleClause *node); -static void _outWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) out_node, const WithCheckOption *node); -static void _outSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) out_node, const SortGroupClause *node); -static void _outGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) out_node, const GroupingSet *node); -static void _outWindowClause(OUT_TYPE(WindowClause, WindowClause) out_node, const WindowClause *node); -static void _outObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) out_node, const ObjectWithArgs *node); -static void _outAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) out_node, const AccessPriv *node); -static void _outCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) out_node, const CreateOpClassItem *node); -static void _outTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) out_node, const TableLikeClause *node); -static void _outFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) out_node, const FunctionParameter *node); -static void _outLockingClause(OUT_TYPE(LockingClause, LockingClause) out_node, const LockingClause *node); -static void _outRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) out_node, const RowMarkClause *node); -static void _outXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) out_node, const XmlSerialize *node); -static void _outWithClause(OUT_TYPE(WithClause, WithClause) out_node, const WithClause *node); -static void _outInferClause(OUT_TYPE(InferClause, InferClause) out_node, const InferClause *node); -static void _outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out_node, const OnConflictClause *node); -static void _outCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) out_node, const CTESearchClause *node); -static void _outCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) out_node, const CTECycleClause *node); -static void _outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out_node, const CommonTableExpr *node); -static void _outMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) out_node, const MergeWhenClause *node); -static void _outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out_node, const RoleSpec *node); -static void _outTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) out_node, const TriggerTransition *node); -static void _outPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) out_node, const PartitionElem *node); -static void _outPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) out_node, const PartitionSpec *node); -static void _outPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) out_node, const PartitionBoundSpec *node); -static void _outPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) out_node, const PartitionRangeDatum *node); -static void _outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out_node, const PartitionCmd *node); -static void _outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out_node, const VacuumRelation *node); -static void _outPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) out_node, const PublicationObjSpec *node); -static void _outPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) out_node, const PublicationTable *node); -static void _outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out_node, const InlineCodeBlock *node); -static void _outCallContext(OUT_TYPE(CallContext, CallContext) out_node, const CallContext *node); static void @@ -269,18 +283,30 @@ _outTableFunc(OUT_TYPE(TableFunc, TableFunc) out, const TableFunc *node) } static void -_outVar(OUT_TYPE(Var, Var) out, const Var *node) +_outIntoClause(OUT_TYPE(IntoClause, IntoClause) out, const IntoClause *node) { - WRITE_INT_FIELD(varno, varno, varno); - WRITE_INT_FIELD(varattno, varattno, varattno); - WRITE_UINT_FIELD(vartype, vartype, vartype); - WRITE_INT_FIELD(vartypmod, vartypmod, vartypmod); - WRITE_UINT_FIELD(varcollid, varcollid, varcollid); - WRITE_UINT_FIELD(varlevelsup, varlevelsup, varlevelsup); - WRITE_UINT_FIELD(varnosyn, varnosyn, varnosyn); - WRITE_INT_FIELD(varattnosyn, varattnosyn, varattnosyn); - WRITE_INT_FIELD(location, location, location); -} + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel); + WRITE_LIST_FIELD(col_names, colNames, colNames); + WRITE_STRING_FIELD(access_method, accessMethod, accessMethod); + WRITE_LIST_FIELD(options, options, options); + WRITE_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit); + WRITE_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName); + WRITE_NODE_PTR_FIELD(view_query, viewQuery, viewQuery); + WRITE_BOOL_FIELD(skip_data, skipData, skipData); +} + +static void +_outVar(OUT_TYPE(Var, Var) out, const Var *node) +{ + WRITE_INT_FIELD(varno, varno, varno); + WRITE_INT_FIELD(varattno, varattno, varattno); + WRITE_UINT_FIELD(vartype, vartype, vartype); + WRITE_INT_FIELD(vartypmod, vartypmod, vartypmod); + WRITE_UINT_FIELD(varcollid, varcollid, varcollid); + WRITE_BITMAPSET_FIELD(varnullingrels, varnullingrels, varnullingrels); + WRITE_UINT_FIELD(varlevelsup, varlevelsup, varlevelsup); + WRITE_INT_FIELD(location, location, location); +} static void _outParam(OUT_TYPE(Param, Param) out, const Param *node) @@ -300,7 +326,6 @@ _outAggref(OUT_TYPE(Aggref, Aggref) out, const Aggref *node) WRITE_UINT_FIELD(aggtype, aggtype, aggtype); WRITE_UINT_FIELD(aggcollid, aggcollid, aggcollid); WRITE_UINT_FIELD(inputcollid, inputcollid, inputcollid); - WRITE_UINT_FIELD(aggtranstype, aggtranstype, aggtranstype); WRITE_LIST_FIELD(aggargtypes, aggargtypes, aggargtypes); WRITE_LIST_FIELD(aggdirectargs, aggdirectargs, aggdirectargs); WRITE_LIST_FIELD(args, args, args); @@ -322,7 +347,6 @@ _outGroupingFunc(OUT_TYPE(GroupingFunc, GroupingFunc) out, const GroupingFunc *n { WRITE_LIST_FIELD(args, args, args); WRITE_LIST_FIELD(refs, refs, refs); - WRITE_LIST_FIELD(cols, cols, cols); WRITE_UINT_FIELD(agglevelsup, agglevelsup, agglevelsup); WRITE_INT_FIELD(location, location, location); } @@ -383,7 +407,6 @@ static void _outOpExpr(OUT_TYPE(OpExpr, OpExpr) out, const OpExpr *node) { WRITE_UINT_FIELD(opno, opno, opno); - WRITE_UINT_FIELD(opfuncid, opfuncid, opfuncid); WRITE_UINT_FIELD(opresulttype, opresulttype, opresulttype); WRITE_BOOL_FIELD(opretset, opretset, opretset); WRITE_UINT_FIELD(opcollid, opcollid, opcollid); @@ -396,7 +419,6 @@ static void _outDistinctExpr(OUT_TYPE(DistinctExpr, DistinctExpr) out, const DistinctExpr *node) { WRITE_UINT_FIELD(opno, opno, opno); - WRITE_UINT_FIELD(opfuncid, opfuncid, opfuncid); WRITE_UINT_FIELD(opresulttype, opresulttype, opresulttype); WRITE_BOOL_FIELD(opretset, opretset, opretset); WRITE_UINT_FIELD(opcollid, opcollid, opcollid); @@ -409,7 +431,6 @@ static void _outNullIfExpr(OUT_TYPE(NullIfExpr, NullIfExpr) out, const NullIfExpr *node) { WRITE_UINT_FIELD(opno, opno, opno); - WRITE_UINT_FIELD(opfuncid, opfuncid, opfuncid); WRITE_UINT_FIELD(opresulttype, opresulttype, opresulttype); WRITE_BOOL_FIELD(opretset, opretset, opretset); WRITE_UINT_FIELD(opcollid, opcollid, opcollid); @@ -422,9 +443,6 @@ static void _outScalarArrayOpExpr(OUT_TYPE(ScalarArrayOpExpr, ScalarArrayOpExpr) out, const ScalarArrayOpExpr *node) { WRITE_UINT_FIELD(opno, opno, opno); - WRITE_UINT_FIELD(opfuncid, opfuncid, opfuncid); - WRITE_UINT_FIELD(hashfuncid, hashfuncid, hashfuncid); - WRITE_UINT_FIELD(negfuncid, negfuncid, negfuncid); WRITE_BOOL_FIELD(use_or, useOr, useOr); WRITE_UINT_FIELD(inputcollid, inputcollid, inputcollid); WRITE_LIST_FIELD(args, args, args); @@ -643,11 +661,59 @@ _outXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) out, const XmlExpr *node) WRITE_LIST_FIELD(arg_names, arg_names, arg_names); WRITE_LIST_FIELD(args, args, args); WRITE_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption); + WRITE_BOOL_FIELD(indent, indent, indent); WRITE_UINT_FIELD(type, type, type); WRITE_INT_FIELD(typmod, typmod, typmod); WRITE_INT_FIELD(location, location, location); } +static void +_outJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) out, const JsonFormat *node) +{ + WRITE_ENUM_FIELD(JsonFormatType, format_type, format_type, format_type); + WRITE_ENUM_FIELD(JsonEncoding, encoding, encoding, encoding); + WRITE_INT_FIELD(location, location, location); +} + +static void +_outJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) out, const JsonReturning *node) +{ + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format); + WRITE_UINT_FIELD(typid, typid, typid); + WRITE_INT_FIELD(typmod, typmod, typmod); +} + +static void +_outJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) out, const JsonValueExpr *node) +{ + WRITE_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr); + WRITE_NODE_PTR_FIELD(formatted_expr, formatted_expr, formatted_expr); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format); +} + +static void +_outJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) out, const JsonConstructorExpr *node) +{ + WRITE_ENUM_FIELD(JsonConstructorType, type, type, type); + WRITE_LIST_FIELD(args, args, args); + WRITE_NODE_PTR_FIELD(func, func, func); + WRITE_NODE_PTR_FIELD(coercion, coercion, coercion); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning); + WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + WRITE_BOOL_FIELD(unique, unique, unique); + WRITE_INT_FIELD(location, location, location); +} + +static void +_outJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) out, const JsonIsPredicate *node) +{ + WRITE_NODE_PTR_FIELD(expr, expr, expr); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format); + WRITE_ENUM_FIELD(JsonValueType, item_type, item_type, item_type); + WRITE_BOOL_FIELD(unique_keys, unique_keys, unique_keys); + WRITE_INT_FIELD(location, location, location); +} + static void _outNullTest(OUT_TYPE(NullTest, NullTest) out, const NullTest *node) { @@ -769,38 +835,6 @@ _outOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) out, const OnConflic WRITE_LIST_FIELD(excl_rel_tlist, exclRelTlist, exclRelTlist); } -static void -_outIntoClause(OUT_TYPE(IntoClause, IntoClause) out, const IntoClause *node) -{ - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel); - WRITE_LIST_FIELD(col_names, colNames, colNames); - WRITE_STRING_FIELD(access_method, accessMethod, accessMethod); - WRITE_LIST_FIELD(options, options, options); - WRITE_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit); - WRITE_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName); - WRITE_NODE_PTR_FIELD(view_query, viewQuery, viewQuery); - WRITE_BOOL_FIELD(skip_data, skipData, skipData); -} - -static void -_outMergeAction(OUT_TYPE(MergeAction, MergeAction) out, const MergeAction *node) -{ - WRITE_BOOL_FIELD(matched, matched, matched); - WRITE_ENUM_FIELD(CmdType, command_type, commandType, commandType); - WRITE_ENUM_FIELD(OverridingKind, override, override, override); - WRITE_NODE_PTR_FIELD(qual, qual, qual); - WRITE_LIST_FIELD(target_list, targetList, targetList); - WRITE_LIST_FIELD(update_colnos, updateColnos, updateColnos); -} - -static void -_outRawStmt(OUT_TYPE(RawStmt, RawStmt) out, const RawStmt *node) -{ - WRITE_NODE_PTR_FIELD(stmt, stmt, stmt); - WRITE_INT_FIELD(stmt_location, stmt_location, stmt_location); - WRITE_INT_FIELD(stmt_len, stmt_len, stmt_len); -} - static void _outQuery(OUT_TYPE(Query, Query) out, const Query *node) { @@ -821,6 +855,7 @@ _outQuery(OUT_TYPE(Query, Query) out, const Query *node) WRITE_BOOL_FIELD(is_return, isReturn, isReturn); WRITE_LIST_FIELD(cte_list, cteList, cteList); WRITE_LIST_FIELD(rtable, rtable, rtable); + WRITE_LIST_FIELD(rteperminfos, rteperminfos, rteperminfos); WRITE_SPECIFIC_NODE_PTR_FIELD(FromExpr, from_expr, jointree, jointree, jointree); WRITE_LIST_FIELD(merge_action_list, mergeActionList, mergeActionList); WRITE_BOOL_FIELD(merge_use_outer_join, mergeUseOuterJoin, mergeUseOuterJoin); @@ -847,851 +882,918 @@ _outQuery(OUT_TYPE(Query, Query) out, const Query *node) } static void -_outInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) out, const InsertStmt *node) +_outTypeName(OUT_TYPE(TypeName, TypeName) out, const TypeName *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_LIST_FIELD(cols, cols, cols); - WRITE_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt); - WRITE_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause); - WRITE_LIST_FIELD(returning_list, returningList, returningList); - WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); - WRITE_ENUM_FIELD(OverridingKind, override, override, override); + WRITE_LIST_FIELD(names, names, names); + WRITE_UINT_FIELD(type_oid, typeOid, typeOid); + WRITE_BOOL_FIELD(setof, setof, setof); + WRITE_BOOL_FIELD(pct_type, pct_type, pct_type); + WRITE_LIST_FIELD(typmods, typmods, typmods); + WRITE_INT_FIELD(typemod, typemod, typemod); + WRITE_LIST_FIELD(array_bounds, arrayBounds, arrayBounds); + WRITE_INT_FIELD(location, location, location); } static void -_outDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) out, const DeleteStmt *node) +_outColumnRef(OUT_TYPE(ColumnRef, ColumnRef) out, const ColumnRef *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_LIST_FIELD(using_clause, usingClause, usingClause); - WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - WRITE_LIST_FIELD(returning_list, returningList, returningList); - WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + WRITE_LIST_FIELD(fields, fields, fields); + WRITE_INT_FIELD(location, location, location); } static void -_outUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) out, const UpdateStmt *node) +_outParamRef(OUT_TYPE(ParamRef, ParamRef) out, const ParamRef *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_LIST_FIELD(target_list, targetList, targetList); - WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - WRITE_LIST_FIELD(from_clause, fromClause, fromClause); - WRITE_LIST_FIELD(returning_list, returningList, returningList); - WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + WRITE_INT_FIELD(number, number, number); + WRITE_INT_FIELD(location, location, location); } static void -_outMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) out, const MergeStmt *node) +_outAExpr(OUT_TYPE(A_Expr, AExpr) out, const A_Expr *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_NODE_PTR_FIELD(source_relation, sourceRelation, sourceRelation); - WRITE_NODE_PTR_FIELD(join_condition, joinCondition, joinCondition); - WRITE_LIST_FIELD(merge_when_clauses, mergeWhenClauses, mergeWhenClauses); - WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + WRITE_ENUM_FIELD(A_Expr_Kind, kind, kind, kind); + WRITE_LIST_FIELD(name, name, name); + WRITE_NODE_PTR_FIELD(lexpr, lexpr, lexpr); + WRITE_NODE_PTR_FIELD(rexpr, rexpr, rexpr); + WRITE_INT_FIELD(location, location, location); } static void -_outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out, const SelectStmt *node) +_outTypeCast(OUT_TYPE(TypeCast, TypeCast) out, const TypeCast *node) { - WRITE_LIST_FIELD(distinct_clause, distinctClause, distinctClause); - WRITE_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause); - WRITE_LIST_FIELD(target_list, targetList, targetList); - WRITE_LIST_FIELD(from_clause, fromClause, fromClause); - WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - WRITE_LIST_FIELD(group_clause, groupClause, groupClause); - WRITE_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct); - WRITE_NODE_PTR_FIELD(having_clause, havingClause, havingClause); - WRITE_LIST_FIELD(window_clause, windowClause, windowClause); - WRITE_LIST_FIELD(values_lists, valuesLists, valuesLists); - WRITE_LIST_FIELD(sort_clause, sortClause, sortClause); - WRITE_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset); - WRITE_NODE_PTR_FIELD(limit_count, limitCount, limitCount); - WRITE_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption); - WRITE_LIST_FIELD(locking_clause, lockingClause, lockingClause); - WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); - WRITE_ENUM_FIELD(SetOperation, op, op, op); - WRITE_BOOL_FIELD(all, all, all); - WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg); - WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg); + WRITE_NODE_PTR_FIELD(arg, arg, arg); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + WRITE_INT_FIELD(location, location, location); } static void -_outReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) out, const ReturnStmt *node) +_outCollateClause(OUT_TYPE(CollateClause, CollateClause) out, const CollateClause *node) { - WRITE_NODE_PTR_FIELD(returnval, returnval, returnval); + WRITE_NODE_PTR_FIELD(arg, arg, arg); + WRITE_LIST_FIELD(collname, collname, collname); + WRITE_INT_FIELD(location, location, location); } static void -_outPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) out, const PLAssignStmt *node) +_outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out, const RoleSpec *node) { - WRITE_STRING_FIELD(name, name, name); - WRITE_LIST_FIELD(indirection, indirection, indirection); - WRITE_INT_FIELD(nnames, nnames, nnames); - WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, val, val, val); + WRITE_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype); + WRITE_STRING_FIELD(rolename, rolename, rolename); WRITE_INT_FIELD(location, location, location); } static void -_outAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) out, const AlterTableStmt *node) +_outFuncCall(OUT_TYPE(FuncCall, FuncCall) out, const FuncCall *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_LIST_FIELD(cmds, cmds, cmds); - WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_LIST_FIELD(funcname, funcname, funcname); + WRITE_LIST_FIELD(args, args, args); + WRITE_LIST_FIELD(agg_order, agg_order, agg_order); + WRITE_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter); + WRITE_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over); + WRITE_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group); + WRITE_BOOL_FIELD(agg_star, agg_star, agg_star); + WRITE_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct); + WRITE_BOOL_FIELD(func_variadic, func_variadic, func_variadic); + WRITE_ENUM_FIELD(CoercionForm, funcformat, funcformat, funcformat); + WRITE_INT_FIELD(location, location, location); } static void -_outAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) out, const AlterTableCmd *node) +_outAStar(OUT_TYPE(A_Star, AStar) out, const A_Star *node) { - WRITE_ENUM_FIELD(AlterTableType, subtype, subtype, subtype); - WRITE_STRING_FIELD(name, name, name); - WRITE_INT_FIELD(num, num, num); - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner); - WRITE_NODE_PTR_FIELD(def, def, def); - WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - WRITE_BOOL_FIELD(recurse, recurse, recurse); } static void -_outAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) out, const AlterDomainStmt *node) +_outAIndices(OUT_TYPE(A_Indices, AIndices) out, const A_Indices *node) { - WRITE_CHAR_FIELD(subtype, subtype, subtype); - WRITE_LIST_FIELD(type_name, typeName, typeName); - WRITE_STRING_FIELD(name, name, name); - WRITE_NODE_PTR_FIELD(def, def, def); - WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_BOOL_FIELD(is_slice, is_slice, is_slice); + WRITE_NODE_PTR_FIELD(lidx, lidx, lidx); + WRITE_NODE_PTR_FIELD(uidx, uidx, uidx); } static void -_outSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) out, const SetOperationStmt *node) +_outAIndirection(OUT_TYPE(A_Indirection, AIndirection) out, const A_Indirection *node) { - WRITE_ENUM_FIELD(SetOperation, op, op, op); - WRITE_BOOL_FIELD(all, all, all); - WRITE_NODE_PTR_FIELD(larg, larg, larg); - WRITE_NODE_PTR_FIELD(rarg, rarg, rarg); - WRITE_LIST_FIELD(col_types, colTypes, colTypes); - WRITE_LIST_FIELD(col_typmods, colTypmods, colTypmods); - WRITE_LIST_FIELD(col_collations, colCollations, colCollations); - WRITE_LIST_FIELD(group_clauses, groupClauses, groupClauses); + WRITE_NODE_PTR_FIELD(arg, arg, arg); + WRITE_LIST_FIELD(indirection, indirection, indirection); } static void -_outGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) out, const GrantStmt *node) +_outAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) out, const A_ArrayExpr *node) { - WRITE_BOOL_FIELD(is_grant, is_grant, is_grant); - WRITE_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype); - WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - WRITE_LIST_FIELD(objects, objects, objects); - WRITE_LIST_FIELD(privileges, privileges, privileges); - WRITE_LIST_FIELD(grantees, grantees, grantees); - WRITE_BOOL_FIELD(grant_option, grant_option, grant_option); - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor); - WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + WRITE_LIST_FIELD(elements, elements, elements); + WRITE_INT_FIELD(location, location, location); } static void -_outGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) out, const GrantRoleStmt *node) +_outResTarget(OUT_TYPE(ResTarget, ResTarget) out, const ResTarget *node) { - WRITE_LIST_FIELD(granted_roles, granted_roles, granted_roles); - WRITE_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles); - WRITE_BOOL_FIELD(is_grant, is_grant, is_grant); - WRITE_BOOL_FIELD(admin_opt, admin_opt, admin_opt); - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor); - WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + WRITE_STRING_FIELD(name, name, name); + WRITE_LIST_FIELD(indirection, indirection, indirection); + WRITE_NODE_PTR_FIELD(val, val, val); + WRITE_INT_FIELD(location, location, location); } static void -_outAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) out, const AlterDefaultPrivilegesStmt *node) +_outMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) out, const MultiAssignRef *node) { - WRITE_LIST_FIELD(options, options, options); - WRITE_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action); + WRITE_NODE_PTR_FIELD(source, source, source); + WRITE_INT_FIELD(colno, colno, colno); + WRITE_INT_FIELD(ncolumns, ncolumns, ncolumns); } static void -_outClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) out, const ClosePortalStmt *node) +_outSortBy(OUT_TYPE(SortBy, SortBy) out, const SortBy *node) { - WRITE_STRING_FIELD(portalname, portalname, portalname); -} - -static void -_outClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) out, const ClusterStmt *node) -{ - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_STRING_FIELD(indexname, indexname, indexname); - WRITE_LIST_FIELD(params, params, params); + WRITE_NODE_PTR_FIELD(node, node, node); + WRITE_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir); + WRITE_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls); + WRITE_LIST_FIELD(use_op, useOp, useOp); + WRITE_INT_FIELD(location, location, location); } static void -_outCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) out, const CopyStmt *node) +_outWindowDef(OUT_TYPE(WindowDef, WindowDef) out, const WindowDef *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_NODE_PTR_FIELD(query, query, query); - WRITE_LIST_FIELD(attlist, attlist, attlist); - WRITE_BOOL_FIELD(is_from, is_from, is_from); - WRITE_BOOL_FIELD(is_program, is_program, is_program); - WRITE_STRING_FIELD(filename, filename, filename); - WRITE_LIST_FIELD(options, options, options); - WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + WRITE_STRING_FIELD(name, name, name); + WRITE_STRING_FIELD(refname, refname, refname); + WRITE_LIST_FIELD(partition_clause, partitionClause, partitionClause); + WRITE_LIST_FIELD(order_clause, orderClause, orderClause); + WRITE_INT_FIELD(frame_options, frameOptions, frameOptions); + WRITE_NODE_PTR_FIELD(start_offset, startOffset, startOffset); + WRITE_NODE_PTR_FIELD(end_offset, endOffset, endOffset); + WRITE_INT_FIELD(location, location, location); } static void -_outCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) out, const CreateStmt *node) +_outRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) out, const RangeSubselect *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_LIST_FIELD(table_elts, tableElts, tableElts); - WRITE_LIST_FIELD(inh_relations, inhRelations, inhRelations); - WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound); - WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename); - WRITE_LIST_FIELD(constraints, constraints, constraints); - WRITE_LIST_FIELD(options, options, options); - WRITE_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit); - WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename); - WRITE_STRING_FIELD(access_method, accessMethod, accessMethod); - WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_BOOL_FIELD(lateral, lateral, lateral); + WRITE_NODE_PTR_FIELD(subquery, subquery, subquery); + WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); } static void -_outDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) out, const DefineStmt *node) +_outRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) out, const RangeFunction *node) { - WRITE_ENUM_FIELD(ObjectType, kind, kind, kind); - WRITE_BOOL_FIELD(oldstyle, oldstyle, oldstyle); - WRITE_LIST_FIELD(defnames, defnames, defnames); - WRITE_LIST_FIELD(args, args, args); - WRITE_LIST_FIELD(definition, definition, definition); - WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); - WRITE_BOOL_FIELD(replace, replace, replace); + WRITE_BOOL_FIELD(lateral, lateral, lateral); + WRITE_BOOL_FIELD(ordinality, ordinality, ordinality); + WRITE_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom); + WRITE_LIST_FIELD(functions, functions, functions); + WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); + WRITE_LIST_FIELD(coldeflist, coldeflist, coldeflist); } static void -_outDropStmt(OUT_TYPE(DropStmt, DropStmt) out, const DropStmt *node) +_outRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) out, const RangeTableFunc *node) { - WRITE_LIST_FIELD(objects, objects, objects); - WRITE_ENUM_FIELD(ObjectType, remove_type, removeType, removeType); - WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - WRITE_BOOL_FIELD(concurrent, concurrent, concurrent); + WRITE_BOOL_FIELD(lateral, lateral, lateral); + WRITE_NODE_PTR_FIELD(docexpr, docexpr, docexpr); + WRITE_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr); + WRITE_LIST_FIELD(namespaces, namespaces, namespaces); + WRITE_LIST_FIELD(columns, columns, columns); + WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); + WRITE_INT_FIELD(location, location, location); } static void -_outTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) out, const TruncateStmt *node) +_outRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) out, const RangeTableFuncCol *node) { - WRITE_LIST_FIELD(relations, relations, relations); - WRITE_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs); - WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + WRITE_STRING_FIELD(colname, colname, colname); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + WRITE_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality); + WRITE_BOOL_FIELD(is_not_null, is_not_null, is_not_null); + WRITE_NODE_PTR_FIELD(colexpr, colexpr, colexpr); + WRITE_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr); + WRITE_INT_FIELD(location, location, location); } static void -_outCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) out, const CommentStmt *node) +_outRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) out, const RangeTableSample *node) { - WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - WRITE_NODE_PTR_FIELD(object, object, object); - WRITE_STRING_FIELD(comment, comment, comment); + WRITE_NODE_PTR_FIELD(relation, relation, relation); + WRITE_LIST_FIELD(method, method, method); + WRITE_LIST_FIELD(args, args, args); + WRITE_NODE_PTR_FIELD(repeatable, repeatable, repeatable); + WRITE_INT_FIELD(location, location, location); } static void -_outFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) out, const FetchStmt *node) +_outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out, const ColumnDef *node) { - WRITE_ENUM_FIELD(FetchDirection, direction, direction, direction); - WRITE_LONG_FIELD(how_many, howMany, howMany); - WRITE_STRING_FIELD(portalname, portalname, portalname); - WRITE_BOOL_FIELD(ismove, ismove, ismove); + WRITE_STRING_FIELD(colname, colname, colname); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + WRITE_STRING_FIELD(compression, compression, compression); + WRITE_INT_FIELD(inhcount, inhcount, inhcount); + WRITE_BOOL_FIELD(is_local, is_local, is_local); + WRITE_BOOL_FIELD(is_not_null, is_not_null, is_not_null); + WRITE_BOOL_FIELD(is_from_type, is_from_type, is_from_type); + WRITE_CHAR_FIELD(storage, storage, storage); + WRITE_STRING_FIELD(storage_name, storage_name, storage_name); + WRITE_NODE_PTR_FIELD(raw_default, raw_default, raw_default); + WRITE_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default); + WRITE_CHAR_FIELD(identity, identity, identity); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence); + WRITE_CHAR_FIELD(generated, generated, generated); + WRITE_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause); + WRITE_UINT_FIELD(coll_oid, collOid, collOid); + WRITE_LIST_FIELD(constraints, constraints, constraints); + WRITE_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions); + WRITE_INT_FIELD(location, location, location); } static void -_outIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) out, const IndexStmt *node) +_outTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) out, const TableLikeClause *node) { - WRITE_STRING_FIELD(idxname, idxname, idxname); WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_STRING_FIELD(access_method, accessMethod, accessMethod); - WRITE_STRING_FIELD(table_space, tableSpace, tableSpace); - WRITE_LIST_FIELD(index_params, indexParams, indexParams); - WRITE_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams); - WRITE_LIST_FIELD(options, options, options); - WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - WRITE_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames); - WRITE_STRING_FIELD(idxcomment, idxcomment, idxcomment); - WRITE_UINT_FIELD(index_oid, indexOid, indexOid); - WRITE_UINT_FIELD(old_node, oldNode, oldNode); - WRITE_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid); - WRITE_UINT_FIELD(old_first_relfilenode_subid, oldFirstRelfilenodeSubid, oldFirstRelfilenodeSubid); - WRITE_BOOL_FIELD(unique, unique, unique); - WRITE_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct); - WRITE_BOOL_FIELD(primary, primary, primary); - WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint); - WRITE_BOOL_FIELD(deferrable, deferrable, deferrable); - WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred); - WRITE_BOOL_FIELD(transformed, transformed, transformed); - WRITE_BOOL_FIELD(concurrent, concurrent, concurrent); - WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); - WRITE_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc); -} - -static void -_outCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) out, const CreateFunctionStmt *node) -{ - WRITE_BOOL_FIELD(is_procedure, is_procedure, is_procedure); - WRITE_BOOL_FIELD(replace, replace, replace); - WRITE_LIST_FIELD(funcname, funcname, funcname); - WRITE_LIST_FIELD(parameters, parameters, parameters); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType); - WRITE_LIST_FIELD(options, options, options); - WRITE_NODE_PTR_FIELD(sql_body, sql_body, sql_body); + WRITE_UINT_FIELD(options, options, options); + WRITE_UINT_FIELD(relation_oid, relationOid, relationOid); } static void -_outAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) out, const AlterFunctionStmt *node) +_outIndexElem(OUT_TYPE(IndexElem, IndexElem) out, const IndexElem *node) { - WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func); - WRITE_LIST_FIELD(actions, actions, actions); + WRITE_STRING_FIELD(name, name, name); + WRITE_NODE_PTR_FIELD(expr, expr, expr); + WRITE_STRING_FIELD(indexcolname, indexcolname, indexcolname); + WRITE_LIST_FIELD(collation, collation, collation); + WRITE_LIST_FIELD(opclass, opclass, opclass); + WRITE_LIST_FIELD(opclassopts, opclassopts, opclassopts); + WRITE_ENUM_FIELD(SortByDir, ordering, ordering, ordering); + WRITE_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering); } static void -_outDoStmt(OUT_TYPE(DoStmt, DoStmt) out, const DoStmt *node) +_outDefElem(OUT_TYPE(DefElem, DefElem) out, const DefElem *node) { - WRITE_LIST_FIELD(args, args, args); + WRITE_STRING_FIELD(defnamespace, defnamespace, defnamespace); + WRITE_STRING_FIELD(defname, defname, defname); + WRITE_NODE_PTR_FIELD(arg, arg, arg); + WRITE_ENUM_FIELD(DefElemAction, defaction, defaction, defaction); + WRITE_INT_FIELD(location, location, location); } static void -_outRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) out, const RenameStmt *node) +_outLockingClause(OUT_TYPE(LockingClause, LockingClause) out, const LockingClause *node) { - WRITE_ENUM_FIELD(ObjectType, rename_type, renameType, renameType); - WRITE_ENUM_FIELD(ObjectType, relation_type, relationType, relationType); - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_NODE_PTR_FIELD(object, object, object); - WRITE_STRING_FIELD(subname, subname, subname); - WRITE_STRING_FIELD(newname, newname, newname); - WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_LIST_FIELD(locked_rels, lockedRels, lockedRels); + WRITE_ENUM_FIELD(LockClauseStrength, strength, strength, strength); + WRITE_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy); } static void -_outRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) out, const RuleStmt *node) +_outXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) out, const XmlSerialize *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_STRING_FIELD(rulename, rulename, rulename); - WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - WRITE_ENUM_FIELD(CmdType, event, event, event); - WRITE_BOOL_FIELD(instead, instead, instead); - WRITE_LIST_FIELD(actions, actions, actions); - WRITE_BOOL_FIELD(replace, replace, replace); + WRITE_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption); + WRITE_NODE_PTR_FIELD(expr, expr, expr); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + WRITE_BOOL_FIELD(indent, indent, indent); + WRITE_INT_FIELD(location, location, location); } static void -_outNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) out, const NotifyStmt *node) +_outPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) out, const PartitionElem *node) { - WRITE_STRING_FIELD(conditionname, conditionname, conditionname); - WRITE_STRING_FIELD(payload, payload, payload); + WRITE_STRING_FIELD(name, name, name); + WRITE_NODE_PTR_FIELD(expr, expr, expr); + WRITE_LIST_FIELD(collation, collation, collation); + WRITE_LIST_FIELD(opclass, opclass, opclass); + WRITE_INT_FIELD(location, location, location); } static void -_outListenStmt(OUT_TYPE(ListenStmt, ListenStmt) out, const ListenStmt *node) +_outPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) out, const PartitionSpec *node) { - WRITE_STRING_FIELD(conditionname, conditionname, conditionname); + WRITE_ENUM_FIELD(PartitionStrategy, strategy, strategy, strategy); + WRITE_LIST_FIELD(part_params, partParams, partParams); + WRITE_INT_FIELD(location, location, location); } static void -_outUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) out, const UnlistenStmt *node) +_outPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) out, const PartitionBoundSpec *node) { - WRITE_STRING_FIELD(conditionname, conditionname, conditionname); + WRITE_CHAR_FIELD(strategy, strategy, strategy); + WRITE_BOOL_FIELD(is_default, is_default, is_default); + WRITE_INT_FIELD(modulus, modulus, modulus); + WRITE_INT_FIELD(remainder, remainder, remainder); + WRITE_LIST_FIELD(listdatums, listdatums, listdatums); + WRITE_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums); + WRITE_LIST_FIELD(upperdatums, upperdatums, upperdatums); + WRITE_INT_FIELD(location, location, location); } static void -_outTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) out, const TransactionStmt *node) +_outPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) out, const PartitionRangeDatum *node) { - WRITE_ENUM_FIELD(TransactionStmtKind, kind, kind, kind); - WRITE_LIST_FIELD(options, options, options); - WRITE_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name); - WRITE_STRING_FIELD(gid, gid, gid); - WRITE_BOOL_FIELD(chain, chain, chain); + WRITE_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind); + WRITE_NODE_PTR_FIELD(value, value, value); + WRITE_INT_FIELD(location, location, location); } static void -_outViewStmt(OUT_TYPE(ViewStmt, ViewStmt) out, const ViewStmt *node) +_outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out, const PartitionCmd *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view); - WRITE_LIST_FIELD(aliases, aliases, aliases); - WRITE_NODE_PTR_FIELD(query, query, query); - WRITE_BOOL_FIELD(replace, replace, replace); - WRITE_LIST_FIELD(options, options, options); - WRITE_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name); + WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound); + WRITE_BOOL_FIELD(concurrent, concurrent, concurrent); } static void -_outLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) out, const LoadStmt *node) +_outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out, const RangeTblEntry *node) { - WRITE_STRING_FIELD(filename, filename, filename); -} - -static void -_outCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) out, const CreateDomainStmt *node) -{ - WRITE_LIST_FIELD(domainname, domainname, domainname); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - WRITE_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause); - WRITE_LIST_FIELD(constraints, constraints, constraints); + WRITE_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind); + WRITE_UINT_FIELD(relid, relid, relid); + WRITE_CHAR_FIELD(relkind, relkind, relkind); + WRITE_INT_FIELD(rellockmode, rellockmode, rellockmode); + WRITE_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample); + WRITE_UINT_FIELD(perminfoindex, perminfoindex, perminfoindex); + WRITE_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery); + WRITE_BOOL_FIELD(security_barrier, security_barrier, security_barrier); + WRITE_ENUM_FIELD(JoinType, jointype, jointype, jointype); + WRITE_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols); + WRITE_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars); + WRITE_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols); + WRITE_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols); + WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias); + WRITE_LIST_FIELD(functions, functions, functions); + WRITE_BOOL_FIELD(funcordinality, funcordinality, funcordinality); + WRITE_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc); + WRITE_LIST_FIELD(values_lists, values_lists, values_lists); + WRITE_STRING_FIELD(ctename, ctename, ctename); + WRITE_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup); + WRITE_BOOL_FIELD(self_reference, self_reference, self_reference); + WRITE_LIST_FIELD(coltypes, coltypes, coltypes); + WRITE_LIST_FIELD(coltypmods, coltypmods, coltypmods); + WRITE_LIST_FIELD(colcollations, colcollations, colcollations); + WRITE_STRING_FIELD(enrname, enrname, enrname); + WRITE_FLOAT_FIELD(enrtuples, enrtuples, enrtuples); + WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); + WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref); + WRITE_BOOL_FIELD(lateral, lateral, lateral); + WRITE_BOOL_FIELD(inh, inh, inh); + WRITE_BOOL_FIELD(in_from_cl, inFromCl, inFromCl); + WRITE_LIST_FIELD(security_quals, securityQuals, securityQuals); } static void -_outCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) out, const CreatedbStmt *node) +_outRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) out, const RTEPermissionInfo *node) { - WRITE_STRING_FIELD(dbname, dbname, dbname); - WRITE_LIST_FIELD(options, options, options); + WRITE_UINT_FIELD(relid, relid, relid); + WRITE_BOOL_FIELD(inh, inh, inh); + WRITE_LONG_FIELD(required_perms, requiredPerms, requiredPerms); + WRITE_UINT_FIELD(check_as_user, checkAsUser, checkAsUser); + WRITE_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols); + WRITE_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols); + WRITE_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols); } static void -_outDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) out, const DropdbStmt *node) +_outRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) out, const RangeTblFunction *node) { - WRITE_STRING_FIELD(dbname, dbname, dbname); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - WRITE_LIST_FIELD(options, options, options); + WRITE_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr); + WRITE_INT_FIELD(funccolcount, funccolcount, funccolcount); + WRITE_LIST_FIELD(funccolnames, funccolnames, funccolnames); + WRITE_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes); + WRITE_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods); + WRITE_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations); + WRITE_BITMAPSET_FIELD(funcparams, funcparams, funcparams); } static void -_outVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) out, const VacuumStmt *node) +_outTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) out, const TableSampleClause *node) { - WRITE_LIST_FIELD(options, options, options); - WRITE_LIST_FIELD(rels, rels, rels); - WRITE_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd); + WRITE_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler); + WRITE_LIST_FIELD(args, args, args); + WRITE_NODE_PTR_FIELD(repeatable, repeatable, repeatable); } static void -_outExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) out, const ExplainStmt *node) +_outWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) out, const WithCheckOption *node) { - WRITE_NODE_PTR_FIELD(query, query, query); - WRITE_LIST_FIELD(options, options, options); + WRITE_ENUM_FIELD(WCOKind, kind, kind, kind); + WRITE_STRING_FIELD(relname, relname, relname); + WRITE_STRING_FIELD(polname, polname, polname); + WRITE_NODE_PTR_FIELD(qual, qual, qual); + WRITE_BOOL_FIELD(cascaded, cascaded, cascaded); } static void -_outCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) out, const CreateTableAsStmt *node) +_outSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) out, const SortGroupClause *node) { - WRITE_NODE_PTR_FIELD(query, query, query); - WRITE_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into); - WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - WRITE_BOOL_FIELD(is_select_into, is_select_into, is_select_into); - WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef); + WRITE_UINT_FIELD(eqop, eqop, eqop); + WRITE_UINT_FIELD(sortop, sortop, sortop); + WRITE_BOOL_FIELD(nulls_first, nulls_first, nulls_first); + WRITE_BOOL_FIELD(hashable, hashable, hashable); } static void -_outCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) out, const CreateSeqStmt *node) +_outGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) out, const GroupingSet *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence); - WRITE_LIST_FIELD(options, options, options); - WRITE_UINT_FIELD(owner_id, ownerId, ownerId); - WRITE_BOOL_FIELD(for_identity, for_identity, for_identity); - WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_ENUM_FIELD(GroupingSetKind, kind, kind, kind); + WRITE_LIST_FIELD(content, content, content); + WRITE_INT_FIELD(location, location, location); } static void -_outAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) out, const AlterSeqStmt *node) +_outWindowClause(OUT_TYPE(WindowClause, WindowClause) out, const WindowClause *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence); - WRITE_LIST_FIELD(options, options, options); - WRITE_BOOL_FIELD(for_identity, for_identity, for_identity); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_STRING_FIELD(name, name, name); + WRITE_STRING_FIELD(refname, refname, refname); + WRITE_LIST_FIELD(partition_clause, partitionClause, partitionClause); + WRITE_LIST_FIELD(order_clause, orderClause, orderClause); + WRITE_INT_FIELD(frame_options, frameOptions, frameOptions); + WRITE_NODE_PTR_FIELD(start_offset, startOffset, startOffset); + WRITE_NODE_PTR_FIELD(end_offset, endOffset, endOffset); + WRITE_LIST_FIELD(run_condition, runCondition, runCondition); + WRITE_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc); + WRITE_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc); + WRITE_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl); + WRITE_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc); + WRITE_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst); + WRITE_UINT_FIELD(winref, winref, winref); + WRITE_BOOL_FIELD(copied_order, copiedOrder, copiedOrder); } static void -_outVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) out, const VariableSetStmt *node) +_outRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) out, const RowMarkClause *node) { - WRITE_ENUM_FIELD(VariableSetKind, kind, kind, kind); - WRITE_STRING_FIELD(name, name, name); - WRITE_LIST_FIELD(args, args, args); - WRITE_BOOL_FIELD(is_local, is_local, is_local); + WRITE_UINT_FIELD(rti, rti, rti); + WRITE_ENUM_FIELD(LockClauseStrength, strength, strength, strength); + WRITE_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy); + WRITE_BOOL_FIELD(pushed_down, pushedDown, pushedDown); } static void -_outVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) out, const VariableShowStmt *node) +_outWithClause(OUT_TYPE(WithClause, WithClause) out, const WithClause *node) { - WRITE_STRING_FIELD(name, name, name); + WRITE_LIST_FIELD(ctes, ctes, ctes); + WRITE_BOOL_FIELD(recursive, recursive, recursive); + WRITE_INT_FIELD(location, location, location); } static void -_outDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) out, const DiscardStmt *node) +_outInferClause(OUT_TYPE(InferClause, InferClause) out, const InferClause *node) { - WRITE_ENUM_FIELD(DiscardMode, target, target, target); + WRITE_LIST_FIELD(index_elems, indexElems, indexElems); + WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + WRITE_STRING_FIELD(conname, conname, conname); + WRITE_INT_FIELD(location, location, location); } static void -_outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out, const CreateTrigStmt *node) +_outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out, const OnConflictClause *node) { - WRITE_BOOL_FIELD(replace, replace, replace); - WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint); - WRITE_STRING_FIELD(trigname, trigname, trigname); - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_LIST_FIELD(funcname, funcname, funcname); - WRITE_LIST_FIELD(args, args, args); - WRITE_BOOL_FIELD(row, row, row); - WRITE_INT_FIELD(timing, timing, timing); - WRITE_INT_FIELD(events, events, events); - WRITE_LIST_FIELD(columns, columns, columns); - WRITE_NODE_PTR_FIELD(when_clause, whenClause, whenClause); - WRITE_LIST_FIELD(transition_rels, transitionRels, transitionRels); - WRITE_BOOL_FIELD(deferrable, deferrable, deferrable); - WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred); - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel); + WRITE_ENUM_FIELD(OnConflictAction, action, action, action); + WRITE_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer); + WRITE_LIST_FIELD(target_list, targetList, targetList); + WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + WRITE_INT_FIELD(location, location, location); } static void -_outCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) out, const CreatePLangStmt *node) +_outCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) out, const CTESearchClause *node) { - WRITE_BOOL_FIELD(replace, replace, replace); - WRITE_STRING_FIELD(plname, plname, plname); - WRITE_LIST_FIELD(plhandler, plhandler, plhandler); - WRITE_LIST_FIELD(plinline, plinline, plinline); - WRITE_LIST_FIELD(plvalidator, plvalidator, plvalidator); - WRITE_BOOL_FIELD(pltrusted, pltrusted, pltrusted); + WRITE_LIST_FIELD(search_col_list, search_col_list, search_col_list); + WRITE_BOOL_FIELD(search_breadth_first, search_breadth_first, search_breadth_first); + WRITE_STRING_FIELD(search_seq_column, search_seq_column, search_seq_column); + WRITE_INT_FIELD(location, location, location); } static void -_outCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) out, const CreateRoleStmt *node) +_outCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) out, const CTECycleClause *node) { - WRITE_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type); - WRITE_STRING_FIELD(role, role, role); - WRITE_LIST_FIELD(options, options, options); + WRITE_LIST_FIELD(cycle_col_list, cycle_col_list, cycle_col_list); + WRITE_STRING_FIELD(cycle_mark_column, cycle_mark_column, cycle_mark_column); + WRITE_NODE_PTR_FIELD(cycle_mark_value, cycle_mark_value, cycle_mark_value); + WRITE_NODE_PTR_FIELD(cycle_mark_default, cycle_mark_default, cycle_mark_default); + WRITE_STRING_FIELD(cycle_path_column, cycle_path_column, cycle_path_column); + WRITE_INT_FIELD(location, location, location); + WRITE_UINT_FIELD(cycle_mark_type, cycle_mark_type, cycle_mark_type); + WRITE_INT_FIELD(cycle_mark_typmod, cycle_mark_typmod, cycle_mark_typmod); + WRITE_UINT_FIELD(cycle_mark_collation, cycle_mark_collation, cycle_mark_collation); + WRITE_UINT_FIELD(cycle_mark_neop, cycle_mark_neop, cycle_mark_neop); } static void -_outAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) out, const AlterRoleStmt *node) +_outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out, const CommonTableExpr *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role); - WRITE_LIST_FIELD(options, options, options); - WRITE_INT_FIELD(action, action, action); + WRITE_STRING_FIELD(ctename, ctename, ctename); + WRITE_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames); + WRITE_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized); + WRITE_NODE_PTR_FIELD(ctequery, ctequery, ctequery); + WRITE_SPECIFIC_NODE_PTR_FIELD(CTESearchClause, ctesearch_clause, search_clause, search_clause, search_clause); + WRITE_SPECIFIC_NODE_PTR_FIELD(CTECycleClause, ctecycle_clause, cycle_clause, cycle_clause, cycle_clause); + WRITE_INT_FIELD(location, location, location); + WRITE_BOOL_FIELD(cterecursive, cterecursive, cterecursive); + WRITE_INT_FIELD(cterefcount, cterefcount, cterefcount); + WRITE_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames); + WRITE_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes); + WRITE_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods); + WRITE_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations); } static void -_outDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) out, const DropRoleStmt *node) +_outMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) out, const MergeWhenClause *node) { - WRITE_LIST_FIELD(roles, roles, roles); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_BOOL_FIELD(matched, matched, matched); + WRITE_ENUM_FIELD(CmdType, command_type, commandType, commandType); + WRITE_ENUM_FIELD(OverridingKind, override, override, override); + WRITE_NODE_PTR_FIELD(condition, condition, condition); + WRITE_LIST_FIELD(target_list, targetList, targetList); + WRITE_LIST_FIELD(values, values, values); } static void -_outLockStmt(OUT_TYPE(LockStmt, LockStmt) out, const LockStmt *node) +_outMergeAction(OUT_TYPE(MergeAction, MergeAction) out, const MergeAction *node) { - WRITE_LIST_FIELD(relations, relations, relations); - WRITE_INT_FIELD(mode, mode, mode); - WRITE_BOOL_FIELD(nowait, nowait, nowait); + WRITE_BOOL_FIELD(matched, matched, matched); + WRITE_ENUM_FIELD(CmdType, command_type, commandType, commandType); + WRITE_ENUM_FIELD(OverridingKind, override, override, override); + WRITE_NODE_PTR_FIELD(qual, qual, qual); + WRITE_LIST_FIELD(target_list, targetList, targetList); + WRITE_LIST_FIELD(update_colnos, updateColnos, updateColnos); } static void -_outConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) out, const ConstraintsSetStmt *node) +_outTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) out, const TriggerTransition *node) { - WRITE_LIST_FIELD(constraints, constraints, constraints); - WRITE_BOOL_FIELD(deferred, deferred, deferred); + WRITE_STRING_FIELD(name, name, name); + WRITE_BOOL_FIELD(is_new, isNew, isNew); + WRITE_BOOL_FIELD(is_table, isTable, isTable); } static void -_outReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) out, const ReindexStmt *node) +_outJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) out, const JsonOutput *node) { - WRITE_ENUM_FIELD(ReindexObjectType, kind, kind, kind); - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_STRING_FIELD(name, name, name); - WRITE_LIST_FIELD(params, params, params); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning); } static void -_outCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) out, const CheckPointStmt *node) +_outJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) out, const JsonKeyValue *node) { + WRITE_NODE_PTR_FIELD(key, key, key); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, value, value, value); } static void -_outCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) out, const CreateSchemaStmt *node) +_outJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) out, const JsonObjectConstructor *node) { - WRITE_STRING_FIELD(schemaname, schemaname, schemaname); - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, authrole, authrole, authrole); - WRITE_LIST_FIELD(schema_elts, schemaElts, schemaElts); - WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_LIST_FIELD(exprs, exprs, exprs); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output); + WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + WRITE_BOOL_FIELD(unique, unique, unique); + WRITE_INT_FIELD(location, location, location); } static void -_outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out, const AlterDatabaseStmt *node) +_outJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) out, const JsonArrayConstructor *node) { - WRITE_STRING_FIELD(dbname, dbname, dbname); - WRITE_LIST_FIELD(options, options, options); + WRITE_LIST_FIELD(exprs, exprs, exprs); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output); + WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + WRITE_INT_FIELD(location, location, location); } static void -_outAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) out, const AlterDatabaseRefreshCollStmt *node) +_outJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) out, const JsonArrayQueryConstructor *node) { - WRITE_STRING_FIELD(dbname, dbname, dbname); + WRITE_NODE_PTR_FIELD(query, query, query); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format); + WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + WRITE_INT_FIELD(location, location, location); } static void -_outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out, const AlterDatabaseSetStmt *node) +_outJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) out, const JsonAggConstructor *node) { - WRITE_STRING_FIELD(dbname, dbname, dbname); - WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output); + WRITE_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter); + WRITE_LIST_FIELD(agg_order, agg_order, agg_order); + WRITE_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over); + WRITE_INT_FIELD(location, location, location); } static void -_outAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) out, const AlterRoleSetStmt *node) +_outJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) out, const JsonObjectAgg *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role); - WRITE_STRING_FIELD(database, database, database); - WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonKeyValue, json_key_value, arg, arg, arg); + WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + WRITE_BOOL_FIELD(unique, unique, unique); } static void -_outCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) out, const CreateConversionStmt *node) +_outJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) out, const JsonArrayAgg *node) { - WRITE_LIST_FIELD(conversion_name, conversion_name, conversion_name); - WRITE_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name); - WRITE_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name); - WRITE_LIST_FIELD(func_name, func_name, func_name); - WRITE_BOOL_FIELD(def, def, def); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor); + WRITE_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, arg, arg, arg); + WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); } static void -_outCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) out, const CreateCastStmt *node) +_outRawStmt(OUT_TYPE(RawStmt, RawStmt) out, const RawStmt *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype); - WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func); - WRITE_ENUM_FIELD(CoercionContext, context, context, context); - WRITE_BOOL_FIELD(inout, inout, inout); + WRITE_NODE_PTR_FIELD(stmt, stmt, stmt); + WRITE_INT_FIELD(stmt_location, stmt_location, stmt_location); + WRITE_INT_FIELD(stmt_len, stmt_len, stmt_len); } static void -_outCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) out, const CreateOpClassStmt *node) +_outInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) out, const InsertStmt *node) { - WRITE_LIST_FIELD(opclassname, opclassname, opclassname); - WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); - WRITE_STRING_FIELD(amname, amname, amname); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype); - WRITE_LIST_FIELD(items, items, items); - WRITE_BOOL_FIELD(is_default, isDefault, isDefault); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_LIST_FIELD(cols, cols, cols); + WRITE_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt); + WRITE_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause); + WRITE_LIST_FIELD(returning_list, returningList, returningList); + WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + WRITE_ENUM_FIELD(OverridingKind, override, override, override); } static void -_outCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) out, const CreateOpFamilyStmt *node) +_outDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) out, const DeleteStmt *node) { - WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); - WRITE_STRING_FIELD(amname, amname, amname); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_LIST_FIELD(using_clause, usingClause, usingClause); + WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + WRITE_LIST_FIELD(returning_list, returningList, returningList); + WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); } static void -_outAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) out, const AlterOpFamilyStmt *node) +_outUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) out, const UpdateStmt *node) { - WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); - WRITE_STRING_FIELD(amname, amname, amname); - WRITE_BOOL_FIELD(is_drop, isDrop, isDrop); - WRITE_LIST_FIELD(items, items, items); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_LIST_FIELD(target_list, targetList, targetList); + WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + WRITE_LIST_FIELD(from_clause, fromClause, fromClause); + WRITE_LIST_FIELD(returning_list, returningList, returningList); + WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); } static void -_outPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) out, const PrepareStmt *node) +_outMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) out, const MergeStmt *node) { - WRITE_STRING_FIELD(name, name, name); - WRITE_LIST_FIELD(argtypes, argtypes, argtypes); - WRITE_NODE_PTR_FIELD(query, query, query); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_NODE_PTR_FIELD(source_relation, sourceRelation, sourceRelation); + WRITE_NODE_PTR_FIELD(join_condition, joinCondition, joinCondition); + WRITE_LIST_FIELD(merge_when_clauses, mergeWhenClauses, mergeWhenClauses); + WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); } static void -_outExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) out, const ExecuteStmt *node) +_outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out, const SelectStmt *node) { - WRITE_STRING_FIELD(name, name, name); - WRITE_LIST_FIELD(params, params, params); + WRITE_LIST_FIELD(distinct_clause, distinctClause, distinctClause); + WRITE_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause); + WRITE_LIST_FIELD(target_list, targetList, targetList); + WRITE_LIST_FIELD(from_clause, fromClause, fromClause); + WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + WRITE_LIST_FIELD(group_clause, groupClause, groupClause); + WRITE_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct); + WRITE_NODE_PTR_FIELD(having_clause, havingClause, havingClause); + WRITE_LIST_FIELD(window_clause, windowClause, windowClause); + WRITE_LIST_FIELD(values_lists, valuesLists, valuesLists); + WRITE_LIST_FIELD(sort_clause, sortClause, sortClause); + WRITE_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset); + WRITE_NODE_PTR_FIELD(limit_count, limitCount, limitCount); + WRITE_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption); + WRITE_LIST_FIELD(locking_clause, lockingClause, lockingClause); + WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + WRITE_ENUM_FIELD(SetOperation, op, op, op); + WRITE_BOOL_FIELD(all, all, all); + WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg); + WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg); } static void -_outDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) out, const DeallocateStmt *node) +_outSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) out, const SetOperationStmt *node) { - WRITE_STRING_FIELD(name, name, name); + WRITE_ENUM_FIELD(SetOperation, op, op, op); + WRITE_BOOL_FIELD(all, all, all); + WRITE_NODE_PTR_FIELD(larg, larg, larg); + WRITE_NODE_PTR_FIELD(rarg, rarg, rarg); + WRITE_LIST_FIELD(col_types, colTypes, colTypes); + WRITE_LIST_FIELD(col_typmods, colTypmods, colTypmods); + WRITE_LIST_FIELD(col_collations, colCollations, colCollations); + WRITE_LIST_FIELD(group_clauses, groupClauses, groupClauses); } static void -_outDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) out, const DeclareCursorStmt *node) +_outReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) out, const ReturnStmt *node) { - WRITE_STRING_FIELD(portalname, portalname, portalname); - WRITE_INT_FIELD(options, options, options); - WRITE_NODE_PTR_FIELD(query, query, query); + WRITE_NODE_PTR_FIELD(returnval, returnval, returnval); } static void -_outCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) out, const CreateTableSpaceStmt *node) +_outPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) out, const PLAssignStmt *node) { - WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename); - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, owner, owner, owner); - WRITE_STRING_FIELD(location, location, location); - WRITE_LIST_FIELD(options, options, options); + WRITE_STRING_FIELD(name, name, name); + WRITE_LIST_FIELD(indirection, indirection, indirection); + WRITE_INT_FIELD(nnames, nnames, nnames); + WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, val, val, val); + WRITE_INT_FIELD(location, location, location); } static void -_outDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) out, const DropTableSpaceStmt *node) +_outCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) out, const CreateSchemaStmt *node) { - WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_STRING_FIELD(schemaname, schemaname, schemaname); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, authrole, authrole, authrole); + WRITE_LIST_FIELD(schema_elts, schemaElts, schemaElts); + WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); } static void -_outAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) out, const AlterObjectDependsStmt *node) +_outAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) out, const AlterTableStmt *node) { - WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType); WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_NODE_PTR_FIELD(object, object, object); - WRITE_SPECIFIC_NODE_PTR_FIELD(String, string, extname, extname, extname); - WRITE_BOOL_FIELD(remove, remove, remove); + WRITE_LIST_FIELD(cmds, cmds, cmds); + WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); } static void -_outAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) out, const AlterObjectSchemaStmt *node) +_outReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) out, const ReplicaIdentityStmt *node) { - WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType); - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_NODE_PTR_FIELD(object, object, object); - WRITE_STRING_FIELD(newschema, newschema, newschema); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_CHAR_FIELD(identity_type, identity_type, identity_type); + WRITE_STRING_FIELD(name, name, name); } static void -_outAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) out, const AlterOwnerStmt *node) +_outAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) out, const AlterTableCmd *node) { - WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType); - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_NODE_PTR_FIELD(object, object, object); + WRITE_ENUM_FIELD(AlterTableType, subtype, subtype, subtype); + WRITE_STRING_FIELD(name, name, name); + WRITE_INT_FIELD(num, num, num); WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner); + WRITE_NODE_PTR_FIELD(def, def, def); + WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_BOOL_FIELD(recurse, recurse, recurse); } static void -_outAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) out, const AlterOperatorStmt *node) +_outAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) out, const AlterCollationStmt *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername); - WRITE_LIST_FIELD(options, options, options); + WRITE_LIST_FIELD(collname, collname, collname); } static void -_outAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) out, const AlterTypeStmt *node) +_outAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) out, const AlterDomainStmt *node) { + WRITE_CHAR_FIELD(subtype, subtype, subtype); WRITE_LIST_FIELD(type_name, typeName, typeName); - WRITE_LIST_FIELD(options, options, options); + WRITE_STRING_FIELD(name, name, name); + WRITE_NODE_PTR_FIELD(def, def, def); + WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); } static void -_outDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) out, const DropOwnedStmt *node) +_outGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) out, const GrantStmt *node) { - WRITE_LIST_FIELD(roles, roles, roles); + WRITE_BOOL_FIELD(is_grant, is_grant, is_grant); + WRITE_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype); + WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + WRITE_LIST_FIELD(objects, objects, objects); + WRITE_LIST_FIELD(privileges, privileges, privileges); + WRITE_LIST_FIELD(grantees, grantees, grantees); + WRITE_BOOL_FIELD(grant_option, grant_option, grant_option); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor); WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); } static void -_outReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) out, const ReassignOwnedStmt *node) +_outObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) out, const ObjectWithArgs *node) { - WRITE_LIST_FIELD(roles, roles, roles); - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole); + WRITE_LIST_FIELD(objname, objname, objname); + WRITE_LIST_FIELD(objargs, objargs, objargs); + WRITE_LIST_FIELD(objfuncargs, objfuncargs, objfuncargs); + WRITE_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified); } static void -_outCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) out, const CompositeTypeStmt *node) +_outAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) out, const AccessPriv *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar); - WRITE_LIST_FIELD(coldeflist, coldeflist, coldeflist); + WRITE_STRING_FIELD(priv_name, priv_name, priv_name); + WRITE_LIST_FIELD(cols, cols, cols); } static void -_outCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) out, const CreateEnumStmt *node) +_outGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) out, const GrantRoleStmt *node) { - WRITE_LIST_FIELD(type_name, typeName, typeName); - WRITE_LIST_FIELD(vals, vals, vals); + WRITE_LIST_FIELD(granted_roles, granted_roles, granted_roles); + WRITE_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles); + WRITE_BOOL_FIELD(is_grant, is_grant, is_grant); + WRITE_LIST_FIELD(opt, opt, opt); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor); + WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); } static void -_outCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) out, const CreateRangeStmt *node) +_outAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) out, const AlterDefaultPrivilegesStmt *node) { - WRITE_LIST_FIELD(type_name, typeName, typeName); - WRITE_LIST_FIELD(params, params, params); + WRITE_LIST_FIELD(options, options, options); + WRITE_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action); } static void -_outAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) out, const AlterEnumStmt *node) +_outCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) out, const CopyStmt *node) { - WRITE_LIST_FIELD(type_name, typeName, typeName); - WRITE_STRING_FIELD(old_val, oldVal, oldVal); - WRITE_STRING_FIELD(new_val, newVal, newVal); - WRITE_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor); - WRITE_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter); - WRITE_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_NODE_PTR_FIELD(query, query, query); + WRITE_LIST_FIELD(attlist, attlist, attlist); + WRITE_BOOL_FIELD(is_from, is_from, is_from); + WRITE_BOOL_FIELD(is_program, is_program, is_program); + WRITE_STRING_FIELD(filename, filename, filename); + WRITE_LIST_FIELD(options, options, options); + WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); } static void -_outAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) out, const AlterTSDictionaryStmt *node) +_outVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) out, const VariableSetStmt *node) { - WRITE_LIST_FIELD(dictname, dictname, dictname); - WRITE_LIST_FIELD(options, options, options); + WRITE_ENUM_FIELD(VariableSetKind, kind, kind, kind); + WRITE_STRING_FIELD(name, name, name); + WRITE_LIST_FIELD(args, args, args); + WRITE_BOOL_FIELD(is_local, is_local, is_local); } static void -_outAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) out, const AlterTSConfigurationStmt *node) +_outVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) out, const VariableShowStmt *node) { - WRITE_ENUM_FIELD(AlterTSConfigType, kind, kind, kind); - WRITE_LIST_FIELD(cfgname, cfgname, cfgname); - WRITE_LIST_FIELD(tokentype, tokentype, tokentype); - WRITE_LIST_FIELD(dicts, dicts, dicts); - WRITE_BOOL_FIELD(override, override, override); - WRITE_BOOL_FIELD(replace, replace, replace); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_STRING_FIELD(name, name, name); } static void -_outCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) out, const CreateFdwStmt *node) -{ - WRITE_STRING_FIELD(fdwname, fdwname, fdwname); - WRITE_LIST_FIELD(func_options, func_options, func_options); - WRITE_LIST_FIELD(options, options, options); -} - -static void -_outAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) out, const AlterFdwStmt *node) +_outCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) out, const CreateStmt *node) { - WRITE_STRING_FIELD(fdwname, fdwname, fdwname); - WRITE_LIST_FIELD(func_options, func_options, func_options); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_LIST_FIELD(table_elts, tableElts, tableElts); + WRITE_LIST_FIELD(inh_relations, inhRelations, inhRelations); + WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound); + WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename); + WRITE_LIST_FIELD(constraints, constraints, constraints); WRITE_LIST_FIELD(options, options, options); -} - -static void -_outCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) out, const CreateForeignServerStmt *node) -{ - WRITE_STRING_FIELD(servername, servername, servername); - WRITE_STRING_FIELD(servertype, servertype, servertype); - WRITE_STRING_FIELD(version, version, version); - WRITE_STRING_FIELD(fdwname, fdwname, fdwname); + WRITE_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit); + WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename); + WRITE_STRING_FIELD(access_method, accessMethod, accessMethod); WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); - WRITE_LIST_FIELD(options, options, options); -} - -static void -_outAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) out, const AlterForeignServerStmt *node) -{ - WRITE_STRING_FIELD(servername, servername, servername); - WRITE_STRING_FIELD(version, version, version); - WRITE_LIST_FIELD(options, options, options); - WRITE_BOOL_FIELD(has_version, has_version, has_version); } static void -_outCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) out, const CreateUserMappingStmt *node) +_outConstraint(OUT_TYPE(Constraint, Constraint) out, const Constraint *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); - WRITE_STRING_FIELD(servername, servername, servername); - WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_ENUM_FIELD(ConstrType, contype, contype, contype); + WRITE_STRING_FIELD(conname, conname, conname); + WRITE_BOOL_FIELD(deferrable, deferrable, deferrable); + WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred); + WRITE_INT_FIELD(location, location, location); + WRITE_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit); + WRITE_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr); + WRITE_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr); + WRITE_CHAR_FIELD(generated_when, generated_when, generated_when); + WRITE_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct); + WRITE_LIST_FIELD(keys, keys, keys); + WRITE_LIST_FIELD(including, including, including); + WRITE_LIST_FIELD(exclusions, exclusions, exclusions); WRITE_LIST_FIELD(options, options, options); + WRITE_STRING_FIELD(indexname, indexname, indexname); + WRITE_STRING_FIELD(indexspace, indexspace, indexspace); + WRITE_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc); + WRITE_STRING_FIELD(access_method, access_method, access_method); + WRITE_NODE_PTR_FIELD(where_clause, where_clause, where_clause); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable); + WRITE_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs); + WRITE_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs); + WRITE_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype); + WRITE_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action); + WRITE_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action); + WRITE_LIST_FIELD(fk_del_set_cols, fk_del_set_cols, fk_del_set_cols); + WRITE_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop); + WRITE_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid); + WRITE_BOOL_FIELD(skip_validation, skip_validation, skip_validation); + WRITE_BOOL_FIELD(initially_valid, initially_valid, initially_valid); } static void -_outAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) out, const AlterUserMappingStmt *node) +_outCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) out, const CreateTableSpaceStmt *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); - WRITE_STRING_FIELD(servername, servername, servername); + WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, owner, owner, owner); + WRITE_STRING_FIELD(location, location, location); WRITE_LIST_FIELD(options, options, options); } static void -_outDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) out, const DropUserMappingStmt *node) +_outDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) out, const DropTableSpaceStmt *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); - WRITE_STRING_FIELD(servername, servername, servername); + WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename); WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); } @@ -1714,92 +1816,107 @@ _outAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) } static void -_outSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) out, const SecLabelStmt *node) +_outCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) out, const CreateExtensionStmt *node) { - WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - WRITE_NODE_PTR_FIELD(object, object, object); - WRITE_STRING_FIELD(provider, provider, provider); - WRITE_STRING_FIELD(label, label, label); + WRITE_STRING_FIELD(extname, extname, extname); + WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_LIST_FIELD(options, options, options); } static void -_outCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) out, const CreateForeignTableStmt *node) +_outAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) out, const AlterExtensionStmt *node) { - WRITE_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base); - WRITE_STRING_FIELD(servername, servername, servername); + WRITE_STRING_FIELD(extname, extname, extname); WRITE_LIST_FIELD(options, options, options); } static void -_outImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) out, const ImportForeignSchemaStmt *node) +_outAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) out, const AlterExtensionContentsStmt *node) { - WRITE_STRING_FIELD(server_name, server_name, server_name); - WRITE_STRING_FIELD(remote_schema, remote_schema, remote_schema); - WRITE_STRING_FIELD(local_schema, local_schema, local_schema); - WRITE_ENUM_FIELD(ImportForeignSchemaType, list_type, list_type, list_type); - WRITE_LIST_FIELD(table_list, table_list, table_list); + WRITE_STRING_FIELD(extname, extname, extname); + WRITE_INT_FIELD(action, action, action); + WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + WRITE_NODE_PTR_FIELD(object, object, object); +} + +static void +_outCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) out, const CreateFdwStmt *node) +{ + WRITE_STRING_FIELD(fdwname, fdwname, fdwname); + WRITE_LIST_FIELD(func_options, func_options, func_options); WRITE_LIST_FIELD(options, options, options); } static void -_outCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) out, const CreateExtensionStmt *node) +_outAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) out, const AlterFdwStmt *node) { - WRITE_STRING_FIELD(extname, extname, extname); - WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_STRING_FIELD(fdwname, fdwname, fdwname); + WRITE_LIST_FIELD(func_options, func_options, func_options); WRITE_LIST_FIELD(options, options, options); } static void -_outAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) out, const AlterExtensionStmt *node) +_outCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) out, const CreateForeignServerStmt *node) { - WRITE_STRING_FIELD(extname, extname, extname); + WRITE_STRING_FIELD(servername, servername, servername); + WRITE_STRING_FIELD(servertype, servertype, servertype); + WRITE_STRING_FIELD(version, version, version); + WRITE_STRING_FIELD(fdwname, fdwname, fdwname); + WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); WRITE_LIST_FIELD(options, options, options); } static void -_outAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) out, const AlterExtensionContentsStmt *node) +_outAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) out, const AlterForeignServerStmt *node) { - WRITE_STRING_FIELD(extname, extname, extname); - WRITE_INT_FIELD(action, action, action); - WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - WRITE_NODE_PTR_FIELD(object, object, object); + WRITE_STRING_FIELD(servername, servername, servername); + WRITE_STRING_FIELD(version, version, version); + WRITE_LIST_FIELD(options, options, options); + WRITE_BOOL_FIELD(has_version, has_version, has_version); } static void -_outCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) out, const CreateEventTrigStmt *node) +_outCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) out, const CreateForeignTableStmt *node) { - WRITE_STRING_FIELD(trigname, trigname, trigname); - WRITE_STRING_FIELD(eventname, eventname, eventname); - WRITE_LIST_FIELD(whenclause, whenclause, whenclause); - WRITE_LIST_FIELD(funcname, funcname, funcname); + WRITE_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base); + WRITE_STRING_FIELD(servername, servername, servername); + WRITE_LIST_FIELD(options, options, options); } static void -_outAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) out, const AlterEventTrigStmt *node) +_outCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) out, const CreateUserMappingStmt *node) { - WRITE_STRING_FIELD(trigname, trigname, trigname); - WRITE_CHAR_FIELD(tgenabled, tgenabled, tgenabled); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); + WRITE_STRING_FIELD(servername, servername, servername); + WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_LIST_FIELD(options, options, options); } static void -_outRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) out, const RefreshMatViewStmt *node) +_outAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) out, const AlterUserMappingStmt *node) { - WRITE_BOOL_FIELD(concurrent, concurrent, concurrent); - WRITE_BOOL_FIELD(skip_data, skipData, skipData); - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); + WRITE_STRING_FIELD(servername, servername, servername); + WRITE_LIST_FIELD(options, options, options); } static void -_outReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) out, const ReplicaIdentityStmt *node) +_outDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) out, const DropUserMappingStmt *node) { - WRITE_CHAR_FIELD(identity_type, identity_type, identity_type); - WRITE_STRING_FIELD(name, name, name); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); + WRITE_STRING_FIELD(servername, servername, servername); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); } static void -_outAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) out, const AlterSystemStmt *node) +_outImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) out, const ImportForeignSchemaStmt *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); + WRITE_STRING_FIELD(server_name, server_name, server_name); + WRITE_STRING_FIELD(remote_schema, remote_schema, remote_schema); + WRITE_STRING_FIELD(local_schema, local_schema, local_schema); + WRITE_ENUM_FIELD(ImportForeignSchemaType, list_type, list_type, list_type); + WRITE_LIST_FIELD(table_list, table_list, table_list); + WRITE_LIST_FIELD(options, options, options); } static void @@ -1824,16 +1941,6 @@ _outAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) out, const AlterP WRITE_NODE_PTR_FIELD(with_check, with_check, with_check); } -static void -_outCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) out, const CreateTransformStmt *node) -{ - WRITE_BOOL_FIELD(replace, replace, replace); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name); - WRITE_STRING_FIELD(lang, lang, lang); - WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql); - WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql); -} - static void _outCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) out, const CreateAmStmt *node) { @@ -1843,691 +1950,694 @@ _outCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) out, const CreateAmStmt *n } static void -_outCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) out, const CreatePublicationStmt *node) +_outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out, const CreateTrigStmt *node) { - WRITE_STRING_FIELD(pubname, pubname, pubname); - WRITE_LIST_FIELD(options, options, options); - WRITE_LIST_FIELD(pubobjects, pubobjects, pubobjects); - WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables); + WRITE_BOOL_FIELD(replace, replace, replace); + WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint); + WRITE_STRING_FIELD(trigname, trigname, trigname); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_LIST_FIELD(funcname, funcname, funcname); + WRITE_LIST_FIELD(args, args, args); + WRITE_BOOL_FIELD(row, row, row); + WRITE_INT_FIELD(timing, timing, timing); + WRITE_INT_FIELD(events, events, events); + WRITE_LIST_FIELD(columns, columns, columns); + WRITE_NODE_PTR_FIELD(when_clause, whenClause, whenClause); + WRITE_LIST_FIELD(transition_rels, transitionRels, transitionRels); + WRITE_BOOL_FIELD(deferrable, deferrable, deferrable); + WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel); } static void -_outAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) out, const AlterPublicationStmt *node) +_outCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) out, const CreateEventTrigStmt *node) { - WRITE_STRING_FIELD(pubname, pubname, pubname); - WRITE_LIST_FIELD(options, options, options); - WRITE_LIST_FIELD(pubobjects, pubobjects, pubobjects); - WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables); - WRITE_ENUM_FIELD(AlterPublicationAction, action, action, action); + WRITE_STRING_FIELD(trigname, trigname, trigname); + WRITE_STRING_FIELD(eventname, eventname, eventname); + WRITE_LIST_FIELD(whenclause, whenclause, whenclause); + WRITE_LIST_FIELD(funcname, funcname, funcname); } static void -_outCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) out, const CreateSubscriptionStmt *node) +_outAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) out, const AlterEventTrigStmt *node) { - WRITE_STRING_FIELD(subname, subname, subname); - WRITE_STRING_FIELD(conninfo, conninfo, conninfo); - WRITE_LIST_FIELD(publication, publication, publication); - WRITE_LIST_FIELD(options, options, options); + WRITE_STRING_FIELD(trigname, trigname, trigname); + WRITE_CHAR_FIELD(tgenabled, tgenabled, tgenabled); } static void -_outAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) out, const AlterSubscriptionStmt *node) +_outCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) out, const CreatePLangStmt *node) { - WRITE_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind); - WRITE_STRING_FIELD(subname, subname, subname); - WRITE_STRING_FIELD(conninfo, conninfo, conninfo); - WRITE_LIST_FIELD(publication, publication, publication); - WRITE_LIST_FIELD(options, options, options); + WRITE_BOOL_FIELD(replace, replace, replace); + WRITE_STRING_FIELD(plname, plname, plname); + WRITE_LIST_FIELD(plhandler, plhandler, plhandler); + WRITE_LIST_FIELD(plinline, plinline, plinline); + WRITE_LIST_FIELD(plvalidator, plvalidator, plvalidator); + WRITE_BOOL_FIELD(pltrusted, pltrusted, pltrusted); } static void -_outDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) out, const DropSubscriptionStmt *node) +_outCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) out, const CreateRoleStmt *node) { - WRITE_STRING_FIELD(subname, subname, subname); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + WRITE_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type); + WRITE_STRING_FIELD(role, role, role); + WRITE_LIST_FIELD(options, options, options); } static void -_outCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) out, const CreateStatsStmt *node) +_outAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) out, const AlterRoleStmt *node) { - WRITE_LIST_FIELD(defnames, defnames, defnames); - WRITE_LIST_FIELD(stat_types, stat_types, stat_types); - WRITE_LIST_FIELD(exprs, exprs, exprs); - WRITE_LIST_FIELD(relations, relations, relations); - WRITE_STRING_FIELD(stxcomment, stxcomment, stxcomment); - WRITE_BOOL_FIELD(transformed, transformed, transformed); - WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role); + WRITE_LIST_FIELD(options, options, options); + WRITE_INT_FIELD(action, action, action); } static void -_outAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) out, const AlterCollationStmt *node) +_outAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) out, const AlterRoleSetStmt *node) { - WRITE_LIST_FIELD(collname, collname, collname); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role); + WRITE_STRING_FIELD(database, database, database); + WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); } static void -_outCallStmt(OUT_TYPE(CallStmt, CallStmt) out, const CallStmt *node) +_outDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) out, const DropRoleStmt *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall); - WRITE_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr); - WRITE_LIST_FIELD(outargs, outargs, outargs); + WRITE_LIST_FIELD(roles, roles, roles); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); } static void -_outAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) out, const AlterStatsStmt *node) +_outCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) out, const CreateSeqStmt *node) { - WRITE_LIST_FIELD(defnames, defnames, defnames); - WRITE_INT_FIELD(stxstattarget, stxstattarget, stxstattarget); - WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence); + WRITE_LIST_FIELD(options, options, options); + WRITE_UINT_FIELD(owner_id, ownerId, ownerId); + WRITE_BOOL_FIELD(for_identity, for_identity, for_identity); + WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); } static void -_outAExpr(OUT_TYPE(A_Expr, AExpr) out, const A_Expr *node) +_outAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) out, const AlterSeqStmt *node) { - WRITE_ENUM_FIELD(A_Expr_Kind, kind, kind, kind); - WRITE_LIST_FIELD(name, name, name); - WRITE_NODE_PTR_FIELD(lexpr, lexpr, lexpr); - WRITE_NODE_PTR_FIELD(rexpr, rexpr, rexpr); - WRITE_INT_FIELD(location, location, location); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence); + WRITE_LIST_FIELD(options, options, options); + WRITE_BOOL_FIELD(for_identity, for_identity, for_identity); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); } static void -_outColumnRef(OUT_TYPE(ColumnRef, ColumnRef) out, const ColumnRef *node) +_outDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) out, const DefineStmt *node) { - WRITE_LIST_FIELD(fields, fields, fields); - WRITE_INT_FIELD(location, location, location); + WRITE_ENUM_FIELD(ObjectType, kind, kind, kind); + WRITE_BOOL_FIELD(oldstyle, oldstyle, oldstyle); + WRITE_LIST_FIELD(defnames, defnames, defnames); + WRITE_LIST_FIELD(args, args, args); + WRITE_LIST_FIELD(definition, definition, definition); + WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_BOOL_FIELD(replace, replace, replace); } static void -_outParamRef(OUT_TYPE(ParamRef, ParamRef) out, const ParamRef *node) +_outCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) out, const CreateDomainStmt *node) { - WRITE_INT_FIELD(number, number, number); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(domainname, domainname, domainname); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + WRITE_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause); + WRITE_LIST_FIELD(constraints, constraints, constraints); } static void -_outFuncCall(OUT_TYPE(FuncCall, FuncCall) out, const FuncCall *node) +_outCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) out, const CreateOpClassStmt *node) { - WRITE_LIST_FIELD(funcname, funcname, funcname); - WRITE_LIST_FIELD(args, args, args); - WRITE_LIST_FIELD(agg_order, agg_order, agg_order); - WRITE_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter); - WRITE_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over); - WRITE_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group); - WRITE_BOOL_FIELD(agg_star, agg_star, agg_star); - WRITE_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct); - WRITE_BOOL_FIELD(func_variadic, func_variadic, func_variadic); - WRITE_ENUM_FIELD(CoercionForm, funcformat, funcformat, funcformat); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(opclassname, opclassname, opclassname); + WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); + WRITE_STRING_FIELD(amname, amname, amname); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype); + WRITE_LIST_FIELD(items, items, items); + WRITE_BOOL_FIELD(is_default, isDefault, isDefault); } static void -_outAStar(OUT_TYPE(A_Star, AStar) out, const A_Star *node) +_outCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) out, const CreateOpClassItem *node) { + WRITE_INT_FIELD(itemtype, itemtype, itemtype); + WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name); + WRITE_INT_FIELD(number, number, number); + WRITE_LIST_FIELD(order_family, order_family, order_family); + WRITE_LIST_FIELD(class_args, class_args, class_args); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype); } static void -_outAIndices(OUT_TYPE(A_Indices, AIndices) out, const A_Indices *node) +_outCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) out, const CreateOpFamilyStmt *node) { - WRITE_BOOL_FIELD(is_slice, is_slice, is_slice); - WRITE_NODE_PTR_FIELD(lidx, lidx, lidx); - WRITE_NODE_PTR_FIELD(uidx, uidx, uidx); + WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); + WRITE_STRING_FIELD(amname, amname, amname); } static void -_outAIndirection(OUT_TYPE(A_Indirection, AIndirection) out, const A_Indirection *node) +_outAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) out, const AlterOpFamilyStmt *node) { - WRITE_NODE_PTR_FIELD(arg, arg, arg); - WRITE_LIST_FIELD(indirection, indirection, indirection); + WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); + WRITE_STRING_FIELD(amname, amname, amname); + WRITE_BOOL_FIELD(is_drop, isDrop, isDrop); + WRITE_LIST_FIELD(items, items, items); } static void -_outAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) out, const A_ArrayExpr *node) +_outDropStmt(OUT_TYPE(DropStmt, DropStmt) out, const DropStmt *node) { - WRITE_LIST_FIELD(elements, elements, elements); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(objects, objects, objects); + WRITE_ENUM_FIELD(ObjectType, remove_type, removeType, removeType); + WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_BOOL_FIELD(concurrent, concurrent, concurrent); } static void -_outResTarget(OUT_TYPE(ResTarget, ResTarget) out, const ResTarget *node) +_outTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) out, const TruncateStmt *node) { - WRITE_STRING_FIELD(name, name, name); - WRITE_LIST_FIELD(indirection, indirection, indirection); - WRITE_NODE_PTR_FIELD(val, val, val); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(relations, relations, relations); + WRITE_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs); + WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); } static void -_outMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) out, const MultiAssignRef *node) +_outCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) out, const CommentStmt *node) { - WRITE_NODE_PTR_FIELD(source, source, source); - WRITE_INT_FIELD(colno, colno, colno); - WRITE_INT_FIELD(ncolumns, ncolumns, ncolumns); + WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + WRITE_NODE_PTR_FIELD(object, object, object); + WRITE_STRING_FIELD(comment, comment, comment); } static void -_outTypeCast(OUT_TYPE(TypeCast, TypeCast) out, const TypeCast *node) +_outSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) out, const SecLabelStmt *node) { - WRITE_NODE_PTR_FIELD(arg, arg, arg); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - WRITE_INT_FIELD(location, location, location); + WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + WRITE_NODE_PTR_FIELD(object, object, object); + WRITE_STRING_FIELD(provider, provider, provider); + WRITE_STRING_FIELD(label, label, label); } static void -_outCollateClause(OUT_TYPE(CollateClause, CollateClause) out, const CollateClause *node) +_outDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) out, const DeclareCursorStmt *node) { - WRITE_NODE_PTR_FIELD(arg, arg, arg); - WRITE_LIST_FIELD(collname, collname, collname); - WRITE_INT_FIELD(location, location, location); + WRITE_STRING_FIELD(portalname, portalname, portalname); + WRITE_INT_FIELD(options, options, options); + WRITE_NODE_PTR_FIELD(query, query, query); } static void -_outSortBy(OUT_TYPE(SortBy, SortBy) out, const SortBy *node) +_outClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) out, const ClosePortalStmt *node) { - WRITE_NODE_PTR_FIELD(node, node, node); - WRITE_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir); - WRITE_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls); - WRITE_LIST_FIELD(use_op, useOp, useOp); - WRITE_INT_FIELD(location, location, location); + WRITE_STRING_FIELD(portalname, portalname, portalname); } static void -_outWindowDef(OUT_TYPE(WindowDef, WindowDef) out, const WindowDef *node) +_outFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) out, const FetchStmt *node) { - WRITE_STRING_FIELD(name, name, name); - WRITE_STRING_FIELD(refname, refname, refname); - WRITE_LIST_FIELD(partition_clause, partitionClause, partitionClause); - WRITE_LIST_FIELD(order_clause, orderClause, orderClause); - WRITE_INT_FIELD(frame_options, frameOptions, frameOptions); - WRITE_NODE_PTR_FIELD(start_offset, startOffset, startOffset); - WRITE_NODE_PTR_FIELD(end_offset, endOffset, endOffset); - WRITE_INT_FIELD(location, location, location); + WRITE_ENUM_FIELD(FetchDirection, direction, direction, direction); + WRITE_LONG_FIELD(how_many, howMany, howMany); + WRITE_STRING_FIELD(portalname, portalname, portalname); + WRITE_BOOL_FIELD(ismove, ismove, ismove); } static void -_outRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) out, const RangeSubselect *node) +_outIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) out, const IndexStmt *node) { - WRITE_BOOL_FIELD(lateral, lateral, lateral); - WRITE_NODE_PTR_FIELD(subquery, subquery, subquery); - WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); + WRITE_STRING_FIELD(idxname, idxname, idxname); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_STRING_FIELD(access_method, accessMethod, accessMethod); + WRITE_STRING_FIELD(table_space, tableSpace, tableSpace); + WRITE_LIST_FIELD(index_params, indexParams, indexParams); + WRITE_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams); + WRITE_LIST_FIELD(options, options, options); + WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + WRITE_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames); + WRITE_STRING_FIELD(idxcomment, idxcomment, idxcomment); + WRITE_UINT_FIELD(index_oid, indexOid, indexOid); + WRITE_UINT_FIELD(old_number, oldNumber, oldNumber); + WRITE_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid); + WRITE_UINT_FIELD(old_first_relfilelocator_subid, oldFirstRelfilelocatorSubid, oldFirstRelfilelocatorSubid); + WRITE_BOOL_FIELD(unique, unique, unique); + WRITE_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct); + WRITE_BOOL_FIELD(primary, primary, primary); + WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint); + WRITE_BOOL_FIELD(deferrable, deferrable, deferrable); + WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred); + WRITE_BOOL_FIELD(transformed, transformed, transformed); + WRITE_BOOL_FIELD(concurrent, concurrent, concurrent); + WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + WRITE_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc); } static void -_outRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) out, const RangeFunction *node) +_outCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) out, const CreateStatsStmt *node) { - WRITE_BOOL_FIELD(lateral, lateral, lateral); - WRITE_BOOL_FIELD(ordinality, ordinality, ordinality); - WRITE_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom); - WRITE_LIST_FIELD(functions, functions, functions); - WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); - WRITE_LIST_FIELD(coldeflist, coldeflist, coldeflist); + WRITE_LIST_FIELD(defnames, defnames, defnames); + WRITE_LIST_FIELD(stat_types, stat_types, stat_types); + WRITE_LIST_FIELD(exprs, exprs, exprs); + WRITE_LIST_FIELD(relations, relations, relations); + WRITE_STRING_FIELD(stxcomment, stxcomment, stxcomment); + WRITE_BOOL_FIELD(transformed, transformed, transformed); + WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); } static void -_outRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) out, const RangeTableSample *node) +_outStatsElem(OUT_TYPE(StatsElem, StatsElem) out, const StatsElem *node) { - WRITE_NODE_PTR_FIELD(relation, relation, relation); - WRITE_LIST_FIELD(method, method, method); - WRITE_LIST_FIELD(args, args, args); - WRITE_NODE_PTR_FIELD(repeatable, repeatable, repeatable); - WRITE_INT_FIELD(location, location, location); + WRITE_STRING_FIELD(name, name, name); + WRITE_NODE_PTR_FIELD(expr, expr, expr); } static void -_outRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) out, const RangeTableFunc *node) +_outAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) out, const AlterStatsStmt *node) { - WRITE_BOOL_FIELD(lateral, lateral, lateral); - WRITE_NODE_PTR_FIELD(docexpr, docexpr, docexpr); - WRITE_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr); - WRITE_LIST_FIELD(namespaces, namespaces, namespaces); - WRITE_LIST_FIELD(columns, columns, columns); - WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(defnames, defnames, defnames); + WRITE_INT_FIELD(stxstattarget, stxstattarget, stxstattarget); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); } static void -_outRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) out, const RangeTableFuncCol *node) +_outCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) out, const CreateFunctionStmt *node) { - WRITE_STRING_FIELD(colname, colname, colname); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - WRITE_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality); - WRITE_BOOL_FIELD(is_not_null, is_not_null, is_not_null); - WRITE_NODE_PTR_FIELD(colexpr, colexpr, colexpr); - WRITE_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr); - WRITE_INT_FIELD(location, location, location); + WRITE_BOOL_FIELD(is_procedure, is_procedure, is_procedure); + WRITE_BOOL_FIELD(replace, replace, replace); + WRITE_LIST_FIELD(funcname, funcname, funcname); + WRITE_LIST_FIELD(parameters, parameters, parameters); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType); + WRITE_LIST_FIELD(options, options, options); + WRITE_NODE_PTR_FIELD(sql_body, sql_body, sql_body); } static void -_outTypeName(OUT_TYPE(TypeName, TypeName) out, const TypeName *node) +_outFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) out, const FunctionParameter *node) { - WRITE_LIST_FIELD(names, names, names); - WRITE_UINT_FIELD(type_oid, typeOid, typeOid); - WRITE_BOOL_FIELD(setof, setof, setof); - WRITE_BOOL_FIELD(pct_type, pct_type, pct_type); - WRITE_LIST_FIELD(typmods, typmods, typmods); - WRITE_INT_FIELD(typemod, typemod, typemod); - WRITE_LIST_FIELD(array_bounds, arrayBounds, arrayBounds); - WRITE_INT_FIELD(location, location, location); + WRITE_STRING_FIELD(name, name, name); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType); + WRITE_ENUM_FIELD(FunctionParameterMode, mode, mode, mode); + WRITE_NODE_PTR_FIELD(defexpr, defexpr, defexpr); } static void -_outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out, const ColumnDef *node) +_outAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) out, const AlterFunctionStmt *node) { - WRITE_STRING_FIELD(colname, colname, colname); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - WRITE_STRING_FIELD(compression, compression, compression); - WRITE_INT_FIELD(inhcount, inhcount, inhcount); - WRITE_BOOL_FIELD(is_local, is_local, is_local); - WRITE_BOOL_FIELD(is_not_null, is_not_null, is_not_null); - WRITE_BOOL_FIELD(is_from_type, is_from_type, is_from_type); - WRITE_CHAR_FIELD(storage, storage, storage); - WRITE_NODE_PTR_FIELD(raw_default, raw_default, raw_default); - WRITE_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default); - WRITE_CHAR_FIELD(identity, identity, identity); - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence); - WRITE_CHAR_FIELD(generated, generated, generated); - WRITE_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause); - WRITE_UINT_FIELD(coll_oid, collOid, collOid); - WRITE_LIST_FIELD(constraints, constraints, constraints); - WRITE_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions); - WRITE_INT_FIELD(location, location, location); + WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func); + WRITE_LIST_FIELD(actions, actions, actions); } static void -_outIndexElem(OUT_TYPE(IndexElem, IndexElem) out, const IndexElem *node) +_outDoStmt(OUT_TYPE(DoStmt, DoStmt) out, const DoStmt *node) { - WRITE_STRING_FIELD(name, name, name); - WRITE_NODE_PTR_FIELD(expr, expr, expr); - WRITE_STRING_FIELD(indexcolname, indexcolname, indexcolname); - WRITE_LIST_FIELD(collation, collation, collation); - WRITE_LIST_FIELD(opclass, opclass, opclass); - WRITE_LIST_FIELD(opclassopts, opclassopts, opclassopts); - WRITE_ENUM_FIELD(SortByDir, ordering, ordering, ordering); - WRITE_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering); + WRITE_LIST_FIELD(args, args, args); } static void -_outStatsElem(OUT_TYPE(StatsElem, StatsElem) out, const StatsElem *node) +_outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out, const InlineCodeBlock *node) { - WRITE_STRING_FIELD(name, name, name); - WRITE_NODE_PTR_FIELD(expr, expr, expr); + WRITE_STRING_FIELD(source_text, source_text, source_text); + WRITE_UINT_FIELD(lang_oid, langOid, langOid); + WRITE_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted); + WRITE_BOOL_FIELD(atomic, atomic, atomic); } static void -_outConstraint(OUT_TYPE(Constraint, Constraint) out, const Constraint *node) +_outCallStmt(OUT_TYPE(CallStmt, CallStmt) out, const CallStmt *node) { - WRITE_ENUM_FIELD(ConstrType, contype, contype, contype); - WRITE_STRING_FIELD(conname, conname, conname); - WRITE_BOOL_FIELD(deferrable, deferrable, deferrable); - WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred); - WRITE_INT_FIELD(location, location, location); - WRITE_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit); - WRITE_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr); - WRITE_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr); - WRITE_CHAR_FIELD(generated_when, generated_when, generated_when); - WRITE_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct); - WRITE_LIST_FIELD(keys, keys, keys); - WRITE_LIST_FIELD(including, including, including); - WRITE_LIST_FIELD(exclusions, exclusions, exclusions); + WRITE_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall); + WRITE_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr); + WRITE_LIST_FIELD(outargs, outargs, outargs); +} + +static void +_outCallContext(OUT_TYPE(CallContext, CallContext) out, const CallContext *node) +{ + WRITE_BOOL_FIELD(atomic, atomic, atomic); +} + +static void +_outRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) out, const RenameStmt *node) +{ + WRITE_ENUM_FIELD(ObjectType, rename_type, renameType, renameType); + WRITE_ENUM_FIELD(ObjectType, relation_type, relationType, relationType); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_NODE_PTR_FIELD(object, object, object); + WRITE_STRING_FIELD(subname, subname, subname); + WRITE_STRING_FIELD(newname, newname, newname); + WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); +} + +static void +_outAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) out, const AlterObjectDependsStmt *node) +{ + WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_NODE_PTR_FIELD(object, object, object); + WRITE_SPECIFIC_NODE_PTR_FIELD(String, string, extname, extname, extname); + WRITE_BOOL_FIELD(remove, remove, remove); +} + +static void +_outAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) out, const AlterObjectSchemaStmt *node) +{ + WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_NODE_PTR_FIELD(object, object, object); + WRITE_STRING_FIELD(newschema, newschema, newschema); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); +} + +static void +_outAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) out, const AlterOwnerStmt *node) +{ + WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_NODE_PTR_FIELD(object, object, object); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner); +} + +static void +_outAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) out, const AlterOperatorStmt *node) +{ + WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername); WRITE_LIST_FIELD(options, options, options); - WRITE_STRING_FIELD(indexname, indexname, indexname); - WRITE_STRING_FIELD(indexspace, indexspace, indexspace); - WRITE_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc); - WRITE_STRING_FIELD(access_method, access_method, access_method); - WRITE_NODE_PTR_FIELD(where_clause, where_clause, where_clause); - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable); - WRITE_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs); - WRITE_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs); - WRITE_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype); - WRITE_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action); - WRITE_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action); - WRITE_LIST_FIELD(fk_del_set_cols, fk_del_set_cols, fk_del_set_cols); - WRITE_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop); - WRITE_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid); - WRITE_BOOL_FIELD(skip_validation, skip_validation, skip_validation); - WRITE_BOOL_FIELD(initially_valid, initially_valid, initially_valid); } static void -_outDefElem(OUT_TYPE(DefElem, DefElem) out, const DefElem *node) +_outAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) out, const AlterTypeStmt *node) { - WRITE_STRING_FIELD(defnamespace, defnamespace, defnamespace); - WRITE_STRING_FIELD(defname, defname, defname); - WRITE_NODE_PTR_FIELD(arg, arg, arg); - WRITE_ENUM_FIELD(DefElemAction, defaction, defaction, defaction); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(type_name, typeName, typeName); + WRITE_LIST_FIELD(options, options, options); } static void -_outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out, const RangeTblEntry *node) +_outRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) out, const RuleStmt *node) { - WRITE_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind); - WRITE_UINT_FIELD(relid, relid, relid); - WRITE_CHAR_FIELD(relkind, relkind, relkind); - WRITE_INT_FIELD(rellockmode, rellockmode, rellockmode); - WRITE_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample); - WRITE_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery); - WRITE_BOOL_FIELD(security_barrier, security_barrier, security_barrier); - WRITE_ENUM_FIELD(JoinType, jointype, jointype, jointype); - WRITE_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols); - WRITE_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars); - WRITE_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols); - WRITE_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols); - WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias); - WRITE_LIST_FIELD(functions, functions, functions); - WRITE_BOOL_FIELD(funcordinality, funcordinality, funcordinality); - WRITE_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc); - WRITE_LIST_FIELD(values_lists, values_lists, values_lists); - WRITE_STRING_FIELD(ctename, ctename, ctename); - WRITE_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup); - WRITE_BOOL_FIELD(self_reference, self_reference, self_reference); - WRITE_LIST_FIELD(coltypes, coltypes, coltypes); - WRITE_LIST_FIELD(coltypmods, coltypmods, coltypmods); - WRITE_LIST_FIELD(colcollations, colcollations, colcollations); - WRITE_STRING_FIELD(enrname, enrname, enrname); - WRITE_FLOAT_FIELD(enrtuples, enrtuples, enrtuples); - WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); - WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref); - WRITE_BOOL_FIELD(lateral, lateral, lateral); - WRITE_BOOL_FIELD(inh, inh, inh); - WRITE_BOOL_FIELD(in_from_cl, inFromCl, inFromCl); - WRITE_UINT_FIELD(required_perms, requiredPerms, requiredPerms); - WRITE_UINT_FIELD(check_as_user, checkAsUser, checkAsUser); - WRITE_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols); - WRITE_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols); - WRITE_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols); - WRITE_BITMAPSET_FIELD(extra_updated_cols, extraUpdatedCols, extraUpdatedCols); - WRITE_LIST_FIELD(security_quals, securityQuals, securityQuals); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_STRING_FIELD(rulename, rulename, rulename); + WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + WRITE_ENUM_FIELD(CmdType, event, event, event); + WRITE_BOOL_FIELD(instead, instead, instead); + WRITE_LIST_FIELD(actions, actions, actions); + WRITE_BOOL_FIELD(replace, replace, replace); } static void -_outRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) out, const RangeTblFunction *node) +_outNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) out, const NotifyStmt *node) { - WRITE_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr); - WRITE_INT_FIELD(funccolcount, funccolcount, funccolcount); - WRITE_LIST_FIELD(funccolnames, funccolnames, funccolnames); - WRITE_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes); - WRITE_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods); - WRITE_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations); - WRITE_BITMAPSET_FIELD(funcparams, funcparams, funcparams); + WRITE_STRING_FIELD(conditionname, conditionname, conditionname); + WRITE_STRING_FIELD(payload, payload, payload); } static void -_outTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) out, const TableSampleClause *node) +_outListenStmt(OUT_TYPE(ListenStmt, ListenStmt) out, const ListenStmt *node) { - WRITE_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler); - WRITE_LIST_FIELD(args, args, args); - WRITE_NODE_PTR_FIELD(repeatable, repeatable, repeatable); + WRITE_STRING_FIELD(conditionname, conditionname, conditionname); } static void -_outWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) out, const WithCheckOption *node) +_outUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) out, const UnlistenStmt *node) { - WRITE_ENUM_FIELD(WCOKind, kind, kind, kind); - WRITE_STRING_FIELD(relname, relname, relname); - WRITE_STRING_FIELD(polname, polname, polname); - WRITE_NODE_PTR_FIELD(qual, qual, qual); - WRITE_BOOL_FIELD(cascaded, cascaded, cascaded); + WRITE_STRING_FIELD(conditionname, conditionname, conditionname); } static void -_outSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) out, const SortGroupClause *node) +_outTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) out, const TransactionStmt *node) { - WRITE_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef); - WRITE_UINT_FIELD(eqop, eqop, eqop); - WRITE_UINT_FIELD(sortop, sortop, sortop); - WRITE_BOOL_FIELD(nulls_first, nulls_first, nulls_first); - WRITE_BOOL_FIELD(hashable, hashable, hashable); + WRITE_ENUM_FIELD(TransactionStmtKind, kind, kind, kind); + WRITE_LIST_FIELD(options, options, options); + WRITE_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name); + WRITE_STRING_FIELD(gid, gid, gid); + WRITE_BOOL_FIELD(chain, chain, chain); } static void -_outGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) out, const GroupingSet *node) +_outCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) out, const CompositeTypeStmt *node) { - WRITE_ENUM_FIELD(GroupingSetKind, kind, kind, kind); - WRITE_LIST_FIELD(content, content, content); - WRITE_INT_FIELD(location, location, location); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar); + WRITE_LIST_FIELD(coldeflist, coldeflist, coldeflist); } static void -_outWindowClause(OUT_TYPE(WindowClause, WindowClause) out, const WindowClause *node) +_outCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) out, const CreateEnumStmt *node) { - WRITE_STRING_FIELD(name, name, name); - WRITE_STRING_FIELD(refname, refname, refname); - WRITE_LIST_FIELD(partition_clause, partitionClause, partitionClause); - WRITE_LIST_FIELD(order_clause, orderClause, orderClause); - WRITE_INT_FIELD(frame_options, frameOptions, frameOptions); - WRITE_NODE_PTR_FIELD(start_offset, startOffset, startOffset); - WRITE_NODE_PTR_FIELD(end_offset, endOffset, endOffset); - WRITE_LIST_FIELD(run_condition, runCondition, runCondition); - WRITE_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc); - WRITE_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc); - WRITE_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl); - WRITE_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc); - WRITE_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst); - WRITE_UINT_FIELD(winref, winref, winref); - WRITE_BOOL_FIELD(copied_order, copiedOrder, copiedOrder); + WRITE_LIST_FIELD(type_name, typeName, typeName); + WRITE_LIST_FIELD(vals, vals, vals); +} + +static void +_outCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) out, const CreateRangeStmt *node) +{ + WRITE_LIST_FIELD(type_name, typeName, typeName); + WRITE_LIST_FIELD(params, params, params); +} + +static void +_outAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) out, const AlterEnumStmt *node) +{ + WRITE_LIST_FIELD(type_name, typeName, typeName); + WRITE_STRING_FIELD(old_val, oldVal, oldVal); + WRITE_STRING_FIELD(new_val, newVal, newVal); + WRITE_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor); + WRITE_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter); + WRITE_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists); +} + +static void +_outViewStmt(OUT_TYPE(ViewStmt, ViewStmt) out, const ViewStmt *node) +{ + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view); + WRITE_LIST_FIELD(aliases, aliases, aliases); + WRITE_NODE_PTR_FIELD(query, query, query); + WRITE_BOOL_FIELD(replace, replace, replace); + WRITE_LIST_FIELD(options, options, options); + WRITE_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption); +} + +static void +_outLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) out, const LoadStmt *node) +{ + WRITE_STRING_FIELD(filename, filename, filename); +} + +static void +_outCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) out, const CreatedbStmt *node) +{ + WRITE_STRING_FIELD(dbname, dbname, dbname); + WRITE_LIST_FIELD(options, options, options); +} + +static void +_outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out, const AlterDatabaseStmt *node) +{ + WRITE_STRING_FIELD(dbname, dbname, dbname); + WRITE_LIST_FIELD(options, options, options); +} + +static void +_outAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) out, const AlterDatabaseRefreshCollStmt *node) +{ + WRITE_STRING_FIELD(dbname, dbname, dbname); +} + +static void +_outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out, const AlterDatabaseSetStmt *node) +{ + WRITE_STRING_FIELD(dbname, dbname, dbname); + WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); +} + +static void +_outDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) out, const DropdbStmt *node) +{ + WRITE_STRING_FIELD(dbname, dbname, dbname); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_LIST_FIELD(options, options, options); } static void -_outObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) out, const ObjectWithArgs *node) +_outAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) out, const AlterSystemStmt *node) { - WRITE_LIST_FIELD(objname, objname, objname); - WRITE_LIST_FIELD(objargs, objargs, objargs); - WRITE_LIST_FIELD(objfuncargs, objfuncargs, objfuncargs); - WRITE_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified); + WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); } static void -_outAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) out, const AccessPriv *node) +_outClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) out, const ClusterStmt *node) { - WRITE_STRING_FIELD(priv_name, priv_name, priv_name); - WRITE_LIST_FIELD(cols, cols, cols); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_STRING_FIELD(indexname, indexname, indexname); + WRITE_LIST_FIELD(params, params, params); } static void -_outCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) out, const CreateOpClassItem *node) +_outVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) out, const VacuumStmt *node) { - WRITE_INT_FIELD(itemtype, itemtype, itemtype); - WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name); - WRITE_INT_FIELD(number, number, number); - WRITE_LIST_FIELD(order_family, order_family, order_family); - WRITE_LIST_FIELD(class_args, class_args, class_args); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype); + WRITE_LIST_FIELD(options, options, options); + WRITE_LIST_FIELD(rels, rels, rels); + WRITE_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd); } static void -_outTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) out, const TableLikeClause *node) +_outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out, const VacuumRelation *node) { WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_UINT_FIELD(options, options, options); - WRITE_UINT_FIELD(relation_oid, relationOid, relationOid); + WRITE_UINT_FIELD(oid, oid, oid); + WRITE_LIST_FIELD(va_cols, va_cols, va_cols); } static void -_outFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) out, const FunctionParameter *node) +_outExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) out, const ExplainStmt *node) { - WRITE_STRING_FIELD(name, name, name); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType); - WRITE_ENUM_FIELD(FunctionParameterMode, mode, mode, mode); - WRITE_NODE_PTR_FIELD(defexpr, defexpr, defexpr); + WRITE_NODE_PTR_FIELD(query, query, query); + WRITE_LIST_FIELD(options, options, options); } static void -_outLockingClause(OUT_TYPE(LockingClause, LockingClause) out, const LockingClause *node) +_outCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) out, const CreateTableAsStmt *node) { - WRITE_LIST_FIELD(locked_rels, lockedRels, lockedRels); - WRITE_ENUM_FIELD(LockClauseStrength, strength, strength, strength); - WRITE_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy); + WRITE_NODE_PTR_FIELD(query, query, query); + WRITE_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into); + WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + WRITE_BOOL_FIELD(is_select_into, is_select_into, is_select_into); + WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); } static void -_outRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) out, const RowMarkClause *node) +_outRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) out, const RefreshMatViewStmt *node) { - WRITE_UINT_FIELD(rti, rti, rti); - WRITE_ENUM_FIELD(LockClauseStrength, strength, strength, strength); - WRITE_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy); - WRITE_BOOL_FIELD(pushed_down, pushedDown, pushedDown); + WRITE_BOOL_FIELD(concurrent, concurrent, concurrent); + WRITE_BOOL_FIELD(skip_data, skipData, skipData); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); } static void -_outXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) out, const XmlSerialize *node) +_outCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) out, const CheckPointStmt *node) { - WRITE_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption); - WRITE_NODE_PTR_FIELD(expr, expr, expr); - WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - WRITE_INT_FIELD(location, location, location); } static void -_outWithClause(OUT_TYPE(WithClause, WithClause) out, const WithClause *node) +_outDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) out, const DiscardStmt *node) { - WRITE_LIST_FIELD(ctes, ctes, ctes); - WRITE_BOOL_FIELD(recursive, recursive, recursive); - WRITE_INT_FIELD(location, location, location); + WRITE_ENUM_FIELD(DiscardMode, target, target, target); } static void -_outInferClause(OUT_TYPE(InferClause, InferClause) out, const InferClause *node) +_outLockStmt(OUT_TYPE(LockStmt, LockStmt) out, const LockStmt *node) { - WRITE_LIST_FIELD(index_elems, indexElems, indexElems); - WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - WRITE_STRING_FIELD(conname, conname, conname); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(relations, relations, relations); + WRITE_INT_FIELD(mode, mode, mode); + WRITE_BOOL_FIELD(nowait, nowait, nowait); } static void -_outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out, const OnConflictClause *node) +_outConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) out, const ConstraintsSetStmt *node) { - WRITE_ENUM_FIELD(OnConflictAction, action, action, action); - WRITE_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer); - WRITE_LIST_FIELD(target_list, targetList, targetList); - WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(constraints, constraints, constraints); + WRITE_BOOL_FIELD(deferred, deferred, deferred); } static void -_outCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) out, const CTESearchClause *node) +_outReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) out, const ReindexStmt *node) { - WRITE_LIST_FIELD(search_col_list, search_col_list, search_col_list); - WRITE_BOOL_FIELD(search_breadth_first, search_breadth_first, search_breadth_first); - WRITE_STRING_FIELD(search_seq_column, search_seq_column, search_seq_column); - WRITE_INT_FIELD(location, location, location); + WRITE_ENUM_FIELD(ReindexObjectType, kind, kind, kind); + WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + WRITE_STRING_FIELD(name, name, name); + WRITE_LIST_FIELD(params, params, params); } static void -_outCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) out, const CTECycleClause *node) +_outCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) out, const CreateConversionStmt *node) { - WRITE_LIST_FIELD(cycle_col_list, cycle_col_list, cycle_col_list); - WRITE_STRING_FIELD(cycle_mark_column, cycle_mark_column, cycle_mark_column); - WRITE_NODE_PTR_FIELD(cycle_mark_value, cycle_mark_value, cycle_mark_value); - WRITE_NODE_PTR_FIELD(cycle_mark_default, cycle_mark_default, cycle_mark_default); - WRITE_STRING_FIELD(cycle_path_column, cycle_path_column, cycle_path_column); - WRITE_INT_FIELD(location, location, location); - WRITE_UINT_FIELD(cycle_mark_type, cycle_mark_type, cycle_mark_type); - WRITE_INT_FIELD(cycle_mark_typmod, cycle_mark_typmod, cycle_mark_typmod); - WRITE_UINT_FIELD(cycle_mark_collation, cycle_mark_collation, cycle_mark_collation); - WRITE_UINT_FIELD(cycle_mark_neop, cycle_mark_neop, cycle_mark_neop); + WRITE_LIST_FIELD(conversion_name, conversion_name, conversion_name); + WRITE_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name); + WRITE_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name); + WRITE_LIST_FIELD(func_name, func_name, func_name); + WRITE_BOOL_FIELD(def, def, def); } static void -_outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out, const CommonTableExpr *node) +_outCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) out, const CreateCastStmt *node) { - WRITE_STRING_FIELD(ctename, ctename, ctename); - WRITE_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames); - WRITE_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized); - WRITE_NODE_PTR_FIELD(ctequery, ctequery, ctequery); - WRITE_SPECIFIC_NODE_PTR_FIELD(CTESearchClause, ctesearch_clause, search_clause, search_clause, search_clause); - WRITE_SPECIFIC_NODE_PTR_FIELD(CTECycleClause, ctecycle_clause, cycle_clause, cycle_clause, cycle_clause); - WRITE_INT_FIELD(location, location, location); - WRITE_BOOL_FIELD(cterecursive, cterecursive, cterecursive); - WRITE_INT_FIELD(cterefcount, cterefcount, cterefcount); - WRITE_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames); - WRITE_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes); - WRITE_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods); - WRITE_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype); + WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func); + WRITE_ENUM_FIELD(CoercionContext, context, context, context); + WRITE_BOOL_FIELD(inout, inout, inout); } static void -_outMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) out, const MergeWhenClause *node) +_outCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) out, const CreateTransformStmt *node) { - WRITE_BOOL_FIELD(matched, matched, matched); - WRITE_ENUM_FIELD(CmdType, command_type, commandType, commandType); - WRITE_ENUM_FIELD(OverridingKind, override, override, override); - WRITE_NODE_PTR_FIELD(condition, condition, condition); - WRITE_LIST_FIELD(target_list, targetList, targetList); - WRITE_LIST_FIELD(values, values, values); + WRITE_BOOL_FIELD(replace, replace, replace); + WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name); + WRITE_STRING_FIELD(lang, lang, lang); + WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql); + WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql); } static void -_outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out, const RoleSpec *node) +_outPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) out, const PrepareStmt *node) { - WRITE_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype); - WRITE_STRING_FIELD(rolename, rolename, rolename); - WRITE_INT_FIELD(location, location, location); + WRITE_STRING_FIELD(name, name, name); + WRITE_LIST_FIELD(argtypes, argtypes, argtypes); + WRITE_NODE_PTR_FIELD(query, query, query); } static void -_outTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) out, const TriggerTransition *node) +_outExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) out, const ExecuteStmt *node) { WRITE_STRING_FIELD(name, name, name); - WRITE_BOOL_FIELD(is_new, isNew, isNew); - WRITE_BOOL_FIELD(is_table, isTable, isTable); + WRITE_LIST_FIELD(params, params, params); } static void -_outPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) out, const PartitionElem *node) +_outDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) out, const DeallocateStmt *node) { WRITE_STRING_FIELD(name, name, name); - WRITE_NODE_PTR_FIELD(expr, expr, expr); - WRITE_LIST_FIELD(collation, collation, collation); - WRITE_LIST_FIELD(opclass, opclass, opclass); - WRITE_INT_FIELD(location, location, location); } static void -_outPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) out, const PartitionSpec *node) +_outDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) out, const DropOwnedStmt *node) { - WRITE_STRING_FIELD(strategy, strategy, strategy); - WRITE_LIST_FIELD(part_params, partParams, partParams); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(roles, roles, roles); + WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); } static void -_outPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) out, const PartitionBoundSpec *node) +_outReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) out, const ReassignOwnedStmt *node) { - WRITE_CHAR_FIELD(strategy, strategy, strategy); - WRITE_BOOL_FIELD(is_default, is_default, is_default); - WRITE_INT_FIELD(modulus, modulus, modulus); - WRITE_INT_FIELD(remainder, remainder, remainder); - WRITE_LIST_FIELD(listdatums, listdatums, listdatums); - WRITE_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums); - WRITE_LIST_FIELD(upperdatums, upperdatums, upperdatums); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(roles, roles, roles); + WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole); } static void -_outPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) out, const PartitionRangeDatum *node) +_outAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) out, const AlterTSDictionaryStmt *node) { - WRITE_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind); - WRITE_NODE_PTR_FIELD(value, value, value); - WRITE_INT_FIELD(location, location, location); + WRITE_LIST_FIELD(dictname, dictname, dictname); + WRITE_LIST_FIELD(options, options, options); } static void -_outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out, const PartitionCmd *node) +_outAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) out, const AlterTSConfigurationStmt *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name); - WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound); - WRITE_BOOL_FIELD(concurrent, concurrent, concurrent); + WRITE_ENUM_FIELD(AlterTSConfigType, kind, kind, kind); + WRITE_LIST_FIELD(cfgname, cfgname, cfgname); + WRITE_LIST_FIELD(tokentype, tokentype, tokentype); + WRITE_LIST_FIELD(dicts, dicts, dicts); + WRITE_BOOL_FIELD(override, override, override); + WRITE_BOOL_FIELD(replace, replace, replace); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); } static void -_outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out, const VacuumRelation *node) +_outPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) out, const PublicationTable *node) { WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_UINT_FIELD(oid, oid, oid); - WRITE_LIST_FIELD(va_cols, va_cols, va_cols); + WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + WRITE_LIST_FIELD(columns, columns, columns); } static void @@ -2540,25 +2650,48 @@ _outPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) out, con } static void -_outPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) out, const PublicationTable *node) +_outCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) out, const CreatePublicationStmt *node) { - WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - WRITE_LIST_FIELD(columns, columns, columns); + WRITE_STRING_FIELD(pubname, pubname, pubname); + WRITE_LIST_FIELD(options, options, options); + WRITE_LIST_FIELD(pubobjects, pubobjects, pubobjects); + WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables); } static void -_outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out, const InlineCodeBlock *node) +_outAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) out, const AlterPublicationStmt *node) { - WRITE_STRING_FIELD(source_text, source_text, source_text); - WRITE_UINT_FIELD(lang_oid, langOid, langOid); - WRITE_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted); - WRITE_BOOL_FIELD(atomic, atomic, atomic); + WRITE_STRING_FIELD(pubname, pubname, pubname); + WRITE_LIST_FIELD(options, options, options); + WRITE_LIST_FIELD(pubobjects, pubobjects, pubobjects); + WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables); + WRITE_ENUM_FIELD(AlterPublicationAction, action, action, action); } static void -_outCallContext(OUT_TYPE(CallContext, CallContext) out, const CallContext *node) +_outCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) out, const CreateSubscriptionStmt *node) { - WRITE_BOOL_FIELD(atomic, atomic, atomic); + WRITE_STRING_FIELD(subname, subname, subname); + WRITE_STRING_FIELD(conninfo, conninfo, conninfo); + WRITE_LIST_FIELD(publication, publication, publication); + WRITE_LIST_FIELD(options, options, options); +} + +static void +_outAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) out, const AlterSubscriptionStmt *node) +{ + WRITE_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind); + WRITE_STRING_FIELD(subname, subname, subname); + WRITE_STRING_FIELD(conninfo, conninfo, conninfo); + WRITE_LIST_FIELD(publication, publication, publication); + WRITE_LIST_FIELD(options, options, options); +} + +static void +_outDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) out, const DropSubscriptionStmt *node) +{ + WRITE_STRING_FIELD(subname, subname, subname); + WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); } diff --git a/parser/include/pg_query_readfuncs_conds.c b/parser/include/pg_query_readfuncs_conds.c index a026b68e..dade57cc 100644 --- a/parser/include/pg_query_readfuncs_conds.c +++ b/parser/include/pg_query_readfuncs_conds.c @@ -3,6 +3,7 @@ READ_COND(Alias, Alias, alias, ALIAS, Alias, alias); READ_COND(RangeVar, RangeVar, range_var, RANGE_VAR, RangeVar, range_var); READ_COND(TableFunc, TableFunc, table_func, TABLE_FUNC, TableFunc, table_func); + READ_COND(IntoClause, IntoClause, into_clause, INTO_CLAUSE, IntoClause, into_clause); READ_COND(Var, Var, var, VAR, Var, var); READ_COND(Param, Param, param, PARAM, Param, param); READ_COND(Aggref, Aggref, aggref, AGGREF, Aggref, aggref); @@ -36,6 +37,11 @@ READ_COND(MinMaxExpr, MinMaxExpr, min_max_expr, MIN_MAX_EXPR, MinMaxExpr, min_max_expr); READ_COND(SQLValueFunction, SQLValueFunction, sqlvalue_function, SQLVALUE_FUNCTION, SQLValueFunction, sqlvalue_function); READ_COND(XmlExpr, XmlExpr, xml_expr, XML_EXPR, XmlExpr, xml_expr); + READ_COND(JsonFormat, JsonFormat, json_format, JSON_FORMAT, JsonFormat, json_format); + READ_COND(JsonReturning, JsonReturning, json_returning, JSON_RETURNING, JsonReturning, json_returning); + READ_COND(JsonValueExpr, JsonValueExpr, json_value_expr, JSON_VALUE_EXPR, JsonValueExpr, json_value_expr); + READ_COND(JsonConstructorExpr, JsonConstructorExpr, json_constructor_expr, JSON_CONSTRUCTOR_EXPR, JsonConstructorExpr, json_constructor_expr); + READ_COND(JsonIsPredicate, JsonIsPredicate, json_is_predicate, JSON_IS_PREDICATE, JsonIsPredicate, json_is_predicate); READ_COND(NullTest, NullTest, null_test, NULL_TEST, NullTest, null_test); READ_COND(BooleanTest, BooleanTest, boolean_test, BOOLEAN_TEST, BooleanTest, boolean_test); READ_COND(CoerceToDomain, CoerceToDomain, coerce_to_domain, COERCE_TO_DOMAIN, CoerceToDomain, coerce_to_domain); @@ -49,183 +55,191 @@ READ_COND(JoinExpr, JoinExpr, join_expr, JOIN_EXPR, JoinExpr, join_expr); READ_COND(FromExpr, FromExpr, from_expr, FROM_EXPR, FromExpr, from_expr); READ_COND(OnConflictExpr, OnConflictExpr, on_conflict_expr, ON_CONFLICT_EXPR, OnConflictExpr, on_conflict_expr); - READ_COND(IntoClause, IntoClause, into_clause, INTO_CLAUSE, IntoClause, into_clause); + READ_COND(Query, Query, query, QUERY, Query, query); + READ_COND(TypeName, TypeName, type_name, TYPE_NAME, TypeName, type_name); + READ_COND(ColumnRef, ColumnRef, column_ref, COLUMN_REF, ColumnRef, column_ref); + READ_COND(ParamRef, ParamRef, param_ref, PARAM_REF, ParamRef, param_ref); + READ_COND(A_Expr, AExpr, a__expr, A_EXPR, A_Expr, a_expr); + READ_COND(TypeCast, TypeCast, type_cast, TYPE_CAST, TypeCast, type_cast); + READ_COND(CollateClause, CollateClause, collate_clause, COLLATE_CLAUSE, CollateClause, collate_clause); + READ_COND(RoleSpec, RoleSpec, role_spec, ROLE_SPEC, RoleSpec, role_spec); + READ_COND(FuncCall, FuncCall, func_call, FUNC_CALL, FuncCall, func_call); + READ_COND(A_Star, AStar, a__star, A_STAR, A_Star, a_star); + READ_COND(A_Indices, AIndices, a__indices, A_INDICES, A_Indices, a_indices); + READ_COND(A_Indirection, AIndirection, a__indirection, A_INDIRECTION, A_Indirection, a_indirection); + READ_COND(A_ArrayExpr, AArrayExpr, a__array_expr, A_ARRAY_EXPR, A_ArrayExpr, a_array_expr); + READ_COND(ResTarget, ResTarget, res_target, RES_TARGET, ResTarget, res_target); + READ_COND(MultiAssignRef, MultiAssignRef, multi_assign_ref, MULTI_ASSIGN_REF, MultiAssignRef, multi_assign_ref); + READ_COND(SortBy, SortBy, sort_by, SORT_BY, SortBy, sort_by); + READ_COND(WindowDef, WindowDef, window_def, WINDOW_DEF, WindowDef, window_def); + READ_COND(RangeSubselect, RangeSubselect, range_subselect, RANGE_SUBSELECT, RangeSubselect, range_subselect); + READ_COND(RangeFunction, RangeFunction, range_function, RANGE_FUNCTION, RangeFunction, range_function); + READ_COND(RangeTableFunc, RangeTableFunc, range_table_func, RANGE_TABLE_FUNC, RangeTableFunc, range_table_func); + READ_COND(RangeTableFuncCol, RangeTableFuncCol, range_table_func_col, RANGE_TABLE_FUNC_COL, RangeTableFuncCol, range_table_func_col); + READ_COND(RangeTableSample, RangeTableSample, range_table_sample, RANGE_TABLE_SAMPLE, RangeTableSample, range_table_sample); + READ_COND(ColumnDef, ColumnDef, column_def, COLUMN_DEF, ColumnDef, column_def); + READ_COND(TableLikeClause, TableLikeClause, table_like_clause, TABLE_LIKE_CLAUSE, TableLikeClause, table_like_clause); + READ_COND(IndexElem, IndexElem, index_elem, INDEX_ELEM, IndexElem, index_elem); + READ_COND(DefElem, DefElem, def_elem, DEF_ELEM, DefElem, def_elem); + READ_COND(LockingClause, LockingClause, locking_clause, LOCKING_CLAUSE, LockingClause, locking_clause); + READ_COND(XmlSerialize, XmlSerialize, xml_serialize, XML_SERIALIZE, XmlSerialize, xml_serialize); + READ_COND(PartitionElem, PartitionElem, partition_elem, PARTITION_ELEM, PartitionElem, partition_elem); + READ_COND(PartitionSpec, PartitionSpec, partition_spec, PARTITION_SPEC, PartitionSpec, partition_spec); + READ_COND(PartitionBoundSpec, PartitionBoundSpec, partition_bound_spec, PARTITION_BOUND_SPEC, PartitionBoundSpec, partition_bound_spec); + READ_COND(PartitionRangeDatum, PartitionRangeDatum, partition_range_datum, PARTITION_RANGE_DATUM, PartitionRangeDatum, partition_range_datum); + READ_COND(PartitionCmd, PartitionCmd, partition_cmd, PARTITION_CMD, PartitionCmd, partition_cmd); + READ_COND(RangeTblEntry, RangeTblEntry, range_tbl_entry, RANGE_TBL_ENTRY, RangeTblEntry, range_tbl_entry); + READ_COND(RTEPermissionInfo, RTEPermissionInfo, rtepermission_info, RTEPERMISSION_INFO, RTEPermissionInfo, rtepermission_info); + READ_COND(RangeTblFunction, RangeTblFunction, range_tbl_function, RANGE_TBL_FUNCTION, RangeTblFunction, range_tbl_function); + READ_COND(TableSampleClause, TableSampleClause, table_sample_clause, TABLE_SAMPLE_CLAUSE, TableSampleClause, table_sample_clause); + READ_COND(WithCheckOption, WithCheckOption, with_check_option, WITH_CHECK_OPTION, WithCheckOption, with_check_option); + READ_COND(SortGroupClause, SortGroupClause, sort_group_clause, SORT_GROUP_CLAUSE, SortGroupClause, sort_group_clause); + READ_COND(GroupingSet, GroupingSet, grouping_set, GROUPING_SET, GroupingSet, grouping_set); + READ_COND(WindowClause, WindowClause, window_clause, WINDOW_CLAUSE, WindowClause, window_clause); + READ_COND(RowMarkClause, RowMarkClause, row_mark_clause, ROW_MARK_CLAUSE, RowMarkClause, row_mark_clause); + READ_COND(WithClause, WithClause, with_clause, WITH_CLAUSE, WithClause, with_clause); + READ_COND(InferClause, InferClause, infer_clause, INFER_CLAUSE, InferClause, infer_clause); + READ_COND(OnConflictClause, OnConflictClause, on_conflict_clause, ON_CONFLICT_CLAUSE, OnConflictClause, on_conflict_clause); + READ_COND(CTESearchClause, CTESearchClause, ctesearch_clause, CTESEARCH_CLAUSE, CTESearchClause, ctesearch_clause); + READ_COND(CTECycleClause, CTECycleClause, ctecycle_clause, CTECYCLE_CLAUSE, CTECycleClause, ctecycle_clause); + READ_COND(CommonTableExpr, CommonTableExpr, common_table_expr, COMMON_TABLE_EXPR, CommonTableExpr, common_table_expr); + READ_COND(MergeWhenClause, MergeWhenClause, merge_when_clause, MERGE_WHEN_CLAUSE, MergeWhenClause, merge_when_clause); READ_COND(MergeAction, MergeAction, merge_action, MERGE_ACTION, MergeAction, merge_action); + READ_COND(TriggerTransition, TriggerTransition, trigger_transition, TRIGGER_TRANSITION, TriggerTransition, trigger_transition); + READ_COND(JsonOutput, JsonOutput, json_output, JSON_OUTPUT, JsonOutput, json_output); + READ_COND(JsonKeyValue, JsonKeyValue, json_key_value, JSON_KEY_VALUE, JsonKeyValue, json_key_value); + READ_COND(JsonObjectConstructor, JsonObjectConstructor, json_object_constructor, JSON_OBJECT_CONSTRUCTOR, JsonObjectConstructor, json_object_constructor); + READ_COND(JsonArrayConstructor, JsonArrayConstructor, json_array_constructor, JSON_ARRAY_CONSTRUCTOR, JsonArrayConstructor, json_array_constructor); + READ_COND(JsonArrayQueryConstructor, JsonArrayQueryConstructor, json_array_query_constructor, JSON_ARRAY_QUERY_CONSTRUCTOR, JsonArrayQueryConstructor, json_array_query_constructor); + READ_COND(JsonAggConstructor, JsonAggConstructor, json_agg_constructor, JSON_AGG_CONSTRUCTOR, JsonAggConstructor, json_agg_constructor); + READ_COND(JsonObjectAgg, JsonObjectAgg, json_object_agg, JSON_OBJECT_AGG, JsonObjectAgg, json_object_agg); + READ_COND(JsonArrayAgg, JsonArrayAgg, json_array_agg, JSON_ARRAY_AGG, JsonArrayAgg, json_array_agg); READ_COND(RawStmt, RawStmt, raw_stmt, RAW_STMT, RawStmt, raw_stmt); - READ_COND(Query, Query, query, QUERY, Query, query); READ_COND(InsertStmt, InsertStmt, insert_stmt, INSERT_STMT, InsertStmt, insert_stmt); READ_COND(DeleteStmt, DeleteStmt, delete_stmt, DELETE_STMT, DeleteStmt, delete_stmt); READ_COND(UpdateStmt, UpdateStmt, update_stmt, UPDATE_STMT, UpdateStmt, update_stmt); READ_COND(MergeStmt, MergeStmt, merge_stmt, MERGE_STMT, MergeStmt, merge_stmt); READ_COND(SelectStmt, SelectStmt, select_stmt, SELECT_STMT, SelectStmt, select_stmt); + READ_COND(SetOperationStmt, SetOperationStmt, set_operation_stmt, SET_OPERATION_STMT, SetOperationStmt, set_operation_stmt); READ_COND(ReturnStmt, ReturnStmt, return_stmt, RETURN_STMT, ReturnStmt, return_stmt); READ_COND(PLAssignStmt, PLAssignStmt, plassign_stmt, PLASSIGN_STMT, PLAssignStmt, plassign_stmt); + READ_COND(CreateSchemaStmt, CreateSchemaStmt, create_schema_stmt, CREATE_SCHEMA_STMT, CreateSchemaStmt, create_schema_stmt); READ_COND(AlterTableStmt, AlterTableStmt, alter_table_stmt, ALTER_TABLE_STMT, AlterTableStmt, alter_table_stmt); + READ_COND(ReplicaIdentityStmt, ReplicaIdentityStmt, replica_identity_stmt, REPLICA_IDENTITY_STMT, ReplicaIdentityStmt, replica_identity_stmt); READ_COND(AlterTableCmd, AlterTableCmd, alter_table_cmd, ALTER_TABLE_CMD, AlterTableCmd, alter_table_cmd); + READ_COND(AlterCollationStmt, AlterCollationStmt, alter_collation_stmt, ALTER_COLLATION_STMT, AlterCollationStmt, alter_collation_stmt); READ_COND(AlterDomainStmt, AlterDomainStmt, alter_domain_stmt, ALTER_DOMAIN_STMT, AlterDomainStmt, alter_domain_stmt); - READ_COND(SetOperationStmt, SetOperationStmt, set_operation_stmt, SET_OPERATION_STMT, SetOperationStmt, set_operation_stmt); READ_COND(GrantStmt, GrantStmt, grant_stmt, GRANT_STMT, GrantStmt, grant_stmt); + READ_COND(ObjectWithArgs, ObjectWithArgs, object_with_args, OBJECT_WITH_ARGS, ObjectWithArgs, object_with_args); + READ_COND(AccessPriv, AccessPriv, access_priv, ACCESS_PRIV, AccessPriv, access_priv); READ_COND(GrantRoleStmt, GrantRoleStmt, grant_role_stmt, GRANT_ROLE_STMT, GrantRoleStmt, grant_role_stmt); READ_COND(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt, alter_default_privileges_stmt, ALTER_DEFAULT_PRIVILEGES_STMT, AlterDefaultPrivilegesStmt, alter_default_privileges_stmt); - READ_COND(ClosePortalStmt, ClosePortalStmt, close_portal_stmt, CLOSE_PORTAL_STMT, ClosePortalStmt, close_portal_stmt); - READ_COND(ClusterStmt, ClusterStmt, cluster_stmt, CLUSTER_STMT, ClusterStmt, cluster_stmt); READ_COND(CopyStmt, CopyStmt, copy_stmt, COPY_STMT, CopyStmt, copy_stmt); + READ_COND(VariableSetStmt, VariableSetStmt, variable_set_stmt, VARIABLE_SET_STMT, VariableSetStmt, variable_set_stmt); + READ_COND(VariableShowStmt, VariableShowStmt, variable_show_stmt, VARIABLE_SHOW_STMT, VariableShowStmt, variable_show_stmt); READ_COND(CreateStmt, CreateStmt, create_stmt, CREATE_STMT, CreateStmt, create_stmt); + READ_COND(Constraint, Constraint, constraint, CONSTRAINT, Constraint, constraint); + READ_COND(CreateTableSpaceStmt, CreateTableSpaceStmt, create_table_space_stmt, CREATE_TABLE_SPACE_STMT, CreateTableSpaceStmt, create_table_space_stmt); + READ_COND(DropTableSpaceStmt, DropTableSpaceStmt, drop_table_space_stmt, DROP_TABLE_SPACE_STMT, DropTableSpaceStmt, drop_table_space_stmt); + READ_COND(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt, alter_table_space_options_stmt, ALTER_TABLE_SPACE_OPTIONS_STMT, AlterTableSpaceOptionsStmt, alter_table_space_options_stmt); + READ_COND(AlterTableMoveAllStmt, AlterTableMoveAllStmt, alter_table_move_all_stmt, ALTER_TABLE_MOVE_ALL_STMT, AlterTableMoveAllStmt, alter_table_move_all_stmt); + READ_COND(CreateExtensionStmt, CreateExtensionStmt, create_extension_stmt, CREATE_EXTENSION_STMT, CreateExtensionStmt, create_extension_stmt); + READ_COND(AlterExtensionStmt, AlterExtensionStmt, alter_extension_stmt, ALTER_EXTENSION_STMT, AlterExtensionStmt, alter_extension_stmt); + READ_COND(AlterExtensionContentsStmt, AlterExtensionContentsStmt, alter_extension_contents_stmt, ALTER_EXTENSION_CONTENTS_STMT, AlterExtensionContentsStmt, alter_extension_contents_stmt); + READ_COND(CreateFdwStmt, CreateFdwStmt, create_fdw_stmt, CREATE_FDW_STMT, CreateFdwStmt, create_fdw_stmt); + READ_COND(AlterFdwStmt, AlterFdwStmt, alter_fdw_stmt, ALTER_FDW_STMT, AlterFdwStmt, alter_fdw_stmt); + READ_COND(CreateForeignServerStmt, CreateForeignServerStmt, create_foreign_server_stmt, CREATE_FOREIGN_SERVER_STMT, CreateForeignServerStmt, create_foreign_server_stmt); + READ_COND(AlterForeignServerStmt, AlterForeignServerStmt, alter_foreign_server_stmt, ALTER_FOREIGN_SERVER_STMT, AlterForeignServerStmt, alter_foreign_server_stmt); + READ_COND(CreateForeignTableStmt, CreateForeignTableStmt, create_foreign_table_stmt, CREATE_FOREIGN_TABLE_STMT, CreateForeignTableStmt, create_foreign_table_stmt); + READ_COND(CreateUserMappingStmt, CreateUserMappingStmt, create_user_mapping_stmt, CREATE_USER_MAPPING_STMT, CreateUserMappingStmt, create_user_mapping_stmt); + READ_COND(AlterUserMappingStmt, AlterUserMappingStmt, alter_user_mapping_stmt, ALTER_USER_MAPPING_STMT, AlterUserMappingStmt, alter_user_mapping_stmt); + READ_COND(DropUserMappingStmt, DropUserMappingStmt, drop_user_mapping_stmt, DROP_USER_MAPPING_STMT, DropUserMappingStmt, drop_user_mapping_stmt); + READ_COND(ImportForeignSchemaStmt, ImportForeignSchemaStmt, import_foreign_schema_stmt, IMPORT_FOREIGN_SCHEMA_STMT, ImportForeignSchemaStmt, import_foreign_schema_stmt); + READ_COND(CreatePolicyStmt, CreatePolicyStmt, create_policy_stmt, CREATE_POLICY_STMT, CreatePolicyStmt, create_policy_stmt); + READ_COND(AlterPolicyStmt, AlterPolicyStmt, alter_policy_stmt, ALTER_POLICY_STMT, AlterPolicyStmt, alter_policy_stmt); + READ_COND(CreateAmStmt, CreateAmStmt, create_am_stmt, CREATE_AM_STMT, CreateAmStmt, create_am_stmt); + READ_COND(CreateTrigStmt, CreateTrigStmt, create_trig_stmt, CREATE_TRIG_STMT, CreateTrigStmt, create_trig_stmt); + READ_COND(CreateEventTrigStmt, CreateEventTrigStmt, create_event_trig_stmt, CREATE_EVENT_TRIG_STMT, CreateEventTrigStmt, create_event_trig_stmt); + READ_COND(AlterEventTrigStmt, AlterEventTrigStmt, alter_event_trig_stmt, ALTER_EVENT_TRIG_STMT, AlterEventTrigStmt, alter_event_trig_stmt); + READ_COND(CreatePLangStmt, CreatePLangStmt, create_plang_stmt, CREATE_PLANG_STMT, CreatePLangStmt, create_plang_stmt); + READ_COND(CreateRoleStmt, CreateRoleStmt, create_role_stmt, CREATE_ROLE_STMT, CreateRoleStmt, create_role_stmt); + READ_COND(AlterRoleStmt, AlterRoleStmt, alter_role_stmt, ALTER_ROLE_STMT, AlterRoleStmt, alter_role_stmt); + READ_COND(AlterRoleSetStmt, AlterRoleSetStmt, alter_role_set_stmt, ALTER_ROLE_SET_STMT, AlterRoleSetStmt, alter_role_set_stmt); + READ_COND(DropRoleStmt, DropRoleStmt, drop_role_stmt, DROP_ROLE_STMT, DropRoleStmt, drop_role_stmt); + READ_COND(CreateSeqStmt, CreateSeqStmt, create_seq_stmt, CREATE_SEQ_STMT, CreateSeqStmt, create_seq_stmt); + READ_COND(AlterSeqStmt, AlterSeqStmt, alter_seq_stmt, ALTER_SEQ_STMT, AlterSeqStmt, alter_seq_stmt); READ_COND(DefineStmt, DefineStmt, define_stmt, DEFINE_STMT, DefineStmt, define_stmt); + READ_COND(CreateDomainStmt, CreateDomainStmt, create_domain_stmt, CREATE_DOMAIN_STMT, CreateDomainStmt, create_domain_stmt); + READ_COND(CreateOpClassStmt, CreateOpClassStmt, create_op_class_stmt, CREATE_OP_CLASS_STMT, CreateOpClassStmt, create_op_class_stmt); + READ_COND(CreateOpClassItem, CreateOpClassItem, create_op_class_item, CREATE_OP_CLASS_ITEM, CreateOpClassItem, create_op_class_item); + READ_COND(CreateOpFamilyStmt, CreateOpFamilyStmt, create_op_family_stmt, CREATE_OP_FAMILY_STMT, CreateOpFamilyStmt, create_op_family_stmt); + READ_COND(AlterOpFamilyStmt, AlterOpFamilyStmt, alter_op_family_stmt, ALTER_OP_FAMILY_STMT, AlterOpFamilyStmt, alter_op_family_stmt); READ_COND(DropStmt, DropStmt, drop_stmt, DROP_STMT, DropStmt, drop_stmt); READ_COND(TruncateStmt, TruncateStmt, truncate_stmt, TRUNCATE_STMT, TruncateStmt, truncate_stmt); READ_COND(CommentStmt, CommentStmt, comment_stmt, COMMENT_STMT, CommentStmt, comment_stmt); + READ_COND(SecLabelStmt, SecLabelStmt, sec_label_stmt, SEC_LABEL_STMT, SecLabelStmt, sec_label_stmt); + READ_COND(DeclareCursorStmt, DeclareCursorStmt, declare_cursor_stmt, DECLARE_CURSOR_STMT, DeclareCursorStmt, declare_cursor_stmt); + READ_COND(ClosePortalStmt, ClosePortalStmt, close_portal_stmt, CLOSE_PORTAL_STMT, ClosePortalStmt, close_portal_stmt); READ_COND(FetchStmt, FetchStmt, fetch_stmt, FETCH_STMT, FetchStmt, fetch_stmt); READ_COND(IndexStmt, IndexStmt, index_stmt, INDEX_STMT, IndexStmt, index_stmt); + READ_COND(CreateStatsStmt, CreateStatsStmt, create_stats_stmt, CREATE_STATS_STMT, CreateStatsStmt, create_stats_stmt); + READ_COND(StatsElem, StatsElem, stats_elem, STATS_ELEM, StatsElem, stats_elem); + READ_COND(AlterStatsStmt, AlterStatsStmt, alter_stats_stmt, ALTER_STATS_STMT, AlterStatsStmt, alter_stats_stmt); READ_COND(CreateFunctionStmt, CreateFunctionStmt, create_function_stmt, CREATE_FUNCTION_STMT, CreateFunctionStmt, create_function_stmt); + READ_COND(FunctionParameter, FunctionParameter, function_parameter, FUNCTION_PARAMETER, FunctionParameter, function_parameter); READ_COND(AlterFunctionStmt, AlterFunctionStmt, alter_function_stmt, ALTER_FUNCTION_STMT, AlterFunctionStmt, alter_function_stmt); READ_COND(DoStmt, DoStmt, do_stmt, DO_STMT, DoStmt, do_stmt); + READ_COND(InlineCodeBlock, InlineCodeBlock, inline_code_block, INLINE_CODE_BLOCK, InlineCodeBlock, inline_code_block); + READ_COND(CallStmt, CallStmt, call_stmt, CALL_STMT, CallStmt, call_stmt); + READ_COND(CallContext, CallContext, call_context, CALL_CONTEXT, CallContext, call_context); READ_COND(RenameStmt, RenameStmt, rename_stmt, RENAME_STMT, RenameStmt, rename_stmt); + READ_COND(AlterObjectDependsStmt, AlterObjectDependsStmt, alter_object_depends_stmt, ALTER_OBJECT_DEPENDS_STMT, AlterObjectDependsStmt, alter_object_depends_stmt); + READ_COND(AlterObjectSchemaStmt, AlterObjectSchemaStmt, alter_object_schema_stmt, ALTER_OBJECT_SCHEMA_STMT, AlterObjectSchemaStmt, alter_object_schema_stmt); + READ_COND(AlterOwnerStmt, AlterOwnerStmt, alter_owner_stmt, ALTER_OWNER_STMT, AlterOwnerStmt, alter_owner_stmt); + READ_COND(AlterOperatorStmt, AlterOperatorStmt, alter_operator_stmt, ALTER_OPERATOR_STMT, AlterOperatorStmt, alter_operator_stmt); + READ_COND(AlterTypeStmt, AlterTypeStmt, alter_type_stmt, ALTER_TYPE_STMT, AlterTypeStmt, alter_type_stmt); READ_COND(RuleStmt, RuleStmt, rule_stmt, RULE_STMT, RuleStmt, rule_stmt); READ_COND(NotifyStmt, NotifyStmt, notify_stmt, NOTIFY_STMT, NotifyStmt, notify_stmt); READ_COND(ListenStmt, ListenStmt, listen_stmt, LISTEN_STMT, ListenStmt, listen_stmt); READ_COND(UnlistenStmt, UnlistenStmt, unlisten_stmt, UNLISTEN_STMT, UnlistenStmt, unlisten_stmt); READ_COND(TransactionStmt, TransactionStmt, transaction_stmt, TRANSACTION_STMT, TransactionStmt, transaction_stmt); + READ_COND(CompositeTypeStmt, CompositeTypeStmt, composite_type_stmt, COMPOSITE_TYPE_STMT, CompositeTypeStmt, composite_type_stmt); + READ_COND(CreateEnumStmt, CreateEnumStmt, create_enum_stmt, CREATE_ENUM_STMT, CreateEnumStmt, create_enum_stmt); + READ_COND(CreateRangeStmt, CreateRangeStmt, create_range_stmt, CREATE_RANGE_STMT, CreateRangeStmt, create_range_stmt); + READ_COND(AlterEnumStmt, AlterEnumStmt, alter_enum_stmt, ALTER_ENUM_STMT, AlterEnumStmt, alter_enum_stmt); READ_COND(ViewStmt, ViewStmt, view_stmt, VIEW_STMT, ViewStmt, view_stmt); READ_COND(LoadStmt, LoadStmt, load_stmt, LOAD_STMT, LoadStmt, load_stmt); - READ_COND(CreateDomainStmt, CreateDomainStmt, create_domain_stmt, CREATE_DOMAIN_STMT, CreateDomainStmt, create_domain_stmt); READ_COND(CreatedbStmt, CreatedbStmt, createdb_stmt, CREATEDB_STMT, CreatedbStmt, createdb_stmt); + READ_COND(AlterDatabaseStmt, AlterDatabaseStmt, alter_database_stmt, ALTER_DATABASE_STMT, AlterDatabaseStmt, alter_database_stmt); + READ_COND(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt, ALTER_DATABASE_REFRESH_COLL_STMT, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt); + READ_COND(AlterDatabaseSetStmt, AlterDatabaseSetStmt, alter_database_set_stmt, ALTER_DATABASE_SET_STMT, AlterDatabaseSetStmt, alter_database_set_stmt); READ_COND(DropdbStmt, DropdbStmt, dropdb_stmt, DROPDB_STMT, DropdbStmt, dropdb_stmt); + READ_COND(AlterSystemStmt, AlterSystemStmt, alter_system_stmt, ALTER_SYSTEM_STMT, AlterSystemStmt, alter_system_stmt); + READ_COND(ClusterStmt, ClusterStmt, cluster_stmt, CLUSTER_STMT, ClusterStmt, cluster_stmt); READ_COND(VacuumStmt, VacuumStmt, vacuum_stmt, VACUUM_STMT, VacuumStmt, vacuum_stmt); + READ_COND(VacuumRelation, VacuumRelation, vacuum_relation, VACUUM_RELATION, VacuumRelation, vacuum_relation); READ_COND(ExplainStmt, ExplainStmt, explain_stmt, EXPLAIN_STMT, ExplainStmt, explain_stmt); READ_COND(CreateTableAsStmt, CreateTableAsStmt, create_table_as_stmt, CREATE_TABLE_AS_STMT, CreateTableAsStmt, create_table_as_stmt); - READ_COND(CreateSeqStmt, CreateSeqStmt, create_seq_stmt, CREATE_SEQ_STMT, CreateSeqStmt, create_seq_stmt); - READ_COND(AlterSeqStmt, AlterSeqStmt, alter_seq_stmt, ALTER_SEQ_STMT, AlterSeqStmt, alter_seq_stmt); - READ_COND(VariableSetStmt, VariableSetStmt, variable_set_stmt, VARIABLE_SET_STMT, VariableSetStmt, variable_set_stmt); - READ_COND(VariableShowStmt, VariableShowStmt, variable_show_stmt, VARIABLE_SHOW_STMT, VariableShowStmt, variable_show_stmt); + READ_COND(RefreshMatViewStmt, RefreshMatViewStmt, refresh_mat_view_stmt, REFRESH_MAT_VIEW_STMT, RefreshMatViewStmt, refresh_mat_view_stmt); + READ_COND(CheckPointStmt, CheckPointStmt, check_point_stmt, CHECK_POINT_STMT, CheckPointStmt, check_point_stmt); READ_COND(DiscardStmt, DiscardStmt, discard_stmt, DISCARD_STMT, DiscardStmt, discard_stmt); - READ_COND(CreateTrigStmt, CreateTrigStmt, create_trig_stmt, CREATE_TRIG_STMT, CreateTrigStmt, create_trig_stmt); - READ_COND(CreatePLangStmt, CreatePLangStmt, create_plang_stmt, CREATE_PLANG_STMT, CreatePLangStmt, create_plang_stmt); - READ_COND(CreateRoleStmt, CreateRoleStmt, create_role_stmt, CREATE_ROLE_STMT, CreateRoleStmt, create_role_stmt); - READ_COND(AlterRoleStmt, AlterRoleStmt, alter_role_stmt, ALTER_ROLE_STMT, AlterRoleStmt, alter_role_stmt); - READ_COND(DropRoleStmt, DropRoleStmt, drop_role_stmt, DROP_ROLE_STMT, DropRoleStmt, drop_role_stmt); READ_COND(LockStmt, LockStmt, lock_stmt, LOCK_STMT, LockStmt, lock_stmt); READ_COND(ConstraintsSetStmt, ConstraintsSetStmt, constraints_set_stmt, CONSTRAINTS_SET_STMT, ConstraintsSetStmt, constraints_set_stmt); READ_COND(ReindexStmt, ReindexStmt, reindex_stmt, REINDEX_STMT, ReindexStmt, reindex_stmt); - READ_COND(CheckPointStmt, CheckPointStmt, check_point_stmt, CHECK_POINT_STMT, CheckPointStmt, check_point_stmt); - READ_COND(CreateSchemaStmt, CreateSchemaStmt, create_schema_stmt, CREATE_SCHEMA_STMT, CreateSchemaStmt, create_schema_stmt); - READ_COND(AlterDatabaseStmt, AlterDatabaseStmt, alter_database_stmt, ALTER_DATABASE_STMT, AlterDatabaseStmt, alter_database_stmt); - READ_COND(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt, ALTER_DATABASE_REFRESH_COLL_STMT, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt); - READ_COND(AlterDatabaseSetStmt, AlterDatabaseSetStmt, alter_database_set_stmt, ALTER_DATABASE_SET_STMT, AlterDatabaseSetStmt, alter_database_set_stmt); - READ_COND(AlterRoleSetStmt, AlterRoleSetStmt, alter_role_set_stmt, ALTER_ROLE_SET_STMT, AlterRoleSetStmt, alter_role_set_stmt); READ_COND(CreateConversionStmt, CreateConversionStmt, create_conversion_stmt, CREATE_CONVERSION_STMT, CreateConversionStmt, create_conversion_stmt); READ_COND(CreateCastStmt, CreateCastStmt, create_cast_stmt, CREATE_CAST_STMT, CreateCastStmt, create_cast_stmt); - READ_COND(CreateOpClassStmt, CreateOpClassStmt, create_op_class_stmt, CREATE_OP_CLASS_STMT, CreateOpClassStmt, create_op_class_stmt); - READ_COND(CreateOpFamilyStmt, CreateOpFamilyStmt, create_op_family_stmt, CREATE_OP_FAMILY_STMT, CreateOpFamilyStmt, create_op_family_stmt); - READ_COND(AlterOpFamilyStmt, AlterOpFamilyStmt, alter_op_family_stmt, ALTER_OP_FAMILY_STMT, AlterOpFamilyStmt, alter_op_family_stmt); + READ_COND(CreateTransformStmt, CreateTransformStmt, create_transform_stmt, CREATE_TRANSFORM_STMT, CreateTransformStmt, create_transform_stmt); READ_COND(PrepareStmt, PrepareStmt, prepare_stmt, PREPARE_STMT, PrepareStmt, prepare_stmt); READ_COND(ExecuteStmt, ExecuteStmt, execute_stmt, EXECUTE_STMT, ExecuteStmt, execute_stmt); READ_COND(DeallocateStmt, DeallocateStmt, deallocate_stmt, DEALLOCATE_STMT, DeallocateStmt, deallocate_stmt); - READ_COND(DeclareCursorStmt, DeclareCursorStmt, declare_cursor_stmt, DECLARE_CURSOR_STMT, DeclareCursorStmt, declare_cursor_stmt); - READ_COND(CreateTableSpaceStmt, CreateTableSpaceStmt, create_table_space_stmt, CREATE_TABLE_SPACE_STMT, CreateTableSpaceStmt, create_table_space_stmt); - READ_COND(DropTableSpaceStmt, DropTableSpaceStmt, drop_table_space_stmt, DROP_TABLE_SPACE_STMT, DropTableSpaceStmt, drop_table_space_stmt); - READ_COND(AlterObjectDependsStmt, AlterObjectDependsStmt, alter_object_depends_stmt, ALTER_OBJECT_DEPENDS_STMT, AlterObjectDependsStmt, alter_object_depends_stmt); - READ_COND(AlterObjectSchemaStmt, AlterObjectSchemaStmt, alter_object_schema_stmt, ALTER_OBJECT_SCHEMA_STMT, AlterObjectSchemaStmt, alter_object_schema_stmt); - READ_COND(AlterOwnerStmt, AlterOwnerStmt, alter_owner_stmt, ALTER_OWNER_STMT, AlterOwnerStmt, alter_owner_stmt); - READ_COND(AlterOperatorStmt, AlterOperatorStmt, alter_operator_stmt, ALTER_OPERATOR_STMT, AlterOperatorStmt, alter_operator_stmt); - READ_COND(AlterTypeStmt, AlterTypeStmt, alter_type_stmt, ALTER_TYPE_STMT, AlterTypeStmt, alter_type_stmt); READ_COND(DropOwnedStmt, DropOwnedStmt, drop_owned_stmt, DROP_OWNED_STMT, DropOwnedStmt, drop_owned_stmt); READ_COND(ReassignOwnedStmt, ReassignOwnedStmt, reassign_owned_stmt, REASSIGN_OWNED_STMT, ReassignOwnedStmt, reassign_owned_stmt); - READ_COND(CompositeTypeStmt, CompositeTypeStmt, composite_type_stmt, COMPOSITE_TYPE_STMT, CompositeTypeStmt, composite_type_stmt); - READ_COND(CreateEnumStmt, CreateEnumStmt, create_enum_stmt, CREATE_ENUM_STMT, CreateEnumStmt, create_enum_stmt); - READ_COND(CreateRangeStmt, CreateRangeStmt, create_range_stmt, CREATE_RANGE_STMT, CreateRangeStmt, create_range_stmt); - READ_COND(AlterEnumStmt, AlterEnumStmt, alter_enum_stmt, ALTER_ENUM_STMT, AlterEnumStmt, alter_enum_stmt); READ_COND(AlterTSDictionaryStmt, AlterTSDictionaryStmt, alter_tsdictionary_stmt, ALTER_TSDICTIONARY_STMT, AlterTSDictionaryStmt, alter_tsdictionary_stmt); READ_COND(AlterTSConfigurationStmt, AlterTSConfigurationStmt, alter_tsconfiguration_stmt, ALTER_TSCONFIGURATION_STMT, AlterTSConfigurationStmt, alter_tsconfiguration_stmt); - READ_COND(CreateFdwStmt, CreateFdwStmt, create_fdw_stmt, CREATE_FDW_STMT, CreateFdwStmt, create_fdw_stmt); - READ_COND(AlterFdwStmt, AlterFdwStmt, alter_fdw_stmt, ALTER_FDW_STMT, AlterFdwStmt, alter_fdw_stmt); - READ_COND(CreateForeignServerStmt, CreateForeignServerStmt, create_foreign_server_stmt, CREATE_FOREIGN_SERVER_STMT, CreateForeignServerStmt, create_foreign_server_stmt); - READ_COND(AlterForeignServerStmt, AlterForeignServerStmt, alter_foreign_server_stmt, ALTER_FOREIGN_SERVER_STMT, AlterForeignServerStmt, alter_foreign_server_stmt); - READ_COND(CreateUserMappingStmt, CreateUserMappingStmt, create_user_mapping_stmt, CREATE_USER_MAPPING_STMT, CreateUserMappingStmt, create_user_mapping_stmt); - READ_COND(AlterUserMappingStmt, AlterUserMappingStmt, alter_user_mapping_stmt, ALTER_USER_MAPPING_STMT, AlterUserMappingStmt, alter_user_mapping_stmt); - READ_COND(DropUserMappingStmt, DropUserMappingStmt, drop_user_mapping_stmt, DROP_USER_MAPPING_STMT, DropUserMappingStmt, drop_user_mapping_stmt); - READ_COND(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt, alter_table_space_options_stmt, ALTER_TABLE_SPACE_OPTIONS_STMT, AlterTableSpaceOptionsStmt, alter_table_space_options_stmt); - READ_COND(AlterTableMoveAllStmt, AlterTableMoveAllStmt, alter_table_move_all_stmt, ALTER_TABLE_MOVE_ALL_STMT, AlterTableMoveAllStmt, alter_table_move_all_stmt); - READ_COND(SecLabelStmt, SecLabelStmt, sec_label_stmt, SEC_LABEL_STMT, SecLabelStmt, sec_label_stmt); - READ_COND(CreateForeignTableStmt, CreateForeignTableStmt, create_foreign_table_stmt, CREATE_FOREIGN_TABLE_STMT, CreateForeignTableStmt, create_foreign_table_stmt); - READ_COND(ImportForeignSchemaStmt, ImportForeignSchemaStmt, import_foreign_schema_stmt, IMPORT_FOREIGN_SCHEMA_STMT, ImportForeignSchemaStmt, import_foreign_schema_stmt); - READ_COND(CreateExtensionStmt, CreateExtensionStmt, create_extension_stmt, CREATE_EXTENSION_STMT, CreateExtensionStmt, create_extension_stmt); - READ_COND(AlterExtensionStmt, AlterExtensionStmt, alter_extension_stmt, ALTER_EXTENSION_STMT, AlterExtensionStmt, alter_extension_stmt); - READ_COND(AlterExtensionContentsStmt, AlterExtensionContentsStmt, alter_extension_contents_stmt, ALTER_EXTENSION_CONTENTS_STMT, AlterExtensionContentsStmt, alter_extension_contents_stmt); - READ_COND(CreateEventTrigStmt, CreateEventTrigStmt, create_event_trig_stmt, CREATE_EVENT_TRIG_STMT, CreateEventTrigStmt, create_event_trig_stmt); - READ_COND(AlterEventTrigStmt, AlterEventTrigStmt, alter_event_trig_stmt, ALTER_EVENT_TRIG_STMT, AlterEventTrigStmt, alter_event_trig_stmt); - READ_COND(RefreshMatViewStmt, RefreshMatViewStmt, refresh_mat_view_stmt, REFRESH_MAT_VIEW_STMT, RefreshMatViewStmt, refresh_mat_view_stmt); - READ_COND(ReplicaIdentityStmt, ReplicaIdentityStmt, replica_identity_stmt, REPLICA_IDENTITY_STMT, ReplicaIdentityStmt, replica_identity_stmt); - READ_COND(AlterSystemStmt, AlterSystemStmt, alter_system_stmt, ALTER_SYSTEM_STMT, AlterSystemStmt, alter_system_stmt); - READ_COND(CreatePolicyStmt, CreatePolicyStmt, create_policy_stmt, CREATE_POLICY_STMT, CreatePolicyStmt, create_policy_stmt); - READ_COND(AlterPolicyStmt, AlterPolicyStmt, alter_policy_stmt, ALTER_POLICY_STMT, AlterPolicyStmt, alter_policy_stmt); - READ_COND(CreateTransformStmt, CreateTransformStmt, create_transform_stmt, CREATE_TRANSFORM_STMT, CreateTransformStmt, create_transform_stmt); - READ_COND(CreateAmStmt, CreateAmStmt, create_am_stmt, CREATE_AM_STMT, CreateAmStmt, create_am_stmt); + READ_COND(PublicationTable, PublicationTable, publication_table, PUBLICATION_TABLE, PublicationTable, publication_table); + READ_COND(PublicationObjSpec, PublicationObjSpec, publication_obj_spec, PUBLICATION_OBJ_SPEC, PublicationObjSpec, publication_obj_spec); READ_COND(CreatePublicationStmt, CreatePublicationStmt, create_publication_stmt, CREATE_PUBLICATION_STMT, CreatePublicationStmt, create_publication_stmt); READ_COND(AlterPublicationStmt, AlterPublicationStmt, alter_publication_stmt, ALTER_PUBLICATION_STMT, AlterPublicationStmt, alter_publication_stmt); READ_COND(CreateSubscriptionStmt, CreateSubscriptionStmt, create_subscription_stmt, CREATE_SUBSCRIPTION_STMT, CreateSubscriptionStmt, create_subscription_stmt); READ_COND(AlterSubscriptionStmt, AlterSubscriptionStmt, alter_subscription_stmt, ALTER_SUBSCRIPTION_STMT, AlterSubscriptionStmt, alter_subscription_stmt); READ_COND(DropSubscriptionStmt, DropSubscriptionStmt, drop_subscription_stmt, DROP_SUBSCRIPTION_STMT, DropSubscriptionStmt, drop_subscription_stmt); - READ_COND(CreateStatsStmt, CreateStatsStmt, create_stats_stmt, CREATE_STATS_STMT, CreateStatsStmt, create_stats_stmt); - READ_COND(AlterCollationStmt, AlterCollationStmt, alter_collation_stmt, ALTER_COLLATION_STMT, AlterCollationStmt, alter_collation_stmt); - READ_COND(CallStmt, CallStmt, call_stmt, CALL_STMT, CallStmt, call_stmt); - READ_COND(AlterStatsStmt, AlterStatsStmt, alter_stats_stmt, ALTER_STATS_STMT, AlterStatsStmt, alter_stats_stmt); - READ_COND(A_Expr, AExpr, a__expr, A_EXPR, A_Expr, a_expr); - READ_COND(ColumnRef, ColumnRef, column_ref, COLUMN_REF, ColumnRef, column_ref); - READ_COND(ParamRef, ParamRef, param_ref, PARAM_REF, ParamRef, param_ref); - READ_COND(FuncCall, FuncCall, func_call, FUNC_CALL, FuncCall, func_call); - READ_COND(A_Star, AStar, a__star, A_STAR, A_Star, a_star); - READ_COND(A_Indices, AIndices, a__indices, A_INDICES, A_Indices, a_indices); - READ_COND(A_Indirection, AIndirection, a__indirection, A_INDIRECTION, A_Indirection, a_indirection); - READ_COND(A_ArrayExpr, AArrayExpr, a__array_expr, A_ARRAY_EXPR, A_ArrayExpr, a_array_expr); - READ_COND(ResTarget, ResTarget, res_target, RES_TARGET, ResTarget, res_target); - READ_COND(MultiAssignRef, MultiAssignRef, multi_assign_ref, MULTI_ASSIGN_REF, MultiAssignRef, multi_assign_ref); - READ_COND(TypeCast, TypeCast, type_cast, TYPE_CAST, TypeCast, type_cast); - READ_COND(CollateClause, CollateClause, collate_clause, COLLATE_CLAUSE, CollateClause, collate_clause); - READ_COND(SortBy, SortBy, sort_by, SORT_BY, SortBy, sort_by); - READ_COND(WindowDef, WindowDef, window_def, WINDOW_DEF, WindowDef, window_def); - READ_COND(RangeSubselect, RangeSubselect, range_subselect, RANGE_SUBSELECT, RangeSubselect, range_subselect); - READ_COND(RangeFunction, RangeFunction, range_function, RANGE_FUNCTION, RangeFunction, range_function); - READ_COND(RangeTableSample, RangeTableSample, range_table_sample, RANGE_TABLE_SAMPLE, RangeTableSample, range_table_sample); - READ_COND(RangeTableFunc, RangeTableFunc, range_table_func, RANGE_TABLE_FUNC, RangeTableFunc, range_table_func); - READ_COND(RangeTableFuncCol, RangeTableFuncCol, range_table_func_col, RANGE_TABLE_FUNC_COL, RangeTableFuncCol, range_table_func_col); - READ_COND(TypeName, TypeName, type_name, TYPE_NAME, TypeName, type_name); - READ_COND(ColumnDef, ColumnDef, column_def, COLUMN_DEF, ColumnDef, column_def); - READ_COND(IndexElem, IndexElem, index_elem, INDEX_ELEM, IndexElem, index_elem); - READ_COND(StatsElem, StatsElem, stats_elem, STATS_ELEM, StatsElem, stats_elem); - READ_COND(Constraint, Constraint, constraint, CONSTRAINT, Constraint, constraint); - READ_COND(DefElem, DefElem, def_elem, DEF_ELEM, DefElem, def_elem); - READ_COND(RangeTblEntry, RangeTblEntry, range_tbl_entry, RANGE_TBL_ENTRY, RangeTblEntry, range_tbl_entry); - READ_COND(RangeTblFunction, RangeTblFunction, range_tbl_function, RANGE_TBL_FUNCTION, RangeTblFunction, range_tbl_function); - READ_COND(TableSampleClause, TableSampleClause, table_sample_clause, TABLE_SAMPLE_CLAUSE, TableSampleClause, table_sample_clause); - READ_COND(WithCheckOption, WithCheckOption, with_check_option, WITH_CHECK_OPTION, WithCheckOption, with_check_option); - READ_COND(SortGroupClause, SortGroupClause, sort_group_clause, SORT_GROUP_CLAUSE, SortGroupClause, sort_group_clause); - READ_COND(GroupingSet, GroupingSet, grouping_set, GROUPING_SET, GroupingSet, grouping_set); - READ_COND(WindowClause, WindowClause, window_clause, WINDOW_CLAUSE, WindowClause, window_clause); - READ_COND(ObjectWithArgs, ObjectWithArgs, object_with_args, OBJECT_WITH_ARGS, ObjectWithArgs, object_with_args); - READ_COND(AccessPriv, AccessPriv, access_priv, ACCESS_PRIV, AccessPriv, access_priv); - READ_COND(CreateOpClassItem, CreateOpClassItem, create_op_class_item, CREATE_OP_CLASS_ITEM, CreateOpClassItem, create_op_class_item); - READ_COND(TableLikeClause, TableLikeClause, table_like_clause, TABLE_LIKE_CLAUSE, TableLikeClause, table_like_clause); - READ_COND(FunctionParameter, FunctionParameter, function_parameter, FUNCTION_PARAMETER, FunctionParameter, function_parameter); - READ_COND(LockingClause, LockingClause, locking_clause, LOCKING_CLAUSE, LockingClause, locking_clause); - READ_COND(RowMarkClause, RowMarkClause, row_mark_clause, ROW_MARK_CLAUSE, RowMarkClause, row_mark_clause); - READ_COND(XmlSerialize, XmlSerialize, xml_serialize, XML_SERIALIZE, XmlSerialize, xml_serialize); - READ_COND(WithClause, WithClause, with_clause, WITH_CLAUSE, WithClause, with_clause); - READ_COND(InferClause, InferClause, infer_clause, INFER_CLAUSE, InferClause, infer_clause); - READ_COND(OnConflictClause, OnConflictClause, on_conflict_clause, ON_CONFLICT_CLAUSE, OnConflictClause, on_conflict_clause); - READ_COND(CTESearchClause, CTESearchClause, ctesearch_clause, CTESEARCH_CLAUSE, CTESearchClause, ctesearch_clause); - READ_COND(CTECycleClause, CTECycleClause, ctecycle_clause, CTECYCLE_CLAUSE, CTECycleClause, ctecycle_clause); - READ_COND(CommonTableExpr, CommonTableExpr, common_table_expr, COMMON_TABLE_EXPR, CommonTableExpr, common_table_expr); - READ_COND(MergeWhenClause, MergeWhenClause, merge_when_clause, MERGE_WHEN_CLAUSE, MergeWhenClause, merge_when_clause); - READ_COND(RoleSpec, RoleSpec, role_spec, ROLE_SPEC, RoleSpec, role_spec); - READ_COND(TriggerTransition, TriggerTransition, trigger_transition, TRIGGER_TRANSITION, TriggerTransition, trigger_transition); - READ_COND(PartitionElem, PartitionElem, partition_elem, PARTITION_ELEM, PartitionElem, partition_elem); - READ_COND(PartitionSpec, PartitionSpec, partition_spec, PARTITION_SPEC, PartitionSpec, partition_spec); - READ_COND(PartitionBoundSpec, PartitionBoundSpec, partition_bound_spec, PARTITION_BOUND_SPEC, PartitionBoundSpec, partition_bound_spec); - READ_COND(PartitionRangeDatum, PartitionRangeDatum, partition_range_datum, PARTITION_RANGE_DATUM, PartitionRangeDatum, partition_range_datum); - READ_COND(PartitionCmd, PartitionCmd, partition_cmd, PARTITION_CMD, PartitionCmd, partition_cmd); - READ_COND(VacuumRelation, VacuumRelation, vacuum_relation, VACUUM_RELATION, VacuumRelation, vacuum_relation); - READ_COND(PublicationObjSpec, PublicationObjSpec, publication_obj_spec, PUBLICATION_OBJ_SPEC, PublicationObjSpec, publication_obj_spec); - READ_COND(PublicationTable, PublicationTable, publication_table, PUBLICATION_TABLE, PublicationTable, publication_table); - READ_COND(InlineCodeBlock, InlineCodeBlock, inline_code_block, INLINE_CODE_BLOCK, InlineCodeBlock, inline_code_block); - READ_COND(CallContext, CallContext, call_context, CALL_CONTEXT, CallContext, call_context); diff --git a/parser/include/pg_query_readfuncs_defs.c b/parser/include/pg_query_readfuncs_defs.c index 7c30a4bf..3b163760 100644 --- a/parser/include/pg_query_readfuncs_defs.c +++ b/parser/include/pg_query_readfuncs_defs.c @@ -3,6 +3,7 @@ static Alias * _readAlias(OUT_TYPE(Alias, Alias) msg); static RangeVar * _readRangeVar(OUT_TYPE(RangeVar, RangeVar) msg); static TableFunc * _readTableFunc(OUT_TYPE(TableFunc, TableFunc) msg); +static IntoClause * _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg); static Var * _readVar(OUT_TYPE(Var, Var) msg); static Param * _readParam(OUT_TYPE(Param, Param) msg); static Aggref * _readAggref(OUT_TYPE(Aggref, Aggref) msg); @@ -36,6 +37,11 @@ static CoalesceExpr * _readCoalesceExpr(OUT_TYPE(CoalesceExpr, CoalesceExpr) msg static MinMaxExpr * _readMinMaxExpr(OUT_TYPE(MinMaxExpr, MinMaxExpr) msg); static SQLValueFunction * _readSQLValueFunction(OUT_TYPE(SQLValueFunction, SQLValueFunction) msg); static XmlExpr * _readXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) msg); +static JsonFormat * _readJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) msg); +static JsonReturning * _readJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) msg); +static JsonValueExpr * _readJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) msg); +static JsonConstructorExpr * _readJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) msg); +static JsonIsPredicate * _readJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) msg); static NullTest * _readNullTest(OUT_TYPE(NullTest, NullTest) msg); static BooleanTest * _readBooleanTest(OUT_TYPE(BooleanTest, BooleanTest) msg); static CoerceToDomain * _readCoerceToDomain(OUT_TYPE(CoerceToDomain, CoerceToDomain) msg); @@ -49,186 +55,194 @@ static RangeTblRef * _readRangeTblRef(OUT_TYPE(RangeTblRef, RangeTblRef) msg); static JoinExpr * _readJoinExpr(OUT_TYPE(JoinExpr, JoinExpr) msg); static FromExpr * _readFromExpr(OUT_TYPE(FromExpr, FromExpr) msg); static OnConflictExpr * _readOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) msg); -static IntoClause * _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg); +static Query * _readQuery(OUT_TYPE(Query, Query) msg); +static TypeName * _readTypeName(OUT_TYPE(TypeName, TypeName) msg); +static ColumnRef * _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg); +static ParamRef * _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg); +static A_Expr * _readAExpr(OUT_TYPE(A_Expr, AExpr) msg); +static TypeCast * _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg); +static CollateClause * _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg); +static RoleSpec * _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg); +static FuncCall * _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg); +static A_Star * _readAStar(OUT_TYPE(A_Star, AStar) msg); +static A_Indices * _readAIndices(OUT_TYPE(A_Indices, AIndices) msg); +static A_Indirection * _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg); +static A_ArrayExpr * _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg); +static ResTarget * _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg); +static MultiAssignRef * _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg); +static SortBy * _readSortBy(OUT_TYPE(SortBy, SortBy) msg); +static WindowDef * _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg); +static RangeSubselect * _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg); +static RangeFunction * _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg); +static RangeTableFunc * _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg); +static RangeTableFuncCol * _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg); +static RangeTableSample * _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg); +static ColumnDef * _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg); +static TableLikeClause * _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg); +static IndexElem * _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg); +static DefElem * _readDefElem(OUT_TYPE(DefElem, DefElem) msg); +static LockingClause * _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg); +static XmlSerialize * _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg); +static PartitionElem * _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg); +static PartitionSpec * _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg); +static PartitionBoundSpec * _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg); +static PartitionRangeDatum * _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg); +static PartitionCmd * _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg); +static RangeTblEntry * _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg); +static RTEPermissionInfo * _readRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) msg); +static RangeTblFunction * _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg); +static TableSampleClause * _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg); +static WithCheckOption * _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg); +static SortGroupClause * _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg); +static GroupingSet * _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg); +static WindowClause * _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg); +static RowMarkClause * _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg); +static WithClause * _readWithClause(OUT_TYPE(WithClause, WithClause) msg); +static InferClause * _readInferClause(OUT_TYPE(InferClause, InferClause) msg); +static OnConflictClause * _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg); +static CTESearchClause * _readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg); +static CTECycleClause * _readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg); +static CommonTableExpr * _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg); +static MergeWhenClause * _readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg); static MergeAction * _readMergeAction(OUT_TYPE(MergeAction, MergeAction) msg); +static TriggerTransition * _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg); +static JsonOutput * _readJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) msg); +static JsonKeyValue * _readJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) msg); +static JsonObjectConstructor * _readJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) msg); +static JsonArrayConstructor * _readJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) msg); +static JsonArrayQueryConstructor * _readJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) msg); +static JsonAggConstructor * _readJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) msg); +static JsonObjectAgg * _readJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) msg); +static JsonArrayAgg * _readJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) msg); static RawStmt * _readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg); -static Query * _readQuery(OUT_TYPE(Query, Query) msg); static InsertStmt * _readInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) msg); static DeleteStmt * _readDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) msg); static UpdateStmt * _readUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) msg); static MergeStmt * _readMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) msg); static SelectStmt * _readSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) msg); +static SetOperationStmt * _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg); static ReturnStmt * _readReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) msg); static PLAssignStmt * _readPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) msg); +static CreateSchemaStmt * _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg); static AlterTableStmt * _readAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) msg); +static ReplicaIdentityStmt * _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg); static AlterTableCmd * _readAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) msg); +static AlterCollationStmt * _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg); static AlterDomainStmt * _readAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) msg); -static SetOperationStmt * _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg); static GrantStmt * _readGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) msg); +static ObjectWithArgs * _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg); +static AccessPriv * _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg); static GrantRoleStmt * _readGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) msg); static AlterDefaultPrivilegesStmt * _readAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) msg); -static ClosePortalStmt * _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg); -static ClusterStmt * _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg); static CopyStmt * _readCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) msg); +static VariableSetStmt * _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg); +static VariableShowStmt * _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg); static CreateStmt * _readCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) msg); +static Constraint * _readConstraint(OUT_TYPE(Constraint, Constraint) msg); +static CreateTableSpaceStmt * _readCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) msg); +static DropTableSpaceStmt * _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg); +static AlterTableSpaceOptionsStmt * _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg); +static AlterTableMoveAllStmt * _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg); +static CreateExtensionStmt * _readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg); +static AlterExtensionStmt * _readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg); +static AlterExtensionContentsStmt * _readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg); +static CreateFdwStmt * _readCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) msg); +static AlterFdwStmt * _readAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) msg); +static CreateForeignServerStmt * _readCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) msg); +static AlterForeignServerStmt * _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) msg); +static CreateForeignTableStmt * _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg); +static CreateUserMappingStmt * _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg); +static AlterUserMappingStmt * _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg); +static DropUserMappingStmt * _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg); +static ImportForeignSchemaStmt * _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) msg); +static CreatePolicyStmt * _readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg); +static AlterPolicyStmt * _readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg); +static CreateAmStmt * _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg); +static CreateTrigStmt * _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg); +static CreateEventTrigStmt * _readCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) msg); +static AlterEventTrigStmt * _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg); +static CreatePLangStmt * _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg); +static CreateRoleStmt * _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg); +static AlterRoleStmt * _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg); +static AlterRoleSetStmt * _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg); +static DropRoleStmt * _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg); +static CreateSeqStmt * _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg); +static AlterSeqStmt * _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg); static DefineStmt * _readDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) msg); +static CreateDomainStmt * _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg); +static CreateOpClassStmt * _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg); +static CreateOpClassItem * _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg); +static CreateOpFamilyStmt * _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg); +static AlterOpFamilyStmt * _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg); static DropStmt * _readDropStmt(OUT_TYPE(DropStmt, DropStmt) msg); static TruncateStmt * _readTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) msg); static CommentStmt * _readCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) msg); +static SecLabelStmt * _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg); +static DeclareCursorStmt * _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg); +static ClosePortalStmt * _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg); static FetchStmt * _readFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) msg); static IndexStmt * _readIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) msg); +static CreateStatsStmt * _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg); +static StatsElem * _readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg); +static AlterStatsStmt * _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg); static CreateFunctionStmt * _readCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) msg); +static FunctionParameter * _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg); static AlterFunctionStmt * _readAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) msg); static DoStmt * _readDoStmt(OUT_TYPE(DoStmt, DoStmt) msg); +static InlineCodeBlock * _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg); +static CallStmt * _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg); +static CallContext * _readCallContext(OUT_TYPE(CallContext, CallContext) msg); static RenameStmt * _readRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) msg); +static AlterObjectDependsStmt * _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg); +static AlterObjectSchemaStmt * _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg); +static AlterOwnerStmt * _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg); +static AlterOperatorStmt * _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg); +static AlterTypeStmt * _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg); static RuleStmt * _readRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) msg); static NotifyStmt * _readNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) msg); static ListenStmt * _readListenStmt(OUT_TYPE(ListenStmt, ListenStmt) msg); static UnlistenStmt * _readUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) msg); static TransactionStmt * _readTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) msg); +static CompositeTypeStmt * _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg); +static CreateEnumStmt * _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg); +static CreateRangeStmt * _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg); +static AlterEnumStmt * _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg); static ViewStmt * _readViewStmt(OUT_TYPE(ViewStmt, ViewStmt) msg); static LoadStmt * _readLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) msg); -static CreateDomainStmt * _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg); static CreatedbStmt * _readCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) msg); +static AlterDatabaseStmt * _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg); +static AlterDatabaseRefreshCollStmt * _readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg); +static AlterDatabaseSetStmt * _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg); static DropdbStmt * _readDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) msg); +static AlterSystemStmt * _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg); +static ClusterStmt * _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg); static VacuumStmt * _readVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) msg); +static VacuumRelation * _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg); static ExplainStmt * _readExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) msg); static CreateTableAsStmt * _readCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) msg); -static CreateSeqStmt * _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg); -static AlterSeqStmt * _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg); -static VariableSetStmt * _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg); -static VariableShowStmt * _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg); +static RefreshMatViewStmt * _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg); +static CheckPointStmt * _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg); static DiscardStmt * _readDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) msg); -static CreateTrigStmt * _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg); -static CreatePLangStmt * _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg); -static CreateRoleStmt * _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg); -static AlterRoleStmt * _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg); -static DropRoleStmt * _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg); static LockStmt * _readLockStmt(OUT_TYPE(LockStmt, LockStmt) msg); static ConstraintsSetStmt * _readConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) msg); static ReindexStmt * _readReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) msg); -static CheckPointStmt * _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg); -static CreateSchemaStmt * _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg); -static AlterDatabaseStmt * _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg); -static AlterDatabaseRefreshCollStmt * _readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg); -static AlterDatabaseSetStmt * _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg); -static AlterRoleSetStmt * _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg); static CreateConversionStmt * _readCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) msg); static CreateCastStmt * _readCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) msg); -static CreateOpClassStmt * _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg); -static CreateOpFamilyStmt * _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg); -static AlterOpFamilyStmt * _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg); +static CreateTransformStmt * _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg); static PrepareStmt * _readPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) msg); static ExecuteStmt * _readExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) msg); static DeallocateStmt * _readDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) msg); -static DeclareCursorStmt * _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg); -static CreateTableSpaceStmt * _readCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) msg); -static DropTableSpaceStmt * _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg); -static AlterObjectDependsStmt * _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg); -static AlterObjectSchemaStmt * _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg); -static AlterOwnerStmt * _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg); -static AlterOperatorStmt * _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg); -static AlterTypeStmt * _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg); static DropOwnedStmt * _readDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) msg); static ReassignOwnedStmt * _readReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) msg); -static CompositeTypeStmt * _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg); -static CreateEnumStmt * _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg); -static CreateRangeStmt * _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg); -static AlterEnumStmt * _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg); static AlterTSDictionaryStmt * _readAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) msg); static AlterTSConfigurationStmt * _readAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) msg); -static CreateFdwStmt * _readCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) msg); -static AlterFdwStmt * _readAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) msg); -static CreateForeignServerStmt * _readCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) msg); -static AlterForeignServerStmt * _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) msg); -static CreateUserMappingStmt * _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg); -static AlterUserMappingStmt * _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg); -static DropUserMappingStmt * _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg); -static AlterTableSpaceOptionsStmt * _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg); -static AlterTableMoveAllStmt * _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg); -static SecLabelStmt * _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg); -static CreateForeignTableStmt * _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg); -static ImportForeignSchemaStmt * _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) msg); -static CreateExtensionStmt * _readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg); -static AlterExtensionStmt * _readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg); -static AlterExtensionContentsStmt * _readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg); -static CreateEventTrigStmt * _readCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) msg); -static AlterEventTrigStmt * _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg); -static RefreshMatViewStmt * _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg); -static ReplicaIdentityStmt * _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg); -static AlterSystemStmt * _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg); -static CreatePolicyStmt * _readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg); -static AlterPolicyStmt * _readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg); -static CreateTransformStmt * _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg); -static CreateAmStmt * _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg); +static PublicationTable * _readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg); +static PublicationObjSpec * _readPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) msg); static CreatePublicationStmt * _readCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) msg); static AlterPublicationStmt * _readAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) msg); static CreateSubscriptionStmt * _readCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) msg); static AlterSubscriptionStmt * _readAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) msg); static DropSubscriptionStmt * _readDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) msg); -static CreateStatsStmt * _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg); -static AlterCollationStmt * _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg); -static CallStmt * _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg); -static AlterStatsStmt * _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg); -static A_Expr * _readAExpr(OUT_TYPE(A_Expr, AExpr) msg); -static ColumnRef * _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg); -static ParamRef * _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg); -static FuncCall * _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg); -static A_Star * _readAStar(OUT_TYPE(A_Star, AStar) msg); -static A_Indices * _readAIndices(OUT_TYPE(A_Indices, AIndices) msg); -static A_Indirection * _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg); -static A_ArrayExpr * _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg); -static ResTarget * _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg); -static MultiAssignRef * _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg); -static TypeCast * _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg); -static CollateClause * _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg); -static SortBy * _readSortBy(OUT_TYPE(SortBy, SortBy) msg); -static WindowDef * _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg); -static RangeSubselect * _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg); -static RangeFunction * _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg); -static RangeTableSample * _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg); -static RangeTableFunc * _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg); -static RangeTableFuncCol * _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg); -static TypeName * _readTypeName(OUT_TYPE(TypeName, TypeName) msg); -static ColumnDef * _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg); -static IndexElem * _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg); -static StatsElem * _readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg); -static Constraint * _readConstraint(OUT_TYPE(Constraint, Constraint) msg); -static DefElem * _readDefElem(OUT_TYPE(DefElem, DefElem) msg); -static RangeTblEntry * _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg); -static RangeTblFunction * _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg); -static TableSampleClause * _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg); -static WithCheckOption * _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg); -static SortGroupClause * _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg); -static GroupingSet * _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg); -static WindowClause * _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg); -static ObjectWithArgs * _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg); -static AccessPriv * _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg); -static CreateOpClassItem * _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg); -static TableLikeClause * _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg); -static FunctionParameter * _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg); -static LockingClause * _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg); -static RowMarkClause * _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg); -static XmlSerialize * _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg); -static WithClause * _readWithClause(OUT_TYPE(WithClause, WithClause) msg); -static InferClause * _readInferClause(OUT_TYPE(InferClause, InferClause) msg); -static OnConflictClause * _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg); -static CTESearchClause * _readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg); -static CTECycleClause * _readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg); -static CommonTableExpr * _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg); -static MergeWhenClause * _readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg); -static RoleSpec * _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg); -static TriggerTransition * _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg); -static PartitionElem * _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg); -static PartitionSpec * _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg); -static PartitionBoundSpec * _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg); -static PartitionRangeDatum * _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg); -static PartitionCmd * _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg); -static VacuumRelation * _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg); -static PublicationObjSpec * _readPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) msg); -static PublicationTable * _readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg); -static InlineCodeBlock * _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg); -static CallContext * _readCallContext(OUT_TYPE(CallContext, CallContext) msg); static Alias * @@ -274,18 +288,32 @@ _readTableFunc(OUT_TYPE(TableFunc, TableFunc) msg) return node; } -static Var * -_readVar(OUT_TYPE(Var, Var) msg) +static IntoClause * +_readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg) { - Var *node = makeNode(Var); - READ_INT_FIELD(varno, varno, varno); - READ_INT_FIELD(varattno, varattno, varattno); - READ_UINT_FIELD(vartype, vartype, vartype); - READ_INT_FIELD(vartypmod, vartypmod, vartypmod); - READ_UINT_FIELD(varcollid, varcollid, varcollid); + IntoClause *node = makeNode(IntoClause); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel); + READ_LIST_FIELD(col_names, colNames, colNames); + READ_STRING_FIELD(access_method, accessMethod, accessMethod); + READ_LIST_FIELD(options, options, options); + READ_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit); + READ_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName); + READ_NODE_PTR_FIELD(view_query, viewQuery, viewQuery); + READ_BOOL_FIELD(skip_data, skipData, skipData); + return node; +} + +static Var * +_readVar(OUT_TYPE(Var, Var) msg) +{ + Var *node = makeNode(Var); + READ_INT_FIELD(varno, varno, varno); + READ_INT_FIELD(varattno, varattno, varattno); + READ_UINT_FIELD(vartype, vartype, vartype); + READ_INT_FIELD(vartypmod, vartypmod, vartypmod); + READ_UINT_FIELD(varcollid, varcollid, varcollid); + READ_BITMAPSET_FIELD(varnullingrels, varnullingrels, varnullingrels); READ_UINT_FIELD(varlevelsup, varlevelsup, varlevelsup); - READ_UINT_FIELD(varnosyn, varnosyn, varnosyn); - READ_INT_FIELD(varattnosyn, varattnosyn, varattnosyn); READ_INT_FIELD(location, location, location); return node; } @@ -311,7 +339,6 @@ _readAggref(OUT_TYPE(Aggref, Aggref) msg) READ_UINT_FIELD(aggtype, aggtype, aggtype); READ_UINT_FIELD(aggcollid, aggcollid, aggcollid); READ_UINT_FIELD(inputcollid, inputcollid, inputcollid); - READ_UINT_FIELD(aggtranstype, aggtranstype, aggtranstype); READ_LIST_FIELD(aggargtypes, aggargtypes, aggargtypes); READ_LIST_FIELD(aggdirectargs, aggdirectargs, aggdirectargs); READ_LIST_FIELD(args, args, args); @@ -335,7 +362,6 @@ _readGroupingFunc(OUT_TYPE(GroupingFunc, GroupingFunc) msg) GroupingFunc *node = makeNode(GroupingFunc); READ_LIST_FIELD(args, args, args); READ_LIST_FIELD(refs, refs, refs); - READ_LIST_FIELD(cols, cols, cols); READ_UINT_FIELD(agglevelsup, agglevelsup, agglevelsup); READ_INT_FIELD(location, location, location); return node; @@ -406,7 +432,6 @@ _readOpExpr(OUT_TYPE(OpExpr, OpExpr) msg) { OpExpr *node = makeNode(OpExpr); READ_UINT_FIELD(opno, opno, opno); - READ_UINT_FIELD(opfuncid, opfuncid, opfuncid); READ_UINT_FIELD(opresulttype, opresulttype, opresulttype); READ_BOOL_FIELD(opretset, opretset, opretset); READ_UINT_FIELD(opcollid, opcollid, opcollid); @@ -421,7 +446,6 @@ _readDistinctExpr(OUT_TYPE(DistinctExpr, DistinctExpr) msg) { DistinctExpr *node = makeNode(DistinctExpr); READ_UINT_FIELD(opno, opno, opno); - READ_UINT_FIELD(opfuncid, opfuncid, opfuncid); READ_UINT_FIELD(opresulttype, opresulttype, opresulttype); READ_BOOL_FIELD(opretset, opretset, opretset); READ_UINT_FIELD(opcollid, opcollid, opcollid); @@ -436,7 +460,6 @@ _readNullIfExpr(OUT_TYPE(NullIfExpr, NullIfExpr) msg) { NullIfExpr *node = makeNode(NullIfExpr); READ_UINT_FIELD(opno, opno, opno); - READ_UINT_FIELD(opfuncid, opfuncid, opfuncid); READ_UINT_FIELD(opresulttype, opresulttype, opresulttype); READ_BOOL_FIELD(opretset, opretset, opretset); READ_UINT_FIELD(opcollid, opcollid, opcollid); @@ -451,9 +474,6 @@ _readScalarArrayOpExpr(OUT_TYPE(ScalarArrayOpExpr, ScalarArrayOpExpr) msg) { ScalarArrayOpExpr *node = makeNode(ScalarArrayOpExpr); READ_UINT_FIELD(opno, opno, opno); - READ_UINT_FIELD(opfuncid, opfuncid, opfuncid); - READ_UINT_FIELD(hashfuncid, hashfuncid, hashfuncid); - READ_UINT_FIELD(negfuncid, negfuncid, negfuncid); READ_BOOL_FIELD(use_or, useOr, useOr); READ_UINT_FIELD(inputcollid, inputcollid, inputcollid); READ_LIST_FIELD(args, args, args); @@ -714,12 +734,70 @@ _readXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) msg) READ_LIST_FIELD(arg_names, arg_names, arg_names); READ_LIST_FIELD(args, args, args); READ_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption); + READ_BOOL_FIELD(indent, indent, indent); READ_UINT_FIELD(type, type, type); READ_INT_FIELD(typmod, typmod, typmod); READ_INT_FIELD(location, location, location); return node; } +static JsonFormat * +_readJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) msg) +{ + JsonFormat *node = makeNode(JsonFormat); + READ_ENUM_FIELD(JsonFormatType, format_type, format_type, format_type); + READ_ENUM_FIELD(JsonEncoding, encoding, encoding, encoding); + READ_INT_FIELD(location, location, location); + return node; +} + +static JsonReturning * +_readJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) msg) +{ + JsonReturning *node = makeNode(JsonReturning); + READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format); + READ_UINT_FIELD(typid, typid, typid); + READ_INT_FIELD(typmod, typmod, typmod); + return node; +} + +static JsonValueExpr * +_readJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) msg) +{ + JsonValueExpr *node = makeNode(JsonValueExpr); + READ_EXPR_PTR_FIELD(raw_expr, raw_expr, raw_expr); + READ_EXPR_PTR_FIELD(formatted_expr, formatted_expr, formatted_expr); + READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format); + return node; +} + +static JsonConstructorExpr * +_readJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) msg) +{ + JsonConstructorExpr *node = makeNode(JsonConstructorExpr); + READ_ENUM_FIELD(JsonConstructorType, type, type, type); + READ_LIST_FIELD(args, args, args); + READ_EXPR_PTR_FIELD(func, func, func); + READ_EXPR_PTR_FIELD(coercion, coercion, coercion); + READ_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning); + READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + READ_BOOL_FIELD(unique, unique, unique); + READ_INT_FIELD(location, location, location); + return node; +} + +static JsonIsPredicate * +_readJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) msg) +{ + JsonIsPredicate *node = makeNode(JsonIsPredicate); + READ_NODE_PTR_FIELD(expr, expr, expr); + READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format); + READ_ENUM_FIELD(JsonValueType, item_type, item_type, item_type); + READ_BOOL_FIELD(unique_keys, unique_keys, unique_keys); + READ_INT_FIELD(location, location, location); + return node; +} + static NullTest * _readNullTest(OUT_TYPE(NullTest, NullTest) msg) { @@ -867,44 +945,6 @@ _readOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) msg) return node; } -static IntoClause * -_readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg) -{ - IntoClause *node = makeNode(IntoClause); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel); - READ_LIST_FIELD(col_names, colNames, colNames); - READ_STRING_FIELD(access_method, accessMethod, accessMethod); - READ_LIST_FIELD(options, options, options); - READ_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit); - READ_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName); - READ_NODE_PTR_FIELD(view_query, viewQuery, viewQuery); - READ_BOOL_FIELD(skip_data, skipData, skipData); - return node; -} - -static MergeAction * -_readMergeAction(OUT_TYPE(MergeAction, MergeAction) msg) -{ - MergeAction *node = makeNode(MergeAction); - READ_BOOL_FIELD(matched, matched, matched); - READ_ENUM_FIELD(CmdType, command_type, commandType, commandType); - READ_ENUM_FIELD(OverridingKind, override, override, override); - READ_NODE_PTR_FIELD(qual, qual, qual); - READ_LIST_FIELD(target_list, targetList, targetList); - READ_LIST_FIELD(update_colnos, updateColnos, updateColnos); - return node; -} - -static RawStmt * -_readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg) -{ - RawStmt *node = makeNode(RawStmt); - READ_NODE_PTR_FIELD(stmt, stmt, stmt); - READ_INT_FIELD(stmt_location, stmt_location, stmt_location); - READ_INT_FIELD(stmt_len, stmt_len, stmt_len); - return node; -} - static Query * _readQuery(OUT_TYPE(Query, Query) msg) { @@ -926,6 +966,7 @@ _readQuery(OUT_TYPE(Query, Query) msg) READ_BOOL_FIELD(is_return, isReturn, isReturn); READ_LIST_FIELD(cte_list, cteList, cteList); READ_LIST_FIELD(rtable, rtable, rtable); + READ_LIST_FIELD(rteperminfos, rteperminfos, rteperminfos); READ_SPECIFIC_NODE_PTR_FIELD(FromExpr, from_expr, jointree, jointree, jointree); READ_LIST_FIELD(merge_action_list, mergeActionList, mergeActionList); READ_BOOL_FIELD(merge_use_outer_join, mergeUseOuterJoin, mergeUseOuterJoin); @@ -952,664 +993,854 @@ _readQuery(OUT_TYPE(Query, Query) msg) return node; } -static InsertStmt * -_readInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) msg) +static TypeName * +_readTypeName(OUT_TYPE(TypeName, TypeName) msg) { - InsertStmt *node = makeNode(InsertStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_LIST_FIELD(cols, cols, cols); - READ_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt); - READ_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause); - READ_LIST_FIELD(returning_list, returningList, returningList); - READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); - READ_ENUM_FIELD(OverridingKind, override, override, override); + TypeName *node = makeNode(TypeName); + READ_LIST_FIELD(names, names, names); + READ_UINT_FIELD(type_oid, typeOid, typeOid); + READ_BOOL_FIELD(setof, setof, setof); + READ_BOOL_FIELD(pct_type, pct_type, pct_type); + READ_LIST_FIELD(typmods, typmods, typmods); + READ_INT_FIELD(typemod, typemod, typemod); + READ_LIST_FIELD(array_bounds, arrayBounds, arrayBounds); + READ_INT_FIELD(location, location, location); return node; } -static DeleteStmt * -_readDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) msg) +static ColumnRef * +_readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg) { - DeleteStmt *node = makeNode(DeleteStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_LIST_FIELD(using_clause, usingClause, usingClause); - READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - READ_LIST_FIELD(returning_list, returningList, returningList); - READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + ColumnRef *node = makeNode(ColumnRef); + READ_LIST_FIELD(fields, fields, fields); + READ_INT_FIELD(location, location, location); return node; } -static UpdateStmt * -_readUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) msg) +static ParamRef * +_readParamRef(OUT_TYPE(ParamRef, ParamRef) msg) { - UpdateStmt *node = makeNode(UpdateStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_LIST_FIELD(target_list, targetList, targetList); - READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - READ_LIST_FIELD(from_clause, fromClause, fromClause); - READ_LIST_FIELD(returning_list, returningList, returningList); - READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + ParamRef *node = makeNode(ParamRef); + READ_INT_FIELD(number, number, number); + READ_INT_FIELD(location, location, location); return node; } -static MergeStmt * -_readMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) msg) +static A_Expr * +_readAExpr(OUT_TYPE(A_Expr, AExpr) msg) { - MergeStmt *node = makeNode(MergeStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_NODE_PTR_FIELD(source_relation, sourceRelation, sourceRelation); - READ_NODE_PTR_FIELD(join_condition, joinCondition, joinCondition); - READ_LIST_FIELD(merge_when_clauses, mergeWhenClauses, mergeWhenClauses); - READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + A_Expr *node = makeNode(A_Expr); + READ_ENUM_FIELD(A_Expr_Kind, kind, kind, kind); + READ_LIST_FIELD(name, name, name); + READ_NODE_PTR_FIELD(lexpr, lexpr, lexpr); + READ_NODE_PTR_FIELD(rexpr, rexpr, rexpr); + READ_INT_FIELD(location, location, location); return node; } -static SelectStmt * -_readSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) msg) +static TypeCast * +_readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg) { - SelectStmt *node = makeNode(SelectStmt); - READ_LIST_FIELD(distinct_clause, distinctClause, distinctClause); - READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause); - READ_LIST_FIELD(target_list, targetList, targetList); - READ_LIST_FIELD(from_clause, fromClause, fromClause); - READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - READ_LIST_FIELD(group_clause, groupClause, groupClause); - READ_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct); - READ_NODE_PTR_FIELD(having_clause, havingClause, havingClause); - READ_LIST_FIELD(window_clause, windowClause, windowClause); - READ_LIST_FIELD(values_lists, valuesLists, valuesLists); - READ_LIST_FIELD(sort_clause, sortClause, sortClause); - READ_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset); - READ_NODE_PTR_FIELD(limit_count, limitCount, limitCount); - READ_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption); - READ_LIST_FIELD(locking_clause, lockingClause, lockingClause); - READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); - READ_ENUM_FIELD(SetOperation, op, op, op); - READ_BOOL_FIELD(all, all, all); - READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg); - READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg); + TypeCast *node = makeNode(TypeCast); + READ_NODE_PTR_FIELD(arg, arg, arg); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + READ_INT_FIELD(location, location, location); return node; } -static ReturnStmt * -_readReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) msg) +static CollateClause * +_readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg) { - ReturnStmt *node = makeNode(ReturnStmt); - READ_NODE_PTR_FIELD(returnval, returnval, returnval); + CollateClause *node = makeNode(CollateClause); + READ_NODE_PTR_FIELD(arg, arg, arg); + READ_LIST_FIELD(collname, collname, collname); + READ_INT_FIELD(location, location, location); return node; } -static PLAssignStmt * -_readPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) msg) +static RoleSpec * +_readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg) { - PLAssignStmt *node = makeNode(PLAssignStmt); - READ_STRING_FIELD(name, name, name); - READ_LIST_FIELD(indirection, indirection, indirection); - READ_INT_FIELD(nnames, nnames, nnames); - READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, val, val, val); + RoleSpec *node = makeNode(RoleSpec); + READ_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype); + READ_STRING_FIELD(rolename, rolename, rolename); READ_INT_FIELD(location, location, location); return node; } -static AlterTableStmt * -_readAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) msg) +static FuncCall * +_readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg) { - AlterTableStmt *node = makeNode(AlterTableStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_LIST_FIELD(cmds, cmds, cmds); - READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + FuncCall *node = makeNode(FuncCall); + READ_LIST_FIELD(funcname, funcname, funcname); + READ_LIST_FIELD(args, args, args); + READ_LIST_FIELD(agg_order, agg_order, agg_order); + READ_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter); + READ_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over); + READ_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group); + READ_BOOL_FIELD(agg_star, agg_star, agg_star); + READ_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct); + READ_BOOL_FIELD(func_variadic, func_variadic, func_variadic); + READ_ENUM_FIELD(CoercionForm, funcformat, funcformat, funcformat); + READ_INT_FIELD(location, location, location); return node; } -static AlterTableCmd * -_readAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) msg) +static A_Star * +_readAStar(OUT_TYPE(A_Star, AStar) msg) { - AlterTableCmd *node = makeNode(AlterTableCmd); - READ_ENUM_FIELD(AlterTableType, subtype, subtype, subtype); - READ_STRING_FIELD(name, name, name); - READ_INT_FIELD(num, num, num); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner); - READ_NODE_PTR_FIELD(def, def, def); - READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - READ_BOOL_FIELD(recurse, recurse, recurse); + A_Star *node = makeNode(A_Star); return node; } -static AlterDomainStmt * -_readAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) msg) +static A_Indices * +_readAIndices(OUT_TYPE(A_Indices, AIndices) msg) { - AlterDomainStmt *node = makeNode(AlterDomainStmt); - READ_CHAR_FIELD(subtype, subtype, subtype); - READ_LIST_FIELD(type_name, typeName, typeName); - READ_STRING_FIELD(name, name, name); - READ_NODE_PTR_FIELD(def, def, def); - READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + A_Indices *node = makeNode(A_Indices); + READ_BOOL_FIELD(is_slice, is_slice, is_slice); + READ_NODE_PTR_FIELD(lidx, lidx, lidx); + READ_NODE_PTR_FIELD(uidx, uidx, uidx); return node; } -static SetOperationStmt * -_readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg) +static A_Indirection * +_readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg) { - SetOperationStmt *node = makeNode(SetOperationStmt); - READ_ENUM_FIELD(SetOperation, op, op, op); - READ_BOOL_FIELD(all, all, all); - READ_NODE_PTR_FIELD(larg, larg, larg); - READ_NODE_PTR_FIELD(rarg, rarg, rarg); - READ_LIST_FIELD(col_types, colTypes, colTypes); - READ_LIST_FIELD(col_typmods, colTypmods, colTypmods); - READ_LIST_FIELD(col_collations, colCollations, colCollations); - READ_LIST_FIELD(group_clauses, groupClauses, groupClauses); + A_Indirection *node = makeNode(A_Indirection); + READ_NODE_PTR_FIELD(arg, arg, arg); + READ_LIST_FIELD(indirection, indirection, indirection); return node; } -static GrantStmt * -_readGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) msg) +static A_ArrayExpr * +_readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg) { - GrantStmt *node = makeNode(GrantStmt); - READ_BOOL_FIELD(is_grant, is_grant, is_grant); - READ_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype); - READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - READ_LIST_FIELD(objects, objects, objects); - READ_LIST_FIELD(privileges, privileges, privileges); - READ_LIST_FIELD(grantees, grantees, grantees); - READ_BOOL_FIELD(grant_option, grant_option, grant_option); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor); - READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + A_ArrayExpr *node = makeNode(A_ArrayExpr); + READ_LIST_FIELD(elements, elements, elements); + READ_INT_FIELD(location, location, location); return node; } -static GrantRoleStmt * -_readGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) msg) +static ResTarget * +_readResTarget(OUT_TYPE(ResTarget, ResTarget) msg) { - GrantRoleStmt *node = makeNode(GrantRoleStmt); - READ_LIST_FIELD(granted_roles, granted_roles, granted_roles); - READ_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles); - READ_BOOL_FIELD(is_grant, is_grant, is_grant); - READ_BOOL_FIELD(admin_opt, admin_opt, admin_opt); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor); - READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + ResTarget *node = makeNode(ResTarget); + READ_STRING_FIELD(name, name, name); + READ_LIST_FIELD(indirection, indirection, indirection); + READ_NODE_PTR_FIELD(val, val, val); + READ_INT_FIELD(location, location, location); return node; } -static AlterDefaultPrivilegesStmt * -_readAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) msg) +static MultiAssignRef * +_readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg) { - AlterDefaultPrivilegesStmt *node = makeNode(AlterDefaultPrivilegesStmt); - READ_LIST_FIELD(options, options, options); - READ_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action); + MultiAssignRef *node = makeNode(MultiAssignRef); + READ_NODE_PTR_FIELD(source, source, source); + READ_INT_FIELD(colno, colno, colno); + READ_INT_FIELD(ncolumns, ncolumns, ncolumns); return node; } -static ClosePortalStmt * -_readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg) +static SortBy * +_readSortBy(OUT_TYPE(SortBy, SortBy) msg) { - ClosePortalStmt *node = makeNode(ClosePortalStmt); - READ_STRING_FIELD(portalname, portalname, portalname); + SortBy *node = makeNode(SortBy); + READ_NODE_PTR_FIELD(node, node, node); + READ_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir); + READ_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls); + READ_LIST_FIELD(use_op, useOp, useOp); + READ_INT_FIELD(location, location, location); return node; } -static ClusterStmt * -_readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg) +static WindowDef * +_readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg) { - ClusterStmt *node = makeNode(ClusterStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_STRING_FIELD(indexname, indexname, indexname); - READ_LIST_FIELD(params, params, params); + WindowDef *node = makeNode(WindowDef); + READ_STRING_FIELD(name, name, name); + READ_STRING_FIELD(refname, refname, refname); + READ_LIST_FIELD(partition_clause, partitionClause, partitionClause); + READ_LIST_FIELD(order_clause, orderClause, orderClause); + READ_INT_FIELD(frame_options, frameOptions, frameOptions); + READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset); + READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset); + READ_INT_FIELD(location, location, location); return node; } -static CopyStmt * -_readCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) msg) +static RangeSubselect * +_readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg) { - CopyStmt *node = makeNode(CopyStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_NODE_PTR_FIELD(query, query, query); - READ_LIST_FIELD(attlist, attlist, attlist); - READ_BOOL_FIELD(is_from, is_from, is_from); - READ_BOOL_FIELD(is_program, is_program, is_program); - READ_STRING_FIELD(filename, filename, filename); - READ_LIST_FIELD(options, options, options); - READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + RangeSubselect *node = makeNode(RangeSubselect); + READ_BOOL_FIELD(lateral, lateral, lateral); + READ_NODE_PTR_FIELD(subquery, subquery, subquery); + READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); return node; } -static CreateStmt * -_readCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) msg) +static RangeFunction * +_readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg) { - CreateStmt *node = makeNode(CreateStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_LIST_FIELD(table_elts, tableElts, tableElts); - READ_LIST_FIELD(inh_relations, inhRelations, inhRelations); - READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound); - READ_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename); - READ_LIST_FIELD(constraints, constraints, constraints); - READ_LIST_FIELD(options, options, options); - READ_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit); - READ_STRING_FIELD(tablespacename, tablespacename, tablespacename); - READ_STRING_FIELD(access_method, accessMethod, accessMethod); - READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + RangeFunction *node = makeNode(RangeFunction); + READ_BOOL_FIELD(lateral, lateral, lateral); + READ_BOOL_FIELD(ordinality, ordinality, ordinality); + READ_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom); + READ_LIST_FIELD(functions, functions, functions); + READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); + READ_LIST_FIELD(coldeflist, coldeflist, coldeflist); return node; } -static DefineStmt * -_readDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) msg) +static RangeTableFunc * +_readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg) { - DefineStmt *node = makeNode(DefineStmt); - READ_ENUM_FIELD(ObjectType, kind, kind, kind); - READ_BOOL_FIELD(oldstyle, oldstyle, oldstyle); - READ_LIST_FIELD(defnames, defnames, defnames); + RangeTableFunc *node = makeNode(RangeTableFunc); + READ_BOOL_FIELD(lateral, lateral, lateral); + READ_NODE_PTR_FIELD(docexpr, docexpr, docexpr); + READ_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr); + READ_LIST_FIELD(namespaces, namespaces, namespaces); + READ_LIST_FIELD(columns, columns, columns); + READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); + READ_INT_FIELD(location, location, location); + return node; +} + +static RangeTableFuncCol * +_readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg) +{ + RangeTableFuncCol *node = makeNode(RangeTableFuncCol); + READ_STRING_FIELD(colname, colname, colname); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + READ_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality); + READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null); + READ_NODE_PTR_FIELD(colexpr, colexpr, colexpr); + READ_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr); + READ_INT_FIELD(location, location, location); + return node; +} + +static RangeTableSample * +_readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg) +{ + RangeTableSample *node = makeNode(RangeTableSample); + READ_NODE_PTR_FIELD(relation, relation, relation); + READ_LIST_FIELD(method, method, method); READ_LIST_FIELD(args, args, args); - READ_LIST_FIELD(definition, definition, definition); - READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); - READ_BOOL_FIELD(replace, replace, replace); + READ_NODE_PTR_FIELD(repeatable, repeatable, repeatable); + READ_INT_FIELD(location, location, location); return node; } -static DropStmt * -_readDropStmt(OUT_TYPE(DropStmt, DropStmt) msg) +static ColumnDef * +_readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg) { - DropStmt *node = makeNode(DropStmt); - READ_LIST_FIELD(objects, objects, objects); - READ_ENUM_FIELD(ObjectType, remove_type, removeType, removeType); - READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - READ_BOOL_FIELD(concurrent, concurrent, concurrent); + ColumnDef *node = makeNode(ColumnDef); + READ_STRING_FIELD(colname, colname, colname); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + READ_STRING_FIELD(compression, compression, compression); + READ_INT_FIELD(inhcount, inhcount, inhcount); + READ_BOOL_FIELD(is_local, is_local, is_local); + READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null); + READ_BOOL_FIELD(is_from_type, is_from_type, is_from_type); + READ_CHAR_FIELD(storage, storage, storage); + READ_STRING_FIELD(storage_name, storage_name, storage_name); + READ_NODE_PTR_FIELD(raw_default, raw_default, raw_default); + READ_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default); + READ_CHAR_FIELD(identity, identity, identity); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence); + READ_CHAR_FIELD(generated, generated, generated); + READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause); + READ_UINT_FIELD(coll_oid, collOid, collOid); + READ_LIST_FIELD(constraints, constraints, constraints); + READ_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions); + READ_INT_FIELD(location, location, location); return node; } -static TruncateStmt * -_readTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) msg) +static TableLikeClause * +_readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg) { - TruncateStmt *node = makeNode(TruncateStmt); - READ_LIST_FIELD(relations, relations, relations); - READ_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs); - READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + TableLikeClause *node = makeNode(TableLikeClause); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_UINT_FIELD(options, options, options); + READ_UINT_FIELD(relation_oid, relationOid, relationOid); return node; } -static CommentStmt * -_readCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) msg) +static IndexElem * +_readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg) { - CommentStmt *node = makeNode(CommentStmt); - READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - READ_NODE_PTR_FIELD(object, object, object); - READ_STRING_FIELD(comment, comment, comment); + IndexElem *node = makeNode(IndexElem); + READ_STRING_FIELD(name, name, name); + READ_NODE_PTR_FIELD(expr, expr, expr); + READ_STRING_FIELD(indexcolname, indexcolname, indexcolname); + READ_LIST_FIELD(collation, collation, collation); + READ_LIST_FIELD(opclass, opclass, opclass); + READ_LIST_FIELD(opclassopts, opclassopts, opclassopts); + READ_ENUM_FIELD(SortByDir, ordering, ordering, ordering); + READ_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering); return node; } -static FetchStmt * -_readFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) msg) +static DefElem * +_readDefElem(OUT_TYPE(DefElem, DefElem) msg) { - FetchStmt *node = makeNode(FetchStmt); - READ_ENUM_FIELD(FetchDirection, direction, direction, direction); - READ_LONG_FIELD(how_many, howMany, howMany); - READ_STRING_FIELD(portalname, portalname, portalname); - READ_BOOL_FIELD(ismove, ismove, ismove); + DefElem *node = makeNode(DefElem); + READ_STRING_FIELD(defnamespace, defnamespace, defnamespace); + READ_STRING_FIELD(defname, defname, defname); + READ_NODE_PTR_FIELD(arg, arg, arg); + READ_ENUM_FIELD(DefElemAction, defaction, defaction, defaction); + READ_INT_FIELD(location, location, location); return node; } -static IndexStmt * -_readIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) msg) +static LockingClause * +_readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg) { - IndexStmt *node = makeNode(IndexStmt); - READ_STRING_FIELD(idxname, idxname, idxname); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_STRING_FIELD(access_method, accessMethod, accessMethod); - READ_STRING_FIELD(table_space, tableSpace, tableSpace); - READ_LIST_FIELD(index_params, indexParams, indexParams); - READ_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams); - READ_LIST_FIELD(options, options, options); - READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - READ_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames); - READ_STRING_FIELD(idxcomment, idxcomment, idxcomment); - READ_UINT_FIELD(index_oid, indexOid, indexOid); - READ_UINT_FIELD(old_node, oldNode, oldNode); - READ_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid); - READ_UINT_FIELD(old_first_relfilenode_subid, oldFirstRelfilenodeSubid, oldFirstRelfilenodeSubid); - READ_BOOL_FIELD(unique, unique, unique); - READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct); - READ_BOOL_FIELD(primary, primary, primary); - READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint); - READ_BOOL_FIELD(deferrable, deferrable, deferrable); - READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred); - READ_BOOL_FIELD(transformed, transformed, transformed); + LockingClause *node = makeNode(LockingClause); + READ_LIST_FIELD(locked_rels, lockedRels, lockedRels); + READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength); + READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy); + return node; +} + +static XmlSerialize * +_readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg) +{ + XmlSerialize *node = makeNode(XmlSerialize); + READ_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption); + READ_NODE_PTR_FIELD(expr, expr, expr); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + READ_BOOL_FIELD(indent, indent, indent); + READ_INT_FIELD(location, location, location); + return node; +} + +static PartitionElem * +_readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg) +{ + PartitionElem *node = makeNode(PartitionElem); + READ_STRING_FIELD(name, name, name); + READ_NODE_PTR_FIELD(expr, expr, expr); + READ_LIST_FIELD(collation, collation, collation); + READ_LIST_FIELD(opclass, opclass, opclass); + READ_INT_FIELD(location, location, location); + return node; +} + +static PartitionSpec * +_readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg) +{ + PartitionSpec *node = makeNode(PartitionSpec); + READ_ENUM_FIELD(PartitionStrategy, strategy, strategy, strategy); + READ_LIST_FIELD(part_params, partParams, partParams); + READ_INT_FIELD(location, location, location); + return node; +} + +static PartitionBoundSpec * +_readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg) +{ + PartitionBoundSpec *node = makeNode(PartitionBoundSpec); + READ_CHAR_FIELD(strategy, strategy, strategy); + READ_BOOL_FIELD(is_default, is_default, is_default); + READ_INT_FIELD(modulus, modulus, modulus); + READ_INT_FIELD(remainder, remainder, remainder); + READ_LIST_FIELD(listdatums, listdatums, listdatums); + READ_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums); + READ_LIST_FIELD(upperdatums, upperdatums, upperdatums); + READ_INT_FIELD(location, location, location); + return node; +} + +static PartitionRangeDatum * +_readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg) +{ + PartitionRangeDatum *node = makeNode(PartitionRangeDatum); + READ_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind); + READ_NODE_PTR_FIELD(value, value, value); + READ_INT_FIELD(location, location, location); + return node; +} + +static PartitionCmd * +_readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg) +{ + PartitionCmd *node = makeNode(PartitionCmd); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name); + READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound); READ_BOOL_FIELD(concurrent, concurrent, concurrent); - READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); - READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc); return node; } -static CreateFunctionStmt * -_readCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) msg) +static RangeTblEntry * +_readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg) { - CreateFunctionStmt *node = makeNode(CreateFunctionStmt); - READ_BOOL_FIELD(is_procedure, is_procedure, is_procedure); - READ_BOOL_FIELD(replace, replace, replace); - READ_LIST_FIELD(funcname, funcname, funcname); - READ_LIST_FIELD(parameters, parameters, parameters); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType); - READ_LIST_FIELD(options, options, options); - READ_NODE_PTR_FIELD(sql_body, sql_body, sql_body); + RangeTblEntry *node = makeNode(RangeTblEntry); + READ_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind); + READ_UINT_FIELD(relid, relid, relid); + READ_CHAR_FIELD(relkind, relkind, relkind); + READ_INT_FIELD(rellockmode, rellockmode, rellockmode); + READ_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample); + READ_UINT_FIELD(perminfoindex, perminfoindex, perminfoindex); + READ_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery); + READ_BOOL_FIELD(security_barrier, security_barrier, security_barrier); + READ_ENUM_FIELD(JoinType, jointype, jointype, jointype); + READ_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols); + READ_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars); + READ_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols); + READ_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols); + READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias); + READ_LIST_FIELD(functions, functions, functions); + READ_BOOL_FIELD(funcordinality, funcordinality, funcordinality); + READ_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc); + READ_LIST_FIELD(values_lists, values_lists, values_lists); + READ_STRING_FIELD(ctename, ctename, ctename); + READ_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup); + READ_BOOL_FIELD(self_reference, self_reference, self_reference); + READ_LIST_FIELD(coltypes, coltypes, coltypes); + READ_LIST_FIELD(coltypmods, coltypmods, coltypmods); + READ_LIST_FIELD(colcollations, colcollations, colcollations); + READ_STRING_FIELD(enrname, enrname, enrname); + READ_FLOAT_FIELD(enrtuples, enrtuples, enrtuples); + READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); + READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref); + READ_BOOL_FIELD(lateral, lateral, lateral); + READ_BOOL_FIELD(inh, inh, inh); + READ_BOOL_FIELD(in_from_cl, inFromCl, inFromCl); + READ_LIST_FIELD(security_quals, securityQuals, securityQuals); return node; } -static AlterFunctionStmt * -_readAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) msg) +static RTEPermissionInfo * +_readRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) msg) { - AlterFunctionStmt *node = makeNode(AlterFunctionStmt); - READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func); - READ_LIST_FIELD(actions, actions, actions); + RTEPermissionInfo *node = makeNode(RTEPermissionInfo); + READ_UINT_FIELD(relid, relid, relid); + READ_BOOL_FIELD(inh, inh, inh); + READ_LONG_FIELD(required_perms, requiredPerms, requiredPerms); + READ_UINT_FIELD(check_as_user, checkAsUser, checkAsUser); + READ_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols); + READ_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols); + READ_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols); return node; } -static DoStmt * -_readDoStmt(OUT_TYPE(DoStmt, DoStmt) msg) +static RangeTblFunction * +_readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg) { - DoStmt *node = makeNode(DoStmt); + RangeTblFunction *node = makeNode(RangeTblFunction); + READ_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr); + READ_INT_FIELD(funccolcount, funccolcount, funccolcount); + READ_LIST_FIELD(funccolnames, funccolnames, funccolnames); + READ_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes); + READ_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods); + READ_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations); + READ_BITMAPSET_FIELD(funcparams, funcparams, funcparams); + return node; +} + +static TableSampleClause * +_readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg) +{ + TableSampleClause *node = makeNode(TableSampleClause); + READ_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler); READ_LIST_FIELD(args, args, args); + READ_EXPR_PTR_FIELD(repeatable, repeatable, repeatable); return node; } -static RenameStmt * -_readRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) msg) +static WithCheckOption * +_readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg) { - RenameStmt *node = makeNode(RenameStmt); - READ_ENUM_FIELD(ObjectType, rename_type, renameType, renameType); - READ_ENUM_FIELD(ObjectType, relation_type, relationType, relationType); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_NODE_PTR_FIELD(object, object, object); - READ_STRING_FIELD(subname, subname, subname); - READ_STRING_FIELD(newname, newname, newname); - READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + WithCheckOption *node = makeNode(WithCheckOption); + READ_ENUM_FIELD(WCOKind, kind, kind, kind); + READ_STRING_FIELD(relname, relname, relname); + READ_STRING_FIELD(polname, polname, polname); + READ_NODE_PTR_FIELD(qual, qual, qual); + READ_BOOL_FIELD(cascaded, cascaded, cascaded); return node; } -static RuleStmt * -_readRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) msg) +static SortGroupClause * +_readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg) { - RuleStmt *node = makeNode(RuleStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_STRING_FIELD(rulename, rulename, rulename); - READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - READ_ENUM_FIELD(CmdType, event, event, event); - READ_BOOL_FIELD(instead, instead, instead); - READ_LIST_FIELD(actions, actions, actions); - READ_BOOL_FIELD(replace, replace, replace); + SortGroupClause *node = makeNode(SortGroupClause); + READ_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef); + READ_UINT_FIELD(eqop, eqop, eqop); + READ_UINT_FIELD(sortop, sortop, sortop); + READ_BOOL_FIELD(nulls_first, nulls_first, nulls_first); + READ_BOOL_FIELD(hashable, hashable, hashable); + return node; +} + +static GroupingSet * +_readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg) +{ + GroupingSet *node = makeNode(GroupingSet); + READ_ENUM_FIELD(GroupingSetKind, kind, kind, kind); + READ_LIST_FIELD(content, content, content); + READ_INT_FIELD(location, location, location); + return node; +} + +static WindowClause * +_readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg) +{ + WindowClause *node = makeNode(WindowClause); + READ_STRING_FIELD(name, name, name); + READ_STRING_FIELD(refname, refname, refname); + READ_LIST_FIELD(partition_clause, partitionClause, partitionClause); + READ_LIST_FIELD(order_clause, orderClause, orderClause); + READ_INT_FIELD(frame_options, frameOptions, frameOptions); + READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset); + READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset); + READ_LIST_FIELD(run_condition, runCondition, runCondition); + READ_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc); + READ_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc); + READ_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl); + READ_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc); + READ_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst); + READ_UINT_FIELD(winref, winref, winref); + READ_BOOL_FIELD(copied_order, copiedOrder, copiedOrder); return node; } -static NotifyStmt * -_readNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) msg) +static RowMarkClause * +_readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg) { - NotifyStmt *node = makeNode(NotifyStmt); - READ_STRING_FIELD(conditionname, conditionname, conditionname); - READ_STRING_FIELD(payload, payload, payload); + RowMarkClause *node = makeNode(RowMarkClause); + READ_UINT_FIELD(rti, rti, rti); + READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength); + READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy); + READ_BOOL_FIELD(pushed_down, pushedDown, pushedDown); return node; } -static ListenStmt * -_readListenStmt(OUT_TYPE(ListenStmt, ListenStmt) msg) +static WithClause * +_readWithClause(OUT_TYPE(WithClause, WithClause) msg) { - ListenStmt *node = makeNode(ListenStmt); - READ_STRING_FIELD(conditionname, conditionname, conditionname); + WithClause *node = makeNode(WithClause); + READ_LIST_FIELD(ctes, ctes, ctes); + READ_BOOL_FIELD(recursive, recursive, recursive); + READ_INT_FIELD(location, location, location); return node; } -static UnlistenStmt * -_readUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) msg) +static InferClause * +_readInferClause(OUT_TYPE(InferClause, InferClause) msg) { - UnlistenStmt *node = makeNode(UnlistenStmt); - READ_STRING_FIELD(conditionname, conditionname, conditionname); + InferClause *node = makeNode(InferClause); + READ_LIST_FIELD(index_elems, indexElems, indexElems); + READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + READ_STRING_FIELD(conname, conname, conname); + READ_INT_FIELD(location, location, location); return node; } -static TransactionStmt * -_readTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) msg) +static OnConflictClause * +_readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg) { - TransactionStmt *node = makeNode(TransactionStmt); - READ_ENUM_FIELD(TransactionStmtKind, kind, kind, kind); - READ_LIST_FIELD(options, options, options); - READ_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name); - READ_STRING_FIELD(gid, gid, gid); - READ_BOOL_FIELD(chain, chain, chain); + OnConflictClause *node = makeNode(OnConflictClause); + READ_ENUM_FIELD(OnConflictAction, action, action, action); + READ_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer); + READ_LIST_FIELD(target_list, targetList, targetList); + READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + READ_INT_FIELD(location, location, location); return node; } -static ViewStmt * -_readViewStmt(OUT_TYPE(ViewStmt, ViewStmt) msg) +static CTESearchClause * +_readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg) { - ViewStmt *node = makeNode(ViewStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view); - READ_LIST_FIELD(aliases, aliases, aliases); - READ_NODE_PTR_FIELD(query, query, query); - READ_BOOL_FIELD(replace, replace, replace); - READ_LIST_FIELD(options, options, options); - READ_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption); + CTESearchClause *node = makeNode(CTESearchClause); + READ_LIST_FIELD(search_col_list, search_col_list, search_col_list); + READ_BOOL_FIELD(search_breadth_first, search_breadth_first, search_breadth_first); + READ_STRING_FIELD(search_seq_column, search_seq_column, search_seq_column); + READ_INT_FIELD(location, location, location); return node; } -static LoadStmt * -_readLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) msg) +static CTECycleClause * +_readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg) { - LoadStmt *node = makeNode(LoadStmt); - READ_STRING_FIELD(filename, filename, filename); + CTECycleClause *node = makeNode(CTECycleClause); + READ_LIST_FIELD(cycle_col_list, cycle_col_list, cycle_col_list); + READ_STRING_FIELD(cycle_mark_column, cycle_mark_column, cycle_mark_column); + READ_NODE_PTR_FIELD(cycle_mark_value, cycle_mark_value, cycle_mark_value); + READ_NODE_PTR_FIELD(cycle_mark_default, cycle_mark_default, cycle_mark_default); + READ_STRING_FIELD(cycle_path_column, cycle_path_column, cycle_path_column); + READ_INT_FIELD(location, location, location); + READ_UINT_FIELD(cycle_mark_type, cycle_mark_type, cycle_mark_type); + READ_INT_FIELD(cycle_mark_typmod, cycle_mark_typmod, cycle_mark_typmod); + READ_UINT_FIELD(cycle_mark_collation, cycle_mark_collation, cycle_mark_collation); + READ_UINT_FIELD(cycle_mark_neop, cycle_mark_neop, cycle_mark_neop); return node; } -static CreateDomainStmt * -_readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg) +static CommonTableExpr * +_readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg) { - CreateDomainStmt *node = makeNode(CreateDomainStmt); - READ_LIST_FIELD(domainname, domainname, domainname); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause); - READ_LIST_FIELD(constraints, constraints, constraints); + CommonTableExpr *node = makeNode(CommonTableExpr); + READ_STRING_FIELD(ctename, ctename, ctename); + READ_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames); + READ_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized); + READ_NODE_PTR_FIELD(ctequery, ctequery, ctequery); + READ_SPECIFIC_NODE_PTR_FIELD(CTESearchClause, ctesearch_clause, search_clause, search_clause, search_clause); + READ_SPECIFIC_NODE_PTR_FIELD(CTECycleClause, ctecycle_clause, cycle_clause, cycle_clause, cycle_clause); + READ_INT_FIELD(location, location, location); + READ_BOOL_FIELD(cterecursive, cterecursive, cterecursive); + READ_INT_FIELD(cterefcount, cterefcount, cterefcount); + READ_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames); + READ_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes); + READ_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods); + READ_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations); return node; } -static CreatedbStmt * -_readCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) msg) +static MergeWhenClause * +_readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg) { - CreatedbStmt *node = makeNode(CreatedbStmt); - READ_STRING_FIELD(dbname, dbname, dbname); - READ_LIST_FIELD(options, options, options); + MergeWhenClause *node = makeNode(MergeWhenClause); + READ_BOOL_FIELD(matched, matched, matched); + READ_ENUM_FIELD(CmdType, command_type, commandType, commandType); + READ_ENUM_FIELD(OverridingKind, override, override, override); + READ_NODE_PTR_FIELD(condition, condition, condition); + READ_LIST_FIELD(target_list, targetList, targetList); + READ_LIST_FIELD(values, values, values); return node; } -static DropdbStmt * -_readDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) msg) +static MergeAction * +_readMergeAction(OUT_TYPE(MergeAction, MergeAction) msg) { - DropdbStmt *node = makeNode(DropdbStmt); - READ_STRING_FIELD(dbname, dbname, dbname); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - READ_LIST_FIELD(options, options, options); + MergeAction *node = makeNode(MergeAction); + READ_BOOL_FIELD(matched, matched, matched); + READ_ENUM_FIELD(CmdType, command_type, commandType, commandType); + READ_ENUM_FIELD(OverridingKind, override, override, override); + READ_NODE_PTR_FIELD(qual, qual, qual); + READ_LIST_FIELD(target_list, targetList, targetList); + READ_LIST_FIELD(update_colnos, updateColnos, updateColnos); return node; } -static VacuumStmt * -_readVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) msg) +static TriggerTransition * +_readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg) { - VacuumStmt *node = makeNode(VacuumStmt); - READ_LIST_FIELD(options, options, options); - READ_LIST_FIELD(rels, rels, rels); - READ_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd); + TriggerTransition *node = makeNode(TriggerTransition); + READ_STRING_FIELD(name, name, name); + READ_BOOL_FIELD(is_new, isNew, isNew); + READ_BOOL_FIELD(is_table, isTable, isTable); return node; } -static ExplainStmt * -_readExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) msg) +static JsonOutput * +_readJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) msg) { - ExplainStmt *node = makeNode(ExplainStmt); - READ_NODE_PTR_FIELD(query, query, query); - READ_LIST_FIELD(options, options, options); + JsonOutput *node = makeNode(JsonOutput); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + READ_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning); return node; } -static CreateTableAsStmt * -_readCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) msg) +static JsonKeyValue * +_readJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) msg) { - CreateTableAsStmt *node = makeNode(CreateTableAsStmt); - READ_NODE_PTR_FIELD(query, query, query); - READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into); - READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - READ_BOOL_FIELD(is_select_into, is_select_into, is_select_into); - READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + JsonKeyValue *node = makeNode(JsonKeyValue); + READ_EXPR_PTR_FIELD(key, key, key); + READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, value, value, value); return node; } -static CreateSeqStmt * -_readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg) +static JsonObjectConstructor * +_readJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) msg) { - CreateSeqStmt *node = makeNode(CreateSeqStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence); - READ_LIST_FIELD(options, options, options); - READ_UINT_FIELD(owner_id, ownerId, ownerId); - READ_BOOL_FIELD(for_identity, for_identity, for_identity); - READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + JsonObjectConstructor *node = makeNode(JsonObjectConstructor); + READ_LIST_FIELD(exprs, exprs, exprs); + READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output); + READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + READ_BOOL_FIELD(unique, unique, unique); + READ_INT_FIELD(location, location, location); return node; } -static AlterSeqStmt * -_readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg) +static JsonArrayConstructor * +_readJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) msg) { - AlterSeqStmt *node = makeNode(AlterSeqStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence); - READ_LIST_FIELD(options, options, options); - READ_BOOL_FIELD(for_identity, for_identity, for_identity); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + JsonArrayConstructor *node = makeNode(JsonArrayConstructor); + READ_LIST_FIELD(exprs, exprs, exprs); + READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output); + READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + READ_INT_FIELD(location, location, location); return node; } -static VariableSetStmt * -_readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg) +static JsonArrayQueryConstructor * +_readJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) msg) { - VariableSetStmt *node = makeNode(VariableSetStmt); - READ_ENUM_FIELD(VariableSetKind, kind, kind, kind); - READ_STRING_FIELD(name, name, name); - READ_LIST_FIELD(args, args, args); - READ_BOOL_FIELD(is_local, is_local, is_local); + JsonArrayQueryConstructor *node = makeNode(JsonArrayQueryConstructor); + READ_NODE_PTR_FIELD(query, query, query); + READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output); + READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format); + READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + READ_INT_FIELD(location, location, location); return node; } -static VariableShowStmt * -_readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg) +static JsonAggConstructor * +_readJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) msg) { - VariableShowStmt *node = makeNode(VariableShowStmt); - READ_STRING_FIELD(name, name, name); + JsonAggConstructor *node = makeNode(JsonAggConstructor); + READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output); + READ_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter); + READ_LIST_FIELD(agg_order, agg_order, agg_order); + READ_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over); + READ_INT_FIELD(location, location, location); return node; } -static DiscardStmt * -_readDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) msg) +static JsonObjectAgg * +_readJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) msg) { - DiscardStmt *node = makeNode(DiscardStmt); - READ_ENUM_FIELD(DiscardMode, target, target, target); + JsonObjectAgg *node = makeNode(JsonObjectAgg); + READ_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor); + READ_SPECIFIC_NODE_PTR_FIELD(JsonKeyValue, json_key_value, arg, arg, arg); + READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); + READ_BOOL_FIELD(unique, unique, unique); return node; } -static CreateTrigStmt * -_readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg) +static JsonArrayAgg * +_readJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) msg) { - CreateTrigStmt *node = makeNode(CreateTrigStmt); - READ_BOOL_FIELD(replace, replace, replace); - READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint); - READ_STRING_FIELD(trigname, trigname, trigname); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_LIST_FIELD(funcname, funcname, funcname); - READ_LIST_FIELD(args, args, args); - READ_BOOL_FIELD(row, row, row); - READ_INT_FIELD(timing, timing, timing); - READ_INT_FIELD(events, events, events); - READ_LIST_FIELD(columns, columns, columns); - READ_NODE_PTR_FIELD(when_clause, whenClause, whenClause); - READ_LIST_FIELD(transition_rels, transitionRels, transitionRels); - READ_BOOL_FIELD(deferrable, deferrable, deferrable); - READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel); + JsonArrayAgg *node = makeNode(JsonArrayAgg); + READ_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor); + READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, arg, arg, arg); + READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null); return node; } -static CreatePLangStmt * -_readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg) +static RawStmt * +_readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg) { - CreatePLangStmt *node = makeNode(CreatePLangStmt); - READ_BOOL_FIELD(replace, replace, replace); - READ_STRING_FIELD(plname, plname, plname); - READ_LIST_FIELD(plhandler, plhandler, plhandler); - READ_LIST_FIELD(plinline, plinline, plinline); - READ_LIST_FIELD(plvalidator, plvalidator, plvalidator); - READ_BOOL_FIELD(pltrusted, pltrusted, pltrusted); + RawStmt *node = makeNode(RawStmt); + READ_NODE_PTR_FIELD(stmt, stmt, stmt); + READ_INT_FIELD(stmt_location, stmt_location, stmt_location); + READ_INT_FIELD(stmt_len, stmt_len, stmt_len); return node; } -static CreateRoleStmt * -_readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg) +static InsertStmt * +_readInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) msg) +{ + InsertStmt *node = makeNode(InsertStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_LIST_FIELD(cols, cols, cols); + READ_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt); + READ_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause); + READ_LIST_FIELD(returning_list, returningList, returningList); + READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + READ_ENUM_FIELD(OverridingKind, override, override, override); + return node; +} + +static DeleteStmt * +_readDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) msg) { - CreateRoleStmt *node = makeNode(CreateRoleStmt); - READ_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type); - READ_STRING_FIELD(role, role, role); - READ_LIST_FIELD(options, options, options); + DeleteStmt *node = makeNode(DeleteStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_LIST_FIELD(using_clause, usingClause, usingClause); + READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + READ_LIST_FIELD(returning_list, returningList, returningList); + READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); return node; } -static AlterRoleStmt * -_readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg) +static UpdateStmt * +_readUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) msg) { - AlterRoleStmt *node = makeNode(AlterRoleStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role); - READ_LIST_FIELD(options, options, options); - READ_INT_FIELD(action, action, action); + UpdateStmt *node = makeNode(UpdateStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_LIST_FIELD(target_list, targetList, targetList); + READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + READ_LIST_FIELD(from_clause, fromClause, fromClause); + READ_LIST_FIELD(returning_list, returningList, returningList); + READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); return node; } -static DropRoleStmt * -_readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg) +static MergeStmt * +_readMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) msg) { - DropRoleStmt *node = makeNode(DropRoleStmt); - READ_LIST_FIELD(roles, roles, roles); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + MergeStmt *node = makeNode(MergeStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_NODE_PTR_FIELD(source_relation, sourceRelation, sourceRelation); + READ_NODE_PTR_FIELD(join_condition, joinCondition, joinCondition); + READ_LIST_FIELD(merge_when_clauses, mergeWhenClauses, mergeWhenClauses); + READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); return node; } -static LockStmt * -_readLockStmt(OUT_TYPE(LockStmt, LockStmt) msg) +static SelectStmt * +_readSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) msg) { - LockStmt *node = makeNode(LockStmt); - READ_LIST_FIELD(relations, relations, relations); - READ_INT_FIELD(mode, mode, mode); - READ_BOOL_FIELD(nowait, nowait, nowait); + SelectStmt *node = makeNode(SelectStmt); + READ_LIST_FIELD(distinct_clause, distinctClause, distinctClause); + READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause); + READ_LIST_FIELD(target_list, targetList, targetList); + READ_LIST_FIELD(from_clause, fromClause, fromClause); + READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + READ_LIST_FIELD(group_clause, groupClause, groupClause); + READ_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct); + READ_NODE_PTR_FIELD(having_clause, havingClause, havingClause); + READ_LIST_FIELD(window_clause, windowClause, windowClause); + READ_LIST_FIELD(values_lists, valuesLists, valuesLists); + READ_LIST_FIELD(sort_clause, sortClause, sortClause); + READ_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset); + READ_NODE_PTR_FIELD(limit_count, limitCount, limitCount); + READ_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption); + READ_LIST_FIELD(locking_clause, lockingClause, lockingClause); + READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause); + READ_ENUM_FIELD(SetOperation, op, op, op); + READ_BOOL_FIELD(all, all, all); + READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg); + READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg); return node; } -static ConstraintsSetStmt * -_readConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) msg) +static SetOperationStmt * +_readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg) { - ConstraintsSetStmt *node = makeNode(ConstraintsSetStmt); - READ_LIST_FIELD(constraints, constraints, constraints); - READ_BOOL_FIELD(deferred, deferred, deferred); + SetOperationStmt *node = makeNode(SetOperationStmt); + READ_ENUM_FIELD(SetOperation, op, op, op); + READ_BOOL_FIELD(all, all, all); + READ_NODE_PTR_FIELD(larg, larg, larg); + READ_NODE_PTR_FIELD(rarg, rarg, rarg); + READ_LIST_FIELD(col_types, colTypes, colTypes); + READ_LIST_FIELD(col_typmods, colTypmods, colTypmods); + READ_LIST_FIELD(col_collations, colCollations, colCollations); + READ_LIST_FIELD(group_clauses, groupClauses, groupClauses); return node; } -static ReindexStmt * -_readReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) msg) +static ReturnStmt * +_readReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) msg) { - ReindexStmt *node = makeNode(ReindexStmt); - READ_ENUM_FIELD(ReindexObjectType, kind, kind, kind); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_STRING_FIELD(name, name, name); - READ_LIST_FIELD(params, params, params); + ReturnStmt *node = makeNode(ReturnStmt); + READ_NODE_PTR_FIELD(returnval, returnval, returnval); return node; } -static CheckPointStmt * -_readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg) +static PLAssignStmt * +_readPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) msg) { - CheckPointStmt *node = makeNode(CheckPointStmt); + PLAssignStmt *node = makeNode(PLAssignStmt); + READ_STRING_FIELD(name, name, name); + READ_LIST_FIELD(indirection, indirection, indirection); + READ_INT_FIELD(nnames, nnames, nnames); + READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, val, val, val); + READ_INT_FIELD(location, location, location); return node; } @@ -1624,133 +1855,207 @@ _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg) return node; } -static AlterDatabaseStmt * -_readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg) +static AlterTableStmt * +_readAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) msg) { - AlterDatabaseStmt *node = makeNode(AlterDatabaseStmt); - READ_STRING_FIELD(dbname, dbname, dbname); - READ_LIST_FIELD(options, options, options); + AlterTableStmt *node = makeNode(AlterTableStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_LIST_FIELD(cmds, cmds, cmds); + READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); return node; } -static AlterDatabaseRefreshCollStmt * -_readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg) +static ReplicaIdentityStmt * +_readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg) { - AlterDatabaseRefreshCollStmt *node = makeNode(AlterDatabaseRefreshCollStmt); - READ_STRING_FIELD(dbname, dbname, dbname); + ReplicaIdentityStmt *node = makeNode(ReplicaIdentityStmt); + READ_CHAR_FIELD(identity_type, identity_type, identity_type); + READ_STRING_FIELD(name, name, name); return node; } -static AlterDatabaseSetStmt * -_readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg) +static AlterTableCmd * +_readAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) msg) { - AlterDatabaseSetStmt *node = makeNode(AlterDatabaseSetStmt); - READ_STRING_FIELD(dbname, dbname, dbname); - READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); + AlterTableCmd *node = makeNode(AlterTableCmd); + READ_ENUM_FIELD(AlterTableType, subtype, subtype, subtype); + READ_STRING_FIELD(name, name, name); + READ_INT_FIELD(num, num, num); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner); + READ_NODE_PTR_FIELD(def, def, def); + READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + READ_BOOL_FIELD(recurse, recurse, recurse); return node; } -static AlterRoleSetStmt * -_readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg) +static AlterCollationStmt * +_readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg) { - AlterRoleSetStmt *node = makeNode(AlterRoleSetStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role); - READ_STRING_FIELD(database, database, database); - READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); + AlterCollationStmt *node = makeNode(AlterCollationStmt); + READ_LIST_FIELD(collname, collname, collname); return node; } -static CreateConversionStmt * -_readCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) msg) +static AlterDomainStmt * +_readAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) msg) { - CreateConversionStmt *node = makeNode(CreateConversionStmt); - READ_LIST_FIELD(conversion_name, conversion_name, conversion_name); - READ_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name); - READ_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name); - READ_LIST_FIELD(func_name, func_name, func_name); - READ_BOOL_FIELD(def, def, def); + AlterDomainStmt *node = makeNode(AlterDomainStmt); + READ_CHAR_FIELD(subtype, subtype, subtype); + READ_LIST_FIELD(type_name, typeName, typeName); + READ_STRING_FIELD(name, name, name); + READ_NODE_PTR_FIELD(def, def, def); + READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); return node; } -static CreateCastStmt * -_readCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) msg) +static GrantStmt * +_readGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) msg) { - CreateCastStmt *node = makeNode(CreateCastStmt); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype); - READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func); - READ_ENUM_FIELD(CoercionContext, context, context, context); - READ_BOOL_FIELD(inout, inout, inout); + GrantStmt *node = makeNode(GrantStmt); + READ_BOOL_FIELD(is_grant, is_grant, is_grant); + READ_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype); + READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + READ_LIST_FIELD(objects, objects, objects); + READ_LIST_FIELD(privileges, privileges, privileges); + READ_LIST_FIELD(grantees, grantees, grantees); + READ_BOOL_FIELD(grant_option, grant_option, grant_option); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor); + READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); return node; } -static CreateOpClassStmt * -_readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg) +static ObjectWithArgs * +_readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg) { - CreateOpClassStmt *node = makeNode(CreateOpClassStmt); - READ_LIST_FIELD(opclassname, opclassname, opclassname); - READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); - READ_STRING_FIELD(amname, amname, amname); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype); - READ_LIST_FIELD(items, items, items); - READ_BOOL_FIELD(is_default, isDefault, isDefault); + ObjectWithArgs *node = makeNode(ObjectWithArgs); + READ_LIST_FIELD(objname, objname, objname); + READ_LIST_FIELD(objargs, objargs, objargs); + READ_LIST_FIELD(objfuncargs, objfuncargs, objfuncargs); + READ_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified); return node; } -static CreateOpFamilyStmt * -_readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg) +static AccessPriv * +_readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg) { - CreateOpFamilyStmt *node = makeNode(CreateOpFamilyStmt); - READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); - READ_STRING_FIELD(amname, amname, amname); + AccessPriv *node = makeNode(AccessPriv); + READ_STRING_FIELD(priv_name, priv_name, priv_name); + READ_LIST_FIELD(cols, cols, cols); return node; } -static AlterOpFamilyStmt * -_readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg) +static GrantRoleStmt * +_readGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) msg) { - AlterOpFamilyStmt *node = makeNode(AlterOpFamilyStmt); - READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); - READ_STRING_FIELD(amname, amname, amname); - READ_BOOL_FIELD(is_drop, isDrop, isDrop); - READ_LIST_FIELD(items, items, items); + GrantRoleStmt *node = makeNode(GrantRoleStmt); + READ_LIST_FIELD(granted_roles, granted_roles, granted_roles); + READ_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles); + READ_BOOL_FIELD(is_grant, is_grant, is_grant); + READ_LIST_FIELD(opt, opt, opt); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor); + READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + return node; +} + +static AlterDefaultPrivilegesStmt * +_readAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) msg) +{ + AlterDefaultPrivilegesStmt *node = makeNode(AlterDefaultPrivilegesStmt); + READ_LIST_FIELD(options, options, options); + READ_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action); + return node; +} + +static CopyStmt * +_readCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) msg) +{ + CopyStmt *node = makeNode(CopyStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_NODE_PTR_FIELD(query, query, query); + READ_LIST_FIELD(attlist, attlist, attlist); + READ_BOOL_FIELD(is_from, is_from, is_from); + READ_BOOL_FIELD(is_program, is_program, is_program); + READ_STRING_FIELD(filename, filename, filename); + READ_LIST_FIELD(options, options, options); + READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); return node; } -static PrepareStmt * -_readPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) msg) +static VariableSetStmt * +_readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg) { - PrepareStmt *node = makeNode(PrepareStmt); + VariableSetStmt *node = makeNode(VariableSetStmt); + READ_ENUM_FIELD(VariableSetKind, kind, kind, kind); READ_STRING_FIELD(name, name, name); - READ_LIST_FIELD(argtypes, argtypes, argtypes); - READ_NODE_PTR_FIELD(query, query, query); + READ_LIST_FIELD(args, args, args); + READ_BOOL_FIELD(is_local, is_local, is_local); return node; } -static ExecuteStmt * -_readExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) msg) +static VariableShowStmt * +_readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg) { - ExecuteStmt *node = makeNode(ExecuteStmt); + VariableShowStmt *node = makeNode(VariableShowStmt); READ_STRING_FIELD(name, name, name); - READ_LIST_FIELD(params, params, params); return node; } -static DeallocateStmt * -_readDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) msg) +static CreateStmt * +_readCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) msg) { - DeallocateStmt *node = makeNode(DeallocateStmt); - READ_STRING_FIELD(name, name, name); + CreateStmt *node = makeNode(CreateStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_LIST_FIELD(table_elts, tableElts, tableElts); + READ_LIST_FIELD(inh_relations, inhRelations, inhRelations); + READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound); + READ_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename); + READ_LIST_FIELD(constraints, constraints, constraints); + READ_LIST_FIELD(options, options, options); + READ_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit); + READ_STRING_FIELD(tablespacename, tablespacename, tablespacename); + READ_STRING_FIELD(access_method, accessMethod, accessMethod); + READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); return node; } -static DeclareCursorStmt * -_readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg) +static Constraint * +_readConstraint(OUT_TYPE(Constraint, Constraint) msg) { - DeclareCursorStmt *node = makeNode(DeclareCursorStmt); - READ_STRING_FIELD(portalname, portalname, portalname); - READ_INT_FIELD(options, options, options); - READ_NODE_PTR_FIELD(query, query, query); + Constraint *node = makeNode(Constraint); + READ_ENUM_FIELD(ConstrType, contype, contype, contype); + READ_STRING_FIELD(conname, conname, conname); + READ_BOOL_FIELD(deferrable, deferrable, deferrable); + READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred); + READ_INT_FIELD(location, location, location); + READ_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit); + READ_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr); + READ_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr); + READ_CHAR_FIELD(generated_when, generated_when, generated_when); + READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct); + READ_LIST_FIELD(keys, keys, keys); + READ_LIST_FIELD(including, including, including); + READ_LIST_FIELD(exclusions, exclusions, exclusions); + READ_LIST_FIELD(options, options, options); + READ_STRING_FIELD(indexname, indexname, indexname); + READ_STRING_FIELD(indexspace, indexspace, indexspace); + READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc); + READ_STRING_FIELD(access_method, access_method, access_method); + READ_NODE_PTR_FIELD(where_clause, where_clause, where_clause); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable); + READ_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs); + READ_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs); + READ_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype); + READ_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action); + READ_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action); + READ_LIST_FIELD(fk_del_set_cols, fk_del_set_cols, fk_del_set_cols); + READ_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop); + READ_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid); + READ_BOOL_FIELD(skip_validation, skip_validation, skip_validation); + READ_BOOL_FIELD(initially_valid, initially_valid, initially_valid); return node; } @@ -1774,137 +2079,55 @@ _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg) return node; } -static AlterObjectDependsStmt * -_readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg) -{ - AlterObjectDependsStmt *node = makeNode(AlterObjectDependsStmt); - READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_NODE_PTR_FIELD(object, object, object); - READ_SPECIFIC_NODE_PTR_FIELD(String, string, extname, extname, extname); - READ_BOOL_FIELD(remove, remove, remove); - return node; -} - -static AlterObjectSchemaStmt * -_readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg) -{ - AlterObjectSchemaStmt *node = makeNode(AlterObjectSchemaStmt); - READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_NODE_PTR_FIELD(object, object, object); - READ_STRING_FIELD(newschema, newschema, newschema); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - return node; -} - -static AlterOwnerStmt * -_readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg) -{ - AlterOwnerStmt *node = makeNode(AlterOwnerStmt); - READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_NODE_PTR_FIELD(object, object, object); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner); - return node; -} - -static AlterOperatorStmt * -_readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg) -{ - AlterOperatorStmt *node = makeNode(AlterOperatorStmt); - READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername); - READ_LIST_FIELD(options, options, options); - return node; -} - -static AlterTypeStmt * -_readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg) +static AlterTableSpaceOptionsStmt * +_readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg) { - AlterTypeStmt *node = makeNode(AlterTypeStmt); - READ_LIST_FIELD(type_name, typeName, typeName); + AlterTableSpaceOptionsStmt *node = makeNode(AlterTableSpaceOptionsStmt); + READ_STRING_FIELD(tablespacename, tablespacename, tablespacename); READ_LIST_FIELD(options, options, options); + READ_BOOL_FIELD(is_reset, isReset, isReset); return node; } -static DropOwnedStmt * -_readDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) msg) -{ - DropOwnedStmt *node = makeNode(DropOwnedStmt); - READ_LIST_FIELD(roles, roles, roles); - READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); - return node; -} - -static ReassignOwnedStmt * -_readReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) msg) +static AlterTableMoveAllStmt * +_readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg) { - ReassignOwnedStmt *node = makeNode(ReassignOwnedStmt); + AlterTableMoveAllStmt *node = makeNode(AlterTableMoveAllStmt); + READ_STRING_FIELD(orig_tablespacename, orig_tablespacename, orig_tablespacename); + READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); READ_LIST_FIELD(roles, roles, roles); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole); - return node; -} - -static CompositeTypeStmt * -_readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg) -{ - CompositeTypeStmt *node = makeNode(CompositeTypeStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar); - READ_LIST_FIELD(coldeflist, coldeflist, coldeflist); - return node; -} - -static CreateEnumStmt * -_readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg) -{ - CreateEnumStmt *node = makeNode(CreateEnumStmt); - READ_LIST_FIELD(type_name, typeName, typeName); - READ_LIST_FIELD(vals, vals, vals); - return node; -} - -static CreateRangeStmt * -_readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg) -{ - CreateRangeStmt *node = makeNode(CreateRangeStmt); - READ_LIST_FIELD(type_name, typeName, typeName); - READ_LIST_FIELD(params, params, params); + READ_STRING_FIELD(new_tablespacename, new_tablespacename, new_tablespacename); + READ_BOOL_FIELD(nowait, nowait, nowait); return node; } -static AlterEnumStmt * -_readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg) +static CreateExtensionStmt * +_readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg) { - AlterEnumStmt *node = makeNode(AlterEnumStmt); - READ_LIST_FIELD(type_name, typeName, typeName); - READ_STRING_FIELD(old_val, oldVal, oldVal); - READ_STRING_FIELD(new_val, newVal, newVal); - READ_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor); - READ_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter); - READ_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists); + CreateExtensionStmt *node = makeNode(CreateExtensionStmt); + READ_STRING_FIELD(extname, extname, extname); + READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + READ_LIST_FIELD(options, options, options); return node; } -static AlterTSDictionaryStmt * -_readAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) msg) +static AlterExtensionStmt * +_readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg) { - AlterTSDictionaryStmt *node = makeNode(AlterTSDictionaryStmt); - READ_LIST_FIELD(dictname, dictname, dictname); + AlterExtensionStmt *node = makeNode(AlterExtensionStmt); + READ_STRING_FIELD(extname, extname, extname); READ_LIST_FIELD(options, options, options); return node; } -static AlterTSConfigurationStmt * -_readAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) msg) +static AlterExtensionContentsStmt * +_readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg) { - AlterTSConfigurationStmt *node = makeNode(AlterTSConfigurationStmt); - READ_ENUM_FIELD(AlterTSConfigType, kind, kind, kind); - READ_LIST_FIELD(cfgname, cfgname, cfgname); - READ_LIST_FIELD(tokentype, tokentype, tokentype); - READ_LIST_FIELD(dicts, dicts, dicts); - READ_BOOL_FIELD(override, override, override); - READ_BOOL_FIELD(replace, replace, replace); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + AlterExtensionContentsStmt *node = makeNode(AlterExtensionContentsStmt); + READ_STRING_FIELD(extname, extname, extname); + READ_INT_FIELD(action, action, action); + READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + READ_NODE_PTR_FIELD(object, object, object); return node; } @@ -1952,78 +2175,45 @@ _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerS return node; } -static CreateUserMappingStmt * -_readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg) -{ - CreateUserMappingStmt *node = makeNode(CreateUserMappingStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); - READ_STRING_FIELD(servername, servername, servername); - READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); - READ_LIST_FIELD(options, options, options); - return node; -} - -static AlterUserMappingStmt * -_readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg) -{ - AlterUserMappingStmt *node = makeNode(AlterUserMappingStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); - READ_STRING_FIELD(servername, servername, servername); - READ_LIST_FIELD(options, options, options); - return node; -} - -static DropUserMappingStmt * -_readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg) +static CreateForeignTableStmt * +_readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg) { - DropUserMappingStmt *node = makeNode(DropUserMappingStmt); - READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); + CreateForeignTableStmt *node = makeNode(CreateForeignTableStmt); + READ_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base); READ_STRING_FIELD(servername, servername, servername); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - return node; -} - -static AlterTableSpaceOptionsStmt * -_readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg) -{ - AlterTableSpaceOptionsStmt *node = makeNode(AlterTableSpaceOptionsStmt); - READ_STRING_FIELD(tablespacename, tablespacename, tablespacename); READ_LIST_FIELD(options, options, options); - READ_BOOL_FIELD(is_reset, isReset, isReset); + NodeSetTag(node, T_CreateForeignTableStmt); return node; } -static AlterTableMoveAllStmt * -_readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg) +static CreateUserMappingStmt * +_readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg) { - AlterTableMoveAllStmt *node = makeNode(AlterTableMoveAllStmt); - READ_STRING_FIELD(orig_tablespacename, orig_tablespacename, orig_tablespacename); - READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - READ_LIST_FIELD(roles, roles, roles); - READ_STRING_FIELD(new_tablespacename, new_tablespacename, new_tablespacename); - READ_BOOL_FIELD(nowait, nowait, nowait); + CreateUserMappingStmt *node = makeNode(CreateUserMappingStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); + READ_STRING_FIELD(servername, servername, servername); + READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + READ_LIST_FIELD(options, options, options); return node; } -static SecLabelStmt * -_readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg) +static AlterUserMappingStmt * +_readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg) { - SecLabelStmt *node = makeNode(SecLabelStmt); - READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - READ_NODE_PTR_FIELD(object, object, object); - READ_STRING_FIELD(provider, provider, provider); - READ_STRING_FIELD(label, label, label); + AlterUserMappingStmt *node = makeNode(AlterUserMappingStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); + READ_STRING_FIELD(servername, servername, servername); + READ_LIST_FIELD(options, options, options); return node; } -static CreateForeignTableStmt * -_readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg) +static DropUserMappingStmt * +_readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg) { - CreateForeignTableStmt *node = makeNode(CreateForeignTableStmt); - READ_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base); + DropUserMappingStmt *node = makeNode(DropUserMappingStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user); READ_STRING_FIELD(servername, servername, servername); - READ_LIST_FIELD(options, options, options); - NodeSetTag(node, T_CreateForeignTableStmt); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); return node; } @@ -2040,33 +2230,61 @@ _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSche return node; } -static CreateExtensionStmt * -_readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg) +static CreatePolicyStmt * +_readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg) { - CreateExtensionStmt *node = makeNode(CreateExtensionStmt); - READ_STRING_FIELD(extname, extname, extname); - READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); - READ_LIST_FIELD(options, options, options); + CreatePolicyStmt *node = makeNode(CreatePolicyStmt); + READ_STRING_FIELD(policy_name, policy_name, policy_name); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table); + READ_STRING_FIELD(cmd_name, cmd_name, cmd_name); + READ_BOOL_FIELD(permissive, permissive, permissive); + READ_LIST_FIELD(roles, roles, roles); + READ_NODE_PTR_FIELD(qual, qual, qual); + READ_NODE_PTR_FIELD(with_check, with_check, with_check); return node; } -static AlterExtensionStmt * -_readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg) +static AlterPolicyStmt * +_readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg) { - AlterExtensionStmt *node = makeNode(AlterExtensionStmt); - READ_STRING_FIELD(extname, extname, extname); - READ_LIST_FIELD(options, options, options); + AlterPolicyStmt *node = makeNode(AlterPolicyStmt); + READ_STRING_FIELD(policy_name, policy_name, policy_name); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table); + READ_LIST_FIELD(roles, roles, roles); + READ_NODE_PTR_FIELD(qual, qual, qual); + READ_NODE_PTR_FIELD(with_check, with_check, with_check); return node; } -static AlterExtensionContentsStmt * -_readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg) +static CreateAmStmt * +_readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg) { - AlterExtensionContentsStmt *node = makeNode(AlterExtensionContentsStmt); - READ_STRING_FIELD(extname, extname, extname); - READ_INT_FIELD(action, action, action); - READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); - READ_NODE_PTR_FIELD(object, object, object); + CreateAmStmt *node = makeNode(CreateAmStmt); + READ_STRING_FIELD(amname, amname, amname); + READ_LIST_FIELD(handler_name, handler_name, handler_name); + READ_CHAR_FIELD(amtype, amtype, amtype); + return node; +} + +static CreateTrigStmt * +_readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg) +{ + CreateTrigStmt *node = makeNode(CreateTrigStmt); + READ_BOOL_FIELD(replace, replace, replace); + READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint); + READ_STRING_FIELD(trigname, trigname, trigname); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_LIST_FIELD(funcname, funcname, funcname); + READ_LIST_FIELD(args, args, args); + READ_BOOL_FIELD(row, row, row); + READ_INT_FIELD(timing, timing, timing); + READ_INT_FIELD(events, events, events); + READ_LIST_FIELD(columns, columns, columns); + READ_NODE_PTR_FIELD(when_clause, whenClause, whenClause); + READ_LIST_FIELD(transition_rels, transitionRels, transitionRels); + READ_BOOL_FIELD(deferrable, deferrable, deferrable); + READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel); return node; } @@ -2090,134 +2308,252 @@ _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg) return node; } -static RefreshMatViewStmt * -_readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg) +static CreatePLangStmt * +_readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg) { - RefreshMatViewStmt *node = makeNode(RefreshMatViewStmt); - READ_BOOL_FIELD(concurrent, concurrent, concurrent); - READ_BOOL_FIELD(skip_data, skipData, skipData); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + CreatePLangStmt *node = makeNode(CreatePLangStmt); + READ_BOOL_FIELD(replace, replace, replace); + READ_STRING_FIELD(plname, plname, plname); + READ_LIST_FIELD(plhandler, plhandler, plhandler); + READ_LIST_FIELD(plinline, plinline, plinline); + READ_LIST_FIELD(plvalidator, plvalidator, plvalidator); + READ_BOOL_FIELD(pltrusted, pltrusted, pltrusted); return node; } -static ReplicaIdentityStmt * -_readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg) +static CreateRoleStmt * +_readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg) { - ReplicaIdentityStmt *node = makeNode(ReplicaIdentityStmt); - READ_CHAR_FIELD(identity_type, identity_type, identity_type); - READ_STRING_FIELD(name, name, name); + CreateRoleStmt *node = makeNode(CreateRoleStmt); + READ_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type); + READ_STRING_FIELD(role, role, role); + READ_LIST_FIELD(options, options, options); return node; } -static AlterSystemStmt * -_readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg) +static AlterRoleStmt * +_readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg) { - AlterSystemStmt *node = makeNode(AlterSystemStmt); + AlterRoleStmt *node = makeNode(AlterRoleStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role); + READ_LIST_FIELD(options, options, options); + READ_INT_FIELD(action, action, action); + return node; +} + +static AlterRoleSetStmt * +_readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg) +{ + AlterRoleSetStmt *node = makeNode(AlterRoleSetStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role); + READ_STRING_FIELD(database, database, database); READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); return node; } -static CreatePolicyStmt * -_readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg) +static DropRoleStmt * +_readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg) { - CreatePolicyStmt *node = makeNode(CreatePolicyStmt); - READ_STRING_FIELD(policy_name, policy_name, policy_name); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table); - READ_STRING_FIELD(cmd_name, cmd_name, cmd_name); - READ_BOOL_FIELD(permissive, permissive, permissive); + DropRoleStmt *node = makeNode(DropRoleStmt); READ_LIST_FIELD(roles, roles, roles); - READ_NODE_PTR_FIELD(qual, qual, qual); - READ_NODE_PTR_FIELD(with_check, with_check, with_check); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); return node; } -static AlterPolicyStmt * -_readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg) +static CreateSeqStmt * +_readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg) +{ + CreateSeqStmt *node = makeNode(CreateSeqStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence); + READ_LIST_FIELD(options, options, options); + READ_UINT_FIELD(owner_id, ownerId, ownerId); + READ_BOOL_FIELD(for_identity, for_identity, for_identity); + READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + return node; +} + +static AlterSeqStmt * +_readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg) +{ + AlterSeqStmt *node = makeNode(AlterSeqStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence); + READ_LIST_FIELD(options, options, options); + READ_BOOL_FIELD(for_identity, for_identity, for_identity); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + return node; +} + +static DefineStmt * +_readDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) msg) +{ + DefineStmt *node = makeNode(DefineStmt); + READ_ENUM_FIELD(ObjectType, kind, kind, kind); + READ_BOOL_FIELD(oldstyle, oldstyle, oldstyle); + READ_LIST_FIELD(defnames, defnames, defnames); + READ_LIST_FIELD(args, args, args); + READ_LIST_FIELD(definition, definition, definition); + READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + READ_BOOL_FIELD(replace, replace, replace); + return node; +} + +static CreateDomainStmt * +_readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg) +{ + CreateDomainStmt *node = makeNode(CreateDomainStmt); + READ_LIST_FIELD(domainname, domainname, domainname); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); + READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause); + READ_LIST_FIELD(constraints, constraints, constraints); + return node; +} + +static CreateOpClassStmt * +_readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg) +{ + CreateOpClassStmt *node = makeNode(CreateOpClassStmt); + READ_LIST_FIELD(opclassname, opclassname, opclassname); + READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); + READ_STRING_FIELD(amname, amname, amname); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype); + READ_LIST_FIELD(items, items, items); + READ_BOOL_FIELD(is_default, isDefault, isDefault); + return node; +} + +static CreateOpClassItem * +_readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg) +{ + CreateOpClassItem *node = makeNode(CreateOpClassItem); + READ_INT_FIELD(itemtype, itemtype, itemtype); + READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name); + READ_INT_FIELD(number, number, number); + READ_LIST_FIELD(order_family, order_family, order_family); + READ_LIST_FIELD(class_args, class_args, class_args); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype); + return node; +} + +static CreateOpFamilyStmt * +_readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg) +{ + CreateOpFamilyStmt *node = makeNode(CreateOpFamilyStmt); + READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); + READ_STRING_FIELD(amname, amname, amname); + return node; +} + +static AlterOpFamilyStmt * +_readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg) +{ + AlterOpFamilyStmt *node = makeNode(AlterOpFamilyStmt); + READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname); + READ_STRING_FIELD(amname, amname, amname); + READ_BOOL_FIELD(is_drop, isDrop, isDrop); + READ_LIST_FIELD(items, items, items); + return node; +} + +static DropStmt * +_readDropStmt(OUT_TYPE(DropStmt, DropStmt) msg) { - AlterPolicyStmt *node = makeNode(AlterPolicyStmt); - READ_STRING_FIELD(policy_name, policy_name, policy_name); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table); - READ_LIST_FIELD(roles, roles, roles); - READ_NODE_PTR_FIELD(qual, qual, qual); - READ_NODE_PTR_FIELD(with_check, with_check, with_check); + DropStmt *node = makeNode(DropStmt); + READ_LIST_FIELD(objects, objects, objects); + READ_ENUM_FIELD(ObjectType, remove_type, removeType, removeType); + READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + READ_BOOL_FIELD(concurrent, concurrent, concurrent); return node; } -static CreateTransformStmt * -_readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg) +static TruncateStmt * +_readTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) msg) { - CreateTransformStmt *node = makeNode(CreateTransformStmt); - READ_BOOL_FIELD(replace, replace, replace); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name); - READ_STRING_FIELD(lang, lang, lang); - READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql); - READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql); + TruncateStmt *node = makeNode(TruncateStmt); + READ_LIST_FIELD(relations, relations, relations); + READ_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs); + READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); return node; } -static CreateAmStmt * -_readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg) +static CommentStmt * +_readCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) msg) { - CreateAmStmt *node = makeNode(CreateAmStmt); - READ_STRING_FIELD(amname, amname, amname); - READ_LIST_FIELD(handler_name, handler_name, handler_name); - READ_CHAR_FIELD(amtype, amtype, amtype); + CommentStmt *node = makeNode(CommentStmt); + READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + READ_NODE_PTR_FIELD(object, object, object); + READ_STRING_FIELD(comment, comment, comment); return node; } -static CreatePublicationStmt * -_readCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) msg) +static SecLabelStmt * +_readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg) { - CreatePublicationStmt *node = makeNode(CreatePublicationStmt); - READ_STRING_FIELD(pubname, pubname, pubname); - READ_LIST_FIELD(options, options, options); - READ_LIST_FIELD(pubobjects, pubobjects, pubobjects); - READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables); + SecLabelStmt *node = makeNode(SecLabelStmt); + READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + READ_NODE_PTR_FIELD(object, object, object); + READ_STRING_FIELD(provider, provider, provider); + READ_STRING_FIELD(label, label, label); return node; } -static AlterPublicationStmt * -_readAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) msg) +static DeclareCursorStmt * +_readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg) { - AlterPublicationStmt *node = makeNode(AlterPublicationStmt); - READ_STRING_FIELD(pubname, pubname, pubname); - READ_LIST_FIELD(options, options, options); - READ_LIST_FIELD(pubobjects, pubobjects, pubobjects); - READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables); - READ_ENUM_FIELD(AlterPublicationAction, action, action, action); + DeclareCursorStmt *node = makeNode(DeclareCursorStmt); + READ_STRING_FIELD(portalname, portalname, portalname); + READ_INT_FIELD(options, options, options); + READ_NODE_PTR_FIELD(query, query, query); return node; } -static CreateSubscriptionStmt * -_readCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) msg) +static ClosePortalStmt * +_readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg) { - CreateSubscriptionStmt *node = makeNode(CreateSubscriptionStmt); - READ_STRING_FIELD(subname, subname, subname); - READ_STRING_FIELD(conninfo, conninfo, conninfo); - READ_LIST_FIELD(publication, publication, publication); - READ_LIST_FIELD(options, options, options); + ClosePortalStmt *node = makeNode(ClosePortalStmt); + READ_STRING_FIELD(portalname, portalname, portalname); return node; } -static AlterSubscriptionStmt * -_readAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) msg) +static FetchStmt * +_readFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) msg) { - AlterSubscriptionStmt *node = makeNode(AlterSubscriptionStmt); - READ_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind); - READ_STRING_FIELD(subname, subname, subname); - READ_STRING_FIELD(conninfo, conninfo, conninfo); - READ_LIST_FIELD(publication, publication, publication); - READ_LIST_FIELD(options, options, options); + FetchStmt *node = makeNode(FetchStmt); + READ_ENUM_FIELD(FetchDirection, direction, direction, direction); + READ_LONG_FIELD(how_many, howMany, howMany); + READ_STRING_FIELD(portalname, portalname, portalname); + READ_BOOL_FIELD(ismove, ismove, ismove); return node; } -static DropSubscriptionStmt * -_readDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) msg) +static IndexStmt * +_readIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) msg) { - DropSubscriptionStmt *node = makeNode(DropSubscriptionStmt); - READ_STRING_FIELD(subname, subname, subname); - READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); - READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + IndexStmt *node = makeNode(IndexStmt); + READ_STRING_FIELD(idxname, idxname, idxname); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_STRING_FIELD(access_method, accessMethod, accessMethod); + READ_STRING_FIELD(table_space, tableSpace, tableSpace); + READ_LIST_FIELD(index_params, indexParams, indexParams); + READ_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams); + READ_LIST_FIELD(options, options, options); + READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + READ_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames); + READ_STRING_FIELD(idxcomment, idxcomment, idxcomment); + READ_UINT_FIELD(index_oid, indexOid, indexOid); + READ_UINT_FIELD(old_number, oldNumber, oldNumber); + READ_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid); + READ_UINT_FIELD(old_first_relfilelocator_subid, oldFirstRelfilelocatorSubid, oldFirstRelfilelocatorSubid); + READ_BOOL_FIELD(unique, unique, unique); + READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct); + READ_BOOL_FIELD(primary, primary, primary); + READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint); + READ_BOOL_FIELD(deferrable, deferrable, deferrable); + READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred); + READ_BOOL_FIELD(transformed, transformed, transformed); + READ_BOOL_FIELD(concurrent, concurrent, concurrent); + READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); + READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc); return node; } @@ -2235,21 +2571,12 @@ _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg) return node; } -static AlterCollationStmt * -_readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg) -{ - AlterCollationStmt *node = makeNode(AlterCollationStmt); - READ_LIST_FIELD(collname, collname, collname); - return node; -} - -static CallStmt * -_readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg) +static StatsElem * +_readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg) { - CallStmt *node = makeNode(CallStmt); - READ_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall); - READ_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr); - READ_LIST_FIELD(outargs, outargs, outargs); + StatsElem *node = makeNode(StatsElem); + READ_STRING_FIELD(name, name, name); + READ_NODE_PTR_FIELD(expr, expr, expr); return node; } @@ -2263,721 +2590,528 @@ _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg) return node; } -static A_Expr * -_readAExpr(OUT_TYPE(A_Expr, AExpr) msg) -{ - A_Expr *node = makeNode(A_Expr); - READ_ENUM_FIELD(A_Expr_Kind, kind, kind, kind); - READ_LIST_FIELD(name, name, name); - READ_NODE_PTR_FIELD(lexpr, lexpr, lexpr); - READ_NODE_PTR_FIELD(rexpr, rexpr, rexpr); - READ_INT_FIELD(location, location, location); - return node; -} - -static ColumnRef * -_readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg) -{ - ColumnRef *node = makeNode(ColumnRef); - READ_LIST_FIELD(fields, fields, fields); - READ_INT_FIELD(location, location, location); - return node; -} - -static ParamRef * -_readParamRef(OUT_TYPE(ParamRef, ParamRef) msg) -{ - ParamRef *node = makeNode(ParamRef); - READ_INT_FIELD(number, number, number); - READ_INT_FIELD(location, location, location); - return node; -} - -static FuncCall * -_readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg) +static CreateFunctionStmt * +_readCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) msg) { - FuncCall *node = makeNode(FuncCall); + CreateFunctionStmt *node = makeNode(CreateFunctionStmt); + READ_BOOL_FIELD(is_procedure, is_procedure, is_procedure); + READ_BOOL_FIELD(replace, replace, replace); READ_LIST_FIELD(funcname, funcname, funcname); - READ_LIST_FIELD(args, args, args); - READ_LIST_FIELD(agg_order, agg_order, agg_order); - READ_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter); - READ_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over); - READ_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group); - READ_BOOL_FIELD(agg_star, agg_star, agg_star); - READ_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct); - READ_BOOL_FIELD(func_variadic, func_variadic, func_variadic); - READ_ENUM_FIELD(CoercionForm, funcformat, funcformat, funcformat); - READ_INT_FIELD(location, location, location); + READ_LIST_FIELD(parameters, parameters, parameters); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType); + READ_LIST_FIELD(options, options, options); + READ_NODE_PTR_FIELD(sql_body, sql_body, sql_body); return node; } -static A_Star * -_readAStar(OUT_TYPE(A_Star, AStar) msg) +static FunctionParameter * +_readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg) { - A_Star *node = makeNode(A_Star); + FunctionParameter *node = makeNode(FunctionParameter); + READ_STRING_FIELD(name, name, name); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType); + READ_ENUM_FIELD(FunctionParameterMode, mode, mode, mode); + READ_NODE_PTR_FIELD(defexpr, defexpr, defexpr); return node; } -static A_Indices * -_readAIndices(OUT_TYPE(A_Indices, AIndices) msg) +static AlterFunctionStmt * +_readAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) msg) { - A_Indices *node = makeNode(A_Indices); - READ_BOOL_FIELD(is_slice, is_slice, is_slice); - READ_NODE_PTR_FIELD(lidx, lidx, lidx); - READ_NODE_PTR_FIELD(uidx, uidx, uidx); + AlterFunctionStmt *node = makeNode(AlterFunctionStmt); + READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func); + READ_LIST_FIELD(actions, actions, actions); return node; } -static A_Indirection * -_readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg) +static DoStmt * +_readDoStmt(OUT_TYPE(DoStmt, DoStmt) msg) { - A_Indirection *node = makeNode(A_Indirection); - READ_NODE_PTR_FIELD(arg, arg, arg); - READ_LIST_FIELD(indirection, indirection, indirection); + DoStmt *node = makeNode(DoStmt); + READ_LIST_FIELD(args, args, args); return node; } -static A_ArrayExpr * -_readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg) +static InlineCodeBlock * +_readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg) { - A_ArrayExpr *node = makeNode(A_ArrayExpr); - READ_LIST_FIELD(elements, elements, elements); - READ_INT_FIELD(location, location, location); + InlineCodeBlock *node = makeNode(InlineCodeBlock); + READ_STRING_FIELD(source_text, source_text, source_text); + READ_UINT_FIELD(lang_oid, langOid, langOid); + READ_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted); + READ_BOOL_FIELD(atomic, atomic, atomic); return node; } -static ResTarget * -_readResTarget(OUT_TYPE(ResTarget, ResTarget) msg) +static CallStmt * +_readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg) { - ResTarget *node = makeNode(ResTarget); - READ_STRING_FIELD(name, name, name); - READ_LIST_FIELD(indirection, indirection, indirection); - READ_NODE_PTR_FIELD(val, val, val); - READ_INT_FIELD(location, location, location); + CallStmt *node = makeNode(CallStmt); + READ_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall); + READ_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr); + READ_LIST_FIELD(outargs, outargs, outargs); return node; } - -static MultiAssignRef * -_readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg) + +static CallContext * +_readCallContext(OUT_TYPE(CallContext, CallContext) msg) { - MultiAssignRef *node = makeNode(MultiAssignRef); - READ_NODE_PTR_FIELD(source, source, source); - READ_INT_FIELD(colno, colno, colno); - READ_INT_FIELD(ncolumns, ncolumns, ncolumns); + CallContext *node = makeNode(CallContext); + READ_BOOL_FIELD(atomic, atomic, atomic); return node; } -static TypeCast * -_readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg) +static RenameStmt * +_readRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) msg) { - TypeCast *node = makeNode(TypeCast); - READ_NODE_PTR_FIELD(arg, arg, arg); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - READ_INT_FIELD(location, location, location); + RenameStmt *node = makeNode(RenameStmt); + READ_ENUM_FIELD(ObjectType, rename_type, renameType, renameType); + READ_ENUM_FIELD(ObjectType, relation_type, relationType, relationType); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_NODE_PTR_FIELD(object, object, object); + READ_STRING_FIELD(subname, subname, subname); + READ_STRING_FIELD(newname, newname, newname); + READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); return node; } -static CollateClause * -_readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg) +static AlterObjectDependsStmt * +_readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg) { - CollateClause *node = makeNode(CollateClause); - READ_NODE_PTR_FIELD(arg, arg, arg); - READ_LIST_FIELD(collname, collname, collname); - READ_INT_FIELD(location, location, location); + AlterObjectDependsStmt *node = makeNode(AlterObjectDependsStmt); + READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_NODE_PTR_FIELD(object, object, object); + READ_SPECIFIC_NODE_PTR_FIELD(String, string, extname, extname, extname); + READ_BOOL_FIELD(remove, remove, remove); return node; } -static SortBy * -_readSortBy(OUT_TYPE(SortBy, SortBy) msg) +static AlterObjectSchemaStmt * +_readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg) { - SortBy *node = makeNode(SortBy); - READ_NODE_PTR_FIELD(node, node, node); - READ_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir); - READ_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls); - READ_LIST_FIELD(use_op, useOp, useOp); - READ_INT_FIELD(location, location, location); + AlterObjectSchemaStmt *node = makeNode(AlterObjectSchemaStmt); + READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_NODE_PTR_FIELD(object, object, object); + READ_STRING_FIELD(newschema, newschema, newschema); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); return node; } -static WindowDef * -_readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg) +static AlterOwnerStmt * +_readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg) { - WindowDef *node = makeNode(WindowDef); - READ_STRING_FIELD(name, name, name); - READ_STRING_FIELD(refname, refname, refname); - READ_LIST_FIELD(partition_clause, partitionClause, partitionClause); - READ_LIST_FIELD(order_clause, orderClause, orderClause); - READ_INT_FIELD(frame_options, frameOptions, frameOptions); - READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset); - READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset); - READ_INT_FIELD(location, location, location); + AlterOwnerStmt *node = makeNode(AlterOwnerStmt); + READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_NODE_PTR_FIELD(object, object, object); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner); return node; } -static RangeSubselect * -_readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg) +static AlterOperatorStmt * +_readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg) { - RangeSubselect *node = makeNode(RangeSubselect); - READ_BOOL_FIELD(lateral, lateral, lateral); - READ_NODE_PTR_FIELD(subquery, subquery, subquery); - READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); + AlterOperatorStmt *node = makeNode(AlterOperatorStmt); + READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername); + READ_LIST_FIELD(options, options, options); return node; } -static RangeFunction * -_readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg) +static AlterTypeStmt * +_readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg) { - RangeFunction *node = makeNode(RangeFunction); - READ_BOOL_FIELD(lateral, lateral, lateral); - READ_BOOL_FIELD(ordinality, ordinality, ordinality); - READ_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom); - READ_LIST_FIELD(functions, functions, functions); - READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); - READ_LIST_FIELD(coldeflist, coldeflist, coldeflist); + AlterTypeStmt *node = makeNode(AlterTypeStmt); + READ_LIST_FIELD(type_name, typeName, typeName); + READ_LIST_FIELD(options, options, options); return node; } -static RangeTableSample * -_readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg) +static RuleStmt * +_readRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) msg) { - RangeTableSample *node = makeNode(RangeTableSample); - READ_NODE_PTR_FIELD(relation, relation, relation); - READ_LIST_FIELD(method, method, method); - READ_LIST_FIELD(args, args, args); - READ_NODE_PTR_FIELD(repeatable, repeatable, repeatable); - READ_INT_FIELD(location, location, location); + RuleStmt *node = makeNode(RuleStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_STRING_FIELD(rulename, rulename, rulename); + READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + READ_ENUM_FIELD(CmdType, event, event, event); + READ_BOOL_FIELD(instead, instead, instead); + READ_LIST_FIELD(actions, actions, actions); + READ_BOOL_FIELD(replace, replace, replace); return node; } -static RangeTableFunc * -_readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg) +static NotifyStmt * +_readNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) msg) { - RangeTableFunc *node = makeNode(RangeTableFunc); - READ_BOOL_FIELD(lateral, lateral, lateral); - READ_NODE_PTR_FIELD(docexpr, docexpr, docexpr); - READ_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr); - READ_LIST_FIELD(namespaces, namespaces, namespaces); - READ_LIST_FIELD(columns, columns, columns); - READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); - READ_INT_FIELD(location, location, location); + NotifyStmt *node = makeNode(NotifyStmt); + READ_STRING_FIELD(conditionname, conditionname, conditionname); + READ_STRING_FIELD(payload, payload, payload); return node; } -static RangeTableFuncCol * -_readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg) +static ListenStmt * +_readListenStmt(OUT_TYPE(ListenStmt, ListenStmt) msg) { - RangeTableFuncCol *node = makeNode(RangeTableFuncCol); - READ_STRING_FIELD(colname, colname, colname); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - READ_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality); - READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null); - READ_NODE_PTR_FIELD(colexpr, colexpr, colexpr); - READ_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr); - READ_INT_FIELD(location, location, location); + ListenStmt *node = makeNode(ListenStmt); + READ_STRING_FIELD(conditionname, conditionname, conditionname); return node; } -static TypeName * -_readTypeName(OUT_TYPE(TypeName, TypeName) msg) +static UnlistenStmt * +_readUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) msg) { - TypeName *node = makeNode(TypeName); - READ_LIST_FIELD(names, names, names); - READ_UINT_FIELD(type_oid, typeOid, typeOid); - READ_BOOL_FIELD(setof, setof, setof); - READ_BOOL_FIELD(pct_type, pct_type, pct_type); - READ_LIST_FIELD(typmods, typmods, typmods); - READ_INT_FIELD(typemod, typemod, typemod); - READ_LIST_FIELD(array_bounds, arrayBounds, arrayBounds); - READ_INT_FIELD(location, location, location); + UnlistenStmt *node = makeNode(UnlistenStmt); + READ_STRING_FIELD(conditionname, conditionname, conditionname); return node; } -static ColumnDef * -_readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg) +static TransactionStmt * +_readTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) msg) { - ColumnDef *node = makeNode(ColumnDef); - READ_STRING_FIELD(colname, colname, colname); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - READ_STRING_FIELD(compression, compression, compression); - READ_INT_FIELD(inhcount, inhcount, inhcount); - READ_BOOL_FIELD(is_local, is_local, is_local); - READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null); - READ_BOOL_FIELD(is_from_type, is_from_type, is_from_type); - READ_CHAR_FIELD(storage, storage, storage); - READ_NODE_PTR_FIELD(raw_default, raw_default, raw_default); - READ_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default); - READ_CHAR_FIELD(identity, identity, identity); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence); - READ_CHAR_FIELD(generated, generated, generated); - READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause); - READ_UINT_FIELD(coll_oid, collOid, collOid); - READ_LIST_FIELD(constraints, constraints, constraints); - READ_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions); - READ_INT_FIELD(location, location, location); + TransactionStmt *node = makeNode(TransactionStmt); + READ_ENUM_FIELD(TransactionStmtKind, kind, kind, kind); + READ_LIST_FIELD(options, options, options); + READ_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name); + READ_STRING_FIELD(gid, gid, gid); + READ_BOOL_FIELD(chain, chain, chain); return node; } -static IndexElem * -_readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg) +static CompositeTypeStmt * +_readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg) { - IndexElem *node = makeNode(IndexElem); - READ_STRING_FIELD(name, name, name); - READ_NODE_PTR_FIELD(expr, expr, expr); - READ_STRING_FIELD(indexcolname, indexcolname, indexcolname); - READ_LIST_FIELD(collation, collation, collation); - READ_LIST_FIELD(opclass, opclass, opclass); - READ_LIST_FIELD(opclassopts, opclassopts, opclassopts); - READ_ENUM_FIELD(SortByDir, ordering, ordering, ordering); - READ_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering); + CompositeTypeStmt *node = makeNode(CompositeTypeStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar); + READ_LIST_FIELD(coldeflist, coldeflist, coldeflist); return node; } -static StatsElem * -_readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg) +static CreateEnumStmt * +_readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg) { - StatsElem *node = makeNode(StatsElem); - READ_STRING_FIELD(name, name, name); - READ_NODE_PTR_FIELD(expr, expr, expr); + CreateEnumStmt *node = makeNode(CreateEnumStmt); + READ_LIST_FIELD(type_name, typeName, typeName); + READ_LIST_FIELD(vals, vals, vals); return node; } -static Constraint * -_readConstraint(OUT_TYPE(Constraint, Constraint) msg) +static CreateRangeStmt * +_readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg) { - Constraint *node = makeNode(Constraint); - READ_ENUM_FIELD(ConstrType, contype, contype, contype); - READ_STRING_FIELD(conname, conname, conname); - READ_BOOL_FIELD(deferrable, deferrable, deferrable); - READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred); - READ_INT_FIELD(location, location, location); - READ_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit); - READ_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr); - READ_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr); - READ_CHAR_FIELD(generated_when, generated_when, generated_when); - READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct); - READ_LIST_FIELD(keys, keys, keys); - READ_LIST_FIELD(including, including, including); - READ_LIST_FIELD(exclusions, exclusions, exclusions); - READ_LIST_FIELD(options, options, options); - READ_STRING_FIELD(indexname, indexname, indexname); - READ_STRING_FIELD(indexspace, indexspace, indexspace); - READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc); - READ_STRING_FIELD(access_method, access_method, access_method); - READ_NODE_PTR_FIELD(where_clause, where_clause, where_clause); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable); - READ_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs); - READ_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs); - READ_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype); - READ_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action); - READ_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action); - READ_LIST_FIELD(fk_del_set_cols, fk_del_set_cols, fk_del_set_cols); - READ_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop); - READ_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid); - READ_BOOL_FIELD(skip_validation, skip_validation, skip_validation); - READ_BOOL_FIELD(initially_valid, initially_valid, initially_valid); + CreateRangeStmt *node = makeNode(CreateRangeStmt); + READ_LIST_FIELD(type_name, typeName, typeName); + READ_LIST_FIELD(params, params, params); return node; } -static DefElem * -_readDefElem(OUT_TYPE(DefElem, DefElem) msg) +static AlterEnumStmt * +_readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg) { - DefElem *node = makeNode(DefElem); - READ_STRING_FIELD(defnamespace, defnamespace, defnamespace); - READ_STRING_FIELD(defname, defname, defname); - READ_NODE_PTR_FIELD(arg, arg, arg); - READ_ENUM_FIELD(DefElemAction, defaction, defaction, defaction); - READ_INT_FIELD(location, location, location); + AlterEnumStmt *node = makeNode(AlterEnumStmt); + READ_LIST_FIELD(type_name, typeName, typeName); + READ_STRING_FIELD(old_val, oldVal, oldVal); + READ_STRING_FIELD(new_val, newVal, newVal); + READ_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor); + READ_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter); + READ_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists); return node; } -static RangeTblEntry * -_readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg) +static ViewStmt * +_readViewStmt(OUT_TYPE(ViewStmt, ViewStmt) msg) { - RangeTblEntry *node = makeNode(RangeTblEntry); - READ_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind); - READ_UINT_FIELD(relid, relid, relid); - READ_CHAR_FIELD(relkind, relkind, relkind); - READ_INT_FIELD(rellockmode, rellockmode, rellockmode); - READ_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample); - READ_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery); - READ_BOOL_FIELD(security_barrier, security_barrier, security_barrier); - READ_ENUM_FIELD(JoinType, jointype, jointype, jointype); - READ_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols); - READ_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars); - READ_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols); - READ_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols); - READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias); - READ_LIST_FIELD(functions, functions, functions); - READ_BOOL_FIELD(funcordinality, funcordinality, funcordinality); - READ_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc); - READ_LIST_FIELD(values_lists, values_lists, values_lists); - READ_STRING_FIELD(ctename, ctename, ctename); - READ_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup); - READ_BOOL_FIELD(self_reference, self_reference, self_reference); - READ_LIST_FIELD(coltypes, coltypes, coltypes); - READ_LIST_FIELD(coltypmods, coltypmods, coltypmods); - READ_LIST_FIELD(colcollations, colcollations, colcollations); - READ_STRING_FIELD(enrname, enrname, enrname); - READ_FLOAT_FIELD(enrtuples, enrtuples, enrtuples); - READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias); - READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref); - READ_BOOL_FIELD(lateral, lateral, lateral); - READ_BOOL_FIELD(inh, inh, inh); - READ_BOOL_FIELD(in_from_cl, inFromCl, inFromCl); - READ_UINT_FIELD(required_perms, requiredPerms, requiredPerms); - READ_UINT_FIELD(check_as_user, checkAsUser, checkAsUser); - READ_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols); - READ_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols); - READ_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols); - READ_BITMAPSET_FIELD(extra_updated_cols, extraUpdatedCols, extraUpdatedCols); - READ_LIST_FIELD(security_quals, securityQuals, securityQuals); + ViewStmt *node = makeNode(ViewStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view); + READ_LIST_FIELD(aliases, aliases, aliases); + READ_NODE_PTR_FIELD(query, query, query); + READ_BOOL_FIELD(replace, replace, replace); + READ_LIST_FIELD(options, options, options); + READ_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption); return node; } -static RangeTblFunction * -_readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg) +static LoadStmt * +_readLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) msg) { - RangeTblFunction *node = makeNode(RangeTblFunction); - READ_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr); - READ_INT_FIELD(funccolcount, funccolcount, funccolcount); - READ_LIST_FIELD(funccolnames, funccolnames, funccolnames); - READ_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes); - READ_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods); - READ_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations); - READ_BITMAPSET_FIELD(funcparams, funcparams, funcparams); + LoadStmt *node = makeNode(LoadStmt); + READ_STRING_FIELD(filename, filename, filename); return node; } -static TableSampleClause * -_readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg) +static CreatedbStmt * +_readCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) msg) { - TableSampleClause *node = makeNode(TableSampleClause); - READ_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler); - READ_LIST_FIELD(args, args, args); - READ_EXPR_PTR_FIELD(repeatable, repeatable, repeatable); + CreatedbStmt *node = makeNode(CreatedbStmt); + READ_STRING_FIELD(dbname, dbname, dbname); + READ_LIST_FIELD(options, options, options); return node; } -static WithCheckOption * -_readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg) +static AlterDatabaseStmt * +_readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg) { - WithCheckOption *node = makeNode(WithCheckOption); - READ_ENUM_FIELD(WCOKind, kind, kind, kind); - READ_STRING_FIELD(relname, relname, relname); - READ_STRING_FIELD(polname, polname, polname); - READ_NODE_PTR_FIELD(qual, qual, qual); - READ_BOOL_FIELD(cascaded, cascaded, cascaded); + AlterDatabaseStmt *node = makeNode(AlterDatabaseStmt); + READ_STRING_FIELD(dbname, dbname, dbname); + READ_LIST_FIELD(options, options, options); return node; } -static SortGroupClause * -_readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg) +static AlterDatabaseRefreshCollStmt * +_readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg) { - SortGroupClause *node = makeNode(SortGroupClause); - READ_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef); - READ_UINT_FIELD(eqop, eqop, eqop); - READ_UINT_FIELD(sortop, sortop, sortop); - READ_BOOL_FIELD(nulls_first, nulls_first, nulls_first); - READ_BOOL_FIELD(hashable, hashable, hashable); + AlterDatabaseRefreshCollStmt *node = makeNode(AlterDatabaseRefreshCollStmt); + READ_STRING_FIELD(dbname, dbname, dbname); return node; } -static GroupingSet * -_readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg) +static AlterDatabaseSetStmt * +_readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg) { - GroupingSet *node = makeNode(GroupingSet); - READ_ENUM_FIELD(GroupingSetKind, kind, kind, kind); - READ_LIST_FIELD(content, content, content); - READ_INT_FIELD(location, location, location); + AlterDatabaseSetStmt *node = makeNode(AlterDatabaseSetStmt); + READ_STRING_FIELD(dbname, dbname, dbname); + READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); return node; } -static WindowClause * -_readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg) +static DropdbStmt * +_readDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) msg) { - WindowClause *node = makeNode(WindowClause); - READ_STRING_FIELD(name, name, name); - READ_STRING_FIELD(refname, refname, refname); - READ_LIST_FIELD(partition_clause, partitionClause, partitionClause); - READ_LIST_FIELD(order_clause, orderClause, orderClause); - READ_INT_FIELD(frame_options, frameOptions, frameOptions); - READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset); - READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset); - READ_LIST_FIELD(run_condition, runCondition, runCondition); - READ_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc); - READ_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc); - READ_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl); - READ_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc); - READ_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst); - READ_UINT_FIELD(winref, winref, winref); - READ_BOOL_FIELD(copied_order, copiedOrder, copiedOrder); + DropdbStmt *node = makeNode(DropdbStmt); + READ_STRING_FIELD(dbname, dbname, dbname); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + READ_LIST_FIELD(options, options, options); return node; } -static ObjectWithArgs * -_readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg) +static AlterSystemStmt * +_readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg) { - ObjectWithArgs *node = makeNode(ObjectWithArgs); - READ_LIST_FIELD(objname, objname, objname); - READ_LIST_FIELD(objargs, objargs, objargs); - READ_LIST_FIELD(objfuncargs, objfuncargs, objfuncargs); - READ_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified); + AlterSystemStmt *node = makeNode(AlterSystemStmt); + READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt); return node; } -static AccessPriv * -_readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg) +static ClusterStmt * +_readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg) { - AccessPriv *node = makeNode(AccessPriv); - READ_STRING_FIELD(priv_name, priv_name, priv_name); - READ_LIST_FIELD(cols, cols, cols); + ClusterStmt *node = makeNode(ClusterStmt); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_STRING_FIELD(indexname, indexname, indexname); + READ_LIST_FIELD(params, params, params); return node; } -static CreateOpClassItem * -_readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg) +static VacuumStmt * +_readVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) msg) { - CreateOpClassItem *node = makeNode(CreateOpClassItem); - READ_INT_FIELD(itemtype, itemtype, itemtype); - READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name); - READ_INT_FIELD(number, number, number); - READ_LIST_FIELD(order_family, order_family, order_family); - READ_LIST_FIELD(class_args, class_args, class_args); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype); + VacuumStmt *node = makeNode(VacuumStmt); + READ_LIST_FIELD(options, options, options); + READ_LIST_FIELD(rels, rels, rels); + READ_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd); return node; } -static TableLikeClause * -_readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg) +static VacuumRelation * +_readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg) { - TableLikeClause *node = makeNode(TableLikeClause); + VacuumRelation *node = makeNode(VacuumRelation); READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_UINT_FIELD(options, options, options); - READ_UINT_FIELD(relation_oid, relationOid, relationOid); + READ_UINT_FIELD(oid, oid, oid); + READ_LIST_FIELD(va_cols, va_cols, va_cols); return node; } -static FunctionParameter * -_readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg) +static ExplainStmt * +_readExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) msg) { - FunctionParameter *node = makeNode(FunctionParameter); - READ_STRING_FIELD(name, name, name); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType); - READ_ENUM_FIELD(FunctionParameterMode, mode, mode, mode); - READ_NODE_PTR_FIELD(defexpr, defexpr, defexpr); + ExplainStmt *node = makeNode(ExplainStmt); + READ_NODE_PTR_FIELD(query, query, query); + READ_LIST_FIELD(options, options, options); return node; } -static LockingClause * -_readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg) +static CreateTableAsStmt * +_readCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) msg) { - LockingClause *node = makeNode(LockingClause); - READ_LIST_FIELD(locked_rels, lockedRels, lockedRels); - READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength); - READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy); + CreateTableAsStmt *node = makeNode(CreateTableAsStmt); + READ_NODE_PTR_FIELD(query, query, query); + READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into); + READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype); + READ_BOOL_FIELD(is_select_into, is_select_into, is_select_into); + READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists); return node; } -static RowMarkClause * -_readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg) +static RefreshMatViewStmt * +_readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg) { - RowMarkClause *node = makeNode(RowMarkClause); - READ_UINT_FIELD(rti, rti, rti); - READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength); - READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy); - READ_BOOL_FIELD(pushed_down, pushedDown, pushedDown); + RefreshMatViewStmt *node = makeNode(RefreshMatViewStmt); + READ_BOOL_FIELD(concurrent, concurrent, concurrent); + READ_BOOL_FIELD(skip_data, skipData, skipData); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); return node; } -static XmlSerialize * -_readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg) +static CheckPointStmt * +_readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg) { - XmlSerialize *node = makeNode(XmlSerialize); - READ_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption); - READ_NODE_PTR_FIELD(expr, expr, expr); - READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName); - READ_INT_FIELD(location, location, location); + CheckPointStmt *node = makeNode(CheckPointStmt); return node; } -static WithClause * -_readWithClause(OUT_TYPE(WithClause, WithClause) msg) +static DiscardStmt * +_readDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) msg) { - WithClause *node = makeNode(WithClause); - READ_LIST_FIELD(ctes, ctes, ctes); - READ_BOOL_FIELD(recursive, recursive, recursive); - READ_INT_FIELD(location, location, location); + DiscardStmt *node = makeNode(DiscardStmt); + READ_ENUM_FIELD(DiscardMode, target, target, target); return node; } - -static InferClause * -_readInferClause(OUT_TYPE(InferClause, InferClause) msg) + +static LockStmt * +_readLockStmt(OUT_TYPE(LockStmt, LockStmt) msg) { - InferClause *node = makeNode(InferClause); - READ_LIST_FIELD(index_elems, indexElems, indexElems); - READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - READ_STRING_FIELD(conname, conname, conname); - READ_INT_FIELD(location, location, location); + LockStmt *node = makeNode(LockStmt); + READ_LIST_FIELD(relations, relations, relations); + READ_INT_FIELD(mode, mode, mode); + READ_BOOL_FIELD(nowait, nowait, nowait); return node; } -static OnConflictClause * -_readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg) +static ConstraintsSetStmt * +_readConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) msg) { - OnConflictClause *node = makeNode(OnConflictClause); - READ_ENUM_FIELD(OnConflictAction, action, action, action); - READ_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer); - READ_LIST_FIELD(target_list, targetList, targetList); - READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - READ_INT_FIELD(location, location, location); + ConstraintsSetStmt *node = makeNode(ConstraintsSetStmt); + READ_LIST_FIELD(constraints, constraints, constraints); + READ_BOOL_FIELD(deferred, deferred, deferred); return node; } -static CTESearchClause * -_readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg) +static ReindexStmt * +_readReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) msg) { - CTESearchClause *node = makeNode(CTESearchClause); - READ_LIST_FIELD(search_col_list, search_col_list, search_col_list); - READ_BOOL_FIELD(search_breadth_first, search_breadth_first, search_breadth_first); - READ_STRING_FIELD(search_seq_column, search_seq_column, search_seq_column); - READ_INT_FIELD(location, location, location); + ReindexStmt *node = makeNode(ReindexStmt); + READ_ENUM_FIELD(ReindexObjectType, kind, kind, kind); + READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); + READ_STRING_FIELD(name, name, name); + READ_LIST_FIELD(params, params, params); return node; } -static CTECycleClause * -_readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg) +static CreateConversionStmt * +_readCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) msg) { - CTECycleClause *node = makeNode(CTECycleClause); - READ_LIST_FIELD(cycle_col_list, cycle_col_list, cycle_col_list); - READ_STRING_FIELD(cycle_mark_column, cycle_mark_column, cycle_mark_column); - READ_NODE_PTR_FIELD(cycle_mark_value, cycle_mark_value, cycle_mark_value); - READ_NODE_PTR_FIELD(cycle_mark_default, cycle_mark_default, cycle_mark_default); - READ_STRING_FIELD(cycle_path_column, cycle_path_column, cycle_path_column); - READ_INT_FIELD(location, location, location); - READ_UINT_FIELD(cycle_mark_type, cycle_mark_type, cycle_mark_type); - READ_INT_FIELD(cycle_mark_typmod, cycle_mark_typmod, cycle_mark_typmod); - READ_UINT_FIELD(cycle_mark_collation, cycle_mark_collation, cycle_mark_collation); - READ_UINT_FIELD(cycle_mark_neop, cycle_mark_neop, cycle_mark_neop); + CreateConversionStmt *node = makeNode(CreateConversionStmt); + READ_LIST_FIELD(conversion_name, conversion_name, conversion_name); + READ_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name); + READ_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name); + READ_LIST_FIELD(func_name, func_name, func_name); + READ_BOOL_FIELD(def, def, def); return node; } -static CommonTableExpr * -_readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg) +static CreateCastStmt * +_readCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) msg) { - CommonTableExpr *node = makeNode(CommonTableExpr); - READ_STRING_FIELD(ctename, ctename, ctename); - READ_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames); - READ_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized); - READ_NODE_PTR_FIELD(ctequery, ctequery, ctequery); - READ_SPECIFIC_NODE_PTR_FIELD(CTESearchClause, ctesearch_clause, search_clause, search_clause, search_clause); - READ_SPECIFIC_NODE_PTR_FIELD(CTECycleClause, ctecycle_clause, cycle_clause, cycle_clause, cycle_clause); - READ_INT_FIELD(location, location, location); - READ_BOOL_FIELD(cterecursive, cterecursive, cterecursive); - READ_INT_FIELD(cterefcount, cterefcount, cterefcount); - READ_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames); - READ_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes); - READ_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods); - READ_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations); + CreateCastStmt *node = makeNode(CreateCastStmt); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype); + READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func); + READ_ENUM_FIELD(CoercionContext, context, context, context); + READ_BOOL_FIELD(inout, inout, inout); return node; } -static MergeWhenClause * -_readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg) +static CreateTransformStmt * +_readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg) { - MergeWhenClause *node = makeNode(MergeWhenClause); - READ_BOOL_FIELD(matched, matched, matched); - READ_ENUM_FIELD(CmdType, command_type, commandType, commandType); - READ_ENUM_FIELD(OverridingKind, override, override, override); - READ_NODE_PTR_FIELD(condition, condition, condition); - READ_LIST_FIELD(target_list, targetList, targetList); - READ_LIST_FIELD(values, values, values); + CreateTransformStmt *node = makeNode(CreateTransformStmt); + READ_BOOL_FIELD(replace, replace, replace); + READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name); + READ_STRING_FIELD(lang, lang, lang); + READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql); + READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql); return node; } -static RoleSpec * -_readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg) +static PrepareStmt * +_readPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) msg) { - RoleSpec *node = makeNode(RoleSpec); - READ_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype); - READ_STRING_FIELD(rolename, rolename, rolename); - READ_INT_FIELD(location, location, location); + PrepareStmt *node = makeNode(PrepareStmt); + READ_STRING_FIELD(name, name, name); + READ_LIST_FIELD(argtypes, argtypes, argtypes); + READ_NODE_PTR_FIELD(query, query, query); return node; } -static TriggerTransition * -_readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg) +static ExecuteStmt * +_readExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) msg) { - TriggerTransition *node = makeNode(TriggerTransition); + ExecuteStmt *node = makeNode(ExecuteStmt); READ_STRING_FIELD(name, name, name); - READ_BOOL_FIELD(is_new, isNew, isNew); - READ_BOOL_FIELD(is_table, isTable, isTable); + READ_LIST_FIELD(params, params, params); return node; } -static PartitionElem * -_readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg) +static DeallocateStmt * +_readDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) msg) { - PartitionElem *node = makeNode(PartitionElem); + DeallocateStmt *node = makeNode(DeallocateStmt); READ_STRING_FIELD(name, name, name); - READ_NODE_PTR_FIELD(expr, expr, expr); - READ_LIST_FIELD(collation, collation, collation); - READ_LIST_FIELD(opclass, opclass, opclass); - READ_INT_FIELD(location, location, location); return node; } -static PartitionSpec * -_readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg) +static DropOwnedStmt * +_readDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) msg) { - PartitionSpec *node = makeNode(PartitionSpec); - READ_STRING_FIELD(strategy, strategy, strategy); - READ_LIST_FIELD(part_params, partParams, partParams); - READ_INT_FIELD(location, location, location); + DropOwnedStmt *node = makeNode(DropOwnedStmt); + READ_LIST_FIELD(roles, roles, roles); + READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); return node; } -static PartitionBoundSpec * -_readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg) +static ReassignOwnedStmt * +_readReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) msg) { - PartitionBoundSpec *node = makeNode(PartitionBoundSpec); - READ_CHAR_FIELD(strategy, strategy, strategy); - READ_BOOL_FIELD(is_default, is_default, is_default); - READ_INT_FIELD(modulus, modulus, modulus); - READ_INT_FIELD(remainder, remainder, remainder); - READ_LIST_FIELD(listdatums, listdatums, listdatums); - READ_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums); - READ_LIST_FIELD(upperdatums, upperdatums, upperdatums); - READ_INT_FIELD(location, location, location); + ReassignOwnedStmt *node = makeNode(ReassignOwnedStmt); + READ_LIST_FIELD(roles, roles, roles); + READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole); return node; } -static PartitionRangeDatum * -_readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg) +static AlterTSDictionaryStmt * +_readAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) msg) { - PartitionRangeDatum *node = makeNode(PartitionRangeDatum); - READ_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind); - READ_NODE_PTR_FIELD(value, value, value); - READ_INT_FIELD(location, location, location); + AlterTSDictionaryStmt *node = makeNode(AlterTSDictionaryStmt); + READ_LIST_FIELD(dictname, dictname, dictname); + READ_LIST_FIELD(options, options, options); return node; } -static PartitionCmd * -_readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg) +static AlterTSConfigurationStmt * +_readAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) msg) { - PartitionCmd *node = makeNode(PartitionCmd); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name); - READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound); - READ_BOOL_FIELD(concurrent, concurrent, concurrent); + AlterTSConfigurationStmt *node = makeNode(AlterTSConfigurationStmt); + READ_ENUM_FIELD(AlterTSConfigType, kind, kind, kind); + READ_LIST_FIELD(cfgname, cfgname, cfgname); + READ_LIST_FIELD(tokentype, tokentype, tokentype); + READ_LIST_FIELD(dicts, dicts, dicts); + READ_BOOL_FIELD(override, override, override); + READ_BOOL_FIELD(replace, replace, replace); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); return node; } -static VacuumRelation * -_readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg) +static PublicationTable * +_readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg) { - VacuumRelation *node = makeNode(VacuumRelation); + PublicationTable *node = makeNode(PublicationTable); READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_UINT_FIELD(oid, oid, oid); - READ_LIST_FIELD(va_cols, va_cols, va_cols); + READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); + READ_LIST_FIELD(columns, columns, columns); return node; } @@ -2992,32 +3126,59 @@ _readPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) msg) return node; } -static PublicationTable * -_readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg) +static CreatePublicationStmt * +_readCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) msg) { - PublicationTable *node = makeNode(PublicationTable); - READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation); - READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause); - READ_LIST_FIELD(columns, columns, columns); + CreatePublicationStmt *node = makeNode(CreatePublicationStmt); + READ_STRING_FIELD(pubname, pubname, pubname); + READ_LIST_FIELD(options, options, options); + READ_LIST_FIELD(pubobjects, pubobjects, pubobjects); + READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables); return node; } -static InlineCodeBlock * -_readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg) +static AlterPublicationStmt * +_readAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) msg) { - InlineCodeBlock *node = makeNode(InlineCodeBlock); - READ_STRING_FIELD(source_text, source_text, source_text); - READ_UINT_FIELD(lang_oid, langOid, langOid); - READ_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted); - READ_BOOL_FIELD(atomic, atomic, atomic); + AlterPublicationStmt *node = makeNode(AlterPublicationStmt); + READ_STRING_FIELD(pubname, pubname, pubname); + READ_LIST_FIELD(options, options, options); + READ_LIST_FIELD(pubobjects, pubobjects, pubobjects); + READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables); + READ_ENUM_FIELD(AlterPublicationAction, action, action, action); return node; } -static CallContext * -_readCallContext(OUT_TYPE(CallContext, CallContext) msg) +static CreateSubscriptionStmt * +_readCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) msg) { - CallContext *node = makeNode(CallContext); - READ_BOOL_FIELD(atomic, atomic, atomic); + CreateSubscriptionStmt *node = makeNode(CreateSubscriptionStmt); + READ_STRING_FIELD(subname, subname, subname); + READ_STRING_FIELD(conninfo, conninfo, conninfo); + READ_LIST_FIELD(publication, publication, publication); + READ_LIST_FIELD(options, options, options); + return node; +} + +static AlterSubscriptionStmt * +_readAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) msg) +{ + AlterSubscriptionStmt *node = makeNode(AlterSubscriptionStmt); + READ_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind); + READ_STRING_FIELD(subname, subname, subname); + READ_STRING_FIELD(conninfo, conninfo, conninfo); + READ_LIST_FIELD(publication, publication, publication); + READ_LIST_FIELD(options, options, options); + return node; +} + +static DropSubscriptionStmt * +_readDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) msg) +{ + DropSubscriptionStmt *node = makeNode(DropSubscriptionStmt); + READ_STRING_FIELD(subname, subname, subname); + READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok); + READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior); return node; } diff --git a/parser/include/pg_trace.h b/parser/include/pg_trace.h index 8c63222c..c31bb4a7 100644 --- a/parser/include/pg_trace.h +++ b/parser/include/pg_trace.h @@ -3,7 +3,7 @@ * * Definitions for the PostgreSQL tracing framework * - * Copyright (c) 2006-2022, PostgreSQL Global Development Group + * Copyright (c) 2006-2023, PostgreSQL Global Development Group * * src/include/pg_trace.h * ---------- diff --git a/parser/include/pgstat.h b/parser/include/pgstat.h index 7f21a3d0..c99dd1cd 100644 --- a/parser/include/pgstat.h +++ b/parser/include/pgstat.h @@ -3,7 +3,7 @@ * * Definitions for the PostgreSQL cumulative statistics system. * - * Copyright (c) 2001-2022, PostgreSQL Global Development Group + * Copyright (c) 2001-2023, PostgreSQL Global Development Group * * src/include/pgstat.h * ---------- @@ -48,6 +48,7 @@ typedef enum PgStat_Kind PGSTAT_KIND_ARCHIVER, PGSTAT_KIND_BGWRITER, PGSTAT_KIND_CHECKPOINTER, + PGSTAT_KIND_IO, PGSTAT_KIND_SLRU, PGSTAT_KIND_WAL, } PgStat_Kind; @@ -105,20 +106,11 @@ typedef int64 PgStat_Counter; */ typedef struct PgStat_FunctionCounts { - PgStat_Counter f_numcalls; - instr_time f_total_time; - instr_time f_self_time; + PgStat_Counter numcalls; + instr_time total_time; + instr_time self_time; } PgStat_FunctionCounts; -/* ---------- - * PgStat_BackendFunctionEntry Non-flushed function stats. - * ---------- - */ -typedef struct PgStat_BackendFunctionEntry -{ - PgStat_FunctionCounts f_counts; -} PgStat_BackendFunctionEntry; - /* * Working state needed to accumulate per-function-call timing statistics. */ @@ -132,7 +124,7 @@ typedef struct PgStat_FunctionCallUsage /* Backend-wide total time as of function start */ instr_time save_total; /* system clock as of function start */ - instr_time f_start; + instr_time start; } PgStat_FunctionCallUsage; /* ---------- @@ -159,31 +151,32 @@ typedef struct PgStat_BackendSubEntry * the index AM, while tuples_fetched is the number of tuples successfully * fetched by heap_fetch under the control of simple indexscans for this index. * - * tuples_inserted/updated/deleted/hot_updated count attempted actions, - * regardless of whether the transaction committed. delta_live_tuples, + * tuples_inserted/updated/deleted/hot_updated/newpage_updated count attempted + * actions, regardless of whether the transaction committed. delta_live_tuples, * delta_dead_tuples, and changed_tuples are set depending on commit or abort. * Note that delta_live_tuples and delta_dead_tuples can be negative! * ---------- */ typedef struct PgStat_TableCounts { - PgStat_Counter t_numscans; + PgStat_Counter numscans; - PgStat_Counter t_tuples_returned; - PgStat_Counter t_tuples_fetched; + PgStat_Counter tuples_returned; + PgStat_Counter tuples_fetched; - PgStat_Counter t_tuples_inserted; - PgStat_Counter t_tuples_updated; - PgStat_Counter t_tuples_deleted; - PgStat_Counter t_tuples_hot_updated; - bool t_truncdropped; + PgStat_Counter tuples_inserted; + PgStat_Counter tuples_updated; + PgStat_Counter tuples_deleted; + PgStat_Counter tuples_hot_updated; + PgStat_Counter tuples_newpage_updated; + bool truncdropped; - PgStat_Counter t_delta_live_tuples; - PgStat_Counter t_delta_dead_tuples; - PgStat_Counter t_changed_tuples; + PgStat_Counter delta_live_tuples; + PgStat_Counter delta_dead_tuples; + PgStat_Counter changed_tuples; - PgStat_Counter t_blocks_fetched; - PgStat_Counter t_blocks_hit; + PgStat_Counter blocks_fetched; + PgStat_Counter blocks_hit; } PgStat_TableCounts; /* ---------- @@ -203,10 +196,10 @@ typedef struct PgStat_TableCounts */ typedef struct PgStat_TableStatus { - Oid t_id; /* table's OID */ - bool t_shared; /* is it a shared catalog? */ + Oid id; /* table's OID */ + bool shared; /* is it a shared catalog? */ struct PgStat_TableXactStatus *trans; /* lowest subxact's counts */ - PgStat_TableCounts t_counts; /* event counts to be sent */ + PgStat_TableCounts counts; /* event counts to be sent */ Relation relation; /* rel that is using this entry */ } PgStat_TableStatus; @@ -242,7 +235,7 @@ typedef struct PgStat_TableXactStatus * ------------------------------------------------------------ */ -#define PGSTAT_FILE_FORMAT_ID 0x01A5BCA7 +#define PGSTAT_FILE_FORMAT_ID 0x01A5BCAC typedef struct PgStat_ArchiverStats { @@ -276,56 +269,101 @@ typedef struct PgStat_CheckpointerStats PgStat_Counter buf_fsync_backend; } PgStat_CheckpointerStats; + +/* + * Types related to counting IO operations + */ +typedef enum IOObject +{ + IOOBJECT_RELATION, + IOOBJECT_TEMP_RELATION, +} IOObject; + +#define IOOBJECT_NUM_TYPES (IOOBJECT_TEMP_RELATION + 1) + +typedef enum IOContext +{ + IOCONTEXT_BULKREAD, + IOCONTEXT_BULKWRITE, + IOCONTEXT_NORMAL, + IOCONTEXT_VACUUM, +} IOContext; + +#define IOCONTEXT_NUM_TYPES (IOCONTEXT_VACUUM + 1) + +typedef enum IOOp +{ + IOOP_EVICT, + IOOP_EXTEND, + IOOP_FSYNC, + IOOP_HIT, + IOOP_READ, + IOOP_REUSE, + IOOP_WRITE, + IOOP_WRITEBACK, +} IOOp; + +#define IOOP_NUM_TYPES (IOOP_WRITEBACK + 1) + +typedef struct PgStat_BktypeIO +{ + PgStat_Counter counts[IOOBJECT_NUM_TYPES][IOCONTEXT_NUM_TYPES][IOOP_NUM_TYPES]; + PgStat_Counter times[IOOBJECT_NUM_TYPES][IOCONTEXT_NUM_TYPES][IOOP_NUM_TYPES]; +} PgStat_BktypeIO; + +typedef struct PgStat_IO +{ + TimestampTz stat_reset_timestamp; + PgStat_BktypeIO stats[BACKEND_NUM_TYPES]; +} PgStat_IO; + + typedef struct PgStat_StatDBEntry { - PgStat_Counter n_xact_commit; - PgStat_Counter n_xact_rollback; - PgStat_Counter n_blocks_fetched; - PgStat_Counter n_blocks_hit; - PgStat_Counter n_tuples_returned; - PgStat_Counter n_tuples_fetched; - PgStat_Counter n_tuples_inserted; - PgStat_Counter n_tuples_updated; - PgStat_Counter n_tuples_deleted; + PgStat_Counter xact_commit; + PgStat_Counter xact_rollback; + PgStat_Counter blocks_fetched; + PgStat_Counter blocks_hit; + PgStat_Counter tuples_returned; + PgStat_Counter tuples_fetched; + PgStat_Counter tuples_inserted; + PgStat_Counter tuples_updated; + PgStat_Counter tuples_deleted; TimestampTz last_autovac_time; - PgStat_Counter n_conflict_tablespace; - PgStat_Counter n_conflict_lock; - PgStat_Counter n_conflict_snapshot; - PgStat_Counter n_conflict_bufferpin; - PgStat_Counter n_conflict_startup_deadlock; - PgStat_Counter n_temp_files; - PgStat_Counter n_temp_bytes; - PgStat_Counter n_deadlocks; - PgStat_Counter n_checksum_failures; + PgStat_Counter conflict_tablespace; + PgStat_Counter conflict_lock; + PgStat_Counter conflict_snapshot; + PgStat_Counter conflict_logicalslot; + PgStat_Counter conflict_bufferpin; + PgStat_Counter conflict_startup_deadlock; + PgStat_Counter temp_files; + PgStat_Counter temp_bytes; + PgStat_Counter deadlocks; + PgStat_Counter checksum_failures; TimestampTz last_checksum_failure; - PgStat_Counter n_block_read_time; /* times in microseconds */ - PgStat_Counter n_block_write_time; - PgStat_Counter n_sessions; - PgStat_Counter total_session_time; - PgStat_Counter total_active_time; - PgStat_Counter total_idle_in_xact_time; - PgStat_Counter n_sessions_abandoned; - PgStat_Counter n_sessions_fatal; - PgStat_Counter n_sessions_killed; + PgStat_Counter blk_read_time; /* times in microseconds */ + PgStat_Counter blk_write_time; + PgStat_Counter sessions; + PgStat_Counter session_time; + PgStat_Counter active_time; + PgStat_Counter idle_in_transaction_time; + PgStat_Counter sessions_abandoned; + PgStat_Counter sessions_fatal; + PgStat_Counter sessions_killed; TimestampTz stat_reset_timestamp; } PgStat_StatDBEntry; typedef struct PgStat_StatFuncEntry { - PgStat_Counter f_numcalls; + PgStat_Counter numcalls; - PgStat_Counter f_total_time; /* times in microseconds */ - PgStat_Counter f_self_time; + PgStat_Counter total_time; /* times in microseconds */ + PgStat_Counter self_time; } PgStat_StatFuncEntry; typedef struct PgStat_StatReplSlotEntry { - /* - * In PG 15 this field is unused, but not removed, to avoid changing - * PGSTAT_FILE_FORMAT_ID. - */ - NameData slotname_unused; PgStat_Counter spill_txns; PgStat_Counter spill_count; PgStat_Counter spill_bytes; @@ -359,6 +397,7 @@ typedef struct PgStat_StatSubEntry typedef struct PgStat_StatTabEntry { PgStat_Counter numscans; + TimestampTz lastscan; PgStat_Counter tuples_returned; PgStat_Counter tuples_fetched; @@ -367,23 +406,24 @@ typedef struct PgStat_StatTabEntry PgStat_Counter tuples_updated; PgStat_Counter tuples_deleted; PgStat_Counter tuples_hot_updated; + PgStat_Counter tuples_newpage_updated; - PgStat_Counter n_live_tuples; - PgStat_Counter n_dead_tuples; - PgStat_Counter changes_since_analyze; - PgStat_Counter inserts_since_vacuum; + PgStat_Counter live_tuples; + PgStat_Counter dead_tuples; + PgStat_Counter mod_since_analyze; + PgStat_Counter ins_since_vacuum; PgStat_Counter blocks_fetched; PgStat_Counter blocks_hit; - TimestampTz vacuum_timestamp; /* user initiated vacuum */ + TimestampTz last_vacuum_time; /* user initiated vacuum */ PgStat_Counter vacuum_count; - TimestampTz autovac_vacuum_timestamp; /* autovacuum initiated */ - PgStat_Counter autovac_vacuum_count; - TimestampTz analyze_timestamp; /* user initiated */ + TimestampTz last_autovacuum_time; /* autovacuum initiated */ + PgStat_Counter autovacuum_count; + TimestampTz last_analyze_time; /* user initiated */ PgStat_Counter analyze_count; - TimestampTz autovac_analyze_timestamp; /* autovacuum initiated */ - PgStat_Counter autovac_analyze_count; + TimestampTz last_autoanalyze_time; /* autovacuum initiated */ + PgStat_Counter autoanalyze_count; } PgStat_StatTabEntry; typedef struct PgStat_WalStats @@ -399,6 +439,21 @@ typedef struct PgStat_WalStats TimestampTz stat_reset_timestamp; } PgStat_WalStats; +/* + * This struct stores wal-related durations as instr_time, which makes it + * cheaper and easier to accumulate them, by not requiring type + * conversions. During stats flush instr_time will be converted into + * microseconds. + */ +typedef struct PgStat_PendingWalStats +{ + PgStat_Counter wal_buffers_full; + PgStat_Counter wal_write; + PgStat_Counter wal_sync; + instr_time wal_write_time; + instr_time wal_sync_time; +} PgStat_PendingWalStats; + /* * Functions in pgstat.c @@ -421,7 +476,7 @@ extern long pgstat_report_stat(bool force); extern void pgstat_force_next_flush(void); extern void pgstat_reset_counters(void); -extern void pgstat_reset(PgStat_Kind kind, Oid dboid, Oid objectid); +extern void pgstat_reset(PgStat_Kind kind, Oid dboid, Oid objoid); extern void pgstat_reset_of_kind(PgStat_Kind kind); /* stats accessors */ @@ -457,6 +512,29 @@ extern void pgstat_report_checkpointer(void); extern PgStat_CheckpointerStats *pgstat_fetch_stat_checkpointer(void); +/* + * Functions in pgstat_io.c + */ + +extern bool pgstat_bktype_io_stats_valid(PgStat_BktypeIO *backend_io, + BackendType bktype); +extern void pgstat_count_io_op(IOObject io_object, IOContext io_context, IOOp io_op); +extern void pgstat_count_io_op_n(IOObject io_object, IOContext io_context, IOOp io_op, uint32 cnt); +extern instr_time pgstat_prepare_io_time(void); +extern void pgstat_count_io_op_time(IOObject io_object, IOContext io_context, + IOOp io_op, instr_time start_time, uint32 cnt); + +extern PgStat_IO *pgstat_fetch_stat_io(void); +extern const char *pgstat_get_io_context_name(IOContext io_context); +extern const char *pgstat_get_io_object_name(IOObject io_object); + +extern bool pgstat_tracks_io_bktype(BackendType bktype); +extern bool pgstat_tracks_io_object(BackendType bktype, + IOObject io_object, IOContext io_context); +extern bool pgstat_tracks_io_op(BackendType bktype, IOObject io_object, + IOContext io_context, IOOp io_op); + + /* * Functions in pgstat_database.c */ @@ -478,7 +556,8 @@ extern void pgstat_report_connect(Oid dboid); #define pgstat_count_conn_txn_idle_time(n) \ (pgStatTransactionIdleTime += (n)) -extern PgStat_StatDBEntry *pgstat_fetch_stat_dbentry(Oid dbid); +extern PgStat_StatDBEntry *pgstat_fetch_stat_dbentry(Oid dboid); + /* * Functions in pgstat_function.c @@ -493,8 +572,8 @@ extern void pgstat_init_function_usage(struct FunctionCallInfoBaseData *fcinfo, extern void pgstat_end_function_usage(PgStat_FunctionCallUsage *fcu, bool finalize); -extern PgStat_StatFuncEntry *pgstat_fetch_stat_funcentry(Oid funcid); -extern PgStat_BackendFunctionEntry *find_funcstat_entry(Oid func_id); +extern PgStat_StatFuncEntry *pgstat_fetch_stat_funcentry(Oid func_id); +extern PgStat_FunctionCounts *find_funcstat_entry(Oid func_id); /* @@ -503,7 +582,7 @@ extern PgStat_BackendFunctionEntry *find_funcstat_entry(Oid func_id); extern void pgstat_create_relation(Relation rel); extern void pgstat_drop_relation(Relation rel); -extern void pgstat_copy_relation_stats(Relation dstrel, Relation srcrel); +extern void pgstat_copy_relation_stats(Relation dst, Relation src); extern void pgstat_init_relation(Relation rel); extern void pgstat_assoc_relation(Relation rel); @@ -529,41 +608,41 @@ extern void pgstat_report_analyze(Relation rel, #define pgstat_count_heap_scan(rel) \ do { \ if (pgstat_should_count_relation(rel)) \ - (rel)->pgstat_info->t_counts.t_numscans++; \ + (rel)->pgstat_info->counts.numscans++; \ } while (0) #define pgstat_count_heap_getnext(rel) \ do { \ if (pgstat_should_count_relation(rel)) \ - (rel)->pgstat_info->t_counts.t_tuples_returned++; \ + (rel)->pgstat_info->counts.tuples_returned++; \ } while (0) #define pgstat_count_heap_fetch(rel) \ do { \ if (pgstat_should_count_relation(rel)) \ - (rel)->pgstat_info->t_counts.t_tuples_fetched++; \ + (rel)->pgstat_info->counts.tuples_fetched++; \ } while (0) #define pgstat_count_index_scan(rel) \ do { \ if (pgstat_should_count_relation(rel)) \ - (rel)->pgstat_info->t_counts.t_numscans++; \ + (rel)->pgstat_info->counts.numscans++; \ } while (0) #define pgstat_count_index_tuples(rel, n) \ do { \ if (pgstat_should_count_relation(rel)) \ - (rel)->pgstat_info->t_counts.t_tuples_returned += (n); \ + (rel)->pgstat_info->counts.tuples_returned += (n); \ } while (0) #define pgstat_count_buffer_read(rel) \ do { \ if (pgstat_should_count_relation(rel)) \ - (rel)->pgstat_info->t_counts.t_blocks_fetched++; \ + (rel)->pgstat_info->counts.blocks_fetched++; \ } while (0) #define pgstat_count_buffer_hit(rel) \ do { \ if (pgstat_should_count_relation(rel)) \ - (rel)->pgstat_info->t_counts.t_blocks_hit++; \ + (rel)->pgstat_info->counts.blocks_hit++; \ } while (0) extern void pgstat_count_heap_insert(Relation rel, PgStat_Counter n); -extern void pgstat_count_heap_update(Relation rel, bool hot); +extern void pgstat_count_heap_update(Relation rel, bool hot, bool newpage); extern void pgstat_count_heap_delete(Relation rel); extern void pgstat_count_truncate(Relation rel); extern void pgstat_update_heap_dead_tuples(Relation rel, int delta); @@ -575,7 +654,7 @@ extern void pgstat_twophase_postabort(TransactionId xid, uint16 info, extern PgStat_StatTabEntry *pgstat_fetch_stat_tabentry(Oid relid); extern PgStat_StatTabEntry *pgstat_fetch_stat_tabentry_ext(bool shared, - Oid relid); + Oid reloid); extern PgStat_TableStatus *find_tabstat_entry(Oid rel_id); @@ -693,7 +772,7 @@ extern PGDLLIMPORT __thread SessionEndType pgStatSessionEndCause; */ /* updated directly by backends and background processes */ -extern PGDLLIMPORT PgStat_WalStats PendingWalStats; +extern PGDLLIMPORT PgStat_PendingWalStats PendingWalStats; #endif /* PGSTAT_H */ diff --git a/parser/include/pgtime.h b/parser/include/pgtime.h index 1c44be8b..9d4b2efe 100644 --- a/parser/include/pgtime.h +++ b/parser/include/pgtime.h @@ -3,7 +3,7 @@ * pgtime.h * PostgreSQL internal timezone library * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/include/pgtime.h @@ -75,8 +75,8 @@ extern bool pg_tz_acceptable(pg_tz *tz); /* these functions are in strftime.c */ -extern size_t pg_strftime(char *s, size_t max, const char *format, - const struct pg_tm *tm); +extern size_t pg_strftime(char *s, size_t maxsize, const char *format, + const struct pg_tm *t); /* these functions and variables are in pgtz.c */ diff --git a/parser/include/pl_gram.h b/parser/include/pl_gram.h index 63d2f09d..4448e806 100644 --- a/parser/include/pl_gram.h +++ b/parser/include/pl_gram.h @@ -138,36 +138,37 @@ K_PG_EXCEPTION_CONTEXT = 354, K_PG_EXCEPTION_DETAIL = 355, K_PG_EXCEPTION_HINT = 356, - K_PRINT_STRICT_PARAMS = 357, - K_PRIOR = 358, - K_QUERY = 359, - K_RAISE = 360, - K_RELATIVE = 361, - K_RETURN = 362, - K_RETURNED_SQLSTATE = 363, - K_REVERSE = 364, - K_ROLLBACK = 365, - K_ROW_COUNT = 366, - K_ROWTYPE = 367, - K_SCHEMA = 368, - K_SCHEMA_NAME = 369, - K_SCROLL = 370, - K_SLICE = 371, - K_SQLSTATE = 372, - K_STACKED = 373, - K_STRICT = 374, - K_TABLE = 375, - K_TABLE_NAME = 376, - K_THEN = 377, - K_TO = 378, - K_TYPE = 379, - K_USE_COLUMN = 380, - K_USE_VARIABLE = 381, - K_USING = 382, - K_VARIABLE_CONFLICT = 383, - K_WARNING = 384, - K_WHEN = 385, - K_WHILE = 386 + K_PG_ROUTINE_OID = 357, + K_PRINT_STRICT_PARAMS = 358, + K_PRIOR = 359, + K_QUERY = 360, + K_RAISE = 361, + K_RELATIVE = 362, + K_RETURN = 363, + K_RETURNED_SQLSTATE = 364, + K_REVERSE = 365, + K_ROLLBACK = 366, + K_ROW_COUNT = 367, + K_ROWTYPE = 368, + K_SCHEMA = 369, + K_SCHEMA_NAME = 370, + K_SCROLL = 371, + K_SLICE = 372, + K_SQLSTATE = 373, + K_STACKED = 374, + K_STRICT = 375, + K_TABLE = 376, + K_TABLE_NAME = 377, + K_THEN = 378, + K_TO = 379, + K_TYPE = 380, + K_USE_COLUMN = 381, + K_USE_VARIABLE = 382, + K_USING = 383, + K_VARIABLE_CONFLICT = 384, + K_WARNING = 385, + K_WHEN = 386, + K_WHILE = 387 }; #endif /* Tokens. */ @@ -270,43 +271,44 @@ #define K_PG_EXCEPTION_CONTEXT 354 #define K_PG_EXCEPTION_DETAIL 355 #define K_PG_EXCEPTION_HINT 356 -#define K_PRINT_STRICT_PARAMS 357 -#define K_PRIOR 358 -#define K_QUERY 359 -#define K_RAISE 360 -#define K_RELATIVE 361 -#define K_RETURN 362 -#define K_RETURNED_SQLSTATE 363 -#define K_REVERSE 364 -#define K_ROLLBACK 365 -#define K_ROW_COUNT 366 -#define K_ROWTYPE 367 -#define K_SCHEMA 368 -#define K_SCHEMA_NAME 369 -#define K_SCROLL 370 -#define K_SLICE 371 -#define K_SQLSTATE 372 -#define K_STACKED 373 -#define K_STRICT 374 -#define K_TABLE 375 -#define K_TABLE_NAME 376 -#define K_THEN 377 -#define K_TO 378 -#define K_TYPE 379 -#define K_USE_COLUMN 380 -#define K_USE_VARIABLE 381 -#define K_USING 382 -#define K_VARIABLE_CONFLICT 383 -#define K_WARNING 384 -#define K_WHEN 385 -#define K_WHILE 386 +#define K_PG_ROUTINE_OID 357 +#define K_PRINT_STRICT_PARAMS 358 +#define K_PRIOR 359 +#define K_QUERY 360 +#define K_RAISE 361 +#define K_RELATIVE 362 +#define K_RETURN 363 +#define K_RETURNED_SQLSTATE 364 +#define K_REVERSE 365 +#define K_ROLLBACK 366 +#define K_ROW_COUNT 367 +#define K_ROWTYPE 368 +#define K_SCHEMA 369 +#define K_SCHEMA_NAME 370 +#define K_SCROLL 371 +#define K_SLICE 372 +#define K_SQLSTATE 373 +#define K_STACKED 374 +#define K_STRICT 375 +#define K_TABLE 376 +#define K_TABLE_NAME 377 +#define K_THEN 378 +#define K_TO 379 +#define K_TYPE 380 +#define K_USE_COLUMN 381 +#define K_USE_VARIABLE 382 +#define K_USING 383 +#define K_VARIABLE_CONFLICT 384 +#define K_WARNING 385 +#define K_WHEN 386 +#define K_WHILE 387 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 120 "pl_gram.y" +#line 117 "pl_gram.y" { core_YYSTYPE core_yystype; /* these fields must match core_YYSTYPE: */ @@ -358,7 +360,7 @@ typedef union YYSTYPE PLpgSQL_case_when *casewhen; } /* Line 1529 of yacc.c. */ -#line 362 "pl_gram.h" +#line 364 "pl_gram.h" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 diff --git a/parser/include/pl_reserved_kwlist.h b/parser/include/pl_reserved_kwlist.h index 9043fbdd..c116abbb 100644 --- a/parser/include/pl_reserved_kwlist.h +++ b/parser/include/pl_reserved_kwlist.h @@ -7,7 +7,7 @@ * by the PG_KEYWORD macro, which is not defined in this file; it can * be defined by the caller for special purposes. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/pl/plpgsql/src/pl_reserved_kwlist.h diff --git a/parser/include/pl_reserved_kwlist_d.h b/parser/include/pl_reserved_kwlist_d.h index 32689ebd..2dd64d39 100644 --- a/parser/include/pl_reserved_kwlist_d.h +++ b/parser/include/pl_reserved_kwlist_d.h @@ -3,7 +3,7 @@ * pl_reserved_kwlist_d.h * List of keywords represented as a ScanKeywordList. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/include/pl_unreserved_kwlist.h b/parser/include/pl_unreserved_kwlist.h index ee2be1b2..3e258a6b 100644 --- a/parser/include/pl_unreserved_kwlist.h +++ b/parser/include/pl_unreserved_kwlist.h @@ -7,7 +7,7 @@ * by the PG_KEYWORD macro, which is not defined in this file; it can * be defined by the caller for special purposes. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/pl/plpgsql/src/pl_unreserved_kwlist.h @@ -85,6 +85,7 @@ PG_KEYWORD("pg_datatype_name", K_PG_DATATYPE_NAME) PG_KEYWORD("pg_exception_context", K_PG_EXCEPTION_CONTEXT) PG_KEYWORD("pg_exception_detail", K_PG_EXCEPTION_DETAIL) PG_KEYWORD("pg_exception_hint", K_PG_EXCEPTION_HINT) +PG_KEYWORD("pg_routine_oid", K_PG_ROUTINE_OID) PG_KEYWORD("print_strict_params", K_PRINT_STRICT_PARAMS) PG_KEYWORD("prior", K_PRIOR) PG_KEYWORD("query", K_QUERY) diff --git a/parser/include/pl_unreserved_kwlist_d.h b/parser/include/pl_unreserved_kwlist_d.h index 3ae9467f..c54eb2d5 100644 --- a/parser/include/pl_unreserved_kwlist_d.h +++ b/parser/include/pl_unreserved_kwlist_d.h @@ -3,7 +3,7 @@ * pl_unreserved_kwlist_d.h * List of keywords represented as a ScanKeywordList. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -80,6 +80,7 @@ static const char UnreservedPLKeywords_kw_string[] = "pg_exception_context\0" "pg_exception_detail\0" "pg_exception_hint\0" + "pg_routine_oid\0" "print_strict_params\0" "prior\0" "query\0" @@ -165,63 +166,64 @@ static const uint16 UnreservedPLKeywords_kw_offsets[] = { 420, 440, 458, - 478, - 484, - 490, - 496, + 473, + 493, + 499, 505, - 512, - 530, - 538, - 547, - 557, - 565, + 511, + 520, + 527, + 545, + 553, + 562, 572, - 584, - 591, - 597, + 580, + 587, + 599, 606, - 614, - 620, - 631, - 636, - 647, - 660, - 678, + 612, + 621, + 629, + 635, + 646, + 651, + 662, + 675, + 693, }; -#define UNRESERVEDPLKEYWORDS_NUM_KEYWORDS 82 +#define UNRESERVEDPLKEYWORDS_NUM_KEYWORDS 83 static int UnreservedPLKeywords_hash_func(const void *key, size_t keylen) { - static const int16 h[165] = { - 58, 0, 26, 32767, 0, 0, 9, 32767, - 0, 32767, 37, 74, 32767, -7, 32767, 39, - 58, -5, 32767, 31, 32767, 32767, 75, -23, - 32767, 0, 32767, 32767, 32767, -14, 32767, 81, - 32767, 32767, 32767, -36, -9, 32767, 32767, 32767, - 40, 32767, 54, 10, 11, 43, 32767, 0, - 52, 105, -22, 15, 32767, -33, 49, -65, - 48, 32767, 32767, 32767, 25, 49, -47, 37, - 21, 32767, 32767, -15, 70, 32767, 32767, 64, - -10, 126, 32767, 51, 0, 36, 32767, -55, - -22, 32767, 32767, 32767, 32767, 32767, -26, -35, - 32767, 61, 32767, 32767, 32767, -23, 98, 48, - 23, 19, 32767, 7, 35, 5, -18, 71, - 28, 5, 32767, 32767, 32767, 74, 32767, 82, - 32767, 0, 32767, 32767, 66, 0, 0, 50, - 32767, 32767, 5, 2, 0, 32767, 55, 32767, - 32767, 45, 79, 32767, 32767, 73, 22, 0, - 103, 32767, -20, 72, 32767, 0, 29, 32767, - 0, 32767, 32767, 0, 50, 28, 32767, -40, - 32767, 32767, 34, 56, 32767, 32767, 32767, 17, - -36, 32767, 67, 32767, 0 + static const int16 h[167] = { + 0, -26, 32767, 0, 74, -36, 32767, 32767, + 93, 0, 35, 14, 34, -65, -42, 78, + -22, 8, 10, 0, 5, 32767, 10, 26, + 32767, 4, 32767, 32767, -81, -9, -25, 32767, + -17, 11, 0, -43, 11, 8, 45, 0, + 32767, 32767, 32767, 12, 0, 32767, 32, 32767, + 0, 32767, -18, 64, 32767, -2, 31, 32767, + 50, 80, -75, 32767, 32767, 32767, 0, 32767, + 32767, 0, 54, 82, 32767, 32767, 69, 60, + 43, 32767, 0, 95, 21, 1, 27, 0, + 120, 32767, -46, 32767, -57, 32767, 32767, 55, + 70, 32767, 28, 32767, 0, -14, -38, 32767, + 57, 0, 32767, 19, 98, 0, 32767, 68, + 32767, 32767, 32767, 32767, -26, 13, 27, 35, + 37, 32767, 49, -44, 65, -35, 0, 32767, + 32767, 32767, 30, 0, 0, 32767, 26, 42, + 7, 32767, 72, -43, 32767, 0, 32767, 89, + 36, 48, 32767, 32, 38, 3, 32767, 49, + 32767, 0, 51, 0, 32767, 73, 32767, 32767, + 79, 32767, 30, 32767, 0, 0, 50, 32767, + 0, 32767, 32767, 32767, 0, 32767, 32767 }; const unsigned char *k = (const unsigned char *) key; uint32 a = 0; - uint32 b = 0; + uint32 b = 1; while (keylen--) { @@ -230,7 +232,7 @@ UnreservedPLKeywords_hash_func(const void *key, size_t keylen) a = a * 257 + c; b = b * 8191 + c; } - return h[a % 165] + h[b % 165]; + return h[a % 167] + h[b % 167]; } static const ScanKeywordList UnreservedPLKeywords = { diff --git a/parser/include/plpgsql.h b/parser/include/plpgsql.h index e29e6cf4..6723e3d4 100644 --- a/parser/include/plpgsql.h +++ b/parser/include/plpgsql.h @@ -3,7 +3,7 @@ * plpgsql.h - Definitions for the PL/pgSQL * procedural language * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -147,6 +147,7 @@ enum typedef enum PLpgSQL_getdiag_kind { PLPGSQL_GETDIAG_ROW_COUNT, + PLPGSQL_GETDIAG_ROUTINE_OID, PLPGSQL_GETDIAG_CONTEXT, PLPGSQL_GETDIAG_ERROR_CONTEXT, PLPGSQL_GETDIAG_ERROR_DETAIL, @@ -1075,7 +1076,6 @@ typedef struct PLpgSQL_execstate /* lookup table to use for executing type casts */ HTAB *cast_hash; - MemoryContext cast_hash_context; /* memory context for statement-lifespan temporary values */ MemoryContext stmt_mcontext; /* current stmt context, or NULL if none */ @@ -1231,11 +1231,11 @@ extern PLpgSQL_plugin **plpgsql_plugin_ptr; /* * Functions in pl_comp.c */ -extern PLpgSQL_function *plpgsql_compile(FunctionCallInfo fcinfo, - bool forValidator); +extern PGDLLEXPORT PLpgSQL_function *plpgsql_compile(FunctionCallInfo fcinfo, + bool forValidator); extern PLpgSQL_function *plpgsql_compile_inline(char *proc_source); -extern void plpgsql_parser_setup(struct ParseState *pstate, - PLpgSQL_expr *expr); +extern PGDLLEXPORT void plpgsql_parser_setup(struct ParseState *pstate, + PLpgSQL_expr *expr); extern bool plpgsql_parse_word(char *word1, const char *yytxt, bool lookup, PLwdatum *wdatum, PLword *word); extern bool plpgsql_parse_dblword(char *word1, char *word2, @@ -1246,9 +1246,9 @@ extern PLpgSQL_type *plpgsql_parse_wordtype(char *ident); extern PLpgSQL_type *plpgsql_parse_cwordtype(List *idents); extern PLpgSQL_type *plpgsql_parse_wordrowtype(char *ident); extern PLpgSQL_type *plpgsql_parse_cwordrowtype(List *idents); -extern PLpgSQL_type *plpgsql_build_datatype(Oid typeOid, int32 typmod, - Oid collation, - TypeName *origtypname); +extern PGDLLEXPORT PLpgSQL_type *plpgsql_build_datatype(Oid typeOid, int32 typmod, + Oid collation, + TypeName *origtypname); extern PLpgSQL_variable *plpgsql_build_variable(const char *refname, int lineno, PLpgSQL_type *dtype, bool add2namespace); @@ -1257,8 +1257,8 @@ extern PLpgSQL_rec *plpgsql_build_record(const char *refname, int lineno, bool add2namespace); extern PLpgSQL_recfield *plpgsql_build_recfield(PLpgSQL_rec *rec, const char *fldname); -extern int plpgsql_recognize_err_condition(const char *condname, - bool allow_sqlstate); +extern PGDLLEXPORT int plpgsql_recognize_err_condition(const char *condname, + bool allow_sqlstate); extern PLpgSQL_condition *plpgsql_parse_err_condition(char *condname); extern void plpgsql_start_datums(void); extern void plpgsql_finish_datums(PLpgSQL_function *function); @@ -1266,11 +1266,6 @@ extern void plpgsql_adddatum(PLpgSQL_datum *newdatum); extern int plpgsql_add_initdatums(int **varnos); extern void plpgsql_HashTableInit(void); -/* - * Functions in pl_handler.c - */ -extern void _PG_init(void); - /* * Functions in pl_exec.c */ @@ -1287,8 +1282,8 @@ extern void plpgsql_exec_event_trigger(PLpgSQL_function *func, extern void plpgsql_xact_cb(XactEvent event, void *arg); extern void plpgsql_subxact_cb(SubXactEvent event, SubTransactionId mySubid, SubTransactionId parentSubid, void *arg); -extern Oid plpgsql_exec_get_datum_type(PLpgSQL_execstate *estate, - PLpgSQL_datum *datum); +extern PGDLLEXPORT Oid plpgsql_exec_get_datum_type(PLpgSQL_execstate *estate, + PLpgSQL_datum *datum); extern void plpgsql_exec_get_datum_type_info(PLpgSQL_execstate *estate, PLpgSQL_datum *datum, Oid *typeId, int32 *typMod, @@ -1303,9 +1298,9 @@ extern void plpgsql_ns_push(const char *label, extern void plpgsql_ns_pop(void); extern PLpgSQL_nsitem *plpgsql_ns_top(void); extern void plpgsql_ns_additem(PLpgSQL_nsitem_type itemtype, int itemno, const char *name); -extern PLpgSQL_nsitem *plpgsql_ns_lookup(PLpgSQL_nsitem *ns_cur, bool localmode, - const char *name1, const char *name2, - const char *name3, int *names_used); +extern PGDLLEXPORT PLpgSQL_nsitem *plpgsql_ns_lookup(PLpgSQL_nsitem *ns_cur, bool localmode, + const char *name1, const char *name2, + const char *name3, int *names_used); extern PLpgSQL_nsitem *plpgsql_ns_lookup_label(PLpgSQL_nsitem *ns_cur, const char *name); extern PLpgSQL_nsitem *plpgsql_ns_find_nearest_loop(PLpgSQL_nsitem *ns_cur); @@ -1313,7 +1308,7 @@ extern PLpgSQL_nsitem *plpgsql_ns_find_nearest_loop(PLpgSQL_nsitem *ns_cur); /* * Other functions in pl_funcs.c */ -extern const char *plpgsql_stmt_typename(PLpgSQL_stmt *stmt); +extern PGDLLEXPORT const char *plpgsql_stmt_typename(PLpgSQL_stmt *stmt); extern const char *plpgsql_getdiag_kindname(PLpgSQL_getdiag_kind kind); extern void plpgsql_free_function_memory(PLpgSQL_function *func); extern void plpgsql_dumptree(PLpgSQL_function *func); diff --git a/parser/include/port.h b/parser/include/port.h index 9f357612..a88d4034 100644 --- a/parser/include/port.h +++ b/parser/include/port.h @@ -3,7 +3,7 @@ * port.h * Header for src/port/ compatibility functions. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/port.h @@ -46,14 +46,14 @@ extern bool pg_set_block(pgsocket sock); /* Portable path handling for Unix/Win32 (in path.c) */ -extern bool has_drive_prefix(const char *filename); +extern bool has_drive_prefix(const char *path); extern char *first_dir_separator(const char *filename); extern char *last_dir_separator(const char *filename); extern char *first_path_var_separator(const char *pathlist); extern void join_path_components(char *ret_path, const char *head, const char *tail); extern void canonicalize_path(char *path); -extern void make_native_path(char *path); +extern void make_native_path(char *filename); extern void cleanup_path(char *path); extern bool path_contains_parent_reference(const char *path); extern bool path_is_relative_and_below_cwd(const char *path); @@ -208,15 +208,24 @@ extern unsigned char pg_ascii_tolower(unsigned char ch); #undef printf #endif -extern int pg_vsnprintf(char *str, size_t count, const char *fmt, va_list args); +extern int pg_vsnprintf(char *str, size_t count, const char *fmt, va_list args) pg_attribute_printf(3, 0); extern int pg_snprintf(char *str, size_t count, const char *fmt,...) pg_attribute_printf(3, 4); -extern int pg_vsprintf(char *str, const char *fmt, va_list args); +extern int pg_vsprintf(char *str, const char *fmt, va_list args) pg_attribute_printf(2, 0); extern int pg_sprintf(char *str, const char *fmt,...) pg_attribute_printf(2, 3); -extern int pg_vfprintf(FILE *stream, const char *fmt, va_list args); +extern int pg_vfprintf(FILE *stream, const char *fmt, va_list args) pg_attribute_printf(2, 0); extern int pg_fprintf(FILE *stream, const char *fmt,...) pg_attribute_printf(2, 3); -extern int pg_vprintf(const char *fmt, va_list args); +extern int pg_vprintf(const char *fmt, va_list args) pg_attribute_printf(1, 0); extern int pg_printf(const char *fmt,...) pg_attribute_printf(1, 2); +#ifndef WIN32 +/* + * We add a pg_ prefix as a warning that the Windows implementations have the + * non-standard side-effect of changing the current file position. + */ +#define pg_pread pread +#define pg_pwrite pwrite +#endif + /* * We use __VA_ARGS__ for printf to prevent replacing references to * the "printf" format archetype in format() attribute declarations. @@ -288,7 +297,6 @@ extern int pgunlink(const char *path); #if defined(WIN32) && !defined(__CYGWIN__) extern int pgsymlink(const char *oldpath, const char *newpath); extern int pgreadlink(const char *path, char *buf, size_t size); -extern bool pgwin32_is_junction(const char *path); #define symlink(oldpath, newpath) pgsymlink(oldpath, newpath) #define readlink(path, buf, size) pgreadlink(path, buf, size) @@ -332,11 +340,6 @@ extern FILE *pgwin32_popen(const char *command, const char *type); #define popen(a,b) pgwin32_popen(a,b) #define pclose(a) _pclose(a) -/* New versions of MingW have gettimeofday, old mingw and msvc don't */ -#ifndef HAVE_GETTIMEOFDAY -/* Last parameter not used */ -extern int gettimeofday(struct timeval *tp, struct timezone *tzp); -#endif #else /* !WIN32 */ /* @@ -370,10 +373,6 @@ extern int gettimeofday(struct timeval *tp, struct timezone *tzp); #define pgoff_t off_t #endif -#ifndef HAVE_FLS -extern int fls(int mask); -#endif - #ifndef HAVE_GETPEEREID /* On Windows, Perl might have incompatible definitions of uid_t and gid_t. */ #ifndef PLPERL_HAVE_UID_GID @@ -401,16 +400,13 @@ extern int getpeereid(int sock, uid_t *uid, gid_t *gid); extern void explicit_bzero(void *buf, size_t len); #endif -#ifndef HAVE_STRTOF -extern float strtof(const char *nptr, char **endptr); -#endif - #ifdef HAVE_BUGGY_STRTOF extern float pg_strtof(const char *nptr, char **endptr); #define strtof(a,b) (pg_strtof((a),(b))) #endif -#ifndef HAVE_LINK +#ifdef WIN32 +/* src/port/win32link.c */ extern int link(const char *src, const char *dst); #endif @@ -424,25 +420,6 @@ extern char *mkdtemp(char *path); extern int inet_aton(const char *cp, struct in_addr *addr); #endif -/* - * Windows and older Unix don't have pread(2) and pwrite(2). We have - * replacement functions, but they have slightly different semantics so we'll - * use a name with a pg_ prefix to avoid confusion. - */ -#ifdef HAVE_PREAD -#define pg_pread pread -#else -extern ssize_t pg_pread(int fd, void *buf, size_t nbyte, off_t offset); -#endif - -#ifdef HAVE_PWRITE -#define pg_pwrite pwrite -#else -extern ssize_t pg_pwrite(int fd, const void *buf, size_t nbyte, off_t offset); -#endif - -/* For pg_pwritev() and pg_preadv(), see port/pg_iovec.h. */ - #if !HAVE_DECL_STRLCAT extern size_t strlcat(char *dst, const char *src, size_t siz); #endif @@ -455,37 +432,6 @@ extern size_t strlcpy(char *dst, const char *src, size_t siz); extern size_t strnlen(const char *str, size_t maxlen); #endif -#ifndef HAVE_SETENV -extern int setenv(const char *name, const char *value, int overwrite); -#endif - -#ifndef HAVE_UNSETENV -extern int unsetenv(const char *name); -#endif - -#ifndef HAVE_DLOPEN -extern void *dlopen(const char *file, int mode); -extern void *dlsym(void *handle, const char *symbol); -extern int dlclose(void *handle); -extern char *dlerror(void); -#endif - -/* - * In some older systems, the RTLD_NOW flag isn't defined and the mode - * argument to dlopen must always be 1. - */ -#if !HAVE_DECL_RTLD_NOW -#define RTLD_NOW 1 -#endif - -/* - * The RTLD_GLOBAL flag is wanted if available, but it doesn't exist - * everywhere. If it doesn't exist, set it to 0 so it has no effect. - */ -#if !HAVE_DECL_RTLD_GLOBAL -#define RTLD_GLOBAL 0 -#endif - /* thread.c */ #ifndef WIN32 extern bool pg_get_user_name(uid_t user_id, char *buffer, size_t buflen); @@ -506,7 +452,7 @@ extern void qsort_arg(void *base, size_t nel, size_t elsize, extern void qsort_interruptible(void *base, size_t nel, size_t elsize, qsort_arg_comparator cmp, void *arg); -extern void *bsearch_arg(const void *key, const void *base, +extern void *bsearch_arg(const void *key, const void *base0, size_t nmemb, size_t size, int (*compar) (const void *, const void *, void *), void *arg); @@ -539,15 +485,36 @@ extern int pg_check_dir(const char *dir); extern int pg_mkdir_p(char *path, int omode); /* port/pqsignal.c */ -typedef void (*pqsigfunc) (int signo); +typedef void (*pqsigfunc) (SIGNAL_ARGS); extern pqsigfunc pqsignal(int signo, pqsigfunc func); /* port/quotes.c */ extern char *escape_single_quotes_ascii(const char *src); /* common/wait_error.c */ -extern char *wait_result_to_str(int exit_status); +extern char *wait_result_to_str(int exitstatus); extern bool wait_result_is_signal(int exit_status, int signum); extern bool wait_result_is_any_signal(int exit_status, bool include_command_not_found); +extern int wait_result_to_exit_code(int exit_status); + +/* + * Interfaces that we assume all Unix system have. We retain individual macros + * for better documentation. + * + * For symlink-related functions, there is often no need to test these macros, + * because we provided basic support on Windows that can work with absolute + * paths to directories. Code that wants to test for complete symlink support + * (including relative paths and non-directories) should be conditional on + * HAVE_READLINK or HAVE_SYMLINK. + */ +#ifndef WIN32 +#define HAVE_GETRLIMIT 1 +#define HAVE_POLL 1 +#define HAVE_POLL_H 1 +#define HAVE_READLINK 1 +#define HAVE_SETSID 1 +#define HAVE_SHM_OPEN 1 +#define HAVE_SYMLINK 1 +#endif #endif /* PG_PORT_H */ diff --git a/parser/include/port/atomics.h b/parser/include/port/atomics.h index 9550e04a..bbff945e 100644 --- a/parser/include/port/atomics.h +++ b/parser/include/port/atomics.h @@ -28,7 +28,7 @@ * For an introduction to using memory barriers within the PostgreSQL backend, * see src/backend/storage/lmgr/README.barrier * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/port/atomics.h @@ -63,13 +63,10 @@ * compiler barrier. * */ -#if defined(__arm__) || defined(__arm) || \ - defined(__aarch64__) || defined(__aarch64) +#if defined(__arm__) || defined(__arm) || defined(__aarch64__) #include "port/atomics/arch-arm.h" #elif defined(__i386__) || defined(__i386) || defined(__x86_64__) #include "port/atomics/arch-x86.h" -#elif defined(__ia64__) || defined(__ia64) -#include "port/atomics/arch-ia64.h" #elif defined(__ppc__) || defined(__powerpc__) || defined(__ppc64__) || defined(__powerpc64__) #include "port/atomics/arch-ppc.h" #elif defined(__hppa) || defined(__hppa__) @@ -95,8 +92,6 @@ #include "port/atomics/generic-gcc.h" #elif defined(_MSC_VER) #include "port/atomics/generic-msvc.h" -#elif defined(__hpux) && defined(__ia64) && !defined(__GNUC__) -#include "port/atomics/generic-acc.h" #elif defined(__SUNPRO_C) && !defined(__GNUC__) #include "port/atomics/generic-sunpro.h" #else diff --git a/parser/include/port/atomics/arch-arm.h b/parser/include/port/atomics/arch-arm.h index 9fe8f1b9..c90bf580 100644 --- a/parser/include/port/atomics/arch-arm.h +++ b/parser/include/port/atomics/arch-arm.h @@ -3,7 +3,7 @@ * arch-arm.h * Atomic operations considerations specific to ARM * - * Portions Copyright (c) 2013-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2013-2023, PostgreSQL Global Development Group * * NOTES: * @@ -21,7 +21,7 @@ * 64 bit atomics on ARM32 are implemented using kernel fallbacks and thus * might be slow, so disable entirely. On ARM64 that problem doesn't exist. */ -#if !defined(__aarch64__) && !defined(__aarch64) +#if !defined(__aarch64__) #define PG_DISABLE_64_BIT_ATOMICS #else /* @@ -29,4 +29,4 @@ * general purpose register is atomic. */ #define PG_HAVE_8BYTE_SINGLE_COPY_ATOMICITY -#endif /* __aarch64__ || __aarch64 */ +#endif /* __aarch64__ */ diff --git a/parser/include/port/atomics/arch-ppc.h b/parser/include/port/atomics/arch-ppc.h index eb645136..d992d4c8 100644 --- a/parser/include/port/atomics/arch-ppc.h +++ b/parser/include/port/atomics/arch-ppc.h @@ -3,7 +3,7 @@ * arch-ppc.h * Atomic operations considerations specific to PowerPC * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES: @@ -90,12 +90,12 @@ pg_atomic_compare_exchange_u32_impl(volatile pg_atomic_uint32 *ptr, (int32) *expected >= PG_INT16_MIN) __asm__ __volatile__( " sync \n" - " lwarx %0,0,%5 \n" + " lwarx %0,0,%5,1 \n" " cmpwi %0,%3 \n" - " bne $+12 \n" /* branch to isync */ + " bne $+12 \n" /* branch to lwsync */ " stwcx. %4,0,%5 \n" " bne $-16 \n" /* branch to lwarx */ - " isync \n" + " lwsync \n" " mfcr %1 \n" : "=&r"(found), "=r"(condition_register), "+m"(ptr->value) : "i"(*expected), "r"(newval), "r"(&ptr->value) @@ -104,12 +104,12 @@ pg_atomic_compare_exchange_u32_impl(volatile pg_atomic_uint32 *ptr, #endif __asm__ __volatile__( " sync \n" - " lwarx %0,0,%5 \n" + " lwarx %0,0,%5,1 \n" " cmpw %0,%3 \n" - " bne $+12 \n" /* branch to isync */ + " bne $+12 \n" /* branch to lwsync */ " stwcx. %4,0,%5 \n" " bne $-16 \n" /* branch to lwarx */ - " isync \n" + " lwsync \n" " mfcr %1 \n" : "=&r"(found), "=r"(condition_register), "+m"(ptr->value) : "r"(*expected), "r"(newval), "r"(&ptr->value) @@ -138,11 +138,11 @@ pg_atomic_fetch_add_u32_impl(volatile pg_atomic_uint32 *ptr, int32 add_) add_ <= PG_INT16_MAX && add_ >= PG_INT16_MIN) __asm__ __volatile__( " sync \n" - " lwarx %1,0,%4 \n" + " lwarx %1,0,%4,1 \n" " addi %0,%1,%3 \n" " stwcx. %0,0,%4 \n" " bne $-12 \n" /* branch to lwarx */ - " isync \n" + " lwsync \n" : "=&r"(_t), "=&b"(res), "+m"(ptr->value) : "i"(add_), "r"(&ptr->value) : "memory", "cc"); @@ -150,11 +150,11 @@ pg_atomic_fetch_add_u32_impl(volatile pg_atomic_uint32 *ptr, int32 add_) #endif __asm__ __volatile__( " sync \n" - " lwarx %1,0,%4 \n" + " lwarx %1,0,%4,1 \n" " add %0,%1,%3 \n" " stwcx. %0,0,%4 \n" " bne $-12 \n" /* branch to lwarx */ - " isync \n" + " lwsync \n" : "=&r"(_t), "=&r"(res), "+m"(ptr->value) : "r"(add_), "r"(&ptr->value) : "memory", "cc"); @@ -180,12 +180,12 @@ pg_atomic_compare_exchange_u64_impl(volatile pg_atomic_uint64 *ptr, (int64) *expected >= PG_INT16_MIN) __asm__ __volatile__( " sync \n" - " ldarx %0,0,%5 \n" + " ldarx %0,0,%5,1 \n" " cmpdi %0,%3 \n" - " bne $+12 \n" /* branch to isync */ + " bne $+12 \n" /* branch to lwsync */ " stdcx. %4,0,%5 \n" " bne $-16 \n" /* branch to ldarx */ - " isync \n" + " lwsync \n" " mfcr %1 \n" : "=&r"(found), "=r"(condition_register), "+m"(ptr->value) : "i"(*expected), "r"(newval), "r"(&ptr->value) @@ -194,12 +194,12 @@ pg_atomic_compare_exchange_u64_impl(volatile pg_atomic_uint64 *ptr, #endif __asm__ __volatile__( " sync \n" - " ldarx %0,0,%5 \n" + " ldarx %0,0,%5,1 \n" " cmpd %0,%3 \n" - " bne $+12 \n" /* branch to isync */ + " bne $+12 \n" /* branch to lwsync */ " stdcx. %4,0,%5 \n" " bne $-16 \n" /* branch to ldarx */ - " isync \n" + " lwsync \n" " mfcr %1 \n" : "=&r"(found), "=r"(condition_register), "+m"(ptr->value) : "r"(*expected), "r"(newval), "r"(&ptr->value) @@ -224,11 +224,11 @@ pg_atomic_fetch_add_u64_impl(volatile pg_atomic_uint64 *ptr, int64 add_) add_ <= PG_INT16_MAX && add_ >= PG_INT16_MIN) __asm__ __volatile__( " sync \n" - " ldarx %1,0,%4 \n" + " ldarx %1,0,%4,1 \n" " addi %0,%1,%3 \n" " stdcx. %0,0,%4 \n" " bne $-12 \n" /* branch to ldarx */ - " isync \n" + " lwsync \n" : "=&r"(_t), "=&b"(res), "+m"(ptr->value) : "i"(add_), "r"(&ptr->value) : "memory", "cc"); @@ -236,11 +236,11 @@ pg_atomic_fetch_add_u64_impl(volatile pg_atomic_uint64 *ptr, int64 add_) #endif __asm__ __volatile__( " sync \n" - " ldarx %1,0,%4 \n" + " ldarx %1,0,%4,1 \n" " add %0,%1,%3 \n" " stdcx. %0,0,%4 \n" " bne $-12 \n" /* branch to ldarx */ - " isync \n" + " lwsync \n" : "=&r"(_t), "=&r"(res), "+m"(ptr->value) : "r"(add_), "r"(&ptr->value) : "memory", "cc"); diff --git a/parser/include/port/atomics/arch-x86.h b/parser/include/port/atomics/arch-x86.h index cef1ba72..bb84b9ba 100644 --- a/parser/include/port/atomics/arch-x86.h +++ b/parser/include/port/atomics/arch-x86.h @@ -7,7 +7,7 @@ * support for xadd and cmpxchg. Given that the 386 isn't supported anywhere * anymore that's not much of a restriction luckily. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES: @@ -140,7 +140,7 @@ pg_spin_delay_impl(void) static inline bool pg_atomic_test_set_flag_impl(volatile pg_atomic_flag *ptr) { - register char _res = 1; + char _res = 1; __asm__ __volatile__( " lock \n" diff --git a/parser/include/port/atomics/fallback.h b/parser/include/port/atomics/fallback.h index 1cdef5f2..a9e8e77c 100644 --- a/parser/include/port/atomics/fallback.h +++ b/parser/include/port/atomics/fallback.h @@ -4,7 +4,7 @@ * Fallback for platforms without spinlock and/or atomics support. Slower * than native atomics support, but not unusably slow. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/port/atomics/fallback.h @@ -93,7 +93,7 @@ typedef struct pg_atomic_flag typedef struct pg_atomic_uint32 { /* Check pg_atomic_flag's definition above for an explanation */ -#if defined(__hppa) || defined(__hppa__) /* HP PA-RISC, GCC and HP compilers */ +#if defined(__hppa) || defined(__hppa__) /* HP PA-RISC */ int sema[4]; #else int sema; @@ -111,7 +111,7 @@ typedef struct pg_atomic_uint32 typedef struct pg_atomic_uint64 { /* Check pg_atomic_flag's definition above for an explanation */ -#if defined(__hppa) || defined(__hppa__) /* HP PA-RISC, GCC and HP compilers */ +#if defined(__hppa) || defined(__hppa__) /* HP PA-RISC */ int sema[4]; #else int sema; diff --git a/parser/include/port/atomics/generic-gcc.h b/parser/include/port/atomics/generic-gcc.h index 6c566aff..da04e9f0 100644 --- a/parser/include/port/atomics/generic-gcc.h +++ b/parser/include/port/atomics/generic-gcc.h @@ -3,7 +3,7 @@ * generic-gcc.h * Atomic operations, implemented using gcc (or compatible) intrinsics. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES: diff --git a/parser/include/port/atomics/generic.h b/parser/include/port/atomics/generic.h index a1f24562..cb5804ad 100644 --- a/parser/include/port/atomics/generic.h +++ b/parser/include/port/atomics/generic.h @@ -4,7 +4,7 @@ * Implement higher level operations based on some lower level atomic * operations. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/port/atomics/generic.h diff --git a/parser/include/port/pg_bitutils.h b/parser/include/port/pg_bitutils.h index 04e58cd1..21a4fa03 100644 --- a/parser/include/port/pg_bitutils.h +++ b/parser/include/port/pg_bitutils.h @@ -4,7 +4,7 @@ * Miscellaneous functions for bit-wise operations. * * - * Copyright (c) 2019-2022, PostgreSQL Global Development Group + * Copyright (c) 2019-2023, PostgreSQL Global Development Group * * src/include/port/pg_bitutils.h * @@ -13,6 +13,21 @@ #ifndef PG_BITUTILS_H #define PG_BITUTILS_H +#ifdef _MSC_VER +#include +#define HAVE_BITSCAN_FORWARD +#define HAVE_BITSCAN_REVERSE + +#else +#if defined(HAVE__BUILTIN_CTZ) +#define HAVE_BITSCAN_FORWARD +#endif + +#if defined(HAVE__BUILTIN_CLZ) +#define HAVE_BITSCAN_REVERSE +#endif +#endif /* _MSC_VER */ + extern PGDLLIMPORT const uint8 pg_leftmost_one_pos[256]; extern PGDLLIMPORT const uint8 pg_rightmost_one_pos[256]; extern PGDLLIMPORT const uint8 pg_number_of_ones[256]; @@ -29,6 +44,13 @@ pg_leftmost_one_pos32(uint32 word) Assert(word != 0); return 31 - __builtin_clz(word); +#elif defined(_MSC_VER) + unsigned long result; + bool non_zero; + + non_zero = _BitScanReverse(&result, word); + Assert(non_zero); + return (int) result; #else int shift = 32 - 8; @@ -57,8 +79,16 @@ pg_leftmost_one_pos64(uint64 word) return 63 - __builtin_clzll(word); #else #error must have a working 64-bit integer datatype -#endif -#else /* !HAVE__BUILTIN_CLZ */ +#endif /* HAVE_LONG_INT_64 */ + +#elif defined(_MSC_VER) && (defined(_M_AMD64) || defined(_M_ARM64)) + unsigned long result; + bool non_zero; + + non_zero = _BitScanReverse64(&result, word); + Assert(non_zero); + return (int) result; +#else int shift = 64 - 8; Assert(word != 0); @@ -82,6 +112,13 @@ pg_rightmost_one_pos32(uint32 word) Assert(word != 0); return __builtin_ctz(word); +#elif defined(_MSC_VER) + unsigned long result; + bool non_zero; + + non_zero = _BitScanForward(&result, word); + Assert(non_zero); + return (int) result; #else int result = 0; @@ -113,8 +150,16 @@ pg_rightmost_one_pos64(uint64 word) return __builtin_ctzll(word); #else #error must have a working 64-bit integer datatype -#endif -#else /* !HAVE__BUILTIN_CTZ */ +#endif /* HAVE_LONG_INT_64 */ + +#elif defined(_MSC_VER) && (defined(_M_AMD64) || defined(_M_ARM64)) + unsigned long result; + bool non_zero; + + non_zero = _BitScanForward64(&result, word); + Assert(non_zero); + return (int) result; +#else int result = 0; Assert(word != 0); @@ -175,16 +220,6 @@ pg_nextpower2_64(uint64 num) return ((uint64) 1) << (pg_leftmost_one_pos64(num) + 1); } -/* - * pg_nextpower2_size_t - * Returns the next higher power of 2 above 'num', for a size_t input. - */ -#if SIZEOF_SIZE_T == 4 -#define pg_nextpower2_size_t(num) pg_nextpower2_32(num) -#else -#define pg_nextpower2_size_t(num) pg_nextpower2_64(num) -#endif - /* * pg_prevpower2_32 * Returns the next lower power of 2 below 'num', or 'num' if it's @@ -211,16 +246,6 @@ pg_prevpower2_64(uint64 num) return ((uint64) 1) << pg_leftmost_one_pos64(num); } -/* - * pg_prevpower2_size_t - * Returns the next lower power of 2 below 'num', for a size_t input. - */ -#if SIZEOF_SIZE_T == 4 -#define pg_prevpower2_size_t(num) pg_prevpower2_32(num) -#else -#define pg_prevpower2_size_t(num) pg_prevpower2_64(num) -#endif - /* * pg_ceil_log2_32 * Returns equivalent of ceil(log2(num)) @@ -299,4 +324,16 @@ pg_rotate_left32(uint32 word, int n) return (word << n) | (word >> (32 - n)); } +/* size_t variants of the above, as required */ + +#if SIZEOF_SIZE_T == 4 +#define pg_leftmost_one_pos_size_t pg_leftmost_one_pos32 +#define pg_nextpower2_size_t pg_nextpower2_32 +#define pg_prevpower2_size_t pg_prevpower2_32 +#else +#define pg_leftmost_one_pos_size_t pg_leftmost_one_pos64 +#define pg_nextpower2_size_t pg_nextpower2_64 +#define pg_prevpower2_size_t pg_prevpower2_64 +#endif + #endif /* PG_BITUTILS_H */ diff --git a/parser/include/port/pg_bswap.h b/parser/include/port/pg_bswap.h index 4033d2bf..80abd750 100644 --- a/parser/include/port/pg_bswap.h +++ b/parser/include/port/pg_bswap.h @@ -11,7 +11,7 @@ * return the same. Use caution when using these wrapper macros with signed * integers. * - * Copyright (c) 2015-2022, PostgreSQL Global Development Group + * Copyright (c) 2015-2023, PostgreSQL Global Development Group * * src/include/port/pg_bswap.h * diff --git a/parser/include/port/pg_crc32c.h b/parser/include/port/pg_crc32c.h index d7668651..7f877926 100644 --- a/parser/include/port/pg_crc32c.h +++ b/parser/include/port/pg_crc32c.h @@ -23,7 +23,7 @@ * EQ_CRC32C(c1, c2) * Check for equality of two CRCs. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/port/pg_crc32c.h diff --git a/parser/include/port/simd.h b/parser/include/port/simd.h new file mode 100644 index 00000000..1fa6c3bc --- /dev/null +++ b/parser/include/port/simd.h @@ -0,0 +1,375 @@ +/*------------------------------------------------------------------------- + * + * simd.h + * Support for platform-specific vector operations. + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/port/simd.h + * + * NOTES + * - VectorN in this file refers to a register where the element operands + * are N bits wide. The vector width is platform-specific, so users that care + * about that will need to inspect "sizeof(VectorN)". + * + *------------------------------------------------------------------------- + */ +#ifndef SIMD_H +#define SIMD_H + +#if (defined(__x86_64__) || defined(_M_AMD64)) +/* + * SSE2 instructions are part of the spec for the 64-bit x86 ISA. We assume + * that compilers targeting this architecture understand SSE2 intrinsics. + * + * We use emmintrin.h rather than the comprehensive header immintrin.h in + * order to exclude extensions beyond SSE2. This is because MSVC, at least, + * will allow the use of intrinsics that haven't been enabled at compile + * time. + */ +#include +#define USE_SSE2 +typedef __m128i Vector8; +typedef __m128i Vector32; + +#elif defined(__aarch64__) && defined(__ARM_NEON) +/* + * We use the Neon instructions if the compiler provides access to them (as + * indicated by __ARM_NEON) and we are on aarch64. While Neon support is + * technically optional for aarch64, it appears that all available 64-bit + * hardware does have it. Neon exists in some 32-bit hardware too, but we + * could not realistically use it there without a run-time check, which seems + * not worth the trouble for now. + */ +#include +#define USE_NEON +typedef uint8x16_t Vector8; +typedef uint32x4_t Vector32; + +#else +/* + * If no SIMD instructions are available, we can in some cases emulate vector + * operations using bitwise operations on unsigned integers. Note that many + * of the functions in this file presently do not have non-SIMD + * implementations. In particular, none of the functions involving Vector32 + * are implemented without SIMD since it's likely not worthwhile to represent + * two 32-bit integers using a uint64. + */ +#define USE_NO_SIMD +typedef uint64 Vector8; +#endif + +/* load/store operations */ +static inline void vector8_load(Vector8 *v, const uint8 *s); +#ifndef USE_NO_SIMD +static inline void vector32_load(Vector32 *v, const uint32 *s); +#endif + +/* assignment operations */ +static inline Vector8 vector8_broadcast(const uint8 c); +#ifndef USE_NO_SIMD +static inline Vector32 vector32_broadcast(const uint32 c); +#endif + +/* element-wise comparisons to a scalar */ +static inline bool vector8_has(const Vector8 v, const uint8 c); +static inline bool vector8_has_zero(const Vector8 v); +static inline bool vector8_has_le(const Vector8 v, const uint8 c); +static inline bool vector8_is_highbit_set(const Vector8 v); +#ifndef USE_NO_SIMD +static inline bool vector32_is_highbit_set(const Vector32 v); +#endif + +/* arithmetic operations */ +static inline Vector8 vector8_or(const Vector8 v1, const Vector8 v2); +#ifndef USE_NO_SIMD +static inline Vector32 vector32_or(const Vector32 v1, const Vector32 v2); +static inline Vector8 vector8_ssub(const Vector8 v1, const Vector8 v2); +#endif + +/* + * comparisons between vectors + * + * Note: These return a vector rather than boolean, which is why we don't + * have non-SIMD implementations. + */ +#ifndef USE_NO_SIMD +static inline Vector8 vector8_eq(const Vector8 v1, const Vector8 v2); +static inline Vector32 vector32_eq(const Vector32 v1, const Vector32 v2); +#endif + +/* + * Load a chunk of memory into the given vector. + */ +static inline void +vector8_load(Vector8 *v, const uint8 *s) +{ +#if defined(USE_SSE2) + *v = _mm_loadu_si128((const __m128i *) s); +#elif defined(USE_NEON) + *v = vld1q_u8(s); +#else + memcpy(v, s, sizeof(Vector8)); +#endif +} + +#ifndef USE_NO_SIMD +static inline void +vector32_load(Vector32 *v, const uint32 *s) +{ +#ifdef USE_SSE2 + *v = _mm_loadu_si128((const __m128i *) s); +#elif defined(USE_NEON) + *v = vld1q_u32(s); +#endif +} +#endif /* ! USE_NO_SIMD */ + +/* + * Create a vector with all elements set to the same value. + */ +static inline Vector8 +vector8_broadcast(const uint8 c) +{ +#if defined(USE_SSE2) + return _mm_set1_epi8(c); +#elif defined(USE_NEON) + return vdupq_n_u8(c); +#else + return ~UINT64CONST(0) / 0xFF * c; +#endif +} + +#ifndef USE_NO_SIMD +static inline Vector32 +vector32_broadcast(const uint32 c) +{ +#ifdef USE_SSE2 + return _mm_set1_epi32(c); +#elif defined(USE_NEON) + return vdupq_n_u32(c); +#endif +} +#endif /* ! USE_NO_SIMD */ + +/* + * Return true if any elements in the vector are equal to the given scalar. + */ +static inline bool +vector8_has(const Vector8 v, const uint8 c) +{ + bool result; + + /* pre-compute the result for assert checking */ +#ifdef USE_ASSERT_CHECKING + bool assert_result = false; + + for (Size i = 0; i < sizeof(Vector8); i++) + { + if (((const uint8 *) &v)[i] == c) + { + assert_result = true; + break; + } + } +#endif /* USE_ASSERT_CHECKING */ + +#if defined(USE_NO_SIMD) + /* any bytes in v equal to c will evaluate to zero via XOR */ + result = vector8_has_zero(v ^ vector8_broadcast(c)); +#else + result = vector8_is_highbit_set(vector8_eq(v, vector8_broadcast(c))); +#endif + + Assert(assert_result == result); + return result; +} + +/* + * Convenience function equivalent to vector8_has(v, 0) + */ +static inline bool +vector8_has_zero(const Vector8 v) +{ +#if defined(USE_NO_SIMD) + /* + * We cannot call vector8_has() here, because that would lead to a + * circular definition. + */ + return vector8_has_le(v, 0); +#else + return vector8_has(v, 0); +#endif +} + +/* + * Return true if any elements in the vector are less than or equal to the + * given scalar. + */ +static inline bool +vector8_has_le(const Vector8 v, const uint8 c) +{ + bool result = false; + + /* pre-compute the result for assert checking */ +#ifdef USE_ASSERT_CHECKING + bool assert_result = false; + + for (Size i = 0; i < sizeof(Vector8); i++) + { + if (((const uint8 *) &v)[i] <= c) + { + assert_result = true; + break; + } + } +#endif /* USE_ASSERT_CHECKING */ + +#if defined(USE_NO_SIMD) + + /* + * To find bytes <= c, we can use bitwise operations to find bytes < c+1, + * but it only works if c+1 <= 128 and if the highest bit in v is not set. + * Adapted from + * https://graphics.stanford.edu/~seander/bithacks.html#HasLessInWord + */ + if ((int64) v >= 0 && c < 0x80) + result = (v - vector8_broadcast(c + 1)) & ~v & vector8_broadcast(0x80); + else + { + /* one byte at a time */ + for (Size i = 0; i < sizeof(Vector8); i++) + { + if (((const uint8 *) &v)[i] <= c) + { + result = true; + break; + } + } + } +#else + + /* + * Use saturating subtraction to find bytes <= c, which will present as + * NUL bytes. This approach is a workaround for the lack of unsigned + * comparison instructions on some architectures. + */ + result = vector8_has_zero(vector8_ssub(v, vector8_broadcast(c))); +#endif + + Assert(assert_result == result); + return result; +} + +/* + * Return true if the high bit of any element is set + */ +static inline bool +vector8_is_highbit_set(const Vector8 v) +{ +#ifdef USE_SSE2 + return _mm_movemask_epi8(v) != 0; +#elif defined(USE_NEON) + return vmaxvq_u8(v) > 0x7F; +#else + return v & vector8_broadcast(0x80); +#endif +} + +/* + * Exactly like vector8_is_highbit_set except for the input type, so it + * looks at each byte separately. + * + * XXX x86 uses the same underlying type for 8-bit, 16-bit, and 32-bit + * integer elements, but Arm does not, hence the need for a separate + * function. We could instead adopt the behavior of Arm's vmaxvq_u32(), i.e. + * check each 32-bit element, but that would require an additional mask + * operation on x86. + */ +#ifndef USE_NO_SIMD +static inline bool +vector32_is_highbit_set(const Vector32 v) +{ +#if defined(USE_NEON) + return vector8_is_highbit_set((Vector8) v); +#else + return vector8_is_highbit_set(v); +#endif +} +#endif /* ! USE_NO_SIMD */ + +/* + * Return the bitwise OR of the inputs + */ +static inline Vector8 +vector8_or(const Vector8 v1, const Vector8 v2) +{ +#ifdef USE_SSE2 + return _mm_or_si128(v1, v2); +#elif defined(USE_NEON) + return vorrq_u8(v1, v2); +#else + return v1 | v2; +#endif +} + +#ifndef USE_NO_SIMD +static inline Vector32 +vector32_or(const Vector32 v1, const Vector32 v2) +{ +#ifdef USE_SSE2 + return _mm_or_si128(v1, v2); +#elif defined(USE_NEON) + return vorrq_u32(v1, v2); +#endif +} +#endif /* ! USE_NO_SIMD */ + +/* + * Return the result of subtracting the respective elements of the input + * vectors using saturation (i.e., if the operation would yield a value less + * than zero, zero is returned instead). For more information on saturation + * arithmetic, see https://en.wikipedia.org/wiki/Saturation_arithmetic + */ +#ifndef USE_NO_SIMD +static inline Vector8 +vector8_ssub(const Vector8 v1, const Vector8 v2) +{ +#ifdef USE_SSE2 + return _mm_subs_epu8(v1, v2); +#elif defined(USE_NEON) + return vqsubq_u8(v1, v2); +#endif +} +#endif /* ! USE_NO_SIMD */ + +/* + * Return a vector with all bits set in each lane where the corresponding + * lanes in the inputs are equal. + */ +#ifndef USE_NO_SIMD +static inline Vector8 +vector8_eq(const Vector8 v1, const Vector8 v2) +{ +#ifdef USE_SSE2 + return _mm_cmpeq_epi8(v1, v2); +#elif defined(USE_NEON) + return vceqq_u8(v1, v2); +#endif +} +#endif /* ! USE_NO_SIMD */ + +#ifndef USE_NO_SIMD +static inline Vector32 +vector32_eq(const Vector32 v1, const Vector32 v2) +{ +#ifdef USE_SSE2 + return _mm_cmpeq_epi32(v1, v2); +#elif defined(USE_NEON) + return vceqq_u32(v1, v2); +#endif +} +#endif /* ! USE_NO_SIMD */ + +#endif /* SIMD_H */ diff --git a/parser/include/portability/instr_time.h b/parser/include/portability/instr_time.h index ca09a160..cc85138e 100644 --- a/parser/include/portability/instr_time.h +++ b/parser/include/portability/instr_time.h @@ -4,10 +4,9 @@ * portable high-precision interval timing * * This file provides an abstraction layer to hide portability issues in - * interval timing. On Unix we use clock_gettime() if available, else - * gettimeofday(). On Windows, gettimeofday() gives a low-precision result - * so we must use QueryPerformanceCounter() instead. These macros also give - * some breathing room to use other high-precision-timing APIs. + * interval timing. On Unix we use clock_gettime(), and on Windows we use + * QueryPerformanceCounter(). These macros also give some breathing room to + * use other high-precision-timing APIs. * * The basic data type is instr_time, which all callers should treat as an * opaque typedef. instr_time can store either an absolute time (of @@ -35,6 +34,8 @@ * * INSTR_TIME_GET_MICROSEC(t) convert t to uint64 (in microseconds) * + * INSTR_TIME_GET_NANOSEC(t) convert t to uint64 (in nanoseconds) + * * Note that INSTR_TIME_SUBTRACT and INSTR_TIME_ACCUM_DIFF convert * absolute times to intervals. The INSTR_TIME_GET_xxx operations are * only useful on intervals. @@ -46,7 +47,7 @@ * Beware of multiple evaluations of the macro arguments. * * - * Copyright (c) 2001-2022, PostgreSQL Global Development Group + * Copyright (c) 2001-2023, PostgreSQL Global Development Group * * src/include/portability/instr_time.h * @@ -55,9 +56,31 @@ #ifndef INSTR_TIME_H #define INSTR_TIME_H + +/* + * We store interval times as an int64 integer on all platforms, as int64 is + * cheap to add/subtract, the most common operation for instr_time. The + * acquisition of time and converting to specific units of time is platform + * specific. + * + * To avoid users of the API relying on the integer representation, we wrap + * the 64bit integer in a struct. + */ +typedef struct instr_time +{ + int64 ticks; /* in platforms specific unit */ +} instr_time; + + +/* helpers macros used in platform specific code below */ + +#define NS_PER_S INT64CONST(1000000000) +#define NS_PER_MS INT64CONST(1000000) +#define NS_PER_US INT64CONST(1000) + + #ifndef WIN32 -#ifdef HAVE_CLOCK_GETTIME /* Use clock_gettime() */ @@ -83,174 +106,92 @@ #define PG_INSTR_CLOCK CLOCK_REALTIME #endif -typedef struct timespec instr_time; - -#define INSTR_TIME_IS_ZERO(t) ((t).tv_nsec == 0 && (t).tv_sec == 0) - -#define INSTR_TIME_SET_ZERO(t) ((t).tv_sec = 0, (t).tv_nsec = 0) - -#define INSTR_TIME_SET_CURRENT(t) ((void) clock_gettime(PG_INSTR_CLOCK, &(t))) - -#define INSTR_TIME_ADD(x,y) \ - do { \ - (x).tv_sec += (y).tv_sec; \ - (x).tv_nsec += (y).tv_nsec; \ - /* Normalize */ \ - while ((x).tv_nsec >= 1000000000) \ - { \ - (x).tv_nsec -= 1000000000; \ - (x).tv_sec++; \ - } \ - } while (0) - -#define INSTR_TIME_SUBTRACT(x,y) \ - do { \ - (x).tv_sec -= (y).tv_sec; \ - (x).tv_nsec -= (y).tv_nsec; \ - /* Normalize */ \ - while ((x).tv_nsec < 0) \ - { \ - (x).tv_nsec += 1000000000; \ - (x).tv_sec--; \ - } \ - } while (0) - -#define INSTR_TIME_ACCUM_DIFF(x,y,z) \ - do { \ - (x).tv_sec += (y).tv_sec - (z).tv_sec; \ - (x).tv_nsec += (y).tv_nsec - (z).tv_nsec; \ - /* Normalize after each add to avoid overflow/underflow of tv_nsec */ \ - while ((x).tv_nsec < 0) \ - { \ - (x).tv_nsec += 1000000000; \ - (x).tv_sec--; \ - } \ - while ((x).tv_nsec >= 1000000000) \ - { \ - (x).tv_nsec -= 1000000000; \ - (x).tv_sec++; \ - } \ - } while (0) +/* helper for INSTR_TIME_SET_CURRENT */ +static inline instr_time +pg_clock_gettime_ns(void) +{ + instr_time now; + struct timespec tmp; -#define INSTR_TIME_GET_DOUBLE(t) \ - (((double) (t).tv_sec) + ((double) (t).tv_nsec) / 1000000000.0) + clock_gettime(PG_INSTR_CLOCK, &tmp); + now.ticks = tmp.tv_sec * NS_PER_S + tmp.tv_nsec; -#define INSTR_TIME_GET_MILLISEC(t) \ - (((double) (t).tv_sec * 1000.0) + ((double) (t).tv_nsec) / 1000000.0) + return now; +} -#define INSTR_TIME_GET_MICROSEC(t) \ - (((uint64) (t).tv_sec * (uint64) 1000000) + (uint64) ((t).tv_nsec / 1000)) +#define INSTR_TIME_SET_CURRENT(t) \ + ((t) = pg_clock_gettime_ns()) -#else /* !HAVE_CLOCK_GETTIME */ +#define INSTR_TIME_GET_NANOSEC(t) \ + ((int64) (t).ticks) -/* Use gettimeofday() */ -#include +#else /* WIN32 */ -typedef struct timeval instr_time; -#define INSTR_TIME_IS_ZERO(t) ((t).tv_usec == 0 && (t).tv_sec == 0) +/* Use QueryPerformanceCounter() */ -#define INSTR_TIME_SET_ZERO(t) ((t).tv_sec = 0, (t).tv_usec = 0) +/* helper for INSTR_TIME_SET_CURRENT */ +static inline instr_time +pg_query_performance_counter(void) +{ + instr_time now; + LARGE_INTEGER tmp; -#define INSTR_TIME_SET_CURRENT(t) gettimeofday(&(t), NULL) + QueryPerformanceCounter(&tmp); + now.ticks = tmp.QuadPart; -#define INSTR_TIME_ADD(x,y) \ - do { \ - (x).tv_sec += (y).tv_sec; \ - (x).tv_usec += (y).tv_usec; \ - /* Normalize */ \ - while ((x).tv_usec >= 1000000) \ - { \ - (x).tv_usec -= 1000000; \ - (x).tv_sec++; \ - } \ - } while (0) + return now; +} -#define INSTR_TIME_SUBTRACT(x,y) \ - do { \ - (x).tv_sec -= (y).tv_sec; \ - (x).tv_usec -= (y).tv_usec; \ - /* Normalize */ \ - while ((x).tv_usec < 0) \ - { \ - (x).tv_usec += 1000000; \ - (x).tv_sec--; \ - } \ - } while (0) +static inline double +GetTimerFrequency(void) +{ + LARGE_INTEGER f; -#define INSTR_TIME_ACCUM_DIFF(x,y,z) \ - do { \ - (x).tv_sec += (y).tv_sec - (z).tv_sec; \ - (x).tv_usec += (y).tv_usec - (z).tv_usec; \ - /* Normalize after each add to avoid overflow/underflow of tv_usec */ \ - while ((x).tv_usec < 0) \ - { \ - (x).tv_usec += 1000000; \ - (x).tv_sec--; \ - } \ - while ((x).tv_usec >= 1000000) \ - { \ - (x).tv_usec -= 1000000; \ - (x).tv_sec++; \ - } \ - } while (0) + QueryPerformanceFrequency(&f); + return (double) f.QuadPart; +} -#define INSTR_TIME_GET_DOUBLE(t) \ - (((double) (t).tv_sec) + ((double) (t).tv_usec) / 1000000.0) +#define INSTR_TIME_SET_CURRENT(t) \ + ((t) = pg_query_performance_counter()) -#define INSTR_TIME_GET_MILLISEC(t) \ - (((double) (t).tv_sec * 1000.0) + ((double) (t).tv_usec) / 1000.0) +#define INSTR_TIME_GET_NANOSEC(t) \ + ((int64) ((t).ticks * ((double) NS_PER_S / GetTimerFrequency()))) -#define INSTR_TIME_GET_MICROSEC(t) \ - (((uint64) (t).tv_sec * (uint64) 1000000) + (uint64) (t).tv_usec) +#endif /* WIN32 */ -#endif /* HAVE_CLOCK_GETTIME */ -#else /* WIN32 */ +/* + * Common macros + */ -/* Use QueryPerformanceCounter() */ +#define INSTR_TIME_IS_ZERO(t) ((t).ticks == 0) -typedef LARGE_INTEGER instr_time; -#define INSTR_TIME_IS_ZERO(t) ((t).QuadPart == 0) +#define INSTR_TIME_SET_ZERO(t) ((t).ticks = 0) -#define INSTR_TIME_SET_ZERO(t) ((t).QuadPart = 0) +#define INSTR_TIME_SET_CURRENT_LAZY(t) \ + (INSTR_TIME_IS_ZERO(t) ? INSTR_TIME_SET_CURRENT(t), true : false) -#define INSTR_TIME_SET_CURRENT(t) QueryPerformanceCounter(&(t)) #define INSTR_TIME_ADD(x,y) \ - ((x).QuadPart += (y).QuadPart) + ((x).ticks += (y).ticks) #define INSTR_TIME_SUBTRACT(x,y) \ - ((x).QuadPart -= (y).QuadPart) + ((x).ticks -= (y).ticks) #define INSTR_TIME_ACCUM_DIFF(x,y,z) \ - ((x).QuadPart += (y).QuadPart - (z).QuadPart) + ((x).ticks += (y).ticks - (z).ticks) + #define INSTR_TIME_GET_DOUBLE(t) \ - (((double) (t).QuadPart) / GetTimerFrequency()) + ((double) INSTR_TIME_GET_NANOSEC(t) / NS_PER_S) #define INSTR_TIME_GET_MILLISEC(t) \ - (((double) (t).QuadPart * 1000.0) / GetTimerFrequency()) + ((double) INSTR_TIME_GET_NANOSEC(t) / NS_PER_MS) #define INSTR_TIME_GET_MICROSEC(t) \ - ((uint64) (((double) (t).QuadPart * 1000000.0) / GetTimerFrequency())) - -static inline double -GetTimerFrequency(void) -{ - LARGE_INTEGER f; - - QueryPerformanceFrequency(&f); - return (double) f.QuadPart; -} - -#endif /* WIN32 */ - -/* same macro on all platforms */ - -#define INSTR_TIME_SET_CURRENT_LAZY(t) \ - (INSTR_TIME_IS_ZERO(t) ? INSTR_TIME_SET_CURRENT(t), true : false) + (INSTR_TIME_GET_NANOSEC(t) / NS_PER_US) #endif /* INSTR_TIME_H */ diff --git a/parser/include/postgres.h b/parser/include/postgres.h index 31358110..8a028ff7 100644 --- a/parser/include/postgres.h +++ b/parser/include/postgres.h @@ -7,7 +7,7 @@ * Client-side code should include postgres_fe.h instead. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1995, Regents of the University of California * * src/include/postgres.h @@ -23,8 +23,8 @@ * * section description * ------- ------------------------------------------------ - * 1) variable-length datatypes (TOAST support) - * 2) Datum type + support macros + * 1) Datum type + support functions + * 2) miscellaneous * * NOTES * @@ -35,8 +35,7 @@ * postgres_fe.h. We do that since those type definitions are needed by * frontend modules that want to deal with binary data transmission to or * from the backend. Type definitions in this file should be for - * representations that never escape the backend, such as Datum or - * TOASTed varlena objects. + * representations that never escape the backend, such as Datum. * *---------------------------------------------------------------- */ @@ -48,353 +47,7 @@ #include "utils/palloc.h" /* ---------------------------------------------------------------- - * Section 1: variable-length datatypes (TOAST support) - * ---------------------------------------------------------------- - */ - -/* - * struct varatt_external is a traditional "TOAST pointer", that is, the - * information needed to fetch a Datum stored out-of-line in a TOAST table. - * The data is compressed if and only if the external size stored in - * va_extinfo is less than va_rawsize - VARHDRSZ. - * - * This struct must not contain any padding, because we sometimes compare - * these pointers using memcmp. - * - * Note that this information is stored unaligned within actual tuples, so - * you need to memcpy from the tuple into a local struct variable before - * you can look at these fields! (The reason we use memcmp is to avoid - * having to do that just to detect equality of two TOAST pointers...) - */ -typedef struct varatt_external -{ - int32 va_rawsize; /* Original data size (includes header) */ - uint32 va_extinfo; /* External saved size (without header) and - * compression method */ - Oid va_valueid; /* Unique ID of value within TOAST table */ - Oid va_toastrelid; /* RelID of TOAST table containing it */ -} varatt_external; - -/* - * These macros define the "saved size" portion of va_extinfo. Its remaining - * two high-order bits identify the compression method. - */ -#define VARLENA_EXTSIZE_BITS 30 -#define VARLENA_EXTSIZE_MASK ((1U << VARLENA_EXTSIZE_BITS) - 1) - -/* - * struct varatt_indirect is a "TOAST pointer" representing an out-of-line - * Datum that's stored in memory, not in an external toast relation. - * The creator of such a Datum is entirely responsible that the referenced - * storage survives for as long as referencing pointer Datums can exist. - * - * Note that just as for struct varatt_external, this struct is stored - * unaligned within any containing tuple. - */ -typedef struct varatt_indirect -{ - struct varlena *pointer; /* Pointer to in-memory varlena */ -} varatt_indirect; - -/* - * struct varatt_expanded is a "TOAST pointer" representing an out-of-line - * Datum that is stored in memory, in some type-specific, not necessarily - * physically contiguous format that is convenient for computation not - * storage. APIs for this, in particular the definition of struct - * ExpandedObjectHeader, are in src/include/utils/expandeddatum.h. - * - * Note that just as for struct varatt_external, this struct is stored - * unaligned within any containing tuple. - */ -typedef struct ExpandedObjectHeader ExpandedObjectHeader; - -typedef struct varatt_expanded -{ - ExpandedObjectHeader *eohptr; -} varatt_expanded; - -/* - * Type tag for the various sorts of "TOAST pointer" datums. The peculiar - * value for VARTAG_ONDISK comes from a requirement for on-disk compatibility - * with a previous notion that the tag field was the pointer datum's length. - */ -typedef enum vartag_external -{ - VARTAG_INDIRECT = 1, - VARTAG_EXPANDED_RO = 2, - VARTAG_EXPANDED_RW = 3, - VARTAG_ONDISK = 18 -} vartag_external; - -/* this test relies on the specific tag values above */ -#define VARTAG_IS_EXPANDED(tag) \ - (((tag) & ~1) == VARTAG_EXPANDED_RO) - -#define VARTAG_SIZE(tag) \ - ((tag) == VARTAG_INDIRECT ? sizeof(varatt_indirect) : \ - VARTAG_IS_EXPANDED(tag) ? sizeof(varatt_expanded) : \ - (tag) == VARTAG_ONDISK ? sizeof(varatt_external) : \ - TrapMacro(true, "unrecognized TOAST vartag")) - -/* - * These structs describe the header of a varlena object that may have been - * TOASTed. Generally, don't reference these structs directly, but use the - * macros below. - * - * We use separate structs for the aligned and unaligned cases because the - * compiler might otherwise think it could generate code that assumes - * alignment while touching fields of a 1-byte-header varlena. - */ -typedef union -{ - struct /* Normal varlena (4-byte length) */ - { - uint32 va_header; - char va_data[FLEXIBLE_ARRAY_MEMBER]; - } va_4byte; - struct /* Compressed-in-line format */ - { - uint32 va_header; - uint32 va_tcinfo; /* Original data size (excludes header) and - * compression method; see va_extinfo */ - char va_data[FLEXIBLE_ARRAY_MEMBER]; /* Compressed data */ - } va_compressed; -} varattrib_4b; - -typedef struct -{ - uint8 va_header; - char va_data[FLEXIBLE_ARRAY_MEMBER]; /* Data begins here */ -} varattrib_1b; - -/* TOAST pointers are a subset of varattrib_1b with an identifying tag byte */ -typedef struct -{ - uint8 va_header; /* Always 0x80 or 0x01 */ - uint8 va_tag; /* Type of datum */ - char va_data[FLEXIBLE_ARRAY_MEMBER]; /* Type-specific data */ -} varattrib_1b_e; - -/* - * Bit layouts for varlena headers on big-endian machines: - * - * 00xxxxxx 4-byte length word, aligned, uncompressed data (up to 1G) - * 01xxxxxx 4-byte length word, aligned, *compressed* data (up to 1G) - * 10000000 1-byte length word, unaligned, TOAST pointer - * 1xxxxxxx 1-byte length word, unaligned, uncompressed data (up to 126b) - * - * Bit layouts for varlena headers on little-endian machines: - * - * xxxxxx00 4-byte length word, aligned, uncompressed data (up to 1G) - * xxxxxx10 4-byte length word, aligned, *compressed* data (up to 1G) - * 00000001 1-byte length word, unaligned, TOAST pointer - * xxxxxxx1 1-byte length word, unaligned, uncompressed data (up to 126b) - * - * The "xxx" bits are the length field (which includes itself in all cases). - * In the big-endian case we mask to extract the length, in the little-endian - * case we shift. Note that in both cases the flag bits are in the physically - * first byte. Also, it is not possible for a 1-byte length word to be zero; - * this lets us disambiguate alignment padding bytes from the start of an - * unaligned datum. (We now *require* pad bytes to be filled with zero!) - * - * In TOAST pointers the va_tag field (see varattrib_1b_e) is used to discern - * the specific type and length of the pointer datum. - */ - -/* - * Endian-dependent macros. These are considered internal --- use the - * external macros below instead of using these directly. - * - * Note: IS_1B is true for external toast records but VARSIZE_1B will return 0 - * for such records. Hence you should usually check for IS_EXTERNAL before - * checking for IS_1B. - */ - -#ifdef WORDS_BIGENDIAN - -#define VARATT_IS_4B(PTR) \ - ((((varattrib_1b *) (PTR))->va_header & 0x80) == 0x00) -#define VARATT_IS_4B_U(PTR) \ - ((((varattrib_1b *) (PTR))->va_header & 0xC0) == 0x00) -#define VARATT_IS_4B_C(PTR) \ - ((((varattrib_1b *) (PTR))->va_header & 0xC0) == 0x40) -#define VARATT_IS_1B(PTR) \ - ((((varattrib_1b *) (PTR))->va_header & 0x80) == 0x80) -#define VARATT_IS_1B_E(PTR) \ - ((((varattrib_1b *) (PTR))->va_header) == 0x80) -#define VARATT_NOT_PAD_BYTE(PTR) \ - (*((uint8 *) (PTR)) != 0) - -/* VARSIZE_4B() should only be used on known-aligned data */ -#define VARSIZE_4B(PTR) \ - (((varattrib_4b *) (PTR))->va_4byte.va_header & 0x3FFFFFFF) -#define VARSIZE_1B(PTR) \ - (((varattrib_1b *) (PTR))->va_header & 0x7F) -#define VARTAG_1B_E(PTR) \ - (((varattrib_1b_e *) (PTR))->va_tag) - -#define SET_VARSIZE_4B(PTR,len) \ - (((varattrib_4b *) (PTR))->va_4byte.va_header = (len) & 0x3FFFFFFF) -#define SET_VARSIZE_4B_C(PTR,len) \ - (((varattrib_4b *) (PTR))->va_4byte.va_header = ((len) & 0x3FFFFFFF) | 0x40000000) -#define SET_VARSIZE_1B(PTR,len) \ - (((varattrib_1b *) (PTR))->va_header = (len) | 0x80) -#define SET_VARTAG_1B_E(PTR,tag) \ - (((varattrib_1b_e *) (PTR))->va_header = 0x80, \ - ((varattrib_1b_e *) (PTR))->va_tag = (tag)) - -#else /* !WORDS_BIGENDIAN */ - -#define VARATT_IS_4B(PTR) \ - ((((varattrib_1b *) (PTR))->va_header & 0x01) == 0x00) -#define VARATT_IS_4B_U(PTR) \ - ((((varattrib_1b *) (PTR))->va_header & 0x03) == 0x00) -#define VARATT_IS_4B_C(PTR) \ - ((((varattrib_1b *) (PTR))->va_header & 0x03) == 0x02) -#define VARATT_IS_1B(PTR) \ - ((((varattrib_1b *) (PTR))->va_header & 0x01) == 0x01) -#define VARATT_IS_1B_E(PTR) \ - ((((varattrib_1b *) (PTR))->va_header) == 0x01) -#define VARATT_NOT_PAD_BYTE(PTR) \ - (*((uint8 *) (PTR)) != 0) - -/* VARSIZE_4B() should only be used on known-aligned data */ -#define VARSIZE_4B(PTR) \ - ((((varattrib_4b *) (PTR))->va_4byte.va_header >> 2) & 0x3FFFFFFF) -#define VARSIZE_1B(PTR) \ - ((((varattrib_1b *) (PTR))->va_header >> 1) & 0x7F) -#define VARTAG_1B_E(PTR) \ - (((varattrib_1b_e *) (PTR))->va_tag) - -#define SET_VARSIZE_4B(PTR,len) \ - (((varattrib_4b *) (PTR))->va_4byte.va_header = (((uint32) (len)) << 2)) -#define SET_VARSIZE_4B_C(PTR,len) \ - (((varattrib_4b *) (PTR))->va_4byte.va_header = (((uint32) (len)) << 2) | 0x02) -#define SET_VARSIZE_1B(PTR,len) \ - (((varattrib_1b *) (PTR))->va_header = (((uint8) (len)) << 1) | 0x01) -#define SET_VARTAG_1B_E(PTR,tag) \ - (((varattrib_1b_e *) (PTR))->va_header = 0x01, \ - ((varattrib_1b_e *) (PTR))->va_tag = (tag)) - -#endif /* WORDS_BIGENDIAN */ - -#define VARDATA_4B(PTR) (((varattrib_4b *) (PTR))->va_4byte.va_data) -#define VARDATA_4B_C(PTR) (((varattrib_4b *) (PTR))->va_compressed.va_data) -#define VARDATA_1B(PTR) (((varattrib_1b *) (PTR))->va_data) -#define VARDATA_1B_E(PTR) (((varattrib_1b_e *) (PTR))->va_data) - -/* - * Externally visible TOAST macros begin here. - */ - -#define VARHDRSZ_EXTERNAL offsetof(varattrib_1b_e, va_data) -#define VARHDRSZ_COMPRESSED offsetof(varattrib_4b, va_compressed.va_data) -#define VARHDRSZ_SHORT offsetof(varattrib_1b, va_data) - -#define VARATT_SHORT_MAX 0x7F -#define VARATT_CAN_MAKE_SHORT(PTR) \ - (VARATT_IS_4B_U(PTR) && \ - (VARSIZE(PTR) - VARHDRSZ + VARHDRSZ_SHORT) <= VARATT_SHORT_MAX) -#define VARATT_CONVERTED_SHORT_SIZE(PTR) \ - (VARSIZE(PTR) - VARHDRSZ + VARHDRSZ_SHORT) - -/* - * In consumers oblivious to data alignment, call PG_DETOAST_DATUM_PACKED(), - * VARDATA_ANY(), VARSIZE_ANY() and VARSIZE_ANY_EXHDR(). Elsewhere, call - * PG_DETOAST_DATUM(), VARDATA() and VARSIZE(). Directly fetching an int16, - * int32 or wider field in the struct representing the datum layout requires - * aligned data. memcpy() is alignment-oblivious, as are most operations on - * datatypes, such as text, whose layout struct contains only char fields. - * - * Code assembling a new datum should call VARDATA() and SET_VARSIZE(). - * (Datums begin life untoasted.) - * - * Other macros here should usually be used only by tuple assembly/disassembly - * code and code that specifically wants to work with still-toasted Datums. - */ -#define VARDATA(PTR) VARDATA_4B(PTR) -#define VARSIZE(PTR) VARSIZE_4B(PTR) - -#define VARSIZE_SHORT(PTR) VARSIZE_1B(PTR) -#define VARDATA_SHORT(PTR) VARDATA_1B(PTR) - -#define VARTAG_EXTERNAL(PTR) VARTAG_1B_E(PTR) -#define VARSIZE_EXTERNAL(PTR) (VARHDRSZ_EXTERNAL + VARTAG_SIZE(VARTAG_EXTERNAL(PTR))) -#define VARDATA_EXTERNAL(PTR) VARDATA_1B_E(PTR) - -#define VARATT_IS_COMPRESSED(PTR) VARATT_IS_4B_C(PTR) -#define VARATT_IS_EXTERNAL(PTR) VARATT_IS_1B_E(PTR) -#define VARATT_IS_EXTERNAL_ONDISK(PTR) \ - (VARATT_IS_EXTERNAL(PTR) && VARTAG_EXTERNAL(PTR) == VARTAG_ONDISK) -#define VARATT_IS_EXTERNAL_INDIRECT(PTR) \ - (VARATT_IS_EXTERNAL(PTR) && VARTAG_EXTERNAL(PTR) == VARTAG_INDIRECT) -#define VARATT_IS_EXTERNAL_EXPANDED_RO(PTR) \ - (VARATT_IS_EXTERNAL(PTR) && VARTAG_EXTERNAL(PTR) == VARTAG_EXPANDED_RO) -#define VARATT_IS_EXTERNAL_EXPANDED_RW(PTR) \ - (VARATT_IS_EXTERNAL(PTR) && VARTAG_EXTERNAL(PTR) == VARTAG_EXPANDED_RW) -#define VARATT_IS_EXTERNAL_EXPANDED(PTR) \ - (VARATT_IS_EXTERNAL(PTR) && VARTAG_IS_EXPANDED(VARTAG_EXTERNAL(PTR))) -#define VARATT_IS_EXTERNAL_NON_EXPANDED(PTR) \ - (VARATT_IS_EXTERNAL(PTR) && !VARTAG_IS_EXPANDED(VARTAG_EXTERNAL(PTR))) -#define VARATT_IS_SHORT(PTR) VARATT_IS_1B(PTR) -#define VARATT_IS_EXTENDED(PTR) (!VARATT_IS_4B_U(PTR)) - -#define SET_VARSIZE(PTR, len) SET_VARSIZE_4B(PTR, len) -#define SET_VARSIZE_SHORT(PTR, len) SET_VARSIZE_1B(PTR, len) -#define SET_VARSIZE_COMPRESSED(PTR, len) SET_VARSIZE_4B_C(PTR, len) - -#define SET_VARTAG_EXTERNAL(PTR, tag) SET_VARTAG_1B_E(PTR, tag) - -#define VARSIZE_ANY(PTR) \ - (VARATT_IS_1B_E(PTR) ? VARSIZE_EXTERNAL(PTR) : \ - (VARATT_IS_1B(PTR) ? VARSIZE_1B(PTR) : \ - VARSIZE_4B(PTR))) - -/* Size of a varlena data, excluding header */ -#define VARSIZE_ANY_EXHDR(PTR) \ - (VARATT_IS_1B_E(PTR) ? VARSIZE_EXTERNAL(PTR)-VARHDRSZ_EXTERNAL : \ - (VARATT_IS_1B(PTR) ? VARSIZE_1B(PTR)-VARHDRSZ_SHORT : \ - VARSIZE_4B(PTR)-VARHDRSZ)) - -/* caution: this will not work on an external or compressed-in-line Datum */ -/* caution: this will return a possibly unaligned pointer */ -#define VARDATA_ANY(PTR) \ - (VARATT_IS_1B(PTR) ? VARDATA_1B(PTR) : VARDATA_4B(PTR)) - -/* Decompressed size and compression method of a compressed-in-line Datum */ -#define VARDATA_COMPRESSED_GET_EXTSIZE(PTR) \ - (((varattrib_4b *) (PTR))->va_compressed.va_tcinfo & VARLENA_EXTSIZE_MASK) -#define VARDATA_COMPRESSED_GET_COMPRESS_METHOD(PTR) \ - (((varattrib_4b *) (PTR))->va_compressed.va_tcinfo >> VARLENA_EXTSIZE_BITS) - -/* Same for external Datums; but note argument is a struct varatt_external */ -#define VARATT_EXTERNAL_GET_EXTSIZE(toast_pointer) \ - ((toast_pointer).va_extinfo & VARLENA_EXTSIZE_MASK) -#define VARATT_EXTERNAL_GET_COMPRESS_METHOD(toast_pointer) \ - ((toast_pointer).va_extinfo >> VARLENA_EXTSIZE_BITS) - -#define VARATT_EXTERNAL_SET_SIZE_AND_COMPRESS_METHOD(toast_pointer, len, cm) \ - do { \ - Assert((cm) == TOAST_PGLZ_COMPRESSION_ID || \ - (cm) == TOAST_LZ4_COMPRESSION_ID); \ - ((toast_pointer).va_extinfo = \ - (len) | ((uint32) (cm) << VARLENA_EXTSIZE_BITS)); \ - } while (0) - -/* - * Testing whether an externally-stored value is compressed now requires - * comparing size stored in va_extinfo (the actual length of the external data) - * to rawsize (the original uncompressed datum's size). The latter includes - * VARHDRSZ overhead, the former doesn't. We never use compression unless it - * actually saves space, so we expect either equality or less-than. - */ -#define VARATT_EXTERNAL_IS_COMPRESSED(toast_pointer) \ - (VARATT_EXTERNAL_GET_EXTSIZE(toast_pointer) < \ - (toast_pointer).va_rawsize - VARHDRSZ) - - -/* ---------------------------------------------------------------- - * Section 2: Datum type + support macros + * Section 1: Datum type + support functions * ---------------------------------------------------------------- */ @@ -404,7 +57,7 @@ typedef struct * * sizeof(Datum) == sizeof(void *) == 4 or 8 * - * The macros below and the analogous macros for other types should be used to + * The functions below and the analogous functions for other types should be used to * convert between a Datum and the appropriate C type. */ @@ -433,8 +86,11 @@ typedef struct NullableDatum * * Note: any nonzero value will be considered true. */ - -#define DatumGetBool(X) ((bool) ((X) != 0)) +static inline bool +DatumGetBool(Datum X) +{ + return (X != 0); +} /* * BoolGetDatum @@ -442,162 +98,231 @@ typedef struct NullableDatum * * Note: any nonzero value will be considered true. */ - -#define BoolGetDatum(X) ((Datum) ((X) ? 1 : 0)) +static inline Datum +BoolGetDatum(bool X) +{ + return (Datum) (X ? 1 : 0); +} /* * DatumGetChar * Returns character value of a datum. */ - -#define DatumGetChar(X) ((char) (X)) +static inline char +DatumGetChar(Datum X) +{ + return (char) X; +} /* * CharGetDatum * Returns datum representation for a character. */ - -#define CharGetDatum(X) ((Datum) (X)) +static inline Datum +CharGetDatum(char X) +{ + return (Datum) X; +} /* * Int8GetDatum * Returns datum representation for an 8-bit integer. */ - -#define Int8GetDatum(X) ((Datum) (X)) +static inline Datum +Int8GetDatum(int8 X) +{ + return (Datum) X; +} /* * DatumGetUInt8 * Returns 8-bit unsigned integer value of a datum. */ - -#define DatumGetUInt8(X) ((uint8) (X)) +static inline uint8 +DatumGetUInt8(Datum X) +{ + return (uint8) X; +} /* * UInt8GetDatum * Returns datum representation for an 8-bit unsigned integer. */ - -#define UInt8GetDatum(X) ((Datum) (X)) +static inline Datum +UInt8GetDatum(uint8 X) +{ + return (Datum) X; +} /* * DatumGetInt16 * Returns 16-bit integer value of a datum. */ - -#define DatumGetInt16(X) ((int16) (X)) +static inline int16 +DatumGetInt16(Datum X) +{ + return (int16) X; +} /* * Int16GetDatum * Returns datum representation for a 16-bit integer. */ - -#define Int16GetDatum(X) ((Datum) (X)) +static inline Datum +Int16GetDatum(int16 X) +{ + return (Datum) X; +} /* * DatumGetUInt16 * Returns 16-bit unsigned integer value of a datum. */ - -#define DatumGetUInt16(X) ((uint16) (X)) +static inline uint16 +DatumGetUInt16(Datum X) +{ + return (uint16) X; +} /* * UInt16GetDatum * Returns datum representation for a 16-bit unsigned integer. */ - -#define UInt16GetDatum(X) ((Datum) (X)) +static inline Datum +UInt16GetDatum(uint16 X) +{ + return (Datum) X; +} /* * DatumGetInt32 * Returns 32-bit integer value of a datum. */ - -#define DatumGetInt32(X) ((int32) (X)) +static inline int32 +DatumGetInt32(Datum X) +{ + return (int32) X; +} /* * Int32GetDatum * Returns datum representation for a 32-bit integer. */ - -#define Int32GetDatum(X) ((Datum) (X)) +static inline Datum +Int32GetDatum(int32 X) +{ + return (Datum) X; +} /* * DatumGetUInt32 * Returns 32-bit unsigned integer value of a datum. */ - -#define DatumGetUInt32(X) ((uint32) (X)) +static inline uint32 +DatumGetUInt32(Datum X) +{ + return (uint32) X; +} /* * UInt32GetDatum * Returns datum representation for a 32-bit unsigned integer. */ - -#define UInt32GetDatum(X) ((Datum) (X)) +static inline Datum +UInt32GetDatum(uint32 X) +{ + return (Datum) X; +} /* * DatumGetObjectId * Returns object identifier value of a datum. */ - -#define DatumGetObjectId(X) ((Oid) (X)) +static inline Oid +DatumGetObjectId(Datum X) +{ + return (Oid) X; +} /* * ObjectIdGetDatum * Returns datum representation for an object identifier. */ - -#define ObjectIdGetDatum(X) ((Datum) (X)) +static inline Datum +ObjectIdGetDatum(Oid X) +{ + return (Datum) X; +} /* * DatumGetTransactionId * Returns transaction identifier value of a datum. */ - -#define DatumGetTransactionId(X) ((TransactionId) (X)) +static inline TransactionId +DatumGetTransactionId(Datum X) +{ + return (TransactionId) X; +} /* * TransactionIdGetDatum * Returns datum representation for a transaction identifier. */ - -#define TransactionIdGetDatum(X) ((Datum) (X)) +static inline Datum +TransactionIdGetDatum(TransactionId X) +{ + return (Datum) X; +} /* * MultiXactIdGetDatum * Returns datum representation for a multixact identifier. */ - -#define MultiXactIdGetDatum(X) ((Datum) (X)) +static inline Datum +MultiXactIdGetDatum(MultiXactId X) +{ + return (Datum) X; +} /* * DatumGetCommandId * Returns command identifier value of a datum. */ - -#define DatumGetCommandId(X) ((CommandId) (X)) +static inline CommandId +DatumGetCommandId(Datum X) +{ + return (CommandId) X; +} /* * CommandIdGetDatum * Returns datum representation for a command identifier. */ - -#define CommandIdGetDatum(X) ((Datum) (X)) +static inline Datum +CommandIdGetDatum(CommandId X) +{ + return (Datum) X; +} /* * DatumGetPointer * Returns pointer value of a datum. */ - -#define DatumGetPointer(X) ((Pointer) (X)) +static inline Pointer +DatumGetPointer(Datum X) +{ + return (Pointer) X; +} /* * PointerGetDatum * Returns datum representation for a pointer. */ - -#define PointerGetDatum(X) ((Datum) (X)) +static inline Datum +PointerGetDatum(const void *X) +{ + return (Datum) X; +} /* * DatumGetCString @@ -606,8 +331,11 @@ typedef struct NullableDatum * Note: C string is not a full-fledged Postgres type at present, * but type input functions use this conversion for their inputs. */ - -#define DatumGetCString(X) ((char *) DatumGetPointer(X)) +static inline char * +DatumGetCString(Datum X) +{ + return (char *) DatumGetPointer(X); +} /* * CStringGetDatum @@ -618,15 +346,21 @@ typedef struct NullableDatum * Note: CString is pass-by-reference; caller must ensure the pointed-to * value has adequate lifetime. */ - -#define CStringGetDatum(X) PointerGetDatum(X) +static inline Datum +CStringGetDatum(const char *X) +{ + return PointerGetDatum(X); +} /* * DatumGetName * Returns name value of a datum. */ - -#define DatumGetName(X) ((Name) DatumGetPointer(X)) +static inline Name +DatumGetName(Datum X) +{ + return (Name) DatumGetPointer(X); +} /* * NameGetDatum @@ -635,21 +369,27 @@ typedef struct NullableDatum * Note: Name is pass-by-reference; caller must ensure the pointed-to * value has adequate lifetime. */ - -#define NameGetDatum(X) CStringGetDatum(NameStr(*(X))) +static inline Datum +NameGetDatum(const NameData *X) +{ + return CStringGetDatum(NameStr(*X)); +} /* * DatumGetInt64 * Returns 64-bit integer value of a datum. * - * Note: this macro hides whether int64 is pass by value or by reference. + * Note: this function hides whether int64 is pass by value or by reference. */ - +static inline int64 +DatumGetInt64(Datum X) +{ #ifdef USE_FLOAT8_BYVAL -#define DatumGetInt64(X) ((int64) (X)) + return (int64) X; #else -#define DatumGetInt64(X) (* ((int64 *) DatumGetPointer(X))) + return *((int64 *) DatumGetPointer(X)); #endif +} /* * Int64GetDatum @@ -658,25 +398,32 @@ typedef struct NullableDatum * Note: if int64 is pass by reference, this function returns a reference * to palloc'd space. */ - #ifdef USE_FLOAT8_BYVAL -#define Int64GetDatum(X) ((Datum) (X)) +static inline Datum +Int64GetDatum(int64 X) +{ + return (Datum) X; +} #else extern Datum Int64GetDatum(int64 X); #endif + /* * DatumGetUInt64 * Returns 64-bit unsigned integer value of a datum. * - * Note: this macro hides whether int64 is pass by value or by reference. + * Note: this function hides whether int64 is pass by value or by reference. */ - +static inline uint64 +DatumGetUInt64(Datum X) +{ #ifdef USE_FLOAT8_BYVAL -#define DatumGetUInt64(X) ((uint64) (X)) + return (uint64) X; #else -#define DatumGetUInt64(X) (* ((uint64 *) DatumGetPointer(X))) + return *((uint64 *) DatumGetPointer(X)); #endif +} /* * UInt64GetDatum @@ -685,12 +432,15 @@ extern Datum Int64GetDatum(int64 X); * Note: if int64 is pass by reference, this function returns a reference * to palloc'd space. */ - +static inline Datum +UInt64GetDatum(uint64 X) +{ #ifdef USE_FLOAT8_BYVAL -#define UInt64GetDatum(X) ((Datum) (X)) + return (Datum) X; #else -#define UInt64GetDatum(X) Int64GetDatum((int64) (X)) + return Int64GetDatum((int64) X); #endif +} /* * Float <-> Datum conversions @@ -738,13 +488,12 @@ Float4GetDatum(float4 X) * DatumGetFloat8 * Returns 8-byte floating point value of a datum. * - * Note: this macro hides whether float8 is pass by value or by reference. + * Note: this function hides whether float8 is pass by value or by reference. */ - -#ifdef USE_FLOAT8_BYVAL static inline float8 DatumGetFloat8(Datum X) { +#ifdef USE_FLOAT8_BYVAL union { int64 value; @@ -753,10 +502,10 @@ DatumGetFloat8(Datum X) myunion.value = DatumGetInt64(X); return myunion.retval; -} #else -#define DatumGetFloat8(X) (* ((float8 *) DatumGetPointer(X))) + return *((float8 *) DatumGetPointer(X)); #endif +} /* * Float8GetDatum @@ -765,7 +514,6 @@ DatumGetFloat8(Datum X) * Note: if float8 is pass by reference, this function returns a reference * to palloc'd space. */ - #ifdef USE_FLOAT8_BYVAL static inline Datum Float8GetDatum(float8 X) @@ -793,16 +541,39 @@ extern Datum Float8GetDatum(float8 X); * sacrificing performance when they are. The argument must be a variable * that will exist and have the same value for as long as the Datum is needed. * In the pass-by-ref case, the address of the variable is taken to use as - * the Datum. In the pass-by-val case, these will be the same as the non-Fast - * macros. + * the Datum. In the pass-by-val case, these are the same as the non-Fast + * functions, except for asserting that the variable is of the correct type. */ #ifdef USE_FLOAT8_BYVAL -#define Int64GetDatumFast(X) Int64GetDatum(X) -#define Float8GetDatumFast(X) Float8GetDatum(X) +#define Int64GetDatumFast(X) \ + (AssertVariableIsOfTypeMacro(X, int64), Int64GetDatum(X)) +#define Float8GetDatumFast(X) \ + (AssertVariableIsOfTypeMacro(X, double), Float8GetDatum(X)) +#else +#define Int64GetDatumFast(X) \ + (AssertVariableIsOfTypeMacro(X, int64), PointerGetDatum(&(X))) +#define Float8GetDatumFast(X) \ + (AssertVariableIsOfTypeMacro(X, double), PointerGetDatum(&(X))) +#endif + + +/* ---------------------------------------------------------------- + * Section 2: miscellaneous + * ---------------------------------------------------------------- + */ + +/* + * NON_EXEC_STATIC: It's sometimes useful to define a variable or function + * that is normally static but extern when using EXEC_BACKEND (see + * pg_config_manual.h). There would then typically be some code in + * postmaster.c that uses those extern symbols to transfer state between + * processes or do whatever other things it needs to do in EXEC_BACKEND mode. + */ +#ifdef EXEC_BACKEND +#define NON_EXEC_STATIC #else -#define Int64GetDatumFast(X) PointerGetDatum(&(X)) -#define Float8GetDatumFast(X) PointerGetDatum(&(X)) +#define NON_EXEC_STATIC static #endif #endif /* POSTGRES_H */ diff --git a/parser/include/postgres_ext.h b/parser/include/postgres_ext.h index fdb61b7c..240ad4e9 100644 --- a/parser/include/postgres_ext.h +++ b/parser/include/postgres_ext.h @@ -46,7 +46,6 @@ typedef unsigned int Oid; /* Define a signed 64-bit integer type for use in client API declarations. */ typedef PG_INT64_TYPE pg_int64; - /* * Identifiers of error message fields. Kept here to keep common * between frontend and backend, and also to export them to libpq diff --git a/parser/include/postmaster/autovacuum.h b/parser/include/postmaster/autovacuum.h index 9d40fd6d..65afd1ea 100644 --- a/parser/include/postmaster/autovacuum.h +++ b/parser/include/postmaster/autovacuum.h @@ -4,7 +4,7 @@ * header file for integrated autovacuum daemon * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/postmaster/autovacuum.h @@ -63,9 +63,6 @@ extern int StartAutoVacWorker(void); /* called from postmaster when a worker could not be forked */ extern void AutoVacWorkerFailed(void); -/* autovacuum cost-delay balancer */ -extern void AutoVacuumUpdateDelay(void); - #ifdef EXEC_BACKEND extern void AutoVacLauncherMain(int argc, char *argv[]) pg_attribute_noreturn(); extern void AutoVacWorkerMain(int argc, char *argv[]) pg_attribute_noreturn(); diff --git a/parser/include/postmaster/auxprocess.h b/parser/include/postmaster/auxprocess.h index e3789fb8..5c2d6527 100644 --- a/parser/include/postmaster/auxprocess.h +++ b/parser/include/postmaster/auxprocess.h @@ -3,7 +3,7 @@ * include file for functions related to auxiliary processes. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION diff --git a/parser/include/postmaster/bgworker.h b/parser/include/postmaster/bgworker.h index 96975bdc..845d4498 100644 --- a/parser/include/postmaster/bgworker.h +++ b/parser/include/postmaster/bgworker.h @@ -31,7 +31,7 @@ * different) code. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -121,7 +121,7 @@ extern bool RegisterDynamicBackgroundWorker(BackgroundWorker *worker, /* Query the status of a bgworker */ extern BgwHandleStatus GetBackgroundWorkerPid(BackgroundWorkerHandle *handle, pid_t *pidp); -extern BgwHandleStatus WaitForBackgroundWorkerStartup(BackgroundWorkerHandle *handle, pid_t *pid); +extern BgwHandleStatus WaitForBackgroundWorkerStartup(BackgroundWorkerHandle *handle, pid_t *pidp); extern BgwHandleStatus WaitForBackgroundWorkerShutdown(BackgroundWorkerHandle *); extern const char *GetBackgroundWorkerTypeByPid(pid_t pid); diff --git a/parser/include/postmaster/bgworker_internals.h b/parser/include/postmaster/bgworker_internals.h index 38768354..4ad63fd9 100644 --- a/parser/include/postmaster/bgworker_internals.h +++ b/parser/include/postmaster/bgworker_internals.h @@ -2,7 +2,7 @@ * bgworker_internals.h * POSTGRES pluggable background workers internals * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION diff --git a/parser/include/postmaster/bgwriter.h b/parser/include/postmaster/bgwriter.h index 2511ef45..a6672287 100644 --- a/parser/include/postmaster/bgwriter.h +++ b/parser/include/postmaster/bgwriter.h @@ -6,7 +6,7 @@ * The bgwriter process used to handle checkpointing duties too. Now * there is a separate process, but we did not bother to split this header. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * * src/include/postmaster/bgwriter.h * @@ -16,7 +16,7 @@ #define _BGWRITER_H #include "storage/block.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" #include "storage/smgr.h" #include "storage/sync.h" diff --git a/parser/include/postmaster/fork_process.h b/parser/include/postmaster/fork_process.h index 5fc8490e..12decc81 100644 --- a/parser/include/postmaster/fork_process.h +++ b/parser/include/postmaster/fork_process.h @@ -3,7 +3,7 @@ * fork_process.h * Exports from postmaster/fork_process.c. * - * Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Copyright (c) 1996-2023, PostgreSQL Global Development Group * * src/include/postmaster/fork_process.h * diff --git a/parser/include/postmaster/interrupt.h b/parser/include/postmaster/interrupt.h index 289e0457..218f5ea3 100644 --- a/parser/include/postmaster/interrupt.h +++ b/parser/include/postmaster/interrupt.h @@ -7,7 +7,7 @@ * have their own implementations, but we provide a few generic things * here to facilitate code reuse. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION diff --git a/parser/include/postmaster/pgarch.h b/parser/include/postmaster/pgarch.h index f366a159..3bd4fac7 100644 --- a/parser/include/postmaster/pgarch.h +++ b/parser/include/postmaster/pgarch.h @@ -3,7 +3,7 @@ * pgarch.h * Exports from postmaster/pgarch.c. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/postmaster/pgarch.h @@ -33,41 +33,4 @@ extern void PgArchiverMain(void) pg_attribute_noreturn(); extern void PgArchWakeup(void); extern void PgArchForceDirScan(void); -/* - * The value of the archive_library GUC. - */ -extern PGDLLIMPORT char *XLogArchiveLibrary; - -/* - * Archive module callbacks - * - * These callback functions should be defined by archive libraries and returned - * via _PG_archive_module_init(). ArchiveFileCB is the only required callback. - * For more information about the purpose of each callback, refer to the - * archive modules documentation. - */ -typedef bool (*ArchiveCheckConfiguredCB) (void); -typedef bool (*ArchiveFileCB) (const char *file, const char *path); -typedef void (*ArchiveShutdownCB) (void); - -typedef struct ArchiveModuleCallbacks -{ - ArchiveCheckConfiguredCB check_configured_cb; - ArchiveFileCB archive_file_cb; - ArchiveShutdownCB shutdown_cb; -} ArchiveModuleCallbacks; - -/* - * Type of the shared library symbol _PG_archive_module_init that is looked - * up when loading an archive library. - */ -typedef void (*ArchiveModuleInit) (ArchiveModuleCallbacks *cb); - -/* - * Since the logic for archiving via a shell command is in the core server - * and does not need to be loaded via a shared library, it has a special - * initialization function. - */ -extern void shell_archive_init(ArchiveModuleCallbacks *cb); - #endif /* _PGARCH_H */ diff --git a/parser/include/postmaster/postmaster.h b/parser/include/postmaster/postmaster.h index 27aef9c1..cdee1968 100644 --- a/parser/include/postmaster/postmaster.h +++ b/parser/include/postmaster/postmaster.h @@ -3,7 +3,7 @@ * postmaster.h * Exports from postmaster/postmaster.c. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/postmaster/postmaster.h @@ -15,7 +15,8 @@ /* GUC options */ extern PGDLLIMPORT bool EnableSSL; -extern PGDLLIMPORT int ReservedBackends; +extern PGDLLIMPORT int SuperuserReservedConnections; +extern PGDLLIMPORT int ReservedConnections; extern PGDLLIMPORT int PostPortNumber; extern PGDLLIMPORT int Unix_socket_permissions; extern PGDLLIMPORT char *Unix_socket_group; @@ -30,6 +31,8 @@ extern PGDLLIMPORT bool enable_bonjour; extern PGDLLIMPORT char *bonjour_name; extern PGDLLIMPORT bool restart_after_crash; extern PGDLLIMPORT bool remove_temp_files_after_crash; +extern PGDLLIMPORT bool send_abort_for_crash; +extern PGDLLIMPORT bool send_abort_for_kill; #ifdef WIN32 extern PGDLLIMPORT HANDLE PostmasterHandle; diff --git a/parser/include/postmaster/startup.h b/parser/include/postmaster/startup.h index d66ec1fc..6a2e4c45 100644 --- a/parser/include/postmaster/startup.h +++ b/parser/include/postmaster/startup.h @@ -3,7 +3,7 @@ * startup.h * Exports from postmaster/startup.c. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * * src/include/postmaster/startup.h * @@ -32,6 +32,8 @@ extern void PostRestoreCommand(void); extern bool IsPromoteSignaled(void); extern void ResetPromoteSignaled(void); +extern void enable_startup_progress_timeout(void); +extern void disable_startup_progress_timeout(void); extern void begin_startup_progress_phase(void); extern void startup_progress_timeout_handler(void); extern bool has_startup_progress_timeout_expired(long *secs, int *usecs); diff --git a/parser/include/postmaster/syslogger.h b/parser/include/postmaster/syslogger.h index 6436724f..34da778f 100644 --- a/parser/include/postmaster/syslogger.h +++ b/parser/include/postmaster/syslogger.h @@ -3,7 +3,7 @@ * syslogger.h * Exports from postmaster/syslogger.c. * - * Copyright (c) 2004-2022, PostgreSQL Global Development Group + * Copyright (c) 2004-2023, PostgreSQL Global Development Group * * src/include/postmaster/syslogger.h * @@ -84,7 +84,7 @@ extern PGDLLIMPORT HANDLE syslogPipe[2]; extern int SysLogger_Start(void); -extern void write_syslogger_file(const char *buffer, int count, int dest); +extern void write_syslogger_file(const char *buffer, int count, int destination); #ifdef EXEC_BACKEND extern void SysLoggerMain(int argc, char *argv[]) pg_attribute_noreturn(); diff --git a/parser/include/postmaster/walwriter.h b/parser/include/postmaster/walwriter.h index ddc94365..6eba7ad7 100644 --- a/parser/include/postmaster/walwriter.h +++ b/parser/include/postmaster/walwriter.h @@ -3,7 +3,7 @@ * walwriter.h * Exports from postmaster/walwriter.c. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * * src/include/postmaster/walwriter.h * @@ -12,6 +12,8 @@ #ifndef _WALWRITER_H #define _WALWRITER_H +#define DEFAULT_WAL_WRITER_FLUSH_AFTER ((1024 * 1024) / XLOG_BLCKSZ) + /* GUC options */ extern PGDLLIMPORT int WalWriterDelay; extern PGDLLIMPORT int WalWriterFlushAfter; diff --git a/parser/include/protobuf/pg_query.pb-c.h b/parser/include/protobuf/pg_query.pb-c.h index 621776c3..49cdc6fa 100644 --- a/parser/include/protobuf/pg_query.pb-c.h +++ b/parser/include/protobuf/pg_query.pb-c.h @@ -10,7 +10,7 @@ PROTOBUF_C__BEGIN_DECLS #if PROTOBUF_C_VERSION_NUMBER < 1003000 # error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. -#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION +#elif 1005000 < PROTOBUF_C_MIN_COMPILER_VERSION # error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. #endif @@ -30,6 +30,7 @@ typedef struct PgQuery__AConst PgQuery__AConst; typedef struct PgQuery__Alias PgQuery__Alias; typedef struct PgQuery__RangeVar PgQuery__RangeVar; typedef struct PgQuery__TableFunc PgQuery__TableFunc; +typedef struct PgQuery__IntoClause PgQuery__IntoClause; typedef struct PgQuery__Var PgQuery__Var; typedef struct PgQuery__Param PgQuery__Param; typedef struct PgQuery__Aggref PgQuery__Aggref; @@ -63,6 +64,11 @@ typedef struct PgQuery__CoalesceExpr PgQuery__CoalesceExpr; typedef struct PgQuery__MinMaxExpr PgQuery__MinMaxExpr; typedef struct PgQuery__SQLValueFunction PgQuery__SQLValueFunction; typedef struct PgQuery__XmlExpr PgQuery__XmlExpr; +typedef struct PgQuery__JsonFormat PgQuery__JsonFormat; +typedef struct PgQuery__JsonReturning PgQuery__JsonReturning; +typedef struct PgQuery__JsonValueExpr PgQuery__JsonValueExpr; +typedef struct PgQuery__JsonConstructorExpr PgQuery__JsonConstructorExpr; +typedef struct PgQuery__JsonIsPredicate PgQuery__JsonIsPredicate; typedef struct PgQuery__NullTest PgQuery__NullTest; typedef struct PgQuery__BooleanTest PgQuery__BooleanTest; typedef struct PgQuery__CoerceToDomain PgQuery__CoerceToDomain; @@ -76,186 +82,194 @@ typedef struct PgQuery__RangeTblRef PgQuery__RangeTblRef; typedef struct PgQuery__JoinExpr PgQuery__JoinExpr; typedef struct PgQuery__FromExpr PgQuery__FromExpr; typedef struct PgQuery__OnConflictExpr PgQuery__OnConflictExpr; -typedef struct PgQuery__IntoClause PgQuery__IntoClause; +typedef struct PgQuery__Query PgQuery__Query; +typedef struct PgQuery__TypeName PgQuery__TypeName; +typedef struct PgQuery__ColumnRef PgQuery__ColumnRef; +typedef struct PgQuery__ParamRef PgQuery__ParamRef; +typedef struct PgQuery__AExpr PgQuery__AExpr; +typedef struct PgQuery__TypeCast PgQuery__TypeCast; +typedef struct PgQuery__CollateClause PgQuery__CollateClause; +typedef struct PgQuery__RoleSpec PgQuery__RoleSpec; +typedef struct PgQuery__FuncCall PgQuery__FuncCall; +typedef struct PgQuery__AStar PgQuery__AStar; +typedef struct PgQuery__AIndices PgQuery__AIndices; +typedef struct PgQuery__AIndirection PgQuery__AIndirection; +typedef struct PgQuery__AArrayExpr PgQuery__AArrayExpr; +typedef struct PgQuery__ResTarget PgQuery__ResTarget; +typedef struct PgQuery__MultiAssignRef PgQuery__MultiAssignRef; +typedef struct PgQuery__SortBy PgQuery__SortBy; +typedef struct PgQuery__WindowDef PgQuery__WindowDef; +typedef struct PgQuery__RangeSubselect PgQuery__RangeSubselect; +typedef struct PgQuery__RangeFunction PgQuery__RangeFunction; +typedef struct PgQuery__RangeTableFunc PgQuery__RangeTableFunc; +typedef struct PgQuery__RangeTableFuncCol PgQuery__RangeTableFuncCol; +typedef struct PgQuery__RangeTableSample PgQuery__RangeTableSample; +typedef struct PgQuery__ColumnDef PgQuery__ColumnDef; +typedef struct PgQuery__TableLikeClause PgQuery__TableLikeClause; +typedef struct PgQuery__IndexElem PgQuery__IndexElem; +typedef struct PgQuery__DefElem PgQuery__DefElem; +typedef struct PgQuery__LockingClause PgQuery__LockingClause; +typedef struct PgQuery__XmlSerialize PgQuery__XmlSerialize; +typedef struct PgQuery__PartitionElem PgQuery__PartitionElem; +typedef struct PgQuery__PartitionSpec PgQuery__PartitionSpec; +typedef struct PgQuery__PartitionBoundSpec PgQuery__PartitionBoundSpec; +typedef struct PgQuery__PartitionRangeDatum PgQuery__PartitionRangeDatum; +typedef struct PgQuery__PartitionCmd PgQuery__PartitionCmd; +typedef struct PgQuery__RangeTblEntry PgQuery__RangeTblEntry; +typedef struct PgQuery__RTEPermissionInfo PgQuery__RTEPermissionInfo; +typedef struct PgQuery__RangeTblFunction PgQuery__RangeTblFunction; +typedef struct PgQuery__TableSampleClause PgQuery__TableSampleClause; +typedef struct PgQuery__WithCheckOption PgQuery__WithCheckOption; +typedef struct PgQuery__SortGroupClause PgQuery__SortGroupClause; +typedef struct PgQuery__GroupingSet PgQuery__GroupingSet; +typedef struct PgQuery__WindowClause PgQuery__WindowClause; +typedef struct PgQuery__RowMarkClause PgQuery__RowMarkClause; +typedef struct PgQuery__WithClause PgQuery__WithClause; +typedef struct PgQuery__InferClause PgQuery__InferClause; +typedef struct PgQuery__OnConflictClause PgQuery__OnConflictClause; +typedef struct PgQuery__CTESearchClause PgQuery__CTESearchClause; +typedef struct PgQuery__CTECycleClause PgQuery__CTECycleClause; +typedef struct PgQuery__CommonTableExpr PgQuery__CommonTableExpr; +typedef struct PgQuery__MergeWhenClause PgQuery__MergeWhenClause; typedef struct PgQuery__MergeAction PgQuery__MergeAction; +typedef struct PgQuery__TriggerTransition PgQuery__TriggerTransition; +typedef struct PgQuery__JsonOutput PgQuery__JsonOutput; +typedef struct PgQuery__JsonKeyValue PgQuery__JsonKeyValue; +typedef struct PgQuery__JsonObjectConstructor PgQuery__JsonObjectConstructor; +typedef struct PgQuery__JsonArrayConstructor PgQuery__JsonArrayConstructor; +typedef struct PgQuery__JsonArrayQueryConstructor PgQuery__JsonArrayQueryConstructor; +typedef struct PgQuery__JsonAggConstructor PgQuery__JsonAggConstructor; +typedef struct PgQuery__JsonObjectAgg PgQuery__JsonObjectAgg; +typedef struct PgQuery__JsonArrayAgg PgQuery__JsonArrayAgg; typedef struct PgQuery__RawStmt PgQuery__RawStmt; -typedef struct PgQuery__Query PgQuery__Query; typedef struct PgQuery__InsertStmt PgQuery__InsertStmt; typedef struct PgQuery__DeleteStmt PgQuery__DeleteStmt; typedef struct PgQuery__UpdateStmt PgQuery__UpdateStmt; typedef struct PgQuery__MergeStmt PgQuery__MergeStmt; typedef struct PgQuery__SelectStmt PgQuery__SelectStmt; +typedef struct PgQuery__SetOperationStmt PgQuery__SetOperationStmt; typedef struct PgQuery__ReturnStmt PgQuery__ReturnStmt; typedef struct PgQuery__PLAssignStmt PgQuery__PLAssignStmt; +typedef struct PgQuery__CreateSchemaStmt PgQuery__CreateSchemaStmt; typedef struct PgQuery__AlterTableStmt PgQuery__AlterTableStmt; +typedef struct PgQuery__ReplicaIdentityStmt PgQuery__ReplicaIdentityStmt; typedef struct PgQuery__AlterTableCmd PgQuery__AlterTableCmd; +typedef struct PgQuery__AlterCollationStmt PgQuery__AlterCollationStmt; typedef struct PgQuery__AlterDomainStmt PgQuery__AlterDomainStmt; -typedef struct PgQuery__SetOperationStmt PgQuery__SetOperationStmt; typedef struct PgQuery__GrantStmt PgQuery__GrantStmt; +typedef struct PgQuery__ObjectWithArgs PgQuery__ObjectWithArgs; +typedef struct PgQuery__AccessPriv PgQuery__AccessPriv; typedef struct PgQuery__GrantRoleStmt PgQuery__GrantRoleStmt; typedef struct PgQuery__AlterDefaultPrivilegesStmt PgQuery__AlterDefaultPrivilegesStmt; -typedef struct PgQuery__ClosePortalStmt PgQuery__ClosePortalStmt; -typedef struct PgQuery__ClusterStmt PgQuery__ClusterStmt; typedef struct PgQuery__CopyStmt PgQuery__CopyStmt; +typedef struct PgQuery__VariableSetStmt PgQuery__VariableSetStmt; +typedef struct PgQuery__VariableShowStmt PgQuery__VariableShowStmt; typedef struct PgQuery__CreateStmt PgQuery__CreateStmt; +typedef struct PgQuery__Constraint PgQuery__Constraint; +typedef struct PgQuery__CreateTableSpaceStmt PgQuery__CreateTableSpaceStmt; +typedef struct PgQuery__DropTableSpaceStmt PgQuery__DropTableSpaceStmt; +typedef struct PgQuery__AlterTableSpaceOptionsStmt PgQuery__AlterTableSpaceOptionsStmt; +typedef struct PgQuery__AlterTableMoveAllStmt PgQuery__AlterTableMoveAllStmt; +typedef struct PgQuery__CreateExtensionStmt PgQuery__CreateExtensionStmt; +typedef struct PgQuery__AlterExtensionStmt PgQuery__AlterExtensionStmt; +typedef struct PgQuery__AlterExtensionContentsStmt PgQuery__AlterExtensionContentsStmt; +typedef struct PgQuery__CreateFdwStmt PgQuery__CreateFdwStmt; +typedef struct PgQuery__AlterFdwStmt PgQuery__AlterFdwStmt; +typedef struct PgQuery__CreateForeignServerStmt PgQuery__CreateForeignServerStmt; +typedef struct PgQuery__AlterForeignServerStmt PgQuery__AlterForeignServerStmt; +typedef struct PgQuery__CreateForeignTableStmt PgQuery__CreateForeignTableStmt; +typedef struct PgQuery__CreateUserMappingStmt PgQuery__CreateUserMappingStmt; +typedef struct PgQuery__AlterUserMappingStmt PgQuery__AlterUserMappingStmt; +typedef struct PgQuery__DropUserMappingStmt PgQuery__DropUserMappingStmt; +typedef struct PgQuery__ImportForeignSchemaStmt PgQuery__ImportForeignSchemaStmt; +typedef struct PgQuery__CreatePolicyStmt PgQuery__CreatePolicyStmt; +typedef struct PgQuery__AlterPolicyStmt PgQuery__AlterPolicyStmt; +typedef struct PgQuery__CreateAmStmt PgQuery__CreateAmStmt; +typedef struct PgQuery__CreateTrigStmt PgQuery__CreateTrigStmt; +typedef struct PgQuery__CreateEventTrigStmt PgQuery__CreateEventTrigStmt; +typedef struct PgQuery__AlterEventTrigStmt PgQuery__AlterEventTrigStmt; +typedef struct PgQuery__CreatePLangStmt PgQuery__CreatePLangStmt; +typedef struct PgQuery__CreateRoleStmt PgQuery__CreateRoleStmt; +typedef struct PgQuery__AlterRoleStmt PgQuery__AlterRoleStmt; +typedef struct PgQuery__AlterRoleSetStmt PgQuery__AlterRoleSetStmt; +typedef struct PgQuery__DropRoleStmt PgQuery__DropRoleStmt; +typedef struct PgQuery__CreateSeqStmt PgQuery__CreateSeqStmt; +typedef struct PgQuery__AlterSeqStmt PgQuery__AlterSeqStmt; typedef struct PgQuery__DefineStmt PgQuery__DefineStmt; +typedef struct PgQuery__CreateDomainStmt PgQuery__CreateDomainStmt; +typedef struct PgQuery__CreateOpClassStmt PgQuery__CreateOpClassStmt; +typedef struct PgQuery__CreateOpClassItem PgQuery__CreateOpClassItem; +typedef struct PgQuery__CreateOpFamilyStmt PgQuery__CreateOpFamilyStmt; +typedef struct PgQuery__AlterOpFamilyStmt PgQuery__AlterOpFamilyStmt; typedef struct PgQuery__DropStmt PgQuery__DropStmt; typedef struct PgQuery__TruncateStmt PgQuery__TruncateStmt; typedef struct PgQuery__CommentStmt PgQuery__CommentStmt; +typedef struct PgQuery__SecLabelStmt PgQuery__SecLabelStmt; +typedef struct PgQuery__DeclareCursorStmt PgQuery__DeclareCursorStmt; +typedef struct PgQuery__ClosePortalStmt PgQuery__ClosePortalStmt; typedef struct PgQuery__FetchStmt PgQuery__FetchStmt; typedef struct PgQuery__IndexStmt PgQuery__IndexStmt; +typedef struct PgQuery__CreateStatsStmt PgQuery__CreateStatsStmt; +typedef struct PgQuery__StatsElem PgQuery__StatsElem; +typedef struct PgQuery__AlterStatsStmt PgQuery__AlterStatsStmt; typedef struct PgQuery__CreateFunctionStmt PgQuery__CreateFunctionStmt; +typedef struct PgQuery__FunctionParameter PgQuery__FunctionParameter; typedef struct PgQuery__AlterFunctionStmt PgQuery__AlterFunctionStmt; typedef struct PgQuery__DoStmt PgQuery__DoStmt; +typedef struct PgQuery__InlineCodeBlock PgQuery__InlineCodeBlock; +typedef struct PgQuery__CallStmt PgQuery__CallStmt; +typedef struct PgQuery__CallContext PgQuery__CallContext; typedef struct PgQuery__RenameStmt PgQuery__RenameStmt; +typedef struct PgQuery__AlterObjectDependsStmt PgQuery__AlterObjectDependsStmt; +typedef struct PgQuery__AlterObjectSchemaStmt PgQuery__AlterObjectSchemaStmt; +typedef struct PgQuery__AlterOwnerStmt PgQuery__AlterOwnerStmt; +typedef struct PgQuery__AlterOperatorStmt PgQuery__AlterOperatorStmt; +typedef struct PgQuery__AlterTypeStmt PgQuery__AlterTypeStmt; typedef struct PgQuery__RuleStmt PgQuery__RuleStmt; typedef struct PgQuery__NotifyStmt PgQuery__NotifyStmt; typedef struct PgQuery__ListenStmt PgQuery__ListenStmt; typedef struct PgQuery__UnlistenStmt PgQuery__UnlistenStmt; typedef struct PgQuery__TransactionStmt PgQuery__TransactionStmt; +typedef struct PgQuery__CompositeTypeStmt PgQuery__CompositeTypeStmt; +typedef struct PgQuery__CreateEnumStmt PgQuery__CreateEnumStmt; +typedef struct PgQuery__CreateRangeStmt PgQuery__CreateRangeStmt; +typedef struct PgQuery__AlterEnumStmt PgQuery__AlterEnumStmt; typedef struct PgQuery__ViewStmt PgQuery__ViewStmt; typedef struct PgQuery__LoadStmt PgQuery__LoadStmt; -typedef struct PgQuery__CreateDomainStmt PgQuery__CreateDomainStmt; typedef struct PgQuery__CreatedbStmt PgQuery__CreatedbStmt; +typedef struct PgQuery__AlterDatabaseStmt PgQuery__AlterDatabaseStmt; +typedef struct PgQuery__AlterDatabaseRefreshCollStmt PgQuery__AlterDatabaseRefreshCollStmt; +typedef struct PgQuery__AlterDatabaseSetStmt PgQuery__AlterDatabaseSetStmt; typedef struct PgQuery__DropdbStmt PgQuery__DropdbStmt; +typedef struct PgQuery__AlterSystemStmt PgQuery__AlterSystemStmt; +typedef struct PgQuery__ClusterStmt PgQuery__ClusterStmt; typedef struct PgQuery__VacuumStmt PgQuery__VacuumStmt; +typedef struct PgQuery__VacuumRelation PgQuery__VacuumRelation; typedef struct PgQuery__ExplainStmt PgQuery__ExplainStmt; typedef struct PgQuery__CreateTableAsStmt PgQuery__CreateTableAsStmt; -typedef struct PgQuery__CreateSeqStmt PgQuery__CreateSeqStmt; -typedef struct PgQuery__AlterSeqStmt PgQuery__AlterSeqStmt; -typedef struct PgQuery__VariableSetStmt PgQuery__VariableSetStmt; -typedef struct PgQuery__VariableShowStmt PgQuery__VariableShowStmt; +typedef struct PgQuery__RefreshMatViewStmt PgQuery__RefreshMatViewStmt; +typedef struct PgQuery__CheckPointStmt PgQuery__CheckPointStmt; typedef struct PgQuery__DiscardStmt PgQuery__DiscardStmt; -typedef struct PgQuery__CreateTrigStmt PgQuery__CreateTrigStmt; -typedef struct PgQuery__CreatePLangStmt PgQuery__CreatePLangStmt; -typedef struct PgQuery__CreateRoleStmt PgQuery__CreateRoleStmt; -typedef struct PgQuery__AlterRoleStmt PgQuery__AlterRoleStmt; -typedef struct PgQuery__DropRoleStmt PgQuery__DropRoleStmt; typedef struct PgQuery__LockStmt PgQuery__LockStmt; typedef struct PgQuery__ConstraintsSetStmt PgQuery__ConstraintsSetStmt; typedef struct PgQuery__ReindexStmt PgQuery__ReindexStmt; -typedef struct PgQuery__CheckPointStmt PgQuery__CheckPointStmt; -typedef struct PgQuery__CreateSchemaStmt PgQuery__CreateSchemaStmt; -typedef struct PgQuery__AlterDatabaseStmt PgQuery__AlterDatabaseStmt; -typedef struct PgQuery__AlterDatabaseRefreshCollStmt PgQuery__AlterDatabaseRefreshCollStmt; -typedef struct PgQuery__AlterDatabaseSetStmt PgQuery__AlterDatabaseSetStmt; -typedef struct PgQuery__AlterRoleSetStmt PgQuery__AlterRoleSetStmt; typedef struct PgQuery__CreateConversionStmt PgQuery__CreateConversionStmt; typedef struct PgQuery__CreateCastStmt PgQuery__CreateCastStmt; -typedef struct PgQuery__CreateOpClassStmt PgQuery__CreateOpClassStmt; -typedef struct PgQuery__CreateOpFamilyStmt PgQuery__CreateOpFamilyStmt; -typedef struct PgQuery__AlterOpFamilyStmt PgQuery__AlterOpFamilyStmt; +typedef struct PgQuery__CreateTransformStmt PgQuery__CreateTransformStmt; typedef struct PgQuery__PrepareStmt PgQuery__PrepareStmt; typedef struct PgQuery__ExecuteStmt PgQuery__ExecuteStmt; typedef struct PgQuery__DeallocateStmt PgQuery__DeallocateStmt; -typedef struct PgQuery__DeclareCursorStmt PgQuery__DeclareCursorStmt; -typedef struct PgQuery__CreateTableSpaceStmt PgQuery__CreateTableSpaceStmt; -typedef struct PgQuery__DropTableSpaceStmt PgQuery__DropTableSpaceStmt; -typedef struct PgQuery__AlterObjectDependsStmt PgQuery__AlterObjectDependsStmt; -typedef struct PgQuery__AlterObjectSchemaStmt PgQuery__AlterObjectSchemaStmt; -typedef struct PgQuery__AlterOwnerStmt PgQuery__AlterOwnerStmt; -typedef struct PgQuery__AlterOperatorStmt PgQuery__AlterOperatorStmt; -typedef struct PgQuery__AlterTypeStmt PgQuery__AlterTypeStmt; typedef struct PgQuery__DropOwnedStmt PgQuery__DropOwnedStmt; typedef struct PgQuery__ReassignOwnedStmt PgQuery__ReassignOwnedStmt; -typedef struct PgQuery__CompositeTypeStmt PgQuery__CompositeTypeStmt; -typedef struct PgQuery__CreateEnumStmt PgQuery__CreateEnumStmt; -typedef struct PgQuery__CreateRangeStmt PgQuery__CreateRangeStmt; -typedef struct PgQuery__AlterEnumStmt PgQuery__AlterEnumStmt; typedef struct PgQuery__AlterTSDictionaryStmt PgQuery__AlterTSDictionaryStmt; typedef struct PgQuery__AlterTSConfigurationStmt PgQuery__AlterTSConfigurationStmt; -typedef struct PgQuery__CreateFdwStmt PgQuery__CreateFdwStmt; -typedef struct PgQuery__AlterFdwStmt PgQuery__AlterFdwStmt; -typedef struct PgQuery__CreateForeignServerStmt PgQuery__CreateForeignServerStmt; -typedef struct PgQuery__AlterForeignServerStmt PgQuery__AlterForeignServerStmt; -typedef struct PgQuery__CreateUserMappingStmt PgQuery__CreateUserMappingStmt; -typedef struct PgQuery__AlterUserMappingStmt PgQuery__AlterUserMappingStmt; -typedef struct PgQuery__DropUserMappingStmt PgQuery__DropUserMappingStmt; -typedef struct PgQuery__AlterTableSpaceOptionsStmt PgQuery__AlterTableSpaceOptionsStmt; -typedef struct PgQuery__AlterTableMoveAllStmt PgQuery__AlterTableMoveAllStmt; -typedef struct PgQuery__SecLabelStmt PgQuery__SecLabelStmt; -typedef struct PgQuery__CreateForeignTableStmt PgQuery__CreateForeignTableStmt; -typedef struct PgQuery__ImportForeignSchemaStmt PgQuery__ImportForeignSchemaStmt; -typedef struct PgQuery__CreateExtensionStmt PgQuery__CreateExtensionStmt; -typedef struct PgQuery__AlterExtensionStmt PgQuery__AlterExtensionStmt; -typedef struct PgQuery__AlterExtensionContentsStmt PgQuery__AlterExtensionContentsStmt; -typedef struct PgQuery__CreateEventTrigStmt PgQuery__CreateEventTrigStmt; -typedef struct PgQuery__AlterEventTrigStmt PgQuery__AlterEventTrigStmt; -typedef struct PgQuery__RefreshMatViewStmt PgQuery__RefreshMatViewStmt; -typedef struct PgQuery__ReplicaIdentityStmt PgQuery__ReplicaIdentityStmt; -typedef struct PgQuery__AlterSystemStmt PgQuery__AlterSystemStmt; -typedef struct PgQuery__CreatePolicyStmt PgQuery__CreatePolicyStmt; -typedef struct PgQuery__AlterPolicyStmt PgQuery__AlterPolicyStmt; -typedef struct PgQuery__CreateTransformStmt PgQuery__CreateTransformStmt; -typedef struct PgQuery__CreateAmStmt PgQuery__CreateAmStmt; +typedef struct PgQuery__PublicationTable PgQuery__PublicationTable; +typedef struct PgQuery__PublicationObjSpec PgQuery__PublicationObjSpec; typedef struct PgQuery__CreatePublicationStmt PgQuery__CreatePublicationStmt; typedef struct PgQuery__AlterPublicationStmt PgQuery__AlterPublicationStmt; typedef struct PgQuery__CreateSubscriptionStmt PgQuery__CreateSubscriptionStmt; typedef struct PgQuery__AlterSubscriptionStmt PgQuery__AlterSubscriptionStmt; typedef struct PgQuery__DropSubscriptionStmt PgQuery__DropSubscriptionStmt; -typedef struct PgQuery__CreateStatsStmt PgQuery__CreateStatsStmt; -typedef struct PgQuery__AlterCollationStmt PgQuery__AlterCollationStmt; -typedef struct PgQuery__CallStmt PgQuery__CallStmt; -typedef struct PgQuery__AlterStatsStmt PgQuery__AlterStatsStmt; -typedef struct PgQuery__AExpr PgQuery__AExpr; -typedef struct PgQuery__ColumnRef PgQuery__ColumnRef; -typedef struct PgQuery__ParamRef PgQuery__ParamRef; -typedef struct PgQuery__FuncCall PgQuery__FuncCall; -typedef struct PgQuery__AStar PgQuery__AStar; -typedef struct PgQuery__AIndices PgQuery__AIndices; -typedef struct PgQuery__AIndirection PgQuery__AIndirection; -typedef struct PgQuery__AArrayExpr PgQuery__AArrayExpr; -typedef struct PgQuery__ResTarget PgQuery__ResTarget; -typedef struct PgQuery__MultiAssignRef PgQuery__MultiAssignRef; -typedef struct PgQuery__TypeCast PgQuery__TypeCast; -typedef struct PgQuery__CollateClause PgQuery__CollateClause; -typedef struct PgQuery__SortBy PgQuery__SortBy; -typedef struct PgQuery__WindowDef PgQuery__WindowDef; -typedef struct PgQuery__RangeSubselect PgQuery__RangeSubselect; -typedef struct PgQuery__RangeFunction PgQuery__RangeFunction; -typedef struct PgQuery__RangeTableSample PgQuery__RangeTableSample; -typedef struct PgQuery__RangeTableFunc PgQuery__RangeTableFunc; -typedef struct PgQuery__RangeTableFuncCol PgQuery__RangeTableFuncCol; -typedef struct PgQuery__TypeName PgQuery__TypeName; -typedef struct PgQuery__ColumnDef PgQuery__ColumnDef; -typedef struct PgQuery__IndexElem PgQuery__IndexElem; -typedef struct PgQuery__StatsElem PgQuery__StatsElem; -typedef struct PgQuery__Constraint PgQuery__Constraint; -typedef struct PgQuery__DefElem PgQuery__DefElem; -typedef struct PgQuery__RangeTblEntry PgQuery__RangeTblEntry; -typedef struct PgQuery__RangeTblFunction PgQuery__RangeTblFunction; -typedef struct PgQuery__TableSampleClause PgQuery__TableSampleClause; -typedef struct PgQuery__WithCheckOption PgQuery__WithCheckOption; -typedef struct PgQuery__SortGroupClause PgQuery__SortGroupClause; -typedef struct PgQuery__GroupingSet PgQuery__GroupingSet; -typedef struct PgQuery__WindowClause PgQuery__WindowClause; -typedef struct PgQuery__ObjectWithArgs PgQuery__ObjectWithArgs; -typedef struct PgQuery__AccessPriv PgQuery__AccessPriv; -typedef struct PgQuery__CreateOpClassItem PgQuery__CreateOpClassItem; -typedef struct PgQuery__TableLikeClause PgQuery__TableLikeClause; -typedef struct PgQuery__FunctionParameter PgQuery__FunctionParameter; -typedef struct PgQuery__LockingClause PgQuery__LockingClause; -typedef struct PgQuery__RowMarkClause PgQuery__RowMarkClause; -typedef struct PgQuery__XmlSerialize PgQuery__XmlSerialize; -typedef struct PgQuery__WithClause PgQuery__WithClause; -typedef struct PgQuery__InferClause PgQuery__InferClause; -typedef struct PgQuery__OnConflictClause PgQuery__OnConflictClause; -typedef struct PgQuery__CTESearchClause PgQuery__CTESearchClause; -typedef struct PgQuery__CTECycleClause PgQuery__CTECycleClause; -typedef struct PgQuery__CommonTableExpr PgQuery__CommonTableExpr; -typedef struct PgQuery__MergeWhenClause PgQuery__MergeWhenClause; -typedef struct PgQuery__RoleSpec PgQuery__RoleSpec; -typedef struct PgQuery__TriggerTransition PgQuery__TriggerTransition; -typedef struct PgQuery__PartitionElem PgQuery__PartitionElem; -typedef struct PgQuery__PartitionSpec PgQuery__PartitionSpec; -typedef struct PgQuery__PartitionBoundSpec PgQuery__PartitionBoundSpec; -typedef struct PgQuery__PartitionRangeDatum PgQuery__PartitionRangeDatum; -typedef struct PgQuery__PartitionCmd PgQuery__PartitionCmd; -typedef struct PgQuery__VacuumRelation PgQuery__VacuumRelation; -typedef struct PgQuery__PublicationObjSpec PgQuery__PublicationObjSpec; -typedef struct PgQuery__PublicationTable PgQuery__PublicationTable; -typedef struct PgQuery__InlineCodeBlock PgQuery__InlineCodeBlock; -typedef struct PgQuery__CallContext PgQuery__CallContext; typedef struct PgQuery__ScanToken PgQuery__ScanToken; @@ -348,6 +362,13 @@ typedef enum _PgQuery__DefElemAction { PG_QUERY__DEF_ELEM_ACTION__DEFELEM_DROP = 4 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__DEF_ELEM_ACTION) } PgQuery__DefElemAction; +typedef enum _PgQuery__PartitionStrategy { + PG_QUERY__PARTITION_STRATEGY__PARTITION_STRATEGY_UNDEFINED = 0, + PG_QUERY__PARTITION_STRATEGY__PARTITION_STRATEGY_LIST = 1, + PG_QUERY__PARTITION_STRATEGY__PARTITION_STRATEGY_RANGE = 2, + PG_QUERY__PARTITION_STRATEGY__PARTITION_STRATEGY_HASH = 3 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__PARTITION_STRATEGY) +} PgQuery__PartitionStrategy; typedef enum _PgQuery__PartitionRangeDatumKind { PG_QUERY__PARTITION_RANGE_DATUM_KIND__PARTITION_RANGE_DATUM_KIND_UNDEFINED = 0, PG_QUERY__PARTITION_RANGE_DATUM_KIND__PARTITION_RANGE_DATUM_MINVALUE = 1, @@ -467,76 +488,71 @@ typedef enum _PgQuery__DropBehavior { typedef enum _PgQuery__AlterTableType { PG_QUERY__ALTER_TABLE_TYPE__ALTER_TABLE_TYPE_UNDEFINED = 0, PG_QUERY__ALTER_TABLE_TYPE__AT_AddColumn = 1, - PG_QUERY__ALTER_TABLE_TYPE__AT_AddColumnRecurse = 2, - PG_QUERY__ALTER_TABLE_TYPE__AT_AddColumnToView = 3, - PG_QUERY__ALTER_TABLE_TYPE__AT_ColumnDefault = 4, - PG_QUERY__ALTER_TABLE_TYPE__AT_CookedColumnDefault = 5, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropNotNull = 6, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetNotNull = 7, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropExpression = 8, - PG_QUERY__ALTER_TABLE_TYPE__AT_CheckNotNull = 9, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetStatistics = 10, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetOptions = 11, - PG_QUERY__ALTER_TABLE_TYPE__AT_ResetOptions = 12, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetStorage = 13, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetCompression = 14, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropColumn = 15, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropColumnRecurse = 16, - PG_QUERY__ALTER_TABLE_TYPE__AT_AddIndex = 17, - PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddIndex = 18, - PG_QUERY__ALTER_TABLE_TYPE__AT_AddConstraint = 19, - PG_QUERY__ALTER_TABLE_TYPE__AT_AddConstraintRecurse = 20, - PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddConstraint = 21, - PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddDomainConstraint = 22, - PG_QUERY__ALTER_TABLE_TYPE__AT_AlterConstraint = 23, - PG_QUERY__ALTER_TABLE_TYPE__AT_ValidateConstraint = 24, - PG_QUERY__ALTER_TABLE_TYPE__AT_ValidateConstraintRecurse = 25, - PG_QUERY__ALTER_TABLE_TYPE__AT_AddIndexConstraint = 26, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropConstraint = 27, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropConstraintRecurse = 28, - PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddComment = 29, - PG_QUERY__ALTER_TABLE_TYPE__AT_AlterColumnType = 30, - PG_QUERY__ALTER_TABLE_TYPE__AT_AlterColumnGenericOptions = 31, - PG_QUERY__ALTER_TABLE_TYPE__AT_ChangeOwner = 32, - PG_QUERY__ALTER_TABLE_TYPE__AT_ClusterOn = 33, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropCluster = 34, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetLogged = 35, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetUnLogged = 36, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropOids = 37, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetAccessMethod = 38, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetTableSpace = 39, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetRelOptions = 40, - PG_QUERY__ALTER_TABLE_TYPE__AT_ResetRelOptions = 41, - PG_QUERY__ALTER_TABLE_TYPE__AT_ReplaceRelOptions = 42, - PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrig = 43, - PG_QUERY__ALTER_TABLE_TYPE__AT_EnableAlwaysTrig = 44, - PG_QUERY__ALTER_TABLE_TYPE__AT_EnableReplicaTrig = 45, - PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrig = 46, - PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrigAll = 47, - PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrigAll = 48, - PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrigUser = 49, - PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrigUser = 50, - PG_QUERY__ALTER_TABLE_TYPE__AT_EnableRule = 51, - PG_QUERY__ALTER_TABLE_TYPE__AT_EnableAlwaysRule = 52, - PG_QUERY__ALTER_TABLE_TYPE__AT_EnableReplicaRule = 53, - PG_QUERY__ALTER_TABLE_TYPE__AT_DisableRule = 54, - PG_QUERY__ALTER_TABLE_TYPE__AT_AddInherit = 55, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropInherit = 56, - PG_QUERY__ALTER_TABLE_TYPE__AT_AddOf = 57, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropOf = 58, - PG_QUERY__ALTER_TABLE_TYPE__AT_ReplicaIdentity = 59, - PG_QUERY__ALTER_TABLE_TYPE__AT_EnableRowSecurity = 60, - PG_QUERY__ALTER_TABLE_TYPE__AT_DisableRowSecurity = 61, - PG_QUERY__ALTER_TABLE_TYPE__AT_ForceRowSecurity = 62, - PG_QUERY__ALTER_TABLE_TYPE__AT_NoForceRowSecurity = 63, - PG_QUERY__ALTER_TABLE_TYPE__AT_GenericOptions = 64, - PG_QUERY__ALTER_TABLE_TYPE__AT_AttachPartition = 65, - PG_QUERY__ALTER_TABLE_TYPE__AT_DetachPartition = 66, - PG_QUERY__ALTER_TABLE_TYPE__AT_DetachPartitionFinalize = 67, - PG_QUERY__ALTER_TABLE_TYPE__AT_AddIdentity = 68, - PG_QUERY__ALTER_TABLE_TYPE__AT_SetIdentity = 69, - PG_QUERY__ALTER_TABLE_TYPE__AT_DropIdentity = 70, - PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddStatistics = 71 + PG_QUERY__ALTER_TABLE_TYPE__AT_AddColumnToView = 2, + PG_QUERY__ALTER_TABLE_TYPE__AT_ColumnDefault = 3, + PG_QUERY__ALTER_TABLE_TYPE__AT_CookedColumnDefault = 4, + PG_QUERY__ALTER_TABLE_TYPE__AT_DropNotNull = 5, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetNotNull = 6, + PG_QUERY__ALTER_TABLE_TYPE__AT_DropExpression = 7, + PG_QUERY__ALTER_TABLE_TYPE__AT_CheckNotNull = 8, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetStatistics = 9, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetOptions = 10, + PG_QUERY__ALTER_TABLE_TYPE__AT_ResetOptions = 11, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetStorage = 12, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetCompression = 13, + PG_QUERY__ALTER_TABLE_TYPE__AT_DropColumn = 14, + PG_QUERY__ALTER_TABLE_TYPE__AT_AddIndex = 15, + PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddIndex = 16, + PG_QUERY__ALTER_TABLE_TYPE__AT_AddConstraint = 17, + PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddConstraint = 18, + PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddDomainConstraint = 19, + PG_QUERY__ALTER_TABLE_TYPE__AT_AlterConstraint = 20, + PG_QUERY__ALTER_TABLE_TYPE__AT_ValidateConstraint = 21, + PG_QUERY__ALTER_TABLE_TYPE__AT_AddIndexConstraint = 22, + PG_QUERY__ALTER_TABLE_TYPE__AT_DropConstraint = 23, + PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddComment = 24, + PG_QUERY__ALTER_TABLE_TYPE__AT_AlterColumnType = 25, + PG_QUERY__ALTER_TABLE_TYPE__AT_AlterColumnGenericOptions = 26, + PG_QUERY__ALTER_TABLE_TYPE__AT_ChangeOwner = 27, + PG_QUERY__ALTER_TABLE_TYPE__AT_ClusterOn = 28, + PG_QUERY__ALTER_TABLE_TYPE__AT_DropCluster = 29, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetLogged = 30, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetUnLogged = 31, + PG_QUERY__ALTER_TABLE_TYPE__AT_DropOids = 32, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetAccessMethod = 33, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetTableSpace = 34, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetRelOptions = 35, + PG_QUERY__ALTER_TABLE_TYPE__AT_ResetRelOptions = 36, + PG_QUERY__ALTER_TABLE_TYPE__AT_ReplaceRelOptions = 37, + PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrig = 38, + PG_QUERY__ALTER_TABLE_TYPE__AT_EnableAlwaysTrig = 39, + PG_QUERY__ALTER_TABLE_TYPE__AT_EnableReplicaTrig = 40, + PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrig = 41, + PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrigAll = 42, + PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrigAll = 43, + PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrigUser = 44, + PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrigUser = 45, + PG_QUERY__ALTER_TABLE_TYPE__AT_EnableRule = 46, + PG_QUERY__ALTER_TABLE_TYPE__AT_EnableAlwaysRule = 47, + PG_QUERY__ALTER_TABLE_TYPE__AT_EnableReplicaRule = 48, + PG_QUERY__ALTER_TABLE_TYPE__AT_DisableRule = 49, + PG_QUERY__ALTER_TABLE_TYPE__AT_AddInherit = 50, + PG_QUERY__ALTER_TABLE_TYPE__AT_DropInherit = 51, + PG_QUERY__ALTER_TABLE_TYPE__AT_AddOf = 52, + PG_QUERY__ALTER_TABLE_TYPE__AT_DropOf = 53, + PG_QUERY__ALTER_TABLE_TYPE__AT_ReplicaIdentity = 54, + PG_QUERY__ALTER_TABLE_TYPE__AT_EnableRowSecurity = 55, + PG_QUERY__ALTER_TABLE_TYPE__AT_DisableRowSecurity = 56, + PG_QUERY__ALTER_TABLE_TYPE__AT_ForceRowSecurity = 57, + PG_QUERY__ALTER_TABLE_TYPE__AT_NoForceRowSecurity = 58, + PG_QUERY__ALTER_TABLE_TYPE__AT_GenericOptions = 59, + PG_QUERY__ALTER_TABLE_TYPE__AT_AttachPartition = 60, + PG_QUERY__ALTER_TABLE_TYPE__AT_DetachPartition = 61, + PG_QUERY__ALTER_TABLE_TYPE__AT_DetachPartitionFinalize = 62, + PG_QUERY__ALTER_TABLE_TYPE__AT_AddIdentity = 63, + PG_QUERY__ALTER_TABLE_TYPE__AT_SetIdentity = 64, + PG_QUERY__ALTER_TABLE_TYPE__AT_DropIdentity = 65, + PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddStatistics = 66 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__ALTER_TABLE_TYPE) } PgQuery__AlterTableType; typedef enum _PgQuery__GrantTargetType { @@ -784,6 +800,37 @@ typedef enum _PgQuery__XmlOptionType { PG_QUERY__XML_OPTION_TYPE__XMLOPTION_CONTENT = 2 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__XML_OPTION_TYPE) } PgQuery__XmlOptionType; +typedef enum _PgQuery__JsonEncoding { + PG_QUERY__JSON_ENCODING__JSON_ENCODING_UNDEFINED = 0, + PG_QUERY__JSON_ENCODING__JS_ENC_DEFAULT = 1, + PG_QUERY__JSON_ENCODING__JS_ENC_UTF8 = 2, + PG_QUERY__JSON_ENCODING__JS_ENC_UTF16 = 3, + PG_QUERY__JSON_ENCODING__JS_ENC_UTF32 = 4 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__JSON_ENCODING) +} PgQuery__JsonEncoding; +typedef enum _PgQuery__JsonFormatType { + PG_QUERY__JSON_FORMAT_TYPE__JSON_FORMAT_TYPE_UNDEFINED = 0, + PG_QUERY__JSON_FORMAT_TYPE__JS_FORMAT_DEFAULT = 1, + PG_QUERY__JSON_FORMAT_TYPE__JS_FORMAT_JSON = 2, + PG_QUERY__JSON_FORMAT_TYPE__JS_FORMAT_JSONB = 3 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__JSON_FORMAT_TYPE) +} PgQuery__JsonFormatType; +typedef enum _PgQuery__JsonConstructorType { + PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSON_CONSTRUCTOR_TYPE_UNDEFINED = 0, + PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSCTOR_JSON_OBJECT = 1, + PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSCTOR_JSON_ARRAY = 2, + PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSCTOR_JSON_OBJECTAGG = 3, + PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSCTOR_JSON_ARRAYAGG = 4 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__JSON_CONSTRUCTOR_TYPE) +} PgQuery__JsonConstructorType; +typedef enum _PgQuery__JsonValueType { + PG_QUERY__JSON_VALUE_TYPE__JSON_VALUE_TYPE_UNDEFINED = 0, + PG_QUERY__JSON_VALUE_TYPE__JS_TYPE_ANY = 1, + PG_QUERY__JSON_VALUE_TYPE__JS_TYPE_OBJECT = 2, + PG_QUERY__JSON_VALUE_TYPE__JS_TYPE_ARRAY = 3, + PG_QUERY__JSON_VALUE_TYPE__JS_TYPE_SCALAR = 4 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__JSON_VALUE_TYPE) +} PgQuery__JsonValueType; typedef enum _PgQuery__NullTestType { PG_QUERY__NULL_TEST_TYPE__NULL_TEST_TYPE_UNDEFINED = 0, PG_QUERY__NULL_TEST_TYPE__IS_NULL = 1, @@ -820,8 +867,9 @@ typedef enum _PgQuery__JoinType { PG_QUERY__JOIN_TYPE__JOIN_RIGHT = 4, PG_QUERY__JOIN_TYPE__JOIN_SEMI = 5, PG_QUERY__JOIN_TYPE__JOIN_ANTI = 6, - PG_QUERY__JOIN_TYPE__JOIN_UNIQUE_OUTER = 7, - PG_QUERY__JOIN_TYPE__JOIN_UNIQUE_INNER = 8 + PG_QUERY__JOIN_TYPE__JOIN_RIGHT_ANTI = 7, + PG_QUERY__JOIN_TYPE__JOIN_UNIQUE_OUTER = 8, + PG_QUERY__JOIN_TYPE__JOIN_UNIQUE_INNER = 9 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__JOIN_TYPE) } PgQuery__JoinType; typedef enum _PgQuery__AggStrategy { @@ -906,6 +954,10 @@ typedef enum _PgQuery__Token { * Either supporting syntax, or single-character operators (some can be both) * Also see https://www.postgresql.org/docs/12/sql-syntax-lexical.html#SQL-SYNTAX-SPECIAL-CHARS */ + /* + * "$" + */ + PG_QUERY__TOKEN__ASCII_36 = 36, /* * "%" */ @@ -1005,474 +1057,487 @@ typedef enum _PgQuery__Token { PG_QUERY__TOKEN__SQL_COMMENT = 275, PG_QUERY__TOKEN__C_COMMENT = 276, PG_QUERY__TOKEN__ABORT_P = 277, - PG_QUERY__TOKEN__ABSOLUTE_P = 278, - PG_QUERY__TOKEN__ACCESS = 279, - PG_QUERY__TOKEN__ACTION = 280, - PG_QUERY__TOKEN__ADD_P = 281, - PG_QUERY__TOKEN__ADMIN = 282, - PG_QUERY__TOKEN__AFTER = 283, - PG_QUERY__TOKEN__AGGREGATE = 284, - PG_QUERY__TOKEN__ALL = 285, - PG_QUERY__TOKEN__ALSO = 286, - PG_QUERY__TOKEN__ALTER = 287, - PG_QUERY__TOKEN__ALWAYS = 288, - PG_QUERY__TOKEN__ANALYSE = 289, - PG_QUERY__TOKEN__ANALYZE = 290, - PG_QUERY__TOKEN__AND = 291, - PG_QUERY__TOKEN__ANY = 292, - PG_QUERY__TOKEN__ARRAY = 293, - PG_QUERY__TOKEN__AS = 294, - PG_QUERY__TOKEN__ASC = 295, - PG_QUERY__TOKEN__ASENSITIVE = 296, - PG_QUERY__TOKEN__ASSERTION = 297, - PG_QUERY__TOKEN__ASSIGNMENT = 298, - PG_QUERY__TOKEN__ASYMMETRIC = 299, - PG_QUERY__TOKEN__ATOMIC = 300, - PG_QUERY__TOKEN__AT = 301, - PG_QUERY__TOKEN__ATTACH = 302, - PG_QUERY__TOKEN__ATTRIBUTE = 303, - PG_QUERY__TOKEN__AUTHORIZATION = 304, - PG_QUERY__TOKEN__BACKWARD = 305, - PG_QUERY__TOKEN__BEFORE = 306, - PG_QUERY__TOKEN__BEGIN_P = 307, - PG_QUERY__TOKEN__BETWEEN = 308, - PG_QUERY__TOKEN__BIGINT = 309, - PG_QUERY__TOKEN__BINARY = 310, - PG_QUERY__TOKEN__BIT = 311, - PG_QUERY__TOKEN__BOOLEAN_P = 312, - PG_QUERY__TOKEN__BOTH = 313, - PG_QUERY__TOKEN__BREADTH = 314, - PG_QUERY__TOKEN__BY = 315, - PG_QUERY__TOKEN__CACHE = 316, - PG_QUERY__TOKEN__CALL = 317, - PG_QUERY__TOKEN__CALLED = 318, - PG_QUERY__TOKEN__CASCADE = 319, - PG_QUERY__TOKEN__CASCADED = 320, - PG_QUERY__TOKEN__CASE = 321, - PG_QUERY__TOKEN__CAST = 322, - PG_QUERY__TOKEN__CATALOG_P = 323, - PG_QUERY__TOKEN__CHAIN = 324, - PG_QUERY__TOKEN__CHAR_P = 325, - PG_QUERY__TOKEN__CHARACTER = 326, - PG_QUERY__TOKEN__CHARACTERISTICS = 327, - PG_QUERY__TOKEN__CHECK = 328, - PG_QUERY__TOKEN__CHECKPOINT = 329, - PG_QUERY__TOKEN__CLASS = 330, - PG_QUERY__TOKEN__CLOSE = 331, - PG_QUERY__TOKEN__CLUSTER = 332, - PG_QUERY__TOKEN__COALESCE = 333, - PG_QUERY__TOKEN__COLLATE = 334, - PG_QUERY__TOKEN__COLLATION = 335, - PG_QUERY__TOKEN__COLUMN = 336, - PG_QUERY__TOKEN__COLUMNS = 337, - PG_QUERY__TOKEN__COMMENT = 338, - PG_QUERY__TOKEN__COMMENTS = 339, - PG_QUERY__TOKEN__COMMIT = 340, - PG_QUERY__TOKEN__COMMITTED = 341, - PG_QUERY__TOKEN__COMPRESSION = 342, - PG_QUERY__TOKEN__CONCURRENTLY = 343, - PG_QUERY__TOKEN__CONFIGURATION = 344, - PG_QUERY__TOKEN__CONFLICT = 345, - PG_QUERY__TOKEN__CONNECTION = 346, - PG_QUERY__TOKEN__CONSTRAINT = 347, - PG_QUERY__TOKEN__CONSTRAINTS = 348, - PG_QUERY__TOKEN__CONTENT_P = 349, - PG_QUERY__TOKEN__CONTINUE_P = 350, - PG_QUERY__TOKEN__CONVERSION_P = 351, - PG_QUERY__TOKEN__COPY = 352, - PG_QUERY__TOKEN__COST = 353, - PG_QUERY__TOKEN__CREATE = 354, - PG_QUERY__TOKEN__CROSS = 355, - PG_QUERY__TOKEN__CSV = 356, - PG_QUERY__TOKEN__CUBE = 357, - PG_QUERY__TOKEN__CURRENT_P = 358, - PG_QUERY__TOKEN__CURRENT_CATALOG = 359, - PG_QUERY__TOKEN__CURRENT_DATE = 360, - PG_QUERY__TOKEN__CURRENT_ROLE = 361, - PG_QUERY__TOKEN__CURRENT_SCHEMA = 362, - PG_QUERY__TOKEN__CURRENT_TIME = 363, - PG_QUERY__TOKEN__CURRENT_TIMESTAMP = 364, - PG_QUERY__TOKEN__CURRENT_USER = 365, - PG_QUERY__TOKEN__CURSOR = 366, - PG_QUERY__TOKEN__CYCLE = 367, - PG_QUERY__TOKEN__DATA_P = 368, - PG_QUERY__TOKEN__DATABASE = 369, - PG_QUERY__TOKEN__DAY_P = 370, - PG_QUERY__TOKEN__DEALLOCATE = 371, - PG_QUERY__TOKEN__DEC = 372, - PG_QUERY__TOKEN__DECIMAL_P = 373, - PG_QUERY__TOKEN__DECLARE = 374, - PG_QUERY__TOKEN__DEFAULT = 375, - PG_QUERY__TOKEN__DEFAULTS = 376, - PG_QUERY__TOKEN__DEFERRABLE = 377, - PG_QUERY__TOKEN__DEFERRED = 378, - PG_QUERY__TOKEN__DEFINER = 379, - PG_QUERY__TOKEN__DELETE_P = 380, - PG_QUERY__TOKEN__DELIMITER = 381, - PG_QUERY__TOKEN__DELIMITERS = 382, - PG_QUERY__TOKEN__DEPENDS = 383, - PG_QUERY__TOKEN__DEPTH = 384, - PG_QUERY__TOKEN__DESC = 385, - PG_QUERY__TOKEN__DETACH = 386, - PG_QUERY__TOKEN__DICTIONARY = 387, - PG_QUERY__TOKEN__DISABLE_P = 388, - PG_QUERY__TOKEN__DISCARD = 389, - PG_QUERY__TOKEN__DISTINCT = 390, - PG_QUERY__TOKEN__DO = 391, - PG_QUERY__TOKEN__DOCUMENT_P = 392, - PG_QUERY__TOKEN__DOMAIN_P = 393, - PG_QUERY__TOKEN__DOUBLE_P = 394, - PG_QUERY__TOKEN__DROP = 395, - PG_QUERY__TOKEN__EACH = 396, - PG_QUERY__TOKEN__ELSE = 397, - PG_QUERY__TOKEN__ENABLE_P = 398, - PG_QUERY__TOKEN__ENCODING = 399, - PG_QUERY__TOKEN__ENCRYPTED = 400, - PG_QUERY__TOKEN__END_P = 401, - PG_QUERY__TOKEN__ENUM_P = 402, - PG_QUERY__TOKEN__ESCAPE = 403, - PG_QUERY__TOKEN__EVENT = 404, - PG_QUERY__TOKEN__EXCEPT = 405, - PG_QUERY__TOKEN__EXCLUDE = 406, - PG_QUERY__TOKEN__EXCLUDING = 407, - PG_QUERY__TOKEN__EXCLUSIVE = 408, - PG_QUERY__TOKEN__EXECUTE = 409, - PG_QUERY__TOKEN__EXISTS = 410, - PG_QUERY__TOKEN__EXPLAIN = 411, - PG_QUERY__TOKEN__EXPRESSION = 412, - PG_QUERY__TOKEN__EXTENSION = 413, - PG_QUERY__TOKEN__EXTERNAL = 414, - PG_QUERY__TOKEN__EXTRACT = 415, - PG_QUERY__TOKEN__FALSE_P = 416, - PG_QUERY__TOKEN__FAMILY = 417, - PG_QUERY__TOKEN__FETCH = 418, - PG_QUERY__TOKEN__FILTER = 419, - PG_QUERY__TOKEN__FINALIZE = 420, - PG_QUERY__TOKEN__FIRST_P = 421, - PG_QUERY__TOKEN__FLOAT_P = 422, - PG_QUERY__TOKEN__FOLLOWING = 423, - PG_QUERY__TOKEN__FOR = 424, - PG_QUERY__TOKEN__FORCE = 425, - PG_QUERY__TOKEN__FOREIGN = 426, - PG_QUERY__TOKEN__FORWARD = 427, - PG_QUERY__TOKEN__FREEZE = 428, - PG_QUERY__TOKEN__FROM = 429, - PG_QUERY__TOKEN__FULL = 430, - PG_QUERY__TOKEN__FUNCTION = 431, - PG_QUERY__TOKEN__FUNCTIONS = 432, - PG_QUERY__TOKEN__GENERATED = 433, - PG_QUERY__TOKEN__GLOBAL = 434, - PG_QUERY__TOKEN__GRANT = 435, - PG_QUERY__TOKEN__GRANTED = 436, - PG_QUERY__TOKEN__GREATEST = 437, - PG_QUERY__TOKEN__GROUP_P = 438, - PG_QUERY__TOKEN__GROUPING = 439, - PG_QUERY__TOKEN__GROUPS = 440, - PG_QUERY__TOKEN__HANDLER = 441, - PG_QUERY__TOKEN__HAVING = 442, - PG_QUERY__TOKEN__HEADER_P = 443, - PG_QUERY__TOKEN__HOLD = 444, - PG_QUERY__TOKEN__HOUR_P = 445, - PG_QUERY__TOKEN__IDENTITY_P = 446, - PG_QUERY__TOKEN__IF_P = 447, - PG_QUERY__TOKEN__ILIKE = 448, - PG_QUERY__TOKEN__IMMEDIATE = 449, - PG_QUERY__TOKEN__IMMUTABLE = 450, - PG_QUERY__TOKEN__IMPLICIT_P = 451, - PG_QUERY__TOKEN__IMPORT_P = 452, - PG_QUERY__TOKEN__IN_P = 453, - PG_QUERY__TOKEN__INCLUDE = 454, - PG_QUERY__TOKEN__INCLUDING = 455, - PG_QUERY__TOKEN__INCREMENT = 456, - PG_QUERY__TOKEN__INDEX = 457, - PG_QUERY__TOKEN__INDEXES = 458, - PG_QUERY__TOKEN__INHERIT = 459, - PG_QUERY__TOKEN__INHERITS = 460, - PG_QUERY__TOKEN__INITIALLY = 461, - PG_QUERY__TOKEN__INLINE_P = 462, - PG_QUERY__TOKEN__INNER_P = 463, - PG_QUERY__TOKEN__INOUT = 464, - PG_QUERY__TOKEN__INPUT_P = 465, - PG_QUERY__TOKEN__INSENSITIVE = 466, - PG_QUERY__TOKEN__INSERT = 467, - PG_QUERY__TOKEN__INSTEAD = 468, - PG_QUERY__TOKEN__INT_P = 469, - PG_QUERY__TOKEN__INTEGER = 470, - PG_QUERY__TOKEN__INTERSECT = 471, - PG_QUERY__TOKEN__INTERVAL = 472, - PG_QUERY__TOKEN__INTO = 473, - PG_QUERY__TOKEN__INVOKER = 474, - PG_QUERY__TOKEN__IS = 475, - PG_QUERY__TOKEN__ISNULL = 476, - PG_QUERY__TOKEN__ISOLATION = 477, - PG_QUERY__TOKEN__JOIN = 478, - PG_QUERY__TOKEN__KEY = 479, - PG_QUERY__TOKEN__LABEL = 480, - PG_QUERY__TOKEN__LANGUAGE = 481, - PG_QUERY__TOKEN__LARGE_P = 482, - PG_QUERY__TOKEN__LAST_P = 483, - PG_QUERY__TOKEN__LATERAL_P = 484, - PG_QUERY__TOKEN__LEADING = 485, - PG_QUERY__TOKEN__LEAKPROOF = 486, - PG_QUERY__TOKEN__LEAST = 487, - PG_QUERY__TOKEN__LEFT = 488, - PG_QUERY__TOKEN__LEVEL = 489, - PG_QUERY__TOKEN__LIKE = 490, - PG_QUERY__TOKEN__LIMIT = 491, - PG_QUERY__TOKEN__LISTEN = 492, - PG_QUERY__TOKEN__LOAD = 493, - PG_QUERY__TOKEN__LOCAL = 494, - PG_QUERY__TOKEN__LOCALTIME = 495, - PG_QUERY__TOKEN__LOCALTIMESTAMP = 496, - PG_QUERY__TOKEN__LOCATION = 497, - PG_QUERY__TOKEN__LOCK_P = 498, - PG_QUERY__TOKEN__LOCKED = 499, - PG_QUERY__TOKEN__LOGGED = 500, - PG_QUERY__TOKEN__MAPPING = 501, - PG_QUERY__TOKEN__MATCH = 502, - PG_QUERY__TOKEN__MATCHED = 503, - PG_QUERY__TOKEN__MATERIALIZED = 504, - PG_QUERY__TOKEN__MAXVALUE = 505, - PG_QUERY__TOKEN__MERGE = 506, - PG_QUERY__TOKEN__METHOD = 507, - PG_QUERY__TOKEN__MINUTE_P = 508, - PG_QUERY__TOKEN__MINVALUE = 509, - PG_QUERY__TOKEN__MODE = 510, - PG_QUERY__TOKEN__MONTH_P = 511, - PG_QUERY__TOKEN__MOVE = 512, - PG_QUERY__TOKEN__NAME_P = 513, - PG_QUERY__TOKEN__NAMES = 514, - PG_QUERY__TOKEN__NATIONAL = 515, - PG_QUERY__TOKEN__NATURAL = 516, - PG_QUERY__TOKEN__NCHAR = 517, - PG_QUERY__TOKEN__NEW = 518, - PG_QUERY__TOKEN__NEXT = 519, - PG_QUERY__TOKEN__NFC = 520, - PG_QUERY__TOKEN__NFD = 521, - PG_QUERY__TOKEN__NFKC = 522, - PG_QUERY__TOKEN__NFKD = 523, - PG_QUERY__TOKEN__NO = 524, - PG_QUERY__TOKEN__NONE = 525, - PG_QUERY__TOKEN__NORMALIZE = 526, - PG_QUERY__TOKEN__NORMALIZED = 527, - PG_QUERY__TOKEN__NOT = 528, - PG_QUERY__TOKEN__NOTHING = 529, - PG_QUERY__TOKEN__NOTIFY = 530, - PG_QUERY__TOKEN__NOTNULL = 531, - PG_QUERY__TOKEN__NOWAIT = 532, - PG_QUERY__TOKEN__NULL_P = 533, - PG_QUERY__TOKEN__NULLIF = 534, - PG_QUERY__TOKEN__NULLS_P = 535, - PG_QUERY__TOKEN__NUMERIC = 536, - PG_QUERY__TOKEN__OBJECT_P = 537, - PG_QUERY__TOKEN__OF = 538, - PG_QUERY__TOKEN__OFF = 539, - PG_QUERY__TOKEN__OFFSET = 540, - PG_QUERY__TOKEN__OIDS = 541, - PG_QUERY__TOKEN__OLD = 542, - PG_QUERY__TOKEN__ON = 543, - PG_QUERY__TOKEN__ONLY = 544, - PG_QUERY__TOKEN__OPERATOR = 545, - PG_QUERY__TOKEN__OPTION = 546, - PG_QUERY__TOKEN__OPTIONS = 547, - PG_QUERY__TOKEN__OR = 548, - PG_QUERY__TOKEN__ORDER = 549, - PG_QUERY__TOKEN__ORDINALITY = 550, - PG_QUERY__TOKEN__OTHERS = 551, - PG_QUERY__TOKEN__OUT_P = 552, - PG_QUERY__TOKEN__OUTER_P = 553, - PG_QUERY__TOKEN__OVER = 554, - PG_QUERY__TOKEN__OVERLAPS = 555, - PG_QUERY__TOKEN__OVERLAY = 556, - PG_QUERY__TOKEN__OVERRIDING = 557, - PG_QUERY__TOKEN__OWNED = 558, - PG_QUERY__TOKEN__OWNER = 559, - PG_QUERY__TOKEN__PARALLEL = 560, - PG_QUERY__TOKEN__PARAMETER = 561, - PG_QUERY__TOKEN__PARSER = 562, - PG_QUERY__TOKEN__PARTIAL = 563, - PG_QUERY__TOKEN__PARTITION = 564, - PG_QUERY__TOKEN__PASSING = 565, - PG_QUERY__TOKEN__PASSWORD = 566, - PG_QUERY__TOKEN__PLACING = 567, - PG_QUERY__TOKEN__PLANS = 568, - PG_QUERY__TOKEN__POLICY = 569, - PG_QUERY__TOKEN__POSITION = 570, - PG_QUERY__TOKEN__PRECEDING = 571, - PG_QUERY__TOKEN__PRECISION = 572, - PG_QUERY__TOKEN__PRESERVE = 573, - PG_QUERY__TOKEN__PREPARE = 574, - PG_QUERY__TOKEN__PREPARED = 575, - PG_QUERY__TOKEN__PRIMARY = 576, - PG_QUERY__TOKEN__PRIOR = 577, - PG_QUERY__TOKEN__PRIVILEGES = 578, - PG_QUERY__TOKEN__PROCEDURAL = 579, - PG_QUERY__TOKEN__PROCEDURE = 580, - PG_QUERY__TOKEN__PROCEDURES = 581, - PG_QUERY__TOKEN__PROGRAM = 582, - PG_QUERY__TOKEN__PUBLICATION = 583, - PG_QUERY__TOKEN__QUOTE = 584, - PG_QUERY__TOKEN__RANGE = 585, - PG_QUERY__TOKEN__READ = 586, - PG_QUERY__TOKEN__REAL = 587, - PG_QUERY__TOKEN__REASSIGN = 588, - PG_QUERY__TOKEN__RECHECK = 589, - PG_QUERY__TOKEN__RECURSIVE = 590, - PG_QUERY__TOKEN__REF_P = 591, - PG_QUERY__TOKEN__REFERENCES = 592, - PG_QUERY__TOKEN__REFERENCING = 593, - PG_QUERY__TOKEN__REFRESH = 594, - PG_QUERY__TOKEN__REINDEX = 595, - PG_QUERY__TOKEN__RELATIVE_P = 596, - PG_QUERY__TOKEN__RELEASE = 597, - PG_QUERY__TOKEN__RENAME = 598, - PG_QUERY__TOKEN__REPEATABLE = 599, - PG_QUERY__TOKEN__REPLACE = 600, - PG_QUERY__TOKEN__REPLICA = 601, - PG_QUERY__TOKEN__RESET = 602, - PG_QUERY__TOKEN__RESTART = 603, - PG_QUERY__TOKEN__RESTRICT = 604, - PG_QUERY__TOKEN__RETURN = 605, - PG_QUERY__TOKEN__RETURNING = 606, - PG_QUERY__TOKEN__RETURNS = 607, - PG_QUERY__TOKEN__REVOKE = 608, - PG_QUERY__TOKEN__RIGHT = 609, - PG_QUERY__TOKEN__ROLE = 610, - PG_QUERY__TOKEN__ROLLBACK = 611, - PG_QUERY__TOKEN__ROLLUP = 612, - PG_QUERY__TOKEN__ROUTINE = 613, - PG_QUERY__TOKEN__ROUTINES = 614, - PG_QUERY__TOKEN__ROW = 615, - PG_QUERY__TOKEN__ROWS = 616, - PG_QUERY__TOKEN__RULE = 617, - PG_QUERY__TOKEN__SAVEPOINT = 618, - PG_QUERY__TOKEN__SCHEMA = 619, - PG_QUERY__TOKEN__SCHEMAS = 620, - PG_QUERY__TOKEN__SCROLL = 621, - PG_QUERY__TOKEN__SEARCH = 622, - PG_QUERY__TOKEN__SECOND_P = 623, - PG_QUERY__TOKEN__SECURITY = 624, - PG_QUERY__TOKEN__SELECT = 625, - PG_QUERY__TOKEN__SEQUENCE = 626, - PG_QUERY__TOKEN__SEQUENCES = 627, - PG_QUERY__TOKEN__SERIALIZABLE = 628, - PG_QUERY__TOKEN__SERVER = 629, - PG_QUERY__TOKEN__SESSION = 630, - PG_QUERY__TOKEN__SESSION_USER = 631, - PG_QUERY__TOKEN__SET = 632, - PG_QUERY__TOKEN__SETS = 633, - PG_QUERY__TOKEN__SETOF = 634, - PG_QUERY__TOKEN__SHARE = 635, - PG_QUERY__TOKEN__SHOW = 636, - PG_QUERY__TOKEN__SIMILAR = 637, - PG_QUERY__TOKEN__SIMPLE = 638, - PG_QUERY__TOKEN__SKIP = 639, - PG_QUERY__TOKEN__SMALLINT = 640, - PG_QUERY__TOKEN__SNAPSHOT = 641, - PG_QUERY__TOKEN__SOME = 642, - PG_QUERY__TOKEN__SQL_P = 643, - PG_QUERY__TOKEN__STABLE = 644, - PG_QUERY__TOKEN__STANDALONE_P = 645, - PG_QUERY__TOKEN__START = 646, - PG_QUERY__TOKEN__STATEMENT = 647, - PG_QUERY__TOKEN__STATISTICS = 648, - PG_QUERY__TOKEN__STDIN = 649, - PG_QUERY__TOKEN__STDOUT = 650, - PG_QUERY__TOKEN__STORAGE = 651, - PG_QUERY__TOKEN__STORED = 652, - PG_QUERY__TOKEN__STRICT_P = 653, - PG_QUERY__TOKEN__STRIP_P = 654, - PG_QUERY__TOKEN__SUBSCRIPTION = 655, - PG_QUERY__TOKEN__SUBSTRING = 656, - PG_QUERY__TOKEN__SUPPORT = 657, - PG_QUERY__TOKEN__SYMMETRIC = 658, - PG_QUERY__TOKEN__SYSID = 659, - PG_QUERY__TOKEN__SYSTEM_P = 660, - PG_QUERY__TOKEN__TABLE = 661, - PG_QUERY__TOKEN__TABLES = 662, - PG_QUERY__TOKEN__TABLESAMPLE = 663, - PG_QUERY__TOKEN__TABLESPACE = 664, - PG_QUERY__TOKEN__TEMP = 665, - PG_QUERY__TOKEN__TEMPLATE = 666, - PG_QUERY__TOKEN__TEMPORARY = 667, - PG_QUERY__TOKEN__TEXT_P = 668, - PG_QUERY__TOKEN__THEN = 669, - PG_QUERY__TOKEN__TIES = 670, - PG_QUERY__TOKEN__TIME = 671, - PG_QUERY__TOKEN__TIMESTAMP = 672, - PG_QUERY__TOKEN__TO = 673, - PG_QUERY__TOKEN__TRAILING = 674, - PG_QUERY__TOKEN__TRANSACTION = 675, - PG_QUERY__TOKEN__TRANSFORM = 676, - PG_QUERY__TOKEN__TREAT = 677, - PG_QUERY__TOKEN__TRIGGER = 678, - PG_QUERY__TOKEN__TRIM = 679, - PG_QUERY__TOKEN__TRUE_P = 680, - PG_QUERY__TOKEN__TRUNCATE = 681, - PG_QUERY__TOKEN__TRUSTED = 682, - PG_QUERY__TOKEN__TYPE_P = 683, - PG_QUERY__TOKEN__TYPES_P = 684, - PG_QUERY__TOKEN__UESCAPE = 685, - PG_QUERY__TOKEN__UNBOUNDED = 686, - PG_QUERY__TOKEN__UNCOMMITTED = 687, - PG_QUERY__TOKEN__UNENCRYPTED = 688, - PG_QUERY__TOKEN__UNION = 689, - PG_QUERY__TOKEN__UNIQUE = 690, - PG_QUERY__TOKEN__UNKNOWN = 691, - PG_QUERY__TOKEN__UNLISTEN = 692, - PG_QUERY__TOKEN__UNLOGGED = 693, - PG_QUERY__TOKEN__UNTIL = 694, - PG_QUERY__TOKEN__UPDATE = 695, - PG_QUERY__TOKEN__USER = 696, - PG_QUERY__TOKEN__USING = 697, - PG_QUERY__TOKEN__VACUUM = 698, - PG_QUERY__TOKEN__VALID = 699, - PG_QUERY__TOKEN__VALIDATE = 700, - PG_QUERY__TOKEN__VALIDATOR = 701, - PG_QUERY__TOKEN__VALUE_P = 702, - PG_QUERY__TOKEN__VALUES = 703, - PG_QUERY__TOKEN__VARCHAR = 704, - PG_QUERY__TOKEN__VARIADIC = 705, - PG_QUERY__TOKEN__VARYING = 706, - PG_QUERY__TOKEN__VERBOSE = 707, - PG_QUERY__TOKEN__VERSION_P = 708, - PG_QUERY__TOKEN__VIEW = 709, - PG_QUERY__TOKEN__VIEWS = 710, - PG_QUERY__TOKEN__VOLATILE = 711, - PG_QUERY__TOKEN__WHEN = 712, - PG_QUERY__TOKEN__WHERE = 713, - PG_QUERY__TOKEN__WHITESPACE_P = 714, - PG_QUERY__TOKEN__WINDOW = 715, - PG_QUERY__TOKEN__WITH = 716, - PG_QUERY__TOKEN__WITHIN = 717, - PG_QUERY__TOKEN__WITHOUT = 718, - PG_QUERY__TOKEN__WORK = 719, - PG_QUERY__TOKEN__WRAPPER = 720, - PG_QUERY__TOKEN__WRITE = 721, - PG_QUERY__TOKEN__XML_P = 722, - PG_QUERY__TOKEN__XMLATTRIBUTES = 723, - PG_QUERY__TOKEN__XMLCONCAT = 724, - PG_QUERY__TOKEN__XMLELEMENT = 725, - PG_QUERY__TOKEN__XMLEXISTS = 726, - PG_QUERY__TOKEN__XMLFOREST = 727, - PG_QUERY__TOKEN__XMLNAMESPACES = 728, - PG_QUERY__TOKEN__XMLPARSE = 729, - PG_QUERY__TOKEN__XMLPI = 730, - PG_QUERY__TOKEN__XMLROOT = 731, - PG_QUERY__TOKEN__XMLSERIALIZE = 732, - PG_QUERY__TOKEN__XMLTABLE = 733, - PG_QUERY__TOKEN__YEAR_P = 734, - PG_QUERY__TOKEN__YES_P = 735, - PG_QUERY__TOKEN__ZONE = 736, - PG_QUERY__TOKEN__NOT_LA = 737, - PG_QUERY__TOKEN__NULLS_LA = 738, - PG_QUERY__TOKEN__WITH_LA = 739, - PG_QUERY__TOKEN__MODE_TYPE_NAME = 740, - PG_QUERY__TOKEN__MODE_PLPGSQL_EXPR = 741, - PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN1 = 742, - PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN2 = 743, - PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN3 = 744, - PG_QUERY__TOKEN__UMINUS = 745 + PG_QUERY__TOKEN__ABSENT = 278, + PG_QUERY__TOKEN__ABSOLUTE_P = 279, + PG_QUERY__TOKEN__ACCESS = 280, + PG_QUERY__TOKEN__ACTION = 281, + PG_QUERY__TOKEN__ADD_P = 282, + PG_QUERY__TOKEN__ADMIN = 283, + PG_QUERY__TOKEN__AFTER = 284, + PG_QUERY__TOKEN__AGGREGATE = 285, + PG_QUERY__TOKEN__ALL = 286, + PG_QUERY__TOKEN__ALSO = 287, + PG_QUERY__TOKEN__ALTER = 288, + PG_QUERY__TOKEN__ALWAYS = 289, + PG_QUERY__TOKEN__ANALYSE = 290, + PG_QUERY__TOKEN__ANALYZE = 291, + PG_QUERY__TOKEN__AND = 292, + PG_QUERY__TOKEN__ANY = 293, + PG_QUERY__TOKEN__ARRAY = 294, + PG_QUERY__TOKEN__AS = 295, + PG_QUERY__TOKEN__ASC = 296, + PG_QUERY__TOKEN__ASENSITIVE = 297, + PG_QUERY__TOKEN__ASSERTION = 298, + PG_QUERY__TOKEN__ASSIGNMENT = 299, + PG_QUERY__TOKEN__ASYMMETRIC = 300, + PG_QUERY__TOKEN__ATOMIC = 301, + PG_QUERY__TOKEN__AT = 302, + PG_QUERY__TOKEN__ATTACH = 303, + PG_QUERY__TOKEN__ATTRIBUTE = 304, + PG_QUERY__TOKEN__AUTHORIZATION = 305, + PG_QUERY__TOKEN__BACKWARD = 306, + PG_QUERY__TOKEN__BEFORE = 307, + PG_QUERY__TOKEN__BEGIN_P = 308, + PG_QUERY__TOKEN__BETWEEN = 309, + PG_QUERY__TOKEN__BIGINT = 310, + PG_QUERY__TOKEN__BINARY = 311, + PG_QUERY__TOKEN__BIT = 312, + PG_QUERY__TOKEN__BOOLEAN_P = 313, + PG_QUERY__TOKEN__BOTH = 314, + PG_QUERY__TOKEN__BREADTH = 315, + PG_QUERY__TOKEN__BY = 316, + PG_QUERY__TOKEN__CACHE = 317, + PG_QUERY__TOKEN__CALL = 318, + PG_QUERY__TOKEN__CALLED = 319, + PG_QUERY__TOKEN__CASCADE = 320, + PG_QUERY__TOKEN__CASCADED = 321, + PG_QUERY__TOKEN__CASE = 322, + PG_QUERY__TOKEN__CAST = 323, + PG_QUERY__TOKEN__CATALOG_P = 324, + PG_QUERY__TOKEN__CHAIN = 325, + PG_QUERY__TOKEN__CHAR_P = 326, + PG_QUERY__TOKEN__CHARACTER = 327, + PG_QUERY__TOKEN__CHARACTERISTICS = 328, + PG_QUERY__TOKEN__CHECK = 329, + PG_QUERY__TOKEN__CHECKPOINT = 330, + PG_QUERY__TOKEN__CLASS = 331, + PG_QUERY__TOKEN__CLOSE = 332, + PG_QUERY__TOKEN__CLUSTER = 333, + PG_QUERY__TOKEN__COALESCE = 334, + PG_QUERY__TOKEN__COLLATE = 335, + PG_QUERY__TOKEN__COLLATION = 336, + PG_QUERY__TOKEN__COLUMN = 337, + PG_QUERY__TOKEN__COLUMNS = 338, + PG_QUERY__TOKEN__COMMENT = 339, + PG_QUERY__TOKEN__COMMENTS = 340, + PG_QUERY__TOKEN__COMMIT = 341, + PG_QUERY__TOKEN__COMMITTED = 342, + PG_QUERY__TOKEN__COMPRESSION = 343, + PG_QUERY__TOKEN__CONCURRENTLY = 344, + PG_QUERY__TOKEN__CONFIGURATION = 345, + PG_QUERY__TOKEN__CONFLICT = 346, + PG_QUERY__TOKEN__CONNECTION = 347, + PG_QUERY__TOKEN__CONSTRAINT = 348, + PG_QUERY__TOKEN__CONSTRAINTS = 349, + PG_QUERY__TOKEN__CONTENT_P = 350, + PG_QUERY__TOKEN__CONTINUE_P = 351, + PG_QUERY__TOKEN__CONVERSION_P = 352, + PG_QUERY__TOKEN__COPY = 353, + PG_QUERY__TOKEN__COST = 354, + PG_QUERY__TOKEN__CREATE = 355, + PG_QUERY__TOKEN__CROSS = 356, + PG_QUERY__TOKEN__CSV = 357, + PG_QUERY__TOKEN__CUBE = 358, + PG_QUERY__TOKEN__CURRENT_P = 359, + PG_QUERY__TOKEN__CURRENT_CATALOG = 360, + PG_QUERY__TOKEN__CURRENT_DATE = 361, + PG_QUERY__TOKEN__CURRENT_ROLE = 362, + PG_QUERY__TOKEN__CURRENT_SCHEMA = 363, + PG_QUERY__TOKEN__CURRENT_TIME = 364, + PG_QUERY__TOKEN__CURRENT_TIMESTAMP = 365, + PG_QUERY__TOKEN__CURRENT_USER = 366, + PG_QUERY__TOKEN__CURSOR = 367, + PG_QUERY__TOKEN__CYCLE = 368, + PG_QUERY__TOKEN__DATA_P = 369, + PG_QUERY__TOKEN__DATABASE = 370, + PG_QUERY__TOKEN__DAY_P = 371, + PG_QUERY__TOKEN__DEALLOCATE = 372, + PG_QUERY__TOKEN__DEC = 373, + PG_QUERY__TOKEN__DECIMAL_P = 374, + PG_QUERY__TOKEN__DECLARE = 375, + PG_QUERY__TOKEN__DEFAULT = 376, + PG_QUERY__TOKEN__DEFAULTS = 377, + PG_QUERY__TOKEN__DEFERRABLE = 378, + PG_QUERY__TOKEN__DEFERRED = 379, + PG_QUERY__TOKEN__DEFINER = 380, + PG_QUERY__TOKEN__DELETE_P = 381, + PG_QUERY__TOKEN__DELIMITER = 382, + PG_QUERY__TOKEN__DELIMITERS = 383, + PG_QUERY__TOKEN__DEPENDS = 384, + PG_QUERY__TOKEN__DEPTH = 385, + PG_QUERY__TOKEN__DESC = 386, + PG_QUERY__TOKEN__DETACH = 387, + PG_QUERY__TOKEN__DICTIONARY = 388, + PG_QUERY__TOKEN__DISABLE_P = 389, + PG_QUERY__TOKEN__DISCARD = 390, + PG_QUERY__TOKEN__DISTINCT = 391, + PG_QUERY__TOKEN__DO = 392, + PG_QUERY__TOKEN__DOCUMENT_P = 393, + PG_QUERY__TOKEN__DOMAIN_P = 394, + PG_QUERY__TOKEN__DOUBLE_P = 395, + PG_QUERY__TOKEN__DROP = 396, + PG_QUERY__TOKEN__EACH = 397, + PG_QUERY__TOKEN__ELSE = 398, + PG_QUERY__TOKEN__ENABLE_P = 399, + PG_QUERY__TOKEN__ENCODING = 400, + PG_QUERY__TOKEN__ENCRYPTED = 401, + PG_QUERY__TOKEN__END_P = 402, + PG_QUERY__TOKEN__ENUM_P = 403, + PG_QUERY__TOKEN__ESCAPE = 404, + PG_QUERY__TOKEN__EVENT = 405, + PG_QUERY__TOKEN__EXCEPT = 406, + PG_QUERY__TOKEN__EXCLUDE = 407, + PG_QUERY__TOKEN__EXCLUDING = 408, + PG_QUERY__TOKEN__EXCLUSIVE = 409, + PG_QUERY__TOKEN__EXECUTE = 410, + PG_QUERY__TOKEN__EXISTS = 411, + PG_QUERY__TOKEN__EXPLAIN = 412, + PG_QUERY__TOKEN__EXPRESSION = 413, + PG_QUERY__TOKEN__EXTENSION = 414, + PG_QUERY__TOKEN__EXTERNAL = 415, + PG_QUERY__TOKEN__EXTRACT = 416, + PG_QUERY__TOKEN__FALSE_P = 417, + PG_QUERY__TOKEN__FAMILY = 418, + PG_QUERY__TOKEN__FETCH = 419, + PG_QUERY__TOKEN__FILTER = 420, + PG_QUERY__TOKEN__FINALIZE = 421, + PG_QUERY__TOKEN__FIRST_P = 422, + PG_QUERY__TOKEN__FLOAT_P = 423, + PG_QUERY__TOKEN__FOLLOWING = 424, + PG_QUERY__TOKEN__FOR = 425, + PG_QUERY__TOKEN__FORCE = 426, + PG_QUERY__TOKEN__FOREIGN = 427, + PG_QUERY__TOKEN__FORMAT = 428, + PG_QUERY__TOKEN__FORWARD = 429, + PG_QUERY__TOKEN__FREEZE = 430, + PG_QUERY__TOKEN__FROM = 431, + PG_QUERY__TOKEN__FULL = 432, + PG_QUERY__TOKEN__FUNCTION = 433, + PG_QUERY__TOKEN__FUNCTIONS = 434, + PG_QUERY__TOKEN__GENERATED = 435, + PG_QUERY__TOKEN__GLOBAL = 436, + PG_QUERY__TOKEN__GRANT = 437, + PG_QUERY__TOKEN__GRANTED = 438, + PG_QUERY__TOKEN__GREATEST = 439, + PG_QUERY__TOKEN__GROUP_P = 440, + PG_QUERY__TOKEN__GROUPING = 441, + PG_QUERY__TOKEN__GROUPS = 442, + PG_QUERY__TOKEN__HANDLER = 443, + PG_QUERY__TOKEN__HAVING = 444, + PG_QUERY__TOKEN__HEADER_P = 445, + PG_QUERY__TOKEN__HOLD = 446, + PG_QUERY__TOKEN__HOUR_P = 447, + PG_QUERY__TOKEN__IDENTITY_P = 448, + PG_QUERY__TOKEN__IF_P = 449, + PG_QUERY__TOKEN__ILIKE = 450, + PG_QUERY__TOKEN__IMMEDIATE = 451, + PG_QUERY__TOKEN__IMMUTABLE = 452, + PG_QUERY__TOKEN__IMPLICIT_P = 453, + PG_QUERY__TOKEN__IMPORT_P = 454, + PG_QUERY__TOKEN__IN_P = 455, + PG_QUERY__TOKEN__INCLUDE = 456, + PG_QUERY__TOKEN__INCLUDING = 457, + PG_QUERY__TOKEN__INCREMENT = 458, + PG_QUERY__TOKEN__INDENT = 459, + PG_QUERY__TOKEN__INDEX = 460, + PG_QUERY__TOKEN__INDEXES = 461, + PG_QUERY__TOKEN__INHERIT = 462, + PG_QUERY__TOKEN__INHERITS = 463, + PG_QUERY__TOKEN__INITIALLY = 464, + PG_QUERY__TOKEN__INLINE_P = 465, + PG_QUERY__TOKEN__INNER_P = 466, + PG_QUERY__TOKEN__INOUT = 467, + PG_QUERY__TOKEN__INPUT_P = 468, + PG_QUERY__TOKEN__INSENSITIVE = 469, + PG_QUERY__TOKEN__INSERT = 470, + PG_QUERY__TOKEN__INSTEAD = 471, + PG_QUERY__TOKEN__INT_P = 472, + PG_QUERY__TOKEN__INTEGER = 473, + PG_QUERY__TOKEN__INTERSECT = 474, + PG_QUERY__TOKEN__INTERVAL = 475, + PG_QUERY__TOKEN__INTO = 476, + PG_QUERY__TOKEN__INVOKER = 477, + PG_QUERY__TOKEN__IS = 478, + PG_QUERY__TOKEN__ISNULL = 479, + PG_QUERY__TOKEN__ISOLATION = 480, + PG_QUERY__TOKEN__JOIN = 481, + PG_QUERY__TOKEN__JSON = 482, + PG_QUERY__TOKEN__JSON_ARRAY = 483, + PG_QUERY__TOKEN__JSON_ARRAYAGG = 484, + PG_QUERY__TOKEN__JSON_OBJECT = 485, + PG_QUERY__TOKEN__JSON_OBJECTAGG = 486, + PG_QUERY__TOKEN__KEY = 487, + PG_QUERY__TOKEN__KEYS = 488, + PG_QUERY__TOKEN__LABEL = 489, + PG_QUERY__TOKEN__LANGUAGE = 490, + PG_QUERY__TOKEN__LARGE_P = 491, + PG_QUERY__TOKEN__LAST_P = 492, + PG_QUERY__TOKEN__LATERAL_P = 493, + PG_QUERY__TOKEN__LEADING = 494, + PG_QUERY__TOKEN__LEAKPROOF = 495, + PG_QUERY__TOKEN__LEAST = 496, + PG_QUERY__TOKEN__LEFT = 497, + PG_QUERY__TOKEN__LEVEL = 498, + PG_QUERY__TOKEN__LIKE = 499, + PG_QUERY__TOKEN__LIMIT = 500, + PG_QUERY__TOKEN__LISTEN = 501, + PG_QUERY__TOKEN__LOAD = 502, + PG_QUERY__TOKEN__LOCAL = 503, + PG_QUERY__TOKEN__LOCALTIME = 504, + PG_QUERY__TOKEN__LOCALTIMESTAMP = 505, + PG_QUERY__TOKEN__LOCATION = 506, + PG_QUERY__TOKEN__LOCK_P = 507, + PG_QUERY__TOKEN__LOCKED = 508, + PG_QUERY__TOKEN__LOGGED = 509, + PG_QUERY__TOKEN__MAPPING = 510, + PG_QUERY__TOKEN__MATCH = 511, + PG_QUERY__TOKEN__MATCHED = 512, + PG_QUERY__TOKEN__MATERIALIZED = 513, + PG_QUERY__TOKEN__MAXVALUE = 514, + PG_QUERY__TOKEN__MERGE = 515, + PG_QUERY__TOKEN__METHOD = 516, + PG_QUERY__TOKEN__MINUTE_P = 517, + PG_QUERY__TOKEN__MINVALUE = 518, + PG_QUERY__TOKEN__MODE = 519, + PG_QUERY__TOKEN__MONTH_P = 520, + PG_QUERY__TOKEN__MOVE = 521, + PG_QUERY__TOKEN__NAME_P = 522, + PG_QUERY__TOKEN__NAMES = 523, + PG_QUERY__TOKEN__NATIONAL = 524, + PG_QUERY__TOKEN__NATURAL = 525, + PG_QUERY__TOKEN__NCHAR = 526, + PG_QUERY__TOKEN__NEW = 527, + PG_QUERY__TOKEN__NEXT = 528, + PG_QUERY__TOKEN__NFC = 529, + PG_QUERY__TOKEN__NFD = 530, + PG_QUERY__TOKEN__NFKC = 531, + PG_QUERY__TOKEN__NFKD = 532, + PG_QUERY__TOKEN__NO = 533, + PG_QUERY__TOKEN__NONE = 534, + PG_QUERY__TOKEN__NORMALIZE = 535, + PG_QUERY__TOKEN__NORMALIZED = 536, + PG_QUERY__TOKEN__NOT = 537, + PG_QUERY__TOKEN__NOTHING = 538, + PG_QUERY__TOKEN__NOTIFY = 539, + PG_QUERY__TOKEN__NOTNULL = 540, + PG_QUERY__TOKEN__NOWAIT = 541, + PG_QUERY__TOKEN__NULL_P = 542, + PG_QUERY__TOKEN__NULLIF = 543, + PG_QUERY__TOKEN__NULLS_P = 544, + PG_QUERY__TOKEN__NUMERIC = 545, + PG_QUERY__TOKEN__OBJECT_P = 546, + PG_QUERY__TOKEN__OF = 547, + PG_QUERY__TOKEN__OFF = 548, + PG_QUERY__TOKEN__OFFSET = 549, + PG_QUERY__TOKEN__OIDS = 550, + PG_QUERY__TOKEN__OLD = 551, + PG_QUERY__TOKEN__ON = 552, + PG_QUERY__TOKEN__ONLY = 553, + PG_QUERY__TOKEN__OPERATOR = 554, + PG_QUERY__TOKEN__OPTION = 555, + PG_QUERY__TOKEN__OPTIONS = 556, + PG_QUERY__TOKEN__OR = 557, + PG_QUERY__TOKEN__ORDER = 558, + PG_QUERY__TOKEN__ORDINALITY = 559, + PG_QUERY__TOKEN__OTHERS = 560, + PG_QUERY__TOKEN__OUT_P = 561, + PG_QUERY__TOKEN__OUTER_P = 562, + PG_QUERY__TOKEN__OVER = 563, + PG_QUERY__TOKEN__OVERLAPS = 564, + PG_QUERY__TOKEN__OVERLAY = 565, + PG_QUERY__TOKEN__OVERRIDING = 566, + PG_QUERY__TOKEN__OWNED = 567, + PG_QUERY__TOKEN__OWNER = 568, + PG_QUERY__TOKEN__PARALLEL = 569, + PG_QUERY__TOKEN__PARAMETER = 570, + PG_QUERY__TOKEN__PARSER = 571, + PG_QUERY__TOKEN__PARTIAL = 572, + PG_QUERY__TOKEN__PARTITION = 573, + PG_QUERY__TOKEN__PASSING = 574, + PG_QUERY__TOKEN__PASSWORD = 575, + PG_QUERY__TOKEN__PLACING = 576, + PG_QUERY__TOKEN__PLANS = 577, + PG_QUERY__TOKEN__POLICY = 578, + PG_QUERY__TOKEN__POSITION = 579, + PG_QUERY__TOKEN__PRECEDING = 580, + PG_QUERY__TOKEN__PRECISION = 581, + PG_QUERY__TOKEN__PRESERVE = 582, + PG_QUERY__TOKEN__PREPARE = 583, + PG_QUERY__TOKEN__PREPARED = 584, + PG_QUERY__TOKEN__PRIMARY = 585, + PG_QUERY__TOKEN__PRIOR = 586, + PG_QUERY__TOKEN__PRIVILEGES = 587, + PG_QUERY__TOKEN__PROCEDURAL = 588, + PG_QUERY__TOKEN__PROCEDURE = 589, + PG_QUERY__TOKEN__PROCEDURES = 590, + PG_QUERY__TOKEN__PROGRAM = 591, + PG_QUERY__TOKEN__PUBLICATION = 592, + PG_QUERY__TOKEN__QUOTE = 593, + PG_QUERY__TOKEN__RANGE = 594, + PG_QUERY__TOKEN__READ = 595, + PG_QUERY__TOKEN__REAL = 596, + PG_QUERY__TOKEN__REASSIGN = 597, + PG_QUERY__TOKEN__RECHECK = 598, + PG_QUERY__TOKEN__RECURSIVE = 599, + PG_QUERY__TOKEN__REF_P = 600, + PG_QUERY__TOKEN__REFERENCES = 601, + PG_QUERY__TOKEN__REFERENCING = 602, + PG_QUERY__TOKEN__REFRESH = 603, + PG_QUERY__TOKEN__REINDEX = 604, + PG_QUERY__TOKEN__RELATIVE_P = 605, + PG_QUERY__TOKEN__RELEASE = 606, + PG_QUERY__TOKEN__RENAME = 607, + PG_QUERY__TOKEN__REPEATABLE = 608, + PG_QUERY__TOKEN__REPLACE = 609, + PG_QUERY__TOKEN__REPLICA = 610, + PG_QUERY__TOKEN__RESET = 611, + PG_QUERY__TOKEN__RESTART = 612, + PG_QUERY__TOKEN__RESTRICT = 613, + PG_QUERY__TOKEN__RETURN = 614, + PG_QUERY__TOKEN__RETURNING = 615, + PG_QUERY__TOKEN__RETURNS = 616, + PG_QUERY__TOKEN__REVOKE = 617, + PG_QUERY__TOKEN__RIGHT = 618, + PG_QUERY__TOKEN__ROLE = 619, + PG_QUERY__TOKEN__ROLLBACK = 620, + PG_QUERY__TOKEN__ROLLUP = 621, + PG_QUERY__TOKEN__ROUTINE = 622, + PG_QUERY__TOKEN__ROUTINES = 623, + PG_QUERY__TOKEN__ROW = 624, + PG_QUERY__TOKEN__ROWS = 625, + PG_QUERY__TOKEN__RULE = 626, + PG_QUERY__TOKEN__SAVEPOINT = 627, + PG_QUERY__TOKEN__SCALAR = 628, + PG_QUERY__TOKEN__SCHEMA = 629, + PG_QUERY__TOKEN__SCHEMAS = 630, + PG_QUERY__TOKEN__SCROLL = 631, + PG_QUERY__TOKEN__SEARCH = 632, + PG_QUERY__TOKEN__SECOND_P = 633, + PG_QUERY__TOKEN__SECURITY = 634, + PG_QUERY__TOKEN__SELECT = 635, + PG_QUERY__TOKEN__SEQUENCE = 636, + PG_QUERY__TOKEN__SEQUENCES = 637, + PG_QUERY__TOKEN__SERIALIZABLE = 638, + PG_QUERY__TOKEN__SERVER = 639, + PG_QUERY__TOKEN__SESSION = 640, + PG_QUERY__TOKEN__SESSION_USER = 641, + PG_QUERY__TOKEN__SET = 642, + PG_QUERY__TOKEN__SETS = 643, + PG_QUERY__TOKEN__SETOF = 644, + PG_QUERY__TOKEN__SHARE = 645, + PG_QUERY__TOKEN__SHOW = 646, + PG_QUERY__TOKEN__SIMILAR = 647, + PG_QUERY__TOKEN__SIMPLE = 648, + PG_QUERY__TOKEN__SKIP = 649, + PG_QUERY__TOKEN__SMALLINT = 650, + PG_QUERY__TOKEN__SNAPSHOT = 651, + PG_QUERY__TOKEN__SOME = 652, + PG_QUERY__TOKEN__SQL_P = 653, + PG_QUERY__TOKEN__STABLE = 654, + PG_QUERY__TOKEN__STANDALONE_P = 655, + PG_QUERY__TOKEN__START = 656, + PG_QUERY__TOKEN__STATEMENT = 657, + PG_QUERY__TOKEN__STATISTICS = 658, + PG_QUERY__TOKEN__STDIN = 659, + PG_QUERY__TOKEN__STDOUT = 660, + PG_QUERY__TOKEN__STORAGE = 661, + PG_QUERY__TOKEN__STORED = 662, + PG_QUERY__TOKEN__STRICT_P = 663, + PG_QUERY__TOKEN__STRIP_P = 664, + PG_QUERY__TOKEN__SUBSCRIPTION = 665, + PG_QUERY__TOKEN__SUBSTRING = 666, + PG_QUERY__TOKEN__SUPPORT = 667, + PG_QUERY__TOKEN__SYMMETRIC = 668, + PG_QUERY__TOKEN__SYSID = 669, + PG_QUERY__TOKEN__SYSTEM_P = 670, + PG_QUERY__TOKEN__SYSTEM_USER = 671, + PG_QUERY__TOKEN__TABLE = 672, + PG_QUERY__TOKEN__TABLES = 673, + PG_QUERY__TOKEN__TABLESAMPLE = 674, + PG_QUERY__TOKEN__TABLESPACE = 675, + PG_QUERY__TOKEN__TEMP = 676, + PG_QUERY__TOKEN__TEMPLATE = 677, + PG_QUERY__TOKEN__TEMPORARY = 678, + PG_QUERY__TOKEN__TEXT_P = 679, + PG_QUERY__TOKEN__THEN = 680, + PG_QUERY__TOKEN__TIES = 681, + PG_QUERY__TOKEN__TIME = 682, + PG_QUERY__TOKEN__TIMESTAMP = 683, + PG_QUERY__TOKEN__TO = 684, + PG_QUERY__TOKEN__TRAILING = 685, + PG_QUERY__TOKEN__TRANSACTION = 686, + PG_QUERY__TOKEN__TRANSFORM = 687, + PG_QUERY__TOKEN__TREAT = 688, + PG_QUERY__TOKEN__TRIGGER = 689, + PG_QUERY__TOKEN__TRIM = 690, + PG_QUERY__TOKEN__TRUE_P = 691, + PG_QUERY__TOKEN__TRUNCATE = 692, + PG_QUERY__TOKEN__TRUSTED = 693, + PG_QUERY__TOKEN__TYPE_P = 694, + PG_QUERY__TOKEN__TYPES_P = 695, + PG_QUERY__TOKEN__UESCAPE = 696, + PG_QUERY__TOKEN__UNBOUNDED = 697, + PG_QUERY__TOKEN__UNCOMMITTED = 698, + PG_QUERY__TOKEN__UNENCRYPTED = 699, + PG_QUERY__TOKEN__UNION = 700, + PG_QUERY__TOKEN__UNIQUE = 701, + PG_QUERY__TOKEN__UNKNOWN = 702, + PG_QUERY__TOKEN__UNLISTEN = 703, + PG_QUERY__TOKEN__UNLOGGED = 704, + PG_QUERY__TOKEN__UNTIL = 705, + PG_QUERY__TOKEN__UPDATE = 706, + PG_QUERY__TOKEN__USER = 707, + PG_QUERY__TOKEN__USING = 708, + PG_QUERY__TOKEN__VACUUM = 709, + PG_QUERY__TOKEN__VALID = 710, + PG_QUERY__TOKEN__VALIDATE = 711, + PG_QUERY__TOKEN__VALIDATOR = 712, + PG_QUERY__TOKEN__VALUE_P = 713, + PG_QUERY__TOKEN__VALUES = 714, + PG_QUERY__TOKEN__VARCHAR = 715, + PG_QUERY__TOKEN__VARIADIC = 716, + PG_QUERY__TOKEN__VARYING = 717, + PG_QUERY__TOKEN__VERBOSE = 718, + PG_QUERY__TOKEN__VERSION_P = 719, + PG_QUERY__TOKEN__VIEW = 720, + PG_QUERY__TOKEN__VIEWS = 721, + PG_QUERY__TOKEN__VOLATILE = 722, + PG_QUERY__TOKEN__WHEN = 723, + PG_QUERY__TOKEN__WHERE = 724, + PG_QUERY__TOKEN__WHITESPACE_P = 725, + PG_QUERY__TOKEN__WINDOW = 726, + PG_QUERY__TOKEN__WITH = 727, + PG_QUERY__TOKEN__WITHIN = 728, + PG_QUERY__TOKEN__WITHOUT = 729, + PG_QUERY__TOKEN__WORK = 730, + PG_QUERY__TOKEN__WRAPPER = 731, + PG_QUERY__TOKEN__WRITE = 732, + PG_QUERY__TOKEN__XML_P = 733, + PG_QUERY__TOKEN__XMLATTRIBUTES = 734, + PG_QUERY__TOKEN__XMLCONCAT = 735, + PG_QUERY__TOKEN__XMLELEMENT = 736, + PG_QUERY__TOKEN__XMLEXISTS = 737, + PG_QUERY__TOKEN__XMLFOREST = 738, + PG_QUERY__TOKEN__XMLNAMESPACES = 739, + PG_QUERY__TOKEN__XMLPARSE = 740, + PG_QUERY__TOKEN__XMLPI = 741, + PG_QUERY__TOKEN__XMLROOT = 742, + PG_QUERY__TOKEN__XMLSERIALIZE = 743, + PG_QUERY__TOKEN__XMLTABLE = 744, + PG_QUERY__TOKEN__YEAR_P = 745, + PG_QUERY__TOKEN__YES_P = 746, + PG_QUERY__TOKEN__ZONE = 747, + PG_QUERY__TOKEN__FORMAT_LA = 748, + PG_QUERY__TOKEN__NOT_LA = 749, + PG_QUERY__TOKEN__NULLS_LA = 750, + PG_QUERY__TOKEN__WITH_LA = 751, + PG_QUERY__TOKEN__WITHOUT_LA = 752, + PG_QUERY__TOKEN__MODE_TYPE_NAME = 753, + PG_QUERY__TOKEN__MODE_PLPGSQL_EXPR = 754, + PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN1 = 755, + PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN2 = 756, + PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN3 = 757, + PG_QUERY__TOKEN__UMINUS = 758 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__TOKEN) } PgQuery__Token; @@ -1487,7 +1552,7 @@ struct PgQuery__ParseResult }; #define PG_QUERY__PARSE_RESULT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__parse_result__descriptor) \ - , 0, 0,NULL } +, 0, 0,NULL } struct PgQuery__ScanResult @@ -1499,7 +1564,7 @@ struct PgQuery__ScanResult }; #define PG_QUERY__SCAN_RESULT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__scan_result__descriptor) \ - , 0, 0,NULL } +, 0, 0,NULL } typedef enum { @@ -1507,241 +1572,255 @@ typedef enum { PG_QUERY__NODE__NODE_ALIAS = 1, PG_QUERY__NODE__NODE_RANGE_VAR = 2, PG_QUERY__NODE__NODE_TABLE_FUNC = 3, - PG_QUERY__NODE__NODE_VAR = 4, - PG_QUERY__NODE__NODE_PARAM = 5, - PG_QUERY__NODE__NODE_AGGREF = 6, - PG_QUERY__NODE__NODE_GROUPING_FUNC = 7, - PG_QUERY__NODE__NODE_WINDOW_FUNC = 8, - PG_QUERY__NODE__NODE_SUBSCRIPTING_REF = 9, - PG_QUERY__NODE__NODE_FUNC_EXPR = 10, - PG_QUERY__NODE__NODE_NAMED_ARG_EXPR = 11, - PG_QUERY__NODE__NODE_OP_EXPR = 12, - PG_QUERY__NODE__NODE_DISTINCT_EXPR = 13, - PG_QUERY__NODE__NODE_NULL_IF_EXPR = 14, - PG_QUERY__NODE__NODE_SCALAR_ARRAY_OP_EXPR = 15, - PG_QUERY__NODE__NODE_BOOL_EXPR = 16, - PG_QUERY__NODE__NODE_SUB_LINK = 17, - PG_QUERY__NODE__NODE_SUB_PLAN = 18, - PG_QUERY__NODE__NODE_ALTERNATIVE_SUB_PLAN = 19, - PG_QUERY__NODE__NODE_FIELD_SELECT = 20, - PG_QUERY__NODE__NODE_FIELD_STORE = 21, - PG_QUERY__NODE__NODE_RELABEL_TYPE = 22, - PG_QUERY__NODE__NODE_COERCE_VIA_IO = 23, - PG_QUERY__NODE__NODE_ARRAY_COERCE_EXPR = 24, - PG_QUERY__NODE__NODE_CONVERT_ROWTYPE_EXPR = 25, - PG_QUERY__NODE__NODE_COLLATE_EXPR = 26, - PG_QUERY__NODE__NODE_CASE_EXPR = 27, - PG_QUERY__NODE__NODE_CASE_WHEN = 28, - PG_QUERY__NODE__NODE_CASE_TEST_EXPR = 29, - PG_QUERY__NODE__NODE_ARRAY_EXPR = 30, - PG_QUERY__NODE__NODE_ROW_EXPR = 31, - PG_QUERY__NODE__NODE_ROW_COMPARE_EXPR = 32, - PG_QUERY__NODE__NODE_COALESCE_EXPR = 33, - PG_QUERY__NODE__NODE_MIN_MAX_EXPR = 34, - PG_QUERY__NODE__NODE_SQLVALUE_FUNCTION = 35, - PG_QUERY__NODE__NODE_XML_EXPR = 36, - PG_QUERY__NODE__NODE_NULL_TEST = 37, - PG_QUERY__NODE__NODE_BOOLEAN_TEST = 38, - PG_QUERY__NODE__NODE_COERCE_TO_DOMAIN = 39, - PG_QUERY__NODE__NODE_COERCE_TO_DOMAIN_VALUE = 40, - PG_QUERY__NODE__NODE_SET_TO_DEFAULT = 41, - PG_QUERY__NODE__NODE_CURRENT_OF_EXPR = 42, - PG_QUERY__NODE__NODE_NEXT_VALUE_EXPR = 43, - PG_QUERY__NODE__NODE_INFERENCE_ELEM = 44, - PG_QUERY__NODE__NODE_TARGET_ENTRY = 45, - PG_QUERY__NODE__NODE_RANGE_TBL_REF = 46, - PG_QUERY__NODE__NODE_JOIN_EXPR = 47, - PG_QUERY__NODE__NODE_FROM_EXPR = 48, - PG_QUERY__NODE__NODE_ON_CONFLICT_EXPR = 49, - PG_QUERY__NODE__NODE_INTO_CLAUSE = 50, - PG_QUERY__NODE__NODE_MERGE_ACTION = 51, - PG_QUERY__NODE__NODE_RAW_STMT = 52, - PG_QUERY__NODE__NODE_QUERY = 53, - PG_QUERY__NODE__NODE_INSERT_STMT = 54, - PG_QUERY__NODE__NODE_DELETE_STMT = 55, - PG_QUERY__NODE__NODE_UPDATE_STMT = 56, - PG_QUERY__NODE__NODE_MERGE_STMT = 57, - PG_QUERY__NODE__NODE_SELECT_STMT = 58, - PG_QUERY__NODE__NODE_RETURN_STMT = 59, - PG_QUERY__NODE__NODE_PLASSIGN_STMT = 60, - PG_QUERY__NODE__NODE_ALTER_TABLE_STMT = 61, - PG_QUERY__NODE__NODE_ALTER_TABLE_CMD = 62, - PG_QUERY__NODE__NODE_ALTER_DOMAIN_STMT = 63, - PG_QUERY__NODE__NODE_SET_OPERATION_STMT = 64, - PG_QUERY__NODE__NODE_GRANT_STMT = 65, - PG_QUERY__NODE__NODE_GRANT_ROLE_STMT = 66, - PG_QUERY__NODE__NODE_ALTER_DEFAULT_PRIVILEGES_STMT = 67, - PG_QUERY__NODE__NODE_CLOSE_PORTAL_STMT = 68, - PG_QUERY__NODE__NODE_CLUSTER_STMT = 69, - PG_QUERY__NODE__NODE_COPY_STMT = 70, - PG_QUERY__NODE__NODE_CREATE_STMT = 71, - PG_QUERY__NODE__NODE_DEFINE_STMT = 72, - PG_QUERY__NODE__NODE_DROP_STMT = 73, - PG_QUERY__NODE__NODE_TRUNCATE_STMT = 74, - PG_QUERY__NODE__NODE_COMMENT_STMT = 75, - PG_QUERY__NODE__NODE_FETCH_STMT = 76, - PG_QUERY__NODE__NODE_INDEX_STMT = 77, - PG_QUERY__NODE__NODE_CREATE_FUNCTION_STMT = 78, - PG_QUERY__NODE__NODE_ALTER_FUNCTION_STMT = 79, - PG_QUERY__NODE__NODE_DO_STMT = 80, - PG_QUERY__NODE__NODE_RENAME_STMT = 81, - PG_QUERY__NODE__NODE_RULE_STMT = 82, - PG_QUERY__NODE__NODE_NOTIFY_STMT = 83, - PG_QUERY__NODE__NODE_LISTEN_STMT = 84, - PG_QUERY__NODE__NODE_UNLISTEN_STMT = 85, - PG_QUERY__NODE__NODE_TRANSACTION_STMT = 86, - PG_QUERY__NODE__NODE_VIEW_STMT = 87, - PG_QUERY__NODE__NODE_LOAD_STMT = 88, - PG_QUERY__NODE__NODE_CREATE_DOMAIN_STMT = 89, - PG_QUERY__NODE__NODE_CREATEDB_STMT = 90, - PG_QUERY__NODE__NODE_DROPDB_STMT = 91, - PG_QUERY__NODE__NODE_VACUUM_STMT = 92, - PG_QUERY__NODE__NODE_EXPLAIN_STMT = 93, - PG_QUERY__NODE__NODE_CREATE_TABLE_AS_STMT = 94, - PG_QUERY__NODE__NODE_CREATE_SEQ_STMT = 95, - PG_QUERY__NODE__NODE_ALTER_SEQ_STMT = 96, - PG_QUERY__NODE__NODE_VARIABLE_SET_STMT = 97, - PG_QUERY__NODE__NODE_VARIABLE_SHOW_STMT = 98, - PG_QUERY__NODE__NODE_DISCARD_STMT = 99, - PG_QUERY__NODE__NODE_CREATE_TRIG_STMT = 100, - PG_QUERY__NODE__NODE_CREATE_PLANG_STMT = 101, - PG_QUERY__NODE__NODE_CREATE_ROLE_STMT = 102, - PG_QUERY__NODE__NODE_ALTER_ROLE_STMT = 103, - PG_QUERY__NODE__NODE_DROP_ROLE_STMT = 104, - PG_QUERY__NODE__NODE_LOCK_STMT = 105, - PG_QUERY__NODE__NODE_CONSTRAINTS_SET_STMT = 106, - PG_QUERY__NODE__NODE_REINDEX_STMT = 107, - PG_QUERY__NODE__NODE_CHECK_POINT_STMT = 108, - PG_QUERY__NODE__NODE_CREATE_SCHEMA_STMT = 109, - PG_QUERY__NODE__NODE_ALTER_DATABASE_STMT = 110, - PG_QUERY__NODE__NODE_ALTER_DATABASE_REFRESH_COLL_STMT = 111, - PG_QUERY__NODE__NODE_ALTER_DATABASE_SET_STMT = 112, - PG_QUERY__NODE__NODE_ALTER_ROLE_SET_STMT = 113, - PG_QUERY__NODE__NODE_CREATE_CONVERSION_STMT = 114, - PG_QUERY__NODE__NODE_CREATE_CAST_STMT = 115, - PG_QUERY__NODE__NODE_CREATE_OP_CLASS_STMT = 116, - PG_QUERY__NODE__NODE_CREATE_OP_FAMILY_STMT = 117, - PG_QUERY__NODE__NODE_ALTER_OP_FAMILY_STMT = 118, - PG_QUERY__NODE__NODE_PREPARE_STMT = 119, - PG_QUERY__NODE__NODE_EXECUTE_STMT = 120, - PG_QUERY__NODE__NODE_DEALLOCATE_STMT = 121, - PG_QUERY__NODE__NODE_DECLARE_CURSOR_STMT = 122, - PG_QUERY__NODE__NODE_CREATE_TABLE_SPACE_STMT = 123, - PG_QUERY__NODE__NODE_DROP_TABLE_SPACE_STMT = 124, - PG_QUERY__NODE__NODE_ALTER_OBJECT_DEPENDS_STMT = 125, - PG_QUERY__NODE__NODE_ALTER_OBJECT_SCHEMA_STMT = 126, - PG_QUERY__NODE__NODE_ALTER_OWNER_STMT = 127, - PG_QUERY__NODE__NODE_ALTER_OPERATOR_STMT = 128, - PG_QUERY__NODE__NODE_ALTER_TYPE_STMT = 129, - PG_QUERY__NODE__NODE_DROP_OWNED_STMT = 130, - PG_QUERY__NODE__NODE_REASSIGN_OWNED_STMT = 131, - PG_QUERY__NODE__NODE_COMPOSITE_TYPE_STMT = 132, - PG_QUERY__NODE__NODE_CREATE_ENUM_STMT = 133, - PG_QUERY__NODE__NODE_CREATE_RANGE_STMT = 134, - PG_QUERY__NODE__NODE_ALTER_ENUM_STMT = 135, - PG_QUERY__NODE__NODE_ALTER_TSDICTIONARY_STMT = 136, - PG_QUERY__NODE__NODE_ALTER_TSCONFIGURATION_STMT = 137, - PG_QUERY__NODE__NODE_CREATE_FDW_STMT = 138, - PG_QUERY__NODE__NODE_ALTER_FDW_STMT = 139, - PG_QUERY__NODE__NODE_CREATE_FOREIGN_SERVER_STMT = 140, - PG_QUERY__NODE__NODE_ALTER_FOREIGN_SERVER_STMT = 141, - PG_QUERY__NODE__NODE_CREATE_USER_MAPPING_STMT = 142, - PG_QUERY__NODE__NODE_ALTER_USER_MAPPING_STMT = 143, - PG_QUERY__NODE__NODE_DROP_USER_MAPPING_STMT = 144, - PG_QUERY__NODE__NODE_ALTER_TABLE_SPACE_OPTIONS_STMT = 145, - PG_QUERY__NODE__NODE_ALTER_TABLE_MOVE_ALL_STMT = 146, - PG_QUERY__NODE__NODE_SEC_LABEL_STMT = 147, - PG_QUERY__NODE__NODE_CREATE_FOREIGN_TABLE_STMT = 148, - PG_QUERY__NODE__NODE_IMPORT_FOREIGN_SCHEMA_STMT = 149, - PG_QUERY__NODE__NODE_CREATE_EXTENSION_STMT = 150, - PG_QUERY__NODE__NODE_ALTER_EXTENSION_STMT = 151, - PG_QUERY__NODE__NODE_ALTER_EXTENSION_CONTENTS_STMT = 152, - PG_QUERY__NODE__NODE_CREATE_EVENT_TRIG_STMT = 153, - PG_QUERY__NODE__NODE_ALTER_EVENT_TRIG_STMT = 154, - PG_QUERY__NODE__NODE_REFRESH_MAT_VIEW_STMT = 155, - PG_QUERY__NODE__NODE_REPLICA_IDENTITY_STMT = 156, - PG_QUERY__NODE__NODE_ALTER_SYSTEM_STMT = 157, - PG_QUERY__NODE__NODE_CREATE_POLICY_STMT = 158, - PG_QUERY__NODE__NODE_ALTER_POLICY_STMT = 159, - PG_QUERY__NODE__NODE_CREATE_TRANSFORM_STMT = 160, - PG_QUERY__NODE__NODE_CREATE_AM_STMT = 161, - PG_QUERY__NODE__NODE_CREATE_PUBLICATION_STMT = 162, - PG_QUERY__NODE__NODE_ALTER_PUBLICATION_STMT = 163, - PG_QUERY__NODE__NODE_CREATE_SUBSCRIPTION_STMT = 164, - PG_QUERY__NODE__NODE_ALTER_SUBSCRIPTION_STMT = 165, - PG_QUERY__NODE__NODE_DROP_SUBSCRIPTION_STMT = 166, - PG_QUERY__NODE__NODE_CREATE_STATS_STMT = 167, - PG_QUERY__NODE__NODE_ALTER_COLLATION_STMT = 168, - PG_QUERY__NODE__NODE_CALL_STMT = 169, - PG_QUERY__NODE__NODE_ALTER_STATS_STMT = 170, - PG_QUERY__NODE__NODE_A_EXPR = 171, - PG_QUERY__NODE__NODE_COLUMN_REF = 172, - PG_QUERY__NODE__NODE_PARAM_REF = 173, - PG_QUERY__NODE__NODE_FUNC_CALL = 174, - PG_QUERY__NODE__NODE_A_STAR = 175, - PG_QUERY__NODE__NODE_A_INDICES = 176, - PG_QUERY__NODE__NODE_A_INDIRECTION = 177, - PG_QUERY__NODE__NODE_A_ARRAY_EXPR = 178, - PG_QUERY__NODE__NODE_RES_TARGET = 179, - PG_QUERY__NODE__NODE_MULTI_ASSIGN_REF = 180, - PG_QUERY__NODE__NODE_TYPE_CAST = 181, - PG_QUERY__NODE__NODE_COLLATE_CLAUSE = 182, - PG_QUERY__NODE__NODE_SORT_BY = 183, - PG_QUERY__NODE__NODE_WINDOW_DEF = 184, - PG_QUERY__NODE__NODE_RANGE_SUBSELECT = 185, - PG_QUERY__NODE__NODE_RANGE_FUNCTION = 186, - PG_QUERY__NODE__NODE_RANGE_TABLE_SAMPLE = 187, - PG_QUERY__NODE__NODE_RANGE_TABLE_FUNC = 188, - PG_QUERY__NODE__NODE_RANGE_TABLE_FUNC_COL = 189, - PG_QUERY__NODE__NODE_TYPE_NAME = 190, - PG_QUERY__NODE__NODE_COLUMN_DEF = 191, - PG_QUERY__NODE__NODE_INDEX_ELEM = 192, - PG_QUERY__NODE__NODE_STATS_ELEM = 193, - PG_QUERY__NODE__NODE_CONSTRAINT = 194, - PG_QUERY__NODE__NODE_DEF_ELEM = 195, - PG_QUERY__NODE__NODE_RANGE_TBL_ENTRY = 196, - PG_QUERY__NODE__NODE_RANGE_TBL_FUNCTION = 197, - PG_QUERY__NODE__NODE_TABLE_SAMPLE_CLAUSE = 198, - PG_QUERY__NODE__NODE_WITH_CHECK_OPTION = 199, - PG_QUERY__NODE__NODE_SORT_GROUP_CLAUSE = 200, - PG_QUERY__NODE__NODE_GROUPING_SET = 201, - PG_QUERY__NODE__NODE_WINDOW_CLAUSE = 202, - PG_QUERY__NODE__NODE_OBJECT_WITH_ARGS = 203, - PG_QUERY__NODE__NODE_ACCESS_PRIV = 204, - PG_QUERY__NODE__NODE_CREATE_OP_CLASS_ITEM = 205, - PG_QUERY__NODE__NODE_TABLE_LIKE_CLAUSE = 206, - PG_QUERY__NODE__NODE_FUNCTION_PARAMETER = 207, - PG_QUERY__NODE__NODE_LOCKING_CLAUSE = 208, - PG_QUERY__NODE__NODE_ROW_MARK_CLAUSE = 209, - PG_QUERY__NODE__NODE_XML_SERIALIZE = 210, - PG_QUERY__NODE__NODE_WITH_CLAUSE = 211, - PG_QUERY__NODE__NODE_INFER_CLAUSE = 212, - PG_QUERY__NODE__NODE_ON_CONFLICT_CLAUSE = 213, - PG_QUERY__NODE__NODE_CTESEARCH_CLAUSE = 214, - PG_QUERY__NODE__NODE_CTECYCLE_CLAUSE = 215, - PG_QUERY__NODE__NODE_COMMON_TABLE_EXPR = 216, - PG_QUERY__NODE__NODE_MERGE_WHEN_CLAUSE = 217, - PG_QUERY__NODE__NODE_ROLE_SPEC = 218, - PG_QUERY__NODE__NODE_TRIGGER_TRANSITION = 219, - PG_QUERY__NODE__NODE_PARTITION_ELEM = 220, - PG_QUERY__NODE__NODE_PARTITION_SPEC = 221, - PG_QUERY__NODE__NODE_PARTITION_BOUND_SPEC = 222, - PG_QUERY__NODE__NODE_PARTITION_RANGE_DATUM = 223, - PG_QUERY__NODE__NODE_PARTITION_CMD = 224, - PG_QUERY__NODE__NODE_VACUUM_RELATION = 225, - PG_QUERY__NODE__NODE_PUBLICATION_OBJ_SPEC = 226, - PG_QUERY__NODE__NODE_PUBLICATION_TABLE = 227, - PG_QUERY__NODE__NODE_INLINE_CODE_BLOCK = 228, - PG_QUERY__NODE__NODE_CALL_CONTEXT = 229, - PG_QUERY__NODE__NODE_INTEGER = 230, - PG_QUERY__NODE__NODE_FLOAT = 231, - PG_QUERY__NODE__NODE_BOOLEAN = 232, - PG_QUERY__NODE__NODE_STRING = 233, - PG_QUERY__NODE__NODE_BIT_STRING = 234, - PG_QUERY__NODE__NODE_LIST = 235, - PG_QUERY__NODE__NODE_INT_LIST = 236, - PG_QUERY__NODE__NODE_OID_LIST = 237, - PG_QUERY__NODE__NODE_A_CONST = 238 + PG_QUERY__NODE__NODE_INTO_CLAUSE = 4, + PG_QUERY__NODE__NODE_VAR = 5, + PG_QUERY__NODE__NODE_PARAM = 6, + PG_QUERY__NODE__NODE_AGGREF = 7, + PG_QUERY__NODE__NODE_GROUPING_FUNC = 8, + PG_QUERY__NODE__NODE_WINDOW_FUNC = 9, + PG_QUERY__NODE__NODE_SUBSCRIPTING_REF = 10, + PG_QUERY__NODE__NODE_FUNC_EXPR = 11, + PG_QUERY__NODE__NODE_NAMED_ARG_EXPR = 12, + PG_QUERY__NODE__NODE_OP_EXPR = 13, + PG_QUERY__NODE__NODE_DISTINCT_EXPR = 14, + PG_QUERY__NODE__NODE_NULL_IF_EXPR = 15, + PG_QUERY__NODE__NODE_SCALAR_ARRAY_OP_EXPR = 16, + PG_QUERY__NODE__NODE_BOOL_EXPR = 17, + PG_QUERY__NODE__NODE_SUB_LINK = 18, + PG_QUERY__NODE__NODE_SUB_PLAN = 19, + PG_QUERY__NODE__NODE_ALTERNATIVE_SUB_PLAN = 20, + PG_QUERY__NODE__NODE_FIELD_SELECT = 21, + PG_QUERY__NODE__NODE_FIELD_STORE = 22, + PG_QUERY__NODE__NODE_RELABEL_TYPE = 23, + PG_QUERY__NODE__NODE_COERCE_VIA_IO = 24, + PG_QUERY__NODE__NODE_ARRAY_COERCE_EXPR = 25, + PG_QUERY__NODE__NODE_CONVERT_ROWTYPE_EXPR = 26, + PG_QUERY__NODE__NODE_COLLATE_EXPR = 27, + PG_QUERY__NODE__NODE_CASE_EXPR = 28, + PG_QUERY__NODE__NODE_CASE_WHEN = 29, + PG_QUERY__NODE__NODE_CASE_TEST_EXPR = 30, + PG_QUERY__NODE__NODE_ARRAY_EXPR = 31, + PG_QUERY__NODE__NODE_ROW_EXPR = 32, + PG_QUERY__NODE__NODE_ROW_COMPARE_EXPR = 33, + PG_QUERY__NODE__NODE_COALESCE_EXPR = 34, + PG_QUERY__NODE__NODE_MIN_MAX_EXPR = 35, + PG_QUERY__NODE__NODE_SQLVALUE_FUNCTION = 36, + PG_QUERY__NODE__NODE_XML_EXPR = 37, + PG_QUERY__NODE__NODE_JSON_FORMAT = 38, + PG_QUERY__NODE__NODE_JSON_RETURNING = 39, + PG_QUERY__NODE__NODE_JSON_VALUE_EXPR = 40, + PG_QUERY__NODE__NODE_JSON_CONSTRUCTOR_EXPR = 41, + PG_QUERY__NODE__NODE_JSON_IS_PREDICATE = 42, + PG_QUERY__NODE__NODE_NULL_TEST = 43, + PG_QUERY__NODE__NODE_BOOLEAN_TEST = 44, + PG_QUERY__NODE__NODE_COERCE_TO_DOMAIN = 45, + PG_QUERY__NODE__NODE_COERCE_TO_DOMAIN_VALUE = 46, + PG_QUERY__NODE__NODE_SET_TO_DEFAULT = 47, + PG_QUERY__NODE__NODE_CURRENT_OF_EXPR = 48, + PG_QUERY__NODE__NODE_NEXT_VALUE_EXPR = 49, + PG_QUERY__NODE__NODE_INFERENCE_ELEM = 50, + PG_QUERY__NODE__NODE_TARGET_ENTRY = 51, + PG_QUERY__NODE__NODE_RANGE_TBL_REF = 52, + PG_QUERY__NODE__NODE_JOIN_EXPR = 53, + PG_QUERY__NODE__NODE_FROM_EXPR = 54, + PG_QUERY__NODE__NODE_ON_CONFLICT_EXPR = 55, + PG_QUERY__NODE__NODE_QUERY = 56, + PG_QUERY__NODE__NODE_TYPE_NAME = 57, + PG_QUERY__NODE__NODE_COLUMN_REF = 58, + PG_QUERY__NODE__NODE_PARAM_REF = 59, + PG_QUERY__NODE__NODE_A_EXPR = 60, + PG_QUERY__NODE__NODE_TYPE_CAST = 61, + PG_QUERY__NODE__NODE_COLLATE_CLAUSE = 62, + PG_QUERY__NODE__NODE_ROLE_SPEC = 63, + PG_QUERY__NODE__NODE_FUNC_CALL = 64, + PG_QUERY__NODE__NODE_A_STAR = 65, + PG_QUERY__NODE__NODE_A_INDICES = 66, + PG_QUERY__NODE__NODE_A_INDIRECTION = 67, + PG_QUERY__NODE__NODE_A_ARRAY_EXPR = 68, + PG_QUERY__NODE__NODE_RES_TARGET = 69, + PG_QUERY__NODE__NODE_MULTI_ASSIGN_REF = 70, + PG_QUERY__NODE__NODE_SORT_BY = 71, + PG_QUERY__NODE__NODE_WINDOW_DEF = 72, + PG_QUERY__NODE__NODE_RANGE_SUBSELECT = 73, + PG_QUERY__NODE__NODE_RANGE_FUNCTION = 74, + PG_QUERY__NODE__NODE_RANGE_TABLE_FUNC = 75, + PG_QUERY__NODE__NODE_RANGE_TABLE_FUNC_COL = 76, + PG_QUERY__NODE__NODE_RANGE_TABLE_SAMPLE = 77, + PG_QUERY__NODE__NODE_COLUMN_DEF = 78, + PG_QUERY__NODE__NODE_TABLE_LIKE_CLAUSE = 79, + PG_QUERY__NODE__NODE_INDEX_ELEM = 80, + PG_QUERY__NODE__NODE_DEF_ELEM = 81, + PG_QUERY__NODE__NODE_LOCKING_CLAUSE = 82, + PG_QUERY__NODE__NODE_XML_SERIALIZE = 83, + PG_QUERY__NODE__NODE_PARTITION_ELEM = 84, + PG_QUERY__NODE__NODE_PARTITION_SPEC = 85, + PG_QUERY__NODE__NODE_PARTITION_BOUND_SPEC = 86, + PG_QUERY__NODE__NODE_PARTITION_RANGE_DATUM = 87, + PG_QUERY__NODE__NODE_PARTITION_CMD = 88, + PG_QUERY__NODE__NODE_RANGE_TBL_ENTRY = 89, + PG_QUERY__NODE__NODE_RTEPERMISSION_INFO = 90, + PG_QUERY__NODE__NODE_RANGE_TBL_FUNCTION = 91, + PG_QUERY__NODE__NODE_TABLE_SAMPLE_CLAUSE = 92, + PG_QUERY__NODE__NODE_WITH_CHECK_OPTION = 93, + PG_QUERY__NODE__NODE_SORT_GROUP_CLAUSE = 94, + PG_QUERY__NODE__NODE_GROUPING_SET = 95, + PG_QUERY__NODE__NODE_WINDOW_CLAUSE = 96, + PG_QUERY__NODE__NODE_ROW_MARK_CLAUSE = 97, + PG_QUERY__NODE__NODE_WITH_CLAUSE = 98, + PG_QUERY__NODE__NODE_INFER_CLAUSE = 99, + PG_QUERY__NODE__NODE_ON_CONFLICT_CLAUSE = 100, + PG_QUERY__NODE__NODE_CTESEARCH_CLAUSE = 101, + PG_QUERY__NODE__NODE_CTECYCLE_CLAUSE = 102, + PG_QUERY__NODE__NODE_COMMON_TABLE_EXPR = 103, + PG_QUERY__NODE__NODE_MERGE_WHEN_CLAUSE = 104, + PG_QUERY__NODE__NODE_MERGE_ACTION = 105, + PG_QUERY__NODE__NODE_TRIGGER_TRANSITION = 106, + PG_QUERY__NODE__NODE_JSON_OUTPUT = 107, + PG_QUERY__NODE__NODE_JSON_KEY_VALUE = 108, + PG_QUERY__NODE__NODE_JSON_OBJECT_CONSTRUCTOR = 109, + PG_QUERY__NODE__NODE_JSON_ARRAY_CONSTRUCTOR = 110, + PG_QUERY__NODE__NODE_JSON_ARRAY_QUERY_CONSTRUCTOR = 111, + PG_QUERY__NODE__NODE_JSON_AGG_CONSTRUCTOR = 112, + PG_QUERY__NODE__NODE_JSON_OBJECT_AGG = 113, + PG_QUERY__NODE__NODE_JSON_ARRAY_AGG = 114, + PG_QUERY__NODE__NODE_RAW_STMT = 115, + PG_QUERY__NODE__NODE_INSERT_STMT = 116, + PG_QUERY__NODE__NODE_DELETE_STMT = 117, + PG_QUERY__NODE__NODE_UPDATE_STMT = 118, + PG_QUERY__NODE__NODE_MERGE_STMT = 119, + PG_QUERY__NODE__NODE_SELECT_STMT = 120, + PG_QUERY__NODE__NODE_SET_OPERATION_STMT = 121, + PG_QUERY__NODE__NODE_RETURN_STMT = 122, + PG_QUERY__NODE__NODE_PLASSIGN_STMT = 123, + PG_QUERY__NODE__NODE_CREATE_SCHEMA_STMT = 124, + PG_QUERY__NODE__NODE_ALTER_TABLE_STMT = 125, + PG_QUERY__NODE__NODE_REPLICA_IDENTITY_STMT = 126, + PG_QUERY__NODE__NODE_ALTER_TABLE_CMD = 127, + PG_QUERY__NODE__NODE_ALTER_COLLATION_STMT = 128, + PG_QUERY__NODE__NODE_ALTER_DOMAIN_STMT = 129, + PG_QUERY__NODE__NODE_GRANT_STMT = 130, + PG_QUERY__NODE__NODE_OBJECT_WITH_ARGS = 131, + PG_QUERY__NODE__NODE_ACCESS_PRIV = 132, + PG_QUERY__NODE__NODE_GRANT_ROLE_STMT = 133, + PG_QUERY__NODE__NODE_ALTER_DEFAULT_PRIVILEGES_STMT = 134, + PG_QUERY__NODE__NODE_COPY_STMT = 135, + PG_QUERY__NODE__NODE_VARIABLE_SET_STMT = 136, + PG_QUERY__NODE__NODE_VARIABLE_SHOW_STMT = 137, + PG_QUERY__NODE__NODE_CREATE_STMT = 138, + PG_QUERY__NODE__NODE_CONSTRAINT = 139, + PG_QUERY__NODE__NODE_CREATE_TABLE_SPACE_STMT = 140, + PG_QUERY__NODE__NODE_DROP_TABLE_SPACE_STMT = 141, + PG_QUERY__NODE__NODE_ALTER_TABLE_SPACE_OPTIONS_STMT = 142, + PG_QUERY__NODE__NODE_ALTER_TABLE_MOVE_ALL_STMT = 143, + PG_QUERY__NODE__NODE_CREATE_EXTENSION_STMT = 144, + PG_QUERY__NODE__NODE_ALTER_EXTENSION_STMT = 145, + PG_QUERY__NODE__NODE_ALTER_EXTENSION_CONTENTS_STMT = 146, + PG_QUERY__NODE__NODE_CREATE_FDW_STMT = 147, + PG_QUERY__NODE__NODE_ALTER_FDW_STMT = 148, + PG_QUERY__NODE__NODE_CREATE_FOREIGN_SERVER_STMT = 149, + PG_QUERY__NODE__NODE_ALTER_FOREIGN_SERVER_STMT = 150, + PG_QUERY__NODE__NODE_CREATE_FOREIGN_TABLE_STMT = 151, + PG_QUERY__NODE__NODE_CREATE_USER_MAPPING_STMT = 152, + PG_QUERY__NODE__NODE_ALTER_USER_MAPPING_STMT = 153, + PG_QUERY__NODE__NODE_DROP_USER_MAPPING_STMT = 154, + PG_QUERY__NODE__NODE_IMPORT_FOREIGN_SCHEMA_STMT = 155, + PG_QUERY__NODE__NODE_CREATE_POLICY_STMT = 156, + PG_QUERY__NODE__NODE_ALTER_POLICY_STMT = 157, + PG_QUERY__NODE__NODE_CREATE_AM_STMT = 158, + PG_QUERY__NODE__NODE_CREATE_TRIG_STMT = 159, + PG_QUERY__NODE__NODE_CREATE_EVENT_TRIG_STMT = 160, + PG_QUERY__NODE__NODE_ALTER_EVENT_TRIG_STMT = 161, + PG_QUERY__NODE__NODE_CREATE_PLANG_STMT = 162, + PG_QUERY__NODE__NODE_CREATE_ROLE_STMT = 163, + PG_QUERY__NODE__NODE_ALTER_ROLE_STMT = 164, + PG_QUERY__NODE__NODE_ALTER_ROLE_SET_STMT = 165, + PG_QUERY__NODE__NODE_DROP_ROLE_STMT = 166, + PG_QUERY__NODE__NODE_CREATE_SEQ_STMT = 167, + PG_QUERY__NODE__NODE_ALTER_SEQ_STMT = 168, + PG_QUERY__NODE__NODE_DEFINE_STMT = 169, + PG_QUERY__NODE__NODE_CREATE_DOMAIN_STMT = 170, + PG_QUERY__NODE__NODE_CREATE_OP_CLASS_STMT = 171, + PG_QUERY__NODE__NODE_CREATE_OP_CLASS_ITEM = 172, + PG_QUERY__NODE__NODE_CREATE_OP_FAMILY_STMT = 173, + PG_QUERY__NODE__NODE_ALTER_OP_FAMILY_STMT = 174, + PG_QUERY__NODE__NODE_DROP_STMT = 175, + PG_QUERY__NODE__NODE_TRUNCATE_STMT = 176, + PG_QUERY__NODE__NODE_COMMENT_STMT = 177, + PG_QUERY__NODE__NODE_SEC_LABEL_STMT = 178, + PG_QUERY__NODE__NODE_DECLARE_CURSOR_STMT = 179, + PG_QUERY__NODE__NODE_CLOSE_PORTAL_STMT = 180, + PG_QUERY__NODE__NODE_FETCH_STMT = 181, + PG_QUERY__NODE__NODE_INDEX_STMT = 182, + PG_QUERY__NODE__NODE_CREATE_STATS_STMT = 183, + PG_QUERY__NODE__NODE_STATS_ELEM = 184, + PG_QUERY__NODE__NODE_ALTER_STATS_STMT = 185, + PG_QUERY__NODE__NODE_CREATE_FUNCTION_STMT = 186, + PG_QUERY__NODE__NODE_FUNCTION_PARAMETER = 187, + PG_QUERY__NODE__NODE_ALTER_FUNCTION_STMT = 188, + PG_QUERY__NODE__NODE_DO_STMT = 189, + PG_QUERY__NODE__NODE_INLINE_CODE_BLOCK = 190, + PG_QUERY__NODE__NODE_CALL_STMT = 191, + PG_QUERY__NODE__NODE_CALL_CONTEXT = 192, + PG_QUERY__NODE__NODE_RENAME_STMT = 193, + PG_QUERY__NODE__NODE_ALTER_OBJECT_DEPENDS_STMT = 194, + PG_QUERY__NODE__NODE_ALTER_OBJECT_SCHEMA_STMT = 195, + PG_QUERY__NODE__NODE_ALTER_OWNER_STMT = 196, + PG_QUERY__NODE__NODE_ALTER_OPERATOR_STMT = 197, + PG_QUERY__NODE__NODE_ALTER_TYPE_STMT = 198, + PG_QUERY__NODE__NODE_RULE_STMT = 199, + PG_QUERY__NODE__NODE_NOTIFY_STMT = 200, + PG_QUERY__NODE__NODE_LISTEN_STMT = 201, + PG_QUERY__NODE__NODE_UNLISTEN_STMT = 202, + PG_QUERY__NODE__NODE_TRANSACTION_STMT = 203, + PG_QUERY__NODE__NODE_COMPOSITE_TYPE_STMT = 204, + PG_QUERY__NODE__NODE_CREATE_ENUM_STMT = 205, + PG_QUERY__NODE__NODE_CREATE_RANGE_STMT = 206, + PG_QUERY__NODE__NODE_ALTER_ENUM_STMT = 207, + PG_QUERY__NODE__NODE_VIEW_STMT = 208, + PG_QUERY__NODE__NODE_LOAD_STMT = 209, + PG_QUERY__NODE__NODE_CREATEDB_STMT = 210, + PG_QUERY__NODE__NODE_ALTER_DATABASE_STMT = 211, + PG_QUERY__NODE__NODE_ALTER_DATABASE_REFRESH_COLL_STMT = 212, + PG_QUERY__NODE__NODE_ALTER_DATABASE_SET_STMT = 213, + PG_QUERY__NODE__NODE_DROPDB_STMT = 214, + PG_QUERY__NODE__NODE_ALTER_SYSTEM_STMT = 215, + PG_QUERY__NODE__NODE_CLUSTER_STMT = 216, + PG_QUERY__NODE__NODE_VACUUM_STMT = 217, + PG_QUERY__NODE__NODE_VACUUM_RELATION = 218, + PG_QUERY__NODE__NODE_EXPLAIN_STMT = 219, + PG_QUERY__NODE__NODE_CREATE_TABLE_AS_STMT = 220, + PG_QUERY__NODE__NODE_REFRESH_MAT_VIEW_STMT = 221, + PG_QUERY__NODE__NODE_CHECK_POINT_STMT = 222, + PG_QUERY__NODE__NODE_DISCARD_STMT = 223, + PG_QUERY__NODE__NODE_LOCK_STMT = 224, + PG_QUERY__NODE__NODE_CONSTRAINTS_SET_STMT = 225, + PG_QUERY__NODE__NODE_REINDEX_STMT = 226, + PG_QUERY__NODE__NODE_CREATE_CONVERSION_STMT = 227, + PG_QUERY__NODE__NODE_CREATE_CAST_STMT = 228, + PG_QUERY__NODE__NODE_CREATE_TRANSFORM_STMT = 229, + PG_QUERY__NODE__NODE_PREPARE_STMT = 230, + PG_QUERY__NODE__NODE_EXECUTE_STMT = 231, + PG_QUERY__NODE__NODE_DEALLOCATE_STMT = 232, + PG_QUERY__NODE__NODE_DROP_OWNED_STMT = 233, + PG_QUERY__NODE__NODE_REASSIGN_OWNED_STMT = 234, + PG_QUERY__NODE__NODE_ALTER_TSDICTIONARY_STMT = 235, + PG_QUERY__NODE__NODE_ALTER_TSCONFIGURATION_STMT = 236, + PG_QUERY__NODE__NODE_PUBLICATION_TABLE = 237, + PG_QUERY__NODE__NODE_PUBLICATION_OBJ_SPEC = 238, + PG_QUERY__NODE__NODE_CREATE_PUBLICATION_STMT = 239, + PG_QUERY__NODE__NODE_ALTER_PUBLICATION_STMT = 240, + PG_QUERY__NODE__NODE_CREATE_SUBSCRIPTION_STMT = 241, + PG_QUERY__NODE__NODE_ALTER_SUBSCRIPTION_STMT = 242, + PG_QUERY__NODE__NODE_DROP_SUBSCRIPTION_STMT = 243, + PG_QUERY__NODE__NODE_INTEGER = 244, + PG_QUERY__NODE__NODE_FLOAT = 245, + PG_QUERY__NODE__NODE_BOOLEAN = 246, + PG_QUERY__NODE__NODE_STRING = 247, + PG_QUERY__NODE__NODE_BIT_STRING = 248, + PG_QUERY__NODE__NODE_LIST = 249, + PG_QUERY__NODE__NODE_INT_LIST = 250, + PG_QUERY__NODE__NODE_OID_LIST = 251, + PG_QUERY__NODE__NODE_A_CONST = 252 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(PG_QUERY__NODE__NODE__CASE) } PgQuery__Node__NodeCase; @@ -1753,6 +1832,7 @@ struct PgQuery__Node PgQuery__Alias *alias; PgQuery__RangeVar *range_var; PgQuery__TableFunc *table_func; + PgQuery__IntoClause *into_clause; PgQuery__Var *var; PgQuery__Param *param; PgQuery__Aggref *aggref; @@ -1786,6 +1866,11 @@ struct PgQuery__Node PgQuery__MinMaxExpr *min_max_expr; PgQuery__SQLValueFunction *sqlvalue_function; PgQuery__XmlExpr *xml_expr; + PgQuery__JsonFormat *json_format; + PgQuery__JsonReturning *json_returning; + PgQuery__JsonValueExpr *json_value_expr; + PgQuery__JsonConstructorExpr *json_constructor_expr; + PgQuery__JsonIsPredicate *json_is_predicate; PgQuery__NullTest *null_test; PgQuery__BooleanTest *boolean_test; PgQuery__CoerceToDomain *coerce_to_domain; @@ -1799,186 +1884,194 @@ struct PgQuery__Node PgQuery__JoinExpr *join_expr; PgQuery__FromExpr *from_expr; PgQuery__OnConflictExpr *on_conflict_expr; - PgQuery__IntoClause *into_clause; - PgQuery__MergeAction *merge_action; - PgQuery__RawStmt *raw_stmt; PgQuery__Query *query; - PgQuery__InsertStmt *insert_stmt; - PgQuery__DeleteStmt *delete_stmt; - PgQuery__UpdateStmt *update_stmt; - PgQuery__MergeStmt *merge_stmt; + PgQuery__TypeName *type_name; + PgQuery__ColumnRef *column_ref; + PgQuery__ParamRef *param_ref; + PgQuery__AExpr *a_expr; + PgQuery__TypeCast *type_cast; + PgQuery__CollateClause *collate_clause; + PgQuery__RoleSpec *role_spec; + PgQuery__FuncCall *func_call; + PgQuery__AStar *a_star; + PgQuery__AIndices *a_indices; + PgQuery__AIndirection *a_indirection; + PgQuery__AArrayExpr *a_array_expr; + PgQuery__ResTarget *res_target; + PgQuery__MultiAssignRef *multi_assign_ref; + PgQuery__SortBy *sort_by; + PgQuery__WindowDef *window_def; + PgQuery__RangeSubselect *range_subselect; + PgQuery__RangeFunction *range_function; + PgQuery__RangeTableFunc *range_table_func; + PgQuery__RangeTableFuncCol *range_table_func_col; + PgQuery__RangeTableSample *range_table_sample; + PgQuery__ColumnDef *column_def; + PgQuery__TableLikeClause *table_like_clause; + PgQuery__IndexElem *index_elem; + PgQuery__DefElem *def_elem; + PgQuery__LockingClause *locking_clause; + PgQuery__XmlSerialize *xml_serialize; + PgQuery__PartitionElem *partition_elem; + PgQuery__PartitionSpec *partition_spec; + PgQuery__PartitionBoundSpec *partition_bound_spec; + PgQuery__PartitionRangeDatum *partition_range_datum; + PgQuery__PartitionCmd *partition_cmd; + PgQuery__RangeTblEntry *range_tbl_entry; + PgQuery__RTEPermissionInfo *rtepermission_info; + PgQuery__RangeTblFunction *range_tbl_function; + PgQuery__TableSampleClause *table_sample_clause; + PgQuery__WithCheckOption *with_check_option; + PgQuery__SortGroupClause *sort_group_clause; + PgQuery__GroupingSet *grouping_set; + PgQuery__WindowClause *window_clause; + PgQuery__RowMarkClause *row_mark_clause; + PgQuery__WithClause *with_clause; + PgQuery__InferClause *infer_clause; + PgQuery__OnConflictClause *on_conflict_clause; + PgQuery__CTESearchClause *ctesearch_clause; + PgQuery__CTECycleClause *ctecycle_clause; + PgQuery__CommonTableExpr *common_table_expr; + PgQuery__MergeWhenClause *merge_when_clause; + PgQuery__MergeAction *merge_action; + PgQuery__TriggerTransition *trigger_transition; + PgQuery__JsonOutput *json_output; + PgQuery__JsonKeyValue *json_key_value; + PgQuery__JsonObjectConstructor *json_object_constructor; + PgQuery__JsonArrayConstructor *json_array_constructor; + PgQuery__JsonArrayQueryConstructor *json_array_query_constructor; + PgQuery__JsonAggConstructor *json_agg_constructor; + PgQuery__JsonObjectAgg *json_object_agg; + PgQuery__JsonArrayAgg *json_array_agg; + PgQuery__RawStmt *raw_stmt; + PgQuery__InsertStmt *insert_stmt; + PgQuery__DeleteStmt *delete_stmt; + PgQuery__UpdateStmt *update_stmt; + PgQuery__MergeStmt *merge_stmt; PgQuery__SelectStmt *select_stmt; + PgQuery__SetOperationStmt *set_operation_stmt; PgQuery__ReturnStmt *return_stmt; PgQuery__PLAssignStmt *plassign_stmt; + PgQuery__CreateSchemaStmt *create_schema_stmt; PgQuery__AlterTableStmt *alter_table_stmt; + PgQuery__ReplicaIdentityStmt *replica_identity_stmt; PgQuery__AlterTableCmd *alter_table_cmd; + PgQuery__AlterCollationStmt *alter_collation_stmt; PgQuery__AlterDomainStmt *alter_domain_stmt; - PgQuery__SetOperationStmt *set_operation_stmt; PgQuery__GrantStmt *grant_stmt; + PgQuery__ObjectWithArgs *object_with_args; + PgQuery__AccessPriv *access_priv; PgQuery__GrantRoleStmt *grant_role_stmt; PgQuery__AlterDefaultPrivilegesStmt *alter_default_privileges_stmt; - PgQuery__ClosePortalStmt *close_portal_stmt; - PgQuery__ClusterStmt *cluster_stmt; PgQuery__CopyStmt *copy_stmt; + PgQuery__VariableSetStmt *variable_set_stmt; + PgQuery__VariableShowStmt *variable_show_stmt; PgQuery__CreateStmt *create_stmt; + PgQuery__Constraint *constraint; + PgQuery__CreateTableSpaceStmt *create_table_space_stmt; + PgQuery__DropTableSpaceStmt *drop_table_space_stmt; + PgQuery__AlterTableSpaceOptionsStmt *alter_table_space_options_stmt; + PgQuery__AlterTableMoveAllStmt *alter_table_move_all_stmt; + PgQuery__CreateExtensionStmt *create_extension_stmt; + PgQuery__AlterExtensionStmt *alter_extension_stmt; + PgQuery__AlterExtensionContentsStmt *alter_extension_contents_stmt; + PgQuery__CreateFdwStmt *create_fdw_stmt; + PgQuery__AlterFdwStmt *alter_fdw_stmt; + PgQuery__CreateForeignServerStmt *create_foreign_server_stmt; + PgQuery__AlterForeignServerStmt *alter_foreign_server_stmt; + PgQuery__CreateForeignTableStmt *create_foreign_table_stmt; + PgQuery__CreateUserMappingStmt *create_user_mapping_stmt; + PgQuery__AlterUserMappingStmt *alter_user_mapping_stmt; + PgQuery__DropUserMappingStmt *drop_user_mapping_stmt; + PgQuery__ImportForeignSchemaStmt *import_foreign_schema_stmt; + PgQuery__CreatePolicyStmt *create_policy_stmt; + PgQuery__AlterPolicyStmt *alter_policy_stmt; + PgQuery__CreateAmStmt *create_am_stmt; + PgQuery__CreateTrigStmt *create_trig_stmt; + PgQuery__CreateEventTrigStmt *create_event_trig_stmt; + PgQuery__AlterEventTrigStmt *alter_event_trig_stmt; + PgQuery__CreatePLangStmt *create_plang_stmt; + PgQuery__CreateRoleStmt *create_role_stmt; + PgQuery__AlterRoleStmt *alter_role_stmt; + PgQuery__AlterRoleSetStmt *alter_role_set_stmt; + PgQuery__DropRoleStmt *drop_role_stmt; + PgQuery__CreateSeqStmt *create_seq_stmt; + PgQuery__AlterSeqStmt *alter_seq_stmt; PgQuery__DefineStmt *define_stmt; + PgQuery__CreateDomainStmt *create_domain_stmt; + PgQuery__CreateOpClassStmt *create_op_class_stmt; + PgQuery__CreateOpClassItem *create_op_class_item; + PgQuery__CreateOpFamilyStmt *create_op_family_stmt; + PgQuery__AlterOpFamilyStmt *alter_op_family_stmt; PgQuery__DropStmt *drop_stmt; PgQuery__TruncateStmt *truncate_stmt; PgQuery__CommentStmt *comment_stmt; + PgQuery__SecLabelStmt *sec_label_stmt; + PgQuery__DeclareCursorStmt *declare_cursor_stmt; + PgQuery__ClosePortalStmt *close_portal_stmt; PgQuery__FetchStmt *fetch_stmt; PgQuery__IndexStmt *index_stmt; + PgQuery__CreateStatsStmt *create_stats_stmt; + PgQuery__StatsElem *stats_elem; + PgQuery__AlterStatsStmt *alter_stats_stmt; PgQuery__CreateFunctionStmt *create_function_stmt; + PgQuery__FunctionParameter *function_parameter; PgQuery__AlterFunctionStmt *alter_function_stmt; PgQuery__DoStmt *do_stmt; + PgQuery__InlineCodeBlock *inline_code_block; + PgQuery__CallStmt *call_stmt; + PgQuery__CallContext *call_context; PgQuery__RenameStmt *rename_stmt; + PgQuery__AlterObjectDependsStmt *alter_object_depends_stmt; + PgQuery__AlterObjectSchemaStmt *alter_object_schema_stmt; + PgQuery__AlterOwnerStmt *alter_owner_stmt; + PgQuery__AlterOperatorStmt *alter_operator_stmt; + PgQuery__AlterTypeStmt *alter_type_stmt; PgQuery__RuleStmt *rule_stmt; PgQuery__NotifyStmt *notify_stmt; PgQuery__ListenStmt *listen_stmt; PgQuery__UnlistenStmt *unlisten_stmt; PgQuery__TransactionStmt *transaction_stmt; + PgQuery__CompositeTypeStmt *composite_type_stmt; + PgQuery__CreateEnumStmt *create_enum_stmt; + PgQuery__CreateRangeStmt *create_range_stmt; + PgQuery__AlterEnumStmt *alter_enum_stmt; PgQuery__ViewStmt *view_stmt; PgQuery__LoadStmt *load_stmt; - PgQuery__CreateDomainStmt *create_domain_stmt; PgQuery__CreatedbStmt *createdb_stmt; + PgQuery__AlterDatabaseStmt *alter_database_stmt; + PgQuery__AlterDatabaseRefreshCollStmt *alter_database_refresh_coll_stmt; + PgQuery__AlterDatabaseSetStmt *alter_database_set_stmt; PgQuery__DropdbStmt *dropdb_stmt; + PgQuery__AlterSystemStmt *alter_system_stmt; + PgQuery__ClusterStmt *cluster_stmt; PgQuery__VacuumStmt *vacuum_stmt; + PgQuery__VacuumRelation *vacuum_relation; PgQuery__ExplainStmt *explain_stmt; PgQuery__CreateTableAsStmt *create_table_as_stmt; - PgQuery__CreateSeqStmt *create_seq_stmt; - PgQuery__AlterSeqStmt *alter_seq_stmt; - PgQuery__VariableSetStmt *variable_set_stmt; - PgQuery__VariableShowStmt *variable_show_stmt; + PgQuery__RefreshMatViewStmt *refresh_mat_view_stmt; + PgQuery__CheckPointStmt *check_point_stmt; PgQuery__DiscardStmt *discard_stmt; - PgQuery__CreateTrigStmt *create_trig_stmt; - PgQuery__CreatePLangStmt *create_plang_stmt; - PgQuery__CreateRoleStmt *create_role_stmt; - PgQuery__AlterRoleStmt *alter_role_stmt; - PgQuery__DropRoleStmt *drop_role_stmt; PgQuery__LockStmt *lock_stmt; PgQuery__ConstraintsSetStmt *constraints_set_stmt; PgQuery__ReindexStmt *reindex_stmt; - PgQuery__CheckPointStmt *check_point_stmt; - PgQuery__CreateSchemaStmt *create_schema_stmt; - PgQuery__AlterDatabaseStmt *alter_database_stmt; - PgQuery__AlterDatabaseRefreshCollStmt *alter_database_refresh_coll_stmt; - PgQuery__AlterDatabaseSetStmt *alter_database_set_stmt; - PgQuery__AlterRoleSetStmt *alter_role_set_stmt; PgQuery__CreateConversionStmt *create_conversion_stmt; PgQuery__CreateCastStmt *create_cast_stmt; - PgQuery__CreateOpClassStmt *create_op_class_stmt; - PgQuery__CreateOpFamilyStmt *create_op_family_stmt; - PgQuery__AlterOpFamilyStmt *alter_op_family_stmt; + PgQuery__CreateTransformStmt *create_transform_stmt; PgQuery__PrepareStmt *prepare_stmt; PgQuery__ExecuteStmt *execute_stmt; PgQuery__DeallocateStmt *deallocate_stmt; - PgQuery__DeclareCursorStmt *declare_cursor_stmt; - PgQuery__CreateTableSpaceStmt *create_table_space_stmt; - PgQuery__DropTableSpaceStmt *drop_table_space_stmt; - PgQuery__AlterObjectDependsStmt *alter_object_depends_stmt; - PgQuery__AlterObjectSchemaStmt *alter_object_schema_stmt; - PgQuery__AlterOwnerStmt *alter_owner_stmt; - PgQuery__AlterOperatorStmt *alter_operator_stmt; - PgQuery__AlterTypeStmt *alter_type_stmt; PgQuery__DropOwnedStmt *drop_owned_stmt; PgQuery__ReassignOwnedStmt *reassign_owned_stmt; - PgQuery__CompositeTypeStmt *composite_type_stmt; - PgQuery__CreateEnumStmt *create_enum_stmt; - PgQuery__CreateRangeStmt *create_range_stmt; - PgQuery__AlterEnumStmt *alter_enum_stmt; PgQuery__AlterTSDictionaryStmt *alter_tsdictionary_stmt; PgQuery__AlterTSConfigurationStmt *alter_tsconfiguration_stmt; - PgQuery__CreateFdwStmt *create_fdw_stmt; - PgQuery__AlterFdwStmt *alter_fdw_stmt; - PgQuery__CreateForeignServerStmt *create_foreign_server_stmt; - PgQuery__AlterForeignServerStmt *alter_foreign_server_stmt; - PgQuery__CreateUserMappingStmt *create_user_mapping_stmt; - PgQuery__AlterUserMappingStmt *alter_user_mapping_stmt; - PgQuery__DropUserMappingStmt *drop_user_mapping_stmt; - PgQuery__AlterTableSpaceOptionsStmt *alter_table_space_options_stmt; - PgQuery__AlterTableMoveAllStmt *alter_table_move_all_stmt; - PgQuery__SecLabelStmt *sec_label_stmt; - PgQuery__CreateForeignTableStmt *create_foreign_table_stmt; - PgQuery__ImportForeignSchemaStmt *import_foreign_schema_stmt; - PgQuery__CreateExtensionStmt *create_extension_stmt; - PgQuery__AlterExtensionStmt *alter_extension_stmt; - PgQuery__AlterExtensionContentsStmt *alter_extension_contents_stmt; - PgQuery__CreateEventTrigStmt *create_event_trig_stmt; - PgQuery__AlterEventTrigStmt *alter_event_trig_stmt; - PgQuery__RefreshMatViewStmt *refresh_mat_view_stmt; - PgQuery__ReplicaIdentityStmt *replica_identity_stmt; - PgQuery__AlterSystemStmt *alter_system_stmt; - PgQuery__CreatePolicyStmt *create_policy_stmt; - PgQuery__AlterPolicyStmt *alter_policy_stmt; - PgQuery__CreateTransformStmt *create_transform_stmt; - PgQuery__CreateAmStmt *create_am_stmt; + PgQuery__PublicationTable *publication_table; + PgQuery__PublicationObjSpec *publication_obj_spec; PgQuery__CreatePublicationStmt *create_publication_stmt; PgQuery__AlterPublicationStmt *alter_publication_stmt; PgQuery__CreateSubscriptionStmt *create_subscription_stmt; PgQuery__AlterSubscriptionStmt *alter_subscription_stmt; PgQuery__DropSubscriptionStmt *drop_subscription_stmt; - PgQuery__CreateStatsStmt *create_stats_stmt; - PgQuery__AlterCollationStmt *alter_collation_stmt; - PgQuery__CallStmt *call_stmt; - PgQuery__AlterStatsStmt *alter_stats_stmt; - PgQuery__AExpr *a_expr; - PgQuery__ColumnRef *column_ref; - PgQuery__ParamRef *param_ref; - PgQuery__FuncCall *func_call; - PgQuery__AStar *a_star; - PgQuery__AIndices *a_indices; - PgQuery__AIndirection *a_indirection; - PgQuery__AArrayExpr *a_array_expr; - PgQuery__ResTarget *res_target; - PgQuery__MultiAssignRef *multi_assign_ref; - PgQuery__TypeCast *type_cast; - PgQuery__CollateClause *collate_clause; - PgQuery__SortBy *sort_by; - PgQuery__WindowDef *window_def; - PgQuery__RangeSubselect *range_subselect; - PgQuery__RangeFunction *range_function; - PgQuery__RangeTableSample *range_table_sample; - PgQuery__RangeTableFunc *range_table_func; - PgQuery__RangeTableFuncCol *range_table_func_col; - PgQuery__TypeName *type_name; - PgQuery__ColumnDef *column_def; - PgQuery__IndexElem *index_elem; - PgQuery__StatsElem *stats_elem; - PgQuery__Constraint *constraint; - PgQuery__DefElem *def_elem; - PgQuery__RangeTblEntry *range_tbl_entry; - PgQuery__RangeTblFunction *range_tbl_function; - PgQuery__TableSampleClause *table_sample_clause; - PgQuery__WithCheckOption *with_check_option; - PgQuery__SortGroupClause *sort_group_clause; - PgQuery__GroupingSet *grouping_set; - PgQuery__WindowClause *window_clause; - PgQuery__ObjectWithArgs *object_with_args; - PgQuery__AccessPriv *access_priv; - PgQuery__CreateOpClassItem *create_op_class_item; - PgQuery__TableLikeClause *table_like_clause; - PgQuery__FunctionParameter *function_parameter; - PgQuery__LockingClause *locking_clause; - PgQuery__RowMarkClause *row_mark_clause; - PgQuery__XmlSerialize *xml_serialize; - PgQuery__WithClause *with_clause; - PgQuery__InferClause *infer_clause; - PgQuery__OnConflictClause *on_conflict_clause; - PgQuery__CTESearchClause *ctesearch_clause; - PgQuery__CTECycleClause *ctecycle_clause; - PgQuery__CommonTableExpr *common_table_expr; - PgQuery__MergeWhenClause *merge_when_clause; - PgQuery__RoleSpec *role_spec; - PgQuery__TriggerTransition *trigger_transition; - PgQuery__PartitionElem *partition_elem; - PgQuery__PartitionSpec *partition_spec; - PgQuery__PartitionBoundSpec *partition_bound_spec; - PgQuery__PartitionRangeDatum *partition_range_datum; - PgQuery__PartitionCmd *partition_cmd; - PgQuery__VacuumRelation *vacuum_relation; - PgQuery__PublicationObjSpec *publication_obj_spec; - PgQuery__PublicationTable *publication_table; - PgQuery__InlineCodeBlock *inline_code_block; - PgQuery__CallContext *call_context; PgQuery__Integer *integer; PgQuery__Float *float_; PgQuery__Boolean *boolean; @@ -1992,7 +2085,7 @@ struct PgQuery__Node }; #define PG_QUERY__NODE__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__node__descriptor) \ - , PG_QUERY__NODE__NODE__NOT_SET, {0} } +, PG_QUERY__NODE__NODE__NOT_SET, {0} } struct PgQuery__Integer @@ -2005,7 +2098,7 @@ struct PgQuery__Integer }; #define PG_QUERY__INTEGER__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__integer__descriptor) \ - , 0 } +, 0 } struct PgQuery__Float @@ -2018,7 +2111,7 @@ struct PgQuery__Float }; #define PG_QUERY__FLOAT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__float__descriptor) \ - , (char *)protobuf_c_empty_string } +, (char *)protobuf_c_empty_string } struct PgQuery__Boolean @@ -2028,7 +2121,7 @@ struct PgQuery__Boolean }; #define PG_QUERY__BOOLEAN__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__boolean__descriptor) \ - , 0 } +, 0 } struct PgQuery__String @@ -2041,7 +2134,7 @@ struct PgQuery__String }; #define PG_QUERY__STRING__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__string__descriptor) \ - , (char *)protobuf_c_empty_string } +, (char *)protobuf_c_empty_string } struct PgQuery__BitString @@ -2054,7 +2147,7 @@ struct PgQuery__BitString }; #define PG_QUERY__BIT_STRING__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__bit_string__descriptor) \ - , (char *)protobuf_c_empty_string } +, (char *)protobuf_c_empty_string } struct PgQuery__List @@ -2065,7 +2158,7 @@ struct PgQuery__List }; #define PG_QUERY__LIST__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__list__descriptor) \ - , 0,NULL } +, 0,NULL } struct PgQuery__OidList @@ -2076,7 +2169,7 @@ struct PgQuery__OidList }; #define PG_QUERY__OID_LIST__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__oid_list__descriptor) \ - , 0,NULL } +, 0,NULL } struct PgQuery__IntList @@ -2087,7 +2180,7 @@ struct PgQuery__IntList }; #define PG_QUERY__INT_LIST__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__int_list__descriptor) \ - , 0,NULL } +, 0,NULL } typedef enum { @@ -2116,7 +2209,7 @@ struct PgQuery__AConst }; #define PG_QUERY__A__CONST__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__const__descriptor) \ - , 0, 0, PG_QUERY__A__CONST__VAL__NOT_SET, {0} } +, 0, 0, PG_QUERY__A__CONST__VAL__NOT_SET, {0} } struct PgQuery__Alias @@ -2128,7 +2221,7 @@ struct PgQuery__Alias }; #define PG_QUERY__ALIAS__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__alias__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL } +, (char *)protobuf_c_empty_string, 0,NULL } struct PgQuery__RangeVar @@ -2144,7 +2237,7 @@ struct PgQuery__RangeVar }; #define PG_QUERY__RANGE_VAR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_var__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, (char *)protobuf_c_empty_string, NULL, 0 } +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, (char *)protobuf_c_empty_string, NULL, 0 } struct PgQuery__TableFunc @@ -2175,26 +2268,45 @@ struct PgQuery__TableFunc }; #define PG_QUERY__TABLE_FUNC__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__table_func__descriptor) \ - , 0,NULL, 0,NULL, NULL, NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0, 0 } +, 0,NULL, 0,NULL, NULL, NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0, 0 } -struct PgQuery__Var +struct PgQuery__IntoClause { ProtobufCMessage base; - PgQuery__Node *xpr; - int32_t varno; - int32_t varattno; - uint32_t vartype; - int32_t vartypmod; - uint32_t varcollid; + PgQuery__RangeVar *rel; + size_t n_col_names; + PgQuery__Node **col_names; + char *access_method; + size_t n_options; + PgQuery__Node **options; + PgQuery__OnCommitAction on_commit; + char *table_space_name; + PgQuery__Node *view_query; + protobuf_c_boolean skip_data; +}; +#define PG_QUERY__INTO_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__into_clause__descriptor) \ +, NULL, 0,NULL, (char *)protobuf_c_empty_string, 0,NULL, PG_QUERY__ON_COMMIT_ACTION__ON_COMMIT_ACTION_UNDEFINED, (char *)protobuf_c_empty_string, NULL, 0 } + + +struct PgQuery__Var +{ + ProtobufCMessage base; + PgQuery__Node *xpr; + int32_t varno; + int32_t varattno; + uint32_t vartype; + int32_t vartypmod; + uint32_t varcollid; + size_t n_varnullingrels; + uint64_t *varnullingrels; uint32_t varlevelsup; - uint32_t varnosyn; - int32_t varattnosyn; int32_t location; }; #define PG_QUERY__VAR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__var__descriptor) \ - , NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0 } +, NULL, 0, 0, 0, 0, 0, 0,NULL, 0, 0 } struct PgQuery__Param @@ -2210,7 +2322,7 @@ struct PgQuery__Param }; #define PG_QUERY__PARAM__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__param__descriptor) \ - , NULL, PG_QUERY__PARAM_KIND__PARAM_KIND_UNDEFINED, 0, 0, 0, 0, 0 } +, NULL, PG_QUERY__PARAM_KIND__PARAM_KIND_UNDEFINED, 0, 0, 0, 0, 0 } struct PgQuery__Aggref @@ -2221,7 +2333,6 @@ struct PgQuery__Aggref uint32_t aggtype; uint32_t aggcollid; uint32_t inputcollid; - uint32_t aggtranstype; size_t n_aggargtypes; PgQuery__Node **aggargtypes; size_t n_aggdirectargs; @@ -2244,7 +2355,7 @@ struct PgQuery__Aggref }; #define PG_QUERY__AGGREF__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__aggref__descriptor) \ - , NULL, 0, 0, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, NULL, 0, 0, (char *)protobuf_c_empty_string, 0, PG_QUERY__AGG_SPLIT__AGG_SPLIT_UNDEFINED, 0, 0, 0 } +, NULL, 0, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, NULL, 0, 0, (char *)protobuf_c_empty_string, 0, PG_QUERY__AGG_SPLIT__AGG_SPLIT_UNDEFINED, 0, 0, 0 } struct PgQuery__GroupingFunc @@ -2255,14 +2366,12 @@ struct PgQuery__GroupingFunc PgQuery__Node **args; size_t n_refs; PgQuery__Node **refs; - size_t n_cols; - PgQuery__Node **cols; uint32_t agglevelsup; int32_t location; }; #define PG_QUERY__GROUPING_FUNC__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__grouping_func__descriptor) \ - , NULL, 0,NULL, 0,NULL, 0,NULL, 0, 0 } +, NULL, 0,NULL, 0,NULL, 0, 0 } struct PgQuery__WindowFunc @@ -2283,7 +2392,7 @@ struct PgQuery__WindowFunc }; #define PG_QUERY__WINDOW_FUNC__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__window_func__descriptor) \ - , NULL, 0, 0, 0, 0, 0,NULL, NULL, 0, 0, 0, 0 } +, NULL, 0, 0, 0, 0, 0,NULL, NULL, 0, 0, 0, 0 } struct PgQuery__SubscriptingRef @@ -2304,7 +2413,7 @@ struct PgQuery__SubscriptingRef }; #define PG_QUERY__SUBSCRIPTING_REF__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__subscripting_ref__descriptor) \ - , NULL, 0, 0, 0, 0, 0, 0,NULL, 0,NULL, NULL, NULL } +, NULL, 0, 0, 0, 0, 0, 0,NULL, 0,NULL, NULL, NULL } struct PgQuery__FuncExpr @@ -2324,7 +2433,7 @@ struct PgQuery__FuncExpr }; #define PG_QUERY__FUNC_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__func_expr__descriptor) \ - , NULL, 0, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0, 0, 0,NULL, 0 } +, NULL, 0, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0, 0, 0,NULL, 0 } struct PgQuery__NamedArgExpr @@ -2338,7 +2447,7 @@ struct PgQuery__NamedArgExpr }; #define PG_QUERY__NAMED_ARG_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__named_arg_expr__descriptor) \ - , NULL, NULL, (char *)protobuf_c_empty_string, 0, 0 } +, NULL, NULL, (char *)protobuf_c_empty_string, 0, 0 } struct PgQuery__OpExpr @@ -2346,7 +2455,6 @@ struct PgQuery__OpExpr ProtobufCMessage base; PgQuery__Node *xpr; uint32_t opno; - uint32_t opfuncid; uint32_t opresulttype; protobuf_c_boolean opretset; uint32_t opcollid; @@ -2357,7 +2465,7 @@ struct PgQuery__OpExpr }; #define PG_QUERY__OP_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__op_expr__descriptor) \ - , NULL, 0, 0, 0, 0, 0, 0, 0,NULL, 0 } +, NULL, 0, 0, 0, 0, 0, 0,NULL, 0 } struct PgQuery__DistinctExpr @@ -2365,7 +2473,6 @@ struct PgQuery__DistinctExpr ProtobufCMessage base; PgQuery__Node *xpr; uint32_t opno; - uint32_t opfuncid; uint32_t opresulttype; protobuf_c_boolean opretset; uint32_t opcollid; @@ -2376,7 +2483,7 @@ struct PgQuery__DistinctExpr }; #define PG_QUERY__DISTINCT_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__distinct_expr__descriptor) \ - , NULL, 0, 0, 0, 0, 0, 0, 0,NULL, 0 } +, NULL, 0, 0, 0, 0, 0, 0,NULL, 0 } struct PgQuery__NullIfExpr @@ -2384,7 +2491,6 @@ struct PgQuery__NullIfExpr ProtobufCMessage base; PgQuery__Node *xpr; uint32_t opno; - uint32_t opfuncid; uint32_t opresulttype; protobuf_c_boolean opretset; uint32_t opcollid; @@ -2395,7 +2501,7 @@ struct PgQuery__NullIfExpr }; #define PG_QUERY__NULL_IF_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__null_if_expr__descriptor) \ - , NULL, 0, 0, 0, 0, 0, 0, 0,NULL, 0 } +, NULL, 0, 0, 0, 0, 0, 0,NULL, 0 } struct PgQuery__ScalarArrayOpExpr @@ -2403,9 +2509,6 @@ struct PgQuery__ScalarArrayOpExpr ProtobufCMessage base; PgQuery__Node *xpr; uint32_t opno; - uint32_t opfuncid; - uint32_t hashfuncid; - uint32_t negfuncid; protobuf_c_boolean use_or; uint32_t inputcollid; size_t n_args; @@ -2414,7 +2517,7 @@ struct PgQuery__ScalarArrayOpExpr }; #define PG_QUERY__SCALAR_ARRAY_OP_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__scalar_array_op_expr__descriptor) \ - , NULL, 0, 0, 0, 0, 0, 0, 0,NULL, 0 } +, NULL, 0, 0, 0, 0,NULL, 0 } struct PgQuery__BoolExpr @@ -2428,7 +2531,7 @@ struct PgQuery__BoolExpr }; #define PG_QUERY__BOOL_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__bool_expr__descriptor) \ - , NULL, PG_QUERY__BOOL_EXPR_TYPE__BOOL_EXPR_TYPE_UNDEFINED, 0,NULL, 0 } +, NULL, PG_QUERY__BOOL_EXPR_TYPE__BOOL_EXPR_TYPE_UNDEFINED, 0,NULL, 0 } struct PgQuery__SubLink @@ -2445,7 +2548,7 @@ struct PgQuery__SubLink }; #define PG_QUERY__SUB_LINK__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__sub_link__descriptor) \ - , NULL, PG_QUERY__SUB_LINK_TYPE__SUB_LINK_TYPE_UNDEFINED, 0, NULL, 0,NULL, NULL, 0 } +, NULL, PG_QUERY__SUB_LINK_TYPE__SUB_LINK_TYPE_UNDEFINED, 0, NULL, 0,NULL, NULL, 0 } struct PgQuery__SubPlan @@ -2475,7 +2578,7 @@ struct PgQuery__SubPlan }; #define PG_QUERY__SUB_PLAN__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__sub_plan__descriptor) \ - , NULL, PG_QUERY__SUB_LINK_TYPE__SUB_LINK_TYPE_UNDEFINED, NULL, 0,NULL, 0, (char *)protobuf_c_empty_string, 0, 0, 0, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, 0, 0 } +, NULL, PG_QUERY__SUB_LINK_TYPE__SUB_LINK_TYPE_UNDEFINED, NULL, 0,NULL, 0, (char *)protobuf_c_empty_string, 0, 0, 0, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, 0, 0 } struct PgQuery__AlternativeSubPlan @@ -2487,7 +2590,7 @@ struct PgQuery__AlternativeSubPlan }; #define PG_QUERY__ALTERNATIVE_SUB_PLAN__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__alternative_sub_plan__descriptor) \ - , NULL, 0,NULL } +, NULL, 0,NULL } struct PgQuery__FieldSelect @@ -2502,7 +2605,7 @@ struct PgQuery__FieldSelect }; #define PG_QUERY__FIELD_SELECT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__field_select__descriptor) \ - , NULL, NULL, 0, 0, 0, 0 } +, NULL, NULL, 0, 0, 0, 0 } struct PgQuery__FieldStore @@ -2518,7 +2621,7 @@ struct PgQuery__FieldStore }; #define PG_QUERY__FIELD_STORE__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__field_store__descriptor) \ - , NULL, NULL, 0,NULL, 0,NULL, 0 } +, NULL, NULL, 0,NULL, 0,NULL, 0 } struct PgQuery__RelabelType @@ -2534,7 +2637,7 @@ struct PgQuery__RelabelType }; #define PG_QUERY__RELABEL_TYPE__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__relabel_type__descriptor) \ - , NULL, NULL, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } +, NULL, NULL, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } struct PgQuery__CoerceViaIO @@ -2549,7 +2652,7 @@ struct PgQuery__CoerceViaIO }; #define PG_QUERY__COERCE_VIA_IO__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__coerce_via_io__descriptor) \ - , NULL, NULL, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } +, NULL, NULL, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } struct PgQuery__ArrayCoerceExpr @@ -2566,7 +2669,7 @@ struct PgQuery__ArrayCoerceExpr }; #define PG_QUERY__ARRAY_COERCE_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__array_coerce_expr__descriptor) \ - , NULL, NULL, NULL, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } +, NULL, NULL, NULL, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } struct PgQuery__ConvertRowtypeExpr @@ -2580,7 +2683,7 @@ struct PgQuery__ConvertRowtypeExpr }; #define PG_QUERY__CONVERT_ROWTYPE_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__convert_rowtype_expr__descriptor) \ - , NULL, NULL, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } +, NULL, NULL, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } struct PgQuery__CollateExpr @@ -2593,7 +2696,7 @@ struct PgQuery__CollateExpr }; #define PG_QUERY__COLLATE_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__collate_expr__descriptor) \ - , NULL, NULL, 0, 0 } +, NULL, NULL, 0, 0 } struct PgQuery__CaseExpr @@ -2610,7 +2713,7 @@ struct PgQuery__CaseExpr }; #define PG_QUERY__CASE_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__case_expr__descriptor) \ - , NULL, 0, 0, NULL, 0,NULL, NULL, 0 } +, NULL, 0, 0, NULL, 0,NULL, NULL, 0 } struct PgQuery__CaseWhen @@ -2623,7 +2726,7 @@ struct PgQuery__CaseWhen }; #define PG_QUERY__CASE_WHEN__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__case_when__descriptor) \ - , NULL, NULL, NULL, 0 } +, NULL, NULL, NULL, 0 } struct PgQuery__CaseTestExpr @@ -2636,7 +2739,7 @@ struct PgQuery__CaseTestExpr }; #define PG_QUERY__CASE_TEST_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__case_test_expr__descriptor) \ - , NULL, 0, 0, 0 } +, NULL, 0, 0, 0 } struct PgQuery__ArrayExpr @@ -2653,7 +2756,7 @@ struct PgQuery__ArrayExpr }; #define PG_QUERY__ARRAY_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__array_expr__descriptor) \ - , NULL, 0, 0, 0, 0,NULL, 0, 0 } +, NULL, 0, 0, 0, 0,NULL, 0, 0 } struct PgQuery__RowExpr @@ -2670,7 +2773,7 @@ struct PgQuery__RowExpr }; #define PG_QUERY__ROW_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__row_expr__descriptor) \ - , NULL, 0,NULL, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0,NULL, 0 } +, NULL, 0,NULL, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0,NULL, 0 } struct PgQuery__RowCompareExpr @@ -2691,7 +2794,7 @@ struct PgQuery__RowCompareExpr }; #define PG_QUERY__ROW_COMPARE_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__row_compare_expr__descriptor) \ - , NULL, PG_QUERY__ROW_COMPARE_TYPE__ROW_COMPARE_TYPE_UNDEFINED, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL } +, NULL, PG_QUERY__ROW_COMPARE_TYPE__ROW_COMPARE_TYPE_UNDEFINED, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL } struct PgQuery__CoalesceExpr @@ -2706,7 +2809,7 @@ struct PgQuery__CoalesceExpr }; #define PG_QUERY__COALESCE_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__coalesce_expr__descriptor) \ - , NULL, 0, 0, 0,NULL, 0 } +, NULL, 0, 0, 0,NULL, 0 } struct PgQuery__MinMaxExpr @@ -2723,7 +2826,7 @@ struct PgQuery__MinMaxExpr }; #define PG_QUERY__MIN_MAX_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__min_max_expr__descriptor) \ - , NULL, 0, 0, 0, PG_QUERY__MIN_MAX_OP__MIN_MAX_OP_UNDEFINED, 0,NULL, 0 } +, NULL, 0, 0, 0, PG_QUERY__MIN_MAX_OP__MIN_MAX_OP_UNDEFINED, 0,NULL, 0 } struct PgQuery__SQLValueFunction @@ -2737,7 +2840,7 @@ struct PgQuery__SQLValueFunction }; #define PG_QUERY__SQLVALUE_FUNCTION__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__sqlvalue_function__descriptor) \ - , NULL, PG_QUERY__SQLVALUE_FUNCTION_OP__SQLVALUE_FUNCTION_OP_UNDEFINED, 0, 0, 0 } +, NULL, PG_QUERY__SQLVALUE_FUNCTION_OP__SQLVALUE_FUNCTION_OP_UNDEFINED, 0, 0, 0 } struct PgQuery__XmlExpr @@ -2753,13 +2856,83 @@ struct PgQuery__XmlExpr size_t n_args; PgQuery__Node **args; PgQuery__XmlOptionType xmloption; + protobuf_c_boolean indent; uint32_t type; int32_t typmod; int32_t location; }; #define PG_QUERY__XML_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__xml_expr__descriptor) \ - , NULL, PG_QUERY__XML_EXPR_OP__XML_EXPR_OP_UNDEFINED, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0,NULL, PG_QUERY__XML_OPTION_TYPE__XML_OPTION_TYPE_UNDEFINED, 0, 0, 0 } +, NULL, PG_QUERY__XML_EXPR_OP__XML_EXPR_OP_UNDEFINED, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0,NULL, PG_QUERY__XML_OPTION_TYPE__XML_OPTION_TYPE_UNDEFINED, 0, 0, 0, 0 } + + +struct PgQuery__JsonFormat +{ + ProtobufCMessage base; + PgQuery__JsonFormatType format_type; + PgQuery__JsonEncoding encoding; + int32_t location; +}; +#define PG_QUERY__JSON_FORMAT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_format__descriptor) \ +, PG_QUERY__JSON_FORMAT_TYPE__JSON_FORMAT_TYPE_UNDEFINED, PG_QUERY__JSON_ENCODING__JSON_ENCODING_UNDEFINED, 0 } + + +struct PgQuery__JsonReturning +{ + ProtobufCMessage base; + PgQuery__JsonFormat *format; + uint32_t typid; + int32_t typmod; +}; +#define PG_QUERY__JSON_RETURNING__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_returning__descriptor) \ +, NULL, 0, 0 } + + +struct PgQuery__JsonValueExpr +{ + ProtobufCMessage base; + PgQuery__Node *raw_expr; + PgQuery__Node *formatted_expr; + PgQuery__JsonFormat *format; +}; +#define PG_QUERY__JSON_VALUE_EXPR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_value_expr__descriptor) \ +, NULL, NULL, NULL } + + +struct PgQuery__JsonConstructorExpr +{ + ProtobufCMessage base; + PgQuery__Node *xpr; + PgQuery__JsonConstructorType type; + size_t n_args; + PgQuery__Node **args; + PgQuery__Node *func; + PgQuery__Node *coercion; + PgQuery__JsonReturning *returning; + protobuf_c_boolean absent_on_null; + protobuf_c_boolean unique; + int32_t location; +}; +#define PG_QUERY__JSON_CONSTRUCTOR_EXPR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_constructor_expr__descriptor) \ +, NULL, PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSON_CONSTRUCTOR_TYPE_UNDEFINED, 0,NULL, NULL, NULL, NULL, 0, 0, 0 } + + +struct PgQuery__JsonIsPredicate +{ + ProtobufCMessage base; + PgQuery__Node *expr; + PgQuery__JsonFormat *format; + PgQuery__JsonValueType item_type; + protobuf_c_boolean unique_keys; + int32_t location; +}; +#define PG_QUERY__JSON_IS_PREDICATE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_is_predicate__descriptor) \ +, NULL, NULL, PG_QUERY__JSON_VALUE_TYPE__JSON_VALUE_TYPE_UNDEFINED, 0, 0 } struct PgQuery__NullTest @@ -2773,7 +2946,7 @@ struct PgQuery__NullTest }; #define PG_QUERY__NULL_TEST__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__null_test__descriptor) \ - , NULL, NULL, PG_QUERY__NULL_TEST_TYPE__NULL_TEST_TYPE_UNDEFINED, 0, 0 } +, NULL, NULL, PG_QUERY__NULL_TEST_TYPE__NULL_TEST_TYPE_UNDEFINED, 0, 0 } struct PgQuery__BooleanTest @@ -2786,7 +2959,7 @@ struct PgQuery__BooleanTest }; #define PG_QUERY__BOOLEAN_TEST__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__boolean_test__descriptor) \ - , NULL, NULL, PG_QUERY__BOOL_TEST_TYPE__BOOL_TEST_TYPE_UNDEFINED, 0 } +, NULL, NULL, PG_QUERY__BOOL_TEST_TYPE__BOOL_TEST_TYPE_UNDEFINED, 0 } struct PgQuery__CoerceToDomain @@ -2802,7 +2975,7 @@ struct PgQuery__CoerceToDomain }; #define PG_QUERY__COERCE_TO_DOMAIN__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__coerce_to_domain__descriptor) \ - , NULL, NULL, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } +, NULL, NULL, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } struct PgQuery__CoerceToDomainValue @@ -2816,7 +2989,7 @@ struct PgQuery__CoerceToDomainValue }; #define PG_QUERY__COERCE_TO_DOMAIN_VALUE__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__coerce_to_domain_value__descriptor) \ - , NULL, 0, 0, 0, 0 } +, NULL, 0, 0, 0, 0 } struct PgQuery__SetToDefault @@ -2830,7 +3003,7 @@ struct PgQuery__SetToDefault }; #define PG_QUERY__SET_TO_DEFAULT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__set_to_default__descriptor) \ - , NULL, 0, 0, 0, 0 } +, NULL, 0, 0, 0, 0 } struct PgQuery__CurrentOfExpr @@ -2843,7 +3016,7 @@ struct PgQuery__CurrentOfExpr }; #define PG_QUERY__CURRENT_OF_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__current_of_expr__descriptor) \ - , NULL, 0, (char *)protobuf_c_empty_string, 0 } +, NULL, 0, (char *)protobuf_c_empty_string, 0 } struct PgQuery__NextValueExpr @@ -2855,7 +3028,7 @@ struct PgQuery__NextValueExpr }; #define PG_QUERY__NEXT_VALUE_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__next_value_expr__descriptor) \ - , NULL, 0, 0 } +, NULL, 0, 0 } struct PgQuery__InferenceElem @@ -2868,7 +3041,7 @@ struct PgQuery__InferenceElem }; #define PG_QUERY__INFERENCE_ELEM__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__inference_elem__descriptor) \ - , NULL, NULL, 0, 0 } +, NULL, NULL, 0, 0 } struct PgQuery__TargetEntry @@ -2885,7 +3058,7 @@ struct PgQuery__TargetEntry }; #define PG_QUERY__TARGET_ENTRY__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__target_entry__descriptor) \ - , NULL, NULL, 0, (char *)protobuf_c_empty_string, 0, 0, 0, 0 } +, NULL, NULL, 0, (char *)protobuf_c_empty_string, 0, 0, 0, 0 } struct PgQuery__RangeTblRef @@ -2895,7 +3068,7 @@ struct PgQuery__RangeTblRef }; #define PG_QUERY__RANGE_TBL_REF__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_tbl_ref__descriptor) \ - , 0 } +, 0 } struct PgQuery__JoinExpr @@ -2914,7 +3087,7 @@ struct PgQuery__JoinExpr }; #define PG_QUERY__JOIN_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__join_expr__descriptor) \ - , PG_QUERY__JOIN_TYPE__JOIN_TYPE_UNDEFINED, 0, NULL, NULL, 0,NULL, NULL, NULL, NULL, 0 } +, PG_QUERY__JOIN_TYPE__JOIN_TYPE_UNDEFINED, 0, NULL, NULL, 0,NULL, NULL, NULL, NULL, 0 } struct PgQuery__FromExpr @@ -2926,7 +3099,7 @@ struct PgQuery__FromExpr }; #define PG_QUERY__FROM_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__from_expr__descriptor) \ - , 0,NULL, NULL } +, 0,NULL, NULL } struct PgQuery__OnConflictExpr @@ -2946,55 +3119,7 @@ struct PgQuery__OnConflictExpr }; #define PG_QUERY__ON_CONFLICT_EXPR__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__on_conflict_expr__descriptor) \ - , PG_QUERY__ON_CONFLICT_ACTION__ON_CONFLICT_ACTION_UNDEFINED, 0,NULL, NULL, 0, 0,NULL, NULL, 0, 0,NULL } - - -struct PgQuery__IntoClause -{ - ProtobufCMessage base; - PgQuery__RangeVar *rel; - size_t n_col_names; - PgQuery__Node **col_names; - char *access_method; - size_t n_options; - PgQuery__Node **options; - PgQuery__OnCommitAction on_commit; - char *table_space_name; - PgQuery__Node *view_query; - protobuf_c_boolean skip_data; -}; -#define PG_QUERY__INTO_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__into_clause__descriptor) \ - , NULL, 0,NULL, (char *)protobuf_c_empty_string, 0,NULL, PG_QUERY__ON_COMMIT_ACTION__ON_COMMIT_ACTION_UNDEFINED, (char *)protobuf_c_empty_string, NULL, 0 } - - -struct PgQuery__MergeAction -{ - ProtobufCMessage base; - protobuf_c_boolean matched; - PgQuery__CmdType command_type; - PgQuery__OverridingKind override; - PgQuery__Node *qual; - size_t n_target_list; - PgQuery__Node **target_list; - size_t n_update_colnos; - PgQuery__Node **update_colnos; -}; -#define PG_QUERY__MERGE_ACTION__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__merge_action__descriptor) \ - , 0, PG_QUERY__CMD_TYPE__CMD_TYPE_UNDEFINED, PG_QUERY__OVERRIDING_KIND__OVERRIDING_KIND_UNDEFINED, NULL, 0,NULL, 0,NULL } - - -struct PgQuery__RawStmt -{ - ProtobufCMessage base; - PgQuery__Node *stmt; - int32_t stmt_location; - int32_t stmt_len; -}; -#define PG_QUERY__RAW_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__raw_stmt__descriptor) \ - , NULL, 0, 0 } +, PG_QUERY__ON_CONFLICT_ACTION__ON_CONFLICT_ACTION_UNDEFINED, 0,NULL, NULL, 0, 0,NULL, NULL, 0, 0,NULL } struct PgQuery__Query @@ -3019,6 +3144,8 @@ struct PgQuery__Query PgQuery__Node **cte_list; size_t n_rtable; PgQuery__Node **rtable; + size_t n_rteperminfos; + PgQuery__Node **rteperminfos; PgQuery__FromExpr *jointree; size_t n_merge_action_list; PgQuery__Node **merge_action_list; @@ -3056,1237 +3183,1453 @@ struct PgQuery__Query }; #define PG_QUERY__QUERY__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__query__descriptor) \ - , PG_QUERY__CMD_TYPE__CMD_TYPE_UNDEFINED, PG_QUERY__QUERY_SOURCE__QUERY_SOURCE_UNDEFINED, 0, NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,NULL, 0,NULL, NULL, 0,NULL, 0, 0,NULL, PG_QUERY__OVERRIDING_KIND__OVERRIDING_KIND_UNDEFINED, NULL, 0,NULL, 0,NULL, 0, 0,NULL, NULL, 0,NULL, 0,NULL, 0,NULL, NULL, NULL, PG_QUERY__LIMIT_OPTION__LIMIT_OPTION_UNDEFINED, 0,NULL, NULL, 0,NULL, 0,NULL, 0, 0 } +, PG_QUERY__CMD_TYPE__CMD_TYPE_UNDEFINED, PG_QUERY__QUERY_SOURCE__QUERY_SOURCE_UNDEFINED, 0, NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, NULL, 0,NULL, 0, 0,NULL, PG_QUERY__OVERRIDING_KIND__OVERRIDING_KIND_UNDEFINED, NULL, 0,NULL, 0,NULL, 0, 0,NULL, NULL, 0,NULL, 0,NULL, 0,NULL, NULL, NULL, PG_QUERY__LIMIT_OPTION__LIMIT_OPTION_UNDEFINED, 0,NULL, NULL, 0,NULL, 0,NULL, 0, 0 } -struct PgQuery__InsertStmt +struct PgQuery__TypeName { ProtobufCMessage base; - PgQuery__RangeVar *relation; - size_t n_cols; - PgQuery__Node **cols; - PgQuery__Node *select_stmt; - PgQuery__OnConflictClause *on_conflict_clause; - size_t n_returning_list; - PgQuery__Node **returning_list; - PgQuery__WithClause *with_clause; - PgQuery__OverridingKind override; + size_t n_names; + PgQuery__Node **names; + uint32_t type_oid; + protobuf_c_boolean setof; + protobuf_c_boolean pct_type; + size_t n_typmods; + PgQuery__Node **typmods; + int32_t typemod; + size_t n_array_bounds; + PgQuery__Node **array_bounds; + int32_t location; }; -#define PG_QUERY__INSERT_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__insert_stmt__descriptor) \ - , NULL, 0,NULL, NULL, NULL, 0,NULL, NULL, PG_QUERY__OVERRIDING_KIND__OVERRIDING_KIND_UNDEFINED } +#define PG_QUERY__TYPE_NAME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__type_name__descriptor) \ +, 0,NULL, 0, 0, 0, 0,NULL, 0, 0,NULL, 0 } -struct PgQuery__DeleteStmt +struct PgQuery__ColumnRef { ProtobufCMessage base; - PgQuery__RangeVar *relation; - size_t n_using_clause; - PgQuery__Node **using_clause; - PgQuery__Node *where_clause; - size_t n_returning_list; - PgQuery__Node **returning_list; - PgQuery__WithClause *with_clause; + size_t n_fields; + PgQuery__Node **fields; + int32_t location; }; -#define PG_QUERY__DELETE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__delete_stmt__descriptor) \ - , NULL, 0,NULL, NULL, 0,NULL, NULL } +#define PG_QUERY__COLUMN_REF__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__column_ref__descriptor) \ +, 0,NULL, 0 } -struct PgQuery__UpdateStmt +struct PgQuery__ParamRef { ProtobufCMessage base; - PgQuery__RangeVar *relation; - size_t n_target_list; - PgQuery__Node **target_list; - PgQuery__Node *where_clause; - size_t n_from_clause; - PgQuery__Node **from_clause; - size_t n_returning_list; - PgQuery__Node **returning_list; - PgQuery__WithClause *with_clause; + int32_t number; + int32_t location; }; -#define PG_QUERY__UPDATE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__update_stmt__descriptor) \ - , NULL, 0,NULL, NULL, 0,NULL, 0,NULL, NULL } +#define PG_QUERY__PARAM_REF__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__param_ref__descriptor) \ +, 0, 0 } -struct PgQuery__MergeStmt +struct PgQuery__AExpr { ProtobufCMessage base; - PgQuery__RangeVar *relation; - PgQuery__Node *source_relation; - PgQuery__Node *join_condition; - size_t n_merge_when_clauses; - PgQuery__Node **merge_when_clauses; - PgQuery__WithClause *with_clause; + PgQuery__AExprKind kind; + size_t n_name; + PgQuery__Node **name; + PgQuery__Node *lexpr; + PgQuery__Node *rexpr; + int32_t location; }; -#define PG_QUERY__MERGE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__merge_stmt__descriptor) \ - , NULL, NULL, NULL, 0,NULL, NULL } +#define PG_QUERY__A__EXPR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__expr__descriptor) \ +, PG_QUERY__A__EXPR__KIND__A_EXPR_KIND_UNDEFINED, 0,NULL, NULL, NULL, 0 } -struct PgQuery__SelectStmt +struct PgQuery__TypeCast { ProtobufCMessage base; - size_t n_distinct_clause; - PgQuery__Node **distinct_clause; - PgQuery__IntoClause *into_clause; - size_t n_target_list; - PgQuery__Node **target_list; - size_t n_from_clause; - PgQuery__Node **from_clause; - PgQuery__Node *where_clause; - size_t n_group_clause; - PgQuery__Node **group_clause; - protobuf_c_boolean group_distinct; - PgQuery__Node *having_clause; - size_t n_window_clause; - PgQuery__Node **window_clause; - size_t n_values_lists; - PgQuery__Node **values_lists; - size_t n_sort_clause; - PgQuery__Node **sort_clause; - PgQuery__Node *limit_offset; - PgQuery__Node *limit_count; - PgQuery__LimitOption limit_option; - size_t n_locking_clause; - PgQuery__Node **locking_clause; - PgQuery__WithClause *with_clause; - PgQuery__SetOperation op; - protobuf_c_boolean all; - PgQuery__SelectStmt *larg; - PgQuery__SelectStmt *rarg; + PgQuery__Node *arg; + PgQuery__TypeName *type_name; + int32_t location; }; -#define PG_QUERY__SELECT_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__select_stmt__descriptor) \ - , 0,NULL, NULL, 0,NULL, 0,NULL, NULL, 0,NULL, 0, NULL, 0,NULL, 0,NULL, 0,NULL, NULL, NULL, PG_QUERY__LIMIT_OPTION__LIMIT_OPTION_UNDEFINED, 0,NULL, NULL, PG_QUERY__SET_OPERATION__SET_OPERATION_UNDEFINED, 0, NULL, NULL } +#define PG_QUERY__TYPE_CAST__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__type_cast__descriptor) \ +, NULL, NULL, 0 } -struct PgQuery__ReturnStmt +struct PgQuery__CollateClause { ProtobufCMessage base; - PgQuery__Node *returnval; + PgQuery__Node *arg; + size_t n_collname; + PgQuery__Node **collname; + int32_t location; }; -#define PG_QUERY__RETURN_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__return_stmt__descriptor) \ - , NULL } +#define PG_QUERY__COLLATE_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__collate_clause__descriptor) \ +, NULL, 0,NULL, 0 } -struct PgQuery__PLAssignStmt +struct PgQuery__RoleSpec { ProtobufCMessage base; - char *name; - size_t n_indirection; - PgQuery__Node **indirection; - int32_t nnames; - PgQuery__SelectStmt *val; + PgQuery__RoleSpecType roletype; + char *rolename; int32_t location; }; -#define PG_QUERY__PLASSIGN_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__plassign_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, 0, NULL, 0 } +#define PG_QUERY__ROLE_SPEC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__role_spec__descriptor) \ +, PG_QUERY__ROLE_SPEC_TYPE__ROLE_SPEC_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, 0 } -struct PgQuery__AlterTableStmt +struct PgQuery__FuncCall { ProtobufCMessage base; - PgQuery__RangeVar *relation; - size_t n_cmds; - PgQuery__Node **cmds; - PgQuery__ObjectType objtype; - protobuf_c_boolean missing_ok; -}; -#define PG_QUERY__ALTER_TABLE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_table_stmt__descriptor) \ - , NULL, 0,NULL, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0 } - - -struct PgQuery__AlterTableCmd -{ - ProtobufCMessage base; - PgQuery__AlterTableType subtype; - char *name; - int32_t num; - PgQuery__RoleSpec *newowner; - PgQuery__Node *def; - PgQuery__DropBehavior behavior; - protobuf_c_boolean missing_ok; - protobuf_c_boolean recurse; + size_t n_funcname; + PgQuery__Node **funcname; + size_t n_args; + PgQuery__Node **args; + size_t n_agg_order; + PgQuery__Node **agg_order; + PgQuery__Node *agg_filter; + PgQuery__WindowDef *over; + protobuf_c_boolean agg_within_group; + protobuf_c_boolean agg_star; + protobuf_c_boolean agg_distinct; + protobuf_c_boolean func_variadic; + PgQuery__CoercionForm funcformat; + int32_t location; }; -#define PG_QUERY__ALTER_TABLE_CMD__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_table_cmd__descriptor) \ - , PG_QUERY__ALTER_TABLE_TYPE__ALTER_TABLE_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, 0, NULL, NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED, 0, 0 } +#define PG_QUERY__FUNC_CALL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__func_call__descriptor) \ +, 0,NULL, 0,NULL, 0,NULL, NULL, NULL, 0, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } -struct PgQuery__AlterDomainStmt +struct PgQuery__AStar { ProtobufCMessage base; - char *subtype; - size_t n_type_name; - PgQuery__Node **type_name; - char *name; - PgQuery__Node *def; - PgQuery__DropBehavior behavior; - protobuf_c_boolean missing_ok; }; -#define PG_QUERY__ALTER_DOMAIN_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_domain_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, (char *)protobuf_c_empty_string, NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED, 0 } +#define PG_QUERY__A__STAR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__star__descriptor) \ + } -struct PgQuery__SetOperationStmt +struct PgQuery__AIndices { ProtobufCMessage base; - PgQuery__SetOperation op; - protobuf_c_boolean all; - PgQuery__Node *larg; - PgQuery__Node *rarg; - size_t n_col_types; - PgQuery__Node **col_types; - size_t n_col_typmods; - PgQuery__Node **col_typmods; - size_t n_col_collations; - PgQuery__Node **col_collations; - size_t n_group_clauses; - PgQuery__Node **group_clauses; + protobuf_c_boolean is_slice; + PgQuery__Node *lidx; + PgQuery__Node *uidx; }; -#define PG_QUERY__SET_OPERATION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__set_operation_stmt__descriptor) \ - , PG_QUERY__SET_OPERATION__SET_OPERATION_UNDEFINED, 0, NULL, NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL } +#define PG_QUERY__A__INDICES__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__indices__descriptor) \ +, 0, NULL, NULL } -struct PgQuery__GrantStmt +struct PgQuery__AIndirection { ProtobufCMessage base; - protobuf_c_boolean is_grant; - PgQuery__GrantTargetType targtype; - PgQuery__ObjectType objtype; - size_t n_objects; - PgQuery__Node **objects; - size_t n_privileges; - PgQuery__Node **privileges; - size_t n_grantees; - PgQuery__Node **grantees; - protobuf_c_boolean grant_option; - PgQuery__RoleSpec *grantor; - PgQuery__DropBehavior behavior; + PgQuery__Node *arg; + size_t n_indirection; + PgQuery__Node **indirection; }; -#define PG_QUERY__GRANT_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__grant_stmt__descriptor) \ - , 0, PG_QUERY__GRANT_TARGET_TYPE__GRANT_TARGET_TYPE_UNDEFINED, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0,NULL, 0,NULL, 0,NULL, 0, NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } +#define PG_QUERY__A__INDIRECTION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__indirection__descriptor) \ +, NULL, 0,NULL } -struct PgQuery__GrantRoleStmt +struct PgQuery__AArrayExpr { ProtobufCMessage base; - size_t n_granted_roles; - PgQuery__Node **granted_roles; - size_t n_grantee_roles; - PgQuery__Node **grantee_roles; - protobuf_c_boolean is_grant; - protobuf_c_boolean admin_opt; - PgQuery__RoleSpec *grantor; - PgQuery__DropBehavior behavior; + size_t n_elements; + PgQuery__Node **elements; + int32_t location; }; -#define PG_QUERY__GRANT_ROLE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__grant_role_stmt__descriptor) \ - , 0,NULL, 0,NULL, 0, 0, NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } +#define PG_QUERY__A__ARRAY_EXPR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__array_expr__descriptor) \ +, 0,NULL, 0 } -struct PgQuery__AlterDefaultPrivilegesStmt +struct PgQuery__ResTarget { ProtobufCMessage base; - size_t n_options; - PgQuery__Node **options; - PgQuery__GrantStmt *action; + char *name; + size_t n_indirection; + PgQuery__Node **indirection; + PgQuery__Node *val; + int32_t location; }; -#define PG_QUERY__ALTER_DEFAULT_PRIVILEGES_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_default_privileges_stmt__descriptor) \ - , 0,NULL, NULL } +#define PG_QUERY__RES_TARGET__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__res_target__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL, NULL, 0 } -struct PgQuery__ClosePortalStmt +struct PgQuery__MultiAssignRef { ProtobufCMessage base; - char *portalname; + PgQuery__Node *source; + int32_t colno; + int32_t ncolumns; }; -#define PG_QUERY__CLOSE_PORTAL_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__close_portal_stmt__descriptor) \ - , (char *)protobuf_c_empty_string } +#define PG_QUERY__MULTI_ASSIGN_REF__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__multi_assign_ref__descriptor) \ +, NULL, 0, 0 } -struct PgQuery__ClusterStmt +struct PgQuery__SortBy { ProtobufCMessage base; - PgQuery__RangeVar *relation; - char *indexname; - size_t n_params; - PgQuery__Node **params; + PgQuery__Node *node; + PgQuery__SortByDir sortby_dir; + PgQuery__SortByNulls sortby_nulls; + size_t n_use_op; + PgQuery__Node **use_op; + int32_t location; }; -#define PG_QUERY__CLUSTER_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__cluster_stmt__descriptor) \ - , NULL, (char *)protobuf_c_empty_string, 0,NULL } +#define PG_QUERY__SORT_BY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__sort_by__descriptor) \ +, NULL, PG_QUERY__SORT_BY_DIR__SORT_BY_DIR_UNDEFINED, PG_QUERY__SORT_BY_NULLS__SORT_BY_NULLS_UNDEFINED, 0,NULL, 0 } -struct PgQuery__CopyStmt +struct PgQuery__WindowDef { ProtobufCMessage base; - PgQuery__RangeVar *relation; - PgQuery__Node *query; - size_t n_attlist; - PgQuery__Node **attlist; - protobuf_c_boolean is_from; - protobuf_c_boolean is_program; - char *filename; - size_t n_options; - PgQuery__Node **options; - PgQuery__Node *where_clause; + char *name; + char *refname; + size_t n_partition_clause; + PgQuery__Node **partition_clause; + size_t n_order_clause; + PgQuery__Node **order_clause; + int32_t frame_options; + PgQuery__Node *start_offset; + PgQuery__Node *end_offset; + int32_t location; }; -#define PG_QUERY__COPY_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__copy_stmt__descriptor) \ - , NULL, NULL, 0,NULL, 0, 0, (char *)protobuf_c_empty_string, 0,NULL, NULL } +#define PG_QUERY__WINDOW_DEF__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__window_def__descriptor) \ +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0, NULL, NULL, 0 } -struct PgQuery__CreateStmt +struct PgQuery__RangeSubselect { ProtobufCMessage base; - PgQuery__RangeVar *relation; - size_t n_table_elts; - PgQuery__Node **table_elts; - size_t n_inh_relations; - PgQuery__Node **inh_relations; - PgQuery__PartitionBoundSpec *partbound; - PgQuery__PartitionSpec *partspec; - PgQuery__TypeName *of_typename; - size_t n_constraints; - PgQuery__Node **constraints; - size_t n_options; - PgQuery__Node **options; - PgQuery__OnCommitAction oncommit; - char *tablespacename; - char *access_method; - protobuf_c_boolean if_not_exists; + protobuf_c_boolean lateral; + PgQuery__Node *subquery; + PgQuery__Alias *alias; }; -#define PG_QUERY__CREATE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_stmt__descriptor) \ - , NULL, 0,NULL, 0,NULL, NULL, NULL, NULL, 0,NULL, 0,NULL, PG_QUERY__ON_COMMIT_ACTION__ON_COMMIT_ACTION_UNDEFINED, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0 } +#define PG_QUERY__RANGE_SUBSELECT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_subselect__descriptor) \ +, 0, NULL, NULL } -struct PgQuery__DefineStmt +struct PgQuery__RangeFunction { ProtobufCMessage base; - PgQuery__ObjectType kind; - protobuf_c_boolean oldstyle; - size_t n_defnames; - PgQuery__Node **defnames; - size_t n_args; - PgQuery__Node **args; - size_t n_definition; - PgQuery__Node **definition; - protobuf_c_boolean if_not_exists; - protobuf_c_boolean replace; + protobuf_c_boolean lateral; + protobuf_c_boolean ordinality; + protobuf_c_boolean is_rowsfrom; + size_t n_functions; + PgQuery__Node **functions; + PgQuery__Alias *alias; + size_t n_coldeflist; + PgQuery__Node **coldeflist; }; -#define PG_QUERY__DEFINE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__define_stmt__descriptor) \ - , PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0, 0,NULL, 0,NULL, 0,NULL, 0, 0 } +#define PG_QUERY__RANGE_FUNCTION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_function__descriptor) \ +, 0, 0, 0, 0,NULL, NULL, 0,NULL } -struct PgQuery__DropStmt +struct PgQuery__RangeTableFunc { ProtobufCMessage base; - size_t n_objects; - PgQuery__Node **objects; - PgQuery__ObjectType remove_type; - PgQuery__DropBehavior behavior; - protobuf_c_boolean missing_ok; - protobuf_c_boolean concurrent; + protobuf_c_boolean lateral; + PgQuery__Node *docexpr; + PgQuery__Node *rowexpr; + size_t n_namespaces; + PgQuery__Node **namespaces; + size_t n_columns; + PgQuery__Node **columns; + PgQuery__Alias *alias; + int32_t location; }; -#define PG_QUERY__DROP_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_stmt__descriptor) \ - , 0,NULL, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED, 0, 0 } +#define PG_QUERY__RANGE_TABLE_FUNC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_table_func__descriptor) \ +, 0, NULL, NULL, 0,NULL, 0,NULL, NULL, 0 } -struct PgQuery__TruncateStmt +struct PgQuery__RangeTableFuncCol { ProtobufCMessage base; - size_t n_relations; - PgQuery__Node **relations; - protobuf_c_boolean restart_seqs; - PgQuery__DropBehavior behavior; + char *colname; + PgQuery__TypeName *type_name; + protobuf_c_boolean for_ordinality; + protobuf_c_boolean is_not_null; + PgQuery__Node *colexpr; + PgQuery__Node *coldefexpr; + int32_t location; }; -#define PG_QUERY__TRUNCATE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__truncate_stmt__descriptor) \ - , 0,NULL, 0, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } +#define PG_QUERY__RANGE_TABLE_FUNC_COL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_table_func_col__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, 0, 0, NULL, NULL, 0 } -struct PgQuery__CommentStmt +struct PgQuery__RangeTableSample { ProtobufCMessage base; - PgQuery__ObjectType objtype; - PgQuery__Node *object; - char *comment; + PgQuery__Node *relation; + size_t n_method; + PgQuery__Node **method; + size_t n_args; + PgQuery__Node **args; + PgQuery__Node *repeatable; + int32_t location; }; -#define PG_QUERY__COMMENT_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__comment_stmt__descriptor) \ - , PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, (char *)protobuf_c_empty_string } +#define PG_QUERY__RANGE_TABLE_SAMPLE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_table_sample__descriptor) \ +, NULL, 0,NULL, 0,NULL, NULL, 0 } -struct PgQuery__FetchStmt +struct PgQuery__ColumnDef { ProtobufCMessage base; - PgQuery__FetchDirection direction; - int64_t how_many; - char *portalname; - protobuf_c_boolean ismove; + char *colname; + PgQuery__TypeName *type_name; + char *compression; + int32_t inhcount; + protobuf_c_boolean is_local; + protobuf_c_boolean is_not_null; + protobuf_c_boolean is_from_type; + char *storage; + char *storage_name; + PgQuery__Node *raw_default; + PgQuery__Node *cooked_default; + char *identity; + PgQuery__RangeVar *identity_sequence; + char *generated; + PgQuery__CollateClause *coll_clause; + uint32_t coll_oid; + size_t n_constraints; + PgQuery__Node **constraints; + size_t n_fdwoptions; + PgQuery__Node **fdwoptions; + int32_t location; }; -#define PG_QUERY__FETCH_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__fetch_stmt__descriptor) \ - , PG_QUERY__FETCH_DIRECTION__FETCH_DIRECTION_UNDEFINED, 0, (char *)protobuf_c_empty_string, 0 } +#define PG_QUERY__COLUMN_DEF__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__column_def__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, 0, 0, 0, 0, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, NULL, NULL, (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, NULL, 0, 0,NULL, 0,NULL, 0 } -struct PgQuery__IndexStmt +struct PgQuery__TableLikeClause { ProtobufCMessage base; - char *idxname; PgQuery__RangeVar *relation; - char *access_method; - char *table_space; - size_t n_index_params; - PgQuery__Node **index_params; - size_t n_index_including_params; - PgQuery__Node **index_including_params; - size_t n_options; - PgQuery__Node **options; - PgQuery__Node *where_clause; - size_t n_exclude_op_names; - PgQuery__Node **exclude_op_names; - char *idxcomment; - uint32_t index_oid; - uint32_t old_node; - uint32_t old_create_subid; - uint32_t old_first_relfilenode_subid; - protobuf_c_boolean unique; - protobuf_c_boolean nulls_not_distinct; - protobuf_c_boolean primary; - protobuf_c_boolean isconstraint; - protobuf_c_boolean deferrable; - protobuf_c_boolean initdeferred; - protobuf_c_boolean transformed; - protobuf_c_boolean concurrent; - protobuf_c_boolean if_not_exists; - protobuf_c_boolean reset_default_tblspc; -}; -#define PG_QUERY__INDEX_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__index_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0,NULL, NULL, 0,NULL, (char *)protobuf_c_empty_string, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } - - -struct PgQuery__CreateFunctionStmt -{ - ProtobufCMessage base; - protobuf_c_boolean is_procedure; - protobuf_c_boolean replace; - size_t n_funcname; - PgQuery__Node **funcname; - size_t n_parameters; - PgQuery__Node **parameters; - PgQuery__TypeName *return_type; - size_t n_options; - PgQuery__Node **options; - PgQuery__Node *sql_body; -}; -#define PG_QUERY__CREATE_FUNCTION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_function_stmt__descriptor) \ - , 0, 0, 0,NULL, 0,NULL, NULL, 0,NULL, NULL } - - -struct PgQuery__AlterFunctionStmt -{ - ProtobufCMessage base; - PgQuery__ObjectType objtype; - PgQuery__ObjectWithArgs *func; - size_t n_actions; - PgQuery__Node **actions; + uint32_t options; + uint32_t relation_oid; }; -#define PG_QUERY__ALTER_FUNCTION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_function_stmt__descriptor) \ - , PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, 0,NULL } +#define PG_QUERY__TABLE_LIKE_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__table_like_clause__descriptor) \ +, NULL, 0, 0 } -struct PgQuery__DoStmt +struct PgQuery__IndexElem { ProtobufCMessage base; - size_t n_args; - PgQuery__Node **args; + char *name; + PgQuery__Node *expr; + char *indexcolname; + size_t n_collation; + PgQuery__Node **collation; + size_t n_opclass; + PgQuery__Node **opclass; + size_t n_opclassopts; + PgQuery__Node **opclassopts; + PgQuery__SortByDir ordering; + PgQuery__SortByNulls nulls_ordering; }; -#define PG_QUERY__DO_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__do_stmt__descriptor) \ - , 0,NULL } +#define PG_QUERY__INDEX_ELEM__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__index_elem__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0,NULL, PG_QUERY__SORT_BY_DIR__SORT_BY_DIR_UNDEFINED, PG_QUERY__SORT_BY_NULLS__SORT_BY_NULLS_UNDEFINED } -struct PgQuery__RenameStmt +struct PgQuery__DefElem { ProtobufCMessage base; - PgQuery__ObjectType rename_type; - PgQuery__ObjectType relation_type; - PgQuery__RangeVar *relation; - PgQuery__Node *object; - char *subname; - char *newname; - PgQuery__DropBehavior behavior; - protobuf_c_boolean missing_ok; + char *defnamespace; + char *defname; + PgQuery__Node *arg; + PgQuery__DefElemAction defaction; + int32_t location; }; -#define PG_QUERY__RENAME_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__rename_stmt__descriptor) \ - , PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED, 0 } +#define PG_QUERY__DEF_ELEM__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__def_elem__descriptor) \ +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, NULL, PG_QUERY__DEF_ELEM_ACTION__DEF_ELEM_ACTION_UNDEFINED, 0 } -struct PgQuery__RuleStmt +struct PgQuery__LockingClause { ProtobufCMessage base; - PgQuery__RangeVar *relation; - char *rulename; - PgQuery__Node *where_clause; - PgQuery__CmdType event; - protobuf_c_boolean instead; - size_t n_actions; - PgQuery__Node **actions; - protobuf_c_boolean replace; + size_t n_locked_rels; + PgQuery__Node **locked_rels; + PgQuery__LockClauseStrength strength; + PgQuery__LockWaitPolicy wait_policy; }; -#define PG_QUERY__RULE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__rule_stmt__descriptor) \ - , NULL, (char *)protobuf_c_empty_string, NULL, PG_QUERY__CMD_TYPE__CMD_TYPE_UNDEFINED, 0, 0,NULL, 0 } +#define PG_QUERY__LOCKING_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__locking_clause__descriptor) \ +, 0,NULL, PG_QUERY__LOCK_CLAUSE_STRENGTH__LOCK_CLAUSE_STRENGTH_UNDEFINED, PG_QUERY__LOCK_WAIT_POLICY__LOCK_WAIT_POLICY_UNDEFINED } -struct PgQuery__NotifyStmt +struct PgQuery__XmlSerialize { ProtobufCMessage base; - char *conditionname; - char *payload; + PgQuery__XmlOptionType xmloption; + PgQuery__Node *expr; + PgQuery__TypeName *type_name; + protobuf_c_boolean indent; + int32_t location; }; -#define PG_QUERY__NOTIFY_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__notify_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string } +#define PG_QUERY__XML_SERIALIZE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__xml_serialize__descriptor) \ +, PG_QUERY__XML_OPTION_TYPE__XML_OPTION_TYPE_UNDEFINED, NULL, NULL, 0, 0 } -struct PgQuery__ListenStmt +struct PgQuery__PartitionElem { ProtobufCMessage base; - char *conditionname; + char *name; + PgQuery__Node *expr; + size_t n_collation; + PgQuery__Node **collation; + size_t n_opclass; + PgQuery__Node **opclass; + int32_t location; }; -#define PG_QUERY__LISTEN_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__listen_stmt__descriptor) \ - , (char *)protobuf_c_empty_string } +#define PG_QUERY__PARTITION_ELEM__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_elem__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, 0,NULL, 0,NULL, 0 } -struct PgQuery__UnlistenStmt +struct PgQuery__PartitionSpec { ProtobufCMessage base; - char *conditionname; + PgQuery__PartitionStrategy strategy; + size_t n_part_params; + PgQuery__Node **part_params; + int32_t location; }; -#define PG_QUERY__UNLISTEN_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__unlisten_stmt__descriptor) \ - , (char *)protobuf_c_empty_string } +#define PG_QUERY__PARTITION_SPEC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_spec__descriptor) \ +, PG_QUERY__PARTITION_STRATEGY__PARTITION_STRATEGY_UNDEFINED, 0,NULL, 0 } -struct PgQuery__TransactionStmt +struct PgQuery__PartitionBoundSpec { ProtobufCMessage base; - PgQuery__TransactionStmtKind kind; - size_t n_options; - PgQuery__Node **options; - char *savepoint_name; - char *gid; - protobuf_c_boolean chain; + char *strategy; + protobuf_c_boolean is_default; + int32_t modulus; + int32_t remainder; + size_t n_listdatums; + PgQuery__Node **listdatums; + size_t n_lowerdatums; + PgQuery__Node **lowerdatums; + size_t n_upperdatums; + PgQuery__Node **upperdatums; + int32_t location; }; -#define PG_QUERY__TRANSACTION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__transaction_stmt__descriptor) \ - , PG_QUERY__TRANSACTION_STMT_KIND__TRANSACTION_STMT_KIND_UNDEFINED, 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0 } +#define PG_QUERY__PARTITION_BOUND_SPEC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_bound_spec__descriptor) \ +, (char *)protobuf_c_empty_string, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, 0 } -struct PgQuery__ViewStmt +struct PgQuery__PartitionRangeDatum { ProtobufCMessage base; - PgQuery__RangeVar *view; - size_t n_aliases; - PgQuery__Node **aliases; - PgQuery__Node *query; - protobuf_c_boolean replace; - size_t n_options; - PgQuery__Node **options; - PgQuery__ViewCheckOption with_check_option; + PgQuery__PartitionRangeDatumKind kind; + PgQuery__Node *value; + int32_t location; }; -#define PG_QUERY__VIEW_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__view_stmt__descriptor) \ - , NULL, 0,NULL, NULL, 0, 0,NULL, PG_QUERY__VIEW_CHECK_OPTION__VIEW_CHECK_OPTION_UNDEFINED } +#define PG_QUERY__PARTITION_RANGE_DATUM__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_range_datum__descriptor) \ +, PG_QUERY__PARTITION_RANGE_DATUM_KIND__PARTITION_RANGE_DATUM_KIND_UNDEFINED, NULL, 0 } -struct PgQuery__LoadStmt +struct PgQuery__PartitionCmd { ProtobufCMessage base; - char *filename; + PgQuery__RangeVar *name; + PgQuery__PartitionBoundSpec *bound; + protobuf_c_boolean concurrent; }; -#define PG_QUERY__LOAD_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__load_stmt__descriptor) \ - , (char *)protobuf_c_empty_string } +#define PG_QUERY__PARTITION_CMD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_cmd__descriptor) \ +, NULL, NULL, 0 } -struct PgQuery__CreateDomainStmt +struct PgQuery__RangeTblEntry { ProtobufCMessage base; - size_t n_domainname; - PgQuery__Node **domainname; - PgQuery__TypeName *type_name; - PgQuery__CollateClause *coll_clause; - size_t n_constraints; - PgQuery__Node **constraints; + PgQuery__RTEKind rtekind; + uint32_t relid; + char *relkind; + int32_t rellockmode; + PgQuery__TableSampleClause *tablesample; + uint32_t perminfoindex; + PgQuery__Query *subquery; + protobuf_c_boolean security_barrier; + PgQuery__JoinType jointype; + int32_t joinmergedcols; + size_t n_joinaliasvars; + PgQuery__Node **joinaliasvars; + size_t n_joinleftcols; + PgQuery__Node **joinleftcols; + size_t n_joinrightcols; + PgQuery__Node **joinrightcols; + PgQuery__Alias *join_using_alias; + size_t n_functions; + PgQuery__Node **functions; + protobuf_c_boolean funcordinality; + PgQuery__TableFunc *tablefunc; + size_t n_values_lists; + PgQuery__Node **values_lists; + char *ctename; + uint32_t ctelevelsup; + protobuf_c_boolean self_reference; + size_t n_coltypes; + PgQuery__Node **coltypes; + size_t n_coltypmods; + PgQuery__Node **coltypmods; + size_t n_colcollations; + PgQuery__Node **colcollations; + char *enrname; + double enrtuples; + PgQuery__Alias *alias; + PgQuery__Alias *eref; + protobuf_c_boolean lateral; + protobuf_c_boolean inh; + protobuf_c_boolean in_from_cl; + size_t n_security_quals; + PgQuery__Node **security_quals; }; -#define PG_QUERY__CREATE_DOMAIN_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_domain_stmt__descriptor) \ - , 0,NULL, NULL, NULL, 0,NULL } +#define PG_QUERY__RANGE_TBL_ENTRY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_tbl_entry__descriptor) \ +, PG_QUERY__RTEKIND__RTEKIND_UNDEFINED, 0, (char *)protobuf_c_empty_string, 0, NULL, 0, NULL, 0, PG_QUERY__JOIN_TYPE__JOIN_TYPE_UNDEFINED, 0, 0,NULL, 0,NULL, 0,NULL, NULL, 0,NULL, 0, NULL, 0,NULL, (char *)protobuf_c_empty_string, 0, 0, 0,NULL, 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, 0, NULL, NULL, 0, 0, 0, 0,NULL } -struct PgQuery__CreatedbStmt +struct PgQuery__RTEPermissionInfo { ProtobufCMessage base; - char *dbname; - size_t n_options; - PgQuery__Node **options; + uint32_t relid; + protobuf_c_boolean inh; + int64_t required_perms; + uint32_t check_as_user; + size_t n_selected_cols; + uint64_t *selected_cols; + size_t n_inserted_cols; + uint64_t *inserted_cols; + size_t n_updated_cols; + uint64_t *updated_cols; }; -#define PG_QUERY__CREATEDB_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__createdb_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL } +#define PG_QUERY__RTEPERMISSION_INFO__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__rtepermission_info__descriptor) \ +, 0, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL } -struct PgQuery__DropdbStmt +struct PgQuery__RangeTblFunction { ProtobufCMessage base; - char *dbname; - protobuf_c_boolean missing_ok; - size_t n_options; - PgQuery__Node **options; + PgQuery__Node *funcexpr; + int32_t funccolcount; + size_t n_funccolnames; + PgQuery__Node **funccolnames; + size_t n_funccoltypes; + PgQuery__Node **funccoltypes; + size_t n_funccoltypmods; + PgQuery__Node **funccoltypmods; + size_t n_funccolcollations; + PgQuery__Node **funccolcollations; + size_t n_funcparams; + uint64_t *funcparams; }; -#define PG_QUERY__DROPDB_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__dropdb_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0, 0,NULL } +#define PG_QUERY__RANGE_TBL_FUNCTION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_tbl_function__descriptor) \ +, NULL, 0, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL } -struct PgQuery__VacuumStmt +struct PgQuery__TableSampleClause { ProtobufCMessage base; - size_t n_options; - PgQuery__Node **options; - size_t n_rels; - PgQuery__Node **rels; - protobuf_c_boolean is_vacuumcmd; + uint32_t tsmhandler; + size_t n_args; + PgQuery__Node **args; + PgQuery__Node *repeatable; }; -#define PG_QUERY__VACUUM_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__vacuum_stmt__descriptor) \ - , 0,NULL, 0,NULL, 0 } +#define PG_QUERY__TABLE_SAMPLE_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__table_sample_clause__descriptor) \ +, 0, 0,NULL, NULL } -struct PgQuery__ExplainStmt +struct PgQuery__WithCheckOption { ProtobufCMessage base; - PgQuery__Node *query; - size_t n_options; - PgQuery__Node **options; + PgQuery__WCOKind kind; + char *relname; + char *polname; + PgQuery__Node *qual; + protobuf_c_boolean cascaded; }; -#define PG_QUERY__EXPLAIN_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__explain_stmt__descriptor) \ - , NULL, 0,NULL } +#define PG_QUERY__WITH_CHECK_OPTION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__with_check_option__descriptor) \ +, PG_QUERY__WCOKIND__WCOKIND_UNDEFINED, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, NULL, 0 } -struct PgQuery__CreateTableAsStmt +struct PgQuery__SortGroupClause { ProtobufCMessage base; - PgQuery__Node *query; - PgQuery__IntoClause *into; - PgQuery__ObjectType objtype; - protobuf_c_boolean is_select_into; - protobuf_c_boolean if_not_exists; + uint32_t tle_sort_group_ref; + uint32_t eqop; + uint32_t sortop; + protobuf_c_boolean nulls_first; + protobuf_c_boolean hashable; }; -#define PG_QUERY__CREATE_TABLE_AS_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_table_as_stmt__descriptor) \ - , NULL, NULL, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0, 0 } +#define PG_QUERY__SORT_GROUP_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__sort_group_clause__descriptor) \ +, 0, 0, 0, 0, 0 } -struct PgQuery__CreateSeqStmt +struct PgQuery__GroupingSet { ProtobufCMessage base; - PgQuery__RangeVar *sequence; - size_t n_options; - PgQuery__Node **options; - uint32_t owner_id; - protobuf_c_boolean for_identity; - protobuf_c_boolean if_not_exists; + PgQuery__GroupingSetKind kind; + size_t n_content; + PgQuery__Node **content; + int32_t location; }; -#define PG_QUERY__CREATE_SEQ_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_seq_stmt__descriptor) \ - , NULL, 0,NULL, 0, 0, 0 } +#define PG_QUERY__GROUPING_SET__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__grouping_set__descriptor) \ +, PG_QUERY__GROUPING_SET_KIND__GROUPING_SET_KIND_UNDEFINED, 0,NULL, 0 } -struct PgQuery__AlterSeqStmt +struct PgQuery__WindowClause { ProtobufCMessage base; - PgQuery__RangeVar *sequence; - size_t n_options; - PgQuery__Node **options; - protobuf_c_boolean for_identity; - protobuf_c_boolean missing_ok; + char *name; + char *refname; + size_t n_partition_clause; + PgQuery__Node **partition_clause; + size_t n_order_clause; + PgQuery__Node **order_clause; + int32_t frame_options; + PgQuery__Node *start_offset; + PgQuery__Node *end_offset; + size_t n_run_condition; + PgQuery__Node **run_condition; + uint32_t start_in_range_func; + uint32_t end_in_range_func; + uint32_t in_range_coll; + protobuf_c_boolean in_range_asc; + protobuf_c_boolean in_range_nulls_first; + uint32_t winref; + protobuf_c_boolean copied_order; }; -#define PG_QUERY__ALTER_SEQ_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_seq_stmt__descriptor) \ - , NULL, 0,NULL, 0, 0 } +#define PG_QUERY__WINDOW_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__window_clause__descriptor) \ +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0, NULL, NULL, 0,NULL, 0, 0, 0, 0, 0, 0, 0 } -struct PgQuery__VariableSetStmt +struct PgQuery__RowMarkClause { ProtobufCMessage base; - PgQuery__VariableSetKind kind; - char *name; - size_t n_args; - PgQuery__Node **args; - protobuf_c_boolean is_local; + uint32_t rti; + PgQuery__LockClauseStrength strength; + PgQuery__LockWaitPolicy wait_policy; + protobuf_c_boolean pushed_down; }; -#define PG_QUERY__VARIABLE_SET_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__variable_set_stmt__descriptor) \ - , PG_QUERY__VARIABLE_SET_KIND__VARIABLE_SET_KIND_UNDEFINED, (char *)protobuf_c_empty_string, 0,NULL, 0 } +#define PG_QUERY__ROW_MARK_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__row_mark_clause__descriptor) \ +, 0, PG_QUERY__LOCK_CLAUSE_STRENGTH__LOCK_CLAUSE_STRENGTH_UNDEFINED, PG_QUERY__LOCK_WAIT_POLICY__LOCK_WAIT_POLICY_UNDEFINED, 0 } -struct PgQuery__VariableShowStmt +struct PgQuery__WithClause { ProtobufCMessage base; - char *name; + size_t n_ctes; + PgQuery__Node **ctes; + protobuf_c_boolean recursive; + int32_t location; }; -#define PG_QUERY__VARIABLE_SHOW_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__variable_show_stmt__descriptor) \ - , (char *)protobuf_c_empty_string } +#define PG_QUERY__WITH_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__with_clause__descriptor) \ +, 0,NULL, 0, 0 } -struct PgQuery__DiscardStmt +struct PgQuery__InferClause { ProtobufCMessage base; - PgQuery__DiscardMode target; + size_t n_index_elems; + PgQuery__Node **index_elems; + PgQuery__Node *where_clause; + char *conname; + int32_t location; }; -#define PG_QUERY__DISCARD_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__discard_stmt__descriptor) \ - , PG_QUERY__DISCARD_MODE__DISCARD_MODE_UNDEFINED } +#define PG_QUERY__INFER_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__infer_clause__descriptor) \ +, 0,NULL, NULL, (char *)protobuf_c_empty_string, 0 } -struct PgQuery__CreateTrigStmt +struct PgQuery__OnConflictClause { ProtobufCMessage base; - protobuf_c_boolean replace; - protobuf_c_boolean isconstraint; - char *trigname; - PgQuery__RangeVar *relation; - size_t n_funcname; - PgQuery__Node **funcname; - size_t n_args; - PgQuery__Node **args; - protobuf_c_boolean row; - int32_t timing; - int32_t events; - size_t n_columns; - PgQuery__Node **columns; - PgQuery__Node *when_clause; - size_t n_transition_rels; - PgQuery__Node **transition_rels; - protobuf_c_boolean deferrable; - protobuf_c_boolean initdeferred; - PgQuery__RangeVar *constrrel; + PgQuery__OnConflictAction action; + PgQuery__InferClause *infer; + size_t n_target_list; + PgQuery__Node **target_list; + PgQuery__Node *where_clause; + int32_t location; }; -#define PG_QUERY__CREATE_TRIG_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_trig_stmt__descriptor) \ - , 0, 0, (char *)protobuf_c_empty_string, NULL, 0,NULL, 0,NULL, 0, 0, 0, 0,NULL, NULL, 0,NULL, 0, 0, NULL } +#define PG_QUERY__ON_CONFLICT_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__on_conflict_clause__descriptor) \ +, PG_QUERY__ON_CONFLICT_ACTION__ON_CONFLICT_ACTION_UNDEFINED, NULL, 0,NULL, NULL, 0 } -struct PgQuery__CreatePLangStmt +struct PgQuery__CTESearchClause { ProtobufCMessage base; - protobuf_c_boolean replace; - char *plname; - size_t n_plhandler; - PgQuery__Node **plhandler; - size_t n_plinline; - PgQuery__Node **plinline; - size_t n_plvalidator; - PgQuery__Node **plvalidator; - protobuf_c_boolean pltrusted; + size_t n_search_col_list; + PgQuery__Node **search_col_list; + protobuf_c_boolean search_breadth_first; + char *search_seq_column; + int32_t location; }; -#define PG_QUERY__CREATE_PLANG_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_plang_stmt__descriptor) \ - , 0, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0,NULL, 0 } - - -struct PgQuery__CreateRoleStmt -{ - ProtobufCMessage base; - PgQuery__RoleStmtType stmt_type; - char *role; - size_t n_options; - PgQuery__Node **options; -}; -#define PG_QUERY__CREATE_ROLE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_role_stmt__descriptor) \ - , PG_QUERY__ROLE_STMT_TYPE__ROLE_STMT_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, 0,NULL } +#define PG_QUERY__CTESEARCH_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__ctesearch_clause__descriptor) \ +, 0,NULL, 0, (char *)protobuf_c_empty_string, 0 } -struct PgQuery__AlterRoleStmt +struct PgQuery__CTECycleClause { ProtobufCMessage base; - PgQuery__RoleSpec *role; - size_t n_options; - PgQuery__Node **options; - int32_t action; + size_t n_cycle_col_list; + PgQuery__Node **cycle_col_list; + char *cycle_mark_column; + PgQuery__Node *cycle_mark_value; + PgQuery__Node *cycle_mark_default; + char *cycle_path_column; + int32_t location; + uint32_t cycle_mark_type; + int32_t cycle_mark_typmod; + uint32_t cycle_mark_collation; + uint32_t cycle_mark_neop; }; -#define PG_QUERY__ALTER_ROLE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_role_stmt__descriptor) \ - , NULL, 0,NULL, 0 } +#define PG_QUERY__CTECYCLE_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__ctecycle_clause__descriptor) \ +, 0,NULL, (char *)protobuf_c_empty_string, NULL, NULL, (char *)protobuf_c_empty_string, 0, 0, 0, 0, 0 } -struct PgQuery__DropRoleStmt +struct PgQuery__CommonTableExpr { ProtobufCMessage base; - size_t n_roles; - PgQuery__Node **roles; - protobuf_c_boolean missing_ok; + char *ctename; + size_t n_aliascolnames; + PgQuery__Node **aliascolnames; + PgQuery__CTEMaterialize ctematerialized; + PgQuery__Node *ctequery; + PgQuery__CTESearchClause *search_clause; + PgQuery__CTECycleClause *cycle_clause; + int32_t location; + protobuf_c_boolean cterecursive; + int32_t cterefcount; + size_t n_ctecolnames; + PgQuery__Node **ctecolnames; + size_t n_ctecoltypes; + PgQuery__Node **ctecoltypes; + size_t n_ctecoltypmods; + PgQuery__Node **ctecoltypmods; + size_t n_ctecolcollations; + PgQuery__Node **ctecolcollations; }; -#define PG_QUERY__DROP_ROLE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_role_stmt__descriptor) \ - , 0,NULL, 0 } +#define PG_QUERY__COMMON_TABLE_EXPR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__common_table_expr__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL, PG_QUERY__CTEMATERIALIZE__CTEMATERIALIZE_UNDEFINED, NULL, NULL, NULL, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, 0,NULL } -struct PgQuery__LockStmt +struct PgQuery__MergeWhenClause { ProtobufCMessage base; - size_t n_relations; - PgQuery__Node **relations; - int32_t mode; - protobuf_c_boolean nowait; + protobuf_c_boolean matched; + PgQuery__CmdType command_type; + PgQuery__OverridingKind override; + PgQuery__Node *condition; + size_t n_target_list; + PgQuery__Node **target_list; + size_t n_values; + PgQuery__Node **values; }; -#define PG_QUERY__LOCK_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__lock_stmt__descriptor) \ - , 0,NULL, 0, 0 } +#define PG_QUERY__MERGE_WHEN_CLAUSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__merge_when_clause__descriptor) \ +, 0, PG_QUERY__CMD_TYPE__CMD_TYPE_UNDEFINED, PG_QUERY__OVERRIDING_KIND__OVERRIDING_KIND_UNDEFINED, NULL, 0,NULL, 0,NULL } -struct PgQuery__ConstraintsSetStmt +struct PgQuery__MergeAction { ProtobufCMessage base; - size_t n_constraints; - PgQuery__Node **constraints; - protobuf_c_boolean deferred; + protobuf_c_boolean matched; + PgQuery__CmdType command_type; + PgQuery__OverridingKind override; + PgQuery__Node *qual; + size_t n_target_list; + PgQuery__Node **target_list; + size_t n_update_colnos; + PgQuery__Node **update_colnos; }; -#define PG_QUERY__CONSTRAINTS_SET_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__constraints_set_stmt__descriptor) \ - , 0,NULL, 0 } +#define PG_QUERY__MERGE_ACTION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__merge_action__descriptor) \ +, 0, PG_QUERY__CMD_TYPE__CMD_TYPE_UNDEFINED, PG_QUERY__OVERRIDING_KIND__OVERRIDING_KIND_UNDEFINED, NULL, 0,NULL, 0,NULL } -struct PgQuery__ReindexStmt +struct PgQuery__TriggerTransition { ProtobufCMessage base; - PgQuery__ReindexObjectType kind; - PgQuery__RangeVar *relation; char *name; - size_t n_params; - PgQuery__Node **params; + protobuf_c_boolean is_new; + protobuf_c_boolean is_table; }; -#define PG_QUERY__REINDEX_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__reindex_stmt__descriptor) \ - , PG_QUERY__REINDEX_OBJECT_TYPE__REINDEX_OBJECT_TYPE_UNDEFINED, NULL, (char *)protobuf_c_empty_string, 0,NULL } +#define PG_QUERY__TRIGGER_TRANSITION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__trigger_transition__descriptor) \ +, (char *)protobuf_c_empty_string, 0, 0 } -struct PgQuery__CheckPointStmt +struct PgQuery__JsonOutput { ProtobufCMessage base; + PgQuery__TypeName *type_name; + PgQuery__JsonReturning *returning; }; -#define PG_QUERY__CHECK_POINT_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__check_point_stmt__descriptor) \ - } +#define PG_QUERY__JSON_OUTPUT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_output__descriptor) \ +, NULL, NULL } -struct PgQuery__CreateSchemaStmt +struct PgQuery__JsonKeyValue { ProtobufCMessage base; - char *schemaname; - PgQuery__RoleSpec *authrole; - size_t n_schema_elts; - PgQuery__Node **schema_elts; - protobuf_c_boolean if_not_exists; + PgQuery__Node *key; + PgQuery__JsonValueExpr *value; }; -#define PG_QUERY__CREATE_SCHEMA_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_schema_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, 0,NULL, 0 } +#define PG_QUERY__JSON_KEY_VALUE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_key_value__descriptor) \ +, NULL, NULL } -struct PgQuery__AlterDatabaseStmt +struct PgQuery__JsonObjectConstructor { ProtobufCMessage base; - char *dbname; - size_t n_options; - PgQuery__Node **options; + size_t n_exprs; + PgQuery__Node **exprs; + PgQuery__JsonOutput *output; + protobuf_c_boolean absent_on_null; + protobuf_c_boolean unique; + int32_t location; }; -#define PG_QUERY__ALTER_DATABASE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_database_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL } +#define PG_QUERY__JSON_OBJECT_CONSTRUCTOR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_object_constructor__descriptor) \ +, 0,NULL, NULL, 0, 0, 0 } -struct PgQuery__AlterDatabaseRefreshCollStmt +struct PgQuery__JsonArrayConstructor { ProtobufCMessage base; - char *dbname; + size_t n_exprs; + PgQuery__Node **exprs; + PgQuery__JsonOutput *output; + protobuf_c_boolean absent_on_null; + int32_t location; }; -#define PG_QUERY__ALTER_DATABASE_REFRESH_COLL_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_database_refresh_coll_stmt__descriptor) \ - , (char *)protobuf_c_empty_string } +#define PG_QUERY__JSON_ARRAY_CONSTRUCTOR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_array_constructor__descriptor) \ +, 0,NULL, NULL, 0, 0 } -struct PgQuery__AlterDatabaseSetStmt +struct PgQuery__JsonArrayQueryConstructor { ProtobufCMessage base; - char *dbname; - PgQuery__VariableSetStmt *setstmt; + PgQuery__Node *query; + PgQuery__JsonOutput *output; + PgQuery__JsonFormat *format; + protobuf_c_boolean absent_on_null; + int32_t location; }; -#define PG_QUERY__ALTER_DATABASE_SET_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_database_set_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, NULL } +#define PG_QUERY__JSON_ARRAY_QUERY_CONSTRUCTOR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_array_query_constructor__descriptor) \ +, NULL, NULL, NULL, 0, 0 } -struct PgQuery__AlterRoleSetStmt +struct PgQuery__JsonAggConstructor { ProtobufCMessage base; - PgQuery__RoleSpec *role; - char *database; - PgQuery__VariableSetStmt *setstmt; + PgQuery__JsonOutput *output; + PgQuery__Node *agg_filter; + size_t n_agg_order; + PgQuery__Node **agg_order; + PgQuery__WindowDef *over; + int32_t location; }; -#define PG_QUERY__ALTER_ROLE_SET_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_role_set_stmt__descriptor) \ - , NULL, (char *)protobuf_c_empty_string, NULL } +#define PG_QUERY__JSON_AGG_CONSTRUCTOR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_agg_constructor__descriptor) \ +, NULL, NULL, 0,NULL, NULL, 0 } -struct PgQuery__CreateConversionStmt +struct PgQuery__JsonObjectAgg { ProtobufCMessage base; - size_t n_conversion_name; - PgQuery__Node **conversion_name; - char *for_encoding_name; - char *to_encoding_name; - size_t n_func_name; - PgQuery__Node **func_name; - protobuf_c_boolean def; + PgQuery__JsonAggConstructor *constructor; + PgQuery__JsonKeyValue *arg; + protobuf_c_boolean absent_on_null; + protobuf_c_boolean unique; }; -#define PG_QUERY__CREATE_CONVERSION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_conversion_stmt__descriptor) \ - , 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0 } +#define PG_QUERY__JSON_OBJECT_AGG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_object_agg__descriptor) \ +, NULL, NULL, 0, 0 } -struct PgQuery__CreateCastStmt +struct PgQuery__JsonArrayAgg { ProtobufCMessage base; - PgQuery__TypeName *sourcetype; - PgQuery__TypeName *targettype; - PgQuery__ObjectWithArgs *func; - PgQuery__CoercionContext context; - protobuf_c_boolean inout; + PgQuery__JsonAggConstructor *constructor; + PgQuery__JsonValueExpr *arg; + protobuf_c_boolean absent_on_null; }; -#define PG_QUERY__CREATE_CAST_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_cast_stmt__descriptor) \ - , NULL, NULL, NULL, PG_QUERY__COERCION_CONTEXT__COERCION_CONTEXT_UNDEFINED, 0 } +#define PG_QUERY__JSON_ARRAY_AGG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__json_array_agg__descriptor) \ +, NULL, NULL, 0 } -struct PgQuery__CreateOpClassStmt +struct PgQuery__RawStmt { ProtobufCMessage base; - size_t n_opclassname; - PgQuery__Node **opclassname; - size_t n_opfamilyname; - PgQuery__Node **opfamilyname; - char *amname; - PgQuery__TypeName *datatype; - size_t n_items; - PgQuery__Node **items; - protobuf_c_boolean is_default; + PgQuery__Node *stmt; + int32_t stmt_location; + int32_t stmt_len; }; -#define PG_QUERY__CREATE_OP_CLASS_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_op_class_stmt__descriptor) \ - , 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, NULL, 0,NULL, 0 } +#define PG_QUERY__RAW_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__raw_stmt__descriptor) \ +, NULL, 0, 0 } -struct PgQuery__CreateOpFamilyStmt +struct PgQuery__InsertStmt { ProtobufCMessage base; - size_t n_opfamilyname; - PgQuery__Node **opfamilyname; - char *amname; + PgQuery__RangeVar *relation; + size_t n_cols; + PgQuery__Node **cols; + PgQuery__Node *select_stmt; + PgQuery__OnConflictClause *on_conflict_clause; + size_t n_returning_list; + PgQuery__Node **returning_list; + PgQuery__WithClause *with_clause; + PgQuery__OverridingKind override; }; -#define PG_QUERY__CREATE_OP_FAMILY_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_op_family_stmt__descriptor) \ - , 0,NULL, (char *)protobuf_c_empty_string } +#define PG_QUERY__INSERT_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__insert_stmt__descriptor) \ +, NULL, 0,NULL, NULL, NULL, 0,NULL, NULL, PG_QUERY__OVERRIDING_KIND__OVERRIDING_KIND_UNDEFINED } -struct PgQuery__AlterOpFamilyStmt +struct PgQuery__DeleteStmt { ProtobufCMessage base; - size_t n_opfamilyname; - PgQuery__Node **opfamilyname; - char *amname; - protobuf_c_boolean is_drop; - size_t n_items; - PgQuery__Node **items; + PgQuery__RangeVar *relation; + size_t n_using_clause; + PgQuery__Node **using_clause; + PgQuery__Node *where_clause; + size_t n_returning_list; + PgQuery__Node **returning_list; + PgQuery__WithClause *with_clause; }; -#define PG_QUERY__ALTER_OP_FAMILY_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_op_family_stmt__descriptor) \ - , 0,NULL, (char *)protobuf_c_empty_string, 0, 0,NULL } +#define PG_QUERY__DELETE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__delete_stmt__descriptor) \ +, NULL, 0,NULL, NULL, 0,NULL, NULL } -struct PgQuery__PrepareStmt +struct PgQuery__UpdateStmt { ProtobufCMessage base; - char *name; - size_t n_argtypes; - PgQuery__Node **argtypes; - PgQuery__Node *query; + PgQuery__RangeVar *relation; + size_t n_target_list; + PgQuery__Node **target_list; + PgQuery__Node *where_clause; + size_t n_from_clause; + PgQuery__Node **from_clause; + size_t n_returning_list; + PgQuery__Node **returning_list; + PgQuery__WithClause *with_clause; }; -#define PG_QUERY__PREPARE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__prepare_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, NULL } +#define PG_QUERY__UPDATE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__update_stmt__descriptor) \ +, NULL, 0,NULL, NULL, 0,NULL, 0,NULL, NULL } -struct PgQuery__ExecuteStmt +struct PgQuery__MergeStmt { ProtobufCMessage base; - char *name; - size_t n_params; - PgQuery__Node **params; + PgQuery__RangeVar *relation; + PgQuery__Node *source_relation; + PgQuery__Node *join_condition; + size_t n_merge_when_clauses; + PgQuery__Node **merge_when_clauses; + PgQuery__WithClause *with_clause; }; -#define PG_QUERY__EXECUTE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__execute_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL } +#define PG_QUERY__MERGE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__merge_stmt__descriptor) \ +, NULL, NULL, NULL, 0,NULL, NULL } -struct PgQuery__DeallocateStmt +struct PgQuery__SelectStmt { ProtobufCMessage base; - char *name; + size_t n_distinct_clause; + PgQuery__Node **distinct_clause; + PgQuery__IntoClause *into_clause; + size_t n_target_list; + PgQuery__Node **target_list; + size_t n_from_clause; + PgQuery__Node **from_clause; + PgQuery__Node *where_clause; + size_t n_group_clause; + PgQuery__Node **group_clause; + protobuf_c_boolean group_distinct; + PgQuery__Node *having_clause; + size_t n_window_clause; + PgQuery__Node **window_clause; + size_t n_values_lists; + PgQuery__Node **values_lists; + size_t n_sort_clause; + PgQuery__Node **sort_clause; + PgQuery__Node *limit_offset; + PgQuery__Node *limit_count; + PgQuery__LimitOption limit_option; + size_t n_locking_clause; + PgQuery__Node **locking_clause; + PgQuery__WithClause *with_clause; + PgQuery__SetOperation op; + protobuf_c_boolean all; + PgQuery__SelectStmt *larg; + PgQuery__SelectStmt *rarg; }; -#define PG_QUERY__DEALLOCATE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__deallocate_stmt__descriptor) \ - , (char *)protobuf_c_empty_string } +#define PG_QUERY__SELECT_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__select_stmt__descriptor) \ +, 0,NULL, NULL, 0,NULL, 0,NULL, NULL, 0,NULL, 0, NULL, 0,NULL, 0,NULL, 0,NULL, NULL, NULL, PG_QUERY__LIMIT_OPTION__LIMIT_OPTION_UNDEFINED, 0,NULL, NULL, PG_QUERY__SET_OPERATION__SET_OPERATION_UNDEFINED, 0, NULL, NULL } -struct PgQuery__DeclareCursorStmt +struct PgQuery__SetOperationStmt { ProtobufCMessage base; - char *portalname; - int32_t options; - PgQuery__Node *query; + PgQuery__SetOperation op; + protobuf_c_boolean all; + PgQuery__Node *larg; + PgQuery__Node *rarg; + size_t n_col_types; + PgQuery__Node **col_types; + size_t n_col_typmods; + PgQuery__Node **col_typmods; + size_t n_col_collations; + PgQuery__Node **col_collations; + size_t n_group_clauses; + PgQuery__Node **group_clauses; }; -#define PG_QUERY__DECLARE_CURSOR_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__declare_cursor_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0, NULL } +#define PG_QUERY__SET_OPERATION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__set_operation_stmt__descriptor) \ +, PG_QUERY__SET_OPERATION__SET_OPERATION_UNDEFINED, 0, NULL, NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL } -struct PgQuery__CreateTableSpaceStmt +struct PgQuery__ReturnStmt { ProtobufCMessage base; - char *tablespacename; - PgQuery__RoleSpec *owner; - char *location; - size_t n_options; - PgQuery__Node **options; + PgQuery__Node *returnval; }; -#define PG_QUERY__CREATE_TABLE_SPACE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_table_space_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, 0,NULL } +#define PG_QUERY__RETURN_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__return_stmt__descriptor) \ +, NULL } -struct PgQuery__DropTableSpaceStmt +struct PgQuery__PLAssignStmt { ProtobufCMessage base; - char *tablespacename; - protobuf_c_boolean missing_ok; + char *name; + size_t n_indirection; + PgQuery__Node **indirection; + int32_t nnames; + PgQuery__SelectStmt *val; + int32_t location; }; -#define PG_QUERY__DROP_TABLE_SPACE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_table_space_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0 } +#define PG_QUERY__PLASSIGN_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__plassign_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL, 0, NULL, 0 } -struct PgQuery__AlterObjectDependsStmt +struct PgQuery__CreateSchemaStmt { ProtobufCMessage base; - PgQuery__ObjectType object_type; - PgQuery__RangeVar *relation; - PgQuery__Node *object; - PgQuery__String *extname; - protobuf_c_boolean remove; + char *schemaname; + PgQuery__RoleSpec *authrole; + size_t n_schema_elts; + PgQuery__Node **schema_elts; + protobuf_c_boolean if_not_exists; }; -#define PG_QUERY__ALTER_OBJECT_DEPENDS_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_object_depends_stmt__descriptor) \ - , PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, NULL, NULL, 0 } +#define PG_QUERY__CREATE_SCHEMA_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_schema_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, 0,NULL, 0 } -struct PgQuery__AlterObjectSchemaStmt +struct PgQuery__AlterTableStmt { ProtobufCMessage base; - PgQuery__ObjectType object_type; PgQuery__RangeVar *relation; - PgQuery__Node *object; - char *newschema; + size_t n_cmds; + PgQuery__Node **cmds; + PgQuery__ObjectType objtype; protobuf_c_boolean missing_ok; }; -#define PG_QUERY__ALTER_OBJECT_SCHEMA_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_object_schema_stmt__descriptor) \ - , PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, NULL, (char *)protobuf_c_empty_string, 0 } +#define PG_QUERY__ALTER_TABLE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_table_stmt__descriptor) \ +, NULL, 0,NULL, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0 } -struct PgQuery__AlterOwnerStmt +struct PgQuery__ReplicaIdentityStmt { ProtobufCMessage base; - PgQuery__ObjectType object_type; - PgQuery__RangeVar *relation; - PgQuery__Node *object; + char *identity_type; + char *name; +}; +#define PG_QUERY__REPLICA_IDENTITY_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__replica_identity_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string } + + +struct PgQuery__AlterTableCmd +{ + ProtobufCMessage base; + PgQuery__AlterTableType subtype; + char *name; + int32_t num; PgQuery__RoleSpec *newowner; + PgQuery__Node *def; + PgQuery__DropBehavior behavior; + protobuf_c_boolean missing_ok; + protobuf_c_boolean recurse; }; -#define PG_QUERY__ALTER_OWNER_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_owner_stmt__descriptor) \ - , PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, NULL, NULL } +#define PG_QUERY__ALTER_TABLE_CMD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_table_cmd__descriptor) \ +, PG_QUERY__ALTER_TABLE_TYPE__ALTER_TABLE_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, 0, NULL, NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED, 0, 0 } -struct PgQuery__AlterOperatorStmt +struct PgQuery__AlterCollationStmt { ProtobufCMessage base; - PgQuery__ObjectWithArgs *opername; - size_t n_options; - PgQuery__Node **options; + size_t n_collname; + PgQuery__Node **collname; }; -#define PG_QUERY__ALTER_OPERATOR_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_operator_stmt__descriptor) \ - , NULL, 0,NULL } +#define PG_QUERY__ALTER_COLLATION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_collation_stmt__descriptor) \ +, 0,NULL } -struct PgQuery__AlterTypeStmt +struct PgQuery__AlterDomainStmt { ProtobufCMessage base; + char *subtype; size_t n_type_name; PgQuery__Node **type_name; - size_t n_options; - PgQuery__Node **options; + char *name; + PgQuery__Node *def; + PgQuery__DropBehavior behavior; + protobuf_c_boolean missing_ok; }; -#define PG_QUERY__ALTER_TYPE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_type_stmt__descriptor) \ - , 0,NULL, 0,NULL } +#define PG_QUERY__ALTER_DOMAIN_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_domain_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL, (char *)protobuf_c_empty_string, NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED, 0 } -struct PgQuery__DropOwnedStmt +struct PgQuery__GrantStmt { ProtobufCMessage base; - size_t n_roles; - PgQuery__Node **roles; + protobuf_c_boolean is_grant; + PgQuery__GrantTargetType targtype; + PgQuery__ObjectType objtype; + size_t n_objects; + PgQuery__Node **objects; + size_t n_privileges; + PgQuery__Node **privileges; + size_t n_grantees; + PgQuery__Node **grantees; + protobuf_c_boolean grant_option; + PgQuery__RoleSpec *grantor; PgQuery__DropBehavior behavior; }; -#define PG_QUERY__DROP_OWNED_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_owned_stmt__descriptor) \ - , 0,NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } +#define PG_QUERY__GRANT_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__grant_stmt__descriptor) \ +, 0, PG_QUERY__GRANT_TARGET_TYPE__GRANT_TARGET_TYPE_UNDEFINED, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0,NULL, 0,NULL, 0,NULL, 0, NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } -struct PgQuery__ReassignOwnedStmt +struct PgQuery__ObjectWithArgs { ProtobufCMessage base; - size_t n_roles; - PgQuery__Node **roles; - PgQuery__RoleSpec *newrole; + size_t n_objname; + PgQuery__Node **objname; + size_t n_objargs; + PgQuery__Node **objargs; + size_t n_objfuncargs; + PgQuery__Node **objfuncargs; + protobuf_c_boolean args_unspecified; }; -#define PG_QUERY__REASSIGN_OWNED_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__reassign_owned_stmt__descriptor) \ - , 0,NULL, NULL } +#define PG_QUERY__OBJECT_WITH_ARGS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__object_with_args__descriptor) \ +, 0,NULL, 0,NULL, 0,NULL, 0 } -struct PgQuery__CompositeTypeStmt +struct PgQuery__AccessPriv { ProtobufCMessage base; - PgQuery__RangeVar *typevar; - size_t n_coldeflist; - PgQuery__Node **coldeflist; + char *priv_name; + size_t n_cols; + PgQuery__Node **cols; }; -#define PG_QUERY__COMPOSITE_TYPE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__composite_type_stmt__descriptor) \ - , NULL, 0,NULL } +#define PG_QUERY__ACCESS_PRIV__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__access_priv__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL } -struct PgQuery__CreateEnumStmt +struct PgQuery__GrantRoleStmt { ProtobufCMessage base; - size_t n_type_name; - PgQuery__Node **type_name; - size_t n_vals; - PgQuery__Node **vals; + size_t n_granted_roles; + PgQuery__Node **granted_roles; + size_t n_grantee_roles; + PgQuery__Node **grantee_roles; + protobuf_c_boolean is_grant; + size_t n_opt; + PgQuery__Node **opt; + PgQuery__RoleSpec *grantor; + PgQuery__DropBehavior behavior; }; -#define PG_QUERY__CREATE_ENUM_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_enum_stmt__descriptor) \ - , 0,NULL, 0,NULL } +#define PG_QUERY__GRANT_ROLE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__grant_role_stmt__descriptor) \ +, 0,NULL, 0,NULL, 0, 0,NULL, NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } -struct PgQuery__CreateRangeStmt +struct PgQuery__AlterDefaultPrivilegesStmt { ProtobufCMessage base; - size_t n_type_name; - PgQuery__Node **type_name; - size_t n_params; - PgQuery__Node **params; + size_t n_options; + PgQuery__Node **options; + PgQuery__GrantStmt *action; }; -#define PG_QUERY__CREATE_RANGE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_range_stmt__descriptor) \ - , 0,NULL, 0,NULL } +#define PG_QUERY__ALTER_DEFAULT_PRIVILEGES_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_default_privileges_stmt__descriptor) \ +, 0,NULL, NULL } -struct PgQuery__AlterEnumStmt +struct PgQuery__CopyStmt { ProtobufCMessage base; - size_t n_type_name; - PgQuery__Node **type_name; - char *old_val; - char *new_val; - char *new_val_neighbor; - protobuf_c_boolean new_val_is_after; - protobuf_c_boolean skip_if_new_val_exists; + PgQuery__RangeVar *relation; + PgQuery__Node *query; + size_t n_attlist; + PgQuery__Node **attlist; + protobuf_c_boolean is_from; + protobuf_c_boolean is_program; + char *filename; + size_t n_options; + PgQuery__Node **options; + PgQuery__Node *where_clause; }; -#define PG_QUERY__ALTER_ENUM_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_enum_stmt__descriptor) \ - , 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, 0 } +#define PG_QUERY__COPY_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__copy_stmt__descriptor) \ +, NULL, NULL, 0,NULL, 0, 0, (char *)protobuf_c_empty_string, 0,NULL, NULL } -struct PgQuery__AlterTSDictionaryStmt +struct PgQuery__VariableSetStmt { ProtobufCMessage base; - size_t n_dictname; - PgQuery__Node **dictname; + PgQuery__VariableSetKind kind; + char *name; + size_t n_args; + PgQuery__Node **args; + protobuf_c_boolean is_local; +}; +#define PG_QUERY__VARIABLE_SET_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__variable_set_stmt__descriptor) \ +, PG_QUERY__VARIABLE_SET_KIND__VARIABLE_SET_KIND_UNDEFINED, (char *)protobuf_c_empty_string, 0,NULL, 0 } + + +struct PgQuery__VariableShowStmt +{ + ProtobufCMessage base; + char *name; +}; +#define PG_QUERY__VARIABLE_SHOW_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__variable_show_stmt__descriptor) \ +, (char *)protobuf_c_empty_string } + + +struct PgQuery__CreateStmt +{ + ProtobufCMessage base; + PgQuery__RangeVar *relation; + size_t n_table_elts; + PgQuery__Node **table_elts; + size_t n_inh_relations; + PgQuery__Node **inh_relations; + PgQuery__PartitionBoundSpec *partbound; + PgQuery__PartitionSpec *partspec; + PgQuery__TypeName *of_typename; + size_t n_constraints; + PgQuery__Node **constraints; size_t n_options; PgQuery__Node **options; + PgQuery__OnCommitAction oncommit; + char *tablespacename; + char *access_method; + protobuf_c_boolean if_not_exists; }; -#define PG_QUERY__ALTER_TSDICTIONARY_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_tsdictionary_stmt__descriptor) \ - , 0,NULL, 0,NULL } +#define PG_QUERY__CREATE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_stmt__descriptor) \ +, NULL, 0,NULL, 0,NULL, NULL, NULL, NULL, 0,NULL, 0,NULL, PG_QUERY__ON_COMMIT_ACTION__ON_COMMIT_ACTION_UNDEFINED, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0 } -struct PgQuery__AlterTSConfigurationStmt +struct PgQuery__Constraint { ProtobufCMessage base; - PgQuery__AlterTSConfigType kind; - size_t n_cfgname; - PgQuery__Node **cfgname; - size_t n_tokentype; - PgQuery__Node **tokentype; - size_t n_dicts; - PgQuery__Node **dicts; - protobuf_c_boolean override; - protobuf_c_boolean replace; + PgQuery__ConstrType contype; + char *conname; + protobuf_c_boolean deferrable; + protobuf_c_boolean initdeferred; + int32_t location; + protobuf_c_boolean is_no_inherit; + PgQuery__Node *raw_expr; + char *cooked_expr; + char *generated_when; + protobuf_c_boolean nulls_not_distinct; + size_t n_keys; + PgQuery__Node **keys; + size_t n_including; + PgQuery__Node **including; + size_t n_exclusions; + PgQuery__Node **exclusions; + size_t n_options; + PgQuery__Node **options; + char *indexname; + char *indexspace; + protobuf_c_boolean reset_default_tblspc; + char *access_method; + PgQuery__Node *where_clause; + PgQuery__RangeVar *pktable; + size_t n_fk_attrs; + PgQuery__Node **fk_attrs; + size_t n_pk_attrs; + PgQuery__Node **pk_attrs; + char *fk_matchtype; + char *fk_upd_action; + char *fk_del_action; + size_t n_fk_del_set_cols; + PgQuery__Node **fk_del_set_cols; + size_t n_old_conpfeqop; + PgQuery__Node **old_conpfeqop; + uint32_t old_pktable_oid; + protobuf_c_boolean skip_validation; + protobuf_c_boolean initially_valid; +}; +#define PG_QUERY__CONSTRAINT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__constraint__descriptor) \ +, PG_QUERY__CONSTR_TYPE__CONSTR_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, 0, 0, 0, 0, NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, 0,NULL, 0,NULL, 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, (char *)protobuf_c_empty_string, NULL, NULL, 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0, 0, 0 } + + +struct PgQuery__CreateTableSpaceStmt +{ + ProtobufCMessage base; + char *tablespacename; + PgQuery__RoleSpec *owner; + char *location; + size_t n_options; + PgQuery__Node **options; +}; +#define PG_QUERY__CREATE_TABLE_SPACE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_table_space_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, 0,NULL } + + +struct PgQuery__DropTableSpaceStmt +{ + ProtobufCMessage base; + char *tablespacename; protobuf_c_boolean missing_ok; }; -#define PG_QUERY__ALTER_TSCONFIGURATION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_tsconfiguration_stmt__descriptor) \ - , PG_QUERY__ALTER_TSCONFIG_TYPE__ALTER_TSCONFIG_TYPE_UNDEFINED, 0,NULL, 0,NULL, 0,NULL, 0, 0, 0 } +#define PG_QUERY__DROP_TABLE_SPACE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_table_space_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0 } + + +struct PgQuery__AlterTableSpaceOptionsStmt +{ + ProtobufCMessage base; + char *tablespacename; + size_t n_options; + PgQuery__Node **options; + protobuf_c_boolean is_reset; +}; +#define PG_QUERY__ALTER_TABLE_SPACE_OPTIONS_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_table_space_options_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL, 0 } + + +struct PgQuery__AlterTableMoveAllStmt +{ + ProtobufCMessage base; + char *orig_tablespacename; + PgQuery__ObjectType objtype; + size_t n_roles; + PgQuery__Node **roles; + char *new_tablespacename; + protobuf_c_boolean nowait; +}; +#define PG_QUERY__ALTER_TABLE_MOVE_ALL_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_table_move_all_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0,NULL, (char *)protobuf_c_empty_string, 0 } + + +struct PgQuery__CreateExtensionStmt +{ + ProtobufCMessage base; + char *extname; + protobuf_c_boolean if_not_exists; + size_t n_options; + PgQuery__Node **options; +}; +#define PG_QUERY__CREATE_EXTENSION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_extension_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0, 0,NULL } + + +struct PgQuery__AlterExtensionStmt +{ + ProtobufCMessage base; + char *extname; + size_t n_options; + PgQuery__Node **options; +}; +#define PG_QUERY__ALTER_EXTENSION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_extension_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL } + + +struct PgQuery__AlterExtensionContentsStmt +{ + ProtobufCMessage base; + char *extname; + int32_t action; + PgQuery__ObjectType objtype; + PgQuery__Node *object; +}; +#define PG_QUERY__ALTER_EXTENSION_CONTENTS_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_extension_contents_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL } struct PgQuery__CreateFdwStmt @@ -4300,7 +4643,7 @@ struct PgQuery__CreateFdwStmt }; #define PG_QUERY__CREATE_FDW_STMT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_fdw_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } +, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } struct PgQuery__AlterFdwStmt @@ -4314,7 +4657,7 @@ struct PgQuery__AlterFdwStmt }; #define PG_QUERY__ALTER_FDW_STMT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_fdw_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } +, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } struct PgQuery__CreateForeignServerStmt @@ -4330,7 +4673,7 @@ struct PgQuery__CreateForeignServerStmt }; #define PG_QUERY__CREATE_FOREIGN_SERVER_STMT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_foreign_server_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, 0,NULL } +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, 0,NULL } struct PgQuery__AlterForeignServerStmt @@ -4344,7 +4687,20 @@ struct PgQuery__AlterForeignServerStmt }; #define PG_QUERY__ALTER_FOREIGN_SERVER_STMT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_foreign_server_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0 } +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0 } + + +struct PgQuery__CreateForeignTableStmt +{ + ProtobufCMessage base; + PgQuery__CreateStmt *base_stmt; + char *servername; + size_t n_options; + PgQuery__Node **options; +}; +#define PG_QUERY__CREATE_FOREIGN_TABLE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_foreign_table_stmt__descriptor) \ +, NULL, (char *)protobuf_c_empty_string, 0,NULL } struct PgQuery__CreateUserMappingStmt @@ -4358,7 +4714,7 @@ struct PgQuery__CreateUserMappingStmt }; #define PG_QUERY__CREATE_USER_MAPPING_STMT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_user_mapping_stmt__descriptor) \ - , NULL, (char *)protobuf_c_empty_string, 0, 0,NULL } +, NULL, (char *)protobuf_c_empty_string, 0, 0,NULL } struct PgQuery__AlterUserMappingStmt @@ -4371,7 +4727,7 @@ struct PgQuery__AlterUserMappingStmt }; #define PG_QUERY__ALTER_USER_MAPPING_STMT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_user_mapping_stmt__descriptor) \ - , NULL, (char *)protobuf_c_empty_string, 0,NULL } +, NULL, (char *)protobuf_c_empty_string, 0,NULL } struct PgQuery__DropUserMappingStmt @@ -4383,116 +4739,97 @@ struct PgQuery__DropUserMappingStmt }; #define PG_QUERY__DROP_USER_MAPPING_STMT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_user_mapping_stmt__descriptor) \ - , NULL, (char *)protobuf_c_empty_string, 0 } +, NULL, (char *)protobuf_c_empty_string, 0 } -struct PgQuery__AlterTableSpaceOptionsStmt +struct PgQuery__ImportForeignSchemaStmt { ProtobufCMessage base; - char *tablespacename; + char *server_name; + char *remote_schema; + char *local_schema; + PgQuery__ImportForeignSchemaType list_type; + size_t n_table_list; + PgQuery__Node **table_list; size_t n_options; PgQuery__Node **options; - protobuf_c_boolean is_reset; }; -#define PG_QUERY__ALTER_TABLE_SPACE_OPTIONS_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_table_space_options_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, 0 } +#define PG_QUERY__IMPORT_FOREIGN_SCHEMA_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__import_foreign_schema_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, PG_QUERY__IMPORT_FOREIGN_SCHEMA_TYPE__IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED, 0,NULL, 0,NULL } -struct PgQuery__AlterTableMoveAllStmt +struct PgQuery__CreatePolicyStmt { ProtobufCMessage base; - char *orig_tablespacename; - PgQuery__ObjectType objtype; + char *policy_name; + PgQuery__RangeVar *table; + char *cmd_name; + protobuf_c_boolean permissive; size_t n_roles; PgQuery__Node **roles; - char *new_tablespacename; - protobuf_c_boolean nowait; + PgQuery__Node *qual; + PgQuery__Node *with_check; }; -#define PG_QUERY__ALTER_TABLE_MOVE_ALL_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_table_move_all_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0,NULL, (char *)protobuf_c_empty_string, 0 } +#define PG_QUERY__CREATE_POLICY_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_policy_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, 0, 0,NULL, NULL, NULL } -struct PgQuery__SecLabelStmt +struct PgQuery__AlterPolicyStmt { ProtobufCMessage base; - PgQuery__ObjectType objtype; - PgQuery__Node *object; - char *provider; - char *label; + char *policy_name; + PgQuery__RangeVar *table; + size_t n_roles; + PgQuery__Node **roles; + PgQuery__Node *qual; + PgQuery__Node *with_check; }; -#define PG_QUERY__SEC_LABEL_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__sec_label_stmt__descriptor) \ - , PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string } +#define PG_QUERY__ALTER_POLICY_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_policy_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, 0,NULL, NULL, NULL } -struct PgQuery__CreateForeignTableStmt +struct PgQuery__CreateAmStmt { ProtobufCMessage base; - PgQuery__CreateStmt *base_stmt; - char *servername; - size_t n_options; - PgQuery__Node **options; -}; -#define PG_QUERY__CREATE_FOREIGN_TABLE_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_foreign_table_stmt__descriptor) \ - , NULL, (char *)protobuf_c_empty_string, 0,NULL } - - -struct PgQuery__ImportForeignSchemaStmt -{ - ProtobufCMessage base; - char *server_name; - char *remote_schema; - char *local_schema; - PgQuery__ImportForeignSchemaType list_type; - size_t n_table_list; - PgQuery__Node **table_list; - size_t n_options; - PgQuery__Node **options; -}; -#define PG_QUERY__IMPORT_FOREIGN_SCHEMA_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__import_foreign_schema_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, PG_QUERY__IMPORT_FOREIGN_SCHEMA_TYPE__IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED, 0,NULL, 0,NULL } - - -struct PgQuery__CreateExtensionStmt -{ - ProtobufCMessage base; - char *extname; - protobuf_c_boolean if_not_exists; - size_t n_options; - PgQuery__Node **options; -}; -#define PG_QUERY__CREATE_EXTENSION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_extension_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0, 0,NULL } - - -struct PgQuery__AlterExtensionStmt -{ - ProtobufCMessage base; - char *extname; - size_t n_options; - PgQuery__Node **options; + char *amname; + size_t n_handler_name; + PgQuery__Node **handler_name; + char *amtype; }; -#define PG_QUERY__ALTER_EXTENSION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_extension_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL } +#define PG_QUERY__CREATE_AM_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_am_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL, (char *)protobuf_c_empty_string } -struct PgQuery__AlterExtensionContentsStmt +struct PgQuery__CreateTrigStmt { ProtobufCMessage base; - char *extname; - int32_t action; - PgQuery__ObjectType objtype; - PgQuery__Node *object; + protobuf_c_boolean replace; + protobuf_c_boolean isconstraint; + char *trigname; + PgQuery__RangeVar *relation; + size_t n_funcname; + PgQuery__Node **funcname; + size_t n_args; + PgQuery__Node **args; + protobuf_c_boolean row; + int32_t timing; + int32_t events; + size_t n_columns; + PgQuery__Node **columns; + PgQuery__Node *when_clause; + size_t n_transition_rels; + PgQuery__Node **transition_rels; + protobuf_c_boolean deferrable; + protobuf_c_boolean initdeferred; + PgQuery__RangeVar *constrrel; }; -#define PG_QUERY__ALTER_EXTENSION_CONTENTS_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_extension_contents_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL } +#define PG_QUERY__CREATE_TRIG_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_trig_stmt__descriptor) \ +, 0, 0, (char *)protobuf_c_empty_string, NULL, 0,NULL, 0,NULL, 0, 0, 0, 0,NULL, NULL, 0,NULL, 0, 0, NULL } struct PgQuery__CreateEventTrigStmt @@ -4507,7 +4844,7 @@ struct PgQuery__CreateEventTrigStmt }; #define PG_QUERY__CREATE_EVENT_TRIG_STMT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_event_trig_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } struct PgQuery__AlterEventTrigStmt @@ -4518,1154 +4855,1027 @@ struct PgQuery__AlterEventTrigStmt }; #define PG_QUERY__ALTER_EVENT_TRIG_STMT__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_event_trig_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string } +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string } -struct PgQuery__RefreshMatViewStmt +struct PgQuery__CreatePLangStmt { ProtobufCMessage base; - protobuf_c_boolean concurrent; - protobuf_c_boolean skip_data; - PgQuery__RangeVar *relation; + protobuf_c_boolean replace; + char *plname; + size_t n_plhandler; + PgQuery__Node **plhandler; + size_t n_plinline; + PgQuery__Node **plinline; + size_t n_plvalidator; + PgQuery__Node **plvalidator; + protobuf_c_boolean pltrusted; }; -#define PG_QUERY__REFRESH_MAT_VIEW_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__refresh_mat_view_stmt__descriptor) \ - , 0, 0, NULL } +#define PG_QUERY__CREATE_PLANG_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_plang_stmt__descriptor) \ +, 0, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0,NULL, 0 } -struct PgQuery__ReplicaIdentityStmt +struct PgQuery__CreateRoleStmt { ProtobufCMessage base; - char *identity_type; - char *name; + PgQuery__RoleStmtType stmt_type; + char *role; + size_t n_options; + PgQuery__Node **options; }; -#define PG_QUERY__REPLICA_IDENTITY_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__replica_identity_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string } +#define PG_QUERY__CREATE_ROLE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_role_stmt__descriptor) \ +, PG_QUERY__ROLE_STMT_TYPE__ROLE_STMT_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, 0,NULL } -struct PgQuery__AlterSystemStmt +struct PgQuery__AlterRoleStmt { ProtobufCMessage base; - PgQuery__VariableSetStmt *setstmt; + PgQuery__RoleSpec *role; + size_t n_options; + PgQuery__Node **options; + int32_t action; }; -#define PG_QUERY__ALTER_SYSTEM_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_system_stmt__descriptor) \ - , NULL } +#define PG_QUERY__ALTER_ROLE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_role_stmt__descriptor) \ +, NULL, 0,NULL, 0 } -struct PgQuery__CreatePolicyStmt +struct PgQuery__AlterRoleSetStmt { ProtobufCMessage base; - char *policy_name; - PgQuery__RangeVar *table; - char *cmd_name; - protobuf_c_boolean permissive; - size_t n_roles; - PgQuery__Node **roles; - PgQuery__Node *qual; - PgQuery__Node *with_check; + PgQuery__RoleSpec *role; + char *database; + PgQuery__VariableSetStmt *setstmt; }; -#define PG_QUERY__CREATE_POLICY_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_policy_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, 0, 0,NULL, NULL, NULL } +#define PG_QUERY__ALTER_ROLE_SET_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_role_set_stmt__descriptor) \ +, NULL, (char *)protobuf_c_empty_string, NULL } -struct PgQuery__AlterPolicyStmt +struct PgQuery__DropRoleStmt { ProtobufCMessage base; - char *policy_name; - PgQuery__RangeVar *table; size_t n_roles; PgQuery__Node **roles; - PgQuery__Node *qual; - PgQuery__Node *with_check; -}; -#define PG_QUERY__ALTER_POLICY_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_policy_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, 0,NULL, NULL, NULL } - - -struct PgQuery__CreateTransformStmt -{ - ProtobufCMessage base; - protobuf_c_boolean replace; - PgQuery__TypeName *type_name; - char *lang; - PgQuery__ObjectWithArgs *fromsql; - PgQuery__ObjectWithArgs *tosql; + protobuf_c_boolean missing_ok; }; -#define PG_QUERY__CREATE_TRANSFORM_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_transform_stmt__descriptor) \ - , 0, NULL, (char *)protobuf_c_empty_string, NULL, NULL } +#define PG_QUERY__DROP_ROLE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_role_stmt__descriptor) \ +, 0,NULL, 0 } -struct PgQuery__CreateAmStmt +struct PgQuery__CreateSeqStmt { ProtobufCMessage base; - char *amname; - size_t n_handler_name; - PgQuery__Node **handler_name; - char *amtype; + PgQuery__RangeVar *sequence; + size_t n_options; + PgQuery__Node **options; + uint32_t owner_id; + protobuf_c_boolean for_identity; + protobuf_c_boolean if_not_exists; }; -#define PG_QUERY__CREATE_AM_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_am_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, (char *)protobuf_c_empty_string } +#define PG_QUERY__CREATE_SEQ_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_seq_stmt__descriptor) \ +, NULL, 0,NULL, 0, 0, 0 } -struct PgQuery__CreatePublicationStmt +struct PgQuery__AlterSeqStmt { ProtobufCMessage base; - char *pubname; + PgQuery__RangeVar *sequence; size_t n_options; PgQuery__Node **options; - size_t n_pubobjects; - PgQuery__Node **pubobjects; - protobuf_c_boolean for_all_tables; + protobuf_c_boolean for_identity; + protobuf_c_boolean missing_ok; }; -#define PG_QUERY__CREATE_PUBLICATION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_publication_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0 } +#define PG_QUERY__ALTER_SEQ_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_seq_stmt__descriptor) \ +, NULL, 0,NULL, 0, 0 } -struct PgQuery__AlterPublicationStmt +struct PgQuery__DefineStmt { ProtobufCMessage base; - char *pubname; - size_t n_options; - PgQuery__Node **options; - size_t n_pubobjects; - PgQuery__Node **pubobjects; - protobuf_c_boolean for_all_tables; - PgQuery__AlterPublicationAction action; + PgQuery__ObjectType kind; + protobuf_c_boolean oldstyle; + size_t n_defnames; + PgQuery__Node **defnames; + size_t n_args; + PgQuery__Node **args; + size_t n_definition; + PgQuery__Node **definition; + protobuf_c_boolean if_not_exists; + protobuf_c_boolean replace; }; -#define PG_QUERY__ALTER_PUBLICATION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_publication_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0, PG_QUERY__ALTER_PUBLICATION_ACTION__ALTER_PUBLICATION_ACTION_UNDEFINED } +#define PG_QUERY__DEFINE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__define_stmt__descriptor) \ +, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0, 0,NULL, 0,NULL, 0,NULL, 0, 0 } -struct PgQuery__CreateSubscriptionStmt +struct PgQuery__CreateDomainStmt { ProtobufCMessage base; - char *subname; - char *conninfo; - size_t n_publication; - PgQuery__Node **publication; - size_t n_options; - PgQuery__Node **options; + size_t n_domainname; + PgQuery__Node **domainname; + PgQuery__TypeName *type_name; + PgQuery__CollateClause *coll_clause; + size_t n_constraints; + PgQuery__Node **constraints; }; -#define PG_QUERY__CREATE_SUBSCRIPTION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_subscription_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } +#define PG_QUERY__CREATE_DOMAIN_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_domain_stmt__descriptor) \ +, 0,NULL, NULL, NULL, 0,NULL } -struct PgQuery__AlterSubscriptionStmt +struct PgQuery__CreateOpClassStmt { ProtobufCMessage base; - PgQuery__AlterSubscriptionType kind; - char *subname; - char *conninfo; - size_t n_publication; - PgQuery__Node **publication; - size_t n_options; - PgQuery__Node **options; + size_t n_opclassname; + PgQuery__Node **opclassname; + size_t n_opfamilyname; + PgQuery__Node **opfamilyname; + char *amname; + PgQuery__TypeName *datatype; + size_t n_items; + PgQuery__Node **items; + protobuf_c_boolean is_default; }; -#define PG_QUERY__ALTER_SUBSCRIPTION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_subscription_stmt__descriptor) \ - , PG_QUERY__ALTER_SUBSCRIPTION_TYPE__ALTER_SUBSCRIPTION_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } +#define PG_QUERY__CREATE_OP_CLASS_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_op_class_stmt__descriptor) \ +, 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, NULL, 0,NULL, 0 } -struct PgQuery__DropSubscriptionStmt +struct PgQuery__CreateOpClassItem { ProtobufCMessage base; - char *subname; - protobuf_c_boolean missing_ok; - PgQuery__DropBehavior behavior; -}; -#define PG_QUERY__DROP_SUBSCRIPTION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_subscription_stmt__descriptor) \ - , (char *)protobuf_c_empty_string, 0, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } - - -struct PgQuery__CreateStatsStmt -{ - ProtobufCMessage base; - size_t n_defnames; - PgQuery__Node **defnames; - size_t n_stat_types; - PgQuery__Node **stat_types; - size_t n_exprs; - PgQuery__Node **exprs; - size_t n_relations; - PgQuery__Node **relations; - char *stxcomment; - protobuf_c_boolean transformed; - protobuf_c_boolean if_not_exists; + int32_t itemtype; + PgQuery__ObjectWithArgs *name; + int32_t number; + size_t n_order_family; + PgQuery__Node **order_family; + size_t n_class_args; + PgQuery__Node **class_args; + PgQuery__TypeName *storedtype; }; -#define PG_QUERY__CREATE_STATS_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_stats_stmt__descriptor) \ - , 0,NULL, 0,NULL, 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, 0, 0 } +#define PG_QUERY__CREATE_OP_CLASS_ITEM__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_op_class_item__descriptor) \ +, 0, NULL, 0, 0,NULL, 0,NULL, NULL } -struct PgQuery__AlterCollationStmt +struct PgQuery__CreateOpFamilyStmt { ProtobufCMessage base; - size_t n_collname; - PgQuery__Node **collname; + size_t n_opfamilyname; + PgQuery__Node **opfamilyname; + char *amname; }; -#define PG_QUERY__ALTER_COLLATION_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_collation_stmt__descriptor) \ - , 0,NULL } +#define PG_QUERY__CREATE_OP_FAMILY_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_op_family_stmt__descriptor) \ +, 0,NULL, (char *)protobuf_c_empty_string } -struct PgQuery__CallStmt +struct PgQuery__AlterOpFamilyStmt { ProtobufCMessage base; - PgQuery__FuncCall *funccall; - PgQuery__FuncExpr *funcexpr; - size_t n_outargs; - PgQuery__Node **outargs; + size_t n_opfamilyname; + PgQuery__Node **opfamilyname; + char *amname; + protobuf_c_boolean is_drop; + size_t n_items; + PgQuery__Node **items; }; -#define PG_QUERY__CALL_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__call_stmt__descriptor) \ - , NULL, NULL, 0,NULL } +#define PG_QUERY__ALTER_OP_FAMILY_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_op_family_stmt__descriptor) \ +, 0,NULL, (char *)protobuf_c_empty_string, 0, 0,NULL } -struct PgQuery__AlterStatsStmt +struct PgQuery__DropStmt { ProtobufCMessage base; - size_t n_defnames; - PgQuery__Node **defnames; - int32_t stxstattarget; + size_t n_objects; + PgQuery__Node **objects; + PgQuery__ObjectType remove_type; + PgQuery__DropBehavior behavior; protobuf_c_boolean missing_ok; + protobuf_c_boolean concurrent; }; -#define PG_QUERY__ALTER_STATS_STMT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_stats_stmt__descriptor) \ - , 0,NULL, 0, 0 } +#define PG_QUERY__DROP_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_stmt__descriptor) \ +, 0,NULL, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED, 0, 0 } -struct PgQuery__AExpr +struct PgQuery__TruncateStmt { ProtobufCMessage base; - PgQuery__AExprKind kind; - size_t n_name; - PgQuery__Node **name; - PgQuery__Node *lexpr; - PgQuery__Node *rexpr; - int32_t location; + size_t n_relations; + PgQuery__Node **relations; + protobuf_c_boolean restart_seqs; + PgQuery__DropBehavior behavior; }; -#define PG_QUERY__A__EXPR__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__expr__descriptor) \ - , PG_QUERY__A__EXPR__KIND__A_EXPR_KIND_UNDEFINED, 0,NULL, NULL, NULL, 0 } +#define PG_QUERY__TRUNCATE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__truncate_stmt__descriptor) \ +, 0,NULL, 0, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } -struct PgQuery__ColumnRef +struct PgQuery__CommentStmt { ProtobufCMessage base; - size_t n_fields; - PgQuery__Node **fields; - int32_t location; + PgQuery__ObjectType objtype; + PgQuery__Node *object; + char *comment; }; -#define PG_QUERY__COLUMN_REF__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__column_ref__descriptor) \ - , 0,NULL, 0 } +#define PG_QUERY__COMMENT_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__comment_stmt__descriptor) \ +, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, (char *)protobuf_c_empty_string } -struct PgQuery__ParamRef +struct PgQuery__SecLabelStmt { ProtobufCMessage base; - int32_t number; - int32_t location; + PgQuery__ObjectType objtype; + PgQuery__Node *object; + char *provider; + char *label; }; -#define PG_QUERY__PARAM_REF__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__param_ref__descriptor) \ - , 0, 0 } +#define PG_QUERY__SEC_LABEL_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__sec_label_stmt__descriptor) \ +, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string } -struct PgQuery__FuncCall +struct PgQuery__DeclareCursorStmt { ProtobufCMessage base; - size_t n_funcname; - PgQuery__Node **funcname; - size_t n_args; - PgQuery__Node **args; - size_t n_agg_order; - PgQuery__Node **agg_order; - PgQuery__Node *agg_filter; - PgQuery__WindowDef *over; - protobuf_c_boolean agg_within_group; - protobuf_c_boolean agg_star; - protobuf_c_boolean agg_distinct; - protobuf_c_boolean func_variadic; - PgQuery__CoercionForm funcformat; - int32_t location; + char *portalname; + int32_t options; + PgQuery__Node *query; }; -#define PG_QUERY__FUNC_CALL__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__func_call__descriptor) \ - , 0,NULL, 0,NULL, 0,NULL, NULL, NULL, 0, 0, 0, 0, PG_QUERY__COERCION_FORM__COERCION_FORM_UNDEFINED, 0 } +#define PG_QUERY__DECLARE_CURSOR_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__declare_cursor_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0, NULL } -struct PgQuery__AStar +struct PgQuery__ClosePortalStmt { ProtobufCMessage base; + char *portalname; }; -#define PG_QUERY__A__STAR__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__star__descriptor) \ - } +#define PG_QUERY__CLOSE_PORTAL_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__close_portal_stmt__descriptor) \ +, (char *)protobuf_c_empty_string } -struct PgQuery__AIndices +struct PgQuery__FetchStmt { ProtobufCMessage base; - protobuf_c_boolean is_slice; - PgQuery__Node *lidx; - PgQuery__Node *uidx; + PgQuery__FetchDirection direction; + int64_t how_many; + char *portalname; + protobuf_c_boolean ismove; }; -#define PG_QUERY__A__INDICES__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__indices__descriptor) \ - , 0, NULL, NULL } +#define PG_QUERY__FETCH_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__fetch_stmt__descriptor) \ +, PG_QUERY__FETCH_DIRECTION__FETCH_DIRECTION_UNDEFINED, 0, (char *)protobuf_c_empty_string, 0 } -struct PgQuery__AIndirection +struct PgQuery__IndexStmt { ProtobufCMessage base; - PgQuery__Node *arg; - size_t n_indirection; - PgQuery__Node **indirection; + char *idxname; + PgQuery__RangeVar *relation; + char *access_method; + char *table_space; + size_t n_index_params; + PgQuery__Node **index_params; + size_t n_index_including_params; + PgQuery__Node **index_including_params; + size_t n_options; + PgQuery__Node **options; + PgQuery__Node *where_clause; + size_t n_exclude_op_names; + PgQuery__Node **exclude_op_names; + char *idxcomment; + uint32_t index_oid; + uint32_t old_number; + uint32_t old_create_subid; + uint32_t old_first_relfilelocator_subid; + protobuf_c_boolean unique; + protobuf_c_boolean nulls_not_distinct; + protobuf_c_boolean primary; + protobuf_c_boolean isconstraint; + protobuf_c_boolean deferrable; + protobuf_c_boolean initdeferred; + protobuf_c_boolean transformed; + protobuf_c_boolean concurrent; + protobuf_c_boolean if_not_exists; + protobuf_c_boolean reset_default_tblspc; }; -#define PG_QUERY__A__INDIRECTION__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__indirection__descriptor) \ - , NULL, 0,NULL } +#define PG_QUERY__INDEX_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__index_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0,NULL, NULL, 0,NULL, (char *)protobuf_c_empty_string, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } -struct PgQuery__AArrayExpr +struct PgQuery__CreateStatsStmt { ProtobufCMessage base; - size_t n_elements; - PgQuery__Node **elements; - int32_t location; + size_t n_defnames; + PgQuery__Node **defnames; + size_t n_stat_types; + PgQuery__Node **stat_types; + size_t n_exprs; + PgQuery__Node **exprs; + size_t n_relations; + PgQuery__Node **relations; + char *stxcomment; + protobuf_c_boolean transformed; + protobuf_c_boolean if_not_exists; }; -#define PG_QUERY__A__ARRAY_EXPR__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__a__array_expr__descriptor) \ - , 0,NULL, 0 } +#define PG_QUERY__CREATE_STATS_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_stats_stmt__descriptor) \ +, 0,NULL, 0,NULL, 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, 0, 0 } -struct PgQuery__ResTarget +struct PgQuery__StatsElem { ProtobufCMessage base; char *name; - size_t n_indirection; - PgQuery__Node **indirection; - PgQuery__Node *val; - int32_t location; + PgQuery__Node *expr; }; -#define PG_QUERY__RES_TARGET__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__res_target__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, NULL, 0 } +#define PG_QUERY__STATS_ELEM__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__stats_elem__descriptor) \ +, (char *)protobuf_c_empty_string, NULL } -struct PgQuery__MultiAssignRef +struct PgQuery__AlterStatsStmt { ProtobufCMessage base; - PgQuery__Node *source; - int32_t colno; - int32_t ncolumns; + size_t n_defnames; + PgQuery__Node **defnames; + int32_t stxstattarget; + protobuf_c_boolean missing_ok; }; -#define PG_QUERY__MULTI_ASSIGN_REF__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__multi_assign_ref__descriptor) \ - , NULL, 0, 0 } +#define PG_QUERY__ALTER_STATS_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_stats_stmt__descriptor) \ +, 0,NULL, 0, 0 } -struct PgQuery__TypeCast +struct PgQuery__CreateFunctionStmt { ProtobufCMessage base; - PgQuery__Node *arg; - PgQuery__TypeName *type_name; - int32_t location; + protobuf_c_boolean is_procedure; + protobuf_c_boolean replace; + size_t n_funcname; + PgQuery__Node **funcname; + size_t n_parameters; + PgQuery__Node **parameters; + PgQuery__TypeName *return_type; + size_t n_options; + PgQuery__Node **options; + PgQuery__Node *sql_body; }; -#define PG_QUERY__TYPE_CAST__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__type_cast__descriptor) \ - , NULL, NULL, 0 } +#define PG_QUERY__CREATE_FUNCTION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_function_stmt__descriptor) \ +, 0, 0, 0,NULL, 0,NULL, NULL, 0,NULL, NULL } -struct PgQuery__CollateClause +struct PgQuery__FunctionParameter { ProtobufCMessage base; - PgQuery__Node *arg; - size_t n_collname; - PgQuery__Node **collname; - int32_t location; + char *name; + PgQuery__TypeName *arg_type; + PgQuery__FunctionParameterMode mode; + PgQuery__Node *defexpr; }; -#define PG_QUERY__COLLATE_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__collate_clause__descriptor) \ - , NULL, 0,NULL, 0 } +#define PG_QUERY__FUNCTION_PARAMETER__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__function_parameter__descriptor) \ +, (char *)protobuf_c_empty_string, NULL, PG_QUERY__FUNCTION_PARAMETER_MODE__FUNCTION_PARAMETER_MODE_UNDEFINED, NULL } -struct PgQuery__SortBy +struct PgQuery__AlterFunctionStmt { ProtobufCMessage base; - PgQuery__Node *node; - PgQuery__SortByDir sortby_dir; - PgQuery__SortByNulls sortby_nulls; - size_t n_use_op; - PgQuery__Node **use_op; - int32_t location; + PgQuery__ObjectType objtype; + PgQuery__ObjectWithArgs *func; + size_t n_actions; + PgQuery__Node **actions; }; -#define PG_QUERY__SORT_BY__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__sort_by__descriptor) \ - , NULL, PG_QUERY__SORT_BY_DIR__SORT_BY_DIR_UNDEFINED, PG_QUERY__SORT_BY_NULLS__SORT_BY_NULLS_UNDEFINED, 0,NULL, 0 } +#define PG_QUERY__ALTER_FUNCTION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_function_stmt__descriptor) \ +, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, 0,NULL } -struct PgQuery__WindowDef +struct PgQuery__DoStmt { ProtobufCMessage base; - char *name; - char *refname; - size_t n_partition_clause; - PgQuery__Node **partition_clause; - size_t n_order_clause; - PgQuery__Node **order_clause; - int32_t frame_options; - PgQuery__Node *start_offset; - PgQuery__Node *end_offset; - int32_t location; + size_t n_args; + PgQuery__Node **args; }; -#define PG_QUERY__WINDOW_DEF__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__window_def__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0, NULL, NULL, 0 } +#define PG_QUERY__DO_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__do_stmt__descriptor) \ +, 0,NULL } -struct PgQuery__RangeSubselect +struct PgQuery__InlineCodeBlock { ProtobufCMessage base; - protobuf_c_boolean lateral; - PgQuery__Node *subquery; - PgQuery__Alias *alias; + char *source_text; + uint32_t lang_oid; + protobuf_c_boolean lang_is_trusted; + protobuf_c_boolean atomic; }; -#define PG_QUERY__RANGE_SUBSELECT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_subselect__descriptor) \ - , 0, NULL, NULL } +#define PG_QUERY__INLINE_CODE_BLOCK__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__inline_code_block__descriptor) \ +, (char *)protobuf_c_empty_string, 0, 0, 0 } -struct PgQuery__RangeFunction +struct PgQuery__CallStmt { ProtobufCMessage base; - protobuf_c_boolean lateral; - protobuf_c_boolean ordinality; - protobuf_c_boolean is_rowsfrom; - size_t n_functions; - PgQuery__Node **functions; - PgQuery__Alias *alias; - size_t n_coldeflist; - PgQuery__Node **coldeflist; + PgQuery__FuncCall *funccall; + PgQuery__FuncExpr *funcexpr; + size_t n_outargs; + PgQuery__Node **outargs; }; -#define PG_QUERY__RANGE_FUNCTION__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_function__descriptor) \ - , 0, 0, 0, 0,NULL, NULL, 0,NULL } +#define PG_QUERY__CALL_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__call_stmt__descriptor) \ +, NULL, NULL, 0,NULL } -struct PgQuery__RangeTableSample +struct PgQuery__CallContext { ProtobufCMessage base; - PgQuery__Node *relation; - size_t n_method; - PgQuery__Node **method; - size_t n_args; - PgQuery__Node **args; - PgQuery__Node *repeatable; - int32_t location; + protobuf_c_boolean atomic; }; -#define PG_QUERY__RANGE_TABLE_SAMPLE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_table_sample__descriptor) \ - , NULL, 0,NULL, 0,NULL, NULL, 0 } +#define PG_QUERY__CALL_CONTEXT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__call_context__descriptor) \ +, 0 } -struct PgQuery__RangeTableFunc +struct PgQuery__RenameStmt { ProtobufCMessage base; - protobuf_c_boolean lateral; - PgQuery__Node *docexpr; - PgQuery__Node *rowexpr; - size_t n_namespaces; - PgQuery__Node **namespaces; - size_t n_columns; - PgQuery__Node **columns; - PgQuery__Alias *alias; - int32_t location; + PgQuery__ObjectType rename_type; + PgQuery__ObjectType relation_type; + PgQuery__RangeVar *relation; + PgQuery__Node *object; + char *subname; + char *newname; + PgQuery__DropBehavior behavior; + protobuf_c_boolean missing_ok; }; -#define PG_QUERY__RANGE_TABLE_FUNC__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_table_func__descriptor) \ - , 0, NULL, NULL, 0,NULL, 0,NULL, NULL, 0 } +#define PG_QUERY__RENAME_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__rename_stmt__descriptor) \ +, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED, 0 } -struct PgQuery__RangeTableFuncCol +struct PgQuery__AlterObjectDependsStmt { ProtobufCMessage base; - char *colname; - PgQuery__TypeName *type_name; - protobuf_c_boolean for_ordinality; - protobuf_c_boolean is_not_null; - PgQuery__Node *colexpr; - PgQuery__Node *coldefexpr; - int32_t location; + PgQuery__ObjectType object_type; + PgQuery__RangeVar *relation; + PgQuery__Node *object; + PgQuery__String *extname; + protobuf_c_boolean remove; }; -#define PG_QUERY__RANGE_TABLE_FUNC_COL__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_table_func_col__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, 0, 0, NULL, NULL, 0 } +#define PG_QUERY__ALTER_OBJECT_DEPENDS_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_object_depends_stmt__descriptor) \ +, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, NULL, NULL, 0 } -struct PgQuery__TypeName +struct PgQuery__AlterObjectSchemaStmt { ProtobufCMessage base; - size_t n_names; - PgQuery__Node **names; - uint32_t type_oid; - protobuf_c_boolean setof; - protobuf_c_boolean pct_type; - size_t n_typmods; - PgQuery__Node **typmods; - int32_t typemod; - size_t n_array_bounds; - PgQuery__Node **array_bounds; - int32_t location; + PgQuery__ObjectType object_type; + PgQuery__RangeVar *relation; + PgQuery__Node *object; + char *newschema; + protobuf_c_boolean missing_ok; }; -#define PG_QUERY__TYPE_NAME__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__type_name__descriptor) \ - , 0,NULL, 0, 0, 0, 0,NULL, 0, 0,NULL, 0 } +#define PG_QUERY__ALTER_OBJECT_SCHEMA_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_object_schema_stmt__descriptor) \ +, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, NULL, (char *)protobuf_c_empty_string, 0 } -struct PgQuery__ColumnDef +struct PgQuery__AlterOwnerStmt { ProtobufCMessage base; - char *colname; - PgQuery__TypeName *type_name; - char *compression; - int32_t inhcount; - protobuf_c_boolean is_local; - protobuf_c_boolean is_not_null; - protobuf_c_boolean is_from_type; - char *storage; - PgQuery__Node *raw_default; - PgQuery__Node *cooked_default; - char *identity; - PgQuery__RangeVar *identity_sequence; - char *generated; - PgQuery__CollateClause *coll_clause; - uint32_t coll_oid; - size_t n_constraints; - PgQuery__Node **constraints; - size_t n_fdwoptions; - PgQuery__Node **fdwoptions; - int32_t location; + PgQuery__ObjectType object_type; + PgQuery__RangeVar *relation; + PgQuery__Node *object; + PgQuery__RoleSpec *newowner; }; -#define PG_QUERY__COLUMN_DEF__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__column_def__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, 0, 0, 0, 0, (char *)protobuf_c_empty_string, NULL, NULL, (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, NULL, 0, 0,NULL, 0,NULL, 0 } +#define PG_QUERY__ALTER_OWNER_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_owner_stmt__descriptor) \ +, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, NULL, NULL, NULL } -struct PgQuery__IndexElem +struct PgQuery__AlterOperatorStmt { ProtobufCMessage base; - char *name; - PgQuery__Node *expr; - char *indexcolname; - size_t n_collation; - PgQuery__Node **collation; - size_t n_opclass; - PgQuery__Node **opclass; - size_t n_opclassopts; - PgQuery__Node **opclassopts; - PgQuery__SortByDir ordering; - PgQuery__SortByNulls nulls_ordering; + PgQuery__ObjectWithArgs *opername; + size_t n_options; + PgQuery__Node **options; }; -#define PG_QUERY__INDEX_ELEM__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__index_elem__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0,NULL, PG_QUERY__SORT_BY_DIR__SORT_BY_DIR_UNDEFINED, PG_QUERY__SORT_BY_NULLS__SORT_BY_NULLS_UNDEFINED } +#define PG_QUERY__ALTER_OPERATOR_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_operator_stmt__descriptor) \ +, NULL, 0,NULL } -struct PgQuery__StatsElem +struct PgQuery__AlterTypeStmt { ProtobufCMessage base; - char *name; - PgQuery__Node *expr; + size_t n_type_name; + PgQuery__Node **type_name; + size_t n_options; + PgQuery__Node **options; }; -#define PG_QUERY__STATS_ELEM__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__stats_elem__descriptor) \ - , (char *)protobuf_c_empty_string, NULL } +#define PG_QUERY__ALTER_TYPE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_type_stmt__descriptor) \ +, 0,NULL, 0,NULL } -struct PgQuery__Constraint +struct PgQuery__RuleStmt { ProtobufCMessage base; - PgQuery__ConstrType contype; - char *conname; - protobuf_c_boolean deferrable; - protobuf_c_boolean initdeferred; - int32_t location; - protobuf_c_boolean is_no_inherit; - PgQuery__Node *raw_expr; - char *cooked_expr; - char *generated_when; - protobuf_c_boolean nulls_not_distinct; - size_t n_keys; - PgQuery__Node **keys; - size_t n_including; - PgQuery__Node **including; - size_t n_exclusions; - PgQuery__Node **exclusions; - size_t n_options; - PgQuery__Node **options; - char *indexname; - char *indexspace; - protobuf_c_boolean reset_default_tblspc; - char *access_method; + PgQuery__RangeVar *relation; + char *rulename; PgQuery__Node *where_clause; - PgQuery__RangeVar *pktable; - size_t n_fk_attrs; - PgQuery__Node **fk_attrs; - size_t n_pk_attrs; - PgQuery__Node **pk_attrs; - char *fk_matchtype; - char *fk_upd_action; - char *fk_del_action; - size_t n_fk_del_set_cols; - PgQuery__Node **fk_del_set_cols; - size_t n_old_conpfeqop; - PgQuery__Node **old_conpfeqop; - uint32_t old_pktable_oid; - protobuf_c_boolean skip_validation; - protobuf_c_boolean initially_valid; + PgQuery__CmdType event; + protobuf_c_boolean instead; + size_t n_actions; + PgQuery__Node **actions; + protobuf_c_boolean replace; }; -#define PG_QUERY__CONSTRAINT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__constraint__descriptor) \ - , PG_QUERY__CONSTR_TYPE__CONSTR_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, 0, 0, 0, 0, NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, 0,NULL, 0,NULL, 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, (char *)protobuf_c_empty_string, NULL, NULL, 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0, 0, 0 } +#define PG_QUERY__RULE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__rule_stmt__descriptor) \ +, NULL, (char *)protobuf_c_empty_string, NULL, PG_QUERY__CMD_TYPE__CMD_TYPE_UNDEFINED, 0, 0,NULL, 0 } -struct PgQuery__DefElem +struct PgQuery__NotifyStmt { ProtobufCMessage base; - char *defnamespace; - char *defname; - PgQuery__Node *arg; - PgQuery__DefElemAction defaction; - int32_t location; + char *conditionname; + char *payload; }; -#define PG_QUERY__DEF_ELEM__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__def_elem__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, NULL, PG_QUERY__DEF_ELEM_ACTION__DEF_ELEM_ACTION_UNDEFINED, 0 } +#define PG_QUERY__NOTIFY_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__notify_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string } -struct PgQuery__RangeTblEntry +struct PgQuery__ListenStmt { ProtobufCMessage base; - PgQuery__RTEKind rtekind; - uint32_t relid; - char *relkind; - int32_t rellockmode; - PgQuery__TableSampleClause *tablesample; - PgQuery__Query *subquery; - protobuf_c_boolean security_barrier; - PgQuery__JoinType jointype; - int32_t joinmergedcols; - size_t n_joinaliasvars; - PgQuery__Node **joinaliasvars; - size_t n_joinleftcols; - PgQuery__Node **joinleftcols; - size_t n_joinrightcols; - PgQuery__Node **joinrightcols; - PgQuery__Alias *join_using_alias; - size_t n_functions; - PgQuery__Node **functions; - protobuf_c_boolean funcordinality; - PgQuery__TableFunc *tablefunc; - size_t n_values_lists; - PgQuery__Node **values_lists; - char *ctename; - uint32_t ctelevelsup; - protobuf_c_boolean self_reference; - size_t n_coltypes; - PgQuery__Node **coltypes; - size_t n_coltypmods; - PgQuery__Node **coltypmods; - size_t n_colcollations; - PgQuery__Node **colcollations; - char *enrname; - double enrtuples; - PgQuery__Alias *alias; - PgQuery__Alias *eref; - protobuf_c_boolean lateral; - protobuf_c_boolean inh; - protobuf_c_boolean in_from_cl; - uint32_t required_perms; - uint32_t check_as_user; - size_t n_selected_cols; - uint64_t *selected_cols; - size_t n_inserted_cols; - uint64_t *inserted_cols; - size_t n_updated_cols; - uint64_t *updated_cols; - size_t n_extra_updated_cols; - uint64_t *extra_updated_cols; - size_t n_security_quals; - PgQuery__Node **security_quals; + char *conditionname; }; -#define PG_QUERY__RANGE_TBL_ENTRY__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_tbl_entry__descriptor) \ - , PG_QUERY__RTEKIND__RTEKIND_UNDEFINED, 0, (char *)protobuf_c_empty_string, 0, NULL, NULL, 0, PG_QUERY__JOIN_TYPE__JOIN_TYPE_UNDEFINED, 0, 0,NULL, 0,NULL, 0,NULL, NULL, 0,NULL, 0, NULL, 0,NULL, (char *)protobuf_c_empty_string, 0, 0, 0,NULL, 0,NULL, 0,NULL, (char *)protobuf_c_empty_string, 0, NULL, NULL, 0, 0, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL } +#define PG_QUERY__LISTEN_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__listen_stmt__descriptor) \ +, (char *)protobuf_c_empty_string } -struct PgQuery__RangeTblFunction +struct PgQuery__UnlistenStmt { ProtobufCMessage base; - PgQuery__Node *funcexpr; - int32_t funccolcount; - size_t n_funccolnames; - PgQuery__Node **funccolnames; - size_t n_funccoltypes; - PgQuery__Node **funccoltypes; - size_t n_funccoltypmods; - PgQuery__Node **funccoltypmods; - size_t n_funccolcollations; - PgQuery__Node **funccolcollations; - size_t n_funcparams; - uint64_t *funcparams; + char *conditionname; }; -#define PG_QUERY__RANGE_TBL_FUNCTION__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__range_tbl_function__descriptor) \ - , NULL, 0, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL } +#define PG_QUERY__UNLISTEN_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__unlisten_stmt__descriptor) \ +, (char *)protobuf_c_empty_string } -struct PgQuery__TableSampleClause +struct PgQuery__TransactionStmt { ProtobufCMessage base; - uint32_t tsmhandler; - size_t n_args; - PgQuery__Node **args; - PgQuery__Node *repeatable; + PgQuery__TransactionStmtKind kind; + size_t n_options; + PgQuery__Node **options; + char *savepoint_name; + char *gid; + protobuf_c_boolean chain; }; -#define PG_QUERY__TABLE_SAMPLE_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__table_sample_clause__descriptor) \ - , 0, 0,NULL, NULL } +#define PG_QUERY__TRANSACTION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__transaction_stmt__descriptor) \ +, PG_QUERY__TRANSACTION_STMT_KIND__TRANSACTION_STMT_KIND_UNDEFINED, 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0 } -struct PgQuery__WithCheckOption +struct PgQuery__CompositeTypeStmt { ProtobufCMessage base; - PgQuery__WCOKind kind; - char *relname; - char *polname; - PgQuery__Node *qual; - protobuf_c_boolean cascaded; + PgQuery__RangeVar *typevar; + size_t n_coldeflist; + PgQuery__Node **coldeflist; }; -#define PG_QUERY__WITH_CHECK_OPTION__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__with_check_option__descriptor) \ - , PG_QUERY__WCOKIND__WCOKIND_UNDEFINED, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, NULL, 0 } +#define PG_QUERY__COMPOSITE_TYPE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__composite_type_stmt__descriptor) \ +, NULL, 0,NULL } -struct PgQuery__SortGroupClause +struct PgQuery__CreateEnumStmt { ProtobufCMessage base; - uint32_t tle_sort_group_ref; - uint32_t eqop; - uint32_t sortop; - protobuf_c_boolean nulls_first; - protobuf_c_boolean hashable; + size_t n_type_name; + PgQuery__Node **type_name; + size_t n_vals; + PgQuery__Node **vals; }; -#define PG_QUERY__SORT_GROUP_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__sort_group_clause__descriptor) \ - , 0, 0, 0, 0, 0 } +#define PG_QUERY__CREATE_ENUM_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_enum_stmt__descriptor) \ +, 0,NULL, 0,NULL } -struct PgQuery__GroupingSet +struct PgQuery__CreateRangeStmt { ProtobufCMessage base; - PgQuery__GroupingSetKind kind; - size_t n_content; - PgQuery__Node **content; - int32_t location; + size_t n_type_name; + PgQuery__Node **type_name; + size_t n_params; + PgQuery__Node **params; }; -#define PG_QUERY__GROUPING_SET__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__grouping_set__descriptor) \ - , PG_QUERY__GROUPING_SET_KIND__GROUPING_SET_KIND_UNDEFINED, 0,NULL, 0 } +#define PG_QUERY__CREATE_RANGE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_range_stmt__descriptor) \ +, 0,NULL, 0,NULL } -struct PgQuery__WindowClause +struct PgQuery__AlterEnumStmt { ProtobufCMessage base; - char *name; - char *refname; - size_t n_partition_clause; - PgQuery__Node **partition_clause; - size_t n_order_clause; - PgQuery__Node **order_clause; - int32_t frame_options; - PgQuery__Node *start_offset; - PgQuery__Node *end_offset; - size_t n_run_condition; - PgQuery__Node **run_condition; - uint32_t start_in_range_func; - uint32_t end_in_range_func; - uint32_t in_range_coll; - protobuf_c_boolean in_range_asc; - protobuf_c_boolean in_range_nulls_first; - uint32_t winref; - protobuf_c_boolean copied_order; + size_t n_type_name; + PgQuery__Node **type_name; + char *old_val; + char *new_val; + char *new_val_neighbor; + protobuf_c_boolean new_val_is_after; + protobuf_c_boolean skip_if_new_val_exists; }; -#define PG_QUERY__WINDOW_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__window_clause__descriptor) \ - , (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0, NULL, NULL, 0,NULL, 0, 0, 0, 0, 0, 0, 0 } +#define PG_QUERY__ALTER_ENUM_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_enum_stmt__descriptor) \ +, 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0, 0 } -struct PgQuery__ObjectWithArgs +struct PgQuery__ViewStmt { ProtobufCMessage base; - size_t n_objname; - PgQuery__Node **objname; - size_t n_objargs; - PgQuery__Node **objargs; - size_t n_objfuncargs; - PgQuery__Node **objfuncargs; - protobuf_c_boolean args_unspecified; + PgQuery__RangeVar *view; + size_t n_aliases; + PgQuery__Node **aliases; + PgQuery__Node *query; + protobuf_c_boolean replace; + size_t n_options; + PgQuery__Node **options; + PgQuery__ViewCheckOption with_check_option; }; -#define PG_QUERY__OBJECT_WITH_ARGS__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__object_with_args__descriptor) \ - , 0,NULL, 0,NULL, 0,NULL, 0 } +#define PG_QUERY__VIEW_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__view_stmt__descriptor) \ +, NULL, 0,NULL, NULL, 0, 0,NULL, PG_QUERY__VIEW_CHECK_OPTION__VIEW_CHECK_OPTION_UNDEFINED } -struct PgQuery__AccessPriv +struct PgQuery__LoadStmt { ProtobufCMessage base; - char *priv_name; - size_t n_cols; - PgQuery__Node **cols; + char *filename; }; -#define PG_QUERY__ACCESS_PRIV__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__access_priv__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL } +#define PG_QUERY__LOAD_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__load_stmt__descriptor) \ +, (char *)protobuf_c_empty_string } -struct PgQuery__CreateOpClassItem +struct PgQuery__CreatedbStmt { ProtobufCMessage base; - int32_t itemtype; - PgQuery__ObjectWithArgs *name; - int32_t number; - size_t n_order_family; - PgQuery__Node **order_family; - size_t n_class_args; - PgQuery__Node **class_args; - PgQuery__TypeName *storedtype; + char *dbname; + size_t n_options; + PgQuery__Node **options; }; -#define PG_QUERY__CREATE_OP_CLASS_ITEM__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_op_class_item__descriptor) \ - , 0, NULL, 0, 0,NULL, 0,NULL, NULL } +#define PG_QUERY__CREATEDB_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__createdb_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL } -struct PgQuery__TableLikeClause +struct PgQuery__AlterDatabaseStmt { ProtobufCMessage base; - PgQuery__RangeVar *relation; - uint32_t options; - uint32_t relation_oid; + char *dbname; + size_t n_options; + PgQuery__Node **options; }; -#define PG_QUERY__TABLE_LIKE_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__table_like_clause__descriptor) \ - , NULL, 0, 0 } +#define PG_QUERY__ALTER_DATABASE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_database_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL } -struct PgQuery__FunctionParameter +struct PgQuery__AlterDatabaseRefreshCollStmt { ProtobufCMessage base; - char *name; - PgQuery__TypeName *arg_type; - PgQuery__FunctionParameterMode mode; - PgQuery__Node *defexpr; + char *dbname; }; -#define PG_QUERY__FUNCTION_PARAMETER__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__function_parameter__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, PG_QUERY__FUNCTION_PARAMETER_MODE__FUNCTION_PARAMETER_MODE_UNDEFINED, NULL } - +#define PG_QUERY__ALTER_DATABASE_REFRESH_COLL_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_database_refresh_coll_stmt__descriptor) \ +, (char *)protobuf_c_empty_string } -struct PgQuery__LockingClause + +struct PgQuery__AlterDatabaseSetStmt { ProtobufCMessage base; - size_t n_locked_rels; - PgQuery__Node **locked_rels; - PgQuery__LockClauseStrength strength; - PgQuery__LockWaitPolicy wait_policy; + char *dbname; + PgQuery__VariableSetStmt *setstmt; }; -#define PG_QUERY__LOCKING_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__locking_clause__descriptor) \ - , 0,NULL, PG_QUERY__LOCK_CLAUSE_STRENGTH__LOCK_CLAUSE_STRENGTH_UNDEFINED, PG_QUERY__LOCK_WAIT_POLICY__LOCK_WAIT_POLICY_UNDEFINED } +#define PG_QUERY__ALTER_DATABASE_SET_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_database_set_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, NULL } -struct PgQuery__RowMarkClause +struct PgQuery__DropdbStmt { ProtobufCMessage base; - uint32_t rti; - PgQuery__LockClauseStrength strength; - PgQuery__LockWaitPolicy wait_policy; - protobuf_c_boolean pushed_down; + char *dbname; + protobuf_c_boolean missing_ok; + size_t n_options; + PgQuery__Node **options; }; -#define PG_QUERY__ROW_MARK_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__row_mark_clause__descriptor) \ - , 0, PG_QUERY__LOCK_CLAUSE_STRENGTH__LOCK_CLAUSE_STRENGTH_UNDEFINED, PG_QUERY__LOCK_WAIT_POLICY__LOCK_WAIT_POLICY_UNDEFINED, 0 } +#define PG_QUERY__DROPDB_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__dropdb_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0, 0,NULL } -struct PgQuery__XmlSerialize +struct PgQuery__AlterSystemStmt { ProtobufCMessage base; - PgQuery__XmlOptionType xmloption; - PgQuery__Node *expr; - PgQuery__TypeName *type_name; - int32_t location; + PgQuery__VariableSetStmt *setstmt; }; -#define PG_QUERY__XML_SERIALIZE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__xml_serialize__descriptor) \ - , PG_QUERY__XML_OPTION_TYPE__XML_OPTION_TYPE_UNDEFINED, NULL, NULL, 0 } +#define PG_QUERY__ALTER_SYSTEM_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_system_stmt__descriptor) \ +, NULL } -struct PgQuery__WithClause +struct PgQuery__ClusterStmt { ProtobufCMessage base; - size_t n_ctes; - PgQuery__Node **ctes; - protobuf_c_boolean recursive; - int32_t location; + PgQuery__RangeVar *relation; + char *indexname; + size_t n_params; + PgQuery__Node **params; }; -#define PG_QUERY__WITH_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__with_clause__descriptor) \ - , 0,NULL, 0, 0 } +#define PG_QUERY__CLUSTER_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__cluster_stmt__descriptor) \ +, NULL, (char *)protobuf_c_empty_string, 0,NULL } -struct PgQuery__InferClause +struct PgQuery__VacuumStmt { ProtobufCMessage base; - size_t n_index_elems; - PgQuery__Node **index_elems; - PgQuery__Node *where_clause; - char *conname; - int32_t location; + size_t n_options; + PgQuery__Node **options; + size_t n_rels; + PgQuery__Node **rels; + protobuf_c_boolean is_vacuumcmd; }; -#define PG_QUERY__INFER_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__infer_clause__descriptor) \ - , 0,NULL, NULL, (char *)protobuf_c_empty_string, 0 } +#define PG_QUERY__VACUUM_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__vacuum_stmt__descriptor) \ +, 0,NULL, 0,NULL, 0 } -struct PgQuery__OnConflictClause +struct PgQuery__VacuumRelation { ProtobufCMessage base; - PgQuery__OnConflictAction action; - PgQuery__InferClause *infer; - size_t n_target_list; - PgQuery__Node **target_list; - PgQuery__Node *where_clause; - int32_t location; + PgQuery__RangeVar *relation; + uint32_t oid; + size_t n_va_cols; + PgQuery__Node **va_cols; }; -#define PG_QUERY__ON_CONFLICT_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__on_conflict_clause__descriptor) \ - , PG_QUERY__ON_CONFLICT_ACTION__ON_CONFLICT_ACTION_UNDEFINED, NULL, 0,NULL, NULL, 0 } +#define PG_QUERY__VACUUM_RELATION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__vacuum_relation__descriptor) \ +, NULL, 0, 0,NULL } -struct PgQuery__CTESearchClause +struct PgQuery__ExplainStmt { ProtobufCMessage base; - size_t n_search_col_list; - PgQuery__Node **search_col_list; - protobuf_c_boolean search_breadth_first; - char *search_seq_column; - int32_t location; + PgQuery__Node *query; + size_t n_options; + PgQuery__Node **options; }; -#define PG_QUERY__CTESEARCH_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__ctesearch_clause__descriptor) \ - , 0,NULL, 0, (char *)protobuf_c_empty_string, 0 } +#define PG_QUERY__EXPLAIN_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__explain_stmt__descriptor) \ +, NULL, 0,NULL } -struct PgQuery__CTECycleClause +struct PgQuery__CreateTableAsStmt { ProtobufCMessage base; - size_t n_cycle_col_list; - PgQuery__Node **cycle_col_list; - char *cycle_mark_column; - PgQuery__Node *cycle_mark_value; - PgQuery__Node *cycle_mark_default; - char *cycle_path_column; - int32_t location; - uint32_t cycle_mark_type; - int32_t cycle_mark_typmod; - uint32_t cycle_mark_collation; - uint32_t cycle_mark_neop; + PgQuery__Node *query; + PgQuery__IntoClause *into; + PgQuery__ObjectType objtype; + protobuf_c_boolean is_select_into; + protobuf_c_boolean if_not_exists; }; -#define PG_QUERY__CTECYCLE_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__ctecycle_clause__descriptor) \ - , 0,NULL, (char *)protobuf_c_empty_string, NULL, NULL, (char *)protobuf_c_empty_string, 0, 0, 0, 0, 0 } +#define PG_QUERY__CREATE_TABLE_AS_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_table_as_stmt__descriptor) \ +, NULL, NULL, PG_QUERY__OBJECT_TYPE__OBJECT_TYPE_UNDEFINED, 0, 0 } -struct PgQuery__CommonTableExpr +struct PgQuery__RefreshMatViewStmt { ProtobufCMessage base; - char *ctename; - size_t n_aliascolnames; - PgQuery__Node **aliascolnames; - PgQuery__CTEMaterialize ctematerialized; - PgQuery__Node *ctequery; - PgQuery__CTESearchClause *search_clause; - PgQuery__CTECycleClause *cycle_clause; - int32_t location; - protobuf_c_boolean cterecursive; - int32_t cterefcount; - size_t n_ctecolnames; - PgQuery__Node **ctecolnames; - size_t n_ctecoltypes; - PgQuery__Node **ctecoltypes; - size_t n_ctecoltypmods; - PgQuery__Node **ctecoltypmods; - size_t n_ctecolcollations; - PgQuery__Node **ctecolcollations; + protobuf_c_boolean concurrent; + protobuf_c_boolean skip_data; + PgQuery__RangeVar *relation; }; -#define PG_QUERY__COMMON_TABLE_EXPR__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__common_table_expr__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, PG_QUERY__CTEMATERIALIZE__CTEMATERIALIZE_UNDEFINED, NULL, NULL, NULL, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, 0,NULL } +#define PG_QUERY__REFRESH_MAT_VIEW_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__refresh_mat_view_stmt__descriptor) \ +, 0, 0, NULL } -struct PgQuery__MergeWhenClause +struct PgQuery__CheckPointStmt { ProtobufCMessage base; - protobuf_c_boolean matched; - PgQuery__CmdType command_type; - PgQuery__OverridingKind override; - PgQuery__Node *condition; - size_t n_target_list; - PgQuery__Node **target_list; - size_t n_values; - PgQuery__Node **values; }; -#define PG_QUERY__MERGE_WHEN_CLAUSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__merge_when_clause__descriptor) \ - , 0, PG_QUERY__CMD_TYPE__CMD_TYPE_UNDEFINED, PG_QUERY__OVERRIDING_KIND__OVERRIDING_KIND_UNDEFINED, NULL, 0,NULL, 0,NULL } +#define PG_QUERY__CHECK_POINT_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__check_point_stmt__descriptor) \ + } -struct PgQuery__RoleSpec +struct PgQuery__DiscardStmt { ProtobufCMessage base; - PgQuery__RoleSpecType roletype; - char *rolename; - int32_t location; + PgQuery__DiscardMode target; }; -#define PG_QUERY__ROLE_SPEC__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__role_spec__descriptor) \ - , PG_QUERY__ROLE_SPEC_TYPE__ROLE_SPEC_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, 0 } +#define PG_QUERY__DISCARD_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__discard_stmt__descriptor) \ +, PG_QUERY__DISCARD_MODE__DISCARD_MODE_UNDEFINED } -struct PgQuery__TriggerTransition +struct PgQuery__LockStmt { ProtobufCMessage base; - char *name; - protobuf_c_boolean is_new; - protobuf_c_boolean is_table; + size_t n_relations; + PgQuery__Node **relations; + int32_t mode; + protobuf_c_boolean nowait; }; -#define PG_QUERY__TRIGGER_TRANSITION__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__trigger_transition__descriptor) \ - , (char *)protobuf_c_empty_string, 0, 0 } +#define PG_QUERY__LOCK_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__lock_stmt__descriptor) \ +, 0,NULL, 0, 0 } -struct PgQuery__PartitionElem +struct PgQuery__ConstraintsSetStmt { ProtobufCMessage base; - char *name; - PgQuery__Node *expr; - size_t n_collation; - PgQuery__Node **collation; - size_t n_opclass; - PgQuery__Node **opclass; - int32_t location; + size_t n_constraints; + PgQuery__Node **constraints; + protobuf_c_boolean deferred; }; -#define PG_QUERY__PARTITION_ELEM__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_elem__descriptor) \ - , (char *)protobuf_c_empty_string, NULL, 0,NULL, 0,NULL, 0 } +#define PG_QUERY__CONSTRAINTS_SET_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__constraints_set_stmt__descriptor) \ +, 0,NULL, 0 } -struct PgQuery__PartitionSpec +struct PgQuery__ReindexStmt { ProtobufCMessage base; - char *strategy; - size_t n_part_params; - PgQuery__Node **part_params; - int32_t location; + PgQuery__ReindexObjectType kind; + PgQuery__RangeVar *relation; + char *name; + size_t n_params; + PgQuery__Node **params; }; -#define PG_QUERY__PARTITION_SPEC__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_spec__descriptor) \ - , (char *)protobuf_c_empty_string, 0,NULL, 0 } +#define PG_QUERY__REINDEX_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__reindex_stmt__descriptor) \ +, PG_QUERY__REINDEX_OBJECT_TYPE__REINDEX_OBJECT_TYPE_UNDEFINED, NULL, (char *)protobuf_c_empty_string, 0,NULL } -struct PgQuery__PartitionBoundSpec +struct PgQuery__CreateConversionStmt { ProtobufCMessage base; - char *strategy; - protobuf_c_boolean is_default; - int32_t modulus; - int32_t remainder; - size_t n_listdatums; - PgQuery__Node **listdatums; - size_t n_lowerdatums; - PgQuery__Node **lowerdatums; - size_t n_upperdatums; - PgQuery__Node **upperdatums; - int32_t location; + size_t n_conversion_name; + PgQuery__Node **conversion_name; + char *for_encoding_name; + char *to_encoding_name; + size_t n_func_name; + PgQuery__Node **func_name; + protobuf_c_boolean def; }; -#define PG_QUERY__PARTITION_BOUND_SPEC__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_bound_spec__descriptor) \ - , (char *)protobuf_c_empty_string, 0, 0, 0, 0,NULL, 0,NULL, 0,NULL, 0 } +#define PG_QUERY__CREATE_CONVERSION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_conversion_stmt__descriptor) \ +, 0,NULL, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0 } -struct PgQuery__PartitionRangeDatum +struct PgQuery__CreateCastStmt { ProtobufCMessage base; - PgQuery__PartitionRangeDatumKind kind; - PgQuery__Node *value; - int32_t location; + PgQuery__TypeName *sourcetype; + PgQuery__TypeName *targettype; + PgQuery__ObjectWithArgs *func; + PgQuery__CoercionContext context; + protobuf_c_boolean inout; }; -#define PG_QUERY__PARTITION_RANGE_DATUM__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_range_datum__descriptor) \ - , PG_QUERY__PARTITION_RANGE_DATUM_KIND__PARTITION_RANGE_DATUM_KIND_UNDEFINED, NULL, 0 } +#define PG_QUERY__CREATE_CAST_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_cast_stmt__descriptor) \ +, NULL, NULL, NULL, PG_QUERY__COERCION_CONTEXT__COERCION_CONTEXT_UNDEFINED, 0 } -struct PgQuery__PartitionCmd +struct PgQuery__CreateTransformStmt { ProtobufCMessage base; - PgQuery__RangeVar *name; - PgQuery__PartitionBoundSpec *bound; - protobuf_c_boolean concurrent; + protobuf_c_boolean replace; + PgQuery__TypeName *type_name; + char *lang; + PgQuery__ObjectWithArgs *fromsql; + PgQuery__ObjectWithArgs *tosql; }; -#define PG_QUERY__PARTITION_CMD__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__partition_cmd__descriptor) \ - , NULL, NULL, 0 } +#define PG_QUERY__CREATE_TRANSFORM_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_transform_stmt__descriptor) \ +, 0, NULL, (char *)protobuf_c_empty_string, NULL, NULL } -struct PgQuery__VacuumRelation +struct PgQuery__PrepareStmt { ProtobufCMessage base; - PgQuery__RangeVar *relation; - uint32_t oid; - size_t n_va_cols; - PgQuery__Node **va_cols; + char *name; + size_t n_argtypes; + PgQuery__Node **argtypes; + PgQuery__Node *query; }; -#define PG_QUERY__VACUUM_RELATION__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__vacuum_relation__descriptor) \ - , NULL, 0, 0,NULL } +#define PG_QUERY__PREPARE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__prepare_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL, NULL } -struct PgQuery__PublicationObjSpec +struct PgQuery__ExecuteStmt { ProtobufCMessage base; - PgQuery__PublicationObjSpecType pubobjtype; char *name; - PgQuery__PublicationTable *pubtable; - int32_t location; + size_t n_params; + PgQuery__Node **params; }; -#define PG_QUERY__PUBLICATION_OBJ_SPEC__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__publication_obj_spec__descriptor) \ - , PG_QUERY__PUBLICATION_OBJ_SPEC_TYPE__PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, NULL, 0 } +#define PG_QUERY__EXECUTE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__execute_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL } + + +struct PgQuery__DeallocateStmt +{ + ProtobufCMessage base; + char *name; +}; +#define PG_QUERY__DEALLOCATE_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__deallocate_stmt__descriptor) \ +, (char *)protobuf_c_empty_string } + + +struct PgQuery__DropOwnedStmt +{ + ProtobufCMessage base; + size_t n_roles; + PgQuery__Node **roles; + PgQuery__DropBehavior behavior; +}; +#define PG_QUERY__DROP_OWNED_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_owned_stmt__descriptor) \ +, 0,NULL, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } + + +struct PgQuery__ReassignOwnedStmt +{ + ProtobufCMessage base; + size_t n_roles; + PgQuery__Node **roles; + PgQuery__RoleSpec *newrole; +}; +#define PG_QUERY__REASSIGN_OWNED_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__reassign_owned_stmt__descriptor) \ +, 0,NULL, NULL } + + +struct PgQuery__AlterTSDictionaryStmt +{ + ProtobufCMessage base; + size_t n_dictname; + PgQuery__Node **dictname; + size_t n_options; + PgQuery__Node **options; +}; +#define PG_QUERY__ALTER_TSDICTIONARY_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_tsdictionary_stmt__descriptor) \ +, 0,NULL, 0,NULL } + + +struct PgQuery__AlterTSConfigurationStmt +{ + ProtobufCMessage base; + PgQuery__AlterTSConfigType kind; + size_t n_cfgname; + PgQuery__Node **cfgname; + size_t n_tokentype; + PgQuery__Node **tokentype; + size_t n_dicts; + PgQuery__Node **dicts; + protobuf_c_boolean override; + protobuf_c_boolean replace; + protobuf_c_boolean missing_ok; +}; +#define PG_QUERY__ALTER_TSCONFIGURATION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_tsconfiguration_stmt__descriptor) \ +, PG_QUERY__ALTER_TSCONFIG_TYPE__ALTER_TSCONFIG_TYPE_UNDEFINED, 0,NULL, 0,NULL, 0,NULL, 0, 0, 0 } struct PgQuery__PublicationTable @@ -5678,30 +5888,94 @@ struct PgQuery__PublicationTable }; #define PG_QUERY__PUBLICATION_TABLE__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__publication_table__descriptor) \ - , NULL, NULL, 0,NULL } +, NULL, NULL, 0,NULL } -struct PgQuery__InlineCodeBlock +struct PgQuery__PublicationObjSpec { ProtobufCMessage base; - char *source_text; - uint32_t lang_oid; - protobuf_c_boolean lang_is_trusted; - protobuf_c_boolean atomic; + PgQuery__PublicationObjSpecType pubobjtype; + char *name; + PgQuery__PublicationTable *pubtable; + int32_t location; }; -#define PG_QUERY__INLINE_CODE_BLOCK__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__inline_code_block__descriptor) \ - , (char *)protobuf_c_empty_string, 0, 0, 0 } +#define PG_QUERY__PUBLICATION_OBJ_SPEC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__publication_obj_spec__descriptor) \ +, PG_QUERY__PUBLICATION_OBJ_SPEC_TYPE__PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, NULL, 0 } -struct PgQuery__CallContext +struct PgQuery__CreatePublicationStmt { ProtobufCMessage base; - protobuf_c_boolean atomic; + char *pubname; + size_t n_options; + PgQuery__Node **options; + size_t n_pubobjects; + PgQuery__Node **pubobjects; + protobuf_c_boolean for_all_tables; }; -#define PG_QUERY__CALL_CONTEXT__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&pg_query__call_context__descriptor) \ - , 0 } +#define PG_QUERY__CREATE_PUBLICATION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_publication_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0 } + + +struct PgQuery__AlterPublicationStmt +{ + ProtobufCMessage base; + char *pubname; + size_t n_options; + PgQuery__Node **options; + size_t n_pubobjects; + PgQuery__Node **pubobjects; + protobuf_c_boolean for_all_tables; + PgQuery__AlterPublicationAction action; +}; +#define PG_QUERY__ALTER_PUBLICATION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_publication_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL, 0, PG_QUERY__ALTER_PUBLICATION_ACTION__ALTER_PUBLICATION_ACTION_UNDEFINED } + + +struct PgQuery__CreateSubscriptionStmt +{ + ProtobufCMessage base; + char *subname; + char *conninfo; + size_t n_publication; + PgQuery__Node **publication; + size_t n_options; + PgQuery__Node **options; +}; +#define PG_QUERY__CREATE_SUBSCRIPTION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__create_subscription_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } + + +struct PgQuery__AlterSubscriptionStmt +{ + ProtobufCMessage base; + PgQuery__AlterSubscriptionType kind; + char *subname; + char *conninfo; + size_t n_publication; + PgQuery__Node **publication; + size_t n_options; + PgQuery__Node **options; +}; +#define PG_QUERY__ALTER_SUBSCRIPTION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__alter_subscription_stmt__descriptor) \ +, PG_QUERY__ALTER_SUBSCRIPTION_TYPE__ALTER_SUBSCRIPTION_TYPE_UNDEFINED, (char *)protobuf_c_empty_string, (char *)protobuf_c_empty_string, 0,NULL, 0,NULL } + + +struct PgQuery__DropSubscriptionStmt +{ + ProtobufCMessage base; + char *subname; + protobuf_c_boolean missing_ok; + PgQuery__DropBehavior behavior; +}; +#define PG_QUERY__DROP_SUBSCRIPTION_STMT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&pg_query__drop_subscription_stmt__descriptor) \ +, (char *)protobuf_c_empty_string, 0, PG_QUERY__DROP_BEHAVIOR__DROP_BEHAVIOR_UNDEFINED } struct PgQuery__ScanToken @@ -5714,7 +5988,7 @@ struct PgQuery__ScanToken }; #define PG_QUERY__SCAN_TOKEN__INIT \ { PROTOBUF_C_MESSAGE_INIT (&pg_query__scan_token__descriptor) \ - , 0, 0, PG_QUERY__TOKEN__NUL, PG_QUERY__KEYWORD_KIND__NO_KEYWORD } +, 0, 0, PG_QUERY__TOKEN__NUL, PG_QUERY__KEYWORD_KIND__NO_KEYWORD } /* PgQuery__ParseResult methods */ @@ -6002,6 +6276,25 @@ PgQuery__TableFunc * void pg_query__table_func__free_unpacked (PgQuery__TableFunc *message, ProtobufCAllocator *allocator); +/* PgQuery__IntoClause methods */ +void pg_query__into_clause__init + (PgQuery__IntoClause *message); +size_t pg_query__into_clause__get_packed_size + (const PgQuery__IntoClause *message); +size_t pg_query__into_clause__pack + (const PgQuery__IntoClause *message, + uint8_t *out); +size_t pg_query__into_clause__pack_to_buffer + (const PgQuery__IntoClause *message, + ProtobufCBuffer *buffer); +PgQuery__IntoClause * + pg_query__into_clause__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__into_clause__free_unpacked + (PgQuery__IntoClause *message, + ProtobufCAllocator *allocator); /* PgQuery__Var methods */ void pg_query__var__init (PgQuery__Var *message); @@ -6629,6 +6922,101 @@ PgQuery__XmlExpr * void pg_query__xml_expr__free_unpacked (PgQuery__XmlExpr *message, ProtobufCAllocator *allocator); +/* PgQuery__JsonFormat methods */ +void pg_query__json_format__init + (PgQuery__JsonFormat *message); +size_t pg_query__json_format__get_packed_size + (const PgQuery__JsonFormat *message); +size_t pg_query__json_format__pack + (const PgQuery__JsonFormat *message, + uint8_t *out); +size_t pg_query__json_format__pack_to_buffer + (const PgQuery__JsonFormat *message, + ProtobufCBuffer *buffer); +PgQuery__JsonFormat * + pg_query__json_format__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__json_format__free_unpacked + (PgQuery__JsonFormat *message, + ProtobufCAllocator *allocator); +/* PgQuery__JsonReturning methods */ +void pg_query__json_returning__init + (PgQuery__JsonReturning *message); +size_t pg_query__json_returning__get_packed_size + (const PgQuery__JsonReturning *message); +size_t pg_query__json_returning__pack + (const PgQuery__JsonReturning *message, + uint8_t *out); +size_t pg_query__json_returning__pack_to_buffer + (const PgQuery__JsonReturning *message, + ProtobufCBuffer *buffer); +PgQuery__JsonReturning * + pg_query__json_returning__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__json_returning__free_unpacked + (PgQuery__JsonReturning *message, + ProtobufCAllocator *allocator); +/* PgQuery__JsonValueExpr methods */ +void pg_query__json_value_expr__init + (PgQuery__JsonValueExpr *message); +size_t pg_query__json_value_expr__get_packed_size + (const PgQuery__JsonValueExpr *message); +size_t pg_query__json_value_expr__pack + (const PgQuery__JsonValueExpr *message, + uint8_t *out); +size_t pg_query__json_value_expr__pack_to_buffer + (const PgQuery__JsonValueExpr *message, + ProtobufCBuffer *buffer); +PgQuery__JsonValueExpr * + pg_query__json_value_expr__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__json_value_expr__free_unpacked + (PgQuery__JsonValueExpr *message, + ProtobufCAllocator *allocator); +/* PgQuery__JsonConstructorExpr methods */ +void pg_query__json_constructor_expr__init + (PgQuery__JsonConstructorExpr *message); +size_t pg_query__json_constructor_expr__get_packed_size + (const PgQuery__JsonConstructorExpr *message); +size_t pg_query__json_constructor_expr__pack + (const PgQuery__JsonConstructorExpr *message, + uint8_t *out); +size_t pg_query__json_constructor_expr__pack_to_buffer + (const PgQuery__JsonConstructorExpr *message, + ProtobufCBuffer *buffer); +PgQuery__JsonConstructorExpr * + pg_query__json_constructor_expr__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__json_constructor_expr__free_unpacked + (PgQuery__JsonConstructorExpr *message, + ProtobufCAllocator *allocator); +/* PgQuery__JsonIsPredicate methods */ +void pg_query__json_is_predicate__init + (PgQuery__JsonIsPredicate *message); +size_t pg_query__json_is_predicate__get_packed_size + (const PgQuery__JsonIsPredicate *message); +size_t pg_query__json_is_predicate__pack + (const PgQuery__JsonIsPredicate *message, + uint8_t *out); +size_t pg_query__json_is_predicate__pack_to_buffer + (const PgQuery__JsonIsPredicate *message, + ProtobufCBuffer *buffer); +PgQuery__JsonIsPredicate * + pg_query__json_is_predicate__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__json_is_predicate__free_unpacked + (PgQuery__JsonIsPredicate *message, + ProtobufCAllocator *allocator); /* PgQuery__NullTest methods */ void pg_query__null_test__init (PgQuery__NullTest *message); @@ -6876,1126 +7264,1297 @@ PgQuery__OnConflictExpr * void pg_query__on_conflict_expr__free_unpacked (PgQuery__OnConflictExpr *message, ProtobufCAllocator *allocator); -/* PgQuery__IntoClause methods */ -void pg_query__into_clause__init - (PgQuery__IntoClause *message); -size_t pg_query__into_clause__get_packed_size - (const PgQuery__IntoClause *message); -size_t pg_query__into_clause__pack - (const PgQuery__IntoClause *message, +/* PgQuery__Query methods */ +void pg_query__query__init + (PgQuery__Query *message); +size_t pg_query__query__get_packed_size + (const PgQuery__Query *message); +size_t pg_query__query__pack + (const PgQuery__Query *message, uint8_t *out); -size_t pg_query__into_clause__pack_to_buffer - (const PgQuery__IntoClause *message, +size_t pg_query__query__pack_to_buffer + (const PgQuery__Query *message, ProtobufCBuffer *buffer); -PgQuery__IntoClause * - pg_query__into_clause__unpack +PgQuery__Query * + pg_query__query__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__into_clause__free_unpacked - (PgQuery__IntoClause *message, +void pg_query__query__free_unpacked + (PgQuery__Query *message, ProtobufCAllocator *allocator); -/* PgQuery__MergeAction methods */ -void pg_query__merge_action__init - (PgQuery__MergeAction *message); -size_t pg_query__merge_action__get_packed_size - (const PgQuery__MergeAction *message); -size_t pg_query__merge_action__pack - (const PgQuery__MergeAction *message, +/* PgQuery__TypeName methods */ +void pg_query__type_name__init + (PgQuery__TypeName *message); +size_t pg_query__type_name__get_packed_size + (const PgQuery__TypeName *message); +size_t pg_query__type_name__pack + (const PgQuery__TypeName *message, uint8_t *out); -size_t pg_query__merge_action__pack_to_buffer - (const PgQuery__MergeAction *message, +size_t pg_query__type_name__pack_to_buffer + (const PgQuery__TypeName *message, ProtobufCBuffer *buffer); -PgQuery__MergeAction * - pg_query__merge_action__unpack +PgQuery__TypeName * + pg_query__type_name__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__merge_action__free_unpacked - (PgQuery__MergeAction *message, +void pg_query__type_name__free_unpacked + (PgQuery__TypeName *message, ProtobufCAllocator *allocator); -/* PgQuery__RawStmt methods */ -void pg_query__raw_stmt__init - (PgQuery__RawStmt *message); -size_t pg_query__raw_stmt__get_packed_size - (const PgQuery__RawStmt *message); -size_t pg_query__raw_stmt__pack - (const PgQuery__RawStmt *message, +/* PgQuery__ColumnRef methods */ +void pg_query__column_ref__init + (PgQuery__ColumnRef *message); +size_t pg_query__column_ref__get_packed_size + (const PgQuery__ColumnRef *message); +size_t pg_query__column_ref__pack + (const PgQuery__ColumnRef *message, uint8_t *out); -size_t pg_query__raw_stmt__pack_to_buffer - (const PgQuery__RawStmt *message, +size_t pg_query__column_ref__pack_to_buffer + (const PgQuery__ColumnRef *message, ProtobufCBuffer *buffer); -PgQuery__RawStmt * - pg_query__raw_stmt__unpack +PgQuery__ColumnRef * + pg_query__column_ref__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__raw_stmt__free_unpacked - (PgQuery__RawStmt *message, +void pg_query__column_ref__free_unpacked + (PgQuery__ColumnRef *message, ProtobufCAllocator *allocator); -/* PgQuery__Query methods */ -void pg_query__query__init - (PgQuery__Query *message); -size_t pg_query__query__get_packed_size - (const PgQuery__Query *message); -size_t pg_query__query__pack - (const PgQuery__Query *message, +/* PgQuery__ParamRef methods */ +void pg_query__param_ref__init + (PgQuery__ParamRef *message); +size_t pg_query__param_ref__get_packed_size + (const PgQuery__ParamRef *message); +size_t pg_query__param_ref__pack + (const PgQuery__ParamRef *message, uint8_t *out); -size_t pg_query__query__pack_to_buffer - (const PgQuery__Query *message, +size_t pg_query__param_ref__pack_to_buffer + (const PgQuery__ParamRef *message, ProtobufCBuffer *buffer); -PgQuery__Query * - pg_query__query__unpack +PgQuery__ParamRef * + pg_query__param_ref__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__query__free_unpacked - (PgQuery__Query *message, +void pg_query__param_ref__free_unpacked + (PgQuery__ParamRef *message, ProtobufCAllocator *allocator); -/* PgQuery__InsertStmt methods */ -void pg_query__insert_stmt__init - (PgQuery__InsertStmt *message); -size_t pg_query__insert_stmt__get_packed_size - (const PgQuery__InsertStmt *message); -size_t pg_query__insert_stmt__pack - (const PgQuery__InsertStmt *message, +/* PgQuery__AExpr methods */ +void pg_query__a__expr__init + (PgQuery__AExpr *message); +size_t pg_query__a__expr__get_packed_size + (const PgQuery__AExpr *message); +size_t pg_query__a__expr__pack + (const PgQuery__AExpr *message, uint8_t *out); -size_t pg_query__insert_stmt__pack_to_buffer - (const PgQuery__InsertStmt *message, +size_t pg_query__a__expr__pack_to_buffer + (const PgQuery__AExpr *message, ProtobufCBuffer *buffer); -PgQuery__InsertStmt * - pg_query__insert_stmt__unpack +PgQuery__AExpr * + pg_query__a__expr__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__insert_stmt__free_unpacked - (PgQuery__InsertStmt *message, +void pg_query__a__expr__free_unpacked + (PgQuery__AExpr *message, ProtobufCAllocator *allocator); -/* PgQuery__DeleteStmt methods */ -void pg_query__delete_stmt__init - (PgQuery__DeleteStmt *message); -size_t pg_query__delete_stmt__get_packed_size - (const PgQuery__DeleteStmt *message); -size_t pg_query__delete_stmt__pack - (const PgQuery__DeleteStmt *message, +/* PgQuery__TypeCast methods */ +void pg_query__type_cast__init + (PgQuery__TypeCast *message); +size_t pg_query__type_cast__get_packed_size + (const PgQuery__TypeCast *message); +size_t pg_query__type_cast__pack + (const PgQuery__TypeCast *message, uint8_t *out); -size_t pg_query__delete_stmt__pack_to_buffer - (const PgQuery__DeleteStmt *message, +size_t pg_query__type_cast__pack_to_buffer + (const PgQuery__TypeCast *message, ProtobufCBuffer *buffer); -PgQuery__DeleteStmt * - pg_query__delete_stmt__unpack +PgQuery__TypeCast * + pg_query__type_cast__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__delete_stmt__free_unpacked - (PgQuery__DeleteStmt *message, +void pg_query__type_cast__free_unpacked + (PgQuery__TypeCast *message, ProtobufCAllocator *allocator); -/* PgQuery__UpdateStmt methods */ -void pg_query__update_stmt__init - (PgQuery__UpdateStmt *message); -size_t pg_query__update_stmt__get_packed_size - (const PgQuery__UpdateStmt *message); -size_t pg_query__update_stmt__pack - (const PgQuery__UpdateStmt *message, +/* PgQuery__CollateClause methods */ +void pg_query__collate_clause__init + (PgQuery__CollateClause *message); +size_t pg_query__collate_clause__get_packed_size + (const PgQuery__CollateClause *message); +size_t pg_query__collate_clause__pack + (const PgQuery__CollateClause *message, uint8_t *out); -size_t pg_query__update_stmt__pack_to_buffer - (const PgQuery__UpdateStmt *message, +size_t pg_query__collate_clause__pack_to_buffer + (const PgQuery__CollateClause *message, ProtobufCBuffer *buffer); -PgQuery__UpdateStmt * - pg_query__update_stmt__unpack +PgQuery__CollateClause * + pg_query__collate_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__update_stmt__free_unpacked - (PgQuery__UpdateStmt *message, +void pg_query__collate_clause__free_unpacked + (PgQuery__CollateClause *message, ProtobufCAllocator *allocator); -/* PgQuery__MergeStmt methods */ -void pg_query__merge_stmt__init - (PgQuery__MergeStmt *message); -size_t pg_query__merge_stmt__get_packed_size - (const PgQuery__MergeStmt *message); -size_t pg_query__merge_stmt__pack - (const PgQuery__MergeStmt *message, +/* PgQuery__RoleSpec methods */ +void pg_query__role_spec__init + (PgQuery__RoleSpec *message); +size_t pg_query__role_spec__get_packed_size + (const PgQuery__RoleSpec *message); +size_t pg_query__role_spec__pack + (const PgQuery__RoleSpec *message, uint8_t *out); -size_t pg_query__merge_stmt__pack_to_buffer - (const PgQuery__MergeStmt *message, +size_t pg_query__role_spec__pack_to_buffer + (const PgQuery__RoleSpec *message, ProtobufCBuffer *buffer); -PgQuery__MergeStmt * - pg_query__merge_stmt__unpack +PgQuery__RoleSpec * + pg_query__role_spec__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__merge_stmt__free_unpacked - (PgQuery__MergeStmt *message, +void pg_query__role_spec__free_unpacked + (PgQuery__RoleSpec *message, ProtobufCAllocator *allocator); -/* PgQuery__SelectStmt methods */ -void pg_query__select_stmt__init - (PgQuery__SelectStmt *message); -size_t pg_query__select_stmt__get_packed_size - (const PgQuery__SelectStmt *message); -size_t pg_query__select_stmt__pack - (const PgQuery__SelectStmt *message, +/* PgQuery__FuncCall methods */ +void pg_query__func_call__init + (PgQuery__FuncCall *message); +size_t pg_query__func_call__get_packed_size + (const PgQuery__FuncCall *message); +size_t pg_query__func_call__pack + (const PgQuery__FuncCall *message, uint8_t *out); -size_t pg_query__select_stmt__pack_to_buffer - (const PgQuery__SelectStmt *message, +size_t pg_query__func_call__pack_to_buffer + (const PgQuery__FuncCall *message, ProtobufCBuffer *buffer); -PgQuery__SelectStmt * - pg_query__select_stmt__unpack +PgQuery__FuncCall * + pg_query__func_call__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__select_stmt__free_unpacked - (PgQuery__SelectStmt *message, +void pg_query__func_call__free_unpacked + (PgQuery__FuncCall *message, ProtobufCAllocator *allocator); -/* PgQuery__ReturnStmt methods */ -void pg_query__return_stmt__init - (PgQuery__ReturnStmt *message); -size_t pg_query__return_stmt__get_packed_size - (const PgQuery__ReturnStmt *message); -size_t pg_query__return_stmt__pack - (const PgQuery__ReturnStmt *message, +/* PgQuery__AStar methods */ +void pg_query__a__star__init + (PgQuery__AStar *message); +size_t pg_query__a__star__get_packed_size + (const PgQuery__AStar *message); +size_t pg_query__a__star__pack + (const PgQuery__AStar *message, uint8_t *out); -size_t pg_query__return_stmt__pack_to_buffer - (const PgQuery__ReturnStmt *message, +size_t pg_query__a__star__pack_to_buffer + (const PgQuery__AStar *message, ProtobufCBuffer *buffer); -PgQuery__ReturnStmt * - pg_query__return_stmt__unpack +PgQuery__AStar * + pg_query__a__star__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__return_stmt__free_unpacked - (PgQuery__ReturnStmt *message, +void pg_query__a__star__free_unpacked + (PgQuery__AStar *message, ProtobufCAllocator *allocator); -/* PgQuery__PLAssignStmt methods */ -void pg_query__plassign_stmt__init - (PgQuery__PLAssignStmt *message); -size_t pg_query__plassign_stmt__get_packed_size - (const PgQuery__PLAssignStmt *message); -size_t pg_query__plassign_stmt__pack - (const PgQuery__PLAssignStmt *message, +/* PgQuery__AIndices methods */ +void pg_query__a__indices__init + (PgQuery__AIndices *message); +size_t pg_query__a__indices__get_packed_size + (const PgQuery__AIndices *message); +size_t pg_query__a__indices__pack + (const PgQuery__AIndices *message, uint8_t *out); -size_t pg_query__plassign_stmt__pack_to_buffer - (const PgQuery__PLAssignStmt *message, +size_t pg_query__a__indices__pack_to_buffer + (const PgQuery__AIndices *message, ProtobufCBuffer *buffer); -PgQuery__PLAssignStmt * - pg_query__plassign_stmt__unpack +PgQuery__AIndices * + pg_query__a__indices__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__plassign_stmt__free_unpacked - (PgQuery__PLAssignStmt *message, +void pg_query__a__indices__free_unpacked + (PgQuery__AIndices *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterTableStmt methods */ -void pg_query__alter_table_stmt__init - (PgQuery__AlterTableStmt *message); -size_t pg_query__alter_table_stmt__get_packed_size - (const PgQuery__AlterTableStmt *message); -size_t pg_query__alter_table_stmt__pack - (const PgQuery__AlterTableStmt *message, +/* PgQuery__AIndirection methods */ +void pg_query__a__indirection__init + (PgQuery__AIndirection *message); +size_t pg_query__a__indirection__get_packed_size + (const PgQuery__AIndirection *message); +size_t pg_query__a__indirection__pack + (const PgQuery__AIndirection *message, uint8_t *out); -size_t pg_query__alter_table_stmt__pack_to_buffer - (const PgQuery__AlterTableStmt *message, +size_t pg_query__a__indirection__pack_to_buffer + (const PgQuery__AIndirection *message, ProtobufCBuffer *buffer); -PgQuery__AlterTableStmt * - pg_query__alter_table_stmt__unpack +PgQuery__AIndirection * + pg_query__a__indirection__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_table_stmt__free_unpacked - (PgQuery__AlterTableStmt *message, +void pg_query__a__indirection__free_unpacked + (PgQuery__AIndirection *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterTableCmd methods */ -void pg_query__alter_table_cmd__init - (PgQuery__AlterTableCmd *message); -size_t pg_query__alter_table_cmd__get_packed_size - (const PgQuery__AlterTableCmd *message); -size_t pg_query__alter_table_cmd__pack - (const PgQuery__AlterTableCmd *message, +/* PgQuery__AArrayExpr methods */ +void pg_query__a__array_expr__init + (PgQuery__AArrayExpr *message); +size_t pg_query__a__array_expr__get_packed_size + (const PgQuery__AArrayExpr *message); +size_t pg_query__a__array_expr__pack + (const PgQuery__AArrayExpr *message, uint8_t *out); -size_t pg_query__alter_table_cmd__pack_to_buffer - (const PgQuery__AlterTableCmd *message, +size_t pg_query__a__array_expr__pack_to_buffer + (const PgQuery__AArrayExpr *message, ProtobufCBuffer *buffer); -PgQuery__AlterTableCmd * - pg_query__alter_table_cmd__unpack +PgQuery__AArrayExpr * + pg_query__a__array_expr__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_table_cmd__free_unpacked - (PgQuery__AlterTableCmd *message, +void pg_query__a__array_expr__free_unpacked + (PgQuery__AArrayExpr *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterDomainStmt methods */ -void pg_query__alter_domain_stmt__init - (PgQuery__AlterDomainStmt *message); -size_t pg_query__alter_domain_stmt__get_packed_size - (const PgQuery__AlterDomainStmt *message); -size_t pg_query__alter_domain_stmt__pack - (const PgQuery__AlterDomainStmt *message, +/* PgQuery__ResTarget methods */ +void pg_query__res_target__init + (PgQuery__ResTarget *message); +size_t pg_query__res_target__get_packed_size + (const PgQuery__ResTarget *message); +size_t pg_query__res_target__pack + (const PgQuery__ResTarget *message, uint8_t *out); -size_t pg_query__alter_domain_stmt__pack_to_buffer - (const PgQuery__AlterDomainStmt *message, +size_t pg_query__res_target__pack_to_buffer + (const PgQuery__ResTarget *message, ProtobufCBuffer *buffer); -PgQuery__AlterDomainStmt * - pg_query__alter_domain_stmt__unpack +PgQuery__ResTarget * + pg_query__res_target__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_domain_stmt__free_unpacked - (PgQuery__AlterDomainStmt *message, +void pg_query__res_target__free_unpacked + (PgQuery__ResTarget *message, ProtobufCAllocator *allocator); -/* PgQuery__SetOperationStmt methods */ -void pg_query__set_operation_stmt__init - (PgQuery__SetOperationStmt *message); -size_t pg_query__set_operation_stmt__get_packed_size - (const PgQuery__SetOperationStmt *message); -size_t pg_query__set_operation_stmt__pack - (const PgQuery__SetOperationStmt *message, +/* PgQuery__MultiAssignRef methods */ +void pg_query__multi_assign_ref__init + (PgQuery__MultiAssignRef *message); +size_t pg_query__multi_assign_ref__get_packed_size + (const PgQuery__MultiAssignRef *message); +size_t pg_query__multi_assign_ref__pack + (const PgQuery__MultiAssignRef *message, uint8_t *out); -size_t pg_query__set_operation_stmt__pack_to_buffer - (const PgQuery__SetOperationStmt *message, +size_t pg_query__multi_assign_ref__pack_to_buffer + (const PgQuery__MultiAssignRef *message, ProtobufCBuffer *buffer); -PgQuery__SetOperationStmt * - pg_query__set_operation_stmt__unpack +PgQuery__MultiAssignRef * + pg_query__multi_assign_ref__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__set_operation_stmt__free_unpacked - (PgQuery__SetOperationStmt *message, +void pg_query__multi_assign_ref__free_unpacked + (PgQuery__MultiAssignRef *message, ProtobufCAllocator *allocator); -/* PgQuery__GrantStmt methods */ -void pg_query__grant_stmt__init - (PgQuery__GrantStmt *message); -size_t pg_query__grant_stmt__get_packed_size - (const PgQuery__GrantStmt *message); -size_t pg_query__grant_stmt__pack - (const PgQuery__GrantStmt *message, +/* PgQuery__SortBy methods */ +void pg_query__sort_by__init + (PgQuery__SortBy *message); +size_t pg_query__sort_by__get_packed_size + (const PgQuery__SortBy *message); +size_t pg_query__sort_by__pack + (const PgQuery__SortBy *message, uint8_t *out); -size_t pg_query__grant_stmt__pack_to_buffer - (const PgQuery__GrantStmt *message, +size_t pg_query__sort_by__pack_to_buffer + (const PgQuery__SortBy *message, ProtobufCBuffer *buffer); -PgQuery__GrantStmt * - pg_query__grant_stmt__unpack +PgQuery__SortBy * + pg_query__sort_by__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__grant_stmt__free_unpacked - (PgQuery__GrantStmt *message, +void pg_query__sort_by__free_unpacked + (PgQuery__SortBy *message, ProtobufCAllocator *allocator); -/* PgQuery__GrantRoleStmt methods */ -void pg_query__grant_role_stmt__init - (PgQuery__GrantRoleStmt *message); -size_t pg_query__grant_role_stmt__get_packed_size - (const PgQuery__GrantRoleStmt *message); -size_t pg_query__grant_role_stmt__pack - (const PgQuery__GrantRoleStmt *message, +/* PgQuery__WindowDef methods */ +void pg_query__window_def__init + (PgQuery__WindowDef *message); +size_t pg_query__window_def__get_packed_size + (const PgQuery__WindowDef *message); +size_t pg_query__window_def__pack + (const PgQuery__WindowDef *message, uint8_t *out); -size_t pg_query__grant_role_stmt__pack_to_buffer - (const PgQuery__GrantRoleStmt *message, +size_t pg_query__window_def__pack_to_buffer + (const PgQuery__WindowDef *message, ProtobufCBuffer *buffer); -PgQuery__GrantRoleStmt * - pg_query__grant_role_stmt__unpack +PgQuery__WindowDef * + pg_query__window_def__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__grant_role_stmt__free_unpacked - (PgQuery__GrantRoleStmt *message, +void pg_query__window_def__free_unpacked + (PgQuery__WindowDef *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterDefaultPrivilegesStmt methods */ -void pg_query__alter_default_privileges_stmt__init - (PgQuery__AlterDefaultPrivilegesStmt *message); -size_t pg_query__alter_default_privileges_stmt__get_packed_size - (const PgQuery__AlterDefaultPrivilegesStmt *message); -size_t pg_query__alter_default_privileges_stmt__pack - (const PgQuery__AlterDefaultPrivilegesStmt *message, +/* PgQuery__RangeSubselect methods */ +void pg_query__range_subselect__init + (PgQuery__RangeSubselect *message); +size_t pg_query__range_subselect__get_packed_size + (const PgQuery__RangeSubselect *message); +size_t pg_query__range_subselect__pack + (const PgQuery__RangeSubselect *message, + uint8_t *out); +size_t pg_query__range_subselect__pack_to_buffer + (const PgQuery__RangeSubselect *message, + ProtobufCBuffer *buffer); +PgQuery__RangeSubselect * + pg_query__range_subselect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__range_subselect__free_unpacked + (PgQuery__RangeSubselect *message, + ProtobufCAllocator *allocator); +/* PgQuery__RangeFunction methods */ +void pg_query__range_function__init + (PgQuery__RangeFunction *message); +size_t pg_query__range_function__get_packed_size + (const PgQuery__RangeFunction *message); +size_t pg_query__range_function__pack + (const PgQuery__RangeFunction *message, + uint8_t *out); +size_t pg_query__range_function__pack_to_buffer + (const PgQuery__RangeFunction *message, + ProtobufCBuffer *buffer); +PgQuery__RangeFunction * + pg_query__range_function__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__range_function__free_unpacked + (PgQuery__RangeFunction *message, + ProtobufCAllocator *allocator); +/* PgQuery__RangeTableFunc methods */ +void pg_query__range_table_func__init + (PgQuery__RangeTableFunc *message); +size_t pg_query__range_table_func__get_packed_size + (const PgQuery__RangeTableFunc *message); +size_t pg_query__range_table_func__pack + (const PgQuery__RangeTableFunc *message, + uint8_t *out); +size_t pg_query__range_table_func__pack_to_buffer + (const PgQuery__RangeTableFunc *message, + ProtobufCBuffer *buffer); +PgQuery__RangeTableFunc * + pg_query__range_table_func__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__range_table_func__free_unpacked + (PgQuery__RangeTableFunc *message, + ProtobufCAllocator *allocator); +/* PgQuery__RangeTableFuncCol methods */ +void pg_query__range_table_func_col__init + (PgQuery__RangeTableFuncCol *message); +size_t pg_query__range_table_func_col__get_packed_size + (const PgQuery__RangeTableFuncCol *message); +size_t pg_query__range_table_func_col__pack + (const PgQuery__RangeTableFuncCol *message, + uint8_t *out); +size_t pg_query__range_table_func_col__pack_to_buffer + (const PgQuery__RangeTableFuncCol *message, + ProtobufCBuffer *buffer); +PgQuery__RangeTableFuncCol * + pg_query__range_table_func_col__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__range_table_func_col__free_unpacked + (PgQuery__RangeTableFuncCol *message, + ProtobufCAllocator *allocator); +/* PgQuery__RangeTableSample methods */ +void pg_query__range_table_sample__init + (PgQuery__RangeTableSample *message); +size_t pg_query__range_table_sample__get_packed_size + (const PgQuery__RangeTableSample *message); +size_t pg_query__range_table_sample__pack + (const PgQuery__RangeTableSample *message, + uint8_t *out); +size_t pg_query__range_table_sample__pack_to_buffer + (const PgQuery__RangeTableSample *message, + ProtobufCBuffer *buffer); +PgQuery__RangeTableSample * + pg_query__range_table_sample__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__range_table_sample__free_unpacked + (PgQuery__RangeTableSample *message, + ProtobufCAllocator *allocator); +/* PgQuery__ColumnDef methods */ +void pg_query__column_def__init + (PgQuery__ColumnDef *message); +size_t pg_query__column_def__get_packed_size + (const PgQuery__ColumnDef *message); +size_t pg_query__column_def__pack + (const PgQuery__ColumnDef *message, + uint8_t *out); +size_t pg_query__column_def__pack_to_buffer + (const PgQuery__ColumnDef *message, + ProtobufCBuffer *buffer); +PgQuery__ColumnDef * + pg_query__column_def__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__column_def__free_unpacked + (PgQuery__ColumnDef *message, + ProtobufCAllocator *allocator); +/* PgQuery__TableLikeClause methods */ +void pg_query__table_like_clause__init + (PgQuery__TableLikeClause *message); +size_t pg_query__table_like_clause__get_packed_size + (const PgQuery__TableLikeClause *message); +size_t pg_query__table_like_clause__pack + (const PgQuery__TableLikeClause *message, + uint8_t *out); +size_t pg_query__table_like_clause__pack_to_buffer + (const PgQuery__TableLikeClause *message, + ProtobufCBuffer *buffer); +PgQuery__TableLikeClause * + pg_query__table_like_clause__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__table_like_clause__free_unpacked + (PgQuery__TableLikeClause *message, + ProtobufCAllocator *allocator); +/* PgQuery__IndexElem methods */ +void pg_query__index_elem__init + (PgQuery__IndexElem *message); +size_t pg_query__index_elem__get_packed_size + (const PgQuery__IndexElem *message); +size_t pg_query__index_elem__pack + (const PgQuery__IndexElem *message, + uint8_t *out); +size_t pg_query__index_elem__pack_to_buffer + (const PgQuery__IndexElem *message, + ProtobufCBuffer *buffer); +PgQuery__IndexElem * + pg_query__index_elem__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__index_elem__free_unpacked + (PgQuery__IndexElem *message, + ProtobufCAllocator *allocator); +/* PgQuery__DefElem methods */ +void pg_query__def_elem__init + (PgQuery__DefElem *message); +size_t pg_query__def_elem__get_packed_size + (const PgQuery__DefElem *message); +size_t pg_query__def_elem__pack + (const PgQuery__DefElem *message, + uint8_t *out); +size_t pg_query__def_elem__pack_to_buffer + (const PgQuery__DefElem *message, + ProtobufCBuffer *buffer); +PgQuery__DefElem * + pg_query__def_elem__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__def_elem__free_unpacked + (PgQuery__DefElem *message, + ProtobufCAllocator *allocator); +/* PgQuery__LockingClause methods */ +void pg_query__locking_clause__init + (PgQuery__LockingClause *message); +size_t pg_query__locking_clause__get_packed_size + (const PgQuery__LockingClause *message); +size_t pg_query__locking_clause__pack + (const PgQuery__LockingClause *message, uint8_t *out); -size_t pg_query__alter_default_privileges_stmt__pack_to_buffer - (const PgQuery__AlterDefaultPrivilegesStmt *message, +size_t pg_query__locking_clause__pack_to_buffer + (const PgQuery__LockingClause *message, ProtobufCBuffer *buffer); -PgQuery__AlterDefaultPrivilegesStmt * - pg_query__alter_default_privileges_stmt__unpack +PgQuery__LockingClause * + pg_query__locking_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_default_privileges_stmt__free_unpacked - (PgQuery__AlterDefaultPrivilegesStmt *message, +void pg_query__locking_clause__free_unpacked + (PgQuery__LockingClause *message, ProtobufCAllocator *allocator); -/* PgQuery__ClosePortalStmt methods */ -void pg_query__close_portal_stmt__init - (PgQuery__ClosePortalStmt *message); -size_t pg_query__close_portal_stmt__get_packed_size - (const PgQuery__ClosePortalStmt *message); -size_t pg_query__close_portal_stmt__pack - (const PgQuery__ClosePortalStmt *message, +/* PgQuery__XmlSerialize methods */ +void pg_query__xml_serialize__init + (PgQuery__XmlSerialize *message); +size_t pg_query__xml_serialize__get_packed_size + (const PgQuery__XmlSerialize *message); +size_t pg_query__xml_serialize__pack + (const PgQuery__XmlSerialize *message, uint8_t *out); -size_t pg_query__close_portal_stmt__pack_to_buffer - (const PgQuery__ClosePortalStmt *message, +size_t pg_query__xml_serialize__pack_to_buffer + (const PgQuery__XmlSerialize *message, ProtobufCBuffer *buffer); -PgQuery__ClosePortalStmt * - pg_query__close_portal_stmt__unpack +PgQuery__XmlSerialize * + pg_query__xml_serialize__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__close_portal_stmt__free_unpacked - (PgQuery__ClosePortalStmt *message, +void pg_query__xml_serialize__free_unpacked + (PgQuery__XmlSerialize *message, ProtobufCAllocator *allocator); -/* PgQuery__ClusterStmt methods */ -void pg_query__cluster_stmt__init - (PgQuery__ClusterStmt *message); -size_t pg_query__cluster_stmt__get_packed_size - (const PgQuery__ClusterStmt *message); -size_t pg_query__cluster_stmt__pack - (const PgQuery__ClusterStmt *message, +/* PgQuery__PartitionElem methods */ +void pg_query__partition_elem__init + (PgQuery__PartitionElem *message); +size_t pg_query__partition_elem__get_packed_size + (const PgQuery__PartitionElem *message); +size_t pg_query__partition_elem__pack + (const PgQuery__PartitionElem *message, uint8_t *out); -size_t pg_query__cluster_stmt__pack_to_buffer - (const PgQuery__ClusterStmt *message, +size_t pg_query__partition_elem__pack_to_buffer + (const PgQuery__PartitionElem *message, ProtobufCBuffer *buffer); -PgQuery__ClusterStmt * - pg_query__cluster_stmt__unpack +PgQuery__PartitionElem * + pg_query__partition_elem__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__cluster_stmt__free_unpacked - (PgQuery__ClusterStmt *message, +void pg_query__partition_elem__free_unpacked + (PgQuery__PartitionElem *message, ProtobufCAllocator *allocator); -/* PgQuery__CopyStmt methods */ -void pg_query__copy_stmt__init - (PgQuery__CopyStmt *message); -size_t pg_query__copy_stmt__get_packed_size - (const PgQuery__CopyStmt *message); -size_t pg_query__copy_stmt__pack - (const PgQuery__CopyStmt *message, +/* PgQuery__PartitionSpec methods */ +void pg_query__partition_spec__init + (PgQuery__PartitionSpec *message); +size_t pg_query__partition_spec__get_packed_size + (const PgQuery__PartitionSpec *message); +size_t pg_query__partition_spec__pack + (const PgQuery__PartitionSpec *message, uint8_t *out); -size_t pg_query__copy_stmt__pack_to_buffer - (const PgQuery__CopyStmt *message, +size_t pg_query__partition_spec__pack_to_buffer + (const PgQuery__PartitionSpec *message, ProtobufCBuffer *buffer); -PgQuery__CopyStmt * - pg_query__copy_stmt__unpack +PgQuery__PartitionSpec * + pg_query__partition_spec__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__copy_stmt__free_unpacked - (PgQuery__CopyStmt *message, +void pg_query__partition_spec__free_unpacked + (PgQuery__PartitionSpec *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateStmt methods */ -void pg_query__create_stmt__init - (PgQuery__CreateStmt *message); -size_t pg_query__create_stmt__get_packed_size - (const PgQuery__CreateStmt *message); -size_t pg_query__create_stmt__pack - (const PgQuery__CreateStmt *message, +/* PgQuery__PartitionBoundSpec methods */ +void pg_query__partition_bound_spec__init + (PgQuery__PartitionBoundSpec *message); +size_t pg_query__partition_bound_spec__get_packed_size + (const PgQuery__PartitionBoundSpec *message); +size_t pg_query__partition_bound_spec__pack + (const PgQuery__PartitionBoundSpec *message, uint8_t *out); -size_t pg_query__create_stmt__pack_to_buffer - (const PgQuery__CreateStmt *message, +size_t pg_query__partition_bound_spec__pack_to_buffer + (const PgQuery__PartitionBoundSpec *message, ProtobufCBuffer *buffer); -PgQuery__CreateStmt * - pg_query__create_stmt__unpack +PgQuery__PartitionBoundSpec * + pg_query__partition_bound_spec__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_stmt__free_unpacked - (PgQuery__CreateStmt *message, +void pg_query__partition_bound_spec__free_unpacked + (PgQuery__PartitionBoundSpec *message, ProtobufCAllocator *allocator); -/* PgQuery__DefineStmt methods */ -void pg_query__define_stmt__init - (PgQuery__DefineStmt *message); -size_t pg_query__define_stmt__get_packed_size - (const PgQuery__DefineStmt *message); -size_t pg_query__define_stmt__pack - (const PgQuery__DefineStmt *message, +/* PgQuery__PartitionRangeDatum methods */ +void pg_query__partition_range_datum__init + (PgQuery__PartitionRangeDatum *message); +size_t pg_query__partition_range_datum__get_packed_size + (const PgQuery__PartitionRangeDatum *message); +size_t pg_query__partition_range_datum__pack + (const PgQuery__PartitionRangeDatum *message, uint8_t *out); -size_t pg_query__define_stmt__pack_to_buffer - (const PgQuery__DefineStmt *message, +size_t pg_query__partition_range_datum__pack_to_buffer + (const PgQuery__PartitionRangeDatum *message, ProtobufCBuffer *buffer); -PgQuery__DefineStmt * - pg_query__define_stmt__unpack +PgQuery__PartitionRangeDatum * + pg_query__partition_range_datum__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__define_stmt__free_unpacked - (PgQuery__DefineStmt *message, +void pg_query__partition_range_datum__free_unpacked + (PgQuery__PartitionRangeDatum *message, ProtobufCAllocator *allocator); -/* PgQuery__DropStmt methods */ -void pg_query__drop_stmt__init - (PgQuery__DropStmt *message); -size_t pg_query__drop_stmt__get_packed_size - (const PgQuery__DropStmt *message); -size_t pg_query__drop_stmt__pack - (const PgQuery__DropStmt *message, +/* PgQuery__PartitionCmd methods */ +void pg_query__partition_cmd__init + (PgQuery__PartitionCmd *message); +size_t pg_query__partition_cmd__get_packed_size + (const PgQuery__PartitionCmd *message); +size_t pg_query__partition_cmd__pack + (const PgQuery__PartitionCmd *message, uint8_t *out); -size_t pg_query__drop_stmt__pack_to_buffer - (const PgQuery__DropStmt *message, +size_t pg_query__partition_cmd__pack_to_buffer + (const PgQuery__PartitionCmd *message, ProtobufCBuffer *buffer); -PgQuery__DropStmt * - pg_query__drop_stmt__unpack +PgQuery__PartitionCmd * + pg_query__partition_cmd__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__drop_stmt__free_unpacked - (PgQuery__DropStmt *message, +void pg_query__partition_cmd__free_unpacked + (PgQuery__PartitionCmd *message, ProtobufCAllocator *allocator); -/* PgQuery__TruncateStmt methods */ -void pg_query__truncate_stmt__init - (PgQuery__TruncateStmt *message); -size_t pg_query__truncate_stmt__get_packed_size - (const PgQuery__TruncateStmt *message); -size_t pg_query__truncate_stmt__pack - (const PgQuery__TruncateStmt *message, +/* PgQuery__RangeTblEntry methods */ +void pg_query__range_tbl_entry__init + (PgQuery__RangeTblEntry *message); +size_t pg_query__range_tbl_entry__get_packed_size + (const PgQuery__RangeTblEntry *message); +size_t pg_query__range_tbl_entry__pack + (const PgQuery__RangeTblEntry *message, uint8_t *out); -size_t pg_query__truncate_stmt__pack_to_buffer - (const PgQuery__TruncateStmt *message, +size_t pg_query__range_tbl_entry__pack_to_buffer + (const PgQuery__RangeTblEntry *message, ProtobufCBuffer *buffer); -PgQuery__TruncateStmt * - pg_query__truncate_stmt__unpack +PgQuery__RangeTblEntry * + pg_query__range_tbl_entry__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__truncate_stmt__free_unpacked - (PgQuery__TruncateStmt *message, +void pg_query__range_tbl_entry__free_unpacked + (PgQuery__RangeTblEntry *message, ProtobufCAllocator *allocator); -/* PgQuery__CommentStmt methods */ -void pg_query__comment_stmt__init - (PgQuery__CommentStmt *message); -size_t pg_query__comment_stmt__get_packed_size - (const PgQuery__CommentStmt *message); -size_t pg_query__comment_stmt__pack - (const PgQuery__CommentStmt *message, +/* PgQuery__RTEPermissionInfo methods */ +void pg_query__rtepermission_info__init + (PgQuery__RTEPermissionInfo *message); +size_t pg_query__rtepermission_info__get_packed_size + (const PgQuery__RTEPermissionInfo *message); +size_t pg_query__rtepermission_info__pack + (const PgQuery__RTEPermissionInfo *message, uint8_t *out); -size_t pg_query__comment_stmt__pack_to_buffer - (const PgQuery__CommentStmt *message, +size_t pg_query__rtepermission_info__pack_to_buffer + (const PgQuery__RTEPermissionInfo *message, ProtobufCBuffer *buffer); -PgQuery__CommentStmt * - pg_query__comment_stmt__unpack +PgQuery__RTEPermissionInfo * + pg_query__rtepermission_info__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__comment_stmt__free_unpacked - (PgQuery__CommentStmt *message, +void pg_query__rtepermission_info__free_unpacked + (PgQuery__RTEPermissionInfo *message, ProtobufCAllocator *allocator); -/* PgQuery__FetchStmt methods */ -void pg_query__fetch_stmt__init - (PgQuery__FetchStmt *message); -size_t pg_query__fetch_stmt__get_packed_size - (const PgQuery__FetchStmt *message); -size_t pg_query__fetch_stmt__pack - (const PgQuery__FetchStmt *message, +/* PgQuery__RangeTblFunction methods */ +void pg_query__range_tbl_function__init + (PgQuery__RangeTblFunction *message); +size_t pg_query__range_tbl_function__get_packed_size + (const PgQuery__RangeTblFunction *message); +size_t pg_query__range_tbl_function__pack + (const PgQuery__RangeTblFunction *message, uint8_t *out); -size_t pg_query__fetch_stmt__pack_to_buffer - (const PgQuery__FetchStmt *message, +size_t pg_query__range_tbl_function__pack_to_buffer + (const PgQuery__RangeTblFunction *message, ProtobufCBuffer *buffer); -PgQuery__FetchStmt * - pg_query__fetch_stmt__unpack +PgQuery__RangeTblFunction * + pg_query__range_tbl_function__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__fetch_stmt__free_unpacked - (PgQuery__FetchStmt *message, +void pg_query__range_tbl_function__free_unpacked + (PgQuery__RangeTblFunction *message, ProtobufCAllocator *allocator); -/* PgQuery__IndexStmt methods */ -void pg_query__index_stmt__init - (PgQuery__IndexStmt *message); -size_t pg_query__index_stmt__get_packed_size - (const PgQuery__IndexStmt *message); -size_t pg_query__index_stmt__pack - (const PgQuery__IndexStmt *message, - uint8_t *out); -size_t pg_query__index_stmt__pack_to_buffer - (const PgQuery__IndexStmt *message, +/* PgQuery__TableSampleClause methods */ +void pg_query__table_sample_clause__init + (PgQuery__TableSampleClause *message); +size_t pg_query__table_sample_clause__get_packed_size + (const PgQuery__TableSampleClause *message); +size_t pg_query__table_sample_clause__pack + (const PgQuery__TableSampleClause *message, + uint8_t *out); +size_t pg_query__table_sample_clause__pack_to_buffer + (const PgQuery__TableSampleClause *message, ProtobufCBuffer *buffer); -PgQuery__IndexStmt * - pg_query__index_stmt__unpack +PgQuery__TableSampleClause * + pg_query__table_sample_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__index_stmt__free_unpacked - (PgQuery__IndexStmt *message, +void pg_query__table_sample_clause__free_unpacked + (PgQuery__TableSampleClause *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateFunctionStmt methods */ -void pg_query__create_function_stmt__init - (PgQuery__CreateFunctionStmt *message); -size_t pg_query__create_function_stmt__get_packed_size - (const PgQuery__CreateFunctionStmt *message); -size_t pg_query__create_function_stmt__pack - (const PgQuery__CreateFunctionStmt *message, +/* PgQuery__WithCheckOption methods */ +void pg_query__with_check_option__init + (PgQuery__WithCheckOption *message); +size_t pg_query__with_check_option__get_packed_size + (const PgQuery__WithCheckOption *message); +size_t pg_query__with_check_option__pack + (const PgQuery__WithCheckOption *message, uint8_t *out); -size_t pg_query__create_function_stmt__pack_to_buffer - (const PgQuery__CreateFunctionStmt *message, +size_t pg_query__with_check_option__pack_to_buffer + (const PgQuery__WithCheckOption *message, ProtobufCBuffer *buffer); -PgQuery__CreateFunctionStmt * - pg_query__create_function_stmt__unpack +PgQuery__WithCheckOption * + pg_query__with_check_option__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_function_stmt__free_unpacked - (PgQuery__CreateFunctionStmt *message, +void pg_query__with_check_option__free_unpacked + (PgQuery__WithCheckOption *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterFunctionStmt methods */ -void pg_query__alter_function_stmt__init - (PgQuery__AlterFunctionStmt *message); -size_t pg_query__alter_function_stmt__get_packed_size - (const PgQuery__AlterFunctionStmt *message); -size_t pg_query__alter_function_stmt__pack - (const PgQuery__AlterFunctionStmt *message, +/* PgQuery__SortGroupClause methods */ +void pg_query__sort_group_clause__init + (PgQuery__SortGroupClause *message); +size_t pg_query__sort_group_clause__get_packed_size + (const PgQuery__SortGroupClause *message); +size_t pg_query__sort_group_clause__pack + (const PgQuery__SortGroupClause *message, uint8_t *out); -size_t pg_query__alter_function_stmt__pack_to_buffer - (const PgQuery__AlterFunctionStmt *message, +size_t pg_query__sort_group_clause__pack_to_buffer + (const PgQuery__SortGroupClause *message, ProtobufCBuffer *buffer); -PgQuery__AlterFunctionStmt * - pg_query__alter_function_stmt__unpack +PgQuery__SortGroupClause * + pg_query__sort_group_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_function_stmt__free_unpacked - (PgQuery__AlterFunctionStmt *message, +void pg_query__sort_group_clause__free_unpacked + (PgQuery__SortGroupClause *message, ProtobufCAllocator *allocator); -/* PgQuery__DoStmt methods */ -void pg_query__do_stmt__init - (PgQuery__DoStmt *message); -size_t pg_query__do_stmt__get_packed_size - (const PgQuery__DoStmt *message); -size_t pg_query__do_stmt__pack - (const PgQuery__DoStmt *message, +/* PgQuery__GroupingSet methods */ +void pg_query__grouping_set__init + (PgQuery__GroupingSet *message); +size_t pg_query__grouping_set__get_packed_size + (const PgQuery__GroupingSet *message); +size_t pg_query__grouping_set__pack + (const PgQuery__GroupingSet *message, uint8_t *out); -size_t pg_query__do_stmt__pack_to_buffer - (const PgQuery__DoStmt *message, +size_t pg_query__grouping_set__pack_to_buffer + (const PgQuery__GroupingSet *message, ProtobufCBuffer *buffer); -PgQuery__DoStmt * - pg_query__do_stmt__unpack +PgQuery__GroupingSet * + pg_query__grouping_set__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__do_stmt__free_unpacked - (PgQuery__DoStmt *message, +void pg_query__grouping_set__free_unpacked + (PgQuery__GroupingSet *message, ProtobufCAllocator *allocator); -/* PgQuery__RenameStmt methods */ -void pg_query__rename_stmt__init - (PgQuery__RenameStmt *message); -size_t pg_query__rename_stmt__get_packed_size - (const PgQuery__RenameStmt *message); -size_t pg_query__rename_stmt__pack - (const PgQuery__RenameStmt *message, +/* PgQuery__WindowClause methods */ +void pg_query__window_clause__init + (PgQuery__WindowClause *message); +size_t pg_query__window_clause__get_packed_size + (const PgQuery__WindowClause *message); +size_t pg_query__window_clause__pack + (const PgQuery__WindowClause *message, uint8_t *out); -size_t pg_query__rename_stmt__pack_to_buffer - (const PgQuery__RenameStmt *message, +size_t pg_query__window_clause__pack_to_buffer + (const PgQuery__WindowClause *message, ProtobufCBuffer *buffer); -PgQuery__RenameStmt * - pg_query__rename_stmt__unpack +PgQuery__WindowClause * + pg_query__window_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__rename_stmt__free_unpacked - (PgQuery__RenameStmt *message, +void pg_query__window_clause__free_unpacked + (PgQuery__WindowClause *message, ProtobufCAllocator *allocator); -/* PgQuery__RuleStmt methods */ -void pg_query__rule_stmt__init - (PgQuery__RuleStmt *message); -size_t pg_query__rule_stmt__get_packed_size - (const PgQuery__RuleStmt *message); -size_t pg_query__rule_stmt__pack - (const PgQuery__RuleStmt *message, +/* PgQuery__RowMarkClause methods */ +void pg_query__row_mark_clause__init + (PgQuery__RowMarkClause *message); +size_t pg_query__row_mark_clause__get_packed_size + (const PgQuery__RowMarkClause *message); +size_t pg_query__row_mark_clause__pack + (const PgQuery__RowMarkClause *message, uint8_t *out); -size_t pg_query__rule_stmt__pack_to_buffer - (const PgQuery__RuleStmt *message, +size_t pg_query__row_mark_clause__pack_to_buffer + (const PgQuery__RowMarkClause *message, ProtobufCBuffer *buffer); -PgQuery__RuleStmt * - pg_query__rule_stmt__unpack +PgQuery__RowMarkClause * + pg_query__row_mark_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__rule_stmt__free_unpacked - (PgQuery__RuleStmt *message, +void pg_query__row_mark_clause__free_unpacked + (PgQuery__RowMarkClause *message, ProtobufCAllocator *allocator); -/* PgQuery__NotifyStmt methods */ -void pg_query__notify_stmt__init - (PgQuery__NotifyStmt *message); -size_t pg_query__notify_stmt__get_packed_size - (const PgQuery__NotifyStmt *message); -size_t pg_query__notify_stmt__pack - (const PgQuery__NotifyStmt *message, +/* PgQuery__WithClause methods */ +void pg_query__with_clause__init + (PgQuery__WithClause *message); +size_t pg_query__with_clause__get_packed_size + (const PgQuery__WithClause *message); +size_t pg_query__with_clause__pack + (const PgQuery__WithClause *message, uint8_t *out); -size_t pg_query__notify_stmt__pack_to_buffer - (const PgQuery__NotifyStmt *message, +size_t pg_query__with_clause__pack_to_buffer + (const PgQuery__WithClause *message, ProtobufCBuffer *buffer); -PgQuery__NotifyStmt * - pg_query__notify_stmt__unpack +PgQuery__WithClause * + pg_query__with_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__notify_stmt__free_unpacked - (PgQuery__NotifyStmt *message, +void pg_query__with_clause__free_unpacked + (PgQuery__WithClause *message, ProtobufCAllocator *allocator); -/* PgQuery__ListenStmt methods */ -void pg_query__listen_stmt__init - (PgQuery__ListenStmt *message); -size_t pg_query__listen_stmt__get_packed_size - (const PgQuery__ListenStmt *message); -size_t pg_query__listen_stmt__pack - (const PgQuery__ListenStmt *message, +/* PgQuery__InferClause methods */ +void pg_query__infer_clause__init + (PgQuery__InferClause *message); +size_t pg_query__infer_clause__get_packed_size + (const PgQuery__InferClause *message); +size_t pg_query__infer_clause__pack + (const PgQuery__InferClause *message, uint8_t *out); -size_t pg_query__listen_stmt__pack_to_buffer - (const PgQuery__ListenStmt *message, +size_t pg_query__infer_clause__pack_to_buffer + (const PgQuery__InferClause *message, ProtobufCBuffer *buffer); -PgQuery__ListenStmt * - pg_query__listen_stmt__unpack +PgQuery__InferClause * + pg_query__infer_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__listen_stmt__free_unpacked - (PgQuery__ListenStmt *message, +void pg_query__infer_clause__free_unpacked + (PgQuery__InferClause *message, ProtobufCAllocator *allocator); -/* PgQuery__UnlistenStmt methods */ -void pg_query__unlisten_stmt__init - (PgQuery__UnlistenStmt *message); -size_t pg_query__unlisten_stmt__get_packed_size - (const PgQuery__UnlistenStmt *message); -size_t pg_query__unlisten_stmt__pack - (const PgQuery__UnlistenStmt *message, +/* PgQuery__OnConflictClause methods */ +void pg_query__on_conflict_clause__init + (PgQuery__OnConflictClause *message); +size_t pg_query__on_conflict_clause__get_packed_size + (const PgQuery__OnConflictClause *message); +size_t pg_query__on_conflict_clause__pack + (const PgQuery__OnConflictClause *message, uint8_t *out); -size_t pg_query__unlisten_stmt__pack_to_buffer - (const PgQuery__UnlistenStmt *message, +size_t pg_query__on_conflict_clause__pack_to_buffer + (const PgQuery__OnConflictClause *message, ProtobufCBuffer *buffer); -PgQuery__UnlistenStmt * - pg_query__unlisten_stmt__unpack +PgQuery__OnConflictClause * + pg_query__on_conflict_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__unlisten_stmt__free_unpacked - (PgQuery__UnlistenStmt *message, +void pg_query__on_conflict_clause__free_unpacked + (PgQuery__OnConflictClause *message, ProtobufCAllocator *allocator); -/* PgQuery__TransactionStmt methods */ -void pg_query__transaction_stmt__init - (PgQuery__TransactionStmt *message); -size_t pg_query__transaction_stmt__get_packed_size - (const PgQuery__TransactionStmt *message); -size_t pg_query__transaction_stmt__pack - (const PgQuery__TransactionStmt *message, +/* PgQuery__CTESearchClause methods */ +void pg_query__ctesearch_clause__init + (PgQuery__CTESearchClause *message); +size_t pg_query__ctesearch_clause__get_packed_size + (const PgQuery__CTESearchClause *message); +size_t pg_query__ctesearch_clause__pack + (const PgQuery__CTESearchClause *message, uint8_t *out); -size_t pg_query__transaction_stmt__pack_to_buffer - (const PgQuery__TransactionStmt *message, +size_t pg_query__ctesearch_clause__pack_to_buffer + (const PgQuery__CTESearchClause *message, ProtobufCBuffer *buffer); -PgQuery__TransactionStmt * - pg_query__transaction_stmt__unpack +PgQuery__CTESearchClause * + pg_query__ctesearch_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__transaction_stmt__free_unpacked - (PgQuery__TransactionStmt *message, +void pg_query__ctesearch_clause__free_unpacked + (PgQuery__CTESearchClause *message, ProtobufCAllocator *allocator); -/* PgQuery__ViewStmt methods */ -void pg_query__view_stmt__init - (PgQuery__ViewStmt *message); -size_t pg_query__view_stmt__get_packed_size - (const PgQuery__ViewStmt *message); -size_t pg_query__view_stmt__pack - (const PgQuery__ViewStmt *message, +/* PgQuery__CTECycleClause methods */ +void pg_query__ctecycle_clause__init + (PgQuery__CTECycleClause *message); +size_t pg_query__ctecycle_clause__get_packed_size + (const PgQuery__CTECycleClause *message); +size_t pg_query__ctecycle_clause__pack + (const PgQuery__CTECycleClause *message, uint8_t *out); -size_t pg_query__view_stmt__pack_to_buffer - (const PgQuery__ViewStmt *message, +size_t pg_query__ctecycle_clause__pack_to_buffer + (const PgQuery__CTECycleClause *message, ProtobufCBuffer *buffer); -PgQuery__ViewStmt * - pg_query__view_stmt__unpack +PgQuery__CTECycleClause * + pg_query__ctecycle_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__view_stmt__free_unpacked - (PgQuery__ViewStmt *message, +void pg_query__ctecycle_clause__free_unpacked + (PgQuery__CTECycleClause *message, ProtobufCAllocator *allocator); -/* PgQuery__LoadStmt methods */ -void pg_query__load_stmt__init - (PgQuery__LoadStmt *message); -size_t pg_query__load_stmt__get_packed_size - (const PgQuery__LoadStmt *message); -size_t pg_query__load_stmt__pack - (const PgQuery__LoadStmt *message, +/* PgQuery__CommonTableExpr methods */ +void pg_query__common_table_expr__init + (PgQuery__CommonTableExpr *message); +size_t pg_query__common_table_expr__get_packed_size + (const PgQuery__CommonTableExpr *message); +size_t pg_query__common_table_expr__pack + (const PgQuery__CommonTableExpr *message, uint8_t *out); -size_t pg_query__load_stmt__pack_to_buffer - (const PgQuery__LoadStmt *message, +size_t pg_query__common_table_expr__pack_to_buffer + (const PgQuery__CommonTableExpr *message, ProtobufCBuffer *buffer); -PgQuery__LoadStmt * - pg_query__load_stmt__unpack +PgQuery__CommonTableExpr * + pg_query__common_table_expr__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__load_stmt__free_unpacked - (PgQuery__LoadStmt *message, +void pg_query__common_table_expr__free_unpacked + (PgQuery__CommonTableExpr *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateDomainStmt methods */ -void pg_query__create_domain_stmt__init - (PgQuery__CreateDomainStmt *message); -size_t pg_query__create_domain_stmt__get_packed_size - (const PgQuery__CreateDomainStmt *message); -size_t pg_query__create_domain_stmt__pack - (const PgQuery__CreateDomainStmt *message, +/* PgQuery__MergeWhenClause methods */ +void pg_query__merge_when_clause__init + (PgQuery__MergeWhenClause *message); +size_t pg_query__merge_when_clause__get_packed_size + (const PgQuery__MergeWhenClause *message); +size_t pg_query__merge_when_clause__pack + (const PgQuery__MergeWhenClause *message, uint8_t *out); -size_t pg_query__create_domain_stmt__pack_to_buffer - (const PgQuery__CreateDomainStmt *message, +size_t pg_query__merge_when_clause__pack_to_buffer + (const PgQuery__MergeWhenClause *message, ProtobufCBuffer *buffer); -PgQuery__CreateDomainStmt * - pg_query__create_domain_stmt__unpack +PgQuery__MergeWhenClause * + pg_query__merge_when_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_domain_stmt__free_unpacked - (PgQuery__CreateDomainStmt *message, +void pg_query__merge_when_clause__free_unpacked + (PgQuery__MergeWhenClause *message, ProtobufCAllocator *allocator); -/* PgQuery__CreatedbStmt methods */ -void pg_query__createdb_stmt__init - (PgQuery__CreatedbStmt *message); -size_t pg_query__createdb_stmt__get_packed_size - (const PgQuery__CreatedbStmt *message); -size_t pg_query__createdb_stmt__pack - (const PgQuery__CreatedbStmt *message, +/* PgQuery__MergeAction methods */ +void pg_query__merge_action__init + (PgQuery__MergeAction *message); +size_t pg_query__merge_action__get_packed_size + (const PgQuery__MergeAction *message); +size_t pg_query__merge_action__pack + (const PgQuery__MergeAction *message, uint8_t *out); -size_t pg_query__createdb_stmt__pack_to_buffer - (const PgQuery__CreatedbStmt *message, +size_t pg_query__merge_action__pack_to_buffer + (const PgQuery__MergeAction *message, ProtobufCBuffer *buffer); -PgQuery__CreatedbStmt * - pg_query__createdb_stmt__unpack +PgQuery__MergeAction * + pg_query__merge_action__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__createdb_stmt__free_unpacked - (PgQuery__CreatedbStmt *message, +void pg_query__merge_action__free_unpacked + (PgQuery__MergeAction *message, ProtobufCAllocator *allocator); -/* PgQuery__DropdbStmt methods */ -void pg_query__dropdb_stmt__init - (PgQuery__DropdbStmt *message); -size_t pg_query__dropdb_stmt__get_packed_size - (const PgQuery__DropdbStmt *message); -size_t pg_query__dropdb_stmt__pack - (const PgQuery__DropdbStmt *message, +/* PgQuery__TriggerTransition methods */ +void pg_query__trigger_transition__init + (PgQuery__TriggerTransition *message); +size_t pg_query__trigger_transition__get_packed_size + (const PgQuery__TriggerTransition *message); +size_t pg_query__trigger_transition__pack + (const PgQuery__TriggerTransition *message, uint8_t *out); -size_t pg_query__dropdb_stmt__pack_to_buffer - (const PgQuery__DropdbStmt *message, +size_t pg_query__trigger_transition__pack_to_buffer + (const PgQuery__TriggerTransition *message, ProtobufCBuffer *buffer); -PgQuery__DropdbStmt * - pg_query__dropdb_stmt__unpack +PgQuery__TriggerTransition * + pg_query__trigger_transition__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__dropdb_stmt__free_unpacked - (PgQuery__DropdbStmt *message, +void pg_query__trigger_transition__free_unpacked + (PgQuery__TriggerTransition *message, ProtobufCAllocator *allocator); -/* PgQuery__VacuumStmt methods */ -void pg_query__vacuum_stmt__init - (PgQuery__VacuumStmt *message); -size_t pg_query__vacuum_stmt__get_packed_size - (const PgQuery__VacuumStmt *message); -size_t pg_query__vacuum_stmt__pack - (const PgQuery__VacuumStmt *message, +/* PgQuery__JsonOutput methods */ +void pg_query__json_output__init + (PgQuery__JsonOutput *message); +size_t pg_query__json_output__get_packed_size + (const PgQuery__JsonOutput *message); +size_t pg_query__json_output__pack + (const PgQuery__JsonOutput *message, uint8_t *out); -size_t pg_query__vacuum_stmt__pack_to_buffer - (const PgQuery__VacuumStmt *message, +size_t pg_query__json_output__pack_to_buffer + (const PgQuery__JsonOutput *message, ProtobufCBuffer *buffer); -PgQuery__VacuumStmt * - pg_query__vacuum_stmt__unpack +PgQuery__JsonOutput * + pg_query__json_output__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__vacuum_stmt__free_unpacked - (PgQuery__VacuumStmt *message, +void pg_query__json_output__free_unpacked + (PgQuery__JsonOutput *message, ProtobufCAllocator *allocator); -/* PgQuery__ExplainStmt methods */ -void pg_query__explain_stmt__init - (PgQuery__ExplainStmt *message); -size_t pg_query__explain_stmt__get_packed_size - (const PgQuery__ExplainStmt *message); -size_t pg_query__explain_stmt__pack - (const PgQuery__ExplainStmt *message, +/* PgQuery__JsonKeyValue methods */ +void pg_query__json_key_value__init + (PgQuery__JsonKeyValue *message); +size_t pg_query__json_key_value__get_packed_size + (const PgQuery__JsonKeyValue *message); +size_t pg_query__json_key_value__pack + (const PgQuery__JsonKeyValue *message, uint8_t *out); -size_t pg_query__explain_stmt__pack_to_buffer - (const PgQuery__ExplainStmt *message, +size_t pg_query__json_key_value__pack_to_buffer + (const PgQuery__JsonKeyValue *message, ProtobufCBuffer *buffer); -PgQuery__ExplainStmt * - pg_query__explain_stmt__unpack +PgQuery__JsonKeyValue * + pg_query__json_key_value__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__explain_stmt__free_unpacked - (PgQuery__ExplainStmt *message, +void pg_query__json_key_value__free_unpacked + (PgQuery__JsonKeyValue *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateTableAsStmt methods */ -void pg_query__create_table_as_stmt__init - (PgQuery__CreateTableAsStmt *message); -size_t pg_query__create_table_as_stmt__get_packed_size - (const PgQuery__CreateTableAsStmt *message); -size_t pg_query__create_table_as_stmt__pack - (const PgQuery__CreateTableAsStmt *message, +/* PgQuery__JsonObjectConstructor methods */ +void pg_query__json_object_constructor__init + (PgQuery__JsonObjectConstructor *message); +size_t pg_query__json_object_constructor__get_packed_size + (const PgQuery__JsonObjectConstructor *message); +size_t pg_query__json_object_constructor__pack + (const PgQuery__JsonObjectConstructor *message, uint8_t *out); -size_t pg_query__create_table_as_stmt__pack_to_buffer - (const PgQuery__CreateTableAsStmt *message, +size_t pg_query__json_object_constructor__pack_to_buffer + (const PgQuery__JsonObjectConstructor *message, ProtobufCBuffer *buffer); -PgQuery__CreateTableAsStmt * - pg_query__create_table_as_stmt__unpack +PgQuery__JsonObjectConstructor * + pg_query__json_object_constructor__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_table_as_stmt__free_unpacked - (PgQuery__CreateTableAsStmt *message, +void pg_query__json_object_constructor__free_unpacked + (PgQuery__JsonObjectConstructor *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateSeqStmt methods */ -void pg_query__create_seq_stmt__init - (PgQuery__CreateSeqStmt *message); -size_t pg_query__create_seq_stmt__get_packed_size - (const PgQuery__CreateSeqStmt *message); -size_t pg_query__create_seq_stmt__pack - (const PgQuery__CreateSeqStmt *message, +/* PgQuery__JsonArrayConstructor methods */ +void pg_query__json_array_constructor__init + (PgQuery__JsonArrayConstructor *message); +size_t pg_query__json_array_constructor__get_packed_size + (const PgQuery__JsonArrayConstructor *message); +size_t pg_query__json_array_constructor__pack + (const PgQuery__JsonArrayConstructor *message, uint8_t *out); -size_t pg_query__create_seq_stmt__pack_to_buffer - (const PgQuery__CreateSeqStmt *message, +size_t pg_query__json_array_constructor__pack_to_buffer + (const PgQuery__JsonArrayConstructor *message, ProtobufCBuffer *buffer); -PgQuery__CreateSeqStmt * - pg_query__create_seq_stmt__unpack +PgQuery__JsonArrayConstructor * + pg_query__json_array_constructor__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_seq_stmt__free_unpacked - (PgQuery__CreateSeqStmt *message, +void pg_query__json_array_constructor__free_unpacked + (PgQuery__JsonArrayConstructor *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterSeqStmt methods */ -void pg_query__alter_seq_stmt__init - (PgQuery__AlterSeqStmt *message); -size_t pg_query__alter_seq_stmt__get_packed_size - (const PgQuery__AlterSeqStmt *message); -size_t pg_query__alter_seq_stmt__pack - (const PgQuery__AlterSeqStmt *message, +/* PgQuery__JsonArrayQueryConstructor methods */ +void pg_query__json_array_query_constructor__init + (PgQuery__JsonArrayQueryConstructor *message); +size_t pg_query__json_array_query_constructor__get_packed_size + (const PgQuery__JsonArrayQueryConstructor *message); +size_t pg_query__json_array_query_constructor__pack + (const PgQuery__JsonArrayQueryConstructor *message, uint8_t *out); -size_t pg_query__alter_seq_stmt__pack_to_buffer - (const PgQuery__AlterSeqStmt *message, +size_t pg_query__json_array_query_constructor__pack_to_buffer + (const PgQuery__JsonArrayQueryConstructor *message, ProtobufCBuffer *buffer); -PgQuery__AlterSeqStmt * - pg_query__alter_seq_stmt__unpack +PgQuery__JsonArrayQueryConstructor * + pg_query__json_array_query_constructor__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_seq_stmt__free_unpacked - (PgQuery__AlterSeqStmt *message, +void pg_query__json_array_query_constructor__free_unpacked + (PgQuery__JsonArrayQueryConstructor *message, ProtobufCAllocator *allocator); -/* PgQuery__VariableSetStmt methods */ -void pg_query__variable_set_stmt__init - (PgQuery__VariableSetStmt *message); -size_t pg_query__variable_set_stmt__get_packed_size - (const PgQuery__VariableSetStmt *message); -size_t pg_query__variable_set_stmt__pack - (const PgQuery__VariableSetStmt *message, +/* PgQuery__JsonAggConstructor methods */ +void pg_query__json_agg_constructor__init + (PgQuery__JsonAggConstructor *message); +size_t pg_query__json_agg_constructor__get_packed_size + (const PgQuery__JsonAggConstructor *message); +size_t pg_query__json_agg_constructor__pack + (const PgQuery__JsonAggConstructor *message, uint8_t *out); -size_t pg_query__variable_set_stmt__pack_to_buffer - (const PgQuery__VariableSetStmt *message, +size_t pg_query__json_agg_constructor__pack_to_buffer + (const PgQuery__JsonAggConstructor *message, ProtobufCBuffer *buffer); -PgQuery__VariableSetStmt * - pg_query__variable_set_stmt__unpack +PgQuery__JsonAggConstructor * + pg_query__json_agg_constructor__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__variable_set_stmt__free_unpacked - (PgQuery__VariableSetStmt *message, +void pg_query__json_agg_constructor__free_unpacked + (PgQuery__JsonAggConstructor *message, ProtobufCAllocator *allocator); -/* PgQuery__VariableShowStmt methods */ -void pg_query__variable_show_stmt__init - (PgQuery__VariableShowStmt *message); -size_t pg_query__variable_show_stmt__get_packed_size - (const PgQuery__VariableShowStmt *message); -size_t pg_query__variable_show_stmt__pack - (const PgQuery__VariableShowStmt *message, +/* PgQuery__JsonObjectAgg methods */ +void pg_query__json_object_agg__init + (PgQuery__JsonObjectAgg *message); +size_t pg_query__json_object_agg__get_packed_size + (const PgQuery__JsonObjectAgg *message); +size_t pg_query__json_object_agg__pack + (const PgQuery__JsonObjectAgg *message, uint8_t *out); -size_t pg_query__variable_show_stmt__pack_to_buffer - (const PgQuery__VariableShowStmt *message, +size_t pg_query__json_object_agg__pack_to_buffer + (const PgQuery__JsonObjectAgg *message, ProtobufCBuffer *buffer); -PgQuery__VariableShowStmt * - pg_query__variable_show_stmt__unpack +PgQuery__JsonObjectAgg * + pg_query__json_object_agg__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__variable_show_stmt__free_unpacked - (PgQuery__VariableShowStmt *message, +void pg_query__json_object_agg__free_unpacked + (PgQuery__JsonObjectAgg *message, ProtobufCAllocator *allocator); -/* PgQuery__DiscardStmt methods */ -void pg_query__discard_stmt__init - (PgQuery__DiscardStmt *message); -size_t pg_query__discard_stmt__get_packed_size - (const PgQuery__DiscardStmt *message); -size_t pg_query__discard_stmt__pack - (const PgQuery__DiscardStmt *message, +/* PgQuery__JsonArrayAgg methods */ +void pg_query__json_array_agg__init + (PgQuery__JsonArrayAgg *message); +size_t pg_query__json_array_agg__get_packed_size + (const PgQuery__JsonArrayAgg *message); +size_t pg_query__json_array_agg__pack + (const PgQuery__JsonArrayAgg *message, uint8_t *out); -size_t pg_query__discard_stmt__pack_to_buffer - (const PgQuery__DiscardStmt *message, +size_t pg_query__json_array_agg__pack_to_buffer + (const PgQuery__JsonArrayAgg *message, ProtobufCBuffer *buffer); -PgQuery__DiscardStmt * - pg_query__discard_stmt__unpack +PgQuery__JsonArrayAgg * + pg_query__json_array_agg__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__discard_stmt__free_unpacked - (PgQuery__DiscardStmt *message, +void pg_query__json_array_agg__free_unpacked + (PgQuery__JsonArrayAgg *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateTrigStmt methods */ -void pg_query__create_trig_stmt__init - (PgQuery__CreateTrigStmt *message); -size_t pg_query__create_trig_stmt__get_packed_size - (const PgQuery__CreateTrigStmt *message); -size_t pg_query__create_trig_stmt__pack - (const PgQuery__CreateTrigStmt *message, +/* PgQuery__RawStmt methods */ +void pg_query__raw_stmt__init + (PgQuery__RawStmt *message); +size_t pg_query__raw_stmt__get_packed_size + (const PgQuery__RawStmt *message); +size_t pg_query__raw_stmt__pack + (const PgQuery__RawStmt *message, uint8_t *out); -size_t pg_query__create_trig_stmt__pack_to_buffer - (const PgQuery__CreateTrigStmt *message, +size_t pg_query__raw_stmt__pack_to_buffer + (const PgQuery__RawStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateTrigStmt * - pg_query__create_trig_stmt__unpack +PgQuery__RawStmt * + pg_query__raw_stmt__unpack (ProtobufCAllocator *allocator, size_t len, - const uint8_t *data); -void pg_query__create_trig_stmt__free_unpacked - (PgQuery__CreateTrigStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__CreatePLangStmt methods */ -void pg_query__create_plang_stmt__init - (PgQuery__CreatePLangStmt *message); -size_t pg_query__create_plang_stmt__get_packed_size - (const PgQuery__CreatePLangStmt *message); -size_t pg_query__create_plang_stmt__pack - (const PgQuery__CreatePLangStmt *message, + const uint8_t *data); +void pg_query__raw_stmt__free_unpacked + (PgQuery__RawStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__InsertStmt methods */ +void pg_query__insert_stmt__init + (PgQuery__InsertStmt *message); +size_t pg_query__insert_stmt__get_packed_size + (const PgQuery__InsertStmt *message); +size_t pg_query__insert_stmt__pack + (const PgQuery__InsertStmt *message, uint8_t *out); -size_t pg_query__create_plang_stmt__pack_to_buffer - (const PgQuery__CreatePLangStmt *message, +size_t pg_query__insert_stmt__pack_to_buffer + (const PgQuery__InsertStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreatePLangStmt * - pg_query__create_plang_stmt__unpack +PgQuery__InsertStmt * + pg_query__insert_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_plang_stmt__free_unpacked - (PgQuery__CreatePLangStmt *message, +void pg_query__insert_stmt__free_unpacked + (PgQuery__InsertStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateRoleStmt methods */ -void pg_query__create_role_stmt__init - (PgQuery__CreateRoleStmt *message); -size_t pg_query__create_role_stmt__get_packed_size - (const PgQuery__CreateRoleStmt *message); -size_t pg_query__create_role_stmt__pack - (const PgQuery__CreateRoleStmt *message, +/* PgQuery__DeleteStmt methods */ +void pg_query__delete_stmt__init + (PgQuery__DeleteStmt *message); +size_t pg_query__delete_stmt__get_packed_size + (const PgQuery__DeleteStmt *message); +size_t pg_query__delete_stmt__pack + (const PgQuery__DeleteStmt *message, uint8_t *out); -size_t pg_query__create_role_stmt__pack_to_buffer - (const PgQuery__CreateRoleStmt *message, +size_t pg_query__delete_stmt__pack_to_buffer + (const PgQuery__DeleteStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateRoleStmt * - pg_query__create_role_stmt__unpack +PgQuery__DeleteStmt * + pg_query__delete_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_role_stmt__free_unpacked - (PgQuery__CreateRoleStmt *message, +void pg_query__delete_stmt__free_unpacked + (PgQuery__DeleteStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterRoleStmt methods */ -void pg_query__alter_role_stmt__init - (PgQuery__AlterRoleStmt *message); -size_t pg_query__alter_role_stmt__get_packed_size - (const PgQuery__AlterRoleStmt *message); -size_t pg_query__alter_role_stmt__pack - (const PgQuery__AlterRoleStmt *message, +/* PgQuery__UpdateStmt methods */ +void pg_query__update_stmt__init + (PgQuery__UpdateStmt *message); +size_t pg_query__update_stmt__get_packed_size + (const PgQuery__UpdateStmt *message); +size_t pg_query__update_stmt__pack + (const PgQuery__UpdateStmt *message, uint8_t *out); -size_t pg_query__alter_role_stmt__pack_to_buffer - (const PgQuery__AlterRoleStmt *message, +size_t pg_query__update_stmt__pack_to_buffer + (const PgQuery__UpdateStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterRoleStmt * - pg_query__alter_role_stmt__unpack +PgQuery__UpdateStmt * + pg_query__update_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_role_stmt__free_unpacked - (PgQuery__AlterRoleStmt *message, +void pg_query__update_stmt__free_unpacked + (PgQuery__UpdateStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__DropRoleStmt methods */ -void pg_query__drop_role_stmt__init - (PgQuery__DropRoleStmt *message); -size_t pg_query__drop_role_stmt__get_packed_size - (const PgQuery__DropRoleStmt *message); -size_t pg_query__drop_role_stmt__pack - (const PgQuery__DropRoleStmt *message, +/* PgQuery__MergeStmt methods */ +void pg_query__merge_stmt__init + (PgQuery__MergeStmt *message); +size_t pg_query__merge_stmt__get_packed_size + (const PgQuery__MergeStmt *message); +size_t pg_query__merge_stmt__pack + (const PgQuery__MergeStmt *message, uint8_t *out); -size_t pg_query__drop_role_stmt__pack_to_buffer - (const PgQuery__DropRoleStmt *message, +size_t pg_query__merge_stmt__pack_to_buffer + (const PgQuery__MergeStmt *message, ProtobufCBuffer *buffer); -PgQuery__DropRoleStmt * - pg_query__drop_role_stmt__unpack +PgQuery__MergeStmt * + pg_query__merge_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__drop_role_stmt__free_unpacked - (PgQuery__DropRoleStmt *message, +void pg_query__merge_stmt__free_unpacked + (PgQuery__MergeStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__LockStmt methods */ -void pg_query__lock_stmt__init - (PgQuery__LockStmt *message); -size_t pg_query__lock_stmt__get_packed_size - (const PgQuery__LockStmt *message); -size_t pg_query__lock_stmt__pack - (const PgQuery__LockStmt *message, +/* PgQuery__SelectStmt methods */ +void pg_query__select_stmt__init + (PgQuery__SelectStmt *message); +size_t pg_query__select_stmt__get_packed_size + (const PgQuery__SelectStmt *message); +size_t pg_query__select_stmt__pack + (const PgQuery__SelectStmt *message, uint8_t *out); -size_t pg_query__lock_stmt__pack_to_buffer - (const PgQuery__LockStmt *message, +size_t pg_query__select_stmt__pack_to_buffer + (const PgQuery__SelectStmt *message, ProtobufCBuffer *buffer); -PgQuery__LockStmt * - pg_query__lock_stmt__unpack +PgQuery__SelectStmt * + pg_query__select_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__lock_stmt__free_unpacked - (PgQuery__LockStmt *message, +void pg_query__select_stmt__free_unpacked + (PgQuery__SelectStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__ConstraintsSetStmt methods */ -void pg_query__constraints_set_stmt__init - (PgQuery__ConstraintsSetStmt *message); -size_t pg_query__constraints_set_stmt__get_packed_size - (const PgQuery__ConstraintsSetStmt *message); -size_t pg_query__constraints_set_stmt__pack - (const PgQuery__ConstraintsSetStmt *message, +/* PgQuery__SetOperationStmt methods */ +void pg_query__set_operation_stmt__init + (PgQuery__SetOperationStmt *message); +size_t pg_query__set_operation_stmt__get_packed_size + (const PgQuery__SetOperationStmt *message); +size_t pg_query__set_operation_stmt__pack + (const PgQuery__SetOperationStmt *message, uint8_t *out); -size_t pg_query__constraints_set_stmt__pack_to_buffer - (const PgQuery__ConstraintsSetStmt *message, +size_t pg_query__set_operation_stmt__pack_to_buffer + (const PgQuery__SetOperationStmt *message, ProtobufCBuffer *buffer); -PgQuery__ConstraintsSetStmt * - pg_query__constraints_set_stmt__unpack +PgQuery__SetOperationStmt * + pg_query__set_operation_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__constraints_set_stmt__free_unpacked - (PgQuery__ConstraintsSetStmt *message, +void pg_query__set_operation_stmt__free_unpacked + (PgQuery__SetOperationStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__ReindexStmt methods */ -void pg_query__reindex_stmt__init - (PgQuery__ReindexStmt *message); -size_t pg_query__reindex_stmt__get_packed_size - (const PgQuery__ReindexStmt *message); -size_t pg_query__reindex_stmt__pack - (const PgQuery__ReindexStmt *message, +/* PgQuery__ReturnStmt methods */ +void pg_query__return_stmt__init + (PgQuery__ReturnStmt *message); +size_t pg_query__return_stmt__get_packed_size + (const PgQuery__ReturnStmt *message); +size_t pg_query__return_stmt__pack + (const PgQuery__ReturnStmt *message, uint8_t *out); -size_t pg_query__reindex_stmt__pack_to_buffer - (const PgQuery__ReindexStmt *message, +size_t pg_query__return_stmt__pack_to_buffer + (const PgQuery__ReturnStmt *message, ProtobufCBuffer *buffer); -PgQuery__ReindexStmt * - pg_query__reindex_stmt__unpack +PgQuery__ReturnStmt * + pg_query__return_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__reindex_stmt__free_unpacked - (PgQuery__ReindexStmt *message, +void pg_query__return_stmt__free_unpacked + (PgQuery__ReturnStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CheckPointStmt methods */ -void pg_query__check_point_stmt__init - (PgQuery__CheckPointStmt *message); -size_t pg_query__check_point_stmt__get_packed_size - (const PgQuery__CheckPointStmt *message); -size_t pg_query__check_point_stmt__pack - (const PgQuery__CheckPointStmt *message, +/* PgQuery__PLAssignStmt methods */ +void pg_query__plassign_stmt__init + (PgQuery__PLAssignStmt *message); +size_t pg_query__plassign_stmt__get_packed_size + (const PgQuery__PLAssignStmt *message); +size_t pg_query__plassign_stmt__pack + (const PgQuery__PLAssignStmt *message, uint8_t *out); -size_t pg_query__check_point_stmt__pack_to_buffer - (const PgQuery__CheckPointStmt *message, +size_t pg_query__plassign_stmt__pack_to_buffer + (const PgQuery__PLAssignStmt *message, ProtobufCBuffer *buffer); -PgQuery__CheckPointStmt * - pg_query__check_point_stmt__unpack +PgQuery__PLAssignStmt * + pg_query__plassign_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__check_point_stmt__free_unpacked - (PgQuery__CheckPointStmt *message, +void pg_query__plassign_stmt__free_unpacked + (PgQuery__PLAssignStmt *message, ProtobufCAllocator *allocator); /* PgQuery__CreateSchemaStmt methods */ void pg_query__create_schema_stmt__init @@ -8016,252 +8575,290 @@ PgQuery__CreateSchemaStmt * void pg_query__create_schema_stmt__free_unpacked (PgQuery__CreateSchemaStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterDatabaseStmt methods */ -void pg_query__alter_database_stmt__init - (PgQuery__AlterDatabaseStmt *message); -size_t pg_query__alter_database_stmt__get_packed_size - (const PgQuery__AlterDatabaseStmt *message); -size_t pg_query__alter_database_stmt__pack - (const PgQuery__AlterDatabaseStmt *message, +/* PgQuery__AlterTableStmt methods */ +void pg_query__alter_table_stmt__init + (PgQuery__AlterTableStmt *message); +size_t pg_query__alter_table_stmt__get_packed_size + (const PgQuery__AlterTableStmt *message); +size_t pg_query__alter_table_stmt__pack + (const PgQuery__AlterTableStmt *message, + uint8_t *out); +size_t pg_query__alter_table_stmt__pack_to_buffer + (const PgQuery__AlterTableStmt *message, + ProtobufCBuffer *buffer); +PgQuery__AlterTableStmt * + pg_query__alter_table_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__alter_table_stmt__free_unpacked + (PgQuery__AlterTableStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__ReplicaIdentityStmt methods */ +void pg_query__replica_identity_stmt__init + (PgQuery__ReplicaIdentityStmt *message); +size_t pg_query__replica_identity_stmt__get_packed_size + (const PgQuery__ReplicaIdentityStmt *message); +size_t pg_query__replica_identity_stmt__pack + (const PgQuery__ReplicaIdentityStmt *message, + uint8_t *out); +size_t pg_query__replica_identity_stmt__pack_to_buffer + (const PgQuery__ReplicaIdentityStmt *message, + ProtobufCBuffer *buffer); +PgQuery__ReplicaIdentityStmt * + pg_query__replica_identity_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__replica_identity_stmt__free_unpacked + (PgQuery__ReplicaIdentityStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__AlterTableCmd methods */ +void pg_query__alter_table_cmd__init + (PgQuery__AlterTableCmd *message); +size_t pg_query__alter_table_cmd__get_packed_size + (const PgQuery__AlterTableCmd *message); +size_t pg_query__alter_table_cmd__pack + (const PgQuery__AlterTableCmd *message, uint8_t *out); -size_t pg_query__alter_database_stmt__pack_to_buffer - (const PgQuery__AlterDatabaseStmt *message, +size_t pg_query__alter_table_cmd__pack_to_buffer + (const PgQuery__AlterTableCmd *message, ProtobufCBuffer *buffer); -PgQuery__AlterDatabaseStmt * - pg_query__alter_database_stmt__unpack +PgQuery__AlterTableCmd * + pg_query__alter_table_cmd__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_database_stmt__free_unpacked - (PgQuery__AlterDatabaseStmt *message, +void pg_query__alter_table_cmd__free_unpacked + (PgQuery__AlterTableCmd *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterDatabaseRefreshCollStmt methods */ -void pg_query__alter_database_refresh_coll_stmt__init - (PgQuery__AlterDatabaseRefreshCollStmt *message); -size_t pg_query__alter_database_refresh_coll_stmt__get_packed_size - (const PgQuery__AlterDatabaseRefreshCollStmt *message); -size_t pg_query__alter_database_refresh_coll_stmt__pack - (const PgQuery__AlterDatabaseRefreshCollStmt *message, +/* PgQuery__AlterCollationStmt methods */ +void pg_query__alter_collation_stmt__init + (PgQuery__AlterCollationStmt *message); +size_t pg_query__alter_collation_stmt__get_packed_size + (const PgQuery__AlterCollationStmt *message); +size_t pg_query__alter_collation_stmt__pack + (const PgQuery__AlterCollationStmt *message, uint8_t *out); -size_t pg_query__alter_database_refresh_coll_stmt__pack_to_buffer - (const PgQuery__AlterDatabaseRefreshCollStmt *message, +size_t pg_query__alter_collation_stmt__pack_to_buffer + (const PgQuery__AlterCollationStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterDatabaseRefreshCollStmt * - pg_query__alter_database_refresh_coll_stmt__unpack +PgQuery__AlterCollationStmt * + pg_query__alter_collation_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_database_refresh_coll_stmt__free_unpacked - (PgQuery__AlterDatabaseRefreshCollStmt *message, +void pg_query__alter_collation_stmt__free_unpacked + (PgQuery__AlterCollationStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterDatabaseSetStmt methods */ -void pg_query__alter_database_set_stmt__init - (PgQuery__AlterDatabaseSetStmt *message); -size_t pg_query__alter_database_set_stmt__get_packed_size - (const PgQuery__AlterDatabaseSetStmt *message); -size_t pg_query__alter_database_set_stmt__pack - (const PgQuery__AlterDatabaseSetStmt *message, +/* PgQuery__AlterDomainStmt methods */ +void pg_query__alter_domain_stmt__init + (PgQuery__AlterDomainStmt *message); +size_t pg_query__alter_domain_stmt__get_packed_size + (const PgQuery__AlterDomainStmt *message); +size_t pg_query__alter_domain_stmt__pack + (const PgQuery__AlterDomainStmt *message, uint8_t *out); -size_t pg_query__alter_database_set_stmt__pack_to_buffer - (const PgQuery__AlterDatabaseSetStmt *message, +size_t pg_query__alter_domain_stmt__pack_to_buffer + (const PgQuery__AlterDomainStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterDatabaseSetStmt * - pg_query__alter_database_set_stmt__unpack +PgQuery__AlterDomainStmt * + pg_query__alter_domain_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_database_set_stmt__free_unpacked - (PgQuery__AlterDatabaseSetStmt *message, +void pg_query__alter_domain_stmt__free_unpacked + (PgQuery__AlterDomainStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterRoleSetStmt methods */ -void pg_query__alter_role_set_stmt__init - (PgQuery__AlterRoleSetStmt *message); -size_t pg_query__alter_role_set_stmt__get_packed_size - (const PgQuery__AlterRoleSetStmt *message); -size_t pg_query__alter_role_set_stmt__pack - (const PgQuery__AlterRoleSetStmt *message, +/* PgQuery__GrantStmt methods */ +void pg_query__grant_stmt__init + (PgQuery__GrantStmt *message); +size_t pg_query__grant_stmt__get_packed_size + (const PgQuery__GrantStmt *message); +size_t pg_query__grant_stmt__pack + (const PgQuery__GrantStmt *message, uint8_t *out); -size_t pg_query__alter_role_set_stmt__pack_to_buffer - (const PgQuery__AlterRoleSetStmt *message, +size_t pg_query__grant_stmt__pack_to_buffer + (const PgQuery__GrantStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterRoleSetStmt * - pg_query__alter_role_set_stmt__unpack +PgQuery__GrantStmt * + pg_query__grant_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_role_set_stmt__free_unpacked - (PgQuery__AlterRoleSetStmt *message, +void pg_query__grant_stmt__free_unpacked + (PgQuery__GrantStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateConversionStmt methods */ -void pg_query__create_conversion_stmt__init - (PgQuery__CreateConversionStmt *message); -size_t pg_query__create_conversion_stmt__get_packed_size - (const PgQuery__CreateConversionStmt *message); -size_t pg_query__create_conversion_stmt__pack - (const PgQuery__CreateConversionStmt *message, +/* PgQuery__ObjectWithArgs methods */ +void pg_query__object_with_args__init + (PgQuery__ObjectWithArgs *message); +size_t pg_query__object_with_args__get_packed_size + (const PgQuery__ObjectWithArgs *message); +size_t pg_query__object_with_args__pack + (const PgQuery__ObjectWithArgs *message, uint8_t *out); -size_t pg_query__create_conversion_stmt__pack_to_buffer - (const PgQuery__CreateConversionStmt *message, +size_t pg_query__object_with_args__pack_to_buffer + (const PgQuery__ObjectWithArgs *message, ProtobufCBuffer *buffer); -PgQuery__CreateConversionStmt * - pg_query__create_conversion_stmt__unpack +PgQuery__ObjectWithArgs * + pg_query__object_with_args__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_conversion_stmt__free_unpacked - (PgQuery__CreateConversionStmt *message, +void pg_query__object_with_args__free_unpacked + (PgQuery__ObjectWithArgs *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateCastStmt methods */ -void pg_query__create_cast_stmt__init - (PgQuery__CreateCastStmt *message); -size_t pg_query__create_cast_stmt__get_packed_size - (const PgQuery__CreateCastStmt *message); -size_t pg_query__create_cast_stmt__pack - (const PgQuery__CreateCastStmt *message, +/* PgQuery__AccessPriv methods */ +void pg_query__access_priv__init + (PgQuery__AccessPriv *message); +size_t pg_query__access_priv__get_packed_size + (const PgQuery__AccessPriv *message); +size_t pg_query__access_priv__pack + (const PgQuery__AccessPriv *message, uint8_t *out); -size_t pg_query__create_cast_stmt__pack_to_buffer - (const PgQuery__CreateCastStmt *message, +size_t pg_query__access_priv__pack_to_buffer + (const PgQuery__AccessPriv *message, ProtobufCBuffer *buffer); -PgQuery__CreateCastStmt * - pg_query__create_cast_stmt__unpack +PgQuery__AccessPriv * + pg_query__access_priv__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_cast_stmt__free_unpacked - (PgQuery__CreateCastStmt *message, +void pg_query__access_priv__free_unpacked + (PgQuery__AccessPriv *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateOpClassStmt methods */ -void pg_query__create_op_class_stmt__init - (PgQuery__CreateOpClassStmt *message); -size_t pg_query__create_op_class_stmt__get_packed_size - (const PgQuery__CreateOpClassStmt *message); -size_t pg_query__create_op_class_stmt__pack - (const PgQuery__CreateOpClassStmt *message, +/* PgQuery__GrantRoleStmt methods */ +void pg_query__grant_role_stmt__init + (PgQuery__GrantRoleStmt *message); +size_t pg_query__grant_role_stmt__get_packed_size + (const PgQuery__GrantRoleStmt *message); +size_t pg_query__grant_role_stmt__pack + (const PgQuery__GrantRoleStmt *message, uint8_t *out); -size_t pg_query__create_op_class_stmt__pack_to_buffer - (const PgQuery__CreateOpClassStmt *message, +size_t pg_query__grant_role_stmt__pack_to_buffer + (const PgQuery__GrantRoleStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateOpClassStmt * - pg_query__create_op_class_stmt__unpack +PgQuery__GrantRoleStmt * + pg_query__grant_role_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_op_class_stmt__free_unpacked - (PgQuery__CreateOpClassStmt *message, +void pg_query__grant_role_stmt__free_unpacked + (PgQuery__GrantRoleStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateOpFamilyStmt methods */ -void pg_query__create_op_family_stmt__init - (PgQuery__CreateOpFamilyStmt *message); -size_t pg_query__create_op_family_stmt__get_packed_size - (const PgQuery__CreateOpFamilyStmt *message); -size_t pg_query__create_op_family_stmt__pack - (const PgQuery__CreateOpFamilyStmt *message, +/* PgQuery__AlterDefaultPrivilegesStmt methods */ +void pg_query__alter_default_privileges_stmt__init + (PgQuery__AlterDefaultPrivilegesStmt *message); +size_t pg_query__alter_default_privileges_stmt__get_packed_size + (const PgQuery__AlterDefaultPrivilegesStmt *message); +size_t pg_query__alter_default_privileges_stmt__pack + (const PgQuery__AlterDefaultPrivilegesStmt *message, uint8_t *out); -size_t pg_query__create_op_family_stmt__pack_to_buffer - (const PgQuery__CreateOpFamilyStmt *message, +size_t pg_query__alter_default_privileges_stmt__pack_to_buffer + (const PgQuery__AlterDefaultPrivilegesStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateOpFamilyStmt * - pg_query__create_op_family_stmt__unpack +PgQuery__AlterDefaultPrivilegesStmt * + pg_query__alter_default_privileges_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_op_family_stmt__free_unpacked - (PgQuery__CreateOpFamilyStmt *message, +void pg_query__alter_default_privileges_stmt__free_unpacked + (PgQuery__AlterDefaultPrivilegesStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterOpFamilyStmt methods */ -void pg_query__alter_op_family_stmt__init - (PgQuery__AlterOpFamilyStmt *message); -size_t pg_query__alter_op_family_stmt__get_packed_size - (const PgQuery__AlterOpFamilyStmt *message); -size_t pg_query__alter_op_family_stmt__pack - (const PgQuery__AlterOpFamilyStmt *message, +/* PgQuery__CopyStmt methods */ +void pg_query__copy_stmt__init + (PgQuery__CopyStmt *message); +size_t pg_query__copy_stmt__get_packed_size + (const PgQuery__CopyStmt *message); +size_t pg_query__copy_stmt__pack + (const PgQuery__CopyStmt *message, uint8_t *out); -size_t pg_query__alter_op_family_stmt__pack_to_buffer - (const PgQuery__AlterOpFamilyStmt *message, +size_t pg_query__copy_stmt__pack_to_buffer + (const PgQuery__CopyStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterOpFamilyStmt * - pg_query__alter_op_family_stmt__unpack +PgQuery__CopyStmt * + pg_query__copy_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_op_family_stmt__free_unpacked - (PgQuery__AlterOpFamilyStmt *message, +void pg_query__copy_stmt__free_unpacked + (PgQuery__CopyStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__PrepareStmt methods */ -void pg_query__prepare_stmt__init - (PgQuery__PrepareStmt *message); -size_t pg_query__prepare_stmt__get_packed_size - (const PgQuery__PrepareStmt *message); -size_t pg_query__prepare_stmt__pack - (const PgQuery__PrepareStmt *message, +/* PgQuery__VariableSetStmt methods */ +void pg_query__variable_set_stmt__init + (PgQuery__VariableSetStmt *message); +size_t pg_query__variable_set_stmt__get_packed_size + (const PgQuery__VariableSetStmt *message); +size_t pg_query__variable_set_stmt__pack + (const PgQuery__VariableSetStmt *message, uint8_t *out); -size_t pg_query__prepare_stmt__pack_to_buffer - (const PgQuery__PrepareStmt *message, +size_t pg_query__variable_set_stmt__pack_to_buffer + (const PgQuery__VariableSetStmt *message, ProtobufCBuffer *buffer); -PgQuery__PrepareStmt * - pg_query__prepare_stmt__unpack +PgQuery__VariableSetStmt * + pg_query__variable_set_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__prepare_stmt__free_unpacked - (PgQuery__PrepareStmt *message, +void pg_query__variable_set_stmt__free_unpacked + (PgQuery__VariableSetStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__ExecuteStmt methods */ -void pg_query__execute_stmt__init - (PgQuery__ExecuteStmt *message); -size_t pg_query__execute_stmt__get_packed_size - (const PgQuery__ExecuteStmt *message); -size_t pg_query__execute_stmt__pack - (const PgQuery__ExecuteStmt *message, +/* PgQuery__VariableShowStmt methods */ +void pg_query__variable_show_stmt__init + (PgQuery__VariableShowStmt *message); +size_t pg_query__variable_show_stmt__get_packed_size + (const PgQuery__VariableShowStmt *message); +size_t pg_query__variable_show_stmt__pack + (const PgQuery__VariableShowStmt *message, uint8_t *out); -size_t pg_query__execute_stmt__pack_to_buffer - (const PgQuery__ExecuteStmt *message, +size_t pg_query__variable_show_stmt__pack_to_buffer + (const PgQuery__VariableShowStmt *message, ProtobufCBuffer *buffer); -PgQuery__ExecuteStmt * - pg_query__execute_stmt__unpack +PgQuery__VariableShowStmt * + pg_query__variable_show_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__execute_stmt__free_unpacked - (PgQuery__ExecuteStmt *message, +void pg_query__variable_show_stmt__free_unpacked + (PgQuery__VariableShowStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__DeallocateStmt methods */ -void pg_query__deallocate_stmt__init - (PgQuery__DeallocateStmt *message); -size_t pg_query__deallocate_stmt__get_packed_size - (const PgQuery__DeallocateStmt *message); -size_t pg_query__deallocate_stmt__pack - (const PgQuery__DeallocateStmt *message, +/* PgQuery__CreateStmt methods */ +void pg_query__create_stmt__init + (PgQuery__CreateStmt *message); +size_t pg_query__create_stmt__get_packed_size + (const PgQuery__CreateStmt *message); +size_t pg_query__create_stmt__pack + (const PgQuery__CreateStmt *message, uint8_t *out); -size_t pg_query__deallocate_stmt__pack_to_buffer - (const PgQuery__DeallocateStmt *message, +size_t pg_query__create_stmt__pack_to_buffer + (const PgQuery__CreateStmt *message, ProtobufCBuffer *buffer); -PgQuery__DeallocateStmt * - pg_query__deallocate_stmt__unpack +PgQuery__CreateStmt * + pg_query__create_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__deallocate_stmt__free_unpacked - (PgQuery__DeallocateStmt *message, +void pg_query__create_stmt__free_unpacked + (PgQuery__CreateStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__DeclareCursorStmt methods */ -void pg_query__declare_cursor_stmt__init - (PgQuery__DeclareCursorStmt *message); -size_t pg_query__declare_cursor_stmt__get_packed_size - (const PgQuery__DeclareCursorStmt *message); -size_t pg_query__declare_cursor_stmt__pack - (const PgQuery__DeclareCursorStmt *message, +/* PgQuery__Constraint methods */ +void pg_query__constraint__init + (PgQuery__Constraint *message); +size_t pg_query__constraint__get_packed_size + (const PgQuery__Constraint *message); +size_t pg_query__constraint__pack + (const PgQuery__Constraint *message, uint8_t *out); -size_t pg_query__declare_cursor_stmt__pack_to_buffer - (const PgQuery__DeclareCursorStmt *message, +size_t pg_query__constraint__pack_to_buffer + (const PgQuery__Constraint *message, ProtobufCBuffer *buffer); -PgQuery__DeclareCursorStmt * - pg_query__declare_cursor_stmt__unpack +PgQuery__Constraint * + pg_query__constraint__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__declare_cursor_stmt__free_unpacked - (PgQuery__DeclareCursorStmt *message, +void pg_query__constraint__free_unpacked + (PgQuery__Constraint *message, ProtobufCAllocator *allocator); /* PgQuery__CreateTableSpaceStmt methods */ void pg_query__create_table_space_stmt__init @@ -8301,252 +8898,100 @@ PgQuery__DropTableSpaceStmt * void pg_query__drop_table_space_stmt__free_unpacked (PgQuery__DropTableSpaceStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterObjectDependsStmt methods */ -void pg_query__alter_object_depends_stmt__init - (PgQuery__AlterObjectDependsStmt *message); -size_t pg_query__alter_object_depends_stmt__get_packed_size - (const PgQuery__AlterObjectDependsStmt *message); -size_t pg_query__alter_object_depends_stmt__pack - (const PgQuery__AlterObjectDependsStmt *message, - uint8_t *out); -size_t pg_query__alter_object_depends_stmt__pack_to_buffer - (const PgQuery__AlterObjectDependsStmt *message, - ProtobufCBuffer *buffer); -PgQuery__AlterObjectDependsStmt * - pg_query__alter_object_depends_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__alter_object_depends_stmt__free_unpacked - (PgQuery__AlterObjectDependsStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__AlterObjectSchemaStmt methods */ -void pg_query__alter_object_schema_stmt__init - (PgQuery__AlterObjectSchemaStmt *message); -size_t pg_query__alter_object_schema_stmt__get_packed_size - (const PgQuery__AlterObjectSchemaStmt *message); -size_t pg_query__alter_object_schema_stmt__pack - (const PgQuery__AlterObjectSchemaStmt *message, - uint8_t *out); -size_t pg_query__alter_object_schema_stmt__pack_to_buffer - (const PgQuery__AlterObjectSchemaStmt *message, - ProtobufCBuffer *buffer); -PgQuery__AlterObjectSchemaStmt * - pg_query__alter_object_schema_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__alter_object_schema_stmt__free_unpacked - (PgQuery__AlterObjectSchemaStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__AlterOwnerStmt methods */ -void pg_query__alter_owner_stmt__init - (PgQuery__AlterOwnerStmt *message); -size_t pg_query__alter_owner_stmt__get_packed_size - (const PgQuery__AlterOwnerStmt *message); -size_t pg_query__alter_owner_stmt__pack - (const PgQuery__AlterOwnerStmt *message, - uint8_t *out); -size_t pg_query__alter_owner_stmt__pack_to_buffer - (const PgQuery__AlterOwnerStmt *message, - ProtobufCBuffer *buffer); -PgQuery__AlterOwnerStmt * - pg_query__alter_owner_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__alter_owner_stmt__free_unpacked - (PgQuery__AlterOwnerStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__AlterOperatorStmt methods */ -void pg_query__alter_operator_stmt__init - (PgQuery__AlterOperatorStmt *message); -size_t pg_query__alter_operator_stmt__get_packed_size - (const PgQuery__AlterOperatorStmt *message); -size_t pg_query__alter_operator_stmt__pack - (const PgQuery__AlterOperatorStmt *message, - uint8_t *out); -size_t pg_query__alter_operator_stmt__pack_to_buffer - (const PgQuery__AlterOperatorStmt *message, - ProtobufCBuffer *buffer); -PgQuery__AlterOperatorStmt * - pg_query__alter_operator_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__alter_operator_stmt__free_unpacked - (PgQuery__AlterOperatorStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__AlterTypeStmt methods */ -void pg_query__alter_type_stmt__init - (PgQuery__AlterTypeStmt *message); -size_t pg_query__alter_type_stmt__get_packed_size - (const PgQuery__AlterTypeStmt *message); -size_t pg_query__alter_type_stmt__pack - (const PgQuery__AlterTypeStmt *message, - uint8_t *out); -size_t pg_query__alter_type_stmt__pack_to_buffer - (const PgQuery__AlterTypeStmt *message, - ProtobufCBuffer *buffer); -PgQuery__AlterTypeStmt * - pg_query__alter_type_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__alter_type_stmt__free_unpacked - (PgQuery__AlterTypeStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__DropOwnedStmt methods */ -void pg_query__drop_owned_stmt__init - (PgQuery__DropOwnedStmt *message); -size_t pg_query__drop_owned_stmt__get_packed_size - (const PgQuery__DropOwnedStmt *message); -size_t pg_query__drop_owned_stmt__pack - (const PgQuery__DropOwnedStmt *message, - uint8_t *out); -size_t pg_query__drop_owned_stmt__pack_to_buffer - (const PgQuery__DropOwnedStmt *message, - ProtobufCBuffer *buffer); -PgQuery__DropOwnedStmt * - pg_query__drop_owned_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__drop_owned_stmt__free_unpacked - (PgQuery__DropOwnedStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__ReassignOwnedStmt methods */ -void pg_query__reassign_owned_stmt__init - (PgQuery__ReassignOwnedStmt *message); -size_t pg_query__reassign_owned_stmt__get_packed_size - (const PgQuery__ReassignOwnedStmt *message); -size_t pg_query__reassign_owned_stmt__pack - (const PgQuery__ReassignOwnedStmt *message, - uint8_t *out); -size_t pg_query__reassign_owned_stmt__pack_to_buffer - (const PgQuery__ReassignOwnedStmt *message, - ProtobufCBuffer *buffer); -PgQuery__ReassignOwnedStmt * - pg_query__reassign_owned_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__reassign_owned_stmt__free_unpacked - (PgQuery__ReassignOwnedStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__CompositeTypeStmt methods */ -void pg_query__composite_type_stmt__init - (PgQuery__CompositeTypeStmt *message); -size_t pg_query__composite_type_stmt__get_packed_size - (const PgQuery__CompositeTypeStmt *message); -size_t pg_query__composite_type_stmt__pack - (const PgQuery__CompositeTypeStmt *message, - uint8_t *out); -size_t pg_query__composite_type_stmt__pack_to_buffer - (const PgQuery__CompositeTypeStmt *message, - ProtobufCBuffer *buffer); -PgQuery__CompositeTypeStmt * - pg_query__composite_type_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__composite_type_stmt__free_unpacked - (PgQuery__CompositeTypeStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__CreateEnumStmt methods */ -void pg_query__create_enum_stmt__init - (PgQuery__CreateEnumStmt *message); -size_t pg_query__create_enum_stmt__get_packed_size - (const PgQuery__CreateEnumStmt *message); -size_t pg_query__create_enum_stmt__pack - (const PgQuery__CreateEnumStmt *message, +/* PgQuery__AlterTableSpaceOptionsStmt methods */ +void pg_query__alter_table_space_options_stmt__init + (PgQuery__AlterTableSpaceOptionsStmt *message); +size_t pg_query__alter_table_space_options_stmt__get_packed_size + (const PgQuery__AlterTableSpaceOptionsStmt *message); +size_t pg_query__alter_table_space_options_stmt__pack + (const PgQuery__AlterTableSpaceOptionsStmt *message, uint8_t *out); -size_t pg_query__create_enum_stmt__pack_to_buffer - (const PgQuery__CreateEnumStmt *message, +size_t pg_query__alter_table_space_options_stmt__pack_to_buffer + (const PgQuery__AlterTableSpaceOptionsStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateEnumStmt * - pg_query__create_enum_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__create_enum_stmt__free_unpacked - (PgQuery__CreateEnumStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__CreateRangeStmt methods */ -void pg_query__create_range_stmt__init - (PgQuery__CreateRangeStmt *message); -size_t pg_query__create_range_stmt__get_packed_size - (const PgQuery__CreateRangeStmt *message); -size_t pg_query__create_range_stmt__pack - (const PgQuery__CreateRangeStmt *message, +PgQuery__AlterTableSpaceOptionsStmt * + pg_query__alter_table_space_options_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__alter_table_space_options_stmt__free_unpacked + (PgQuery__AlterTableSpaceOptionsStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__AlterTableMoveAllStmt methods */ +void pg_query__alter_table_move_all_stmt__init + (PgQuery__AlterTableMoveAllStmt *message); +size_t pg_query__alter_table_move_all_stmt__get_packed_size + (const PgQuery__AlterTableMoveAllStmt *message); +size_t pg_query__alter_table_move_all_stmt__pack + (const PgQuery__AlterTableMoveAllStmt *message, uint8_t *out); -size_t pg_query__create_range_stmt__pack_to_buffer - (const PgQuery__CreateRangeStmt *message, +size_t pg_query__alter_table_move_all_stmt__pack_to_buffer + (const PgQuery__AlterTableMoveAllStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateRangeStmt * - pg_query__create_range_stmt__unpack +PgQuery__AlterTableMoveAllStmt * + pg_query__alter_table_move_all_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_range_stmt__free_unpacked - (PgQuery__CreateRangeStmt *message, +void pg_query__alter_table_move_all_stmt__free_unpacked + (PgQuery__AlterTableMoveAllStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterEnumStmt methods */ -void pg_query__alter_enum_stmt__init - (PgQuery__AlterEnumStmt *message); -size_t pg_query__alter_enum_stmt__get_packed_size - (const PgQuery__AlterEnumStmt *message); -size_t pg_query__alter_enum_stmt__pack - (const PgQuery__AlterEnumStmt *message, +/* PgQuery__CreateExtensionStmt methods */ +void pg_query__create_extension_stmt__init + (PgQuery__CreateExtensionStmt *message); +size_t pg_query__create_extension_stmt__get_packed_size + (const PgQuery__CreateExtensionStmt *message); +size_t pg_query__create_extension_stmt__pack + (const PgQuery__CreateExtensionStmt *message, uint8_t *out); -size_t pg_query__alter_enum_stmt__pack_to_buffer - (const PgQuery__AlterEnumStmt *message, +size_t pg_query__create_extension_stmt__pack_to_buffer + (const PgQuery__CreateExtensionStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterEnumStmt * - pg_query__alter_enum_stmt__unpack +PgQuery__CreateExtensionStmt * + pg_query__create_extension_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_enum_stmt__free_unpacked - (PgQuery__AlterEnumStmt *message, +void pg_query__create_extension_stmt__free_unpacked + (PgQuery__CreateExtensionStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterTSDictionaryStmt methods */ -void pg_query__alter_tsdictionary_stmt__init - (PgQuery__AlterTSDictionaryStmt *message); -size_t pg_query__alter_tsdictionary_stmt__get_packed_size - (const PgQuery__AlterTSDictionaryStmt *message); -size_t pg_query__alter_tsdictionary_stmt__pack - (const PgQuery__AlterTSDictionaryStmt *message, +/* PgQuery__AlterExtensionStmt methods */ +void pg_query__alter_extension_stmt__init + (PgQuery__AlterExtensionStmt *message); +size_t pg_query__alter_extension_stmt__get_packed_size + (const PgQuery__AlterExtensionStmt *message); +size_t pg_query__alter_extension_stmt__pack + (const PgQuery__AlterExtensionStmt *message, uint8_t *out); -size_t pg_query__alter_tsdictionary_stmt__pack_to_buffer - (const PgQuery__AlterTSDictionaryStmt *message, +size_t pg_query__alter_extension_stmt__pack_to_buffer + (const PgQuery__AlterExtensionStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterTSDictionaryStmt * - pg_query__alter_tsdictionary_stmt__unpack +PgQuery__AlterExtensionStmt * + pg_query__alter_extension_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_tsdictionary_stmt__free_unpacked - (PgQuery__AlterTSDictionaryStmt *message, +void pg_query__alter_extension_stmt__free_unpacked + (PgQuery__AlterExtensionStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterTSConfigurationStmt methods */ -void pg_query__alter_tsconfiguration_stmt__init - (PgQuery__AlterTSConfigurationStmt *message); -size_t pg_query__alter_tsconfiguration_stmt__get_packed_size - (const PgQuery__AlterTSConfigurationStmt *message); -size_t pg_query__alter_tsconfiguration_stmt__pack - (const PgQuery__AlterTSConfigurationStmt *message, +/* PgQuery__AlterExtensionContentsStmt methods */ +void pg_query__alter_extension_contents_stmt__init + (PgQuery__AlterExtensionContentsStmt *message); +size_t pg_query__alter_extension_contents_stmt__get_packed_size + (const PgQuery__AlterExtensionContentsStmt *message); +size_t pg_query__alter_extension_contents_stmt__pack + (const PgQuery__AlterExtensionContentsStmt *message, uint8_t *out); -size_t pg_query__alter_tsconfiguration_stmt__pack_to_buffer - (const PgQuery__AlterTSConfigurationStmt *message, +size_t pg_query__alter_extension_contents_stmt__pack_to_buffer + (const PgQuery__AlterExtensionContentsStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterTSConfigurationStmt * - pg_query__alter_tsconfiguration_stmt__unpack +PgQuery__AlterExtensionContentsStmt * + pg_query__alter_extension_contents_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_tsconfiguration_stmt__free_unpacked - (PgQuery__AlterTSConfigurationStmt *message, +void pg_query__alter_extension_contents_stmt__free_unpacked + (PgQuery__AlterExtensionContentsStmt *message, ProtobufCAllocator *allocator); /* PgQuery__CreateFdwStmt methods */ void pg_query__create_fdw_stmt__init @@ -8624,6 +9069,25 @@ PgQuery__AlterForeignServerStmt * void pg_query__alter_foreign_server_stmt__free_unpacked (PgQuery__AlterForeignServerStmt *message, ProtobufCAllocator *allocator); +/* PgQuery__CreateForeignTableStmt methods */ +void pg_query__create_foreign_table_stmt__init + (PgQuery__CreateForeignTableStmt *message); +size_t pg_query__create_foreign_table_stmt__get_packed_size + (const PgQuery__CreateForeignTableStmt *message); +size_t pg_query__create_foreign_table_stmt__pack + (const PgQuery__CreateForeignTableStmt *message, + uint8_t *out); +size_t pg_query__create_foreign_table_stmt__pack_to_buffer + (const PgQuery__CreateForeignTableStmt *message, + ProtobufCBuffer *buffer); +PgQuery__CreateForeignTableStmt * + pg_query__create_foreign_table_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__create_foreign_table_stmt__free_unpacked + (PgQuery__CreateForeignTableStmt *message, + ProtobufCAllocator *allocator); /* PgQuery__CreateUserMappingStmt methods */ void pg_query__create_user_mapping_stmt__init (PgQuery__CreateUserMappingStmt *message); @@ -8681,423 +9145,537 @@ PgQuery__DropUserMappingStmt * void pg_query__drop_user_mapping_stmt__free_unpacked (PgQuery__DropUserMappingStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterTableSpaceOptionsStmt methods */ -void pg_query__alter_table_space_options_stmt__init - (PgQuery__AlterTableSpaceOptionsStmt *message); -size_t pg_query__alter_table_space_options_stmt__get_packed_size - (const PgQuery__AlterTableSpaceOptionsStmt *message); -size_t pg_query__alter_table_space_options_stmt__pack - (const PgQuery__AlterTableSpaceOptionsStmt *message, +/* PgQuery__ImportForeignSchemaStmt methods */ +void pg_query__import_foreign_schema_stmt__init + (PgQuery__ImportForeignSchemaStmt *message); +size_t pg_query__import_foreign_schema_stmt__get_packed_size + (const PgQuery__ImportForeignSchemaStmt *message); +size_t pg_query__import_foreign_schema_stmt__pack + (const PgQuery__ImportForeignSchemaStmt *message, uint8_t *out); -size_t pg_query__alter_table_space_options_stmt__pack_to_buffer - (const PgQuery__AlterTableSpaceOptionsStmt *message, +size_t pg_query__import_foreign_schema_stmt__pack_to_buffer + (const PgQuery__ImportForeignSchemaStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterTableSpaceOptionsStmt * - pg_query__alter_table_space_options_stmt__unpack +PgQuery__ImportForeignSchemaStmt * + pg_query__import_foreign_schema_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__import_foreign_schema_stmt__free_unpacked + (PgQuery__ImportForeignSchemaStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__CreatePolicyStmt methods */ +void pg_query__create_policy_stmt__init + (PgQuery__CreatePolicyStmt *message); +size_t pg_query__create_policy_stmt__get_packed_size + (const PgQuery__CreatePolicyStmt *message); +size_t pg_query__create_policy_stmt__pack + (const PgQuery__CreatePolicyStmt *message, + uint8_t *out); +size_t pg_query__create_policy_stmt__pack_to_buffer + (const PgQuery__CreatePolicyStmt *message, + ProtobufCBuffer *buffer); +PgQuery__CreatePolicyStmt * + pg_query__create_policy_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__create_policy_stmt__free_unpacked + (PgQuery__CreatePolicyStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__AlterPolicyStmt methods */ +void pg_query__alter_policy_stmt__init + (PgQuery__AlterPolicyStmt *message); +size_t pg_query__alter_policy_stmt__get_packed_size + (const PgQuery__AlterPolicyStmt *message); +size_t pg_query__alter_policy_stmt__pack + (const PgQuery__AlterPolicyStmt *message, + uint8_t *out); +size_t pg_query__alter_policy_stmt__pack_to_buffer + (const PgQuery__AlterPolicyStmt *message, + ProtobufCBuffer *buffer); +PgQuery__AlterPolicyStmt * + pg_query__alter_policy_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__alter_policy_stmt__free_unpacked + (PgQuery__AlterPolicyStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__CreateAmStmt methods */ +void pg_query__create_am_stmt__init + (PgQuery__CreateAmStmt *message); +size_t pg_query__create_am_stmt__get_packed_size + (const PgQuery__CreateAmStmt *message); +size_t pg_query__create_am_stmt__pack + (const PgQuery__CreateAmStmt *message, + uint8_t *out); +size_t pg_query__create_am_stmt__pack_to_buffer + (const PgQuery__CreateAmStmt *message, + ProtobufCBuffer *buffer); +PgQuery__CreateAmStmt * + pg_query__create_am_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__create_am_stmt__free_unpacked + (PgQuery__CreateAmStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__CreateTrigStmt methods */ +void pg_query__create_trig_stmt__init + (PgQuery__CreateTrigStmt *message); +size_t pg_query__create_trig_stmt__get_packed_size + (const PgQuery__CreateTrigStmt *message); +size_t pg_query__create_trig_stmt__pack + (const PgQuery__CreateTrigStmt *message, + uint8_t *out); +size_t pg_query__create_trig_stmt__pack_to_buffer + (const PgQuery__CreateTrigStmt *message, + ProtobufCBuffer *buffer); +PgQuery__CreateTrigStmt * + pg_query__create_trig_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__create_trig_stmt__free_unpacked + (PgQuery__CreateTrigStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__CreateEventTrigStmt methods */ +void pg_query__create_event_trig_stmt__init + (PgQuery__CreateEventTrigStmt *message); +size_t pg_query__create_event_trig_stmt__get_packed_size + (const PgQuery__CreateEventTrigStmt *message); +size_t pg_query__create_event_trig_stmt__pack + (const PgQuery__CreateEventTrigStmt *message, + uint8_t *out); +size_t pg_query__create_event_trig_stmt__pack_to_buffer + (const PgQuery__CreateEventTrigStmt *message, + ProtobufCBuffer *buffer); +PgQuery__CreateEventTrigStmt * + pg_query__create_event_trig_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__create_event_trig_stmt__free_unpacked + (PgQuery__CreateEventTrigStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__AlterEventTrigStmt methods */ +void pg_query__alter_event_trig_stmt__init + (PgQuery__AlterEventTrigStmt *message); +size_t pg_query__alter_event_trig_stmt__get_packed_size + (const PgQuery__AlterEventTrigStmt *message); +size_t pg_query__alter_event_trig_stmt__pack + (const PgQuery__AlterEventTrigStmt *message, + uint8_t *out); +size_t pg_query__alter_event_trig_stmt__pack_to_buffer + (const PgQuery__AlterEventTrigStmt *message, + ProtobufCBuffer *buffer); +PgQuery__AlterEventTrigStmt * + pg_query__alter_event_trig_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_table_space_options_stmt__free_unpacked - (PgQuery__AlterTableSpaceOptionsStmt *message, +void pg_query__alter_event_trig_stmt__free_unpacked + (PgQuery__AlterEventTrigStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterTableMoveAllStmt methods */ -void pg_query__alter_table_move_all_stmt__init - (PgQuery__AlterTableMoveAllStmt *message); -size_t pg_query__alter_table_move_all_stmt__get_packed_size - (const PgQuery__AlterTableMoveAllStmt *message); -size_t pg_query__alter_table_move_all_stmt__pack - (const PgQuery__AlterTableMoveAllStmt *message, +/* PgQuery__CreatePLangStmt methods */ +void pg_query__create_plang_stmt__init + (PgQuery__CreatePLangStmt *message); +size_t pg_query__create_plang_stmt__get_packed_size + (const PgQuery__CreatePLangStmt *message); +size_t pg_query__create_plang_stmt__pack + (const PgQuery__CreatePLangStmt *message, uint8_t *out); -size_t pg_query__alter_table_move_all_stmt__pack_to_buffer - (const PgQuery__AlterTableMoveAllStmt *message, +size_t pg_query__create_plang_stmt__pack_to_buffer + (const PgQuery__CreatePLangStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterTableMoveAllStmt * - pg_query__alter_table_move_all_stmt__unpack +PgQuery__CreatePLangStmt * + pg_query__create_plang_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_table_move_all_stmt__free_unpacked - (PgQuery__AlterTableMoveAllStmt *message, +void pg_query__create_plang_stmt__free_unpacked + (PgQuery__CreatePLangStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__SecLabelStmt methods */ -void pg_query__sec_label_stmt__init - (PgQuery__SecLabelStmt *message); -size_t pg_query__sec_label_stmt__get_packed_size - (const PgQuery__SecLabelStmt *message); -size_t pg_query__sec_label_stmt__pack - (const PgQuery__SecLabelStmt *message, +/* PgQuery__CreateRoleStmt methods */ +void pg_query__create_role_stmt__init + (PgQuery__CreateRoleStmt *message); +size_t pg_query__create_role_stmt__get_packed_size + (const PgQuery__CreateRoleStmt *message); +size_t pg_query__create_role_stmt__pack + (const PgQuery__CreateRoleStmt *message, uint8_t *out); -size_t pg_query__sec_label_stmt__pack_to_buffer - (const PgQuery__SecLabelStmt *message, +size_t pg_query__create_role_stmt__pack_to_buffer + (const PgQuery__CreateRoleStmt *message, ProtobufCBuffer *buffer); -PgQuery__SecLabelStmt * - pg_query__sec_label_stmt__unpack +PgQuery__CreateRoleStmt * + pg_query__create_role_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__sec_label_stmt__free_unpacked - (PgQuery__SecLabelStmt *message, +void pg_query__create_role_stmt__free_unpacked + (PgQuery__CreateRoleStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateForeignTableStmt methods */ -void pg_query__create_foreign_table_stmt__init - (PgQuery__CreateForeignTableStmt *message); -size_t pg_query__create_foreign_table_stmt__get_packed_size - (const PgQuery__CreateForeignTableStmt *message); -size_t pg_query__create_foreign_table_stmt__pack - (const PgQuery__CreateForeignTableStmt *message, +/* PgQuery__AlterRoleStmt methods */ +void pg_query__alter_role_stmt__init + (PgQuery__AlterRoleStmt *message); +size_t pg_query__alter_role_stmt__get_packed_size + (const PgQuery__AlterRoleStmt *message); +size_t pg_query__alter_role_stmt__pack + (const PgQuery__AlterRoleStmt *message, uint8_t *out); -size_t pg_query__create_foreign_table_stmt__pack_to_buffer - (const PgQuery__CreateForeignTableStmt *message, +size_t pg_query__alter_role_stmt__pack_to_buffer + (const PgQuery__AlterRoleStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateForeignTableStmt * - pg_query__create_foreign_table_stmt__unpack +PgQuery__AlterRoleStmt * + pg_query__alter_role_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_foreign_table_stmt__free_unpacked - (PgQuery__CreateForeignTableStmt *message, +void pg_query__alter_role_stmt__free_unpacked + (PgQuery__AlterRoleStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__ImportForeignSchemaStmt methods */ -void pg_query__import_foreign_schema_stmt__init - (PgQuery__ImportForeignSchemaStmt *message); -size_t pg_query__import_foreign_schema_stmt__get_packed_size - (const PgQuery__ImportForeignSchemaStmt *message); -size_t pg_query__import_foreign_schema_stmt__pack - (const PgQuery__ImportForeignSchemaStmt *message, +/* PgQuery__AlterRoleSetStmt methods */ +void pg_query__alter_role_set_stmt__init + (PgQuery__AlterRoleSetStmt *message); +size_t pg_query__alter_role_set_stmt__get_packed_size + (const PgQuery__AlterRoleSetStmt *message); +size_t pg_query__alter_role_set_stmt__pack + (const PgQuery__AlterRoleSetStmt *message, uint8_t *out); -size_t pg_query__import_foreign_schema_stmt__pack_to_buffer - (const PgQuery__ImportForeignSchemaStmt *message, +size_t pg_query__alter_role_set_stmt__pack_to_buffer + (const PgQuery__AlterRoleSetStmt *message, ProtobufCBuffer *buffer); -PgQuery__ImportForeignSchemaStmt * - pg_query__import_foreign_schema_stmt__unpack +PgQuery__AlterRoleSetStmt * + pg_query__alter_role_set_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__import_foreign_schema_stmt__free_unpacked - (PgQuery__ImportForeignSchemaStmt *message, +void pg_query__alter_role_set_stmt__free_unpacked + (PgQuery__AlterRoleSetStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateExtensionStmt methods */ -void pg_query__create_extension_stmt__init - (PgQuery__CreateExtensionStmt *message); -size_t pg_query__create_extension_stmt__get_packed_size - (const PgQuery__CreateExtensionStmt *message); -size_t pg_query__create_extension_stmt__pack - (const PgQuery__CreateExtensionStmt *message, +/* PgQuery__DropRoleStmt methods */ +void pg_query__drop_role_stmt__init + (PgQuery__DropRoleStmt *message); +size_t pg_query__drop_role_stmt__get_packed_size + (const PgQuery__DropRoleStmt *message); +size_t pg_query__drop_role_stmt__pack + (const PgQuery__DropRoleStmt *message, uint8_t *out); -size_t pg_query__create_extension_stmt__pack_to_buffer - (const PgQuery__CreateExtensionStmt *message, +size_t pg_query__drop_role_stmt__pack_to_buffer + (const PgQuery__DropRoleStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateExtensionStmt * - pg_query__create_extension_stmt__unpack +PgQuery__DropRoleStmt * + pg_query__drop_role_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_extension_stmt__free_unpacked - (PgQuery__CreateExtensionStmt *message, +void pg_query__drop_role_stmt__free_unpacked + (PgQuery__DropRoleStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterExtensionStmt methods */ -void pg_query__alter_extension_stmt__init - (PgQuery__AlterExtensionStmt *message); -size_t pg_query__alter_extension_stmt__get_packed_size - (const PgQuery__AlterExtensionStmt *message); -size_t pg_query__alter_extension_stmt__pack - (const PgQuery__AlterExtensionStmt *message, +/* PgQuery__CreateSeqStmt methods */ +void pg_query__create_seq_stmt__init + (PgQuery__CreateSeqStmt *message); +size_t pg_query__create_seq_stmt__get_packed_size + (const PgQuery__CreateSeqStmt *message); +size_t pg_query__create_seq_stmt__pack + (const PgQuery__CreateSeqStmt *message, uint8_t *out); -size_t pg_query__alter_extension_stmt__pack_to_buffer - (const PgQuery__AlterExtensionStmt *message, +size_t pg_query__create_seq_stmt__pack_to_buffer + (const PgQuery__CreateSeqStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterExtensionStmt * - pg_query__alter_extension_stmt__unpack +PgQuery__CreateSeqStmt * + pg_query__create_seq_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_extension_stmt__free_unpacked - (PgQuery__AlterExtensionStmt *message, +void pg_query__create_seq_stmt__free_unpacked + (PgQuery__CreateSeqStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterExtensionContentsStmt methods */ -void pg_query__alter_extension_contents_stmt__init - (PgQuery__AlterExtensionContentsStmt *message); -size_t pg_query__alter_extension_contents_stmt__get_packed_size - (const PgQuery__AlterExtensionContentsStmt *message); -size_t pg_query__alter_extension_contents_stmt__pack - (const PgQuery__AlterExtensionContentsStmt *message, +/* PgQuery__AlterSeqStmt methods */ +void pg_query__alter_seq_stmt__init + (PgQuery__AlterSeqStmt *message); +size_t pg_query__alter_seq_stmt__get_packed_size + (const PgQuery__AlterSeqStmt *message); +size_t pg_query__alter_seq_stmt__pack + (const PgQuery__AlterSeqStmt *message, uint8_t *out); -size_t pg_query__alter_extension_contents_stmt__pack_to_buffer - (const PgQuery__AlterExtensionContentsStmt *message, +size_t pg_query__alter_seq_stmt__pack_to_buffer + (const PgQuery__AlterSeqStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterExtensionContentsStmt * - pg_query__alter_extension_contents_stmt__unpack +PgQuery__AlterSeqStmt * + pg_query__alter_seq_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_extension_contents_stmt__free_unpacked - (PgQuery__AlterExtensionContentsStmt *message, +void pg_query__alter_seq_stmt__free_unpacked + (PgQuery__AlterSeqStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateEventTrigStmt methods */ -void pg_query__create_event_trig_stmt__init - (PgQuery__CreateEventTrigStmt *message); -size_t pg_query__create_event_trig_stmt__get_packed_size - (const PgQuery__CreateEventTrigStmt *message); -size_t pg_query__create_event_trig_stmt__pack - (const PgQuery__CreateEventTrigStmt *message, +/* PgQuery__DefineStmt methods */ +void pg_query__define_stmt__init + (PgQuery__DefineStmt *message); +size_t pg_query__define_stmt__get_packed_size + (const PgQuery__DefineStmt *message); +size_t pg_query__define_stmt__pack + (const PgQuery__DefineStmt *message, uint8_t *out); -size_t pg_query__create_event_trig_stmt__pack_to_buffer - (const PgQuery__CreateEventTrigStmt *message, +size_t pg_query__define_stmt__pack_to_buffer + (const PgQuery__DefineStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateEventTrigStmt * - pg_query__create_event_trig_stmt__unpack +PgQuery__DefineStmt * + pg_query__define_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_event_trig_stmt__free_unpacked - (PgQuery__CreateEventTrigStmt *message, +void pg_query__define_stmt__free_unpacked + (PgQuery__DefineStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterEventTrigStmt methods */ -void pg_query__alter_event_trig_stmt__init - (PgQuery__AlterEventTrigStmt *message); -size_t pg_query__alter_event_trig_stmt__get_packed_size - (const PgQuery__AlterEventTrigStmt *message); -size_t pg_query__alter_event_trig_stmt__pack - (const PgQuery__AlterEventTrigStmt *message, +/* PgQuery__CreateDomainStmt methods */ +void pg_query__create_domain_stmt__init + (PgQuery__CreateDomainStmt *message); +size_t pg_query__create_domain_stmt__get_packed_size + (const PgQuery__CreateDomainStmt *message); +size_t pg_query__create_domain_stmt__pack + (const PgQuery__CreateDomainStmt *message, uint8_t *out); -size_t pg_query__alter_event_trig_stmt__pack_to_buffer - (const PgQuery__AlterEventTrigStmt *message, +size_t pg_query__create_domain_stmt__pack_to_buffer + (const PgQuery__CreateDomainStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterEventTrigStmt * - pg_query__alter_event_trig_stmt__unpack +PgQuery__CreateDomainStmt * + pg_query__create_domain_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_event_trig_stmt__free_unpacked - (PgQuery__AlterEventTrigStmt *message, +void pg_query__create_domain_stmt__free_unpacked + (PgQuery__CreateDomainStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__RefreshMatViewStmt methods */ -void pg_query__refresh_mat_view_stmt__init - (PgQuery__RefreshMatViewStmt *message); -size_t pg_query__refresh_mat_view_stmt__get_packed_size - (const PgQuery__RefreshMatViewStmt *message); -size_t pg_query__refresh_mat_view_stmt__pack - (const PgQuery__RefreshMatViewStmt *message, +/* PgQuery__CreateOpClassStmt methods */ +void pg_query__create_op_class_stmt__init + (PgQuery__CreateOpClassStmt *message); +size_t pg_query__create_op_class_stmt__get_packed_size + (const PgQuery__CreateOpClassStmt *message); +size_t pg_query__create_op_class_stmt__pack + (const PgQuery__CreateOpClassStmt *message, uint8_t *out); -size_t pg_query__refresh_mat_view_stmt__pack_to_buffer - (const PgQuery__RefreshMatViewStmt *message, +size_t pg_query__create_op_class_stmt__pack_to_buffer + (const PgQuery__CreateOpClassStmt *message, ProtobufCBuffer *buffer); -PgQuery__RefreshMatViewStmt * - pg_query__refresh_mat_view_stmt__unpack +PgQuery__CreateOpClassStmt * + pg_query__create_op_class_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__refresh_mat_view_stmt__free_unpacked - (PgQuery__RefreshMatViewStmt *message, +void pg_query__create_op_class_stmt__free_unpacked + (PgQuery__CreateOpClassStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__ReplicaIdentityStmt methods */ -void pg_query__replica_identity_stmt__init - (PgQuery__ReplicaIdentityStmt *message); -size_t pg_query__replica_identity_stmt__get_packed_size - (const PgQuery__ReplicaIdentityStmt *message); -size_t pg_query__replica_identity_stmt__pack - (const PgQuery__ReplicaIdentityStmt *message, +/* PgQuery__CreateOpClassItem methods */ +void pg_query__create_op_class_item__init + (PgQuery__CreateOpClassItem *message); +size_t pg_query__create_op_class_item__get_packed_size + (const PgQuery__CreateOpClassItem *message); +size_t pg_query__create_op_class_item__pack + (const PgQuery__CreateOpClassItem *message, uint8_t *out); -size_t pg_query__replica_identity_stmt__pack_to_buffer - (const PgQuery__ReplicaIdentityStmt *message, +size_t pg_query__create_op_class_item__pack_to_buffer + (const PgQuery__CreateOpClassItem *message, ProtobufCBuffer *buffer); -PgQuery__ReplicaIdentityStmt * - pg_query__replica_identity_stmt__unpack +PgQuery__CreateOpClassItem * + pg_query__create_op_class_item__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__replica_identity_stmt__free_unpacked - (PgQuery__ReplicaIdentityStmt *message, +void pg_query__create_op_class_item__free_unpacked + (PgQuery__CreateOpClassItem *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterSystemStmt methods */ -void pg_query__alter_system_stmt__init - (PgQuery__AlterSystemStmt *message); -size_t pg_query__alter_system_stmt__get_packed_size - (const PgQuery__AlterSystemStmt *message); -size_t pg_query__alter_system_stmt__pack - (const PgQuery__AlterSystemStmt *message, +/* PgQuery__CreateOpFamilyStmt methods */ +void pg_query__create_op_family_stmt__init + (PgQuery__CreateOpFamilyStmt *message); +size_t pg_query__create_op_family_stmt__get_packed_size + (const PgQuery__CreateOpFamilyStmt *message); +size_t pg_query__create_op_family_stmt__pack + (const PgQuery__CreateOpFamilyStmt *message, uint8_t *out); -size_t pg_query__alter_system_stmt__pack_to_buffer - (const PgQuery__AlterSystemStmt *message, +size_t pg_query__create_op_family_stmt__pack_to_buffer + (const PgQuery__CreateOpFamilyStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterSystemStmt * - pg_query__alter_system_stmt__unpack +PgQuery__CreateOpFamilyStmt * + pg_query__create_op_family_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_system_stmt__free_unpacked - (PgQuery__AlterSystemStmt *message, +void pg_query__create_op_family_stmt__free_unpacked + (PgQuery__CreateOpFamilyStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreatePolicyStmt methods */ -void pg_query__create_policy_stmt__init - (PgQuery__CreatePolicyStmt *message); -size_t pg_query__create_policy_stmt__get_packed_size - (const PgQuery__CreatePolicyStmt *message); -size_t pg_query__create_policy_stmt__pack - (const PgQuery__CreatePolicyStmt *message, +/* PgQuery__AlterOpFamilyStmt methods */ +void pg_query__alter_op_family_stmt__init + (PgQuery__AlterOpFamilyStmt *message); +size_t pg_query__alter_op_family_stmt__get_packed_size + (const PgQuery__AlterOpFamilyStmt *message); +size_t pg_query__alter_op_family_stmt__pack + (const PgQuery__AlterOpFamilyStmt *message, uint8_t *out); -size_t pg_query__create_policy_stmt__pack_to_buffer - (const PgQuery__CreatePolicyStmt *message, +size_t pg_query__alter_op_family_stmt__pack_to_buffer + (const PgQuery__AlterOpFamilyStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreatePolicyStmt * - pg_query__create_policy_stmt__unpack +PgQuery__AlterOpFamilyStmt * + pg_query__alter_op_family_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_policy_stmt__free_unpacked - (PgQuery__CreatePolicyStmt *message, +void pg_query__alter_op_family_stmt__free_unpacked + (PgQuery__AlterOpFamilyStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterPolicyStmt methods */ -void pg_query__alter_policy_stmt__init - (PgQuery__AlterPolicyStmt *message); -size_t pg_query__alter_policy_stmt__get_packed_size - (const PgQuery__AlterPolicyStmt *message); -size_t pg_query__alter_policy_stmt__pack - (const PgQuery__AlterPolicyStmt *message, +/* PgQuery__DropStmt methods */ +void pg_query__drop_stmt__init + (PgQuery__DropStmt *message); +size_t pg_query__drop_stmt__get_packed_size + (const PgQuery__DropStmt *message); +size_t pg_query__drop_stmt__pack + (const PgQuery__DropStmt *message, uint8_t *out); -size_t pg_query__alter_policy_stmt__pack_to_buffer - (const PgQuery__AlterPolicyStmt *message, +size_t pg_query__drop_stmt__pack_to_buffer + (const PgQuery__DropStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterPolicyStmt * - pg_query__alter_policy_stmt__unpack +PgQuery__DropStmt * + pg_query__drop_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_policy_stmt__free_unpacked - (PgQuery__AlterPolicyStmt *message, +void pg_query__drop_stmt__free_unpacked + (PgQuery__DropStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateTransformStmt methods */ -void pg_query__create_transform_stmt__init - (PgQuery__CreateTransformStmt *message); -size_t pg_query__create_transform_stmt__get_packed_size - (const PgQuery__CreateTransformStmt *message); -size_t pg_query__create_transform_stmt__pack - (const PgQuery__CreateTransformStmt *message, +/* PgQuery__TruncateStmt methods */ +void pg_query__truncate_stmt__init + (PgQuery__TruncateStmt *message); +size_t pg_query__truncate_stmt__get_packed_size + (const PgQuery__TruncateStmt *message); +size_t pg_query__truncate_stmt__pack + (const PgQuery__TruncateStmt *message, uint8_t *out); -size_t pg_query__create_transform_stmt__pack_to_buffer - (const PgQuery__CreateTransformStmt *message, +size_t pg_query__truncate_stmt__pack_to_buffer + (const PgQuery__TruncateStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateTransformStmt * - pg_query__create_transform_stmt__unpack +PgQuery__TruncateStmt * + pg_query__truncate_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_transform_stmt__free_unpacked - (PgQuery__CreateTransformStmt *message, +void pg_query__truncate_stmt__free_unpacked + (PgQuery__TruncateStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateAmStmt methods */ -void pg_query__create_am_stmt__init - (PgQuery__CreateAmStmt *message); -size_t pg_query__create_am_stmt__get_packed_size - (const PgQuery__CreateAmStmt *message); -size_t pg_query__create_am_stmt__pack - (const PgQuery__CreateAmStmt *message, +/* PgQuery__CommentStmt methods */ +void pg_query__comment_stmt__init + (PgQuery__CommentStmt *message); +size_t pg_query__comment_stmt__get_packed_size + (const PgQuery__CommentStmt *message); +size_t pg_query__comment_stmt__pack + (const PgQuery__CommentStmt *message, uint8_t *out); -size_t pg_query__create_am_stmt__pack_to_buffer - (const PgQuery__CreateAmStmt *message, +size_t pg_query__comment_stmt__pack_to_buffer + (const PgQuery__CommentStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateAmStmt * - pg_query__create_am_stmt__unpack +PgQuery__CommentStmt * + pg_query__comment_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_am_stmt__free_unpacked - (PgQuery__CreateAmStmt *message, +void pg_query__comment_stmt__free_unpacked + (PgQuery__CommentStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreatePublicationStmt methods */ -void pg_query__create_publication_stmt__init - (PgQuery__CreatePublicationStmt *message); -size_t pg_query__create_publication_stmt__get_packed_size - (const PgQuery__CreatePublicationStmt *message); -size_t pg_query__create_publication_stmt__pack - (const PgQuery__CreatePublicationStmt *message, +/* PgQuery__SecLabelStmt methods */ +void pg_query__sec_label_stmt__init + (PgQuery__SecLabelStmt *message); +size_t pg_query__sec_label_stmt__get_packed_size + (const PgQuery__SecLabelStmt *message); +size_t pg_query__sec_label_stmt__pack + (const PgQuery__SecLabelStmt *message, uint8_t *out); -size_t pg_query__create_publication_stmt__pack_to_buffer - (const PgQuery__CreatePublicationStmt *message, +size_t pg_query__sec_label_stmt__pack_to_buffer + (const PgQuery__SecLabelStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreatePublicationStmt * - pg_query__create_publication_stmt__unpack +PgQuery__SecLabelStmt * + pg_query__sec_label_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_publication_stmt__free_unpacked - (PgQuery__CreatePublicationStmt *message, +void pg_query__sec_label_stmt__free_unpacked + (PgQuery__SecLabelStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterPublicationStmt methods */ -void pg_query__alter_publication_stmt__init - (PgQuery__AlterPublicationStmt *message); -size_t pg_query__alter_publication_stmt__get_packed_size - (const PgQuery__AlterPublicationStmt *message); -size_t pg_query__alter_publication_stmt__pack - (const PgQuery__AlterPublicationStmt *message, +/* PgQuery__DeclareCursorStmt methods */ +void pg_query__declare_cursor_stmt__init + (PgQuery__DeclareCursorStmt *message); +size_t pg_query__declare_cursor_stmt__get_packed_size + (const PgQuery__DeclareCursorStmt *message); +size_t pg_query__declare_cursor_stmt__pack + (const PgQuery__DeclareCursorStmt *message, uint8_t *out); -size_t pg_query__alter_publication_stmt__pack_to_buffer - (const PgQuery__AlterPublicationStmt *message, +size_t pg_query__declare_cursor_stmt__pack_to_buffer + (const PgQuery__DeclareCursorStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterPublicationStmt * - pg_query__alter_publication_stmt__unpack +PgQuery__DeclareCursorStmt * + pg_query__declare_cursor_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_publication_stmt__free_unpacked - (PgQuery__AlterPublicationStmt *message, +void pg_query__declare_cursor_stmt__free_unpacked + (PgQuery__DeclareCursorStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateSubscriptionStmt methods */ -void pg_query__create_subscription_stmt__init - (PgQuery__CreateSubscriptionStmt *message); -size_t pg_query__create_subscription_stmt__get_packed_size - (const PgQuery__CreateSubscriptionStmt *message); -size_t pg_query__create_subscription_stmt__pack - (const PgQuery__CreateSubscriptionStmt *message, +/* PgQuery__ClosePortalStmt methods */ +void pg_query__close_portal_stmt__init + (PgQuery__ClosePortalStmt *message); +size_t pg_query__close_portal_stmt__get_packed_size + (const PgQuery__ClosePortalStmt *message); +size_t pg_query__close_portal_stmt__pack + (const PgQuery__ClosePortalStmt *message, uint8_t *out); -size_t pg_query__create_subscription_stmt__pack_to_buffer - (const PgQuery__CreateSubscriptionStmt *message, +size_t pg_query__close_portal_stmt__pack_to_buffer + (const PgQuery__ClosePortalStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateSubscriptionStmt * - pg_query__create_subscription_stmt__unpack +PgQuery__ClosePortalStmt * + pg_query__close_portal_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_subscription_stmt__free_unpacked - (PgQuery__CreateSubscriptionStmt *message, +void pg_query__close_portal_stmt__free_unpacked + (PgQuery__ClosePortalStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterSubscriptionStmt methods */ -void pg_query__alter_subscription_stmt__init - (PgQuery__AlterSubscriptionStmt *message); -size_t pg_query__alter_subscription_stmt__get_packed_size - (const PgQuery__AlterSubscriptionStmt *message); -size_t pg_query__alter_subscription_stmt__pack - (const PgQuery__AlterSubscriptionStmt *message, +/* PgQuery__FetchStmt methods */ +void pg_query__fetch_stmt__init + (PgQuery__FetchStmt *message); +size_t pg_query__fetch_stmt__get_packed_size + (const PgQuery__FetchStmt *message); +size_t pg_query__fetch_stmt__pack + (const PgQuery__FetchStmt *message, uint8_t *out); -size_t pg_query__alter_subscription_stmt__pack_to_buffer - (const PgQuery__AlterSubscriptionStmt *message, +size_t pg_query__fetch_stmt__pack_to_buffer + (const PgQuery__FetchStmt *message, ProtobufCBuffer *buffer); -PgQuery__AlterSubscriptionStmt * - pg_query__alter_subscription_stmt__unpack +PgQuery__FetchStmt * + pg_query__fetch_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__alter_subscription_stmt__free_unpacked - (PgQuery__AlterSubscriptionStmt *message, +void pg_query__fetch_stmt__free_unpacked + (PgQuery__FetchStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__DropSubscriptionStmt methods */ -void pg_query__drop_subscription_stmt__init - (PgQuery__DropSubscriptionStmt *message); -size_t pg_query__drop_subscription_stmt__get_packed_size - (const PgQuery__DropSubscriptionStmt *message); -size_t pg_query__drop_subscription_stmt__pack - (const PgQuery__DropSubscriptionStmt *message, +/* PgQuery__IndexStmt methods */ +void pg_query__index_stmt__init + (PgQuery__IndexStmt *message); +size_t pg_query__index_stmt__get_packed_size + (const PgQuery__IndexStmt *message); +size_t pg_query__index_stmt__pack + (const PgQuery__IndexStmt *message, uint8_t *out); -size_t pg_query__drop_subscription_stmt__pack_to_buffer - (const PgQuery__DropSubscriptionStmt *message, +size_t pg_query__index_stmt__pack_to_buffer + (const PgQuery__IndexStmt *message, ProtobufCBuffer *buffer); -PgQuery__DropSubscriptionStmt * - pg_query__drop_subscription_stmt__unpack +PgQuery__IndexStmt * + pg_query__index_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__drop_subscription_stmt__free_unpacked - (PgQuery__DropSubscriptionStmt *message, +void pg_query__index_stmt__free_unpacked + (PgQuery__IndexStmt *message, ProtobufCAllocator *allocator); /* PgQuery__CreateStatsStmt methods */ void pg_query__create_stats_stmt__init @@ -9118,43 +9696,24 @@ PgQuery__CreateStatsStmt * void pg_query__create_stats_stmt__free_unpacked (PgQuery__CreateStatsStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AlterCollationStmt methods */ -void pg_query__alter_collation_stmt__init - (PgQuery__AlterCollationStmt *message); -size_t pg_query__alter_collation_stmt__get_packed_size - (const PgQuery__AlterCollationStmt *message); -size_t pg_query__alter_collation_stmt__pack - (const PgQuery__AlterCollationStmt *message, - uint8_t *out); -size_t pg_query__alter_collation_stmt__pack_to_buffer - (const PgQuery__AlterCollationStmt *message, - ProtobufCBuffer *buffer); -PgQuery__AlterCollationStmt * - pg_query__alter_collation_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__alter_collation_stmt__free_unpacked - (PgQuery__AlterCollationStmt *message, - ProtobufCAllocator *allocator); -/* PgQuery__CallStmt methods */ -void pg_query__call_stmt__init - (PgQuery__CallStmt *message); -size_t pg_query__call_stmt__get_packed_size - (const PgQuery__CallStmt *message); -size_t pg_query__call_stmt__pack - (const PgQuery__CallStmt *message, +/* PgQuery__StatsElem methods */ +void pg_query__stats_elem__init + (PgQuery__StatsElem *message); +size_t pg_query__stats_elem__get_packed_size + (const PgQuery__StatsElem *message); +size_t pg_query__stats_elem__pack + (const PgQuery__StatsElem *message, uint8_t *out); -size_t pg_query__call_stmt__pack_to_buffer - (const PgQuery__CallStmt *message, +size_t pg_query__stats_elem__pack_to_buffer + (const PgQuery__StatsElem *message, ProtobufCBuffer *buffer); -PgQuery__CallStmt * - pg_query__call_stmt__unpack +PgQuery__StatsElem * + pg_query__stats_elem__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__call_stmt__free_unpacked - (PgQuery__CallStmt *message, +void pg_query__stats_elem__free_unpacked + (PgQuery__StatsElem *message, ProtobufCAllocator *allocator); /* PgQuery__AlterStatsStmt methods */ void pg_query__alter_stats_stmt__init @@ -9175,1050 +9734,993 @@ PgQuery__AlterStatsStmt * void pg_query__alter_stats_stmt__free_unpacked (PgQuery__AlterStatsStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AExpr methods */ -void pg_query__a__expr__init - (PgQuery__AExpr *message); -size_t pg_query__a__expr__get_packed_size - (const PgQuery__AExpr *message); -size_t pg_query__a__expr__pack - (const PgQuery__AExpr *message, - uint8_t *out); -size_t pg_query__a__expr__pack_to_buffer - (const PgQuery__AExpr *message, - ProtobufCBuffer *buffer); -PgQuery__AExpr * - pg_query__a__expr__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__a__expr__free_unpacked - (PgQuery__AExpr *message, - ProtobufCAllocator *allocator); -/* PgQuery__ColumnRef methods */ -void pg_query__column_ref__init - (PgQuery__ColumnRef *message); -size_t pg_query__column_ref__get_packed_size - (const PgQuery__ColumnRef *message); -size_t pg_query__column_ref__pack - (const PgQuery__ColumnRef *message, - uint8_t *out); -size_t pg_query__column_ref__pack_to_buffer - (const PgQuery__ColumnRef *message, - ProtobufCBuffer *buffer); -PgQuery__ColumnRef * - pg_query__column_ref__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__column_ref__free_unpacked - (PgQuery__ColumnRef *message, - ProtobufCAllocator *allocator); -/* PgQuery__ParamRef methods */ -void pg_query__param_ref__init - (PgQuery__ParamRef *message); -size_t pg_query__param_ref__get_packed_size - (const PgQuery__ParamRef *message); -size_t pg_query__param_ref__pack - (const PgQuery__ParamRef *message, - uint8_t *out); -size_t pg_query__param_ref__pack_to_buffer - (const PgQuery__ParamRef *message, - ProtobufCBuffer *buffer); -PgQuery__ParamRef * - pg_query__param_ref__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void pg_query__param_ref__free_unpacked - (PgQuery__ParamRef *message, - ProtobufCAllocator *allocator); -/* PgQuery__FuncCall methods */ -void pg_query__func_call__init - (PgQuery__FuncCall *message); -size_t pg_query__func_call__get_packed_size - (const PgQuery__FuncCall *message); -size_t pg_query__func_call__pack - (const PgQuery__FuncCall *message, +/* PgQuery__CreateFunctionStmt methods */ +void pg_query__create_function_stmt__init + (PgQuery__CreateFunctionStmt *message); +size_t pg_query__create_function_stmt__get_packed_size + (const PgQuery__CreateFunctionStmt *message); +size_t pg_query__create_function_stmt__pack + (const PgQuery__CreateFunctionStmt *message, uint8_t *out); -size_t pg_query__func_call__pack_to_buffer - (const PgQuery__FuncCall *message, +size_t pg_query__create_function_stmt__pack_to_buffer + (const PgQuery__CreateFunctionStmt *message, ProtobufCBuffer *buffer); -PgQuery__FuncCall * - pg_query__func_call__unpack +PgQuery__CreateFunctionStmt * + pg_query__create_function_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__func_call__free_unpacked - (PgQuery__FuncCall *message, +void pg_query__create_function_stmt__free_unpacked + (PgQuery__CreateFunctionStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AStar methods */ -void pg_query__a__star__init - (PgQuery__AStar *message); -size_t pg_query__a__star__get_packed_size - (const PgQuery__AStar *message); -size_t pg_query__a__star__pack - (const PgQuery__AStar *message, +/* PgQuery__FunctionParameter methods */ +void pg_query__function_parameter__init + (PgQuery__FunctionParameter *message); +size_t pg_query__function_parameter__get_packed_size + (const PgQuery__FunctionParameter *message); +size_t pg_query__function_parameter__pack + (const PgQuery__FunctionParameter *message, uint8_t *out); -size_t pg_query__a__star__pack_to_buffer - (const PgQuery__AStar *message, +size_t pg_query__function_parameter__pack_to_buffer + (const PgQuery__FunctionParameter *message, ProtobufCBuffer *buffer); -PgQuery__AStar * - pg_query__a__star__unpack +PgQuery__FunctionParameter * + pg_query__function_parameter__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__a__star__free_unpacked - (PgQuery__AStar *message, +void pg_query__function_parameter__free_unpacked + (PgQuery__FunctionParameter *message, ProtobufCAllocator *allocator); -/* PgQuery__AIndices methods */ -void pg_query__a__indices__init - (PgQuery__AIndices *message); -size_t pg_query__a__indices__get_packed_size - (const PgQuery__AIndices *message); -size_t pg_query__a__indices__pack - (const PgQuery__AIndices *message, +/* PgQuery__AlterFunctionStmt methods */ +void pg_query__alter_function_stmt__init + (PgQuery__AlterFunctionStmt *message); +size_t pg_query__alter_function_stmt__get_packed_size + (const PgQuery__AlterFunctionStmt *message); +size_t pg_query__alter_function_stmt__pack + (const PgQuery__AlterFunctionStmt *message, uint8_t *out); -size_t pg_query__a__indices__pack_to_buffer - (const PgQuery__AIndices *message, +size_t pg_query__alter_function_stmt__pack_to_buffer + (const PgQuery__AlterFunctionStmt *message, ProtobufCBuffer *buffer); -PgQuery__AIndices * - pg_query__a__indices__unpack +PgQuery__AlterFunctionStmt * + pg_query__alter_function_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__a__indices__free_unpacked - (PgQuery__AIndices *message, +void pg_query__alter_function_stmt__free_unpacked + (PgQuery__AlterFunctionStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AIndirection methods */ -void pg_query__a__indirection__init - (PgQuery__AIndirection *message); -size_t pg_query__a__indirection__get_packed_size - (const PgQuery__AIndirection *message); -size_t pg_query__a__indirection__pack - (const PgQuery__AIndirection *message, +/* PgQuery__DoStmt methods */ +void pg_query__do_stmt__init + (PgQuery__DoStmt *message); +size_t pg_query__do_stmt__get_packed_size + (const PgQuery__DoStmt *message); +size_t pg_query__do_stmt__pack + (const PgQuery__DoStmt *message, uint8_t *out); -size_t pg_query__a__indirection__pack_to_buffer - (const PgQuery__AIndirection *message, +size_t pg_query__do_stmt__pack_to_buffer + (const PgQuery__DoStmt *message, ProtobufCBuffer *buffer); -PgQuery__AIndirection * - pg_query__a__indirection__unpack +PgQuery__DoStmt * + pg_query__do_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__a__indirection__free_unpacked - (PgQuery__AIndirection *message, +void pg_query__do_stmt__free_unpacked + (PgQuery__DoStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AArrayExpr methods */ -void pg_query__a__array_expr__init - (PgQuery__AArrayExpr *message); -size_t pg_query__a__array_expr__get_packed_size - (const PgQuery__AArrayExpr *message); -size_t pg_query__a__array_expr__pack - (const PgQuery__AArrayExpr *message, +/* PgQuery__InlineCodeBlock methods */ +void pg_query__inline_code_block__init + (PgQuery__InlineCodeBlock *message); +size_t pg_query__inline_code_block__get_packed_size + (const PgQuery__InlineCodeBlock *message); +size_t pg_query__inline_code_block__pack + (const PgQuery__InlineCodeBlock *message, uint8_t *out); -size_t pg_query__a__array_expr__pack_to_buffer - (const PgQuery__AArrayExpr *message, +size_t pg_query__inline_code_block__pack_to_buffer + (const PgQuery__InlineCodeBlock *message, ProtobufCBuffer *buffer); -PgQuery__AArrayExpr * - pg_query__a__array_expr__unpack +PgQuery__InlineCodeBlock * + pg_query__inline_code_block__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__a__array_expr__free_unpacked - (PgQuery__AArrayExpr *message, +void pg_query__inline_code_block__free_unpacked + (PgQuery__InlineCodeBlock *message, ProtobufCAllocator *allocator); -/* PgQuery__ResTarget methods */ -void pg_query__res_target__init - (PgQuery__ResTarget *message); -size_t pg_query__res_target__get_packed_size - (const PgQuery__ResTarget *message); -size_t pg_query__res_target__pack - (const PgQuery__ResTarget *message, +/* PgQuery__CallStmt methods */ +void pg_query__call_stmt__init + (PgQuery__CallStmt *message); +size_t pg_query__call_stmt__get_packed_size + (const PgQuery__CallStmt *message); +size_t pg_query__call_stmt__pack + (const PgQuery__CallStmt *message, uint8_t *out); -size_t pg_query__res_target__pack_to_buffer - (const PgQuery__ResTarget *message, +size_t pg_query__call_stmt__pack_to_buffer + (const PgQuery__CallStmt *message, ProtobufCBuffer *buffer); -PgQuery__ResTarget * - pg_query__res_target__unpack +PgQuery__CallStmt * + pg_query__call_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__res_target__free_unpacked - (PgQuery__ResTarget *message, +void pg_query__call_stmt__free_unpacked + (PgQuery__CallStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__MultiAssignRef methods */ -void pg_query__multi_assign_ref__init - (PgQuery__MultiAssignRef *message); -size_t pg_query__multi_assign_ref__get_packed_size - (const PgQuery__MultiAssignRef *message); -size_t pg_query__multi_assign_ref__pack - (const PgQuery__MultiAssignRef *message, +/* PgQuery__CallContext methods */ +void pg_query__call_context__init + (PgQuery__CallContext *message); +size_t pg_query__call_context__get_packed_size + (const PgQuery__CallContext *message); +size_t pg_query__call_context__pack + (const PgQuery__CallContext *message, uint8_t *out); -size_t pg_query__multi_assign_ref__pack_to_buffer - (const PgQuery__MultiAssignRef *message, +size_t pg_query__call_context__pack_to_buffer + (const PgQuery__CallContext *message, ProtobufCBuffer *buffer); -PgQuery__MultiAssignRef * - pg_query__multi_assign_ref__unpack +PgQuery__CallContext * + pg_query__call_context__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__multi_assign_ref__free_unpacked - (PgQuery__MultiAssignRef *message, +void pg_query__call_context__free_unpacked + (PgQuery__CallContext *message, ProtobufCAllocator *allocator); -/* PgQuery__TypeCast methods */ -void pg_query__type_cast__init - (PgQuery__TypeCast *message); -size_t pg_query__type_cast__get_packed_size - (const PgQuery__TypeCast *message); -size_t pg_query__type_cast__pack - (const PgQuery__TypeCast *message, +/* PgQuery__RenameStmt methods */ +void pg_query__rename_stmt__init + (PgQuery__RenameStmt *message); +size_t pg_query__rename_stmt__get_packed_size + (const PgQuery__RenameStmt *message); +size_t pg_query__rename_stmt__pack + (const PgQuery__RenameStmt *message, uint8_t *out); -size_t pg_query__type_cast__pack_to_buffer - (const PgQuery__TypeCast *message, +size_t pg_query__rename_stmt__pack_to_buffer + (const PgQuery__RenameStmt *message, ProtobufCBuffer *buffer); -PgQuery__TypeCast * - pg_query__type_cast__unpack +PgQuery__RenameStmt * + pg_query__rename_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__type_cast__free_unpacked - (PgQuery__TypeCast *message, +void pg_query__rename_stmt__free_unpacked + (PgQuery__RenameStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CollateClause methods */ -void pg_query__collate_clause__init - (PgQuery__CollateClause *message); -size_t pg_query__collate_clause__get_packed_size - (const PgQuery__CollateClause *message); -size_t pg_query__collate_clause__pack - (const PgQuery__CollateClause *message, +/* PgQuery__AlterObjectDependsStmt methods */ +void pg_query__alter_object_depends_stmt__init + (PgQuery__AlterObjectDependsStmt *message); +size_t pg_query__alter_object_depends_stmt__get_packed_size + (const PgQuery__AlterObjectDependsStmt *message); +size_t pg_query__alter_object_depends_stmt__pack + (const PgQuery__AlterObjectDependsStmt *message, uint8_t *out); -size_t pg_query__collate_clause__pack_to_buffer - (const PgQuery__CollateClause *message, +size_t pg_query__alter_object_depends_stmt__pack_to_buffer + (const PgQuery__AlterObjectDependsStmt *message, ProtobufCBuffer *buffer); -PgQuery__CollateClause * - pg_query__collate_clause__unpack +PgQuery__AlterObjectDependsStmt * + pg_query__alter_object_depends_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__collate_clause__free_unpacked - (PgQuery__CollateClause *message, +void pg_query__alter_object_depends_stmt__free_unpacked + (PgQuery__AlterObjectDependsStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__SortBy methods */ -void pg_query__sort_by__init - (PgQuery__SortBy *message); -size_t pg_query__sort_by__get_packed_size - (const PgQuery__SortBy *message); -size_t pg_query__sort_by__pack - (const PgQuery__SortBy *message, +/* PgQuery__AlterObjectSchemaStmt methods */ +void pg_query__alter_object_schema_stmt__init + (PgQuery__AlterObjectSchemaStmt *message); +size_t pg_query__alter_object_schema_stmt__get_packed_size + (const PgQuery__AlterObjectSchemaStmt *message); +size_t pg_query__alter_object_schema_stmt__pack + (const PgQuery__AlterObjectSchemaStmt *message, uint8_t *out); -size_t pg_query__sort_by__pack_to_buffer - (const PgQuery__SortBy *message, +size_t pg_query__alter_object_schema_stmt__pack_to_buffer + (const PgQuery__AlterObjectSchemaStmt *message, ProtobufCBuffer *buffer); -PgQuery__SortBy * - pg_query__sort_by__unpack +PgQuery__AlterObjectSchemaStmt * + pg_query__alter_object_schema_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__sort_by__free_unpacked - (PgQuery__SortBy *message, +void pg_query__alter_object_schema_stmt__free_unpacked + (PgQuery__AlterObjectSchemaStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__WindowDef methods */ -void pg_query__window_def__init - (PgQuery__WindowDef *message); -size_t pg_query__window_def__get_packed_size - (const PgQuery__WindowDef *message); -size_t pg_query__window_def__pack - (const PgQuery__WindowDef *message, +/* PgQuery__AlterOwnerStmt methods */ +void pg_query__alter_owner_stmt__init + (PgQuery__AlterOwnerStmt *message); +size_t pg_query__alter_owner_stmt__get_packed_size + (const PgQuery__AlterOwnerStmt *message); +size_t pg_query__alter_owner_stmt__pack + (const PgQuery__AlterOwnerStmt *message, uint8_t *out); -size_t pg_query__window_def__pack_to_buffer - (const PgQuery__WindowDef *message, +size_t pg_query__alter_owner_stmt__pack_to_buffer + (const PgQuery__AlterOwnerStmt *message, ProtobufCBuffer *buffer); -PgQuery__WindowDef * - pg_query__window_def__unpack +PgQuery__AlterOwnerStmt * + pg_query__alter_owner_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__window_def__free_unpacked - (PgQuery__WindowDef *message, +void pg_query__alter_owner_stmt__free_unpacked + (PgQuery__AlterOwnerStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__RangeSubselect methods */ -void pg_query__range_subselect__init - (PgQuery__RangeSubselect *message); -size_t pg_query__range_subselect__get_packed_size - (const PgQuery__RangeSubselect *message); -size_t pg_query__range_subselect__pack - (const PgQuery__RangeSubselect *message, +/* PgQuery__AlterOperatorStmt methods */ +void pg_query__alter_operator_stmt__init + (PgQuery__AlterOperatorStmt *message); +size_t pg_query__alter_operator_stmt__get_packed_size + (const PgQuery__AlterOperatorStmt *message); +size_t pg_query__alter_operator_stmt__pack + (const PgQuery__AlterOperatorStmt *message, uint8_t *out); -size_t pg_query__range_subselect__pack_to_buffer - (const PgQuery__RangeSubselect *message, +size_t pg_query__alter_operator_stmt__pack_to_buffer + (const PgQuery__AlterOperatorStmt *message, ProtobufCBuffer *buffer); -PgQuery__RangeSubselect * - pg_query__range_subselect__unpack +PgQuery__AlterOperatorStmt * + pg_query__alter_operator_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__range_subselect__free_unpacked - (PgQuery__RangeSubselect *message, +void pg_query__alter_operator_stmt__free_unpacked + (PgQuery__AlterOperatorStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__RangeFunction methods */ -void pg_query__range_function__init - (PgQuery__RangeFunction *message); -size_t pg_query__range_function__get_packed_size - (const PgQuery__RangeFunction *message); -size_t pg_query__range_function__pack - (const PgQuery__RangeFunction *message, +/* PgQuery__AlterTypeStmt methods */ +void pg_query__alter_type_stmt__init + (PgQuery__AlterTypeStmt *message); +size_t pg_query__alter_type_stmt__get_packed_size + (const PgQuery__AlterTypeStmt *message); +size_t pg_query__alter_type_stmt__pack + (const PgQuery__AlterTypeStmt *message, uint8_t *out); -size_t pg_query__range_function__pack_to_buffer - (const PgQuery__RangeFunction *message, +size_t pg_query__alter_type_stmt__pack_to_buffer + (const PgQuery__AlterTypeStmt *message, ProtobufCBuffer *buffer); -PgQuery__RangeFunction * - pg_query__range_function__unpack +PgQuery__AlterTypeStmt * + pg_query__alter_type_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__range_function__free_unpacked - (PgQuery__RangeFunction *message, +void pg_query__alter_type_stmt__free_unpacked + (PgQuery__AlterTypeStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__RangeTableSample methods */ -void pg_query__range_table_sample__init - (PgQuery__RangeTableSample *message); -size_t pg_query__range_table_sample__get_packed_size - (const PgQuery__RangeTableSample *message); -size_t pg_query__range_table_sample__pack - (const PgQuery__RangeTableSample *message, +/* PgQuery__RuleStmt methods */ +void pg_query__rule_stmt__init + (PgQuery__RuleStmt *message); +size_t pg_query__rule_stmt__get_packed_size + (const PgQuery__RuleStmt *message); +size_t pg_query__rule_stmt__pack + (const PgQuery__RuleStmt *message, uint8_t *out); -size_t pg_query__range_table_sample__pack_to_buffer - (const PgQuery__RangeTableSample *message, +size_t pg_query__rule_stmt__pack_to_buffer + (const PgQuery__RuleStmt *message, ProtobufCBuffer *buffer); -PgQuery__RangeTableSample * - pg_query__range_table_sample__unpack +PgQuery__RuleStmt * + pg_query__rule_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__range_table_sample__free_unpacked - (PgQuery__RangeTableSample *message, - ProtobufCAllocator *allocator); -/* PgQuery__RangeTableFunc methods */ -void pg_query__range_table_func__init - (PgQuery__RangeTableFunc *message); -size_t pg_query__range_table_func__get_packed_size - (const PgQuery__RangeTableFunc *message); -size_t pg_query__range_table_func__pack - (const PgQuery__RangeTableFunc *message, +void pg_query__rule_stmt__free_unpacked + (PgQuery__RuleStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__NotifyStmt methods */ +void pg_query__notify_stmt__init + (PgQuery__NotifyStmt *message); +size_t pg_query__notify_stmt__get_packed_size + (const PgQuery__NotifyStmt *message); +size_t pg_query__notify_stmt__pack + (const PgQuery__NotifyStmt *message, uint8_t *out); -size_t pg_query__range_table_func__pack_to_buffer - (const PgQuery__RangeTableFunc *message, +size_t pg_query__notify_stmt__pack_to_buffer + (const PgQuery__NotifyStmt *message, ProtobufCBuffer *buffer); -PgQuery__RangeTableFunc * - pg_query__range_table_func__unpack +PgQuery__NotifyStmt * + pg_query__notify_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__range_table_func__free_unpacked - (PgQuery__RangeTableFunc *message, +void pg_query__notify_stmt__free_unpacked + (PgQuery__NotifyStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__RangeTableFuncCol methods */ -void pg_query__range_table_func_col__init - (PgQuery__RangeTableFuncCol *message); -size_t pg_query__range_table_func_col__get_packed_size - (const PgQuery__RangeTableFuncCol *message); -size_t pg_query__range_table_func_col__pack - (const PgQuery__RangeTableFuncCol *message, +/* PgQuery__ListenStmt methods */ +void pg_query__listen_stmt__init + (PgQuery__ListenStmt *message); +size_t pg_query__listen_stmt__get_packed_size + (const PgQuery__ListenStmt *message); +size_t pg_query__listen_stmt__pack + (const PgQuery__ListenStmt *message, uint8_t *out); -size_t pg_query__range_table_func_col__pack_to_buffer - (const PgQuery__RangeTableFuncCol *message, +size_t pg_query__listen_stmt__pack_to_buffer + (const PgQuery__ListenStmt *message, ProtobufCBuffer *buffer); -PgQuery__RangeTableFuncCol * - pg_query__range_table_func_col__unpack +PgQuery__ListenStmt * + pg_query__listen_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__range_table_func_col__free_unpacked - (PgQuery__RangeTableFuncCol *message, +void pg_query__listen_stmt__free_unpacked + (PgQuery__ListenStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__TypeName methods */ -void pg_query__type_name__init - (PgQuery__TypeName *message); -size_t pg_query__type_name__get_packed_size - (const PgQuery__TypeName *message); -size_t pg_query__type_name__pack - (const PgQuery__TypeName *message, +/* PgQuery__UnlistenStmt methods */ +void pg_query__unlisten_stmt__init + (PgQuery__UnlistenStmt *message); +size_t pg_query__unlisten_stmt__get_packed_size + (const PgQuery__UnlistenStmt *message); +size_t pg_query__unlisten_stmt__pack + (const PgQuery__UnlistenStmt *message, uint8_t *out); -size_t pg_query__type_name__pack_to_buffer - (const PgQuery__TypeName *message, +size_t pg_query__unlisten_stmt__pack_to_buffer + (const PgQuery__UnlistenStmt *message, ProtobufCBuffer *buffer); -PgQuery__TypeName * - pg_query__type_name__unpack +PgQuery__UnlistenStmt * + pg_query__unlisten_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__type_name__free_unpacked - (PgQuery__TypeName *message, +void pg_query__unlisten_stmt__free_unpacked + (PgQuery__UnlistenStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__ColumnDef methods */ -void pg_query__column_def__init - (PgQuery__ColumnDef *message); -size_t pg_query__column_def__get_packed_size - (const PgQuery__ColumnDef *message); -size_t pg_query__column_def__pack - (const PgQuery__ColumnDef *message, +/* PgQuery__TransactionStmt methods */ +void pg_query__transaction_stmt__init + (PgQuery__TransactionStmt *message); +size_t pg_query__transaction_stmt__get_packed_size + (const PgQuery__TransactionStmt *message); +size_t pg_query__transaction_stmt__pack + (const PgQuery__TransactionStmt *message, uint8_t *out); -size_t pg_query__column_def__pack_to_buffer - (const PgQuery__ColumnDef *message, +size_t pg_query__transaction_stmt__pack_to_buffer + (const PgQuery__TransactionStmt *message, ProtobufCBuffer *buffer); -PgQuery__ColumnDef * - pg_query__column_def__unpack +PgQuery__TransactionStmt * + pg_query__transaction_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__column_def__free_unpacked - (PgQuery__ColumnDef *message, +void pg_query__transaction_stmt__free_unpacked + (PgQuery__TransactionStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__IndexElem methods */ -void pg_query__index_elem__init - (PgQuery__IndexElem *message); -size_t pg_query__index_elem__get_packed_size - (const PgQuery__IndexElem *message); -size_t pg_query__index_elem__pack - (const PgQuery__IndexElem *message, +/* PgQuery__CompositeTypeStmt methods */ +void pg_query__composite_type_stmt__init + (PgQuery__CompositeTypeStmt *message); +size_t pg_query__composite_type_stmt__get_packed_size + (const PgQuery__CompositeTypeStmt *message); +size_t pg_query__composite_type_stmt__pack + (const PgQuery__CompositeTypeStmt *message, uint8_t *out); -size_t pg_query__index_elem__pack_to_buffer - (const PgQuery__IndexElem *message, +size_t pg_query__composite_type_stmt__pack_to_buffer + (const PgQuery__CompositeTypeStmt *message, ProtobufCBuffer *buffer); -PgQuery__IndexElem * - pg_query__index_elem__unpack +PgQuery__CompositeTypeStmt * + pg_query__composite_type_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__index_elem__free_unpacked - (PgQuery__IndexElem *message, +void pg_query__composite_type_stmt__free_unpacked + (PgQuery__CompositeTypeStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__StatsElem methods */ -void pg_query__stats_elem__init - (PgQuery__StatsElem *message); -size_t pg_query__stats_elem__get_packed_size - (const PgQuery__StatsElem *message); -size_t pg_query__stats_elem__pack - (const PgQuery__StatsElem *message, +/* PgQuery__CreateEnumStmt methods */ +void pg_query__create_enum_stmt__init + (PgQuery__CreateEnumStmt *message); +size_t pg_query__create_enum_stmt__get_packed_size + (const PgQuery__CreateEnumStmt *message); +size_t pg_query__create_enum_stmt__pack + (const PgQuery__CreateEnumStmt *message, uint8_t *out); -size_t pg_query__stats_elem__pack_to_buffer - (const PgQuery__StatsElem *message, +size_t pg_query__create_enum_stmt__pack_to_buffer + (const PgQuery__CreateEnumStmt *message, ProtobufCBuffer *buffer); -PgQuery__StatsElem * - pg_query__stats_elem__unpack +PgQuery__CreateEnumStmt * + pg_query__create_enum_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__stats_elem__free_unpacked - (PgQuery__StatsElem *message, +void pg_query__create_enum_stmt__free_unpacked + (PgQuery__CreateEnumStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__Constraint methods */ -void pg_query__constraint__init - (PgQuery__Constraint *message); -size_t pg_query__constraint__get_packed_size - (const PgQuery__Constraint *message); -size_t pg_query__constraint__pack - (const PgQuery__Constraint *message, +/* PgQuery__CreateRangeStmt methods */ +void pg_query__create_range_stmt__init + (PgQuery__CreateRangeStmt *message); +size_t pg_query__create_range_stmt__get_packed_size + (const PgQuery__CreateRangeStmt *message); +size_t pg_query__create_range_stmt__pack + (const PgQuery__CreateRangeStmt *message, uint8_t *out); -size_t pg_query__constraint__pack_to_buffer - (const PgQuery__Constraint *message, +size_t pg_query__create_range_stmt__pack_to_buffer + (const PgQuery__CreateRangeStmt *message, ProtobufCBuffer *buffer); -PgQuery__Constraint * - pg_query__constraint__unpack +PgQuery__CreateRangeStmt * + pg_query__create_range_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__constraint__free_unpacked - (PgQuery__Constraint *message, +void pg_query__create_range_stmt__free_unpacked + (PgQuery__CreateRangeStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__DefElem methods */ -void pg_query__def_elem__init - (PgQuery__DefElem *message); -size_t pg_query__def_elem__get_packed_size - (const PgQuery__DefElem *message); -size_t pg_query__def_elem__pack - (const PgQuery__DefElem *message, +/* PgQuery__AlterEnumStmt methods */ +void pg_query__alter_enum_stmt__init + (PgQuery__AlterEnumStmt *message); +size_t pg_query__alter_enum_stmt__get_packed_size + (const PgQuery__AlterEnumStmt *message); +size_t pg_query__alter_enum_stmt__pack + (const PgQuery__AlterEnumStmt *message, uint8_t *out); -size_t pg_query__def_elem__pack_to_buffer - (const PgQuery__DefElem *message, +size_t pg_query__alter_enum_stmt__pack_to_buffer + (const PgQuery__AlterEnumStmt *message, ProtobufCBuffer *buffer); -PgQuery__DefElem * - pg_query__def_elem__unpack +PgQuery__AlterEnumStmt * + pg_query__alter_enum_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__def_elem__free_unpacked - (PgQuery__DefElem *message, +void pg_query__alter_enum_stmt__free_unpacked + (PgQuery__AlterEnumStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__RangeTblEntry methods */ -void pg_query__range_tbl_entry__init - (PgQuery__RangeTblEntry *message); -size_t pg_query__range_tbl_entry__get_packed_size - (const PgQuery__RangeTblEntry *message); -size_t pg_query__range_tbl_entry__pack - (const PgQuery__RangeTblEntry *message, +/* PgQuery__ViewStmt methods */ +void pg_query__view_stmt__init + (PgQuery__ViewStmt *message); +size_t pg_query__view_stmt__get_packed_size + (const PgQuery__ViewStmt *message); +size_t pg_query__view_stmt__pack + (const PgQuery__ViewStmt *message, uint8_t *out); -size_t pg_query__range_tbl_entry__pack_to_buffer - (const PgQuery__RangeTblEntry *message, +size_t pg_query__view_stmt__pack_to_buffer + (const PgQuery__ViewStmt *message, ProtobufCBuffer *buffer); -PgQuery__RangeTblEntry * - pg_query__range_tbl_entry__unpack +PgQuery__ViewStmt * + pg_query__view_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__range_tbl_entry__free_unpacked - (PgQuery__RangeTblEntry *message, +void pg_query__view_stmt__free_unpacked + (PgQuery__ViewStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__RangeTblFunction methods */ -void pg_query__range_tbl_function__init - (PgQuery__RangeTblFunction *message); -size_t pg_query__range_tbl_function__get_packed_size - (const PgQuery__RangeTblFunction *message); -size_t pg_query__range_tbl_function__pack - (const PgQuery__RangeTblFunction *message, +/* PgQuery__LoadStmt methods */ +void pg_query__load_stmt__init + (PgQuery__LoadStmt *message); +size_t pg_query__load_stmt__get_packed_size + (const PgQuery__LoadStmt *message); +size_t pg_query__load_stmt__pack + (const PgQuery__LoadStmt *message, uint8_t *out); -size_t pg_query__range_tbl_function__pack_to_buffer - (const PgQuery__RangeTblFunction *message, +size_t pg_query__load_stmt__pack_to_buffer + (const PgQuery__LoadStmt *message, ProtobufCBuffer *buffer); -PgQuery__RangeTblFunction * - pg_query__range_tbl_function__unpack +PgQuery__LoadStmt * + pg_query__load_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__range_tbl_function__free_unpacked - (PgQuery__RangeTblFunction *message, +void pg_query__load_stmt__free_unpacked + (PgQuery__LoadStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__TableSampleClause methods */ -void pg_query__table_sample_clause__init - (PgQuery__TableSampleClause *message); -size_t pg_query__table_sample_clause__get_packed_size - (const PgQuery__TableSampleClause *message); -size_t pg_query__table_sample_clause__pack - (const PgQuery__TableSampleClause *message, +/* PgQuery__CreatedbStmt methods */ +void pg_query__createdb_stmt__init + (PgQuery__CreatedbStmt *message); +size_t pg_query__createdb_stmt__get_packed_size + (const PgQuery__CreatedbStmt *message); +size_t pg_query__createdb_stmt__pack + (const PgQuery__CreatedbStmt *message, uint8_t *out); -size_t pg_query__table_sample_clause__pack_to_buffer - (const PgQuery__TableSampleClause *message, +size_t pg_query__createdb_stmt__pack_to_buffer + (const PgQuery__CreatedbStmt *message, ProtobufCBuffer *buffer); -PgQuery__TableSampleClause * - pg_query__table_sample_clause__unpack +PgQuery__CreatedbStmt * + pg_query__createdb_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__table_sample_clause__free_unpacked - (PgQuery__TableSampleClause *message, +void pg_query__createdb_stmt__free_unpacked + (PgQuery__CreatedbStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__WithCheckOption methods */ -void pg_query__with_check_option__init - (PgQuery__WithCheckOption *message); -size_t pg_query__with_check_option__get_packed_size - (const PgQuery__WithCheckOption *message); -size_t pg_query__with_check_option__pack - (const PgQuery__WithCheckOption *message, +/* PgQuery__AlterDatabaseStmt methods */ +void pg_query__alter_database_stmt__init + (PgQuery__AlterDatabaseStmt *message); +size_t pg_query__alter_database_stmt__get_packed_size + (const PgQuery__AlterDatabaseStmt *message); +size_t pg_query__alter_database_stmt__pack + (const PgQuery__AlterDatabaseStmt *message, uint8_t *out); -size_t pg_query__with_check_option__pack_to_buffer - (const PgQuery__WithCheckOption *message, +size_t pg_query__alter_database_stmt__pack_to_buffer + (const PgQuery__AlterDatabaseStmt *message, ProtobufCBuffer *buffer); -PgQuery__WithCheckOption * - pg_query__with_check_option__unpack +PgQuery__AlterDatabaseStmt * + pg_query__alter_database_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__with_check_option__free_unpacked - (PgQuery__WithCheckOption *message, +void pg_query__alter_database_stmt__free_unpacked + (PgQuery__AlterDatabaseStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__SortGroupClause methods */ -void pg_query__sort_group_clause__init - (PgQuery__SortGroupClause *message); -size_t pg_query__sort_group_clause__get_packed_size - (const PgQuery__SortGroupClause *message); -size_t pg_query__sort_group_clause__pack - (const PgQuery__SortGroupClause *message, +/* PgQuery__AlterDatabaseRefreshCollStmt methods */ +void pg_query__alter_database_refresh_coll_stmt__init + (PgQuery__AlterDatabaseRefreshCollStmt *message); +size_t pg_query__alter_database_refresh_coll_stmt__get_packed_size + (const PgQuery__AlterDatabaseRefreshCollStmt *message); +size_t pg_query__alter_database_refresh_coll_stmt__pack + (const PgQuery__AlterDatabaseRefreshCollStmt *message, uint8_t *out); -size_t pg_query__sort_group_clause__pack_to_buffer - (const PgQuery__SortGroupClause *message, +size_t pg_query__alter_database_refresh_coll_stmt__pack_to_buffer + (const PgQuery__AlterDatabaseRefreshCollStmt *message, ProtobufCBuffer *buffer); -PgQuery__SortGroupClause * - pg_query__sort_group_clause__unpack +PgQuery__AlterDatabaseRefreshCollStmt * + pg_query__alter_database_refresh_coll_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__sort_group_clause__free_unpacked - (PgQuery__SortGroupClause *message, +void pg_query__alter_database_refresh_coll_stmt__free_unpacked + (PgQuery__AlterDatabaseRefreshCollStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__GroupingSet methods */ -void pg_query__grouping_set__init - (PgQuery__GroupingSet *message); -size_t pg_query__grouping_set__get_packed_size - (const PgQuery__GroupingSet *message); -size_t pg_query__grouping_set__pack - (const PgQuery__GroupingSet *message, +/* PgQuery__AlterDatabaseSetStmt methods */ +void pg_query__alter_database_set_stmt__init + (PgQuery__AlterDatabaseSetStmt *message); +size_t pg_query__alter_database_set_stmt__get_packed_size + (const PgQuery__AlterDatabaseSetStmt *message); +size_t pg_query__alter_database_set_stmt__pack + (const PgQuery__AlterDatabaseSetStmt *message, uint8_t *out); -size_t pg_query__grouping_set__pack_to_buffer - (const PgQuery__GroupingSet *message, +size_t pg_query__alter_database_set_stmt__pack_to_buffer + (const PgQuery__AlterDatabaseSetStmt *message, ProtobufCBuffer *buffer); -PgQuery__GroupingSet * - pg_query__grouping_set__unpack +PgQuery__AlterDatabaseSetStmt * + pg_query__alter_database_set_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__grouping_set__free_unpacked - (PgQuery__GroupingSet *message, +void pg_query__alter_database_set_stmt__free_unpacked + (PgQuery__AlterDatabaseSetStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__WindowClause methods */ -void pg_query__window_clause__init - (PgQuery__WindowClause *message); -size_t pg_query__window_clause__get_packed_size - (const PgQuery__WindowClause *message); -size_t pg_query__window_clause__pack - (const PgQuery__WindowClause *message, +/* PgQuery__DropdbStmt methods */ +void pg_query__dropdb_stmt__init + (PgQuery__DropdbStmt *message); +size_t pg_query__dropdb_stmt__get_packed_size + (const PgQuery__DropdbStmt *message); +size_t pg_query__dropdb_stmt__pack + (const PgQuery__DropdbStmt *message, uint8_t *out); -size_t pg_query__window_clause__pack_to_buffer - (const PgQuery__WindowClause *message, +size_t pg_query__dropdb_stmt__pack_to_buffer + (const PgQuery__DropdbStmt *message, ProtobufCBuffer *buffer); -PgQuery__WindowClause * - pg_query__window_clause__unpack +PgQuery__DropdbStmt * + pg_query__dropdb_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__window_clause__free_unpacked - (PgQuery__WindowClause *message, +void pg_query__dropdb_stmt__free_unpacked + (PgQuery__DropdbStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__ObjectWithArgs methods */ -void pg_query__object_with_args__init - (PgQuery__ObjectWithArgs *message); -size_t pg_query__object_with_args__get_packed_size - (const PgQuery__ObjectWithArgs *message); -size_t pg_query__object_with_args__pack - (const PgQuery__ObjectWithArgs *message, +/* PgQuery__AlterSystemStmt methods */ +void pg_query__alter_system_stmt__init + (PgQuery__AlterSystemStmt *message); +size_t pg_query__alter_system_stmt__get_packed_size + (const PgQuery__AlterSystemStmt *message); +size_t pg_query__alter_system_stmt__pack + (const PgQuery__AlterSystemStmt *message, uint8_t *out); -size_t pg_query__object_with_args__pack_to_buffer - (const PgQuery__ObjectWithArgs *message, +size_t pg_query__alter_system_stmt__pack_to_buffer + (const PgQuery__AlterSystemStmt *message, ProtobufCBuffer *buffer); -PgQuery__ObjectWithArgs * - pg_query__object_with_args__unpack +PgQuery__AlterSystemStmt * + pg_query__alter_system_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__object_with_args__free_unpacked - (PgQuery__ObjectWithArgs *message, +void pg_query__alter_system_stmt__free_unpacked + (PgQuery__AlterSystemStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__AccessPriv methods */ -void pg_query__access_priv__init - (PgQuery__AccessPriv *message); -size_t pg_query__access_priv__get_packed_size - (const PgQuery__AccessPriv *message); -size_t pg_query__access_priv__pack - (const PgQuery__AccessPriv *message, +/* PgQuery__ClusterStmt methods */ +void pg_query__cluster_stmt__init + (PgQuery__ClusterStmt *message); +size_t pg_query__cluster_stmt__get_packed_size + (const PgQuery__ClusterStmt *message); +size_t pg_query__cluster_stmt__pack + (const PgQuery__ClusterStmt *message, uint8_t *out); -size_t pg_query__access_priv__pack_to_buffer - (const PgQuery__AccessPriv *message, +size_t pg_query__cluster_stmt__pack_to_buffer + (const PgQuery__ClusterStmt *message, ProtobufCBuffer *buffer); -PgQuery__AccessPriv * - pg_query__access_priv__unpack +PgQuery__ClusterStmt * + pg_query__cluster_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__access_priv__free_unpacked - (PgQuery__AccessPriv *message, +void pg_query__cluster_stmt__free_unpacked + (PgQuery__ClusterStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CreateOpClassItem methods */ -void pg_query__create_op_class_item__init - (PgQuery__CreateOpClassItem *message); -size_t pg_query__create_op_class_item__get_packed_size - (const PgQuery__CreateOpClassItem *message); -size_t pg_query__create_op_class_item__pack - (const PgQuery__CreateOpClassItem *message, +/* PgQuery__VacuumStmt methods */ +void pg_query__vacuum_stmt__init + (PgQuery__VacuumStmt *message); +size_t pg_query__vacuum_stmt__get_packed_size + (const PgQuery__VacuumStmt *message); +size_t pg_query__vacuum_stmt__pack + (const PgQuery__VacuumStmt *message, uint8_t *out); -size_t pg_query__create_op_class_item__pack_to_buffer - (const PgQuery__CreateOpClassItem *message, +size_t pg_query__vacuum_stmt__pack_to_buffer + (const PgQuery__VacuumStmt *message, ProtobufCBuffer *buffer); -PgQuery__CreateOpClassItem * - pg_query__create_op_class_item__unpack +PgQuery__VacuumStmt * + pg_query__vacuum_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__create_op_class_item__free_unpacked - (PgQuery__CreateOpClassItem *message, +void pg_query__vacuum_stmt__free_unpacked + (PgQuery__VacuumStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__TableLikeClause methods */ -void pg_query__table_like_clause__init - (PgQuery__TableLikeClause *message); -size_t pg_query__table_like_clause__get_packed_size - (const PgQuery__TableLikeClause *message); -size_t pg_query__table_like_clause__pack - (const PgQuery__TableLikeClause *message, +/* PgQuery__VacuumRelation methods */ +void pg_query__vacuum_relation__init + (PgQuery__VacuumRelation *message); +size_t pg_query__vacuum_relation__get_packed_size + (const PgQuery__VacuumRelation *message); +size_t pg_query__vacuum_relation__pack + (const PgQuery__VacuumRelation *message, uint8_t *out); -size_t pg_query__table_like_clause__pack_to_buffer - (const PgQuery__TableLikeClause *message, +size_t pg_query__vacuum_relation__pack_to_buffer + (const PgQuery__VacuumRelation *message, ProtobufCBuffer *buffer); -PgQuery__TableLikeClause * - pg_query__table_like_clause__unpack +PgQuery__VacuumRelation * + pg_query__vacuum_relation__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__table_like_clause__free_unpacked - (PgQuery__TableLikeClause *message, +void pg_query__vacuum_relation__free_unpacked + (PgQuery__VacuumRelation *message, ProtobufCAllocator *allocator); -/* PgQuery__FunctionParameter methods */ -void pg_query__function_parameter__init - (PgQuery__FunctionParameter *message); -size_t pg_query__function_parameter__get_packed_size - (const PgQuery__FunctionParameter *message); -size_t pg_query__function_parameter__pack - (const PgQuery__FunctionParameter *message, +/* PgQuery__ExplainStmt methods */ +void pg_query__explain_stmt__init + (PgQuery__ExplainStmt *message); +size_t pg_query__explain_stmt__get_packed_size + (const PgQuery__ExplainStmt *message); +size_t pg_query__explain_stmt__pack + (const PgQuery__ExplainStmt *message, uint8_t *out); -size_t pg_query__function_parameter__pack_to_buffer - (const PgQuery__FunctionParameter *message, +size_t pg_query__explain_stmt__pack_to_buffer + (const PgQuery__ExplainStmt *message, ProtobufCBuffer *buffer); -PgQuery__FunctionParameter * - pg_query__function_parameter__unpack +PgQuery__ExplainStmt * + pg_query__explain_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__function_parameter__free_unpacked - (PgQuery__FunctionParameter *message, +void pg_query__explain_stmt__free_unpacked + (PgQuery__ExplainStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__LockingClause methods */ -void pg_query__locking_clause__init - (PgQuery__LockingClause *message); -size_t pg_query__locking_clause__get_packed_size - (const PgQuery__LockingClause *message); -size_t pg_query__locking_clause__pack - (const PgQuery__LockingClause *message, +/* PgQuery__CreateTableAsStmt methods */ +void pg_query__create_table_as_stmt__init + (PgQuery__CreateTableAsStmt *message); +size_t pg_query__create_table_as_stmt__get_packed_size + (const PgQuery__CreateTableAsStmt *message); +size_t pg_query__create_table_as_stmt__pack + (const PgQuery__CreateTableAsStmt *message, uint8_t *out); -size_t pg_query__locking_clause__pack_to_buffer - (const PgQuery__LockingClause *message, +size_t pg_query__create_table_as_stmt__pack_to_buffer + (const PgQuery__CreateTableAsStmt *message, ProtobufCBuffer *buffer); -PgQuery__LockingClause * - pg_query__locking_clause__unpack +PgQuery__CreateTableAsStmt * + pg_query__create_table_as_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__locking_clause__free_unpacked - (PgQuery__LockingClause *message, +void pg_query__create_table_as_stmt__free_unpacked + (PgQuery__CreateTableAsStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__RowMarkClause methods */ -void pg_query__row_mark_clause__init - (PgQuery__RowMarkClause *message); -size_t pg_query__row_mark_clause__get_packed_size - (const PgQuery__RowMarkClause *message); -size_t pg_query__row_mark_clause__pack - (const PgQuery__RowMarkClause *message, +/* PgQuery__RefreshMatViewStmt methods */ +void pg_query__refresh_mat_view_stmt__init + (PgQuery__RefreshMatViewStmt *message); +size_t pg_query__refresh_mat_view_stmt__get_packed_size + (const PgQuery__RefreshMatViewStmt *message); +size_t pg_query__refresh_mat_view_stmt__pack + (const PgQuery__RefreshMatViewStmt *message, uint8_t *out); -size_t pg_query__row_mark_clause__pack_to_buffer - (const PgQuery__RowMarkClause *message, +size_t pg_query__refresh_mat_view_stmt__pack_to_buffer + (const PgQuery__RefreshMatViewStmt *message, ProtobufCBuffer *buffer); -PgQuery__RowMarkClause * - pg_query__row_mark_clause__unpack +PgQuery__RefreshMatViewStmt * + pg_query__refresh_mat_view_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__row_mark_clause__free_unpacked - (PgQuery__RowMarkClause *message, +void pg_query__refresh_mat_view_stmt__free_unpacked + (PgQuery__RefreshMatViewStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__XmlSerialize methods */ -void pg_query__xml_serialize__init - (PgQuery__XmlSerialize *message); -size_t pg_query__xml_serialize__get_packed_size - (const PgQuery__XmlSerialize *message); -size_t pg_query__xml_serialize__pack - (const PgQuery__XmlSerialize *message, +/* PgQuery__CheckPointStmt methods */ +void pg_query__check_point_stmt__init + (PgQuery__CheckPointStmt *message); +size_t pg_query__check_point_stmt__get_packed_size + (const PgQuery__CheckPointStmt *message); +size_t pg_query__check_point_stmt__pack + (const PgQuery__CheckPointStmt *message, uint8_t *out); -size_t pg_query__xml_serialize__pack_to_buffer - (const PgQuery__XmlSerialize *message, +size_t pg_query__check_point_stmt__pack_to_buffer + (const PgQuery__CheckPointStmt *message, ProtobufCBuffer *buffer); -PgQuery__XmlSerialize * - pg_query__xml_serialize__unpack +PgQuery__CheckPointStmt * + pg_query__check_point_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__xml_serialize__free_unpacked - (PgQuery__XmlSerialize *message, +void pg_query__check_point_stmt__free_unpacked + (PgQuery__CheckPointStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__WithClause methods */ -void pg_query__with_clause__init - (PgQuery__WithClause *message); -size_t pg_query__with_clause__get_packed_size - (const PgQuery__WithClause *message); -size_t pg_query__with_clause__pack - (const PgQuery__WithClause *message, +/* PgQuery__DiscardStmt methods */ +void pg_query__discard_stmt__init + (PgQuery__DiscardStmt *message); +size_t pg_query__discard_stmt__get_packed_size + (const PgQuery__DiscardStmt *message); +size_t pg_query__discard_stmt__pack + (const PgQuery__DiscardStmt *message, uint8_t *out); -size_t pg_query__with_clause__pack_to_buffer - (const PgQuery__WithClause *message, +size_t pg_query__discard_stmt__pack_to_buffer + (const PgQuery__DiscardStmt *message, ProtobufCBuffer *buffer); -PgQuery__WithClause * - pg_query__with_clause__unpack +PgQuery__DiscardStmt * + pg_query__discard_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__with_clause__free_unpacked - (PgQuery__WithClause *message, +void pg_query__discard_stmt__free_unpacked + (PgQuery__DiscardStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__InferClause methods */ -void pg_query__infer_clause__init - (PgQuery__InferClause *message); -size_t pg_query__infer_clause__get_packed_size - (const PgQuery__InferClause *message); -size_t pg_query__infer_clause__pack - (const PgQuery__InferClause *message, +/* PgQuery__LockStmt methods */ +void pg_query__lock_stmt__init + (PgQuery__LockStmt *message); +size_t pg_query__lock_stmt__get_packed_size + (const PgQuery__LockStmt *message); +size_t pg_query__lock_stmt__pack + (const PgQuery__LockStmt *message, uint8_t *out); -size_t pg_query__infer_clause__pack_to_buffer - (const PgQuery__InferClause *message, +size_t pg_query__lock_stmt__pack_to_buffer + (const PgQuery__LockStmt *message, ProtobufCBuffer *buffer); -PgQuery__InferClause * - pg_query__infer_clause__unpack +PgQuery__LockStmt * + pg_query__lock_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__infer_clause__free_unpacked - (PgQuery__InferClause *message, +void pg_query__lock_stmt__free_unpacked + (PgQuery__LockStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__OnConflictClause methods */ -void pg_query__on_conflict_clause__init - (PgQuery__OnConflictClause *message); -size_t pg_query__on_conflict_clause__get_packed_size - (const PgQuery__OnConflictClause *message); -size_t pg_query__on_conflict_clause__pack - (const PgQuery__OnConflictClause *message, +/* PgQuery__ConstraintsSetStmt methods */ +void pg_query__constraints_set_stmt__init + (PgQuery__ConstraintsSetStmt *message); +size_t pg_query__constraints_set_stmt__get_packed_size + (const PgQuery__ConstraintsSetStmt *message); +size_t pg_query__constraints_set_stmt__pack + (const PgQuery__ConstraintsSetStmt *message, uint8_t *out); -size_t pg_query__on_conflict_clause__pack_to_buffer - (const PgQuery__OnConflictClause *message, +size_t pg_query__constraints_set_stmt__pack_to_buffer + (const PgQuery__ConstraintsSetStmt *message, ProtobufCBuffer *buffer); -PgQuery__OnConflictClause * - pg_query__on_conflict_clause__unpack +PgQuery__ConstraintsSetStmt * + pg_query__constraints_set_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__on_conflict_clause__free_unpacked - (PgQuery__OnConflictClause *message, +void pg_query__constraints_set_stmt__free_unpacked + (PgQuery__ConstraintsSetStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CTESearchClause methods */ -void pg_query__ctesearch_clause__init - (PgQuery__CTESearchClause *message); -size_t pg_query__ctesearch_clause__get_packed_size - (const PgQuery__CTESearchClause *message); -size_t pg_query__ctesearch_clause__pack - (const PgQuery__CTESearchClause *message, +/* PgQuery__ReindexStmt methods */ +void pg_query__reindex_stmt__init + (PgQuery__ReindexStmt *message); +size_t pg_query__reindex_stmt__get_packed_size + (const PgQuery__ReindexStmt *message); +size_t pg_query__reindex_stmt__pack + (const PgQuery__ReindexStmt *message, uint8_t *out); -size_t pg_query__ctesearch_clause__pack_to_buffer - (const PgQuery__CTESearchClause *message, +size_t pg_query__reindex_stmt__pack_to_buffer + (const PgQuery__ReindexStmt *message, ProtobufCBuffer *buffer); -PgQuery__CTESearchClause * - pg_query__ctesearch_clause__unpack +PgQuery__ReindexStmt * + pg_query__reindex_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__ctesearch_clause__free_unpacked - (PgQuery__CTESearchClause *message, +void pg_query__reindex_stmt__free_unpacked + (PgQuery__ReindexStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CTECycleClause methods */ -void pg_query__ctecycle_clause__init - (PgQuery__CTECycleClause *message); -size_t pg_query__ctecycle_clause__get_packed_size - (const PgQuery__CTECycleClause *message); -size_t pg_query__ctecycle_clause__pack - (const PgQuery__CTECycleClause *message, +/* PgQuery__CreateConversionStmt methods */ +void pg_query__create_conversion_stmt__init + (PgQuery__CreateConversionStmt *message); +size_t pg_query__create_conversion_stmt__get_packed_size + (const PgQuery__CreateConversionStmt *message); +size_t pg_query__create_conversion_stmt__pack + (const PgQuery__CreateConversionStmt *message, uint8_t *out); -size_t pg_query__ctecycle_clause__pack_to_buffer - (const PgQuery__CTECycleClause *message, +size_t pg_query__create_conversion_stmt__pack_to_buffer + (const PgQuery__CreateConversionStmt *message, ProtobufCBuffer *buffer); -PgQuery__CTECycleClause * - pg_query__ctecycle_clause__unpack +PgQuery__CreateConversionStmt * + pg_query__create_conversion_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__ctecycle_clause__free_unpacked - (PgQuery__CTECycleClause *message, +void pg_query__create_conversion_stmt__free_unpacked + (PgQuery__CreateConversionStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CommonTableExpr methods */ -void pg_query__common_table_expr__init - (PgQuery__CommonTableExpr *message); -size_t pg_query__common_table_expr__get_packed_size - (const PgQuery__CommonTableExpr *message); -size_t pg_query__common_table_expr__pack - (const PgQuery__CommonTableExpr *message, +/* PgQuery__CreateCastStmt methods */ +void pg_query__create_cast_stmt__init + (PgQuery__CreateCastStmt *message); +size_t pg_query__create_cast_stmt__get_packed_size + (const PgQuery__CreateCastStmt *message); +size_t pg_query__create_cast_stmt__pack + (const PgQuery__CreateCastStmt *message, uint8_t *out); -size_t pg_query__common_table_expr__pack_to_buffer - (const PgQuery__CommonTableExpr *message, +size_t pg_query__create_cast_stmt__pack_to_buffer + (const PgQuery__CreateCastStmt *message, ProtobufCBuffer *buffer); -PgQuery__CommonTableExpr * - pg_query__common_table_expr__unpack +PgQuery__CreateCastStmt * + pg_query__create_cast_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__common_table_expr__free_unpacked - (PgQuery__CommonTableExpr *message, +void pg_query__create_cast_stmt__free_unpacked + (PgQuery__CreateCastStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__MergeWhenClause methods */ -void pg_query__merge_when_clause__init - (PgQuery__MergeWhenClause *message); -size_t pg_query__merge_when_clause__get_packed_size - (const PgQuery__MergeWhenClause *message); -size_t pg_query__merge_when_clause__pack - (const PgQuery__MergeWhenClause *message, +/* PgQuery__CreateTransformStmt methods */ +void pg_query__create_transform_stmt__init + (PgQuery__CreateTransformStmt *message); +size_t pg_query__create_transform_stmt__get_packed_size + (const PgQuery__CreateTransformStmt *message); +size_t pg_query__create_transform_stmt__pack + (const PgQuery__CreateTransformStmt *message, uint8_t *out); -size_t pg_query__merge_when_clause__pack_to_buffer - (const PgQuery__MergeWhenClause *message, +size_t pg_query__create_transform_stmt__pack_to_buffer + (const PgQuery__CreateTransformStmt *message, ProtobufCBuffer *buffer); -PgQuery__MergeWhenClause * - pg_query__merge_when_clause__unpack +PgQuery__CreateTransformStmt * + pg_query__create_transform_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__merge_when_clause__free_unpacked - (PgQuery__MergeWhenClause *message, +void pg_query__create_transform_stmt__free_unpacked + (PgQuery__CreateTransformStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__RoleSpec methods */ -void pg_query__role_spec__init - (PgQuery__RoleSpec *message); -size_t pg_query__role_spec__get_packed_size - (const PgQuery__RoleSpec *message); -size_t pg_query__role_spec__pack - (const PgQuery__RoleSpec *message, +/* PgQuery__PrepareStmt methods */ +void pg_query__prepare_stmt__init + (PgQuery__PrepareStmt *message); +size_t pg_query__prepare_stmt__get_packed_size + (const PgQuery__PrepareStmt *message); +size_t pg_query__prepare_stmt__pack + (const PgQuery__PrepareStmt *message, uint8_t *out); -size_t pg_query__role_spec__pack_to_buffer - (const PgQuery__RoleSpec *message, +size_t pg_query__prepare_stmt__pack_to_buffer + (const PgQuery__PrepareStmt *message, ProtobufCBuffer *buffer); -PgQuery__RoleSpec * - pg_query__role_spec__unpack +PgQuery__PrepareStmt * + pg_query__prepare_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__role_spec__free_unpacked - (PgQuery__RoleSpec *message, +void pg_query__prepare_stmt__free_unpacked + (PgQuery__PrepareStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__TriggerTransition methods */ -void pg_query__trigger_transition__init - (PgQuery__TriggerTransition *message); -size_t pg_query__trigger_transition__get_packed_size - (const PgQuery__TriggerTransition *message); -size_t pg_query__trigger_transition__pack - (const PgQuery__TriggerTransition *message, +/* PgQuery__ExecuteStmt methods */ +void pg_query__execute_stmt__init + (PgQuery__ExecuteStmt *message); +size_t pg_query__execute_stmt__get_packed_size + (const PgQuery__ExecuteStmt *message); +size_t pg_query__execute_stmt__pack + (const PgQuery__ExecuteStmt *message, uint8_t *out); -size_t pg_query__trigger_transition__pack_to_buffer - (const PgQuery__TriggerTransition *message, +size_t pg_query__execute_stmt__pack_to_buffer + (const PgQuery__ExecuteStmt *message, ProtobufCBuffer *buffer); -PgQuery__TriggerTransition * - pg_query__trigger_transition__unpack +PgQuery__ExecuteStmt * + pg_query__execute_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__trigger_transition__free_unpacked - (PgQuery__TriggerTransition *message, +void pg_query__execute_stmt__free_unpacked + (PgQuery__ExecuteStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__PartitionElem methods */ -void pg_query__partition_elem__init - (PgQuery__PartitionElem *message); -size_t pg_query__partition_elem__get_packed_size - (const PgQuery__PartitionElem *message); -size_t pg_query__partition_elem__pack - (const PgQuery__PartitionElem *message, +/* PgQuery__DeallocateStmt methods */ +void pg_query__deallocate_stmt__init + (PgQuery__DeallocateStmt *message); +size_t pg_query__deallocate_stmt__get_packed_size + (const PgQuery__DeallocateStmt *message); +size_t pg_query__deallocate_stmt__pack + (const PgQuery__DeallocateStmt *message, uint8_t *out); -size_t pg_query__partition_elem__pack_to_buffer - (const PgQuery__PartitionElem *message, +size_t pg_query__deallocate_stmt__pack_to_buffer + (const PgQuery__DeallocateStmt *message, ProtobufCBuffer *buffer); -PgQuery__PartitionElem * - pg_query__partition_elem__unpack +PgQuery__DeallocateStmt * + pg_query__deallocate_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__partition_elem__free_unpacked - (PgQuery__PartitionElem *message, +void pg_query__deallocate_stmt__free_unpacked + (PgQuery__DeallocateStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__PartitionSpec methods */ -void pg_query__partition_spec__init - (PgQuery__PartitionSpec *message); -size_t pg_query__partition_spec__get_packed_size - (const PgQuery__PartitionSpec *message); -size_t pg_query__partition_spec__pack - (const PgQuery__PartitionSpec *message, +/* PgQuery__DropOwnedStmt methods */ +void pg_query__drop_owned_stmt__init + (PgQuery__DropOwnedStmt *message); +size_t pg_query__drop_owned_stmt__get_packed_size + (const PgQuery__DropOwnedStmt *message); +size_t pg_query__drop_owned_stmt__pack + (const PgQuery__DropOwnedStmt *message, uint8_t *out); -size_t pg_query__partition_spec__pack_to_buffer - (const PgQuery__PartitionSpec *message, +size_t pg_query__drop_owned_stmt__pack_to_buffer + (const PgQuery__DropOwnedStmt *message, ProtobufCBuffer *buffer); -PgQuery__PartitionSpec * - pg_query__partition_spec__unpack +PgQuery__DropOwnedStmt * + pg_query__drop_owned_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__partition_spec__free_unpacked - (PgQuery__PartitionSpec *message, +void pg_query__drop_owned_stmt__free_unpacked + (PgQuery__DropOwnedStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__PartitionBoundSpec methods */ -void pg_query__partition_bound_spec__init - (PgQuery__PartitionBoundSpec *message); -size_t pg_query__partition_bound_spec__get_packed_size - (const PgQuery__PartitionBoundSpec *message); -size_t pg_query__partition_bound_spec__pack - (const PgQuery__PartitionBoundSpec *message, +/* PgQuery__ReassignOwnedStmt methods */ +void pg_query__reassign_owned_stmt__init + (PgQuery__ReassignOwnedStmt *message); +size_t pg_query__reassign_owned_stmt__get_packed_size + (const PgQuery__ReassignOwnedStmt *message); +size_t pg_query__reassign_owned_stmt__pack + (const PgQuery__ReassignOwnedStmt *message, uint8_t *out); -size_t pg_query__partition_bound_spec__pack_to_buffer - (const PgQuery__PartitionBoundSpec *message, +size_t pg_query__reassign_owned_stmt__pack_to_buffer + (const PgQuery__ReassignOwnedStmt *message, ProtobufCBuffer *buffer); -PgQuery__PartitionBoundSpec * - pg_query__partition_bound_spec__unpack +PgQuery__ReassignOwnedStmt * + pg_query__reassign_owned_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__partition_bound_spec__free_unpacked - (PgQuery__PartitionBoundSpec *message, +void pg_query__reassign_owned_stmt__free_unpacked + (PgQuery__ReassignOwnedStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__PartitionRangeDatum methods */ -void pg_query__partition_range_datum__init - (PgQuery__PartitionRangeDatum *message); -size_t pg_query__partition_range_datum__get_packed_size - (const PgQuery__PartitionRangeDatum *message); -size_t pg_query__partition_range_datum__pack - (const PgQuery__PartitionRangeDatum *message, +/* PgQuery__AlterTSDictionaryStmt methods */ +void pg_query__alter_tsdictionary_stmt__init + (PgQuery__AlterTSDictionaryStmt *message); +size_t pg_query__alter_tsdictionary_stmt__get_packed_size + (const PgQuery__AlterTSDictionaryStmt *message); +size_t pg_query__alter_tsdictionary_stmt__pack + (const PgQuery__AlterTSDictionaryStmt *message, uint8_t *out); -size_t pg_query__partition_range_datum__pack_to_buffer - (const PgQuery__PartitionRangeDatum *message, +size_t pg_query__alter_tsdictionary_stmt__pack_to_buffer + (const PgQuery__AlterTSDictionaryStmt *message, ProtobufCBuffer *buffer); -PgQuery__PartitionRangeDatum * - pg_query__partition_range_datum__unpack +PgQuery__AlterTSDictionaryStmt * + pg_query__alter_tsdictionary_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__partition_range_datum__free_unpacked - (PgQuery__PartitionRangeDatum *message, +void pg_query__alter_tsdictionary_stmt__free_unpacked + (PgQuery__AlterTSDictionaryStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__PartitionCmd methods */ -void pg_query__partition_cmd__init - (PgQuery__PartitionCmd *message); -size_t pg_query__partition_cmd__get_packed_size - (const PgQuery__PartitionCmd *message); -size_t pg_query__partition_cmd__pack - (const PgQuery__PartitionCmd *message, +/* PgQuery__AlterTSConfigurationStmt methods */ +void pg_query__alter_tsconfiguration_stmt__init + (PgQuery__AlterTSConfigurationStmt *message); +size_t pg_query__alter_tsconfiguration_stmt__get_packed_size + (const PgQuery__AlterTSConfigurationStmt *message); +size_t pg_query__alter_tsconfiguration_stmt__pack + (const PgQuery__AlterTSConfigurationStmt *message, uint8_t *out); -size_t pg_query__partition_cmd__pack_to_buffer - (const PgQuery__PartitionCmd *message, +size_t pg_query__alter_tsconfiguration_stmt__pack_to_buffer + (const PgQuery__AlterTSConfigurationStmt *message, ProtobufCBuffer *buffer); -PgQuery__PartitionCmd * - pg_query__partition_cmd__unpack +PgQuery__AlterTSConfigurationStmt * + pg_query__alter_tsconfiguration_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__partition_cmd__free_unpacked - (PgQuery__PartitionCmd *message, +void pg_query__alter_tsconfiguration_stmt__free_unpacked + (PgQuery__AlterTSConfigurationStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__VacuumRelation methods */ -void pg_query__vacuum_relation__init - (PgQuery__VacuumRelation *message); -size_t pg_query__vacuum_relation__get_packed_size - (const PgQuery__VacuumRelation *message); -size_t pg_query__vacuum_relation__pack - (const PgQuery__VacuumRelation *message, +/* PgQuery__PublicationTable methods */ +void pg_query__publication_table__init + (PgQuery__PublicationTable *message); +size_t pg_query__publication_table__get_packed_size + (const PgQuery__PublicationTable *message); +size_t pg_query__publication_table__pack + (const PgQuery__PublicationTable *message, uint8_t *out); -size_t pg_query__vacuum_relation__pack_to_buffer - (const PgQuery__VacuumRelation *message, +size_t pg_query__publication_table__pack_to_buffer + (const PgQuery__PublicationTable *message, ProtobufCBuffer *buffer); -PgQuery__VacuumRelation * - pg_query__vacuum_relation__unpack +PgQuery__PublicationTable * + pg_query__publication_table__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__vacuum_relation__free_unpacked - (PgQuery__VacuumRelation *message, +void pg_query__publication_table__free_unpacked + (PgQuery__PublicationTable *message, ProtobufCAllocator *allocator); /* PgQuery__PublicationObjSpec methods */ void pg_query__publication_obj_spec__init @@ -10239,62 +10741,100 @@ PgQuery__PublicationObjSpec * void pg_query__publication_obj_spec__free_unpacked (PgQuery__PublicationObjSpec *message, ProtobufCAllocator *allocator); -/* PgQuery__PublicationTable methods */ -void pg_query__publication_table__init - (PgQuery__PublicationTable *message); -size_t pg_query__publication_table__get_packed_size - (const PgQuery__PublicationTable *message); -size_t pg_query__publication_table__pack - (const PgQuery__PublicationTable *message, +/* PgQuery__CreatePublicationStmt methods */ +void pg_query__create_publication_stmt__init + (PgQuery__CreatePublicationStmt *message); +size_t pg_query__create_publication_stmt__get_packed_size + (const PgQuery__CreatePublicationStmt *message); +size_t pg_query__create_publication_stmt__pack + (const PgQuery__CreatePublicationStmt *message, + uint8_t *out); +size_t pg_query__create_publication_stmt__pack_to_buffer + (const PgQuery__CreatePublicationStmt *message, + ProtobufCBuffer *buffer); +PgQuery__CreatePublicationStmt * + pg_query__create_publication_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__create_publication_stmt__free_unpacked + (PgQuery__CreatePublicationStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__AlterPublicationStmt methods */ +void pg_query__alter_publication_stmt__init + (PgQuery__AlterPublicationStmt *message); +size_t pg_query__alter_publication_stmt__get_packed_size + (const PgQuery__AlterPublicationStmt *message); +size_t pg_query__alter_publication_stmt__pack + (const PgQuery__AlterPublicationStmt *message, + uint8_t *out); +size_t pg_query__alter_publication_stmt__pack_to_buffer + (const PgQuery__AlterPublicationStmt *message, + ProtobufCBuffer *buffer); +PgQuery__AlterPublicationStmt * + pg_query__alter_publication_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void pg_query__alter_publication_stmt__free_unpacked + (PgQuery__AlterPublicationStmt *message, + ProtobufCAllocator *allocator); +/* PgQuery__CreateSubscriptionStmt methods */ +void pg_query__create_subscription_stmt__init + (PgQuery__CreateSubscriptionStmt *message); +size_t pg_query__create_subscription_stmt__get_packed_size + (const PgQuery__CreateSubscriptionStmt *message); +size_t pg_query__create_subscription_stmt__pack + (const PgQuery__CreateSubscriptionStmt *message, uint8_t *out); -size_t pg_query__publication_table__pack_to_buffer - (const PgQuery__PublicationTable *message, +size_t pg_query__create_subscription_stmt__pack_to_buffer + (const PgQuery__CreateSubscriptionStmt *message, ProtobufCBuffer *buffer); -PgQuery__PublicationTable * - pg_query__publication_table__unpack +PgQuery__CreateSubscriptionStmt * + pg_query__create_subscription_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__publication_table__free_unpacked - (PgQuery__PublicationTable *message, +void pg_query__create_subscription_stmt__free_unpacked + (PgQuery__CreateSubscriptionStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__InlineCodeBlock methods */ -void pg_query__inline_code_block__init - (PgQuery__InlineCodeBlock *message); -size_t pg_query__inline_code_block__get_packed_size - (const PgQuery__InlineCodeBlock *message); -size_t pg_query__inline_code_block__pack - (const PgQuery__InlineCodeBlock *message, +/* PgQuery__AlterSubscriptionStmt methods */ +void pg_query__alter_subscription_stmt__init + (PgQuery__AlterSubscriptionStmt *message); +size_t pg_query__alter_subscription_stmt__get_packed_size + (const PgQuery__AlterSubscriptionStmt *message); +size_t pg_query__alter_subscription_stmt__pack + (const PgQuery__AlterSubscriptionStmt *message, uint8_t *out); -size_t pg_query__inline_code_block__pack_to_buffer - (const PgQuery__InlineCodeBlock *message, +size_t pg_query__alter_subscription_stmt__pack_to_buffer + (const PgQuery__AlterSubscriptionStmt *message, ProtobufCBuffer *buffer); -PgQuery__InlineCodeBlock * - pg_query__inline_code_block__unpack +PgQuery__AlterSubscriptionStmt * + pg_query__alter_subscription_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__inline_code_block__free_unpacked - (PgQuery__InlineCodeBlock *message, +void pg_query__alter_subscription_stmt__free_unpacked + (PgQuery__AlterSubscriptionStmt *message, ProtobufCAllocator *allocator); -/* PgQuery__CallContext methods */ -void pg_query__call_context__init - (PgQuery__CallContext *message); -size_t pg_query__call_context__get_packed_size - (const PgQuery__CallContext *message); -size_t pg_query__call_context__pack - (const PgQuery__CallContext *message, +/* PgQuery__DropSubscriptionStmt methods */ +void pg_query__drop_subscription_stmt__init + (PgQuery__DropSubscriptionStmt *message); +size_t pg_query__drop_subscription_stmt__get_packed_size + (const PgQuery__DropSubscriptionStmt *message); +size_t pg_query__drop_subscription_stmt__pack + (const PgQuery__DropSubscriptionStmt *message, uint8_t *out); -size_t pg_query__call_context__pack_to_buffer - (const PgQuery__CallContext *message, +size_t pg_query__drop_subscription_stmt__pack_to_buffer + (const PgQuery__DropSubscriptionStmt *message, ProtobufCBuffer *buffer); -PgQuery__CallContext * - pg_query__call_context__unpack +PgQuery__DropSubscriptionStmt * + pg_query__drop_subscription_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data); -void pg_query__call_context__free_unpacked - (PgQuery__CallContext *message, +void pg_query__drop_subscription_stmt__free_unpacked + (PgQuery__DropSubscriptionStmt *message, ProtobufCAllocator *allocator); /* PgQuery__ScanToken methods */ void pg_query__scan_token__init @@ -10362,6 +10902,9 @@ typedef void (*PgQuery__RangeVar_Closure) typedef void (*PgQuery__TableFunc_Closure) (const PgQuery__TableFunc *message, void *closure_data); +typedef void (*PgQuery__IntoClause_Closure) + (const PgQuery__IntoClause *message, + void *closure_data); typedef void (*PgQuery__Var_Closure) (const PgQuery__Var *message, void *closure_data); @@ -10461,6 +11004,21 @@ typedef void (*PgQuery__SQLValueFunction_Closure) typedef void (*PgQuery__XmlExpr_Closure) (const PgQuery__XmlExpr *message, void *closure_data); +typedef void (*PgQuery__JsonFormat_Closure) + (const PgQuery__JsonFormat *message, + void *closure_data); +typedef void (*PgQuery__JsonReturning_Closure) + (const PgQuery__JsonReturning *message, + void *closure_data); +typedef void (*PgQuery__JsonValueExpr_Closure) + (const PgQuery__JsonValueExpr *message, + void *closure_data); +typedef void (*PgQuery__JsonConstructorExpr_Closure) + (const PgQuery__JsonConstructorExpr *message, + void *closure_data); +typedef void (*PgQuery__JsonIsPredicate_Closure) + (const PgQuery__JsonIsPredicate *message, + void *closure_data); typedef void (*PgQuery__NullTest_Closure) (const PgQuery__NullTest *message, void *closure_data); @@ -10500,224 +11058,257 @@ typedef void (*PgQuery__FromExpr_Closure) typedef void (*PgQuery__OnConflictExpr_Closure) (const PgQuery__OnConflictExpr *message, void *closure_data); -typedef void (*PgQuery__IntoClause_Closure) - (const PgQuery__IntoClause *message, +typedef void (*PgQuery__Query_Closure) + (const PgQuery__Query *message, void *closure_data); -typedef void (*PgQuery__MergeAction_Closure) - (const PgQuery__MergeAction *message, +typedef void (*PgQuery__TypeName_Closure) + (const PgQuery__TypeName *message, void *closure_data); -typedef void (*PgQuery__RawStmt_Closure) - (const PgQuery__RawStmt *message, +typedef void (*PgQuery__ColumnRef_Closure) + (const PgQuery__ColumnRef *message, void *closure_data); -typedef void (*PgQuery__Query_Closure) - (const PgQuery__Query *message, +typedef void (*PgQuery__ParamRef_Closure) + (const PgQuery__ParamRef *message, void *closure_data); -typedef void (*PgQuery__InsertStmt_Closure) - (const PgQuery__InsertStmt *message, +typedef void (*PgQuery__AExpr_Closure) + (const PgQuery__AExpr *message, void *closure_data); -typedef void (*PgQuery__DeleteStmt_Closure) - (const PgQuery__DeleteStmt *message, +typedef void (*PgQuery__TypeCast_Closure) + (const PgQuery__TypeCast *message, void *closure_data); -typedef void (*PgQuery__UpdateStmt_Closure) - (const PgQuery__UpdateStmt *message, +typedef void (*PgQuery__CollateClause_Closure) + (const PgQuery__CollateClause *message, void *closure_data); -typedef void (*PgQuery__MergeStmt_Closure) - (const PgQuery__MergeStmt *message, +typedef void (*PgQuery__RoleSpec_Closure) + (const PgQuery__RoleSpec *message, void *closure_data); -typedef void (*PgQuery__SelectStmt_Closure) - (const PgQuery__SelectStmt *message, +typedef void (*PgQuery__FuncCall_Closure) + (const PgQuery__FuncCall *message, void *closure_data); -typedef void (*PgQuery__ReturnStmt_Closure) - (const PgQuery__ReturnStmt *message, +typedef void (*PgQuery__AStar_Closure) + (const PgQuery__AStar *message, void *closure_data); -typedef void (*PgQuery__PLAssignStmt_Closure) - (const PgQuery__PLAssignStmt *message, +typedef void (*PgQuery__AIndices_Closure) + (const PgQuery__AIndices *message, void *closure_data); -typedef void (*PgQuery__AlterTableStmt_Closure) - (const PgQuery__AlterTableStmt *message, +typedef void (*PgQuery__AIndirection_Closure) + (const PgQuery__AIndirection *message, void *closure_data); -typedef void (*PgQuery__AlterTableCmd_Closure) - (const PgQuery__AlterTableCmd *message, +typedef void (*PgQuery__AArrayExpr_Closure) + (const PgQuery__AArrayExpr *message, void *closure_data); -typedef void (*PgQuery__AlterDomainStmt_Closure) - (const PgQuery__AlterDomainStmt *message, +typedef void (*PgQuery__ResTarget_Closure) + (const PgQuery__ResTarget *message, void *closure_data); -typedef void (*PgQuery__SetOperationStmt_Closure) - (const PgQuery__SetOperationStmt *message, +typedef void (*PgQuery__MultiAssignRef_Closure) + (const PgQuery__MultiAssignRef *message, void *closure_data); -typedef void (*PgQuery__GrantStmt_Closure) - (const PgQuery__GrantStmt *message, +typedef void (*PgQuery__SortBy_Closure) + (const PgQuery__SortBy *message, void *closure_data); -typedef void (*PgQuery__GrantRoleStmt_Closure) - (const PgQuery__GrantRoleStmt *message, +typedef void (*PgQuery__WindowDef_Closure) + (const PgQuery__WindowDef *message, void *closure_data); -typedef void (*PgQuery__AlterDefaultPrivilegesStmt_Closure) - (const PgQuery__AlterDefaultPrivilegesStmt *message, +typedef void (*PgQuery__RangeSubselect_Closure) + (const PgQuery__RangeSubselect *message, void *closure_data); -typedef void (*PgQuery__ClosePortalStmt_Closure) - (const PgQuery__ClosePortalStmt *message, +typedef void (*PgQuery__RangeFunction_Closure) + (const PgQuery__RangeFunction *message, void *closure_data); -typedef void (*PgQuery__ClusterStmt_Closure) - (const PgQuery__ClusterStmt *message, +typedef void (*PgQuery__RangeTableFunc_Closure) + (const PgQuery__RangeTableFunc *message, void *closure_data); -typedef void (*PgQuery__CopyStmt_Closure) - (const PgQuery__CopyStmt *message, +typedef void (*PgQuery__RangeTableFuncCol_Closure) + (const PgQuery__RangeTableFuncCol *message, void *closure_data); -typedef void (*PgQuery__CreateStmt_Closure) - (const PgQuery__CreateStmt *message, +typedef void (*PgQuery__RangeTableSample_Closure) + (const PgQuery__RangeTableSample *message, void *closure_data); -typedef void (*PgQuery__DefineStmt_Closure) - (const PgQuery__DefineStmt *message, +typedef void (*PgQuery__ColumnDef_Closure) + (const PgQuery__ColumnDef *message, void *closure_data); -typedef void (*PgQuery__DropStmt_Closure) - (const PgQuery__DropStmt *message, +typedef void (*PgQuery__TableLikeClause_Closure) + (const PgQuery__TableLikeClause *message, void *closure_data); -typedef void (*PgQuery__TruncateStmt_Closure) - (const PgQuery__TruncateStmt *message, +typedef void (*PgQuery__IndexElem_Closure) + (const PgQuery__IndexElem *message, void *closure_data); -typedef void (*PgQuery__CommentStmt_Closure) - (const PgQuery__CommentStmt *message, +typedef void (*PgQuery__DefElem_Closure) + (const PgQuery__DefElem *message, void *closure_data); -typedef void (*PgQuery__FetchStmt_Closure) - (const PgQuery__FetchStmt *message, +typedef void (*PgQuery__LockingClause_Closure) + (const PgQuery__LockingClause *message, void *closure_data); -typedef void (*PgQuery__IndexStmt_Closure) - (const PgQuery__IndexStmt *message, +typedef void (*PgQuery__XmlSerialize_Closure) + (const PgQuery__XmlSerialize *message, void *closure_data); -typedef void (*PgQuery__CreateFunctionStmt_Closure) - (const PgQuery__CreateFunctionStmt *message, +typedef void (*PgQuery__PartitionElem_Closure) + (const PgQuery__PartitionElem *message, void *closure_data); -typedef void (*PgQuery__AlterFunctionStmt_Closure) - (const PgQuery__AlterFunctionStmt *message, +typedef void (*PgQuery__PartitionSpec_Closure) + (const PgQuery__PartitionSpec *message, void *closure_data); -typedef void (*PgQuery__DoStmt_Closure) - (const PgQuery__DoStmt *message, +typedef void (*PgQuery__PartitionBoundSpec_Closure) + (const PgQuery__PartitionBoundSpec *message, void *closure_data); -typedef void (*PgQuery__RenameStmt_Closure) - (const PgQuery__RenameStmt *message, +typedef void (*PgQuery__PartitionRangeDatum_Closure) + (const PgQuery__PartitionRangeDatum *message, void *closure_data); -typedef void (*PgQuery__RuleStmt_Closure) - (const PgQuery__RuleStmt *message, +typedef void (*PgQuery__PartitionCmd_Closure) + (const PgQuery__PartitionCmd *message, void *closure_data); -typedef void (*PgQuery__NotifyStmt_Closure) - (const PgQuery__NotifyStmt *message, +typedef void (*PgQuery__RangeTblEntry_Closure) + (const PgQuery__RangeTblEntry *message, void *closure_data); -typedef void (*PgQuery__ListenStmt_Closure) - (const PgQuery__ListenStmt *message, +typedef void (*PgQuery__RTEPermissionInfo_Closure) + (const PgQuery__RTEPermissionInfo *message, void *closure_data); -typedef void (*PgQuery__UnlistenStmt_Closure) - (const PgQuery__UnlistenStmt *message, +typedef void (*PgQuery__RangeTblFunction_Closure) + (const PgQuery__RangeTblFunction *message, void *closure_data); -typedef void (*PgQuery__TransactionStmt_Closure) - (const PgQuery__TransactionStmt *message, +typedef void (*PgQuery__TableSampleClause_Closure) + (const PgQuery__TableSampleClause *message, + void *closure_data); +typedef void (*PgQuery__WithCheckOption_Closure) + (const PgQuery__WithCheckOption *message, + void *closure_data); +typedef void (*PgQuery__SortGroupClause_Closure) + (const PgQuery__SortGroupClause *message, + void *closure_data); +typedef void (*PgQuery__GroupingSet_Closure) + (const PgQuery__GroupingSet *message, + void *closure_data); +typedef void (*PgQuery__WindowClause_Closure) + (const PgQuery__WindowClause *message, + void *closure_data); +typedef void (*PgQuery__RowMarkClause_Closure) + (const PgQuery__RowMarkClause *message, + void *closure_data); +typedef void (*PgQuery__WithClause_Closure) + (const PgQuery__WithClause *message, + void *closure_data); +typedef void (*PgQuery__InferClause_Closure) + (const PgQuery__InferClause *message, + void *closure_data); +typedef void (*PgQuery__OnConflictClause_Closure) + (const PgQuery__OnConflictClause *message, + void *closure_data); +typedef void (*PgQuery__CTESearchClause_Closure) + (const PgQuery__CTESearchClause *message, void *closure_data); -typedef void (*PgQuery__ViewStmt_Closure) - (const PgQuery__ViewStmt *message, +typedef void (*PgQuery__CTECycleClause_Closure) + (const PgQuery__CTECycleClause *message, void *closure_data); -typedef void (*PgQuery__LoadStmt_Closure) - (const PgQuery__LoadStmt *message, +typedef void (*PgQuery__CommonTableExpr_Closure) + (const PgQuery__CommonTableExpr *message, void *closure_data); -typedef void (*PgQuery__CreateDomainStmt_Closure) - (const PgQuery__CreateDomainStmt *message, +typedef void (*PgQuery__MergeWhenClause_Closure) + (const PgQuery__MergeWhenClause *message, void *closure_data); -typedef void (*PgQuery__CreatedbStmt_Closure) - (const PgQuery__CreatedbStmt *message, +typedef void (*PgQuery__MergeAction_Closure) + (const PgQuery__MergeAction *message, void *closure_data); -typedef void (*PgQuery__DropdbStmt_Closure) - (const PgQuery__DropdbStmt *message, +typedef void (*PgQuery__TriggerTransition_Closure) + (const PgQuery__TriggerTransition *message, void *closure_data); -typedef void (*PgQuery__VacuumStmt_Closure) - (const PgQuery__VacuumStmt *message, +typedef void (*PgQuery__JsonOutput_Closure) + (const PgQuery__JsonOutput *message, void *closure_data); -typedef void (*PgQuery__ExplainStmt_Closure) - (const PgQuery__ExplainStmt *message, +typedef void (*PgQuery__JsonKeyValue_Closure) + (const PgQuery__JsonKeyValue *message, void *closure_data); -typedef void (*PgQuery__CreateTableAsStmt_Closure) - (const PgQuery__CreateTableAsStmt *message, +typedef void (*PgQuery__JsonObjectConstructor_Closure) + (const PgQuery__JsonObjectConstructor *message, void *closure_data); -typedef void (*PgQuery__CreateSeqStmt_Closure) - (const PgQuery__CreateSeqStmt *message, +typedef void (*PgQuery__JsonArrayConstructor_Closure) + (const PgQuery__JsonArrayConstructor *message, void *closure_data); -typedef void (*PgQuery__AlterSeqStmt_Closure) - (const PgQuery__AlterSeqStmt *message, +typedef void (*PgQuery__JsonArrayQueryConstructor_Closure) + (const PgQuery__JsonArrayQueryConstructor *message, void *closure_data); -typedef void (*PgQuery__VariableSetStmt_Closure) - (const PgQuery__VariableSetStmt *message, +typedef void (*PgQuery__JsonAggConstructor_Closure) + (const PgQuery__JsonAggConstructor *message, void *closure_data); -typedef void (*PgQuery__VariableShowStmt_Closure) - (const PgQuery__VariableShowStmt *message, +typedef void (*PgQuery__JsonObjectAgg_Closure) + (const PgQuery__JsonObjectAgg *message, void *closure_data); -typedef void (*PgQuery__DiscardStmt_Closure) - (const PgQuery__DiscardStmt *message, +typedef void (*PgQuery__JsonArrayAgg_Closure) + (const PgQuery__JsonArrayAgg *message, void *closure_data); -typedef void (*PgQuery__CreateTrigStmt_Closure) - (const PgQuery__CreateTrigStmt *message, +typedef void (*PgQuery__RawStmt_Closure) + (const PgQuery__RawStmt *message, void *closure_data); -typedef void (*PgQuery__CreatePLangStmt_Closure) - (const PgQuery__CreatePLangStmt *message, +typedef void (*PgQuery__InsertStmt_Closure) + (const PgQuery__InsertStmt *message, void *closure_data); -typedef void (*PgQuery__CreateRoleStmt_Closure) - (const PgQuery__CreateRoleStmt *message, +typedef void (*PgQuery__DeleteStmt_Closure) + (const PgQuery__DeleteStmt *message, void *closure_data); -typedef void (*PgQuery__AlterRoleStmt_Closure) - (const PgQuery__AlterRoleStmt *message, +typedef void (*PgQuery__UpdateStmt_Closure) + (const PgQuery__UpdateStmt *message, void *closure_data); -typedef void (*PgQuery__DropRoleStmt_Closure) - (const PgQuery__DropRoleStmt *message, +typedef void (*PgQuery__MergeStmt_Closure) + (const PgQuery__MergeStmt *message, void *closure_data); -typedef void (*PgQuery__LockStmt_Closure) - (const PgQuery__LockStmt *message, +typedef void (*PgQuery__SelectStmt_Closure) + (const PgQuery__SelectStmt *message, void *closure_data); -typedef void (*PgQuery__ConstraintsSetStmt_Closure) - (const PgQuery__ConstraintsSetStmt *message, +typedef void (*PgQuery__SetOperationStmt_Closure) + (const PgQuery__SetOperationStmt *message, void *closure_data); -typedef void (*PgQuery__ReindexStmt_Closure) - (const PgQuery__ReindexStmt *message, +typedef void (*PgQuery__ReturnStmt_Closure) + (const PgQuery__ReturnStmt *message, void *closure_data); -typedef void (*PgQuery__CheckPointStmt_Closure) - (const PgQuery__CheckPointStmt *message, +typedef void (*PgQuery__PLAssignStmt_Closure) + (const PgQuery__PLAssignStmt *message, void *closure_data); typedef void (*PgQuery__CreateSchemaStmt_Closure) (const PgQuery__CreateSchemaStmt *message, void *closure_data); -typedef void (*PgQuery__AlterDatabaseStmt_Closure) - (const PgQuery__AlterDatabaseStmt *message, +typedef void (*PgQuery__AlterTableStmt_Closure) + (const PgQuery__AlterTableStmt *message, void *closure_data); -typedef void (*PgQuery__AlterDatabaseRefreshCollStmt_Closure) - (const PgQuery__AlterDatabaseRefreshCollStmt *message, +typedef void (*PgQuery__ReplicaIdentityStmt_Closure) + (const PgQuery__ReplicaIdentityStmt *message, void *closure_data); -typedef void (*PgQuery__AlterDatabaseSetStmt_Closure) - (const PgQuery__AlterDatabaseSetStmt *message, +typedef void (*PgQuery__AlterTableCmd_Closure) + (const PgQuery__AlterTableCmd *message, void *closure_data); -typedef void (*PgQuery__AlterRoleSetStmt_Closure) - (const PgQuery__AlterRoleSetStmt *message, +typedef void (*PgQuery__AlterCollationStmt_Closure) + (const PgQuery__AlterCollationStmt *message, void *closure_data); -typedef void (*PgQuery__CreateConversionStmt_Closure) - (const PgQuery__CreateConversionStmt *message, +typedef void (*PgQuery__AlterDomainStmt_Closure) + (const PgQuery__AlterDomainStmt *message, void *closure_data); -typedef void (*PgQuery__CreateCastStmt_Closure) - (const PgQuery__CreateCastStmt *message, +typedef void (*PgQuery__GrantStmt_Closure) + (const PgQuery__GrantStmt *message, void *closure_data); -typedef void (*PgQuery__CreateOpClassStmt_Closure) - (const PgQuery__CreateOpClassStmt *message, +typedef void (*PgQuery__ObjectWithArgs_Closure) + (const PgQuery__ObjectWithArgs *message, void *closure_data); -typedef void (*PgQuery__CreateOpFamilyStmt_Closure) - (const PgQuery__CreateOpFamilyStmt *message, +typedef void (*PgQuery__AccessPriv_Closure) + (const PgQuery__AccessPriv *message, void *closure_data); -typedef void (*PgQuery__AlterOpFamilyStmt_Closure) - (const PgQuery__AlterOpFamilyStmt *message, +typedef void (*PgQuery__GrantRoleStmt_Closure) + (const PgQuery__GrantRoleStmt *message, void *closure_data); -typedef void (*PgQuery__PrepareStmt_Closure) - (const PgQuery__PrepareStmt *message, +typedef void (*PgQuery__AlterDefaultPrivilegesStmt_Closure) + (const PgQuery__AlterDefaultPrivilegesStmt *message, void *closure_data); -typedef void (*PgQuery__ExecuteStmt_Closure) - (const PgQuery__ExecuteStmt *message, +typedef void (*PgQuery__CopyStmt_Closure) + (const PgQuery__CopyStmt *message, void *closure_data); -typedef void (*PgQuery__DeallocateStmt_Closure) - (const PgQuery__DeallocateStmt *message, +typedef void (*PgQuery__VariableSetStmt_Closure) + (const PgQuery__VariableSetStmt *message, void *closure_data); -typedef void (*PgQuery__DeclareCursorStmt_Closure) - (const PgQuery__DeclareCursorStmt *message, +typedef void (*PgQuery__VariableShowStmt_Closure) + (const PgQuery__VariableShowStmt *message, + void *closure_data); +typedef void (*PgQuery__CreateStmt_Closure) + (const PgQuery__CreateStmt *message, + void *closure_data); +typedef void (*PgQuery__Constraint_Closure) + (const PgQuery__Constraint *message, void *closure_data); typedef void (*PgQuery__CreateTableSpaceStmt_Closure) (const PgQuery__CreateTableSpaceStmt *message, @@ -10725,44 +11316,20 @@ typedef void (*PgQuery__CreateTableSpaceStmt_Closure) typedef void (*PgQuery__DropTableSpaceStmt_Closure) (const PgQuery__DropTableSpaceStmt *message, void *closure_data); -typedef void (*PgQuery__AlterObjectDependsStmt_Closure) - (const PgQuery__AlterObjectDependsStmt *message, - void *closure_data); -typedef void (*PgQuery__AlterObjectSchemaStmt_Closure) - (const PgQuery__AlterObjectSchemaStmt *message, - void *closure_data); -typedef void (*PgQuery__AlterOwnerStmt_Closure) - (const PgQuery__AlterOwnerStmt *message, - void *closure_data); -typedef void (*PgQuery__AlterOperatorStmt_Closure) - (const PgQuery__AlterOperatorStmt *message, - void *closure_data); -typedef void (*PgQuery__AlterTypeStmt_Closure) - (const PgQuery__AlterTypeStmt *message, - void *closure_data); -typedef void (*PgQuery__DropOwnedStmt_Closure) - (const PgQuery__DropOwnedStmt *message, - void *closure_data); -typedef void (*PgQuery__ReassignOwnedStmt_Closure) - (const PgQuery__ReassignOwnedStmt *message, - void *closure_data); -typedef void (*PgQuery__CompositeTypeStmt_Closure) - (const PgQuery__CompositeTypeStmt *message, - void *closure_data); -typedef void (*PgQuery__CreateEnumStmt_Closure) - (const PgQuery__CreateEnumStmt *message, +typedef void (*PgQuery__AlterTableSpaceOptionsStmt_Closure) + (const PgQuery__AlterTableSpaceOptionsStmt *message, void *closure_data); -typedef void (*PgQuery__CreateRangeStmt_Closure) - (const PgQuery__CreateRangeStmt *message, +typedef void (*PgQuery__AlterTableMoveAllStmt_Closure) + (const PgQuery__AlterTableMoveAllStmt *message, void *closure_data); -typedef void (*PgQuery__AlterEnumStmt_Closure) - (const PgQuery__AlterEnumStmt *message, +typedef void (*PgQuery__CreateExtensionStmt_Closure) + (const PgQuery__CreateExtensionStmt *message, void *closure_data); -typedef void (*PgQuery__AlterTSDictionaryStmt_Closure) - (const PgQuery__AlterTSDictionaryStmt *message, +typedef void (*PgQuery__AlterExtensionStmt_Closure) + (const PgQuery__AlterExtensionStmt *message, void *closure_data); -typedef void (*PgQuery__AlterTSConfigurationStmt_Closure) - (const PgQuery__AlterTSConfigurationStmt *message, +typedef void (*PgQuery__AlterExtensionContentsStmt_Closure) + (const PgQuery__AlterExtensionContentsStmt *message, void *closure_data); typedef void (*PgQuery__CreateFdwStmt_Closure) (const PgQuery__CreateFdwStmt *message, @@ -10776,6 +11343,9 @@ typedef void (*PgQuery__CreateForeignServerStmt_Closure) typedef void (*PgQuery__AlterForeignServerStmt_Closure) (const PgQuery__AlterForeignServerStmt *message, void *closure_data); +typedef void (*PgQuery__CreateForeignTableStmt_Closure) + (const PgQuery__CreateForeignTableStmt *message, + void *closure_data); typedef void (*PgQuery__CreateUserMappingStmt_Closure) (const PgQuery__CreateUserMappingStmt *message, void *closure_data); @@ -10785,29 +11355,20 @@ typedef void (*PgQuery__AlterUserMappingStmt_Closure) typedef void (*PgQuery__DropUserMappingStmt_Closure) (const PgQuery__DropUserMappingStmt *message, void *closure_data); -typedef void (*PgQuery__AlterTableSpaceOptionsStmt_Closure) - (const PgQuery__AlterTableSpaceOptionsStmt *message, - void *closure_data); -typedef void (*PgQuery__AlterTableMoveAllStmt_Closure) - (const PgQuery__AlterTableMoveAllStmt *message, - void *closure_data); -typedef void (*PgQuery__SecLabelStmt_Closure) - (const PgQuery__SecLabelStmt *message, - void *closure_data); -typedef void (*PgQuery__CreateForeignTableStmt_Closure) - (const PgQuery__CreateForeignTableStmt *message, - void *closure_data); typedef void (*PgQuery__ImportForeignSchemaStmt_Closure) (const PgQuery__ImportForeignSchemaStmt *message, void *closure_data); -typedef void (*PgQuery__CreateExtensionStmt_Closure) - (const PgQuery__CreateExtensionStmt *message, +typedef void (*PgQuery__CreatePolicyStmt_Closure) + (const PgQuery__CreatePolicyStmt *message, void *closure_data); -typedef void (*PgQuery__AlterExtensionStmt_Closure) - (const PgQuery__AlterExtensionStmt *message, +typedef void (*PgQuery__AlterPolicyStmt_Closure) + (const PgQuery__AlterPolicyStmt *message, void *closure_data); -typedef void (*PgQuery__AlterExtensionContentsStmt_Closure) - (const PgQuery__AlterExtensionContentsStmt *message, +typedef void (*PgQuery__CreateAmStmt_Closure) + (const PgQuery__CreateAmStmt *message, + void *closure_data); +typedef void (*PgQuery__CreateTrigStmt_Closure) + (const PgQuery__CreateTrigStmt *message, void *closure_data); typedef void (*PgQuery__CreateEventTrigStmt_Closure) (const PgQuery__CreateEventTrigStmt *message, @@ -10815,230 +11376,251 @@ typedef void (*PgQuery__CreateEventTrigStmt_Closure) typedef void (*PgQuery__AlterEventTrigStmt_Closure) (const PgQuery__AlterEventTrigStmt *message, void *closure_data); -typedef void (*PgQuery__RefreshMatViewStmt_Closure) - (const PgQuery__RefreshMatViewStmt *message, +typedef void (*PgQuery__CreatePLangStmt_Closure) + (const PgQuery__CreatePLangStmt *message, void *closure_data); -typedef void (*PgQuery__ReplicaIdentityStmt_Closure) - (const PgQuery__ReplicaIdentityStmt *message, +typedef void (*PgQuery__CreateRoleStmt_Closure) + (const PgQuery__CreateRoleStmt *message, void *closure_data); -typedef void (*PgQuery__AlterSystemStmt_Closure) - (const PgQuery__AlterSystemStmt *message, +typedef void (*PgQuery__AlterRoleStmt_Closure) + (const PgQuery__AlterRoleStmt *message, void *closure_data); -typedef void (*PgQuery__CreatePolicyStmt_Closure) - (const PgQuery__CreatePolicyStmt *message, +typedef void (*PgQuery__AlterRoleSetStmt_Closure) + (const PgQuery__AlterRoleSetStmt *message, void *closure_data); -typedef void (*PgQuery__AlterPolicyStmt_Closure) - (const PgQuery__AlterPolicyStmt *message, +typedef void (*PgQuery__DropRoleStmt_Closure) + (const PgQuery__DropRoleStmt *message, void *closure_data); -typedef void (*PgQuery__CreateTransformStmt_Closure) - (const PgQuery__CreateTransformStmt *message, +typedef void (*PgQuery__CreateSeqStmt_Closure) + (const PgQuery__CreateSeqStmt *message, + void *closure_data); +typedef void (*PgQuery__AlterSeqStmt_Closure) + (const PgQuery__AlterSeqStmt *message, + void *closure_data); +typedef void (*PgQuery__DefineStmt_Closure) + (const PgQuery__DefineStmt *message, + void *closure_data); +typedef void (*PgQuery__CreateDomainStmt_Closure) + (const PgQuery__CreateDomainStmt *message, + void *closure_data); +typedef void (*PgQuery__CreateOpClassStmt_Closure) + (const PgQuery__CreateOpClassStmt *message, + void *closure_data); +typedef void (*PgQuery__CreateOpClassItem_Closure) + (const PgQuery__CreateOpClassItem *message, + void *closure_data); +typedef void (*PgQuery__CreateOpFamilyStmt_Closure) + (const PgQuery__CreateOpFamilyStmt *message, + void *closure_data); +typedef void (*PgQuery__AlterOpFamilyStmt_Closure) + (const PgQuery__AlterOpFamilyStmt *message, + void *closure_data); +typedef void (*PgQuery__DropStmt_Closure) + (const PgQuery__DropStmt *message, + void *closure_data); +typedef void (*PgQuery__TruncateStmt_Closure) + (const PgQuery__TruncateStmt *message, void *closure_data); -typedef void (*PgQuery__CreateAmStmt_Closure) - (const PgQuery__CreateAmStmt *message, +typedef void (*PgQuery__CommentStmt_Closure) + (const PgQuery__CommentStmt *message, void *closure_data); -typedef void (*PgQuery__CreatePublicationStmt_Closure) - (const PgQuery__CreatePublicationStmt *message, +typedef void (*PgQuery__SecLabelStmt_Closure) + (const PgQuery__SecLabelStmt *message, void *closure_data); -typedef void (*PgQuery__AlterPublicationStmt_Closure) - (const PgQuery__AlterPublicationStmt *message, +typedef void (*PgQuery__DeclareCursorStmt_Closure) + (const PgQuery__DeclareCursorStmt *message, void *closure_data); -typedef void (*PgQuery__CreateSubscriptionStmt_Closure) - (const PgQuery__CreateSubscriptionStmt *message, +typedef void (*PgQuery__ClosePortalStmt_Closure) + (const PgQuery__ClosePortalStmt *message, void *closure_data); -typedef void (*PgQuery__AlterSubscriptionStmt_Closure) - (const PgQuery__AlterSubscriptionStmt *message, +typedef void (*PgQuery__FetchStmt_Closure) + (const PgQuery__FetchStmt *message, void *closure_data); -typedef void (*PgQuery__DropSubscriptionStmt_Closure) - (const PgQuery__DropSubscriptionStmt *message, +typedef void (*PgQuery__IndexStmt_Closure) + (const PgQuery__IndexStmt *message, void *closure_data); typedef void (*PgQuery__CreateStatsStmt_Closure) (const PgQuery__CreateStatsStmt *message, void *closure_data); -typedef void (*PgQuery__AlterCollationStmt_Closure) - (const PgQuery__AlterCollationStmt *message, - void *closure_data); -typedef void (*PgQuery__CallStmt_Closure) - (const PgQuery__CallStmt *message, +typedef void (*PgQuery__StatsElem_Closure) + (const PgQuery__StatsElem *message, void *closure_data); typedef void (*PgQuery__AlterStatsStmt_Closure) (const PgQuery__AlterStatsStmt *message, void *closure_data); -typedef void (*PgQuery__AExpr_Closure) - (const PgQuery__AExpr *message, - void *closure_data); -typedef void (*PgQuery__ColumnRef_Closure) - (const PgQuery__ColumnRef *message, - void *closure_data); -typedef void (*PgQuery__ParamRef_Closure) - (const PgQuery__ParamRef *message, - void *closure_data); -typedef void (*PgQuery__FuncCall_Closure) - (const PgQuery__FuncCall *message, +typedef void (*PgQuery__CreateFunctionStmt_Closure) + (const PgQuery__CreateFunctionStmt *message, void *closure_data); -typedef void (*PgQuery__AStar_Closure) - (const PgQuery__AStar *message, +typedef void (*PgQuery__FunctionParameter_Closure) + (const PgQuery__FunctionParameter *message, void *closure_data); -typedef void (*PgQuery__AIndices_Closure) - (const PgQuery__AIndices *message, +typedef void (*PgQuery__AlterFunctionStmt_Closure) + (const PgQuery__AlterFunctionStmt *message, void *closure_data); -typedef void (*PgQuery__AIndirection_Closure) - (const PgQuery__AIndirection *message, +typedef void (*PgQuery__DoStmt_Closure) + (const PgQuery__DoStmt *message, void *closure_data); -typedef void (*PgQuery__AArrayExpr_Closure) - (const PgQuery__AArrayExpr *message, +typedef void (*PgQuery__InlineCodeBlock_Closure) + (const PgQuery__InlineCodeBlock *message, void *closure_data); -typedef void (*PgQuery__ResTarget_Closure) - (const PgQuery__ResTarget *message, +typedef void (*PgQuery__CallStmt_Closure) + (const PgQuery__CallStmt *message, void *closure_data); -typedef void (*PgQuery__MultiAssignRef_Closure) - (const PgQuery__MultiAssignRef *message, +typedef void (*PgQuery__CallContext_Closure) + (const PgQuery__CallContext *message, void *closure_data); -typedef void (*PgQuery__TypeCast_Closure) - (const PgQuery__TypeCast *message, +typedef void (*PgQuery__RenameStmt_Closure) + (const PgQuery__RenameStmt *message, void *closure_data); -typedef void (*PgQuery__CollateClause_Closure) - (const PgQuery__CollateClause *message, +typedef void (*PgQuery__AlterObjectDependsStmt_Closure) + (const PgQuery__AlterObjectDependsStmt *message, void *closure_data); -typedef void (*PgQuery__SortBy_Closure) - (const PgQuery__SortBy *message, +typedef void (*PgQuery__AlterObjectSchemaStmt_Closure) + (const PgQuery__AlterObjectSchemaStmt *message, void *closure_data); -typedef void (*PgQuery__WindowDef_Closure) - (const PgQuery__WindowDef *message, +typedef void (*PgQuery__AlterOwnerStmt_Closure) + (const PgQuery__AlterOwnerStmt *message, void *closure_data); -typedef void (*PgQuery__RangeSubselect_Closure) - (const PgQuery__RangeSubselect *message, +typedef void (*PgQuery__AlterOperatorStmt_Closure) + (const PgQuery__AlterOperatorStmt *message, void *closure_data); -typedef void (*PgQuery__RangeFunction_Closure) - (const PgQuery__RangeFunction *message, +typedef void (*PgQuery__AlterTypeStmt_Closure) + (const PgQuery__AlterTypeStmt *message, void *closure_data); -typedef void (*PgQuery__RangeTableSample_Closure) - (const PgQuery__RangeTableSample *message, +typedef void (*PgQuery__RuleStmt_Closure) + (const PgQuery__RuleStmt *message, void *closure_data); -typedef void (*PgQuery__RangeTableFunc_Closure) - (const PgQuery__RangeTableFunc *message, +typedef void (*PgQuery__NotifyStmt_Closure) + (const PgQuery__NotifyStmt *message, void *closure_data); -typedef void (*PgQuery__RangeTableFuncCol_Closure) - (const PgQuery__RangeTableFuncCol *message, +typedef void (*PgQuery__ListenStmt_Closure) + (const PgQuery__ListenStmt *message, void *closure_data); -typedef void (*PgQuery__TypeName_Closure) - (const PgQuery__TypeName *message, +typedef void (*PgQuery__UnlistenStmt_Closure) + (const PgQuery__UnlistenStmt *message, void *closure_data); -typedef void (*PgQuery__ColumnDef_Closure) - (const PgQuery__ColumnDef *message, +typedef void (*PgQuery__TransactionStmt_Closure) + (const PgQuery__TransactionStmt *message, void *closure_data); -typedef void (*PgQuery__IndexElem_Closure) - (const PgQuery__IndexElem *message, +typedef void (*PgQuery__CompositeTypeStmt_Closure) + (const PgQuery__CompositeTypeStmt *message, void *closure_data); -typedef void (*PgQuery__StatsElem_Closure) - (const PgQuery__StatsElem *message, +typedef void (*PgQuery__CreateEnumStmt_Closure) + (const PgQuery__CreateEnumStmt *message, void *closure_data); -typedef void (*PgQuery__Constraint_Closure) - (const PgQuery__Constraint *message, +typedef void (*PgQuery__CreateRangeStmt_Closure) + (const PgQuery__CreateRangeStmt *message, void *closure_data); -typedef void (*PgQuery__DefElem_Closure) - (const PgQuery__DefElem *message, +typedef void (*PgQuery__AlterEnumStmt_Closure) + (const PgQuery__AlterEnumStmt *message, void *closure_data); -typedef void (*PgQuery__RangeTblEntry_Closure) - (const PgQuery__RangeTblEntry *message, +typedef void (*PgQuery__ViewStmt_Closure) + (const PgQuery__ViewStmt *message, void *closure_data); -typedef void (*PgQuery__RangeTblFunction_Closure) - (const PgQuery__RangeTblFunction *message, +typedef void (*PgQuery__LoadStmt_Closure) + (const PgQuery__LoadStmt *message, void *closure_data); -typedef void (*PgQuery__TableSampleClause_Closure) - (const PgQuery__TableSampleClause *message, +typedef void (*PgQuery__CreatedbStmt_Closure) + (const PgQuery__CreatedbStmt *message, void *closure_data); -typedef void (*PgQuery__WithCheckOption_Closure) - (const PgQuery__WithCheckOption *message, +typedef void (*PgQuery__AlterDatabaseStmt_Closure) + (const PgQuery__AlterDatabaseStmt *message, void *closure_data); -typedef void (*PgQuery__SortGroupClause_Closure) - (const PgQuery__SortGroupClause *message, +typedef void (*PgQuery__AlterDatabaseRefreshCollStmt_Closure) + (const PgQuery__AlterDatabaseRefreshCollStmt *message, void *closure_data); -typedef void (*PgQuery__GroupingSet_Closure) - (const PgQuery__GroupingSet *message, +typedef void (*PgQuery__AlterDatabaseSetStmt_Closure) + (const PgQuery__AlterDatabaseSetStmt *message, void *closure_data); -typedef void (*PgQuery__WindowClause_Closure) - (const PgQuery__WindowClause *message, +typedef void (*PgQuery__DropdbStmt_Closure) + (const PgQuery__DropdbStmt *message, void *closure_data); -typedef void (*PgQuery__ObjectWithArgs_Closure) - (const PgQuery__ObjectWithArgs *message, +typedef void (*PgQuery__AlterSystemStmt_Closure) + (const PgQuery__AlterSystemStmt *message, void *closure_data); -typedef void (*PgQuery__AccessPriv_Closure) - (const PgQuery__AccessPriv *message, +typedef void (*PgQuery__ClusterStmt_Closure) + (const PgQuery__ClusterStmt *message, void *closure_data); -typedef void (*PgQuery__CreateOpClassItem_Closure) - (const PgQuery__CreateOpClassItem *message, +typedef void (*PgQuery__VacuumStmt_Closure) + (const PgQuery__VacuumStmt *message, void *closure_data); -typedef void (*PgQuery__TableLikeClause_Closure) - (const PgQuery__TableLikeClause *message, +typedef void (*PgQuery__VacuumRelation_Closure) + (const PgQuery__VacuumRelation *message, void *closure_data); -typedef void (*PgQuery__FunctionParameter_Closure) - (const PgQuery__FunctionParameter *message, +typedef void (*PgQuery__ExplainStmt_Closure) + (const PgQuery__ExplainStmt *message, void *closure_data); -typedef void (*PgQuery__LockingClause_Closure) - (const PgQuery__LockingClause *message, +typedef void (*PgQuery__CreateTableAsStmt_Closure) + (const PgQuery__CreateTableAsStmt *message, void *closure_data); -typedef void (*PgQuery__RowMarkClause_Closure) - (const PgQuery__RowMarkClause *message, +typedef void (*PgQuery__RefreshMatViewStmt_Closure) + (const PgQuery__RefreshMatViewStmt *message, void *closure_data); -typedef void (*PgQuery__XmlSerialize_Closure) - (const PgQuery__XmlSerialize *message, +typedef void (*PgQuery__CheckPointStmt_Closure) + (const PgQuery__CheckPointStmt *message, void *closure_data); -typedef void (*PgQuery__WithClause_Closure) - (const PgQuery__WithClause *message, +typedef void (*PgQuery__DiscardStmt_Closure) + (const PgQuery__DiscardStmt *message, void *closure_data); -typedef void (*PgQuery__InferClause_Closure) - (const PgQuery__InferClause *message, +typedef void (*PgQuery__LockStmt_Closure) + (const PgQuery__LockStmt *message, void *closure_data); -typedef void (*PgQuery__OnConflictClause_Closure) - (const PgQuery__OnConflictClause *message, +typedef void (*PgQuery__ConstraintsSetStmt_Closure) + (const PgQuery__ConstraintsSetStmt *message, void *closure_data); -typedef void (*PgQuery__CTESearchClause_Closure) - (const PgQuery__CTESearchClause *message, +typedef void (*PgQuery__ReindexStmt_Closure) + (const PgQuery__ReindexStmt *message, void *closure_data); -typedef void (*PgQuery__CTECycleClause_Closure) - (const PgQuery__CTECycleClause *message, +typedef void (*PgQuery__CreateConversionStmt_Closure) + (const PgQuery__CreateConversionStmt *message, void *closure_data); -typedef void (*PgQuery__CommonTableExpr_Closure) - (const PgQuery__CommonTableExpr *message, +typedef void (*PgQuery__CreateCastStmt_Closure) + (const PgQuery__CreateCastStmt *message, void *closure_data); -typedef void (*PgQuery__MergeWhenClause_Closure) - (const PgQuery__MergeWhenClause *message, +typedef void (*PgQuery__CreateTransformStmt_Closure) + (const PgQuery__CreateTransformStmt *message, void *closure_data); -typedef void (*PgQuery__RoleSpec_Closure) - (const PgQuery__RoleSpec *message, +typedef void (*PgQuery__PrepareStmt_Closure) + (const PgQuery__PrepareStmt *message, void *closure_data); -typedef void (*PgQuery__TriggerTransition_Closure) - (const PgQuery__TriggerTransition *message, +typedef void (*PgQuery__ExecuteStmt_Closure) + (const PgQuery__ExecuteStmt *message, void *closure_data); -typedef void (*PgQuery__PartitionElem_Closure) - (const PgQuery__PartitionElem *message, +typedef void (*PgQuery__DeallocateStmt_Closure) + (const PgQuery__DeallocateStmt *message, void *closure_data); -typedef void (*PgQuery__PartitionSpec_Closure) - (const PgQuery__PartitionSpec *message, +typedef void (*PgQuery__DropOwnedStmt_Closure) + (const PgQuery__DropOwnedStmt *message, void *closure_data); -typedef void (*PgQuery__PartitionBoundSpec_Closure) - (const PgQuery__PartitionBoundSpec *message, +typedef void (*PgQuery__ReassignOwnedStmt_Closure) + (const PgQuery__ReassignOwnedStmt *message, void *closure_data); -typedef void (*PgQuery__PartitionRangeDatum_Closure) - (const PgQuery__PartitionRangeDatum *message, +typedef void (*PgQuery__AlterTSDictionaryStmt_Closure) + (const PgQuery__AlterTSDictionaryStmt *message, void *closure_data); -typedef void (*PgQuery__PartitionCmd_Closure) - (const PgQuery__PartitionCmd *message, +typedef void (*PgQuery__AlterTSConfigurationStmt_Closure) + (const PgQuery__AlterTSConfigurationStmt *message, void *closure_data); -typedef void (*PgQuery__VacuumRelation_Closure) - (const PgQuery__VacuumRelation *message, +typedef void (*PgQuery__PublicationTable_Closure) + (const PgQuery__PublicationTable *message, void *closure_data); typedef void (*PgQuery__PublicationObjSpec_Closure) (const PgQuery__PublicationObjSpec *message, void *closure_data); -typedef void (*PgQuery__PublicationTable_Closure) - (const PgQuery__PublicationTable *message, +typedef void (*PgQuery__CreatePublicationStmt_Closure) + (const PgQuery__CreatePublicationStmt *message, + void *closure_data); +typedef void (*PgQuery__AlterPublicationStmt_Closure) + (const PgQuery__AlterPublicationStmt *message, + void *closure_data); +typedef void (*PgQuery__CreateSubscriptionStmt_Closure) + (const PgQuery__CreateSubscriptionStmt *message, void *closure_data); -typedef void (*PgQuery__InlineCodeBlock_Closure) - (const PgQuery__InlineCodeBlock *message, +typedef void (*PgQuery__AlterSubscriptionStmt_Closure) + (const PgQuery__AlterSubscriptionStmt *message, void *closure_data); -typedef void (*PgQuery__CallContext_Closure) - (const PgQuery__CallContext *message, +typedef void (*PgQuery__DropSubscriptionStmt_Closure) + (const PgQuery__DropSubscriptionStmt *message, void *closure_data); typedef void (*PgQuery__ScanToken_Closure) (const PgQuery__ScanToken *message, @@ -11058,6 +11640,7 @@ extern const ProtobufCEnumDescriptor pg_query__a__expr__kind__descriptor; extern const ProtobufCEnumDescriptor pg_query__role_spec_type__descriptor; extern const ProtobufCEnumDescriptor pg_query__table_like_option__descriptor; extern const ProtobufCEnumDescriptor pg_query__def_elem_action__descriptor; +extern const ProtobufCEnumDescriptor pg_query__partition_strategy__descriptor; extern const ProtobufCEnumDescriptor pg_query__partition_range_datum_kind__descriptor; extern const ProtobufCEnumDescriptor pg_query__rtekind__descriptor; extern const ProtobufCEnumDescriptor pg_query__wcokind__descriptor; @@ -11093,6 +11676,10 @@ extern const ProtobufCEnumDescriptor pg_query__min_max_op__descriptor; extern const ProtobufCEnumDescriptor pg_query__sqlvalue_function_op__descriptor; extern const ProtobufCEnumDescriptor pg_query__xml_expr_op__descriptor; extern const ProtobufCEnumDescriptor pg_query__xml_option_type__descriptor; +extern const ProtobufCEnumDescriptor pg_query__json_encoding__descriptor; +extern const ProtobufCEnumDescriptor pg_query__json_format_type__descriptor; +extern const ProtobufCEnumDescriptor pg_query__json_constructor_type__descriptor; +extern const ProtobufCEnumDescriptor pg_query__json_value_type__descriptor; extern const ProtobufCEnumDescriptor pg_query__null_test_type__descriptor; extern const ProtobufCEnumDescriptor pg_query__bool_test_type__descriptor; extern const ProtobufCEnumDescriptor pg_query__cmd_type__descriptor; @@ -11123,6 +11710,7 @@ extern const ProtobufCMessageDescriptor pg_query__a__const__descriptor; extern const ProtobufCMessageDescriptor pg_query__alias__descriptor; extern const ProtobufCMessageDescriptor pg_query__range_var__descriptor; extern const ProtobufCMessageDescriptor pg_query__table_func__descriptor; +extern const ProtobufCMessageDescriptor pg_query__into_clause__descriptor; extern const ProtobufCMessageDescriptor pg_query__var__descriptor; extern const ProtobufCMessageDescriptor pg_query__param__descriptor; extern const ProtobufCMessageDescriptor pg_query__aggref__descriptor; @@ -11156,6 +11744,11 @@ extern const ProtobufCMessageDescriptor pg_query__coalesce_expr__descriptor; extern const ProtobufCMessageDescriptor pg_query__min_max_expr__descriptor; extern const ProtobufCMessageDescriptor pg_query__sqlvalue_function__descriptor; extern const ProtobufCMessageDescriptor pg_query__xml_expr__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_format__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_returning__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_value_expr__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_constructor_expr__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_is_predicate__descriptor; extern const ProtobufCMessageDescriptor pg_query__null_test__descriptor; extern const ProtobufCMessageDescriptor pg_query__boolean_test__descriptor; extern const ProtobufCMessageDescriptor pg_query__coerce_to_domain__descriptor; @@ -11169,186 +11762,194 @@ extern const ProtobufCMessageDescriptor pg_query__range_tbl_ref__descriptor; extern const ProtobufCMessageDescriptor pg_query__join_expr__descriptor; extern const ProtobufCMessageDescriptor pg_query__from_expr__descriptor; extern const ProtobufCMessageDescriptor pg_query__on_conflict_expr__descriptor; -extern const ProtobufCMessageDescriptor pg_query__into_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__query__descriptor; +extern const ProtobufCMessageDescriptor pg_query__type_name__descriptor; +extern const ProtobufCMessageDescriptor pg_query__column_ref__descriptor; +extern const ProtobufCMessageDescriptor pg_query__param_ref__descriptor; +extern const ProtobufCMessageDescriptor pg_query__a__expr__descriptor; +extern const ProtobufCMessageDescriptor pg_query__type_cast__descriptor; +extern const ProtobufCMessageDescriptor pg_query__collate_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__role_spec__descriptor; +extern const ProtobufCMessageDescriptor pg_query__func_call__descriptor; +extern const ProtobufCMessageDescriptor pg_query__a__star__descriptor; +extern const ProtobufCMessageDescriptor pg_query__a__indices__descriptor; +extern const ProtobufCMessageDescriptor pg_query__a__indirection__descriptor; +extern const ProtobufCMessageDescriptor pg_query__a__array_expr__descriptor; +extern const ProtobufCMessageDescriptor pg_query__res_target__descriptor; +extern const ProtobufCMessageDescriptor pg_query__multi_assign_ref__descriptor; +extern const ProtobufCMessageDescriptor pg_query__sort_by__descriptor; +extern const ProtobufCMessageDescriptor pg_query__window_def__descriptor; +extern const ProtobufCMessageDescriptor pg_query__range_subselect__descriptor; +extern const ProtobufCMessageDescriptor pg_query__range_function__descriptor; +extern const ProtobufCMessageDescriptor pg_query__range_table_func__descriptor; +extern const ProtobufCMessageDescriptor pg_query__range_table_func_col__descriptor; +extern const ProtobufCMessageDescriptor pg_query__range_table_sample__descriptor; +extern const ProtobufCMessageDescriptor pg_query__column_def__descriptor; +extern const ProtobufCMessageDescriptor pg_query__table_like_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__index_elem__descriptor; +extern const ProtobufCMessageDescriptor pg_query__def_elem__descriptor; +extern const ProtobufCMessageDescriptor pg_query__locking_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__xml_serialize__descriptor; +extern const ProtobufCMessageDescriptor pg_query__partition_elem__descriptor; +extern const ProtobufCMessageDescriptor pg_query__partition_spec__descriptor; +extern const ProtobufCMessageDescriptor pg_query__partition_bound_spec__descriptor; +extern const ProtobufCMessageDescriptor pg_query__partition_range_datum__descriptor; +extern const ProtobufCMessageDescriptor pg_query__partition_cmd__descriptor; +extern const ProtobufCMessageDescriptor pg_query__range_tbl_entry__descriptor; +extern const ProtobufCMessageDescriptor pg_query__rtepermission_info__descriptor; +extern const ProtobufCMessageDescriptor pg_query__range_tbl_function__descriptor; +extern const ProtobufCMessageDescriptor pg_query__table_sample_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__with_check_option__descriptor; +extern const ProtobufCMessageDescriptor pg_query__sort_group_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__grouping_set__descriptor; +extern const ProtobufCMessageDescriptor pg_query__window_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__row_mark_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__with_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__infer_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__on_conflict_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__ctesearch_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__ctecycle_clause__descriptor; +extern const ProtobufCMessageDescriptor pg_query__common_table_expr__descriptor; +extern const ProtobufCMessageDescriptor pg_query__merge_when_clause__descriptor; extern const ProtobufCMessageDescriptor pg_query__merge_action__descriptor; +extern const ProtobufCMessageDescriptor pg_query__trigger_transition__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_output__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_key_value__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_object_constructor__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_array_constructor__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_array_query_constructor__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_agg_constructor__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_object_agg__descriptor; +extern const ProtobufCMessageDescriptor pg_query__json_array_agg__descriptor; extern const ProtobufCMessageDescriptor pg_query__raw_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__query__descriptor; extern const ProtobufCMessageDescriptor pg_query__insert_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__delete_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__update_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__merge_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__select_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__set_operation_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__return_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__plassign_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_schema_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__alter_table_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__replica_identity_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__alter_table_cmd__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_collation_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__alter_domain_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__set_operation_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__grant_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__object_with_args__descriptor; +extern const ProtobufCMessageDescriptor pg_query__access_priv__descriptor; extern const ProtobufCMessageDescriptor pg_query__grant_role_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__alter_default_privileges_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__close_portal_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__cluster_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__copy_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__variable_set_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__variable_show_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__create_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__constraint__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_table_space_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__drop_table_space_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_table_space_options_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_table_move_all_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_extension_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_extension_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_extension_contents_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_fdw_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_fdw_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_foreign_server_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_foreign_server_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_foreign_table_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_user_mapping_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_user_mapping_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__drop_user_mapping_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__import_foreign_schema_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_policy_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_policy_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_am_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_trig_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_event_trig_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_event_trig_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_plang_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_role_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_role_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_role_set_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__drop_role_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_seq_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_seq_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__define_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_domain_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_op_class_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_op_class_item__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_op_family_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_op_family_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__drop_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__truncate_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__comment_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__sec_label_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__declare_cursor_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__close_portal_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__fetch_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__index_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_stats_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__stats_elem__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_stats_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__create_function_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__function_parameter__descriptor; extern const ProtobufCMessageDescriptor pg_query__alter_function_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__do_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__inline_code_block__descriptor; +extern const ProtobufCMessageDescriptor pg_query__call_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__call_context__descriptor; extern const ProtobufCMessageDescriptor pg_query__rename_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_object_depends_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_object_schema_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_owner_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_operator_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_type_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__rule_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__notify_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__listen_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__unlisten_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__transaction_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__composite_type_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_enum_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_range_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_enum_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__view_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__load_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_domain_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__createdb_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_database_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_database_refresh_coll_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_database_set_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__dropdb_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__alter_system_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__cluster_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__vacuum_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__vacuum_relation__descriptor; extern const ProtobufCMessageDescriptor pg_query__explain_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__create_table_as_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_seq_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_seq_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__variable_set_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__variable_show_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__refresh_mat_view_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__check_point_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__discard_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_trig_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_plang_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_role_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_role_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__drop_role_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__lock_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__constraints_set_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__reindex_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__check_point_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_schema_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_database_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_database_refresh_coll_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_database_set_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_role_set_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__create_conversion_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__create_cast_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_op_class_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_op_family_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_op_family_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__create_transform_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__prepare_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__execute_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__deallocate_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__declare_cursor_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_table_space_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__drop_table_space_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_object_depends_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_object_schema_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_owner_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_operator_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_type_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__drop_owned_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__reassign_owned_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__composite_type_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_enum_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_range_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_enum_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__alter_tsdictionary_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__alter_tsconfiguration_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_fdw_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_fdw_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_foreign_server_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_foreign_server_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_user_mapping_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_user_mapping_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__drop_user_mapping_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_table_space_options_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_table_move_all_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__sec_label_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_foreign_table_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__import_foreign_schema_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_extension_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_extension_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_extension_contents_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_event_trig_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_event_trig_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__refresh_mat_view_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__replica_identity_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_system_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_policy_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_policy_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_transform_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_am_stmt__descriptor; +extern const ProtobufCMessageDescriptor pg_query__publication_table__descriptor; +extern const ProtobufCMessageDescriptor pg_query__publication_obj_spec__descriptor; extern const ProtobufCMessageDescriptor pg_query__create_publication_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__alter_publication_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__create_subscription_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__alter_subscription_stmt__descriptor; extern const ProtobufCMessageDescriptor pg_query__drop_subscription_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_stats_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_collation_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__call_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__alter_stats_stmt__descriptor; -extern const ProtobufCMessageDescriptor pg_query__a__expr__descriptor; -extern const ProtobufCMessageDescriptor pg_query__column_ref__descriptor; -extern const ProtobufCMessageDescriptor pg_query__param_ref__descriptor; -extern const ProtobufCMessageDescriptor pg_query__func_call__descriptor; -extern const ProtobufCMessageDescriptor pg_query__a__star__descriptor; -extern const ProtobufCMessageDescriptor pg_query__a__indices__descriptor; -extern const ProtobufCMessageDescriptor pg_query__a__indirection__descriptor; -extern const ProtobufCMessageDescriptor pg_query__a__array_expr__descriptor; -extern const ProtobufCMessageDescriptor pg_query__res_target__descriptor; -extern const ProtobufCMessageDescriptor pg_query__multi_assign_ref__descriptor; -extern const ProtobufCMessageDescriptor pg_query__type_cast__descriptor; -extern const ProtobufCMessageDescriptor pg_query__collate_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__sort_by__descriptor; -extern const ProtobufCMessageDescriptor pg_query__window_def__descriptor; -extern const ProtobufCMessageDescriptor pg_query__range_subselect__descriptor; -extern const ProtobufCMessageDescriptor pg_query__range_function__descriptor; -extern const ProtobufCMessageDescriptor pg_query__range_table_sample__descriptor; -extern const ProtobufCMessageDescriptor pg_query__range_table_func__descriptor; -extern const ProtobufCMessageDescriptor pg_query__range_table_func_col__descriptor; -extern const ProtobufCMessageDescriptor pg_query__type_name__descriptor; -extern const ProtobufCMessageDescriptor pg_query__column_def__descriptor; -extern const ProtobufCMessageDescriptor pg_query__index_elem__descriptor; -extern const ProtobufCMessageDescriptor pg_query__stats_elem__descriptor; -extern const ProtobufCMessageDescriptor pg_query__constraint__descriptor; -extern const ProtobufCMessageDescriptor pg_query__def_elem__descriptor; -extern const ProtobufCMessageDescriptor pg_query__range_tbl_entry__descriptor; -extern const ProtobufCMessageDescriptor pg_query__range_tbl_function__descriptor; -extern const ProtobufCMessageDescriptor pg_query__table_sample_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__with_check_option__descriptor; -extern const ProtobufCMessageDescriptor pg_query__sort_group_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__grouping_set__descriptor; -extern const ProtobufCMessageDescriptor pg_query__window_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__object_with_args__descriptor; -extern const ProtobufCMessageDescriptor pg_query__access_priv__descriptor; -extern const ProtobufCMessageDescriptor pg_query__create_op_class_item__descriptor; -extern const ProtobufCMessageDescriptor pg_query__table_like_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__function_parameter__descriptor; -extern const ProtobufCMessageDescriptor pg_query__locking_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__row_mark_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__xml_serialize__descriptor; -extern const ProtobufCMessageDescriptor pg_query__with_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__infer_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__on_conflict_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__ctesearch_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__ctecycle_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__common_table_expr__descriptor; -extern const ProtobufCMessageDescriptor pg_query__merge_when_clause__descriptor; -extern const ProtobufCMessageDescriptor pg_query__role_spec__descriptor; -extern const ProtobufCMessageDescriptor pg_query__trigger_transition__descriptor; -extern const ProtobufCMessageDescriptor pg_query__partition_elem__descriptor; -extern const ProtobufCMessageDescriptor pg_query__partition_spec__descriptor; -extern const ProtobufCMessageDescriptor pg_query__partition_bound_spec__descriptor; -extern const ProtobufCMessageDescriptor pg_query__partition_range_datum__descriptor; -extern const ProtobufCMessageDescriptor pg_query__partition_cmd__descriptor; -extern const ProtobufCMessageDescriptor pg_query__vacuum_relation__descriptor; -extern const ProtobufCMessageDescriptor pg_query__publication_obj_spec__descriptor; -extern const ProtobufCMessageDescriptor pg_query__publication_table__descriptor; -extern const ProtobufCMessageDescriptor pg_query__inline_code_block__descriptor; -extern const ProtobufCMessageDescriptor pg_query__call_context__descriptor; extern const ProtobufCMessageDescriptor pg_query__scan_token__descriptor; PROTOBUF_C__END_DECLS diff --git a/parser/include/protobuf/pg_query.pb.h b/parser/include/protobuf/pg_query.pb.h index 36cd0335..8ed8105c 100644 --- a/parser/include/protobuf/pg_query.pb.h +++ b/parser/include/protobuf/pg_query.pb.h @@ -1,51 +1,62 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: protobuf/pg_query.proto +// Protobuf C++ Version: 4.25.1 -#ifndef GOOGLE_PROTOBUF_INCLUDED_protobuf_2fpg_5fquery_2eproto -#define GOOGLE_PROTOBUF_INCLUDED_protobuf_2fpg_5fquery_2eproto +#ifndef GOOGLE_PROTOBUF_INCLUDED_protobuf_2fpg_5fquery_2eproto_2epb_2eh +#define GOOGLE_PROTOBUF_INCLUDED_protobuf_2fpg_5fquery_2eproto_2epb_2eh #include #include - -#include -#if PROTOBUF_VERSION < 3021000 -#error This file was generated by a newer version of protoc which is -#error incompatible with your Protocol Buffer headers. Please update -#error your headers. -#endif -#if 3021009 < PROTOBUF_MIN_PROTOC_VERSION -#error This file was generated by an older version of protoc which is -#error incompatible with your Protocol Buffer headers. Please -#error regenerate this file with a newer version of protoc. -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include // IWYU pragma: export -#include // IWYU pragma: export -#include -#include +#include +#include + +#include "google/protobuf/port_def.inc" +#if PROTOBUF_VERSION < 4025000 +#error "This file was generated by a newer version of protoc which is" +#error "incompatible with your Protocol Buffer headers. Please update" +#error "your headers." +#endif // PROTOBUF_VERSION + +#if 4025001 < PROTOBUF_MIN_PROTOC_VERSION +#error "This file was generated by an older version of protoc which is" +#error "incompatible with your Protocol Buffer headers. Please" +#error "regenerate this file with a newer version of protoc." +#endif // PROTOBUF_MIN_PROTOC_VERSION +#include "google/protobuf/port_undef.inc" +#include "google/protobuf/io/coded_stream.h" +#include "google/protobuf/arena.h" +#include "google/protobuf/arenastring.h" +#include "google/protobuf/generated_message_bases.h" +#include "google/protobuf/generated_message_tctable_decl.h" +#include "google/protobuf/generated_message_util.h" +#include "google/protobuf/metadata_lite.h" +#include "google/protobuf/generated_message_reflection.h" +#include "google/protobuf/message.h" +#include "google/protobuf/repeated_field.h" // IWYU pragma: export +#include "google/protobuf/extension_set.h" // IWYU pragma: export +#include "google/protobuf/generated_enum_reflection.h" +#include "google/protobuf/unknown_field_set.h" // @@protoc_insertion_point(includes) -#include + +// Must be included last. +#include "google/protobuf/port_def.inc" + #define PROTOBUF_INTERNAL_EXPORT_protobuf_2fpg_5fquery_2eproto -PROTOBUF_NAMESPACE_OPEN + +namespace google { +namespace protobuf { namespace internal { class AnyMetadata; } // namespace internal -PROTOBUF_NAMESPACE_CLOSE +} // namespace protobuf +} // namespace google // Internal implementation detail -- do not use these members. struct TableStruct_protobuf_2fpg_5fquery_2eproto { - static const uint32_t offsets[]; + static const ::uint32_t offsets[]; }; -extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_protobuf_2fpg_5fquery_2eproto; +extern const ::google::protobuf::internal::DescriptorTable + descriptor_table_protobuf_2fpg_5fquery_2eproto; namespace pg_query { class A_ArrayExpr; struct A_ArrayExprDefaultTypeInternal; @@ -485,6 +496,45 @@ extern IntoClauseDefaultTypeInternal _IntoClause_default_instance_; class JoinExpr; struct JoinExprDefaultTypeInternal; extern JoinExprDefaultTypeInternal _JoinExpr_default_instance_; +class JsonAggConstructor; +struct JsonAggConstructorDefaultTypeInternal; +extern JsonAggConstructorDefaultTypeInternal _JsonAggConstructor_default_instance_; +class JsonArrayAgg; +struct JsonArrayAggDefaultTypeInternal; +extern JsonArrayAggDefaultTypeInternal _JsonArrayAgg_default_instance_; +class JsonArrayConstructor; +struct JsonArrayConstructorDefaultTypeInternal; +extern JsonArrayConstructorDefaultTypeInternal _JsonArrayConstructor_default_instance_; +class JsonArrayQueryConstructor; +struct JsonArrayQueryConstructorDefaultTypeInternal; +extern JsonArrayQueryConstructorDefaultTypeInternal _JsonArrayQueryConstructor_default_instance_; +class JsonConstructorExpr; +struct JsonConstructorExprDefaultTypeInternal; +extern JsonConstructorExprDefaultTypeInternal _JsonConstructorExpr_default_instance_; +class JsonFormat; +struct JsonFormatDefaultTypeInternal; +extern JsonFormatDefaultTypeInternal _JsonFormat_default_instance_; +class JsonIsPredicate; +struct JsonIsPredicateDefaultTypeInternal; +extern JsonIsPredicateDefaultTypeInternal _JsonIsPredicate_default_instance_; +class JsonKeyValue; +struct JsonKeyValueDefaultTypeInternal; +extern JsonKeyValueDefaultTypeInternal _JsonKeyValue_default_instance_; +class JsonObjectAgg; +struct JsonObjectAggDefaultTypeInternal; +extern JsonObjectAggDefaultTypeInternal _JsonObjectAgg_default_instance_; +class JsonObjectConstructor; +struct JsonObjectConstructorDefaultTypeInternal; +extern JsonObjectConstructorDefaultTypeInternal _JsonObjectConstructor_default_instance_; +class JsonOutput; +struct JsonOutputDefaultTypeInternal; +extern JsonOutputDefaultTypeInternal _JsonOutput_default_instance_; +class JsonReturning; +struct JsonReturningDefaultTypeInternal; +extern JsonReturningDefaultTypeInternal _JsonReturning_default_instance_; +class JsonValueExpr; +struct JsonValueExprDefaultTypeInternal; +extern JsonValueExprDefaultTypeInternal _JsonValueExpr_default_instance_; class List; struct ListDefaultTypeInternal; extern ListDefaultTypeInternal _List_default_instance_; @@ -587,6 +637,9 @@ extern PublicationTableDefaultTypeInternal _PublicationTable_default_instance_; class Query; struct QueryDefaultTypeInternal; extern QueryDefaultTypeInternal _Query_default_instance_; +class RTEPermissionInfo; +struct RTEPermissionInfoDefaultTypeInternal; +extern RTEPermissionInfoDefaultTypeInternal _RTEPermissionInfo_default_instance_; class RangeFunction; struct RangeFunctionDefaultTypeInternal; extern RangeFunctionDefaultTypeInternal _RangeFunction_default_instance_; @@ -774,278 +827,46 @@ class XmlSerialize; struct XmlSerializeDefaultTypeInternal; extern XmlSerializeDefaultTypeInternal _XmlSerialize_default_instance_; } // namespace pg_query -PROTOBUF_NAMESPACE_OPEN -template<> ::pg_query::A_ArrayExpr* Arena::CreateMaybeMessage<::pg_query::A_ArrayExpr>(Arena*); -template<> ::pg_query::A_Const* Arena::CreateMaybeMessage<::pg_query::A_Const>(Arena*); -template<> ::pg_query::A_Expr* Arena::CreateMaybeMessage<::pg_query::A_Expr>(Arena*); -template<> ::pg_query::A_Indices* Arena::CreateMaybeMessage<::pg_query::A_Indices>(Arena*); -template<> ::pg_query::A_Indirection* Arena::CreateMaybeMessage<::pg_query::A_Indirection>(Arena*); -template<> ::pg_query::A_Star* Arena::CreateMaybeMessage<::pg_query::A_Star>(Arena*); -template<> ::pg_query::AccessPriv* Arena::CreateMaybeMessage<::pg_query::AccessPriv>(Arena*); -template<> ::pg_query::Aggref* Arena::CreateMaybeMessage<::pg_query::Aggref>(Arena*); -template<> ::pg_query::Alias* Arena::CreateMaybeMessage<::pg_query::Alias>(Arena*); -template<> ::pg_query::AlterCollationStmt* Arena::CreateMaybeMessage<::pg_query::AlterCollationStmt>(Arena*); -template<> ::pg_query::AlterDatabaseRefreshCollStmt* Arena::CreateMaybeMessage<::pg_query::AlterDatabaseRefreshCollStmt>(Arena*); -template<> ::pg_query::AlterDatabaseSetStmt* Arena::CreateMaybeMessage<::pg_query::AlterDatabaseSetStmt>(Arena*); -template<> ::pg_query::AlterDatabaseStmt* Arena::CreateMaybeMessage<::pg_query::AlterDatabaseStmt>(Arena*); -template<> ::pg_query::AlterDefaultPrivilegesStmt* Arena::CreateMaybeMessage<::pg_query::AlterDefaultPrivilegesStmt>(Arena*); -template<> ::pg_query::AlterDomainStmt* Arena::CreateMaybeMessage<::pg_query::AlterDomainStmt>(Arena*); -template<> ::pg_query::AlterEnumStmt* Arena::CreateMaybeMessage<::pg_query::AlterEnumStmt>(Arena*); -template<> ::pg_query::AlterEventTrigStmt* Arena::CreateMaybeMessage<::pg_query::AlterEventTrigStmt>(Arena*); -template<> ::pg_query::AlterExtensionContentsStmt* Arena::CreateMaybeMessage<::pg_query::AlterExtensionContentsStmt>(Arena*); -template<> ::pg_query::AlterExtensionStmt* Arena::CreateMaybeMessage<::pg_query::AlterExtensionStmt>(Arena*); -template<> ::pg_query::AlterFdwStmt* Arena::CreateMaybeMessage<::pg_query::AlterFdwStmt>(Arena*); -template<> ::pg_query::AlterForeignServerStmt* Arena::CreateMaybeMessage<::pg_query::AlterForeignServerStmt>(Arena*); -template<> ::pg_query::AlterFunctionStmt* Arena::CreateMaybeMessage<::pg_query::AlterFunctionStmt>(Arena*); -template<> ::pg_query::AlterObjectDependsStmt* Arena::CreateMaybeMessage<::pg_query::AlterObjectDependsStmt>(Arena*); -template<> ::pg_query::AlterObjectSchemaStmt* Arena::CreateMaybeMessage<::pg_query::AlterObjectSchemaStmt>(Arena*); -template<> ::pg_query::AlterOpFamilyStmt* Arena::CreateMaybeMessage<::pg_query::AlterOpFamilyStmt>(Arena*); -template<> ::pg_query::AlterOperatorStmt* Arena::CreateMaybeMessage<::pg_query::AlterOperatorStmt>(Arena*); -template<> ::pg_query::AlterOwnerStmt* Arena::CreateMaybeMessage<::pg_query::AlterOwnerStmt>(Arena*); -template<> ::pg_query::AlterPolicyStmt* Arena::CreateMaybeMessage<::pg_query::AlterPolicyStmt>(Arena*); -template<> ::pg_query::AlterPublicationStmt* Arena::CreateMaybeMessage<::pg_query::AlterPublicationStmt>(Arena*); -template<> ::pg_query::AlterRoleSetStmt* Arena::CreateMaybeMessage<::pg_query::AlterRoleSetStmt>(Arena*); -template<> ::pg_query::AlterRoleStmt* Arena::CreateMaybeMessage<::pg_query::AlterRoleStmt>(Arena*); -template<> ::pg_query::AlterSeqStmt* Arena::CreateMaybeMessage<::pg_query::AlterSeqStmt>(Arena*); -template<> ::pg_query::AlterStatsStmt* Arena::CreateMaybeMessage<::pg_query::AlterStatsStmt>(Arena*); -template<> ::pg_query::AlterSubscriptionStmt* Arena::CreateMaybeMessage<::pg_query::AlterSubscriptionStmt>(Arena*); -template<> ::pg_query::AlterSystemStmt* Arena::CreateMaybeMessage<::pg_query::AlterSystemStmt>(Arena*); -template<> ::pg_query::AlterTSConfigurationStmt* Arena::CreateMaybeMessage<::pg_query::AlterTSConfigurationStmt>(Arena*); -template<> ::pg_query::AlterTSDictionaryStmt* Arena::CreateMaybeMessage<::pg_query::AlterTSDictionaryStmt>(Arena*); -template<> ::pg_query::AlterTableCmd* Arena::CreateMaybeMessage<::pg_query::AlterTableCmd>(Arena*); -template<> ::pg_query::AlterTableMoveAllStmt* Arena::CreateMaybeMessage<::pg_query::AlterTableMoveAllStmt>(Arena*); -template<> ::pg_query::AlterTableSpaceOptionsStmt* Arena::CreateMaybeMessage<::pg_query::AlterTableSpaceOptionsStmt>(Arena*); -template<> ::pg_query::AlterTableStmt* Arena::CreateMaybeMessage<::pg_query::AlterTableStmt>(Arena*); -template<> ::pg_query::AlterTypeStmt* Arena::CreateMaybeMessage<::pg_query::AlterTypeStmt>(Arena*); -template<> ::pg_query::AlterUserMappingStmt* Arena::CreateMaybeMessage<::pg_query::AlterUserMappingStmt>(Arena*); -template<> ::pg_query::AlternativeSubPlan* Arena::CreateMaybeMessage<::pg_query::AlternativeSubPlan>(Arena*); -template<> ::pg_query::ArrayCoerceExpr* Arena::CreateMaybeMessage<::pg_query::ArrayCoerceExpr>(Arena*); -template<> ::pg_query::ArrayExpr* Arena::CreateMaybeMessage<::pg_query::ArrayExpr>(Arena*); -template<> ::pg_query::BitString* Arena::CreateMaybeMessage<::pg_query::BitString>(Arena*); -template<> ::pg_query::BoolExpr* Arena::CreateMaybeMessage<::pg_query::BoolExpr>(Arena*); -template<> ::pg_query::Boolean* Arena::CreateMaybeMessage<::pg_query::Boolean>(Arena*); -template<> ::pg_query::BooleanTest* Arena::CreateMaybeMessage<::pg_query::BooleanTest>(Arena*); -template<> ::pg_query::CTECycleClause* Arena::CreateMaybeMessage<::pg_query::CTECycleClause>(Arena*); -template<> ::pg_query::CTESearchClause* Arena::CreateMaybeMessage<::pg_query::CTESearchClause>(Arena*); -template<> ::pg_query::CallContext* Arena::CreateMaybeMessage<::pg_query::CallContext>(Arena*); -template<> ::pg_query::CallStmt* Arena::CreateMaybeMessage<::pg_query::CallStmt>(Arena*); -template<> ::pg_query::CaseExpr* Arena::CreateMaybeMessage<::pg_query::CaseExpr>(Arena*); -template<> ::pg_query::CaseTestExpr* Arena::CreateMaybeMessage<::pg_query::CaseTestExpr>(Arena*); -template<> ::pg_query::CaseWhen* Arena::CreateMaybeMessage<::pg_query::CaseWhen>(Arena*); -template<> ::pg_query::CheckPointStmt* Arena::CreateMaybeMessage<::pg_query::CheckPointStmt>(Arena*); -template<> ::pg_query::ClosePortalStmt* Arena::CreateMaybeMessage<::pg_query::ClosePortalStmt>(Arena*); -template<> ::pg_query::ClusterStmt* Arena::CreateMaybeMessage<::pg_query::ClusterStmt>(Arena*); -template<> ::pg_query::CoalesceExpr* Arena::CreateMaybeMessage<::pg_query::CoalesceExpr>(Arena*); -template<> ::pg_query::CoerceToDomain* Arena::CreateMaybeMessage<::pg_query::CoerceToDomain>(Arena*); -template<> ::pg_query::CoerceToDomainValue* Arena::CreateMaybeMessage<::pg_query::CoerceToDomainValue>(Arena*); -template<> ::pg_query::CoerceViaIO* Arena::CreateMaybeMessage<::pg_query::CoerceViaIO>(Arena*); -template<> ::pg_query::CollateClause* Arena::CreateMaybeMessage<::pg_query::CollateClause>(Arena*); -template<> ::pg_query::CollateExpr* Arena::CreateMaybeMessage<::pg_query::CollateExpr>(Arena*); -template<> ::pg_query::ColumnDef* Arena::CreateMaybeMessage<::pg_query::ColumnDef>(Arena*); -template<> ::pg_query::ColumnRef* Arena::CreateMaybeMessage<::pg_query::ColumnRef>(Arena*); -template<> ::pg_query::CommentStmt* Arena::CreateMaybeMessage<::pg_query::CommentStmt>(Arena*); -template<> ::pg_query::CommonTableExpr* Arena::CreateMaybeMessage<::pg_query::CommonTableExpr>(Arena*); -template<> ::pg_query::CompositeTypeStmt* Arena::CreateMaybeMessage<::pg_query::CompositeTypeStmt>(Arena*); -template<> ::pg_query::Constraint* Arena::CreateMaybeMessage<::pg_query::Constraint>(Arena*); -template<> ::pg_query::ConstraintsSetStmt* Arena::CreateMaybeMessage<::pg_query::ConstraintsSetStmt>(Arena*); -template<> ::pg_query::ConvertRowtypeExpr* Arena::CreateMaybeMessage<::pg_query::ConvertRowtypeExpr>(Arena*); -template<> ::pg_query::CopyStmt* Arena::CreateMaybeMessage<::pg_query::CopyStmt>(Arena*); -template<> ::pg_query::CreateAmStmt* Arena::CreateMaybeMessage<::pg_query::CreateAmStmt>(Arena*); -template<> ::pg_query::CreateCastStmt* Arena::CreateMaybeMessage<::pg_query::CreateCastStmt>(Arena*); -template<> ::pg_query::CreateConversionStmt* Arena::CreateMaybeMessage<::pg_query::CreateConversionStmt>(Arena*); -template<> ::pg_query::CreateDomainStmt* Arena::CreateMaybeMessage<::pg_query::CreateDomainStmt>(Arena*); -template<> ::pg_query::CreateEnumStmt* Arena::CreateMaybeMessage<::pg_query::CreateEnumStmt>(Arena*); -template<> ::pg_query::CreateEventTrigStmt* Arena::CreateMaybeMessage<::pg_query::CreateEventTrigStmt>(Arena*); -template<> ::pg_query::CreateExtensionStmt* Arena::CreateMaybeMessage<::pg_query::CreateExtensionStmt>(Arena*); -template<> ::pg_query::CreateFdwStmt* Arena::CreateMaybeMessage<::pg_query::CreateFdwStmt>(Arena*); -template<> ::pg_query::CreateForeignServerStmt* Arena::CreateMaybeMessage<::pg_query::CreateForeignServerStmt>(Arena*); -template<> ::pg_query::CreateForeignTableStmt* Arena::CreateMaybeMessage<::pg_query::CreateForeignTableStmt>(Arena*); -template<> ::pg_query::CreateFunctionStmt* Arena::CreateMaybeMessage<::pg_query::CreateFunctionStmt>(Arena*); -template<> ::pg_query::CreateOpClassItem* Arena::CreateMaybeMessage<::pg_query::CreateOpClassItem>(Arena*); -template<> ::pg_query::CreateOpClassStmt* Arena::CreateMaybeMessage<::pg_query::CreateOpClassStmt>(Arena*); -template<> ::pg_query::CreateOpFamilyStmt* Arena::CreateMaybeMessage<::pg_query::CreateOpFamilyStmt>(Arena*); -template<> ::pg_query::CreatePLangStmt* Arena::CreateMaybeMessage<::pg_query::CreatePLangStmt>(Arena*); -template<> ::pg_query::CreatePolicyStmt* Arena::CreateMaybeMessage<::pg_query::CreatePolicyStmt>(Arena*); -template<> ::pg_query::CreatePublicationStmt* Arena::CreateMaybeMessage<::pg_query::CreatePublicationStmt>(Arena*); -template<> ::pg_query::CreateRangeStmt* Arena::CreateMaybeMessage<::pg_query::CreateRangeStmt>(Arena*); -template<> ::pg_query::CreateRoleStmt* Arena::CreateMaybeMessage<::pg_query::CreateRoleStmt>(Arena*); -template<> ::pg_query::CreateSchemaStmt* Arena::CreateMaybeMessage<::pg_query::CreateSchemaStmt>(Arena*); -template<> ::pg_query::CreateSeqStmt* Arena::CreateMaybeMessage<::pg_query::CreateSeqStmt>(Arena*); -template<> ::pg_query::CreateStatsStmt* Arena::CreateMaybeMessage<::pg_query::CreateStatsStmt>(Arena*); -template<> ::pg_query::CreateStmt* Arena::CreateMaybeMessage<::pg_query::CreateStmt>(Arena*); -template<> ::pg_query::CreateSubscriptionStmt* Arena::CreateMaybeMessage<::pg_query::CreateSubscriptionStmt>(Arena*); -template<> ::pg_query::CreateTableAsStmt* Arena::CreateMaybeMessage<::pg_query::CreateTableAsStmt>(Arena*); -template<> ::pg_query::CreateTableSpaceStmt* Arena::CreateMaybeMessage<::pg_query::CreateTableSpaceStmt>(Arena*); -template<> ::pg_query::CreateTransformStmt* Arena::CreateMaybeMessage<::pg_query::CreateTransformStmt>(Arena*); -template<> ::pg_query::CreateTrigStmt* Arena::CreateMaybeMessage<::pg_query::CreateTrigStmt>(Arena*); -template<> ::pg_query::CreateUserMappingStmt* Arena::CreateMaybeMessage<::pg_query::CreateUserMappingStmt>(Arena*); -template<> ::pg_query::CreatedbStmt* Arena::CreateMaybeMessage<::pg_query::CreatedbStmt>(Arena*); -template<> ::pg_query::CurrentOfExpr* Arena::CreateMaybeMessage<::pg_query::CurrentOfExpr>(Arena*); -template<> ::pg_query::DeallocateStmt* Arena::CreateMaybeMessage<::pg_query::DeallocateStmt>(Arena*); -template<> ::pg_query::DeclareCursorStmt* Arena::CreateMaybeMessage<::pg_query::DeclareCursorStmt>(Arena*); -template<> ::pg_query::DefElem* Arena::CreateMaybeMessage<::pg_query::DefElem>(Arena*); -template<> ::pg_query::DefineStmt* Arena::CreateMaybeMessage<::pg_query::DefineStmt>(Arena*); -template<> ::pg_query::DeleteStmt* Arena::CreateMaybeMessage<::pg_query::DeleteStmt>(Arena*); -template<> ::pg_query::DiscardStmt* Arena::CreateMaybeMessage<::pg_query::DiscardStmt>(Arena*); -template<> ::pg_query::DistinctExpr* Arena::CreateMaybeMessage<::pg_query::DistinctExpr>(Arena*); -template<> ::pg_query::DoStmt* Arena::CreateMaybeMessage<::pg_query::DoStmt>(Arena*); -template<> ::pg_query::DropOwnedStmt* Arena::CreateMaybeMessage<::pg_query::DropOwnedStmt>(Arena*); -template<> ::pg_query::DropRoleStmt* Arena::CreateMaybeMessage<::pg_query::DropRoleStmt>(Arena*); -template<> ::pg_query::DropStmt* Arena::CreateMaybeMessage<::pg_query::DropStmt>(Arena*); -template<> ::pg_query::DropSubscriptionStmt* Arena::CreateMaybeMessage<::pg_query::DropSubscriptionStmt>(Arena*); -template<> ::pg_query::DropTableSpaceStmt* Arena::CreateMaybeMessage<::pg_query::DropTableSpaceStmt>(Arena*); -template<> ::pg_query::DropUserMappingStmt* Arena::CreateMaybeMessage<::pg_query::DropUserMappingStmt>(Arena*); -template<> ::pg_query::DropdbStmt* Arena::CreateMaybeMessage<::pg_query::DropdbStmt>(Arena*); -template<> ::pg_query::ExecuteStmt* Arena::CreateMaybeMessage<::pg_query::ExecuteStmt>(Arena*); -template<> ::pg_query::ExplainStmt* Arena::CreateMaybeMessage<::pg_query::ExplainStmt>(Arena*); -template<> ::pg_query::FetchStmt* Arena::CreateMaybeMessage<::pg_query::FetchStmt>(Arena*); -template<> ::pg_query::FieldSelect* Arena::CreateMaybeMessage<::pg_query::FieldSelect>(Arena*); -template<> ::pg_query::FieldStore* Arena::CreateMaybeMessage<::pg_query::FieldStore>(Arena*); -template<> ::pg_query::Float* Arena::CreateMaybeMessage<::pg_query::Float>(Arena*); -template<> ::pg_query::FromExpr* Arena::CreateMaybeMessage<::pg_query::FromExpr>(Arena*); -template<> ::pg_query::FuncCall* Arena::CreateMaybeMessage<::pg_query::FuncCall>(Arena*); -template<> ::pg_query::FuncExpr* Arena::CreateMaybeMessage<::pg_query::FuncExpr>(Arena*); -template<> ::pg_query::FunctionParameter* Arena::CreateMaybeMessage<::pg_query::FunctionParameter>(Arena*); -template<> ::pg_query::GrantRoleStmt* Arena::CreateMaybeMessage<::pg_query::GrantRoleStmt>(Arena*); -template<> ::pg_query::GrantStmt* Arena::CreateMaybeMessage<::pg_query::GrantStmt>(Arena*); -template<> ::pg_query::GroupingFunc* Arena::CreateMaybeMessage<::pg_query::GroupingFunc>(Arena*); -template<> ::pg_query::GroupingSet* Arena::CreateMaybeMessage<::pg_query::GroupingSet>(Arena*); -template<> ::pg_query::ImportForeignSchemaStmt* Arena::CreateMaybeMessage<::pg_query::ImportForeignSchemaStmt>(Arena*); -template<> ::pg_query::IndexElem* Arena::CreateMaybeMessage<::pg_query::IndexElem>(Arena*); -template<> ::pg_query::IndexStmt* Arena::CreateMaybeMessage<::pg_query::IndexStmt>(Arena*); -template<> ::pg_query::InferClause* Arena::CreateMaybeMessage<::pg_query::InferClause>(Arena*); -template<> ::pg_query::InferenceElem* Arena::CreateMaybeMessage<::pg_query::InferenceElem>(Arena*); -template<> ::pg_query::InlineCodeBlock* Arena::CreateMaybeMessage<::pg_query::InlineCodeBlock>(Arena*); -template<> ::pg_query::InsertStmt* Arena::CreateMaybeMessage<::pg_query::InsertStmt>(Arena*); -template<> ::pg_query::IntList* Arena::CreateMaybeMessage<::pg_query::IntList>(Arena*); -template<> ::pg_query::Integer* Arena::CreateMaybeMessage<::pg_query::Integer>(Arena*); -template<> ::pg_query::IntoClause* Arena::CreateMaybeMessage<::pg_query::IntoClause>(Arena*); -template<> ::pg_query::JoinExpr* Arena::CreateMaybeMessage<::pg_query::JoinExpr>(Arena*); -template<> ::pg_query::List* Arena::CreateMaybeMessage<::pg_query::List>(Arena*); -template<> ::pg_query::ListenStmt* Arena::CreateMaybeMessage<::pg_query::ListenStmt>(Arena*); -template<> ::pg_query::LoadStmt* Arena::CreateMaybeMessage<::pg_query::LoadStmt>(Arena*); -template<> ::pg_query::LockStmt* Arena::CreateMaybeMessage<::pg_query::LockStmt>(Arena*); -template<> ::pg_query::LockingClause* Arena::CreateMaybeMessage<::pg_query::LockingClause>(Arena*); -template<> ::pg_query::MergeAction* Arena::CreateMaybeMessage<::pg_query::MergeAction>(Arena*); -template<> ::pg_query::MergeStmt* Arena::CreateMaybeMessage<::pg_query::MergeStmt>(Arena*); -template<> ::pg_query::MergeWhenClause* Arena::CreateMaybeMessage<::pg_query::MergeWhenClause>(Arena*); -template<> ::pg_query::MinMaxExpr* Arena::CreateMaybeMessage<::pg_query::MinMaxExpr>(Arena*); -template<> ::pg_query::MultiAssignRef* Arena::CreateMaybeMessage<::pg_query::MultiAssignRef>(Arena*); -template<> ::pg_query::NamedArgExpr* Arena::CreateMaybeMessage<::pg_query::NamedArgExpr>(Arena*); -template<> ::pg_query::NextValueExpr* Arena::CreateMaybeMessage<::pg_query::NextValueExpr>(Arena*); -template<> ::pg_query::Node* Arena::CreateMaybeMessage<::pg_query::Node>(Arena*); -template<> ::pg_query::NotifyStmt* Arena::CreateMaybeMessage<::pg_query::NotifyStmt>(Arena*); -template<> ::pg_query::NullIfExpr* Arena::CreateMaybeMessage<::pg_query::NullIfExpr>(Arena*); -template<> ::pg_query::NullTest* Arena::CreateMaybeMessage<::pg_query::NullTest>(Arena*); -template<> ::pg_query::ObjectWithArgs* Arena::CreateMaybeMessage<::pg_query::ObjectWithArgs>(Arena*); -template<> ::pg_query::OidList* Arena::CreateMaybeMessage<::pg_query::OidList>(Arena*); -template<> ::pg_query::OnConflictClause* Arena::CreateMaybeMessage<::pg_query::OnConflictClause>(Arena*); -template<> ::pg_query::OnConflictExpr* Arena::CreateMaybeMessage<::pg_query::OnConflictExpr>(Arena*); -template<> ::pg_query::OpExpr* Arena::CreateMaybeMessage<::pg_query::OpExpr>(Arena*); -template<> ::pg_query::PLAssignStmt* Arena::CreateMaybeMessage<::pg_query::PLAssignStmt>(Arena*); -template<> ::pg_query::Param* Arena::CreateMaybeMessage<::pg_query::Param>(Arena*); -template<> ::pg_query::ParamRef* Arena::CreateMaybeMessage<::pg_query::ParamRef>(Arena*); -template<> ::pg_query::ParseResult* Arena::CreateMaybeMessage<::pg_query::ParseResult>(Arena*); -template<> ::pg_query::PartitionBoundSpec* Arena::CreateMaybeMessage<::pg_query::PartitionBoundSpec>(Arena*); -template<> ::pg_query::PartitionCmd* Arena::CreateMaybeMessage<::pg_query::PartitionCmd>(Arena*); -template<> ::pg_query::PartitionElem* Arena::CreateMaybeMessage<::pg_query::PartitionElem>(Arena*); -template<> ::pg_query::PartitionRangeDatum* Arena::CreateMaybeMessage<::pg_query::PartitionRangeDatum>(Arena*); -template<> ::pg_query::PartitionSpec* Arena::CreateMaybeMessage<::pg_query::PartitionSpec>(Arena*); -template<> ::pg_query::PrepareStmt* Arena::CreateMaybeMessage<::pg_query::PrepareStmt>(Arena*); -template<> ::pg_query::PublicationObjSpec* Arena::CreateMaybeMessage<::pg_query::PublicationObjSpec>(Arena*); -template<> ::pg_query::PublicationTable* Arena::CreateMaybeMessage<::pg_query::PublicationTable>(Arena*); -template<> ::pg_query::Query* Arena::CreateMaybeMessage<::pg_query::Query>(Arena*); -template<> ::pg_query::RangeFunction* Arena::CreateMaybeMessage<::pg_query::RangeFunction>(Arena*); -template<> ::pg_query::RangeSubselect* Arena::CreateMaybeMessage<::pg_query::RangeSubselect>(Arena*); -template<> ::pg_query::RangeTableFunc* Arena::CreateMaybeMessage<::pg_query::RangeTableFunc>(Arena*); -template<> ::pg_query::RangeTableFuncCol* Arena::CreateMaybeMessage<::pg_query::RangeTableFuncCol>(Arena*); -template<> ::pg_query::RangeTableSample* Arena::CreateMaybeMessage<::pg_query::RangeTableSample>(Arena*); -template<> ::pg_query::RangeTblEntry* Arena::CreateMaybeMessage<::pg_query::RangeTblEntry>(Arena*); -template<> ::pg_query::RangeTblFunction* Arena::CreateMaybeMessage<::pg_query::RangeTblFunction>(Arena*); -template<> ::pg_query::RangeTblRef* Arena::CreateMaybeMessage<::pg_query::RangeTblRef>(Arena*); -template<> ::pg_query::RangeVar* Arena::CreateMaybeMessage<::pg_query::RangeVar>(Arena*); -template<> ::pg_query::RawStmt* Arena::CreateMaybeMessage<::pg_query::RawStmt>(Arena*); -template<> ::pg_query::ReassignOwnedStmt* Arena::CreateMaybeMessage<::pg_query::ReassignOwnedStmt>(Arena*); -template<> ::pg_query::RefreshMatViewStmt* Arena::CreateMaybeMessage<::pg_query::RefreshMatViewStmt>(Arena*); -template<> ::pg_query::ReindexStmt* Arena::CreateMaybeMessage<::pg_query::ReindexStmt>(Arena*); -template<> ::pg_query::RelabelType* Arena::CreateMaybeMessage<::pg_query::RelabelType>(Arena*); -template<> ::pg_query::RenameStmt* Arena::CreateMaybeMessage<::pg_query::RenameStmt>(Arena*); -template<> ::pg_query::ReplicaIdentityStmt* Arena::CreateMaybeMessage<::pg_query::ReplicaIdentityStmt>(Arena*); -template<> ::pg_query::ResTarget* Arena::CreateMaybeMessage<::pg_query::ResTarget>(Arena*); -template<> ::pg_query::ReturnStmt* Arena::CreateMaybeMessage<::pg_query::ReturnStmt>(Arena*); -template<> ::pg_query::RoleSpec* Arena::CreateMaybeMessage<::pg_query::RoleSpec>(Arena*); -template<> ::pg_query::RowCompareExpr* Arena::CreateMaybeMessage<::pg_query::RowCompareExpr>(Arena*); -template<> ::pg_query::RowExpr* Arena::CreateMaybeMessage<::pg_query::RowExpr>(Arena*); -template<> ::pg_query::RowMarkClause* Arena::CreateMaybeMessage<::pg_query::RowMarkClause>(Arena*); -template<> ::pg_query::RuleStmt* Arena::CreateMaybeMessage<::pg_query::RuleStmt>(Arena*); -template<> ::pg_query::SQLValueFunction* Arena::CreateMaybeMessage<::pg_query::SQLValueFunction>(Arena*); -template<> ::pg_query::ScalarArrayOpExpr* Arena::CreateMaybeMessage<::pg_query::ScalarArrayOpExpr>(Arena*); -template<> ::pg_query::ScanResult* Arena::CreateMaybeMessage<::pg_query::ScanResult>(Arena*); -template<> ::pg_query::ScanToken* Arena::CreateMaybeMessage<::pg_query::ScanToken>(Arena*); -template<> ::pg_query::SecLabelStmt* Arena::CreateMaybeMessage<::pg_query::SecLabelStmt>(Arena*); -template<> ::pg_query::SelectStmt* Arena::CreateMaybeMessage<::pg_query::SelectStmt>(Arena*); -template<> ::pg_query::SetOperationStmt* Arena::CreateMaybeMessage<::pg_query::SetOperationStmt>(Arena*); -template<> ::pg_query::SetToDefault* Arena::CreateMaybeMessage<::pg_query::SetToDefault>(Arena*); -template<> ::pg_query::SortBy* Arena::CreateMaybeMessage<::pg_query::SortBy>(Arena*); -template<> ::pg_query::SortGroupClause* Arena::CreateMaybeMessage<::pg_query::SortGroupClause>(Arena*); -template<> ::pg_query::StatsElem* Arena::CreateMaybeMessage<::pg_query::StatsElem>(Arena*); -template<> ::pg_query::String* Arena::CreateMaybeMessage<::pg_query::String>(Arena*); -template<> ::pg_query::SubLink* Arena::CreateMaybeMessage<::pg_query::SubLink>(Arena*); -template<> ::pg_query::SubPlan* Arena::CreateMaybeMessage<::pg_query::SubPlan>(Arena*); -template<> ::pg_query::SubscriptingRef* Arena::CreateMaybeMessage<::pg_query::SubscriptingRef>(Arena*); -template<> ::pg_query::TableFunc* Arena::CreateMaybeMessage<::pg_query::TableFunc>(Arena*); -template<> ::pg_query::TableLikeClause* Arena::CreateMaybeMessage<::pg_query::TableLikeClause>(Arena*); -template<> ::pg_query::TableSampleClause* Arena::CreateMaybeMessage<::pg_query::TableSampleClause>(Arena*); -template<> ::pg_query::TargetEntry* Arena::CreateMaybeMessage<::pg_query::TargetEntry>(Arena*); -template<> ::pg_query::TransactionStmt* Arena::CreateMaybeMessage<::pg_query::TransactionStmt>(Arena*); -template<> ::pg_query::TriggerTransition* Arena::CreateMaybeMessage<::pg_query::TriggerTransition>(Arena*); -template<> ::pg_query::TruncateStmt* Arena::CreateMaybeMessage<::pg_query::TruncateStmt>(Arena*); -template<> ::pg_query::TypeCast* Arena::CreateMaybeMessage<::pg_query::TypeCast>(Arena*); -template<> ::pg_query::TypeName* Arena::CreateMaybeMessage<::pg_query::TypeName>(Arena*); -template<> ::pg_query::UnlistenStmt* Arena::CreateMaybeMessage<::pg_query::UnlistenStmt>(Arena*); -template<> ::pg_query::UpdateStmt* Arena::CreateMaybeMessage<::pg_query::UpdateStmt>(Arena*); -template<> ::pg_query::VacuumRelation* Arena::CreateMaybeMessage<::pg_query::VacuumRelation>(Arena*); -template<> ::pg_query::VacuumStmt* Arena::CreateMaybeMessage<::pg_query::VacuumStmt>(Arena*); -template<> ::pg_query::Var* Arena::CreateMaybeMessage<::pg_query::Var>(Arena*); -template<> ::pg_query::VariableSetStmt* Arena::CreateMaybeMessage<::pg_query::VariableSetStmt>(Arena*); -template<> ::pg_query::VariableShowStmt* Arena::CreateMaybeMessage<::pg_query::VariableShowStmt>(Arena*); -template<> ::pg_query::ViewStmt* Arena::CreateMaybeMessage<::pg_query::ViewStmt>(Arena*); -template<> ::pg_query::WindowClause* Arena::CreateMaybeMessage<::pg_query::WindowClause>(Arena*); -template<> ::pg_query::WindowDef* Arena::CreateMaybeMessage<::pg_query::WindowDef>(Arena*); -template<> ::pg_query::WindowFunc* Arena::CreateMaybeMessage<::pg_query::WindowFunc>(Arena*); -template<> ::pg_query::WithCheckOption* Arena::CreateMaybeMessage<::pg_query::WithCheckOption>(Arena*); -template<> ::pg_query::WithClause* Arena::CreateMaybeMessage<::pg_query::WithClause>(Arena*); -template<> ::pg_query::XmlExpr* Arena::CreateMaybeMessage<::pg_query::XmlExpr>(Arena*); -template<> ::pg_query::XmlSerialize* Arena::CreateMaybeMessage<::pg_query::XmlSerialize>(Arena*); -PROTOBUF_NAMESPACE_CLOSE -namespace pg_query { +namespace google { +namespace protobuf { +} // namespace protobuf +} // namespace google +namespace pg_query { enum OverridingKind : int { OVERRIDING_KIND_UNDEFINED = 0, OVERRIDING_NOT_SET = 1, OVERRIDING_USER_VALUE = 2, OVERRIDING_SYSTEM_VALUE = 3, - OverridingKind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - OverridingKind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + OverridingKind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + OverridingKind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool OverridingKind_IsValid(int value); -constexpr OverridingKind OverridingKind_MIN = OVERRIDING_KIND_UNDEFINED; -constexpr OverridingKind OverridingKind_MAX = OVERRIDING_SYSTEM_VALUE; -constexpr int OverridingKind_ARRAYSIZE = OverridingKind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* OverridingKind_descriptor(); -template -inline const std::string& OverridingKind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function OverridingKind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - OverridingKind_descriptor(), enum_t_value); -} -inline bool OverridingKind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, OverridingKind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - OverridingKind_descriptor(), name, value); +extern const uint32_t OverridingKind_internal_data_[]; +constexpr OverridingKind OverridingKind_MIN = static_cast(0); +constexpr OverridingKind OverridingKind_MAX = static_cast(3); +constexpr int OverridingKind_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +OverridingKind_descriptor(); +template +const std::string& OverridingKind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to OverridingKind_Name()."); + return OverridingKind_Name(static_cast(value)); +} +template <> +inline const std::string& OverridingKind_Name(OverridingKind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool OverridingKind_Parse(absl::string_view name, OverridingKind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + OverridingKind_descriptor(), name, value); } enum QuerySource : int { QUERY_SOURCE_UNDEFINED = 0, @@ -1054,27 +875,35 @@ enum QuerySource : int { QSRC_INSTEAD_RULE = 3, QSRC_QUAL_INSTEAD_RULE = 4, QSRC_NON_INSTEAD_RULE = 5, - QuerySource_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - QuerySource_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + QuerySource_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + QuerySource_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool QuerySource_IsValid(int value); -constexpr QuerySource QuerySource_MIN = QUERY_SOURCE_UNDEFINED; -constexpr QuerySource QuerySource_MAX = QSRC_NON_INSTEAD_RULE; -constexpr int QuerySource_ARRAYSIZE = QuerySource_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* QuerySource_descriptor(); -template -inline const std::string& QuerySource_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function QuerySource_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - QuerySource_descriptor(), enum_t_value); -} -inline bool QuerySource_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, QuerySource* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - QuerySource_descriptor(), name, value); +extern const uint32_t QuerySource_internal_data_[]; +constexpr QuerySource QuerySource_MIN = static_cast(0); +constexpr QuerySource QuerySource_MAX = static_cast(5); +constexpr int QuerySource_ARRAYSIZE = 5 + 1; +const ::google::protobuf::EnumDescriptor* +QuerySource_descriptor(); +template +const std::string& QuerySource_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to QuerySource_Name()."); + return QuerySource_Name(static_cast(value)); +} +template <> +inline const std::string& QuerySource_Name(QuerySource value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool QuerySource_Parse(absl::string_view name, QuerySource* value) { + return ::google::protobuf::internal::ParseNamedEnum( + QuerySource_descriptor(), name, value); } enum SortByDir : int { SORT_BY_DIR_UNDEFINED = 0, @@ -1082,81 +911,105 @@ enum SortByDir : int { SORTBY_ASC = 2, SORTBY_DESC = 3, SORTBY_USING = 4, - SortByDir_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - SortByDir_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + SortByDir_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + SortByDir_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool SortByDir_IsValid(int value); -constexpr SortByDir SortByDir_MIN = SORT_BY_DIR_UNDEFINED; -constexpr SortByDir SortByDir_MAX = SORTBY_USING; -constexpr int SortByDir_ARRAYSIZE = SortByDir_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SortByDir_descriptor(); -template -inline const std::string& SortByDir_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function SortByDir_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - SortByDir_descriptor(), enum_t_value); -} -inline bool SortByDir_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SortByDir* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - SortByDir_descriptor(), name, value); +extern const uint32_t SortByDir_internal_data_[]; +constexpr SortByDir SortByDir_MIN = static_cast(0); +constexpr SortByDir SortByDir_MAX = static_cast(4); +constexpr int SortByDir_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +SortByDir_descriptor(); +template +const std::string& SortByDir_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to SortByDir_Name()."); + return SortByDir_Name(static_cast(value)); +} +template <> +inline const std::string& SortByDir_Name(SortByDir value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool SortByDir_Parse(absl::string_view name, SortByDir* value) { + return ::google::protobuf::internal::ParseNamedEnum( + SortByDir_descriptor(), name, value); } enum SortByNulls : int { SORT_BY_NULLS_UNDEFINED = 0, SORTBY_NULLS_DEFAULT = 1, SORTBY_NULLS_FIRST = 2, SORTBY_NULLS_LAST = 3, - SortByNulls_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - SortByNulls_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + SortByNulls_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + SortByNulls_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool SortByNulls_IsValid(int value); -constexpr SortByNulls SortByNulls_MIN = SORT_BY_NULLS_UNDEFINED; -constexpr SortByNulls SortByNulls_MAX = SORTBY_NULLS_LAST; -constexpr int SortByNulls_ARRAYSIZE = SortByNulls_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SortByNulls_descriptor(); -template -inline const std::string& SortByNulls_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function SortByNulls_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - SortByNulls_descriptor(), enum_t_value); -} -inline bool SortByNulls_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SortByNulls* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - SortByNulls_descriptor(), name, value); +extern const uint32_t SortByNulls_internal_data_[]; +constexpr SortByNulls SortByNulls_MIN = static_cast(0); +constexpr SortByNulls SortByNulls_MAX = static_cast(3); +constexpr int SortByNulls_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +SortByNulls_descriptor(); +template +const std::string& SortByNulls_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to SortByNulls_Name()."); + return SortByNulls_Name(static_cast(value)); +} +template <> +inline const std::string& SortByNulls_Name(SortByNulls value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool SortByNulls_Parse(absl::string_view name, SortByNulls* value) { + return ::google::protobuf::internal::ParseNamedEnum( + SortByNulls_descriptor(), name, value); } enum SetQuantifier : int { SET_QUANTIFIER_UNDEFINED = 0, SET_QUANTIFIER_DEFAULT = 1, SET_QUANTIFIER_ALL = 2, SET_QUANTIFIER_DISTINCT = 3, - SetQuantifier_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - SetQuantifier_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + SetQuantifier_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + SetQuantifier_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool SetQuantifier_IsValid(int value); -constexpr SetQuantifier SetQuantifier_MIN = SET_QUANTIFIER_UNDEFINED; -constexpr SetQuantifier SetQuantifier_MAX = SET_QUANTIFIER_DISTINCT; -constexpr int SetQuantifier_ARRAYSIZE = SetQuantifier_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SetQuantifier_descriptor(); -template -inline const std::string& SetQuantifier_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function SetQuantifier_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - SetQuantifier_descriptor(), enum_t_value); -} -inline bool SetQuantifier_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SetQuantifier* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - SetQuantifier_descriptor(), name, value); +extern const uint32_t SetQuantifier_internal_data_[]; +constexpr SetQuantifier SetQuantifier_MIN = static_cast(0); +constexpr SetQuantifier SetQuantifier_MAX = static_cast(3); +constexpr int SetQuantifier_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +SetQuantifier_descriptor(); +template +const std::string& SetQuantifier_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to SetQuantifier_Name()."); + return SetQuantifier_Name(static_cast(value)); +} +template <> +inline const std::string& SetQuantifier_Name(SetQuantifier value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool SetQuantifier_Parse(absl::string_view name, SetQuantifier* value) { + return ::google::protobuf::internal::ParseNamedEnum( + SetQuantifier_descriptor(), name, value); } enum A_Expr_Kind : int { A_EXPR_KIND_UNDEFINED = 0, @@ -1174,27 +1027,35 @@ enum A_Expr_Kind : int { AEXPR_NOT_BETWEEN = 12, AEXPR_BETWEEN_SYM = 13, AEXPR_NOT_BETWEEN_SYM = 14, - A_Expr_Kind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - A_Expr_Kind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + A_Expr_Kind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + A_Expr_Kind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool A_Expr_Kind_IsValid(int value); -constexpr A_Expr_Kind A_Expr_Kind_MIN = A_EXPR_KIND_UNDEFINED; -constexpr A_Expr_Kind A_Expr_Kind_MAX = AEXPR_NOT_BETWEEN_SYM; -constexpr int A_Expr_Kind_ARRAYSIZE = A_Expr_Kind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* A_Expr_Kind_descriptor(); -template -inline const std::string& A_Expr_Kind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function A_Expr_Kind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - A_Expr_Kind_descriptor(), enum_t_value); -} -inline bool A_Expr_Kind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, A_Expr_Kind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - A_Expr_Kind_descriptor(), name, value); +extern const uint32_t A_Expr_Kind_internal_data_[]; +constexpr A_Expr_Kind A_Expr_Kind_MIN = static_cast(0); +constexpr A_Expr_Kind A_Expr_Kind_MAX = static_cast(14); +constexpr int A_Expr_Kind_ARRAYSIZE = 14 + 1; +const ::google::protobuf::EnumDescriptor* +A_Expr_Kind_descriptor(); +template +const std::string& A_Expr_Kind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to A_Expr_Kind_Name()."); + return A_Expr_Kind_Name(static_cast(value)); +} +template <> +inline const std::string& A_Expr_Kind_Name(A_Expr_Kind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool A_Expr_Kind_Parse(absl::string_view name, A_Expr_Kind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + A_Expr_Kind_descriptor(), name, value); } enum RoleSpecType : int { ROLE_SPEC_TYPE_UNDEFINED = 0, @@ -1203,27 +1064,35 @@ enum RoleSpecType : int { ROLESPEC_CURRENT_USER = 3, ROLESPEC_SESSION_USER = 4, ROLESPEC_PUBLIC = 5, - RoleSpecType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - RoleSpecType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + RoleSpecType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + RoleSpecType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool RoleSpecType_IsValid(int value); -constexpr RoleSpecType RoleSpecType_MIN = ROLE_SPEC_TYPE_UNDEFINED; -constexpr RoleSpecType RoleSpecType_MAX = ROLESPEC_PUBLIC; -constexpr int RoleSpecType_ARRAYSIZE = RoleSpecType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* RoleSpecType_descriptor(); -template -inline const std::string& RoleSpecType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function RoleSpecType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - RoleSpecType_descriptor(), enum_t_value); -} -inline bool RoleSpecType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, RoleSpecType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - RoleSpecType_descriptor(), name, value); +extern const uint32_t RoleSpecType_internal_data_[]; +constexpr RoleSpecType RoleSpecType_MIN = static_cast(0); +constexpr RoleSpecType RoleSpecType_MAX = static_cast(5); +constexpr int RoleSpecType_ARRAYSIZE = 5 + 1; +const ::google::protobuf::EnumDescriptor* +RoleSpecType_descriptor(); +template +const std::string& RoleSpecType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to RoleSpecType_Name()."); + return RoleSpecType_Name(static_cast(value)); +} +template <> +inline const std::string& RoleSpecType_Name(RoleSpecType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool RoleSpecType_Parse(absl::string_view name, RoleSpecType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + RoleSpecType_descriptor(), name, value); } enum TableLikeOption : int { TABLE_LIKE_OPTION_UNDEFINED = 0, @@ -1237,27 +1106,35 @@ enum TableLikeOption : int { CREATE_TABLE_LIKE_STATISTICS = 8, CREATE_TABLE_LIKE_STORAGE = 9, CREATE_TABLE_LIKE_ALL = 10, - TableLikeOption_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - TableLikeOption_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + TableLikeOption_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + TableLikeOption_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool TableLikeOption_IsValid(int value); -constexpr TableLikeOption TableLikeOption_MIN = TABLE_LIKE_OPTION_UNDEFINED; -constexpr TableLikeOption TableLikeOption_MAX = CREATE_TABLE_LIKE_ALL; -constexpr int TableLikeOption_ARRAYSIZE = TableLikeOption_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* TableLikeOption_descriptor(); -template -inline const std::string& TableLikeOption_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function TableLikeOption_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - TableLikeOption_descriptor(), enum_t_value); -} -inline bool TableLikeOption_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, TableLikeOption* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - TableLikeOption_descriptor(), name, value); +extern const uint32_t TableLikeOption_internal_data_[]; +constexpr TableLikeOption TableLikeOption_MIN = static_cast(0); +constexpr TableLikeOption TableLikeOption_MAX = static_cast(10); +constexpr int TableLikeOption_ARRAYSIZE = 10 + 1; +const ::google::protobuf::EnumDescriptor* +TableLikeOption_descriptor(); +template +const std::string& TableLikeOption_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to TableLikeOption_Name()."); + return TableLikeOption_Name(static_cast(value)); +} +template <> +inline const std::string& TableLikeOption_Name(TableLikeOption value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool TableLikeOption_Parse(absl::string_view name, TableLikeOption* value) { + return ::google::protobuf::internal::ParseNamedEnum( + TableLikeOption_descriptor(), name, value); } enum DefElemAction : int { DEF_ELEM_ACTION_UNDEFINED = 0, @@ -1265,54 +1142,105 @@ enum DefElemAction : int { DEFELEM_SET = 2, DEFELEM_ADD = 3, DEFELEM_DROP = 4, - DefElemAction_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - DefElemAction_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + DefElemAction_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + DefElemAction_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool DefElemAction_IsValid(int value); -constexpr DefElemAction DefElemAction_MIN = DEF_ELEM_ACTION_UNDEFINED; -constexpr DefElemAction DefElemAction_MAX = DEFELEM_DROP; -constexpr int DefElemAction_ARRAYSIZE = DefElemAction_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DefElemAction_descriptor(); -template -inline const std::string& DefElemAction_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function DefElemAction_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - DefElemAction_descriptor(), enum_t_value); -} -inline bool DefElemAction_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, DefElemAction* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - DefElemAction_descriptor(), name, value); +extern const uint32_t DefElemAction_internal_data_[]; +constexpr DefElemAction DefElemAction_MIN = static_cast(0); +constexpr DefElemAction DefElemAction_MAX = static_cast(4); +constexpr int DefElemAction_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +DefElemAction_descriptor(); +template +const std::string& DefElemAction_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to DefElemAction_Name()."); + return DefElemAction_Name(static_cast(value)); +} +template <> +inline const std::string& DefElemAction_Name(DefElemAction value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool DefElemAction_Parse(absl::string_view name, DefElemAction* value) { + return ::google::protobuf::internal::ParseNamedEnum( + DefElemAction_descriptor(), name, value); +} +enum PartitionStrategy : int { + PARTITION_STRATEGY_UNDEFINED = 0, + PARTITION_STRATEGY_LIST = 1, + PARTITION_STRATEGY_RANGE = 2, + PARTITION_STRATEGY_HASH = 3, + PartitionStrategy_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + PartitionStrategy_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), +}; + +bool PartitionStrategy_IsValid(int value); +extern const uint32_t PartitionStrategy_internal_data_[]; +constexpr PartitionStrategy PartitionStrategy_MIN = static_cast(0); +constexpr PartitionStrategy PartitionStrategy_MAX = static_cast(3); +constexpr int PartitionStrategy_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +PartitionStrategy_descriptor(); +template +const std::string& PartitionStrategy_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to PartitionStrategy_Name()."); + return PartitionStrategy_Name(static_cast(value)); +} +template <> +inline const std::string& PartitionStrategy_Name(PartitionStrategy value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool PartitionStrategy_Parse(absl::string_view name, PartitionStrategy* value) { + return ::google::protobuf::internal::ParseNamedEnum( + PartitionStrategy_descriptor(), name, value); } enum PartitionRangeDatumKind : int { PARTITION_RANGE_DATUM_KIND_UNDEFINED = 0, PARTITION_RANGE_DATUM_MINVALUE = 1, PARTITION_RANGE_DATUM_VALUE = 2, PARTITION_RANGE_DATUM_MAXVALUE = 3, - PartitionRangeDatumKind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - PartitionRangeDatumKind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + PartitionRangeDatumKind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + PartitionRangeDatumKind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool PartitionRangeDatumKind_IsValid(int value); -constexpr PartitionRangeDatumKind PartitionRangeDatumKind_MIN = PARTITION_RANGE_DATUM_KIND_UNDEFINED; -constexpr PartitionRangeDatumKind PartitionRangeDatumKind_MAX = PARTITION_RANGE_DATUM_MAXVALUE; -constexpr int PartitionRangeDatumKind_ARRAYSIZE = PartitionRangeDatumKind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PartitionRangeDatumKind_descriptor(); -template -inline const std::string& PartitionRangeDatumKind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function PartitionRangeDatumKind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - PartitionRangeDatumKind_descriptor(), enum_t_value); -} -inline bool PartitionRangeDatumKind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, PartitionRangeDatumKind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - PartitionRangeDatumKind_descriptor(), name, value); +extern const uint32_t PartitionRangeDatumKind_internal_data_[]; +constexpr PartitionRangeDatumKind PartitionRangeDatumKind_MIN = static_cast(0); +constexpr PartitionRangeDatumKind PartitionRangeDatumKind_MAX = static_cast(3); +constexpr int PartitionRangeDatumKind_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +PartitionRangeDatumKind_descriptor(); +template +const std::string& PartitionRangeDatumKind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to PartitionRangeDatumKind_Name()."); + return PartitionRangeDatumKind_Name(static_cast(value)); +} +template <> +inline const std::string& PartitionRangeDatumKind_Name(PartitionRangeDatumKind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool PartitionRangeDatumKind_Parse(absl::string_view name, PartitionRangeDatumKind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + PartitionRangeDatumKind_descriptor(), name, value); } enum RTEKind : int { RTEKIND_UNDEFINED = 0, @@ -1325,27 +1253,35 @@ enum RTEKind : int { RTE_CTE = 7, RTE_NAMEDTUPLESTORE = 8, RTE_RESULT = 9, - RTEKind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - RTEKind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + RTEKind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + RTEKind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool RTEKind_IsValid(int value); -constexpr RTEKind RTEKind_MIN = RTEKIND_UNDEFINED; -constexpr RTEKind RTEKind_MAX = RTE_RESULT; -constexpr int RTEKind_ARRAYSIZE = RTEKind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* RTEKind_descriptor(); -template -inline const std::string& RTEKind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function RTEKind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - RTEKind_descriptor(), enum_t_value); -} -inline bool RTEKind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, RTEKind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - RTEKind_descriptor(), name, value); +extern const uint32_t RTEKind_internal_data_[]; +constexpr RTEKind RTEKind_MIN = static_cast(0); +constexpr RTEKind RTEKind_MAX = static_cast(9); +constexpr int RTEKind_ARRAYSIZE = 9 + 1; +const ::google::protobuf::EnumDescriptor* +RTEKind_descriptor(); +template +const std::string& RTEKind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to RTEKind_Name()."); + return RTEKind_Name(static_cast(value)); +} +template <> +inline const std::string& RTEKind_Name(RTEKind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool RTEKind_Parse(absl::string_view name, RTEKind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + RTEKind_descriptor(), name, value); } enum WCOKind : int { WCOKIND_UNDEFINED = 0, @@ -1355,27 +1291,35 @@ enum WCOKind : int { WCO_RLS_CONFLICT_CHECK = 4, WCO_RLS_MERGE_UPDATE_CHECK = 5, WCO_RLS_MERGE_DELETE_CHECK = 6, - WCOKind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - WCOKind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + WCOKind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + WCOKind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool WCOKind_IsValid(int value); -constexpr WCOKind WCOKind_MIN = WCOKIND_UNDEFINED; -constexpr WCOKind WCOKind_MAX = WCO_RLS_MERGE_DELETE_CHECK; -constexpr int WCOKind_ARRAYSIZE = WCOKind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* WCOKind_descriptor(); -template -inline const std::string& WCOKind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function WCOKind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - WCOKind_descriptor(), enum_t_value); -} -inline bool WCOKind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, WCOKind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - WCOKind_descriptor(), name, value); +extern const uint32_t WCOKind_internal_data_[]; +constexpr WCOKind WCOKind_MIN = static_cast(0); +constexpr WCOKind WCOKind_MAX = static_cast(6); +constexpr int WCOKind_ARRAYSIZE = 6 + 1; +const ::google::protobuf::EnumDescriptor* +WCOKind_descriptor(); +template +const std::string& WCOKind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to WCOKind_Name()."); + return WCOKind_Name(static_cast(value)); +} +template <> +inline const std::string& WCOKind_Name(WCOKind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool WCOKind_Parse(absl::string_view name, WCOKind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + WCOKind_descriptor(), name, value); } enum GroupingSetKind : int { GROUPING_SET_KIND_UNDEFINED = 0, @@ -1384,54 +1328,70 @@ enum GroupingSetKind : int { GROUPING_SET_ROLLUP = 3, GROUPING_SET_CUBE = 4, GROUPING_SET_SETS = 5, - GroupingSetKind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - GroupingSetKind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + GroupingSetKind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + GroupingSetKind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool GroupingSetKind_IsValid(int value); -constexpr GroupingSetKind GroupingSetKind_MIN = GROUPING_SET_KIND_UNDEFINED; -constexpr GroupingSetKind GroupingSetKind_MAX = GROUPING_SET_SETS; -constexpr int GroupingSetKind_ARRAYSIZE = GroupingSetKind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* GroupingSetKind_descriptor(); -template -inline const std::string& GroupingSetKind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function GroupingSetKind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - GroupingSetKind_descriptor(), enum_t_value); -} -inline bool GroupingSetKind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, GroupingSetKind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - GroupingSetKind_descriptor(), name, value); +extern const uint32_t GroupingSetKind_internal_data_[]; +constexpr GroupingSetKind GroupingSetKind_MIN = static_cast(0); +constexpr GroupingSetKind GroupingSetKind_MAX = static_cast(5); +constexpr int GroupingSetKind_ARRAYSIZE = 5 + 1; +const ::google::protobuf::EnumDescriptor* +GroupingSetKind_descriptor(); +template +const std::string& GroupingSetKind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to GroupingSetKind_Name()."); + return GroupingSetKind_Name(static_cast(value)); +} +template <> +inline const std::string& GroupingSetKind_Name(GroupingSetKind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool GroupingSetKind_Parse(absl::string_view name, GroupingSetKind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + GroupingSetKind_descriptor(), name, value); } enum CTEMaterialize : int { CTEMATERIALIZE_UNDEFINED = 0, CTEMaterializeDefault = 1, CTEMaterializeAlways = 2, CTEMaterializeNever = 3, - CTEMaterialize_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - CTEMaterialize_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + CTEMaterialize_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + CTEMaterialize_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool CTEMaterialize_IsValid(int value); -constexpr CTEMaterialize CTEMaterialize_MIN = CTEMATERIALIZE_UNDEFINED; -constexpr CTEMaterialize CTEMaterialize_MAX = CTEMaterializeNever; -constexpr int CTEMaterialize_ARRAYSIZE = CTEMaterialize_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CTEMaterialize_descriptor(); -template -inline const std::string& CTEMaterialize_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function CTEMaterialize_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - CTEMaterialize_descriptor(), enum_t_value); -} -inline bool CTEMaterialize_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, CTEMaterialize* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - CTEMaterialize_descriptor(), name, value); +extern const uint32_t CTEMaterialize_internal_data_[]; +constexpr CTEMaterialize CTEMaterialize_MIN = static_cast(0); +constexpr CTEMaterialize CTEMaterialize_MAX = static_cast(3); +constexpr int CTEMaterialize_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +CTEMaterialize_descriptor(); +template +const std::string& CTEMaterialize_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to CTEMaterialize_Name()."); + return CTEMaterialize_Name(static_cast(value)); +} +template <> +inline const std::string& CTEMaterialize_Name(CTEMaterialize value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool CTEMaterialize_Parse(absl::string_view name, CTEMaterialize* value) { + return ::google::protobuf::internal::ParseNamedEnum( + CTEMaterialize_descriptor(), name, value); } enum SetOperation : int { SET_OPERATION_UNDEFINED = 0, @@ -1439,27 +1399,35 @@ enum SetOperation : int { SETOP_UNION = 2, SETOP_INTERSECT = 3, SETOP_EXCEPT = 4, - SetOperation_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - SetOperation_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + SetOperation_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + SetOperation_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool SetOperation_IsValid(int value); -constexpr SetOperation SetOperation_MIN = SET_OPERATION_UNDEFINED; -constexpr SetOperation SetOperation_MAX = SETOP_EXCEPT; -constexpr int SetOperation_ARRAYSIZE = SetOperation_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SetOperation_descriptor(); -template -inline const std::string& SetOperation_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function SetOperation_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - SetOperation_descriptor(), enum_t_value); -} -inline bool SetOperation_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SetOperation* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - SetOperation_descriptor(), name, value); +extern const uint32_t SetOperation_internal_data_[]; +constexpr SetOperation SetOperation_MIN = static_cast(0); +constexpr SetOperation SetOperation_MAX = static_cast(4); +constexpr int SetOperation_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +SetOperation_descriptor(); +template +const std::string& SetOperation_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to SetOperation_Name()."); + return SetOperation_Name(static_cast(value)); +} +template <> +inline const std::string& SetOperation_Name(SetOperation value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool SetOperation_Parse(absl::string_view name, SetOperation* value) { + return ::google::protobuf::internal::ParseNamedEnum( + SetOperation_descriptor(), name, value); } enum ObjectType : int { OBJECT_TYPE_UNDEFINED = 0, @@ -1515,175 +1483,202 @@ enum ObjectType : int { OBJECT_TYPE = 50, OBJECT_USER_MAPPING = 51, OBJECT_VIEW = 52, - ObjectType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - ObjectType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + ObjectType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + ObjectType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool ObjectType_IsValid(int value); -constexpr ObjectType ObjectType_MIN = OBJECT_TYPE_UNDEFINED; -constexpr ObjectType ObjectType_MAX = OBJECT_VIEW; -constexpr int ObjectType_ARRAYSIZE = ObjectType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ObjectType_descriptor(); -template -inline const std::string& ObjectType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function ObjectType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ObjectType_descriptor(), enum_t_value); -} -inline bool ObjectType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ObjectType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ObjectType_descriptor(), name, value); +extern const uint32_t ObjectType_internal_data_[]; +constexpr ObjectType ObjectType_MIN = static_cast(0); +constexpr ObjectType ObjectType_MAX = static_cast(52); +constexpr int ObjectType_ARRAYSIZE = 52 + 1; +const ::google::protobuf::EnumDescriptor* +ObjectType_descriptor(); +template +const std::string& ObjectType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to ObjectType_Name()."); + return ObjectType_Name(static_cast(value)); +} +template <> +inline const std::string& ObjectType_Name(ObjectType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool ObjectType_Parse(absl::string_view name, ObjectType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + ObjectType_descriptor(), name, value); } enum DropBehavior : int { DROP_BEHAVIOR_UNDEFINED = 0, DROP_RESTRICT = 1, DROP_CASCADE = 2, - DropBehavior_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - DropBehavior_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + DropBehavior_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + DropBehavior_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool DropBehavior_IsValid(int value); -constexpr DropBehavior DropBehavior_MIN = DROP_BEHAVIOR_UNDEFINED; -constexpr DropBehavior DropBehavior_MAX = DROP_CASCADE; -constexpr int DropBehavior_ARRAYSIZE = DropBehavior_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DropBehavior_descriptor(); -template -inline const std::string& DropBehavior_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function DropBehavior_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - DropBehavior_descriptor(), enum_t_value); -} -inline bool DropBehavior_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, DropBehavior* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - DropBehavior_descriptor(), name, value); +extern const uint32_t DropBehavior_internal_data_[]; +constexpr DropBehavior DropBehavior_MIN = static_cast(0); +constexpr DropBehavior DropBehavior_MAX = static_cast(2); +constexpr int DropBehavior_ARRAYSIZE = 2 + 1; +const ::google::protobuf::EnumDescriptor* +DropBehavior_descriptor(); +template +const std::string& DropBehavior_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to DropBehavior_Name()."); + return DropBehavior_Name(static_cast(value)); +} +template <> +inline const std::string& DropBehavior_Name(DropBehavior value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool DropBehavior_Parse(absl::string_view name, DropBehavior* value) { + return ::google::protobuf::internal::ParseNamedEnum( + DropBehavior_descriptor(), name, value); } enum AlterTableType : int { ALTER_TABLE_TYPE_UNDEFINED = 0, AT_AddColumn = 1, - AT_AddColumnRecurse = 2, - AT_AddColumnToView = 3, - AT_ColumnDefault = 4, - AT_CookedColumnDefault = 5, - AT_DropNotNull = 6, - AT_SetNotNull = 7, - AT_DropExpression = 8, - AT_CheckNotNull = 9, - AT_SetStatistics = 10, - AT_SetOptions = 11, - AT_ResetOptions = 12, - AT_SetStorage = 13, - AT_SetCompression = 14, - AT_DropColumn = 15, - AT_DropColumnRecurse = 16, - AT_AddIndex = 17, - AT_ReAddIndex = 18, - AT_AddConstraint = 19, - AT_AddConstraintRecurse = 20, - AT_ReAddConstraint = 21, - AT_ReAddDomainConstraint = 22, - AT_AlterConstraint = 23, - AT_ValidateConstraint = 24, - AT_ValidateConstraintRecurse = 25, - AT_AddIndexConstraint = 26, - AT_DropConstraint = 27, - AT_DropConstraintRecurse = 28, - AT_ReAddComment = 29, - AT_AlterColumnType = 30, - AT_AlterColumnGenericOptions = 31, - AT_ChangeOwner = 32, - AT_ClusterOn = 33, - AT_DropCluster = 34, - AT_SetLogged = 35, - AT_SetUnLogged = 36, - AT_DropOids = 37, - AT_SetAccessMethod = 38, - AT_SetTableSpace = 39, - AT_SetRelOptions = 40, - AT_ResetRelOptions = 41, - AT_ReplaceRelOptions = 42, - AT_EnableTrig = 43, - AT_EnableAlwaysTrig = 44, - AT_EnableReplicaTrig = 45, - AT_DisableTrig = 46, - AT_EnableTrigAll = 47, - AT_DisableTrigAll = 48, - AT_EnableTrigUser = 49, - AT_DisableTrigUser = 50, - AT_EnableRule = 51, - AT_EnableAlwaysRule = 52, - AT_EnableReplicaRule = 53, - AT_DisableRule = 54, - AT_AddInherit = 55, - AT_DropInherit = 56, - AT_AddOf = 57, - AT_DropOf = 58, - AT_ReplicaIdentity = 59, - AT_EnableRowSecurity = 60, - AT_DisableRowSecurity = 61, - AT_ForceRowSecurity = 62, - AT_NoForceRowSecurity = 63, - AT_GenericOptions = 64, - AT_AttachPartition = 65, - AT_DetachPartition = 66, - AT_DetachPartitionFinalize = 67, - AT_AddIdentity = 68, - AT_SetIdentity = 69, - AT_DropIdentity = 70, - AT_ReAddStatistics = 71, - AlterTableType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - AlterTableType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + AT_AddColumnToView = 2, + AT_ColumnDefault = 3, + AT_CookedColumnDefault = 4, + AT_DropNotNull = 5, + AT_SetNotNull = 6, + AT_DropExpression = 7, + AT_CheckNotNull = 8, + AT_SetStatistics = 9, + AT_SetOptions = 10, + AT_ResetOptions = 11, + AT_SetStorage = 12, + AT_SetCompression = 13, + AT_DropColumn = 14, + AT_AddIndex = 15, + AT_ReAddIndex = 16, + AT_AddConstraint = 17, + AT_ReAddConstraint = 18, + AT_ReAddDomainConstraint = 19, + AT_AlterConstraint = 20, + AT_ValidateConstraint = 21, + AT_AddIndexConstraint = 22, + AT_DropConstraint = 23, + AT_ReAddComment = 24, + AT_AlterColumnType = 25, + AT_AlterColumnGenericOptions = 26, + AT_ChangeOwner = 27, + AT_ClusterOn = 28, + AT_DropCluster = 29, + AT_SetLogged = 30, + AT_SetUnLogged = 31, + AT_DropOids = 32, + AT_SetAccessMethod = 33, + AT_SetTableSpace = 34, + AT_SetRelOptions = 35, + AT_ResetRelOptions = 36, + AT_ReplaceRelOptions = 37, + AT_EnableTrig = 38, + AT_EnableAlwaysTrig = 39, + AT_EnableReplicaTrig = 40, + AT_DisableTrig = 41, + AT_EnableTrigAll = 42, + AT_DisableTrigAll = 43, + AT_EnableTrigUser = 44, + AT_DisableTrigUser = 45, + AT_EnableRule = 46, + AT_EnableAlwaysRule = 47, + AT_EnableReplicaRule = 48, + AT_DisableRule = 49, + AT_AddInherit = 50, + AT_DropInherit = 51, + AT_AddOf = 52, + AT_DropOf = 53, + AT_ReplicaIdentity = 54, + AT_EnableRowSecurity = 55, + AT_DisableRowSecurity = 56, + AT_ForceRowSecurity = 57, + AT_NoForceRowSecurity = 58, + AT_GenericOptions = 59, + AT_AttachPartition = 60, + AT_DetachPartition = 61, + AT_DetachPartitionFinalize = 62, + AT_AddIdentity = 63, + AT_SetIdentity = 64, + AT_DropIdentity = 65, + AT_ReAddStatistics = 66, + AlterTableType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + AlterTableType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool AlterTableType_IsValid(int value); -constexpr AlterTableType AlterTableType_MIN = ALTER_TABLE_TYPE_UNDEFINED; -constexpr AlterTableType AlterTableType_MAX = AT_ReAddStatistics; -constexpr int AlterTableType_ARRAYSIZE = AlterTableType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* AlterTableType_descriptor(); -template -inline const std::string& AlterTableType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function AlterTableType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - AlterTableType_descriptor(), enum_t_value); -} -inline bool AlterTableType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, AlterTableType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - AlterTableType_descriptor(), name, value); +extern const uint32_t AlterTableType_internal_data_[]; +constexpr AlterTableType AlterTableType_MIN = static_cast(0); +constexpr AlterTableType AlterTableType_MAX = static_cast(66); +constexpr int AlterTableType_ARRAYSIZE = 66 + 1; +const ::google::protobuf::EnumDescriptor* +AlterTableType_descriptor(); +template +const std::string& AlterTableType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to AlterTableType_Name()."); + return AlterTableType_Name(static_cast(value)); +} +template <> +inline const std::string& AlterTableType_Name(AlterTableType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool AlterTableType_Parse(absl::string_view name, AlterTableType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + AlterTableType_descriptor(), name, value); } enum GrantTargetType : int { GRANT_TARGET_TYPE_UNDEFINED = 0, ACL_TARGET_OBJECT = 1, ACL_TARGET_ALL_IN_SCHEMA = 2, ACL_TARGET_DEFAULTS = 3, - GrantTargetType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - GrantTargetType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + GrantTargetType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + GrantTargetType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool GrantTargetType_IsValid(int value); -constexpr GrantTargetType GrantTargetType_MIN = GRANT_TARGET_TYPE_UNDEFINED; -constexpr GrantTargetType GrantTargetType_MAX = ACL_TARGET_DEFAULTS; -constexpr int GrantTargetType_ARRAYSIZE = GrantTargetType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* GrantTargetType_descriptor(); -template -inline const std::string& GrantTargetType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function GrantTargetType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - GrantTargetType_descriptor(), enum_t_value); -} -inline bool GrantTargetType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, GrantTargetType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - GrantTargetType_descriptor(), name, value); +extern const uint32_t GrantTargetType_internal_data_[]; +constexpr GrantTargetType GrantTargetType_MIN = static_cast(0); +constexpr GrantTargetType GrantTargetType_MAX = static_cast(3); +constexpr int GrantTargetType_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +GrantTargetType_descriptor(); +template +const std::string& GrantTargetType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to GrantTargetType_Name()."); + return GrantTargetType_Name(static_cast(value)); +} +template <> +inline const std::string& GrantTargetType_Name(GrantTargetType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool GrantTargetType_Parse(absl::string_view name, GrantTargetType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + GrantTargetType_descriptor(), name, value); } enum VariableSetKind : int { VARIABLE_SET_KIND_UNDEFINED = 0, @@ -1693,27 +1688,35 @@ enum VariableSetKind : int { VAR_SET_MULTI = 4, VAR_RESET = 5, VAR_RESET_ALL = 6, - VariableSetKind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - VariableSetKind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + VariableSetKind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + VariableSetKind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool VariableSetKind_IsValid(int value); -constexpr VariableSetKind VariableSetKind_MIN = VARIABLE_SET_KIND_UNDEFINED; -constexpr VariableSetKind VariableSetKind_MAX = VAR_RESET_ALL; -constexpr int VariableSetKind_ARRAYSIZE = VariableSetKind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* VariableSetKind_descriptor(); -template -inline const std::string& VariableSetKind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function VariableSetKind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - VariableSetKind_descriptor(), enum_t_value); -} -inline bool VariableSetKind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, VariableSetKind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - VariableSetKind_descriptor(), name, value); +extern const uint32_t VariableSetKind_internal_data_[]; +constexpr VariableSetKind VariableSetKind_MIN = static_cast(0); +constexpr VariableSetKind VariableSetKind_MAX = static_cast(6); +constexpr int VariableSetKind_ARRAYSIZE = 6 + 1; +const ::google::protobuf::EnumDescriptor* +VariableSetKind_descriptor(); +template +const std::string& VariableSetKind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to VariableSetKind_Name()."); + return VariableSetKind_Name(static_cast(value)); +} +template <> +inline const std::string& VariableSetKind_Name(VariableSetKind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool VariableSetKind_Parse(absl::string_view name, VariableSetKind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + VariableSetKind_descriptor(), name, value); } enum ConstrType : int { CONSTR_TYPE_UNDEFINED = 0, @@ -1731,81 +1734,105 @@ enum ConstrType : int { CONSTR_ATTR_NOT_DEFERRABLE = 12, CONSTR_ATTR_DEFERRED = 13, CONSTR_ATTR_IMMEDIATE = 14, - ConstrType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - ConstrType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + ConstrType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + ConstrType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool ConstrType_IsValid(int value); -constexpr ConstrType ConstrType_MIN = CONSTR_TYPE_UNDEFINED; -constexpr ConstrType ConstrType_MAX = CONSTR_ATTR_IMMEDIATE; -constexpr int ConstrType_ARRAYSIZE = ConstrType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ConstrType_descriptor(); -template -inline const std::string& ConstrType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function ConstrType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ConstrType_descriptor(), enum_t_value); -} -inline bool ConstrType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ConstrType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ConstrType_descriptor(), name, value); +extern const uint32_t ConstrType_internal_data_[]; +constexpr ConstrType ConstrType_MIN = static_cast(0); +constexpr ConstrType ConstrType_MAX = static_cast(14); +constexpr int ConstrType_ARRAYSIZE = 14 + 1; +const ::google::protobuf::EnumDescriptor* +ConstrType_descriptor(); +template +const std::string& ConstrType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to ConstrType_Name()."); + return ConstrType_Name(static_cast(value)); +} +template <> +inline const std::string& ConstrType_Name(ConstrType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool ConstrType_Parse(absl::string_view name, ConstrType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + ConstrType_descriptor(), name, value); } enum ImportForeignSchemaType : int { IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED = 0, FDW_IMPORT_SCHEMA_ALL = 1, FDW_IMPORT_SCHEMA_LIMIT_TO = 2, FDW_IMPORT_SCHEMA_EXCEPT = 3, - ImportForeignSchemaType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - ImportForeignSchemaType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + ImportForeignSchemaType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + ImportForeignSchemaType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool ImportForeignSchemaType_IsValid(int value); -constexpr ImportForeignSchemaType ImportForeignSchemaType_MIN = IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED; -constexpr ImportForeignSchemaType ImportForeignSchemaType_MAX = FDW_IMPORT_SCHEMA_EXCEPT; -constexpr int ImportForeignSchemaType_ARRAYSIZE = ImportForeignSchemaType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ImportForeignSchemaType_descriptor(); -template -inline const std::string& ImportForeignSchemaType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function ImportForeignSchemaType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ImportForeignSchemaType_descriptor(), enum_t_value); -} -inline bool ImportForeignSchemaType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ImportForeignSchemaType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ImportForeignSchemaType_descriptor(), name, value); +extern const uint32_t ImportForeignSchemaType_internal_data_[]; +constexpr ImportForeignSchemaType ImportForeignSchemaType_MIN = static_cast(0); +constexpr ImportForeignSchemaType ImportForeignSchemaType_MAX = static_cast(3); +constexpr int ImportForeignSchemaType_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +ImportForeignSchemaType_descriptor(); +template +const std::string& ImportForeignSchemaType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to ImportForeignSchemaType_Name()."); + return ImportForeignSchemaType_Name(static_cast(value)); +} +template <> +inline const std::string& ImportForeignSchemaType_Name(ImportForeignSchemaType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool ImportForeignSchemaType_Parse(absl::string_view name, ImportForeignSchemaType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + ImportForeignSchemaType_descriptor(), name, value); } enum RoleStmtType : int { ROLE_STMT_TYPE_UNDEFINED = 0, ROLESTMT_ROLE = 1, ROLESTMT_USER = 2, ROLESTMT_GROUP = 3, - RoleStmtType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - RoleStmtType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + RoleStmtType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + RoleStmtType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool RoleStmtType_IsValid(int value); -constexpr RoleStmtType RoleStmtType_MIN = ROLE_STMT_TYPE_UNDEFINED; -constexpr RoleStmtType RoleStmtType_MAX = ROLESTMT_GROUP; -constexpr int RoleStmtType_ARRAYSIZE = RoleStmtType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* RoleStmtType_descriptor(); -template -inline const std::string& RoleStmtType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function RoleStmtType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - RoleStmtType_descriptor(), enum_t_value); -} -inline bool RoleStmtType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, RoleStmtType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - RoleStmtType_descriptor(), name, value); +extern const uint32_t RoleStmtType_internal_data_[]; +constexpr RoleStmtType RoleStmtType_MIN = static_cast(0); +constexpr RoleStmtType RoleStmtType_MAX = static_cast(3); +constexpr int RoleStmtType_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +RoleStmtType_descriptor(); +template +const std::string& RoleStmtType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to RoleStmtType_Name()."); + return RoleStmtType_Name(static_cast(value)); +} +template <> +inline const std::string& RoleStmtType_Name(RoleStmtType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool RoleStmtType_Parse(absl::string_view name, RoleStmtType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + RoleStmtType_descriptor(), name, value); } enum FetchDirection : int { FETCH_DIRECTION_UNDEFINED = 0, @@ -1813,27 +1840,35 @@ enum FetchDirection : int { FETCH_BACKWARD = 2, FETCH_ABSOLUTE = 3, FETCH_RELATIVE = 4, - FetchDirection_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - FetchDirection_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + FetchDirection_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + FetchDirection_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool FetchDirection_IsValid(int value); -constexpr FetchDirection FetchDirection_MIN = FETCH_DIRECTION_UNDEFINED; -constexpr FetchDirection FetchDirection_MAX = FETCH_RELATIVE; -constexpr int FetchDirection_ARRAYSIZE = FetchDirection_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FetchDirection_descriptor(); -template -inline const std::string& FetchDirection_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function FetchDirection_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - FetchDirection_descriptor(), enum_t_value); -} -inline bool FetchDirection_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FetchDirection* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - FetchDirection_descriptor(), name, value); +extern const uint32_t FetchDirection_internal_data_[]; +constexpr FetchDirection FetchDirection_MIN = static_cast(0); +constexpr FetchDirection FetchDirection_MAX = static_cast(4); +constexpr int FetchDirection_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +FetchDirection_descriptor(); +template +const std::string& FetchDirection_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to FetchDirection_Name()."); + return FetchDirection_Name(static_cast(value)); +} +template <> +inline const std::string& FetchDirection_Name(FetchDirection value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool FetchDirection_Parse(absl::string_view name, FetchDirection* value) { + return ::google::protobuf::internal::ParseNamedEnum( + FetchDirection_descriptor(), name, value); } enum FunctionParameterMode : int { FUNCTION_PARAMETER_MODE_UNDEFINED = 0, @@ -1843,27 +1878,35 @@ enum FunctionParameterMode : int { FUNC_PARAM_VARIADIC = 4, FUNC_PARAM_TABLE = 5, FUNC_PARAM_DEFAULT = 6, - FunctionParameterMode_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - FunctionParameterMode_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + FunctionParameterMode_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + FunctionParameterMode_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool FunctionParameterMode_IsValid(int value); -constexpr FunctionParameterMode FunctionParameterMode_MIN = FUNCTION_PARAMETER_MODE_UNDEFINED; -constexpr FunctionParameterMode FunctionParameterMode_MAX = FUNC_PARAM_DEFAULT; -constexpr int FunctionParameterMode_ARRAYSIZE = FunctionParameterMode_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FunctionParameterMode_descriptor(); -template -inline const std::string& FunctionParameterMode_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function FunctionParameterMode_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - FunctionParameterMode_descriptor(), enum_t_value); -} -inline bool FunctionParameterMode_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FunctionParameterMode* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - FunctionParameterMode_descriptor(), name, value); +extern const uint32_t FunctionParameterMode_internal_data_[]; +constexpr FunctionParameterMode FunctionParameterMode_MIN = static_cast(0); +constexpr FunctionParameterMode FunctionParameterMode_MAX = static_cast(6); +constexpr int FunctionParameterMode_ARRAYSIZE = 6 + 1; +const ::google::protobuf::EnumDescriptor* +FunctionParameterMode_descriptor(); +template +const std::string& FunctionParameterMode_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to FunctionParameterMode_Name()."); + return FunctionParameterMode_Name(static_cast(value)); +} +template <> +inline const std::string& FunctionParameterMode_Name(FunctionParameterMode value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool FunctionParameterMode_Parse(absl::string_view name, FunctionParameterMode* value) { + return ::google::protobuf::internal::ParseNamedEnum( + FunctionParameterMode_descriptor(), name, value); } enum TransactionStmtKind : int { TRANSACTION_STMT_KIND_UNDEFINED = 0, @@ -1877,54 +1920,70 @@ enum TransactionStmtKind : int { TRANS_STMT_PREPARE = 8, TRANS_STMT_COMMIT_PREPARED = 9, TRANS_STMT_ROLLBACK_PREPARED = 10, - TransactionStmtKind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - TransactionStmtKind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + TransactionStmtKind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + TransactionStmtKind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool TransactionStmtKind_IsValid(int value); -constexpr TransactionStmtKind TransactionStmtKind_MIN = TRANSACTION_STMT_KIND_UNDEFINED; -constexpr TransactionStmtKind TransactionStmtKind_MAX = TRANS_STMT_ROLLBACK_PREPARED; -constexpr int TransactionStmtKind_ARRAYSIZE = TransactionStmtKind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* TransactionStmtKind_descriptor(); -template -inline const std::string& TransactionStmtKind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function TransactionStmtKind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - TransactionStmtKind_descriptor(), enum_t_value); -} -inline bool TransactionStmtKind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, TransactionStmtKind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - TransactionStmtKind_descriptor(), name, value); +extern const uint32_t TransactionStmtKind_internal_data_[]; +constexpr TransactionStmtKind TransactionStmtKind_MIN = static_cast(0); +constexpr TransactionStmtKind TransactionStmtKind_MAX = static_cast(10); +constexpr int TransactionStmtKind_ARRAYSIZE = 10 + 1; +const ::google::protobuf::EnumDescriptor* +TransactionStmtKind_descriptor(); +template +const std::string& TransactionStmtKind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to TransactionStmtKind_Name()."); + return TransactionStmtKind_Name(static_cast(value)); +} +template <> +inline const std::string& TransactionStmtKind_Name(TransactionStmtKind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool TransactionStmtKind_Parse(absl::string_view name, TransactionStmtKind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + TransactionStmtKind_descriptor(), name, value); } enum ViewCheckOption : int { VIEW_CHECK_OPTION_UNDEFINED = 0, NO_CHECK_OPTION = 1, LOCAL_CHECK_OPTION = 2, CASCADED_CHECK_OPTION = 3, - ViewCheckOption_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - ViewCheckOption_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + ViewCheckOption_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + ViewCheckOption_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool ViewCheckOption_IsValid(int value); -constexpr ViewCheckOption ViewCheckOption_MIN = VIEW_CHECK_OPTION_UNDEFINED; -constexpr ViewCheckOption ViewCheckOption_MAX = CASCADED_CHECK_OPTION; -constexpr int ViewCheckOption_ARRAYSIZE = ViewCheckOption_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ViewCheckOption_descriptor(); -template -inline const std::string& ViewCheckOption_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function ViewCheckOption_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ViewCheckOption_descriptor(), enum_t_value); -} -inline bool ViewCheckOption_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ViewCheckOption* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ViewCheckOption_descriptor(), name, value); +extern const uint32_t ViewCheckOption_internal_data_[]; +constexpr ViewCheckOption ViewCheckOption_MIN = static_cast(0); +constexpr ViewCheckOption ViewCheckOption_MAX = static_cast(3); +constexpr int ViewCheckOption_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +ViewCheckOption_descriptor(); +template +const std::string& ViewCheckOption_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to ViewCheckOption_Name()."); + return ViewCheckOption_Name(static_cast(value)); +} +template <> +inline const std::string& ViewCheckOption_Name(ViewCheckOption value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool ViewCheckOption_Parse(absl::string_view name, ViewCheckOption* value) { + return ::google::protobuf::internal::ParseNamedEnum( + ViewCheckOption_descriptor(), name, value); } enum DiscardMode : int { DISCARD_MODE_UNDEFINED = 0, @@ -1932,27 +1991,35 @@ enum DiscardMode : int { DISCARD_PLANS = 2, DISCARD_SEQUENCES = 3, DISCARD_TEMP = 4, - DiscardMode_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - DiscardMode_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + DiscardMode_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + DiscardMode_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool DiscardMode_IsValid(int value); -constexpr DiscardMode DiscardMode_MIN = DISCARD_MODE_UNDEFINED; -constexpr DiscardMode DiscardMode_MAX = DISCARD_TEMP; -constexpr int DiscardMode_ARRAYSIZE = DiscardMode_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DiscardMode_descriptor(); -template -inline const std::string& DiscardMode_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function DiscardMode_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - DiscardMode_descriptor(), enum_t_value); -} -inline bool DiscardMode_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, DiscardMode* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - DiscardMode_descriptor(), name, value); +extern const uint32_t DiscardMode_internal_data_[]; +constexpr DiscardMode DiscardMode_MIN = static_cast(0); +constexpr DiscardMode DiscardMode_MAX = static_cast(4); +constexpr int DiscardMode_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +DiscardMode_descriptor(); +template +const std::string& DiscardMode_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to DiscardMode_Name()."); + return DiscardMode_Name(static_cast(value)); +} +template <> +inline const std::string& DiscardMode_Name(DiscardMode value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool DiscardMode_Parse(absl::string_view name, DiscardMode* value) { + return ::google::protobuf::internal::ParseNamedEnum( + DiscardMode_descriptor(), name, value); } enum ReindexObjectType : int { REINDEX_OBJECT_TYPE_UNDEFINED = 0, @@ -1961,27 +2028,35 @@ enum ReindexObjectType : int { REINDEX_OBJECT_SCHEMA = 3, REINDEX_OBJECT_SYSTEM = 4, REINDEX_OBJECT_DATABASE = 5, - ReindexObjectType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - ReindexObjectType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + ReindexObjectType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + ReindexObjectType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool ReindexObjectType_IsValid(int value); -constexpr ReindexObjectType ReindexObjectType_MIN = REINDEX_OBJECT_TYPE_UNDEFINED; -constexpr ReindexObjectType ReindexObjectType_MAX = REINDEX_OBJECT_DATABASE; -constexpr int ReindexObjectType_ARRAYSIZE = ReindexObjectType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ReindexObjectType_descriptor(); -template -inline const std::string& ReindexObjectType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function ReindexObjectType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ReindexObjectType_descriptor(), enum_t_value); -} -inline bool ReindexObjectType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ReindexObjectType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ReindexObjectType_descriptor(), name, value); +extern const uint32_t ReindexObjectType_internal_data_[]; +constexpr ReindexObjectType ReindexObjectType_MIN = static_cast(0); +constexpr ReindexObjectType ReindexObjectType_MAX = static_cast(5); +constexpr int ReindexObjectType_ARRAYSIZE = 5 + 1; +const ::google::protobuf::EnumDescriptor* +ReindexObjectType_descriptor(); +template +const std::string& ReindexObjectType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to ReindexObjectType_Name()."); + return ReindexObjectType_Name(static_cast(value)); +} +template <> +inline const std::string& ReindexObjectType_Name(ReindexObjectType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool ReindexObjectType_Parse(absl::string_view name, ReindexObjectType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + ReindexObjectType_descriptor(), name, value); } enum AlterTSConfigType : int { ALTER_TSCONFIG_TYPE_UNDEFINED = 0, @@ -1990,27 +2065,35 @@ enum AlterTSConfigType : int { ALTER_TSCONFIG_REPLACE_DICT = 3, ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN = 4, ALTER_TSCONFIG_DROP_MAPPING = 5, - AlterTSConfigType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - AlterTSConfigType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + AlterTSConfigType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + AlterTSConfigType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool AlterTSConfigType_IsValid(int value); -constexpr AlterTSConfigType AlterTSConfigType_MIN = ALTER_TSCONFIG_TYPE_UNDEFINED; -constexpr AlterTSConfigType AlterTSConfigType_MAX = ALTER_TSCONFIG_DROP_MAPPING; -constexpr int AlterTSConfigType_ARRAYSIZE = AlterTSConfigType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* AlterTSConfigType_descriptor(); -template -inline const std::string& AlterTSConfigType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function AlterTSConfigType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - AlterTSConfigType_descriptor(), enum_t_value); -} -inline bool AlterTSConfigType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, AlterTSConfigType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - AlterTSConfigType_descriptor(), name, value); +extern const uint32_t AlterTSConfigType_internal_data_[]; +constexpr AlterTSConfigType AlterTSConfigType_MIN = static_cast(0); +constexpr AlterTSConfigType AlterTSConfigType_MAX = static_cast(5); +constexpr int AlterTSConfigType_ARRAYSIZE = 5 + 1; +const ::google::protobuf::EnumDescriptor* +AlterTSConfigType_descriptor(); +template +const std::string& AlterTSConfigType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to AlterTSConfigType_Name()."); + return AlterTSConfigType_Name(static_cast(value)); +} +template <> +inline const std::string& AlterTSConfigType_Name(AlterTSConfigType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool AlterTSConfigType_Parse(absl::string_view name, AlterTSConfigType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + AlterTSConfigType_descriptor(), name, value); } enum PublicationObjSpecType : int { PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED = 0, @@ -2018,54 +2101,70 @@ enum PublicationObjSpecType : int { PUBLICATIONOBJ_TABLES_IN_SCHEMA = 2, PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA = 3, PUBLICATIONOBJ_CONTINUATION = 4, - PublicationObjSpecType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - PublicationObjSpecType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + PublicationObjSpecType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + PublicationObjSpecType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool PublicationObjSpecType_IsValid(int value); -constexpr PublicationObjSpecType PublicationObjSpecType_MIN = PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED; -constexpr PublicationObjSpecType PublicationObjSpecType_MAX = PUBLICATIONOBJ_CONTINUATION; -constexpr int PublicationObjSpecType_ARRAYSIZE = PublicationObjSpecType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* PublicationObjSpecType_descriptor(); -template -inline const std::string& PublicationObjSpecType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function PublicationObjSpecType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - PublicationObjSpecType_descriptor(), enum_t_value); -} -inline bool PublicationObjSpecType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, PublicationObjSpecType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - PublicationObjSpecType_descriptor(), name, value); +extern const uint32_t PublicationObjSpecType_internal_data_[]; +constexpr PublicationObjSpecType PublicationObjSpecType_MIN = static_cast(0); +constexpr PublicationObjSpecType PublicationObjSpecType_MAX = static_cast(4); +constexpr int PublicationObjSpecType_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +PublicationObjSpecType_descriptor(); +template +const std::string& PublicationObjSpecType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to PublicationObjSpecType_Name()."); + return PublicationObjSpecType_Name(static_cast(value)); +} +template <> +inline const std::string& PublicationObjSpecType_Name(PublicationObjSpecType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool PublicationObjSpecType_Parse(absl::string_view name, PublicationObjSpecType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + PublicationObjSpecType_descriptor(), name, value); } enum AlterPublicationAction : int { ALTER_PUBLICATION_ACTION_UNDEFINED = 0, AP_AddObjects = 1, AP_DropObjects = 2, AP_SetObjects = 3, - AlterPublicationAction_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - AlterPublicationAction_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + AlterPublicationAction_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + AlterPublicationAction_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool AlterPublicationAction_IsValid(int value); -constexpr AlterPublicationAction AlterPublicationAction_MIN = ALTER_PUBLICATION_ACTION_UNDEFINED; -constexpr AlterPublicationAction AlterPublicationAction_MAX = AP_SetObjects; -constexpr int AlterPublicationAction_ARRAYSIZE = AlterPublicationAction_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* AlterPublicationAction_descriptor(); -template -inline const std::string& AlterPublicationAction_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function AlterPublicationAction_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - AlterPublicationAction_descriptor(), enum_t_value); -} -inline bool AlterPublicationAction_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, AlterPublicationAction* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - AlterPublicationAction_descriptor(), name, value); +extern const uint32_t AlterPublicationAction_internal_data_[]; +constexpr AlterPublicationAction AlterPublicationAction_MIN = static_cast(0); +constexpr AlterPublicationAction AlterPublicationAction_MAX = static_cast(3); +constexpr int AlterPublicationAction_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +AlterPublicationAction_descriptor(); +template +const std::string& AlterPublicationAction_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to AlterPublicationAction_Name()."); + return AlterPublicationAction_Name(static_cast(value)); +} +template <> +inline const std::string& AlterPublicationAction_Name(AlterPublicationAction value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool AlterPublicationAction_Parse(absl::string_view name, AlterPublicationAction* value) { + return ::google::protobuf::internal::ParseNamedEnum( + AlterPublicationAction_descriptor(), name, value); } enum AlterSubscriptionType : int { ALTER_SUBSCRIPTION_TYPE_UNDEFINED = 0, @@ -2077,27 +2176,35 @@ enum AlterSubscriptionType : int { ALTER_SUBSCRIPTION_REFRESH = 6, ALTER_SUBSCRIPTION_ENABLED = 7, ALTER_SUBSCRIPTION_SKIP = 8, - AlterSubscriptionType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - AlterSubscriptionType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + AlterSubscriptionType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + AlterSubscriptionType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool AlterSubscriptionType_IsValid(int value); -constexpr AlterSubscriptionType AlterSubscriptionType_MIN = ALTER_SUBSCRIPTION_TYPE_UNDEFINED; -constexpr AlterSubscriptionType AlterSubscriptionType_MAX = ALTER_SUBSCRIPTION_SKIP; -constexpr int AlterSubscriptionType_ARRAYSIZE = AlterSubscriptionType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* AlterSubscriptionType_descriptor(); -template -inline const std::string& AlterSubscriptionType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function AlterSubscriptionType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - AlterSubscriptionType_descriptor(), enum_t_value); -} -inline bool AlterSubscriptionType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, AlterSubscriptionType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - AlterSubscriptionType_descriptor(), name, value); +extern const uint32_t AlterSubscriptionType_internal_data_[]; +constexpr AlterSubscriptionType AlterSubscriptionType_MIN = static_cast(0); +constexpr AlterSubscriptionType AlterSubscriptionType_MAX = static_cast(8); +constexpr int AlterSubscriptionType_ARRAYSIZE = 8 + 1; +const ::google::protobuf::EnumDescriptor* +AlterSubscriptionType_descriptor(); +template +const std::string& AlterSubscriptionType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to AlterSubscriptionType_Name()."); + return AlterSubscriptionType_Name(static_cast(value)); +} +template <> +inline const std::string& AlterSubscriptionType_Name(AlterSubscriptionType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool AlterSubscriptionType_Parse(absl::string_view name, AlterSubscriptionType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + AlterSubscriptionType_descriptor(), name, value); } enum OnCommitAction : int { ON_COMMIT_ACTION_UNDEFINED = 0, @@ -2105,27 +2212,35 @@ enum OnCommitAction : int { ONCOMMIT_PRESERVE_ROWS = 2, ONCOMMIT_DELETE_ROWS = 3, ONCOMMIT_DROP = 4, - OnCommitAction_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - OnCommitAction_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + OnCommitAction_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + OnCommitAction_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool OnCommitAction_IsValid(int value); -constexpr OnCommitAction OnCommitAction_MIN = ON_COMMIT_ACTION_UNDEFINED; -constexpr OnCommitAction OnCommitAction_MAX = ONCOMMIT_DROP; -constexpr int OnCommitAction_ARRAYSIZE = OnCommitAction_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* OnCommitAction_descriptor(); -template -inline const std::string& OnCommitAction_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function OnCommitAction_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - OnCommitAction_descriptor(), enum_t_value); -} -inline bool OnCommitAction_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, OnCommitAction* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - OnCommitAction_descriptor(), name, value); +extern const uint32_t OnCommitAction_internal_data_[]; +constexpr OnCommitAction OnCommitAction_MIN = static_cast(0); +constexpr OnCommitAction OnCommitAction_MAX = static_cast(4); +constexpr int OnCommitAction_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +OnCommitAction_descriptor(); +template +const std::string& OnCommitAction_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to OnCommitAction_Name()."); + return OnCommitAction_Name(static_cast(value)); +} +template <> +inline const std::string& OnCommitAction_Name(OnCommitAction value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool OnCommitAction_Parse(absl::string_view name, OnCommitAction* value) { + return ::google::protobuf::internal::ParseNamedEnum( + OnCommitAction_descriptor(), name, value); } enum ParamKind : int { PARAM_KIND_UNDEFINED = 0, @@ -2133,27 +2248,35 @@ enum ParamKind : int { PARAM_EXEC = 2, PARAM_SUBLINK = 3, PARAM_MULTIEXPR = 4, - ParamKind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - ParamKind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + ParamKind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + ParamKind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool ParamKind_IsValid(int value); -constexpr ParamKind ParamKind_MIN = PARAM_KIND_UNDEFINED; -constexpr ParamKind ParamKind_MAX = PARAM_MULTIEXPR; -constexpr int ParamKind_ARRAYSIZE = ParamKind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ParamKind_descriptor(); -template -inline const std::string& ParamKind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function ParamKind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - ParamKind_descriptor(), enum_t_value); -} -inline bool ParamKind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, ParamKind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - ParamKind_descriptor(), name, value); +extern const uint32_t ParamKind_internal_data_[]; +constexpr ParamKind ParamKind_MIN = static_cast(0); +constexpr ParamKind ParamKind_MAX = static_cast(4); +constexpr int ParamKind_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +ParamKind_descriptor(); +template +const std::string& ParamKind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to ParamKind_Name()."); + return ParamKind_Name(static_cast(value)); +} +template <> +inline const std::string& ParamKind_Name(ParamKind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool ParamKind_Parse(absl::string_view name, ParamKind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + ParamKind_descriptor(), name, value); } enum CoercionContext : int { COERCION_CONTEXT_UNDEFINED = 0, @@ -2161,27 +2284,35 @@ enum CoercionContext : int { COERCION_ASSIGNMENT = 2, COERCION_PLPGSQL = 3, COERCION_EXPLICIT = 4, - CoercionContext_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - CoercionContext_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + CoercionContext_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + CoercionContext_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool CoercionContext_IsValid(int value); -constexpr CoercionContext CoercionContext_MIN = COERCION_CONTEXT_UNDEFINED; -constexpr CoercionContext CoercionContext_MAX = COERCION_EXPLICIT; -constexpr int CoercionContext_ARRAYSIZE = CoercionContext_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CoercionContext_descriptor(); -template -inline const std::string& CoercionContext_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function CoercionContext_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - CoercionContext_descriptor(), enum_t_value); -} -inline bool CoercionContext_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, CoercionContext* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - CoercionContext_descriptor(), name, value); +extern const uint32_t CoercionContext_internal_data_[]; +constexpr CoercionContext CoercionContext_MIN = static_cast(0); +constexpr CoercionContext CoercionContext_MAX = static_cast(4); +constexpr int CoercionContext_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +CoercionContext_descriptor(); +template +const std::string& CoercionContext_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to CoercionContext_Name()."); + return CoercionContext_Name(static_cast(value)); +} +template <> +inline const std::string& CoercionContext_Name(CoercionContext value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool CoercionContext_Parse(absl::string_view name, CoercionContext* value) { + return ::google::protobuf::internal::ParseNamedEnum( + CoercionContext_descriptor(), name, value); } enum CoercionForm : int { COERCION_FORM_UNDEFINED = 0, @@ -2189,54 +2320,70 @@ enum CoercionForm : int { COERCE_EXPLICIT_CAST = 2, COERCE_IMPLICIT_CAST = 3, COERCE_SQL_SYNTAX = 4, - CoercionForm_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - CoercionForm_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + CoercionForm_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + CoercionForm_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool CoercionForm_IsValid(int value); -constexpr CoercionForm CoercionForm_MIN = COERCION_FORM_UNDEFINED; -constexpr CoercionForm CoercionForm_MAX = COERCE_SQL_SYNTAX; -constexpr int CoercionForm_ARRAYSIZE = CoercionForm_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CoercionForm_descriptor(); -template -inline const std::string& CoercionForm_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function CoercionForm_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - CoercionForm_descriptor(), enum_t_value); -} -inline bool CoercionForm_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, CoercionForm* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - CoercionForm_descriptor(), name, value); +extern const uint32_t CoercionForm_internal_data_[]; +constexpr CoercionForm CoercionForm_MIN = static_cast(0); +constexpr CoercionForm CoercionForm_MAX = static_cast(4); +constexpr int CoercionForm_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +CoercionForm_descriptor(); +template +const std::string& CoercionForm_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to CoercionForm_Name()."); + return CoercionForm_Name(static_cast(value)); +} +template <> +inline const std::string& CoercionForm_Name(CoercionForm value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool CoercionForm_Parse(absl::string_view name, CoercionForm* value) { + return ::google::protobuf::internal::ParseNamedEnum( + CoercionForm_descriptor(), name, value); } enum BoolExprType : int { BOOL_EXPR_TYPE_UNDEFINED = 0, AND_EXPR = 1, OR_EXPR = 2, NOT_EXPR = 3, - BoolExprType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - BoolExprType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + BoolExprType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + BoolExprType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool BoolExprType_IsValid(int value); -constexpr BoolExprType BoolExprType_MIN = BOOL_EXPR_TYPE_UNDEFINED; -constexpr BoolExprType BoolExprType_MAX = NOT_EXPR; -constexpr int BoolExprType_ARRAYSIZE = BoolExprType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* BoolExprType_descriptor(); -template -inline const std::string& BoolExprType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function BoolExprType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - BoolExprType_descriptor(), enum_t_value); -} -inline bool BoolExprType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BoolExprType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - BoolExprType_descriptor(), name, value); +extern const uint32_t BoolExprType_internal_data_[]; +constexpr BoolExprType BoolExprType_MIN = static_cast(0); +constexpr BoolExprType BoolExprType_MAX = static_cast(3); +constexpr int BoolExprType_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +BoolExprType_descriptor(); +template +const std::string& BoolExprType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to BoolExprType_Name()."); + return BoolExprType_Name(static_cast(value)); +} +template <> +inline const std::string& BoolExprType_Name(BoolExprType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool BoolExprType_Parse(absl::string_view name, BoolExprType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + BoolExprType_descriptor(), name, value); } enum SubLinkType : int { SUB_LINK_TYPE_UNDEFINED = 0, @@ -2248,27 +2395,35 @@ enum SubLinkType : int { MULTIEXPR_SUBLINK = 6, ARRAY_SUBLINK = 7, CTE_SUBLINK = 8, - SubLinkType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - SubLinkType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + SubLinkType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + SubLinkType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool SubLinkType_IsValid(int value); -constexpr SubLinkType SubLinkType_MIN = SUB_LINK_TYPE_UNDEFINED; -constexpr SubLinkType SubLinkType_MAX = CTE_SUBLINK; -constexpr int SubLinkType_ARRAYSIZE = SubLinkType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SubLinkType_descriptor(); -template -inline const std::string& SubLinkType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function SubLinkType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - SubLinkType_descriptor(), enum_t_value); -} -inline bool SubLinkType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SubLinkType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - SubLinkType_descriptor(), name, value); +extern const uint32_t SubLinkType_internal_data_[]; +constexpr SubLinkType SubLinkType_MIN = static_cast(0); +constexpr SubLinkType SubLinkType_MAX = static_cast(8); +constexpr int SubLinkType_ARRAYSIZE = 8 + 1; +const ::google::protobuf::EnumDescriptor* +SubLinkType_descriptor(); +template +const std::string& SubLinkType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to SubLinkType_Name()."); + return SubLinkType_Name(static_cast(value)); +} +template <> +inline const std::string& SubLinkType_Name(SubLinkType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool SubLinkType_Parse(absl::string_view name, SubLinkType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + SubLinkType_descriptor(), name, value); } enum RowCompareType : int { ROW_COMPARE_TYPE_UNDEFINED = 0, @@ -2278,53 +2433,69 @@ enum RowCompareType : int { ROWCOMPARE_GE = 4, ROWCOMPARE_GT = 5, ROWCOMPARE_NE = 6, - RowCompareType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - RowCompareType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + RowCompareType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + RowCompareType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool RowCompareType_IsValid(int value); -constexpr RowCompareType RowCompareType_MIN = ROW_COMPARE_TYPE_UNDEFINED; -constexpr RowCompareType RowCompareType_MAX = ROWCOMPARE_NE; -constexpr int RowCompareType_ARRAYSIZE = RowCompareType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* RowCompareType_descriptor(); -template -inline const std::string& RowCompareType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function RowCompareType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - RowCompareType_descriptor(), enum_t_value); -} -inline bool RowCompareType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, RowCompareType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - RowCompareType_descriptor(), name, value); +extern const uint32_t RowCompareType_internal_data_[]; +constexpr RowCompareType RowCompareType_MIN = static_cast(0); +constexpr RowCompareType RowCompareType_MAX = static_cast(6); +constexpr int RowCompareType_ARRAYSIZE = 6 + 1; +const ::google::protobuf::EnumDescriptor* +RowCompareType_descriptor(); +template +const std::string& RowCompareType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to RowCompareType_Name()."); + return RowCompareType_Name(static_cast(value)); +} +template <> +inline const std::string& RowCompareType_Name(RowCompareType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool RowCompareType_Parse(absl::string_view name, RowCompareType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + RowCompareType_descriptor(), name, value); } enum MinMaxOp : int { MIN_MAX_OP_UNDEFINED = 0, IS_GREATEST = 1, IS_LEAST = 2, - MinMaxOp_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - MinMaxOp_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + MinMaxOp_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + MinMaxOp_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool MinMaxOp_IsValid(int value); -constexpr MinMaxOp MinMaxOp_MIN = MIN_MAX_OP_UNDEFINED; -constexpr MinMaxOp MinMaxOp_MAX = IS_LEAST; -constexpr int MinMaxOp_ARRAYSIZE = MinMaxOp_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MinMaxOp_descriptor(); -template -inline const std::string& MinMaxOp_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function MinMaxOp_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - MinMaxOp_descriptor(), enum_t_value); -} -inline bool MinMaxOp_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, MinMaxOp* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - MinMaxOp_descriptor(), name, value); +extern const uint32_t MinMaxOp_internal_data_[]; +constexpr MinMaxOp MinMaxOp_MIN = static_cast(0); +constexpr MinMaxOp MinMaxOp_MAX = static_cast(2); +constexpr int MinMaxOp_ARRAYSIZE = 2 + 1; +const ::google::protobuf::EnumDescriptor* +MinMaxOp_descriptor(); +template +const std::string& MinMaxOp_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to MinMaxOp_Name()."); + return MinMaxOp_Name(static_cast(value)); +} +template <> +inline const std::string& MinMaxOp_Name(MinMaxOp value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool MinMaxOp_Parse(absl::string_view name, MinMaxOp* value) { + return ::google::protobuf::internal::ParseNamedEnum( + MinMaxOp_descriptor(), name, value); } enum SQLValueFunctionOp : int { SQLVALUE_FUNCTION_OP_UNDEFINED = 0, @@ -2343,27 +2514,35 @@ enum SQLValueFunctionOp : int { SVFOP_SESSION_USER = 13, SVFOP_CURRENT_CATALOG = 14, SVFOP_CURRENT_SCHEMA = 15, - SQLValueFunctionOp_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - SQLValueFunctionOp_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + SQLValueFunctionOp_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + SQLValueFunctionOp_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool SQLValueFunctionOp_IsValid(int value); -constexpr SQLValueFunctionOp SQLValueFunctionOp_MIN = SQLVALUE_FUNCTION_OP_UNDEFINED; -constexpr SQLValueFunctionOp SQLValueFunctionOp_MAX = SVFOP_CURRENT_SCHEMA; -constexpr int SQLValueFunctionOp_ARRAYSIZE = SQLValueFunctionOp_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SQLValueFunctionOp_descriptor(); -template -inline const std::string& SQLValueFunctionOp_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function SQLValueFunctionOp_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - SQLValueFunctionOp_descriptor(), enum_t_value); -} -inline bool SQLValueFunctionOp_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SQLValueFunctionOp* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - SQLValueFunctionOp_descriptor(), name, value); +extern const uint32_t SQLValueFunctionOp_internal_data_[]; +constexpr SQLValueFunctionOp SQLValueFunctionOp_MIN = static_cast(0); +constexpr SQLValueFunctionOp SQLValueFunctionOp_MAX = static_cast(15); +constexpr int SQLValueFunctionOp_ARRAYSIZE = 15 + 1; +const ::google::protobuf::EnumDescriptor* +SQLValueFunctionOp_descriptor(); +template +const std::string& SQLValueFunctionOp_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to SQLValueFunctionOp_Name()."); + return SQLValueFunctionOp_Name(static_cast(value)); +} +template <> +inline const std::string& SQLValueFunctionOp_Name(SQLValueFunctionOp value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool SQLValueFunctionOp_Parse(absl::string_view name, SQLValueFunctionOp* value) { + return ::google::protobuf::internal::ParseNamedEnum( + SQLValueFunctionOp_descriptor(), name, value); } enum XmlExprOp : int { XML_EXPR_OP_UNDEFINED = 0, @@ -2375,79 +2554,246 @@ enum XmlExprOp : int { IS_XMLROOT = 6, IS_XMLSERIALIZE = 7, IS_DOCUMENT = 8, - XmlExprOp_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - XmlExprOp_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + XmlExprOp_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + XmlExprOp_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool XmlExprOp_IsValid(int value); -constexpr XmlExprOp XmlExprOp_MIN = XML_EXPR_OP_UNDEFINED; -constexpr XmlExprOp XmlExprOp_MAX = IS_DOCUMENT; -constexpr int XmlExprOp_ARRAYSIZE = XmlExprOp_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* XmlExprOp_descriptor(); -template -inline const std::string& XmlExprOp_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function XmlExprOp_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - XmlExprOp_descriptor(), enum_t_value); -} -inline bool XmlExprOp_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, XmlExprOp* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - XmlExprOp_descriptor(), name, value); +extern const uint32_t XmlExprOp_internal_data_[]; +constexpr XmlExprOp XmlExprOp_MIN = static_cast(0); +constexpr XmlExprOp XmlExprOp_MAX = static_cast(8); +constexpr int XmlExprOp_ARRAYSIZE = 8 + 1; +const ::google::protobuf::EnumDescriptor* +XmlExprOp_descriptor(); +template +const std::string& XmlExprOp_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to XmlExprOp_Name()."); + return XmlExprOp_Name(static_cast(value)); +} +template <> +inline const std::string& XmlExprOp_Name(XmlExprOp value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool XmlExprOp_Parse(absl::string_view name, XmlExprOp* value) { + return ::google::protobuf::internal::ParseNamedEnum( + XmlExprOp_descriptor(), name, value); } enum XmlOptionType : int { XML_OPTION_TYPE_UNDEFINED = 0, XMLOPTION_DOCUMENT = 1, XMLOPTION_CONTENT = 2, - XmlOptionType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - XmlOptionType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + XmlOptionType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + XmlOptionType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool XmlOptionType_IsValid(int value); -constexpr XmlOptionType XmlOptionType_MIN = XML_OPTION_TYPE_UNDEFINED; -constexpr XmlOptionType XmlOptionType_MAX = XMLOPTION_CONTENT; -constexpr int XmlOptionType_ARRAYSIZE = XmlOptionType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* XmlOptionType_descriptor(); -template -inline const std::string& XmlOptionType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function XmlOptionType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - XmlOptionType_descriptor(), enum_t_value); -} -inline bool XmlOptionType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, XmlOptionType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - XmlOptionType_descriptor(), name, value); +extern const uint32_t XmlOptionType_internal_data_[]; +constexpr XmlOptionType XmlOptionType_MIN = static_cast(0); +constexpr XmlOptionType XmlOptionType_MAX = static_cast(2); +constexpr int XmlOptionType_ARRAYSIZE = 2 + 1; +const ::google::protobuf::EnumDescriptor* +XmlOptionType_descriptor(); +template +const std::string& XmlOptionType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to XmlOptionType_Name()."); + return XmlOptionType_Name(static_cast(value)); +} +template <> +inline const std::string& XmlOptionType_Name(XmlOptionType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool XmlOptionType_Parse(absl::string_view name, XmlOptionType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + XmlOptionType_descriptor(), name, value); +} +enum JsonEncoding : int { + JSON_ENCODING_UNDEFINED = 0, + JS_ENC_DEFAULT = 1, + JS_ENC_UTF8 = 2, + JS_ENC_UTF16 = 3, + JS_ENC_UTF32 = 4, + JsonEncoding_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + JsonEncoding_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), +}; + +bool JsonEncoding_IsValid(int value); +extern const uint32_t JsonEncoding_internal_data_[]; +constexpr JsonEncoding JsonEncoding_MIN = static_cast(0); +constexpr JsonEncoding JsonEncoding_MAX = static_cast(4); +constexpr int JsonEncoding_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +JsonEncoding_descriptor(); +template +const std::string& JsonEncoding_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to JsonEncoding_Name()."); + return JsonEncoding_Name(static_cast(value)); +} +template <> +inline const std::string& JsonEncoding_Name(JsonEncoding value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool JsonEncoding_Parse(absl::string_view name, JsonEncoding* value) { + return ::google::protobuf::internal::ParseNamedEnum( + JsonEncoding_descriptor(), name, value); +} +enum JsonFormatType : int { + JSON_FORMAT_TYPE_UNDEFINED = 0, + JS_FORMAT_DEFAULT = 1, + JS_FORMAT_JSON = 2, + JS_FORMAT_JSONB = 3, + JsonFormatType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + JsonFormatType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), +}; + +bool JsonFormatType_IsValid(int value); +extern const uint32_t JsonFormatType_internal_data_[]; +constexpr JsonFormatType JsonFormatType_MIN = static_cast(0); +constexpr JsonFormatType JsonFormatType_MAX = static_cast(3); +constexpr int JsonFormatType_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +JsonFormatType_descriptor(); +template +const std::string& JsonFormatType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to JsonFormatType_Name()."); + return JsonFormatType_Name(static_cast(value)); +} +template <> +inline const std::string& JsonFormatType_Name(JsonFormatType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool JsonFormatType_Parse(absl::string_view name, JsonFormatType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + JsonFormatType_descriptor(), name, value); +} +enum JsonConstructorType : int { + JSON_CONSTRUCTOR_TYPE_UNDEFINED = 0, + JSCTOR_JSON_OBJECT = 1, + JSCTOR_JSON_ARRAY = 2, + JSCTOR_JSON_OBJECTAGG = 3, + JSCTOR_JSON_ARRAYAGG = 4, + JsonConstructorType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + JsonConstructorType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), +}; + +bool JsonConstructorType_IsValid(int value); +extern const uint32_t JsonConstructorType_internal_data_[]; +constexpr JsonConstructorType JsonConstructorType_MIN = static_cast(0); +constexpr JsonConstructorType JsonConstructorType_MAX = static_cast(4); +constexpr int JsonConstructorType_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +JsonConstructorType_descriptor(); +template +const std::string& JsonConstructorType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to JsonConstructorType_Name()."); + return JsonConstructorType_Name(static_cast(value)); +} +template <> +inline const std::string& JsonConstructorType_Name(JsonConstructorType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool JsonConstructorType_Parse(absl::string_view name, JsonConstructorType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + JsonConstructorType_descriptor(), name, value); +} +enum JsonValueType : int { + JSON_VALUE_TYPE_UNDEFINED = 0, + JS_TYPE_ANY = 1, + JS_TYPE_OBJECT = 2, + JS_TYPE_ARRAY = 3, + JS_TYPE_SCALAR = 4, + JsonValueType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + JsonValueType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), +}; + +bool JsonValueType_IsValid(int value); +extern const uint32_t JsonValueType_internal_data_[]; +constexpr JsonValueType JsonValueType_MIN = static_cast(0); +constexpr JsonValueType JsonValueType_MAX = static_cast(4); +constexpr int JsonValueType_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +JsonValueType_descriptor(); +template +const std::string& JsonValueType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to JsonValueType_Name()."); + return JsonValueType_Name(static_cast(value)); +} +template <> +inline const std::string& JsonValueType_Name(JsonValueType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool JsonValueType_Parse(absl::string_view name, JsonValueType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + JsonValueType_descriptor(), name, value); } enum NullTestType : int { NULL_TEST_TYPE_UNDEFINED = 0, IS_NULL = 1, IS_NOT_NULL = 2, - NullTestType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - NullTestType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + NullTestType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + NullTestType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool NullTestType_IsValid(int value); -constexpr NullTestType NullTestType_MIN = NULL_TEST_TYPE_UNDEFINED; -constexpr NullTestType NullTestType_MAX = IS_NOT_NULL; -constexpr int NullTestType_ARRAYSIZE = NullTestType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* NullTestType_descriptor(); -template -inline const std::string& NullTestType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function NullTestType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - NullTestType_descriptor(), enum_t_value); -} -inline bool NullTestType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, NullTestType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - NullTestType_descriptor(), name, value); +extern const uint32_t NullTestType_internal_data_[]; +constexpr NullTestType NullTestType_MIN = static_cast(0); +constexpr NullTestType NullTestType_MAX = static_cast(2); +constexpr int NullTestType_ARRAYSIZE = 2 + 1; +const ::google::protobuf::EnumDescriptor* +NullTestType_descriptor(); +template +const std::string& NullTestType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to NullTestType_Name()."); + return NullTestType_Name(static_cast(value)); +} +template <> +inline const std::string& NullTestType_Name(NullTestType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool NullTestType_Parse(absl::string_view name, NullTestType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + NullTestType_descriptor(), name, value); } enum BoolTestType : int { BOOL_TEST_TYPE_UNDEFINED = 0, @@ -2457,27 +2803,35 @@ enum BoolTestType : int { IS_NOT_FALSE = 4, IS_UNKNOWN = 5, IS_NOT_UNKNOWN = 6, - BoolTestType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - BoolTestType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + BoolTestType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + BoolTestType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool BoolTestType_IsValid(int value); -constexpr BoolTestType BoolTestType_MIN = BOOL_TEST_TYPE_UNDEFINED; -constexpr BoolTestType BoolTestType_MAX = IS_NOT_UNKNOWN; -constexpr int BoolTestType_ARRAYSIZE = BoolTestType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* BoolTestType_descriptor(); -template -inline const std::string& BoolTestType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function BoolTestType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - BoolTestType_descriptor(), enum_t_value); -} -inline bool BoolTestType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BoolTestType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - BoolTestType_descriptor(), name, value); +extern const uint32_t BoolTestType_internal_data_[]; +constexpr BoolTestType BoolTestType_MIN = static_cast(0); +constexpr BoolTestType BoolTestType_MAX = static_cast(6); +constexpr int BoolTestType_ARRAYSIZE = 6 + 1; +const ::google::protobuf::EnumDescriptor* +BoolTestType_descriptor(); +template +const std::string& BoolTestType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to BoolTestType_Name()."); + return BoolTestType_Name(static_cast(value)); +} +template <> +inline const std::string& BoolTestType_Name(BoolTestType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool BoolTestType_Parse(absl::string_view name, BoolTestType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + BoolTestType_descriptor(), name, value); } enum CmdType : int { CMD_TYPE_UNDEFINED = 0, @@ -2489,27 +2843,35 @@ enum CmdType : int { CMD_MERGE = 6, CMD_UTILITY = 7, CMD_NOTHING = 8, - CmdType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - CmdType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + CmdType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + CmdType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool CmdType_IsValid(int value); -constexpr CmdType CmdType_MIN = CMD_TYPE_UNDEFINED; -constexpr CmdType CmdType_MAX = CMD_NOTHING; -constexpr int CmdType_ARRAYSIZE = CmdType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CmdType_descriptor(); -template -inline const std::string& CmdType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function CmdType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - CmdType_descriptor(), enum_t_value); -} -inline bool CmdType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, CmdType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - CmdType_descriptor(), name, value); +extern const uint32_t CmdType_internal_data_[]; +constexpr CmdType CmdType_MIN = static_cast(0); +constexpr CmdType CmdType_MAX = static_cast(8); +constexpr int CmdType_ARRAYSIZE = 8 + 1; +const ::google::protobuf::EnumDescriptor* +CmdType_descriptor(); +template +const std::string& CmdType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to CmdType_Name()."); + return CmdType_Name(static_cast(value)); +} +template <> +inline const std::string& CmdType_Name(CmdType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool CmdType_Parse(absl::string_view name, CmdType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + CmdType_descriptor(), name, value); } enum JoinType : int { JOIN_TYPE_UNDEFINED = 0, @@ -2519,29 +2881,38 @@ enum JoinType : int { JOIN_RIGHT = 4, JOIN_SEMI = 5, JOIN_ANTI = 6, - JOIN_UNIQUE_OUTER = 7, - JOIN_UNIQUE_INNER = 8, - JoinType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - JoinType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + JOIN_RIGHT_ANTI = 7, + JOIN_UNIQUE_OUTER = 8, + JOIN_UNIQUE_INNER = 9, + JoinType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + JoinType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool JoinType_IsValid(int value); -constexpr JoinType JoinType_MIN = JOIN_TYPE_UNDEFINED; -constexpr JoinType JoinType_MAX = JOIN_UNIQUE_INNER; -constexpr int JoinType_ARRAYSIZE = JoinType_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* JoinType_descriptor(); -template -inline const std::string& JoinType_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function JoinType_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - JoinType_descriptor(), enum_t_value); -} -inline bool JoinType_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, JoinType* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - JoinType_descriptor(), name, value); +extern const uint32_t JoinType_internal_data_[]; +constexpr JoinType JoinType_MIN = static_cast(0); +constexpr JoinType JoinType_MAX = static_cast(9); +constexpr int JoinType_ARRAYSIZE = 9 + 1; +const ::google::protobuf::EnumDescriptor* +JoinType_descriptor(); +template +const std::string& JoinType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to JoinType_Name()."); + return JoinType_Name(static_cast(value)); +} +template <> +inline const std::string& JoinType_Name(JoinType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool JoinType_Parse(absl::string_view name, JoinType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + JoinType_descriptor(), name, value); } enum AggStrategy : int { AGG_STRATEGY_UNDEFINED = 0, @@ -2549,54 +2920,70 @@ enum AggStrategy : int { AGG_SORTED = 2, AGG_HASHED = 3, AGG_MIXED = 4, - AggStrategy_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - AggStrategy_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + AggStrategy_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + AggStrategy_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool AggStrategy_IsValid(int value); -constexpr AggStrategy AggStrategy_MIN = AGG_STRATEGY_UNDEFINED; -constexpr AggStrategy AggStrategy_MAX = AGG_MIXED; -constexpr int AggStrategy_ARRAYSIZE = AggStrategy_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* AggStrategy_descriptor(); -template -inline const std::string& AggStrategy_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function AggStrategy_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - AggStrategy_descriptor(), enum_t_value); -} -inline bool AggStrategy_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, AggStrategy* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - AggStrategy_descriptor(), name, value); +extern const uint32_t AggStrategy_internal_data_[]; +constexpr AggStrategy AggStrategy_MIN = static_cast(0); +constexpr AggStrategy AggStrategy_MAX = static_cast(4); +constexpr int AggStrategy_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +AggStrategy_descriptor(); +template +const std::string& AggStrategy_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to AggStrategy_Name()."); + return AggStrategy_Name(static_cast(value)); +} +template <> +inline const std::string& AggStrategy_Name(AggStrategy value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool AggStrategy_Parse(absl::string_view name, AggStrategy* value) { + return ::google::protobuf::internal::ParseNamedEnum( + AggStrategy_descriptor(), name, value); } enum AggSplit : int { AGG_SPLIT_UNDEFINED = 0, AGGSPLIT_SIMPLE = 1, AGGSPLIT_INITIAL_SERIAL = 2, AGGSPLIT_FINAL_DESERIAL = 3, - AggSplit_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - AggSplit_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + AggSplit_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + AggSplit_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool AggSplit_IsValid(int value); -constexpr AggSplit AggSplit_MIN = AGG_SPLIT_UNDEFINED; -constexpr AggSplit AggSplit_MAX = AGGSPLIT_FINAL_DESERIAL; -constexpr int AggSplit_ARRAYSIZE = AggSplit_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* AggSplit_descriptor(); -template -inline const std::string& AggSplit_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function AggSplit_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - AggSplit_descriptor(), enum_t_value); -} -inline bool AggSplit_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, AggSplit* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - AggSplit_descriptor(), name, value); +extern const uint32_t AggSplit_internal_data_[]; +constexpr AggSplit AggSplit_MIN = static_cast(0); +constexpr AggSplit AggSplit_MAX = static_cast(3); +constexpr int AggSplit_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +AggSplit_descriptor(); +template +const std::string& AggSplit_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to AggSplit_Name()."); + return AggSplit_Name(static_cast(value)); +} +template <> +inline const std::string& AggSplit_Name(AggSplit value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool AggSplit_Parse(absl::string_view name, AggSplit* value) { + return ::google::protobuf::internal::ParseNamedEnum( + AggSplit_descriptor(), name, value); } enum SetOpCmd : int { SET_OP_CMD_UNDEFINED = 0, @@ -2604,107 +2991,139 @@ enum SetOpCmd : int { SETOPCMD_INTERSECT_ALL = 2, SETOPCMD_EXCEPT = 3, SETOPCMD_EXCEPT_ALL = 4, - SetOpCmd_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - SetOpCmd_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + SetOpCmd_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + SetOpCmd_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool SetOpCmd_IsValid(int value); -constexpr SetOpCmd SetOpCmd_MIN = SET_OP_CMD_UNDEFINED; -constexpr SetOpCmd SetOpCmd_MAX = SETOPCMD_EXCEPT_ALL; -constexpr int SetOpCmd_ARRAYSIZE = SetOpCmd_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SetOpCmd_descriptor(); -template -inline const std::string& SetOpCmd_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function SetOpCmd_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - SetOpCmd_descriptor(), enum_t_value); -} -inline bool SetOpCmd_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SetOpCmd* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - SetOpCmd_descriptor(), name, value); +extern const uint32_t SetOpCmd_internal_data_[]; +constexpr SetOpCmd SetOpCmd_MIN = static_cast(0); +constexpr SetOpCmd SetOpCmd_MAX = static_cast(4); +constexpr int SetOpCmd_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +SetOpCmd_descriptor(); +template +const std::string& SetOpCmd_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to SetOpCmd_Name()."); + return SetOpCmd_Name(static_cast(value)); +} +template <> +inline const std::string& SetOpCmd_Name(SetOpCmd value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool SetOpCmd_Parse(absl::string_view name, SetOpCmd* value) { + return ::google::protobuf::internal::ParseNamedEnum( + SetOpCmd_descriptor(), name, value); } enum SetOpStrategy : int { SET_OP_STRATEGY_UNDEFINED = 0, SETOP_SORTED = 1, SETOP_HASHED = 2, - SetOpStrategy_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - SetOpStrategy_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + SetOpStrategy_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + SetOpStrategy_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool SetOpStrategy_IsValid(int value); -constexpr SetOpStrategy SetOpStrategy_MIN = SET_OP_STRATEGY_UNDEFINED; -constexpr SetOpStrategy SetOpStrategy_MAX = SETOP_HASHED; -constexpr int SetOpStrategy_ARRAYSIZE = SetOpStrategy_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SetOpStrategy_descriptor(); -template -inline const std::string& SetOpStrategy_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function SetOpStrategy_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - SetOpStrategy_descriptor(), enum_t_value); -} -inline bool SetOpStrategy_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SetOpStrategy* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - SetOpStrategy_descriptor(), name, value); +extern const uint32_t SetOpStrategy_internal_data_[]; +constexpr SetOpStrategy SetOpStrategy_MIN = static_cast(0); +constexpr SetOpStrategy SetOpStrategy_MAX = static_cast(2); +constexpr int SetOpStrategy_ARRAYSIZE = 2 + 1; +const ::google::protobuf::EnumDescriptor* +SetOpStrategy_descriptor(); +template +const std::string& SetOpStrategy_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to SetOpStrategy_Name()."); + return SetOpStrategy_Name(static_cast(value)); +} +template <> +inline const std::string& SetOpStrategy_Name(SetOpStrategy value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool SetOpStrategy_Parse(absl::string_view name, SetOpStrategy* value) { + return ::google::protobuf::internal::ParseNamedEnum( + SetOpStrategy_descriptor(), name, value); } enum OnConflictAction : int { ON_CONFLICT_ACTION_UNDEFINED = 0, ONCONFLICT_NONE = 1, ONCONFLICT_NOTHING = 2, ONCONFLICT_UPDATE = 3, - OnConflictAction_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - OnConflictAction_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + OnConflictAction_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + OnConflictAction_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool OnConflictAction_IsValid(int value); -constexpr OnConflictAction OnConflictAction_MIN = ON_CONFLICT_ACTION_UNDEFINED; -constexpr OnConflictAction OnConflictAction_MAX = ONCONFLICT_UPDATE; -constexpr int OnConflictAction_ARRAYSIZE = OnConflictAction_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* OnConflictAction_descriptor(); -template -inline const std::string& OnConflictAction_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function OnConflictAction_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - OnConflictAction_descriptor(), enum_t_value); -} -inline bool OnConflictAction_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, OnConflictAction* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - OnConflictAction_descriptor(), name, value); +extern const uint32_t OnConflictAction_internal_data_[]; +constexpr OnConflictAction OnConflictAction_MIN = static_cast(0); +constexpr OnConflictAction OnConflictAction_MAX = static_cast(3); +constexpr int OnConflictAction_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +OnConflictAction_descriptor(); +template +const std::string& OnConflictAction_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to OnConflictAction_Name()."); + return OnConflictAction_Name(static_cast(value)); +} +template <> +inline const std::string& OnConflictAction_Name(OnConflictAction value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool OnConflictAction_Parse(absl::string_view name, OnConflictAction* value) { + return ::google::protobuf::internal::ParseNamedEnum( + OnConflictAction_descriptor(), name, value); } enum LimitOption : int { LIMIT_OPTION_UNDEFINED = 0, LIMIT_OPTION_DEFAULT = 1, LIMIT_OPTION_COUNT = 2, LIMIT_OPTION_WITH_TIES = 3, - LimitOption_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - LimitOption_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + LimitOption_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + LimitOption_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool LimitOption_IsValid(int value); -constexpr LimitOption LimitOption_MIN = LIMIT_OPTION_UNDEFINED; -constexpr LimitOption LimitOption_MAX = LIMIT_OPTION_WITH_TIES; -constexpr int LimitOption_ARRAYSIZE = LimitOption_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* LimitOption_descriptor(); -template -inline const std::string& LimitOption_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function LimitOption_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - LimitOption_descriptor(), enum_t_value); -} -inline bool LimitOption_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, LimitOption* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - LimitOption_descriptor(), name, value); +extern const uint32_t LimitOption_internal_data_[]; +constexpr LimitOption LimitOption_MIN = static_cast(0); +constexpr LimitOption LimitOption_MAX = static_cast(3); +constexpr int LimitOption_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +LimitOption_descriptor(); +template +const std::string& LimitOption_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to LimitOption_Name()."); + return LimitOption_Name(static_cast(value)); +} +template <> +inline const std::string& LimitOption_Name(LimitOption value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool LimitOption_Parse(absl::string_view name, LimitOption* value) { + return ::google::protobuf::internal::ParseNamedEnum( + LimitOption_descriptor(), name, value); } enum LockClauseStrength : int { LOCK_CLAUSE_STRENGTH_UNDEFINED = 0, @@ -2713,54 +3132,70 @@ enum LockClauseStrength : int { LCS_FORSHARE = 3, LCS_FORNOKEYUPDATE = 4, LCS_FORUPDATE = 5, - LockClauseStrength_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - LockClauseStrength_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + LockClauseStrength_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + LockClauseStrength_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool LockClauseStrength_IsValid(int value); -constexpr LockClauseStrength LockClauseStrength_MIN = LOCK_CLAUSE_STRENGTH_UNDEFINED; -constexpr LockClauseStrength LockClauseStrength_MAX = LCS_FORUPDATE; -constexpr int LockClauseStrength_ARRAYSIZE = LockClauseStrength_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* LockClauseStrength_descriptor(); -template -inline const std::string& LockClauseStrength_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function LockClauseStrength_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - LockClauseStrength_descriptor(), enum_t_value); -} -inline bool LockClauseStrength_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, LockClauseStrength* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - LockClauseStrength_descriptor(), name, value); +extern const uint32_t LockClauseStrength_internal_data_[]; +constexpr LockClauseStrength LockClauseStrength_MIN = static_cast(0); +constexpr LockClauseStrength LockClauseStrength_MAX = static_cast(5); +constexpr int LockClauseStrength_ARRAYSIZE = 5 + 1; +const ::google::protobuf::EnumDescriptor* +LockClauseStrength_descriptor(); +template +const std::string& LockClauseStrength_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to LockClauseStrength_Name()."); + return LockClauseStrength_Name(static_cast(value)); +} +template <> +inline const std::string& LockClauseStrength_Name(LockClauseStrength value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool LockClauseStrength_Parse(absl::string_view name, LockClauseStrength* value) { + return ::google::protobuf::internal::ParseNamedEnum( + LockClauseStrength_descriptor(), name, value); } enum LockWaitPolicy : int { LOCK_WAIT_POLICY_UNDEFINED = 0, LockWaitBlock = 1, LockWaitSkip = 2, LockWaitError = 3, - LockWaitPolicy_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - LockWaitPolicy_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + LockWaitPolicy_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + LockWaitPolicy_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool LockWaitPolicy_IsValid(int value); -constexpr LockWaitPolicy LockWaitPolicy_MIN = LOCK_WAIT_POLICY_UNDEFINED; -constexpr LockWaitPolicy LockWaitPolicy_MAX = LockWaitError; -constexpr int LockWaitPolicy_ARRAYSIZE = LockWaitPolicy_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* LockWaitPolicy_descriptor(); -template -inline const std::string& LockWaitPolicy_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function LockWaitPolicy_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - LockWaitPolicy_descriptor(), enum_t_value); -} -inline bool LockWaitPolicy_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, LockWaitPolicy* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - LockWaitPolicy_descriptor(), name, value); +extern const uint32_t LockWaitPolicy_internal_data_[]; +constexpr LockWaitPolicy LockWaitPolicy_MIN = static_cast(0); +constexpr LockWaitPolicy LockWaitPolicy_MAX = static_cast(3); +constexpr int LockWaitPolicy_ARRAYSIZE = 3 + 1; +const ::google::protobuf::EnumDescriptor* +LockWaitPolicy_descriptor(); +template +const std::string& LockWaitPolicy_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to LockWaitPolicy_Name()."); + return LockWaitPolicy_Name(static_cast(value)); +} +template <> +inline const std::string& LockWaitPolicy_Name(LockWaitPolicy value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool LockWaitPolicy_Parse(absl::string_view name, LockWaitPolicy* value) { + return ::google::protobuf::internal::ParseNamedEnum( + LockWaitPolicy_descriptor(), name, value); } enum LockTupleMode : int { LOCK_TUPLE_MODE_UNDEFINED = 0, @@ -2768,27 +3203,35 @@ enum LockTupleMode : int { LockTupleShare = 2, LockTupleNoKeyExclusive = 3, LockTupleExclusive = 4, - LockTupleMode_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - LockTupleMode_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + LockTupleMode_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + LockTupleMode_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool LockTupleMode_IsValid(int value); -constexpr LockTupleMode LockTupleMode_MIN = LOCK_TUPLE_MODE_UNDEFINED; -constexpr LockTupleMode LockTupleMode_MAX = LockTupleExclusive; -constexpr int LockTupleMode_ARRAYSIZE = LockTupleMode_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* LockTupleMode_descriptor(); -template -inline const std::string& LockTupleMode_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function LockTupleMode_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - LockTupleMode_descriptor(), enum_t_value); -} -inline bool LockTupleMode_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, LockTupleMode* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - LockTupleMode_descriptor(), name, value); +extern const uint32_t LockTupleMode_internal_data_[]; +constexpr LockTupleMode LockTupleMode_MIN = static_cast(0); +constexpr LockTupleMode LockTupleMode_MAX = static_cast(4); +constexpr int LockTupleMode_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +LockTupleMode_descriptor(); +template +const std::string& LockTupleMode_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to LockTupleMode_Name()."); + return LockTupleMode_Name(static_cast(value)); +} +template <> +inline const std::string& LockTupleMode_Name(LockTupleMode value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool LockTupleMode_Parse(absl::string_view name, LockTupleMode* value) { + return ::google::protobuf::internal::ParseNamedEnum( + LockTupleMode_descriptor(), name, value); } enum KeywordKind : int { NO_KEYWORD = 0, @@ -2796,30 +3239,39 @@ enum KeywordKind : int { COL_NAME_KEYWORD = 2, TYPE_FUNC_NAME_KEYWORD = 3, RESERVED_KEYWORD = 4, - KeywordKind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - KeywordKind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + KeywordKind_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + KeywordKind_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool KeywordKind_IsValid(int value); -constexpr KeywordKind KeywordKind_MIN = NO_KEYWORD; -constexpr KeywordKind KeywordKind_MAX = RESERVED_KEYWORD; -constexpr int KeywordKind_ARRAYSIZE = KeywordKind_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* KeywordKind_descriptor(); -template -inline const std::string& KeywordKind_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function KeywordKind_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - KeywordKind_descriptor(), enum_t_value); -} -inline bool KeywordKind_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, KeywordKind* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - KeywordKind_descriptor(), name, value); +extern const uint32_t KeywordKind_internal_data_[]; +constexpr KeywordKind KeywordKind_MIN = static_cast(0); +constexpr KeywordKind KeywordKind_MAX = static_cast(4); +constexpr int KeywordKind_ARRAYSIZE = 4 + 1; +const ::google::protobuf::EnumDescriptor* +KeywordKind_descriptor(); +template +const std::string& KeywordKind_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to KeywordKind_Name()."); + return KeywordKind_Name(static_cast(value)); +} +template <> +inline const std::string& KeywordKind_Name(KeywordKind value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool KeywordKind_Parse(absl::string_view name, KeywordKind* value) { + return ::google::protobuf::internal::ParseNamedEnum( + KeywordKind_descriptor(), name, value); } enum Token : int { NUL = 0, + ASCII_36 = 36, ASCII_37 = 37, ASCII_40 = 40, ASCII_41 = 41, @@ -2859,520 +3311,547 @@ enum Token : int { SQL_COMMENT = 275, C_COMMENT = 276, ABORT_P = 277, - ABSOLUTE_P = 278, - ACCESS = 279, - ACTION = 280, - ADD_P = 281, - ADMIN = 282, - AFTER = 283, - AGGREGATE = 284, - ALL = 285, - ALSO = 286, - ALTER = 287, - ALWAYS = 288, - ANALYSE = 289, - ANALYZE = 290, - AND = 291, - ANY = 292, - ARRAY = 293, - AS = 294, - ASC = 295, - ASENSITIVE = 296, - ASSERTION = 297, - ASSIGNMENT = 298, - ASYMMETRIC = 299, - ATOMIC = 300, - AT = 301, - ATTACH = 302, - ATTRIBUTE = 303, - AUTHORIZATION = 304, - BACKWARD = 305, - BEFORE = 306, - BEGIN_P = 307, - BETWEEN = 308, - BIGINT = 309, - BINARY = 310, - BIT = 311, - BOOLEAN_P = 312, - BOTH = 313, - BREADTH = 314, - BY = 315, - CACHE = 316, - CALL = 317, - CALLED = 318, - CASCADE = 319, - CASCADED = 320, - CASE = 321, - CAST = 322, - CATALOG_P = 323, - CHAIN = 324, - CHAR_P = 325, - CHARACTER = 326, - CHARACTERISTICS = 327, - CHECK = 328, - CHECKPOINT = 329, - CLASS = 330, - CLOSE = 331, - CLUSTER = 332, - COALESCE = 333, - COLLATE = 334, - COLLATION = 335, - COLUMN = 336, - COLUMNS = 337, - COMMENT = 338, - COMMENTS = 339, - COMMIT = 340, - COMMITTED = 341, - COMPRESSION = 342, - CONCURRENTLY = 343, - CONFIGURATION = 344, - CONFLICT = 345, - CONNECTION = 346, - CONSTRAINT = 347, - CONSTRAINTS = 348, - CONTENT_P = 349, - CONTINUE_P = 350, - CONVERSION_P = 351, - COPY = 352, - COST = 353, - CREATE = 354, - CROSS = 355, - CSV = 356, - CUBE = 357, - CURRENT_P = 358, - CURRENT_CATALOG = 359, - CURRENT_DATE = 360, - CURRENT_ROLE = 361, - CURRENT_SCHEMA = 362, - CURRENT_TIME = 363, - CURRENT_TIMESTAMP = 364, - CURRENT_USER = 365, - CURSOR = 366, - CYCLE = 367, - DATA_P = 368, - DATABASE = 369, - DAY_P = 370, - DEALLOCATE = 371, - DEC = 372, - DECIMAL_P = 373, - DECLARE = 374, - DEFAULT = 375, - DEFAULTS = 376, - DEFERRABLE = 377, - DEFERRED = 378, - DEFINER = 379, - DELETE_P = 380, - DELIMITER = 381, - DELIMITERS = 382, - DEPENDS = 383, - DEPTH = 384, - DESC = 385, - DETACH = 386, - DICTIONARY = 387, - DISABLE_P = 388, - DISCARD = 389, - DISTINCT = 390, - DO = 391, - DOCUMENT_P = 392, - DOMAIN_P = 393, - DOUBLE_P = 394, - DROP = 395, - EACH = 396, - ELSE = 397, - ENABLE_P = 398, - ENCODING = 399, - ENCRYPTED = 400, - END_P = 401, - ENUM_P = 402, - ESCAPE = 403, - EVENT = 404, - EXCEPT = 405, - EXCLUDE = 406, - EXCLUDING = 407, - EXCLUSIVE = 408, - EXECUTE = 409, - EXISTS = 410, - EXPLAIN = 411, - EXPRESSION = 412, - EXTENSION = 413, - EXTERNAL = 414, - EXTRACT = 415, - FALSE_P = 416, - FAMILY = 417, - FETCH = 418, - FILTER = 419, - FINALIZE = 420, - FIRST_P = 421, - FLOAT_P = 422, - FOLLOWING = 423, - FOR = 424, - FORCE = 425, - FOREIGN = 426, - FORWARD = 427, - FREEZE = 428, - FROM = 429, - FULL = 430, - FUNCTION = 431, - FUNCTIONS = 432, - GENERATED = 433, - GLOBAL = 434, - GRANT = 435, - GRANTED = 436, - GREATEST = 437, - GROUP_P = 438, - GROUPING = 439, - GROUPS = 440, - HANDLER = 441, - HAVING = 442, - HEADER_P = 443, - HOLD = 444, - HOUR_P = 445, - IDENTITY_P = 446, - IF_P = 447, - ILIKE = 448, - IMMEDIATE = 449, - IMMUTABLE = 450, - IMPLICIT_P = 451, - IMPORT_P = 452, - IN_P = 453, - INCLUDE = 454, - INCLUDING = 455, - INCREMENT = 456, - INDEX = 457, - INDEXES = 458, - INHERIT = 459, - INHERITS = 460, - INITIALLY = 461, - INLINE_P = 462, - INNER_P = 463, - INOUT = 464, - INPUT_P = 465, - INSENSITIVE = 466, - INSERT = 467, - INSTEAD = 468, - INT_P = 469, - INTEGER = 470, - INTERSECT = 471, - INTERVAL = 472, - INTO = 473, - INVOKER = 474, - IS = 475, - ISNULL = 476, - ISOLATION = 477, - JOIN = 478, - KEY = 479, - LABEL = 480, - LANGUAGE = 481, - LARGE_P = 482, - LAST_P = 483, - LATERAL_P = 484, - LEADING = 485, - LEAKPROOF = 486, - LEAST = 487, - LEFT = 488, - LEVEL = 489, - LIKE = 490, - LIMIT = 491, - LISTEN = 492, - LOAD = 493, - LOCAL = 494, - LOCALTIME = 495, - LOCALTIMESTAMP = 496, - LOCATION = 497, - LOCK_P = 498, - LOCKED = 499, - LOGGED = 500, - MAPPING = 501, - MATCH = 502, - MATCHED = 503, - MATERIALIZED = 504, - MAXVALUE = 505, - MERGE = 506, - METHOD = 507, - MINUTE_P = 508, - MINVALUE = 509, - MODE = 510, - MONTH_P = 511, - MOVE = 512, - NAME_P = 513, - NAMES = 514, - NATIONAL = 515, - NATURAL = 516, - NCHAR = 517, - NEW = 518, - NEXT = 519, - NFC = 520, - NFD = 521, - NFKC = 522, - NFKD = 523, - NO = 524, - NONE = 525, - NORMALIZE = 526, - NORMALIZED = 527, - NOT = 528, - NOTHING = 529, - NOTIFY = 530, - NOTNULL = 531, - NOWAIT = 532, - NULL_P = 533, - NULLIF = 534, - NULLS_P = 535, - NUMERIC = 536, - OBJECT_P = 537, - OF = 538, - OFF = 539, - OFFSET = 540, - OIDS = 541, - OLD = 542, - ON = 543, - ONLY = 544, - OPERATOR = 545, - OPTION = 546, - OPTIONS = 547, - OR = 548, - ORDER = 549, - ORDINALITY = 550, - OTHERS = 551, - OUT_P = 552, - OUTER_P = 553, - OVER = 554, - OVERLAPS = 555, - OVERLAY = 556, - OVERRIDING = 557, - OWNED = 558, - OWNER = 559, - PARALLEL = 560, - PARAMETER = 561, - PARSER = 562, - PARTIAL = 563, - PARTITION = 564, - PASSING = 565, - PASSWORD = 566, - PLACING = 567, - PLANS = 568, - POLICY = 569, - POSITION = 570, - PRECEDING = 571, - PRECISION = 572, - PRESERVE = 573, - PREPARE = 574, - PREPARED = 575, - PRIMARY = 576, - PRIOR = 577, - PRIVILEGES = 578, - PROCEDURAL = 579, - PROCEDURE = 580, - PROCEDURES = 581, - PROGRAM = 582, - PUBLICATION = 583, - QUOTE = 584, - RANGE = 585, - READ = 586, - REAL = 587, - REASSIGN = 588, - RECHECK = 589, - RECURSIVE = 590, - REF_P = 591, - REFERENCES = 592, - REFERENCING = 593, - REFRESH = 594, - REINDEX = 595, - RELATIVE_P = 596, - RELEASE = 597, - RENAME = 598, - REPEATABLE = 599, - REPLACE = 600, - REPLICA = 601, - RESET = 602, - RESTART = 603, - RESTRICT = 604, - RETURN = 605, - RETURNING = 606, - RETURNS = 607, - REVOKE = 608, - RIGHT = 609, - ROLE = 610, - ROLLBACK = 611, - ROLLUP = 612, - ROUTINE = 613, - ROUTINES = 614, - ROW = 615, - ROWS = 616, - RULE = 617, - SAVEPOINT = 618, - SCHEMA = 619, - SCHEMAS = 620, - SCROLL = 621, - SEARCH = 622, - SECOND_P = 623, - SECURITY = 624, - SELECT = 625, - SEQUENCE = 626, - SEQUENCES = 627, - SERIALIZABLE = 628, - SERVER = 629, - SESSION = 630, - SESSION_USER = 631, - SET = 632, - SETS = 633, - SETOF = 634, - SHARE = 635, - SHOW = 636, - SIMILAR = 637, - SIMPLE = 638, - SKIP = 639, - SMALLINT = 640, - SNAPSHOT = 641, - SOME = 642, - SQL_P = 643, - STABLE = 644, - STANDALONE_P = 645, - START = 646, - STATEMENT = 647, - STATISTICS = 648, - STDIN = 649, - STDOUT = 650, - STORAGE = 651, - STORED = 652, - STRICT_P = 653, - STRIP_P = 654, - SUBSCRIPTION = 655, - SUBSTRING = 656, - SUPPORT = 657, - SYMMETRIC = 658, - SYSID = 659, - SYSTEM_P = 660, - TABLE = 661, - TABLES = 662, - TABLESAMPLE = 663, - TABLESPACE = 664, - TEMP = 665, - TEMPLATE = 666, - TEMPORARY = 667, - TEXT_P = 668, - THEN = 669, - TIES = 670, - TIME = 671, - TIMESTAMP = 672, - TO = 673, - TRAILING = 674, - TRANSACTION = 675, - TRANSFORM = 676, - TREAT = 677, - TRIGGER = 678, - TRIM = 679, - TRUE_P = 680, - TRUNCATE = 681, - TRUSTED = 682, - TYPE_P = 683, - TYPES_P = 684, - UESCAPE = 685, - UNBOUNDED = 686, - UNCOMMITTED = 687, - UNENCRYPTED = 688, - UNION = 689, - UNIQUE = 690, - UNKNOWN = 691, - UNLISTEN = 692, - UNLOGGED = 693, - UNTIL = 694, - UPDATE = 695, - USER = 696, - USING = 697, - VACUUM = 698, - VALID = 699, - VALIDATE = 700, - VALIDATOR = 701, - VALUE_P = 702, - VALUES = 703, - VARCHAR = 704, - VARIADIC = 705, - VARYING = 706, - VERBOSE = 707, - VERSION_P = 708, - VIEW = 709, - VIEWS = 710, - VOLATILE = 711, - WHEN = 712, - WHERE = 713, - WHITESPACE_P = 714, - WINDOW = 715, - WITH = 716, - WITHIN = 717, - WITHOUT = 718, - WORK = 719, - WRAPPER = 720, - WRITE = 721, - XML_P = 722, - XMLATTRIBUTES = 723, - XMLCONCAT = 724, - XMLELEMENT = 725, - XMLEXISTS = 726, - XMLFOREST = 727, - XMLNAMESPACES = 728, - XMLPARSE = 729, - XMLPI = 730, - XMLROOT = 731, - XMLSERIALIZE = 732, - XMLTABLE = 733, - YEAR_P = 734, - YES_P = 735, - ZONE = 736, - NOT_LA = 737, - NULLS_LA = 738, - WITH_LA = 739, - MODE_TYPE_NAME = 740, - MODE_PLPGSQL_EXPR = 741, - MODE_PLPGSQL_ASSIGN1 = 742, - MODE_PLPGSQL_ASSIGN2 = 743, - MODE_PLPGSQL_ASSIGN3 = 744, - UMINUS = 745, - Token_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - Token_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() + ABSENT = 278, + ABSOLUTE_P = 279, + ACCESS = 280, + ACTION = 281, + ADD_P = 282, + ADMIN = 283, + AFTER = 284, + AGGREGATE = 285, + ALL = 286, + ALSO = 287, + ALTER = 288, + ALWAYS = 289, + ANALYSE = 290, + ANALYZE = 291, + AND = 292, + ANY = 293, + ARRAY = 294, + AS = 295, + ASC = 296, + ASENSITIVE = 297, + ASSERTION = 298, + ASSIGNMENT = 299, + ASYMMETRIC = 300, + ATOMIC = 301, + AT = 302, + ATTACH = 303, + ATTRIBUTE = 304, + AUTHORIZATION = 305, + BACKWARD = 306, + BEFORE = 307, + BEGIN_P = 308, + BETWEEN = 309, + BIGINT = 310, + BINARY = 311, + BIT = 312, + BOOLEAN_P = 313, + BOTH = 314, + BREADTH = 315, + BY = 316, + CACHE = 317, + CALL = 318, + CALLED = 319, + CASCADE = 320, + CASCADED = 321, + CASE = 322, + CAST = 323, + CATALOG_P = 324, + CHAIN = 325, + CHAR_P = 326, + CHARACTER = 327, + CHARACTERISTICS = 328, + CHECK = 329, + CHECKPOINT = 330, + CLASS = 331, + CLOSE = 332, + CLUSTER = 333, + COALESCE = 334, + COLLATE = 335, + COLLATION = 336, + COLUMN = 337, + COLUMNS = 338, + COMMENT = 339, + COMMENTS = 340, + COMMIT = 341, + COMMITTED = 342, + COMPRESSION = 343, + CONCURRENTLY = 344, + CONFIGURATION = 345, + CONFLICT = 346, + CONNECTION = 347, + CONSTRAINT = 348, + CONSTRAINTS = 349, + CONTENT_P = 350, + CONTINUE_P = 351, + CONVERSION_P = 352, + COPY = 353, + COST = 354, + CREATE = 355, + CROSS = 356, + CSV = 357, + CUBE = 358, + CURRENT_P = 359, + CURRENT_CATALOG = 360, + CURRENT_DATE = 361, + CURRENT_ROLE = 362, + CURRENT_SCHEMA = 363, + CURRENT_TIME = 364, + CURRENT_TIMESTAMP = 365, + CURRENT_USER = 366, + CURSOR = 367, + CYCLE = 368, + DATA_P = 369, + DATABASE = 370, + DAY_P = 371, + DEALLOCATE = 372, + DEC = 373, + DECIMAL_P = 374, + DECLARE = 375, + DEFAULT = 376, + DEFAULTS = 377, + DEFERRABLE = 378, + DEFERRED = 379, + DEFINER = 380, + DELETE_P = 381, + DELIMITER = 382, + DELIMITERS = 383, + DEPENDS = 384, + DEPTH = 385, + DESC = 386, + DETACH = 387, + DICTIONARY = 388, + DISABLE_P = 389, + DISCARD = 390, + DISTINCT = 391, + DO = 392, + DOCUMENT_P = 393, + DOMAIN_P = 394, + DOUBLE_P = 395, + DROP = 396, + EACH = 397, + ELSE = 398, + ENABLE_P = 399, + ENCODING = 400, + ENCRYPTED = 401, + END_P = 402, + ENUM_P = 403, + ESCAPE = 404, + EVENT = 405, + EXCEPT = 406, + EXCLUDE = 407, + EXCLUDING = 408, + EXCLUSIVE = 409, + EXECUTE = 410, + EXISTS = 411, + EXPLAIN = 412, + EXPRESSION = 413, + EXTENSION = 414, + EXTERNAL = 415, + EXTRACT = 416, + FALSE_P = 417, + FAMILY = 418, + FETCH = 419, + FILTER = 420, + FINALIZE = 421, + FIRST_P = 422, + FLOAT_P = 423, + FOLLOWING = 424, + FOR = 425, + FORCE = 426, + FOREIGN = 427, + FORMAT = 428, + FORWARD = 429, + FREEZE = 430, + FROM = 431, + FULL = 432, + FUNCTION = 433, + FUNCTIONS = 434, + GENERATED = 435, + GLOBAL = 436, + GRANT = 437, + GRANTED = 438, + GREATEST = 439, + GROUP_P = 440, + GROUPING = 441, + GROUPS = 442, + HANDLER = 443, + HAVING = 444, + HEADER_P = 445, + HOLD = 446, + HOUR_P = 447, + IDENTITY_P = 448, + IF_P = 449, + ILIKE = 450, + IMMEDIATE = 451, + IMMUTABLE = 452, + IMPLICIT_P = 453, + IMPORT_P = 454, + IN_P = 455, + INCLUDE = 456, + INCLUDING = 457, + INCREMENT = 458, + INDENT = 459, + INDEX = 460, + INDEXES = 461, + INHERIT = 462, + INHERITS = 463, + INITIALLY = 464, + INLINE_P = 465, + INNER_P = 466, + INOUT = 467, + INPUT_P = 468, + INSENSITIVE = 469, + INSERT = 470, + INSTEAD = 471, + INT_P = 472, + INTEGER = 473, + INTERSECT = 474, + INTERVAL = 475, + INTO = 476, + INVOKER = 477, + IS = 478, + ISNULL = 479, + ISOLATION = 480, + JOIN = 481, + JSON = 482, + JSON_ARRAY = 483, + JSON_ARRAYAGG = 484, + JSON_OBJECT = 485, + JSON_OBJECTAGG = 486, + KEY = 487, + KEYS = 488, + LABEL = 489, + LANGUAGE = 490, + LARGE_P = 491, + LAST_P = 492, + LATERAL_P = 493, + LEADING = 494, + LEAKPROOF = 495, + LEAST = 496, + LEFT = 497, + LEVEL = 498, + LIKE = 499, + LIMIT = 500, + LISTEN = 501, + LOAD = 502, + LOCAL = 503, + LOCALTIME = 504, + LOCALTIMESTAMP = 505, + LOCATION = 506, + LOCK_P = 507, + LOCKED = 508, + LOGGED = 509, + MAPPING = 510, + MATCH = 511, + MATCHED = 512, + MATERIALIZED = 513, + MAXVALUE = 514, + MERGE = 515, + METHOD = 516, + MINUTE_P = 517, + MINVALUE = 518, + MODE = 519, + MONTH_P = 520, + MOVE = 521, + NAME_P = 522, + NAMES = 523, + NATIONAL = 524, + NATURAL = 525, + NCHAR = 526, + NEW = 527, + NEXT = 528, + NFC = 529, + NFD = 530, + NFKC = 531, + NFKD = 532, + NO = 533, + NONE = 534, + NORMALIZE = 535, + NORMALIZED = 536, + NOT = 537, + NOTHING = 538, + NOTIFY = 539, + NOTNULL = 540, + NOWAIT = 541, + NULL_P = 542, + NULLIF = 543, + NULLS_P = 544, + NUMERIC = 545, + OBJECT_P = 546, + OF = 547, + OFF = 548, + OFFSET = 549, + OIDS = 550, + OLD = 551, + ON = 552, + ONLY = 553, + OPERATOR = 554, + OPTION = 555, + OPTIONS = 556, + OR = 557, + ORDER = 558, + ORDINALITY = 559, + OTHERS = 560, + OUT_P = 561, + OUTER_P = 562, + OVER = 563, + OVERLAPS = 564, + OVERLAY = 565, + OVERRIDING = 566, + OWNED = 567, + OWNER = 568, + PARALLEL = 569, + PARAMETER = 570, + PARSER = 571, + PARTIAL = 572, + PARTITION = 573, + PASSING = 574, + PASSWORD = 575, + PLACING = 576, + PLANS = 577, + POLICY = 578, + POSITION = 579, + PRECEDING = 580, + PRECISION = 581, + PRESERVE = 582, + PREPARE = 583, + PREPARED = 584, + PRIMARY = 585, + PRIOR = 586, + PRIVILEGES = 587, + PROCEDURAL = 588, + PROCEDURE = 589, + PROCEDURES = 590, + PROGRAM = 591, + PUBLICATION = 592, + QUOTE = 593, + RANGE = 594, + READ = 595, + REAL = 596, + REASSIGN = 597, + RECHECK = 598, + RECURSIVE = 599, + REF_P = 600, + REFERENCES = 601, + REFERENCING = 602, + REFRESH = 603, + REINDEX = 604, + RELATIVE_P = 605, + RELEASE = 606, + RENAME = 607, + REPEATABLE = 608, + REPLACE = 609, + REPLICA = 610, + RESET = 611, + RESTART = 612, + RESTRICT = 613, + RETURN = 614, + RETURNING = 615, + RETURNS = 616, + REVOKE = 617, + RIGHT = 618, + ROLE = 619, + ROLLBACK = 620, + ROLLUP = 621, + ROUTINE = 622, + ROUTINES = 623, + ROW = 624, + ROWS = 625, + RULE = 626, + SAVEPOINT = 627, + SCALAR = 628, + SCHEMA = 629, + SCHEMAS = 630, + SCROLL = 631, + SEARCH = 632, + SECOND_P = 633, + SECURITY = 634, + SELECT = 635, + SEQUENCE = 636, + SEQUENCES = 637, + SERIALIZABLE = 638, + SERVER = 639, + SESSION = 640, + SESSION_USER = 641, + SET = 642, + SETS = 643, + SETOF = 644, + SHARE = 645, + SHOW = 646, + SIMILAR = 647, + SIMPLE = 648, + SKIP = 649, + SMALLINT = 650, + SNAPSHOT = 651, + SOME = 652, + SQL_P = 653, + STABLE = 654, + STANDALONE_P = 655, + START = 656, + STATEMENT = 657, + STATISTICS = 658, + STDIN = 659, + STDOUT = 660, + STORAGE = 661, + STORED = 662, + STRICT_P = 663, + STRIP_P = 664, + SUBSCRIPTION = 665, + SUBSTRING = 666, + SUPPORT = 667, + SYMMETRIC = 668, + SYSID = 669, + SYSTEM_P = 670, + SYSTEM_USER = 671, + TABLE = 672, + TABLES = 673, + TABLESAMPLE = 674, + TABLESPACE = 675, + TEMP = 676, + TEMPLATE = 677, + TEMPORARY = 678, + TEXT_P = 679, + THEN = 680, + TIES = 681, + TIME = 682, + TIMESTAMP = 683, + TO = 684, + TRAILING = 685, + TRANSACTION = 686, + TRANSFORM = 687, + TREAT = 688, + TRIGGER = 689, + TRIM = 690, + TRUE_P = 691, + TRUNCATE = 692, + TRUSTED = 693, + TYPE_P = 694, + TYPES_P = 695, + UESCAPE = 696, + UNBOUNDED = 697, + UNCOMMITTED = 698, + UNENCRYPTED = 699, + UNION = 700, + UNIQUE = 701, + UNKNOWN = 702, + UNLISTEN = 703, + UNLOGGED = 704, + UNTIL = 705, + UPDATE = 706, + USER = 707, + USING = 708, + VACUUM = 709, + VALID = 710, + VALIDATE = 711, + VALIDATOR = 712, + VALUE_P = 713, + VALUES = 714, + VARCHAR = 715, + VARIADIC = 716, + VARYING = 717, + VERBOSE = 718, + VERSION_P = 719, + VIEW = 720, + VIEWS = 721, + VOLATILE = 722, + WHEN = 723, + WHERE = 724, + WHITESPACE_P = 725, + WINDOW = 726, + WITH = 727, + WITHIN = 728, + WITHOUT = 729, + WORK = 730, + WRAPPER = 731, + WRITE = 732, + XML_P = 733, + XMLATTRIBUTES = 734, + XMLCONCAT = 735, + XMLELEMENT = 736, + XMLEXISTS = 737, + XMLFOREST = 738, + XMLNAMESPACES = 739, + XMLPARSE = 740, + XMLPI = 741, + XMLROOT = 742, + XMLSERIALIZE = 743, + XMLTABLE = 744, + YEAR_P = 745, + YES_P = 746, + ZONE = 747, + FORMAT_LA = 748, + NOT_LA = 749, + NULLS_LA = 750, + WITH_LA = 751, + WITHOUT_LA = 752, + MODE_TYPE_NAME = 753, + MODE_PLPGSQL_EXPR = 754, + MODE_PLPGSQL_ASSIGN1 = 755, + MODE_PLPGSQL_ASSIGN2 = 756, + MODE_PLPGSQL_ASSIGN3 = 757, + UMINUS = 758, + Token_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + Token_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), }; + bool Token_IsValid(int value); -constexpr Token Token_MIN = NUL; -constexpr Token Token_MAX = UMINUS; -constexpr int Token_ARRAYSIZE = Token_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Token_descriptor(); -template -inline const std::string& Token_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function Token_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - Token_descriptor(), enum_t_value); -} -inline bool Token_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Token* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - Token_descriptor(), name, value); +extern const uint32_t Token_internal_data_[]; +constexpr Token Token_MIN = static_cast(0); +constexpr Token Token_MAX = static_cast(758); +constexpr int Token_ARRAYSIZE = 758 + 1; +const ::google::protobuf::EnumDescriptor* +Token_descriptor(); +template +const std::string& Token_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to Token_Name()."); + return Token_Name(static_cast(value)); +} +template <> +inline const std::string& Token_Name(Token value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool Token_Parse(absl::string_view name, Token* value) { + return ::google::protobuf::internal::ParseNamedEnum( + Token_descriptor(), name, value); } + // =================================================================== -class ParseResult final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ParseResult) */ { + +// ------------------------------------------------------------------- + +class VariableShowStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.VariableShowStmt) */ { public: - inline ParseResult() : ParseResult(nullptr) {} - ~ParseResult() override; - explicit PROTOBUF_CONSTEXPR ParseResult(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline VariableShowStmt() : VariableShowStmt(nullptr) {} + ~VariableShowStmt() override; + template + explicit PROTOBUF_CONSTEXPR VariableShowStmt(::google::protobuf::internal::ConstantInitialized); - ParseResult(const ParseResult& from); - ParseResult(ParseResult&& from) noexcept - : ParseResult() { + inline VariableShowStmt(const VariableShowStmt& from) + : VariableShowStmt(nullptr, from) {} + VariableShowStmt(VariableShowStmt&& from) noexcept + : VariableShowStmt() { *this = ::std::move(from); } - inline ParseResult& operator=(const ParseResult& from) { + inline VariableShowStmt& operator=(const VariableShowStmt& from) { CopyFrom(from); return *this; } - inline ParseResult& operator=(ParseResult&& from) noexcept { + inline VariableShowStmt& operator=(VariableShowStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -3382,165 +3861,178 @@ class ParseResult final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ParseResult& default_instance() { + static const VariableShowStmt& default_instance() { return *internal_default_instance(); } - static inline const ParseResult* internal_default_instance() { - return reinterpret_cast( - &_ParseResult_default_instance_); + static inline const VariableShowStmt* internal_default_instance() { + return reinterpret_cast( + &_VariableShowStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 0; + 148; - friend void swap(ParseResult& a, ParseResult& b) { + friend void swap(VariableShowStmt& a, VariableShowStmt& b) { a.Swap(&b); } - inline void Swap(ParseResult* other) { + inline void Swap(VariableShowStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ParseResult* other) { + void UnsafeArenaSwap(VariableShowStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ParseResult* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + VariableShowStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ParseResult& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ParseResult& from) { - ParseResult::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const VariableShowStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const VariableShowStmt& from) { + VariableShowStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ParseResult* other); + void InternalSwap(VariableShowStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ParseResult"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.VariableShowStmt"; } protected: - explicit ParseResult(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit VariableShowStmt(::google::protobuf::Arena* arena); + VariableShowStmt(::google::protobuf::Arena* arena, const VariableShowStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kStmtsFieldNumber = 2, - kVersionFieldNumber = 1, + kNameFieldNumber = 1, }; - // repeated .pg_query.RawStmt stmts = 2; - int stmts_size() const; - private: - int _internal_stmts_size() const; - public: - void clear_stmts(); - ::pg_query::RawStmt* mutable_stmts(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::RawStmt >* - mutable_stmts(); - private: - const ::pg_query::RawStmt& _internal_stmts(int index) const; - ::pg_query::RawStmt* _internal_add_stmts(); - public: - const ::pg_query::RawStmt& stmts(int index) const; - ::pg_query::RawStmt* add_stmts(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::RawStmt >& - stmts() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // int32 version = 1; - void clear_version(); - int32_t version() const; - void set_version(int32_t value); private: - int32_t _internal_version() const; - void _internal_set_version(int32_t value); - public: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); - // @@protoc_insertion_point(class_scope:pg_query.ParseResult) + public: + // @@protoc_insertion_point(class_scope:pg_query.VariableShowStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 38, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::RawStmt > stmts_; - int32_t version_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr name_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ScanResult final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ScanResult) */ { +class UnlistenStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.UnlistenStmt) */ { public: - inline ScanResult() : ScanResult(nullptr) {} - ~ScanResult() override; - explicit PROTOBUF_CONSTEXPR ScanResult(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline UnlistenStmt() : UnlistenStmt(nullptr) {} + ~UnlistenStmt() override; + template + explicit PROTOBUF_CONSTEXPR UnlistenStmt(::google::protobuf::internal::ConstantInitialized); - ScanResult(const ScanResult& from); - ScanResult(ScanResult&& from) noexcept - : ScanResult() { + inline UnlistenStmt(const UnlistenStmt& from) + : UnlistenStmt(nullptr, from) {} + UnlistenStmt(UnlistenStmt&& from) noexcept + : UnlistenStmt() { *this = ::std::move(from); } - inline ScanResult& operator=(const ScanResult& from) { + inline UnlistenStmt& operator=(const UnlistenStmt& from) { CopyFrom(from); return *this; } - inline ScanResult& operator=(ScanResult&& from) noexcept { + inline UnlistenStmt& operator=(UnlistenStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -3550,165 +4042,178 @@ class ScanResult final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ScanResult& default_instance() { + static const UnlistenStmt& default_instance() { return *internal_default_instance(); } - static inline const ScanResult* internal_default_instance() { - return reinterpret_cast( - &_ScanResult_default_instance_); + static inline const UnlistenStmt* internal_default_instance() { + return reinterpret_cast( + &_UnlistenStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 1; + 213; - friend void swap(ScanResult& a, ScanResult& b) { + friend void swap(UnlistenStmt& a, UnlistenStmt& b) { a.Swap(&b); } - inline void Swap(ScanResult* other) { + inline void Swap(UnlistenStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ScanResult* other) { + void UnsafeArenaSwap(UnlistenStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ScanResult* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + UnlistenStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ScanResult& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ScanResult& from) { - ScanResult::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const UnlistenStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const UnlistenStmt& from) { + UnlistenStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ScanResult* other); + void InternalSwap(UnlistenStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ScanResult"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.UnlistenStmt"; } protected: - explicit ScanResult(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit UnlistenStmt(::google::protobuf::Arena* arena); + UnlistenStmt(::google::protobuf::Arena* arena, const UnlistenStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kTokensFieldNumber = 2, - kVersionFieldNumber = 1, + kConditionnameFieldNumber = 1, }; - // repeated .pg_query.ScanToken tokens = 2; - int tokens_size() const; - private: - int _internal_tokens_size() const; - public: - void clear_tokens(); - ::pg_query::ScanToken* mutable_tokens(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::ScanToken >* - mutable_tokens(); - private: - const ::pg_query::ScanToken& _internal_tokens(int index) const; - ::pg_query::ScanToken* _internal_add_tokens(); - public: - const ::pg_query::ScanToken& tokens(int index) const; - ::pg_query::ScanToken* add_tokens(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::ScanToken >& - tokens() const; + // string conditionname = 1 [json_name = "conditionname"]; + void clear_conditionname() ; + const std::string& conditionname() const; + template + void set_conditionname(Arg_&& arg, Args_... args); + std::string* mutable_conditionname(); + PROTOBUF_NODISCARD std::string* release_conditionname(); + void set_allocated_conditionname(std::string* value); - // int32 version = 1; - void clear_version(); - int32_t version() const; - void set_version(int32_t value); private: - int32_t _internal_version() const; - void _internal_set_version(int32_t value); - public: + const std::string& _internal_conditionname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_conditionname( + const std::string& value); + std::string* _internal_mutable_conditionname(); - // @@protoc_insertion_point(class_scope:pg_query.ScanResult) + public: + // @@protoc_insertion_point(class_scope:pg_query.UnlistenStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 43, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::ScanToken > tokens_; - int32_t version_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr conditionname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Node final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Node) */ { +class TriggerTransition final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.TriggerTransition) */ { public: - inline Node() : Node(nullptr) {} - ~Node() override; - explicit PROTOBUF_CONSTEXPR Node(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline TriggerTransition() : TriggerTransition(nullptr) {} + ~TriggerTransition() override; + template + explicit PROTOBUF_CONSTEXPR TriggerTransition(::google::protobuf::internal::ConstantInitialized); - Node(const Node& from); - Node(Node&& from) noexcept - : Node() { + inline TriggerTransition(const TriggerTransition& from) + : TriggerTransition(nullptr, from) {} + TriggerTransition(TriggerTransition&& from) noexcept + : TriggerTransition() { *this = ::std::move(from); } - inline Node& operator=(const Node& from) { + inline TriggerTransition& operator=(const TriggerTransition& from) { CopyFrom(from); return *this; } - inline Node& operator=(Node&& from) noexcept { + inline TriggerTransition& operator=(TriggerTransition&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -3718,5385 +4223,8161 @@ class Node final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Node& default_instance() { + static const TriggerTransition& default_instance() { return *internal_default_instance(); } - enum NodeCase { - kAlias = 1, - kRangeVar = 2, - kTableFunc = 3, - kVar = 4, - kParam = 5, - kAggref = 6, - kGroupingFunc = 7, - kWindowFunc = 8, - kSubscriptingRef = 9, - kFuncExpr = 10, - kNamedArgExpr = 11, - kOpExpr = 12, - kDistinctExpr = 13, - kNullIfExpr = 14, - kScalarArrayOpExpr = 15, - kBoolExpr = 16, - kSubLink = 17, - kSubPlan = 18, - kAlternativeSubPlan = 19, - kFieldSelect = 20, - kFieldStore = 21, - kRelabelType = 22, - kCoerceViaIo = 23, - kArrayCoerceExpr = 24, - kConvertRowtypeExpr = 25, - kCollateExpr = 26, - kCaseExpr = 27, - kCaseWhen = 28, - kCaseTestExpr = 29, - kArrayExpr = 30, - kRowExpr = 31, - kRowCompareExpr = 32, - kCoalesceExpr = 33, - kMinMaxExpr = 34, - kSqlvalueFunction = 35, - kXmlExpr = 36, - kNullTest = 37, - kBooleanTest = 38, - kCoerceToDomain = 39, - kCoerceToDomainValue = 40, - kSetToDefault = 41, - kCurrentOfExpr = 42, - kNextValueExpr = 43, - kInferenceElem = 44, - kTargetEntry = 45, - kRangeTblRef = 46, - kJoinExpr = 47, - kFromExpr = 48, - kOnConflictExpr = 49, - kIntoClause = 50, - kMergeAction = 51, - kRawStmt = 52, - kQuery = 53, - kInsertStmt = 54, - kDeleteStmt = 55, - kUpdateStmt = 56, - kMergeStmt = 57, - kSelectStmt = 58, - kReturnStmt = 59, - kPlassignStmt = 60, - kAlterTableStmt = 61, - kAlterTableCmd = 62, - kAlterDomainStmt = 63, - kSetOperationStmt = 64, - kGrantStmt = 65, - kGrantRoleStmt = 66, - kAlterDefaultPrivilegesStmt = 67, - kClosePortalStmt = 68, - kClusterStmt = 69, - kCopyStmt = 70, - kCreateStmt = 71, - kDefineStmt = 72, - kDropStmt = 73, - kTruncateStmt = 74, - kCommentStmt = 75, - kFetchStmt = 76, - kIndexStmt = 77, - kCreateFunctionStmt = 78, - kAlterFunctionStmt = 79, - kDoStmt = 80, - kRenameStmt = 81, - kRuleStmt = 82, - kNotifyStmt = 83, - kListenStmt = 84, - kUnlistenStmt = 85, - kTransactionStmt = 86, - kViewStmt = 87, - kLoadStmt = 88, - kCreateDomainStmt = 89, - kCreatedbStmt = 90, - kDropdbStmt = 91, - kVacuumStmt = 92, - kExplainStmt = 93, - kCreateTableAsStmt = 94, - kCreateSeqStmt = 95, - kAlterSeqStmt = 96, - kVariableSetStmt = 97, - kVariableShowStmt = 98, - kDiscardStmt = 99, - kCreateTrigStmt = 100, - kCreatePlangStmt = 101, - kCreateRoleStmt = 102, - kAlterRoleStmt = 103, - kDropRoleStmt = 104, - kLockStmt = 105, - kConstraintsSetStmt = 106, - kReindexStmt = 107, - kCheckPointStmt = 108, - kCreateSchemaStmt = 109, - kAlterDatabaseStmt = 110, - kAlterDatabaseRefreshCollStmt = 111, - kAlterDatabaseSetStmt = 112, - kAlterRoleSetStmt = 113, - kCreateConversionStmt = 114, - kCreateCastStmt = 115, - kCreateOpClassStmt = 116, - kCreateOpFamilyStmt = 117, - kAlterOpFamilyStmt = 118, - kPrepareStmt = 119, - kExecuteStmt = 120, - kDeallocateStmt = 121, - kDeclareCursorStmt = 122, - kCreateTableSpaceStmt = 123, - kDropTableSpaceStmt = 124, - kAlterObjectDependsStmt = 125, - kAlterObjectSchemaStmt = 126, - kAlterOwnerStmt = 127, - kAlterOperatorStmt = 128, - kAlterTypeStmt = 129, - kDropOwnedStmt = 130, - kReassignOwnedStmt = 131, - kCompositeTypeStmt = 132, - kCreateEnumStmt = 133, - kCreateRangeStmt = 134, - kAlterEnumStmt = 135, - kAlterTsdictionaryStmt = 136, - kAlterTsconfigurationStmt = 137, - kCreateFdwStmt = 138, - kAlterFdwStmt = 139, - kCreateForeignServerStmt = 140, - kAlterForeignServerStmt = 141, - kCreateUserMappingStmt = 142, - kAlterUserMappingStmt = 143, - kDropUserMappingStmt = 144, - kAlterTableSpaceOptionsStmt = 145, - kAlterTableMoveAllStmt = 146, - kSecLabelStmt = 147, - kCreateForeignTableStmt = 148, - kImportForeignSchemaStmt = 149, - kCreateExtensionStmt = 150, - kAlterExtensionStmt = 151, - kAlterExtensionContentsStmt = 152, - kCreateEventTrigStmt = 153, - kAlterEventTrigStmt = 154, - kRefreshMatViewStmt = 155, - kReplicaIdentityStmt = 156, - kAlterSystemStmt = 157, - kCreatePolicyStmt = 158, - kAlterPolicyStmt = 159, - kCreateTransformStmt = 160, - kCreateAmStmt = 161, - kCreatePublicationStmt = 162, - kAlterPublicationStmt = 163, - kCreateSubscriptionStmt = 164, - kAlterSubscriptionStmt = 165, - kDropSubscriptionStmt = 166, - kCreateStatsStmt = 167, - kAlterCollationStmt = 168, - kCallStmt = 169, - kAlterStatsStmt = 170, - kAExpr = 171, - kColumnRef = 172, - kParamRef = 173, - kFuncCall = 174, - kAStar = 175, - kAIndices = 176, - kAIndirection = 177, - kAArrayExpr = 178, - kResTarget = 179, - kMultiAssignRef = 180, - kTypeCast = 181, - kCollateClause = 182, - kSortBy = 183, - kWindowDef = 184, - kRangeSubselect = 185, - kRangeFunction = 186, - kRangeTableSample = 187, - kRangeTableFunc = 188, - kRangeTableFuncCol = 189, - kTypeName = 190, - kColumnDef = 191, - kIndexElem = 192, - kStatsElem = 193, - kConstraint = 194, - kDefElem = 195, - kRangeTblEntry = 196, - kRangeTblFunction = 197, - kTableSampleClause = 198, - kWithCheckOption = 199, - kSortGroupClause = 200, - kGroupingSet = 201, - kWindowClause = 202, - kObjectWithArgs = 203, - kAccessPriv = 204, - kCreateOpClassItem = 205, - kTableLikeClause = 206, - kFunctionParameter = 207, - kLockingClause = 208, - kRowMarkClause = 209, - kXmlSerialize = 210, - kWithClause = 211, - kInferClause = 212, - kOnConflictClause = 213, - kCtesearchClause = 214, - kCtecycleClause = 215, - kCommonTableExpr = 216, - kMergeWhenClause = 217, - kRoleSpec = 218, - kTriggerTransition = 219, - kPartitionElem = 220, - kPartitionSpec = 221, - kPartitionBoundSpec = 222, - kPartitionRangeDatum = 223, - kPartitionCmd = 224, - kVacuumRelation = 225, - kPublicationObjSpec = 226, - kPublicationTable = 227, - kInlineCodeBlock = 228, - kCallContext = 229, - kInteger = 230, - kFloat = 231, - kBoolean = 232, - kString = 233, - kBitString = 234, - kList = 235, - kIntList = 236, - kOidList = 237, - kAConst = 238, - NODE_NOT_SET = 0, - }; - - static inline const Node* internal_default_instance() { - return reinterpret_cast( - &_Node_default_instance_); + static inline const TriggerTransition* internal_default_instance() { + return reinterpret_cast( + &_TriggerTransition_default_instance_); } static constexpr int kIndexInFileMessages = - 2; + 117; - friend void swap(Node& a, Node& b) { + friend void swap(TriggerTransition& a, TriggerTransition& b) { a.Swap(&b); } - inline void Swap(Node* other) { + inline void Swap(TriggerTransition* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Node* other) { + void UnsafeArenaSwap(TriggerTransition* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Node* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + TriggerTransition* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Node& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Node& from) { - Node::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TriggerTransition& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const TriggerTransition& from) { + TriggerTransition::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Node* other); + void InternalSwap(TriggerTransition* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Node"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.TriggerTransition"; } protected: - explicit Node(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit TriggerTransition(::google::protobuf::Arena* arena); + TriggerTransition(::google::protobuf::Arena* arena, const TriggerTransition& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kAliasFieldNumber = 1, - kRangeVarFieldNumber = 2, - kTableFuncFieldNumber = 3, - kVarFieldNumber = 4, - kParamFieldNumber = 5, - kAggrefFieldNumber = 6, - kGroupingFuncFieldNumber = 7, - kWindowFuncFieldNumber = 8, - kSubscriptingRefFieldNumber = 9, - kFuncExprFieldNumber = 10, - kNamedArgExprFieldNumber = 11, - kOpExprFieldNumber = 12, - kDistinctExprFieldNumber = 13, - kNullIfExprFieldNumber = 14, - kScalarArrayOpExprFieldNumber = 15, - kBoolExprFieldNumber = 16, - kSubLinkFieldNumber = 17, - kSubPlanFieldNumber = 18, - kAlternativeSubPlanFieldNumber = 19, - kFieldSelectFieldNumber = 20, - kFieldStoreFieldNumber = 21, - kRelabelTypeFieldNumber = 22, - kCoerceViaIoFieldNumber = 23, - kArrayCoerceExprFieldNumber = 24, - kConvertRowtypeExprFieldNumber = 25, - kCollateExprFieldNumber = 26, - kCaseExprFieldNumber = 27, - kCaseWhenFieldNumber = 28, - kCaseTestExprFieldNumber = 29, - kArrayExprFieldNumber = 30, - kRowExprFieldNumber = 31, - kRowCompareExprFieldNumber = 32, - kCoalesceExprFieldNumber = 33, - kMinMaxExprFieldNumber = 34, - kSqlvalueFunctionFieldNumber = 35, - kXmlExprFieldNumber = 36, - kNullTestFieldNumber = 37, - kBooleanTestFieldNumber = 38, - kCoerceToDomainFieldNumber = 39, - kCoerceToDomainValueFieldNumber = 40, - kSetToDefaultFieldNumber = 41, - kCurrentOfExprFieldNumber = 42, - kNextValueExprFieldNumber = 43, - kInferenceElemFieldNumber = 44, - kTargetEntryFieldNumber = 45, - kRangeTblRefFieldNumber = 46, - kJoinExprFieldNumber = 47, - kFromExprFieldNumber = 48, - kOnConflictExprFieldNumber = 49, - kIntoClauseFieldNumber = 50, - kMergeActionFieldNumber = 51, - kRawStmtFieldNumber = 52, - kQueryFieldNumber = 53, - kInsertStmtFieldNumber = 54, - kDeleteStmtFieldNumber = 55, - kUpdateStmtFieldNumber = 56, - kMergeStmtFieldNumber = 57, - kSelectStmtFieldNumber = 58, - kReturnStmtFieldNumber = 59, - kPlassignStmtFieldNumber = 60, - kAlterTableStmtFieldNumber = 61, - kAlterTableCmdFieldNumber = 62, - kAlterDomainStmtFieldNumber = 63, - kSetOperationStmtFieldNumber = 64, - kGrantStmtFieldNumber = 65, - kGrantRoleStmtFieldNumber = 66, - kAlterDefaultPrivilegesStmtFieldNumber = 67, - kClosePortalStmtFieldNumber = 68, - kClusterStmtFieldNumber = 69, - kCopyStmtFieldNumber = 70, - kCreateStmtFieldNumber = 71, - kDefineStmtFieldNumber = 72, - kDropStmtFieldNumber = 73, - kTruncateStmtFieldNumber = 74, - kCommentStmtFieldNumber = 75, - kFetchStmtFieldNumber = 76, - kIndexStmtFieldNumber = 77, - kCreateFunctionStmtFieldNumber = 78, - kAlterFunctionStmtFieldNumber = 79, - kDoStmtFieldNumber = 80, - kRenameStmtFieldNumber = 81, - kRuleStmtFieldNumber = 82, - kNotifyStmtFieldNumber = 83, - kListenStmtFieldNumber = 84, - kUnlistenStmtFieldNumber = 85, - kTransactionStmtFieldNumber = 86, - kViewStmtFieldNumber = 87, - kLoadStmtFieldNumber = 88, - kCreateDomainStmtFieldNumber = 89, - kCreatedbStmtFieldNumber = 90, - kDropdbStmtFieldNumber = 91, - kVacuumStmtFieldNumber = 92, - kExplainStmtFieldNumber = 93, - kCreateTableAsStmtFieldNumber = 94, - kCreateSeqStmtFieldNumber = 95, - kAlterSeqStmtFieldNumber = 96, - kVariableSetStmtFieldNumber = 97, - kVariableShowStmtFieldNumber = 98, - kDiscardStmtFieldNumber = 99, - kCreateTrigStmtFieldNumber = 100, - kCreatePlangStmtFieldNumber = 101, - kCreateRoleStmtFieldNumber = 102, - kAlterRoleStmtFieldNumber = 103, - kDropRoleStmtFieldNumber = 104, - kLockStmtFieldNumber = 105, - kConstraintsSetStmtFieldNumber = 106, - kReindexStmtFieldNumber = 107, - kCheckPointStmtFieldNumber = 108, - kCreateSchemaStmtFieldNumber = 109, - kAlterDatabaseStmtFieldNumber = 110, - kAlterDatabaseRefreshCollStmtFieldNumber = 111, - kAlterDatabaseSetStmtFieldNumber = 112, - kAlterRoleSetStmtFieldNumber = 113, - kCreateConversionStmtFieldNumber = 114, - kCreateCastStmtFieldNumber = 115, - kCreateOpClassStmtFieldNumber = 116, - kCreateOpFamilyStmtFieldNumber = 117, - kAlterOpFamilyStmtFieldNumber = 118, - kPrepareStmtFieldNumber = 119, - kExecuteStmtFieldNumber = 120, - kDeallocateStmtFieldNumber = 121, - kDeclareCursorStmtFieldNumber = 122, - kCreateTableSpaceStmtFieldNumber = 123, - kDropTableSpaceStmtFieldNumber = 124, - kAlterObjectDependsStmtFieldNumber = 125, - kAlterObjectSchemaStmtFieldNumber = 126, - kAlterOwnerStmtFieldNumber = 127, - kAlterOperatorStmtFieldNumber = 128, - kAlterTypeStmtFieldNumber = 129, - kDropOwnedStmtFieldNumber = 130, - kReassignOwnedStmtFieldNumber = 131, - kCompositeTypeStmtFieldNumber = 132, - kCreateEnumStmtFieldNumber = 133, - kCreateRangeStmtFieldNumber = 134, - kAlterEnumStmtFieldNumber = 135, - kAlterTsdictionaryStmtFieldNumber = 136, - kAlterTsconfigurationStmtFieldNumber = 137, - kCreateFdwStmtFieldNumber = 138, - kAlterFdwStmtFieldNumber = 139, - kCreateForeignServerStmtFieldNumber = 140, - kAlterForeignServerStmtFieldNumber = 141, - kCreateUserMappingStmtFieldNumber = 142, - kAlterUserMappingStmtFieldNumber = 143, - kDropUserMappingStmtFieldNumber = 144, - kAlterTableSpaceOptionsStmtFieldNumber = 145, - kAlterTableMoveAllStmtFieldNumber = 146, - kSecLabelStmtFieldNumber = 147, - kCreateForeignTableStmtFieldNumber = 148, - kImportForeignSchemaStmtFieldNumber = 149, - kCreateExtensionStmtFieldNumber = 150, - kAlterExtensionStmtFieldNumber = 151, - kAlterExtensionContentsStmtFieldNumber = 152, - kCreateEventTrigStmtFieldNumber = 153, - kAlterEventTrigStmtFieldNumber = 154, - kRefreshMatViewStmtFieldNumber = 155, - kReplicaIdentityStmtFieldNumber = 156, - kAlterSystemStmtFieldNumber = 157, - kCreatePolicyStmtFieldNumber = 158, - kAlterPolicyStmtFieldNumber = 159, - kCreateTransformStmtFieldNumber = 160, - kCreateAmStmtFieldNumber = 161, - kCreatePublicationStmtFieldNumber = 162, - kAlterPublicationStmtFieldNumber = 163, - kCreateSubscriptionStmtFieldNumber = 164, - kAlterSubscriptionStmtFieldNumber = 165, - kDropSubscriptionStmtFieldNumber = 166, - kCreateStatsStmtFieldNumber = 167, - kAlterCollationStmtFieldNumber = 168, - kCallStmtFieldNumber = 169, - kAlterStatsStmtFieldNumber = 170, - kAExprFieldNumber = 171, - kColumnRefFieldNumber = 172, - kParamRefFieldNumber = 173, - kFuncCallFieldNumber = 174, - kAStarFieldNumber = 175, - kAIndicesFieldNumber = 176, - kAIndirectionFieldNumber = 177, - kAArrayExprFieldNumber = 178, - kResTargetFieldNumber = 179, - kMultiAssignRefFieldNumber = 180, - kTypeCastFieldNumber = 181, - kCollateClauseFieldNumber = 182, - kSortByFieldNumber = 183, - kWindowDefFieldNumber = 184, - kRangeSubselectFieldNumber = 185, - kRangeFunctionFieldNumber = 186, - kRangeTableSampleFieldNumber = 187, - kRangeTableFuncFieldNumber = 188, - kRangeTableFuncColFieldNumber = 189, - kTypeNameFieldNumber = 190, - kColumnDefFieldNumber = 191, - kIndexElemFieldNumber = 192, - kStatsElemFieldNumber = 193, - kConstraintFieldNumber = 194, - kDefElemFieldNumber = 195, - kRangeTblEntryFieldNumber = 196, - kRangeTblFunctionFieldNumber = 197, - kTableSampleClauseFieldNumber = 198, - kWithCheckOptionFieldNumber = 199, - kSortGroupClauseFieldNumber = 200, - kGroupingSetFieldNumber = 201, - kWindowClauseFieldNumber = 202, - kObjectWithArgsFieldNumber = 203, - kAccessPrivFieldNumber = 204, - kCreateOpClassItemFieldNumber = 205, - kTableLikeClauseFieldNumber = 206, - kFunctionParameterFieldNumber = 207, - kLockingClauseFieldNumber = 208, - kRowMarkClauseFieldNumber = 209, - kXmlSerializeFieldNumber = 210, - kWithClauseFieldNumber = 211, - kInferClauseFieldNumber = 212, - kOnConflictClauseFieldNumber = 213, - kCtesearchClauseFieldNumber = 214, - kCtecycleClauseFieldNumber = 215, - kCommonTableExprFieldNumber = 216, - kMergeWhenClauseFieldNumber = 217, - kRoleSpecFieldNumber = 218, - kTriggerTransitionFieldNumber = 219, - kPartitionElemFieldNumber = 220, - kPartitionSpecFieldNumber = 221, - kPartitionBoundSpecFieldNumber = 222, - kPartitionRangeDatumFieldNumber = 223, - kPartitionCmdFieldNumber = 224, - kVacuumRelationFieldNumber = 225, - kPublicationObjSpecFieldNumber = 226, - kPublicationTableFieldNumber = 227, - kInlineCodeBlockFieldNumber = 228, - kCallContextFieldNumber = 229, - kIntegerFieldNumber = 230, - kFloatFieldNumber = 231, - kBooleanFieldNumber = 232, - kStringFieldNumber = 233, - kBitStringFieldNumber = 234, - kListFieldNumber = 235, - kIntListFieldNumber = 236, - kOidListFieldNumber = 237, - kAConstFieldNumber = 238, + kNameFieldNumber = 1, + kIsNewFieldNumber = 2, + kIsTableFieldNumber = 3, }; - // .pg_query.Alias alias = 1 [json_name = "Alias"]; - bool has_alias() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + private: - bool _internal_has_alias() const; + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + public: - void clear_alias(); - const ::pg_query::Alias& alias() const; - PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); - ::pg_query::Alias* mutable_alias(); - void set_allocated_alias(::pg_query::Alias* alias); + // bool is_new = 2 [json_name = "isNew"]; + void clear_is_new() ; + bool is_new() const; + void set_is_new(bool value); + private: - const ::pg_query::Alias& _internal_alias() const; - ::pg_query::Alias* _internal_mutable_alias(); + bool _internal_is_new() const; + void _internal_set_is_new(bool value); + public: - void unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias); - ::pg_query::Alias* unsafe_arena_release_alias(); + // bool is_table = 3 [json_name = "isTable"]; + void clear_is_table() ; + bool is_table() const; + void set_is_table(bool value); - // .pg_query.RangeVar range_var = 2 [json_name = "RangeVar"]; - bool has_range_var() const; private: - bool _internal_has_range_var() const; + bool _internal_is_table() const; + void _internal_set_is_table(bool value); + public: - void clear_range_var(); - const ::pg_query::RangeVar& range_var() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_range_var(); - ::pg_query::RangeVar* mutable_range_var(); - void set_allocated_range_var(::pg_query::RangeVar* range_var); + // @@protoc_insertion_point(class_scope:pg_query.TriggerTransition) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 0, + 39, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr name_; + bool is_new_; + bool is_table_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class String final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.String) */ { + public: + inline String() : String(nullptr) {} + ~String() override; + template + explicit PROTOBUF_CONSTEXPR String(::google::protobuf::internal::ConstantInitialized); + + inline String(const String& from) + : String(nullptr, from) {} + String(String&& from) noexcept + : String() { + *this = ::std::move(from); + } + + inline String& operator=(const String& from) { + CopyFrom(from); + return *this; + } + inline String& operator=(String&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const String& default_instance() { + return *internal_default_instance(); + } + static inline const String* internal_default_instance() { + return reinterpret_cast( + &_String_default_instance_); + } + static constexpr int kIndexInFileMessages = + 6; + + friend void swap(String& a, String& b) { + a.Swap(&b); + } + inline void Swap(String* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(String* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + String* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const String& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const String& from) { + String::MergeImpl(*this, from); + } private: - const ::pg_query::RangeVar& _internal_range_var() const; - ::pg_query::RangeVar* _internal_mutable_range_var(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_range_var( - ::pg_query::RangeVar* range_var); - ::pg_query::RangeVar* unsafe_arena_release_range_var(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.TableFunc table_func = 3 [json_name = "TableFunc"]; - bool has_table_func() const; private: - bool _internal_has_table_func() const; - public: - void clear_table_func(); - const ::pg_query::TableFunc& table_func() const; - PROTOBUF_NODISCARD ::pg_query::TableFunc* release_table_func(); - ::pg_query::TableFunc* mutable_table_func(); - void set_allocated_table_func(::pg_query::TableFunc* table_func); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(String* other); + private: - const ::pg_query::TableFunc& _internal_table_func() const; - ::pg_query::TableFunc* _internal_mutable_table_func(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.String"; + } + protected: + explicit String(::google::protobuf::Arena* arena); + String(::google::protobuf::Arena* arena, const String& from); public: - void unsafe_arena_set_allocated_table_func( - ::pg_query::TableFunc* table_func); - ::pg_query::TableFunc* unsafe_arena_release_table_func(); - // .pg_query.Var var = 4 [json_name = "Var"]; - bool has_var() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSvalFieldNumber = 1, + }; + // string sval = 1; + void clear_sval() ; + const std::string& sval() const; + template + void set_sval(Arg_&& arg, Args_... args); + std::string* mutable_sval(); + PROTOBUF_NODISCARD std::string* release_sval(); + void set_allocated_sval(std::string* value); + private: - bool _internal_has_var() const; + const std::string& _internal_sval() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_sval( + const std::string& value); + std::string* _internal_mutable_sval(); + public: - void clear_var(); - const ::pg_query::Var& var() const; - PROTOBUF_NODISCARD ::pg_query::Var* release_var(); - ::pg_query::Var* mutable_var(); - void set_allocated_var(::pg_query::Var* var); + // @@protoc_insertion_point(class_scope:pg_query.String) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 28, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr sval_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class SortGroupClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SortGroupClause) */ { + public: + inline SortGroupClause() : SortGroupClause(nullptr) {} + ~SortGroupClause() override; + template + explicit PROTOBUF_CONSTEXPR SortGroupClause(::google::protobuf::internal::ConstantInitialized); + + inline SortGroupClause(const SortGroupClause& from) + : SortGroupClause(nullptr, from) {} + SortGroupClause(SortGroupClause&& from) noexcept + : SortGroupClause() { + *this = ::std::move(from); + } + + inline SortGroupClause& operator=(const SortGroupClause& from) { + CopyFrom(from); + return *this; + } + inline SortGroupClause& operator=(SortGroupClause&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SortGroupClause& default_instance() { + return *internal_default_instance(); + } + static inline const SortGroupClause* internal_default_instance() { + return reinterpret_cast( + &_SortGroupClause_default_instance_); + } + static constexpr int kIndexInFileMessages = + 105; + + friend void swap(SortGroupClause& a, SortGroupClause& b) { + a.Swap(&b); + } + inline void Swap(SortGroupClause* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SortGroupClause* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SortGroupClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SortGroupClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SortGroupClause& from) { + SortGroupClause::MergeImpl(*this, from); + } private: - const ::pg_query::Var& _internal_var() const; - ::pg_query::Var* _internal_mutable_var(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_var( - ::pg_query::Var* var); - ::pg_query::Var* unsafe_arena_release_var(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.Param param = 5 [json_name = "Param"]; - bool has_param() const; private: - bool _internal_has_param() const; - public: - void clear_param(); - const ::pg_query::Param& param() const; - PROTOBUF_NODISCARD ::pg_query::Param* release_param(); - ::pg_query::Param* mutable_param(); - void set_allocated_param(::pg_query::Param* param); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(SortGroupClause* other); + private: - const ::pg_query::Param& _internal_param() const; - ::pg_query::Param* _internal_mutable_param(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SortGroupClause"; + } + protected: + explicit SortGroupClause(::google::protobuf::Arena* arena); + SortGroupClause(::google::protobuf::Arena* arena, const SortGroupClause& from); public: - void unsafe_arena_set_allocated_param( - ::pg_query::Param* param); - ::pg_query::Param* unsafe_arena_release_param(); - // .pg_query.Aggref aggref = 6 [json_name = "Aggref"]; - bool has_aggref() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kTleSortGroupRefFieldNumber = 1, + kEqopFieldNumber = 2, + kSortopFieldNumber = 3, + kNullsFirstFieldNumber = 4, + kHashableFieldNumber = 5, + }; + // uint32 tle_sort_group_ref = 1 [json_name = "tleSortGroupRef"]; + void clear_tle_sort_group_ref() ; + ::uint32_t tle_sort_group_ref() const; + void set_tle_sort_group_ref(::uint32_t value); + private: - bool _internal_has_aggref() const; + ::uint32_t _internal_tle_sort_group_ref() const; + void _internal_set_tle_sort_group_ref(::uint32_t value); + public: - void clear_aggref(); - const ::pg_query::Aggref& aggref() const; - PROTOBUF_NODISCARD ::pg_query::Aggref* release_aggref(); - ::pg_query::Aggref* mutable_aggref(); - void set_allocated_aggref(::pg_query::Aggref* aggref); + // uint32 eqop = 2 [json_name = "eqop"]; + void clear_eqop() ; + ::uint32_t eqop() const; + void set_eqop(::uint32_t value); + private: - const ::pg_query::Aggref& _internal_aggref() const; - ::pg_query::Aggref* _internal_mutable_aggref(); + ::uint32_t _internal_eqop() const; + void _internal_set_eqop(::uint32_t value); + public: - void unsafe_arena_set_allocated_aggref( - ::pg_query::Aggref* aggref); - ::pg_query::Aggref* unsafe_arena_release_aggref(); + // uint32 sortop = 3 [json_name = "sortop"]; + void clear_sortop() ; + ::uint32_t sortop() const; + void set_sortop(::uint32_t value); - // .pg_query.GroupingFunc grouping_func = 7 [json_name = "GroupingFunc"]; - bool has_grouping_func() const; private: - bool _internal_has_grouping_func() const; + ::uint32_t _internal_sortop() const; + void _internal_set_sortop(::uint32_t value); + public: - void clear_grouping_func(); - const ::pg_query::GroupingFunc& grouping_func() const; - PROTOBUF_NODISCARD ::pg_query::GroupingFunc* release_grouping_func(); - ::pg_query::GroupingFunc* mutable_grouping_func(); - void set_allocated_grouping_func(::pg_query::GroupingFunc* grouping_func); - private: - const ::pg_query::GroupingFunc& _internal_grouping_func() const; - ::pg_query::GroupingFunc* _internal_mutable_grouping_func(); - public: - void unsafe_arena_set_allocated_grouping_func( - ::pg_query::GroupingFunc* grouping_func); - ::pg_query::GroupingFunc* unsafe_arena_release_grouping_func(); + // bool nulls_first = 4 [json_name = "nulls_first"]; + void clear_nulls_first() ; + bool nulls_first() const; + void set_nulls_first(bool value); - // .pg_query.WindowFunc window_func = 8 [json_name = "WindowFunc"]; - bool has_window_func() const; - private: - bool _internal_has_window_func() const; - public: - void clear_window_func(); - const ::pg_query::WindowFunc& window_func() const; - PROTOBUF_NODISCARD ::pg_query::WindowFunc* release_window_func(); - ::pg_query::WindowFunc* mutable_window_func(); - void set_allocated_window_func(::pg_query::WindowFunc* window_func); private: - const ::pg_query::WindowFunc& _internal_window_func() const; - ::pg_query::WindowFunc* _internal_mutable_window_func(); - public: - void unsafe_arena_set_allocated_window_func( - ::pg_query::WindowFunc* window_func); - ::pg_query::WindowFunc* unsafe_arena_release_window_func(); + bool _internal_nulls_first() const; + void _internal_set_nulls_first(bool value); - // .pg_query.SubscriptingRef subscripting_ref = 9 [json_name = "SubscriptingRef"]; - bool has_subscripting_ref() const; - private: - bool _internal_has_subscripting_ref() const; - public: - void clear_subscripting_ref(); - const ::pg_query::SubscriptingRef& subscripting_ref() const; - PROTOBUF_NODISCARD ::pg_query::SubscriptingRef* release_subscripting_ref(); - ::pg_query::SubscriptingRef* mutable_subscripting_ref(); - void set_allocated_subscripting_ref(::pg_query::SubscriptingRef* subscripting_ref); - private: - const ::pg_query::SubscriptingRef& _internal_subscripting_ref() const; - ::pg_query::SubscriptingRef* _internal_mutable_subscripting_ref(); public: - void unsafe_arena_set_allocated_subscripting_ref( - ::pg_query::SubscriptingRef* subscripting_ref); - ::pg_query::SubscriptingRef* unsafe_arena_release_subscripting_ref(); + // bool hashable = 5 [json_name = "hashable"]; + void clear_hashable() ; + bool hashable() const; + void set_hashable(bool value); - // .pg_query.FuncExpr func_expr = 10 [json_name = "FuncExpr"]; - bool has_func_expr() const; - private: - bool _internal_has_func_expr() const; - public: - void clear_func_expr(); - const ::pg_query::FuncExpr& func_expr() const; - PROTOBUF_NODISCARD ::pg_query::FuncExpr* release_func_expr(); - ::pg_query::FuncExpr* mutable_func_expr(); - void set_allocated_func_expr(::pg_query::FuncExpr* func_expr); private: - const ::pg_query::FuncExpr& _internal_func_expr() const; - ::pg_query::FuncExpr* _internal_mutable_func_expr(); - public: - void unsafe_arena_set_allocated_func_expr( - ::pg_query::FuncExpr* func_expr); - ::pg_query::FuncExpr* unsafe_arena_release_func_expr(); + bool _internal_hashable() const; + void _internal_set_hashable(bool value); - // .pg_query.NamedArgExpr named_arg_expr = 11 [json_name = "NamedArgExpr"]; - bool has_named_arg_expr() const; - private: - bool _internal_has_named_arg_expr() const; - public: - void clear_named_arg_expr(); - const ::pg_query::NamedArgExpr& named_arg_expr() const; - PROTOBUF_NODISCARD ::pg_query::NamedArgExpr* release_named_arg_expr(); - ::pg_query::NamedArgExpr* mutable_named_arg_expr(); - void set_allocated_named_arg_expr(::pg_query::NamedArgExpr* named_arg_expr); - private: - const ::pg_query::NamedArgExpr& _internal_named_arg_expr() const; - ::pg_query::NamedArgExpr* _internal_mutable_named_arg_expr(); public: - void unsafe_arena_set_allocated_named_arg_expr( - ::pg_query::NamedArgExpr* named_arg_expr); - ::pg_query::NamedArgExpr* unsafe_arena_release_named_arg_expr(); + // @@protoc_insertion_point(class_scope:pg_query.SortGroupClause) + private: + class _Internal; - // .pg_query.OpExpr op_expr = 12 [json_name = "OpExpr"]; - bool has_op_expr() const; - private: - bool _internal_has_op_expr() const; - public: - void clear_op_expr(); - const ::pg_query::OpExpr& op_expr() const; - PROTOBUF_NODISCARD ::pg_query::OpExpr* release_op_expr(); - ::pg_query::OpExpr* mutable_op_expr(); - void set_allocated_op_expr(::pg_query::OpExpr* op_expr); - private: - const ::pg_query::OpExpr& _internal_op_expr() const; - ::pg_query::OpExpr* _internal_mutable_op_expr(); - public: - void unsafe_arena_set_allocated_op_expr( - ::pg_query::OpExpr* op_expr); - ::pg_query::OpExpr* unsafe_arena_release_op_expr(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.DistinctExpr distinct_expr = 13 [json_name = "DistinctExpr"]; - bool has_distinct_expr() const; - private: - bool _internal_has_distinct_expr() const; - public: - void clear_distinct_expr(); - const ::pg_query::DistinctExpr& distinct_expr() const; - PROTOBUF_NODISCARD ::pg_query::DistinctExpr* release_distinct_expr(); - ::pg_query::DistinctExpr* mutable_distinct_expr(); - void set_allocated_distinct_expr(::pg_query::DistinctExpr* distinct_expr); - private: - const ::pg_query::DistinctExpr& _internal_distinct_expr() const; - ::pg_query::DistinctExpr* _internal_mutable_distinct_expr(); - public: - void unsafe_arena_set_allocated_distinct_expr( - ::pg_query::DistinctExpr* distinct_expr); - ::pg_query::DistinctExpr* unsafe_arena_release_distinct_expr(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::uint32_t tle_sort_group_ref_; + ::uint32_t eqop_; + ::uint32_t sortop_; + bool nulls_first_; + bool hashable_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.NullIfExpr null_if_expr = 14 [json_name = "NullIfExpr"]; - bool has_null_if_expr() const; - private: - bool _internal_has_null_if_expr() const; - public: - void clear_null_if_expr(); - const ::pg_query::NullIfExpr& null_if_expr() const; - PROTOBUF_NODISCARD ::pg_query::NullIfExpr* release_null_if_expr(); - ::pg_query::NullIfExpr* mutable_null_if_expr(); - void set_allocated_null_if_expr(::pg_query::NullIfExpr* null_if_expr); - private: - const ::pg_query::NullIfExpr& _internal_null_if_expr() const; - ::pg_query::NullIfExpr* _internal_mutable_null_if_expr(); - public: - void unsafe_arena_set_allocated_null_if_expr( - ::pg_query::NullIfExpr* null_if_expr); - ::pg_query::NullIfExpr* unsafe_arena_release_null_if_expr(); +class ScanToken final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ScanToken) */ { + public: + inline ScanToken() : ScanToken(nullptr) {} + ~ScanToken() override; + template + explicit PROTOBUF_CONSTEXPR ScanToken(::google::protobuf::internal::ConstantInitialized); - // .pg_query.ScalarArrayOpExpr scalar_array_op_expr = 15 [json_name = "ScalarArrayOpExpr"]; - bool has_scalar_array_op_expr() const; - private: - bool _internal_has_scalar_array_op_expr() const; - public: - void clear_scalar_array_op_expr(); - const ::pg_query::ScalarArrayOpExpr& scalar_array_op_expr() const; - PROTOBUF_NODISCARD ::pg_query::ScalarArrayOpExpr* release_scalar_array_op_expr(); - ::pg_query::ScalarArrayOpExpr* mutable_scalar_array_op_expr(); - void set_allocated_scalar_array_op_expr(::pg_query::ScalarArrayOpExpr* scalar_array_op_expr); - private: - const ::pg_query::ScalarArrayOpExpr& _internal_scalar_array_op_expr() const; - ::pg_query::ScalarArrayOpExpr* _internal_mutable_scalar_array_op_expr(); - public: - void unsafe_arena_set_allocated_scalar_array_op_expr( - ::pg_query::ScalarArrayOpExpr* scalar_array_op_expr); - ::pg_query::ScalarArrayOpExpr* unsafe_arena_release_scalar_array_op_expr(); + inline ScanToken(const ScanToken& from) + : ScanToken(nullptr, from) {} + ScanToken(ScanToken&& from) noexcept + : ScanToken() { + *this = ::std::move(from); + } - // .pg_query.BoolExpr bool_expr = 16 [json_name = "BoolExpr"]; - bool has_bool_expr() const; - private: - bool _internal_has_bool_expr() const; - public: - void clear_bool_expr(); - const ::pg_query::BoolExpr& bool_expr() const; - PROTOBUF_NODISCARD ::pg_query::BoolExpr* release_bool_expr(); - ::pg_query::BoolExpr* mutable_bool_expr(); - void set_allocated_bool_expr(::pg_query::BoolExpr* bool_expr); - private: - const ::pg_query::BoolExpr& _internal_bool_expr() const; - ::pg_query::BoolExpr* _internal_mutable_bool_expr(); - public: - void unsafe_arena_set_allocated_bool_expr( - ::pg_query::BoolExpr* bool_expr); - ::pg_query::BoolExpr* unsafe_arena_release_bool_expr(); + inline ScanToken& operator=(const ScanToken& from) { + CopyFrom(from); + return *this; + } + inline ScanToken& operator=(ScanToken&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.SubLink sub_link = 17 [json_name = "SubLink"]; - bool has_sub_link() const; - private: - bool _internal_has_sub_link() const; - public: - void clear_sub_link(); - const ::pg_query::SubLink& sub_link() const; - PROTOBUF_NODISCARD ::pg_query::SubLink* release_sub_link(); - ::pg_query::SubLink* mutable_sub_link(); - void set_allocated_sub_link(::pg_query::SubLink* sub_link); - private: - const ::pg_query::SubLink& _internal_sub_link() const; - ::pg_query::SubLink* _internal_mutable_sub_link(); - public: - void unsafe_arena_set_allocated_sub_link( - ::pg_query::SubLink* sub_link); - ::pg_query::SubLink* unsafe_arena_release_sub_link(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } - // .pg_query.SubPlan sub_plan = 18 [json_name = "SubPlan"]; - bool has_sub_plan() const; - private: - bool _internal_has_sub_plan() const; - public: - void clear_sub_plan(); - const ::pg_query::SubPlan& sub_plan() const; - PROTOBUF_NODISCARD ::pg_query::SubPlan* release_sub_plan(); - ::pg_query::SubPlan* mutable_sub_plan(); - void set_allocated_sub_plan(::pg_query::SubPlan* sub_plan); - private: - const ::pg_query::SubPlan& _internal_sub_plan() const; - ::pg_query::SubPlan* _internal_mutable_sub_plan(); - public: - void unsafe_arena_set_allocated_sub_plan( - ::pg_query::SubPlan* sub_plan); - ::pg_query::SubPlan* unsafe_arena_release_sub_plan(); + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ScanToken& default_instance() { + return *internal_default_instance(); + } + static inline const ScanToken* internal_default_instance() { + return reinterpret_cast( + &_ScanToken_default_instance_); + } + static constexpr int kIndexInFileMessages = + 255; - // .pg_query.AlternativeSubPlan alternative_sub_plan = 19 [json_name = "AlternativeSubPlan"]; - bool has_alternative_sub_plan() const; - private: - bool _internal_has_alternative_sub_plan() const; - public: - void clear_alternative_sub_plan(); - const ::pg_query::AlternativeSubPlan& alternative_sub_plan() const; - PROTOBUF_NODISCARD ::pg_query::AlternativeSubPlan* release_alternative_sub_plan(); - ::pg_query::AlternativeSubPlan* mutable_alternative_sub_plan(); - void set_allocated_alternative_sub_plan(::pg_query::AlternativeSubPlan* alternative_sub_plan); - private: - const ::pg_query::AlternativeSubPlan& _internal_alternative_sub_plan() const; - ::pg_query::AlternativeSubPlan* _internal_mutable_alternative_sub_plan(); - public: - void unsafe_arena_set_allocated_alternative_sub_plan( - ::pg_query::AlternativeSubPlan* alternative_sub_plan); - ::pg_query::AlternativeSubPlan* unsafe_arena_release_alternative_sub_plan(); + friend void swap(ScanToken& a, ScanToken& b) { + a.Swap(&b); + } + inline void Swap(ScanToken* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ScanToken* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } - // .pg_query.FieldSelect field_select = 20 [json_name = "FieldSelect"]; - bool has_field_select() const; - private: - bool _internal_has_field_select() const; - public: - void clear_field_select(); - const ::pg_query::FieldSelect& field_select() const; - PROTOBUF_NODISCARD ::pg_query::FieldSelect* release_field_select(); - ::pg_query::FieldSelect* mutable_field_select(); - void set_allocated_field_select(::pg_query::FieldSelect* field_select); - private: - const ::pg_query::FieldSelect& _internal_field_select() const; - ::pg_query::FieldSelect* _internal_mutable_field_select(); - public: - void unsafe_arena_set_allocated_field_select( - ::pg_query::FieldSelect* field_select); - ::pg_query::FieldSelect* unsafe_arena_release_field_select(); + // implements Message ---------------------------------------------- - // .pg_query.FieldStore field_store = 21 [json_name = "FieldStore"]; - bool has_field_store() const; - private: - bool _internal_has_field_store() const; - public: - void clear_field_store(); - const ::pg_query::FieldStore& field_store() const; - PROTOBUF_NODISCARD ::pg_query::FieldStore* release_field_store(); - ::pg_query::FieldStore* mutable_field_store(); - void set_allocated_field_store(::pg_query::FieldStore* field_store); + ScanToken* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ScanToken& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ScanToken& from) { + ScanToken::MergeImpl(*this, from); + } private: - const ::pg_query::FieldStore& _internal_field_store() const; - ::pg_query::FieldStore* _internal_mutable_field_store(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_field_store( - ::pg_query::FieldStore* field_store); - ::pg_query::FieldStore* unsafe_arena_release_field_store(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; - // .pg_query.RelabelType relabel_type = 22 [json_name = "RelabelType"]; - bool has_relabel_type() const; - private: - bool _internal_has_relabel_type() const; - public: - void clear_relabel_type(); - const ::pg_query::RelabelType& relabel_type() const; - PROTOBUF_NODISCARD ::pg_query::RelabelType* release_relabel_type(); - ::pg_query::RelabelType* mutable_relabel_type(); - void set_allocated_relabel_type(::pg_query::RelabelType* relabel_type); - private: - const ::pg_query::RelabelType& _internal_relabel_type() const; - ::pg_query::RelabelType* _internal_mutable_relabel_type(); - public: - void unsafe_arena_set_allocated_relabel_type( - ::pg_query::RelabelType* relabel_type); - ::pg_query::RelabelType* unsafe_arena_release_relabel_type(); + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.CoerceViaIO coerce_via_io = 23 [json_name = "CoerceViaIO"]; - bool has_coerce_via_io() const; private: - bool _internal_has_coerce_via_io() const; - public: - void clear_coerce_via_io(); - const ::pg_query::CoerceViaIO& coerce_via_io() const; - PROTOBUF_NODISCARD ::pg_query::CoerceViaIO* release_coerce_via_io(); - ::pg_query::CoerceViaIO* mutable_coerce_via_io(); - void set_allocated_coerce_via_io(::pg_query::CoerceViaIO* coerce_via_io); - private: - const ::pg_query::CoerceViaIO& _internal_coerce_via_io() const; - ::pg_query::CoerceViaIO* _internal_mutable_coerce_via_io(); - public: - void unsafe_arena_set_allocated_coerce_via_io( - ::pg_query::CoerceViaIO* coerce_via_io); - ::pg_query::CoerceViaIO* unsafe_arena_release_coerce_via_io(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(ScanToken* other); - // .pg_query.ArrayCoerceExpr array_coerce_expr = 24 [json_name = "ArrayCoerceExpr"]; - bool has_array_coerce_expr() const; - private: - bool _internal_has_array_coerce_expr() const; - public: - void clear_array_coerce_expr(); - const ::pg_query::ArrayCoerceExpr& array_coerce_expr() const; - PROTOBUF_NODISCARD ::pg_query::ArrayCoerceExpr* release_array_coerce_expr(); - ::pg_query::ArrayCoerceExpr* mutable_array_coerce_expr(); - void set_allocated_array_coerce_expr(::pg_query::ArrayCoerceExpr* array_coerce_expr); private: - const ::pg_query::ArrayCoerceExpr& _internal_array_coerce_expr() const; - ::pg_query::ArrayCoerceExpr* _internal_mutable_array_coerce_expr(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ScanToken"; + } + protected: + explicit ScanToken(::google::protobuf::Arena* arena); + ScanToken(::google::protobuf::Arena* arena, const ScanToken& from); public: - void unsafe_arena_set_allocated_array_coerce_expr( - ::pg_query::ArrayCoerceExpr* array_coerce_expr); - ::pg_query::ArrayCoerceExpr* unsafe_arena_release_array_coerce_expr(); - // .pg_query.ConvertRowtypeExpr convert_rowtype_expr = 25 [json_name = "ConvertRowtypeExpr"]; - bool has_convert_rowtype_expr() const; - private: - bool _internal_has_convert_rowtype_expr() const; - public: - void clear_convert_rowtype_expr(); - const ::pg_query::ConvertRowtypeExpr& convert_rowtype_expr() const; - PROTOBUF_NODISCARD ::pg_query::ConvertRowtypeExpr* release_convert_rowtype_expr(); - ::pg_query::ConvertRowtypeExpr* mutable_convert_rowtype_expr(); - void set_allocated_convert_rowtype_expr(::pg_query::ConvertRowtypeExpr* convert_rowtype_expr); - private: - const ::pg_query::ConvertRowtypeExpr& _internal_convert_rowtype_expr() const; - ::pg_query::ConvertRowtypeExpr* _internal_mutable_convert_rowtype_expr(); - public: - void unsafe_arena_set_allocated_convert_rowtype_expr( - ::pg_query::ConvertRowtypeExpr* convert_rowtype_expr); - ::pg_query::ConvertRowtypeExpr* unsafe_arena_release_convert_rowtype_expr(); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - // .pg_query.CollateExpr collate_expr = 26 [json_name = "CollateExpr"]; - bool has_collate_expr() const; - private: - bool _internal_has_collate_expr() const; - public: - void clear_collate_expr(); - const ::pg_query::CollateExpr& collate_expr() const; - PROTOBUF_NODISCARD ::pg_query::CollateExpr* release_collate_expr(); - ::pg_query::CollateExpr* mutable_collate_expr(); - void set_allocated_collate_expr(::pg_query::CollateExpr* collate_expr); - private: - const ::pg_query::CollateExpr& _internal_collate_expr() const; - ::pg_query::CollateExpr* _internal_mutable_collate_expr(); - public: - void unsafe_arena_set_allocated_collate_expr( - ::pg_query::CollateExpr* collate_expr); - ::pg_query::CollateExpr* unsafe_arena_release_collate_expr(); + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kStartFieldNumber = 1, + kEndFieldNumber = 2, + kTokenFieldNumber = 4, + kKeywordKindFieldNumber = 5, + }; + // int32 start = 1; + void clear_start() ; + ::int32_t start() const; + void set_start(::int32_t value); - // .pg_query.CaseExpr case_expr = 27 [json_name = "CaseExpr"]; - bool has_case_expr() const; private: - bool _internal_has_case_expr() const; + ::int32_t _internal_start() const; + void _internal_set_start(::int32_t value); + public: - void clear_case_expr(); - const ::pg_query::CaseExpr& case_expr() const; - PROTOBUF_NODISCARD ::pg_query::CaseExpr* release_case_expr(); - ::pg_query::CaseExpr* mutable_case_expr(); - void set_allocated_case_expr(::pg_query::CaseExpr* case_expr); + // int32 end = 2; + void clear_end() ; + ::int32_t end() const; + void set_end(::int32_t value); + private: - const ::pg_query::CaseExpr& _internal_case_expr() const; - ::pg_query::CaseExpr* _internal_mutable_case_expr(); + ::int32_t _internal_end() const; + void _internal_set_end(::int32_t value); + public: - void unsafe_arena_set_allocated_case_expr( - ::pg_query::CaseExpr* case_expr); - ::pg_query::CaseExpr* unsafe_arena_release_case_expr(); + // .pg_query.Token token = 4; + void clear_token() ; + ::pg_query::Token token() const; + void set_token(::pg_query::Token value); - // .pg_query.CaseWhen case_when = 28 [json_name = "CaseWhen"]; - bool has_case_when() const; private: - bool _internal_has_case_when() const; + ::pg_query::Token _internal_token() const; + void _internal_set_token(::pg_query::Token value); + public: - void clear_case_when(); - const ::pg_query::CaseWhen& case_when() const; - PROTOBUF_NODISCARD ::pg_query::CaseWhen* release_case_when(); - ::pg_query::CaseWhen* mutable_case_when(); - void set_allocated_case_when(::pg_query::CaseWhen* case_when); + // .pg_query.KeywordKind keyword_kind = 5; + void clear_keyword_kind() ; + ::pg_query::KeywordKind keyword_kind() const; + void set_keyword_kind(::pg_query::KeywordKind value); + private: - const ::pg_query::CaseWhen& _internal_case_when() const; - ::pg_query::CaseWhen* _internal_mutable_case_when(); + ::pg_query::KeywordKind _internal_keyword_kind() const; + void _internal_set_keyword_kind(::pg_query::KeywordKind value); + public: - void unsafe_arena_set_allocated_case_when( - ::pg_query::CaseWhen* case_when); - ::pg_query::CaseWhen* unsafe_arena_release_case_when(); + // @@protoc_insertion_point(class_scope:pg_query.ScanToken) + private: + class _Internal; - // .pg_query.CaseTestExpr case_test_expr = 29 [json_name = "CaseTestExpr"]; - bool has_case_test_expr() const; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 4, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::int32_t start_; + ::int32_t end_; + int token_; + int keyword_kind_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class RowMarkClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RowMarkClause) */ { + public: + inline RowMarkClause() : RowMarkClause(nullptr) {} + ~RowMarkClause() override; + template + explicit PROTOBUF_CONSTEXPR RowMarkClause(::google::protobuf::internal::ConstantInitialized); + + inline RowMarkClause(const RowMarkClause& from) + : RowMarkClause(nullptr, from) {} + RowMarkClause(RowMarkClause&& from) noexcept + : RowMarkClause() { + *this = ::std::move(from); + } + + inline RowMarkClause& operator=(const RowMarkClause& from) { + CopyFrom(from); + return *this; + } + inline RowMarkClause& operator=(RowMarkClause&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const RowMarkClause& default_instance() { + return *internal_default_instance(); + } + static inline const RowMarkClause* internal_default_instance() { + return reinterpret_cast( + &_RowMarkClause_default_instance_); + } + static constexpr int kIndexInFileMessages = + 108; + + friend void swap(RowMarkClause& a, RowMarkClause& b) { + a.Swap(&b); + } + inline void Swap(RowMarkClause* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(RowMarkClause* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + RowMarkClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RowMarkClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RowMarkClause& from) { + RowMarkClause::MergeImpl(*this, from); + } private: - bool _internal_has_case_test_expr() const; + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void clear_case_test_expr(); - const ::pg_query::CaseTestExpr& case_test_expr() const; - PROTOBUF_NODISCARD ::pg_query::CaseTestExpr* release_case_test_expr(); - ::pg_query::CaseTestExpr* mutable_case_test_expr(); - void set_allocated_case_test_expr(::pg_query::CaseTestExpr* case_test_expr); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + private: - const ::pg_query::CaseTestExpr& _internal_case_test_expr() const; - ::pg_query::CaseTestExpr* _internal_mutable_case_test_expr(); - public: - void unsafe_arena_set_allocated_case_test_expr( - ::pg_query::CaseTestExpr* case_test_expr); - ::pg_query::CaseTestExpr* unsafe_arena_release_case_test_expr(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(RowMarkClause* other); - // .pg_query.ArrayExpr array_expr = 30 [json_name = "ArrayExpr"]; - bool has_array_expr() const; private: - bool _internal_has_array_expr() const; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RowMarkClause"; + } + protected: + explicit RowMarkClause(::google::protobuf::Arena* arena); + RowMarkClause(::google::protobuf::Arena* arena, const RowMarkClause& from); public: - void clear_array_expr(); - const ::pg_query::ArrayExpr& array_expr() const; - PROTOBUF_NODISCARD ::pg_query::ArrayExpr* release_array_expr(); - ::pg_query::ArrayExpr* mutable_array_expr(); - void set_allocated_array_expr(::pg_query::ArrayExpr* array_expr); + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kRtiFieldNumber = 1, + kStrengthFieldNumber = 2, + kWaitPolicyFieldNumber = 3, + kPushedDownFieldNumber = 4, + }; + // uint32 rti = 1 [json_name = "rti"]; + void clear_rti() ; + ::uint32_t rti() const; + void set_rti(::uint32_t value); + private: - const ::pg_query::ArrayExpr& _internal_array_expr() const; - ::pg_query::ArrayExpr* _internal_mutable_array_expr(); + ::uint32_t _internal_rti() const; + void _internal_set_rti(::uint32_t value); + public: - void unsafe_arena_set_allocated_array_expr( - ::pg_query::ArrayExpr* array_expr); - ::pg_query::ArrayExpr* unsafe_arena_release_array_expr(); + // .pg_query.LockClauseStrength strength = 2 [json_name = "strength"]; + void clear_strength() ; + ::pg_query::LockClauseStrength strength() const; + void set_strength(::pg_query::LockClauseStrength value); - // .pg_query.RowExpr row_expr = 31 [json_name = "RowExpr"]; - bool has_row_expr() const; private: - bool _internal_has_row_expr() const; + ::pg_query::LockClauseStrength _internal_strength() const; + void _internal_set_strength(::pg_query::LockClauseStrength value); + public: - void clear_row_expr(); - const ::pg_query::RowExpr& row_expr() const; - PROTOBUF_NODISCARD ::pg_query::RowExpr* release_row_expr(); - ::pg_query::RowExpr* mutable_row_expr(); - void set_allocated_row_expr(::pg_query::RowExpr* row_expr); + // .pg_query.LockWaitPolicy wait_policy = 3 [json_name = "waitPolicy"]; + void clear_wait_policy() ; + ::pg_query::LockWaitPolicy wait_policy() const; + void set_wait_policy(::pg_query::LockWaitPolicy value); + private: - const ::pg_query::RowExpr& _internal_row_expr() const; - ::pg_query::RowExpr* _internal_mutable_row_expr(); + ::pg_query::LockWaitPolicy _internal_wait_policy() const; + void _internal_set_wait_policy(::pg_query::LockWaitPolicy value); + public: - void unsafe_arena_set_allocated_row_expr( - ::pg_query::RowExpr* row_expr); - ::pg_query::RowExpr* unsafe_arena_release_row_expr(); + // bool pushed_down = 4 [json_name = "pushedDown"]; + void clear_pushed_down() ; + bool pushed_down() const; + void set_pushed_down(bool value); - // .pg_query.RowCompareExpr row_compare_expr = 32 [json_name = "RowCompareExpr"]; - bool has_row_compare_expr() const; private: - bool _internal_has_row_compare_expr() const; + bool _internal_pushed_down() const; + void _internal_set_pushed_down(bool value); + public: - void clear_row_compare_expr(); - const ::pg_query::RowCompareExpr& row_compare_expr() const; - PROTOBUF_NODISCARD ::pg_query::RowCompareExpr* release_row_compare_expr(); - ::pg_query::RowCompareExpr* mutable_row_compare_expr(); - void set_allocated_row_compare_expr(::pg_query::RowCompareExpr* row_compare_expr); + // @@protoc_insertion_point(class_scope:pg_query.RowMarkClause) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::uint32_t rti_; + int strength_; + int wait_policy_; + bool pushed_down_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class RoleSpec final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RoleSpec) */ { + public: + inline RoleSpec() : RoleSpec(nullptr) {} + ~RoleSpec() override; + template + explicit PROTOBUF_CONSTEXPR RoleSpec(::google::protobuf::internal::ConstantInitialized); + + inline RoleSpec(const RoleSpec& from) + : RoleSpec(nullptr, from) {} + RoleSpec(RoleSpec&& from) noexcept + : RoleSpec() { + *this = ::std::move(from); + } + + inline RoleSpec& operator=(const RoleSpec& from) { + CopyFrom(from); + return *this; + } + inline RoleSpec& operator=(RoleSpec&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const RoleSpec& default_instance() { + return *internal_default_instance(); + } + static inline const RoleSpec* internal_default_instance() { + return reinterpret_cast( + &_RoleSpec_default_instance_); + } + static constexpr int kIndexInFileMessages = + 74; + + friend void swap(RoleSpec& a, RoleSpec& b) { + a.Swap(&b); + } + inline void Swap(RoleSpec* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(RoleSpec* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + RoleSpec* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RoleSpec& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RoleSpec& from) { + RoleSpec::MergeImpl(*this, from); + } private: - const ::pg_query::RowCompareExpr& _internal_row_compare_expr() const; - ::pg_query::RowCompareExpr* _internal_mutable_row_compare_expr(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_row_compare_expr( - ::pg_query::RowCompareExpr* row_compare_expr); - ::pg_query::RowCompareExpr* unsafe_arena_release_row_compare_expr(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.CoalesceExpr coalesce_expr = 33 [json_name = "CoalesceExpr"]; - bool has_coalesce_expr() const; private: - bool _internal_has_coalesce_expr() const; - public: - void clear_coalesce_expr(); - const ::pg_query::CoalesceExpr& coalesce_expr() const; - PROTOBUF_NODISCARD ::pg_query::CoalesceExpr* release_coalesce_expr(); - ::pg_query::CoalesceExpr* mutable_coalesce_expr(); - void set_allocated_coalesce_expr(::pg_query::CoalesceExpr* coalesce_expr); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(RoleSpec* other); + private: - const ::pg_query::CoalesceExpr& _internal_coalesce_expr() const; - ::pg_query::CoalesceExpr* _internal_mutable_coalesce_expr(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RoleSpec"; + } + protected: + explicit RoleSpec(::google::protobuf::Arena* arena); + RoleSpec(::google::protobuf::Arena* arena, const RoleSpec& from); public: - void unsafe_arena_set_allocated_coalesce_expr( - ::pg_query::CoalesceExpr* coalesce_expr); - ::pg_query::CoalesceExpr* unsafe_arena_release_coalesce_expr(); - // .pg_query.MinMaxExpr min_max_expr = 34 [json_name = "MinMaxExpr"]; - bool has_min_max_expr() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kRolenameFieldNumber = 2, + kRoletypeFieldNumber = 1, + kLocationFieldNumber = 3, + }; + // string rolename = 2 [json_name = "rolename"]; + void clear_rolename() ; + const std::string& rolename() const; + template + void set_rolename(Arg_&& arg, Args_... args); + std::string* mutable_rolename(); + PROTOBUF_NODISCARD std::string* release_rolename(); + void set_allocated_rolename(std::string* value); + private: - bool _internal_has_min_max_expr() const; + const std::string& _internal_rolename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_rolename( + const std::string& value); + std::string* _internal_mutable_rolename(); + public: - void clear_min_max_expr(); - const ::pg_query::MinMaxExpr& min_max_expr() const; - PROTOBUF_NODISCARD ::pg_query::MinMaxExpr* release_min_max_expr(); - ::pg_query::MinMaxExpr* mutable_min_max_expr(); - void set_allocated_min_max_expr(::pg_query::MinMaxExpr* min_max_expr); + // .pg_query.RoleSpecType roletype = 1 [json_name = "roletype"]; + void clear_roletype() ; + ::pg_query::RoleSpecType roletype() const; + void set_roletype(::pg_query::RoleSpecType value); + private: - const ::pg_query::MinMaxExpr& _internal_min_max_expr() const; - ::pg_query::MinMaxExpr* _internal_mutable_min_max_expr(); + ::pg_query::RoleSpecType _internal_roletype() const; + void _internal_set_roletype(::pg_query::RoleSpecType value); + public: - void unsafe_arena_set_allocated_min_max_expr( - ::pg_query::MinMaxExpr* min_max_expr); - ::pg_query::MinMaxExpr* unsafe_arena_release_min_max_expr(); + // int32 location = 3 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // .pg_query.SQLValueFunction sqlvalue_function = 35 [json_name = "SQLValueFunction"]; - bool has_sqlvalue_function() const; private: - bool _internal_has_sqlvalue_function() const; + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + public: - void clear_sqlvalue_function(); - const ::pg_query::SQLValueFunction& sqlvalue_function() const; - PROTOBUF_NODISCARD ::pg_query::SQLValueFunction* release_sqlvalue_function(); - ::pg_query::SQLValueFunction* mutable_sqlvalue_function(); - void set_allocated_sqlvalue_function(::pg_query::SQLValueFunction* sqlvalue_function); + // @@protoc_insertion_point(class_scope:pg_query.RoleSpec) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 0, + 34, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr rolename_; + int roletype_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class ReplicaIdentityStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ReplicaIdentityStmt) */ { + public: + inline ReplicaIdentityStmt() : ReplicaIdentityStmt(nullptr) {} + ~ReplicaIdentityStmt() override; + template + explicit PROTOBUF_CONSTEXPR ReplicaIdentityStmt(::google::protobuf::internal::ConstantInitialized); + + inline ReplicaIdentityStmt(const ReplicaIdentityStmt& from) + : ReplicaIdentityStmt(nullptr, from) {} + ReplicaIdentityStmt(ReplicaIdentityStmt&& from) noexcept + : ReplicaIdentityStmt() { + *this = ::std::move(from); + } + + inline ReplicaIdentityStmt& operator=(const ReplicaIdentityStmt& from) { + CopyFrom(from); + return *this; + } + inline ReplicaIdentityStmt& operator=(ReplicaIdentityStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ReplicaIdentityStmt& default_instance() { + return *internal_default_instance(); + } + static inline const ReplicaIdentityStmt* internal_default_instance() { + return reinterpret_cast( + &_ReplicaIdentityStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 137; + + friend void swap(ReplicaIdentityStmt& a, ReplicaIdentityStmt& b) { + a.Swap(&b); + } + inline void Swap(ReplicaIdentityStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ReplicaIdentityStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ReplicaIdentityStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ReplicaIdentityStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ReplicaIdentityStmt& from) { + ReplicaIdentityStmt::MergeImpl(*this, from); + } private: - const ::pg_query::SQLValueFunction& _internal_sqlvalue_function() const; - ::pg_query::SQLValueFunction* _internal_mutable_sqlvalue_function(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_sqlvalue_function( - ::pg_query::SQLValueFunction* sqlvalue_function); - ::pg_query::SQLValueFunction* unsafe_arena_release_sqlvalue_function(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.XmlExpr xml_expr = 36 [json_name = "XmlExpr"]; - bool has_xml_expr() const; private: - bool _internal_has_xml_expr() const; - public: - void clear_xml_expr(); - const ::pg_query::XmlExpr& xml_expr() const; - PROTOBUF_NODISCARD ::pg_query::XmlExpr* release_xml_expr(); - ::pg_query::XmlExpr* mutable_xml_expr(); - void set_allocated_xml_expr(::pg_query::XmlExpr* xml_expr); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(ReplicaIdentityStmt* other); + private: - const ::pg_query::XmlExpr& _internal_xml_expr() const; - ::pg_query::XmlExpr* _internal_mutable_xml_expr(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ReplicaIdentityStmt"; + } + protected: + explicit ReplicaIdentityStmt(::google::protobuf::Arena* arena); + ReplicaIdentityStmt(::google::protobuf::Arena* arena, const ReplicaIdentityStmt& from); public: - void unsafe_arena_set_allocated_xml_expr( - ::pg_query::XmlExpr* xml_expr); - ::pg_query::XmlExpr* unsafe_arena_release_xml_expr(); - // .pg_query.NullTest null_test = 37 [json_name = "NullTest"]; - bool has_null_test() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kIdentityTypeFieldNumber = 1, + kNameFieldNumber = 2, + }; + // string identity_type = 1 [json_name = "identity_type"]; + void clear_identity_type() ; + const std::string& identity_type() const; + template + void set_identity_type(Arg_&& arg, Args_... args); + std::string* mutable_identity_type(); + PROTOBUF_NODISCARD std::string* release_identity_type(); + void set_allocated_identity_type(std::string* value); + private: - bool _internal_has_null_test() const; + const std::string& _internal_identity_type() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_identity_type( + const std::string& value); + std::string* _internal_mutable_identity_type(); + public: - void clear_null_test(); - const ::pg_query::NullTest& null_test() const; - PROTOBUF_NODISCARD ::pg_query::NullTest* release_null_test(); - ::pg_query::NullTest* mutable_null_test(); - void set_allocated_null_test(::pg_query::NullTest* null_test); + // string name = 2 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + private: - const ::pg_query::NullTest& _internal_null_test() const; - ::pg_query::NullTest* _internal_mutable_null_test(); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + public: - void unsafe_arena_set_allocated_null_test( - ::pg_query::NullTest* null_test); - ::pg_query::NullTest* unsafe_arena_release_null_test(); + // @@protoc_insertion_point(class_scope:pg_query.ReplicaIdentityStmt) + private: + class _Internal; - // .pg_query.BooleanTest boolean_test = 38 [json_name = "BooleanTest"]; - bool has_boolean_test() const; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 54, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr identity_type_; + ::google::protobuf::internal::ArenaStringPtr name_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class RangeTblRef final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTblRef) */ { + public: + inline RangeTblRef() : RangeTblRef(nullptr) {} + ~RangeTblRef() override; + template + explicit PROTOBUF_CONSTEXPR RangeTblRef(::google::protobuf::internal::ConstantInitialized); + + inline RangeTblRef(const RangeTblRef& from) + : RangeTblRef(nullptr, from) {} + RangeTblRef(RangeTblRef&& from) noexcept + : RangeTblRef() { + *this = ::std::move(from); + } + + inline RangeTblRef& operator=(const RangeTblRef& from) { + CopyFrom(from); + return *this; + } + inline RangeTblRef& operator=(RangeTblRef&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const RangeTblRef& default_instance() { + return *internal_default_instance(); + } + static inline const RangeTblRef* internal_default_instance() { + return reinterpret_cast( + &_RangeTblRef_default_instance_); + } + static constexpr int kIndexInFileMessages = + 63; + + friend void swap(RangeTblRef& a, RangeTblRef& b) { + a.Swap(&b); + } + inline void Swap(RangeTblRef* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(RangeTblRef* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + RangeTblRef* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RangeTblRef& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RangeTblRef& from) { + RangeTblRef::MergeImpl(*this, from); + } private: - bool _internal_has_boolean_test() const; + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void clear_boolean_test(); - const ::pg_query::BooleanTest& boolean_test() const; - PROTOBUF_NODISCARD ::pg_query::BooleanTest* release_boolean_test(); - ::pg_query::BooleanTest* mutable_boolean_test(); - void set_allocated_boolean_test(::pg_query::BooleanTest* boolean_test); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + private: - const ::pg_query::BooleanTest& _internal_boolean_test() const; - ::pg_query::BooleanTest* _internal_mutable_boolean_test(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(RangeTblRef* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RangeTblRef"; + } + protected: + explicit RangeTblRef(::google::protobuf::Arena* arena); + RangeTblRef(::google::protobuf::Arena* arena, const RangeTblRef& from); public: - void unsafe_arena_set_allocated_boolean_test( - ::pg_query::BooleanTest* boolean_test); - ::pg_query::BooleanTest* unsafe_arena_release_boolean_test(); - // .pg_query.CoerceToDomain coerce_to_domain = 39 [json_name = "CoerceToDomain"]; - bool has_coerce_to_domain() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kRtindexFieldNumber = 1, + }; + // int32 rtindex = 1 [json_name = "rtindex"]; + void clear_rtindex() ; + ::int32_t rtindex() const; + void set_rtindex(::int32_t value); + private: - bool _internal_has_coerce_to_domain() const; + ::int32_t _internal_rtindex() const; + void _internal_set_rtindex(::int32_t value); + public: - void clear_coerce_to_domain(); - const ::pg_query::CoerceToDomain& coerce_to_domain() const; - PROTOBUF_NODISCARD ::pg_query::CoerceToDomain* release_coerce_to_domain(); - ::pg_query::CoerceToDomain* mutable_coerce_to_domain(); - void set_allocated_coerce_to_domain(::pg_query::CoerceToDomain* coerce_to_domain); + // @@protoc_insertion_point(class_scope:pg_query.RangeTblRef) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::int32_t rtindex_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class RTEPermissionInfo final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RTEPermissionInfo) */ { + public: + inline RTEPermissionInfo() : RTEPermissionInfo(nullptr) {} + ~RTEPermissionInfo() override; + template + explicit PROTOBUF_CONSTEXPR RTEPermissionInfo(::google::protobuf::internal::ConstantInitialized); + + inline RTEPermissionInfo(const RTEPermissionInfo& from) + : RTEPermissionInfo(nullptr, from) {} + RTEPermissionInfo(RTEPermissionInfo&& from) noexcept + : RTEPermissionInfo() { + *this = ::std::move(from); + } + + inline RTEPermissionInfo& operator=(const RTEPermissionInfo& from) { + CopyFrom(from); + return *this; + } + inline RTEPermissionInfo& operator=(RTEPermissionInfo&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const RTEPermissionInfo& default_instance() { + return *internal_default_instance(); + } + static inline const RTEPermissionInfo* internal_default_instance() { + return reinterpret_cast( + &_RTEPermissionInfo_default_instance_); + } + static constexpr int kIndexInFileMessages = + 101; + + friend void swap(RTEPermissionInfo& a, RTEPermissionInfo& b) { + a.Swap(&b); + } + inline void Swap(RTEPermissionInfo* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(RTEPermissionInfo* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + RTEPermissionInfo* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RTEPermissionInfo& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RTEPermissionInfo& from) { + RTEPermissionInfo::MergeImpl(*this, from); + } private: - const ::pg_query::CoerceToDomain& _internal_coerce_to_domain() const; - ::pg_query::CoerceToDomain* _internal_mutable_coerce_to_domain(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_coerce_to_domain( - ::pg_query::CoerceToDomain* coerce_to_domain); - ::pg_query::CoerceToDomain* unsafe_arena_release_coerce_to_domain(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.CoerceToDomainValue coerce_to_domain_value = 40 [json_name = "CoerceToDomainValue"]; - bool has_coerce_to_domain_value() const; private: - bool _internal_has_coerce_to_domain_value() const; + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(RTEPermissionInfo* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RTEPermissionInfo"; + } + protected: + explicit RTEPermissionInfo(::google::protobuf::Arena* arena); + RTEPermissionInfo(::google::protobuf::Arena* arena, const RTEPermissionInfo& from); public: - void clear_coerce_to_domain_value(); - const ::pg_query::CoerceToDomainValue& coerce_to_domain_value() const; - PROTOBUF_NODISCARD ::pg_query::CoerceToDomainValue* release_coerce_to_domain_value(); - ::pg_query::CoerceToDomainValue* mutable_coerce_to_domain_value(); - void set_allocated_coerce_to_domain_value(::pg_query::CoerceToDomainValue* coerce_to_domain_value); + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSelectedColsFieldNumber = 5, + kInsertedColsFieldNumber = 6, + kUpdatedColsFieldNumber = 7, + kRelidFieldNumber = 1, + kInhFieldNumber = 2, + kRequiredPermsFieldNumber = 3, + kCheckAsUserFieldNumber = 4, + }; + // repeated uint64 selected_cols = 5 [json_name = "selectedCols"]; + int selected_cols_size() const; private: - const ::pg_query::CoerceToDomainValue& _internal_coerce_to_domain_value() const; - ::pg_query::CoerceToDomainValue* _internal_mutable_coerce_to_domain_value(); + int _internal_selected_cols_size() const; + public: - void unsafe_arena_set_allocated_coerce_to_domain_value( - ::pg_query::CoerceToDomainValue* coerce_to_domain_value); - ::pg_query::CoerceToDomainValue* unsafe_arena_release_coerce_to_domain_value(); + void clear_selected_cols() ; + ::uint64_t selected_cols(int index) const; + void set_selected_cols(int index, ::uint64_t value); + void add_selected_cols(::uint64_t value); + const ::google::protobuf::RepeatedField<::uint64_t>& selected_cols() const; + ::google::protobuf::RepeatedField<::uint64_t>* mutable_selected_cols(); - // .pg_query.SetToDefault set_to_default = 41 [json_name = "SetToDefault"]; - bool has_set_to_default() const; private: - bool _internal_has_set_to_default() const; + const ::google::protobuf::RepeatedField<::uint64_t>& _internal_selected_cols() const; + ::google::protobuf::RepeatedField<::uint64_t>* _internal_mutable_selected_cols(); + public: - void clear_set_to_default(); - const ::pg_query::SetToDefault& set_to_default() const; - PROTOBUF_NODISCARD ::pg_query::SetToDefault* release_set_to_default(); - ::pg_query::SetToDefault* mutable_set_to_default(); - void set_allocated_set_to_default(::pg_query::SetToDefault* set_to_default); + // repeated uint64 inserted_cols = 6 [json_name = "insertedCols"]; + int inserted_cols_size() const; private: - const ::pg_query::SetToDefault& _internal_set_to_default() const; - ::pg_query::SetToDefault* _internal_mutable_set_to_default(); + int _internal_inserted_cols_size() const; + public: - void unsafe_arena_set_allocated_set_to_default( - ::pg_query::SetToDefault* set_to_default); - ::pg_query::SetToDefault* unsafe_arena_release_set_to_default(); + void clear_inserted_cols() ; + ::uint64_t inserted_cols(int index) const; + void set_inserted_cols(int index, ::uint64_t value); + void add_inserted_cols(::uint64_t value); + const ::google::protobuf::RepeatedField<::uint64_t>& inserted_cols() const; + ::google::protobuf::RepeatedField<::uint64_t>* mutable_inserted_cols(); - // .pg_query.CurrentOfExpr current_of_expr = 42 [json_name = "CurrentOfExpr"]; - bool has_current_of_expr() const; private: - bool _internal_has_current_of_expr() const; + const ::google::protobuf::RepeatedField<::uint64_t>& _internal_inserted_cols() const; + ::google::protobuf::RepeatedField<::uint64_t>* _internal_mutable_inserted_cols(); + public: - void clear_current_of_expr(); - const ::pg_query::CurrentOfExpr& current_of_expr() const; - PROTOBUF_NODISCARD ::pg_query::CurrentOfExpr* release_current_of_expr(); - ::pg_query::CurrentOfExpr* mutable_current_of_expr(); - void set_allocated_current_of_expr(::pg_query::CurrentOfExpr* current_of_expr); + // repeated uint64 updated_cols = 7 [json_name = "updatedCols"]; + int updated_cols_size() const; private: - const ::pg_query::CurrentOfExpr& _internal_current_of_expr() const; - ::pg_query::CurrentOfExpr* _internal_mutable_current_of_expr(); - public: - void unsafe_arena_set_allocated_current_of_expr( - ::pg_query::CurrentOfExpr* current_of_expr); - ::pg_query::CurrentOfExpr* unsafe_arena_release_current_of_expr(); + int _internal_updated_cols_size() const; - // .pg_query.NextValueExpr next_value_expr = 43 [json_name = "NextValueExpr"]; - bool has_next_value_expr() const; - private: - bool _internal_has_next_value_expr() const; - public: - void clear_next_value_expr(); - const ::pg_query::NextValueExpr& next_value_expr() const; - PROTOBUF_NODISCARD ::pg_query::NextValueExpr* release_next_value_expr(); - ::pg_query::NextValueExpr* mutable_next_value_expr(); - void set_allocated_next_value_expr(::pg_query::NextValueExpr* next_value_expr); - private: - const ::pg_query::NextValueExpr& _internal_next_value_expr() const; - ::pg_query::NextValueExpr* _internal_mutable_next_value_expr(); public: - void unsafe_arena_set_allocated_next_value_expr( - ::pg_query::NextValueExpr* next_value_expr); - ::pg_query::NextValueExpr* unsafe_arena_release_next_value_expr(); + void clear_updated_cols() ; + ::uint64_t updated_cols(int index) const; + void set_updated_cols(int index, ::uint64_t value); + void add_updated_cols(::uint64_t value); + const ::google::protobuf::RepeatedField<::uint64_t>& updated_cols() const; + ::google::protobuf::RepeatedField<::uint64_t>* mutable_updated_cols(); - // .pg_query.InferenceElem inference_elem = 44 [json_name = "InferenceElem"]; - bool has_inference_elem() const; - private: - bool _internal_has_inference_elem() const; - public: - void clear_inference_elem(); - const ::pg_query::InferenceElem& inference_elem() const; - PROTOBUF_NODISCARD ::pg_query::InferenceElem* release_inference_elem(); - ::pg_query::InferenceElem* mutable_inference_elem(); - void set_allocated_inference_elem(::pg_query::InferenceElem* inference_elem); private: - const ::pg_query::InferenceElem& _internal_inference_elem() const; - ::pg_query::InferenceElem* _internal_mutable_inference_elem(); - public: - void unsafe_arena_set_allocated_inference_elem( - ::pg_query::InferenceElem* inference_elem); - ::pg_query::InferenceElem* unsafe_arena_release_inference_elem(); + const ::google::protobuf::RepeatedField<::uint64_t>& _internal_updated_cols() const; + ::google::protobuf::RepeatedField<::uint64_t>* _internal_mutable_updated_cols(); - // .pg_query.TargetEntry target_entry = 45 [json_name = "TargetEntry"]; - bool has_target_entry() const; - private: - bool _internal_has_target_entry() const; public: - void clear_target_entry(); - const ::pg_query::TargetEntry& target_entry() const; - PROTOBUF_NODISCARD ::pg_query::TargetEntry* release_target_entry(); - ::pg_query::TargetEntry* mutable_target_entry(); - void set_allocated_target_entry(::pg_query::TargetEntry* target_entry); - private: - const ::pg_query::TargetEntry& _internal_target_entry() const; - ::pg_query::TargetEntry* _internal_mutable_target_entry(); - public: - void unsafe_arena_set_allocated_target_entry( - ::pg_query::TargetEntry* target_entry); - ::pg_query::TargetEntry* unsafe_arena_release_target_entry(); + // uint32 relid = 1 [json_name = "relid"]; + void clear_relid() ; + ::uint32_t relid() const; + void set_relid(::uint32_t value); - // .pg_query.RangeTblRef range_tbl_ref = 46 [json_name = "RangeTblRef"]; - bool has_range_tbl_ref() const; - private: - bool _internal_has_range_tbl_ref() const; - public: - void clear_range_tbl_ref(); - const ::pg_query::RangeTblRef& range_tbl_ref() const; - PROTOBUF_NODISCARD ::pg_query::RangeTblRef* release_range_tbl_ref(); - ::pg_query::RangeTblRef* mutable_range_tbl_ref(); - void set_allocated_range_tbl_ref(::pg_query::RangeTblRef* range_tbl_ref); private: - const ::pg_query::RangeTblRef& _internal_range_tbl_ref() const; - ::pg_query::RangeTblRef* _internal_mutable_range_tbl_ref(); - public: - void unsafe_arena_set_allocated_range_tbl_ref( - ::pg_query::RangeTblRef* range_tbl_ref); - ::pg_query::RangeTblRef* unsafe_arena_release_range_tbl_ref(); + ::uint32_t _internal_relid() const; + void _internal_set_relid(::uint32_t value); - // .pg_query.JoinExpr join_expr = 47 [json_name = "JoinExpr"]; - bool has_join_expr() const; - private: - bool _internal_has_join_expr() const; - public: - void clear_join_expr(); - const ::pg_query::JoinExpr& join_expr() const; - PROTOBUF_NODISCARD ::pg_query::JoinExpr* release_join_expr(); - ::pg_query::JoinExpr* mutable_join_expr(); - void set_allocated_join_expr(::pg_query::JoinExpr* join_expr); - private: - const ::pg_query::JoinExpr& _internal_join_expr() const; - ::pg_query::JoinExpr* _internal_mutable_join_expr(); public: - void unsafe_arena_set_allocated_join_expr( - ::pg_query::JoinExpr* join_expr); - ::pg_query::JoinExpr* unsafe_arena_release_join_expr(); + // bool inh = 2 [json_name = "inh"]; + void clear_inh() ; + bool inh() const; + void set_inh(bool value); - // .pg_query.FromExpr from_expr = 48 [json_name = "FromExpr"]; - bool has_from_expr() const; - private: - bool _internal_has_from_expr() const; - public: - void clear_from_expr(); - const ::pg_query::FromExpr& from_expr() const; - PROTOBUF_NODISCARD ::pg_query::FromExpr* release_from_expr(); - ::pg_query::FromExpr* mutable_from_expr(); - void set_allocated_from_expr(::pg_query::FromExpr* from_expr); private: - const ::pg_query::FromExpr& _internal_from_expr() const; - ::pg_query::FromExpr* _internal_mutable_from_expr(); - public: - void unsafe_arena_set_allocated_from_expr( - ::pg_query::FromExpr* from_expr); - ::pg_query::FromExpr* unsafe_arena_release_from_expr(); + bool _internal_inh() const; + void _internal_set_inh(bool value); - // .pg_query.OnConflictExpr on_conflict_expr = 49 [json_name = "OnConflictExpr"]; - bool has_on_conflict_expr() const; - private: - bool _internal_has_on_conflict_expr() const; public: - void clear_on_conflict_expr(); - const ::pg_query::OnConflictExpr& on_conflict_expr() const; - PROTOBUF_NODISCARD ::pg_query::OnConflictExpr* release_on_conflict_expr(); - ::pg_query::OnConflictExpr* mutable_on_conflict_expr(); - void set_allocated_on_conflict_expr(::pg_query::OnConflictExpr* on_conflict_expr); - private: - const ::pg_query::OnConflictExpr& _internal_on_conflict_expr() const; - ::pg_query::OnConflictExpr* _internal_mutable_on_conflict_expr(); - public: - void unsafe_arena_set_allocated_on_conflict_expr( - ::pg_query::OnConflictExpr* on_conflict_expr); - ::pg_query::OnConflictExpr* unsafe_arena_release_on_conflict_expr(); + // int64 required_perms = 3 [json_name = "requiredPerms"]; + void clear_required_perms() ; + ::int64_t required_perms() const; + void set_required_perms(::int64_t value); - // .pg_query.IntoClause into_clause = 50 [json_name = "IntoClause"]; - bool has_into_clause() const; - private: - bool _internal_has_into_clause() const; - public: - void clear_into_clause(); - const ::pg_query::IntoClause& into_clause() const; - PROTOBUF_NODISCARD ::pg_query::IntoClause* release_into_clause(); - ::pg_query::IntoClause* mutable_into_clause(); - void set_allocated_into_clause(::pg_query::IntoClause* into_clause); private: - const ::pg_query::IntoClause& _internal_into_clause() const; - ::pg_query::IntoClause* _internal_mutable_into_clause(); - public: - void unsafe_arena_set_allocated_into_clause( - ::pg_query::IntoClause* into_clause); - ::pg_query::IntoClause* unsafe_arena_release_into_clause(); + ::int64_t _internal_required_perms() const; + void _internal_set_required_perms(::int64_t value); - // .pg_query.MergeAction merge_action = 51 [json_name = "MergeAction"]; - bool has_merge_action() const; - private: - bool _internal_has_merge_action() const; - public: - void clear_merge_action(); - const ::pg_query::MergeAction& merge_action() const; - PROTOBUF_NODISCARD ::pg_query::MergeAction* release_merge_action(); - ::pg_query::MergeAction* mutable_merge_action(); - void set_allocated_merge_action(::pg_query::MergeAction* merge_action); - private: - const ::pg_query::MergeAction& _internal_merge_action() const; - ::pg_query::MergeAction* _internal_mutable_merge_action(); public: - void unsafe_arena_set_allocated_merge_action( - ::pg_query::MergeAction* merge_action); - ::pg_query::MergeAction* unsafe_arena_release_merge_action(); + // uint32 check_as_user = 4 [json_name = "checkAsUser"]; + void clear_check_as_user() ; + ::uint32_t check_as_user() const; + void set_check_as_user(::uint32_t value); - // .pg_query.RawStmt raw_stmt = 52 [json_name = "RawStmt"]; - bool has_raw_stmt() const; - private: - bool _internal_has_raw_stmt() const; - public: - void clear_raw_stmt(); - const ::pg_query::RawStmt& raw_stmt() const; - PROTOBUF_NODISCARD ::pg_query::RawStmt* release_raw_stmt(); - ::pg_query::RawStmt* mutable_raw_stmt(); - void set_allocated_raw_stmt(::pg_query::RawStmt* raw_stmt); private: - const ::pg_query::RawStmt& _internal_raw_stmt() const; - ::pg_query::RawStmt* _internal_mutable_raw_stmt(); - public: - void unsafe_arena_set_allocated_raw_stmt( - ::pg_query::RawStmt* raw_stmt); - ::pg_query::RawStmt* unsafe_arena_release_raw_stmt(); + ::uint32_t _internal_check_as_user() const; + void _internal_set_check_as_user(::uint32_t value); - // .pg_query.Query query = 53 [json_name = "Query"]; - bool has_query() const; - private: - bool _internal_has_query() const; - public: - void clear_query(); - const ::pg_query::Query& query() const; - PROTOBUF_NODISCARD ::pg_query::Query* release_query(); - ::pg_query::Query* mutable_query(); - void set_allocated_query(::pg_query::Query* query); - private: - const ::pg_query::Query& _internal_query() const; - ::pg_query::Query* _internal_mutable_query(); public: - void unsafe_arena_set_allocated_query( - ::pg_query::Query* query); - ::pg_query::Query* unsafe_arena_release_query(); + // @@protoc_insertion_point(class_scope:pg_query.RTEPermissionInfo) + private: + class _Internal; - // .pg_query.InsertStmt insert_stmt = 54 [json_name = "InsertStmt"]; - bool has_insert_stmt() const; - private: - bool _internal_has_insert_stmt() const; - public: - void clear_insert_stmt(); - const ::pg_query::InsertStmt& insert_stmt() const; - PROTOBUF_NODISCARD ::pg_query::InsertStmt* release_insert_stmt(); - ::pg_query::InsertStmt* mutable_insert_stmt(); - void set_allocated_insert_stmt(::pg_query::InsertStmt* insert_stmt); - private: - const ::pg_query::InsertStmt& _internal_insert_stmt() const; - ::pg_query::InsertStmt* _internal_mutable_insert_stmt(); - public: - void unsafe_arena_set_allocated_insert_stmt( - ::pg_query::InsertStmt* insert_stmt); - ::pg_query::InsertStmt* unsafe_arena_release_insert_stmt(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.DeleteStmt delete_stmt = 55 [json_name = "DeleteStmt"]; - bool has_delete_stmt() const; - private: - bool _internal_has_delete_stmt() const; - public: - void clear_delete_stmt(); - const ::pg_query::DeleteStmt& delete_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DeleteStmt* release_delete_stmt(); - ::pg_query::DeleteStmt* mutable_delete_stmt(); - void set_allocated_delete_stmt(::pg_query::DeleteStmt* delete_stmt); - private: - const ::pg_query::DeleteStmt& _internal_delete_stmt() const; - ::pg_query::DeleteStmt* _internal_mutable_delete_stmt(); - public: - void unsafe_arena_set_allocated_delete_stmt( - ::pg_query::DeleteStmt* delete_stmt); - ::pg_query::DeleteStmt* unsafe_arena_release_delete_stmt(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedField<::uint64_t> selected_cols_; + mutable ::google::protobuf::internal::CachedSize _selected_cols_cached_byte_size_; + ::google::protobuf::RepeatedField<::uint64_t> inserted_cols_; + mutable ::google::protobuf::internal::CachedSize _inserted_cols_cached_byte_size_; + ::google::protobuf::RepeatedField<::uint64_t> updated_cols_; + mutable ::google::protobuf::internal::CachedSize _updated_cols_cached_byte_size_; + ::uint32_t relid_; + bool inh_; + ::int64_t required_perms_; + ::uint32_t check_as_user_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.UpdateStmt update_stmt = 56 [json_name = "UpdateStmt"]; - bool has_update_stmt() const; - private: - bool _internal_has_update_stmt() const; - public: - void clear_update_stmt(); - const ::pg_query::UpdateStmt& update_stmt() const; - PROTOBUF_NODISCARD ::pg_query::UpdateStmt* release_update_stmt(); - ::pg_query::UpdateStmt* mutable_update_stmt(); - void set_allocated_update_stmt(::pg_query::UpdateStmt* update_stmt); - private: - const ::pg_query::UpdateStmt& _internal_update_stmt() const; - ::pg_query::UpdateStmt* _internal_mutable_update_stmt(); - public: - void unsafe_arena_set_allocated_update_stmt( - ::pg_query::UpdateStmt* update_stmt); - ::pg_query::UpdateStmt* unsafe_arena_release_update_stmt(); +class ParamRef final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ParamRef) */ { + public: + inline ParamRef() : ParamRef(nullptr) {} + ~ParamRef() override; + template + explicit PROTOBUF_CONSTEXPR ParamRef(::google::protobuf::internal::ConstantInitialized); - // .pg_query.MergeStmt merge_stmt = 57 [json_name = "MergeStmt"]; - bool has_merge_stmt() const; - private: - bool _internal_has_merge_stmt() const; - public: - void clear_merge_stmt(); - const ::pg_query::MergeStmt& merge_stmt() const; - PROTOBUF_NODISCARD ::pg_query::MergeStmt* release_merge_stmt(); - ::pg_query::MergeStmt* mutable_merge_stmt(); - void set_allocated_merge_stmt(::pg_query::MergeStmt* merge_stmt); - private: - const ::pg_query::MergeStmt& _internal_merge_stmt() const; - ::pg_query::MergeStmt* _internal_mutable_merge_stmt(); - public: - void unsafe_arena_set_allocated_merge_stmt( - ::pg_query::MergeStmt* merge_stmt); - ::pg_query::MergeStmt* unsafe_arena_release_merge_stmt(); + inline ParamRef(const ParamRef& from) + : ParamRef(nullptr, from) {} + ParamRef(ParamRef&& from) noexcept + : ParamRef() { + *this = ::std::move(from); + } - // .pg_query.SelectStmt select_stmt = 58 [json_name = "SelectStmt"]; - bool has_select_stmt() const; - private: - bool _internal_has_select_stmt() const; - public: - void clear_select_stmt(); - const ::pg_query::SelectStmt& select_stmt() const; - PROTOBUF_NODISCARD ::pg_query::SelectStmt* release_select_stmt(); - ::pg_query::SelectStmt* mutable_select_stmt(); - void set_allocated_select_stmt(::pg_query::SelectStmt* select_stmt); - private: - const ::pg_query::SelectStmt& _internal_select_stmt() const; - ::pg_query::SelectStmt* _internal_mutable_select_stmt(); - public: - void unsafe_arena_set_allocated_select_stmt( - ::pg_query::SelectStmt* select_stmt); - ::pg_query::SelectStmt* unsafe_arena_release_select_stmt(); + inline ParamRef& operator=(const ParamRef& from) { + CopyFrom(from); + return *this; + } + inline ParamRef& operator=(ParamRef&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.ReturnStmt return_stmt = 59 [json_name = "ReturnStmt"]; - bool has_return_stmt() const; - private: - bool _internal_has_return_stmt() const; - public: - void clear_return_stmt(); - const ::pg_query::ReturnStmt& return_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ReturnStmt* release_return_stmt(); - ::pg_query::ReturnStmt* mutable_return_stmt(); - void set_allocated_return_stmt(::pg_query::ReturnStmt* return_stmt); - private: - const ::pg_query::ReturnStmt& _internal_return_stmt() const; - ::pg_query::ReturnStmt* _internal_mutable_return_stmt(); - public: - void unsafe_arena_set_allocated_return_stmt( - ::pg_query::ReturnStmt* return_stmt); - ::pg_query::ReturnStmt* unsafe_arena_release_return_stmt(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } - // .pg_query.PLAssignStmt plassign_stmt = 60 [json_name = "PLAssignStmt"]; - bool has_plassign_stmt() const; - private: - bool _internal_has_plassign_stmt() const; - public: - void clear_plassign_stmt(); - const ::pg_query::PLAssignStmt& plassign_stmt() const; - PROTOBUF_NODISCARD ::pg_query::PLAssignStmt* release_plassign_stmt(); - ::pg_query::PLAssignStmt* mutable_plassign_stmt(); - void set_allocated_plassign_stmt(::pg_query::PLAssignStmt* plassign_stmt); - private: - const ::pg_query::PLAssignStmt& _internal_plassign_stmt() const; - ::pg_query::PLAssignStmt* _internal_mutable_plassign_stmt(); - public: - void unsafe_arena_set_allocated_plassign_stmt( - ::pg_query::PLAssignStmt* plassign_stmt); - ::pg_query::PLAssignStmt* unsafe_arena_release_plassign_stmt(); + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ParamRef& default_instance() { + return *internal_default_instance(); + } + static inline const ParamRef* internal_default_instance() { + return reinterpret_cast( + &_ParamRef_default_instance_); + } + static constexpr int kIndexInFileMessages = + 70; - // .pg_query.AlterTableStmt alter_table_stmt = 61 [json_name = "AlterTableStmt"]; - bool has_alter_table_stmt() const; - private: - bool _internal_has_alter_table_stmt() const; - public: - void clear_alter_table_stmt(); - const ::pg_query::AlterTableStmt& alter_table_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterTableStmt* release_alter_table_stmt(); - ::pg_query::AlterTableStmt* mutable_alter_table_stmt(); - void set_allocated_alter_table_stmt(::pg_query::AlterTableStmt* alter_table_stmt); - private: - const ::pg_query::AlterTableStmt& _internal_alter_table_stmt() const; - ::pg_query::AlterTableStmt* _internal_mutable_alter_table_stmt(); - public: - void unsafe_arena_set_allocated_alter_table_stmt( - ::pg_query::AlterTableStmt* alter_table_stmt); - ::pg_query::AlterTableStmt* unsafe_arena_release_alter_table_stmt(); + friend void swap(ParamRef& a, ParamRef& b) { + a.Swap(&b); + } + inline void Swap(ParamRef* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ParamRef* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } - // .pg_query.AlterTableCmd alter_table_cmd = 62 [json_name = "AlterTableCmd"]; - bool has_alter_table_cmd() const; - private: - bool _internal_has_alter_table_cmd() const; - public: - void clear_alter_table_cmd(); - const ::pg_query::AlterTableCmd& alter_table_cmd() const; - PROTOBUF_NODISCARD ::pg_query::AlterTableCmd* release_alter_table_cmd(); - ::pg_query::AlterTableCmd* mutable_alter_table_cmd(); - void set_allocated_alter_table_cmd(::pg_query::AlterTableCmd* alter_table_cmd); - private: - const ::pg_query::AlterTableCmd& _internal_alter_table_cmd() const; - ::pg_query::AlterTableCmd* _internal_mutable_alter_table_cmd(); - public: - void unsafe_arena_set_allocated_alter_table_cmd( - ::pg_query::AlterTableCmd* alter_table_cmd); - ::pg_query::AlterTableCmd* unsafe_arena_release_alter_table_cmd(); + // implements Message ---------------------------------------------- - // .pg_query.AlterDomainStmt alter_domain_stmt = 63 [json_name = "AlterDomainStmt"]; - bool has_alter_domain_stmt() const; - private: - bool _internal_has_alter_domain_stmt() const; - public: - void clear_alter_domain_stmt(); - const ::pg_query::AlterDomainStmt& alter_domain_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterDomainStmt* release_alter_domain_stmt(); - ::pg_query::AlterDomainStmt* mutable_alter_domain_stmt(); - void set_allocated_alter_domain_stmt(::pg_query::AlterDomainStmt* alter_domain_stmt); + ParamRef* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ParamRef& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ParamRef& from) { + ParamRef::MergeImpl(*this, from); + } private: - const ::pg_query::AlterDomainStmt& _internal_alter_domain_stmt() const; - ::pg_query::AlterDomainStmt* _internal_mutable_alter_domain_stmt(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_alter_domain_stmt( - ::pg_query::AlterDomainStmt* alter_domain_stmt); - ::pg_query::AlterDomainStmt* unsafe_arena_release_alter_domain_stmt(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; - // .pg_query.SetOperationStmt set_operation_stmt = 64 [json_name = "SetOperationStmt"]; - bool has_set_operation_stmt() const; - private: - bool _internal_has_set_operation_stmt() const; - public: - void clear_set_operation_stmt(); - const ::pg_query::SetOperationStmt& set_operation_stmt() const; - PROTOBUF_NODISCARD ::pg_query::SetOperationStmt* release_set_operation_stmt(); - ::pg_query::SetOperationStmt* mutable_set_operation_stmt(); - void set_allocated_set_operation_stmt(::pg_query::SetOperationStmt* set_operation_stmt); - private: - const ::pg_query::SetOperationStmt& _internal_set_operation_stmt() const; - ::pg_query::SetOperationStmt* _internal_mutable_set_operation_stmt(); - public: - void unsafe_arena_set_allocated_set_operation_stmt( - ::pg_query::SetOperationStmt* set_operation_stmt); - ::pg_query::SetOperationStmt* unsafe_arena_release_set_operation_stmt(); + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.GrantStmt grant_stmt = 65 [json_name = "GrantStmt"]; - bool has_grant_stmt() const; - private: - bool _internal_has_grant_stmt() const; - public: - void clear_grant_stmt(); - const ::pg_query::GrantStmt& grant_stmt() const; - PROTOBUF_NODISCARD ::pg_query::GrantStmt* release_grant_stmt(); - ::pg_query::GrantStmt* mutable_grant_stmt(); - void set_allocated_grant_stmt(::pg_query::GrantStmt* grant_stmt); private: - const ::pg_query::GrantStmt& _internal_grant_stmt() const; - ::pg_query::GrantStmt* _internal_mutable_grant_stmt(); - public: - void unsafe_arena_set_allocated_grant_stmt( - ::pg_query::GrantStmt* grant_stmt); - ::pg_query::GrantStmt* unsafe_arena_release_grant_stmt(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(ParamRef* other); - // .pg_query.GrantRoleStmt grant_role_stmt = 66 [json_name = "GrantRoleStmt"]; - bool has_grant_role_stmt() const; - private: - bool _internal_has_grant_role_stmt() const; - public: - void clear_grant_role_stmt(); - const ::pg_query::GrantRoleStmt& grant_role_stmt() const; - PROTOBUF_NODISCARD ::pg_query::GrantRoleStmt* release_grant_role_stmt(); - ::pg_query::GrantRoleStmt* mutable_grant_role_stmt(); - void set_allocated_grant_role_stmt(::pg_query::GrantRoleStmt* grant_role_stmt); private: - const ::pg_query::GrantRoleStmt& _internal_grant_role_stmt() const; - ::pg_query::GrantRoleStmt* _internal_mutable_grant_role_stmt(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ParamRef"; + } + protected: + explicit ParamRef(::google::protobuf::Arena* arena); + ParamRef(::google::protobuf::Arena* arena, const ParamRef& from); public: - void unsafe_arena_set_allocated_grant_role_stmt( - ::pg_query::GrantRoleStmt* grant_role_stmt); - ::pg_query::GrantRoleStmt* unsafe_arena_release_grant_role_stmt(); - // .pg_query.AlterDefaultPrivilegesStmt alter_default_privileges_stmt = 67 [json_name = "AlterDefaultPrivilegesStmt"]; - bool has_alter_default_privileges_stmt() const; - private: - bool _internal_has_alter_default_privileges_stmt() const; - public: - void clear_alter_default_privileges_stmt(); - const ::pg_query::AlterDefaultPrivilegesStmt& alter_default_privileges_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterDefaultPrivilegesStmt* release_alter_default_privileges_stmt(); - ::pg_query::AlterDefaultPrivilegesStmt* mutable_alter_default_privileges_stmt(); - void set_allocated_alter_default_privileges_stmt(::pg_query::AlterDefaultPrivilegesStmt* alter_default_privileges_stmt); - private: - const ::pg_query::AlterDefaultPrivilegesStmt& _internal_alter_default_privileges_stmt() const; - ::pg_query::AlterDefaultPrivilegesStmt* _internal_mutable_alter_default_privileges_stmt(); - public: - void unsafe_arena_set_allocated_alter_default_privileges_stmt( - ::pg_query::AlterDefaultPrivilegesStmt* alter_default_privileges_stmt); - ::pg_query::AlterDefaultPrivilegesStmt* unsafe_arena_release_alter_default_privileges_stmt(); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - // .pg_query.ClosePortalStmt close_portal_stmt = 68 [json_name = "ClosePortalStmt"]; - bool has_close_portal_stmt() const; - private: - bool _internal_has_close_portal_stmt() const; - public: - void clear_close_portal_stmt(); - const ::pg_query::ClosePortalStmt& close_portal_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ClosePortalStmt* release_close_portal_stmt(); - ::pg_query::ClosePortalStmt* mutable_close_portal_stmt(); - void set_allocated_close_portal_stmt(::pg_query::ClosePortalStmt* close_portal_stmt); - private: - const ::pg_query::ClosePortalStmt& _internal_close_portal_stmt() const; - ::pg_query::ClosePortalStmt* _internal_mutable_close_portal_stmt(); - public: - void unsafe_arena_set_allocated_close_portal_stmt( - ::pg_query::ClosePortalStmt* close_portal_stmt); - ::pg_query::ClosePortalStmt* unsafe_arena_release_close_portal_stmt(); + ::google::protobuf::Metadata GetMetadata() const final; - // .pg_query.ClusterStmt cluster_stmt = 69 [json_name = "ClusterStmt"]; - bool has_cluster_stmt() const; - private: - bool _internal_has_cluster_stmt() const; - public: - void clear_cluster_stmt(); - const ::pg_query::ClusterStmt& cluster_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ClusterStmt* release_cluster_stmt(); - ::pg_query::ClusterStmt* mutable_cluster_stmt(); - void set_allocated_cluster_stmt(::pg_query::ClusterStmt* cluster_stmt); - private: - const ::pg_query::ClusterStmt& _internal_cluster_stmt() const; - ::pg_query::ClusterStmt* _internal_mutable_cluster_stmt(); - public: - void unsafe_arena_set_allocated_cluster_stmt( - ::pg_query::ClusterStmt* cluster_stmt); - ::pg_query::ClusterStmt* unsafe_arena_release_cluster_stmt(); + // nested types ---------------------------------------------------- - // .pg_query.CopyStmt copy_stmt = 70 [json_name = "CopyStmt"]; - bool has_copy_stmt() const; - private: - bool _internal_has_copy_stmt() const; - public: - void clear_copy_stmt(); - const ::pg_query::CopyStmt& copy_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CopyStmt* release_copy_stmt(); - ::pg_query::CopyStmt* mutable_copy_stmt(); - void set_allocated_copy_stmt(::pg_query::CopyStmt* copy_stmt); - private: - const ::pg_query::CopyStmt& _internal_copy_stmt() const; - ::pg_query::CopyStmt* _internal_mutable_copy_stmt(); - public: - void unsafe_arena_set_allocated_copy_stmt( - ::pg_query::CopyStmt* copy_stmt); - ::pg_query::CopyStmt* unsafe_arena_release_copy_stmt(); + // accessors ------------------------------------------------------- - // .pg_query.CreateStmt create_stmt = 71 [json_name = "CreateStmt"]; - bool has_create_stmt() const; - private: - bool _internal_has_create_stmt() const; - public: - void clear_create_stmt(); - const ::pg_query::CreateStmt& create_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateStmt* release_create_stmt(); - ::pg_query::CreateStmt* mutable_create_stmt(); - void set_allocated_create_stmt(::pg_query::CreateStmt* create_stmt); - private: - const ::pg_query::CreateStmt& _internal_create_stmt() const; - ::pg_query::CreateStmt* _internal_mutable_create_stmt(); - public: - void unsafe_arena_set_allocated_create_stmt( - ::pg_query::CreateStmt* create_stmt); - ::pg_query::CreateStmt* unsafe_arena_release_create_stmt(); + enum : int { + kNumberFieldNumber = 1, + kLocationFieldNumber = 2, + }; + // int32 number = 1 [json_name = "number"]; + void clear_number() ; + ::int32_t number() const; + void set_number(::int32_t value); - // .pg_query.DefineStmt define_stmt = 72 [json_name = "DefineStmt"]; - bool has_define_stmt() const; - private: - bool _internal_has_define_stmt() const; - public: - void clear_define_stmt(); - const ::pg_query::DefineStmt& define_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DefineStmt* release_define_stmt(); - ::pg_query::DefineStmt* mutable_define_stmt(); - void set_allocated_define_stmt(::pg_query::DefineStmt* define_stmt); private: - const ::pg_query::DefineStmt& _internal_define_stmt() const; - ::pg_query::DefineStmt* _internal_mutable_define_stmt(); - public: - void unsafe_arena_set_allocated_define_stmt( - ::pg_query::DefineStmt* define_stmt); - ::pg_query::DefineStmt* unsafe_arena_release_define_stmt(); + ::int32_t _internal_number() const; + void _internal_set_number(::int32_t value); - // .pg_query.DropStmt drop_stmt = 73 [json_name = "DropStmt"]; - bool has_drop_stmt() const; - private: - bool _internal_has_drop_stmt() const; - public: - void clear_drop_stmt(); - const ::pg_query::DropStmt& drop_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DropStmt* release_drop_stmt(); - ::pg_query::DropStmt* mutable_drop_stmt(); - void set_allocated_drop_stmt(::pg_query::DropStmt* drop_stmt); - private: - const ::pg_query::DropStmt& _internal_drop_stmt() const; - ::pg_query::DropStmt* _internal_mutable_drop_stmt(); public: - void unsafe_arena_set_allocated_drop_stmt( - ::pg_query::DropStmt* drop_stmt); - ::pg_query::DropStmt* unsafe_arena_release_drop_stmt(); + // int32 location = 2 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // .pg_query.TruncateStmt truncate_stmt = 74 [json_name = "TruncateStmt"]; - bool has_truncate_stmt() const; - private: - bool _internal_has_truncate_stmt() const; - public: - void clear_truncate_stmt(); - const ::pg_query::TruncateStmt& truncate_stmt() const; - PROTOBUF_NODISCARD ::pg_query::TruncateStmt* release_truncate_stmt(); - ::pg_query::TruncateStmt* mutable_truncate_stmt(); - void set_allocated_truncate_stmt(::pg_query::TruncateStmt* truncate_stmt); private: - const ::pg_query::TruncateStmt& _internal_truncate_stmt() const; - ::pg_query::TruncateStmt* _internal_mutable_truncate_stmt(); - public: - void unsafe_arena_set_allocated_truncate_stmt( - ::pg_query::TruncateStmt* truncate_stmt); - ::pg_query::TruncateStmt* unsafe_arena_release_truncate_stmt(); + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // .pg_query.CommentStmt comment_stmt = 75 [json_name = "CommentStmt"]; - bool has_comment_stmt() const; - private: - bool _internal_has_comment_stmt() const; - public: - void clear_comment_stmt(); - const ::pg_query::CommentStmt& comment_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CommentStmt* release_comment_stmt(); - ::pg_query::CommentStmt* mutable_comment_stmt(); - void set_allocated_comment_stmt(::pg_query::CommentStmt* comment_stmt); - private: - const ::pg_query::CommentStmt& _internal_comment_stmt() const; - ::pg_query::CommentStmt* _internal_mutable_comment_stmt(); public: - void unsafe_arena_set_allocated_comment_stmt( - ::pg_query::CommentStmt* comment_stmt); - ::pg_query::CommentStmt* unsafe_arena_release_comment_stmt(); + // @@protoc_insertion_point(class_scope:pg_query.ParamRef) + private: + class _Internal; - // .pg_query.FetchStmt fetch_stmt = 76 [json_name = "FetchStmt"]; - bool has_fetch_stmt() const; - private: - bool _internal_has_fetch_stmt() const; - public: - void clear_fetch_stmt(); - const ::pg_query::FetchStmt& fetch_stmt() const; - PROTOBUF_NODISCARD ::pg_query::FetchStmt* release_fetch_stmt(); - ::pg_query::FetchStmt* mutable_fetch_stmt(); - void set_allocated_fetch_stmt(::pg_query::FetchStmt* fetch_stmt); - private: - const ::pg_query::FetchStmt& _internal_fetch_stmt() const; - ::pg_query::FetchStmt* _internal_mutable_fetch_stmt(); - public: - void unsafe_arena_set_allocated_fetch_stmt( - ::pg_query::FetchStmt* fetch_stmt); - ::pg_query::FetchStmt* unsafe_arena_release_fetch_stmt(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.IndexStmt index_stmt = 77 [json_name = "IndexStmt"]; - bool has_index_stmt() const; - private: - bool _internal_has_index_stmt() const; - public: - void clear_index_stmt(); - const ::pg_query::IndexStmt& index_stmt() const; - PROTOBUF_NODISCARD ::pg_query::IndexStmt* release_index_stmt(); - ::pg_query::IndexStmt* mutable_index_stmt(); - void set_allocated_index_stmt(::pg_query::IndexStmt* index_stmt); - private: - const ::pg_query::IndexStmt& _internal_index_stmt() const; - ::pg_query::IndexStmt* _internal_mutable_index_stmt(); - public: - void unsafe_arena_set_allocated_index_stmt( - ::pg_query::IndexStmt* index_stmt); - ::pg_query::IndexStmt* unsafe_arena_release_index_stmt(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::int32_t number_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.CreateFunctionStmt create_function_stmt = 78 [json_name = "CreateFunctionStmt"]; - bool has_create_function_stmt() const; - private: - bool _internal_has_create_function_stmt() const; - public: - void clear_create_function_stmt(); - const ::pg_query::CreateFunctionStmt& create_function_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateFunctionStmt* release_create_function_stmt(); - ::pg_query::CreateFunctionStmt* mutable_create_function_stmt(); - void set_allocated_create_function_stmt(::pg_query::CreateFunctionStmt* create_function_stmt); - private: - const ::pg_query::CreateFunctionStmt& _internal_create_function_stmt() const; - ::pg_query::CreateFunctionStmt* _internal_mutable_create_function_stmt(); - public: - void unsafe_arena_set_allocated_create_function_stmt( - ::pg_query::CreateFunctionStmt* create_function_stmt); - ::pg_query::CreateFunctionStmt* unsafe_arena_release_create_function_stmt(); +class NotifyStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.NotifyStmt) */ { + public: + inline NotifyStmt() : NotifyStmt(nullptr) {} + ~NotifyStmt() override; + template + explicit PROTOBUF_CONSTEXPR NotifyStmt(::google::protobuf::internal::ConstantInitialized); - // .pg_query.AlterFunctionStmt alter_function_stmt = 79 [json_name = "AlterFunctionStmt"]; - bool has_alter_function_stmt() const; - private: - bool _internal_has_alter_function_stmt() const; - public: - void clear_alter_function_stmt(); - const ::pg_query::AlterFunctionStmt& alter_function_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterFunctionStmt* release_alter_function_stmt(); - ::pg_query::AlterFunctionStmt* mutable_alter_function_stmt(); - void set_allocated_alter_function_stmt(::pg_query::AlterFunctionStmt* alter_function_stmt); - private: - const ::pg_query::AlterFunctionStmt& _internal_alter_function_stmt() const; - ::pg_query::AlterFunctionStmt* _internal_mutable_alter_function_stmt(); - public: - void unsafe_arena_set_allocated_alter_function_stmt( - ::pg_query::AlterFunctionStmt* alter_function_stmt); - ::pg_query::AlterFunctionStmt* unsafe_arena_release_alter_function_stmt(); + inline NotifyStmt(const NotifyStmt& from) + : NotifyStmt(nullptr, from) {} + NotifyStmt(NotifyStmt&& from) noexcept + : NotifyStmt() { + *this = ::std::move(from); + } - // .pg_query.DoStmt do_stmt = 80 [json_name = "DoStmt"]; - bool has_do_stmt() const; - private: - bool _internal_has_do_stmt() const; - public: - void clear_do_stmt(); - const ::pg_query::DoStmt& do_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DoStmt* release_do_stmt(); - ::pg_query::DoStmt* mutable_do_stmt(); - void set_allocated_do_stmt(::pg_query::DoStmt* do_stmt); - private: - const ::pg_query::DoStmt& _internal_do_stmt() const; - ::pg_query::DoStmt* _internal_mutable_do_stmt(); - public: - void unsafe_arena_set_allocated_do_stmt( - ::pg_query::DoStmt* do_stmt); - ::pg_query::DoStmt* unsafe_arena_release_do_stmt(); + inline NotifyStmt& operator=(const NotifyStmt& from) { + CopyFrom(from); + return *this; + } + inline NotifyStmt& operator=(NotifyStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.RenameStmt rename_stmt = 81 [json_name = "RenameStmt"]; - bool has_rename_stmt() const; + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const NotifyStmt& default_instance() { + return *internal_default_instance(); + } + static inline const NotifyStmt* internal_default_instance() { + return reinterpret_cast( + &_NotifyStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 211; + + friend void swap(NotifyStmt& a, NotifyStmt& b) { + a.Swap(&b); + } + inline void Swap(NotifyStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(NotifyStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + NotifyStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const NotifyStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const NotifyStmt& from) { + NotifyStmt::MergeImpl(*this, from); + } private: - bool _internal_has_rename_stmt() const; + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void clear_rename_stmt(); - const ::pg_query::RenameStmt& rename_stmt() const; - PROTOBUF_NODISCARD ::pg_query::RenameStmt* release_rename_stmt(); - ::pg_query::RenameStmt* mutable_rename_stmt(); - void set_allocated_rename_stmt(::pg_query::RenameStmt* rename_stmt); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + private: - const ::pg_query::RenameStmt& _internal_rename_stmt() const; - ::pg_query::RenameStmt* _internal_mutable_rename_stmt(); - public: - void unsafe_arena_set_allocated_rename_stmt( - ::pg_query::RenameStmt* rename_stmt); - ::pg_query::RenameStmt* unsafe_arena_release_rename_stmt(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(NotifyStmt* other); - // .pg_query.RuleStmt rule_stmt = 82 [json_name = "RuleStmt"]; - bool has_rule_stmt() const; private: - bool _internal_has_rule_stmt() const; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.NotifyStmt"; + } + protected: + explicit NotifyStmt(::google::protobuf::Arena* arena); + NotifyStmt(::google::protobuf::Arena* arena, const NotifyStmt& from); public: - void clear_rule_stmt(); - const ::pg_query::RuleStmt& rule_stmt() const; - PROTOBUF_NODISCARD ::pg_query::RuleStmt* release_rule_stmt(); - ::pg_query::RuleStmt* mutable_rule_stmt(); - void set_allocated_rule_stmt(::pg_query::RuleStmt* rule_stmt); + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kConditionnameFieldNumber = 1, + kPayloadFieldNumber = 2, + }; + // string conditionname = 1 [json_name = "conditionname"]; + void clear_conditionname() ; + const std::string& conditionname() const; + template + void set_conditionname(Arg_&& arg, Args_... args); + std::string* mutable_conditionname(); + PROTOBUF_NODISCARD std::string* release_conditionname(); + void set_allocated_conditionname(std::string* value); + private: - const ::pg_query::RuleStmt& _internal_rule_stmt() const; - ::pg_query::RuleStmt* _internal_mutable_rule_stmt(); + const std::string& _internal_conditionname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_conditionname( + const std::string& value); + std::string* _internal_mutable_conditionname(); + public: - void unsafe_arena_set_allocated_rule_stmt( - ::pg_query::RuleStmt* rule_stmt); - ::pg_query::RuleStmt* unsafe_arena_release_rule_stmt(); + // string payload = 2 [json_name = "payload"]; + void clear_payload() ; + const std::string& payload() const; + template + void set_payload(Arg_&& arg, Args_... args); + std::string* mutable_payload(); + PROTOBUF_NODISCARD std::string* release_payload(); + void set_allocated_payload(std::string* value); - // .pg_query.NotifyStmt notify_stmt = 83 [json_name = "NotifyStmt"]; - bool has_notify_stmt() const; private: - bool _internal_has_notify_stmt() const; + const std::string& _internal_payload() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_payload( + const std::string& value); + std::string* _internal_mutable_payload(); + public: - void clear_notify_stmt(); - const ::pg_query::NotifyStmt& notify_stmt() const; - PROTOBUF_NODISCARD ::pg_query::NotifyStmt* release_notify_stmt(); - ::pg_query::NotifyStmt* mutable_notify_stmt(); - void set_allocated_notify_stmt(::pg_query::NotifyStmt* notify_stmt); + // @@protoc_insertion_point(class_scope:pg_query.NotifyStmt) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 48, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr conditionname_; + ::google::protobuf::internal::ArenaStringPtr payload_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class LoadStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.LoadStmt) */ { + public: + inline LoadStmt() : LoadStmt(nullptr) {} + ~LoadStmt() override; + template + explicit PROTOBUF_CONSTEXPR LoadStmt(::google::protobuf::internal::ConstantInitialized); + + inline LoadStmt(const LoadStmt& from) + : LoadStmt(nullptr, from) {} + LoadStmt(LoadStmt&& from) noexcept + : LoadStmt() { + *this = ::std::move(from); + } + + inline LoadStmt& operator=(const LoadStmt& from) { + CopyFrom(from); + return *this; + } + inline LoadStmt& operator=(LoadStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const LoadStmt& default_instance() { + return *internal_default_instance(); + } + static inline const LoadStmt* internal_default_instance() { + return reinterpret_cast( + &_LoadStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 220; + + friend void swap(LoadStmt& a, LoadStmt& b) { + a.Swap(&b); + } + inline void Swap(LoadStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(LoadStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + LoadStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const LoadStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const LoadStmt& from) { + LoadStmt::MergeImpl(*this, from); + } private: - const ::pg_query::NotifyStmt& _internal_notify_stmt() const; - ::pg_query::NotifyStmt* _internal_mutable_notify_stmt(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_notify_stmt( - ::pg_query::NotifyStmt* notify_stmt); - ::pg_query::NotifyStmt* unsafe_arena_release_notify_stmt(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.ListenStmt listen_stmt = 84 [json_name = "ListenStmt"]; - bool has_listen_stmt() const; private: - bool _internal_has_listen_stmt() const; - public: - void clear_listen_stmt(); - const ::pg_query::ListenStmt& listen_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ListenStmt* release_listen_stmt(); - ::pg_query::ListenStmt* mutable_listen_stmt(); - void set_allocated_listen_stmt(::pg_query::ListenStmt* listen_stmt); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(LoadStmt* other); + private: - const ::pg_query::ListenStmt& _internal_listen_stmt() const; - ::pg_query::ListenStmt* _internal_mutable_listen_stmt(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.LoadStmt"; + } + protected: + explicit LoadStmt(::google::protobuf::Arena* arena); + LoadStmt(::google::protobuf::Arena* arena, const LoadStmt& from); public: - void unsafe_arena_set_allocated_listen_stmt( - ::pg_query::ListenStmt* listen_stmt); - ::pg_query::ListenStmt* unsafe_arena_release_listen_stmt(); - // .pg_query.UnlistenStmt unlisten_stmt = 85 [json_name = "UnlistenStmt"]; - bool has_unlisten_stmt() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFilenameFieldNumber = 1, + }; + // string filename = 1 [json_name = "filename"]; + void clear_filename() ; + const std::string& filename() const; + template + void set_filename(Arg_&& arg, Args_... args); + std::string* mutable_filename(); + PROTOBUF_NODISCARD std::string* release_filename(); + void set_allocated_filename(std::string* value); + private: - bool _internal_has_unlisten_stmt() const; + const std::string& _internal_filename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_filename( + const std::string& value); + std::string* _internal_mutable_filename(); + public: - void clear_unlisten_stmt(); - const ::pg_query::UnlistenStmt& unlisten_stmt() const; - PROTOBUF_NODISCARD ::pg_query::UnlistenStmt* release_unlisten_stmt(); - ::pg_query::UnlistenStmt* mutable_unlisten_stmt(); - void set_allocated_unlisten_stmt(::pg_query::UnlistenStmt* unlisten_stmt); + // @@protoc_insertion_point(class_scope:pg_query.LoadStmt) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 34, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr filename_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class ListenStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ListenStmt) */ { + public: + inline ListenStmt() : ListenStmt(nullptr) {} + ~ListenStmt() override; + template + explicit PROTOBUF_CONSTEXPR ListenStmt(::google::protobuf::internal::ConstantInitialized); + + inline ListenStmt(const ListenStmt& from) + : ListenStmt(nullptr, from) {} + ListenStmt(ListenStmt&& from) noexcept + : ListenStmt() { + *this = ::std::move(from); + } + + inline ListenStmt& operator=(const ListenStmt& from) { + CopyFrom(from); + return *this; + } + inline ListenStmt& operator=(ListenStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ListenStmt& default_instance() { + return *internal_default_instance(); + } + static inline const ListenStmt* internal_default_instance() { + return reinterpret_cast( + &_ListenStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 212; + + friend void swap(ListenStmt& a, ListenStmt& b) { + a.Swap(&b); + } + inline void Swap(ListenStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ListenStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ListenStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ListenStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ListenStmt& from) { + ListenStmt::MergeImpl(*this, from); + } private: - const ::pg_query::UnlistenStmt& _internal_unlisten_stmt() const; - ::pg_query::UnlistenStmt* _internal_mutable_unlisten_stmt(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_unlisten_stmt( - ::pg_query::UnlistenStmt* unlisten_stmt); - ::pg_query::UnlistenStmt* unsafe_arena_release_unlisten_stmt(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.TransactionStmt transaction_stmt = 86 [json_name = "TransactionStmt"]; - bool has_transaction_stmt() const; private: - bool _internal_has_transaction_stmt() const; - public: - void clear_transaction_stmt(); - const ::pg_query::TransactionStmt& transaction_stmt() const; - PROTOBUF_NODISCARD ::pg_query::TransactionStmt* release_transaction_stmt(); - ::pg_query::TransactionStmt* mutable_transaction_stmt(); - void set_allocated_transaction_stmt(::pg_query::TransactionStmt* transaction_stmt); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(ListenStmt* other); + private: - const ::pg_query::TransactionStmt& _internal_transaction_stmt() const; - ::pg_query::TransactionStmt* _internal_mutable_transaction_stmt(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ListenStmt"; + } + protected: + explicit ListenStmt(::google::protobuf::Arena* arena); + ListenStmt(::google::protobuf::Arena* arena, const ListenStmt& from); public: - void unsafe_arena_set_allocated_transaction_stmt( - ::pg_query::TransactionStmt* transaction_stmt); - ::pg_query::TransactionStmt* unsafe_arena_release_transaction_stmt(); - // .pg_query.ViewStmt view_stmt = 87 [json_name = "ViewStmt"]; - bool has_view_stmt() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kConditionnameFieldNumber = 1, + }; + // string conditionname = 1 [json_name = "conditionname"]; + void clear_conditionname() ; + const std::string& conditionname() const; + template + void set_conditionname(Arg_&& arg, Args_... args); + std::string* mutable_conditionname(); + PROTOBUF_NODISCARD std::string* release_conditionname(); + void set_allocated_conditionname(std::string* value); + private: - bool _internal_has_view_stmt() const; + const std::string& _internal_conditionname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_conditionname( + const std::string& value); + std::string* _internal_mutable_conditionname(); + public: - void clear_view_stmt(); - const ::pg_query::ViewStmt& view_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ViewStmt* release_view_stmt(); - ::pg_query::ViewStmt* mutable_view_stmt(); - void set_allocated_view_stmt(::pg_query::ViewStmt* view_stmt); + // @@protoc_insertion_point(class_scope:pg_query.ListenStmt) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 41, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr conditionname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class JsonFormat final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonFormat) */ { + public: + inline JsonFormat() : JsonFormat(nullptr) {} + ~JsonFormat() override; + template + explicit PROTOBUF_CONSTEXPR JsonFormat(::google::protobuf::internal::ConstantInitialized); + + inline JsonFormat(const JsonFormat& from) + : JsonFormat(nullptr, from) {} + JsonFormat(JsonFormat&& from) noexcept + : JsonFormat() { + *this = ::std::move(from); + } + + inline JsonFormat& operator=(const JsonFormat& from) { + CopyFrom(from); + return *this; + } + inline JsonFormat& operator=(JsonFormat&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const JsonFormat& default_instance() { + return *internal_default_instance(); + } + static inline const JsonFormat* internal_default_instance() { + return reinterpret_cast( + &_JsonFormat_default_instance_); + } + static constexpr int kIndexInFileMessages = + 49; + + friend void swap(JsonFormat& a, JsonFormat& b) { + a.Swap(&b); + } + inline void Swap(JsonFormat* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(JsonFormat* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + JsonFormat* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonFormat& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonFormat& from) { + JsonFormat::MergeImpl(*this, from); + } private: - const ::pg_query::ViewStmt& _internal_view_stmt() const; - ::pg_query::ViewStmt* _internal_mutable_view_stmt(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_view_stmt( - ::pg_query::ViewStmt* view_stmt); - ::pg_query::ViewStmt* unsafe_arena_release_view_stmt(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.LoadStmt load_stmt = 88 [json_name = "LoadStmt"]; - bool has_load_stmt() const; private: - bool _internal_has_load_stmt() const; - public: - void clear_load_stmt(); - const ::pg_query::LoadStmt& load_stmt() const; - PROTOBUF_NODISCARD ::pg_query::LoadStmt* release_load_stmt(); - ::pg_query::LoadStmt* mutable_load_stmt(); - void set_allocated_load_stmt(::pg_query::LoadStmt* load_stmt); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(JsonFormat* other); + private: - const ::pg_query::LoadStmt& _internal_load_stmt() const; - ::pg_query::LoadStmt* _internal_mutable_load_stmt(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonFormat"; + } + protected: + explicit JsonFormat(::google::protobuf::Arena* arena); + JsonFormat(::google::protobuf::Arena* arena, const JsonFormat& from); public: - void unsafe_arena_set_allocated_load_stmt( - ::pg_query::LoadStmt* load_stmt); - ::pg_query::LoadStmt* unsafe_arena_release_load_stmt(); - // .pg_query.CreateDomainStmt create_domain_stmt = 89 [json_name = "CreateDomainStmt"]; - bool has_create_domain_stmt() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFormatTypeFieldNumber = 1, + kEncodingFieldNumber = 2, + kLocationFieldNumber = 3, + }; + // .pg_query.JsonFormatType format_type = 1 [json_name = "format_type"]; + void clear_format_type() ; + ::pg_query::JsonFormatType format_type() const; + void set_format_type(::pg_query::JsonFormatType value); + private: - bool _internal_has_create_domain_stmt() const; + ::pg_query::JsonFormatType _internal_format_type() const; + void _internal_set_format_type(::pg_query::JsonFormatType value); + public: - void clear_create_domain_stmt(); - const ::pg_query::CreateDomainStmt& create_domain_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateDomainStmt* release_create_domain_stmt(); - ::pg_query::CreateDomainStmt* mutable_create_domain_stmt(); - void set_allocated_create_domain_stmt(::pg_query::CreateDomainStmt* create_domain_stmt); + // .pg_query.JsonEncoding encoding = 2 [json_name = "encoding"]; + void clear_encoding() ; + ::pg_query::JsonEncoding encoding() const; + void set_encoding(::pg_query::JsonEncoding value); + private: - const ::pg_query::CreateDomainStmt& _internal_create_domain_stmt() const; - ::pg_query::CreateDomainStmt* _internal_mutable_create_domain_stmt(); + ::pg_query::JsonEncoding _internal_encoding() const; + void _internal_set_encoding(::pg_query::JsonEncoding value); + public: - void unsafe_arena_set_allocated_create_domain_stmt( - ::pg_query::CreateDomainStmt* create_domain_stmt); - ::pg_query::CreateDomainStmt* unsafe_arena_release_create_domain_stmt(); + // int32 location = 3 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // .pg_query.CreatedbStmt createdb_stmt = 90 [json_name = "CreatedbStmt"]; - bool has_createdb_stmt() const; private: - bool _internal_has_createdb_stmt() const; + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + public: - void clear_createdb_stmt(); - const ::pg_query::CreatedbStmt& createdb_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreatedbStmt* release_createdb_stmt(); - ::pg_query::CreatedbStmt* mutable_createdb_stmt(); - void set_allocated_createdb_stmt(::pg_query::CreatedbStmt* createdb_stmt); - private: - const ::pg_query::CreatedbStmt& _internal_createdb_stmt() const; - ::pg_query::CreatedbStmt* _internal_mutable_createdb_stmt(); - public: - void unsafe_arena_set_allocated_createdb_stmt( - ::pg_query::CreatedbStmt* createdb_stmt); - ::pg_query::CreatedbStmt* unsafe_arena_release_createdb_stmt(); + // @@protoc_insertion_point(class_scope:pg_query.JsonFormat) + private: + class _Internal; - // .pg_query.DropdbStmt dropdb_stmt = 91 [json_name = "DropdbStmt"]; - bool has_dropdb_stmt() const; - private: - bool _internal_has_dropdb_stmt() const; - public: - void clear_dropdb_stmt(); - const ::pg_query::DropdbStmt& dropdb_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DropdbStmt* release_dropdb_stmt(); - ::pg_query::DropdbStmt* mutable_dropdb_stmt(); - void set_allocated_dropdb_stmt(::pg_query::DropdbStmt* dropdb_stmt); - private: - const ::pg_query::DropdbStmt& _internal_dropdb_stmt() const; - ::pg_query::DropdbStmt* _internal_mutable_dropdb_stmt(); - public: - void unsafe_arena_set_allocated_dropdb_stmt( - ::pg_query::DropdbStmt* dropdb_stmt); - ::pg_query::DropdbStmt* unsafe_arena_release_dropdb_stmt(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.VacuumStmt vacuum_stmt = 92 [json_name = "VacuumStmt"]; - bool has_vacuum_stmt() const; - private: - bool _internal_has_vacuum_stmt() const; - public: - void clear_vacuum_stmt(); - const ::pg_query::VacuumStmt& vacuum_stmt() const; - PROTOBUF_NODISCARD ::pg_query::VacuumStmt* release_vacuum_stmt(); - ::pg_query::VacuumStmt* mutable_vacuum_stmt(); - void set_allocated_vacuum_stmt(::pg_query::VacuumStmt* vacuum_stmt); - private: - const ::pg_query::VacuumStmt& _internal_vacuum_stmt() const; - ::pg_query::VacuumStmt* _internal_mutable_vacuum_stmt(); - public: - void unsafe_arena_set_allocated_vacuum_stmt( - ::pg_query::VacuumStmt* vacuum_stmt); - ::pg_query::VacuumStmt* unsafe_arena_release_vacuum_stmt(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + int format_type_; + int encoding_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.ExplainStmt explain_stmt = 93 [json_name = "ExplainStmt"]; - bool has_explain_stmt() const; - private: - bool _internal_has_explain_stmt() const; - public: - void clear_explain_stmt(); - const ::pg_query::ExplainStmt& explain_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ExplainStmt* release_explain_stmt(); - ::pg_query::ExplainStmt* mutable_explain_stmt(); - void set_allocated_explain_stmt(::pg_query::ExplainStmt* explain_stmt); - private: - const ::pg_query::ExplainStmt& _internal_explain_stmt() const; - ::pg_query::ExplainStmt* _internal_mutable_explain_stmt(); - public: - void unsafe_arena_set_allocated_explain_stmt( - ::pg_query::ExplainStmt* explain_stmt); - ::pg_query::ExplainStmt* unsafe_arena_release_explain_stmt(); +class Integer final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Integer) */ { + public: + inline Integer() : Integer(nullptr) {} + ~Integer() override; + template + explicit PROTOBUF_CONSTEXPR Integer(::google::protobuf::internal::ConstantInitialized); - // .pg_query.CreateTableAsStmt create_table_as_stmt = 94 [json_name = "CreateTableAsStmt"]; - bool has_create_table_as_stmt() const; - private: - bool _internal_has_create_table_as_stmt() const; - public: - void clear_create_table_as_stmt(); - const ::pg_query::CreateTableAsStmt& create_table_as_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateTableAsStmt* release_create_table_as_stmt(); - ::pg_query::CreateTableAsStmt* mutable_create_table_as_stmt(); - void set_allocated_create_table_as_stmt(::pg_query::CreateTableAsStmt* create_table_as_stmt); - private: - const ::pg_query::CreateTableAsStmt& _internal_create_table_as_stmt() const; - ::pg_query::CreateTableAsStmt* _internal_mutable_create_table_as_stmt(); - public: - void unsafe_arena_set_allocated_create_table_as_stmt( - ::pg_query::CreateTableAsStmt* create_table_as_stmt); - ::pg_query::CreateTableAsStmt* unsafe_arena_release_create_table_as_stmt(); + inline Integer(const Integer& from) + : Integer(nullptr, from) {} + Integer(Integer&& from) noexcept + : Integer() { + *this = ::std::move(from); + } - // .pg_query.CreateSeqStmt create_seq_stmt = 95 [json_name = "CreateSeqStmt"]; - bool has_create_seq_stmt() const; - private: - bool _internal_has_create_seq_stmt() const; - public: - void clear_create_seq_stmt(); - const ::pg_query::CreateSeqStmt& create_seq_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateSeqStmt* release_create_seq_stmt(); - ::pg_query::CreateSeqStmt* mutable_create_seq_stmt(); - void set_allocated_create_seq_stmt(::pg_query::CreateSeqStmt* create_seq_stmt); - private: - const ::pg_query::CreateSeqStmt& _internal_create_seq_stmt() const; - ::pg_query::CreateSeqStmt* _internal_mutable_create_seq_stmt(); - public: - void unsafe_arena_set_allocated_create_seq_stmt( - ::pg_query::CreateSeqStmt* create_seq_stmt); - ::pg_query::CreateSeqStmt* unsafe_arena_release_create_seq_stmt(); + inline Integer& operator=(const Integer& from) { + CopyFrom(from); + return *this; + } + inline Integer& operator=(Integer&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.AlterSeqStmt alter_seq_stmt = 96 [json_name = "AlterSeqStmt"]; - bool has_alter_seq_stmt() const; - private: - bool _internal_has_alter_seq_stmt() const; - public: - void clear_alter_seq_stmt(); - const ::pg_query::AlterSeqStmt& alter_seq_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterSeqStmt* release_alter_seq_stmt(); - ::pg_query::AlterSeqStmt* mutable_alter_seq_stmt(); - void set_allocated_alter_seq_stmt(::pg_query::AlterSeqStmt* alter_seq_stmt); - private: - const ::pg_query::AlterSeqStmt& _internal_alter_seq_stmt() const; - ::pg_query::AlterSeqStmt* _internal_mutable_alter_seq_stmt(); - public: - void unsafe_arena_set_allocated_alter_seq_stmt( - ::pg_query::AlterSeqStmt* alter_seq_stmt); - ::pg_query::AlterSeqStmt* unsafe_arena_release_alter_seq_stmt(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } - // .pg_query.VariableSetStmt variable_set_stmt = 97 [json_name = "VariableSetStmt"]; - bool has_variable_set_stmt() const; - private: - bool _internal_has_variable_set_stmt() const; - public: - void clear_variable_set_stmt(); - const ::pg_query::VariableSetStmt& variable_set_stmt() const; - PROTOBUF_NODISCARD ::pg_query::VariableSetStmt* release_variable_set_stmt(); - ::pg_query::VariableSetStmt* mutable_variable_set_stmt(); - void set_allocated_variable_set_stmt(::pg_query::VariableSetStmt* variable_set_stmt); - private: - const ::pg_query::VariableSetStmt& _internal_variable_set_stmt() const; - ::pg_query::VariableSetStmt* _internal_mutable_variable_set_stmt(); - public: - void unsafe_arena_set_allocated_variable_set_stmt( - ::pg_query::VariableSetStmt* variable_set_stmt); - ::pg_query::VariableSetStmt* unsafe_arena_release_variable_set_stmt(); + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Integer& default_instance() { + return *internal_default_instance(); + } + static inline const Integer* internal_default_instance() { + return reinterpret_cast( + &_Integer_default_instance_); + } + static constexpr int kIndexInFileMessages = + 3; - // .pg_query.VariableShowStmt variable_show_stmt = 98 [json_name = "VariableShowStmt"]; - bool has_variable_show_stmt() const; - private: - bool _internal_has_variable_show_stmt() const; - public: - void clear_variable_show_stmt(); - const ::pg_query::VariableShowStmt& variable_show_stmt() const; - PROTOBUF_NODISCARD ::pg_query::VariableShowStmt* release_variable_show_stmt(); - ::pg_query::VariableShowStmt* mutable_variable_show_stmt(); - void set_allocated_variable_show_stmt(::pg_query::VariableShowStmt* variable_show_stmt); - private: - const ::pg_query::VariableShowStmt& _internal_variable_show_stmt() const; - ::pg_query::VariableShowStmt* _internal_mutable_variable_show_stmt(); - public: - void unsafe_arena_set_allocated_variable_show_stmt( - ::pg_query::VariableShowStmt* variable_show_stmt); - ::pg_query::VariableShowStmt* unsafe_arena_release_variable_show_stmt(); + friend void swap(Integer& a, Integer& b) { + a.Swap(&b); + } + inline void Swap(Integer* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Integer* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } - // .pg_query.DiscardStmt discard_stmt = 99 [json_name = "DiscardStmt"]; - bool has_discard_stmt() const; - private: - bool _internal_has_discard_stmt() const; - public: - void clear_discard_stmt(); - const ::pg_query::DiscardStmt& discard_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DiscardStmt* release_discard_stmt(); - ::pg_query::DiscardStmt* mutable_discard_stmt(); - void set_allocated_discard_stmt(::pg_query::DiscardStmt* discard_stmt); - private: - const ::pg_query::DiscardStmt& _internal_discard_stmt() const; - ::pg_query::DiscardStmt* _internal_mutable_discard_stmt(); - public: - void unsafe_arena_set_allocated_discard_stmt( - ::pg_query::DiscardStmt* discard_stmt); - ::pg_query::DiscardStmt* unsafe_arena_release_discard_stmt(); + // implements Message ---------------------------------------------- - // .pg_query.CreateTrigStmt create_trig_stmt = 100 [json_name = "CreateTrigStmt"]; - bool has_create_trig_stmt() const; - private: - bool _internal_has_create_trig_stmt() const; - public: - void clear_create_trig_stmt(); - const ::pg_query::CreateTrigStmt& create_trig_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateTrigStmt* release_create_trig_stmt(); - ::pg_query::CreateTrigStmt* mutable_create_trig_stmt(); - void set_allocated_create_trig_stmt(::pg_query::CreateTrigStmt* create_trig_stmt); + Integer* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Integer& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Integer& from) { + Integer::MergeImpl(*this, from); + } private: - const ::pg_query::CreateTrigStmt& _internal_create_trig_stmt() const; - ::pg_query::CreateTrigStmt* _internal_mutable_create_trig_stmt(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_create_trig_stmt( - ::pg_query::CreateTrigStmt* create_trig_stmt); - ::pg_query::CreateTrigStmt* unsafe_arena_release_create_trig_stmt(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; - // .pg_query.CreatePLangStmt create_plang_stmt = 101 [json_name = "CreatePLangStmt"]; - bool has_create_plang_stmt() const; - private: - bool _internal_has_create_plang_stmt() const; - public: - void clear_create_plang_stmt(); - const ::pg_query::CreatePLangStmt& create_plang_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreatePLangStmt* release_create_plang_stmt(); - ::pg_query::CreatePLangStmt* mutable_create_plang_stmt(); - void set_allocated_create_plang_stmt(::pg_query::CreatePLangStmt* create_plang_stmt); - private: - const ::pg_query::CreatePLangStmt& _internal_create_plang_stmt() const; - ::pg_query::CreatePLangStmt* _internal_mutable_create_plang_stmt(); - public: - void unsafe_arena_set_allocated_create_plang_stmt( - ::pg_query::CreatePLangStmt* create_plang_stmt); - ::pg_query::CreatePLangStmt* unsafe_arena_release_create_plang_stmt(); + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.CreateRoleStmt create_role_stmt = 102 [json_name = "CreateRoleStmt"]; - bool has_create_role_stmt() const; - private: - bool _internal_has_create_role_stmt() const; - public: - void clear_create_role_stmt(); - const ::pg_query::CreateRoleStmt& create_role_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateRoleStmt* release_create_role_stmt(); - ::pg_query::CreateRoleStmt* mutable_create_role_stmt(); - void set_allocated_create_role_stmt(::pg_query::CreateRoleStmt* create_role_stmt); private: - const ::pg_query::CreateRoleStmt& _internal_create_role_stmt() const; - ::pg_query::CreateRoleStmt* _internal_mutable_create_role_stmt(); - public: - void unsafe_arena_set_allocated_create_role_stmt( - ::pg_query::CreateRoleStmt* create_role_stmt); - ::pg_query::CreateRoleStmt* unsafe_arena_release_create_role_stmt(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(Integer* other); - // .pg_query.AlterRoleStmt alter_role_stmt = 103 [json_name = "AlterRoleStmt"]; - bool has_alter_role_stmt() const; - private: - bool _internal_has_alter_role_stmt() const; - public: - void clear_alter_role_stmt(); - const ::pg_query::AlterRoleStmt& alter_role_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterRoleStmt* release_alter_role_stmt(); - ::pg_query::AlterRoleStmt* mutable_alter_role_stmt(); - void set_allocated_alter_role_stmt(::pg_query::AlterRoleStmt* alter_role_stmt); private: - const ::pg_query::AlterRoleStmt& _internal_alter_role_stmt() const; - ::pg_query::AlterRoleStmt* _internal_mutable_alter_role_stmt(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Integer"; + } + protected: + explicit Integer(::google::protobuf::Arena* arena); + Integer(::google::protobuf::Arena* arena, const Integer& from); public: - void unsafe_arena_set_allocated_alter_role_stmt( - ::pg_query::AlterRoleStmt* alter_role_stmt); - ::pg_query::AlterRoleStmt* unsafe_arena_release_alter_role_stmt(); - // .pg_query.DropRoleStmt drop_role_stmt = 104 [json_name = "DropRoleStmt"]; - bool has_drop_role_stmt() const; - private: - bool _internal_has_drop_role_stmt() const; - public: - void clear_drop_role_stmt(); - const ::pg_query::DropRoleStmt& drop_role_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DropRoleStmt* release_drop_role_stmt(); - ::pg_query::DropRoleStmt* mutable_drop_role_stmt(); - void set_allocated_drop_role_stmt(::pg_query::DropRoleStmt* drop_role_stmt); - private: - const ::pg_query::DropRoleStmt& _internal_drop_role_stmt() const; - ::pg_query::DropRoleStmt* _internal_mutable_drop_role_stmt(); - public: - void unsafe_arena_set_allocated_drop_role_stmt( - ::pg_query::DropRoleStmt* drop_role_stmt); - ::pg_query::DropRoleStmt* unsafe_arena_release_drop_role_stmt(); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - // .pg_query.LockStmt lock_stmt = 105 [json_name = "LockStmt"]; - bool has_lock_stmt() const; - private: - bool _internal_has_lock_stmt() const; - public: - void clear_lock_stmt(); - const ::pg_query::LockStmt& lock_stmt() const; - PROTOBUF_NODISCARD ::pg_query::LockStmt* release_lock_stmt(); - ::pg_query::LockStmt* mutable_lock_stmt(); - void set_allocated_lock_stmt(::pg_query::LockStmt* lock_stmt); - private: - const ::pg_query::LockStmt& _internal_lock_stmt() const; - ::pg_query::LockStmt* _internal_mutable_lock_stmt(); - public: - void unsafe_arena_set_allocated_lock_stmt( - ::pg_query::LockStmt* lock_stmt); - ::pg_query::LockStmt* unsafe_arena_release_lock_stmt(); + ::google::protobuf::Metadata GetMetadata() const final; - // .pg_query.ConstraintsSetStmt constraints_set_stmt = 106 [json_name = "ConstraintsSetStmt"]; - bool has_constraints_set_stmt() const; - private: - bool _internal_has_constraints_set_stmt() const; - public: - void clear_constraints_set_stmt(); - const ::pg_query::ConstraintsSetStmt& constraints_set_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ConstraintsSetStmt* release_constraints_set_stmt(); - ::pg_query::ConstraintsSetStmt* mutable_constraints_set_stmt(); - void set_allocated_constraints_set_stmt(::pg_query::ConstraintsSetStmt* constraints_set_stmt); - private: - const ::pg_query::ConstraintsSetStmt& _internal_constraints_set_stmt() const; - ::pg_query::ConstraintsSetStmt* _internal_mutable_constraints_set_stmt(); - public: - void unsafe_arena_set_allocated_constraints_set_stmt( - ::pg_query::ConstraintsSetStmt* constraints_set_stmt); - ::pg_query::ConstraintsSetStmt* unsafe_arena_release_constraints_set_stmt(); + // nested types ---------------------------------------------------- - // .pg_query.ReindexStmt reindex_stmt = 107 [json_name = "ReindexStmt"]; - bool has_reindex_stmt() const; - private: - bool _internal_has_reindex_stmt() const; - public: - void clear_reindex_stmt(); - const ::pg_query::ReindexStmt& reindex_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ReindexStmt* release_reindex_stmt(); - ::pg_query::ReindexStmt* mutable_reindex_stmt(); - void set_allocated_reindex_stmt(::pg_query::ReindexStmt* reindex_stmt); - private: - const ::pg_query::ReindexStmt& _internal_reindex_stmt() const; - ::pg_query::ReindexStmt* _internal_mutable_reindex_stmt(); - public: - void unsafe_arena_set_allocated_reindex_stmt( - ::pg_query::ReindexStmt* reindex_stmt); - ::pg_query::ReindexStmt* unsafe_arena_release_reindex_stmt(); + // accessors ------------------------------------------------------- - // .pg_query.CheckPointStmt check_point_stmt = 108 [json_name = "CheckPointStmt"]; - bool has_check_point_stmt() const; - private: - bool _internal_has_check_point_stmt() const; - public: - void clear_check_point_stmt(); - const ::pg_query::CheckPointStmt& check_point_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CheckPointStmt* release_check_point_stmt(); - ::pg_query::CheckPointStmt* mutable_check_point_stmt(); - void set_allocated_check_point_stmt(::pg_query::CheckPointStmt* check_point_stmt); - private: - const ::pg_query::CheckPointStmt& _internal_check_point_stmt() const; - ::pg_query::CheckPointStmt* _internal_mutable_check_point_stmt(); - public: - void unsafe_arena_set_allocated_check_point_stmt( - ::pg_query::CheckPointStmt* check_point_stmt); - ::pg_query::CheckPointStmt* unsafe_arena_release_check_point_stmt(); + enum : int { + kIvalFieldNumber = 1, + }; + // int32 ival = 1; + void clear_ival() ; + ::int32_t ival() const; + void set_ival(::int32_t value); - // .pg_query.CreateSchemaStmt create_schema_stmt = 109 [json_name = "CreateSchemaStmt"]; - bool has_create_schema_stmt() const; - private: - bool _internal_has_create_schema_stmt() const; - public: - void clear_create_schema_stmt(); - const ::pg_query::CreateSchemaStmt& create_schema_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateSchemaStmt* release_create_schema_stmt(); - ::pg_query::CreateSchemaStmt* mutable_create_schema_stmt(); - void set_allocated_create_schema_stmt(::pg_query::CreateSchemaStmt* create_schema_stmt); private: - const ::pg_query::CreateSchemaStmt& _internal_create_schema_stmt() const; - ::pg_query::CreateSchemaStmt* _internal_mutable_create_schema_stmt(); - public: - void unsafe_arena_set_allocated_create_schema_stmt( - ::pg_query::CreateSchemaStmt* create_schema_stmt); - ::pg_query::CreateSchemaStmt* unsafe_arena_release_create_schema_stmt(); + ::int32_t _internal_ival() const; + void _internal_set_ival(::int32_t value); - // .pg_query.AlterDatabaseStmt alter_database_stmt = 110 [json_name = "AlterDatabaseStmt"]; - bool has_alter_database_stmt() const; - private: - bool _internal_has_alter_database_stmt() const; - public: - void clear_alter_database_stmt(); - const ::pg_query::AlterDatabaseStmt& alter_database_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterDatabaseStmt* release_alter_database_stmt(); - ::pg_query::AlterDatabaseStmt* mutable_alter_database_stmt(); - void set_allocated_alter_database_stmt(::pg_query::AlterDatabaseStmt* alter_database_stmt); - private: - const ::pg_query::AlterDatabaseStmt& _internal_alter_database_stmt() const; - ::pg_query::AlterDatabaseStmt* _internal_mutable_alter_database_stmt(); public: - void unsafe_arena_set_allocated_alter_database_stmt( - ::pg_query::AlterDatabaseStmt* alter_database_stmt); - ::pg_query::AlterDatabaseStmt* unsafe_arena_release_alter_database_stmt(); + // @@protoc_insertion_point(class_scope:pg_query.Integer) + private: + class _Internal; - // .pg_query.AlterDatabaseRefreshCollStmt alter_database_refresh_coll_stmt = 111 [json_name = "AlterDatabaseRefreshCollStmt"]; - bool has_alter_database_refresh_coll_stmt() const; - private: - bool _internal_has_alter_database_refresh_coll_stmt() const; - public: - void clear_alter_database_refresh_coll_stmt(); - const ::pg_query::AlterDatabaseRefreshCollStmt& alter_database_refresh_coll_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterDatabaseRefreshCollStmt* release_alter_database_refresh_coll_stmt(); - ::pg_query::AlterDatabaseRefreshCollStmt* mutable_alter_database_refresh_coll_stmt(); - void set_allocated_alter_database_refresh_coll_stmt(::pg_query::AlterDatabaseRefreshCollStmt* alter_database_refresh_coll_stmt); - private: - const ::pg_query::AlterDatabaseRefreshCollStmt& _internal_alter_database_refresh_coll_stmt() const; - ::pg_query::AlterDatabaseRefreshCollStmt* _internal_mutable_alter_database_refresh_coll_stmt(); - public: - void unsafe_arena_set_allocated_alter_database_refresh_coll_stmt( - ::pg_query::AlterDatabaseRefreshCollStmt* alter_database_refresh_coll_stmt); - ::pg_query::AlterDatabaseRefreshCollStmt* unsafe_arena_release_alter_database_refresh_coll_stmt(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.AlterDatabaseSetStmt alter_database_set_stmt = 112 [json_name = "AlterDatabaseSetStmt"]; - bool has_alter_database_set_stmt() const; - private: - bool _internal_has_alter_database_set_stmt() const; - public: - void clear_alter_database_set_stmt(); - const ::pg_query::AlterDatabaseSetStmt& alter_database_set_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterDatabaseSetStmt* release_alter_database_set_stmt(); - ::pg_query::AlterDatabaseSetStmt* mutable_alter_database_set_stmt(); - void set_allocated_alter_database_set_stmt(::pg_query::AlterDatabaseSetStmt* alter_database_set_stmt); - private: - const ::pg_query::AlterDatabaseSetStmt& _internal_alter_database_set_stmt() const; - ::pg_query::AlterDatabaseSetStmt* _internal_mutable_alter_database_set_stmt(); - public: - void unsafe_arena_set_allocated_alter_database_set_stmt( - ::pg_query::AlterDatabaseSetStmt* alter_database_set_stmt); - ::pg_query::AlterDatabaseSetStmt* unsafe_arena_release_alter_database_set_stmt(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::int32_t ival_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.AlterRoleSetStmt alter_role_set_stmt = 113 [json_name = "AlterRoleSetStmt"]; - bool has_alter_role_set_stmt() const; - private: - bool _internal_has_alter_role_set_stmt() const; - public: - void clear_alter_role_set_stmt(); - const ::pg_query::AlterRoleSetStmt& alter_role_set_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterRoleSetStmt* release_alter_role_set_stmt(); - ::pg_query::AlterRoleSetStmt* mutable_alter_role_set_stmt(); - void set_allocated_alter_role_set_stmt(::pg_query::AlterRoleSetStmt* alter_role_set_stmt); - private: - const ::pg_query::AlterRoleSetStmt& _internal_alter_role_set_stmt() const; - ::pg_query::AlterRoleSetStmt* _internal_mutable_alter_role_set_stmt(); - public: - void unsafe_arena_set_allocated_alter_role_set_stmt( - ::pg_query::AlterRoleSetStmt* alter_role_set_stmt); - ::pg_query::AlterRoleSetStmt* unsafe_arena_release_alter_role_set_stmt(); +class InlineCodeBlock final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.InlineCodeBlock) */ { + public: + inline InlineCodeBlock() : InlineCodeBlock(nullptr) {} + ~InlineCodeBlock() override; + template + explicit PROTOBUF_CONSTEXPR InlineCodeBlock(::google::protobuf::internal::ConstantInitialized); - // .pg_query.CreateConversionStmt create_conversion_stmt = 114 [json_name = "CreateConversionStmt"]; - bool has_create_conversion_stmt() const; - private: - bool _internal_has_create_conversion_stmt() const; - public: - void clear_create_conversion_stmt(); - const ::pg_query::CreateConversionStmt& create_conversion_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateConversionStmt* release_create_conversion_stmt(); - ::pg_query::CreateConversionStmt* mutable_create_conversion_stmt(); - void set_allocated_create_conversion_stmt(::pg_query::CreateConversionStmt* create_conversion_stmt); - private: - const ::pg_query::CreateConversionStmt& _internal_create_conversion_stmt() const; - ::pg_query::CreateConversionStmt* _internal_mutable_create_conversion_stmt(); - public: - void unsafe_arena_set_allocated_create_conversion_stmt( - ::pg_query::CreateConversionStmt* create_conversion_stmt); - ::pg_query::CreateConversionStmt* unsafe_arena_release_create_conversion_stmt(); + inline InlineCodeBlock(const InlineCodeBlock& from) + : InlineCodeBlock(nullptr, from) {} + InlineCodeBlock(InlineCodeBlock&& from) noexcept + : InlineCodeBlock() { + *this = ::std::move(from); + } - // .pg_query.CreateCastStmt create_cast_stmt = 115 [json_name = "CreateCastStmt"]; - bool has_create_cast_stmt() const; + inline InlineCodeBlock& operator=(const InlineCodeBlock& from) { + CopyFrom(from); + return *this; + } + inline InlineCodeBlock& operator=(InlineCodeBlock&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const InlineCodeBlock& default_instance() { + return *internal_default_instance(); + } + static inline const InlineCodeBlock* internal_default_instance() { + return reinterpret_cast( + &_InlineCodeBlock_default_instance_); + } + static constexpr int kIndexInFileMessages = + 201; + + friend void swap(InlineCodeBlock& a, InlineCodeBlock& b) { + a.Swap(&b); + } + inline void Swap(InlineCodeBlock* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(InlineCodeBlock* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + InlineCodeBlock* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const InlineCodeBlock& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const InlineCodeBlock& from) { + InlineCodeBlock::MergeImpl(*this, from); + } private: - bool _internal_has_create_cast_stmt() const; + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void clear_create_cast_stmt(); - const ::pg_query::CreateCastStmt& create_cast_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateCastStmt* release_create_cast_stmt(); - ::pg_query::CreateCastStmt* mutable_create_cast_stmt(); - void set_allocated_create_cast_stmt(::pg_query::CreateCastStmt* create_cast_stmt); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + private: - const ::pg_query::CreateCastStmt& _internal_create_cast_stmt() const; - ::pg_query::CreateCastStmt* _internal_mutable_create_cast_stmt(); - public: - void unsafe_arena_set_allocated_create_cast_stmt( - ::pg_query::CreateCastStmt* create_cast_stmt); - ::pg_query::CreateCastStmt* unsafe_arena_release_create_cast_stmt(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(InlineCodeBlock* other); - // .pg_query.CreateOpClassStmt create_op_class_stmt = 116 [json_name = "CreateOpClassStmt"]; - bool has_create_op_class_stmt() const; private: - bool _internal_has_create_op_class_stmt() const; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.InlineCodeBlock"; + } + protected: + explicit InlineCodeBlock(::google::protobuf::Arena* arena); + InlineCodeBlock(::google::protobuf::Arena* arena, const InlineCodeBlock& from); public: - void clear_create_op_class_stmt(); - const ::pg_query::CreateOpClassStmt& create_op_class_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateOpClassStmt* release_create_op_class_stmt(); - ::pg_query::CreateOpClassStmt* mutable_create_op_class_stmt(); - void set_allocated_create_op_class_stmt(::pg_query::CreateOpClassStmt* create_op_class_stmt); + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSourceTextFieldNumber = 1, + kLangOidFieldNumber = 2, + kLangIsTrustedFieldNumber = 3, + kAtomicFieldNumber = 4, + }; + // string source_text = 1 [json_name = "source_text"]; + void clear_source_text() ; + const std::string& source_text() const; + template + void set_source_text(Arg_&& arg, Args_... args); + std::string* mutable_source_text(); + PROTOBUF_NODISCARD std::string* release_source_text(); + void set_allocated_source_text(std::string* value); + private: - const ::pg_query::CreateOpClassStmt& _internal_create_op_class_stmt() const; - ::pg_query::CreateOpClassStmt* _internal_mutable_create_op_class_stmt(); + const std::string& _internal_source_text() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_source_text( + const std::string& value); + std::string* _internal_mutable_source_text(); + public: - void unsafe_arena_set_allocated_create_op_class_stmt( - ::pg_query::CreateOpClassStmt* create_op_class_stmt); - ::pg_query::CreateOpClassStmt* unsafe_arena_release_create_op_class_stmt(); + // uint32 lang_oid = 2 [json_name = "langOid"]; + void clear_lang_oid() ; + ::uint32_t lang_oid() const; + void set_lang_oid(::uint32_t value); - // .pg_query.CreateOpFamilyStmt create_op_family_stmt = 117 [json_name = "CreateOpFamilyStmt"]; - bool has_create_op_family_stmt() const; private: - bool _internal_has_create_op_family_stmt() const; + ::uint32_t _internal_lang_oid() const; + void _internal_set_lang_oid(::uint32_t value); + public: - void clear_create_op_family_stmt(); - const ::pg_query::CreateOpFamilyStmt& create_op_family_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateOpFamilyStmt* release_create_op_family_stmt(); - ::pg_query::CreateOpFamilyStmt* mutable_create_op_family_stmt(); - void set_allocated_create_op_family_stmt(::pg_query::CreateOpFamilyStmt* create_op_family_stmt); + // bool lang_is_trusted = 3 [json_name = "langIsTrusted"]; + void clear_lang_is_trusted() ; + bool lang_is_trusted() const; + void set_lang_is_trusted(bool value); + private: - const ::pg_query::CreateOpFamilyStmt& _internal_create_op_family_stmt() const; - ::pg_query::CreateOpFamilyStmt* _internal_mutable_create_op_family_stmt(); + bool _internal_lang_is_trusted() const; + void _internal_set_lang_is_trusted(bool value); + public: - void unsafe_arena_set_allocated_create_op_family_stmt( - ::pg_query::CreateOpFamilyStmt* create_op_family_stmt); - ::pg_query::CreateOpFamilyStmt* unsafe_arena_release_create_op_family_stmt(); + // bool atomic = 4 [json_name = "atomic"]; + void clear_atomic() ; + bool atomic() const; + void set_atomic(bool value); - // .pg_query.AlterOpFamilyStmt alter_op_family_stmt = 118 [json_name = "AlterOpFamilyStmt"]; - bool has_alter_op_family_stmt() const; private: - bool _internal_has_alter_op_family_stmt() const; - public: - void clear_alter_op_family_stmt(); - const ::pg_query::AlterOpFamilyStmt& alter_op_family_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterOpFamilyStmt* release_alter_op_family_stmt(); - ::pg_query::AlterOpFamilyStmt* mutable_alter_op_family_stmt(); - void set_allocated_alter_op_family_stmt(::pg_query::AlterOpFamilyStmt* alter_op_family_stmt); - private: - const ::pg_query::AlterOpFamilyStmt& _internal_alter_op_family_stmt() const; - ::pg_query::AlterOpFamilyStmt* _internal_mutable_alter_op_family_stmt(); - public: - void unsafe_arena_set_allocated_alter_op_family_stmt( - ::pg_query::AlterOpFamilyStmt* alter_op_family_stmt); - ::pg_query::AlterOpFamilyStmt* unsafe_arena_release_alter_op_family_stmt(); + bool _internal_atomic() const; + void _internal_set_atomic(bool value); - // .pg_query.PrepareStmt prepare_stmt = 119 [json_name = "PrepareStmt"]; - bool has_prepare_stmt() const; - private: - bool _internal_has_prepare_stmt() const; - public: - void clear_prepare_stmt(); - const ::pg_query::PrepareStmt& prepare_stmt() const; - PROTOBUF_NODISCARD ::pg_query::PrepareStmt* release_prepare_stmt(); - ::pg_query::PrepareStmt* mutable_prepare_stmt(); - void set_allocated_prepare_stmt(::pg_query::PrepareStmt* prepare_stmt); - private: - const ::pg_query::PrepareStmt& _internal_prepare_stmt() const; - ::pg_query::PrepareStmt* _internal_mutable_prepare_stmt(); public: - void unsafe_arena_set_allocated_prepare_stmt( - ::pg_query::PrepareStmt* prepare_stmt); - ::pg_query::PrepareStmt* unsafe_arena_release_prepare_stmt(); + // @@protoc_insertion_point(class_scope:pg_query.InlineCodeBlock) + private: + class _Internal; - // .pg_query.ExecuteStmt execute_stmt = 120 [json_name = "ExecuteStmt"]; - bool has_execute_stmt() const; - private: - bool _internal_has_execute_stmt() const; - public: - void clear_execute_stmt(); - const ::pg_query::ExecuteStmt& execute_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ExecuteStmt* release_execute_stmt(); - ::pg_query::ExecuteStmt* mutable_execute_stmt(); - void set_allocated_execute_stmt(::pg_query::ExecuteStmt* execute_stmt); - private: - const ::pg_query::ExecuteStmt& _internal_execute_stmt() const; - ::pg_query::ExecuteStmt* _internal_mutable_execute_stmt(); - public: - void unsafe_arena_set_allocated_execute_stmt( - ::pg_query::ExecuteStmt* execute_stmt); - ::pg_query::ExecuteStmt* unsafe_arena_release_execute_stmt(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 0, + 44, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.DeallocateStmt deallocate_stmt = 121 [json_name = "DeallocateStmt"]; - bool has_deallocate_stmt() const; - private: - bool _internal_has_deallocate_stmt() const; - public: - void clear_deallocate_stmt(); - const ::pg_query::DeallocateStmt& deallocate_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DeallocateStmt* release_deallocate_stmt(); - ::pg_query::DeallocateStmt* mutable_deallocate_stmt(); - void set_allocated_deallocate_stmt(::pg_query::DeallocateStmt* deallocate_stmt); - private: - const ::pg_query::DeallocateStmt& _internal_deallocate_stmt() const; - ::pg_query::DeallocateStmt* _internal_mutable_deallocate_stmt(); - public: - void unsafe_arena_set_allocated_deallocate_stmt( - ::pg_query::DeallocateStmt* deallocate_stmt); - ::pg_query::DeallocateStmt* unsafe_arena_release_deallocate_stmt(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr source_text_; + ::uint32_t lang_oid_; + bool lang_is_trusted_; + bool atomic_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.DeclareCursorStmt declare_cursor_stmt = 122 [json_name = "DeclareCursorStmt"]; - bool has_declare_cursor_stmt() const; - private: - bool _internal_has_declare_cursor_stmt() const; - public: - void clear_declare_cursor_stmt(); - const ::pg_query::DeclareCursorStmt& declare_cursor_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DeclareCursorStmt* release_declare_cursor_stmt(); - ::pg_query::DeclareCursorStmt* mutable_declare_cursor_stmt(); - void set_allocated_declare_cursor_stmt(::pg_query::DeclareCursorStmt* declare_cursor_stmt); - private: - const ::pg_query::DeclareCursorStmt& _internal_declare_cursor_stmt() const; - ::pg_query::DeclareCursorStmt* _internal_mutable_declare_cursor_stmt(); - public: - void unsafe_arena_set_allocated_declare_cursor_stmt( - ::pg_query::DeclareCursorStmt* declare_cursor_stmt); - ::pg_query::DeclareCursorStmt* unsafe_arena_release_declare_cursor_stmt(); +class Float final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Float) */ { + public: + inline Float() : Float(nullptr) {} + ~Float() override; + template + explicit PROTOBUF_CONSTEXPR Float(::google::protobuf::internal::ConstantInitialized); - // .pg_query.CreateTableSpaceStmt create_table_space_stmt = 123 [json_name = "CreateTableSpaceStmt"]; - bool has_create_table_space_stmt() const; - private: - bool _internal_has_create_table_space_stmt() const; - public: - void clear_create_table_space_stmt(); - const ::pg_query::CreateTableSpaceStmt& create_table_space_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateTableSpaceStmt* release_create_table_space_stmt(); - ::pg_query::CreateTableSpaceStmt* mutable_create_table_space_stmt(); - void set_allocated_create_table_space_stmt(::pg_query::CreateTableSpaceStmt* create_table_space_stmt); - private: - const ::pg_query::CreateTableSpaceStmt& _internal_create_table_space_stmt() const; - ::pg_query::CreateTableSpaceStmt* _internal_mutable_create_table_space_stmt(); - public: - void unsafe_arena_set_allocated_create_table_space_stmt( - ::pg_query::CreateTableSpaceStmt* create_table_space_stmt); - ::pg_query::CreateTableSpaceStmt* unsafe_arena_release_create_table_space_stmt(); + inline Float(const Float& from) + : Float(nullptr, from) {} + Float(Float&& from) noexcept + : Float() { + *this = ::std::move(from); + } - // .pg_query.DropTableSpaceStmt drop_table_space_stmt = 124 [json_name = "DropTableSpaceStmt"]; - bool has_drop_table_space_stmt() const; - private: - bool _internal_has_drop_table_space_stmt() const; - public: - void clear_drop_table_space_stmt(); - const ::pg_query::DropTableSpaceStmt& drop_table_space_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DropTableSpaceStmt* release_drop_table_space_stmt(); - ::pg_query::DropTableSpaceStmt* mutable_drop_table_space_stmt(); - void set_allocated_drop_table_space_stmt(::pg_query::DropTableSpaceStmt* drop_table_space_stmt); - private: - const ::pg_query::DropTableSpaceStmt& _internal_drop_table_space_stmt() const; - ::pg_query::DropTableSpaceStmt* _internal_mutable_drop_table_space_stmt(); - public: - void unsafe_arena_set_allocated_drop_table_space_stmt( - ::pg_query::DropTableSpaceStmt* drop_table_space_stmt); - ::pg_query::DropTableSpaceStmt* unsafe_arena_release_drop_table_space_stmt(); + inline Float& operator=(const Float& from) { + CopyFrom(from); + return *this; + } + inline Float& operator=(Float&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.AlterObjectDependsStmt alter_object_depends_stmt = 125 [json_name = "AlterObjectDependsStmt"]; - bool has_alter_object_depends_stmt() const; - private: - bool _internal_has_alter_object_depends_stmt() const; - public: - void clear_alter_object_depends_stmt(); - const ::pg_query::AlterObjectDependsStmt& alter_object_depends_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterObjectDependsStmt* release_alter_object_depends_stmt(); - ::pg_query::AlterObjectDependsStmt* mutable_alter_object_depends_stmt(); - void set_allocated_alter_object_depends_stmt(::pg_query::AlterObjectDependsStmt* alter_object_depends_stmt); - private: - const ::pg_query::AlterObjectDependsStmt& _internal_alter_object_depends_stmt() const; - ::pg_query::AlterObjectDependsStmt* _internal_mutable_alter_object_depends_stmt(); - public: - void unsafe_arena_set_allocated_alter_object_depends_stmt( - ::pg_query::AlterObjectDependsStmt* alter_object_depends_stmt); - ::pg_query::AlterObjectDependsStmt* unsafe_arena_release_alter_object_depends_stmt(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } - // .pg_query.AlterObjectSchemaStmt alter_object_schema_stmt = 126 [json_name = "AlterObjectSchemaStmt"]; - bool has_alter_object_schema_stmt() const; - private: - bool _internal_has_alter_object_schema_stmt() const; - public: - void clear_alter_object_schema_stmt(); - const ::pg_query::AlterObjectSchemaStmt& alter_object_schema_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterObjectSchemaStmt* release_alter_object_schema_stmt(); - ::pg_query::AlterObjectSchemaStmt* mutable_alter_object_schema_stmt(); - void set_allocated_alter_object_schema_stmt(::pg_query::AlterObjectSchemaStmt* alter_object_schema_stmt); - private: - const ::pg_query::AlterObjectSchemaStmt& _internal_alter_object_schema_stmt() const; - ::pg_query::AlterObjectSchemaStmt* _internal_mutable_alter_object_schema_stmt(); - public: - void unsafe_arena_set_allocated_alter_object_schema_stmt( - ::pg_query::AlterObjectSchemaStmt* alter_object_schema_stmt); - ::pg_query::AlterObjectSchemaStmt* unsafe_arena_release_alter_object_schema_stmt(); + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Float& default_instance() { + return *internal_default_instance(); + } + static inline const Float* internal_default_instance() { + return reinterpret_cast( + &_Float_default_instance_); + } + static constexpr int kIndexInFileMessages = + 4; - // .pg_query.AlterOwnerStmt alter_owner_stmt = 127 [json_name = "AlterOwnerStmt"]; - bool has_alter_owner_stmt() const; - private: - bool _internal_has_alter_owner_stmt() const; - public: - void clear_alter_owner_stmt(); - const ::pg_query::AlterOwnerStmt& alter_owner_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterOwnerStmt* release_alter_owner_stmt(); - ::pg_query::AlterOwnerStmt* mutable_alter_owner_stmt(); - void set_allocated_alter_owner_stmt(::pg_query::AlterOwnerStmt* alter_owner_stmt); - private: - const ::pg_query::AlterOwnerStmt& _internal_alter_owner_stmt() const; - ::pg_query::AlterOwnerStmt* _internal_mutable_alter_owner_stmt(); - public: - void unsafe_arena_set_allocated_alter_owner_stmt( - ::pg_query::AlterOwnerStmt* alter_owner_stmt); - ::pg_query::AlterOwnerStmt* unsafe_arena_release_alter_owner_stmt(); + friend void swap(Float& a, Float& b) { + a.Swap(&b); + } + inline void Swap(Float* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Float* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } - // .pg_query.AlterOperatorStmt alter_operator_stmt = 128 [json_name = "AlterOperatorStmt"]; - bool has_alter_operator_stmt() const; - private: - bool _internal_has_alter_operator_stmt() const; - public: - void clear_alter_operator_stmt(); - const ::pg_query::AlterOperatorStmt& alter_operator_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterOperatorStmt* release_alter_operator_stmt(); - ::pg_query::AlterOperatorStmt* mutable_alter_operator_stmt(); - void set_allocated_alter_operator_stmt(::pg_query::AlterOperatorStmt* alter_operator_stmt); - private: - const ::pg_query::AlterOperatorStmt& _internal_alter_operator_stmt() const; - ::pg_query::AlterOperatorStmt* _internal_mutable_alter_operator_stmt(); - public: - void unsafe_arena_set_allocated_alter_operator_stmt( - ::pg_query::AlterOperatorStmt* alter_operator_stmt); - ::pg_query::AlterOperatorStmt* unsafe_arena_release_alter_operator_stmt(); + // implements Message ---------------------------------------------- - // .pg_query.AlterTypeStmt alter_type_stmt = 129 [json_name = "AlterTypeStmt"]; - bool has_alter_type_stmt() const; - private: - bool _internal_has_alter_type_stmt() const; - public: - void clear_alter_type_stmt(); - const ::pg_query::AlterTypeStmt& alter_type_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterTypeStmt* release_alter_type_stmt(); - ::pg_query::AlterTypeStmt* mutable_alter_type_stmt(); - void set_allocated_alter_type_stmt(::pg_query::AlterTypeStmt* alter_type_stmt); + Float* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Float& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Float& from) { + Float::MergeImpl(*this, from); + } private: - const ::pg_query::AlterTypeStmt& _internal_alter_type_stmt() const; - ::pg_query::AlterTypeStmt* _internal_mutable_alter_type_stmt(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_alter_type_stmt( - ::pg_query::AlterTypeStmt* alter_type_stmt); - ::pg_query::AlterTypeStmt* unsafe_arena_release_alter_type_stmt(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; - // .pg_query.DropOwnedStmt drop_owned_stmt = 130 [json_name = "DropOwnedStmt"]; - bool has_drop_owned_stmt() const; - private: - bool _internal_has_drop_owned_stmt() const; - public: - void clear_drop_owned_stmt(); - const ::pg_query::DropOwnedStmt& drop_owned_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DropOwnedStmt* release_drop_owned_stmt(); - ::pg_query::DropOwnedStmt* mutable_drop_owned_stmt(); - void set_allocated_drop_owned_stmt(::pg_query::DropOwnedStmt* drop_owned_stmt); - private: - const ::pg_query::DropOwnedStmt& _internal_drop_owned_stmt() const; - ::pg_query::DropOwnedStmt* _internal_mutable_drop_owned_stmt(); - public: - void unsafe_arena_set_allocated_drop_owned_stmt( - ::pg_query::DropOwnedStmt* drop_owned_stmt); - ::pg_query::DropOwnedStmt* unsafe_arena_release_drop_owned_stmt(); + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.ReassignOwnedStmt reassign_owned_stmt = 131 [json_name = "ReassignOwnedStmt"]; - bool has_reassign_owned_stmt() const; - private: - bool _internal_has_reassign_owned_stmt() const; - public: - void clear_reassign_owned_stmt(); - const ::pg_query::ReassignOwnedStmt& reassign_owned_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ReassignOwnedStmt* release_reassign_owned_stmt(); - ::pg_query::ReassignOwnedStmt* mutable_reassign_owned_stmt(); - void set_allocated_reassign_owned_stmt(::pg_query::ReassignOwnedStmt* reassign_owned_stmt); private: - const ::pg_query::ReassignOwnedStmt& _internal_reassign_owned_stmt() const; - ::pg_query::ReassignOwnedStmt* _internal_mutable_reassign_owned_stmt(); - public: - void unsafe_arena_set_allocated_reassign_owned_stmt( - ::pg_query::ReassignOwnedStmt* reassign_owned_stmt); - ::pg_query::ReassignOwnedStmt* unsafe_arena_release_reassign_owned_stmt(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(Float* other); - // .pg_query.CompositeTypeStmt composite_type_stmt = 132 [json_name = "CompositeTypeStmt"]; - bool has_composite_type_stmt() const; private: - bool _internal_has_composite_type_stmt() const; - public: - void clear_composite_type_stmt(); - const ::pg_query::CompositeTypeStmt& composite_type_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CompositeTypeStmt* release_composite_type_stmt(); - ::pg_query::CompositeTypeStmt* mutable_composite_type_stmt(); - void set_allocated_composite_type_stmt(::pg_query::CompositeTypeStmt* composite_type_stmt); - private: - const ::pg_query::CompositeTypeStmt& _internal_composite_type_stmt() const; - ::pg_query::CompositeTypeStmt* _internal_mutable_composite_type_stmt(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Float"; + } + protected: + explicit Float(::google::protobuf::Arena* arena); + Float(::google::protobuf::Arena* arena, const Float& from); public: - void unsafe_arena_set_allocated_composite_type_stmt( - ::pg_query::CompositeTypeStmt* composite_type_stmt); - ::pg_query::CompositeTypeStmt* unsafe_arena_release_composite_type_stmt(); - // .pg_query.CreateEnumStmt create_enum_stmt = 133 [json_name = "CreateEnumStmt"]; - bool has_create_enum_stmt() const; - private: - bool _internal_has_create_enum_stmt() const; - public: - void clear_create_enum_stmt(); - const ::pg_query::CreateEnumStmt& create_enum_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateEnumStmt* release_create_enum_stmt(); - ::pg_query::CreateEnumStmt* mutable_create_enum_stmt(); - void set_allocated_create_enum_stmt(::pg_query::CreateEnumStmt* create_enum_stmt); - private: - const ::pg_query::CreateEnumStmt& _internal_create_enum_stmt() const; - ::pg_query::CreateEnumStmt* _internal_mutable_create_enum_stmt(); - public: - void unsafe_arena_set_allocated_create_enum_stmt( - ::pg_query::CreateEnumStmt* create_enum_stmt); - ::pg_query::CreateEnumStmt* unsafe_arena_release_create_enum_stmt(); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - // .pg_query.CreateRangeStmt create_range_stmt = 134 [json_name = "CreateRangeStmt"]; - bool has_create_range_stmt() const; - private: - bool _internal_has_create_range_stmt() const; - public: - void clear_create_range_stmt(); - const ::pg_query::CreateRangeStmt& create_range_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateRangeStmt* release_create_range_stmt(); - ::pg_query::CreateRangeStmt* mutable_create_range_stmt(); - void set_allocated_create_range_stmt(::pg_query::CreateRangeStmt* create_range_stmt); - private: - const ::pg_query::CreateRangeStmt& _internal_create_range_stmt() const; - ::pg_query::CreateRangeStmt* _internal_mutable_create_range_stmt(); - public: - void unsafe_arena_set_allocated_create_range_stmt( - ::pg_query::CreateRangeStmt* create_range_stmt); - ::pg_query::CreateRangeStmt* unsafe_arena_release_create_range_stmt(); + ::google::protobuf::Metadata GetMetadata() const final; - // .pg_query.AlterEnumStmt alter_enum_stmt = 135 [json_name = "AlterEnumStmt"]; - bool has_alter_enum_stmt() const; - private: - bool _internal_has_alter_enum_stmt() const; - public: - void clear_alter_enum_stmt(); - const ::pg_query::AlterEnumStmt& alter_enum_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterEnumStmt* release_alter_enum_stmt(); - ::pg_query::AlterEnumStmt* mutable_alter_enum_stmt(); - void set_allocated_alter_enum_stmt(::pg_query::AlterEnumStmt* alter_enum_stmt); - private: - const ::pg_query::AlterEnumStmt& _internal_alter_enum_stmt() const; - ::pg_query::AlterEnumStmt* _internal_mutable_alter_enum_stmt(); - public: - void unsafe_arena_set_allocated_alter_enum_stmt( - ::pg_query::AlterEnumStmt* alter_enum_stmt); - ::pg_query::AlterEnumStmt* unsafe_arena_release_alter_enum_stmt(); + // nested types ---------------------------------------------------- - // .pg_query.AlterTSDictionaryStmt alter_tsdictionary_stmt = 136 [json_name = "AlterTSDictionaryStmt"]; - bool has_alter_tsdictionary_stmt() const; - private: - bool _internal_has_alter_tsdictionary_stmt() const; - public: - void clear_alter_tsdictionary_stmt(); - const ::pg_query::AlterTSDictionaryStmt& alter_tsdictionary_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterTSDictionaryStmt* release_alter_tsdictionary_stmt(); - ::pg_query::AlterTSDictionaryStmt* mutable_alter_tsdictionary_stmt(); - void set_allocated_alter_tsdictionary_stmt(::pg_query::AlterTSDictionaryStmt* alter_tsdictionary_stmt); - private: - const ::pg_query::AlterTSDictionaryStmt& _internal_alter_tsdictionary_stmt() const; - ::pg_query::AlterTSDictionaryStmt* _internal_mutable_alter_tsdictionary_stmt(); - public: - void unsafe_arena_set_allocated_alter_tsdictionary_stmt( - ::pg_query::AlterTSDictionaryStmt* alter_tsdictionary_stmt); - ::pg_query::AlterTSDictionaryStmt* unsafe_arena_release_alter_tsdictionary_stmt(); + // accessors ------------------------------------------------------- - // .pg_query.AlterTSConfigurationStmt alter_tsconfiguration_stmt = 137 [json_name = "AlterTSConfigurationStmt"]; - bool has_alter_tsconfiguration_stmt() const; - private: - bool _internal_has_alter_tsconfiguration_stmt() const; - public: - void clear_alter_tsconfiguration_stmt(); - const ::pg_query::AlterTSConfigurationStmt& alter_tsconfiguration_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterTSConfigurationStmt* release_alter_tsconfiguration_stmt(); - ::pg_query::AlterTSConfigurationStmt* mutable_alter_tsconfiguration_stmt(); - void set_allocated_alter_tsconfiguration_stmt(::pg_query::AlterTSConfigurationStmt* alter_tsconfiguration_stmt); - private: - const ::pg_query::AlterTSConfigurationStmt& _internal_alter_tsconfiguration_stmt() const; - ::pg_query::AlterTSConfigurationStmt* _internal_mutable_alter_tsconfiguration_stmt(); - public: - void unsafe_arena_set_allocated_alter_tsconfiguration_stmt( - ::pg_query::AlterTSConfigurationStmt* alter_tsconfiguration_stmt); - ::pg_query::AlterTSConfigurationStmt* unsafe_arena_release_alter_tsconfiguration_stmt(); + enum : int { + kFvalFieldNumber = 1, + }; + // string fval = 1; + void clear_fval() ; + const std::string& fval() const; + template + void set_fval(Arg_&& arg, Args_... args); + std::string* mutable_fval(); + PROTOBUF_NODISCARD std::string* release_fval(); + void set_allocated_fval(std::string* value); - // .pg_query.CreateFdwStmt create_fdw_stmt = 138 [json_name = "CreateFdwStmt"]; - bool has_create_fdw_stmt() const; - private: - bool _internal_has_create_fdw_stmt() const; - public: - void clear_create_fdw_stmt(); - const ::pg_query::CreateFdwStmt& create_fdw_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateFdwStmt* release_create_fdw_stmt(); - ::pg_query::CreateFdwStmt* mutable_create_fdw_stmt(); - void set_allocated_create_fdw_stmt(::pg_query::CreateFdwStmt* create_fdw_stmt); private: - const ::pg_query::CreateFdwStmt& _internal_create_fdw_stmt() const; - ::pg_query::CreateFdwStmt* _internal_mutable_create_fdw_stmt(); - public: - void unsafe_arena_set_allocated_create_fdw_stmt( - ::pg_query::CreateFdwStmt* create_fdw_stmt); - ::pg_query::CreateFdwStmt* unsafe_arena_release_create_fdw_stmt(); + const std::string& _internal_fval() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_fval( + const std::string& value); + std::string* _internal_mutable_fval(); - // .pg_query.AlterFdwStmt alter_fdw_stmt = 139 [json_name = "AlterFdwStmt"]; - bool has_alter_fdw_stmt() const; - private: - bool _internal_has_alter_fdw_stmt() const; - public: - void clear_alter_fdw_stmt(); - const ::pg_query::AlterFdwStmt& alter_fdw_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterFdwStmt* release_alter_fdw_stmt(); - ::pg_query::AlterFdwStmt* mutable_alter_fdw_stmt(); - void set_allocated_alter_fdw_stmt(::pg_query::AlterFdwStmt* alter_fdw_stmt); - private: - const ::pg_query::AlterFdwStmt& _internal_alter_fdw_stmt() const; - ::pg_query::AlterFdwStmt* _internal_mutable_alter_fdw_stmt(); public: - void unsafe_arena_set_allocated_alter_fdw_stmt( - ::pg_query::AlterFdwStmt* alter_fdw_stmt); - ::pg_query::AlterFdwStmt* unsafe_arena_release_alter_fdw_stmt(); + // @@protoc_insertion_point(class_scope:pg_query.Float) + private: + class _Internal; - // .pg_query.CreateForeignServerStmt create_foreign_server_stmt = 140 [json_name = "CreateForeignServerStmt"]; - bool has_create_foreign_server_stmt() const; - private: - bool _internal_has_create_foreign_server_stmt() const; - public: - void clear_create_foreign_server_stmt(); - const ::pg_query::CreateForeignServerStmt& create_foreign_server_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateForeignServerStmt* release_create_foreign_server_stmt(); - ::pg_query::CreateForeignServerStmt* mutable_create_foreign_server_stmt(); - void set_allocated_create_foreign_server_stmt(::pg_query::CreateForeignServerStmt* create_foreign_server_stmt); - private: - const ::pg_query::CreateForeignServerStmt& _internal_create_foreign_server_stmt() const; - ::pg_query::CreateForeignServerStmt* _internal_mutable_create_foreign_server_stmt(); - public: - void unsafe_arena_set_allocated_create_foreign_server_stmt( - ::pg_query::CreateForeignServerStmt* create_foreign_server_stmt); - ::pg_query::CreateForeignServerStmt* unsafe_arena_release_create_foreign_server_stmt(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 27, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.AlterForeignServerStmt alter_foreign_server_stmt = 141 [json_name = "AlterForeignServerStmt"]; - bool has_alter_foreign_server_stmt() const; + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr fval_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class FetchStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.FetchStmt) */ { + public: + inline FetchStmt() : FetchStmt(nullptr) {} + ~FetchStmt() override; + template + explicit PROTOBUF_CONSTEXPR FetchStmt(::google::protobuf::internal::ConstantInitialized); + + inline FetchStmt(const FetchStmt& from) + : FetchStmt(nullptr, from) {} + FetchStmt(FetchStmt&& from) noexcept + : FetchStmt() { + *this = ::std::move(from); + } + + inline FetchStmt& operator=(const FetchStmt& from) { + CopyFrom(from); + return *this; + } + inline FetchStmt& operator=(FetchStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const FetchStmt& default_instance() { + return *internal_default_instance(); + } + static inline const FetchStmt* internal_default_instance() { + return reinterpret_cast( + &_FetchStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 192; + + friend void swap(FetchStmt& a, FetchStmt& b) { + a.Swap(&b); + } + inline void Swap(FetchStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(FetchStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + FetchStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const FetchStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const FetchStmt& from) { + FetchStmt::MergeImpl(*this, from); + } private: - bool _internal_has_alter_foreign_server_stmt() const; + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void clear_alter_foreign_server_stmt(); - const ::pg_query::AlterForeignServerStmt& alter_foreign_server_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterForeignServerStmt* release_alter_foreign_server_stmt(); - ::pg_query::AlterForeignServerStmt* mutable_alter_foreign_server_stmt(); - void set_allocated_alter_foreign_server_stmt(::pg_query::AlterForeignServerStmt* alter_foreign_server_stmt); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + private: - const ::pg_query::AlterForeignServerStmt& _internal_alter_foreign_server_stmt() const; - ::pg_query::AlterForeignServerStmt* _internal_mutable_alter_foreign_server_stmt(); - public: - void unsafe_arena_set_allocated_alter_foreign_server_stmt( - ::pg_query::AlterForeignServerStmt* alter_foreign_server_stmt); - ::pg_query::AlterForeignServerStmt* unsafe_arena_release_alter_foreign_server_stmt(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(FetchStmt* other); - // .pg_query.CreateUserMappingStmt create_user_mapping_stmt = 142 [json_name = "CreateUserMappingStmt"]; - bool has_create_user_mapping_stmt() const; private: - bool _internal_has_create_user_mapping_stmt() const; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.FetchStmt"; + } + protected: + explicit FetchStmt(::google::protobuf::Arena* arena); + FetchStmt(::google::protobuf::Arena* arena, const FetchStmt& from); public: - void clear_create_user_mapping_stmt(); - const ::pg_query::CreateUserMappingStmt& create_user_mapping_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateUserMappingStmt* release_create_user_mapping_stmt(); - ::pg_query::CreateUserMappingStmt* mutable_create_user_mapping_stmt(); - void set_allocated_create_user_mapping_stmt(::pg_query::CreateUserMappingStmt* create_user_mapping_stmt); + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kPortalnameFieldNumber = 3, + kHowManyFieldNumber = 2, + kDirectionFieldNumber = 1, + kIsmoveFieldNumber = 4, + }; + // string portalname = 3 [json_name = "portalname"]; + void clear_portalname() ; + const std::string& portalname() const; + template + void set_portalname(Arg_&& arg, Args_... args); + std::string* mutable_portalname(); + PROTOBUF_NODISCARD std::string* release_portalname(); + void set_allocated_portalname(std::string* value); + private: - const ::pg_query::CreateUserMappingStmt& _internal_create_user_mapping_stmt() const; - ::pg_query::CreateUserMappingStmt* _internal_mutable_create_user_mapping_stmt(); + const std::string& _internal_portalname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_portalname( + const std::string& value); + std::string* _internal_mutable_portalname(); + public: - void unsafe_arena_set_allocated_create_user_mapping_stmt( - ::pg_query::CreateUserMappingStmt* create_user_mapping_stmt); - ::pg_query::CreateUserMappingStmt* unsafe_arena_release_create_user_mapping_stmt(); + // int64 how_many = 2 [json_name = "howMany"]; + void clear_how_many() ; + ::int64_t how_many() const; + void set_how_many(::int64_t value); - // .pg_query.AlterUserMappingStmt alter_user_mapping_stmt = 143 [json_name = "AlterUserMappingStmt"]; - bool has_alter_user_mapping_stmt() const; private: - bool _internal_has_alter_user_mapping_stmt() const; + ::int64_t _internal_how_many() const; + void _internal_set_how_many(::int64_t value); + public: - void clear_alter_user_mapping_stmt(); - const ::pg_query::AlterUserMappingStmt& alter_user_mapping_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterUserMappingStmt* release_alter_user_mapping_stmt(); - ::pg_query::AlterUserMappingStmt* mutable_alter_user_mapping_stmt(); - void set_allocated_alter_user_mapping_stmt(::pg_query::AlterUserMappingStmt* alter_user_mapping_stmt); + // .pg_query.FetchDirection direction = 1 [json_name = "direction"]; + void clear_direction() ; + ::pg_query::FetchDirection direction() const; + void set_direction(::pg_query::FetchDirection value); + private: - const ::pg_query::AlterUserMappingStmt& _internal_alter_user_mapping_stmt() const; - ::pg_query::AlterUserMappingStmt* _internal_mutable_alter_user_mapping_stmt(); + ::pg_query::FetchDirection _internal_direction() const; + void _internal_set_direction(::pg_query::FetchDirection value); + public: - void unsafe_arena_set_allocated_alter_user_mapping_stmt( - ::pg_query::AlterUserMappingStmt* alter_user_mapping_stmt); - ::pg_query::AlterUserMappingStmt* unsafe_arena_release_alter_user_mapping_stmt(); + // bool ismove = 4 [json_name = "ismove"]; + void clear_ismove() ; + bool ismove() const; + void set_ismove(bool value); - // .pg_query.DropUserMappingStmt drop_user_mapping_stmt = 144 [json_name = "DropUserMappingStmt"]; - bool has_drop_user_mapping_stmt() const; private: - bool _internal_has_drop_user_mapping_stmt() const; + bool _internal_ismove() const; + void _internal_set_ismove(bool value); + public: - void clear_drop_user_mapping_stmt(); - const ::pg_query::DropUserMappingStmt& drop_user_mapping_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DropUserMappingStmt* release_drop_user_mapping_stmt(); - ::pg_query::DropUserMappingStmt* mutable_drop_user_mapping_stmt(); - void set_allocated_drop_user_mapping_stmt(::pg_query::DropUserMappingStmt* drop_user_mapping_stmt); - private: - const ::pg_query::DropUserMappingStmt& _internal_drop_user_mapping_stmt() const; - ::pg_query::DropUserMappingStmt* _internal_mutable_drop_user_mapping_stmt(); - public: - void unsafe_arena_set_allocated_drop_user_mapping_stmt( - ::pg_query::DropUserMappingStmt* drop_user_mapping_stmt); - ::pg_query::DropUserMappingStmt* unsafe_arena_release_drop_user_mapping_stmt(); + // @@protoc_insertion_point(class_scope:pg_query.FetchStmt) + private: + class _Internal; - // .pg_query.AlterTableSpaceOptionsStmt alter_table_space_options_stmt = 145 [json_name = "AlterTableSpaceOptionsStmt"]; - bool has_alter_table_space_options_stmt() const; - private: - bool _internal_has_alter_table_space_options_stmt() const; - public: - void clear_alter_table_space_options_stmt(); - const ::pg_query::AlterTableSpaceOptionsStmt& alter_table_space_options_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterTableSpaceOptionsStmt* release_alter_table_space_options_stmt(); - ::pg_query::AlterTableSpaceOptionsStmt* mutable_alter_table_space_options_stmt(); - void set_allocated_alter_table_space_options_stmt(::pg_query::AlterTableSpaceOptionsStmt* alter_table_space_options_stmt); - private: - const ::pg_query::AlterTableSpaceOptionsStmt& _internal_alter_table_space_options_stmt() const; - ::pg_query::AlterTableSpaceOptionsStmt* _internal_mutable_alter_table_space_options_stmt(); - public: - void unsafe_arena_set_allocated_alter_table_space_options_stmt( - ::pg_query::AlterTableSpaceOptionsStmt* alter_table_space_options_stmt); - ::pg_query::AlterTableSpaceOptionsStmt* unsafe_arena_release_alter_table_space_options_stmt(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 0, + 37, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.AlterTableMoveAllStmt alter_table_move_all_stmt = 146 [json_name = "AlterTableMoveAllStmt"]; - bool has_alter_table_move_all_stmt() const; - private: - bool _internal_has_alter_table_move_all_stmt() const; - public: - void clear_alter_table_move_all_stmt(); - const ::pg_query::AlterTableMoveAllStmt& alter_table_move_all_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterTableMoveAllStmt* release_alter_table_move_all_stmt(); - ::pg_query::AlterTableMoveAllStmt* mutable_alter_table_move_all_stmt(); - void set_allocated_alter_table_move_all_stmt(::pg_query::AlterTableMoveAllStmt* alter_table_move_all_stmt); - private: - const ::pg_query::AlterTableMoveAllStmt& _internal_alter_table_move_all_stmt() const; - ::pg_query::AlterTableMoveAllStmt* _internal_mutable_alter_table_move_all_stmt(); - public: - void unsafe_arena_set_allocated_alter_table_move_all_stmt( - ::pg_query::AlterTableMoveAllStmt* alter_table_move_all_stmt); - ::pg_query::AlterTableMoveAllStmt* unsafe_arena_release_alter_table_move_all_stmt(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr portalname_; + ::int64_t how_many_; + int direction_; + bool ismove_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.SecLabelStmt sec_label_stmt = 147 [json_name = "SecLabelStmt"]; - bool has_sec_label_stmt() const; - private: - bool _internal_has_sec_label_stmt() const; - public: - void clear_sec_label_stmt(); - const ::pg_query::SecLabelStmt& sec_label_stmt() const; - PROTOBUF_NODISCARD ::pg_query::SecLabelStmt* release_sec_label_stmt(); - ::pg_query::SecLabelStmt* mutable_sec_label_stmt(); - void set_allocated_sec_label_stmt(::pg_query::SecLabelStmt* sec_label_stmt); - private: - const ::pg_query::SecLabelStmt& _internal_sec_label_stmt() const; - ::pg_query::SecLabelStmt* _internal_mutable_sec_label_stmt(); - public: - void unsafe_arena_set_allocated_sec_label_stmt( - ::pg_query::SecLabelStmt* sec_label_stmt); - ::pg_query::SecLabelStmt* unsafe_arena_release_sec_label_stmt(); +class DropTableSpaceStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DropTableSpaceStmt) */ { + public: + inline DropTableSpaceStmt() : DropTableSpaceStmt(nullptr) {} + ~DropTableSpaceStmt() override; + template + explicit PROTOBUF_CONSTEXPR DropTableSpaceStmt(::google::protobuf::internal::ConstantInitialized); - // .pg_query.CreateForeignTableStmt create_foreign_table_stmt = 148 [json_name = "CreateForeignTableStmt"]; - bool has_create_foreign_table_stmt() const; - private: - bool _internal_has_create_foreign_table_stmt() const; - public: - void clear_create_foreign_table_stmt(); - const ::pg_query::CreateForeignTableStmt& create_foreign_table_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateForeignTableStmt* release_create_foreign_table_stmt(); - ::pg_query::CreateForeignTableStmt* mutable_create_foreign_table_stmt(); - void set_allocated_create_foreign_table_stmt(::pg_query::CreateForeignTableStmt* create_foreign_table_stmt); - private: - const ::pg_query::CreateForeignTableStmt& _internal_create_foreign_table_stmt() const; - ::pg_query::CreateForeignTableStmt* _internal_mutable_create_foreign_table_stmt(); - public: - void unsafe_arena_set_allocated_create_foreign_table_stmt( - ::pg_query::CreateForeignTableStmt* create_foreign_table_stmt); - ::pg_query::CreateForeignTableStmt* unsafe_arena_release_create_foreign_table_stmt(); + inline DropTableSpaceStmt(const DropTableSpaceStmt& from) + : DropTableSpaceStmt(nullptr, from) {} + DropTableSpaceStmt(DropTableSpaceStmt&& from) noexcept + : DropTableSpaceStmt() { + *this = ::std::move(from); + } - // .pg_query.ImportForeignSchemaStmt import_foreign_schema_stmt = 149 [json_name = "ImportForeignSchemaStmt"]; - bool has_import_foreign_schema_stmt() const; - private: - bool _internal_has_import_foreign_schema_stmt() const; - public: - void clear_import_foreign_schema_stmt(); - const ::pg_query::ImportForeignSchemaStmt& import_foreign_schema_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ImportForeignSchemaStmt* release_import_foreign_schema_stmt(); - ::pg_query::ImportForeignSchemaStmt* mutable_import_foreign_schema_stmt(); - void set_allocated_import_foreign_schema_stmt(::pg_query::ImportForeignSchemaStmt* import_foreign_schema_stmt); - private: - const ::pg_query::ImportForeignSchemaStmt& _internal_import_foreign_schema_stmt() const; - ::pg_query::ImportForeignSchemaStmt* _internal_mutable_import_foreign_schema_stmt(); - public: - void unsafe_arena_set_allocated_import_foreign_schema_stmt( - ::pg_query::ImportForeignSchemaStmt* import_foreign_schema_stmt); - ::pg_query::ImportForeignSchemaStmt* unsafe_arena_release_import_foreign_schema_stmt(); + inline DropTableSpaceStmt& operator=(const DropTableSpaceStmt& from) { + CopyFrom(from); + return *this; + } + inline DropTableSpaceStmt& operator=(DropTableSpaceStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.CreateExtensionStmt create_extension_stmt = 150 [json_name = "CreateExtensionStmt"]; - bool has_create_extension_stmt() const; - private: - bool _internal_has_create_extension_stmt() const; - public: - void clear_create_extension_stmt(); - const ::pg_query::CreateExtensionStmt& create_extension_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateExtensionStmt* release_create_extension_stmt(); - ::pg_query::CreateExtensionStmt* mutable_create_extension_stmt(); - void set_allocated_create_extension_stmt(::pg_query::CreateExtensionStmt* create_extension_stmt); - private: - const ::pg_query::CreateExtensionStmt& _internal_create_extension_stmt() const; - ::pg_query::CreateExtensionStmt* _internal_mutable_create_extension_stmt(); - public: - void unsafe_arena_set_allocated_create_extension_stmt( - ::pg_query::CreateExtensionStmt* create_extension_stmt); - ::pg_query::CreateExtensionStmt* unsafe_arena_release_create_extension_stmt(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } - // .pg_query.AlterExtensionStmt alter_extension_stmt = 151 [json_name = "AlterExtensionStmt"]; - bool has_alter_extension_stmt() const; - private: - bool _internal_has_alter_extension_stmt() const; - public: - void clear_alter_extension_stmt(); - const ::pg_query::AlterExtensionStmt& alter_extension_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterExtensionStmt* release_alter_extension_stmt(); - ::pg_query::AlterExtensionStmt* mutable_alter_extension_stmt(); - void set_allocated_alter_extension_stmt(::pg_query::AlterExtensionStmt* alter_extension_stmt); - private: - const ::pg_query::AlterExtensionStmt& _internal_alter_extension_stmt() const; - ::pg_query::AlterExtensionStmt* _internal_mutable_alter_extension_stmt(); - public: - void unsafe_arena_set_allocated_alter_extension_stmt( - ::pg_query::AlterExtensionStmt* alter_extension_stmt); - ::pg_query::AlterExtensionStmt* unsafe_arena_release_alter_extension_stmt(); + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const DropTableSpaceStmt& default_instance() { + return *internal_default_instance(); + } + static inline const DropTableSpaceStmt* internal_default_instance() { + return reinterpret_cast( + &_DropTableSpaceStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 152; - // .pg_query.AlterExtensionContentsStmt alter_extension_contents_stmt = 152 [json_name = "AlterExtensionContentsStmt"]; - bool has_alter_extension_contents_stmt() const; - private: - bool _internal_has_alter_extension_contents_stmt() const; - public: - void clear_alter_extension_contents_stmt(); - const ::pg_query::AlterExtensionContentsStmt& alter_extension_contents_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterExtensionContentsStmt* release_alter_extension_contents_stmt(); - ::pg_query::AlterExtensionContentsStmt* mutable_alter_extension_contents_stmt(); - void set_allocated_alter_extension_contents_stmt(::pg_query::AlterExtensionContentsStmt* alter_extension_contents_stmt); - private: - const ::pg_query::AlterExtensionContentsStmt& _internal_alter_extension_contents_stmt() const; - ::pg_query::AlterExtensionContentsStmt* _internal_mutable_alter_extension_contents_stmt(); - public: - void unsafe_arena_set_allocated_alter_extension_contents_stmt( - ::pg_query::AlterExtensionContentsStmt* alter_extension_contents_stmt); - ::pg_query::AlterExtensionContentsStmt* unsafe_arena_release_alter_extension_contents_stmt(); + friend void swap(DropTableSpaceStmt& a, DropTableSpaceStmt& b) { + a.Swap(&b); + } + inline void Swap(DropTableSpaceStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(DropTableSpaceStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } - // .pg_query.CreateEventTrigStmt create_event_trig_stmt = 153 [json_name = "CreateEventTrigStmt"]; - bool has_create_event_trig_stmt() const; - private: - bool _internal_has_create_event_trig_stmt() const; - public: - void clear_create_event_trig_stmt(); - const ::pg_query::CreateEventTrigStmt& create_event_trig_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateEventTrigStmt* release_create_event_trig_stmt(); - ::pg_query::CreateEventTrigStmt* mutable_create_event_trig_stmt(); - void set_allocated_create_event_trig_stmt(::pg_query::CreateEventTrigStmt* create_event_trig_stmt); - private: - const ::pg_query::CreateEventTrigStmt& _internal_create_event_trig_stmt() const; - ::pg_query::CreateEventTrigStmt* _internal_mutable_create_event_trig_stmt(); - public: - void unsafe_arena_set_allocated_create_event_trig_stmt( - ::pg_query::CreateEventTrigStmt* create_event_trig_stmt); - ::pg_query::CreateEventTrigStmt* unsafe_arena_release_create_event_trig_stmt(); + // implements Message ---------------------------------------------- - // .pg_query.AlterEventTrigStmt alter_event_trig_stmt = 154 [json_name = "AlterEventTrigStmt"]; - bool has_alter_event_trig_stmt() const; - private: - bool _internal_has_alter_event_trig_stmt() const; - public: - void clear_alter_event_trig_stmt(); - const ::pg_query::AlterEventTrigStmt& alter_event_trig_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterEventTrigStmt* release_alter_event_trig_stmt(); - ::pg_query::AlterEventTrigStmt* mutable_alter_event_trig_stmt(); - void set_allocated_alter_event_trig_stmt(::pg_query::AlterEventTrigStmt* alter_event_trig_stmt); + DropTableSpaceStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DropTableSpaceStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DropTableSpaceStmt& from) { + DropTableSpaceStmt::MergeImpl(*this, from); + } private: - const ::pg_query::AlterEventTrigStmt& _internal_alter_event_trig_stmt() const; - ::pg_query::AlterEventTrigStmt* _internal_mutable_alter_event_trig_stmt(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_alter_event_trig_stmt( - ::pg_query::AlterEventTrigStmt* alter_event_trig_stmt); - ::pg_query::AlterEventTrigStmt* unsafe_arena_release_alter_event_trig_stmt(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; - // .pg_query.RefreshMatViewStmt refresh_mat_view_stmt = 155 [json_name = "RefreshMatViewStmt"]; - bool has_refresh_mat_view_stmt() const; - private: - bool _internal_has_refresh_mat_view_stmt() const; - public: - void clear_refresh_mat_view_stmt(); - const ::pg_query::RefreshMatViewStmt& refresh_mat_view_stmt() const; - PROTOBUF_NODISCARD ::pg_query::RefreshMatViewStmt* release_refresh_mat_view_stmt(); - ::pg_query::RefreshMatViewStmt* mutable_refresh_mat_view_stmt(); - void set_allocated_refresh_mat_view_stmt(::pg_query::RefreshMatViewStmt* refresh_mat_view_stmt); - private: - const ::pg_query::RefreshMatViewStmt& _internal_refresh_mat_view_stmt() const; - ::pg_query::RefreshMatViewStmt* _internal_mutable_refresh_mat_view_stmt(); - public: - void unsafe_arena_set_allocated_refresh_mat_view_stmt( - ::pg_query::RefreshMatViewStmt* refresh_mat_view_stmt); - ::pg_query::RefreshMatViewStmt* unsafe_arena_release_refresh_mat_view_stmt(); + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.ReplicaIdentityStmt replica_identity_stmt = 156 [json_name = "ReplicaIdentityStmt"]; - bool has_replica_identity_stmt() const; - private: - bool _internal_has_replica_identity_stmt() const; - public: - void clear_replica_identity_stmt(); - const ::pg_query::ReplicaIdentityStmt& replica_identity_stmt() const; - PROTOBUF_NODISCARD ::pg_query::ReplicaIdentityStmt* release_replica_identity_stmt(); - ::pg_query::ReplicaIdentityStmt* mutable_replica_identity_stmt(); - void set_allocated_replica_identity_stmt(::pg_query::ReplicaIdentityStmt* replica_identity_stmt); private: - const ::pg_query::ReplicaIdentityStmt& _internal_replica_identity_stmt() const; - ::pg_query::ReplicaIdentityStmt* _internal_mutable_replica_identity_stmt(); - public: - void unsafe_arena_set_allocated_replica_identity_stmt( - ::pg_query::ReplicaIdentityStmt* replica_identity_stmt); - ::pg_query::ReplicaIdentityStmt* unsafe_arena_release_replica_identity_stmt(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(DropTableSpaceStmt* other); - // .pg_query.AlterSystemStmt alter_system_stmt = 157 [json_name = "AlterSystemStmt"]; - bool has_alter_system_stmt() const; - private: - bool _internal_has_alter_system_stmt() const; - public: - void clear_alter_system_stmt(); - const ::pg_query::AlterSystemStmt& alter_system_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterSystemStmt* release_alter_system_stmt(); - ::pg_query::AlterSystemStmt* mutable_alter_system_stmt(); - void set_allocated_alter_system_stmt(::pg_query::AlterSystemStmt* alter_system_stmt); private: - const ::pg_query::AlterSystemStmt& _internal_alter_system_stmt() const; - ::pg_query::AlterSystemStmt* _internal_mutable_alter_system_stmt(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DropTableSpaceStmt"; + } + protected: + explicit DropTableSpaceStmt(::google::protobuf::Arena* arena); + DropTableSpaceStmt(::google::protobuf::Arena* arena, const DropTableSpaceStmt& from); public: - void unsafe_arena_set_allocated_alter_system_stmt( - ::pg_query::AlterSystemStmt* alter_system_stmt); - ::pg_query::AlterSystemStmt* unsafe_arena_release_alter_system_stmt(); - // .pg_query.CreatePolicyStmt create_policy_stmt = 158 [json_name = "CreatePolicyStmt"]; - bool has_create_policy_stmt() const; - private: - bool _internal_has_create_policy_stmt() const; - public: - void clear_create_policy_stmt(); - const ::pg_query::CreatePolicyStmt& create_policy_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreatePolicyStmt* release_create_policy_stmt(); - ::pg_query::CreatePolicyStmt* mutable_create_policy_stmt(); - void set_allocated_create_policy_stmt(::pg_query::CreatePolicyStmt* create_policy_stmt); - private: - const ::pg_query::CreatePolicyStmt& _internal_create_policy_stmt() const; - ::pg_query::CreatePolicyStmt* _internal_mutable_create_policy_stmt(); - public: - void unsafe_arena_set_allocated_create_policy_stmt( - ::pg_query::CreatePolicyStmt* create_policy_stmt); - ::pg_query::CreatePolicyStmt* unsafe_arena_release_create_policy_stmt(); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - // .pg_query.AlterPolicyStmt alter_policy_stmt = 159 [json_name = "AlterPolicyStmt"]; - bool has_alter_policy_stmt() const; - private: - bool _internal_has_alter_policy_stmt() const; - public: - void clear_alter_policy_stmt(); - const ::pg_query::AlterPolicyStmt& alter_policy_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterPolicyStmt* release_alter_policy_stmt(); - ::pg_query::AlterPolicyStmt* mutable_alter_policy_stmt(); - void set_allocated_alter_policy_stmt(::pg_query::AlterPolicyStmt* alter_policy_stmt); - private: - const ::pg_query::AlterPolicyStmt& _internal_alter_policy_stmt() const; - ::pg_query::AlterPolicyStmt* _internal_mutable_alter_policy_stmt(); - public: - void unsafe_arena_set_allocated_alter_policy_stmt( - ::pg_query::AlterPolicyStmt* alter_policy_stmt); - ::pg_query::AlterPolicyStmt* unsafe_arena_release_alter_policy_stmt(); + ::google::protobuf::Metadata GetMetadata() const final; - // .pg_query.CreateTransformStmt create_transform_stmt = 160 [json_name = "CreateTransformStmt"]; - bool has_create_transform_stmt() const; - private: - bool _internal_has_create_transform_stmt() const; - public: - void clear_create_transform_stmt(); - const ::pg_query::CreateTransformStmt& create_transform_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateTransformStmt* release_create_transform_stmt(); - ::pg_query::CreateTransformStmt* mutable_create_transform_stmt(); - void set_allocated_create_transform_stmt(::pg_query::CreateTransformStmt* create_transform_stmt); - private: - const ::pg_query::CreateTransformStmt& _internal_create_transform_stmt() const; - ::pg_query::CreateTransformStmt* _internal_mutable_create_transform_stmt(); - public: - void unsafe_arena_set_allocated_create_transform_stmt( - ::pg_query::CreateTransformStmt* create_transform_stmt); - ::pg_query::CreateTransformStmt* unsafe_arena_release_create_transform_stmt(); + // nested types ---------------------------------------------------- - // .pg_query.CreateAmStmt create_am_stmt = 161 [json_name = "CreateAmStmt"]; - bool has_create_am_stmt() const; - private: - bool _internal_has_create_am_stmt() const; - public: - void clear_create_am_stmt(); - const ::pg_query::CreateAmStmt& create_am_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateAmStmt* release_create_am_stmt(); - ::pg_query::CreateAmStmt* mutable_create_am_stmt(); - void set_allocated_create_am_stmt(::pg_query::CreateAmStmt* create_am_stmt); - private: - const ::pg_query::CreateAmStmt& _internal_create_am_stmt() const; - ::pg_query::CreateAmStmt* _internal_mutable_create_am_stmt(); - public: - void unsafe_arena_set_allocated_create_am_stmt( - ::pg_query::CreateAmStmt* create_am_stmt); - ::pg_query::CreateAmStmt* unsafe_arena_release_create_am_stmt(); + // accessors ------------------------------------------------------- - // .pg_query.CreatePublicationStmt create_publication_stmt = 162 [json_name = "CreatePublicationStmt"]; - bool has_create_publication_stmt() const; - private: - bool _internal_has_create_publication_stmt() const; - public: - void clear_create_publication_stmt(); - const ::pg_query::CreatePublicationStmt& create_publication_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreatePublicationStmt* release_create_publication_stmt(); - ::pg_query::CreatePublicationStmt* mutable_create_publication_stmt(); - void set_allocated_create_publication_stmt(::pg_query::CreatePublicationStmt* create_publication_stmt); - private: - const ::pg_query::CreatePublicationStmt& _internal_create_publication_stmt() const; - ::pg_query::CreatePublicationStmt* _internal_mutable_create_publication_stmt(); - public: - void unsafe_arena_set_allocated_create_publication_stmt( - ::pg_query::CreatePublicationStmt* create_publication_stmt); - ::pg_query::CreatePublicationStmt* unsafe_arena_release_create_publication_stmt(); + enum : int { + kTablespacenameFieldNumber = 1, + kMissingOkFieldNumber = 2, + }; + // string tablespacename = 1 [json_name = "tablespacename"]; + void clear_tablespacename() ; + const std::string& tablespacename() const; + template + void set_tablespacename(Arg_&& arg, Args_... args); + std::string* mutable_tablespacename(); + PROTOBUF_NODISCARD std::string* release_tablespacename(); + void set_allocated_tablespacename(std::string* value); - // .pg_query.AlterPublicationStmt alter_publication_stmt = 163 [json_name = "AlterPublicationStmt"]; - bool has_alter_publication_stmt() const; - private: - bool _internal_has_alter_publication_stmt() const; - public: - void clear_alter_publication_stmt(); - const ::pg_query::AlterPublicationStmt& alter_publication_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterPublicationStmt* release_alter_publication_stmt(); - ::pg_query::AlterPublicationStmt* mutable_alter_publication_stmt(); - void set_allocated_alter_publication_stmt(::pg_query::AlterPublicationStmt* alter_publication_stmt); private: - const ::pg_query::AlterPublicationStmt& _internal_alter_publication_stmt() const; - ::pg_query::AlterPublicationStmt* _internal_mutable_alter_publication_stmt(); - public: - void unsafe_arena_set_allocated_alter_publication_stmt( - ::pg_query::AlterPublicationStmt* alter_publication_stmt); - ::pg_query::AlterPublicationStmt* unsafe_arena_release_alter_publication_stmt(); + const std::string& _internal_tablespacename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_tablespacename( + const std::string& value); + std::string* _internal_mutable_tablespacename(); - // .pg_query.CreateSubscriptionStmt create_subscription_stmt = 164 [json_name = "CreateSubscriptionStmt"]; - bool has_create_subscription_stmt() const; - private: - bool _internal_has_create_subscription_stmt() const; - public: - void clear_create_subscription_stmt(); - const ::pg_query::CreateSubscriptionStmt& create_subscription_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateSubscriptionStmt* release_create_subscription_stmt(); - ::pg_query::CreateSubscriptionStmt* mutable_create_subscription_stmt(); - void set_allocated_create_subscription_stmt(::pg_query::CreateSubscriptionStmt* create_subscription_stmt); - private: - const ::pg_query::CreateSubscriptionStmt& _internal_create_subscription_stmt() const; - ::pg_query::CreateSubscriptionStmt* _internal_mutable_create_subscription_stmt(); public: - void unsafe_arena_set_allocated_create_subscription_stmt( - ::pg_query::CreateSubscriptionStmt* create_subscription_stmt); - ::pg_query::CreateSubscriptionStmt* unsafe_arena_release_create_subscription_stmt(); + // bool missing_ok = 2 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // .pg_query.AlterSubscriptionStmt alter_subscription_stmt = 165 [json_name = "AlterSubscriptionStmt"]; - bool has_alter_subscription_stmt() const; - private: - bool _internal_has_alter_subscription_stmt() const; - public: - void clear_alter_subscription_stmt(); - const ::pg_query::AlterSubscriptionStmt& alter_subscription_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterSubscriptionStmt* release_alter_subscription_stmt(); - ::pg_query::AlterSubscriptionStmt* mutable_alter_subscription_stmt(); - void set_allocated_alter_subscription_stmt(::pg_query::AlterSubscriptionStmt* alter_subscription_stmt); private: - const ::pg_query::AlterSubscriptionStmt& _internal_alter_subscription_stmt() const; - ::pg_query::AlterSubscriptionStmt* _internal_mutable_alter_subscription_stmt(); - public: - void unsafe_arena_set_allocated_alter_subscription_stmt( - ::pg_query::AlterSubscriptionStmt* alter_subscription_stmt); - ::pg_query::AlterSubscriptionStmt* unsafe_arena_release_alter_subscription_stmt(); + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); - // .pg_query.DropSubscriptionStmt drop_subscription_stmt = 166 [json_name = "DropSubscriptionStmt"]; - bool has_drop_subscription_stmt() const; - private: - bool _internal_has_drop_subscription_stmt() const; - public: - void clear_drop_subscription_stmt(); - const ::pg_query::DropSubscriptionStmt& drop_subscription_stmt() const; - PROTOBUF_NODISCARD ::pg_query::DropSubscriptionStmt* release_drop_subscription_stmt(); - ::pg_query::DropSubscriptionStmt* mutable_drop_subscription_stmt(); - void set_allocated_drop_subscription_stmt(::pg_query::DropSubscriptionStmt* drop_subscription_stmt); - private: - const ::pg_query::DropSubscriptionStmt& _internal_drop_subscription_stmt() const; - ::pg_query::DropSubscriptionStmt* _internal_mutable_drop_subscription_stmt(); public: - void unsafe_arena_set_allocated_drop_subscription_stmt( - ::pg_query::DropSubscriptionStmt* drop_subscription_stmt); - ::pg_query::DropSubscriptionStmt* unsafe_arena_release_drop_subscription_stmt(); + // @@protoc_insertion_point(class_scope:pg_query.DropTableSpaceStmt) + private: + class _Internal; - // .pg_query.CreateStatsStmt create_stats_stmt = 167 [json_name = "CreateStatsStmt"]; - bool has_create_stats_stmt() const; - private: - bool _internal_has_create_stats_stmt() const; - public: - void clear_create_stats_stmt(); - const ::pg_query::CreateStatsStmt& create_stats_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateStatsStmt* release_create_stats_stmt(); - ::pg_query::CreateStatsStmt* mutable_create_stats_stmt(); - void set_allocated_create_stats_stmt(::pg_query::CreateStatsStmt* create_stats_stmt); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 50, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr tablespacename_; + bool missing_ok_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class DropSubscriptionStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DropSubscriptionStmt) */ { + public: + inline DropSubscriptionStmt() : DropSubscriptionStmt(nullptr) {} + ~DropSubscriptionStmt() override; + template + explicit PROTOBUF_CONSTEXPR DropSubscriptionStmt(::google::protobuf::internal::ConstantInitialized); + + inline DropSubscriptionStmt(const DropSubscriptionStmt& from) + : DropSubscriptionStmt(nullptr, from) {} + DropSubscriptionStmt(DropSubscriptionStmt&& from) noexcept + : DropSubscriptionStmt() { + *this = ::std::move(from); + } + + inline DropSubscriptionStmt& operator=(const DropSubscriptionStmt& from) { + CopyFrom(from); + return *this; + } + inline DropSubscriptionStmt& operator=(DropSubscriptionStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const DropSubscriptionStmt& default_instance() { + return *internal_default_instance(); + } + static inline const DropSubscriptionStmt* internal_default_instance() { + return reinterpret_cast( + &_DropSubscriptionStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 254; + + friend void swap(DropSubscriptionStmt& a, DropSubscriptionStmt& b) { + a.Swap(&b); + } + inline void Swap(DropSubscriptionStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(DropSubscriptionStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + DropSubscriptionStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DropSubscriptionStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DropSubscriptionStmt& from) { + DropSubscriptionStmt::MergeImpl(*this, from); + } private: - const ::pg_query::CreateStatsStmt& _internal_create_stats_stmt() const; - ::pg_query::CreateStatsStmt* _internal_mutable_create_stats_stmt(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_create_stats_stmt( - ::pg_query::CreateStatsStmt* create_stats_stmt); - ::pg_query::CreateStatsStmt* unsafe_arena_release_create_stats_stmt(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.AlterCollationStmt alter_collation_stmt = 168 [json_name = "AlterCollationStmt"]; - bool has_alter_collation_stmt() const; private: - bool _internal_has_alter_collation_stmt() const; - public: - void clear_alter_collation_stmt(); - const ::pg_query::AlterCollationStmt& alter_collation_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterCollationStmt* release_alter_collation_stmt(); - ::pg_query::AlterCollationStmt* mutable_alter_collation_stmt(); - void set_allocated_alter_collation_stmt(::pg_query::AlterCollationStmt* alter_collation_stmt); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(DropSubscriptionStmt* other); + private: - const ::pg_query::AlterCollationStmt& _internal_alter_collation_stmt() const; - ::pg_query::AlterCollationStmt* _internal_mutable_alter_collation_stmt(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DropSubscriptionStmt"; + } + protected: + explicit DropSubscriptionStmt(::google::protobuf::Arena* arena); + DropSubscriptionStmt(::google::protobuf::Arena* arena, const DropSubscriptionStmt& from); public: - void unsafe_arena_set_allocated_alter_collation_stmt( - ::pg_query::AlterCollationStmt* alter_collation_stmt); - ::pg_query::AlterCollationStmt* unsafe_arena_release_alter_collation_stmt(); - // .pg_query.CallStmt call_stmt = 169 [json_name = "CallStmt"]; - bool has_call_stmt() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSubnameFieldNumber = 1, + kMissingOkFieldNumber = 2, + kBehaviorFieldNumber = 3, + }; + // string subname = 1 [json_name = "subname"]; + void clear_subname() ; + const std::string& subname() const; + template + void set_subname(Arg_&& arg, Args_... args); + std::string* mutable_subname(); + PROTOBUF_NODISCARD std::string* release_subname(); + void set_allocated_subname(std::string* value); + private: - bool _internal_has_call_stmt() const; + const std::string& _internal_subname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_subname( + const std::string& value); + std::string* _internal_mutable_subname(); + public: - void clear_call_stmt(); - const ::pg_query::CallStmt& call_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CallStmt* release_call_stmt(); - ::pg_query::CallStmt* mutable_call_stmt(); - void set_allocated_call_stmt(::pg_query::CallStmt* call_stmt); + // bool missing_ok = 2 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); + private: - const ::pg_query::CallStmt& _internal_call_stmt() const; - ::pg_query::CallStmt* _internal_mutable_call_stmt(); + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); + public: - void unsafe_arena_set_allocated_call_stmt( - ::pg_query::CallStmt* call_stmt); - ::pg_query::CallStmt* unsafe_arena_release_call_stmt(); + // .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; + void clear_behavior() ; + ::pg_query::DropBehavior behavior() const; + void set_behavior(::pg_query::DropBehavior value); - // .pg_query.AlterStatsStmt alter_stats_stmt = 170 [json_name = "AlterStatsStmt"]; - bool has_alter_stats_stmt() const; private: - bool _internal_has_alter_stats_stmt() const; + ::pg_query::DropBehavior _internal_behavior() const; + void _internal_set_behavior(::pg_query::DropBehavior value); + public: - void clear_alter_stats_stmt(); - const ::pg_query::AlterStatsStmt& alter_stats_stmt() const; - PROTOBUF_NODISCARD ::pg_query::AlterStatsStmt* release_alter_stats_stmt(); - ::pg_query::AlterStatsStmt* mutable_alter_stats_stmt(); - void set_allocated_alter_stats_stmt(::pg_query::AlterStatsStmt* alter_stats_stmt); - private: - const ::pg_query::AlterStatsStmt& _internal_alter_stats_stmt() const; - ::pg_query::AlterStatsStmt* _internal_mutable_alter_stats_stmt(); - public: - void unsafe_arena_set_allocated_alter_stats_stmt( - ::pg_query::AlterStatsStmt* alter_stats_stmt); - ::pg_query::AlterStatsStmt* unsafe_arena_release_alter_stats_stmt(); + // @@protoc_insertion_point(class_scope:pg_query.DropSubscriptionStmt) + private: + class _Internal; - // .pg_query.A_Expr a_expr = 171 [json_name = "A_Expr"]; - bool has_a_expr() const; - private: - bool _internal_has_a_expr() const; - public: - void clear_a_expr(); - const ::pg_query::A_Expr& a_expr() const; - PROTOBUF_NODISCARD ::pg_query::A_Expr* release_a_expr(); - ::pg_query::A_Expr* mutable_a_expr(); - void set_allocated_a_expr(::pg_query::A_Expr* a_expr); - private: - const ::pg_query::A_Expr& _internal_a_expr() const; - ::pg_query::A_Expr* _internal_mutable_a_expr(); - public: - void unsafe_arena_set_allocated_a_expr( - ::pg_query::A_Expr* a_expr); - ::pg_query::A_Expr* unsafe_arena_release_a_expr(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 0, + 45, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.ColumnRef column_ref = 172 [json_name = "ColumnRef"]; - bool has_column_ref() const; - private: - bool _internal_has_column_ref() const; - public: - void clear_column_ref(); - const ::pg_query::ColumnRef& column_ref() const; - PROTOBUF_NODISCARD ::pg_query::ColumnRef* release_column_ref(); - ::pg_query::ColumnRef* mutable_column_ref(); - void set_allocated_column_ref(::pg_query::ColumnRef* column_ref); - private: - const ::pg_query::ColumnRef& _internal_column_ref() const; - ::pg_query::ColumnRef* _internal_mutable_column_ref(); - public: - void unsafe_arena_set_allocated_column_ref( - ::pg_query::ColumnRef* column_ref); - ::pg_query::ColumnRef* unsafe_arena_release_column_ref(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr subname_; + bool missing_ok_; + int behavior_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.ParamRef param_ref = 173 [json_name = "ParamRef"]; - bool has_param_ref() const; - private: - bool _internal_has_param_ref() const; - public: - void clear_param_ref(); - const ::pg_query::ParamRef& param_ref() const; - PROTOBUF_NODISCARD ::pg_query::ParamRef* release_param_ref(); - ::pg_query::ParamRef* mutable_param_ref(); - void set_allocated_param_ref(::pg_query::ParamRef* param_ref); - private: - const ::pg_query::ParamRef& _internal_param_ref() const; - ::pg_query::ParamRef* _internal_mutable_param_ref(); - public: - void unsafe_arena_set_allocated_param_ref( - ::pg_query::ParamRef* param_ref); - ::pg_query::ParamRef* unsafe_arena_release_param_ref(); +class DiscardStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DiscardStmt) */ { + public: + inline DiscardStmt() : DiscardStmt(nullptr) {} + ~DiscardStmt() override; + template + explicit PROTOBUF_CONSTEXPR DiscardStmt(::google::protobuf::internal::ConstantInitialized); - // .pg_query.FuncCall func_call = 174 [json_name = "FuncCall"]; - bool has_func_call() const; - private: - bool _internal_has_func_call() const; - public: - void clear_func_call(); - const ::pg_query::FuncCall& func_call() const; - PROTOBUF_NODISCARD ::pg_query::FuncCall* release_func_call(); - ::pg_query::FuncCall* mutable_func_call(); - void set_allocated_func_call(::pg_query::FuncCall* func_call); - private: - const ::pg_query::FuncCall& _internal_func_call() const; - ::pg_query::FuncCall* _internal_mutable_func_call(); - public: - void unsafe_arena_set_allocated_func_call( - ::pg_query::FuncCall* func_call); - ::pg_query::FuncCall* unsafe_arena_release_func_call(); + inline DiscardStmt(const DiscardStmt& from) + : DiscardStmt(nullptr, from) {} + DiscardStmt(DiscardStmt&& from) noexcept + : DiscardStmt() { + *this = ::std::move(from); + } - // .pg_query.A_Star a_star = 175 [json_name = "A_Star"]; - bool has_a_star() const; - private: - bool _internal_has_a_star() const; - public: - void clear_a_star(); - const ::pg_query::A_Star& a_star() const; - PROTOBUF_NODISCARD ::pg_query::A_Star* release_a_star(); - ::pg_query::A_Star* mutable_a_star(); - void set_allocated_a_star(::pg_query::A_Star* a_star); - private: - const ::pg_query::A_Star& _internal_a_star() const; - ::pg_query::A_Star* _internal_mutable_a_star(); - public: - void unsafe_arena_set_allocated_a_star( - ::pg_query::A_Star* a_star); - ::pg_query::A_Star* unsafe_arena_release_a_star(); + inline DiscardStmt& operator=(const DiscardStmt& from) { + CopyFrom(from); + return *this; + } + inline DiscardStmt& operator=(DiscardStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.A_Indices a_indices = 176 [json_name = "A_Indices"]; - bool has_a_indices() const; - private: - bool _internal_has_a_indices() const; - public: - void clear_a_indices(); - const ::pg_query::A_Indices& a_indices() const; - PROTOBUF_NODISCARD ::pg_query::A_Indices* release_a_indices(); - ::pg_query::A_Indices* mutable_a_indices(); - void set_allocated_a_indices(::pg_query::A_Indices* a_indices); - private: - const ::pg_query::A_Indices& _internal_a_indices() const; - ::pg_query::A_Indices* _internal_mutable_a_indices(); - public: - void unsafe_arena_set_allocated_a_indices( - ::pg_query::A_Indices* a_indices); - ::pg_query::A_Indices* unsafe_arena_release_a_indices(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } - // .pg_query.A_Indirection a_indirection = 177 [json_name = "A_Indirection"]; - bool has_a_indirection() const; - private: - bool _internal_has_a_indirection() const; - public: - void clear_a_indirection(); - const ::pg_query::A_Indirection& a_indirection() const; - PROTOBUF_NODISCARD ::pg_query::A_Indirection* release_a_indirection(); - ::pg_query::A_Indirection* mutable_a_indirection(); - void set_allocated_a_indirection(::pg_query::A_Indirection* a_indirection); - private: - const ::pg_query::A_Indirection& _internal_a_indirection() const; - ::pg_query::A_Indirection* _internal_mutable_a_indirection(); - public: - void unsafe_arena_set_allocated_a_indirection( - ::pg_query::A_Indirection* a_indirection); - ::pg_query::A_Indirection* unsafe_arena_release_a_indirection(); + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const DiscardStmt& default_instance() { + return *internal_default_instance(); + } + static inline const DiscardStmt* internal_default_instance() { + return reinterpret_cast( + &_DiscardStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 234; - // .pg_query.A_ArrayExpr a_array_expr = 178 [json_name = "A_ArrayExpr"]; - bool has_a_array_expr() const; - private: - bool _internal_has_a_array_expr() const; - public: - void clear_a_array_expr(); - const ::pg_query::A_ArrayExpr& a_array_expr() const; - PROTOBUF_NODISCARD ::pg_query::A_ArrayExpr* release_a_array_expr(); - ::pg_query::A_ArrayExpr* mutable_a_array_expr(); - void set_allocated_a_array_expr(::pg_query::A_ArrayExpr* a_array_expr); - private: - const ::pg_query::A_ArrayExpr& _internal_a_array_expr() const; - ::pg_query::A_ArrayExpr* _internal_mutable_a_array_expr(); - public: - void unsafe_arena_set_allocated_a_array_expr( - ::pg_query::A_ArrayExpr* a_array_expr); - ::pg_query::A_ArrayExpr* unsafe_arena_release_a_array_expr(); + friend void swap(DiscardStmt& a, DiscardStmt& b) { + a.Swap(&b); + } + inline void Swap(DiscardStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(DiscardStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } - // .pg_query.ResTarget res_target = 179 [json_name = "ResTarget"]; - bool has_res_target() const; - private: - bool _internal_has_res_target() const; - public: - void clear_res_target(); - const ::pg_query::ResTarget& res_target() const; - PROTOBUF_NODISCARD ::pg_query::ResTarget* release_res_target(); - ::pg_query::ResTarget* mutable_res_target(); - void set_allocated_res_target(::pg_query::ResTarget* res_target); - private: - const ::pg_query::ResTarget& _internal_res_target() const; - ::pg_query::ResTarget* _internal_mutable_res_target(); - public: - void unsafe_arena_set_allocated_res_target( - ::pg_query::ResTarget* res_target); - ::pg_query::ResTarget* unsafe_arena_release_res_target(); + // implements Message ---------------------------------------------- - // .pg_query.MultiAssignRef multi_assign_ref = 180 [json_name = "MultiAssignRef"]; - bool has_multi_assign_ref() const; - private: - bool _internal_has_multi_assign_ref() const; - public: - void clear_multi_assign_ref(); - const ::pg_query::MultiAssignRef& multi_assign_ref() const; - PROTOBUF_NODISCARD ::pg_query::MultiAssignRef* release_multi_assign_ref(); - ::pg_query::MultiAssignRef* mutable_multi_assign_ref(); - void set_allocated_multi_assign_ref(::pg_query::MultiAssignRef* multi_assign_ref); + DiscardStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DiscardStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DiscardStmt& from) { + DiscardStmt::MergeImpl(*this, from); + } private: - const ::pg_query::MultiAssignRef& _internal_multi_assign_ref() const; - ::pg_query::MultiAssignRef* _internal_mutable_multi_assign_ref(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_multi_assign_ref( - ::pg_query::MultiAssignRef* multi_assign_ref); - ::pg_query::MultiAssignRef* unsafe_arena_release_multi_assign_ref(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; - // .pg_query.TypeCast type_cast = 181 [json_name = "TypeCast"]; - bool has_type_cast() const; - private: - bool _internal_has_type_cast() const; - public: - void clear_type_cast(); - const ::pg_query::TypeCast& type_cast() const; - PROTOBUF_NODISCARD ::pg_query::TypeCast* release_type_cast(); - ::pg_query::TypeCast* mutable_type_cast(); - void set_allocated_type_cast(::pg_query::TypeCast* type_cast); - private: - const ::pg_query::TypeCast& _internal_type_cast() const; - ::pg_query::TypeCast* _internal_mutable_type_cast(); - public: - void unsafe_arena_set_allocated_type_cast( - ::pg_query::TypeCast* type_cast); - ::pg_query::TypeCast* unsafe_arena_release_type_cast(); + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.CollateClause collate_clause = 182 [json_name = "CollateClause"]; - bool has_collate_clause() const; private: - bool _internal_has_collate_clause() const; - public: - void clear_collate_clause(); - const ::pg_query::CollateClause& collate_clause() const; - PROTOBUF_NODISCARD ::pg_query::CollateClause* release_collate_clause(); - ::pg_query::CollateClause* mutable_collate_clause(); - void set_allocated_collate_clause(::pg_query::CollateClause* collate_clause); - private: - const ::pg_query::CollateClause& _internal_collate_clause() const; - ::pg_query::CollateClause* _internal_mutable_collate_clause(); - public: - void unsafe_arena_set_allocated_collate_clause( - ::pg_query::CollateClause* collate_clause); - ::pg_query::CollateClause* unsafe_arena_release_collate_clause(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(DiscardStmt* other); - // .pg_query.SortBy sort_by = 183 [json_name = "SortBy"]; - bool has_sort_by() const; - private: - bool _internal_has_sort_by() const; - public: - void clear_sort_by(); - const ::pg_query::SortBy& sort_by() const; - PROTOBUF_NODISCARD ::pg_query::SortBy* release_sort_by(); - ::pg_query::SortBy* mutable_sort_by(); - void set_allocated_sort_by(::pg_query::SortBy* sort_by); private: - const ::pg_query::SortBy& _internal_sort_by() const; - ::pg_query::SortBy* _internal_mutable_sort_by(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DiscardStmt"; + } + protected: + explicit DiscardStmt(::google::protobuf::Arena* arena); + DiscardStmt(::google::protobuf::Arena* arena, const DiscardStmt& from); public: - void unsafe_arena_set_allocated_sort_by( - ::pg_query::SortBy* sort_by); - ::pg_query::SortBy* unsafe_arena_release_sort_by(); - // .pg_query.WindowDef window_def = 184 [json_name = "WindowDef"]; - bool has_window_def() const; - private: - bool _internal_has_window_def() const; - public: - void clear_window_def(); - const ::pg_query::WindowDef& window_def() const; - PROTOBUF_NODISCARD ::pg_query::WindowDef* release_window_def(); - ::pg_query::WindowDef* mutable_window_def(); - void set_allocated_window_def(::pg_query::WindowDef* window_def); - private: - const ::pg_query::WindowDef& _internal_window_def() const; - ::pg_query::WindowDef* _internal_mutable_window_def(); - public: - void unsafe_arena_set_allocated_window_def( - ::pg_query::WindowDef* window_def); - ::pg_query::WindowDef* unsafe_arena_release_window_def(); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - // .pg_query.RangeSubselect range_subselect = 185 [json_name = "RangeSubselect"]; - bool has_range_subselect() const; - private: - bool _internal_has_range_subselect() const; - public: - void clear_range_subselect(); - const ::pg_query::RangeSubselect& range_subselect() const; - PROTOBUF_NODISCARD ::pg_query::RangeSubselect* release_range_subselect(); - ::pg_query::RangeSubselect* mutable_range_subselect(); - void set_allocated_range_subselect(::pg_query::RangeSubselect* range_subselect); - private: - const ::pg_query::RangeSubselect& _internal_range_subselect() const; - ::pg_query::RangeSubselect* _internal_mutable_range_subselect(); - public: - void unsafe_arena_set_allocated_range_subselect( - ::pg_query::RangeSubselect* range_subselect); - ::pg_query::RangeSubselect* unsafe_arena_release_range_subselect(); + ::google::protobuf::Metadata GetMetadata() const final; - // .pg_query.RangeFunction range_function = 186 [json_name = "RangeFunction"]; - bool has_range_function() const; - private: - bool _internal_has_range_function() const; - public: - void clear_range_function(); - const ::pg_query::RangeFunction& range_function() const; - PROTOBUF_NODISCARD ::pg_query::RangeFunction* release_range_function(); - ::pg_query::RangeFunction* mutable_range_function(); - void set_allocated_range_function(::pg_query::RangeFunction* range_function); - private: - const ::pg_query::RangeFunction& _internal_range_function() const; - ::pg_query::RangeFunction* _internal_mutable_range_function(); - public: - void unsafe_arena_set_allocated_range_function( - ::pg_query::RangeFunction* range_function); - ::pg_query::RangeFunction* unsafe_arena_release_range_function(); + // nested types ---------------------------------------------------- - // .pg_query.RangeTableSample range_table_sample = 187 [json_name = "RangeTableSample"]; - bool has_range_table_sample() const; - private: - bool _internal_has_range_table_sample() const; - public: - void clear_range_table_sample(); - const ::pg_query::RangeTableSample& range_table_sample() const; - PROTOBUF_NODISCARD ::pg_query::RangeTableSample* release_range_table_sample(); - ::pg_query::RangeTableSample* mutable_range_table_sample(); - void set_allocated_range_table_sample(::pg_query::RangeTableSample* range_table_sample); - private: - const ::pg_query::RangeTableSample& _internal_range_table_sample() const; - ::pg_query::RangeTableSample* _internal_mutable_range_table_sample(); - public: - void unsafe_arena_set_allocated_range_table_sample( - ::pg_query::RangeTableSample* range_table_sample); - ::pg_query::RangeTableSample* unsafe_arena_release_range_table_sample(); + // accessors ------------------------------------------------------- - // .pg_query.RangeTableFunc range_table_func = 188 [json_name = "RangeTableFunc"]; - bool has_range_table_func() const; - private: - bool _internal_has_range_table_func() const; - public: - void clear_range_table_func(); - const ::pg_query::RangeTableFunc& range_table_func() const; - PROTOBUF_NODISCARD ::pg_query::RangeTableFunc* release_range_table_func(); - ::pg_query::RangeTableFunc* mutable_range_table_func(); - void set_allocated_range_table_func(::pg_query::RangeTableFunc* range_table_func); - private: - const ::pg_query::RangeTableFunc& _internal_range_table_func() const; - ::pg_query::RangeTableFunc* _internal_mutable_range_table_func(); - public: - void unsafe_arena_set_allocated_range_table_func( - ::pg_query::RangeTableFunc* range_table_func); - ::pg_query::RangeTableFunc* unsafe_arena_release_range_table_func(); + enum : int { + kTargetFieldNumber = 1, + }; + // .pg_query.DiscardMode target = 1 [json_name = "target"]; + void clear_target() ; + ::pg_query::DiscardMode target() const; + void set_target(::pg_query::DiscardMode value); - // .pg_query.RangeTableFuncCol range_table_func_col = 189 [json_name = "RangeTableFuncCol"]; - bool has_range_table_func_col() const; - private: - bool _internal_has_range_table_func_col() const; - public: - void clear_range_table_func_col(); - const ::pg_query::RangeTableFuncCol& range_table_func_col() const; - PROTOBUF_NODISCARD ::pg_query::RangeTableFuncCol* release_range_table_func_col(); - ::pg_query::RangeTableFuncCol* mutable_range_table_func_col(); - void set_allocated_range_table_func_col(::pg_query::RangeTableFuncCol* range_table_func_col); private: - const ::pg_query::RangeTableFuncCol& _internal_range_table_func_col() const; - ::pg_query::RangeTableFuncCol* _internal_mutable_range_table_func_col(); - public: - void unsafe_arena_set_allocated_range_table_func_col( - ::pg_query::RangeTableFuncCol* range_table_func_col); - ::pg_query::RangeTableFuncCol* unsafe_arena_release_range_table_func_col(); + ::pg_query::DiscardMode _internal_target() const; + void _internal_set_target(::pg_query::DiscardMode value); - // .pg_query.TypeName type_name = 190 [json_name = "TypeName"]; - bool has_type_name() const; - private: - bool _internal_has_type_name() const; - public: - void clear_type_name(); - const ::pg_query::TypeName& type_name() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); - ::pg_query::TypeName* mutable_type_name(); - void set_allocated_type_name(::pg_query::TypeName* type_name); - private: - const ::pg_query::TypeName& _internal_type_name() const; - ::pg_query::TypeName* _internal_mutable_type_name(); public: - void unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name); - ::pg_query::TypeName* unsafe_arena_release_type_name(); + // @@protoc_insertion_point(class_scope:pg_query.DiscardStmt) + private: + class _Internal; - // .pg_query.ColumnDef column_def = 191 [json_name = "ColumnDef"]; - bool has_column_def() const; - private: - bool _internal_has_column_def() const; - public: - void clear_column_def(); - const ::pg_query::ColumnDef& column_def() const; - PROTOBUF_NODISCARD ::pg_query::ColumnDef* release_column_def(); - ::pg_query::ColumnDef* mutable_column_def(); - void set_allocated_column_def(::pg_query::ColumnDef* column_def); - private: - const ::pg_query::ColumnDef& _internal_column_def() const; - ::pg_query::ColumnDef* _internal_mutable_column_def(); - public: - void unsafe_arena_set_allocated_column_def( - ::pg_query::ColumnDef* column_def); - ::pg_query::ColumnDef* unsafe_arena_release_column_def(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.IndexElem index_elem = 192 [json_name = "IndexElem"]; - bool has_index_elem() const; - private: - bool _internal_has_index_elem() const; - public: - void clear_index_elem(); - const ::pg_query::IndexElem& index_elem() const; - PROTOBUF_NODISCARD ::pg_query::IndexElem* release_index_elem(); - ::pg_query::IndexElem* mutable_index_elem(); - void set_allocated_index_elem(::pg_query::IndexElem* index_elem); - private: - const ::pg_query::IndexElem& _internal_index_elem() const; - ::pg_query::IndexElem* _internal_mutable_index_elem(); - public: - void unsafe_arena_set_allocated_index_elem( - ::pg_query::IndexElem* index_elem); - ::pg_query::IndexElem* unsafe_arena_release_index_elem(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + int target_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.StatsElem stats_elem = 193 [json_name = "StatsElem"]; - bool has_stats_elem() const; - private: - bool _internal_has_stats_elem() const; - public: - void clear_stats_elem(); - const ::pg_query::StatsElem& stats_elem() const; - PROTOBUF_NODISCARD ::pg_query::StatsElem* release_stats_elem(); - ::pg_query::StatsElem* mutable_stats_elem(); - void set_allocated_stats_elem(::pg_query::StatsElem* stats_elem); - private: - const ::pg_query::StatsElem& _internal_stats_elem() const; - ::pg_query::StatsElem* _internal_mutable_stats_elem(); - public: - void unsafe_arena_set_allocated_stats_elem( - ::pg_query::StatsElem* stats_elem); - ::pg_query::StatsElem* unsafe_arena_release_stats_elem(); +class DeallocateStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DeallocateStmt) */ { + public: + inline DeallocateStmt() : DeallocateStmt(nullptr) {} + ~DeallocateStmt() override; + template + explicit PROTOBUF_CONSTEXPR DeallocateStmt(::google::protobuf::internal::ConstantInitialized); - // .pg_query.Constraint constraint = 194 [json_name = "Constraint"]; - bool has_constraint() const; - private: - bool _internal_has_constraint() const; - public: - void clear_constraint(); - const ::pg_query::Constraint& constraint() const; - PROTOBUF_NODISCARD ::pg_query::Constraint* release_constraint(); - ::pg_query::Constraint* mutable_constraint(); - void set_allocated_constraint(::pg_query::Constraint* constraint); - private: - const ::pg_query::Constraint& _internal_constraint() const; - ::pg_query::Constraint* _internal_mutable_constraint(); - public: - void unsafe_arena_set_allocated_constraint( - ::pg_query::Constraint* constraint); - ::pg_query::Constraint* unsafe_arena_release_constraint(); + inline DeallocateStmt(const DeallocateStmt& from) + : DeallocateStmt(nullptr, from) {} + DeallocateStmt(DeallocateStmt&& from) noexcept + : DeallocateStmt() { + *this = ::std::move(from); + } - // .pg_query.DefElem def_elem = 195 [json_name = "DefElem"]; - bool has_def_elem() const; - private: - bool _internal_has_def_elem() const; - public: - void clear_def_elem(); - const ::pg_query::DefElem& def_elem() const; - PROTOBUF_NODISCARD ::pg_query::DefElem* release_def_elem(); - ::pg_query::DefElem* mutable_def_elem(); - void set_allocated_def_elem(::pg_query::DefElem* def_elem); - private: - const ::pg_query::DefElem& _internal_def_elem() const; - ::pg_query::DefElem* _internal_mutable_def_elem(); - public: - void unsafe_arena_set_allocated_def_elem( - ::pg_query::DefElem* def_elem); - ::pg_query::DefElem* unsafe_arena_release_def_elem(); + inline DeallocateStmt& operator=(const DeallocateStmt& from) { + CopyFrom(from); + return *this; + } + inline DeallocateStmt& operator=(DeallocateStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.RangeTblEntry range_tbl_entry = 196 [json_name = "RangeTblEntry"]; - bool has_range_tbl_entry() const; - private: - bool _internal_has_range_tbl_entry() const; - public: - void clear_range_tbl_entry(); - const ::pg_query::RangeTblEntry& range_tbl_entry() const; - PROTOBUF_NODISCARD ::pg_query::RangeTblEntry* release_range_tbl_entry(); - ::pg_query::RangeTblEntry* mutable_range_tbl_entry(); - void set_allocated_range_tbl_entry(::pg_query::RangeTblEntry* range_tbl_entry); - private: - const ::pg_query::RangeTblEntry& _internal_range_tbl_entry() const; - ::pg_query::RangeTblEntry* _internal_mutable_range_tbl_entry(); - public: - void unsafe_arena_set_allocated_range_tbl_entry( - ::pg_query::RangeTblEntry* range_tbl_entry); - ::pg_query::RangeTblEntry* unsafe_arena_release_range_tbl_entry(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } - // .pg_query.RangeTblFunction range_tbl_function = 197 [json_name = "RangeTblFunction"]; - bool has_range_tbl_function() const; - private: - bool _internal_has_range_tbl_function() const; - public: - void clear_range_tbl_function(); - const ::pg_query::RangeTblFunction& range_tbl_function() const; - PROTOBUF_NODISCARD ::pg_query::RangeTblFunction* release_range_tbl_function(); - ::pg_query::RangeTblFunction* mutable_range_tbl_function(); - void set_allocated_range_tbl_function(::pg_query::RangeTblFunction* range_tbl_function); - private: - const ::pg_query::RangeTblFunction& _internal_range_tbl_function() const; - ::pg_query::RangeTblFunction* _internal_mutable_range_tbl_function(); - public: - void unsafe_arena_set_allocated_range_tbl_function( - ::pg_query::RangeTblFunction* range_tbl_function); - ::pg_query::RangeTblFunction* unsafe_arena_release_range_tbl_function(); + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const DeallocateStmt& default_instance() { + return *internal_default_instance(); + } + static inline const DeallocateStmt* internal_default_instance() { + return reinterpret_cast( + &_DeallocateStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 243; - // .pg_query.TableSampleClause table_sample_clause = 198 [json_name = "TableSampleClause"]; - bool has_table_sample_clause() const; - private: - bool _internal_has_table_sample_clause() const; - public: - void clear_table_sample_clause(); - const ::pg_query::TableSampleClause& table_sample_clause() const; - PROTOBUF_NODISCARD ::pg_query::TableSampleClause* release_table_sample_clause(); - ::pg_query::TableSampleClause* mutable_table_sample_clause(); - void set_allocated_table_sample_clause(::pg_query::TableSampleClause* table_sample_clause); + friend void swap(DeallocateStmt& a, DeallocateStmt& b) { + a.Swap(&b); + } + inline void Swap(DeallocateStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(DeallocateStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + DeallocateStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DeallocateStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DeallocateStmt& from) { + DeallocateStmt::MergeImpl(*this, from); + } private: - const ::pg_query::TableSampleClause& _internal_table_sample_clause() const; - ::pg_query::TableSampleClause* _internal_mutable_table_sample_clause(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_table_sample_clause( - ::pg_query::TableSampleClause* table_sample_clause); - ::pg_query::TableSampleClause* unsafe_arena_release_table_sample_clause(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.WithCheckOption with_check_option = 199 [json_name = "WithCheckOption"]; - bool has_with_check_option() const; private: - bool _internal_has_with_check_option() const; - public: - void clear_with_check_option(); - const ::pg_query::WithCheckOption& with_check_option() const; - PROTOBUF_NODISCARD ::pg_query::WithCheckOption* release_with_check_option(); - ::pg_query::WithCheckOption* mutable_with_check_option(); - void set_allocated_with_check_option(::pg_query::WithCheckOption* with_check_option); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(DeallocateStmt* other); + private: - const ::pg_query::WithCheckOption& _internal_with_check_option() const; - ::pg_query::WithCheckOption* _internal_mutable_with_check_option(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DeallocateStmt"; + } + protected: + explicit DeallocateStmt(::google::protobuf::Arena* arena); + DeallocateStmt(::google::protobuf::Arena* arena, const DeallocateStmt& from); public: - void unsafe_arena_set_allocated_with_check_option( - ::pg_query::WithCheckOption* with_check_option); - ::pg_query::WithCheckOption* unsafe_arena_release_with_check_option(); - // .pg_query.SortGroupClause sort_group_clause = 200 [json_name = "SortGroupClause"]; - bool has_sort_group_clause() const; - private: - bool _internal_has_sort_group_clause() const; - public: - void clear_sort_group_clause(); - const ::pg_query::SortGroupClause& sort_group_clause() const; - PROTOBUF_NODISCARD ::pg_query::SortGroupClause* release_sort_group_clause(); - ::pg_query::SortGroupClause* mutable_sort_group_clause(); - void set_allocated_sort_group_clause(::pg_query::SortGroupClause* sort_group_clause); - private: - const ::pg_query::SortGroupClause& _internal_sort_group_clause() const; - ::pg_query::SortGroupClause* _internal_mutable_sort_group_clause(); - public: - void unsafe_arena_set_allocated_sort_group_clause( - ::pg_query::SortGroupClause* sort_group_clause); - ::pg_query::SortGroupClause* unsafe_arena_release_sort_group_clause(); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - // .pg_query.GroupingSet grouping_set = 201 [json_name = "GroupingSet"]; - bool has_grouping_set() const; - private: - bool _internal_has_grouping_set() const; - public: - void clear_grouping_set(); - const ::pg_query::GroupingSet& grouping_set() const; - PROTOBUF_NODISCARD ::pg_query::GroupingSet* release_grouping_set(); - ::pg_query::GroupingSet* mutable_grouping_set(); - void set_allocated_grouping_set(::pg_query::GroupingSet* grouping_set); - private: - const ::pg_query::GroupingSet& _internal_grouping_set() const; - ::pg_query::GroupingSet* _internal_mutable_grouping_set(); - public: - void unsafe_arena_set_allocated_grouping_set( - ::pg_query::GroupingSet* grouping_set); - ::pg_query::GroupingSet* unsafe_arena_release_grouping_set(); + ::google::protobuf::Metadata GetMetadata() const final; - // .pg_query.WindowClause window_clause = 202 [json_name = "WindowClause"]; - bool has_window_clause() const; - private: - bool _internal_has_window_clause() const; - public: - void clear_window_clause(); - const ::pg_query::WindowClause& window_clause() const; - PROTOBUF_NODISCARD ::pg_query::WindowClause* release_window_clause(); - ::pg_query::WindowClause* mutable_window_clause(); - void set_allocated_window_clause(::pg_query::WindowClause* window_clause); - private: - const ::pg_query::WindowClause& _internal_window_clause() const; - ::pg_query::WindowClause* _internal_mutable_window_clause(); - public: - void unsafe_arena_set_allocated_window_clause( - ::pg_query::WindowClause* window_clause); - ::pg_query::WindowClause* unsafe_arena_release_window_clause(); + // nested types ---------------------------------------------------- - // .pg_query.ObjectWithArgs object_with_args = 203 [json_name = "ObjectWithArgs"]; - bool has_object_with_args() const; - private: - bool _internal_has_object_with_args() const; - public: - void clear_object_with_args(); - const ::pg_query::ObjectWithArgs& object_with_args() const; - PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_object_with_args(); - ::pg_query::ObjectWithArgs* mutable_object_with_args(); - void set_allocated_object_with_args(::pg_query::ObjectWithArgs* object_with_args); - private: - const ::pg_query::ObjectWithArgs& _internal_object_with_args() const; - ::pg_query::ObjectWithArgs* _internal_mutable_object_with_args(); - public: - void unsafe_arena_set_allocated_object_with_args( - ::pg_query::ObjectWithArgs* object_with_args); - ::pg_query::ObjectWithArgs* unsafe_arena_release_object_with_args(); + // accessors ------------------------------------------------------- - // .pg_query.AccessPriv access_priv = 204 [json_name = "AccessPriv"]; - bool has_access_priv() const; - private: - bool _internal_has_access_priv() const; - public: - void clear_access_priv(); - const ::pg_query::AccessPriv& access_priv() const; - PROTOBUF_NODISCARD ::pg_query::AccessPriv* release_access_priv(); - ::pg_query::AccessPriv* mutable_access_priv(); - void set_allocated_access_priv(::pg_query::AccessPriv* access_priv); - private: - const ::pg_query::AccessPriv& _internal_access_priv() const; - ::pg_query::AccessPriv* _internal_mutable_access_priv(); - public: - void unsafe_arena_set_allocated_access_priv( - ::pg_query::AccessPriv* access_priv); - ::pg_query::AccessPriv* unsafe_arena_release_access_priv(); + enum : int { + kNameFieldNumber = 1, + }; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // .pg_query.CreateOpClassItem create_op_class_item = 205 [json_name = "CreateOpClassItem"]; - bool has_create_op_class_item() const; - private: - bool _internal_has_create_op_class_item() const; - public: - void clear_create_op_class_item(); - const ::pg_query::CreateOpClassItem& create_op_class_item() const; - PROTOBUF_NODISCARD ::pg_query::CreateOpClassItem* release_create_op_class_item(); - ::pg_query::CreateOpClassItem* mutable_create_op_class_item(); - void set_allocated_create_op_class_item(::pg_query::CreateOpClassItem* create_op_class_item); private: - const ::pg_query::CreateOpClassItem& _internal_create_op_class_item() const; - ::pg_query::CreateOpClassItem* _internal_mutable_create_op_class_item(); - public: - void unsafe_arena_set_allocated_create_op_class_item( - ::pg_query::CreateOpClassItem* create_op_class_item); - ::pg_query::CreateOpClassItem* unsafe_arena_release_create_op_class_item(); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); - // .pg_query.TableLikeClause table_like_clause = 206 [json_name = "TableLikeClause"]; - bool has_table_like_clause() const; - private: - bool _internal_has_table_like_clause() const; - public: - void clear_table_like_clause(); - const ::pg_query::TableLikeClause& table_like_clause() const; - PROTOBUF_NODISCARD ::pg_query::TableLikeClause* release_table_like_clause(); - ::pg_query::TableLikeClause* mutable_table_like_clause(); - void set_allocated_table_like_clause(::pg_query::TableLikeClause* table_like_clause); - private: - const ::pg_query::TableLikeClause& _internal_table_like_clause() const; - ::pg_query::TableLikeClause* _internal_mutable_table_like_clause(); public: - void unsafe_arena_set_allocated_table_like_clause( - ::pg_query::TableLikeClause* table_like_clause); - ::pg_query::TableLikeClause* unsafe_arena_release_table_like_clause(); + // @@protoc_insertion_point(class_scope:pg_query.DeallocateStmt) + private: + class _Internal; - // .pg_query.FunctionParameter function_parameter = 207 [json_name = "FunctionParameter"]; - bool has_function_parameter() const; - private: - bool _internal_has_function_parameter() const; - public: - void clear_function_parameter(); - const ::pg_query::FunctionParameter& function_parameter() const; - PROTOBUF_NODISCARD ::pg_query::FunctionParameter* release_function_parameter(); - ::pg_query::FunctionParameter* mutable_function_parameter(); - void set_allocated_function_parameter(::pg_query::FunctionParameter* function_parameter); - private: - const ::pg_query::FunctionParameter& _internal_function_parameter() const; - ::pg_query::FunctionParameter* _internal_mutable_function_parameter(); - public: - void unsafe_arena_set_allocated_function_parameter( - ::pg_query::FunctionParameter* function_parameter); - ::pg_query::FunctionParameter* unsafe_arena_release_function_parameter(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 36, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.LockingClause locking_clause = 208 [json_name = "LockingClause"]; - bool has_locking_clause() const; - private: - bool _internal_has_locking_clause() const; - public: - void clear_locking_clause(); - const ::pg_query::LockingClause& locking_clause() const; - PROTOBUF_NODISCARD ::pg_query::LockingClause* release_locking_clause(); - ::pg_query::LockingClause* mutable_locking_clause(); - void set_allocated_locking_clause(::pg_query::LockingClause* locking_clause); - private: - const ::pg_query::LockingClause& _internal_locking_clause() const; - ::pg_query::LockingClause* _internal_mutable_locking_clause(); - public: - void unsafe_arena_set_allocated_locking_clause( - ::pg_query::LockingClause* locking_clause); - ::pg_query::LockingClause* unsafe_arena_release_locking_clause(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr name_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.RowMarkClause row_mark_clause = 209 [json_name = "RowMarkClause"]; - bool has_row_mark_clause() const; - private: - bool _internal_has_row_mark_clause() const; - public: - void clear_row_mark_clause(); - const ::pg_query::RowMarkClause& row_mark_clause() const; - PROTOBUF_NODISCARD ::pg_query::RowMarkClause* release_row_mark_clause(); - ::pg_query::RowMarkClause* mutable_row_mark_clause(); - void set_allocated_row_mark_clause(::pg_query::RowMarkClause* row_mark_clause); - private: - const ::pg_query::RowMarkClause& _internal_row_mark_clause() const; - ::pg_query::RowMarkClause* _internal_mutable_row_mark_clause(); - public: - void unsafe_arena_set_allocated_row_mark_clause( - ::pg_query::RowMarkClause* row_mark_clause); - ::pg_query::RowMarkClause* unsafe_arena_release_row_mark_clause(); +class ClosePortalStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ClosePortalStmt) */ { + public: + inline ClosePortalStmt() : ClosePortalStmt(nullptr) {} + ~ClosePortalStmt() override; + template + explicit PROTOBUF_CONSTEXPR ClosePortalStmt(::google::protobuf::internal::ConstantInitialized); - // .pg_query.XmlSerialize xml_serialize = 210 [json_name = "XmlSerialize"]; - bool has_xml_serialize() const; - private: - bool _internal_has_xml_serialize() const; - public: - void clear_xml_serialize(); - const ::pg_query::XmlSerialize& xml_serialize() const; - PROTOBUF_NODISCARD ::pg_query::XmlSerialize* release_xml_serialize(); - ::pg_query::XmlSerialize* mutable_xml_serialize(); - void set_allocated_xml_serialize(::pg_query::XmlSerialize* xml_serialize); - private: - const ::pg_query::XmlSerialize& _internal_xml_serialize() const; - ::pg_query::XmlSerialize* _internal_mutable_xml_serialize(); - public: - void unsafe_arena_set_allocated_xml_serialize( - ::pg_query::XmlSerialize* xml_serialize); - ::pg_query::XmlSerialize* unsafe_arena_release_xml_serialize(); + inline ClosePortalStmt(const ClosePortalStmt& from) + : ClosePortalStmt(nullptr, from) {} + ClosePortalStmt(ClosePortalStmt&& from) noexcept + : ClosePortalStmt() { + *this = ::std::move(from); + } - // .pg_query.WithClause with_clause = 211 [json_name = "WithClause"]; - bool has_with_clause() const; - private: - bool _internal_has_with_clause() const; - public: - void clear_with_clause(); - const ::pg_query::WithClause& with_clause() const; - PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); - ::pg_query::WithClause* mutable_with_clause(); - void set_allocated_with_clause(::pg_query::WithClause* with_clause); - private: - const ::pg_query::WithClause& _internal_with_clause() const; - ::pg_query::WithClause* _internal_mutable_with_clause(); - public: - void unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause); - ::pg_query::WithClause* unsafe_arena_release_with_clause(); + inline ClosePortalStmt& operator=(const ClosePortalStmt& from) { + CopyFrom(from); + return *this; + } + inline ClosePortalStmt& operator=(ClosePortalStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.InferClause infer_clause = 212 [json_name = "InferClause"]; - bool has_infer_clause() const; - private: - bool _internal_has_infer_clause() const; - public: - void clear_infer_clause(); - const ::pg_query::InferClause& infer_clause() const; - PROTOBUF_NODISCARD ::pg_query::InferClause* release_infer_clause(); - ::pg_query::InferClause* mutable_infer_clause(); - void set_allocated_infer_clause(::pg_query::InferClause* infer_clause); - private: - const ::pg_query::InferClause& _internal_infer_clause() const; - ::pg_query::InferClause* _internal_mutable_infer_clause(); - public: - void unsafe_arena_set_allocated_infer_clause( - ::pg_query::InferClause* infer_clause); - ::pg_query::InferClause* unsafe_arena_release_infer_clause(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } - // .pg_query.OnConflictClause on_conflict_clause = 213 [json_name = "OnConflictClause"]; - bool has_on_conflict_clause() const; - private: - bool _internal_has_on_conflict_clause() const; - public: - void clear_on_conflict_clause(); - const ::pg_query::OnConflictClause& on_conflict_clause() const; - PROTOBUF_NODISCARD ::pg_query::OnConflictClause* release_on_conflict_clause(); - ::pg_query::OnConflictClause* mutable_on_conflict_clause(); - void set_allocated_on_conflict_clause(::pg_query::OnConflictClause* on_conflict_clause); - private: - const ::pg_query::OnConflictClause& _internal_on_conflict_clause() const; - ::pg_query::OnConflictClause* _internal_mutable_on_conflict_clause(); - public: - void unsafe_arena_set_allocated_on_conflict_clause( - ::pg_query::OnConflictClause* on_conflict_clause); - ::pg_query::OnConflictClause* unsafe_arena_release_on_conflict_clause(); + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ClosePortalStmt& default_instance() { + return *internal_default_instance(); + } + static inline const ClosePortalStmt* internal_default_instance() { + return reinterpret_cast( + &_ClosePortalStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 191; - // .pg_query.CTESearchClause ctesearch_clause = 214 [json_name = "CTESearchClause"]; - bool has_ctesearch_clause() const; - private: - bool _internal_has_ctesearch_clause() const; - public: - void clear_ctesearch_clause(); - const ::pg_query::CTESearchClause& ctesearch_clause() const; - PROTOBUF_NODISCARD ::pg_query::CTESearchClause* release_ctesearch_clause(); - ::pg_query::CTESearchClause* mutable_ctesearch_clause(); - void set_allocated_ctesearch_clause(::pg_query::CTESearchClause* ctesearch_clause); - private: - const ::pg_query::CTESearchClause& _internal_ctesearch_clause() const; - ::pg_query::CTESearchClause* _internal_mutable_ctesearch_clause(); - public: - void unsafe_arena_set_allocated_ctesearch_clause( - ::pg_query::CTESearchClause* ctesearch_clause); - ::pg_query::CTESearchClause* unsafe_arena_release_ctesearch_clause(); + friend void swap(ClosePortalStmt& a, ClosePortalStmt& b) { + a.Swap(&b); + } + inline void Swap(ClosePortalStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ClosePortalStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } - // .pg_query.CTECycleClause ctecycle_clause = 215 [json_name = "CTECycleClause"]; - bool has_ctecycle_clause() const; - private: - bool _internal_has_ctecycle_clause() const; - public: - void clear_ctecycle_clause(); - const ::pg_query::CTECycleClause& ctecycle_clause() const; - PROTOBUF_NODISCARD ::pg_query::CTECycleClause* release_ctecycle_clause(); - ::pg_query::CTECycleClause* mutable_ctecycle_clause(); - void set_allocated_ctecycle_clause(::pg_query::CTECycleClause* ctecycle_clause); - private: - const ::pg_query::CTECycleClause& _internal_ctecycle_clause() const; - ::pg_query::CTECycleClause* _internal_mutable_ctecycle_clause(); - public: - void unsafe_arena_set_allocated_ctecycle_clause( - ::pg_query::CTECycleClause* ctecycle_clause); - ::pg_query::CTECycleClause* unsafe_arena_release_ctecycle_clause(); + // implements Message ---------------------------------------------- - // .pg_query.CommonTableExpr common_table_expr = 216 [json_name = "CommonTableExpr"]; - bool has_common_table_expr() const; - private: - bool _internal_has_common_table_expr() const; - public: - void clear_common_table_expr(); - const ::pg_query::CommonTableExpr& common_table_expr() const; - PROTOBUF_NODISCARD ::pg_query::CommonTableExpr* release_common_table_expr(); - ::pg_query::CommonTableExpr* mutable_common_table_expr(); - void set_allocated_common_table_expr(::pg_query::CommonTableExpr* common_table_expr); + ClosePortalStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ClosePortalStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ClosePortalStmt& from) { + ClosePortalStmt::MergeImpl(*this, from); + } private: - const ::pg_query::CommonTableExpr& _internal_common_table_expr() const; - ::pg_query::CommonTableExpr* _internal_mutable_common_table_expr(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_common_table_expr( - ::pg_query::CommonTableExpr* common_table_expr); - ::pg_query::CommonTableExpr* unsafe_arena_release_common_table_expr(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; - // .pg_query.MergeWhenClause merge_when_clause = 217 [json_name = "MergeWhenClause"]; - bool has_merge_when_clause() const; - private: - bool _internal_has_merge_when_clause() const; - public: - void clear_merge_when_clause(); - const ::pg_query::MergeWhenClause& merge_when_clause() const; - PROTOBUF_NODISCARD ::pg_query::MergeWhenClause* release_merge_when_clause(); - ::pg_query::MergeWhenClause* mutable_merge_when_clause(); - void set_allocated_merge_when_clause(::pg_query::MergeWhenClause* merge_when_clause); - private: - const ::pg_query::MergeWhenClause& _internal_merge_when_clause() const; - ::pg_query::MergeWhenClause* _internal_mutable_merge_when_clause(); - public: - void unsafe_arena_set_allocated_merge_when_clause( - ::pg_query::MergeWhenClause* merge_when_clause); - ::pg_query::MergeWhenClause* unsafe_arena_release_merge_when_clause(); + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.RoleSpec role_spec = 218 [json_name = "RoleSpec"]; - bool has_role_spec() const; - private: - bool _internal_has_role_spec() const; - public: - void clear_role_spec(); - const ::pg_query::RoleSpec& role_spec() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_role_spec(); - ::pg_query::RoleSpec* mutable_role_spec(); - void set_allocated_role_spec(::pg_query::RoleSpec* role_spec); private: - const ::pg_query::RoleSpec& _internal_role_spec() const; - ::pg_query::RoleSpec* _internal_mutable_role_spec(); - public: - void unsafe_arena_set_allocated_role_spec( - ::pg_query::RoleSpec* role_spec); - ::pg_query::RoleSpec* unsafe_arena_release_role_spec(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(ClosePortalStmt* other); - // .pg_query.TriggerTransition trigger_transition = 219 [json_name = "TriggerTransition"]; - bool has_trigger_transition() const; - private: - bool _internal_has_trigger_transition() const; - public: - void clear_trigger_transition(); - const ::pg_query::TriggerTransition& trigger_transition() const; - PROTOBUF_NODISCARD ::pg_query::TriggerTransition* release_trigger_transition(); - ::pg_query::TriggerTransition* mutable_trigger_transition(); - void set_allocated_trigger_transition(::pg_query::TriggerTransition* trigger_transition); private: - const ::pg_query::TriggerTransition& _internal_trigger_transition() const; - ::pg_query::TriggerTransition* _internal_mutable_trigger_transition(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ClosePortalStmt"; + } + protected: + explicit ClosePortalStmt(::google::protobuf::Arena* arena); + ClosePortalStmt(::google::protobuf::Arena* arena, const ClosePortalStmt& from); public: - void unsafe_arena_set_allocated_trigger_transition( - ::pg_query::TriggerTransition* trigger_transition); - ::pg_query::TriggerTransition* unsafe_arena_release_trigger_transition(); - // .pg_query.PartitionElem partition_elem = 220 [json_name = "PartitionElem"]; - bool has_partition_elem() const; - private: - bool _internal_has_partition_elem() const; - public: - void clear_partition_elem(); - const ::pg_query::PartitionElem& partition_elem() const; - PROTOBUF_NODISCARD ::pg_query::PartitionElem* release_partition_elem(); - ::pg_query::PartitionElem* mutable_partition_elem(); - void set_allocated_partition_elem(::pg_query::PartitionElem* partition_elem); - private: - const ::pg_query::PartitionElem& _internal_partition_elem() const; - ::pg_query::PartitionElem* _internal_mutable_partition_elem(); - public: - void unsafe_arena_set_allocated_partition_elem( - ::pg_query::PartitionElem* partition_elem); - ::pg_query::PartitionElem* unsafe_arena_release_partition_elem(); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - // .pg_query.PartitionSpec partition_spec = 221 [json_name = "PartitionSpec"]; - bool has_partition_spec() const; - private: - bool _internal_has_partition_spec() const; - public: - void clear_partition_spec(); - const ::pg_query::PartitionSpec& partition_spec() const; - PROTOBUF_NODISCARD ::pg_query::PartitionSpec* release_partition_spec(); - ::pg_query::PartitionSpec* mutable_partition_spec(); - void set_allocated_partition_spec(::pg_query::PartitionSpec* partition_spec); - private: - const ::pg_query::PartitionSpec& _internal_partition_spec() const; - ::pg_query::PartitionSpec* _internal_mutable_partition_spec(); - public: - void unsafe_arena_set_allocated_partition_spec( - ::pg_query::PartitionSpec* partition_spec); - ::pg_query::PartitionSpec* unsafe_arena_release_partition_spec(); + ::google::protobuf::Metadata GetMetadata() const final; - // .pg_query.PartitionBoundSpec partition_bound_spec = 222 [json_name = "PartitionBoundSpec"]; - bool has_partition_bound_spec() const; - private: - bool _internal_has_partition_bound_spec() const; - public: - void clear_partition_bound_spec(); - const ::pg_query::PartitionBoundSpec& partition_bound_spec() const; - PROTOBUF_NODISCARD ::pg_query::PartitionBoundSpec* release_partition_bound_spec(); - ::pg_query::PartitionBoundSpec* mutable_partition_bound_spec(); - void set_allocated_partition_bound_spec(::pg_query::PartitionBoundSpec* partition_bound_spec); - private: - const ::pg_query::PartitionBoundSpec& _internal_partition_bound_spec() const; - ::pg_query::PartitionBoundSpec* _internal_mutable_partition_bound_spec(); - public: - void unsafe_arena_set_allocated_partition_bound_spec( - ::pg_query::PartitionBoundSpec* partition_bound_spec); - ::pg_query::PartitionBoundSpec* unsafe_arena_release_partition_bound_spec(); + // nested types ---------------------------------------------------- - // .pg_query.PartitionRangeDatum partition_range_datum = 223 [json_name = "PartitionRangeDatum"]; - bool has_partition_range_datum() const; - private: - bool _internal_has_partition_range_datum() const; - public: - void clear_partition_range_datum(); - const ::pg_query::PartitionRangeDatum& partition_range_datum() const; - PROTOBUF_NODISCARD ::pg_query::PartitionRangeDatum* release_partition_range_datum(); - ::pg_query::PartitionRangeDatum* mutable_partition_range_datum(); - void set_allocated_partition_range_datum(::pg_query::PartitionRangeDatum* partition_range_datum); - private: - const ::pg_query::PartitionRangeDatum& _internal_partition_range_datum() const; - ::pg_query::PartitionRangeDatum* _internal_mutable_partition_range_datum(); - public: - void unsafe_arena_set_allocated_partition_range_datum( - ::pg_query::PartitionRangeDatum* partition_range_datum); - ::pg_query::PartitionRangeDatum* unsafe_arena_release_partition_range_datum(); + // accessors ------------------------------------------------------- - // .pg_query.PartitionCmd partition_cmd = 224 [json_name = "PartitionCmd"]; - bool has_partition_cmd() const; - private: - bool _internal_has_partition_cmd() const; - public: - void clear_partition_cmd(); - const ::pg_query::PartitionCmd& partition_cmd() const; - PROTOBUF_NODISCARD ::pg_query::PartitionCmd* release_partition_cmd(); - ::pg_query::PartitionCmd* mutable_partition_cmd(); - void set_allocated_partition_cmd(::pg_query::PartitionCmd* partition_cmd); - private: - const ::pg_query::PartitionCmd& _internal_partition_cmd() const; - ::pg_query::PartitionCmd* _internal_mutable_partition_cmd(); - public: - void unsafe_arena_set_allocated_partition_cmd( - ::pg_query::PartitionCmd* partition_cmd); - ::pg_query::PartitionCmd* unsafe_arena_release_partition_cmd(); + enum : int { + kPortalnameFieldNumber = 1, + }; + // string portalname = 1 [json_name = "portalname"]; + void clear_portalname() ; + const std::string& portalname() const; + template + void set_portalname(Arg_&& arg, Args_... args); + std::string* mutable_portalname(); + PROTOBUF_NODISCARD std::string* release_portalname(); + void set_allocated_portalname(std::string* value); - // .pg_query.VacuumRelation vacuum_relation = 225 [json_name = "VacuumRelation"]; - bool has_vacuum_relation() const; - private: - bool _internal_has_vacuum_relation() const; - public: - void clear_vacuum_relation(); - const ::pg_query::VacuumRelation& vacuum_relation() const; - PROTOBUF_NODISCARD ::pg_query::VacuumRelation* release_vacuum_relation(); - ::pg_query::VacuumRelation* mutable_vacuum_relation(); - void set_allocated_vacuum_relation(::pg_query::VacuumRelation* vacuum_relation); private: - const ::pg_query::VacuumRelation& _internal_vacuum_relation() const; - ::pg_query::VacuumRelation* _internal_mutable_vacuum_relation(); - public: - void unsafe_arena_set_allocated_vacuum_relation( - ::pg_query::VacuumRelation* vacuum_relation); - ::pg_query::VacuumRelation* unsafe_arena_release_vacuum_relation(); + const std::string& _internal_portalname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_portalname( + const std::string& value); + std::string* _internal_mutable_portalname(); - // .pg_query.PublicationObjSpec publication_obj_spec = 226 [json_name = "PublicationObjSpec"]; - bool has_publication_obj_spec() const; - private: - bool _internal_has_publication_obj_spec() const; - public: - void clear_publication_obj_spec(); - const ::pg_query::PublicationObjSpec& publication_obj_spec() const; - PROTOBUF_NODISCARD ::pg_query::PublicationObjSpec* release_publication_obj_spec(); - ::pg_query::PublicationObjSpec* mutable_publication_obj_spec(); - void set_allocated_publication_obj_spec(::pg_query::PublicationObjSpec* publication_obj_spec); - private: - const ::pg_query::PublicationObjSpec& _internal_publication_obj_spec() const; - ::pg_query::PublicationObjSpec* _internal_mutable_publication_obj_spec(); public: - void unsafe_arena_set_allocated_publication_obj_spec( - ::pg_query::PublicationObjSpec* publication_obj_spec); - ::pg_query::PublicationObjSpec* unsafe_arena_release_publication_obj_spec(); + // @@protoc_insertion_point(class_scope:pg_query.ClosePortalStmt) + private: + class _Internal; - // .pg_query.PublicationTable publication_table = 227 [json_name = "PublicationTable"]; - bool has_publication_table() const; - private: - bool _internal_has_publication_table() const; - public: - void clear_publication_table(); - const ::pg_query::PublicationTable& publication_table() const; - PROTOBUF_NODISCARD ::pg_query::PublicationTable* release_publication_table(); - ::pg_query::PublicationTable* mutable_publication_table(); - void set_allocated_publication_table(::pg_query::PublicationTable* publication_table); - private: - const ::pg_query::PublicationTable& _internal_publication_table() const; - ::pg_query::PublicationTable* _internal_mutable_publication_table(); - public: - void unsafe_arena_set_allocated_publication_table( - ::pg_query::PublicationTable* publication_table); - ::pg_query::PublicationTable* unsafe_arena_release_publication_table(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 43, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.InlineCodeBlock inline_code_block = 228 [json_name = "InlineCodeBlock"]; - bool has_inline_code_block() const; - private: - bool _internal_has_inline_code_block() const; - public: - void clear_inline_code_block(); - const ::pg_query::InlineCodeBlock& inline_code_block() const; - PROTOBUF_NODISCARD ::pg_query::InlineCodeBlock* release_inline_code_block(); - ::pg_query::InlineCodeBlock* mutable_inline_code_block(); - void set_allocated_inline_code_block(::pg_query::InlineCodeBlock* inline_code_block); - private: - const ::pg_query::InlineCodeBlock& _internal_inline_code_block() const; - ::pg_query::InlineCodeBlock* _internal_mutable_inline_code_block(); - public: - void unsafe_arena_set_allocated_inline_code_block( - ::pg_query::InlineCodeBlock* inline_code_block); - ::pg_query::InlineCodeBlock* unsafe_arena_release_inline_code_block(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr portalname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.CallContext call_context = 229 [json_name = "CallContext"]; - bool has_call_context() const; - private: - bool _internal_has_call_context() const; - public: - void clear_call_context(); - const ::pg_query::CallContext& call_context() const; - PROTOBUF_NODISCARD ::pg_query::CallContext* release_call_context(); - ::pg_query::CallContext* mutable_call_context(); - void set_allocated_call_context(::pg_query::CallContext* call_context); - private: - const ::pg_query::CallContext& _internal_call_context() const; - ::pg_query::CallContext* _internal_mutable_call_context(); - public: - void unsafe_arena_set_allocated_call_context( - ::pg_query::CallContext* call_context); - ::pg_query::CallContext* unsafe_arena_release_call_context(); +class CheckPointStmt final : + public ::google::protobuf::internal::ZeroFieldsBase /* @@protoc_insertion_point(class_definition:pg_query.CheckPointStmt) */ { + public: + inline CheckPointStmt() : CheckPointStmt(nullptr) {} + template + explicit PROTOBUF_CONSTEXPR CheckPointStmt(::google::protobuf::internal::ConstantInitialized); - // .pg_query.Integer integer = 230 [json_name = "Integer"]; - bool has_integer() const; - private: - bool _internal_has_integer() const; - public: - void clear_integer(); - const ::pg_query::Integer& integer() const; - PROTOBUF_NODISCARD ::pg_query::Integer* release_integer(); - ::pg_query::Integer* mutable_integer(); - void set_allocated_integer(::pg_query::Integer* integer); - private: - const ::pg_query::Integer& _internal_integer() const; - ::pg_query::Integer* _internal_mutable_integer(); - public: - void unsafe_arena_set_allocated_integer( - ::pg_query::Integer* integer); - ::pg_query::Integer* unsafe_arena_release_integer(); + inline CheckPointStmt(const CheckPointStmt& from) + : CheckPointStmt(nullptr, from) {} + CheckPointStmt(CheckPointStmt&& from) noexcept + : CheckPointStmt() { + *this = ::std::move(from); + } - // .pg_query.Float float = 231 [json_name = "Float"]; - bool has_float_() const; - private: - bool _internal_has_float_() const; - public: - void clear_float_(); - const ::pg_query::Float& float_() const; - PROTOBUF_NODISCARD ::pg_query::Float* release_float_(); - ::pg_query::Float* mutable_float_(); - void set_allocated_float_(::pg_query::Float* float_); - private: - const ::pg_query::Float& _internal_float_() const; - ::pg_query::Float* _internal_mutable_float_(); - public: - void unsafe_arena_set_allocated_float_( - ::pg_query::Float* float_); - ::pg_query::Float* unsafe_arena_release_float_(); + inline CheckPointStmt& operator=(const CheckPointStmt& from) { + CopyFrom(from); + return *this; + } + inline CheckPointStmt& operator=(CheckPointStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.Boolean boolean = 232 [json_name = "Boolean"]; - bool has_boolean() const; - private: - bool _internal_has_boolean() const; - public: - void clear_boolean(); - const ::pg_query::Boolean& boolean() const; - PROTOBUF_NODISCARD ::pg_query::Boolean* release_boolean(); - ::pg_query::Boolean* mutable_boolean(); - void set_allocated_boolean(::pg_query::Boolean* boolean); - private: - const ::pg_query::Boolean& _internal_boolean() const; - ::pg_query::Boolean* _internal_mutable_boolean(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CheckPointStmt& default_instance() { + return *internal_default_instance(); + } + static inline const CheckPointStmt* internal_default_instance() { + return reinterpret_cast( + &_CheckPointStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 233; + + friend void swap(CheckPointStmt& a, CheckPointStmt& b) { + a.Swap(&b); + } + inline void Swap(CheckPointStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CheckPointStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + CheckPointStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom; + inline void CopyFrom(const CheckPointStmt& from) { + ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); + } + using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom; + void MergeFrom(const CheckPointStmt& from) { + ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); + } public: - void unsafe_arena_set_allocated_boolean( - ::pg_query::Boolean* boolean); - ::pg_query::Boolean* unsafe_arena_release_boolean(); - // .pg_query.String string = 233 [json_name = "String"]; - bool has_string() const; private: - bool _internal_has_string() const; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CheckPointStmt"; + } + protected: + explicit CheckPointStmt(::google::protobuf::Arena* arena); + CheckPointStmt(::google::protobuf::Arena* arena, const CheckPointStmt& from); public: - void clear_string(); - const ::pg_query::String& string() const; - PROTOBUF_NODISCARD ::pg_query::String* release_string(); - ::pg_query::String* mutable_string(); - void set_allocated_string(::pg_query::String* string); + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:pg_query.CheckPointStmt) + private: + class _Internal; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + PROTOBUF_TSAN_DECLARE_MEMBER + }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class CallContext final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CallContext) */ { + public: + inline CallContext() : CallContext(nullptr) {} + ~CallContext() override; + template + explicit PROTOBUF_CONSTEXPR CallContext(::google::protobuf::internal::ConstantInitialized); + + inline CallContext(const CallContext& from) + : CallContext(nullptr, from) {} + CallContext(CallContext&& from) noexcept + : CallContext() { + *this = ::std::move(from); + } + + inline CallContext& operator=(const CallContext& from) { + CopyFrom(from); + return *this; + } + inline CallContext& operator=(CallContext&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CallContext& default_instance() { + return *internal_default_instance(); + } + static inline const CallContext* internal_default_instance() { + return reinterpret_cast( + &_CallContext_default_instance_); + } + static constexpr int kIndexInFileMessages = + 203; + + friend void swap(CallContext& a, CallContext& b) { + a.Swap(&b); + } + inline void Swap(CallContext* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CallContext* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + CallContext* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CallContext& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CallContext& from) { + CallContext::MergeImpl(*this, from); + } private: - const ::pg_query::String& _internal_string() const; - ::pg_query::String* _internal_mutable_string(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_string( - ::pg_query::String* string); - ::pg_query::String* unsafe_arena_release_string(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.BitString bit_string = 234 [json_name = "BitString"]; - bool has_bit_string() const; private: - bool _internal_has_bit_string() const; - public: - void clear_bit_string(); - const ::pg_query::BitString& bit_string() const; - PROTOBUF_NODISCARD ::pg_query::BitString* release_bit_string(); - ::pg_query::BitString* mutable_bit_string(); - void set_allocated_bit_string(::pg_query::BitString* bit_string); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(CallContext* other); + private: - const ::pg_query::BitString& _internal_bit_string() const; - ::pg_query::BitString* _internal_mutable_bit_string(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CallContext"; + } + protected: + explicit CallContext(::google::protobuf::Arena* arena); + CallContext(::google::protobuf::Arena* arena, const CallContext& from); public: - void unsafe_arena_set_allocated_bit_string( - ::pg_query::BitString* bit_string); - ::pg_query::BitString* unsafe_arena_release_bit_string(); - // .pg_query.List list = 235 [json_name = "List"]; - bool has_list() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kAtomicFieldNumber = 1, + }; + // bool atomic = 1 [json_name = "atomic"]; + void clear_atomic() ; + bool atomic() const; + void set_atomic(bool value); + private: - bool _internal_has_list() const; + bool _internal_atomic() const; + void _internal_set_atomic(bool value); + public: - void clear_list(); - const ::pg_query::List& list() const; - PROTOBUF_NODISCARD ::pg_query::List* release_list(); - ::pg_query::List* mutable_list(); - void set_allocated_list(::pg_query::List* list); + // @@protoc_insertion_point(class_scope:pg_query.CallContext) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + bool atomic_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class Boolean final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Boolean) */ { + public: + inline Boolean() : Boolean(nullptr) {} + ~Boolean() override; + template + explicit PROTOBUF_CONSTEXPR Boolean(::google::protobuf::internal::ConstantInitialized); + + inline Boolean(const Boolean& from) + : Boolean(nullptr, from) {} + Boolean(Boolean&& from) noexcept + : Boolean() { + *this = ::std::move(from); + } + + inline Boolean& operator=(const Boolean& from) { + CopyFrom(from); + return *this; + } + inline Boolean& operator=(Boolean&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Boolean& default_instance() { + return *internal_default_instance(); + } + static inline const Boolean* internal_default_instance() { + return reinterpret_cast( + &_Boolean_default_instance_); + } + static constexpr int kIndexInFileMessages = + 5; + + friend void swap(Boolean& a, Boolean& b) { + a.Swap(&b); + } + inline void Swap(Boolean* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Boolean* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Boolean* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Boolean& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Boolean& from) { + Boolean::MergeImpl(*this, from); + } private: - const ::pg_query::List& _internal_list() const; - ::pg_query::List* _internal_mutable_list(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_list( - ::pg_query::List* list); - ::pg_query::List* unsafe_arena_release_list(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.IntList int_list = 236 [json_name = "IntList"]; - bool has_int_list() const; private: - bool _internal_has_int_list() const; - public: - void clear_int_list(); - const ::pg_query::IntList& int_list() const; - PROTOBUF_NODISCARD ::pg_query::IntList* release_int_list(); - ::pg_query::IntList* mutable_int_list(); - void set_allocated_int_list(::pg_query::IntList* int_list); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(Boolean* other); + private: - const ::pg_query::IntList& _internal_int_list() const; - ::pg_query::IntList* _internal_mutable_int_list(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Boolean"; + } + protected: + explicit Boolean(::google::protobuf::Arena* arena); + Boolean(::google::protobuf::Arena* arena, const Boolean& from); public: - void unsafe_arena_set_allocated_int_list( - ::pg_query::IntList* int_list); - ::pg_query::IntList* unsafe_arena_release_int_list(); - // .pg_query.OidList oid_list = 237 [json_name = "OidList"]; - bool has_oid_list() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kBoolvalFieldNumber = 1, + }; + // bool boolval = 1; + void clear_boolval() ; + bool boolval() const; + void set_boolval(bool value); + private: - bool _internal_has_oid_list() const; + bool _internal_boolval() const; + void _internal_set_boolval(bool value); + public: - void clear_oid_list(); - const ::pg_query::OidList& oid_list() const; - PROTOBUF_NODISCARD ::pg_query::OidList* release_oid_list(); - ::pg_query::OidList* mutable_oid_list(); - void set_allocated_oid_list(::pg_query::OidList* oid_list); + // @@protoc_insertion_point(class_scope:pg_query.Boolean) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + bool boolval_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class BitString final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.BitString) */ { + public: + inline BitString() : BitString(nullptr) {} + ~BitString() override; + template + explicit PROTOBUF_CONSTEXPR BitString(::google::protobuf::internal::ConstantInitialized); + + inline BitString(const BitString& from) + : BitString(nullptr, from) {} + BitString(BitString&& from) noexcept + : BitString() { + *this = ::std::move(from); + } + + inline BitString& operator=(const BitString& from) { + CopyFrom(from); + return *this; + } + inline BitString& operator=(BitString&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const BitString& default_instance() { + return *internal_default_instance(); + } + static inline const BitString* internal_default_instance() { + return reinterpret_cast( + &_BitString_default_instance_); + } + static constexpr int kIndexInFileMessages = + 7; + + friend void swap(BitString& a, BitString& b) { + a.Swap(&b); + } + inline void Swap(BitString* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(BitString* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + BitString* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const BitString& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const BitString& from) { + BitString::MergeImpl(*this, from); + } private: - const ::pg_query::OidList& _internal_oid_list() const; - ::pg_query::OidList* _internal_mutable_oid_list(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void unsafe_arena_set_allocated_oid_list( - ::pg_query::OidList* oid_list); - ::pg_query::OidList* unsafe_arena_release_oid_list(); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.A_Const a_const = 238 [json_name = "A_Const"]; - bool has_a_const() const; private: - bool _internal_has_a_const() const; - public: - void clear_a_const(); - const ::pg_query::A_Const& a_const() const; - PROTOBUF_NODISCARD ::pg_query::A_Const* release_a_const(); - ::pg_query::A_Const* mutable_a_const(); - void set_allocated_a_const(::pg_query::A_Const* a_const); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(BitString* other); + private: - const ::pg_query::A_Const& _internal_a_const() const; - ::pg_query::A_Const* _internal_mutable_a_const(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.BitString"; + } + protected: + explicit BitString(::google::protobuf::Arena* arena); + BitString(::google::protobuf::Arena* arena, const BitString& from); public: - void unsafe_arena_set_allocated_a_const( - ::pg_query::A_Const* a_const); - ::pg_query::A_Const* unsafe_arena_release_a_const(); - void clear_node(); - NodeCase node_case() const; - // @@protoc_insertion_point(class_scope:pg_query.Node) + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kBsvalFieldNumber = 1, + }; + // string bsval = 1; + void clear_bsval() ; + const std::string& bsval() const; + template + void set_bsval(Arg_&& arg, Args_... args); + std::string* mutable_bsval(); + PROTOBUF_NODISCARD std::string* release_bsval(); + void set_allocated_bsval(std::string* value); + + private: + const std::string& _internal_bsval() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_bsval( + const std::string& value); + std::string* _internal_mutable_bsval(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.BitString) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 32, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr bsval_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class AlterEventTrigStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterEventTrigStmt) */ { + public: + inline AlterEventTrigStmt() : AlterEventTrigStmt(nullptr) {} + ~AlterEventTrigStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterEventTrigStmt(::google::protobuf::internal::ConstantInitialized); + + inline AlterEventTrigStmt(const AlterEventTrigStmt& from) + : AlterEventTrigStmt(nullptr, from) {} + AlterEventTrigStmt(AlterEventTrigStmt&& from) noexcept + : AlterEventTrigStmt() { + *this = ::std::move(from); + } + + inline AlterEventTrigStmt& operator=(const AlterEventTrigStmt& from) { + CopyFrom(from); + return *this; + } + inline AlterEventTrigStmt& operator=(AlterEventTrigStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AlterEventTrigStmt& default_instance() { + return *internal_default_instance(); + } + static inline const AlterEventTrigStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterEventTrigStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 172; + + friend void swap(AlterEventTrigStmt& a, AlterEventTrigStmt& b) { + a.Swap(&b); + } + inline void Swap(AlterEventTrigStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AlterEventTrigStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AlterEventTrigStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterEventTrigStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterEventTrigStmt& from) { + AlterEventTrigStmt::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(AlterEventTrigStmt* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterEventTrigStmt"; + } + protected: + explicit AlterEventTrigStmt(::google::protobuf::Arena* arena); + AlterEventTrigStmt(::google::protobuf::Arena* arena, const AlterEventTrigStmt& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kTrignameFieldNumber = 1, + kTgenabledFieldNumber = 2, + }; + // string trigname = 1 [json_name = "trigname"]; + void clear_trigname() ; + const std::string& trigname() const; + template + void set_trigname(Arg_&& arg, Args_... args); + std::string* mutable_trigname(); + PROTOBUF_NODISCARD std::string* release_trigname(); + void set_allocated_trigname(std::string* value); + + private: + const std::string& _internal_trigname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_trigname( + const std::string& value); + std::string* _internal_mutable_trigname(); + + public: + // string tgenabled = 2 [json_name = "tgenabled"]; + void clear_tgenabled() ; + const std::string& tgenabled() const; + template + void set_tgenabled(Arg_&& arg, Args_... args); + std::string* mutable_tgenabled(); + PROTOBUF_NODISCARD std::string* release_tgenabled(); + void set_allocated_tgenabled(std::string* value); + + private: + const std::string& _internal_tgenabled() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_tgenabled( + const std::string& value); + std::string* _internal_mutable_tgenabled(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterEventTrigStmt) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 53, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr trigname_; + ::google::protobuf::internal::ArenaStringPtr tgenabled_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class AlterDatabaseRefreshCollStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDatabaseRefreshCollStmt) */ { + public: + inline AlterDatabaseRefreshCollStmt() : AlterDatabaseRefreshCollStmt(nullptr) {} + ~AlterDatabaseRefreshCollStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterDatabaseRefreshCollStmt(::google::protobuf::internal::ConstantInitialized); + + inline AlterDatabaseRefreshCollStmt(const AlterDatabaseRefreshCollStmt& from) + : AlterDatabaseRefreshCollStmt(nullptr, from) {} + AlterDatabaseRefreshCollStmt(AlterDatabaseRefreshCollStmt&& from) noexcept + : AlterDatabaseRefreshCollStmt() { + *this = ::std::move(from); + } + + inline AlterDatabaseRefreshCollStmt& operator=(const AlterDatabaseRefreshCollStmt& from) { + CopyFrom(from); + return *this; + } + inline AlterDatabaseRefreshCollStmt& operator=(AlterDatabaseRefreshCollStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AlterDatabaseRefreshCollStmt& default_instance() { + return *internal_default_instance(); + } + static inline const AlterDatabaseRefreshCollStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterDatabaseRefreshCollStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 223; + + friend void swap(AlterDatabaseRefreshCollStmt& a, AlterDatabaseRefreshCollStmt& b) { + a.Swap(&b); + } + inline void Swap(AlterDatabaseRefreshCollStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AlterDatabaseRefreshCollStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AlterDatabaseRefreshCollStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterDatabaseRefreshCollStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterDatabaseRefreshCollStmt& from) { + AlterDatabaseRefreshCollStmt::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(AlterDatabaseRefreshCollStmt* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterDatabaseRefreshCollStmt"; + } + protected: + explicit AlterDatabaseRefreshCollStmt(::google::protobuf::Arena* arena); + AlterDatabaseRefreshCollStmt(::google::protobuf::Arena* arena, const AlterDatabaseRefreshCollStmt& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kDbnameFieldNumber = 1, + }; + // string dbname = 1 [json_name = "dbname"]; + void clear_dbname() ; + const std::string& dbname() const; + template + void set_dbname(Arg_&& arg, Args_... args); + std::string* mutable_dbname(); + PROTOBUF_NODISCARD std::string* release_dbname(); + void set_allocated_dbname(std::string* value); + + private: + const std::string& _internal_dbname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname( + const std::string& value); + std::string* _internal_mutable_dbname(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterDatabaseRefreshCollStmt) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 52, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::ArenaStringPtr dbname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class A_Star final : + public ::google::protobuf::internal::ZeroFieldsBase /* @@protoc_insertion_point(class_definition:pg_query.A_Star) */ { + public: + inline A_Star() : A_Star(nullptr) {} + template + explicit PROTOBUF_CONSTEXPR A_Star(::google::protobuf::internal::ConstantInitialized); + + inline A_Star(const A_Star& from) + : A_Star(nullptr, from) {} + A_Star(A_Star&& from) noexcept + : A_Star() { + *this = ::std::move(from); + } + + inline A_Star& operator=(const A_Star& from) { + CopyFrom(from); + return *this; + } + inline A_Star& operator=(A_Star&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const A_Star& default_instance() { + return *internal_default_instance(); + } + static inline const A_Star* internal_default_instance() { + return reinterpret_cast( + &_A_Star_default_instance_); + } + static constexpr int kIndexInFileMessages = + 76; + + friend void swap(A_Star& a, A_Star& b) { + a.Swap(&b); + } + inline void Swap(A_Star* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(A_Star* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + A_Star* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom; + inline void CopyFrom(const A_Star& from) { + ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); + } + using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom; + void MergeFrom(const A_Star& from) { + ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); + } + public: + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.A_Star"; + } + protected: + explicit A_Star(::google::protobuf::Arena* arena); + A_Star(::google::protobuf::Arena* arena, const A_Star& from); + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:pg_query.A_Star) + private: + class _Internal; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + PROTOBUF_TSAN_DECLARE_MEMBER + }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class ScanResult final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ScanResult) */ { + public: + inline ScanResult() : ScanResult(nullptr) {} + ~ScanResult() override; + template + explicit PROTOBUF_CONSTEXPR ScanResult(::google::protobuf::internal::ConstantInitialized); + + inline ScanResult(const ScanResult& from) + : ScanResult(nullptr, from) {} + ScanResult(ScanResult&& from) noexcept + : ScanResult() { + *this = ::std::move(from); + } + + inline ScanResult& operator=(const ScanResult& from) { + CopyFrom(from); + return *this; + } + inline ScanResult& operator=(ScanResult&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ScanResult& default_instance() { + return *internal_default_instance(); + } + static inline const ScanResult* internal_default_instance() { + return reinterpret_cast( + &_ScanResult_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + friend void swap(ScanResult& a, ScanResult& b) { + a.Swap(&b); + } + inline void Swap(ScanResult* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ScanResult* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ScanResult* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ScanResult& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ScanResult& from) { + ScanResult::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(ScanResult* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ScanResult"; + } + protected: + explicit ScanResult(::google::protobuf::Arena* arena); + ScanResult(::google::protobuf::Arena* arena, const ScanResult& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kTokensFieldNumber = 2, + kVersionFieldNumber = 1, + }; + // repeated .pg_query.ScanToken tokens = 2; + int tokens_size() const; + private: + int _internal_tokens_size() const; + + public: + void clear_tokens() ; + ::pg_query::ScanToken* mutable_tokens(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::ScanToken >* + mutable_tokens(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::ScanToken>& _internal_tokens() const; + ::google::protobuf::RepeatedPtrField<::pg_query::ScanToken>* _internal_mutable_tokens(); + public: + const ::pg_query::ScanToken& tokens(int index) const; + ::pg_query::ScanToken* add_tokens(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::ScanToken >& + tokens() const; + // int32 version = 1; + void clear_version() ; + ::int32_t version() const; + void set_version(::int32_t value); + + private: + ::int32_t _internal_version() const; + void _internal_set_version(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.ScanResult) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::ScanToken > tokens_; + ::int32_t version_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class JsonReturning final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonReturning) */ { + public: + inline JsonReturning() : JsonReturning(nullptr) {} + ~JsonReturning() override; + template + explicit PROTOBUF_CONSTEXPR JsonReturning(::google::protobuf::internal::ConstantInitialized); + + inline JsonReturning(const JsonReturning& from) + : JsonReturning(nullptr, from) {} + JsonReturning(JsonReturning&& from) noexcept + : JsonReturning() { + *this = ::std::move(from); + } + + inline JsonReturning& operator=(const JsonReturning& from) { + CopyFrom(from); + return *this; + } + inline JsonReturning& operator=(JsonReturning&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const JsonReturning& default_instance() { + return *internal_default_instance(); + } + static inline const JsonReturning* internal_default_instance() { + return reinterpret_cast( + &_JsonReturning_default_instance_); + } + static constexpr int kIndexInFileMessages = + 50; + + friend void swap(JsonReturning& a, JsonReturning& b) { + a.Swap(&b); + } + inline void Swap(JsonReturning* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(JsonReturning* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + JsonReturning* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonReturning& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonReturning& from) { + JsonReturning::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(JsonReturning* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonReturning"; + } + protected: + explicit JsonReturning(::google::protobuf::Arena* arena); + JsonReturning(::google::protobuf::Arena* arena, const JsonReturning& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFormatFieldNumber = 1, + kTypidFieldNumber = 2, + kTypmodFieldNumber = 3, + }; + // .pg_query.JsonFormat format = 1 [json_name = "format"]; + bool has_format() const; + void clear_format() ; + const ::pg_query::JsonFormat& format() const; + PROTOBUF_NODISCARD ::pg_query::JsonFormat* release_format(); + ::pg_query::JsonFormat* mutable_format(); + void set_allocated_format(::pg_query::JsonFormat* value); + void unsafe_arena_set_allocated_format(::pg_query::JsonFormat* value); + ::pg_query::JsonFormat* unsafe_arena_release_format(); + + private: + const ::pg_query::JsonFormat& _internal_format() const; + ::pg_query::JsonFormat* _internal_mutable_format(); + + public: + // uint32 typid = 2 [json_name = "typid"]; + void clear_typid() ; + ::uint32_t typid() const; + void set_typid(::uint32_t value); + + private: + ::uint32_t _internal_typid() const; + void _internal_set_typid(::uint32_t value); + + public: + // int32 typmod = 3 [json_name = "typmod"]; + void clear_typmod() ; + ::int32_t typmod() const; + void set_typmod(::int32_t value); + + private: + ::int32_t _internal_typmod() const; + void _internal_set_typmod(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonReturning) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::JsonFormat* format_; + ::uint32_t typid_; + ::int32_t typmod_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class DropUserMappingStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DropUserMappingStmt) */ { + public: + inline DropUserMappingStmt() : DropUserMappingStmt(nullptr) {} + ~DropUserMappingStmt() override; + template + explicit PROTOBUF_CONSTEXPR DropUserMappingStmt(::google::protobuf::internal::ConstantInitialized); + + inline DropUserMappingStmt(const DropUserMappingStmt& from) + : DropUserMappingStmt(nullptr, from) {} + DropUserMappingStmt(DropUserMappingStmt&& from) noexcept + : DropUserMappingStmt() { + *this = ::std::move(from); + } + + inline DropUserMappingStmt& operator=(const DropUserMappingStmt& from) { + CopyFrom(from); + return *this; + } + inline DropUserMappingStmt& operator=(DropUserMappingStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const DropUserMappingStmt& default_instance() { + return *internal_default_instance(); + } + static inline const DropUserMappingStmt* internal_default_instance() { + return reinterpret_cast( + &_DropUserMappingStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 165; + + friend void swap(DropUserMappingStmt& a, DropUserMappingStmt& b) { + a.Swap(&b); + } + inline void Swap(DropUserMappingStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(DropUserMappingStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + DropUserMappingStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DropUserMappingStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DropUserMappingStmt& from) { + DropUserMappingStmt::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(DropUserMappingStmt* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DropUserMappingStmt"; + } + protected: + explicit DropUserMappingStmt(::google::protobuf::Arena* arena); + DropUserMappingStmt(::google::protobuf::Arena* arena, const DropUserMappingStmt& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kServernameFieldNumber = 2, + kUserFieldNumber = 1, + kMissingOkFieldNumber = 3, + }; + // string servername = 2 [json_name = "servername"]; + void clear_servername() ; + const std::string& servername() const; + template + void set_servername(Arg_&& arg, Args_... args); + std::string* mutable_servername(); + PROTOBUF_NODISCARD std::string* release_servername(); + void set_allocated_servername(std::string* value); + + private: + const std::string& _internal_servername() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername( + const std::string& value); + std::string* _internal_mutable_servername(); + + public: + // .pg_query.RoleSpec user = 1 [json_name = "user"]; + bool has_user() const; + void clear_user() ; + const ::pg_query::RoleSpec& user() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_user(); + ::pg_query::RoleSpec* mutable_user(); + void set_allocated_user(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_user(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_user(); + + private: + const ::pg_query::RoleSpec& _internal_user() const; + ::pg_query::RoleSpec* _internal_mutable_user(); + + public: + // bool missing_ok = 3 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); + + private: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.DropUserMappingStmt) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 47, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr servername_; + ::pg_query::RoleSpec* user_; + bool missing_ok_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class A_Const final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.A_Const) */ { + public: + inline A_Const() : A_Const(nullptr) {} + ~A_Const() override; + template + explicit PROTOBUF_CONSTEXPR A_Const(::google::protobuf::internal::ConstantInitialized); + + inline A_Const(const A_Const& from) + : A_Const(nullptr, from) {} + A_Const(A_Const&& from) noexcept + : A_Const() { + *this = ::std::move(from); + } + + inline A_Const& operator=(const A_Const& from) { + CopyFrom(from); + return *this; + } + inline A_Const& operator=(A_Const&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const A_Const& default_instance() { + return *internal_default_instance(); + } + enum ValCase { + kIval = 1, + kFval = 2, + kBoolval = 3, + kSval = 4, + kBsval = 5, + VAL_NOT_SET = 0, + }; + + static inline const A_Const* internal_default_instance() { + return reinterpret_cast( + &_A_Const_default_instance_); + } + static constexpr int kIndexInFileMessages = + 11; + + friend void swap(A_Const& a, A_Const& b) { + a.Swap(&b); + } + inline void Swap(A_Const* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(A_Const* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + A_Const* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const A_Const& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const A_Const& from) { + A_Const::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(A_Const* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.A_Const"; + } + protected: + explicit A_Const(::google::protobuf::Arena* arena); + A_Const(::google::protobuf::Arena* arena, const A_Const& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kIsnullFieldNumber = 10, + kLocationFieldNumber = 11, + kIvalFieldNumber = 1, + kFvalFieldNumber = 2, + kBoolvalFieldNumber = 3, + kSvalFieldNumber = 4, + kBsvalFieldNumber = 5, + }; + // bool isnull = 10; + void clear_isnull() ; + bool isnull() const; + void set_isnull(bool value); + + private: + bool _internal_isnull() const; + void _internal_set_isnull(bool value); + + public: + // int32 location = 11; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // .pg_query.Integer ival = 1; + bool has_ival() const; + private: + bool _internal_has_ival() const; + + public: + void clear_ival() ; + const ::pg_query::Integer& ival() const; + PROTOBUF_NODISCARD ::pg_query::Integer* release_ival(); + ::pg_query::Integer* mutable_ival(); + void set_allocated_ival(::pg_query::Integer* value); + void unsafe_arena_set_allocated_ival(::pg_query::Integer* value); + ::pg_query::Integer* unsafe_arena_release_ival(); + + private: + const ::pg_query::Integer& _internal_ival() const; + ::pg_query::Integer* _internal_mutable_ival(); + + public: + // .pg_query.Float fval = 2; + bool has_fval() const; + private: + bool _internal_has_fval() const; + + public: + void clear_fval() ; + const ::pg_query::Float& fval() const; + PROTOBUF_NODISCARD ::pg_query::Float* release_fval(); + ::pg_query::Float* mutable_fval(); + void set_allocated_fval(::pg_query::Float* value); + void unsafe_arena_set_allocated_fval(::pg_query::Float* value); + ::pg_query::Float* unsafe_arena_release_fval(); + + private: + const ::pg_query::Float& _internal_fval() const; + ::pg_query::Float* _internal_mutable_fval(); + + public: + // .pg_query.Boolean boolval = 3; + bool has_boolval() const; + private: + bool _internal_has_boolval() const; + + public: + void clear_boolval() ; + const ::pg_query::Boolean& boolval() const; + PROTOBUF_NODISCARD ::pg_query::Boolean* release_boolval(); + ::pg_query::Boolean* mutable_boolval(); + void set_allocated_boolval(::pg_query::Boolean* value); + void unsafe_arena_set_allocated_boolval(::pg_query::Boolean* value); + ::pg_query::Boolean* unsafe_arena_release_boolval(); + + private: + const ::pg_query::Boolean& _internal_boolval() const; + ::pg_query::Boolean* _internal_mutable_boolval(); + + public: + // .pg_query.String sval = 4; + bool has_sval() const; + private: + bool _internal_has_sval() const; + + public: + void clear_sval() ; + const ::pg_query::String& sval() const; + PROTOBUF_NODISCARD ::pg_query::String* release_sval(); + ::pg_query::String* mutable_sval(); + void set_allocated_sval(::pg_query::String* value); + void unsafe_arena_set_allocated_sval(::pg_query::String* value); + ::pg_query::String* unsafe_arena_release_sval(); + + private: + const ::pg_query::String& _internal_sval() const; + ::pg_query::String* _internal_mutable_sval(); + + public: + // .pg_query.BitString bsval = 5; + bool has_bsval() const; + private: + bool _internal_has_bsval() const; + + public: + void clear_bsval() ; + const ::pg_query::BitString& bsval() const; + PROTOBUF_NODISCARD ::pg_query::BitString* release_bsval(); + ::pg_query::BitString* mutable_bsval(); + void set_allocated_bsval(::pg_query::BitString* value); + void unsafe_arena_set_allocated_bsval(::pg_query::BitString* value); + ::pg_query::BitString* unsafe_arena_release_bsval(); + + private: + const ::pg_query::BitString& _internal_bsval() const; + ::pg_query::BitString* _internal_mutable_bsval(); + + public: + void clear_val(); + ValCase val_case() const; + // @@protoc_insertion_point(class_scope:pg_query.A_Const) + private: + class _Internal; + void set_has_ival(); + void set_has_fval(); + void set_has_boolval(); + void set_has_sval(); + void set_has_bsval(); + + inline bool has_val() const; + inline void clear_has_val(); + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 7, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + bool isnull_; + ::int32_t location_; + union ValUnion { + constexpr ValUnion() : _constinit_{} {} + ::google::protobuf::internal::ConstantInitialized _constinit_; + ::pg_query::Integer* ival_; + ::pg_query::Float* fval_; + ::pg_query::Boolean* boolval_; + ::pg_query::String* sval_; + ::pg_query::BitString* bsval_; + } val_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::uint32_t _oneof_case_[1]; + + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class A_ArrayExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.A_ArrayExpr) */ { + public: + inline A_ArrayExpr() : A_ArrayExpr(nullptr) {} + ~A_ArrayExpr() override; + template + explicit PROTOBUF_CONSTEXPR A_ArrayExpr(::google::protobuf::internal::ConstantInitialized); + + inline A_ArrayExpr(const A_ArrayExpr& from) + : A_ArrayExpr(nullptr, from) {} + A_ArrayExpr(A_ArrayExpr&& from) noexcept + : A_ArrayExpr() { + *this = ::std::move(from); + } + + inline A_ArrayExpr& operator=(const A_ArrayExpr& from) { + CopyFrom(from); + return *this; + } + inline A_ArrayExpr& operator=(A_ArrayExpr&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const A_ArrayExpr& default_instance() { + return *internal_default_instance(); + } + static inline const A_ArrayExpr* internal_default_instance() { + return reinterpret_cast( + &_A_ArrayExpr_default_instance_); + } + static constexpr int kIndexInFileMessages = + 79; + + friend void swap(A_ArrayExpr& a, A_ArrayExpr& b) { + a.Swap(&b); + } + inline void Swap(A_ArrayExpr* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(A_ArrayExpr* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + A_ArrayExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const A_ArrayExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const A_ArrayExpr& from) { + A_ArrayExpr::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(A_ArrayExpr* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.A_ArrayExpr"; + } + protected: + explicit A_ArrayExpr(::google::protobuf::Arena* arena); + A_ArrayExpr(::google::protobuf::Arena* arena, const A_ArrayExpr& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kElementsFieldNumber = 1, + kLocationFieldNumber = 2, + }; + // repeated .pg_query.Node elements = 1 [json_name = "elements"]; + int elements_size() const; + private: + int _internal_elements_size() const; + + public: + void clear_elements() ; + ::pg_query::Node* mutable_elements(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_elements(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_elements() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_elements(); + public: + const ::pg_query::Node& elements(int index) const; + ::pg_query::Node* add_elements(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + elements() const; + // int32 location = 2 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.A_ArrayExpr) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > elements_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class A_Expr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.A_Expr) */ { + public: + inline A_Expr() : A_Expr(nullptr) {} + ~A_Expr() override; + template + explicit PROTOBUF_CONSTEXPR A_Expr(::google::protobuf::internal::ConstantInitialized); + + inline A_Expr(const A_Expr& from) + : A_Expr(nullptr, from) {} + A_Expr(A_Expr&& from) noexcept + : A_Expr() { + *this = ::std::move(from); + } + + inline A_Expr& operator=(const A_Expr& from) { + CopyFrom(from); + return *this; + } + inline A_Expr& operator=(A_Expr&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const A_Expr& default_instance() { + return *internal_default_instance(); + } + static inline const A_Expr* internal_default_instance() { + return reinterpret_cast( + &_A_Expr_default_instance_); + } + static constexpr int kIndexInFileMessages = + 71; + + friend void swap(A_Expr& a, A_Expr& b) { + a.Swap(&b); + } + inline void Swap(A_Expr* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(A_Expr* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + A_Expr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const A_Expr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const A_Expr& from) { + A_Expr::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(A_Expr* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.A_Expr"; + } + protected: + explicit A_Expr(::google::protobuf::Arena* arena); + A_Expr(::google::protobuf::Arena* arena, const A_Expr& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 2, + kLexprFieldNumber = 3, + kRexprFieldNumber = 4, + kKindFieldNumber = 1, + kLocationFieldNumber = 5, + }; + // repeated .pg_query.Node name = 2 [json_name = "name"]; + int name_size() const; + private: + int _internal_name_size() const; + + public: + void clear_name() ; + ::pg_query::Node* mutable_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_name(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_name(); + public: + const ::pg_query::Node& name(int index) const; + ::pg_query::Node* add_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + name() const; + // .pg_query.Node lexpr = 3 [json_name = "lexpr"]; + bool has_lexpr() const; + void clear_lexpr() ; + const ::pg_query::Node& lexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_lexpr(); + ::pg_query::Node* mutable_lexpr(); + void set_allocated_lexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_lexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_lexpr(); + + private: + const ::pg_query::Node& _internal_lexpr() const; + ::pg_query::Node* _internal_mutable_lexpr(); + + public: + // .pg_query.Node rexpr = 4 [json_name = "rexpr"]; + bool has_rexpr() const; + void clear_rexpr() ; + const ::pg_query::Node& rexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_rexpr(); + ::pg_query::Node* mutable_rexpr(); + void set_allocated_rexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_rexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_rexpr(); + + private: + const ::pg_query::Node& _internal_rexpr() const; + ::pg_query::Node* _internal_mutable_rexpr(); + + public: + // .pg_query.A_Expr_Kind kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::A_Expr_Kind kind() const; + void set_kind(::pg_query::A_Expr_Kind value); + + private: + ::pg_query::A_Expr_Kind _internal_kind() const; + void _internal_set_kind(::pg_query::A_Expr_Kind value); + + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.A_Expr) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > name_; + ::pg_query::Node* lexpr_; + ::pg_query::Node* rexpr_; + int kind_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class A_Indices final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.A_Indices) */ { + public: + inline A_Indices() : A_Indices(nullptr) {} + ~A_Indices() override; + template + explicit PROTOBUF_CONSTEXPR A_Indices(::google::protobuf::internal::ConstantInitialized); + + inline A_Indices(const A_Indices& from) + : A_Indices(nullptr, from) {} + A_Indices(A_Indices&& from) noexcept + : A_Indices() { + *this = ::std::move(from); + } + + inline A_Indices& operator=(const A_Indices& from) { + CopyFrom(from); + return *this; + } + inline A_Indices& operator=(A_Indices&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const A_Indices& default_instance() { + return *internal_default_instance(); + } + static inline const A_Indices* internal_default_instance() { + return reinterpret_cast( + &_A_Indices_default_instance_); + } + static constexpr int kIndexInFileMessages = + 77; + + friend void swap(A_Indices& a, A_Indices& b) { + a.Swap(&b); + } + inline void Swap(A_Indices* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(A_Indices* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + A_Indices* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const A_Indices& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const A_Indices& from) { + A_Indices::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(A_Indices* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.A_Indices"; + } + protected: + explicit A_Indices(::google::protobuf::Arena* arena); + A_Indices(::google::protobuf::Arena* arena, const A_Indices& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kLidxFieldNumber = 2, + kUidxFieldNumber = 3, + kIsSliceFieldNumber = 1, + }; + // .pg_query.Node lidx = 2 [json_name = "lidx"]; + bool has_lidx() const; + void clear_lidx() ; + const ::pg_query::Node& lidx() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_lidx(); + ::pg_query::Node* mutable_lidx(); + void set_allocated_lidx(::pg_query::Node* value); + void unsafe_arena_set_allocated_lidx(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_lidx(); + + private: + const ::pg_query::Node& _internal_lidx() const; + ::pg_query::Node* _internal_mutable_lidx(); + + public: + // .pg_query.Node uidx = 3 [json_name = "uidx"]; + bool has_uidx() const; + void clear_uidx() ; + const ::pg_query::Node& uidx() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_uidx(); + ::pg_query::Node* mutable_uidx(); + void set_allocated_uidx(::pg_query::Node* value); + void unsafe_arena_set_allocated_uidx(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_uidx(); + + private: + const ::pg_query::Node& _internal_uidx() const; + ::pg_query::Node* _internal_mutable_uidx(); + + public: + // bool is_slice = 1 [json_name = "is_slice"]; + void clear_is_slice() ; + bool is_slice() const; + void set_is_slice(bool value); + + private: + bool _internal_is_slice() const; + void _internal_set_is_slice(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.A_Indices) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* lidx_; + ::pg_query::Node* uidx_; + bool is_slice_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class A_Indirection final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.A_Indirection) */ { + public: + inline A_Indirection() : A_Indirection(nullptr) {} + ~A_Indirection() override; + template + explicit PROTOBUF_CONSTEXPR A_Indirection(::google::protobuf::internal::ConstantInitialized); + + inline A_Indirection(const A_Indirection& from) + : A_Indirection(nullptr, from) {} + A_Indirection(A_Indirection&& from) noexcept + : A_Indirection() { + *this = ::std::move(from); + } + + inline A_Indirection& operator=(const A_Indirection& from) { + CopyFrom(from); + return *this; + } + inline A_Indirection& operator=(A_Indirection&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const A_Indirection& default_instance() { + return *internal_default_instance(); + } + static inline const A_Indirection* internal_default_instance() { + return reinterpret_cast( + &_A_Indirection_default_instance_); + } + static constexpr int kIndexInFileMessages = + 78; + + friend void swap(A_Indirection& a, A_Indirection& b) { + a.Swap(&b); + } + inline void Swap(A_Indirection* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(A_Indirection* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + A_Indirection* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const A_Indirection& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const A_Indirection& from) { + A_Indirection::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(A_Indirection* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.A_Indirection"; + } + protected: + explicit A_Indirection(::google::protobuf::Arena* arena); + A_Indirection(::google::protobuf::Arena* arena, const A_Indirection& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kIndirectionFieldNumber = 2, + kArgFieldNumber = 1, + }; + // repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; + int indirection_size() const; + private: + int _internal_indirection_size() const; + + public: + void clear_indirection() ; + ::pg_query::Node* mutable_indirection(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_indirection(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_indirection() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_indirection(); + public: + const ::pg_query::Node& indirection(int index) const; + ::pg_query::Node* add_indirection(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + indirection() const; + // .pg_query.Node arg = 1 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); + + private: + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.A_Indirection) private: class _Internal; - void set_has_alias(); - void set_has_range_var(); - void set_has_table_func(); - void set_has_var(); - void set_has_param(); - void set_has_aggref(); - void set_has_grouping_func(); - void set_has_window_func(); - void set_has_subscripting_ref(); - void set_has_func_expr(); - void set_has_named_arg_expr(); - void set_has_op_expr(); - void set_has_distinct_expr(); - void set_has_null_if_expr(); - void set_has_scalar_array_op_expr(); - void set_has_bool_expr(); - void set_has_sub_link(); - void set_has_sub_plan(); - void set_has_alternative_sub_plan(); - void set_has_field_select(); - void set_has_field_store(); - void set_has_relabel_type(); - void set_has_coerce_via_io(); - void set_has_array_coerce_expr(); - void set_has_convert_rowtype_expr(); - void set_has_collate_expr(); - void set_has_case_expr(); - void set_has_case_when(); - void set_has_case_test_expr(); - void set_has_array_expr(); - void set_has_row_expr(); - void set_has_row_compare_expr(); - void set_has_coalesce_expr(); - void set_has_min_max_expr(); - void set_has_sqlvalue_function(); - void set_has_xml_expr(); - void set_has_null_test(); - void set_has_boolean_test(); - void set_has_coerce_to_domain(); - void set_has_coerce_to_domain_value(); - void set_has_set_to_default(); - void set_has_current_of_expr(); - void set_has_next_value_expr(); - void set_has_inference_elem(); - void set_has_target_entry(); - void set_has_range_tbl_ref(); - void set_has_join_expr(); - void set_has_from_expr(); - void set_has_on_conflict_expr(); - void set_has_into_clause(); - void set_has_merge_action(); - void set_has_raw_stmt(); - void set_has_query(); - void set_has_insert_stmt(); - void set_has_delete_stmt(); - void set_has_update_stmt(); - void set_has_merge_stmt(); - void set_has_select_stmt(); - void set_has_return_stmt(); - void set_has_plassign_stmt(); - void set_has_alter_table_stmt(); - void set_has_alter_table_cmd(); - void set_has_alter_domain_stmt(); - void set_has_set_operation_stmt(); - void set_has_grant_stmt(); - void set_has_grant_role_stmt(); - void set_has_alter_default_privileges_stmt(); - void set_has_close_portal_stmt(); - void set_has_cluster_stmt(); - void set_has_copy_stmt(); - void set_has_create_stmt(); - void set_has_define_stmt(); - void set_has_drop_stmt(); - void set_has_truncate_stmt(); - void set_has_comment_stmt(); - void set_has_fetch_stmt(); - void set_has_index_stmt(); - void set_has_create_function_stmt(); - void set_has_alter_function_stmt(); - void set_has_do_stmt(); - void set_has_rename_stmt(); - void set_has_rule_stmt(); - void set_has_notify_stmt(); - void set_has_listen_stmt(); - void set_has_unlisten_stmt(); - void set_has_transaction_stmt(); - void set_has_view_stmt(); - void set_has_load_stmt(); - void set_has_create_domain_stmt(); - void set_has_createdb_stmt(); - void set_has_dropdb_stmt(); - void set_has_vacuum_stmt(); - void set_has_explain_stmt(); - void set_has_create_table_as_stmt(); - void set_has_create_seq_stmt(); - void set_has_alter_seq_stmt(); - void set_has_variable_set_stmt(); - void set_has_variable_show_stmt(); - void set_has_discard_stmt(); - void set_has_create_trig_stmt(); - void set_has_create_plang_stmt(); - void set_has_create_role_stmt(); - void set_has_alter_role_stmt(); - void set_has_drop_role_stmt(); - void set_has_lock_stmt(); - void set_has_constraints_set_stmt(); - void set_has_reindex_stmt(); - void set_has_check_point_stmt(); - void set_has_create_schema_stmt(); - void set_has_alter_database_stmt(); - void set_has_alter_database_refresh_coll_stmt(); - void set_has_alter_database_set_stmt(); - void set_has_alter_role_set_stmt(); - void set_has_create_conversion_stmt(); - void set_has_create_cast_stmt(); - void set_has_create_op_class_stmt(); - void set_has_create_op_family_stmt(); - void set_has_alter_op_family_stmt(); - void set_has_prepare_stmt(); - void set_has_execute_stmt(); - void set_has_deallocate_stmt(); - void set_has_declare_cursor_stmt(); - void set_has_create_table_space_stmt(); - void set_has_drop_table_space_stmt(); - void set_has_alter_object_depends_stmt(); - void set_has_alter_object_schema_stmt(); - void set_has_alter_owner_stmt(); - void set_has_alter_operator_stmt(); - void set_has_alter_type_stmt(); - void set_has_drop_owned_stmt(); - void set_has_reassign_owned_stmt(); - void set_has_composite_type_stmt(); - void set_has_create_enum_stmt(); - void set_has_create_range_stmt(); - void set_has_alter_enum_stmt(); - void set_has_alter_tsdictionary_stmt(); - void set_has_alter_tsconfiguration_stmt(); - void set_has_create_fdw_stmt(); - void set_has_alter_fdw_stmt(); - void set_has_create_foreign_server_stmt(); - void set_has_alter_foreign_server_stmt(); - void set_has_create_user_mapping_stmt(); - void set_has_alter_user_mapping_stmt(); - void set_has_drop_user_mapping_stmt(); - void set_has_alter_table_space_options_stmt(); - void set_has_alter_table_move_all_stmt(); - void set_has_sec_label_stmt(); - void set_has_create_foreign_table_stmt(); - void set_has_import_foreign_schema_stmt(); - void set_has_create_extension_stmt(); - void set_has_alter_extension_stmt(); - void set_has_alter_extension_contents_stmt(); - void set_has_create_event_trig_stmt(); - void set_has_alter_event_trig_stmt(); - void set_has_refresh_mat_view_stmt(); - void set_has_replica_identity_stmt(); - void set_has_alter_system_stmt(); - void set_has_create_policy_stmt(); - void set_has_alter_policy_stmt(); - void set_has_create_transform_stmt(); - void set_has_create_am_stmt(); - void set_has_create_publication_stmt(); - void set_has_alter_publication_stmt(); - void set_has_create_subscription_stmt(); - void set_has_alter_subscription_stmt(); - void set_has_drop_subscription_stmt(); - void set_has_create_stats_stmt(); - void set_has_alter_collation_stmt(); - void set_has_call_stmt(); - void set_has_alter_stats_stmt(); - void set_has_a_expr(); - void set_has_column_ref(); - void set_has_param_ref(); - void set_has_func_call(); - void set_has_a_star(); - void set_has_a_indices(); - void set_has_a_indirection(); - void set_has_a_array_expr(); - void set_has_res_target(); - void set_has_multi_assign_ref(); - void set_has_type_cast(); - void set_has_collate_clause(); - void set_has_sort_by(); - void set_has_window_def(); - void set_has_range_subselect(); - void set_has_range_function(); - void set_has_range_table_sample(); - void set_has_range_table_func(); - void set_has_range_table_func_col(); - void set_has_type_name(); - void set_has_column_def(); - void set_has_index_elem(); - void set_has_stats_elem(); - void set_has_constraint(); - void set_has_def_elem(); - void set_has_range_tbl_entry(); - void set_has_range_tbl_function(); - void set_has_table_sample_clause(); - void set_has_with_check_option(); - void set_has_sort_group_clause(); - void set_has_grouping_set(); - void set_has_window_clause(); - void set_has_object_with_args(); - void set_has_access_priv(); - void set_has_create_op_class_item(); - void set_has_table_like_clause(); - void set_has_function_parameter(); - void set_has_locking_clause(); - void set_has_row_mark_clause(); - void set_has_xml_serialize(); - void set_has_with_clause(); - void set_has_infer_clause(); - void set_has_on_conflict_clause(); - void set_has_ctesearch_clause(); - void set_has_ctecycle_clause(); - void set_has_common_table_expr(); - void set_has_merge_when_clause(); - void set_has_role_spec(); - void set_has_trigger_transition(); - void set_has_partition_elem(); - void set_has_partition_spec(); - void set_has_partition_bound_spec(); - void set_has_partition_range_datum(); - void set_has_partition_cmd(); - void set_has_vacuum_relation(); - void set_has_publication_obj_spec(); - void set_has_publication_table(); - void set_has_inline_code_block(); - void set_has_call_context(); - void set_has_integer(); - void set_has_float_(); - void set_has_boolean(); - void set_has_string(); - void set_has_bit_string(); - void set_has_list(); - void set_has_int_list(); - void set_has_oid_list(); - void set_has_a_const(); - inline bool has_node() const; - inline void clear_has_node(); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > indirection_; + ::pg_query::Node* arg_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class AccessPriv final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AccessPriv) */ { + public: + inline AccessPriv() : AccessPriv(nullptr) {} + ~AccessPriv() override; + template + explicit PROTOBUF_CONSTEXPR AccessPriv(::google::protobuf::internal::ConstantInitialized); + + inline AccessPriv(const AccessPriv& from) + : AccessPriv(nullptr, from) {} + AccessPriv(AccessPriv&& from) noexcept + : AccessPriv() { + *this = ::std::move(from); + } + + inline AccessPriv& operator=(const AccessPriv& from) { + CopyFrom(from); + return *this; + } + inline AccessPriv& operator=(AccessPriv&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AccessPriv& default_instance() { + return *internal_default_instance(); + } + static inline const AccessPriv* internal_default_instance() { + return reinterpret_cast( + &_AccessPriv_default_instance_); + } + static constexpr int kIndexInFileMessages = + 143; + + friend void swap(AccessPriv& a, AccessPriv& b) { + a.Swap(&b); + } + inline void Swap(AccessPriv* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AccessPriv* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AccessPriv* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AccessPriv& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AccessPriv& from) { + AccessPriv::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(AccessPriv* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AccessPriv"; + } + protected: + explicit AccessPriv(::google::protobuf::Arena* arena); + AccessPriv(::google::protobuf::Arena* arena, const AccessPriv& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kColsFieldNumber = 2, + kPrivNameFieldNumber = 1, + }; + // repeated .pg_query.Node cols = 2 [json_name = "cols"]; + int cols_size() const; + private: + int _internal_cols_size() const; + + public: + void clear_cols() ; + ::pg_query::Node* mutable_cols(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_cols(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_cols() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_cols(); + public: + const ::pg_query::Node& cols(int index) const; + ::pg_query::Node* add_cols(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + cols() const; + // string priv_name = 1 [json_name = "priv_name"]; + void clear_priv_name() ; + const std::string& priv_name() const; + template + void set_priv_name(Arg_&& arg, Args_... args); + std::string* mutable_priv_name(); + PROTOBUF_NODISCARD std::string* release_priv_name(); + void set_allocated_priv_name(std::string* value); + + private: + const std::string& _internal_priv_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_priv_name( + const std::string& value); + std::string* _internal_mutable_priv_name(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AccessPriv) + private: + class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 37, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - union NodeUnion { - constexpr NodeUnion() : _constinit_{} {} - ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_; - ::pg_query::Alias* alias_; - ::pg_query::RangeVar* range_var_; - ::pg_query::TableFunc* table_func_; - ::pg_query::Var* var_; - ::pg_query::Param* param_; - ::pg_query::Aggref* aggref_; - ::pg_query::GroupingFunc* grouping_func_; - ::pg_query::WindowFunc* window_func_; - ::pg_query::SubscriptingRef* subscripting_ref_; - ::pg_query::FuncExpr* func_expr_; - ::pg_query::NamedArgExpr* named_arg_expr_; - ::pg_query::OpExpr* op_expr_; - ::pg_query::DistinctExpr* distinct_expr_; - ::pg_query::NullIfExpr* null_if_expr_; - ::pg_query::ScalarArrayOpExpr* scalar_array_op_expr_; - ::pg_query::BoolExpr* bool_expr_; - ::pg_query::SubLink* sub_link_; - ::pg_query::SubPlan* sub_plan_; - ::pg_query::AlternativeSubPlan* alternative_sub_plan_; - ::pg_query::FieldSelect* field_select_; - ::pg_query::FieldStore* field_store_; - ::pg_query::RelabelType* relabel_type_; - ::pg_query::CoerceViaIO* coerce_via_io_; - ::pg_query::ArrayCoerceExpr* array_coerce_expr_; - ::pg_query::ConvertRowtypeExpr* convert_rowtype_expr_; - ::pg_query::CollateExpr* collate_expr_; - ::pg_query::CaseExpr* case_expr_; - ::pg_query::CaseWhen* case_when_; - ::pg_query::CaseTestExpr* case_test_expr_; - ::pg_query::ArrayExpr* array_expr_; - ::pg_query::RowExpr* row_expr_; - ::pg_query::RowCompareExpr* row_compare_expr_; - ::pg_query::CoalesceExpr* coalesce_expr_; - ::pg_query::MinMaxExpr* min_max_expr_; - ::pg_query::SQLValueFunction* sqlvalue_function_; - ::pg_query::XmlExpr* xml_expr_; - ::pg_query::NullTest* null_test_; - ::pg_query::BooleanTest* boolean_test_; - ::pg_query::CoerceToDomain* coerce_to_domain_; - ::pg_query::CoerceToDomainValue* coerce_to_domain_value_; - ::pg_query::SetToDefault* set_to_default_; - ::pg_query::CurrentOfExpr* current_of_expr_; - ::pg_query::NextValueExpr* next_value_expr_; - ::pg_query::InferenceElem* inference_elem_; - ::pg_query::TargetEntry* target_entry_; - ::pg_query::RangeTblRef* range_tbl_ref_; - ::pg_query::JoinExpr* join_expr_; - ::pg_query::FromExpr* from_expr_; - ::pg_query::OnConflictExpr* on_conflict_expr_; - ::pg_query::IntoClause* into_clause_; - ::pg_query::MergeAction* merge_action_; - ::pg_query::RawStmt* raw_stmt_; - ::pg_query::Query* query_; - ::pg_query::InsertStmt* insert_stmt_; - ::pg_query::DeleteStmt* delete_stmt_; - ::pg_query::UpdateStmt* update_stmt_; - ::pg_query::MergeStmt* merge_stmt_; - ::pg_query::SelectStmt* select_stmt_; - ::pg_query::ReturnStmt* return_stmt_; - ::pg_query::PLAssignStmt* plassign_stmt_; - ::pg_query::AlterTableStmt* alter_table_stmt_; - ::pg_query::AlterTableCmd* alter_table_cmd_; - ::pg_query::AlterDomainStmt* alter_domain_stmt_; - ::pg_query::SetOperationStmt* set_operation_stmt_; - ::pg_query::GrantStmt* grant_stmt_; - ::pg_query::GrantRoleStmt* grant_role_stmt_; - ::pg_query::AlterDefaultPrivilegesStmt* alter_default_privileges_stmt_; - ::pg_query::ClosePortalStmt* close_portal_stmt_; - ::pg_query::ClusterStmt* cluster_stmt_; - ::pg_query::CopyStmt* copy_stmt_; - ::pg_query::CreateStmt* create_stmt_; - ::pg_query::DefineStmt* define_stmt_; - ::pg_query::DropStmt* drop_stmt_; - ::pg_query::TruncateStmt* truncate_stmt_; - ::pg_query::CommentStmt* comment_stmt_; - ::pg_query::FetchStmt* fetch_stmt_; - ::pg_query::IndexStmt* index_stmt_; - ::pg_query::CreateFunctionStmt* create_function_stmt_; - ::pg_query::AlterFunctionStmt* alter_function_stmt_; - ::pg_query::DoStmt* do_stmt_; - ::pg_query::RenameStmt* rename_stmt_; - ::pg_query::RuleStmt* rule_stmt_; - ::pg_query::NotifyStmt* notify_stmt_; - ::pg_query::ListenStmt* listen_stmt_; - ::pg_query::UnlistenStmt* unlisten_stmt_; - ::pg_query::TransactionStmt* transaction_stmt_; - ::pg_query::ViewStmt* view_stmt_; - ::pg_query::LoadStmt* load_stmt_; - ::pg_query::CreateDomainStmt* create_domain_stmt_; - ::pg_query::CreatedbStmt* createdb_stmt_; - ::pg_query::DropdbStmt* dropdb_stmt_; - ::pg_query::VacuumStmt* vacuum_stmt_; - ::pg_query::ExplainStmt* explain_stmt_; - ::pg_query::CreateTableAsStmt* create_table_as_stmt_; - ::pg_query::CreateSeqStmt* create_seq_stmt_; - ::pg_query::AlterSeqStmt* alter_seq_stmt_; - ::pg_query::VariableSetStmt* variable_set_stmt_; - ::pg_query::VariableShowStmt* variable_show_stmt_; - ::pg_query::DiscardStmt* discard_stmt_; - ::pg_query::CreateTrigStmt* create_trig_stmt_; - ::pg_query::CreatePLangStmt* create_plang_stmt_; - ::pg_query::CreateRoleStmt* create_role_stmt_; - ::pg_query::AlterRoleStmt* alter_role_stmt_; - ::pg_query::DropRoleStmt* drop_role_stmt_; - ::pg_query::LockStmt* lock_stmt_; - ::pg_query::ConstraintsSetStmt* constraints_set_stmt_; - ::pg_query::ReindexStmt* reindex_stmt_; - ::pg_query::CheckPointStmt* check_point_stmt_; - ::pg_query::CreateSchemaStmt* create_schema_stmt_; - ::pg_query::AlterDatabaseStmt* alter_database_stmt_; - ::pg_query::AlterDatabaseRefreshCollStmt* alter_database_refresh_coll_stmt_; - ::pg_query::AlterDatabaseSetStmt* alter_database_set_stmt_; - ::pg_query::AlterRoleSetStmt* alter_role_set_stmt_; - ::pg_query::CreateConversionStmt* create_conversion_stmt_; - ::pg_query::CreateCastStmt* create_cast_stmt_; - ::pg_query::CreateOpClassStmt* create_op_class_stmt_; - ::pg_query::CreateOpFamilyStmt* create_op_family_stmt_; - ::pg_query::AlterOpFamilyStmt* alter_op_family_stmt_; - ::pg_query::PrepareStmt* prepare_stmt_; - ::pg_query::ExecuteStmt* execute_stmt_; - ::pg_query::DeallocateStmt* deallocate_stmt_; - ::pg_query::DeclareCursorStmt* declare_cursor_stmt_; - ::pg_query::CreateTableSpaceStmt* create_table_space_stmt_; - ::pg_query::DropTableSpaceStmt* drop_table_space_stmt_; - ::pg_query::AlterObjectDependsStmt* alter_object_depends_stmt_; - ::pg_query::AlterObjectSchemaStmt* alter_object_schema_stmt_; - ::pg_query::AlterOwnerStmt* alter_owner_stmt_; - ::pg_query::AlterOperatorStmt* alter_operator_stmt_; - ::pg_query::AlterTypeStmt* alter_type_stmt_; - ::pg_query::DropOwnedStmt* drop_owned_stmt_; - ::pg_query::ReassignOwnedStmt* reassign_owned_stmt_; - ::pg_query::CompositeTypeStmt* composite_type_stmt_; - ::pg_query::CreateEnumStmt* create_enum_stmt_; - ::pg_query::CreateRangeStmt* create_range_stmt_; - ::pg_query::AlterEnumStmt* alter_enum_stmt_; - ::pg_query::AlterTSDictionaryStmt* alter_tsdictionary_stmt_; - ::pg_query::AlterTSConfigurationStmt* alter_tsconfiguration_stmt_; - ::pg_query::CreateFdwStmt* create_fdw_stmt_; - ::pg_query::AlterFdwStmt* alter_fdw_stmt_; - ::pg_query::CreateForeignServerStmt* create_foreign_server_stmt_; - ::pg_query::AlterForeignServerStmt* alter_foreign_server_stmt_; - ::pg_query::CreateUserMappingStmt* create_user_mapping_stmt_; - ::pg_query::AlterUserMappingStmt* alter_user_mapping_stmt_; - ::pg_query::DropUserMappingStmt* drop_user_mapping_stmt_; - ::pg_query::AlterTableSpaceOptionsStmt* alter_table_space_options_stmt_; - ::pg_query::AlterTableMoveAllStmt* alter_table_move_all_stmt_; - ::pg_query::SecLabelStmt* sec_label_stmt_; - ::pg_query::CreateForeignTableStmt* create_foreign_table_stmt_; - ::pg_query::ImportForeignSchemaStmt* import_foreign_schema_stmt_; - ::pg_query::CreateExtensionStmt* create_extension_stmt_; - ::pg_query::AlterExtensionStmt* alter_extension_stmt_; - ::pg_query::AlterExtensionContentsStmt* alter_extension_contents_stmt_; - ::pg_query::CreateEventTrigStmt* create_event_trig_stmt_; - ::pg_query::AlterEventTrigStmt* alter_event_trig_stmt_; - ::pg_query::RefreshMatViewStmt* refresh_mat_view_stmt_; - ::pg_query::ReplicaIdentityStmt* replica_identity_stmt_; - ::pg_query::AlterSystemStmt* alter_system_stmt_; - ::pg_query::CreatePolicyStmt* create_policy_stmt_; - ::pg_query::AlterPolicyStmt* alter_policy_stmt_; - ::pg_query::CreateTransformStmt* create_transform_stmt_; - ::pg_query::CreateAmStmt* create_am_stmt_; - ::pg_query::CreatePublicationStmt* create_publication_stmt_; - ::pg_query::AlterPublicationStmt* alter_publication_stmt_; - ::pg_query::CreateSubscriptionStmt* create_subscription_stmt_; - ::pg_query::AlterSubscriptionStmt* alter_subscription_stmt_; - ::pg_query::DropSubscriptionStmt* drop_subscription_stmt_; - ::pg_query::CreateStatsStmt* create_stats_stmt_; - ::pg_query::AlterCollationStmt* alter_collation_stmt_; - ::pg_query::CallStmt* call_stmt_; - ::pg_query::AlterStatsStmt* alter_stats_stmt_; - ::pg_query::A_Expr* a_expr_; - ::pg_query::ColumnRef* column_ref_; - ::pg_query::ParamRef* param_ref_; - ::pg_query::FuncCall* func_call_; - ::pg_query::A_Star* a_star_; - ::pg_query::A_Indices* a_indices_; - ::pg_query::A_Indirection* a_indirection_; - ::pg_query::A_ArrayExpr* a_array_expr_; - ::pg_query::ResTarget* res_target_; - ::pg_query::MultiAssignRef* multi_assign_ref_; - ::pg_query::TypeCast* type_cast_; - ::pg_query::CollateClause* collate_clause_; - ::pg_query::SortBy* sort_by_; - ::pg_query::WindowDef* window_def_; - ::pg_query::RangeSubselect* range_subselect_; - ::pg_query::RangeFunction* range_function_; - ::pg_query::RangeTableSample* range_table_sample_; - ::pg_query::RangeTableFunc* range_table_func_; - ::pg_query::RangeTableFuncCol* range_table_func_col_; - ::pg_query::TypeName* type_name_; - ::pg_query::ColumnDef* column_def_; - ::pg_query::IndexElem* index_elem_; - ::pg_query::StatsElem* stats_elem_; - ::pg_query::Constraint* constraint_; - ::pg_query::DefElem* def_elem_; - ::pg_query::RangeTblEntry* range_tbl_entry_; - ::pg_query::RangeTblFunction* range_tbl_function_; - ::pg_query::TableSampleClause* table_sample_clause_; - ::pg_query::WithCheckOption* with_check_option_; - ::pg_query::SortGroupClause* sort_group_clause_; - ::pg_query::GroupingSet* grouping_set_; - ::pg_query::WindowClause* window_clause_; - ::pg_query::ObjectWithArgs* object_with_args_; - ::pg_query::AccessPriv* access_priv_; - ::pg_query::CreateOpClassItem* create_op_class_item_; - ::pg_query::TableLikeClause* table_like_clause_; - ::pg_query::FunctionParameter* function_parameter_; - ::pg_query::LockingClause* locking_clause_; - ::pg_query::RowMarkClause* row_mark_clause_; - ::pg_query::XmlSerialize* xml_serialize_; - ::pg_query::WithClause* with_clause_; - ::pg_query::InferClause* infer_clause_; - ::pg_query::OnConflictClause* on_conflict_clause_; - ::pg_query::CTESearchClause* ctesearch_clause_; - ::pg_query::CTECycleClause* ctecycle_clause_; - ::pg_query::CommonTableExpr* common_table_expr_; - ::pg_query::MergeWhenClause* merge_when_clause_; - ::pg_query::RoleSpec* role_spec_; - ::pg_query::TriggerTransition* trigger_transition_; - ::pg_query::PartitionElem* partition_elem_; - ::pg_query::PartitionSpec* partition_spec_; - ::pg_query::PartitionBoundSpec* partition_bound_spec_; - ::pg_query::PartitionRangeDatum* partition_range_datum_; - ::pg_query::PartitionCmd* partition_cmd_; - ::pg_query::VacuumRelation* vacuum_relation_; - ::pg_query::PublicationObjSpec* publication_obj_spec_; - ::pg_query::PublicationTable* publication_table_; - ::pg_query::InlineCodeBlock* inline_code_block_; - ::pg_query::CallContext* call_context_; - ::pg_query::Integer* integer_; - ::pg_query::Float* float__; - ::pg_query::Boolean* boolean_; - ::pg_query::String* string_; - ::pg_query::BitString* bit_string_; - ::pg_query::List* list_; - ::pg_query::IntList* int_list_; - ::pg_query::OidList* oid_list_; - ::pg_query::A_Const* a_const_; - } node_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t _oneof_case_[1]; + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > cols_; + ::google::protobuf::internal::ArenaStringPtr priv_name_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class Aggref final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Aggref) */ { + public: + inline Aggref() : Aggref(nullptr) {} + ~Aggref() override; + template + explicit PROTOBUF_CONSTEXPR Aggref(::google::protobuf::internal::ConstantInitialized); + + inline Aggref(const Aggref& from) + : Aggref(nullptr, from) {} + Aggref(Aggref&& from) noexcept + : Aggref() { + *this = ::std::move(from); + } + + inline Aggref& operator=(const Aggref& from) { + CopyFrom(from); + return *this; + } + inline Aggref& operator=(Aggref&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Aggref& default_instance() { + return *internal_default_instance(); + } + static inline const Aggref* internal_default_instance() { + return reinterpret_cast( + &_Aggref_default_instance_); + } + static constexpr int kIndexInFileMessages = + 18; + + friend void swap(Aggref& a, Aggref& b) { + a.Swap(&b); + } + inline void Swap(Aggref* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Aggref* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Aggref* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Aggref& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Aggref& from) { + Aggref::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(Aggref* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Aggref"; + } + protected: + explicit Aggref(::google::protobuf::Arena* arena); + Aggref(::google::protobuf::Arena* arena, const Aggref& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kAggargtypesFieldNumber = 6, + kAggdirectargsFieldNumber = 7, + kArgsFieldNumber = 8, + kAggorderFieldNumber = 9, + kAggdistinctFieldNumber = 10, + kAggkindFieldNumber = 14, + kXprFieldNumber = 1, + kAggfilterFieldNumber = 11, + kAggfnoidFieldNumber = 2, + kAggtypeFieldNumber = 3, + kAggcollidFieldNumber = 4, + kInputcollidFieldNumber = 5, + kAggstarFieldNumber = 12, + kAggvariadicFieldNumber = 13, + kAgglevelsupFieldNumber = 15, + kAggsplitFieldNumber = 16, + kAggnoFieldNumber = 17, + kAggtransnoFieldNumber = 18, + kLocationFieldNumber = 19, + }; + // repeated .pg_query.Node aggargtypes = 6 [json_name = "aggargtypes"]; + int aggargtypes_size() const; + private: + int _internal_aggargtypes_size() const; + + public: + void clear_aggargtypes() ; + ::pg_query::Node* mutable_aggargtypes(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_aggargtypes(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_aggargtypes() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_aggargtypes(); + public: + const ::pg_query::Node& aggargtypes(int index) const; + ::pg_query::Node* add_aggargtypes(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + aggargtypes() const; + // repeated .pg_query.Node aggdirectargs = 7 [json_name = "aggdirectargs"]; + int aggdirectargs_size() const; + private: + int _internal_aggdirectargs_size() const; + + public: + void clear_aggdirectargs() ; + ::pg_query::Node* mutable_aggdirectargs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_aggdirectargs(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_aggdirectargs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_aggdirectargs(); + public: + const ::pg_query::Node& aggdirectargs(int index) const; + ::pg_query::Node* add_aggdirectargs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + aggdirectargs() const; + // repeated .pg_query.Node args = 8 [json_name = "args"]; + int args_size() const; + private: + int _internal_args_size() const; + + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); + public: + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // repeated .pg_query.Node aggorder = 9 [json_name = "aggorder"]; + int aggorder_size() const; + private: + int _internal_aggorder_size() const; + + public: + void clear_aggorder() ; + ::pg_query::Node* mutable_aggorder(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_aggorder(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_aggorder() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_aggorder(); + public: + const ::pg_query::Node& aggorder(int index) const; + ::pg_query::Node* add_aggorder(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + aggorder() const; + // repeated .pg_query.Node aggdistinct = 10 [json_name = "aggdistinct"]; + int aggdistinct_size() const; + private: + int _internal_aggdistinct_size() const; + + public: + void clear_aggdistinct() ; + ::pg_query::Node* mutable_aggdistinct(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_aggdistinct(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_aggdistinct() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_aggdistinct(); + public: + const ::pg_query::Node& aggdistinct(int index) const; + ::pg_query::Node* add_aggdistinct(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + aggdistinct() const; + // string aggkind = 14 [json_name = "aggkind"]; + void clear_aggkind() ; + const std::string& aggkind() const; + template + void set_aggkind(Arg_&& arg, Args_... args); + std::string* mutable_aggkind(); + PROTOBUF_NODISCARD std::string* release_aggkind(); + void set_allocated_aggkind(std::string* value); + + private: + const std::string& _internal_aggkind() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_aggkind( + const std::string& value); + std::string* _internal_mutable_aggkind(); + + public: + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + + private: + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + + public: + // .pg_query.Node aggfilter = 11 [json_name = "aggfilter"]; + bool has_aggfilter() const; + void clear_aggfilter() ; + const ::pg_query::Node& aggfilter() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_aggfilter(); + ::pg_query::Node* mutable_aggfilter(); + void set_allocated_aggfilter(::pg_query::Node* value); + void unsafe_arena_set_allocated_aggfilter(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_aggfilter(); + + private: + const ::pg_query::Node& _internal_aggfilter() const; + ::pg_query::Node* _internal_mutable_aggfilter(); + + public: + // uint32 aggfnoid = 2 [json_name = "aggfnoid"]; + void clear_aggfnoid() ; + ::uint32_t aggfnoid() const; + void set_aggfnoid(::uint32_t value); + + private: + ::uint32_t _internal_aggfnoid() const; + void _internal_set_aggfnoid(::uint32_t value); + + public: + // uint32 aggtype = 3 [json_name = "aggtype"]; + void clear_aggtype() ; + ::uint32_t aggtype() const; + void set_aggtype(::uint32_t value); + + private: + ::uint32_t _internal_aggtype() const; + void _internal_set_aggtype(::uint32_t value); + + public: + // uint32 aggcollid = 4 [json_name = "aggcollid"]; + void clear_aggcollid() ; + ::uint32_t aggcollid() const; + void set_aggcollid(::uint32_t value); + + private: + ::uint32_t _internal_aggcollid() const; + void _internal_set_aggcollid(::uint32_t value); + + public: + // uint32 inputcollid = 5 [json_name = "inputcollid"]; + void clear_inputcollid() ; + ::uint32_t inputcollid() const; + void set_inputcollid(::uint32_t value); + + private: + ::uint32_t _internal_inputcollid() const; + void _internal_set_inputcollid(::uint32_t value); + + public: + // bool aggstar = 12 [json_name = "aggstar"]; + void clear_aggstar() ; + bool aggstar() const; + void set_aggstar(bool value); + + private: + bool _internal_aggstar() const; + void _internal_set_aggstar(bool value); + + public: + // bool aggvariadic = 13 [json_name = "aggvariadic"]; + void clear_aggvariadic() ; + bool aggvariadic() const; + void set_aggvariadic(bool value); + + private: + bool _internal_aggvariadic() const; + void _internal_set_aggvariadic(bool value); + + public: + // uint32 agglevelsup = 15 [json_name = "agglevelsup"]; + void clear_agglevelsup() ; + ::uint32_t agglevelsup() const; + void set_agglevelsup(::uint32_t value); + + private: + ::uint32_t _internal_agglevelsup() const; + void _internal_set_agglevelsup(::uint32_t value); + + public: + // .pg_query.AggSplit aggsplit = 16 [json_name = "aggsplit"]; + void clear_aggsplit() ; + ::pg_query::AggSplit aggsplit() const; + void set_aggsplit(::pg_query::AggSplit value); + + private: + ::pg_query::AggSplit _internal_aggsplit() const; + void _internal_set_aggsplit(::pg_query::AggSplit value); + + public: + // int32 aggno = 17 [json_name = "aggno"]; + void clear_aggno() ; + ::int32_t aggno() const; + void set_aggno(::int32_t value); + + private: + ::int32_t _internal_aggno() const; + void _internal_set_aggno(::int32_t value); + + public: + // int32 aggtransno = 18 [json_name = "aggtransno"]; + void clear_aggtransno() ; + ::int32_t aggtransno() const; + void set_aggtransno(::int32_t value); + + private: + ::int32_t _internal_aggtransno() const; + void _internal_set_aggtransno(::int32_t value); + + public: + // int32 location = 19 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.Aggref) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 5, 19, 7, + 47, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > aggargtypes_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > aggdirectargs_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > aggorder_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > aggdistinct_; + ::google::protobuf::internal::ArenaStringPtr aggkind_; + ::pg_query::Node* xpr_; + ::pg_query::Node* aggfilter_; + ::uint32_t aggfnoid_; + ::uint32_t aggtype_; + ::uint32_t aggcollid_; + ::uint32_t inputcollid_; + bool aggstar_; + bool aggvariadic_; + ::uint32_t agglevelsup_; + int aggsplit_; + ::int32_t aggno_; + ::int32_t aggtransno_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Integer final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Integer) */ { +class Alias final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Alias) */ { public: - inline Integer() : Integer(nullptr) {} - ~Integer() override; - explicit PROTOBUF_CONSTEXPR Integer(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline Alias() : Alias(nullptr) {} + ~Alias() override; + template + explicit PROTOBUF_CONSTEXPR Alias(::google::protobuf::internal::ConstantInitialized); - Integer(const Integer& from); - Integer(Integer&& from) noexcept - : Integer() { + inline Alias(const Alias& from) + : Alias(nullptr, from) {} + Alias(Alias&& from) noexcept + : Alias() { *this = ::std::move(from); } - inline Integer& operator=(const Integer& from) { + inline Alias& operator=(const Alias& from) { CopyFrom(from); return *this; } - inline Integer& operator=(Integer&& from) noexcept { + inline Alias& operator=(Alias&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -9106,145 +12387,198 @@ class Integer final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Integer& default_instance() { + static const Alias& default_instance() { return *internal_default_instance(); } - static inline const Integer* internal_default_instance() { - return reinterpret_cast( - &_Integer_default_instance_); + static inline const Alias* internal_default_instance() { + return reinterpret_cast( + &_Alias_default_instance_); } static constexpr int kIndexInFileMessages = - 3; + 12; - friend void swap(Integer& a, Integer& b) { + friend void swap(Alias& a, Alias& b) { a.Swap(&b); } - inline void Swap(Integer* other) { + inline void Swap(Alias* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Integer* other) { + void UnsafeArenaSwap(Alias* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Integer* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + Alias* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Integer& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Integer& from) { - Integer::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Alias& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Alias& from) { + Alias::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Integer* other); + void InternalSwap(Alias* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Integer"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Alias"; } protected: - explicit Integer(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit Alias(::google::protobuf::Arena* arena); + Alias(::google::protobuf::Arena* arena, const Alias& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kIvalFieldNumber = 1, + kColnamesFieldNumber = 2, + kAliasnameFieldNumber = 1, }; - // int32 ival = 1; - void clear_ival(); - int32_t ival() const; - void set_ival(int32_t value); + // repeated .pg_query.Node colnames = 2 [json_name = "colnames"]; + int colnames_size() const; + private: + int _internal_colnames_size() const; + + public: + void clear_colnames() ; + ::pg_query::Node* mutable_colnames(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_colnames(); private: - int32_t _internal_ival() const; - void _internal_set_ival(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_colnames() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_colnames(); public: + const ::pg_query::Node& colnames(int index) const; + ::pg_query::Node* add_colnames(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + colnames() const; + // string aliasname = 1 [json_name = "aliasname"]; + void clear_aliasname() ; + const std::string& aliasname() const; + template + void set_aliasname(Arg_&& arg, Args_... args); + std::string* mutable_aliasname(); + PROTOBUF_NODISCARD std::string* release_aliasname(); + void set_allocated_aliasname(std::string* value); - // @@protoc_insertion_point(class_scope:pg_query.Integer) + private: + const std::string& _internal_aliasname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_aliasname( + const std::string& value); + std::string* _internal_mutable_aliasname(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.Alias) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 32, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - int32_t ival_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > colnames_; + ::google::protobuf::internal::ArenaStringPtr aliasname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Float final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Float) */ { +class AlterCollationStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterCollationStmt) */ { public: - inline Float() : Float(nullptr) {} - ~Float() override; - explicit PROTOBUF_CONSTEXPR Float(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterCollationStmt() : AlterCollationStmt(nullptr) {} + ~AlterCollationStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterCollationStmt(::google::protobuf::internal::ConstantInitialized); - Float(const Float& from); - Float(Float&& from) noexcept - : Float() { + inline AlterCollationStmt(const AlterCollationStmt& from) + : AlterCollationStmt(nullptr, from) {} + AlterCollationStmt(AlterCollationStmt&& from) noexcept + : AlterCollationStmt() { *this = ::std::move(from); } - inline Float& operator=(const Float& from) { + inline AlterCollationStmt& operator=(const AlterCollationStmt& from) { CopyFrom(from); return *this; } - inline Float& operator=(Float&& from) noexcept { + inline AlterCollationStmt& operator=(AlterCollationStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -9254,150 +12588,180 @@ class Float final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Float& default_instance() { + static const AlterCollationStmt& default_instance() { return *internal_default_instance(); } - static inline const Float* internal_default_instance() { - return reinterpret_cast( - &_Float_default_instance_); + static inline const AlterCollationStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterCollationStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 4; + 139; - friend void swap(Float& a, Float& b) { + friend void swap(AlterCollationStmt& a, AlterCollationStmt& b) { a.Swap(&b); } - inline void Swap(Float* other) { + inline void Swap(AlterCollationStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Float* other) { + void UnsafeArenaSwap(AlterCollationStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Float* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterCollationStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Float& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Float& from) { - Float::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterCollationStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterCollationStmt& from) { + AlterCollationStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Float* other); + void InternalSwap(AlterCollationStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Float"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterCollationStmt"; } protected: - explicit Float(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterCollationStmt(::google::protobuf::Arena* arena); + AlterCollationStmt(::google::protobuf::Arena* arena, const AlterCollationStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kFvalFieldNumber = 1, + kCollnameFieldNumber = 1, }; - // string fval = 1; - void clear_fval(); - const std::string& fval() const; - template - void set_fval(ArgT0&& arg0, ArgT... args); - std::string* mutable_fval(); - PROTOBUF_NODISCARD std::string* release_fval(); - void set_allocated_fval(std::string* fval); + // repeated .pg_query.Node collname = 1 [json_name = "collname"]; + int collname_size() const; private: - const std::string& _internal_fval() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_fval(const std::string& value); - std::string* _internal_mutable_fval(); - public: + int _internal_collname_size() const; - // @@protoc_insertion_point(class_scope:pg_query.Float) + public: + void clear_collname() ; + ::pg_query::Node* mutable_collname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_collname(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_collname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_collname(); + public: + const ::pg_query::Node& collname(int index) const; + ::pg_query::Node* add_collname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + collname() const; + // @@protoc_insertion_point(class_scope:pg_query.AlterCollationStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr fval_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > collname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Boolean final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Boolean) */ { +class AlterDatabaseSetStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDatabaseSetStmt) */ { public: - inline Boolean() : Boolean(nullptr) {} - ~Boolean() override; - explicit PROTOBUF_CONSTEXPR Boolean(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterDatabaseSetStmt() : AlterDatabaseSetStmt(nullptr) {} + ~AlterDatabaseSetStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterDatabaseSetStmt(::google::protobuf::internal::ConstantInitialized); - Boolean(const Boolean& from); - Boolean(Boolean&& from) noexcept - : Boolean() { + inline AlterDatabaseSetStmt(const AlterDatabaseSetStmt& from) + : AlterDatabaseSetStmt(nullptr, from) {} + AlterDatabaseSetStmt(AlterDatabaseSetStmt&& from) noexcept + : AlterDatabaseSetStmt() { *this = ::std::move(from); } - inline Boolean& operator=(const Boolean& from) { + inline AlterDatabaseSetStmt& operator=(const AlterDatabaseSetStmt& from) { CopyFrom(from); return *this; } - inline Boolean& operator=(Boolean&& from) noexcept { + inline AlterDatabaseSetStmt& operator=(AlterDatabaseSetStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -9407,145 +12771,196 @@ class Boolean final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Boolean& default_instance() { + static const AlterDatabaseSetStmt& default_instance() { return *internal_default_instance(); } - static inline const Boolean* internal_default_instance() { - return reinterpret_cast( - &_Boolean_default_instance_); + static inline const AlterDatabaseSetStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterDatabaseSetStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 5; + 224; - friend void swap(Boolean& a, Boolean& b) { + friend void swap(AlterDatabaseSetStmt& a, AlterDatabaseSetStmt& b) { a.Swap(&b); } - inline void Swap(Boolean* other) { + inline void Swap(AlterDatabaseSetStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Boolean* other) { + void UnsafeArenaSwap(AlterDatabaseSetStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Boolean* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterDatabaseSetStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Boolean& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Boolean& from) { - Boolean::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterDatabaseSetStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterDatabaseSetStmt& from) { + AlterDatabaseSetStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Boolean* other); + void InternalSwap(AlterDatabaseSetStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Boolean"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterDatabaseSetStmt"; } protected: - explicit Boolean(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterDatabaseSetStmt(::google::protobuf::Arena* arena); + AlterDatabaseSetStmt(::google::protobuf::Arena* arena, const AlterDatabaseSetStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kBoolvalFieldNumber = 1, + kDbnameFieldNumber = 1, + kSetstmtFieldNumber = 2, }; - // bool boolval = 1; - void clear_boolval(); - bool boolval() const; - void set_boolval(bool value); + // string dbname = 1 [json_name = "dbname"]; + void clear_dbname() ; + const std::string& dbname() const; + template + void set_dbname(Arg_&& arg, Args_... args); + std::string* mutable_dbname(); + PROTOBUF_NODISCARD std::string* release_dbname(); + void set_allocated_dbname(std::string* value); + private: - bool _internal_boolval() const; - void _internal_set_boolval(bool value); + const std::string& _internal_dbname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname( + const std::string& value); + std::string* _internal_mutable_dbname(); + public: + // .pg_query.VariableSetStmt setstmt = 2 [json_name = "setstmt"]; + bool has_setstmt() const; + void clear_setstmt() ; + const ::pg_query::VariableSetStmt& setstmt() const; + PROTOBUF_NODISCARD ::pg_query::VariableSetStmt* release_setstmt(); + ::pg_query::VariableSetStmt* mutable_setstmt(); + void set_allocated_setstmt(::pg_query::VariableSetStmt* value); + void unsafe_arena_set_allocated_setstmt(::pg_query::VariableSetStmt* value); + ::pg_query::VariableSetStmt* unsafe_arena_release_setstmt(); - // @@protoc_insertion_point(class_scope:pg_query.Boolean) + private: + const ::pg_query::VariableSetStmt& _internal_setstmt() const; + ::pg_query::VariableSetStmt* _internal_mutable_setstmt(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterDatabaseSetStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 44, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - bool boolval_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr dbname_; + ::pg_query::VariableSetStmt* setstmt_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class String final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.String) */ { +class AlterDatabaseStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDatabaseStmt) */ { public: - inline String() : String(nullptr) {} - ~String() override; - explicit PROTOBUF_CONSTEXPR String(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterDatabaseStmt() : AlterDatabaseStmt(nullptr) {} + ~AlterDatabaseStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterDatabaseStmt(::google::protobuf::internal::ConstantInitialized); - String(const String& from); - String(String&& from) noexcept - : String() { + inline AlterDatabaseStmt(const AlterDatabaseStmt& from) + : AlterDatabaseStmt(nullptr, from) {} + AlterDatabaseStmt(AlterDatabaseStmt&& from) noexcept + : AlterDatabaseStmt() { *this = ::std::move(from); } - inline String& operator=(const String& from) { + inline AlterDatabaseStmt& operator=(const AlterDatabaseStmt& from) { CopyFrom(from); return *this; } - inline String& operator=(String&& from) noexcept { + inline AlterDatabaseStmt& operator=(AlterDatabaseStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -9555,150 +12970,198 @@ class String final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const String& default_instance() { + static const AlterDatabaseStmt& default_instance() { return *internal_default_instance(); } - static inline const String* internal_default_instance() { - return reinterpret_cast( - &_String_default_instance_); + static inline const AlterDatabaseStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterDatabaseStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 6; + 222; - friend void swap(String& a, String& b) { + friend void swap(AlterDatabaseStmt& a, AlterDatabaseStmt& b) { a.Swap(&b); } - inline void Swap(String* other) { + inline void Swap(AlterDatabaseStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(String* other) { + void UnsafeArenaSwap(AlterDatabaseStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - String* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterDatabaseStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const String& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const String& from) { - String::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterDatabaseStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterDatabaseStmt& from) { + AlterDatabaseStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(String* other); + void InternalSwap(AlterDatabaseStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.String"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterDatabaseStmt"; } protected: - explicit String(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterDatabaseStmt(::google::protobuf::Arena* arena); + AlterDatabaseStmt(::google::protobuf::Arena* arena, const AlterDatabaseStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kSvalFieldNumber = 1, + kOptionsFieldNumber = 2, + kDbnameFieldNumber = 1, }; - // string sval = 1; - void clear_sval(); - const std::string& sval() const; - template - void set_sval(ArgT0&& arg0, ArgT... args); - std::string* mutable_sval(); - PROTOBUF_NODISCARD std::string* release_sval(); - void set_allocated_sval(std::string* sval); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const std::string& _internal_sval() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_sval(const std::string& value); - std::string* _internal_mutable_sval(); + int _internal_options_size() const; + + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string dbname = 1 [json_name = "dbname"]; + void clear_dbname() ; + const std::string& dbname() const; + template + void set_dbname(Arg_&& arg, Args_... args); + std::string* mutable_dbname(); + PROTOBUF_NODISCARD std::string* release_dbname(); + void set_allocated_dbname(std::string* value); - // @@protoc_insertion_point(class_scope:pg_query.String) + private: + const std::string& _internal_dbname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname( + const std::string& value); + std::string* _internal_mutable_dbname(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterDatabaseStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 41, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr sval_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr dbname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class BitString final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.BitString) */ { +class AlterDefaultPrivilegesStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDefaultPrivilegesStmt) */ { public: - inline BitString() : BitString(nullptr) {} - ~BitString() override; - explicit PROTOBUF_CONSTEXPR BitString(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterDefaultPrivilegesStmt() : AlterDefaultPrivilegesStmt(nullptr) {} + ~AlterDefaultPrivilegesStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterDefaultPrivilegesStmt(::google::protobuf::internal::ConstantInitialized); - BitString(const BitString& from); - BitString(BitString&& from) noexcept - : BitString() { + inline AlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt& from) + : AlterDefaultPrivilegesStmt(nullptr, from) {} + AlterDefaultPrivilegesStmt(AlterDefaultPrivilegesStmt&& from) noexcept + : AlterDefaultPrivilegesStmt() { *this = ::std::move(from); } - inline BitString& operator=(const BitString& from) { + inline AlterDefaultPrivilegesStmt& operator=(const AlterDefaultPrivilegesStmt& from) { CopyFrom(from); return *this; } - inline BitString& operator=(BitString&& from) noexcept { + inline AlterDefaultPrivilegesStmt& operator=(AlterDefaultPrivilegesStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -9708,150 +13171,198 @@ class BitString final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const BitString& default_instance() { + static const AlterDefaultPrivilegesStmt& default_instance() { return *internal_default_instance(); } - static inline const BitString* internal_default_instance() { - return reinterpret_cast( - &_BitString_default_instance_); + static inline const AlterDefaultPrivilegesStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterDefaultPrivilegesStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 7; + 145; - friend void swap(BitString& a, BitString& b) { + friend void swap(AlterDefaultPrivilegesStmt& a, AlterDefaultPrivilegesStmt& b) { a.Swap(&b); } - inline void Swap(BitString* other) { + inline void Swap(AlterDefaultPrivilegesStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(BitString* other) { + void UnsafeArenaSwap(AlterDefaultPrivilegesStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - BitString* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterDefaultPrivilegesStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const BitString& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const BitString& from) { - BitString::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterDefaultPrivilegesStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterDefaultPrivilegesStmt& from) { + AlterDefaultPrivilegesStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(BitString* other); + void InternalSwap(AlterDefaultPrivilegesStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.BitString"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterDefaultPrivilegesStmt"; } protected: - explicit BitString(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterDefaultPrivilegesStmt(::google::protobuf::Arena* arena); + AlterDefaultPrivilegesStmt(::google::protobuf::Arena* arena, const AlterDefaultPrivilegesStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kBsvalFieldNumber = 1, + kOptionsFieldNumber = 1, + kActionFieldNumber = 2, }; - // string bsval = 1; - void clear_bsval(); - const std::string& bsval() const; - template - void set_bsval(ArgT0&& arg0, ArgT... args); - std::string* mutable_bsval(); - PROTOBUF_NODISCARD std::string* release_bsval(); - void set_allocated_bsval(std::string* bsval); + // repeated .pg_query.Node options = 1 [json_name = "options"]; + int options_size() const; private: - const std::string& _internal_bsval() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_bsval(const std::string& value); - std::string* _internal_mutable_bsval(); + int _internal_options_size() const; + + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // .pg_query.GrantStmt action = 2 [json_name = "action"]; + bool has_action() const; + void clear_action() ; + const ::pg_query::GrantStmt& action() const; + PROTOBUF_NODISCARD ::pg_query::GrantStmt* release_action(); + ::pg_query::GrantStmt* mutable_action(); + void set_allocated_action(::pg_query::GrantStmt* value); + void unsafe_arena_set_allocated_action(::pg_query::GrantStmt* value); + ::pg_query::GrantStmt* unsafe_arena_release_action(); - // @@protoc_insertion_point(class_scope:pg_query.BitString) + private: + const ::pg_query::GrantStmt& _internal_action() const; + ::pg_query::GrantStmt* _internal_mutable_action(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterDefaultPrivilegesStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr bsval_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::pg_query::GrantStmt* action_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class List final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.List) */ { +class AlterDomainStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDomainStmt) */ { public: - inline List() : List(nullptr) {} - ~List() override; - explicit PROTOBUF_CONSTEXPR List(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterDomainStmt() : AlterDomainStmt(nullptr) {} + ~AlterDomainStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterDomainStmt(::google::protobuf::internal::ConstantInitialized); - List(const List& from); - List(List&& from) noexcept - : List() { + inline AlterDomainStmt(const AlterDomainStmt& from) + : AlterDomainStmt(nullptr, from) {} + AlterDomainStmt(AlterDomainStmt&& from) noexcept + : AlterDomainStmt() { *this = ::std::move(from); } - inline List& operator=(const List& from) { + inline AlterDomainStmt& operator=(const AlterDomainStmt& from) { CopyFrom(from); return *this; } - inline List& operator=(List&& from) noexcept { + inline AlterDomainStmt& operator=(AlterDomainStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -9861,154 +13372,258 @@ class List final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const List& default_instance() { + static const AlterDomainStmt& default_instance() { return *internal_default_instance(); } - static inline const List* internal_default_instance() { - return reinterpret_cast( - &_List_default_instance_); + static inline const AlterDomainStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterDomainStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 8; + 140; - friend void swap(List& a, List& b) { + friend void swap(AlterDomainStmt& a, AlterDomainStmt& b) { a.Swap(&b); } - inline void Swap(List* other) { + inline void Swap(AlterDomainStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(List* other) { + void UnsafeArenaSwap(AlterDomainStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - List* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterDomainStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const List& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const List& from) { - List::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterDomainStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterDomainStmt& from) { + AlterDomainStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(List* other); + void InternalSwap(AlterDomainStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.List"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterDomainStmt"; } protected: - explicit List(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterDomainStmt(::google::protobuf::Arena* arena); + AlterDomainStmt(::google::protobuf::Arena* arena, const AlterDomainStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kItemsFieldNumber = 1, + kTypeNameFieldNumber = 2, + kSubtypeFieldNumber = 1, + kNameFieldNumber = 3, + kDefFieldNumber = 4, + kBehaviorFieldNumber = 5, + kMissingOkFieldNumber = 6, }; - // repeated .pg_query.Node items = 1; - int items_size() const; + // repeated .pg_query.Node type_name = 2 [json_name = "typeName"]; + int type_name_size() const; private: - int _internal_items_size() const; + int _internal_type_name_size() const; + public: - void clear_items(); - ::pg_query::Node* mutable_items(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_items(); + void clear_type_name() ; + ::pg_query::Node* mutable_type_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_type_name(); private: - const ::pg_query::Node& _internal_items(int index) const; - ::pg_query::Node* _internal_add_items(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_type_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_type_name(); public: - const ::pg_query::Node& items(int index) const; - ::pg_query::Node* add_items(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - items() const; + const ::pg_query::Node& type_name(int index) const; + ::pg_query::Node* add_type_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + type_name() const; + // string subtype = 1 [json_name = "subtype"]; + void clear_subtype() ; + const std::string& subtype() const; + template + void set_subtype(Arg_&& arg, Args_... args); + std::string* mutable_subtype(); + PROTOBUF_NODISCARD std::string* release_subtype(); + void set_allocated_subtype(std::string* value); - // @@protoc_insertion_point(class_scope:pg_query.List) + private: + const std::string& _internal_subtype() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_subtype( + const std::string& value); + std::string* _internal_mutable_subtype(); + + public: + // string name = 3 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + + public: + // .pg_query.Node def = 4 [json_name = "def"]; + bool has_def() const; + void clear_def() ; + const ::pg_query::Node& def() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_def(); + ::pg_query::Node* mutable_def(); + void set_allocated_def(::pg_query::Node* value); + void unsafe_arena_set_allocated_def(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_def(); + + private: + const ::pg_query::Node& _internal_def() const; + ::pg_query::Node* _internal_mutable_def(); + + public: + // .pg_query.DropBehavior behavior = 5 [json_name = "behavior"]; + void clear_behavior() ; + ::pg_query::DropBehavior behavior() const; + void set_behavior(::pg_query::DropBehavior value); + + private: + ::pg_query::DropBehavior _internal_behavior() const; + void _internal_set_behavior(::pg_query::DropBehavior value); + + public: + // bool missing_ok = 6 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); + + private: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterDomainStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 2, + 44, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > items_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > type_name_; + ::google::protobuf::internal::ArenaStringPtr subtype_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::Node* def_; + int behavior_; + bool missing_ok_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class OidList final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.OidList) */ { +class AlterEnumStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterEnumStmt) */ { public: - inline OidList() : OidList(nullptr) {} - ~OidList() override; - explicit PROTOBUF_CONSTEXPR OidList(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterEnumStmt() : AlterEnumStmt(nullptr) {} + ~AlterEnumStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterEnumStmt(::google::protobuf::internal::ConstantInitialized); - OidList(const OidList& from); - OidList(OidList&& from) noexcept - : OidList() { + inline AlterEnumStmt(const AlterEnumStmt& from) + : AlterEnumStmt(nullptr, from) {} + AlterEnumStmt(AlterEnumStmt&& from) noexcept + : AlterEnumStmt() { *this = ::std::move(from); } - inline OidList& operator=(const OidList& from) { + inline AlterEnumStmt& operator=(const AlterEnumStmt& from) { CopyFrom(from); return *this; } - inline OidList& operator=(OidList&& from) noexcept { + inline AlterEnumStmt& operator=(AlterEnumStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -10018,154 +13633,258 @@ class OidList final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const OidList& default_instance() { + static const AlterEnumStmt& default_instance() { return *internal_default_instance(); } - static inline const OidList* internal_default_instance() { - return reinterpret_cast( - &_OidList_default_instance_); + static inline const AlterEnumStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterEnumStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 9; + 218; - friend void swap(OidList& a, OidList& b) { + friend void swap(AlterEnumStmt& a, AlterEnumStmt& b) { a.Swap(&b); } - inline void Swap(OidList* other) { + inline void Swap(AlterEnumStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(OidList* other) { + void UnsafeArenaSwap(AlterEnumStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - OidList* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterEnumStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const OidList& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const OidList& from) { - OidList::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterEnumStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterEnumStmt& from) { + AlterEnumStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(OidList* other); + void InternalSwap(AlterEnumStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.OidList"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterEnumStmt"; } protected: - explicit OidList(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterEnumStmt(::google::protobuf::Arena* arena); + AlterEnumStmt(::google::protobuf::Arena* arena, const AlterEnumStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kItemsFieldNumber = 1, + kTypeNameFieldNumber = 1, + kOldValFieldNumber = 2, + kNewValFieldNumber = 3, + kNewValNeighborFieldNumber = 4, + kNewValIsAfterFieldNumber = 5, + kSkipIfNewValExistsFieldNumber = 6, }; - // repeated .pg_query.Node items = 1; - int items_size() const; + // repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; + int type_name_size() const; private: - int _internal_items_size() const; + int _internal_type_name_size() const; + public: - void clear_items(); - ::pg_query::Node* mutable_items(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_items(); + void clear_type_name() ; + ::pg_query::Node* mutable_type_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_type_name(); private: - const ::pg_query::Node& _internal_items(int index) const; - ::pg_query::Node* _internal_add_items(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_type_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_type_name(); public: - const ::pg_query::Node& items(int index) const; - ::pg_query::Node* add_items(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - items() const; + const ::pg_query::Node& type_name(int index) const; + ::pg_query::Node* add_type_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + type_name() const; + // string old_val = 2 [json_name = "oldVal"]; + void clear_old_val() ; + const std::string& old_val() const; + template + void set_old_val(Arg_&& arg, Args_... args); + std::string* mutable_old_val(); + PROTOBUF_NODISCARD std::string* release_old_val(); + void set_allocated_old_val(std::string* value); - // @@protoc_insertion_point(class_scope:pg_query.OidList) + private: + const std::string& _internal_old_val() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_old_val( + const std::string& value); + std::string* _internal_mutable_old_val(); + + public: + // string new_val = 3 [json_name = "newVal"]; + void clear_new_val() ; + const std::string& new_val() const; + template + void set_new_val(Arg_&& arg, Args_... args); + std::string* mutable_new_val(); + PROTOBUF_NODISCARD std::string* release_new_val(); + void set_allocated_new_val(std::string* value); + + private: + const std::string& _internal_new_val() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_new_val( + const std::string& value); + std::string* _internal_mutable_new_val(); + + public: + // string new_val_neighbor = 4 [json_name = "newValNeighbor"]; + void clear_new_val_neighbor() ; + const std::string& new_val_neighbor() const; + template + void set_new_val_neighbor(Arg_&& arg, Args_... args); + std::string* mutable_new_val_neighbor(); + PROTOBUF_NODISCARD std::string* release_new_val_neighbor(); + void set_allocated_new_val_neighbor(std::string* value); + + private: + const std::string& _internal_new_val_neighbor() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_new_val_neighbor( + const std::string& value); + std::string* _internal_mutable_new_val_neighbor(); + + public: + // bool new_val_is_after = 5 [json_name = "newValIsAfter"]; + void clear_new_val_is_after() ; + bool new_val_is_after() const; + void set_new_val_is_after(bool value); + + private: + bool _internal_new_val_is_after() const; + void _internal_set_new_val_is_after(bool value); + + public: + // bool skip_if_new_val_exists = 6 [json_name = "skipIfNewValExists"]; + void clear_skip_if_new_val_exists() ; + bool skip_if_new_val_exists() const; + void set_skip_if_new_val_exists(bool value); + + private: + bool _internal_skip_if_new_val_exists() const; + void _internal_set_skip_if_new_val_exists(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterEnumStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 1, + 61, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > items_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > type_name_; + ::google::protobuf::internal::ArenaStringPtr old_val_; + ::google::protobuf::internal::ArenaStringPtr new_val_; + ::google::protobuf::internal::ArenaStringPtr new_val_neighbor_; + bool new_val_is_after_; + bool skip_if_new_val_exists_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class IntList final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.IntList) */ { +class AlterExtensionContentsStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterExtensionContentsStmt) */ { public: - inline IntList() : IntList(nullptr) {} - ~IntList() override; - explicit PROTOBUF_CONSTEXPR IntList(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterExtensionContentsStmt() : AlterExtensionContentsStmt(nullptr) {} + ~AlterExtensionContentsStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterExtensionContentsStmt(::google::protobuf::internal::ConstantInitialized); - IntList(const IntList& from); - IntList(IntList&& from) noexcept - : IntList() { + inline AlterExtensionContentsStmt(const AlterExtensionContentsStmt& from) + : AlterExtensionContentsStmt(nullptr, from) {} + AlterExtensionContentsStmt(AlterExtensionContentsStmt&& from) noexcept + : AlterExtensionContentsStmt() { *this = ::std::move(from); } - inline IntList& operator=(const IntList& from) { + inline AlterExtensionContentsStmt& operator=(const AlterExtensionContentsStmt& from) { CopyFrom(from); return *this; } - inline IntList& operator=(IntList&& from) noexcept { + inline AlterExtensionContentsStmt& operator=(AlterExtensionContentsStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -10175,154 +13894,220 @@ class IntList final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const IntList& default_instance() { + static const AlterExtensionContentsStmt& default_instance() { return *internal_default_instance(); } - static inline const IntList* internal_default_instance() { - return reinterpret_cast( - &_IntList_default_instance_); + static inline const AlterExtensionContentsStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterExtensionContentsStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 10; + 157; - friend void swap(IntList& a, IntList& b) { + friend void swap(AlterExtensionContentsStmt& a, AlterExtensionContentsStmt& b) { a.Swap(&b); } - inline void Swap(IntList* other) { + inline void Swap(AlterExtensionContentsStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(IntList* other) { + void UnsafeArenaSwap(AlterExtensionContentsStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - IntList* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterExtensionContentsStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const IntList& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const IntList& from) { - IntList::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterExtensionContentsStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterExtensionContentsStmt& from) { + AlterExtensionContentsStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(IntList* other); + void InternalSwap(AlterExtensionContentsStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.IntList"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterExtensionContentsStmt"; } protected: - explicit IntList(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterExtensionContentsStmt(::google::protobuf::Arena* arena); + AlterExtensionContentsStmt(::google::protobuf::Arena* arena, const AlterExtensionContentsStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kItemsFieldNumber = 1, + kExtnameFieldNumber = 1, + kObjectFieldNumber = 4, + kActionFieldNumber = 2, + kObjtypeFieldNumber = 3, }; - // repeated .pg_query.Node items = 1; - int items_size() const; + // string extname = 1 [json_name = "extname"]; + void clear_extname() ; + const std::string& extname() const; + template + void set_extname(Arg_&& arg, Args_... args); + std::string* mutable_extname(); + PROTOBUF_NODISCARD std::string* release_extname(); + void set_allocated_extname(std::string* value); + private: - int _internal_items_size() const; + const std::string& _internal_extname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_extname( + const std::string& value); + std::string* _internal_mutable_extname(); + public: - void clear_items(); - ::pg_query::Node* mutable_items(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_items(); + // .pg_query.Node object = 4 [json_name = "object"]; + bool has_object() const; + void clear_object() ; + const ::pg_query::Node& object() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_object(); + ::pg_query::Node* mutable_object(); + void set_allocated_object(::pg_query::Node* value); + void unsafe_arena_set_allocated_object(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_object(); + private: - const ::pg_query::Node& _internal_items(int index) const; - ::pg_query::Node* _internal_add_items(); + const ::pg_query::Node& _internal_object() const; + ::pg_query::Node* _internal_mutable_object(); + public: - const ::pg_query::Node& items(int index) const; - ::pg_query::Node* add_items(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - items() const; + // int32 action = 2 [json_name = "action"]; + void clear_action() ; + ::int32_t action() const; + void set_action(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.IntList) + private: + ::int32_t _internal_action() const; + void _internal_set_action(::int32_t value); + + public: + // .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; + void clear_objtype() ; + ::pg_query::ObjectType objtype() const; + void set_objtype(::pg_query::ObjectType value); + + private: + ::pg_query::ObjectType _internal_objtype() const; + void _internal_set_objtype(::pg_query::ObjectType value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterExtensionContentsStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 1, + 51, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > items_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr extname_; + ::pg_query::Node* object_; + ::int32_t action_; + int objtype_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class A_Const final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.A_Const) */ { +class AlterExtensionStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterExtensionStmt) */ { public: - inline A_Const() : A_Const(nullptr) {} - ~A_Const() override; - explicit PROTOBUF_CONSTEXPR A_Const(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterExtensionStmt() : AlterExtensionStmt(nullptr) {} + ~AlterExtensionStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterExtensionStmt(::google::protobuf::internal::ConstantInitialized); - A_Const(const A_Const& from); - A_Const(A_Const&& from) noexcept - : A_Const() { + inline AlterExtensionStmt(const AlterExtensionStmt& from) + : AlterExtensionStmt(nullptr, from) {} + AlterExtensionStmt(AlterExtensionStmt&& from) noexcept + : AlterExtensionStmt() { *this = ::std::move(from); } - inline A_Const& operator=(const A_Const& from) { + inline AlterExtensionStmt& operator=(const AlterExtensionStmt& from) { CopyFrom(from); return *this; } - inline A_Const& operator=(A_Const&& from) noexcept { + inline AlterExtensionStmt& operator=(AlterExtensionStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -10332,281 +14117,198 @@ class A_Const final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const A_Const& default_instance() { + static const AlterExtensionStmt& default_instance() { return *internal_default_instance(); } - enum ValCase { - kIval = 1, - kFval = 2, - kBoolval = 3, - kSval = 4, - kBsval = 5, - VAL_NOT_SET = 0, - }; - - static inline const A_Const* internal_default_instance() { - return reinterpret_cast( - &_A_Const_default_instance_); + static inline const AlterExtensionStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterExtensionStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 11; + 156; - friend void swap(A_Const& a, A_Const& b) { + friend void swap(AlterExtensionStmt& a, AlterExtensionStmt& b) { a.Swap(&b); } - inline void Swap(A_Const* other) { + inline void Swap(AlterExtensionStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(A_Const* other) { + void UnsafeArenaSwap(AlterExtensionStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - A_Const* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterExtensionStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const A_Const& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const A_Const& from) { - A_Const::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterExtensionStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterExtensionStmt& from) { + AlterExtensionStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(A_Const* other); + void InternalSwap(AlterExtensionStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.A_Const"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterExtensionStmt"; } protected: - explicit A_Const(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterExtensionStmt(::google::protobuf::Arena* arena); + AlterExtensionStmt(::google::protobuf::Arena* arena, const AlterExtensionStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kIsnullFieldNumber = 10, - kLocationFieldNumber = 11, - kIvalFieldNumber = 1, - kFvalFieldNumber = 2, - kBoolvalFieldNumber = 3, - kSvalFieldNumber = 4, - kBsvalFieldNumber = 5, + kOptionsFieldNumber = 2, + kExtnameFieldNumber = 1, }; - // bool isnull = 10; - void clear_isnull(); - bool isnull() const; - void set_isnull(bool value); - private: - bool _internal_isnull() const; - void _internal_set_isnull(bool value); - public: - - // int32 location = 11; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: - - // .pg_query.Integer ival = 1; - bool has_ival() const; - private: - bool _internal_has_ival() const; - public: - void clear_ival(); - const ::pg_query::Integer& ival() const; - PROTOBUF_NODISCARD ::pg_query::Integer* release_ival(); - ::pg_query::Integer* mutable_ival(); - void set_allocated_ival(::pg_query::Integer* ival); - private: - const ::pg_query::Integer& _internal_ival() const; - ::pg_query::Integer* _internal_mutable_ival(); - public: - void unsafe_arena_set_allocated_ival( - ::pg_query::Integer* ival); - ::pg_query::Integer* unsafe_arena_release_ival(); - - // .pg_query.Float fval = 2; - bool has_fval() const; - private: - bool _internal_has_fval() const; - public: - void clear_fval(); - const ::pg_query::Float& fval() const; - PROTOBUF_NODISCARD ::pg_query::Float* release_fval(); - ::pg_query::Float* mutable_fval(); - void set_allocated_fval(::pg_query::Float* fval); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Float& _internal_fval() const; - ::pg_query::Float* _internal_mutable_fval(); - public: - void unsafe_arena_set_allocated_fval( - ::pg_query::Float* fval); - ::pg_query::Float* unsafe_arena_release_fval(); + int _internal_options_size() const; - // .pg_query.Boolean boolval = 3; - bool has_boolval() const; - private: - bool _internal_has_boolval() const; public: - void clear_boolval(); - const ::pg_query::Boolean& boolval() const; - PROTOBUF_NODISCARD ::pg_query::Boolean* release_boolval(); - ::pg_query::Boolean* mutable_boolval(); - void set_allocated_boolval(::pg_query::Boolean* boolval); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::Boolean& _internal_boolval() const; - ::pg_query::Boolean* _internal_mutable_boolval(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_boolval( - ::pg_query::Boolean* boolval); - ::pg_query::Boolean* unsafe_arena_release_boolval(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string extname = 1 [json_name = "extname"]; + void clear_extname() ; + const std::string& extname() const; + template + void set_extname(Arg_&& arg, Args_... args); + std::string* mutable_extname(); + PROTOBUF_NODISCARD std::string* release_extname(); + void set_allocated_extname(std::string* value); - // .pg_query.String sval = 4; - bool has_sval() const; - private: - bool _internal_has_sval() const; - public: - void clear_sval(); - const ::pg_query::String& sval() const; - PROTOBUF_NODISCARD ::pg_query::String* release_sval(); - ::pg_query::String* mutable_sval(); - void set_allocated_sval(::pg_query::String* sval); private: - const ::pg_query::String& _internal_sval() const; - ::pg_query::String* _internal_mutable_sval(); - public: - void unsafe_arena_set_allocated_sval( - ::pg_query::String* sval); - ::pg_query::String* unsafe_arena_release_sval(); + const std::string& _internal_extname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_extname( + const std::string& value); + std::string* _internal_mutable_extname(); - // .pg_query.BitString bsval = 5; - bool has_bsval() const; - private: - bool _internal_has_bsval() const; - public: - void clear_bsval(); - const ::pg_query::BitString& bsval() const; - PROTOBUF_NODISCARD ::pg_query::BitString* release_bsval(); - ::pg_query::BitString* mutable_bsval(); - void set_allocated_bsval(::pg_query::BitString* bsval); - private: - const ::pg_query::BitString& _internal_bsval() const; - ::pg_query::BitString* _internal_mutable_bsval(); public: - void unsafe_arena_set_allocated_bsval( - ::pg_query::BitString* bsval); - ::pg_query::BitString* unsafe_arena_release_bsval(); - - void clear_val(); - ValCase val_case() const; - // @@protoc_insertion_point(class_scope:pg_query.A_Const) - private: - class _Internal; - void set_has_ival(); - void set_has_fval(); - void set_has_boolval(); - void set_has_sval(); - void set_has_bsval(); - - inline bool has_val() const; - inline void clear_has_val(); + // @@protoc_insertion_point(class_scope:pg_query.AlterExtensionStmt) + private: + class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 43, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - bool isnull_; - int32_t location_; - union ValUnion { - constexpr ValUnion() : _constinit_{} {} - ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_; - ::pg_query::Integer* ival_; - ::pg_query::Float* fval_; - ::pg_query::Boolean* boolval_; - ::pg_query::String* sval_; - ::pg_query::BitString* bsval_; - } val_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - uint32_t _oneof_case_[1]; + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr extname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Alias final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Alias) */ { +class AlterFdwStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterFdwStmt) */ { public: - inline Alias() : Alias(nullptr) {} - ~Alias() override; - explicit PROTOBUF_CONSTEXPR Alias(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterFdwStmt() : AlterFdwStmt(nullptr) {} + ~AlterFdwStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterFdwStmt(::google::protobuf::internal::ConstantInitialized); - Alias(const Alias& from); - Alias(Alias&& from) noexcept - : Alias() { + inline AlterFdwStmt(const AlterFdwStmt& from) + : AlterFdwStmt(nullptr, from) {} + AlterFdwStmt(AlterFdwStmt&& from) noexcept + : AlterFdwStmt() { *this = ::std::move(from); } - inline Alias& operator=(const Alias& from) { + inline AlterFdwStmt& operator=(const AlterFdwStmt& from) { CopyFrom(from); return *this; } - inline Alias& operator=(Alias&& from) noexcept { + inline AlterFdwStmt& operator=(AlterFdwStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -10616,170 +14318,218 @@ class Alias final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Alias& default_instance() { + static const AlterFdwStmt& default_instance() { return *internal_default_instance(); } - static inline const Alias* internal_default_instance() { - return reinterpret_cast( - &_Alias_default_instance_); + static inline const AlterFdwStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterFdwStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 12; + 159; - friend void swap(Alias& a, Alias& b) { + friend void swap(AlterFdwStmt& a, AlterFdwStmt& b) { a.Swap(&b); } - inline void Swap(Alias* other) { + inline void Swap(AlterFdwStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Alias* other) { + void UnsafeArenaSwap(AlterFdwStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Alias* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterFdwStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Alias& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Alias& from) { - Alias::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterFdwStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterFdwStmt& from) { + AlterFdwStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Alias* other); + void InternalSwap(AlterFdwStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Alias"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterFdwStmt"; } protected: - explicit Alias(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterFdwStmt(::google::protobuf::Arena* arena); + AlterFdwStmt(::google::protobuf::Arena* arena, const AlterFdwStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kColnamesFieldNumber = 2, - kAliasnameFieldNumber = 1, + kFuncOptionsFieldNumber = 2, + kOptionsFieldNumber = 3, + kFdwnameFieldNumber = 1, }; - // repeated .pg_query.Node colnames = 2 [json_name = "colnames"]; - int colnames_size() const; + // repeated .pg_query.Node func_options = 2 [json_name = "func_options"]; + int func_options_size() const; private: - int _internal_colnames_size() const; + int _internal_func_options_size() const; + public: - void clear_colnames(); - ::pg_query::Node* mutable_colnames(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_colnames(); + void clear_func_options() ; + ::pg_query::Node* mutable_func_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_func_options(); private: - const ::pg_query::Node& _internal_colnames(int index) const; - ::pg_query::Node* _internal_add_colnames(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_func_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_func_options(); public: - const ::pg_query::Node& colnames(int index) const; - ::pg_query::Node* add_colnames(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - colnames() const; + const ::pg_query::Node& func_options(int index) const; + ::pg_query::Node* add_func_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + func_options() const; + // repeated .pg_query.Node options = 3 [json_name = "options"]; + int options_size() const; + private: + int _internal_options_size() const; - // string aliasname = 1 [json_name = "aliasname"]; - void clear_aliasname(); - const std::string& aliasname() const; - template - void set_aliasname(ArgT0&& arg0, ArgT... args); - std::string* mutable_aliasname(); - PROTOBUF_NODISCARD std::string* release_aliasname(); - void set_allocated_aliasname(std::string* aliasname); + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const std::string& _internal_aliasname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_aliasname(const std::string& value); - std::string* _internal_mutable_aliasname(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string fdwname = 1 [json_name = "fdwname"]; + void clear_fdwname() ; + const std::string& fdwname() const; + template + void set_fdwname(Arg_&& arg, Args_... args); + std::string* mutable_fdwname(); + PROTOBUF_NODISCARD std::string* release_fdwname(); + void set_allocated_fdwname(std::string* value); - // @@protoc_insertion_point(class_scope:pg_query.Alias) + private: + const std::string& _internal_fdwname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_fdwname( + const std::string& value); + std::string* _internal_mutable_fdwname(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterFdwStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 37, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > colnames_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr aliasname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > func_options_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr fdwname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RangeVar final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeVar) */ { +class AlterForeignServerStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterForeignServerStmt) */ { public: - inline RangeVar() : RangeVar(nullptr) {} - ~RangeVar() override; - explicit PROTOBUF_CONSTEXPR RangeVar(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterForeignServerStmt() : AlterForeignServerStmt(nullptr) {} + ~AlterForeignServerStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterForeignServerStmt(::google::protobuf::internal::ConstantInitialized); - RangeVar(const RangeVar& from); - RangeVar(RangeVar&& from) noexcept - : RangeVar() { + inline AlterForeignServerStmt(const AlterForeignServerStmt& from) + : AlterForeignServerStmt(nullptr, from) {} + AlterForeignServerStmt(AlterForeignServerStmt&& from) noexcept + : AlterForeignServerStmt() { *this = ::std::move(from); } - inline RangeVar& operator=(const RangeVar& from) { + inline AlterForeignServerStmt& operator=(const AlterForeignServerStmt& from) { CopyFrom(from); return *this; } - inline RangeVar& operator=(RangeVar&& from) noexcept { + inline AlterForeignServerStmt& operator=(AlterForeignServerStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -10789,240 +14539,228 @@ class RangeVar final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RangeVar& default_instance() { + static const AlterForeignServerStmt& default_instance() { return *internal_default_instance(); } - static inline const RangeVar* internal_default_instance() { - return reinterpret_cast( - &_RangeVar_default_instance_); + static inline const AlterForeignServerStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterForeignServerStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 13; + 161; - friend void swap(RangeVar& a, RangeVar& b) { + friend void swap(AlterForeignServerStmt& a, AlterForeignServerStmt& b) { a.Swap(&b); } - inline void Swap(RangeVar* other) { + inline void Swap(AlterForeignServerStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RangeVar* other) { + void UnsafeArenaSwap(AlterForeignServerStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RangeVar* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterForeignServerStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RangeVar& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RangeVar& from) { - RangeVar::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterForeignServerStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterForeignServerStmt& from) { + AlterForeignServerStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RangeVar* other); + void InternalSwap(AlterForeignServerStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RangeVar"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterForeignServerStmt"; } protected: - explicit RangeVar(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterForeignServerStmt(::google::protobuf::Arena* arena); + AlterForeignServerStmt(::google::protobuf::Arena* arena, const AlterForeignServerStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCatalognameFieldNumber = 1, - kSchemanameFieldNumber = 2, - kRelnameFieldNumber = 3, - kRelpersistenceFieldNumber = 5, - kAliasFieldNumber = 6, - kInhFieldNumber = 4, - kLocationFieldNumber = 7, + kOptionsFieldNumber = 3, + kServernameFieldNumber = 1, + kVersionFieldNumber = 2, + kHasVersionFieldNumber = 4, }; - // string catalogname = 1 [json_name = "catalogname"]; - void clear_catalogname(); - const std::string& catalogname() const; - template - void set_catalogname(ArgT0&& arg0, ArgT... args); - std::string* mutable_catalogname(); - PROTOBUF_NODISCARD std::string* release_catalogname(); - void set_allocated_catalogname(std::string* catalogname); + // repeated .pg_query.Node options = 3 [json_name = "options"]; + int options_size() const; private: - const std::string& _internal_catalogname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_catalogname(const std::string& value); - std::string* _internal_mutable_catalogname(); - public: + int _internal_options_size() const; - // string schemaname = 2 [json_name = "schemaname"]; - void clear_schemaname(); - const std::string& schemaname() const; - template - void set_schemaname(ArgT0&& arg0, ArgT... args); - std::string* mutable_schemaname(); - PROTOBUF_NODISCARD std::string* release_schemaname(); - void set_allocated_schemaname(std::string* schemaname); - private: - const std::string& _internal_schemaname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_schemaname(const std::string& value); - std::string* _internal_mutable_schemaname(); public: - - // string relname = 3 [json_name = "relname"]; - void clear_relname(); - const std::string& relname() const; - template - void set_relname(ArgT0&& arg0, ArgT... args); - std::string* mutable_relname(); - PROTOBUF_NODISCARD std::string* release_relname(); - void set_allocated_relname(std::string* relname); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const std::string& _internal_relname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_relname(const std::string& value); - std::string* _internal_mutable_relname(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string servername = 1 [json_name = "servername"]; + void clear_servername() ; + const std::string& servername() const; + template + void set_servername(Arg_&& arg, Args_... args); + std::string* mutable_servername(); + PROTOBUF_NODISCARD std::string* release_servername(); + void set_allocated_servername(std::string* value); - // string relpersistence = 5 [json_name = "relpersistence"]; - void clear_relpersistence(); - const std::string& relpersistence() const; - template - void set_relpersistence(ArgT0&& arg0, ArgT... args); - std::string* mutable_relpersistence(); - PROTOBUF_NODISCARD std::string* release_relpersistence(); - void set_allocated_relpersistence(std::string* relpersistence); private: - const std::string& _internal_relpersistence() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_relpersistence(const std::string& value); - std::string* _internal_mutable_relpersistence(); - public: + const std::string& _internal_servername() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername( + const std::string& value); + std::string* _internal_mutable_servername(); - // .pg_query.Alias alias = 6 [json_name = "alias"]; - bool has_alias() const; - private: - bool _internal_has_alias() const; - public: - void clear_alias(); - const ::pg_query::Alias& alias() const; - PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); - ::pg_query::Alias* mutable_alias(); - void set_allocated_alias(::pg_query::Alias* alias); - private: - const ::pg_query::Alias& _internal_alias() const; - ::pg_query::Alias* _internal_mutable_alias(); public: - void unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias); - ::pg_query::Alias* unsafe_arena_release_alias(); + // string version = 2 [json_name = "version"]; + void clear_version() ; + const std::string& version() const; + template + void set_version(Arg_&& arg, Args_... args); + std::string* mutable_version(); + PROTOBUF_NODISCARD std::string* release_version(); + void set_allocated_version(std::string* value); - // bool inh = 4 [json_name = "inh"]; - void clear_inh(); - bool inh() const; - void set_inh(bool value); private: - bool _internal_inh() const; - void _internal_set_inh(bool value); + const std::string& _internal_version() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_version( + const std::string& value); + std::string* _internal_mutable_version(); + public: + // bool has_version = 4 [json_name = "has_version"]; + void clear_has_version() ; + bool has_version() const; + void set_has_version(bool value); - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + bool _internal_has_version() const; + void _internal_set_has_version(bool value); - // @@protoc_insertion_point(class_scope:pg_query.RangeVar) + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterForeignServerStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 1, + 57, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr catalogname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr schemaname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr relname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr relpersistence_; - ::pg_query::Alias* alias_; - bool inh_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr servername_; + ::google::protobuf::internal::ArenaStringPtr version_; + bool has_version_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class TableFunc final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.TableFunc) */ { +class AlterFunctionStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterFunctionStmt) */ { public: - inline TableFunc() : TableFunc(nullptr) {} - ~TableFunc() override; - explicit PROTOBUF_CONSTEXPR TableFunc(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterFunctionStmt() : AlterFunctionStmt(nullptr) {} + ~AlterFunctionStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterFunctionStmt(::google::protobuf::internal::ConstantInitialized); - TableFunc(const TableFunc& from); - TableFunc(TableFunc&& from) noexcept - : TableFunc() { + inline AlterFunctionStmt(const AlterFunctionStmt& from) + : AlterFunctionStmt(nullptr, from) {} + AlterFunctionStmt(AlterFunctionStmt&& from) noexcept + : AlterFunctionStmt() { *this = ::std::move(from); } - inline TableFunc& operator=(const TableFunc& from) { + inline AlterFunctionStmt& operator=(const AlterFunctionStmt& from) { CopyFrom(from); return *this; } - inline TableFunc& operator=(TableFunc&& from) noexcept { + inline AlterFunctionStmt& operator=(AlterFunctionStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -11032,381 +14770,449 @@ class TableFunc final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const TableFunc& default_instance() { + static const AlterFunctionStmt& default_instance() { return *internal_default_instance(); } - static inline const TableFunc* internal_default_instance() { - return reinterpret_cast( - &_TableFunc_default_instance_); + static inline const AlterFunctionStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterFunctionStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 14; + 199; - friend void swap(TableFunc& a, TableFunc& b) { + friend void swap(AlterFunctionStmt& a, AlterFunctionStmt& b) { a.Swap(&b); } - inline void Swap(TableFunc* other) { + inline void Swap(AlterFunctionStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(TableFunc* other) { + void UnsafeArenaSwap(AlterFunctionStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - TableFunc* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterFunctionStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const TableFunc& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const TableFunc& from) { - TableFunc::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterFunctionStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterFunctionStmt& from) { + AlterFunctionStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(TableFunc* other); + void InternalSwap(AlterFunctionStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.TableFunc"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterFunctionStmt"; } protected: - explicit TableFunc(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterFunctionStmt(::google::protobuf::Arena* arena); + AlterFunctionStmt(::google::protobuf::Arena* arena, const AlterFunctionStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNsUrisFieldNumber = 1, - kNsNamesFieldNumber = 2, - kColnamesFieldNumber = 5, - kColtypesFieldNumber = 6, - kColtypmodsFieldNumber = 7, - kColcollationsFieldNumber = 8, - kColexprsFieldNumber = 9, - kColdefexprsFieldNumber = 10, - kNotnullsFieldNumber = 11, - kDocexprFieldNumber = 3, - kRowexprFieldNumber = 4, - kOrdinalitycolFieldNumber = 12, - kLocationFieldNumber = 13, + kActionsFieldNumber = 3, + kFuncFieldNumber = 2, + kObjtypeFieldNumber = 1, }; - // repeated .pg_query.Node ns_uris = 1 [json_name = "ns_uris"]; - int ns_uris_size() const; - private: - int _internal_ns_uris_size() const; - public: - void clear_ns_uris(); - ::pg_query::Node* mutable_ns_uris(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_ns_uris(); + // repeated .pg_query.Node actions = 3 [json_name = "actions"]; + int actions_size() const; private: - const ::pg_query::Node& _internal_ns_uris(int index) const; - ::pg_query::Node* _internal_add_ns_uris(); - public: - const ::pg_query::Node& ns_uris(int index) const; - ::pg_query::Node* add_ns_uris(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - ns_uris() const; + int _internal_actions_size() const; - // repeated .pg_query.Node ns_names = 2 [json_name = "ns_names"]; - int ns_names_size() const; - private: - int _internal_ns_names_size() const; public: - void clear_ns_names(); - ::pg_query::Node* mutable_ns_names(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_ns_names(); + void clear_actions() ; + ::pg_query::Node* mutable_actions(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_actions(); private: - const ::pg_query::Node& _internal_ns_names(int index) const; - ::pg_query::Node* _internal_add_ns_names(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_actions() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_actions(); public: - const ::pg_query::Node& ns_names(int index) const; - ::pg_query::Node* add_ns_names(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - ns_names() const; + const ::pg_query::Node& actions(int index) const; + ::pg_query::Node* add_actions(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + actions() const; + // .pg_query.ObjectWithArgs func = 2 [json_name = "func"]; + bool has_func() const; + void clear_func() ; + const ::pg_query::ObjectWithArgs& func() const; + PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_func(); + ::pg_query::ObjectWithArgs* mutable_func(); + void set_allocated_func(::pg_query::ObjectWithArgs* value); + void unsafe_arena_set_allocated_func(::pg_query::ObjectWithArgs* value); + ::pg_query::ObjectWithArgs* unsafe_arena_release_func(); - // repeated .pg_query.Node colnames = 5 [json_name = "colnames"]; - int colnames_size() const; - private: - int _internal_colnames_size() const; - public: - void clear_colnames(); - ::pg_query::Node* mutable_colnames(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_colnames(); private: - const ::pg_query::Node& _internal_colnames(int index) const; - ::pg_query::Node* _internal_add_colnames(); - public: - const ::pg_query::Node& colnames(int index) const; - ::pg_query::Node* add_colnames(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - colnames() const; + const ::pg_query::ObjectWithArgs& _internal_func() const; + ::pg_query::ObjectWithArgs* _internal_mutable_func(); - // repeated .pg_query.Node coltypes = 6 [json_name = "coltypes"]; - int coltypes_size() const; - private: - int _internal_coltypes_size() const; - public: - void clear_coltypes(); - ::pg_query::Node* mutable_coltypes(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_coltypes(); - private: - const ::pg_query::Node& _internal_coltypes(int index) const; - ::pg_query::Node* _internal_add_coltypes(); public: - const ::pg_query::Node& coltypes(int index) const; - ::pg_query::Node* add_coltypes(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - coltypes() const; + // .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; + void clear_objtype() ; + ::pg_query::ObjectType objtype() const; + void set_objtype(::pg_query::ObjectType value); - // repeated .pg_query.Node coltypmods = 7 [json_name = "coltypmods"]; - int coltypmods_size() const; - private: - int _internal_coltypmods_size() const; - public: - void clear_coltypmods(); - ::pg_query::Node* mutable_coltypmods(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_coltypmods(); private: - const ::pg_query::Node& _internal_coltypmods(int index) const; - ::pg_query::Node* _internal_add_coltypmods(); - public: - const ::pg_query::Node& coltypmods(int index) const; - ::pg_query::Node* add_coltypmods(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - coltypmods() const; + ::pg_query::ObjectType _internal_objtype() const; + void _internal_set_objtype(::pg_query::ObjectType value); - // repeated .pg_query.Node colcollations = 8 [json_name = "colcollations"]; - int colcollations_size() const; - private: - int _internal_colcollations_size() const; public: - void clear_colcollations(); - ::pg_query::Node* mutable_colcollations(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_colcollations(); + // @@protoc_insertion_point(class_scope:pg_query.AlterFunctionStmt) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > actions_; + ::pg_query::ObjectWithArgs* func_; + int objtype_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class AlterObjectDependsStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterObjectDependsStmt) */ { + public: + inline AlterObjectDependsStmt() : AlterObjectDependsStmt(nullptr) {} + ~AlterObjectDependsStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterObjectDependsStmt(::google::protobuf::internal::ConstantInitialized); + + inline AlterObjectDependsStmt(const AlterObjectDependsStmt& from) + : AlterObjectDependsStmt(nullptr, from) {} + AlterObjectDependsStmt(AlterObjectDependsStmt&& from) noexcept + : AlterObjectDependsStmt() { + *this = ::std::move(from); + } + + inline AlterObjectDependsStmt& operator=(const AlterObjectDependsStmt& from) { + CopyFrom(from); + return *this; + } + inline AlterObjectDependsStmt& operator=(AlterObjectDependsStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AlterObjectDependsStmt& default_instance() { + return *internal_default_instance(); + } + static inline const AlterObjectDependsStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterObjectDependsStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 205; + + friend void swap(AlterObjectDependsStmt& a, AlterObjectDependsStmt& b) { + a.Swap(&b); + } + inline void Swap(AlterObjectDependsStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AlterObjectDependsStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AlterObjectDependsStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterObjectDependsStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterObjectDependsStmt& from) { + AlterObjectDependsStmt::MergeImpl(*this, from); + } private: - const ::pg_query::Node& _internal_colcollations(int index) const; - ::pg_query::Node* _internal_add_colcollations(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - const ::pg_query::Node& colcollations(int index) const; - ::pg_query::Node* add_colcollations(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - colcollations() const; + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // repeated .pg_query.Node colexprs = 9 [json_name = "colexprs"]; - int colexprs_size() const; private: - int _internal_colexprs_size() const; - public: - void clear_colexprs(); - ::pg_query::Node* mutable_colexprs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_colexprs(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(AlterObjectDependsStmt* other); + private: - const ::pg_query::Node& _internal_colexprs(int index) const; - ::pg_query::Node* _internal_add_colexprs(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterObjectDependsStmt"; + } + protected: + explicit AlterObjectDependsStmt(::google::protobuf::Arena* arena); + AlterObjectDependsStmt(::google::protobuf::Arena* arena, const AlterObjectDependsStmt& from); public: - const ::pg_query::Node& colexprs(int index) const; - ::pg_query::Node* add_colexprs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - colexprs() const; - // repeated .pg_query.Node coldefexprs = 10 [json_name = "coldefexprs"]; - int coldefexprs_size() const; - private: - int _internal_coldefexprs_size() const; - public: - void clear_coldefexprs(); - ::pg_query::Node* mutable_coldefexprs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_coldefexprs(); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kRelationFieldNumber = 2, + kObjectFieldNumber = 3, + kExtnameFieldNumber = 4, + kObjectTypeFieldNumber = 1, + kRemoveFieldNumber = 5, + }; + // .pg_query.RangeVar relation = 2 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); + private: - const ::pg_query::Node& _internal_coldefexprs(int index) const; - ::pg_query::Node* _internal_add_coldefexprs(); - public: - const ::pg_query::Node& coldefexprs(int index) const; - ::pg_query::Node* add_coldefexprs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - coldefexprs() const; + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); - // repeated uint64 notnulls = 11 [json_name = "notnulls"]; - int notnulls_size() const; - private: - int _internal_notnulls_size() const; - public: - void clear_notnulls(); - private: - uint64_t _internal_notnulls(int index) const; - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - _internal_notnulls() const; - void _internal_add_notnulls(uint64_t value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - _internal_mutable_notnulls(); public: - uint64_t notnulls(int index) const; - void set_notnulls(int index, uint64_t value); - void add_notnulls(uint64_t value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - notnulls() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - mutable_notnulls(); + // .pg_query.Node object = 3 [json_name = "object"]; + bool has_object() const; + void clear_object() ; + const ::pg_query::Node& object() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_object(); + ::pg_query::Node* mutable_object(); + void set_allocated_object(::pg_query::Node* value); + void unsafe_arena_set_allocated_object(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_object(); - // .pg_query.Node docexpr = 3 [json_name = "docexpr"]; - bool has_docexpr() const; - private: - bool _internal_has_docexpr() const; - public: - void clear_docexpr(); - const ::pg_query::Node& docexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_docexpr(); - ::pg_query::Node* mutable_docexpr(); - void set_allocated_docexpr(::pg_query::Node* docexpr); private: - const ::pg_query::Node& _internal_docexpr() const; - ::pg_query::Node* _internal_mutable_docexpr(); - public: - void unsafe_arena_set_allocated_docexpr( - ::pg_query::Node* docexpr); - ::pg_query::Node* unsafe_arena_release_docexpr(); + const ::pg_query::Node& _internal_object() const; + ::pg_query::Node* _internal_mutable_object(); - // .pg_query.Node rowexpr = 4 [json_name = "rowexpr"]; - bool has_rowexpr() const; - private: - bool _internal_has_rowexpr() const; public: - void clear_rowexpr(); - const ::pg_query::Node& rowexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_rowexpr(); - ::pg_query::Node* mutable_rowexpr(); - void set_allocated_rowexpr(::pg_query::Node* rowexpr); + // .pg_query.String extname = 4 [json_name = "extname"]; + bool has_extname() const; + void clear_extname() ; + const ::pg_query::String& extname() const; + PROTOBUF_NODISCARD ::pg_query::String* release_extname(); + ::pg_query::String* mutable_extname(); + void set_allocated_extname(::pg_query::String* value); + void unsafe_arena_set_allocated_extname(::pg_query::String* value); + ::pg_query::String* unsafe_arena_release_extname(); + private: - const ::pg_query::Node& _internal_rowexpr() const; - ::pg_query::Node* _internal_mutable_rowexpr(); + const ::pg_query::String& _internal_extname() const; + ::pg_query::String* _internal_mutable_extname(); + public: - void unsafe_arena_set_allocated_rowexpr( - ::pg_query::Node* rowexpr); - ::pg_query::Node* unsafe_arena_release_rowexpr(); + // .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; + void clear_object_type() ; + ::pg_query::ObjectType object_type() const; + void set_object_type(::pg_query::ObjectType value); - // int32 ordinalitycol = 12 [json_name = "ordinalitycol"]; - void clear_ordinalitycol(); - int32_t ordinalitycol() const; - void set_ordinalitycol(int32_t value); private: - int32_t _internal_ordinalitycol() const; - void _internal_set_ordinalitycol(int32_t value); + ::pg_query::ObjectType _internal_object_type() const; + void _internal_set_object_type(::pg_query::ObjectType value); + public: + // bool remove = 5 [json_name = "remove"]; + void clear_remove() ; + bool remove() const; + void set_remove(bool value); - // int32 location = 13 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + bool _internal_remove() const; + void _internal_set_remove(bool value); - // @@protoc_insertion_point(class_scope:pg_query.TableFunc) + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterObjectDependsStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > ns_uris_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > ns_names_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > colnames_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > coltypes_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > coltypmods_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > colcollations_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > colexprs_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > coldefexprs_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t > notnulls_; - mutable std::atomic _notnulls_cached_byte_size_; - ::pg_query::Node* docexpr_; - ::pg_query::Node* rowexpr_; - int32_t ordinalitycol_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* object_; + ::pg_query::String* extname_; + int object_type_; + bool remove_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Var final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Var) */ { +class AlterObjectSchemaStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterObjectSchemaStmt) */ { public: - inline Var() : Var(nullptr) {} - ~Var() override; - explicit PROTOBUF_CONSTEXPR Var(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterObjectSchemaStmt() : AlterObjectSchemaStmt(nullptr) {} + ~AlterObjectSchemaStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterObjectSchemaStmt(::google::protobuf::internal::ConstantInitialized); - Var(const Var& from); - Var(Var&& from) noexcept - : Var() { + inline AlterObjectSchemaStmt(const AlterObjectSchemaStmt& from) + : AlterObjectSchemaStmt(nullptr, from) {} + AlterObjectSchemaStmt(AlterObjectSchemaStmt&& from) noexcept + : AlterObjectSchemaStmt() { *this = ::std::move(from); } - inline Var& operator=(const Var& from) { + inline AlterObjectSchemaStmt& operator=(const AlterObjectSchemaStmt& from) { CopyFrom(from); return *this; } - inline Var& operator=(Var&& from) noexcept { + inline AlterObjectSchemaStmt& operator=(AlterObjectSchemaStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -11416,253 +15222,237 @@ class Var final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Var& default_instance() { + static const AlterObjectSchemaStmt& default_instance() { return *internal_default_instance(); } - static inline const Var* internal_default_instance() { - return reinterpret_cast( - &_Var_default_instance_); + static inline const AlterObjectSchemaStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterObjectSchemaStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 15; + 206; - friend void swap(Var& a, Var& b) { + friend void swap(AlterObjectSchemaStmt& a, AlterObjectSchemaStmt& b) { a.Swap(&b); } - inline void Swap(Var* other) { + inline void Swap(AlterObjectSchemaStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Var* other) { + void UnsafeArenaSwap(AlterObjectSchemaStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Var* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterObjectSchemaStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Var& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Var& from) { - Var::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterObjectSchemaStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterObjectSchemaStmt& from) { + AlterObjectSchemaStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Var* other); + void InternalSwap(AlterObjectSchemaStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Var"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterObjectSchemaStmt"; } protected: - explicit Var(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterObjectSchemaStmt(::google::protobuf::Arena* arena); + AlterObjectSchemaStmt(::google::protobuf::Arena* arena, const AlterObjectSchemaStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kVarnoFieldNumber = 2, - kVarattnoFieldNumber = 3, - kVartypeFieldNumber = 4, - kVartypmodFieldNumber = 5, - kVarcollidFieldNumber = 6, - kVarlevelsupFieldNumber = 7, - kVarnosynFieldNumber = 8, - kVarattnosynFieldNumber = 9, - kLocationFieldNumber = 10, + kNewschemaFieldNumber = 4, + kRelationFieldNumber = 2, + kObjectFieldNumber = 3, + kObjectTypeFieldNumber = 1, + kMissingOkFieldNumber = 5, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // string newschema = 4 [json_name = "newschema"]; + void clear_newschema() ; + const std::string& newschema() const; + template + void set_newschema(Arg_&& arg, Args_... args); + std::string* mutable_newschema(); + PROTOBUF_NODISCARD std::string* release_newschema(); + void set_allocated_newschema(std::string* value); - // int32 varno = 2 [json_name = "varno"]; - void clear_varno(); - int32_t varno() const; - void set_varno(int32_t value); private: - int32_t _internal_varno() const; - void _internal_set_varno(int32_t value); - public: + const std::string& _internal_newschema() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_newschema( + const std::string& value); + std::string* _internal_mutable_newschema(); - // int32 varattno = 3 [json_name = "varattno"]; - void clear_varattno(); - int32_t varattno() const; - void set_varattno(int32_t value); - private: - int32_t _internal_varattno() const; - void _internal_set_varattno(int32_t value); public: + // .pg_query.RangeVar relation = 2 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // uint32 vartype = 4 [json_name = "vartype"]; - void clear_vartype(); - uint32_t vartype() const; - void set_vartype(uint32_t value); private: - uint32_t _internal_vartype() const; - void _internal_set_vartype(uint32_t value); - public: + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); - // int32 vartypmod = 5 [json_name = "vartypmod"]; - void clear_vartypmod(); - int32_t vartypmod() const; - void set_vartypmod(int32_t value); - private: - int32_t _internal_vartypmod() const; - void _internal_set_vartypmod(int32_t value); public: + // .pg_query.Node object = 3 [json_name = "object"]; + bool has_object() const; + void clear_object() ; + const ::pg_query::Node& object() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_object(); + ::pg_query::Node* mutable_object(); + void set_allocated_object(::pg_query::Node* value); + void unsafe_arena_set_allocated_object(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_object(); - // uint32 varcollid = 6 [json_name = "varcollid"]; - void clear_varcollid(); - uint32_t varcollid() const; - void set_varcollid(uint32_t value); private: - uint32_t _internal_varcollid() const; - void _internal_set_varcollid(uint32_t value); - public: + const ::pg_query::Node& _internal_object() const; + ::pg_query::Node* _internal_mutable_object(); - // uint32 varlevelsup = 7 [json_name = "varlevelsup"]; - void clear_varlevelsup(); - uint32_t varlevelsup() const; - void set_varlevelsup(uint32_t value); - private: - uint32_t _internal_varlevelsup() const; - void _internal_set_varlevelsup(uint32_t value); public: + // .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; + void clear_object_type() ; + ::pg_query::ObjectType object_type() const; + void set_object_type(::pg_query::ObjectType value); - // uint32 varnosyn = 8 [json_name = "varnosyn"]; - void clear_varnosyn(); - uint32_t varnosyn() const; - void set_varnosyn(uint32_t value); private: - uint32_t _internal_varnosyn() const; - void _internal_set_varnosyn(uint32_t value); - public: + ::pg_query::ObjectType _internal_object_type() const; + void _internal_set_object_type(::pg_query::ObjectType value); - // int32 varattnosyn = 9 [json_name = "varattnosyn"]; - void clear_varattnosyn(); - int32_t varattnosyn() const; - void set_varattnosyn(int32_t value); - private: - int32_t _internal_varattnosyn() const; - void _internal_set_varattnosyn(int32_t value); public: + // bool missing_ok = 5 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // int32 location = 10 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); - // @@protoc_insertion_point(class_scope:pg_query.Var) + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterObjectSchemaStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 48, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - int32_t varno_; - int32_t varattno_; - uint32_t vartype_; - int32_t vartypmod_; - uint32_t varcollid_; - uint32_t varlevelsup_; - uint32_t varnosyn_; - int32_t varattnosyn_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr newschema_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* object_; + int object_type_; + bool missing_ok_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Param final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Param) */ { +class AlterOpFamilyStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterOpFamilyStmt) */ { public: - inline Param() : Param(nullptr) {} - ~Param() override; - explicit PROTOBUF_CONSTEXPR Param(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterOpFamilyStmt() : AlterOpFamilyStmt(nullptr) {} + ~AlterOpFamilyStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterOpFamilyStmt(::google::protobuf::internal::ConstantInitialized); - Param(const Param& from); - Param(Param&& from) noexcept - : Param() { + inline AlterOpFamilyStmt(const AlterOpFamilyStmt& from) + : AlterOpFamilyStmt(nullptr, from) {} + AlterOpFamilyStmt(AlterOpFamilyStmt&& from) noexcept + : AlterOpFamilyStmt() { *this = ::std::move(from); } - inline Param& operator=(const Param& from) { + inline AlterOpFamilyStmt& operator=(const AlterOpFamilyStmt& from) { CopyFrom(from); return *this; } - inline Param& operator=(Param&& from) noexcept { + inline AlterOpFamilyStmt& operator=(AlterOpFamilyStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -11672,220 +15462,230 @@ class Param final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Param& default_instance() { + static const AlterOpFamilyStmt& default_instance() { return *internal_default_instance(); } - static inline const Param* internal_default_instance() { - return reinterpret_cast( - &_Param_default_instance_); + static inline const AlterOpFamilyStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterOpFamilyStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 16; + 185; - friend void swap(Param& a, Param& b) { + friend void swap(AlterOpFamilyStmt& a, AlterOpFamilyStmt& b) { a.Swap(&b); } - inline void Swap(Param* other) { + inline void Swap(AlterOpFamilyStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Param* other) { + void UnsafeArenaSwap(AlterOpFamilyStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Param* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterOpFamilyStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Param& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Param& from) { - Param::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterOpFamilyStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterOpFamilyStmt& from) { + AlterOpFamilyStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Param* other); + void InternalSwap(AlterOpFamilyStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Param"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterOpFamilyStmt"; } protected: - explicit Param(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterOpFamilyStmt(::google::protobuf::Arena* arena); + AlterOpFamilyStmt(::google::protobuf::Arena* arena, const AlterOpFamilyStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kParamkindFieldNumber = 2, - kParamidFieldNumber = 3, - kParamtypeFieldNumber = 4, - kParamtypmodFieldNumber = 5, - kParamcollidFieldNumber = 6, - kLocationFieldNumber = 7, + kOpfamilynameFieldNumber = 1, + kItemsFieldNumber = 4, + kAmnameFieldNumber = 2, + kIsDropFieldNumber = 3, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + // repeated .pg_query.Node opfamilyname = 1 [json_name = "opfamilyname"]; + int opfamilyname_size() const; private: - bool _internal_has_xpr() const; + int _internal_opfamilyname_size() const; + public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void clear_opfamilyname() ; + ::pg_query::Node* mutable_opfamilyname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opfamilyname(); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opfamilyname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opfamilyname(); public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - - // .pg_query.ParamKind paramkind = 2 [json_name = "paramkind"]; - void clear_paramkind(); - ::pg_query::ParamKind paramkind() const; - void set_paramkind(::pg_query::ParamKind value); + const ::pg_query::Node& opfamilyname(int index) const; + ::pg_query::Node* add_opfamilyname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opfamilyname() const; + // repeated .pg_query.Node items = 4 [json_name = "items"]; + int items_size() const; private: - ::pg_query::ParamKind _internal_paramkind() const; - void _internal_set_paramkind(::pg_query::ParamKind value); - public: + int _internal_items_size() const; - // int32 paramid = 3 [json_name = "paramid"]; - void clear_paramid(); - int32_t paramid() const; - void set_paramid(int32_t value); - private: - int32_t _internal_paramid() const; - void _internal_set_paramid(int32_t value); public: - - // uint32 paramtype = 4 [json_name = "paramtype"]; - void clear_paramtype(); - uint32_t paramtype() const; - void set_paramtype(uint32_t value); + void clear_items() ; + ::pg_query::Node* mutable_items(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_items(); private: - uint32_t _internal_paramtype() const; - void _internal_set_paramtype(uint32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_items() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_items(); public: + const ::pg_query::Node& items(int index) const; + ::pg_query::Node* add_items(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + items() const; + // string amname = 2 [json_name = "amname"]; + void clear_amname() ; + const std::string& amname() const; + template + void set_amname(Arg_&& arg, Args_... args); + std::string* mutable_amname(); + PROTOBUF_NODISCARD std::string* release_amname(); + void set_allocated_amname(std::string* value); - // int32 paramtypmod = 5 [json_name = "paramtypmod"]; - void clear_paramtypmod(); - int32_t paramtypmod() const; - void set_paramtypmod(int32_t value); private: - int32_t _internal_paramtypmod() const; - void _internal_set_paramtypmod(int32_t value); - public: + const std::string& _internal_amname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_amname( + const std::string& value); + std::string* _internal_mutable_amname(); - // uint32 paramcollid = 6 [json_name = "paramcollid"]; - void clear_paramcollid(); - uint32_t paramcollid() const; - void set_paramcollid(uint32_t value); - private: - uint32_t _internal_paramcollid() const; - void _internal_set_paramcollid(uint32_t value); public: + // bool is_drop = 3 [json_name = "isDrop"]; + void clear_is_drop() ; + bool is_drop() const; + void set_is_drop(bool value); - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + bool _internal_is_drop() const; + void _internal_set_is_drop(bool value); - // @@protoc_insertion_point(class_scope:pg_query.Param) + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterOpFamilyStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 41, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - int paramkind_; - int32_t paramid_; - uint32_t paramtype_; - int32_t paramtypmod_; - uint32_t paramcollid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opfamilyname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > items_; + ::google::protobuf::internal::ArenaStringPtr amname_; + bool is_drop_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Aggref final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Aggref) */ { +class AlterOperatorStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterOperatorStmt) */ { public: - inline Aggref() : Aggref(nullptr) {} - ~Aggref() override; - explicit PROTOBUF_CONSTEXPR Aggref(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterOperatorStmt() : AlterOperatorStmt(nullptr) {} + ~AlterOperatorStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterOperatorStmt(::google::protobuf::internal::ConstantInitialized); - Aggref(const Aggref& from); - Aggref(Aggref&& from) noexcept - : Aggref() { + inline AlterOperatorStmt(const AlterOperatorStmt& from) + : AlterOperatorStmt(nullptr, from) {} + AlterOperatorStmt(AlterOperatorStmt&& from) noexcept + : AlterOperatorStmt() { *this = ::std::move(from); } - inline Aggref& operator=(const Aggref& from) { + inline AlterOperatorStmt& operator=(const AlterOperatorStmt& from) { CopyFrom(from); return *this; } - inline Aggref& operator=(Aggref&& from) noexcept { + inline AlterOperatorStmt& operator=(AlterOperatorStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -11895,422 +15695,198 @@ class Aggref final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Aggref& default_instance() { + static const AlterOperatorStmt& default_instance() { return *internal_default_instance(); } - static inline const Aggref* internal_default_instance() { - return reinterpret_cast( - &_Aggref_default_instance_); + static inline const AlterOperatorStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterOperatorStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 17; + 208; - friend void swap(Aggref& a, Aggref& b) { + friend void swap(AlterOperatorStmt& a, AlterOperatorStmt& b) { a.Swap(&b); } - inline void Swap(Aggref* other) { + inline void Swap(AlterOperatorStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Aggref* other) { + void UnsafeArenaSwap(AlterOperatorStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Aggref* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterOperatorStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Aggref& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Aggref& from) { - Aggref::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterOperatorStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterOperatorStmt& from) { + AlterOperatorStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Aggref* other); + void InternalSwap(AlterOperatorStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Aggref"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterOperatorStmt"; } protected: - explicit Aggref(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterOperatorStmt(::google::protobuf::Arena* arena); + AlterOperatorStmt(::google::protobuf::Arena* arena, const AlterOperatorStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- - // accessors ------------------------------------------------------- - - enum : int { - kAggargtypesFieldNumber = 7, - kAggdirectargsFieldNumber = 8, - kArgsFieldNumber = 9, - kAggorderFieldNumber = 10, - kAggdistinctFieldNumber = 11, - kAggkindFieldNumber = 15, - kXprFieldNumber = 1, - kAggfilterFieldNumber = 12, - kAggfnoidFieldNumber = 2, - kAggtypeFieldNumber = 3, - kAggcollidFieldNumber = 4, - kInputcollidFieldNumber = 5, - kAggtranstypeFieldNumber = 6, - kAggstarFieldNumber = 13, - kAggvariadicFieldNumber = 14, - kAgglevelsupFieldNumber = 16, - kAggsplitFieldNumber = 17, - kAggnoFieldNumber = 18, - kAggtransnoFieldNumber = 19, - kLocationFieldNumber = 20, - }; - // repeated .pg_query.Node aggargtypes = 7 [json_name = "aggargtypes"]; - int aggargtypes_size() const; - private: - int _internal_aggargtypes_size() const; - public: - void clear_aggargtypes(); - ::pg_query::Node* mutable_aggargtypes(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_aggargtypes(); - private: - const ::pg_query::Node& _internal_aggargtypes(int index) const; - ::pg_query::Node* _internal_add_aggargtypes(); - public: - const ::pg_query::Node& aggargtypes(int index) const; - ::pg_query::Node* add_aggargtypes(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - aggargtypes() const; - - // repeated .pg_query.Node aggdirectargs = 8 [json_name = "aggdirectargs"]; - int aggdirectargs_size() const; - private: - int _internal_aggdirectargs_size() const; - public: - void clear_aggdirectargs(); - ::pg_query::Node* mutable_aggdirectargs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_aggdirectargs(); - private: - const ::pg_query::Node& _internal_aggdirectargs(int index) const; - ::pg_query::Node* _internal_add_aggdirectargs(); - public: - const ::pg_query::Node& aggdirectargs(int index) const; - ::pg_query::Node* add_aggdirectargs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - aggdirectargs() const; - - // repeated .pg_query.Node args = 9 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; - - // repeated .pg_query.Node aggorder = 10 [json_name = "aggorder"]; - int aggorder_size() const; - private: - int _internal_aggorder_size() const; - public: - void clear_aggorder(); - ::pg_query::Node* mutable_aggorder(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_aggorder(); - private: - const ::pg_query::Node& _internal_aggorder(int index) const; - ::pg_query::Node* _internal_add_aggorder(); - public: - const ::pg_query::Node& aggorder(int index) const; - ::pg_query::Node* add_aggorder(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - aggorder() const; - - // repeated .pg_query.Node aggdistinct = 11 [json_name = "aggdistinct"]; - int aggdistinct_size() const; - private: - int _internal_aggdistinct_size() const; - public: - void clear_aggdistinct(); - ::pg_query::Node* mutable_aggdistinct(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_aggdistinct(); - private: - const ::pg_query::Node& _internal_aggdistinct(int index) const; - ::pg_query::Node* _internal_add_aggdistinct(); - public: - const ::pg_query::Node& aggdistinct(int index) const; - ::pg_query::Node* add_aggdistinct(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - aggdistinct() const; - - // string aggkind = 15 [json_name = "aggkind"]; - void clear_aggkind(); - const std::string& aggkind() const; - template - void set_aggkind(ArgT0&& arg0, ArgT... args); - std::string* mutable_aggkind(); - PROTOBUF_NODISCARD std::string* release_aggkind(); - void set_allocated_aggkind(std::string* aggkind); - private: - const std::string& _internal_aggkind() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_aggkind(const std::string& value); - std::string* _internal_mutable_aggkind(); - public: - - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - - // .pg_query.Node aggfilter = 12 [json_name = "aggfilter"]; - bool has_aggfilter() const; - private: - bool _internal_has_aggfilter() const; - public: - void clear_aggfilter(); - const ::pg_query::Node& aggfilter() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_aggfilter(); - ::pg_query::Node* mutable_aggfilter(); - void set_allocated_aggfilter(::pg_query::Node* aggfilter); - private: - const ::pg_query::Node& _internal_aggfilter() const; - ::pg_query::Node* _internal_mutable_aggfilter(); - public: - void unsafe_arena_set_allocated_aggfilter( - ::pg_query::Node* aggfilter); - ::pg_query::Node* unsafe_arena_release_aggfilter(); - - // uint32 aggfnoid = 2 [json_name = "aggfnoid"]; - void clear_aggfnoid(); - uint32_t aggfnoid() const; - void set_aggfnoid(uint32_t value); - private: - uint32_t _internal_aggfnoid() const; - void _internal_set_aggfnoid(uint32_t value); - public: - - // uint32 aggtype = 3 [json_name = "aggtype"]; - void clear_aggtype(); - uint32_t aggtype() const; - void set_aggtype(uint32_t value); - private: - uint32_t _internal_aggtype() const; - void _internal_set_aggtype(uint32_t value); - public: - - // uint32 aggcollid = 4 [json_name = "aggcollid"]; - void clear_aggcollid(); - uint32_t aggcollid() const; - void set_aggcollid(uint32_t value); - private: - uint32_t _internal_aggcollid() const; - void _internal_set_aggcollid(uint32_t value); - public: - - // uint32 inputcollid = 5 [json_name = "inputcollid"]; - void clear_inputcollid(); - uint32_t inputcollid() const; - void set_inputcollid(uint32_t value); - private: - uint32_t _internal_inputcollid() const; - void _internal_set_inputcollid(uint32_t value); - public: - - // uint32 aggtranstype = 6 [json_name = "aggtranstype"]; - void clear_aggtranstype(); - uint32_t aggtranstype() const; - void set_aggtranstype(uint32_t value); - private: - uint32_t _internal_aggtranstype() const; - void _internal_set_aggtranstype(uint32_t value); - public: - - // bool aggstar = 13 [json_name = "aggstar"]; - void clear_aggstar(); - bool aggstar() const; - void set_aggstar(bool value); - private: - bool _internal_aggstar() const; - void _internal_set_aggstar(bool value); - public: - - // bool aggvariadic = 14 [json_name = "aggvariadic"]; - void clear_aggvariadic(); - bool aggvariadic() const; - void set_aggvariadic(bool value); - private: - bool _internal_aggvariadic() const; - void _internal_set_aggvariadic(bool value); - public: - - // uint32 agglevelsup = 16 [json_name = "agglevelsup"]; - void clear_agglevelsup(); - uint32_t agglevelsup() const; - void set_agglevelsup(uint32_t value); - private: - uint32_t _internal_agglevelsup() const; - void _internal_set_agglevelsup(uint32_t value); - public: + // accessors ------------------------------------------------------- - // .pg_query.AggSplit aggsplit = 17 [json_name = "aggsplit"]; - void clear_aggsplit(); - ::pg_query::AggSplit aggsplit() const; - void set_aggsplit(::pg_query::AggSplit value); + enum : int { + kOptionsFieldNumber = 2, + kOpernameFieldNumber = 1, + }; + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - ::pg_query::AggSplit _internal_aggsplit() const; - void _internal_set_aggsplit(::pg_query::AggSplit value); - public: + int _internal_options_size() const; - // int32 aggno = 18 [json_name = "aggno"]; - void clear_aggno(); - int32_t aggno() const; - void set_aggno(int32_t value); - private: - int32_t _internal_aggno() const; - void _internal_set_aggno(int32_t value); public: - - // int32 aggtransno = 19 [json_name = "aggtransno"]; - void clear_aggtransno(); - int32_t aggtransno() const; - void set_aggtransno(int32_t value); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - int32_t _internal_aggtransno() const; - void _internal_set_aggtransno(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // .pg_query.ObjectWithArgs opername = 1 [json_name = "opername"]; + bool has_opername() const; + void clear_opername() ; + const ::pg_query::ObjectWithArgs& opername() const; + PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_opername(); + ::pg_query::ObjectWithArgs* mutable_opername(); + void set_allocated_opername(::pg_query::ObjectWithArgs* value); + void unsafe_arena_set_allocated_opername(::pg_query::ObjectWithArgs* value); + ::pg_query::ObjectWithArgs* unsafe_arena_release_opername(); - // int32 location = 20 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + const ::pg_query::ObjectWithArgs& _internal_opername() const; + ::pg_query::ObjectWithArgs* _internal_mutable_opername(); - // @@protoc_insertion_point(class_scope:pg_query.Aggref) + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterOperatorStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > aggargtypes_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > aggdirectargs_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > aggorder_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > aggdistinct_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr aggkind_; - ::pg_query::Node* xpr_; - ::pg_query::Node* aggfilter_; - uint32_t aggfnoid_; - uint32_t aggtype_; - uint32_t aggcollid_; - uint32_t inputcollid_; - uint32_t aggtranstype_; - bool aggstar_; - bool aggvariadic_; - uint32_t agglevelsup_; - int aggsplit_; - int32_t aggno_; - int32_t aggtransno_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::pg_query::ObjectWithArgs* opername_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class GroupingFunc final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.GroupingFunc) */ { +class AlterOwnerStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterOwnerStmt) */ { public: - inline GroupingFunc() : GroupingFunc(nullptr) {} - ~GroupingFunc() override; - explicit PROTOBUF_CONSTEXPR GroupingFunc(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterOwnerStmt() : AlterOwnerStmt(nullptr) {} + ~AlterOwnerStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterOwnerStmt(::google::protobuf::internal::ConstantInitialized); - GroupingFunc(const GroupingFunc& from); - GroupingFunc(GroupingFunc&& from) noexcept - : GroupingFunc() { + inline AlterOwnerStmt(const AlterOwnerStmt& from) + : AlterOwnerStmt(nullptr, from) {} + AlterOwnerStmt(AlterOwnerStmt&& from) noexcept + : AlterOwnerStmt() { *this = ::std::move(from); } - inline GroupingFunc& operator=(const GroupingFunc& from) { + inline AlterOwnerStmt& operator=(const AlterOwnerStmt& from) { CopyFrom(from); return *this; } - inline GroupingFunc& operator=(GroupingFunc&& from) noexcept { + inline AlterOwnerStmt& operator=(AlterOwnerStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -12320,236 +15896,224 @@ class GroupingFunc final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const GroupingFunc& default_instance() { + static const AlterOwnerStmt& default_instance() { return *internal_default_instance(); } - static inline const GroupingFunc* internal_default_instance() { - return reinterpret_cast( - &_GroupingFunc_default_instance_); + static inline const AlterOwnerStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterOwnerStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 18; + 207; - friend void swap(GroupingFunc& a, GroupingFunc& b) { + friend void swap(AlterOwnerStmt& a, AlterOwnerStmt& b) { a.Swap(&b); } - inline void Swap(GroupingFunc* other) { + inline void Swap(AlterOwnerStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(GroupingFunc* other) { + void UnsafeArenaSwap(AlterOwnerStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - GroupingFunc* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterOwnerStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const GroupingFunc& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const GroupingFunc& from) { - GroupingFunc::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterOwnerStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterOwnerStmt& from) { + AlterOwnerStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(GroupingFunc* other); + void InternalSwap(AlterOwnerStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.GroupingFunc"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterOwnerStmt"; } protected: - explicit GroupingFunc(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterOwnerStmt(::google::protobuf::Arena* arena); + AlterOwnerStmt(::google::protobuf::Arena* arena, const AlterOwnerStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 2, - kRefsFieldNumber = 3, - kColsFieldNumber = 4, - kXprFieldNumber = 1, - kAgglevelsupFieldNumber = 5, - kLocationFieldNumber = 6, + kRelationFieldNumber = 2, + kObjectFieldNumber = 3, + kNewownerFieldNumber = 4, + kObjectTypeFieldNumber = 1, }; - // repeated .pg_query.Node args = 2 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + // .pg_query.RangeVar relation = 2 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // repeated .pg_query.Node refs = 3 [json_name = "refs"]; - int refs_size() const; - private: - int _internal_refs_size() const; - public: - void clear_refs(); - ::pg_query::Node* mutable_refs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_refs(); private: - const ::pg_query::Node& _internal_refs(int index) const; - ::pg_query::Node* _internal_add_refs(); - public: - const ::pg_query::Node& refs(int index) const; - ::pg_query::Node* add_refs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - refs() const; + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); - // repeated .pg_query.Node cols = 4 [json_name = "cols"]; - int cols_size() const; - private: - int _internal_cols_size() const; - public: - void clear_cols(); - ::pg_query::Node* mutable_cols(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_cols(); - private: - const ::pg_query::Node& _internal_cols(int index) const; - ::pg_query::Node* _internal_add_cols(); public: - const ::pg_query::Node& cols(int index) const; - ::pg_query::Node* add_cols(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - cols() const; + // .pg_query.Node object = 3 [json_name = "object"]; + bool has_object() const; + void clear_object() ; + const ::pg_query::Node& object() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_object(); + ::pg_query::Node* mutable_object(); + void set_allocated_object(::pg_query::Node* value); + void unsafe_arena_set_allocated_object(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_object(); - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const ::pg_query::Node& _internal_object() const; + ::pg_query::Node* _internal_mutable_object(); + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // .pg_query.RoleSpec newowner = 4 [json_name = "newowner"]; + bool has_newowner() const; + void clear_newowner() ; + const ::pg_query::RoleSpec& newowner() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_newowner(); + ::pg_query::RoleSpec* mutable_newowner(); + void set_allocated_newowner(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_newowner(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_newowner(); - // uint32 agglevelsup = 5 [json_name = "agglevelsup"]; - void clear_agglevelsup(); - uint32_t agglevelsup() const; - void set_agglevelsup(uint32_t value); private: - uint32_t _internal_agglevelsup() const; - void _internal_set_agglevelsup(uint32_t value); + const ::pg_query::RoleSpec& _internal_newowner() const; + ::pg_query::RoleSpec* _internal_mutable_newowner(); + public: + // .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; + void clear_object_type() ; + ::pg_query::ObjectType object_type() const; + void set_object_type(::pg_query::ObjectType value); - // int32 location = 6 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::pg_query::ObjectType _internal_object_type() const; + void _internal_set_object_type(::pg_query::ObjectType value); - // @@protoc_insertion_point(class_scope:pg_query.GroupingFunc) + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterOwnerStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > refs_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > cols_; - ::pg_query::Node* xpr_; - uint32_t agglevelsup_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* object_; + ::pg_query::RoleSpec* newowner_; + int object_type_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class WindowFunc final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.WindowFunc) */ { +class AlterPolicyStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterPolicyStmt) */ { public: - inline WindowFunc() : WindowFunc(nullptr) {} - ~WindowFunc() override; - explicit PROTOBUF_CONSTEXPR WindowFunc(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterPolicyStmt() : AlterPolicyStmt(nullptr) {} + ~AlterPolicyStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterPolicyStmt(::google::protobuf::internal::ConstantInitialized); - WindowFunc(const WindowFunc& from); - WindowFunc(WindowFunc&& from) noexcept - : WindowFunc() { + inline AlterPolicyStmt(const AlterPolicyStmt& from) + : AlterPolicyStmt(nullptr, from) {} + AlterPolicyStmt(AlterPolicyStmt&& from) noexcept + : AlterPolicyStmt() { *this = ::std::move(from); } - inline WindowFunc& operator=(const WindowFunc& from) { + inline AlterPolicyStmt& operator=(const AlterPolicyStmt& from) { CopyFrom(from); return *this; } - inline WindowFunc& operator=(WindowFunc&& from) noexcept { + inline AlterPolicyStmt& operator=(AlterPolicyStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -12559,282 +16123,250 @@ class WindowFunc final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const WindowFunc& default_instance() { + static const AlterPolicyStmt& default_instance() { return *internal_default_instance(); } - static inline const WindowFunc* internal_default_instance() { - return reinterpret_cast( - &_WindowFunc_default_instance_); + static inline const AlterPolicyStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterPolicyStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 19; + 168; - friend void swap(WindowFunc& a, WindowFunc& b) { + friend void swap(AlterPolicyStmt& a, AlterPolicyStmt& b) { a.Swap(&b); } - inline void Swap(WindowFunc* other) { + inline void Swap(AlterPolicyStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(WindowFunc* other) { + void UnsafeArenaSwap(AlterPolicyStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - WindowFunc* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterPolicyStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const WindowFunc& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const WindowFunc& from) { - WindowFunc::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterPolicyStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterPolicyStmt& from) { + AlterPolicyStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(WindowFunc* other); + void InternalSwap(AlterPolicyStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.WindowFunc"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterPolicyStmt"; } protected: - explicit WindowFunc(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterPolicyStmt(::google::protobuf::Arena* arena); + AlterPolicyStmt(::google::protobuf::Arena* arena, const AlterPolicyStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 6, - kXprFieldNumber = 1, - kAggfilterFieldNumber = 7, - kWinfnoidFieldNumber = 2, - kWintypeFieldNumber = 3, - kWincollidFieldNumber = 4, - kInputcollidFieldNumber = 5, - kWinrefFieldNumber = 8, - kWinstarFieldNumber = 9, - kWinaggFieldNumber = 10, - kLocationFieldNumber = 11, + kRolesFieldNumber = 3, + kPolicyNameFieldNumber = 1, + kTableFieldNumber = 2, + kQualFieldNumber = 4, + kWithCheckFieldNumber = 5, }; - // repeated .pg_query.Node args = 6 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; - - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + // repeated .pg_query.Node roles = 3 [json_name = "roles"]; + int roles_size() const; private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + int _internal_roles_size() const; - // .pg_query.Node aggfilter = 7 [json_name = "aggfilter"]; - bool has_aggfilter() const; - private: - bool _internal_has_aggfilter() const; public: - void clear_aggfilter(); - const ::pg_query::Node& aggfilter() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_aggfilter(); - ::pg_query::Node* mutable_aggfilter(); - void set_allocated_aggfilter(::pg_query::Node* aggfilter); + void clear_roles() ; + ::pg_query::Node* mutable_roles(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_roles(); private: - const ::pg_query::Node& _internal_aggfilter() const; - ::pg_query::Node* _internal_mutable_aggfilter(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_roles() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_roles(); public: - void unsafe_arena_set_allocated_aggfilter( - ::pg_query::Node* aggfilter); - ::pg_query::Node* unsafe_arena_release_aggfilter(); + const ::pg_query::Node& roles(int index) const; + ::pg_query::Node* add_roles(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + roles() const; + // string policy_name = 1 [json_name = "policy_name"]; + void clear_policy_name() ; + const std::string& policy_name() const; + template + void set_policy_name(Arg_&& arg, Args_... args); + std::string* mutable_policy_name(); + PROTOBUF_NODISCARD std::string* release_policy_name(); + void set_allocated_policy_name(std::string* value); - // uint32 winfnoid = 2 [json_name = "winfnoid"]; - void clear_winfnoid(); - uint32_t winfnoid() const; - void set_winfnoid(uint32_t value); private: - uint32_t _internal_winfnoid() const; - void _internal_set_winfnoid(uint32_t value); - public: + const std::string& _internal_policy_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_policy_name( + const std::string& value); + std::string* _internal_mutable_policy_name(); - // uint32 wintype = 3 [json_name = "wintype"]; - void clear_wintype(); - uint32_t wintype() const; - void set_wintype(uint32_t value); - private: - uint32_t _internal_wintype() const; - void _internal_set_wintype(uint32_t value); public: + // .pg_query.RangeVar table = 2 [json_name = "table"]; + bool has_table() const; + void clear_table() ; + const ::pg_query::RangeVar& table() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_table(); + ::pg_query::RangeVar* mutable_table(); + void set_allocated_table(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_table(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_table(); - // uint32 wincollid = 4 [json_name = "wincollid"]; - void clear_wincollid(); - uint32_t wincollid() const; - void set_wincollid(uint32_t value); private: - uint32_t _internal_wincollid() const; - void _internal_set_wincollid(uint32_t value); - public: + const ::pg_query::RangeVar& _internal_table() const; + ::pg_query::RangeVar* _internal_mutable_table(); - // uint32 inputcollid = 5 [json_name = "inputcollid"]; - void clear_inputcollid(); - uint32_t inputcollid() const; - void set_inputcollid(uint32_t value); - private: - uint32_t _internal_inputcollid() const; - void _internal_set_inputcollid(uint32_t value); public: + // .pg_query.Node qual = 4 [json_name = "qual"]; + bool has_qual() const; + void clear_qual() ; + const ::pg_query::Node& qual() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_qual(); + ::pg_query::Node* mutable_qual(); + void set_allocated_qual(::pg_query::Node* value); + void unsafe_arena_set_allocated_qual(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_qual(); - // uint32 winref = 8 [json_name = "winref"]; - void clear_winref(); - uint32_t winref() const; - void set_winref(uint32_t value); private: - uint32_t _internal_winref() const; - void _internal_set_winref(uint32_t value); - public: + const ::pg_query::Node& _internal_qual() const; + ::pg_query::Node* _internal_mutable_qual(); - // bool winstar = 9 [json_name = "winstar"]; - void clear_winstar(); - bool winstar() const; - void set_winstar(bool value); - private: - bool _internal_winstar() const; - void _internal_set_winstar(bool value); public: + // .pg_query.Node with_check = 5 [json_name = "with_check"]; + bool has_with_check() const; + void clear_with_check() ; + const ::pg_query::Node& with_check() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_with_check(); + ::pg_query::Node* mutable_with_check(); + void set_allocated_with_check(::pg_query::Node* value); + void unsafe_arena_set_allocated_with_check(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_with_check(); - // bool winagg = 10 [json_name = "winagg"]; - void clear_winagg(); - bool winagg() const; - void set_winagg(bool value); private: - bool _internal_winagg() const; - void _internal_set_winagg(bool value); - public: + const ::pg_query::Node& _internal_with_check() const; + ::pg_query::Node* _internal_mutable_with_check(); - // int32 location = 11 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.WindowFunc) + // @@protoc_insertion_point(class_scope:pg_query.AlterPolicyStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 4, + 44, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::pg_query::Node* xpr_; - ::pg_query::Node* aggfilter_; - uint32_t winfnoid_; - uint32_t wintype_; - uint32_t wincollid_; - uint32_t inputcollid_; - uint32_t winref_; - bool winstar_; - bool winagg_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > roles_; + ::google::protobuf::internal::ArenaStringPtr policy_name_; + ::pg_query::RangeVar* table_; + ::pg_query::Node* qual_; + ::pg_query::Node* with_check_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class SubscriptingRef final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SubscriptingRef) */ { +class AlterPublicationStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterPublicationStmt) */ { public: - inline SubscriptingRef() : SubscriptingRef(nullptr) {} - ~SubscriptingRef() override; - explicit PROTOBUF_CONSTEXPR SubscriptingRef(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterPublicationStmt() : AlterPublicationStmt(nullptr) {} + ~AlterPublicationStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterPublicationStmt(::google::protobuf::internal::ConstantInitialized); - SubscriptingRef(const SubscriptingRef& from); - SubscriptingRef(SubscriptingRef&& from) noexcept - : SubscriptingRef() { + inline AlterPublicationStmt(const AlterPublicationStmt& from) + : AlterPublicationStmt(nullptr, from) {} + AlterPublicationStmt(AlterPublicationStmt&& from) noexcept + : AlterPublicationStmt() { *this = ::std::move(from); } - inline SubscriptingRef& operator=(const SubscriptingRef& from) { + inline AlterPublicationStmt& operator=(const AlterPublicationStmt& from) { CopyFrom(from); return *this; } - inline SubscriptingRef& operator=(SubscriptingRef&& from) noexcept { + inline AlterPublicationStmt& operator=(AlterPublicationStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -12844,289 +16376,242 @@ class SubscriptingRef final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SubscriptingRef& default_instance() { + static const AlterPublicationStmt& default_instance() { return *internal_default_instance(); } - static inline const SubscriptingRef* internal_default_instance() { - return reinterpret_cast( - &_SubscriptingRef_default_instance_); + static inline const AlterPublicationStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterPublicationStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 20; + 251; - friend void swap(SubscriptingRef& a, SubscriptingRef& b) { + friend void swap(AlterPublicationStmt& a, AlterPublicationStmt& b) { a.Swap(&b); } - inline void Swap(SubscriptingRef* other) { + inline void Swap(AlterPublicationStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SubscriptingRef* other) { + void UnsafeArenaSwap(AlterPublicationStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - SubscriptingRef* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterPublicationStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SubscriptingRef& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SubscriptingRef& from) { - SubscriptingRef::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterPublicationStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterPublicationStmt& from) { + AlterPublicationStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SubscriptingRef* other); + void InternalSwap(AlterPublicationStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SubscriptingRef"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterPublicationStmt"; } protected: - explicit SubscriptingRef(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterPublicationStmt(::google::protobuf::Arena* arena); + AlterPublicationStmt(::google::protobuf::Arena* arena, const AlterPublicationStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRefupperindexprFieldNumber = 7, - kReflowerindexprFieldNumber = 8, - kXprFieldNumber = 1, - kRefexprFieldNumber = 9, - kRefassgnexprFieldNumber = 10, - kRefcontainertypeFieldNumber = 2, - kRefelemtypeFieldNumber = 3, - kRefrestypeFieldNumber = 4, - kReftypmodFieldNumber = 5, - kRefcollidFieldNumber = 6, + kOptionsFieldNumber = 2, + kPubobjectsFieldNumber = 3, + kPubnameFieldNumber = 1, + kForAllTablesFieldNumber = 4, + kActionFieldNumber = 5, }; - // repeated .pg_query.Node refupperindexpr = 7 [json_name = "refupperindexpr"]; - int refupperindexpr_size() const; - private: - int _internal_refupperindexpr_size() const; - public: - void clear_refupperindexpr(); - ::pg_query::Node* mutable_refupperindexpr(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_refupperindexpr(); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_refupperindexpr(int index) const; - ::pg_query::Node* _internal_add_refupperindexpr(); - public: - const ::pg_query::Node& refupperindexpr(int index) const; - ::pg_query::Node* add_refupperindexpr(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - refupperindexpr() const; + int _internal_options_size() const; - // repeated .pg_query.Node reflowerindexpr = 8 [json_name = "reflowerindexpr"]; - int reflowerindexpr_size() const; - private: - int _internal_reflowerindexpr_size() const; - public: - void clear_reflowerindexpr(); - ::pg_query::Node* mutable_reflowerindexpr(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_reflowerindexpr(); - private: - const ::pg_query::Node& _internal_reflowerindexpr(int index) const; - ::pg_query::Node* _internal_add_reflowerindexpr(); public: - const ::pg_query::Node& reflowerindexpr(int index) const; - ::pg_query::Node* add_reflowerindexpr(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - reflowerindexpr() const; - - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - bool _internal_has_xpr() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // repeated .pg_query.Node pubobjects = 3 [json_name = "pubobjects"]; + int pubobjects_size() const; private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + int _internal_pubobjects_size() const; - // .pg_query.Node refexpr = 9 [json_name = "refexpr"]; - bool has_refexpr() const; - private: - bool _internal_has_refexpr() const; public: - void clear_refexpr(); - const ::pg_query::Node& refexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_refexpr(); - ::pg_query::Node* mutable_refexpr(); - void set_allocated_refexpr(::pg_query::Node* refexpr); + void clear_pubobjects() ; + ::pg_query::Node* mutable_pubobjects(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_pubobjects(); private: - const ::pg_query::Node& _internal_refexpr() const; - ::pg_query::Node* _internal_mutable_refexpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_pubobjects() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_pubobjects(); public: - void unsafe_arena_set_allocated_refexpr( - ::pg_query::Node* refexpr); - ::pg_query::Node* unsafe_arena_release_refexpr(); + const ::pg_query::Node& pubobjects(int index) const; + ::pg_query::Node* add_pubobjects(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + pubobjects() const; + // string pubname = 1 [json_name = "pubname"]; + void clear_pubname() ; + const std::string& pubname() const; + template + void set_pubname(Arg_&& arg, Args_... args); + std::string* mutable_pubname(); + PROTOBUF_NODISCARD std::string* release_pubname(); + void set_allocated_pubname(std::string* value); - // .pg_query.Node refassgnexpr = 10 [json_name = "refassgnexpr"]; - bool has_refassgnexpr() const; - private: - bool _internal_has_refassgnexpr() const; - public: - void clear_refassgnexpr(); - const ::pg_query::Node& refassgnexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_refassgnexpr(); - ::pg_query::Node* mutable_refassgnexpr(); - void set_allocated_refassgnexpr(::pg_query::Node* refassgnexpr); private: - const ::pg_query::Node& _internal_refassgnexpr() const; - ::pg_query::Node* _internal_mutable_refassgnexpr(); - public: - void unsafe_arena_set_allocated_refassgnexpr( - ::pg_query::Node* refassgnexpr); - ::pg_query::Node* unsafe_arena_release_refassgnexpr(); + const std::string& _internal_pubname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_pubname( + const std::string& value); + std::string* _internal_mutable_pubname(); - // uint32 refcontainertype = 2 [json_name = "refcontainertype"]; - void clear_refcontainertype(); - uint32_t refcontainertype() const; - void set_refcontainertype(uint32_t value); - private: - uint32_t _internal_refcontainertype() const; - void _internal_set_refcontainertype(uint32_t value); public: + // bool for_all_tables = 4 [json_name = "for_all_tables"]; + void clear_for_all_tables() ; + bool for_all_tables() const; + void set_for_all_tables(bool value); - // uint32 refelemtype = 3 [json_name = "refelemtype"]; - void clear_refelemtype(); - uint32_t refelemtype() const; - void set_refelemtype(uint32_t value); private: - uint32_t _internal_refelemtype() const; - void _internal_set_refelemtype(uint32_t value); - public: + bool _internal_for_all_tables() const; + void _internal_set_for_all_tables(bool value); - // uint32 refrestype = 4 [json_name = "refrestype"]; - void clear_refrestype(); - uint32_t refrestype() const; - void set_refrestype(uint32_t value); - private: - uint32_t _internal_refrestype() const; - void _internal_set_refrestype(uint32_t value); public: + // .pg_query.AlterPublicationAction action = 5 [json_name = "action"]; + void clear_action() ; + ::pg_query::AlterPublicationAction action() const; + void set_action(::pg_query::AlterPublicationAction value); - // int32 reftypmod = 5 [json_name = "reftypmod"]; - void clear_reftypmod(); - int32_t reftypmod() const; - void set_reftypmod(int32_t value); private: - int32_t _internal_reftypmod() const; - void _internal_set_reftypmod(int32_t value); - public: + ::pg_query::AlterPublicationAction _internal_action() const; + void _internal_set_action(::pg_query::AlterPublicationAction value); - // uint32 refcollid = 6 [json_name = "refcollid"]; - void clear_refcollid(); - uint32_t refcollid() const; - void set_refcollid(uint32_t value); - private: - uint32_t _internal_refcollid() const; - void _internal_set_refcollid(uint32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.SubscriptingRef) + // @@protoc_insertion_point(class_scope:pg_query.AlterPublicationStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > refupperindexpr_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > reflowerindexpr_; - ::pg_query::Node* xpr_; - ::pg_query::Node* refexpr_; - ::pg_query::Node* refassgnexpr_; - uint32_t refcontainertype_; - uint32_t refelemtype_; - uint32_t refrestype_; - int32_t reftypmod_; - uint32_t refcollid_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 45, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > pubobjects_; + ::google::protobuf::internal::ArenaStringPtr pubname_; + bool for_all_tables_; + int action_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class FuncExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.FuncExpr) */ { +class AlterRoleSetStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterRoleSetStmt) */ { public: - inline FuncExpr() : FuncExpr(nullptr) {} - ~FuncExpr() override; - explicit PROTOBUF_CONSTEXPR FuncExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterRoleSetStmt() : AlterRoleSetStmt(nullptr) {} + ~AlterRoleSetStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterRoleSetStmt(::google::protobuf::internal::ConstantInitialized); - FuncExpr(const FuncExpr& from); - FuncExpr(FuncExpr&& from) noexcept - : FuncExpr() { + inline AlterRoleSetStmt(const AlterRoleSetStmt& from) + : AlterRoleSetStmt(nullptr, from) {} + AlterRoleSetStmt(AlterRoleSetStmt&& from) noexcept + : AlterRoleSetStmt() { *this = ::std::move(from); } - inline FuncExpr& operator=(const FuncExpr& from) { + inline AlterRoleSetStmt& operator=(const AlterRoleSetStmt& from) { CopyFrom(from); return *this; } - inline FuncExpr& operator=(FuncExpr&& from) noexcept { + inline AlterRoleSetStmt& operator=(AlterRoleSetStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -13136,262 +16621,213 @@ class FuncExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const FuncExpr& default_instance() { + static const AlterRoleSetStmt& default_instance() { return *internal_default_instance(); } - static inline const FuncExpr* internal_default_instance() { - return reinterpret_cast( - &_FuncExpr_default_instance_); + static inline const AlterRoleSetStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterRoleSetStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 21; + 176; - friend void swap(FuncExpr& a, FuncExpr& b) { + friend void swap(AlterRoleSetStmt& a, AlterRoleSetStmt& b) { a.Swap(&b); } - inline void Swap(FuncExpr* other) { + inline void Swap(AlterRoleSetStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(FuncExpr* other) { + void UnsafeArenaSwap(AlterRoleSetStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - FuncExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterRoleSetStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FuncExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const FuncExpr& from) { - FuncExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterRoleSetStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterRoleSetStmt& from) { + AlterRoleSetStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FuncExpr* other); + void InternalSwap(AlterRoleSetStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.FuncExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterRoleSetStmt"; } protected: - explicit FuncExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterRoleSetStmt(::google::protobuf::Arena* arena); + AlterRoleSetStmt(::google::protobuf::Arena* arena, const AlterRoleSetStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 9, - kXprFieldNumber = 1, - kFuncidFieldNumber = 2, - kFuncresulttypeFieldNumber = 3, - kFuncretsetFieldNumber = 4, - kFuncvariadicFieldNumber = 5, - kFuncformatFieldNumber = 6, - kFunccollidFieldNumber = 7, - kInputcollidFieldNumber = 8, - kLocationFieldNumber = 10, + kDatabaseFieldNumber = 2, + kRoleFieldNumber = 1, + kSetstmtFieldNumber = 3, }; - // repeated .pg_query.Node args = 9 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; - - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - - // uint32 funcid = 2 [json_name = "funcid"]; - void clear_funcid(); - uint32_t funcid() const; - void set_funcid(uint32_t value); - private: - uint32_t _internal_funcid() const; - void _internal_set_funcid(uint32_t value); - public: - - // uint32 funcresulttype = 3 [json_name = "funcresulttype"]; - void clear_funcresulttype(); - uint32_t funcresulttype() const; - void set_funcresulttype(uint32_t value); - private: - uint32_t _internal_funcresulttype() const; - void _internal_set_funcresulttype(uint32_t value); - public: + // string database = 2 [json_name = "database"]; + void clear_database() ; + const std::string& database() const; + template + void set_database(Arg_&& arg, Args_... args); + std::string* mutable_database(); + PROTOBUF_NODISCARD std::string* release_database(); + void set_allocated_database(std::string* value); - // bool funcretset = 4 [json_name = "funcretset"]; - void clear_funcretset(); - bool funcretset() const; - void set_funcretset(bool value); private: - bool _internal_funcretset() const; - void _internal_set_funcretset(bool value); - public: + const std::string& _internal_database() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_database( + const std::string& value); + std::string* _internal_mutable_database(); - // bool funcvariadic = 5 [json_name = "funcvariadic"]; - void clear_funcvariadic(); - bool funcvariadic() const; - void set_funcvariadic(bool value); - private: - bool _internal_funcvariadic() const; - void _internal_set_funcvariadic(bool value); public: + // .pg_query.RoleSpec role = 1 [json_name = "role"]; + bool has_role() const; + void clear_role() ; + const ::pg_query::RoleSpec& role() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_role(); + ::pg_query::RoleSpec* mutable_role(); + void set_allocated_role(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_role(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_role(); - // .pg_query.CoercionForm funcformat = 6 [json_name = "funcformat"]; - void clear_funcformat(); - ::pg_query::CoercionForm funcformat() const; - void set_funcformat(::pg_query::CoercionForm value); private: - ::pg_query::CoercionForm _internal_funcformat() const; - void _internal_set_funcformat(::pg_query::CoercionForm value); - public: + const ::pg_query::RoleSpec& _internal_role() const; + ::pg_query::RoleSpec* _internal_mutable_role(); - // uint32 funccollid = 7 [json_name = "funccollid"]; - void clear_funccollid(); - uint32_t funccollid() const; - void set_funccollid(uint32_t value); - private: - uint32_t _internal_funccollid() const; - void _internal_set_funccollid(uint32_t value); public: + // .pg_query.VariableSetStmt setstmt = 3 [json_name = "setstmt"]; + bool has_setstmt() const; + void clear_setstmt() ; + const ::pg_query::VariableSetStmt& setstmt() const; + PROTOBUF_NODISCARD ::pg_query::VariableSetStmt* release_setstmt(); + ::pg_query::VariableSetStmt* mutable_setstmt(); + void set_allocated_setstmt(::pg_query::VariableSetStmt* value); + void unsafe_arena_set_allocated_setstmt(::pg_query::VariableSetStmt* value); + ::pg_query::VariableSetStmt* unsafe_arena_release_setstmt(); - // uint32 inputcollid = 8 [json_name = "inputcollid"]; - void clear_inputcollid(); - uint32_t inputcollid() const; - void set_inputcollid(uint32_t value); private: - uint32_t _internal_inputcollid() const; - void _internal_set_inputcollid(uint32_t value); - public: + const ::pg_query::VariableSetStmt& _internal_setstmt() const; + ::pg_query::VariableSetStmt* _internal_mutable_setstmt(); - // int32 location = 10 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.FuncExpr) + // @@protoc_insertion_point(class_scope:pg_query.AlterRoleSetStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 42, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::pg_query::Node* xpr_; - uint32_t funcid_; - uint32_t funcresulttype_; - bool funcretset_; - bool funcvariadic_; - int funcformat_; - uint32_t funccollid_; - uint32_t inputcollid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr database_; + ::pg_query::RoleSpec* role_; + ::pg_query::VariableSetStmt* setstmt_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class NamedArgExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.NamedArgExpr) */ { +class AlterRoleStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterRoleStmt) */ { public: - inline NamedArgExpr() : NamedArgExpr(nullptr) {} - ~NamedArgExpr() override; - explicit PROTOBUF_CONSTEXPR NamedArgExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterRoleStmt() : AlterRoleStmt(nullptr) {} + ~AlterRoleStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterRoleStmt(::google::protobuf::internal::ConstantInitialized); - NamedArgExpr(const NamedArgExpr& from); - NamedArgExpr(NamedArgExpr&& from) noexcept - : NamedArgExpr() { + inline AlterRoleStmt(const AlterRoleStmt& from) + : AlterRoleStmt(nullptr, from) {} + AlterRoleStmt(AlterRoleStmt&& from) noexcept + : AlterRoleStmt() { *this = ::std::move(from); } - inline NamedArgExpr& operator=(const NamedArgExpr& from) { + inline AlterRoleStmt& operator=(const AlterRoleStmt& from) { CopyFrom(from); return *this; } - inline NamedArgExpr& operator=(NamedArgExpr&& from) noexcept { + inline AlterRoleStmt& operator=(AlterRoleStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -13401,212 +16837,210 @@ class NamedArgExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const NamedArgExpr& default_instance() { + static const AlterRoleStmt& default_instance() { return *internal_default_instance(); } - static inline const NamedArgExpr* internal_default_instance() { - return reinterpret_cast( - &_NamedArgExpr_default_instance_); + static inline const AlterRoleStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterRoleStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 22; + 175; - friend void swap(NamedArgExpr& a, NamedArgExpr& b) { + friend void swap(AlterRoleStmt& a, AlterRoleStmt& b) { a.Swap(&b); } - inline void Swap(NamedArgExpr* other) { + inline void Swap(AlterRoleStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(NamedArgExpr* other) { + void UnsafeArenaSwap(AlterRoleStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - NamedArgExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterRoleStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const NamedArgExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const NamedArgExpr& from) { - NamedArgExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterRoleStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterRoleStmt& from) { + AlterRoleStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(NamedArgExpr* other); + void InternalSwap(AlterRoleStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.NamedArgExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterRoleStmt"; } protected: - explicit NamedArgExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterRoleStmt(::google::protobuf::Arena* arena); + AlterRoleStmt(::google::protobuf::Arena* arena, const AlterRoleStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNameFieldNumber = 3, - kXprFieldNumber = 1, - kArgFieldNumber = 2, - kArgnumberFieldNumber = 4, - kLocationFieldNumber = 5, + kOptionsFieldNumber = 2, + kRoleFieldNumber = 1, + kActionFieldNumber = 3, }; - // string name = 3 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + int _internal_options_size() const; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // .pg_query.RoleSpec role = 1 [json_name = "role"]; + bool has_role() const; + void clear_role() ; + const ::pg_query::RoleSpec& role() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_role(); + ::pg_query::RoleSpec* mutable_role(); + void set_allocated_role(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_role(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_role(); - // .pg_query.Node arg = 2 [json_name = "arg"]; - bool has_arg() const; private: - bool _internal_has_arg() const; - public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); - private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); - public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + const ::pg_query::RoleSpec& _internal_role() const; + ::pg_query::RoleSpec* _internal_mutable_role(); - // int32 argnumber = 4 [json_name = "argnumber"]; - void clear_argnumber(); - int32_t argnumber() const; - void set_argnumber(int32_t value); - private: - int32_t _internal_argnumber() const; - void _internal_set_argnumber(int32_t value); public: + // int32 action = 3 [json_name = "action"]; + void clear_action() ; + ::int32_t action() const; + void set_action(::int32_t value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_action() const; + void _internal_set_action(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.NamedArgExpr) + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterRoleStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::Node* xpr_; - ::pg_query::Node* arg_; - int32_t argnumber_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::pg_query::RoleSpec* role_; + ::int32_t action_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class OpExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.OpExpr) */ { +class AlterSeqStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterSeqStmt) */ { public: - inline OpExpr() : OpExpr(nullptr) {} - ~OpExpr() override; - explicit PROTOBUF_CONSTEXPR OpExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterSeqStmt() : AlterSeqStmt(nullptr) {} + ~AlterSeqStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterSeqStmt(::google::protobuf::internal::ConstantInitialized); - OpExpr(const OpExpr& from); - OpExpr(OpExpr&& from) noexcept - : OpExpr() { + inline AlterSeqStmt(const AlterSeqStmt& from) + : AlterSeqStmt(nullptr, from) {} + AlterSeqStmt(AlterSeqStmt&& from) noexcept + : AlterSeqStmt() { *this = ::std::move(from); } - inline OpExpr& operator=(const OpExpr& from) { + inline AlterSeqStmt& operator=(const AlterSeqStmt& from) { CopyFrom(from); return *this; } - inline OpExpr& operator=(OpExpr&& from) noexcept { + inline AlterSeqStmt& operator=(AlterSeqStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -13616,251 +17050,222 @@ class OpExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const OpExpr& default_instance() { + static const AlterSeqStmt& default_instance() { return *internal_default_instance(); } - static inline const OpExpr* internal_default_instance() { - return reinterpret_cast( - &_OpExpr_default_instance_); + static inline const AlterSeqStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterSeqStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 23; + 179; - friend void swap(OpExpr& a, OpExpr& b) { + friend void swap(AlterSeqStmt& a, AlterSeqStmt& b) { a.Swap(&b); } - inline void Swap(OpExpr* other) { + inline void Swap(AlterSeqStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(OpExpr* other) { + void UnsafeArenaSwap(AlterSeqStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - OpExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterSeqStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const OpExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const OpExpr& from) { - OpExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterSeqStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterSeqStmt& from) { + AlterSeqStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(OpExpr* other); + void InternalSwap(AlterSeqStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.OpExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterSeqStmt"; } protected: - explicit OpExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterSeqStmt(::google::protobuf::Arena* arena); + AlterSeqStmt(::google::protobuf::Arena* arena, const AlterSeqStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 8, - kXprFieldNumber = 1, - kOpnoFieldNumber = 2, - kOpfuncidFieldNumber = 3, - kOpresulttypeFieldNumber = 4, - kOpretsetFieldNumber = 5, - kOpcollidFieldNumber = 6, - kInputcollidFieldNumber = 7, - kLocationFieldNumber = 9, + kOptionsFieldNumber = 2, + kSequenceFieldNumber = 1, + kForIdentityFieldNumber = 3, + kMissingOkFieldNumber = 4, }; - // repeated .pg_query.Node args = 8 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + int _internal_options_size() const; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - - // uint32 opno = 2 [json_name = "opno"]; - void clear_opno(); - uint32_t opno() const; - void set_opno(uint32_t value); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - uint32_t _internal_opno() const; - void _internal_set_opno(uint32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // .pg_query.RangeVar sequence = 1 [json_name = "sequence"]; + bool has_sequence() const; + void clear_sequence() ; + const ::pg_query::RangeVar& sequence() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_sequence(); + ::pg_query::RangeVar* mutable_sequence(); + void set_allocated_sequence(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_sequence(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_sequence(); - // uint32 opfuncid = 3 [json_name = "opfuncid"]; - void clear_opfuncid(); - uint32_t opfuncid() const; - void set_opfuncid(uint32_t value); private: - uint32_t _internal_opfuncid() const; - void _internal_set_opfuncid(uint32_t value); - public: + const ::pg_query::RangeVar& _internal_sequence() const; + ::pg_query::RangeVar* _internal_mutable_sequence(); - // uint32 opresulttype = 4 [json_name = "opresulttype"]; - void clear_opresulttype(); - uint32_t opresulttype() const; - void set_opresulttype(uint32_t value); - private: - uint32_t _internal_opresulttype() const; - void _internal_set_opresulttype(uint32_t value); public: + // bool for_identity = 3 [json_name = "for_identity"]; + void clear_for_identity() ; + bool for_identity() const; + void set_for_identity(bool value); - // bool opretset = 5 [json_name = "opretset"]; - void clear_opretset(); - bool opretset() const; - void set_opretset(bool value); private: - bool _internal_opretset() const; - void _internal_set_opretset(bool value); - public: + bool _internal_for_identity() const; + void _internal_set_for_identity(bool value); - // uint32 opcollid = 6 [json_name = "opcollid"]; - void clear_opcollid(); - uint32_t opcollid() const; - void set_opcollid(uint32_t value); - private: - uint32_t _internal_opcollid() const; - void _internal_set_opcollid(uint32_t value); public: + // bool missing_ok = 4 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // uint32 inputcollid = 7 [json_name = "inputcollid"]; - void clear_inputcollid(); - uint32_t inputcollid() const; - void set_inputcollid(uint32_t value); private: - uint32_t _internal_inputcollid() const; - void _internal_set_inputcollid(uint32_t value); - public: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); - // int32 location = 9 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.OpExpr) + // @@protoc_insertion_point(class_scope:pg_query.AlterSeqStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::pg_query::Node* xpr_; - uint32_t opno_; - uint32_t opfuncid_; - uint32_t opresulttype_; - bool opretset_; - uint32_t opcollid_; - uint32_t inputcollid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::pg_query::RangeVar* sequence_; + bool for_identity_; + bool missing_ok_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DistinctExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DistinctExpr) */ { +class AlterStatsStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterStatsStmt) */ { public: - inline DistinctExpr() : DistinctExpr(nullptr) {} - ~DistinctExpr() override; - explicit PROTOBUF_CONSTEXPR DistinctExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterStatsStmt() : AlterStatsStmt(nullptr) {} + ~AlterStatsStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterStatsStmt(::google::protobuf::internal::ConstantInitialized); - DistinctExpr(const DistinctExpr& from); - DistinctExpr(DistinctExpr&& from) noexcept - : DistinctExpr() { + inline AlterStatsStmt(const AlterStatsStmt& from) + : AlterStatsStmt(nullptr, from) {} + AlterStatsStmt(AlterStatsStmt&& from) noexcept + : AlterStatsStmt() { *this = ::std::move(from); } - inline DistinctExpr& operator=(const DistinctExpr& from) { + inline AlterStatsStmt& operator=(const AlterStatsStmt& from) { CopyFrom(from); return *this; } - inline DistinctExpr& operator=(DistinctExpr&& from) noexcept { + inline AlterStatsStmt& operator=(AlterStatsStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -13870,251 +17275,204 @@ class DistinctExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DistinctExpr& default_instance() { + static const AlterStatsStmt& default_instance() { return *internal_default_instance(); } - static inline const DistinctExpr* internal_default_instance() { - return reinterpret_cast( - &_DistinctExpr_default_instance_); + static inline const AlterStatsStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterStatsStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 24; + 196; - friend void swap(DistinctExpr& a, DistinctExpr& b) { + friend void swap(AlterStatsStmt& a, AlterStatsStmt& b) { a.Swap(&b); } - inline void Swap(DistinctExpr* other) { + inline void Swap(AlterStatsStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DistinctExpr* other) { + void UnsafeArenaSwap(AlterStatsStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DistinctExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterStatsStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DistinctExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DistinctExpr& from) { - DistinctExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterStatsStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterStatsStmt& from) { + AlterStatsStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DistinctExpr* other); + void InternalSwap(AlterStatsStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DistinctExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterStatsStmt"; } protected: - explicit DistinctExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterStatsStmt(::google::protobuf::Arena* arena); + AlterStatsStmt(::google::protobuf::Arena* arena, const AlterStatsStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 8, - kXprFieldNumber = 1, - kOpnoFieldNumber = 2, - kOpfuncidFieldNumber = 3, - kOpresulttypeFieldNumber = 4, - kOpretsetFieldNumber = 5, - kOpcollidFieldNumber = 6, - kInputcollidFieldNumber = 7, - kLocationFieldNumber = 9, + kDefnamesFieldNumber = 1, + kStxstattargetFieldNumber = 2, + kMissingOkFieldNumber = 3, }; - // repeated .pg_query.Node args = 8 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; - - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - - // uint32 opno = 2 [json_name = "opno"]; - void clear_opno(); - uint32_t opno() const; - void set_opno(uint32_t value); + // repeated .pg_query.Node defnames = 1 [json_name = "defnames"]; + int defnames_size() const; private: - uint32_t _internal_opno() const; - void _internal_set_opno(uint32_t value); - public: + int _internal_defnames_size() const; - // uint32 opfuncid = 3 [json_name = "opfuncid"]; - void clear_opfuncid(); - uint32_t opfuncid() const; - void set_opfuncid(uint32_t value); - private: - uint32_t _internal_opfuncid() const; - void _internal_set_opfuncid(uint32_t value); public: - - // uint32 opresulttype = 4 [json_name = "opresulttype"]; - void clear_opresulttype(); - uint32_t opresulttype() const; - void set_opresulttype(uint32_t value); + void clear_defnames() ; + ::pg_query::Node* mutable_defnames(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_defnames(); private: - uint32_t _internal_opresulttype() const; - void _internal_set_opresulttype(uint32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_defnames() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_defnames(); public: + const ::pg_query::Node& defnames(int index) const; + ::pg_query::Node* add_defnames(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + defnames() const; + // int32 stxstattarget = 2 [json_name = "stxstattarget"]; + void clear_stxstattarget() ; + ::int32_t stxstattarget() const; + void set_stxstattarget(::int32_t value); - // bool opretset = 5 [json_name = "opretset"]; - void clear_opretset(); - bool opretset() const; - void set_opretset(bool value); private: - bool _internal_opretset() const; - void _internal_set_opretset(bool value); - public: + ::int32_t _internal_stxstattarget() const; + void _internal_set_stxstattarget(::int32_t value); - // uint32 opcollid = 6 [json_name = "opcollid"]; - void clear_opcollid(); - uint32_t opcollid() const; - void set_opcollid(uint32_t value); - private: - uint32_t _internal_opcollid() const; - void _internal_set_opcollid(uint32_t value); public: + // bool missing_ok = 3 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // uint32 inputcollid = 7 [json_name = "inputcollid"]; - void clear_inputcollid(); - uint32_t inputcollid() const; - void set_inputcollid(uint32_t value); private: - uint32_t _internal_inputcollid() const; - void _internal_set_inputcollid(uint32_t value); - public: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); - // int32 location = 9 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.DistinctExpr) + // @@protoc_insertion_point(class_scope:pg_query.AlterStatsStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::pg_query::Node* xpr_; - uint32_t opno_; - uint32_t opfuncid_; - uint32_t opresulttype_; - bool opretset_; - uint32_t opcollid_; - uint32_t inputcollid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > defnames_; + ::int32_t stxstattarget_; + bool missing_ok_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class NullIfExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.NullIfExpr) */ { +class AlterSubscriptionStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterSubscriptionStmt) */ { public: - inline NullIfExpr() : NullIfExpr(nullptr) {} - ~NullIfExpr() override; - explicit PROTOBUF_CONSTEXPR NullIfExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterSubscriptionStmt() : AlterSubscriptionStmt(nullptr) {} + ~AlterSubscriptionStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterSubscriptionStmt(::google::protobuf::internal::ConstantInitialized); - NullIfExpr(const NullIfExpr& from); - NullIfExpr(NullIfExpr&& from) noexcept - : NullIfExpr() { + inline AlterSubscriptionStmt(const AlterSubscriptionStmt& from) + : AlterSubscriptionStmt(nullptr, from) {} + AlterSubscriptionStmt(AlterSubscriptionStmt&& from) noexcept + : AlterSubscriptionStmt() { *this = ::std::move(from); } - inline NullIfExpr& operator=(const NullIfExpr& from) { + inline AlterSubscriptionStmt& operator=(const AlterSubscriptionStmt& from) { CopyFrom(from); return *this; } - inline NullIfExpr& operator=(NullIfExpr&& from) noexcept { + inline AlterSubscriptionStmt& operator=(AlterSubscriptionStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -14124,251 +17482,248 @@ class NullIfExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const NullIfExpr& default_instance() { + static const AlterSubscriptionStmt& default_instance() { return *internal_default_instance(); } - static inline const NullIfExpr* internal_default_instance() { - return reinterpret_cast( - &_NullIfExpr_default_instance_); + static inline const AlterSubscriptionStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterSubscriptionStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 25; + 253; - friend void swap(NullIfExpr& a, NullIfExpr& b) { + friend void swap(AlterSubscriptionStmt& a, AlterSubscriptionStmt& b) { a.Swap(&b); } - inline void Swap(NullIfExpr* other) { + inline void Swap(AlterSubscriptionStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(NullIfExpr* other) { + void UnsafeArenaSwap(AlterSubscriptionStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - NullIfExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterSubscriptionStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const NullIfExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const NullIfExpr& from) { - NullIfExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterSubscriptionStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterSubscriptionStmt& from) { + AlterSubscriptionStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(NullIfExpr* other); + void InternalSwap(AlterSubscriptionStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.NullIfExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterSubscriptionStmt"; } protected: - explicit NullIfExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterSubscriptionStmt(::google::protobuf::Arena* arena); + AlterSubscriptionStmt(::google::protobuf::Arena* arena, const AlterSubscriptionStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 8, - kXprFieldNumber = 1, - kOpnoFieldNumber = 2, - kOpfuncidFieldNumber = 3, - kOpresulttypeFieldNumber = 4, - kOpretsetFieldNumber = 5, - kOpcollidFieldNumber = 6, - kInputcollidFieldNumber = 7, - kLocationFieldNumber = 9, + kPublicationFieldNumber = 4, + kOptionsFieldNumber = 5, + kSubnameFieldNumber = 2, + kConninfoFieldNumber = 3, + kKindFieldNumber = 1, }; - // repeated .pg_query.Node args = 8 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); + // repeated .pg_query.Node publication = 4 [json_name = "publication"]; + int publication_size() const; private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + int _internal_publication_size() const; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void clear_publication() ; + ::pg_query::Node* mutable_publication(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_publication(); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_publication() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_publication(); public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - - // uint32 opno = 2 [json_name = "opno"]; - void clear_opno(); - uint32_t opno() const; - void set_opno(uint32_t value); + const ::pg_query::Node& publication(int index) const; + ::pg_query::Node* add_publication(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + publication() const; + // repeated .pg_query.Node options = 5 [json_name = "options"]; + int options_size() const; private: - uint32_t _internal_opno() const; - void _internal_set_opno(uint32_t value); - public: + int _internal_options_size() const; - // uint32 opfuncid = 3 [json_name = "opfuncid"]; - void clear_opfuncid(); - uint32_t opfuncid() const; - void set_opfuncid(uint32_t value); - private: - uint32_t _internal_opfuncid() const; - void _internal_set_opfuncid(uint32_t value); public: - - // uint32 opresulttype = 4 [json_name = "opresulttype"]; - void clear_opresulttype(); - uint32_t opresulttype() const; - void set_opresulttype(uint32_t value); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - uint32_t _internal_opresulttype() const; - void _internal_set_opresulttype(uint32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string subname = 2 [json_name = "subname"]; + void clear_subname() ; + const std::string& subname() const; + template + void set_subname(Arg_&& arg, Args_... args); + std::string* mutable_subname(); + PROTOBUF_NODISCARD std::string* release_subname(); + void set_allocated_subname(std::string* value); - // bool opretset = 5 [json_name = "opretset"]; - void clear_opretset(); - bool opretset() const; - void set_opretset(bool value); private: - bool _internal_opretset() const; - void _internal_set_opretset(bool value); - public: + const std::string& _internal_subname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_subname( + const std::string& value); + std::string* _internal_mutable_subname(); - // uint32 opcollid = 6 [json_name = "opcollid"]; - void clear_opcollid(); - uint32_t opcollid() const; - void set_opcollid(uint32_t value); - private: - uint32_t _internal_opcollid() const; - void _internal_set_opcollid(uint32_t value); public: + // string conninfo = 3 [json_name = "conninfo"]; + void clear_conninfo() ; + const std::string& conninfo() const; + template + void set_conninfo(Arg_&& arg, Args_... args); + std::string* mutable_conninfo(); + PROTOBUF_NODISCARD std::string* release_conninfo(); + void set_allocated_conninfo(std::string* value); - // uint32 inputcollid = 7 [json_name = "inputcollid"]; - void clear_inputcollid(); - uint32_t inputcollid() const; - void set_inputcollid(uint32_t value); private: - uint32_t _internal_inputcollid() const; - void _internal_set_inputcollid(uint32_t value); + const std::string& _internal_conninfo() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_conninfo( + const std::string& value); + std::string* _internal_mutable_conninfo(); + public: + // .pg_query.AlterSubscriptionType kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::AlterSubscriptionType kind() const; + void set_kind(::pg_query::AlterSubscriptionType value); - // int32 location = 9 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::pg_query::AlterSubscriptionType _internal_kind() const; + void _internal_set_kind(::pg_query::AlterSubscriptionType value); - // @@protoc_insertion_point(class_scope:pg_query.NullIfExpr) + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterSubscriptionStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 54, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::pg_query::Node* xpr_; - uint32_t opno_; - uint32_t opfuncid_; - uint32_t opresulttype_; - bool opretset_; - uint32_t opcollid_; - uint32_t inputcollid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > publication_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr subname_; + ::google::protobuf::internal::ArenaStringPtr conninfo_; + int kind_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ScalarArrayOpExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ScalarArrayOpExpr) */ { +class AlterSystemStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterSystemStmt) */ { public: - inline ScalarArrayOpExpr() : ScalarArrayOpExpr(nullptr) {} - ~ScalarArrayOpExpr() override; - explicit PROTOBUF_CONSTEXPR ScalarArrayOpExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterSystemStmt() : AlterSystemStmt(nullptr) {} + ~AlterSystemStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterSystemStmt(::google::protobuf::internal::ConstantInitialized); - ScalarArrayOpExpr(const ScalarArrayOpExpr& from); - ScalarArrayOpExpr(ScalarArrayOpExpr&& from) noexcept - : ScalarArrayOpExpr() { + inline AlterSystemStmt(const AlterSystemStmt& from) + : AlterSystemStmt(nullptr, from) {} + AlterSystemStmt(AlterSystemStmt&& from) noexcept + : AlterSystemStmt() { *this = ::std::move(from); } - inline ScalarArrayOpExpr& operator=(const ScalarArrayOpExpr& from) { + inline AlterSystemStmt& operator=(const AlterSystemStmt& from) { CopyFrom(from); return *this; } - inline ScalarArrayOpExpr& operator=(ScalarArrayOpExpr&& from) noexcept { + inline AlterSystemStmt& operator=(AlterSystemStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -14378,251 +17733,178 @@ class ScalarArrayOpExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ScalarArrayOpExpr& default_instance() { + static const AlterSystemStmt& default_instance() { return *internal_default_instance(); } - static inline const ScalarArrayOpExpr* internal_default_instance() { - return reinterpret_cast( - &_ScalarArrayOpExpr_default_instance_); + static inline const AlterSystemStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterSystemStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 26; + 226; - friend void swap(ScalarArrayOpExpr& a, ScalarArrayOpExpr& b) { + friend void swap(AlterSystemStmt& a, AlterSystemStmt& b) { a.Swap(&b); } - inline void Swap(ScalarArrayOpExpr* other) { + inline void Swap(AlterSystemStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ScalarArrayOpExpr* other) { + void UnsafeArenaSwap(AlterSystemStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ScalarArrayOpExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterSystemStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ScalarArrayOpExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ScalarArrayOpExpr& from) { - ScalarArrayOpExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterSystemStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterSystemStmt& from) { + AlterSystemStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ScalarArrayOpExpr* other); + void InternalSwap(AlterSystemStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ScalarArrayOpExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterSystemStmt"; } protected: - explicit ScalarArrayOpExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterSystemStmt(::google::protobuf::Arena* arena); + AlterSystemStmt(::google::protobuf::Arena* arena, const AlterSystemStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 8, - kXprFieldNumber = 1, - kOpnoFieldNumber = 2, - kOpfuncidFieldNumber = 3, - kHashfuncidFieldNumber = 4, - kNegfuncidFieldNumber = 5, - kUseOrFieldNumber = 6, - kInputcollidFieldNumber = 7, - kLocationFieldNumber = 9, + kSetstmtFieldNumber = 1, }; - // repeated .pg_query.Node args = 8 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; - - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - - // uint32 opno = 2 [json_name = "opno"]; - void clear_opno(); - uint32_t opno() const; - void set_opno(uint32_t value); - private: - uint32_t _internal_opno() const; - void _internal_set_opno(uint32_t value); - public: - - // uint32 opfuncid = 3 [json_name = "opfuncid"]; - void clear_opfuncid(); - uint32_t opfuncid() const; - void set_opfuncid(uint32_t value); - private: - uint32_t _internal_opfuncid() const; - void _internal_set_opfuncid(uint32_t value); - public: - - // uint32 hashfuncid = 4 [json_name = "hashfuncid"]; - void clear_hashfuncid(); - uint32_t hashfuncid() const; - void set_hashfuncid(uint32_t value); - private: - uint32_t _internal_hashfuncid() const; - void _internal_set_hashfuncid(uint32_t value); - public: - - // uint32 negfuncid = 5 [json_name = "negfuncid"]; - void clear_negfuncid(); - uint32_t negfuncid() const; - void set_negfuncid(uint32_t value); - private: - uint32_t _internal_negfuncid() const; - void _internal_set_negfuncid(uint32_t value); - public: - - // bool use_or = 6 [json_name = "useOr"]; - void clear_use_or(); - bool use_or() const; - void set_use_or(bool value); - private: - bool _internal_use_or() const; - void _internal_set_use_or(bool value); - public: + // .pg_query.VariableSetStmt setstmt = 1 [json_name = "setstmt"]; + bool has_setstmt() const; + void clear_setstmt() ; + const ::pg_query::VariableSetStmt& setstmt() const; + PROTOBUF_NODISCARD ::pg_query::VariableSetStmt* release_setstmt(); + ::pg_query::VariableSetStmt* mutable_setstmt(); + void set_allocated_setstmt(::pg_query::VariableSetStmt* value); + void unsafe_arena_set_allocated_setstmt(::pg_query::VariableSetStmt* value); + ::pg_query::VariableSetStmt* unsafe_arena_release_setstmt(); - // uint32 inputcollid = 7 [json_name = "inputcollid"]; - void clear_inputcollid(); - uint32_t inputcollid() const; - void set_inputcollid(uint32_t value); private: - uint32_t _internal_inputcollid() const; - void _internal_set_inputcollid(uint32_t value); - public: + const ::pg_query::VariableSetStmt& _internal_setstmt() const; + ::pg_query::VariableSetStmt* _internal_mutable_setstmt(); - // int32 location = 9 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.ScalarArrayOpExpr) + // @@protoc_insertion_point(class_scope:pg_query.AlterSystemStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::pg_query::Node* xpr_; - uint32_t opno_; - uint32_t opfuncid_; - uint32_t hashfuncid_; - uint32_t negfuncid_; - bool use_or_; - uint32_t inputcollid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::VariableSetStmt* setstmt_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class BoolExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.BoolExpr) */ { +class AlterTSConfigurationStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTSConfigurationStmt) */ { public: - inline BoolExpr() : BoolExpr(nullptr) {} - ~BoolExpr() override; - explicit PROTOBUF_CONSTEXPR BoolExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterTSConfigurationStmt() : AlterTSConfigurationStmt(nullptr) {} + ~AlterTSConfigurationStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterTSConfigurationStmt(::google::protobuf::internal::ConstantInitialized); - BoolExpr(const BoolExpr& from); - BoolExpr(BoolExpr&& from) noexcept - : BoolExpr() { + inline AlterTSConfigurationStmt(const AlterTSConfigurationStmt& from) + : AlterTSConfigurationStmt(nullptr, from) {} + AlterTSConfigurationStmt(AlterTSConfigurationStmt&& from) noexcept + : AlterTSConfigurationStmt() { *this = ::std::move(from); } - inline BoolExpr& operator=(const BoolExpr& from) { + inline AlterTSConfigurationStmt& operator=(const AlterTSConfigurationStmt& from) { CopyFrom(from); return *this; } - inline BoolExpr& operator=(BoolExpr&& from) noexcept { + inline AlterTSConfigurationStmt& operator=(AlterTSConfigurationStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -14632,196 +17914,268 @@ class BoolExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const BoolExpr& default_instance() { + static const AlterTSConfigurationStmt& default_instance() { return *internal_default_instance(); } - static inline const BoolExpr* internal_default_instance() { - return reinterpret_cast( - &_BoolExpr_default_instance_); + static inline const AlterTSConfigurationStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterTSConfigurationStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 27; + 247; - friend void swap(BoolExpr& a, BoolExpr& b) { + friend void swap(AlterTSConfigurationStmt& a, AlterTSConfigurationStmt& b) { a.Swap(&b); } - inline void Swap(BoolExpr* other) { + inline void Swap(AlterTSConfigurationStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(BoolExpr* other) { + void UnsafeArenaSwap(AlterTSConfigurationStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - BoolExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterTSConfigurationStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const BoolExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const BoolExpr& from) { - BoolExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterTSConfigurationStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterTSConfigurationStmt& from) { + AlterTSConfigurationStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(BoolExpr* other); + void InternalSwap(AlterTSConfigurationStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.BoolExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterTSConfigurationStmt"; } protected: - explicit BoolExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterTSConfigurationStmt(::google::protobuf::Arena* arena); + AlterTSConfigurationStmt(::google::protobuf::Arena* arena, const AlterTSConfigurationStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 3, - kXprFieldNumber = 1, - kBoolopFieldNumber = 2, - kLocationFieldNumber = 4, + kCfgnameFieldNumber = 2, + kTokentypeFieldNumber = 3, + kDictsFieldNumber = 4, + kKindFieldNumber = 1, + kOverrideFieldNumber = 5, + kReplaceFieldNumber = 6, + kMissingOkFieldNumber = 7, }; - // repeated .pg_query.Node args = 3 [json_name = "args"]; - int args_size() const; + // repeated .pg_query.Node cfgname = 2 [json_name = "cfgname"]; + int cfgname_size() const; private: - int _internal_args_size() const; + int _internal_cfgname_size() const; + public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); + void clear_cfgname() ; + ::pg_query::Node* mutable_cfgname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_cfgname(); private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_cfgname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_cfgname(); public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + const ::pg_query::Node& cfgname(int index) const; + ::pg_query::Node* add_cfgname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + cfgname() const; + // repeated .pg_query.Node tokentype = 3 [json_name = "tokentype"]; + int tokentype_size() const; + private: + int _internal_tokentype_size() const; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + public: + void clear_tokentype() ; + ::pg_query::Node* mutable_tokentype(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_tokentype(); private: - bool _internal_has_xpr() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_tokentype() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_tokentype(); public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + const ::pg_query::Node& tokentype(int index) const; + ::pg_query::Node* add_tokentype(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + tokentype() const; + // repeated .pg_query.Node dicts = 4 [json_name = "dicts"]; + int dicts_size() const; private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + int _internal_dicts_size() const; + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + void clear_dicts() ; + ::pg_query::Node* mutable_dicts(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_dicts(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_dicts() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_dicts(); + public: + const ::pg_query::Node& dicts(int index) const; + ::pg_query::Node* add_dicts(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + dicts() const; + // .pg_query.AlterTSConfigType kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::AlterTSConfigType kind() const; + void set_kind(::pg_query::AlterTSConfigType value); - // .pg_query.BoolExprType boolop = 2 [json_name = "boolop"]; - void clear_boolop(); - ::pg_query::BoolExprType boolop() const; - void set_boolop(::pg_query::BoolExprType value); private: - ::pg_query::BoolExprType _internal_boolop() const; - void _internal_set_boolop(::pg_query::BoolExprType value); + ::pg_query::AlterTSConfigType _internal_kind() const; + void _internal_set_kind(::pg_query::AlterTSConfigType value); + public: + // bool override = 5 [json_name = "override"]; + void clear_override() ; + bool override() const; + void set_override(bool value); - // int32 location = 4 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + bool _internal_override() const; + void _internal_set_override(bool value); + public: + // bool replace = 6 [json_name = "replace"]; + void clear_replace() ; + bool replace() const; + void set_replace(bool value); - // @@protoc_insertion_point(class_scope:pg_query.BoolExpr) + private: + bool _internal_replace() const; + void _internal_set_replace(bool value); + + public: + // bool missing_ok = 7 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); + + private: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterTSConfigurationStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::pg_query::Node* xpr_; - int boolop_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > cfgname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > tokentype_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > dicts_; + int kind_; + bool override_; + bool replace_; + bool missing_ok_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class SubLink final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SubLink) */ { +class AlterTSDictionaryStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTSDictionaryStmt) */ { public: - inline SubLink() : SubLink(nullptr) {} - ~SubLink() override; - explicit PROTOBUF_CONSTEXPR SubLink(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterTSDictionaryStmt() : AlterTSDictionaryStmt(nullptr) {} + ~AlterTSDictionaryStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterTSDictionaryStmt(::google::protobuf::internal::ConstantInitialized); - SubLink(const SubLink& from); - SubLink(SubLink&& from) noexcept - : SubLink() { + inline AlterTSDictionaryStmt(const AlterTSDictionaryStmt& from) + : AlterTSDictionaryStmt(nullptr, from) {} + AlterTSDictionaryStmt(AlterTSDictionaryStmt&& from) noexcept + : AlterTSDictionaryStmt() { *this = ::std::move(from); } - inline SubLink& operator=(const SubLink& from) { + inline AlterTSDictionaryStmt& operator=(const AlterTSDictionaryStmt& from) { CopyFrom(from); return *this; } - inline SubLink& operator=(SubLink&& from) noexcept { + inline AlterTSDictionaryStmt& operator=(AlterTSDictionaryStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -14831,247 +18185,200 @@ class SubLink final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SubLink& default_instance() { + static const AlterTSDictionaryStmt& default_instance() { return *internal_default_instance(); } - static inline const SubLink* internal_default_instance() { - return reinterpret_cast( - &_SubLink_default_instance_); + static inline const AlterTSDictionaryStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterTSDictionaryStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 28; + 246; - friend void swap(SubLink& a, SubLink& b) { + friend void swap(AlterTSDictionaryStmt& a, AlterTSDictionaryStmt& b) { a.Swap(&b); } - inline void Swap(SubLink* other) { + inline void Swap(AlterTSDictionaryStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SubLink* other) { + void UnsafeArenaSwap(AlterTSDictionaryStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - SubLink* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterTSDictionaryStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SubLink& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SubLink& from) { - SubLink::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterTSDictionaryStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterTSDictionaryStmt& from) { + AlterTSDictionaryStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SubLink* other); + void InternalSwap(AlterTSDictionaryStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SubLink"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterTSDictionaryStmt"; } protected: - explicit SubLink(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterTSDictionaryStmt(::google::protobuf::Arena* arena); + AlterTSDictionaryStmt(::google::protobuf::Arena* arena, const AlterTSDictionaryStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOperNameFieldNumber = 5, - kXprFieldNumber = 1, - kTestexprFieldNumber = 4, - kSubselectFieldNumber = 6, - kSubLinkTypeFieldNumber = 2, - kSubLinkIdFieldNumber = 3, - kLocationFieldNumber = 7, + kDictnameFieldNumber = 1, + kOptionsFieldNumber = 2, }; - // repeated .pg_query.Node oper_name = 5 [json_name = "operName"]; - int oper_name_size() const; - private: - int _internal_oper_name_size() const; - public: - void clear_oper_name(); - ::pg_query::Node* mutable_oper_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_oper_name(); - private: - const ::pg_query::Node& _internal_oper_name(int index) const; - ::pg_query::Node* _internal_add_oper_name(); - public: - const ::pg_query::Node& oper_name(int index) const; - ::pg_query::Node* add_oper_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - oper_name() const; - - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - - // .pg_query.Node testexpr = 4 [json_name = "testexpr"]; - bool has_testexpr() const; - private: - bool _internal_has_testexpr() const; - public: - void clear_testexpr(); - const ::pg_query::Node& testexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_testexpr(); - ::pg_query::Node* mutable_testexpr(); - void set_allocated_testexpr(::pg_query::Node* testexpr); + // repeated .pg_query.Node dictname = 1 [json_name = "dictname"]; + int dictname_size() const; private: - const ::pg_query::Node& _internal_testexpr() const; - ::pg_query::Node* _internal_mutable_testexpr(); - public: - void unsafe_arena_set_allocated_testexpr( - ::pg_query::Node* testexpr); - ::pg_query::Node* unsafe_arena_release_testexpr(); + int _internal_dictname_size() const; - // .pg_query.Node subselect = 6 [json_name = "subselect"]; - bool has_subselect() const; - private: - bool _internal_has_subselect() const; public: - void clear_subselect(); - const ::pg_query::Node& subselect() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_subselect(); - ::pg_query::Node* mutable_subselect(); - void set_allocated_subselect(::pg_query::Node* subselect); + void clear_dictname() ; + ::pg_query::Node* mutable_dictname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_dictname(); private: - const ::pg_query::Node& _internal_subselect() const; - ::pg_query::Node* _internal_mutable_subselect(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_dictname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_dictname(); public: - void unsafe_arena_set_allocated_subselect( - ::pg_query::Node* subselect); - ::pg_query::Node* unsafe_arena_release_subselect(); - - // .pg_query.SubLinkType sub_link_type = 2 [json_name = "subLinkType"]; - void clear_sub_link_type(); - ::pg_query::SubLinkType sub_link_type() const; - void set_sub_link_type(::pg_query::SubLinkType value); + const ::pg_query::Node& dictname(int index) const; + ::pg_query::Node* add_dictname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + dictname() const; + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - ::pg_query::SubLinkType _internal_sub_link_type() const; - void _internal_set_sub_link_type(::pg_query::SubLinkType value); - public: + int _internal_options_size() const; - // int32 sub_link_id = 3 [json_name = "subLinkId"]; - void clear_sub_link_id(); - int32_t sub_link_id() const; - void set_sub_link_id(int32_t value); - private: - int32_t _internal_sub_link_id() const; - void _internal_set_sub_link_id(int32_t value); public: - - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - - // @@protoc_insertion_point(class_scope:pg_query.SubLink) + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // @@protoc_insertion_point(class_scope:pg_query.AlterTSDictionaryStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > oper_name_; - ::pg_query::Node* xpr_; - ::pg_query::Node* testexpr_; - ::pg_query::Node* subselect_; - int sub_link_type_; - int32_t sub_link_id_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > dictname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class SubPlan final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SubPlan) */ { +class AlterTableCmd final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTableCmd) */ { public: - inline SubPlan() : SubPlan(nullptr) {} - ~SubPlan() override; - explicit PROTOBUF_CONSTEXPR SubPlan(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterTableCmd() : AlterTableCmd(nullptr) {} + ~AlterTableCmd() override; + template + explicit PROTOBUF_CONSTEXPR AlterTableCmd(::google::protobuf::internal::ConstantInitialized); - SubPlan(const SubPlan& from); - SubPlan(SubPlan&& from) noexcept - : SubPlan() { + inline AlterTableCmd(const AlterTableCmd& from) + : AlterTableCmd(nullptr, from) {} + AlterTableCmd(AlterTableCmd&& from) noexcept + : AlterTableCmd() { *this = ::std::move(from); } - inline SubPlan& operator=(const SubPlan& from) { + inline AlterTableCmd& operator=(const AlterTableCmd& from) { CopyFrom(from); return *this; } - inline SubPlan& operator=(SubPlan&& from) noexcept { + inline AlterTableCmd& operator=(AlterTableCmd&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -15081,380 +18388,273 @@ class SubPlan final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SubPlan& default_instance() { + static const AlterTableCmd& default_instance() { return *internal_default_instance(); } - static inline const SubPlan* internal_default_instance() { - return reinterpret_cast( - &_SubPlan_default_instance_); + static inline const AlterTableCmd* internal_default_instance() { + return reinterpret_cast( + &_AlterTableCmd_default_instance_); } static constexpr int kIndexInFileMessages = - 29; + 138; - friend void swap(SubPlan& a, SubPlan& b) { + friend void swap(AlterTableCmd& a, AlterTableCmd& b) { a.Swap(&b); } - inline void Swap(SubPlan* other) { + inline void Swap(AlterTableCmd* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SubPlan* other) { + void UnsafeArenaSwap(AlterTableCmd* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - SubPlan* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterTableCmd* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SubPlan& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SubPlan& from) { - SubPlan::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterTableCmd& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterTableCmd& from) { + AlterTableCmd::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SubPlan* other); + void InternalSwap(AlterTableCmd* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SubPlan"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterTableCmd"; } protected: - explicit SubPlan(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterTableCmd(::google::protobuf::Arena* arena); + AlterTableCmd(::google::protobuf::Arena* arena, const AlterTableCmd& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kParamIdsFieldNumber = 4, - kSetParamFieldNumber = 13, - kParParamFieldNumber = 14, - kArgsFieldNumber = 15, - kPlanNameFieldNumber = 6, - kXprFieldNumber = 1, - kTestexprFieldNumber = 3, - kSubLinkTypeFieldNumber = 2, - kPlanIdFieldNumber = 5, - kFirstColTypeFieldNumber = 7, - kFirstColTypmodFieldNumber = 8, - kFirstColCollationFieldNumber = 9, - kUseHashTableFieldNumber = 10, - kUnknownEqFalseFieldNumber = 11, - kParallelSafeFieldNumber = 12, - kStartupCostFieldNumber = 16, - kPerCallCostFieldNumber = 17, + kNameFieldNumber = 2, + kNewownerFieldNumber = 4, + kDefFieldNumber = 5, + kSubtypeFieldNumber = 1, + kNumFieldNumber = 3, + kBehaviorFieldNumber = 6, + kMissingOkFieldNumber = 7, + kRecurseFieldNumber = 8, }; - // repeated .pg_query.Node param_ids = 4 [json_name = "paramIds"]; - int param_ids_size() const; - private: - int _internal_param_ids_size() const; - public: - void clear_param_ids(); - ::pg_query::Node* mutable_param_ids(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_param_ids(); - private: - const ::pg_query::Node& _internal_param_ids(int index) const; - ::pg_query::Node* _internal_add_param_ids(); - public: - const ::pg_query::Node& param_ids(int index) const; - ::pg_query::Node* add_param_ids(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - param_ids() const; + // string name = 2 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // repeated .pg_query.Node set_param = 13 [json_name = "setParam"]; - int set_param_size() const; - private: - int _internal_set_param_size() const; - public: - void clear_set_param(); - ::pg_query::Node* mutable_set_param(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_set_param(); private: - const ::pg_query::Node& _internal_set_param(int index) const; - ::pg_query::Node* _internal_add_set_param(); - public: - const ::pg_query::Node& set_param(int index) const; - ::pg_query::Node* add_set_param(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - set_param() const; + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); - // repeated .pg_query.Node par_param = 14 [json_name = "parParam"]; - int par_param_size() const; - private: - int _internal_par_param_size() const; - public: - void clear_par_param(); - ::pg_query::Node* mutable_par_param(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_par_param(); - private: - const ::pg_query::Node& _internal_par_param(int index) const; - ::pg_query::Node* _internal_add_par_param(); public: - const ::pg_query::Node& par_param(int index) const; - ::pg_query::Node* add_par_param(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - par_param() const; + // .pg_query.RoleSpec newowner = 4 [json_name = "newowner"]; + bool has_newowner() const; + void clear_newowner() ; + const ::pg_query::RoleSpec& newowner() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_newowner(); + ::pg_query::RoleSpec* mutable_newowner(); + void set_allocated_newowner(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_newowner(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_newowner(); - // repeated .pg_query.Node args = 15 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + const ::pg_query::RoleSpec& _internal_newowner() const; + ::pg_query::RoleSpec* _internal_mutable_newowner(); - // string plan_name = 6 [json_name = "plan_name"]; - void clear_plan_name(); - const std::string& plan_name() const; - template - void set_plan_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_plan_name(); - PROTOBUF_NODISCARD std::string* release_plan_name(); - void set_allocated_plan_name(std::string* plan_name); - private: - const std::string& _internal_plan_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_plan_name(const std::string& value); - std::string* _internal_mutable_plan_name(); public: + // .pg_query.Node def = 5 [json_name = "def"]; + bool has_def() const; + void clear_def() ; + const ::pg_query::Node& def() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_def(); + ::pg_query::Node* mutable_def(); + void set_allocated_def(::pg_query::Node* value); + void unsafe_arena_set_allocated_def(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_def(); - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + const ::pg_query::Node& _internal_def() const; + ::pg_query::Node* _internal_mutable_def(); - // .pg_query.Node testexpr = 3 [json_name = "testexpr"]; - bool has_testexpr() const; - private: - bool _internal_has_testexpr() const; - public: - void clear_testexpr(); - const ::pg_query::Node& testexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_testexpr(); - ::pg_query::Node* mutable_testexpr(); - void set_allocated_testexpr(::pg_query::Node* testexpr); - private: - const ::pg_query::Node& _internal_testexpr() const; - ::pg_query::Node* _internal_mutable_testexpr(); public: - void unsafe_arena_set_allocated_testexpr( - ::pg_query::Node* testexpr); - ::pg_query::Node* unsafe_arena_release_testexpr(); + // .pg_query.AlterTableType subtype = 1 [json_name = "subtype"]; + void clear_subtype() ; + ::pg_query::AlterTableType subtype() const; + void set_subtype(::pg_query::AlterTableType value); - // .pg_query.SubLinkType sub_link_type = 2 [json_name = "subLinkType"]; - void clear_sub_link_type(); - ::pg_query::SubLinkType sub_link_type() const; - void set_sub_link_type(::pg_query::SubLinkType value); private: - ::pg_query::SubLinkType _internal_sub_link_type() const; - void _internal_set_sub_link_type(::pg_query::SubLinkType value); - public: + ::pg_query::AlterTableType _internal_subtype() const; + void _internal_set_subtype(::pg_query::AlterTableType value); - // int32 plan_id = 5 [json_name = "plan_id"]; - void clear_plan_id(); - int32_t plan_id() const; - void set_plan_id(int32_t value); - private: - int32_t _internal_plan_id() const; - void _internal_set_plan_id(int32_t value); public: + // int32 num = 3 [json_name = "num"]; + void clear_num() ; + ::int32_t num() const; + void set_num(::int32_t value); - // uint32 first_col_type = 7 [json_name = "firstColType"]; - void clear_first_col_type(); - uint32_t first_col_type() const; - void set_first_col_type(uint32_t value); private: - uint32_t _internal_first_col_type() const; - void _internal_set_first_col_type(uint32_t value); - public: + ::int32_t _internal_num() const; + void _internal_set_num(::int32_t value); - // int32 first_col_typmod = 8 [json_name = "firstColTypmod"]; - void clear_first_col_typmod(); - int32_t first_col_typmod() const; - void set_first_col_typmod(int32_t value); - private: - int32_t _internal_first_col_typmod() const; - void _internal_set_first_col_typmod(int32_t value); public: + // .pg_query.DropBehavior behavior = 6 [json_name = "behavior"]; + void clear_behavior() ; + ::pg_query::DropBehavior behavior() const; + void set_behavior(::pg_query::DropBehavior value); - // uint32 first_col_collation = 9 [json_name = "firstColCollation"]; - void clear_first_col_collation(); - uint32_t first_col_collation() const; - void set_first_col_collation(uint32_t value); private: - uint32_t _internal_first_col_collation() const; - void _internal_set_first_col_collation(uint32_t value); - public: + ::pg_query::DropBehavior _internal_behavior() const; + void _internal_set_behavior(::pg_query::DropBehavior value); - // bool use_hash_table = 10 [json_name = "useHashTable"]; - void clear_use_hash_table(); - bool use_hash_table() const; - void set_use_hash_table(bool value); - private: - bool _internal_use_hash_table() const; - void _internal_set_use_hash_table(bool value); public: + // bool missing_ok = 7 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // bool unknown_eq_false = 11 [json_name = "unknownEqFalse"]; - void clear_unknown_eq_false(); - bool unknown_eq_false() const; - void set_unknown_eq_false(bool value); private: - bool _internal_unknown_eq_false() const; - void _internal_set_unknown_eq_false(bool value); - public: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); - // bool parallel_safe = 12 [json_name = "parallel_safe"]; - void clear_parallel_safe(); - bool parallel_safe() const; - void set_parallel_safe(bool value); - private: - bool _internal_parallel_safe() const; - void _internal_set_parallel_safe(bool value); public: + // bool recurse = 8 [json_name = "recurse"]; + void clear_recurse() ; + bool recurse() const; + void set_recurse(bool value); - // double startup_cost = 16 [json_name = "startup_cost"]; - void clear_startup_cost(); - double startup_cost() const; - void set_startup_cost(double value); private: - double _internal_startup_cost() const; - void _internal_set_startup_cost(double value); - public: + bool _internal_recurse() const; + void _internal_set_recurse(bool value); - // double per_call_cost = 17 [json_name = "per_call_cost"]; - void clear_per_call_cost(); - double per_call_cost() const; - void set_per_call_cost(double value); - private: - double _internal_per_call_cost() const; - void _internal_set_per_call_cost(double value); public: - - // @@protoc_insertion_point(class_scope:pg_query.SubPlan) + // @@protoc_insertion_point(class_scope:pg_query.AlterTableCmd) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 2, + 43, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > param_ids_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > set_param_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > par_param_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr plan_name_; - ::pg_query::Node* xpr_; - ::pg_query::Node* testexpr_; - int sub_link_type_; - int32_t plan_id_; - uint32_t first_col_type_; - int32_t first_col_typmod_; - uint32_t first_col_collation_; - bool use_hash_table_; - bool unknown_eq_false_; - bool parallel_safe_; - double startup_cost_; - double per_call_cost_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::RoleSpec* newowner_; + ::pg_query::Node* def_; + int subtype_; + ::int32_t num_; + int behavior_; + bool missing_ok_; + bool recurse_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlternativeSubPlan final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlternativeSubPlan) */ { +class AlterTableMoveAllStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTableMoveAllStmt) */ { public: - inline AlternativeSubPlan() : AlternativeSubPlan(nullptr) {} - ~AlternativeSubPlan() override; - explicit PROTOBUF_CONSTEXPR AlternativeSubPlan(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterTableMoveAllStmt() : AlterTableMoveAllStmt(nullptr) {} + ~AlterTableMoveAllStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterTableMoveAllStmt(::google::protobuf::internal::ConstantInitialized); - AlternativeSubPlan(const AlternativeSubPlan& from); - AlternativeSubPlan(AlternativeSubPlan&& from) noexcept - : AlternativeSubPlan() { + inline AlterTableMoveAllStmt(const AlterTableMoveAllStmt& from) + : AlterTableMoveAllStmt(nullptr, from) {} + AlterTableMoveAllStmt(AlterTableMoveAllStmt&& from) noexcept + : AlterTableMoveAllStmt() { *this = ::std::move(from); } - inline AlternativeSubPlan& operator=(const AlternativeSubPlan& from) { + inline AlterTableMoveAllStmt& operator=(const AlterTableMoveAllStmt& from) { CopyFrom(from); return *this; } - inline AlternativeSubPlan& operator=(AlternativeSubPlan&& from) noexcept { + inline AlterTableMoveAllStmt& operator=(AlterTableMoveAllStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -15464,174 +18664,240 @@ class AlternativeSubPlan final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlternativeSubPlan& default_instance() { + static const AlterTableMoveAllStmt& default_instance() { return *internal_default_instance(); } - static inline const AlternativeSubPlan* internal_default_instance() { - return reinterpret_cast( - &_AlternativeSubPlan_default_instance_); + static inline const AlterTableMoveAllStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterTableMoveAllStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 30; + 154; - friend void swap(AlternativeSubPlan& a, AlternativeSubPlan& b) { + friend void swap(AlterTableMoveAllStmt& a, AlterTableMoveAllStmt& b) { a.Swap(&b); } - inline void Swap(AlternativeSubPlan* other) { + inline void Swap(AlterTableMoveAllStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlternativeSubPlan* other) { + void UnsafeArenaSwap(AlterTableMoveAllStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlternativeSubPlan* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterTableMoveAllStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlternativeSubPlan& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlternativeSubPlan& from) { - AlternativeSubPlan::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterTableMoveAllStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterTableMoveAllStmt& from) { + AlterTableMoveAllStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlternativeSubPlan* other); + void InternalSwap(AlterTableMoveAllStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlternativeSubPlan"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterTableMoveAllStmt"; } protected: - explicit AlternativeSubPlan(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterTableMoveAllStmt(::google::protobuf::Arena* arena); + AlterTableMoveAllStmt(::google::protobuf::Arena* arena, const AlterTableMoveAllStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kSubplansFieldNumber = 2, - kXprFieldNumber = 1, + kRolesFieldNumber = 3, + kOrigTablespacenameFieldNumber = 1, + kNewTablespacenameFieldNumber = 4, + kObjtypeFieldNumber = 2, + kNowaitFieldNumber = 5, }; - // repeated .pg_query.Node subplans = 2 [json_name = "subplans"]; - int subplans_size() const; + // repeated .pg_query.Node roles = 3 [json_name = "roles"]; + int roles_size() const; private: - int _internal_subplans_size() const; + int _internal_roles_size() const; + public: - void clear_subplans(); - ::pg_query::Node* mutable_subplans(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_subplans(); + void clear_roles() ; + ::pg_query::Node* mutable_roles(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_roles(); private: - const ::pg_query::Node& _internal_subplans(int index) const; - ::pg_query::Node* _internal_add_subplans(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_roles() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_roles(); public: - const ::pg_query::Node& subplans(int index) const; - ::pg_query::Node* add_subplans(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - subplans() const; + const ::pg_query::Node& roles(int index) const; + ::pg_query::Node* add_roles(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + roles() const; + // string orig_tablespacename = 1 [json_name = "orig_tablespacename"]; + void clear_orig_tablespacename() ; + const std::string& orig_tablespacename() const; + template + void set_orig_tablespacename(Arg_&& arg, Args_... args); + std::string* mutable_orig_tablespacename(); + PROTOBUF_NODISCARD std::string* release_orig_tablespacename(); + void set_allocated_orig_tablespacename(std::string* value); - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; private: - bool _internal_has_xpr() const; + const std::string& _internal_orig_tablespacename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_orig_tablespacename( + const std::string& value); + std::string* _internal_mutable_orig_tablespacename(); + public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + // string new_tablespacename = 4 [json_name = "new_tablespacename"]; + void clear_new_tablespacename() ; + const std::string& new_tablespacename() const; + template + void set_new_tablespacename(Arg_&& arg, Args_... args); + std::string* mutable_new_tablespacename(); + PROTOBUF_NODISCARD std::string* release_new_tablespacename(); + void set_allocated_new_tablespacename(std::string* value); + private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const std::string& _internal_new_tablespacename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_new_tablespacename( + const std::string& value); + std::string* _internal_mutable_new_tablespacename(); + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // .pg_query.ObjectType objtype = 2 [json_name = "objtype"]; + void clear_objtype() ; + ::pg_query::ObjectType objtype() const; + void set_objtype(::pg_query::ObjectType value); - // @@protoc_insertion_point(class_scope:pg_query.AlternativeSubPlan) + private: + ::pg_query::ObjectType _internal_objtype() const; + void _internal_set_objtype(::pg_query::ObjectType value); + + public: + // bool nowait = 5 [json_name = "nowait"]; + void clear_nowait() ; + bool nowait() const; + void set_nowait(bool value); + + private: + bool _internal_nowait() const; + void _internal_set_nowait(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterTableMoveAllStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 1, + 76, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > subplans_; - ::pg_query::Node* xpr_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > roles_; + ::google::protobuf::internal::ArenaStringPtr orig_tablespacename_; + ::google::protobuf::internal::ArenaStringPtr new_tablespacename_; + int objtype_; + bool nowait_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class FieldSelect final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.FieldSelect) */ { +class AlterTableSpaceOptionsStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTableSpaceOptionsStmt) */ { public: - inline FieldSelect() : FieldSelect(nullptr) {} - ~FieldSelect() override; - explicit PROTOBUF_CONSTEXPR FieldSelect(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterTableSpaceOptionsStmt() : AlterTableSpaceOptionsStmt(nullptr) {} + ~AlterTableSpaceOptionsStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterTableSpaceOptionsStmt(::google::protobuf::internal::ConstantInitialized); - FieldSelect(const FieldSelect& from); - FieldSelect(FieldSelect&& from) noexcept - : FieldSelect() { + inline AlterTableSpaceOptionsStmt(const AlterTableSpaceOptionsStmt& from) + : AlterTableSpaceOptionsStmt(nullptr, from) {} + AlterTableSpaceOptionsStmt(AlterTableSpaceOptionsStmt&& from) noexcept + : AlterTableSpaceOptionsStmt() { *this = ::std::move(from); } - inline FieldSelect& operator=(const FieldSelect& from) { + inline AlterTableSpaceOptionsStmt& operator=(const AlterTableSpaceOptionsStmt& from) { CopyFrom(from); return *this; } - inline FieldSelect& operator=(FieldSelect&& from) noexcept { + inline AlterTableSpaceOptionsStmt& operator=(AlterTableSpaceOptionsStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -15641,218 +18907,210 @@ class FieldSelect final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const FieldSelect& default_instance() { + static const AlterTableSpaceOptionsStmt& default_instance() { return *internal_default_instance(); } - static inline const FieldSelect* internal_default_instance() { - return reinterpret_cast( - &_FieldSelect_default_instance_); + static inline const AlterTableSpaceOptionsStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterTableSpaceOptionsStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 31; + 153; - friend void swap(FieldSelect& a, FieldSelect& b) { + friend void swap(AlterTableSpaceOptionsStmt& a, AlterTableSpaceOptionsStmt& b) { a.Swap(&b); } - inline void Swap(FieldSelect* other) { + inline void Swap(AlterTableSpaceOptionsStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(FieldSelect* other) { + void UnsafeArenaSwap(AlterTableSpaceOptionsStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - FieldSelect* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterTableSpaceOptionsStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FieldSelect& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const FieldSelect& from) { - FieldSelect::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterTableSpaceOptionsStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterTableSpaceOptionsStmt& from) { + AlterTableSpaceOptionsStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FieldSelect* other); + void InternalSwap(AlterTableSpaceOptionsStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.FieldSelect"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterTableSpaceOptionsStmt"; } protected: - explicit FieldSelect(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterTableSpaceOptionsStmt(::google::protobuf::Arena* arena); + AlterTableSpaceOptionsStmt(::google::protobuf::Arena* arena, const AlterTableSpaceOptionsStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kArgFieldNumber = 2, - kFieldnumFieldNumber = 3, - kResulttypeFieldNumber = 4, - kResulttypmodFieldNumber = 5, - kResultcollidFieldNumber = 6, + kOptionsFieldNumber = 2, + kTablespacenameFieldNumber = 1, + kIsResetFieldNumber = 3, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + int _internal_options_size() const; - // .pg_query.Node arg = 2 [json_name = "arg"]; - bool has_arg() const; - private: - bool _internal_has_arg() const; public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string tablespacename = 1 [json_name = "tablespacename"]; + void clear_tablespacename() ; + const std::string& tablespacename() const; + template + void set_tablespacename(Arg_&& arg, Args_... args); + std::string* mutable_tablespacename(); + PROTOBUF_NODISCARD std::string* release_tablespacename(); + void set_allocated_tablespacename(std::string* value); - // int32 fieldnum = 3 [json_name = "fieldnum"]; - void clear_fieldnum(); - int32_t fieldnum() const; - void set_fieldnum(int32_t value); private: - int32_t _internal_fieldnum() const; - void _internal_set_fieldnum(int32_t value); - public: + const std::string& _internal_tablespacename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_tablespacename( + const std::string& value); + std::string* _internal_mutable_tablespacename(); - // uint32 resulttype = 4 [json_name = "resulttype"]; - void clear_resulttype(); - uint32_t resulttype() const; - void set_resulttype(uint32_t value); - private: - uint32_t _internal_resulttype() const; - void _internal_set_resulttype(uint32_t value); public: + // bool is_reset = 3 [json_name = "isReset"]; + void clear_is_reset() ; + bool is_reset() const; + void set_is_reset(bool value); - // int32 resulttypmod = 5 [json_name = "resulttypmod"]; - void clear_resulttypmod(); - int32_t resulttypmod() const; - void set_resulttypmod(int32_t value); private: - int32_t _internal_resulttypmod() const; - void _internal_set_resulttypmod(int32_t value); - public: + bool _internal_is_reset() const; + void _internal_set_is_reset(bool value); - // uint32 resultcollid = 6 [json_name = "resultcollid"]; - void clear_resultcollid(); - uint32_t resultcollid() const; - void set_resultcollid(uint32_t value); - private: - uint32_t _internal_resultcollid() const; - void _internal_set_resultcollid(uint32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.FieldSelect) + // @@protoc_insertion_point(class_scope:pg_query.AlterTableSpaceOptionsStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 58, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - ::pg_query::Node* arg_; - int32_t fieldnum_; - uint32_t resulttype_; - int32_t resulttypmod_; - uint32_t resultcollid_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr tablespacename_; + bool is_reset_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class FieldStore final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.FieldStore) */ { +class AlterTableStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTableStmt) */ { public: - inline FieldStore() : FieldStore(nullptr) {} - ~FieldStore() override; - explicit PROTOBUF_CONSTEXPR FieldStore(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterTableStmt() : AlterTableStmt(nullptr) {} + ~AlterTableStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterTableStmt(::google::protobuf::internal::ConstantInitialized); - FieldStore(const FieldStore& from); - FieldStore(FieldStore&& from) noexcept - : FieldStore() { + inline AlterTableStmt(const AlterTableStmt& from) + : AlterTableStmt(nullptr, from) {} + AlterTableStmt(AlterTableStmt&& from) noexcept + : AlterTableStmt() { *this = ::std::move(from); } - inline FieldStore& operator=(const FieldStore& from) { + inline AlterTableStmt& operator=(const AlterTableStmt& from) { CopyFrom(from); return *this; } - inline FieldStore& operator=(FieldStore&& from) noexcept { + inline AlterTableStmt& operator=(AlterTableStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -15862,225 +19120,222 @@ class FieldStore final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const FieldStore& default_instance() { + static const AlterTableStmt& default_instance() { return *internal_default_instance(); } - static inline const FieldStore* internal_default_instance() { - return reinterpret_cast( - &_FieldStore_default_instance_); + static inline const AlterTableStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterTableStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 32; + 136; - friend void swap(FieldStore& a, FieldStore& b) { + friend void swap(AlterTableStmt& a, AlterTableStmt& b) { a.Swap(&b); } - inline void Swap(FieldStore* other) { + inline void Swap(AlterTableStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(FieldStore* other) { + void UnsafeArenaSwap(AlterTableStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - FieldStore* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterTableStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FieldStore& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const FieldStore& from) { - FieldStore::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterTableStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterTableStmt& from) { + AlterTableStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FieldStore* other); + void InternalSwap(AlterTableStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.FieldStore"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterTableStmt"; } protected: - explicit FieldStore(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterTableStmt(::google::protobuf::Arena* arena); + AlterTableStmt(::google::protobuf::Arena* arena, const AlterTableStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNewvalsFieldNumber = 3, - kFieldnumsFieldNumber = 4, - kXprFieldNumber = 1, - kArgFieldNumber = 2, - kResulttypeFieldNumber = 5, + kCmdsFieldNumber = 2, + kRelationFieldNumber = 1, + kObjtypeFieldNumber = 3, + kMissingOkFieldNumber = 4, }; - // repeated .pg_query.Node newvals = 3 [json_name = "newvals"]; - int newvals_size() const; - private: - int _internal_newvals_size() const; - public: - void clear_newvals(); - ::pg_query::Node* mutable_newvals(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_newvals(); + // repeated .pg_query.Node cmds = 2 [json_name = "cmds"]; + int cmds_size() const; private: - const ::pg_query::Node& _internal_newvals(int index) const; - ::pg_query::Node* _internal_add_newvals(); - public: - const ::pg_query::Node& newvals(int index) const; - ::pg_query::Node* add_newvals(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - newvals() const; + int _internal_cmds_size() const; - // repeated .pg_query.Node fieldnums = 4 [json_name = "fieldnums"]; - int fieldnums_size() const; - private: - int _internal_fieldnums_size() const; public: - void clear_fieldnums(); - ::pg_query::Node* mutable_fieldnums(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_fieldnums(); + void clear_cmds() ; + ::pg_query::Node* mutable_cmds(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_cmds(); private: - const ::pg_query::Node& _internal_fieldnums(int index) const; - ::pg_query::Node* _internal_add_fieldnums(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_cmds() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_cmds(); public: - const ::pg_query::Node& fieldnums(int index) const; - ::pg_query::Node* add_fieldnums(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - fieldnums() const; + const ::pg_query::Node& cmds(int index) const; + ::pg_query::Node* add_cmds(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + cmds() const; + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); - // .pg_query.Node arg = 2 [json_name = "arg"]; - bool has_arg() const; - private: - bool _internal_has_arg() const; public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + // .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; + void clear_objtype() ; + ::pg_query::ObjectType objtype() const; + void set_objtype(::pg_query::ObjectType value); + private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); + ::pg_query::ObjectType _internal_objtype() const; + void _internal_set_objtype(::pg_query::ObjectType value); + public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + // bool missing_ok = 4 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // uint32 resulttype = 5 [json_name = "resulttype"]; - void clear_resulttype(); - uint32_t resulttype() const; - void set_resulttype(uint32_t value); private: - uint32_t _internal_resulttype() const; - void _internal_set_resulttype(uint32_t value); - public: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); - // @@protoc_insertion_point(class_scope:pg_query.FieldStore) + public: + // @@protoc_insertion_point(class_scope:pg_query.AlterTableStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > newvals_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > fieldnums_; - ::pg_query::Node* xpr_; - ::pg_query::Node* arg_; - uint32_t resulttype_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > cmds_; + ::pg_query::RangeVar* relation_; + int objtype_; + bool missing_ok_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RelabelType final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RelabelType) */ { +class AlterTypeStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTypeStmt) */ { public: - inline RelabelType() : RelabelType(nullptr) {} - ~RelabelType() override; - explicit PROTOBUF_CONSTEXPR RelabelType(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterTypeStmt() : AlterTypeStmt(nullptr) {} + ~AlterTypeStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterTypeStmt(::google::protobuf::internal::ConstantInitialized); - RelabelType(const RelabelType& from); - RelabelType(RelabelType&& from) noexcept - : RelabelType() { + inline AlterTypeStmt(const AlterTypeStmt& from) + : AlterTypeStmt(nullptr, from) {} + AlterTypeStmt(AlterTypeStmt&& from) noexcept + : AlterTypeStmt() { *this = ::std::move(from); } - inline RelabelType& operator=(const RelabelType& from) { + inline AlterTypeStmt& operator=(const AlterTypeStmt& from) { CopyFrom(from); return *this; } - inline RelabelType& operator=(RelabelType&& from) noexcept { + inline AlterTypeStmt& operator=(AlterTypeStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -16090,229 +19345,200 @@ class RelabelType final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RelabelType& default_instance() { + static const AlterTypeStmt& default_instance() { return *internal_default_instance(); } - static inline const RelabelType* internal_default_instance() { - return reinterpret_cast( - &_RelabelType_default_instance_); + static inline const AlterTypeStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterTypeStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 33; + 209; - friend void swap(RelabelType& a, RelabelType& b) { + friend void swap(AlterTypeStmt& a, AlterTypeStmt& b) { a.Swap(&b); } - inline void Swap(RelabelType* other) { + inline void Swap(AlterTypeStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RelabelType* other) { + void UnsafeArenaSwap(AlterTypeStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RelabelType* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterTypeStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RelabelType& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RelabelType& from) { - RelabelType::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterTypeStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterTypeStmt& from) { + AlterTypeStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RelabelType* other); + void InternalSwap(AlterTypeStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RelabelType"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterTypeStmt"; } protected: - explicit RelabelType(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterTypeStmt(::google::protobuf::Arena* arena); + AlterTypeStmt(::google::protobuf::Arena* arena, const AlterTypeStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kArgFieldNumber = 2, - kResulttypeFieldNumber = 3, - kResulttypmodFieldNumber = 4, - kResultcollidFieldNumber = 5, - kRelabelformatFieldNumber = 6, - kLocationFieldNumber = 7, + kTypeNameFieldNumber = 1, + kOptionsFieldNumber = 2, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - - // .pg_query.Node arg = 2 [json_name = "arg"]; - bool has_arg() const; - private: - bool _internal_has_arg() const; - public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + // repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; + int type_name_size() const; private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); - public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + int _internal_type_name_size() const; - // uint32 resulttype = 3 [json_name = "resulttype"]; - void clear_resulttype(); - uint32_t resulttype() const; - void set_resulttype(uint32_t value); - private: - uint32_t _internal_resulttype() const; - void _internal_set_resulttype(uint32_t value); public: - - // int32 resulttypmod = 4 [json_name = "resulttypmod"]; - void clear_resulttypmod(); - int32_t resulttypmod() const; - void set_resulttypmod(int32_t value); + void clear_type_name() ; + ::pg_query::Node* mutable_type_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_type_name(); private: - int32_t _internal_resulttypmod() const; - void _internal_set_resulttypmod(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_type_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_type_name(); public: - - // uint32 resultcollid = 5 [json_name = "resultcollid"]; - void clear_resultcollid(); - uint32_t resultcollid() const; - void set_resultcollid(uint32_t value); + const ::pg_query::Node& type_name(int index) const; + ::pg_query::Node* add_type_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + type_name() const; + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - uint32_t _internal_resultcollid() const; - void _internal_set_resultcollid(uint32_t value); - public: + int _internal_options_size() const; - // .pg_query.CoercionForm relabelformat = 6 [json_name = "relabelformat"]; - void clear_relabelformat(); - ::pg_query::CoercionForm relabelformat() const; - void set_relabelformat(::pg_query::CoercionForm value); - private: - ::pg_query::CoercionForm _internal_relabelformat() const; - void _internal_set_relabelformat(::pg_query::CoercionForm value); public: - - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - - // @@protoc_insertion_point(class_scope:pg_query.RelabelType) + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // @@protoc_insertion_point(class_scope:pg_query.AlterTypeStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - ::pg_query::Node* arg_; - uint32_t resulttype_; - int32_t resulttypmod_; - uint32_t resultcollid_; - int relabelformat_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > type_name_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CoerceViaIO final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CoerceViaIO) */ { +class AlterUserMappingStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterUserMappingStmt) */ { public: - inline CoerceViaIO() : CoerceViaIO(nullptr) {} - ~CoerceViaIO() override; - explicit PROTOBUF_CONSTEXPR CoerceViaIO(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlterUserMappingStmt() : AlterUserMappingStmt(nullptr) {} + ~AlterUserMappingStmt() override; + template + explicit PROTOBUF_CONSTEXPR AlterUserMappingStmt(::google::protobuf::internal::ConstantInitialized); - CoerceViaIO(const CoerceViaIO& from); - CoerceViaIO(CoerceViaIO&& from) noexcept - : CoerceViaIO() { + inline AlterUserMappingStmt(const AlterUserMappingStmt& from) + : AlterUserMappingStmt(nullptr, from) {} + AlterUserMappingStmt(AlterUserMappingStmt&& from) noexcept + : AlterUserMappingStmt() { *this = ::std::move(from); } - inline CoerceViaIO& operator=(const CoerceViaIO& from) { + inline AlterUserMappingStmt& operator=(const AlterUserMappingStmt& from) { CopyFrom(from); return *this; } - inline CoerceViaIO& operator=(CoerceViaIO&& from) noexcept { + inline AlterUserMappingStmt& operator=(AlterUserMappingStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -16322,218 +19548,216 @@ class CoerceViaIO final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CoerceViaIO& default_instance() { + static const AlterUserMappingStmt& default_instance() { return *internal_default_instance(); } - static inline const CoerceViaIO* internal_default_instance() { - return reinterpret_cast( - &_CoerceViaIO_default_instance_); + static inline const AlterUserMappingStmt* internal_default_instance() { + return reinterpret_cast( + &_AlterUserMappingStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 34; + 164; - friend void swap(CoerceViaIO& a, CoerceViaIO& b) { + friend void swap(AlterUserMappingStmt& a, AlterUserMappingStmt& b) { a.Swap(&b); } - inline void Swap(CoerceViaIO* other) { + inline void Swap(AlterUserMappingStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CoerceViaIO* other) { + void UnsafeArenaSwap(AlterUserMappingStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CoerceViaIO* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlterUserMappingStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CoerceViaIO& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CoerceViaIO& from) { - CoerceViaIO::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlterUserMappingStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlterUserMappingStmt& from) { + AlterUserMappingStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CoerceViaIO* other); + void InternalSwap(AlterUserMappingStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CoerceViaIO"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlterUserMappingStmt"; } protected: - explicit CoerceViaIO(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlterUserMappingStmt(::google::protobuf::Arena* arena); + AlterUserMappingStmt(::google::protobuf::Arena* arena, const AlterUserMappingStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kArgFieldNumber = 2, - kResulttypeFieldNumber = 3, - kResultcollidFieldNumber = 4, - kCoerceformatFieldNumber = 5, - kLocationFieldNumber = 6, + kOptionsFieldNumber = 3, + kServernameFieldNumber = 2, + kUserFieldNumber = 1, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + // repeated .pg_query.Node options = 3 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + int _internal_options_size() const; - // .pg_query.Node arg = 2 [json_name = "arg"]; - bool has_arg() const; - private: - bool _internal_has_arg() const; public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string servername = 2 [json_name = "servername"]; + void clear_servername() ; + const std::string& servername() const; + template + void set_servername(Arg_&& arg, Args_... args); + std::string* mutable_servername(); + PROTOBUF_NODISCARD std::string* release_servername(); + void set_allocated_servername(std::string* value); - // uint32 resulttype = 3 [json_name = "resulttype"]; - void clear_resulttype(); - uint32_t resulttype() const; - void set_resulttype(uint32_t value); private: - uint32_t _internal_resulttype() const; - void _internal_set_resulttype(uint32_t value); - public: + const std::string& _internal_servername() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername( + const std::string& value); + std::string* _internal_mutable_servername(); - // uint32 resultcollid = 4 [json_name = "resultcollid"]; - void clear_resultcollid(); - uint32_t resultcollid() const; - void set_resultcollid(uint32_t value); - private: - uint32_t _internal_resultcollid() const; - void _internal_set_resultcollid(uint32_t value); public: + // .pg_query.RoleSpec user = 1 [json_name = "user"]; + bool has_user() const; + void clear_user() ; + const ::pg_query::RoleSpec& user() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_user(); + ::pg_query::RoleSpec* mutable_user(); + void set_allocated_user(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_user(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_user(); - // .pg_query.CoercionForm coerceformat = 5 [json_name = "coerceformat"]; - void clear_coerceformat(); - ::pg_query::CoercionForm coerceformat() const; - void set_coerceformat(::pg_query::CoercionForm value); private: - ::pg_query::CoercionForm _internal_coerceformat() const; - void _internal_set_coerceformat(::pg_query::CoercionForm value); - public: + const ::pg_query::RoleSpec& _internal_user() const; + ::pg_query::RoleSpec* _internal_mutable_user(); - // int32 location = 6 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.CoerceViaIO) + // @@protoc_insertion_point(class_scope:pg_query.AlterUserMappingStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 48, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - ::pg_query::Node* arg_; - uint32_t resulttype_; - uint32_t resultcollid_; - int coerceformat_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr servername_; + ::pg_query::RoleSpec* user_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ArrayCoerceExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ArrayCoerceExpr) */ { +class AlternativeSubPlan final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.AlternativeSubPlan) */ { public: - inline ArrayCoerceExpr() : ArrayCoerceExpr(nullptr) {} - ~ArrayCoerceExpr() override; - explicit PROTOBUF_CONSTEXPR ArrayCoerceExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline AlternativeSubPlan() : AlternativeSubPlan(nullptr) {} + ~AlternativeSubPlan() override; + template + explicit PROTOBUF_CONSTEXPR AlternativeSubPlan(::google::protobuf::internal::ConstantInitialized); - ArrayCoerceExpr(const ArrayCoerceExpr& from); - ArrayCoerceExpr(ArrayCoerceExpr&& from) noexcept - : ArrayCoerceExpr() { + inline AlternativeSubPlan(const AlternativeSubPlan& from) + : AlternativeSubPlan(nullptr, from) {} + AlternativeSubPlan(AlternativeSubPlan&& from) noexcept + : AlternativeSubPlan() { *this = ::std::move(from); } - inline ArrayCoerceExpr& operator=(const ArrayCoerceExpr& from) { + inline AlternativeSubPlan& operator=(const AlternativeSubPlan& from) { CopyFrom(from); return *this; } - inline ArrayCoerceExpr& operator=(ArrayCoerceExpr&& from) noexcept { + inline AlternativeSubPlan& operator=(AlternativeSubPlan&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -16543,249 +19767,198 @@ class ArrayCoerceExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ArrayCoerceExpr& default_instance() { + static const AlternativeSubPlan& default_instance() { return *internal_default_instance(); } - static inline const ArrayCoerceExpr* internal_default_instance() { - return reinterpret_cast( - &_ArrayCoerceExpr_default_instance_); + static inline const AlternativeSubPlan* internal_default_instance() { + return reinterpret_cast( + &_AlternativeSubPlan_default_instance_); } static constexpr int kIndexInFileMessages = - 35; + 31; - friend void swap(ArrayCoerceExpr& a, ArrayCoerceExpr& b) { + friend void swap(AlternativeSubPlan& a, AlternativeSubPlan& b) { a.Swap(&b); } - inline void Swap(ArrayCoerceExpr* other) { + inline void Swap(AlternativeSubPlan* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ArrayCoerceExpr* other) { + void UnsafeArenaSwap(AlternativeSubPlan* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ArrayCoerceExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + AlternativeSubPlan* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ArrayCoerceExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ArrayCoerceExpr& from) { - ArrayCoerceExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AlternativeSubPlan& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const AlternativeSubPlan& from) { + AlternativeSubPlan::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ArrayCoerceExpr* other); + void InternalSwap(AlternativeSubPlan* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ArrayCoerceExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.AlternativeSubPlan"; } protected: - explicit ArrayCoerceExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit AlternativeSubPlan(::google::protobuf::Arena* arena); + AlternativeSubPlan(::google::protobuf::Arena* arena, const AlternativeSubPlan& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { + kSubplansFieldNumber = 2, kXprFieldNumber = 1, - kArgFieldNumber = 2, - kElemexprFieldNumber = 3, - kResulttypeFieldNumber = 4, - kResulttypmodFieldNumber = 5, - kResultcollidFieldNumber = 6, - kCoerceformatFieldNumber = 7, - kLocationFieldNumber = 8, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + // repeated .pg_query.Node subplans = 2 [json_name = "subplans"]; + int subplans_size() const; + private: + int _internal_subplans_size() const; + + public: + void clear_subplans() ; + ::pg_query::Node* mutable_subplans(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_subplans(); private: - bool _internal_has_xpr() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_subplans() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_subplans(); public: - void clear_xpr(); + const ::pg_query::Node& subplans(int index) const; + ::pg_query::Node* add_subplans(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + subplans() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.Node arg = 2 [json_name = "arg"]; - bool has_arg() const; - private: - bool _internal_has_arg() const; - public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); - private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); - public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); - - // .pg_query.Node elemexpr = 3 [json_name = "elemexpr"]; - bool has_elemexpr() const; - private: - bool _internal_has_elemexpr() const; - public: - void clear_elemexpr(); - const ::pg_query::Node& elemexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_elemexpr(); - ::pg_query::Node* mutable_elemexpr(); - void set_allocated_elemexpr(::pg_query::Node* elemexpr); - private: - const ::pg_query::Node& _internal_elemexpr() const; - ::pg_query::Node* _internal_mutable_elemexpr(); - public: - void unsafe_arena_set_allocated_elemexpr( - ::pg_query::Node* elemexpr); - ::pg_query::Node* unsafe_arena_release_elemexpr(); - - // uint32 resulttype = 4 [json_name = "resulttype"]; - void clear_resulttype(); - uint32_t resulttype() const; - void set_resulttype(uint32_t value); - private: - uint32_t _internal_resulttype() const; - void _internal_set_resulttype(uint32_t value); - public: - - // int32 resulttypmod = 5 [json_name = "resulttypmod"]; - void clear_resulttypmod(); - int32_t resulttypmod() const; - void set_resulttypmod(int32_t value); - private: - int32_t _internal_resulttypmod() const; - void _internal_set_resulttypmod(int32_t value); - public: - - // uint32 resultcollid = 6 [json_name = "resultcollid"]; - void clear_resultcollid(); - uint32_t resultcollid() const; - void set_resultcollid(uint32_t value); - private: - uint32_t _internal_resultcollid() const; - void _internal_set_resultcollid(uint32_t value); - public: - - // .pg_query.CoercionForm coerceformat = 7 [json_name = "coerceformat"]; - void clear_coerceformat(); - ::pg_query::CoercionForm coerceformat() const; - void set_coerceformat(::pg_query::CoercionForm value); private: - ::pg_query::CoercionForm _internal_coerceformat() const; - void _internal_set_coerceformat(::pg_query::CoercionForm value); - public: + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - // int32 location = 8 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.ArrayCoerceExpr) + // @@protoc_insertion_point(class_scope:pg_query.AlternativeSubPlan) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > subplans_; ::pg_query::Node* xpr_; - ::pg_query::Node* arg_; - ::pg_query::Node* elemexpr_; - uint32_t resulttype_; - int32_t resulttypmod_; - uint32_t resultcollid_; - int coerceformat_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ConvertRowtypeExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ConvertRowtypeExpr) */ { +class ArrayCoerceExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ArrayCoerceExpr) */ { public: - inline ConvertRowtypeExpr() : ConvertRowtypeExpr(nullptr) {} - ~ConvertRowtypeExpr() override; - explicit PROTOBUF_CONSTEXPR ConvertRowtypeExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ArrayCoerceExpr() : ArrayCoerceExpr(nullptr) {} + ~ArrayCoerceExpr() override; + template + explicit PROTOBUF_CONSTEXPR ArrayCoerceExpr(::google::protobuf::internal::ConstantInitialized); - ConvertRowtypeExpr(const ConvertRowtypeExpr& from); - ConvertRowtypeExpr(ConvertRowtypeExpr&& from) noexcept - : ConvertRowtypeExpr() { + inline ArrayCoerceExpr(const ArrayCoerceExpr& from) + : ArrayCoerceExpr(nullptr, from) {} + ArrayCoerceExpr(ArrayCoerceExpr&& from) noexcept + : ArrayCoerceExpr() { *this = ::std::move(from); } - inline ConvertRowtypeExpr& operator=(const ConvertRowtypeExpr& from) { + inline ArrayCoerceExpr& operator=(const ArrayCoerceExpr& from) { CopyFrom(from); return *this; } - inline ConvertRowtypeExpr& operator=(ConvertRowtypeExpr&& from) noexcept { + inline ArrayCoerceExpr& operator=(ArrayCoerceExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -16795,90 +19968,99 @@ class ConvertRowtypeExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ConvertRowtypeExpr& default_instance() { + static const ArrayCoerceExpr& default_instance() { return *internal_default_instance(); } - static inline const ConvertRowtypeExpr* internal_default_instance() { - return reinterpret_cast( - &_ConvertRowtypeExpr_default_instance_); + static inline const ArrayCoerceExpr* internal_default_instance() { + return reinterpret_cast( + &_ArrayCoerceExpr_default_instance_); } static constexpr int kIndexInFileMessages = 36; - friend void swap(ConvertRowtypeExpr& a, ConvertRowtypeExpr& b) { + friend void swap(ArrayCoerceExpr& a, ArrayCoerceExpr& b) { a.Swap(&b); } - inline void Swap(ConvertRowtypeExpr* other) { + inline void Swap(ArrayCoerceExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ConvertRowtypeExpr* other) { + void UnsafeArenaSwap(ArrayCoerceExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ConvertRowtypeExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ArrayCoerceExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ConvertRowtypeExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ConvertRowtypeExpr& from) { - ConvertRowtypeExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ArrayCoerceExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ArrayCoerceExpr& from) { + ArrayCoerceExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ConvertRowtypeExpr* other); + void InternalSwap(ArrayCoerceExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ConvertRowtypeExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ArrayCoerceExpr"; } protected: - explicit ConvertRowtypeExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ArrayCoerceExpr(::google::protobuf::Arena* arena); + ArrayCoerceExpr(::google::protobuf::Arena* arena, const ArrayCoerceExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- @@ -16887,115 +20069,171 @@ class ConvertRowtypeExpr final : enum : int { kXprFieldNumber = 1, kArgFieldNumber = 2, - kResulttypeFieldNumber = 3, - kConvertformatFieldNumber = 4, - kLocationFieldNumber = 5, + kElemexprFieldNumber = 3, + kResulttypeFieldNumber = 4, + kResulttypmodFieldNumber = 5, + kResultcollidFieldNumber = 6, + kCoerceformatFieldNumber = 7, + kLocationFieldNumber = 8, }; // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + public: // .pg_query.Node arg = 2 [json_name = "arg"]; bool has_arg() const; - private: - bool _internal_has_arg() const; - public: - void clear_arg(); + void clear_arg() ; const ::pg_query::Node& arg() const; PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); + private: const ::pg_query::Node& _internal_arg() const; ::pg_query::Node* _internal_mutable_arg(); + public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + // .pg_query.Node elemexpr = 3 [json_name = "elemexpr"]; + bool has_elemexpr() const; + void clear_elemexpr() ; + const ::pg_query::Node& elemexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_elemexpr(); + ::pg_query::Node* mutable_elemexpr(); + void set_allocated_elemexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_elemexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_elemexpr(); - // uint32 resulttype = 3 [json_name = "resulttype"]; - void clear_resulttype(); - uint32_t resulttype() const; - void set_resulttype(uint32_t value); private: - uint32_t _internal_resulttype() const; - void _internal_set_resulttype(uint32_t value); + const ::pg_query::Node& _internal_elemexpr() const; + ::pg_query::Node* _internal_mutable_elemexpr(); + public: + // uint32 resulttype = 4 [json_name = "resulttype"]; + void clear_resulttype() ; + ::uint32_t resulttype() const; + void set_resulttype(::uint32_t value); - // .pg_query.CoercionForm convertformat = 4 [json_name = "convertformat"]; - void clear_convertformat(); - ::pg_query::CoercionForm convertformat() const; - void set_convertformat(::pg_query::CoercionForm value); private: - ::pg_query::CoercionForm _internal_convertformat() const; - void _internal_set_convertformat(::pg_query::CoercionForm value); + ::uint32_t _internal_resulttype() const; + void _internal_set_resulttype(::uint32_t value); + public: + // int32 resulttypmod = 5 [json_name = "resulttypmod"]; + void clear_resulttypmod() ; + ::int32_t resulttypmod() const; + void set_resulttypmod(::int32_t value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + ::int32_t _internal_resulttypmod() const; + void _internal_set_resulttypmod(::int32_t value); + public: + // uint32 resultcollid = 6 [json_name = "resultcollid"]; + void clear_resultcollid() ; + ::uint32_t resultcollid() const; + void set_resultcollid(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.ConvertRowtypeExpr) + private: + ::uint32_t _internal_resultcollid() const; + void _internal_set_resultcollid(::uint32_t value); + + public: + // .pg_query.CoercionForm coerceformat = 7 [json_name = "coerceformat"]; + void clear_coerceformat() ; + ::pg_query::CoercionForm coerceformat() const; + void set_coerceformat(::pg_query::CoercionForm value); + + private: + ::pg_query::CoercionForm _internal_coerceformat() const; + void _internal_set_coerceformat(::pg_query::CoercionForm value); + + public: + // int32 location = 8 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.ArrayCoerceExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; ::pg_query::Node* xpr_; ::pg_query::Node* arg_; - uint32_t resulttype_; - int convertformat_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::pg_query::Node* elemexpr_; + ::uint32_t resulttype_; + ::int32_t resulttypmod_; + ::uint32_t resultcollid_; + int coerceformat_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CollateExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CollateExpr) */ { +class ArrayExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ArrayExpr) */ { public: - inline CollateExpr() : CollateExpr(nullptr) {} - ~CollateExpr() override; - explicit PROTOBUF_CONSTEXPR CollateExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ArrayExpr() : ArrayExpr(nullptr) {} + ~ArrayExpr() override; + template + explicit PROTOBUF_CONSTEXPR ArrayExpr(::google::protobuf::internal::ConstantInitialized); - CollateExpr(const CollateExpr& from); - CollateExpr(CollateExpr&& from) noexcept - : CollateExpr() { + inline ArrayExpr(const ArrayExpr& from) + : ArrayExpr(nullptr, from) {} + ArrayExpr(ArrayExpr&& from) noexcept + : ArrayExpr() { *this = ::std::move(from); } - inline CollateExpr& operator=(const CollateExpr& from) { + inline ArrayExpr& operator=(const ArrayExpr& from) { CopyFrom(from); return *this; } - inline CollateExpr& operator=(CollateExpr&& from) noexcept { + inline ArrayExpr& operator=(ArrayExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -17005,196 +20243,258 @@ class CollateExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CollateExpr& default_instance() { + static const ArrayExpr& default_instance() { return *internal_default_instance(); } - static inline const CollateExpr* internal_default_instance() { - return reinterpret_cast( - &_CollateExpr_default_instance_); + static inline const ArrayExpr* internal_default_instance() { + return reinterpret_cast( + &_ArrayExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 37; + 42; - friend void swap(CollateExpr& a, CollateExpr& b) { + friend void swap(ArrayExpr& a, ArrayExpr& b) { a.Swap(&b); } - inline void Swap(CollateExpr* other) { + inline void Swap(ArrayExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CollateExpr* other) { + void UnsafeArenaSwap(ArrayExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CollateExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ArrayExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CollateExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CollateExpr& from) { - CollateExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ArrayExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ArrayExpr& from) { + ArrayExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CollateExpr* other); + void InternalSwap(ArrayExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CollateExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ArrayExpr"; } protected: - explicit CollateExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ArrayExpr(::google::protobuf::Arena* arena); + ArrayExpr(::google::protobuf::Arena* arena, const ArrayExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { + kElementsFieldNumber = 5, kXprFieldNumber = 1, - kArgFieldNumber = 2, - kCollOidFieldNumber = 3, - kLocationFieldNumber = 4, + kArrayTypeidFieldNumber = 2, + kArrayCollidFieldNumber = 3, + kElementTypeidFieldNumber = 4, + kMultidimsFieldNumber = 6, + kLocationFieldNumber = 7, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + // repeated .pg_query.Node elements = 5 [json_name = "elements"]; + int elements_size() const; + private: + int _internal_elements_size() const; + + public: + void clear_elements() ; + ::pg_query::Node* mutable_elements(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_elements(); private: - bool _internal_has_xpr() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_elements() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_elements(); public: - void clear_xpr(); + const ::pg_query::Node& elements(int index) const; + ::pg_query::Node* add_elements(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + elements() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // uint32 array_typeid = 2 [json_name = "array_typeid"]; + void clear_array_typeid() ; + ::uint32_t array_typeid() const; + void set_array_typeid(::uint32_t value); - // .pg_query.Node arg = 2 [json_name = "arg"]; - bool has_arg() const; private: - bool _internal_has_arg() const; + ::uint32_t _internal_array_typeid() const; + void _internal_set_array_typeid(::uint32_t value); + public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + // uint32 array_collid = 3 [json_name = "array_collid"]; + void clear_array_collid() ; + ::uint32_t array_collid() const; + void set_array_collid(::uint32_t value); + private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); + ::uint32_t _internal_array_collid() const; + void _internal_set_array_collid(::uint32_t value); + public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + // uint32 element_typeid = 4 [json_name = "element_typeid"]; + void clear_element_typeid() ; + ::uint32_t element_typeid() const; + void set_element_typeid(::uint32_t value); - // uint32 coll_oid = 3 [json_name = "collOid"]; - void clear_coll_oid(); - uint32_t coll_oid() const; - void set_coll_oid(uint32_t value); private: - uint32_t _internal_coll_oid() const; - void _internal_set_coll_oid(uint32_t value); + ::uint32_t _internal_element_typeid() const; + void _internal_set_element_typeid(::uint32_t value); + public: + // bool multidims = 6 [json_name = "multidims"]; + void clear_multidims() ; + bool multidims() const; + void set_multidims(bool value); - // int32 location = 4 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + bool _internal_multidims() const; + void _internal_set_multidims(bool value); + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CollateExpr) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.ArrayExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > elements_; ::pg_query::Node* xpr_; - ::pg_query::Node* arg_; - uint32_t coll_oid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::uint32_t array_typeid_; + ::uint32_t array_collid_; + ::uint32_t element_typeid_; + bool multidims_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CaseExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CaseExpr) */ { +class BoolExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.BoolExpr) */ { public: - inline CaseExpr() : CaseExpr(nullptr) {} - ~CaseExpr() override; - explicit PROTOBUF_CONSTEXPR CaseExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline BoolExpr() : BoolExpr(nullptr) {} + ~BoolExpr() override; + template + explicit PROTOBUF_CONSTEXPR BoolExpr(::google::protobuf::internal::ConstantInitialized); - CaseExpr(const CaseExpr& from); - CaseExpr(CaseExpr&& from) noexcept - : CaseExpr() { + inline BoolExpr(const BoolExpr& from) + : BoolExpr(nullptr, from) {} + BoolExpr(BoolExpr&& from) noexcept + : BoolExpr() { *this = ::std::move(from); } - inline CaseExpr& operator=(const CaseExpr& from) { + inline BoolExpr& operator=(const BoolExpr& from) { CopyFrom(from); return *this; } - inline CaseExpr& operator=(CaseExpr&& from) noexcept { + inline BoolExpr& operator=(BoolExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -17204,247 +20504,222 @@ class CaseExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CaseExpr& default_instance() { + static const BoolExpr& default_instance() { return *internal_default_instance(); } - static inline const CaseExpr* internal_default_instance() { - return reinterpret_cast( - &_CaseExpr_default_instance_); + static inline const BoolExpr* internal_default_instance() { + return reinterpret_cast( + &_BoolExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 38; + 28; - friend void swap(CaseExpr& a, CaseExpr& b) { + friend void swap(BoolExpr& a, BoolExpr& b) { a.Swap(&b); } - inline void Swap(CaseExpr* other) { + inline void Swap(BoolExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CaseExpr* other) { + void UnsafeArenaSwap(BoolExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CaseExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + BoolExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CaseExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CaseExpr& from) { - CaseExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const BoolExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const BoolExpr& from) { + BoolExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CaseExpr* other); + void InternalSwap(BoolExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CaseExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.BoolExpr"; } protected: - explicit CaseExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit BoolExpr(::google::protobuf::Arena* arena); + BoolExpr(::google::protobuf::Arena* arena, const BoolExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 5, + kArgsFieldNumber = 3, kXprFieldNumber = 1, - kArgFieldNumber = 4, - kDefresultFieldNumber = 6, - kCasetypeFieldNumber = 2, - kCasecollidFieldNumber = 3, - kLocationFieldNumber = 7, + kBoolopFieldNumber = 2, + kLocationFieldNumber = 4, }; - // repeated .pg_query.Node args = 5 [json_name = "args"]; + // repeated .pg_query.Node args = 3 [json_name = "args"]; int args_size() const; private: int _internal_args_size() const; + public: - void clear_args(); + void clear_args() ; ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_args(); private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: const ::pg_query::Node& args(int index) const; ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& args() const; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.Node arg = 4 [json_name = "arg"]; - bool has_arg() const; - private: - bool _internal_has_arg() const; - public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); - private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + // .pg_query.BoolExprType boolop = 2 [json_name = "boolop"]; + void clear_boolop() ; + ::pg_query::BoolExprType boolop() const; + void set_boolop(::pg_query::BoolExprType value); - // .pg_query.Node defresult = 6 [json_name = "defresult"]; - bool has_defresult() const; - private: - bool _internal_has_defresult() const; - public: - void clear_defresult(); - const ::pg_query::Node& defresult() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_defresult(); - ::pg_query::Node* mutable_defresult(); - void set_allocated_defresult(::pg_query::Node* defresult); private: - const ::pg_query::Node& _internal_defresult() const; - ::pg_query::Node* _internal_mutable_defresult(); - public: - void unsafe_arena_set_allocated_defresult( - ::pg_query::Node* defresult); - ::pg_query::Node* unsafe_arena_release_defresult(); + ::pg_query::BoolExprType _internal_boolop() const; + void _internal_set_boolop(::pg_query::BoolExprType value); - // uint32 casetype = 2 [json_name = "casetype"]; - void clear_casetype(); - uint32_t casetype() const; - void set_casetype(uint32_t value); - private: - uint32_t _internal_casetype() const; - void _internal_set_casetype(uint32_t value); public: + // int32 location = 4 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // uint32 casecollid = 3 [json_name = "casecollid"]; - void clear_casecollid(); - uint32_t casecollid() const; - void set_casecollid(uint32_t value); private: - uint32_t _internal_casecollid() const; - void _internal_set_casecollid(uint32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.CaseExpr) + // @@protoc_insertion_point(class_scope:pg_query.BoolExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; ::pg_query::Node* xpr_; - ::pg_query::Node* arg_; - ::pg_query::Node* defresult_; - uint32_t casetype_; - uint32_t casecollid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + int boolop_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CaseWhen final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CaseWhen) */ { +class BooleanTest final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.BooleanTest) */ { public: - inline CaseWhen() : CaseWhen(nullptr) {} - ~CaseWhen() override; - explicit PROTOBUF_CONSTEXPR CaseWhen(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline BooleanTest() : BooleanTest(nullptr) {} + ~BooleanTest() override; + template + explicit PROTOBUF_CONSTEXPR BooleanTest(::google::protobuf::internal::ConstantInitialized); - CaseWhen(const CaseWhen& from); - CaseWhen(CaseWhen&& from) noexcept - : CaseWhen() { + inline BooleanTest(const BooleanTest& from) + : BooleanTest(nullptr, from) {} + BooleanTest(BooleanTest&& from) noexcept + : BooleanTest() { *this = ::std::move(from); } - inline CaseWhen& operator=(const CaseWhen& from) { + inline BooleanTest& operator=(const BooleanTest& from) { CopyFrom(from); return *this; } - inline CaseWhen& operator=(CaseWhen&& from) noexcept { + inline BooleanTest& operator=(BooleanTest&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -17454,90 +20729,99 @@ class CaseWhen final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CaseWhen& default_instance() { + static const BooleanTest& default_instance() { return *internal_default_instance(); } - static inline const CaseWhen* internal_default_instance() { - return reinterpret_cast( - &_CaseWhen_default_instance_); + static inline const BooleanTest* internal_default_instance() { + return reinterpret_cast( + &_BooleanTest_default_instance_); } static constexpr int kIndexInFileMessages = - 39; + 55; - friend void swap(CaseWhen& a, CaseWhen& b) { + friend void swap(BooleanTest& a, BooleanTest& b) { a.Swap(&b); } - inline void Swap(CaseWhen* other) { + inline void Swap(BooleanTest* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CaseWhen* other) { + void UnsafeArenaSwap(BooleanTest* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CaseWhen* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + BooleanTest* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CaseWhen& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CaseWhen& from) { - CaseWhen::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const BooleanTest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const BooleanTest& from) { + BooleanTest::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CaseWhen* other); + void InternalSwap(BooleanTest* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CaseWhen"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.BooleanTest"; } protected: - explicit CaseWhen(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit BooleanTest(::google::protobuf::Arena* arena); + BooleanTest(::google::protobuf::Arena* arena, const BooleanTest& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- @@ -17545,114 +20829,119 @@ class CaseWhen final : enum : int { kXprFieldNumber = 1, - kExprFieldNumber = 2, - kResultFieldNumber = 3, + kArgFieldNumber = 2, + kBooltesttypeFieldNumber = 3, kLocationFieldNumber = 4, }; // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.Node expr = 2 [json_name = "expr"]; - bool has_expr() const; - private: - bool _internal_has_expr() const; public: - void clear_expr(); - const ::pg_query::Node& expr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); - ::pg_query::Node* mutable_expr(); - void set_allocated_expr(::pg_query::Node* expr); - private: - const ::pg_query::Node& _internal_expr() const; - ::pg_query::Node* _internal_mutable_expr(); - public: - void unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr); - ::pg_query::Node* unsafe_arena_release_expr(); + // .pg_query.Node arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); - // .pg_query.Node result = 3 [json_name = "result"]; - bool has_result() const; private: - bool _internal_has_result() const; + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + public: - void clear_result(); - const ::pg_query::Node& result() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_result(); - ::pg_query::Node* mutable_result(); - void set_allocated_result(::pg_query::Node* result); + // .pg_query.BoolTestType booltesttype = 3 [json_name = "booltesttype"]; + void clear_booltesttype() ; + ::pg_query::BoolTestType booltesttype() const; + void set_booltesttype(::pg_query::BoolTestType value); + private: - const ::pg_query::Node& _internal_result() const; - ::pg_query::Node* _internal_mutable_result(); - public: - void unsafe_arena_set_allocated_result( - ::pg_query::Node* result); - ::pg_query::Node* unsafe_arena_release_result(); + ::pg_query::BoolTestType _internal_booltesttype() const; + void _internal_set_booltesttype(::pg_query::BoolTestType value); + public: // int32 location = 4 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CaseWhen) + public: + // @@protoc_insertion_point(class_scope:pg_query.BooleanTest) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; ::pg_query::Node* xpr_; - ::pg_query::Node* expr_; - ::pg_query::Node* result_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::pg_query::Node* arg_; + int booltesttype_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CaseTestExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CaseTestExpr) */ { +class CTECycleClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CTECycleClause) */ { public: - inline CaseTestExpr() : CaseTestExpr(nullptr) {} - ~CaseTestExpr() override; - explicit PROTOBUF_CONSTEXPR CaseTestExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CTECycleClause() : CTECycleClause(nullptr) {} + ~CTECycleClause() override; + template + explicit PROTOBUF_CONSTEXPR CTECycleClause(::google::protobuf::internal::ConstantInitialized); - CaseTestExpr(const CaseTestExpr& from); - CaseTestExpr(CaseTestExpr&& from) noexcept - : CaseTestExpr() { + inline CTECycleClause(const CTECycleClause& from) + : CTECycleClause(nullptr, from) {} + CTECycleClause(CTECycleClause&& from) noexcept + : CTECycleClause() { *this = ::std::move(from); } - inline CaseTestExpr& operator=(const CaseTestExpr& from) { + inline CTECycleClause& operator=(const CTECycleClause& from) { CopyFrom(from); return *this; } - inline CaseTestExpr& operator=(CaseTestExpr&& from) noexcept { + inline CTECycleClause& operator=(CTECycleClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -17662,187 +20951,311 @@ class CaseTestExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CaseTestExpr& default_instance() { + static const CTECycleClause& default_instance() { return *internal_default_instance(); } - static inline const CaseTestExpr* internal_default_instance() { - return reinterpret_cast( - &_CaseTestExpr_default_instance_); + static inline const CTECycleClause* internal_default_instance() { + return reinterpret_cast( + &_CTECycleClause_default_instance_); } static constexpr int kIndexInFileMessages = - 40; + 113; - friend void swap(CaseTestExpr& a, CaseTestExpr& b) { + friend void swap(CTECycleClause& a, CTECycleClause& b) { a.Swap(&b); } - inline void Swap(CaseTestExpr* other) { + inline void Swap(CTECycleClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CaseTestExpr* other) { + void UnsafeArenaSwap(CTECycleClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CaseTestExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CTECycleClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CaseTestExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CaseTestExpr& from) { - CaseTestExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CTECycleClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CTECycleClause& from) { + CTECycleClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CaseTestExpr* other); + void InternalSwap(CTECycleClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CaseTestExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CTECycleClause"; } protected: - explicit CaseTestExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CTECycleClause(::google::protobuf::Arena* arena); + CTECycleClause(::google::protobuf::Arena* arena, const CTECycleClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kTypeIdFieldNumber = 2, - kTypeModFieldNumber = 3, - kCollationFieldNumber = 4, + kCycleColListFieldNumber = 1, + kCycleMarkColumnFieldNumber = 2, + kCyclePathColumnFieldNumber = 5, + kCycleMarkValueFieldNumber = 3, + kCycleMarkDefaultFieldNumber = 4, + kLocationFieldNumber = 6, + kCycleMarkTypeFieldNumber = 7, + kCycleMarkTypmodFieldNumber = 8, + kCycleMarkCollationFieldNumber = 9, + kCycleMarkNeopFieldNumber = 10, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + // repeated .pg_query.Node cycle_col_list = 1 [json_name = "cycle_col_list"]; + int cycle_col_list_size() const; private: - bool _internal_has_xpr() const; + int _internal_cycle_col_list_size() const; + public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void clear_cycle_col_list() ; + ::pg_query::Node* mutable_cycle_col_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_cycle_col_list(); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_cycle_col_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_cycle_col_list(); + public: + const ::pg_query::Node& cycle_col_list(int index) const; + ::pg_query::Node* add_cycle_col_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + cycle_col_list() const; + // string cycle_mark_column = 2 [json_name = "cycle_mark_column"]; + void clear_cycle_mark_column() ; + const std::string& cycle_mark_column() const; + template + void set_cycle_mark_column(Arg_&& arg, Args_... args); + std::string* mutable_cycle_mark_column(); + PROTOBUF_NODISCARD std::string* release_cycle_mark_column(); + void set_allocated_cycle_mark_column(std::string* value); + + private: + const std::string& _internal_cycle_mark_column() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_cycle_mark_column( + const std::string& value); + std::string* _internal_mutable_cycle_mark_column(); + + public: + // string cycle_path_column = 5 [json_name = "cycle_path_column"]; + void clear_cycle_path_column() ; + const std::string& cycle_path_column() const; + template + void set_cycle_path_column(Arg_&& arg, Args_... args); + std::string* mutable_cycle_path_column(); + PROTOBUF_NODISCARD std::string* release_cycle_path_column(); + void set_allocated_cycle_path_column(std::string* value); + + private: + const std::string& _internal_cycle_path_column() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_cycle_path_column( + const std::string& value); + std::string* _internal_mutable_cycle_path_column(); + + public: + // .pg_query.Node cycle_mark_value = 3 [json_name = "cycle_mark_value"]; + bool has_cycle_mark_value() const; + void clear_cycle_mark_value() ; + const ::pg_query::Node& cycle_mark_value() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_cycle_mark_value(); + ::pg_query::Node* mutable_cycle_mark_value(); + void set_allocated_cycle_mark_value(::pg_query::Node* value); + void unsafe_arena_set_allocated_cycle_mark_value(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_cycle_mark_value(); + + private: + const ::pg_query::Node& _internal_cycle_mark_value() const; + ::pg_query::Node* _internal_mutable_cycle_mark_value(); + + public: + // .pg_query.Node cycle_mark_default = 4 [json_name = "cycle_mark_default"]; + bool has_cycle_mark_default() const; + void clear_cycle_mark_default() ; + const ::pg_query::Node& cycle_mark_default() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_cycle_mark_default(); + ::pg_query::Node* mutable_cycle_mark_default(); + void set_allocated_cycle_mark_default(::pg_query::Node* value); + void unsafe_arena_set_allocated_cycle_mark_default(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_cycle_mark_default(); + + private: + const ::pg_query::Node& _internal_cycle_mark_default() const; + ::pg_query::Node* _internal_mutable_cycle_mark_default(); + + public: + // int32 location = 6 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // uint32 cycle_mark_type = 7 [json_name = "cycle_mark_type"]; + void clear_cycle_mark_type() ; + ::uint32_t cycle_mark_type() const; + void set_cycle_mark_type(::uint32_t value); - // uint32 type_id = 2 [json_name = "typeId"]; - void clear_type_id(); - uint32_t type_id() const; - void set_type_id(uint32_t value); private: - uint32_t _internal_type_id() const; - void _internal_set_type_id(uint32_t value); + ::uint32_t _internal_cycle_mark_type() const; + void _internal_set_cycle_mark_type(::uint32_t value); + public: + // int32 cycle_mark_typmod = 8 [json_name = "cycle_mark_typmod"]; + void clear_cycle_mark_typmod() ; + ::int32_t cycle_mark_typmod() const; + void set_cycle_mark_typmod(::int32_t value); - // int32 type_mod = 3 [json_name = "typeMod"]; - void clear_type_mod(); - int32_t type_mod() const; - void set_type_mod(int32_t value); private: - int32_t _internal_type_mod() const; - void _internal_set_type_mod(int32_t value); + ::int32_t _internal_cycle_mark_typmod() const; + void _internal_set_cycle_mark_typmod(::int32_t value); + public: + // uint32 cycle_mark_collation = 9 [json_name = "cycle_mark_collation"]; + void clear_cycle_mark_collation() ; + ::uint32_t cycle_mark_collation() const; + void set_cycle_mark_collation(::uint32_t value); - // uint32 collation = 4 [json_name = "collation"]; - void clear_collation(); - uint32_t collation() const; - void set_collation(uint32_t value); private: - uint32_t _internal_collation() const; - void _internal_set_collation(uint32_t value); + ::uint32_t _internal_cycle_mark_collation() const; + void _internal_set_cycle_mark_collation(::uint32_t value); + public: + // uint32 cycle_mark_neop = 10 [json_name = "cycle_mark_neop"]; + void clear_cycle_mark_neop() ; + ::uint32_t cycle_mark_neop() const; + void set_cycle_mark_neop(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CaseTestExpr) + private: + ::uint32_t _internal_cycle_mark_neop() const; + void _internal_set_cycle_mark_neop(::uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CTECycleClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 10, 3, + 74, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - uint32_t type_id_; - int32_t type_mod_; - uint32_t collation_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > cycle_col_list_; + ::google::protobuf::internal::ArenaStringPtr cycle_mark_column_; + ::google::protobuf::internal::ArenaStringPtr cycle_path_column_; + ::pg_query::Node* cycle_mark_value_; + ::pg_query::Node* cycle_mark_default_; + ::int32_t location_; + ::uint32_t cycle_mark_type_; + ::int32_t cycle_mark_typmod_; + ::uint32_t cycle_mark_collation_; + ::uint32_t cycle_mark_neop_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ArrayExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ArrayExpr) */ { +class CTESearchClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CTESearchClause) */ { public: - inline ArrayExpr() : ArrayExpr(nullptr) {} - ~ArrayExpr() override; - explicit PROTOBUF_CONSTEXPR ArrayExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CTESearchClause() : CTESearchClause(nullptr) {} + ~CTESearchClause() override; + template + explicit PROTOBUF_CONSTEXPR CTESearchClause(::google::protobuf::internal::ConstantInitialized); - ArrayExpr(const ArrayExpr& from); - ArrayExpr(ArrayExpr&& from) noexcept - : ArrayExpr() { + inline CTESearchClause(const CTESearchClause& from) + : CTESearchClause(nullptr, from) {} + CTESearchClause(CTESearchClause&& from) noexcept + : CTESearchClause() { *this = ::std::move(from); } - inline ArrayExpr& operator=(const ArrayExpr& from) { + inline CTESearchClause& operator=(const CTESearchClause& from) { CopyFrom(from); return *this; } - inline ArrayExpr& operator=(ArrayExpr&& from) noexcept { + inline CTESearchClause& operator=(CTESearchClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -17852,229 +21265,222 @@ class ArrayExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ArrayExpr& default_instance() { + static const CTESearchClause& default_instance() { return *internal_default_instance(); } - static inline const ArrayExpr* internal_default_instance() { - return reinterpret_cast( - &_ArrayExpr_default_instance_); + static inline const CTESearchClause* internal_default_instance() { + return reinterpret_cast( + &_CTESearchClause_default_instance_); } static constexpr int kIndexInFileMessages = - 41; + 112; - friend void swap(ArrayExpr& a, ArrayExpr& b) { + friend void swap(CTESearchClause& a, CTESearchClause& b) { a.Swap(&b); } - inline void Swap(ArrayExpr* other) { + inline void Swap(CTESearchClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ArrayExpr* other) { + void UnsafeArenaSwap(CTESearchClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ArrayExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CTESearchClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ArrayExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ArrayExpr& from) { - ArrayExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CTESearchClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CTESearchClause& from) { + CTESearchClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ArrayExpr* other); + void InternalSwap(CTESearchClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ArrayExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CTESearchClause"; } protected: - explicit ArrayExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CTESearchClause(::google::protobuf::Arena* arena); + CTESearchClause(::google::protobuf::Arena* arena, const CTESearchClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kElementsFieldNumber = 5, - kXprFieldNumber = 1, - kArrayTypeidFieldNumber = 2, - kArrayCollidFieldNumber = 3, - kElementTypeidFieldNumber = 4, - kMultidimsFieldNumber = 6, - kLocationFieldNumber = 7, + kSearchColListFieldNumber = 1, + kSearchSeqColumnFieldNumber = 3, + kSearchBreadthFirstFieldNumber = 2, + kLocationFieldNumber = 4, }; - // repeated .pg_query.Node elements = 5 [json_name = "elements"]; - int elements_size() const; - private: - int _internal_elements_size() const; - public: - void clear_elements(); - ::pg_query::Node* mutable_elements(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_elements(); + // repeated .pg_query.Node search_col_list = 1 [json_name = "search_col_list"]; + int search_col_list_size() const; private: - const ::pg_query::Node& _internal_elements(int index) const; - ::pg_query::Node* _internal_add_elements(); - public: - const ::pg_query::Node& elements(int index) const; - ::pg_query::Node* add_elements(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - elements() const; + int _internal_search_col_list_size() const; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void clear_search_col_list() ; + ::pg_query::Node* mutable_search_col_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_search_col_list(); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_search_col_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_search_col_list(); public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + const ::pg_query::Node& search_col_list(int index) const; + ::pg_query::Node* add_search_col_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + search_col_list() const; + // string search_seq_column = 3 [json_name = "search_seq_column"]; + void clear_search_seq_column() ; + const std::string& search_seq_column() const; + template + void set_search_seq_column(Arg_&& arg, Args_... args); + std::string* mutable_search_seq_column(); + PROTOBUF_NODISCARD std::string* release_search_seq_column(); + void set_allocated_search_seq_column(std::string* value); - // uint32 array_typeid = 2 [json_name = "array_typeid"]; - void clear_array_typeid(); - uint32_t array_typeid() const; - void set_array_typeid(uint32_t value); private: - uint32_t _internal_array_typeid() const; - void _internal_set_array_typeid(uint32_t value); - public: + const std::string& _internal_search_seq_column() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_search_seq_column( + const std::string& value); + std::string* _internal_mutable_search_seq_column(); - // uint32 array_collid = 3 [json_name = "array_collid"]; - void clear_array_collid(); - uint32_t array_collid() const; - void set_array_collid(uint32_t value); - private: - uint32_t _internal_array_collid() const; - void _internal_set_array_collid(uint32_t value); public: + // bool search_breadth_first = 2 [json_name = "search_breadth_first"]; + void clear_search_breadth_first() ; + bool search_breadth_first() const; + void set_search_breadth_first(bool value); - // uint32 element_typeid = 4 [json_name = "element_typeid"]; - void clear_element_typeid(); - uint32_t element_typeid() const; - void set_element_typeid(uint32_t value); private: - uint32_t _internal_element_typeid() const; - void _internal_set_element_typeid(uint32_t value); - public: + bool _internal_search_breadth_first() const; + void _internal_set_search_breadth_first(bool value); - // bool multidims = 6 [json_name = "multidims"]; - void clear_multidims(); - bool multidims() const; - void set_multidims(bool value); - private: - bool _internal_multidims() const; - void _internal_set_multidims(bool value); public: + // int32 location = 4 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.ArrayExpr) + public: + // @@protoc_insertion_point(class_scope:pg_query.CTESearchClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 1, + 50, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > elements_; - ::pg_query::Node* xpr_; - uint32_t array_typeid_; - uint32_t array_collid_; - uint32_t element_typeid_; - bool multidims_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > search_col_list_; + ::google::protobuf::internal::ArenaStringPtr search_seq_column_; + bool search_breadth_first_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RowExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RowExpr) */ { +class CallStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CallStmt) */ { public: - inline RowExpr() : RowExpr(nullptr) {} - ~RowExpr() override; - explicit PROTOBUF_CONSTEXPR RowExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CallStmt() : CallStmt(nullptr) {} + ~CallStmt() override; + template + explicit PROTOBUF_CONSTEXPR CallStmt(::google::protobuf::internal::ConstantInitialized); - RowExpr(const RowExpr& from); - RowExpr(RowExpr&& from) noexcept - : RowExpr() { + inline CallStmt(const CallStmt& from) + : CallStmt(nullptr, from) {} + CallStmt(CallStmt&& from) noexcept + : CallStmt() { *this = ::std::move(from); } - inline RowExpr& operator=(const RowExpr& from) { + inline CallStmt& operator=(const CallStmt& from) { CopyFrom(from); return *this; } - inline RowExpr& operator=(RowExpr&& from) noexcept { + inline CallStmt& operator=(CallStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -18084,227 +21490,215 @@ class RowExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RowExpr& default_instance() { + static const CallStmt& default_instance() { return *internal_default_instance(); } - static inline const RowExpr* internal_default_instance() { - return reinterpret_cast( - &_RowExpr_default_instance_); + static inline const CallStmt* internal_default_instance() { + return reinterpret_cast( + &_CallStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 42; + 202; - friend void swap(RowExpr& a, RowExpr& b) { + friend void swap(CallStmt& a, CallStmt& b) { a.Swap(&b); } - inline void Swap(RowExpr* other) { + inline void Swap(CallStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RowExpr* other) { + void UnsafeArenaSwap(CallStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RowExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CallStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RowExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RowExpr& from) { - RowExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CallStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CallStmt& from) { + CallStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RowExpr* other); + void InternalSwap(CallStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RowExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CallStmt"; } protected: - explicit RowExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CallStmt(::google::protobuf::Arena* arena); + CallStmt(::google::protobuf::Arena* arena, const CallStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 2, - kColnamesFieldNumber = 5, - kXprFieldNumber = 1, - kRowTypeidFieldNumber = 3, - kRowFormatFieldNumber = 4, - kLocationFieldNumber = 6, + kOutargsFieldNumber = 3, + kFunccallFieldNumber = 1, + kFuncexprFieldNumber = 2, }; - // repeated .pg_query.Node args = 2 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); + // repeated .pg_query.Node outargs = 3 [json_name = "outargs"]; + int outargs_size() const; private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + int _internal_outargs_size() const; - // repeated .pg_query.Node colnames = 5 [json_name = "colnames"]; - int colnames_size() const; - private: - int _internal_colnames_size() const; public: - void clear_colnames(); - ::pg_query::Node* mutable_colnames(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_colnames(); + void clear_outargs() ; + ::pg_query::Node* mutable_outargs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_outargs(); private: - const ::pg_query::Node& _internal_colnames(int index) const; - ::pg_query::Node* _internal_add_colnames(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_outargs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_outargs(); public: - const ::pg_query::Node& colnames(int index) const; - ::pg_query::Node* add_colnames(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - colnames() const; + const ::pg_query::Node& outargs(int index) const; + ::pg_query::Node* add_outargs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + outargs() const; + // .pg_query.FuncCall funccall = 1 [json_name = "funccall"]; + bool has_funccall() const; + void clear_funccall() ; + const ::pg_query::FuncCall& funccall() const; + PROTOBUF_NODISCARD ::pg_query::FuncCall* release_funccall(); + ::pg_query::FuncCall* mutable_funccall(); + void set_allocated_funccall(::pg_query::FuncCall* value); + void unsafe_arena_set_allocated_funccall(::pg_query::FuncCall* value); + ::pg_query::FuncCall* unsafe_arena_release_funccall(); - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + const ::pg_query::FuncCall& _internal_funccall() const; + ::pg_query::FuncCall* _internal_mutable_funccall(); - // uint32 row_typeid = 3 [json_name = "row_typeid"]; - void clear_row_typeid(); - uint32_t row_typeid() const; - void set_row_typeid(uint32_t value); - private: - uint32_t _internal_row_typeid() const; - void _internal_set_row_typeid(uint32_t value); public: + // .pg_query.FuncExpr funcexpr = 2 [json_name = "funcexpr"]; + bool has_funcexpr() const; + void clear_funcexpr() ; + const ::pg_query::FuncExpr& funcexpr() const; + PROTOBUF_NODISCARD ::pg_query::FuncExpr* release_funcexpr(); + ::pg_query::FuncExpr* mutable_funcexpr(); + void set_allocated_funcexpr(::pg_query::FuncExpr* value); + void unsafe_arena_set_allocated_funcexpr(::pg_query::FuncExpr* value); + ::pg_query::FuncExpr* unsafe_arena_release_funcexpr(); - // .pg_query.CoercionForm row_format = 4 [json_name = "row_format"]; - void clear_row_format(); - ::pg_query::CoercionForm row_format() const; - void set_row_format(::pg_query::CoercionForm value); private: - ::pg_query::CoercionForm _internal_row_format() const; - void _internal_set_row_format(::pg_query::CoercionForm value); - public: + const ::pg_query::FuncExpr& _internal_funcexpr() const; + ::pg_query::FuncExpr* _internal_mutable_funcexpr(); - // int32 location = 6 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.RowExpr) + // @@protoc_insertion_point(class_scope:pg_query.CallStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > colnames_; - ::pg_query::Node* xpr_; - uint32_t row_typeid_; - int row_format_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > outargs_; + ::pg_query::FuncCall* funccall_; + ::pg_query::FuncExpr* funcexpr_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RowCompareExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RowCompareExpr) */ { +class CaseExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CaseExpr) */ { public: - inline RowCompareExpr() : RowCompareExpr(nullptr) {} - ~RowCompareExpr() override; - explicit PROTOBUF_CONSTEXPR RowCompareExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CaseExpr() : CaseExpr(nullptr) {} + ~CaseExpr() override; + template + explicit PROTOBUF_CONSTEXPR CaseExpr(::google::protobuf::internal::ConstantInitialized); - RowCompareExpr(const RowCompareExpr& from); - RowCompareExpr(RowCompareExpr&& from) noexcept - : RowCompareExpr() { + inline CaseExpr(const CaseExpr& from) + : CaseExpr(nullptr, from) {} + CaseExpr(CaseExpr&& from) noexcept + : CaseExpr() { *this = ::std::move(from); } - inline RowCompareExpr& operator=(const RowCompareExpr& from) { + inline CaseExpr& operator=(const CaseExpr& from) { CopyFrom(from); return *this; } - inline RowCompareExpr& operator=(RowCompareExpr&& from) noexcept { + inline CaseExpr& operator=(CaseExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -18314,265 +21708,268 @@ class RowCompareExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RowCompareExpr& default_instance() { + static const CaseExpr& default_instance() { return *internal_default_instance(); } - static inline const RowCompareExpr* internal_default_instance() { - return reinterpret_cast( - &_RowCompareExpr_default_instance_); + static inline const CaseExpr* internal_default_instance() { + return reinterpret_cast( + &_CaseExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 43; + 39; - friend void swap(RowCompareExpr& a, RowCompareExpr& b) { + friend void swap(CaseExpr& a, CaseExpr& b) { a.Swap(&b); } - inline void Swap(RowCompareExpr* other) { + inline void Swap(CaseExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RowCompareExpr* other) { + void UnsafeArenaSwap(CaseExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RowCompareExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CaseExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RowCompareExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RowCompareExpr& from) { - RowCompareExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CaseExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CaseExpr& from) { + CaseExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RowCompareExpr* other); + void InternalSwap(CaseExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RowCompareExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CaseExpr"; } protected: - explicit RowCompareExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CaseExpr(::google::protobuf::Arena* arena); + CaseExpr(::google::protobuf::Arena* arena, const CaseExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOpnosFieldNumber = 3, - kOpfamiliesFieldNumber = 4, - kInputcollidsFieldNumber = 5, - kLargsFieldNumber = 6, - kRargsFieldNumber = 7, + kArgsFieldNumber = 5, kXprFieldNumber = 1, - kRctypeFieldNumber = 2, + kArgFieldNumber = 4, + kDefresultFieldNumber = 6, + kCasetypeFieldNumber = 2, + kCasecollidFieldNumber = 3, + kLocationFieldNumber = 7, }; - // repeated .pg_query.Node opnos = 3 [json_name = "opnos"]; - int opnos_size() const; - private: - int _internal_opnos_size() const; - public: - void clear_opnos(); - ::pg_query::Node* mutable_opnos(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_opnos(); + // repeated .pg_query.Node args = 5 [json_name = "args"]; + int args_size() const; private: - const ::pg_query::Node& _internal_opnos(int index) const; - ::pg_query::Node* _internal_add_opnos(); - public: - const ::pg_query::Node& opnos(int index) const; - ::pg_query::Node* add_opnos(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - opnos() const; + int _internal_args_size() const; - // repeated .pg_query.Node opfamilies = 4 [json_name = "opfamilies"]; - int opfamilies_size() const; - private: - int _internal_opfamilies_size() const; public: - void clear_opfamilies(); - ::pg_query::Node* mutable_opfamilies(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_opfamilies(); + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const ::pg_query::Node& _internal_opfamilies(int index) const; - ::pg_query::Node* _internal_add_opfamilies(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - const ::pg_query::Node& opfamilies(int index) const; - ::pg_query::Node* add_opfamilies(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - opfamilies() const; + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // repeated .pg_query.Node inputcollids = 5 [json_name = "inputcollids"]; - int inputcollids_size() const; - private: - int _internal_inputcollids_size() const; - public: - void clear_inputcollids(); - ::pg_query::Node* mutable_inputcollids(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_inputcollids(); private: - const ::pg_query::Node& _internal_inputcollids(int index) const; - ::pg_query::Node* _internal_add_inputcollids(); - public: - const ::pg_query::Node& inputcollids(int index) const; - ::pg_query::Node* add_inputcollids(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - inputcollids() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - // repeated .pg_query.Node largs = 6 [json_name = "largs"]; - int largs_size() const; - private: - int _internal_largs_size() const; - public: - void clear_largs(); - ::pg_query::Node* mutable_largs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_largs(); - private: - const ::pg_query::Node& _internal_largs(int index) const; - ::pg_query::Node* _internal_add_largs(); public: - const ::pg_query::Node& largs(int index) const; - ::pg_query::Node* add_largs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - largs() const; + // .pg_query.Node arg = 4 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); - // repeated .pg_query.Node rargs = 7 [json_name = "rargs"]; - int rargs_size() const; private: - int _internal_rargs_size() const; + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + public: - void clear_rargs(); - ::pg_query::Node* mutable_rargs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_rargs(); + // .pg_query.Node defresult = 6 [json_name = "defresult"]; + bool has_defresult() const; + void clear_defresult() ; + const ::pg_query::Node& defresult() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_defresult(); + ::pg_query::Node* mutable_defresult(); + void set_allocated_defresult(::pg_query::Node* value); + void unsafe_arena_set_allocated_defresult(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_defresult(); + private: - const ::pg_query::Node& _internal_rargs(int index) const; - ::pg_query::Node* _internal_add_rargs(); + const ::pg_query::Node& _internal_defresult() const; + ::pg_query::Node* _internal_mutable_defresult(); + public: - const ::pg_query::Node& rargs(int index) const; - ::pg_query::Node* add_rargs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - rargs() const; + // uint32 casetype = 2 [json_name = "casetype"]; + void clear_casetype() ; + ::uint32_t casetype() const; + void set_casetype(::uint32_t value); - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; private: - bool _internal_has_xpr() const; + ::uint32_t _internal_casetype() const; + void _internal_set_casetype(::uint32_t value); + public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + // uint32 casecollid = 3 [json_name = "casecollid"]; + void clear_casecollid() ; + ::uint32_t casecollid() const; + void set_casecollid(::uint32_t value); + private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + ::uint32_t _internal_casecollid() const; + void _internal_set_casecollid(::uint32_t value); + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // .pg_query.RowCompareType rctype = 2 [json_name = "rctype"]; - void clear_rctype(); - ::pg_query::RowCompareType rctype() const; - void set_rctype(::pg_query::RowCompareType value); private: - ::pg_query::RowCompareType _internal_rctype() const; - void _internal_set_rctype(::pg_query::RowCompareType value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.RowCompareExpr) + public: + // @@protoc_insertion_point(class_scope:pg_query.CaseExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > opnos_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > opfamilies_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > inputcollids_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > largs_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > rargs_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; ::pg_query::Node* xpr_; - int rctype_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::pg_query::Node* arg_; + ::pg_query::Node* defresult_; + ::uint32_t casetype_; + ::uint32_t casecollid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CoalesceExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CoalesceExpr) */ { +class CaseTestExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CaseTestExpr) */ { public: - inline CoalesceExpr() : CoalesceExpr(nullptr) {} - ~CoalesceExpr() override; - explicit PROTOBUF_CONSTEXPR CoalesceExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CaseTestExpr() : CaseTestExpr(nullptr) {} + ~CaseTestExpr() override; + template + explicit PROTOBUF_CONSTEXPR CaseTestExpr(::google::protobuf::internal::ConstantInitialized); - CoalesceExpr(const CoalesceExpr& from); - CoalesceExpr(CoalesceExpr&& from) noexcept - : CoalesceExpr() { + inline CaseTestExpr(const CaseTestExpr& from) + : CaseTestExpr(nullptr, from) {} + CaseTestExpr(CaseTestExpr&& from) noexcept + : CaseTestExpr() { *this = ::std::move(from); } - inline CoalesceExpr& operator=(const CoalesceExpr& from) { + inline CaseTestExpr& operator=(const CaseTestExpr& from) { CopyFrom(from); return *this; } - inline CoalesceExpr& operator=(CoalesceExpr&& from) noexcept { + inline CaseTestExpr& operator=(CaseTestExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -18582,207 +21979,214 @@ class CoalesceExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CoalesceExpr& default_instance() { + static const CaseTestExpr& default_instance() { return *internal_default_instance(); } - static inline const CoalesceExpr* internal_default_instance() { - return reinterpret_cast( - &_CoalesceExpr_default_instance_); + static inline const CaseTestExpr* internal_default_instance() { + return reinterpret_cast( + &_CaseTestExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 44; + 41; - friend void swap(CoalesceExpr& a, CoalesceExpr& b) { + friend void swap(CaseTestExpr& a, CaseTestExpr& b) { a.Swap(&b); } - inline void Swap(CoalesceExpr* other) { + inline void Swap(CaseTestExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CoalesceExpr* other) { + void UnsafeArenaSwap(CaseTestExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CoalesceExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CaseTestExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CoalesceExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CoalesceExpr& from) { - CoalesceExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CaseTestExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CaseTestExpr& from) { + CaseTestExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CoalesceExpr* other); + void InternalSwap(CaseTestExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CoalesceExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CaseTestExpr"; } protected: - explicit CoalesceExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CaseTestExpr(::google::protobuf::Arena* arena); + CaseTestExpr(::google::protobuf::Arena* arena, const CaseTestExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kArgsFieldNumber = 4, - kXprFieldNumber = 1, - kCoalescetypeFieldNumber = 2, - kCoalescecollidFieldNumber = 3, - kLocationFieldNumber = 5, - }; - // repeated .pg_query.Node args = 4 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kXprFieldNumber = 1, + kTypeIdFieldNumber = 2, + kTypeModFieldNumber = 3, + kCollationFieldNumber = 4, + }; // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // uint32 type_id = 2 [json_name = "typeId"]; + void clear_type_id() ; + ::uint32_t type_id() const; + void set_type_id(::uint32_t value); - // uint32 coalescetype = 2 [json_name = "coalescetype"]; - void clear_coalescetype(); - uint32_t coalescetype() const; - void set_coalescetype(uint32_t value); private: - uint32_t _internal_coalescetype() const; - void _internal_set_coalescetype(uint32_t value); + ::uint32_t _internal_type_id() const; + void _internal_set_type_id(::uint32_t value); + public: + // int32 type_mod = 3 [json_name = "typeMod"]; + void clear_type_mod() ; + ::int32_t type_mod() const; + void set_type_mod(::int32_t value); - // uint32 coalescecollid = 3 [json_name = "coalescecollid"]; - void clear_coalescecollid(); - uint32_t coalescecollid() const; - void set_coalescecollid(uint32_t value); private: - uint32_t _internal_coalescecollid() const; - void _internal_set_coalescecollid(uint32_t value); + ::int32_t _internal_type_mod() const; + void _internal_set_type_mod(::int32_t value); + public: + // uint32 collation = 4 [json_name = "collation"]; + void clear_collation() ; + ::uint32_t collation() const; + void set_collation(::uint32_t value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::uint32_t _internal_collation() const; + void _internal_set_collation(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CoalesceExpr) + public: + // @@protoc_insertion_point(class_scope:pg_query.CaseTestExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; ::pg_query::Node* xpr_; - uint32_t coalescetype_; - uint32_t coalescecollid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::uint32_t type_id_; + ::int32_t type_mod_; + ::uint32_t collation_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class MinMaxExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.MinMaxExpr) */ { +class CaseWhen final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CaseWhen) */ { public: - inline MinMaxExpr() : MinMaxExpr(nullptr) {} - ~MinMaxExpr() override; - explicit PROTOBUF_CONSTEXPR MinMaxExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CaseWhen() : CaseWhen(nullptr) {} + ~CaseWhen() override; + template + explicit PROTOBUF_CONSTEXPR CaseWhen(::google::protobuf::internal::ConstantInitialized); - MinMaxExpr(const MinMaxExpr& from); - MinMaxExpr(MinMaxExpr&& from) noexcept - : MinMaxExpr() { + inline CaseWhen(const CaseWhen& from) + : CaseWhen(nullptr, from) {} + CaseWhen(CaseWhen&& from) noexcept + : CaseWhen() { *this = ::std::move(from); } - inline MinMaxExpr& operator=(const MinMaxExpr& from) { + inline CaseWhen& operator=(const CaseWhen& from) { CopyFrom(from); return *this; } - inline MinMaxExpr& operator=(MinMaxExpr&& from) noexcept { + inline CaseWhen& operator=(CaseWhen&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -18792,229 +22196,224 @@ class MinMaxExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const MinMaxExpr& default_instance() { + static const CaseWhen& default_instance() { return *internal_default_instance(); } - static inline const MinMaxExpr* internal_default_instance() { - return reinterpret_cast( - &_MinMaxExpr_default_instance_); + static inline const CaseWhen* internal_default_instance() { + return reinterpret_cast( + &_CaseWhen_default_instance_); } static constexpr int kIndexInFileMessages = - 45; + 40; - friend void swap(MinMaxExpr& a, MinMaxExpr& b) { + friend void swap(CaseWhen& a, CaseWhen& b) { a.Swap(&b); } - inline void Swap(MinMaxExpr* other) { + inline void Swap(CaseWhen* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(MinMaxExpr* other) { + void UnsafeArenaSwap(CaseWhen* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - MinMaxExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CaseWhen* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const MinMaxExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const MinMaxExpr& from) { - MinMaxExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CaseWhen& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CaseWhen& from) { + CaseWhen::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(MinMaxExpr* other); + void InternalSwap(CaseWhen* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.MinMaxExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CaseWhen"; } protected: - explicit MinMaxExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CaseWhen(::google::protobuf::Arena* arena); + CaseWhen(::google::protobuf::Arena* arena, const CaseWhen& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 6, kXprFieldNumber = 1, - kMinmaxtypeFieldNumber = 2, - kMinmaxcollidFieldNumber = 3, - kInputcollidFieldNumber = 4, - kOpFieldNumber = 5, - kLocationFieldNumber = 7, + kExprFieldNumber = 2, + kResultFieldNumber = 3, + kLocationFieldNumber = 4, }; - // repeated .pg_query.Node args = 6 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - // uint32 minmaxtype = 2 [json_name = "minmaxtype"]; - void clear_minmaxtype(); - uint32_t minmaxtype() const; - void set_minmaxtype(uint32_t value); - private: - uint32_t _internal_minmaxtype() const; - void _internal_set_minmaxtype(uint32_t value); public: + // .pg_query.Node expr = 2 [json_name = "expr"]; + bool has_expr() const; + void clear_expr() ; + const ::pg_query::Node& expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); + ::pg_query::Node* mutable_expr(); + void set_allocated_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_expr(); - // uint32 minmaxcollid = 3 [json_name = "minmaxcollid"]; - void clear_minmaxcollid(); - uint32_t minmaxcollid() const; - void set_minmaxcollid(uint32_t value); private: - uint32_t _internal_minmaxcollid() const; - void _internal_set_minmaxcollid(uint32_t value); - public: + const ::pg_query::Node& _internal_expr() const; + ::pg_query::Node* _internal_mutable_expr(); - // uint32 inputcollid = 4 [json_name = "inputcollid"]; - void clear_inputcollid(); - uint32_t inputcollid() const; - void set_inputcollid(uint32_t value); - private: - uint32_t _internal_inputcollid() const; - void _internal_set_inputcollid(uint32_t value); public: + // .pg_query.Node result = 3 [json_name = "result"]; + bool has_result() const; + void clear_result() ; + const ::pg_query::Node& result() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_result(); + ::pg_query::Node* mutable_result(); + void set_allocated_result(::pg_query::Node* value); + void unsafe_arena_set_allocated_result(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_result(); - // .pg_query.MinMaxOp op = 5 [json_name = "op"]; - void clear_op(); - ::pg_query::MinMaxOp op() const; - void set_op(::pg_query::MinMaxOp value); private: - ::pg_query::MinMaxOp _internal_op() const; - void _internal_set_op(::pg_query::MinMaxOp value); + const ::pg_query::Node& _internal_result() const; + ::pg_query::Node* _internal_mutable_result(); + public: + // int32 location = 4 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.MinMaxExpr) + public: + // @@protoc_insertion_point(class_scope:pg_query.CaseWhen) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; ::pg_query::Node* xpr_; - uint32_t minmaxtype_; - uint32_t minmaxcollid_; - uint32_t inputcollid_; - int op_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::pg_query::Node* expr_; + ::pg_query::Node* result_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class SQLValueFunction final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SQLValueFunction) */ { +class ClusterStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ClusterStmt) */ { public: - inline SQLValueFunction() : SQLValueFunction(nullptr) {} - ~SQLValueFunction() override; - explicit PROTOBUF_CONSTEXPR SQLValueFunction(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ClusterStmt() : ClusterStmt(nullptr) {} + ~ClusterStmt() override; + template + explicit PROTOBUF_CONSTEXPR ClusterStmt(::google::protobuf::internal::ConstantInitialized); - SQLValueFunction(const SQLValueFunction& from); - SQLValueFunction(SQLValueFunction&& from) noexcept - : SQLValueFunction() { + inline ClusterStmt(const ClusterStmt& from) + : ClusterStmt(nullptr, from) {} + ClusterStmt(ClusterStmt&& from) noexcept + : ClusterStmt() { *this = ::std::move(from); } - inline SQLValueFunction& operator=(const SQLValueFunction& from) { + inline ClusterStmt& operator=(const ClusterStmt& from) { CopyFrom(from); return *this; } - inline SQLValueFunction& operator=(SQLValueFunction&& from) noexcept { + inline ClusterStmt& operator=(ClusterStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -19024,198 +22423,216 @@ class SQLValueFunction final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SQLValueFunction& default_instance() { + static const ClusterStmt& default_instance() { return *internal_default_instance(); } - static inline const SQLValueFunction* internal_default_instance() { - return reinterpret_cast( - &_SQLValueFunction_default_instance_); + static inline const ClusterStmt* internal_default_instance() { + return reinterpret_cast( + &_ClusterStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 46; + 227; - friend void swap(SQLValueFunction& a, SQLValueFunction& b) { + friend void swap(ClusterStmt& a, ClusterStmt& b) { a.Swap(&b); } - inline void Swap(SQLValueFunction* other) { + inline void Swap(ClusterStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SQLValueFunction* other) { + void UnsafeArenaSwap(ClusterStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - SQLValueFunction* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ClusterStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SQLValueFunction& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SQLValueFunction& from) { - SQLValueFunction::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ClusterStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ClusterStmt& from) { + ClusterStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SQLValueFunction* other); + void InternalSwap(ClusterStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SQLValueFunction"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ClusterStmt"; } protected: - explicit SQLValueFunction(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ClusterStmt(::google::protobuf::Arena* arena); + ClusterStmt(::google::protobuf::Arena* arena, const ClusterStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kOpFieldNumber = 2, - kTypeFieldNumber = 3, - kTypmodFieldNumber = 4, - kLocationFieldNumber = 5, + kParamsFieldNumber = 3, + kIndexnameFieldNumber = 2, + kRelationFieldNumber = 1, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + // repeated .pg_query.Node params = 3 [json_name = "params"]; + int params_size() const; private: - bool _internal_has_xpr() const; + int _internal_params_size() const; + public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void clear_params() ; + ::pg_query::Node* mutable_params(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_params(); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_params() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_params(); public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + const ::pg_query::Node& params(int index) const; + ::pg_query::Node* add_params(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + params() const; + // string indexname = 2 [json_name = "indexname"]; + void clear_indexname() ; + const std::string& indexname() const; + template + void set_indexname(Arg_&& arg, Args_... args); + std::string* mutable_indexname(); + PROTOBUF_NODISCARD std::string* release_indexname(); + void set_allocated_indexname(std::string* value); - // .pg_query.SQLValueFunctionOp op = 2 [json_name = "op"]; - void clear_op(); - ::pg_query::SQLValueFunctionOp op() const; - void set_op(::pg_query::SQLValueFunctionOp value); private: - ::pg_query::SQLValueFunctionOp _internal_op() const; - void _internal_set_op(::pg_query::SQLValueFunctionOp value); - public: + const std::string& _internal_indexname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_indexname( + const std::string& value); + std::string* _internal_mutable_indexname(); - // uint32 type = 3 [json_name = "type"]; - void clear_type(); - uint32_t type() const; - void set_type(uint32_t value); - private: - uint32_t _internal_type() const; - void _internal_set_type(uint32_t value); public: + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // int32 typmod = 4 [json_name = "typmod"]; - void clear_typmod(); - int32_t typmod() const; - void set_typmod(int32_t value); private: - int32_t _internal_typmod() const; - void _internal_set_typmod(int32_t value); - public: + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.SQLValueFunction) + // @@protoc_insertion_point(class_scope:pg_query.ClusterStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 38, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - int op_; - uint32_t type_; - int32_t typmod_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > params_; + ::google::protobuf::internal::ArenaStringPtr indexname_; + ::pg_query::RangeVar* relation_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class XmlExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.XmlExpr) */ { +class CoalesceExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CoalesceExpr) */ { public: - inline XmlExpr() : XmlExpr(nullptr) {} - ~XmlExpr() override; - explicit PROTOBUF_CONSTEXPR XmlExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CoalesceExpr() : CoalesceExpr(nullptr) {} + ~CoalesceExpr() override; + template + explicit PROTOBUF_CONSTEXPR CoalesceExpr(::google::protobuf::internal::ConstantInitialized); - XmlExpr(const XmlExpr& from); - XmlExpr(XmlExpr&& from) noexcept - : XmlExpr() { + inline CoalesceExpr(const CoalesceExpr& from) + : CoalesceExpr(nullptr, from) {} + CoalesceExpr(CoalesceExpr&& from) noexcept + : CoalesceExpr() { *this = ::std::move(from); } - inline XmlExpr& operator=(const XmlExpr& from) { + inline CoalesceExpr& operator=(const CoalesceExpr& from) { CopyFrom(from); return *this; } - inline XmlExpr& operator=(XmlExpr&& from) noexcept { + inline CoalesceExpr& operator=(CoalesceExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -19225,285 +22642,234 @@ class XmlExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const XmlExpr& default_instance() { + static const CoalesceExpr& default_instance() { return *internal_default_instance(); } - static inline const XmlExpr* internal_default_instance() { - return reinterpret_cast( - &_XmlExpr_default_instance_); + static inline const CoalesceExpr* internal_default_instance() { + return reinterpret_cast( + &_CoalesceExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 47; + 45; - friend void swap(XmlExpr& a, XmlExpr& b) { + friend void swap(CoalesceExpr& a, CoalesceExpr& b) { a.Swap(&b); } - inline void Swap(XmlExpr* other) { + inline void Swap(CoalesceExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(XmlExpr* other) { + void UnsafeArenaSwap(CoalesceExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - XmlExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CoalesceExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const XmlExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const XmlExpr& from) { - XmlExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CoalesceExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CoalesceExpr& from) { + CoalesceExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(XmlExpr* other); + void InternalSwap(CoalesceExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.XmlExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CoalesceExpr"; } protected: - explicit XmlExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CoalesceExpr(::google::protobuf::Arena* arena); + CoalesceExpr(::google::protobuf::Arena* arena, const CoalesceExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNamedArgsFieldNumber = 4, - kArgNamesFieldNumber = 5, - kArgsFieldNumber = 6, - kNameFieldNumber = 3, + kArgsFieldNumber = 4, kXprFieldNumber = 1, - kOpFieldNumber = 2, - kXmloptionFieldNumber = 7, - kTypeFieldNumber = 8, - kTypmodFieldNumber = 9, - kLocationFieldNumber = 10, + kCoalescetypeFieldNumber = 2, + kCoalescecollidFieldNumber = 3, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node named_args = 4 [json_name = "named_args"]; - int named_args_size() const; - private: - int _internal_named_args_size() const; - public: - void clear_named_args(); - ::pg_query::Node* mutable_named_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_named_args(); - private: - const ::pg_query::Node& _internal_named_args(int index) const; - ::pg_query::Node* _internal_add_named_args(); - public: - const ::pg_query::Node& named_args(int index) const; - ::pg_query::Node* add_named_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - named_args() const; - - // repeated .pg_query.Node arg_names = 5 [json_name = "arg_names"]; - int arg_names_size() const; - private: - int _internal_arg_names_size() const; - public: - void clear_arg_names(); - ::pg_query::Node* mutable_arg_names(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_arg_names(); - private: - const ::pg_query::Node& _internal_arg_names(int index) const; - ::pg_query::Node* _internal_add_arg_names(); - public: - const ::pg_query::Node& arg_names(int index) const; - ::pg_query::Node* add_arg_names(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - arg_names() const; - - // repeated .pg_query.Node args = 6 [json_name = "args"]; + // repeated .pg_query.Node args = 4 [json_name = "args"]; int args_size() const; private: int _internal_args_size() const; + public: - void clear_args(); + void clear_args() ; ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_args(); private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: const ::pg_query::Node& args(int index) const; ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& args() const; - - // string name = 3 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); - private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: - // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.XmlExprOp op = 2 [json_name = "op"]; - void clear_op(); - ::pg_query::XmlExprOp op() const; - void set_op(::pg_query::XmlExprOp value); - private: - ::pg_query::XmlExprOp _internal_op() const; - void _internal_set_op(::pg_query::XmlExprOp value); public: + // uint32 coalescetype = 2 [json_name = "coalescetype"]; + void clear_coalescetype() ; + ::uint32_t coalescetype() const; + void set_coalescetype(::uint32_t value); - // .pg_query.XmlOptionType xmloption = 7 [json_name = "xmloption"]; - void clear_xmloption(); - ::pg_query::XmlOptionType xmloption() const; - void set_xmloption(::pg_query::XmlOptionType value); private: - ::pg_query::XmlOptionType _internal_xmloption() const; - void _internal_set_xmloption(::pg_query::XmlOptionType value); - public: + ::uint32_t _internal_coalescetype() const; + void _internal_set_coalescetype(::uint32_t value); - // uint32 type = 8 [json_name = "type"]; - void clear_type(); - uint32_t type() const; - void set_type(uint32_t value); - private: - uint32_t _internal_type() const; - void _internal_set_type(uint32_t value); public: + // uint32 coalescecollid = 3 [json_name = "coalescecollid"]; + void clear_coalescecollid() ; + ::uint32_t coalescecollid() const; + void set_coalescecollid(::uint32_t value); - // int32 typmod = 9 [json_name = "typmod"]; - void clear_typmod(); - int32_t typmod() const; - void set_typmod(int32_t value); private: - int32_t _internal_typmod() const; - void _internal_set_typmod(int32_t value); + ::uint32_t _internal_coalescecollid() const; + void _internal_set_coalescecollid(::uint32_t value); + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 location = 10 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.XmlExpr) + public: + // @@protoc_insertion_point(class_scope:pg_query.CoalesceExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > named_args_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > arg_names_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; ::pg_query::Node* xpr_; - int op_; - int xmloption_; - uint32_t type_; - int32_t typmod_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::uint32_t coalescetype_; + ::uint32_t coalescecollid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class NullTest final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.NullTest) */ { +class CoerceToDomain final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CoerceToDomain) */ { public: - inline NullTest() : NullTest(nullptr) {} - ~NullTest() override; - explicit PROTOBUF_CONSTEXPR NullTest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CoerceToDomain() : CoerceToDomain(nullptr) {} + ~CoerceToDomain() override; + template + explicit PROTOBUF_CONSTEXPR CoerceToDomain(::google::protobuf::internal::ConstantInitialized); - NullTest(const NullTest& from); - NullTest(NullTest&& from) noexcept - : NullTest() { + inline CoerceToDomain(const CoerceToDomain& from) + : CoerceToDomain(nullptr, from) {} + CoerceToDomain(CoerceToDomain&& from) noexcept + : CoerceToDomain() { *this = ::std::move(from); } - inline NullTest& operator=(const NullTest& from) { + inline CoerceToDomain& operator=(const CoerceToDomain& from) { CopyFrom(from); return *this; } - inline NullTest& operator=(NullTest&& from) noexcept { + inline CoerceToDomain& operator=(CoerceToDomain&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -19513,90 +22879,99 @@ class NullTest final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const NullTest& default_instance() { + static const CoerceToDomain& default_instance() { return *internal_default_instance(); } - static inline const NullTest* internal_default_instance() { - return reinterpret_cast( - &_NullTest_default_instance_); + static inline const CoerceToDomain* internal_default_instance() { + return reinterpret_cast( + &_CoerceToDomain_default_instance_); } static constexpr int kIndexInFileMessages = - 48; + 56; - friend void swap(NullTest& a, NullTest& b) { + friend void swap(CoerceToDomain& a, CoerceToDomain& b) { a.Swap(&b); } - inline void Swap(NullTest* other) { + inline void Swap(CoerceToDomain* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(NullTest* other) { + void UnsafeArenaSwap(CoerceToDomain* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - NullTest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CoerceToDomain* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const NullTest& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const NullTest& from) { - NullTest::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CoerceToDomain& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CoerceToDomain& from) { + CoerceToDomain::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(NullTest* other); + void InternalSwap(CoerceToDomain* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.NullTest"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CoerceToDomain"; } protected: - explicit NullTest(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CoerceToDomain(::google::protobuf::Arena* arena); + CoerceToDomain(::google::protobuf::Arena* arena, const CoerceToDomain& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- @@ -19605,115 +22980,154 @@ class NullTest final : enum : int { kXprFieldNumber = 1, kArgFieldNumber = 2, - kNulltesttypeFieldNumber = 3, - kArgisrowFieldNumber = 4, - kLocationFieldNumber = 5, + kResulttypeFieldNumber = 3, + kResulttypmodFieldNumber = 4, + kResultcollidFieldNumber = 5, + kCoercionformatFieldNumber = 6, + kLocationFieldNumber = 7, }; // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + public: // .pg_query.Node arg = 2 [json_name = "arg"]; bool has_arg() const; - private: - bool _internal_has_arg() const; - public: - void clear_arg(); + void clear_arg() ; const ::pg_query::Node& arg() const; PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); + private: const ::pg_query::Node& _internal_arg() const; ::pg_query::Node* _internal_mutable_arg(); + public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + // uint32 resulttype = 3 [json_name = "resulttype"]; + void clear_resulttype() ; + ::uint32_t resulttype() const; + void set_resulttype(::uint32_t value); - // .pg_query.NullTestType nulltesttype = 3 [json_name = "nulltesttype"]; - void clear_nulltesttype(); - ::pg_query::NullTestType nulltesttype() const; - void set_nulltesttype(::pg_query::NullTestType value); private: - ::pg_query::NullTestType _internal_nulltesttype() const; - void _internal_set_nulltesttype(::pg_query::NullTestType value); + ::uint32_t _internal_resulttype() const; + void _internal_set_resulttype(::uint32_t value); + public: + // int32 resulttypmod = 4 [json_name = "resulttypmod"]; + void clear_resulttypmod() ; + ::int32_t resulttypmod() const; + void set_resulttypmod(::int32_t value); - // bool argisrow = 4 [json_name = "argisrow"]; - void clear_argisrow(); - bool argisrow() const; - void set_argisrow(bool value); private: - bool _internal_argisrow() const; - void _internal_set_argisrow(bool value); + ::int32_t _internal_resulttypmod() const; + void _internal_set_resulttypmod(::int32_t value); + public: + // uint32 resultcollid = 5 [json_name = "resultcollid"]; + void clear_resultcollid() ; + ::uint32_t resultcollid() const; + void set_resultcollid(::uint32_t value); + + private: + ::uint32_t _internal_resultcollid() const; + void _internal_set_resultcollid(::uint32_t value); + + public: + // .pg_query.CoercionForm coercionformat = 6 [json_name = "coercionformat"]; + void clear_coercionformat() ; + ::pg_query::CoercionForm coercionformat() const; + void set_coercionformat(::pg_query::CoercionForm value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + ::pg_query::CoercionForm _internal_coercionformat() const; + void _internal_set_coercionformat(::pg_query::CoercionForm value); + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.NullTest) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CoerceToDomain) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; ::pg_query::Node* xpr_; ::pg_query::Node* arg_; - int nulltesttype_; - bool argisrow_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::uint32_t resulttype_; + ::int32_t resulttypmod_; + ::uint32_t resultcollid_; + int coercionformat_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class BooleanTest final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.BooleanTest) */ { +class CoerceToDomainValue final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CoerceToDomainValue) */ { public: - inline BooleanTest() : BooleanTest(nullptr) {} - ~BooleanTest() override; - explicit PROTOBUF_CONSTEXPR BooleanTest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CoerceToDomainValue() : CoerceToDomainValue(nullptr) {} + ~CoerceToDomainValue() override; + template + explicit PROTOBUF_CONSTEXPR CoerceToDomainValue(::google::protobuf::internal::ConstantInitialized); - BooleanTest(const BooleanTest& from); - BooleanTest(BooleanTest&& from) noexcept - : BooleanTest() { + inline CoerceToDomainValue(const CoerceToDomainValue& from) + : CoerceToDomainValue(nullptr, from) {} + CoerceToDomainValue(CoerceToDomainValue&& from) noexcept + : CoerceToDomainValue() { *this = ::std::move(from); } - inline BooleanTest& operator=(const BooleanTest& from) { + inline CoerceToDomainValue& operator=(const CoerceToDomainValue& from) { CopyFrom(from); return *this; } - inline BooleanTest& operator=(BooleanTest&& from) noexcept { + inline CoerceToDomainValue& operator=(CoerceToDomainValue&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -19723,90 +23137,99 @@ class BooleanTest final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const BooleanTest& default_instance() { + static const CoerceToDomainValue& default_instance() { return *internal_default_instance(); } - static inline const BooleanTest* internal_default_instance() { - return reinterpret_cast( - &_BooleanTest_default_instance_); + static inline const CoerceToDomainValue* internal_default_instance() { + return reinterpret_cast( + &_CoerceToDomainValue_default_instance_); } static constexpr int kIndexInFileMessages = - 49; + 57; - friend void swap(BooleanTest& a, BooleanTest& b) { + friend void swap(CoerceToDomainValue& a, CoerceToDomainValue& b) { a.Swap(&b); } - inline void Swap(BooleanTest* other) { + inline void Swap(CoerceToDomainValue* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(BooleanTest* other) { + void UnsafeArenaSwap(CoerceToDomainValue* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - BooleanTest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CoerceToDomainValue* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const BooleanTest& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const BooleanTest& from) { - BooleanTest::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CoerceToDomainValue& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CoerceToDomainValue& from) { + CoerceToDomainValue::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(BooleanTest* other); + void InternalSwap(CoerceToDomainValue* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.BooleanTest"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CoerceToDomainValue"; } protected: - explicit BooleanTest(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CoerceToDomainValue(::google::protobuf::Arena* arena); + CoerceToDomainValue(::google::protobuf::Arena* arena, const CoerceToDomainValue& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- @@ -19814,105 +23237,126 @@ class BooleanTest final : enum : int { kXprFieldNumber = 1, - kArgFieldNumber = 2, - kBooltesttypeFieldNumber = 3, - kLocationFieldNumber = 4, + kTypeIdFieldNumber = 2, + kTypeModFieldNumber = 3, + kCollationFieldNumber = 4, + kLocationFieldNumber = 5, }; // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // uint32 type_id = 2 [json_name = "typeId"]; + void clear_type_id() ; + ::uint32_t type_id() const; + void set_type_id(::uint32_t value); - // .pg_query.Node arg = 2 [json_name = "arg"]; - bool has_arg() const; private: - bool _internal_has_arg() const; + ::uint32_t _internal_type_id() const; + void _internal_set_type_id(::uint32_t value); + public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + // int32 type_mod = 3 [json_name = "typeMod"]; + void clear_type_mod() ; + ::int32_t type_mod() const; + void set_type_mod(::int32_t value); + private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); + ::int32_t _internal_type_mod() const; + void _internal_set_type_mod(::int32_t value); + public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + // uint32 collation = 4 [json_name = "collation"]; + void clear_collation() ; + ::uint32_t collation() const; + void set_collation(::uint32_t value); - // .pg_query.BoolTestType booltesttype = 3 [json_name = "booltesttype"]; - void clear_booltesttype(); - ::pg_query::BoolTestType booltesttype() const; - void set_booltesttype(::pg_query::BoolTestType value); private: - ::pg_query::BoolTestType _internal_booltesttype() const; - void _internal_set_booltesttype(::pg_query::BoolTestType value); + ::uint32_t _internal_collation() const; + void _internal_set_collation(::uint32_t value); + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 location = 4 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.BooleanTest) + public: + // @@protoc_insertion_point(class_scope:pg_query.CoerceToDomainValue) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; ::pg_query::Node* xpr_; - ::pg_query::Node* arg_; - int booltesttype_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::uint32_t type_id_; + ::int32_t type_mod_; + ::uint32_t collation_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CoerceToDomain final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CoerceToDomain) */ { +class CoerceViaIO final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CoerceViaIO) */ { public: - inline CoerceToDomain() : CoerceToDomain(nullptr) {} - ~CoerceToDomain() override; - explicit PROTOBUF_CONSTEXPR CoerceToDomain(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CoerceViaIO() : CoerceViaIO(nullptr) {} + ~CoerceViaIO() override; + template + explicit PROTOBUF_CONSTEXPR CoerceViaIO(::google::protobuf::internal::ConstantInitialized); - CoerceToDomain(const CoerceToDomain& from); - CoerceToDomain(CoerceToDomain&& from) noexcept - : CoerceToDomain() { + inline CoerceViaIO(const CoerceViaIO& from) + : CoerceViaIO(nullptr, from) {} + CoerceViaIO(CoerceViaIO&& from) noexcept + : CoerceViaIO() { *this = ::std::move(from); } - inline CoerceToDomain& operator=(const CoerceToDomain& from) { + inline CoerceViaIO& operator=(const CoerceViaIO& from) { CopyFrom(from); return *this; } - inline CoerceToDomain& operator=(CoerceToDomain&& from) noexcept { + inline CoerceViaIO& operator=(CoerceViaIO&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -19922,90 +23366,99 @@ class CoerceToDomain final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CoerceToDomain& default_instance() { + static const CoerceViaIO& default_instance() { return *internal_default_instance(); } - static inline const CoerceToDomain* internal_default_instance() { - return reinterpret_cast( - &_CoerceToDomain_default_instance_); + static inline const CoerceViaIO* internal_default_instance() { + return reinterpret_cast( + &_CoerceViaIO_default_instance_); } static constexpr int kIndexInFileMessages = - 50; + 35; - friend void swap(CoerceToDomain& a, CoerceToDomain& b) { + friend void swap(CoerceViaIO& a, CoerceViaIO& b) { a.Swap(&b); } - inline void Swap(CoerceToDomain* other) { + inline void Swap(CoerceViaIO* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CoerceToDomain* other) { + void UnsafeArenaSwap(CoerceViaIO* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CoerceToDomain* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CoerceViaIO* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CoerceToDomain& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CoerceToDomain& from) { - CoerceToDomain::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CoerceViaIO& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CoerceViaIO& from) { + CoerceViaIO::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CoerceToDomain* other); + void InternalSwap(CoerceViaIO* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CoerceToDomain"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CoerceViaIO"; } protected: - explicit CoerceToDomain(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CoerceViaIO(::google::protobuf::Arena* arena); + CoerceViaIO(::google::protobuf::Arena* arena, const CoerceViaIO& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- @@ -20015,136 +23468,141 @@ class CoerceToDomain final : kXprFieldNumber = 1, kArgFieldNumber = 2, kResulttypeFieldNumber = 3, - kResulttypmodFieldNumber = 4, - kResultcollidFieldNumber = 5, - kCoercionformatFieldNumber = 6, - kLocationFieldNumber = 7, + kResultcollidFieldNumber = 4, + kCoerceformatFieldNumber = 5, + kLocationFieldNumber = 6, }; // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + public: // .pg_query.Node arg = 2 [json_name = "arg"]; bool has_arg() const; - private: - bool _internal_has_arg() const; - public: - void clear_arg(); + void clear_arg() ; const ::pg_query::Node& arg() const; PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); + private: const ::pg_query::Node& _internal_arg() const; ::pg_query::Node* _internal_mutable_arg(); - public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); - // uint32 resulttype = 3 [json_name = "resulttype"]; - void clear_resulttype(); - uint32_t resulttype() const; - void set_resulttype(uint32_t value); - private: - uint32_t _internal_resulttype() const; - void _internal_set_resulttype(uint32_t value); public: + // uint32 resulttype = 3 [json_name = "resulttype"]; + void clear_resulttype() ; + ::uint32_t resulttype() const; + void set_resulttype(::uint32_t value); - // int32 resulttypmod = 4 [json_name = "resulttypmod"]; - void clear_resulttypmod(); - int32_t resulttypmod() const; - void set_resulttypmod(int32_t value); private: - int32_t _internal_resulttypmod() const; - void _internal_set_resulttypmod(int32_t value); + ::uint32_t _internal_resulttype() const; + void _internal_set_resulttype(::uint32_t value); + public: + // uint32 resultcollid = 4 [json_name = "resultcollid"]; + void clear_resultcollid() ; + ::uint32_t resultcollid() const; + void set_resultcollid(::uint32_t value); - // uint32 resultcollid = 5 [json_name = "resultcollid"]; - void clear_resultcollid(); - uint32_t resultcollid() const; - void set_resultcollid(uint32_t value); private: - uint32_t _internal_resultcollid() const; - void _internal_set_resultcollid(uint32_t value); + ::uint32_t _internal_resultcollid() const; + void _internal_set_resultcollid(::uint32_t value); + public: + // .pg_query.CoercionForm coerceformat = 5 [json_name = "coerceformat"]; + void clear_coerceformat() ; + ::pg_query::CoercionForm coerceformat() const; + void set_coerceformat(::pg_query::CoercionForm value); - // .pg_query.CoercionForm coercionformat = 6 [json_name = "coercionformat"]; - void clear_coercionformat(); - ::pg_query::CoercionForm coercionformat() const; - void set_coercionformat(::pg_query::CoercionForm value); private: - ::pg_query::CoercionForm _internal_coercionformat() const; - void _internal_set_coercionformat(::pg_query::CoercionForm value); + ::pg_query::CoercionForm _internal_coerceformat() const; + void _internal_set_coerceformat(::pg_query::CoercionForm value); + public: + // int32 location = 6 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CoerceToDomain) + public: + // @@protoc_insertion_point(class_scope:pg_query.CoerceViaIO) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; ::pg_query::Node* xpr_; ::pg_query::Node* arg_; - uint32_t resulttype_; - int32_t resulttypmod_; - uint32_t resultcollid_; - int coercionformat_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::uint32_t resulttype_; + ::uint32_t resultcollid_; + int coerceformat_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CoerceToDomainValue final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CoerceToDomainValue) */ { +class CollateClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CollateClause) */ { public: - inline CoerceToDomainValue() : CoerceToDomainValue(nullptr) {} - ~CoerceToDomainValue() override; - explicit PROTOBUF_CONSTEXPR CoerceToDomainValue(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CollateClause() : CollateClause(nullptr) {} + ~CollateClause() override; + template + explicit PROTOBUF_CONSTEXPR CollateClause(::google::protobuf::internal::ConstantInitialized); - CoerceToDomainValue(const CoerceToDomainValue& from); - CoerceToDomainValue(CoerceToDomainValue&& from) noexcept - : CoerceToDomainValue() { + inline CollateClause(const CollateClause& from) + : CollateClause(nullptr, from) {} + CollateClause(CollateClause&& from) noexcept + : CollateClause() { *this = ::std::move(from); } - inline CoerceToDomainValue& operator=(const CoerceToDomainValue& from) { + inline CollateClause& operator=(const CollateClause& from) { CopyFrom(from); return *this; } - inline CoerceToDomainValue& operator=(CoerceToDomainValue&& from) noexcept { + inline CollateClause& operator=(CollateClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -20154,198 +23612,210 @@ class CoerceToDomainValue final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CoerceToDomainValue& default_instance() { + static const CollateClause& default_instance() { return *internal_default_instance(); } - static inline const CoerceToDomainValue* internal_default_instance() { - return reinterpret_cast( - &_CoerceToDomainValue_default_instance_); + static inline const CollateClause* internal_default_instance() { + return reinterpret_cast( + &_CollateClause_default_instance_); } static constexpr int kIndexInFileMessages = - 51; + 73; - friend void swap(CoerceToDomainValue& a, CoerceToDomainValue& b) { + friend void swap(CollateClause& a, CollateClause& b) { a.Swap(&b); } - inline void Swap(CoerceToDomainValue* other) { + inline void Swap(CollateClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CoerceToDomainValue* other) { + void UnsafeArenaSwap(CollateClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CoerceToDomainValue* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CollateClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CoerceToDomainValue& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CoerceToDomainValue& from) { - CoerceToDomainValue::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CollateClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CollateClause& from) { + CollateClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CoerceToDomainValue* other); + void InternalSwap(CollateClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CoerceToDomainValue"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CollateClause"; } protected: - explicit CoerceToDomainValue(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CollateClause(::google::protobuf::Arena* arena); + CollateClause(::google::protobuf::Arena* arena, const CollateClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kTypeIdFieldNumber = 2, - kTypeModFieldNumber = 3, - kCollationFieldNumber = 4, - kLocationFieldNumber = 5, + kCollnameFieldNumber = 2, + kArgFieldNumber = 1, + kLocationFieldNumber = 3, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + // repeated .pg_query.Node collname = 2 [json_name = "collname"]; + int collname_size() const; private: - bool _internal_has_xpr() const; + int _internal_collname_size() const; + public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void clear_collname() ; + ::pg_query::Node* mutable_collname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_collname(); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_collname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_collname(); public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + const ::pg_query::Node& collname(int index) const; + ::pg_query::Node* add_collname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + collname() const; + // .pg_query.Node arg = 1 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); - // uint32 type_id = 2 [json_name = "typeId"]; - void clear_type_id(); - uint32_t type_id() const; - void set_type_id(uint32_t value); private: - uint32_t _internal_type_id() const; - void _internal_set_type_id(uint32_t value); - public: + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); - // int32 type_mod = 3 [json_name = "typeMod"]; - void clear_type_mod(); - int32_t type_mod() const; - void set_type_mod(int32_t value); - private: - int32_t _internal_type_mod() const; - void _internal_set_type_mod(int32_t value); public: + // int32 location = 3 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // uint32 collation = 4 [json_name = "collation"]; - void clear_collation(); - uint32_t collation() const; - void set_collation(uint32_t value); private: - uint32_t _internal_collation() const; - void _internal_set_collation(uint32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.CoerceToDomainValue) + // @@protoc_insertion_point(class_scope:pg_query.CollateClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - uint32_t type_id_; - int32_t type_mod_; - uint32_t collation_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > collname_; + ::pg_query::Node* arg_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class SetToDefault final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SetToDefault) */ { +class CollateExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CollateExpr) */ { public: - inline SetToDefault() : SetToDefault(nullptr) {} - ~SetToDefault() override; - explicit PROTOBUF_CONSTEXPR SetToDefault(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CollateExpr() : CollateExpr(nullptr) {} + ~CollateExpr() override; + template + explicit PROTOBUF_CONSTEXPR CollateExpr(::google::protobuf::internal::ConstantInitialized); - SetToDefault(const SetToDefault& from); - SetToDefault(SetToDefault&& from) noexcept - : SetToDefault() { + inline CollateExpr(const CollateExpr& from) + : CollateExpr(nullptr, from) {} + CollateExpr(CollateExpr&& from) noexcept + : CollateExpr() { *this = ::std::move(from); } - inline SetToDefault& operator=(const SetToDefault& from) { + inline CollateExpr& operator=(const CollateExpr& from) { CopyFrom(from); return *this; } - inline SetToDefault& operator=(SetToDefault&& from) noexcept { + inline CollateExpr& operator=(CollateExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -20355,90 +23825,99 @@ class SetToDefault final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SetToDefault& default_instance() { + static const CollateExpr& default_instance() { return *internal_default_instance(); } - static inline const SetToDefault* internal_default_instance() { - return reinterpret_cast( - &_SetToDefault_default_instance_); + static inline const CollateExpr* internal_default_instance() { + return reinterpret_cast( + &_CollateExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 52; + 38; - friend void swap(SetToDefault& a, SetToDefault& b) { + friend void swap(CollateExpr& a, CollateExpr& b) { a.Swap(&b); } - inline void Swap(SetToDefault* other) { + inline void Swap(CollateExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SetToDefault* other) { + void UnsafeArenaSwap(CollateExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - SetToDefault* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CollateExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SetToDefault& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SetToDefault& from) { - SetToDefault::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CollateExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CollateExpr& from) { + CollateExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SetToDefault* other); + void InternalSwap(CollateExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SetToDefault"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CollateExpr"; } protected: - explicit SetToDefault(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CollateExpr(::google::protobuf::Arena* arena); + CollateExpr(::google::protobuf::Arena* arena, const CollateExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- @@ -20446,107 +23925,119 @@ class SetToDefault final : enum : int { kXprFieldNumber = 1, - kTypeIdFieldNumber = 2, - kTypeModFieldNumber = 3, - kCollationFieldNumber = 4, - kLocationFieldNumber = 5, + kArgFieldNumber = 2, + kCollOidFieldNumber = 3, + kLocationFieldNumber = 4, }; // .pg_query.Node xpr = 1 [json_name = "xpr"]; bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); + void clear_xpr() ; const ::pg_query::Node& xpr() const; PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: const ::pg_query::Node& _internal_xpr() const; ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); - // uint32 type_id = 2 [json_name = "typeId"]; - void clear_type_id(); - uint32_t type_id() const; - void set_type_id(uint32_t value); - private: - uint32_t _internal_type_id() const; - void _internal_set_type_id(uint32_t value); public: + // .pg_query.Node arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); - // int32 type_mod = 3 [json_name = "typeMod"]; - void clear_type_mod(); - int32_t type_mod() const; - void set_type_mod(int32_t value); private: - int32_t _internal_type_mod() const; - void _internal_set_type_mod(int32_t value); + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + public: + // uint32 coll_oid = 3 [json_name = "collOid"]; + void clear_coll_oid() ; + ::uint32_t coll_oid() const; + void set_coll_oid(::uint32_t value); - // uint32 collation = 4 [json_name = "collation"]; - void clear_collation(); - uint32_t collation() const; - void set_collation(uint32_t value); private: - uint32_t _internal_collation() const; - void _internal_set_collation(uint32_t value); + ::uint32_t _internal_coll_oid() const; + void _internal_set_coll_oid(::uint32_t value); + public: + // int32 location = 4 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.SetToDefault) + public: + // @@protoc_insertion_point(class_scope:pg_query.CollateExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; ::pg_query::Node* xpr_; - uint32_t type_id_; - int32_t type_mod_; - uint32_t collation_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::pg_query::Node* arg_; + ::uint32_t coll_oid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CurrentOfExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CurrentOfExpr) */ { +class ColumnDef final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ColumnDef) */ { public: - inline CurrentOfExpr() : CurrentOfExpr(nullptr) {} - ~CurrentOfExpr() override; - explicit PROTOBUF_CONSTEXPR CurrentOfExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ColumnDef() : ColumnDef(nullptr) {} + ~ColumnDef() override; + template + explicit PROTOBUF_CONSTEXPR ColumnDef(::google::protobuf::internal::ConstantInitialized); - CurrentOfExpr(const CurrentOfExpr& from); - CurrentOfExpr(CurrentOfExpr&& from) noexcept - : CurrentOfExpr() { + inline ColumnDef(const ColumnDef& from) + : ColumnDef(nullptr, from) {} + ColumnDef(ColumnDef&& from) noexcept + : ColumnDef() { *this = ::std::move(from); } - inline CurrentOfExpr& operator=(const CurrentOfExpr& from) { + inline ColumnDef& operator=(const ColumnDef& from) { CopyFrom(from); return *this; } - inline CurrentOfExpr& operator=(CurrentOfExpr&& from) noexcept { + inline ColumnDef& operator=(ColumnDef&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -20556,192 +24047,466 @@ class CurrentOfExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CurrentOfExpr& default_instance() { + static const ColumnDef& default_instance() { return *internal_default_instance(); } - static inline const CurrentOfExpr* internal_default_instance() { - return reinterpret_cast( - &_CurrentOfExpr_default_instance_); + static inline const ColumnDef* internal_default_instance() { + return reinterpret_cast( + &_ColumnDef_default_instance_); } static constexpr int kIndexInFileMessages = - 53; + 89; - friend void swap(CurrentOfExpr& a, CurrentOfExpr& b) { + friend void swap(ColumnDef& a, ColumnDef& b) { a.Swap(&b); } - inline void Swap(CurrentOfExpr* other) { + inline void Swap(ColumnDef* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CurrentOfExpr* other) { + void UnsafeArenaSwap(ColumnDef* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CurrentOfExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ColumnDef* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CurrentOfExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CurrentOfExpr& from) { - CurrentOfExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ColumnDef& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ColumnDef& from) { + ColumnDef::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(ColumnDef* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ColumnDef"; + } + protected: + explicit ColumnDef(::google::protobuf::Arena* arena); + ColumnDef(::google::protobuf::Arena* arena, const ColumnDef& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kConstraintsFieldNumber = 17, + kFdwoptionsFieldNumber = 18, + kColnameFieldNumber = 1, + kCompressionFieldNumber = 3, + kStorageFieldNumber = 8, + kStorageNameFieldNumber = 9, + kIdentityFieldNumber = 12, + kGeneratedFieldNumber = 14, + kTypeNameFieldNumber = 2, + kRawDefaultFieldNumber = 10, + kCookedDefaultFieldNumber = 11, + kIdentitySequenceFieldNumber = 13, + kCollClauseFieldNumber = 15, + kInhcountFieldNumber = 4, + kIsLocalFieldNumber = 5, + kIsNotNullFieldNumber = 6, + kIsFromTypeFieldNumber = 7, + kCollOidFieldNumber = 16, + kLocationFieldNumber = 19, + }; + // repeated .pg_query.Node constraints = 17 [json_name = "constraints"]; + int constraints_size() const; + private: + int _internal_constraints_size() const; + + public: + void clear_constraints() ; + ::pg_query::Node* mutable_constraints(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_constraints(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_constraints() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_constraints(); + public: + const ::pg_query::Node& constraints(int index) const; + ::pg_query::Node* add_constraints(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + constraints() const; + // repeated .pg_query.Node fdwoptions = 18 [json_name = "fdwoptions"]; + int fdwoptions_size() const; + private: + int _internal_fdwoptions_size() const; + + public: + void clear_fdwoptions() ; + ::pg_query::Node* mutable_fdwoptions(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_fdwoptions(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_fdwoptions() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_fdwoptions(); + public: + const ::pg_query::Node& fdwoptions(int index) const; + ::pg_query::Node* add_fdwoptions(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + fdwoptions() const; + // string colname = 1 [json_name = "colname"]; + void clear_colname() ; + const std::string& colname() const; + template + void set_colname(Arg_&& arg, Args_... args); + std::string* mutable_colname(); + PROTOBUF_NODISCARD std::string* release_colname(); + void set_allocated_colname(std::string* value); + + private: + const std::string& _internal_colname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_colname( + const std::string& value); + std::string* _internal_mutable_colname(); + + public: + // string compression = 3 [json_name = "compression"]; + void clear_compression() ; + const std::string& compression() const; + template + void set_compression(Arg_&& arg, Args_... args); + std::string* mutable_compression(); + PROTOBUF_NODISCARD std::string* release_compression(); + void set_allocated_compression(std::string* value); + + private: + const std::string& _internal_compression() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_compression( + const std::string& value); + std::string* _internal_mutable_compression(); + + public: + // string storage = 8 [json_name = "storage"]; + void clear_storage() ; + const std::string& storage() const; + template + void set_storage(Arg_&& arg, Args_... args); + std::string* mutable_storage(); + PROTOBUF_NODISCARD std::string* release_storage(); + void set_allocated_storage(std::string* value); + + private: + const std::string& _internal_storage() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_storage( + const std::string& value); + std::string* _internal_mutable_storage(); + + public: + // string storage_name = 9 [json_name = "storage_name"]; + void clear_storage_name() ; + const std::string& storage_name() const; + template + void set_storage_name(Arg_&& arg, Args_... args); + std::string* mutable_storage_name(); + PROTOBUF_NODISCARD std::string* release_storage_name(); + void set_allocated_storage_name(std::string* value); + + private: + const std::string& _internal_storage_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_storage_name( + const std::string& value); + std::string* _internal_mutable_storage_name(); + + public: + // string identity = 12 [json_name = "identity"]; + void clear_identity() ; + const std::string& identity() const; + template + void set_identity(Arg_&& arg, Args_... args); + std::string* mutable_identity(); + PROTOBUF_NODISCARD std::string* release_identity(); + void set_allocated_identity(std::string* value); + + private: + const std::string& _internal_identity() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_identity( + const std::string& value); + std::string* _internal_mutable_identity(); + + public: + // string generated = 14 [json_name = "generated"]; + void clear_generated() ; + const std::string& generated() const; + template + void set_generated(Arg_&& arg, Args_... args); + std::string* mutable_generated(); + PROTOBUF_NODISCARD std::string* release_generated(); + void set_allocated_generated(std::string* value); + + private: + const std::string& _internal_generated() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_generated( + const std::string& value); + std::string* _internal_mutable_generated(); + + public: + // .pg_query.TypeName type_name = 2 [json_name = "typeName"]; + bool has_type_name() const; + void clear_type_name() ; + const ::pg_query::TypeName& type_name() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); + ::pg_query::TypeName* mutable_type_name(); + void set_allocated_type_name(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_type_name(); + + private: + const ::pg_query::TypeName& _internal_type_name() const; + ::pg_query::TypeName* _internal_mutable_type_name(); + + public: + // .pg_query.Node raw_default = 10 [json_name = "raw_default"]; + bool has_raw_default() const; + void clear_raw_default() ; + const ::pg_query::Node& raw_default() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_raw_default(); + ::pg_query::Node* mutable_raw_default(); + void set_allocated_raw_default(::pg_query::Node* value); + void unsafe_arena_set_allocated_raw_default(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_raw_default(); + + private: + const ::pg_query::Node& _internal_raw_default() const; + ::pg_query::Node* _internal_mutable_raw_default(); + + public: + // .pg_query.Node cooked_default = 11 [json_name = "cooked_default"]; + bool has_cooked_default() const; + void clear_cooked_default() ; + const ::pg_query::Node& cooked_default() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_cooked_default(); + ::pg_query::Node* mutable_cooked_default(); + void set_allocated_cooked_default(::pg_query::Node* value); + void unsafe_arena_set_allocated_cooked_default(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_cooked_default(); + + private: + const ::pg_query::Node& _internal_cooked_default() const; + ::pg_query::Node* _internal_mutable_cooked_default(); + + public: + // .pg_query.RangeVar identity_sequence = 13 [json_name = "identitySequence"]; + bool has_identity_sequence() const; + void clear_identity_sequence() ; + const ::pg_query::RangeVar& identity_sequence() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_identity_sequence(); + ::pg_query::RangeVar* mutable_identity_sequence(); + void set_allocated_identity_sequence(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_identity_sequence(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_identity_sequence(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CurrentOfExpr* other); + const ::pg_query::RangeVar& _internal_identity_sequence() const; + ::pg_query::RangeVar* _internal_mutable_identity_sequence(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CurrentOfExpr"; - } - protected: - explicit CurrentOfExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.CollateClause coll_clause = 15 [json_name = "collClause"]; + bool has_coll_clause() const; + void clear_coll_clause() ; + const ::pg_query::CollateClause& coll_clause() const; + PROTOBUF_NODISCARD ::pg_query::CollateClause* release_coll_clause(); + ::pg_query::CollateClause* mutable_coll_clause(); + void set_allocated_coll_clause(::pg_query::CollateClause* value); + void unsafe_arena_set_allocated_coll_clause(::pg_query::CollateClause* value); + ::pg_query::CollateClause* unsafe_arena_release_coll_clause(); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + private: + const ::pg_query::CollateClause& _internal_coll_clause() const; + ::pg_query::CollateClause* _internal_mutable_coll_clause(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + // int32 inhcount = 4 [json_name = "inhcount"]; + void clear_inhcount() ; + ::int32_t inhcount() const; + void set_inhcount(::int32_t value); - // nested types ---------------------------------------------------- + private: + ::int32_t _internal_inhcount() const; + void _internal_set_inhcount(::int32_t value); - // accessors ------------------------------------------------------- + public: + // bool is_local = 5 [json_name = "is_local"]; + void clear_is_local() ; + bool is_local() const; + void set_is_local(bool value); - enum : int { - kCursorNameFieldNumber = 3, - kXprFieldNumber = 1, - kCvarnoFieldNumber = 2, - kCursorParamFieldNumber = 4, - }; - // string cursor_name = 3 [json_name = "cursor_name"]; - void clear_cursor_name(); - const std::string& cursor_name() const; - template - void set_cursor_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_cursor_name(); - PROTOBUF_NODISCARD std::string* release_cursor_name(); - void set_allocated_cursor_name(std::string* cursor_name); private: - const std::string& _internal_cursor_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_cursor_name(const std::string& value); - std::string* _internal_mutable_cursor_name(); + bool _internal_is_local() const; + void _internal_set_is_local(bool value); + public: + // bool is_not_null = 6 [json_name = "is_not_null"]; + void clear_is_not_null() ; + bool is_not_null() const; + void set_is_not_null(bool value); - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; private: - bool _internal_has_xpr() const; + bool _internal_is_not_null() const; + void _internal_set_is_not_null(bool value); + public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + // bool is_from_type = 7 [json_name = "is_from_type"]; + void clear_is_from_type() ; + bool is_from_type() const; + void set_is_from_type(bool value); + private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + bool _internal_is_from_type() const; + void _internal_set_is_from_type(bool value); + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // uint32 coll_oid = 16 [json_name = "collOid"]; + void clear_coll_oid() ; + ::uint32_t coll_oid() const; + void set_coll_oid(::uint32_t value); - // uint32 cvarno = 2 [json_name = "cvarno"]; - void clear_cvarno(); - uint32_t cvarno() const; - void set_cvarno(uint32_t value); private: - uint32_t _internal_cvarno() const; - void _internal_set_cvarno(uint32_t value); + ::uint32_t _internal_coll_oid() const; + void _internal_set_coll_oid(::uint32_t value); + public: + // int32 location = 19 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 cursor_param = 4 [json_name = "cursor_param"]; - void clear_cursor_param(); - int32_t cursor_param() const; - void set_cursor_param(int32_t value); private: - int32_t _internal_cursor_param() const; - void _internal_set_cursor_param(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CurrentOfExpr) + public: + // @@protoc_insertion_point(class_scope:pg_query.ColumnDef) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 5, 19, 7, + 97, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cursor_name_; - ::pg_query::Node* xpr_; - uint32_t cvarno_; - int32_t cursor_param_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > constraints_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > fdwoptions_; + ::google::protobuf::internal::ArenaStringPtr colname_; + ::google::protobuf::internal::ArenaStringPtr compression_; + ::google::protobuf::internal::ArenaStringPtr storage_; + ::google::protobuf::internal::ArenaStringPtr storage_name_; + ::google::protobuf::internal::ArenaStringPtr identity_; + ::google::protobuf::internal::ArenaStringPtr generated_; + ::pg_query::TypeName* type_name_; + ::pg_query::Node* raw_default_; + ::pg_query::Node* cooked_default_; + ::pg_query::RangeVar* identity_sequence_; + ::pg_query::CollateClause* coll_clause_; + ::int32_t inhcount_; + bool is_local_; + bool is_not_null_; + bool is_from_type_; + ::uint32_t coll_oid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class NextValueExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.NextValueExpr) */ { +class ColumnRef final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ColumnRef) */ { public: - inline NextValueExpr() : NextValueExpr(nullptr) {} - ~NextValueExpr() override; - explicit PROTOBUF_CONSTEXPR NextValueExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ColumnRef() : ColumnRef(nullptr) {} + ~ColumnRef() override; + template + explicit PROTOBUF_CONSTEXPR ColumnRef(::google::protobuf::internal::ConstantInitialized); - NextValueExpr(const NextValueExpr& from); - NextValueExpr(NextValueExpr&& from) noexcept - : NextValueExpr() { + inline ColumnRef(const ColumnRef& from) + : ColumnRef(nullptr, from) {} + ColumnRef(ColumnRef&& from) noexcept + : ColumnRef() { *this = ::std::move(from); } - inline NextValueExpr& operator=(const NextValueExpr& from) { + inline ColumnRef& operator=(const ColumnRef& from) { CopyFrom(from); return *this; } - inline NextValueExpr& operator=(NextValueExpr&& from) noexcept { + inline ColumnRef& operator=(ColumnRef&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -20751,176 +24516,192 @@ class NextValueExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const NextValueExpr& default_instance() { + static const ColumnRef& default_instance() { return *internal_default_instance(); } - static inline const NextValueExpr* internal_default_instance() { - return reinterpret_cast( - &_NextValueExpr_default_instance_); + static inline const ColumnRef* internal_default_instance() { + return reinterpret_cast( + &_ColumnRef_default_instance_); } static constexpr int kIndexInFileMessages = - 54; + 69; - friend void swap(NextValueExpr& a, NextValueExpr& b) { + friend void swap(ColumnRef& a, ColumnRef& b) { a.Swap(&b); } - inline void Swap(NextValueExpr* other) { + inline void Swap(ColumnRef* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(NextValueExpr* other) { + void UnsafeArenaSwap(ColumnRef* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - NextValueExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ColumnRef* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const NextValueExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const NextValueExpr& from) { - NextValueExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ColumnRef& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ColumnRef& from) { + ColumnRef::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(NextValueExpr* other); + void InternalSwap(ColumnRef* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.NextValueExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ColumnRef"; } protected: - explicit NextValueExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ColumnRef(::google::protobuf::Arena* arena); + ColumnRef(::google::protobuf::Arena* arena, const ColumnRef& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kSeqidFieldNumber = 2, - kTypeIdFieldNumber = 3, + kFieldsFieldNumber = 1, + kLocationFieldNumber = 2, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + // repeated .pg_query.Node fields = 1 [json_name = "fields"]; + int fields_size() const; private: - bool _internal_has_xpr() const; + int _internal_fields_size() const; + public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + void clear_fields() ; + ::pg_query::Node* mutable_fields(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_fields(); private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_fields() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_fields(); public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + const ::pg_query::Node& fields(int index) const; + ::pg_query::Node* add_fields(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + fields() const; + // int32 location = 2 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // uint32 seqid = 2 [json_name = "seqid"]; - void clear_seqid(); - uint32_t seqid() const; - void set_seqid(uint32_t value); private: - uint32_t _internal_seqid() const; - void _internal_set_seqid(uint32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // uint32 type_id = 3 [json_name = "typeId"]; - void clear_type_id(); - uint32_t type_id() const; - void set_type_id(uint32_t value); - private: - uint32_t _internal_type_id() const; - void _internal_set_type_id(uint32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.NextValueExpr) + // @@protoc_insertion_point(class_scope:pg_query.ColumnRef) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - uint32_t seqid_; - uint32_t type_id_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > fields_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class InferenceElem final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.InferenceElem) */ { +class CommentStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CommentStmt) */ { public: - inline InferenceElem() : InferenceElem(nullptr) {} - ~InferenceElem() override; - explicit PROTOBUF_CONSTEXPR InferenceElem(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CommentStmt() : CommentStmt(nullptr) {} + ~CommentStmt() override; + template + explicit PROTOBUF_CONSTEXPR CommentStmt(::google::protobuf::internal::ConstantInitialized); - InferenceElem(const InferenceElem& from); - InferenceElem(InferenceElem&& from) noexcept - : InferenceElem() { + inline CommentStmt(const CommentStmt& from) + : CommentStmt(nullptr, from) {} + CommentStmt(CommentStmt&& from) noexcept + : CommentStmt() { *this = ::std::move(from); } - inline InferenceElem& operator=(const InferenceElem& from) { + inline CommentStmt& operator=(const CommentStmt& from) { CopyFrom(from); return *this; } - inline InferenceElem& operator=(InferenceElem&& from) noexcept { + inline CommentStmt& operator=(CommentStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -20930,196 +24711,208 @@ class InferenceElem final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const InferenceElem& default_instance() { + static const CommentStmt& default_instance() { return *internal_default_instance(); } - static inline const InferenceElem* internal_default_instance() { - return reinterpret_cast( - &_InferenceElem_default_instance_); + static inline const CommentStmt* internal_default_instance() { + return reinterpret_cast( + &_CommentStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 55; + 188; - friend void swap(InferenceElem& a, InferenceElem& b) { + friend void swap(CommentStmt& a, CommentStmt& b) { a.Swap(&b); } - inline void Swap(InferenceElem* other) { + inline void Swap(CommentStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(InferenceElem* other) { + void UnsafeArenaSwap(CommentStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - InferenceElem* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CommentStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const InferenceElem& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const InferenceElem& from) { - InferenceElem::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CommentStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CommentStmt& from) { + CommentStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(InferenceElem* other); + void InternalSwap(CommentStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.InferenceElem"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CommentStmt"; } protected: - explicit InferenceElem(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CommentStmt(::google::protobuf::Arena* arena); + CommentStmt(::google::protobuf::Arena* arena, const CommentStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kXprFieldNumber = 1, - kExprFieldNumber = 2, - kInfercollidFieldNumber = 3, - kInferopclassFieldNumber = 4, + kCommentFieldNumber = 3, + kObjectFieldNumber = 2, + kObjtypeFieldNumber = 1, }; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; - private: - bool _internal_has_xpr() const; - public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); - private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); - public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + // string comment = 3 [json_name = "comment"]; + void clear_comment() ; + const std::string& comment() const; + template + void set_comment(Arg_&& arg, Args_... args); + std::string* mutable_comment(); + PROTOBUF_NODISCARD std::string* release_comment(); + void set_allocated_comment(std::string* value); - // .pg_query.Node expr = 2 [json_name = "expr"]; - bool has_expr() const; - private: - bool _internal_has_expr() const; - public: - void clear_expr(); - const ::pg_query::Node& expr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); - ::pg_query::Node* mutable_expr(); - void set_allocated_expr(::pg_query::Node* expr); private: - const ::pg_query::Node& _internal_expr() const; - ::pg_query::Node* _internal_mutable_expr(); + const std::string& _internal_comment() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_comment( + const std::string& value); + std::string* _internal_mutable_comment(); + public: - void unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr); - ::pg_query::Node* unsafe_arena_release_expr(); + // .pg_query.Node object = 2 [json_name = "object"]; + bool has_object() const; + void clear_object() ; + const ::pg_query::Node& object() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_object(); + ::pg_query::Node* mutable_object(); + void set_allocated_object(::pg_query::Node* value); + void unsafe_arena_set_allocated_object(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_object(); - // uint32 infercollid = 3 [json_name = "infercollid"]; - void clear_infercollid(); - uint32_t infercollid() const; - void set_infercollid(uint32_t value); private: - uint32_t _internal_infercollid() const; - void _internal_set_infercollid(uint32_t value); + const ::pg_query::Node& _internal_object() const; + ::pg_query::Node* _internal_mutable_object(); + public: + // .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; + void clear_objtype() ; + ::pg_query::ObjectType objtype() const; + void set_objtype(::pg_query::ObjectType value); - // uint32 inferopclass = 4 [json_name = "inferopclass"]; - void clear_inferopclass(); - uint32_t inferopclass() const; - void set_inferopclass(uint32_t value); private: - uint32_t _internal_inferopclass() const; - void _internal_set_inferopclass(uint32_t value); - public: + ::pg_query::ObjectType _internal_objtype() const; + void _internal_set_objtype(::pg_query::ObjectType value); - // @@protoc_insertion_point(class_scope:pg_query.InferenceElem) + public: + // @@protoc_insertion_point(class_scope:pg_query.CommentStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 36, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* xpr_; - ::pg_query::Node* expr_; - uint32_t infercollid_; - uint32_t inferopclass_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr comment_; + ::pg_query::Node* object_; + int objtype_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class TargetEntry final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.TargetEntry) */ { +class CommonTableExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CommonTableExpr) */ { public: - inline TargetEntry() : TargetEntry(nullptr) {} - ~TargetEntry() override; - explicit PROTOBUF_CONSTEXPR TargetEntry(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CommonTableExpr() : CommonTableExpr(nullptr) {} + ~CommonTableExpr() override; + template + explicit PROTOBUF_CONSTEXPR CommonTableExpr(::google::protobuf::internal::ConstantInitialized); - TargetEntry(const TargetEntry& from); - TargetEntry(TargetEntry&& from) noexcept - : TargetEntry() { + inline CommonTableExpr(const CommonTableExpr& from) + : CommonTableExpr(nullptr, from) {} + CommonTableExpr(CommonTableExpr&& from) noexcept + : CommonTableExpr() { *this = ::std::move(from); } - inline TargetEntry& operator=(const TargetEntry& from) { + inline CommonTableExpr& operator=(const CommonTableExpr& from) { CopyFrom(from); return *this; } - inline TargetEntry& operator=(TargetEntry&& from) noexcept { + inline CommonTableExpr& operator=(CommonTableExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -21129,245 +24922,378 @@ class TargetEntry final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const TargetEntry& default_instance() { + static const CommonTableExpr& default_instance() { return *internal_default_instance(); } - static inline const TargetEntry* internal_default_instance() { - return reinterpret_cast( - &_TargetEntry_default_instance_); + static inline const CommonTableExpr* internal_default_instance() { + return reinterpret_cast( + &_CommonTableExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 56; + 114; - friend void swap(TargetEntry& a, TargetEntry& b) { + friend void swap(CommonTableExpr& a, CommonTableExpr& b) { a.Swap(&b); } - inline void Swap(TargetEntry* other) { + inline void Swap(CommonTableExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(TargetEntry* other) { + void UnsafeArenaSwap(CommonTableExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - TargetEntry* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CommonTableExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const TargetEntry& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const TargetEntry& from) { - TargetEntry::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CommonTableExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CommonTableExpr& from) { + CommonTableExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(TargetEntry* other); + void InternalSwap(CommonTableExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.TargetEntry"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CommonTableExpr"; } protected: - explicit TargetEntry(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CommonTableExpr(::google::protobuf::Arena* arena); + CommonTableExpr(::google::protobuf::Arena* arena, const CommonTableExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kResnameFieldNumber = 4, - kXprFieldNumber = 1, - kExprFieldNumber = 2, - kResnoFieldNumber = 3, - kRessortgrouprefFieldNumber = 5, - kResorigtblFieldNumber = 6, - kResorigcolFieldNumber = 7, - kResjunkFieldNumber = 8, + kAliascolnamesFieldNumber = 2, + kCtecolnamesFieldNumber = 10, + kCtecoltypesFieldNumber = 11, + kCtecoltypmodsFieldNumber = 12, + kCtecolcollationsFieldNumber = 13, + kCtenameFieldNumber = 1, + kCtequeryFieldNumber = 4, + kSearchClauseFieldNumber = 5, + kCycleClauseFieldNumber = 6, + kCtematerializedFieldNumber = 3, + kLocationFieldNumber = 7, + kCterecursiveFieldNumber = 8, + kCterefcountFieldNumber = 9, }; - // string resname = 4 [json_name = "resname"]; - void clear_resname(); - const std::string& resname() const; - template - void set_resname(ArgT0&& arg0, ArgT... args); - std::string* mutable_resname(); - PROTOBUF_NODISCARD std::string* release_resname(); - void set_allocated_resname(std::string* resname); + // repeated .pg_query.Node aliascolnames = 2 [json_name = "aliascolnames"]; + int aliascolnames_size() const; private: - const std::string& _internal_resname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_resname(const std::string& value); - std::string* _internal_mutable_resname(); + int _internal_aliascolnames_size() const; + + public: + void clear_aliascolnames() ; + ::pg_query::Node* mutable_aliascolnames(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_aliascolnames(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_aliascolnames() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_aliascolnames(); public: + const ::pg_query::Node& aliascolnames(int index) const; + ::pg_query::Node* add_aliascolnames(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + aliascolnames() const; + // repeated .pg_query.Node ctecolnames = 10 [json_name = "ctecolnames"]; + int ctecolnames_size() const; + private: + int _internal_ctecolnames_size() const; - // .pg_query.Node xpr = 1 [json_name = "xpr"]; - bool has_xpr() const; + public: + void clear_ctecolnames() ; + ::pg_query::Node* mutable_ctecolnames(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_ctecolnames(); private: - bool _internal_has_xpr() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_ctecolnames() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_ctecolnames(); public: - void clear_xpr(); - const ::pg_query::Node& xpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); - ::pg_query::Node* mutable_xpr(); - void set_allocated_xpr(::pg_query::Node* xpr); + const ::pg_query::Node& ctecolnames(int index) const; + ::pg_query::Node* add_ctecolnames(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + ctecolnames() const; + // repeated .pg_query.Node ctecoltypes = 11 [json_name = "ctecoltypes"]; + int ctecoltypes_size() const; private: - const ::pg_query::Node& _internal_xpr() const; - ::pg_query::Node* _internal_mutable_xpr(); + int _internal_ctecoltypes_size() const; + public: - void unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr); - ::pg_query::Node* unsafe_arena_release_xpr(); + void clear_ctecoltypes() ; + ::pg_query::Node* mutable_ctecoltypes(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_ctecoltypes(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_ctecoltypes() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_ctecoltypes(); + public: + const ::pg_query::Node& ctecoltypes(int index) const; + ::pg_query::Node* add_ctecoltypes(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + ctecoltypes() const; + // repeated .pg_query.Node ctecoltypmods = 12 [json_name = "ctecoltypmods"]; + int ctecoltypmods_size() const; + private: + int _internal_ctecoltypmods_size() const; - // .pg_query.Node expr = 2 [json_name = "expr"]; - bool has_expr() const; + public: + void clear_ctecoltypmods() ; + ::pg_query::Node* mutable_ctecoltypmods(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_ctecoltypmods(); private: - bool _internal_has_expr() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_ctecoltypmods() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_ctecoltypmods(); public: - void clear_expr(); - const ::pg_query::Node& expr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); - ::pg_query::Node* mutable_expr(); - void set_allocated_expr(::pg_query::Node* expr); + const ::pg_query::Node& ctecoltypmods(int index) const; + ::pg_query::Node* add_ctecoltypmods(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + ctecoltypmods() const; + // repeated .pg_query.Node ctecolcollations = 13 [json_name = "ctecolcollations"]; + int ctecolcollations_size() const; private: - const ::pg_query::Node& _internal_expr() const; - ::pg_query::Node* _internal_mutable_expr(); + int _internal_ctecolcollations_size() const; + public: - void unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr); - ::pg_query::Node* unsafe_arena_release_expr(); + void clear_ctecolcollations() ; + ::pg_query::Node* mutable_ctecolcollations(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_ctecolcollations(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_ctecolcollations() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_ctecolcollations(); + public: + const ::pg_query::Node& ctecolcollations(int index) const; + ::pg_query::Node* add_ctecolcollations(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + ctecolcollations() const; + // string ctename = 1 [json_name = "ctename"]; + void clear_ctename() ; + const std::string& ctename() const; + template + void set_ctename(Arg_&& arg, Args_... args); + std::string* mutable_ctename(); + PROTOBUF_NODISCARD std::string* release_ctename(); + void set_allocated_ctename(std::string* value); - // int32 resno = 3 [json_name = "resno"]; - void clear_resno(); - int32_t resno() const; - void set_resno(int32_t value); private: - int32_t _internal_resno() const; - void _internal_set_resno(int32_t value); + const std::string& _internal_ctename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_ctename( + const std::string& value); + std::string* _internal_mutable_ctename(); + public: + // .pg_query.Node ctequery = 4 [json_name = "ctequery"]; + bool has_ctequery() const; + void clear_ctequery() ; + const ::pg_query::Node& ctequery() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_ctequery(); + ::pg_query::Node* mutable_ctequery(); + void set_allocated_ctequery(::pg_query::Node* value); + void unsafe_arena_set_allocated_ctequery(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_ctequery(); - // uint32 ressortgroupref = 5 [json_name = "ressortgroupref"]; - void clear_ressortgroupref(); - uint32_t ressortgroupref() const; - void set_ressortgroupref(uint32_t value); private: - uint32_t _internal_ressortgroupref() const; - void _internal_set_ressortgroupref(uint32_t value); + const ::pg_query::Node& _internal_ctequery() const; + ::pg_query::Node* _internal_mutable_ctequery(); + public: + // .pg_query.CTESearchClause search_clause = 5 [json_name = "search_clause"]; + bool has_search_clause() const; + void clear_search_clause() ; + const ::pg_query::CTESearchClause& search_clause() const; + PROTOBUF_NODISCARD ::pg_query::CTESearchClause* release_search_clause(); + ::pg_query::CTESearchClause* mutable_search_clause(); + void set_allocated_search_clause(::pg_query::CTESearchClause* value); + void unsafe_arena_set_allocated_search_clause(::pg_query::CTESearchClause* value); + ::pg_query::CTESearchClause* unsafe_arena_release_search_clause(); - // uint32 resorigtbl = 6 [json_name = "resorigtbl"]; - void clear_resorigtbl(); - uint32_t resorigtbl() const; - void set_resorigtbl(uint32_t value); private: - uint32_t _internal_resorigtbl() const; - void _internal_set_resorigtbl(uint32_t value); + const ::pg_query::CTESearchClause& _internal_search_clause() const; + ::pg_query::CTESearchClause* _internal_mutable_search_clause(); + public: + // .pg_query.CTECycleClause cycle_clause = 6 [json_name = "cycle_clause"]; + bool has_cycle_clause() const; + void clear_cycle_clause() ; + const ::pg_query::CTECycleClause& cycle_clause() const; + PROTOBUF_NODISCARD ::pg_query::CTECycleClause* release_cycle_clause(); + ::pg_query::CTECycleClause* mutable_cycle_clause(); + void set_allocated_cycle_clause(::pg_query::CTECycleClause* value); + void unsafe_arena_set_allocated_cycle_clause(::pg_query::CTECycleClause* value); + ::pg_query::CTECycleClause* unsafe_arena_release_cycle_clause(); - // int32 resorigcol = 7 [json_name = "resorigcol"]; - void clear_resorigcol(); - int32_t resorigcol() const; - void set_resorigcol(int32_t value); private: - int32_t _internal_resorigcol() const; - void _internal_set_resorigcol(int32_t value); + const ::pg_query::CTECycleClause& _internal_cycle_clause() const; + ::pg_query::CTECycleClause* _internal_mutable_cycle_clause(); + public: + // .pg_query.CTEMaterialize ctematerialized = 3 [json_name = "ctematerialized"]; + void clear_ctematerialized() ; + ::pg_query::CTEMaterialize ctematerialized() const; + void set_ctematerialized(::pg_query::CTEMaterialize value); - // bool resjunk = 8 [json_name = "resjunk"]; - void clear_resjunk(); - bool resjunk() const; - void set_resjunk(bool value); private: - bool _internal_resjunk() const; - void _internal_set_resjunk(bool value); + ::pg_query::CTEMaterialize _internal_ctematerialized() const; + void _internal_set_ctematerialized(::pg_query::CTEMaterialize value); + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.TargetEntry) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // bool cterecursive = 8 [json_name = "cterecursive"]; + void clear_cterecursive() ; + bool cterecursive() const; + void set_cterecursive(bool value); + + private: + bool _internal_cterecursive() const; + void _internal_set_cterecursive(bool value); + + public: + // int32 cterefcount = 9 [json_name = "cterefcount"]; + void clear_cterefcount() ; + ::int32_t cterefcount() const; + void set_cterefcount(::int32_t value); + + private: + ::int32_t _internal_cterefcount() const; + void _internal_set_cterefcount(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CommonTableExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 13, 8, + 48, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr resname_; - ::pg_query::Node* xpr_; - ::pg_query::Node* expr_; - int32_t resno_; - uint32_t ressortgroupref_; - uint32_t resorigtbl_; - int32_t resorigcol_; - bool resjunk_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > aliascolnames_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > ctecolnames_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > ctecoltypes_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > ctecoltypmods_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > ctecolcollations_; + ::google::protobuf::internal::ArenaStringPtr ctename_; + ::pg_query::Node* ctequery_; + ::pg_query::CTESearchClause* search_clause_; + ::pg_query::CTECycleClause* cycle_clause_; + int ctematerialized_; + ::int32_t location_; + bool cterecursive_; + ::int32_t cterefcount_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RangeTblRef final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTblRef) */ { +class CompositeTypeStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CompositeTypeStmt) */ { public: - inline RangeTblRef() : RangeTblRef(nullptr) {} - ~RangeTblRef() override; - explicit PROTOBUF_CONSTEXPR RangeTblRef(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CompositeTypeStmt() : CompositeTypeStmt(nullptr) {} + ~CompositeTypeStmt() override; + template + explicit PROTOBUF_CONSTEXPR CompositeTypeStmt(::google::protobuf::internal::ConstantInitialized); - RangeTblRef(const RangeTblRef& from); - RangeTblRef(RangeTblRef&& from) noexcept - : RangeTblRef() { + inline CompositeTypeStmt(const CompositeTypeStmt& from) + : CompositeTypeStmt(nullptr, from) {} + CompositeTypeStmt(CompositeTypeStmt&& from) noexcept + : CompositeTypeStmt() { *this = ::std::move(from); } - inline RangeTblRef& operator=(const RangeTblRef& from) { + inline CompositeTypeStmt& operator=(const CompositeTypeStmt& from) { CopyFrom(from); return *this; } - inline RangeTblRef& operator=(RangeTblRef&& from) noexcept { + inline CompositeTypeStmt& operator=(CompositeTypeStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -21377,145 +25303,198 @@ class RangeTblRef final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RangeTblRef& default_instance() { + static const CompositeTypeStmt& default_instance() { return *internal_default_instance(); } - static inline const RangeTblRef* internal_default_instance() { - return reinterpret_cast( - &_RangeTblRef_default_instance_); + static inline const CompositeTypeStmt* internal_default_instance() { + return reinterpret_cast( + &_CompositeTypeStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 57; + 215; - friend void swap(RangeTblRef& a, RangeTblRef& b) { + friend void swap(CompositeTypeStmt& a, CompositeTypeStmt& b) { a.Swap(&b); } - inline void Swap(RangeTblRef* other) { + inline void Swap(CompositeTypeStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RangeTblRef* other) { + void UnsafeArenaSwap(CompositeTypeStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RangeTblRef* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CompositeTypeStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RangeTblRef& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RangeTblRef& from) { - RangeTblRef::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CompositeTypeStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CompositeTypeStmt& from) { + CompositeTypeStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RangeTblRef* other); + void InternalSwap(CompositeTypeStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RangeTblRef"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CompositeTypeStmt"; } protected: - explicit RangeTblRef(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CompositeTypeStmt(::google::protobuf::Arena* arena); + CompositeTypeStmt(::google::protobuf::Arena* arena, const CompositeTypeStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRtindexFieldNumber = 1, + kColdeflistFieldNumber = 2, + kTypevarFieldNumber = 1, }; - // int32 rtindex = 1 [json_name = "rtindex"]; - void clear_rtindex(); - int32_t rtindex() const; - void set_rtindex(int32_t value); + // repeated .pg_query.Node coldeflist = 2 [json_name = "coldeflist"]; + int coldeflist_size() const; private: - int32_t _internal_rtindex() const; - void _internal_set_rtindex(int32_t value); + int _internal_coldeflist_size() const; + + public: + void clear_coldeflist() ; + ::pg_query::Node* mutable_coldeflist(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_coldeflist(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_coldeflist() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_coldeflist(); public: + const ::pg_query::Node& coldeflist(int index) const; + ::pg_query::Node* add_coldeflist(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + coldeflist() const; + // .pg_query.RangeVar typevar = 1 [json_name = "typevar"]; + bool has_typevar() const; + void clear_typevar() ; + const ::pg_query::RangeVar& typevar() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_typevar(); + ::pg_query::RangeVar* mutable_typevar(); + void set_allocated_typevar(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_typevar(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_typevar(); - // @@protoc_insertion_point(class_scope:pg_query.RangeTblRef) + private: + const ::pg_query::RangeVar& _internal_typevar() const; + ::pg_query::RangeVar* _internal_mutable_typevar(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CompositeTypeStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - int32_t rtindex_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > coldeflist_; + ::pg_query::RangeVar* typevar_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class JoinExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.JoinExpr) */ { +class Constraint final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Constraint) */ { public: - inline JoinExpr() : JoinExpr(nullptr) {} - ~JoinExpr() override; - explicit PROTOBUF_CONSTEXPR JoinExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline Constraint() : Constraint(nullptr) {} + ~Constraint() override; + template + explicit PROTOBUF_CONSTEXPR Constraint(::google::protobuf::internal::ConstantInitialized); - JoinExpr(const JoinExpr& from); - JoinExpr(JoinExpr&& from) noexcept - : JoinExpr() { + inline Constraint(const Constraint& from) + : Constraint(nullptr, from) {} + Constraint(Constraint&& from) noexcept + : Constraint() { *this = ::std::move(from); } - inline JoinExpr& operator=(const JoinExpr& from) { + inline Constraint& operator=(const Constraint& from) { CopyFrom(from); return *this; } - inline JoinExpr& operator=(JoinExpr&& from) noexcept { + inline Constraint& operator=(Constraint&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -21525,464 +25504,654 @@ class JoinExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const JoinExpr& default_instance() { + static const Constraint& default_instance() { return *internal_default_instance(); } - static inline const JoinExpr* internal_default_instance() { - return reinterpret_cast( - &_JoinExpr_default_instance_); + static inline const Constraint* internal_default_instance() { + return reinterpret_cast( + &_Constraint_default_instance_); } static constexpr int kIndexInFileMessages = - 58; + 150; - friend void swap(JoinExpr& a, JoinExpr& b) { + friend void swap(Constraint& a, Constraint& b) { a.Swap(&b); } - inline void Swap(JoinExpr* other) { + inline void Swap(Constraint* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(JoinExpr* other) { + void UnsafeArenaSwap(Constraint* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - JoinExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + Constraint* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const JoinExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const JoinExpr& from) { - JoinExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Constraint& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Constraint& from) { + Constraint::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(JoinExpr* other); + void InternalSwap(Constraint* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.JoinExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Constraint"; } protected: - explicit JoinExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit Constraint(::google::protobuf::Arena* arena); + Constraint(::google::protobuf::Arena* arena, const Constraint& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kUsingClauseFieldNumber = 5, - kLargFieldNumber = 3, - kRargFieldNumber = 4, - kJoinUsingAliasFieldNumber = 6, - kQualsFieldNumber = 7, - kAliasFieldNumber = 8, - kJointypeFieldNumber = 1, - kIsNaturalFieldNumber = 2, - kRtindexFieldNumber = 9, + kKeysFieldNumber = 11, + kIncludingFieldNumber = 12, + kExclusionsFieldNumber = 13, + kOptionsFieldNumber = 14, + kFkAttrsFieldNumber = 21, + kPkAttrsFieldNumber = 22, + kFkDelSetColsFieldNumber = 26, + kOldConpfeqopFieldNumber = 27, + kConnameFieldNumber = 2, + kCookedExprFieldNumber = 8, + kGeneratedWhenFieldNumber = 9, + kIndexnameFieldNumber = 15, + kIndexspaceFieldNumber = 16, + kAccessMethodFieldNumber = 18, + kFkMatchtypeFieldNumber = 23, + kFkUpdActionFieldNumber = 24, + kFkDelActionFieldNumber = 25, + kRawExprFieldNumber = 7, + kWhereClauseFieldNumber = 19, + kPktableFieldNumber = 20, + kContypeFieldNumber = 1, + kLocationFieldNumber = 5, + kDeferrableFieldNumber = 3, + kInitdeferredFieldNumber = 4, + kIsNoInheritFieldNumber = 6, + kNullsNotDistinctFieldNumber = 10, + kResetDefaultTblspcFieldNumber = 17, + kSkipValidationFieldNumber = 29, + kInitiallyValidFieldNumber = 30, + kOldPktableOidFieldNumber = 28, }; - // repeated .pg_query.Node using_clause = 5 [json_name = "usingClause"]; - int using_clause_size() const; + // repeated .pg_query.Node keys = 11 [json_name = "keys"]; + int keys_size() const; private: - int _internal_using_clause_size() const; + int _internal_keys_size() const; + public: - void clear_using_clause(); - ::pg_query::Node* mutable_using_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_using_clause(); + void clear_keys() ; + ::pg_query::Node* mutable_keys(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_keys(); private: - const ::pg_query::Node& _internal_using_clause(int index) const; - ::pg_query::Node* _internal_add_using_clause(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_keys() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_keys(); public: - const ::pg_query::Node& using_clause(int index) const; - ::pg_query::Node* add_using_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - using_clause() const; + const ::pg_query::Node& keys(int index) const; + ::pg_query::Node* add_keys(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + keys() const; + // repeated .pg_query.Node including = 12 [json_name = "including"]; + int including_size() const; + private: + int _internal_including_size() const; - // .pg_query.Node larg = 3 [json_name = "larg"]; - bool has_larg() const; + public: + void clear_including() ; + ::pg_query::Node* mutable_including(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_including(); private: - bool _internal_has_larg() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_including() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_including(); public: - void clear_larg(); - const ::pg_query::Node& larg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_larg(); - ::pg_query::Node* mutable_larg(); - void set_allocated_larg(::pg_query::Node* larg); + const ::pg_query::Node& including(int index) const; + ::pg_query::Node* add_including(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + including() const; + // repeated .pg_query.Node exclusions = 13 [json_name = "exclusions"]; + int exclusions_size() const; private: - const ::pg_query::Node& _internal_larg() const; - ::pg_query::Node* _internal_mutable_larg(); + int _internal_exclusions_size() const; + public: - void unsafe_arena_set_allocated_larg( - ::pg_query::Node* larg); - ::pg_query::Node* unsafe_arena_release_larg(); + void clear_exclusions() ; + ::pg_query::Node* mutable_exclusions(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_exclusions(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_exclusions() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_exclusions(); + public: + const ::pg_query::Node& exclusions(int index) const; + ::pg_query::Node* add_exclusions(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + exclusions() const; + // repeated .pg_query.Node options = 14 [json_name = "options"]; + int options_size() const; + private: + int _internal_options_size() const; - // .pg_query.Node rarg = 4 [json_name = "rarg"]; - bool has_rarg() const; + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - bool _internal_has_rarg() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void clear_rarg(); - const ::pg_query::Node& rarg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_rarg(); - ::pg_query::Node* mutable_rarg(); - void set_allocated_rarg(::pg_query::Node* rarg); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // repeated .pg_query.Node fk_attrs = 21 [json_name = "fk_attrs"]; + int fk_attrs_size() const; private: - const ::pg_query::Node& _internal_rarg() const; - ::pg_query::Node* _internal_mutable_rarg(); + int _internal_fk_attrs_size() const; + public: - void unsafe_arena_set_allocated_rarg( - ::pg_query::Node* rarg); - ::pg_query::Node* unsafe_arena_release_rarg(); + void clear_fk_attrs() ; + ::pg_query::Node* mutable_fk_attrs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_fk_attrs(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_fk_attrs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_fk_attrs(); + public: + const ::pg_query::Node& fk_attrs(int index) const; + ::pg_query::Node* add_fk_attrs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + fk_attrs() const; + // repeated .pg_query.Node pk_attrs = 22 [json_name = "pk_attrs"]; + int pk_attrs_size() const; + private: + int _internal_pk_attrs_size() const; - // .pg_query.Alias join_using_alias = 6 [json_name = "join_using_alias"]; - bool has_join_using_alias() const; + public: + void clear_pk_attrs() ; + ::pg_query::Node* mutable_pk_attrs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_pk_attrs(); private: - bool _internal_has_join_using_alias() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_pk_attrs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_pk_attrs(); public: - void clear_join_using_alias(); - const ::pg_query::Alias& join_using_alias() const; - PROTOBUF_NODISCARD ::pg_query::Alias* release_join_using_alias(); - ::pg_query::Alias* mutable_join_using_alias(); - void set_allocated_join_using_alias(::pg_query::Alias* join_using_alias); + const ::pg_query::Node& pk_attrs(int index) const; + ::pg_query::Node* add_pk_attrs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + pk_attrs() const; + // repeated .pg_query.Node fk_del_set_cols = 26 [json_name = "fk_del_set_cols"]; + int fk_del_set_cols_size() const; private: - const ::pg_query::Alias& _internal_join_using_alias() const; - ::pg_query::Alias* _internal_mutable_join_using_alias(); + int _internal_fk_del_set_cols_size() const; + public: - void unsafe_arena_set_allocated_join_using_alias( - ::pg_query::Alias* join_using_alias); - ::pg_query::Alias* unsafe_arena_release_join_using_alias(); + void clear_fk_del_set_cols() ; + ::pg_query::Node* mutable_fk_del_set_cols(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_fk_del_set_cols(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_fk_del_set_cols() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_fk_del_set_cols(); + public: + const ::pg_query::Node& fk_del_set_cols(int index) const; + ::pg_query::Node* add_fk_del_set_cols(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + fk_del_set_cols() const; + // repeated .pg_query.Node old_conpfeqop = 27 [json_name = "old_conpfeqop"]; + int old_conpfeqop_size() const; + private: + int _internal_old_conpfeqop_size() const; - // .pg_query.Node quals = 7 [json_name = "quals"]; - bool has_quals() const; + public: + void clear_old_conpfeqop() ; + ::pg_query::Node* mutable_old_conpfeqop(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_old_conpfeqop(); private: - bool _internal_has_quals() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_old_conpfeqop() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_old_conpfeqop(); public: - void clear_quals(); - const ::pg_query::Node& quals() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_quals(); - ::pg_query::Node* mutable_quals(); - void set_allocated_quals(::pg_query::Node* quals); + const ::pg_query::Node& old_conpfeqop(int index) const; + ::pg_query::Node* add_old_conpfeqop(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + old_conpfeqop() const; + // string conname = 2 [json_name = "conname"]; + void clear_conname() ; + const std::string& conname() const; + template + void set_conname(Arg_&& arg, Args_... args); + std::string* mutable_conname(); + PROTOBUF_NODISCARD std::string* release_conname(); + void set_allocated_conname(std::string* value); + private: - const ::pg_query::Node& _internal_quals() const; - ::pg_query::Node* _internal_mutable_quals(); + const std::string& _internal_conname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_conname( + const std::string& value); + std::string* _internal_mutable_conname(); + public: - void unsafe_arena_set_allocated_quals( - ::pg_query::Node* quals); - ::pg_query::Node* unsafe_arena_release_quals(); + // string cooked_expr = 8 [json_name = "cooked_expr"]; + void clear_cooked_expr() ; + const std::string& cooked_expr() const; + template + void set_cooked_expr(Arg_&& arg, Args_... args); + std::string* mutable_cooked_expr(); + PROTOBUF_NODISCARD std::string* release_cooked_expr(); + void set_allocated_cooked_expr(std::string* value); - // .pg_query.Alias alias = 8 [json_name = "alias"]; - bool has_alias() const; private: - bool _internal_has_alias() const; + const std::string& _internal_cooked_expr() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_cooked_expr( + const std::string& value); + std::string* _internal_mutable_cooked_expr(); + public: - void clear_alias(); - const ::pg_query::Alias& alias() const; - PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); - ::pg_query::Alias* mutable_alias(); - void set_allocated_alias(::pg_query::Alias* alias); + // string generated_when = 9 [json_name = "generated_when"]; + void clear_generated_when() ; + const std::string& generated_when() const; + template + void set_generated_when(Arg_&& arg, Args_... args); + std::string* mutable_generated_when(); + PROTOBUF_NODISCARD std::string* release_generated_when(); + void set_allocated_generated_when(std::string* value); + private: - const ::pg_query::Alias& _internal_alias() const; - ::pg_query::Alias* _internal_mutable_alias(); + const std::string& _internal_generated_when() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_generated_when( + const std::string& value); + std::string* _internal_mutable_generated_when(); + public: - void unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias); - ::pg_query::Alias* unsafe_arena_release_alias(); + // string indexname = 15 [json_name = "indexname"]; + void clear_indexname() ; + const std::string& indexname() const; + template + void set_indexname(Arg_&& arg, Args_... args); + std::string* mutable_indexname(); + PROTOBUF_NODISCARD std::string* release_indexname(); + void set_allocated_indexname(std::string* value); - // .pg_query.JoinType jointype = 1 [json_name = "jointype"]; - void clear_jointype(); - ::pg_query::JoinType jointype() const; - void set_jointype(::pg_query::JoinType value); private: - ::pg_query::JoinType _internal_jointype() const; - void _internal_set_jointype(::pg_query::JoinType value); + const std::string& _internal_indexname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_indexname( + const std::string& value); + std::string* _internal_mutable_indexname(); + public: + // string indexspace = 16 [json_name = "indexspace"]; + void clear_indexspace() ; + const std::string& indexspace() const; + template + void set_indexspace(Arg_&& arg, Args_... args); + std::string* mutable_indexspace(); + PROTOBUF_NODISCARD std::string* release_indexspace(); + void set_allocated_indexspace(std::string* value); - // bool is_natural = 2 [json_name = "isNatural"]; - void clear_is_natural(); - bool is_natural() const; - void set_is_natural(bool value); private: - bool _internal_is_natural() const; - void _internal_set_is_natural(bool value); + const std::string& _internal_indexspace() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_indexspace( + const std::string& value); + std::string* _internal_mutable_indexspace(); + public: + // string access_method = 18 [json_name = "access_method"]; + void clear_access_method() ; + const std::string& access_method() const; + template + void set_access_method(Arg_&& arg, Args_... args); + std::string* mutable_access_method(); + PROTOBUF_NODISCARD std::string* release_access_method(); + void set_allocated_access_method(std::string* value); - // int32 rtindex = 9 [json_name = "rtindex"]; - void clear_rtindex(); - int32_t rtindex() const; - void set_rtindex(int32_t value); private: - int32_t _internal_rtindex() const; - void _internal_set_rtindex(int32_t value); + const std::string& _internal_access_method() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_access_method( + const std::string& value); + std::string* _internal_mutable_access_method(); + public: + // string fk_matchtype = 23 [json_name = "fk_matchtype"]; + void clear_fk_matchtype() ; + const std::string& fk_matchtype() const; + template + void set_fk_matchtype(Arg_&& arg, Args_... args); + std::string* mutable_fk_matchtype(); + PROTOBUF_NODISCARD std::string* release_fk_matchtype(); + void set_allocated_fk_matchtype(std::string* value); - // @@protoc_insertion_point(class_scope:pg_query.JoinExpr) - private: - class _Internal; + private: + const std::string& _internal_fk_matchtype() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_fk_matchtype( + const std::string& value); + std::string* _internal_mutable_fk_matchtype(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > using_clause_; - ::pg_query::Node* larg_; - ::pg_query::Node* rarg_; - ::pg_query::Alias* join_using_alias_; - ::pg_query::Node* quals_; - ::pg_query::Alias* alias_; - int jointype_; - bool is_natural_; - int32_t rtindex_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + // string fk_upd_action = 24 [json_name = "fk_upd_action"]; + void clear_fk_upd_action() ; + const std::string& fk_upd_action() const; + template + void set_fk_upd_action(Arg_&& arg, Args_... args); + std::string* mutable_fk_upd_action(); + PROTOBUF_NODISCARD std::string* release_fk_upd_action(); + void set_allocated_fk_upd_action(std::string* value); -class FromExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.FromExpr) */ { - public: - inline FromExpr() : FromExpr(nullptr) {} - ~FromExpr() override; - explicit PROTOBUF_CONSTEXPR FromExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const std::string& _internal_fk_upd_action() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_fk_upd_action( + const std::string& value); + std::string* _internal_mutable_fk_upd_action(); - FromExpr(const FromExpr& from); - FromExpr(FromExpr&& from) noexcept - : FromExpr() { - *this = ::std::move(from); - } + public: + // string fk_del_action = 25 [json_name = "fk_del_action"]; + void clear_fk_del_action() ; + const std::string& fk_del_action() const; + template + void set_fk_del_action(Arg_&& arg, Args_... args); + std::string* mutable_fk_del_action(); + PROTOBUF_NODISCARD std::string* release_fk_del_action(); + void set_allocated_fk_del_action(std::string* value); - inline FromExpr& operator=(const FromExpr& from) { - CopyFrom(from); - return *this; - } - inline FromExpr& operator=(FromExpr&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const std::string& _internal_fk_del_action() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_fk_del_action( + const std::string& value); + std::string* _internal_mutable_fk_del_action(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const FromExpr& default_instance() { - return *internal_default_instance(); - } - static inline const FromExpr* internal_default_instance() { - return reinterpret_cast( - &_FromExpr_default_instance_); - } - static constexpr int kIndexInFileMessages = - 59; + public: + // .pg_query.Node raw_expr = 7 [json_name = "raw_expr"]; + bool has_raw_expr() const; + void clear_raw_expr() ; + const ::pg_query::Node& raw_expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_raw_expr(); + ::pg_query::Node* mutable_raw_expr(); + void set_allocated_raw_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_raw_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_raw_expr(); - friend void swap(FromExpr& a, FromExpr& b) { - a.Swap(&b); - } - inline void Swap(FromExpr* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(FromExpr* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + private: + const ::pg_query::Node& _internal_raw_expr() const; + ::pg_query::Node* _internal_mutable_raw_expr(); - // implements Message ---------------------------------------------- + public: + // .pg_query.Node where_clause = 19 [json_name = "where_clause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); + + private: + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); + + public: + // .pg_query.RangeVar pktable = 20 [json_name = "pktable"]; + bool has_pktable() const; + void clear_pktable() ; + const ::pg_query::RangeVar& pktable() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_pktable(); + ::pg_query::RangeVar* mutable_pktable(); + void set_allocated_pktable(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_pktable(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_pktable(); - FromExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FromExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const FromExpr& from) { - FromExpr::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::RangeVar& _internal_pktable() const; + ::pg_query::RangeVar* _internal_mutable_pktable(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.ConstrType contype = 1 [json_name = "contype"]; + void clear_contype() ; + ::pg_query::ConstrType contype() const; + void set_contype(::pg_query::ConstrType value); + + private: + ::pg_query::ConstrType _internal_contype() const; + void _internal_set_contype(::pg_query::ConstrType value); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FromExpr* other); + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // bool deferrable = 3 [json_name = "deferrable"]; + void clear_deferrable() ; + bool deferrable() const; + void set_deferrable(bool value); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.FromExpr"; - } - protected: - explicit FromExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + bool _internal_deferrable() const; + void _internal_set_deferrable(bool value); + public: + // bool initdeferred = 4 [json_name = "initdeferred"]; + void clear_initdeferred() ; + bool initdeferred() const; + void set_initdeferred(bool value); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + private: + bool _internal_initdeferred() const; + void _internal_set_initdeferred(bool value); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + // bool is_no_inherit = 6 [json_name = "is_no_inherit"]; + void clear_is_no_inherit() ; + bool is_no_inherit() const; + void set_is_no_inherit(bool value); - // nested types ---------------------------------------------------- + private: + bool _internal_is_no_inherit() const; + void _internal_set_is_no_inherit(bool value); - // accessors ------------------------------------------------------- + public: + // bool nulls_not_distinct = 10 [json_name = "nulls_not_distinct"]; + void clear_nulls_not_distinct() ; + bool nulls_not_distinct() const; + void set_nulls_not_distinct(bool value); - enum : int { - kFromlistFieldNumber = 1, - kQualsFieldNumber = 2, - }; - // repeated .pg_query.Node fromlist = 1 [json_name = "fromlist"]; - int fromlist_size() const; private: - int _internal_fromlist_size() const; + bool _internal_nulls_not_distinct() const; + void _internal_set_nulls_not_distinct(bool value); + public: - void clear_fromlist(); - ::pg_query::Node* mutable_fromlist(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_fromlist(); + // bool reset_default_tblspc = 17 [json_name = "reset_default_tblspc"]; + void clear_reset_default_tblspc() ; + bool reset_default_tblspc() const; + void set_reset_default_tblspc(bool value); + private: - const ::pg_query::Node& _internal_fromlist(int index) const; - ::pg_query::Node* _internal_add_fromlist(); + bool _internal_reset_default_tblspc() const; + void _internal_set_reset_default_tblspc(bool value); + public: - const ::pg_query::Node& fromlist(int index) const; - ::pg_query::Node* add_fromlist(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - fromlist() const; + // bool skip_validation = 29 [json_name = "skip_validation"]; + void clear_skip_validation() ; + bool skip_validation() const; + void set_skip_validation(bool value); - // .pg_query.Node quals = 2 [json_name = "quals"]; - bool has_quals() const; private: - bool _internal_has_quals() const; + bool _internal_skip_validation() const; + void _internal_set_skip_validation(bool value); + public: - void clear_quals(); - const ::pg_query::Node& quals() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_quals(); - ::pg_query::Node* mutable_quals(); - void set_allocated_quals(::pg_query::Node* quals); + // bool initially_valid = 30 [json_name = "initially_valid"]; + void clear_initially_valid() ; + bool initially_valid() const; + void set_initially_valid(bool value); + private: - const ::pg_query::Node& _internal_quals() const; - ::pg_query::Node* _internal_mutable_quals(); + bool _internal_initially_valid() const; + void _internal_set_initially_valid(bool value); + public: - void unsafe_arena_set_allocated_quals( - ::pg_query::Node* quals); - ::pg_query::Node* unsafe_arena_release_quals(); + // uint32 old_pktable_oid = 28 [json_name = "old_pktable_oid"]; + void clear_old_pktable_oid() ; + ::uint32_t old_pktable_oid() const; + void set_old_pktable_oid(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.FromExpr) + private: + ::uint32_t _internal_old_pktable_oid() const; + void _internal_set_old_pktable_oid(::uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.Constraint) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 5, 30, 11, + 154, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > fromlist_; - ::pg_query::Node* quals_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > keys_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > including_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > exclusions_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > fk_attrs_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > pk_attrs_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > fk_del_set_cols_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > old_conpfeqop_; + ::google::protobuf::internal::ArenaStringPtr conname_; + ::google::protobuf::internal::ArenaStringPtr cooked_expr_; + ::google::protobuf::internal::ArenaStringPtr generated_when_; + ::google::protobuf::internal::ArenaStringPtr indexname_; + ::google::protobuf::internal::ArenaStringPtr indexspace_; + ::google::protobuf::internal::ArenaStringPtr access_method_; + ::google::protobuf::internal::ArenaStringPtr fk_matchtype_; + ::google::protobuf::internal::ArenaStringPtr fk_upd_action_; + ::google::protobuf::internal::ArenaStringPtr fk_del_action_; + ::pg_query::Node* raw_expr_; + ::pg_query::Node* where_clause_; + ::pg_query::RangeVar* pktable_; + int contype_; + ::int32_t location_; + bool deferrable_; + bool initdeferred_; + bool is_no_inherit_; + bool nulls_not_distinct_; + bool reset_default_tblspc_; + bool skip_validation_; + bool initially_valid_; + ::uint32_t old_pktable_oid_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class OnConflictExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.OnConflictExpr) */ { +class ConstraintsSetStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ConstraintsSetStmt) */ { public: - inline OnConflictExpr() : OnConflictExpr(nullptr) {} - ~OnConflictExpr() override; - explicit PROTOBUF_CONSTEXPR OnConflictExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ConstraintsSetStmt() : ConstraintsSetStmt(nullptr) {} + ~ConstraintsSetStmt() override; + template + explicit PROTOBUF_CONSTEXPR ConstraintsSetStmt(::google::protobuf::internal::ConstantInitialized); - OnConflictExpr(const OnConflictExpr& from); - OnConflictExpr(OnConflictExpr&& from) noexcept - : OnConflictExpr() { + inline ConstraintsSetStmt(const ConstraintsSetStmt& from) + : ConstraintsSetStmt(nullptr, from) {} + ConstraintsSetStmt(ConstraintsSetStmt&& from) noexcept + : ConstraintsSetStmt() { *this = ::std::move(from); } - inline OnConflictExpr& operator=(const OnConflictExpr& from) { + inline ConstraintsSetStmt& operator=(const ConstraintsSetStmt& from) { CopyFrom(from); return *this; } - inline OnConflictExpr& operator=(OnConflictExpr&& from) noexcept { + inline ConstraintsSetStmt& operator=(ConstraintsSetStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -21992,267 +26161,192 @@ class OnConflictExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const OnConflictExpr& default_instance() { + static const ConstraintsSetStmt& default_instance() { return *internal_default_instance(); } - static inline const OnConflictExpr* internal_default_instance() { - return reinterpret_cast( - &_OnConflictExpr_default_instance_); + static inline const ConstraintsSetStmt* internal_default_instance() { + return reinterpret_cast( + &_ConstraintsSetStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 60; + 236; - friend void swap(OnConflictExpr& a, OnConflictExpr& b) { + friend void swap(ConstraintsSetStmt& a, ConstraintsSetStmt& b) { a.Swap(&b); } - inline void Swap(OnConflictExpr* other) { + inline void Swap(ConstraintsSetStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(OnConflictExpr* other) { + void UnsafeArenaSwap(ConstraintsSetStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - OnConflictExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ConstraintsSetStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const OnConflictExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const OnConflictExpr& from) { - OnConflictExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ConstraintsSetStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ConstraintsSetStmt& from) { + ConstraintsSetStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(OnConflictExpr* other); + void InternalSwap(ConstraintsSetStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.OnConflictExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ConstraintsSetStmt"; } protected: - explicit OnConflictExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ConstraintsSetStmt(::google::protobuf::Arena* arena); + ConstraintsSetStmt(::google::protobuf::Arena* arena, const ConstraintsSetStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArbiterElemsFieldNumber = 2, - kOnConflictSetFieldNumber = 5, - kExclRelTlistFieldNumber = 8, - kArbiterWhereFieldNumber = 3, - kOnConflictWhereFieldNumber = 6, - kActionFieldNumber = 1, - kConstraintFieldNumber = 4, - kExclRelIndexFieldNumber = 7, + kConstraintsFieldNumber = 1, + kDeferredFieldNumber = 2, }; - // repeated .pg_query.Node arbiter_elems = 2 [json_name = "arbiterElems"]; - int arbiter_elems_size() const; - private: - int _internal_arbiter_elems_size() const; - public: - void clear_arbiter_elems(); - ::pg_query::Node* mutable_arbiter_elems(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_arbiter_elems(); - private: - const ::pg_query::Node& _internal_arbiter_elems(int index) const; - ::pg_query::Node* _internal_add_arbiter_elems(); - public: - const ::pg_query::Node& arbiter_elems(int index) const; - ::pg_query::Node* add_arbiter_elems(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - arbiter_elems() const; - - // repeated .pg_query.Node on_conflict_set = 5 [json_name = "onConflictSet"]; - int on_conflict_set_size() const; - private: - int _internal_on_conflict_set_size() const; - public: - void clear_on_conflict_set(); - ::pg_query::Node* mutable_on_conflict_set(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_on_conflict_set(); - private: - const ::pg_query::Node& _internal_on_conflict_set(int index) const; - ::pg_query::Node* _internal_add_on_conflict_set(); - public: - const ::pg_query::Node& on_conflict_set(int index) const; - ::pg_query::Node* add_on_conflict_set(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - on_conflict_set() const; - - // repeated .pg_query.Node excl_rel_tlist = 8 [json_name = "exclRelTlist"]; - int excl_rel_tlist_size() const; - private: - int _internal_excl_rel_tlist_size() const; - public: - void clear_excl_rel_tlist(); - ::pg_query::Node* mutable_excl_rel_tlist(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_excl_rel_tlist(); - private: - const ::pg_query::Node& _internal_excl_rel_tlist(int index) const; - ::pg_query::Node* _internal_add_excl_rel_tlist(); - public: - const ::pg_query::Node& excl_rel_tlist(int index) const; - ::pg_query::Node* add_excl_rel_tlist(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - excl_rel_tlist() const; - - // .pg_query.Node arbiter_where = 3 [json_name = "arbiterWhere"]; - bool has_arbiter_where() const; - private: - bool _internal_has_arbiter_where() const; - public: - void clear_arbiter_where(); - const ::pg_query::Node& arbiter_where() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arbiter_where(); - ::pg_query::Node* mutable_arbiter_where(); - void set_allocated_arbiter_where(::pg_query::Node* arbiter_where); + // repeated .pg_query.Node constraints = 1 [json_name = "constraints"]; + int constraints_size() const; private: - const ::pg_query::Node& _internal_arbiter_where() const; - ::pg_query::Node* _internal_mutable_arbiter_where(); - public: - void unsafe_arena_set_allocated_arbiter_where( - ::pg_query::Node* arbiter_where); - ::pg_query::Node* unsafe_arena_release_arbiter_where(); + int _internal_constraints_size() const; - // .pg_query.Node on_conflict_where = 6 [json_name = "onConflictWhere"]; - bool has_on_conflict_where() const; - private: - bool _internal_has_on_conflict_where() const; - public: - void clear_on_conflict_where(); - const ::pg_query::Node& on_conflict_where() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_on_conflict_where(); - ::pg_query::Node* mutable_on_conflict_where(); - void set_allocated_on_conflict_where(::pg_query::Node* on_conflict_where); - private: - const ::pg_query::Node& _internal_on_conflict_where() const; - ::pg_query::Node* _internal_mutable_on_conflict_where(); public: - void unsafe_arena_set_allocated_on_conflict_where( - ::pg_query::Node* on_conflict_where); - ::pg_query::Node* unsafe_arena_release_on_conflict_where(); - - // .pg_query.OnConflictAction action = 1 [json_name = "action"]; - void clear_action(); - ::pg_query::OnConflictAction action() const; - void set_action(::pg_query::OnConflictAction value); + void clear_constraints() ; + ::pg_query::Node* mutable_constraints(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_constraints(); private: - ::pg_query::OnConflictAction _internal_action() const; - void _internal_set_action(::pg_query::OnConflictAction value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_constraints() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_constraints(); public: + const ::pg_query::Node& constraints(int index) const; + ::pg_query::Node* add_constraints(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + constraints() const; + // bool deferred = 2 [json_name = "deferred"]; + void clear_deferred() ; + bool deferred() const; + void set_deferred(bool value); - // uint32 constraint = 4 [json_name = "constraint"]; - void clear_constraint(); - uint32_t constraint() const; - void set_constraint(uint32_t value); private: - uint32_t _internal_constraint() const; - void _internal_set_constraint(uint32_t value); - public: + bool _internal_deferred() const; + void _internal_set_deferred(bool value); - // int32 excl_rel_index = 7 [json_name = "exclRelIndex"]; - void clear_excl_rel_index(); - int32_t excl_rel_index() const; - void set_excl_rel_index(int32_t value); - private: - int32_t _internal_excl_rel_index() const; - void _internal_set_excl_rel_index(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.OnConflictExpr) + // @@protoc_insertion_point(class_scope:pg_query.ConstraintsSetStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > arbiter_elems_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > on_conflict_set_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > excl_rel_tlist_; - ::pg_query::Node* arbiter_where_; - ::pg_query::Node* on_conflict_where_; - int action_; - uint32_t constraint_; - int32_t excl_rel_index_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > constraints_; + bool deferred_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class IntoClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.IntoClause) */ { +class ConvertRowtypeExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ConvertRowtypeExpr) */ { public: - inline IntoClause() : IntoClause(nullptr) {} - ~IntoClause() override; - explicit PROTOBUF_CONSTEXPR IntoClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ConvertRowtypeExpr() : ConvertRowtypeExpr(nullptr) {} + ~ConvertRowtypeExpr() override; + template + explicit PROTOBUF_CONSTEXPR ConvertRowtypeExpr(::google::protobuf::internal::ConstantInitialized); - IntoClause(const IntoClause& from); - IntoClause(IntoClause&& from) noexcept - : IntoClause() { + inline ConvertRowtypeExpr(const ConvertRowtypeExpr& from) + : ConvertRowtypeExpr(nullptr, from) {} + ConvertRowtypeExpr(ConvertRowtypeExpr&& from) noexcept + : ConvertRowtypeExpr() { *this = ::std::move(from); } - inline IntoClause& operator=(const IntoClause& from) { + inline ConvertRowtypeExpr& operator=(const ConvertRowtypeExpr& from) { CopyFrom(from); return *this; } - inline IntoClause& operator=(IntoClause&& from) noexcept { + inline ConvertRowtypeExpr& operator=(ConvertRowtypeExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -22262,268 +26356,231 @@ class IntoClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const IntoClause& default_instance() { + static const ConvertRowtypeExpr& default_instance() { return *internal_default_instance(); } - static inline const IntoClause* internal_default_instance() { - return reinterpret_cast( - &_IntoClause_default_instance_); + static inline const ConvertRowtypeExpr* internal_default_instance() { + return reinterpret_cast( + &_ConvertRowtypeExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 61; + 37; - friend void swap(IntoClause& a, IntoClause& b) { + friend void swap(ConvertRowtypeExpr& a, ConvertRowtypeExpr& b) { a.Swap(&b); } - inline void Swap(IntoClause* other) { + inline void Swap(ConvertRowtypeExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(IntoClause* other) { + void UnsafeArenaSwap(ConvertRowtypeExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - IntoClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ConvertRowtypeExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const IntoClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const IntoClause& from) { - IntoClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ConvertRowtypeExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ConvertRowtypeExpr& from) { + ConvertRowtypeExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(IntoClause* other); + void InternalSwap(ConvertRowtypeExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.IntoClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ConvertRowtypeExpr"; } protected: - explicit IntoClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ConvertRowtypeExpr(::google::protobuf::Arena* arena); + ConvertRowtypeExpr(::google::protobuf::Arena* arena, const ConvertRowtypeExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kColNamesFieldNumber = 2, - kOptionsFieldNumber = 4, - kAccessMethodFieldNumber = 3, - kTableSpaceNameFieldNumber = 6, - kRelFieldNumber = 1, - kViewQueryFieldNumber = 7, - kOnCommitFieldNumber = 5, - kSkipDataFieldNumber = 8, + kXprFieldNumber = 1, + kArgFieldNumber = 2, + kResulttypeFieldNumber = 3, + kConvertformatFieldNumber = 4, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node col_names = 2 [json_name = "colNames"]; - int col_names_size() const; - private: - int _internal_col_names_size() const; - public: - void clear_col_names(); - ::pg_query::Node* mutable_col_names(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_col_names(); - private: - const ::pg_query::Node& _internal_col_names(int index) const; - ::pg_query::Node* _internal_add_col_names(); - public: - const ::pg_query::Node& col_names(int index) const; - ::pg_query::Node* add_col_names(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - col_names() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // repeated .pg_query.Node options = 4 [json_name = "options"]; - int options_size() const; - private: - int _internal_options_size() const; - public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); - public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - // string access_method = 3 [json_name = "accessMethod"]; - void clear_access_method(); - const std::string& access_method() const; - template - void set_access_method(ArgT0&& arg0, ArgT... args); - std::string* mutable_access_method(); - PROTOBUF_NODISCARD std::string* release_access_method(); - void set_allocated_access_method(std::string* access_method); - private: - const std::string& _internal_access_method() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_access_method(const std::string& value); - std::string* _internal_mutable_access_method(); public: + // .pg_query.Node arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); - // string table_space_name = 6 [json_name = "tableSpaceName"]; - void clear_table_space_name(); - const std::string& table_space_name() const; - template - void set_table_space_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_table_space_name(); - PROTOBUF_NODISCARD std::string* release_table_space_name(); - void set_allocated_table_space_name(std::string* table_space_name); private: - const std::string& _internal_table_space_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_table_space_name(const std::string& value); - std::string* _internal_mutable_table_space_name(); - public: + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); - // .pg_query.RangeVar rel = 1 [json_name = "rel"]; - bool has_rel() const; - private: - bool _internal_has_rel() const; - public: - void clear_rel(); - const ::pg_query::RangeVar& rel() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_rel(); - ::pg_query::RangeVar* mutable_rel(); - void set_allocated_rel(::pg_query::RangeVar* rel); - private: - const ::pg_query::RangeVar& _internal_rel() const; - ::pg_query::RangeVar* _internal_mutable_rel(); public: - void unsafe_arena_set_allocated_rel( - ::pg_query::RangeVar* rel); - ::pg_query::RangeVar* unsafe_arena_release_rel(); + // uint32 resulttype = 3 [json_name = "resulttype"]; + void clear_resulttype() ; + ::uint32_t resulttype() const; + void set_resulttype(::uint32_t value); - // .pg_query.Node view_query = 7 [json_name = "viewQuery"]; - bool has_view_query() const; - private: - bool _internal_has_view_query() const; - public: - void clear_view_query(); - const ::pg_query::Node& view_query() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_view_query(); - ::pg_query::Node* mutable_view_query(); - void set_allocated_view_query(::pg_query::Node* view_query); private: - const ::pg_query::Node& _internal_view_query() const; - ::pg_query::Node* _internal_mutable_view_query(); + ::uint32_t _internal_resulttype() const; + void _internal_set_resulttype(::uint32_t value); + public: - void unsafe_arena_set_allocated_view_query( - ::pg_query::Node* view_query); - ::pg_query::Node* unsafe_arena_release_view_query(); + // .pg_query.CoercionForm convertformat = 4 [json_name = "convertformat"]; + void clear_convertformat() ; + ::pg_query::CoercionForm convertformat() const; + void set_convertformat(::pg_query::CoercionForm value); - // .pg_query.OnCommitAction on_commit = 5 [json_name = "onCommit"]; - void clear_on_commit(); - ::pg_query::OnCommitAction on_commit() const; - void set_on_commit(::pg_query::OnCommitAction value); private: - ::pg_query::OnCommitAction _internal_on_commit() const; - void _internal_set_on_commit(::pg_query::OnCommitAction value); + ::pg_query::CoercionForm _internal_convertformat() const; + void _internal_set_convertformat(::pg_query::CoercionForm value); + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // bool skip_data = 8 [json_name = "skipData"]; - void clear_skip_data(); - bool skip_data() const; - void set_skip_data(bool value); private: - bool _internal_skip_data() const; - void _internal_set_skip_data(bool value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.IntoClause) + public: + // @@protoc_insertion_point(class_scope:pg_query.ConvertRowtypeExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > col_names_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr access_method_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr table_space_name_; - ::pg_query::RangeVar* rel_; - ::pg_query::Node* view_query_; - int on_commit_; - bool skip_data_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* xpr_; + ::pg_query::Node* arg_; + ::uint32_t resulttype_; + int convertformat_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class MergeAction final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.MergeAction) */ { +class CopyStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CopyStmt) */ { public: - inline MergeAction() : MergeAction(nullptr) {} - ~MergeAction() override; - explicit PROTOBUF_CONSTEXPR MergeAction(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CopyStmt() : CopyStmt(nullptr) {} + ~CopyStmt() override; + template + explicit PROTOBUF_CONSTEXPR CopyStmt(::google::protobuf::internal::ConstantInitialized); - MergeAction(const MergeAction& from); - MergeAction(MergeAction&& from) noexcept - : MergeAction() { + inline CopyStmt(const CopyStmt& from) + : CopyStmt(nullptr, from) {} + CopyStmt(CopyStmt&& from) noexcept + : CopyStmt() { *this = ::std::move(from); } - inline MergeAction& operator=(const MergeAction& from) { + inline CopyStmt& operator=(const CopyStmt& from) { CopyFrom(from); return *this; } - inline MergeAction& operator=(MergeAction&& from) noexcept { + inline CopyStmt& operator=(CopyStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -22533,227 +26590,294 @@ class MergeAction final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const MergeAction& default_instance() { + static const CopyStmt& default_instance() { return *internal_default_instance(); } - static inline const MergeAction* internal_default_instance() { - return reinterpret_cast( - &_MergeAction_default_instance_); + static inline const CopyStmt* internal_default_instance() { + return reinterpret_cast( + &_CopyStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 62; + 146; - friend void swap(MergeAction& a, MergeAction& b) { + friend void swap(CopyStmt& a, CopyStmt& b) { a.Swap(&b); } - inline void Swap(MergeAction* other) { + inline void Swap(CopyStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(MergeAction* other) { + void UnsafeArenaSwap(CopyStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - MergeAction* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CopyStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const MergeAction& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const MergeAction& from) { - MergeAction::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CopyStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CopyStmt& from) { + CopyStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(MergeAction* other); + void InternalSwap(CopyStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.MergeAction"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CopyStmt"; } protected: - explicit MergeAction(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CopyStmt(::google::protobuf::Arena* arena); + CopyStmt(::google::protobuf::Arena* arena, const CopyStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kTargetListFieldNumber = 5, - kUpdateColnosFieldNumber = 6, - kQualFieldNumber = 4, - kMatchedFieldNumber = 1, - kCommandTypeFieldNumber = 2, - kOverrideFieldNumber = 3, + kAttlistFieldNumber = 3, + kOptionsFieldNumber = 7, + kFilenameFieldNumber = 6, + kRelationFieldNumber = 1, + kQueryFieldNumber = 2, + kWhereClauseFieldNumber = 8, + kIsFromFieldNumber = 4, + kIsProgramFieldNumber = 5, }; - // repeated .pg_query.Node target_list = 5 [json_name = "targetList"]; - int target_list_size() const; + // repeated .pg_query.Node attlist = 3 [json_name = "attlist"]; + int attlist_size() const; private: - int _internal_target_list_size() const; + int _internal_attlist_size() const; + public: - void clear_target_list(); - ::pg_query::Node* mutable_target_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_target_list(); + void clear_attlist() ; + ::pg_query::Node* mutable_attlist(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_attlist(); private: - const ::pg_query::Node& _internal_target_list(int index) const; - ::pg_query::Node* _internal_add_target_list(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_attlist() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_attlist(); public: - const ::pg_query::Node& target_list(int index) const; - ::pg_query::Node* add_target_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - target_list() const; + const ::pg_query::Node& attlist(int index) const; + ::pg_query::Node* add_attlist(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + attlist() const; + // repeated .pg_query.Node options = 7 [json_name = "options"]; + int options_size() const; + private: + int _internal_options_size() const; - // repeated .pg_query.Node update_colnos = 6 [json_name = "updateColnos"]; - int update_colnos_size() const; + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - int _internal_update_colnos_size() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void clear_update_colnos(); - ::pg_query::Node* mutable_update_colnos(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_update_colnos(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string filename = 6 [json_name = "filename"]; + void clear_filename() ; + const std::string& filename() const; + template + void set_filename(Arg_&& arg, Args_... args); + std::string* mutable_filename(); + PROTOBUF_NODISCARD std::string* release_filename(); + void set_allocated_filename(std::string* value); + private: - const ::pg_query::Node& _internal_update_colnos(int index) const; - ::pg_query::Node* _internal_add_update_colnos(); + const std::string& _internal_filename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_filename( + const std::string& value); + std::string* _internal_mutable_filename(); + public: - const ::pg_query::Node& update_colnos(int index) const; - ::pg_query::Node* add_update_colnos(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - update_colnos() const; + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // .pg_query.Node qual = 4 [json_name = "qual"]; - bool has_qual() const; private: - bool _internal_has_qual() const; + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); + public: - void clear_qual(); - const ::pg_query::Node& qual() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_qual(); - ::pg_query::Node* mutable_qual(); - void set_allocated_qual(::pg_query::Node* qual); + // .pg_query.Node query = 2 [json_name = "query"]; + bool has_query() const; + void clear_query() ; + const ::pg_query::Node& query() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_query(); + ::pg_query::Node* mutable_query(); + void set_allocated_query(::pg_query::Node* value); + void unsafe_arena_set_allocated_query(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_query(); + private: - const ::pg_query::Node& _internal_qual() const; - ::pg_query::Node* _internal_mutable_qual(); + const ::pg_query::Node& _internal_query() const; + ::pg_query::Node* _internal_mutable_query(); + public: - void unsafe_arena_set_allocated_qual( - ::pg_query::Node* qual); - ::pg_query::Node* unsafe_arena_release_qual(); + // .pg_query.Node where_clause = 8 [json_name = "whereClause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); - // bool matched = 1 [json_name = "matched"]; - void clear_matched(); - bool matched() const; - void set_matched(bool value); private: - bool _internal_matched() const; - void _internal_set_matched(bool value); + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); + public: + // bool is_from = 4 [json_name = "is_from"]; + void clear_is_from() ; + bool is_from() const; + void set_is_from(bool value); - // .pg_query.CmdType command_type = 2 [json_name = "commandType"]; - void clear_command_type(); - ::pg_query::CmdType command_type() const; - void set_command_type(::pg_query::CmdType value); private: - ::pg_query::CmdType _internal_command_type() const; - void _internal_set_command_type(::pg_query::CmdType value); + bool _internal_is_from() const; + void _internal_set_is_from(bool value); + public: + // bool is_program = 5 [json_name = "is_program"]; + void clear_is_program() ; + bool is_program() const; + void set_is_program(bool value); - // .pg_query.OverridingKind override = 3 [json_name = "override"]; - void clear_override(); - ::pg_query::OverridingKind override() const; - void set_override(::pg_query::OverridingKind value); private: - ::pg_query::OverridingKind _internal_override() const; - void _internal_set_override(::pg_query::OverridingKind value); - public: + bool _internal_is_program() const; + void _internal_set_is_program(bool value); - // @@protoc_insertion_point(class_scope:pg_query.MergeAction) + public: + // @@protoc_insertion_point(class_scope:pg_query.CopyStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 5, + 42, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > target_list_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > update_colnos_; - ::pg_query::Node* qual_; - bool matched_; - int command_type_; - int override_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > attlist_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr filename_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* query_; + ::pg_query::Node* where_clause_; + bool is_from_; + bool is_program_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RawStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RawStmt) */ { +class CreateAmStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateAmStmt) */ { public: - inline RawStmt() : RawStmt(nullptr) {} - ~RawStmt() override; - explicit PROTOBUF_CONSTEXPR RawStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateAmStmt() : CreateAmStmt(nullptr) {} + ~CreateAmStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateAmStmt(::google::protobuf::internal::ConstantInitialized); - RawStmt(const RawStmt& from); - RawStmt(RawStmt&& from) noexcept - : RawStmt() { + inline CreateAmStmt(const CreateAmStmt& from) + : CreateAmStmt(nullptr, from) {} + CreateAmStmt(CreateAmStmt&& from) noexcept + : CreateAmStmt() { *this = ::std::move(from); } - inline RawStmt& operator=(const RawStmt& from) { + inline CreateAmStmt& operator=(const CreateAmStmt& from) { CopyFrom(from); return *this; } - inline RawStmt& operator=(RawStmt&& from) noexcept { + inline CreateAmStmt& operator=(CreateAmStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -22763,176 +26887,216 @@ class RawStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RawStmt& default_instance() { + static const CreateAmStmt& default_instance() { return *internal_default_instance(); } - static inline const RawStmt* internal_default_instance() { - return reinterpret_cast( - &_RawStmt_default_instance_); + static inline const CreateAmStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateAmStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 63; + 169; - friend void swap(RawStmt& a, RawStmt& b) { + friend void swap(CreateAmStmt& a, CreateAmStmt& b) { a.Swap(&b); } - inline void Swap(RawStmt* other) { + inline void Swap(CreateAmStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RawStmt* other) { + void UnsafeArenaSwap(CreateAmStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RawStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateAmStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RawStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RawStmt& from) { - RawStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateAmStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateAmStmt& from) { + CreateAmStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RawStmt* other); + void InternalSwap(CreateAmStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RawStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateAmStmt"; } protected: - explicit RawStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateAmStmt(::google::protobuf::Arena* arena); + CreateAmStmt(::google::protobuf::Arena* arena, const CreateAmStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kStmtFieldNumber = 1, - kStmtLocationFieldNumber = 2, - kStmtLenFieldNumber = 3, + kHandlerNameFieldNumber = 2, + kAmnameFieldNumber = 1, + kAmtypeFieldNumber = 3, }; - // .pg_query.Node stmt = 1 [json_name = "stmt"]; - bool has_stmt() const; + // repeated .pg_query.Node handler_name = 2 [json_name = "handler_name"]; + int handler_name_size() const; private: - bool _internal_has_stmt() const; + int _internal_handler_name_size() const; + public: - void clear_stmt(); - const ::pg_query::Node& stmt() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_stmt(); - ::pg_query::Node* mutable_stmt(); - void set_allocated_stmt(::pg_query::Node* stmt); + void clear_handler_name() ; + ::pg_query::Node* mutable_handler_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_handler_name(); private: - const ::pg_query::Node& _internal_stmt() const; - ::pg_query::Node* _internal_mutable_stmt(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_handler_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_handler_name(); public: - void unsafe_arena_set_allocated_stmt( - ::pg_query::Node* stmt); - ::pg_query::Node* unsafe_arena_release_stmt(); + const ::pg_query::Node& handler_name(int index) const; + ::pg_query::Node* add_handler_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + handler_name() const; + // string amname = 1 [json_name = "amname"]; + void clear_amname() ; + const std::string& amname() const; + template + void set_amname(Arg_&& arg, Args_... args); + std::string* mutable_amname(); + PROTOBUF_NODISCARD std::string* release_amname(); + void set_allocated_amname(std::string* value); - // int32 stmt_location = 2 [json_name = "stmt_location"]; - void clear_stmt_location(); - int32_t stmt_location() const; - void set_stmt_location(int32_t value); private: - int32_t _internal_stmt_location() const; - void _internal_set_stmt_location(int32_t value); + const std::string& _internal_amname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_amname( + const std::string& value); + std::string* _internal_mutable_amname(); + public: + // string amtype = 3 [json_name = "amtype"]; + void clear_amtype() ; + const std::string& amtype() const; + template + void set_amtype(Arg_&& arg, Args_... args); + std::string* mutable_amtype(); + PROTOBUF_NODISCARD std::string* release_amtype(); + void set_allocated_amtype(std::string* value); - // int32 stmt_len = 3 [json_name = "stmt_len"]; - void clear_stmt_len(); - int32_t stmt_len() const; - void set_stmt_len(int32_t value); private: - int32_t _internal_stmt_len() const; - void _internal_set_stmt_len(int32_t value); - public: + const std::string& _internal_amtype() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_amtype( + const std::string& value); + std::string* _internal_mutable_amtype(); - // @@protoc_insertion_point(class_scope:pg_query.RawStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateAmStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 42, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* stmt_; - int32_t stmt_location_; - int32_t stmt_len_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > handler_name_; + ::google::protobuf::internal::ArenaStringPtr amname_; + ::google::protobuf::internal::ArenaStringPtr amtype_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Query final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Query) */ { +class CreateCastStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateCastStmt) */ { public: - inline Query() : Query(nullptr) {} - ~Query() override; - explicit PROTOBUF_CONSTEXPR Query(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateCastStmt() : CreateCastStmt(nullptr) {} + ~CreateCastStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateCastStmt(::google::protobuf::internal::ConstantInitialized); - Query(const Query& from); - Query(Query&& from) noexcept - : Query() { + inline CreateCastStmt(const CreateCastStmt& from) + : CreateCastStmt(nullptr, from) {} + CreateCastStmt(CreateCastStmt&& from) noexcept + : CreateCastStmt() { *this = ::std::move(from); } - inline Query& operator=(const Query& from) { + inline CreateCastStmt& operator=(const CreateCastStmt& from) { CopyFrom(from); return *this; } - inline Query& operator=(Query&& from) noexcept { + inline CreateCastStmt& operator=(CreateCastStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -22942,754 +27106,725 @@ class Query final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Query& default_instance() { + static const CreateCastStmt& default_instance() { return *internal_default_instance(); } - static inline const Query* internal_default_instance() { - return reinterpret_cast( - &_Query_default_instance_); + static inline const CreateCastStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateCastStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 64; + 239; - friend void swap(Query& a, Query& b) { + friend void swap(CreateCastStmt& a, CreateCastStmt& b) { a.Swap(&b); } - inline void Swap(Query* other) { + inline void Swap(CreateCastStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Query* other) { + void UnsafeArenaSwap(CreateCastStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Query* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateCastStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Query& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Query& from) { - Query::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateCastStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateCastStmt& from) { + CreateCastStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Query* other); + void InternalSwap(CreateCastStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Query"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateCastStmt"; } protected: - explicit Query(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateCastStmt(::google::protobuf::Arena* arena); + CreateCastStmt(::google::protobuf::Arena* arena, const CreateCastStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCteListFieldNumber = 16, - kRtableFieldNumber = 17, - kMergeActionListFieldNumber = 19, - kTargetListFieldNumber = 21, - kReturningListFieldNumber = 24, - kGroupClauseFieldNumber = 25, - kGroupingSetsFieldNumber = 27, - kWindowClauseFieldNumber = 29, - kDistinctClauseFieldNumber = 30, - kSortClauseFieldNumber = 31, - kRowMarksFieldNumber = 35, - kConstraintDepsFieldNumber = 37, - kWithCheckOptionsFieldNumber = 38, - kUtilityStmtFieldNumber = 4, - kJointreeFieldNumber = 18, - kOnConflictFieldNumber = 23, - kHavingQualFieldNumber = 28, - kLimitOffsetFieldNumber = 32, - kLimitCountFieldNumber = 33, - kSetOperationsFieldNumber = 36, - kCommandTypeFieldNumber = 1, - kQuerySourceFieldNumber = 2, - kResultRelationFieldNumber = 5, - kCanSetTagFieldNumber = 3, - kHasAggsFieldNumber = 6, - kHasWindowFuncsFieldNumber = 7, - kHasTargetSrfsFieldNumber = 8, - kHasSubLinksFieldNumber = 9, - kHasDistinctOnFieldNumber = 10, - kHasRecursiveFieldNumber = 11, - kHasModifyingCteFieldNumber = 12, - kHasForUpdateFieldNumber = 13, - kHasRowSecurityFieldNumber = 14, - kIsReturnFieldNumber = 15, - kMergeUseOuterJoinFieldNumber = 20, - kOverrideFieldNumber = 22, - kGroupDistinctFieldNumber = 26, - kLimitOptionFieldNumber = 34, - kStmtLocationFieldNumber = 39, - kStmtLenFieldNumber = 40, + kSourcetypeFieldNumber = 1, + kTargettypeFieldNumber = 2, + kFuncFieldNumber = 3, + kContextFieldNumber = 4, + kInoutFieldNumber = 5, }; - // repeated .pg_query.Node cte_list = 16 [json_name = "cteList"]; - int cte_list_size() const; - private: - int _internal_cte_list_size() const; - public: - void clear_cte_list(); - ::pg_query::Node* mutable_cte_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_cte_list(); - private: - const ::pg_query::Node& _internal_cte_list(int index) const; - ::pg_query::Node* _internal_add_cte_list(); - public: - const ::pg_query::Node& cte_list(int index) const; - ::pg_query::Node* add_cte_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - cte_list() const; - - // repeated .pg_query.Node rtable = 17 [json_name = "rtable"]; - int rtable_size() const; - private: - int _internal_rtable_size() const; - public: - void clear_rtable(); - ::pg_query::Node* mutable_rtable(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_rtable(); - private: - const ::pg_query::Node& _internal_rtable(int index) const; - ::pg_query::Node* _internal_add_rtable(); - public: - const ::pg_query::Node& rtable(int index) const; - ::pg_query::Node* add_rtable(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - rtable() const; + // .pg_query.TypeName sourcetype = 1 [json_name = "sourcetype"]; + bool has_sourcetype() const; + void clear_sourcetype() ; + const ::pg_query::TypeName& sourcetype() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_sourcetype(); + ::pg_query::TypeName* mutable_sourcetype(); + void set_allocated_sourcetype(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_sourcetype(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_sourcetype(); - // repeated .pg_query.Node merge_action_list = 19 [json_name = "mergeActionList"]; - int merge_action_list_size() const; - private: - int _internal_merge_action_list_size() const; - public: - void clear_merge_action_list(); - ::pg_query::Node* mutable_merge_action_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_merge_action_list(); private: - const ::pg_query::Node& _internal_merge_action_list(int index) const; - ::pg_query::Node* _internal_add_merge_action_list(); - public: - const ::pg_query::Node& merge_action_list(int index) const; - ::pg_query::Node* add_merge_action_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - merge_action_list() const; + const ::pg_query::TypeName& _internal_sourcetype() const; + ::pg_query::TypeName* _internal_mutable_sourcetype(); - // repeated .pg_query.Node target_list = 21 [json_name = "targetList"]; - int target_list_size() const; - private: - int _internal_target_list_size() const; - public: - void clear_target_list(); - ::pg_query::Node* mutable_target_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_target_list(); - private: - const ::pg_query::Node& _internal_target_list(int index) const; - ::pg_query::Node* _internal_add_target_list(); public: - const ::pg_query::Node& target_list(int index) const; - ::pg_query::Node* add_target_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - target_list() const; + // .pg_query.TypeName targettype = 2 [json_name = "targettype"]; + bool has_targettype() const; + void clear_targettype() ; + const ::pg_query::TypeName& targettype() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_targettype(); + ::pg_query::TypeName* mutable_targettype(); + void set_allocated_targettype(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_targettype(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_targettype(); - // repeated .pg_query.Node returning_list = 24 [json_name = "returningList"]; - int returning_list_size() const; private: - int _internal_returning_list_size() const; - public: - void clear_returning_list(); - ::pg_query::Node* mutable_returning_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_returning_list(); - private: - const ::pg_query::Node& _internal_returning_list(int index) const; - ::pg_query::Node* _internal_add_returning_list(); - public: - const ::pg_query::Node& returning_list(int index) const; - ::pg_query::Node* add_returning_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - returning_list() const; + const ::pg_query::TypeName& _internal_targettype() const; + ::pg_query::TypeName* _internal_mutable_targettype(); - // repeated .pg_query.Node group_clause = 25 [json_name = "groupClause"]; - int group_clause_size() const; - private: - int _internal_group_clause_size() const; - public: - void clear_group_clause(); - ::pg_query::Node* mutable_group_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_group_clause(); - private: - const ::pg_query::Node& _internal_group_clause(int index) const; - ::pg_query::Node* _internal_add_group_clause(); public: - const ::pg_query::Node& group_clause(int index) const; - ::pg_query::Node* add_group_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - group_clause() const; + // .pg_query.ObjectWithArgs func = 3 [json_name = "func"]; + bool has_func() const; + void clear_func() ; + const ::pg_query::ObjectWithArgs& func() const; + PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_func(); + ::pg_query::ObjectWithArgs* mutable_func(); + void set_allocated_func(::pg_query::ObjectWithArgs* value); + void unsafe_arena_set_allocated_func(::pg_query::ObjectWithArgs* value); + ::pg_query::ObjectWithArgs* unsafe_arena_release_func(); - // repeated .pg_query.Node grouping_sets = 27 [json_name = "groupingSets"]; - int grouping_sets_size() const; - private: - int _internal_grouping_sets_size() const; - public: - void clear_grouping_sets(); - ::pg_query::Node* mutable_grouping_sets(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_grouping_sets(); private: - const ::pg_query::Node& _internal_grouping_sets(int index) const; - ::pg_query::Node* _internal_add_grouping_sets(); - public: - const ::pg_query::Node& grouping_sets(int index) const; - ::pg_query::Node* add_grouping_sets(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - grouping_sets() const; + const ::pg_query::ObjectWithArgs& _internal_func() const; + ::pg_query::ObjectWithArgs* _internal_mutable_func(); - // repeated .pg_query.Node window_clause = 29 [json_name = "windowClause"]; - int window_clause_size() const; - private: - int _internal_window_clause_size() const; - public: - void clear_window_clause(); - ::pg_query::Node* mutable_window_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_window_clause(); - private: - const ::pg_query::Node& _internal_window_clause(int index) const; - ::pg_query::Node* _internal_add_window_clause(); public: - const ::pg_query::Node& window_clause(int index) const; - ::pg_query::Node* add_window_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - window_clause() const; + // .pg_query.CoercionContext context = 4 [json_name = "context"]; + void clear_context() ; + ::pg_query::CoercionContext context() const; + void set_context(::pg_query::CoercionContext value); - // repeated .pg_query.Node distinct_clause = 30 [json_name = "distinctClause"]; - int distinct_clause_size() const; - private: - int _internal_distinct_clause_size() const; - public: - void clear_distinct_clause(); - ::pg_query::Node* mutable_distinct_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_distinct_clause(); private: - const ::pg_query::Node& _internal_distinct_clause(int index) const; - ::pg_query::Node* _internal_add_distinct_clause(); - public: - const ::pg_query::Node& distinct_clause(int index) const; - ::pg_query::Node* add_distinct_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - distinct_clause() const; + ::pg_query::CoercionContext _internal_context() const; + void _internal_set_context(::pg_query::CoercionContext value); - // repeated .pg_query.Node sort_clause = 31 [json_name = "sortClause"]; - int sort_clause_size() const; - private: - int _internal_sort_clause_size() const; - public: - void clear_sort_clause(); - ::pg_query::Node* mutable_sort_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_sort_clause(); - private: - const ::pg_query::Node& _internal_sort_clause(int index) const; - ::pg_query::Node* _internal_add_sort_clause(); public: - const ::pg_query::Node& sort_clause(int index) const; - ::pg_query::Node* add_sort_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - sort_clause() const; + // bool inout = 5 [json_name = "inout"]; + void clear_inout() ; + bool inout() const; + void set_inout(bool value); - // repeated .pg_query.Node row_marks = 35 [json_name = "rowMarks"]; - int row_marks_size() const; - private: - int _internal_row_marks_size() const; - public: - void clear_row_marks(); - ::pg_query::Node* mutable_row_marks(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_row_marks(); private: - const ::pg_query::Node& _internal_row_marks(int index) const; - ::pg_query::Node* _internal_add_row_marks(); - public: - const ::pg_query::Node& row_marks(int index) const; - ::pg_query::Node* add_row_marks(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - row_marks() const; + bool _internal_inout() const; + void _internal_set_inout(bool value); - // repeated .pg_query.Node constraint_deps = 37 [json_name = "constraintDeps"]; - int constraint_deps_size() const; - private: - int _internal_constraint_deps_size() const; - public: - void clear_constraint_deps(); - ::pg_query::Node* mutable_constraint_deps(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_constraint_deps(); - private: - const ::pg_query::Node& _internal_constraint_deps(int index) const; - ::pg_query::Node* _internal_add_constraint_deps(); public: - const ::pg_query::Node& constraint_deps(int index) const; - ::pg_query::Node* add_constraint_deps(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - constraint_deps() const; + // @@protoc_insertion_point(class_scope:pg_query.CreateCastStmt) + private: + class _Internal; - // repeated .pg_query.Node with_check_options = 38 [json_name = "withCheckOptions"]; - int with_check_options_size() const; - private: - int _internal_with_check_options_size() const; - public: - void clear_with_check_options(); - ::pg_query::Node* mutable_with_check_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_with_check_options(); - private: - const ::pg_query::Node& _internal_with_check_options(int index) const; - ::pg_query::Node* _internal_add_with_check_options(); - public: - const ::pg_query::Node& with_check_options(int index) const; - ::pg_query::Node* add_with_check_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - with_check_options() const; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // .pg_query.Node utility_stmt = 4 [json_name = "utilityStmt"]; - bool has_utility_stmt() const; - private: - bool _internal_has_utility_stmt() const; - public: - void clear_utility_stmt(); - const ::pg_query::Node& utility_stmt() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_utility_stmt(); - ::pg_query::Node* mutable_utility_stmt(); - void set_allocated_utility_stmt(::pg_query::Node* utility_stmt); - private: - const ::pg_query::Node& _internal_utility_stmt() const; - ::pg_query::Node* _internal_mutable_utility_stmt(); - public: - void unsafe_arena_set_allocated_utility_stmt( - ::pg_query::Node* utility_stmt); - ::pg_query::Node* unsafe_arena_release_utility_stmt(); + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::TypeName* sourcetype_; + ::pg_query::TypeName* targettype_; + ::pg_query::ObjectWithArgs* func_; + int context_; + bool inout_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- - // .pg_query.FromExpr jointree = 18 [json_name = "jointree"]; - bool has_jointree() const; - private: - bool _internal_has_jointree() const; - public: - void clear_jointree(); - const ::pg_query::FromExpr& jointree() const; - PROTOBUF_NODISCARD ::pg_query::FromExpr* release_jointree(); - ::pg_query::FromExpr* mutable_jointree(); - void set_allocated_jointree(::pg_query::FromExpr* jointree); - private: - const ::pg_query::FromExpr& _internal_jointree() const; - ::pg_query::FromExpr* _internal_mutable_jointree(); - public: - void unsafe_arena_set_allocated_jointree( - ::pg_query::FromExpr* jointree); - ::pg_query::FromExpr* unsafe_arena_release_jointree(); +class CreateConversionStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateConversionStmt) */ { + public: + inline CreateConversionStmt() : CreateConversionStmt(nullptr) {} + ~CreateConversionStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateConversionStmt(::google::protobuf::internal::ConstantInitialized); - // .pg_query.OnConflictExpr on_conflict = 23 [json_name = "onConflict"]; - bool has_on_conflict() const; - private: - bool _internal_has_on_conflict() const; - public: - void clear_on_conflict(); - const ::pg_query::OnConflictExpr& on_conflict() const; - PROTOBUF_NODISCARD ::pg_query::OnConflictExpr* release_on_conflict(); - ::pg_query::OnConflictExpr* mutable_on_conflict(); - void set_allocated_on_conflict(::pg_query::OnConflictExpr* on_conflict); - private: - const ::pg_query::OnConflictExpr& _internal_on_conflict() const; - ::pg_query::OnConflictExpr* _internal_mutable_on_conflict(); - public: - void unsafe_arena_set_allocated_on_conflict( - ::pg_query::OnConflictExpr* on_conflict); - ::pg_query::OnConflictExpr* unsafe_arena_release_on_conflict(); + inline CreateConversionStmt(const CreateConversionStmt& from) + : CreateConversionStmt(nullptr, from) {} + CreateConversionStmt(CreateConversionStmt&& from) noexcept + : CreateConversionStmt() { + *this = ::std::move(from); + } - // .pg_query.Node having_qual = 28 [json_name = "havingQual"]; - bool has_having_qual() const; - private: - bool _internal_has_having_qual() const; - public: - void clear_having_qual(); - const ::pg_query::Node& having_qual() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_having_qual(); - ::pg_query::Node* mutable_having_qual(); - void set_allocated_having_qual(::pg_query::Node* having_qual); - private: - const ::pg_query::Node& _internal_having_qual() const; - ::pg_query::Node* _internal_mutable_having_qual(); - public: - void unsafe_arena_set_allocated_having_qual( - ::pg_query::Node* having_qual); - ::pg_query::Node* unsafe_arena_release_having_qual(); + inline CreateConversionStmt& operator=(const CreateConversionStmt& from) { + CopyFrom(from); + return *this; + } + inline CreateConversionStmt& operator=(CreateConversionStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } - // .pg_query.Node limit_offset = 32 [json_name = "limitOffset"]; - bool has_limit_offset() const; - private: - bool _internal_has_limit_offset() const; - public: - void clear_limit_offset(); - const ::pg_query::Node& limit_offset() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_limit_offset(); - ::pg_query::Node* mutable_limit_offset(); - void set_allocated_limit_offset(::pg_query::Node* limit_offset); - private: - const ::pg_query::Node& _internal_limit_offset() const; - ::pg_query::Node* _internal_mutable_limit_offset(); - public: - void unsafe_arena_set_allocated_limit_offset( - ::pg_query::Node* limit_offset); - ::pg_query::Node* unsafe_arena_release_limit_offset(); + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } - // .pg_query.Node limit_count = 33 [json_name = "limitCount"]; - bool has_limit_count() const; - private: - bool _internal_has_limit_count() const; - public: - void clear_limit_count(); - const ::pg_query::Node& limit_count() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_limit_count(); - ::pg_query::Node* mutable_limit_count(); - void set_allocated_limit_count(::pg_query::Node* limit_count); - private: - const ::pg_query::Node& _internal_limit_count() const; - ::pg_query::Node* _internal_mutable_limit_count(); - public: - void unsafe_arena_set_allocated_limit_count( - ::pg_query::Node* limit_count); - ::pg_query::Node* unsafe_arena_release_limit_count(); + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CreateConversionStmt& default_instance() { + return *internal_default_instance(); + } + static inline const CreateConversionStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateConversionStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 238; - // .pg_query.Node set_operations = 36 [json_name = "setOperations"]; - bool has_set_operations() const; - private: - bool _internal_has_set_operations() const; - public: - void clear_set_operations(); - const ::pg_query::Node& set_operations() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_set_operations(); - ::pg_query::Node* mutable_set_operations(); - void set_allocated_set_operations(::pg_query::Node* set_operations); - private: - const ::pg_query::Node& _internal_set_operations() const; - ::pg_query::Node* _internal_mutable_set_operations(); - public: - void unsafe_arena_set_allocated_set_operations( - ::pg_query::Node* set_operations); - ::pg_query::Node* unsafe_arena_release_set_operations(); + friend void swap(CreateConversionStmt& a, CreateConversionStmt& b) { + a.Swap(&b); + } + inline void Swap(CreateConversionStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CreateConversionStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } - // .pg_query.CmdType command_type = 1 [json_name = "commandType"]; - void clear_command_type(); - ::pg_query::CmdType command_type() const; - void set_command_type(::pg_query::CmdType value); - private: - ::pg_query::CmdType _internal_command_type() const; - void _internal_set_command_type(::pg_query::CmdType value); - public: + // implements Message ---------------------------------------------- - // .pg_query.QuerySource query_source = 2 [json_name = "querySource"]; - void clear_query_source(); - ::pg_query::QuerySource query_source() const; - void set_query_source(::pg_query::QuerySource value); + CreateConversionStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateConversionStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateConversionStmt& from) { + CreateConversionStmt::MergeImpl(*this, from); + } private: - ::pg_query::QuerySource _internal_query_source() const; - void _internal_set_query_source(::pg_query::QuerySource value); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; - // int32 result_relation = 5 [json_name = "resultRelation"]; - void clear_result_relation(); - int32_t result_relation() const; - void set_result_relation(int32_t value); - private: - int32_t _internal_result_relation() const; - void _internal_set_result_relation(int32_t value); - public: + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // bool can_set_tag = 3 [json_name = "canSetTag"]; - void clear_can_set_tag(); - bool can_set_tag() const; - void set_can_set_tag(bool value); private: - bool _internal_can_set_tag() const; - void _internal_set_can_set_tag(bool value); - public: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(CreateConversionStmt* other); - // bool has_aggs = 6 [json_name = "hasAggs"]; - void clear_has_aggs(); - bool has_aggs() const; - void set_has_aggs(bool value); private: - bool _internal_has_aggs() const; - void _internal_set_has_aggs(bool value); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateConversionStmt"; + } + protected: + explicit CreateConversionStmt(::google::protobuf::Arena* arena); + CreateConversionStmt(::google::protobuf::Arena* arena, const CreateConversionStmt& from); public: - // bool has_window_funcs = 7 [json_name = "hasWindowFuncs"]; - void clear_has_window_funcs(); - bool has_window_funcs() const; - void set_has_window_funcs(bool value); - private: - bool _internal_has_window_funcs() const; - void _internal_set_has_window_funcs(bool value); - public: + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - // bool has_target_srfs = 8 [json_name = "hasTargetSRFs"]; - void clear_has_target_srfs(); - bool has_target_srfs() const; - void set_has_target_srfs(bool value); + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kConversionNameFieldNumber = 1, + kFuncNameFieldNumber = 4, + kForEncodingNameFieldNumber = 2, + kToEncodingNameFieldNumber = 3, + kDefFieldNumber = 5, + }; + // repeated .pg_query.Node conversion_name = 1 [json_name = "conversion_name"]; + int conversion_name_size() const; private: - bool _internal_has_target_srfs() const; - void _internal_set_has_target_srfs(bool value); - public: + int _internal_conversion_name_size() const; - // bool has_sub_links = 9 [json_name = "hasSubLinks"]; - void clear_has_sub_links(); - bool has_sub_links() const; - void set_has_sub_links(bool value); + public: + void clear_conversion_name() ; + ::pg_query::Node* mutable_conversion_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_conversion_name(); private: - bool _internal_has_sub_links() const; - void _internal_set_has_sub_links(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_conversion_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_conversion_name(); public: + const ::pg_query::Node& conversion_name(int index) const; + ::pg_query::Node* add_conversion_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + conversion_name() const; + // repeated .pg_query.Node func_name = 4 [json_name = "func_name"]; + int func_name_size() const; + private: + int _internal_func_name_size() const; - // bool has_distinct_on = 10 [json_name = "hasDistinctOn"]; - void clear_has_distinct_on(); - bool has_distinct_on() const; - void set_has_distinct_on(bool value); + public: + void clear_func_name() ; + ::pg_query::Node* mutable_func_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_func_name(); private: - bool _internal_has_distinct_on() const; - void _internal_set_has_distinct_on(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_func_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_func_name(); public: + const ::pg_query::Node& func_name(int index) const; + ::pg_query::Node* add_func_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + func_name() const; + // string for_encoding_name = 2 [json_name = "for_encoding_name"]; + void clear_for_encoding_name() ; + const std::string& for_encoding_name() const; + template + void set_for_encoding_name(Arg_&& arg, Args_... args); + std::string* mutable_for_encoding_name(); + PROTOBUF_NODISCARD std::string* release_for_encoding_name(); + void set_allocated_for_encoding_name(std::string* value); - // bool has_recursive = 11 [json_name = "hasRecursive"]; - void clear_has_recursive(); - bool has_recursive() const; - void set_has_recursive(bool value); private: - bool _internal_has_recursive() const; - void _internal_set_has_recursive(bool value); + const std::string& _internal_for_encoding_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_for_encoding_name( + const std::string& value); + std::string* _internal_mutable_for_encoding_name(); + public: + // string to_encoding_name = 3 [json_name = "to_encoding_name"]; + void clear_to_encoding_name() ; + const std::string& to_encoding_name() const; + template + void set_to_encoding_name(Arg_&& arg, Args_... args); + std::string* mutable_to_encoding_name(); + PROTOBUF_NODISCARD std::string* release_to_encoding_name(); + void set_allocated_to_encoding_name(std::string* value); - // bool has_modifying_cte = 12 [json_name = "hasModifyingCTE"]; - void clear_has_modifying_cte(); - bool has_modifying_cte() const; - void set_has_modifying_cte(bool value); private: - bool _internal_has_modifying_cte() const; - void _internal_set_has_modifying_cte(bool value); + const std::string& _internal_to_encoding_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_to_encoding_name( + const std::string& value); + std::string* _internal_mutable_to_encoding_name(); + public: + // bool def = 5 [json_name = "def"]; + void clear_def() ; + bool def() const; + void set_def(bool value); - // bool has_for_update = 13 [json_name = "hasForUpdate"]; - void clear_has_for_update(); - bool has_for_update() const; - void set_has_for_update(bool value); private: - bool _internal_has_for_update() const; - void _internal_set_has_for_update(bool value); + bool _internal_def() const; + void _internal_set_def(bool value); + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateConversionStmt) + private: + class _Internal; - // bool has_row_security = 14 [json_name = "hasRowSecurity"]; - void clear_has_row_security(); - bool has_row_security() const; - void set_has_row_security(bool value); + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 71, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > conversion_name_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > func_name_; + ::google::protobuf::internal::ArenaStringPtr for_encoding_name_; + ::google::protobuf::internal::ArenaStringPtr to_encoding_name_; + bool def_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class CreateDomainStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateDomainStmt) */ { + public: + inline CreateDomainStmt() : CreateDomainStmt(nullptr) {} + ~CreateDomainStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateDomainStmt(::google::protobuf::internal::ConstantInitialized); + + inline CreateDomainStmt(const CreateDomainStmt& from) + : CreateDomainStmt(nullptr, from) {} + CreateDomainStmt(CreateDomainStmt&& from) noexcept + : CreateDomainStmt() { + *this = ::std::move(from); + } + + inline CreateDomainStmt& operator=(const CreateDomainStmt& from) { + CopyFrom(from); + return *this; + } + inline CreateDomainStmt& operator=(CreateDomainStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CreateDomainStmt& default_instance() { + return *internal_default_instance(); + } + static inline const CreateDomainStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateDomainStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 181; + + friend void swap(CreateDomainStmt& a, CreateDomainStmt& b) { + a.Swap(&b); + } + inline void Swap(CreateDomainStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CreateDomainStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + CreateDomainStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateDomainStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateDomainStmt& from) { + CreateDomainStmt::MergeImpl(*this, from); + } private: - bool _internal_has_row_security() const; - void _internal_set_has_row_security(bool value); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // bool is_return = 15 [json_name = "isReturn"]; - void clear_is_return(); - bool is_return() const; - void set_is_return(bool value); private: - bool _internal_is_return() const; - void _internal_set_is_return(bool value); - public: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(CreateDomainStmt* other); - // bool merge_use_outer_join = 20 [json_name = "mergeUseOuterJoin"]; - void clear_merge_use_outer_join(); - bool merge_use_outer_join() const; - void set_merge_use_outer_join(bool value); private: - bool _internal_merge_use_outer_join() const; - void _internal_set_merge_use_outer_join(bool value); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateDomainStmt"; + } + protected: + explicit CreateDomainStmt(::google::protobuf::Arena* arena); + CreateDomainStmt(::google::protobuf::Arena* arena, const CreateDomainStmt& from); public: - // .pg_query.OverridingKind override = 22 [json_name = "override"]; - void clear_override(); - ::pg_query::OverridingKind override() const; - void set_override(::pg_query::OverridingKind value); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kDomainnameFieldNumber = 1, + kConstraintsFieldNumber = 4, + kTypeNameFieldNumber = 2, + kCollClauseFieldNumber = 3, + }; + // repeated .pg_query.Node domainname = 1 [json_name = "domainname"]; + int domainname_size() const; private: - ::pg_query::OverridingKind _internal_override() const; - void _internal_set_override(::pg_query::OverridingKind value); - public: + int _internal_domainname_size() const; - // bool group_distinct = 26 [json_name = "groupDistinct"]; - void clear_group_distinct(); - bool group_distinct() const; - void set_group_distinct(bool value); + public: + void clear_domainname() ; + ::pg_query::Node* mutable_domainname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_domainname(); private: - bool _internal_group_distinct() const; - void _internal_set_group_distinct(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_domainname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_domainname(); public: + const ::pg_query::Node& domainname(int index) const; + ::pg_query::Node* add_domainname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + domainname() const; + // repeated .pg_query.Node constraints = 4 [json_name = "constraints"]; + int constraints_size() const; + private: + int _internal_constraints_size() const; - // .pg_query.LimitOption limit_option = 34 [json_name = "limitOption"]; - void clear_limit_option(); - ::pg_query::LimitOption limit_option() const; - void set_limit_option(::pg_query::LimitOption value); + public: + void clear_constraints() ; + ::pg_query::Node* mutable_constraints(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_constraints(); private: - ::pg_query::LimitOption _internal_limit_option() const; - void _internal_set_limit_option(::pg_query::LimitOption value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_constraints() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_constraints(); public: + const ::pg_query::Node& constraints(int index) const; + ::pg_query::Node* add_constraints(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + constraints() const; + // .pg_query.TypeName type_name = 2 [json_name = "typeName"]; + bool has_type_name() const; + void clear_type_name() ; + const ::pg_query::TypeName& type_name() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); + ::pg_query::TypeName* mutable_type_name(); + void set_allocated_type_name(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_type_name(); - // int32 stmt_location = 39 [json_name = "stmt_location"]; - void clear_stmt_location(); - int32_t stmt_location() const; - void set_stmt_location(int32_t value); private: - int32_t _internal_stmt_location() const; - void _internal_set_stmt_location(int32_t value); + const ::pg_query::TypeName& _internal_type_name() const; + ::pg_query::TypeName* _internal_mutable_type_name(); + public: + // .pg_query.CollateClause coll_clause = 3 [json_name = "collClause"]; + bool has_coll_clause() const; + void clear_coll_clause() ; + const ::pg_query::CollateClause& coll_clause() const; + PROTOBUF_NODISCARD ::pg_query::CollateClause* release_coll_clause(); + ::pg_query::CollateClause* mutable_coll_clause(); + void set_allocated_coll_clause(::pg_query::CollateClause* value); + void unsafe_arena_set_allocated_coll_clause(::pg_query::CollateClause* value); + ::pg_query::CollateClause* unsafe_arena_release_coll_clause(); - // int32 stmt_len = 40 [json_name = "stmt_len"]; - void clear_stmt_len(); - int32_t stmt_len() const; - void set_stmt_len(int32_t value); private: - int32_t _internal_stmt_len() const; - void _internal_set_stmt_len(int32_t value); - public: + const ::pg_query::CollateClause& _internal_coll_clause() const; + ::pg_query::CollateClause* _internal_mutable_coll_clause(); - // @@protoc_insertion_point(class_scope:pg_query.Query) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateDomainStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > cte_list_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > rtable_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > merge_action_list_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > target_list_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > returning_list_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > group_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > grouping_sets_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > window_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > distinct_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > sort_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > row_marks_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > constraint_deps_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > with_check_options_; - ::pg_query::Node* utility_stmt_; - ::pg_query::FromExpr* jointree_; - ::pg_query::OnConflictExpr* on_conflict_; - ::pg_query::Node* having_qual_; - ::pg_query::Node* limit_offset_; - ::pg_query::Node* limit_count_; - ::pg_query::Node* set_operations_; - int command_type_; - int query_source_; - int32_t result_relation_; - bool can_set_tag_; - bool has_aggs_; - bool has_window_funcs_; - bool has_target_srfs_; - bool has_sub_links_; - bool has_distinct_on_; - bool has_recursive_; - bool has_modifying_cte_; - bool has_for_update_; - bool has_row_security_; - bool is_return_; - bool merge_use_outer_join_; - int override_; - bool group_distinct_; - int limit_option_; - int32_t stmt_location_; - int32_t stmt_len_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > domainname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > constraints_; + ::pg_query::TypeName* type_name_; + ::pg_query::CollateClause* coll_clause_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class InsertStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.InsertStmt) */ { +class CreateEnumStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateEnumStmt) */ { public: - inline InsertStmt() : InsertStmt(nullptr) {} - ~InsertStmt() override; - explicit PROTOBUF_CONSTEXPR InsertStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateEnumStmt() : CreateEnumStmt(nullptr) {} + ~CreateEnumStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateEnumStmt(::google::protobuf::internal::ConstantInitialized); - InsertStmt(const InsertStmt& from); - InsertStmt(InsertStmt&& from) noexcept - : InsertStmt() { + inline CreateEnumStmt(const CreateEnumStmt& from) + : CreateEnumStmt(nullptr, from) {} + CreateEnumStmt(CreateEnumStmt&& from) noexcept + : CreateEnumStmt() { *this = ::std::move(from); } - inline InsertStmt& operator=(const InsertStmt& from) { + inline CreateEnumStmt& operator=(const CreateEnumStmt& from) { CopyFrom(from); return *this; } - inline InsertStmt& operator=(InsertStmt&& from) noexcept { + inline CreateEnumStmt& operator=(CreateEnumStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -23699,265 +27834,439 @@ class InsertStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const InsertStmt& default_instance() { + static const CreateEnumStmt& default_instance() { return *internal_default_instance(); } - static inline const InsertStmt* internal_default_instance() { - return reinterpret_cast( - &_InsertStmt_default_instance_); + static inline const CreateEnumStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateEnumStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 65; + 216; - friend void swap(InsertStmt& a, InsertStmt& b) { + friend void swap(CreateEnumStmt& a, CreateEnumStmt& b) { a.Swap(&b); } - inline void Swap(InsertStmt* other) { + inline void Swap(CreateEnumStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(InsertStmt* other) { + void UnsafeArenaSwap(CreateEnumStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - InsertStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateEnumStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const InsertStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const InsertStmt& from) { - InsertStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateEnumStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateEnumStmt& from) { + CreateEnumStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(InsertStmt* other); + void InternalSwap(CreateEnumStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.InsertStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateEnumStmt"; } protected: - explicit InsertStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateEnumStmt(::google::protobuf::Arena* arena); + CreateEnumStmt(::google::protobuf::Arena* arena, const CreateEnumStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kColsFieldNumber = 2, - kReturningListFieldNumber = 5, - kRelationFieldNumber = 1, - kSelectStmtFieldNumber = 3, - kOnConflictClauseFieldNumber = 4, - kWithClauseFieldNumber = 6, - kOverrideFieldNumber = 7, + kTypeNameFieldNumber = 1, + kValsFieldNumber = 2, }; - // repeated .pg_query.Node cols = 2 [json_name = "cols"]; - int cols_size() const; + // repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; + int type_name_size() const; private: - int _internal_cols_size() const; + int _internal_type_name_size() const; + public: - void clear_cols(); - ::pg_query::Node* mutable_cols(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_cols(); + void clear_type_name() ; + ::pg_query::Node* mutable_type_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_type_name(); private: - const ::pg_query::Node& _internal_cols(int index) const; - ::pg_query::Node* _internal_add_cols(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_type_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_type_name(); public: - const ::pg_query::Node& cols(int index) const; - ::pg_query::Node* add_cols(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - cols() const; - - // repeated .pg_query.Node returning_list = 5 [json_name = "returningList"]; - int returning_list_size() const; + const ::pg_query::Node& type_name(int index) const; + ::pg_query::Node* add_type_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + type_name() const; + // repeated .pg_query.Node vals = 2 [json_name = "vals"]; + int vals_size() const; private: - int _internal_returning_list_size() const; + int _internal_vals_size() const; + public: - void clear_returning_list(); - ::pg_query::Node* mutable_returning_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_returning_list(); + void clear_vals() ; + ::pg_query::Node* mutable_vals(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_vals(); private: - const ::pg_query::Node& _internal_returning_list(int index) const; - ::pg_query::Node* _internal_add_returning_list(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_vals() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_vals(); public: - const ::pg_query::Node& returning_list(int index) const; - ::pg_query::Node* add_returning_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - returning_list() const; + const ::pg_query::Node& vals(int index) const; + ::pg_query::Node* add_vals(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + vals() const; + // @@protoc_insertion_point(class_scope:pg_query.CreateEnumStmt) + private: + class _Internal; - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > type_name_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > vals_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class CreateEventTrigStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateEventTrigStmt) */ { + public: + inline CreateEventTrigStmt() : CreateEventTrigStmt(nullptr) {} + ~CreateEventTrigStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateEventTrigStmt(::google::protobuf::internal::ConstantInitialized); + + inline CreateEventTrigStmt(const CreateEventTrigStmt& from) + : CreateEventTrigStmt(nullptr, from) {} + CreateEventTrigStmt(CreateEventTrigStmt&& from) noexcept + : CreateEventTrigStmt() { + *this = ::std::move(from); + } + + inline CreateEventTrigStmt& operator=(const CreateEventTrigStmt& from) { + CopyFrom(from); + return *this; + } + inline CreateEventTrigStmt& operator=(CreateEventTrigStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CreateEventTrigStmt& default_instance() { + return *internal_default_instance(); + } + static inline const CreateEventTrigStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateEventTrigStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 171; + + friend void swap(CreateEventTrigStmt& a, CreateEventTrigStmt& b) { + a.Swap(&b); + } + inline void Swap(CreateEventTrigStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CreateEventTrigStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + CreateEventTrigStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateEventTrigStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateEventTrigStmt& from) { + CreateEventTrigStmt::MergeImpl(*this, from); + } private: - bool _internal_has_relation() const; + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(CreateEventTrigStmt* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateEventTrigStmt"; + } + protected: + explicit CreateEventTrigStmt(::google::protobuf::Arena* arena); + CreateEventTrigStmt(::google::protobuf::Arena* arena, const CreateEventTrigStmt& from); public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); - // .pg_query.Node select_stmt = 3 [json_name = "selectStmt"]; - bool has_select_stmt() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kWhenclauseFieldNumber = 3, + kFuncnameFieldNumber = 4, + kTrignameFieldNumber = 1, + kEventnameFieldNumber = 2, + }; + // repeated .pg_query.Node whenclause = 3 [json_name = "whenclause"]; + int whenclause_size() const; private: - bool _internal_has_select_stmt() const; + int _internal_whenclause_size() const; + public: - void clear_select_stmt(); - const ::pg_query::Node& select_stmt() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_select_stmt(); - ::pg_query::Node* mutable_select_stmt(); - void set_allocated_select_stmt(::pg_query::Node* select_stmt); + void clear_whenclause() ; + ::pg_query::Node* mutable_whenclause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_whenclause(); private: - const ::pg_query::Node& _internal_select_stmt() const; - ::pg_query::Node* _internal_mutable_select_stmt(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_whenclause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_whenclause(); public: - void unsafe_arena_set_allocated_select_stmt( - ::pg_query::Node* select_stmt); - ::pg_query::Node* unsafe_arena_release_select_stmt(); - - // .pg_query.OnConflictClause on_conflict_clause = 4 [json_name = "onConflictClause"]; - bool has_on_conflict_clause() const; + const ::pg_query::Node& whenclause(int index) const; + ::pg_query::Node* add_whenclause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + whenclause() const; + // repeated .pg_query.Node funcname = 4 [json_name = "funcname"]; + int funcname_size() const; private: - bool _internal_has_on_conflict_clause() const; + int _internal_funcname_size() const; + public: - void clear_on_conflict_clause(); - const ::pg_query::OnConflictClause& on_conflict_clause() const; - PROTOBUF_NODISCARD ::pg_query::OnConflictClause* release_on_conflict_clause(); - ::pg_query::OnConflictClause* mutable_on_conflict_clause(); - void set_allocated_on_conflict_clause(::pg_query::OnConflictClause* on_conflict_clause); + void clear_funcname() ; + ::pg_query::Node* mutable_funcname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_funcname(); private: - const ::pg_query::OnConflictClause& _internal_on_conflict_clause() const; - ::pg_query::OnConflictClause* _internal_mutable_on_conflict_clause(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_funcname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_funcname(); public: - void unsafe_arena_set_allocated_on_conflict_clause( - ::pg_query::OnConflictClause* on_conflict_clause); - ::pg_query::OnConflictClause* unsafe_arena_release_on_conflict_clause(); + const ::pg_query::Node& funcname(int index) const; + ::pg_query::Node* add_funcname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + funcname() const; + // string trigname = 1 [json_name = "trigname"]; + void clear_trigname() ; + const std::string& trigname() const; + template + void set_trigname(Arg_&& arg, Args_... args); + std::string* mutable_trigname(); + PROTOBUF_NODISCARD std::string* release_trigname(); + void set_allocated_trigname(std::string* value); - // .pg_query.WithClause with_clause = 6 [json_name = "withClause"]; - bool has_with_clause() const; - private: - bool _internal_has_with_clause() const; - public: - void clear_with_clause(); - const ::pg_query::WithClause& with_clause() const; - PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); - ::pg_query::WithClause* mutable_with_clause(); - void set_allocated_with_clause(::pg_query::WithClause* with_clause); private: - const ::pg_query::WithClause& _internal_with_clause() const; - ::pg_query::WithClause* _internal_mutable_with_clause(); + const std::string& _internal_trigname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_trigname( + const std::string& value); + std::string* _internal_mutable_trigname(); + public: - void unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause); - ::pg_query::WithClause* unsafe_arena_release_with_clause(); + // string eventname = 2 [json_name = "eventname"]; + void clear_eventname() ; + const std::string& eventname() const; + template + void set_eventname(Arg_&& arg, Args_... args); + std::string* mutable_eventname(); + PROTOBUF_NODISCARD std::string* release_eventname(); + void set_allocated_eventname(std::string* value); - // .pg_query.OverridingKind override = 7 [json_name = "override"]; - void clear_override(); - ::pg_query::OverridingKind override() const; - void set_override(::pg_query::OverridingKind value); private: - ::pg_query::OverridingKind _internal_override() const; - void _internal_set_override(::pg_query::OverridingKind value); - public: + const std::string& _internal_eventname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_eventname( + const std::string& value); + std::string* _internal_mutable_eventname(); - // @@protoc_insertion_point(class_scope:pg_query.InsertStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateEventTrigStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 54, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > cols_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > returning_list_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* select_stmt_; - ::pg_query::OnConflictClause* on_conflict_clause_; - ::pg_query::WithClause* with_clause_; - int override_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > whenclause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > funcname_; + ::google::protobuf::internal::ArenaStringPtr trigname_; + ::google::protobuf::internal::ArenaStringPtr eventname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DeleteStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DeleteStmt) */ { +class CreateExtensionStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateExtensionStmt) */ { public: - inline DeleteStmt() : DeleteStmt(nullptr) {} - ~DeleteStmt() override; - explicit PROTOBUF_CONSTEXPR DeleteStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateExtensionStmt() : CreateExtensionStmt(nullptr) {} + ~CreateExtensionStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateExtensionStmt(::google::protobuf::internal::ConstantInitialized); - DeleteStmt(const DeleteStmt& from); - DeleteStmt(DeleteStmt&& from) noexcept - : DeleteStmt() { + inline CreateExtensionStmt(const CreateExtensionStmt& from) + : CreateExtensionStmt(nullptr, from) {} + CreateExtensionStmt(CreateExtensionStmt&& from) noexcept + : CreateExtensionStmt() { *this = ::std::move(from); } - inline DeleteStmt& operator=(const DeleteStmt& from) { + inline CreateExtensionStmt& operator=(const CreateExtensionStmt& from) { CopyFrom(from); return *this; } - inline DeleteStmt& operator=(DeleteStmt&& from) noexcept { + inline CreateExtensionStmt& operator=(CreateExtensionStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -23967,234 +28276,210 @@ class DeleteStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DeleteStmt& default_instance() { + static const CreateExtensionStmt& default_instance() { return *internal_default_instance(); } - static inline const DeleteStmt* internal_default_instance() { - return reinterpret_cast( - &_DeleteStmt_default_instance_); + static inline const CreateExtensionStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateExtensionStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 66; + 155; - friend void swap(DeleteStmt& a, DeleteStmt& b) { + friend void swap(CreateExtensionStmt& a, CreateExtensionStmt& b) { a.Swap(&b); } - inline void Swap(DeleteStmt* other) { + inline void Swap(CreateExtensionStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DeleteStmt* other) { + void UnsafeArenaSwap(CreateExtensionStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DeleteStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateExtensionStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DeleteStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DeleteStmt& from) { - DeleteStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateExtensionStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateExtensionStmt& from) { + CreateExtensionStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DeleteStmt* other); + void InternalSwap(CreateExtensionStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DeleteStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateExtensionStmt"; } protected: - explicit DeleteStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateExtensionStmt(::google::protobuf::Arena* arena); + CreateExtensionStmt(::google::protobuf::Arena* arena, const CreateExtensionStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kUsingClauseFieldNumber = 2, - kReturningListFieldNumber = 4, - kRelationFieldNumber = 1, - kWhereClauseFieldNumber = 3, - kWithClauseFieldNumber = 5, + kOptionsFieldNumber = 3, + kExtnameFieldNumber = 1, + kIfNotExistsFieldNumber = 2, }; - // repeated .pg_query.Node using_clause = 2 [json_name = "usingClause"]; - int using_clause_size() const; - private: - int _internal_using_clause_size() const; - public: - void clear_using_clause(); - ::pg_query::Node* mutable_using_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_using_clause(); + // repeated .pg_query.Node options = 3 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_using_clause(int index) const; - ::pg_query::Node* _internal_add_using_clause(); - public: - const ::pg_query::Node& using_clause(int index) const; - ::pg_query::Node* add_using_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - using_clause() const; + int _internal_options_size() const; - // repeated .pg_query.Node returning_list = 4 [json_name = "returningList"]; - int returning_list_size() const; - private: - int _internal_returning_list_size() const; public: - void clear_returning_list(); - ::pg_query::Node* mutable_returning_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_returning_list(); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::Node& _internal_returning_list(int index) const; - ::pg_query::Node* _internal_add_returning_list(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - const ::pg_query::Node& returning_list(int index) const; - ::pg_query::Node* add_returning_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - returning_list() const; + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string extname = 1 [json_name = "extname"]; + void clear_extname() ; + const std::string& extname() const; + template + void set_extname(Arg_&& arg, Args_... args); + std::string* mutable_extname(); + PROTOBUF_NODISCARD std::string* release_extname(); + void set_allocated_extname(std::string* value); - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; - public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); - public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + const std::string& _internal_extname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_extname( + const std::string& value); + std::string* _internal_mutable_extname(); - // .pg_query.Node where_clause = 3 [json_name = "whereClause"]; - bool has_where_clause() const; - private: - bool _internal_has_where_clause() const; - public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); - private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); + // bool if_not_exists = 2 [json_name = "if_not_exists"]; + void clear_if_not_exists() ; + bool if_not_exists() const; + void set_if_not_exists(bool value); - // .pg_query.WithClause with_clause = 5 [json_name = "withClause"]; - bool has_with_clause() const; private: - bool _internal_has_with_clause() const; - public: - void clear_with_clause(); - const ::pg_query::WithClause& with_clause() const; - PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); - ::pg_query::WithClause* mutable_with_clause(); - void set_allocated_with_clause(::pg_query::WithClause* with_clause); - private: - const ::pg_query::WithClause& _internal_with_clause() const; - ::pg_query::WithClause* _internal_mutable_with_clause(); - public: - void unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause); - ::pg_query::WithClause* unsafe_arena_release_with_clause(); + bool _internal_if_not_exists() const; + void _internal_set_if_not_exists(bool value); - // @@protoc_insertion_point(class_scope:pg_query.DeleteStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateExtensionStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 44, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > using_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > returning_list_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* where_clause_; - ::pg_query::WithClause* with_clause_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr extname_; + bool if_not_exists_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class UpdateStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.UpdateStmt) */ { +class CreateFdwStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateFdwStmt) */ { public: - inline UpdateStmt() : UpdateStmt(nullptr) {} - ~UpdateStmt() override; - explicit PROTOBUF_CONSTEXPR UpdateStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateFdwStmt() : CreateFdwStmt(nullptr) {} + ~CreateFdwStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateFdwStmt(::google::protobuf::internal::ConstantInitialized); - UpdateStmt(const UpdateStmt& from); - UpdateStmt(UpdateStmt&& from) noexcept - : UpdateStmt() { + inline CreateFdwStmt(const CreateFdwStmt& from) + : CreateFdwStmt(nullptr, from) {} + CreateFdwStmt(CreateFdwStmt&& from) noexcept + : CreateFdwStmt() { *this = ::std::move(from); } - inline UpdateStmt& operator=(const UpdateStmt& from) { + inline CreateFdwStmt& operator=(const CreateFdwStmt& from) { CopyFrom(from); return *this; } - inline UpdateStmt& operator=(UpdateStmt&& from) noexcept { + inline CreateFdwStmt& operator=(CreateFdwStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -24204,254 +28489,218 @@ class UpdateStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const UpdateStmt& default_instance() { + static const CreateFdwStmt& default_instance() { return *internal_default_instance(); } - static inline const UpdateStmt* internal_default_instance() { - return reinterpret_cast( - &_UpdateStmt_default_instance_); + static inline const CreateFdwStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateFdwStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 67; + 158; - friend void swap(UpdateStmt& a, UpdateStmt& b) { + friend void swap(CreateFdwStmt& a, CreateFdwStmt& b) { a.Swap(&b); } - inline void Swap(UpdateStmt* other) { + inline void Swap(CreateFdwStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(UpdateStmt* other) { + void UnsafeArenaSwap(CreateFdwStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - UpdateStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateFdwStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const UpdateStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const UpdateStmt& from) { - UpdateStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateFdwStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateFdwStmt& from) { + CreateFdwStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(UpdateStmt* other); + void InternalSwap(CreateFdwStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.UpdateStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateFdwStmt"; } protected: - explicit UpdateStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateFdwStmt(::google::protobuf::Arena* arena); + CreateFdwStmt(::google::protobuf::Arena* arena, const CreateFdwStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kTargetListFieldNumber = 2, - kFromClauseFieldNumber = 4, - kReturningListFieldNumber = 5, - kRelationFieldNumber = 1, - kWhereClauseFieldNumber = 3, - kWithClauseFieldNumber = 6, + kFuncOptionsFieldNumber = 2, + kOptionsFieldNumber = 3, + kFdwnameFieldNumber = 1, }; - // repeated .pg_query.Node target_list = 2 [json_name = "targetList"]; - int target_list_size() const; - private: - int _internal_target_list_size() const; - public: - void clear_target_list(); - ::pg_query::Node* mutable_target_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_target_list(); + // repeated .pg_query.Node func_options = 2 [json_name = "func_options"]; + int func_options_size() const; private: - const ::pg_query::Node& _internal_target_list(int index) const; - ::pg_query::Node* _internal_add_target_list(); - public: - const ::pg_query::Node& target_list(int index) const; - ::pg_query::Node* add_target_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - target_list() const; + int _internal_func_options_size() const; - // repeated .pg_query.Node from_clause = 4 [json_name = "fromClause"]; - int from_clause_size() const; - private: - int _internal_from_clause_size() const; - public: - void clear_from_clause(); - ::pg_query::Node* mutable_from_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_from_clause(); - private: - const ::pg_query::Node& _internal_from_clause(int index) const; - ::pg_query::Node* _internal_add_from_clause(); public: - const ::pg_query::Node& from_clause(int index) const; - ::pg_query::Node* add_from_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - from_clause() const; - - // repeated .pg_query.Node returning_list = 5 [json_name = "returningList"]; - int returning_list_size() const; + void clear_func_options() ; + ::pg_query::Node* mutable_func_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_func_options(); private: - int _internal_returning_list_size() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_func_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_func_options(); public: - void clear_returning_list(); - ::pg_query::Node* mutable_returning_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_returning_list(); + const ::pg_query::Node& func_options(int index) const; + ::pg_query::Node* add_func_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + func_options() const; + // repeated .pg_query.Node options = 3 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_returning_list(int index) const; - ::pg_query::Node* _internal_add_returning_list(); - public: - const ::pg_query::Node& returning_list(int index) const; - ::pg_query::Node* add_returning_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - returning_list() const; + int _internal_options_size() const; - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string fdwname = 1 [json_name = "fdwname"]; + void clear_fdwname() ; + const std::string& fdwname() const; + template + void set_fdwname(Arg_&& arg, Args_... args); + std::string* mutable_fdwname(); + PROTOBUF_NODISCARD std::string* release_fdwname(); + void set_allocated_fdwname(std::string* value); - // .pg_query.Node where_clause = 3 [json_name = "whereClause"]; - bool has_where_clause() const; - private: - bool _internal_has_where_clause() const; - public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); - public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); + const std::string& _internal_fdwname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_fdwname( + const std::string& value); + std::string* _internal_mutable_fdwname(); - // .pg_query.WithClause with_clause = 6 [json_name = "withClause"]; - bool has_with_clause() const; - private: - bool _internal_has_with_clause() const; - public: - void clear_with_clause(); - const ::pg_query::WithClause& with_clause() const; - PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); - ::pg_query::WithClause* mutable_with_clause(); - void set_allocated_with_clause(::pg_query::WithClause* with_clause); - private: - const ::pg_query::WithClause& _internal_with_clause() const; - ::pg_query::WithClause* _internal_mutable_with_clause(); public: - void unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause); - ::pg_query::WithClause* unsafe_arena_release_with_clause(); - - // @@protoc_insertion_point(class_scope:pg_query.UpdateStmt) + // @@protoc_insertion_point(class_scope:pg_query.CreateFdwStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 38, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > target_list_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > from_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > returning_list_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* where_clause_; - ::pg_query::WithClause* with_clause_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > func_options_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr fdwname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class MergeStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.MergeStmt) */ { +class CreateForeignServerStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateForeignServerStmt) */ { public: - inline MergeStmt() : MergeStmt(nullptr) {} - ~MergeStmt() override; - explicit PROTOBUF_CONSTEXPR MergeStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateForeignServerStmt() : CreateForeignServerStmt(nullptr) {} + ~CreateForeignServerStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateForeignServerStmt(::google::protobuf::internal::ConstantInitialized); - MergeStmt(const MergeStmt& from); - MergeStmt(MergeStmt&& from) noexcept - : MergeStmt() { + inline CreateForeignServerStmt(const CreateForeignServerStmt& from) + : CreateForeignServerStmt(nullptr, from) {} + CreateForeignServerStmt(CreateForeignServerStmt&& from) noexcept + : CreateForeignServerStmt() { *this = ::std::move(from); } - inline MergeStmt& operator=(const MergeStmt& from) { + inline CreateForeignServerStmt& operator=(const CreateForeignServerStmt& from) { CopyFrom(from); return *this; } - inline MergeStmt& operator=(MergeStmt&& from) noexcept { + inline CreateForeignServerStmt& operator=(CreateForeignServerStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -24461,234 +28710,264 @@ class MergeStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const MergeStmt& default_instance() { + static const CreateForeignServerStmt& default_instance() { return *internal_default_instance(); } - static inline const MergeStmt* internal_default_instance() { - return reinterpret_cast( - &_MergeStmt_default_instance_); + static inline const CreateForeignServerStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateForeignServerStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 68; + 160; - friend void swap(MergeStmt& a, MergeStmt& b) { + friend void swap(CreateForeignServerStmt& a, CreateForeignServerStmt& b) { a.Swap(&b); } - inline void Swap(MergeStmt* other) { + inline void Swap(CreateForeignServerStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(MergeStmt* other) { + void UnsafeArenaSwap(CreateForeignServerStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - MergeStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateForeignServerStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const MergeStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const MergeStmt& from) { - MergeStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateForeignServerStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateForeignServerStmt& from) { + CreateForeignServerStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(MergeStmt* other); + void InternalSwap(CreateForeignServerStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.MergeStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateForeignServerStmt"; } protected: - explicit MergeStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateForeignServerStmt(::google::protobuf::Arena* arena); + CreateForeignServerStmt(::google::protobuf::Arena* arena, const CreateForeignServerStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kMergeWhenClausesFieldNumber = 4, - kRelationFieldNumber = 1, - kSourceRelationFieldNumber = 2, - kJoinConditionFieldNumber = 3, - kWithClauseFieldNumber = 5, + kOptionsFieldNumber = 6, + kServernameFieldNumber = 1, + kServertypeFieldNumber = 2, + kVersionFieldNumber = 3, + kFdwnameFieldNumber = 4, + kIfNotExistsFieldNumber = 5, }; - // repeated .pg_query.Node merge_when_clauses = 4 [json_name = "mergeWhenClauses"]; - int merge_when_clauses_size() const; - private: - int _internal_merge_when_clauses_size() const; - public: - void clear_merge_when_clauses(); - ::pg_query::Node* mutable_merge_when_clauses(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_merge_when_clauses(); + // repeated .pg_query.Node options = 6 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_merge_when_clauses(int index) const; - ::pg_query::Node* _internal_add_merge_when_clauses(); - public: - const ::pg_query::Node& merge_when_clauses(int index) const; - ::pg_query::Node* add_merge_when_clauses(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - merge_when_clauses() const; + int _internal_options_size() const; - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string servername = 1 [json_name = "servername"]; + void clear_servername() ; + const std::string& servername() const; + template + void set_servername(Arg_&& arg, Args_... args); + std::string* mutable_servername(); + PROTOBUF_NODISCARD std::string* release_servername(); + void set_allocated_servername(std::string* value); - // .pg_query.Node source_relation = 2 [json_name = "sourceRelation"]; - bool has_source_relation() const; - private: - bool _internal_has_source_relation() const; - public: - void clear_source_relation(); - const ::pg_query::Node& source_relation() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_source_relation(); - ::pg_query::Node* mutable_source_relation(); - void set_allocated_source_relation(::pg_query::Node* source_relation); private: - const ::pg_query::Node& _internal_source_relation() const; - ::pg_query::Node* _internal_mutable_source_relation(); - public: - void unsafe_arena_set_allocated_source_relation( - ::pg_query::Node* source_relation); - ::pg_query::Node* unsafe_arena_release_source_relation(); + const std::string& _internal_servername() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername( + const std::string& value); + std::string* _internal_mutable_servername(); - // .pg_query.Node join_condition = 3 [json_name = "joinCondition"]; - bool has_join_condition() const; - private: - bool _internal_has_join_condition() const; public: - void clear_join_condition(); - const ::pg_query::Node& join_condition() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_join_condition(); - ::pg_query::Node* mutable_join_condition(); - void set_allocated_join_condition(::pg_query::Node* join_condition); + // string servertype = 2 [json_name = "servertype"]; + void clear_servertype() ; + const std::string& servertype() const; + template + void set_servertype(Arg_&& arg, Args_... args); + std::string* mutable_servertype(); + PROTOBUF_NODISCARD std::string* release_servertype(); + void set_allocated_servertype(std::string* value); + private: - const ::pg_query::Node& _internal_join_condition() const; - ::pg_query::Node* _internal_mutable_join_condition(); + const std::string& _internal_servertype() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_servertype( + const std::string& value); + std::string* _internal_mutable_servertype(); + public: - void unsafe_arena_set_allocated_join_condition( - ::pg_query::Node* join_condition); - ::pg_query::Node* unsafe_arena_release_join_condition(); + // string version = 3 [json_name = "version"]; + void clear_version() ; + const std::string& version() const; + template + void set_version(Arg_&& arg, Args_... args); + std::string* mutable_version(); + PROTOBUF_NODISCARD std::string* release_version(); + void set_allocated_version(std::string* value); - // .pg_query.WithClause with_clause = 5 [json_name = "withClause"]; - bool has_with_clause() const; private: - bool _internal_has_with_clause() const; + const std::string& _internal_version() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_version( + const std::string& value); + std::string* _internal_mutable_version(); + public: - void clear_with_clause(); - const ::pg_query::WithClause& with_clause() const; - PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); - ::pg_query::WithClause* mutable_with_clause(); - void set_allocated_with_clause(::pg_query::WithClause* with_clause); + // string fdwname = 4 [json_name = "fdwname"]; + void clear_fdwname() ; + const std::string& fdwname() const; + template + void set_fdwname(Arg_&& arg, Args_... args); + std::string* mutable_fdwname(); + PROTOBUF_NODISCARD std::string* release_fdwname(); + void set_allocated_fdwname(std::string* value); + private: - const ::pg_query::WithClause& _internal_with_clause() const; - ::pg_query::WithClause* _internal_mutable_with_clause(); + const std::string& _internal_fdwname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_fdwname( + const std::string& value); + std::string* _internal_mutable_fdwname(); + public: - void unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause); - ::pg_query::WithClause* unsafe_arena_release_with_clause(); + // bool if_not_exists = 5 [json_name = "if_not_exists"]; + void clear_if_not_exists() ; + bool if_not_exists() const; + void set_if_not_exists(bool value); - // @@protoc_insertion_point(class_scope:pg_query.MergeStmt) + private: + bool _internal_if_not_exists() const; + void _internal_set_if_not_exists(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateForeignServerStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 1, + 75, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > merge_when_clauses_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* source_relation_; - ::pg_query::Node* join_condition_; - ::pg_query::WithClause* with_clause_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr servername_; + ::google::protobuf::internal::ArenaStringPtr servertype_; + ::google::protobuf::internal::ArenaStringPtr version_; + ::google::protobuf::internal::ArenaStringPtr fdwname_; + bool if_not_exists_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class SelectStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SelectStmt) */ { +class CreateForeignTableStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateForeignTableStmt) */ { public: - inline SelectStmt() : SelectStmt(nullptr) {} - ~SelectStmt() override; - explicit PROTOBUF_CONSTEXPR SelectStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateForeignTableStmt() : CreateForeignTableStmt(nullptr) {} + ~CreateForeignTableStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateForeignTableStmt(::google::protobuf::internal::ConstantInitialized); - SelectStmt(const SelectStmt& from); - SelectStmt(SelectStmt&& from) noexcept - : SelectStmt() { + inline CreateForeignTableStmt(const CreateForeignTableStmt& from) + : CreateForeignTableStmt(nullptr, from) {} + CreateForeignTableStmt(CreateForeignTableStmt&& from) noexcept + : CreateForeignTableStmt() { *this = ::std::move(from); } - inline SelectStmt& operator=(const SelectStmt& from) { + inline CreateForeignTableStmt& operator=(const CreateForeignTableStmt& from) { CopyFrom(from); return *this; } - inline SelectStmt& operator=(SelectStmt&& from) noexcept { + inline CreateForeignTableStmt& operator=(CreateForeignTableStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -24698,498 +28977,216 @@ class SelectStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SelectStmt& default_instance() { + static const CreateForeignTableStmt& default_instance() { return *internal_default_instance(); } - static inline const SelectStmt* internal_default_instance() { - return reinterpret_cast( - &_SelectStmt_default_instance_); + static inline const CreateForeignTableStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateForeignTableStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 69; + 162; - friend void swap(SelectStmt& a, SelectStmt& b) { + friend void swap(CreateForeignTableStmt& a, CreateForeignTableStmt& b) { a.Swap(&b); } - inline void Swap(SelectStmt* other) { + inline void Swap(CreateForeignTableStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SelectStmt* other) { + void UnsafeArenaSwap(CreateForeignTableStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - SelectStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateForeignTableStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SelectStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SelectStmt& from) { - SelectStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateForeignTableStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateForeignTableStmt& from) { + CreateForeignTableStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SelectStmt* other); + void InternalSwap(CreateForeignTableStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SelectStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateForeignTableStmt"; } protected: - explicit SelectStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateForeignTableStmt(::google::protobuf::Arena* arena); + CreateForeignTableStmt(::google::protobuf::Arena* arena, const CreateForeignTableStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kDistinctClauseFieldNumber = 1, - kTargetListFieldNumber = 3, - kFromClauseFieldNumber = 4, - kGroupClauseFieldNumber = 6, - kWindowClauseFieldNumber = 9, - kValuesListsFieldNumber = 10, - kSortClauseFieldNumber = 11, - kLockingClauseFieldNumber = 15, - kIntoClauseFieldNumber = 2, - kWhereClauseFieldNumber = 5, - kHavingClauseFieldNumber = 8, - kLimitOffsetFieldNumber = 12, - kLimitCountFieldNumber = 13, - kWithClauseFieldNumber = 16, - kLargFieldNumber = 19, - kRargFieldNumber = 20, - kGroupDistinctFieldNumber = 7, - kAllFieldNumber = 18, - kLimitOptionFieldNumber = 14, - kOpFieldNumber = 17, + kOptionsFieldNumber = 3, + kServernameFieldNumber = 2, + kBaseStmtFieldNumber = 1, }; - // repeated .pg_query.Node distinct_clause = 1 [json_name = "distinctClause"]; - int distinct_clause_size() const; - private: - int _internal_distinct_clause_size() const; - public: - void clear_distinct_clause(); - ::pg_query::Node* mutable_distinct_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_distinct_clause(); - private: - const ::pg_query::Node& _internal_distinct_clause(int index) const; - ::pg_query::Node* _internal_add_distinct_clause(); - public: - const ::pg_query::Node& distinct_clause(int index) const; - ::pg_query::Node* add_distinct_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - distinct_clause() const; - - // repeated .pg_query.Node target_list = 3 [json_name = "targetList"]; - int target_list_size() const; - private: - int _internal_target_list_size() const; - public: - void clear_target_list(); - ::pg_query::Node* mutable_target_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_target_list(); - private: - const ::pg_query::Node& _internal_target_list(int index) const; - ::pg_query::Node* _internal_add_target_list(); - public: - const ::pg_query::Node& target_list(int index) const; - ::pg_query::Node* add_target_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - target_list() const; - - // repeated .pg_query.Node from_clause = 4 [json_name = "fromClause"]; - int from_clause_size() const; - private: - int _internal_from_clause_size() const; - public: - void clear_from_clause(); - ::pg_query::Node* mutable_from_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_from_clause(); - private: - const ::pg_query::Node& _internal_from_clause(int index) const; - ::pg_query::Node* _internal_add_from_clause(); - public: - const ::pg_query::Node& from_clause(int index) const; - ::pg_query::Node* add_from_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - from_clause() const; - - // repeated .pg_query.Node group_clause = 6 [json_name = "groupClause"]; - int group_clause_size() const; - private: - int _internal_group_clause_size() const; - public: - void clear_group_clause(); - ::pg_query::Node* mutable_group_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_group_clause(); - private: - const ::pg_query::Node& _internal_group_clause(int index) const; - ::pg_query::Node* _internal_add_group_clause(); - public: - const ::pg_query::Node& group_clause(int index) const; - ::pg_query::Node* add_group_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - group_clause() const; - - // repeated .pg_query.Node window_clause = 9 [json_name = "windowClause"]; - int window_clause_size() const; - private: - int _internal_window_clause_size() const; - public: - void clear_window_clause(); - ::pg_query::Node* mutable_window_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_window_clause(); - private: - const ::pg_query::Node& _internal_window_clause(int index) const; - ::pg_query::Node* _internal_add_window_clause(); - public: - const ::pg_query::Node& window_clause(int index) const; - ::pg_query::Node* add_window_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - window_clause() const; - - // repeated .pg_query.Node values_lists = 10 [json_name = "valuesLists"]; - int values_lists_size() const; - private: - int _internal_values_lists_size() const; - public: - void clear_values_lists(); - ::pg_query::Node* mutable_values_lists(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_values_lists(); - private: - const ::pg_query::Node& _internal_values_lists(int index) const; - ::pg_query::Node* _internal_add_values_lists(); - public: - const ::pg_query::Node& values_lists(int index) const; - ::pg_query::Node* add_values_lists(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - values_lists() const; - - // repeated .pg_query.Node sort_clause = 11 [json_name = "sortClause"]; - int sort_clause_size() const; - private: - int _internal_sort_clause_size() const; - public: - void clear_sort_clause(); - ::pg_query::Node* mutable_sort_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_sort_clause(); - private: - const ::pg_query::Node& _internal_sort_clause(int index) const; - ::pg_query::Node* _internal_add_sort_clause(); - public: - const ::pg_query::Node& sort_clause(int index) const; - ::pg_query::Node* add_sort_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - sort_clause() const; - - // repeated .pg_query.Node locking_clause = 15 [json_name = "lockingClause"]; - int locking_clause_size() const; - private: - int _internal_locking_clause_size() const; - public: - void clear_locking_clause(); - ::pg_query::Node* mutable_locking_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_locking_clause(); - private: - const ::pg_query::Node& _internal_locking_clause(int index) const; - ::pg_query::Node* _internal_add_locking_clause(); - public: - const ::pg_query::Node& locking_clause(int index) const; - ::pg_query::Node* add_locking_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - locking_clause() const; - - // .pg_query.IntoClause into_clause = 2 [json_name = "intoClause"]; - bool has_into_clause() const; - private: - bool _internal_has_into_clause() const; - public: - void clear_into_clause(); - const ::pg_query::IntoClause& into_clause() const; - PROTOBUF_NODISCARD ::pg_query::IntoClause* release_into_clause(); - ::pg_query::IntoClause* mutable_into_clause(); - void set_allocated_into_clause(::pg_query::IntoClause* into_clause); - private: - const ::pg_query::IntoClause& _internal_into_clause() const; - ::pg_query::IntoClause* _internal_mutable_into_clause(); - public: - void unsafe_arena_set_allocated_into_clause( - ::pg_query::IntoClause* into_clause); - ::pg_query::IntoClause* unsafe_arena_release_into_clause(); - - // .pg_query.Node where_clause = 5 [json_name = "whereClause"]; - bool has_where_clause() const; - private: - bool _internal_has_where_clause() const; - public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); - private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); - public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); - - // .pg_query.Node having_clause = 8 [json_name = "havingClause"]; - bool has_having_clause() const; - private: - bool _internal_has_having_clause() const; - public: - void clear_having_clause(); - const ::pg_query::Node& having_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_having_clause(); - ::pg_query::Node* mutable_having_clause(); - void set_allocated_having_clause(::pg_query::Node* having_clause); - private: - const ::pg_query::Node& _internal_having_clause() const; - ::pg_query::Node* _internal_mutable_having_clause(); - public: - void unsafe_arena_set_allocated_having_clause( - ::pg_query::Node* having_clause); - ::pg_query::Node* unsafe_arena_release_having_clause(); - - // .pg_query.Node limit_offset = 12 [json_name = "limitOffset"]; - bool has_limit_offset() const; - private: - bool _internal_has_limit_offset() const; - public: - void clear_limit_offset(); - const ::pg_query::Node& limit_offset() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_limit_offset(); - ::pg_query::Node* mutable_limit_offset(); - void set_allocated_limit_offset(::pg_query::Node* limit_offset); - private: - const ::pg_query::Node& _internal_limit_offset() const; - ::pg_query::Node* _internal_mutable_limit_offset(); - public: - void unsafe_arena_set_allocated_limit_offset( - ::pg_query::Node* limit_offset); - ::pg_query::Node* unsafe_arena_release_limit_offset(); - - // .pg_query.Node limit_count = 13 [json_name = "limitCount"]; - bool has_limit_count() const; - private: - bool _internal_has_limit_count() const; - public: - void clear_limit_count(); - const ::pg_query::Node& limit_count() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_limit_count(); - ::pg_query::Node* mutable_limit_count(); - void set_allocated_limit_count(::pg_query::Node* limit_count); - private: - const ::pg_query::Node& _internal_limit_count() const; - ::pg_query::Node* _internal_mutable_limit_count(); - public: - void unsafe_arena_set_allocated_limit_count( - ::pg_query::Node* limit_count); - ::pg_query::Node* unsafe_arena_release_limit_count(); - - // .pg_query.WithClause with_clause = 16 [json_name = "withClause"]; - bool has_with_clause() const; - private: - bool _internal_has_with_clause() const; - public: - void clear_with_clause(); - const ::pg_query::WithClause& with_clause() const; - PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); - ::pg_query::WithClause* mutable_with_clause(); - void set_allocated_with_clause(::pg_query::WithClause* with_clause); - private: - const ::pg_query::WithClause& _internal_with_clause() const; - ::pg_query::WithClause* _internal_mutable_with_clause(); - public: - void unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause); - ::pg_query::WithClause* unsafe_arena_release_with_clause(); - - // .pg_query.SelectStmt larg = 19 [json_name = "larg"]; - bool has_larg() const; - private: - bool _internal_has_larg() const; - public: - void clear_larg(); - const ::pg_query::SelectStmt& larg() const; - PROTOBUF_NODISCARD ::pg_query::SelectStmt* release_larg(); - ::pg_query::SelectStmt* mutable_larg(); - void set_allocated_larg(::pg_query::SelectStmt* larg); + // repeated .pg_query.Node options = 3 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::SelectStmt& _internal_larg() const; - ::pg_query::SelectStmt* _internal_mutable_larg(); - public: - void unsafe_arena_set_allocated_larg( - ::pg_query::SelectStmt* larg); - ::pg_query::SelectStmt* unsafe_arena_release_larg(); + int _internal_options_size() const; - // .pg_query.SelectStmt rarg = 20 [json_name = "rarg"]; - bool has_rarg() const; - private: - bool _internal_has_rarg() const; public: - void clear_rarg(); - const ::pg_query::SelectStmt& rarg() const; - PROTOBUF_NODISCARD ::pg_query::SelectStmt* release_rarg(); - ::pg_query::SelectStmt* mutable_rarg(); - void set_allocated_rarg(::pg_query::SelectStmt* rarg); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::SelectStmt& _internal_rarg() const; - ::pg_query::SelectStmt* _internal_mutable_rarg(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_rarg( - ::pg_query::SelectStmt* rarg); - ::pg_query::SelectStmt* unsafe_arena_release_rarg(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string servername = 2 [json_name = "servername"]; + void clear_servername() ; + const std::string& servername() const; + template + void set_servername(Arg_&& arg, Args_... args); + std::string* mutable_servername(); + PROTOBUF_NODISCARD std::string* release_servername(); + void set_allocated_servername(std::string* value); - // bool group_distinct = 7 [json_name = "groupDistinct"]; - void clear_group_distinct(); - bool group_distinct() const; - void set_group_distinct(bool value); private: - bool _internal_group_distinct() const; - void _internal_set_group_distinct(bool value); - public: + const std::string& _internal_servername() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername( + const std::string& value); + std::string* _internal_mutable_servername(); - // bool all = 18 [json_name = "all"]; - void clear_all(); - bool all() const; - void set_all(bool value); - private: - bool _internal_all() const; - void _internal_set_all(bool value); public: + // .pg_query.CreateStmt base_stmt = 1 [json_name = "base"]; + bool has_base_stmt() const; + void clear_base_stmt() ; + const ::pg_query::CreateStmt& base_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateStmt* release_base_stmt(); + ::pg_query::CreateStmt* mutable_base_stmt(); + void set_allocated_base_stmt(::pg_query::CreateStmt* value); + void unsafe_arena_set_allocated_base_stmt(::pg_query::CreateStmt* value); + ::pg_query::CreateStmt* unsafe_arena_release_base_stmt(); - // .pg_query.LimitOption limit_option = 14 [json_name = "limitOption"]; - void clear_limit_option(); - ::pg_query::LimitOption limit_option() const; - void set_limit_option(::pg_query::LimitOption value); private: - ::pg_query::LimitOption _internal_limit_option() const; - void _internal_set_limit_option(::pg_query::LimitOption value); - public: + const ::pg_query::CreateStmt& _internal_base_stmt() const; + ::pg_query::CreateStmt* _internal_mutable_base_stmt(); - // .pg_query.SetOperation op = 17 [json_name = "op"]; - void clear_op(); - ::pg_query::SetOperation op() const; - void set_op(::pg_query::SetOperation value); - private: - ::pg_query::SetOperation _internal_op() const; - void _internal_set_op(::pg_query::SetOperation value); public: - - // @@protoc_insertion_point(class_scope:pg_query.SelectStmt) + // @@protoc_insertion_point(class_scope:pg_query.CreateForeignTableStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 50, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > distinct_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > target_list_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > from_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > group_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > window_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > values_lists_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > sort_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > locking_clause_; - ::pg_query::IntoClause* into_clause_; - ::pg_query::Node* where_clause_; - ::pg_query::Node* having_clause_; - ::pg_query::Node* limit_offset_; - ::pg_query::Node* limit_count_; - ::pg_query::WithClause* with_clause_; - ::pg_query::SelectStmt* larg_; - ::pg_query::SelectStmt* rarg_; - bool group_distinct_; - bool all_; - int limit_option_; - int op_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr servername_; + ::pg_query::CreateStmt* base_stmt_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ReturnStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ReturnStmt) */ { +class CreateFunctionStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateFunctionStmt) */ { public: - inline ReturnStmt() : ReturnStmt(nullptr) {} - ~ReturnStmt() override; - explicit PROTOBUF_CONSTEXPR ReturnStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateFunctionStmt() : CreateFunctionStmt(nullptr) {} + ~CreateFunctionStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateFunctionStmt(::google::protobuf::internal::ConstantInitialized); - ReturnStmt(const ReturnStmt& from); - ReturnStmt(ReturnStmt&& from) noexcept - : ReturnStmt() { + inline CreateFunctionStmt(const CreateFunctionStmt& from) + : CreateFunctionStmt(nullptr, from) {} + CreateFunctionStmt(CreateFunctionStmt&& from) noexcept + : CreateFunctionStmt() { *this = ::std::move(from); } - inline ReturnStmt& operator=(const ReturnStmt& from) { + inline CreateFunctionStmt& operator=(const CreateFunctionStmt& from) { CopyFrom(from); return *this; } - inline ReturnStmt& operator=(ReturnStmt&& from) noexcept { + inline CreateFunctionStmt& operator=(CreateFunctionStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -25199,154 +29196,279 @@ class ReturnStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ReturnStmt& default_instance() { + static const CreateFunctionStmt& default_instance() { return *internal_default_instance(); } - static inline const ReturnStmt* internal_default_instance() { - return reinterpret_cast( - &_ReturnStmt_default_instance_); + static inline const CreateFunctionStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateFunctionStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 70; + 197; - friend void swap(ReturnStmt& a, ReturnStmt& b) { + friend void swap(CreateFunctionStmt& a, CreateFunctionStmt& b) { a.Swap(&b); } - inline void Swap(ReturnStmt* other) { + inline void Swap(CreateFunctionStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ReturnStmt* other) { + void UnsafeArenaSwap(CreateFunctionStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ReturnStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateFunctionStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ReturnStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ReturnStmt& from) { - ReturnStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateFunctionStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateFunctionStmt& from) { + CreateFunctionStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ReturnStmt* other); + void InternalSwap(CreateFunctionStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ReturnStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateFunctionStmt"; } protected: - explicit ReturnStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateFunctionStmt(::google::protobuf::Arena* arena); + CreateFunctionStmt(::google::protobuf::Arena* arena, const CreateFunctionStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kReturnvalFieldNumber = 1, + kFuncnameFieldNumber = 3, + kParametersFieldNumber = 4, + kOptionsFieldNumber = 6, + kReturnTypeFieldNumber = 5, + kSqlBodyFieldNumber = 7, + kIsProcedureFieldNumber = 1, + kReplaceFieldNumber = 2, }; - // .pg_query.Node returnval = 1 [json_name = "returnval"]; - bool has_returnval() const; + // repeated .pg_query.Node funcname = 3 [json_name = "funcname"]; + int funcname_size() const; private: - bool _internal_has_returnval() const; + int _internal_funcname_size() const; + public: - void clear_returnval(); - const ::pg_query::Node& returnval() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_returnval(); - ::pg_query::Node* mutable_returnval(); - void set_allocated_returnval(::pg_query::Node* returnval); + void clear_funcname() ; + ::pg_query::Node* mutable_funcname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_funcname(); private: - const ::pg_query::Node& _internal_returnval() const; - ::pg_query::Node* _internal_mutable_returnval(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_funcname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_funcname(); public: - void unsafe_arena_set_allocated_returnval( - ::pg_query::Node* returnval); - ::pg_query::Node* unsafe_arena_release_returnval(); + const ::pg_query::Node& funcname(int index) const; + ::pg_query::Node* add_funcname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + funcname() const; + // repeated .pg_query.Node parameters = 4 [json_name = "parameters"]; + int parameters_size() const; + private: + int _internal_parameters_size() const; - // @@protoc_insertion_point(class_scope:pg_query.ReturnStmt) + public: + void clear_parameters() ; + ::pg_query::Node* mutable_parameters(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_parameters(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_parameters() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_parameters(); + public: + const ::pg_query::Node& parameters(int index) const; + ::pg_query::Node* add_parameters(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + parameters() const; + // repeated .pg_query.Node options = 6 [json_name = "options"]; + int options_size() const; + private: + int _internal_options_size() const; + + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); + public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // .pg_query.TypeName return_type = 5 [json_name = "returnType"]; + bool has_return_type() const; + void clear_return_type() ; + const ::pg_query::TypeName& return_type() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_return_type(); + ::pg_query::TypeName* mutable_return_type(); + void set_allocated_return_type(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_return_type(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_return_type(); + + private: + const ::pg_query::TypeName& _internal_return_type() const; + ::pg_query::TypeName* _internal_mutable_return_type(); + + public: + // .pg_query.Node sql_body = 7 [json_name = "sql_body"]; + bool has_sql_body() const; + void clear_sql_body() ; + const ::pg_query::Node& sql_body() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_sql_body(); + ::pg_query::Node* mutable_sql_body(); + void set_allocated_sql_body(::pg_query::Node* value); + void unsafe_arena_set_allocated_sql_body(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_sql_body(); + + private: + const ::pg_query::Node& _internal_sql_body() const; + ::pg_query::Node* _internal_mutable_sql_body(); + + public: + // bool is_procedure = 1 [json_name = "is_procedure"]; + void clear_is_procedure() ; + bool is_procedure() const; + void set_is_procedure(bool value); + + private: + bool _internal_is_procedure() const; + void _internal_set_is_procedure(bool value); + + public: + // bool replace = 2 [json_name = "replace"]; + void clear_replace() ; + bool replace() const; + void set_replace(bool value); + + private: + bool _internal_replace() const; + void _internal_set_replace(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateFunctionStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* returnval_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > funcname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > parameters_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::pg_query::TypeName* return_type_; + ::pg_query::Node* sql_body_; + bool is_procedure_; + bool replace_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class PLAssignStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.PLAssignStmt) */ { +class CreateOpClassItem final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateOpClassItem) */ { public: - inline PLAssignStmt() : PLAssignStmt(nullptr) {} - ~PLAssignStmt() override; - explicit PROTOBUF_CONSTEXPR PLAssignStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateOpClassItem() : CreateOpClassItem(nullptr) {} + ~CreateOpClassItem() override; + template + explicit PROTOBUF_CONSTEXPR CreateOpClassItem(::google::protobuf::internal::ConstantInitialized); - PLAssignStmt(const PLAssignStmt& from); - PLAssignStmt(PLAssignStmt&& from) noexcept - : PLAssignStmt() { + inline CreateOpClassItem(const CreateOpClassItem& from) + : CreateOpClassItem(nullptr, from) {} + CreateOpClassItem(CreateOpClassItem&& from) noexcept + : CreateOpClassItem() { *this = ::std::move(from); } - inline PLAssignStmt& operator=(const PLAssignStmt& from) { + inline CreateOpClassItem& operator=(const CreateOpClassItem& from) { CopyFrom(from); return *this; } - inline PLAssignStmt& operator=(PLAssignStmt&& from) noexcept { + inline CreateOpClassItem& operator=(CreateOpClassItem&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -25356,212 +29478,259 @@ class PLAssignStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const PLAssignStmt& default_instance() { + static const CreateOpClassItem& default_instance() { return *internal_default_instance(); } - static inline const PLAssignStmt* internal_default_instance() { - return reinterpret_cast( - &_PLAssignStmt_default_instance_); + static inline const CreateOpClassItem* internal_default_instance() { + return reinterpret_cast( + &_CreateOpClassItem_default_instance_); } static constexpr int kIndexInFileMessages = - 71; + 183; - friend void swap(PLAssignStmt& a, PLAssignStmt& b) { + friend void swap(CreateOpClassItem& a, CreateOpClassItem& b) { a.Swap(&b); } - inline void Swap(PLAssignStmt* other) { + inline void Swap(CreateOpClassItem* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(PLAssignStmt* other) { + void UnsafeArenaSwap(CreateOpClassItem* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - PLAssignStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateOpClassItem* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const PLAssignStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const PLAssignStmt& from) { - PLAssignStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateOpClassItem& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateOpClassItem& from) { + CreateOpClassItem::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(PLAssignStmt* other); + void InternalSwap(CreateOpClassItem* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.PLAssignStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateOpClassItem"; } protected: - explicit PLAssignStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateOpClassItem(::google::protobuf::Arena* arena); + CreateOpClassItem(::google::protobuf::Arena* arena, const CreateOpClassItem& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kIndirectionFieldNumber = 2, - kNameFieldNumber = 1, - kValFieldNumber = 4, - kNnamesFieldNumber = 3, - kLocationFieldNumber = 5, + kOrderFamilyFieldNumber = 4, + kClassArgsFieldNumber = 5, + kNameFieldNumber = 2, + kStoredtypeFieldNumber = 6, + kItemtypeFieldNumber = 1, + kNumberFieldNumber = 3, }; - // repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; - int indirection_size() const; + // repeated .pg_query.Node order_family = 4 [json_name = "order_family"]; + int order_family_size() const; private: - int _internal_indirection_size() const; + int _internal_order_family_size() const; + public: - void clear_indirection(); - ::pg_query::Node* mutable_indirection(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_indirection(); + void clear_order_family() ; + ::pg_query::Node* mutable_order_family(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_order_family(); private: - const ::pg_query::Node& _internal_indirection(int index) const; - ::pg_query::Node* _internal_add_indirection(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_order_family() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_order_family(); public: - const ::pg_query::Node& indirection(int index) const; - ::pg_query::Node* add_indirection(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - indirection() const; + const ::pg_query::Node& order_family(int index) const; + ::pg_query::Node* add_order_family(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + order_family() const; + // repeated .pg_query.Node class_args = 5 [json_name = "class_args"]; + int class_args_size() const; + private: + int _internal_class_args_size() const; - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + public: + void clear_class_args() ; + ::pg_query::Node* mutable_class_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_class_args(); private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_class_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_class_args(); public: + const ::pg_query::Node& class_args(int index) const; + ::pg_query::Node* add_class_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + class_args() const; + // .pg_query.ObjectWithArgs name = 2 [json_name = "name"]; + bool has_name() const; + void clear_name() ; + const ::pg_query::ObjectWithArgs& name() const; + PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_name(); + ::pg_query::ObjectWithArgs* mutable_name(); + void set_allocated_name(::pg_query::ObjectWithArgs* value); + void unsafe_arena_set_allocated_name(::pg_query::ObjectWithArgs* value); + ::pg_query::ObjectWithArgs* unsafe_arena_release_name(); - // .pg_query.SelectStmt val = 4 [json_name = "val"]; - bool has_val() const; private: - bool _internal_has_val() const; + const ::pg_query::ObjectWithArgs& _internal_name() const; + ::pg_query::ObjectWithArgs* _internal_mutable_name(); + public: - void clear_val(); - const ::pg_query::SelectStmt& val() const; - PROTOBUF_NODISCARD ::pg_query::SelectStmt* release_val(); - ::pg_query::SelectStmt* mutable_val(); - void set_allocated_val(::pg_query::SelectStmt* val); + // .pg_query.TypeName storedtype = 6 [json_name = "storedtype"]; + bool has_storedtype() const; + void clear_storedtype() ; + const ::pg_query::TypeName& storedtype() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_storedtype(); + ::pg_query::TypeName* mutable_storedtype(); + void set_allocated_storedtype(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_storedtype(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_storedtype(); + private: - const ::pg_query::SelectStmt& _internal_val() const; - ::pg_query::SelectStmt* _internal_mutable_val(); + const ::pg_query::TypeName& _internal_storedtype() const; + ::pg_query::TypeName* _internal_mutable_storedtype(); + public: - void unsafe_arena_set_allocated_val( - ::pg_query::SelectStmt* val); - ::pg_query::SelectStmt* unsafe_arena_release_val(); + // int32 itemtype = 1 [json_name = "itemtype"]; + void clear_itemtype() ; + ::int32_t itemtype() const; + void set_itemtype(::int32_t value); - // int32 nnames = 3 [json_name = "nnames"]; - void clear_nnames(); - int32_t nnames() const; - void set_nnames(int32_t value); private: - int32_t _internal_nnames() const; - void _internal_set_nnames(int32_t value); + ::int32_t _internal_itemtype() const; + void _internal_set_itemtype(::int32_t value); + public: + // int32 number = 3 [json_name = "number"]; + void clear_number() ; + ::int32_t number() const; + void set_number(::int32_t value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_number() const; + void _internal_set_number(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.PLAssignStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateOpClassItem) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > indirection_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::SelectStmt* val_; - int32_t nnames_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > order_family_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > class_args_; + ::pg_query::ObjectWithArgs* name_; + ::pg_query::TypeName* storedtype_; + ::int32_t itemtype_; + ::int32_t number_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterTableStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTableStmt) */ { +class CreateOpClassStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateOpClassStmt) */ { public: - inline AlterTableStmt() : AlterTableStmt(nullptr) {} - ~AlterTableStmt() override; - explicit PROTOBUF_CONSTEXPR AlterTableStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateOpClassStmt() : CreateOpClassStmt(nullptr) {} + ~CreateOpClassStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateOpClassStmt(::google::protobuf::internal::ConstantInitialized); - AlterTableStmt(const AlterTableStmt& from); - AlterTableStmt(AlterTableStmt&& from) noexcept - : AlterTableStmt() { + inline CreateOpClassStmt(const CreateOpClassStmt& from) + : CreateOpClassStmt(nullptr, from) {} + CreateOpClassStmt(CreateOpClassStmt&& from) noexcept + : CreateOpClassStmt() { *this = ::std::move(from); } - inline AlterTableStmt& operator=(const AlterTableStmt& from) { + inline CreateOpClassStmt& operator=(const CreateOpClassStmt& from) { CopyFrom(from); return *this; } - inline AlterTableStmt& operator=(AlterTableStmt&& from) noexcept { + inline CreateOpClassStmt& operator=(CreateOpClassStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -25571,196 +29740,268 @@ class AlterTableStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterTableStmt& default_instance() { + static const CreateOpClassStmt& default_instance() { return *internal_default_instance(); } - static inline const AlterTableStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterTableStmt_default_instance_); + static inline const CreateOpClassStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateOpClassStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 72; + 182; - friend void swap(AlterTableStmt& a, AlterTableStmt& b) { + friend void swap(CreateOpClassStmt& a, CreateOpClassStmt& b) { a.Swap(&b); } - inline void Swap(AlterTableStmt* other) { + inline void Swap(CreateOpClassStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterTableStmt* other) { + void UnsafeArenaSwap(CreateOpClassStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterTableStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateOpClassStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterTableStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterTableStmt& from) { - AlterTableStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateOpClassStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateOpClassStmt& from) { + CreateOpClassStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterTableStmt* other); + void InternalSwap(CreateOpClassStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterTableStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateOpClassStmt"; } protected: - explicit AlterTableStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateOpClassStmt(::google::protobuf::Arena* arena); + CreateOpClassStmt(::google::protobuf::Arena* arena, const CreateOpClassStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCmdsFieldNumber = 2, - kRelationFieldNumber = 1, - kObjtypeFieldNumber = 3, - kMissingOkFieldNumber = 4, + kOpclassnameFieldNumber = 1, + kOpfamilynameFieldNumber = 2, + kItemsFieldNumber = 5, + kAmnameFieldNumber = 3, + kDatatypeFieldNumber = 4, + kIsDefaultFieldNumber = 6, }; - // repeated .pg_query.Node cmds = 2 [json_name = "cmds"]; - int cmds_size() const; + // repeated .pg_query.Node opclassname = 1 [json_name = "opclassname"]; + int opclassname_size() const; private: - int _internal_cmds_size() const; + int _internal_opclassname_size() const; + public: - void clear_cmds(); - ::pg_query::Node* mutable_cmds(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_cmds(); + void clear_opclassname() ; + ::pg_query::Node* mutable_opclassname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opclassname(); private: - const ::pg_query::Node& _internal_cmds(int index) const; - ::pg_query::Node* _internal_add_cmds(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opclassname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opclassname(); public: - const ::pg_query::Node& cmds(int index) const; - ::pg_query::Node* add_cmds(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - cmds() const; + const ::pg_query::Node& opclassname(int index) const; + ::pg_query::Node* add_opclassname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opclassname() const; + // repeated .pg_query.Node opfamilyname = 2 [json_name = "opfamilyname"]; + int opfamilyname_size() const; + private: + int _internal_opfamilyname_size() const; - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; + public: + void clear_opfamilyname() ; + ::pg_query::Node* mutable_opfamilyname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opfamilyname(); private: - bool _internal_has_relation() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opfamilyname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opfamilyname(); public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + const ::pg_query::Node& opfamilyname(int index) const; + ::pg_query::Node* add_opfamilyname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opfamilyname() const; + // repeated .pg_query.Node items = 5 [json_name = "items"]; + int items_size() const; private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + int _internal_items_size() const; + public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + void clear_items() ; + ::pg_query::Node* mutable_items(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_items(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_items() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_items(); + public: + const ::pg_query::Node& items(int index) const; + ::pg_query::Node* add_items(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + items() const; + // string amname = 3 [json_name = "amname"]; + void clear_amname() ; + const std::string& amname() const; + template + void set_amname(Arg_&& arg, Args_... args); + std::string* mutable_amname(); + PROTOBUF_NODISCARD std::string* release_amname(); + void set_allocated_amname(std::string* value); - // .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; - void clear_objtype(); - ::pg_query::ObjectType objtype() const; - void set_objtype(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_objtype() const; - void _internal_set_objtype(::pg_query::ObjectType value); + const std::string& _internal_amname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_amname( + const std::string& value); + std::string* _internal_mutable_amname(); + public: + // .pg_query.TypeName datatype = 4 [json_name = "datatype"]; + bool has_datatype() const; + void clear_datatype() ; + const ::pg_query::TypeName& datatype() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_datatype(); + ::pg_query::TypeName* mutable_datatype(); + void set_allocated_datatype(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_datatype(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_datatype(); - // bool missing_ok = 4 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); + const ::pg_query::TypeName& _internal_datatype() const; + ::pg_query::TypeName* _internal_mutable_datatype(); + public: + // bool is_default = 6 [json_name = "isDefault"]; + void clear_is_default() ; + bool is_default() const; + void set_is_default(bool value); - // @@protoc_insertion_point(class_scope:pg_query.AlterTableStmt) + private: + bool _internal_is_default() const; + void _internal_set_is_default(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateOpClassStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 4, + 41, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > cmds_; - ::pg_query::RangeVar* relation_; - int objtype_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opclassname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opfamilyname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > items_; + ::google::protobuf::internal::ArenaStringPtr amname_; + ::pg_query::TypeName* datatype_; + bool is_default_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterTableCmd final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTableCmd) */ { +class CreateOpFamilyStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateOpFamilyStmt) */ { public: - inline AlterTableCmd() : AlterTableCmd(nullptr) {} - ~AlterTableCmd() override; - explicit PROTOBUF_CONSTEXPR AlterTableCmd(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateOpFamilyStmt() : CreateOpFamilyStmt(nullptr) {} + ~CreateOpFamilyStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateOpFamilyStmt(::google::protobuf::internal::ConstantInitialized); - AlterTableCmd(const AlterTableCmd& from); - AlterTableCmd(AlterTableCmd&& from) noexcept - : AlterTableCmd() { + inline CreateOpFamilyStmt(const CreateOpFamilyStmt& from) + : CreateOpFamilyStmt(nullptr, from) {} + CreateOpFamilyStmt(CreateOpFamilyStmt&& from) noexcept + : CreateOpFamilyStmt() { *this = ::std::move(from); } - inline AlterTableCmd& operator=(const AlterTableCmd& from) { + inline CreateOpFamilyStmt& operator=(const CreateOpFamilyStmt& from) { CopyFrom(from); return *this; } - inline AlterTableCmd& operator=(AlterTableCmd&& from) noexcept { + inline CreateOpFamilyStmt& operator=(CreateOpFamilyStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -25770,245 +30011,198 @@ class AlterTableCmd final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterTableCmd& default_instance() { + static const CreateOpFamilyStmt& default_instance() { return *internal_default_instance(); } - static inline const AlterTableCmd* internal_default_instance() { - return reinterpret_cast( - &_AlterTableCmd_default_instance_); + static inline const CreateOpFamilyStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateOpFamilyStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 73; + 184; - friend void swap(AlterTableCmd& a, AlterTableCmd& b) { + friend void swap(CreateOpFamilyStmt& a, CreateOpFamilyStmt& b) { a.Swap(&b); } - inline void Swap(AlterTableCmd* other) { + inline void Swap(CreateOpFamilyStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterTableCmd* other) { + void UnsafeArenaSwap(CreateOpFamilyStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterTableCmd* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateOpFamilyStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterTableCmd& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterTableCmd& from) { - AlterTableCmd::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateOpFamilyStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateOpFamilyStmt& from) { + CreateOpFamilyStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterTableCmd* other); + void InternalSwap(CreateOpFamilyStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterTableCmd"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateOpFamilyStmt"; } protected: - explicit AlterTableCmd(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateOpFamilyStmt(::google::protobuf::Arena* arena); + CreateOpFamilyStmt(::google::protobuf::Arena* arena, const CreateOpFamilyStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNameFieldNumber = 2, - kNewownerFieldNumber = 4, - kDefFieldNumber = 5, - kSubtypeFieldNumber = 1, - kNumFieldNumber = 3, - kBehaviorFieldNumber = 6, - kMissingOkFieldNumber = 7, - kRecurseFieldNumber = 8, + kOpfamilynameFieldNumber = 1, + kAmnameFieldNumber = 2, }; - // string name = 2 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); - private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: - - // .pg_query.RoleSpec newowner = 4 [json_name = "newowner"]; - bool has_newowner() const; - private: - bool _internal_has_newowner() const; - public: - void clear_newowner(); - const ::pg_query::RoleSpec& newowner() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_newowner(); - ::pg_query::RoleSpec* mutable_newowner(); - void set_allocated_newowner(::pg_query::RoleSpec* newowner); - private: - const ::pg_query::RoleSpec& _internal_newowner() const; - ::pg_query::RoleSpec* _internal_mutable_newowner(); - public: - void unsafe_arena_set_allocated_newowner( - ::pg_query::RoleSpec* newowner); - ::pg_query::RoleSpec* unsafe_arena_release_newowner(); - - // .pg_query.Node def = 5 [json_name = "def"]; - bool has_def() const; - private: - bool _internal_has_def() const; - public: - void clear_def(); - const ::pg_query::Node& def() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_def(); - ::pg_query::Node* mutable_def(); - void set_allocated_def(::pg_query::Node* def); - private: - const ::pg_query::Node& _internal_def() const; - ::pg_query::Node* _internal_mutable_def(); - public: - void unsafe_arena_set_allocated_def( - ::pg_query::Node* def); - ::pg_query::Node* unsafe_arena_release_def(); - - // .pg_query.AlterTableType subtype = 1 [json_name = "subtype"]; - void clear_subtype(); - ::pg_query::AlterTableType subtype() const; - void set_subtype(::pg_query::AlterTableType value); + // repeated .pg_query.Node opfamilyname = 1 [json_name = "opfamilyname"]; + int opfamilyname_size() const; private: - ::pg_query::AlterTableType _internal_subtype() const; - void _internal_set_subtype(::pg_query::AlterTableType value); - public: + int _internal_opfamilyname_size() const; - // int32 num = 3 [json_name = "num"]; - void clear_num(); - int32_t num() const; - void set_num(int32_t value); - private: - int32_t _internal_num() const; - void _internal_set_num(int32_t value); public: - - // .pg_query.DropBehavior behavior = 6 [json_name = "behavior"]; - void clear_behavior(); - ::pg_query::DropBehavior behavior() const; - void set_behavior(::pg_query::DropBehavior value); + void clear_opfamilyname() ; + ::pg_query::Node* mutable_opfamilyname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opfamilyname(); private: - ::pg_query::DropBehavior _internal_behavior() const; - void _internal_set_behavior(::pg_query::DropBehavior value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opfamilyname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opfamilyname(); public: + const ::pg_query::Node& opfamilyname(int index) const; + ::pg_query::Node* add_opfamilyname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opfamilyname() const; + // string amname = 2 [json_name = "amname"]; + void clear_amname() ; + const std::string& amname() const; + template + void set_amname(Arg_&& arg, Args_... args); + std::string* mutable_amname(); + PROTOBUF_NODISCARD std::string* release_amname(); + void set_allocated_amname(std::string* value); - // bool missing_ok = 7 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); - public: + const std::string& _internal_amname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_amname( + const std::string& value); + std::string* _internal_mutable_amname(); - // bool recurse = 8 [json_name = "recurse"]; - void clear_recurse(); - bool recurse() const; - void set_recurse(bool value); - private: - bool _internal_recurse() const; - void _internal_set_recurse(bool value); public: - - // @@protoc_insertion_point(class_scope:pg_query.AlterTableCmd) + // @@protoc_insertion_point(class_scope:pg_query.CreateOpFamilyStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 42, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::RoleSpec* newowner_; - ::pg_query::Node* def_; - int subtype_; - int32_t num_; - int behavior_; - bool missing_ok_; - bool recurse_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opfamilyname_; + ::google::protobuf::internal::ArenaStringPtr amname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterDomainStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDomainStmt) */ { +class CreatePLangStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreatePLangStmt) */ { public: - inline AlterDomainStmt() : AlterDomainStmt(nullptr) {} - ~AlterDomainStmt() override; - explicit PROTOBUF_CONSTEXPR AlterDomainStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreatePLangStmt() : CreatePLangStmt(nullptr) {} + ~CreatePLangStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreatePLangStmt(::google::protobuf::internal::ConstantInitialized); - AlterDomainStmt(const AlterDomainStmt& from); - AlterDomainStmt(AlterDomainStmt&& from) noexcept - : AlterDomainStmt() { + inline CreatePLangStmt(const CreatePLangStmt& from) + : CreatePLangStmt(nullptr, from) {} + CreatePLangStmt(CreatePLangStmt&& from) noexcept + : CreatePLangStmt() { *this = ::std::move(from); } - inline AlterDomainStmt& operator=(const AlterDomainStmt& from) { + inline CreatePLangStmt& operator=(const CreatePLangStmt& from) { CopyFrom(from); return *this; } - inline AlterDomainStmt& operator=(AlterDomainStmt&& from) noexcept { + inline CreatePLangStmt& operator=(CreatePLangStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -26018,228 +30212,262 @@ class AlterDomainStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterDomainStmt& default_instance() { + static const CreatePLangStmt& default_instance() { return *internal_default_instance(); } - static inline const AlterDomainStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterDomainStmt_default_instance_); + static inline const CreatePLangStmt* internal_default_instance() { + return reinterpret_cast( + &_CreatePLangStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 74; + 173; - friend void swap(AlterDomainStmt& a, AlterDomainStmt& b) { + friend void swap(CreatePLangStmt& a, CreatePLangStmt& b) { a.Swap(&b); } - inline void Swap(AlterDomainStmt* other) { + inline void Swap(CreatePLangStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterDomainStmt* other) { + void UnsafeArenaSwap(CreatePLangStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterDomainStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreatePLangStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterDomainStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterDomainStmt& from) { - AlterDomainStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreatePLangStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreatePLangStmt& from) { + CreatePLangStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterDomainStmt* other); + void InternalSwap(CreatePLangStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterDomainStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreatePLangStmt"; } protected: - explicit AlterDomainStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreatePLangStmt(::google::protobuf::Arena* arena); + CreatePLangStmt(::google::protobuf::Arena* arena, const CreatePLangStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kTypeNameFieldNumber = 2, - kSubtypeFieldNumber = 1, - kNameFieldNumber = 3, - kDefFieldNumber = 4, - kBehaviorFieldNumber = 5, - kMissingOkFieldNumber = 6, + kPlhandlerFieldNumber = 3, + kPlinlineFieldNumber = 4, + kPlvalidatorFieldNumber = 5, + kPlnameFieldNumber = 2, + kReplaceFieldNumber = 1, + kPltrustedFieldNumber = 6, }; - // repeated .pg_query.Node type_name = 2 [json_name = "typeName"]; - int type_name_size() const; + // repeated .pg_query.Node plhandler = 3 [json_name = "plhandler"]; + int plhandler_size() const; private: - int _internal_type_name_size() const; + int _internal_plhandler_size() const; + public: - void clear_type_name(); - ::pg_query::Node* mutable_type_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_type_name(); + void clear_plhandler() ; + ::pg_query::Node* mutable_plhandler(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_plhandler(); private: - const ::pg_query::Node& _internal_type_name(int index) const; - ::pg_query::Node* _internal_add_type_name(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_plhandler() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_plhandler(); public: - const ::pg_query::Node& type_name(int index) const; - ::pg_query::Node* add_type_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - type_name() const; - - // string subtype = 1 [json_name = "subtype"]; - void clear_subtype(); - const std::string& subtype() const; - template - void set_subtype(ArgT0&& arg0, ArgT... args); - std::string* mutable_subtype(); - PROTOBUF_NODISCARD std::string* release_subtype(); - void set_allocated_subtype(std::string* subtype); + const ::pg_query::Node& plhandler(int index) const; + ::pg_query::Node* add_plhandler(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + plhandler() const; + // repeated .pg_query.Node plinline = 4 [json_name = "plinline"]; + int plinline_size() const; private: - const std::string& _internal_subtype() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_subtype(const std::string& value); - std::string* _internal_mutable_subtype(); - public: + int _internal_plinline_size() const; - // string name = 3 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + public: + void clear_plinline() ; + ::pg_query::Node* mutable_plinline(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_plinline(); private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_plinline() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_plinline(); public: - - // .pg_query.Node def = 4 [json_name = "def"]; - bool has_def() const; + const ::pg_query::Node& plinline(int index) const; + ::pg_query::Node* add_plinline(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + plinline() const; + // repeated .pg_query.Node plvalidator = 5 [json_name = "plvalidator"]; + int plvalidator_size() const; private: - bool _internal_has_def() const; + int _internal_plvalidator_size() const; + public: - void clear_def(); - const ::pg_query::Node& def() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_def(); - ::pg_query::Node* mutable_def(); - void set_allocated_def(::pg_query::Node* def); + void clear_plvalidator() ; + ::pg_query::Node* mutable_plvalidator(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_plvalidator(); private: - const ::pg_query::Node& _internal_def() const; - ::pg_query::Node* _internal_mutable_def(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_plvalidator() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_plvalidator(); public: - void unsafe_arena_set_allocated_def( - ::pg_query::Node* def); - ::pg_query::Node* unsafe_arena_release_def(); + const ::pg_query::Node& plvalidator(int index) const; + ::pg_query::Node* add_plvalidator(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + plvalidator() const; + // string plname = 2 [json_name = "plname"]; + void clear_plname() ; + const std::string& plname() const; + template + void set_plname(Arg_&& arg, Args_... args); + std::string* mutable_plname(); + PROTOBUF_NODISCARD std::string* release_plname(); + void set_allocated_plname(std::string* value); - // .pg_query.DropBehavior behavior = 5 [json_name = "behavior"]; - void clear_behavior(); - ::pg_query::DropBehavior behavior() const; - void set_behavior(::pg_query::DropBehavior value); private: - ::pg_query::DropBehavior _internal_behavior() const; - void _internal_set_behavior(::pg_query::DropBehavior value); + const std::string& _internal_plname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_plname( + const std::string& value); + std::string* _internal_mutable_plname(); + public: + // bool replace = 1 [json_name = "replace"]; + void clear_replace() ; + bool replace() const; + void set_replace(bool value); - // bool missing_ok = 6 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); + bool _internal_replace() const; + void _internal_set_replace(bool value); + public: + // bool pltrusted = 6 [json_name = "pltrusted"]; + void clear_pltrusted() ; + bool pltrusted() const; + void set_pltrusted(bool value); - // @@protoc_insertion_point(class_scope:pg_query.AlterDomainStmt) + private: + bool _internal_pltrusted() const; + void _internal_set_pltrusted(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CreatePLangStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 3, + 39, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > type_name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr subtype_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::Node* def_; - int behavior_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > plhandler_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > plinline_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > plvalidator_; + ::google::protobuf::internal::ArenaStringPtr plname_; + bool replace_; + bool pltrusted_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class SetOperationStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SetOperationStmt) */ { +class CreatePolicyStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreatePolicyStmt) */ { public: - inline SetOperationStmt() : SetOperationStmt(nullptr) {} - ~SetOperationStmt() override; - explicit PROTOBUF_CONSTEXPR SetOperationStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreatePolicyStmt() : CreatePolicyStmt(nullptr) {} + ~CreatePolicyStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreatePolicyStmt(::google::protobuf::internal::ConstantInitialized); - SetOperationStmt(const SetOperationStmt& from); - SetOperationStmt(SetOperationStmt&& from) noexcept - : SetOperationStmt() { + inline CreatePolicyStmt(const CreatePolicyStmt& from) + : CreatePolicyStmt(nullptr, from) {} + CreatePolicyStmt(CreatePolicyStmt&& from) noexcept + : CreatePolicyStmt() { *this = ::std::move(from); } - inline SetOperationStmt& operator=(const SetOperationStmt& from) { + inline CreatePolicyStmt& operator=(const CreatePolicyStmt& from) { CopyFrom(from); return *this; } - inline SetOperationStmt& operator=(SetOperationStmt&& from) noexcept { + inline CreatePolicyStmt& operator=(CreatePolicyStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -26249,276 +30477,280 @@ class SetOperationStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SetOperationStmt& default_instance() { + static const CreatePolicyStmt& default_instance() { return *internal_default_instance(); } - static inline const SetOperationStmt* internal_default_instance() { - return reinterpret_cast( - &_SetOperationStmt_default_instance_); + static inline const CreatePolicyStmt* internal_default_instance() { + return reinterpret_cast( + &_CreatePolicyStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 75; + 167; - friend void swap(SetOperationStmt& a, SetOperationStmt& b) { + friend void swap(CreatePolicyStmt& a, CreatePolicyStmt& b) { a.Swap(&b); } - inline void Swap(SetOperationStmt* other) { + inline void Swap(CreatePolicyStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SetOperationStmt* other) { + void UnsafeArenaSwap(CreatePolicyStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - SetOperationStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreatePolicyStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SetOperationStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SetOperationStmt& from) { - SetOperationStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreatePolicyStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreatePolicyStmt& from) { + CreatePolicyStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SetOperationStmt* other); + void InternalSwap(CreatePolicyStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SetOperationStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreatePolicyStmt"; } protected: - explicit SetOperationStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreatePolicyStmt(::google::protobuf::Arena* arena); + CreatePolicyStmt(::google::protobuf::Arena* arena, const CreatePolicyStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kColTypesFieldNumber = 5, - kColTypmodsFieldNumber = 6, - kColCollationsFieldNumber = 7, - kGroupClausesFieldNumber = 8, - kLargFieldNumber = 3, - kRargFieldNumber = 4, - kOpFieldNumber = 1, - kAllFieldNumber = 2, + kRolesFieldNumber = 5, + kPolicyNameFieldNumber = 1, + kCmdNameFieldNumber = 3, + kTableFieldNumber = 2, + kQualFieldNumber = 6, + kWithCheckFieldNumber = 7, + kPermissiveFieldNumber = 4, }; - // repeated .pg_query.Node col_types = 5 [json_name = "colTypes"]; - int col_types_size() const; - private: - int _internal_col_types_size() const; - public: - void clear_col_types(); - ::pg_query::Node* mutable_col_types(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_col_types(); + // repeated .pg_query.Node roles = 5 [json_name = "roles"]; + int roles_size() const; private: - const ::pg_query::Node& _internal_col_types(int index) const; - ::pg_query::Node* _internal_add_col_types(); - public: - const ::pg_query::Node& col_types(int index) const; - ::pg_query::Node* add_col_types(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - col_types() const; + int _internal_roles_size() const; - // repeated .pg_query.Node col_typmods = 6 [json_name = "colTypmods"]; - int col_typmods_size() const; - private: - int _internal_col_typmods_size() const; public: - void clear_col_typmods(); - ::pg_query::Node* mutable_col_typmods(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_col_typmods(); + void clear_roles() ; + ::pg_query::Node* mutable_roles(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_roles(); private: - const ::pg_query::Node& _internal_col_typmods(int index) const; - ::pg_query::Node* _internal_add_col_typmods(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_roles() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_roles(); public: - const ::pg_query::Node& col_typmods(int index) const; - ::pg_query::Node* add_col_typmods(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - col_typmods() const; + const ::pg_query::Node& roles(int index) const; + ::pg_query::Node* add_roles(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + roles() const; + // string policy_name = 1 [json_name = "policy_name"]; + void clear_policy_name() ; + const std::string& policy_name() const; + template + void set_policy_name(Arg_&& arg, Args_... args); + std::string* mutable_policy_name(); + PROTOBUF_NODISCARD std::string* release_policy_name(); + void set_allocated_policy_name(std::string* value); - // repeated .pg_query.Node col_collations = 7 [json_name = "colCollations"]; - int col_collations_size() const; - private: - int _internal_col_collations_size() const; - public: - void clear_col_collations(); - ::pg_query::Node* mutable_col_collations(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_col_collations(); private: - const ::pg_query::Node& _internal_col_collations(int index) const; - ::pg_query::Node* _internal_add_col_collations(); - public: - const ::pg_query::Node& col_collations(int index) const; - ::pg_query::Node* add_col_collations(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - col_collations() const; + const std::string& _internal_policy_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_policy_name( + const std::string& value); + std::string* _internal_mutable_policy_name(); - // repeated .pg_query.Node group_clauses = 8 [json_name = "groupClauses"]; - int group_clauses_size() const; - private: - int _internal_group_clauses_size() const; - public: - void clear_group_clauses(); - ::pg_query::Node* mutable_group_clauses(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_group_clauses(); - private: - const ::pg_query::Node& _internal_group_clauses(int index) const; - ::pg_query::Node* _internal_add_group_clauses(); public: - const ::pg_query::Node& group_clauses(int index) const; - ::pg_query::Node* add_group_clauses(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - group_clauses() const; + // string cmd_name = 3 [json_name = "cmd_name"]; + void clear_cmd_name() ; + const std::string& cmd_name() const; + template + void set_cmd_name(Arg_&& arg, Args_... args); + std::string* mutable_cmd_name(); + PROTOBUF_NODISCARD std::string* release_cmd_name(); + void set_allocated_cmd_name(std::string* value); - // .pg_query.Node larg = 3 [json_name = "larg"]; - bool has_larg() const; private: - bool _internal_has_larg() const; - public: - void clear_larg(); - const ::pg_query::Node& larg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_larg(); - ::pg_query::Node* mutable_larg(); - void set_allocated_larg(::pg_query::Node* larg); - private: - const ::pg_query::Node& _internal_larg() const; - ::pg_query::Node* _internal_mutable_larg(); + const std::string& _internal_cmd_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_cmd_name( + const std::string& value); + std::string* _internal_mutable_cmd_name(); + public: - void unsafe_arena_set_allocated_larg( - ::pg_query::Node* larg); - ::pg_query::Node* unsafe_arena_release_larg(); + // .pg_query.RangeVar table = 2 [json_name = "table"]; + bool has_table() const; + void clear_table() ; + const ::pg_query::RangeVar& table() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_table(); + ::pg_query::RangeVar* mutable_table(); + void set_allocated_table(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_table(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_table(); - // .pg_query.Node rarg = 4 [json_name = "rarg"]; - bool has_rarg() const; private: - bool _internal_has_rarg() const; + const ::pg_query::RangeVar& _internal_table() const; + ::pg_query::RangeVar* _internal_mutable_table(); + public: - void clear_rarg(); - const ::pg_query::Node& rarg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_rarg(); - ::pg_query::Node* mutable_rarg(); - void set_allocated_rarg(::pg_query::Node* rarg); + // .pg_query.Node qual = 6 [json_name = "qual"]; + bool has_qual() const; + void clear_qual() ; + const ::pg_query::Node& qual() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_qual(); + ::pg_query::Node* mutable_qual(); + void set_allocated_qual(::pg_query::Node* value); + void unsafe_arena_set_allocated_qual(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_qual(); + private: - const ::pg_query::Node& _internal_rarg() const; - ::pg_query::Node* _internal_mutable_rarg(); + const ::pg_query::Node& _internal_qual() const; + ::pg_query::Node* _internal_mutable_qual(); + public: - void unsafe_arena_set_allocated_rarg( - ::pg_query::Node* rarg); - ::pg_query::Node* unsafe_arena_release_rarg(); + // .pg_query.Node with_check = 7 [json_name = "with_check"]; + bool has_with_check() const; + void clear_with_check() ; + const ::pg_query::Node& with_check() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_with_check(); + ::pg_query::Node* mutable_with_check(); + void set_allocated_with_check(::pg_query::Node* value); + void unsafe_arena_set_allocated_with_check(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_with_check(); - // .pg_query.SetOperation op = 1 [json_name = "op"]; - void clear_op(); - ::pg_query::SetOperation op() const; - void set_op(::pg_query::SetOperation value); private: - ::pg_query::SetOperation _internal_op() const; - void _internal_set_op(::pg_query::SetOperation value); + const ::pg_query::Node& _internal_with_check() const; + ::pg_query::Node* _internal_mutable_with_check(); + public: + // bool permissive = 4 [json_name = "permissive"]; + void clear_permissive() ; + bool permissive() const; + void set_permissive(bool value); - // bool all = 2 [json_name = "all"]; - void clear_all(); - bool all() const; - void set_all(bool value); private: - bool _internal_all() const; - void _internal_set_all(bool value); - public: + bool _internal_permissive() const; + void _internal_set_permissive(bool value); - // @@protoc_insertion_point(class_scope:pg_query.SetOperationStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreatePolicyStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 4, + 53, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > col_types_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > col_typmods_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > col_collations_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > group_clauses_; - ::pg_query::Node* larg_; - ::pg_query::Node* rarg_; - int op_; - bool all_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > roles_; + ::google::protobuf::internal::ArenaStringPtr policy_name_; + ::google::protobuf::internal::ArenaStringPtr cmd_name_; + ::pg_query::RangeVar* table_; + ::pg_query::Node* qual_; + ::pg_query::Node* with_check_; + bool permissive_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class GrantStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.GrantStmt) */ { +class CreatePublicationStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreatePublicationStmt) */ { public: - inline GrantStmt() : GrantStmt(nullptr) {} - ~GrantStmt() override; - explicit PROTOBUF_CONSTEXPR GrantStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreatePublicationStmt() : CreatePublicationStmt(nullptr) {} + ~CreatePublicationStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreatePublicationStmt(::google::protobuf::internal::ConstantInitialized); - GrantStmt(const GrantStmt& from); - GrantStmt(GrantStmt&& from) noexcept - : GrantStmt() { + inline CreatePublicationStmt(const CreatePublicationStmt& from) + : CreatePublicationStmt(nullptr, from) {} + CreatePublicationStmt(CreatePublicationStmt&& from) noexcept + : CreatePublicationStmt() { *this = ::std::move(from); } - inline GrantStmt& operator=(const GrantStmt& from) { + inline CreatePublicationStmt& operator=(const CreatePublicationStmt& from) { CopyFrom(from); return *this; } - inline GrantStmt& operator=(GrantStmt&& from) noexcept { + inline CreatePublicationStmt& operator=(CreatePublicationStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -26528,269 +30760,230 @@ class GrantStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const GrantStmt& default_instance() { + static const CreatePublicationStmt& default_instance() { return *internal_default_instance(); } - static inline const GrantStmt* internal_default_instance() { - return reinterpret_cast( - &_GrantStmt_default_instance_); + static inline const CreatePublicationStmt* internal_default_instance() { + return reinterpret_cast( + &_CreatePublicationStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 76; + 250; - friend void swap(GrantStmt& a, GrantStmt& b) { + friend void swap(CreatePublicationStmt& a, CreatePublicationStmt& b) { a.Swap(&b); } - inline void Swap(GrantStmt* other) { + inline void Swap(CreatePublicationStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(GrantStmt* other) { + void UnsafeArenaSwap(CreatePublicationStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - GrantStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreatePublicationStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const GrantStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const GrantStmt& from) { - GrantStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreatePublicationStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreatePublicationStmt& from) { + CreatePublicationStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(GrantStmt* other); + void InternalSwap(CreatePublicationStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.GrantStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreatePublicationStmt"; } protected: - explicit GrantStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreatePublicationStmt(::google::protobuf::Arena* arena); + CreatePublicationStmt(::google::protobuf::Arena* arena, const CreatePublicationStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kObjectsFieldNumber = 4, - kPrivilegesFieldNumber = 5, - kGranteesFieldNumber = 6, - kGrantorFieldNumber = 8, - kTargtypeFieldNumber = 2, - kObjtypeFieldNumber = 3, - kIsGrantFieldNumber = 1, - kGrantOptionFieldNumber = 7, - kBehaviorFieldNumber = 9, + kOptionsFieldNumber = 2, + kPubobjectsFieldNumber = 3, + kPubnameFieldNumber = 1, + kForAllTablesFieldNumber = 4, }; - // repeated .pg_query.Node objects = 4 [json_name = "objects"]; - int objects_size() const; - private: - int _internal_objects_size() const; - public: - void clear_objects(); - ::pg_query::Node* mutable_objects(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_objects(); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_objects(int index) const; - ::pg_query::Node* _internal_add_objects(); - public: - const ::pg_query::Node& objects(int index) const; - ::pg_query::Node* add_objects(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - objects() const; + int _internal_options_size() const; - // repeated .pg_query.Node privileges = 5 [json_name = "privileges"]; - int privileges_size() const; - private: - int _internal_privileges_size() const; public: - void clear_privileges(); - ::pg_query::Node* mutable_privileges(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_privileges(); - private: - const ::pg_query::Node& _internal_privileges(int index) const; - ::pg_query::Node* _internal_add_privileges(); - public: - const ::pg_query::Node& privileges(int index) const; - ::pg_query::Node* add_privileges(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - privileges() const; - - // repeated .pg_query.Node grantees = 6 [json_name = "grantees"]; - int grantees_size() const; + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - int _internal_grantees_size() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void clear_grantees(); - ::pg_query::Node* mutable_grantees(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_grantees(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // repeated .pg_query.Node pubobjects = 3 [json_name = "pubobjects"]; + int pubobjects_size() const; private: - const ::pg_query::Node& _internal_grantees(int index) const; - ::pg_query::Node* _internal_add_grantees(); - public: - const ::pg_query::Node& grantees(int index) const; - ::pg_query::Node* add_grantees(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - grantees() const; + int _internal_pubobjects_size() const; - // .pg_query.RoleSpec grantor = 8 [json_name = "grantor"]; - bool has_grantor() const; - private: - bool _internal_has_grantor() const; - public: - void clear_grantor(); - const ::pg_query::RoleSpec& grantor() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_grantor(); - ::pg_query::RoleSpec* mutable_grantor(); - void set_allocated_grantor(::pg_query::RoleSpec* grantor); - private: - const ::pg_query::RoleSpec& _internal_grantor() const; - ::pg_query::RoleSpec* _internal_mutable_grantor(); public: - void unsafe_arena_set_allocated_grantor( - ::pg_query::RoleSpec* grantor); - ::pg_query::RoleSpec* unsafe_arena_release_grantor(); - - // .pg_query.GrantTargetType targtype = 2 [json_name = "targtype"]; - void clear_targtype(); - ::pg_query::GrantTargetType targtype() const; - void set_targtype(::pg_query::GrantTargetType value); + void clear_pubobjects() ; + ::pg_query::Node* mutable_pubobjects(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_pubobjects(); private: - ::pg_query::GrantTargetType _internal_targtype() const; - void _internal_set_targtype(::pg_query::GrantTargetType value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_pubobjects() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_pubobjects(); public: + const ::pg_query::Node& pubobjects(int index) const; + ::pg_query::Node* add_pubobjects(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + pubobjects() const; + // string pubname = 1 [json_name = "pubname"]; + void clear_pubname() ; + const std::string& pubname() const; + template + void set_pubname(Arg_&& arg, Args_... args); + std::string* mutable_pubname(); + PROTOBUF_NODISCARD std::string* release_pubname(); + void set_allocated_pubname(std::string* value); - // .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; - void clear_objtype(); - ::pg_query::ObjectType objtype() const; - void set_objtype(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_objtype() const; - void _internal_set_objtype(::pg_query::ObjectType value); - public: + const std::string& _internal_pubname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_pubname( + const std::string& value); + std::string* _internal_mutable_pubname(); - // bool is_grant = 1 [json_name = "is_grant"]; - void clear_is_grant(); - bool is_grant() const; - void set_is_grant(bool value); - private: - bool _internal_is_grant() const; - void _internal_set_is_grant(bool value); public: + // bool for_all_tables = 4 [json_name = "for_all_tables"]; + void clear_for_all_tables() ; + bool for_all_tables() const; + void set_for_all_tables(bool value); - // bool grant_option = 7 [json_name = "grant_option"]; - void clear_grant_option(); - bool grant_option() const; - void set_grant_option(bool value); private: - bool _internal_grant_option() const; - void _internal_set_grant_option(bool value); - public: + bool _internal_for_all_tables() const; + void _internal_set_for_all_tables(bool value); - // .pg_query.DropBehavior behavior = 9 [json_name = "behavior"]; - void clear_behavior(); - ::pg_query::DropBehavior behavior() const; - void set_behavior(::pg_query::DropBehavior value); - private: - ::pg_query::DropBehavior _internal_behavior() const; - void _internal_set_behavior(::pg_query::DropBehavior value); public: - - // @@protoc_insertion_point(class_scope:pg_query.GrantStmt) + // @@protoc_insertion_point(class_scope:pg_query.CreatePublicationStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 46, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > objects_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > privileges_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > grantees_; - ::pg_query::RoleSpec* grantor_; - int targtype_; - int objtype_; - bool is_grant_; - bool grant_option_; - int behavior_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > pubobjects_; + ::google::protobuf::internal::ArenaStringPtr pubname_; + bool for_all_tables_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class GrantRoleStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.GrantRoleStmt) */ { +class CreateRangeStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateRangeStmt) */ { public: - inline GrantRoleStmt() : GrantRoleStmt(nullptr) {} - ~GrantRoleStmt() override; - explicit PROTOBUF_CONSTEXPR GrantRoleStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateRangeStmt() : CreateRangeStmt(nullptr) {} + ~CreateRangeStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateRangeStmt(::google::protobuf::internal::ConstantInitialized); - GrantRoleStmt(const GrantRoleStmt& from); - GrantRoleStmt(GrantRoleStmt&& from) noexcept - : GrantRoleStmt() { + inline CreateRangeStmt(const CreateRangeStmt& from) + : CreateRangeStmt(nullptr, from) {} + CreateRangeStmt(CreateRangeStmt&& from) noexcept + : CreateRangeStmt() { *this = ::std::move(from); } - inline GrantRoleStmt& operator=(const GrantRoleStmt& from) { + inline CreateRangeStmt& operator=(const CreateRangeStmt& from) { CopyFrom(from); return *this; } - inline GrantRoleStmt& operator=(GrantRoleStmt&& from) noexcept { + inline CreateRangeStmt& operator=(CreateRangeStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -26800,227 +30993,200 @@ class GrantRoleStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const GrantRoleStmt& default_instance() { + static const CreateRangeStmt& default_instance() { return *internal_default_instance(); } - static inline const GrantRoleStmt* internal_default_instance() { - return reinterpret_cast( - &_GrantRoleStmt_default_instance_); + static inline const CreateRangeStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateRangeStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 77; + 217; - friend void swap(GrantRoleStmt& a, GrantRoleStmt& b) { + friend void swap(CreateRangeStmt& a, CreateRangeStmt& b) { a.Swap(&b); } - inline void Swap(GrantRoleStmt* other) { + inline void Swap(CreateRangeStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(GrantRoleStmt* other) { + void UnsafeArenaSwap(CreateRangeStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - GrantRoleStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateRangeStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const GrantRoleStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const GrantRoleStmt& from) { - GrantRoleStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateRangeStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateRangeStmt& from) { + CreateRangeStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(GrantRoleStmt* other); + void InternalSwap(CreateRangeStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.GrantRoleStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateRangeStmt"; } protected: - explicit GrantRoleStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateRangeStmt(::google::protobuf::Arena* arena); + CreateRangeStmt(::google::protobuf::Arena* arena, const CreateRangeStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- + const ::google::protobuf::Message::ClassData*GetClassData() const final; - enum : int { - kGrantedRolesFieldNumber = 1, - kGranteeRolesFieldNumber = 2, - kGrantorFieldNumber = 5, - kIsGrantFieldNumber = 3, - kAdminOptFieldNumber = 4, - kBehaviorFieldNumber = 6, - }; - // repeated .pg_query.Node granted_roles = 1 [json_name = "granted_roles"]; - int granted_roles_size() const; - private: - int _internal_granted_roles_size() const; - public: - void clear_granted_roles(); - ::pg_query::Node* mutable_granted_roles(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_granted_roles(); - private: - const ::pg_query::Node& _internal_granted_roles(int index) const; - ::pg_query::Node* _internal_add_granted_roles(); - public: - const ::pg_query::Node& granted_roles(int index) const; - ::pg_query::Node* add_granted_roles(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - granted_roles() const; + ::google::protobuf::Metadata GetMetadata() const final; - // repeated .pg_query.Node grantee_roles = 2 [json_name = "grantee_roles"]; - int grantee_roles_size() const; - private: - int _internal_grantee_roles_size() const; - public: - void clear_grantee_roles(); - ::pg_query::Node* mutable_grantee_roles(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_grantee_roles(); - private: - const ::pg_query::Node& _internal_grantee_roles(int index) const; - ::pg_query::Node* _internal_add_grantee_roles(); - public: - const ::pg_query::Node& grantee_roles(int index) const; - ::pg_query::Node* add_grantee_roles(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - grantee_roles() const; + // nested types ---------------------------------------------------- - // .pg_query.RoleSpec grantor = 5 [json_name = "grantor"]; - bool has_grantor() const; + // accessors ------------------------------------------------------- + + enum : int { + kTypeNameFieldNumber = 1, + kParamsFieldNumber = 2, + }; + // repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; + int type_name_size() const; private: - bool _internal_has_grantor() const; + int _internal_type_name_size() const; + public: - void clear_grantor(); - const ::pg_query::RoleSpec& grantor() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_grantor(); - ::pg_query::RoleSpec* mutable_grantor(); - void set_allocated_grantor(::pg_query::RoleSpec* grantor); + void clear_type_name() ; + ::pg_query::Node* mutable_type_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_type_name(); private: - const ::pg_query::RoleSpec& _internal_grantor() const; - ::pg_query::RoleSpec* _internal_mutable_grantor(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_type_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_type_name(); public: - void unsafe_arena_set_allocated_grantor( - ::pg_query::RoleSpec* grantor); - ::pg_query::RoleSpec* unsafe_arena_release_grantor(); - - // bool is_grant = 3 [json_name = "is_grant"]; - void clear_is_grant(); - bool is_grant() const; - void set_is_grant(bool value); + const ::pg_query::Node& type_name(int index) const; + ::pg_query::Node* add_type_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + type_name() const; + // repeated .pg_query.Node params = 2 [json_name = "params"]; + int params_size() const; private: - bool _internal_is_grant() const; - void _internal_set_is_grant(bool value); - public: + int _internal_params_size() const; - // bool admin_opt = 4 [json_name = "admin_opt"]; - void clear_admin_opt(); - bool admin_opt() const; - void set_admin_opt(bool value); - private: - bool _internal_admin_opt() const; - void _internal_set_admin_opt(bool value); public: - - // .pg_query.DropBehavior behavior = 6 [json_name = "behavior"]; - void clear_behavior(); - ::pg_query::DropBehavior behavior() const; - void set_behavior(::pg_query::DropBehavior value); + void clear_params() ; + ::pg_query::Node* mutable_params(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_params(); private: - ::pg_query::DropBehavior _internal_behavior() const; - void _internal_set_behavior(::pg_query::DropBehavior value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_params() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_params(); public: - - // @@protoc_insertion_point(class_scope:pg_query.GrantRoleStmt) + const ::pg_query::Node& params(int index) const; + ::pg_query::Node* add_params(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + params() const; + // @@protoc_insertion_point(class_scope:pg_query.CreateRangeStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > granted_roles_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > grantee_roles_; - ::pg_query::RoleSpec* grantor_; - bool is_grant_; - bool admin_opt_; - int behavior_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > type_name_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > params_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterDefaultPrivilegesStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDefaultPrivilegesStmt) */ { +class CreateRoleStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateRoleStmt) */ { public: - inline AlterDefaultPrivilegesStmt() : AlterDefaultPrivilegesStmt(nullptr) {} - ~AlterDefaultPrivilegesStmt() override; - explicit PROTOBUF_CONSTEXPR AlterDefaultPrivilegesStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateRoleStmt() : CreateRoleStmt(nullptr) {} + ~CreateRoleStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateRoleStmt(::google::protobuf::internal::ConstantInitialized); - AlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt& from); - AlterDefaultPrivilegesStmt(AlterDefaultPrivilegesStmt&& from) noexcept - : AlterDefaultPrivilegesStmt() { + inline CreateRoleStmt(const CreateRoleStmt& from) + : CreateRoleStmt(nullptr, from) {} + CreateRoleStmt(CreateRoleStmt&& from) noexcept + : CreateRoleStmt() { *this = ::std::move(from); } - inline AlterDefaultPrivilegesStmt& operator=(const AlterDefaultPrivilegesStmt& from) { + inline CreateRoleStmt& operator=(const CreateRoleStmt& from) { CopyFrom(from); return *this; } - inline AlterDefaultPrivilegesStmt& operator=(AlterDefaultPrivilegesStmt&& from) noexcept { + inline CreateRoleStmt& operator=(CreateRoleStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -27030,174 +31196,210 @@ class AlterDefaultPrivilegesStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterDefaultPrivilegesStmt& default_instance() { + static const CreateRoleStmt& default_instance() { return *internal_default_instance(); } - static inline const AlterDefaultPrivilegesStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterDefaultPrivilegesStmt_default_instance_); + static inline const CreateRoleStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateRoleStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 78; + 174; - friend void swap(AlterDefaultPrivilegesStmt& a, AlterDefaultPrivilegesStmt& b) { + friend void swap(CreateRoleStmt& a, CreateRoleStmt& b) { a.Swap(&b); } - inline void Swap(AlterDefaultPrivilegesStmt* other) { + inline void Swap(CreateRoleStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterDefaultPrivilegesStmt* other) { + void UnsafeArenaSwap(CreateRoleStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterDefaultPrivilegesStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateRoleStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterDefaultPrivilegesStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterDefaultPrivilegesStmt& from) { - AlterDefaultPrivilegesStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateRoleStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateRoleStmt& from) { + CreateRoleStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterDefaultPrivilegesStmt* other); + void InternalSwap(CreateRoleStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterDefaultPrivilegesStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateRoleStmt"; } protected: - explicit AlterDefaultPrivilegesStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateRoleStmt(::google::protobuf::Arena* arena); + CreateRoleStmt(::google::protobuf::Arena* arena, const CreateRoleStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 1, - kActionFieldNumber = 2, + kOptionsFieldNumber = 3, + kRoleFieldNumber = 2, + kStmtTypeFieldNumber = 1, }; - // repeated .pg_query.Node options = 1 [json_name = "options"]; + // repeated .pg_query.Node options = 3 [json_name = "options"]; int options_size() const; private: int _internal_options_size() const; + public: - void clear_options(); + void clear_options() ; ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_options(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: const ::pg_query::Node& options(int index) const; ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& options() const; + // string role = 2 [json_name = "role"]; + void clear_role() ; + const std::string& role() const; + template + void set_role(Arg_&& arg, Args_... args); + std::string* mutable_role(); + PROTOBUF_NODISCARD std::string* release_role(); + void set_allocated_role(std::string* value); - // .pg_query.GrantStmt action = 2 [json_name = "action"]; - bool has_action() const; private: - bool _internal_has_action() const; + const std::string& _internal_role() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_role( + const std::string& value); + std::string* _internal_mutable_role(); + public: - void clear_action(); - const ::pg_query::GrantStmt& action() const; - PROTOBUF_NODISCARD ::pg_query::GrantStmt* release_action(); - ::pg_query::GrantStmt* mutable_action(); - void set_allocated_action(::pg_query::GrantStmt* action); + // .pg_query.RoleStmtType stmt_type = 1 [json_name = "stmt_type"]; + void clear_stmt_type() ; + ::pg_query::RoleStmtType stmt_type() const; + void set_stmt_type(::pg_query::RoleStmtType value); + private: - const ::pg_query::GrantStmt& _internal_action() const; - ::pg_query::GrantStmt* _internal_mutable_action(); - public: - void unsafe_arena_set_allocated_action( - ::pg_query::GrantStmt* action); - ::pg_query::GrantStmt* unsafe_arena_release_action(); + ::pg_query::RoleStmtType _internal_stmt_type() const; + void _internal_set_stmt_type(::pg_query::RoleStmtType value); - // @@protoc_insertion_point(class_scope:pg_query.AlterDefaultPrivilegesStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateRoleStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 36, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::pg_query::GrantStmt* action_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr role_; + int stmt_type_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ClosePortalStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ClosePortalStmt) */ { +class CreateSchemaStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateSchemaStmt) */ { public: - inline ClosePortalStmt() : ClosePortalStmt(nullptr) {} - ~ClosePortalStmt() override; - explicit PROTOBUF_CONSTEXPR ClosePortalStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateSchemaStmt() : CreateSchemaStmt(nullptr) {} + ~CreateSchemaStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateSchemaStmt(::google::protobuf::internal::ConstantInitialized); - ClosePortalStmt(const ClosePortalStmt& from); - ClosePortalStmt(ClosePortalStmt&& from) noexcept - : ClosePortalStmt() { + inline CreateSchemaStmt(const CreateSchemaStmt& from) + : CreateSchemaStmt(nullptr, from) {} + CreateSchemaStmt(CreateSchemaStmt&& from) noexcept + : CreateSchemaStmt() { *this = ::std::move(from); } - inline ClosePortalStmt& operator=(const ClosePortalStmt& from) { + inline CreateSchemaStmt& operator=(const CreateSchemaStmt& from) { CopyFrom(from); return *this; } - inline ClosePortalStmt& operator=(ClosePortalStmt&& from) noexcept { + inline CreateSchemaStmt& operator=(CreateSchemaStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -27207,150 +31409,228 @@ class ClosePortalStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ClosePortalStmt& default_instance() { + static const CreateSchemaStmt& default_instance() { return *internal_default_instance(); } - static inline const ClosePortalStmt* internal_default_instance() { - return reinterpret_cast( - &_ClosePortalStmt_default_instance_); + static inline const CreateSchemaStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateSchemaStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 79; + 135; - friend void swap(ClosePortalStmt& a, ClosePortalStmt& b) { + friend void swap(CreateSchemaStmt& a, CreateSchemaStmt& b) { a.Swap(&b); } - inline void Swap(ClosePortalStmt* other) { + inline void Swap(CreateSchemaStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ClosePortalStmt* other) { + void UnsafeArenaSwap(CreateSchemaStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ClosePortalStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateSchemaStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ClosePortalStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ClosePortalStmt& from) { - ClosePortalStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateSchemaStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateSchemaStmt& from) { + CreateSchemaStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ClosePortalStmt* other); + void InternalSwap(CreateSchemaStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ClosePortalStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateSchemaStmt"; } protected: - explicit ClosePortalStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateSchemaStmt(::google::protobuf::Arena* arena); + CreateSchemaStmt(::google::protobuf::Arena* arena, const CreateSchemaStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kPortalnameFieldNumber = 1, + kSchemaEltsFieldNumber = 3, + kSchemanameFieldNumber = 1, + kAuthroleFieldNumber = 2, + kIfNotExistsFieldNumber = 4, }; - // string portalname = 1 [json_name = "portalname"]; - void clear_portalname(); - const std::string& portalname() const; - template - void set_portalname(ArgT0&& arg0, ArgT... args); - std::string* mutable_portalname(); - PROTOBUF_NODISCARD std::string* release_portalname(); - void set_allocated_portalname(std::string* portalname); + // repeated .pg_query.Node schema_elts = 3 [json_name = "schemaElts"]; + int schema_elts_size() const; private: - const std::string& _internal_portalname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_portalname(const std::string& value); - std::string* _internal_mutable_portalname(); + int _internal_schema_elts_size() const; + + public: + void clear_schema_elts() ; + ::pg_query::Node* mutable_schema_elts(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_schema_elts(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_schema_elts() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_schema_elts(); + public: + const ::pg_query::Node& schema_elts(int index) const; + ::pg_query::Node* add_schema_elts(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + schema_elts() const; + // string schemaname = 1 [json_name = "schemaname"]; + void clear_schemaname() ; + const std::string& schemaname() const; + template + void set_schemaname(Arg_&& arg, Args_... args); + std::string* mutable_schemaname(); + PROTOBUF_NODISCARD std::string* release_schemaname(); + void set_allocated_schemaname(std::string* value); + + private: + const std::string& _internal_schemaname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_schemaname( + const std::string& value); + std::string* _internal_mutable_schemaname(); + public: + // .pg_query.RoleSpec authrole = 2 [json_name = "authrole"]; + bool has_authrole() const; + void clear_authrole() ; + const ::pg_query::RoleSpec& authrole() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_authrole(); + ::pg_query::RoleSpec* mutable_authrole(); + void set_allocated_authrole(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_authrole(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_authrole(); - // @@protoc_insertion_point(class_scope:pg_query.ClosePortalStmt) + private: + const ::pg_query::RoleSpec& _internal_authrole() const; + ::pg_query::RoleSpec* _internal_mutable_authrole(); + + public: + // bool if_not_exists = 4 [json_name = "if_not_exists"]; + void clear_if_not_exists() ; + bool if_not_exists() const; + void set_if_not_exists(bool value); + + private: + bool _internal_if_not_exists() const; + void _internal_set_if_not_exists(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateSchemaStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 44, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr portalname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > schema_elts_; + ::google::protobuf::internal::ArenaStringPtr schemaname_; + ::pg_query::RoleSpec* authrole_; + bool if_not_exists_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ClusterStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ClusterStmt) */ { +class CreateSeqStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateSeqStmt) */ { public: - inline ClusterStmt() : ClusterStmt(nullptr) {} - ~ClusterStmt() override; - explicit PROTOBUF_CONSTEXPR ClusterStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateSeqStmt() : CreateSeqStmt(nullptr) {} + ~CreateSeqStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateSeqStmt(::google::protobuf::internal::ConstantInitialized); - ClusterStmt(const ClusterStmt& from); - ClusterStmt(ClusterStmt&& from) noexcept - : ClusterStmt() { + inline CreateSeqStmt(const CreateSeqStmt& from) + : CreateSeqStmt(nullptr, from) {} + CreateSeqStmt(CreateSeqStmt&& from) noexcept + : CreateSeqStmt() { *this = ::std::move(from); } - inline ClusterStmt& operator=(const ClusterStmt& from) { + inline CreateSeqStmt& operator=(const CreateSeqStmt& from) { CopyFrom(from); return *this; } - inline ClusterStmt& operator=(ClusterStmt&& from) noexcept { + inline CreateSeqStmt& operator=(CreateSeqStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -27360,190 +31640,234 @@ class ClusterStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ClusterStmt& default_instance() { + static const CreateSeqStmt& default_instance() { return *internal_default_instance(); } - static inline const ClusterStmt* internal_default_instance() { - return reinterpret_cast( - &_ClusterStmt_default_instance_); + static inline const CreateSeqStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateSeqStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 80; + 178; - friend void swap(ClusterStmt& a, ClusterStmt& b) { + friend void swap(CreateSeqStmt& a, CreateSeqStmt& b) { a.Swap(&b); } - inline void Swap(ClusterStmt* other) { + inline void Swap(CreateSeqStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ClusterStmt* other) { + void UnsafeArenaSwap(CreateSeqStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ClusterStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateSeqStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ClusterStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ClusterStmt& from) { - ClusterStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateSeqStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateSeqStmt& from) { + CreateSeqStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ClusterStmt* other); + void InternalSwap(CreateSeqStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ClusterStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateSeqStmt"; } protected: - explicit ClusterStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateSeqStmt(::google::protobuf::Arena* arena); + CreateSeqStmt(::google::protobuf::Arena* arena, const CreateSeqStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kParamsFieldNumber = 3, - kIndexnameFieldNumber = 2, - kRelationFieldNumber = 1, + kOptionsFieldNumber = 2, + kSequenceFieldNumber = 1, + kOwnerIdFieldNumber = 3, + kForIdentityFieldNumber = 4, + kIfNotExistsFieldNumber = 5, }; - // repeated .pg_query.Node params = 3 [json_name = "params"]; - int params_size() const; + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - int _internal_params_size() const; + int _internal_options_size() const; + public: - void clear_params(); - ::pg_query::Node* mutable_params(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_params(); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::Node& _internal_params(int index) const; - ::pg_query::Node* _internal_add_params(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - const ::pg_query::Node& params(int index) const; - ::pg_query::Node* add_params(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - params() const; + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // .pg_query.RangeVar sequence = 1 [json_name = "sequence"]; + bool has_sequence() const; + void clear_sequence() ; + const ::pg_query::RangeVar& sequence() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_sequence(); + ::pg_query::RangeVar* mutable_sequence(); + void set_allocated_sequence(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_sequence(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_sequence(); - // string indexname = 2 [json_name = "indexname"]; - void clear_indexname(); - const std::string& indexname() const; - template - void set_indexname(ArgT0&& arg0, ArgT... args); - std::string* mutable_indexname(); - PROTOBUF_NODISCARD std::string* release_indexname(); - void set_allocated_indexname(std::string* indexname); private: - const std::string& _internal_indexname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_indexname(const std::string& value); - std::string* _internal_mutable_indexname(); + const ::pg_query::RangeVar& _internal_sequence() const; + ::pg_query::RangeVar* _internal_mutable_sequence(); + public: + // uint32 owner_id = 3 [json_name = "ownerId"]; + void clear_owner_id() ; + ::uint32_t owner_id() const; + void set_owner_id(::uint32_t value); - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; private: - bool _internal_has_relation() const; + ::uint32_t _internal_owner_id() const; + void _internal_set_owner_id(::uint32_t value); + public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + // bool for_identity = 4 [json_name = "for_identity"]; + void clear_for_identity() ; + bool for_identity() const; + void set_for_identity(bool value); + private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + bool _internal_for_identity() const; + void _internal_set_for_identity(bool value); + public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + // bool if_not_exists = 5 [json_name = "if_not_exists"]; + void clear_if_not_exists() ; + bool if_not_exists() const; + void set_if_not_exists(bool value); - // @@protoc_insertion_point(class_scope:pg_query.ClusterStmt) + private: + bool _internal_if_not_exists() const; + void _internal_set_if_not_exists(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateSeqStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > params_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr indexname_; - ::pg_query::RangeVar* relation_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::pg_query::RangeVar* sequence_; + ::uint32_t owner_id_; + bool for_identity_; + bool if_not_exists_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CopyStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CopyStmt) */ { +class CreateStatsStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateStatsStmt) */ { public: - inline CopyStmt() : CopyStmt(nullptr) {} - ~CopyStmt() override; - explicit PROTOBUF_CONSTEXPR CopyStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateStatsStmt() : CreateStatsStmt(nullptr) {} + ~CreateStatsStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateStatsStmt(::google::protobuf::internal::ConstantInitialized); - CopyStmt(const CopyStmt& from); - CopyStmt(CopyStmt&& from) noexcept - : CopyStmt() { + inline CreateStatsStmt(const CreateStatsStmt& from) + : CreateStatsStmt(nullptr, from) {} + CreateStatsStmt(CreateStatsStmt&& from) noexcept + : CreateStatsStmt() { *this = ::std::move(from); } - inline CopyStmt& operator=(const CopyStmt& from) { + inline CreateStatsStmt& operator=(const CreateStatsStmt& from) { CopyFrom(from); return *this; } - inline CopyStmt& operator=(CopyStmt&& from) noexcept { + inline CreateStatsStmt& operator=(CreateStatsStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -27553,258 +31877,268 @@ class CopyStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CopyStmt& default_instance() { + static const CreateStatsStmt& default_instance() { return *internal_default_instance(); } - static inline const CopyStmt* internal_default_instance() { - return reinterpret_cast( - &_CopyStmt_default_instance_); + static inline const CreateStatsStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateStatsStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 81; + 194; - friend void swap(CopyStmt& a, CopyStmt& b) { + friend void swap(CreateStatsStmt& a, CreateStatsStmt& b) { a.Swap(&b); } - inline void Swap(CopyStmt* other) { + inline void Swap(CreateStatsStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CopyStmt* other) { + void UnsafeArenaSwap(CreateStatsStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CopyStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateStatsStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CopyStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CopyStmt& from) { - CopyStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateStatsStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateStatsStmt& from) { + CreateStatsStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CopyStmt* other); + void InternalSwap(CreateStatsStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CopyStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateStatsStmt"; } protected: - explicit CopyStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateStatsStmt(::google::protobuf::Arena* arena); + CreateStatsStmt(::google::protobuf::Arena* arena, const CreateStatsStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kAttlistFieldNumber = 3, - kOptionsFieldNumber = 7, - kFilenameFieldNumber = 6, - kRelationFieldNumber = 1, - kQueryFieldNumber = 2, - kWhereClauseFieldNumber = 8, - kIsFromFieldNumber = 4, - kIsProgramFieldNumber = 5, + kDefnamesFieldNumber = 1, + kStatTypesFieldNumber = 2, + kExprsFieldNumber = 3, + kRelationsFieldNumber = 4, + kStxcommentFieldNumber = 5, + kTransformedFieldNumber = 6, + kIfNotExistsFieldNumber = 7, }; - // repeated .pg_query.Node attlist = 3 [json_name = "attlist"]; - int attlist_size() const; - private: - int _internal_attlist_size() const; - public: - void clear_attlist(); - ::pg_query::Node* mutable_attlist(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_attlist(); + // repeated .pg_query.Node defnames = 1 [json_name = "defnames"]; + int defnames_size() const; private: - const ::pg_query::Node& _internal_attlist(int index) const; - ::pg_query::Node* _internal_add_attlist(); - public: - const ::pg_query::Node& attlist(int index) const; - ::pg_query::Node* add_attlist(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - attlist() const; + int _internal_defnames_size() const; - // repeated .pg_query.Node options = 7 [json_name = "options"]; - int options_size() const; - private: - int _internal_options_size() const; public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_defnames() ; + ::pg_query::Node* mutable_defnames(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_defnames(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_defnames() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_defnames(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; - - // string filename = 6 [json_name = "filename"]; - void clear_filename(); - const std::string& filename() const; - template - void set_filename(ArgT0&& arg0, ArgT... args); - std::string* mutable_filename(); - PROTOBUF_NODISCARD std::string* release_filename(); - void set_allocated_filename(std::string* filename); + const ::pg_query::Node& defnames(int index) const; + ::pg_query::Node* add_defnames(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + defnames() const; + // repeated .pg_query.Node stat_types = 2 [json_name = "stat_types"]; + int stat_types_size() const; private: - const std::string& _internal_filename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_filename(const std::string& value); - std::string* _internal_mutable_filename(); - public: + int _internal_stat_types_size() const; - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void clear_stat_types() ; + ::pg_query::Node* mutable_stat_types(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_stat_types(); private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_stat_types() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_stat_types(); public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); - - // .pg_query.Node query = 2 [json_name = "query"]; - bool has_query() const; + const ::pg_query::Node& stat_types(int index) const; + ::pg_query::Node* add_stat_types(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + stat_types() const; + // repeated .pg_query.Node exprs = 3 [json_name = "exprs"]; + int exprs_size() const; private: - bool _internal_has_query() const; + int _internal_exprs_size() const; + public: - void clear_query(); - const ::pg_query::Node& query() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_query(); - ::pg_query::Node* mutable_query(); - void set_allocated_query(::pg_query::Node* query); + void clear_exprs() ; + ::pg_query::Node* mutable_exprs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_exprs(); private: - const ::pg_query::Node& _internal_query() const; - ::pg_query::Node* _internal_mutable_query(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_exprs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_exprs(); public: - void unsafe_arena_set_allocated_query( - ::pg_query::Node* query); - ::pg_query::Node* unsafe_arena_release_query(); + const ::pg_query::Node& exprs(int index) const; + ::pg_query::Node* add_exprs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + exprs() const; + // repeated .pg_query.Node relations = 4 [json_name = "relations"]; + int relations_size() const; + private: + int _internal_relations_size() const; - // .pg_query.Node where_clause = 8 [json_name = "whereClause"]; - bool has_where_clause() const; + public: + void clear_relations() ; + ::pg_query::Node* mutable_relations(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_relations(); private: - bool _internal_has_where_clause() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_relations() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_relations(); public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); + const ::pg_query::Node& relations(int index) const; + ::pg_query::Node* add_relations(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + relations() const; + // string stxcomment = 5 [json_name = "stxcomment"]; + void clear_stxcomment() ; + const std::string& stxcomment() const; + template + void set_stxcomment(Arg_&& arg, Args_... args); + std::string* mutable_stxcomment(); + PROTOBUF_NODISCARD std::string* release_stxcomment(); + void set_allocated_stxcomment(std::string* value); + private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); + const std::string& _internal_stxcomment() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_stxcomment( + const std::string& value); + std::string* _internal_mutable_stxcomment(); + public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); + // bool transformed = 6 [json_name = "transformed"]; + void clear_transformed() ; + bool transformed() const; + void set_transformed(bool value); - // bool is_from = 4 [json_name = "is_from"]; - void clear_is_from(); - bool is_from() const; - void set_is_from(bool value); private: - bool _internal_is_from() const; - void _internal_set_is_from(bool value); + bool _internal_transformed() const; + void _internal_set_transformed(bool value); + public: + // bool if_not_exists = 7 [json_name = "if_not_exists"]; + void clear_if_not_exists() ; + bool if_not_exists() const; + void set_if_not_exists(bool value); - // bool is_program = 5 [json_name = "is_program"]; - void clear_is_program(); - bool is_program() const; - void set_is_program(bool value); private: - bool _internal_is_program() const; - void _internal_set_is_program(bool value); - public: + bool _internal_if_not_exists() const; + void _internal_set_if_not_exists(bool value); - // @@protoc_insertion_point(class_scope:pg_query.CopyStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateStatsStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 4, + 43, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > attlist_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr filename_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* query_; - ::pg_query::Node* where_clause_; - bool is_from_; - bool is_program_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > defnames_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > stat_types_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > exprs_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > relations_; + ::google::protobuf::internal::ArenaStringPtr stxcomment_; + bool transformed_; + bool if_not_exists_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- class CreateStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateStmt) */ { + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateStmt) */ { public: inline CreateStmt() : CreateStmt(nullptr) {} ~CreateStmt() override; - explicit PROTOBUF_CONSTEXPR CreateStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + template + explicit PROTOBUF_CONSTEXPR CreateStmt(::google::protobuf::internal::ConstantInitialized); - CreateStmt(const CreateStmt& from); + inline CreateStmt(const CreateStmt& from) + : CreateStmt(nullptr, from) {} CreateStmt(CreateStmt&& from) noexcept : CreateStmt() { *this = ::std::move(from); @@ -27816,9 +32150,9 @@ class CreateStmt final : } inline CreateStmt& operator=(CreateStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -27828,13 +32162,22 @@ class CreateStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } static const CreateStmt& default_instance() { @@ -27845,7 +32188,7 @@ class CreateStmt final : &_CreateStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 82; + 149; friend void swap(CreateStmt& a, CreateStmt& b) { a.Swap(&b); @@ -27853,65 +32196,65 @@ class CreateStmt final : inline void Swap(CreateStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } void UnsafeArenaSwap(CreateStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + CreateStmt* New(::google::protobuf::Arena* arena = nullptr) const final { return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + using ::google::protobuf::Message::CopyFrom; void CopyFrom(const CreateStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + using ::google::protobuf::Message::MergeFrom; void MergeFrom( const CreateStmt& from) { CreateStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; void InternalSwap(CreateStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { return "pg_query.CreateStmt"; } protected: - explicit CreateStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateStmt(::google::protobuf::Arena* arena); + CreateStmt(::google::protobuf::Arena* arena, const CreateStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- @@ -27935,241 +32278,253 @@ class CreateStmt final : int table_elts_size() const; private: int _internal_table_elts_size() const; + public: - void clear_table_elts(); + void clear_table_elts() ; ::pg_query::Node* mutable_table_elts(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_table_elts(); private: - const ::pg_query::Node& _internal_table_elts(int index) const; - ::pg_query::Node* _internal_add_table_elts(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_table_elts() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_table_elts(); public: const ::pg_query::Node& table_elts(int index) const; ::pg_query::Node* add_table_elts(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& table_elts() const; - // repeated .pg_query.Node inh_relations = 3 [json_name = "inhRelations"]; int inh_relations_size() const; private: int _internal_inh_relations_size() const; + public: - void clear_inh_relations(); + void clear_inh_relations() ; ::pg_query::Node* mutable_inh_relations(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_inh_relations(); private: - const ::pg_query::Node& _internal_inh_relations(int index) const; - ::pg_query::Node* _internal_add_inh_relations(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_inh_relations() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_inh_relations(); public: const ::pg_query::Node& inh_relations(int index) const; ::pg_query::Node* add_inh_relations(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& inh_relations() const; - // repeated .pg_query.Node constraints = 7 [json_name = "constraints"]; int constraints_size() const; private: int _internal_constraints_size() const; + public: - void clear_constraints(); + void clear_constraints() ; ::pg_query::Node* mutable_constraints(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_constraints(); private: - const ::pg_query::Node& _internal_constraints(int index) const; - ::pg_query::Node* _internal_add_constraints(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_constraints() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_constraints(); public: const ::pg_query::Node& constraints(int index) const; ::pg_query::Node* add_constraints(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& constraints() const; - // repeated .pg_query.Node options = 8 [json_name = "options"]; int options_size() const; private: int _internal_options_size() const; + public: - void clear_options(); + void clear_options() ; ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_options(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: const ::pg_query::Node& options(int index) const; ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& options() const; - // string tablespacename = 10 [json_name = "tablespacename"]; - void clear_tablespacename(); + void clear_tablespacename() ; const std::string& tablespacename() const; - template - void set_tablespacename(ArgT0&& arg0, ArgT... args); + template + void set_tablespacename(Arg_&& arg, Args_... args); std::string* mutable_tablespacename(); PROTOBUF_NODISCARD std::string* release_tablespacename(); - void set_allocated_tablespacename(std::string* tablespacename); + void set_allocated_tablespacename(std::string* value); + private: const std::string& _internal_tablespacename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_tablespacename(const std::string& value); + inline PROTOBUF_ALWAYS_INLINE void _internal_set_tablespacename( + const std::string& value); std::string* _internal_mutable_tablespacename(); - public: + public: // string access_method = 11 [json_name = "accessMethod"]; - void clear_access_method(); + void clear_access_method() ; const std::string& access_method() const; - template - void set_access_method(ArgT0&& arg0, ArgT... args); + template + void set_access_method(Arg_&& arg, Args_... args); std::string* mutable_access_method(); PROTOBUF_NODISCARD std::string* release_access_method(); - void set_allocated_access_method(std::string* access_method); + void set_allocated_access_method(std::string* value); + private: const std::string& _internal_access_method() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_access_method(const std::string& value); + inline PROTOBUF_ALWAYS_INLINE void _internal_set_access_method( + const std::string& value); std::string* _internal_mutable_access_method(); - public: + public: // .pg_query.RangeVar relation = 1 [json_name = "relation"]; bool has_relation() const; - private: - bool _internal_has_relation() const; - public: - void clear_relation(); + void clear_relation() ; const ::pg_query::RangeVar& relation() const; PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); + private: const ::pg_query::RangeVar& _internal_relation() const; ::pg_query::RangeVar* _internal_mutable_relation(); - public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + public: // .pg_query.PartitionBoundSpec partbound = 4 [json_name = "partbound"]; bool has_partbound() const; - private: - bool _internal_has_partbound() const; - public: - void clear_partbound(); + void clear_partbound() ; const ::pg_query::PartitionBoundSpec& partbound() const; PROTOBUF_NODISCARD ::pg_query::PartitionBoundSpec* release_partbound(); ::pg_query::PartitionBoundSpec* mutable_partbound(); - void set_allocated_partbound(::pg_query::PartitionBoundSpec* partbound); + void set_allocated_partbound(::pg_query::PartitionBoundSpec* value); + void unsafe_arena_set_allocated_partbound(::pg_query::PartitionBoundSpec* value); + ::pg_query::PartitionBoundSpec* unsafe_arena_release_partbound(); + private: const ::pg_query::PartitionBoundSpec& _internal_partbound() const; ::pg_query::PartitionBoundSpec* _internal_mutable_partbound(); - public: - void unsafe_arena_set_allocated_partbound( - ::pg_query::PartitionBoundSpec* partbound); - ::pg_query::PartitionBoundSpec* unsafe_arena_release_partbound(); + public: // .pg_query.PartitionSpec partspec = 5 [json_name = "partspec"]; bool has_partspec() const; - private: - bool _internal_has_partspec() const; - public: - void clear_partspec(); + void clear_partspec() ; const ::pg_query::PartitionSpec& partspec() const; PROTOBUF_NODISCARD ::pg_query::PartitionSpec* release_partspec(); ::pg_query::PartitionSpec* mutable_partspec(); - void set_allocated_partspec(::pg_query::PartitionSpec* partspec); + void set_allocated_partspec(::pg_query::PartitionSpec* value); + void unsafe_arena_set_allocated_partspec(::pg_query::PartitionSpec* value); + ::pg_query::PartitionSpec* unsafe_arena_release_partspec(); + private: const ::pg_query::PartitionSpec& _internal_partspec() const; ::pg_query::PartitionSpec* _internal_mutable_partspec(); - public: - void unsafe_arena_set_allocated_partspec( - ::pg_query::PartitionSpec* partspec); - ::pg_query::PartitionSpec* unsafe_arena_release_partspec(); + public: // .pg_query.TypeName of_typename = 6 [json_name = "ofTypename"]; bool has_of_typename() const; - private: - bool _internal_has_of_typename() const; - public: - void clear_of_typename(); + void clear_of_typename() ; const ::pg_query::TypeName& of_typename() const; PROTOBUF_NODISCARD ::pg_query::TypeName* release_of_typename(); ::pg_query::TypeName* mutable_of_typename(); - void set_allocated_of_typename(::pg_query::TypeName* of_typename); + void set_allocated_of_typename(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_of_typename(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_of_typename(); + private: const ::pg_query::TypeName& _internal_of_typename() const; ::pg_query::TypeName* _internal_mutable_of_typename(); - public: - void unsafe_arena_set_allocated_of_typename( - ::pg_query::TypeName* of_typename); - ::pg_query::TypeName* unsafe_arena_release_of_typename(); + public: // .pg_query.OnCommitAction oncommit = 9 [json_name = "oncommit"]; - void clear_oncommit(); + void clear_oncommit() ; ::pg_query::OnCommitAction oncommit() const; void set_oncommit(::pg_query::OnCommitAction value); + private: ::pg_query::OnCommitAction _internal_oncommit() const; void _internal_set_oncommit(::pg_query::OnCommitAction value); - public: + public: // bool if_not_exists = 12 [json_name = "if_not_exists"]; - void clear_if_not_exists(); + void clear_if_not_exists() ; bool if_not_exists() const; void set_if_not_exists(bool value); + private: bool _internal_if_not_exists() const; void _internal_set_if_not_exists(bool value); - public: + public: // @@protoc_insertion_point(class_scope:pg_query.CreateStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 12, 8, + 63, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > table_elts_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > inh_relations_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > constraints_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr tablespacename_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr access_method_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > table_elts_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > inh_relations_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > constraints_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr tablespacename_; + ::google::protobuf::internal::ArenaStringPtr access_method_; ::pg_query::RangeVar* relation_; ::pg_query::PartitionBoundSpec* partbound_; ::pg_query::PartitionSpec* partspec_; ::pg_query::TypeName* of_typename_; int oncommit_; bool if_not_exists_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DefineStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DefineStmt) */ { +class CreateSubscriptionStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateSubscriptionStmt) */ { public: - inline DefineStmt() : DefineStmt(nullptr) {} - ~DefineStmt() override; - explicit PROTOBUF_CONSTEXPR DefineStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateSubscriptionStmt() : CreateSubscriptionStmt(nullptr) {} + ~CreateSubscriptionStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateSubscriptionStmt(::google::protobuf::internal::ConstantInitialized); - DefineStmt(const DefineStmt& from); - DefineStmt(DefineStmt&& from) noexcept - : DefineStmt() { + inline CreateSubscriptionStmt(const CreateSubscriptionStmt& from) + : CreateSubscriptionStmt(nullptr, from) {} + CreateSubscriptionStmt(CreateSubscriptionStmt&& from) noexcept + : CreateSubscriptionStmt() { *this = ::std::move(from); } - inline DefineStmt& operator=(const DefineStmt& from) { + inline CreateSubscriptionStmt& operator=(const CreateSubscriptionStmt& from) { CopyFrom(from); return *this; } - inline DefineStmt& operator=(DefineStmt&& from) noexcept { + inline CreateSubscriptionStmt& operator=(CreateSubscriptionStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -28179,238 +32534,707 @@ class DefineStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DefineStmt& default_instance() { + static const CreateSubscriptionStmt& default_instance() { return *internal_default_instance(); } - static inline const DefineStmt* internal_default_instance() { - return reinterpret_cast( - &_DefineStmt_default_instance_); + static inline const CreateSubscriptionStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateSubscriptionStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 83; + 252; - friend void swap(DefineStmt& a, DefineStmt& b) { + friend void swap(CreateSubscriptionStmt& a, CreateSubscriptionStmt& b) { a.Swap(&b); } - inline void Swap(DefineStmt* other) { + inline void Swap(CreateSubscriptionStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DefineStmt* other) { + void UnsafeArenaSwap(CreateSubscriptionStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DefineStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateSubscriptionStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DefineStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DefineStmt& from) { - DefineStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateSubscriptionStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateSubscriptionStmt& from) { + CreateSubscriptionStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DefineStmt* other); + void InternalSwap(CreateSubscriptionStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DefineStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateSubscriptionStmt"; } protected: - explicit DefineStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateSubscriptionStmt(::google::protobuf::Arena* arena); + CreateSubscriptionStmt(::google::protobuf::Arena* arena, const CreateSubscriptionStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kDefnamesFieldNumber = 3, - kArgsFieldNumber = 4, - kDefinitionFieldNumber = 5, - kKindFieldNumber = 1, - kOldstyleFieldNumber = 2, - kIfNotExistsFieldNumber = 6, - kReplaceFieldNumber = 7, + kPublicationFieldNumber = 3, + kOptionsFieldNumber = 4, + kSubnameFieldNumber = 1, + kConninfoFieldNumber = 2, }; - // repeated .pg_query.Node defnames = 3 [json_name = "defnames"]; - int defnames_size() const; + // repeated .pg_query.Node publication = 3 [json_name = "publication"]; + int publication_size() const; private: - int _internal_defnames_size() const; + int _internal_publication_size() const; + public: - void clear_defnames(); - ::pg_query::Node* mutable_defnames(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_defnames(); + void clear_publication() ; + ::pg_query::Node* mutable_publication(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_publication(); private: - const ::pg_query::Node& _internal_defnames(int index) const; - ::pg_query::Node* _internal_add_defnames(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_publication() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_publication(); public: - const ::pg_query::Node& defnames(int index) const; - ::pg_query::Node* add_defnames(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - defnames() const; + const ::pg_query::Node& publication(int index) const; + ::pg_query::Node* add_publication(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + publication() const; + // repeated .pg_query.Node options = 4 [json_name = "options"]; + int options_size() const; + private: + int _internal_options_size() const; - // repeated .pg_query.Node args = 4 [json_name = "args"]; - int args_size() const; + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - int _internal_args_size() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string subname = 1 [json_name = "subname"]; + void clear_subname() ; + const std::string& subname() const; + template + void set_subname(Arg_&& arg, Args_... args); + std::string* mutable_subname(); + PROTOBUF_NODISCARD std::string* release_subname(); + void set_allocated_subname(std::string* value); + private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); + const std::string& _internal_subname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_subname( + const std::string& value); + std::string* _internal_mutable_subname(); + public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + // string conninfo = 2 [json_name = "conninfo"]; + void clear_conninfo() ; + const std::string& conninfo() const; + template + void set_conninfo(Arg_&& arg, Args_... args); + std::string* mutable_conninfo(); + PROTOBUF_NODISCARD std::string* release_conninfo(); + void set_allocated_conninfo(std::string* value); - // repeated .pg_query.Node definition = 5 [json_name = "definition"]; - int definition_size() const; private: - int _internal_definition_size() const; + const std::string& _internal_conninfo() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_conninfo( + const std::string& value); + std::string* _internal_mutable_conninfo(); + public: - void clear_definition(); - ::pg_query::Node* mutable_definition(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_definition(); + // @@protoc_insertion_point(class_scope:pg_query.CreateSubscriptionStmt) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 55, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > publication_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr subname_; + ::google::protobuf::internal::ArenaStringPtr conninfo_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class CreateTableAsStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateTableAsStmt) */ { + public: + inline CreateTableAsStmt() : CreateTableAsStmt(nullptr) {} + ~CreateTableAsStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateTableAsStmt(::google::protobuf::internal::ConstantInitialized); + + inline CreateTableAsStmt(const CreateTableAsStmt& from) + : CreateTableAsStmt(nullptr, from) {} + CreateTableAsStmt(CreateTableAsStmt&& from) noexcept + : CreateTableAsStmt() { + *this = ::std::move(from); + } + + inline CreateTableAsStmt& operator=(const CreateTableAsStmt& from) { + CopyFrom(from); + return *this; + } + inline CreateTableAsStmt& operator=(CreateTableAsStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CreateTableAsStmt& default_instance() { + return *internal_default_instance(); + } + static inline const CreateTableAsStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateTableAsStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 231; + + friend void swap(CreateTableAsStmt& a, CreateTableAsStmt& b) { + a.Swap(&b); + } + inline void Swap(CreateTableAsStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CreateTableAsStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + CreateTableAsStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateTableAsStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateTableAsStmt& from) { + CreateTableAsStmt::MergeImpl(*this, from); + } private: - const ::pg_query::Node& _internal_definition(int index) const; - ::pg_query::Node* _internal_add_definition(); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - const ::pg_query::Node& definition(int index) const; - ::pg_query::Node* add_definition(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - definition() const; + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } - // .pg_query.ObjectType kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::ObjectType kind() const; - void set_kind(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_kind() const; - void _internal_set_kind(::pg_query::ObjectType value); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(CreateTableAsStmt* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateTableAsStmt"; + } + protected: + explicit CreateTableAsStmt(::google::protobuf::Arena* arena); + CreateTableAsStmt(::google::protobuf::Arena* arena, const CreateTableAsStmt& from); public: - // bool oldstyle = 2 [json_name = "oldstyle"]; - void clear_oldstyle(); - bool oldstyle() const; - void set_oldstyle(bool value); + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kQueryFieldNumber = 1, + kIntoFieldNumber = 2, + kObjtypeFieldNumber = 3, + kIsSelectIntoFieldNumber = 4, + kIfNotExistsFieldNumber = 5, + }; + // .pg_query.Node query = 1 [json_name = "query"]; + bool has_query() const; + void clear_query() ; + const ::pg_query::Node& query() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_query(); + ::pg_query::Node* mutable_query(); + void set_allocated_query(::pg_query::Node* value); + void unsafe_arena_set_allocated_query(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_query(); + private: - bool _internal_oldstyle() const; - void _internal_set_oldstyle(bool value); + const ::pg_query::Node& _internal_query() const; + ::pg_query::Node* _internal_mutable_query(); + + public: + // .pg_query.IntoClause into = 2 [json_name = "into"]; + bool has_into() const; + void clear_into() ; + const ::pg_query::IntoClause& into() const; + PROTOBUF_NODISCARD ::pg_query::IntoClause* release_into(); + ::pg_query::IntoClause* mutable_into(); + void set_allocated_into(::pg_query::IntoClause* value); + void unsafe_arena_set_allocated_into(::pg_query::IntoClause* value); + ::pg_query::IntoClause* unsafe_arena_release_into(); + + private: + const ::pg_query::IntoClause& _internal_into() const; + ::pg_query::IntoClause* _internal_mutable_into(); + public: + // .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; + void clear_objtype() ; + ::pg_query::ObjectType objtype() const; + void set_objtype(::pg_query::ObjectType value); - // bool if_not_exists = 6 [json_name = "if_not_exists"]; - void clear_if_not_exists(); + private: + ::pg_query::ObjectType _internal_objtype() const; + void _internal_set_objtype(::pg_query::ObjectType value); + + public: + // bool is_select_into = 4 [json_name = "is_select_into"]; + void clear_is_select_into() ; + bool is_select_into() const; + void set_is_select_into(bool value); + + private: + bool _internal_is_select_into() const; + void _internal_set_is_select_into(bool value); + + public: + // bool if_not_exists = 5 [json_name = "if_not_exists"]; + void clear_if_not_exists() ; bool if_not_exists() const; void set_if_not_exists(bool value); + private: bool _internal_if_not_exists() const; void _internal_set_if_not_exists(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateTableAsStmt) + private: + class _Internal; + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* query_; + ::pg_query::IntoClause* into_; + int objtype_; + bool is_select_into_; + bool if_not_exists_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; +};// ------------------------------------------------------------------- + +class CreateTableSpaceStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateTableSpaceStmt) */ { + public: + inline CreateTableSpaceStmt() : CreateTableSpaceStmt(nullptr) {} + ~CreateTableSpaceStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateTableSpaceStmt(::google::protobuf::internal::ConstantInitialized); + + inline CreateTableSpaceStmt(const CreateTableSpaceStmt& from) + : CreateTableSpaceStmt(nullptr, from) {} + CreateTableSpaceStmt(CreateTableSpaceStmt&& from) noexcept + : CreateTableSpaceStmt() { + *this = ::std::move(from); + } + + inline CreateTableSpaceStmt& operator=(const CreateTableSpaceStmt& from) { + CopyFrom(from); + return *this; + } + inline CreateTableSpaceStmt& operator=(CreateTableSpaceStmt&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CreateTableSpaceStmt& default_instance() { + return *internal_default_instance(); + } + static inline const CreateTableSpaceStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateTableSpaceStmt_default_instance_); + } + static constexpr int kIndexInFileMessages = + 151; + + friend void swap(CreateTableSpaceStmt& a, CreateTableSpaceStmt& b) { + a.Swap(&b); + } + inline void Swap(CreateTableSpaceStmt* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CreateTableSpaceStmt* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + CreateTableSpaceStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateTableSpaceStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateTableSpaceStmt& from) { + CreateTableSpaceStmt::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(CreateTableSpaceStmt* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateTableSpaceStmt"; + } + protected: + explicit CreateTableSpaceStmt(::google::protobuf::Arena* arena); + CreateTableSpaceStmt(::google::protobuf::Arena* arena, const CreateTableSpaceStmt& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kOptionsFieldNumber = 4, + kTablespacenameFieldNumber = 1, + kLocationFieldNumber = 3, + kOwnerFieldNumber = 2, + }; + // repeated .pg_query.Node options = 4 [json_name = "options"]; + int options_size() const; + private: + int _internal_options_size() const; + + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); + public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string tablespacename = 1 [json_name = "tablespacename"]; + void clear_tablespacename() ; + const std::string& tablespacename() const; + template + void set_tablespacename(Arg_&& arg, Args_... args); + std::string* mutable_tablespacename(); + PROTOBUF_NODISCARD std::string* release_tablespacename(); + void set_allocated_tablespacename(std::string* value); + + private: + const std::string& _internal_tablespacename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_tablespacename( + const std::string& value); + std::string* _internal_mutable_tablespacename(); + + public: + // string location = 3 [json_name = "location"]; + void clear_location() ; + const std::string& location() const; + template + void set_location(Arg_&& arg, Args_... args); + std::string* mutable_location(); + PROTOBUF_NODISCARD std::string* release_location(); + void set_allocated_location(std::string* value); + + private: + const std::string& _internal_location() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_location( + const std::string& value); + std::string* _internal_mutable_location(); + public: + // .pg_query.RoleSpec owner = 2 [json_name = "owner"]; + bool has_owner() const; + void clear_owner() ; + const ::pg_query::RoleSpec& owner() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_owner(); + ::pg_query::RoleSpec* mutable_owner(); + void set_allocated_owner(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_owner(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_owner(); - // bool replace = 7 [json_name = "replace"]; - void clear_replace(); - bool replace() const; - void set_replace(bool value); private: - bool _internal_replace() const; - void _internal_set_replace(bool value); - public: + const ::pg_query::RoleSpec& _internal_owner() const; + ::pg_query::RoleSpec* _internal_mutable_owner(); - // @@protoc_insertion_point(class_scope:pg_query.DefineStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateTableSpaceStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 60, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > defnames_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > definition_; - int kind_; - bool oldstyle_; - bool if_not_exists_; - bool replace_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr tablespacename_; + ::google::protobuf::internal::ArenaStringPtr location_; + ::pg_query::RoleSpec* owner_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DropStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DropStmt) */ { +class CreateTransformStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateTransformStmt) */ { public: - inline DropStmt() : DropStmt(nullptr) {} - ~DropStmt() override; - explicit PROTOBUF_CONSTEXPR DropStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateTransformStmt() : CreateTransformStmt(nullptr) {} + ~CreateTransformStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateTransformStmt(::google::protobuf::internal::ConstantInitialized); - DropStmt(const DropStmt& from); - DropStmt(DropStmt&& from) noexcept - : DropStmt() { + inline CreateTransformStmt(const CreateTransformStmt& from) + : CreateTransformStmt(nullptr, from) {} + CreateTransformStmt(CreateTransformStmt&& from) noexcept + : CreateTransformStmt() { *this = ::std::move(from); } - inline DropStmt& operator=(const DropStmt& from) { + inline CreateTransformStmt& operator=(const CreateTransformStmt& from) { CopyFrom(from); return *this; } - inline DropStmt& operator=(DropStmt&& from) noexcept { + inline CreateTransformStmt& operator=(CreateTransformStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -28420,198 +33244,242 @@ class DropStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DropStmt& default_instance() { + static const CreateTransformStmt& default_instance() { return *internal_default_instance(); } - static inline const DropStmt* internal_default_instance() { - return reinterpret_cast( - &_DropStmt_default_instance_); + static inline const CreateTransformStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateTransformStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 84; + 240; - friend void swap(DropStmt& a, DropStmt& b) { + friend void swap(CreateTransformStmt& a, CreateTransformStmt& b) { a.Swap(&b); } - inline void Swap(DropStmt* other) { + inline void Swap(CreateTransformStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DropStmt* other) { + void UnsafeArenaSwap(CreateTransformStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DropStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateTransformStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DropStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DropStmt& from) { - DropStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateTransformStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateTransformStmt& from) { + CreateTransformStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DropStmt* other); + void InternalSwap(CreateTransformStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DropStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateTransformStmt"; } protected: - explicit DropStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateTransformStmt(::google::protobuf::Arena* arena); + CreateTransformStmt(::google::protobuf::Arena* arena, const CreateTransformStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kObjectsFieldNumber = 1, - kRemoveTypeFieldNumber = 2, - kBehaviorFieldNumber = 3, - kMissingOkFieldNumber = 4, - kConcurrentFieldNumber = 5, + kLangFieldNumber = 3, + kTypeNameFieldNumber = 2, + kFromsqlFieldNumber = 4, + kTosqlFieldNumber = 5, + kReplaceFieldNumber = 1, }; - // repeated .pg_query.Node objects = 1 [json_name = "objects"]; - int objects_size() const; - private: - int _internal_objects_size() const; - public: - void clear_objects(); - ::pg_query::Node* mutable_objects(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_objects(); + // string lang = 3 [json_name = "lang"]; + void clear_lang() ; + const std::string& lang() const; + template + void set_lang(Arg_&& arg, Args_... args); + std::string* mutable_lang(); + PROTOBUF_NODISCARD std::string* release_lang(); + void set_allocated_lang(std::string* value); + private: - const ::pg_query::Node& _internal_objects(int index) const; - ::pg_query::Node* _internal_add_objects(); + const std::string& _internal_lang() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_lang( + const std::string& value); + std::string* _internal_mutable_lang(); + public: - const ::pg_query::Node& objects(int index) const; - ::pg_query::Node* add_objects(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - objects() const; + // .pg_query.TypeName type_name = 2 [json_name = "type_name"]; + bool has_type_name() const; + void clear_type_name() ; + const ::pg_query::TypeName& type_name() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); + ::pg_query::TypeName* mutable_type_name(); + void set_allocated_type_name(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_type_name(); - // .pg_query.ObjectType remove_type = 2 [json_name = "removeType"]; - void clear_remove_type(); - ::pg_query::ObjectType remove_type() const; - void set_remove_type(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_remove_type() const; - void _internal_set_remove_type(::pg_query::ObjectType value); + const ::pg_query::TypeName& _internal_type_name() const; + ::pg_query::TypeName* _internal_mutable_type_name(); + public: + // .pg_query.ObjectWithArgs fromsql = 4 [json_name = "fromsql"]; + bool has_fromsql() const; + void clear_fromsql() ; + const ::pg_query::ObjectWithArgs& fromsql() const; + PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_fromsql(); + ::pg_query::ObjectWithArgs* mutable_fromsql(); + void set_allocated_fromsql(::pg_query::ObjectWithArgs* value); + void unsafe_arena_set_allocated_fromsql(::pg_query::ObjectWithArgs* value); + ::pg_query::ObjectWithArgs* unsafe_arena_release_fromsql(); - // .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; - void clear_behavior(); - ::pg_query::DropBehavior behavior() const; - void set_behavior(::pg_query::DropBehavior value); private: - ::pg_query::DropBehavior _internal_behavior() const; - void _internal_set_behavior(::pg_query::DropBehavior value); + const ::pg_query::ObjectWithArgs& _internal_fromsql() const; + ::pg_query::ObjectWithArgs* _internal_mutable_fromsql(); + public: + // .pg_query.ObjectWithArgs tosql = 5 [json_name = "tosql"]; + bool has_tosql() const; + void clear_tosql() ; + const ::pg_query::ObjectWithArgs& tosql() const; + PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_tosql(); + ::pg_query::ObjectWithArgs* mutable_tosql(); + void set_allocated_tosql(::pg_query::ObjectWithArgs* value); + void unsafe_arena_set_allocated_tosql(::pg_query::ObjectWithArgs* value); + ::pg_query::ObjectWithArgs* unsafe_arena_release_tosql(); - // bool missing_ok = 4 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); + const ::pg_query::ObjectWithArgs& _internal_tosql() const; + ::pg_query::ObjectWithArgs* _internal_mutable_tosql(); + public: + // bool replace = 1 [json_name = "replace"]; + void clear_replace() ; + bool replace() const; + void set_replace(bool value); - // bool concurrent = 5 [json_name = "concurrent"]; - void clear_concurrent(); - bool concurrent() const; - void set_concurrent(bool value); private: - bool _internal_concurrent() const; - void _internal_set_concurrent(bool value); - public: + bool _internal_replace() const; + void _internal_set_replace(bool value); - // @@protoc_insertion_point(class_scope:pg_query.DropStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateTransformStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 3, + 41, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > objects_; - int remove_type_; - int behavior_; - bool missing_ok_; - bool concurrent_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr lang_; + ::pg_query::TypeName* type_name_; + ::pg_query::ObjectWithArgs* fromsql_; + ::pg_query::ObjectWithArgs* tosql_; + bool replace_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class TruncateStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.TruncateStmt) */ { +class CreateTrigStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateTrigStmt) */ { public: - inline TruncateStmt() : TruncateStmt(nullptr) {} - ~TruncateStmt() override; - explicit PROTOBUF_CONSTEXPR TruncateStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateTrigStmt() : CreateTrigStmt(nullptr) {} + ~CreateTrigStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateTrigStmt(::google::protobuf::internal::ConstantInitialized); - TruncateStmt(const TruncateStmt& from); - TruncateStmt(TruncateStmt&& from) noexcept - : TruncateStmt() { + inline CreateTrigStmt(const CreateTrigStmt& from) + : CreateTrigStmt(nullptr, from) {} + CreateTrigStmt(CreateTrigStmt&& from) noexcept + : CreateTrigStmt() { *this = ::std::move(from); } - inline TruncateStmt& operator=(const TruncateStmt& from) { + inline CreateTrigStmt& operator=(const CreateTrigStmt& from) { CopyFrom(from); return *this; } - inline TruncateStmt& operator=(TruncateStmt&& from) noexcept { + inline CreateTrigStmt& operator=(CreateTrigStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -28621,176 +33489,394 @@ class TruncateStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const TruncateStmt& default_instance() { + static const CreateTrigStmt& default_instance() { return *internal_default_instance(); } - static inline const TruncateStmt* internal_default_instance() { - return reinterpret_cast( - &_TruncateStmt_default_instance_); + static inline const CreateTrigStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateTrigStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 85; + 170; - friend void swap(TruncateStmt& a, TruncateStmt& b) { + friend void swap(CreateTrigStmt& a, CreateTrigStmt& b) { a.Swap(&b); } - inline void Swap(TruncateStmt* other) { + inline void Swap(CreateTrigStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(TruncateStmt* other) { + void UnsafeArenaSwap(CreateTrigStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - TruncateStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateTrigStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const TruncateStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const TruncateStmt& from) { - TruncateStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateTrigStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateTrigStmt& from) { + CreateTrigStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(TruncateStmt* other); + void InternalSwap(CreateTrigStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.TruncateStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateTrigStmt"; } protected: - explicit TruncateStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateTrigStmt(::google::protobuf::Arena* arena); + CreateTrigStmt(::google::protobuf::Arena* arena, const CreateTrigStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRelationsFieldNumber = 1, - kRestartSeqsFieldNumber = 2, - kBehaviorFieldNumber = 3, + kFuncnameFieldNumber = 5, + kArgsFieldNumber = 6, + kColumnsFieldNumber = 10, + kTransitionRelsFieldNumber = 12, + kTrignameFieldNumber = 3, + kRelationFieldNumber = 4, + kWhenClauseFieldNumber = 11, + kConstrrelFieldNumber = 15, + kReplaceFieldNumber = 1, + kIsconstraintFieldNumber = 2, + kRowFieldNumber = 7, + kDeferrableFieldNumber = 13, + kTimingFieldNumber = 8, + kEventsFieldNumber = 9, + kInitdeferredFieldNumber = 14, }; - // repeated .pg_query.Node relations = 1 [json_name = "relations"]; - int relations_size() const; + // repeated .pg_query.Node funcname = 5 [json_name = "funcname"]; + int funcname_size() const; private: - int _internal_relations_size() const; + int _internal_funcname_size() const; + public: - void clear_relations(); - ::pg_query::Node* mutable_relations(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_relations(); + void clear_funcname() ; + ::pg_query::Node* mutable_funcname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_funcname(); private: - const ::pg_query::Node& _internal_relations(int index) const; - ::pg_query::Node* _internal_add_relations(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_funcname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_funcname(); public: - const ::pg_query::Node& relations(int index) const; - ::pg_query::Node* add_relations(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - relations() const; + const ::pg_query::Node& funcname(int index) const; + ::pg_query::Node* add_funcname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + funcname() const; + // repeated .pg_query.Node args = 6 [json_name = "args"]; + int args_size() const; + private: + int _internal_args_size() const; - // bool restart_seqs = 2 [json_name = "restart_seqs"]; - void clear_restart_seqs(); - bool restart_seqs() const; - void set_restart_seqs(bool value); + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - bool _internal_restart_seqs() const; - void _internal_set_restart_seqs(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // repeated .pg_query.Node columns = 10 [json_name = "columns"]; + int columns_size() const; + private: + int _internal_columns_size() const; - // .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; - void clear_behavior(); - ::pg_query::DropBehavior behavior() const; - void set_behavior(::pg_query::DropBehavior value); + public: + void clear_columns() ; + ::pg_query::Node* mutable_columns(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_columns(); private: - ::pg_query::DropBehavior _internal_behavior() const; - void _internal_set_behavior(::pg_query::DropBehavior value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_columns() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_columns(); public: + const ::pg_query::Node& columns(int index) const; + ::pg_query::Node* add_columns(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + columns() const; + // repeated .pg_query.Node transition_rels = 12 [json_name = "transitionRels"]; + int transition_rels_size() const; + private: + int _internal_transition_rels_size() const; - // @@protoc_insertion_point(class_scope:pg_query.TruncateStmt) + public: + void clear_transition_rels() ; + ::pg_query::Node* mutable_transition_rels(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_transition_rels(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_transition_rels() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_transition_rels(); + public: + const ::pg_query::Node& transition_rels(int index) const; + ::pg_query::Node* add_transition_rels(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + transition_rels() const; + // string trigname = 3 [json_name = "trigname"]; + void clear_trigname() ; + const std::string& trigname() const; + template + void set_trigname(Arg_&& arg, Args_... args); + std::string* mutable_trigname(); + PROTOBUF_NODISCARD std::string* release_trigname(); + void set_allocated_trigname(std::string* value); + + private: + const std::string& _internal_trigname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_trigname( + const std::string& value); + std::string* _internal_mutable_trigname(); + + public: + // .pg_query.RangeVar relation = 4 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); + + private: + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); + + public: + // .pg_query.Node when_clause = 11 [json_name = "whenClause"]; + bool has_when_clause() const; + void clear_when_clause() ; + const ::pg_query::Node& when_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_when_clause(); + ::pg_query::Node* mutable_when_clause(); + void set_allocated_when_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_when_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_when_clause(); + + private: + const ::pg_query::Node& _internal_when_clause() const; + ::pg_query::Node* _internal_mutable_when_clause(); + + public: + // .pg_query.RangeVar constrrel = 15 [json_name = "constrrel"]; + bool has_constrrel() const; + void clear_constrrel() ; + const ::pg_query::RangeVar& constrrel() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_constrrel(); + ::pg_query::RangeVar* mutable_constrrel(); + void set_allocated_constrrel(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_constrrel(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_constrrel(); + + private: + const ::pg_query::RangeVar& _internal_constrrel() const; + ::pg_query::RangeVar* _internal_mutable_constrrel(); + + public: + // bool replace = 1 [json_name = "replace"]; + void clear_replace() ; + bool replace() const; + void set_replace(bool value); + + private: + bool _internal_replace() const; + void _internal_set_replace(bool value); + + public: + // bool isconstraint = 2 [json_name = "isconstraint"]; + void clear_isconstraint() ; + bool isconstraint() const; + void set_isconstraint(bool value); + + private: + bool _internal_isconstraint() const; + void _internal_set_isconstraint(bool value); + + public: + // bool row = 7 [json_name = "row"]; + void clear_row() ; + bool row() const; + void set_row(bool value); + + private: + bool _internal_row() const; + void _internal_set_row(bool value); + + public: + // bool deferrable = 13 [json_name = "deferrable"]; + void clear_deferrable() ; + bool deferrable() const; + void set_deferrable(bool value); + + private: + bool _internal_deferrable() const; + void _internal_set_deferrable(bool value); + + public: + // int32 timing = 8 [json_name = "timing"]; + void clear_timing() ; + ::int32_t timing() const; + void set_timing(::int32_t value); + + private: + ::int32_t _internal_timing() const; + void _internal_set_timing(::int32_t value); + + public: + // int32 events = 9 [json_name = "events"]; + void clear_events() ; + ::int32_t events() const; + void set_events(::int32_t value); + + private: + ::int32_t _internal_events() const; + void _internal_set_events(::int32_t value); + + public: + // bool initdeferred = 14 [json_name = "initdeferred"]; + void clear_initdeferred() ; + bool initdeferred() const; + void set_initdeferred(bool value); + + private: + bool _internal_initdeferred() const; + void _internal_set_initdeferred(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateTrigStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 15, 7, + 48, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > relations_; - bool restart_seqs_; - int behavior_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > funcname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > columns_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > transition_rels_; + ::google::protobuf::internal::ArenaStringPtr trigname_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* when_clause_; + ::pg_query::RangeVar* constrrel_; + bool replace_; + bool isconstraint_; + bool row_; + bool deferrable_; + ::int32_t timing_; + ::int32_t events_; + bool initdeferred_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CommentStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CommentStmt) */ { +class CreateUserMappingStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateUserMappingStmt) */ { public: - inline CommentStmt() : CommentStmt(nullptr) {} - ~CommentStmt() override; - explicit PROTOBUF_CONSTEXPR CommentStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreateUserMappingStmt() : CreateUserMappingStmt(nullptr) {} + ~CreateUserMappingStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreateUserMappingStmt(::google::protobuf::internal::ConstantInitialized); - CommentStmt(const CommentStmt& from); - CommentStmt(CommentStmt&& from) noexcept - : CommentStmt() { + inline CreateUserMappingStmt(const CreateUserMappingStmt& from) + : CreateUserMappingStmt(nullptr, from) {} + CreateUserMappingStmt(CreateUserMappingStmt&& from) noexcept + : CreateUserMappingStmt() { *this = ::std::move(from); } - inline CommentStmt& operator=(const CommentStmt& from) { + inline CreateUserMappingStmt& operator=(const CreateUserMappingStmt& from) { CopyFrom(from); return *this; } - inline CommentStmt& operator=(CommentStmt&& from) noexcept { + inline CreateUserMappingStmt& operator=(CreateUserMappingStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -28800,181 +33886,228 @@ class CommentStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CommentStmt& default_instance() { + static const CreateUserMappingStmt& default_instance() { return *internal_default_instance(); } - static inline const CommentStmt* internal_default_instance() { - return reinterpret_cast( - &_CommentStmt_default_instance_); + static inline const CreateUserMappingStmt* internal_default_instance() { + return reinterpret_cast( + &_CreateUserMappingStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 86; + 163; - friend void swap(CommentStmt& a, CommentStmt& b) { + friend void swap(CreateUserMappingStmt& a, CreateUserMappingStmt& b) { a.Swap(&b); } - inline void Swap(CommentStmt* other) { + inline void Swap(CreateUserMappingStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CommentStmt* other) { + void UnsafeArenaSwap(CreateUserMappingStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CommentStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreateUserMappingStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CommentStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CommentStmt& from) { - CommentStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreateUserMappingStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreateUserMappingStmt& from) { + CreateUserMappingStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CommentStmt* other); + void InternalSwap(CreateUserMappingStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CommentStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreateUserMappingStmt"; } protected: - explicit CommentStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreateUserMappingStmt(::google::protobuf::Arena* arena); + CreateUserMappingStmt(::google::protobuf::Arena* arena, const CreateUserMappingStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCommentFieldNumber = 3, - kObjectFieldNumber = 2, - kObjtypeFieldNumber = 1, + kOptionsFieldNumber = 4, + kServernameFieldNumber = 2, + kUserFieldNumber = 1, + kIfNotExistsFieldNumber = 3, }; - // string comment = 3 [json_name = "comment"]; - void clear_comment(); - const std::string& comment() const; - template - void set_comment(ArgT0&& arg0, ArgT... args); - std::string* mutable_comment(); - PROTOBUF_NODISCARD std::string* release_comment(); - void set_allocated_comment(std::string* comment); + // repeated .pg_query.Node options = 4 [json_name = "options"]; + int options_size() const; private: - const std::string& _internal_comment() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_comment(const std::string& value); - std::string* _internal_mutable_comment(); - public: + int _internal_options_size() const; - // .pg_query.Node object = 2 [json_name = "object"]; - bool has_object() const; + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - bool _internal_has_object() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void clear_object(); - const ::pg_query::Node& object() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_object(); - ::pg_query::Node* mutable_object(); - void set_allocated_object(::pg_query::Node* object); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string servername = 2 [json_name = "servername"]; + void clear_servername() ; + const std::string& servername() const; + template + void set_servername(Arg_&& arg, Args_... args); + std::string* mutable_servername(); + PROTOBUF_NODISCARD std::string* release_servername(); + void set_allocated_servername(std::string* value); + private: - const ::pg_query::Node& _internal_object() const; - ::pg_query::Node* _internal_mutable_object(); + const std::string& _internal_servername() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername( + const std::string& value); + std::string* _internal_mutable_servername(); + public: - void unsafe_arena_set_allocated_object( - ::pg_query::Node* object); - ::pg_query::Node* unsafe_arena_release_object(); + // .pg_query.RoleSpec user = 1 [json_name = "user"]; + bool has_user() const; + void clear_user() ; + const ::pg_query::RoleSpec& user() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_user(); + ::pg_query::RoleSpec* mutable_user(); + void set_allocated_user(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_user(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_user(); - // .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; - void clear_objtype(); - ::pg_query::ObjectType objtype() const; - void set_objtype(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_objtype() const; - void _internal_set_objtype(::pg_query::ObjectType value); + const ::pg_query::RoleSpec& _internal_user() const; + ::pg_query::RoleSpec* _internal_mutable_user(); + public: + // bool if_not_exists = 3 [json_name = "if_not_exists"]; + void clear_if_not_exists() ; + bool if_not_exists() const; + void set_if_not_exists(bool value); - // @@protoc_insertion_point(class_scope:pg_query.CommentStmt) + private: + bool _internal_if_not_exists() const; + void _internal_set_if_not_exists(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.CreateUserMappingStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 49, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr comment_; - ::pg_query::Node* object_; - int objtype_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr servername_; + ::pg_query::RoleSpec* user_; + bool if_not_exists_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class FetchStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.FetchStmt) */ { +class CreatedbStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CreatedbStmt) */ { public: - inline FetchStmt() : FetchStmt(nullptr) {} - ~FetchStmt() override; - explicit PROTOBUF_CONSTEXPR FetchStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CreatedbStmt() : CreatedbStmt(nullptr) {} + ~CreatedbStmt() override; + template + explicit PROTOBUF_CONSTEXPR CreatedbStmt(::google::protobuf::internal::ConstantInitialized); - FetchStmt(const FetchStmt& from); - FetchStmt(FetchStmt&& from) noexcept - : FetchStmt() { + inline CreatedbStmt(const CreatedbStmt& from) + : CreatedbStmt(nullptr, from) {} + CreatedbStmt(CreatedbStmt&& from) noexcept + : CreatedbStmt() { *this = ::std::move(from); } - inline FetchStmt& operator=(const FetchStmt& from) { + inline CreatedbStmt& operator=(const CreatedbStmt& from) { CopyFrom(from); return *this; } - inline FetchStmt& operator=(FetchStmt&& from) noexcept { + inline CreatedbStmt& operator=(CreatedbStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -28984,183 +34117,198 @@ class FetchStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const FetchStmt& default_instance() { + static const CreatedbStmt& default_instance() { return *internal_default_instance(); } - static inline const FetchStmt* internal_default_instance() { - return reinterpret_cast( - &_FetchStmt_default_instance_); + static inline const CreatedbStmt* internal_default_instance() { + return reinterpret_cast( + &_CreatedbStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 87; + 221; - friend void swap(FetchStmt& a, FetchStmt& b) { + friend void swap(CreatedbStmt& a, CreatedbStmt& b) { a.Swap(&b); } - inline void Swap(FetchStmt* other) { + inline void Swap(CreatedbStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(FetchStmt* other) { + void UnsafeArenaSwap(CreatedbStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - FetchStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CreatedbStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FetchStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const FetchStmt& from) { - FetchStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CreatedbStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CreatedbStmt& from) { + CreatedbStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FetchStmt* other); + void InternalSwap(CreatedbStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.FetchStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CreatedbStmt"; } protected: - explicit FetchStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CreatedbStmt(::google::protobuf::Arena* arena); + CreatedbStmt(::google::protobuf::Arena* arena, const CreatedbStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kPortalnameFieldNumber = 3, - kHowManyFieldNumber = 2, - kDirectionFieldNumber = 1, - kIsmoveFieldNumber = 4, + kOptionsFieldNumber = 2, + kDbnameFieldNumber = 1, }; - // string portalname = 3 [json_name = "portalname"]; - void clear_portalname(); - const std::string& portalname() const; - template - void set_portalname(ArgT0&& arg0, ArgT... args); - std::string* mutable_portalname(); - PROTOBUF_NODISCARD std::string* release_portalname(); - void set_allocated_portalname(std::string* portalname); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const std::string& _internal_portalname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_portalname(const std::string& value); - std::string* _internal_mutable_portalname(); - public: + int _internal_options_size() const; - // int64 how_many = 2 [json_name = "howMany"]; - void clear_how_many(); - int64_t how_many() const; - void set_how_many(int64_t value); - private: - int64_t _internal_how_many() const; - void _internal_set_how_many(int64_t value); public: - - // .pg_query.FetchDirection direction = 1 [json_name = "direction"]; - void clear_direction(); - ::pg_query::FetchDirection direction() const; - void set_direction(::pg_query::FetchDirection value); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - ::pg_query::FetchDirection _internal_direction() const; - void _internal_set_direction(::pg_query::FetchDirection value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string dbname = 1 [json_name = "dbname"]; + void clear_dbname() ; + const std::string& dbname() const; + template + void set_dbname(Arg_&& arg, Args_... args); + std::string* mutable_dbname(); + PROTOBUF_NODISCARD std::string* release_dbname(); + void set_allocated_dbname(std::string* value); - // bool ismove = 4 [json_name = "ismove"]; - void clear_ismove(); - bool ismove() const; - void set_ismove(bool value); private: - bool _internal_ismove() const; - void _internal_set_ismove(bool value); - public: + const std::string& _internal_dbname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname( + const std::string& value); + std::string* _internal_mutable_dbname(); - // @@protoc_insertion_point(class_scope:pg_query.FetchStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.CreatedbStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 36, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr portalname_; - int64_t how_many_; - int direction_; - bool ismove_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr dbname_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class IndexStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.IndexStmt) */ { +class CurrentOfExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.CurrentOfExpr) */ { public: - inline IndexStmt() : IndexStmt(nullptr) {} - ~IndexStmt() override; - explicit PROTOBUF_CONSTEXPR IndexStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline CurrentOfExpr() : CurrentOfExpr(nullptr) {} + ~CurrentOfExpr() override; + template + explicit PROTOBUF_CONSTEXPR CurrentOfExpr(::google::protobuf::internal::ConstantInitialized); - IndexStmt(const IndexStmt& from); - IndexStmt(IndexStmt&& from) noexcept - : IndexStmt() { + inline CurrentOfExpr(const CurrentOfExpr& from) + : CurrentOfExpr(nullptr, from) {} + CurrentOfExpr(CurrentOfExpr&& from) noexcept + : CurrentOfExpr() { *this = ::std::move(from); } - inline IndexStmt& operator=(const IndexStmt& from) { + inline CurrentOfExpr& operator=(const CurrentOfExpr& from) { CopyFrom(from); return *this; } - inline IndexStmt& operator=(IndexStmt&& from) noexcept { + inline CurrentOfExpr& operator=(CurrentOfExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -29170,472 +34318,220 @@ class IndexStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const IndexStmt& default_instance() { + static const CurrentOfExpr& default_instance() { return *internal_default_instance(); } - static inline const IndexStmt* internal_default_instance() { - return reinterpret_cast( - &_IndexStmt_default_instance_); + static inline const CurrentOfExpr* internal_default_instance() { + return reinterpret_cast( + &_CurrentOfExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 88; + 59; - friend void swap(IndexStmt& a, IndexStmt& b) { + friend void swap(CurrentOfExpr& a, CurrentOfExpr& b) { a.Swap(&b); } - inline void Swap(IndexStmt* other) { + inline void Swap(CurrentOfExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(IndexStmt* other) { + void UnsafeArenaSwap(CurrentOfExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - IndexStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + CurrentOfExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const IndexStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const IndexStmt& from) { - IndexStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const CurrentOfExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const CurrentOfExpr& from) { + CurrentOfExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(IndexStmt* other); + void InternalSwap(CurrentOfExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.IndexStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.CurrentOfExpr"; } protected: - explicit IndexStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit CurrentOfExpr(::google::protobuf::Arena* arena); + CurrentOfExpr(::google::protobuf::Arena* arena, const CurrentOfExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kIndexParamsFieldNumber = 5, - kIndexIncludingParamsFieldNumber = 6, - kOptionsFieldNumber = 7, - kExcludeOpNamesFieldNumber = 9, - kIdxnameFieldNumber = 1, - kAccessMethodFieldNumber = 3, - kTableSpaceFieldNumber = 4, - kIdxcommentFieldNumber = 10, - kRelationFieldNumber = 2, - kWhereClauseFieldNumber = 8, - kIndexOidFieldNumber = 11, - kOldNodeFieldNumber = 12, - kOldCreateSubidFieldNumber = 13, - kOldFirstRelfilenodeSubidFieldNumber = 14, - kUniqueFieldNumber = 15, - kNullsNotDistinctFieldNumber = 16, - kPrimaryFieldNumber = 17, - kIsconstraintFieldNumber = 18, - kDeferrableFieldNumber = 19, - kInitdeferredFieldNumber = 20, - kTransformedFieldNumber = 21, - kConcurrentFieldNumber = 22, - kIfNotExistsFieldNumber = 23, - kResetDefaultTblspcFieldNumber = 24, + kCursorNameFieldNumber = 3, + kXprFieldNumber = 1, + kCvarnoFieldNumber = 2, + kCursorParamFieldNumber = 4, }; - // repeated .pg_query.Node index_params = 5 [json_name = "indexParams"]; - int index_params_size() const; - private: - int _internal_index_params_size() const; - public: - void clear_index_params(); - ::pg_query::Node* mutable_index_params(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_index_params(); - private: - const ::pg_query::Node& _internal_index_params(int index) const; - ::pg_query::Node* _internal_add_index_params(); - public: - const ::pg_query::Node& index_params(int index) const; - ::pg_query::Node* add_index_params(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - index_params() const; - - // repeated .pg_query.Node index_including_params = 6 [json_name = "indexIncludingParams"]; - int index_including_params_size() const; - private: - int _internal_index_including_params_size() const; - public: - void clear_index_including_params(); - ::pg_query::Node* mutable_index_including_params(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_index_including_params(); - private: - const ::pg_query::Node& _internal_index_including_params(int index) const; - ::pg_query::Node* _internal_add_index_including_params(); - public: - const ::pg_query::Node& index_including_params(int index) const; - ::pg_query::Node* add_index_including_params(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - index_including_params() const; - - // repeated .pg_query.Node options = 7 [json_name = "options"]; - int options_size() const; - private: - int _internal_options_size() const; - public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); - private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); - public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; - - // repeated .pg_query.Node exclude_op_names = 9 [json_name = "excludeOpNames"]; - int exclude_op_names_size() const; - private: - int _internal_exclude_op_names_size() const; - public: - void clear_exclude_op_names(); - ::pg_query::Node* mutable_exclude_op_names(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_exclude_op_names(); - private: - const ::pg_query::Node& _internal_exclude_op_names(int index) const; - ::pg_query::Node* _internal_add_exclude_op_names(); - public: - const ::pg_query::Node& exclude_op_names(int index) const; - ::pg_query::Node* add_exclude_op_names(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - exclude_op_names() const; - - // string idxname = 1 [json_name = "idxname"]; - void clear_idxname(); - const std::string& idxname() const; - template - void set_idxname(ArgT0&& arg0, ArgT... args); - std::string* mutable_idxname(); - PROTOBUF_NODISCARD std::string* release_idxname(); - void set_allocated_idxname(std::string* idxname); - private: - const std::string& _internal_idxname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_idxname(const std::string& value); - std::string* _internal_mutable_idxname(); - public: - - // string access_method = 3 [json_name = "accessMethod"]; - void clear_access_method(); - const std::string& access_method() const; - template - void set_access_method(ArgT0&& arg0, ArgT... args); - std::string* mutable_access_method(); - PROTOBUF_NODISCARD std::string* release_access_method(); - void set_allocated_access_method(std::string* access_method); - private: - const std::string& _internal_access_method() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_access_method(const std::string& value); - std::string* _internal_mutable_access_method(); - public: - - // string table_space = 4 [json_name = "tableSpace"]; - void clear_table_space(); - const std::string& table_space() const; - template - void set_table_space(ArgT0&& arg0, ArgT... args); - std::string* mutable_table_space(); - PROTOBUF_NODISCARD std::string* release_table_space(); - void set_allocated_table_space(std::string* table_space); - private: - const std::string& _internal_table_space() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_table_space(const std::string& value); - std::string* _internal_mutable_table_space(); - public: - - // string idxcomment = 10 [json_name = "idxcomment"]; - void clear_idxcomment(); - const std::string& idxcomment() const; - template - void set_idxcomment(ArgT0&& arg0, ArgT... args); - std::string* mutable_idxcomment(); - PROTOBUF_NODISCARD std::string* release_idxcomment(); - void set_allocated_idxcomment(std::string* idxcomment); - private: - const std::string& _internal_idxcomment() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_idxcomment(const std::string& value); - std::string* _internal_mutable_idxcomment(); - public: - - // .pg_query.RangeVar relation = 2 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; - public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); - private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); - public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); - - // .pg_query.Node where_clause = 8 [json_name = "whereClause"]; - bool has_where_clause() const; - private: - bool _internal_has_where_clause() const; - public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); - private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); - public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); - - // uint32 index_oid = 11 [json_name = "indexOid"]; - void clear_index_oid(); - uint32_t index_oid() const; - void set_index_oid(uint32_t value); - private: - uint32_t _internal_index_oid() const; - void _internal_set_index_oid(uint32_t value); - public: - - // uint32 old_node = 12 [json_name = "oldNode"]; - void clear_old_node(); - uint32_t old_node() const; - void set_old_node(uint32_t value); - private: - uint32_t _internal_old_node() const; - void _internal_set_old_node(uint32_t value); - public: - - // uint32 old_create_subid = 13 [json_name = "oldCreateSubid"]; - void clear_old_create_subid(); - uint32_t old_create_subid() const; - void set_old_create_subid(uint32_t value); - private: - uint32_t _internal_old_create_subid() const; - void _internal_set_old_create_subid(uint32_t value); - public: - - // uint32 old_first_relfilenode_subid = 14 [json_name = "oldFirstRelfilenodeSubid"]; - void clear_old_first_relfilenode_subid(); - uint32_t old_first_relfilenode_subid() const; - void set_old_first_relfilenode_subid(uint32_t value); - private: - uint32_t _internal_old_first_relfilenode_subid() const; - void _internal_set_old_first_relfilenode_subid(uint32_t value); - public: - - // bool unique = 15 [json_name = "unique"]; - void clear_unique(); - bool unique() const; - void set_unique(bool value); - private: - bool _internal_unique() const; - void _internal_set_unique(bool value); - public: - - // bool nulls_not_distinct = 16 [json_name = "nulls_not_distinct"]; - void clear_nulls_not_distinct(); - bool nulls_not_distinct() const; - void set_nulls_not_distinct(bool value); - private: - bool _internal_nulls_not_distinct() const; - void _internal_set_nulls_not_distinct(bool value); - public: + // string cursor_name = 3 [json_name = "cursor_name"]; + void clear_cursor_name() ; + const std::string& cursor_name() const; + template + void set_cursor_name(Arg_&& arg, Args_... args); + std::string* mutable_cursor_name(); + PROTOBUF_NODISCARD std::string* release_cursor_name(); + void set_allocated_cursor_name(std::string* value); - // bool primary = 17 [json_name = "primary"]; - void clear_primary(); - bool primary() const; - void set_primary(bool value); private: - bool _internal_primary() const; - void _internal_set_primary(bool value); - public: + const std::string& _internal_cursor_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_cursor_name( + const std::string& value); + std::string* _internal_mutable_cursor_name(); - // bool isconstraint = 18 [json_name = "isconstraint"]; - void clear_isconstraint(); - bool isconstraint() const; - void set_isconstraint(bool value); - private: - bool _internal_isconstraint() const; - void _internal_set_isconstraint(bool value); public: + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // bool deferrable = 19 [json_name = "deferrable"]; - void clear_deferrable(); - bool deferrable() const; - void set_deferrable(bool value); private: - bool _internal_deferrable() const; - void _internal_set_deferrable(bool value); - public: + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - // bool initdeferred = 20 [json_name = "initdeferred"]; - void clear_initdeferred(); - bool initdeferred() const; - void set_initdeferred(bool value); - private: - bool _internal_initdeferred() const; - void _internal_set_initdeferred(bool value); public: + // uint32 cvarno = 2 [json_name = "cvarno"]; + void clear_cvarno() ; + ::uint32_t cvarno() const; + void set_cvarno(::uint32_t value); - // bool transformed = 21 [json_name = "transformed"]; - void clear_transformed(); - bool transformed() const; - void set_transformed(bool value); private: - bool _internal_transformed() const; - void _internal_set_transformed(bool value); - public: + ::uint32_t _internal_cvarno() const; + void _internal_set_cvarno(::uint32_t value); - // bool concurrent = 22 [json_name = "concurrent"]; - void clear_concurrent(); - bool concurrent() const; - void set_concurrent(bool value); - private: - bool _internal_concurrent() const; - void _internal_set_concurrent(bool value); public: + // int32 cursor_param = 4 [json_name = "cursor_param"]; + void clear_cursor_param() ; + ::int32_t cursor_param() const; + void set_cursor_param(::int32_t value); - // bool if_not_exists = 23 [json_name = "if_not_exists"]; - void clear_if_not_exists(); - bool if_not_exists() const; - void set_if_not_exists(bool value); private: - bool _internal_if_not_exists() const; - void _internal_set_if_not_exists(bool value); - public: + ::int32_t _internal_cursor_param() const; + void _internal_set_cursor_param(::int32_t value); - // bool reset_default_tblspc = 24 [json_name = "reset_default_tblspc"]; - void clear_reset_default_tblspc(); - bool reset_default_tblspc() const; - void set_reset_default_tblspc(bool value); - private: - bool _internal_reset_default_tblspc() const; - void _internal_set_reset_default_tblspc(bool value); public: - - // @@protoc_insertion_point(class_scope:pg_query.IndexStmt) + // @@protoc_insertion_point(class_scope:pg_query.CurrentOfExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 1, + 42, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > index_params_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > index_including_params_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > exclude_op_names_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr idxname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr access_method_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr table_space_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr idxcomment_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* where_clause_; - uint32_t index_oid_; - uint32_t old_node_; - uint32_t old_create_subid_; - uint32_t old_first_relfilenode_subid_; - bool unique_; - bool nulls_not_distinct_; - bool primary_; - bool isconstraint_; - bool deferrable_; - bool initdeferred_; - bool transformed_; - bool concurrent_; - bool if_not_exists_; - bool reset_default_tblspc_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr cursor_name_; + ::pg_query::Node* xpr_; + ::uint32_t cvarno_; + ::int32_t cursor_param_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateFunctionStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateFunctionStmt) */ { +class DeclareCursorStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DeclareCursorStmt) */ { public: - inline CreateFunctionStmt() : CreateFunctionStmt(nullptr) {} - ~CreateFunctionStmt() override; - explicit PROTOBUF_CONSTEXPR CreateFunctionStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DeclareCursorStmt() : DeclareCursorStmt(nullptr) {} + ~DeclareCursorStmt() override; + template + explicit PROTOBUF_CONSTEXPR DeclareCursorStmt(::google::protobuf::internal::ConstantInitialized); - CreateFunctionStmt(const CreateFunctionStmt& from); - CreateFunctionStmt(CreateFunctionStmt&& from) noexcept - : CreateFunctionStmt() { + inline DeclareCursorStmt(const DeclareCursorStmt& from) + : DeclareCursorStmt(nullptr, from) {} + DeclareCursorStmt(DeclareCursorStmt&& from) noexcept + : DeclareCursorStmt() { *this = ::std::move(from); } - inline CreateFunctionStmt& operator=(const CreateFunctionStmt& from) { + inline DeclareCursorStmt& operator=(const DeclareCursorStmt& from) { CopyFrom(from); return *this; } - inline CreateFunctionStmt& operator=(CreateFunctionStmt&& from) noexcept { + inline DeclareCursorStmt& operator=(DeclareCursorStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -29645,256 +34541,208 @@ class CreateFunctionStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateFunctionStmt& default_instance() { + static const DeclareCursorStmt& default_instance() { return *internal_default_instance(); } - static inline const CreateFunctionStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateFunctionStmt_default_instance_); + static inline const DeclareCursorStmt* internal_default_instance() { + return reinterpret_cast( + &_DeclareCursorStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 89; + 190; - friend void swap(CreateFunctionStmt& a, CreateFunctionStmt& b) { + friend void swap(DeclareCursorStmt& a, DeclareCursorStmt& b) { a.Swap(&b); } - inline void Swap(CreateFunctionStmt* other) { + inline void Swap(DeclareCursorStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateFunctionStmt* other) { + void UnsafeArenaSwap(DeclareCursorStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } - // implements Message ---------------------------------------------- - - CreateFunctionStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateFunctionStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateFunctionStmt& from) { - CreateFunctionStmt::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateFunctionStmt* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateFunctionStmt"; - } - protected: - explicit CreateFunctionStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kFuncnameFieldNumber = 3, - kParametersFieldNumber = 4, - kOptionsFieldNumber = 6, - kReturnTypeFieldNumber = 5, - kSqlBodyFieldNumber = 7, - kIsProcedureFieldNumber = 1, - kReplaceFieldNumber = 2, - }; - // repeated .pg_query.Node funcname = 3 [json_name = "funcname"]; - int funcname_size() const; - private: - int _internal_funcname_size() const; - public: - void clear_funcname(); - ::pg_query::Node* mutable_funcname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_funcname(); - private: - const ::pg_query::Node& _internal_funcname(int index) const; - ::pg_query::Node* _internal_add_funcname(); - public: - const ::pg_query::Node& funcname(int index) const; - ::pg_query::Node* add_funcname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - funcname() const; - - // repeated .pg_query.Node parameters = 4 [json_name = "parameters"]; - int parameters_size() const; - private: - int _internal_parameters_size() const; - public: - void clear_parameters(); - ::pg_query::Node* mutable_parameters(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_parameters(); - private: - const ::pg_query::Node& _internal_parameters(int index) const; - ::pg_query::Node* _internal_add_parameters(); - public: - const ::pg_query::Node& parameters(int index) const; - ::pg_query::Node* add_parameters(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - parameters() const; - - // repeated .pg_query.Node options = 6 [json_name = "options"]; - int options_size() const; - private: - int _internal_options_size() const; - public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); - private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); - public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; - - // .pg_query.TypeName return_type = 5 [json_name = "returnType"]; - bool has_return_type() const; + // implements Message ---------------------------------------------- + + DeclareCursorStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DeclareCursorStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DeclareCursorStmt& from) { + DeclareCursorStmt::MergeImpl(*this, from); + } private: - bool _internal_has_return_type() const; + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: - void clear_return_type(); - const ::pg_query::TypeName& return_type() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_return_type(); - ::pg_query::TypeName* mutable_return_type(); - void set_allocated_return_type(::pg_query::TypeName* return_type); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + private: - const ::pg_query::TypeName& _internal_return_type() const; - ::pg_query::TypeName* _internal_mutable_return_type(); - public: - void unsafe_arena_set_allocated_return_type( - ::pg_query::TypeName* return_type); - ::pg_query::TypeName* unsafe_arena_release_return_type(); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(DeclareCursorStmt* other); - // .pg_query.Node sql_body = 7 [json_name = "sql_body"]; - bool has_sql_body() const; private: - bool _internal_has_sql_body() const; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DeclareCursorStmt"; + } + protected: + explicit DeclareCursorStmt(::google::protobuf::Arena* arena); + DeclareCursorStmt(::google::protobuf::Arena* arena, const DeclareCursorStmt& from); public: - void clear_sql_body(); - const ::pg_query::Node& sql_body() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_sql_body(); - ::pg_query::Node* mutable_sql_body(); - void set_allocated_sql_body(::pg_query::Node* sql_body); + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kPortalnameFieldNumber = 1, + kQueryFieldNumber = 3, + kOptionsFieldNumber = 2, + }; + // string portalname = 1 [json_name = "portalname"]; + void clear_portalname() ; + const std::string& portalname() const; + template + void set_portalname(Arg_&& arg, Args_... args); + std::string* mutable_portalname(); + PROTOBUF_NODISCARD std::string* release_portalname(); + void set_allocated_portalname(std::string* value); + private: - const ::pg_query::Node& _internal_sql_body() const; - ::pg_query::Node* _internal_mutable_sql_body(); + const std::string& _internal_portalname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_portalname( + const std::string& value); + std::string* _internal_mutable_portalname(); + public: - void unsafe_arena_set_allocated_sql_body( - ::pg_query::Node* sql_body); - ::pg_query::Node* unsafe_arena_release_sql_body(); + // .pg_query.Node query = 3 [json_name = "query"]; + bool has_query() const; + void clear_query() ; + const ::pg_query::Node& query() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_query(); + ::pg_query::Node* mutable_query(); + void set_allocated_query(::pg_query::Node* value); + void unsafe_arena_set_allocated_query(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_query(); - // bool is_procedure = 1 [json_name = "is_procedure"]; - void clear_is_procedure(); - bool is_procedure() const; - void set_is_procedure(bool value); private: - bool _internal_is_procedure() const; - void _internal_set_is_procedure(bool value); + const ::pg_query::Node& _internal_query() const; + ::pg_query::Node* _internal_mutable_query(); + public: + // int32 options = 2 [json_name = "options"]; + void clear_options() ; + ::int32_t options() const; + void set_options(::int32_t value); - // bool replace = 2 [json_name = "replace"]; - void clear_replace(); - bool replace() const; - void set_replace(bool value); private: - bool _internal_replace() const; - void _internal_set_replace(bool value); - public: + ::int32_t _internal_options() const; + void _internal_set_options(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CreateFunctionStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.DeclareCursorStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 45, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > funcname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > parameters_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::pg_query::TypeName* return_type_; - ::pg_query::Node* sql_body_; - bool is_procedure_; - bool replace_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr portalname_; + ::pg_query::Node* query_; + ::int32_t options_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterFunctionStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterFunctionStmt) */ { +class DefElem final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DefElem) */ { public: - inline AlterFunctionStmt() : AlterFunctionStmt(nullptr) {} - ~AlterFunctionStmt() override; - explicit PROTOBUF_CONSTEXPR AlterFunctionStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DefElem() : DefElem(nullptr) {} + ~DefElem() override; + template + explicit PROTOBUF_CONSTEXPR DefElem(::google::protobuf::internal::ConstantInitialized); - AlterFunctionStmt(const AlterFunctionStmt& from); - AlterFunctionStmt(AlterFunctionStmt&& from) noexcept - : AlterFunctionStmt() { + inline DefElem(const DefElem& from) + : DefElem(nullptr, from) {} + DefElem(DefElem&& from) noexcept + : DefElem() { *this = ::std::move(from); } - inline AlterFunctionStmt& operator=(const AlterFunctionStmt& from) { + inline DefElem& operator=(const DefElem& from) { CopyFrom(from); return *this; } - inline AlterFunctionStmt& operator=(AlterFunctionStmt&& from) noexcept { + inline DefElem& operator=(DefElem&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -29904,185 +34752,238 @@ class AlterFunctionStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterFunctionStmt& default_instance() { + static const DefElem& default_instance() { return *internal_default_instance(); } - static inline const AlterFunctionStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterFunctionStmt_default_instance_); + static inline const DefElem* internal_default_instance() { + return reinterpret_cast( + &_DefElem_default_instance_); } static constexpr int kIndexInFileMessages = - 90; + 92; - friend void swap(AlterFunctionStmt& a, AlterFunctionStmt& b) { + friend void swap(DefElem& a, DefElem& b) { a.Swap(&b); } - inline void Swap(AlterFunctionStmt* other) { + inline void Swap(DefElem* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterFunctionStmt* other) { + void UnsafeArenaSwap(DefElem* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterFunctionStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + DefElem* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterFunctionStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterFunctionStmt& from) { - AlterFunctionStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DefElem& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DefElem& from) { + DefElem::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterFunctionStmt* other); + void InternalSwap(DefElem* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterFunctionStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DefElem"; } protected: - explicit AlterFunctionStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit DefElem(::google::protobuf::Arena* arena); + DefElem(::google::protobuf::Arena* arena, const DefElem& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kActionsFieldNumber = 3, - kFuncFieldNumber = 2, - kObjtypeFieldNumber = 1, + kDefnamespaceFieldNumber = 1, + kDefnameFieldNumber = 2, + kArgFieldNumber = 3, + kDefactionFieldNumber = 4, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node actions = 3 [json_name = "actions"]; - int actions_size() const; + // string defnamespace = 1 [json_name = "defnamespace"]; + void clear_defnamespace() ; + const std::string& defnamespace() const; + template + void set_defnamespace(Arg_&& arg, Args_... args); + std::string* mutable_defnamespace(); + PROTOBUF_NODISCARD std::string* release_defnamespace(); + void set_allocated_defnamespace(std::string* value); + private: - int _internal_actions_size() const; + const std::string& _internal_defnamespace() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_defnamespace( + const std::string& value); + std::string* _internal_mutable_defnamespace(); + public: - void clear_actions(); - ::pg_query::Node* mutable_actions(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_actions(); + // string defname = 2 [json_name = "defname"]; + void clear_defname() ; + const std::string& defname() const; + template + void set_defname(Arg_&& arg, Args_... args); + std::string* mutable_defname(); + PROTOBUF_NODISCARD std::string* release_defname(); + void set_allocated_defname(std::string* value); + private: - const ::pg_query::Node& _internal_actions(int index) const; - ::pg_query::Node* _internal_add_actions(); + const std::string& _internal_defname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_defname( + const std::string& value); + std::string* _internal_mutable_defname(); + public: - const ::pg_query::Node& actions(int index) const; - ::pg_query::Node* add_actions(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - actions() const; + // .pg_query.Node arg = 3 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); - // .pg_query.ObjectWithArgs func = 2 [json_name = "func"]; - bool has_func() const; private: - bool _internal_has_func() const; + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + public: - void clear_func(); - const ::pg_query::ObjectWithArgs& func() const; - PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_func(); - ::pg_query::ObjectWithArgs* mutable_func(); - void set_allocated_func(::pg_query::ObjectWithArgs* func); + // .pg_query.DefElemAction defaction = 4 [json_name = "defaction"]; + void clear_defaction() ; + ::pg_query::DefElemAction defaction() const; + void set_defaction(::pg_query::DefElemAction value); + private: - const ::pg_query::ObjectWithArgs& _internal_func() const; - ::pg_query::ObjectWithArgs* _internal_mutable_func(); + ::pg_query::DefElemAction _internal_defaction() const; + void _internal_set_defaction(::pg_query::DefElemAction value); + public: - void unsafe_arena_set_allocated_func( - ::pg_query::ObjectWithArgs* func); - ::pg_query::ObjectWithArgs* unsafe_arena_release_func(); + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; - void clear_objtype(); - ::pg_query::ObjectType objtype() const; - void set_objtype(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_objtype() const; - void _internal_set_objtype(::pg_query::ObjectType value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterFunctionStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.DefElem) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 1, + 44, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > actions_; - ::pg_query::ObjectWithArgs* func_; - int objtype_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr defnamespace_; + ::google::protobuf::internal::ArenaStringPtr defname_; + ::pg_query::Node* arg_; + int defaction_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DoStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DoStmt) */ { +class DefineStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DefineStmt) */ { public: - inline DoStmt() : DoStmt(nullptr) {} - ~DoStmt() override; - explicit PROTOBUF_CONSTEXPR DoStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DefineStmt() : DefineStmt(nullptr) {} + ~DefineStmt() override; + template + explicit PROTOBUF_CONSTEXPR DefineStmt(::google::protobuf::internal::ConstantInitialized); - DoStmt(const DoStmt& from); - DoStmt(DoStmt&& from) noexcept - : DoStmt() { + inline DefineStmt(const DefineStmt& from) + : DefineStmt(nullptr, from) {} + DefineStmt(DefineStmt&& from) noexcept + : DefineStmt() { *this = ::std::move(from); } - inline DoStmt& operator=(const DoStmt& from) { + inline DefineStmt& operator=(const DefineStmt& from) { CopyFrom(from); return *this; } - inline DoStmt& operator=(DoStmt&& from) noexcept { + inline DefineStmt& operator=(DefineStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -30092,154 +34993,268 @@ class DoStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DoStmt& default_instance() { + static const DefineStmt& default_instance() { return *internal_default_instance(); } - static inline const DoStmt* internal_default_instance() { - return reinterpret_cast( - &_DoStmt_default_instance_); + static inline const DefineStmt* internal_default_instance() { + return reinterpret_cast( + &_DefineStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 91; + 180; - friend void swap(DoStmt& a, DoStmt& b) { + friend void swap(DefineStmt& a, DefineStmt& b) { a.Swap(&b); } - inline void Swap(DoStmt* other) { + inline void Swap(DefineStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DoStmt* other) { + void UnsafeArenaSwap(DefineStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DoStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + DefineStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DoStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DoStmt& from) { - DoStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DefineStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DefineStmt& from) { + DefineStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DoStmt* other); + void InternalSwap(DefineStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DoStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DefineStmt"; } protected: - explicit DoStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit DefineStmt(::google::protobuf::Arena* arena); + DefineStmt(::google::protobuf::Arena* arena, const DefineStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 1, + kDefnamesFieldNumber = 3, + kArgsFieldNumber = 4, + kDefinitionFieldNumber = 5, + kKindFieldNumber = 1, + kOldstyleFieldNumber = 2, + kIfNotExistsFieldNumber = 6, + kReplaceFieldNumber = 7, }; - // repeated .pg_query.Node args = 1 [json_name = "args"]; + // repeated .pg_query.Node defnames = 3 [json_name = "defnames"]; + int defnames_size() const; + private: + int _internal_defnames_size() const; + + public: + void clear_defnames() ; + ::pg_query::Node* mutable_defnames(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_defnames(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_defnames() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_defnames(); + public: + const ::pg_query::Node& defnames(int index) const; + ::pg_query::Node* add_defnames(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + defnames() const; + // repeated .pg_query.Node args = 4 [json_name = "args"]; int args_size() const; private: int _internal_args_size() const; + public: - void clear_args(); + void clear_args() ; ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_args(); private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: const ::pg_query::Node& args(int index) const; ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& args() const; + // repeated .pg_query.Node definition = 5 [json_name = "definition"]; + int definition_size() const; + private: + int _internal_definition_size() const; - // @@protoc_insertion_point(class_scope:pg_query.DoStmt) + public: + void clear_definition() ; + ::pg_query::Node* mutable_definition(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_definition(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_definition() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_definition(); + public: + const ::pg_query::Node& definition(int index) const; + ::pg_query::Node* add_definition(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + definition() const; + // .pg_query.ObjectType kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::ObjectType kind() const; + void set_kind(::pg_query::ObjectType value); + + private: + ::pg_query::ObjectType _internal_kind() const; + void _internal_set_kind(::pg_query::ObjectType value); + + public: + // bool oldstyle = 2 [json_name = "oldstyle"]; + void clear_oldstyle() ; + bool oldstyle() const; + void set_oldstyle(bool value); + + private: + bool _internal_oldstyle() const; + void _internal_set_oldstyle(bool value); + + public: + // bool if_not_exists = 6 [json_name = "if_not_exists"]; + void clear_if_not_exists() ; + bool if_not_exists() const; + void set_if_not_exists(bool value); + + private: + bool _internal_if_not_exists() const; + void _internal_set_if_not_exists(bool value); + + public: + // bool replace = 7 [json_name = "replace"]; + void clear_replace() ; + bool replace() const; + void set_replace(bool value); + + private: + bool _internal_replace() const; + void _internal_set_replace(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.DefineStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > defnames_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > definition_; + int kind_; + bool oldstyle_; + bool if_not_exists_; + bool replace_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RenameStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RenameStmt) */ { +class DeleteStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DeleteStmt) */ { public: - inline RenameStmt() : RenameStmt(nullptr) {} - ~RenameStmt() override; - explicit PROTOBUF_CONSTEXPR RenameStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DeleteStmt() : DeleteStmt(nullptr) {} + ~DeleteStmt() override; + template + explicit PROTOBUF_CONSTEXPR DeleteStmt(::google::protobuf::internal::ConstantInitialized); - RenameStmt(const RenameStmt& from); - RenameStmt(RenameStmt&& from) noexcept - : RenameStmt() { + inline DeleteStmt(const DeleteStmt& from) + : DeleteStmt(nullptr, from) {} + DeleteStmt(DeleteStmt&& from) noexcept + : DeleteStmt() { *this = ::std::move(from); } - inline RenameStmt& operator=(const RenameStmt& from) { + inline DeleteStmt& operator=(const DeleteStmt& from) { CopyFrom(from); return *this; } - inline RenameStmt& operator=(RenameStmt&& from) noexcept { + inline DeleteStmt& operator=(DeleteStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -30249,250 +35264,252 @@ class RenameStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RenameStmt& default_instance() { + static const DeleteStmt& default_instance() { return *internal_default_instance(); } - static inline const RenameStmt* internal_default_instance() { - return reinterpret_cast( - &_RenameStmt_default_instance_); + static inline const DeleteStmt* internal_default_instance() { + return reinterpret_cast( + &_DeleteStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 92; + 128; - friend void swap(RenameStmt& a, RenameStmt& b) { + friend void swap(DeleteStmt& a, DeleteStmt& b) { a.Swap(&b); } - inline void Swap(RenameStmt* other) { + inline void Swap(DeleteStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RenameStmt* other) { + void UnsafeArenaSwap(DeleteStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RenameStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + DeleteStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RenameStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RenameStmt& from) { - RenameStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DeleteStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DeleteStmt& from) { + DeleteStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RenameStmt* other); + void InternalSwap(DeleteStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RenameStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DeleteStmt"; } protected: - explicit RenameStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit DeleteStmt(::google::protobuf::Arena* arena); + DeleteStmt(::google::protobuf::Arena* arena, const DeleteStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kSubnameFieldNumber = 5, - kNewnameFieldNumber = 6, - kRelationFieldNumber = 3, - kObjectFieldNumber = 4, - kRenameTypeFieldNumber = 1, - kRelationTypeFieldNumber = 2, - kBehaviorFieldNumber = 7, - kMissingOkFieldNumber = 8, + kUsingClauseFieldNumber = 2, + kReturningListFieldNumber = 4, + kRelationFieldNumber = 1, + kWhereClauseFieldNumber = 3, + kWithClauseFieldNumber = 5, }; - // string subname = 5 [json_name = "subname"]; - void clear_subname(); - const std::string& subname() const; - template - void set_subname(ArgT0&& arg0, ArgT... args); - std::string* mutable_subname(); - PROTOBUF_NODISCARD std::string* release_subname(); - void set_allocated_subname(std::string* subname); + // repeated .pg_query.Node using_clause = 2 [json_name = "usingClause"]; + int using_clause_size() const; private: - const std::string& _internal_subname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_subname(const std::string& value); - std::string* _internal_mutable_subname(); - public: + int _internal_using_clause_size() const; - // string newname = 6 [json_name = "newname"]; - void clear_newname(); - const std::string& newname() const; - template - void set_newname(ArgT0&& arg0, ArgT... args); - std::string* mutable_newname(); - PROTOBUF_NODISCARD std::string* release_newname(); - void set_allocated_newname(std::string* newname); + public: + void clear_using_clause() ; + ::pg_query::Node* mutable_using_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_using_clause(); private: - const std::string& _internal_newname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_newname(const std::string& value); - std::string* _internal_mutable_newname(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_using_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_using_clause(); public: + const ::pg_query::Node& using_clause(int index) const; + ::pg_query::Node* add_using_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + using_clause() const; + // repeated .pg_query.Node returning_list = 4 [json_name = "returningList"]; + int returning_list_size() const; + private: + int _internal_returning_list_size() const; - // .pg_query.RangeVar relation = 3 [json_name = "relation"]; - bool has_relation() const; + public: + void clear_returning_list() ; + ::pg_query::Node* mutable_returning_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_returning_list(); private: - bool _internal_has_relation() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_returning_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_returning_list(); public: - void clear_relation(); + const ::pg_query::Node& returning_list(int index) const; + ::pg_query::Node* add_returning_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + returning_list() const; + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; const ::pg_query::RangeVar& relation() const; PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); + private: const ::pg_query::RangeVar& _internal_relation() const; ::pg_query::RangeVar* _internal_mutable_relation(); - public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); - // .pg_query.Node object = 4 [json_name = "object"]; - bool has_object() const; - private: - bool _internal_has_object() const; public: - void clear_object(); - const ::pg_query::Node& object() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_object(); - ::pg_query::Node* mutable_object(); - void set_allocated_object(::pg_query::Node* object); - private: - const ::pg_query::Node& _internal_object() const; - ::pg_query::Node* _internal_mutable_object(); - public: - void unsafe_arena_set_allocated_object( - ::pg_query::Node* object); - ::pg_query::Node* unsafe_arena_release_object(); + // .pg_query.Node where_clause = 3 [json_name = "whereClause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); - // .pg_query.ObjectType rename_type = 1 [json_name = "renameType"]; - void clear_rename_type(); - ::pg_query::ObjectType rename_type() const; - void set_rename_type(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_rename_type() const; - void _internal_set_rename_type(::pg_query::ObjectType value); - public: + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); - // .pg_query.ObjectType relation_type = 2 [json_name = "relationType"]; - void clear_relation_type(); - ::pg_query::ObjectType relation_type() const; - void set_relation_type(::pg_query::ObjectType value); - private: - ::pg_query::ObjectType _internal_relation_type() const; - void _internal_set_relation_type(::pg_query::ObjectType value); public: + // .pg_query.WithClause with_clause = 5 [json_name = "withClause"]; + bool has_with_clause() const; + void clear_with_clause() ; + const ::pg_query::WithClause& with_clause() const; + PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); + ::pg_query::WithClause* mutable_with_clause(); + void set_allocated_with_clause(::pg_query::WithClause* value); + void unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value); + ::pg_query::WithClause* unsafe_arena_release_with_clause(); - // .pg_query.DropBehavior behavior = 7 [json_name = "behavior"]; - void clear_behavior(); - ::pg_query::DropBehavior behavior() const; - void set_behavior(::pg_query::DropBehavior value); private: - ::pg_query::DropBehavior _internal_behavior() const; - void _internal_set_behavior(::pg_query::DropBehavior value); - public: + const ::pg_query::WithClause& _internal_with_clause() const; + ::pg_query::WithClause* _internal_mutable_with_clause(); - // bool missing_ok = 8 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); - private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); public: - - // @@protoc_insertion_point(class_scope:pg_query.RenameStmt) + // @@protoc_insertion_point(class_scope:pg_query.DeleteStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr subname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr newname_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > using_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > returning_list_; ::pg_query::RangeVar* relation_; - ::pg_query::Node* object_; - int rename_type_; - int relation_type_; - int behavior_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::pg_query::Node* where_clause_; + ::pg_query::WithClause* with_clause_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RuleStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RuleStmt) */ { +class DistinctExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DistinctExpr) */ { public: - inline RuleStmt() : RuleStmt(nullptr) {} - ~RuleStmt() override; - explicit PROTOBUF_CONSTEXPR RuleStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DistinctExpr() : DistinctExpr(nullptr) {} + ~DistinctExpr() override; + template + explicit PROTOBUF_CONSTEXPR DistinctExpr(::google::protobuf::internal::ConstantInitialized); - RuleStmt(const RuleStmt& from); - RuleStmt(RuleStmt&& from) noexcept - : RuleStmt() { + inline DistinctExpr(const DistinctExpr& from) + : DistinctExpr(nullptr, from) {} + DistinctExpr(DistinctExpr&& from) noexcept + : DistinctExpr() { *this = ::std::move(from); } - inline RuleStmt& operator=(const RuleStmt& from) { + inline DistinctExpr& operator=(const DistinctExpr& from) { CopyFrom(from); return *this; } - inline RuleStmt& operator=(RuleStmt&& from) noexcept { + inline DistinctExpr& operator=(DistinctExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -30502,243 +35519,270 @@ class RuleStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RuleStmt& default_instance() { + static const DistinctExpr& default_instance() { return *internal_default_instance(); } - static inline const RuleStmt* internal_default_instance() { - return reinterpret_cast( - &_RuleStmt_default_instance_); + static inline const DistinctExpr* internal_default_instance() { + return reinterpret_cast( + &_DistinctExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 93; + 25; - friend void swap(RuleStmt& a, RuleStmt& b) { + friend void swap(DistinctExpr& a, DistinctExpr& b) { a.Swap(&b); } - inline void Swap(RuleStmt* other) { + inline void Swap(DistinctExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RuleStmt* other) { + void UnsafeArenaSwap(DistinctExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RuleStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + DistinctExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RuleStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RuleStmt& from) { - RuleStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DistinctExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DistinctExpr& from) { + DistinctExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RuleStmt* other); + void InternalSwap(DistinctExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RuleStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DistinctExpr"; } protected: - explicit RuleStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit DistinctExpr(::google::protobuf::Arena* arena); + DistinctExpr(::google::protobuf::Arena* arena, const DistinctExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kActionsFieldNumber = 6, - kRulenameFieldNumber = 2, - kRelationFieldNumber = 1, - kWhereClauseFieldNumber = 3, - kEventFieldNumber = 4, - kInsteadFieldNumber = 5, - kReplaceFieldNumber = 7, + kArgsFieldNumber = 7, + kXprFieldNumber = 1, + kOpnoFieldNumber = 2, + kOpresulttypeFieldNumber = 3, + kOpretsetFieldNumber = 4, + kOpcollidFieldNumber = 5, + kInputcollidFieldNumber = 6, + kLocationFieldNumber = 8, }; - // repeated .pg_query.Node actions = 6 [json_name = "actions"]; - int actions_size() const; + // repeated .pg_query.Node args = 7 [json_name = "args"]; + int args_size() const; private: - int _internal_actions_size() const; + int _internal_args_size() const; + public: - void clear_actions(); - ::pg_query::Node* mutable_actions(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_actions(); + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const ::pg_query::Node& _internal_actions(int index) const; - ::pg_query::Node* _internal_add_actions(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - const ::pg_query::Node& actions(int index) const; - ::pg_query::Node* add_actions(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - actions() const; + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // string rulename = 2 [json_name = "rulename"]; - void clear_rulename(); - const std::string& rulename() const; - template - void set_rulename(ArgT0&& arg0, ArgT... args); - std::string* mutable_rulename(); - PROTOBUF_NODISCARD std::string* release_rulename(); - void set_allocated_rulename(std::string* rulename); private: - const std::string& _internal_rulename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_rulename(const std::string& value); - std::string* _internal_mutable_rulename(); - public: + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + // uint32 opno = 2 [json_name = "opno"]; + void clear_opno() ; + ::uint32_t opno() const; + void set_opno(::uint32_t value); + private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + ::uint32_t _internal_opno() const; + void _internal_set_opno(::uint32_t value); + public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + // uint32 opresulttype = 3 [json_name = "opresulttype"]; + void clear_opresulttype() ; + ::uint32_t opresulttype() const; + void set_opresulttype(::uint32_t value); - // .pg_query.Node where_clause = 3 [json_name = "whereClause"]; - bool has_where_clause() const; private: - bool _internal_has_where_clause() const; + ::uint32_t _internal_opresulttype() const; + void _internal_set_opresulttype(::uint32_t value); + public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); + // bool opretset = 4 [json_name = "opretset"]; + void clear_opretset() ; + bool opretset() const; + void set_opretset(bool value); + private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); + bool _internal_opretset() const; + void _internal_set_opretset(bool value); + public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); + // uint32 opcollid = 5 [json_name = "opcollid"]; + void clear_opcollid() ; + ::uint32_t opcollid() const; + void set_opcollid(::uint32_t value); - // .pg_query.CmdType event = 4 [json_name = "event"]; - void clear_event(); - ::pg_query::CmdType event() const; - void set_event(::pg_query::CmdType value); private: - ::pg_query::CmdType _internal_event() const; - void _internal_set_event(::pg_query::CmdType value); + ::uint32_t _internal_opcollid() const; + void _internal_set_opcollid(::uint32_t value); + public: + // uint32 inputcollid = 6 [json_name = "inputcollid"]; + void clear_inputcollid() ; + ::uint32_t inputcollid() const; + void set_inputcollid(::uint32_t value); - // bool instead = 5 [json_name = "instead"]; - void clear_instead(); - bool instead() const; - void set_instead(bool value); private: - bool _internal_instead() const; - void _internal_set_instead(bool value); + ::uint32_t _internal_inputcollid() const; + void _internal_set_inputcollid(::uint32_t value); + public: + // int32 location = 8 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // bool replace = 7 [json_name = "replace"]; - void clear_replace(); - bool replace() const; - void set_replace(bool value); private: - bool _internal_replace() const; - void _internal_set_replace(bool value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.RuleStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.DistinctExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > actions_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr rulename_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* where_clause_; - int event_; - bool instead_; - bool replace_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* xpr_; + ::uint32_t opno_; + ::uint32_t opresulttype_; + bool opretset_; + ::uint32_t opcollid_; + ::uint32_t inputcollid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class NotifyStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.NotifyStmt) */ { +class DoStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DoStmt) */ { public: - inline NotifyStmt() : NotifyStmt(nullptr) {} - ~NotifyStmt() override; - explicit PROTOBUF_CONSTEXPR NotifyStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DoStmt() : DoStmt(nullptr) {} + ~DoStmt() override; + template + explicit PROTOBUF_CONSTEXPR DoStmt(::google::protobuf::internal::ConstantInitialized); - NotifyStmt(const NotifyStmt& from); - NotifyStmt(NotifyStmt&& from) noexcept - : NotifyStmt() { + inline DoStmt(const DoStmt& from) + : DoStmt(nullptr, from) {} + DoStmt(DoStmt&& from) noexcept + : DoStmt() { *this = ::std::move(from); } - inline NotifyStmt& operator=(const NotifyStmt& from) { + inline DoStmt& operator=(const DoStmt& from) { CopyFrom(from); return *this; } - inline NotifyStmt& operator=(NotifyStmt&& from) noexcept { + inline DoStmt& operator=(DoStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -30748,166 +35792,180 @@ class NotifyStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const NotifyStmt& default_instance() { + static const DoStmt& default_instance() { return *internal_default_instance(); } - static inline const NotifyStmt* internal_default_instance() { - return reinterpret_cast( - &_NotifyStmt_default_instance_); + static inline const DoStmt* internal_default_instance() { + return reinterpret_cast( + &_DoStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 94; + 200; - friend void swap(NotifyStmt& a, NotifyStmt& b) { + friend void swap(DoStmt& a, DoStmt& b) { a.Swap(&b); } - inline void Swap(NotifyStmt* other) { + inline void Swap(DoStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(NotifyStmt* other) { + void UnsafeArenaSwap(DoStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - NotifyStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + DoStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const NotifyStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const NotifyStmt& from) { - NotifyStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DoStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DoStmt& from) { + DoStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(NotifyStmt* other); + void InternalSwap(DoStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.NotifyStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DoStmt"; } protected: - explicit NotifyStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit DoStmt(::google::protobuf::Arena* arena); + DoStmt(::google::protobuf::Arena* arena, const DoStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kConditionnameFieldNumber = 1, - kPayloadFieldNumber = 2, + kArgsFieldNumber = 1, }; - // string conditionname = 1 [json_name = "conditionname"]; - void clear_conditionname(); - const std::string& conditionname() const; - template - void set_conditionname(ArgT0&& arg0, ArgT... args); - std::string* mutable_conditionname(); - PROTOBUF_NODISCARD std::string* release_conditionname(); - void set_allocated_conditionname(std::string* conditionname); + // repeated .pg_query.Node args = 1 [json_name = "args"]; + int args_size() const; private: - const std::string& _internal_conditionname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_conditionname(const std::string& value); - std::string* _internal_mutable_conditionname(); - public: + int _internal_args_size() const; - // string payload = 2 [json_name = "payload"]; - void clear_payload(); - const std::string& payload() const; - template - void set_payload(ArgT0&& arg0, ArgT... args); - std::string* mutable_payload(); - PROTOBUF_NODISCARD std::string* release_payload(); - void set_allocated_payload(std::string* payload); + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const std::string& _internal_payload() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_payload(const std::string& value); - std::string* _internal_mutable_payload(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - - // @@protoc_insertion_point(class_scope:pg_query.NotifyStmt) + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // @@protoc_insertion_point(class_scope:pg_query.DoStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr conditionname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr payload_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ListenStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ListenStmt) */ { +class DropOwnedStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DropOwnedStmt) */ { public: - inline ListenStmt() : ListenStmt(nullptr) {} - ~ListenStmt() override; - explicit PROTOBUF_CONSTEXPR ListenStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DropOwnedStmt() : DropOwnedStmt(nullptr) {} + ~DropOwnedStmt() override; + template + explicit PROTOBUF_CONSTEXPR DropOwnedStmt(::google::protobuf::internal::ConstantInitialized); - ListenStmt(const ListenStmt& from); - ListenStmt(ListenStmt&& from) noexcept - : ListenStmt() { + inline DropOwnedStmt(const DropOwnedStmt& from) + : DropOwnedStmt(nullptr, from) {} + DropOwnedStmt(DropOwnedStmt&& from) noexcept + : DropOwnedStmt() { *this = ::std::move(from); } - inline ListenStmt& operator=(const ListenStmt& from) { + inline DropOwnedStmt& operator=(const DropOwnedStmt& from) { CopyFrom(from); return *this; } - inline ListenStmt& operator=(ListenStmt&& from) noexcept { + inline DropOwnedStmt& operator=(DropOwnedStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -30917,150 +35975,192 @@ class ListenStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ListenStmt& default_instance() { + static const DropOwnedStmt& default_instance() { return *internal_default_instance(); } - static inline const ListenStmt* internal_default_instance() { - return reinterpret_cast( - &_ListenStmt_default_instance_); + static inline const DropOwnedStmt* internal_default_instance() { + return reinterpret_cast( + &_DropOwnedStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 95; + 244; - friend void swap(ListenStmt& a, ListenStmt& b) { + friend void swap(DropOwnedStmt& a, DropOwnedStmt& b) { a.Swap(&b); } - inline void Swap(ListenStmt* other) { + inline void Swap(DropOwnedStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ListenStmt* other) { + void UnsafeArenaSwap(DropOwnedStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ListenStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + DropOwnedStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ListenStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ListenStmt& from) { - ListenStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DropOwnedStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DropOwnedStmt& from) { + DropOwnedStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ListenStmt* other); + void InternalSwap(DropOwnedStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ListenStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DropOwnedStmt"; } protected: - explicit ListenStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit DropOwnedStmt(::google::protobuf::Arena* arena); + DropOwnedStmt(::google::protobuf::Arena* arena, const DropOwnedStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kConditionnameFieldNumber = 1, + kRolesFieldNumber = 1, + kBehaviorFieldNumber = 2, }; - // string conditionname = 1 [json_name = "conditionname"]; - void clear_conditionname(); - const std::string& conditionname() const; - template - void set_conditionname(ArgT0&& arg0, ArgT... args); - std::string* mutable_conditionname(); - PROTOBUF_NODISCARD std::string* release_conditionname(); - void set_allocated_conditionname(std::string* conditionname); + // repeated .pg_query.Node roles = 1 [json_name = "roles"]; + int roles_size() const; private: - const std::string& _internal_conditionname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_conditionname(const std::string& value); - std::string* _internal_mutable_conditionname(); + int _internal_roles_size() const; + + public: + void clear_roles() ; + ::pg_query::Node* mutable_roles(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_roles(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_roles() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_roles(); public: + const ::pg_query::Node& roles(int index) const; + ::pg_query::Node* add_roles(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + roles() const; + // .pg_query.DropBehavior behavior = 2 [json_name = "behavior"]; + void clear_behavior() ; + ::pg_query::DropBehavior behavior() const; + void set_behavior(::pg_query::DropBehavior value); - // @@protoc_insertion_point(class_scope:pg_query.ListenStmt) + private: + ::pg_query::DropBehavior _internal_behavior() const; + void _internal_set_behavior(::pg_query::DropBehavior value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.DropOwnedStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr conditionname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > roles_; + int behavior_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class UnlistenStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.UnlistenStmt) */ { +class DropRoleStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DropRoleStmt) */ { public: - inline UnlistenStmt() : UnlistenStmt(nullptr) {} - ~UnlistenStmt() override; - explicit PROTOBUF_CONSTEXPR UnlistenStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DropRoleStmt() : DropRoleStmt(nullptr) {} + ~DropRoleStmt() override; + template + explicit PROTOBUF_CONSTEXPR DropRoleStmt(::google::protobuf::internal::ConstantInitialized); - UnlistenStmt(const UnlistenStmt& from); - UnlistenStmt(UnlistenStmt&& from) noexcept - : UnlistenStmt() { + inline DropRoleStmt(const DropRoleStmt& from) + : DropRoleStmt(nullptr, from) {} + DropRoleStmt(DropRoleStmt&& from) noexcept + : DropRoleStmt() { *this = ::std::move(from); } - inline UnlistenStmt& operator=(const UnlistenStmt& from) { + inline DropRoleStmt& operator=(const DropRoleStmt& from) { CopyFrom(from); return *this; } - inline UnlistenStmt& operator=(UnlistenStmt&& from) noexcept { + inline DropRoleStmt& operator=(DropRoleStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -31070,150 +36170,192 @@ class UnlistenStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const UnlistenStmt& default_instance() { + static const DropRoleStmt& default_instance() { return *internal_default_instance(); } - static inline const UnlistenStmt* internal_default_instance() { - return reinterpret_cast( - &_UnlistenStmt_default_instance_); + static inline const DropRoleStmt* internal_default_instance() { + return reinterpret_cast( + &_DropRoleStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 96; + 177; - friend void swap(UnlistenStmt& a, UnlistenStmt& b) { + friend void swap(DropRoleStmt& a, DropRoleStmt& b) { a.Swap(&b); } - inline void Swap(UnlistenStmt* other) { + inline void Swap(DropRoleStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(UnlistenStmt* other) { + void UnsafeArenaSwap(DropRoleStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - UnlistenStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + DropRoleStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const UnlistenStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const UnlistenStmt& from) { - UnlistenStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DropRoleStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DropRoleStmt& from) { + DropRoleStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(UnlistenStmt* other); + void InternalSwap(DropRoleStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.UnlistenStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DropRoleStmt"; } protected: - explicit UnlistenStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit DropRoleStmt(::google::protobuf::Arena* arena); + DropRoleStmt(::google::protobuf::Arena* arena, const DropRoleStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kConditionnameFieldNumber = 1, + kRolesFieldNumber = 1, + kMissingOkFieldNumber = 2, }; - // string conditionname = 1 [json_name = "conditionname"]; - void clear_conditionname(); - const std::string& conditionname() const; - template - void set_conditionname(ArgT0&& arg0, ArgT... args); - std::string* mutable_conditionname(); - PROTOBUF_NODISCARD std::string* release_conditionname(); - void set_allocated_conditionname(std::string* conditionname); + // repeated .pg_query.Node roles = 1 [json_name = "roles"]; + int roles_size() const; private: - const std::string& _internal_conditionname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_conditionname(const std::string& value); - std::string* _internal_mutable_conditionname(); + int _internal_roles_size() const; + + public: + void clear_roles() ; + ::pg_query::Node* mutable_roles(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_roles(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_roles() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_roles(); public: + const ::pg_query::Node& roles(int index) const; + ::pg_query::Node* add_roles(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + roles() const; + // bool missing_ok = 2 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // @@protoc_insertion_point(class_scope:pg_query.UnlistenStmt) + private: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.DropRoleStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr conditionname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > roles_; + bool missing_ok_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class TransactionStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.TransactionStmt) */ { +class DropStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DropStmt) */ { public: - inline TransactionStmt() : TransactionStmt(nullptr) {} - ~TransactionStmt() override; - explicit PROTOBUF_CONSTEXPR TransactionStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DropStmt() : DropStmt(nullptr) {} + ~DropStmt() override; + template + explicit PROTOBUF_CONSTEXPR DropStmt(::google::protobuf::internal::ConstantInitialized); - TransactionStmt(const TransactionStmt& from); - TransactionStmt(TransactionStmt&& from) noexcept - : TransactionStmt() { + inline DropStmt(const DropStmt& from) + : DropStmt(nullptr, from) {} + DropStmt(DropStmt&& from) noexcept + : DropStmt() { *this = ::std::move(from); } - inline TransactionStmt& operator=(const TransactionStmt& from) { + inline DropStmt& operator=(const DropStmt& from) { CopyFrom(from); return *this; } - inline TransactionStmt& operator=(TransactionStmt&& from) noexcept { + inline DropStmt& operator=(DropStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -31223,208 +36365,228 @@ class TransactionStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const TransactionStmt& default_instance() { + static const DropStmt& default_instance() { return *internal_default_instance(); } - static inline const TransactionStmt* internal_default_instance() { - return reinterpret_cast( - &_TransactionStmt_default_instance_); + static inline const DropStmt* internal_default_instance() { + return reinterpret_cast( + &_DropStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 97; + 186; - friend void swap(TransactionStmt& a, TransactionStmt& b) { + friend void swap(DropStmt& a, DropStmt& b) { a.Swap(&b); } - inline void Swap(TransactionStmt* other) { + inline void Swap(DropStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(TransactionStmt* other) { + void UnsafeArenaSwap(DropStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - TransactionStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + DropStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const TransactionStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const TransactionStmt& from) { - TransactionStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DropStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DropStmt& from) { + DropStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(TransactionStmt* other); + void InternalSwap(DropStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.TransactionStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DropStmt"; } protected: - explicit TransactionStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit DropStmt(::google::protobuf::Arena* arena); + DropStmt(::google::protobuf::Arena* arena, const DropStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kSavepointNameFieldNumber = 3, - kGidFieldNumber = 4, - kKindFieldNumber = 1, - kChainFieldNumber = 5, + kObjectsFieldNumber = 1, + kRemoveTypeFieldNumber = 2, + kBehaviorFieldNumber = 3, + kMissingOkFieldNumber = 4, + kConcurrentFieldNumber = 5, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; + // repeated .pg_query.Node objects = 1 [json_name = "objects"]; + int objects_size() const; private: - int _internal_options_size() const; + int _internal_objects_size() const; + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_objects() ; + ::pg_query::Node* mutable_objects(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_objects(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_objects() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_objects(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + const ::pg_query::Node& objects(int index) const; + ::pg_query::Node* add_objects(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + objects() const; + // .pg_query.ObjectType remove_type = 2 [json_name = "removeType"]; + void clear_remove_type() ; + ::pg_query::ObjectType remove_type() const; + void set_remove_type(::pg_query::ObjectType value); - // string savepoint_name = 3 [json_name = "savepoint_name"]; - void clear_savepoint_name(); - const std::string& savepoint_name() const; - template - void set_savepoint_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_savepoint_name(); - PROTOBUF_NODISCARD std::string* release_savepoint_name(); - void set_allocated_savepoint_name(std::string* savepoint_name); private: - const std::string& _internal_savepoint_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_savepoint_name(const std::string& value); - std::string* _internal_mutable_savepoint_name(); + ::pg_query::ObjectType _internal_remove_type() const; + void _internal_set_remove_type(::pg_query::ObjectType value); + public: + // .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; + void clear_behavior() ; + ::pg_query::DropBehavior behavior() const; + void set_behavior(::pg_query::DropBehavior value); - // string gid = 4 [json_name = "gid"]; - void clear_gid(); - const std::string& gid() const; - template - void set_gid(ArgT0&& arg0, ArgT... args); - std::string* mutable_gid(); - PROTOBUF_NODISCARD std::string* release_gid(); - void set_allocated_gid(std::string* gid); private: - const std::string& _internal_gid() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_gid(const std::string& value); - std::string* _internal_mutable_gid(); + ::pg_query::DropBehavior _internal_behavior() const; + void _internal_set_behavior(::pg_query::DropBehavior value); + public: + // bool missing_ok = 4 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // .pg_query.TransactionStmtKind kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::TransactionStmtKind kind() const; - void set_kind(::pg_query::TransactionStmtKind value); private: - ::pg_query::TransactionStmtKind _internal_kind() const; - void _internal_set_kind(::pg_query::TransactionStmtKind value); + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); + public: + // bool concurrent = 5 [json_name = "concurrent"]; + void clear_concurrent() ; + bool concurrent() const; + void set_concurrent(bool value); - // bool chain = 5 [json_name = "chain"]; - void clear_chain(); - bool chain() const; - void set_chain(bool value); private: - bool _internal_chain() const; - void _internal_set_chain(bool value); - public: + bool _internal_concurrent() const; + void _internal_set_concurrent(bool value); - // @@protoc_insertion_point(class_scope:pg_query.TransactionStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.DropStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr savepoint_name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr gid_; - int kind_; - bool chain_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > objects_; + int remove_type_; + int behavior_; + bool missing_ok_; + bool concurrent_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ViewStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ViewStmt) */ { +class DropdbStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.DropdbStmt) */ { public: - inline ViewStmt() : ViewStmt(nullptr) {} - ~ViewStmt() override; - explicit PROTOBUF_CONSTEXPR ViewStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline DropdbStmt() : DropdbStmt(nullptr) {} + ~DropdbStmt() override; + template + explicit PROTOBUF_CONSTEXPR DropdbStmt(::google::protobuf::internal::ConstantInitialized); - ViewStmt(const ViewStmt& from); - ViewStmt(ViewStmt&& from) noexcept - : ViewStmt() { + inline DropdbStmt(const DropdbStmt& from) + : DropdbStmt(nullptr, from) {} + DropdbStmt(DropdbStmt&& from) noexcept + : DropdbStmt() { *this = ::std::move(from); } - inline ViewStmt& operator=(const ViewStmt& from) { + inline DropdbStmt& operator=(const DropdbStmt& from) { CopyFrom(from); return *this; } - inline ViewStmt& operator=(ViewStmt&& from) noexcept { + inline DropdbStmt& operator=(DropdbStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -31434,236 +36596,210 @@ class ViewStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ViewStmt& default_instance() { + static const DropdbStmt& default_instance() { return *internal_default_instance(); } - static inline const ViewStmt* internal_default_instance() { - return reinterpret_cast( - &_ViewStmt_default_instance_); + static inline const DropdbStmt* internal_default_instance() { + return reinterpret_cast( + &_DropdbStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 98; + 225; - friend void swap(ViewStmt& a, ViewStmt& b) { + friend void swap(DropdbStmt& a, DropdbStmt& b) { a.Swap(&b); } - inline void Swap(ViewStmt* other) { + inline void Swap(DropdbStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ViewStmt* other) { + void UnsafeArenaSwap(DropdbStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ViewStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + DropdbStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ViewStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ViewStmt& from) { - ViewStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const DropdbStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const DropdbStmt& from) { + DropdbStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ViewStmt* other); + void InternalSwap(DropdbStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ViewStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.DropdbStmt"; } protected: - explicit ViewStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit DropdbStmt(::google::protobuf::Arena* arena); + DropdbStmt(::google::protobuf::Arena* arena, const DropdbStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kAliasesFieldNumber = 2, - kOptionsFieldNumber = 5, - kViewFieldNumber = 1, - kQueryFieldNumber = 3, - kReplaceFieldNumber = 4, - kWithCheckOptionFieldNumber = 6, + kOptionsFieldNumber = 3, + kDbnameFieldNumber = 1, + kMissingOkFieldNumber = 2, }; - // repeated .pg_query.Node aliases = 2 [json_name = "aliases"]; - int aliases_size() const; - private: - int _internal_aliases_size() const; - public: - void clear_aliases(); - ::pg_query::Node* mutable_aliases(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_aliases(); - private: - const ::pg_query::Node& _internal_aliases(int index) const; - ::pg_query::Node* _internal_add_aliases(); - public: - const ::pg_query::Node& aliases(int index) const; - ::pg_query::Node* add_aliases(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - aliases() const; - - // repeated .pg_query.Node options = 5 [json_name = "options"]; + // repeated .pg_query.Node options = 3 [json_name = "options"]; int options_size() const; private: int _internal_options_size() const; + public: - void clear_options(); + void clear_options() ; ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_options(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: const ::pg_query::Node& options(int index) const; ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& options() const; + // string dbname = 1 [json_name = "dbname"]; + void clear_dbname() ; + const std::string& dbname() const; + template + void set_dbname(Arg_&& arg, Args_... args); + std::string* mutable_dbname(); + PROTOBUF_NODISCARD std::string* release_dbname(); + void set_allocated_dbname(std::string* value); - // .pg_query.RangeVar view = 1 [json_name = "view"]; - bool has_view() const; - private: - bool _internal_has_view() const; - public: - void clear_view(); - const ::pg_query::RangeVar& view() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_view(); - ::pg_query::RangeVar* mutable_view(); - void set_allocated_view(::pg_query::RangeVar* view); private: - const ::pg_query::RangeVar& _internal_view() const; - ::pg_query::RangeVar* _internal_mutable_view(); - public: - void unsafe_arena_set_allocated_view( - ::pg_query::RangeVar* view); - ::pg_query::RangeVar* unsafe_arena_release_view(); + const std::string& _internal_dbname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname( + const std::string& value); + std::string* _internal_mutable_dbname(); - // .pg_query.Node query = 3 [json_name = "query"]; - bool has_query() const; - private: - bool _internal_has_query() const; - public: - void clear_query(); - const ::pg_query::Node& query() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_query(); - ::pg_query::Node* mutable_query(); - void set_allocated_query(::pg_query::Node* query); - private: - const ::pg_query::Node& _internal_query() const; - ::pg_query::Node* _internal_mutable_query(); public: - void unsafe_arena_set_allocated_query( - ::pg_query::Node* query); - ::pg_query::Node* unsafe_arena_release_query(); + // bool missing_ok = 2 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // bool replace = 4 [json_name = "replace"]; - void clear_replace(); - bool replace() const; - void set_replace(bool value); private: - bool _internal_replace() const; - void _internal_set_replace(bool value); - public: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); - // .pg_query.ViewCheckOption with_check_option = 6 [json_name = "withCheckOption"]; - void clear_with_check_option(); - ::pg_query::ViewCheckOption with_check_option() const; - void set_with_check_option(::pg_query::ViewCheckOption value); - private: - ::pg_query::ViewCheckOption _internal_with_check_option() const; - void _internal_set_with_check_option(::pg_query::ViewCheckOption value); public: - - // @@protoc_insertion_point(class_scope:pg_query.ViewStmt) + // @@protoc_insertion_point(class_scope:pg_query.DropdbStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 34, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > aliases_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::pg_query::RangeVar* view_; - ::pg_query::Node* query_; - bool replace_; - int with_check_option_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr dbname_; + bool missing_ok_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class LoadStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.LoadStmt) */ { +class ExecuteStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ExecuteStmt) */ { public: - inline LoadStmt() : LoadStmt(nullptr) {} - ~LoadStmt() override; - explicit PROTOBUF_CONSTEXPR LoadStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ExecuteStmt() : ExecuteStmt(nullptr) {} + ~ExecuteStmt() override; + template + explicit PROTOBUF_CONSTEXPR ExecuteStmt(::google::protobuf::internal::ConstantInitialized); - LoadStmt(const LoadStmt& from); - LoadStmt(LoadStmt&& from) noexcept - : LoadStmt() { + inline ExecuteStmt(const ExecuteStmt& from) + : ExecuteStmt(nullptr, from) {} + ExecuteStmt(ExecuteStmt&& from) noexcept + : ExecuteStmt() { *this = ::std::move(from); } - inline LoadStmt& operator=(const LoadStmt& from) { + inline ExecuteStmt& operator=(const ExecuteStmt& from) { CopyFrom(from); return *this; } - inline LoadStmt& operator=(LoadStmt&& from) noexcept { + inline ExecuteStmt& operator=(ExecuteStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -31673,150 +36809,198 @@ class LoadStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const LoadStmt& default_instance() { + static const ExecuteStmt& default_instance() { return *internal_default_instance(); } - static inline const LoadStmt* internal_default_instance() { - return reinterpret_cast( - &_LoadStmt_default_instance_); + static inline const ExecuteStmt* internal_default_instance() { + return reinterpret_cast( + &_ExecuteStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 99; + 242; - friend void swap(LoadStmt& a, LoadStmt& b) { + friend void swap(ExecuteStmt& a, ExecuteStmt& b) { a.Swap(&b); } - inline void Swap(LoadStmt* other) { + inline void Swap(ExecuteStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(LoadStmt* other) { + void UnsafeArenaSwap(ExecuteStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - LoadStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ExecuteStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const LoadStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const LoadStmt& from) { - LoadStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ExecuteStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ExecuteStmt& from) { + ExecuteStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(LoadStmt* other); + void InternalSwap(ExecuteStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.LoadStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ExecuteStmt"; } protected: - explicit LoadStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ExecuteStmt(::google::protobuf::Arena* arena); + ExecuteStmt(::google::protobuf::Arena* arena, const ExecuteStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kFilenameFieldNumber = 1, + kParamsFieldNumber = 2, + kNameFieldNumber = 1, }; - // string filename = 1 [json_name = "filename"]; - void clear_filename(); - const std::string& filename() const; - template - void set_filename(ArgT0&& arg0, ArgT... args); - std::string* mutable_filename(); - PROTOBUF_NODISCARD std::string* release_filename(); - void set_allocated_filename(std::string* filename); + // repeated .pg_query.Node params = 2 [json_name = "params"]; + int params_size() const; private: - const std::string& _internal_filename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_filename(const std::string& value); - std::string* _internal_mutable_filename(); + int _internal_params_size() const; + + public: + void clear_params() ; + ::pg_query::Node* mutable_params(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_params(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_params() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_params(); public: + const ::pg_query::Node& params(int index) const; + ::pg_query::Node* add_params(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + params() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // @@protoc_insertion_point(class_scope:pg_query.LoadStmt) + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + + public: + // @@protoc_insertion_point(class_scope:pg_query.ExecuteStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 33, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr filename_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > params_; + ::google::protobuf::internal::ArenaStringPtr name_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateDomainStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateDomainStmt) */ { +class ExplainStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ExplainStmt) */ { public: - inline CreateDomainStmt() : CreateDomainStmt(nullptr) {} - ~CreateDomainStmt() override; - explicit PROTOBUF_CONSTEXPR CreateDomainStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ExplainStmt() : ExplainStmt(nullptr) {} + ~ExplainStmt() override; + template + explicit PROTOBUF_CONSTEXPR ExplainStmt(::google::protobuf::internal::ConstantInitialized); - CreateDomainStmt(const CreateDomainStmt& from); - CreateDomainStmt(CreateDomainStmt&& from) noexcept - : CreateDomainStmt() { + inline ExplainStmt(const ExplainStmt& from) + : ExplainStmt(nullptr, from) {} + ExplainStmt(ExplainStmt&& from) noexcept + : ExplainStmt() { *this = ::std::move(from); } - inline CreateDomainStmt& operator=(const CreateDomainStmt& from) { + inline ExplainStmt& operator=(const ExplainStmt& from) { CopyFrom(from); return *this; } - inline CreateDomainStmt& operator=(CreateDomainStmt&& from) noexcept { + inline ExplainStmt& operator=(ExplainStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -31826,214 +37010,198 @@ class CreateDomainStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateDomainStmt& default_instance() { + static const ExplainStmt& default_instance() { return *internal_default_instance(); } - static inline const CreateDomainStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateDomainStmt_default_instance_); + static inline const ExplainStmt* internal_default_instance() { + return reinterpret_cast( + &_ExplainStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 100; + 230; - friend void swap(CreateDomainStmt& a, CreateDomainStmt& b) { + friend void swap(ExplainStmt& a, ExplainStmt& b) { a.Swap(&b); } - inline void Swap(CreateDomainStmt* other) { + inline void Swap(ExplainStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateDomainStmt* other) { + void UnsafeArenaSwap(ExplainStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateDomainStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ExplainStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateDomainStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateDomainStmt& from) { - CreateDomainStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ExplainStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ExplainStmt& from) { + ExplainStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateDomainStmt* other); + void InternalSwap(ExplainStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateDomainStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ExplainStmt"; } protected: - explicit CreateDomainStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ExplainStmt(::google::protobuf::Arena* arena); + ExplainStmt(::google::protobuf::Arena* arena, const ExplainStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kDomainnameFieldNumber = 1, - kConstraintsFieldNumber = 4, - kTypeNameFieldNumber = 2, - kCollClauseFieldNumber = 3, + kOptionsFieldNumber = 2, + kQueryFieldNumber = 1, }; - // repeated .pg_query.Node domainname = 1 [json_name = "domainname"]; - int domainname_size() const; - private: - int _internal_domainname_size() const; - public: - void clear_domainname(); - ::pg_query::Node* mutable_domainname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_domainname(); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_domainname(int index) const; - ::pg_query::Node* _internal_add_domainname(); - public: - const ::pg_query::Node& domainname(int index) const; - ::pg_query::Node* add_domainname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - domainname() const; + int _internal_options_size() const; - // repeated .pg_query.Node constraints = 4 [json_name = "constraints"]; - int constraints_size() const; - private: - int _internal_constraints_size() const; public: - void clear_constraints(); - ::pg_query::Node* mutable_constraints(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_constraints(); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::Node& _internal_constraints(int index) const; - ::pg_query::Node* _internal_add_constraints(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - const ::pg_query::Node& constraints(int index) const; - ::pg_query::Node* add_constraints(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - constraints() const; + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // .pg_query.Node query = 1 [json_name = "query"]; + bool has_query() const; + void clear_query() ; + const ::pg_query::Node& query() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_query(); + ::pg_query::Node* mutable_query(); + void set_allocated_query(::pg_query::Node* value); + void unsafe_arena_set_allocated_query(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_query(); - // .pg_query.TypeName type_name = 2 [json_name = "typeName"]; - bool has_type_name() const; - private: - bool _internal_has_type_name() const; - public: - void clear_type_name(); - const ::pg_query::TypeName& type_name() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); - ::pg_query::TypeName* mutable_type_name(); - void set_allocated_type_name(::pg_query::TypeName* type_name); private: - const ::pg_query::TypeName& _internal_type_name() const; - ::pg_query::TypeName* _internal_mutable_type_name(); - public: - void unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name); - ::pg_query::TypeName* unsafe_arena_release_type_name(); + const ::pg_query::Node& _internal_query() const; + ::pg_query::Node* _internal_mutable_query(); - // .pg_query.CollateClause coll_clause = 3 [json_name = "collClause"]; - bool has_coll_clause() const; - private: - bool _internal_has_coll_clause() const; - public: - void clear_coll_clause(); - const ::pg_query::CollateClause& coll_clause() const; - PROTOBUF_NODISCARD ::pg_query::CollateClause* release_coll_clause(); - ::pg_query::CollateClause* mutable_coll_clause(); - void set_allocated_coll_clause(::pg_query::CollateClause* coll_clause); - private: - const ::pg_query::CollateClause& _internal_coll_clause() const; - ::pg_query::CollateClause* _internal_mutable_coll_clause(); public: - void unsafe_arena_set_allocated_coll_clause( - ::pg_query::CollateClause* coll_clause); - ::pg_query::CollateClause* unsafe_arena_release_coll_clause(); - - // @@protoc_insertion_point(class_scope:pg_query.CreateDomainStmt) + // @@protoc_insertion_point(class_scope:pg_query.ExplainStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > domainname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > constraints_; - ::pg_query::TypeName* type_name_; - ::pg_query::CollateClause* coll_clause_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::pg_query::Node* query_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreatedbStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreatedbStmt) */ { +class FieldSelect final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.FieldSelect) */ { public: - inline CreatedbStmt() : CreatedbStmt(nullptr) {} - ~CreatedbStmt() override; - explicit PROTOBUF_CONSTEXPR CreatedbStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline FieldSelect() : FieldSelect(nullptr) {} + ~FieldSelect() override; + template + explicit PROTOBUF_CONSTEXPR FieldSelect(::google::protobuf::internal::ConstantInitialized); - CreatedbStmt(const CreatedbStmt& from); - CreatedbStmt(CreatedbStmt&& from) noexcept - : CreatedbStmt() { + inline FieldSelect(const FieldSelect& from) + : FieldSelect(nullptr, from) {} + FieldSelect(FieldSelect&& from) noexcept + : FieldSelect() { *this = ::std::move(from); } - inline CreatedbStmt& operator=(const CreatedbStmt& from) { + inline FieldSelect& operator=(const FieldSelect& from) { CopyFrom(from); return *this; } - inline CreatedbStmt& operator=(CreatedbStmt&& from) noexcept { + inline FieldSelect& operator=(FieldSelect&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -32043,170 +37211,243 @@ class CreatedbStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreatedbStmt& default_instance() { + static const FieldSelect& default_instance() { return *internal_default_instance(); } - static inline const CreatedbStmt* internal_default_instance() { - return reinterpret_cast( - &_CreatedbStmt_default_instance_); + static inline const FieldSelect* internal_default_instance() { + return reinterpret_cast( + &_FieldSelect_default_instance_); } static constexpr int kIndexInFileMessages = - 101; + 32; - friend void swap(CreatedbStmt& a, CreatedbStmt& b) { + friend void swap(FieldSelect& a, FieldSelect& b) { a.Swap(&b); } - inline void Swap(CreatedbStmt* other) { + inline void Swap(FieldSelect* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreatedbStmt* other) { + void UnsafeArenaSwap(FieldSelect* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreatedbStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + FieldSelect* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreatedbStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreatedbStmt& from) { - CreatedbStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const FieldSelect& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const FieldSelect& from) { + FieldSelect::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreatedbStmt* other); + void InternalSwap(FieldSelect* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreatedbStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.FieldSelect"; } protected: - explicit CreatedbStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit FieldSelect(::google::protobuf::Arena* arena); + FieldSelect(::google::protobuf::Arena* arena, const FieldSelect& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kDbnameFieldNumber = 1, + kXprFieldNumber = 1, + kArgFieldNumber = 2, + kFieldnumFieldNumber = 3, + kResulttypeFieldNumber = 4, + kResulttypmodFieldNumber = 5, + kResultcollidFieldNumber = 6, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: - int _internal_options_size() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.Node arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); + private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + // int32 fieldnum = 3 [json_name = "fieldnum"]; + void clear_fieldnum() ; + ::int32_t fieldnum() const; + void set_fieldnum(::int32_t value); - // string dbname = 1 [json_name = "dbname"]; - void clear_dbname(); - const std::string& dbname() const; - template - void set_dbname(ArgT0&& arg0, ArgT... args); - std::string* mutable_dbname(); - PROTOBUF_NODISCARD std::string* release_dbname(); - void set_allocated_dbname(std::string* dbname); private: - const std::string& _internal_dbname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname(const std::string& value); - std::string* _internal_mutable_dbname(); + ::int32_t _internal_fieldnum() const; + void _internal_set_fieldnum(::int32_t value); + public: + // uint32 resulttype = 4 [json_name = "resulttype"]; + void clear_resulttype() ; + ::uint32_t resulttype() const; + void set_resulttype(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CreatedbStmt) + private: + ::uint32_t _internal_resulttype() const; + void _internal_set_resulttype(::uint32_t value); + + public: + // int32 resulttypmod = 5 [json_name = "resulttypmod"]; + void clear_resulttypmod() ; + ::int32_t resulttypmod() const; + void set_resulttypmod(::int32_t value); + + private: + ::int32_t _internal_resulttypmod() const; + void _internal_set_resulttypmod(::int32_t value); + + public: + // uint32 resultcollid = 6 [json_name = "resultcollid"]; + void clear_resultcollid() ; + ::uint32_t resultcollid() const; + void set_resultcollid(::uint32_t value); + + private: + ::uint32_t _internal_resultcollid() const; + void _internal_set_resultcollid(::uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.FieldSelect) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr dbname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* xpr_; + ::pg_query::Node* arg_; + ::int32_t fieldnum_; + ::uint32_t resulttype_; + ::int32_t resulttypmod_; + ::uint32_t resultcollid_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DropdbStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DropdbStmt) */ { +class FieldStore final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.FieldStore) */ { public: - inline DropdbStmt() : DropdbStmt(nullptr) {} - ~DropdbStmt() override; - explicit PROTOBUF_CONSTEXPR DropdbStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline FieldStore() : FieldStore(nullptr) {} + ~FieldStore() override; + template + explicit PROTOBUF_CONSTEXPR FieldStore(::google::protobuf::internal::ConstantInitialized); - DropdbStmt(const DropdbStmt& from); - DropdbStmt(DropdbStmt&& from) noexcept - : DropdbStmt() { + inline FieldStore(const FieldStore& from) + : FieldStore(nullptr, from) {} + FieldStore(FieldStore&& from) noexcept + : FieldStore() { *this = ::std::move(from); } - inline DropdbStmt& operator=(const DropdbStmt& from) { + inline FieldStore& operator=(const FieldStore& from) { CopyFrom(from); return *this; } - inline DropdbStmt& operator=(DropdbStmt&& from) noexcept { + inline FieldStore& operator=(FieldStore&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -32216,181 +37457,247 @@ class DropdbStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DropdbStmt& default_instance() { + static const FieldStore& default_instance() { return *internal_default_instance(); } - static inline const DropdbStmt* internal_default_instance() { - return reinterpret_cast( - &_DropdbStmt_default_instance_); + static inline const FieldStore* internal_default_instance() { + return reinterpret_cast( + &_FieldStore_default_instance_); } static constexpr int kIndexInFileMessages = - 102; + 33; - friend void swap(DropdbStmt& a, DropdbStmt& b) { + friend void swap(FieldStore& a, FieldStore& b) { a.Swap(&b); } - inline void Swap(DropdbStmt* other) { + inline void Swap(FieldStore* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DropdbStmt* other) { + void UnsafeArenaSwap(FieldStore* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DropdbStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + FieldStore* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DropdbStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DropdbStmt& from) { - DropdbStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const FieldStore& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const FieldStore& from) { + FieldStore::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DropdbStmt* other); + void InternalSwap(FieldStore* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DropdbStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.FieldStore"; } protected: - explicit DropdbStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit FieldStore(::google::protobuf::Arena* arena); + FieldStore(::google::protobuf::Arena* arena, const FieldStore& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 3, - kDbnameFieldNumber = 1, - kMissingOkFieldNumber = 2, + kNewvalsFieldNumber = 3, + kFieldnumsFieldNumber = 4, + kXprFieldNumber = 1, + kArgFieldNumber = 2, + kResulttypeFieldNumber = 5, }; - // repeated .pg_query.Node options = 3 [json_name = "options"]; - int options_size() const; + // repeated .pg_query.Node newvals = 3 [json_name = "newvals"]; + int newvals_size() const; private: - int _internal_options_size() const; + int _internal_newvals_size() const; + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_newvals() ; + ::pg_query::Node* mutable_newvals(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_newvals(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_newvals() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_newvals(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + const ::pg_query::Node& newvals(int index) const; + ::pg_query::Node* add_newvals(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + newvals() const; + // repeated .pg_query.Node fieldnums = 4 [json_name = "fieldnums"]; + int fieldnums_size() const; + private: + int _internal_fieldnums_size() const; + + public: + void clear_fieldnums() ; + ::pg_query::Node* mutable_fieldnums(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_fieldnums(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_fieldnums() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_fieldnums(); + public: + const ::pg_query::Node& fieldnums(int index) const; + ::pg_query::Node* add_fieldnums(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + fieldnums() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + + private: + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + + public: + // .pg_query.Node arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); - // string dbname = 1 [json_name = "dbname"]; - void clear_dbname(); - const std::string& dbname() const; - template - void set_dbname(ArgT0&& arg0, ArgT... args); - std::string* mutable_dbname(); - PROTOBUF_NODISCARD std::string* release_dbname(); - void set_allocated_dbname(std::string* dbname); private: - const std::string& _internal_dbname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname(const std::string& value); - std::string* _internal_mutable_dbname(); + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + public: + // uint32 resulttype = 5 [json_name = "resulttype"]; + void clear_resulttype() ; + ::uint32_t resulttype() const; + void set_resulttype(::uint32_t value); - // bool missing_ok = 2 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); - public: + ::uint32_t _internal_resulttype() const; + void _internal_set_resulttype(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.DropdbStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.FieldStore) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr dbname_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > newvals_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > fieldnums_; + ::pg_query::Node* xpr_; + ::pg_query::Node* arg_; + ::uint32_t resulttype_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class VacuumStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.VacuumStmt) */ { +class FromExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.FromExpr) */ { public: - inline VacuumStmt() : VacuumStmt(nullptr) {} - ~VacuumStmt() override; - explicit PROTOBUF_CONSTEXPR VacuumStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline FromExpr() : FromExpr(nullptr) {} + ~FromExpr() override; + template + explicit PROTOBUF_CONSTEXPR FromExpr(::google::protobuf::internal::ConstantInitialized); - VacuumStmt(const VacuumStmt& from); - VacuumStmt(VacuumStmt&& from) noexcept - : VacuumStmt() { + inline FromExpr(const FromExpr& from) + : FromExpr(nullptr, from) {} + FromExpr(FromExpr&& from) noexcept + : FromExpr() { *this = ::std::move(from); } - inline VacuumStmt& operator=(const VacuumStmt& from) { + inline FromExpr& operator=(const FromExpr& from) { CopyFrom(from); return *this; } - inline VacuumStmt& operator=(VacuumStmt&& from) noexcept { + inline FromExpr& operator=(FromExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -32400,185 +37707,198 @@ class VacuumStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const VacuumStmt& default_instance() { + static const FromExpr& default_instance() { return *internal_default_instance(); } - static inline const VacuumStmt* internal_default_instance() { - return reinterpret_cast( - &_VacuumStmt_default_instance_); + static inline const FromExpr* internal_default_instance() { + return reinterpret_cast( + &_FromExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 103; + 65; - friend void swap(VacuumStmt& a, VacuumStmt& b) { + friend void swap(FromExpr& a, FromExpr& b) { a.Swap(&b); } - inline void Swap(VacuumStmt* other) { + inline void Swap(FromExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(VacuumStmt* other) { + void UnsafeArenaSwap(FromExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - VacuumStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + FromExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const VacuumStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const VacuumStmt& from) { - VacuumStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const FromExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const FromExpr& from) { + FromExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(VacuumStmt* other); + void InternalSwap(FromExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.VacuumStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.FromExpr"; } protected: - explicit VacuumStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit FromExpr(::google::protobuf::Arena* arena); + FromExpr(::google::protobuf::Arena* arena, const FromExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 1, - kRelsFieldNumber = 2, - kIsVacuumcmdFieldNumber = 3, + kFromlistFieldNumber = 1, + kQualsFieldNumber = 2, }; - // repeated .pg_query.Node options = 1 [json_name = "options"]; - int options_size() const; - private: - int _internal_options_size() const; - public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // repeated .pg_query.Node fromlist = 1 [json_name = "fromlist"]; + int fromlist_size() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); - public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + int _internal_fromlist_size() const; - // repeated .pg_query.Node rels = 2 [json_name = "rels"]; - int rels_size() const; - private: - int _internal_rels_size() const; public: - void clear_rels(); - ::pg_query::Node* mutable_rels(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_rels(); + void clear_fromlist() ; + ::pg_query::Node* mutable_fromlist(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_fromlist(); private: - const ::pg_query::Node& _internal_rels(int index) const; - ::pg_query::Node* _internal_add_rels(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_fromlist() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_fromlist(); public: - const ::pg_query::Node& rels(int index) const; - ::pg_query::Node* add_rels(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - rels() const; + const ::pg_query::Node& fromlist(int index) const; + ::pg_query::Node* add_fromlist(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + fromlist() const; + // .pg_query.Node quals = 2 [json_name = "quals"]; + bool has_quals() const; + void clear_quals() ; + const ::pg_query::Node& quals() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_quals(); + ::pg_query::Node* mutable_quals(); + void set_allocated_quals(::pg_query::Node* value); + void unsafe_arena_set_allocated_quals(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_quals(); - // bool is_vacuumcmd = 3 [json_name = "is_vacuumcmd"]; - void clear_is_vacuumcmd(); - bool is_vacuumcmd() const; - void set_is_vacuumcmd(bool value); private: - bool _internal_is_vacuumcmd() const; - void _internal_set_is_vacuumcmd(bool value); - public: + const ::pg_query::Node& _internal_quals() const; + ::pg_query::Node* _internal_mutable_quals(); - // @@protoc_insertion_point(class_scope:pg_query.VacuumStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.FromExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > rels_; - bool is_vacuumcmd_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > fromlist_; + ::pg_query::Node* quals_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ExplainStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ExplainStmt) */ { +class FuncCall final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.FuncCall) */ { public: - inline ExplainStmt() : ExplainStmt(nullptr) {} - ~ExplainStmt() override; - explicit PROTOBUF_CONSTEXPR ExplainStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline FuncCall() : FuncCall(nullptr) {} + ~FuncCall() override; + template + explicit PROTOBUF_CONSTEXPR FuncCall(::google::protobuf::internal::ConstantInitialized); - ExplainStmt(const ExplainStmt& from); - ExplainStmt(ExplainStmt&& from) noexcept - : ExplainStmt() { + inline FuncCall(const FuncCall& from) + : FuncCall(nullptr, from) {} + FuncCall(FuncCall&& from) noexcept + : FuncCall() { *this = ::std::move(from); } - inline ExplainStmt& operator=(const ExplainStmt& from) { + inline FuncCall& operator=(const FuncCall& from) { CopyFrom(from); return *this; } - inline ExplainStmt& operator=(ExplainStmt&& from) noexcept { + inline FuncCall& operator=(FuncCall&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -32588,174 +37908,327 @@ class ExplainStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ExplainStmt& default_instance() { + static const FuncCall& default_instance() { return *internal_default_instance(); } - static inline const ExplainStmt* internal_default_instance() { - return reinterpret_cast( - &_ExplainStmt_default_instance_); + static inline const FuncCall* internal_default_instance() { + return reinterpret_cast( + &_FuncCall_default_instance_); } static constexpr int kIndexInFileMessages = - 104; + 75; - friend void swap(ExplainStmt& a, ExplainStmt& b) { + friend void swap(FuncCall& a, FuncCall& b) { a.Swap(&b); } - inline void Swap(ExplainStmt* other) { + inline void Swap(FuncCall* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ExplainStmt* other) { + void UnsafeArenaSwap(FuncCall* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ExplainStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + FuncCall* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ExplainStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ExplainStmt& from) { - ExplainStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const FuncCall& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const FuncCall& from) { + FuncCall::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ExplainStmt* other); + void InternalSwap(FuncCall* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ExplainStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.FuncCall"; } protected: - explicit ExplainStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit FuncCall(::google::protobuf::Arena* arena); + FuncCall(::google::protobuf::Arena* arena, const FuncCall& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kQueryFieldNumber = 1, + kFuncnameFieldNumber = 1, + kArgsFieldNumber = 2, + kAggOrderFieldNumber = 3, + kAggFilterFieldNumber = 4, + kOverFieldNumber = 5, + kAggWithinGroupFieldNumber = 6, + kAggStarFieldNumber = 7, + kAggDistinctFieldNumber = 8, + kFuncVariadicFieldNumber = 9, + kFuncformatFieldNumber = 10, + kLocationFieldNumber = 11, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; + // repeated .pg_query.Node funcname = 1 [json_name = "funcname"]; + int funcname_size() const; private: - int _internal_options_size() const; + int _internal_funcname_size() const; + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_funcname() ; + ::pg_query::Node* mutable_funcname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_funcname(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_funcname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_funcname(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + const ::pg_query::Node& funcname(int index) const; + ::pg_query::Node* add_funcname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + funcname() const; + // repeated .pg_query.Node args = 2 [json_name = "args"]; + int args_size() const; + private: + int _internal_args_size() const; - // .pg_query.Node query = 1 [json_name = "query"]; - bool has_query() const; + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - bool _internal_has_query() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - void clear_query(); - const ::pg_query::Node& query() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_query(); - ::pg_query::Node* mutable_query(); - void set_allocated_query(::pg_query::Node* query); + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // repeated .pg_query.Node agg_order = 3 [json_name = "agg_order"]; + int agg_order_size() const; private: - const ::pg_query::Node& _internal_query() const; - ::pg_query::Node* _internal_mutable_query(); + int _internal_agg_order_size() const; + public: - void unsafe_arena_set_allocated_query( - ::pg_query::Node* query); - ::pg_query::Node* unsafe_arena_release_query(); + void clear_agg_order() ; + ::pg_query::Node* mutable_agg_order(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_agg_order(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_agg_order() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_agg_order(); + public: + const ::pg_query::Node& agg_order(int index) const; + ::pg_query::Node* add_agg_order(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + agg_order() const; + // .pg_query.Node agg_filter = 4 [json_name = "agg_filter"]; + bool has_agg_filter() const; + void clear_agg_filter() ; + const ::pg_query::Node& agg_filter() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_agg_filter(); + ::pg_query::Node* mutable_agg_filter(); + void set_allocated_agg_filter(::pg_query::Node* value); + void unsafe_arena_set_allocated_agg_filter(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_agg_filter(); - // @@protoc_insertion_point(class_scope:pg_query.ExplainStmt) + private: + const ::pg_query::Node& _internal_agg_filter() const; + ::pg_query::Node* _internal_mutable_agg_filter(); + + public: + // .pg_query.WindowDef over = 5 [json_name = "over"]; + bool has_over() const; + void clear_over() ; + const ::pg_query::WindowDef& over() const; + PROTOBUF_NODISCARD ::pg_query::WindowDef* release_over(); + ::pg_query::WindowDef* mutable_over(); + void set_allocated_over(::pg_query::WindowDef* value); + void unsafe_arena_set_allocated_over(::pg_query::WindowDef* value); + ::pg_query::WindowDef* unsafe_arena_release_over(); + + private: + const ::pg_query::WindowDef& _internal_over() const; + ::pg_query::WindowDef* _internal_mutable_over(); + + public: + // bool agg_within_group = 6 [json_name = "agg_within_group"]; + void clear_agg_within_group() ; + bool agg_within_group() const; + void set_agg_within_group(bool value); + + private: + bool _internal_agg_within_group() const; + void _internal_set_agg_within_group(bool value); + + public: + // bool agg_star = 7 [json_name = "agg_star"]; + void clear_agg_star() ; + bool agg_star() const; + void set_agg_star(bool value); + + private: + bool _internal_agg_star() const; + void _internal_set_agg_star(bool value); + + public: + // bool agg_distinct = 8 [json_name = "agg_distinct"]; + void clear_agg_distinct() ; + bool agg_distinct() const; + void set_agg_distinct(bool value); + + private: + bool _internal_agg_distinct() const; + void _internal_set_agg_distinct(bool value); + + public: + // bool func_variadic = 9 [json_name = "func_variadic"]; + void clear_func_variadic() ; + bool func_variadic() const; + void set_func_variadic(bool value); + + private: + bool _internal_func_variadic() const; + void _internal_set_func_variadic(bool value); + + public: + // .pg_query.CoercionForm funcformat = 10 [json_name = "funcformat"]; + void clear_funcformat() ; + ::pg_query::CoercionForm funcformat() const; + void set_funcformat(::pg_query::CoercionForm value); + + private: + ::pg_query::CoercionForm _internal_funcformat() const; + void _internal_set_funcformat(::pg_query::CoercionForm value); + + public: + // int32 location = 11 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.FuncCall) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 11, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::pg_query::Node* query_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > funcname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > agg_order_; + ::pg_query::Node* agg_filter_; + ::pg_query::WindowDef* over_; + bool agg_within_group_; + bool agg_star_; + bool agg_distinct_; + bool func_variadic_; + int funcformat_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateTableAsStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateTableAsStmt) */ { +class FuncExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.FuncExpr) */ { public: - inline CreateTableAsStmt() : CreateTableAsStmt(nullptr) {} - ~CreateTableAsStmt() override; - explicit PROTOBUF_CONSTEXPR CreateTableAsStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline FuncExpr() : FuncExpr(nullptr) {} + ~FuncExpr() override; + template + explicit PROTOBUF_CONSTEXPR FuncExpr(::google::protobuf::internal::ConstantInitialized); - CreateTableAsStmt(const CreateTableAsStmt& from); - CreateTableAsStmt(CreateTableAsStmt&& from) noexcept - : CreateTableAsStmt() { + inline FuncExpr(const FuncExpr& from) + : FuncExpr(nullptr, from) {} + FuncExpr(FuncExpr&& from) noexcept + : FuncExpr() { *this = ::std::move(from); } - inline CreateTableAsStmt& operator=(const CreateTableAsStmt& from) { + inline FuncExpr& operator=(const FuncExpr& from) { CopyFrom(from); return *this; } - inline CreateTableAsStmt& operator=(CreateTableAsStmt&& from) noexcept { + inline FuncExpr& operator=(FuncExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -32765,207 +38238,294 @@ class CreateTableAsStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateTableAsStmt& default_instance() { + static const FuncExpr& default_instance() { return *internal_default_instance(); } - static inline const CreateTableAsStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateTableAsStmt_default_instance_); + static inline const FuncExpr* internal_default_instance() { + return reinterpret_cast( + &_FuncExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 105; + 22; - friend void swap(CreateTableAsStmt& a, CreateTableAsStmt& b) { + friend void swap(FuncExpr& a, FuncExpr& b) { a.Swap(&b); } - inline void Swap(CreateTableAsStmt* other) { + inline void Swap(FuncExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateTableAsStmt* other) { + void UnsafeArenaSwap(FuncExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateTableAsStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + FuncExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateTableAsStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateTableAsStmt& from) { - CreateTableAsStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const FuncExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const FuncExpr& from) { + FuncExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateTableAsStmt* other); + void InternalSwap(FuncExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateTableAsStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.FuncExpr"; } protected: - explicit CreateTableAsStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit FuncExpr(::google::protobuf::Arena* arena); + FuncExpr(::google::protobuf::Arena* arena, const FuncExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kQueryFieldNumber = 1, - kIntoFieldNumber = 2, - kObjtypeFieldNumber = 3, - kIsSelectIntoFieldNumber = 4, - kIfNotExistsFieldNumber = 5, + kArgsFieldNumber = 9, + kXprFieldNumber = 1, + kFuncidFieldNumber = 2, + kFuncresulttypeFieldNumber = 3, + kFuncretsetFieldNumber = 4, + kFuncvariadicFieldNumber = 5, + kFuncformatFieldNumber = 6, + kFunccollidFieldNumber = 7, + kInputcollidFieldNumber = 8, + kLocationFieldNumber = 10, }; - // .pg_query.Node query = 1 [json_name = "query"]; - bool has_query() const; + // repeated .pg_query.Node args = 9 [json_name = "args"]; + int args_size() const; private: - bool _internal_has_query() const; + int _internal_args_size() const; + public: - void clear_query(); - const ::pg_query::Node& query() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_query(); - ::pg_query::Node* mutable_query(); - void set_allocated_query(::pg_query::Node* query); + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const ::pg_query::Node& _internal_query() const; - ::pg_query::Node* _internal_mutable_query(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - void unsafe_arena_set_allocated_query( - ::pg_query::Node* query); - ::pg_query::Node* unsafe_arena_release_query(); + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.IntoClause into = 2 [json_name = "into"]; - bool has_into() const; private: - bool _internal_has_into() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_into(); - const ::pg_query::IntoClause& into() const; - PROTOBUF_NODISCARD ::pg_query::IntoClause* release_into(); - ::pg_query::IntoClause* mutable_into(); - void set_allocated_into(::pg_query::IntoClause* into); + // uint32 funcid = 2 [json_name = "funcid"]; + void clear_funcid() ; + ::uint32_t funcid() const; + void set_funcid(::uint32_t value); + private: - const ::pg_query::IntoClause& _internal_into() const; - ::pg_query::IntoClause* _internal_mutable_into(); + ::uint32_t _internal_funcid() const; + void _internal_set_funcid(::uint32_t value); + public: - void unsafe_arena_set_allocated_into( - ::pg_query::IntoClause* into); - ::pg_query::IntoClause* unsafe_arena_release_into(); + // uint32 funcresulttype = 3 [json_name = "funcresulttype"]; + void clear_funcresulttype() ; + ::uint32_t funcresulttype() const; + void set_funcresulttype(::uint32_t value); - // .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; - void clear_objtype(); - ::pg_query::ObjectType objtype() const; - void set_objtype(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_objtype() const; - void _internal_set_objtype(::pg_query::ObjectType value); + ::uint32_t _internal_funcresulttype() const; + void _internal_set_funcresulttype(::uint32_t value); + public: + // bool funcretset = 4 [json_name = "funcretset"]; + void clear_funcretset() ; + bool funcretset() const; + void set_funcretset(bool value); - // bool is_select_into = 4 [json_name = "is_select_into"]; - void clear_is_select_into(); - bool is_select_into() const; - void set_is_select_into(bool value); private: - bool _internal_is_select_into() const; - void _internal_set_is_select_into(bool value); + bool _internal_funcretset() const; + void _internal_set_funcretset(bool value); + public: + // bool funcvariadic = 5 [json_name = "funcvariadic"]; + void clear_funcvariadic() ; + bool funcvariadic() const; + void set_funcvariadic(bool value); - // bool if_not_exists = 5 [json_name = "if_not_exists"]; - void clear_if_not_exists(); - bool if_not_exists() const; - void set_if_not_exists(bool value); private: - bool _internal_if_not_exists() const; - void _internal_set_if_not_exists(bool value); + bool _internal_funcvariadic() const; + void _internal_set_funcvariadic(bool value); + public: + // .pg_query.CoercionForm funcformat = 6 [json_name = "funcformat"]; + void clear_funcformat() ; + ::pg_query::CoercionForm funcformat() const; + void set_funcformat(::pg_query::CoercionForm value); - // @@protoc_insertion_point(class_scope:pg_query.CreateTableAsStmt) + private: + ::pg_query::CoercionForm _internal_funcformat() const; + void _internal_set_funcformat(::pg_query::CoercionForm value); + + public: + // uint32 funccollid = 7 [json_name = "funccollid"]; + void clear_funccollid() ; + ::uint32_t funccollid() const; + void set_funccollid(::uint32_t value); + + private: + ::uint32_t _internal_funccollid() const; + void _internal_set_funccollid(::uint32_t value); + + public: + // uint32 inputcollid = 8 [json_name = "inputcollid"]; + void clear_inputcollid() ; + ::uint32_t inputcollid() const; + void set_inputcollid(::uint32_t value); + + private: + ::uint32_t _internal_inputcollid() const; + void _internal_set_inputcollid(::uint32_t value); + + public: + // int32 location = 10 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.FuncExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 10, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* query_; - ::pg_query::IntoClause* into_; - int objtype_; - bool is_select_into_; - bool if_not_exists_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* xpr_; + ::uint32_t funcid_; + ::uint32_t funcresulttype_; + bool funcretset_; + bool funcvariadic_; + int funcformat_; + ::uint32_t funccollid_; + ::uint32_t inputcollid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateSeqStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateSeqStmt) */ { +class FunctionParameter final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.FunctionParameter) */ { public: - inline CreateSeqStmt() : CreateSeqStmt(nullptr) {} - ~CreateSeqStmt() override; - explicit PROTOBUF_CONSTEXPR CreateSeqStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline FunctionParameter() : FunctionParameter(nullptr) {} + ~FunctionParameter() override; + template + explicit PROTOBUF_CONSTEXPR FunctionParameter(::google::protobuf::internal::ConstantInitialized); - CreateSeqStmt(const CreateSeqStmt& from); - CreateSeqStmt(CreateSeqStmt&& from) noexcept - : CreateSeqStmt() { + inline FunctionParameter(const FunctionParameter& from) + : FunctionParameter(nullptr, from) {} + FunctionParameter(FunctionParameter&& from) noexcept + : FunctionParameter() { *this = ::std::move(from); } - inline CreateSeqStmt& operator=(const CreateSeqStmt& from) { + inline FunctionParameter& operator=(const FunctionParameter& from) { CopyFrom(from); return *this; } - inline CreateSeqStmt& operator=(CreateSeqStmt&& from) noexcept { + inline FunctionParameter& operator=(FunctionParameter&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -32975,207 +38535,225 @@ class CreateSeqStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateSeqStmt& default_instance() { + static const FunctionParameter& default_instance() { return *internal_default_instance(); } - static inline const CreateSeqStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateSeqStmt_default_instance_); + static inline const FunctionParameter* internal_default_instance() { + return reinterpret_cast( + &_FunctionParameter_default_instance_); } static constexpr int kIndexInFileMessages = - 106; + 198; - friend void swap(CreateSeqStmt& a, CreateSeqStmt& b) { + friend void swap(FunctionParameter& a, FunctionParameter& b) { a.Swap(&b); } - inline void Swap(CreateSeqStmt* other) { + inline void Swap(FunctionParameter* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateSeqStmt* other) { + void UnsafeArenaSwap(FunctionParameter* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateSeqStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + FunctionParameter* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateSeqStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateSeqStmt& from) { - CreateSeqStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const FunctionParameter& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const FunctionParameter& from) { + FunctionParameter::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateSeqStmt* other); + void InternalSwap(FunctionParameter* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateSeqStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.FunctionParameter"; } protected: - explicit CreateSeqStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit FunctionParameter(::google::protobuf::Arena* arena); + FunctionParameter(::google::protobuf::Arena* arena, const FunctionParameter& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kSequenceFieldNumber = 1, - kOwnerIdFieldNumber = 3, - kForIdentityFieldNumber = 4, - kIfNotExistsFieldNumber = 5, + kNameFieldNumber = 1, + kArgTypeFieldNumber = 2, + kDefexprFieldNumber = 4, + kModeFieldNumber = 3, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; - private: - int _internal_options_size() const; - public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); - private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); - public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // .pg_query.RangeVar sequence = 1 [json_name = "sequence"]; - bool has_sequence() const; private: - bool _internal_has_sequence() const; - public: - void clear_sequence(); - const ::pg_query::RangeVar& sequence() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_sequence(); - ::pg_query::RangeVar* mutable_sequence(); - void set_allocated_sequence(::pg_query::RangeVar* sequence); - private: - const ::pg_query::RangeVar& _internal_sequence() const; - ::pg_query::RangeVar* _internal_mutable_sequence(); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + public: - void unsafe_arena_set_allocated_sequence( - ::pg_query::RangeVar* sequence); - ::pg_query::RangeVar* unsafe_arena_release_sequence(); + // .pg_query.TypeName arg_type = 2 [json_name = "argType"]; + bool has_arg_type() const; + void clear_arg_type() ; + const ::pg_query::TypeName& arg_type() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_arg_type(); + ::pg_query::TypeName* mutable_arg_type(); + void set_allocated_arg_type(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_arg_type(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_arg_type(); - // uint32 owner_id = 3 [json_name = "ownerId"]; - void clear_owner_id(); - uint32_t owner_id() const; - void set_owner_id(uint32_t value); private: - uint32_t _internal_owner_id() const; - void _internal_set_owner_id(uint32_t value); + const ::pg_query::TypeName& _internal_arg_type() const; + ::pg_query::TypeName* _internal_mutable_arg_type(); + public: + // .pg_query.Node defexpr = 4 [json_name = "defexpr"]; + bool has_defexpr() const; + void clear_defexpr() ; + const ::pg_query::Node& defexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_defexpr(); + ::pg_query::Node* mutable_defexpr(); + void set_allocated_defexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_defexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_defexpr(); - // bool for_identity = 4 [json_name = "for_identity"]; - void clear_for_identity(); - bool for_identity() const; - void set_for_identity(bool value); private: - bool _internal_for_identity() const; - void _internal_set_for_identity(bool value); + const ::pg_query::Node& _internal_defexpr() const; + ::pg_query::Node* _internal_mutable_defexpr(); + public: + // .pg_query.FunctionParameterMode mode = 3 [json_name = "mode"]; + void clear_mode() ; + ::pg_query::FunctionParameterMode mode() const; + void set_mode(::pg_query::FunctionParameterMode value); - // bool if_not_exists = 5 [json_name = "if_not_exists"]; - void clear_if_not_exists(); - bool if_not_exists() const; - void set_if_not_exists(bool value); private: - bool _internal_if_not_exists() const; - void _internal_set_if_not_exists(bool value); - public: + ::pg_query::FunctionParameterMode _internal_mode() const; + void _internal_set_mode(::pg_query::FunctionParameterMode value); - // @@protoc_insertion_point(class_scope:pg_query.CreateSeqStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.FunctionParameter) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 39, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::pg_query::RangeVar* sequence_; - uint32_t owner_id_; - bool for_identity_; - bool if_not_exists_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::TypeName* arg_type_; + ::pg_query::Node* defexpr_; + int mode_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterSeqStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterSeqStmt) */ { +class GrantRoleStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.GrantRoleStmt) */ { public: - inline AlterSeqStmt() : AlterSeqStmt(nullptr) {} - ~AlterSeqStmt() override; - explicit PROTOBUF_CONSTEXPR AlterSeqStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline GrantRoleStmt() : GrantRoleStmt(nullptr) {} + ~GrantRoleStmt() override; + template + explicit PROTOBUF_CONSTEXPR GrantRoleStmt(::google::protobuf::internal::ConstantInitialized); - AlterSeqStmt(const AlterSeqStmt& from); - AlterSeqStmt(AlterSeqStmt&& from) noexcept - : AlterSeqStmt() { + inline GrantRoleStmt(const GrantRoleStmt& from) + : GrantRoleStmt(nullptr, from) {} + GrantRoleStmt(GrantRoleStmt&& from) noexcept + : GrantRoleStmt() { *this = ::std::move(from); } - inline AlterSeqStmt& operator=(const AlterSeqStmt& from) { + inline GrantRoleStmt& operator=(const GrantRoleStmt& from) { CopyFrom(from); return *this; } - inline AlterSeqStmt& operator=(AlterSeqStmt&& from) noexcept { + inline GrantRoleStmt& operator=(GrantRoleStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -33185,196 +38763,262 @@ class AlterSeqStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterSeqStmt& default_instance() { + static const GrantRoleStmt& default_instance() { return *internal_default_instance(); } - static inline const AlterSeqStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterSeqStmt_default_instance_); + static inline const GrantRoleStmt* internal_default_instance() { + return reinterpret_cast( + &_GrantRoleStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 107; + 144; - friend void swap(AlterSeqStmt& a, AlterSeqStmt& b) { + friend void swap(GrantRoleStmt& a, GrantRoleStmt& b) { a.Swap(&b); } - inline void Swap(AlterSeqStmt* other) { + inline void Swap(GrantRoleStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterSeqStmt* other) { + void UnsafeArenaSwap(GrantRoleStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterSeqStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + GrantRoleStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterSeqStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterSeqStmt& from) { - AlterSeqStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const GrantRoleStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const GrantRoleStmt& from) { + GrantRoleStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterSeqStmt* other); + void InternalSwap(GrantRoleStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterSeqStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.GrantRoleStmt"; } protected: - explicit AlterSeqStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit GrantRoleStmt(::google::protobuf::Arena* arena); + GrantRoleStmt(::google::protobuf::Arena* arena, const GrantRoleStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kSequenceFieldNumber = 1, - kForIdentityFieldNumber = 3, - kMissingOkFieldNumber = 4, + kGrantedRolesFieldNumber = 1, + kGranteeRolesFieldNumber = 2, + kOptFieldNumber = 4, + kGrantorFieldNumber = 5, + kIsGrantFieldNumber = 3, + kBehaviorFieldNumber = 6, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; + // repeated .pg_query.Node granted_roles = 1 [json_name = "granted_roles"]; + int granted_roles_size() const; private: - int _internal_options_size() const; + int _internal_granted_roles_size() const; + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_granted_roles() ; + ::pg_query::Node* mutable_granted_roles(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_granted_roles(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_granted_roles() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_granted_roles(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + const ::pg_query::Node& granted_roles(int index) const; + ::pg_query::Node* add_granted_roles(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + granted_roles() const; + // repeated .pg_query.Node grantee_roles = 2 [json_name = "grantee_roles"]; + int grantee_roles_size() const; + private: + int _internal_grantee_roles_size() const; - // .pg_query.RangeVar sequence = 1 [json_name = "sequence"]; - bool has_sequence() const; + public: + void clear_grantee_roles() ; + ::pg_query::Node* mutable_grantee_roles(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_grantee_roles(); private: - bool _internal_has_sequence() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_grantee_roles() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_grantee_roles(); public: - void clear_sequence(); - const ::pg_query::RangeVar& sequence() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_sequence(); - ::pg_query::RangeVar* mutable_sequence(); - void set_allocated_sequence(::pg_query::RangeVar* sequence); + const ::pg_query::Node& grantee_roles(int index) const; + ::pg_query::Node* add_grantee_roles(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + grantee_roles() const; + // repeated .pg_query.Node opt = 4 [json_name = "opt"]; + int opt_size() const; private: - const ::pg_query::RangeVar& _internal_sequence() const; - ::pg_query::RangeVar* _internal_mutable_sequence(); + int _internal_opt_size() const; + public: - void unsafe_arena_set_allocated_sequence( - ::pg_query::RangeVar* sequence); - ::pg_query::RangeVar* unsafe_arena_release_sequence(); + void clear_opt() ; + ::pg_query::Node* mutable_opt(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opt(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opt() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opt(); + public: + const ::pg_query::Node& opt(int index) const; + ::pg_query::Node* add_opt(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opt() const; + // .pg_query.RoleSpec grantor = 5 [json_name = "grantor"]; + bool has_grantor() const; + void clear_grantor() ; + const ::pg_query::RoleSpec& grantor() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_grantor(); + ::pg_query::RoleSpec* mutable_grantor(); + void set_allocated_grantor(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_grantor(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_grantor(); - // bool for_identity = 3 [json_name = "for_identity"]; - void clear_for_identity(); - bool for_identity() const; - void set_for_identity(bool value); private: - bool _internal_for_identity() const; - void _internal_set_for_identity(bool value); + const ::pg_query::RoleSpec& _internal_grantor() const; + ::pg_query::RoleSpec* _internal_mutable_grantor(); + public: + // bool is_grant = 3 [json_name = "is_grant"]; + void clear_is_grant() ; + bool is_grant() const; + void set_is_grant(bool value); - // bool missing_ok = 4 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); + bool _internal_is_grant() const; + void _internal_set_is_grant(bool value); + public: + // .pg_query.DropBehavior behavior = 6 [json_name = "behavior"]; + void clear_behavior() ; + ::pg_query::DropBehavior behavior() const; + void set_behavior(::pg_query::DropBehavior value); - // @@protoc_insertion_point(class_scope:pg_query.AlterSeqStmt) + private: + ::pg_query::DropBehavior _internal_behavior() const; + void _internal_set_behavior(::pg_query::DropBehavior value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.GrantRoleStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::pg_query::RangeVar* sequence_; - bool for_identity_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > granted_roles_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > grantee_roles_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opt_; + ::pg_query::RoleSpec* grantor_; + bool is_grant_; + int behavior_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class VariableSetStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.VariableSetStmt) */ { +class GrantStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.GrantStmt) */ { public: - inline VariableSetStmt() : VariableSetStmt(nullptr) {} - ~VariableSetStmt() override; - explicit PROTOBUF_CONSTEXPR VariableSetStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline GrantStmt() : GrantStmt(nullptr) {} + ~GrantStmt() override; + template + explicit PROTOBUF_CONSTEXPR GrantStmt(::google::protobuf::internal::ConstantInitialized); - VariableSetStmt(const VariableSetStmt& from); - VariableSetStmt(VariableSetStmt&& from) noexcept - : VariableSetStmt() { + inline GrantStmt(const GrantStmt& from) + : GrantStmt(nullptr, from) {} + GrantStmt(GrantStmt&& from) noexcept + : GrantStmt() { *this = ::std::move(from); } - inline VariableSetStmt& operator=(const VariableSetStmt& from) { + inline GrantStmt& operator=(const GrantStmt& from) { CopyFrom(from); return *this; } - inline VariableSetStmt& operator=(VariableSetStmt&& from) noexcept { + inline GrantStmt& operator=(GrantStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -33384,192 +39028,298 @@ class VariableSetStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const VariableSetStmt& default_instance() { + static const GrantStmt& default_instance() { return *internal_default_instance(); } - static inline const VariableSetStmt* internal_default_instance() { - return reinterpret_cast( - &_VariableSetStmt_default_instance_); + static inline const GrantStmt* internal_default_instance() { + return reinterpret_cast( + &_GrantStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 108; + 141; - friend void swap(VariableSetStmt& a, VariableSetStmt& b) { + friend void swap(GrantStmt& a, GrantStmt& b) { a.Swap(&b); } - inline void Swap(VariableSetStmt* other) { + inline void Swap(GrantStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(VariableSetStmt* other) { + void UnsafeArenaSwap(GrantStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - VariableSetStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + GrantStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const VariableSetStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const VariableSetStmt& from) { - VariableSetStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const GrantStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const GrantStmt& from) { + GrantStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(VariableSetStmt* other); + void InternalSwap(GrantStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.VariableSetStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.GrantStmt"; } protected: - explicit VariableSetStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit GrantStmt(::google::protobuf::Arena* arena); + GrantStmt(::google::protobuf::Arena* arena, const GrantStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 3, - kNameFieldNumber = 2, - kKindFieldNumber = 1, - kIsLocalFieldNumber = 4, + kObjectsFieldNumber = 4, + kPrivilegesFieldNumber = 5, + kGranteesFieldNumber = 6, + kGrantorFieldNumber = 8, + kTargtypeFieldNumber = 2, + kObjtypeFieldNumber = 3, + kIsGrantFieldNumber = 1, + kGrantOptionFieldNumber = 7, + kBehaviorFieldNumber = 9, }; - // repeated .pg_query.Node args = 3 [json_name = "args"]; - int args_size() const; + // repeated .pg_query.Node objects = 4 [json_name = "objects"]; + int objects_size() const; private: - int _internal_args_size() const; + int _internal_objects_size() const; + public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); + void clear_objects() ; + ::pg_query::Node* mutable_objects(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_objects(); private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_objects() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_objects(); public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + const ::pg_query::Node& objects(int index) const; + ::pg_query::Node* add_objects(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + objects() const; + // repeated .pg_query.Node privileges = 5 [json_name = "privileges"]; + int privileges_size() const; + private: + int _internal_privileges_size() const; - // string name = 2 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + public: + void clear_privileges() ; + ::pg_query::Node* mutable_privileges(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_privileges(); private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_privileges() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_privileges(); public: + const ::pg_query::Node& privileges(int index) const; + ::pg_query::Node* add_privileges(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + privileges() const; + // repeated .pg_query.Node grantees = 6 [json_name = "grantees"]; + int grantees_size() const; + private: + int _internal_grantees_size() const; - // .pg_query.VariableSetKind kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::VariableSetKind kind() const; - void set_kind(::pg_query::VariableSetKind value); + public: + void clear_grantees() ; + ::pg_query::Node* mutable_grantees(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_grantees(); private: - ::pg_query::VariableSetKind _internal_kind() const; - void _internal_set_kind(::pg_query::VariableSetKind value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_grantees() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_grantees(); public: + const ::pg_query::Node& grantees(int index) const; + ::pg_query::Node* add_grantees(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + grantees() const; + // .pg_query.RoleSpec grantor = 8 [json_name = "grantor"]; + bool has_grantor() const; + void clear_grantor() ; + const ::pg_query::RoleSpec& grantor() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_grantor(); + ::pg_query::RoleSpec* mutable_grantor(); + void set_allocated_grantor(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_grantor(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_grantor(); - // bool is_local = 4 [json_name = "is_local"]; - void clear_is_local(); - bool is_local() const; - void set_is_local(bool value); private: - bool _internal_is_local() const; - void _internal_set_is_local(bool value); + const ::pg_query::RoleSpec& _internal_grantor() const; + ::pg_query::RoleSpec* _internal_mutable_grantor(); + public: + // .pg_query.GrantTargetType targtype = 2 [json_name = "targtype"]; + void clear_targtype() ; + ::pg_query::GrantTargetType targtype() const; + void set_targtype(::pg_query::GrantTargetType value); - // @@protoc_insertion_point(class_scope:pg_query.VariableSetStmt) + private: + ::pg_query::GrantTargetType _internal_targtype() const; + void _internal_set_targtype(::pg_query::GrantTargetType value); + + public: + // .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; + void clear_objtype() ; + ::pg_query::ObjectType objtype() const; + void set_objtype(::pg_query::ObjectType value); + + private: + ::pg_query::ObjectType _internal_objtype() const; + void _internal_set_objtype(::pg_query::ObjectType value); + + public: + // bool is_grant = 1 [json_name = "is_grant"]; + void clear_is_grant() ; + bool is_grant() const; + void set_is_grant(bool value); + + private: + bool _internal_is_grant() const; + void _internal_set_is_grant(bool value); + + public: + // bool grant_option = 7 [json_name = "grant_option"]; + void clear_grant_option() ; + bool grant_option() const; + void set_grant_option(bool value); + + private: + bool _internal_grant_option() const; + void _internal_set_grant_option(bool value); + + public: + // .pg_query.DropBehavior behavior = 9 [json_name = "behavior"]; + void clear_behavior() ; + ::pg_query::DropBehavior behavior() const; + void set_behavior(::pg_query::DropBehavior value); + + private: + ::pg_query::DropBehavior _internal_behavior() const; + void _internal_set_behavior(::pg_query::DropBehavior value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.GrantStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 9, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - int kind_; - bool is_local_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > objects_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > privileges_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > grantees_; + ::pg_query::RoleSpec* grantor_; + int targtype_; + int objtype_; + bool is_grant_; + bool grant_option_; + int behavior_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class VariableShowStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.VariableShowStmt) */ { +class GroupingFunc final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.GroupingFunc) */ { public: - inline VariableShowStmt() : VariableShowStmt(nullptr) {} - ~VariableShowStmt() override; - explicit PROTOBUF_CONSTEXPR VariableShowStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline GroupingFunc() : GroupingFunc(nullptr) {} + ~GroupingFunc() override; + template + explicit PROTOBUF_CONSTEXPR GroupingFunc(::google::protobuf::internal::ConstantInitialized); - VariableShowStmt(const VariableShowStmt& from); - VariableShowStmt(VariableShowStmt&& from) noexcept - : VariableShowStmt() { + inline GroupingFunc(const GroupingFunc& from) + : GroupingFunc(nullptr, from) {} + GroupingFunc(GroupingFunc&& from) noexcept + : GroupingFunc() { *this = ::std::move(from); } - inline VariableShowStmt& operator=(const VariableShowStmt& from) { + inline GroupingFunc& operator=(const GroupingFunc& from) { CopyFrom(from); return *this; } - inline VariableShowStmt& operator=(VariableShowStmt&& from) noexcept { + inline GroupingFunc& operator=(GroupingFunc&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -33579,150 +39329,242 @@ class VariableShowStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const VariableShowStmt& default_instance() { + static const GroupingFunc& default_instance() { return *internal_default_instance(); } - static inline const VariableShowStmt* internal_default_instance() { - return reinterpret_cast( - &_VariableShowStmt_default_instance_); + static inline const GroupingFunc* internal_default_instance() { + return reinterpret_cast( + &_GroupingFunc_default_instance_); } static constexpr int kIndexInFileMessages = - 109; + 19; - friend void swap(VariableShowStmt& a, VariableShowStmt& b) { + friend void swap(GroupingFunc& a, GroupingFunc& b) { a.Swap(&b); } - inline void Swap(VariableShowStmt* other) { + inline void Swap(GroupingFunc* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(VariableShowStmt* other) { + void UnsafeArenaSwap(GroupingFunc* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - VariableShowStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + GroupingFunc* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const VariableShowStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const VariableShowStmt& from) { - VariableShowStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const GroupingFunc& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const GroupingFunc& from) { + GroupingFunc::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(VariableShowStmt* other); + void InternalSwap(GroupingFunc* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.VariableShowStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.GroupingFunc"; } protected: - explicit VariableShowStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit GroupingFunc(::google::protobuf::Arena* arena); + GroupingFunc(::google::protobuf::Arena* arena, const GroupingFunc& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNameFieldNumber = 1, + kArgsFieldNumber = 2, + kRefsFieldNumber = 3, + kXprFieldNumber = 1, + kAgglevelsupFieldNumber = 4, + kLocationFieldNumber = 5, }; - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + // repeated .pg_query.Node args = 2 [json_name = "args"]; + int args_size() const; private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); + int _internal_args_size() const; + + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); + public: + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // repeated .pg_query.Node refs = 3 [json_name = "refs"]; + int refs_size() const; + private: + int _internal_refs_size() const; + + public: + void clear_refs() ; + ::pg_query::Node* mutable_refs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_refs(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_refs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_refs(); + public: + const ::pg_query::Node& refs(int index) const; + ::pg_query::Node* add_refs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + refs() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + + private: + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: + // uint32 agglevelsup = 4 [json_name = "agglevelsup"]; + void clear_agglevelsup() ; + ::uint32_t agglevelsup() const; + void set_agglevelsup(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.VariableShowStmt) + private: + ::uint32_t _internal_agglevelsup() const; + void _internal_set_agglevelsup(::uint32_t value); + + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.GroupingFunc) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > refs_; + ::pg_query::Node* xpr_; + ::uint32_t agglevelsup_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DiscardStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DiscardStmt) */ { +class GroupingSet final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.GroupingSet) */ { public: - inline DiscardStmt() : DiscardStmt(nullptr) {} - ~DiscardStmt() override; - explicit PROTOBUF_CONSTEXPR DiscardStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline GroupingSet() : GroupingSet(nullptr) {} + ~GroupingSet() override; + template + explicit PROTOBUF_CONSTEXPR GroupingSet(::google::protobuf::internal::ConstantInitialized); - DiscardStmt(const DiscardStmt& from); - DiscardStmt(DiscardStmt&& from) noexcept - : DiscardStmt() { + inline GroupingSet(const GroupingSet& from) + : GroupingSet(nullptr, from) {} + GroupingSet(GroupingSet&& from) noexcept + : GroupingSet() { *this = ::std::move(from); } - inline DiscardStmt& operator=(const DiscardStmt& from) { + inline GroupingSet& operator=(const GroupingSet& from) { CopyFrom(from); return *this; } - inline DiscardStmt& operator=(DiscardStmt&& from) noexcept { + inline GroupingSet& operator=(GroupingSet&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -33732,145 +39574,204 @@ class DiscardStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DiscardStmt& default_instance() { + static const GroupingSet& default_instance() { return *internal_default_instance(); } - static inline const DiscardStmt* internal_default_instance() { - return reinterpret_cast( - &_DiscardStmt_default_instance_); + static inline const GroupingSet* internal_default_instance() { + return reinterpret_cast( + &_GroupingSet_default_instance_); } static constexpr int kIndexInFileMessages = - 110; + 106; - friend void swap(DiscardStmt& a, DiscardStmt& b) { + friend void swap(GroupingSet& a, GroupingSet& b) { a.Swap(&b); } - inline void Swap(DiscardStmt* other) { + inline void Swap(GroupingSet* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DiscardStmt* other) { + void UnsafeArenaSwap(GroupingSet* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DiscardStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + GroupingSet* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DiscardStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DiscardStmt& from) { - DiscardStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const GroupingSet& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const GroupingSet& from) { + GroupingSet::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DiscardStmt* other); + void InternalSwap(GroupingSet* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DiscardStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.GroupingSet"; } protected: - explicit DiscardStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit GroupingSet(::google::protobuf::Arena* arena); + GroupingSet(::google::protobuf::Arena* arena, const GroupingSet& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kTargetFieldNumber = 1, + kContentFieldNumber = 2, + kKindFieldNumber = 1, + kLocationFieldNumber = 3, }; - // .pg_query.DiscardMode target = 1 [json_name = "target"]; - void clear_target(); - ::pg_query::DiscardMode target() const; - void set_target(::pg_query::DiscardMode value); + // repeated .pg_query.Node content = 2 [json_name = "content"]; + int content_size() const; private: - ::pg_query::DiscardMode _internal_target() const; - void _internal_set_target(::pg_query::DiscardMode value); + int _internal_content_size() const; + + public: + void clear_content() ; + ::pg_query::Node* mutable_content(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_content(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_content() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_content(); public: + const ::pg_query::Node& content(int index) const; + ::pg_query::Node* add_content(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + content() const; + // .pg_query.GroupingSetKind kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::GroupingSetKind kind() const; + void set_kind(::pg_query::GroupingSetKind value); - // @@protoc_insertion_point(class_scope:pg_query.DiscardStmt) + private: + ::pg_query::GroupingSetKind _internal_kind() const; + void _internal_set_kind(::pg_query::GroupingSetKind value); + + public: + // int32 location = 3 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.GroupingSet) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - int target_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > content_; + int kind_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateTrigStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateTrigStmt) */ { +class ImportForeignSchemaStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ImportForeignSchemaStmt) */ { public: - inline CreateTrigStmt() : CreateTrigStmt(nullptr) {} - ~CreateTrigStmt() override; - explicit PROTOBUF_CONSTEXPR CreateTrigStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ImportForeignSchemaStmt() : ImportForeignSchemaStmt(nullptr) {} + ~ImportForeignSchemaStmt() override; + template + explicit PROTOBUF_CONSTEXPR ImportForeignSchemaStmt(::google::protobuf::internal::ConstantInitialized); - CreateTrigStmt(const CreateTrigStmt& from); - CreateTrigStmt(CreateTrigStmt&& from) noexcept - : CreateTrigStmt() { + inline ImportForeignSchemaStmt(const ImportForeignSchemaStmt& from) + : ImportForeignSchemaStmt(nullptr, from) {} + ImportForeignSchemaStmt(ImportForeignSchemaStmt&& from) noexcept + : ImportForeignSchemaStmt() { *this = ::std::move(from); } - inline CreateTrigStmt& operator=(const CreateTrigStmt& from) { + inline ImportForeignSchemaStmt& operator=(const ImportForeignSchemaStmt& from) { CopyFrom(from); return *this; } - inline CreateTrigStmt& operator=(CreateTrigStmt&& from) noexcept { + inline ImportForeignSchemaStmt& operator=(ImportForeignSchemaStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -33880,367 +39781,266 @@ class CreateTrigStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateTrigStmt& default_instance() { + static const ImportForeignSchemaStmt& default_instance() { return *internal_default_instance(); } - static inline const CreateTrigStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateTrigStmt_default_instance_); + static inline const ImportForeignSchemaStmt* internal_default_instance() { + return reinterpret_cast( + &_ImportForeignSchemaStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 111; + 166; - friend void swap(CreateTrigStmt& a, CreateTrigStmt& b) { + friend void swap(ImportForeignSchemaStmt& a, ImportForeignSchemaStmt& b) { a.Swap(&b); } - inline void Swap(CreateTrigStmt* other) { + inline void Swap(ImportForeignSchemaStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateTrigStmt* other) { + void UnsafeArenaSwap(ImportForeignSchemaStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateTrigStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ImportForeignSchemaStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateTrigStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateTrigStmt& from) { - CreateTrigStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ImportForeignSchemaStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ImportForeignSchemaStmt& from) { + ImportForeignSchemaStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateTrigStmt* other); + void InternalSwap(ImportForeignSchemaStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateTrigStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ImportForeignSchemaStmt"; } protected: - explicit CreateTrigStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ImportForeignSchemaStmt(::google::protobuf::Arena* arena); + ImportForeignSchemaStmt(::google::protobuf::Arena* arena, const ImportForeignSchemaStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kFuncnameFieldNumber = 5, - kArgsFieldNumber = 6, - kColumnsFieldNumber = 10, - kTransitionRelsFieldNumber = 12, - kTrignameFieldNumber = 3, - kRelationFieldNumber = 4, - kWhenClauseFieldNumber = 11, - kConstrrelFieldNumber = 15, - kReplaceFieldNumber = 1, - kIsconstraintFieldNumber = 2, - kRowFieldNumber = 7, - kDeferrableFieldNumber = 13, - kTimingFieldNumber = 8, - kEventsFieldNumber = 9, - kInitdeferredFieldNumber = 14, + kTableListFieldNumber = 5, + kOptionsFieldNumber = 6, + kServerNameFieldNumber = 1, + kRemoteSchemaFieldNumber = 2, + kLocalSchemaFieldNumber = 3, + kListTypeFieldNumber = 4, }; - // repeated .pg_query.Node funcname = 5 [json_name = "funcname"]; - int funcname_size() const; - private: - int _internal_funcname_size() const; - public: - void clear_funcname(); - ::pg_query::Node* mutable_funcname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_funcname(); - private: - const ::pg_query::Node& _internal_funcname(int index) const; - ::pg_query::Node* _internal_add_funcname(); - public: - const ::pg_query::Node& funcname(int index) const; - ::pg_query::Node* add_funcname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - funcname() const; - - // repeated .pg_query.Node args = 6 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; - - // repeated .pg_query.Node columns = 10 [json_name = "columns"]; - int columns_size() const; - private: - int _internal_columns_size() const; - public: - void clear_columns(); - ::pg_query::Node* mutable_columns(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_columns(); - private: - const ::pg_query::Node& _internal_columns(int index) const; - ::pg_query::Node* _internal_add_columns(); - public: - const ::pg_query::Node& columns(int index) const; - ::pg_query::Node* add_columns(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - columns() const; - - // repeated .pg_query.Node transition_rels = 12 [json_name = "transitionRels"]; - int transition_rels_size() const; - private: - int _internal_transition_rels_size() const; - public: - void clear_transition_rels(); - ::pg_query::Node* mutable_transition_rels(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_transition_rels(); + // repeated .pg_query.Node table_list = 5 [json_name = "table_list"]; + int table_list_size() const; private: - const ::pg_query::Node& _internal_transition_rels(int index) const; - ::pg_query::Node* _internal_add_transition_rels(); - public: - const ::pg_query::Node& transition_rels(int index) const; - ::pg_query::Node* add_transition_rels(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - transition_rels() const; + int _internal_table_list_size() const; - // string trigname = 3 [json_name = "trigname"]; - void clear_trigname(); - const std::string& trigname() const; - template - void set_trigname(ArgT0&& arg0, ArgT... args); - std::string* mutable_trigname(); - PROTOBUF_NODISCARD std::string* release_trigname(); - void set_allocated_trigname(std::string* trigname); - private: - const std::string& _internal_trigname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_trigname(const std::string& value); - std::string* _internal_mutable_trigname(); public: - - // .pg_query.RangeVar relation = 4 [json_name = "relation"]; - bool has_relation() const; + void clear_table_list() ; + ::pg_query::Node* mutable_table_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_table_list(); private: - bool _internal_has_relation() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_table_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_table_list(); public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + const ::pg_query::Node& table_list(int index) const; + ::pg_query::Node* add_table_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + table_list() const; + // repeated .pg_query.Node options = 6 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); - public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + int _internal_options_size() const; - // .pg_query.Node when_clause = 11 [json_name = "whenClause"]; - bool has_when_clause() const; - private: - bool _internal_has_when_clause() const; public: - void clear_when_clause(); - const ::pg_query::Node& when_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_when_clause(); - ::pg_query::Node* mutable_when_clause(); - void set_allocated_when_clause(::pg_query::Node* when_clause); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::Node& _internal_when_clause() const; - ::pg_query::Node* _internal_mutable_when_clause(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_when_clause( - ::pg_query::Node* when_clause); - ::pg_query::Node* unsafe_arena_release_when_clause(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string server_name = 1 [json_name = "server_name"]; + void clear_server_name() ; + const std::string& server_name() const; + template + void set_server_name(Arg_&& arg, Args_... args); + std::string* mutable_server_name(); + PROTOBUF_NODISCARD std::string* release_server_name(); + void set_allocated_server_name(std::string* value); - // .pg_query.RangeVar constrrel = 15 [json_name = "constrrel"]; - bool has_constrrel() const; - private: - bool _internal_has_constrrel() const; - public: - void clear_constrrel(); - const ::pg_query::RangeVar& constrrel() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_constrrel(); - ::pg_query::RangeVar* mutable_constrrel(); - void set_allocated_constrrel(::pg_query::RangeVar* constrrel); private: - const ::pg_query::RangeVar& _internal_constrrel() const; - ::pg_query::RangeVar* _internal_mutable_constrrel(); - public: - void unsafe_arena_set_allocated_constrrel( - ::pg_query::RangeVar* constrrel); - ::pg_query::RangeVar* unsafe_arena_release_constrrel(); + const std::string& _internal_server_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_server_name( + const std::string& value); + std::string* _internal_mutable_server_name(); - // bool replace = 1 [json_name = "replace"]; - void clear_replace(); - bool replace() const; - void set_replace(bool value); - private: - bool _internal_replace() const; - void _internal_set_replace(bool value); public: + // string remote_schema = 2 [json_name = "remote_schema"]; + void clear_remote_schema() ; + const std::string& remote_schema() const; + template + void set_remote_schema(Arg_&& arg, Args_... args); + std::string* mutable_remote_schema(); + PROTOBUF_NODISCARD std::string* release_remote_schema(); + void set_allocated_remote_schema(std::string* value); - // bool isconstraint = 2 [json_name = "isconstraint"]; - void clear_isconstraint(); - bool isconstraint() const; - void set_isconstraint(bool value); private: - bool _internal_isconstraint() const; - void _internal_set_isconstraint(bool value); - public: + const std::string& _internal_remote_schema() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_remote_schema( + const std::string& value); + std::string* _internal_mutable_remote_schema(); - // bool row = 7 [json_name = "row"]; - void clear_row(); - bool row() const; - void set_row(bool value); - private: - bool _internal_row() const; - void _internal_set_row(bool value); public: + // string local_schema = 3 [json_name = "local_schema"]; + void clear_local_schema() ; + const std::string& local_schema() const; + template + void set_local_schema(Arg_&& arg, Args_... args); + std::string* mutable_local_schema(); + PROTOBUF_NODISCARD std::string* release_local_schema(); + void set_allocated_local_schema(std::string* value); - // bool deferrable = 13 [json_name = "deferrable"]; - void clear_deferrable(); - bool deferrable() const; - void set_deferrable(bool value); private: - bool _internal_deferrable() const; - void _internal_set_deferrable(bool value); - public: + const std::string& _internal_local_schema() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_local_schema( + const std::string& value); + std::string* _internal_mutable_local_schema(); - // int32 timing = 8 [json_name = "timing"]; - void clear_timing(); - int32_t timing() const; - void set_timing(int32_t value); - private: - int32_t _internal_timing() const; - void _internal_set_timing(int32_t value); public: + // .pg_query.ImportForeignSchemaType list_type = 4 [json_name = "list_type"]; + void clear_list_type() ; + ::pg_query::ImportForeignSchemaType list_type() const; + void set_list_type(::pg_query::ImportForeignSchemaType value); - // int32 events = 9 [json_name = "events"]; - void clear_events(); - int32_t events() const; - void set_events(int32_t value); private: - int32_t _internal_events() const; - void _internal_set_events(int32_t value); - public: + ::pg_query::ImportForeignSchemaType _internal_list_type() const; + void _internal_set_list_type(::pg_query::ImportForeignSchemaType value); - // bool initdeferred = 14 [json_name = "initdeferred"]; - void clear_initdeferred(); - bool initdeferred() const; - void set_initdeferred(bool value); - private: - bool _internal_initdeferred() const; - void _internal_set_initdeferred(bool value); public: - - // @@protoc_insertion_point(class_scope:pg_query.CreateTrigStmt) + // @@protoc_insertion_point(class_scope:pg_query.ImportForeignSchemaStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 2, + 77, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > funcname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > columns_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > transition_rels_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr trigname_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* when_clause_; - ::pg_query::RangeVar* constrrel_; - bool replace_; - bool isconstraint_; - bool row_; - bool deferrable_; - int32_t timing_; - int32_t events_; - bool initdeferred_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > table_list_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr server_name_; + ::google::protobuf::internal::ArenaStringPtr remote_schema_; + ::google::protobuf::internal::ArenaStringPtr local_schema_; + int list_type_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreatePLangStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreatePLangStmt) */ { +class IndexElem final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.IndexElem) */ { public: - inline CreatePLangStmt() : CreatePLangStmt(nullptr) {} - ~CreatePLangStmt() override; - explicit PROTOBUF_CONSTEXPR CreatePLangStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline IndexElem() : IndexElem(nullptr) {} + ~IndexElem() override; + template + explicit PROTOBUF_CONSTEXPR IndexElem(::google::protobuf::internal::ConstantInitialized); - CreatePLangStmt(const CreatePLangStmt& from); - CreatePLangStmt(CreatePLangStmt&& from) noexcept - : CreatePLangStmt() { + inline IndexElem(const IndexElem& from) + : IndexElem(nullptr, from) {} + IndexElem(IndexElem&& from) noexcept + : IndexElem() { *this = ::std::move(from); } - inline CreatePLangStmt& operator=(const CreatePLangStmt& from) { + inline IndexElem& operator=(const IndexElem& from) { CopyFrom(from); return *this; } - inline CreatePLangStmt& operator=(CreatePLangStmt&& from) noexcept { + inline IndexElem& operator=(IndexElem&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -34250,232 +40050,298 @@ class CreatePLangStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreatePLangStmt& default_instance() { + static const IndexElem& default_instance() { return *internal_default_instance(); } - static inline const CreatePLangStmt* internal_default_instance() { - return reinterpret_cast( - &_CreatePLangStmt_default_instance_); + static inline const IndexElem* internal_default_instance() { + return reinterpret_cast( + &_IndexElem_default_instance_); } static constexpr int kIndexInFileMessages = - 112; + 91; - friend void swap(CreatePLangStmt& a, CreatePLangStmt& b) { + friend void swap(IndexElem& a, IndexElem& b) { a.Swap(&b); } - inline void Swap(CreatePLangStmt* other) { + inline void Swap(IndexElem* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreatePLangStmt* other) { + void UnsafeArenaSwap(IndexElem* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreatePLangStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + IndexElem* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreatePLangStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreatePLangStmt& from) { - CreatePLangStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const IndexElem& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const IndexElem& from) { + IndexElem::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreatePLangStmt* other); + void InternalSwap(IndexElem* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreatePLangStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.IndexElem"; } protected: - explicit CreatePLangStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit IndexElem(::google::protobuf::Arena* arena); + IndexElem(::google::protobuf::Arena* arena, const IndexElem& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kPlhandlerFieldNumber = 3, - kPlinlineFieldNumber = 4, - kPlvalidatorFieldNumber = 5, - kPlnameFieldNumber = 2, - kReplaceFieldNumber = 1, - kPltrustedFieldNumber = 6, + kCollationFieldNumber = 4, + kOpclassFieldNumber = 5, + kOpclassoptsFieldNumber = 6, + kNameFieldNumber = 1, + kIndexcolnameFieldNumber = 3, + kExprFieldNumber = 2, + kOrderingFieldNumber = 7, + kNullsOrderingFieldNumber = 8, }; - // repeated .pg_query.Node plhandler = 3 [json_name = "plhandler"]; - int plhandler_size() const; + // repeated .pg_query.Node collation = 4 [json_name = "collation"]; + int collation_size() const; private: - int _internal_plhandler_size() const; + int _internal_collation_size() const; + public: - void clear_plhandler(); - ::pg_query::Node* mutable_plhandler(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_plhandler(); + void clear_collation() ; + ::pg_query::Node* mutable_collation(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_collation(); private: - const ::pg_query::Node& _internal_plhandler(int index) const; - ::pg_query::Node* _internal_add_plhandler(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_collation() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_collation(); public: - const ::pg_query::Node& plhandler(int index) const; - ::pg_query::Node* add_plhandler(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - plhandler() const; - - // repeated .pg_query.Node plinline = 4 [json_name = "plinline"]; - int plinline_size() const; + const ::pg_query::Node& collation(int index) const; + ::pg_query::Node* add_collation(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + collation() const; + // repeated .pg_query.Node opclass = 5 [json_name = "opclass"]; + int opclass_size() const; private: - int _internal_plinline_size() const; + int _internal_opclass_size() const; + public: - void clear_plinline(); - ::pg_query::Node* mutable_plinline(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_plinline(); + void clear_opclass() ; + ::pg_query::Node* mutable_opclass(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opclass(); private: - const ::pg_query::Node& _internal_plinline(int index) const; - ::pg_query::Node* _internal_add_plinline(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opclass() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opclass(); public: - const ::pg_query::Node& plinline(int index) const; - ::pg_query::Node* add_plinline(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - plinline() const; + const ::pg_query::Node& opclass(int index) const; + ::pg_query::Node* add_opclass(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opclass() const; + // repeated .pg_query.Node opclassopts = 6 [json_name = "opclassopts"]; + int opclassopts_size() const; + private: + int _internal_opclassopts_size() const; - // repeated .pg_query.Node plvalidator = 5 [json_name = "plvalidator"]; - int plvalidator_size() const; + public: + void clear_opclassopts() ; + ::pg_query::Node* mutable_opclassopts(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opclassopts(); private: - int _internal_plvalidator_size() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opclassopts() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opclassopts(); public: - void clear_plvalidator(); - ::pg_query::Node* mutable_plvalidator(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_plvalidator(); + const ::pg_query::Node& opclassopts(int index) const; + ::pg_query::Node* add_opclassopts(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opclassopts() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + private: - const ::pg_query::Node& _internal_plvalidator(int index) const; - ::pg_query::Node* _internal_add_plvalidator(); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + public: - const ::pg_query::Node& plvalidator(int index) const; - ::pg_query::Node* add_plvalidator(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - plvalidator() const; + // string indexcolname = 3 [json_name = "indexcolname"]; + void clear_indexcolname() ; + const std::string& indexcolname() const; + template + void set_indexcolname(Arg_&& arg, Args_... args); + std::string* mutable_indexcolname(); + PROTOBUF_NODISCARD std::string* release_indexcolname(); + void set_allocated_indexcolname(std::string* value); - // string plname = 2 [json_name = "plname"]; - void clear_plname(); - const std::string& plname() const; - template - void set_plname(ArgT0&& arg0, ArgT... args); - std::string* mutable_plname(); - PROTOBUF_NODISCARD std::string* release_plname(); - void set_allocated_plname(std::string* plname); private: - const std::string& _internal_plname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_plname(const std::string& value); - std::string* _internal_mutable_plname(); + const std::string& _internal_indexcolname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_indexcolname( + const std::string& value); + std::string* _internal_mutable_indexcolname(); + public: + // .pg_query.Node expr = 2 [json_name = "expr"]; + bool has_expr() const; + void clear_expr() ; + const ::pg_query::Node& expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); + ::pg_query::Node* mutable_expr(); + void set_allocated_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_expr(); - // bool replace = 1 [json_name = "replace"]; - void clear_replace(); - bool replace() const; - void set_replace(bool value); private: - bool _internal_replace() const; - void _internal_set_replace(bool value); + const ::pg_query::Node& _internal_expr() const; + ::pg_query::Node* _internal_mutable_expr(); + public: + // .pg_query.SortByDir ordering = 7 [json_name = "ordering"]; + void clear_ordering() ; + ::pg_query::SortByDir ordering() const; + void set_ordering(::pg_query::SortByDir value); - // bool pltrusted = 6 [json_name = "pltrusted"]; - void clear_pltrusted(); - bool pltrusted() const; - void set_pltrusted(bool value); private: - bool _internal_pltrusted() const; - void _internal_set_pltrusted(bool value); + ::pg_query::SortByDir _internal_ordering() const; + void _internal_set_ordering(::pg_query::SortByDir value); + public: + // .pg_query.SortByNulls nulls_ordering = 8 [json_name = "nulls_ordering"]; + void clear_nulls_ordering() ; + ::pg_query::SortByNulls nulls_ordering() const; + void set_nulls_ordering(::pg_query::SortByNulls value); - // @@protoc_insertion_point(class_scope:pg_query.CreatePLangStmt) + private: + ::pg_query::SortByNulls _internal_nulls_ordering() const; + void _internal_set_nulls_ordering(::pg_query::SortByNulls value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.IndexElem) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 4, + 51, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > plhandler_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > plinline_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > plvalidator_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr plname_; - bool replace_; - bool pltrusted_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > collation_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opclass_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opclassopts_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::google::protobuf::internal::ArenaStringPtr indexcolname_; + ::pg_query::Node* expr_; + int ordering_; + int nulls_ordering_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateRoleStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateRoleStmt) */ { +class IndexStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.IndexStmt) */ { public: - inline CreateRoleStmt() : CreateRoleStmt(nullptr) {} - ~CreateRoleStmt() override; - explicit PROTOBUF_CONSTEXPR CreateRoleStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline IndexStmt() : IndexStmt(nullptr) {} + ~IndexStmt() override; + template + explicit PROTOBUF_CONSTEXPR IndexStmt(::google::protobuf::internal::ConstantInitialized); - CreateRoleStmt(const CreateRoleStmt& from); - CreateRoleStmt(CreateRoleStmt&& from) noexcept - : CreateRoleStmt() { + inline IndexStmt(const IndexStmt& from) + : IndexStmt(nullptr, from) {} + IndexStmt(IndexStmt&& from) noexcept + : IndexStmt() { *this = ::std::move(from); } - inline CreateRoleStmt& operator=(const CreateRoleStmt& from) { + inline IndexStmt& operator=(const IndexStmt& from) { CopyFrom(from); return *this; } - inline CreateRoleStmt& operator=(CreateRoleStmt&& from) noexcept { + inline IndexStmt& operator=(IndexStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -34485,181 +40351,515 @@ class CreateRoleStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateRoleStmt& default_instance() { + static const IndexStmt& default_instance() { return *internal_default_instance(); } - static inline const CreateRoleStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateRoleStmt_default_instance_); + static inline const IndexStmt* internal_default_instance() { + return reinterpret_cast( + &_IndexStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 113; + 193; - friend void swap(CreateRoleStmt& a, CreateRoleStmt& b) { + friend void swap(IndexStmt& a, IndexStmt& b) { a.Swap(&b); } - inline void Swap(CreateRoleStmt* other) { + inline void Swap(IndexStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateRoleStmt* other) { + void UnsafeArenaSwap(IndexStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateRoleStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + IndexStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateRoleStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateRoleStmt& from) { - CreateRoleStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const IndexStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const IndexStmt& from) { + IndexStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateRoleStmt* other); + void InternalSwap(IndexStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateRoleStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.IndexStmt"; } protected: - explicit CreateRoleStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit IndexStmt(::google::protobuf::Arena* arena); + IndexStmt(::google::protobuf::Arena* arena, const IndexStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 3, - kRoleFieldNumber = 2, - kStmtTypeFieldNumber = 1, + kIndexParamsFieldNumber = 5, + kIndexIncludingParamsFieldNumber = 6, + kOptionsFieldNumber = 7, + kExcludeOpNamesFieldNumber = 9, + kIdxnameFieldNumber = 1, + kAccessMethodFieldNumber = 3, + kTableSpaceFieldNumber = 4, + kIdxcommentFieldNumber = 10, + kRelationFieldNumber = 2, + kWhereClauseFieldNumber = 8, + kIndexOidFieldNumber = 11, + kOldNumberFieldNumber = 12, + kOldCreateSubidFieldNumber = 13, + kOldFirstRelfilelocatorSubidFieldNumber = 14, + kUniqueFieldNumber = 15, + kNullsNotDistinctFieldNumber = 16, + kPrimaryFieldNumber = 17, + kIsconstraintFieldNumber = 18, + kDeferrableFieldNumber = 19, + kInitdeferredFieldNumber = 20, + kTransformedFieldNumber = 21, + kConcurrentFieldNumber = 22, + kIfNotExistsFieldNumber = 23, + kResetDefaultTblspcFieldNumber = 24, }; - // repeated .pg_query.Node options = 3 [json_name = "options"]; + // repeated .pg_query.Node index_params = 5 [json_name = "indexParams"]; + int index_params_size() const; + private: + int _internal_index_params_size() const; + + public: + void clear_index_params() ; + ::pg_query::Node* mutable_index_params(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_index_params(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_index_params() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_index_params(); + public: + const ::pg_query::Node& index_params(int index) const; + ::pg_query::Node* add_index_params(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + index_params() const; + // repeated .pg_query.Node index_including_params = 6 [json_name = "indexIncludingParams"]; + int index_including_params_size() const; + private: + int _internal_index_including_params_size() const; + + public: + void clear_index_including_params() ; + ::pg_query::Node* mutable_index_including_params(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_index_including_params(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_index_including_params() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_index_including_params(); + public: + const ::pg_query::Node& index_including_params(int index) const; + ::pg_query::Node* add_index_including_params(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + index_including_params() const; + // repeated .pg_query.Node options = 7 [json_name = "options"]; int options_size() const; private: int _internal_options_size() const; + public: - void clear_options(); + void clear_options() ; ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_options(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: const ::pg_query::Node& options(int index) const; ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& options() const; + // repeated .pg_query.Node exclude_op_names = 9 [json_name = "excludeOpNames"]; + int exclude_op_names_size() const; + private: + int _internal_exclude_op_names_size() const; - // string role = 2 [json_name = "role"]; - void clear_role(); - const std::string& role() const; - template - void set_role(ArgT0&& arg0, ArgT... args); - std::string* mutable_role(); - PROTOBUF_NODISCARD std::string* release_role(); - void set_allocated_role(std::string* role); + public: + void clear_exclude_op_names() ; + ::pg_query::Node* mutable_exclude_op_names(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_exclude_op_names(); private: - const std::string& _internal_role() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_role(const std::string& value); - std::string* _internal_mutable_role(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_exclude_op_names() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_exclude_op_names(); public: + const ::pg_query::Node& exclude_op_names(int index) const; + ::pg_query::Node* add_exclude_op_names(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + exclude_op_names() const; + // string idxname = 1 [json_name = "idxname"]; + void clear_idxname() ; + const std::string& idxname() const; + template + void set_idxname(Arg_&& arg, Args_... args); + std::string* mutable_idxname(); + PROTOBUF_NODISCARD std::string* release_idxname(); + void set_allocated_idxname(std::string* value); - // .pg_query.RoleStmtType stmt_type = 1 [json_name = "stmt_type"]; - void clear_stmt_type(); - ::pg_query::RoleStmtType stmt_type() const; - void set_stmt_type(::pg_query::RoleStmtType value); private: - ::pg_query::RoleStmtType _internal_stmt_type() const; - void _internal_set_stmt_type(::pg_query::RoleStmtType value); + const std::string& _internal_idxname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_idxname( + const std::string& value); + std::string* _internal_mutable_idxname(); + public: + // string access_method = 3 [json_name = "accessMethod"]; + void clear_access_method() ; + const std::string& access_method() const; + template + void set_access_method(Arg_&& arg, Args_... args); + std::string* mutable_access_method(); + PROTOBUF_NODISCARD std::string* release_access_method(); + void set_allocated_access_method(std::string* value); - // @@protoc_insertion_point(class_scope:pg_query.CreateRoleStmt) + private: + const std::string& _internal_access_method() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_access_method( + const std::string& value); + std::string* _internal_mutable_access_method(); + + public: + // string table_space = 4 [json_name = "tableSpace"]; + void clear_table_space() ; + const std::string& table_space() const; + template + void set_table_space(Arg_&& arg, Args_... args); + std::string* mutable_table_space(); + PROTOBUF_NODISCARD std::string* release_table_space(); + void set_allocated_table_space(std::string* value); + + private: + const std::string& _internal_table_space() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_table_space( + const std::string& value); + std::string* _internal_mutable_table_space(); + + public: + // string idxcomment = 10 [json_name = "idxcomment"]; + void clear_idxcomment() ; + const std::string& idxcomment() const; + template + void set_idxcomment(Arg_&& arg, Args_... args); + std::string* mutable_idxcomment(); + PROTOBUF_NODISCARD std::string* release_idxcomment(); + void set_allocated_idxcomment(std::string* value); + + private: + const std::string& _internal_idxcomment() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_idxcomment( + const std::string& value); + std::string* _internal_mutable_idxcomment(); + + public: + // .pg_query.RangeVar relation = 2 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); + + private: + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); + + public: + // .pg_query.Node where_clause = 8 [json_name = "whereClause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); + + private: + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); + + public: + // uint32 index_oid = 11 [json_name = "indexOid"]; + void clear_index_oid() ; + ::uint32_t index_oid() const; + void set_index_oid(::uint32_t value); + + private: + ::uint32_t _internal_index_oid() const; + void _internal_set_index_oid(::uint32_t value); + + public: + // uint32 old_number = 12 [json_name = "oldNumber"]; + void clear_old_number() ; + ::uint32_t old_number() const; + void set_old_number(::uint32_t value); + + private: + ::uint32_t _internal_old_number() const; + void _internal_set_old_number(::uint32_t value); + + public: + // uint32 old_create_subid = 13 [json_name = "oldCreateSubid"]; + void clear_old_create_subid() ; + ::uint32_t old_create_subid() const; + void set_old_create_subid(::uint32_t value); + + private: + ::uint32_t _internal_old_create_subid() const; + void _internal_set_old_create_subid(::uint32_t value); + + public: + // uint32 old_first_relfilelocator_subid = 14 [json_name = "oldFirstRelfilelocatorSubid"]; + void clear_old_first_relfilelocator_subid() ; + ::uint32_t old_first_relfilelocator_subid() const; + void set_old_first_relfilelocator_subid(::uint32_t value); + + private: + ::uint32_t _internal_old_first_relfilelocator_subid() const; + void _internal_set_old_first_relfilelocator_subid(::uint32_t value); + + public: + // bool unique = 15 [json_name = "unique"]; + void clear_unique() ; + bool unique() const; + void set_unique(bool value); + + private: + bool _internal_unique() const; + void _internal_set_unique(bool value); + + public: + // bool nulls_not_distinct = 16 [json_name = "nulls_not_distinct"]; + void clear_nulls_not_distinct() ; + bool nulls_not_distinct() const; + void set_nulls_not_distinct(bool value); + + private: + bool _internal_nulls_not_distinct() const; + void _internal_set_nulls_not_distinct(bool value); + + public: + // bool primary = 17 [json_name = "primary"]; + void clear_primary() ; + bool primary() const; + void set_primary(bool value); + + private: + bool _internal_primary() const; + void _internal_set_primary(bool value); + + public: + // bool isconstraint = 18 [json_name = "isconstraint"]; + void clear_isconstraint() ; + bool isconstraint() const; + void set_isconstraint(bool value); + + private: + bool _internal_isconstraint() const; + void _internal_set_isconstraint(bool value); + + public: + // bool deferrable = 19 [json_name = "deferrable"]; + void clear_deferrable() ; + bool deferrable() const; + void set_deferrable(bool value); + + private: + bool _internal_deferrable() const; + void _internal_set_deferrable(bool value); + + public: + // bool initdeferred = 20 [json_name = "initdeferred"]; + void clear_initdeferred() ; + bool initdeferred() const; + void set_initdeferred(bool value); + + private: + bool _internal_initdeferred() const; + void _internal_set_initdeferred(bool value); + + public: + // bool transformed = 21 [json_name = "transformed"]; + void clear_transformed() ; + bool transformed() const; + void set_transformed(bool value); + + private: + bool _internal_transformed() const; + void _internal_set_transformed(bool value); + + public: + // bool concurrent = 22 [json_name = "concurrent"]; + void clear_concurrent() ; + bool concurrent() const; + void set_concurrent(bool value); + + private: + bool _internal_concurrent() const; + void _internal_set_concurrent(bool value); + + public: + // bool if_not_exists = 23 [json_name = "if_not_exists"]; + void clear_if_not_exists() ; + bool if_not_exists() const; + void set_if_not_exists(bool value); + + private: + bool _internal_if_not_exists() const; + void _internal_set_if_not_exists(bool value); + + public: + // bool reset_default_tblspc = 24 [json_name = "reset_default_tblspc"]; + void clear_reset_default_tblspc() ; + bool reset_default_tblspc() const; + void set_reset_default_tblspc(bool value); + + private: + bool _internal_reset_default_tblspc() const; + void _internal_set_reset_default_tblspc(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.IndexStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 5, 24, 6, + 92, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr role_; - int stmt_type_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > index_params_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > index_including_params_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > exclude_op_names_; + ::google::protobuf::internal::ArenaStringPtr idxname_; + ::google::protobuf::internal::ArenaStringPtr access_method_; + ::google::protobuf::internal::ArenaStringPtr table_space_; + ::google::protobuf::internal::ArenaStringPtr idxcomment_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* where_clause_; + ::uint32_t index_oid_; + ::uint32_t old_number_; + ::uint32_t old_create_subid_; + ::uint32_t old_first_relfilelocator_subid_; + bool unique_; + bool nulls_not_distinct_; + bool primary_; + bool isconstraint_; + bool deferrable_; + bool initdeferred_; + bool transformed_; + bool concurrent_; + bool if_not_exists_; + bool reset_default_tblspc_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterRoleStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterRoleStmt) */ { +class InferClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.InferClause) */ { public: - inline AlterRoleStmt() : AlterRoleStmt(nullptr) {} - ~AlterRoleStmt() override; - explicit PROTOBUF_CONSTEXPR AlterRoleStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline InferClause() : InferClause(nullptr) {} + ~InferClause() override; + template + explicit PROTOBUF_CONSTEXPR InferClause(::google::protobuf::internal::ConstantInitialized); - AlterRoleStmt(const AlterRoleStmt& from); - AlterRoleStmt(AlterRoleStmt&& from) noexcept - : AlterRoleStmt() { + inline InferClause(const InferClause& from) + : InferClause(nullptr, from) {} + InferClause(InferClause&& from) noexcept + : InferClause() { *this = ::std::move(from); } - inline AlterRoleStmt& operator=(const AlterRoleStmt& from) { + inline InferClause& operator=(const InferClause& from) { CopyFrom(from); return *this; } - inline AlterRoleStmt& operator=(AlterRoleStmt&& from) noexcept { + inline InferClause& operator=(InferClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -34669,185 +40869,228 @@ class AlterRoleStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterRoleStmt& default_instance() { + static const InferClause& default_instance() { return *internal_default_instance(); } - static inline const AlterRoleStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterRoleStmt_default_instance_); + static inline const InferClause* internal_default_instance() { + return reinterpret_cast( + &_InferClause_default_instance_); } static constexpr int kIndexInFileMessages = - 114; + 110; - friend void swap(AlterRoleStmt& a, AlterRoleStmt& b) { + friend void swap(InferClause& a, InferClause& b) { a.Swap(&b); } - inline void Swap(AlterRoleStmt* other) { + inline void Swap(InferClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterRoleStmt* other) { + void UnsafeArenaSwap(InferClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterRoleStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + InferClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterRoleStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterRoleStmt& from) { - AlterRoleStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const InferClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const InferClause& from) { + InferClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterRoleStmt* other); + void InternalSwap(InferClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterRoleStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.InferClause"; } protected: - explicit AlterRoleStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit InferClause(::google::protobuf::Arena* arena); + InferClause(::google::protobuf::Arena* arena, const InferClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kRoleFieldNumber = 1, - kActionFieldNumber = 3, + kIndexElemsFieldNumber = 1, + kConnameFieldNumber = 3, + kWhereClauseFieldNumber = 2, + kLocationFieldNumber = 4, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; + // repeated .pg_query.Node index_elems = 1 [json_name = "indexElems"]; + int index_elems_size() const; private: - int _internal_options_size() const; + int _internal_index_elems_size() const; + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_index_elems() ; + ::pg_query::Node* mutable_index_elems(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_index_elems(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_index_elems() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_index_elems(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + const ::pg_query::Node& index_elems(int index) const; + ::pg_query::Node* add_index_elems(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + index_elems() const; + // string conname = 3 [json_name = "conname"]; + void clear_conname() ; + const std::string& conname() const; + template + void set_conname(Arg_&& arg, Args_... args); + std::string* mutable_conname(); + PROTOBUF_NODISCARD std::string* release_conname(); + void set_allocated_conname(std::string* value); - // .pg_query.RoleSpec role = 1 [json_name = "role"]; - bool has_role() const; private: - bool _internal_has_role() const; + const std::string& _internal_conname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_conname( + const std::string& value); + std::string* _internal_mutable_conname(); + public: - void clear_role(); - const ::pg_query::RoleSpec& role() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_role(); - ::pg_query::RoleSpec* mutable_role(); - void set_allocated_role(::pg_query::RoleSpec* role); + // .pg_query.Node where_clause = 2 [json_name = "whereClause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); + private: - const ::pg_query::RoleSpec& _internal_role() const; - ::pg_query::RoleSpec* _internal_mutable_role(); + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); + public: - void unsafe_arena_set_allocated_role( - ::pg_query::RoleSpec* role); - ::pg_query::RoleSpec* unsafe_arena_release_role(); + // int32 location = 4 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 action = 3 [json_name = "action"]; - void clear_action(); - int32_t action() const; - void set_action(int32_t value); private: - int32_t _internal_action() const; - void _internal_set_action(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterRoleStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.InferClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 36, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::pg_query::RoleSpec* role_; - int32_t action_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > index_elems_; + ::google::protobuf::internal::ArenaStringPtr conname_; + ::pg_query::Node* where_clause_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DropRoleStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DropRoleStmt) */ { +class InferenceElem final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.InferenceElem) */ { public: - inline DropRoleStmt() : DropRoleStmt(nullptr) {} - ~DropRoleStmt() override; - explicit PROTOBUF_CONSTEXPR DropRoleStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline InferenceElem() : InferenceElem(nullptr) {} + ~InferenceElem() override; + template + explicit PROTOBUF_CONSTEXPR InferenceElem(::google::protobuf::internal::ConstantInitialized); - DropRoleStmt(const DropRoleStmt& from); - DropRoleStmt(DropRoleStmt&& from) noexcept - : DropRoleStmt() { + inline InferenceElem(const InferenceElem& from) + : InferenceElem(nullptr, from) {} + InferenceElem(InferenceElem&& from) noexcept + : InferenceElem() { *this = ::std::move(from); } - inline DropRoleStmt& operator=(const DropRoleStmt& from) { + inline InferenceElem& operator=(const InferenceElem& from) { CopyFrom(from); return *this; } - inline DropRoleStmt& operator=(DropRoleStmt&& from) noexcept { + inline InferenceElem& operator=(InferenceElem&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -34857,165 +41100,219 @@ class DropRoleStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DropRoleStmt& default_instance() { + static const InferenceElem& default_instance() { return *internal_default_instance(); } - static inline const DropRoleStmt* internal_default_instance() { - return reinterpret_cast( - &_DropRoleStmt_default_instance_); + static inline const InferenceElem* internal_default_instance() { + return reinterpret_cast( + &_InferenceElem_default_instance_); } static constexpr int kIndexInFileMessages = - 115; + 61; - friend void swap(DropRoleStmt& a, DropRoleStmt& b) { + friend void swap(InferenceElem& a, InferenceElem& b) { a.Swap(&b); } - inline void Swap(DropRoleStmt* other) { + inline void Swap(InferenceElem* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DropRoleStmt* other) { + void UnsafeArenaSwap(InferenceElem* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DropRoleStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + InferenceElem* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DropRoleStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DropRoleStmt& from) { - DropRoleStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const InferenceElem& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const InferenceElem& from) { + InferenceElem::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DropRoleStmt* other); + void InternalSwap(InferenceElem* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DropRoleStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.InferenceElem"; } protected: - explicit DropRoleStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit InferenceElem(::google::protobuf::Arena* arena); + InferenceElem(::google::protobuf::Arena* arena, const InferenceElem& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRolesFieldNumber = 1, - kMissingOkFieldNumber = 2, + kXprFieldNumber = 1, + kExprFieldNumber = 2, + kInfercollidFieldNumber = 3, + kInferopclassFieldNumber = 4, }; - // repeated .pg_query.Node roles = 1 [json_name = "roles"]; - int roles_size() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: - int _internal_roles_size() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_roles(); - ::pg_query::Node* mutable_roles(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_roles(); + // .pg_query.Node expr = 2 [json_name = "expr"]; + bool has_expr() const; + void clear_expr() ; + const ::pg_query::Node& expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); + ::pg_query::Node* mutable_expr(); + void set_allocated_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_expr(); + private: - const ::pg_query::Node& _internal_roles(int index) const; - ::pg_query::Node* _internal_add_roles(); + const ::pg_query::Node& _internal_expr() const; + ::pg_query::Node* _internal_mutable_expr(); + public: - const ::pg_query::Node& roles(int index) const; - ::pg_query::Node* add_roles(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - roles() const; + // uint32 infercollid = 3 [json_name = "infercollid"]; + void clear_infercollid() ; + ::uint32_t infercollid() const; + void set_infercollid(::uint32_t value); - // bool missing_ok = 2 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); + ::uint32_t _internal_infercollid() const; + void _internal_set_infercollid(::uint32_t value); + public: + // uint32 inferopclass = 4 [json_name = "inferopclass"]; + void clear_inferopclass() ; + ::uint32_t inferopclass() const; + void set_inferopclass(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.DropRoleStmt) + private: + ::uint32_t _internal_inferopclass() const; + void _internal_set_inferopclass(::uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.InferenceElem) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > roles_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* xpr_; + ::pg_query::Node* expr_; + ::uint32_t infercollid_; + ::uint32_t inferopclass_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class LockStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.LockStmt) */ { +class InsertStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.InsertStmt) */ { public: - inline LockStmt() : LockStmt(nullptr) {} - ~LockStmt() override; - explicit PROTOBUF_CONSTEXPR LockStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline InsertStmt() : InsertStmt(nullptr) {} + ~InsertStmt() override; + template + explicit PROTOBUF_CONSTEXPR InsertStmt(::google::protobuf::internal::ConstantInitialized); - LockStmt(const LockStmt& from); - LockStmt(LockStmt&& from) noexcept - : LockStmt() { + inline InsertStmt(const InsertStmt& from) + : InsertStmt(nullptr, from) {} + InsertStmt(InsertStmt&& from) noexcept + : InsertStmt() { *this = ::std::move(from); } - inline LockStmt& operator=(const LockStmt& from) { + inline InsertStmt& operator=(const InsertStmt& from) { CopyFrom(from); return *this; } - inline LockStmt& operator=(LockStmt&& from) noexcept { + inline InsertStmt& operator=(InsertStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -35025,176 +41322,281 @@ class LockStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const LockStmt& default_instance() { + static const InsertStmt& default_instance() { return *internal_default_instance(); } - static inline const LockStmt* internal_default_instance() { - return reinterpret_cast( - &_LockStmt_default_instance_); + static inline const InsertStmt* internal_default_instance() { + return reinterpret_cast( + &_InsertStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 116; + 127; - friend void swap(LockStmt& a, LockStmt& b) { + friend void swap(InsertStmt& a, InsertStmt& b) { a.Swap(&b); } - inline void Swap(LockStmt* other) { + inline void Swap(InsertStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(LockStmt* other) { + void UnsafeArenaSwap(InsertStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - LockStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + InsertStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const LockStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const LockStmt& from) { - LockStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const InsertStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const InsertStmt& from) { + InsertStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(LockStmt* other); + void InternalSwap(InsertStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.LockStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.InsertStmt"; } protected: - explicit LockStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit InsertStmt(::google::protobuf::Arena* arena); + InsertStmt(::google::protobuf::Arena* arena, const InsertStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRelationsFieldNumber = 1, - kModeFieldNumber = 2, - kNowaitFieldNumber = 3, + kColsFieldNumber = 2, + kReturningListFieldNumber = 5, + kRelationFieldNumber = 1, + kSelectStmtFieldNumber = 3, + kOnConflictClauseFieldNumber = 4, + kWithClauseFieldNumber = 6, + kOverrideFieldNumber = 7, }; - // repeated .pg_query.Node relations = 1 [json_name = "relations"]; - int relations_size() const; + // repeated .pg_query.Node cols = 2 [json_name = "cols"]; + int cols_size() const; private: - int _internal_relations_size() const; + int _internal_cols_size() const; + public: - void clear_relations(); - ::pg_query::Node* mutable_relations(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_relations(); + void clear_cols() ; + ::pg_query::Node* mutable_cols(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_cols(); private: - const ::pg_query::Node& _internal_relations(int index) const; - ::pg_query::Node* _internal_add_relations(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_cols() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_cols(); public: - const ::pg_query::Node& relations(int index) const; - ::pg_query::Node* add_relations(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - relations() const; + const ::pg_query::Node& cols(int index) const; + ::pg_query::Node* add_cols(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + cols() const; + // repeated .pg_query.Node returning_list = 5 [json_name = "returningList"]; + int returning_list_size() const; + private: + int _internal_returning_list_size() const; - // int32 mode = 2 [json_name = "mode"]; - void clear_mode(); - int32_t mode() const; - void set_mode(int32_t value); + public: + void clear_returning_list() ; + ::pg_query::Node* mutable_returning_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_returning_list(); private: - int32_t _internal_mode() const; - void _internal_set_mode(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_returning_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_returning_list(); public: + const ::pg_query::Node& returning_list(int index) const; + ::pg_query::Node* add_returning_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + returning_list() const; + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // bool nowait = 3 [json_name = "nowait"]; - void clear_nowait(); - bool nowait() const; - void set_nowait(bool value); private: - bool _internal_nowait() const; - void _internal_set_nowait(bool value); + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); + public: + // .pg_query.Node select_stmt = 3 [json_name = "selectStmt"]; + bool has_select_stmt() const; + void clear_select_stmt() ; + const ::pg_query::Node& select_stmt() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_select_stmt(); + ::pg_query::Node* mutable_select_stmt(); + void set_allocated_select_stmt(::pg_query::Node* value); + void unsafe_arena_set_allocated_select_stmt(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_select_stmt(); - // @@protoc_insertion_point(class_scope:pg_query.LockStmt) + private: + const ::pg_query::Node& _internal_select_stmt() const; + ::pg_query::Node* _internal_mutable_select_stmt(); + + public: + // .pg_query.OnConflictClause on_conflict_clause = 4 [json_name = "onConflictClause"]; + bool has_on_conflict_clause() const; + void clear_on_conflict_clause() ; + const ::pg_query::OnConflictClause& on_conflict_clause() const; + PROTOBUF_NODISCARD ::pg_query::OnConflictClause* release_on_conflict_clause(); + ::pg_query::OnConflictClause* mutable_on_conflict_clause(); + void set_allocated_on_conflict_clause(::pg_query::OnConflictClause* value); + void unsafe_arena_set_allocated_on_conflict_clause(::pg_query::OnConflictClause* value); + ::pg_query::OnConflictClause* unsafe_arena_release_on_conflict_clause(); + + private: + const ::pg_query::OnConflictClause& _internal_on_conflict_clause() const; + ::pg_query::OnConflictClause* _internal_mutable_on_conflict_clause(); + + public: + // .pg_query.WithClause with_clause = 6 [json_name = "withClause"]; + bool has_with_clause() const; + void clear_with_clause() ; + const ::pg_query::WithClause& with_clause() const; + PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); + ::pg_query::WithClause* mutable_with_clause(); + void set_allocated_with_clause(::pg_query::WithClause* value); + void unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value); + ::pg_query::WithClause* unsafe_arena_release_with_clause(); + + private: + const ::pg_query::WithClause& _internal_with_clause() const; + ::pg_query::WithClause* _internal_mutable_with_clause(); + + public: + // .pg_query.OverridingKind override = 7 [json_name = "override"]; + void clear_override() ; + ::pg_query::OverridingKind override() const; + void set_override(::pg_query::OverridingKind value); + + private: + ::pg_query::OverridingKind _internal_override() const; + void _internal_set_override(::pg_query::OverridingKind value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.InsertStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 6, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > relations_; - int32_t mode_; - bool nowait_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > cols_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > returning_list_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* select_stmt_; + ::pg_query::OnConflictClause* on_conflict_clause_; + ::pg_query::WithClause* with_clause_; + int override_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ConstraintsSetStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ConstraintsSetStmt) */ { +class IntList final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.IntList) */ { public: - inline ConstraintsSetStmt() : ConstraintsSetStmt(nullptr) {} - ~ConstraintsSetStmt() override; - explicit PROTOBUF_CONSTEXPR ConstraintsSetStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline IntList() : IntList(nullptr) {} + ~IntList() override; + template + explicit PROTOBUF_CONSTEXPR IntList(::google::protobuf::internal::ConstantInitialized); - ConstraintsSetStmt(const ConstraintsSetStmt& from); - ConstraintsSetStmt(ConstraintsSetStmt&& from) noexcept - : ConstraintsSetStmt() { + inline IntList(const IntList& from) + : IntList(nullptr, from) {} + IntList(IntList&& from) noexcept + : IntList() { *this = ::std::move(from); } - inline ConstraintsSetStmt& operator=(const ConstraintsSetStmt& from) { + inline IntList& operator=(const IntList& from) { CopyFrom(from); return *this; } - inline ConstraintsSetStmt& operator=(ConstraintsSetStmt&& from) noexcept { + inline IntList& operator=(IntList&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -35204,165 +41606,180 @@ class ConstraintsSetStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ConstraintsSetStmt& default_instance() { + static const IntList& default_instance() { return *internal_default_instance(); } - static inline const ConstraintsSetStmt* internal_default_instance() { - return reinterpret_cast( - &_ConstraintsSetStmt_default_instance_); + static inline const IntList* internal_default_instance() { + return reinterpret_cast( + &_IntList_default_instance_); } static constexpr int kIndexInFileMessages = - 117; + 10; - friend void swap(ConstraintsSetStmt& a, ConstraintsSetStmt& b) { + friend void swap(IntList& a, IntList& b) { a.Swap(&b); } - inline void Swap(ConstraintsSetStmt* other) { + inline void Swap(IntList* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ConstraintsSetStmt* other) { + void UnsafeArenaSwap(IntList* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ConstraintsSetStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + IntList* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ConstraintsSetStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ConstraintsSetStmt& from) { - ConstraintsSetStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const IntList& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const IntList& from) { + IntList::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ConstraintsSetStmt* other); + void InternalSwap(IntList* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ConstraintsSetStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.IntList"; } protected: - explicit ConstraintsSetStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit IntList(::google::protobuf::Arena* arena); + IntList(::google::protobuf::Arena* arena, const IntList& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kConstraintsFieldNumber = 1, - kDeferredFieldNumber = 2, + kItemsFieldNumber = 1, }; - // repeated .pg_query.Node constraints = 1 [json_name = "constraints"]; - int constraints_size() const; - private: - int _internal_constraints_size() const; - public: - void clear_constraints(); - ::pg_query::Node* mutable_constraints(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_constraints(); + // repeated .pg_query.Node items = 1; + int items_size() const; private: - const ::pg_query::Node& _internal_constraints(int index) const; - ::pg_query::Node* _internal_add_constraints(); - public: - const ::pg_query::Node& constraints(int index) const; - ::pg_query::Node* add_constraints(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - constraints() const; + int _internal_items_size() const; - // bool deferred = 2 [json_name = "deferred"]; - void clear_deferred(); - bool deferred() const; - void set_deferred(bool value); + public: + void clear_items() ; + ::pg_query::Node* mutable_items(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_items(); private: - bool _internal_deferred() const; - void _internal_set_deferred(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_items() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_items(); public: - - // @@protoc_insertion_point(class_scope:pg_query.ConstraintsSetStmt) + const ::pg_query::Node& items(int index) const; + ::pg_query::Node* add_items(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + items() const; + // @@protoc_insertion_point(class_scope:pg_query.IntList) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > constraints_; - bool deferred_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > items_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ReindexStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ReindexStmt) */ { +class IntoClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.IntoClause) */ { public: - inline ReindexStmt() : ReindexStmt(nullptr) {} - ~ReindexStmt() override; - explicit PROTOBUF_CONSTEXPR ReindexStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline IntoClause() : IntoClause(nullptr) {} + ~IntoClause() override; + template + explicit PROTOBUF_CONSTEXPR IntoClause(::google::protobuf::internal::ConstantInitialized); - ReindexStmt(const ReindexStmt& from); - ReindexStmt(ReindexStmt&& from) noexcept - : ReindexStmt() { + inline IntoClause(const IntoClause& from) + : IntoClause(nullptr, from) {} + IntoClause(IntoClause&& from) noexcept + : IntoClause() { *this = ::std::move(from); } - inline ReindexStmt& operator=(const ReindexStmt& from) { + inline IntoClause& operator=(const IntoClause& from) { CopyFrom(from); return *this; } - inline ReindexStmt& operator=(ReindexStmt&& from) noexcept { + inline IntoClause& operator=(IntoClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -35372,319 +41789,295 @@ class ReindexStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ReindexStmt& default_instance() { + static const IntoClause& default_instance() { return *internal_default_instance(); } - static inline const ReindexStmt* internal_default_instance() { - return reinterpret_cast( - &_ReindexStmt_default_instance_); + static inline const IntoClause* internal_default_instance() { + return reinterpret_cast( + &_IntoClause_default_instance_); } static constexpr int kIndexInFileMessages = - 118; + 15; - friend void swap(ReindexStmt& a, ReindexStmt& b) { + friend void swap(IntoClause& a, IntoClause& b) { a.Swap(&b); } - inline void Swap(ReindexStmt* other) { + inline void Swap(IntoClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ReindexStmt* other) { + void UnsafeArenaSwap(IntoClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ReindexStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + IntoClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ReindexStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ReindexStmt& from) { - ReindexStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const IntoClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const IntoClause& from) { + IntoClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ReindexStmt* other); + void InternalSwap(IntoClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ReindexStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.IntoClause"; } protected: - explicit ReindexStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit IntoClause(::google::protobuf::Arena* arena); + IntoClause(::google::protobuf::Arena* arena, const IntoClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kParamsFieldNumber = 4, - kNameFieldNumber = 3, - kRelationFieldNumber = 2, - kKindFieldNumber = 1, + kColNamesFieldNumber = 2, + kOptionsFieldNumber = 4, + kAccessMethodFieldNumber = 3, + kTableSpaceNameFieldNumber = 6, + kRelFieldNumber = 1, + kViewQueryFieldNumber = 7, + kOnCommitFieldNumber = 5, + kSkipDataFieldNumber = 8, }; - // repeated .pg_query.Node params = 4 [json_name = "params"]; - int params_size() const; + // repeated .pg_query.Node col_names = 2 [json_name = "colNames"]; + int col_names_size() const; private: - int _internal_params_size() const; + int _internal_col_names_size() const; + public: - void clear_params(); - ::pg_query::Node* mutable_params(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_params(); + void clear_col_names() ; + ::pg_query::Node* mutable_col_names(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_col_names(); private: - const ::pg_query::Node& _internal_params(int index) const; - ::pg_query::Node* _internal_add_params(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_col_names() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_col_names(); public: - const ::pg_query::Node& params(int index) const; - ::pg_query::Node* add_params(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - params() const; - - // string name = 3 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + const ::pg_query::Node& col_names(int index) const; + ::pg_query::Node* add_col_names(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + col_names() const; + // repeated .pg_query.Node options = 4 [json_name = "options"]; + int options_size() const; private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + int _internal_options_size() const; - // .pg_query.RangeVar relation = 2 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string access_method = 3 [json_name = "accessMethod"]; + void clear_access_method() ; + const std::string& access_method() const; + template + void set_access_method(Arg_&& arg, Args_... args); + std::string* mutable_access_method(); + PROTOBUF_NODISCARD std::string* release_access_method(); + void set_allocated_access_method(std::string* value); - // .pg_query.ReindexObjectType kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::ReindexObjectType kind() const; - void set_kind(::pg_query::ReindexObjectType value); private: - ::pg_query::ReindexObjectType _internal_kind() const; - void _internal_set_kind(::pg_query::ReindexObjectType value); - public: - - // @@protoc_insertion_point(class_scope:pg_query.ReindexStmt) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > params_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::RangeVar* relation_; - int kind_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- - -class CheckPointStmt final : - public ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase /* @@protoc_insertion_point(class_definition:pg_query.CheckPointStmt) */ { - public: - inline CheckPointStmt() : CheckPointStmt(nullptr) {} - explicit PROTOBUF_CONSTEXPR CheckPointStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - CheckPointStmt(const CheckPointStmt& from); - CheckPointStmt(CheckPointStmt&& from) noexcept - : CheckPointStmt() { - *this = ::std::move(from); - } + const std::string& _internal_access_method() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_access_method( + const std::string& value); + std::string* _internal_mutable_access_method(); - inline CheckPointStmt& operator=(const CheckPointStmt& from) { - CopyFrom(from); - return *this; - } - inline CheckPointStmt& operator=(CheckPointStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + // string table_space_name = 6 [json_name = "tableSpaceName"]; + void clear_table_space_name() ; + const std::string& table_space_name() const; + template + void set_table_space_name(Arg_&& arg, Args_... args); + std::string* mutable_table_space_name(); + PROTOBUF_NODISCARD std::string* release_table_space_name(); + void set_allocated_table_space_name(std::string* value); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CheckPointStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CheckPointStmt* internal_default_instance() { - return reinterpret_cast( - &_CheckPointStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 119; + private: + const std::string& _internal_table_space_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_table_space_name( + const std::string& value); + std::string* _internal_mutable_table_space_name(); - friend void swap(CheckPointStmt& a, CheckPointStmt& b) { - a.Swap(&b); - } - inline void Swap(CheckPointStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CheckPointStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.RangeVar rel = 1 [json_name = "rel"]; + bool has_rel() const; + void clear_rel() ; + const ::pg_query::RangeVar& rel() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_rel(); + ::pg_query::RangeVar* mutable_rel(); + void set_allocated_rel(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_rel(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_rel(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::RangeVar& _internal_rel() const; + ::pg_query::RangeVar* _internal_mutable_rel(); - CheckPointStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyFrom; - inline void CopyFrom(const CheckPointStmt& from) { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl(*this, from); - } - using ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeFrom; - void MergeFrom(const CheckPointStmt& from) { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl(*this, from); - } public: + // .pg_query.Node view_query = 7 [json_name = "viewQuery"]; + bool has_view_query() const; + void clear_view_query() ; + const ::pg_query::Node& view_query() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_view_query(); + ::pg_query::Node* mutable_view_query(); + void set_allocated_view_query(::pg_query::Node* value); + void unsafe_arena_set_allocated_view_query(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_view_query(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CheckPointStmt"; - } - protected: - explicit CheckPointStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: + const ::pg_query::Node& _internal_view_query() const; + ::pg_query::Node* _internal_mutable_view_query(); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + // .pg_query.OnCommitAction on_commit = 5 [json_name = "onCommit"]; + void clear_on_commit() ; + ::pg_query::OnCommitAction on_commit() const; + void set_on_commit(::pg_query::OnCommitAction value); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + ::pg_query::OnCommitAction _internal_on_commit() const; + void _internal_set_on_commit(::pg_query::OnCommitAction value); - // nested types ---------------------------------------------------- + public: + // bool skip_data = 8 [json_name = "skipData"]; + void clear_skip_data() ; + bool skip_data() const; + void set_skip_data(bool value); - // accessors ------------------------------------------------------- + private: + bool _internal_skip_data() const; + void _internal_set_skip_data(bool value); - // @@protoc_insertion_point(class_scope:pg_query.CheckPointStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.IntoClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 4, + 65, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > col_names_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr access_method_; + ::google::protobuf::internal::ArenaStringPtr table_space_name_; + ::pg_query::RangeVar* rel_; + ::pg_query::Node* view_query_; + int on_commit_; + bool skip_data_; + PROTOBUF_TSAN_DECLARE_MEMBER }; + union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateSchemaStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateSchemaStmt) */ { +class JoinExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JoinExpr) */ { public: - inline CreateSchemaStmt() : CreateSchemaStmt(nullptr) {} - ~CreateSchemaStmt() override; - explicit PROTOBUF_CONSTEXPR CreateSchemaStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline JoinExpr() : JoinExpr(nullptr) {} + ~JoinExpr() override; + template + explicit PROTOBUF_CONSTEXPR JoinExpr(::google::protobuf::internal::ConstantInitialized); - CreateSchemaStmt(const CreateSchemaStmt& from); - CreateSchemaStmt(CreateSchemaStmt&& from) noexcept - : CreateSchemaStmt() { + inline JoinExpr(const JoinExpr& from) + : JoinExpr(nullptr, from) {} + JoinExpr(JoinExpr&& from) noexcept + : JoinExpr() { *this = ::std::move(from); } - inline CreateSchemaStmt& operator=(const CreateSchemaStmt& from) { + inline JoinExpr& operator=(const JoinExpr& from) { CopyFrom(from); return *this; } - inline CreateSchemaStmt& operator=(CreateSchemaStmt&& from) noexcept { + inline JoinExpr& operator=(JoinExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -35694,201 +42087,302 @@ class CreateSchemaStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateSchemaStmt& default_instance() { + static const JoinExpr& default_instance() { return *internal_default_instance(); } - static inline const CreateSchemaStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateSchemaStmt_default_instance_); + static inline const JoinExpr* internal_default_instance() { + return reinterpret_cast( + &_JoinExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 120; + 64; - friend void swap(CreateSchemaStmt& a, CreateSchemaStmt& b) { + friend void swap(JoinExpr& a, JoinExpr& b) { a.Swap(&b); } - inline void Swap(CreateSchemaStmt* other) { + inline void Swap(JoinExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateSchemaStmt* other) { + void UnsafeArenaSwap(JoinExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateSchemaStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JoinExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateSchemaStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateSchemaStmt& from) { - CreateSchemaStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JoinExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JoinExpr& from) { + JoinExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateSchemaStmt* other); + void InternalSwap(JoinExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateSchemaStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JoinExpr"; } protected: - explicit CreateSchemaStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JoinExpr(::google::protobuf::Arena* arena); + JoinExpr(::google::protobuf::Arena* arena, const JoinExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kSchemaEltsFieldNumber = 3, - kSchemanameFieldNumber = 1, - kAuthroleFieldNumber = 2, - kIfNotExistsFieldNumber = 4, + kUsingClauseFieldNumber = 5, + kLargFieldNumber = 3, + kRargFieldNumber = 4, + kJoinUsingAliasFieldNumber = 6, + kQualsFieldNumber = 7, + kAliasFieldNumber = 8, + kJointypeFieldNumber = 1, + kIsNaturalFieldNumber = 2, + kRtindexFieldNumber = 9, }; - // repeated .pg_query.Node schema_elts = 3 [json_name = "schemaElts"]; - int schema_elts_size() const; + // repeated .pg_query.Node using_clause = 5 [json_name = "usingClause"]; + int using_clause_size() const; private: - int _internal_schema_elts_size() const; + int _internal_using_clause_size() const; + public: - void clear_schema_elts(); - ::pg_query::Node* mutable_schema_elts(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_schema_elts(); + void clear_using_clause() ; + ::pg_query::Node* mutable_using_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_using_clause(); private: - const ::pg_query::Node& _internal_schema_elts(int index) const; - ::pg_query::Node* _internal_add_schema_elts(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_using_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_using_clause(); public: - const ::pg_query::Node& schema_elts(int index) const; - ::pg_query::Node* add_schema_elts(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - schema_elts() const; + const ::pg_query::Node& using_clause(int index) const; + ::pg_query::Node* add_using_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + using_clause() const; + // .pg_query.Node larg = 3 [json_name = "larg"]; + bool has_larg() const; + void clear_larg() ; + const ::pg_query::Node& larg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_larg(); + ::pg_query::Node* mutable_larg(); + void set_allocated_larg(::pg_query::Node* value); + void unsafe_arena_set_allocated_larg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_larg(); - // string schemaname = 1 [json_name = "schemaname"]; - void clear_schemaname(); - const std::string& schemaname() const; - template - void set_schemaname(ArgT0&& arg0, ArgT... args); - std::string* mutable_schemaname(); - PROTOBUF_NODISCARD std::string* release_schemaname(); - void set_allocated_schemaname(std::string* schemaname); private: - const std::string& _internal_schemaname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_schemaname(const std::string& value); - std::string* _internal_mutable_schemaname(); + const ::pg_query::Node& _internal_larg() const; + ::pg_query::Node* _internal_mutable_larg(); + public: + // .pg_query.Node rarg = 4 [json_name = "rarg"]; + bool has_rarg() const; + void clear_rarg() ; + const ::pg_query::Node& rarg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_rarg(); + ::pg_query::Node* mutable_rarg(); + void set_allocated_rarg(::pg_query::Node* value); + void unsafe_arena_set_allocated_rarg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_rarg(); - // .pg_query.RoleSpec authrole = 2 [json_name = "authrole"]; - bool has_authrole() const; private: - bool _internal_has_authrole() const; + const ::pg_query::Node& _internal_rarg() const; + ::pg_query::Node* _internal_mutable_rarg(); + public: - void clear_authrole(); - const ::pg_query::RoleSpec& authrole() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_authrole(); - ::pg_query::RoleSpec* mutable_authrole(); - void set_allocated_authrole(::pg_query::RoleSpec* authrole); + // .pg_query.Alias join_using_alias = 6 [json_name = "join_using_alias"]; + bool has_join_using_alias() const; + void clear_join_using_alias() ; + const ::pg_query::Alias& join_using_alias() const; + PROTOBUF_NODISCARD ::pg_query::Alias* release_join_using_alias(); + ::pg_query::Alias* mutable_join_using_alias(); + void set_allocated_join_using_alias(::pg_query::Alias* value); + void unsafe_arena_set_allocated_join_using_alias(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_join_using_alias(); + private: - const ::pg_query::RoleSpec& _internal_authrole() const; - ::pg_query::RoleSpec* _internal_mutable_authrole(); + const ::pg_query::Alias& _internal_join_using_alias() const; + ::pg_query::Alias* _internal_mutable_join_using_alias(); + public: - void unsafe_arena_set_allocated_authrole( - ::pg_query::RoleSpec* authrole); - ::pg_query::RoleSpec* unsafe_arena_release_authrole(); + // .pg_query.Node quals = 7 [json_name = "quals"]; + bool has_quals() const; + void clear_quals() ; + const ::pg_query::Node& quals() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_quals(); + ::pg_query::Node* mutable_quals(); + void set_allocated_quals(::pg_query::Node* value); + void unsafe_arena_set_allocated_quals(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_quals(); - // bool if_not_exists = 4 [json_name = "if_not_exists"]; - void clear_if_not_exists(); - bool if_not_exists() const; - void set_if_not_exists(bool value); private: - bool _internal_if_not_exists() const; - void _internal_set_if_not_exists(bool value); + const ::pg_query::Node& _internal_quals() const; + ::pg_query::Node* _internal_mutable_quals(); + public: + // .pg_query.Alias alias = 8 [json_name = "alias"]; + bool has_alias() const; + void clear_alias() ; + const ::pg_query::Alias& alias() const; + PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); + ::pg_query::Alias* mutable_alias(); + void set_allocated_alias(::pg_query::Alias* value); + void unsafe_arena_set_allocated_alias(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_alias(); - // @@protoc_insertion_point(class_scope:pg_query.CreateSchemaStmt) + private: + const ::pg_query::Alias& _internal_alias() const; + ::pg_query::Alias* _internal_mutable_alias(); + + public: + // .pg_query.JoinType jointype = 1 [json_name = "jointype"]; + void clear_jointype() ; + ::pg_query::JoinType jointype() const; + void set_jointype(::pg_query::JoinType value); + + private: + ::pg_query::JoinType _internal_jointype() const; + void _internal_set_jointype(::pg_query::JoinType value); + + public: + // bool is_natural = 2 [json_name = "isNatural"]; + void clear_is_natural() ; + bool is_natural() const; + void set_is_natural(bool value); + + private: + bool _internal_is_natural() const; + void _internal_set_is_natural(bool value); + + public: + // int32 rtindex = 9 [json_name = "rtindex"]; + void clear_rtindex() ; + ::int32_t rtindex() const; + void set_rtindex(::int32_t value); + + private: + ::int32_t _internal_rtindex() const; + void _internal_set_rtindex(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.JoinExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 9, 6, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > schema_elts_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr schemaname_; - ::pg_query::RoleSpec* authrole_; - bool if_not_exists_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > using_clause_; + ::pg_query::Node* larg_; + ::pg_query::Node* rarg_; + ::pg_query::Alias* join_using_alias_; + ::pg_query::Node* quals_; + ::pg_query::Alias* alias_; + int jointype_; + bool is_natural_; + ::int32_t rtindex_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterDatabaseStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDatabaseStmt) */ { +class JsonAggConstructor final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonAggConstructor) */ { public: - inline AlterDatabaseStmt() : AlterDatabaseStmt(nullptr) {} - ~AlterDatabaseStmt() override; - explicit PROTOBUF_CONSTEXPR AlterDatabaseStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AlterDatabaseStmt(const AlterDatabaseStmt& from); - AlterDatabaseStmt(AlterDatabaseStmt&& from) noexcept - : AlterDatabaseStmt() { + inline JsonAggConstructor() : JsonAggConstructor(nullptr) {} + ~JsonAggConstructor() override; + template + explicit PROTOBUF_CONSTEXPR JsonAggConstructor(::google::protobuf::internal::ConstantInitialized); + + inline JsonAggConstructor(const JsonAggConstructor& from) + : JsonAggConstructor(nullptr, from) {} + JsonAggConstructor(JsonAggConstructor&& from) noexcept + : JsonAggConstructor() { *this = ::std::move(from); } - inline AlterDatabaseStmt& operator=(const AlterDatabaseStmt& from) { + inline JsonAggConstructor& operator=(const JsonAggConstructor& from) { CopyFrom(from); return *this; } - inline AlterDatabaseStmt& operator=(AlterDatabaseStmt&& from) noexcept { + inline JsonAggConstructor& operator=(JsonAggConstructor&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -35898,170 +42392,244 @@ class AlterDatabaseStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterDatabaseStmt& default_instance() { + static const JsonAggConstructor& default_instance() { return *internal_default_instance(); } - static inline const AlterDatabaseStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterDatabaseStmt_default_instance_); + static inline const JsonAggConstructor* internal_default_instance() { + return reinterpret_cast( + &_JsonAggConstructor_default_instance_); } static constexpr int kIndexInFileMessages = - 121; + 123; - friend void swap(AlterDatabaseStmt& a, AlterDatabaseStmt& b) { + friend void swap(JsonAggConstructor& a, JsonAggConstructor& b) { a.Swap(&b); } - inline void Swap(AlterDatabaseStmt* other) { + inline void Swap(JsonAggConstructor* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterDatabaseStmt* other) { + void UnsafeArenaSwap(JsonAggConstructor* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterDatabaseStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonAggConstructor* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterDatabaseStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterDatabaseStmt& from) { - AlterDatabaseStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonAggConstructor& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonAggConstructor& from) { + JsonAggConstructor::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterDatabaseStmt* other); + void InternalSwap(JsonAggConstructor* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterDatabaseStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonAggConstructor"; } protected: - explicit AlterDatabaseStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonAggConstructor(::google::protobuf::Arena* arena); + JsonAggConstructor(::google::protobuf::Arena* arena, const JsonAggConstructor& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kDbnameFieldNumber = 1, + kAggOrderFieldNumber = 3, + kOutputFieldNumber = 1, + kAggFilterFieldNumber = 2, + kOverFieldNumber = 4, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; + // repeated .pg_query.Node agg_order = 3 [json_name = "agg_order"]; + int agg_order_size() const; private: - int _internal_options_size() const; + int _internal_agg_order_size() const; + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_agg_order() ; + ::pg_query::Node* mutable_agg_order(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_agg_order(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_agg_order() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_agg_order(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + const ::pg_query::Node& agg_order(int index) const; + ::pg_query::Node* add_agg_order(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + agg_order() const; + // .pg_query.JsonOutput output = 1 [json_name = "output"]; + bool has_output() const; + void clear_output() ; + const ::pg_query::JsonOutput& output() const; + PROTOBUF_NODISCARD ::pg_query::JsonOutput* release_output(); + ::pg_query::JsonOutput* mutable_output(); + void set_allocated_output(::pg_query::JsonOutput* value); + void unsafe_arena_set_allocated_output(::pg_query::JsonOutput* value); + ::pg_query::JsonOutput* unsafe_arena_release_output(); - // string dbname = 1 [json_name = "dbname"]; - void clear_dbname(); - const std::string& dbname() const; - template - void set_dbname(ArgT0&& arg0, ArgT... args); - std::string* mutable_dbname(); - PROTOBUF_NODISCARD std::string* release_dbname(); - void set_allocated_dbname(std::string* dbname); private: - const std::string& _internal_dbname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname(const std::string& value); - std::string* _internal_mutable_dbname(); + const ::pg_query::JsonOutput& _internal_output() const; + ::pg_query::JsonOutput* _internal_mutable_output(); + + public: + // .pg_query.Node agg_filter = 2 [json_name = "agg_filter"]; + bool has_agg_filter() const; + void clear_agg_filter() ; + const ::pg_query::Node& agg_filter() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_agg_filter(); + ::pg_query::Node* mutable_agg_filter(); + void set_allocated_agg_filter(::pg_query::Node* value); + void unsafe_arena_set_allocated_agg_filter(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_agg_filter(); + + private: + const ::pg_query::Node& _internal_agg_filter() const; + ::pg_query::Node* _internal_mutable_agg_filter(); + public: + // .pg_query.WindowDef over = 4 [json_name = "over"]; + bool has_over() const; + void clear_over() ; + const ::pg_query::WindowDef& over() const; + PROTOBUF_NODISCARD ::pg_query::WindowDef* release_over(); + ::pg_query::WindowDef* mutable_over(); + void set_allocated_over(::pg_query::WindowDef* value); + void unsafe_arena_set_allocated_over(::pg_query::WindowDef* value); + ::pg_query::WindowDef* unsafe_arena_release_over(); - // @@protoc_insertion_point(class_scope:pg_query.AlterDatabaseStmt) + private: + const ::pg_query::WindowDef& _internal_over() const; + ::pg_query::WindowDef* _internal_mutable_over(); + + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonAggConstructor) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr dbname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > agg_order_; + ::pg_query::JsonOutput* output_; + ::pg_query::Node* agg_filter_; + ::pg_query::WindowDef* over_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterDatabaseRefreshCollStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDatabaseRefreshCollStmt) */ { +class JsonArrayAgg final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonArrayAgg) */ { public: - inline AlterDatabaseRefreshCollStmt() : AlterDatabaseRefreshCollStmt(nullptr) {} - ~AlterDatabaseRefreshCollStmt() override; - explicit PROTOBUF_CONSTEXPR AlterDatabaseRefreshCollStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AlterDatabaseRefreshCollStmt(const AlterDatabaseRefreshCollStmt& from); - AlterDatabaseRefreshCollStmt(AlterDatabaseRefreshCollStmt&& from) noexcept - : AlterDatabaseRefreshCollStmt() { + inline JsonArrayAgg() : JsonArrayAgg(nullptr) {} + ~JsonArrayAgg() override; + template + explicit PROTOBUF_CONSTEXPR JsonArrayAgg(::google::protobuf::internal::ConstantInitialized); + + inline JsonArrayAgg(const JsonArrayAgg& from) + : JsonArrayAgg(nullptr, from) {} + JsonArrayAgg(JsonArrayAgg&& from) noexcept + : JsonArrayAgg() { *this = ::std::move(from); } - inline AlterDatabaseRefreshCollStmt& operator=(const AlterDatabaseRefreshCollStmt& from) { + inline JsonArrayAgg& operator=(const JsonArrayAgg& from) { CopyFrom(from); return *this; } - inline AlterDatabaseRefreshCollStmt& operator=(AlterDatabaseRefreshCollStmt&& from) noexcept { + inline JsonArrayAgg& operator=(JsonArrayAgg&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -36071,150 +42639,207 @@ class AlterDatabaseRefreshCollStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterDatabaseRefreshCollStmt& default_instance() { + static const JsonArrayAgg& default_instance() { return *internal_default_instance(); } - static inline const AlterDatabaseRefreshCollStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterDatabaseRefreshCollStmt_default_instance_); + static inline const JsonArrayAgg* internal_default_instance() { + return reinterpret_cast( + &_JsonArrayAgg_default_instance_); } static constexpr int kIndexInFileMessages = - 122; + 125; - friend void swap(AlterDatabaseRefreshCollStmt& a, AlterDatabaseRefreshCollStmt& b) { + friend void swap(JsonArrayAgg& a, JsonArrayAgg& b) { a.Swap(&b); } - inline void Swap(AlterDatabaseRefreshCollStmt* other) { + inline void Swap(JsonArrayAgg* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterDatabaseRefreshCollStmt* other) { + void UnsafeArenaSwap(JsonArrayAgg* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterDatabaseRefreshCollStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonArrayAgg* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterDatabaseRefreshCollStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterDatabaseRefreshCollStmt& from) { - AlterDatabaseRefreshCollStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonArrayAgg& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonArrayAgg& from) { + JsonArrayAgg::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterDatabaseRefreshCollStmt* other); + void InternalSwap(JsonArrayAgg* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterDatabaseRefreshCollStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonArrayAgg"; } protected: - explicit AlterDatabaseRefreshCollStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonArrayAgg(::google::protobuf::Arena* arena); + JsonArrayAgg(::google::protobuf::Arena* arena, const JsonArrayAgg& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kDbnameFieldNumber = 1, + kConstructorFieldNumber = 1, + kArgFieldNumber = 2, + kAbsentOnNullFieldNumber = 3, }; - // string dbname = 1 [json_name = "dbname"]; - void clear_dbname(); - const std::string& dbname() const; - template - void set_dbname(ArgT0&& arg0, ArgT... args); - std::string* mutable_dbname(); - PROTOBUF_NODISCARD std::string* release_dbname(); - void set_allocated_dbname(std::string* dbname); + // .pg_query.JsonAggConstructor constructor = 1 [json_name = "constructor"]; + bool has_constructor() const; + void clear_constructor() ; + const ::pg_query::JsonAggConstructor& constructor() const; + PROTOBUF_NODISCARD ::pg_query::JsonAggConstructor* release_constructor(); + ::pg_query::JsonAggConstructor* mutable_constructor(); + void set_allocated_constructor(::pg_query::JsonAggConstructor* value); + void unsafe_arena_set_allocated_constructor(::pg_query::JsonAggConstructor* value); + ::pg_query::JsonAggConstructor* unsafe_arena_release_constructor(); + private: - const std::string& _internal_dbname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname(const std::string& value); - std::string* _internal_mutable_dbname(); + const ::pg_query::JsonAggConstructor& _internal_constructor() const; + ::pg_query::JsonAggConstructor* _internal_mutable_constructor(); + public: + // .pg_query.JsonValueExpr arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::JsonValueExpr& arg() const; + PROTOBUF_NODISCARD ::pg_query::JsonValueExpr* release_arg(); + ::pg_query::JsonValueExpr* mutable_arg(); + void set_allocated_arg(::pg_query::JsonValueExpr* value); + void unsafe_arena_set_allocated_arg(::pg_query::JsonValueExpr* value); + ::pg_query::JsonValueExpr* unsafe_arena_release_arg(); - // @@protoc_insertion_point(class_scope:pg_query.AlterDatabaseRefreshCollStmt) + private: + const ::pg_query::JsonValueExpr& _internal_arg() const; + ::pg_query::JsonValueExpr* _internal_mutable_arg(); + + public: + // bool absent_on_null = 3 [json_name = "absent_on_null"]; + void clear_absent_on_null() ; + bool absent_on_null() const; + void set_absent_on_null(bool value); + + private: + bool _internal_absent_on_null() const; + void _internal_set_absent_on_null(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonArrayAgg) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr dbname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::JsonAggConstructor* constructor_; + ::pg_query::JsonValueExpr* arg_; + bool absent_on_null_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterDatabaseSetStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterDatabaseSetStmt) */ { +class JsonArrayConstructor final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonArrayConstructor) */ { public: - inline AlterDatabaseSetStmt() : AlterDatabaseSetStmt(nullptr) {} - ~AlterDatabaseSetStmt() override; - explicit PROTOBUF_CONSTEXPR AlterDatabaseSetStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AlterDatabaseSetStmt(const AlterDatabaseSetStmt& from); - AlterDatabaseSetStmt(AlterDatabaseSetStmt&& from) noexcept - : AlterDatabaseSetStmt() { + inline JsonArrayConstructor() : JsonArrayConstructor(nullptr) {} + ~JsonArrayConstructor() override; + template + explicit PROTOBUF_CONSTEXPR JsonArrayConstructor(::google::protobuf::internal::ConstantInitialized); + + inline JsonArrayConstructor(const JsonArrayConstructor& from) + : JsonArrayConstructor(nullptr, from) {} + JsonArrayConstructor(JsonArrayConstructor&& from) noexcept + : JsonArrayConstructor() { *this = ::std::move(from); } - inline AlterDatabaseSetStmt& operator=(const AlterDatabaseSetStmt& from) { + inline JsonArrayConstructor& operator=(const JsonArrayConstructor& from) { CopyFrom(from); return *this; } - inline AlterDatabaseSetStmt& operator=(AlterDatabaseSetStmt&& from) noexcept { + inline JsonArrayConstructor& operator=(JsonArrayConstructor&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -36224,170 +42849,222 @@ class AlterDatabaseSetStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterDatabaseSetStmt& default_instance() { + static const JsonArrayConstructor& default_instance() { return *internal_default_instance(); } - static inline const AlterDatabaseSetStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterDatabaseSetStmt_default_instance_); + static inline const JsonArrayConstructor* internal_default_instance() { + return reinterpret_cast( + &_JsonArrayConstructor_default_instance_); } static constexpr int kIndexInFileMessages = - 123; + 121; - friend void swap(AlterDatabaseSetStmt& a, AlterDatabaseSetStmt& b) { + friend void swap(JsonArrayConstructor& a, JsonArrayConstructor& b) { a.Swap(&b); } - inline void Swap(AlterDatabaseSetStmt* other) { + inline void Swap(JsonArrayConstructor* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterDatabaseSetStmt* other) { + void UnsafeArenaSwap(JsonArrayConstructor* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterDatabaseSetStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonArrayConstructor* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterDatabaseSetStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterDatabaseSetStmt& from) { - AlterDatabaseSetStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonArrayConstructor& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonArrayConstructor& from) { + JsonArrayConstructor::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterDatabaseSetStmt* other); + void InternalSwap(JsonArrayConstructor* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterDatabaseSetStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonArrayConstructor"; } protected: - explicit AlterDatabaseSetStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonArrayConstructor(::google::protobuf::Arena* arena); + JsonArrayConstructor(::google::protobuf::Arena* arena, const JsonArrayConstructor& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kDbnameFieldNumber = 1, - kSetstmtFieldNumber = 2, + kExprsFieldNumber = 1, + kOutputFieldNumber = 2, + kAbsentOnNullFieldNumber = 3, + kLocationFieldNumber = 4, }; - // string dbname = 1 [json_name = "dbname"]; - void clear_dbname(); - const std::string& dbname() const; - template - void set_dbname(ArgT0&& arg0, ArgT... args); - std::string* mutable_dbname(); - PROTOBUF_NODISCARD std::string* release_dbname(); - void set_allocated_dbname(std::string* dbname); + // repeated .pg_query.Node exprs = 1 [json_name = "exprs"]; + int exprs_size() const; private: - const std::string& _internal_dbname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_dbname(const std::string& value); - std::string* _internal_mutable_dbname(); + int _internal_exprs_size() const; + + public: + void clear_exprs() ; + ::pg_query::Node* mutable_exprs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_exprs(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_exprs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_exprs(); public: + const ::pg_query::Node& exprs(int index) const; + ::pg_query::Node* add_exprs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + exprs() const; + // .pg_query.JsonOutput output = 2 [json_name = "output"]; + bool has_output() const; + void clear_output() ; + const ::pg_query::JsonOutput& output() const; + PROTOBUF_NODISCARD ::pg_query::JsonOutput* release_output(); + ::pg_query::JsonOutput* mutable_output(); + void set_allocated_output(::pg_query::JsonOutput* value); + void unsafe_arena_set_allocated_output(::pg_query::JsonOutput* value); + ::pg_query::JsonOutput* unsafe_arena_release_output(); - // .pg_query.VariableSetStmt setstmt = 2 [json_name = "setstmt"]; - bool has_setstmt() const; private: - bool _internal_has_setstmt() const; + const ::pg_query::JsonOutput& _internal_output() const; + ::pg_query::JsonOutput* _internal_mutable_output(); + public: - void clear_setstmt(); - const ::pg_query::VariableSetStmt& setstmt() const; - PROTOBUF_NODISCARD ::pg_query::VariableSetStmt* release_setstmt(); - ::pg_query::VariableSetStmt* mutable_setstmt(); - void set_allocated_setstmt(::pg_query::VariableSetStmt* setstmt); + // bool absent_on_null = 3 [json_name = "absent_on_null"]; + void clear_absent_on_null() ; + bool absent_on_null() const; + void set_absent_on_null(bool value); + private: - const ::pg_query::VariableSetStmt& _internal_setstmt() const; - ::pg_query::VariableSetStmt* _internal_mutable_setstmt(); + bool _internal_absent_on_null() const; + void _internal_set_absent_on_null(bool value); + public: - void unsafe_arena_set_allocated_setstmt( - ::pg_query::VariableSetStmt* setstmt); - ::pg_query::VariableSetStmt* unsafe_arena_release_setstmt(); + // int32 location = 4 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterDatabaseSetStmt) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonArrayConstructor) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr dbname_; - ::pg_query::VariableSetStmt* setstmt_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > exprs_; + ::pg_query::JsonOutput* output_; + bool absent_on_null_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterRoleSetStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterRoleSetStmt) */ { +class JsonArrayQueryConstructor final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonArrayQueryConstructor) */ { public: - inline AlterRoleSetStmt() : AlterRoleSetStmt(nullptr) {} - ~AlterRoleSetStmt() override; - explicit PROTOBUF_CONSTEXPR AlterRoleSetStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AlterRoleSetStmt(const AlterRoleSetStmt& from); - AlterRoleSetStmt(AlterRoleSetStmt&& from) noexcept - : AlterRoleSetStmt() { + inline JsonArrayQueryConstructor() : JsonArrayQueryConstructor(nullptr) {} + ~JsonArrayQueryConstructor() override; + template + explicit PROTOBUF_CONSTEXPR JsonArrayQueryConstructor(::google::protobuf::internal::ConstantInitialized); + + inline JsonArrayQueryConstructor(const JsonArrayQueryConstructor& from) + : JsonArrayQueryConstructor(nullptr, from) {} + JsonArrayQueryConstructor(JsonArrayQueryConstructor&& from) noexcept + : JsonArrayQueryConstructor() { *this = ::std::move(from); } - inline AlterRoleSetStmt& operator=(const AlterRoleSetStmt& from) { + inline JsonArrayQueryConstructor& operator=(const JsonArrayQueryConstructor& from) { CopyFrom(from); return *this; } - inline AlterRoleSetStmt& operator=(AlterRoleSetStmt&& from) noexcept { + inline JsonArrayQueryConstructor& operator=(JsonArrayQueryConstructor&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -36397,190 +43074,236 @@ class AlterRoleSetStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterRoleSetStmt& default_instance() { + static const JsonArrayQueryConstructor& default_instance() { return *internal_default_instance(); } - static inline const AlterRoleSetStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterRoleSetStmt_default_instance_); + static inline const JsonArrayQueryConstructor* internal_default_instance() { + return reinterpret_cast( + &_JsonArrayQueryConstructor_default_instance_); } static constexpr int kIndexInFileMessages = - 124; + 122; - friend void swap(AlterRoleSetStmt& a, AlterRoleSetStmt& b) { + friend void swap(JsonArrayQueryConstructor& a, JsonArrayQueryConstructor& b) { a.Swap(&b); } - inline void Swap(AlterRoleSetStmt* other) { + inline void Swap(JsonArrayQueryConstructor* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterRoleSetStmt* other) { + void UnsafeArenaSwap(JsonArrayQueryConstructor* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterRoleSetStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonArrayQueryConstructor* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterRoleSetStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterRoleSetStmt& from) { - AlterRoleSetStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonArrayQueryConstructor& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonArrayQueryConstructor& from) { + JsonArrayQueryConstructor::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterRoleSetStmt* other); + void InternalSwap(JsonArrayQueryConstructor* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterRoleSetStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonArrayQueryConstructor"; } protected: - explicit AlterRoleSetStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonArrayQueryConstructor(::google::protobuf::Arena* arena); + JsonArrayQueryConstructor(::google::protobuf::Arena* arena, const JsonArrayQueryConstructor& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kDatabaseFieldNumber = 2, - kRoleFieldNumber = 1, - kSetstmtFieldNumber = 3, + kQueryFieldNumber = 1, + kOutputFieldNumber = 2, + kFormatFieldNumber = 3, + kAbsentOnNullFieldNumber = 4, + kLocationFieldNumber = 5, }; - // string database = 2 [json_name = "database"]; - void clear_database(); - const std::string& database() const; - template - void set_database(ArgT0&& arg0, ArgT... args); - std::string* mutable_database(); - PROTOBUF_NODISCARD std::string* release_database(); - void set_allocated_database(std::string* database); + // .pg_query.Node query = 1 [json_name = "query"]; + bool has_query() const; + void clear_query() ; + const ::pg_query::Node& query() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_query(); + ::pg_query::Node* mutable_query(); + void set_allocated_query(::pg_query::Node* value); + void unsafe_arena_set_allocated_query(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_query(); + private: - const std::string& _internal_database() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_database(const std::string& value); - std::string* _internal_mutable_database(); + const ::pg_query::Node& _internal_query() const; + ::pg_query::Node* _internal_mutable_query(); + public: + // .pg_query.JsonOutput output = 2 [json_name = "output"]; + bool has_output() const; + void clear_output() ; + const ::pg_query::JsonOutput& output() const; + PROTOBUF_NODISCARD ::pg_query::JsonOutput* release_output(); + ::pg_query::JsonOutput* mutable_output(); + void set_allocated_output(::pg_query::JsonOutput* value); + void unsafe_arena_set_allocated_output(::pg_query::JsonOutput* value); + ::pg_query::JsonOutput* unsafe_arena_release_output(); - // .pg_query.RoleSpec role = 1 [json_name = "role"]; - bool has_role() const; private: - bool _internal_has_role() const; + const ::pg_query::JsonOutput& _internal_output() const; + ::pg_query::JsonOutput* _internal_mutable_output(); + public: - void clear_role(); - const ::pg_query::RoleSpec& role() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_role(); - ::pg_query::RoleSpec* mutable_role(); - void set_allocated_role(::pg_query::RoleSpec* role); + // .pg_query.JsonFormat format = 3 [json_name = "format"]; + bool has_format() const; + void clear_format() ; + const ::pg_query::JsonFormat& format() const; + PROTOBUF_NODISCARD ::pg_query::JsonFormat* release_format(); + ::pg_query::JsonFormat* mutable_format(); + void set_allocated_format(::pg_query::JsonFormat* value); + void unsafe_arena_set_allocated_format(::pg_query::JsonFormat* value); + ::pg_query::JsonFormat* unsafe_arena_release_format(); + private: - const ::pg_query::RoleSpec& _internal_role() const; - ::pg_query::RoleSpec* _internal_mutable_role(); + const ::pg_query::JsonFormat& _internal_format() const; + ::pg_query::JsonFormat* _internal_mutable_format(); + public: - void unsafe_arena_set_allocated_role( - ::pg_query::RoleSpec* role); - ::pg_query::RoleSpec* unsafe_arena_release_role(); + // bool absent_on_null = 4 [json_name = "absent_on_null"]; + void clear_absent_on_null() ; + bool absent_on_null() const; + void set_absent_on_null(bool value); - // .pg_query.VariableSetStmt setstmt = 3 [json_name = "setstmt"]; - bool has_setstmt() const; private: - bool _internal_has_setstmt() const; + bool _internal_absent_on_null() const; + void _internal_set_absent_on_null(bool value); + public: - void clear_setstmt(); - const ::pg_query::VariableSetStmt& setstmt() const; - PROTOBUF_NODISCARD ::pg_query::VariableSetStmt* release_setstmt(); - ::pg_query::VariableSetStmt* mutable_setstmt(); - void set_allocated_setstmt(::pg_query::VariableSetStmt* setstmt); + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + private: - const ::pg_query::VariableSetStmt& _internal_setstmt() const; - ::pg_query::VariableSetStmt* _internal_mutable_setstmt(); - public: - void unsafe_arena_set_allocated_setstmt( - ::pg_query::VariableSetStmt* setstmt); - ::pg_query::VariableSetStmt* unsafe_arena_release_setstmt(); + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterRoleSetStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonArrayQueryConstructor) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr database_; - ::pg_query::RoleSpec* role_; - ::pg_query::VariableSetStmt* setstmt_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* query_; + ::pg_query::JsonOutput* output_; + ::pg_query::JsonFormat* format_; + bool absent_on_null_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateConversionStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateConversionStmt) */ { +class JsonConstructorExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonConstructorExpr) */ { public: - inline CreateConversionStmt() : CreateConversionStmt(nullptr) {} - ~CreateConversionStmt() override; - explicit PROTOBUF_CONSTEXPR CreateConversionStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - CreateConversionStmt(const CreateConversionStmt& from); - CreateConversionStmt(CreateConversionStmt&& from) noexcept - : CreateConversionStmt() { + inline JsonConstructorExpr() : JsonConstructorExpr(nullptr) {} + ~JsonConstructorExpr() override; + template + explicit PROTOBUF_CONSTEXPR JsonConstructorExpr(::google::protobuf::internal::ConstantInitialized); + + inline JsonConstructorExpr(const JsonConstructorExpr& from) + : JsonConstructorExpr(nullptr, from) {} + JsonConstructorExpr(JsonConstructorExpr&& from) noexcept + : JsonConstructorExpr() { *this = ::std::move(from); } - inline CreateConversionStmt& operator=(const CreateConversionStmt& from) { + inline JsonConstructorExpr& operator=(const JsonConstructorExpr& from) { CopyFrom(from); return *this; } - inline CreateConversionStmt& operator=(CreateConversionStmt&& from) noexcept { + inline JsonConstructorExpr& operator=(JsonConstructorExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -36590,217 +43313,297 @@ class CreateConversionStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateConversionStmt& default_instance() { + static const JsonConstructorExpr& default_instance() { return *internal_default_instance(); } - static inline const CreateConversionStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateConversionStmt_default_instance_); + static inline const JsonConstructorExpr* internal_default_instance() { + return reinterpret_cast( + &_JsonConstructorExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 125; + 52; - friend void swap(CreateConversionStmt& a, CreateConversionStmt& b) { + friend void swap(JsonConstructorExpr& a, JsonConstructorExpr& b) { a.Swap(&b); } - inline void Swap(CreateConversionStmt* other) { + inline void Swap(JsonConstructorExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateConversionStmt* other) { + void UnsafeArenaSwap(JsonConstructorExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateConversionStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonConstructorExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateConversionStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateConversionStmt& from) { - CreateConversionStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonConstructorExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonConstructorExpr& from) { + JsonConstructorExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateConversionStmt* other); + void InternalSwap(JsonConstructorExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateConversionStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonConstructorExpr"; } protected: - explicit CreateConversionStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonConstructorExpr(::google::protobuf::Arena* arena); + JsonConstructorExpr(::google::protobuf::Arena* arena, const JsonConstructorExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kConversionNameFieldNumber = 1, - kFuncNameFieldNumber = 4, - kForEncodingNameFieldNumber = 2, - kToEncodingNameFieldNumber = 3, - kDefFieldNumber = 5, + kArgsFieldNumber = 3, + kXprFieldNumber = 1, + kFuncFieldNumber = 4, + kCoercionFieldNumber = 5, + kReturningFieldNumber = 6, + kTypeFieldNumber = 2, + kAbsentOnNullFieldNumber = 7, + kUniqueFieldNumber = 8, + kLocationFieldNumber = 9, }; - // repeated .pg_query.Node conversion_name = 1 [json_name = "conversion_name"]; - int conversion_name_size() const; + // repeated .pg_query.Node args = 3 [json_name = "args"]; + int args_size() const; private: - int _internal_conversion_name_size() const; + int _internal_args_size() const; + public: - void clear_conversion_name(); - ::pg_query::Node* mutable_conversion_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_conversion_name(); + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const ::pg_query::Node& _internal_conversion_name(int index) const; - ::pg_query::Node* _internal_add_conversion_name(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - const ::pg_query::Node& conversion_name(int index) const; - ::pg_query::Node* add_conversion_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - conversion_name() const; + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // repeated .pg_query.Node func_name = 4 [json_name = "func_name"]; - int func_name_size() const; private: - int _internal_func_name_size() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_func_name(); - ::pg_query::Node* mutable_func_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_func_name(); + // .pg_query.Node func = 4 [json_name = "func"]; + bool has_func() const; + void clear_func() ; + const ::pg_query::Node& func() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_func(); + ::pg_query::Node* mutable_func(); + void set_allocated_func(::pg_query::Node* value); + void unsafe_arena_set_allocated_func(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_func(); + + private: + const ::pg_query::Node& _internal_func() const; + ::pg_query::Node* _internal_mutable_func(); + + public: + // .pg_query.Node coercion = 5 [json_name = "coercion"]; + bool has_coercion() const; + void clear_coercion() ; + const ::pg_query::Node& coercion() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_coercion(); + ::pg_query::Node* mutable_coercion(); + void set_allocated_coercion(::pg_query::Node* value); + void unsafe_arena_set_allocated_coercion(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_coercion(); + private: - const ::pg_query::Node& _internal_func_name(int index) const; - ::pg_query::Node* _internal_add_func_name(); + const ::pg_query::Node& _internal_coercion() const; + ::pg_query::Node* _internal_mutable_coercion(); + public: - const ::pg_query::Node& func_name(int index) const; - ::pg_query::Node* add_func_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - func_name() const; + // .pg_query.JsonReturning returning = 6 [json_name = "returning"]; + bool has_returning() const; + void clear_returning() ; + const ::pg_query::JsonReturning& returning() const; + PROTOBUF_NODISCARD ::pg_query::JsonReturning* release_returning(); + ::pg_query::JsonReturning* mutable_returning(); + void set_allocated_returning(::pg_query::JsonReturning* value); + void unsafe_arena_set_allocated_returning(::pg_query::JsonReturning* value); + ::pg_query::JsonReturning* unsafe_arena_release_returning(); - // string for_encoding_name = 2 [json_name = "for_encoding_name"]; - void clear_for_encoding_name(); - const std::string& for_encoding_name() const; - template - void set_for_encoding_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_for_encoding_name(); - PROTOBUF_NODISCARD std::string* release_for_encoding_name(); - void set_allocated_for_encoding_name(std::string* for_encoding_name); private: - const std::string& _internal_for_encoding_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_for_encoding_name(const std::string& value); - std::string* _internal_mutable_for_encoding_name(); + const ::pg_query::JsonReturning& _internal_returning() const; + ::pg_query::JsonReturning* _internal_mutable_returning(); + public: + // .pg_query.JsonConstructorType type = 2 [json_name = "type"]; + void clear_type() ; + ::pg_query::JsonConstructorType type() const; + void set_type(::pg_query::JsonConstructorType value); - // string to_encoding_name = 3 [json_name = "to_encoding_name"]; - void clear_to_encoding_name(); - const std::string& to_encoding_name() const; - template - void set_to_encoding_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_to_encoding_name(); - PROTOBUF_NODISCARD std::string* release_to_encoding_name(); - void set_allocated_to_encoding_name(std::string* to_encoding_name); private: - const std::string& _internal_to_encoding_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_to_encoding_name(const std::string& value); - std::string* _internal_mutable_to_encoding_name(); + ::pg_query::JsonConstructorType _internal_type() const; + void _internal_set_type(::pg_query::JsonConstructorType value); + + public: + // bool absent_on_null = 7 [json_name = "absent_on_null"]; + void clear_absent_on_null() ; + bool absent_on_null() const; + void set_absent_on_null(bool value); + + private: + bool _internal_absent_on_null() const; + void _internal_set_absent_on_null(bool value); + + public: + // bool unique = 8 [json_name = "unique"]; + void clear_unique() ; + bool unique() const; + void set_unique(bool value); + + private: + bool _internal_unique() const; + void _internal_set_unique(bool value); + public: + // int32 location = 9 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // bool def = 5 [json_name = "def"]; - void clear_def(); - bool def() const; - void set_def(bool value); private: - bool _internal_def() const; - void _internal_set_def(bool value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CreateConversionStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonConstructorExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 9, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > conversion_name_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > func_name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr for_encoding_name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr to_encoding_name_; - bool def_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* xpr_; + ::pg_query::Node* func_; + ::pg_query::Node* coercion_; + ::pg_query::JsonReturning* returning_; + int type_; + bool absent_on_null_; + bool unique_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateCastStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateCastStmt) */ { +class JsonIsPredicate final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonIsPredicate) */ { public: - inline CreateCastStmt() : CreateCastStmt(nullptr) {} - ~CreateCastStmt() override; - explicit PROTOBUF_CONSTEXPR CreateCastStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - CreateCastStmt(const CreateCastStmt& from); - CreateCastStmt(CreateCastStmt&& from) noexcept - : CreateCastStmt() { + inline JsonIsPredicate() : JsonIsPredicate(nullptr) {} + ~JsonIsPredicate() override; + template + explicit PROTOBUF_CONSTEXPR JsonIsPredicate(::google::protobuf::internal::ConstantInitialized); + + inline JsonIsPredicate(const JsonIsPredicate& from) + : JsonIsPredicate(nullptr, from) {} + JsonIsPredicate(JsonIsPredicate&& from) noexcept + : JsonIsPredicate() { *this = ::std::move(from); } - inline CreateCastStmt& operator=(const CreateCastStmt& from) { + inline JsonIsPredicate& operator=(const JsonIsPredicate& from) { CopyFrom(from); return *this; } - inline CreateCastStmt& operator=(CreateCastStmt&& from) noexcept { + inline JsonIsPredicate& operator=(JsonIsPredicate&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -36810,216 +43613,231 @@ class CreateCastStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateCastStmt& default_instance() { + static const JsonIsPredicate& default_instance() { return *internal_default_instance(); } - static inline const CreateCastStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateCastStmt_default_instance_); + static inline const JsonIsPredicate* internal_default_instance() { + return reinterpret_cast( + &_JsonIsPredicate_default_instance_); } static constexpr int kIndexInFileMessages = - 126; + 53; - friend void swap(CreateCastStmt& a, CreateCastStmt& b) { + friend void swap(JsonIsPredicate& a, JsonIsPredicate& b) { a.Swap(&b); } - inline void Swap(CreateCastStmt* other) { + inline void Swap(JsonIsPredicate* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateCastStmt* other) { + void UnsafeArenaSwap(JsonIsPredicate* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateCastStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonIsPredicate* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateCastStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateCastStmt& from) { - CreateCastStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonIsPredicate& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonIsPredicate& from) { + JsonIsPredicate::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateCastStmt* other); + void InternalSwap(JsonIsPredicate* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateCastStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonIsPredicate"; } protected: - explicit CreateCastStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonIsPredicate(::google::protobuf::Arena* arena); + JsonIsPredicate(::google::protobuf::Arena* arena, const JsonIsPredicate& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kSourcetypeFieldNumber = 1, - kTargettypeFieldNumber = 2, - kFuncFieldNumber = 3, - kContextFieldNumber = 4, - kInoutFieldNumber = 5, + kExprFieldNumber = 1, + kFormatFieldNumber = 2, + kItemTypeFieldNumber = 3, + kUniqueKeysFieldNumber = 4, + kLocationFieldNumber = 5, }; - // .pg_query.TypeName sourcetype = 1 [json_name = "sourcetype"]; - bool has_sourcetype() const; - private: - bool _internal_has_sourcetype() const; - public: - void clear_sourcetype(); - const ::pg_query::TypeName& sourcetype() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_sourcetype(); - ::pg_query::TypeName* mutable_sourcetype(); - void set_allocated_sourcetype(::pg_query::TypeName* sourcetype); - private: - const ::pg_query::TypeName& _internal_sourcetype() const; - ::pg_query::TypeName* _internal_mutable_sourcetype(); - public: - void unsafe_arena_set_allocated_sourcetype( - ::pg_query::TypeName* sourcetype); - ::pg_query::TypeName* unsafe_arena_release_sourcetype(); + // .pg_query.Node expr = 1 [json_name = "expr"]; + bool has_expr() const; + void clear_expr() ; + const ::pg_query::Node& expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); + ::pg_query::Node* mutable_expr(); + void set_allocated_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_expr(); - // .pg_query.TypeName targettype = 2 [json_name = "targettype"]; - bool has_targettype() const; - private: - bool _internal_has_targettype() const; - public: - void clear_targettype(); - const ::pg_query::TypeName& targettype() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_targettype(); - ::pg_query::TypeName* mutable_targettype(); - void set_allocated_targettype(::pg_query::TypeName* targettype); private: - const ::pg_query::TypeName& _internal_targettype() const; - ::pg_query::TypeName* _internal_mutable_targettype(); + const ::pg_query::Node& _internal_expr() const; + ::pg_query::Node* _internal_mutable_expr(); + public: - void unsafe_arena_set_allocated_targettype( - ::pg_query::TypeName* targettype); - ::pg_query::TypeName* unsafe_arena_release_targettype(); + // .pg_query.JsonFormat format = 2 [json_name = "format"]; + bool has_format() const; + void clear_format() ; + const ::pg_query::JsonFormat& format() const; + PROTOBUF_NODISCARD ::pg_query::JsonFormat* release_format(); + ::pg_query::JsonFormat* mutable_format(); + void set_allocated_format(::pg_query::JsonFormat* value); + void unsafe_arena_set_allocated_format(::pg_query::JsonFormat* value); + ::pg_query::JsonFormat* unsafe_arena_release_format(); - // .pg_query.ObjectWithArgs func = 3 [json_name = "func"]; - bool has_func() const; private: - bool _internal_has_func() const; + const ::pg_query::JsonFormat& _internal_format() const; + ::pg_query::JsonFormat* _internal_mutable_format(); + public: - void clear_func(); - const ::pg_query::ObjectWithArgs& func() const; - PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_func(); - ::pg_query::ObjectWithArgs* mutable_func(); - void set_allocated_func(::pg_query::ObjectWithArgs* func); + // .pg_query.JsonValueType item_type = 3 [json_name = "item_type"]; + void clear_item_type() ; + ::pg_query::JsonValueType item_type() const; + void set_item_type(::pg_query::JsonValueType value); + private: - const ::pg_query::ObjectWithArgs& _internal_func() const; - ::pg_query::ObjectWithArgs* _internal_mutable_func(); + ::pg_query::JsonValueType _internal_item_type() const; + void _internal_set_item_type(::pg_query::JsonValueType value); + public: - void unsafe_arena_set_allocated_func( - ::pg_query::ObjectWithArgs* func); - ::pg_query::ObjectWithArgs* unsafe_arena_release_func(); + // bool unique_keys = 4 [json_name = "unique_keys"]; + void clear_unique_keys() ; + bool unique_keys() const; + void set_unique_keys(bool value); - // .pg_query.CoercionContext context = 4 [json_name = "context"]; - void clear_context(); - ::pg_query::CoercionContext context() const; - void set_context(::pg_query::CoercionContext value); private: - ::pg_query::CoercionContext _internal_context() const; - void _internal_set_context(::pg_query::CoercionContext value); + bool _internal_unique_keys() const; + void _internal_set_unique_keys(bool value); + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // bool inout = 5 [json_name = "inout"]; - void clear_inout(); - bool inout() const; - void set_inout(bool value); private: - bool _internal_inout() const; - void _internal_set_inout(bool value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CreateCastStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonIsPredicate) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::TypeName* sourcetype_; - ::pg_query::TypeName* targettype_; - ::pg_query::ObjectWithArgs* func_; - int context_; - bool inout_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* expr_; + ::pg_query::JsonFormat* format_; + int item_type_; + bool unique_keys_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateOpClassStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateOpClassStmt) */ { +class JsonKeyValue final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonKeyValue) */ { public: - inline CreateOpClassStmt() : CreateOpClassStmt(nullptr) {} - ~CreateOpClassStmt() override; - explicit PROTOBUF_CONSTEXPR CreateOpClassStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - CreateOpClassStmt(const CreateOpClassStmt& from); - CreateOpClassStmt(CreateOpClassStmt&& from) noexcept - : CreateOpClassStmt() { + inline JsonKeyValue() : JsonKeyValue(nullptr) {} + ~JsonKeyValue() override; + template + explicit PROTOBUF_CONSTEXPR JsonKeyValue(::google::protobuf::internal::ConstantInitialized); + + inline JsonKeyValue(const JsonKeyValue& from) + : JsonKeyValue(nullptr, from) {} + JsonKeyValue(JsonKeyValue&& from) noexcept + : JsonKeyValue() { *this = ::std::move(from); } - inline CreateOpClassStmt& operator=(const CreateOpClassStmt& from) { + inline JsonKeyValue& operator=(const JsonKeyValue& from) { CopyFrom(from); return *this; } - inline CreateOpClassStmt& operator=(CreateOpClassStmt&& from) noexcept { + inline JsonKeyValue& operator=(JsonKeyValue&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -37029,241 +43847,195 @@ class CreateOpClassStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateOpClassStmt& default_instance() { + static const JsonKeyValue& default_instance() { return *internal_default_instance(); } - static inline const CreateOpClassStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateOpClassStmt_default_instance_); + static inline const JsonKeyValue* internal_default_instance() { + return reinterpret_cast( + &_JsonKeyValue_default_instance_); } static constexpr int kIndexInFileMessages = - 127; + 119; - friend void swap(CreateOpClassStmt& a, CreateOpClassStmt& b) { + friend void swap(JsonKeyValue& a, JsonKeyValue& b) { a.Swap(&b); } - inline void Swap(CreateOpClassStmt* other) { + inline void Swap(JsonKeyValue* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateOpClassStmt* other) { + void UnsafeArenaSwap(JsonKeyValue* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateOpClassStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonKeyValue* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateOpClassStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateOpClassStmt& from) { - CreateOpClassStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonKeyValue& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonKeyValue& from) { + JsonKeyValue::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateOpClassStmt* other); + void InternalSwap(JsonKeyValue* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateOpClassStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonKeyValue"; } protected: - explicit CreateOpClassStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonKeyValue(::google::protobuf::Arena* arena); + JsonKeyValue(::google::protobuf::Arena* arena, const JsonKeyValue& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOpclassnameFieldNumber = 1, - kOpfamilynameFieldNumber = 2, - kItemsFieldNumber = 5, - kAmnameFieldNumber = 3, - kDatatypeFieldNumber = 4, - kIsDefaultFieldNumber = 6, + kKeyFieldNumber = 1, + kValueFieldNumber = 2, }; - // repeated .pg_query.Node opclassname = 1 [json_name = "opclassname"]; - int opclassname_size() const; - private: - int _internal_opclassname_size() const; - public: - void clear_opclassname(); - ::pg_query::Node* mutable_opclassname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_opclassname(); - private: - const ::pg_query::Node& _internal_opclassname(int index) const; - ::pg_query::Node* _internal_add_opclassname(); - public: - const ::pg_query::Node& opclassname(int index) const; - ::pg_query::Node* add_opclassname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - opclassname() const; - - // repeated .pg_query.Node opfamilyname = 2 [json_name = "opfamilyname"]; - int opfamilyname_size() const; - private: - int _internal_opfamilyname_size() const; - public: - void clear_opfamilyname(); - ::pg_query::Node* mutable_opfamilyname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_opfamilyname(); - private: - const ::pg_query::Node& _internal_opfamilyname(int index) const; - ::pg_query::Node* _internal_add_opfamilyname(); - public: - const ::pg_query::Node& opfamilyname(int index) const; - ::pg_query::Node* add_opfamilyname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - opfamilyname() const; + // .pg_query.Node key = 1 [json_name = "key"]; + bool has_key() const; + void clear_key() ; + const ::pg_query::Node& key() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_key(); + ::pg_query::Node* mutable_key(); + void set_allocated_key(::pg_query::Node* value); + void unsafe_arena_set_allocated_key(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_key(); - // repeated .pg_query.Node items = 5 [json_name = "items"]; - int items_size() const; - private: - int _internal_items_size() const; - public: - void clear_items(); - ::pg_query::Node* mutable_items(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_items(); private: - const ::pg_query::Node& _internal_items(int index) const; - ::pg_query::Node* _internal_add_items(); - public: - const ::pg_query::Node& items(int index) const; - ::pg_query::Node* add_items(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - items() const; + const ::pg_query::Node& _internal_key() const; + ::pg_query::Node* _internal_mutable_key(); - // string amname = 3 [json_name = "amname"]; - void clear_amname(); - const std::string& amname() const; - template - void set_amname(ArgT0&& arg0, ArgT... args); - std::string* mutable_amname(); - PROTOBUF_NODISCARD std::string* release_amname(); - void set_allocated_amname(std::string* amname); - private: - const std::string& _internal_amname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_amname(const std::string& value); - std::string* _internal_mutable_amname(); public: + // .pg_query.JsonValueExpr value = 2 [json_name = "value"]; + bool has_value() const; + void clear_value() ; + const ::pg_query::JsonValueExpr& value() const; + PROTOBUF_NODISCARD ::pg_query::JsonValueExpr* release_value(); + ::pg_query::JsonValueExpr* mutable_value(); + void set_allocated_value(::pg_query::JsonValueExpr* value); + void unsafe_arena_set_allocated_value(::pg_query::JsonValueExpr* value); + ::pg_query::JsonValueExpr* unsafe_arena_release_value(); - // .pg_query.TypeName datatype = 4 [json_name = "datatype"]; - bool has_datatype() const; private: - bool _internal_has_datatype() const; - public: - void clear_datatype(); - const ::pg_query::TypeName& datatype() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_datatype(); - ::pg_query::TypeName* mutable_datatype(); - void set_allocated_datatype(::pg_query::TypeName* datatype); - private: - const ::pg_query::TypeName& _internal_datatype() const; - ::pg_query::TypeName* _internal_mutable_datatype(); - public: - void unsafe_arena_set_allocated_datatype( - ::pg_query::TypeName* datatype); - ::pg_query::TypeName* unsafe_arena_release_datatype(); + const ::pg_query::JsonValueExpr& _internal_value() const; + ::pg_query::JsonValueExpr* _internal_mutable_value(); - // bool is_default = 6 [json_name = "isDefault"]; - void clear_is_default(); - bool is_default() const; - void set_is_default(bool value); - private: - bool _internal_is_default() const; - void _internal_set_is_default(bool value); public: - - // @@protoc_insertion_point(class_scope:pg_query.CreateOpClassStmt) + // @@protoc_insertion_point(class_scope:pg_query.JsonKeyValue) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > opclassname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > opfamilyname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > items_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr amname_; - ::pg_query::TypeName* datatype_; - bool is_default_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* key_; + ::pg_query::JsonValueExpr* value_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateOpFamilyStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateOpFamilyStmt) */ { +class JsonObjectAgg final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonObjectAgg) */ { public: - inline CreateOpFamilyStmt() : CreateOpFamilyStmt(nullptr) {} - ~CreateOpFamilyStmt() override; - explicit PROTOBUF_CONSTEXPR CreateOpFamilyStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - CreateOpFamilyStmt(const CreateOpFamilyStmt& from); - CreateOpFamilyStmt(CreateOpFamilyStmt&& from) noexcept - : CreateOpFamilyStmt() { + inline JsonObjectAgg() : JsonObjectAgg(nullptr) {} + ~JsonObjectAgg() override; + template + explicit PROTOBUF_CONSTEXPR JsonObjectAgg(::google::protobuf::internal::ConstantInitialized); + + inline JsonObjectAgg(const JsonObjectAgg& from) + : JsonObjectAgg(nullptr, from) {} + JsonObjectAgg(JsonObjectAgg&& from) noexcept + : JsonObjectAgg() { *this = ::std::move(from); } - inline CreateOpFamilyStmt& operator=(const CreateOpFamilyStmt& from) { + inline JsonObjectAgg& operator=(const JsonObjectAgg& from) { CopyFrom(from); return *this; } - inline CreateOpFamilyStmt& operator=(CreateOpFamilyStmt&& from) noexcept { + inline JsonObjectAgg& operator=(JsonObjectAgg&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -37273,170 +44045,219 @@ class CreateOpFamilyStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateOpFamilyStmt& default_instance() { + static const JsonObjectAgg& default_instance() { return *internal_default_instance(); } - static inline const CreateOpFamilyStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateOpFamilyStmt_default_instance_); + static inline const JsonObjectAgg* internal_default_instance() { + return reinterpret_cast( + &_JsonObjectAgg_default_instance_); } static constexpr int kIndexInFileMessages = - 128; + 124; - friend void swap(CreateOpFamilyStmt& a, CreateOpFamilyStmt& b) { + friend void swap(JsonObjectAgg& a, JsonObjectAgg& b) { a.Swap(&b); } - inline void Swap(CreateOpFamilyStmt* other) { + inline void Swap(JsonObjectAgg* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateOpFamilyStmt* other) { + void UnsafeArenaSwap(JsonObjectAgg* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateOpFamilyStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonObjectAgg* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateOpFamilyStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateOpFamilyStmt& from) { - CreateOpFamilyStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonObjectAgg& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonObjectAgg& from) { + JsonObjectAgg::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateOpFamilyStmt* other); + void InternalSwap(JsonObjectAgg* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateOpFamilyStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonObjectAgg"; } protected: - explicit CreateOpFamilyStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonObjectAgg(::google::protobuf::Arena* arena); + JsonObjectAgg(::google::protobuf::Arena* arena, const JsonObjectAgg& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOpfamilynameFieldNumber = 1, - kAmnameFieldNumber = 2, + kConstructorFieldNumber = 1, + kArgFieldNumber = 2, + kAbsentOnNullFieldNumber = 3, + kUniqueFieldNumber = 4, }; - // repeated .pg_query.Node opfamilyname = 1 [json_name = "opfamilyname"]; - int opfamilyname_size() const; + // .pg_query.JsonAggConstructor constructor = 1 [json_name = "constructor"]; + bool has_constructor() const; + void clear_constructor() ; + const ::pg_query::JsonAggConstructor& constructor() const; + PROTOBUF_NODISCARD ::pg_query::JsonAggConstructor* release_constructor(); + ::pg_query::JsonAggConstructor* mutable_constructor(); + void set_allocated_constructor(::pg_query::JsonAggConstructor* value); + void unsafe_arena_set_allocated_constructor(::pg_query::JsonAggConstructor* value); + ::pg_query::JsonAggConstructor* unsafe_arena_release_constructor(); + private: - int _internal_opfamilyname_size() const; + const ::pg_query::JsonAggConstructor& _internal_constructor() const; + ::pg_query::JsonAggConstructor* _internal_mutable_constructor(); + public: - void clear_opfamilyname(); - ::pg_query::Node* mutable_opfamilyname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_opfamilyname(); + // .pg_query.JsonKeyValue arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::JsonKeyValue& arg() const; + PROTOBUF_NODISCARD ::pg_query::JsonKeyValue* release_arg(); + ::pg_query::JsonKeyValue* mutable_arg(); + void set_allocated_arg(::pg_query::JsonKeyValue* value); + void unsafe_arena_set_allocated_arg(::pg_query::JsonKeyValue* value); + ::pg_query::JsonKeyValue* unsafe_arena_release_arg(); + private: - const ::pg_query::Node& _internal_opfamilyname(int index) const; - ::pg_query::Node* _internal_add_opfamilyname(); + const ::pg_query::JsonKeyValue& _internal_arg() const; + ::pg_query::JsonKeyValue* _internal_mutable_arg(); + public: - const ::pg_query::Node& opfamilyname(int index) const; - ::pg_query::Node* add_opfamilyname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - opfamilyname() const; + // bool absent_on_null = 3 [json_name = "absent_on_null"]; + void clear_absent_on_null() ; + bool absent_on_null() const; + void set_absent_on_null(bool value); - // string amname = 2 [json_name = "amname"]; - void clear_amname(); - const std::string& amname() const; - template - void set_amname(ArgT0&& arg0, ArgT... args); - std::string* mutable_amname(); - PROTOBUF_NODISCARD std::string* release_amname(); - void set_allocated_amname(std::string* amname); private: - const std::string& _internal_amname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_amname(const std::string& value); - std::string* _internal_mutable_amname(); + bool _internal_absent_on_null() const; + void _internal_set_absent_on_null(bool value); + public: + // bool unique = 4 [json_name = "unique"]; + void clear_unique() ; + bool unique() const; + void set_unique(bool value); - // @@protoc_insertion_point(class_scope:pg_query.CreateOpFamilyStmt) + private: + bool _internal_unique() const; + void _internal_set_unique(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonObjectAgg) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > opfamilyname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr amname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::JsonAggConstructor* constructor_; + ::pg_query::JsonKeyValue* arg_; + bool absent_on_null_; + bool unique_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterOpFamilyStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterOpFamilyStmt) */ { +class JsonObjectConstructor final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonObjectConstructor) */ { public: - inline AlterOpFamilyStmt() : AlterOpFamilyStmt(nullptr) {} - ~AlterOpFamilyStmt() override; - explicit PROTOBUF_CONSTEXPR AlterOpFamilyStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - AlterOpFamilyStmt(const AlterOpFamilyStmt& from); - AlterOpFamilyStmt(AlterOpFamilyStmt&& from) noexcept - : AlterOpFamilyStmt() { + inline JsonObjectConstructor() : JsonObjectConstructor(nullptr) {} + ~JsonObjectConstructor() override; + template + explicit PROTOBUF_CONSTEXPR JsonObjectConstructor(::google::protobuf::internal::ConstantInitialized); + + inline JsonObjectConstructor(const JsonObjectConstructor& from) + : JsonObjectConstructor(nullptr, from) {} + JsonObjectConstructor(JsonObjectConstructor&& from) noexcept + : JsonObjectConstructor() { *this = ::std::move(from); } - inline AlterOpFamilyStmt& operator=(const AlterOpFamilyStmt& from) { + inline JsonObjectConstructor& operator=(const JsonObjectConstructor& from) { CopyFrom(from); return *this; } - inline AlterOpFamilyStmt& operator=(AlterOpFamilyStmt&& from) noexcept { + inline JsonObjectConstructor& operator=(JsonObjectConstructor&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -37446,201 +44267,234 @@ class AlterOpFamilyStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterOpFamilyStmt& default_instance() { + static const JsonObjectConstructor& default_instance() { return *internal_default_instance(); } - static inline const AlterOpFamilyStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterOpFamilyStmt_default_instance_); + static inline const JsonObjectConstructor* internal_default_instance() { + return reinterpret_cast( + &_JsonObjectConstructor_default_instance_); } static constexpr int kIndexInFileMessages = - 129; + 120; - friend void swap(AlterOpFamilyStmt& a, AlterOpFamilyStmt& b) { + friend void swap(JsonObjectConstructor& a, JsonObjectConstructor& b) { a.Swap(&b); } - inline void Swap(AlterOpFamilyStmt* other) { + inline void Swap(JsonObjectConstructor* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterOpFamilyStmt* other) { + void UnsafeArenaSwap(JsonObjectConstructor* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterOpFamilyStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonObjectConstructor* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterOpFamilyStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterOpFamilyStmt& from) { - AlterOpFamilyStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonObjectConstructor& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonObjectConstructor& from) { + JsonObjectConstructor::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterOpFamilyStmt* other); + void InternalSwap(JsonObjectConstructor* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterOpFamilyStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonObjectConstructor"; } protected: - explicit AlterOpFamilyStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonObjectConstructor(::google::protobuf::Arena* arena); + JsonObjectConstructor(::google::protobuf::Arena* arena, const JsonObjectConstructor& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOpfamilynameFieldNumber = 1, - kItemsFieldNumber = 4, - kAmnameFieldNumber = 2, - kIsDropFieldNumber = 3, + kExprsFieldNumber = 1, + kOutputFieldNumber = 2, + kAbsentOnNullFieldNumber = 3, + kUniqueFieldNumber = 4, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node opfamilyname = 1 [json_name = "opfamilyname"]; - int opfamilyname_size() const; + // repeated .pg_query.Node exprs = 1 [json_name = "exprs"]; + int exprs_size() const; private: - int _internal_opfamilyname_size() const; + int _internal_exprs_size() const; + public: - void clear_opfamilyname(); - ::pg_query::Node* mutable_opfamilyname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_opfamilyname(); + void clear_exprs() ; + ::pg_query::Node* mutable_exprs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_exprs(); private: - const ::pg_query::Node& _internal_opfamilyname(int index) const; - ::pg_query::Node* _internal_add_opfamilyname(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_exprs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_exprs(); public: - const ::pg_query::Node& opfamilyname(int index) const; - ::pg_query::Node* add_opfamilyname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - opfamilyname() const; + const ::pg_query::Node& exprs(int index) const; + ::pg_query::Node* add_exprs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + exprs() const; + // .pg_query.JsonOutput output = 2 [json_name = "output"]; + bool has_output() const; + void clear_output() ; + const ::pg_query::JsonOutput& output() const; + PROTOBUF_NODISCARD ::pg_query::JsonOutput* release_output(); + ::pg_query::JsonOutput* mutable_output(); + void set_allocated_output(::pg_query::JsonOutput* value); + void unsafe_arena_set_allocated_output(::pg_query::JsonOutput* value); + ::pg_query::JsonOutput* unsafe_arena_release_output(); - // repeated .pg_query.Node items = 4 [json_name = "items"]; - int items_size() const; private: - int _internal_items_size() const; + const ::pg_query::JsonOutput& _internal_output() const; + ::pg_query::JsonOutput* _internal_mutable_output(); + public: - void clear_items(); - ::pg_query::Node* mutable_items(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_items(); + // bool absent_on_null = 3 [json_name = "absent_on_null"]; + void clear_absent_on_null() ; + bool absent_on_null() const; + void set_absent_on_null(bool value); + private: - const ::pg_query::Node& _internal_items(int index) const; - ::pg_query::Node* _internal_add_items(); + bool _internal_absent_on_null() const; + void _internal_set_absent_on_null(bool value); + public: - const ::pg_query::Node& items(int index) const; - ::pg_query::Node* add_items(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - items() const; + // bool unique = 4 [json_name = "unique"]; + void clear_unique() ; + bool unique() const; + void set_unique(bool value); - // string amname = 2 [json_name = "amname"]; - void clear_amname(); - const std::string& amname() const; - template - void set_amname(ArgT0&& arg0, ArgT... args); - std::string* mutable_amname(); - PROTOBUF_NODISCARD std::string* release_amname(); - void set_allocated_amname(std::string* amname); private: - const std::string& _internal_amname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_amname(const std::string& value); - std::string* _internal_mutable_amname(); + bool _internal_unique() const; + void _internal_set_unique(bool value); + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // bool is_drop = 3 [json_name = "isDrop"]; - void clear_is_drop(); - bool is_drop() const; - void set_is_drop(bool value); private: - bool _internal_is_drop() const; - void _internal_set_is_drop(bool value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterOpFamilyStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonObjectConstructor) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > opfamilyname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > items_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr amname_; - bool is_drop_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > exprs_; + ::pg_query::JsonOutput* output_; + bool absent_on_null_; + bool unique_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class PrepareStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.PrepareStmt) */ { +class JsonOutput final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonOutput) */ { public: - inline PrepareStmt() : PrepareStmt(nullptr) {} - ~PrepareStmt() override; - explicit PROTOBUF_CONSTEXPR PrepareStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - PrepareStmt(const PrepareStmt& from); - PrepareStmt(PrepareStmt&& from) noexcept - : PrepareStmt() { + inline JsonOutput() : JsonOutput(nullptr) {} + ~JsonOutput() override; + template + explicit PROTOBUF_CONSTEXPR JsonOutput(::google::protobuf::internal::ConstantInitialized); + + inline JsonOutput(const JsonOutput& from) + : JsonOutput(nullptr, from) {} + JsonOutput(JsonOutput&& from) noexcept + : JsonOutput() { *this = ::std::move(from); } - inline PrepareStmt& operator=(const PrepareStmt& from) { + inline JsonOutput& operator=(const JsonOutput& from) { CopyFrom(from); return *this; } - inline PrepareStmt& operator=(PrepareStmt&& from) noexcept { + inline JsonOutput& operator=(JsonOutput&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -37650,190 +44504,195 @@ class PrepareStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const PrepareStmt& default_instance() { + static const JsonOutput& default_instance() { return *internal_default_instance(); } - static inline const PrepareStmt* internal_default_instance() { - return reinterpret_cast( - &_PrepareStmt_default_instance_); + static inline const JsonOutput* internal_default_instance() { + return reinterpret_cast( + &_JsonOutput_default_instance_); } static constexpr int kIndexInFileMessages = - 130; + 118; - friend void swap(PrepareStmt& a, PrepareStmt& b) { + friend void swap(JsonOutput& a, JsonOutput& b) { a.Swap(&b); } - inline void Swap(PrepareStmt* other) { + inline void Swap(JsonOutput* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(PrepareStmt* other) { + void UnsafeArenaSwap(JsonOutput* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - PrepareStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonOutput* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const PrepareStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const PrepareStmt& from) { - PrepareStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonOutput& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonOutput& from) { + JsonOutput::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(PrepareStmt* other); + void InternalSwap(JsonOutput* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.PrepareStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonOutput"; } protected: - explicit PrepareStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonOutput(::google::protobuf::Arena* arena); + JsonOutput(::google::protobuf::Arena* arena, const JsonOutput& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgtypesFieldNumber = 2, - kNameFieldNumber = 1, - kQueryFieldNumber = 3, + kTypeNameFieldNumber = 1, + kReturningFieldNumber = 2, }; - // repeated .pg_query.Node argtypes = 2 [json_name = "argtypes"]; - int argtypes_size() const; - private: - int _internal_argtypes_size() const; - public: - void clear_argtypes(); - ::pg_query::Node* mutable_argtypes(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_argtypes(); - private: - const ::pg_query::Node& _internal_argtypes(int index) const; - ::pg_query::Node* _internal_add_argtypes(); - public: - const ::pg_query::Node& argtypes(int index) const; - ::pg_query::Node* add_argtypes(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - argtypes() const; + // .pg_query.TypeName type_name = 1 [json_name = "typeName"]; + bool has_type_name() const; + void clear_type_name() ; + const ::pg_query::TypeName& type_name() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); + ::pg_query::TypeName* mutable_type_name(); + void set_allocated_type_name(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_type_name(); - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + const ::pg_query::TypeName& _internal_type_name() const; + ::pg_query::TypeName* _internal_mutable_type_name(); - // .pg_query.Node query = 3 [json_name = "query"]; - bool has_query() const; - private: - bool _internal_has_query() const; public: - void clear_query(); - const ::pg_query::Node& query() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_query(); - ::pg_query::Node* mutable_query(); - void set_allocated_query(::pg_query::Node* query); + // .pg_query.JsonReturning returning = 2 [json_name = "returning"]; + bool has_returning() const; + void clear_returning() ; + const ::pg_query::JsonReturning& returning() const; + PROTOBUF_NODISCARD ::pg_query::JsonReturning* release_returning(); + ::pg_query::JsonReturning* mutable_returning(); + void set_allocated_returning(::pg_query::JsonReturning* value); + void unsafe_arena_set_allocated_returning(::pg_query::JsonReturning* value); + ::pg_query::JsonReturning* unsafe_arena_release_returning(); + private: - const ::pg_query::Node& _internal_query() const; - ::pg_query::Node* _internal_mutable_query(); - public: - void unsafe_arena_set_allocated_query( - ::pg_query::Node* query); - ::pg_query::Node* unsafe_arena_release_query(); + const ::pg_query::JsonReturning& _internal_returning() const; + ::pg_query::JsonReturning* _internal_mutable_returning(); - // @@protoc_insertion_point(class_scope:pg_query.PrepareStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonOutput) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > argtypes_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::Node* query_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::TypeName* type_name_; + ::pg_query::JsonReturning* returning_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ExecuteStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ExecuteStmt) */ { +class JsonValueExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.JsonValueExpr) */ { public: - inline ExecuteStmt() : ExecuteStmt(nullptr) {} - ~ExecuteStmt() override; - explicit PROTOBUF_CONSTEXPR ExecuteStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - ExecuteStmt(const ExecuteStmt& from); - ExecuteStmt(ExecuteStmt&& from) noexcept - : ExecuteStmt() { + inline JsonValueExpr() : JsonValueExpr(nullptr) {} + ~JsonValueExpr() override; + template + explicit PROTOBUF_CONSTEXPR JsonValueExpr(::google::protobuf::internal::ConstantInitialized); + + inline JsonValueExpr(const JsonValueExpr& from) + : JsonValueExpr(nullptr, from) {} + JsonValueExpr(JsonValueExpr&& from) noexcept + : JsonValueExpr() { *this = ::std::move(from); } - inline ExecuteStmt& operator=(const ExecuteStmt& from) { + inline JsonValueExpr& operator=(const JsonValueExpr& from) { CopyFrom(from); return *this; } - inline ExecuteStmt& operator=(ExecuteStmt&& from) noexcept { + inline JsonValueExpr& operator=(JsonValueExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -37843,170 +44702,212 @@ class ExecuteStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ExecuteStmt& default_instance() { + static const JsonValueExpr& default_instance() { return *internal_default_instance(); } - static inline const ExecuteStmt* internal_default_instance() { - return reinterpret_cast( - &_ExecuteStmt_default_instance_); + static inline const JsonValueExpr* internal_default_instance() { + return reinterpret_cast( + &_JsonValueExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 131; + 51; - friend void swap(ExecuteStmt& a, ExecuteStmt& b) { + friend void swap(JsonValueExpr& a, JsonValueExpr& b) { a.Swap(&b); } - inline void Swap(ExecuteStmt* other) { + inline void Swap(JsonValueExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ExecuteStmt* other) { + void UnsafeArenaSwap(JsonValueExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ExecuteStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + JsonValueExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ExecuteStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ExecuteStmt& from) { - ExecuteStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const JsonValueExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const JsonValueExpr& from) { + JsonValueExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ExecuteStmt* other); + void InternalSwap(JsonValueExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ExecuteStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.JsonValueExpr"; } protected: - explicit ExecuteStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit JsonValueExpr(::google::protobuf::Arena* arena); + JsonValueExpr(::google::protobuf::Arena* arena, const JsonValueExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kParamsFieldNumber = 2, - kNameFieldNumber = 1, + kRawExprFieldNumber = 1, + kFormattedExprFieldNumber = 2, + kFormatFieldNumber = 3, }; - // repeated .pg_query.Node params = 2 [json_name = "params"]; - int params_size() const; + // .pg_query.Node raw_expr = 1 [json_name = "raw_expr"]; + bool has_raw_expr() const; + void clear_raw_expr() ; + const ::pg_query::Node& raw_expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_raw_expr(); + ::pg_query::Node* mutable_raw_expr(); + void set_allocated_raw_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_raw_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_raw_expr(); + private: - int _internal_params_size() const; + const ::pg_query::Node& _internal_raw_expr() const; + ::pg_query::Node* _internal_mutable_raw_expr(); + public: - void clear_params(); - ::pg_query::Node* mutable_params(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_params(); + // .pg_query.Node formatted_expr = 2 [json_name = "formatted_expr"]; + bool has_formatted_expr() const; + void clear_formatted_expr() ; + const ::pg_query::Node& formatted_expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_formatted_expr(); + ::pg_query::Node* mutable_formatted_expr(); + void set_allocated_formatted_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_formatted_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_formatted_expr(); + private: - const ::pg_query::Node& _internal_params(int index) const; - ::pg_query::Node* _internal_add_params(); + const ::pg_query::Node& _internal_formatted_expr() const; + ::pg_query::Node* _internal_mutable_formatted_expr(); + public: - const ::pg_query::Node& params(int index) const; - ::pg_query::Node* add_params(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - params() const; + // .pg_query.JsonFormat format = 3 [json_name = "format"]; + bool has_format() const; + void clear_format() ; + const ::pg_query::JsonFormat& format() const; + PROTOBUF_NODISCARD ::pg_query::JsonFormat* release_format(); + ::pg_query::JsonFormat* mutable_format(); + void set_allocated_format(::pg_query::JsonFormat* value); + void unsafe_arena_set_allocated_format(::pg_query::JsonFormat* value); + ::pg_query::JsonFormat* unsafe_arena_release_format(); - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + const ::pg_query::JsonFormat& _internal_format() const; + ::pg_query::JsonFormat* _internal_mutable_format(); - // @@protoc_insertion_point(class_scope:pg_query.ExecuteStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.JsonValueExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > params_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* raw_expr_; + ::pg_query::Node* formatted_expr_; + ::pg_query::JsonFormat* format_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DeallocateStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DeallocateStmt) */ { +class List final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.List) */ { public: - inline DeallocateStmt() : DeallocateStmt(nullptr) {} - ~DeallocateStmt() override; - explicit PROTOBUF_CONSTEXPR DeallocateStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline List() : List(nullptr) {} + ~List() override; + template + explicit PROTOBUF_CONSTEXPR List(::google::protobuf::internal::ConstantInitialized); - DeallocateStmt(const DeallocateStmt& from); - DeallocateStmt(DeallocateStmt&& from) noexcept - : DeallocateStmt() { + inline List(const List& from) + : List(nullptr, from) {} + List(List&& from) noexcept + : List() { *this = ::std::move(from); } - inline DeallocateStmt& operator=(const DeallocateStmt& from) { + inline List& operator=(const List& from) { CopyFrom(from); return *this; } - inline DeallocateStmt& operator=(DeallocateStmt&& from) noexcept { + inline List& operator=(List&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -38016,150 +44917,180 @@ class DeallocateStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DeallocateStmt& default_instance() { + static const List& default_instance() { return *internal_default_instance(); } - static inline const DeallocateStmt* internal_default_instance() { - return reinterpret_cast( - &_DeallocateStmt_default_instance_); + static inline const List* internal_default_instance() { + return reinterpret_cast( + &_List_default_instance_); } static constexpr int kIndexInFileMessages = - 132; + 8; - friend void swap(DeallocateStmt& a, DeallocateStmt& b) { + friend void swap(List& a, List& b) { a.Swap(&b); } - inline void Swap(DeallocateStmt* other) { + inline void Swap(List* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DeallocateStmt* other) { + void UnsafeArenaSwap(List* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DeallocateStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + List* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DeallocateStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DeallocateStmt& from) { - DeallocateStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const List& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const List& from) { + List::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DeallocateStmt* other); + void InternalSwap(List* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DeallocateStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.List"; } protected: - explicit DeallocateStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit List(::google::protobuf::Arena* arena); + List(::google::protobuf::Arena* arena, const List& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNameFieldNumber = 1, + kItemsFieldNumber = 1, }; - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + // repeated .pg_query.Node items = 1; + int items_size() const; private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + int _internal_items_size() const; - // @@protoc_insertion_point(class_scope:pg_query.DeallocateStmt) + public: + void clear_items() ; + ::pg_query::Node* mutable_items(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_items(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_items() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_items(); + public: + const ::pg_query::Node& items(int index) const; + ::pg_query::Node* add_items(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + items() const; + // @@protoc_insertion_point(class_scope:pg_query.List) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > items_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DeclareCursorStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DeclareCursorStmt) */ { +class LockStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.LockStmt) */ { public: - inline DeclareCursorStmt() : DeclareCursorStmt(nullptr) {} - ~DeclareCursorStmt() override; - explicit PROTOBUF_CONSTEXPR DeclareCursorStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline LockStmt() : LockStmt(nullptr) {} + ~LockStmt() override; + template + explicit PROTOBUF_CONSTEXPR LockStmt(::google::protobuf::internal::ConstantInitialized); - DeclareCursorStmt(const DeclareCursorStmt& from); - DeclareCursorStmt(DeclareCursorStmt&& from) noexcept - : DeclareCursorStmt() { + inline LockStmt(const LockStmt& from) + : LockStmt(nullptr, from) {} + LockStmt(LockStmt&& from) noexcept + : LockStmt() { *this = ::std::move(from); } - inline DeclareCursorStmt& operator=(const DeclareCursorStmt& from) { + inline LockStmt& operator=(const LockStmt& from) { CopyFrom(from); return *this; } - inline DeclareCursorStmt& operator=(DeclareCursorStmt&& from) noexcept { + inline LockStmt& operator=(LockStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -38169,181 +45100,204 @@ class DeclareCursorStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DeclareCursorStmt& default_instance() { + static const LockStmt& default_instance() { return *internal_default_instance(); } - static inline const DeclareCursorStmt* internal_default_instance() { - return reinterpret_cast( - &_DeclareCursorStmt_default_instance_); + static inline const LockStmt* internal_default_instance() { + return reinterpret_cast( + &_LockStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 133; + 235; - friend void swap(DeclareCursorStmt& a, DeclareCursorStmt& b) { + friend void swap(LockStmt& a, LockStmt& b) { a.Swap(&b); } - inline void Swap(DeclareCursorStmt* other) { + inline void Swap(LockStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DeclareCursorStmt* other) { + void UnsafeArenaSwap(LockStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DeclareCursorStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + LockStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DeclareCursorStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DeclareCursorStmt& from) { - DeclareCursorStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const LockStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const LockStmt& from) { + LockStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DeclareCursorStmt* other); + void InternalSwap(LockStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DeclareCursorStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.LockStmt"; } protected: - explicit DeclareCursorStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit LockStmt(::google::protobuf::Arena* arena); + LockStmt(::google::protobuf::Arena* arena, const LockStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kPortalnameFieldNumber = 1, - kQueryFieldNumber = 3, - kOptionsFieldNumber = 2, + kRelationsFieldNumber = 1, + kModeFieldNumber = 2, + kNowaitFieldNumber = 3, }; - // string portalname = 1 [json_name = "portalname"]; - void clear_portalname(); - const std::string& portalname() const; - template - void set_portalname(ArgT0&& arg0, ArgT... args); - std::string* mutable_portalname(); - PROTOBUF_NODISCARD std::string* release_portalname(); - void set_allocated_portalname(std::string* portalname); + // repeated .pg_query.Node relations = 1 [json_name = "relations"]; + int relations_size() const; private: - const std::string& _internal_portalname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_portalname(const std::string& value); - std::string* _internal_mutable_portalname(); - public: + int _internal_relations_size() const; - // .pg_query.Node query = 3 [json_name = "query"]; - bool has_query() const; - private: - bool _internal_has_query() const; public: - void clear_query(); - const ::pg_query::Node& query() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_query(); - ::pg_query::Node* mutable_query(); - void set_allocated_query(::pg_query::Node* query); + void clear_relations() ; + ::pg_query::Node* mutable_relations(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_relations(); private: - const ::pg_query::Node& _internal_query() const; - ::pg_query::Node* _internal_mutable_query(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_relations() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_relations(); public: - void unsafe_arena_set_allocated_query( - ::pg_query::Node* query); - ::pg_query::Node* unsafe_arena_release_query(); + const ::pg_query::Node& relations(int index) const; + ::pg_query::Node* add_relations(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + relations() const; + // int32 mode = 2 [json_name = "mode"]; + void clear_mode() ; + ::int32_t mode() const; + void set_mode(::int32_t value); - // int32 options = 2 [json_name = "options"]; - void clear_options(); - int32_t options() const; - void set_options(int32_t value); private: - int32_t _internal_options() const; - void _internal_set_options(int32_t value); + ::int32_t _internal_mode() const; + void _internal_set_mode(::int32_t value); + public: + // bool nowait = 3 [json_name = "nowait"]; + void clear_nowait() ; + bool nowait() const; + void set_nowait(bool value); - // @@protoc_insertion_point(class_scope:pg_query.DeclareCursorStmt) + private: + bool _internal_nowait() const; + void _internal_set_nowait(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.LockStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr portalname_; - ::pg_query::Node* query_; - int32_t options_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > relations_; + ::int32_t mode_; + bool nowait_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateTableSpaceStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateTableSpaceStmt) */ { +class LockingClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.LockingClause) */ { public: - inline CreateTableSpaceStmt() : CreateTableSpaceStmt(nullptr) {} - ~CreateTableSpaceStmt() override; - explicit PROTOBUF_CONSTEXPR CreateTableSpaceStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline LockingClause() : LockingClause(nullptr) {} + ~LockingClause() override; + template + explicit PROTOBUF_CONSTEXPR LockingClause(::google::protobuf::internal::ConstantInitialized); - CreateTableSpaceStmt(const CreateTableSpaceStmt& from); - CreateTableSpaceStmt(CreateTableSpaceStmt&& from) noexcept - : CreateTableSpaceStmt() { + inline LockingClause(const LockingClause& from) + : LockingClause(nullptr, from) {} + LockingClause(LockingClause&& from) noexcept + : LockingClause() { *this = ::std::move(from); } - inline CreateTableSpaceStmt& operator=(const CreateTableSpaceStmt& from) { + inline LockingClause& operator=(const LockingClause& from) { CopyFrom(from); return *this; } - inline CreateTableSpaceStmt& operator=(CreateTableSpaceStmt&& from) noexcept { + inline LockingClause& operator=(LockingClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -38353,206 +45307,204 @@ class CreateTableSpaceStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateTableSpaceStmt& default_instance() { + static const LockingClause& default_instance() { return *internal_default_instance(); } - static inline const CreateTableSpaceStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateTableSpaceStmt_default_instance_); + static inline const LockingClause* internal_default_instance() { + return reinterpret_cast( + &_LockingClause_default_instance_); } static constexpr int kIndexInFileMessages = - 134; + 93; - friend void swap(CreateTableSpaceStmt& a, CreateTableSpaceStmt& b) { + friend void swap(LockingClause& a, LockingClause& b) { a.Swap(&b); } - inline void Swap(CreateTableSpaceStmt* other) { + inline void Swap(LockingClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateTableSpaceStmt* other) { + void UnsafeArenaSwap(LockingClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateTableSpaceStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + LockingClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateTableSpaceStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateTableSpaceStmt& from) { - CreateTableSpaceStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const LockingClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const LockingClause& from) { + LockingClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateTableSpaceStmt* other); + void InternalSwap(LockingClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateTableSpaceStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.LockingClause"; } protected: - explicit CreateTableSpaceStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit LockingClause(::google::protobuf::Arena* arena); + LockingClause(::google::protobuf::Arena* arena, const LockingClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 4, - kTablespacenameFieldNumber = 1, - kLocationFieldNumber = 3, - kOwnerFieldNumber = 2, + kLockedRelsFieldNumber = 1, + kStrengthFieldNumber = 2, + kWaitPolicyFieldNumber = 3, }; - // repeated .pg_query.Node options = 4 [json_name = "options"]; - int options_size() const; + // repeated .pg_query.Node locked_rels = 1 [json_name = "lockedRels"]; + int locked_rels_size() const; private: - int _internal_options_size() const; + int _internal_locked_rels_size() const; + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_locked_rels() ; + ::pg_query::Node* mutable_locked_rels(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_locked_rels(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_locked_rels() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_locked_rels(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + const ::pg_query::Node& locked_rels(int index) const; + ::pg_query::Node* add_locked_rels(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + locked_rels() const; + // .pg_query.LockClauseStrength strength = 2 [json_name = "strength"]; + void clear_strength() ; + ::pg_query::LockClauseStrength strength() const; + void set_strength(::pg_query::LockClauseStrength value); - // string tablespacename = 1 [json_name = "tablespacename"]; - void clear_tablespacename(); - const std::string& tablespacename() const; - template - void set_tablespacename(ArgT0&& arg0, ArgT... args); - std::string* mutable_tablespacename(); - PROTOBUF_NODISCARD std::string* release_tablespacename(); - void set_allocated_tablespacename(std::string* tablespacename); private: - const std::string& _internal_tablespacename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_tablespacename(const std::string& value); - std::string* _internal_mutable_tablespacename(); - public: + ::pg_query::LockClauseStrength _internal_strength() const; + void _internal_set_strength(::pg_query::LockClauseStrength value); - // string location = 3 [json_name = "location"]; - void clear_location(); - const std::string& location() const; - template - void set_location(ArgT0&& arg0, ArgT... args); - std::string* mutable_location(); - PROTOBUF_NODISCARD std::string* release_location(); - void set_allocated_location(std::string* location); - private: - const std::string& _internal_location() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_location(const std::string& value); - std::string* _internal_mutable_location(); public: + // .pg_query.LockWaitPolicy wait_policy = 3 [json_name = "waitPolicy"]; + void clear_wait_policy() ; + ::pg_query::LockWaitPolicy wait_policy() const; + void set_wait_policy(::pg_query::LockWaitPolicy value); - // .pg_query.RoleSpec owner = 2 [json_name = "owner"]; - bool has_owner() const; - private: - bool _internal_has_owner() const; - public: - void clear_owner(); - const ::pg_query::RoleSpec& owner() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_owner(); - ::pg_query::RoleSpec* mutable_owner(); - void set_allocated_owner(::pg_query::RoleSpec* owner); private: - const ::pg_query::RoleSpec& _internal_owner() const; - ::pg_query::RoleSpec* _internal_mutable_owner(); - public: - void unsafe_arena_set_allocated_owner( - ::pg_query::RoleSpec* owner); - ::pg_query::RoleSpec* unsafe_arena_release_owner(); + ::pg_query::LockWaitPolicy _internal_wait_policy() const; + void _internal_set_wait_policy(::pg_query::LockWaitPolicy value); - // @@protoc_insertion_point(class_scope:pg_query.CreateTableSpaceStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.LockingClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr tablespacename_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr location_; - ::pg_query::RoleSpec* owner_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > locked_rels_; + int strength_; + int wait_policy_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DropTableSpaceStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DropTableSpaceStmt) */ { +class MergeAction final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.MergeAction) */ { public: - inline DropTableSpaceStmt() : DropTableSpaceStmt(nullptr) {} - ~DropTableSpaceStmt() override; - explicit PROTOBUF_CONSTEXPR DropTableSpaceStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline MergeAction() : MergeAction(nullptr) {} + ~MergeAction() override; + template + explicit PROTOBUF_CONSTEXPR MergeAction(::google::protobuf::internal::ConstantInitialized); - DropTableSpaceStmt(const DropTableSpaceStmt& from); - DropTableSpaceStmt(DropTableSpaceStmt&& from) noexcept - : DropTableSpaceStmt() { + inline MergeAction(const MergeAction& from) + : MergeAction(nullptr, from) {} + MergeAction(MergeAction&& from) noexcept + : MergeAction() { *this = ::std::move(from); } - inline DropTableSpaceStmt& operator=(const DropTableSpaceStmt& from) { + inline MergeAction& operator=(const MergeAction& from) { CopyFrom(from); return *this; } - inline DropTableSpaceStmt& operator=(DropTableSpaceStmt&& from) noexcept { + inline MergeAction& operator=(MergeAction&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -38562,161 +45514,254 @@ class DropTableSpaceStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DropTableSpaceStmt& default_instance() { + static const MergeAction& default_instance() { return *internal_default_instance(); } - static inline const DropTableSpaceStmt* internal_default_instance() { - return reinterpret_cast( - &_DropTableSpaceStmt_default_instance_); + static inline const MergeAction* internal_default_instance() { + return reinterpret_cast( + &_MergeAction_default_instance_); } static constexpr int kIndexInFileMessages = - 135; + 116; - friend void swap(DropTableSpaceStmt& a, DropTableSpaceStmt& b) { + friend void swap(MergeAction& a, MergeAction& b) { a.Swap(&b); } - inline void Swap(DropTableSpaceStmt* other) { + inline void Swap(MergeAction* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DropTableSpaceStmt* other) { + void UnsafeArenaSwap(MergeAction* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DropTableSpaceStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + MergeAction* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DropTableSpaceStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DropTableSpaceStmt& from) { - DropTableSpaceStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const MergeAction& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const MergeAction& from) { + MergeAction::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DropTableSpaceStmt* other); + void InternalSwap(MergeAction* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DropTableSpaceStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.MergeAction"; } protected: - explicit DropTableSpaceStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit MergeAction(::google::protobuf::Arena* arena); + MergeAction(::google::protobuf::Arena* arena, const MergeAction& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kTablespacenameFieldNumber = 1, - kMissingOkFieldNumber = 2, + kTargetListFieldNumber = 5, + kUpdateColnosFieldNumber = 6, + kQualFieldNumber = 4, + kMatchedFieldNumber = 1, + kCommandTypeFieldNumber = 2, + kOverrideFieldNumber = 3, }; - // string tablespacename = 1 [json_name = "tablespacename"]; - void clear_tablespacename(); - const std::string& tablespacename() const; - template - void set_tablespacename(ArgT0&& arg0, ArgT... args); - std::string* mutable_tablespacename(); - PROTOBUF_NODISCARD std::string* release_tablespacename(); - void set_allocated_tablespacename(std::string* tablespacename); + // repeated .pg_query.Node target_list = 5 [json_name = "targetList"]; + int target_list_size() const; private: - const std::string& _internal_tablespacename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_tablespacename(const std::string& value); - std::string* _internal_mutable_tablespacename(); + int _internal_target_list_size() const; + + public: + void clear_target_list() ; + ::pg_query::Node* mutable_target_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_target_list(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_target_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_target_list(); public: + const ::pg_query::Node& target_list(int index) const; + ::pg_query::Node* add_target_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + target_list() const; + // repeated .pg_query.Node update_colnos = 6 [json_name = "updateColnos"]; + int update_colnos_size() const; + private: + int _internal_update_colnos_size() const; - // bool missing_ok = 2 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); + public: + void clear_update_colnos() ; + ::pg_query::Node* mutable_update_colnos(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_update_colnos(); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_update_colnos() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_update_colnos(); public: + const ::pg_query::Node& update_colnos(int index) const; + ::pg_query::Node* add_update_colnos(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + update_colnos() const; + // .pg_query.Node qual = 4 [json_name = "qual"]; + bool has_qual() const; + void clear_qual() ; + const ::pg_query::Node& qual() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_qual(); + ::pg_query::Node* mutable_qual(); + void set_allocated_qual(::pg_query::Node* value); + void unsafe_arena_set_allocated_qual(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_qual(); - // @@protoc_insertion_point(class_scope:pg_query.DropTableSpaceStmt) + private: + const ::pg_query::Node& _internal_qual() const; + ::pg_query::Node* _internal_mutable_qual(); + + public: + // bool matched = 1 [json_name = "matched"]; + void clear_matched() ; + bool matched() const; + void set_matched(bool value); + + private: + bool _internal_matched() const; + void _internal_set_matched(bool value); + + public: + // .pg_query.CmdType command_type = 2 [json_name = "commandType"]; + void clear_command_type() ; + ::pg_query::CmdType command_type() const; + void set_command_type(::pg_query::CmdType value); + + private: + ::pg_query::CmdType _internal_command_type() const; + void _internal_set_command_type(::pg_query::CmdType value); + + public: + // .pg_query.OverridingKind override = 3 [json_name = "override"]; + void clear_override() ; + ::pg_query::OverridingKind override() const; + void set_override(::pg_query::OverridingKind value); + + private: + ::pg_query::OverridingKind _internal_override() const; + void _internal_set_override(::pg_query::OverridingKind value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.MergeAction) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr tablespacename_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > target_list_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > update_colnos_; + ::pg_query::Node* qual_; + bool matched_; + int command_type_; + int override_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterObjectDependsStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterObjectDependsStmt) */ { +class MergeStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.MergeStmt) */ { public: - inline AlterObjectDependsStmt() : AlterObjectDependsStmt(nullptr) {} - ~AlterObjectDependsStmt() override; - explicit PROTOBUF_CONSTEXPR AlterObjectDependsStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline MergeStmt() : MergeStmt(nullptr) {} + ~MergeStmt() override; + template + explicit PROTOBUF_CONSTEXPR MergeStmt(::google::protobuf::internal::ConstantInitialized); - AlterObjectDependsStmt(const AlterObjectDependsStmt& from); - AlterObjectDependsStmt(AlterObjectDependsStmt&& from) noexcept - : AlterObjectDependsStmt() { + inline MergeStmt(const MergeStmt& from) + : MergeStmt(nullptr, from) {} + MergeStmt(MergeStmt&& from) noexcept + : MergeStmt() { *this = ::std::move(from); } - inline AlterObjectDependsStmt& operator=(const AlterObjectDependsStmt& from) { + inline MergeStmt& operator=(const MergeStmt& from) { CopyFrom(from); return *this; } - inline AlterObjectDependsStmt& operator=(AlterObjectDependsStmt&& from) noexcept { + inline MergeStmt& operator=(MergeStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -38726,216 +45771,249 @@ class AlterObjectDependsStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterObjectDependsStmt& default_instance() { + static const MergeStmt& default_instance() { return *internal_default_instance(); } - static inline const AlterObjectDependsStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterObjectDependsStmt_default_instance_); + static inline const MergeStmt* internal_default_instance() { + return reinterpret_cast( + &_MergeStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 136; + 130; - friend void swap(AlterObjectDependsStmt& a, AlterObjectDependsStmt& b) { + friend void swap(MergeStmt& a, MergeStmt& b) { a.Swap(&b); } - inline void Swap(AlterObjectDependsStmt* other) { + inline void Swap(MergeStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterObjectDependsStmt* other) { + void UnsafeArenaSwap(MergeStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterObjectDependsStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + MergeStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterObjectDependsStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterObjectDependsStmt& from) { - AlterObjectDependsStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const MergeStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const MergeStmt& from) { + MergeStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterObjectDependsStmt* other); + void InternalSwap(MergeStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterObjectDependsStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.MergeStmt"; } protected: - explicit AlterObjectDependsStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit MergeStmt(::google::protobuf::Arena* arena); + MergeStmt(::google::protobuf::Arena* arena, const MergeStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRelationFieldNumber = 2, - kObjectFieldNumber = 3, - kExtnameFieldNumber = 4, - kObjectTypeFieldNumber = 1, - kRemoveFieldNumber = 5, + kMergeWhenClausesFieldNumber = 4, + kRelationFieldNumber = 1, + kSourceRelationFieldNumber = 2, + kJoinConditionFieldNumber = 3, + kWithClauseFieldNumber = 5, }; - // .pg_query.RangeVar relation = 2 [json_name = "relation"]; - bool has_relation() const; + // repeated .pg_query.Node merge_when_clauses = 4 [json_name = "mergeWhenClauses"]; + int merge_when_clauses_size() const; + private: + int _internal_merge_when_clauses_size() const; + + public: + void clear_merge_when_clauses() ; + ::pg_query::Node* mutable_merge_when_clauses(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_merge_when_clauses(); private: - bool _internal_has_relation() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_merge_when_clauses() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_merge_when_clauses(); public: - void clear_relation(); + const ::pg_query::Node& merge_when_clauses(int index) const; + ::pg_query::Node* add_merge_when_clauses(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + merge_when_clauses() const; + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; const ::pg_query::RangeVar& relation() const; PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); + private: const ::pg_query::RangeVar& _internal_relation() const; ::pg_query::RangeVar* _internal_mutable_relation(); - public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); - // .pg_query.Node object = 3 [json_name = "object"]; - bool has_object() const; - private: - bool _internal_has_object() const; - public: - void clear_object(); - const ::pg_query::Node& object() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_object(); - ::pg_query::Node* mutable_object(); - void set_allocated_object(::pg_query::Node* object); - private: - const ::pg_query::Node& _internal_object() const; - ::pg_query::Node* _internal_mutable_object(); public: - void unsafe_arena_set_allocated_object( - ::pg_query::Node* object); - ::pg_query::Node* unsafe_arena_release_object(); + // .pg_query.Node source_relation = 2 [json_name = "sourceRelation"]; + bool has_source_relation() const; + void clear_source_relation() ; + const ::pg_query::Node& source_relation() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_source_relation(); + ::pg_query::Node* mutable_source_relation(); + void set_allocated_source_relation(::pg_query::Node* value); + void unsafe_arena_set_allocated_source_relation(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_source_relation(); - // .pg_query.String extname = 4 [json_name = "extname"]; - bool has_extname() const; - private: - bool _internal_has_extname() const; - public: - void clear_extname(); - const ::pg_query::String& extname() const; - PROTOBUF_NODISCARD ::pg_query::String* release_extname(); - ::pg_query::String* mutable_extname(); - void set_allocated_extname(::pg_query::String* extname); private: - const ::pg_query::String& _internal_extname() const; - ::pg_query::String* _internal_mutable_extname(); + const ::pg_query::Node& _internal_source_relation() const; + ::pg_query::Node* _internal_mutable_source_relation(); + public: - void unsafe_arena_set_allocated_extname( - ::pg_query::String* extname); - ::pg_query::String* unsafe_arena_release_extname(); + // .pg_query.Node join_condition = 3 [json_name = "joinCondition"]; + bool has_join_condition() const; + void clear_join_condition() ; + const ::pg_query::Node& join_condition() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_join_condition(); + ::pg_query::Node* mutable_join_condition(); + void set_allocated_join_condition(::pg_query::Node* value); + void unsafe_arena_set_allocated_join_condition(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_join_condition(); - // .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; - void clear_object_type(); - ::pg_query::ObjectType object_type() const; - void set_object_type(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_object_type() const; - void _internal_set_object_type(::pg_query::ObjectType value); + const ::pg_query::Node& _internal_join_condition() const; + ::pg_query::Node* _internal_mutable_join_condition(); + public: + // .pg_query.WithClause with_clause = 5 [json_name = "withClause"]; + bool has_with_clause() const; + void clear_with_clause() ; + const ::pg_query::WithClause& with_clause() const; + PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); + ::pg_query::WithClause* mutable_with_clause(); + void set_allocated_with_clause(::pg_query::WithClause* value); + void unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value); + ::pg_query::WithClause* unsafe_arena_release_with_clause(); - // bool remove = 5 [json_name = "remove"]; - void clear_remove(); - bool remove() const; - void set_remove(bool value); private: - bool _internal_remove() const; - void _internal_set_remove(bool value); - public: + const ::pg_query::WithClause& _internal_with_clause() const; + ::pg_query::WithClause* _internal_mutable_with_clause(); - // @@protoc_insertion_point(class_scope:pg_query.AlterObjectDependsStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.MergeStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > merge_when_clauses_; ::pg_query::RangeVar* relation_; - ::pg_query::Node* object_; - ::pg_query::String* extname_; - int object_type_; - bool remove_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::pg_query::Node* source_relation_; + ::pg_query::Node* join_condition_; + ::pg_query::WithClause* with_clause_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterObjectSchemaStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterObjectSchemaStmt) */ { +class MergeWhenClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.MergeWhenClause) */ { public: - inline AlterObjectSchemaStmt() : AlterObjectSchemaStmt(nullptr) {} - ~AlterObjectSchemaStmt() override; - explicit PROTOBUF_CONSTEXPR AlterObjectSchemaStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline MergeWhenClause() : MergeWhenClause(nullptr) {} + ~MergeWhenClause() override; + template + explicit PROTOBUF_CONSTEXPR MergeWhenClause(::google::protobuf::internal::ConstantInitialized); - AlterObjectSchemaStmt(const AlterObjectSchemaStmt& from); - AlterObjectSchemaStmt(AlterObjectSchemaStmt&& from) noexcept - : AlterObjectSchemaStmt() { + inline MergeWhenClause(const MergeWhenClause& from) + : MergeWhenClause(nullptr, from) {} + MergeWhenClause(MergeWhenClause&& from) noexcept + : MergeWhenClause() { *this = ::std::move(from); } - inline AlterObjectSchemaStmt& operator=(const AlterObjectSchemaStmt& from) { + inline MergeWhenClause& operator=(const MergeWhenClause& from) { CopyFrom(from); return *this; } - inline AlterObjectSchemaStmt& operator=(AlterObjectSchemaStmt&& from) noexcept { + inline MergeWhenClause& operator=(MergeWhenClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -38945,212 +46023,254 @@ class AlterObjectSchemaStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterObjectSchemaStmt& default_instance() { + static const MergeWhenClause& default_instance() { return *internal_default_instance(); } - static inline const AlterObjectSchemaStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterObjectSchemaStmt_default_instance_); + static inline const MergeWhenClause* internal_default_instance() { + return reinterpret_cast( + &_MergeWhenClause_default_instance_); } static constexpr int kIndexInFileMessages = - 137; + 115; - friend void swap(AlterObjectSchemaStmt& a, AlterObjectSchemaStmt& b) { + friend void swap(MergeWhenClause& a, MergeWhenClause& b) { a.Swap(&b); } - inline void Swap(AlterObjectSchemaStmt* other) { + inline void Swap(MergeWhenClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterObjectSchemaStmt* other) { + void UnsafeArenaSwap(MergeWhenClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterObjectSchemaStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + MergeWhenClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterObjectSchemaStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterObjectSchemaStmt& from) { - AlterObjectSchemaStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const MergeWhenClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const MergeWhenClause& from) { + MergeWhenClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterObjectSchemaStmt* other); + void InternalSwap(MergeWhenClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterObjectSchemaStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.MergeWhenClause"; } protected: - explicit AlterObjectSchemaStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit MergeWhenClause(::google::protobuf::Arena* arena); + MergeWhenClause(::google::protobuf::Arena* arena, const MergeWhenClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNewschemaFieldNumber = 4, - kRelationFieldNumber = 2, - kObjectFieldNumber = 3, - kObjectTypeFieldNumber = 1, - kMissingOkFieldNumber = 5, + kTargetListFieldNumber = 5, + kValuesFieldNumber = 6, + kConditionFieldNumber = 4, + kMatchedFieldNumber = 1, + kCommandTypeFieldNumber = 2, + kOverrideFieldNumber = 3, }; - // string newschema = 4 [json_name = "newschema"]; - void clear_newschema(); - const std::string& newschema() const; - template - void set_newschema(ArgT0&& arg0, ArgT... args); - std::string* mutable_newschema(); - PROTOBUF_NODISCARD std::string* release_newschema(); - void set_allocated_newschema(std::string* newschema); + // repeated .pg_query.Node target_list = 5 [json_name = "targetList"]; + int target_list_size() const; private: - const std::string& _internal_newschema() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_newschema(const std::string& value); - std::string* _internal_mutable_newschema(); - public: + int _internal_target_list_size() const; - // .pg_query.RangeVar relation = 2 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void clear_target_list() ; + ::pg_query::Node* mutable_target_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_target_list(); private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_target_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_target_list(); public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + const ::pg_query::Node& target_list(int index) const; + ::pg_query::Node* add_target_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + target_list() const; + // repeated .pg_query.Node values = 6 [json_name = "values"]; + int values_size() const; + private: + int _internal_values_size() const; - // .pg_query.Node object = 3 [json_name = "object"]; - bool has_object() const; + public: + void clear_values() ; + ::pg_query::Node* mutable_values(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_values(); private: - bool _internal_has_object() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_values() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_values(); public: - void clear_object(); - const ::pg_query::Node& object() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_object(); - ::pg_query::Node* mutable_object(); - void set_allocated_object(::pg_query::Node* object); + const ::pg_query::Node& values(int index) const; + ::pg_query::Node* add_values(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + values() const; + // .pg_query.Node condition = 4 [json_name = "condition"]; + bool has_condition() const; + void clear_condition() ; + const ::pg_query::Node& condition() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_condition(); + ::pg_query::Node* mutable_condition(); + void set_allocated_condition(::pg_query::Node* value); + void unsafe_arena_set_allocated_condition(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_condition(); + private: - const ::pg_query::Node& _internal_object() const; - ::pg_query::Node* _internal_mutable_object(); + const ::pg_query::Node& _internal_condition() const; + ::pg_query::Node* _internal_mutable_condition(); + public: - void unsafe_arena_set_allocated_object( - ::pg_query::Node* object); - ::pg_query::Node* unsafe_arena_release_object(); + // bool matched = 1 [json_name = "matched"]; + void clear_matched() ; + bool matched() const; + void set_matched(bool value); - // .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; - void clear_object_type(); - ::pg_query::ObjectType object_type() const; - void set_object_type(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_object_type() const; - void _internal_set_object_type(::pg_query::ObjectType value); + bool _internal_matched() const; + void _internal_set_matched(bool value); + public: + // .pg_query.CmdType command_type = 2 [json_name = "commandType"]; + void clear_command_type() ; + ::pg_query::CmdType command_type() const; + void set_command_type(::pg_query::CmdType value); - // bool missing_ok = 5 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); + ::pg_query::CmdType _internal_command_type() const; + void _internal_set_command_type(::pg_query::CmdType value); + public: + // .pg_query.OverridingKind override = 3 [json_name = "override"]; + void clear_override() ; + ::pg_query::OverridingKind override() const; + void set_override(::pg_query::OverridingKind value); - // @@protoc_insertion_point(class_scope:pg_query.AlterObjectSchemaStmt) + private: + ::pg_query::OverridingKind _internal_override() const; + void _internal_set_override(::pg_query::OverridingKind value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.MergeWhenClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr newschema_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* object_; - int object_type_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > target_list_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > values_; + ::pg_query::Node* condition_; + bool matched_; + int command_type_; + int override_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterOwnerStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterOwnerStmt) */ { +class MinMaxExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.MinMaxExpr) */ { public: - inline AlterOwnerStmt() : AlterOwnerStmt(nullptr) {} - ~AlterOwnerStmt() override; - explicit PROTOBUF_CONSTEXPR AlterOwnerStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline MinMaxExpr() : MinMaxExpr(nullptr) {} + ~MinMaxExpr() override; + template + explicit PROTOBUF_CONSTEXPR MinMaxExpr(::google::protobuf::internal::ConstantInitialized); - AlterOwnerStmt(const AlterOwnerStmt& from); - AlterOwnerStmt(AlterOwnerStmt&& from) noexcept - : AlterOwnerStmt() { + inline MinMaxExpr(const MinMaxExpr& from) + : MinMaxExpr(nullptr, from) {} + MinMaxExpr(MinMaxExpr&& from) noexcept + : MinMaxExpr() { *this = ::std::move(from); } - inline AlterOwnerStmt& operator=(const AlterOwnerStmt& from) { + inline MinMaxExpr& operator=(const MinMaxExpr& from) { CopyFrom(from); return *this; } - inline AlterOwnerStmt& operator=(AlterOwnerStmt&& from) noexcept { + inline MinMaxExpr& operator=(MinMaxExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -39160,205 +46280,258 @@ class AlterOwnerStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterOwnerStmt& default_instance() { + static const MinMaxExpr& default_instance() { return *internal_default_instance(); } - static inline const AlterOwnerStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterOwnerStmt_default_instance_); + static inline const MinMaxExpr* internal_default_instance() { + return reinterpret_cast( + &_MinMaxExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 138; + 46; - friend void swap(AlterOwnerStmt& a, AlterOwnerStmt& b) { + friend void swap(MinMaxExpr& a, MinMaxExpr& b) { a.Swap(&b); } - inline void Swap(AlterOwnerStmt* other) { + inline void Swap(MinMaxExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterOwnerStmt* other) { + void UnsafeArenaSwap(MinMaxExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterOwnerStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + MinMaxExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterOwnerStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterOwnerStmt& from) { - AlterOwnerStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const MinMaxExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const MinMaxExpr& from) { + MinMaxExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterOwnerStmt* other); + void InternalSwap(MinMaxExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterOwnerStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.MinMaxExpr"; } protected: - explicit AlterOwnerStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit MinMaxExpr(::google::protobuf::Arena* arena); + MinMaxExpr(::google::protobuf::Arena* arena, const MinMaxExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRelationFieldNumber = 2, - kObjectFieldNumber = 3, - kNewownerFieldNumber = 4, - kObjectTypeFieldNumber = 1, + kArgsFieldNumber = 6, + kXprFieldNumber = 1, + kMinmaxtypeFieldNumber = 2, + kMinmaxcollidFieldNumber = 3, + kInputcollidFieldNumber = 4, + kOpFieldNumber = 5, + kLocationFieldNumber = 7, }; - // .pg_query.RangeVar relation = 2 [json_name = "relation"]; - bool has_relation() const; + // repeated .pg_query.Node args = 6 [json_name = "args"]; + int args_size() const; private: - bool _internal_has_relation() const; + int _internal_args_size() const; + public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.Node object = 3 [json_name = "object"]; - bool has_object() const; private: - bool _internal_has_object() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_object(); - const ::pg_query::Node& object() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_object(); - ::pg_query::Node* mutable_object(); - void set_allocated_object(::pg_query::Node* object); + // uint32 minmaxtype = 2 [json_name = "minmaxtype"]; + void clear_minmaxtype() ; + ::uint32_t minmaxtype() const; + void set_minmaxtype(::uint32_t value); + private: - const ::pg_query::Node& _internal_object() const; - ::pg_query::Node* _internal_mutable_object(); + ::uint32_t _internal_minmaxtype() const; + void _internal_set_minmaxtype(::uint32_t value); + public: - void unsafe_arena_set_allocated_object( - ::pg_query::Node* object); - ::pg_query::Node* unsafe_arena_release_object(); + // uint32 minmaxcollid = 3 [json_name = "minmaxcollid"]; + void clear_minmaxcollid() ; + ::uint32_t minmaxcollid() const; + void set_minmaxcollid(::uint32_t value); - // .pg_query.RoleSpec newowner = 4 [json_name = "newowner"]; - bool has_newowner() const; private: - bool _internal_has_newowner() const; + ::uint32_t _internal_minmaxcollid() const; + void _internal_set_minmaxcollid(::uint32_t value); + public: - void clear_newowner(); - const ::pg_query::RoleSpec& newowner() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_newowner(); - ::pg_query::RoleSpec* mutable_newowner(); - void set_allocated_newowner(::pg_query::RoleSpec* newowner); + // uint32 inputcollid = 4 [json_name = "inputcollid"]; + void clear_inputcollid() ; + ::uint32_t inputcollid() const; + void set_inputcollid(::uint32_t value); + private: - const ::pg_query::RoleSpec& _internal_newowner() const; - ::pg_query::RoleSpec* _internal_mutable_newowner(); + ::uint32_t _internal_inputcollid() const; + void _internal_set_inputcollid(::uint32_t value); + public: - void unsafe_arena_set_allocated_newowner( - ::pg_query::RoleSpec* newowner); - ::pg_query::RoleSpec* unsafe_arena_release_newowner(); + // .pg_query.MinMaxOp op = 5 [json_name = "op"]; + void clear_op() ; + ::pg_query::MinMaxOp op() const; + void set_op(::pg_query::MinMaxOp value); - // .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; - void clear_object_type(); - ::pg_query::ObjectType object_type() const; - void set_object_type(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_object_type() const; - void _internal_set_object_type(::pg_query::ObjectType value); + ::pg_query::MinMaxOp _internal_op() const; + void _internal_set_op(::pg_query::MinMaxOp value); + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterOwnerStmt) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.MinMaxExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::RangeVar* relation_; - ::pg_query::Node* object_; - ::pg_query::RoleSpec* newowner_; - int object_type_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* xpr_; + ::uint32_t minmaxtype_; + ::uint32_t minmaxcollid_; + ::uint32_t inputcollid_; + int op_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterOperatorStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterOperatorStmt) */ { +class MultiAssignRef final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.MultiAssignRef) */ { public: - inline AlterOperatorStmt() : AlterOperatorStmt(nullptr) {} - ~AlterOperatorStmt() override; - explicit PROTOBUF_CONSTEXPR AlterOperatorStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline MultiAssignRef() : MultiAssignRef(nullptr) {} + ~MultiAssignRef() override; + template + explicit PROTOBUF_CONSTEXPR MultiAssignRef(::google::protobuf::internal::ConstantInitialized); - AlterOperatorStmt(const AlterOperatorStmt& from); - AlterOperatorStmt(AlterOperatorStmt&& from) noexcept - : AlterOperatorStmt() { + inline MultiAssignRef(const MultiAssignRef& from) + : MultiAssignRef(nullptr, from) {} + MultiAssignRef(MultiAssignRef&& from) noexcept + : MultiAssignRef() { *this = ::std::move(from); } - inline AlterOperatorStmt& operator=(const AlterOperatorStmt& from) { + inline MultiAssignRef& operator=(const MultiAssignRef& from) { CopyFrom(from); return *this; } - inline AlterOperatorStmt& operator=(AlterOperatorStmt&& from) noexcept { + inline MultiAssignRef& operator=(MultiAssignRef&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -39368,174 +46541,202 @@ class AlterOperatorStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterOperatorStmt& default_instance() { + static const MultiAssignRef& default_instance() { return *internal_default_instance(); } - static inline const AlterOperatorStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterOperatorStmt_default_instance_); + static inline const MultiAssignRef* internal_default_instance() { + return reinterpret_cast( + &_MultiAssignRef_default_instance_); } static constexpr int kIndexInFileMessages = - 139; + 81; - friend void swap(AlterOperatorStmt& a, AlterOperatorStmt& b) { + friend void swap(MultiAssignRef& a, MultiAssignRef& b) { a.Swap(&b); } - inline void Swap(AlterOperatorStmt* other) { + inline void Swap(MultiAssignRef* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterOperatorStmt* other) { + void UnsafeArenaSwap(MultiAssignRef* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterOperatorStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + MultiAssignRef* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterOperatorStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterOperatorStmt& from) { - AlterOperatorStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const MultiAssignRef& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const MultiAssignRef& from) { + MultiAssignRef::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterOperatorStmt* other); + void InternalSwap(MultiAssignRef* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterOperatorStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.MultiAssignRef"; } protected: - explicit AlterOperatorStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit MultiAssignRef(::google::protobuf::Arena* arena); + MultiAssignRef(::google::protobuf::Arena* arena, const MultiAssignRef& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kOpernameFieldNumber = 1, + kSourceFieldNumber = 1, + kColnoFieldNumber = 2, + kNcolumnsFieldNumber = 3, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; - private: - int _internal_options_size() const; - public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.Node source = 1 [json_name = "source"]; + bool has_source() const; + void clear_source() ; + const ::pg_query::Node& source() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_source(); + ::pg_query::Node* mutable_source(); + void set_allocated_source(::pg_query::Node* value); + void unsafe_arena_set_allocated_source(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_source(); + private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::pg_query::Node& _internal_source() const; + ::pg_query::Node* _internal_mutable_source(); + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + // int32 colno = 2 [json_name = "colno"]; + void clear_colno() ; + ::int32_t colno() const; + void set_colno(::int32_t value); - // .pg_query.ObjectWithArgs opername = 1 [json_name = "opername"]; - bool has_opername() const; private: - bool _internal_has_opername() const; + ::int32_t _internal_colno() const; + void _internal_set_colno(::int32_t value); + public: - void clear_opername(); - const ::pg_query::ObjectWithArgs& opername() const; - PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_opername(); - ::pg_query::ObjectWithArgs* mutable_opername(); - void set_allocated_opername(::pg_query::ObjectWithArgs* opername); + // int32 ncolumns = 3 [json_name = "ncolumns"]; + void clear_ncolumns() ; + ::int32_t ncolumns() const; + void set_ncolumns(::int32_t value); + private: - const ::pg_query::ObjectWithArgs& _internal_opername() const; - ::pg_query::ObjectWithArgs* _internal_mutable_opername(); - public: - void unsafe_arena_set_allocated_opername( - ::pg_query::ObjectWithArgs* opername); - ::pg_query::ObjectWithArgs* unsafe_arena_release_opername(); + ::int32_t _internal_ncolumns() const; + void _internal_set_ncolumns(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterOperatorStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.MultiAssignRef) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::pg_query::ObjectWithArgs* opername_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* source_; + ::int32_t colno_; + ::int32_t ncolumns_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterTypeStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTypeStmt) */ { +class NamedArgExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.NamedArgExpr) */ { public: - inline AlterTypeStmt() : AlterTypeStmt(nullptr) {} - ~AlterTypeStmt() override; - explicit PROTOBUF_CONSTEXPR AlterTypeStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline NamedArgExpr() : NamedArgExpr(nullptr) {} + ~NamedArgExpr() override; + template + explicit PROTOBUF_CONSTEXPR NamedArgExpr(::google::protobuf::internal::ConstantInitialized); - AlterTypeStmt(const AlterTypeStmt& from); - AlterTypeStmt(AlterTypeStmt&& from) noexcept - : AlterTypeStmt() { + inline NamedArgExpr(const NamedArgExpr& from) + : NamedArgExpr(nullptr, from) {} + NamedArgExpr(NamedArgExpr&& from) noexcept + : NamedArgExpr() { *this = ::std::move(from); } - inline AlterTypeStmt& operator=(const AlterTypeStmt& from) { + inline NamedArgExpr& operator=(const NamedArgExpr& from) { CopyFrom(from); return *this; } - inline AlterTypeStmt& operator=(AlterTypeStmt&& from) noexcept { + inline NamedArgExpr& operator=(NamedArgExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -39545,174 +46746,237 @@ class AlterTypeStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterTypeStmt& default_instance() { + static const NamedArgExpr& default_instance() { return *internal_default_instance(); } - static inline const AlterTypeStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterTypeStmt_default_instance_); + static inline const NamedArgExpr* internal_default_instance() { + return reinterpret_cast( + &_NamedArgExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 140; + 23; - friend void swap(AlterTypeStmt& a, AlterTypeStmt& b) { + friend void swap(NamedArgExpr& a, NamedArgExpr& b) { a.Swap(&b); } - inline void Swap(AlterTypeStmt* other) { + inline void Swap(NamedArgExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterTypeStmt* other) { + void UnsafeArenaSwap(NamedArgExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterTypeStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + NamedArgExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterTypeStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterTypeStmt& from) { - AlterTypeStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const NamedArgExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const NamedArgExpr& from) { + NamedArgExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterTypeStmt* other); + void InternalSwap(NamedArgExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterTypeStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.NamedArgExpr"; } protected: - explicit AlterTypeStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit NamedArgExpr(::google::protobuf::Arena* arena); + NamedArgExpr(::google::protobuf::Arena* arena, const NamedArgExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kTypeNameFieldNumber = 1, - kOptionsFieldNumber = 2, + kNameFieldNumber = 3, + kXprFieldNumber = 1, + kArgFieldNumber = 2, + kArgnumberFieldNumber = 4, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; - int type_name_size() const; + // string name = 3 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + private: - int _internal_type_name_size() const; + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + public: - void clear_type_name(); - ::pg_query::Node* mutable_type_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_type_name(); + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: - const ::pg_query::Node& _internal_type_name(int index) const; - ::pg_query::Node* _internal_add_type_name(); + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - const ::pg_query::Node& type_name(int index) const; - ::pg_query::Node* add_type_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - type_name() const; + // .pg_query.Node arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // int32 argnumber = 4 [json_name = "argnumber"]; + void clear_argnumber() ; + ::int32_t argnumber() const; + void set_argnumber(::int32_t value); + private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + ::int32_t _internal_argnumber() const; + void _internal_set_argnumber(::int32_t value); + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterTypeStmt) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.NamedArgExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 34, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > type_name_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::Node* xpr_; + ::pg_query::Node* arg_; + ::int32_t argnumber_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DropOwnedStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DropOwnedStmt) */ { +class NextValueExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.NextValueExpr) */ { public: - inline DropOwnedStmt() : DropOwnedStmt(nullptr) {} - ~DropOwnedStmt() override; - explicit PROTOBUF_CONSTEXPR DropOwnedStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline NextValueExpr() : NextValueExpr(nullptr) {} + ~NextValueExpr() override; + template + explicit PROTOBUF_CONSTEXPR NextValueExpr(::google::protobuf::internal::ConstantInitialized); - DropOwnedStmt(const DropOwnedStmt& from); - DropOwnedStmt(DropOwnedStmt&& from) noexcept - : DropOwnedStmt() { + inline NextValueExpr(const NextValueExpr& from) + : NextValueExpr(nullptr, from) {} + NextValueExpr(NextValueExpr&& from) noexcept + : NextValueExpr() { *this = ::std::move(from); } - inline DropOwnedStmt& operator=(const DropOwnedStmt& from) { + inline NextValueExpr& operator=(const NextValueExpr& from) { CopyFrom(from); return *this; } - inline DropOwnedStmt& operator=(DropOwnedStmt&& from) noexcept { + inline NextValueExpr& operator=(NextValueExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -39722,165 +46986,202 @@ class DropOwnedStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DropOwnedStmt& default_instance() { + static const NextValueExpr& default_instance() { return *internal_default_instance(); } - static inline const DropOwnedStmt* internal_default_instance() { - return reinterpret_cast( - &_DropOwnedStmt_default_instance_); + static inline const NextValueExpr* internal_default_instance() { + return reinterpret_cast( + &_NextValueExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 141; + 60; - friend void swap(DropOwnedStmt& a, DropOwnedStmt& b) { + friend void swap(NextValueExpr& a, NextValueExpr& b) { a.Swap(&b); } - inline void Swap(DropOwnedStmt* other) { + inline void Swap(NextValueExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DropOwnedStmt* other) { + void UnsafeArenaSwap(NextValueExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DropOwnedStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + NextValueExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DropOwnedStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DropOwnedStmt& from) { - DropOwnedStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const NextValueExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const NextValueExpr& from) { + NextValueExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DropOwnedStmt* other); + void InternalSwap(NextValueExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DropOwnedStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.NextValueExpr"; } protected: - explicit DropOwnedStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit NextValueExpr(::google::protobuf::Arena* arena); + NextValueExpr(::google::protobuf::Arena* arena, const NextValueExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRolesFieldNumber = 1, - kBehaviorFieldNumber = 2, + kXprFieldNumber = 1, + kSeqidFieldNumber = 2, + kTypeIdFieldNumber = 3, }; - // repeated .pg_query.Node roles = 1 [json_name = "roles"]; - int roles_size() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: - int _internal_roles_size() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_roles(); - ::pg_query::Node* mutable_roles(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_roles(); + // uint32 seqid = 2 [json_name = "seqid"]; + void clear_seqid() ; + ::uint32_t seqid() const; + void set_seqid(::uint32_t value); + private: - const ::pg_query::Node& _internal_roles(int index) const; - ::pg_query::Node* _internal_add_roles(); + ::uint32_t _internal_seqid() const; + void _internal_set_seqid(::uint32_t value); + public: - const ::pg_query::Node& roles(int index) const; - ::pg_query::Node* add_roles(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - roles() const; + // uint32 type_id = 3 [json_name = "typeId"]; + void clear_type_id() ; + ::uint32_t type_id() const; + void set_type_id(::uint32_t value); - // .pg_query.DropBehavior behavior = 2 [json_name = "behavior"]; - void clear_behavior(); - ::pg_query::DropBehavior behavior() const; - void set_behavior(::pg_query::DropBehavior value); private: - ::pg_query::DropBehavior _internal_behavior() const; - void _internal_set_behavior(::pg_query::DropBehavior value); - public: + ::uint32_t _internal_type_id() const; + void _internal_set_type_id(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.DropOwnedStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.NextValueExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > roles_; - int behavior_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* xpr_; + ::uint32_t seqid_; + ::uint32_t type_id_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ReassignOwnedStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ReassignOwnedStmt) */ { +class Node final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Node) */ { public: - inline ReassignOwnedStmt() : ReassignOwnedStmt(nullptr) {} - ~ReassignOwnedStmt() override; - explicit PROTOBUF_CONSTEXPR ReassignOwnedStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline Node() : Node(nullptr) {} + ~Node() override; + template + explicit PROTOBUF_CONSTEXPR Node(::google::protobuf::internal::ConstantInitialized); - ReassignOwnedStmt(const ReassignOwnedStmt& from); - ReassignOwnedStmt(ReassignOwnedStmt&& from) noexcept - : ReassignOwnedStmt() { + inline Node(const Node& from) + : Node(nullptr, from) {} + Node(Node&& from) noexcept + : Node() { *this = ::std::move(from); } - inline ReassignOwnedStmt& operator=(const ReassignOwnedStmt& from) { + inline Node& operator=(const Node& from) { CopyFrom(from); return *this; } - inline ReassignOwnedStmt& operator=(ReassignOwnedStmt&& from) noexcept { + inline Node& operator=(Node&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -39890,5468 +47191,5971 @@ class ReassignOwnedStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ReassignOwnedStmt& default_instance() { + static const Node& default_instance() { return *internal_default_instance(); } - static inline const ReassignOwnedStmt* internal_default_instance() { - return reinterpret_cast( - &_ReassignOwnedStmt_default_instance_); + enum NodeCase { + kAlias = 1, + kRangeVar = 2, + kTableFunc = 3, + kIntoClause = 4, + kVar = 5, + kParam = 6, + kAggref = 7, + kGroupingFunc = 8, + kWindowFunc = 9, + kSubscriptingRef = 10, + kFuncExpr = 11, + kNamedArgExpr = 12, + kOpExpr = 13, + kDistinctExpr = 14, + kNullIfExpr = 15, + kScalarArrayOpExpr = 16, + kBoolExpr = 17, + kSubLink = 18, + kSubPlan = 19, + kAlternativeSubPlan = 20, + kFieldSelect = 21, + kFieldStore = 22, + kRelabelType = 23, + kCoerceViaIo = 24, + kArrayCoerceExpr = 25, + kConvertRowtypeExpr = 26, + kCollateExpr = 27, + kCaseExpr = 28, + kCaseWhen = 29, + kCaseTestExpr = 30, + kArrayExpr = 31, + kRowExpr = 32, + kRowCompareExpr = 33, + kCoalesceExpr = 34, + kMinMaxExpr = 35, + kSqlvalueFunction = 36, + kXmlExpr = 37, + kJsonFormat = 38, + kJsonReturning = 39, + kJsonValueExpr = 40, + kJsonConstructorExpr = 41, + kJsonIsPredicate = 42, + kNullTest = 43, + kBooleanTest = 44, + kCoerceToDomain = 45, + kCoerceToDomainValue = 46, + kSetToDefault = 47, + kCurrentOfExpr = 48, + kNextValueExpr = 49, + kInferenceElem = 50, + kTargetEntry = 51, + kRangeTblRef = 52, + kJoinExpr = 53, + kFromExpr = 54, + kOnConflictExpr = 55, + kQuery = 56, + kTypeName = 57, + kColumnRef = 58, + kParamRef = 59, + kAExpr = 60, + kTypeCast = 61, + kCollateClause = 62, + kRoleSpec = 63, + kFuncCall = 64, + kAStar = 65, + kAIndices = 66, + kAIndirection = 67, + kAArrayExpr = 68, + kResTarget = 69, + kMultiAssignRef = 70, + kSortBy = 71, + kWindowDef = 72, + kRangeSubselect = 73, + kRangeFunction = 74, + kRangeTableFunc = 75, + kRangeTableFuncCol = 76, + kRangeTableSample = 77, + kColumnDef = 78, + kTableLikeClause = 79, + kIndexElem = 80, + kDefElem = 81, + kLockingClause = 82, + kXmlSerialize = 83, + kPartitionElem = 84, + kPartitionSpec = 85, + kPartitionBoundSpec = 86, + kPartitionRangeDatum = 87, + kPartitionCmd = 88, + kRangeTblEntry = 89, + kRtepermissionInfo = 90, + kRangeTblFunction = 91, + kTableSampleClause = 92, + kWithCheckOption = 93, + kSortGroupClause = 94, + kGroupingSet = 95, + kWindowClause = 96, + kRowMarkClause = 97, + kWithClause = 98, + kInferClause = 99, + kOnConflictClause = 100, + kCtesearchClause = 101, + kCtecycleClause = 102, + kCommonTableExpr = 103, + kMergeWhenClause = 104, + kMergeAction = 105, + kTriggerTransition = 106, + kJsonOutput = 107, + kJsonKeyValue = 108, + kJsonObjectConstructor = 109, + kJsonArrayConstructor = 110, + kJsonArrayQueryConstructor = 111, + kJsonAggConstructor = 112, + kJsonObjectAgg = 113, + kJsonArrayAgg = 114, + kRawStmt = 115, + kInsertStmt = 116, + kDeleteStmt = 117, + kUpdateStmt = 118, + kMergeStmt = 119, + kSelectStmt = 120, + kSetOperationStmt = 121, + kReturnStmt = 122, + kPlassignStmt = 123, + kCreateSchemaStmt = 124, + kAlterTableStmt = 125, + kReplicaIdentityStmt = 126, + kAlterTableCmd = 127, + kAlterCollationStmt = 128, + kAlterDomainStmt = 129, + kGrantStmt = 130, + kObjectWithArgs = 131, + kAccessPriv = 132, + kGrantRoleStmt = 133, + kAlterDefaultPrivilegesStmt = 134, + kCopyStmt = 135, + kVariableSetStmt = 136, + kVariableShowStmt = 137, + kCreateStmt = 138, + kConstraint = 139, + kCreateTableSpaceStmt = 140, + kDropTableSpaceStmt = 141, + kAlterTableSpaceOptionsStmt = 142, + kAlterTableMoveAllStmt = 143, + kCreateExtensionStmt = 144, + kAlterExtensionStmt = 145, + kAlterExtensionContentsStmt = 146, + kCreateFdwStmt = 147, + kAlterFdwStmt = 148, + kCreateForeignServerStmt = 149, + kAlterForeignServerStmt = 150, + kCreateForeignTableStmt = 151, + kCreateUserMappingStmt = 152, + kAlterUserMappingStmt = 153, + kDropUserMappingStmt = 154, + kImportForeignSchemaStmt = 155, + kCreatePolicyStmt = 156, + kAlterPolicyStmt = 157, + kCreateAmStmt = 158, + kCreateTrigStmt = 159, + kCreateEventTrigStmt = 160, + kAlterEventTrigStmt = 161, + kCreatePlangStmt = 162, + kCreateRoleStmt = 163, + kAlterRoleStmt = 164, + kAlterRoleSetStmt = 165, + kDropRoleStmt = 166, + kCreateSeqStmt = 167, + kAlterSeqStmt = 168, + kDefineStmt = 169, + kCreateDomainStmt = 170, + kCreateOpClassStmt = 171, + kCreateOpClassItem = 172, + kCreateOpFamilyStmt = 173, + kAlterOpFamilyStmt = 174, + kDropStmt = 175, + kTruncateStmt = 176, + kCommentStmt = 177, + kSecLabelStmt = 178, + kDeclareCursorStmt = 179, + kClosePortalStmt = 180, + kFetchStmt = 181, + kIndexStmt = 182, + kCreateStatsStmt = 183, + kStatsElem = 184, + kAlterStatsStmt = 185, + kCreateFunctionStmt = 186, + kFunctionParameter = 187, + kAlterFunctionStmt = 188, + kDoStmt = 189, + kInlineCodeBlock = 190, + kCallStmt = 191, + kCallContext = 192, + kRenameStmt = 193, + kAlterObjectDependsStmt = 194, + kAlterObjectSchemaStmt = 195, + kAlterOwnerStmt = 196, + kAlterOperatorStmt = 197, + kAlterTypeStmt = 198, + kRuleStmt = 199, + kNotifyStmt = 200, + kListenStmt = 201, + kUnlistenStmt = 202, + kTransactionStmt = 203, + kCompositeTypeStmt = 204, + kCreateEnumStmt = 205, + kCreateRangeStmt = 206, + kAlterEnumStmt = 207, + kViewStmt = 208, + kLoadStmt = 209, + kCreatedbStmt = 210, + kAlterDatabaseStmt = 211, + kAlterDatabaseRefreshCollStmt = 212, + kAlterDatabaseSetStmt = 213, + kDropdbStmt = 214, + kAlterSystemStmt = 215, + kClusterStmt = 216, + kVacuumStmt = 217, + kVacuumRelation = 218, + kExplainStmt = 219, + kCreateTableAsStmt = 220, + kRefreshMatViewStmt = 221, + kCheckPointStmt = 222, + kDiscardStmt = 223, + kLockStmt = 224, + kConstraintsSetStmt = 225, + kReindexStmt = 226, + kCreateConversionStmt = 227, + kCreateCastStmt = 228, + kCreateTransformStmt = 229, + kPrepareStmt = 230, + kExecuteStmt = 231, + kDeallocateStmt = 232, + kDropOwnedStmt = 233, + kReassignOwnedStmt = 234, + kAlterTsdictionaryStmt = 235, + kAlterTsconfigurationStmt = 236, + kPublicationTable = 237, + kPublicationObjSpec = 238, + kCreatePublicationStmt = 239, + kAlterPublicationStmt = 240, + kCreateSubscriptionStmt = 241, + kAlterSubscriptionStmt = 242, + kDropSubscriptionStmt = 243, + kInteger = 244, + kFloat = 245, + kBoolean = 246, + kString = 247, + kBitString = 248, + kList = 249, + kIntList = 250, + kOidList = 251, + kAConst = 252, + NODE_NOT_SET = 0, + }; + + static inline const Node* internal_default_instance() { + return reinterpret_cast( + &_Node_default_instance_); } static constexpr int kIndexInFileMessages = - 142; + 2; - friend void swap(ReassignOwnedStmt& a, ReassignOwnedStmt& b) { + friend void swap(Node& a, Node& b) { a.Swap(&b); } - inline void Swap(ReassignOwnedStmt* other) { + inline void Swap(Node* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ReassignOwnedStmt* other) { + void UnsafeArenaSwap(Node* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ReassignOwnedStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + Node* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ReassignOwnedStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ReassignOwnedStmt& from) { - ReassignOwnedStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Node& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Node& from) { + Node::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ReassignOwnedStmt* other); + void InternalSwap(Node* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ReassignOwnedStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Node"; } protected: - explicit ReassignOwnedStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit Node(::google::protobuf::Arena* arena); + Node(::google::protobuf::Arena* arena, const Node& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRolesFieldNumber = 1, - kNewroleFieldNumber = 2, + kAliasFieldNumber = 1, + kRangeVarFieldNumber = 2, + kTableFuncFieldNumber = 3, + kIntoClauseFieldNumber = 4, + kVarFieldNumber = 5, + kParamFieldNumber = 6, + kAggrefFieldNumber = 7, + kGroupingFuncFieldNumber = 8, + kWindowFuncFieldNumber = 9, + kSubscriptingRefFieldNumber = 10, + kFuncExprFieldNumber = 11, + kNamedArgExprFieldNumber = 12, + kOpExprFieldNumber = 13, + kDistinctExprFieldNumber = 14, + kNullIfExprFieldNumber = 15, + kScalarArrayOpExprFieldNumber = 16, + kBoolExprFieldNumber = 17, + kSubLinkFieldNumber = 18, + kSubPlanFieldNumber = 19, + kAlternativeSubPlanFieldNumber = 20, + kFieldSelectFieldNumber = 21, + kFieldStoreFieldNumber = 22, + kRelabelTypeFieldNumber = 23, + kCoerceViaIoFieldNumber = 24, + kArrayCoerceExprFieldNumber = 25, + kConvertRowtypeExprFieldNumber = 26, + kCollateExprFieldNumber = 27, + kCaseExprFieldNumber = 28, + kCaseWhenFieldNumber = 29, + kCaseTestExprFieldNumber = 30, + kArrayExprFieldNumber = 31, + kRowExprFieldNumber = 32, + kRowCompareExprFieldNumber = 33, + kCoalesceExprFieldNumber = 34, + kMinMaxExprFieldNumber = 35, + kSqlvalueFunctionFieldNumber = 36, + kXmlExprFieldNumber = 37, + kJsonFormatFieldNumber = 38, + kJsonReturningFieldNumber = 39, + kJsonValueExprFieldNumber = 40, + kJsonConstructorExprFieldNumber = 41, + kJsonIsPredicateFieldNumber = 42, + kNullTestFieldNumber = 43, + kBooleanTestFieldNumber = 44, + kCoerceToDomainFieldNumber = 45, + kCoerceToDomainValueFieldNumber = 46, + kSetToDefaultFieldNumber = 47, + kCurrentOfExprFieldNumber = 48, + kNextValueExprFieldNumber = 49, + kInferenceElemFieldNumber = 50, + kTargetEntryFieldNumber = 51, + kRangeTblRefFieldNumber = 52, + kJoinExprFieldNumber = 53, + kFromExprFieldNumber = 54, + kOnConflictExprFieldNumber = 55, + kQueryFieldNumber = 56, + kTypeNameFieldNumber = 57, + kColumnRefFieldNumber = 58, + kParamRefFieldNumber = 59, + kAExprFieldNumber = 60, + kTypeCastFieldNumber = 61, + kCollateClauseFieldNumber = 62, + kRoleSpecFieldNumber = 63, + kFuncCallFieldNumber = 64, + kAStarFieldNumber = 65, + kAIndicesFieldNumber = 66, + kAIndirectionFieldNumber = 67, + kAArrayExprFieldNumber = 68, + kResTargetFieldNumber = 69, + kMultiAssignRefFieldNumber = 70, + kSortByFieldNumber = 71, + kWindowDefFieldNumber = 72, + kRangeSubselectFieldNumber = 73, + kRangeFunctionFieldNumber = 74, + kRangeTableFuncFieldNumber = 75, + kRangeTableFuncColFieldNumber = 76, + kRangeTableSampleFieldNumber = 77, + kColumnDefFieldNumber = 78, + kTableLikeClauseFieldNumber = 79, + kIndexElemFieldNumber = 80, + kDefElemFieldNumber = 81, + kLockingClauseFieldNumber = 82, + kXmlSerializeFieldNumber = 83, + kPartitionElemFieldNumber = 84, + kPartitionSpecFieldNumber = 85, + kPartitionBoundSpecFieldNumber = 86, + kPartitionRangeDatumFieldNumber = 87, + kPartitionCmdFieldNumber = 88, + kRangeTblEntryFieldNumber = 89, + kRtepermissionInfoFieldNumber = 90, + kRangeTblFunctionFieldNumber = 91, + kTableSampleClauseFieldNumber = 92, + kWithCheckOptionFieldNumber = 93, + kSortGroupClauseFieldNumber = 94, + kGroupingSetFieldNumber = 95, + kWindowClauseFieldNumber = 96, + kRowMarkClauseFieldNumber = 97, + kWithClauseFieldNumber = 98, + kInferClauseFieldNumber = 99, + kOnConflictClauseFieldNumber = 100, + kCtesearchClauseFieldNumber = 101, + kCtecycleClauseFieldNumber = 102, + kCommonTableExprFieldNumber = 103, + kMergeWhenClauseFieldNumber = 104, + kMergeActionFieldNumber = 105, + kTriggerTransitionFieldNumber = 106, + kJsonOutputFieldNumber = 107, + kJsonKeyValueFieldNumber = 108, + kJsonObjectConstructorFieldNumber = 109, + kJsonArrayConstructorFieldNumber = 110, + kJsonArrayQueryConstructorFieldNumber = 111, + kJsonAggConstructorFieldNumber = 112, + kJsonObjectAggFieldNumber = 113, + kJsonArrayAggFieldNumber = 114, + kRawStmtFieldNumber = 115, + kInsertStmtFieldNumber = 116, + kDeleteStmtFieldNumber = 117, + kUpdateStmtFieldNumber = 118, + kMergeStmtFieldNumber = 119, + kSelectStmtFieldNumber = 120, + kSetOperationStmtFieldNumber = 121, + kReturnStmtFieldNumber = 122, + kPlassignStmtFieldNumber = 123, + kCreateSchemaStmtFieldNumber = 124, + kAlterTableStmtFieldNumber = 125, + kReplicaIdentityStmtFieldNumber = 126, + kAlterTableCmdFieldNumber = 127, + kAlterCollationStmtFieldNumber = 128, + kAlterDomainStmtFieldNumber = 129, + kGrantStmtFieldNumber = 130, + kObjectWithArgsFieldNumber = 131, + kAccessPrivFieldNumber = 132, + kGrantRoleStmtFieldNumber = 133, + kAlterDefaultPrivilegesStmtFieldNumber = 134, + kCopyStmtFieldNumber = 135, + kVariableSetStmtFieldNumber = 136, + kVariableShowStmtFieldNumber = 137, + kCreateStmtFieldNumber = 138, + kConstraintFieldNumber = 139, + kCreateTableSpaceStmtFieldNumber = 140, + kDropTableSpaceStmtFieldNumber = 141, + kAlterTableSpaceOptionsStmtFieldNumber = 142, + kAlterTableMoveAllStmtFieldNumber = 143, + kCreateExtensionStmtFieldNumber = 144, + kAlterExtensionStmtFieldNumber = 145, + kAlterExtensionContentsStmtFieldNumber = 146, + kCreateFdwStmtFieldNumber = 147, + kAlterFdwStmtFieldNumber = 148, + kCreateForeignServerStmtFieldNumber = 149, + kAlterForeignServerStmtFieldNumber = 150, + kCreateForeignTableStmtFieldNumber = 151, + kCreateUserMappingStmtFieldNumber = 152, + kAlterUserMappingStmtFieldNumber = 153, + kDropUserMappingStmtFieldNumber = 154, + kImportForeignSchemaStmtFieldNumber = 155, + kCreatePolicyStmtFieldNumber = 156, + kAlterPolicyStmtFieldNumber = 157, + kCreateAmStmtFieldNumber = 158, + kCreateTrigStmtFieldNumber = 159, + kCreateEventTrigStmtFieldNumber = 160, + kAlterEventTrigStmtFieldNumber = 161, + kCreatePlangStmtFieldNumber = 162, + kCreateRoleStmtFieldNumber = 163, + kAlterRoleStmtFieldNumber = 164, + kAlterRoleSetStmtFieldNumber = 165, + kDropRoleStmtFieldNumber = 166, + kCreateSeqStmtFieldNumber = 167, + kAlterSeqStmtFieldNumber = 168, + kDefineStmtFieldNumber = 169, + kCreateDomainStmtFieldNumber = 170, + kCreateOpClassStmtFieldNumber = 171, + kCreateOpClassItemFieldNumber = 172, + kCreateOpFamilyStmtFieldNumber = 173, + kAlterOpFamilyStmtFieldNumber = 174, + kDropStmtFieldNumber = 175, + kTruncateStmtFieldNumber = 176, + kCommentStmtFieldNumber = 177, + kSecLabelStmtFieldNumber = 178, + kDeclareCursorStmtFieldNumber = 179, + kClosePortalStmtFieldNumber = 180, + kFetchStmtFieldNumber = 181, + kIndexStmtFieldNumber = 182, + kCreateStatsStmtFieldNumber = 183, + kStatsElemFieldNumber = 184, + kAlterStatsStmtFieldNumber = 185, + kCreateFunctionStmtFieldNumber = 186, + kFunctionParameterFieldNumber = 187, + kAlterFunctionStmtFieldNumber = 188, + kDoStmtFieldNumber = 189, + kInlineCodeBlockFieldNumber = 190, + kCallStmtFieldNumber = 191, + kCallContextFieldNumber = 192, + kRenameStmtFieldNumber = 193, + kAlterObjectDependsStmtFieldNumber = 194, + kAlterObjectSchemaStmtFieldNumber = 195, + kAlterOwnerStmtFieldNumber = 196, + kAlterOperatorStmtFieldNumber = 197, + kAlterTypeStmtFieldNumber = 198, + kRuleStmtFieldNumber = 199, + kNotifyStmtFieldNumber = 200, + kListenStmtFieldNumber = 201, + kUnlistenStmtFieldNumber = 202, + kTransactionStmtFieldNumber = 203, + kCompositeTypeStmtFieldNumber = 204, + kCreateEnumStmtFieldNumber = 205, + kCreateRangeStmtFieldNumber = 206, + kAlterEnumStmtFieldNumber = 207, + kViewStmtFieldNumber = 208, + kLoadStmtFieldNumber = 209, + kCreatedbStmtFieldNumber = 210, + kAlterDatabaseStmtFieldNumber = 211, + kAlterDatabaseRefreshCollStmtFieldNumber = 212, + kAlterDatabaseSetStmtFieldNumber = 213, + kDropdbStmtFieldNumber = 214, + kAlterSystemStmtFieldNumber = 215, + kClusterStmtFieldNumber = 216, + kVacuumStmtFieldNumber = 217, + kVacuumRelationFieldNumber = 218, + kExplainStmtFieldNumber = 219, + kCreateTableAsStmtFieldNumber = 220, + kRefreshMatViewStmtFieldNumber = 221, + kCheckPointStmtFieldNumber = 222, + kDiscardStmtFieldNumber = 223, + kLockStmtFieldNumber = 224, + kConstraintsSetStmtFieldNumber = 225, + kReindexStmtFieldNumber = 226, + kCreateConversionStmtFieldNumber = 227, + kCreateCastStmtFieldNumber = 228, + kCreateTransformStmtFieldNumber = 229, + kPrepareStmtFieldNumber = 230, + kExecuteStmtFieldNumber = 231, + kDeallocateStmtFieldNumber = 232, + kDropOwnedStmtFieldNumber = 233, + kReassignOwnedStmtFieldNumber = 234, + kAlterTsdictionaryStmtFieldNumber = 235, + kAlterTsconfigurationStmtFieldNumber = 236, + kPublicationTableFieldNumber = 237, + kPublicationObjSpecFieldNumber = 238, + kCreatePublicationStmtFieldNumber = 239, + kAlterPublicationStmtFieldNumber = 240, + kCreateSubscriptionStmtFieldNumber = 241, + kAlterSubscriptionStmtFieldNumber = 242, + kDropSubscriptionStmtFieldNumber = 243, + kIntegerFieldNumber = 244, + kFloatFieldNumber = 245, + kBooleanFieldNumber = 246, + kStringFieldNumber = 247, + kBitStringFieldNumber = 248, + kListFieldNumber = 249, + kIntListFieldNumber = 250, + kOidListFieldNumber = 251, + kAConstFieldNumber = 252, }; - // repeated .pg_query.Node roles = 1 [json_name = "roles"]; - int roles_size() const; + // .pg_query.Alias alias = 1 [json_name = "Alias"]; + bool has_alias() const; private: - int _internal_roles_size() const; + bool _internal_has_alias() const; + public: - void clear_roles(); - ::pg_query::Node* mutable_roles(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_roles(); + void clear_alias() ; + const ::pg_query::Alias& alias() const; + PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); + ::pg_query::Alias* mutable_alias(); + void set_allocated_alias(::pg_query::Alias* value); + void unsafe_arena_set_allocated_alias(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_alias(); + private: - const ::pg_query::Node& _internal_roles(int index) const; - ::pg_query::Node* _internal_add_roles(); + const ::pg_query::Alias& _internal_alias() const; + ::pg_query::Alias* _internal_mutable_alias(); + public: - const ::pg_query::Node& roles(int index) const; - ::pg_query::Node* add_roles(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - roles() const; + // .pg_query.RangeVar range_var = 2 [json_name = "RangeVar"]; + bool has_range_var() const; + private: + bool _internal_has_range_var() const; + + public: + void clear_range_var() ; + const ::pg_query::RangeVar& range_var() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_range_var(); + ::pg_query::RangeVar* mutable_range_var(); + void set_allocated_range_var(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_range_var(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_range_var(); - // .pg_query.RoleSpec newrole = 2 [json_name = "newrole"]; - bool has_newrole() const; private: - bool _internal_has_newrole() const; + const ::pg_query::RangeVar& _internal_range_var() const; + ::pg_query::RangeVar* _internal_mutable_range_var(); + public: - void clear_newrole(); - const ::pg_query::RoleSpec& newrole() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_newrole(); - ::pg_query::RoleSpec* mutable_newrole(); - void set_allocated_newrole(::pg_query::RoleSpec* newrole); + // .pg_query.TableFunc table_func = 3 [json_name = "TableFunc"]; + bool has_table_func() const; private: - const ::pg_query::RoleSpec& _internal_newrole() const; - ::pg_query::RoleSpec* _internal_mutable_newrole(); + bool _internal_has_table_func() const; + public: - void unsafe_arena_set_allocated_newrole( - ::pg_query::RoleSpec* newrole); - ::pg_query::RoleSpec* unsafe_arena_release_newrole(); + void clear_table_func() ; + const ::pg_query::TableFunc& table_func() const; + PROTOBUF_NODISCARD ::pg_query::TableFunc* release_table_func(); + ::pg_query::TableFunc* mutable_table_func(); + void set_allocated_table_func(::pg_query::TableFunc* value); + void unsafe_arena_set_allocated_table_func(::pg_query::TableFunc* value); + ::pg_query::TableFunc* unsafe_arena_release_table_func(); - // @@protoc_insertion_point(class_scope:pg_query.ReassignOwnedStmt) - private: - class _Internal; + private: + const ::pg_query::TableFunc& _internal_table_func() const; + ::pg_query::TableFunc* _internal_mutable_table_func(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > roles_; - ::pg_query::RoleSpec* newrole_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + // .pg_query.IntoClause into_clause = 4 [json_name = "IntoClause"]; + bool has_into_clause() const; + private: + bool _internal_has_into_clause() const; -class CompositeTypeStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CompositeTypeStmt) */ { - public: - inline CompositeTypeStmt() : CompositeTypeStmt(nullptr) {} - ~CompositeTypeStmt() override; - explicit PROTOBUF_CONSTEXPR CompositeTypeStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + void clear_into_clause() ; + const ::pg_query::IntoClause& into_clause() const; + PROTOBUF_NODISCARD ::pg_query::IntoClause* release_into_clause(); + ::pg_query::IntoClause* mutable_into_clause(); + void set_allocated_into_clause(::pg_query::IntoClause* value); + void unsafe_arena_set_allocated_into_clause(::pg_query::IntoClause* value); + ::pg_query::IntoClause* unsafe_arena_release_into_clause(); - CompositeTypeStmt(const CompositeTypeStmt& from); - CompositeTypeStmt(CompositeTypeStmt&& from) noexcept - : CompositeTypeStmt() { - *this = ::std::move(from); - } + private: + const ::pg_query::IntoClause& _internal_into_clause() const; + ::pg_query::IntoClause* _internal_mutable_into_clause(); - inline CompositeTypeStmt& operator=(const CompositeTypeStmt& from) { - CopyFrom(from); - return *this; - } - inline CompositeTypeStmt& operator=(CompositeTypeStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + // .pg_query.Var var = 5 [json_name = "Var"]; + bool has_var() const; + private: + bool _internal_has_var() const; - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CompositeTypeStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CompositeTypeStmt* internal_default_instance() { - return reinterpret_cast( - &_CompositeTypeStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 143; + public: + void clear_var() ; + const ::pg_query::Var& var() const; + PROTOBUF_NODISCARD ::pg_query::Var* release_var(); + ::pg_query::Var* mutable_var(); + void set_allocated_var(::pg_query::Var* value); + void unsafe_arena_set_allocated_var(::pg_query::Var* value); + ::pg_query::Var* unsafe_arena_release_var(); - friend void swap(CompositeTypeStmt& a, CompositeTypeStmt& b) { - a.Swap(&b); - } - inline void Swap(CompositeTypeStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CompositeTypeStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + private: + const ::pg_query::Var& _internal_var() const; + ::pg_query::Var* _internal_mutable_var(); - // implements Message ---------------------------------------------- + public: + // .pg_query.Param param = 6 [json_name = "Param"]; + bool has_param() const; + private: + bool _internal_has_param() const; + + public: + void clear_param() ; + const ::pg_query::Param& param() const; + PROTOBUF_NODISCARD ::pg_query::Param* release_param(); + ::pg_query::Param* mutable_param(); + void set_allocated_param(::pg_query::Param* value); + void unsafe_arena_set_allocated_param(::pg_query::Param* value); + ::pg_query::Param* unsafe_arena_release_param(); - CompositeTypeStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CompositeTypeStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CompositeTypeStmt& from) { - CompositeTypeStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::Param& _internal_param() const; + ::pg_query::Param* _internal_mutable_param(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.Aggref aggref = 7 [json_name = "Aggref"]; + bool has_aggref() const; + private: + bool _internal_has_aggref() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_aggref() ; + const ::pg_query::Aggref& aggref() const; + PROTOBUF_NODISCARD ::pg_query::Aggref* release_aggref(); + ::pg_query::Aggref* mutable_aggref(); + void set_allocated_aggref(::pg_query::Aggref* value); + void unsafe_arena_set_allocated_aggref(::pg_query::Aggref* value); + ::pg_query::Aggref* unsafe_arena_release_aggref(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CompositeTypeStmt* other); + const ::pg_query::Aggref& _internal_aggref() const; + ::pg_query::Aggref* _internal_mutable_aggref(); + public: + // .pg_query.GroupingFunc grouping_func = 8 [json_name = "GroupingFunc"]; + bool has_grouping_func() const; private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CompositeTypeStmt"; - } - protected: - explicit CompositeTypeStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + bool _internal_has_grouping_func() const; + + public: + void clear_grouping_func() ; + const ::pg_query::GroupingFunc& grouping_func() const; + PROTOBUF_NODISCARD ::pg_query::GroupingFunc* release_grouping_func(); + ::pg_query::GroupingFunc* mutable_grouping_func(); + void set_allocated_grouping_func(::pg_query::GroupingFunc* value); + void unsafe_arena_set_allocated_grouping_func(::pg_query::GroupingFunc* value); + ::pg_query::GroupingFunc* unsafe_arena_release_grouping_func(); + + private: + const ::pg_query::GroupingFunc& _internal_grouping_func() const; + ::pg_query::GroupingFunc* _internal_mutable_grouping_func(); + public: + // .pg_query.WindowFunc window_func = 9 [json_name = "WindowFunc"]; + bool has_window_func() const; + private: + bool _internal_has_window_func() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_window_func() ; + const ::pg_query::WindowFunc& window_func() const; + PROTOBUF_NODISCARD ::pg_query::WindowFunc* release_window_func(); + ::pg_query::WindowFunc* mutable_window_func(); + void set_allocated_window_func(::pg_query::WindowFunc* value); + void unsafe_arena_set_allocated_window_func(::pg_query::WindowFunc* value); + ::pg_query::WindowFunc* unsafe_arena_release_window_func(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::WindowFunc& _internal_window_func() const; + ::pg_query::WindowFunc* _internal_mutable_window_func(); - // nested types ---------------------------------------------------- + public: + // .pg_query.SubscriptingRef subscripting_ref = 10 [json_name = "SubscriptingRef"]; + bool has_subscripting_ref() const; + private: + bool _internal_has_subscripting_ref() const; - // accessors ------------------------------------------------------- + public: + void clear_subscripting_ref() ; + const ::pg_query::SubscriptingRef& subscripting_ref() const; + PROTOBUF_NODISCARD ::pg_query::SubscriptingRef* release_subscripting_ref(); + ::pg_query::SubscriptingRef* mutable_subscripting_ref(); + void set_allocated_subscripting_ref(::pg_query::SubscriptingRef* value); + void unsafe_arena_set_allocated_subscripting_ref(::pg_query::SubscriptingRef* value); + ::pg_query::SubscriptingRef* unsafe_arena_release_subscripting_ref(); - enum : int { - kColdeflistFieldNumber = 2, - kTypevarFieldNumber = 1, - }; - // repeated .pg_query.Node coldeflist = 2 [json_name = "coldeflist"]; - int coldeflist_size() const; private: - int _internal_coldeflist_size() const; + const ::pg_query::SubscriptingRef& _internal_subscripting_ref() const; + ::pg_query::SubscriptingRef* _internal_mutable_subscripting_ref(); + + public: + // .pg_query.FuncExpr func_expr = 11 [json_name = "FuncExpr"]; + bool has_func_expr() const; + private: + bool _internal_has_func_expr() const; + + public: + void clear_func_expr() ; + const ::pg_query::FuncExpr& func_expr() const; + PROTOBUF_NODISCARD ::pg_query::FuncExpr* release_func_expr(); + ::pg_query::FuncExpr* mutable_func_expr(); + void set_allocated_func_expr(::pg_query::FuncExpr* value); + void unsafe_arena_set_allocated_func_expr(::pg_query::FuncExpr* value); + ::pg_query::FuncExpr* unsafe_arena_release_func_expr(); + + private: + const ::pg_query::FuncExpr& _internal_func_expr() const; + ::pg_query::FuncExpr* _internal_mutable_func_expr(); + + public: + // .pg_query.NamedArgExpr named_arg_expr = 12 [json_name = "NamedArgExpr"]; + bool has_named_arg_expr() const; + private: + bool _internal_has_named_arg_expr() const; + + public: + void clear_named_arg_expr() ; + const ::pg_query::NamedArgExpr& named_arg_expr() const; + PROTOBUF_NODISCARD ::pg_query::NamedArgExpr* release_named_arg_expr(); + ::pg_query::NamedArgExpr* mutable_named_arg_expr(); + void set_allocated_named_arg_expr(::pg_query::NamedArgExpr* value); + void unsafe_arena_set_allocated_named_arg_expr(::pg_query::NamedArgExpr* value); + ::pg_query::NamedArgExpr* unsafe_arena_release_named_arg_expr(); + + private: + const ::pg_query::NamedArgExpr& _internal_named_arg_expr() const; + ::pg_query::NamedArgExpr* _internal_mutable_named_arg_expr(); + + public: + // .pg_query.OpExpr op_expr = 13 [json_name = "OpExpr"]; + bool has_op_expr() const; + private: + bool _internal_has_op_expr() const; + + public: + void clear_op_expr() ; + const ::pg_query::OpExpr& op_expr() const; + PROTOBUF_NODISCARD ::pg_query::OpExpr* release_op_expr(); + ::pg_query::OpExpr* mutable_op_expr(); + void set_allocated_op_expr(::pg_query::OpExpr* value); + void unsafe_arena_set_allocated_op_expr(::pg_query::OpExpr* value); + ::pg_query::OpExpr* unsafe_arena_release_op_expr(); + + private: + const ::pg_query::OpExpr& _internal_op_expr() const; + ::pg_query::OpExpr* _internal_mutable_op_expr(); + + public: + // .pg_query.DistinctExpr distinct_expr = 14 [json_name = "DistinctExpr"]; + bool has_distinct_expr() const; + private: + bool _internal_has_distinct_expr() const; + + public: + void clear_distinct_expr() ; + const ::pg_query::DistinctExpr& distinct_expr() const; + PROTOBUF_NODISCARD ::pg_query::DistinctExpr* release_distinct_expr(); + ::pg_query::DistinctExpr* mutable_distinct_expr(); + void set_allocated_distinct_expr(::pg_query::DistinctExpr* value); + void unsafe_arena_set_allocated_distinct_expr(::pg_query::DistinctExpr* value); + ::pg_query::DistinctExpr* unsafe_arena_release_distinct_expr(); + + private: + const ::pg_query::DistinctExpr& _internal_distinct_expr() const; + ::pg_query::DistinctExpr* _internal_mutable_distinct_expr(); + + public: + // .pg_query.NullIfExpr null_if_expr = 15 [json_name = "NullIfExpr"]; + bool has_null_if_expr() const; + private: + bool _internal_has_null_if_expr() const; + + public: + void clear_null_if_expr() ; + const ::pg_query::NullIfExpr& null_if_expr() const; + PROTOBUF_NODISCARD ::pg_query::NullIfExpr* release_null_if_expr(); + ::pg_query::NullIfExpr* mutable_null_if_expr(); + void set_allocated_null_if_expr(::pg_query::NullIfExpr* value); + void unsafe_arena_set_allocated_null_if_expr(::pg_query::NullIfExpr* value); + ::pg_query::NullIfExpr* unsafe_arena_release_null_if_expr(); + + private: + const ::pg_query::NullIfExpr& _internal_null_if_expr() const; + ::pg_query::NullIfExpr* _internal_mutable_null_if_expr(); + + public: + // .pg_query.ScalarArrayOpExpr scalar_array_op_expr = 16 [json_name = "ScalarArrayOpExpr"]; + bool has_scalar_array_op_expr() const; + private: + bool _internal_has_scalar_array_op_expr() const; + + public: + void clear_scalar_array_op_expr() ; + const ::pg_query::ScalarArrayOpExpr& scalar_array_op_expr() const; + PROTOBUF_NODISCARD ::pg_query::ScalarArrayOpExpr* release_scalar_array_op_expr(); + ::pg_query::ScalarArrayOpExpr* mutable_scalar_array_op_expr(); + void set_allocated_scalar_array_op_expr(::pg_query::ScalarArrayOpExpr* value); + void unsafe_arena_set_allocated_scalar_array_op_expr(::pg_query::ScalarArrayOpExpr* value); + ::pg_query::ScalarArrayOpExpr* unsafe_arena_release_scalar_array_op_expr(); + + private: + const ::pg_query::ScalarArrayOpExpr& _internal_scalar_array_op_expr() const; + ::pg_query::ScalarArrayOpExpr* _internal_mutable_scalar_array_op_expr(); + + public: + // .pg_query.BoolExpr bool_expr = 17 [json_name = "BoolExpr"]; + bool has_bool_expr() const; + private: + bool _internal_has_bool_expr() const; + + public: + void clear_bool_expr() ; + const ::pg_query::BoolExpr& bool_expr() const; + PROTOBUF_NODISCARD ::pg_query::BoolExpr* release_bool_expr(); + ::pg_query::BoolExpr* mutable_bool_expr(); + void set_allocated_bool_expr(::pg_query::BoolExpr* value); + void unsafe_arena_set_allocated_bool_expr(::pg_query::BoolExpr* value); + ::pg_query::BoolExpr* unsafe_arena_release_bool_expr(); + + private: + const ::pg_query::BoolExpr& _internal_bool_expr() const; + ::pg_query::BoolExpr* _internal_mutable_bool_expr(); + + public: + // .pg_query.SubLink sub_link = 18 [json_name = "SubLink"]; + bool has_sub_link() const; + private: + bool _internal_has_sub_link() const; + + public: + void clear_sub_link() ; + const ::pg_query::SubLink& sub_link() const; + PROTOBUF_NODISCARD ::pg_query::SubLink* release_sub_link(); + ::pg_query::SubLink* mutable_sub_link(); + void set_allocated_sub_link(::pg_query::SubLink* value); + void unsafe_arena_set_allocated_sub_link(::pg_query::SubLink* value); + ::pg_query::SubLink* unsafe_arena_release_sub_link(); + + private: + const ::pg_query::SubLink& _internal_sub_link() const; + ::pg_query::SubLink* _internal_mutable_sub_link(); + + public: + // .pg_query.SubPlan sub_plan = 19 [json_name = "SubPlan"]; + bool has_sub_plan() const; + private: + bool _internal_has_sub_plan() const; + + public: + void clear_sub_plan() ; + const ::pg_query::SubPlan& sub_plan() const; + PROTOBUF_NODISCARD ::pg_query::SubPlan* release_sub_plan(); + ::pg_query::SubPlan* mutable_sub_plan(); + void set_allocated_sub_plan(::pg_query::SubPlan* value); + void unsafe_arena_set_allocated_sub_plan(::pg_query::SubPlan* value); + ::pg_query::SubPlan* unsafe_arena_release_sub_plan(); + + private: + const ::pg_query::SubPlan& _internal_sub_plan() const; + ::pg_query::SubPlan* _internal_mutable_sub_plan(); + + public: + // .pg_query.AlternativeSubPlan alternative_sub_plan = 20 [json_name = "AlternativeSubPlan"]; + bool has_alternative_sub_plan() const; + private: + bool _internal_has_alternative_sub_plan() const; + + public: + void clear_alternative_sub_plan() ; + const ::pg_query::AlternativeSubPlan& alternative_sub_plan() const; + PROTOBUF_NODISCARD ::pg_query::AlternativeSubPlan* release_alternative_sub_plan(); + ::pg_query::AlternativeSubPlan* mutable_alternative_sub_plan(); + void set_allocated_alternative_sub_plan(::pg_query::AlternativeSubPlan* value); + void unsafe_arena_set_allocated_alternative_sub_plan(::pg_query::AlternativeSubPlan* value); + ::pg_query::AlternativeSubPlan* unsafe_arena_release_alternative_sub_plan(); + + private: + const ::pg_query::AlternativeSubPlan& _internal_alternative_sub_plan() const; + ::pg_query::AlternativeSubPlan* _internal_mutable_alternative_sub_plan(); + public: - void clear_coldeflist(); - ::pg_query::Node* mutable_coldeflist(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_coldeflist(); + // .pg_query.FieldSelect field_select = 21 [json_name = "FieldSelect"]; + bool has_field_select() const; private: - const ::pg_query::Node& _internal_coldeflist(int index) const; - ::pg_query::Node* _internal_add_coldeflist(); + bool _internal_has_field_select() const; + public: - const ::pg_query::Node& coldeflist(int index) const; - ::pg_query::Node* add_coldeflist(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - coldeflist() const; + void clear_field_select() ; + const ::pg_query::FieldSelect& field_select() const; + PROTOBUF_NODISCARD ::pg_query::FieldSelect* release_field_select(); + ::pg_query::FieldSelect* mutable_field_select(); + void set_allocated_field_select(::pg_query::FieldSelect* value); + void unsafe_arena_set_allocated_field_select(::pg_query::FieldSelect* value); + ::pg_query::FieldSelect* unsafe_arena_release_field_select(); - // .pg_query.RangeVar typevar = 1 [json_name = "typevar"]; - bool has_typevar() const; private: - bool _internal_has_typevar() const; + const ::pg_query::FieldSelect& _internal_field_select() const; + ::pg_query::FieldSelect* _internal_mutable_field_select(); + public: - void clear_typevar(); - const ::pg_query::RangeVar& typevar() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_typevar(); - ::pg_query::RangeVar* mutable_typevar(); - void set_allocated_typevar(::pg_query::RangeVar* typevar); + // .pg_query.FieldStore field_store = 22 [json_name = "FieldStore"]; + bool has_field_store() const; private: - const ::pg_query::RangeVar& _internal_typevar() const; - ::pg_query::RangeVar* _internal_mutable_typevar(); - public: - void unsafe_arena_set_allocated_typevar( - ::pg_query::RangeVar* typevar); - ::pg_query::RangeVar* unsafe_arena_release_typevar(); - - // @@protoc_insertion_point(class_scope:pg_query.CompositeTypeStmt) - private: - class _Internal; + bool _internal_has_field_store() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > coldeflist_; - ::pg_query::RangeVar* typevar_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_field_store() ; + const ::pg_query::FieldStore& field_store() const; + PROTOBUF_NODISCARD ::pg_query::FieldStore* release_field_store(); + ::pg_query::FieldStore* mutable_field_store(); + void set_allocated_field_store(::pg_query::FieldStore* value); + void unsafe_arena_set_allocated_field_store(::pg_query::FieldStore* value); + ::pg_query::FieldStore* unsafe_arena_release_field_store(); -class CreateEnumStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateEnumStmt) */ { - public: - inline CreateEnumStmt() : CreateEnumStmt(nullptr) {} - ~CreateEnumStmt() override; - explicit PROTOBUF_CONSTEXPR CreateEnumStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::FieldStore& _internal_field_store() const; + ::pg_query::FieldStore* _internal_mutable_field_store(); - CreateEnumStmt(const CreateEnumStmt& from); - CreateEnumStmt(CreateEnumStmt&& from) noexcept - : CreateEnumStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.RelabelType relabel_type = 23 [json_name = "RelabelType"]; + bool has_relabel_type() const; + private: + bool _internal_has_relabel_type() const; - inline CreateEnumStmt& operator=(const CreateEnumStmt& from) { - CopyFrom(from); - return *this; - } - inline CreateEnumStmt& operator=(CreateEnumStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_relabel_type() ; + const ::pg_query::RelabelType& relabel_type() const; + PROTOBUF_NODISCARD ::pg_query::RelabelType* release_relabel_type(); + ::pg_query::RelabelType* mutable_relabel_type(); + void set_allocated_relabel_type(::pg_query::RelabelType* value); + void unsafe_arena_set_allocated_relabel_type(::pg_query::RelabelType* value); + ::pg_query::RelabelType* unsafe_arena_release_relabel_type(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CreateEnumStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CreateEnumStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateEnumStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 144; + private: + const ::pg_query::RelabelType& _internal_relabel_type() const; + ::pg_query::RelabelType* _internal_mutable_relabel_type(); - friend void swap(CreateEnumStmt& a, CreateEnumStmt& b) { - a.Swap(&b); - } - inline void Swap(CreateEnumStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CreateEnumStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.CoerceViaIO coerce_via_io = 24 [json_name = "CoerceViaIO"]; + bool has_coerce_via_io() const; + private: + bool _internal_has_coerce_via_io() const; - // implements Message ---------------------------------------------- + public: + void clear_coerce_via_io() ; + const ::pg_query::CoerceViaIO& coerce_via_io() const; + PROTOBUF_NODISCARD ::pg_query::CoerceViaIO* release_coerce_via_io(); + ::pg_query::CoerceViaIO* mutable_coerce_via_io(); + void set_allocated_coerce_via_io(::pg_query::CoerceViaIO* value); + void unsafe_arena_set_allocated_coerce_via_io(::pg_query::CoerceViaIO* value); + ::pg_query::CoerceViaIO* unsafe_arena_release_coerce_via_io(); - CreateEnumStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateEnumStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateEnumStmt& from) { - CreateEnumStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::CoerceViaIO& _internal_coerce_via_io() const; + ::pg_query::CoerceViaIO* _internal_mutable_coerce_via_io(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.ArrayCoerceExpr array_coerce_expr = 25 [json_name = "ArrayCoerceExpr"]; + bool has_array_coerce_expr() const; + private: + bool _internal_has_array_coerce_expr() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_array_coerce_expr() ; + const ::pg_query::ArrayCoerceExpr& array_coerce_expr() const; + PROTOBUF_NODISCARD ::pg_query::ArrayCoerceExpr* release_array_coerce_expr(); + ::pg_query::ArrayCoerceExpr* mutable_array_coerce_expr(); + void set_allocated_array_coerce_expr(::pg_query::ArrayCoerceExpr* value); + void unsafe_arena_set_allocated_array_coerce_expr(::pg_query::ArrayCoerceExpr* value); + ::pg_query::ArrayCoerceExpr* unsafe_arena_release_array_coerce_expr(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateEnumStmt* other); + const ::pg_query::ArrayCoerceExpr& _internal_array_coerce_expr() const; + ::pg_query::ArrayCoerceExpr* _internal_mutable_array_coerce_expr(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateEnumStmt"; - } - protected: - explicit CreateEnumStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.ConvertRowtypeExpr convert_rowtype_expr = 26 [json_name = "ConvertRowtypeExpr"]; + bool has_convert_rowtype_expr() const; + private: + bool _internal_has_convert_rowtype_expr() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_convert_rowtype_expr() ; + const ::pg_query::ConvertRowtypeExpr& convert_rowtype_expr() const; + PROTOBUF_NODISCARD ::pg_query::ConvertRowtypeExpr* release_convert_rowtype_expr(); + ::pg_query::ConvertRowtypeExpr* mutable_convert_rowtype_expr(); + void set_allocated_convert_rowtype_expr(::pg_query::ConvertRowtypeExpr* value); + void unsafe_arena_set_allocated_convert_rowtype_expr(::pg_query::ConvertRowtypeExpr* value); + ::pg_query::ConvertRowtypeExpr* unsafe_arena_release_convert_rowtype_expr(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::ConvertRowtypeExpr& _internal_convert_rowtype_expr() const; + ::pg_query::ConvertRowtypeExpr* _internal_mutable_convert_rowtype_expr(); - // nested types ---------------------------------------------------- + public: + // .pg_query.CollateExpr collate_expr = 27 [json_name = "CollateExpr"]; + bool has_collate_expr() const; + private: + bool _internal_has_collate_expr() const; - // accessors ------------------------------------------------------- + public: + void clear_collate_expr() ; + const ::pg_query::CollateExpr& collate_expr() const; + PROTOBUF_NODISCARD ::pg_query::CollateExpr* release_collate_expr(); + ::pg_query::CollateExpr* mutable_collate_expr(); + void set_allocated_collate_expr(::pg_query::CollateExpr* value); + void unsafe_arena_set_allocated_collate_expr(::pg_query::CollateExpr* value); + ::pg_query::CollateExpr* unsafe_arena_release_collate_expr(); - enum : int { - kTypeNameFieldNumber = 1, - kValsFieldNumber = 2, - }; - // repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; - int type_name_size() const; private: - int _internal_type_name_size() const; + const ::pg_query::CollateExpr& _internal_collate_expr() const; + ::pg_query::CollateExpr* _internal_mutable_collate_expr(); + public: - void clear_type_name(); - ::pg_query::Node* mutable_type_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_type_name(); + // .pg_query.CaseExpr case_expr = 28 [json_name = "CaseExpr"]; + bool has_case_expr() const; private: - const ::pg_query::Node& _internal_type_name(int index) const; - ::pg_query::Node* _internal_add_type_name(); + bool _internal_has_case_expr() const; + public: - const ::pg_query::Node& type_name(int index) const; - ::pg_query::Node* add_type_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - type_name() const; + void clear_case_expr() ; + const ::pg_query::CaseExpr& case_expr() const; + PROTOBUF_NODISCARD ::pg_query::CaseExpr* release_case_expr(); + ::pg_query::CaseExpr* mutable_case_expr(); + void set_allocated_case_expr(::pg_query::CaseExpr* value); + void unsafe_arena_set_allocated_case_expr(::pg_query::CaseExpr* value); + ::pg_query::CaseExpr* unsafe_arena_release_case_expr(); - // repeated .pg_query.Node vals = 2 [json_name = "vals"]; - int vals_size() const; private: - int _internal_vals_size() const; + const ::pg_query::CaseExpr& _internal_case_expr() const; + ::pg_query::CaseExpr* _internal_mutable_case_expr(); + public: - void clear_vals(); - ::pg_query::Node* mutable_vals(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_vals(); + // .pg_query.CaseWhen case_when = 29 [json_name = "CaseWhen"]; + bool has_case_when() const; private: - const ::pg_query::Node& _internal_vals(int index) const; - ::pg_query::Node* _internal_add_vals(); - public: - const ::pg_query::Node& vals(int index) const; - ::pg_query::Node* add_vals(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - vals() const; - - // @@protoc_insertion_point(class_scope:pg_query.CreateEnumStmt) - private: - class _Internal; + bool _internal_has_case_when() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > type_name_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > vals_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_case_when() ; + const ::pg_query::CaseWhen& case_when() const; + PROTOBUF_NODISCARD ::pg_query::CaseWhen* release_case_when(); + ::pg_query::CaseWhen* mutable_case_when(); + void set_allocated_case_when(::pg_query::CaseWhen* value); + void unsafe_arena_set_allocated_case_when(::pg_query::CaseWhen* value); + ::pg_query::CaseWhen* unsafe_arena_release_case_when(); -class CreateRangeStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateRangeStmt) */ { - public: - inline CreateRangeStmt() : CreateRangeStmt(nullptr) {} - ~CreateRangeStmt() override; - explicit PROTOBUF_CONSTEXPR CreateRangeStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::CaseWhen& _internal_case_when() const; + ::pg_query::CaseWhen* _internal_mutable_case_when(); - CreateRangeStmt(const CreateRangeStmt& from); - CreateRangeStmt(CreateRangeStmt&& from) noexcept - : CreateRangeStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.CaseTestExpr case_test_expr = 30 [json_name = "CaseTestExpr"]; + bool has_case_test_expr() const; + private: + bool _internal_has_case_test_expr() const; - inline CreateRangeStmt& operator=(const CreateRangeStmt& from) { - CopyFrom(from); - return *this; - } - inline CreateRangeStmt& operator=(CreateRangeStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_case_test_expr() ; + const ::pg_query::CaseTestExpr& case_test_expr() const; + PROTOBUF_NODISCARD ::pg_query::CaseTestExpr* release_case_test_expr(); + ::pg_query::CaseTestExpr* mutable_case_test_expr(); + void set_allocated_case_test_expr(::pg_query::CaseTestExpr* value); + void unsafe_arena_set_allocated_case_test_expr(::pg_query::CaseTestExpr* value); + ::pg_query::CaseTestExpr* unsafe_arena_release_case_test_expr(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CreateRangeStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CreateRangeStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateRangeStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 145; + private: + const ::pg_query::CaseTestExpr& _internal_case_test_expr() const; + ::pg_query::CaseTestExpr* _internal_mutable_case_test_expr(); - friend void swap(CreateRangeStmt& a, CreateRangeStmt& b) { - a.Swap(&b); - } - inline void Swap(CreateRangeStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CreateRangeStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.ArrayExpr array_expr = 31 [json_name = "ArrayExpr"]; + bool has_array_expr() const; + private: + bool _internal_has_array_expr() const; - // implements Message ---------------------------------------------- + public: + void clear_array_expr() ; + const ::pg_query::ArrayExpr& array_expr() const; + PROTOBUF_NODISCARD ::pg_query::ArrayExpr* release_array_expr(); + ::pg_query::ArrayExpr* mutable_array_expr(); + void set_allocated_array_expr(::pg_query::ArrayExpr* value); + void unsafe_arena_set_allocated_array_expr(::pg_query::ArrayExpr* value); + ::pg_query::ArrayExpr* unsafe_arena_release_array_expr(); - CreateRangeStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateRangeStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateRangeStmt& from) { - CreateRangeStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::ArrayExpr& _internal_array_expr() const; + ::pg_query::ArrayExpr* _internal_mutable_array_expr(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.RowExpr row_expr = 32 [json_name = "RowExpr"]; + bool has_row_expr() const; + private: + bool _internal_has_row_expr() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_row_expr() ; + const ::pg_query::RowExpr& row_expr() const; + PROTOBUF_NODISCARD ::pg_query::RowExpr* release_row_expr(); + ::pg_query::RowExpr* mutable_row_expr(); + void set_allocated_row_expr(::pg_query::RowExpr* value); + void unsafe_arena_set_allocated_row_expr(::pg_query::RowExpr* value); + ::pg_query::RowExpr* unsafe_arena_release_row_expr(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateRangeStmt* other); + const ::pg_query::RowExpr& _internal_row_expr() const; + ::pg_query::RowExpr* _internal_mutable_row_expr(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateRangeStmt"; - } - protected: - explicit CreateRangeStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.RowCompareExpr row_compare_expr = 33 [json_name = "RowCompareExpr"]; + bool has_row_compare_expr() const; + private: + bool _internal_has_row_compare_expr() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_row_compare_expr() ; + const ::pg_query::RowCompareExpr& row_compare_expr() const; + PROTOBUF_NODISCARD ::pg_query::RowCompareExpr* release_row_compare_expr(); + ::pg_query::RowCompareExpr* mutable_row_compare_expr(); + void set_allocated_row_compare_expr(::pg_query::RowCompareExpr* value); + void unsafe_arena_set_allocated_row_compare_expr(::pg_query::RowCompareExpr* value); + ::pg_query::RowCompareExpr* unsafe_arena_release_row_compare_expr(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::RowCompareExpr& _internal_row_compare_expr() const; + ::pg_query::RowCompareExpr* _internal_mutable_row_compare_expr(); - // nested types ---------------------------------------------------- + public: + // .pg_query.CoalesceExpr coalesce_expr = 34 [json_name = "CoalesceExpr"]; + bool has_coalesce_expr() const; + private: + bool _internal_has_coalesce_expr() const; - // accessors ------------------------------------------------------- + public: + void clear_coalesce_expr() ; + const ::pg_query::CoalesceExpr& coalesce_expr() const; + PROTOBUF_NODISCARD ::pg_query::CoalesceExpr* release_coalesce_expr(); + ::pg_query::CoalesceExpr* mutable_coalesce_expr(); + void set_allocated_coalesce_expr(::pg_query::CoalesceExpr* value); + void unsafe_arena_set_allocated_coalesce_expr(::pg_query::CoalesceExpr* value); + ::pg_query::CoalesceExpr* unsafe_arena_release_coalesce_expr(); - enum : int { - kTypeNameFieldNumber = 1, - kParamsFieldNumber = 2, - }; - // repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; - int type_name_size() const; private: - int _internal_type_name_size() const; + const ::pg_query::CoalesceExpr& _internal_coalesce_expr() const; + ::pg_query::CoalesceExpr* _internal_mutable_coalesce_expr(); + public: - void clear_type_name(); - ::pg_query::Node* mutable_type_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_type_name(); + // .pg_query.MinMaxExpr min_max_expr = 35 [json_name = "MinMaxExpr"]; + bool has_min_max_expr() const; private: - const ::pg_query::Node& _internal_type_name(int index) const; - ::pg_query::Node* _internal_add_type_name(); + bool _internal_has_min_max_expr() const; + public: - const ::pg_query::Node& type_name(int index) const; - ::pg_query::Node* add_type_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - type_name() const; + void clear_min_max_expr() ; + const ::pg_query::MinMaxExpr& min_max_expr() const; + PROTOBUF_NODISCARD ::pg_query::MinMaxExpr* release_min_max_expr(); + ::pg_query::MinMaxExpr* mutable_min_max_expr(); + void set_allocated_min_max_expr(::pg_query::MinMaxExpr* value); + void unsafe_arena_set_allocated_min_max_expr(::pg_query::MinMaxExpr* value); + ::pg_query::MinMaxExpr* unsafe_arena_release_min_max_expr(); - // repeated .pg_query.Node params = 2 [json_name = "params"]; - int params_size() const; private: - int _internal_params_size() const; + const ::pg_query::MinMaxExpr& _internal_min_max_expr() const; + ::pg_query::MinMaxExpr* _internal_mutable_min_max_expr(); + public: - void clear_params(); - ::pg_query::Node* mutable_params(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_params(); + // .pg_query.SQLValueFunction sqlvalue_function = 36 [json_name = "SQLValueFunction"]; + bool has_sqlvalue_function() const; private: - const ::pg_query::Node& _internal_params(int index) const; - ::pg_query::Node* _internal_add_params(); - public: - const ::pg_query::Node& params(int index) const; - ::pg_query::Node* add_params(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - params() const; - - // @@protoc_insertion_point(class_scope:pg_query.CreateRangeStmt) - private: - class _Internal; + bool _internal_has_sqlvalue_function() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > type_name_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > params_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_sqlvalue_function() ; + const ::pg_query::SQLValueFunction& sqlvalue_function() const; + PROTOBUF_NODISCARD ::pg_query::SQLValueFunction* release_sqlvalue_function(); + ::pg_query::SQLValueFunction* mutable_sqlvalue_function(); + void set_allocated_sqlvalue_function(::pg_query::SQLValueFunction* value); + void unsafe_arena_set_allocated_sqlvalue_function(::pg_query::SQLValueFunction* value); + ::pg_query::SQLValueFunction* unsafe_arena_release_sqlvalue_function(); -class AlterEnumStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterEnumStmt) */ { - public: - inline AlterEnumStmt() : AlterEnumStmt(nullptr) {} - ~AlterEnumStmt() override; - explicit PROTOBUF_CONSTEXPR AlterEnumStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::SQLValueFunction& _internal_sqlvalue_function() const; + ::pg_query::SQLValueFunction* _internal_mutable_sqlvalue_function(); - AlterEnumStmt(const AlterEnumStmt& from); - AlterEnumStmt(AlterEnumStmt&& from) noexcept - : AlterEnumStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.XmlExpr xml_expr = 37 [json_name = "XmlExpr"]; + bool has_xml_expr() const; + private: + bool _internal_has_xml_expr() const; - inline AlterEnumStmt& operator=(const AlterEnumStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterEnumStmt& operator=(AlterEnumStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_xml_expr() ; + const ::pg_query::XmlExpr& xml_expr() const; + PROTOBUF_NODISCARD ::pg_query::XmlExpr* release_xml_expr(); + ::pg_query::XmlExpr* mutable_xml_expr(); + void set_allocated_xml_expr(::pg_query::XmlExpr* value); + void unsafe_arena_set_allocated_xml_expr(::pg_query::XmlExpr* value); + ::pg_query::XmlExpr* unsafe_arena_release_xml_expr(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterEnumStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterEnumStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterEnumStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 146; + private: + const ::pg_query::XmlExpr& _internal_xml_expr() const; + ::pg_query::XmlExpr* _internal_mutable_xml_expr(); - friend void swap(AlterEnumStmt& a, AlterEnumStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterEnumStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterEnumStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.JsonFormat json_format = 38 [json_name = "JsonFormat"]; + bool has_json_format() const; + private: + bool _internal_has_json_format() const; - // implements Message ---------------------------------------------- + public: + void clear_json_format() ; + const ::pg_query::JsonFormat& json_format() const; + PROTOBUF_NODISCARD ::pg_query::JsonFormat* release_json_format(); + ::pg_query::JsonFormat* mutable_json_format(); + void set_allocated_json_format(::pg_query::JsonFormat* value); + void unsafe_arena_set_allocated_json_format(::pg_query::JsonFormat* value); + ::pg_query::JsonFormat* unsafe_arena_release_json_format(); - AlterEnumStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterEnumStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterEnumStmt& from) { - AlterEnumStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::JsonFormat& _internal_json_format() const; + ::pg_query::JsonFormat* _internal_mutable_json_format(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.JsonReturning json_returning = 39 [json_name = "JsonReturning"]; + bool has_json_returning() const; + private: + bool _internal_has_json_returning() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_json_returning() ; + const ::pg_query::JsonReturning& json_returning() const; + PROTOBUF_NODISCARD ::pg_query::JsonReturning* release_json_returning(); + ::pg_query::JsonReturning* mutable_json_returning(); + void set_allocated_json_returning(::pg_query::JsonReturning* value); + void unsafe_arena_set_allocated_json_returning(::pg_query::JsonReturning* value); + ::pg_query::JsonReturning* unsafe_arena_release_json_returning(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterEnumStmt* other); + const ::pg_query::JsonReturning& _internal_json_returning() const; + ::pg_query::JsonReturning* _internal_mutable_json_returning(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterEnumStmt"; - } - protected: - explicit AlterEnumStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.JsonValueExpr json_value_expr = 40 [json_name = "JsonValueExpr"]; + bool has_json_value_expr() const; + private: + bool _internal_has_json_value_expr() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + void clear_json_value_expr() ; + const ::pg_query::JsonValueExpr& json_value_expr() const; + PROTOBUF_NODISCARD ::pg_query::JsonValueExpr* release_json_value_expr(); + ::pg_query::JsonValueExpr* mutable_json_value_expr(); + void set_allocated_json_value_expr(::pg_query::JsonValueExpr* value); + void unsafe_arena_set_allocated_json_value_expr(::pg_query::JsonValueExpr* value); + ::pg_query::JsonValueExpr* unsafe_arena_release_json_value_expr(); - // nested types ---------------------------------------------------- + private: + const ::pg_query::JsonValueExpr& _internal_json_value_expr() const; + ::pg_query::JsonValueExpr* _internal_mutable_json_value_expr(); - // accessors ------------------------------------------------------- + public: + // .pg_query.JsonConstructorExpr json_constructor_expr = 41 [json_name = "JsonConstructorExpr"]; + bool has_json_constructor_expr() const; + private: + bool _internal_has_json_constructor_expr() const; + + public: + void clear_json_constructor_expr() ; + const ::pg_query::JsonConstructorExpr& json_constructor_expr() const; + PROTOBUF_NODISCARD ::pg_query::JsonConstructorExpr* release_json_constructor_expr(); + ::pg_query::JsonConstructorExpr* mutable_json_constructor_expr(); + void set_allocated_json_constructor_expr(::pg_query::JsonConstructorExpr* value); + void unsafe_arena_set_allocated_json_constructor_expr(::pg_query::JsonConstructorExpr* value); + ::pg_query::JsonConstructorExpr* unsafe_arena_release_json_constructor_expr(); - enum : int { - kTypeNameFieldNumber = 1, - kOldValFieldNumber = 2, - kNewValFieldNumber = 3, - kNewValNeighborFieldNumber = 4, - kNewValIsAfterFieldNumber = 5, - kSkipIfNewValExistsFieldNumber = 6, - }; - // repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; - int type_name_size() const; private: - int _internal_type_name_size() const; + const ::pg_query::JsonConstructorExpr& _internal_json_constructor_expr() const; + ::pg_query::JsonConstructorExpr* _internal_mutable_json_constructor_expr(); + public: - void clear_type_name(); - ::pg_query::Node* mutable_type_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_type_name(); + // .pg_query.JsonIsPredicate json_is_predicate = 42 [json_name = "JsonIsPredicate"]; + bool has_json_is_predicate() const; private: - const ::pg_query::Node& _internal_type_name(int index) const; - ::pg_query::Node* _internal_add_type_name(); + bool _internal_has_json_is_predicate() const; + public: - const ::pg_query::Node& type_name(int index) const; - ::pg_query::Node* add_type_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - type_name() const; + void clear_json_is_predicate() ; + const ::pg_query::JsonIsPredicate& json_is_predicate() const; + PROTOBUF_NODISCARD ::pg_query::JsonIsPredicate* release_json_is_predicate(); + ::pg_query::JsonIsPredicate* mutable_json_is_predicate(); + void set_allocated_json_is_predicate(::pg_query::JsonIsPredicate* value); + void unsafe_arena_set_allocated_json_is_predicate(::pg_query::JsonIsPredicate* value); + ::pg_query::JsonIsPredicate* unsafe_arena_release_json_is_predicate(); - // string old_val = 2 [json_name = "oldVal"]; - void clear_old_val(); - const std::string& old_val() const; - template - void set_old_val(ArgT0&& arg0, ArgT... args); - std::string* mutable_old_val(); - PROTOBUF_NODISCARD std::string* release_old_val(); - void set_allocated_old_val(std::string* old_val); private: - const std::string& _internal_old_val() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_old_val(const std::string& value); - std::string* _internal_mutable_old_val(); - public: + const ::pg_query::JsonIsPredicate& _internal_json_is_predicate() const; + ::pg_query::JsonIsPredicate* _internal_mutable_json_is_predicate(); - // string new_val = 3 [json_name = "newVal"]; - void clear_new_val(); - const std::string& new_val() const; - template - void set_new_val(ArgT0&& arg0, ArgT... args); - std::string* mutable_new_val(); - PROTOBUF_NODISCARD std::string* release_new_val(); - void set_allocated_new_val(std::string* new_val); + public: + // .pg_query.NullTest null_test = 43 [json_name = "NullTest"]; + bool has_null_test() const; private: - const std::string& _internal_new_val() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_new_val(const std::string& value); - std::string* _internal_mutable_new_val(); + bool _internal_has_null_test() const; + public: + void clear_null_test() ; + const ::pg_query::NullTest& null_test() const; + PROTOBUF_NODISCARD ::pg_query::NullTest* release_null_test(); + ::pg_query::NullTest* mutable_null_test(); + void set_allocated_null_test(::pg_query::NullTest* value); + void unsafe_arena_set_allocated_null_test(::pg_query::NullTest* value); + ::pg_query::NullTest* unsafe_arena_release_null_test(); - // string new_val_neighbor = 4 [json_name = "newValNeighbor"]; - void clear_new_val_neighbor(); - const std::string& new_val_neighbor() const; - template - void set_new_val_neighbor(ArgT0&& arg0, ArgT... args); - std::string* mutable_new_val_neighbor(); - PROTOBUF_NODISCARD std::string* release_new_val_neighbor(); - void set_allocated_new_val_neighbor(std::string* new_val_neighbor); private: - const std::string& _internal_new_val_neighbor() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_new_val_neighbor(const std::string& value); - std::string* _internal_mutable_new_val_neighbor(); - public: + const ::pg_query::NullTest& _internal_null_test() const; + ::pg_query::NullTest* _internal_mutable_null_test(); - // bool new_val_is_after = 5 [json_name = "newValIsAfter"]; - void clear_new_val_is_after(); - bool new_val_is_after() const; - void set_new_val_is_after(bool value); + public: + // .pg_query.BooleanTest boolean_test = 44 [json_name = "BooleanTest"]; + bool has_boolean_test() const; private: - bool _internal_new_val_is_after() const; - void _internal_set_new_val_is_after(bool value); + bool _internal_has_boolean_test() const; + public: + void clear_boolean_test() ; + const ::pg_query::BooleanTest& boolean_test() const; + PROTOBUF_NODISCARD ::pg_query::BooleanTest* release_boolean_test(); + ::pg_query::BooleanTest* mutable_boolean_test(); + void set_allocated_boolean_test(::pg_query::BooleanTest* value); + void unsafe_arena_set_allocated_boolean_test(::pg_query::BooleanTest* value); + ::pg_query::BooleanTest* unsafe_arena_release_boolean_test(); - // bool skip_if_new_val_exists = 6 [json_name = "skipIfNewValExists"]; - void clear_skip_if_new_val_exists(); - bool skip_if_new_val_exists() const; - void set_skip_if_new_val_exists(bool value); private: - bool _internal_skip_if_new_val_exists() const; - void _internal_set_skip_if_new_val_exists(bool value); + const ::pg_query::BooleanTest& _internal_boolean_test() const; + ::pg_query::BooleanTest* _internal_mutable_boolean_test(); + public: + // .pg_query.CoerceToDomain coerce_to_domain = 45 [json_name = "CoerceToDomain"]; + bool has_coerce_to_domain() const; + private: + bool _internal_has_coerce_to_domain() const; - // @@protoc_insertion_point(class_scope:pg_query.AlterEnumStmt) - private: - class _Internal; + public: + void clear_coerce_to_domain() ; + const ::pg_query::CoerceToDomain& coerce_to_domain() const; + PROTOBUF_NODISCARD ::pg_query::CoerceToDomain* release_coerce_to_domain(); + ::pg_query::CoerceToDomain* mutable_coerce_to_domain(); + void set_allocated_coerce_to_domain(::pg_query::CoerceToDomain* value); + void unsafe_arena_set_allocated_coerce_to_domain(::pg_query::CoerceToDomain* value); + ::pg_query::CoerceToDomain* unsafe_arena_release_coerce_to_domain(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > type_name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr old_val_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_val_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_val_neighbor_; - bool new_val_is_after_; - bool skip_if_new_val_exists_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::CoerceToDomain& _internal_coerce_to_domain() const; + ::pg_query::CoerceToDomain* _internal_mutable_coerce_to_domain(); -class AlterTSDictionaryStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTSDictionaryStmt) */ { - public: - inline AlterTSDictionaryStmt() : AlterTSDictionaryStmt(nullptr) {} - ~AlterTSDictionaryStmt() override; - explicit PROTOBUF_CONSTEXPR AlterTSDictionaryStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.CoerceToDomainValue coerce_to_domain_value = 46 [json_name = "CoerceToDomainValue"]; + bool has_coerce_to_domain_value() const; + private: + bool _internal_has_coerce_to_domain_value() const; - AlterTSDictionaryStmt(const AlterTSDictionaryStmt& from); - AlterTSDictionaryStmt(AlterTSDictionaryStmt&& from) noexcept - : AlterTSDictionaryStmt() { - *this = ::std::move(from); - } + public: + void clear_coerce_to_domain_value() ; + const ::pg_query::CoerceToDomainValue& coerce_to_domain_value() const; + PROTOBUF_NODISCARD ::pg_query::CoerceToDomainValue* release_coerce_to_domain_value(); + ::pg_query::CoerceToDomainValue* mutable_coerce_to_domain_value(); + void set_allocated_coerce_to_domain_value(::pg_query::CoerceToDomainValue* value); + void unsafe_arena_set_allocated_coerce_to_domain_value(::pg_query::CoerceToDomainValue* value); + ::pg_query::CoerceToDomainValue* unsafe_arena_release_coerce_to_domain_value(); - inline AlterTSDictionaryStmt& operator=(const AlterTSDictionaryStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterTSDictionaryStmt& operator=(AlterTSDictionaryStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::CoerceToDomainValue& _internal_coerce_to_domain_value() const; + ::pg_query::CoerceToDomainValue* _internal_mutable_coerce_to_domain_value(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterTSDictionaryStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterTSDictionaryStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterTSDictionaryStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 147; + public: + // .pg_query.SetToDefault set_to_default = 47 [json_name = "SetToDefault"]; + bool has_set_to_default() const; + private: + bool _internal_has_set_to_default() const; - friend void swap(AlterTSDictionaryStmt& a, AlterTSDictionaryStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterTSDictionaryStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterTSDictionaryStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_set_to_default() ; + const ::pg_query::SetToDefault& set_to_default() const; + PROTOBUF_NODISCARD ::pg_query::SetToDefault* release_set_to_default(); + ::pg_query::SetToDefault* mutable_set_to_default(); + void set_allocated_set_to_default(::pg_query::SetToDefault* value); + void unsafe_arena_set_allocated_set_to_default(::pg_query::SetToDefault* value); + ::pg_query::SetToDefault* unsafe_arena_release_set_to_default(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::SetToDefault& _internal_set_to_default() const; + ::pg_query::SetToDefault* _internal_mutable_set_to_default(); - AlterTSDictionaryStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterTSDictionaryStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterTSDictionaryStmt& from) { - AlterTSDictionaryStmt::MergeImpl(*this, from); - } + public: + // .pg_query.CurrentOfExpr current_of_expr = 48 [json_name = "CurrentOfExpr"]; + bool has_current_of_expr() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_current_of_expr() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_current_of_expr() ; + const ::pg_query::CurrentOfExpr& current_of_expr() const; + PROTOBUF_NODISCARD ::pg_query::CurrentOfExpr* release_current_of_expr(); + ::pg_query::CurrentOfExpr* mutable_current_of_expr(); + void set_allocated_current_of_expr(::pg_query::CurrentOfExpr* value); + void unsafe_arena_set_allocated_current_of_expr(::pg_query::CurrentOfExpr* value); + ::pg_query::CurrentOfExpr* unsafe_arena_release_current_of_expr(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::CurrentOfExpr& _internal_current_of_expr() const; + ::pg_query::CurrentOfExpr* _internal_mutable_current_of_expr(); + public: + // .pg_query.NextValueExpr next_value_expr = 49 [json_name = "NextValueExpr"]; + bool has_next_value_expr() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterTSDictionaryStmt* other); + bool _internal_has_next_value_expr() const; + + public: + void clear_next_value_expr() ; + const ::pg_query::NextValueExpr& next_value_expr() const; + PROTOBUF_NODISCARD ::pg_query::NextValueExpr* release_next_value_expr(); + ::pg_query::NextValueExpr* mutable_next_value_expr(); + void set_allocated_next_value_expr(::pg_query::NextValueExpr* value); + void unsafe_arena_set_allocated_next_value_expr(::pg_query::NextValueExpr* value); + ::pg_query::NextValueExpr* unsafe_arena_release_next_value_expr(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterTSDictionaryStmt"; - } - protected: - explicit AlterTSDictionaryStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::NextValueExpr& _internal_next_value_expr() const; + ::pg_query::NextValueExpr* _internal_mutable_next_value_expr(); + public: + // .pg_query.InferenceElem inference_elem = 50 [json_name = "InferenceElem"]; + bool has_inference_elem() const; + private: + bool _internal_has_inference_elem() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_inference_elem() ; + const ::pg_query::InferenceElem& inference_elem() const; + PROTOBUF_NODISCARD ::pg_query::InferenceElem* release_inference_elem(); + ::pg_query::InferenceElem* mutable_inference_elem(); + void set_allocated_inference_elem(::pg_query::InferenceElem* value); + void unsafe_arena_set_allocated_inference_elem(::pg_query::InferenceElem* value); + ::pg_query::InferenceElem* unsafe_arena_release_inference_elem(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::InferenceElem& _internal_inference_elem() const; + ::pg_query::InferenceElem* _internal_mutable_inference_elem(); - // nested types ---------------------------------------------------- + public: + // .pg_query.TargetEntry target_entry = 51 [json_name = "TargetEntry"]; + bool has_target_entry() const; + private: + bool _internal_has_target_entry() const; - // accessors ------------------------------------------------------- + public: + void clear_target_entry() ; + const ::pg_query::TargetEntry& target_entry() const; + PROTOBUF_NODISCARD ::pg_query::TargetEntry* release_target_entry(); + ::pg_query::TargetEntry* mutable_target_entry(); + void set_allocated_target_entry(::pg_query::TargetEntry* value); + void unsafe_arena_set_allocated_target_entry(::pg_query::TargetEntry* value); + ::pg_query::TargetEntry* unsafe_arena_release_target_entry(); - enum : int { - kDictnameFieldNumber = 1, - kOptionsFieldNumber = 2, - }; - // repeated .pg_query.Node dictname = 1 [json_name = "dictname"]; - int dictname_size() const; private: - int _internal_dictname_size() const; + const ::pg_query::TargetEntry& _internal_target_entry() const; + ::pg_query::TargetEntry* _internal_mutable_target_entry(); + public: - void clear_dictname(); - ::pg_query::Node* mutable_dictname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_dictname(); + // .pg_query.RangeTblRef range_tbl_ref = 52 [json_name = "RangeTblRef"]; + bool has_range_tbl_ref() const; private: - const ::pg_query::Node& _internal_dictname(int index) const; - ::pg_query::Node* _internal_add_dictname(); + bool _internal_has_range_tbl_ref() const; + public: - const ::pg_query::Node& dictname(int index) const; - ::pg_query::Node* add_dictname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - dictname() const; + void clear_range_tbl_ref() ; + const ::pg_query::RangeTblRef& range_tbl_ref() const; + PROTOBUF_NODISCARD ::pg_query::RangeTblRef* release_range_tbl_ref(); + ::pg_query::RangeTblRef* mutable_range_tbl_ref(); + void set_allocated_range_tbl_ref(::pg_query::RangeTblRef* value); + void unsafe_arena_set_allocated_range_tbl_ref(::pg_query::RangeTblRef* value); + ::pg_query::RangeTblRef* unsafe_arena_release_range_tbl_ref(); - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::RangeTblRef& _internal_range_tbl_ref() const; + ::pg_query::RangeTblRef* _internal_mutable_range_tbl_ref(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.JoinExpr join_expr = 53 [json_name = "JoinExpr"]; + bool has_join_expr() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); - public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + bool _internal_has_join_expr() const; - // @@protoc_insertion_point(class_scope:pg_query.AlterTSDictionaryStmt) - private: - class _Internal; + public: + void clear_join_expr() ; + const ::pg_query::JoinExpr& join_expr() const; + PROTOBUF_NODISCARD ::pg_query::JoinExpr* release_join_expr(); + ::pg_query::JoinExpr* mutable_join_expr(); + void set_allocated_join_expr(::pg_query::JoinExpr* value); + void unsafe_arena_set_allocated_join_expr(::pg_query::JoinExpr* value); + ::pg_query::JoinExpr* unsafe_arena_release_join_expr(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > dictname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::JoinExpr& _internal_join_expr() const; + ::pg_query::JoinExpr* _internal_mutable_join_expr(); -class AlterTSConfigurationStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTSConfigurationStmt) */ { - public: - inline AlterTSConfigurationStmt() : AlterTSConfigurationStmt(nullptr) {} - ~AlterTSConfigurationStmt() override; - explicit PROTOBUF_CONSTEXPR AlterTSConfigurationStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.FromExpr from_expr = 54 [json_name = "FromExpr"]; + bool has_from_expr() const; + private: + bool _internal_has_from_expr() const; - AlterTSConfigurationStmt(const AlterTSConfigurationStmt& from); - AlterTSConfigurationStmt(AlterTSConfigurationStmt&& from) noexcept - : AlterTSConfigurationStmt() { - *this = ::std::move(from); - } + public: + void clear_from_expr() ; + const ::pg_query::FromExpr& from_expr() const; + PROTOBUF_NODISCARD ::pg_query::FromExpr* release_from_expr(); + ::pg_query::FromExpr* mutable_from_expr(); + void set_allocated_from_expr(::pg_query::FromExpr* value); + void unsafe_arena_set_allocated_from_expr(::pg_query::FromExpr* value); + ::pg_query::FromExpr* unsafe_arena_release_from_expr(); - inline AlterTSConfigurationStmt& operator=(const AlterTSConfigurationStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterTSConfigurationStmt& operator=(AlterTSConfigurationStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::FromExpr& _internal_from_expr() const; + ::pg_query::FromExpr* _internal_mutable_from_expr(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterTSConfigurationStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterTSConfigurationStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterTSConfigurationStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 148; + public: + // .pg_query.OnConflictExpr on_conflict_expr = 55 [json_name = "OnConflictExpr"]; + bool has_on_conflict_expr() const; + private: + bool _internal_has_on_conflict_expr() const; - friend void swap(AlterTSConfigurationStmt& a, AlterTSConfigurationStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterTSConfigurationStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterTSConfigurationStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_on_conflict_expr() ; + const ::pg_query::OnConflictExpr& on_conflict_expr() const; + PROTOBUF_NODISCARD ::pg_query::OnConflictExpr* release_on_conflict_expr(); + ::pg_query::OnConflictExpr* mutable_on_conflict_expr(); + void set_allocated_on_conflict_expr(::pg_query::OnConflictExpr* value); + void unsafe_arena_set_allocated_on_conflict_expr(::pg_query::OnConflictExpr* value); + ::pg_query::OnConflictExpr* unsafe_arena_release_on_conflict_expr(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::OnConflictExpr& _internal_on_conflict_expr() const; + ::pg_query::OnConflictExpr* _internal_mutable_on_conflict_expr(); - AlterTSConfigurationStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterTSConfigurationStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterTSConfigurationStmt& from) { - AlterTSConfigurationStmt::MergeImpl(*this, from); - } + public: + // .pg_query.Query query = 56 [json_name = "Query"]; + bool has_query() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_query() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_query() ; + const ::pg_query::Query& query() const; + PROTOBUF_NODISCARD ::pg_query::Query* release_query(); + ::pg_query::Query* mutable_query(); + void set_allocated_query(::pg_query::Query* value); + void unsafe_arena_set_allocated_query(::pg_query::Query* value); + ::pg_query::Query* unsafe_arena_release_query(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::Query& _internal_query() const; + ::pg_query::Query* _internal_mutable_query(); + public: + // .pg_query.TypeName type_name = 57 [json_name = "TypeName"]; + bool has_type_name() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterTSConfigurationStmt* other); + bool _internal_has_type_name() const; + + public: + void clear_type_name() ; + const ::pg_query::TypeName& type_name() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); + ::pg_query::TypeName* mutable_type_name(); + void set_allocated_type_name(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_type_name(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterTSConfigurationStmt"; - } - protected: - explicit AlterTSConfigurationStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::TypeName& _internal_type_name() const; + ::pg_query::TypeName* _internal_mutable_type_name(); + public: + // .pg_query.ColumnRef column_ref = 58 [json_name = "ColumnRef"]; + bool has_column_ref() const; + private: + bool _internal_has_column_ref() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_column_ref() ; + const ::pg_query::ColumnRef& column_ref() const; + PROTOBUF_NODISCARD ::pg_query::ColumnRef* release_column_ref(); + ::pg_query::ColumnRef* mutable_column_ref(); + void set_allocated_column_ref(::pg_query::ColumnRef* value); + void unsafe_arena_set_allocated_column_ref(::pg_query::ColumnRef* value); + ::pg_query::ColumnRef* unsafe_arena_release_column_ref(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::ColumnRef& _internal_column_ref() const; + ::pg_query::ColumnRef* _internal_mutable_column_ref(); - // nested types ---------------------------------------------------- + public: + // .pg_query.ParamRef param_ref = 59 [json_name = "ParamRef"]; + bool has_param_ref() const; + private: + bool _internal_has_param_ref() const; - // accessors ------------------------------------------------------- + public: + void clear_param_ref() ; + const ::pg_query::ParamRef& param_ref() const; + PROTOBUF_NODISCARD ::pg_query::ParamRef* release_param_ref(); + ::pg_query::ParamRef* mutable_param_ref(); + void set_allocated_param_ref(::pg_query::ParamRef* value); + void unsafe_arena_set_allocated_param_ref(::pg_query::ParamRef* value); + ::pg_query::ParamRef* unsafe_arena_release_param_ref(); - enum : int { - kCfgnameFieldNumber = 2, - kTokentypeFieldNumber = 3, - kDictsFieldNumber = 4, - kKindFieldNumber = 1, - kOverrideFieldNumber = 5, - kReplaceFieldNumber = 6, - kMissingOkFieldNumber = 7, - }; - // repeated .pg_query.Node cfgname = 2 [json_name = "cfgname"]; - int cfgname_size() const; private: - int _internal_cfgname_size() const; + const ::pg_query::ParamRef& _internal_param_ref() const; + ::pg_query::ParamRef* _internal_mutable_param_ref(); + public: - void clear_cfgname(); - ::pg_query::Node* mutable_cfgname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_cfgname(); + // .pg_query.A_Expr a_expr = 60 [json_name = "A_Expr"]; + bool has_a_expr() const; private: - const ::pg_query::Node& _internal_cfgname(int index) const; - ::pg_query::Node* _internal_add_cfgname(); + bool _internal_has_a_expr() const; + public: - const ::pg_query::Node& cfgname(int index) const; - ::pg_query::Node* add_cfgname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - cfgname() const; + void clear_a_expr() ; + const ::pg_query::A_Expr& a_expr() const; + PROTOBUF_NODISCARD ::pg_query::A_Expr* release_a_expr(); + ::pg_query::A_Expr* mutable_a_expr(); + void set_allocated_a_expr(::pg_query::A_Expr* value); + void unsafe_arena_set_allocated_a_expr(::pg_query::A_Expr* value); + ::pg_query::A_Expr* unsafe_arena_release_a_expr(); - // repeated .pg_query.Node tokentype = 3 [json_name = "tokentype"]; - int tokentype_size() const; private: - int _internal_tokentype_size() const; + const ::pg_query::A_Expr& _internal_a_expr() const; + ::pg_query::A_Expr* _internal_mutable_a_expr(); + public: - void clear_tokentype(); - ::pg_query::Node* mutable_tokentype(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_tokentype(); + // .pg_query.TypeCast type_cast = 61 [json_name = "TypeCast"]; + bool has_type_cast() const; private: - const ::pg_query::Node& _internal_tokentype(int index) const; - ::pg_query::Node* _internal_add_tokentype(); + bool _internal_has_type_cast() const; + public: - const ::pg_query::Node& tokentype(int index) const; - ::pg_query::Node* add_tokentype(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - tokentype() const; + void clear_type_cast() ; + const ::pg_query::TypeCast& type_cast() const; + PROTOBUF_NODISCARD ::pg_query::TypeCast* release_type_cast(); + ::pg_query::TypeCast* mutable_type_cast(); + void set_allocated_type_cast(::pg_query::TypeCast* value); + void unsafe_arena_set_allocated_type_cast(::pg_query::TypeCast* value); + ::pg_query::TypeCast* unsafe_arena_release_type_cast(); - // repeated .pg_query.Node dicts = 4 [json_name = "dicts"]; - int dicts_size() const; private: - int _internal_dicts_size() const; + const ::pg_query::TypeCast& _internal_type_cast() const; + ::pg_query::TypeCast* _internal_mutable_type_cast(); + public: - void clear_dicts(); - ::pg_query::Node* mutable_dicts(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_dicts(); + // .pg_query.CollateClause collate_clause = 62 [json_name = "CollateClause"]; + bool has_collate_clause() const; private: - const ::pg_query::Node& _internal_dicts(int index) const; - ::pg_query::Node* _internal_add_dicts(); + bool _internal_has_collate_clause() const; + public: - const ::pg_query::Node& dicts(int index) const; - ::pg_query::Node* add_dicts(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - dicts() const; + void clear_collate_clause() ; + const ::pg_query::CollateClause& collate_clause() const; + PROTOBUF_NODISCARD ::pg_query::CollateClause* release_collate_clause(); + ::pg_query::CollateClause* mutable_collate_clause(); + void set_allocated_collate_clause(::pg_query::CollateClause* value); + void unsafe_arena_set_allocated_collate_clause(::pg_query::CollateClause* value); + ::pg_query::CollateClause* unsafe_arena_release_collate_clause(); - // .pg_query.AlterTSConfigType kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::AlterTSConfigType kind() const; - void set_kind(::pg_query::AlterTSConfigType value); private: - ::pg_query::AlterTSConfigType _internal_kind() const; - void _internal_set_kind(::pg_query::AlterTSConfigType value); + const ::pg_query::CollateClause& _internal_collate_clause() const; + ::pg_query::CollateClause* _internal_mutable_collate_clause(); + public: + // .pg_query.RoleSpec role_spec = 63 [json_name = "RoleSpec"]; + bool has_role_spec() const; + private: + bool _internal_has_role_spec() const; + + public: + void clear_role_spec() ; + const ::pg_query::RoleSpec& role_spec() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_role_spec(); + ::pg_query::RoleSpec* mutable_role_spec(); + void set_allocated_role_spec(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_role_spec(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_role_spec(); - // bool override = 5 [json_name = "override"]; - void clear_override(); - bool override() const; - void set_override(bool value); private: - bool _internal_override() const; - void _internal_set_override(bool value); + const ::pg_query::RoleSpec& _internal_role_spec() const; + ::pg_query::RoleSpec* _internal_mutable_role_spec(); + + public: + // .pg_query.FuncCall func_call = 64 [json_name = "FuncCall"]; + bool has_func_call() const; + private: + bool _internal_has_func_call() const; + public: + void clear_func_call() ; + const ::pg_query::FuncCall& func_call() const; + PROTOBUF_NODISCARD ::pg_query::FuncCall* release_func_call(); + ::pg_query::FuncCall* mutable_func_call(); + void set_allocated_func_call(::pg_query::FuncCall* value); + void unsafe_arena_set_allocated_func_call(::pg_query::FuncCall* value); + ::pg_query::FuncCall* unsafe_arena_release_func_call(); + + private: + const ::pg_query::FuncCall& _internal_func_call() const; + ::pg_query::FuncCall* _internal_mutable_func_call(); - // bool replace = 6 [json_name = "replace"]; - void clear_replace(); - bool replace() const; - void set_replace(bool value); + public: + // .pg_query.A_Star a_star = 65 [json_name = "A_Star"]; + bool has_a_star() const; private: - bool _internal_replace() const; - void _internal_set_replace(bool value); + bool _internal_has_a_star() const; + public: + void clear_a_star() ; + const ::pg_query::A_Star& a_star() const; + PROTOBUF_NODISCARD ::pg_query::A_Star* release_a_star(); + ::pg_query::A_Star* mutable_a_star(); + void set_allocated_a_star(::pg_query::A_Star* value); + void unsafe_arena_set_allocated_a_star(::pg_query::A_Star* value); + ::pg_query::A_Star* unsafe_arena_release_a_star(); - // bool missing_ok = 7 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); - public: + const ::pg_query::A_Star& _internal_a_star() const; + ::pg_query::A_Star* _internal_mutable_a_star(); - // @@protoc_insertion_point(class_scope:pg_query.AlterTSConfigurationStmt) - private: - class _Internal; + public: + // .pg_query.A_Indices a_indices = 66 [json_name = "A_Indices"]; + bool has_a_indices() const; + private: + bool _internal_has_a_indices() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > cfgname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > tokentype_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > dicts_; - int kind_; - bool override_; - bool replace_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_a_indices() ; + const ::pg_query::A_Indices& a_indices() const; + PROTOBUF_NODISCARD ::pg_query::A_Indices* release_a_indices(); + ::pg_query::A_Indices* mutable_a_indices(); + void set_allocated_a_indices(::pg_query::A_Indices* value); + void unsafe_arena_set_allocated_a_indices(::pg_query::A_Indices* value); + ::pg_query::A_Indices* unsafe_arena_release_a_indices(); -class CreateFdwStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateFdwStmt) */ { - public: - inline CreateFdwStmt() : CreateFdwStmt(nullptr) {} - ~CreateFdwStmt() override; - explicit PROTOBUF_CONSTEXPR CreateFdwStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::A_Indices& _internal_a_indices() const; + ::pg_query::A_Indices* _internal_mutable_a_indices(); - CreateFdwStmt(const CreateFdwStmt& from); - CreateFdwStmt(CreateFdwStmt&& from) noexcept - : CreateFdwStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.A_Indirection a_indirection = 67 [json_name = "A_Indirection"]; + bool has_a_indirection() const; + private: + bool _internal_has_a_indirection() const; - inline CreateFdwStmt& operator=(const CreateFdwStmt& from) { - CopyFrom(from); - return *this; - } - inline CreateFdwStmt& operator=(CreateFdwStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_a_indirection() ; + const ::pg_query::A_Indirection& a_indirection() const; + PROTOBUF_NODISCARD ::pg_query::A_Indirection* release_a_indirection(); + ::pg_query::A_Indirection* mutable_a_indirection(); + void set_allocated_a_indirection(::pg_query::A_Indirection* value); + void unsafe_arena_set_allocated_a_indirection(::pg_query::A_Indirection* value); + ::pg_query::A_Indirection* unsafe_arena_release_a_indirection(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CreateFdwStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CreateFdwStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateFdwStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 149; + private: + const ::pg_query::A_Indirection& _internal_a_indirection() const; + ::pg_query::A_Indirection* _internal_mutable_a_indirection(); - friend void swap(CreateFdwStmt& a, CreateFdwStmt& b) { - a.Swap(&b); - } - inline void Swap(CreateFdwStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CreateFdwStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.A_ArrayExpr a_array_expr = 68 [json_name = "A_ArrayExpr"]; + bool has_a_array_expr() const; + private: + bool _internal_has_a_array_expr() const; - // implements Message ---------------------------------------------- + public: + void clear_a_array_expr() ; + const ::pg_query::A_ArrayExpr& a_array_expr() const; + PROTOBUF_NODISCARD ::pg_query::A_ArrayExpr* release_a_array_expr(); + ::pg_query::A_ArrayExpr* mutable_a_array_expr(); + void set_allocated_a_array_expr(::pg_query::A_ArrayExpr* value); + void unsafe_arena_set_allocated_a_array_expr(::pg_query::A_ArrayExpr* value); + ::pg_query::A_ArrayExpr* unsafe_arena_release_a_array_expr(); - CreateFdwStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateFdwStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateFdwStmt& from) { - CreateFdwStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::A_ArrayExpr& _internal_a_array_expr() const; + ::pg_query::A_ArrayExpr* _internal_mutable_a_array_expr(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.ResTarget res_target = 69 [json_name = "ResTarget"]; + bool has_res_target() const; + private: + bool _internal_has_res_target() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_res_target() ; + const ::pg_query::ResTarget& res_target() const; + PROTOBUF_NODISCARD ::pg_query::ResTarget* release_res_target(); + ::pg_query::ResTarget* mutable_res_target(); + void set_allocated_res_target(::pg_query::ResTarget* value); + void unsafe_arena_set_allocated_res_target(::pg_query::ResTarget* value); + ::pg_query::ResTarget* unsafe_arena_release_res_target(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateFdwStmt* other); + const ::pg_query::ResTarget& _internal_res_target() const; + ::pg_query::ResTarget* _internal_mutable_res_target(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateFdwStmt"; - } - protected: - explicit CreateFdwStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.MultiAssignRef multi_assign_ref = 70 [json_name = "MultiAssignRef"]; + bool has_multi_assign_ref() const; + private: + bool _internal_has_multi_assign_ref() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_multi_assign_ref() ; + const ::pg_query::MultiAssignRef& multi_assign_ref() const; + PROTOBUF_NODISCARD ::pg_query::MultiAssignRef* release_multi_assign_ref(); + ::pg_query::MultiAssignRef* mutable_multi_assign_ref(); + void set_allocated_multi_assign_ref(::pg_query::MultiAssignRef* value); + void unsafe_arena_set_allocated_multi_assign_ref(::pg_query::MultiAssignRef* value); + ::pg_query::MultiAssignRef* unsafe_arena_release_multi_assign_ref(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::MultiAssignRef& _internal_multi_assign_ref() const; + ::pg_query::MultiAssignRef* _internal_mutable_multi_assign_ref(); - // nested types ---------------------------------------------------- + public: + // .pg_query.SortBy sort_by = 71 [json_name = "SortBy"]; + bool has_sort_by() const; + private: + bool _internal_has_sort_by() const; - // accessors ------------------------------------------------------- + public: + void clear_sort_by() ; + const ::pg_query::SortBy& sort_by() const; + PROTOBUF_NODISCARD ::pg_query::SortBy* release_sort_by(); + ::pg_query::SortBy* mutable_sort_by(); + void set_allocated_sort_by(::pg_query::SortBy* value); + void unsafe_arena_set_allocated_sort_by(::pg_query::SortBy* value); + ::pg_query::SortBy* unsafe_arena_release_sort_by(); - enum : int { - kFuncOptionsFieldNumber = 2, - kOptionsFieldNumber = 3, - kFdwnameFieldNumber = 1, - }; - // repeated .pg_query.Node func_options = 2 [json_name = "func_options"]; - int func_options_size() const; private: - int _internal_func_options_size() const; + const ::pg_query::SortBy& _internal_sort_by() const; + ::pg_query::SortBy* _internal_mutable_sort_by(); + public: - void clear_func_options(); - ::pg_query::Node* mutable_func_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_func_options(); + // .pg_query.WindowDef window_def = 72 [json_name = "WindowDef"]; + bool has_window_def() const; private: - const ::pg_query::Node& _internal_func_options(int index) const; - ::pg_query::Node* _internal_add_func_options(); + bool _internal_has_window_def() const; + public: - const ::pg_query::Node& func_options(int index) const; - ::pg_query::Node* add_func_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - func_options() const; + void clear_window_def() ; + const ::pg_query::WindowDef& window_def() const; + PROTOBUF_NODISCARD ::pg_query::WindowDef* release_window_def(); + ::pg_query::WindowDef* mutable_window_def(); + void set_allocated_window_def(::pg_query::WindowDef* value); + void unsafe_arena_set_allocated_window_def(::pg_query::WindowDef* value); + ::pg_query::WindowDef* unsafe_arena_release_window_def(); - // repeated .pg_query.Node options = 3 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::WindowDef& _internal_window_def() const; + ::pg_query::WindowDef* _internal_mutable_window_def(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.RangeSubselect range_subselect = 73 [json_name = "RangeSubselect"]; + bool has_range_subselect() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + bool _internal_has_range_subselect() const; + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + void clear_range_subselect() ; + const ::pg_query::RangeSubselect& range_subselect() const; + PROTOBUF_NODISCARD ::pg_query::RangeSubselect* release_range_subselect(); + ::pg_query::RangeSubselect* mutable_range_subselect(); + void set_allocated_range_subselect(::pg_query::RangeSubselect* value); + void unsafe_arena_set_allocated_range_subselect(::pg_query::RangeSubselect* value); + ::pg_query::RangeSubselect* unsafe_arena_release_range_subselect(); - // string fdwname = 1 [json_name = "fdwname"]; - void clear_fdwname(); - const std::string& fdwname() const; - template - void set_fdwname(ArgT0&& arg0, ArgT... args); - std::string* mutable_fdwname(); - PROTOBUF_NODISCARD std::string* release_fdwname(); - void set_allocated_fdwname(std::string* fdwname); private: - const std::string& _internal_fdwname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_fdwname(const std::string& value); - std::string* _internal_mutable_fdwname(); - public: + const ::pg_query::RangeSubselect& _internal_range_subselect() const; + ::pg_query::RangeSubselect* _internal_mutable_range_subselect(); - // @@protoc_insertion_point(class_scope:pg_query.CreateFdwStmt) - private: - class _Internal; + public: + // .pg_query.RangeFunction range_function = 74 [json_name = "RangeFunction"]; + bool has_range_function() const; + private: + bool _internal_has_range_function() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > func_options_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr fdwname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_range_function() ; + const ::pg_query::RangeFunction& range_function() const; + PROTOBUF_NODISCARD ::pg_query::RangeFunction* release_range_function(); + ::pg_query::RangeFunction* mutable_range_function(); + void set_allocated_range_function(::pg_query::RangeFunction* value); + void unsafe_arena_set_allocated_range_function(::pg_query::RangeFunction* value); + ::pg_query::RangeFunction* unsafe_arena_release_range_function(); -class AlterFdwStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterFdwStmt) */ { - public: - inline AlterFdwStmt() : AlterFdwStmt(nullptr) {} - ~AlterFdwStmt() override; - explicit PROTOBUF_CONSTEXPR AlterFdwStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::RangeFunction& _internal_range_function() const; + ::pg_query::RangeFunction* _internal_mutable_range_function(); - AlterFdwStmt(const AlterFdwStmt& from); - AlterFdwStmt(AlterFdwStmt&& from) noexcept - : AlterFdwStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.RangeTableFunc range_table_func = 75 [json_name = "RangeTableFunc"]; + bool has_range_table_func() const; + private: + bool _internal_has_range_table_func() const; - inline AlterFdwStmt& operator=(const AlterFdwStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterFdwStmt& operator=(AlterFdwStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_range_table_func() ; + const ::pg_query::RangeTableFunc& range_table_func() const; + PROTOBUF_NODISCARD ::pg_query::RangeTableFunc* release_range_table_func(); + ::pg_query::RangeTableFunc* mutable_range_table_func(); + void set_allocated_range_table_func(::pg_query::RangeTableFunc* value); + void unsafe_arena_set_allocated_range_table_func(::pg_query::RangeTableFunc* value); + ::pg_query::RangeTableFunc* unsafe_arena_release_range_table_func(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterFdwStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterFdwStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterFdwStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 150; + private: + const ::pg_query::RangeTableFunc& _internal_range_table_func() const; + ::pg_query::RangeTableFunc* _internal_mutable_range_table_func(); - friend void swap(AlterFdwStmt& a, AlterFdwStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterFdwStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterFdwStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.RangeTableFuncCol range_table_func_col = 76 [json_name = "RangeTableFuncCol"]; + bool has_range_table_func_col() const; + private: + bool _internal_has_range_table_func_col() const; - // implements Message ---------------------------------------------- + public: + void clear_range_table_func_col() ; + const ::pg_query::RangeTableFuncCol& range_table_func_col() const; + PROTOBUF_NODISCARD ::pg_query::RangeTableFuncCol* release_range_table_func_col(); + ::pg_query::RangeTableFuncCol* mutable_range_table_func_col(); + void set_allocated_range_table_func_col(::pg_query::RangeTableFuncCol* value); + void unsafe_arena_set_allocated_range_table_func_col(::pg_query::RangeTableFuncCol* value); + ::pg_query::RangeTableFuncCol* unsafe_arena_release_range_table_func_col(); - AlterFdwStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterFdwStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterFdwStmt& from) { - AlterFdwStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::RangeTableFuncCol& _internal_range_table_func_col() const; + ::pg_query::RangeTableFuncCol* _internal_mutable_range_table_func_col(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.RangeTableSample range_table_sample = 77 [json_name = "RangeTableSample"]; + bool has_range_table_sample() const; + private: + bool _internal_has_range_table_sample() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_range_table_sample() ; + const ::pg_query::RangeTableSample& range_table_sample() const; + PROTOBUF_NODISCARD ::pg_query::RangeTableSample* release_range_table_sample(); + ::pg_query::RangeTableSample* mutable_range_table_sample(); + void set_allocated_range_table_sample(::pg_query::RangeTableSample* value); + void unsafe_arena_set_allocated_range_table_sample(::pg_query::RangeTableSample* value); + ::pg_query::RangeTableSample* unsafe_arena_release_range_table_sample(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterFdwStmt* other); + const ::pg_query::RangeTableSample& _internal_range_table_sample() const; + ::pg_query::RangeTableSample* _internal_mutable_range_table_sample(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterFdwStmt"; - } - protected: - explicit AlterFdwStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.ColumnDef column_def = 78 [json_name = "ColumnDef"]; + bool has_column_def() const; + private: + bool _internal_has_column_def() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_column_def() ; + const ::pg_query::ColumnDef& column_def() const; + PROTOBUF_NODISCARD ::pg_query::ColumnDef* release_column_def(); + ::pg_query::ColumnDef* mutable_column_def(); + void set_allocated_column_def(::pg_query::ColumnDef* value); + void unsafe_arena_set_allocated_column_def(::pg_query::ColumnDef* value); + ::pg_query::ColumnDef* unsafe_arena_release_column_def(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::ColumnDef& _internal_column_def() const; + ::pg_query::ColumnDef* _internal_mutable_column_def(); - // nested types ---------------------------------------------------- + public: + // .pg_query.TableLikeClause table_like_clause = 79 [json_name = "TableLikeClause"]; + bool has_table_like_clause() const; + private: + bool _internal_has_table_like_clause() const; - // accessors ------------------------------------------------------- + public: + void clear_table_like_clause() ; + const ::pg_query::TableLikeClause& table_like_clause() const; + PROTOBUF_NODISCARD ::pg_query::TableLikeClause* release_table_like_clause(); + ::pg_query::TableLikeClause* mutable_table_like_clause(); + void set_allocated_table_like_clause(::pg_query::TableLikeClause* value); + void unsafe_arena_set_allocated_table_like_clause(::pg_query::TableLikeClause* value); + ::pg_query::TableLikeClause* unsafe_arena_release_table_like_clause(); - enum : int { - kFuncOptionsFieldNumber = 2, - kOptionsFieldNumber = 3, - kFdwnameFieldNumber = 1, - }; - // repeated .pg_query.Node func_options = 2 [json_name = "func_options"]; - int func_options_size() const; private: - int _internal_func_options_size() const; + const ::pg_query::TableLikeClause& _internal_table_like_clause() const; + ::pg_query::TableLikeClause* _internal_mutable_table_like_clause(); + public: - void clear_func_options(); - ::pg_query::Node* mutable_func_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_func_options(); + // .pg_query.IndexElem index_elem = 80 [json_name = "IndexElem"]; + bool has_index_elem() const; private: - const ::pg_query::Node& _internal_func_options(int index) const; - ::pg_query::Node* _internal_add_func_options(); + bool _internal_has_index_elem() const; + public: - const ::pg_query::Node& func_options(int index) const; - ::pg_query::Node* add_func_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - func_options() const; + void clear_index_elem() ; + const ::pg_query::IndexElem& index_elem() const; + PROTOBUF_NODISCARD ::pg_query::IndexElem* release_index_elem(); + ::pg_query::IndexElem* mutable_index_elem(); + void set_allocated_index_elem(::pg_query::IndexElem* value); + void unsafe_arena_set_allocated_index_elem(::pg_query::IndexElem* value); + ::pg_query::IndexElem* unsafe_arena_release_index_elem(); - // repeated .pg_query.Node options = 3 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::IndexElem& _internal_index_elem() const; + ::pg_query::IndexElem* _internal_mutable_index_elem(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.DefElem def_elem = 81 [json_name = "DefElem"]; + bool has_def_elem() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + bool _internal_has_def_elem() const; + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + void clear_def_elem() ; + const ::pg_query::DefElem& def_elem() const; + PROTOBUF_NODISCARD ::pg_query::DefElem* release_def_elem(); + ::pg_query::DefElem* mutable_def_elem(); + void set_allocated_def_elem(::pg_query::DefElem* value); + void unsafe_arena_set_allocated_def_elem(::pg_query::DefElem* value); + ::pg_query::DefElem* unsafe_arena_release_def_elem(); - // string fdwname = 1 [json_name = "fdwname"]; - void clear_fdwname(); - const std::string& fdwname() const; - template - void set_fdwname(ArgT0&& arg0, ArgT... args); - std::string* mutable_fdwname(); - PROTOBUF_NODISCARD std::string* release_fdwname(); - void set_allocated_fdwname(std::string* fdwname); private: - const std::string& _internal_fdwname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_fdwname(const std::string& value); - std::string* _internal_mutable_fdwname(); + const ::pg_query::DefElem& _internal_def_elem() const; + ::pg_query::DefElem* _internal_mutable_def_elem(); + public: + // .pg_query.LockingClause locking_clause = 82 [json_name = "LockingClause"]; + bool has_locking_clause() const; + private: + bool _internal_has_locking_clause() const; - // @@protoc_insertion_point(class_scope:pg_query.AlterFdwStmt) - private: - class _Internal; + public: + void clear_locking_clause() ; + const ::pg_query::LockingClause& locking_clause() const; + PROTOBUF_NODISCARD ::pg_query::LockingClause* release_locking_clause(); + ::pg_query::LockingClause* mutable_locking_clause(); + void set_allocated_locking_clause(::pg_query::LockingClause* value); + void unsafe_arena_set_allocated_locking_clause(::pg_query::LockingClause* value); + ::pg_query::LockingClause* unsafe_arena_release_locking_clause(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > func_options_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr fdwname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::LockingClause& _internal_locking_clause() const; + ::pg_query::LockingClause* _internal_mutable_locking_clause(); -class CreateForeignServerStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateForeignServerStmt) */ { - public: - inline CreateForeignServerStmt() : CreateForeignServerStmt(nullptr) {} - ~CreateForeignServerStmt() override; - explicit PROTOBUF_CONSTEXPR CreateForeignServerStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.XmlSerialize xml_serialize = 83 [json_name = "XmlSerialize"]; + bool has_xml_serialize() const; + private: + bool _internal_has_xml_serialize() const; - CreateForeignServerStmt(const CreateForeignServerStmt& from); - CreateForeignServerStmt(CreateForeignServerStmt&& from) noexcept - : CreateForeignServerStmt() { - *this = ::std::move(from); - } + public: + void clear_xml_serialize() ; + const ::pg_query::XmlSerialize& xml_serialize() const; + PROTOBUF_NODISCARD ::pg_query::XmlSerialize* release_xml_serialize(); + ::pg_query::XmlSerialize* mutable_xml_serialize(); + void set_allocated_xml_serialize(::pg_query::XmlSerialize* value); + void unsafe_arena_set_allocated_xml_serialize(::pg_query::XmlSerialize* value); + ::pg_query::XmlSerialize* unsafe_arena_release_xml_serialize(); - inline CreateForeignServerStmt& operator=(const CreateForeignServerStmt& from) { - CopyFrom(from); - return *this; - } - inline CreateForeignServerStmt& operator=(CreateForeignServerStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::XmlSerialize& _internal_xml_serialize() const; + ::pg_query::XmlSerialize* _internal_mutable_xml_serialize(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CreateForeignServerStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CreateForeignServerStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateForeignServerStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 151; + public: + // .pg_query.PartitionElem partition_elem = 84 [json_name = "PartitionElem"]; + bool has_partition_elem() const; + private: + bool _internal_has_partition_elem() const; - friend void swap(CreateForeignServerStmt& a, CreateForeignServerStmt& b) { - a.Swap(&b); - } - inline void Swap(CreateForeignServerStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CreateForeignServerStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_partition_elem() ; + const ::pg_query::PartitionElem& partition_elem() const; + PROTOBUF_NODISCARD ::pg_query::PartitionElem* release_partition_elem(); + ::pg_query::PartitionElem* mutable_partition_elem(); + void set_allocated_partition_elem(::pg_query::PartitionElem* value); + void unsafe_arena_set_allocated_partition_elem(::pg_query::PartitionElem* value); + ::pg_query::PartitionElem* unsafe_arena_release_partition_elem(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::PartitionElem& _internal_partition_elem() const; + ::pg_query::PartitionElem* _internal_mutable_partition_elem(); - CreateForeignServerStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateForeignServerStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateForeignServerStmt& from) { - CreateForeignServerStmt::MergeImpl(*this, from); - } + public: + // .pg_query.PartitionSpec partition_spec = 85 [json_name = "PartitionSpec"]; + bool has_partition_spec() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_partition_spec() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_partition_spec() ; + const ::pg_query::PartitionSpec& partition_spec() const; + PROTOBUF_NODISCARD ::pg_query::PartitionSpec* release_partition_spec(); + ::pg_query::PartitionSpec* mutable_partition_spec(); + void set_allocated_partition_spec(::pg_query::PartitionSpec* value); + void unsafe_arena_set_allocated_partition_spec(::pg_query::PartitionSpec* value); + ::pg_query::PartitionSpec* unsafe_arena_release_partition_spec(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::PartitionSpec& _internal_partition_spec() const; + ::pg_query::PartitionSpec* _internal_mutable_partition_spec(); + public: + // .pg_query.PartitionBoundSpec partition_bound_spec = 86 [json_name = "PartitionBoundSpec"]; + bool has_partition_bound_spec() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateForeignServerStmt* other); + bool _internal_has_partition_bound_spec() const; + + public: + void clear_partition_bound_spec() ; + const ::pg_query::PartitionBoundSpec& partition_bound_spec() const; + PROTOBUF_NODISCARD ::pg_query::PartitionBoundSpec* release_partition_bound_spec(); + ::pg_query::PartitionBoundSpec* mutable_partition_bound_spec(); + void set_allocated_partition_bound_spec(::pg_query::PartitionBoundSpec* value); + void unsafe_arena_set_allocated_partition_bound_spec(::pg_query::PartitionBoundSpec* value); + ::pg_query::PartitionBoundSpec* unsafe_arena_release_partition_bound_spec(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateForeignServerStmt"; - } - protected: - explicit CreateForeignServerStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::PartitionBoundSpec& _internal_partition_bound_spec() const; + ::pg_query::PartitionBoundSpec* _internal_mutable_partition_bound_spec(); + public: + // .pg_query.PartitionRangeDatum partition_range_datum = 87 [json_name = "PartitionRangeDatum"]; + bool has_partition_range_datum() const; + private: + bool _internal_has_partition_range_datum() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_partition_range_datum() ; + const ::pg_query::PartitionRangeDatum& partition_range_datum() const; + PROTOBUF_NODISCARD ::pg_query::PartitionRangeDatum* release_partition_range_datum(); + ::pg_query::PartitionRangeDatum* mutable_partition_range_datum(); + void set_allocated_partition_range_datum(::pg_query::PartitionRangeDatum* value); + void unsafe_arena_set_allocated_partition_range_datum(::pg_query::PartitionRangeDatum* value); + ::pg_query::PartitionRangeDatum* unsafe_arena_release_partition_range_datum(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::PartitionRangeDatum& _internal_partition_range_datum() const; + ::pg_query::PartitionRangeDatum* _internal_mutable_partition_range_datum(); - // nested types ---------------------------------------------------- + public: + // .pg_query.PartitionCmd partition_cmd = 88 [json_name = "PartitionCmd"]; + bool has_partition_cmd() const; + private: + bool _internal_has_partition_cmd() const; - // accessors ------------------------------------------------------- + public: + void clear_partition_cmd() ; + const ::pg_query::PartitionCmd& partition_cmd() const; + PROTOBUF_NODISCARD ::pg_query::PartitionCmd* release_partition_cmd(); + ::pg_query::PartitionCmd* mutable_partition_cmd(); + void set_allocated_partition_cmd(::pg_query::PartitionCmd* value); + void unsafe_arena_set_allocated_partition_cmd(::pg_query::PartitionCmd* value); + ::pg_query::PartitionCmd* unsafe_arena_release_partition_cmd(); - enum : int { - kOptionsFieldNumber = 6, - kServernameFieldNumber = 1, - kServertypeFieldNumber = 2, - kVersionFieldNumber = 3, - kFdwnameFieldNumber = 4, - kIfNotExistsFieldNumber = 5, - }; - // repeated .pg_query.Node options = 6 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::PartitionCmd& _internal_partition_cmd() const; + ::pg_query::PartitionCmd* _internal_mutable_partition_cmd(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.RangeTblEntry range_tbl_entry = 89 [json_name = "RangeTblEntry"]; + bool has_range_tbl_entry() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + bool _internal_has_range_tbl_entry() const; + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + void clear_range_tbl_entry() ; + const ::pg_query::RangeTblEntry& range_tbl_entry() const; + PROTOBUF_NODISCARD ::pg_query::RangeTblEntry* release_range_tbl_entry(); + ::pg_query::RangeTblEntry* mutable_range_tbl_entry(); + void set_allocated_range_tbl_entry(::pg_query::RangeTblEntry* value); + void unsafe_arena_set_allocated_range_tbl_entry(::pg_query::RangeTblEntry* value); + ::pg_query::RangeTblEntry* unsafe_arena_release_range_tbl_entry(); - // string servername = 1 [json_name = "servername"]; - void clear_servername(); - const std::string& servername() const; - template - void set_servername(ArgT0&& arg0, ArgT... args); - std::string* mutable_servername(); - PROTOBUF_NODISCARD std::string* release_servername(); - void set_allocated_servername(std::string* servername); private: - const std::string& _internal_servername() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername(const std::string& value); - std::string* _internal_mutable_servername(); + const ::pg_query::RangeTblEntry& _internal_range_tbl_entry() const; + ::pg_query::RangeTblEntry* _internal_mutable_range_tbl_entry(); + public: + // .pg_query.RTEPermissionInfo rtepermission_info = 90 [json_name = "RTEPermissionInfo"]; + bool has_rtepermission_info() const; + private: + bool _internal_has_rtepermission_info() const; + + public: + void clear_rtepermission_info() ; + const ::pg_query::RTEPermissionInfo& rtepermission_info() const; + PROTOBUF_NODISCARD ::pg_query::RTEPermissionInfo* release_rtepermission_info(); + ::pg_query::RTEPermissionInfo* mutable_rtepermission_info(); + void set_allocated_rtepermission_info(::pg_query::RTEPermissionInfo* value); + void unsafe_arena_set_allocated_rtepermission_info(::pg_query::RTEPermissionInfo* value); + ::pg_query::RTEPermissionInfo* unsafe_arena_release_rtepermission_info(); - // string servertype = 2 [json_name = "servertype"]; - void clear_servertype(); - const std::string& servertype() const; - template - void set_servertype(ArgT0&& arg0, ArgT... args); - std::string* mutable_servertype(); - PROTOBUF_NODISCARD std::string* release_servertype(); - void set_allocated_servertype(std::string* servertype); private: - const std::string& _internal_servertype() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_servertype(const std::string& value); - std::string* _internal_mutable_servertype(); + const ::pg_query::RTEPermissionInfo& _internal_rtepermission_info() const; + ::pg_query::RTEPermissionInfo* _internal_mutable_rtepermission_info(); + + public: + // .pg_query.RangeTblFunction range_tbl_function = 91 [json_name = "RangeTblFunction"]; + bool has_range_tbl_function() const; + private: + bool _internal_has_range_tbl_function() const; + public: + void clear_range_tbl_function() ; + const ::pg_query::RangeTblFunction& range_tbl_function() const; + PROTOBUF_NODISCARD ::pg_query::RangeTblFunction* release_range_tbl_function(); + ::pg_query::RangeTblFunction* mutable_range_tbl_function(); + void set_allocated_range_tbl_function(::pg_query::RangeTblFunction* value); + void unsafe_arena_set_allocated_range_tbl_function(::pg_query::RangeTblFunction* value); + ::pg_query::RangeTblFunction* unsafe_arena_release_range_tbl_function(); - // string version = 3 [json_name = "version"]; - void clear_version(); - const std::string& version() const; - template - void set_version(ArgT0&& arg0, ArgT... args); - std::string* mutable_version(); - PROTOBUF_NODISCARD std::string* release_version(); - void set_allocated_version(std::string* version); private: - const std::string& _internal_version() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_version(const std::string& value); - std::string* _internal_mutable_version(); + const ::pg_query::RangeTblFunction& _internal_range_tbl_function() const; + ::pg_query::RangeTblFunction* _internal_mutable_range_tbl_function(); + public: + // .pg_query.TableSampleClause table_sample_clause = 92 [json_name = "TableSampleClause"]; + bool has_table_sample_clause() const; + private: + bool _internal_has_table_sample_clause() const; + + public: + void clear_table_sample_clause() ; + const ::pg_query::TableSampleClause& table_sample_clause() const; + PROTOBUF_NODISCARD ::pg_query::TableSampleClause* release_table_sample_clause(); + ::pg_query::TableSampleClause* mutable_table_sample_clause(); + void set_allocated_table_sample_clause(::pg_query::TableSampleClause* value); + void unsafe_arena_set_allocated_table_sample_clause(::pg_query::TableSampleClause* value); + ::pg_query::TableSampleClause* unsafe_arena_release_table_sample_clause(); - // string fdwname = 4 [json_name = "fdwname"]; - void clear_fdwname(); - const std::string& fdwname() const; - template - void set_fdwname(ArgT0&& arg0, ArgT... args); - std::string* mutable_fdwname(); - PROTOBUF_NODISCARD std::string* release_fdwname(); - void set_allocated_fdwname(std::string* fdwname); private: - const std::string& _internal_fdwname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_fdwname(const std::string& value); - std::string* _internal_mutable_fdwname(); + const ::pg_query::TableSampleClause& _internal_table_sample_clause() const; + ::pg_query::TableSampleClause* _internal_mutable_table_sample_clause(); + public: + // .pg_query.WithCheckOption with_check_option = 93 [json_name = "WithCheckOption"]; + bool has_with_check_option() const; + private: + bool _internal_has_with_check_option() const; + + public: + void clear_with_check_option() ; + const ::pg_query::WithCheckOption& with_check_option() const; + PROTOBUF_NODISCARD ::pg_query::WithCheckOption* release_with_check_option(); + ::pg_query::WithCheckOption* mutable_with_check_option(); + void set_allocated_with_check_option(::pg_query::WithCheckOption* value); + void unsafe_arena_set_allocated_with_check_option(::pg_query::WithCheckOption* value); + ::pg_query::WithCheckOption* unsafe_arena_release_with_check_option(); - // bool if_not_exists = 5 [json_name = "if_not_exists"]; - void clear_if_not_exists(); - bool if_not_exists() const; - void set_if_not_exists(bool value); private: - bool _internal_if_not_exists() const; - void _internal_set_if_not_exists(bool value); + const ::pg_query::WithCheckOption& _internal_with_check_option() const; + ::pg_query::WithCheckOption* _internal_mutable_with_check_option(); + public: + // .pg_query.SortGroupClause sort_group_clause = 94 [json_name = "SortGroupClause"]; + bool has_sort_group_clause() const; + private: + bool _internal_has_sort_group_clause() const; - // @@protoc_insertion_point(class_scope:pg_query.CreateForeignServerStmt) - private: - class _Internal; + public: + void clear_sort_group_clause() ; + const ::pg_query::SortGroupClause& sort_group_clause() const; + PROTOBUF_NODISCARD ::pg_query::SortGroupClause* release_sort_group_clause(); + ::pg_query::SortGroupClause* mutable_sort_group_clause(); + void set_allocated_sort_group_clause(::pg_query::SortGroupClause* value); + void unsafe_arena_set_allocated_sort_group_clause(::pg_query::SortGroupClause* value); + ::pg_query::SortGroupClause* unsafe_arena_release_sort_group_clause(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr servername_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr servertype_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr fdwname_; - bool if_not_exists_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::SortGroupClause& _internal_sort_group_clause() const; + ::pg_query::SortGroupClause* _internal_mutable_sort_group_clause(); -class AlterForeignServerStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterForeignServerStmt) */ { - public: - inline AlterForeignServerStmt() : AlterForeignServerStmt(nullptr) {} - ~AlterForeignServerStmt() override; - explicit PROTOBUF_CONSTEXPR AlterForeignServerStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.GroupingSet grouping_set = 95 [json_name = "GroupingSet"]; + bool has_grouping_set() const; + private: + bool _internal_has_grouping_set() const; - AlterForeignServerStmt(const AlterForeignServerStmt& from); - AlterForeignServerStmt(AlterForeignServerStmt&& from) noexcept - : AlterForeignServerStmt() { - *this = ::std::move(from); - } + public: + void clear_grouping_set() ; + const ::pg_query::GroupingSet& grouping_set() const; + PROTOBUF_NODISCARD ::pg_query::GroupingSet* release_grouping_set(); + ::pg_query::GroupingSet* mutable_grouping_set(); + void set_allocated_grouping_set(::pg_query::GroupingSet* value); + void unsafe_arena_set_allocated_grouping_set(::pg_query::GroupingSet* value); + ::pg_query::GroupingSet* unsafe_arena_release_grouping_set(); - inline AlterForeignServerStmt& operator=(const AlterForeignServerStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterForeignServerStmt& operator=(AlterForeignServerStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::GroupingSet& _internal_grouping_set() const; + ::pg_query::GroupingSet* _internal_mutable_grouping_set(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterForeignServerStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterForeignServerStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterForeignServerStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 152; + public: + // .pg_query.WindowClause window_clause = 96 [json_name = "WindowClause"]; + bool has_window_clause() const; + private: + bool _internal_has_window_clause() const; - friend void swap(AlterForeignServerStmt& a, AlterForeignServerStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterForeignServerStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterForeignServerStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_window_clause() ; + const ::pg_query::WindowClause& window_clause() const; + PROTOBUF_NODISCARD ::pg_query::WindowClause* release_window_clause(); + ::pg_query::WindowClause* mutable_window_clause(); + void set_allocated_window_clause(::pg_query::WindowClause* value); + void unsafe_arena_set_allocated_window_clause(::pg_query::WindowClause* value); + ::pg_query::WindowClause* unsafe_arena_release_window_clause(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::WindowClause& _internal_window_clause() const; + ::pg_query::WindowClause* _internal_mutable_window_clause(); - AlterForeignServerStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterForeignServerStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterForeignServerStmt& from) { - AlterForeignServerStmt::MergeImpl(*this, from); - } + public: + // .pg_query.RowMarkClause row_mark_clause = 97 [json_name = "RowMarkClause"]; + bool has_row_mark_clause() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_row_mark_clause() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_row_mark_clause() ; + const ::pg_query::RowMarkClause& row_mark_clause() const; + PROTOBUF_NODISCARD ::pg_query::RowMarkClause* release_row_mark_clause(); + ::pg_query::RowMarkClause* mutable_row_mark_clause(); + void set_allocated_row_mark_clause(::pg_query::RowMarkClause* value); + void unsafe_arena_set_allocated_row_mark_clause(::pg_query::RowMarkClause* value); + ::pg_query::RowMarkClause* unsafe_arena_release_row_mark_clause(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::RowMarkClause& _internal_row_mark_clause() const; + ::pg_query::RowMarkClause* _internal_mutable_row_mark_clause(); + public: + // .pg_query.WithClause with_clause = 98 [json_name = "WithClause"]; + bool has_with_clause() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterForeignServerStmt* other); + bool _internal_has_with_clause() const; + + public: + void clear_with_clause() ; + const ::pg_query::WithClause& with_clause() const; + PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); + ::pg_query::WithClause* mutable_with_clause(); + void set_allocated_with_clause(::pg_query::WithClause* value); + void unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value); + ::pg_query::WithClause* unsafe_arena_release_with_clause(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterForeignServerStmt"; - } - protected: - explicit AlterForeignServerStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::WithClause& _internal_with_clause() const; + ::pg_query::WithClause* _internal_mutable_with_clause(); + public: + // .pg_query.InferClause infer_clause = 99 [json_name = "InferClause"]; + bool has_infer_clause() const; + private: + bool _internal_has_infer_clause() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_infer_clause() ; + const ::pg_query::InferClause& infer_clause() const; + PROTOBUF_NODISCARD ::pg_query::InferClause* release_infer_clause(); + ::pg_query::InferClause* mutable_infer_clause(); + void set_allocated_infer_clause(::pg_query::InferClause* value); + void unsafe_arena_set_allocated_infer_clause(::pg_query::InferClause* value); + ::pg_query::InferClause* unsafe_arena_release_infer_clause(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::InferClause& _internal_infer_clause() const; + ::pg_query::InferClause* _internal_mutable_infer_clause(); - // nested types ---------------------------------------------------- + public: + // .pg_query.OnConflictClause on_conflict_clause = 100 [json_name = "OnConflictClause"]; + bool has_on_conflict_clause() const; + private: + bool _internal_has_on_conflict_clause() const; - // accessors ------------------------------------------------------- + public: + void clear_on_conflict_clause() ; + const ::pg_query::OnConflictClause& on_conflict_clause() const; + PROTOBUF_NODISCARD ::pg_query::OnConflictClause* release_on_conflict_clause(); + ::pg_query::OnConflictClause* mutable_on_conflict_clause(); + void set_allocated_on_conflict_clause(::pg_query::OnConflictClause* value); + void unsafe_arena_set_allocated_on_conflict_clause(::pg_query::OnConflictClause* value); + ::pg_query::OnConflictClause* unsafe_arena_release_on_conflict_clause(); - enum : int { - kOptionsFieldNumber = 3, - kServernameFieldNumber = 1, - kVersionFieldNumber = 2, - kHasVersionFieldNumber = 4, - }; - // repeated .pg_query.Node options = 3 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::OnConflictClause& _internal_on_conflict_clause() const; + ::pg_query::OnConflictClause* _internal_mutable_on_conflict_clause(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.CTESearchClause ctesearch_clause = 101 [json_name = "CTESearchClause"]; + bool has_ctesearch_clause() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + bool _internal_has_ctesearch_clause() const; + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + void clear_ctesearch_clause() ; + const ::pg_query::CTESearchClause& ctesearch_clause() const; + PROTOBUF_NODISCARD ::pg_query::CTESearchClause* release_ctesearch_clause(); + ::pg_query::CTESearchClause* mutable_ctesearch_clause(); + void set_allocated_ctesearch_clause(::pg_query::CTESearchClause* value); + void unsafe_arena_set_allocated_ctesearch_clause(::pg_query::CTESearchClause* value); + ::pg_query::CTESearchClause* unsafe_arena_release_ctesearch_clause(); - // string servername = 1 [json_name = "servername"]; - void clear_servername(); - const std::string& servername() const; - template - void set_servername(ArgT0&& arg0, ArgT... args); - std::string* mutable_servername(); - PROTOBUF_NODISCARD std::string* release_servername(); - void set_allocated_servername(std::string* servername); private: - const std::string& _internal_servername() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername(const std::string& value); - std::string* _internal_mutable_servername(); + const ::pg_query::CTESearchClause& _internal_ctesearch_clause() const; + ::pg_query::CTESearchClause* _internal_mutable_ctesearch_clause(); + public: + // .pg_query.CTECycleClause ctecycle_clause = 102 [json_name = "CTECycleClause"]; + bool has_ctecycle_clause() const; + private: + bool _internal_has_ctecycle_clause() const; + + public: + void clear_ctecycle_clause() ; + const ::pg_query::CTECycleClause& ctecycle_clause() const; + PROTOBUF_NODISCARD ::pg_query::CTECycleClause* release_ctecycle_clause(); + ::pg_query::CTECycleClause* mutable_ctecycle_clause(); + void set_allocated_ctecycle_clause(::pg_query::CTECycleClause* value); + void unsafe_arena_set_allocated_ctecycle_clause(::pg_query::CTECycleClause* value); + ::pg_query::CTECycleClause* unsafe_arena_release_ctecycle_clause(); - // string version = 2 [json_name = "version"]; - void clear_version(); - const std::string& version() const; - template - void set_version(ArgT0&& arg0, ArgT... args); - std::string* mutable_version(); - PROTOBUF_NODISCARD std::string* release_version(); - void set_allocated_version(std::string* version); private: - const std::string& _internal_version() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_version(const std::string& value); - std::string* _internal_mutable_version(); + const ::pg_query::CTECycleClause& _internal_ctecycle_clause() const; + ::pg_query::CTECycleClause* _internal_mutable_ctecycle_clause(); + public: + // .pg_query.CommonTableExpr common_table_expr = 103 [json_name = "CommonTableExpr"]; + bool has_common_table_expr() const; + private: + bool _internal_has_common_table_expr() const; + + public: + void clear_common_table_expr() ; + const ::pg_query::CommonTableExpr& common_table_expr() const; + PROTOBUF_NODISCARD ::pg_query::CommonTableExpr* release_common_table_expr(); + ::pg_query::CommonTableExpr* mutable_common_table_expr(); + void set_allocated_common_table_expr(::pg_query::CommonTableExpr* value); + void unsafe_arena_set_allocated_common_table_expr(::pg_query::CommonTableExpr* value); + ::pg_query::CommonTableExpr* unsafe_arena_release_common_table_expr(); - // bool has_version = 4 [json_name = "has_version"]; - void clear_has_version(); - bool has_version() const; - void set_has_version(bool value); private: - bool _internal_has_version() const; - void _internal_set_has_version(bool value); + const ::pg_query::CommonTableExpr& _internal_common_table_expr() const; + ::pg_query::CommonTableExpr* _internal_mutable_common_table_expr(); + public: + // .pg_query.MergeWhenClause merge_when_clause = 104 [json_name = "MergeWhenClause"]; + bool has_merge_when_clause() const; + private: + bool _internal_has_merge_when_clause() const; - // @@protoc_insertion_point(class_scope:pg_query.AlterForeignServerStmt) - private: - class _Internal; + public: + void clear_merge_when_clause() ; + const ::pg_query::MergeWhenClause& merge_when_clause() const; + PROTOBUF_NODISCARD ::pg_query::MergeWhenClause* release_merge_when_clause(); + ::pg_query::MergeWhenClause* mutable_merge_when_clause(); + void set_allocated_merge_when_clause(::pg_query::MergeWhenClause* value); + void unsafe_arena_set_allocated_merge_when_clause(::pg_query::MergeWhenClause* value); + ::pg_query::MergeWhenClause* unsafe_arena_release_merge_when_clause(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr servername_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_; - bool has_version_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::MergeWhenClause& _internal_merge_when_clause() const; + ::pg_query::MergeWhenClause* _internal_mutable_merge_when_clause(); -class CreateUserMappingStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateUserMappingStmt) */ { - public: - inline CreateUserMappingStmt() : CreateUserMappingStmt(nullptr) {} - ~CreateUserMappingStmt() override; - explicit PROTOBUF_CONSTEXPR CreateUserMappingStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.MergeAction merge_action = 105 [json_name = "MergeAction"]; + bool has_merge_action() const; + private: + bool _internal_has_merge_action() const; - CreateUserMappingStmt(const CreateUserMappingStmt& from); - CreateUserMappingStmt(CreateUserMappingStmt&& from) noexcept - : CreateUserMappingStmt() { - *this = ::std::move(from); - } + public: + void clear_merge_action() ; + const ::pg_query::MergeAction& merge_action() const; + PROTOBUF_NODISCARD ::pg_query::MergeAction* release_merge_action(); + ::pg_query::MergeAction* mutable_merge_action(); + void set_allocated_merge_action(::pg_query::MergeAction* value); + void unsafe_arena_set_allocated_merge_action(::pg_query::MergeAction* value); + ::pg_query::MergeAction* unsafe_arena_release_merge_action(); - inline CreateUserMappingStmt& operator=(const CreateUserMappingStmt& from) { - CopyFrom(from); - return *this; - } - inline CreateUserMappingStmt& operator=(CreateUserMappingStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::MergeAction& _internal_merge_action() const; + ::pg_query::MergeAction* _internal_mutable_merge_action(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CreateUserMappingStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CreateUserMappingStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateUserMappingStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 153; + public: + // .pg_query.TriggerTransition trigger_transition = 106 [json_name = "TriggerTransition"]; + bool has_trigger_transition() const; + private: + bool _internal_has_trigger_transition() const; - friend void swap(CreateUserMappingStmt& a, CreateUserMappingStmt& b) { - a.Swap(&b); - } - inline void Swap(CreateUserMappingStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CreateUserMappingStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_trigger_transition() ; + const ::pg_query::TriggerTransition& trigger_transition() const; + PROTOBUF_NODISCARD ::pg_query::TriggerTransition* release_trigger_transition(); + ::pg_query::TriggerTransition* mutable_trigger_transition(); + void set_allocated_trigger_transition(::pg_query::TriggerTransition* value); + void unsafe_arena_set_allocated_trigger_transition(::pg_query::TriggerTransition* value); + ::pg_query::TriggerTransition* unsafe_arena_release_trigger_transition(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::TriggerTransition& _internal_trigger_transition() const; + ::pg_query::TriggerTransition* _internal_mutable_trigger_transition(); - CreateUserMappingStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateUserMappingStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateUserMappingStmt& from) { - CreateUserMappingStmt::MergeImpl(*this, from); - } + public: + // .pg_query.JsonOutput json_output = 107 [json_name = "JsonOutput"]; + bool has_json_output() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_json_output() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_json_output() ; + const ::pg_query::JsonOutput& json_output() const; + PROTOBUF_NODISCARD ::pg_query::JsonOutput* release_json_output(); + ::pg_query::JsonOutput* mutable_json_output(); + void set_allocated_json_output(::pg_query::JsonOutput* value); + void unsafe_arena_set_allocated_json_output(::pg_query::JsonOutput* value); + ::pg_query::JsonOutput* unsafe_arena_release_json_output(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::JsonOutput& _internal_json_output() const; + ::pg_query::JsonOutput* _internal_mutable_json_output(); + public: + // .pg_query.JsonKeyValue json_key_value = 108 [json_name = "JsonKeyValue"]; + bool has_json_key_value() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateUserMappingStmt* other); + bool _internal_has_json_key_value() const; + + public: + void clear_json_key_value() ; + const ::pg_query::JsonKeyValue& json_key_value() const; + PROTOBUF_NODISCARD ::pg_query::JsonKeyValue* release_json_key_value(); + ::pg_query::JsonKeyValue* mutable_json_key_value(); + void set_allocated_json_key_value(::pg_query::JsonKeyValue* value); + void unsafe_arena_set_allocated_json_key_value(::pg_query::JsonKeyValue* value); + ::pg_query::JsonKeyValue* unsafe_arena_release_json_key_value(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateUserMappingStmt"; - } - protected: - explicit CreateUserMappingStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::JsonKeyValue& _internal_json_key_value() const; + ::pg_query::JsonKeyValue* _internal_mutable_json_key_value(); + public: + // .pg_query.JsonObjectConstructor json_object_constructor = 109 [json_name = "JsonObjectConstructor"]; + bool has_json_object_constructor() const; + private: + bool _internal_has_json_object_constructor() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_json_object_constructor() ; + const ::pg_query::JsonObjectConstructor& json_object_constructor() const; + PROTOBUF_NODISCARD ::pg_query::JsonObjectConstructor* release_json_object_constructor(); + ::pg_query::JsonObjectConstructor* mutable_json_object_constructor(); + void set_allocated_json_object_constructor(::pg_query::JsonObjectConstructor* value); + void unsafe_arena_set_allocated_json_object_constructor(::pg_query::JsonObjectConstructor* value); + ::pg_query::JsonObjectConstructor* unsafe_arena_release_json_object_constructor(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::JsonObjectConstructor& _internal_json_object_constructor() const; + ::pg_query::JsonObjectConstructor* _internal_mutable_json_object_constructor(); - // nested types ---------------------------------------------------- + public: + // .pg_query.JsonArrayConstructor json_array_constructor = 110 [json_name = "JsonArrayConstructor"]; + bool has_json_array_constructor() const; + private: + bool _internal_has_json_array_constructor() const; - // accessors ------------------------------------------------------- + public: + void clear_json_array_constructor() ; + const ::pg_query::JsonArrayConstructor& json_array_constructor() const; + PROTOBUF_NODISCARD ::pg_query::JsonArrayConstructor* release_json_array_constructor(); + ::pg_query::JsonArrayConstructor* mutable_json_array_constructor(); + void set_allocated_json_array_constructor(::pg_query::JsonArrayConstructor* value); + void unsafe_arena_set_allocated_json_array_constructor(::pg_query::JsonArrayConstructor* value); + ::pg_query::JsonArrayConstructor* unsafe_arena_release_json_array_constructor(); - enum : int { - kOptionsFieldNumber = 4, - kServernameFieldNumber = 2, - kUserFieldNumber = 1, - kIfNotExistsFieldNumber = 3, - }; - // repeated .pg_query.Node options = 4 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::JsonArrayConstructor& _internal_json_array_constructor() const; + ::pg_query::JsonArrayConstructor* _internal_mutable_json_array_constructor(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.JsonArrayQueryConstructor json_array_query_constructor = 111 [json_name = "JsonArrayQueryConstructor"]; + bool has_json_array_query_constructor() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + bool _internal_has_json_array_query_constructor() const; + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + void clear_json_array_query_constructor() ; + const ::pg_query::JsonArrayQueryConstructor& json_array_query_constructor() const; + PROTOBUF_NODISCARD ::pg_query::JsonArrayQueryConstructor* release_json_array_query_constructor(); + ::pg_query::JsonArrayQueryConstructor* mutable_json_array_query_constructor(); + void set_allocated_json_array_query_constructor(::pg_query::JsonArrayQueryConstructor* value); + void unsafe_arena_set_allocated_json_array_query_constructor(::pg_query::JsonArrayQueryConstructor* value); + ::pg_query::JsonArrayQueryConstructor* unsafe_arena_release_json_array_query_constructor(); - // string servername = 2 [json_name = "servername"]; - void clear_servername(); - const std::string& servername() const; - template - void set_servername(ArgT0&& arg0, ArgT... args); - std::string* mutable_servername(); - PROTOBUF_NODISCARD std::string* release_servername(); - void set_allocated_servername(std::string* servername); private: - const std::string& _internal_servername() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername(const std::string& value); - std::string* _internal_mutable_servername(); + const ::pg_query::JsonArrayQueryConstructor& _internal_json_array_query_constructor() const; + ::pg_query::JsonArrayQueryConstructor* _internal_mutable_json_array_query_constructor(); + public: + // .pg_query.JsonAggConstructor json_agg_constructor = 112 [json_name = "JsonAggConstructor"]; + bool has_json_agg_constructor() const; + private: + bool _internal_has_json_agg_constructor() const; + + public: + void clear_json_agg_constructor() ; + const ::pg_query::JsonAggConstructor& json_agg_constructor() const; + PROTOBUF_NODISCARD ::pg_query::JsonAggConstructor* release_json_agg_constructor(); + ::pg_query::JsonAggConstructor* mutable_json_agg_constructor(); + void set_allocated_json_agg_constructor(::pg_query::JsonAggConstructor* value); + void unsafe_arena_set_allocated_json_agg_constructor(::pg_query::JsonAggConstructor* value); + ::pg_query::JsonAggConstructor* unsafe_arena_release_json_agg_constructor(); - // .pg_query.RoleSpec user = 1 [json_name = "user"]; - bool has_user() const; private: - bool _internal_has_user() const; + const ::pg_query::JsonAggConstructor& _internal_json_agg_constructor() const; + ::pg_query::JsonAggConstructor* _internal_mutable_json_agg_constructor(); + public: - void clear_user(); - const ::pg_query::RoleSpec& user() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_user(); - ::pg_query::RoleSpec* mutable_user(); - void set_allocated_user(::pg_query::RoleSpec* user); + // .pg_query.JsonObjectAgg json_object_agg = 113 [json_name = "JsonObjectAgg"]; + bool has_json_object_agg() const; private: - const ::pg_query::RoleSpec& _internal_user() const; - ::pg_query::RoleSpec* _internal_mutable_user(); + bool _internal_has_json_object_agg() const; + public: - void unsafe_arena_set_allocated_user( - ::pg_query::RoleSpec* user); - ::pg_query::RoleSpec* unsafe_arena_release_user(); + void clear_json_object_agg() ; + const ::pg_query::JsonObjectAgg& json_object_agg() const; + PROTOBUF_NODISCARD ::pg_query::JsonObjectAgg* release_json_object_agg(); + ::pg_query::JsonObjectAgg* mutable_json_object_agg(); + void set_allocated_json_object_agg(::pg_query::JsonObjectAgg* value); + void unsafe_arena_set_allocated_json_object_agg(::pg_query::JsonObjectAgg* value); + ::pg_query::JsonObjectAgg* unsafe_arena_release_json_object_agg(); - // bool if_not_exists = 3 [json_name = "if_not_exists"]; - void clear_if_not_exists(); - bool if_not_exists() const; - void set_if_not_exists(bool value); private: - bool _internal_if_not_exists() const; - void _internal_set_if_not_exists(bool value); + const ::pg_query::JsonObjectAgg& _internal_json_object_agg() const; + ::pg_query::JsonObjectAgg* _internal_mutable_json_object_agg(); + public: + // .pg_query.JsonArrayAgg json_array_agg = 114 [json_name = "JsonArrayAgg"]; + bool has_json_array_agg() const; + private: + bool _internal_has_json_array_agg() const; - // @@protoc_insertion_point(class_scope:pg_query.CreateUserMappingStmt) - private: - class _Internal; + public: + void clear_json_array_agg() ; + const ::pg_query::JsonArrayAgg& json_array_agg() const; + PROTOBUF_NODISCARD ::pg_query::JsonArrayAgg* release_json_array_agg(); + ::pg_query::JsonArrayAgg* mutable_json_array_agg(); + void set_allocated_json_array_agg(::pg_query::JsonArrayAgg* value); + void unsafe_arena_set_allocated_json_array_agg(::pg_query::JsonArrayAgg* value); + ::pg_query::JsonArrayAgg* unsafe_arena_release_json_array_agg(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr servername_; - ::pg_query::RoleSpec* user_; - bool if_not_exists_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::JsonArrayAgg& _internal_json_array_agg() const; + ::pg_query::JsonArrayAgg* _internal_mutable_json_array_agg(); -class AlterUserMappingStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterUserMappingStmt) */ { - public: - inline AlterUserMappingStmt() : AlterUserMappingStmt(nullptr) {} - ~AlterUserMappingStmt() override; - explicit PROTOBUF_CONSTEXPR AlterUserMappingStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.RawStmt raw_stmt = 115 [json_name = "RawStmt"]; + bool has_raw_stmt() const; + private: + bool _internal_has_raw_stmt() const; - AlterUserMappingStmt(const AlterUserMappingStmt& from); - AlterUserMappingStmt(AlterUserMappingStmt&& from) noexcept - : AlterUserMappingStmt() { - *this = ::std::move(from); - } + public: + void clear_raw_stmt() ; + const ::pg_query::RawStmt& raw_stmt() const; + PROTOBUF_NODISCARD ::pg_query::RawStmt* release_raw_stmt(); + ::pg_query::RawStmt* mutable_raw_stmt(); + void set_allocated_raw_stmt(::pg_query::RawStmt* value); + void unsafe_arena_set_allocated_raw_stmt(::pg_query::RawStmt* value); + ::pg_query::RawStmt* unsafe_arena_release_raw_stmt(); - inline AlterUserMappingStmt& operator=(const AlterUserMappingStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterUserMappingStmt& operator=(AlterUserMappingStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::RawStmt& _internal_raw_stmt() const; + ::pg_query::RawStmt* _internal_mutable_raw_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterUserMappingStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterUserMappingStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterUserMappingStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 154; + public: + // .pg_query.InsertStmt insert_stmt = 116 [json_name = "InsertStmt"]; + bool has_insert_stmt() const; + private: + bool _internal_has_insert_stmt() const; - friend void swap(AlterUserMappingStmt& a, AlterUserMappingStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterUserMappingStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterUserMappingStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_insert_stmt() ; + const ::pg_query::InsertStmt& insert_stmt() const; + PROTOBUF_NODISCARD ::pg_query::InsertStmt* release_insert_stmt(); + ::pg_query::InsertStmt* mutable_insert_stmt(); + void set_allocated_insert_stmt(::pg_query::InsertStmt* value); + void unsafe_arena_set_allocated_insert_stmt(::pg_query::InsertStmt* value); + ::pg_query::InsertStmt* unsafe_arena_release_insert_stmt(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::InsertStmt& _internal_insert_stmt() const; + ::pg_query::InsertStmt* _internal_mutable_insert_stmt(); - AlterUserMappingStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterUserMappingStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterUserMappingStmt& from) { - AlterUserMappingStmt::MergeImpl(*this, from); - } + public: + // .pg_query.DeleteStmt delete_stmt = 117 [json_name = "DeleteStmt"]; + bool has_delete_stmt() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_delete_stmt() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_delete_stmt() ; + const ::pg_query::DeleteStmt& delete_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DeleteStmt* release_delete_stmt(); + ::pg_query::DeleteStmt* mutable_delete_stmt(); + void set_allocated_delete_stmt(::pg_query::DeleteStmt* value); + void unsafe_arena_set_allocated_delete_stmt(::pg_query::DeleteStmt* value); + ::pg_query::DeleteStmt* unsafe_arena_release_delete_stmt(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::DeleteStmt& _internal_delete_stmt() const; + ::pg_query::DeleteStmt* _internal_mutable_delete_stmt(); + public: + // .pg_query.UpdateStmt update_stmt = 118 [json_name = "UpdateStmt"]; + bool has_update_stmt() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterUserMappingStmt* other); + bool _internal_has_update_stmt() const; + + public: + void clear_update_stmt() ; + const ::pg_query::UpdateStmt& update_stmt() const; + PROTOBUF_NODISCARD ::pg_query::UpdateStmt* release_update_stmt(); + ::pg_query::UpdateStmt* mutable_update_stmt(); + void set_allocated_update_stmt(::pg_query::UpdateStmt* value); + void unsafe_arena_set_allocated_update_stmt(::pg_query::UpdateStmt* value); + ::pg_query::UpdateStmt* unsafe_arena_release_update_stmt(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterUserMappingStmt"; - } - protected: - explicit AlterUserMappingStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::UpdateStmt& _internal_update_stmt() const; + ::pg_query::UpdateStmt* _internal_mutable_update_stmt(); + public: + // .pg_query.MergeStmt merge_stmt = 119 [json_name = "MergeStmt"]; + bool has_merge_stmt() const; + private: + bool _internal_has_merge_stmt() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_merge_stmt() ; + const ::pg_query::MergeStmt& merge_stmt() const; + PROTOBUF_NODISCARD ::pg_query::MergeStmt* release_merge_stmt(); + ::pg_query::MergeStmt* mutable_merge_stmt(); + void set_allocated_merge_stmt(::pg_query::MergeStmt* value); + void unsafe_arena_set_allocated_merge_stmt(::pg_query::MergeStmt* value); + ::pg_query::MergeStmt* unsafe_arena_release_merge_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::MergeStmt& _internal_merge_stmt() const; + ::pg_query::MergeStmt* _internal_mutable_merge_stmt(); - // nested types ---------------------------------------------------- + public: + // .pg_query.SelectStmt select_stmt = 120 [json_name = "SelectStmt"]; + bool has_select_stmt() const; + private: + bool _internal_has_select_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_select_stmt() ; + const ::pg_query::SelectStmt& select_stmt() const; + PROTOBUF_NODISCARD ::pg_query::SelectStmt* release_select_stmt(); + ::pg_query::SelectStmt* mutable_select_stmt(); + void set_allocated_select_stmt(::pg_query::SelectStmt* value); + void unsafe_arena_set_allocated_select_stmt(::pg_query::SelectStmt* value); + ::pg_query::SelectStmt* unsafe_arena_release_select_stmt(); - enum : int { - kOptionsFieldNumber = 3, - kServernameFieldNumber = 2, - kUserFieldNumber = 1, - }; - // repeated .pg_query.Node options = 3 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::SelectStmt& _internal_select_stmt() const; + ::pg_query::SelectStmt* _internal_mutable_select_stmt(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.SetOperationStmt set_operation_stmt = 121 [json_name = "SetOperationStmt"]; + bool has_set_operation_stmt() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + bool _internal_has_set_operation_stmt() const; + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + void clear_set_operation_stmt() ; + const ::pg_query::SetOperationStmt& set_operation_stmt() const; + PROTOBUF_NODISCARD ::pg_query::SetOperationStmt* release_set_operation_stmt(); + ::pg_query::SetOperationStmt* mutable_set_operation_stmt(); + void set_allocated_set_operation_stmt(::pg_query::SetOperationStmt* value); + void unsafe_arena_set_allocated_set_operation_stmt(::pg_query::SetOperationStmt* value); + ::pg_query::SetOperationStmt* unsafe_arena_release_set_operation_stmt(); - // string servername = 2 [json_name = "servername"]; - void clear_servername(); - const std::string& servername() const; - template - void set_servername(ArgT0&& arg0, ArgT... args); - std::string* mutable_servername(); - PROTOBUF_NODISCARD std::string* release_servername(); - void set_allocated_servername(std::string* servername); private: - const std::string& _internal_servername() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername(const std::string& value); - std::string* _internal_mutable_servername(); + const ::pg_query::SetOperationStmt& _internal_set_operation_stmt() const; + ::pg_query::SetOperationStmt* _internal_mutable_set_operation_stmt(); + public: + // .pg_query.ReturnStmt return_stmt = 122 [json_name = "ReturnStmt"]; + bool has_return_stmt() const; + private: + bool _internal_has_return_stmt() const; + + public: + void clear_return_stmt() ; + const ::pg_query::ReturnStmt& return_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ReturnStmt* release_return_stmt(); + ::pg_query::ReturnStmt* mutable_return_stmt(); + void set_allocated_return_stmt(::pg_query::ReturnStmt* value); + void unsafe_arena_set_allocated_return_stmt(::pg_query::ReturnStmt* value); + ::pg_query::ReturnStmt* unsafe_arena_release_return_stmt(); - // .pg_query.RoleSpec user = 1 [json_name = "user"]; - bool has_user() const; private: - bool _internal_has_user() const; + const ::pg_query::ReturnStmt& _internal_return_stmt() const; + ::pg_query::ReturnStmt* _internal_mutable_return_stmt(); + public: - void clear_user(); - const ::pg_query::RoleSpec& user() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_user(); - ::pg_query::RoleSpec* mutable_user(); - void set_allocated_user(::pg_query::RoleSpec* user); + // .pg_query.PLAssignStmt plassign_stmt = 123 [json_name = "PLAssignStmt"]; + bool has_plassign_stmt() const; private: - const ::pg_query::RoleSpec& _internal_user() const; - ::pg_query::RoleSpec* _internal_mutable_user(); + bool _internal_has_plassign_stmt() const; + public: - void unsafe_arena_set_allocated_user( - ::pg_query::RoleSpec* user); - ::pg_query::RoleSpec* unsafe_arena_release_user(); + void clear_plassign_stmt() ; + const ::pg_query::PLAssignStmt& plassign_stmt() const; + PROTOBUF_NODISCARD ::pg_query::PLAssignStmt* release_plassign_stmt(); + ::pg_query::PLAssignStmt* mutable_plassign_stmt(); + void set_allocated_plassign_stmt(::pg_query::PLAssignStmt* value); + void unsafe_arena_set_allocated_plassign_stmt(::pg_query::PLAssignStmt* value); + ::pg_query::PLAssignStmt* unsafe_arena_release_plassign_stmt(); - // @@protoc_insertion_point(class_scope:pg_query.AlterUserMappingStmt) - private: - class _Internal; + private: + const ::pg_query::PLAssignStmt& _internal_plassign_stmt() const; + ::pg_query::PLAssignStmt* _internal_mutable_plassign_stmt(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr servername_; - ::pg_query::RoleSpec* user_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + // .pg_query.CreateSchemaStmt create_schema_stmt = 124 [json_name = "CreateSchemaStmt"]; + bool has_create_schema_stmt() const; + private: + bool _internal_has_create_schema_stmt() const; -class DropUserMappingStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DropUserMappingStmt) */ { - public: - inline DropUserMappingStmt() : DropUserMappingStmt(nullptr) {} - ~DropUserMappingStmt() override; - explicit PROTOBUF_CONSTEXPR DropUserMappingStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + void clear_create_schema_stmt() ; + const ::pg_query::CreateSchemaStmt& create_schema_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateSchemaStmt* release_create_schema_stmt(); + ::pg_query::CreateSchemaStmt* mutable_create_schema_stmt(); + void set_allocated_create_schema_stmt(::pg_query::CreateSchemaStmt* value); + void unsafe_arena_set_allocated_create_schema_stmt(::pg_query::CreateSchemaStmt* value); + ::pg_query::CreateSchemaStmt* unsafe_arena_release_create_schema_stmt(); - DropUserMappingStmt(const DropUserMappingStmt& from); - DropUserMappingStmt(DropUserMappingStmt&& from) noexcept - : DropUserMappingStmt() { - *this = ::std::move(from); - } + private: + const ::pg_query::CreateSchemaStmt& _internal_create_schema_stmt() const; + ::pg_query::CreateSchemaStmt* _internal_mutable_create_schema_stmt(); - inline DropUserMappingStmt& operator=(const DropUserMappingStmt& from) { - CopyFrom(from); - return *this; - } - inline DropUserMappingStmt& operator=(DropUserMappingStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + // .pg_query.AlterTableStmt alter_table_stmt = 125 [json_name = "AlterTableStmt"]; + bool has_alter_table_stmt() const; + private: + bool _internal_has_alter_table_stmt() const; - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const DropUserMappingStmt& default_instance() { - return *internal_default_instance(); - } - static inline const DropUserMappingStmt* internal_default_instance() { - return reinterpret_cast( - &_DropUserMappingStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 155; + public: + void clear_alter_table_stmt() ; + const ::pg_query::AlterTableStmt& alter_table_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterTableStmt* release_alter_table_stmt(); + ::pg_query::AlterTableStmt* mutable_alter_table_stmt(); + void set_allocated_alter_table_stmt(::pg_query::AlterTableStmt* value); + void unsafe_arena_set_allocated_alter_table_stmt(::pg_query::AlterTableStmt* value); + ::pg_query::AlterTableStmt* unsafe_arena_release_alter_table_stmt(); - friend void swap(DropUserMappingStmt& a, DropUserMappingStmt& b) { - a.Swap(&b); - } - inline void Swap(DropUserMappingStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(DropUserMappingStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + private: + const ::pg_query::AlterTableStmt& _internal_alter_table_stmt() const; + ::pg_query::AlterTableStmt* _internal_mutable_alter_table_stmt(); - // implements Message ---------------------------------------------- + public: + // .pg_query.ReplicaIdentityStmt replica_identity_stmt = 126 [json_name = "ReplicaIdentityStmt"]; + bool has_replica_identity_stmt() const; + private: + bool _internal_has_replica_identity_stmt() const; + + public: + void clear_replica_identity_stmt() ; + const ::pg_query::ReplicaIdentityStmt& replica_identity_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ReplicaIdentityStmt* release_replica_identity_stmt(); + ::pg_query::ReplicaIdentityStmt* mutable_replica_identity_stmt(); + void set_allocated_replica_identity_stmt(::pg_query::ReplicaIdentityStmt* value); + void unsafe_arena_set_allocated_replica_identity_stmt(::pg_query::ReplicaIdentityStmt* value); + ::pg_query::ReplicaIdentityStmt* unsafe_arena_release_replica_identity_stmt(); - DropUserMappingStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DropUserMappingStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DropUserMappingStmt& from) { - DropUserMappingStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::ReplicaIdentityStmt& _internal_replica_identity_stmt() const; + ::pg_query::ReplicaIdentityStmt* _internal_mutable_replica_identity_stmt(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.AlterTableCmd alter_table_cmd = 127 [json_name = "AlterTableCmd"]; + bool has_alter_table_cmd() const; + private: + bool _internal_has_alter_table_cmd() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_alter_table_cmd() ; + const ::pg_query::AlterTableCmd& alter_table_cmd() const; + PROTOBUF_NODISCARD ::pg_query::AlterTableCmd* release_alter_table_cmd(); + ::pg_query::AlterTableCmd* mutable_alter_table_cmd(); + void set_allocated_alter_table_cmd(::pg_query::AlterTableCmd* value); + void unsafe_arena_set_allocated_alter_table_cmd(::pg_query::AlterTableCmd* value); + ::pg_query::AlterTableCmd* unsafe_arena_release_alter_table_cmd(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DropUserMappingStmt* other); + const ::pg_query::AlterTableCmd& _internal_alter_table_cmd() const; + ::pg_query::AlterTableCmd* _internal_mutable_alter_table_cmd(); + public: + // .pg_query.AlterCollationStmt alter_collation_stmt = 128 [json_name = "AlterCollationStmt"]; + bool has_alter_collation_stmt() const; private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DropUserMappingStmt"; - } - protected: - explicit DropUserMappingStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + bool _internal_has_alter_collation_stmt() const; + public: + void clear_alter_collation_stmt() ; + const ::pg_query::AlterCollationStmt& alter_collation_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterCollationStmt* release_alter_collation_stmt(); + ::pg_query::AlterCollationStmt* mutable_alter_collation_stmt(); + void set_allocated_alter_collation_stmt(::pg_query::AlterCollationStmt* value); + void unsafe_arena_set_allocated_alter_collation_stmt(::pg_query::AlterCollationStmt* value); + ::pg_query::AlterCollationStmt* unsafe_arena_release_alter_collation_stmt(); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + private: + const ::pg_query::AlterCollationStmt& _internal_alter_collation_stmt() const; + ::pg_query::AlterCollationStmt* _internal_mutable_alter_collation_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + // .pg_query.AlterDomainStmt alter_domain_stmt = 129 [json_name = "AlterDomainStmt"]; + bool has_alter_domain_stmt() const; + private: + bool _internal_has_alter_domain_stmt() const; - // nested types ---------------------------------------------------- + public: + void clear_alter_domain_stmt() ; + const ::pg_query::AlterDomainStmt& alter_domain_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterDomainStmt* release_alter_domain_stmt(); + ::pg_query::AlterDomainStmt* mutable_alter_domain_stmt(); + void set_allocated_alter_domain_stmt(::pg_query::AlterDomainStmt* value); + void unsafe_arena_set_allocated_alter_domain_stmt(::pg_query::AlterDomainStmt* value); + ::pg_query::AlterDomainStmt* unsafe_arena_release_alter_domain_stmt(); - // accessors ------------------------------------------------------- + private: + const ::pg_query::AlterDomainStmt& _internal_alter_domain_stmt() const; + ::pg_query::AlterDomainStmt* _internal_mutable_alter_domain_stmt(); - enum : int { - kServernameFieldNumber = 2, - kUserFieldNumber = 1, - kMissingOkFieldNumber = 3, - }; - // string servername = 2 [json_name = "servername"]; - void clear_servername(); - const std::string& servername() const; - template - void set_servername(ArgT0&& arg0, ArgT... args); - std::string* mutable_servername(); - PROTOBUF_NODISCARD std::string* release_servername(); - void set_allocated_servername(std::string* servername); + public: + // .pg_query.GrantStmt grant_stmt = 130 [json_name = "GrantStmt"]; + bool has_grant_stmt() const; private: - const std::string& _internal_servername() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername(const std::string& value); - std::string* _internal_mutable_servername(); + bool _internal_has_grant_stmt() const; + public: + void clear_grant_stmt() ; + const ::pg_query::GrantStmt& grant_stmt() const; + PROTOBUF_NODISCARD ::pg_query::GrantStmt* release_grant_stmt(); + ::pg_query::GrantStmt* mutable_grant_stmt(); + void set_allocated_grant_stmt(::pg_query::GrantStmt* value); + void unsafe_arena_set_allocated_grant_stmt(::pg_query::GrantStmt* value); + ::pg_query::GrantStmt* unsafe_arena_release_grant_stmt(); - // .pg_query.RoleSpec user = 1 [json_name = "user"]; - bool has_user() const; private: - bool _internal_has_user() const; + const ::pg_query::GrantStmt& _internal_grant_stmt() const; + ::pg_query::GrantStmt* _internal_mutable_grant_stmt(); + public: - void clear_user(); - const ::pg_query::RoleSpec& user() const; - PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_user(); - ::pg_query::RoleSpec* mutable_user(); - void set_allocated_user(::pg_query::RoleSpec* user); + // .pg_query.ObjectWithArgs object_with_args = 131 [json_name = "ObjectWithArgs"]; + bool has_object_with_args() const; private: - const ::pg_query::RoleSpec& _internal_user() const; - ::pg_query::RoleSpec* _internal_mutable_user(); + bool _internal_has_object_with_args() const; + public: - void unsafe_arena_set_allocated_user( - ::pg_query::RoleSpec* user); - ::pg_query::RoleSpec* unsafe_arena_release_user(); + void clear_object_with_args() ; + const ::pg_query::ObjectWithArgs& object_with_args() const; + PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_object_with_args(); + ::pg_query::ObjectWithArgs* mutable_object_with_args(); + void set_allocated_object_with_args(::pg_query::ObjectWithArgs* value); + void unsafe_arena_set_allocated_object_with_args(::pg_query::ObjectWithArgs* value); + ::pg_query::ObjectWithArgs* unsafe_arena_release_object_with_args(); - // bool missing_ok = 3 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); - public: + const ::pg_query::ObjectWithArgs& _internal_object_with_args() const; + ::pg_query::ObjectWithArgs* _internal_mutable_object_with_args(); - // @@protoc_insertion_point(class_scope:pg_query.DropUserMappingStmt) - private: - class _Internal; + public: + // .pg_query.AccessPriv access_priv = 132 [json_name = "AccessPriv"]; + bool has_access_priv() const; + private: + bool _internal_has_access_priv() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr servername_; - ::pg_query::RoleSpec* user_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_access_priv() ; + const ::pg_query::AccessPriv& access_priv() const; + PROTOBUF_NODISCARD ::pg_query::AccessPriv* release_access_priv(); + ::pg_query::AccessPriv* mutable_access_priv(); + void set_allocated_access_priv(::pg_query::AccessPriv* value); + void unsafe_arena_set_allocated_access_priv(::pg_query::AccessPriv* value); + ::pg_query::AccessPriv* unsafe_arena_release_access_priv(); -class AlterTableSpaceOptionsStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTableSpaceOptionsStmt) */ { - public: - inline AlterTableSpaceOptionsStmt() : AlterTableSpaceOptionsStmt(nullptr) {} - ~AlterTableSpaceOptionsStmt() override; - explicit PROTOBUF_CONSTEXPR AlterTableSpaceOptionsStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::AccessPriv& _internal_access_priv() const; + ::pg_query::AccessPriv* _internal_mutable_access_priv(); - AlterTableSpaceOptionsStmt(const AlterTableSpaceOptionsStmt& from); - AlterTableSpaceOptionsStmt(AlterTableSpaceOptionsStmt&& from) noexcept - : AlterTableSpaceOptionsStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.GrantRoleStmt grant_role_stmt = 133 [json_name = "GrantRoleStmt"]; + bool has_grant_role_stmt() const; + private: + bool _internal_has_grant_role_stmt() const; - inline AlterTableSpaceOptionsStmt& operator=(const AlterTableSpaceOptionsStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterTableSpaceOptionsStmt& operator=(AlterTableSpaceOptionsStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_grant_role_stmt() ; + const ::pg_query::GrantRoleStmt& grant_role_stmt() const; + PROTOBUF_NODISCARD ::pg_query::GrantRoleStmt* release_grant_role_stmt(); + ::pg_query::GrantRoleStmt* mutable_grant_role_stmt(); + void set_allocated_grant_role_stmt(::pg_query::GrantRoleStmt* value); + void unsafe_arena_set_allocated_grant_role_stmt(::pg_query::GrantRoleStmt* value); + ::pg_query::GrantRoleStmt* unsafe_arena_release_grant_role_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterTableSpaceOptionsStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterTableSpaceOptionsStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterTableSpaceOptionsStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 156; + private: + const ::pg_query::GrantRoleStmt& _internal_grant_role_stmt() const; + ::pg_query::GrantRoleStmt* _internal_mutable_grant_role_stmt(); - friend void swap(AlterTableSpaceOptionsStmt& a, AlterTableSpaceOptionsStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterTableSpaceOptionsStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterTableSpaceOptionsStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.AlterDefaultPrivilegesStmt alter_default_privileges_stmt = 134 [json_name = "AlterDefaultPrivilegesStmt"]; + bool has_alter_default_privileges_stmt() const; + private: + bool _internal_has_alter_default_privileges_stmt() const; - // implements Message ---------------------------------------------- + public: + void clear_alter_default_privileges_stmt() ; + const ::pg_query::AlterDefaultPrivilegesStmt& alter_default_privileges_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterDefaultPrivilegesStmt* release_alter_default_privileges_stmt(); + ::pg_query::AlterDefaultPrivilegesStmt* mutable_alter_default_privileges_stmt(); + void set_allocated_alter_default_privileges_stmt(::pg_query::AlterDefaultPrivilegesStmt* value); + void unsafe_arena_set_allocated_alter_default_privileges_stmt(::pg_query::AlterDefaultPrivilegesStmt* value); + ::pg_query::AlterDefaultPrivilegesStmt* unsafe_arena_release_alter_default_privileges_stmt(); - AlterTableSpaceOptionsStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterTableSpaceOptionsStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterTableSpaceOptionsStmt& from) { - AlterTableSpaceOptionsStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::AlterDefaultPrivilegesStmt& _internal_alter_default_privileges_stmt() const; + ::pg_query::AlterDefaultPrivilegesStmt* _internal_mutable_alter_default_privileges_stmt(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.CopyStmt copy_stmt = 135 [json_name = "CopyStmt"]; + bool has_copy_stmt() const; + private: + bool _internal_has_copy_stmt() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_copy_stmt() ; + const ::pg_query::CopyStmt& copy_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CopyStmt* release_copy_stmt(); + ::pg_query::CopyStmt* mutable_copy_stmt(); + void set_allocated_copy_stmt(::pg_query::CopyStmt* value); + void unsafe_arena_set_allocated_copy_stmt(::pg_query::CopyStmt* value); + ::pg_query::CopyStmt* unsafe_arena_release_copy_stmt(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterTableSpaceOptionsStmt* other); + const ::pg_query::CopyStmt& _internal_copy_stmt() const; + ::pg_query::CopyStmt* _internal_mutable_copy_stmt(); + public: + // .pg_query.VariableSetStmt variable_set_stmt = 136 [json_name = "VariableSetStmt"]; + bool has_variable_set_stmt() const; private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterTableSpaceOptionsStmt"; - } - protected: - explicit AlterTableSpaceOptionsStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + bool _internal_has_variable_set_stmt() const; + public: + void clear_variable_set_stmt() ; + const ::pg_query::VariableSetStmt& variable_set_stmt() const; + PROTOBUF_NODISCARD ::pg_query::VariableSetStmt* release_variable_set_stmt(); + ::pg_query::VariableSetStmt* mutable_variable_set_stmt(); + void set_allocated_variable_set_stmt(::pg_query::VariableSetStmt* value); + void unsafe_arena_set_allocated_variable_set_stmt(::pg_query::VariableSetStmt* value); + ::pg_query::VariableSetStmt* unsafe_arena_release_variable_set_stmt(); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + private: + const ::pg_query::VariableSetStmt& _internal_variable_set_stmt() const; + ::pg_query::VariableSetStmt* _internal_mutable_variable_set_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + // .pg_query.VariableShowStmt variable_show_stmt = 137 [json_name = "VariableShowStmt"]; + bool has_variable_show_stmt() const; + private: + bool _internal_has_variable_show_stmt() const; - // nested types ---------------------------------------------------- + public: + void clear_variable_show_stmt() ; + const ::pg_query::VariableShowStmt& variable_show_stmt() const; + PROTOBUF_NODISCARD ::pg_query::VariableShowStmt* release_variable_show_stmt(); + ::pg_query::VariableShowStmt* mutable_variable_show_stmt(); + void set_allocated_variable_show_stmt(::pg_query::VariableShowStmt* value); + void unsafe_arena_set_allocated_variable_show_stmt(::pg_query::VariableShowStmt* value); + ::pg_query::VariableShowStmt* unsafe_arena_release_variable_show_stmt(); - // accessors ------------------------------------------------------- + private: + const ::pg_query::VariableShowStmt& _internal_variable_show_stmt() const; + ::pg_query::VariableShowStmt* _internal_mutable_variable_show_stmt(); - enum : int { - kOptionsFieldNumber = 2, - kTablespacenameFieldNumber = 1, - kIsResetFieldNumber = 3, - }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; + public: + // .pg_query.CreateStmt create_stmt = 138 [json_name = "CreateStmt"]; + bool has_create_stmt() const; private: - int _internal_options_size() const; + bool _internal_has_create_stmt() const; + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_create_stmt() ; + const ::pg_query::CreateStmt& create_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateStmt* release_create_stmt(); + ::pg_query::CreateStmt* mutable_create_stmt(); + void set_allocated_create_stmt(::pg_query::CreateStmt* value); + void unsafe_arena_set_allocated_create_stmt(::pg_query::CreateStmt* value); + ::pg_query::CreateStmt* unsafe_arena_release_create_stmt(); + private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::pg_query::CreateStmt& _internal_create_stmt() const; + ::pg_query::CreateStmt* _internal_mutable_create_stmt(); + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + // .pg_query.Constraint constraint = 139 [json_name = "Constraint"]; + bool has_constraint() const; + private: + bool _internal_has_constraint() const; + + public: + void clear_constraint() ; + const ::pg_query::Constraint& constraint() const; + PROTOBUF_NODISCARD ::pg_query::Constraint* release_constraint(); + ::pg_query::Constraint* mutable_constraint(); + void set_allocated_constraint(::pg_query::Constraint* value); + void unsafe_arena_set_allocated_constraint(::pg_query::Constraint* value); + ::pg_query::Constraint* unsafe_arena_release_constraint(); - // string tablespacename = 1 [json_name = "tablespacename"]; - void clear_tablespacename(); - const std::string& tablespacename() const; - template - void set_tablespacename(ArgT0&& arg0, ArgT... args); - std::string* mutable_tablespacename(); - PROTOBUF_NODISCARD std::string* release_tablespacename(); - void set_allocated_tablespacename(std::string* tablespacename); private: - const std::string& _internal_tablespacename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_tablespacename(const std::string& value); - std::string* _internal_mutable_tablespacename(); + const ::pg_query::Constraint& _internal_constraint() const; + ::pg_query::Constraint* _internal_mutable_constraint(); + + public: + // .pg_query.CreateTableSpaceStmt create_table_space_stmt = 140 [json_name = "CreateTableSpaceStmt"]; + bool has_create_table_space_stmt() const; + private: + bool _internal_has_create_table_space_stmt() const; + public: + void clear_create_table_space_stmt() ; + const ::pg_query::CreateTableSpaceStmt& create_table_space_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateTableSpaceStmt* release_create_table_space_stmt(); + ::pg_query::CreateTableSpaceStmt* mutable_create_table_space_stmt(); + void set_allocated_create_table_space_stmt(::pg_query::CreateTableSpaceStmt* value); + void unsafe_arena_set_allocated_create_table_space_stmt(::pg_query::CreateTableSpaceStmt* value); + ::pg_query::CreateTableSpaceStmt* unsafe_arena_release_create_table_space_stmt(); - // bool is_reset = 3 [json_name = "isReset"]; - void clear_is_reset(); - bool is_reset() const; - void set_is_reset(bool value); private: - bool _internal_is_reset() const; - void _internal_set_is_reset(bool value); + const ::pg_query::CreateTableSpaceStmt& _internal_create_table_space_stmt() const; + ::pg_query::CreateTableSpaceStmt* _internal_mutable_create_table_space_stmt(); + public: + // .pg_query.DropTableSpaceStmt drop_table_space_stmt = 141 [json_name = "DropTableSpaceStmt"]; + bool has_drop_table_space_stmt() const; + private: + bool _internal_has_drop_table_space_stmt() const; - // @@protoc_insertion_point(class_scope:pg_query.AlterTableSpaceOptionsStmt) - private: - class _Internal; + public: + void clear_drop_table_space_stmt() ; + const ::pg_query::DropTableSpaceStmt& drop_table_space_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DropTableSpaceStmt* release_drop_table_space_stmt(); + ::pg_query::DropTableSpaceStmt* mutable_drop_table_space_stmt(); + void set_allocated_drop_table_space_stmt(::pg_query::DropTableSpaceStmt* value); + void unsafe_arena_set_allocated_drop_table_space_stmt(::pg_query::DropTableSpaceStmt* value); + ::pg_query::DropTableSpaceStmt* unsafe_arena_release_drop_table_space_stmt(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr tablespacename_; - bool is_reset_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::DropTableSpaceStmt& _internal_drop_table_space_stmt() const; + ::pg_query::DropTableSpaceStmt* _internal_mutable_drop_table_space_stmt(); -class AlterTableMoveAllStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterTableMoveAllStmt) */ { - public: - inline AlterTableMoveAllStmt() : AlterTableMoveAllStmt(nullptr) {} - ~AlterTableMoveAllStmt() override; - explicit PROTOBUF_CONSTEXPR AlterTableMoveAllStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.AlterTableSpaceOptionsStmt alter_table_space_options_stmt = 142 [json_name = "AlterTableSpaceOptionsStmt"]; + bool has_alter_table_space_options_stmt() const; + private: + bool _internal_has_alter_table_space_options_stmt() const; - AlterTableMoveAllStmt(const AlterTableMoveAllStmt& from); - AlterTableMoveAllStmt(AlterTableMoveAllStmt&& from) noexcept - : AlterTableMoveAllStmt() { - *this = ::std::move(from); - } + public: + void clear_alter_table_space_options_stmt() ; + const ::pg_query::AlterTableSpaceOptionsStmt& alter_table_space_options_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterTableSpaceOptionsStmt* release_alter_table_space_options_stmt(); + ::pg_query::AlterTableSpaceOptionsStmt* mutable_alter_table_space_options_stmt(); + void set_allocated_alter_table_space_options_stmt(::pg_query::AlterTableSpaceOptionsStmt* value); + void unsafe_arena_set_allocated_alter_table_space_options_stmt(::pg_query::AlterTableSpaceOptionsStmt* value); + ::pg_query::AlterTableSpaceOptionsStmt* unsafe_arena_release_alter_table_space_options_stmt(); - inline AlterTableMoveAllStmt& operator=(const AlterTableMoveAllStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterTableMoveAllStmt& operator=(AlterTableMoveAllStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::AlterTableSpaceOptionsStmt& _internal_alter_table_space_options_stmt() const; + ::pg_query::AlterTableSpaceOptionsStmt* _internal_mutable_alter_table_space_options_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterTableMoveAllStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterTableMoveAllStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterTableMoveAllStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 157; + public: + // .pg_query.AlterTableMoveAllStmt alter_table_move_all_stmt = 143 [json_name = "AlterTableMoveAllStmt"]; + bool has_alter_table_move_all_stmt() const; + private: + bool _internal_has_alter_table_move_all_stmt() const; - friend void swap(AlterTableMoveAllStmt& a, AlterTableMoveAllStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterTableMoveAllStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterTableMoveAllStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_alter_table_move_all_stmt() ; + const ::pg_query::AlterTableMoveAllStmt& alter_table_move_all_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterTableMoveAllStmt* release_alter_table_move_all_stmt(); + ::pg_query::AlterTableMoveAllStmt* mutable_alter_table_move_all_stmt(); + void set_allocated_alter_table_move_all_stmt(::pg_query::AlterTableMoveAllStmt* value); + void unsafe_arena_set_allocated_alter_table_move_all_stmt(::pg_query::AlterTableMoveAllStmt* value); + ::pg_query::AlterTableMoveAllStmt* unsafe_arena_release_alter_table_move_all_stmt(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::AlterTableMoveAllStmt& _internal_alter_table_move_all_stmt() const; + ::pg_query::AlterTableMoveAllStmt* _internal_mutable_alter_table_move_all_stmt(); - AlterTableMoveAllStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterTableMoveAllStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterTableMoveAllStmt& from) { - AlterTableMoveAllStmt::MergeImpl(*this, from); - } + public: + // .pg_query.CreateExtensionStmt create_extension_stmt = 144 [json_name = "CreateExtensionStmt"]; + bool has_create_extension_stmt() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_create_extension_stmt() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_create_extension_stmt() ; + const ::pg_query::CreateExtensionStmt& create_extension_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateExtensionStmt* release_create_extension_stmt(); + ::pg_query::CreateExtensionStmt* mutable_create_extension_stmt(); + void set_allocated_create_extension_stmt(::pg_query::CreateExtensionStmt* value); + void unsafe_arena_set_allocated_create_extension_stmt(::pg_query::CreateExtensionStmt* value); + ::pg_query::CreateExtensionStmt* unsafe_arena_release_create_extension_stmt(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::CreateExtensionStmt& _internal_create_extension_stmt() const; + ::pg_query::CreateExtensionStmt* _internal_mutable_create_extension_stmt(); + public: + // .pg_query.AlterExtensionStmt alter_extension_stmt = 145 [json_name = "AlterExtensionStmt"]; + bool has_alter_extension_stmt() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterTableMoveAllStmt* other); + bool _internal_has_alter_extension_stmt() const; + + public: + void clear_alter_extension_stmt() ; + const ::pg_query::AlterExtensionStmt& alter_extension_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterExtensionStmt* release_alter_extension_stmt(); + ::pg_query::AlterExtensionStmt* mutable_alter_extension_stmt(); + void set_allocated_alter_extension_stmt(::pg_query::AlterExtensionStmt* value); + void unsafe_arena_set_allocated_alter_extension_stmt(::pg_query::AlterExtensionStmt* value); + ::pg_query::AlterExtensionStmt* unsafe_arena_release_alter_extension_stmt(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterTableMoveAllStmt"; - } - protected: - explicit AlterTableMoveAllStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::AlterExtensionStmt& _internal_alter_extension_stmt() const; + ::pg_query::AlterExtensionStmt* _internal_mutable_alter_extension_stmt(); + public: + // .pg_query.AlterExtensionContentsStmt alter_extension_contents_stmt = 146 [json_name = "AlterExtensionContentsStmt"]; + bool has_alter_extension_contents_stmt() const; + private: + bool _internal_has_alter_extension_contents_stmt() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_alter_extension_contents_stmt() ; + const ::pg_query::AlterExtensionContentsStmt& alter_extension_contents_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterExtensionContentsStmt* release_alter_extension_contents_stmt(); + ::pg_query::AlterExtensionContentsStmt* mutable_alter_extension_contents_stmt(); + void set_allocated_alter_extension_contents_stmt(::pg_query::AlterExtensionContentsStmt* value); + void unsafe_arena_set_allocated_alter_extension_contents_stmt(::pg_query::AlterExtensionContentsStmt* value); + ::pg_query::AlterExtensionContentsStmt* unsafe_arena_release_alter_extension_contents_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::AlterExtensionContentsStmt& _internal_alter_extension_contents_stmt() const; + ::pg_query::AlterExtensionContentsStmt* _internal_mutable_alter_extension_contents_stmt(); - // nested types ---------------------------------------------------- + public: + // .pg_query.CreateFdwStmt create_fdw_stmt = 147 [json_name = "CreateFdwStmt"]; + bool has_create_fdw_stmt() const; + private: + bool _internal_has_create_fdw_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_create_fdw_stmt() ; + const ::pg_query::CreateFdwStmt& create_fdw_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateFdwStmt* release_create_fdw_stmt(); + ::pg_query::CreateFdwStmt* mutable_create_fdw_stmt(); + void set_allocated_create_fdw_stmt(::pg_query::CreateFdwStmt* value); + void unsafe_arena_set_allocated_create_fdw_stmt(::pg_query::CreateFdwStmt* value); + ::pg_query::CreateFdwStmt* unsafe_arena_release_create_fdw_stmt(); - enum : int { - kRolesFieldNumber = 3, - kOrigTablespacenameFieldNumber = 1, - kNewTablespacenameFieldNumber = 4, - kObjtypeFieldNumber = 2, - kNowaitFieldNumber = 5, - }; - // repeated .pg_query.Node roles = 3 [json_name = "roles"]; - int roles_size() const; private: - int _internal_roles_size() const; + const ::pg_query::CreateFdwStmt& _internal_create_fdw_stmt() const; + ::pg_query::CreateFdwStmt* _internal_mutable_create_fdw_stmt(); + public: - void clear_roles(); - ::pg_query::Node* mutable_roles(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_roles(); + // .pg_query.AlterFdwStmt alter_fdw_stmt = 148 [json_name = "AlterFdwStmt"]; + bool has_alter_fdw_stmt() const; private: - const ::pg_query::Node& _internal_roles(int index) const; - ::pg_query::Node* _internal_add_roles(); + bool _internal_has_alter_fdw_stmt() const; + public: - const ::pg_query::Node& roles(int index) const; - ::pg_query::Node* add_roles(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - roles() const; + void clear_alter_fdw_stmt() ; + const ::pg_query::AlterFdwStmt& alter_fdw_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterFdwStmt* release_alter_fdw_stmt(); + ::pg_query::AlterFdwStmt* mutable_alter_fdw_stmt(); + void set_allocated_alter_fdw_stmt(::pg_query::AlterFdwStmt* value); + void unsafe_arena_set_allocated_alter_fdw_stmt(::pg_query::AlterFdwStmt* value); + ::pg_query::AlterFdwStmt* unsafe_arena_release_alter_fdw_stmt(); - // string orig_tablespacename = 1 [json_name = "orig_tablespacename"]; - void clear_orig_tablespacename(); - const std::string& orig_tablespacename() const; - template - void set_orig_tablespacename(ArgT0&& arg0, ArgT... args); - std::string* mutable_orig_tablespacename(); - PROTOBUF_NODISCARD std::string* release_orig_tablespacename(); - void set_allocated_orig_tablespacename(std::string* orig_tablespacename); private: - const std::string& _internal_orig_tablespacename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_orig_tablespacename(const std::string& value); - std::string* _internal_mutable_orig_tablespacename(); + const ::pg_query::AlterFdwStmt& _internal_alter_fdw_stmt() const; + ::pg_query::AlterFdwStmt* _internal_mutable_alter_fdw_stmt(); + + public: + // .pg_query.CreateForeignServerStmt create_foreign_server_stmt = 149 [json_name = "CreateForeignServerStmt"]; + bool has_create_foreign_server_stmt() const; + private: + bool _internal_has_create_foreign_server_stmt() const; + public: + void clear_create_foreign_server_stmt() ; + const ::pg_query::CreateForeignServerStmt& create_foreign_server_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateForeignServerStmt* release_create_foreign_server_stmt(); + ::pg_query::CreateForeignServerStmt* mutable_create_foreign_server_stmt(); + void set_allocated_create_foreign_server_stmt(::pg_query::CreateForeignServerStmt* value); + void unsafe_arena_set_allocated_create_foreign_server_stmt(::pg_query::CreateForeignServerStmt* value); + ::pg_query::CreateForeignServerStmt* unsafe_arena_release_create_foreign_server_stmt(); - // string new_tablespacename = 4 [json_name = "new_tablespacename"]; - void clear_new_tablespacename(); - const std::string& new_tablespacename() const; - template - void set_new_tablespacename(ArgT0&& arg0, ArgT... args); - std::string* mutable_new_tablespacename(); - PROTOBUF_NODISCARD std::string* release_new_tablespacename(); - void set_allocated_new_tablespacename(std::string* new_tablespacename); private: - const std::string& _internal_new_tablespacename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_new_tablespacename(const std::string& value); - std::string* _internal_mutable_new_tablespacename(); + const ::pg_query::CreateForeignServerStmt& _internal_create_foreign_server_stmt() const; + ::pg_query::CreateForeignServerStmt* _internal_mutable_create_foreign_server_stmt(); + public: + // .pg_query.AlterForeignServerStmt alter_foreign_server_stmt = 150 [json_name = "AlterForeignServerStmt"]; + bool has_alter_foreign_server_stmt() const; + private: + bool _internal_has_alter_foreign_server_stmt() const; + + public: + void clear_alter_foreign_server_stmt() ; + const ::pg_query::AlterForeignServerStmt& alter_foreign_server_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterForeignServerStmt* release_alter_foreign_server_stmt(); + ::pg_query::AlterForeignServerStmt* mutable_alter_foreign_server_stmt(); + void set_allocated_alter_foreign_server_stmt(::pg_query::AlterForeignServerStmt* value); + void unsafe_arena_set_allocated_alter_foreign_server_stmt(::pg_query::AlterForeignServerStmt* value); + ::pg_query::AlterForeignServerStmt* unsafe_arena_release_alter_foreign_server_stmt(); - // .pg_query.ObjectType objtype = 2 [json_name = "objtype"]; - void clear_objtype(); - ::pg_query::ObjectType objtype() const; - void set_objtype(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_objtype() const; - void _internal_set_objtype(::pg_query::ObjectType value); + const ::pg_query::AlterForeignServerStmt& _internal_alter_foreign_server_stmt() const; + ::pg_query::AlterForeignServerStmt* _internal_mutable_alter_foreign_server_stmt(); + public: + // .pg_query.CreateForeignTableStmt create_foreign_table_stmt = 151 [json_name = "CreateForeignTableStmt"]; + bool has_create_foreign_table_stmt() const; + private: + bool _internal_has_create_foreign_table_stmt() const; + + public: + void clear_create_foreign_table_stmt() ; + const ::pg_query::CreateForeignTableStmt& create_foreign_table_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateForeignTableStmt* release_create_foreign_table_stmt(); + ::pg_query::CreateForeignTableStmt* mutable_create_foreign_table_stmt(); + void set_allocated_create_foreign_table_stmt(::pg_query::CreateForeignTableStmt* value); + void unsafe_arena_set_allocated_create_foreign_table_stmt(::pg_query::CreateForeignTableStmt* value); + ::pg_query::CreateForeignTableStmt* unsafe_arena_release_create_foreign_table_stmt(); - // bool nowait = 5 [json_name = "nowait"]; - void clear_nowait(); - bool nowait() const; - void set_nowait(bool value); private: - bool _internal_nowait() const; - void _internal_set_nowait(bool value); + const ::pg_query::CreateForeignTableStmt& _internal_create_foreign_table_stmt() const; + ::pg_query::CreateForeignTableStmt* _internal_mutable_create_foreign_table_stmt(); + public: + // .pg_query.CreateUserMappingStmt create_user_mapping_stmt = 152 [json_name = "CreateUserMappingStmt"]; + bool has_create_user_mapping_stmt() const; + private: + bool _internal_has_create_user_mapping_stmt() const; - // @@protoc_insertion_point(class_scope:pg_query.AlterTableMoveAllStmt) - private: - class _Internal; + public: + void clear_create_user_mapping_stmt() ; + const ::pg_query::CreateUserMappingStmt& create_user_mapping_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateUserMappingStmt* release_create_user_mapping_stmt(); + ::pg_query::CreateUserMappingStmt* mutable_create_user_mapping_stmt(); + void set_allocated_create_user_mapping_stmt(::pg_query::CreateUserMappingStmt* value); + void unsafe_arena_set_allocated_create_user_mapping_stmt(::pg_query::CreateUserMappingStmt* value); + ::pg_query::CreateUserMappingStmt* unsafe_arena_release_create_user_mapping_stmt(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > roles_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr orig_tablespacename_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_tablespacename_; - int objtype_; - bool nowait_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::CreateUserMappingStmt& _internal_create_user_mapping_stmt() const; + ::pg_query::CreateUserMappingStmt* _internal_mutable_create_user_mapping_stmt(); -class SecLabelStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SecLabelStmt) */ { - public: - inline SecLabelStmt() : SecLabelStmt(nullptr) {} - ~SecLabelStmt() override; - explicit PROTOBUF_CONSTEXPR SecLabelStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.AlterUserMappingStmt alter_user_mapping_stmt = 153 [json_name = "AlterUserMappingStmt"]; + bool has_alter_user_mapping_stmt() const; + private: + bool _internal_has_alter_user_mapping_stmt() const; - SecLabelStmt(const SecLabelStmt& from); - SecLabelStmt(SecLabelStmt&& from) noexcept - : SecLabelStmt() { - *this = ::std::move(from); - } + public: + void clear_alter_user_mapping_stmt() ; + const ::pg_query::AlterUserMappingStmt& alter_user_mapping_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterUserMappingStmt* release_alter_user_mapping_stmt(); + ::pg_query::AlterUserMappingStmt* mutable_alter_user_mapping_stmt(); + void set_allocated_alter_user_mapping_stmt(::pg_query::AlterUserMappingStmt* value); + void unsafe_arena_set_allocated_alter_user_mapping_stmt(::pg_query::AlterUserMappingStmt* value); + ::pg_query::AlterUserMappingStmt* unsafe_arena_release_alter_user_mapping_stmt(); - inline SecLabelStmt& operator=(const SecLabelStmt& from) { - CopyFrom(from); - return *this; - } - inline SecLabelStmt& operator=(SecLabelStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::AlterUserMappingStmt& _internal_alter_user_mapping_stmt() const; + ::pg_query::AlterUserMappingStmt* _internal_mutable_alter_user_mapping_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const SecLabelStmt& default_instance() { - return *internal_default_instance(); - } - static inline const SecLabelStmt* internal_default_instance() { - return reinterpret_cast( - &_SecLabelStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 158; + public: + // .pg_query.DropUserMappingStmt drop_user_mapping_stmt = 154 [json_name = "DropUserMappingStmt"]; + bool has_drop_user_mapping_stmt() const; + private: + bool _internal_has_drop_user_mapping_stmt() const; - friend void swap(SecLabelStmt& a, SecLabelStmt& b) { - a.Swap(&b); - } - inline void Swap(SecLabelStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(SecLabelStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_drop_user_mapping_stmt() ; + const ::pg_query::DropUserMappingStmt& drop_user_mapping_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DropUserMappingStmt* release_drop_user_mapping_stmt(); + ::pg_query::DropUserMappingStmt* mutable_drop_user_mapping_stmt(); + void set_allocated_drop_user_mapping_stmt(::pg_query::DropUserMappingStmt* value); + void unsafe_arena_set_allocated_drop_user_mapping_stmt(::pg_query::DropUserMappingStmt* value); + ::pg_query::DropUserMappingStmt* unsafe_arena_release_drop_user_mapping_stmt(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::DropUserMappingStmt& _internal_drop_user_mapping_stmt() const; + ::pg_query::DropUserMappingStmt* _internal_mutable_drop_user_mapping_stmt(); - SecLabelStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SecLabelStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SecLabelStmt& from) { - SecLabelStmt::MergeImpl(*this, from); - } + public: + // .pg_query.ImportForeignSchemaStmt import_foreign_schema_stmt = 155 [json_name = "ImportForeignSchemaStmt"]; + bool has_import_foreign_schema_stmt() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + bool _internal_has_import_foreign_schema_stmt() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_import_foreign_schema_stmt() ; + const ::pg_query::ImportForeignSchemaStmt& import_foreign_schema_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ImportForeignSchemaStmt* release_import_foreign_schema_stmt(); + ::pg_query::ImportForeignSchemaStmt* mutable_import_foreign_schema_stmt(); + void set_allocated_import_foreign_schema_stmt(::pg_query::ImportForeignSchemaStmt* value); + void unsafe_arena_set_allocated_import_foreign_schema_stmt(::pg_query::ImportForeignSchemaStmt* value); + ::pg_query::ImportForeignSchemaStmt* unsafe_arena_release_import_foreign_schema_stmt(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SecLabelStmt* other); + const ::pg_query::ImportForeignSchemaStmt& _internal_import_foreign_schema_stmt() const; + ::pg_query::ImportForeignSchemaStmt* _internal_mutable_import_foreign_schema_stmt(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SecLabelStmt"; - } - protected: - explicit SecLabelStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.CreatePolicyStmt create_policy_stmt = 156 [json_name = "CreatePolicyStmt"]; + bool has_create_policy_stmt() const; + private: + bool _internal_has_create_policy_stmt() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_create_policy_stmt() ; + const ::pg_query::CreatePolicyStmt& create_policy_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreatePolicyStmt* release_create_policy_stmt(); + ::pg_query::CreatePolicyStmt* mutable_create_policy_stmt(); + void set_allocated_create_policy_stmt(::pg_query::CreatePolicyStmt* value); + void unsafe_arena_set_allocated_create_policy_stmt(::pg_query::CreatePolicyStmt* value); + ::pg_query::CreatePolicyStmt* unsafe_arena_release_create_policy_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::CreatePolicyStmt& _internal_create_policy_stmt() const; + ::pg_query::CreatePolicyStmt* _internal_mutable_create_policy_stmt(); - // nested types ---------------------------------------------------- + public: + // .pg_query.AlterPolicyStmt alter_policy_stmt = 157 [json_name = "AlterPolicyStmt"]; + bool has_alter_policy_stmt() const; + private: + bool _internal_has_alter_policy_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_alter_policy_stmt() ; + const ::pg_query::AlterPolicyStmt& alter_policy_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterPolicyStmt* release_alter_policy_stmt(); + ::pg_query::AlterPolicyStmt* mutable_alter_policy_stmt(); + void set_allocated_alter_policy_stmt(::pg_query::AlterPolicyStmt* value); + void unsafe_arena_set_allocated_alter_policy_stmt(::pg_query::AlterPolicyStmt* value); + ::pg_query::AlterPolicyStmt* unsafe_arena_release_alter_policy_stmt(); - enum : int { - kProviderFieldNumber = 3, - kLabelFieldNumber = 4, - kObjectFieldNumber = 2, - kObjtypeFieldNumber = 1, - }; - // string provider = 3 [json_name = "provider"]; - void clear_provider(); - const std::string& provider() const; - template - void set_provider(ArgT0&& arg0, ArgT... args); - std::string* mutable_provider(); - PROTOBUF_NODISCARD std::string* release_provider(); - void set_allocated_provider(std::string* provider); private: - const std::string& _internal_provider() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_provider(const std::string& value); - std::string* _internal_mutable_provider(); - public: + const ::pg_query::AlterPolicyStmt& _internal_alter_policy_stmt() const; + ::pg_query::AlterPolicyStmt* _internal_mutable_alter_policy_stmt(); - // string label = 4 [json_name = "label"]; - void clear_label(); - const std::string& label() const; - template - void set_label(ArgT0&& arg0, ArgT... args); - std::string* mutable_label(); - PROTOBUF_NODISCARD std::string* release_label(); - void set_allocated_label(std::string* label); + public: + // .pg_query.CreateAmStmt create_am_stmt = 158 [json_name = "CreateAmStmt"]; + bool has_create_am_stmt() const; private: - const std::string& _internal_label() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_label(const std::string& value); - std::string* _internal_mutable_label(); + bool _internal_has_create_am_stmt() const; + public: + void clear_create_am_stmt() ; + const ::pg_query::CreateAmStmt& create_am_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateAmStmt* release_create_am_stmt(); + ::pg_query::CreateAmStmt* mutable_create_am_stmt(); + void set_allocated_create_am_stmt(::pg_query::CreateAmStmt* value); + void unsafe_arena_set_allocated_create_am_stmt(::pg_query::CreateAmStmt* value); + ::pg_query::CreateAmStmt* unsafe_arena_release_create_am_stmt(); - // .pg_query.Node object = 2 [json_name = "object"]; - bool has_object() const; private: - bool _internal_has_object() const; + const ::pg_query::CreateAmStmt& _internal_create_am_stmt() const; + ::pg_query::CreateAmStmt* _internal_mutable_create_am_stmt(); + public: - void clear_object(); - const ::pg_query::Node& object() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_object(); - ::pg_query::Node* mutable_object(); - void set_allocated_object(::pg_query::Node* object); + // .pg_query.CreateTrigStmt create_trig_stmt = 159 [json_name = "CreateTrigStmt"]; + bool has_create_trig_stmt() const; private: - const ::pg_query::Node& _internal_object() const; - ::pg_query::Node* _internal_mutable_object(); + bool _internal_has_create_trig_stmt() const; + public: - void unsafe_arena_set_allocated_object( - ::pg_query::Node* object); - ::pg_query::Node* unsafe_arena_release_object(); + void clear_create_trig_stmt() ; + const ::pg_query::CreateTrigStmt& create_trig_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateTrigStmt* release_create_trig_stmt(); + ::pg_query::CreateTrigStmt* mutable_create_trig_stmt(); + void set_allocated_create_trig_stmt(::pg_query::CreateTrigStmt* value); + void unsafe_arena_set_allocated_create_trig_stmt(::pg_query::CreateTrigStmt* value); + ::pg_query::CreateTrigStmt* unsafe_arena_release_create_trig_stmt(); - // .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; - void clear_objtype(); - ::pg_query::ObjectType objtype() const; - void set_objtype(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_objtype() const; - void _internal_set_objtype(::pg_query::ObjectType value); - public: + const ::pg_query::CreateTrigStmt& _internal_create_trig_stmt() const; + ::pg_query::CreateTrigStmt* _internal_mutable_create_trig_stmt(); - // @@protoc_insertion_point(class_scope:pg_query.SecLabelStmt) - private: - class _Internal; + public: + // .pg_query.CreateEventTrigStmt create_event_trig_stmt = 160 [json_name = "CreateEventTrigStmt"]; + bool has_create_event_trig_stmt() const; + private: + bool _internal_has_create_event_trig_stmt() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr provider_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr label_; - ::pg_query::Node* object_; - int objtype_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_create_event_trig_stmt() ; + const ::pg_query::CreateEventTrigStmt& create_event_trig_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateEventTrigStmt* release_create_event_trig_stmt(); + ::pg_query::CreateEventTrigStmt* mutable_create_event_trig_stmt(); + void set_allocated_create_event_trig_stmt(::pg_query::CreateEventTrigStmt* value); + void unsafe_arena_set_allocated_create_event_trig_stmt(::pg_query::CreateEventTrigStmt* value); + ::pg_query::CreateEventTrigStmt* unsafe_arena_release_create_event_trig_stmt(); -class CreateForeignTableStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateForeignTableStmt) */ { - public: - inline CreateForeignTableStmt() : CreateForeignTableStmt(nullptr) {} - ~CreateForeignTableStmt() override; - explicit PROTOBUF_CONSTEXPR CreateForeignTableStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::CreateEventTrigStmt& _internal_create_event_trig_stmt() const; + ::pg_query::CreateEventTrigStmt* _internal_mutable_create_event_trig_stmt(); - CreateForeignTableStmt(const CreateForeignTableStmt& from); - CreateForeignTableStmt(CreateForeignTableStmt&& from) noexcept - : CreateForeignTableStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.AlterEventTrigStmt alter_event_trig_stmt = 161 [json_name = "AlterEventTrigStmt"]; + bool has_alter_event_trig_stmt() const; + private: + bool _internal_has_alter_event_trig_stmt() const; - inline CreateForeignTableStmt& operator=(const CreateForeignTableStmt& from) { - CopyFrom(from); - return *this; - } - inline CreateForeignTableStmt& operator=(CreateForeignTableStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_alter_event_trig_stmt() ; + const ::pg_query::AlterEventTrigStmt& alter_event_trig_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterEventTrigStmt* release_alter_event_trig_stmt(); + ::pg_query::AlterEventTrigStmt* mutable_alter_event_trig_stmt(); + void set_allocated_alter_event_trig_stmt(::pg_query::AlterEventTrigStmt* value); + void unsafe_arena_set_allocated_alter_event_trig_stmt(::pg_query::AlterEventTrigStmt* value); + ::pg_query::AlterEventTrigStmt* unsafe_arena_release_alter_event_trig_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CreateForeignTableStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CreateForeignTableStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateForeignTableStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 159; + private: + const ::pg_query::AlterEventTrigStmt& _internal_alter_event_trig_stmt() const; + ::pg_query::AlterEventTrigStmt* _internal_mutable_alter_event_trig_stmt(); - friend void swap(CreateForeignTableStmt& a, CreateForeignTableStmt& b) { - a.Swap(&b); - } - inline void Swap(CreateForeignTableStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CreateForeignTableStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.CreatePLangStmt create_plang_stmt = 162 [json_name = "CreatePLangStmt"]; + bool has_create_plang_stmt() const; + private: + bool _internal_has_create_plang_stmt() const; - // implements Message ---------------------------------------------- + public: + void clear_create_plang_stmt() ; + const ::pg_query::CreatePLangStmt& create_plang_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreatePLangStmt* release_create_plang_stmt(); + ::pg_query::CreatePLangStmt* mutable_create_plang_stmt(); + void set_allocated_create_plang_stmt(::pg_query::CreatePLangStmt* value); + void unsafe_arena_set_allocated_create_plang_stmt(::pg_query::CreatePLangStmt* value); + ::pg_query::CreatePLangStmt* unsafe_arena_release_create_plang_stmt(); - CreateForeignTableStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateForeignTableStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateForeignTableStmt& from) { - CreateForeignTableStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::CreatePLangStmt& _internal_create_plang_stmt() const; + ::pg_query::CreatePLangStmt* _internal_mutable_create_plang_stmt(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.CreateRoleStmt create_role_stmt = 163 [json_name = "CreateRoleStmt"]; + bool has_create_role_stmt() const; + private: + bool _internal_has_create_role_stmt() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_create_role_stmt() ; + const ::pg_query::CreateRoleStmt& create_role_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateRoleStmt* release_create_role_stmt(); + ::pg_query::CreateRoleStmt* mutable_create_role_stmt(); + void set_allocated_create_role_stmt(::pg_query::CreateRoleStmt* value); + void unsafe_arena_set_allocated_create_role_stmt(::pg_query::CreateRoleStmt* value); + ::pg_query::CreateRoleStmt* unsafe_arena_release_create_role_stmt(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateForeignTableStmt* other); + const ::pg_query::CreateRoleStmt& _internal_create_role_stmt() const; + ::pg_query::CreateRoleStmt* _internal_mutable_create_role_stmt(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateForeignTableStmt"; - } - protected: - explicit CreateForeignTableStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.AlterRoleStmt alter_role_stmt = 164 [json_name = "AlterRoleStmt"]; + bool has_alter_role_stmt() const; + private: + bool _internal_has_alter_role_stmt() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_alter_role_stmt() ; + const ::pg_query::AlterRoleStmt& alter_role_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterRoleStmt* release_alter_role_stmt(); + ::pg_query::AlterRoleStmt* mutable_alter_role_stmt(); + void set_allocated_alter_role_stmt(::pg_query::AlterRoleStmt* value); + void unsafe_arena_set_allocated_alter_role_stmt(::pg_query::AlterRoleStmt* value); + ::pg_query::AlterRoleStmt* unsafe_arena_release_alter_role_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::AlterRoleStmt& _internal_alter_role_stmt() const; + ::pg_query::AlterRoleStmt* _internal_mutable_alter_role_stmt(); - // nested types ---------------------------------------------------- + public: + // .pg_query.AlterRoleSetStmt alter_role_set_stmt = 165 [json_name = "AlterRoleSetStmt"]; + bool has_alter_role_set_stmt() const; + private: + bool _internal_has_alter_role_set_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_alter_role_set_stmt() ; + const ::pg_query::AlterRoleSetStmt& alter_role_set_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterRoleSetStmt* release_alter_role_set_stmt(); + ::pg_query::AlterRoleSetStmt* mutable_alter_role_set_stmt(); + void set_allocated_alter_role_set_stmt(::pg_query::AlterRoleSetStmt* value); + void unsafe_arena_set_allocated_alter_role_set_stmt(::pg_query::AlterRoleSetStmt* value); + ::pg_query::AlterRoleSetStmt* unsafe_arena_release_alter_role_set_stmt(); - enum : int { - kOptionsFieldNumber = 3, - kServernameFieldNumber = 2, - kBaseStmtFieldNumber = 1, - }; - // repeated .pg_query.Node options = 3 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::AlterRoleSetStmt& _internal_alter_role_set_stmt() const; + ::pg_query::AlterRoleSetStmt* _internal_mutable_alter_role_set_stmt(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.DropRoleStmt drop_role_stmt = 166 [json_name = "DropRoleStmt"]; + bool has_drop_role_stmt() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + bool _internal_has_drop_role_stmt() const; + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + void clear_drop_role_stmt() ; + const ::pg_query::DropRoleStmt& drop_role_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DropRoleStmt* release_drop_role_stmt(); + ::pg_query::DropRoleStmt* mutable_drop_role_stmt(); + void set_allocated_drop_role_stmt(::pg_query::DropRoleStmt* value); + void unsafe_arena_set_allocated_drop_role_stmt(::pg_query::DropRoleStmt* value); + ::pg_query::DropRoleStmt* unsafe_arena_release_drop_role_stmt(); - // string servername = 2 [json_name = "servername"]; - void clear_servername(); - const std::string& servername() const; - template - void set_servername(ArgT0&& arg0, ArgT... args); - std::string* mutable_servername(); - PROTOBUF_NODISCARD std::string* release_servername(); - void set_allocated_servername(std::string* servername); private: - const std::string& _internal_servername() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_servername(const std::string& value); - std::string* _internal_mutable_servername(); - public: + const ::pg_query::DropRoleStmt& _internal_drop_role_stmt() const; + ::pg_query::DropRoleStmt* _internal_mutable_drop_role_stmt(); - // .pg_query.CreateStmt base_stmt = 1 [json_name = "base"]; - bool has_base_stmt() const; + public: + // .pg_query.CreateSeqStmt create_seq_stmt = 167 [json_name = "CreateSeqStmt"]; + bool has_create_seq_stmt() const; private: - bool _internal_has_base_stmt() const; + bool _internal_has_create_seq_stmt() const; + public: - void clear_base_stmt(); - const ::pg_query::CreateStmt& base_stmt() const; - PROTOBUF_NODISCARD ::pg_query::CreateStmt* release_base_stmt(); - ::pg_query::CreateStmt* mutable_base_stmt(); - void set_allocated_base_stmt(::pg_query::CreateStmt* base_stmt); + void clear_create_seq_stmt() ; + const ::pg_query::CreateSeqStmt& create_seq_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateSeqStmt* release_create_seq_stmt(); + ::pg_query::CreateSeqStmt* mutable_create_seq_stmt(); + void set_allocated_create_seq_stmt(::pg_query::CreateSeqStmt* value); + void unsafe_arena_set_allocated_create_seq_stmt(::pg_query::CreateSeqStmt* value); + ::pg_query::CreateSeqStmt* unsafe_arena_release_create_seq_stmt(); + private: - const ::pg_query::CreateStmt& _internal_base_stmt() const; - ::pg_query::CreateStmt* _internal_mutable_base_stmt(); + const ::pg_query::CreateSeqStmt& _internal_create_seq_stmt() const; + ::pg_query::CreateSeqStmt* _internal_mutable_create_seq_stmt(); + public: - void unsafe_arena_set_allocated_base_stmt( - ::pg_query::CreateStmt* base_stmt); - ::pg_query::CreateStmt* unsafe_arena_release_base_stmt(); + // .pg_query.AlterSeqStmt alter_seq_stmt = 168 [json_name = "AlterSeqStmt"]; + bool has_alter_seq_stmt() const; + private: + bool _internal_has_alter_seq_stmt() const; - // @@protoc_insertion_point(class_scope:pg_query.CreateForeignTableStmt) - private: - class _Internal; + public: + void clear_alter_seq_stmt() ; + const ::pg_query::AlterSeqStmt& alter_seq_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterSeqStmt* release_alter_seq_stmt(); + ::pg_query::AlterSeqStmt* mutable_alter_seq_stmt(); + void set_allocated_alter_seq_stmt(::pg_query::AlterSeqStmt* value); + void unsafe_arena_set_allocated_alter_seq_stmt(::pg_query::AlterSeqStmt* value); + ::pg_query::AlterSeqStmt* unsafe_arena_release_alter_seq_stmt(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr servername_; - ::pg_query::CreateStmt* base_stmt_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::AlterSeqStmt& _internal_alter_seq_stmt() const; + ::pg_query::AlterSeqStmt* _internal_mutable_alter_seq_stmt(); -class ImportForeignSchemaStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ImportForeignSchemaStmt) */ { - public: - inline ImportForeignSchemaStmt() : ImportForeignSchemaStmt(nullptr) {} - ~ImportForeignSchemaStmt() override; - explicit PROTOBUF_CONSTEXPR ImportForeignSchemaStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.DefineStmt define_stmt = 169 [json_name = "DefineStmt"]; + bool has_define_stmt() const; + private: + bool _internal_has_define_stmt() const; - ImportForeignSchemaStmt(const ImportForeignSchemaStmt& from); - ImportForeignSchemaStmt(ImportForeignSchemaStmt&& from) noexcept - : ImportForeignSchemaStmt() { - *this = ::std::move(from); - } + public: + void clear_define_stmt() ; + const ::pg_query::DefineStmt& define_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DefineStmt* release_define_stmt(); + ::pg_query::DefineStmt* mutable_define_stmt(); + void set_allocated_define_stmt(::pg_query::DefineStmt* value); + void unsafe_arena_set_allocated_define_stmt(::pg_query::DefineStmt* value); + ::pg_query::DefineStmt* unsafe_arena_release_define_stmt(); - inline ImportForeignSchemaStmt& operator=(const ImportForeignSchemaStmt& from) { - CopyFrom(from); - return *this; - } - inline ImportForeignSchemaStmt& operator=(ImportForeignSchemaStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::DefineStmt& _internal_define_stmt() const; + ::pg_query::DefineStmt* _internal_mutable_define_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const ImportForeignSchemaStmt& default_instance() { - return *internal_default_instance(); - } - static inline const ImportForeignSchemaStmt* internal_default_instance() { - return reinterpret_cast( - &_ImportForeignSchemaStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 160; + public: + // .pg_query.CreateDomainStmt create_domain_stmt = 170 [json_name = "CreateDomainStmt"]; + bool has_create_domain_stmt() const; + private: + bool _internal_has_create_domain_stmt() const; - friend void swap(ImportForeignSchemaStmt& a, ImportForeignSchemaStmt& b) { - a.Swap(&b); - } - inline void Swap(ImportForeignSchemaStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(ImportForeignSchemaStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_create_domain_stmt() ; + const ::pg_query::CreateDomainStmt& create_domain_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateDomainStmt* release_create_domain_stmt(); + ::pg_query::CreateDomainStmt* mutable_create_domain_stmt(); + void set_allocated_create_domain_stmt(::pg_query::CreateDomainStmt* value); + void unsafe_arena_set_allocated_create_domain_stmt(::pg_query::CreateDomainStmt* value); + ::pg_query::CreateDomainStmt* unsafe_arena_release_create_domain_stmt(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::CreateDomainStmt& _internal_create_domain_stmt() const; + ::pg_query::CreateDomainStmt* _internal_mutable_create_domain_stmt(); - ImportForeignSchemaStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ImportForeignSchemaStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ImportForeignSchemaStmt& from) { - ImportForeignSchemaStmt::MergeImpl(*this, from); - } + public: + // .pg_query.CreateOpClassStmt create_op_class_stmt = 171 [json_name = "CreateOpClassStmt"]; + bool has_create_op_class_stmt() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_create_op_class_stmt() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_create_op_class_stmt() ; + const ::pg_query::CreateOpClassStmt& create_op_class_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateOpClassStmt* release_create_op_class_stmt(); + ::pg_query::CreateOpClassStmt* mutable_create_op_class_stmt(); + void set_allocated_create_op_class_stmt(::pg_query::CreateOpClassStmt* value); + void unsafe_arena_set_allocated_create_op_class_stmt(::pg_query::CreateOpClassStmt* value); + ::pg_query::CreateOpClassStmt* unsafe_arena_release_create_op_class_stmt(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::CreateOpClassStmt& _internal_create_op_class_stmt() const; + ::pg_query::CreateOpClassStmt* _internal_mutable_create_op_class_stmt(); + public: + // .pg_query.CreateOpClassItem create_op_class_item = 172 [json_name = "CreateOpClassItem"]; + bool has_create_op_class_item() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ImportForeignSchemaStmt* other); + bool _internal_has_create_op_class_item() const; + + public: + void clear_create_op_class_item() ; + const ::pg_query::CreateOpClassItem& create_op_class_item() const; + PROTOBUF_NODISCARD ::pg_query::CreateOpClassItem* release_create_op_class_item(); + ::pg_query::CreateOpClassItem* mutable_create_op_class_item(); + void set_allocated_create_op_class_item(::pg_query::CreateOpClassItem* value); + void unsafe_arena_set_allocated_create_op_class_item(::pg_query::CreateOpClassItem* value); + ::pg_query::CreateOpClassItem* unsafe_arena_release_create_op_class_item(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ImportForeignSchemaStmt"; - } - protected: - explicit ImportForeignSchemaStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::CreateOpClassItem& _internal_create_op_class_item() const; + ::pg_query::CreateOpClassItem* _internal_mutable_create_op_class_item(); + public: + // .pg_query.CreateOpFamilyStmt create_op_family_stmt = 173 [json_name = "CreateOpFamilyStmt"]; + bool has_create_op_family_stmt() const; + private: + bool _internal_has_create_op_family_stmt() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_create_op_family_stmt() ; + const ::pg_query::CreateOpFamilyStmt& create_op_family_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateOpFamilyStmt* release_create_op_family_stmt(); + ::pg_query::CreateOpFamilyStmt* mutable_create_op_family_stmt(); + void set_allocated_create_op_family_stmt(::pg_query::CreateOpFamilyStmt* value); + void unsafe_arena_set_allocated_create_op_family_stmt(::pg_query::CreateOpFamilyStmt* value); + ::pg_query::CreateOpFamilyStmt* unsafe_arena_release_create_op_family_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::CreateOpFamilyStmt& _internal_create_op_family_stmt() const; + ::pg_query::CreateOpFamilyStmt* _internal_mutable_create_op_family_stmt(); - // nested types ---------------------------------------------------- + public: + // .pg_query.AlterOpFamilyStmt alter_op_family_stmt = 174 [json_name = "AlterOpFamilyStmt"]; + bool has_alter_op_family_stmt() const; + private: + bool _internal_has_alter_op_family_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_alter_op_family_stmt() ; + const ::pg_query::AlterOpFamilyStmt& alter_op_family_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterOpFamilyStmt* release_alter_op_family_stmt(); + ::pg_query::AlterOpFamilyStmt* mutable_alter_op_family_stmt(); + void set_allocated_alter_op_family_stmt(::pg_query::AlterOpFamilyStmt* value); + void unsafe_arena_set_allocated_alter_op_family_stmt(::pg_query::AlterOpFamilyStmt* value); + ::pg_query::AlterOpFamilyStmt* unsafe_arena_release_alter_op_family_stmt(); - enum : int { - kTableListFieldNumber = 5, - kOptionsFieldNumber = 6, - kServerNameFieldNumber = 1, - kRemoteSchemaFieldNumber = 2, - kLocalSchemaFieldNumber = 3, - kListTypeFieldNumber = 4, - }; - // repeated .pg_query.Node table_list = 5 [json_name = "table_list"]; - int table_list_size() const; private: - int _internal_table_list_size() const; + const ::pg_query::AlterOpFamilyStmt& _internal_alter_op_family_stmt() const; + ::pg_query::AlterOpFamilyStmt* _internal_mutable_alter_op_family_stmt(); + public: - void clear_table_list(); - ::pg_query::Node* mutable_table_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_table_list(); + // .pg_query.DropStmt drop_stmt = 175 [json_name = "DropStmt"]; + bool has_drop_stmt() const; private: - const ::pg_query::Node& _internal_table_list(int index) const; - ::pg_query::Node* _internal_add_table_list(); + bool _internal_has_drop_stmt() const; + public: - const ::pg_query::Node& table_list(int index) const; - ::pg_query::Node* add_table_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - table_list() const; + void clear_drop_stmt() ; + const ::pg_query::DropStmt& drop_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DropStmt* release_drop_stmt(); + ::pg_query::DropStmt* mutable_drop_stmt(); + void set_allocated_drop_stmt(::pg_query::DropStmt* value); + void unsafe_arena_set_allocated_drop_stmt(::pg_query::DropStmt* value); + ::pg_query::DropStmt* unsafe_arena_release_drop_stmt(); - // repeated .pg_query.Node options = 6 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::DropStmt& _internal_drop_stmt() const; + ::pg_query::DropStmt* _internal_mutable_drop_stmt(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.TruncateStmt truncate_stmt = 176 [json_name = "TruncateStmt"]; + bool has_truncate_stmt() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + bool _internal_has_truncate_stmt() const; + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + void clear_truncate_stmt() ; + const ::pg_query::TruncateStmt& truncate_stmt() const; + PROTOBUF_NODISCARD ::pg_query::TruncateStmt* release_truncate_stmt(); + ::pg_query::TruncateStmt* mutable_truncate_stmt(); + void set_allocated_truncate_stmt(::pg_query::TruncateStmt* value); + void unsafe_arena_set_allocated_truncate_stmt(::pg_query::TruncateStmt* value); + ::pg_query::TruncateStmt* unsafe_arena_release_truncate_stmt(); - // string server_name = 1 [json_name = "server_name"]; - void clear_server_name(); - const std::string& server_name() const; - template - void set_server_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_server_name(); - PROTOBUF_NODISCARD std::string* release_server_name(); - void set_allocated_server_name(std::string* server_name); private: - const std::string& _internal_server_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_server_name(const std::string& value); - std::string* _internal_mutable_server_name(); + const ::pg_query::TruncateStmt& _internal_truncate_stmt() const; + ::pg_query::TruncateStmt* _internal_mutable_truncate_stmt(); + + public: + // .pg_query.CommentStmt comment_stmt = 177 [json_name = "CommentStmt"]; + bool has_comment_stmt() const; + private: + bool _internal_has_comment_stmt() const; + public: + void clear_comment_stmt() ; + const ::pg_query::CommentStmt& comment_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CommentStmt* release_comment_stmt(); + ::pg_query::CommentStmt* mutable_comment_stmt(); + void set_allocated_comment_stmt(::pg_query::CommentStmt* value); + void unsafe_arena_set_allocated_comment_stmt(::pg_query::CommentStmt* value); + ::pg_query::CommentStmt* unsafe_arena_release_comment_stmt(); - // string remote_schema = 2 [json_name = "remote_schema"]; - void clear_remote_schema(); - const std::string& remote_schema() const; - template - void set_remote_schema(ArgT0&& arg0, ArgT... args); - std::string* mutable_remote_schema(); - PROTOBUF_NODISCARD std::string* release_remote_schema(); - void set_allocated_remote_schema(std::string* remote_schema); private: - const std::string& _internal_remote_schema() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_remote_schema(const std::string& value); - std::string* _internal_mutable_remote_schema(); - public: + const ::pg_query::CommentStmt& _internal_comment_stmt() const; + ::pg_query::CommentStmt* _internal_mutable_comment_stmt(); - // string local_schema = 3 [json_name = "local_schema"]; - void clear_local_schema(); - const std::string& local_schema() const; - template - void set_local_schema(ArgT0&& arg0, ArgT... args); - std::string* mutable_local_schema(); - PROTOBUF_NODISCARD std::string* release_local_schema(); - void set_allocated_local_schema(std::string* local_schema); + public: + // .pg_query.SecLabelStmt sec_label_stmt = 178 [json_name = "SecLabelStmt"]; + bool has_sec_label_stmt() const; private: - const std::string& _internal_local_schema() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_local_schema(const std::string& value); - std::string* _internal_mutable_local_schema(); + bool _internal_has_sec_label_stmt() const; + public: + void clear_sec_label_stmt() ; + const ::pg_query::SecLabelStmt& sec_label_stmt() const; + PROTOBUF_NODISCARD ::pg_query::SecLabelStmt* release_sec_label_stmt(); + ::pg_query::SecLabelStmt* mutable_sec_label_stmt(); + void set_allocated_sec_label_stmt(::pg_query::SecLabelStmt* value); + void unsafe_arena_set_allocated_sec_label_stmt(::pg_query::SecLabelStmt* value); + ::pg_query::SecLabelStmt* unsafe_arena_release_sec_label_stmt(); - // .pg_query.ImportForeignSchemaType list_type = 4 [json_name = "list_type"]; - void clear_list_type(); - ::pg_query::ImportForeignSchemaType list_type() const; - void set_list_type(::pg_query::ImportForeignSchemaType value); private: - ::pg_query::ImportForeignSchemaType _internal_list_type() const; - void _internal_set_list_type(::pg_query::ImportForeignSchemaType value); - public: + const ::pg_query::SecLabelStmt& _internal_sec_label_stmt() const; + ::pg_query::SecLabelStmt* _internal_mutable_sec_label_stmt(); - // @@protoc_insertion_point(class_scope:pg_query.ImportForeignSchemaStmt) - private: - class _Internal; + public: + // .pg_query.DeclareCursorStmt declare_cursor_stmt = 179 [json_name = "DeclareCursorStmt"]; + bool has_declare_cursor_stmt() const; + private: + bool _internal_has_declare_cursor_stmt() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > table_list_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr server_name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr remote_schema_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr local_schema_; - int list_type_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_declare_cursor_stmt() ; + const ::pg_query::DeclareCursorStmt& declare_cursor_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DeclareCursorStmt* release_declare_cursor_stmt(); + ::pg_query::DeclareCursorStmt* mutable_declare_cursor_stmt(); + void set_allocated_declare_cursor_stmt(::pg_query::DeclareCursorStmt* value); + void unsafe_arena_set_allocated_declare_cursor_stmt(::pg_query::DeclareCursorStmt* value); + ::pg_query::DeclareCursorStmt* unsafe_arena_release_declare_cursor_stmt(); -class CreateExtensionStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateExtensionStmt) */ { - public: - inline CreateExtensionStmt() : CreateExtensionStmt(nullptr) {} - ~CreateExtensionStmt() override; - explicit PROTOBUF_CONSTEXPR CreateExtensionStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::DeclareCursorStmt& _internal_declare_cursor_stmt() const; + ::pg_query::DeclareCursorStmt* _internal_mutable_declare_cursor_stmt(); - CreateExtensionStmt(const CreateExtensionStmt& from); - CreateExtensionStmt(CreateExtensionStmt&& from) noexcept - : CreateExtensionStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.ClosePortalStmt close_portal_stmt = 180 [json_name = "ClosePortalStmt"]; + bool has_close_portal_stmt() const; + private: + bool _internal_has_close_portal_stmt() const; - inline CreateExtensionStmt& operator=(const CreateExtensionStmt& from) { - CopyFrom(from); - return *this; - } - inline CreateExtensionStmt& operator=(CreateExtensionStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_close_portal_stmt() ; + const ::pg_query::ClosePortalStmt& close_portal_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ClosePortalStmt* release_close_portal_stmt(); + ::pg_query::ClosePortalStmt* mutable_close_portal_stmt(); + void set_allocated_close_portal_stmt(::pg_query::ClosePortalStmt* value); + void unsafe_arena_set_allocated_close_portal_stmt(::pg_query::ClosePortalStmt* value); + ::pg_query::ClosePortalStmt* unsafe_arena_release_close_portal_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CreateExtensionStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CreateExtensionStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateExtensionStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 161; + private: + const ::pg_query::ClosePortalStmt& _internal_close_portal_stmt() const; + ::pg_query::ClosePortalStmt* _internal_mutable_close_portal_stmt(); - friend void swap(CreateExtensionStmt& a, CreateExtensionStmt& b) { - a.Swap(&b); - } - inline void Swap(CreateExtensionStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CreateExtensionStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.FetchStmt fetch_stmt = 181 [json_name = "FetchStmt"]; + bool has_fetch_stmt() const; + private: + bool _internal_has_fetch_stmt() const; - // implements Message ---------------------------------------------- + public: + void clear_fetch_stmt() ; + const ::pg_query::FetchStmt& fetch_stmt() const; + PROTOBUF_NODISCARD ::pg_query::FetchStmt* release_fetch_stmt(); + ::pg_query::FetchStmt* mutable_fetch_stmt(); + void set_allocated_fetch_stmt(::pg_query::FetchStmt* value); + void unsafe_arena_set_allocated_fetch_stmt(::pg_query::FetchStmt* value); + ::pg_query::FetchStmt* unsafe_arena_release_fetch_stmt(); - CreateExtensionStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateExtensionStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateExtensionStmt& from) { - CreateExtensionStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::FetchStmt& _internal_fetch_stmt() const; + ::pg_query::FetchStmt* _internal_mutable_fetch_stmt(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.IndexStmt index_stmt = 182 [json_name = "IndexStmt"]; + bool has_index_stmt() const; + private: + bool _internal_has_index_stmt() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_index_stmt() ; + const ::pg_query::IndexStmt& index_stmt() const; + PROTOBUF_NODISCARD ::pg_query::IndexStmt* release_index_stmt(); + ::pg_query::IndexStmt* mutable_index_stmt(); + void set_allocated_index_stmt(::pg_query::IndexStmt* value); + void unsafe_arena_set_allocated_index_stmt(::pg_query::IndexStmt* value); + ::pg_query::IndexStmt* unsafe_arena_release_index_stmt(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateExtensionStmt* other); + const ::pg_query::IndexStmt& _internal_index_stmt() const; + ::pg_query::IndexStmt* _internal_mutable_index_stmt(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateExtensionStmt"; - } - protected: - explicit CreateExtensionStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.CreateStatsStmt create_stats_stmt = 183 [json_name = "CreateStatsStmt"]; + bool has_create_stats_stmt() const; + private: + bool _internal_has_create_stats_stmt() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_create_stats_stmt() ; + const ::pg_query::CreateStatsStmt& create_stats_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateStatsStmt* release_create_stats_stmt(); + ::pg_query::CreateStatsStmt* mutable_create_stats_stmt(); + void set_allocated_create_stats_stmt(::pg_query::CreateStatsStmt* value); + void unsafe_arena_set_allocated_create_stats_stmt(::pg_query::CreateStatsStmt* value); + ::pg_query::CreateStatsStmt* unsafe_arena_release_create_stats_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::CreateStatsStmt& _internal_create_stats_stmt() const; + ::pg_query::CreateStatsStmt* _internal_mutable_create_stats_stmt(); - // nested types ---------------------------------------------------- + public: + // .pg_query.StatsElem stats_elem = 184 [json_name = "StatsElem"]; + bool has_stats_elem() const; + private: + bool _internal_has_stats_elem() const; - // accessors ------------------------------------------------------- + public: + void clear_stats_elem() ; + const ::pg_query::StatsElem& stats_elem() const; + PROTOBUF_NODISCARD ::pg_query::StatsElem* release_stats_elem(); + ::pg_query::StatsElem* mutable_stats_elem(); + void set_allocated_stats_elem(::pg_query::StatsElem* value); + void unsafe_arena_set_allocated_stats_elem(::pg_query::StatsElem* value); + ::pg_query::StatsElem* unsafe_arena_release_stats_elem(); - enum : int { - kOptionsFieldNumber = 3, - kExtnameFieldNumber = 1, - kIfNotExistsFieldNumber = 2, - }; - // repeated .pg_query.Node options = 3 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::StatsElem& _internal_stats_elem() const; + ::pg_query::StatsElem* _internal_mutable_stats_elem(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.AlterStatsStmt alter_stats_stmt = 185 [json_name = "AlterStatsStmt"]; + bool has_alter_stats_stmt() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); - public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + bool _internal_has_alter_stats_stmt() const; - // string extname = 1 [json_name = "extname"]; - void clear_extname(); - const std::string& extname() const; - template - void set_extname(ArgT0&& arg0, ArgT... args); - std::string* mutable_extname(); - PROTOBUF_NODISCARD std::string* release_extname(); - void set_allocated_extname(std::string* extname); - private: - const std::string& _internal_extname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_extname(const std::string& value); - std::string* _internal_mutable_extname(); public: + void clear_alter_stats_stmt() ; + const ::pg_query::AlterStatsStmt& alter_stats_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterStatsStmt* release_alter_stats_stmt(); + ::pg_query::AlterStatsStmt* mutable_alter_stats_stmt(); + void set_allocated_alter_stats_stmt(::pg_query::AlterStatsStmt* value); + void unsafe_arena_set_allocated_alter_stats_stmt(::pg_query::AlterStatsStmt* value); + ::pg_query::AlterStatsStmt* unsafe_arena_release_alter_stats_stmt(); - // bool if_not_exists = 2 [json_name = "if_not_exists"]; - void clear_if_not_exists(); - bool if_not_exists() const; - void set_if_not_exists(bool value); private: - bool _internal_if_not_exists() const; - void _internal_set_if_not_exists(bool value); - public: + const ::pg_query::AlterStatsStmt& _internal_alter_stats_stmt() const; + ::pg_query::AlterStatsStmt* _internal_mutable_alter_stats_stmt(); - // @@protoc_insertion_point(class_scope:pg_query.CreateExtensionStmt) - private: - class _Internal; + public: + // .pg_query.CreateFunctionStmt create_function_stmt = 186 [json_name = "CreateFunctionStmt"]; + bool has_create_function_stmt() const; + private: + bool _internal_has_create_function_stmt() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr extname_; - bool if_not_exists_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_create_function_stmt() ; + const ::pg_query::CreateFunctionStmt& create_function_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateFunctionStmt* release_create_function_stmt(); + ::pg_query::CreateFunctionStmt* mutable_create_function_stmt(); + void set_allocated_create_function_stmt(::pg_query::CreateFunctionStmt* value); + void unsafe_arena_set_allocated_create_function_stmt(::pg_query::CreateFunctionStmt* value); + ::pg_query::CreateFunctionStmt* unsafe_arena_release_create_function_stmt(); -class AlterExtensionStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterExtensionStmt) */ { - public: - inline AlterExtensionStmt() : AlterExtensionStmt(nullptr) {} - ~AlterExtensionStmt() override; - explicit PROTOBUF_CONSTEXPR AlterExtensionStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::CreateFunctionStmt& _internal_create_function_stmt() const; + ::pg_query::CreateFunctionStmt* _internal_mutable_create_function_stmt(); - AlterExtensionStmt(const AlterExtensionStmt& from); - AlterExtensionStmt(AlterExtensionStmt&& from) noexcept - : AlterExtensionStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.FunctionParameter function_parameter = 187 [json_name = "FunctionParameter"]; + bool has_function_parameter() const; + private: + bool _internal_has_function_parameter() const; - inline AlterExtensionStmt& operator=(const AlterExtensionStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterExtensionStmt& operator=(AlterExtensionStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_function_parameter() ; + const ::pg_query::FunctionParameter& function_parameter() const; + PROTOBUF_NODISCARD ::pg_query::FunctionParameter* release_function_parameter(); + ::pg_query::FunctionParameter* mutable_function_parameter(); + void set_allocated_function_parameter(::pg_query::FunctionParameter* value); + void unsafe_arena_set_allocated_function_parameter(::pg_query::FunctionParameter* value); + ::pg_query::FunctionParameter* unsafe_arena_release_function_parameter(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterExtensionStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterExtensionStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterExtensionStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 162; + private: + const ::pg_query::FunctionParameter& _internal_function_parameter() const; + ::pg_query::FunctionParameter* _internal_mutable_function_parameter(); - friend void swap(AlterExtensionStmt& a, AlterExtensionStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterExtensionStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterExtensionStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.AlterFunctionStmt alter_function_stmt = 188 [json_name = "AlterFunctionStmt"]; + bool has_alter_function_stmt() const; + private: + bool _internal_has_alter_function_stmt() const; - // implements Message ---------------------------------------------- + public: + void clear_alter_function_stmt() ; + const ::pg_query::AlterFunctionStmt& alter_function_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterFunctionStmt* release_alter_function_stmt(); + ::pg_query::AlterFunctionStmt* mutable_alter_function_stmt(); + void set_allocated_alter_function_stmt(::pg_query::AlterFunctionStmt* value); + void unsafe_arena_set_allocated_alter_function_stmt(::pg_query::AlterFunctionStmt* value); + ::pg_query::AlterFunctionStmt* unsafe_arena_release_alter_function_stmt(); - AlterExtensionStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterExtensionStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterExtensionStmt& from) { - AlterExtensionStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::AlterFunctionStmt& _internal_alter_function_stmt() const; + ::pg_query::AlterFunctionStmt* _internal_mutable_alter_function_stmt(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.DoStmt do_stmt = 189 [json_name = "DoStmt"]; + bool has_do_stmt() const; + private: + bool _internal_has_do_stmt() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_do_stmt() ; + const ::pg_query::DoStmt& do_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DoStmt* release_do_stmt(); + ::pg_query::DoStmt* mutable_do_stmt(); + void set_allocated_do_stmt(::pg_query::DoStmt* value); + void unsafe_arena_set_allocated_do_stmt(::pg_query::DoStmt* value); + ::pg_query::DoStmt* unsafe_arena_release_do_stmt(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterExtensionStmt* other); + const ::pg_query::DoStmt& _internal_do_stmt() const; + ::pg_query::DoStmt* _internal_mutable_do_stmt(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterExtensionStmt"; - } - protected: - explicit AlterExtensionStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.InlineCodeBlock inline_code_block = 190 [json_name = "InlineCodeBlock"]; + bool has_inline_code_block() const; + private: + bool _internal_has_inline_code_block() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_inline_code_block() ; + const ::pg_query::InlineCodeBlock& inline_code_block() const; + PROTOBUF_NODISCARD ::pg_query::InlineCodeBlock* release_inline_code_block(); + ::pg_query::InlineCodeBlock* mutable_inline_code_block(); + void set_allocated_inline_code_block(::pg_query::InlineCodeBlock* value); + void unsafe_arena_set_allocated_inline_code_block(::pg_query::InlineCodeBlock* value); + ::pg_query::InlineCodeBlock* unsafe_arena_release_inline_code_block(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::InlineCodeBlock& _internal_inline_code_block() const; + ::pg_query::InlineCodeBlock* _internal_mutable_inline_code_block(); - // nested types ---------------------------------------------------- + public: + // .pg_query.CallStmt call_stmt = 191 [json_name = "CallStmt"]; + bool has_call_stmt() const; + private: + bool _internal_has_call_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_call_stmt() ; + const ::pg_query::CallStmt& call_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CallStmt* release_call_stmt(); + ::pg_query::CallStmt* mutable_call_stmt(); + void set_allocated_call_stmt(::pg_query::CallStmt* value); + void unsafe_arena_set_allocated_call_stmt(::pg_query::CallStmt* value); + ::pg_query::CallStmt* unsafe_arena_release_call_stmt(); - enum : int { - kOptionsFieldNumber = 2, - kExtnameFieldNumber = 1, - }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::CallStmt& _internal_call_stmt() const; + ::pg_query::CallStmt* _internal_mutable_call_stmt(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.CallContext call_context = 192 [json_name = "CallContext"]; + bool has_call_context() const; private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + bool _internal_has_call_context() const; + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + void clear_call_context() ; + const ::pg_query::CallContext& call_context() const; + PROTOBUF_NODISCARD ::pg_query::CallContext* release_call_context(); + ::pg_query::CallContext* mutable_call_context(); + void set_allocated_call_context(::pg_query::CallContext* value); + void unsafe_arena_set_allocated_call_context(::pg_query::CallContext* value); + ::pg_query::CallContext* unsafe_arena_release_call_context(); - // string extname = 1 [json_name = "extname"]; - void clear_extname(); - const std::string& extname() const; - template - void set_extname(ArgT0&& arg0, ArgT... args); - std::string* mutable_extname(); - PROTOBUF_NODISCARD std::string* release_extname(); - void set_allocated_extname(std::string* extname); private: - const std::string& _internal_extname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_extname(const std::string& value); - std::string* _internal_mutable_extname(); + const ::pg_query::CallContext& _internal_call_context() const; + ::pg_query::CallContext* _internal_mutable_call_context(); + public: + // .pg_query.RenameStmt rename_stmt = 193 [json_name = "RenameStmt"]; + bool has_rename_stmt() const; + private: + bool _internal_has_rename_stmt() const; - // @@protoc_insertion_point(class_scope:pg_query.AlterExtensionStmt) - private: - class _Internal; + public: + void clear_rename_stmt() ; + const ::pg_query::RenameStmt& rename_stmt() const; + PROTOBUF_NODISCARD ::pg_query::RenameStmt* release_rename_stmt(); + ::pg_query::RenameStmt* mutable_rename_stmt(); + void set_allocated_rename_stmt(::pg_query::RenameStmt* value); + void unsafe_arena_set_allocated_rename_stmt(::pg_query::RenameStmt* value); + ::pg_query::RenameStmt* unsafe_arena_release_rename_stmt(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr extname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::RenameStmt& _internal_rename_stmt() const; + ::pg_query::RenameStmt* _internal_mutable_rename_stmt(); -class AlterExtensionContentsStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterExtensionContentsStmt) */ { - public: - inline AlterExtensionContentsStmt() : AlterExtensionContentsStmt(nullptr) {} - ~AlterExtensionContentsStmt() override; - explicit PROTOBUF_CONSTEXPR AlterExtensionContentsStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.AlterObjectDependsStmt alter_object_depends_stmt = 194 [json_name = "AlterObjectDependsStmt"]; + bool has_alter_object_depends_stmt() const; + private: + bool _internal_has_alter_object_depends_stmt() const; - AlterExtensionContentsStmt(const AlterExtensionContentsStmt& from); - AlterExtensionContentsStmt(AlterExtensionContentsStmt&& from) noexcept - : AlterExtensionContentsStmt() { - *this = ::std::move(from); - } + public: + void clear_alter_object_depends_stmt() ; + const ::pg_query::AlterObjectDependsStmt& alter_object_depends_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterObjectDependsStmt* release_alter_object_depends_stmt(); + ::pg_query::AlterObjectDependsStmt* mutable_alter_object_depends_stmt(); + void set_allocated_alter_object_depends_stmt(::pg_query::AlterObjectDependsStmt* value); + void unsafe_arena_set_allocated_alter_object_depends_stmt(::pg_query::AlterObjectDependsStmt* value); + ::pg_query::AlterObjectDependsStmt* unsafe_arena_release_alter_object_depends_stmt(); - inline AlterExtensionContentsStmt& operator=(const AlterExtensionContentsStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterExtensionContentsStmt& operator=(AlterExtensionContentsStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::AlterObjectDependsStmt& _internal_alter_object_depends_stmt() const; + ::pg_query::AlterObjectDependsStmt* _internal_mutable_alter_object_depends_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterExtensionContentsStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterExtensionContentsStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterExtensionContentsStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 163; + public: + // .pg_query.AlterObjectSchemaStmt alter_object_schema_stmt = 195 [json_name = "AlterObjectSchemaStmt"]; + bool has_alter_object_schema_stmt() const; + private: + bool _internal_has_alter_object_schema_stmt() const; - friend void swap(AlterExtensionContentsStmt& a, AlterExtensionContentsStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterExtensionContentsStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterExtensionContentsStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_alter_object_schema_stmt() ; + const ::pg_query::AlterObjectSchemaStmt& alter_object_schema_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterObjectSchemaStmt* release_alter_object_schema_stmt(); + ::pg_query::AlterObjectSchemaStmt* mutable_alter_object_schema_stmt(); + void set_allocated_alter_object_schema_stmt(::pg_query::AlterObjectSchemaStmt* value); + void unsafe_arena_set_allocated_alter_object_schema_stmt(::pg_query::AlterObjectSchemaStmt* value); + ::pg_query::AlterObjectSchemaStmt* unsafe_arena_release_alter_object_schema_stmt(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::AlterObjectSchemaStmt& _internal_alter_object_schema_stmt() const; + ::pg_query::AlterObjectSchemaStmt* _internal_mutable_alter_object_schema_stmt(); + + public: + // .pg_query.AlterOwnerStmt alter_owner_stmt = 196 [json_name = "AlterOwnerStmt"]; + bool has_alter_owner_stmt() const; + private: + bool _internal_has_alter_owner_stmt() const; + + public: + void clear_alter_owner_stmt() ; + const ::pg_query::AlterOwnerStmt& alter_owner_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterOwnerStmt* release_alter_owner_stmt(); + ::pg_query::AlterOwnerStmt* mutable_alter_owner_stmt(); + void set_allocated_alter_owner_stmt(::pg_query::AlterOwnerStmt* value); + void unsafe_arena_set_allocated_alter_owner_stmt(::pg_query::AlterOwnerStmt* value); + ::pg_query::AlterOwnerStmt* unsafe_arena_release_alter_owner_stmt(); - AlterExtensionContentsStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterExtensionContentsStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterExtensionContentsStmt& from) { - AlterExtensionContentsStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::AlterOwnerStmt& _internal_alter_owner_stmt() const; + ::pg_query::AlterOwnerStmt* _internal_mutable_alter_owner_stmt(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.AlterOperatorStmt alter_operator_stmt = 197 [json_name = "AlterOperatorStmt"]; + bool has_alter_operator_stmt() const; + private: + bool _internal_has_alter_operator_stmt() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_alter_operator_stmt() ; + const ::pg_query::AlterOperatorStmt& alter_operator_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterOperatorStmt* release_alter_operator_stmt(); + ::pg_query::AlterOperatorStmt* mutable_alter_operator_stmt(); + void set_allocated_alter_operator_stmt(::pg_query::AlterOperatorStmt* value); + void unsafe_arena_set_allocated_alter_operator_stmt(::pg_query::AlterOperatorStmt* value); + ::pg_query::AlterOperatorStmt* unsafe_arena_release_alter_operator_stmt(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterExtensionContentsStmt* other); + const ::pg_query::AlterOperatorStmt& _internal_alter_operator_stmt() const; + ::pg_query::AlterOperatorStmt* _internal_mutable_alter_operator_stmt(); + public: + // .pg_query.AlterTypeStmt alter_type_stmt = 198 [json_name = "AlterTypeStmt"]; + bool has_alter_type_stmt() const; private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterExtensionContentsStmt"; - } - protected: - explicit AlterExtensionContentsStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + bool _internal_has_alter_type_stmt() const; + public: + void clear_alter_type_stmt() ; + const ::pg_query::AlterTypeStmt& alter_type_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterTypeStmt* release_alter_type_stmt(); + ::pg_query::AlterTypeStmt* mutable_alter_type_stmt(); + void set_allocated_alter_type_stmt(::pg_query::AlterTypeStmt* value); + void unsafe_arena_set_allocated_alter_type_stmt(::pg_query::AlterTypeStmt* value); + ::pg_query::AlterTypeStmt* unsafe_arena_release_alter_type_stmt(); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + private: + const ::pg_query::AlterTypeStmt& _internal_alter_type_stmt() const; + ::pg_query::AlterTypeStmt* _internal_mutable_alter_type_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + // .pg_query.RuleStmt rule_stmt = 199 [json_name = "RuleStmt"]; + bool has_rule_stmt() const; + private: + bool _internal_has_rule_stmt() const; - // nested types ---------------------------------------------------- + public: + void clear_rule_stmt() ; + const ::pg_query::RuleStmt& rule_stmt() const; + PROTOBUF_NODISCARD ::pg_query::RuleStmt* release_rule_stmt(); + ::pg_query::RuleStmt* mutable_rule_stmt(); + void set_allocated_rule_stmt(::pg_query::RuleStmt* value); + void unsafe_arena_set_allocated_rule_stmt(::pg_query::RuleStmt* value); + ::pg_query::RuleStmt* unsafe_arena_release_rule_stmt(); - // accessors ------------------------------------------------------- + private: + const ::pg_query::RuleStmt& _internal_rule_stmt() const; + ::pg_query::RuleStmt* _internal_mutable_rule_stmt(); - enum : int { - kExtnameFieldNumber = 1, - kObjectFieldNumber = 4, - kActionFieldNumber = 2, - kObjtypeFieldNumber = 3, - }; - // string extname = 1 [json_name = "extname"]; - void clear_extname(); - const std::string& extname() const; - template - void set_extname(ArgT0&& arg0, ArgT... args); - std::string* mutable_extname(); - PROTOBUF_NODISCARD std::string* release_extname(); - void set_allocated_extname(std::string* extname); + public: + // .pg_query.NotifyStmt notify_stmt = 200 [json_name = "NotifyStmt"]; + bool has_notify_stmt() const; private: - const std::string& _internal_extname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_extname(const std::string& value); - std::string* _internal_mutable_extname(); + bool _internal_has_notify_stmt() const; + public: + void clear_notify_stmt() ; + const ::pg_query::NotifyStmt& notify_stmt() const; + PROTOBUF_NODISCARD ::pg_query::NotifyStmt* release_notify_stmt(); + ::pg_query::NotifyStmt* mutable_notify_stmt(); + void set_allocated_notify_stmt(::pg_query::NotifyStmt* value); + void unsafe_arena_set_allocated_notify_stmt(::pg_query::NotifyStmt* value); + ::pg_query::NotifyStmt* unsafe_arena_release_notify_stmt(); - // .pg_query.Node object = 4 [json_name = "object"]; - bool has_object() const; private: - bool _internal_has_object() const; + const ::pg_query::NotifyStmt& _internal_notify_stmt() const; + ::pg_query::NotifyStmt* _internal_mutable_notify_stmt(); + public: - void clear_object(); - const ::pg_query::Node& object() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_object(); - ::pg_query::Node* mutable_object(); - void set_allocated_object(::pg_query::Node* object); + // .pg_query.ListenStmt listen_stmt = 201 [json_name = "ListenStmt"]; + bool has_listen_stmt() const; private: - const ::pg_query::Node& _internal_object() const; - ::pg_query::Node* _internal_mutable_object(); + bool _internal_has_listen_stmt() const; + public: - void unsafe_arena_set_allocated_object( - ::pg_query::Node* object); - ::pg_query::Node* unsafe_arena_release_object(); + void clear_listen_stmt() ; + const ::pg_query::ListenStmt& listen_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ListenStmt* release_listen_stmt(); + ::pg_query::ListenStmt* mutable_listen_stmt(); + void set_allocated_listen_stmt(::pg_query::ListenStmt* value); + void unsafe_arena_set_allocated_listen_stmt(::pg_query::ListenStmt* value); + ::pg_query::ListenStmt* unsafe_arena_release_listen_stmt(); - // int32 action = 2 [json_name = "action"]; - void clear_action(); - int32_t action() const; - void set_action(int32_t value); private: - int32_t _internal_action() const; - void _internal_set_action(int32_t value); + const ::pg_query::ListenStmt& _internal_listen_stmt() const; + ::pg_query::ListenStmt* _internal_mutable_listen_stmt(); + + public: + // .pg_query.UnlistenStmt unlisten_stmt = 202 [json_name = "UnlistenStmt"]; + bool has_unlisten_stmt() const; + private: + bool _internal_has_unlisten_stmt() const; + public: + void clear_unlisten_stmt() ; + const ::pg_query::UnlistenStmt& unlisten_stmt() const; + PROTOBUF_NODISCARD ::pg_query::UnlistenStmt* release_unlisten_stmt(); + ::pg_query::UnlistenStmt* mutable_unlisten_stmt(); + void set_allocated_unlisten_stmt(::pg_query::UnlistenStmt* value); + void unsafe_arena_set_allocated_unlisten_stmt(::pg_query::UnlistenStmt* value); + ::pg_query::UnlistenStmt* unsafe_arena_release_unlisten_stmt(); - // .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; - void clear_objtype(); - ::pg_query::ObjectType objtype() const; - void set_objtype(::pg_query::ObjectType value); private: - ::pg_query::ObjectType _internal_objtype() const; - void _internal_set_objtype(::pg_query::ObjectType value); + const ::pg_query::UnlistenStmt& _internal_unlisten_stmt() const; + ::pg_query::UnlistenStmt* _internal_mutable_unlisten_stmt(); + public: + // .pg_query.TransactionStmt transaction_stmt = 203 [json_name = "TransactionStmt"]; + bool has_transaction_stmt() const; + private: + bool _internal_has_transaction_stmt() const; - // @@protoc_insertion_point(class_scope:pg_query.AlterExtensionContentsStmt) - private: - class _Internal; + public: + void clear_transaction_stmt() ; + const ::pg_query::TransactionStmt& transaction_stmt() const; + PROTOBUF_NODISCARD ::pg_query::TransactionStmt* release_transaction_stmt(); + ::pg_query::TransactionStmt* mutable_transaction_stmt(); + void set_allocated_transaction_stmt(::pg_query::TransactionStmt* value); + void unsafe_arena_set_allocated_transaction_stmt(::pg_query::TransactionStmt* value); + ::pg_query::TransactionStmt* unsafe_arena_release_transaction_stmt(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr extname_; - ::pg_query::Node* object_; - int32_t action_; - int objtype_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::TransactionStmt& _internal_transaction_stmt() const; + ::pg_query::TransactionStmt* _internal_mutable_transaction_stmt(); -class CreateEventTrigStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateEventTrigStmt) */ { - public: - inline CreateEventTrigStmt() : CreateEventTrigStmt(nullptr) {} - ~CreateEventTrigStmt() override; - explicit PROTOBUF_CONSTEXPR CreateEventTrigStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.CompositeTypeStmt composite_type_stmt = 204 [json_name = "CompositeTypeStmt"]; + bool has_composite_type_stmt() const; + private: + bool _internal_has_composite_type_stmt() const; - CreateEventTrigStmt(const CreateEventTrigStmt& from); - CreateEventTrigStmt(CreateEventTrigStmt&& from) noexcept - : CreateEventTrigStmt() { - *this = ::std::move(from); - } + public: + void clear_composite_type_stmt() ; + const ::pg_query::CompositeTypeStmt& composite_type_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CompositeTypeStmt* release_composite_type_stmt(); + ::pg_query::CompositeTypeStmt* mutable_composite_type_stmt(); + void set_allocated_composite_type_stmt(::pg_query::CompositeTypeStmt* value); + void unsafe_arena_set_allocated_composite_type_stmt(::pg_query::CompositeTypeStmt* value); + ::pg_query::CompositeTypeStmt* unsafe_arena_release_composite_type_stmt(); - inline CreateEventTrigStmt& operator=(const CreateEventTrigStmt& from) { - CopyFrom(from); - return *this; - } - inline CreateEventTrigStmt& operator=(CreateEventTrigStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::CompositeTypeStmt& _internal_composite_type_stmt() const; + ::pg_query::CompositeTypeStmt* _internal_mutable_composite_type_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CreateEventTrigStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CreateEventTrigStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateEventTrigStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 164; + public: + // .pg_query.CreateEnumStmt create_enum_stmt = 205 [json_name = "CreateEnumStmt"]; + bool has_create_enum_stmt() const; + private: + bool _internal_has_create_enum_stmt() const; - friend void swap(CreateEventTrigStmt& a, CreateEventTrigStmt& b) { - a.Swap(&b); - } - inline void Swap(CreateEventTrigStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CreateEventTrigStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_create_enum_stmt() ; + const ::pg_query::CreateEnumStmt& create_enum_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateEnumStmt* release_create_enum_stmt(); + ::pg_query::CreateEnumStmt* mutable_create_enum_stmt(); + void set_allocated_create_enum_stmt(::pg_query::CreateEnumStmt* value); + void unsafe_arena_set_allocated_create_enum_stmt(::pg_query::CreateEnumStmt* value); + ::pg_query::CreateEnumStmt* unsafe_arena_release_create_enum_stmt(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::CreateEnumStmt& _internal_create_enum_stmt() const; + ::pg_query::CreateEnumStmt* _internal_mutable_create_enum_stmt(); - CreateEventTrigStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateEventTrigStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateEventTrigStmt& from) { - CreateEventTrigStmt::MergeImpl(*this, from); - } + public: + // .pg_query.CreateRangeStmt create_range_stmt = 206 [json_name = "CreateRangeStmt"]; + bool has_create_range_stmt() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_create_range_stmt() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_create_range_stmt() ; + const ::pg_query::CreateRangeStmt& create_range_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateRangeStmt* release_create_range_stmt(); + ::pg_query::CreateRangeStmt* mutable_create_range_stmt(); + void set_allocated_create_range_stmt(::pg_query::CreateRangeStmt* value); + void unsafe_arena_set_allocated_create_range_stmt(::pg_query::CreateRangeStmt* value); + ::pg_query::CreateRangeStmt* unsafe_arena_release_create_range_stmt(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::CreateRangeStmt& _internal_create_range_stmt() const; + ::pg_query::CreateRangeStmt* _internal_mutable_create_range_stmt(); + public: + // .pg_query.AlterEnumStmt alter_enum_stmt = 207 [json_name = "AlterEnumStmt"]; + bool has_alter_enum_stmt() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateEventTrigStmt* other); + bool _internal_has_alter_enum_stmt() const; + + public: + void clear_alter_enum_stmt() ; + const ::pg_query::AlterEnumStmt& alter_enum_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterEnumStmt* release_alter_enum_stmt(); + ::pg_query::AlterEnumStmt* mutable_alter_enum_stmt(); + void set_allocated_alter_enum_stmt(::pg_query::AlterEnumStmt* value); + void unsafe_arena_set_allocated_alter_enum_stmt(::pg_query::AlterEnumStmt* value); + ::pg_query::AlterEnumStmt* unsafe_arena_release_alter_enum_stmt(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateEventTrigStmt"; - } - protected: - explicit CreateEventTrigStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::AlterEnumStmt& _internal_alter_enum_stmt() const; + ::pg_query::AlterEnumStmt* _internal_mutable_alter_enum_stmt(); + public: + // .pg_query.ViewStmt view_stmt = 208 [json_name = "ViewStmt"]; + bool has_view_stmt() const; + private: + bool _internal_has_view_stmt() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_view_stmt() ; + const ::pg_query::ViewStmt& view_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ViewStmt* release_view_stmt(); + ::pg_query::ViewStmt* mutable_view_stmt(); + void set_allocated_view_stmt(::pg_query::ViewStmt* value); + void unsafe_arena_set_allocated_view_stmt(::pg_query::ViewStmt* value); + ::pg_query::ViewStmt* unsafe_arena_release_view_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::ViewStmt& _internal_view_stmt() const; + ::pg_query::ViewStmt* _internal_mutable_view_stmt(); - // nested types ---------------------------------------------------- + public: + // .pg_query.LoadStmt load_stmt = 209 [json_name = "LoadStmt"]; + bool has_load_stmt() const; + private: + bool _internal_has_load_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_load_stmt() ; + const ::pg_query::LoadStmt& load_stmt() const; + PROTOBUF_NODISCARD ::pg_query::LoadStmt* release_load_stmt(); + ::pg_query::LoadStmt* mutable_load_stmt(); + void set_allocated_load_stmt(::pg_query::LoadStmt* value); + void unsafe_arena_set_allocated_load_stmt(::pg_query::LoadStmt* value); + ::pg_query::LoadStmt* unsafe_arena_release_load_stmt(); - enum : int { - kWhenclauseFieldNumber = 3, - kFuncnameFieldNumber = 4, - kTrignameFieldNumber = 1, - kEventnameFieldNumber = 2, - }; - // repeated .pg_query.Node whenclause = 3 [json_name = "whenclause"]; - int whenclause_size() const; private: - int _internal_whenclause_size() const; + const ::pg_query::LoadStmt& _internal_load_stmt() const; + ::pg_query::LoadStmt* _internal_mutable_load_stmt(); + public: - void clear_whenclause(); - ::pg_query::Node* mutable_whenclause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_whenclause(); + // .pg_query.CreatedbStmt createdb_stmt = 210 [json_name = "CreatedbStmt"]; + bool has_createdb_stmt() const; private: - const ::pg_query::Node& _internal_whenclause(int index) const; - ::pg_query::Node* _internal_add_whenclause(); + bool _internal_has_createdb_stmt() const; + public: - const ::pg_query::Node& whenclause(int index) const; - ::pg_query::Node* add_whenclause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - whenclause() const; + void clear_createdb_stmt() ; + const ::pg_query::CreatedbStmt& createdb_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreatedbStmt* release_createdb_stmt(); + ::pg_query::CreatedbStmt* mutable_createdb_stmt(); + void set_allocated_createdb_stmt(::pg_query::CreatedbStmt* value); + void unsafe_arena_set_allocated_createdb_stmt(::pg_query::CreatedbStmt* value); + ::pg_query::CreatedbStmt* unsafe_arena_release_createdb_stmt(); - // repeated .pg_query.Node funcname = 4 [json_name = "funcname"]; - int funcname_size() const; private: - int _internal_funcname_size() const; + const ::pg_query::CreatedbStmt& _internal_createdb_stmt() const; + ::pg_query::CreatedbStmt* _internal_mutable_createdb_stmt(); + public: - void clear_funcname(); - ::pg_query::Node* mutable_funcname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_funcname(); + // .pg_query.AlterDatabaseStmt alter_database_stmt = 211 [json_name = "AlterDatabaseStmt"]; + bool has_alter_database_stmt() const; private: - const ::pg_query::Node& _internal_funcname(int index) const; - ::pg_query::Node* _internal_add_funcname(); + bool _internal_has_alter_database_stmt() const; + public: - const ::pg_query::Node& funcname(int index) const; - ::pg_query::Node* add_funcname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - funcname() const; + void clear_alter_database_stmt() ; + const ::pg_query::AlterDatabaseStmt& alter_database_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterDatabaseStmt* release_alter_database_stmt(); + ::pg_query::AlterDatabaseStmt* mutable_alter_database_stmt(); + void set_allocated_alter_database_stmt(::pg_query::AlterDatabaseStmt* value); + void unsafe_arena_set_allocated_alter_database_stmt(::pg_query::AlterDatabaseStmt* value); + ::pg_query::AlterDatabaseStmt* unsafe_arena_release_alter_database_stmt(); - // string trigname = 1 [json_name = "trigname"]; - void clear_trigname(); - const std::string& trigname() const; - template - void set_trigname(ArgT0&& arg0, ArgT... args); - std::string* mutable_trigname(); - PROTOBUF_NODISCARD std::string* release_trigname(); - void set_allocated_trigname(std::string* trigname); private: - const std::string& _internal_trigname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_trigname(const std::string& value); - std::string* _internal_mutable_trigname(); + const ::pg_query::AlterDatabaseStmt& _internal_alter_database_stmt() const; + ::pg_query::AlterDatabaseStmt* _internal_mutable_alter_database_stmt(); + public: + // .pg_query.AlterDatabaseRefreshCollStmt alter_database_refresh_coll_stmt = 212 [json_name = "AlterDatabaseRefreshCollStmt"]; + bool has_alter_database_refresh_coll_stmt() const; + private: + bool _internal_has_alter_database_refresh_coll_stmt() const; + + public: + void clear_alter_database_refresh_coll_stmt() ; + const ::pg_query::AlterDatabaseRefreshCollStmt& alter_database_refresh_coll_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterDatabaseRefreshCollStmt* release_alter_database_refresh_coll_stmt(); + ::pg_query::AlterDatabaseRefreshCollStmt* mutable_alter_database_refresh_coll_stmt(); + void set_allocated_alter_database_refresh_coll_stmt(::pg_query::AlterDatabaseRefreshCollStmt* value); + void unsafe_arena_set_allocated_alter_database_refresh_coll_stmt(::pg_query::AlterDatabaseRefreshCollStmt* value); + ::pg_query::AlterDatabaseRefreshCollStmt* unsafe_arena_release_alter_database_refresh_coll_stmt(); - // string eventname = 2 [json_name = "eventname"]; - void clear_eventname(); - const std::string& eventname() const; - template - void set_eventname(ArgT0&& arg0, ArgT... args); - std::string* mutable_eventname(); - PROTOBUF_NODISCARD std::string* release_eventname(); - void set_allocated_eventname(std::string* eventname); private: - const std::string& _internal_eventname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_eventname(const std::string& value); - std::string* _internal_mutable_eventname(); + const ::pg_query::AlterDatabaseRefreshCollStmt& _internal_alter_database_refresh_coll_stmt() const; + ::pg_query::AlterDatabaseRefreshCollStmt* _internal_mutable_alter_database_refresh_coll_stmt(); + public: + // .pg_query.AlterDatabaseSetStmt alter_database_set_stmt = 213 [json_name = "AlterDatabaseSetStmt"]; + bool has_alter_database_set_stmt() const; + private: + bool _internal_has_alter_database_set_stmt() const; - // @@protoc_insertion_point(class_scope:pg_query.CreateEventTrigStmt) - private: - class _Internal; + public: + void clear_alter_database_set_stmt() ; + const ::pg_query::AlterDatabaseSetStmt& alter_database_set_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterDatabaseSetStmt* release_alter_database_set_stmt(); + ::pg_query::AlterDatabaseSetStmt* mutable_alter_database_set_stmt(); + void set_allocated_alter_database_set_stmt(::pg_query::AlterDatabaseSetStmt* value); + void unsafe_arena_set_allocated_alter_database_set_stmt(::pg_query::AlterDatabaseSetStmt* value); + ::pg_query::AlterDatabaseSetStmt* unsafe_arena_release_alter_database_set_stmt(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > whenclause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > funcname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr trigname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr eventname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::AlterDatabaseSetStmt& _internal_alter_database_set_stmt() const; + ::pg_query::AlterDatabaseSetStmt* _internal_mutable_alter_database_set_stmt(); -class AlterEventTrigStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterEventTrigStmt) */ { - public: - inline AlterEventTrigStmt() : AlterEventTrigStmt(nullptr) {} - ~AlterEventTrigStmt() override; - explicit PROTOBUF_CONSTEXPR AlterEventTrigStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.DropdbStmt dropdb_stmt = 214 [json_name = "DropdbStmt"]; + bool has_dropdb_stmt() const; + private: + bool _internal_has_dropdb_stmt() const; - AlterEventTrigStmt(const AlterEventTrigStmt& from); - AlterEventTrigStmt(AlterEventTrigStmt&& from) noexcept - : AlterEventTrigStmt() { - *this = ::std::move(from); - } + public: + void clear_dropdb_stmt() ; + const ::pg_query::DropdbStmt& dropdb_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DropdbStmt* release_dropdb_stmt(); + ::pg_query::DropdbStmt* mutable_dropdb_stmt(); + void set_allocated_dropdb_stmt(::pg_query::DropdbStmt* value); + void unsafe_arena_set_allocated_dropdb_stmt(::pg_query::DropdbStmt* value); + ::pg_query::DropdbStmt* unsafe_arena_release_dropdb_stmt(); - inline AlterEventTrigStmt& operator=(const AlterEventTrigStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterEventTrigStmt& operator=(AlterEventTrigStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::DropdbStmt& _internal_dropdb_stmt() const; + ::pg_query::DropdbStmt* _internal_mutable_dropdb_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterEventTrigStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterEventTrigStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterEventTrigStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 165; + public: + // .pg_query.AlterSystemStmt alter_system_stmt = 215 [json_name = "AlterSystemStmt"]; + bool has_alter_system_stmt() const; + private: + bool _internal_has_alter_system_stmt() const; - friend void swap(AlterEventTrigStmt& a, AlterEventTrigStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterEventTrigStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterEventTrigStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_alter_system_stmt() ; + const ::pg_query::AlterSystemStmt& alter_system_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterSystemStmt* release_alter_system_stmt(); + ::pg_query::AlterSystemStmt* mutable_alter_system_stmt(); + void set_allocated_alter_system_stmt(::pg_query::AlterSystemStmt* value); + void unsafe_arena_set_allocated_alter_system_stmt(::pg_query::AlterSystemStmt* value); + ::pg_query::AlterSystemStmt* unsafe_arena_release_alter_system_stmt(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::AlterSystemStmt& _internal_alter_system_stmt() const; + ::pg_query::AlterSystemStmt* _internal_mutable_alter_system_stmt(); - AlterEventTrigStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterEventTrigStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterEventTrigStmt& from) { - AlterEventTrigStmt::MergeImpl(*this, from); - } + public: + // .pg_query.ClusterStmt cluster_stmt = 216 [json_name = "ClusterStmt"]; + bool has_cluster_stmt() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_cluster_stmt() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_cluster_stmt() ; + const ::pg_query::ClusterStmt& cluster_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ClusterStmt* release_cluster_stmt(); + ::pg_query::ClusterStmt* mutable_cluster_stmt(); + void set_allocated_cluster_stmt(::pg_query::ClusterStmt* value); + void unsafe_arena_set_allocated_cluster_stmt(::pg_query::ClusterStmt* value); + ::pg_query::ClusterStmt* unsafe_arena_release_cluster_stmt(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::ClusterStmt& _internal_cluster_stmt() const; + ::pg_query::ClusterStmt* _internal_mutable_cluster_stmt(); + public: + // .pg_query.VacuumStmt vacuum_stmt = 217 [json_name = "VacuumStmt"]; + bool has_vacuum_stmt() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterEventTrigStmt* other); + bool _internal_has_vacuum_stmt() const; + + public: + void clear_vacuum_stmt() ; + const ::pg_query::VacuumStmt& vacuum_stmt() const; + PROTOBUF_NODISCARD ::pg_query::VacuumStmt* release_vacuum_stmt(); + ::pg_query::VacuumStmt* mutable_vacuum_stmt(); + void set_allocated_vacuum_stmt(::pg_query::VacuumStmt* value); + void unsafe_arena_set_allocated_vacuum_stmt(::pg_query::VacuumStmt* value); + ::pg_query::VacuumStmt* unsafe_arena_release_vacuum_stmt(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterEventTrigStmt"; - } - protected: - explicit AlterEventTrigStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::VacuumStmt& _internal_vacuum_stmt() const; + ::pg_query::VacuumStmt* _internal_mutable_vacuum_stmt(); + public: + // .pg_query.VacuumRelation vacuum_relation = 218 [json_name = "VacuumRelation"]; + bool has_vacuum_relation() const; + private: + bool _internal_has_vacuum_relation() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_vacuum_relation() ; + const ::pg_query::VacuumRelation& vacuum_relation() const; + PROTOBUF_NODISCARD ::pg_query::VacuumRelation* release_vacuum_relation(); + ::pg_query::VacuumRelation* mutable_vacuum_relation(); + void set_allocated_vacuum_relation(::pg_query::VacuumRelation* value); + void unsafe_arena_set_allocated_vacuum_relation(::pg_query::VacuumRelation* value); + ::pg_query::VacuumRelation* unsafe_arena_release_vacuum_relation(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::VacuumRelation& _internal_vacuum_relation() const; + ::pg_query::VacuumRelation* _internal_mutable_vacuum_relation(); - // nested types ---------------------------------------------------- + public: + // .pg_query.ExplainStmt explain_stmt = 219 [json_name = "ExplainStmt"]; + bool has_explain_stmt() const; + private: + bool _internal_has_explain_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_explain_stmt() ; + const ::pg_query::ExplainStmt& explain_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ExplainStmt* release_explain_stmt(); + ::pg_query::ExplainStmt* mutable_explain_stmt(); + void set_allocated_explain_stmt(::pg_query::ExplainStmt* value); + void unsafe_arena_set_allocated_explain_stmt(::pg_query::ExplainStmt* value); + ::pg_query::ExplainStmt* unsafe_arena_release_explain_stmt(); - enum : int { - kTrignameFieldNumber = 1, - kTgenabledFieldNumber = 2, - }; - // string trigname = 1 [json_name = "trigname"]; - void clear_trigname(); - const std::string& trigname() const; - template - void set_trigname(ArgT0&& arg0, ArgT... args); - std::string* mutable_trigname(); - PROTOBUF_NODISCARD std::string* release_trigname(); - void set_allocated_trigname(std::string* trigname); private: - const std::string& _internal_trigname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_trigname(const std::string& value); - std::string* _internal_mutable_trigname(); + const ::pg_query::ExplainStmt& _internal_explain_stmt() const; + ::pg_query::ExplainStmt* _internal_mutable_explain_stmt(); + + public: + // .pg_query.CreateTableAsStmt create_table_as_stmt = 220 [json_name = "CreateTableAsStmt"]; + bool has_create_table_as_stmt() const; + private: + bool _internal_has_create_table_as_stmt() const; + public: + void clear_create_table_as_stmt() ; + const ::pg_query::CreateTableAsStmt& create_table_as_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateTableAsStmt* release_create_table_as_stmt(); + ::pg_query::CreateTableAsStmt* mutable_create_table_as_stmt(); + void set_allocated_create_table_as_stmt(::pg_query::CreateTableAsStmt* value); + void unsafe_arena_set_allocated_create_table_as_stmt(::pg_query::CreateTableAsStmt* value); + ::pg_query::CreateTableAsStmt* unsafe_arena_release_create_table_as_stmt(); - // string tgenabled = 2 [json_name = "tgenabled"]; - void clear_tgenabled(); - const std::string& tgenabled() const; - template - void set_tgenabled(ArgT0&& arg0, ArgT... args); - std::string* mutable_tgenabled(); - PROTOBUF_NODISCARD std::string* release_tgenabled(); - void set_allocated_tgenabled(std::string* tgenabled); private: - const std::string& _internal_tgenabled() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_tgenabled(const std::string& value); - std::string* _internal_mutable_tgenabled(); + const ::pg_query::CreateTableAsStmt& _internal_create_table_as_stmt() const; + ::pg_query::CreateTableAsStmt* _internal_mutable_create_table_as_stmt(); + public: + // .pg_query.RefreshMatViewStmt refresh_mat_view_stmt = 221 [json_name = "RefreshMatViewStmt"]; + bool has_refresh_mat_view_stmt() const; + private: + bool _internal_has_refresh_mat_view_stmt() const; - // @@protoc_insertion_point(class_scope:pg_query.AlterEventTrigStmt) - private: - class _Internal; + public: + void clear_refresh_mat_view_stmt() ; + const ::pg_query::RefreshMatViewStmt& refresh_mat_view_stmt() const; + PROTOBUF_NODISCARD ::pg_query::RefreshMatViewStmt* release_refresh_mat_view_stmt(); + ::pg_query::RefreshMatViewStmt* mutable_refresh_mat_view_stmt(); + void set_allocated_refresh_mat_view_stmt(::pg_query::RefreshMatViewStmt* value); + void unsafe_arena_set_allocated_refresh_mat_view_stmt(::pg_query::RefreshMatViewStmt* value); + ::pg_query::RefreshMatViewStmt* unsafe_arena_release_refresh_mat_view_stmt(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr trigname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr tgenabled_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + private: + const ::pg_query::RefreshMatViewStmt& _internal_refresh_mat_view_stmt() const; + ::pg_query::RefreshMatViewStmt* _internal_mutable_refresh_mat_view_stmt(); -class RefreshMatViewStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RefreshMatViewStmt) */ { - public: - inline RefreshMatViewStmt() : RefreshMatViewStmt(nullptr) {} - ~RefreshMatViewStmt() override; - explicit PROTOBUF_CONSTEXPR RefreshMatViewStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + // .pg_query.CheckPointStmt check_point_stmt = 222 [json_name = "CheckPointStmt"]; + bool has_check_point_stmt() const; + private: + bool _internal_has_check_point_stmt() const; - RefreshMatViewStmt(const RefreshMatViewStmt& from); - RefreshMatViewStmt(RefreshMatViewStmt&& from) noexcept - : RefreshMatViewStmt() { - *this = ::std::move(from); - } + public: + void clear_check_point_stmt() ; + const ::pg_query::CheckPointStmt& check_point_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CheckPointStmt* release_check_point_stmt(); + ::pg_query::CheckPointStmt* mutable_check_point_stmt(); + void set_allocated_check_point_stmt(::pg_query::CheckPointStmt* value); + void unsafe_arena_set_allocated_check_point_stmt(::pg_query::CheckPointStmt* value); + ::pg_query::CheckPointStmt* unsafe_arena_release_check_point_stmt(); - inline RefreshMatViewStmt& operator=(const RefreshMatViewStmt& from) { - CopyFrom(from); - return *this; - } - inline RefreshMatViewStmt& operator=(RefreshMatViewStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + private: + const ::pg_query::CheckPointStmt& _internal_check_point_stmt() const; + ::pg_query::CheckPointStmt* _internal_mutable_check_point_stmt(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const RefreshMatViewStmt& default_instance() { - return *internal_default_instance(); - } - static inline const RefreshMatViewStmt* internal_default_instance() { - return reinterpret_cast( - &_RefreshMatViewStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 166; + public: + // .pg_query.DiscardStmt discard_stmt = 223 [json_name = "DiscardStmt"]; + bool has_discard_stmt() const; + private: + bool _internal_has_discard_stmt() const; - friend void swap(RefreshMatViewStmt& a, RefreshMatViewStmt& b) { - a.Swap(&b); - } - inline void Swap(RefreshMatViewStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(RefreshMatViewStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + void clear_discard_stmt() ; + const ::pg_query::DiscardStmt& discard_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DiscardStmt* release_discard_stmt(); + ::pg_query::DiscardStmt* mutable_discard_stmt(); + void set_allocated_discard_stmt(::pg_query::DiscardStmt* value); + void unsafe_arena_set_allocated_discard_stmt(::pg_query::DiscardStmt* value); + ::pg_query::DiscardStmt* unsafe_arena_release_discard_stmt(); - // implements Message ---------------------------------------------- + private: + const ::pg_query::DiscardStmt& _internal_discard_stmt() const; + ::pg_query::DiscardStmt* _internal_mutable_discard_stmt(); - RefreshMatViewStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RefreshMatViewStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RefreshMatViewStmt& from) { - RefreshMatViewStmt::MergeImpl(*this, from); - } + public: + // .pg_query.LockStmt lock_stmt = 224 [json_name = "LockStmt"]; + bool has_lock_stmt() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_lock_stmt() const; + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + void clear_lock_stmt() ; + const ::pg_query::LockStmt& lock_stmt() const; + PROTOBUF_NODISCARD ::pg_query::LockStmt* release_lock_stmt(); + ::pg_query::LockStmt* mutable_lock_stmt(); + void set_allocated_lock_stmt(::pg_query::LockStmt* value); + void unsafe_arena_set_allocated_lock_stmt(::pg_query::LockStmt* value); + ::pg_query::LockStmt* unsafe_arena_release_lock_stmt(); - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + private: + const ::pg_query::LockStmt& _internal_lock_stmt() const; + ::pg_query::LockStmt* _internal_mutable_lock_stmt(); + public: + // .pg_query.ConstraintsSetStmt constraints_set_stmt = 225 [json_name = "ConstraintsSetStmt"]; + bool has_constraints_set_stmt() const; private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RefreshMatViewStmt* other); + bool _internal_has_constraints_set_stmt() const; + + public: + void clear_constraints_set_stmt() ; + const ::pg_query::ConstraintsSetStmt& constraints_set_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ConstraintsSetStmt* release_constraints_set_stmt(); + ::pg_query::ConstraintsSetStmt* mutable_constraints_set_stmt(); + void set_allocated_constraints_set_stmt(::pg_query::ConstraintsSetStmt* value); + void unsafe_arena_set_allocated_constraints_set_stmt(::pg_query::ConstraintsSetStmt* value); + ::pg_query::ConstraintsSetStmt* unsafe_arena_release_constraints_set_stmt(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RefreshMatViewStmt"; - } - protected: - explicit RefreshMatViewStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::pg_query::ConstraintsSetStmt& _internal_constraints_set_stmt() const; + ::pg_query::ConstraintsSetStmt* _internal_mutable_constraints_set_stmt(); + public: + // .pg_query.ReindexStmt reindex_stmt = 226 [json_name = "ReindexStmt"]; + bool has_reindex_stmt() const; + private: + bool _internal_has_reindex_stmt() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_reindex_stmt() ; + const ::pg_query::ReindexStmt& reindex_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ReindexStmt* release_reindex_stmt(); + ::pg_query::ReindexStmt* mutable_reindex_stmt(); + void set_allocated_reindex_stmt(::pg_query::ReindexStmt* value); + void unsafe_arena_set_allocated_reindex_stmt(::pg_query::ReindexStmt* value); + ::pg_query::ReindexStmt* unsafe_arena_release_reindex_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::ReindexStmt& _internal_reindex_stmt() const; + ::pg_query::ReindexStmt* _internal_mutable_reindex_stmt(); - // nested types ---------------------------------------------------- + public: + // .pg_query.CreateConversionStmt create_conversion_stmt = 227 [json_name = "CreateConversionStmt"]; + bool has_create_conversion_stmt() const; + private: + bool _internal_has_create_conversion_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_create_conversion_stmt() ; + const ::pg_query::CreateConversionStmt& create_conversion_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateConversionStmt* release_create_conversion_stmt(); + ::pg_query::CreateConversionStmt* mutable_create_conversion_stmt(); + void set_allocated_create_conversion_stmt(::pg_query::CreateConversionStmt* value); + void unsafe_arena_set_allocated_create_conversion_stmt(::pg_query::CreateConversionStmt* value); + ::pg_query::CreateConversionStmt* unsafe_arena_release_create_conversion_stmt(); - enum : int { - kRelationFieldNumber = 3, - kConcurrentFieldNumber = 1, - kSkipDataFieldNumber = 2, - }; - // .pg_query.RangeVar relation = 3 [json_name = "relation"]; - bool has_relation() const; private: - bool _internal_has_relation() const; + const ::pg_query::CreateConversionStmt& _internal_create_conversion_stmt() const; + ::pg_query::CreateConversionStmt* _internal_mutable_create_conversion_stmt(); + public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + // .pg_query.CreateCastStmt create_cast_stmt = 228 [json_name = "CreateCastStmt"]; + bool has_create_cast_stmt() const; private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + bool _internal_has_create_cast_stmt() const; + public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + void clear_create_cast_stmt() ; + const ::pg_query::CreateCastStmt& create_cast_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateCastStmt* release_create_cast_stmt(); + ::pg_query::CreateCastStmt* mutable_create_cast_stmt(); + void set_allocated_create_cast_stmt(::pg_query::CreateCastStmt* value); + void unsafe_arena_set_allocated_create_cast_stmt(::pg_query::CreateCastStmt* value); + ::pg_query::CreateCastStmt* unsafe_arena_release_create_cast_stmt(); - // bool concurrent = 1 [json_name = "concurrent"]; - void clear_concurrent(); - bool concurrent() const; - void set_concurrent(bool value); private: - bool _internal_concurrent() const; - void _internal_set_concurrent(bool value); - public: + const ::pg_query::CreateCastStmt& _internal_create_cast_stmt() const; + ::pg_query::CreateCastStmt* _internal_mutable_create_cast_stmt(); - // bool skip_data = 2 [json_name = "skipData"]; - void clear_skip_data(); - bool skip_data() const; - void set_skip_data(bool value); + public: + // .pg_query.CreateTransformStmt create_transform_stmt = 229 [json_name = "CreateTransformStmt"]; + bool has_create_transform_stmt() const; private: - bool _internal_skip_data() const; - void _internal_set_skip_data(bool value); + bool _internal_has_create_transform_stmt() const; + public: + void clear_create_transform_stmt() ; + const ::pg_query::CreateTransformStmt& create_transform_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateTransformStmt* release_create_transform_stmt(); + ::pg_query::CreateTransformStmt* mutable_create_transform_stmt(); + void set_allocated_create_transform_stmt(::pg_query::CreateTransformStmt* value); + void unsafe_arena_set_allocated_create_transform_stmt(::pg_query::CreateTransformStmt* value); + ::pg_query::CreateTransformStmt* unsafe_arena_release_create_transform_stmt(); - // @@protoc_insertion_point(class_scope:pg_query.RefreshMatViewStmt) - private: - class _Internal; + private: + const ::pg_query::CreateTransformStmt& _internal_create_transform_stmt() const; + ::pg_query::CreateTransformStmt* _internal_mutable_create_transform_stmt(); - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::pg_query::RangeVar* relation_; - bool concurrent_; - bool skip_data_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + // .pg_query.PrepareStmt prepare_stmt = 230 [json_name = "PrepareStmt"]; + bool has_prepare_stmt() const; + private: + bool _internal_has_prepare_stmt() const; -class ReplicaIdentityStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ReplicaIdentityStmt) */ { - public: - inline ReplicaIdentityStmt() : ReplicaIdentityStmt(nullptr) {} - ~ReplicaIdentityStmt() override; - explicit PROTOBUF_CONSTEXPR ReplicaIdentityStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + public: + void clear_prepare_stmt() ; + const ::pg_query::PrepareStmt& prepare_stmt() const; + PROTOBUF_NODISCARD ::pg_query::PrepareStmt* release_prepare_stmt(); + ::pg_query::PrepareStmt* mutable_prepare_stmt(); + void set_allocated_prepare_stmt(::pg_query::PrepareStmt* value); + void unsafe_arena_set_allocated_prepare_stmt(::pg_query::PrepareStmt* value); + ::pg_query::PrepareStmt* unsafe_arena_release_prepare_stmt(); - ReplicaIdentityStmt(const ReplicaIdentityStmt& from); - ReplicaIdentityStmt(ReplicaIdentityStmt&& from) noexcept - : ReplicaIdentityStmt() { - *this = ::std::move(from); - } + private: + const ::pg_query::PrepareStmt& _internal_prepare_stmt() const; + ::pg_query::PrepareStmt* _internal_mutable_prepare_stmt(); - inline ReplicaIdentityStmt& operator=(const ReplicaIdentityStmt& from) { - CopyFrom(from); - return *this; - } - inline ReplicaIdentityStmt& operator=(ReplicaIdentityStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + // .pg_query.ExecuteStmt execute_stmt = 231 [json_name = "ExecuteStmt"]; + bool has_execute_stmt() const; + private: + bool _internal_has_execute_stmt() const; - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const ReplicaIdentityStmt& default_instance() { - return *internal_default_instance(); - } - static inline const ReplicaIdentityStmt* internal_default_instance() { - return reinterpret_cast( - &_ReplicaIdentityStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 167; + public: + void clear_execute_stmt() ; + const ::pg_query::ExecuteStmt& execute_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ExecuteStmt* release_execute_stmt(); + ::pg_query::ExecuteStmt* mutable_execute_stmt(); + void set_allocated_execute_stmt(::pg_query::ExecuteStmt* value); + void unsafe_arena_set_allocated_execute_stmt(::pg_query::ExecuteStmt* value); + ::pg_query::ExecuteStmt* unsafe_arena_release_execute_stmt(); - friend void swap(ReplicaIdentityStmt& a, ReplicaIdentityStmt& b) { - a.Swap(&b); - } - inline void Swap(ReplicaIdentityStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(ReplicaIdentityStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + private: + const ::pg_query::ExecuteStmt& _internal_execute_stmt() const; + ::pg_query::ExecuteStmt* _internal_mutable_execute_stmt(); - // implements Message ---------------------------------------------- + public: + // .pg_query.DeallocateStmt deallocate_stmt = 232 [json_name = "DeallocateStmt"]; + bool has_deallocate_stmt() const; + private: + bool _internal_has_deallocate_stmt() const; + + public: + void clear_deallocate_stmt() ; + const ::pg_query::DeallocateStmt& deallocate_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DeallocateStmt* release_deallocate_stmt(); + ::pg_query::DeallocateStmt* mutable_deallocate_stmt(); + void set_allocated_deallocate_stmt(::pg_query::DeallocateStmt* value); + void unsafe_arena_set_allocated_deallocate_stmt(::pg_query::DeallocateStmt* value); + ::pg_query::DeallocateStmt* unsafe_arena_release_deallocate_stmt(); - ReplicaIdentityStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ReplicaIdentityStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ReplicaIdentityStmt& from) { - ReplicaIdentityStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::DeallocateStmt& _internal_deallocate_stmt() const; + ::pg_query::DeallocateStmt* _internal_mutable_deallocate_stmt(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.DropOwnedStmt drop_owned_stmt = 233 [json_name = "DropOwnedStmt"]; + bool has_drop_owned_stmt() const; + private: + bool _internal_has_drop_owned_stmt() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_drop_owned_stmt() ; + const ::pg_query::DropOwnedStmt& drop_owned_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DropOwnedStmt* release_drop_owned_stmt(); + ::pg_query::DropOwnedStmt* mutable_drop_owned_stmt(); + void set_allocated_drop_owned_stmt(::pg_query::DropOwnedStmt* value); + void unsafe_arena_set_allocated_drop_owned_stmt(::pg_query::DropOwnedStmt* value); + ::pg_query::DropOwnedStmt* unsafe_arena_release_drop_owned_stmt(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ReplicaIdentityStmt* other); + const ::pg_query::DropOwnedStmt& _internal_drop_owned_stmt() const; + ::pg_query::DropOwnedStmt* _internal_mutable_drop_owned_stmt(); + public: + // .pg_query.ReassignOwnedStmt reassign_owned_stmt = 234 [json_name = "ReassignOwnedStmt"]; + bool has_reassign_owned_stmt() const; private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ReplicaIdentityStmt"; - } - protected: - explicit ReplicaIdentityStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + bool _internal_has_reassign_owned_stmt() const; + public: + void clear_reassign_owned_stmt() ; + const ::pg_query::ReassignOwnedStmt& reassign_owned_stmt() const; + PROTOBUF_NODISCARD ::pg_query::ReassignOwnedStmt* release_reassign_owned_stmt(); + ::pg_query::ReassignOwnedStmt* mutable_reassign_owned_stmt(); + void set_allocated_reassign_owned_stmt(::pg_query::ReassignOwnedStmt* value); + void unsafe_arena_set_allocated_reassign_owned_stmt(::pg_query::ReassignOwnedStmt* value); + ::pg_query::ReassignOwnedStmt* unsafe_arena_release_reassign_owned_stmt(); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + private: + const ::pg_query::ReassignOwnedStmt& _internal_reassign_owned_stmt() const; + ::pg_query::ReassignOwnedStmt* _internal_mutable_reassign_owned_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + // .pg_query.AlterTSDictionaryStmt alter_tsdictionary_stmt = 235 [json_name = "AlterTSDictionaryStmt"]; + bool has_alter_tsdictionary_stmt() const; + private: + bool _internal_has_alter_tsdictionary_stmt() const; - // nested types ---------------------------------------------------- + public: + void clear_alter_tsdictionary_stmt() ; + const ::pg_query::AlterTSDictionaryStmt& alter_tsdictionary_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterTSDictionaryStmt* release_alter_tsdictionary_stmt(); + ::pg_query::AlterTSDictionaryStmt* mutable_alter_tsdictionary_stmt(); + void set_allocated_alter_tsdictionary_stmt(::pg_query::AlterTSDictionaryStmt* value); + void unsafe_arena_set_allocated_alter_tsdictionary_stmt(::pg_query::AlterTSDictionaryStmt* value); + ::pg_query::AlterTSDictionaryStmt* unsafe_arena_release_alter_tsdictionary_stmt(); - // accessors ------------------------------------------------------- + private: + const ::pg_query::AlterTSDictionaryStmt& _internal_alter_tsdictionary_stmt() const; + ::pg_query::AlterTSDictionaryStmt* _internal_mutable_alter_tsdictionary_stmt(); - enum : int { - kIdentityTypeFieldNumber = 1, - kNameFieldNumber = 2, - }; - // string identity_type = 1 [json_name = "identity_type"]; - void clear_identity_type(); - const std::string& identity_type() const; - template - void set_identity_type(ArgT0&& arg0, ArgT... args); - std::string* mutable_identity_type(); - PROTOBUF_NODISCARD std::string* release_identity_type(); - void set_allocated_identity_type(std::string* identity_type); + public: + // .pg_query.AlterTSConfigurationStmt alter_tsconfiguration_stmt = 236 [json_name = "AlterTSConfigurationStmt"]; + bool has_alter_tsconfiguration_stmt() const; private: - const std::string& _internal_identity_type() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_identity_type(const std::string& value); - std::string* _internal_mutable_identity_type(); + bool _internal_has_alter_tsconfiguration_stmt() const; + public: + void clear_alter_tsconfiguration_stmt() ; + const ::pg_query::AlterTSConfigurationStmt& alter_tsconfiguration_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterTSConfigurationStmt* release_alter_tsconfiguration_stmt(); + ::pg_query::AlterTSConfigurationStmt* mutable_alter_tsconfiguration_stmt(); + void set_allocated_alter_tsconfiguration_stmt(::pg_query::AlterTSConfigurationStmt* value); + void unsafe_arena_set_allocated_alter_tsconfiguration_stmt(::pg_query::AlterTSConfigurationStmt* value); + ::pg_query::AlterTSConfigurationStmt* unsafe_arena_release_alter_tsconfiguration_stmt(); - // string name = 2 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + const ::pg_query::AlterTSConfigurationStmt& _internal_alter_tsconfiguration_stmt() const; + ::pg_query::AlterTSConfigurationStmt* _internal_mutable_alter_tsconfiguration_stmt(); - // @@protoc_insertion_point(class_scope:pg_query.ReplicaIdentityStmt) - private: - class _Internal; + public: + // .pg_query.PublicationTable publication_table = 237 [json_name = "PublicationTable"]; + bool has_publication_table() const; + private: + bool _internal_has_publication_table() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr identity_type_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_publication_table() ; + const ::pg_query::PublicationTable& publication_table() const; + PROTOBUF_NODISCARD ::pg_query::PublicationTable* release_publication_table(); + ::pg_query::PublicationTable* mutable_publication_table(); + void set_allocated_publication_table(::pg_query::PublicationTable* value); + void unsafe_arena_set_allocated_publication_table(::pg_query::PublicationTable* value); + ::pg_query::PublicationTable* unsafe_arena_release_publication_table(); -class AlterSystemStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterSystemStmt) */ { - public: - inline AlterSystemStmt() : AlterSystemStmt(nullptr) {} - ~AlterSystemStmt() override; - explicit PROTOBUF_CONSTEXPR AlterSystemStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::PublicationTable& _internal_publication_table() const; + ::pg_query::PublicationTable* _internal_mutable_publication_table(); - AlterSystemStmt(const AlterSystemStmt& from); - AlterSystemStmt(AlterSystemStmt&& from) noexcept - : AlterSystemStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.PublicationObjSpec publication_obj_spec = 238 [json_name = "PublicationObjSpec"]; + bool has_publication_obj_spec() const; + private: + bool _internal_has_publication_obj_spec() const; - inline AlterSystemStmt& operator=(const AlterSystemStmt& from) { - CopyFrom(from); - return *this; - } - inline AlterSystemStmt& operator=(AlterSystemStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_publication_obj_spec() ; + const ::pg_query::PublicationObjSpec& publication_obj_spec() const; + PROTOBUF_NODISCARD ::pg_query::PublicationObjSpec* release_publication_obj_spec(); + ::pg_query::PublicationObjSpec* mutable_publication_obj_spec(); + void set_allocated_publication_obj_spec(::pg_query::PublicationObjSpec* value); + void unsafe_arena_set_allocated_publication_obj_spec(::pg_query::PublicationObjSpec* value); + ::pg_query::PublicationObjSpec* unsafe_arena_release_publication_obj_spec(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterSystemStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterSystemStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterSystemStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 168; + private: + const ::pg_query::PublicationObjSpec& _internal_publication_obj_spec() const; + ::pg_query::PublicationObjSpec* _internal_mutable_publication_obj_spec(); - friend void swap(AlterSystemStmt& a, AlterSystemStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterSystemStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterSystemStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.CreatePublicationStmt create_publication_stmt = 239 [json_name = "CreatePublicationStmt"]; + bool has_create_publication_stmt() const; + private: + bool _internal_has_create_publication_stmt() const; - // implements Message ---------------------------------------------- + public: + void clear_create_publication_stmt() ; + const ::pg_query::CreatePublicationStmt& create_publication_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreatePublicationStmt* release_create_publication_stmt(); + ::pg_query::CreatePublicationStmt* mutable_create_publication_stmt(); + void set_allocated_create_publication_stmt(::pg_query::CreatePublicationStmt* value); + void unsafe_arena_set_allocated_create_publication_stmt(::pg_query::CreatePublicationStmt* value); + ::pg_query::CreatePublicationStmt* unsafe_arena_release_create_publication_stmt(); - AlterSystemStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterSystemStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterSystemStmt& from) { - AlterSystemStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::CreatePublicationStmt& _internal_create_publication_stmt() const; + ::pg_query::CreatePublicationStmt* _internal_mutable_create_publication_stmt(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.AlterPublicationStmt alter_publication_stmt = 240 [json_name = "AlterPublicationStmt"]; + bool has_alter_publication_stmt() const; + private: + bool _internal_has_alter_publication_stmt() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_alter_publication_stmt() ; + const ::pg_query::AlterPublicationStmt& alter_publication_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterPublicationStmt* release_alter_publication_stmt(); + ::pg_query::AlterPublicationStmt* mutable_alter_publication_stmt(); + void set_allocated_alter_publication_stmt(::pg_query::AlterPublicationStmt* value); + void unsafe_arena_set_allocated_alter_publication_stmt(::pg_query::AlterPublicationStmt* value); + ::pg_query::AlterPublicationStmt* unsafe_arena_release_alter_publication_stmt(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterSystemStmt* other); + const ::pg_query::AlterPublicationStmt& _internal_alter_publication_stmt() const; + ::pg_query::AlterPublicationStmt* _internal_mutable_alter_publication_stmt(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterSystemStmt"; - } - protected: - explicit AlterSystemStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.CreateSubscriptionStmt create_subscription_stmt = 241 [json_name = "CreateSubscriptionStmt"]; + bool has_create_subscription_stmt() const; + private: + bool _internal_has_create_subscription_stmt() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_create_subscription_stmt() ; + const ::pg_query::CreateSubscriptionStmt& create_subscription_stmt() const; + PROTOBUF_NODISCARD ::pg_query::CreateSubscriptionStmt* release_create_subscription_stmt(); + ::pg_query::CreateSubscriptionStmt* mutable_create_subscription_stmt(); + void set_allocated_create_subscription_stmt(::pg_query::CreateSubscriptionStmt* value); + void unsafe_arena_set_allocated_create_subscription_stmt(::pg_query::CreateSubscriptionStmt* value); + ::pg_query::CreateSubscriptionStmt* unsafe_arena_release_create_subscription_stmt(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::CreateSubscriptionStmt& _internal_create_subscription_stmt() const; + ::pg_query::CreateSubscriptionStmt* _internal_mutable_create_subscription_stmt(); - // nested types ---------------------------------------------------- + public: + // .pg_query.AlterSubscriptionStmt alter_subscription_stmt = 242 [json_name = "AlterSubscriptionStmt"]; + bool has_alter_subscription_stmt() const; + private: + bool _internal_has_alter_subscription_stmt() const; - // accessors ------------------------------------------------------- + public: + void clear_alter_subscription_stmt() ; + const ::pg_query::AlterSubscriptionStmt& alter_subscription_stmt() const; + PROTOBUF_NODISCARD ::pg_query::AlterSubscriptionStmt* release_alter_subscription_stmt(); + ::pg_query::AlterSubscriptionStmt* mutable_alter_subscription_stmt(); + void set_allocated_alter_subscription_stmt(::pg_query::AlterSubscriptionStmt* value); + void unsafe_arena_set_allocated_alter_subscription_stmt(::pg_query::AlterSubscriptionStmt* value); + ::pg_query::AlterSubscriptionStmt* unsafe_arena_release_alter_subscription_stmt(); - enum : int { - kSetstmtFieldNumber = 1, - }; - // .pg_query.VariableSetStmt setstmt = 1 [json_name = "setstmt"]; - bool has_setstmt() const; private: - bool _internal_has_setstmt() const; + const ::pg_query::AlterSubscriptionStmt& _internal_alter_subscription_stmt() const; + ::pg_query::AlterSubscriptionStmt* _internal_mutable_alter_subscription_stmt(); + public: - void clear_setstmt(); - const ::pg_query::VariableSetStmt& setstmt() const; - PROTOBUF_NODISCARD ::pg_query::VariableSetStmt* release_setstmt(); - ::pg_query::VariableSetStmt* mutable_setstmt(); - void set_allocated_setstmt(::pg_query::VariableSetStmt* setstmt); + // .pg_query.DropSubscriptionStmt drop_subscription_stmt = 243 [json_name = "DropSubscriptionStmt"]; + bool has_drop_subscription_stmt() const; private: - const ::pg_query::VariableSetStmt& _internal_setstmt() const; - ::pg_query::VariableSetStmt* _internal_mutable_setstmt(); - public: - void unsafe_arena_set_allocated_setstmt( - ::pg_query::VariableSetStmt* setstmt); - ::pg_query::VariableSetStmt* unsafe_arena_release_setstmt(); - - // @@protoc_insertion_point(class_scope:pg_query.AlterSystemStmt) - private: - class _Internal; + bool _internal_has_drop_subscription_stmt() const; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::pg_query::VariableSetStmt* setstmt_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- + public: + void clear_drop_subscription_stmt() ; + const ::pg_query::DropSubscriptionStmt& drop_subscription_stmt() const; + PROTOBUF_NODISCARD ::pg_query::DropSubscriptionStmt* release_drop_subscription_stmt(); + ::pg_query::DropSubscriptionStmt* mutable_drop_subscription_stmt(); + void set_allocated_drop_subscription_stmt(::pg_query::DropSubscriptionStmt* value); + void unsafe_arena_set_allocated_drop_subscription_stmt(::pg_query::DropSubscriptionStmt* value); + ::pg_query::DropSubscriptionStmt* unsafe_arena_release_drop_subscription_stmt(); -class CreatePolicyStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreatePolicyStmt) */ { - public: - inline CreatePolicyStmt() : CreatePolicyStmt(nullptr) {} - ~CreatePolicyStmt() override; - explicit PROTOBUF_CONSTEXPR CreatePolicyStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + private: + const ::pg_query::DropSubscriptionStmt& _internal_drop_subscription_stmt() const; + ::pg_query::DropSubscriptionStmt* _internal_mutable_drop_subscription_stmt(); - CreatePolicyStmt(const CreatePolicyStmt& from); - CreatePolicyStmt(CreatePolicyStmt&& from) noexcept - : CreatePolicyStmt() { - *this = ::std::move(from); - } + public: + // .pg_query.Integer integer = 244 [json_name = "Integer"]; + bool has_integer() const; + private: + bool _internal_has_integer() const; - inline CreatePolicyStmt& operator=(const CreatePolicyStmt& from) { - CopyFrom(from); - return *this; - } - inline CreatePolicyStmt& operator=(CreatePolicyStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } + public: + void clear_integer() ; + const ::pg_query::Integer& integer() const; + PROTOBUF_NODISCARD ::pg_query::Integer* release_integer(); + ::pg_query::Integer* mutable_integer(); + void set_allocated_integer(::pg_query::Integer* value); + void unsafe_arena_set_allocated_integer(::pg_query::Integer* value); + ::pg_query::Integer* unsafe_arena_release_integer(); - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const CreatePolicyStmt& default_instance() { - return *internal_default_instance(); - } - static inline const CreatePolicyStmt* internal_default_instance() { - return reinterpret_cast( - &_CreatePolicyStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 169; + private: + const ::pg_query::Integer& _internal_integer() const; + ::pg_query::Integer* _internal_mutable_integer(); - friend void swap(CreatePolicyStmt& a, CreatePolicyStmt& b) { - a.Swap(&b); - } - inline void Swap(CreatePolicyStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(CreatePolicyStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } + public: + // .pg_query.Float float = 245 [json_name = "Float"]; + bool has_float_() const; + private: + bool _internal_has_float_() const; - // implements Message ---------------------------------------------- + public: + void clear_float_() ; + const ::pg_query::Float& float_() const; + PROTOBUF_NODISCARD ::pg_query::Float* release_float_(); + ::pg_query::Float* mutable_float_(); + void set_allocated_float_(::pg_query::Float* value); + void unsafe_arena_set_allocated_float_(::pg_query::Float* value); + ::pg_query::Float* unsafe_arena_release_float_(); - CreatePolicyStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreatePolicyStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreatePolicyStmt& from) { - CreatePolicyStmt::MergeImpl(*this, from); - } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::pg_query::Float& _internal_float_() const; + ::pg_query::Float* _internal_mutable_float_(); + public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + // .pg_query.Boolean boolean = 246 [json_name = "Boolean"]; + bool has_boolean() const; + private: + bool _internal_has_boolean() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_boolean() ; + const ::pg_query::Boolean& boolean() const; + PROTOBUF_NODISCARD ::pg_query::Boolean* release_boolean(); + ::pg_query::Boolean* mutable_boolean(); + void set_allocated_boolean(::pg_query::Boolean* value); + void unsafe_arena_set_allocated_boolean(::pg_query::Boolean* value); + ::pg_query::Boolean* unsafe_arena_release_boolean(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreatePolicyStmt* other); + const ::pg_query::Boolean& _internal_boolean() const; + ::pg_query::Boolean* _internal_mutable_boolean(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreatePolicyStmt"; - } - protected: - explicit CreatePolicyStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.String string = 247 [json_name = "String"]; + bool has_string() const; + private: + bool _internal_has_string() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_string() ; + const ::pg_query::String& string() const; + PROTOBUF_NODISCARD ::pg_query::String* release_string(); + ::pg_query::String* mutable_string(); + void set_allocated_string(::pg_query::String* value); + void unsafe_arena_set_allocated_string(::pg_query::String* value); + ::pg_query::String* unsafe_arena_release_string(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + const ::pg_query::String& _internal_string() const; + ::pg_query::String* _internal_mutable_string(); - // nested types ---------------------------------------------------- + public: + // .pg_query.BitString bit_string = 248 [json_name = "BitString"]; + bool has_bit_string() const; + private: + bool _internal_has_bit_string() const; - // accessors ------------------------------------------------------- + public: + void clear_bit_string() ; + const ::pg_query::BitString& bit_string() const; + PROTOBUF_NODISCARD ::pg_query::BitString* release_bit_string(); + ::pg_query::BitString* mutable_bit_string(); + void set_allocated_bit_string(::pg_query::BitString* value); + void unsafe_arena_set_allocated_bit_string(::pg_query::BitString* value); + ::pg_query::BitString* unsafe_arena_release_bit_string(); - enum : int { - kRolesFieldNumber = 5, - kPolicyNameFieldNumber = 1, - kCmdNameFieldNumber = 3, - kTableFieldNumber = 2, - kQualFieldNumber = 6, - kWithCheckFieldNumber = 7, - kPermissiveFieldNumber = 4, - }; - // repeated .pg_query.Node roles = 5 [json_name = "roles"]; - int roles_size() const; private: - int _internal_roles_size() const; + const ::pg_query::BitString& _internal_bit_string() const; + ::pg_query::BitString* _internal_mutable_bit_string(); + public: - void clear_roles(); - ::pg_query::Node* mutable_roles(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_roles(); + // .pg_query.List list = 249 [json_name = "List"]; + bool has_list() const; private: - const ::pg_query::Node& _internal_roles(int index) const; - ::pg_query::Node* _internal_add_roles(); + bool _internal_has_list() const; + public: - const ::pg_query::Node& roles(int index) const; - ::pg_query::Node* add_roles(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - roles() const; + void clear_list() ; + const ::pg_query::List& list() const; + PROTOBUF_NODISCARD ::pg_query::List* release_list(); + ::pg_query::List* mutable_list(); + void set_allocated_list(::pg_query::List* value); + void unsafe_arena_set_allocated_list(::pg_query::List* value); + ::pg_query::List* unsafe_arena_release_list(); - // string policy_name = 1 [json_name = "policy_name"]; - void clear_policy_name(); - const std::string& policy_name() const; - template - void set_policy_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_policy_name(); - PROTOBUF_NODISCARD std::string* release_policy_name(); - void set_allocated_policy_name(std::string* policy_name); private: - const std::string& _internal_policy_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_policy_name(const std::string& value); - std::string* _internal_mutable_policy_name(); - public: + const ::pg_query::List& _internal_list() const; + ::pg_query::List* _internal_mutable_list(); - // string cmd_name = 3 [json_name = "cmd_name"]; - void clear_cmd_name(); - const std::string& cmd_name() const; - template - void set_cmd_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_cmd_name(); - PROTOBUF_NODISCARD std::string* release_cmd_name(); - void set_allocated_cmd_name(std::string* cmd_name); + public: + // .pg_query.IntList int_list = 250 [json_name = "IntList"]; + bool has_int_list() const; private: - const std::string& _internal_cmd_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_cmd_name(const std::string& value); - std::string* _internal_mutable_cmd_name(); + bool _internal_has_int_list() const; + public: + void clear_int_list() ; + const ::pg_query::IntList& int_list() const; + PROTOBUF_NODISCARD ::pg_query::IntList* release_int_list(); + ::pg_query::IntList* mutable_int_list(); + void set_allocated_int_list(::pg_query::IntList* value); + void unsafe_arena_set_allocated_int_list(::pg_query::IntList* value); + ::pg_query::IntList* unsafe_arena_release_int_list(); - // .pg_query.RangeVar table = 2 [json_name = "table"]; - bool has_table() const; private: - bool _internal_has_table() const; + const ::pg_query::IntList& _internal_int_list() const; + ::pg_query::IntList* _internal_mutable_int_list(); + public: - void clear_table(); - const ::pg_query::RangeVar& table() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_table(); - ::pg_query::RangeVar* mutable_table(); - void set_allocated_table(::pg_query::RangeVar* table); + // .pg_query.OidList oid_list = 251 [json_name = "OidList"]; + bool has_oid_list() const; private: - const ::pg_query::RangeVar& _internal_table() const; - ::pg_query::RangeVar* _internal_mutable_table(); + bool _internal_has_oid_list() const; + public: - void unsafe_arena_set_allocated_table( - ::pg_query::RangeVar* table); - ::pg_query::RangeVar* unsafe_arena_release_table(); + void clear_oid_list() ; + const ::pg_query::OidList& oid_list() const; + PROTOBUF_NODISCARD ::pg_query::OidList* release_oid_list(); + ::pg_query::OidList* mutable_oid_list(); + void set_allocated_oid_list(::pg_query::OidList* value); + void unsafe_arena_set_allocated_oid_list(::pg_query::OidList* value); + ::pg_query::OidList* unsafe_arena_release_oid_list(); - // .pg_query.Node qual = 6 [json_name = "qual"]; - bool has_qual() const; private: - bool _internal_has_qual() const; + const ::pg_query::OidList& _internal_oid_list() const; + ::pg_query::OidList* _internal_mutable_oid_list(); + public: - void clear_qual(); - const ::pg_query::Node& qual() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_qual(); - ::pg_query::Node* mutable_qual(); - void set_allocated_qual(::pg_query::Node* qual); + // .pg_query.A_Const a_const = 252 [json_name = "A_Const"]; + bool has_a_const() const; private: - const ::pg_query::Node& _internal_qual() const; - ::pg_query::Node* _internal_mutable_qual(); + bool _internal_has_a_const() const; + public: - void unsafe_arena_set_allocated_qual( - ::pg_query::Node* qual); - ::pg_query::Node* unsafe_arena_release_qual(); + void clear_a_const() ; + const ::pg_query::A_Const& a_const() const; + PROTOBUF_NODISCARD ::pg_query::A_Const* release_a_const(); + ::pg_query::A_Const* mutable_a_const(); + void set_allocated_a_const(::pg_query::A_Const* value); + void unsafe_arena_set_allocated_a_const(::pg_query::A_Const* value); + ::pg_query::A_Const* unsafe_arena_release_a_const(); + + private: + const ::pg_query::A_Const& _internal_a_const() const; + ::pg_query::A_Const* _internal_mutable_a_const(); + + public: + void clear_node(); + NodeCase node_case() const; + // @@protoc_insertion_point(class_scope:pg_query.Node) + private: + class _Internal; + void set_has_alias(); + void set_has_range_var(); + void set_has_table_func(); + void set_has_into_clause(); + void set_has_var(); + void set_has_param(); + void set_has_aggref(); + void set_has_grouping_func(); + void set_has_window_func(); + void set_has_subscripting_ref(); + void set_has_func_expr(); + void set_has_named_arg_expr(); + void set_has_op_expr(); + void set_has_distinct_expr(); + void set_has_null_if_expr(); + void set_has_scalar_array_op_expr(); + void set_has_bool_expr(); + void set_has_sub_link(); + void set_has_sub_plan(); + void set_has_alternative_sub_plan(); + void set_has_field_select(); + void set_has_field_store(); + void set_has_relabel_type(); + void set_has_coerce_via_io(); + void set_has_array_coerce_expr(); + void set_has_convert_rowtype_expr(); + void set_has_collate_expr(); + void set_has_case_expr(); + void set_has_case_when(); + void set_has_case_test_expr(); + void set_has_array_expr(); + void set_has_row_expr(); + void set_has_row_compare_expr(); + void set_has_coalesce_expr(); + void set_has_min_max_expr(); + void set_has_sqlvalue_function(); + void set_has_xml_expr(); + void set_has_json_format(); + void set_has_json_returning(); + void set_has_json_value_expr(); + void set_has_json_constructor_expr(); + void set_has_json_is_predicate(); + void set_has_null_test(); + void set_has_boolean_test(); + void set_has_coerce_to_domain(); + void set_has_coerce_to_domain_value(); + void set_has_set_to_default(); + void set_has_current_of_expr(); + void set_has_next_value_expr(); + void set_has_inference_elem(); + void set_has_target_entry(); + void set_has_range_tbl_ref(); + void set_has_join_expr(); + void set_has_from_expr(); + void set_has_on_conflict_expr(); + void set_has_query(); + void set_has_type_name(); + void set_has_column_ref(); + void set_has_param_ref(); + void set_has_a_expr(); + void set_has_type_cast(); + void set_has_collate_clause(); + void set_has_role_spec(); + void set_has_func_call(); + void set_has_a_star(); + void set_has_a_indices(); + void set_has_a_indirection(); + void set_has_a_array_expr(); + void set_has_res_target(); + void set_has_multi_assign_ref(); + void set_has_sort_by(); + void set_has_window_def(); + void set_has_range_subselect(); + void set_has_range_function(); + void set_has_range_table_func(); + void set_has_range_table_func_col(); + void set_has_range_table_sample(); + void set_has_column_def(); + void set_has_table_like_clause(); + void set_has_index_elem(); + void set_has_def_elem(); + void set_has_locking_clause(); + void set_has_xml_serialize(); + void set_has_partition_elem(); + void set_has_partition_spec(); + void set_has_partition_bound_spec(); + void set_has_partition_range_datum(); + void set_has_partition_cmd(); + void set_has_range_tbl_entry(); + void set_has_rtepermission_info(); + void set_has_range_tbl_function(); + void set_has_table_sample_clause(); + void set_has_with_check_option(); + void set_has_sort_group_clause(); + void set_has_grouping_set(); + void set_has_window_clause(); + void set_has_row_mark_clause(); + void set_has_with_clause(); + void set_has_infer_clause(); + void set_has_on_conflict_clause(); + void set_has_ctesearch_clause(); + void set_has_ctecycle_clause(); + void set_has_common_table_expr(); + void set_has_merge_when_clause(); + void set_has_merge_action(); + void set_has_trigger_transition(); + void set_has_json_output(); + void set_has_json_key_value(); + void set_has_json_object_constructor(); + void set_has_json_array_constructor(); + void set_has_json_array_query_constructor(); + void set_has_json_agg_constructor(); + void set_has_json_object_agg(); + void set_has_json_array_agg(); + void set_has_raw_stmt(); + void set_has_insert_stmt(); + void set_has_delete_stmt(); + void set_has_update_stmt(); + void set_has_merge_stmt(); + void set_has_select_stmt(); + void set_has_set_operation_stmt(); + void set_has_return_stmt(); + void set_has_plassign_stmt(); + void set_has_create_schema_stmt(); + void set_has_alter_table_stmt(); + void set_has_replica_identity_stmt(); + void set_has_alter_table_cmd(); + void set_has_alter_collation_stmt(); + void set_has_alter_domain_stmt(); + void set_has_grant_stmt(); + void set_has_object_with_args(); + void set_has_access_priv(); + void set_has_grant_role_stmt(); + void set_has_alter_default_privileges_stmt(); + void set_has_copy_stmt(); + void set_has_variable_set_stmt(); + void set_has_variable_show_stmt(); + void set_has_create_stmt(); + void set_has_constraint(); + void set_has_create_table_space_stmt(); + void set_has_drop_table_space_stmt(); + void set_has_alter_table_space_options_stmt(); + void set_has_alter_table_move_all_stmt(); + void set_has_create_extension_stmt(); + void set_has_alter_extension_stmt(); + void set_has_alter_extension_contents_stmt(); + void set_has_create_fdw_stmt(); + void set_has_alter_fdw_stmt(); + void set_has_create_foreign_server_stmt(); + void set_has_alter_foreign_server_stmt(); + void set_has_create_foreign_table_stmt(); + void set_has_create_user_mapping_stmt(); + void set_has_alter_user_mapping_stmt(); + void set_has_drop_user_mapping_stmt(); + void set_has_import_foreign_schema_stmt(); + void set_has_create_policy_stmt(); + void set_has_alter_policy_stmt(); + void set_has_create_am_stmt(); + void set_has_create_trig_stmt(); + void set_has_create_event_trig_stmt(); + void set_has_alter_event_trig_stmt(); + void set_has_create_plang_stmt(); + void set_has_create_role_stmt(); + void set_has_alter_role_stmt(); + void set_has_alter_role_set_stmt(); + void set_has_drop_role_stmt(); + void set_has_create_seq_stmt(); + void set_has_alter_seq_stmt(); + void set_has_define_stmt(); + void set_has_create_domain_stmt(); + void set_has_create_op_class_stmt(); + void set_has_create_op_class_item(); + void set_has_create_op_family_stmt(); + void set_has_alter_op_family_stmt(); + void set_has_drop_stmt(); + void set_has_truncate_stmt(); + void set_has_comment_stmt(); + void set_has_sec_label_stmt(); + void set_has_declare_cursor_stmt(); + void set_has_close_portal_stmt(); + void set_has_fetch_stmt(); + void set_has_index_stmt(); + void set_has_create_stats_stmt(); + void set_has_stats_elem(); + void set_has_alter_stats_stmt(); + void set_has_create_function_stmt(); + void set_has_function_parameter(); + void set_has_alter_function_stmt(); + void set_has_do_stmt(); + void set_has_inline_code_block(); + void set_has_call_stmt(); + void set_has_call_context(); + void set_has_rename_stmt(); + void set_has_alter_object_depends_stmt(); + void set_has_alter_object_schema_stmt(); + void set_has_alter_owner_stmt(); + void set_has_alter_operator_stmt(); + void set_has_alter_type_stmt(); + void set_has_rule_stmt(); + void set_has_notify_stmt(); + void set_has_listen_stmt(); + void set_has_unlisten_stmt(); + void set_has_transaction_stmt(); + void set_has_composite_type_stmt(); + void set_has_create_enum_stmt(); + void set_has_create_range_stmt(); + void set_has_alter_enum_stmt(); + void set_has_view_stmt(); + void set_has_load_stmt(); + void set_has_createdb_stmt(); + void set_has_alter_database_stmt(); + void set_has_alter_database_refresh_coll_stmt(); + void set_has_alter_database_set_stmt(); + void set_has_dropdb_stmt(); + void set_has_alter_system_stmt(); + void set_has_cluster_stmt(); + void set_has_vacuum_stmt(); + void set_has_vacuum_relation(); + void set_has_explain_stmt(); + void set_has_create_table_as_stmt(); + void set_has_refresh_mat_view_stmt(); + void set_has_check_point_stmt(); + void set_has_discard_stmt(); + void set_has_lock_stmt(); + void set_has_constraints_set_stmt(); + void set_has_reindex_stmt(); + void set_has_create_conversion_stmt(); + void set_has_create_cast_stmt(); + void set_has_create_transform_stmt(); + void set_has_prepare_stmt(); + void set_has_execute_stmt(); + void set_has_deallocate_stmt(); + void set_has_drop_owned_stmt(); + void set_has_reassign_owned_stmt(); + void set_has_alter_tsdictionary_stmt(); + void set_has_alter_tsconfiguration_stmt(); + void set_has_publication_table(); + void set_has_publication_obj_spec(); + void set_has_create_publication_stmt(); + void set_has_alter_publication_stmt(); + void set_has_create_subscription_stmt(); + void set_has_alter_subscription_stmt(); + void set_has_drop_subscription_stmt(); + void set_has_integer(); + void set_has_float_(); + void set_has_boolean(); + void set_has_string(); + void set_has_bit_string(); + void set_has_list(); + void set_has_int_list(); + void set_has_oid_list(); + void set_has_a_const(); - // .pg_query.Node with_check = 7 [json_name = "with_check"]; - bool has_with_check() const; - private: - bool _internal_has_with_check() const; - public: - void clear_with_check(); - const ::pg_query::Node& with_check() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_with_check(); - ::pg_query::Node* mutable_with_check(); - void set_allocated_with_check(::pg_query::Node* with_check); - private: - const ::pg_query::Node& _internal_with_check() const; - ::pg_query::Node* _internal_mutable_with_check(); - public: - void unsafe_arena_set_allocated_with_check( - ::pg_query::Node* with_check); - ::pg_query::Node* unsafe_arena_release_with_check(); + inline bool has_node() const; + inline void clear_has_node(); - // bool permissive = 4 [json_name = "permissive"]; - void clear_permissive(); - bool permissive() const; - void set_permissive(bool value); - private: - bool _internal_permissive() const; - void _internal_set_permissive(bool value); - public: + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 252, 252, + 0, 33> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { - // @@protoc_insertion_point(class_scope:pg_query.CreatePolicyStmt) - private: - class _Internal; + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + union NodeUnion { + constexpr NodeUnion() : _constinit_{} {} + ::google::protobuf::internal::ConstantInitialized _constinit_; + ::pg_query::Alias* alias_; + ::pg_query::RangeVar* range_var_; + ::pg_query::TableFunc* table_func_; + ::pg_query::IntoClause* into_clause_; + ::pg_query::Var* var_; + ::pg_query::Param* param_; + ::pg_query::Aggref* aggref_; + ::pg_query::GroupingFunc* grouping_func_; + ::pg_query::WindowFunc* window_func_; + ::pg_query::SubscriptingRef* subscripting_ref_; + ::pg_query::FuncExpr* func_expr_; + ::pg_query::NamedArgExpr* named_arg_expr_; + ::pg_query::OpExpr* op_expr_; + ::pg_query::DistinctExpr* distinct_expr_; + ::pg_query::NullIfExpr* null_if_expr_; + ::pg_query::ScalarArrayOpExpr* scalar_array_op_expr_; + ::pg_query::BoolExpr* bool_expr_; + ::pg_query::SubLink* sub_link_; + ::pg_query::SubPlan* sub_plan_; + ::pg_query::AlternativeSubPlan* alternative_sub_plan_; + ::pg_query::FieldSelect* field_select_; + ::pg_query::FieldStore* field_store_; + ::pg_query::RelabelType* relabel_type_; + ::pg_query::CoerceViaIO* coerce_via_io_; + ::pg_query::ArrayCoerceExpr* array_coerce_expr_; + ::pg_query::ConvertRowtypeExpr* convert_rowtype_expr_; + ::pg_query::CollateExpr* collate_expr_; + ::pg_query::CaseExpr* case_expr_; + ::pg_query::CaseWhen* case_when_; + ::pg_query::CaseTestExpr* case_test_expr_; + ::pg_query::ArrayExpr* array_expr_; + ::pg_query::RowExpr* row_expr_; + ::pg_query::RowCompareExpr* row_compare_expr_; + ::pg_query::CoalesceExpr* coalesce_expr_; + ::pg_query::MinMaxExpr* min_max_expr_; + ::pg_query::SQLValueFunction* sqlvalue_function_; + ::pg_query::XmlExpr* xml_expr_; + ::pg_query::JsonFormat* json_format_; + ::pg_query::JsonReturning* json_returning_; + ::pg_query::JsonValueExpr* json_value_expr_; + ::pg_query::JsonConstructorExpr* json_constructor_expr_; + ::pg_query::JsonIsPredicate* json_is_predicate_; + ::pg_query::NullTest* null_test_; + ::pg_query::BooleanTest* boolean_test_; + ::pg_query::CoerceToDomain* coerce_to_domain_; + ::pg_query::CoerceToDomainValue* coerce_to_domain_value_; + ::pg_query::SetToDefault* set_to_default_; + ::pg_query::CurrentOfExpr* current_of_expr_; + ::pg_query::NextValueExpr* next_value_expr_; + ::pg_query::InferenceElem* inference_elem_; + ::pg_query::TargetEntry* target_entry_; + ::pg_query::RangeTblRef* range_tbl_ref_; + ::pg_query::JoinExpr* join_expr_; + ::pg_query::FromExpr* from_expr_; + ::pg_query::OnConflictExpr* on_conflict_expr_; + ::pg_query::Query* query_; + ::pg_query::TypeName* type_name_; + ::pg_query::ColumnRef* column_ref_; + ::pg_query::ParamRef* param_ref_; + ::pg_query::A_Expr* a_expr_; + ::pg_query::TypeCast* type_cast_; + ::pg_query::CollateClause* collate_clause_; + ::pg_query::RoleSpec* role_spec_; + ::pg_query::FuncCall* func_call_; + ::pg_query::A_Star* a_star_; + ::pg_query::A_Indices* a_indices_; + ::pg_query::A_Indirection* a_indirection_; + ::pg_query::A_ArrayExpr* a_array_expr_; + ::pg_query::ResTarget* res_target_; + ::pg_query::MultiAssignRef* multi_assign_ref_; + ::pg_query::SortBy* sort_by_; + ::pg_query::WindowDef* window_def_; + ::pg_query::RangeSubselect* range_subselect_; + ::pg_query::RangeFunction* range_function_; + ::pg_query::RangeTableFunc* range_table_func_; + ::pg_query::RangeTableFuncCol* range_table_func_col_; + ::pg_query::RangeTableSample* range_table_sample_; + ::pg_query::ColumnDef* column_def_; + ::pg_query::TableLikeClause* table_like_clause_; + ::pg_query::IndexElem* index_elem_; + ::pg_query::DefElem* def_elem_; + ::pg_query::LockingClause* locking_clause_; + ::pg_query::XmlSerialize* xml_serialize_; + ::pg_query::PartitionElem* partition_elem_; + ::pg_query::PartitionSpec* partition_spec_; + ::pg_query::PartitionBoundSpec* partition_bound_spec_; + ::pg_query::PartitionRangeDatum* partition_range_datum_; + ::pg_query::PartitionCmd* partition_cmd_; + ::pg_query::RangeTblEntry* range_tbl_entry_; + ::pg_query::RTEPermissionInfo* rtepermission_info_; + ::pg_query::RangeTblFunction* range_tbl_function_; + ::pg_query::TableSampleClause* table_sample_clause_; + ::pg_query::WithCheckOption* with_check_option_; + ::pg_query::SortGroupClause* sort_group_clause_; + ::pg_query::GroupingSet* grouping_set_; + ::pg_query::WindowClause* window_clause_; + ::pg_query::RowMarkClause* row_mark_clause_; + ::pg_query::WithClause* with_clause_; + ::pg_query::InferClause* infer_clause_; + ::pg_query::OnConflictClause* on_conflict_clause_; + ::pg_query::CTESearchClause* ctesearch_clause_; + ::pg_query::CTECycleClause* ctecycle_clause_; + ::pg_query::CommonTableExpr* common_table_expr_; + ::pg_query::MergeWhenClause* merge_when_clause_; + ::pg_query::MergeAction* merge_action_; + ::pg_query::TriggerTransition* trigger_transition_; + ::pg_query::JsonOutput* json_output_; + ::pg_query::JsonKeyValue* json_key_value_; + ::pg_query::JsonObjectConstructor* json_object_constructor_; + ::pg_query::JsonArrayConstructor* json_array_constructor_; + ::pg_query::JsonArrayQueryConstructor* json_array_query_constructor_; + ::pg_query::JsonAggConstructor* json_agg_constructor_; + ::pg_query::JsonObjectAgg* json_object_agg_; + ::pg_query::JsonArrayAgg* json_array_agg_; + ::pg_query::RawStmt* raw_stmt_; + ::pg_query::InsertStmt* insert_stmt_; + ::pg_query::DeleteStmt* delete_stmt_; + ::pg_query::UpdateStmt* update_stmt_; + ::pg_query::MergeStmt* merge_stmt_; + ::pg_query::SelectStmt* select_stmt_; + ::pg_query::SetOperationStmt* set_operation_stmt_; + ::pg_query::ReturnStmt* return_stmt_; + ::pg_query::PLAssignStmt* plassign_stmt_; + ::pg_query::CreateSchemaStmt* create_schema_stmt_; + ::pg_query::AlterTableStmt* alter_table_stmt_; + ::pg_query::ReplicaIdentityStmt* replica_identity_stmt_; + ::pg_query::AlterTableCmd* alter_table_cmd_; + ::pg_query::AlterCollationStmt* alter_collation_stmt_; + ::pg_query::AlterDomainStmt* alter_domain_stmt_; + ::pg_query::GrantStmt* grant_stmt_; + ::pg_query::ObjectWithArgs* object_with_args_; + ::pg_query::AccessPriv* access_priv_; + ::pg_query::GrantRoleStmt* grant_role_stmt_; + ::pg_query::AlterDefaultPrivilegesStmt* alter_default_privileges_stmt_; + ::pg_query::CopyStmt* copy_stmt_; + ::pg_query::VariableSetStmt* variable_set_stmt_; + ::pg_query::VariableShowStmt* variable_show_stmt_; + ::pg_query::CreateStmt* create_stmt_; + ::pg_query::Constraint* constraint_; + ::pg_query::CreateTableSpaceStmt* create_table_space_stmt_; + ::pg_query::DropTableSpaceStmt* drop_table_space_stmt_; + ::pg_query::AlterTableSpaceOptionsStmt* alter_table_space_options_stmt_; + ::pg_query::AlterTableMoveAllStmt* alter_table_move_all_stmt_; + ::pg_query::CreateExtensionStmt* create_extension_stmt_; + ::pg_query::AlterExtensionStmt* alter_extension_stmt_; + ::pg_query::AlterExtensionContentsStmt* alter_extension_contents_stmt_; + ::pg_query::CreateFdwStmt* create_fdw_stmt_; + ::pg_query::AlterFdwStmt* alter_fdw_stmt_; + ::pg_query::CreateForeignServerStmt* create_foreign_server_stmt_; + ::pg_query::AlterForeignServerStmt* alter_foreign_server_stmt_; + ::pg_query::CreateForeignTableStmt* create_foreign_table_stmt_; + ::pg_query::CreateUserMappingStmt* create_user_mapping_stmt_; + ::pg_query::AlterUserMappingStmt* alter_user_mapping_stmt_; + ::pg_query::DropUserMappingStmt* drop_user_mapping_stmt_; + ::pg_query::ImportForeignSchemaStmt* import_foreign_schema_stmt_; + ::pg_query::CreatePolicyStmt* create_policy_stmt_; + ::pg_query::AlterPolicyStmt* alter_policy_stmt_; + ::pg_query::CreateAmStmt* create_am_stmt_; + ::pg_query::CreateTrigStmt* create_trig_stmt_; + ::pg_query::CreateEventTrigStmt* create_event_trig_stmt_; + ::pg_query::AlterEventTrigStmt* alter_event_trig_stmt_; + ::pg_query::CreatePLangStmt* create_plang_stmt_; + ::pg_query::CreateRoleStmt* create_role_stmt_; + ::pg_query::AlterRoleStmt* alter_role_stmt_; + ::pg_query::AlterRoleSetStmt* alter_role_set_stmt_; + ::pg_query::DropRoleStmt* drop_role_stmt_; + ::pg_query::CreateSeqStmt* create_seq_stmt_; + ::pg_query::AlterSeqStmt* alter_seq_stmt_; + ::pg_query::DefineStmt* define_stmt_; + ::pg_query::CreateDomainStmt* create_domain_stmt_; + ::pg_query::CreateOpClassStmt* create_op_class_stmt_; + ::pg_query::CreateOpClassItem* create_op_class_item_; + ::pg_query::CreateOpFamilyStmt* create_op_family_stmt_; + ::pg_query::AlterOpFamilyStmt* alter_op_family_stmt_; + ::pg_query::DropStmt* drop_stmt_; + ::pg_query::TruncateStmt* truncate_stmt_; + ::pg_query::CommentStmt* comment_stmt_; + ::pg_query::SecLabelStmt* sec_label_stmt_; + ::pg_query::DeclareCursorStmt* declare_cursor_stmt_; + ::pg_query::ClosePortalStmt* close_portal_stmt_; + ::pg_query::FetchStmt* fetch_stmt_; + ::pg_query::IndexStmt* index_stmt_; + ::pg_query::CreateStatsStmt* create_stats_stmt_; + ::pg_query::StatsElem* stats_elem_; + ::pg_query::AlterStatsStmt* alter_stats_stmt_; + ::pg_query::CreateFunctionStmt* create_function_stmt_; + ::pg_query::FunctionParameter* function_parameter_; + ::pg_query::AlterFunctionStmt* alter_function_stmt_; + ::pg_query::DoStmt* do_stmt_; + ::pg_query::InlineCodeBlock* inline_code_block_; + ::pg_query::CallStmt* call_stmt_; + ::pg_query::CallContext* call_context_; + ::pg_query::RenameStmt* rename_stmt_; + ::pg_query::AlterObjectDependsStmt* alter_object_depends_stmt_; + ::pg_query::AlterObjectSchemaStmt* alter_object_schema_stmt_; + ::pg_query::AlterOwnerStmt* alter_owner_stmt_; + ::pg_query::AlterOperatorStmt* alter_operator_stmt_; + ::pg_query::AlterTypeStmt* alter_type_stmt_; + ::pg_query::RuleStmt* rule_stmt_; + ::pg_query::NotifyStmt* notify_stmt_; + ::pg_query::ListenStmt* listen_stmt_; + ::pg_query::UnlistenStmt* unlisten_stmt_; + ::pg_query::TransactionStmt* transaction_stmt_; + ::pg_query::CompositeTypeStmt* composite_type_stmt_; + ::pg_query::CreateEnumStmt* create_enum_stmt_; + ::pg_query::CreateRangeStmt* create_range_stmt_; + ::pg_query::AlterEnumStmt* alter_enum_stmt_; + ::pg_query::ViewStmt* view_stmt_; + ::pg_query::LoadStmt* load_stmt_; + ::pg_query::CreatedbStmt* createdb_stmt_; + ::pg_query::AlterDatabaseStmt* alter_database_stmt_; + ::pg_query::AlterDatabaseRefreshCollStmt* alter_database_refresh_coll_stmt_; + ::pg_query::AlterDatabaseSetStmt* alter_database_set_stmt_; + ::pg_query::DropdbStmt* dropdb_stmt_; + ::pg_query::AlterSystemStmt* alter_system_stmt_; + ::pg_query::ClusterStmt* cluster_stmt_; + ::pg_query::VacuumStmt* vacuum_stmt_; + ::pg_query::VacuumRelation* vacuum_relation_; + ::pg_query::ExplainStmt* explain_stmt_; + ::pg_query::CreateTableAsStmt* create_table_as_stmt_; + ::pg_query::RefreshMatViewStmt* refresh_mat_view_stmt_; + ::pg_query::CheckPointStmt* check_point_stmt_; + ::pg_query::DiscardStmt* discard_stmt_; + ::pg_query::LockStmt* lock_stmt_; + ::pg_query::ConstraintsSetStmt* constraints_set_stmt_; + ::pg_query::ReindexStmt* reindex_stmt_; + ::pg_query::CreateConversionStmt* create_conversion_stmt_; + ::pg_query::CreateCastStmt* create_cast_stmt_; + ::pg_query::CreateTransformStmt* create_transform_stmt_; + ::pg_query::PrepareStmt* prepare_stmt_; + ::pg_query::ExecuteStmt* execute_stmt_; + ::pg_query::DeallocateStmt* deallocate_stmt_; + ::pg_query::DropOwnedStmt* drop_owned_stmt_; + ::pg_query::ReassignOwnedStmt* reassign_owned_stmt_; + ::pg_query::AlterTSDictionaryStmt* alter_tsdictionary_stmt_; + ::pg_query::AlterTSConfigurationStmt* alter_tsconfiguration_stmt_; + ::pg_query::PublicationTable* publication_table_; + ::pg_query::PublicationObjSpec* publication_obj_spec_; + ::pg_query::CreatePublicationStmt* create_publication_stmt_; + ::pg_query::AlterPublicationStmt* alter_publication_stmt_; + ::pg_query::CreateSubscriptionStmt* create_subscription_stmt_; + ::pg_query::AlterSubscriptionStmt* alter_subscription_stmt_; + ::pg_query::DropSubscriptionStmt* drop_subscription_stmt_; + ::pg_query::Integer* integer_; + ::pg_query::Float* float__; + ::pg_query::Boolean* boolean_; + ::pg_query::String* string_; + ::pg_query::BitString* bit_string_; + ::pg_query::List* list_; + ::pg_query::IntList* int_list_; + ::pg_query::OidList* oid_list_; + ::pg_query::A_Const* a_const_; + } node_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::uint32_t _oneof_case_[1]; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > roles_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cmd_name_; - ::pg_query::RangeVar* table_; - ::pg_query::Node* qual_; - ::pg_query::Node* with_check_; - bool permissive_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterPolicyStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterPolicyStmt) */ { +class NullIfExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.NullIfExpr) */ { public: - inline AlterPolicyStmt() : AlterPolicyStmt(nullptr) {} - ~AlterPolicyStmt() override; - explicit PROTOBUF_CONSTEXPR AlterPolicyStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline NullIfExpr() : NullIfExpr(nullptr) {} + ~NullIfExpr() override; + template + explicit PROTOBUF_CONSTEXPR NullIfExpr(::google::protobuf::internal::ConstantInitialized); - AlterPolicyStmt(const AlterPolicyStmt& from); - AlterPolicyStmt(AlterPolicyStmt&& from) noexcept - : AlterPolicyStmt() { + inline NullIfExpr(const NullIfExpr& from) + : NullIfExpr(nullptr, from) {} + NullIfExpr(NullIfExpr&& from) noexcept + : NullIfExpr() { *this = ::std::move(from); } - inline AlterPolicyStmt& operator=(const AlterPolicyStmt& from) { + inline NullIfExpr& operator=(const NullIfExpr& from) { CopyFrom(from); return *this; } - inline AlterPolicyStmt& operator=(AlterPolicyStmt&& from) noexcept { + inline NullIfExpr& operator=(NullIfExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -45361,454 +53165,270 @@ class AlterPolicyStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const AlterPolicyStmt& default_instance() { - return *internal_default_instance(); - } - static inline const AlterPolicyStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterPolicyStmt_default_instance_); - } - static constexpr int kIndexInFileMessages = - 170; - - friend void swap(AlterPolicyStmt& a, AlterPolicyStmt& b) { - a.Swap(&b); - } - inline void Swap(AlterPolicyStmt* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(AlterPolicyStmt* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - AlterPolicyStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterPolicyStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterPolicyStmt& from) { - AlterPolicyStmt::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterPolicyStmt* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterPolicyStmt"; - } - protected: - explicit AlterPolicyStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kRolesFieldNumber = 3, - kPolicyNameFieldNumber = 1, - kTableFieldNumber = 2, - kQualFieldNumber = 4, - kWithCheckFieldNumber = 5, - }; - // repeated .pg_query.Node roles = 3 [json_name = "roles"]; - int roles_size() const; - private: - int _internal_roles_size() const; - public: - void clear_roles(); - ::pg_query::Node* mutable_roles(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_roles(); - private: - const ::pg_query::Node& _internal_roles(int index) const; - ::pg_query::Node* _internal_add_roles(); - public: - const ::pg_query::Node& roles(int index) const; - ::pg_query::Node* add_roles(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - roles() const; - - // string policy_name = 1 [json_name = "policy_name"]; - void clear_policy_name(); - const std::string& policy_name() const; - template - void set_policy_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_policy_name(); - PROTOBUF_NODISCARD std::string* release_policy_name(); - void set_allocated_policy_name(std::string* policy_name); - private: - const std::string& _internal_policy_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_policy_name(const std::string& value); - std::string* _internal_mutable_policy_name(); - public: - - // .pg_query.RangeVar table = 2 [json_name = "table"]; - bool has_table() const; - private: - bool _internal_has_table() const; - public: - void clear_table(); - const ::pg_query::RangeVar& table() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_table(); - ::pg_query::RangeVar* mutable_table(); - void set_allocated_table(::pg_query::RangeVar* table); - private: - const ::pg_query::RangeVar& _internal_table() const; - ::pg_query::RangeVar* _internal_mutable_table(); - public: - void unsafe_arena_set_allocated_table( - ::pg_query::RangeVar* table); - ::pg_query::RangeVar* unsafe_arena_release_table(); - - // .pg_query.Node qual = 4 [json_name = "qual"]; - bool has_qual() const; - private: - bool _internal_has_qual() const; - public: - void clear_qual(); - const ::pg_query::Node& qual() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_qual(); - ::pg_query::Node* mutable_qual(); - void set_allocated_qual(::pg_query::Node* qual); - private: - const ::pg_query::Node& _internal_qual() const; - ::pg_query::Node* _internal_mutable_qual(); - public: - void unsafe_arena_set_allocated_qual( - ::pg_query::Node* qual); - ::pg_query::Node* unsafe_arena_release_qual(); - - // .pg_query.Node with_check = 5 [json_name = "with_check"]; - bool has_with_check() const; - private: - bool _internal_has_with_check() const; - public: - void clear_with_check(); - const ::pg_query::Node& with_check() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_with_check(); - ::pg_query::Node* mutable_with_check(); - void set_allocated_with_check(::pg_query::Node* with_check); - private: - const ::pg_query::Node& _internal_with_check() const; - ::pg_query::Node* _internal_mutable_with_check(); - public: - void unsafe_arena_set_allocated_with_check( - ::pg_query::Node* with_check); - ::pg_query::Node* unsafe_arena_release_with_check(); - - // @@protoc_insertion_point(class_scope:pg_query.AlterPolicyStmt) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > roles_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_name_; - ::pg_query::RangeVar* table_; - ::pg_query::Node* qual_; - ::pg_query::Node* with_check_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- - -class CreateTransformStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateTransformStmt) */ { - public: - inline CreateTransformStmt() : CreateTransformStmt(nullptr) {} - ~CreateTransformStmt() override; - explicit PROTOBUF_CONSTEXPR CreateTransformStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - CreateTransformStmt(const CreateTransformStmt& from); - CreateTransformStmt(CreateTransformStmt&& from) noexcept - : CreateTransformStmt() { - *this = ::std::move(from); - } - - inline CreateTransformStmt& operator=(const CreateTransformStmt& from) { - CopyFrom(from); - return *this; + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); } - inline CreateTransformStmt& operator=(CreateTransformStmt&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateTransformStmt& default_instance() { + static const NullIfExpr& default_instance() { return *internal_default_instance(); } - static inline const CreateTransformStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateTransformStmt_default_instance_); + static inline const NullIfExpr* internal_default_instance() { + return reinterpret_cast( + &_NullIfExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 171; + 26; - friend void swap(CreateTransformStmt& a, CreateTransformStmt& b) { + friend void swap(NullIfExpr& a, NullIfExpr& b) { a.Swap(&b); } - inline void Swap(CreateTransformStmt* other) { + inline void Swap(NullIfExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateTransformStmt* other) { + void UnsafeArenaSwap(NullIfExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateTransformStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + NullIfExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateTransformStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateTransformStmt& from) { - CreateTransformStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const NullIfExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const NullIfExpr& from) { + NullIfExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateTransformStmt* other); + void InternalSwap(NullIfExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateTransformStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.NullIfExpr"; } protected: - explicit CreateTransformStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit NullIfExpr(::google::protobuf::Arena* arena); + NullIfExpr(::google::protobuf::Arena* arena, const NullIfExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kLangFieldNumber = 3, - kTypeNameFieldNumber = 2, - kFromsqlFieldNumber = 4, - kTosqlFieldNumber = 5, - kReplaceFieldNumber = 1, + kArgsFieldNumber = 7, + kXprFieldNumber = 1, + kOpnoFieldNumber = 2, + kOpresulttypeFieldNumber = 3, + kOpretsetFieldNumber = 4, + kOpcollidFieldNumber = 5, + kInputcollidFieldNumber = 6, + kLocationFieldNumber = 8, }; - // string lang = 3 [json_name = "lang"]; - void clear_lang(); - const std::string& lang() const; - template - void set_lang(ArgT0&& arg0, ArgT... args); - std::string* mutable_lang(); - PROTOBUF_NODISCARD std::string* release_lang(); - void set_allocated_lang(std::string* lang); + // repeated .pg_query.Node args = 7 [json_name = "args"]; + int args_size() const; private: - const std::string& _internal_lang() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_lang(const std::string& value); - std::string* _internal_mutable_lang(); - public: + int _internal_args_size() const; - // .pg_query.TypeName type_name = 2 [json_name = "type_name"]; - bool has_type_name() const; + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - bool _internal_has_type_name() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - void clear_type_name(); - const ::pg_query::TypeName& type_name() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); - ::pg_query::TypeName* mutable_type_name(); - void set_allocated_type_name(::pg_query::TypeName* type_name); + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: - const ::pg_query::TypeName& _internal_type_name() const; - ::pg_query::TypeName* _internal_mutable_type_name(); + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name); - ::pg_query::TypeName* unsafe_arena_release_type_name(); + // uint32 opno = 2 [json_name = "opno"]; + void clear_opno() ; + ::uint32_t opno() const; + void set_opno(::uint32_t value); - // .pg_query.ObjectWithArgs fromsql = 4 [json_name = "fromsql"]; - bool has_fromsql() const; private: - bool _internal_has_fromsql() const; + ::uint32_t _internal_opno() const; + void _internal_set_opno(::uint32_t value); + public: - void clear_fromsql(); - const ::pg_query::ObjectWithArgs& fromsql() const; - PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_fromsql(); - ::pg_query::ObjectWithArgs* mutable_fromsql(); - void set_allocated_fromsql(::pg_query::ObjectWithArgs* fromsql); + // uint32 opresulttype = 3 [json_name = "opresulttype"]; + void clear_opresulttype() ; + ::uint32_t opresulttype() const; + void set_opresulttype(::uint32_t value); + private: - const ::pg_query::ObjectWithArgs& _internal_fromsql() const; - ::pg_query::ObjectWithArgs* _internal_mutable_fromsql(); + ::uint32_t _internal_opresulttype() const; + void _internal_set_opresulttype(::uint32_t value); + public: - void unsafe_arena_set_allocated_fromsql( - ::pg_query::ObjectWithArgs* fromsql); - ::pg_query::ObjectWithArgs* unsafe_arena_release_fromsql(); + // bool opretset = 4 [json_name = "opretset"]; + void clear_opretset() ; + bool opretset() const; + void set_opretset(bool value); - // .pg_query.ObjectWithArgs tosql = 5 [json_name = "tosql"]; - bool has_tosql() const; private: - bool _internal_has_tosql() const; + bool _internal_opretset() const; + void _internal_set_opretset(bool value); + public: - void clear_tosql(); - const ::pg_query::ObjectWithArgs& tosql() const; - PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_tosql(); - ::pg_query::ObjectWithArgs* mutable_tosql(); - void set_allocated_tosql(::pg_query::ObjectWithArgs* tosql); + // uint32 opcollid = 5 [json_name = "opcollid"]; + void clear_opcollid() ; + ::uint32_t opcollid() const; + void set_opcollid(::uint32_t value); + private: - const ::pg_query::ObjectWithArgs& _internal_tosql() const; - ::pg_query::ObjectWithArgs* _internal_mutable_tosql(); + ::uint32_t _internal_opcollid() const; + void _internal_set_opcollid(::uint32_t value); + public: - void unsafe_arena_set_allocated_tosql( - ::pg_query::ObjectWithArgs* tosql); - ::pg_query::ObjectWithArgs* unsafe_arena_release_tosql(); + // uint32 inputcollid = 6 [json_name = "inputcollid"]; + void clear_inputcollid() ; + ::uint32_t inputcollid() const; + void set_inputcollid(::uint32_t value); - // bool replace = 1 [json_name = "replace"]; - void clear_replace(); - bool replace() const; - void set_replace(bool value); private: - bool _internal_replace() const; - void _internal_set_replace(bool value); + ::uint32_t _internal_inputcollid() const; + void _internal_set_inputcollid(::uint32_t value); + public: + // int32 location = 8 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CreateTransformStmt) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.NullIfExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr lang_; - ::pg_query::TypeName* type_name_; - ::pg_query::ObjectWithArgs* fromsql_; - ::pg_query::ObjectWithArgs* tosql_; - bool replace_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* xpr_; + ::uint32_t opno_; + ::uint32_t opresulttype_; + bool opretset_; + ::uint32_t opcollid_; + ::uint32_t inputcollid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateAmStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateAmStmt) */ { +class NullTest final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.NullTest) */ { public: - inline CreateAmStmt() : CreateAmStmt(nullptr) {} - ~CreateAmStmt() override; - explicit PROTOBUF_CONSTEXPR CreateAmStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline NullTest() : NullTest(nullptr) {} + ~NullTest() override; + template + explicit PROTOBUF_CONSTEXPR NullTest(::google::protobuf::internal::ConstantInitialized); - CreateAmStmt(const CreateAmStmt& from); - CreateAmStmt(CreateAmStmt&& from) noexcept - : CreateAmStmt() { + inline NullTest(const NullTest& from) + : NullTest(nullptr, from) {} + NullTest(NullTest&& from) noexcept + : NullTest() { *this = ::std::move(from); } - inline CreateAmStmt& operator=(const CreateAmStmt& from) { + inline NullTest& operator=(const NullTest& from) { CopyFrom(from); return *this; } - inline CreateAmStmt& operator=(CreateAmStmt&& from) noexcept { + inline NullTest& operator=(NullTest&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -45818,186 +53438,231 @@ class CreateAmStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateAmStmt& default_instance() { + static const NullTest& default_instance() { return *internal_default_instance(); } - static inline const CreateAmStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateAmStmt_default_instance_); + static inline const NullTest* internal_default_instance() { + return reinterpret_cast( + &_NullTest_default_instance_); } static constexpr int kIndexInFileMessages = - 172; + 54; - friend void swap(CreateAmStmt& a, CreateAmStmt& b) { + friend void swap(NullTest& a, NullTest& b) { a.Swap(&b); } - inline void Swap(CreateAmStmt* other) { + inline void Swap(NullTest* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateAmStmt* other) { + void UnsafeArenaSwap(NullTest* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateAmStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + NullTest* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateAmStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateAmStmt& from) { - CreateAmStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const NullTest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const NullTest& from) { + NullTest::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateAmStmt* other); + void InternalSwap(NullTest* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateAmStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.NullTest"; } protected: - explicit CreateAmStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit NullTest(::google::protobuf::Arena* arena); + NullTest(::google::protobuf::Arena* arena, const NullTest& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kHandlerNameFieldNumber = 2, - kAmnameFieldNumber = 1, - kAmtypeFieldNumber = 3, + kXprFieldNumber = 1, + kArgFieldNumber = 2, + kNulltesttypeFieldNumber = 3, + kArgisrowFieldNumber = 4, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node handler_name = 2 [json_name = "handler_name"]; - int handler_name_size() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: - int _internal_handler_name_size() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_handler_name(); - ::pg_query::Node* mutable_handler_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_handler_name(); + // .pg_query.Node arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); + private: - const ::pg_query::Node& _internal_handler_name(int index) const; - ::pg_query::Node* _internal_add_handler_name(); + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + public: - const ::pg_query::Node& handler_name(int index) const; - ::pg_query::Node* add_handler_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - handler_name() const; + // .pg_query.NullTestType nulltesttype = 3 [json_name = "nulltesttype"]; + void clear_nulltesttype() ; + ::pg_query::NullTestType nulltesttype() const; + void set_nulltesttype(::pg_query::NullTestType value); - // string amname = 1 [json_name = "amname"]; - void clear_amname(); - const std::string& amname() const; - template - void set_amname(ArgT0&& arg0, ArgT... args); - std::string* mutable_amname(); - PROTOBUF_NODISCARD std::string* release_amname(); - void set_allocated_amname(std::string* amname); private: - const std::string& _internal_amname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_amname(const std::string& value); - std::string* _internal_mutable_amname(); + ::pg_query::NullTestType _internal_nulltesttype() const; + void _internal_set_nulltesttype(::pg_query::NullTestType value); + public: + // bool argisrow = 4 [json_name = "argisrow"]; + void clear_argisrow() ; + bool argisrow() const; + void set_argisrow(bool value); - // string amtype = 3 [json_name = "amtype"]; - void clear_amtype(); - const std::string& amtype() const; - template - void set_amtype(ArgT0&& arg0, ArgT... args); - std::string* mutable_amtype(); - PROTOBUF_NODISCARD std::string* release_amtype(); - void set_allocated_amtype(std::string* amtype); private: - const std::string& _internal_amtype() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_amtype(const std::string& value); - std::string* _internal_mutable_amtype(); + bool _internal_argisrow() const; + void _internal_set_argisrow(bool value); + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CreateAmStmt) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.NullTest) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > handler_name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr amname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr amtype_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* xpr_; + ::pg_query::Node* arg_; + int nulltesttype_; + bool argisrow_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreatePublicationStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreatePublicationStmt) */ { +class ObjectWithArgs final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ObjectWithArgs) */ { public: - inline CreatePublicationStmt() : CreatePublicationStmt(nullptr) {} - ~CreatePublicationStmt() override; - explicit PROTOBUF_CONSTEXPR CreatePublicationStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ObjectWithArgs() : ObjectWithArgs(nullptr) {} + ~ObjectWithArgs() override; + template + explicit PROTOBUF_CONSTEXPR ObjectWithArgs(::google::protobuf::internal::ConstantInitialized); - CreatePublicationStmt(const CreatePublicationStmt& from); - CreatePublicationStmt(CreatePublicationStmt&& from) noexcept - : CreatePublicationStmt() { + inline ObjectWithArgs(const ObjectWithArgs& from) + : ObjectWithArgs(nullptr, from) {} + ObjectWithArgs(ObjectWithArgs&& from) noexcept + : ObjectWithArgs() { *this = ::std::move(from); } - inline CreatePublicationStmt& operator=(const CreatePublicationStmt& from) { + inline ObjectWithArgs& operator=(const ObjectWithArgs& from) { CopyFrom(from); return *this; } - inline CreatePublicationStmt& operator=(CreatePublicationStmt&& from) noexcept { + inline ObjectWithArgs& operator=(ObjectWithArgs&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -46007,201 +53672,232 @@ class CreatePublicationStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreatePublicationStmt& default_instance() { + static const ObjectWithArgs& default_instance() { return *internal_default_instance(); } - static inline const CreatePublicationStmt* internal_default_instance() { - return reinterpret_cast( - &_CreatePublicationStmt_default_instance_); + static inline const ObjectWithArgs* internal_default_instance() { + return reinterpret_cast( + &_ObjectWithArgs_default_instance_); } static constexpr int kIndexInFileMessages = - 173; + 142; - friend void swap(CreatePublicationStmt& a, CreatePublicationStmt& b) { + friend void swap(ObjectWithArgs& a, ObjectWithArgs& b) { a.Swap(&b); } - inline void Swap(CreatePublicationStmt* other) { + inline void Swap(ObjectWithArgs* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreatePublicationStmt* other) { + void UnsafeArenaSwap(ObjectWithArgs* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreatePublicationStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ObjectWithArgs* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreatePublicationStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreatePublicationStmt& from) { - CreatePublicationStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ObjectWithArgs& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ObjectWithArgs& from) { + ObjectWithArgs::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreatePublicationStmt* other); + void InternalSwap(ObjectWithArgs* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreatePublicationStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ObjectWithArgs"; } protected: - explicit CreatePublicationStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ObjectWithArgs(::google::protobuf::Arena* arena); + ObjectWithArgs(::google::protobuf::Arena* arena, const ObjectWithArgs& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kPubobjectsFieldNumber = 3, - kPubnameFieldNumber = 1, - kForAllTablesFieldNumber = 4, + kObjnameFieldNumber = 1, + kObjargsFieldNumber = 2, + kObjfuncargsFieldNumber = 3, + kArgsUnspecifiedFieldNumber = 4, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; + // repeated .pg_query.Node objname = 1 [json_name = "objname"]; + int objname_size() const; private: - int _internal_options_size() const; + int _internal_objname_size() const; + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + void clear_objname() ; + ::pg_query::Node* mutable_objname(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_objname(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_objname() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_objname(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; - - // repeated .pg_query.Node pubobjects = 3 [json_name = "pubobjects"]; - int pubobjects_size() const; + const ::pg_query::Node& objname(int index) const; + ::pg_query::Node* add_objname(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + objname() const; + // repeated .pg_query.Node objargs = 2 [json_name = "objargs"]; + int objargs_size() const; private: - int _internal_pubobjects_size() const; + int _internal_objargs_size() const; + public: - void clear_pubobjects(); - ::pg_query::Node* mutable_pubobjects(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_pubobjects(); + void clear_objargs() ; + ::pg_query::Node* mutable_objargs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_objargs(); private: - const ::pg_query::Node& _internal_pubobjects(int index) const; - ::pg_query::Node* _internal_add_pubobjects(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_objargs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_objargs(); public: - const ::pg_query::Node& pubobjects(int index) const; - ::pg_query::Node* add_pubobjects(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - pubobjects() const; + const ::pg_query::Node& objargs(int index) const; + ::pg_query::Node* add_objargs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + objargs() const; + // repeated .pg_query.Node objfuncargs = 3 [json_name = "objfuncargs"]; + int objfuncargs_size() const; + private: + int _internal_objfuncargs_size() const; - // string pubname = 1 [json_name = "pubname"]; - void clear_pubname(); - const std::string& pubname() const; - template - void set_pubname(ArgT0&& arg0, ArgT... args); - std::string* mutable_pubname(); - PROTOBUF_NODISCARD std::string* release_pubname(); - void set_allocated_pubname(std::string* pubname); + public: + void clear_objfuncargs() ; + ::pg_query::Node* mutable_objfuncargs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_objfuncargs(); private: - const std::string& _internal_pubname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_pubname(const std::string& value); - std::string* _internal_mutable_pubname(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_objfuncargs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_objfuncargs(); public: + const ::pg_query::Node& objfuncargs(int index) const; + ::pg_query::Node* add_objfuncargs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + objfuncargs() const; + // bool args_unspecified = 4 [json_name = "args_unspecified"]; + void clear_args_unspecified() ; + bool args_unspecified() const; + void set_args_unspecified(bool value); - // bool for_all_tables = 4 [json_name = "for_all_tables"]; - void clear_for_all_tables(); - bool for_all_tables() const; - void set_for_all_tables(bool value); private: - bool _internal_for_all_tables() const; - void _internal_set_for_all_tables(bool value); - public: + bool _internal_args_unspecified() const; + void _internal_set_args_unspecified(bool value); - // @@protoc_insertion_point(class_scope:pg_query.CreatePublicationStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.ObjectWithArgs) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > pubobjects_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr pubname_; - bool for_all_tables_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > objname_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > objargs_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > objfuncargs_; + bool args_unspecified_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterPublicationStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterPublicationStmt) */ { +class OidList final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.OidList) */ { public: - inline AlterPublicationStmt() : AlterPublicationStmt(nullptr) {} - ~AlterPublicationStmt() override; - explicit PROTOBUF_CONSTEXPR AlterPublicationStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline OidList() : OidList(nullptr) {} + ~OidList() override; + template + explicit PROTOBUF_CONSTEXPR OidList(::google::protobuf::internal::ConstantInitialized); - AlterPublicationStmt(const AlterPublicationStmt& from); - AlterPublicationStmt(AlterPublicationStmt&& from) noexcept - : AlterPublicationStmt() { + inline OidList(const OidList& from) + : OidList(nullptr, from) {} + OidList(OidList&& from) noexcept + : OidList() { *this = ::std::move(from); } - inline AlterPublicationStmt& operator=(const AlterPublicationStmt& from) { + inline OidList& operator=(const OidList& from) { CopyFrom(from); return *this; } - inline AlterPublicationStmt& operator=(AlterPublicationStmt&& from) noexcept { + inline OidList& operator=(OidList&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -46211,212 +53907,180 @@ class AlterPublicationStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterPublicationStmt& default_instance() { + static const OidList& default_instance() { return *internal_default_instance(); } - static inline const AlterPublicationStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterPublicationStmt_default_instance_); + static inline const OidList* internal_default_instance() { + return reinterpret_cast( + &_OidList_default_instance_); } static constexpr int kIndexInFileMessages = - 174; + 9; - friend void swap(AlterPublicationStmt& a, AlterPublicationStmt& b) { + friend void swap(OidList& a, OidList& b) { a.Swap(&b); } - inline void Swap(AlterPublicationStmt* other) { + inline void Swap(OidList* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterPublicationStmt* other) { + void UnsafeArenaSwap(OidList* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterPublicationStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + OidList* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterPublicationStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterPublicationStmt& from) { - AlterPublicationStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const OidList& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const OidList& from) { + OidList::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterPublicationStmt* other); + void InternalSwap(OidList* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterPublicationStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.OidList"; } protected: - explicit AlterPublicationStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit OidList(::google::protobuf::Arena* arena); + OidList(::google::protobuf::Arena* arena, const OidList& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOptionsFieldNumber = 2, - kPubobjectsFieldNumber = 3, - kPubnameFieldNumber = 1, - kForAllTablesFieldNumber = 4, - kActionFieldNumber = 5, + kItemsFieldNumber = 1, }; - // repeated .pg_query.Node options = 2 [json_name = "options"]; - int options_size() const; - private: - int _internal_options_size() const; - public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); - private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); - public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; - - // repeated .pg_query.Node pubobjects = 3 [json_name = "pubobjects"]; - int pubobjects_size() const; - private: - int _internal_pubobjects_size() const; - public: - void clear_pubobjects(); - ::pg_query::Node* mutable_pubobjects(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_pubobjects(); - private: - const ::pg_query::Node& _internal_pubobjects(int index) const; - ::pg_query::Node* _internal_add_pubobjects(); - public: - const ::pg_query::Node& pubobjects(int index) const; - ::pg_query::Node* add_pubobjects(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - pubobjects() const; - - // string pubname = 1 [json_name = "pubname"]; - void clear_pubname(); - const std::string& pubname() const; - template - void set_pubname(ArgT0&& arg0, ArgT... args); - std::string* mutable_pubname(); - PROTOBUF_NODISCARD std::string* release_pubname(); - void set_allocated_pubname(std::string* pubname); + // repeated .pg_query.Node items = 1; + int items_size() const; private: - const std::string& _internal_pubname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_pubname(const std::string& value); - std::string* _internal_mutable_pubname(); - public: + int _internal_items_size() const; - // bool for_all_tables = 4 [json_name = "for_all_tables"]; - void clear_for_all_tables(); - bool for_all_tables() const; - void set_for_all_tables(bool value); - private: - bool _internal_for_all_tables() const; - void _internal_set_for_all_tables(bool value); public: - - // .pg_query.AlterPublicationAction action = 5 [json_name = "action"]; - void clear_action(); - ::pg_query::AlterPublicationAction action() const; - void set_action(::pg_query::AlterPublicationAction value); + void clear_items() ; + ::pg_query::Node* mutable_items(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_items(); private: - ::pg_query::AlterPublicationAction _internal_action() const; - void _internal_set_action(::pg_query::AlterPublicationAction value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_items() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_items(); public: - - // @@protoc_insertion_point(class_scope:pg_query.AlterPublicationStmt) + const ::pg_query::Node& items(int index) const; + ::pg_query::Node* add_items(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + items() const; + // @@protoc_insertion_point(class_scope:pg_query.OidList) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > pubobjects_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr pubname_; - bool for_all_tables_; - int action_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > items_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateSubscriptionStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateSubscriptionStmt) */ { +class OnConflictClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.OnConflictClause) */ { public: - inline CreateSubscriptionStmt() : CreateSubscriptionStmt(nullptr) {} - ~CreateSubscriptionStmt() override; - explicit PROTOBUF_CONSTEXPR CreateSubscriptionStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline OnConflictClause() : OnConflictClause(nullptr) {} + ~OnConflictClause() override; + template + explicit PROTOBUF_CONSTEXPR OnConflictClause(::google::protobuf::internal::ConstantInitialized); - CreateSubscriptionStmt(const CreateSubscriptionStmt& from); - CreateSubscriptionStmt(CreateSubscriptionStmt&& from) noexcept - : CreateSubscriptionStmt() { + inline OnConflictClause(const OnConflictClause& from) + : OnConflictClause(nullptr, from) {} + OnConflictClause(OnConflictClause&& from) noexcept + : OnConflictClause() { *this = ::std::move(from); } - inline CreateSubscriptionStmt& operator=(const CreateSubscriptionStmt& from) { + inline OnConflictClause& operator=(const OnConflictClause& from) { CopyFrom(from); return *this; } - inline CreateSubscriptionStmt& operator=(CreateSubscriptionStmt&& from) noexcept { + inline OnConflictClause& operator=(OnConflictClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -46426,206 +54090,239 @@ class CreateSubscriptionStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateSubscriptionStmt& default_instance() { + static const OnConflictClause& default_instance() { return *internal_default_instance(); } - static inline const CreateSubscriptionStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateSubscriptionStmt_default_instance_); + static inline const OnConflictClause* internal_default_instance() { + return reinterpret_cast( + &_OnConflictClause_default_instance_); } static constexpr int kIndexInFileMessages = - 175; + 111; - friend void swap(CreateSubscriptionStmt& a, CreateSubscriptionStmt& b) { + friend void swap(OnConflictClause& a, OnConflictClause& b) { a.Swap(&b); } - inline void Swap(CreateSubscriptionStmt* other) { + inline void Swap(OnConflictClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateSubscriptionStmt* other) { + void UnsafeArenaSwap(OnConflictClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateSubscriptionStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + OnConflictClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateSubscriptionStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateSubscriptionStmt& from) { - CreateSubscriptionStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const OnConflictClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const OnConflictClause& from) { + OnConflictClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateSubscriptionStmt* other); + void InternalSwap(OnConflictClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateSubscriptionStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.OnConflictClause"; } protected: - explicit CreateSubscriptionStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit OnConflictClause(::google::protobuf::Arena* arena); + OnConflictClause(::google::protobuf::Arena* arena, const OnConflictClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kPublicationFieldNumber = 3, - kOptionsFieldNumber = 4, - kSubnameFieldNumber = 1, - kConninfoFieldNumber = 2, + kTargetListFieldNumber = 3, + kInferFieldNumber = 2, + kWhereClauseFieldNumber = 4, + kActionFieldNumber = 1, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node publication = 3 [json_name = "publication"]; - int publication_size() const; + // repeated .pg_query.Node target_list = 3 [json_name = "targetList"]; + int target_list_size() const; private: - int _internal_publication_size() const; + int _internal_target_list_size() const; + public: - void clear_publication(); - ::pg_query::Node* mutable_publication(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_publication(); + void clear_target_list() ; + ::pg_query::Node* mutable_target_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_target_list(); private: - const ::pg_query::Node& _internal_publication(int index) const; - ::pg_query::Node* _internal_add_publication(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_target_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_target_list(); public: - const ::pg_query::Node& publication(int index) const; - ::pg_query::Node* add_publication(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - publication() const; + const ::pg_query::Node& target_list(int index) const; + ::pg_query::Node* add_target_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + target_list() const; + // .pg_query.InferClause infer = 2 [json_name = "infer"]; + bool has_infer() const; + void clear_infer() ; + const ::pg_query::InferClause& infer() const; + PROTOBUF_NODISCARD ::pg_query::InferClause* release_infer(); + ::pg_query::InferClause* mutable_infer(); + void set_allocated_infer(::pg_query::InferClause* value); + void unsafe_arena_set_allocated_infer(::pg_query::InferClause* value); + ::pg_query::InferClause* unsafe_arena_release_infer(); - // repeated .pg_query.Node options = 4 [json_name = "options"]; - int options_size() const; private: - int _internal_options_size() const; + const ::pg_query::InferClause& _internal_infer() const; + ::pg_query::InferClause* _internal_mutable_infer(); + public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + // .pg_query.Node where_clause = 4 [json_name = "whereClause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); + private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); + public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + // .pg_query.OnConflictAction action = 1 [json_name = "action"]; + void clear_action() ; + ::pg_query::OnConflictAction action() const; + void set_action(::pg_query::OnConflictAction value); - // string subname = 1 [json_name = "subname"]; - void clear_subname(); - const std::string& subname() const; - template - void set_subname(ArgT0&& arg0, ArgT... args); - std::string* mutable_subname(); - PROTOBUF_NODISCARD std::string* release_subname(); - void set_allocated_subname(std::string* subname); private: - const std::string& _internal_subname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_subname(const std::string& value); - std::string* _internal_mutable_subname(); + ::pg_query::OnConflictAction _internal_action() const; + void _internal_set_action(::pg_query::OnConflictAction value); + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // string conninfo = 2 [json_name = "conninfo"]; - void clear_conninfo(); - const std::string& conninfo() const; - template - void set_conninfo(ArgT0&& arg0, ArgT... args); - std::string* mutable_conninfo(); - PROTOBUF_NODISCARD std::string* release_conninfo(); - void set_allocated_conninfo(std::string* conninfo); private: - const std::string& _internal_conninfo() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_conninfo(const std::string& value); - std::string* _internal_mutable_conninfo(); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CreateSubscriptionStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.OnConflictClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > publication_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr subname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr conninfo_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > target_list_; + ::pg_query::InferClause* infer_; + ::pg_query::Node* where_clause_; + int action_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterSubscriptionStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterSubscriptionStmt) */ { +class OnConflictExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.OnConflictExpr) */ { public: - inline AlterSubscriptionStmt() : AlterSubscriptionStmt(nullptr) {} - ~AlterSubscriptionStmt() override; - explicit PROTOBUF_CONSTEXPR AlterSubscriptionStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline OnConflictExpr() : OnConflictExpr(nullptr) {} + ~OnConflictExpr() override; + template + explicit PROTOBUF_CONSTEXPR OnConflictExpr(::google::protobuf::internal::ConstantInitialized); - AlterSubscriptionStmt(const AlterSubscriptionStmt& from); - AlterSubscriptionStmt(AlterSubscriptionStmt&& from) noexcept - : AlterSubscriptionStmt() { + inline OnConflictExpr(const OnConflictExpr& from) + : OnConflictExpr(nullptr, from) {} + OnConflictExpr(OnConflictExpr&& from) noexcept + : OnConflictExpr() { *this = ::std::move(from); } - inline AlterSubscriptionStmt& operator=(const AlterSubscriptionStmt& from) { + inline OnConflictExpr& operator=(const OnConflictExpr& from) { CopyFrom(from); return *this; } - inline AlterSubscriptionStmt& operator=(AlterSubscriptionStmt&& from) noexcept { + inline OnConflictExpr& operator=(OnConflictExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -46635,217 +54332,291 @@ class AlterSubscriptionStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterSubscriptionStmt& default_instance() { + static const OnConflictExpr& default_instance() { return *internal_default_instance(); } - static inline const AlterSubscriptionStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterSubscriptionStmt_default_instance_); + static inline const OnConflictExpr* internal_default_instance() { + return reinterpret_cast( + &_OnConflictExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 176; + 66; - friend void swap(AlterSubscriptionStmt& a, AlterSubscriptionStmt& b) { + friend void swap(OnConflictExpr& a, OnConflictExpr& b) { a.Swap(&b); } - inline void Swap(AlterSubscriptionStmt* other) { + inline void Swap(OnConflictExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterSubscriptionStmt* other) { + void UnsafeArenaSwap(OnConflictExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterSubscriptionStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + OnConflictExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterSubscriptionStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterSubscriptionStmt& from) { - AlterSubscriptionStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const OnConflictExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const OnConflictExpr& from) { + OnConflictExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterSubscriptionStmt* other); + void InternalSwap(OnConflictExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterSubscriptionStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.OnConflictExpr"; } protected: - explicit AlterSubscriptionStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit OnConflictExpr(::google::protobuf::Arena* arena); + OnConflictExpr(::google::protobuf::Arena* arena, const OnConflictExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kPublicationFieldNumber = 4, - kOptionsFieldNumber = 5, - kSubnameFieldNumber = 2, - kConninfoFieldNumber = 3, - kKindFieldNumber = 1, + kArbiterElemsFieldNumber = 2, + kOnConflictSetFieldNumber = 5, + kExclRelTlistFieldNumber = 8, + kArbiterWhereFieldNumber = 3, + kOnConflictWhereFieldNumber = 6, + kActionFieldNumber = 1, + kConstraintFieldNumber = 4, + kExclRelIndexFieldNumber = 7, }; - // repeated .pg_query.Node publication = 4 [json_name = "publication"]; - int publication_size() const; + // repeated .pg_query.Node arbiter_elems = 2 [json_name = "arbiterElems"]; + int arbiter_elems_size() const; private: - int _internal_publication_size() const; + int _internal_arbiter_elems_size() const; + public: - void clear_publication(); - ::pg_query::Node* mutable_publication(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_publication(); + void clear_arbiter_elems() ; + ::pg_query::Node* mutable_arbiter_elems(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_arbiter_elems(); private: - const ::pg_query::Node& _internal_publication(int index) const; - ::pg_query::Node* _internal_add_publication(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_arbiter_elems() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_arbiter_elems(); public: - const ::pg_query::Node& publication(int index) const; - ::pg_query::Node* add_publication(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - publication() const; + const ::pg_query::Node& arbiter_elems(int index) const; + ::pg_query::Node* add_arbiter_elems(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + arbiter_elems() const; + // repeated .pg_query.Node on_conflict_set = 5 [json_name = "onConflictSet"]; + int on_conflict_set_size() const; + private: + int _internal_on_conflict_set_size() const; - // repeated .pg_query.Node options = 5 [json_name = "options"]; - int options_size() const; + public: + void clear_on_conflict_set() ; + ::pg_query::Node* mutable_on_conflict_set(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_on_conflict_set(); private: - int _internal_options_size() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_on_conflict_set() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_on_conflict_set(); public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); + const ::pg_query::Node& on_conflict_set(int index) const; + ::pg_query::Node* add_on_conflict_set(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + on_conflict_set() const; + // repeated .pg_query.Node excl_rel_tlist = 8 [json_name = "exclRelTlist"]; + int excl_rel_tlist_size() const; + private: + int _internal_excl_rel_tlist_size() const; + + public: + void clear_excl_rel_tlist() ; + ::pg_query::Node* mutable_excl_rel_tlist(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_excl_rel_tlist(); private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_excl_rel_tlist() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_excl_rel_tlist(); public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; + const ::pg_query::Node& excl_rel_tlist(int index) const; + ::pg_query::Node* add_excl_rel_tlist(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + excl_rel_tlist() const; + // .pg_query.Node arbiter_where = 3 [json_name = "arbiterWhere"]; + bool has_arbiter_where() const; + void clear_arbiter_where() ; + const ::pg_query::Node& arbiter_where() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arbiter_where(); + ::pg_query::Node* mutable_arbiter_where(); + void set_allocated_arbiter_where(::pg_query::Node* value); + void unsafe_arena_set_allocated_arbiter_where(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arbiter_where(); - // string subname = 2 [json_name = "subname"]; - void clear_subname(); - const std::string& subname() const; - template - void set_subname(ArgT0&& arg0, ArgT... args); - std::string* mutable_subname(); - PROTOBUF_NODISCARD std::string* release_subname(); - void set_allocated_subname(std::string* subname); private: - const std::string& _internal_subname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_subname(const std::string& value); - std::string* _internal_mutable_subname(); + const ::pg_query::Node& _internal_arbiter_where() const; + ::pg_query::Node* _internal_mutable_arbiter_where(); + public: + // .pg_query.Node on_conflict_where = 6 [json_name = "onConflictWhere"]; + bool has_on_conflict_where() const; + void clear_on_conflict_where() ; + const ::pg_query::Node& on_conflict_where() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_on_conflict_where(); + ::pg_query::Node* mutable_on_conflict_where(); + void set_allocated_on_conflict_where(::pg_query::Node* value); + void unsafe_arena_set_allocated_on_conflict_where(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_on_conflict_where(); - // string conninfo = 3 [json_name = "conninfo"]; - void clear_conninfo(); - const std::string& conninfo() const; - template - void set_conninfo(ArgT0&& arg0, ArgT... args); - std::string* mutable_conninfo(); - PROTOBUF_NODISCARD std::string* release_conninfo(); - void set_allocated_conninfo(std::string* conninfo); private: - const std::string& _internal_conninfo() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_conninfo(const std::string& value); - std::string* _internal_mutable_conninfo(); + const ::pg_query::Node& _internal_on_conflict_where() const; + ::pg_query::Node* _internal_mutable_on_conflict_where(); + public: + // .pg_query.OnConflictAction action = 1 [json_name = "action"]; + void clear_action() ; + ::pg_query::OnConflictAction action() const; + void set_action(::pg_query::OnConflictAction value); - // .pg_query.AlterSubscriptionType kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::AlterSubscriptionType kind() const; - void set_kind(::pg_query::AlterSubscriptionType value); private: - ::pg_query::AlterSubscriptionType _internal_kind() const; - void _internal_set_kind(::pg_query::AlterSubscriptionType value); + ::pg_query::OnConflictAction _internal_action() const; + void _internal_set_action(::pg_query::OnConflictAction value); + public: + // uint32 constraint = 4 [json_name = "constraint"]; + void clear_constraint() ; + ::uint32_t constraint() const; + void set_constraint(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterSubscriptionStmt) + private: + ::uint32_t _internal_constraint() const; + void _internal_set_constraint(::uint32_t value); + + public: + // int32 excl_rel_index = 7 [json_name = "exclRelIndex"]; + void clear_excl_rel_index() ; + ::int32_t excl_rel_index() const; + void set_excl_rel_index(::int32_t value); + + private: + ::int32_t _internal_excl_rel_index() const; + void _internal_set_excl_rel_index(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.OnConflictExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > publication_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr subname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr conninfo_; - int kind_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > arbiter_elems_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > on_conflict_set_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > excl_rel_tlist_; + ::pg_query::Node* arbiter_where_; + ::pg_query::Node* on_conflict_where_; + int action_; + ::uint32_t constraint_; + ::int32_t excl_rel_index_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DropSubscriptionStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DropSubscriptionStmt) */ { +class OpExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.OpExpr) */ { public: - inline DropSubscriptionStmt() : DropSubscriptionStmt(nullptr) {} - ~DropSubscriptionStmt() override; - explicit PROTOBUF_CONSTEXPR DropSubscriptionStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline OpExpr() : OpExpr(nullptr) {} + ~OpExpr() override; + template + explicit PROTOBUF_CONSTEXPR OpExpr(::google::protobuf::internal::ConstantInitialized); - DropSubscriptionStmt(const DropSubscriptionStmt& from); - DropSubscriptionStmt(DropSubscriptionStmt&& from) noexcept - : DropSubscriptionStmt() { + inline OpExpr(const OpExpr& from) + : OpExpr(nullptr, from) {} + OpExpr(OpExpr&& from) noexcept + : OpExpr() { *this = ::std::move(from); } - inline DropSubscriptionStmt& operator=(const DropSubscriptionStmt& from) { + inline OpExpr& operator=(const OpExpr& from) { CopyFrom(from); return *this; } - inline DropSubscriptionStmt& operator=(DropSubscriptionStmt&& from) noexcept { + inline OpExpr& operator=(OpExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -46855,172 +54626,270 @@ class DropSubscriptionStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DropSubscriptionStmt& default_instance() { + static const OpExpr& default_instance() { return *internal_default_instance(); } - static inline const DropSubscriptionStmt* internal_default_instance() { - return reinterpret_cast( - &_DropSubscriptionStmt_default_instance_); + static inline const OpExpr* internal_default_instance() { + return reinterpret_cast( + &_OpExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 177; + 24; - friend void swap(DropSubscriptionStmt& a, DropSubscriptionStmt& b) { + friend void swap(OpExpr& a, OpExpr& b) { a.Swap(&b); } - inline void Swap(DropSubscriptionStmt* other) { + inline void Swap(OpExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DropSubscriptionStmt* other) { + void UnsafeArenaSwap(OpExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DropSubscriptionStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + OpExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DropSubscriptionStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DropSubscriptionStmt& from) { - DropSubscriptionStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const OpExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const OpExpr& from) { + OpExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DropSubscriptionStmt* other); + void InternalSwap(OpExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DropSubscriptionStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.OpExpr"; } protected: - explicit DropSubscriptionStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit OpExpr(::google::protobuf::Arena* arena); + OpExpr(::google::protobuf::Arena* arena, const OpExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kSubnameFieldNumber = 1, - kMissingOkFieldNumber = 2, - kBehaviorFieldNumber = 3, + kArgsFieldNumber = 7, + kXprFieldNumber = 1, + kOpnoFieldNumber = 2, + kOpresulttypeFieldNumber = 3, + kOpretsetFieldNumber = 4, + kOpcollidFieldNumber = 5, + kInputcollidFieldNumber = 6, + kLocationFieldNumber = 8, }; - // string subname = 1 [json_name = "subname"]; - void clear_subname(); - const std::string& subname() const; - template - void set_subname(ArgT0&& arg0, ArgT... args); - std::string* mutable_subname(); - PROTOBUF_NODISCARD std::string* release_subname(); - void set_allocated_subname(std::string* subname); + // repeated .pg_query.Node args = 7 [json_name = "args"]; + int args_size() const; private: - const std::string& _internal_subname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_subname(const std::string& value); - std::string* _internal_mutable_subname(); + int _internal_args_size() const; + + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // bool missing_ok = 2 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: + // uint32 opno = 2 [json_name = "opno"]; + void clear_opno() ; + ::uint32_t opno() const; + void set_opno(::uint32_t value); - // .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; - void clear_behavior(); - ::pg_query::DropBehavior behavior() const; - void set_behavior(::pg_query::DropBehavior value); private: - ::pg_query::DropBehavior _internal_behavior() const; - void _internal_set_behavior(::pg_query::DropBehavior value); + ::uint32_t _internal_opno() const; + void _internal_set_opno(::uint32_t value); + public: + // uint32 opresulttype = 3 [json_name = "opresulttype"]; + void clear_opresulttype() ; + ::uint32_t opresulttype() const; + void set_opresulttype(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.DropSubscriptionStmt) + private: + ::uint32_t _internal_opresulttype() const; + void _internal_set_opresulttype(::uint32_t value); + + public: + // bool opretset = 4 [json_name = "opretset"]; + void clear_opretset() ; + bool opretset() const; + void set_opretset(bool value); + + private: + bool _internal_opretset() const; + void _internal_set_opretset(bool value); + + public: + // uint32 opcollid = 5 [json_name = "opcollid"]; + void clear_opcollid() ; + ::uint32_t opcollid() const; + void set_opcollid(::uint32_t value); + + private: + ::uint32_t _internal_opcollid() const; + void _internal_set_opcollid(::uint32_t value); + + public: + // uint32 inputcollid = 6 [json_name = "inputcollid"]; + void clear_inputcollid() ; + ::uint32_t inputcollid() const; + void set_inputcollid(::uint32_t value); + + private: + ::uint32_t _internal_inputcollid() const; + void _internal_set_inputcollid(::uint32_t value); + + public: + // int32 location = 8 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.OpExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr subname_; - bool missing_ok_; - int behavior_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* xpr_; + ::uint32_t opno_; + ::uint32_t opresulttype_; + bool opretset_; + ::uint32_t opcollid_; + ::uint32_t inputcollid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateStatsStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateStatsStmt) */ { +class PLAssignStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.PLAssignStmt) */ { public: - inline CreateStatsStmt() : CreateStatsStmt(nullptr) {} - ~CreateStatsStmt() override; - explicit PROTOBUF_CONSTEXPR CreateStatsStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline PLAssignStmt() : PLAssignStmt(nullptr) {} + ~PLAssignStmt() override; + template + explicit PROTOBUF_CONSTEXPR PLAssignStmt(::google::protobuf::internal::ConstantInitialized); - CreateStatsStmt(const CreateStatsStmt& from); - CreateStatsStmt(CreateStatsStmt&& from) noexcept - : CreateStatsStmt() { + inline PLAssignStmt(const PLAssignStmt& from) + : PLAssignStmt(nullptr, from) {} + PLAssignStmt(PLAssignStmt&& from) noexcept + : PLAssignStmt() { *this = ::std::move(from); } - inline CreateStatsStmt& operator=(const CreateStatsStmt& from) { + inline PLAssignStmt& operator=(const PLAssignStmt& from) { CopyFrom(from); return *this; } - inline CreateStatsStmt& operator=(CreateStatsStmt&& from) noexcept { + inline PLAssignStmt& operator=(PLAssignStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -47030,252 +54899,240 @@ class CreateStatsStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateStatsStmt& default_instance() { + static const PLAssignStmt& default_instance() { return *internal_default_instance(); } - static inline const CreateStatsStmt* internal_default_instance() { - return reinterpret_cast( - &_CreateStatsStmt_default_instance_); + static inline const PLAssignStmt* internal_default_instance() { + return reinterpret_cast( + &_PLAssignStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 178; + 134; - friend void swap(CreateStatsStmt& a, CreateStatsStmt& b) { + friend void swap(PLAssignStmt& a, PLAssignStmt& b) { a.Swap(&b); } - inline void Swap(CreateStatsStmt* other) { + inline void Swap(PLAssignStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateStatsStmt* other) { + void UnsafeArenaSwap(PLAssignStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateStatsStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + PLAssignStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateStatsStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateStatsStmt& from) { - CreateStatsStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PLAssignStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const PLAssignStmt& from) { + PLAssignStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateStatsStmt* other); + void InternalSwap(PLAssignStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateStatsStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.PLAssignStmt"; } protected: - explicit CreateStatsStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit PLAssignStmt(::google::protobuf::Arena* arena); + PLAssignStmt(::google::protobuf::Arena* arena, const PLAssignStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kDefnamesFieldNumber = 1, - kStatTypesFieldNumber = 2, - kExprsFieldNumber = 3, - kRelationsFieldNumber = 4, - kStxcommentFieldNumber = 5, - kTransformedFieldNumber = 6, - kIfNotExistsFieldNumber = 7, + kIndirectionFieldNumber = 2, + kNameFieldNumber = 1, + kValFieldNumber = 4, + kNnamesFieldNumber = 3, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node defnames = 1 [json_name = "defnames"]; - int defnames_size() const; - private: - int _internal_defnames_size() const; - public: - void clear_defnames(); - ::pg_query::Node* mutable_defnames(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_defnames(); + // repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; + int indirection_size() const; private: - const ::pg_query::Node& _internal_defnames(int index) const; - ::pg_query::Node* _internal_add_defnames(); - public: - const ::pg_query::Node& defnames(int index) const; - ::pg_query::Node* add_defnames(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - defnames() const; + int _internal_indirection_size() const; - // repeated .pg_query.Node stat_types = 2 [json_name = "stat_types"]; - int stat_types_size() const; - private: - int _internal_stat_types_size() const; public: - void clear_stat_types(); - ::pg_query::Node* mutable_stat_types(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_stat_types(); + void clear_indirection() ; + ::pg_query::Node* mutable_indirection(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_indirection(); private: - const ::pg_query::Node& _internal_stat_types(int index) const; - ::pg_query::Node* _internal_add_stat_types(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_indirection() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_indirection(); public: - const ::pg_query::Node& stat_types(int index) const; - ::pg_query::Node* add_stat_types(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - stat_types() const; + const ::pg_query::Node& indirection(int index) const; + ::pg_query::Node* add_indirection(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + indirection() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // repeated .pg_query.Node exprs = 3 [json_name = "exprs"]; - int exprs_size() const; - private: - int _internal_exprs_size() const; - public: - void clear_exprs(); - ::pg_query::Node* mutable_exprs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_exprs(); private: - const ::pg_query::Node& _internal_exprs(int index) const; - ::pg_query::Node* _internal_add_exprs(); - public: - const ::pg_query::Node& exprs(int index) const; - ::pg_query::Node* add_exprs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - exprs() const; + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); - // repeated .pg_query.Node relations = 4 [json_name = "relations"]; - int relations_size() const; - private: - int _internal_relations_size() const; - public: - void clear_relations(); - ::pg_query::Node* mutable_relations(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_relations(); - private: - const ::pg_query::Node& _internal_relations(int index) const; - ::pg_query::Node* _internal_add_relations(); public: - const ::pg_query::Node& relations(int index) const; - ::pg_query::Node* add_relations(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - relations() const; + // .pg_query.SelectStmt val = 4 [json_name = "val"]; + bool has_val() const; + void clear_val() ; + const ::pg_query::SelectStmt& val() const; + PROTOBUF_NODISCARD ::pg_query::SelectStmt* release_val(); + ::pg_query::SelectStmt* mutable_val(); + void set_allocated_val(::pg_query::SelectStmt* value); + void unsafe_arena_set_allocated_val(::pg_query::SelectStmt* value); + ::pg_query::SelectStmt* unsafe_arena_release_val(); - // string stxcomment = 5 [json_name = "stxcomment"]; - void clear_stxcomment(); - const std::string& stxcomment() const; - template - void set_stxcomment(ArgT0&& arg0, ArgT... args); - std::string* mutable_stxcomment(); - PROTOBUF_NODISCARD std::string* release_stxcomment(); - void set_allocated_stxcomment(std::string* stxcomment); private: - const std::string& _internal_stxcomment() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_stxcomment(const std::string& value); - std::string* _internal_mutable_stxcomment(); + const ::pg_query::SelectStmt& _internal_val() const; + ::pg_query::SelectStmt* _internal_mutable_val(); + public: + // int32 nnames = 3 [json_name = "nnames"]; + void clear_nnames() ; + ::int32_t nnames() const; + void set_nnames(::int32_t value); - // bool transformed = 6 [json_name = "transformed"]; - void clear_transformed(); - bool transformed() const; - void set_transformed(bool value); private: - bool _internal_transformed() const; - void _internal_set_transformed(bool value); + ::int32_t _internal_nnames() const; + void _internal_set_nnames(::int32_t value); + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // bool if_not_exists = 7 [json_name = "if_not_exists"]; - void clear_if_not_exists(); - bool if_not_exists() const; - void set_if_not_exists(bool value); private: - bool _internal_if_not_exists() const; - void _internal_set_if_not_exists(bool value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CreateStatsStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.PLAssignStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 34, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > defnames_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > stat_types_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > exprs_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > relations_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr stxcomment_; - bool transformed_; - bool if_not_exists_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > indirection_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::SelectStmt* val_; + ::int32_t nnames_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterCollationStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterCollationStmt) */ { +class Param final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Param) */ { public: - inline AlterCollationStmt() : AlterCollationStmt(nullptr) {} - ~AlterCollationStmt() override; - explicit PROTOBUF_CONSTEXPR AlterCollationStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline Param() : Param(nullptr) {} + ~Param() override; + template + explicit PROTOBUF_CONSTEXPR Param(::google::protobuf::internal::ConstantInitialized); - AlterCollationStmt(const AlterCollationStmt& from); - AlterCollationStmt(AlterCollationStmt&& from) noexcept - : AlterCollationStmt() { + inline Param(const Param& from) + : Param(nullptr, from) {} + Param(Param&& from) noexcept + : Param() { *this = ::std::move(from); } - inline AlterCollationStmt& operator=(const AlterCollationStmt& from) { + inline Param& operator=(const Param& from) { CopyFrom(from); return *this; } - inline AlterCollationStmt& operator=(AlterCollationStmt&& from) noexcept { + inline Param& operator=(Param&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -47285,154 +55142,250 @@ class AlterCollationStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterCollationStmt& default_instance() { + static const Param& default_instance() { return *internal_default_instance(); } - static inline const AlterCollationStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterCollationStmt_default_instance_); + static inline const Param* internal_default_instance() { + return reinterpret_cast( + &_Param_default_instance_); } static constexpr int kIndexInFileMessages = - 179; + 17; - friend void swap(AlterCollationStmt& a, AlterCollationStmt& b) { + friend void swap(Param& a, Param& b) { a.Swap(&b); } - inline void Swap(AlterCollationStmt* other) { + inline void Swap(Param* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterCollationStmt* other) { + void UnsafeArenaSwap(Param* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterCollationStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + Param* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterCollationStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterCollationStmt& from) { - AlterCollationStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Param& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Param& from) { + Param::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterCollationStmt* other); + void InternalSwap(Param* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterCollationStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Param"; } protected: - explicit AlterCollationStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit Param(::google::protobuf::Arena* arena); + Param(::google::protobuf::Arena* arena, const Param& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCollnameFieldNumber = 1, + kXprFieldNumber = 1, + kParamkindFieldNumber = 2, + kParamidFieldNumber = 3, + kParamtypeFieldNumber = 4, + kParamtypmodFieldNumber = 5, + kParamcollidFieldNumber = 6, + kLocationFieldNumber = 7, }; - // repeated .pg_query.Node collname = 1 [json_name = "collname"]; - int collname_size() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: - int _internal_collname_size() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_collname(); - ::pg_query::Node* mutable_collname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_collname(); + // .pg_query.ParamKind paramkind = 2 [json_name = "paramkind"]; + void clear_paramkind() ; + ::pg_query::ParamKind paramkind() const; + void set_paramkind(::pg_query::ParamKind value); + + private: + ::pg_query::ParamKind _internal_paramkind() const; + void _internal_set_paramkind(::pg_query::ParamKind value); + + public: + // int32 paramid = 3 [json_name = "paramid"]; + void clear_paramid() ; + ::int32_t paramid() const; + void set_paramid(::int32_t value); + private: - const ::pg_query::Node& _internal_collname(int index) const; - ::pg_query::Node* _internal_add_collname(); + ::int32_t _internal_paramid() const; + void _internal_set_paramid(::int32_t value); + public: - const ::pg_query::Node& collname(int index) const; - ::pg_query::Node* add_collname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - collname() const; + // uint32 paramtype = 4 [json_name = "paramtype"]; + void clear_paramtype() ; + ::uint32_t paramtype() const; + void set_paramtype(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.AlterCollationStmt) + private: + ::uint32_t _internal_paramtype() const; + void _internal_set_paramtype(::uint32_t value); + + public: + // int32 paramtypmod = 5 [json_name = "paramtypmod"]; + void clear_paramtypmod() ; + ::int32_t paramtypmod() const; + void set_paramtypmod(::int32_t value); + + private: + ::int32_t _internal_paramtypmod() const; + void _internal_set_paramtypmod(::int32_t value); + + public: + // uint32 paramcollid = 6 [json_name = "paramcollid"]; + void clear_paramcollid() ; + ::uint32_t paramcollid() const; + void set_paramcollid(::uint32_t value); + + private: + ::uint32_t _internal_paramcollid() const; + void _internal_set_paramcollid(::uint32_t value); + + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.Param) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > collname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* xpr_; + int paramkind_; + ::int32_t paramid_; + ::uint32_t paramtype_; + ::int32_t paramtypmod_; + ::uint32_t paramcollid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CallStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CallStmt) */ { +class PartitionBoundSpec final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionBoundSpec) */ { public: - inline CallStmt() : CallStmt(nullptr) {} - ~CallStmt() override; - explicit PROTOBUF_CONSTEXPR CallStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline PartitionBoundSpec() : PartitionBoundSpec(nullptr) {} + ~PartitionBoundSpec() override; + template + explicit PROTOBUF_CONSTEXPR PartitionBoundSpec(::google::protobuf::internal::ConstantInitialized); - CallStmt(const CallStmt& from); - CallStmt(CallStmt&& from) noexcept - : CallStmt() { + inline PartitionBoundSpec(const PartitionBoundSpec& from) + : PartitionBoundSpec(nullptr, from) {} + PartitionBoundSpec(PartitionBoundSpec&& from) noexcept + : PartitionBoundSpec() { *this = ::std::move(from); } - inline CallStmt& operator=(const CallStmt& from) { + inline PartitionBoundSpec& operator=(const PartitionBoundSpec& from) { CopyFrom(from); return *this; } - inline CallStmt& operator=(CallStmt&& from) noexcept { + inline PartitionBoundSpec& operator=(PartitionBoundSpec&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -47442,194 +55395,286 @@ class CallStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CallStmt& default_instance() { + static const PartitionBoundSpec& default_instance() { return *internal_default_instance(); } - static inline const CallStmt* internal_default_instance() { - return reinterpret_cast( - &_CallStmt_default_instance_); + static inline const PartitionBoundSpec* internal_default_instance() { + return reinterpret_cast( + &_PartitionBoundSpec_default_instance_); } static constexpr int kIndexInFileMessages = - 180; + 97; - friend void swap(CallStmt& a, CallStmt& b) { + friend void swap(PartitionBoundSpec& a, PartitionBoundSpec& b) { a.Swap(&b); } - inline void Swap(CallStmt* other) { + inline void Swap(PartitionBoundSpec* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CallStmt* other) { + void UnsafeArenaSwap(PartitionBoundSpec* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CallStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + PartitionBoundSpec* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CallStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CallStmt& from) { - CallStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PartitionBoundSpec& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const PartitionBoundSpec& from) { + PartitionBoundSpec::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CallStmt* other); + void InternalSwap(PartitionBoundSpec* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CallStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.PartitionBoundSpec"; } protected: - explicit CallStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit PartitionBoundSpec(::google::protobuf::Arena* arena); + PartitionBoundSpec(::google::protobuf::Arena* arena, const PartitionBoundSpec& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOutargsFieldNumber = 3, - kFunccallFieldNumber = 1, - kFuncexprFieldNumber = 2, + kListdatumsFieldNumber = 5, + kLowerdatumsFieldNumber = 6, + kUpperdatumsFieldNumber = 7, + kStrategyFieldNumber = 1, + kIsDefaultFieldNumber = 2, + kModulusFieldNumber = 3, + kRemainderFieldNumber = 4, + kLocationFieldNumber = 8, }; - // repeated .pg_query.Node outargs = 3 [json_name = "outargs"]; - int outargs_size() const; + // repeated .pg_query.Node listdatums = 5 [json_name = "listdatums"]; + int listdatums_size() const; private: - int _internal_outargs_size() const; + int _internal_listdatums_size() const; + public: - void clear_outargs(); - ::pg_query::Node* mutable_outargs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_outargs(); + void clear_listdatums() ; + ::pg_query::Node* mutable_listdatums(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_listdatums(); private: - const ::pg_query::Node& _internal_outargs(int index) const; - ::pg_query::Node* _internal_add_outargs(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_listdatums() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_listdatums(); public: - const ::pg_query::Node& outargs(int index) const; - ::pg_query::Node* add_outargs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - outargs() const; + const ::pg_query::Node& listdatums(int index) const; + ::pg_query::Node* add_listdatums(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + listdatums() const; + // repeated .pg_query.Node lowerdatums = 6 [json_name = "lowerdatums"]; + int lowerdatums_size() const; + private: + int _internal_lowerdatums_size() const; - // .pg_query.FuncCall funccall = 1 [json_name = "funccall"]; - bool has_funccall() const; + public: + void clear_lowerdatums() ; + ::pg_query::Node* mutable_lowerdatums(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_lowerdatums(); private: - bool _internal_has_funccall() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_lowerdatums() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_lowerdatums(); public: - void clear_funccall(); - const ::pg_query::FuncCall& funccall() const; - PROTOBUF_NODISCARD ::pg_query::FuncCall* release_funccall(); - ::pg_query::FuncCall* mutable_funccall(); - void set_allocated_funccall(::pg_query::FuncCall* funccall); + const ::pg_query::Node& lowerdatums(int index) const; + ::pg_query::Node* add_lowerdatums(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + lowerdatums() const; + // repeated .pg_query.Node upperdatums = 7 [json_name = "upperdatums"]; + int upperdatums_size() const; private: - const ::pg_query::FuncCall& _internal_funccall() const; - ::pg_query::FuncCall* _internal_mutable_funccall(); + int _internal_upperdatums_size() const; + public: - void unsafe_arena_set_allocated_funccall( - ::pg_query::FuncCall* funccall); - ::pg_query::FuncCall* unsafe_arena_release_funccall(); + void clear_upperdatums() ; + ::pg_query::Node* mutable_upperdatums(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_upperdatums(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_upperdatums() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_upperdatums(); + public: + const ::pg_query::Node& upperdatums(int index) const; + ::pg_query::Node* add_upperdatums(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + upperdatums() const; + // string strategy = 1 [json_name = "strategy"]; + void clear_strategy() ; + const std::string& strategy() const; + template + void set_strategy(Arg_&& arg, Args_... args); + std::string* mutable_strategy(); + PROTOBUF_NODISCARD std::string* release_strategy(); + void set_allocated_strategy(std::string* value); + + private: + const std::string& _internal_strategy() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_strategy( + const std::string& value); + std::string* _internal_mutable_strategy(); + + public: + // bool is_default = 2 [json_name = "is_default"]; + void clear_is_default() ; + bool is_default() const; + void set_is_default(bool value); - // .pg_query.FuncExpr funcexpr = 2 [json_name = "funcexpr"]; - bool has_funcexpr() const; private: - bool _internal_has_funcexpr() const; + bool _internal_is_default() const; + void _internal_set_is_default(bool value); + public: - void clear_funcexpr(); - const ::pg_query::FuncExpr& funcexpr() const; - PROTOBUF_NODISCARD ::pg_query::FuncExpr* release_funcexpr(); - ::pg_query::FuncExpr* mutable_funcexpr(); - void set_allocated_funcexpr(::pg_query::FuncExpr* funcexpr); + // int32 modulus = 3 [json_name = "modulus"]; + void clear_modulus() ; + ::int32_t modulus() const; + void set_modulus(::int32_t value); + private: - const ::pg_query::FuncExpr& _internal_funcexpr() const; - ::pg_query::FuncExpr* _internal_mutable_funcexpr(); + ::int32_t _internal_modulus() const; + void _internal_set_modulus(::int32_t value); + public: - void unsafe_arena_set_allocated_funcexpr( - ::pg_query::FuncExpr* funcexpr); - ::pg_query::FuncExpr* unsafe_arena_release_funcexpr(); + // int32 remainder = 4 [json_name = "remainder"]; + void clear_remainder() ; + ::int32_t remainder() const; + void set_remainder(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CallStmt) + private: + ::int32_t _internal_remainder() const; + void _internal_set_remainder(::int32_t value); + + public: + // int32 location = 8 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.PartitionBoundSpec) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 3, + 52, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > outargs_; - ::pg_query::FuncCall* funccall_; - ::pg_query::FuncExpr* funcexpr_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > listdatums_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > lowerdatums_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > upperdatums_; + ::google::protobuf::internal::ArenaStringPtr strategy_; + bool is_default_; + ::int32_t modulus_; + ::int32_t remainder_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AlterStatsStmt final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AlterStatsStmt) */ { +class PartitionCmd final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionCmd) */ { public: - inline AlterStatsStmt() : AlterStatsStmt(nullptr) {} - ~AlterStatsStmt() override; - explicit PROTOBUF_CONSTEXPR AlterStatsStmt(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline PartitionCmd() : PartitionCmd(nullptr) {} + ~PartitionCmd() override; + template + explicit PROTOBUF_CONSTEXPR PartitionCmd(::google::protobuf::internal::ConstantInitialized); - AlterStatsStmt(const AlterStatsStmt& from); - AlterStatsStmt(AlterStatsStmt&& from) noexcept - : AlterStatsStmt() { + inline PartitionCmd(const PartitionCmd& from) + : PartitionCmd(nullptr, from) {} + PartitionCmd(PartitionCmd&& from) noexcept + : PartitionCmd() { *this = ::std::move(from); } - inline AlterStatsStmt& operator=(const AlterStatsStmt& from) { + inline PartitionCmd& operator=(const PartitionCmd& from) { CopyFrom(from); return *this; } - inline AlterStatsStmt& operator=(AlterStatsStmt&& from) noexcept { + inline PartitionCmd& operator=(PartitionCmd&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -47639,176 +55684,207 @@ class AlterStatsStmt final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AlterStatsStmt& default_instance() { + static const PartitionCmd& default_instance() { return *internal_default_instance(); } - static inline const AlterStatsStmt* internal_default_instance() { - return reinterpret_cast( - &_AlterStatsStmt_default_instance_); + static inline const PartitionCmd* internal_default_instance() { + return reinterpret_cast( + &_PartitionCmd_default_instance_); } static constexpr int kIndexInFileMessages = - 181; + 99; - friend void swap(AlterStatsStmt& a, AlterStatsStmt& b) { + friend void swap(PartitionCmd& a, PartitionCmd& b) { a.Swap(&b); } - inline void Swap(AlterStatsStmt* other) { + inline void Swap(PartitionCmd* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AlterStatsStmt* other) { + void UnsafeArenaSwap(PartitionCmd* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AlterStatsStmt* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + PartitionCmd* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AlterStatsStmt& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AlterStatsStmt& from) { - AlterStatsStmt::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PartitionCmd& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const PartitionCmd& from) { + PartitionCmd::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AlterStatsStmt* other); + void InternalSwap(PartitionCmd* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AlterStatsStmt"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.PartitionCmd"; } protected: - explicit AlterStatsStmt(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit PartitionCmd(::google::protobuf::Arena* arena); + PartitionCmd(::google::protobuf::Arena* arena, const PartitionCmd& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kDefnamesFieldNumber = 1, - kStxstattargetFieldNumber = 2, - kMissingOkFieldNumber = 3, + kNameFieldNumber = 1, + kBoundFieldNumber = 2, + kConcurrentFieldNumber = 3, }; - // repeated .pg_query.Node defnames = 1 [json_name = "defnames"]; - int defnames_size() const; - private: - int _internal_defnames_size() const; - public: - void clear_defnames(); - ::pg_query::Node* mutable_defnames(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_defnames(); + // .pg_query.RangeVar name = 1 [json_name = "name"]; + bool has_name() const; + void clear_name() ; + const ::pg_query::RangeVar& name() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_name(); + ::pg_query::RangeVar* mutable_name(); + void set_allocated_name(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_name(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_name(); + private: - const ::pg_query::Node& _internal_defnames(int index) const; - ::pg_query::Node* _internal_add_defnames(); + const ::pg_query::RangeVar& _internal_name() const; + ::pg_query::RangeVar* _internal_mutable_name(); + public: - const ::pg_query::Node& defnames(int index) const; - ::pg_query::Node* add_defnames(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - defnames() const; + // .pg_query.PartitionBoundSpec bound = 2 [json_name = "bound"]; + bool has_bound() const; + void clear_bound() ; + const ::pg_query::PartitionBoundSpec& bound() const; + PROTOBUF_NODISCARD ::pg_query::PartitionBoundSpec* release_bound(); + ::pg_query::PartitionBoundSpec* mutable_bound(); + void set_allocated_bound(::pg_query::PartitionBoundSpec* value); + void unsafe_arena_set_allocated_bound(::pg_query::PartitionBoundSpec* value); + ::pg_query::PartitionBoundSpec* unsafe_arena_release_bound(); - // int32 stxstattarget = 2 [json_name = "stxstattarget"]; - void clear_stxstattarget(); - int32_t stxstattarget() const; - void set_stxstattarget(int32_t value); private: - int32_t _internal_stxstattarget() const; - void _internal_set_stxstattarget(int32_t value); + const ::pg_query::PartitionBoundSpec& _internal_bound() const; + ::pg_query::PartitionBoundSpec* _internal_mutable_bound(); + public: + // bool concurrent = 3 [json_name = "concurrent"]; + void clear_concurrent() ; + bool concurrent() const; + void set_concurrent(bool value); - // bool missing_ok = 3 [json_name = "missing_ok"]; - void clear_missing_ok(); - bool missing_ok() const; - void set_missing_ok(bool value); private: - bool _internal_missing_ok() const; - void _internal_set_missing_ok(bool value); - public: + bool _internal_concurrent() const; + void _internal_set_concurrent(bool value); - // @@protoc_insertion_point(class_scope:pg_query.AlterStatsStmt) + public: + // @@protoc_insertion_point(class_scope:pg_query.PartitionCmd) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > defnames_; - int32_t stxstattarget_; - bool missing_ok_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::RangeVar* name_; + ::pg_query::PartitionBoundSpec* bound_; + bool concurrent_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class A_Expr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.A_Expr) */ { +class PartitionElem final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionElem) */ { public: - inline A_Expr() : A_Expr(nullptr) {} - ~A_Expr() override; - explicit PROTOBUF_CONSTEXPR A_Expr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline PartitionElem() : PartitionElem(nullptr) {} + ~PartitionElem() override; + template + explicit PROTOBUF_CONSTEXPR PartitionElem(::google::protobuf::internal::ConstantInitialized); - A_Expr(const A_Expr& from); - A_Expr(A_Expr&& from) noexcept - : A_Expr() { + inline PartitionElem(const PartitionElem& from) + : PartitionElem(nullptr, from) {} + PartitionElem(PartitionElem&& from) noexcept + : PartitionElem() { *this = ::std::move(from); } - inline A_Expr& operator=(const A_Expr& from) { + inline PartitionElem& operator=(const PartitionElem& from) { CopyFrom(from); return *this; } - inline A_Expr& operator=(A_Expr&& from) noexcept { + inline PartitionElem& operator=(PartitionElem&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -47818,216 +55894,248 @@ class A_Expr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const A_Expr& default_instance() { + static const PartitionElem& default_instance() { return *internal_default_instance(); } - static inline const A_Expr* internal_default_instance() { - return reinterpret_cast( - &_A_Expr_default_instance_); + static inline const PartitionElem* internal_default_instance() { + return reinterpret_cast( + &_PartitionElem_default_instance_); } static constexpr int kIndexInFileMessages = - 182; + 95; - friend void swap(A_Expr& a, A_Expr& b) { + friend void swap(PartitionElem& a, PartitionElem& b) { a.Swap(&b); } - inline void Swap(A_Expr* other) { + inline void Swap(PartitionElem* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(A_Expr* other) { + void UnsafeArenaSwap(PartitionElem* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - A_Expr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + PartitionElem* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const A_Expr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const A_Expr& from) { - A_Expr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PartitionElem& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const PartitionElem& from) { + PartitionElem::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(A_Expr* other); + void InternalSwap(PartitionElem* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.A_Expr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.PartitionElem"; } protected: - explicit A_Expr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit PartitionElem(::google::protobuf::Arena* arena); + PartitionElem(::google::protobuf::Arena* arena, const PartitionElem& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNameFieldNumber = 2, - kLexprFieldNumber = 3, - kRexprFieldNumber = 4, - kKindFieldNumber = 1, + kCollationFieldNumber = 3, + kOpclassFieldNumber = 4, + kNameFieldNumber = 1, + kExprFieldNumber = 2, kLocationFieldNumber = 5, }; - // repeated .pg_query.Node name = 2 [json_name = "name"]; - int name_size() const; + // repeated .pg_query.Node collation = 3 [json_name = "collation"]; + int collation_size() const; private: - int _internal_name_size() const; + int _internal_collation_size() const; + public: - void clear_name(); - ::pg_query::Node* mutable_name(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_name(); + void clear_collation() ; + ::pg_query::Node* mutable_collation(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_collation(); private: - const ::pg_query::Node& _internal_name(int index) const; - ::pg_query::Node* _internal_add_name(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_collation() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_collation(); public: - const ::pg_query::Node& name(int index) const; - ::pg_query::Node* add_name(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - name() const; - - // .pg_query.Node lexpr = 3 [json_name = "lexpr"]; - bool has_lexpr() const; + const ::pg_query::Node& collation(int index) const; + ::pg_query::Node* add_collation(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + collation() const; + // repeated .pg_query.Node opclass = 4 [json_name = "opclass"]; + int opclass_size() const; private: - bool _internal_has_lexpr() const; + int _internal_opclass_size() const; + public: - void clear_lexpr(); - const ::pg_query::Node& lexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_lexpr(); - ::pg_query::Node* mutable_lexpr(); - void set_allocated_lexpr(::pg_query::Node* lexpr); + void clear_opclass() ; + ::pg_query::Node* mutable_opclass(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opclass(); private: - const ::pg_query::Node& _internal_lexpr() const; - ::pg_query::Node* _internal_mutable_lexpr(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opclass() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opclass(); public: - void unsafe_arena_set_allocated_lexpr( - ::pg_query::Node* lexpr); - ::pg_query::Node* unsafe_arena_release_lexpr(); + const ::pg_query::Node& opclass(int index) const; + ::pg_query::Node* add_opclass(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opclass() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // .pg_query.Node rexpr = 4 [json_name = "rexpr"]; - bool has_rexpr() const; - private: - bool _internal_has_rexpr() const; - public: - void clear_rexpr(); - const ::pg_query::Node& rexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_rexpr(); - ::pg_query::Node* mutable_rexpr(); - void set_allocated_rexpr(::pg_query::Node* rexpr); private: - const ::pg_query::Node& _internal_rexpr() const; - ::pg_query::Node* _internal_mutable_rexpr(); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + public: - void unsafe_arena_set_allocated_rexpr( - ::pg_query::Node* rexpr); - ::pg_query::Node* unsafe_arena_release_rexpr(); + // .pg_query.Node expr = 2 [json_name = "expr"]; + bool has_expr() const; + void clear_expr() ; + const ::pg_query::Node& expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); + ::pg_query::Node* mutable_expr(); + void set_allocated_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_expr(); - // .pg_query.A_Expr_Kind kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::A_Expr_Kind kind() const; - void set_kind(::pg_query::A_Expr_Kind value); private: - ::pg_query::A_Expr_Kind _internal_kind() const; - void _internal_set_kind(::pg_query::A_Expr_Kind value); - public: + const ::pg_query::Node& _internal_expr() const; + ::pg_query::Node* _internal_mutable_expr(); + public: // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.A_Expr) + public: + // @@protoc_insertion_point(class_scope:pg_query.PartitionElem) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 3, + 35, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > name_; - ::pg_query::Node* lexpr_; - ::pg_query::Node* rexpr_; - int kind_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > collation_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opclass_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::Node* expr_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ColumnRef final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ColumnRef) */ { +class PartitionRangeDatum final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionRangeDatum) */ { public: - inline ColumnRef() : ColumnRef(nullptr) {} - ~ColumnRef() override; - explicit PROTOBUF_CONSTEXPR ColumnRef(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline PartitionRangeDatum() : PartitionRangeDatum(nullptr) {} + ~PartitionRangeDatum() override; + template + explicit PROTOBUF_CONSTEXPR PartitionRangeDatum(::google::protobuf::internal::ConstantInitialized); - ColumnRef(const ColumnRef& from); - ColumnRef(ColumnRef&& from) noexcept - : ColumnRef() { + inline PartitionRangeDatum(const PartitionRangeDatum& from) + : PartitionRangeDatum(nullptr, from) {} + PartitionRangeDatum(PartitionRangeDatum&& from) noexcept + : PartitionRangeDatum() { *this = ::std::move(from); } - inline ColumnRef& operator=(const ColumnRef& from) { + inline PartitionRangeDatum& operator=(const PartitionRangeDatum& from) { CopyFrom(from); return *this; } - inline ColumnRef& operator=(ColumnRef&& from) noexcept { + inline PartitionRangeDatum& operator=(PartitionRangeDatum&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -48037,165 +56145,202 @@ class ColumnRef final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ColumnRef& default_instance() { + static const PartitionRangeDatum& default_instance() { return *internal_default_instance(); } - static inline const ColumnRef* internal_default_instance() { - return reinterpret_cast( - &_ColumnRef_default_instance_); + static inline const PartitionRangeDatum* internal_default_instance() { + return reinterpret_cast( + &_PartitionRangeDatum_default_instance_); } static constexpr int kIndexInFileMessages = - 183; + 98; - friend void swap(ColumnRef& a, ColumnRef& b) { + friend void swap(PartitionRangeDatum& a, PartitionRangeDatum& b) { a.Swap(&b); } - inline void Swap(ColumnRef* other) { + inline void Swap(PartitionRangeDatum* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ColumnRef* other) { + void UnsafeArenaSwap(PartitionRangeDatum* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ColumnRef* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + PartitionRangeDatum* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ColumnRef& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ColumnRef& from) { - ColumnRef::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PartitionRangeDatum& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const PartitionRangeDatum& from) { + PartitionRangeDatum::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ColumnRef* other); + void InternalSwap(PartitionRangeDatum* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ColumnRef"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.PartitionRangeDatum"; } protected: - explicit ColumnRef(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit PartitionRangeDatum(::google::protobuf::Arena* arena); + PartitionRangeDatum(::google::protobuf::Arena* arena, const PartitionRangeDatum& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kFieldsFieldNumber = 1, - kLocationFieldNumber = 2, + kValueFieldNumber = 2, + kKindFieldNumber = 1, + kLocationFieldNumber = 3, }; - // repeated .pg_query.Node fields = 1 [json_name = "fields"]; - int fields_size() const; + // .pg_query.Node value = 2 [json_name = "value"]; + bool has_value() const; + void clear_value() ; + const ::pg_query::Node& value() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_value(); + ::pg_query::Node* mutable_value(); + void set_allocated_value(::pg_query::Node* value); + void unsafe_arena_set_allocated_value(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_value(); + private: - int _internal_fields_size() const; + const ::pg_query::Node& _internal_value() const; + ::pg_query::Node* _internal_mutable_value(); + public: - void clear_fields(); - ::pg_query::Node* mutable_fields(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_fields(); + // .pg_query.PartitionRangeDatumKind kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::PartitionRangeDatumKind kind() const; + void set_kind(::pg_query::PartitionRangeDatumKind value); + private: - const ::pg_query::Node& _internal_fields(int index) const; - ::pg_query::Node* _internal_add_fields(); + ::pg_query::PartitionRangeDatumKind _internal_kind() const; + void _internal_set_kind(::pg_query::PartitionRangeDatumKind value); + public: - const ::pg_query::Node& fields(int index) const; - ::pg_query::Node* add_fields(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - fields() const; + // int32 location = 3 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 location = 2 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.ColumnRef) + public: + // @@protoc_insertion_point(class_scope:pg_query.PartitionRangeDatum) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > fields_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* value_; + int kind_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ParamRef final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ParamRef) */ { +class PartitionSpec final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionSpec) */ { public: - inline ParamRef() : ParamRef(nullptr) {} - ~ParamRef() override; - explicit PROTOBUF_CONSTEXPR ParamRef(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline PartitionSpec() : PartitionSpec(nullptr) {} + ~PartitionSpec() override; + template + explicit PROTOBUF_CONSTEXPR PartitionSpec(::google::protobuf::internal::ConstantInitialized); - ParamRef(const ParamRef& from); - ParamRef(ParamRef&& from) noexcept - : ParamRef() { + inline PartitionSpec(const PartitionSpec& from) + : PartitionSpec(nullptr, from) {} + PartitionSpec(PartitionSpec&& from) noexcept + : PartitionSpec() { *this = ::std::move(from); } - inline ParamRef& operator=(const ParamRef& from) { + inline PartitionSpec& operator=(const PartitionSpec& from) { CopyFrom(from); return *this; } - inline ParamRef& operator=(ParamRef&& from) noexcept { + inline PartitionSpec& operator=(PartitionSpec&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -48205,156 +56350,204 @@ class ParamRef final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ParamRef& default_instance() { + static const PartitionSpec& default_instance() { return *internal_default_instance(); } - static inline const ParamRef* internal_default_instance() { - return reinterpret_cast( - &_ParamRef_default_instance_); + static inline const PartitionSpec* internal_default_instance() { + return reinterpret_cast( + &_PartitionSpec_default_instance_); } static constexpr int kIndexInFileMessages = - 184; + 96; - friend void swap(ParamRef& a, ParamRef& b) { + friend void swap(PartitionSpec& a, PartitionSpec& b) { a.Swap(&b); } - inline void Swap(ParamRef* other) { + inline void Swap(PartitionSpec* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ParamRef* other) { + void UnsafeArenaSwap(PartitionSpec* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ParamRef* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + PartitionSpec* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ParamRef& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ParamRef& from) { - ParamRef::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PartitionSpec& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const PartitionSpec& from) { + PartitionSpec::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ParamRef* other); + void InternalSwap(PartitionSpec* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ParamRef"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.PartitionSpec"; } protected: - explicit ParamRef(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit PartitionSpec(::google::protobuf::Arena* arena); + PartitionSpec(::google::protobuf::Arena* arena, const PartitionSpec& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNumberFieldNumber = 1, - kLocationFieldNumber = 2, + kPartParamsFieldNumber = 2, + kStrategyFieldNumber = 1, + kLocationFieldNumber = 3, }; - // int32 number = 1 [json_name = "number"]; - void clear_number(); - int32_t number() const; - void set_number(int32_t value); + // repeated .pg_query.Node part_params = 2 [json_name = "partParams"]; + int part_params_size() const; + private: + int _internal_part_params_size() const; + + public: + void clear_part_params() ; + ::pg_query::Node* mutable_part_params(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_part_params(); private: - int32_t _internal_number() const; - void _internal_set_number(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_part_params() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_part_params(); public: + const ::pg_query::Node& part_params(int index) const; + ::pg_query::Node* add_part_params(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + part_params() const; + // .pg_query.PartitionStrategy strategy = 1 [json_name = "strategy"]; + void clear_strategy() ; + ::pg_query::PartitionStrategy strategy() const; + void set_strategy(::pg_query::PartitionStrategy value); - // int32 location = 2 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + ::pg_query::PartitionStrategy _internal_strategy() const; + void _internal_set_strategy(::pg_query::PartitionStrategy value); + public: + // int32 location = 3 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.ParamRef) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.PartitionSpec) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - int32_t number_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > part_params_; + int strategy_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class FuncCall final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.FuncCall) */ { +class PrepareStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.PrepareStmt) */ { public: - inline FuncCall() : FuncCall(nullptr) {} - ~FuncCall() override; - explicit PROTOBUF_CONSTEXPR FuncCall(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline PrepareStmt() : PrepareStmt(nullptr) {} + ~PrepareStmt() override; + template + explicit PROTOBUF_CONSTEXPR PrepareStmt(::google::protobuf::internal::ConstantInitialized); - FuncCall(const FuncCall& from); - FuncCall(FuncCall&& from) noexcept - : FuncCall() { + inline PrepareStmt(const PrepareStmt& from) + : PrepareStmt(nullptr, from) {} + PrepareStmt(PrepareStmt&& from) noexcept + : PrepareStmt() { *this = ::std::move(from); } - inline FuncCall& operator=(const FuncCall& from) { + inline PrepareStmt& operator=(const PrepareStmt& from) { CopyFrom(from); return *this; } - inline FuncCall& operator=(FuncCall&& from) noexcept { + inline PrepareStmt& operator=(PrepareStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -48364,299 +56557,216 @@ class FuncCall final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const FuncCall& default_instance() { + static const PrepareStmt& default_instance() { return *internal_default_instance(); } - static inline const FuncCall* internal_default_instance() { - return reinterpret_cast( - &_FuncCall_default_instance_); + static inline const PrepareStmt* internal_default_instance() { + return reinterpret_cast( + &_PrepareStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 185; + 241; - friend void swap(FuncCall& a, FuncCall& b) { + friend void swap(PrepareStmt& a, PrepareStmt& b) { a.Swap(&b); } - inline void Swap(FuncCall* other) { + inline void Swap(PrepareStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(FuncCall* other) { + void UnsafeArenaSwap(PrepareStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - FuncCall* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + PrepareStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FuncCall& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const FuncCall& from) { - FuncCall::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PrepareStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const PrepareStmt& from) { + PrepareStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FuncCall* other); + void InternalSwap(PrepareStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.FuncCall"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.PrepareStmt"; } protected: - explicit FuncCall(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit PrepareStmt(::google::protobuf::Arena* arena); + PrepareStmt(::google::protobuf::Arena* arena, const PrepareStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kFuncnameFieldNumber = 1, - kArgsFieldNumber = 2, - kAggOrderFieldNumber = 3, - kAggFilterFieldNumber = 4, - kOverFieldNumber = 5, - kAggWithinGroupFieldNumber = 6, - kAggStarFieldNumber = 7, - kAggDistinctFieldNumber = 8, - kFuncVariadicFieldNumber = 9, - kFuncformatFieldNumber = 10, - kLocationFieldNumber = 11, + kArgtypesFieldNumber = 2, + kNameFieldNumber = 1, + kQueryFieldNumber = 3, }; - // repeated .pg_query.Node funcname = 1 [json_name = "funcname"]; - int funcname_size() const; - private: - int _internal_funcname_size() const; - public: - void clear_funcname(); - ::pg_query::Node* mutable_funcname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_funcname(); - private: - const ::pg_query::Node& _internal_funcname(int index) const; - ::pg_query::Node* _internal_add_funcname(); - public: - const ::pg_query::Node& funcname(int index) const; - ::pg_query::Node* add_funcname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - funcname() const; - - // repeated .pg_query.Node args = 2 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; - - // repeated .pg_query.Node agg_order = 3 [json_name = "agg_order"]; - int agg_order_size() const; - private: - int _internal_agg_order_size() const; - public: - void clear_agg_order(); - ::pg_query::Node* mutable_agg_order(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_agg_order(); - private: - const ::pg_query::Node& _internal_agg_order(int index) const; - ::pg_query::Node* _internal_add_agg_order(); - public: - const ::pg_query::Node& agg_order(int index) const; - ::pg_query::Node* add_agg_order(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - agg_order() const; - - // .pg_query.Node agg_filter = 4 [json_name = "agg_filter"]; - bool has_agg_filter() const; - private: - bool _internal_has_agg_filter() const; - public: - void clear_agg_filter(); - const ::pg_query::Node& agg_filter() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_agg_filter(); - ::pg_query::Node* mutable_agg_filter(); - void set_allocated_agg_filter(::pg_query::Node* agg_filter); - private: - const ::pg_query::Node& _internal_agg_filter() const; - ::pg_query::Node* _internal_mutable_agg_filter(); - public: - void unsafe_arena_set_allocated_agg_filter( - ::pg_query::Node* agg_filter); - ::pg_query::Node* unsafe_arena_release_agg_filter(); - - // .pg_query.WindowDef over = 5 [json_name = "over"]; - bool has_over() const; - private: - bool _internal_has_over() const; - public: - void clear_over(); - const ::pg_query::WindowDef& over() const; - PROTOBUF_NODISCARD ::pg_query::WindowDef* release_over(); - ::pg_query::WindowDef* mutable_over(); - void set_allocated_over(::pg_query::WindowDef* over); + // repeated .pg_query.Node argtypes = 2 [json_name = "argtypes"]; + int argtypes_size() const; private: - const ::pg_query::WindowDef& _internal_over() const; - ::pg_query::WindowDef* _internal_mutable_over(); - public: - void unsafe_arena_set_allocated_over( - ::pg_query::WindowDef* over); - ::pg_query::WindowDef* unsafe_arena_release_over(); + int _internal_argtypes_size() const; - // bool agg_within_group = 6 [json_name = "agg_within_group"]; - void clear_agg_within_group(); - bool agg_within_group() const; - void set_agg_within_group(bool value); - private: - bool _internal_agg_within_group() const; - void _internal_set_agg_within_group(bool value); public: - - // bool agg_star = 7 [json_name = "agg_star"]; - void clear_agg_star(); - bool agg_star() const; - void set_agg_star(bool value); + void clear_argtypes() ; + ::pg_query::Node* mutable_argtypes(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_argtypes(); private: - bool _internal_agg_star() const; - void _internal_set_agg_star(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_argtypes() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_argtypes(); public: + const ::pg_query::Node& argtypes(int index) const; + ::pg_query::Node* add_argtypes(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + argtypes() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // bool agg_distinct = 8 [json_name = "agg_distinct"]; - void clear_agg_distinct(); - bool agg_distinct() const; - void set_agg_distinct(bool value); private: - bool _internal_agg_distinct() const; - void _internal_set_agg_distinct(bool value); - public: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); - // bool func_variadic = 9 [json_name = "func_variadic"]; - void clear_func_variadic(); - bool func_variadic() const; - void set_func_variadic(bool value); - private: - bool _internal_func_variadic() const; - void _internal_set_func_variadic(bool value); public: + // .pg_query.Node query = 3 [json_name = "query"]; + bool has_query() const; + void clear_query() ; + const ::pg_query::Node& query() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_query(); + ::pg_query::Node* mutable_query(); + void set_allocated_query(::pg_query::Node* value); + void unsafe_arena_set_allocated_query(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_query(); - // .pg_query.CoercionForm funcformat = 10 [json_name = "funcformat"]; - void clear_funcformat(); - ::pg_query::CoercionForm funcformat() const; - void set_funcformat(::pg_query::CoercionForm value); private: - ::pg_query::CoercionForm _internal_funcformat() const; - void _internal_set_funcformat(::pg_query::CoercionForm value); - public: + const ::pg_query::Node& _internal_query() const; + ::pg_query::Node* _internal_mutable_query(); - // int32 location = 11 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.FuncCall) + // @@protoc_insertion_point(class_scope:pg_query.PrepareStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 33, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > funcname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > agg_order_; - ::pg_query::Node* agg_filter_; - ::pg_query::WindowDef* over_; - bool agg_within_group_; - bool agg_star_; - bool agg_distinct_; - bool func_variadic_; - int funcformat_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > argtypes_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::Node* query_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class A_Star final : - public ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase /* @@protoc_insertion_point(class_definition:pg_query.A_Star) */ { +class PublicationObjSpec final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.PublicationObjSpec) */ { public: - inline A_Star() : A_Star(nullptr) {} - explicit PROTOBUF_CONSTEXPR A_Star(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline PublicationObjSpec() : PublicationObjSpec(nullptr) {} + ~PublicationObjSpec() override; + template + explicit PROTOBUF_CONSTEXPR PublicationObjSpec(::google::protobuf::internal::ConstantInitialized); - A_Star(const A_Star& from); - A_Star(A_Star&& from) noexcept - : A_Star() { + inline PublicationObjSpec(const PublicationObjSpec& from) + : PublicationObjSpec(nullptr, from) {} + PublicationObjSpec(PublicationObjSpec&& from) noexcept + : PublicationObjSpec() { *this = ::std::move(from); } - inline A_Star& operator=(const A_Star& from) { + inline PublicationObjSpec& operator=(const PublicationObjSpec& from) { CopyFrom(from); return *this; } - inline A_Star& operator=(A_Star&& from) noexcept { + inline PublicationObjSpec& operator=(PublicationObjSpec&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -48666,116 +56776,220 @@ class A_Star final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const A_Star& default_instance() { + static const PublicationObjSpec& default_instance() { return *internal_default_instance(); } - static inline const A_Star* internal_default_instance() { - return reinterpret_cast( - &_A_Star_default_instance_); + static inline const PublicationObjSpec* internal_default_instance() { + return reinterpret_cast( + &_PublicationObjSpec_default_instance_); } static constexpr int kIndexInFileMessages = - 186; + 249; - friend void swap(A_Star& a, A_Star& b) { + friend void swap(PublicationObjSpec& a, PublicationObjSpec& b) { a.Swap(&b); } - inline void Swap(A_Star* other) { + inline void Swap(PublicationObjSpec* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(A_Star* other) { + void UnsafeArenaSwap(PublicationObjSpec* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - A_Star* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyFrom; - inline void CopyFrom(const A_Star& from) { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl(*this, from); + PublicationObjSpec* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeFrom; - void MergeFrom(const A_Star& from) { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PublicationObjSpec& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const PublicationObjSpec& from) { + PublicationObjSpec::MergeImpl(*this, from); } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.A_Star"; + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(PublicationObjSpec* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.PublicationObjSpec"; } protected: - explicit A_Star(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit PublicationObjSpec(::google::protobuf::Arena* arena); + PublicationObjSpec(::google::protobuf::Arena* arena, const PublicationObjSpec& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- - // @@protoc_insertion_point(class_scope:pg_query.A_Star) + enum : int { + kNameFieldNumber = 2, + kPubtableFieldNumber = 3, + kPubobjtypeFieldNumber = 1, + kLocationFieldNumber = 4, + }; + // string name = 2 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + + public: + // .pg_query.PublicationTable pubtable = 3 [json_name = "pubtable"]; + bool has_pubtable() const; + void clear_pubtable() ; + const ::pg_query::PublicationTable& pubtable() const; + PROTOBUF_NODISCARD ::pg_query::PublicationTable* release_pubtable(); + ::pg_query::PublicationTable* mutable_pubtable(); + void set_allocated_pubtable(::pg_query::PublicationTable* value); + void unsafe_arena_set_allocated_pubtable(::pg_query::PublicationTable* value); + ::pg_query::PublicationTable* unsafe_arena_release_pubtable(); + + private: + const ::pg_query::PublicationTable& _internal_pubtable() const; + ::pg_query::PublicationTable* _internal_mutable_pubtable(); + + public: + // .pg_query.PublicationObjSpecType pubobjtype = 1 [json_name = "pubobjtype"]; + void clear_pubobjtype() ; + ::pg_query::PublicationObjSpecType pubobjtype() const; + void set_pubobjtype(::pg_query::PublicationObjSpecType value); + + private: + ::pg_query::PublicationObjSpecType _internal_pubobjtype() const; + void _internal_set_pubobjtype(::pg_query::PublicationObjSpecType value); + + public: + // int32 location = 4 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.PublicationObjSpec) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 1, + 40, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::PublicationTable* pubtable_; + int pubobjtype_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; + union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class A_Indices final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.A_Indices) */ { +class PublicationTable final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.PublicationTable) */ { public: - inline A_Indices() : A_Indices(nullptr) {} - ~A_Indices() override; - explicit PROTOBUF_CONSTEXPR A_Indices(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline PublicationTable() : PublicationTable(nullptr) {} + ~PublicationTable() override; + template + explicit PROTOBUF_CONSTEXPR PublicationTable(::google::protobuf::internal::ConstantInitialized); - A_Indices(const A_Indices& from); - A_Indices(A_Indices&& from) noexcept - : A_Indices() { + inline PublicationTable(const PublicationTable& from) + : PublicationTable(nullptr, from) {} + PublicationTable(PublicationTable&& from) noexcept + : PublicationTable() { *this = ::std::move(from); } - inline A_Indices& operator=(const A_Indices& from) { + inline PublicationTable& operator=(const PublicationTable& from) { CopyFrom(from); return *this; } - inline A_Indices& operator=(A_Indices&& from) noexcept { + inline PublicationTable& operator=(PublicationTable&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -48785,185 +56999,215 @@ class A_Indices final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const A_Indices& default_instance() { + static const PublicationTable& default_instance() { return *internal_default_instance(); } - static inline const A_Indices* internal_default_instance() { - return reinterpret_cast( - &_A_Indices_default_instance_); + static inline const PublicationTable* internal_default_instance() { + return reinterpret_cast( + &_PublicationTable_default_instance_); } static constexpr int kIndexInFileMessages = - 187; + 248; - friend void swap(A_Indices& a, A_Indices& b) { + friend void swap(PublicationTable& a, PublicationTable& b) { a.Swap(&b); } - inline void Swap(A_Indices* other) { + inline void Swap(PublicationTable* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(A_Indices* other) { + void UnsafeArenaSwap(PublicationTable* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - A_Indices* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + PublicationTable* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const A_Indices& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const A_Indices& from) { - A_Indices::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PublicationTable& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const PublicationTable& from) { + PublicationTable::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(A_Indices* other); + void InternalSwap(PublicationTable* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.A_Indices"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.PublicationTable"; } protected: - explicit A_Indices(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit PublicationTable(::google::protobuf::Arena* arena); + PublicationTable(::google::protobuf::Arena* arena, const PublicationTable& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kLidxFieldNumber = 2, - kUidxFieldNumber = 3, - kIsSliceFieldNumber = 1, + kColumnsFieldNumber = 3, + kRelationFieldNumber = 1, + kWhereClauseFieldNumber = 2, }; - // .pg_query.Node lidx = 2 [json_name = "lidx"]; - bool has_lidx() const; + // repeated .pg_query.Node columns = 3 [json_name = "columns"]; + int columns_size() const; private: - bool _internal_has_lidx() const; + int _internal_columns_size() const; + public: - void clear_lidx(); - const ::pg_query::Node& lidx() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_lidx(); - ::pg_query::Node* mutable_lidx(); - void set_allocated_lidx(::pg_query::Node* lidx); + void clear_columns() ; + ::pg_query::Node* mutable_columns(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_columns(); private: - const ::pg_query::Node& _internal_lidx() const; - ::pg_query::Node* _internal_mutable_lidx(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_columns() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_columns(); public: - void unsafe_arena_set_allocated_lidx( - ::pg_query::Node* lidx); - ::pg_query::Node* unsafe_arena_release_lidx(); + const ::pg_query::Node& columns(int index) const; + ::pg_query::Node* add_columns(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + columns() const; + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // .pg_query.Node uidx = 3 [json_name = "uidx"]; - bool has_uidx() const; - private: - bool _internal_has_uidx() const; - public: - void clear_uidx(); - const ::pg_query::Node& uidx() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_uidx(); - ::pg_query::Node* mutable_uidx(); - void set_allocated_uidx(::pg_query::Node* uidx); private: - const ::pg_query::Node& _internal_uidx() const; - ::pg_query::Node* _internal_mutable_uidx(); + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); + public: - void unsafe_arena_set_allocated_uidx( - ::pg_query::Node* uidx); - ::pg_query::Node* unsafe_arena_release_uidx(); + // .pg_query.Node where_clause = 2 [json_name = "whereClause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); - // bool is_slice = 1 [json_name = "is_slice"]; - void clear_is_slice(); - bool is_slice() const; - void set_is_slice(bool value); private: - bool _internal_is_slice() const; - void _internal_set_is_slice(bool value); - public: + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); - // @@protoc_insertion_point(class_scope:pg_query.A_Indices) + public: + // @@protoc_insertion_point(class_scope:pg_query.PublicationTable) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* lidx_; - ::pg_query::Node* uidx_; - bool is_slice_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > columns_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* where_clause_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class A_Indirection final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.A_Indirection) */ { +class Query final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Query) */ { public: - inline A_Indirection() : A_Indirection(nullptr) {} - ~A_Indirection() override; - explicit PROTOBUF_CONSTEXPR A_Indirection(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline Query() : Query(nullptr) {} + ~Query() override; + template + explicit PROTOBUF_CONSTEXPR Query(::google::protobuf::internal::ConstantInitialized); - A_Indirection(const A_Indirection& from); - A_Indirection(A_Indirection&& from) noexcept - : A_Indirection() { + inline Query(const Query& from) + : Query(nullptr, from) {} + Query(Query&& from) noexcept + : Query() { *this = ::std::move(from); } - inline A_Indirection& operator=(const A_Indirection& from) { + inline Query& operator=(const Query& from) { CopyFrom(from); return *this; } - inline A_Indirection& operator=(A_Indirection&& from) noexcept { + inline Query& operator=(Query&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -48973,174 +57217,800 @@ class A_Indirection final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const A_Indirection& default_instance() { + static const Query& default_instance() { return *internal_default_instance(); } - static inline const A_Indirection* internal_default_instance() { - return reinterpret_cast( - &_A_Indirection_default_instance_); + static inline const Query* internal_default_instance() { + return reinterpret_cast( + &_Query_default_instance_); } static constexpr int kIndexInFileMessages = - 188; + 67; - friend void swap(A_Indirection& a, A_Indirection& b) { + friend void swap(Query& a, Query& b) { a.Swap(&b); } - inline void Swap(A_Indirection* other) { + inline void Swap(Query* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(A_Indirection* other) { + void UnsafeArenaSwap(Query* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - A_Indirection* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + Query* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const A_Indirection& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const A_Indirection& from) { - A_Indirection::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Query& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Query& from) { + Query::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(A_Indirection* other); + void InternalSwap(Query* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.A_Indirection"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Query"; } protected: - explicit A_Indirection(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit Query(::google::protobuf::Arena* arena); + Query(::google::protobuf::Arena* arena, const Query& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kIndirectionFieldNumber = 2, - kArgFieldNumber = 1, + kCteListFieldNumber = 16, + kRtableFieldNumber = 17, + kRteperminfosFieldNumber = 18, + kMergeActionListFieldNumber = 20, + kTargetListFieldNumber = 22, + kReturningListFieldNumber = 25, + kGroupClauseFieldNumber = 26, + kGroupingSetsFieldNumber = 28, + kWindowClauseFieldNumber = 30, + kDistinctClauseFieldNumber = 31, + kSortClauseFieldNumber = 32, + kRowMarksFieldNumber = 36, + kConstraintDepsFieldNumber = 38, + kWithCheckOptionsFieldNumber = 39, + kUtilityStmtFieldNumber = 4, + kJointreeFieldNumber = 19, + kOnConflictFieldNumber = 24, + kHavingQualFieldNumber = 29, + kLimitOffsetFieldNumber = 33, + kLimitCountFieldNumber = 34, + kSetOperationsFieldNumber = 37, + kCommandTypeFieldNumber = 1, + kQuerySourceFieldNumber = 2, + kResultRelationFieldNumber = 5, + kCanSetTagFieldNumber = 3, + kHasAggsFieldNumber = 6, + kHasWindowFuncsFieldNumber = 7, + kHasTargetSrfsFieldNumber = 8, + kHasSubLinksFieldNumber = 9, + kHasDistinctOnFieldNumber = 10, + kHasRecursiveFieldNumber = 11, + kHasModifyingCteFieldNumber = 12, + kHasForUpdateFieldNumber = 13, + kHasRowSecurityFieldNumber = 14, + kIsReturnFieldNumber = 15, + kMergeUseOuterJoinFieldNumber = 21, + kOverrideFieldNumber = 23, + kGroupDistinctFieldNumber = 27, + kLimitOptionFieldNumber = 35, + kStmtLocationFieldNumber = 40, + kStmtLenFieldNumber = 41, }; - // repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; - int indirection_size() const; + // repeated .pg_query.Node cte_list = 16 [json_name = "cteList"]; + int cte_list_size() const; private: - int _internal_indirection_size() const; + int _internal_cte_list_size() const; + public: - void clear_indirection(); - ::pg_query::Node* mutable_indirection(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_indirection(); + void clear_cte_list() ; + ::pg_query::Node* mutable_cte_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_cte_list(); private: - const ::pg_query::Node& _internal_indirection(int index) const; - ::pg_query::Node* _internal_add_indirection(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_cte_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_cte_list(); public: - const ::pg_query::Node& indirection(int index) const; - ::pg_query::Node* add_indirection(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - indirection() const; + const ::pg_query::Node& cte_list(int index) const; + ::pg_query::Node* add_cte_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + cte_list() const; + // repeated .pg_query.Node rtable = 17 [json_name = "rtable"]; + int rtable_size() const; + private: + int _internal_rtable_size() const; - // .pg_query.Node arg = 1 [json_name = "arg"]; - bool has_arg() const; + public: + void clear_rtable() ; + ::pg_query::Node* mutable_rtable(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_rtable(); private: - bool _internal_has_arg() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_rtable() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_rtable(); public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + const ::pg_query::Node& rtable(int index) const; + ::pg_query::Node* add_rtable(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + rtable() const; + // repeated .pg_query.Node rteperminfos = 18 [json_name = "rteperminfos"]; + int rteperminfos_size() const; private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); + int _internal_rteperminfos_size() const; + public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + void clear_rteperminfos() ; + ::pg_query::Node* mutable_rteperminfos(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_rteperminfos(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_rteperminfos() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_rteperminfos(); + public: + const ::pg_query::Node& rteperminfos(int index) const; + ::pg_query::Node* add_rteperminfos(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + rteperminfos() const; + // repeated .pg_query.Node merge_action_list = 20 [json_name = "mergeActionList"]; + int merge_action_list_size() const; + private: + int _internal_merge_action_list_size() const; - // @@protoc_insertion_point(class_scope:pg_query.A_Indirection) + public: + void clear_merge_action_list() ; + ::pg_query::Node* mutable_merge_action_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_merge_action_list(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_merge_action_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_merge_action_list(); + public: + const ::pg_query::Node& merge_action_list(int index) const; + ::pg_query::Node* add_merge_action_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + merge_action_list() const; + // repeated .pg_query.Node target_list = 22 [json_name = "targetList"]; + int target_list_size() const; + private: + int _internal_target_list_size() const; + + public: + void clear_target_list() ; + ::pg_query::Node* mutable_target_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_target_list(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_target_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_target_list(); + public: + const ::pg_query::Node& target_list(int index) const; + ::pg_query::Node* add_target_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + target_list() const; + // repeated .pg_query.Node returning_list = 25 [json_name = "returningList"]; + int returning_list_size() const; + private: + int _internal_returning_list_size() const; + + public: + void clear_returning_list() ; + ::pg_query::Node* mutable_returning_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_returning_list(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_returning_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_returning_list(); + public: + const ::pg_query::Node& returning_list(int index) const; + ::pg_query::Node* add_returning_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + returning_list() const; + // repeated .pg_query.Node group_clause = 26 [json_name = "groupClause"]; + int group_clause_size() const; + private: + int _internal_group_clause_size() const; + + public: + void clear_group_clause() ; + ::pg_query::Node* mutable_group_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_group_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_group_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_group_clause(); + public: + const ::pg_query::Node& group_clause(int index) const; + ::pg_query::Node* add_group_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + group_clause() const; + // repeated .pg_query.Node grouping_sets = 28 [json_name = "groupingSets"]; + int grouping_sets_size() const; + private: + int _internal_grouping_sets_size() const; + + public: + void clear_grouping_sets() ; + ::pg_query::Node* mutable_grouping_sets(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_grouping_sets(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_grouping_sets() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_grouping_sets(); + public: + const ::pg_query::Node& grouping_sets(int index) const; + ::pg_query::Node* add_grouping_sets(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + grouping_sets() const; + // repeated .pg_query.Node window_clause = 30 [json_name = "windowClause"]; + int window_clause_size() const; + private: + int _internal_window_clause_size() const; + + public: + void clear_window_clause() ; + ::pg_query::Node* mutable_window_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_window_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_window_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_window_clause(); + public: + const ::pg_query::Node& window_clause(int index) const; + ::pg_query::Node* add_window_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + window_clause() const; + // repeated .pg_query.Node distinct_clause = 31 [json_name = "distinctClause"]; + int distinct_clause_size() const; + private: + int _internal_distinct_clause_size() const; + + public: + void clear_distinct_clause() ; + ::pg_query::Node* mutable_distinct_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_distinct_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_distinct_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_distinct_clause(); + public: + const ::pg_query::Node& distinct_clause(int index) const; + ::pg_query::Node* add_distinct_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + distinct_clause() const; + // repeated .pg_query.Node sort_clause = 32 [json_name = "sortClause"]; + int sort_clause_size() const; + private: + int _internal_sort_clause_size() const; + + public: + void clear_sort_clause() ; + ::pg_query::Node* mutable_sort_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_sort_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_sort_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_sort_clause(); + public: + const ::pg_query::Node& sort_clause(int index) const; + ::pg_query::Node* add_sort_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + sort_clause() const; + // repeated .pg_query.Node row_marks = 36 [json_name = "rowMarks"]; + int row_marks_size() const; + private: + int _internal_row_marks_size() const; + + public: + void clear_row_marks() ; + ::pg_query::Node* mutable_row_marks(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_row_marks(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_row_marks() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_row_marks(); + public: + const ::pg_query::Node& row_marks(int index) const; + ::pg_query::Node* add_row_marks(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + row_marks() const; + // repeated .pg_query.Node constraint_deps = 38 [json_name = "constraintDeps"]; + int constraint_deps_size() const; + private: + int _internal_constraint_deps_size() const; + + public: + void clear_constraint_deps() ; + ::pg_query::Node* mutable_constraint_deps(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_constraint_deps(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_constraint_deps() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_constraint_deps(); + public: + const ::pg_query::Node& constraint_deps(int index) const; + ::pg_query::Node* add_constraint_deps(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + constraint_deps() const; + // repeated .pg_query.Node with_check_options = 39 [json_name = "withCheckOptions"]; + int with_check_options_size() const; + private: + int _internal_with_check_options_size() const; + + public: + void clear_with_check_options() ; + ::pg_query::Node* mutable_with_check_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_with_check_options(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_with_check_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_with_check_options(); + public: + const ::pg_query::Node& with_check_options(int index) const; + ::pg_query::Node* add_with_check_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + with_check_options() const; + // .pg_query.Node utility_stmt = 4 [json_name = "utilityStmt"]; + bool has_utility_stmt() const; + void clear_utility_stmt() ; + const ::pg_query::Node& utility_stmt() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_utility_stmt(); + ::pg_query::Node* mutable_utility_stmt(); + void set_allocated_utility_stmt(::pg_query::Node* value); + void unsafe_arena_set_allocated_utility_stmt(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_utility_stmt(); + + private: + const ::pg_query::Node& _internal_utility_stmt() const; + ::pg_query::Node* _internal_mutable_utility_stmt(); + + public: + // .pg_query.FromExpr jointree = 19 [json_name = "jointree"]; + bool has_jointree() const; + void clear_jointree() ; + const ::pg_query::FromExpr& jointree() const; + PROTOBUF_NODISCARD ::pg_query::FromExpr* release_jointree(); + ::pg_query::FromExpr* mutable_jointree(); + void set_allocated_jointree(::pg_query::FromExpr* value); + void unsafe_arena_set_allocated_jointree(::pg_query::FromExpr* value); + ::pg_query::FromExpr* unsafe_arena_release_jointree(); + + private: + const ::pg_query::FromExpr& _internal_jointree() const; + ::pg_query::FromExpr* _internal_mutable_jointree(); + + public: + // .pg_query.OnConflictExpr on_conflict = 24 [json_name = "onConflict"]; + bool has_on_conflict() const; + void clear_on_conflict() ; + const ::pg_query::OnConflictExpr& on_conflict() const; + PROTOBUF_NODISCARD ::pg_query::OnConflictExpr* release_on_conflict(); + ::pg_query::OnConflictExpr* mutable_on_conflict(); + void set_allocated_on_conflict(::pg_query::OnConflictExpr* value); + void unsafe_arena_set_allocated_on_conflict(::pg_query::OnConflictExpr* value); + ::pg_query::OnConflictExpr* unsafe_arena_release_on_conflict(); + + private: + const ::pg_query::OnConflictExpr& _internal_on_conflict() const; + ::pg_query::OnConflictExpr* _internal_mutable_on_conflict(); + + public: + // .pg_query.Node having_qual = 29 [json_name = "havingQual"]; + bool has_having_qual() const; + void clear_having_qual() ; + const ::pg_query::Node& having_qual() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_having_qual(); + ::pg_query::Node* mutable_having_qual(); + void set_allocated_having_qual(::pg_query::Node* value); + void unsafe_arena_set_allocated_having_qual(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_having_qual(); + + private: + const ::pg_query::Node& _internal_having_qual() const; + ::pg_query::Node* _internal_mutable_having_qual(); + + public: + // .pg_query.Node limit_offset = 33 [json_name = "limitOffset"]; + bool has_limit_offset() const; + void clear_limit_offset() ; + const ::pg_query::Node& limit_offset() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_limit_offset(); + ::pg_query::Node* mutable_limit_offset(); + void set_allocated_limit_offset(::pg_query::Node* value); + void unsafe_arena_set_allocated_limit_offset(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_limit_offset(); + + private: + const ::pg_query::Node& _internal_limit_offset() const; + ::pg_query::Node* _internal_mutable_limit_offset(); + + public: + // .pg_query.Node limit_count = 34 [json_name = "limitCount"]; + bool has_limit_count() const; + void clear_limit_count() ; + const ::pg_query::Node& limit_count() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_limit_count(); + ::pg_query::Node* mutable_limit_count(); + void set_allocated_limit_count(::pg_query::Node* value); + void unsafe_arena_set_allocated_limit_count(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_limit_count(); + + private: + const ::pg_query::Node& _internal_limit_count() const; + ::pg_query::Node* _internal_mutable_limit_count(); + + public: + // .pg_query.Node set_operations = 37 [json_name = "setOperations"]; + bool has_set_operations() const; + void clear_set_operations() ; + const ::pg_query::Node& set_operations() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_set_operations(); + ::pg_query::Node* mutable_set_operations(); + void set_allocated_set_operations(::pg_query::Node* value); + void unsafe_arena_set_allocated_set_operations(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_set_operations(); + + private: + const ::pg_query::Node& _internal_set_operations() const; + ::pg_query::Node* _internal_mutable_set_operations(); + + public: + // .pg_query.CmdType command_type = 1 [json_name = "commandType"]; + void clear_command_type() ; + ::pg_query::CmdType command_type() const; + void set_command_type(::pg_query::CmdType value); + + private: + ::pg_query::CmdType _internal_command_type() const; + void _internal_set_command_type(::pg_query::CmdType value); + + public: + // .pg_query.QuerySource query_source = 2 [json_name = "querySource"]; + void clear_query_source() ; + ::pg_query::QuerySource query_source() const; + void set_query_source(::pg_query::QuerySource value); + + private: + ::pg_query::QuerySource _internal_query_source() const; + void _internal_set_query_source(::pg_query::QuerySource value); + + public: + // int32 result_relation = 5 [json_name = "resultRelation"]; + void clear_result_relation() ; + ::int32_t result_relation() const; + void set_result_relation(::int32_t value); + + private: + ::int32_t _internal_result_relation() const; + void _internal_set_result_relation(::int32_t value); + + public: + // bool can_set_tag = 3 [json_name = "canSetTag"]; + void clear_can_set_tag() ; + bool can_set_tag() const; + void set_can_set_tag(bool value); + + private: + bool _internal_can_set_tag() const; + void _internal_set_can_set_tag(bool value); + + public: + // bool has_aggs = 6 [json_name = "hasAggs"]; + void clear_has_aggs() ; + bool has_aggs() const; + void set_has_aggs(bool value); + + private: + bool _internal_has_aggs() const; + void _internal_set_has_aggs(bool value); + + public: + // bool has_window_funcs = 7 [json_name = "hasWindowFuncs"]; + void clear_has_window_funcs() ; + bool has_window_funcs() const; + void set_has_window_funcs(bool value); + + private: + bool _internal_has_window_funcs() const; + void _internal_set_has_window_funcs(bool value); + + public: + // bool has_target_srfs = 8 [json_name = "hasTargetSRFs"]; + void clear_has_target_srfs() ; + bool has_target_srfs() const; + void set_has_target_srfs(bool value); + + private: + bool _internal_has_target_srfs() const; + void _internal_set_has_target_srfs(bool value); + + public: + // bool has_sub_links = 9 [json_name = "hasSubLinks"]; + void clear_has_sub_links() ; + bool has_sub_links() const; + void set_has_sub_links(bool value); + + private: + bool _internal_has_sub_links() const; + void _internal_set_has_sub_links(bool value); + + public: + // bool has_distinct_on = 10 [json_name = "hasDistinctOn"]; + void clear_has_distinct_on() ; + bool has_distinct_on() const; + void set_has_distinct_on(bool value); + + private: + bool _internal_has_distinct_on() const; + void _internal_set_has_distinct_on(bool value); + + public: + // bool has_recursive = 11 [json_name = "hasRecursive"]; + void clear_has_recursive() ; + bool has_recursive() const; + void set_has_recursive(bool value); + + private: + bool _internal_has_recursive() const; + void _internal_set_has_recursive(bool value); + + public: + // bool has_modifying_cte = 12 [json_name = "hasModifyingCTE"]; + void clear_has_modifying_cte() ; + bool has_modifying_cte() const; + void set_has_modifying_cte(bool value); + + private: + bool _internal_has_modifying_cte() const; + void _internal_set_has_modifying_cte(bool value); + + public: + // bool has_for_update = 13 [json_name = "hasForUpdate"]; + void clear_has_for_update() ; + bool has_for_update() const; + void set_has_for_update(bool value); + + private: + bool _internal_has_for_update() const; + void _internal_set_has_for_update(bool value); + + public: + // bool has_row_security = 14 [json_name = "hasRowSecurity"]; + void clear_has_row_security() ; + bool has_row_security() const; + void set_has_row_security(bool value); + + private: + bool _internal_has_row_security() const; + void _internal_set_has_row_security(bool value); + + public: + // bool is_return = 15 [json_name = "isReturn"]; + void clear_is_return() ; + bool is_return() const; + void set_is_return(bool value); + + private: + bool _internal_is_return() const; + void _internal_set_is_return(bool value); + + public: + // bool merge_use_outer_join = 21 [json_name = "mergeUseOuterJoin"]; + void clear_merge_use_outer_join() ; + bool merge_use_outer_join() const; + void set_merge_use_outer_join(bool value); + + private: + bool _internal_merge_use_outer_join() const; + void _internal_set_merge_use_outer_join(bool value); + + public: + // .pg_query.OverridingKind override = 23 [json_name = "override"]; + void clear_override() ; + ::pg_query::OverridingKind override() const; + void set_override(::pg_query::OverridingKind value); + + private: + ::pg_query::OverridingKind _internal_override() const; + void _internal_set_override(::pg_query::OverridingKind value); + + public: + // bool group_distinct = 27 [json_name = "groupDistinct"]; + void clear_group_distinct() ; + bool group_distinct() const; + void set_group_distinct(bool value); + + private: + bool _internal_group_distinct() const; + void _internal_set_group_distinct(bool value); + + public: + // .pg_query.LimitOption limit_option = 35 [json_name = "limitOption"]; + void clear_limit_option() ; + ::pg_query::LimitOption limit_option() const; + void set_limit_option(::pg_query::LimitOption value); + + private: + ::pg_query::LimitOption _internal_limit_option() const; + void _internal_set_limit_option(::pg_query::LimitOption value); + + public: + // int32 stmt_location = 40 [json_name = "stmt_location"]; + void clear_stmt_location() ; + ::int32_t stmt_location() const; + void set_stmt_location(::int32_t value); + + private: + ::int32_t _internal_stmt_location() const; + void _internal_set_stmt_location(::int32_t value); + + public: + // int32 stmt_len = 41 [json_name = "stmt_len"]; + void clear_stmt_len() ; + ::int32_t stmt_len() const; + void set_stmt_len(::int32_t value); + + private: + ::int32_t _internal_stmt_len() const; + void _internal_set_stmt_len(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.Query) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 5, 41, 21, + 0, 7> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > indirection_; - ::pg_query::Node* arg_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > cte_list_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > rtable_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > rteperminfos_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > merge_action_list_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > target_list_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > returning_list_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > group_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > grouping_sets_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > window_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > distinct_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > sort_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > row_marks_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > constraint_deps_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > with_check_options_; + ::pg_query::Node* utility_stmt_; + ::pg_query::FromExpr* jointree_; + ::pg_query::OnConflictExpr* on_conflict_; + ::pg_query::Node* having_qual_; + ::pg_query::Node* limit_offset_; + ::pg_query::Node* limit_count_; + ::pg_query::Node* set_operations_; + int command_type_; + int query_source_; + ::int32_t result_relation_; + bool can_set_tag_; + bool has_aggs_; + bool has_window_funcs_; + bool has_target_srfs_; + bool has_sub_links_; + bool has_distinct_on_; + bool has_recursive_; + bool has_modifying_cte_; + bool has_for_update_; + bool has_row_security_; + bool is_return_; + bool merge_use_outer_join_; + int override_; + bool group_distinct_; + int limit_option_; + ::int32_t stmt_location_; + ::int32_t stmt_len_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class A_ArrayExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.A_ArrayExpr) */ { +class RangeFunction final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeFunction) */ { public: - inline A_ArrayExpr() : A_ArrayExpr(nullptr) {} - ~A_ArrayExpr() override; - explicit PROTOBUF_CONSTEXPR A_ArrayExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RangeFunction() : RangeFunction(nullptr) {} + ~RangeFunction() override; + template + explicit PROTOBUF_CONSTEXPR RangeFunction(::google::protobuf::internal::ConstantInitialized); - A_ArrayExpr(const A_ArrayExpr& from); - A_ArrayExpr(A_ArrayExpr&& from) noexcept - : A_ArrayExpr() { + inline RangeFunction(const RangeFunction& from) + : RangeFunction(nullptr, from) {} + RangeFunction(RangeFunction&& from) noexcept + : RangeFunction() { *this = ::std::move(from); } - inline A_ArrayExpr& operator=(const A_ArrayExpr& from) { + inline RangeFunction& operator=(const RangeFunction& from) { CopyFrom(from); return *this; } - inline A_ArrayExpr& operator=(A_ArrayExpr&& from) noexcept { + inline RangeFunction& operator=(RangeFunction&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -49150,165 +58020,254 @@ class A_ArrayExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const A_ArrayExpr& default_instance() { + static const RangeFunction& default_instance() { return *internal_default_instance(); } - static inline const A_ArrayExpr* internal_default_instance() { - return reinterpret_cast( - &_A_ArrayExpr_default_instance_); + static inline const RangeFunction* internal_default_instance() { + return reinterpret_cast( + &_RangeFunction_default_instance_); } static constexpr int kIndexInFileMessages = - 189; + 85; - friend void swap(A_ArrayExpr& a, A_ArrayExpr& b) { + friend void swap(RangeFunction& a, RangeFunction& b) { a.Swap(&b); } - inline void Swap(A_ArrayExpr* other) { + inline void Swap(RangeFunction* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(A_ArrayExpr* other) { + void UnsafeArenaSwap(RangeFunction* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - A_ArrayExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RangeFunction* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const A_ArrayExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const A_ArrayExpr& from) { - A_ArrayExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RangeFunction& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RangeFunction& from) { + RangeFunction::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(A_ArrayExpr* other); + void InternalSwap(RangeFunction* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.A_ArrayExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RangeFunction"; } protected: - explicit A_ArrayExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RangeFunction(::google::protobuf::Arena* arena); + RangeFunction(::google::protobuf::Arena* arena, const RangeFunction& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kElementsFieldNumber = 1, - kLocationFieldNumber = 2, + kFunctionsFieldNumber = 4, + kColdeflistFieldNumber = 6, + kAliasFieldNumber = 5, + kLateralFieldNumber = 1, + kOrdinalityFieldNumber = 2, + kIsRowsfromFieldNumber = 3, }; - // repeated .pg_query.Node elements = 1 [json_name = "elements"]; - int elements_size() const; + // repeated .pg_query.Node functions = 4 [json_name = "functions"]; + int functions_size() const; private: - int _internal_elements_size() const; + int _internal_functions_size() const; + public: - void clear_elements(); - ::pg_query::Node* mutable_elements(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_elements(); + void clear_functions() ; + ::pg_query::Node* mutable_functions(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_functions(); private: - const ::pg_query::Node& _internal_elements(int index) const; - ::pg_query::Node* _internal_add_elements(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_functions() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_functions(); public: - const ::pg_query::Node& elements(int index) const; - ::pg_query::Node* add_elements(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - elements() const; + const ::pg_query::Node& functions(int index) const; + ::pg_query::Node* add_functions(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + functions() const; + // repeated .pg_query.Node coldeflist = 6 [json_name = "coldeflist"]; + int coldeflist_size() const; + private: + int _internal_coldeflist_size() const; - // int32 location = 2 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); + public: + void clear_coldeflist() ; + ::pg_query::Node* mutable_coldeflist(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_coldeflist(); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_coldeflist() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_coldeflist(); public: + const ::pg_query::Node& coldeflist(int index) const; + ::pg_query::Node* add_coldeflist(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + coldeflist() const; + // .pg_query.Alias alias = 5 [json_name = "alias"]; + bool has_alias() const; + void clear_alias() ; + const ::pg_query::Alias& alias() const; + PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); + ::pg_query::Alias* mutable_alias(); + void set_allocated_alias(::pg_query::Alias* value); + void unsafe_arena_set_allocated_alias(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_alias(); - // @@protoc_insertion_point(class_scope:pg_query.A_ArrayExpr) + private: + const ::pg_query::Alias& _internal_alias() const; + ::pg_query::Alias* _internal_mutable_alias(); + + public: + // bool lateral = 1 [json_name = "lateral"]; + void clear_lateral() ; + bool lateral() const; + void set_lateral(bool value); + + private: + bool _internal_lateral() const; + void _internal_set_lateral(bool value); + + public: + // bool ordinality = 2 [json_name = "ordinality"]; + void clear_ordinality() ; + bool ordinality() const; + void set_ordinality(bool value); + + private: + bool _internal_ordinality() const; + void _internal_set_ordinality(bool value); + + public: + // bool is_rowsfrom = 3 [json_name = "is_rowsfrom"]; + void clear_is_rowsfrom() ; + bool is_rowsfrom() const; + void set_is_rowsfrom(bool value); + + private: + bool _internal_is_rowsfrom() const; + void _internal_set_is_rowsfrom(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.RangeFunction) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > elements_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > functions_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > coldeflist_; + ::pg_query::Alias* alias_; + bool lateral_; + bool ordinality_; + bool is_rowsfrom_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ResTarget final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ResTarget) */ { +class RangeSubselect final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeSubselect) */ { public: - inline ResTarget() : ResTarget(nullptr) {} - ~ResTarget() override; - explicit PROTOBUF_CONSTEXPR ResTarget(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RangeSubselect() : RangeSubselect(nullptr) {} + ~RangeSubselect() override; + template + explicit PROTOBUF_CONSTEXPR RangeSubselect(::google::protobuf::internal::ConstantInitialized); - ResTarget(const ResTarget& from); - ResTarget(ResTarget&& from) noexcept - : ResTarget() { + inline RangeSubselect(const RangeSubselect& from) + : RangeSubselect(nullptr, from) {} + RangeSubselect(RangeSubselect&& from) noexcept + : RangeSubselect() { *this = ::std::move(from); } - inline ResTarget& operator=(const ResTarget& from) { + inline RangeSubselect& operator=(const RangeSubselect& from) { CopyFrom(from); return *this; } - inline ResTarget& operator=(ResTarget&& from) noexcept { + inline RangeSubselect& operator=(RangeSubselect&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -49318,201 +58277,207 @@ class ResTarget final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ResTarget& default_instance() { + static const RangeSubselect& default_instance() { return *internal_default_instance(); } - static inline const ResTarget* internal_default_instance() { - return reinterpret_cast( - &_ResTarget_default_instance_); + static inline const RangeSubselect* internal_default_instance() { + return reinterpret_cast( + &_RangeSubselect_default_instance_); } static constexpr int kIndexInFileMessages = - 190; + 84; - friend void swap(ResTarget& a, ResTarget& b) { + friend void swap(RangeSubselect& a, RangeSubselect& b) { a.Swap(&b); } - inline void Swap(ResTarget* other) { + inline void Swap(RangeSubselect* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ResTarget* other) { + void UnsafeArenaSwap(RangeSubselect* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ResTarget* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RangeSubselect* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ResTarget& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ResTarget& from) { - ResTarget::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RangeSubselect& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RangeSubselect& from) { + RangeSubselect::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ResTarget* other); + void InternalSwap(RangeSubselect* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ResTarget"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RangeSubselect"; } protected: - explicit ResTarget(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RangeSubselect(::google::protobuf::Arena* arena); + RangeSubselect(::google::protobuf::Arena* arena, const RangeSubselect& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kIndirectionFieldNumber = 2, - kNameFieldNumber = 1, - kValFieldNumber = 3, - kLocationFieldNumber = 4, + kSubqueryFieldNumber = 2, + kAliasFieldNumber = 3, + kLateralFieldNumber = 1, }; - // repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; - int indirection_size() const; - private: - int _internal_indirection_size() const; - public: - void clear_indirection(); - ::pg_query::Node* mutable_indirection(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_indirection(); - private: - const ::pg_query::Node& _internal_indirection(int index) const; - ::pg_query::Node* _internal_add_indirection(); - public: - const ::pg_query::Node& indirection(int index) const; - ::pg_query::Node* add_indirection(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - indirection() const; + // .pg_query.Node subquery = 2 [json_name = "subquery"]; + bool has_subquery() const; + void clear_subquery() ; + const ::pg_query::Node& subquery() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_subquery(); + ::pg_query::Node* mutable_subquery(); + void set_allocated_subquery(::pg_query::Node* value); + void unsafe_arena_set_allocated_subquery(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_subquery(); - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + const ::pg_query::Node& _internal_subquery() const; + ::pg_query::Node* _internal_mutable_subquery(); - // .pg_query.Node val = 3 [json_name = "val"]; - bool has_val() const; - private: - bool _internal_has_val() const; public: - void clear_val(); - const ::pg_query::Node& val() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_val(); - ::pg_query::Node* mutable_val(); - void set_allocated_val(::pg_query::Node* val); + // .pg_query.Alias alias = 3 [json_name = "alias"]; + bool has_alias() const; + void clear_alias() ; + const ::pg_query::Alias& alias() const; + PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); + ::pg_query::Alias* mutable_alias(); + void set_allocated_alias(::pg_query::Alias* value); + void unsafe_arena_set_allocated_alias(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_alias(); + private: - const ::pg_query::Node& _internal_val() const; - ::pg_query::Node* _internal_mutable_val(); + const ::pg_query::Alias& _internal_alias() const; + ::pg_query::Alias* _internal_mutable_alias(); + public: - void unsafe_arena_set_allocated_val( - ::pg_query::Node* val); - ::pg_query::Node* unsafe_arena_release_val(); + // bool lateral = 1 [json_name = "lateral"]; + void clear_lateral() ; + bool lateral() const; + void set_lateral(bool value); - // int32 location = 4 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + bool _internal_lateral() const; + void _internal_set_lateral(bool value); - // @@protoc_insertion_point(class_scope:pg_query.ResTarget) + public: + // @@protoc_insertion_point(class_scope:pg_query.RangeSubselect) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > indirection_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::Node* val_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* subquery_; + ::pg_query::Alias* alias_; + bool lateral_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class MultiAssignRef final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.MultiAssignRef) */ { +class RangeTableFunc final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTableFunc) */ { public: - inline MultiAssignRef() : MultiAssignRef(nullptr) {} - ~MultiAssignRef() override; - explicit PROTOBUF_CONSTEXPR MultiAssignRef(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RangeTableFunc() : RangeTableFunc(nullptr) {} + ~RangeTableFunc() override; + template + explicit PROTOBUF_CONSTEXPR RangeTableFunc(::google::protobuf::internal::ConstantInitialized); - MultiAssignRef(const MultiAssignRef& from); - MultiAssignRef(MultiAssignRef&& from) noexcept - : MultiAssignRef() { + inline RangeTableFunc(const RangeTableFunc& from) + : RangeTableFunc(nullptr, from) {} + RangeTableFunc(RangeTableFunc&& from) noexcept + : RangeTableFunc() { *this = ::std::move(from); } - inline MultiAssignRef& operator=(const MultiAssignRef& from) { + inline RangeTableFunc& operator=(const RangeTableFunc& from) { CopyFrom(from); return *this; } - inline MultiAssignRef& operator=(MultiAssignRef&& from) noexcept { + inline RangeTableFunc& operator=(RangeTableFunc&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -49522,176 +58487,276 @@ class MultiAssignRef final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const MultiAssignRef& default_instance() { + static const RangeTableFunc& default_instance() { return *internal_default_instance(); } - static inline const MultiAssignRef* internal_default_instance() { - return reinterpret_cast( - &_MultiAssignRef_default_instance_); + static inline const RangeTableFunc* internal_default_instance() { + return reinterpret_cast( + &_RangeTableFunc_default_instance_); } static constexpr int kIndexInFileMessages = - 191; + 86; - friend void swap(MultiAssignRef& a, MultiAssignRef& b) { + friend void swap(RangeTableFunc& a, RangeTableFunc& b) { a.Swap(&b); } - inline void Swap(MultiAssignRef* other) { + inline void Swap(RangeTableFunc* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(MultiAssignRef* other) { + void UnsafeArenaSwap(RangeTableFunc* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - MultiAssignRef* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RangeTableFunc* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const MultiAssignRef& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const MultiAssignRef& from) { - MultiAssignRef::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RangeTableFunc& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RangeTableFunc& from) { + RangeTableFunc::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(MultiAssignRef* other); + void InternalSwap(RangeTableFunc* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.MultiAssignRef"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RangeTableFunc"; } protected: - explicit MultiAssignRef(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RangeTableFunc(::google::protobuf::Arena* arena); + RangeTableFunc(::google::protobuf::Arena* arena, const RangeTableFunc& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kSourceFieldNumber = 1, - kColnoFieldNumber = 2, - kNcolumnsFieldNumber = 3, + kNamespacesFieldNumber = 4, + kColumnsFieldNumber = 5, + kDocexprFieldNumber = 2, + kRowexprFieldNumber = 3, + kAliasFieldNumber = 6, + kLateralFieldNumber = 1, + kLocationFieldNumber = 7, }; - // .pg_query.Node source = 1 [json_name = "source"]; - bool has_source() const; + // repeated .pg_query.Node namespaces = 4 [json_name = "namespaces"]; + int namespaces_size() const; private: - bool _internal_has_source() const; + int _internal_namespaces_size() const; + public: - void clear_source(); - const ::pg_query::Node& source() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_source(); - ::pg_query::Node* mutable_source(); - void set_allocated_source(::pg_query::Node* source); + void clear_namespaces() ; + ::pg_query::Node* mutable_namespaces(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_namespaces(); private: - const ::pg_query::Node& _internal_source() const; - ::pg_query::Node* _internal_mutable_source(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_namespaces() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_namespaces(); public: - void unsafe_arena_set_allocated_source( - ::pg_query::Node* source); - ::pg_query::Node* unsafe_arena_release_source(); + const ::pg_query::Node& namespaces(int index) const; + ::pg_query::Node* add_namespaces(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + namespaces() const; + // repeated .pg_query.Node columns = 5 [json_name = "columns"]; + int columns_size() const; + private: + int _internal_columns_size() const; + + public: + void clear_columns() ; + ::pg_query::Node* mutable_columns(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_columns(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_columns() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_columns(); + public: + const ::pg_query::Node& columns(int index) const; + ::pg_query::Node* add_columns(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + columns() const; + // .pg_query.Node docexpr = 2 [json_name = "docexpr"]; + bool has_docexpr() const; + void clear_docexpr() ; + const ::pg_query::Node& docexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_docexpr(); + ::pg_query::Node* mutable_docexpr(); + void set_allocated_docexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_docexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_docexpr(); - // int32 colno = 2 [json_name = "colno"]; - void clear_colno(); - int32_t colno() const; - void set_colno(int32_t value); private: - int32_t _internal_colno() const; - void _internal_set_colno(int32_t value); + const ::pg_query::Node& _internal_docexpr() const; + ::pg_query::Node* _internal_mutable_docexpr(); + public: + // .pg_query.Node rowexpr = 3 [json_name = "rowexpr"]; + bool has_rowexpr() const; + void clear_rowexpr() ; + const ::pg_query::Node& rowexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_rowexpr(); + ::pg_query::Node* mutable_rowexpr(); + void set_allocated_rowexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_rowexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_rowexpr(); - // int32 ncolumns = 3 [json_name = "ncolumns"]; - void clear_ncolumns(); - int32_t ncolumns() const; - void set_ncolumns(int32_t value); private: - int32_t _internal_ncolumns() const; - void _internal_set_ncolumns(int32_t value); + const ::pg_query::Node& _internal_rowexpr() const; + ::pg_query::Node* _internal_mutable_rowexpr(); + public: + // .pg_query.Alias alias = 6 [json_name = "alias"]; + bool has_alias() const; + void clear_alias() ; + const ::pg_query::Alias& alias() const; + PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); + ::pg_query::Alias* mutable_alias(); + void set_allocated_alias(::pg_query::Alias* value); + void unsafe_arena_set_allocated_alias(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_alias(); - // @@protoc_insertion_point(class_scope:pg_query.MultiAssignRef) + private: + const ::pg_query::Alias& _internal_alias() const; + ::pg_query::Alias* _internal_mutable_alias(); + + public: + // bool lateral = 1 [json_name = "lateral"]; + void clear_lateral() ; + bool lateral() const; + void set_lateral(bool value); + + private: + bool _internal_lateral() const; + void _internal_set_lateral(bool value); + + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.RangeTableFunc) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* source_; - int32_t colno_; - int32_t ncolumns_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > namespaces_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > columns_; + ::pg_query::Node* docexpr_; + ::pg_query::Node* rowexpr_; + ::pg_query::Alias* alias_; + bool lateral_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class TypeCast final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.TypeCast) */ { +class RangeTableFuncCol final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTableFuncCol) */ { public: - inline TypeCast() : TypeCast(nullptr) {} - ~TypeCast() override; - explicit PROTOBUF_CONSTEXPR TypeCast(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RangeTableFuncCol() : RangeTableFuncCol(nullptr) {} + ~RangeTableFuncCol() override; + template + explicit PROTOBUF_CONSTEXPR RangeTableFuncCol(::google::protobuf::internal::ConstantInitialized); - TypeCast(const TypeCast& from); - TypeCast(TypeCast&& from) noexcept - : TypeCast() { + inline RangeTableFuncCol(const RangeTableFuncCol& from) + : RangeTableFuncCol(nullptr, from) {} + RangeTableFuncCol(RangeTableFuncCol&& from) noexcept + : RangeTableFuncCol() { *this = ::std::move(from); } - inline TypeCast& operator=(const TypeCast& from) { + inline RangeTableFuncCol& operator=(const RangeTableFuncCol& from) { CopyFrom(from); return *this; } - inline TypeCast& operator=(TypeCast&& from) noexcept { + inline RangeTableFuncCol& operator=(RangeTableFuncCol&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -49701,185 +58766,266 @@ class TypeCast final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const TypeCast& default_instance() { + static const RangeTableFuncCol& default_instance() { return *internal_default_instance(); } - static inline const TypeCast* internal_default_instance() { - return reinterpret_cast( - &_TypeCast_default_instance_); + static inline const RangeTableFuncCol* internal_default_instance() { + return reinterpret_cast( + &_RangeTableFuncCol_default_instance_); } static constexpr int kIndexInFileMessages = - 192; + 87; - friend void swap(TypeCast& a, TypeCast& b) { + friend void swap(RangeTableFuncCol& a, RangeTableFuncCol& b) { a.Swap(&b); } - inline void Swap(TypeCast* other) { + inline void Swap(RangeTableFuncCol* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(TypeCast* other) { + void UnsafeArenaSwap(RangeTableFuncCol* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - TypeCast* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RangeTableFuncCol* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const TypeCast& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const TypeCast& from) { - TypeCast::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RangeTableFuncCol& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RangeTableFuncCol& from) { + RangeTableFuncCol::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(TypeCast* other); + void InternalSwap(RangeTableFuncCol* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.TypeCast"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RangeTableFuncCol"; } protected: - explicit TypeCast(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RangeTableFuncCol(::google::protobuf::Arena* arena); + RangeTableFuncCol(::google::protobuf::Arena* arena, const RangeTableFuncCol& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgFieldNumber = 1, + kColnameFieldNumber = 1, kTypeNameFieldNumber = 2, - kLocationFieldNumber = 3, + kColexprFieldNumber = 5, + kColdefexprFieldNumber = 6, + kForOrdinalityFieldNumber = 3, + kIsNotNullFieldNumber = 4, + kLocationFieldNumber = 7, }; - // .pg_query.Node arg = 1 [json_name = "arg"]; - bool has_arg() const; - private: - bool _internal_has_arg() const; - public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + // string colname = 1 [json_name = "colname"]; + void clear_colname() ; + const std::string& colname() const; + template + void set_colname(Arg_&& arg, Args_... args); + std::string* mutable_colname(); + PROTOBUF_NODISCARD std::string* release_colname(); + void set_allocated_colname(std::string* value); + private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); - public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + const std::string& _internal_colname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_colname( + const std::string& value); + std::string* _internal_mutable_colname(); + public: // .pg_query.TypeName type_name = 2 [json_name = "typeName"]; bool has_type_name() const; - private: - bool _internal_has_type_name() const; - public: - void clear_type_name(); + void clear_type_name() ; const ::pg_query::TypeName& type_name() const; PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); ::pg_query::TypeName* mutable_type_name(); - void set_allocated_type_name(::pg_query::TypeName* type_name); + void set_allocated_type_name(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_type_name(); + private: const ::pg_query::TypeName& _internal_type_name() const; ::pg_query::TypeName* _internal_mutable_type_name(); + public: - void unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name); - ::pg_query::TypeName* unsafe_arena_release_type_name(); + // .pg_query.Node colexpr = 5 [json_name = "colexpr"]; + bool has_colexpr() const; + void clear_colexpr() ; + const ::pg_query::Node& colexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_colexpr(); + ::pg_query::Node* mutable_colexpr(); + void set_allocated_colexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_colexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_colexpr(); + + private: + const ::pg_query::Node& _internal_colexpr() const; + ::pg_query::Node* _internal_mutable_colexpr(); + + public: + // .pg_query.Node coldefexpr = 6 [json_name = "coldefexpr"]; + bool has_coldefexpr() const; + void clear_coldefexpr() ; + const ::pg_query::Node& coldefexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_coldefexpr(); + ::pg_query::Node* mutable_coldefexpr(); + void set_allocated_coldefexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_coldefexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_coldefexpr(); - // int32 location = 3 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::pg_query::Node& _internal_coldefexpr() const; + ::pg_query::Node* _internal_mutable_coldefexpr(); + public: + // bool for_ordinality = 3 [json_name = "for_ordinality"]; + void clear_for_ordinality() ; + bool for_ordinality() const; + void set_for_ordinality(bool value); - // @@protoc_insertion_point(class_scope:pg_query.TypeCast) + private: + bool _internal_for_ordinality() const; + void _internal_set_for_ordinality(bool value); + + public: + // bool is_not_null = 4 [json_name = "is_not_null"]; + void clear_is_not_null() ; + bool is_not_null() const; + void set_is_not_null(bool value); + + private: + bool _internal_is_not_null() const; + void _internal_set_is_not_null(bool value); + + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.RangeTableFuncCol) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 3, + 42, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* arg_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr colname_; ::pg_query::TypeName* type_name_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::pg_query::Node* colexpr_; + ::pg_query::Node* coldefexpr_; + bool for_ordinality_; + bool is_not_null_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CollateClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CollateClause) */ { +class RangeTableSample final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTableSample) */ { public: - inline CollateClause() : CollateClause(nullptr) {} - ~CollateClause() override; - explicit PROTOBUF_CONSTEXPR CollateClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RangeTableSample() : RangeTableSample(nullptr) {} + ~RangeTableSample() override; + template + explicit PROTOBUF_CONSTEXPR RangeTableSample(::google::protobuf::internal::ConstantInitialized); - CollateClause(const CollateClause& from); - CollateClause(CollateClause&& from) noexcept - : CollateClause() { + inline RangeTableSample(const RangeTableSample& from) + : RangeTableSample(nullptr, from) {} + RangeTableSample(RangeTableSample&& from) noexcept + : RangeTableSample() { *this = ::std::move(from); } - inline CollateClause& operator=(const CollateClause& from) { + inline RangeTableSample& operator=(const RangeTableSample& from) { CopyFrom(from); return *this; } - inline CollateClause& operator=(CollateClause&& from) noexcept { + inline RangeTableSample& operator=(RangeTableSample&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -49889,185 +59035,247 @@ class CollateClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CollateClause& default_instance() { + static const RangeTableSample& default_instance() { return *internal_default_instance(); } - static inline const CollateClause* internal_default_instance() { - return reinterpret_cast( - &_CollateClause_default_instance_); + static inline const RangeTableSample* internal_default_instance() { + return reinterpret_cast( + &_RangeTableSample_default_instance_); } static constexpr int kIndexInFileMessages = - 193; + 88; - friend void swap(CollateClause& a, CollateClause& b) { + friend void swap(RangeTableSample& a, RangeTableSample& b) { a.Swap(&b); } - inline void Swap(CollateClause* other) { + inline void Swap(RangeTableSample* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CollateClause* other) { + void UnsafeArenaSwap(RangeTableSample* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CollateClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RangeTableSample* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CollateClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CollateClause& from) { - CollateClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RangeTableSample& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RangeTableSample& from) { + RangeTableSample::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CollateClause* other); + void InternalSwap(RangeTableSample* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CollateClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RangeTableSample"; } protected: - explicit CollateClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RangeTableSample(::google::protobuf::Arena* arena); + RangeTableSample(::google::protobuf::Arena* arena, const RangeTableSample& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCollnameFieldNumber = 2, - kArgFieldNumber = 1, - kLocationFieldNumber = 3, + kMethodFieldNumber = 2, + kArgsFieldNumber = 3, + kRelationFieldNumber = 1, + kRepeatableFieldNumber = 4, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node collname = 2 [json_name = "collname"]; - int collname_size() const; + // repeated .pg_query.Node method = 2 [json_name = "method"]; + int method_size() const; private: - int _internal_collname_size() const; + int _internal_method_size() const; + public: - void clear_collname(); - ::pg_query::Node* mutable_collname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_collname(); + void clear_method() ; + ::pg_query::Node* mutable_method(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_method(); private: - const ::pg_query::Node& _internal_collname(int index) const; - ::pg_query::Node* _internal_add_collname(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_method() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_method(); public: - const ::pg_query::Node& collname(int index) const; - ::pg_query::Node* add_collname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - collname() const; + const ::pg_query::Node& method(int index) const; + ::pg_query::Node* add_method(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + method() const; + // repeated .pg_query.Node args = 3 [json_name = "args"]; + int args_size() const; + private: + int _internal_args_size() const; - // .pg_query.Node arg = 1 [json_name = "arg"]; - bool has_arg() const; + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - bool _internal_has_arg() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::Node& relation() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_relation(); + ::pg_query::Node* mutable_relation(); + void set_allocated_relation(::pg_query::Node* value); + void unsafe_arena_set_allocated_relation(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_relation(); + private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); + const ::pg_query::Node& _internal_relation() const; + ::pg_query::Node* _internal_mutable_relation(); + public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + // .pg_query.Node repeatable = 4 [json_name = "repeatable"]; + bool has_repeatable() const; + void clear_repeatable() ; + const ::pg_query::Node& repeatable() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_repeatable(); + ::pg_query::Node* mutable_repeatable(); + void set_allocated_repeatable(::pg_query::Node* value); + void unsafe_arena_set_allocated_repeatable(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_repeatable(); - // int32 location = 3 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::pg_query::Node& _internal_repeatable() const; + ::pg_query::Node* _internal_mutable_repeatable(); + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CollateClause) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.RangeTableSample) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > collname_; - ::pg_query::Node* arg_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > method_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* relation_; + ::pg_query::Node* repeatable_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class SortBy final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SortBy) */ { +class RangeTblEntry final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTblEntry) */ { public: - inline SortBy() : SortBy(nullptr) {} - ~SortBy() override; - explicit PROTOBUF_CONSTEXPR SortBy(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RangeTblEntry() : RangeTblEntry(nullptr) {} + ~RangeTblEntry() override; + template + explicit PROTOBUF_CONSTEXPR RangeTblEntry(::google::protobuf::internal::ConstantInitialized); - SortBy(const SortBy& from); - SortBy(SortBy&& from) noexcept - : SortBy() { + inline RangeTblEntry(const RangeTblEntry& from) + : RangeTblEntry(nullptr, from) {} + RangeTblEntry(RangeTblEntry&& from) noexcept + : RangeTblEntry() { *this = ::std::move(from); } - inline SortBy& operator=(const SortBy& from) { + inline RangeTblEntry& operator=(const RangeTblEntry& from) { CopyFrom(from); return *this; } - inline SortBy& operator=(SortBy&& from) noexcept { + inline RangeTblEntry& operator=(RangeTblEntry&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -50077,207 +59285,665 @@ class SortBy final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SortBy& default_instance() { + static const RangeTblEntry& default_instance() { return *internal_default_instance(); } - static inline const SortBy* internal_default_instance() { - return reinterpret_cast( - &_SortBy_default_instance_); + static inline const RangeTblEntry* internal_default_instance() { + return reinterpret_cast( + &_RangeTblEntry_default_instance_); } static constexpr int kIndexInFileMessages = - 194; + 100; - friend void swap(SortBy& a, SortBy& b) { + friend void swap(RangeTblEntry& a, RangeTblEntry& b) { a.Swap(&b); } - inline void Swap(SortBy* other) { + inline void Swap(RangeTblEntry* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SortBy* other) { + void UnsafeArenaSwap(RangeTblEntry* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - SortBy* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RangeTblEntry* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SortBy& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SortBy& from) { - SortBy::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RangeTblEntry& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RangeTblEntry& from) { + RangeTblEntry::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SortBy* other); + void InternalSwap(RangeTblEntry* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SortBy"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RangeTblEntry"; } protected: - explicit SortBy(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RangeTblEntry(::google::protobuf::Arena* arena); + RangeTblEntry(::google::protobuf::Arena* arena, const RangeTblEntry& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kUseOpFieldNumber = 4, - kNodeFieldNumber = 1, - kSortbyDirFieldNumber = 2, - kSortbyNullsFieldNumber = 3, - kLocationFieldNumber = 5, + kJoinaliasvarsFieldNumber = 11, + kJoinleftcolsFieldNumber = 12, + kJoinrightcolsFieldNumber = 13, + kFunctionsFieldNumber = 15, + kValuesListsFieldNumber = 18, + kColtypesFieldNumber = 22, + kColtypmodsFieldNumber = 23, + kColcollationsFieldNumber = 24, + kSecurityQualsFieldNumber = 32, + kRelkindFieldNumber = 3, + kCtenameFieldNumber = 19, + kEnrnameFieldNumber = 25, + kTablesampleFieldNumber = 5, + kSubqueryFieldNumber = 7, + kJoinUsingAliasFieldNumber = 14, + kTablefuncFieldNumber = 17, + kAliasFieldNumber = 27, + kErefFieldNumber = 28, + kRtekindFieldNumber = 1, + kRelidFieldNumber = 2, + kRellockmodeFieldNumber = 4, + kPerminfoindexFieldNumber = 6, + kJointypeFieldNumber = 9, + kJoinmergedcolsFieldNumber = 10, + kSecurityBarrierFieldNumber = 8, + kFuncordinalityFieldNumber = 16, + kSelfReferenceFieldNumber = 21, + kLateralFieldNumber = 29, + kCtelevelsupFieldNumber = 20, + kEnrtuplesFieldNumber = 26, + kInhFieldNumber = 30, + kInFromClFieldNumber = 31, }; - // repeated .pg_query.Node use_op = 4 [json_name = "useOp"]; - int use_op_size() const; + // repeated .pg_query.Node joinaliasvars = 11 [json_name = "joinaliasvars"]; + int joinaliasvars_size() const; private: - int _internal_use_op_size() const; + int _internal_joinaliasvars_size() const; + public: - void clear_use_op(); - ::pg_query::Node* mutable_use_op(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_use_op(); + void clear_joinaliasvars() ; + ::pg_query::Node* mutable_joinaliasvars(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_joinaliasvars(); private: - const ::pg_query::Node& _internal_use_op(int index) const; - ::pg_query::Node* _internal_add_use_op(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_joinaliasvars() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_joinaliasvars(); public: - const ::pg_query::Node& use_op(int index) const; - ::pg_query::Node* add_use_op(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - use_op() const; + const ::pg_query::Node& joinaliasvars(int index) const; + ::pg_query::Node* add_joinaliasvars(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + joinaliasvars() const; + // repeated .pg_query.Node joinleftcols = 12 [json_name = "joinleftcols"]; + int joinleftcols_size() const; + private: + int _internal_joinleftcols_size() const; - // .pg_query.Node node = 1 [json_name = "node"]; - bool has_node() const; + public: + void clear_joinleftcols() ; + ::pg_query::Node* mutable_joinleftcols(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_joinleftcols(); private: - bool _internal_has_node() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_joinleftcols() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_joinleftcols(); public: - void clear_node(); - const ::pg_query::Node& node() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_node(); - ::pg_query::Node* mutable_node(); - void set_allocated_node(::pg_query::Node* node); + const ::pg_query::Node& joinleftcols(int index) const; + ::pg_query::Node* add_joinleftcols(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + joinleftcols() const; + // repeated .pg_query.Node joinrightcols = 13 [json_name = "joinrightcols"]; + int joinrightcols_size() const; private: - const ::pg_query::Node& _internal_node() const; - ::pg_query::Node* _internal_mutable_node(); + int _internal_joinrightcols_size() const; + public: - void unsafe_arena_set_allocated_node( - ::pg_query::Node* node); - ::pg_query::Node* unsafe_arena_release_node(); + void clear_joinrightcols() ; + ::pg_query::Node* mutable_joinrightcols(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_joinrightcols(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_joinrightcols() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_joinrightcols(); + public: + const ::pg_query::Node& joinrightcols(int index) const; + ::pg_query::Node* add_joinrightcols(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + joinrightcols() const; + // repeated .pg_query.Node functions = 15 [json_name = "functions"]; + int functions_size() const; + private: + int _internal_functions_size() const; - // .pg_query.SortByDir sortby_dir = 2 [json_name = "sortby_dir"]; - void clear_sortby_dir(); - ::pg_query::SortByDir sortby_dir() const; - void set_sortby_dir(::pg_query::SortByDir value); + public: + void clear_functions() ; + ::pg_query::Node* mutable_functions(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_functions(); private: - ::pg_query::SortByDir _internal_sortby_dir() const; - void _internal_set_sortby_dir(::pg_query::SortByDir value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_functions() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_functions(); public: + const ::pg_query::Node& functions(int index) const; + ::pg_query::Node* add_functions(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + functions() const; + // repeated .pg_query.Node values_lists = 18 [json_name = "values_lists"]; + int values_lists_size() const; + private: + int _internal_values_lists_size() const; - // .pg_query.SortByNulls sortby_nulls = 3 [json_name = "sortby_nulls"]; - void clear_sortby_nulls(); - ::pg_query::SortByNulls sortby_nulls() const; - void set_sortby_nulls(::pg_query::SortByNulls value); + public: + void clear_values_lists() ; + ::pg_query::Node* mutable_values_lists(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_values_lists(); private: - ::pg_query::SortByNulls _internal_sortby_nulls() const; - void _internal_set_sortby_nulls(::pg_query::SortByNulls value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_values_lists() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_values_lists(); public: + const ::pg_query::Node& values_lists(int index) const; + ::pg_query::Node* add_values_lists(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + values_lists() const; + // repeated .pg_query.Node coltypes = 22 [json_name = "coltypes"]; + int coltypes_size() const; + private: + int _internal_coltypes_size() const; - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); + public: + void clear_coltypes() ; + ::pg_query::Node* mutable_coltypes(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_coltypes(); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_coltypes() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_coltypes(); public: + const ::pg_query::Node& coltypes(int index) const; + ::pg_query::Node* add_coltypes(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + coltypes() const; + // repeated .pg_query.Node coltypmods = 23 [json_name = "coltypmods"]; + int coltypmods_size() const; + private: + int _internal_coltypmods_size() const; - // @@protoc_insertion_point(class_scope:pg_query.SortBy) + public: + void clear_coltypmods() ; + ::pg_query::Node* mutable_coltypmods(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_coltypmods(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_coltypmods() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_coltypmods(); + public: + const ::pg_query::Node& coltypmods(int index) const; + ::pg_query::Node* add_coltypmods(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + coltypmods() const; + // repeated .pg_query.Node colcollations = 24 [json_name = "colcollations"]; + int colcollations_size() const; + private: + int _internal_colcollations_size() const; + + public: + void clear_colcollations() ; + ::pg_query::Node* mutable_colcollations(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_colcollations(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_colcollations() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_colcollations(); + public: + const ::pg_query::Node& colcollations(int index) const; + ::pg_query::Node* add_colcollations(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + colcollations() const; + // repeated .pg_query.Node security_quals = 32 [json_name = "securityQuals"]; + int security_quals_size() const; + private: + int _internal_security_quals_size() const; + + public: + void clear_security_quals() ; + ::pg_query::Node* mutable_security_quals(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_security_quals(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_security_quals() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_security_quals(); + public: + const ::pg_query::Node& security_quals(int index) const; + ::pg_query::Node* add_security_quals(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + security_quals() const; + // string relkind = 3 [json_name = "relkind"]; + void clear_relkind() ; + const std::string& relkind() const; + template + void set_relkind(Arg_&& arg, Args_... args); + std::string* mutable_relkind(); + PROTOBUF_NODISCARD std::string* release_relkind(); + void set_allocated_relkind(std::string* value); + + private: + const std::string& _internal_relkind() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_relkind( + const std::string& value); + std::string* _internal_mutable_relkind(); + + public: + // string ctename = 19 [json_name = "ctename"]; + void clear_ctename() ; + const std::string& ctename() const; + template + void set_ctename(Arg_&& arg, Args_... args); + std::string* mutable_ctename(); + PROTOBUF_NODISCARD std::string* release_ctename(); + void set_allocated_ctename(std::string* value); + + private: + const std::string& _internal_ctename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_ctename( + const std::string& value); + std::string* _internal_mutable_ctename(); + + public: + // string enrname = 25 [json_name = "enrname"]; + void clear_enrname() ; + const std::string& enrname() const; + template + void set_enrname(Arg_&& arg, Args_... args); + std::string* mutable_enrname(); + PROTOBUF_NODISCARD std::string* release_enrname(); + void set_allocated_enrname(std::string* value); + + private: + const std::string& _internal_enrname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_enrname( + const std::string& value); + std::string* _internal_mutable_enrname(); + + public: + // .pg_query.TableSampleClause tablesample = 5 [json_name = "tablesample"]; + bool has_tablesample() const; + void clear_tablesample() ; + const ::pg_query::TableSampleClause& tablesample() const; + PROTOBUF_NODISCARD ::pg_query::TableSampleClause* release_tablesample(); + ::pg_query::TableSampleClause* mutable_tablesample(); + void set_allocated_tablesample(::pg_query::TableSampleClause* value); + void unsafe_arena_set_allocated_tablesample(::pg_query::TableSampleClause* value); + ::pg_query::TableSampleClause* unsafe_arena_release_tablesample(); + + private: + const ::pg_query::TableSampleClause& _internal_tablesample() const; + ::pg_query::TableSampleClause* _internal_mutable_tablesample(); + + public: + // .pg_query.Query subquery = 7 [json_name = "subquery"]; + bool has_subquery() const; + void clear_subquery() ; + const ::pg_query::Query& subquery() const; + PROTOBUF_NODISCARD ::pg_query::Query* release_subquery(); + ::pg_query::Query* mutable_subquery(); + void set_allocated_subquery(::pg_query::Query* value); + void unsafe_arena_set_allocated_subquery(::pg_query::Query* value); + ::pg_query::Query* unsafe_arena_release_subquery(); + + private: + const ::pg_query::Query& _internal_subquery() const; + ::pg_query::Query* _internal_mutable_subquery(); + + public: + // .pg_query.Alias join_using_alias = 14 [json_name = "join_using_alias"]; + bool has_join_using_alias() const; + void clear_join_using_alias() ; + const ::pg_query::Alias& join_using_alias() const; + PROTOBUF_NODISCARD ::pg_query::Alias* release_join_using_alias(); + ::pg_query::Alias* mutable_join_using_alias(); + void set_allocated_join_using_alias(::pg_query::Alias* value); + void unsafe_arena_set_allocated_join_using_alias(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_join_using_alias(); + + private: + const ::pg_query::Alias& _internal_join_using_alias() const; + ::pg_query::Alias* _internal_mutable_join_using_alias(); + + public: + // .pg_query.TableFunc tablefunc = 17 [json_name = "tablefunc"]; + bool has_tablefunc() const; + void clear_tablefunc() ; + const ::pg_query::TableFunc& tablefunc() const; + PROTOBUF_NODISCARD ::pg_query::TableFunc* release_tablefunc(); + ::pg_query::TableFunc* mutable_tablefunc(); + void set_allocated_tablefunc(::pg_query::TableFunc* value); + void unsafe_arena_set_allocated_tablefunc(::pg_query::TableFunc* value); + ::pg_query::TableFunc* unsafe_arena_release_tablefunc(); + + private: + const ::pg_query::TableFunc& _internal_tablefunc() const; + ::pg_query::TableFunc* _internal_mutable_tablefunc(); + + public: + // .pg_query.Alias alias = 27 [json_name = "alias"]; + bool has_alias() const; + void clear_alias() ; + const ::pg_query::Alias& alias() const; + PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); + ::pg_query::Alias* mutable_alias(); + void set_allocated_alias(::pg_query::Alias* value); + void unsafe_arena_set_allocated_alias(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_alias(); + + private: + const ::pg_query::Alias& _internal_alias() const; + ::pg_query::Alias* _internal_mutable_alias(); + + public: + // .pg_query.Alias eref = 28 [json_name = "eref"]; + bool has_eref() const; + void clear_eref() ; + const ::pg_query::Alias& eref() const; + PROTOBUF_NODISCARD ::pg_query::Alias* release_eref(); + ::pg_query::Alias* mutable_eref(); + void set_allocated_eref(::pg_query::Alias* value); + void unsafe_arena_set_allocated_eref(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_eref(); + + private: + const ::pg_query::Alias& _internal_eref() const; + ::pg_query::Alias* _internal_mutable_eref(); + + public: + // .pg_query.RTEKind rtekind = 1 [json_name = "rtekind"]; + void clear_rtekind() ; + ::pg_query::RTEKind rtekind() const; + void set_rtekind(::pg_query::RTEKind value); + + private: + ::pg_query::RTEKind _internal_rtekind() const; + void _internal_set_rtekind(::pg_query::RTEKind value); + + public: + // uint32 relid = 2 [json_name = "relid"]; + void clear_relid() ; + ::uint32_t relid() const; + void set_relid(::uint32_t value); + + private: + ::uint32_t _internal_relid() const; + void _internal_set_relid(::uint32_t value); + + public: + // int32 rellockmode = 4 [json_name = "rellockmode"]; + void clear_rellockmode() ; + ::int32_t rellockmode() const; + void set_rellockmode(::int32_t value); + + private: + ::int32_t _internal_rellockmode() const; + void _internal_set_rellockmode(::int32_t value); + + public: + // uint32 perminfoindex = 6 [json_name = "perminfoindex"]; + void clear_perminfoindex() ; + ::uint32_t perminfoindex() const; + void set_perminfoindex(::uint32_t value); + + private: + ::uint32_t _internal_perminfoindex() const; + void _internal_set_perminfoindex(::uint32_t value); + + public: + // .pg_query.JoinType jointype = 9 [json_name = "jointype"]; + void clear_jointype() ; + ::pg_query::JoinType jointype() const; + void set_jointype(::pg_query::JoinType value); + + private: + ::pg_query::JoinType _internal_jointype() const; + void _internal_set_jointype(::pg_query::JoinType value); + + public: + // int32 joinmergedcols = 10 [json_name = "joinmergedcols"]; + void clear_joinmergedcols() ; + ::int32_t joinmergedcols() const; + void set_joinmergedcols(::int32_t value); + + private: + ::int32_t _internal_joinmergedcols() const; + void _internal_set_joinmergedcols(::int32_t value); + + public: + // bool security_barrier = 8 [json_name = "security_barrier"]; + void clear_security_barrier() ; + bool security_barrier() const; + void set_security_barrier(bool value); + + private: + bool _internal_security_barrier() const; + void _internal_set_security_barrier(bool value); + + public: + // bool funcordinality = 16 [json_name = "funcordinality"]; + void clear_funcordinality() ; + bool funcordinality() const; + void set_funcordinality(bool value); + + private: + bool _internal_funcordinality() const; + void _internal_set_funcordinality(bool value); + + public: + // bool self_reference = 21 [json_name = "self_reference"]; + void clear_self_reference() ; + bool self_reference() const; + void set_self_reference(bool value); + + private: + bool _internal_self_reference() const; + void _internal_set_self_reference(bool value); + + public: + // bool lateral = 29 [json_name = "lateral"]; + void clear_lateral() ; + bool lateral() const; + void set_lateral(bool value); + + private: + bool _internal_lateral() const; + void _internal_set_lateral(bool value); + + public: + // uint32 ctelevelsup = 20 [json_name = "ctelevelsup"]; + void clear_ctelevelsup() ; + ::uint32_t ctelevelsup() const; + void set_ctelevelsup(::uint32_t value); + + private: + ::uint32_t _internal_ctelevelsup() const; + void _internal_set_ctelevelsup(::uint32_t value); + + public: + // double enrtuples = 26 [json_name = "enrtuples"]; + void clear_enrtuples() ; + double enrtuples() const; + void set_enrtuples(double value); + + private: + double _internal_enrtuples() const; + void _internal_set_enrtuples(double value); + + public: + // bool inh = 30 [json_name = "inh"]; + void clear_inh() ; + bool inh() const; + void set_inh(bool value); + + private: + bool _internal_inh() const; + void _internal_set_inh(bool value); + + public: + // bool in_from_cl = 31 [json_name = "inFromCl"]; + void clear_in_from_cl() ; + bool in_from_cl() const; + void set_in_from_cl(bool value); + + private: + bool _internal_in_from_cl() const; + void _internal_set_in_from_cl(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.RangeTblEntry) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 5, 32, 15, + 84, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > use_op_; - ::pg_query::Node* node_; - int sortby_dir_; - int sortby_nulls_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > joinaliasvars_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > joinleftcols_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > joinrightcols_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > functions_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > values_lists_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > coltypes_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > coltypmods_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > colcollations_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > security_quals_; + ::google::protobuf::internal::ArenaStringPtr relkind_; + ::google::protobuf::internal::ArenaStringPtr ctename_; + ::google::protobuf::internal::ArenaStringPtr enrname_; + ::pg_query::TableSampleClause* tablesample_; + ::pg_query::Query* subquery_; + ::pg_query::Alias* join_using_alias_; + ::pg_query::TableFunc* tablefunc_; + ::pg_query::Alias* alias_; + ::pg_query::Alias* eref_; + int rtekind_; + ::uint32_t relid_; + ::int32_t rellockmode_; + ::uint32_t perminfoindex_; + int jointype_; + ::int32_t joinmergedcols_; + bool security_barrier_; + bool funcordinality_; + bool self_reference_; + bool lateral_; + ::uint32_t ctelevelsup_; + double enrtuples_; + bool inh_; + bool in_from_cl_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class WindowDef final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.WindowDef) */ { +class RangeTblFunction final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTblFunction) */ { public: - inline WindowDef() : WindowDef(nullptr) {} - ~WindowDef() override; - explicit PROTOBUF_CONSTEXPR WindowDef(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RangeTblFunction() : RangeTblFunction(nullptr) {} + ~RangeTblFunction() override; + template + explicit PROTOBUF_CONSTEXPR RangeTblFunction(::google::protobuf::internal::ConstantInitialized); - WindowDef(const WindowDef& from); - WindowDef(WindowDef&& from) noexcept - : WindowDef() { + inline RangeTblFunction(const RangeTblFunction& from) + : RangeTblFunction(nullptr, from) {} + RangeTblFunction(RangeTblFunction&& from) noexcept + : RangeTblFunction() { *this = ::std::move(from); } - inline WindowDef& operator=(const WindowDef& from) { + inline RangeTblFunction& operator=(const RangeTblFunction& from) { CopyFrom(from); return *this; } - inline WindowDef& operator=(WindowDef&& from) noexcept { + inline RangeTblFunction& operator=(RangeTblFunction&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -50287,268 +59953,291 @@ class WindowDef final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const WindowDef& default_instance() { + static const RangeTblFunction& default_instance() { return *internal_default_instance(); } - static inline const WindowDef* internal_default_instance() { - return reinterpret_cast( - &_WindowDef_default_instance_); + static inline const RangeTblFunction* internal_default_instance() { + return reinterpret_cast( + &_RangeTblFunction_default_instance_); } static constexpr int kIndexInFileMessages = - 195; + 102; - friend void swap(WindowDef& a, WindowDef& b) { + friend void swap(RangeTblFunction& a, RangeTblFunction& b) { a.Swap(&b); } - inline void Swap(WindowDef* other) { + inline void Swap(RangeTblFunction* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(WindowDef* other) { + void UnsafeArenaSwap(RangeTblFunction* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - WindowDef* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RangeTblFunction* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const WindowDef& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const WindowDef& from) { - WindowDef::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RangeTblFunction& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RangeTblFunction& from) { + RangeTblFunction::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(WindowDef* other); + void InternalSwap(RangeTblFunction* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.WindowDef"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RangeTblFunction"; } protected: - explicit WindowDef(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RangeTblFunction(::google::protobuf::Arena* arena); + RangeTblFunction(::google::protobuf::Arena* arena, const RangeTblFunction& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kPartitionClauseFieldNumber = 3, - kOrderClauseFieldNumber = 4, - kNameFieldNumber = 1, - kRefnameFieldNumber = 2, - kStartOffsetFieldNumber = 6, - kEndOffsetFieldNumber = 7, - kFrameOptionsFieldNumber = 5, - kLocationFieldNumber = 8, + kFunccolnamesFieldNumber = 3, + kFunccoltypesFieldNumber = 4, + kFunccoltypmodsFieldNumber = 5, + kFunccolcollationsFieldNumber = 6, + kFuncparamsFieldNumber = 7, + kFuncexprFieldNumber = 1, + kFunccolcountFieldNumber = 2, }; - // repeated .pg_query.Node partition_clause = 3 [json_name = "partitionClause"]; - int partition_clause_size() const; + // repeated .pg_query.Node funccolnames = 3 [json_name = "funccolnames"]; + int funccolnames_size() const; private: - int _internal_partition_clause_size() const; + int _internal_funccolnames_size() const; + public: - void clear_partition_clause(); - ::pg_query::Node* mutable_partition_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_partition_clause(); + void clear_funccolnames() ; + ::pg_query::Node* mutable_funccolnames(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_funccolnames(); private: - const ::pg_query::Node& _internal_partition_clause(int index) const; - ::pg_query::Node* _internal_add_partition_clause(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_funccolnames() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_funccolnames(); public: - const ::pg_query::Node& partition_clause(int index) const; - ::pg_query::Node* add_partition_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - partition_clause() const; - - // repeated .pg_query.Node order_clause = 4 [json_name = "orderClause"]; - int order_clause_size() const; + const ::pg_query::Node& funccolnames(int index) const; + ::pg_query::Node* add_funccolnames(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + funccolnames() const; + // repeated .pg_query.Node funccoltypes = 4 [json_name = "funccoltypes"]; + int funccoltypes_size() const; private: - int _internal_order_clause_size() const; + int _internal_funccoltypes_size() const; + public: - void clear_order_clause(); - ::pg_query::Node* mutable_order_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_order_clause(); + void clear_funccoltypes() ; + ::pg_query::Node* mutable_funccoltypes(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_funccoltypes(); private: - const ::pg_query::Node& _internal_order_clause(int index) const; - ::pg_query::Node* _internal_add_order_clause(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_funccoltypes() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_funccoltypes(); public: - const ::pg_query::Node& order_clause(int index) const; - ::pg_query::Node* add_order_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - order_clause() const; - - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + const ::pg_query::Node& funccoltypes(int index) const; + ::pg_query::Node* add_funccoltypes(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + funccoltypes() const; + // repeated .pg_query.Node funccoltypmods = 5 [json_name = "funccoltypmods"]; + int funccoltypmods_size() const; private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + int _internal_funccoltypmods_size() const; - // string refname = 2 [json_name = "refname"]; - void clear_refname(); - const std::string& refname() const; - template - void set_refname(ArgT0&& arg0, ArgT... args); - std::string* mutable_refname(); - PROTOBUF_NODISCARD std::string* release_refname(); - void set_allocated_refname(std::string* refname); - private: - const std::string& _internal_refname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_refname(const std::string& value); - std::string* _internal_mutable_refname(); public: - - // .pg_query.Node start_offset = 6 [json_name = "startOffset"]; - bool has_start_offset() const; + void clear_funccoltypmods() ; + ::pg_query::Node* mutable_funccoltypmods(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_funccoltypmods(); private: - bool _internal_has_start_offset() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_funccoltypmods() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_funccoltypmods(); public: - void clear_start_offset(); - const ::pg_query::Node& start_offset() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_start_offset(); - ::pg_query::Node* mutable_start_offset(); - void set_allocated_start_offset(::pg_query::Node* start_offset); + const ::pg_query::Node& funccoltypmods(int index) const; + ::pg_query::Node* add_funccoltypmods(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + funccoltypmods() const; + // repeated .pg_query.Node funccolcollations = 6 [json_name = "funccolcollations"]; + int funccolcollations_size() const; private: - const ::pg_query::Node& _internal_start_offset() const; - ::pg_query::Node* _internal_mutable_start_offset(); - public: - void unsafe_arena_set_allocated_start_offset( - ::pg_query::Node* start_offset); - ::pg_query::Node* unsafe_arena_release_start_offset(); + int _internal_funccolcollations_size() const; - // .pg_query.Node end_offset = 7 [json_name = "endOffset"]; - bool has_end_offset() const; + public: + void clear_funccolcollations() ; + ::pg_query::Node* mutable_funccolcollations(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_funccolcollations(); private: - bool _internal_has_end_offset() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_funccolcollations() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_funccolcollations(); public: - void clear_end_offset(); - const ::pg_query::Node& end_offset() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_end_offset(); - ::pg_query::Node* mutable_end_offset(); - void set_allocated_end_offset(::pg_query::Node* end_offset); + const ::pg_query::Node& funccolcollations(int index) const; + ::pg_query::Node* add_funccolcollations(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + funccolcollations() const; + // repeated uint64 funcparams = 7 [json_name = "funcparams"]; + int funcparams_size() const; private: - const ::pg_query::Node& _internal_end_offset() const; - ::pg_query::Node* _internal_mutable_end_offset(); + int _internal_funcparams_size() const; + public: - void unsafe_arena_set_allocated_end_offset( - ::pg_query::Node* end_offset); - ::pg_query::Node* unsafe_arena_release_end_offset(); + void clear_funcparams() ; + ::uint64_t funcparams(int index) const; + void set_funcparams(int index, ::uint64_t value); + void add_funcparams(::uint64_t value); + const ::google::protobuf::RepeatedField<::uint64_t>& funcparams() const; + ::google::protobuf::RepeatedField<::uint64_t>* mutable_funcparams(); - // int32 frame_options = 5 [json_name = "frameOptions"]; - void clear_frame_options(); - int32_t frame_options() const; - void set_frame_options(int32_t value); private: - int32_t _internal_frame_options() const; - void _internal_set_frame_options(int32_t value); + const ::google::protobuf::RepeatedField<::uint64_t>& _internal_funcparams() const; + ::google::protobuf::RepeatedField<::uint64_t>* _internal_mutable_funcparams(); + public: + // .pg_query.Node funcexpr = 1 [json_name = "funcexpr"]; + bool has_funcexpr() const; + void clear_funcexpr() ; + const ::pg_query::Node& funcexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_funcexpr(); + ::pg_query::Node* mutable_funcexpr(); + void set_allocated_funcexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_funcexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_funcexpr(); - // int32 location = 8 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::pg_query::Node& _internal_funcexpr() const; + ::pg_query::Node* _internal_mutable_funcexpr(); + public: + // int32 funccolcount = 2 [json_name = "funccolcount"]; + void clear_funccolcount() ; + ::int32_t funccolcount() const; + void set_funccolcount(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.WindowDef) + private: + ::int32_t _internal_funccolcount() const; + void _internal_set_funccolcount(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.RangeTblFunction) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > partition_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > order_clause_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr refname_; - ::pg_query::Node* start_offset_; - ::pg_query::Node* end_offset_; - int32_t frame_options_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > funccolnames_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > funccoltypes_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > funccoltypmods_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > funccolcollations_; + ::google::protobuf::RepeatedField<::uint64_t> funcparams_; + mutable ::google::protobuf::internal::CachedSize _funcparams_cached_byte_size_; + ::pg_query::Node* funcexpr_; + ::int32_t funccolcount_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RangeSubselect final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeSubselect) */ { +class RangeVar final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeVar) */ { public: - inline RangeSubselect() : RangeSubselect(nullptr) {} - ~RangeSubselect() override; - explicit PROTOBUF_CONSTEXPR RangeSubselect(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RangeVar() : RangeVar(nullptr) {} + ~RangeVar() override; + template + explicit PROTOBUF_CONSTEXPR RangeVar(::google::protobuf::internal::ConstantInitialized); - RangeSubselect(const RangeSubselect& from); - RangeSubselect(RangeSubselect&& from) noexcept - : RangeSubselect() { + inline RangeVar(const RangeVar& from) + : RangeVar(nullptr, from) {} + RangeVar(RangeVar&& from) noexcept + : RangeVar() { *this = ::std::move(from); } - inline RangeSubselect& operator=(const RangeSubselect& from) { + inline RangeVar& operator=(const RangeVar& from) { CopyFrom(from); return *this; } - inline RangeSubselect& operator=(RangeSubselect&& from) noexcept { + inline RangeVar& operator=(RangeVar&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -50558,185 +60247,274 @@ class RangeSubselect final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RangeSubselect& default_instance() { + static const RangeVar& default_instance() { return *internal_default_instance(); } - static inline const RangeSubselect* internal_default_instance() { - return reinterpret_cast( - &_RangeSubselect_default_instance_); + static inline const RangeVar* internal_default_instance() { + return reinterpret_cast( + &_RangeVar_default_instance_); } static constexpr int kIndexInFileMessages = - 196; + 13; - friend void swap(RangeSubselect& a, RangeSubselect& b) { + friend void swap(RangeVar& a, RangeVar& b) { a.Swap(&b); } - inline void Swap(RangeSubselect* other) { + inline void Swap(RangeVar* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RangeSubselect* other) { + void UnsafeArenaSwap(RangeVar* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RangeSubselect* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RangeVar* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RangeSubselect& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RangeSubselect& from) { - RangeSubselect::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RangeVar& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RangeVar& from) { + RangeVar::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RangeSubselect* other); + void InternalSwap(RangeVar* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RangeSubselect"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RangeVar"; } protected: - explicit RangeSubselect(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RangeVar(::google::protobuf::Arena* arena); + RangeVar(::google::protobuf::Arena* arena, const RangeVar& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kSubqueryFieldNumber = 2, - kAliasFieldNumber = 3, - kLateralFieldNumber = 1, + kCatalognameFieldNumber = 1, + kSchemanameFieldNumber = 2, + kRelnameFieldNumber = 3, + kRelpersistenceFieldNumber = 5, + kAliasFieldNumber = 6, + kInhFieldNumber = 4, + kLocationFieldNumber = 7, }; - // .pg_query.Node subquery = 2 [json_name = "subquery"]; - bool has_subquery() const; + // string catalogname = 1 [json_name = "catalogname"]; + void clear_catalogname() ; + const std::string& catalogname() const; + template + void set_catalogname(Arg_&& arg, Args_... args); + std::string* mutable_catalogname(); + PROTOBUF_NODISCARD std::string* release_catalogname(); + void set_allocated_catalogname(std::string* value); + private: - bool _internal_has_subquery() const; + const std::string& _internal_catalogname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_catalogname( + const std::string& value); + std::string* _internal_mutable_catalogname(); + public: - void clear_subquery(); - const ::pg_query::Node& subquery() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_subquery(); - ::pg_query::Node* mutable_subquery(); - void set_allocated_subquery(::pg_query::Node* subquery); + // string schemaname = 2 [json_name = "schemaname"]; + void clear_schemaname() ; + const std::string& schemaname() const; + template + void set_schemaname(Arg_&& arg, Args_... args); + std::string* mutable_schemaname(); + PROTOBUF_NODISCARD std::string* release_schemaname(); + void set_allocated_schemaname(std::string* value); + private: - const ::pg_query::Node& _internal_subquery() const; - ::pg_query::Node* _internal_mutable_subquery(); + const std::string& _internal_schemaname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_schemaname( + const std::string& value); + std::string* _internal_mutable_schemaname(); + public: - void unsafe_arena_set_allocated_subquery( - ::pg_query::Node* subquery); - ::pg_query::Node* unsafe_arena_release_subquery(); + // string relname = 3 [json_name = "relname"]; + void clear_relname() ; + const std::string& relname() const; + template + void set_relname(Arg_&& arg, Args_... args); + std::string* mutable_relname(); + PROTOBUF_NODISCARD std::string* release_relname(); + void set_allocated_relname(std::string* value); - // .pg_query.Alias alias = 3 [json_name = "alias"]; - bool has_alias() const; private: - bool _internal_has_alias() const; + const std::string& _internal_relname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_relname( + const std::string& value); + std::string* _internal_mutable_relname(); + + public: + // string relpersistence = 5 [json_name = "relpersistence"]; + void clear_relpersistence() ; + const std::string& relpersistence() const; + template + void set_relpersistence(Arg_&& arg, Args_... args); + std::string* mutable_relpersistence(); + PROTOBUF_NODISCARD std::string* release_relpersistence(); + void set_allocated_relpersistence(std::string* value); + + private: + const std::string& _internal_relpersistence() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_relpersistence( + const std::string& value); + std::string* _internal_mutable_relpersistence(); + public: - void clear_alias(); + // .pg_query.Alias alias = 6 [json_name = "alias"]; + bool has_alias() const; + void clear_alias() ; const ::pg_query::Alias& alias() const; PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); ::pg_query::Alias* mutable_alias(); - void set_allocated_alias(::pg_query::Alias* alias); + void set_allocated_alias(::pg_query::Alias* value); + void unsafe_arena_set_allocated_alias(::pg_query::Alias* value); + ::pg_query::Alias* unsafe_arena_release_alias(); + private: const ::pg_query::Alias& _internal_alias() const; ::pg_query::Alias* _internal_mutable_alias(); + public: - void unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias); - ::pg_query::Alias* unsafe_arena_release_alias(); + // bool inh = 4 [json_name = "inh"]; + void clear_inh() ; + bool inh() const; + void set_inh(bool value); - // bool lateral = 1 [json_name = "lateral"]; - void clear_lateral(); - bool lateral() const; - void set_lateral(bool value); private: - bool _internal_lateral() const; - void _internal_set_lateral(bool value); + bool _internal_inh() const; + void _internal_set_inh(bool value); + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.RangeSubselect) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.RangeVar) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 1, + 68, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* subquery_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr catalogname_; + ::google::protobuf::internal::ArenaStringPtr schemaname_; + ::google::protobuf::internal::ArenaStringPtr relname_; + ::google::protobuf::internal::ArenaStringPtr relpersistence_; ::pg_query::Alias* alias_; - bool lateral_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + bool inh_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RangeFunction final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeFunction) */ { +class RawStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RawStmt) */ { public: - inline RangeFunction() : RangeFunction(nullptr) {} - ~RangeFunction() override; - explicit PROTOBUF_CONSTEXPR RangeFunction(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RawStmt() : RawStmt(nullptr) {} + ~RawStmt() override; + template + explicit PROTOBUF_CONSTEXPR RawStmt(::google::protobuf::internal::ConstantInitialized); - RangeFunction(const RangeFunction& from); - RangeFunction(RangeFunction&& from) noexcept - : RangeFunction() { + inline RawStmt(const RawStmt& from) + : RawStmt(nullptr, from) {} + RawStmt(RawStmt&& from) noexcept + : RawStmt() { *this = ::std::move(from); } - inline RangeFunction& operator=(const RangeFunction& from) { + inline RawStmt& operator=(const RawStmt& from) { CopyFrom(from); return *this; } - inline RangeFunction& operator=(RangeFunction&& from) noexcept { + inline RawStmt& operator=(RawStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -50746,227 +60524,202 @@ class RangeFunction final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RangeFunction& default_instance() { + static const RawStmt& default_instance() { return *internal_default_instance(); } - static inline const RangeFunction* internal_default_instance() { - return reinterpret_cast( - &_RangeFunction_default_instance_); + static inline const RawStmt* internal_default_instance() { + return reinterpret_cast( + &_RawStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 197; + 126; - friend void swap(RangeFunction& a, RangeFunction& b) { + friend void swap(RawStmt& a, RawStmt& b) { a.Swap(&b); } - inline void Swap(RangeFunction* other) { + inline void Swap(RawStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RangeFunction* other) { + void UnsafeArenaSwap(RawStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RangeFunction* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RawStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RangeFunction& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RangeFunction& from) { - RangeFunction::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RawStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RawStmt& from) { + RawStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RangeFunction* other); + void InternalSwap(RawStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RangeFunction"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RawStmt"; } protected: - explicit RangeFunction(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RawStmt(::google::protobuf::Arena* arena); + RawStmt(::google::protobuf::Arena* arena, const RawStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kFunctionsFieldNumber = 4, - kColdeflistFieldNumber = 6, - kAliasFieldNumber = 5, - kLateralFieldNumber = 1, - kOrdinalityFieldNumber = 2, - kIsRowsfromFieldNumber = 3, + kStmtFieldNumber = 1, + kStmtLocationFieldNumber = 2, + kStmtLenFieldNumber = 3, }; - // repeated .pg_query.Node functions = 4 [json_name = "functions"]; - int functions_size() const; - private: - int _internal_functions_size() const; - public: - void clear_functions(); - ::pg_query::Node* mutable_functions(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_functions(); - private: - const ::pg_query::Node& _internal_functions(int index) const; - ::pg_query::Node* _internal_add_functions(); - public: - const ::pg_query::Node& functions(int index) const; - ::pg_query::Node* add_functions(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - functions() const; + // .pg_query.Node stmt = 1 [json_name = "stmt"]; + bool has_stmt() const; + void clear_stmt() ; + const ::pg_query::Node& stmt() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_stmt(); + ::pg_query::Node* mutable_stmt(); + void set_allocated_stmt(::pg_query::Node* value); + void unsafe_arena_set_allocated_stmt(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_stmt(); - // repeated .pg_query.Node coldeflist = 6 [json_name = "coldeflist"]; - int coldeflist_size() const; - private: - int _internal_coldeflist_size() const; - public: - void clear_coldeflist(); - ::pg_query::Node* mutable_coldeflist(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_coldeflist(); private: - const ::pg_query::Node& _internal_coldeflist(int index) const; - ::pg_query::Node* _internal_add_coldeflist(); - public: - const ::pg_query::Node& coldeflist(int index) const; - ::pg_query::Node* add_coldeflist(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - coldeflist() const; + const ::pg_query::Node& _internal_stmt() const; + ::pg_query::Node* _internal_mutable_stmt(); - // .pg_query.Alias alias = 5 [json_name = "alias"]; - bool has_alias() const; - private: - bool _internal_has_alias() const; - public: - void clear_alias(); - const ::pg_query::Alias& alias() const; - PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); - ::pg_query::Alias* mutable_alias(); - void set_allocated_alias(::pg_query::Alias* alias); - private: - const ::pg_query::Alias& _internal_alias() const; - ::pg_query::Alias* _internal_mutable_alias(); public: - void unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias); - ::pg_query::Alias* unsafe_arena_release_alias(); + // int32 stmt_location = 2 [json_name = "stmt_location"]; + void clear_stmt_location() ; + ::int32_t stmt_location() const; + void set_stmt_location(::int32_t value); - // bool lateral = 1 [json_name = "lateral"]; - void clear_lateral(); - bool lateral() const; - void set_lateral(bool value); private: - bool _internal_lateral() const; - void _internal_set_lateral(bool value); - public: + ::int32_t _internal_stmt_location() const; + void _internal_set_stmt_location(::int32_t value); - // bool ordinality = 2 [json_name = "ordinality"]; - void clear_ordinality(); - bool ordinality() const; - void set_ordinality(bool value); - private: - bool _internal_ordinality() const; - void _internal_set_ordinality(bool value); public: + // int32 stmt_len = 3 [json_name = "stmt_len"]; + void clear_stmt_len() ; + ::int32_t stmt_len() const; + void set_stmt_len(::int32_t value); - // bool is_rowsfrom = 3 [json_name = "is_rowsfrom"]; - void clear_is_rowsfrom(); - bool is_rowsfrom() const; - void set_is_rowsfrom(bool value); private: - bool _internal_is_rowsfrom() const; - void _internal_set_is_rowsfrom(bool value); - public: + ::int32_t _internal_stmt_len() const; + void _internal_set_stmt_len(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.RangeFunction) + public: + // @@protoc_insertion_point(class_scope:pg_query.RawStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > functions_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > coldeflist_; - ::pg_query::Alias* alias_; - bool lateral_; - bool ordinality_; - bool is_rowsfrom_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* stmt_; + ::int32_t stmt_location_; + ::int32_t stmt_len_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RangeTableSample final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTableSample) */ { +class ReassignOwnedStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ReassignOwnedStmt) */ { public: - inline RangeTableSample() : RangeTableSample(nullptr) {} - ~RangeTableSample() override; - explicit PROTOBUF_CONSTEXPR RangeTableSample(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ReassignOwnedStmt() : ReassignOwnedStmt(nullptr) {} + ~ReassignOwnedStmt() override; + template + explicit PROTOBUF_CONSTEXPR ReassignOwnedStmt(::google::protobuf::internal::ConstantInitialized); - RangeTableSample(const RangeTableSample& from); - RangeTableSample(RangeTableSample&& from) noexcept - : RangeTableSample() { + inline ReassignOwnedStmt(const ReassignOwnedStmt& from) + : ReassignOwnedStmt(nullptr, from) {} + ReassignOwnedStmt(ReassignOwnedStmt&& from) noexcept + : ReassignOwnedStmt() { *this = ::std::move(from); } - inline RangeTableSample& operator=(const RangeTableSample& from) { + inline ReassignOwnedStmt& operator=(const ReassignOwnedStmt& from) { CopyFrom(from); return *this; } - inline RangeTableSample& operator=(RangeTableSample&& from) noexcept { + inline ReassignOwnedStmt& operator=(ReassignOwnedStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -50976,225 +60729,198 @@ class RangeTableSample final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RangeTableSample& default_instance() { + static const ReassignOwnedStmt& default_instance() { return *internal_default_instance(); } - static inline const RangeTableSample* internal_default_instance() { - return reinterpret_cast( - &_RangeTableSample_default_instance_); + static inline const ReassignOwnedStmt* internal_default_instance() { + return reinterpret_cast( + &_ReassignOwnedStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 198; + 245; - friend void swap(RangeTableSample& a, RangeTableSample& b) { + friend void swap(ReassignOwnedStmt& a, ReassignOwnedStmt& b) { a.Swap(&b); } - inline void Swap(RangeTableSample* other) { + inline void Swap(ReassignOwnedStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RangeTableSample* other) { + void UnsafeArenaSwap(ReassignOwnedStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RangeTableSample* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ReassignOwnedStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RangeTableSample& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RangeTableSample& from) { - RangeTableSample::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ReassignOwnedStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ReassignOwnedStmt& from) { + ReassignOwnedStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RangeTableSample* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RangeTableSample"; - } - protected: - explicit RangeTableSample(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kMethodFieldNumber = 2, - kArgsFieldNumber = 3, - kRelationFieldNumber = 1, - kRepeatableFieldNumber = 4, - kLocationFieldNumber = 5, - }; - // repeated .pg_query.Node method = 2 [json_name = "method"]; - int method_size() const; - private: - int _internal_method_size() const; - public: - void clear_method(); - ::pg_query::Node* mutable_method(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_method(); - private: - const ::pg_query::Node& _internal_method(int index) const; - ::pg_query::Node* _internal_add_method(); - public: - const ::pg_query::Node& method(int index) const; - ::pg_query::Node* add_method(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - method() const; - - // repeated .pg_query.Node args = 3 [json_name = "args"]; - int args_size() const; - private: - int _internal_args_size() const; - public: - void clear_args(); - ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_args(); - private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); - public: - const ::pg_query::Node& args(int index) const; - ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - args() const; + void InternalSwap(ReassignOwnedStmt* other); - // .pg_query.Node relation = 1 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; - public: - void clear_relation(); - const ::pg_query::Node& relation() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_relation(); - ::pg_query::Node* mutable_relation(); - void set_allocated_relation(::pg_query::Node* relation); private: - const ::pg_query::Node& _internal_relation() const; - ::pg_query::Node* _internal_mutable_relation(); + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ReassignOwnedStmt"; + } + protected: + explicit ReassignOwnedStmt(::google::protobuf::Arena* arena); + ReassignOwnedStmt(::google::protobuf::Arena* arena, const ReassignOwnedStmt& from); public: - void unsafe_arena_set_allocated_relation( - ::pg_query::Node* relation); - ::pg_query::Node* unsafe_arena_release_relation(); - // .pg_query.Node repeatable = 4 [json_name = "repeatable"]; - bool has_repeatable() const; + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kRolesFieldNumber = 1, + kNewroleFieldNumber = 2, + }; + // repeated .pg_query.Node roles = 1 [json_name = "roles"]; + int roles_size() const; private: - bool _internal_has_repeatable() const; + int _internal_roles_size() const; + public: - void clear_repeatable(); - const ::pg_query::Node& repeatable() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_repeatable(); - ::pg_query::Node* mutable_repeatable(); - void set_allocated_repeatable(::pg_query::Node* repeatable); + void clear_roles() ; + ::pg_query::Node* mutable_roles(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_roles(); private: - const ::pg_query::Node& _internal_repeatable() const; - ::pg_query::Node* _internal_mutable_repeatable(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_roles() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_roles(); public: - void unsafe_arena_set_allocated_repeatable( - ::pg_query::Node* repeatable); - ::pg_query::Node* unsafe_arena_release_repeatable(); + const ::pg_query::Node& roles(int index) const; + ::pg_query::Node* add_roles(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + roles() const; + // .pg_query.RoleSpec newrole = 2 [json_name = "newrole"]; + bool has_newrole() const; + void clear_newrole() ; + const ::pg_query::RoleSpec& newrole() const; + PROTOBUF_NODISCARD ::pg_query::RoleSpec* release_newrole(); + ::pg_query::RoleSpec* mutable_newrole(); + void set_allocated_newrole(::pg_query::RoleSpec* value); + void unsafe_arena_set_allocated_newrole(::pg_query::RoleSpec* value); + ::pg_query::RoleSpec* unsafe_arena_release_newrole(); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + const ::pg_query::RoleSpec& _internal_newrole() const; + ::pg_query::RoleSpec* _internal_mutable_newrole(); - // @@protoc_insertion_point(class_scope:pg_query.RangeTableSample) + public: + // @@protoc_insertion_point(class_scope:pg_query.ReassignOwnedStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > method_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::pg_query::Node* relation_; - ::pg_query::Node* repeatable_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > roles_; + ::pg_query::RoleSpec* newrole_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RangeTableFunc final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTableFunc) */ { +class RefreshMatViewStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RefreshMatViewStmt) */ { public: - inline RangeTableFunc() : RangeTableFunc(nullptr) {} - ~RangeTableFunc() override; - explicit PROTOBUF_CONSTEXPR RangeTableFunc(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RefreshMatViewStmt() : RefreshMatViewStmt(nullptr) {} + ~RefreshMatViewStmt() override; + template + explicit PROTOBUF_CONSTEXPR RefreshMatViewStmt(::google::protobuf::internal::ConstantInitialized); - RangeTableFunc(const RangeTableFunc& from); - RangeTableFunc(RangeTableFunc&& from) noexcept - : RangeTableFunc() { + inline RefreshMatViewStmt(const RefreshMatViewStmt& from) + : RefreshMatViewStmt(nullptr, from) {} + RefreshMatViewStmt(RefreshMatViewStmt&& from) noexcept + : RefreshMatViewStmt() { *this = ::std::move(from); } - inline RangeTableFunc& operator=(const RangeTableFunc& from) { + inline RefreshMatViewStmt& operator=(const RefreshMatViewStmt& from) { CopyFrom(from); return *this; } - inline RangeTableFunc& operator=(RangeTableFunc&& from) noexcept { + inline RefreshMatViewStmt& operator=(RefreshMatViewStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -51204,256 +60930,202 @@ class RangeTableFunc final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RangeTableFunc& default_instance() { + static const RefreshMatViewStmt& default_instance() { return *internal_default_instance(); } - static inline const RangeTableFunc* internal_default_instance() { - return reinterpret_cast( - &_RangeTableFunc_default_instance_); + static inline const RefreshMatViewStmt* internal_default_instance() { + return reinterpret_cast( + &_RefreshMatViewStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 199; + 232; - friend void swap(RangeTableFunc& a, RangeTableFunc& b) { + friend void swap(RefreshMatViewStmt& a, RefreshMatViewStmt& b) { a.Swap(&b); } - inline void Swap(RangeTableFunc* other) { + inline void Swap(RefreshMatViewStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RangeTableFunc* other) { + void UnsafeArenaSwap(RefreshMatViewStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RangeTableFunc* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RefreshMatViewStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RangeTableFunc& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RangeTableFunc& from) { - RangeTableFunc::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RefreshMatViewStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RefreshMatViewStmt& from) { + RefreshMatViewStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RangeTableFunc* other); + void InternalSwap(RefreshMatViewStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RangeTableFunc"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RefreshMatViewStmt"; } protected: - explicit RangeTableFunc(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RefreshMatViewStmt(::google::protobuf::Arena* arena); + RefreshMatViewStmt(::google::protobuf::Arena* arena, const RefreshMatViewStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNamespacesFieldNumber = 4, - kColumnsFieldNumber = 5, - kDocexprFieldNumber = 2, - kRowexprFieldNumber = 3, - kAliasFieldNumber = 6, - kLateralFieldNumber = 1, - kLocationFieldNumber = 7, + kRelationFieldNumber = 3, + kConcurrentFieldNumber = 1, + kSkipDataFieldNumber = 2, }; - // repeated .pg_query.Node namespaces = 4 [json_name = "namespaces"]; - int namespaces_size() const; - private: - int _internal_namespaces_size() const; - public: - void clear_namespaces(); - ::pg_query::Node* mutable_namespaces(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_namespaces(); - private: - const ::pg_query::Node& _internal_namespaces(int index) const; - ::pg_query::Node* _internal_add_namespaces(); - public: - const ::pg_query::Node& namespaces(int index) const; - ::pg_query::Node* add_namespaces(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - namespaces() const; + // .pg_query.RangeVar relation = 3 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // repeated .pg_query.Node columns = 5 [json_name = "columns"]; - int columns_size() const; private: - int _internal_columns_size() const; - public: - void clear_columns(); - ::pg_query::Node* mutable_columns(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_columns(); - private: - const ::pg_query::Node& _internal_columns(int index) const; - ::pg_query::Node* _internal_add_columns(); - public: - const ::pg_query::Node& columns(int index) const; - ::pg_query::Node* add_columns(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - columns() const; + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); - // .pg_query.Node docexpr = 2 [json_name = "docexpr"]; - bool has_docexpr() const; - private: - bool _internal_has_docexpr() const; - public: - void clear_docexpr(); - const ::pg_query::Node& docexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_docexpr(); - ::pg_query::Node* mutable_docexpr(); - void set_allocated_docexpr(::pg_query::Node* docexpr); - private: - const ::pg_query::Node& _internal_docexpr() const; - ::pg_query::Node* _internal_mutable_docexpr(); public: - void unsafe_arena_set_allocated_docexpr( - ::pg_query::Node* docexpr); - ::pg_query::Node* unsafe_arena_release_docexpr(); + // bool concurrent = 1 [json_name = "concurrent"]; + void clear_concurrent() ; + bool concurrent() const; + void set_concurrent(bool value); - // .pg_query.Node rowexpr = 3 [json_name = "rowexpr"]; - bool has_rowexpr() const; - private: - bool _internal_has_rowexpr() const; - public: - void clear_rowexpr(); - const ::pg_query::Node& rowexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_rowexpr(); - ::pg_query::Node* mutable_rowexpr(); - void set_allocated_rowexpr(::pg_query::Node* rowexpr); private: - const ::pg_query::Node& _internal_rowexpr() const; - ::pg_query::Node* _internal_mutable_rowexpr(); - public: - void unsafe_arena_set_allocated_rowexpr( - ::pg_query::Node* rowexpr); - ::pg_query::Node* unsafe_arena_release_rowexpr(); + bool _internal_concurrent() const; + void _internal_set_concurrent(bool value); - // .pg_query.Alias alias = 6 [json_name = "alias"]; - bool has_alias() const; - private: - bool _internal_has_alias() const; - public: - void clear_alias(); - const ::pg_query::Alias& alias() const; - PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); - ::pg_query::Alias* mutable_alias(); - void set_allocated_alias(::pg_query::Alias* alias); - private: - const ::pg_query::Alias& _internal_alias() const; - ::pg_query::Alias* _internal_mutable_alias(); public: - void unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias); - ::pg_query::Alias* unsafe_arena_release_alias(); + // bool skip_data = 2 [json_name = "skipData"]; + void clear_skip_data() ; + bool skip_data() const; + void set_skip_data(bool value); - // bool lateral = 1 [json_name = "lateral"]; - void clear_lateral(); - bool lateral() const; - void set_lateral(bool value); private: - bool _internal_lateral() const; - void _internal_set_lateral(bool value); - public: + bool _internal_skip_data() const; + void _internal_set_skip_data(bool value); - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.RangeTableFunc) + // @@protoc_insertion_point(class_scope:pg_query.RefreshMatViewStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > namespaces_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > columns_; - ::pg_query::Node* docexpr_; - ::pg_query::Node* rowexpr_; - ::pg_query::Alias* alias_; - bool lateral_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::RangeVar* relation_; + bool concurrent_; + bool skip_data_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RangeTableFuncCol final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTableFuncCol) */ { +class ReindexStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ReindexStmt) */ { public: - inline RangeTableFuncCol() : RangeTableFuncCol(nullptr) {} - ~RangeTableFuncCol() override; - explicit PROTOBUF_CONSTEXPR RangeTableFuncCol(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ReindexStmt() : ReindexStmt(nullptr) {} + ~ReindexStmt() override; + template + explicit PROTOBUF_CONSTEXPR ReindexStmt(::google::protobuf::internal::ConstantInitialized); - RangeTableFuncCol(const RangeTableFuncCol& from); - RangeTableFuncCol(RangeTableFuncCol&& from) noexcept - : RangeTableFuncCol() { + inline ReindexStmt(const ReindexStmt& from) + : ReindexStmt(nullptr, from) {} + ReindexStmt(ReindexStmt&& from) noexcept + : ReindexStmt() { *this = ::std::move(from); } - inline RangeTableFuncCol& operator=(const RangeTableFuncCol& from) { + inline ReindexStmt& operator=(const ReindexStmt& from) { CopyFrom(from); return *this; } - inline RangeTableFuncCol& operator=(RangeTableFuncCol&& from) noexcept { + inline ReindexStmt& operator=(ReindexStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -51463,243 +61135,228 @@ class RangeTableFuncCol final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RangeTableFuncCol& default_instance() { + static const ReindexStmt& default_instance() { return *internal_default_instance(); } - static inline const RangeTableFuncCol* internal_default_instance() { - return reinterpret_cast( - &_RangeTableFuncCol_default_instance_); + static inline const ReindexStmt* internal_default_instance() { + return reinterpret_cast( + &_ReindexStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 200; + 237; - friend void swap(RangeTableFuncCol& a, RangeTableFuncCol& b) { + friend void swap(ReindexStmt& a, ReindexStmt& b) { a.Swap(&b); } - inline void Swap(RangeTableFuncCol* other) { + inline void Swap(ReindexStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RangeTableFuncCol* other) { + void UnsafeArenaSwap(ReindexStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RangeTableFuncCol* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ReindexStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RangeTableFuncCol& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RangeTableFuncCol& from) { - RangeTableFuncCol::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ReindexStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ReindexStmt& from) { + ReindexStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RangeTableFuncCol* other); + void InternalSwap(ReindexStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RangeTableFuncCol"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ReindexStmt"; } protected: - explicit RangeTableFuncCol(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ReindexStmt(::google::protobuf::Arena* arena); + ReindexStmt(::google::protobuf::Arena* arena, const ReindexStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kColnameFieldNumber = 1, - kTypeNameFieldNumber = 2, - kColexprFieldNumber = 5, - kColdefexprFieldNumber = 6, - kForOrdinalityFieldNumber = 3, - kIsNotNullFieldNumber = 4, - kLocationFieldNumber = 7, + kParamsFieldNumber = 4, + kNameFieldNumber = 3, + kRelationFieldNumber = 2, + kKindFieldNumber = 1, }; - // string colname = 1 [json_name = "colname"]; - void clear_colname(); - const std::string& colname() const; - template - void set_colname(ArgT0&& arg0, ArgT... args); - std::string* mutable_colname(); - PROTOBUF_NODISCARD std::string* release_colname(); - void set_allocated_colname(std::string* colname); + // repeated .pg_query.Node params = 4 [json_name = "params"]; + int params_size() const; private: - const std::string& _internal_colname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_colname(const std::string& value); - std::string* _internal_mutable_colname(); - public: + int _internal_params_size() const; - // .pg_query.TypeName type_name = 2 [json_name = "typeName"]; - bool has_type_name() const; - private: - bool _internal_has_type_name() const; public: - void clear_type_name(); - const ::pg_query::TypeName& type_name() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); - ::pg_query::TypeName* mutable_type_name(); - void set_allocated_type_name(::pg_query::TypeName* type_name); + void clear_params() ; + ::pg_query::Node* mutable_params(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_params(); private: - const ::pg_query::TypeName& _internal_type_name() const; - ::pg_query::TypeName* _internal_mutable_type_name(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_params() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_params(); public: - void unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name); - ::pg_query::TypeName* unsafe_arena_release_type_name(); + const ::pg_query::Node& params(int index) const; + ::pg_query::Node* add_params(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + params() const; + // string name = 3 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // .pg_query.Node colexpr = 5 [json_name = "colexpr"]; - bool has_colexpr() const; - private: - bool _internal_has_colexpr() const; - public: - void clear_colexpr(); - const ::pg_query::Node& colexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_colexpr(); - ::pg_query::Node* mutable_colexpr(); - void set_allocated_colexpr(::pg_query::Node* colexpr); private: - const ::pg_query::Node& _internal_colexpr() const; - ::pg_query::Node* _internal_mutable_colexpr(); - public: - void unsafe_arena_set_allocated_colexpr( - ::pg_query::Node* colexpr); - ::pg_query::Node* unsafe_arena_release_colexpr(); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); - // .pg_query.Node coldefexpr = 6 [json_name = "coldefexpr"]; - bool has_coldefexpr() const; - private: - bool _internal_has_coldefexpr() const; - public: - void clear_coldefexpr(); - const ::pg_query::Node& coldefexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_coldefexpr(); - ::pg_query::Node* mutable_coldefexpr(); - void set_allocated_coldefexpr(::pg_query::Node* coldefexpr); - private: - const ::pg_query::Node& _internal_coldefexpr() const; - ::pg_query::Node* _internal_mutable_coldefexpr(); public: - void unsafe_arena_set_allocated_coldefexpr( - ::pg_query::Node* coldefexpr); - ::pg_query::Node* unsafe_arena_release_coldefexpr(); + // .pg_query.RangeVar relation = 2 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // bool for_ordinality = 3 [json_name = "for_ordinality"]; - void clear_for_ordinality(); - bool for_ordinality() const; - void set_for_ordinality(bool value); private: - bool _internal_for_ordinality() const; - void _internal_set_for_ordinality(bool value); - public: + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); - // bool is_not_null = 4 [json_name = "is_not_null"]; - void clear_is_not_null(); - bool is_not_null() const; - void set_is_not_null(bool value); - private: - bool _internal_is_not_null() const; - void _internal_set_is_not_null(bool value); public: + // .pg_query.ReindexObjectType kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::ReindexObjectType kind() const; + void set_kind(::pg_query::ReindexObjectType value); - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::pg_query::ReindexObjectType _internal_kind() const; + void _internal_set_kind(::pg_query::ReindexObjectType value); - // @@protoc_insertion_point(class_scope:pg_query.RangeTableFuncCol) + public: + // @@protoc_insertion_point(class_scope:pg_query.ReindexStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 33, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr colname_; - ::pg_query::TypeName* type_name_; - ::pg_query::Node* colexpr_; - ::pg_query::Node* coldefexpr_; - bool for_ordinality_; - bool is_not_null_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > params_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::RangeVar* relation_; + int kind_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class TypeName final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.TypeName) */ { +class RelabelType final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RelabelType) */ { public: - inline TypeName() : TypeName(nullptr) {} - ~TypeName() override; - explicit PROTOBUF_CONSTEXPR TypeName(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RelabelType() : RelabelType(nullptr) {} + ~RelabelType() override; + template + explicit PROTOBUF_CONSTEXPR RelabelType(::google::protobuf::internal::ConstantInitialized); - TypeName(const TypeName& from); - TypeName(TypeName&& from) noexcept - : TypeName() { + inline RelabelType(const RelabelType& from) + : RelabelType(nullptr, from) {} + RelabelType(RelabelType&& from) noexcept + : RelabelType() { *this = ::std::move(from); } - inline TypeName& operator=(const TypeName& from) { + inline RelabelType& operator=(const RelabelType& from) { CopyFrom(from); return *this; } - inline TypeName& operator=(TypeName&& from) noexcept { + inline RelabelType& operator=(RelabelType&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -51709,249 +61366,255 @@ class TypeName final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const TypeName& default_instance() { + static const RelabelType& default_instance() { return *internal_default_instance(); } - static inline const TypeName* internal_default_instance() { - return reinterpret_cast( - &_TypeName_default_instance_); + static inline const RelabelType* internal_default_instance() { + return reinterpret_cast( + &_RelabelType_default_instance_); } static constexpr int kIndexInFileMessages = - 201; + 34; - friend void swap(TypeName& a, TypeName& b) { + friend void swap(RelabelType& a, RelabelType& b) { a.Swap(&b); } - inline void Swap(TypeName* other) { + inline void Swap(RelabelType* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(TypeName* other) { + void UnsafeArenaSwap(RelabelType* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - TypeName* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RelabelType* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const TypeName& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const TypeName& from) { - TypeName::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RelabelType& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RelabelType& from) { + RelabelType::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(TypeName* other); + void InternalSwap(RelabelType* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.TypeName"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RelabelType"; } protected: - explicit TypeName(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RelabelType(::google::protobuf::Arena* arena); + RelabelType(::google::protobuf::Arena* arena, const RelabelType& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNamesFieldNumber = 1, - kTypmodsFieldNumber = 5, - kArrayBoundsFieldNumber = 7, - kTypeOidFieldNumber = 2, - kSetofFieldNumber = 3, - kPctTypeFieldNumber = 4, - kTypemodFieldNumber = 6, - kLocationFieldNumber = 8, + kXprFieldNumber = 1, + kArgFieldNumber = 2, + kResulttypeFieldNumber = 3, + kResulttypmodFieldNumber = 4, + kResultcollidFieldNumber = 5, + kRelabelformatFieldNumber = 6, + kLocationFieldNumber = 7, }; - // repeated .pg_query.Node names = 1 [json_name = "names"]; - int names_size() const; - private: - int _internal_names_size() const; - public: - void clear_names(); - ::pg_query::Node* mutable_names(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_names(); - private: - const ::pg_query::Node& _internal_names(int index) const; - ::pg_query::Node* _internal_add_names(); - public: - const ::pg_query::Node& names(int index) const; - ::pg_query::Node* add_names(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - names() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // repeated .pg_query.Node typmods = 5 [json_name = "typmods"]; - int typmods_size() const; - private: - int _internal_typmods_size() const; - public: - void clear_typmods(); - ::pg_query::Node* mutable_typmods(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_typmods(); private: - const ::pg_query::Node& _internal_typmods(int index) const; - ::pg_query::Node* _internal_add_typmods(); - public: - const ::pg_query::Node& typmods(int index) const; - ::pg_query::Node* add_typmods(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - typmods() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - // repeated .pg_query.Node array_bounds = 7 [json_name = "arrayBounds"]; - int array_bounds_size() const; - private: - int _internal_array_bounds_size() const; public: - void clear_array_bounds(); - ::pg_query::Node* mutable_array_bounds(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_array_bounds(); + // .pg_query.Node arg = 2 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); + private: - const ::pg_query::Node& _internal_array_bounds(int index) const; - ::pg_query::Node* _internal_add_array_bounds(); + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); + public: - const ::pg_query::Node& array_bounds(int index) const; - ::pg_query::Node* add_array_bounds(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - array_bounds() const; + // uint32 resulttype = 3 [json_name = "resulttype"]; + void clear_resulttype() ; + ::uint32_t resulttype() const; + void set_resulttype(::uint32_t value); - // uint32 type_oid = 2 [json_name = "typeOid"]; - void clear_type_oid(); - uint32_t type_oid() const; - void set_type_oid(uint32_t value); private: - uint32_t _internal_type_oid() const; - void _internal_set_type_oid(uint32_t value); + ::uint32_t _internal_resulttype() const; + void _internal_set_resulttype(::uint32_t value); + public: + // int32 resulttypmod = 4 [json_name = "resulttypmod"]; + void clear_resulttypmod() ; + ::int32_t resulttypmod() const; + void set_resulttypmod(::int32_t value); - // bool setof = 3 [json_name = "setof"]; - void clear_setof(); - bool setof() const; - void set_setof(bool value); private: - bool _internal_setof() const; - void _internal_set_setof(bool value); + ::int32_t _internal_resulttypmod() const; + void _internal_set_resulttypmod(::int32_t value); + public: + // uint32 resultcollid = 5 [json_name = "resultcollid"]; + void clear_resultcollid() ; + ::uint32_t resultcollid() const; + void set_resultcollid(::uint32_t value); - // bool pct_type = 4 [json_name = "pct_type"]; - void clear_pct_type(); - bool pct_type() const; - void set_pct_type(bool value); private: - bool _internal_pct_type() const; - void _internal_set_pct_type(bool value); + ::uint32_t _internal_resultcollid() const; + void _internal_set_resultcollid(::uint32_t value); + public: + // .pg_query.CoercionForm relabelformat = 6 [json_name = "relabelformat"]; + void clear_relabelformat() ; + ::pg_query::CoercionForm relabelformat() const; + void set_relabelformat(::pg_query::CoercionForm value); - // int32 typemod = 6 [json_name = "typemod"]; - void clear_typemod(); - int32_t typemod() const; - void set_typemod(int32_t value); private: - int32_t _internal_typemod() const; - void _internal_set_typemod(int32_t value); + ::pg_query::CoercionForm _internal_relabelformat() const; + void _internal_set_relabelformat(::pg_query::CoercionForm value); + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 location = 8 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.TypeName) + public: + // @@protoc_insertion_point(class_scope:pg_query.RelabelType) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > names_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > typmods_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > array_bounds_; - uint32_t type_oid_; - bool setof_; - bool pct_type_; - int32_t typemod_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* xpr_; + ::pg_query::Node* arg_; + ::uint32_t resulttype_; + ::int32_t resulttypmod_; + ::uint32_t resultcollid_; + int relabelformat_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ColumnDef final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ColumnDef) */ { +class RenameStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RenameStmt) */ { public: - inline ColumnDef() : ColumnDef(nullptr) {} - ~ColumnDef() override; - explicit PROTOBUF_CONSTEXPR ColumnDef(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RenameStmt() : RenameStmt(nullptr) {} + ~RenameStmt() override; + template + explicit PROTOBUF_CONSTEXPR RenameStmt(::google::protobuf::internal::ConstantInitialized); - ColumnDef(const ColumnDef& from); - ColumnDef(ColumnDef&& from) noexcept - : ColumnDef() { + inline RenameStmt(const RenameStmt& from) + : RenameStmt(nullptr, from) {} + RenameStmt(RenameStmt&& from) noexcept + : RenameStmt() { *this = ::std::move(from); } - inline ColumnDef& operator=(const ColumnDef& from) { + inline RenameStmt& operator=(const RenameStmt& from) { CopyFrom(from); return *this; } - inline ColumnDef& operator=(ColumnDef&& from) noexcept { + inline RenameStmt& operator=(RenameStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -51961,420 +61624,279 @@ class ColumnDef final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ColumnDef& default_instance() { + static const RenameStmt& default_instance() { return *internal_default_instance(); } - static inline const ColumnDef* internal_default_instance() { - return reinterpret_cast( - &_ColumnDef_default_instance_); + static inline const RenameStmt* internal_default_instance() { + return reinterpret_cast( + &_RenameStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 202; + 204; - friend void swap(ColumnDef& a, ColumnDef& b) { + friend void swap(RenameStmt& a, RenameStmt& b) { a.Swap(&b); } - inline void Swap(ColumnDef* other) { + inline void Swap(RenameStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ColumnDef* other) { + void UnsafeArenaSwap(RenameStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ColumnDef* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RenameStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ColumnDef& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ColumnDef& from) { - ColumnDef::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RenameStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RenameStmt& from) { + RenameStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ColumnDef* other); + void InternalSwap(RenameStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ColumnDef"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RenameStmt"; } protected: - explicit ColumnDef(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RenameStmt(::google::protobuf::Arena* arena); + RenameStmt(::google::protobuf::Arena* arena, const RenameStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kConstraintsFieldNumber = 16, - kFdwoptionsFieldNumber = 17, - kColnameFieldNumber = 1, - kCompressionFieldNumber = 3, - kStorageFieldNumber = 8, - kIdentityFieldNumber = 11, - kGeneratedFieldNumber = 13, - kTypeNameFieldNumber = 2, - kRawDefaultFieldNumber = 9, - kCookedDefaultFieldNumber = 10, - kIdentitySequenceFieldNumber = 12, - kCollClauseFieldNumber = 14, - kInhcountFieldNumber = 4, - kIsLocalFieldNumber = 5, - kIsNotNullFieldNumber = 6, - kIsFromTypeFieldNumber = 7, - kCollOidFieldNumber = 15, - kLocationFieldNumber = 18, + kSubnameFieldNumber = 5, + kNewnameFieldNumber = 6, + kRelationFieldNumber = 3, + kObjectFieldNumber = 4, + kRenameTypeFieldNumber = 1, + kRelationTypeFieldNumber = 2, + kBehaviorFieldNumber = 7, + kMissingOkFieldNumber = 8, }; - // repeated .pg_query.Node constraints = 16 [json_name = "constraints"]; - int constraints_size() const; - private: - int _internal_constraints_size() const; - public: - void clear_constraints(); - ::pg_query::Node* mutable_constraints(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_constraints(); - private: - const ::pg_query::Node& _internal_constraints(int index) const; - ::pg_query::Node* _internal_add_constraints(); - public: - const ::pg_query::Node& constraints(int index) const; - ::pg_query::Node* add_constraints(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - constraints() const; - - // repeated .pg_query.Node fdwoptions = 17 [json_name = "fdwoptions"]; - int fdwoptions_size() const; - private: - int _internal_fdwoptions_size() const; - public: - void clear_fdwoptions(); - ::pg_query::Node* mutable_fdwoptions(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_fdwoptions(); - private: - const ::pg_query::Node& _internal_fdwoptions(int index) const; - ::pg_query::Node* _internal_add_fdwoptions(); - public: - const ::pg_query::Node& fdwoptions(int index) const; - ::pg_query::Node* add_fdwoptions(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - fdwoptions() const; + // string subname = 5 [json_name = "subname"]; + void clear_subname() ; + const std::string& subname() const; + template + void set_subname(Arg_&& arg, Args_... args); + std::string* mutable_subname(); + PROTOBUF_NODISCARD std::string* release_subname(); + void set_allocated_subname(std::string* value); - // string colname = 1 [json_name = "colname"]; - void clear_colname(); - const std::string& colname() const; - template - void set_colname(ArgT0&& arg0, ArgT... args); - std::string* mutable_colname(); - PROTOBUF_NODISCARD std::string* release_colname(); - void set_allocated_colname(std::string* colname); private: - const std::string& _internal_colname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_colname(const std::string& value); - std::string* _internal_mutable_colname(); - public: + const std::string& _internal_subname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_subname( + const std::string& value); + std::string* _internal_mutable_subname(); - // string compression = 3 [json_name = "compression"]; - void clear_compression(); - const std::string& compression() const; - template - void set_compression(ArgT0&& arg0, ArgT... args); - std::string* mutable_compression(); - PROTOBUF_NODISCARD std::string* release_compression(); - void set_allocated_compression(std::string* compression); - private: - const std::string& _internal_compression() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_compression(const std::string& value); - std::string* _internal_mutable_compression(); public: + // string newname = 6 [json_name = "newname"]; + void clear_newname() ; + const std::string& newname() const; + template + void set_newname(Arg_&& arg, Args_... args); + std::string* mutable_newname(); + PROTOBUF_NODISCARD std::string* release_newname(); + void set_allocated_newname(std::string* value); - // string storage = 8 [json_name = "storage"]; - void clear_storage(); - const std::string& storage() const; - template - void set_storage(ArgT0&& arg0, ArgT... args); - std::string* mutable_storage(); - PROTOBUF_NODISCARD std::string* release_storage(); - void set_allocated_storage(std::string* storage); private: - const std::string& _internal_storage() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_storage(const std::string& value); - std::string* _internal_mutable_storage(); - public: + const std::string& _internal_newname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_newname( + const std::string& value); + std::string* _internal_mutable_newname(); - // string identity = 11 [json_name = "identity"]; - void clear_identity(); - const std::string& identity() const; - template - void set_identity(ArgT0&& arg0, ArgT... args); - std::string* mutable_identity(); - PROTOBUF_NODISCARD std::string* release_identity(); - void set_allocated_identity(std::string* identity); - private: - const std::string& _internal_identity() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_identity(const std::string& value); - std::string* _internal_mutable_identity(); public: + // .pg_query.RangeVar relation = 3 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // string generated = 13 [json_name = "generated"]; - void clear_generated(); - const std::string& generated() const; - template - void set_generated(ArgT0&& arg0, ArgT... args); - std::string* mutable_generated(); - PROTOBUF_NODISCARD std::string* release_generated(); - void set_allocated_generated(std::string* generated); private: - const std::string& _internal_generated() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_generated(const std::string& value); - std::string* _internal_mutable_generated(); - public: + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); - // .pg_query.TypeName type_name = 2 [json_name = "typeName"]; - bool has_type_name() const; - private: - bool _internal_has_type_name() const; - public: - void clear_type_name(); - const ::pg_query::TypeName& type_name() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); - ::pg_query::TypeName* mutable_type_name(); - void set_allocated_type_name(::pg_query::TypeName* type_name); - private: - const ::pg_query::TypeName& _internal_type_name() const; - ::pg_query::TypeName* _internal_mutable_type_name(); public: - void unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name); - ::pg_query::TypeName* unsafe_arena_release_type_name(); + // .pg_query.Node object = 4 [json_name = "object"]; + bool has_object() const; + void clear_object() ; + const ::pg_query::Node& object() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_object(); + ::pg_query::Node* mutable_object(); + void set_allocated_object(::pg_query::Node* value); + void unsafe_arena_set_allocated_object(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_object(); - // .pg_query.Node raw_default = 9 [json_name = "raw_default"]; - bool has_raw_default() const; - private: - bool _internal_has_raw_default() const; - public: - void clear_raw_default(); - const ::pg_query::Node& raw_default() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_raw_default(); - ::pg_query::Node* mutable_raw_default(); - void set_allocated_raw_default(::pg_query::Node* raw_default); private: - const ::pg_query::Node& _internal_raw_default() const; - ::pg_query::Node* _internal_mutable_raw_default(); - public: - void unsafe_arena_set_allocated_raw_default( - ::pg_query::Node* raw_default); - ::pg_query::Node* unsafe_arena_release_raw_default(); + const ::pg_query::Node& _internal_object() const; + ::pg_query::Node* _internal_mutable_object(); - // .pg_query.Node cooked_default = 10 [json_name = "cooked_default"]; - bool has_cooked_default() const; - private: - bool _internal_has_cooked_default() const; - public: - void clear_cooked_default(); - const ::pg_query::Node& cooked_default() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_cooked_default(); - ::pg_query::Node* mutable_cooked_default(); - void set_allocated_cooked_default(::pg_query::Node* cooked_default); - private: - const ::pg_query::Node& _internal_cooked_default() const; - ::pg_query::Node* _internal_mutable_cooked_default(); public: - void unsafe_arena_set_allocated_cooked_default( - ::pg_query::Node* cooked_default); - ::pg_query::Node* unsafe_arena_release_cooked_default(); + // .pg_query.ObjectType rename_type = 1 [json_name = "renameType"]; + void clear_rename_type() ; + ::pg_query::ObjectType rename_type() const; + void set_rename_type(::pg_query::ObjectType value); - // .pg_query.RangeVar identity_sequence = 12 [json_name = "identitySequence"]; - bool has_identity_sequence() const; - private: - bool _internal_has_identity_sequence() const; - public: - void clear_identity_sequence(); - const ::pg_query::RangeVar& identity_sequence() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_identity_sequence(); - ::pg_query::RangeVar* mutable_identity_sequence(); - void set_allocated_identity_sequence(::pg_query::RangeVar* identity_sequence); private: - const ::pg_query::RangeVar& _internal_identity_sequence() const; - ::pg_query::RangeVar* _internal_mutable_identity_sequence(); - public: - void unsafe_arena_set_allocated_identity_sequence( - ::pg_query::RangeVar* identity_sequence); - ::pg_query::RangeVar* unsafe_arena_release_identity_sequence(); + ::pg_query::ObjectType _internal_rename_type() const; + void _internal_set_rename_type(::pg_query::ObjectType value); - // .pg_query.CollateClause coll_clause = 14 [json_name = "collClause"]; - bool has_coll_clause() const; - private: - bool _internal_has_coll_clause() const; - public: - void clear_coll_clause(); - const ::pg_query::CollateClause& coll_clause() const; - PROTOBUF_NODISCARD ::pg_query::CollateClause* release_coll_clause(); - ::pg_query::CollateClause* mutable_coll_clause(); - void set_allocated_coll_clause(::pg_query::CollateClause* coll_clause); - private: - const ::pg_query::CollateClause& _internal_coll_clause() const; - ::pg_query::CollateClause* _internal_mutable_coll_clause(); public: - void unsafe_arena_set_allocated_coll_clause( - ::pg_query::CollateClause* coll_clause); - ::pg_query::CollateClause* unsafe_arena_release_coll_clause(); + // .pg_query.ObjectType relation_type = 2 [json_name = "relationType"]; + void clear_relation_type() ; + ::pg_query::ObjectType relation_type() const; + void set_relation_type(::pg_query::ObjectType value); - // int32 inhcount = 4 [json_name = "inhcount"]; - void clear_inhcount(); - int32_t inhcount() const; - void set_inhcount(int32_t value); private: - int32_t _internal_inhcount() const; - void _internal_set_inhcount(int32_t value); - public: + ::pg_query::ObjectType _internal_relation_type() const; + void _internal_set_relation_type(::pg_query::ObjectType value); - // bool is_local = 5 [json_name = "is_local"]; - void clear_is_local(); - bool is_local() const; - void set_is_local(bool value); - private: - bool _internal_is_local() const; - void _internal_set_is_local(bool value); public: + // .pg_query.DropBehavior behavior = 7 [json_name = "behavior"]; + void clear_behavior() ; + ::pg_query::DropBehavior behavior() const; + void set_behavior(::pg_query::DropBehavior value); - // bool is_not_null = 6 [json_name = "is_not_null"]; - void clear_is_not_null(); - bool is_not_null() const; - void set_is_not_null(bool value); private: - bool _internal_is_not_null() const; - void _internal_set_is_not_null(bool value); - public: + ::pg_query::DropBehavior _internal_behavior() const; + void _internal_set_behavior(::pg_query::DropBehavior value); - // bool is_from_type = 7 [json_name = "is_from_type"]; - void clear_is_from_type(); - bool is_from_type() const; - void set_is_from_type(bool value); - private: - bool _internal_is_from_type() const; - void _internal_set_is_from_type(bool value); public: + // bool missing_ok = 8 [json_name = "missing_ok"]; + void clear_missing_ok() ; + bool missing_ok() const; + void set_missing_ok(bool value); - // uint32 coll_oid = 15 [json_name = "collOid"]; - void clear_coll_oid(); - uint32_t coll_oid() const; - void set_coll_oid(uint32_t value); private: - uint32_t _internal_coll_oid() const; - void _internal_set_coll_oid(uint32_t value); - public: + bool _internal_missing_ok() const; + void _internal_set_missing_ok(bool value); - // int32 location = 18 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.ColumnDef) + // @@protoc_insertion_point(class_scope:pg_query.RenameStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 2, + 50, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > constraints_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > fdwoptions_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr colname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr compression_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr storage_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr identity_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr generated_; - ::pg_query::TypeName* type_name_; - ::pg_query::Node* raw_default_; - ::pg_query::Node* cooked_default_; - ::pg_query::RangeVar* identity_sequence_; - ::pg_query::CollateClause* coll_clause_; - int32_t inhcount_; - bool is_local_; - bool is_not_null_; - bool is_from_type_; - uint32_t coll_oid_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr subname_; + ::google::protobuf::internal::ArenaStringPtr newname_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* object_; + int rename_type_; + int relation_type_; + int behavior_; + bool missing_ok_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class IndexElem final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.IndexElem) */ { +class ResTarget final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ResTarget) */ { public: - inline IndexElem() : IndexElem(nullptr) {} - ~IndexElem() override; - explicit PROTOBUF_CONSTEXPR IndexElem(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ResTarget() : ResTarget(nullptr) {} + ~ResTarget() override; + template + explicit PROTOBUF_CONSTEXPR ResTarget(::google::protobuf::internal::ConstantInitialized); - IndexElem(const IndexElem& from); - IndexElem(IndexElem&& from) noexcept - : IndexElem() { + inline ResTarget(const ResTarget& from) + : ResTarget(nullptr, from) {} + ResTarget(ResTarget&& from) noexcept + : ResTarget() { *this = ::std::move(from); } - inline IndexElem& operator=(const IndexElem& from) { + inline ResTarget& operator=(const ResTarget& from) { CopyFrom(from); return *this; } - inline IndexElem& operator=(IndexElem&& from) noexcept { + inline ResTarget& operator=(ResTarget&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -52384,268 +61906,228 @@ class IndexElem final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const IndexElem& default_instance() { + static const ResTarget& default_instance() { return *internal_default_instance(); } - static inline const IndexElem* internal_default_instance() { - return reinterpret_cast( - &_IndexElem_default_instance_); + static inline const ResTarget* internal_default_instance() { + return reinterpret_cast( + &_ResTarget_default_instance_); } static constexpr int kIndexInFileMessages = - 203; + 80; - friend void swap(IndexElem& a, IndexElem& b) { + friend void swap(ResTarget& a, ResTarget& b) { a.Swap(&b); } - inline void Swap(IndexElem* other) { + inline void Swap(ResTarget* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(IndexElem* other) { + void UnsafeArenaSwap(ResTarget* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - IndexElem* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ResTarget* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const IndexElem& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const IndexElem& from) { - IndexElem::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ResTarget& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ResTarget& from) { + ResTarget::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(IndexElem* other); + void InternalSwap(ResTarget* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.IndexElem"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ResTarget"; } protected: - explicit IndexElem(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ResTarget(::google::protobuf::Arena* arena); + ResTarget(::google::protobuf::Arena* arena, const ResTarget& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCollationFieldNumber = 4, - kOpclassFieldNumber = 5, - kOpclassoptsFieldNumber = 6, + kIndirectionFieldNumber = 2, kNameFieldNumber = 1, - kIndexcolnameFieldNumber = 3, - kExprFieldNumber = 2, - kOrderingFieldNumber = 7, - kNullsOrderingFieldNumber = 8, + kValFieldNumber = 3, + kLocationFieldNumber = 4, }; - // repeated .pg_query.Node collation = 4 [json_name = "collation"]; - int collation_size() const; - private: - int _internal_collation_size() const; - public: - void clear_collation(); - ::pg_query::Node* mutable_collation(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_collation(); - private: - const ::pg_query::Node& _internal_collation(int index) const; - ::pg_query::Node* _internal_add_collation(); - public: - const ::pg_query::Node& collation(int index) const; - ::pg_query::Node* add_collation(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - collation() const; - - // repeated .pg_query.Node opclass = 5 [json_name = "opclass"]; - int opclass_size() const; - private: - int _internal_opclass_size() const; - public: - void clear_opclass(); - ::pg_query::Node* mutable_opclass(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_opclass(); + // repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; + int indirection_size() const; private: - const ::pg_query::Node& _internal_opclass(int index) const; - ::pg_query::Node* _internal_add_opclass(); - public: - const ::pg_query::Node& opclass(int index) const; - ::pg_query::Node* add_opclass(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - opclass() const; + int _internal_indirection_size() const; - // repeated .pg_query.Node opclassopts = 6 [json_name = "opclassopts"]; - int opclassopts_size() const; - private: - int _internal_opclassopts_size() const; public: - void clear_opclassopts(); - ::pg_query::Node* mutable_opclassopts(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_opclassopts(); + void clear_indirection() ; + ::pg_query::Node* mutable_indirection(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_indirection(); private: - const ::pg_query::Node& _internal_opclassopts(int index) const; - ::pg_query::Node* _internal_add_opclassopts(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_indirection() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_indirection(); public: - const ::pg_query::Node& opclassopts(int index) const; - ::pg_query::Node* add_opclassopts(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - opclassopts() const; - + const ::pg_query::Node& indirection(int index) const; + ::pg_query::Node* add_indirection(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + indirection() const; // string name = 1 [json_name = "name"]; - void clear_name(); + void clear_name() ; const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); + template + void set_name(Arg_&& arg, Args_... args); std::string* mutable_name(); PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + void set_allocated_name(std::string* value); + private: const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); std::string* _internal_mutable_name(); - public: - // string indexcolname = 3 [json_name = "indexcolname"]; - void clear_indexcolname(); - const std::string& indexcolname() const; - template - void set_indexcolname(ArgT0&& arg0, ArgT... args); - std::string* mutable_indexcolname(); - PROTOBUF_NODISCARD std::string* release_indexcolname(); - void set_allocated_indexcolname(std::string* indexcolname); - private: - const std::string& _internal_indexcolname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_indexcolname(const std::string& value); - std::string* _internal_mutable_indexcolname(); public: + // .pg_query.Node val = 3 [json_name = "val"]; + bool has_val() const; + void clear_val() ; + const ::pg_query::Node& val() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_val(); + ::pg_query::Node* mutable_val(); + void set_allocated_val(::pg_query::Node* value); + void unsafe_arena_set_allocated_val(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_val(); - // .pg_query.Node expr = 2 [json_name = "expr"]; - bool has_expr() const; - private: - bool _internal_has_expr() const; - public: - void clear_expr(); - const ::pg_query::Node& expr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); - ::pg_query::Node* mutable_expr(); - void set_allocated_expr(::pg_query::Node* expr); private: - const ::pg_query::Node& _internal_expr() const; - ::pg_query::Node* _internal_mutable_expr(); - public: - void unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr); - ::pg_query::Node* unsafe_arena_release_expr(); + const ::pg_query::Node& _internal_val() const; + ::pg_query::Node* _internal_mutable_val(); - // .pg_query.SortByDir ordering = 7 [json_name = "ordering"]; - void clear_ordering(); - ::pg_query::SortByDir ordering() const; - void set_ordering(::pg_query::SortByDir value); - private: - ::pg_query::SortByDir _internal_ordering() const; - void _internal_set_ordering(::pg_query::SortByDir value); public: + // int32 location = 4 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // .pg_query.SortByNulls nulls_ordering = 8 [json_name = "nulls_ordering"]; - void clear_nulls_ordering(); - ::pg_query::SortByNulls nulls_ordering() const; - void set_nulls_ordering(::pg_query::SortByNulls value); private: - ::pg_query::SortByNulls _internal_nulls_ordering() const; - void _internal_set_nulls_ordering(::pg_query::SortByNulls value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.IndexElem) + public: + // @@protoc_insertion_point(class_scope:pg_query.ResTarget) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 31, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > collation_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > opclass_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > opclassopts_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr indexcolname_; - ::pg_query::Node* expr_; - int ordering_; - int nulls_ordering_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > indirection_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::Node* val_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class StatsElem final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.StatsElem) */ { +class ReturnStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ReturnStmt) */ { public: - inline StatsElem() : StatsElem(nullptr) {} - ~StatsElem() override; - explicit PROTOBUF_CONSTEXPR StatsElem(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ReturnStmt() : ReturnStmt(nullptr) {} + ~ReturnStmt() override; + template + explicit PROTOBUF_CONSTEXPR ReturnStmt(::google::protobuf::internal::ConstantInitialized); - StatsElem(const StatsElem& from); - StatsElem(StatsElem&& from) noexcept - : StatsElem() { + inline ReturnStmt(const ReturnStmt& from) + : ReturnStmt(nullptr, from) {} + ReturnStmt(ReturnStmt&& from) noexcept + : ReturnStmt() { *this = ::std::move(from); } - inline StatsElem& operator=(const StatsElem& from) { + inline ReturnStmt& operator=(const ReturnStmt& from) { CopyFrom(from); return *this; } - inline StatsElem& operator=(StatsElem&& from) noexcept { + inline ReturnStmt& operator=(ReturnStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -52655,170 +62137,178 @@ class StatsElem final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const StatsElem& default_instance() { + static const ReturnStmt& default_instance() { return *internal_default_instance(); } - static inline const StatsElem* internal_default_instance() { - return reinterpret_cast( - &_StatsElem_default_instance_); + static inline const ReturnStmt* internal_default_instance() { + return reinterpret_cast( + &_ReturnStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 204; + 133; - friend void swap(StatsElem& a, StatsElem& b) { + friend void swap(ReturnStmt& a, ReturnStmt& b) { a.Swap(&b); } - inline void Swap(StatsElem* other) { + inline void Swap(ReturnStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(StatsElem* other) { + void UnsafeArenaSwap(ReturnStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - StatsElem* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ReturnStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const StatsElem& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const StatsElem& from) { - StatsElem::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ReturnStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ReturnStmt& from) { + ReturnStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(StatsElem* other); + void InternalSwap(ReturnStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.StatsElem"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ReturnStmt"; } protected: - explicit StatsElem(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ReturnStmt(::google::protobuf::Arena* arena); + ReturnStmt(::google::protobuf::Arena* arena, const ReturnStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNameFieldNumber = 1, - kExprFieldNumber = 2, + kReturnvalFieldNumber = 1, }; - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); - private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + // .pg_query.Node returnval = 1 [json_name = "returnval"]; + bool has_returnval() const; + void clear_returnval() ; + const ::pg_query::Node& returnval() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_returnval(); + ::pg_query::Node* mutable_returnval(); + void set_allocated_returnval(::pg_query::Node* value); + void unsafe_arena_set_allocated_returnval(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_returnval(); - // .pg_query.Node expr = 2 [json_name = "expr"]; - bool has_expr() const; - private: - bool _internal_has_expr() const; - public: - void clear_expr(); - const ::pg_query::Node& expr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); - ::pg_query::Node* mutable_expr(); - void set_allocated_expr(::pg_query::Node* expr); private: - const ::pg_query::Node& _internal_expr() const; - ::pg_query::Node* _internal_mutable_expr(); - public: - void unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr); - ::pg_query::Node* unsafe_arena_release_expr(); + const ::pg_query::Node& _internal_returnval() const; + ::pg_query::Node* _internal_mutable_returnval(); - // @@protoc_insertion_point(class_scope:pg_query.StatsElem) + public: + // @@protoc_insertion_point(class_scope:pg_query.ReturnStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::Node* expr_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* returnval_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class Constraint final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.Constraint) */ { +class RowCompareExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RowCompareExpr) */ { public: - inline Constraint() : Constraint(nullptr) {} - ~Constraint() override; - explicit PROTOBUF_CONSTEXPR Constraint(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RowCompareExpr() : RowCompareExpr(nullptr) {} + ~RowCompareExpr() override; + template + explicit PROTOBUF_CONSTEXPR RowCompareExpr(::google::protobuf::internal::ConstantInitialized); - Constraint(const Constraint& from); - Constraint(Constraint&& from) noexcept - : Constraint() { + inline RowCompareExpr(const RowCompareExpr& from) + : RowCompareExpr(nullptr, from) {} + RowCompareExpr(RowCompareExpr&& from) noexcept + : RowCompareExpr() { *this = ::std::move(from); } - inline Constraint& operator=(const Constraint& from) { + inline RowCompareExpr& operator=(const RowCompareExpr& from) { CopyFrom(from); return *this; } - inline Constraint& operator=(Constraint&& from) noexcept { + inline RowCompareExpr& operator=(RowCompareExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -52828,608 +62318,290 @@ class Constraint final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const Constraint& default_instance() { + static const RowCompareExpr& default_instance() { return *internal_default_instance(); } - static inline const Constraint* internal_default_instance() { - return reinterpret_cast( - &_Constraint_default_instance_); + static inline const RowCompareExpr* internal_default_instance() { + return reinterpret_cast( + &_RowCompareExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 205; + 44; - friend void swap(Constraint& a, Constraint& b) { + friend void swap(RowCompareExpr& a, RowCompareExpr& b) { a.Swap(&b); } - inline void Swap(Constraint* other) { + inline void Swap(RowCompareExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(Constraint* other) { + void UnsafeArenaSwap(RowCompareExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - Constraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RowCompareExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Constraint& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Constraint& from) { - Constraint::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RowCompareExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RowCompareExpr& from) { + RowCompareExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Constraint* other); + void InternalSwap(RowCompareExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.Constraint"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RowCompareExpr"; } protected: - explicit Constraint(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RowCompareExpr(::google::protobuf::Arena* arena); + RowCompareExpr(::google::protobuf::Arena* arena, const RowCompareExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kKeysFieldNumber = 11, - kIncludingFieldNumber = 12, - kExclusionsFieldNumber = 13, - kOptionsFieldNumber = 14, - kFkAttrsFieldNumber = 21, - kPkAttrsFieldNumber = 22, - kFkDelSetColsFieldNumber = 26, - kOldConpfeqopFieldNumber = 27, - kConnameFieldNumber = 2, - kCookedExprFieldNumber = 8, - kGeneratedWhenFieldNumber = 9, - kIndexnameFieldNumber = 15, - kIndexspaceFieldNumber = 16, - kAccessMethodFieldNumber = 18, - kFkMatchtypeFieldNumber = 23, - kFkUpdActionFieldNumber = 24, - kFkDelActionFieldNumber = 25, - kRawExprFieldNumber = 7, - kWhereClauseFieldNumber = 19, - kPktableFieldNumber = 20, - kContypeFieldNumber = 1, - kLocationFieldNumber = 5, - kDeferrableFieldNumber = 3, - kInitdeferredFieldNumber = 4, - kIsNoInheritFieldNumber = 6, - kNullsNotDistinctFieldNumber = 10, - kResetDefaultTblspcFieldNumber = 17, - kSkipValidationFieldNumber = 29, - kInitiallyValidFieldNumber = 30, - kOldPktableOidFieldNumber = 28, + kOpnosFieldNumber = 3, + kOpfamiliesFieldNumber = 4, + kInputcollidsFieldNumber = 5, + kLargsFieldNumber = 6, + kRargsFieldNumber = 7, + kXprFieldNumber = 1, + kRctypeFieldNumber = 2, }; - // repeated .pg_query.Node keys = 11 [json_name = "keys"]; - int keys_size() const; - private: - int _internal_keys_size() const; - public: - void clear_keys(); - ::pg_query::Node* mutable_keys(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_keys(); - private: - const ::pg_query::Node& _internal_keys(int index) const; - ::pg_query::Node* _internal_add_keys(); - public: - const ::pg_query::Node& keys(int index) const; - ::pg_query::Node* add_keys(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - keys() const; - - // repeated .pg_query.Node including = 12 [json_name = "including"]; - int including_size() const; - private: - int _internal_including_size() const; - public: - void clear_including(); - ::pg_query::Node* mutable_including(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_including(); - private: - const ::pg_query::Node& _internal_including(int index) const; - ::pg_query::Node* _internal_add_including(); - public: - const ::pg_query::Node& including(int index) const; - ::pg_query::Node* add_including(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - including() const; - - // repeated .pg_query.Node exclusions = 13 [json_name = "exclusions"]; - int exclusions_size() const; - private: - int _internal_exclusions_size() const; - public: - void clear_exclusions(); - ::pg_query::Node* mutable_exclusions(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_exclusions(); - private: - const ::pg_query::Node& _internal_exclusions(int index) const; - ::pg_query::Node* _internal_add_exclusions(); - public: - const ::pg_query::Node& exclusions(int index) const; - ::pg_query::Node* add_exclusions(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - exclusions() const; - - // repeated .pg_query.Node options = 14 [json_name = "options"]; - int options_size() const; - private: - int _internal_options_size() const; - public: - void clear_options(); - ::pg_query::Node* mutable_options(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_options(); - private: - const ::pg_query::Node& _internal_options(int index) const; - ::pg_query::Node* _internal_add_options(); - public: - const ::pg_query::Node& options(int index) const; - ::pg_query::Node* add_options(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - options() const; - - // repeated .pg_query.Node fk_attrs = 21 [json_name = "fk_attrs"]; - int fk_attrs_size() const; - private: - int _internal_fk_attrs_size() const; - public: - void clear_fk_attrs(); - ::pg_query::Node* mutable_fk_attrs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_fk_attrs(); - private: - const ::pg_query::Node& _internal_fk_attrs(int index) const; - ::pg_query::Node* _internal_add_fk_attrs(); - public: - const ::pg_query::Node& fk_attrs(int index) const; - ::pg_query::Node* add_fk_attrs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - fk_attrs() const; - - // repeated .pg_query.Node pk_attrs = 22 [json_name = "pk_attrs"]; - int pk_attrs_size() const; - private: - int _internal_pk_attrs_size() const; - public: - void clear_pk_attrs(); - ::pg_query::Node* mutable_pk_attrs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_pk_attrs(); - private: - const ::pg_query::Node& _internal_pk_attrs(int index) const; - ::pg_query::Node* _internal_add_pk_attrs(); - public: - const ::pg_query::Node& pk_attrs(int index) const; - ::pg_query::Node* add_pk_attrs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - pk_attrs() const; - - // repeated .pg_query.Node fk_del_set_cols = 26 [json_name = "fk_del_set_cols"]; - int fk_del_set_cols_size() const; - private: - int _internal_fk_del_set_cols_size() const; - public: - void clear_fk_del_set_cols(); - ::pg_query::Node* mutable_fk_del_set_cols(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_fk_del_set_cols(); - private: - const ::pg_query::Node& _internal_fk_del_set_cols(int index) const; - ::pg_query::Node* _internal_add_fk_del_set_cols(); - public: - const ::pg_query::Node& fk_del_set_cols(int index) const; - ::pg_query::Node* add_fk_del_set_cols(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - fk_del_set_cols() const; - - // repeated .pg_query.Node old_conpfeqop = 27 [json_name = "old_conpfeqop"]; - int old_conpfeqop_size() const; - private: - int _internal_old_conpfeqop_size() const; - public: - void clear_old_conpfeqop(); - ::pg_query::Node* mutable_old_conpfeqop(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_old_conpfeqop(); - private: - const ::pg_query::Node& _internal_old_conpfeqop(int index) const; - ::pg_query::Node* _internal_add_old_conpfeqop(); - public: - const ::pg_query::Node& old_conpfeqop(int index) const; - ::pg_query::Node* add_old_conpfeqop(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - old_conpfeqop() const; - - // string conname = 2 [json_name = "conname"]; - void clear_conname(); - const std::string& conname() const; - template - void set_conname(ArgT0&& arg0, ArgT... args); - std::string* mutable_conname(); - PROTOBUF_NODISCARD std::string* release_conname(); - void set_allocated_conname(std::string* conname); - private: - const std::string& _internal_conname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_conname(const std::string& value); - std::string* _internal_mutable_conname(); - public: - - // string cooked_expr = 8 [json_name = "cooked_expr"]; - void clear_cooked_expr(); - const std::string& cooked_expr() const; - template - void set_cooked_expr(ArgT0&& arg0, ArgT... args); - std::string* mutable_cooked_expr(); - PROTOBUF_NODISCARD std::string* release_cooked_expr(); - void set_allocated_cooked_expr(std::string* cooked_expr); - private: - const std::string& _internal_cooked_expr() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_cooked_expr(const std::string& value); - std::string* _internal_mutable_cooked_expr(); - public: - - // string generated_when = 9 [json_name = "generated_when"]; - void clear_generated_when(); - const std::string& generated_when() const; - template - void set_generated_when(ArgT0&& arg0, ArgT... args); - std::string* mutable_generated_when(); - PROTOBUF_NODISCARD std::string* release_generated_when(); - void set_allocated_generated_when(std::string* generated_when); - private: - const std::string& _internal_generated_when() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_generated_when(const std::string& value); - std::string* _internal_mutable_generated_when(); - public: - - // string indexname = 15 [json_name = "indexname"]; - void clear_indexname(); - const std::string& indexname() const; - template - void set_indexname(ArgT0&& arg0, ArgT... args); - std::string* mutable_indexname(); - PROTOBUF_NODISCARD std::string* release_indexname(); - void set_allocated_indexname(std::string* indexname); - private: - const std::string& _internal_indexname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_indexname(const std::string& value); - std::string* _internal_mutable_indexname(); - public: - - // string indexspace = 16 [json_name = "indexspace"]; - void clear_indexspace(); - const std::string& indexspace() const; - template - void set_indexspace(ArgT0&& arg0, ArgT... args); - std::string* mutable_indexspace(); - PROTOBUF_NODISCARD std::string* release_indexspace(); - void set_allocated_indexspace(std::string* indexspace); - private: - const std::string& _internal_indexspace() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_indexspace(const std::string& value); - std::string* _internal_mutable_indexspace(); - public: - - // string access_method = 18 [json_name = "access_method"]; - void clear_access_method(); - const std::string& access_method() const; - template - void set_access_method(ArgT0&& arg0, ArgT... args); - std::string* mutable_access_method(); - PROTOBUF_NODISCARD std::string* release_access_method(); - void set_allocated_access_method(std::string* access_method); + // repeated .pg_query.Node opnos = 3 [json_name = "opnos"]; + int opnos_size() const; private: - const std::string& _internal_access_method() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_access_method(const std::string& value); - std::string* _internal_mutable_access_method(); - public: + int _internal_opnos_size() const; - // string fk_matchtype = 23 [json_name = "fk_matchtype"]; - void clear_fk_matchtype(); - const std::string& fk_matchtype() const; - template - void set_fk_matchtype(ArgT0&& arg0, ArgT... args); - std::string* mutable_fk_matchtype(); - PROTOBUF_NODISCARD std::string* release_fk_matchtype(); - void set_allocated_fk_matchtype(std::string* fk_matchtype); - private: - const std::string& _internal_fk_matchtype() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_fk_matchtype(const std::string& value); - std::string* _internal_mutable_fk_matchtype(); public: - - // string fk_upd_action = 24 [json_name = "fk_upd_action"]; - void clear_fk_upd_action(); - const std::string& fk_upd_action() const; - template - void set_fk_upd_action(ArgT0&& arg0, ArgT... args); - std::string* mutable_fk_upd_action(); - PROTOBUF_NODISCARD std::string* release_fk_upd_action(); - void set_allocated_fk_upd_action(std::string* fk_upd_action); + void clear_opnos() ; + ::pg_query::Node* mutable_opnos(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opnos(); private: - const std::string& _internal_fk_upd_action() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_fk_upd_action(const std::string& value); - std::string* _internal_mutable_fk_upd_action(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opnos() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opnos(); public: - - // string fk_del_action = 25 [json_name = "fk_del_action"]; - void clear_fk_del_action(); - const std::string& fk_del_action() const; - template - void set_fk_del_action(ArgT0&& arg0, ArgT... args); - std::string* mutable_fk_del_action(); - PROTOBUF_NODISCARD std::string* release_fk_del_action(); - void set_allocated_fk_del_action(std::string* fk_del_action); + const ::pg_query::Node& opnos(int index) const; + ::pg_query::Node* add_opnos(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opnos() const; + // repeated .pg_query.Node opfamilies = 4 [json_name = "opfamilies"]; + int opfamilies_size() const; private: - const std::string& _internal_fk_del_action() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_fk_del_action(const std::string& value); - std::string* _internal_mutable_fk_del_action(); - public: + int _internal_opfamilies_size() const; - // .pg_query.Node raw_expr = 7 [json_name = "raw_expr"]; - bool has_raw_expr() const; - private: - bool _internal_has_raw_expr() const; - public: - void clear_raw_expr(); - const ::pg_query::Node& raw_expr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_raw_expr(); - ::pg_query::Node* mutable_raw_expr(); - void set_allocated_raw_expr(::pg_query::Node* raw_expr); - private: - const ::pg_query::Node& _internal_raw_expr() const; - ::pg_query::Node* _internal_mutable_raw_expr(); public: - void unsafe_arena_set_allocated_raw_expr( - ::pg_query::Node* raw_expr); - ::pg_query::Node* unsafe_arena_release_raw_expr(); - - // .pg_query.Node where_clause = 19 [json_name = "where_clause"]; - bool has_where_clause() const; + void clear_opfamilies() ; + ::pg_query::Node* mutable_opfamilies(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_opfamilies(); private: - bool _internal_has_where_clause() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_opfamilies() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_opfamilies(); public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); + const ::pg_query::Node& opfamilies(int index) const; + ::pg_query::Node* add_opfamilies(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + opfamilies() const; + // repeated .pg_query.Node inputcollids = 5 [json_name = "inputcollids"]; + int inputcollids_size() const; private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); - public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); + int _internal_inputcollids_size() const; - // .pg_query.RangeVar pktable = 20 [json_name = "pktable"]; - bool has_pktable() const; - private: - bool _internal_has_pktable() const; public: - void clear_pktable(); - const ::pg_query::RangeVar& pktable() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_pktable(); - ::pg_query::RangeVar* mutable_pktable(); - void set_allocated_pktable(::pg_query::RangeVar* pktable); + void clear_inputcollids() ; + ::pg_query::Node* mutable_inputcollids(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_inputcollids(); private: - const ::pg_query::RangeVar& _internal_pktable() const; - ::pg_query::RangeVar* _internal_mutable_pktable(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_inputcollids() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_inputcollids(); public: - void unsafe_arena_set_allocated_pktable( - ::pg_query::RangeVar* pktable); - ::pg_query::RangeVar* unsafe_arena_release_pktable(); - - // .pg_query.ConstrType contype = 1 [json_name = "contype"]; - void clear_contype(); - ::pg_query::ConstrType contype() const; - void set_contype(::pg_query::ConstrType value); + const ::pg_query::Node& inputcollids(int index) const; + ::pg_query::Node* add_inputcollids(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + inputcollids() const; + // repeated .pg_query.Node largs = 6 [json_name = "largs"]; + int largs_size() const; private: - ::pg_query::ConstrType _internal_contype() const; - void _internal_set_contype(::pg_query::ConstrType value); - public: + int _internal_largs_size() const; - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: - - // bool deferrable = 3 [json_name = "deferrable"]; - void clear_deferrable(); - bool deferrable() const; - void set_deferrable(bool value); + void clear_largs() ; + ::pg_query::Node* mutable_largs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_largs(); private: - bool _internal_deferrable() const; - void _internal_set_deferrable(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_largs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_largs(); public: - - // bool initdeferred = 4 [json_name = "initdeferred"]; - void clear_initdeferred(); - bool initdeferred() const; - void set_initdeferred(bool value); + const ::pg_query::Node& largs(int index) const; + ::pg_query::Node* add_largs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + largs() const; + // repeated .pg_query.Node rargs = 7 [json_name = "rargs"]; + int rargs_size() const; private: - bool _internal_initdeferred() const; - void _internal_set_initdeferred(bool value); - public: + int _internal_rargs_size() const; - // bool is_no_inherit = 6 [json_name = "is_no_inherit"]; - void clear_is_no_inherit(); - bool is_no_inherit() const; - void set_is_no_inherit(bool value); - private: - bool _internal_is_no_inherit() const; - void _internal_set_is_no_inherit(bool value); public: - - // bool nulls_not_distinct = 10 [json_name = "nulls_not_distinct"]; - void clear_nulls_not_distinct(); - bool nulls_not_distinct() const; - void set_nulls_not_distinct(bool value); + void clear_rargs() ; + ::pg_query::Node* mutable_rargs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_rargs(); private: - bool _internal_nulls_not_distinct() const; - void _internal_set_nulls_not_distinct(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_rargs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_rargs(); public: + const ::pg_query::Node& rargs(int index) const; + ::pg_query::Node* add_rargs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + rargs() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // bool reset_default_tblspc = 17 [json_name = "reset_default_tblspc"]; - void clear_reset_default_tblspc(); - bool reset_default_tblspc() const; - void set_reset_default_tblspc(bool value); private: - bool _internal_reset_default_tblspc() const; - void _internal_set_reset_default_tblspc(bool value); - public: + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - // bool skip_validation = 29 [json_name = "skip_validation"]; - void clear_skip_validation(); - bool skip_validation() const; - void set_skip_validation(bool value); - private: - bool _internal_skip_validation() const; - void _internal_set_skip_validation(bool value); public: + // .pg_query.RowCompareType rctype = 2 [json_name = "rctype"]; + void clear_rctype() ; + ::pg_query::RowCompareType rctype() const; + void set_rctype(::pg_query::RowCompareType value); - // bool initially_valid = 30 [json_name = "initially_valid"]; - void clear_initially_valid(); - bool initially_valid() const; - void set_initially_valid(bool value); private: - bool _internal_initially_valid() const; - void _internal_set_initially_valid(bool value); - public: + ::pg_query::RowCompareType _internal_rctype() const; + void _internal_set_rctype(::pg_query::RowCompareType value); - // uint32 old_pktable_oid = 28 [json_name = "old_pktable_oid"]; - void clear_old_pktable_oid(); - uint32_t old_pktable_oid() const; - void set_old_pktable_oid(uint32_t value); - private: - uint32_t _internal_old_pktable_oid() const; - void _internal_set_old_pktable_oid(uint32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.Constraint) + // @@protoc_insertion_point(class_scope:pg_query.RowCompareExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 6, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > keys_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > including_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > exclusions_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > options_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > fk_attrs_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > pk_attrs_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > fk_del_set_cols_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > old_conpfeqop_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr conname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cooked_expr_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr generated_when_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr indexname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr indexspace_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr access_method_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr fk_matchtype_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr fk_upd_action_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr fk_del_action_; - ::pg_query::Node* raw_expr_; - ::pg_query::Node* where_clause_; - ::pg_query::RangeVar* pktable_; - int contype_; - int32_t location_; - bool deferrable_; - bool initdeferred_; - bool is_no_inherit_; - bool nulls_not_distinct_; - bool reset_default_tblspc_; - bool skip_validation_; - bool initially_valid_; - uint32_t old_pktable_oid_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opnos_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > opfamilies_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > inputcollids_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > largs_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > rargs_; + ::pg_query::Node* xpr_; + int rctype_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class DefElem final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.DefElem) */ { +class RowExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RowExpr) */ { public: - inline DefElem() : DefElem(nullptr) {} - ~DefElem() override; - explicit PROTOBUF_CONSTEXPR DefElem(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RowExpr() : RowExpr(nullptr) {} + ~RowExpr() override; + template + explicit PROTOBUF_CONSTEXPR RowExpr(::google::protobuf::internal::ConstantInitialized); - DefElem(const DefElem& from); - DefElem(DefElem&& from) noexcept - : DefElem() { + inline RowExpr(const RowExpr& from) + : RowExpr(nullptr, from) {} + RowExpr(RowExpr&& from) noexcept + : RowExpr() { *this = ::std::move(from); } - inline DefElem& operator=(const DefElem& from) { + inline RowExpr& operator=(const RowExpr& from) { CopyFrom(from); return *this; } - inline DefElem& operator=(DefElem&& from) noexcept { + inline RowExpr& operator=(RowExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -53439,208 +62611,254 @@ class DefElem final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const DefElem& default_instance() { + static const RowExpr& default_instance() { return *internal_default_instance(); } - static inline const DefElem* internal_default_instance() { - return reinterpret_cast( - &_DefElem_default_instance_); + static inline const RowExpr* internal_default_instance() { + return reinterpret_cast( + &_RowExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 206; + 43; - friend void swap(DefElem& a, DefElem& b) { + friend void swap(RowExpr& a, RowExpr& b) { a.Swap(&b); } - inline void Swap(DefElem* other) { + inline void Swap(RowExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(DefElem* other) { + void UnsafeArenaSwap(RowExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - DefElem* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RowExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const DefElem& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const DefElem& from) { - DefElem::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RowExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RowExpr& from) { + RowExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(DefElem* other); + void InternalSwap(RowExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.DefElem"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RowExpr"; } protected: - explicit DefElem(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RowExpr(::google::protobuf::Arena* arena); + RowExpr(::google::protobuf::Arena* arena, const RowExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kDefnamespaceFieldNumber = 1, - kDefnameFieldNumber = 2, - kArgFieldNumber = 3, - kDefactionFieldNumber = 4, - kLocationFieldNumber = 5, + kArgsFieldNumber = 2, + kColnamesFieldNumber = 5, + kXprFieldNumber = 1, + kRowTypeidFieldNumber = 3, + kRowFormatFieldNumber = 4, + kLocationFieldNumber = 6, }; - // string defnamespace = 1 [json_name = "defnamespace"]; - void clear_defnamespace(); - const std::string& defnamespace() const; - template - void set_defnamespace(ArgT0&& arg0, ArgT... args); - std::string* mutable_defnamespace(); - PROTOBUF_NODISCARD std::string* release_defnamespace(); - void set_allocated_defnamespace(std::string* defnamespace); + // repeated .pg_query.Node args = 2 [json_name = "args"]; + int args_size() const; private: - const std::string& _internal_defnamespace() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_defnamespace(const std::string& value); - std::string* _internal_mutable_defnamespace(); - public: + int _internal_args_size() const; - // string defname = 2 [json_name = "defname"]; - void clear_defname(); - const std::string& defname() const; - template - void set_defname(ArgT0&& arg0, ArgT... args); - std::string* mutable_defname(); - PROTOBUF_NODISCARD std::string* release_defname(); - void set_allocated_defname(std::string* defname); + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const std::string& _internal_defname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_defname(const std::string& value); - std::string* _internal_mutable_defname(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // repeated .pg_query.Node colnames = 5 [json_name = "colnames"]; + int colnames_size() const; + private: + int _internal_colnames_size() const; - // .pg_query.Node arg = 3 [json_name = "arg"]; - bool has_arg() const; + public: + void clear_colnames() ; + ::pg_query::Node* mutable_colnames(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_colnames(); private: - bool _internal_has_arg() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_colnames() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_colnames(); public: - void clear_arg(); - const ::pg_query::Node& arg() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); - ::pg_query::Node* mutable_arg(); - void set_allocated_arg(::pg_query::Node* arg); + const ::pg_query::Node& colnames(int index) const; + ::pg_query::Node* add_colnames(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + colnames() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: - const ::pg_query::Node& _internal_arg() const; - ::pg_query::Node* _internal_mutable_arg(); + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg); - ::pg_query::Node* unsafe_arena_release_arg(); + // uint32 row_typeid = 3 [json_name = "row_typeid"]; + void clear_row_typeid() ; + ::uint32_t row_typeid() const; + void set_row_typeid(::uint32_t value); - // .pg_query.DefElemAction defaction = 4 [json_name = "defaction"]; - void clear_defaction(); - ::pg_query::DefElemAction defaction() const; - void set_defaction(::pg_query::DefElemAction value); private: - ::pg_query::DefElemAction _internal_defaction() const; - void _internal_set_defaction(::pg_query::DefElemAction value); + ::uint32_t _internal_row_typeid() const; + void _internal_set_row_typeid(::uint32_t value); + public: + // .pg_query.CoercionForm row_format = 4 [json_name = "row_format"]; + void clear_row_format() ; + ::pg_query::CoercionForm row_format() const; + void set_row_format(::pg_query::CoercionForm value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + ::pg_query::CoercionForm _internal_row_format() const; + void _internal_set_row_format(::pg_query::CoercionForm value); + public: + // int32 location = 6 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.DefElem) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.RowExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr defnamespace_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr defname_; - ::pg_query::Node* arg_; - int defaction_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > colnames_; + ::pg_query::Node* xpr_; + ::uint32_t row_typeid_; + int row_format_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RangeTblEntry final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTblEntry) */ { +class RuleStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.RuleStmt) */ { public: - inline RangeTblEntry() : RangeTblEntry(nullptr) {} - ~RangeTblEntry() override; - explicit PROTOBUF_CONSTEXPR RangeTblEntry(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RuleStmt() : RuleStmt(nullptr) {} + ~RuleStmt() override; + template + explicit PROTOBUF_CONSTEXPR RuleStmt(::google::protobuf::internal::ConstantInitialized); - RangeTblEntry(const RangeTblEntry& from); - RangeTblEntry(RangeTblEntry&& from) noexcept - : RangeTblEntry() { + inline RuleStmt(const RuleStmt& from) + : RuleStmt(nullptr, from) {} + RuleStmt(RuleStmt&& from) noexcept + : RuleStmt() { *this = ::std::move(from); } - inline RangeTblEntry& operator=(const RangeTblEntry& from) { + inline RuleStmt& operator=(const RuleStmt& from) { CopyFrom(from); return *this; } - inline RangeTblEntry& operator=(RangeTblEntry&& from) noexcept { + inline RuleStmt& operator=(RuleStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -53650,747 +62868,269 @@ class RangeTblEntry final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RangeTblEntry& default_instance() { + static const RuleStmt& default_instance() { return *internal_default_instance(); } - static inline const RangeTblEntry* internal_default_instance() { - return reinterpret_cast( - &_RangeTblEntry_default_instance_); + static inline const RuleStmt* internal_default_instance() { + return reinterpret_cast( + &_RuleStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 207; + 210; - friend void swap(RangeTblEntry& a, RangeTblEntry& b) { + friend void swap(RuleStmt& a, RuleStmt& b) { a.Swap(&b); } - inline void Swap(RangeTblEntry* other) { + inline void Swap(RuleStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RangeTblEntry* other) { + void UnsafeArenaSwap(RuleStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RangeTblEntry* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + RuleStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RangeTblEntry& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RangeTblEntry& from) { - RangeTblEntry::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RuleStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const RuleStmt& from) { + RuleStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RangeTblEntry* other); + void InternalSwap(RuleStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RangeTblEntry"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.RuleStmt"; } protected: - explicit RangeTblEntry(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit RuleStmt(::google::protobuf::Arena* arena); + RuleStmt(::google::protobuf::Arena* arena, const RuleStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kJoinaliasvarsFieldNumber = 10, - kJoinleftcolsFieldNumber = 11, - kJoinrightcolsFieldNumber = 12, - kFunctionsFieldNumber = 14, - kValuesListsFieldNumber = 17, - kColtypesFieldNumber = 21, - kColtypmodsFieldNumber = 22, - kColcollationsFieldNumber = 23, - kSelectedColsFieldNumber = 33, - kInsertedColsFieldNumber = 34, - kUpdatedColsFieldNumber = 35, - kExtraUpdatedColsFieldNumber = 36, - kSecurityQualsFieldNumber = 37, - kRelkindFieldNumber = 3, - kCtenameFieldNumber = 18, - kEnrnameFieldNumber = 24, - kTablesampleFieldNumber = 5, - kSubqueryFieldNumber = 6, - kJoinUsingAliasFieldNumber = 13, - kTablefuncFieldNumber = 16, - kAliasFieldNumber = 26, - kErefFieldNumber = 27, - kRtekindFieldNumber = 1, - kRelidFieldNumber = 2, - kRellockmodeFieldNumber = 4, - kJointypeFieldNumber = 8, - kJoinmergedcolsFieldNumber = 9, - kSecurityBarrierFieldNumber = 7, - kFuncordinalityFieldNumber = 15, - kSelfReferenceFieldNumber = 20, - kLateralFieldNumber = 28, - kEnrtuplesFieldNumber = 25, - kCtelevelsupFieldNumber = 19, - kInhFieldNumber = 29, - kInFromClFieldNumber = 30, - kRequiredPermsFieldNumber = 31, - kCheckAsUserFieldNumber = 32, - }; - // repeated .pg_query.Node joinaliasvars = 10 [json_name = "joinaliasvars"]; - int joinaliasvars_size() const; - private: - int _internal_joinaliasvars_size() const; - public: - void clear_joinaliasvars(); - ::pg_query::Node* mutable_joinaliasvars(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_joinaliasvars(); - private: - const ::pg_query::Node& _internal_joinaliasvars(int index) const; - ::pg_query::Node* _internal_add_joinaliasvars(); - public: - const ::pg_query::Node& joinaliasvars(int index) const; - ::pg_query::Node* add_joinaliasvars(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - joinaliasvars() const; - - // repeated .pg_query.Node joinleftcols = 11 [json_name = "joinleftcols"]; - int joinleftcols_size() const; - private: - int _internal_joinleftcols_size() const; - public: - void clear_joinleftcols(); - ::pg_query::Node* mutable_joinleftcols(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_joinleftcols(); - private: - const ::pg_query::Node& _internal_joinleftcols(int index) const; - ::pg_query::Node* _internal_add_joinleftcols(); - public: - const ::pg_query::Node& joinleftcols(int index) const; - ::pg_query::Node* add_joinleftcols(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - joinleftcols() const; - - // repeated .pg_query.Node joinrightcols = 12 [json_name = "joinrightcols"]; - int joinrightcols_size() const; - private: - int _internal_joinrightcols_size() const; - public: - void clear_joinrightcols(); - ::pg_query::Node* mutable_joinrightcols(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_joinrightcols(); - private: - const ::pg_query::Node& _internal_joinrightcols(int index) const; - ::pg_query::Node* _internal_add_joinrightcols(); - public: - const ::pg_query::Node& joinrightcols(int index) const; - ::pg_query::Node* add_joinrightcols(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - joinrightcols() const; - - // repeated .pg_query.Node functions = 14 [json_name = "functions"]; - int functions_size() const; - private: - int _internal_functions_size() const; - public: - void clear_functions(); - ::pg_query::Node* mutable_functions(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_functions(); - private: - const ::pg_query::Node& _internal_functions(int index) const; - ::pg_query::Node* _internal_add_functions(); - public: - const ::pg_query::Node& functions(int index) const; - ::pg_query::Node* add_functions(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - functions() const; - - // repeated .pg_query.Node values_lists = 17 [json_name = "values_lists"]; - int values_lists_size() const; - private: - int _internal_values_lists_size() const; - public: - void clear_values_lists(); - ::pg_query::Node* mutable_values_lists(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_values_lists(); - private: - const ::pg_query::Node& _internal_values_lists(int index) const; - ::pg_query::Node* _internal_add_values_lists(); - public: - const ::pg_query::Node& values_lists(int index) const; - ::pg_query::Node* add_values_lists(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - values_lists() const; - - // repeated .pg_query.Node coltypes = 21 [json_name = "coltypes"]; - int coltypes_size() const; - private: - int _internal_coltypes_size() const; - public: - void clear_coltypes(); - ::pg_query::Node* mutable_coltypes(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_coltypes(); - private: - const ::pg_query::Node& _internal_coltypes(int index) const; - ::pg_query::Node* _internal_add_coltypes(); - public: - const ::pg_query::Node& coltypes(int index) const; - ::pg_query::Node* add_coltypes(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - coltypes() const; - - // repeated .pg_query.Node coltypmods = 22 [json_name = "coltypmods"]; - int coltypmods_size() const; - private: - int _internal_coltypmods_size() const; - public: - void clear_coltypmods(); - ::pg_query::Node* mutable_coltypmods(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_coltypmods(); - private: - const ::pg_query::Node& _internal_coltypmods(int index) const; - ::pg_query::Node* _internal_add_coltypmods(); - public: - const ::pg_query::Node& coltypmods(int index) const; - ::pg_query::Node* add_coltypmods(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - coltypmods() const; - - // repeated .pg_query.Node colcollations = 23 [json_name = "colcollations"]; - int colcollations_size() const; - private: - int _internal_colcollations_size() const; - public: - void clear_colcollations(); - ::pg_query::Node* mutable_colcollations(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_colcollations(); - private: - const ::pg_query::Node& _internal_colcollations(int index) const; - ::pg_query::Node* _internal_add_colcollations(); - public: - const ::pg_query::Node& colcollations(int index) const; - ::pg_query::Node* add_colcollations(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - colcollations() const; - - // repeated uint64 selected_cols = 33 [json_name = "selectedCols"]; - int selected_cols_size() const; - private: - int _internal_selected_cols_size() const; - public: - void clear_selected_cols(); - private: - uint64_t _internal_selected_cols(int index) const; - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - _internal_selected_cols() const; - void _internal_add_selected_cols(uint64_t value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - _internal_mutable_selected_cols(); - public: - uint64_t selected_cols(int index) const; - void set_selected_cols(int index, uint64_t value); - void add_selected_cols(uint64_t value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - selected_cols() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - mutable_selected_cols(); - - // repeated uint64 inserted_cols = 34 [json_name = "insertedCols"]; - int inserted_cols_size() const; - private: - int _internal_inserted_cols_size() const; - public: - void clear_inserted_cols(); - private: - uint64_t _internal_inserted_cols(int index) const; - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - _internal_inserted_cols() const; - void _internal_add_inserted_cols(uint64_t value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - _internal_mutable_inserted_cols(); - public: - uint64_t inserted_cols(int index) const; - void set_inserted_cols(int index, uint64_t value); - void add_inserted_cols(uint64_t value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - inserted_cols() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - mutable_inserted_cols(); - - // repeated uint64 updated_cols = 35 [json_name = "updatedCols"]; - int updated_cols_size() const; - private: - int _internal_updated_cols_size() const; - public: - void clear_updated_cols(); - private: - uint64_t _internal_updated_cols(int index) const; - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - _internal_updated_cols() const; - void _internal_add_updated_cols(uint64_t value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - _internal_mutable_updated_cols(); - public: - uint64_t updated_cols(int index) const; - void set_updated_cols(int index, uint64_t value); - void add_updated_cols(uint64_t value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - updated_cols() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - mutable_updated_cols(); - - // repeated uint64 extra_updated_cols = 36 [json_name = "extraUpdatedCols"]; - int extra_updated_cols_size() const; - private: - int _internal_extra_updated_cols_size() const; - public: - void clear_extra_updated_cols(); - private: - uint64_t _internal_extra_updated_cols(int index) const; - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - _internal_extra_updated_cols() const; - void _internal_add_extra_updated_cols(uint64_t value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - _internal_mutable_extra_updated_cols(); - public: - uint64_t extra_updated_cols(int index) const; - void set_extra_updated_cols(int index, uint64_t value); - void add_extra_updated_cols(uint64_t value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - extra_updated_cols() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - mutable_extra_updated_cols(); - - // repeated .pg_query.Node security_quals = 37 [json_name = "securityQuals"]; - int security_quals_size() const; - private: - int _internal_security_quals_size() const; - public: - void clear_security_quals(); - ::pg_query::Node* mutable_security_quals(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_security_quals(); - private: - const ::pg_query::Node& _internal_security_quals(int index) const; - ::pg_query::Node* _internal_add_security_quals(); - public: - const ::pg_query::Node& security_quals(int index) const; - ::pg_query::Node* add_security_quals(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - security_quals() const; - - // string relkind = 3 [json_name = "relkind"]; - void clear_relkind(); - const std::string& relkind() const; - template - void set_relkind(ArgT0&& arg0, ArgT... args); - std::string* mutable_relkind(); - PROTOBUF_NODISCARD std::string* release_relkind(); - void set_allocated_relkind(std::string* relkind); - private: - const std::string& _internal_relkind() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_relkind(const std::string& value); - std::string* _internal_mutable_relkind(); - public: - - // string ctename = 18 [json_name = "ctename"]; - void clear_ctename(); - const std::string& ctename() const; - template - void set_ctename(ArgT0&& arg0, ArgT... args); - std::string* mutable_ctename(); - PROTOBUF_NODISCARD std::string* release_ctename(); - void set_allocated_ctename(std::string* ctename); - private: - const std::string& _internal_ctename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_ctename(const std::string& value); - std::string* _internal_mutable_ctename(); - public: - - // string enrname = 24 [json_name = "enrname"]; - void clear_enrname(); - const std::string& enrname() const; - template - void set_enrname(ArgT0&& arg0, ArgT... args); - std::string* mutable_enrname(); - PROTOBUF_NODISCARD std::string* release_enrname(); - void set_allocated_enrname(std::string* enrname); - private: - const std::string& _internal_enrname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_enrname(const std::string& value); - std::string* _internal_mutable_enrname(); - public: - - // .pg_query.TableSampleClause tablesample = 5 [json_name = "tablesample"]; - bool has_tablesample() const; - private: - bool _internal_has_tablesample() const; - public: - void clear_tablesample(); - const ::pg_query::TableSampleClause& tablesample() const; - PROTOBUF_NODISCARD ::pg_query::TableSampleClause* release_tablesample(); - ::pg_query::TableSampleClause* mutable_tablesample(); - void set_allocated_tablesample(::pg_query::TableSampleClause* tablesample); - private: - const ::pg_query::TableSampleClause& _internal_tablesample() const; - ::pg_query::TableSampleClause* _internal_mutable_tablesample(); - public: - void unsafe_arena_set_allocated_tablesample( - ::pg_query::TableSampleClause* tablesample); - ::pg_query::TableSampleClause* unsafe_arena_release_tablesample(); - - // .pg_query.Query subquery = 6 [json_name = "subquery"]; - bool has_subquery() const; - private: - bool _internal_has_subquery() const; - public: - void clear_subquery(); - const ::pg_query::Query& subquery() const; - PROTOBUF_NODISCARD ::pg_query::Query* release_subquery(); - ::pg_query::Query* mutable_subquery(); - void set_allocated_subquery(::pg_query::Query* subquery); - private: - const ::pg_query::Query& _internal_subquery() const; - ::pg_query::Query* _internal_mutable_subquery(); - public: - void unsafe_arena_set_allocated_subquery( - ::pg_query::Query* subquery); - ::pg_query::Query* unsafe_arena_release_subquery(); - - // .pg_query.Alias join_using_alias = 13 [json_name = "join_using_alias"]; - bool has_join_using_alias() const; - private: - bool _internal_has_join_using_alias() const; - public: - void clear_join_using_alias(); - const ::pg_query::Alias& join_using_alias() const; - PROTOBUF_NODISCARD ::pg_query::Alias* release_join_using_alias(); - ::pg_query::Alias* mutable_join_using_alias(); - void set_allocated_join_using_alias(::pg_query::Alias* join_using_alias); - private: - const ::pg_query::Alias& _internal_join_using_alias() const; - ::pg_query::Alias* _internal_mutable_join_using_alias(); - public: - void unsafe_arena_set_allocated_join_using_alias( - ::pg_query::Alias* join_using_alias); - ::pg_query::Alias* unsafe_arena_release_join_using_alias(); - - // .pg_query.TableFunc tablefunc = 16 [json_name = "tablefunc"]; - bool has_tablefunc() const; - private: - bool _internal_has_tablefunc() const; - public: - void clear_tablefunc(); - const ::pg_query::TableFunc& tablefunc() const; - PROTOBUF_NODISCARD ::pg_query::TableFunc* release_tablefunc(); - ::pg_query::TableFunc* mutable_tablefunc(); - void set_allocated_tablefunc(::pg_query::TableFunc* tablefunc); - private: - const ::pg_query::TableFunc& _internal_tablefunc() const; - ::pg_query::TableFunc* _internal_mutable_tablefunc(); - public: - void unsafe_arena_set_allocated_tablefunc( - ::pg_query::TableFunc* tablefunc); - ::pg_query::TableFunc* unsafe_arena_release_tablefunc(); - - // .pg_query.Alias alias = 26 [json_name = "alias"]; - bool has_alias() const; - private: - bool _internal_has_alias() const; - public: - void clear_alias(); - const ::pg_query::Alias& alias() const; - PROTOBUF_NODISCARD ::pg_query::Alias* release_alias(); - ::pg_query::Alias* mutable_alias(); - void set_allocated_alias(::pg_query::Alias* alias); - private: - const ::pg_query::Alias& _internal_alias() const; - ::pg_query::Alias* _internal_mutable_alias(); - public: - void unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias); - ::pg_query::Alias* unsafe_arena_release_alias(); - - // .pg_query.Alias eref = 27 [json_name = "eref"]; - bool has_eref() const; - private: - bool _internal_has_eref() const; - public: - void clear_eref(); - const ::pg_query::Alias& eref() const; - PROTOBUF_NODISCARD ::pg_query::Alias* release_eref(); - ::pg_query::Alias* mutable_eref(); - void set_allocated_eref(::pg_query::Alias* eref); - private: - const ::pg_query::Alias& _internal_eref() const; - ::pg_query::Alias* _internal_mutable_eref(); - public: - void unsafe_arena_set_allocated_eref( - ::pg_query::Alias* eref); - ::pg_query::Alias* unsafe_arena_release_eref(); - - // .pg_query.RTEKind rtekind = 1 [json_name = "rtekind"]; - void clear_rtekind(); - ::pg_query::RTEKind rtekind() const; - void set_rtekind(::pg_query::RTEKind value); + kActionsFieldNumber = 6, + kRulenameFieldNumber = 2, + kRelationFieldNumber = 1, + kWhereClauseFieldNumber = 3, + kEventFieldNumber = 4, + kInsteadFieldNumber = 5, + kReplaceFieldNumber = 7, + }; + // repeated .pg_query.Node actions = 6 [json_name = "actions"]; + int actions_size() const; private: - ::pg_query::RTEKind _internal_rtekind() const; - void _internal_set_rtekind(::pg_query::RTEKind value); - public: + int _internal_actions_size() const; - // uint32 relid = 2 [json_name = "relid"]; - void clear_relid(); - uint32_t relid() const; - void set_relid(uint32_t value); - private: - uint32_t _internal_relid() const; - void _internal_set_relid(uint32_t value); public: - - // int32 rellockmode = 4 [json_name = "rellockmode"]; - void clear_rellockmode(); - int32_t rellockmode() const; - void set_rellockmode(int32_t value); + void clear_actions() ; + ::pg_query::Node* mutable_actions(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_actions(); private: - int32_t _internal_rellockmode() const; - void _internal_set_rellockmode(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_actions() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_actions(); public: + const ::pg_query::Node& actions(int index) const; + ::pg_query::Node* add_actions(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + actions() const; + // string rulename = 2 [json_name = "rulename"]; + void clear_rulename() ; + const std::string& rulename() const; + template + void set_rulename(Arg_&& arg, Args_... args); + std::string* mutable_rulename(); + PROTOBUF_NODISCARD std::string* release_rulename(); + void set_allocated_rulename(std::string* value); - // .pg_query.JoinType jointype = 8 [json_name = "jointype"]; - void clear_jointype(); - ::pg_query::JoinType jointype() const; - void set_jointype(::pg_query::JoinType value); private: - ::pg_query::JoinType _internal_jointype() const; - void _internal_set_jointype(::pg_query::JoinType value); - public: + const std::string& _internal_rulename() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_rulename( + const std::string& value); + std::string* _internal_mutable_rulename(); - // int32 joinmergedcols = 9 [json_name = "joinmergedcols"]; - void clear_joinmergedcols(); - int32_t joinmergedcols() const; - void set_joinmergedcols(int32_t value); - private: - int32_t _internal_joinmergedcols() const; - void _internal_set_joinmergedcols(int32_t value); public: + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // bool security_barrier = 7 [json_name = "security_barrier"]; - void clear_security_barrier(); - bool security_barrier() const; - void set_security_barrier(bool value); private: - bool _internal_security_barrier() const; - void _internal_set_security_barrier(bool value); - public: + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); - // bool funcordinality = 15 [json_name = "funcordinality"]; - void clear_funcordinality(); - bool funcordinality() const; - void set_funcordinality(bool value); - private: - bool _internal_funcordinality() const; - void _internal_set_funcordinality(bool value); public: + // .pg_query.Node where_clause = 3 [json_name = "whereClause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); - // bool self_reference = 20 [json_name = "self_reference"]; - void clear_self_reference(); - bool self_reference() const; - void set_self_reference(bool value); private: - bool _internal_self_reference() const; - void _internal_set_self_reference(bool value); - public: + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); - // bool lateral = 28 [json_name = "lateral"]; - void clear_lateral(); - bool lateral() const; - void set_lateral(bool value); - private: - bool _internal_lateral() const; - void _internal_set_lateral(bool value); public: + // .pg_query.CmdType event = 4 [json_name = "event"]; + void clear_event() ; + ::pg_query::CmdType event() const; + void set_event(::pg_query::CmdType value); - // double enrtuples = 25 [json_name = "enrtuples"]; - void clear_enrtuples(); - double enrtuples() const; - void set_enrtuples(double value); private: - double _internal_enrtuples() const; - void _internal_set_enrtuples(double value); - public: + ::pg_query::CmdType _internal_event() const; + void _internal_set_event(::pg_query::CmdType value); - // uint32 ctelevelsup = 19 [json_name = "ctelevelsup"]; - void clear_ctelevelsup(); - uint32_t ctelevelsup() const; - void set_ctelevelsup(uint32_t value); - private: - uint32_t _internal_ctelevelsup() const; - void _internal_set_ctelevelsup(uint32_t value); public: + // bool instead = 5 [json_name = "instead"]; + void clear_instead() ; + bool instead() const; + void set_instead(bool value); - // bool inh = 29 [json_name = "inh"]; - void clear_inh(); - bool inh() const; - void set_inh(bool value); private: - bool _internal_inh() const; - void _internal_set_inh(bool value); - public: + bool _internal_instead() const; + void _internal_set_instead(bool value); - // bool in_from_cl = 30 [json_name = "inFromCl"]; - void clear_in_from_cl(); - bool in_from_cl() const; - void set_in_from_cl(bool value); - private: - bool _internal_in_from_cl() const; - void _internal_set_in_from_cl(bool value); public: + // bool replace = 7 [json_name = "replace"]; + void clear_replace() ; + bool replace() const; + void set_replace(bool value); - // uint32 required_perms = 31 [json_name = "requiredPerms"]; - void clear_required_perms(); - uint32_t required_perms() const; - void set_required_perms(uint32_t value); private: - uint32_t _internal_required_perms() const; - void _internal_set_required_perms(uint32_t value); - public: + bool _internal_replace() const; + void _internal_set_replace(bool value); - // uint32 check_as_user = 32 [json_name = "checkAsUser"]; - void clear_check_as_user(); - uint32_t check_as_user() const; - void set_check_as_user(uint32_t value); - private: - uint32_t _internal_check_as_user() const; - void _internal_set_check_as_user(uint32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.RangeTblEntry) + // @@protoc_insertion_point(class_scope:pg_query.RuleStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 3, + 34, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > joinaliasvars_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > joinleftcols_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > joinrightcols_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > functions_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > values_lists_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > coltypes_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > coltypmods_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > colcollations_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t > selected_cols_; - mutable std::atomic _selected_cols_cached_byte_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t > inserted_cols_; - mutable std::atomic _inserted_cols_cached_byte_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t > updated_cols_; - mutable std::atomic _updated_cols_cached_byte_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t > extra_updated_cols_; - mutable std::atomic _extra_updated_cols_cached_byte_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > security_quals_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr relkind_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr ctename_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr enrname_; - ::pg_query::TableSampleClause* tablesample_; - ::pg_query::Query* subquery_; - ::pg_query::Alias* join_using_alias_; - ::pg_query::TableFunc* tablefunc_; - ::pg_query::Alias* alias_; - ::pg_query::Alias* eref_; - int rtekind_; - uint32_t relid_; - int32_t rellockmode_; - int jointype_; - int32_t joinmergedcols_; - bool security_barrier_; - bool funcordinality_; - bool self_reference_; - bool lateral_; - double enrtuples_; - uint32_t ctelevelsup_; - bool inh_; - bool in_from_cl_; - uint32_t required_perms_; - uint32_t check_as_user_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > actions_; + ::google::protobuf::internal::ArenaStringPtr rulename_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* where_clause_; + int event_; + bool instead_; + bool replace_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RangeTblFunction final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RangeTblFunction) */ { +class SQLValueFunction final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SQLValueFunction) */ { public: - inline RangeTblFunction() : RangeTblFunction(nullptr) {} - ~RangeTblFunction() override; - explicit PROTOBUF_CONSTEXPR RangeTblFunction(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline SQLValueFunction() : SQLValueFunction(nullptr) {} + ~SQLValueFunction() override; + template + explicit PROTOBUF_CONSTEXPR SQLValueFunction(::google::protobuf::internal::ConstantInitialized); - RangeTblFunction(const RangeTblFunction& from); - RangeTblFunction(RangeTblFunction&& from) noexcept - : RangeTblFunction() { + inline SQLValueFunction(const SQLValueFunction& from) + : SQLValueFunction(nullptr, from) {} + SQLValueFunction(SQLValueFunction&& from) noexcept + : SQLValueFunction() { *this = ::std::move(from); } - inline RangeTblFunction& operator=(const RangeTblFunction& from) { + inline SQLValueFunction& operator=(const SQLValueFunction& from) { CopyFrom(from); return *this; } - inline RangeTblFunction& operator=(RangeTblFunction&& from) noexcept { + inline SQLValueFunction& operator=(SQLValueFunction&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -54400,270 +63140,226 @@ class RangeTblFunction final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RangeTblFunction& default_instance() { + static const SQLValueFunction& default_instance() { return *internal_default_instance(); } - static inline const RangeTblFunction* internal_default_instance() { - return reinterpret_cast( - &_RangeTblFunction_default_instance_); + static inline const SQLValueFunction* internal_default_instance() { + return reinterpret_cast( + &_SQLValueFunction_default_instance_); } static constexpr int kIndexInFileMessages = - 208; + 47; - friend void swap(RangeTblFunction& a, RangeTblFunction& b) { + friend void swap(SQLValueFunction& a, SQLValueFunction& b) { a.Swap(&b); } - inline void Swap(RangeTblFunction* other) { + inline void Swap(SQLValueFunction* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RangeTblFunction* other) { + void UnsafeArenaSwap(SQLValueFunction* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RangeTblFunction* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + SQLValueFunction* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RangeTblFunction& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RangeTblFunction& from) { - RangeTblFunction::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SQLValueFunction& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SQLValueFunction& from) { + SQLValueFunction::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RangeTblFunction* other); + void InternalSwap(SQLValueFunction* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RangeTblFunction"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SQLValueFunction"; } protected: - explicit RangeTblFunction(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit SQLValueFunction(::google::protobuf::Arena* arena); + SQLValueFunction(::google::protobuf::Arena* arena, const SQLValueFunction& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kFunccolnamesFieldNumber = 3, - kFunccoltypesFieldNumber = 4, - kFunccoltypmodsFieldNumber = 5, - kFunccolcollationsFieldNumber = 6, - kFuncparamsFieldNumber = 7, - kFuncexprFieldNumber = 1, - kFunccolcountFieldNumber = 2, + kXprFieldNumber = 1, + kOpFieldNumber = 2, + kTypeFieldNumber = 3, + kTypmodFieldNumber = 4, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node funccolnames = 3 [json_name = "funccolnames"]; - int funccolnames_size() const; - private: - int _internal_funccolnames_size() const; - public: - void clear_funccolnames(); - ::pg_query::Node* mutable_funccolnames(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_funccolnames(); - private: - const ::pg_query::Node& _internal_funccolnames(int index) const; - ::pg_query::Node* _internal_add_funccolnames(); - public: - const ::pg_query::Node& funccolnames(int index) const; - ::pg_query::Node* add_funccolnames(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - funccolnames() const; - - // repeated .pg_query.Node funccoltypes = 4 [json_name = "funccoltypes"]; - int funccoltypes_size() const; - private: - int _internal_funccoltypes_size() const; - public: - void clear_funccoltypes(); - ::pg_query::Node* mutable_funccoltypes(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_funccoltypes(); - private: - const ::pg_query::Node& _internal_funccoltypes(int index) const; - ::pg_query::Node* _internal_add_funccoltypes(); - public: - const ::pg_query::Node& funccoltypes(int index) const; - ::pg_query::Node* add_funccoltypes(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - funccoltypes() const; - - // repeated .pg_query.Node funccoltypmods = 5 [json_name = "funccoltypmods"]; - int funccoltypmods_size() const; - private: - int _internal_funccoltypmods_size() const; - public: - void clear_funccoltypmods(); - ::pg_query::Node* mutable_funccoltypmods(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_funccoltypmods(); - private: - const ::pg_query::Node& _internal_funccoltypmods(int index) const; - ::pg_query::Node* _internal_add_funccoltypmods(); - public: - const ::pg_query::Node& funccoltypmods(int index) const; - ::pg_query::Node* add_funccoltypmods(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - funccoltypmods() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // repeated .pg_query.Node funccolcollations = 6 [json_name = "funccolcollations"]; - int funccolcollations_size() const; - private: - int _internal_funccolcollations_size() const; - public: - void clear_funccolcollations(); - ::pg_query::Node* mutable_funccolcollations(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_funccolcollations(); private: - const ::pg_query::Node& _internal_funccolcollations(int index) const; - ::pg_query::Node* _internal_add_funccolcollations(); - public: - const ::pg_query::Node& funccolcollations(int index) const; - ::pg_query::Node* add_funccolcollations(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - funccolcollations() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - // repeated uint64 funcparams = 7 [json_name = "funcparams"]; - int funcparams_size() const; - private: - int _internal_funcparams_size() const; public: - void clear_funcparams(); + // .pg_query.SQLValueFunctionOp op = 2 [json_name = "op"]; + void clear_op() ; + ::pg_query::SQLValueFunctionOp op() const; + void set_op(::pg_query::SQLValueFunctionOp value); + private: - uint64_t _internal_funcparams(int index) const; - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - _internal_funcparams() const; - void _internal_add_funcparams(uint64_t value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - _internal_mutable_funcparams(); + ::pg_query::SQLValueFunctionOp _internal_op() const; + void _internal_set_op(::pg_query::SQLValueFunctionOp value); + public: - uint64_t funcparams(int index) const; - void set_funcparams(int index, uint64_t value); - void add_funcparams(uint64_t value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& - funcparams() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* - mutable_funcparams(); + // uint32 type = 3 [json_name = "type"]; + void clear_type() ; + ::uint32_t type() const; + void set_type(::uint32_t value); - // .pg_query.Node funcexpr = 1 [json_name = "funcexpr"]; - bool has_funcexpr() const; private: - bool _internal_has_funcexpr() const; + ::uint32_t _internal_type() const; + void _internal_set_type(::uint32_t value); + public: - void clear_funcexpr(); - const ::pg_query::Node& funcexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_funcexpr(); - ::pg_query::Node* mutable_funcexpr(); - void set_allocated_funcexpr(::pg_query::Node* funcexpr); + // int32 typmod = 4 [json_name = "typmod"]; + void clear_typmod() ; + ::int32_t typmod() const; + void set_typmod(::int32_t value); + private: - const ::pg_query::Node& _internal_funcexpr() const; - ::pg_query::Node* _internal_mutable_funcexpr(); + ::int32_t _internal_typmod() const; + void _internal_set_typmod(::int32_t value); + public: - void unsafe_arena_set_allocated_funcexpr( - ::pg_query::Node* funcexpr); - ::pg_query::Node* unsafe_arena_release_funcexpr(); + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 funccolcount = 2 [json_name = "funccolcount"]; - void clear_funccolcount(); - int32_t funccolcount() const; - void set_funccolcount(int32_t value); private: - int32_t _internal_funccolcount() const; - void _internal_set_funccolcount(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.RangeTblFunction) + public: + // @@protoc_insertion_point(class_scope:pg_query.SQLValueFunction) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > funccolnames_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > funccoltypes_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > funccoltypmods_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > funccolcollations_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t > funcparams_; - mutable std::atomic _funcparams_cached_byte_size_; - ::pg_query::Node* funcexpr_; - int32_t funccolcount_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* xpr_; + int op_; + ::uint32_t type_; + ::int32_t typmod_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class TableSampleClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.TableSampleClause) */ { +class ScalarArrayOpExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ScalarArrayOpExpr) */ { public: - inline TableSampleClause() : TableSampleClause(nullptr) {} - ~TableSampleClause() override; - explicit PROTOBUF_CONSTEXPR TableSampleClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ScalarArrayOpExpr() : ScalarArrayOpExpr(nullptr) {} + ~ScalarArrayOpExpr() override; + template + explicit PROTOBUF_CONSTEXPR ScalarArrayOpExpr(::google::protobuf::internal::ConstantInitialized); - TableSampleClause(const TableSampleClause& from); - TableSampleClause(TableSampleClause&& from) noexcept - : TableSampleClause() { + inline ScalarArrayOpExpr(const ScalarArrayOpExpr& from) + : ScalarArrayOpExpr(nullptr, from) {} + ScalarArrayOpExpr(ScalarArrayOpExpr&& from) noexcept + : ScalarArrayOpExpr() { *this = ::std::move(from); } - inline TableSampleClause& operator=(const TableSampleClause& from) { + inline ScalarArrayOpExpr& operator=(const ScalarArrayOpExpr& from) { CopyFrom(from); return *this; } - inline TableSampleClause& operator=(TableSampleClause&& from) noexcept { + inline ScalarArrayOpExpr& operator=(ScalarArrayOpExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -54673,185 +63369,246 @@ class TableSampleClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const TableSampleClause& default_instance() { + static const ScalarArrayOpExpr& default_instance() { return *internal_default_instance(); } - static inline const TableSampleClause* internal_default_instance() { - return reinterpret_cast( - &_TableSampleClause_default_instance_); + static inline const ScalarArrayOpExpr* internal_default_instance() { + return reinterpret_cast( + &_ScalarArrayOpExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 209; + 27; - friend void swap(TableSampleClause& a, TableSampleClause& b) { + friend void swap(ScalarArrayOpExpr& a, ScalarArrayOpExpr& b) { a.Swap(&b); } - inline void Swap(TableSampleClause* other) { + inline void Swap(ScalarArrayOpExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(TableSampleClause* other) { + void UnsafeArenaSwap(ScalarArrayOpExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - TableSampleClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ScalarArrayOpExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const TableSampleClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const TableSampleClause& from) { - TableSampleClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ScalarArrayOpExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ScalarArrayOpExpr& from) { + ScalarArrayOpExpr::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(TableSampleClause* other); + void InternalSwap(ScalarArrayOpExpr* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.TableSampleClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ScalarArrayOpExpr"; } protected: - explicit TableSampleClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ScalarArrayOpExpr(::google::protobuf::Arena* arena); + ScalarArrayOpExpr(::google::protobuf::Arena* arena, const ScalarArrayOpExpr& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kArgsFieldNumber = 2, - kRepeatableFieldNumber = 3, - kTsmhandlerFieldNumber = 1, + kArgsFieldNumber = 5, + kXprFieldNumber = 1, + kOpnoFieldNumber = 2, + kUseOrFieldNumber = 3, + kInputcollidFieldNumber = 4, + kLocationFieldNumber = 6, }; - // repeated .pg_query.Node args = 2 [json_name = "args"]; + // repeated .pg_query.Node args = 5 [json_name = "args"]; int args_size() const; private: int _internal_args_size() const; + public: - void clear_args(); + void clear_args() ; ::pg_query::Node* mutable_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_args(); private: - const ::pg_query::Node& _internal_args(int index) const; - ::pg_query::Node* _internal_add_args(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: const ::pg_query::Node& args(int index) const; ::pg_query::Node* add_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& args() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.Node repeatable = 3 [json_name = "repeatable"]; - bool has_repeatable() const; private: - bool _internal_has_repeatable() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_repeatable(); - const ::pg_query::Node& repeatable() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_repeatable(); - ::pg_query::Node* mutable_repeatable(); - void set_allocated_repeatable(::pg_query::Node* repeatable); + // uint32 opno = 2 [json_name = "opno"]; + void clear_opno() ; + ::uint32_t opno() const; + void set_opno(::uint32_t value); + private: - const ::pg_query::Node& _internal_repeatable() const; - ::pg_query::Node* _internal_mutable_repeatable(); + ::uint32_t _internal_opno() const; + void _internal_set_opno(::uint32_t value); + public: - void unsafe_arena_set_allocated_repeatable( - ::pg_query::Node* repeatable); - ::pg_query::Node* unsafe_arena_release_repeatable(); + // bool use_or = 3 [json_name = "useOr"]; + void clear_use_or() ; + bool use_or() const; + void set_use_or(bool value); - // uint32 tsmhandler = 1 [json_name = "tsmhandler"]; - void clear_tsmhandler(); - uint32_t tsmhandler() const; - void set_tsmhandler(uint32_t value); private: - uint32_t _internal_tsmhandler() const; - void _internal_set_tsmhandler(uint32_t value); + bool _internal_use_or() const; + void _internal_set_use_or(bool value); + public: + // uint32 inputcollid = 4 [json_name = "inputcollid"]; + void clear_inputcollid() ; + ::uint32_t inputcollid() const; + void set_inputcollid(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.TableSampleClause) + private: + ::uint32_t _internal_inputcollid() const; + void _internal_set_inputcollid(::uint32_t value); + + public: + // int32 location = 6 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.ScalarArrayOpExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > args_; - ::pg_query::Node* repeatable_; - uint32_t tsmhandler_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* xpr_; + ::uint32_t opno_; + bool use_or_; + ::uint32_t inputcollid_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class WithCheckOption final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.WithCheckOption) */ { +class SecLabelStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SecLabelStmt) */ { public: - inline WithCheckOption() : WithCheckOption(nullptr) {} - ~WithCheckOption() override; - explicit PROTOBUF_CONSTEXPR WithCheckOption(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline SecLabelStmt() : SecLabelStmt(nullptr) {} + ~SecLabelStmt() override; + template + explicit PROTOBUF_CONSTEXPR SecLabelStmt(::google::protobuf::internal::ConstantInitialized); - WithCheckOption(const WithCheckOption& from); - WithCheckOption(WithCheckOption&& from) noexcept - : WithCheckOption() { + inline SecLabelStmt(const SecLabelStmt& from) + : SecLabelStmt(nullptr, from) {} + SecLabelStmt(SecLabelStmt&& from) noexcept + : SecLabelStmt() { *this = ::std::move(from); } - inline WithCheckOption& operator=(const WithCheckOption& from) { + inline SecLabelStmt& operator=(const SecLabelStmt& from) { CopyFrom(from); return *this; } - inline WithCheckOption& operator=(WithCheckOption&& from) noexcept { + inline SecLabelStmt& operator=(SecLabelStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -54861,208 +63618,226 @@ class WithCheckOption final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const WithCheckOption& default_instance() { + static const SecLabelStmt& default_instance() { return *internal_default_instance(); } - static inline const WithCheckOption* internal_default_instance() { - return reinterpret_cast( - &_WithCheckOption_default_instance_); + static inline const SecLabelStmt* internal_default_instance() { + return reinterpret_cast( + &_SecLabelStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 210; + 189; - friend void swap(WithCheckOption& a, WithCheckOption& b) { + friend void swap(SecLabelStmt& a, SecLabelStmt& b) { a.Swap(&b); } - inline void Swap(WithCheckOption* other) { + inline void Swap(SecLabelStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(WithCheckOption* other) { + void UnsafeArenaSwap(SecLabelStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - WithCheckOption* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + SecLabelStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const WithCheckOption& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const WithCheckOption& from) { - WithCheckOption::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SecLabelStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SecLabelStmt& from) { + SecLabelStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(WithCheckOption* other); + void InternalSwap(SecLabelStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.WithCheckOption"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SecLabelStmt"; } protected: - explicit WithCheckOption(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit SecLabelStmt(::google::protobuf::Arena* arena); + SecLabelStmt(::google::protobuf::Arena* arena, const SecLabelStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRelnameFieldNumber = 2, - kPolnameFieldNumber = 3, - kQualFieldNumber = 4, - kKindFieldNumber = 1, - kCascadedFieldNumber = 5, + kProviderFieldNumber = 3, + kLabelFieldNumber = 4, + kObjectFieldNumber = 2, + kObjtypeFieldNumber = 1, }; - // string relname = 2 [json_name = "relname"]; - void clear_relname(); - const std::string& relname() const; - template - void set_relname(ArgT0&& arg0, ArgT... args); - std::string* mutable_relname(); - PROTOBUF_NODISCARD std::string* release_relname(); - void set_allocated_relname(std::string* relname); - private: - const std::string& _internal_relname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_relname(const std::string& value); - std::string* _internal_mutable_relname(); - public: + // string provider = 3 [json_name = "provider"]; + void clear_provider() ; + const std::string& provider() const; + template + void set_provider(Arg_&& arg, Args_... args); + std::string* mutable_provider(); + PROTOBUF_NODISCARD std::string* release_provider(); + void set_allocated_provider(std::string* value); - // string polname = 3 [json_name = "polname"]; - void clear_polname(); - const std::string& polname() const; - template - void set_polname(ArgT0&& arg0, ArgT... args); - std::string* mutable_polname(); - PROTOBUF_NODISCARD std::string* release_polname(); - void set_allocated_polname(std::string* polname); private: - const std::string& _internal_polname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_polname(const std::string& value); - std::string* _internal_mutable_polname(); - public: + const std::string& _internal_provider() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_provider( + const std::string& value); + std::string* _internal_mutable_provider(); - // .pg_query.Node qual = 4 [json_name = "qual"]; - bool has_qual() const; - private: - bool _internal_has_qual() const; public: - void clear_qual(); - const ::pg_query::Node& qual() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_qual(); - ::pg_query::Node* mutable_qual(); - void set_allocated_qual(::pg_query::Node* qual); + // string label = 4 [json_name = "label"]; + void clear_label() ; + const std::string& label() const; + template + void set_label(Arg_&& arg, Args_... args); + std::string* mutable_label(); + PROTOBUF_NODISCARD std::string* release_label(); + void set_allocated_label(std::string* value); + private: - const ::pg_query::Node& _internal_qual() const; - ::pg_query::Node* _internal_mutable_qual(); + const std::string& _internal_label() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_label( + const std::string& value); + std::string* _internal_mutable_label(); + public: - void unsafe_arena_set_allocated_qual( - ::pg_query::Node* qual); - ::pg_query::Node* unsafe_arena_release_qual(); + // .pg_query.Node object = 2 [json_name = "object"]; + bool has_object() const; + void clear_object() ; + const ::pg_query::Node& object() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_object(); + ::pg_query::Node* mutable_object(); + void set_allocated_object(::pg_query::Node* value); + void unsafe_arena_set_allocated_object(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_object(); - // .pg_query.WCOKind kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::WCOKind kind() const; - void set_kind(::pg_query::WCOKind value); private: - ::pg_query::WCOKind _internal_kind() const; - void _internal_set_kind(::pg_query::WCOKind value); + const ::pg_query::Node& _internal_object() const; + ::pg_query::Node* _internal_mutable_object(); + public: + // .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; + void clear_objtype() ; + ::pg_query::ObjectType objtype() const; + void set_objtype(::pg_query::ObjectType value); - // bool cascaded = 5 [json_name = "cascaded"]; - void clear_cascaded(); - bool cascaded() const; - void set_cascaded(bool value); private: - bool _internal_cascaded() const; - void _internal_set_cascaded(bool value); - public: + ::pg_query::ObjectType _internal_objtype() const; + void _internal_set_objtype(::pg_query::ObjectType value); - // @@protoc_insertion_point(class_scope:pg_query.WithCheckOption) + public: + // @@protoc_insertion_point(class_scope:pg_query.SecLabelStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 1, + 43, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr relname_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr polname_; - ::pg_query::Node* qual_; - int kind_; - bool cascaded_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr provider_; + ::google::protobuf::internal::ArenaStringPtr label_; + ::pg_query::Node* object_; + int objtype_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class SortGroupClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.SortGroupClause) */ { +class SelectStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SelectStmt) */ { public: - inline SortGroupClause() : SortGroupClause(nullptr) {} - ~SortGroupClause() override; - explicit PROTOBUF_CONSTEXPR SortGroupClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline SelectStmt() : SelectStmt(nullptr) {} + ~SelectStmt() override; + template + explicit PROTOBUF_CONSTEXPR SelectStmt(::google::protobuf::internal::ConstantInitialized); - SortGroupClause(const SortGroupClause& from); - SortGroupClause(SortGroupClause&& from) noexcept - : SortGroupClause() { + inline SelectStmt(const SelectStmt& from) + : SelectStmt(nullptr, from) {} + SelectStmt(SelectStmt&& from) noexcept + : SelectStmt() { *this = ::std::move(from); } - inline SortGroupClause& operator=(const SortGroupClause& from) { + inline SelectStmt& operator=(const SelectStmt& from) { CopyFrom(from); return *this; } - inline SortGroupClause& operator=(SortGroupClause&& from) noexcept { + inline SelectStmt& operator=(SelectStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -55072,189 +63847,505 @@ class SortGroupClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SortGroupClause& default_instance() { + static const SelectStmt& default_instance() { return *internal_default_instance(); } - static inline const SortGroupClause* internal_default_instance() { - return reinterpret_cast( - &_SortGroupClause_default_instance_); + static inline const SelectStmt* internal_default_instance() { + return reinterpret_cast( + &_SelectStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 211; + 131; - friend void swap(SortGroupClause& a, SortGroupClause& b) { + friend void swap(SelectStmt& a, SelectStmt& b) { a.Swap(&b); } - inline void Swap(SortGroupClause* other) { + inline void Swap(SelectStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SortGroupClause* other) { + void UnsafeArenaSwap(SelectStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - SortGroupClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + SelectStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SortGroupClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const SortGroupClause& from) { - SortGroupClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SelectStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SelectStmt& from) { + SelectStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(SelectStmt* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SelectStmt"; + } + protected: + explicit SelectStmt(::google::protobuf::Arena* arena); + SelectStmt(::google::protobuf::Arena* arena, const SelectStmt& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kDistinctClauseFieldNumber = 1, + kTargetListFieldNumber = 3, + kFromClauseFieldNumber = 4, + kGroupClauseFieldNumber = 6, + kWindowClauseFieldNumber = 9, + kValuesListsFieldNumber = 10, + kSortClauseFieldNumber = 11, + kLockingClauseFieldNumber = 15, + kIntoClauseFieldNumber = 2, + kWhereClauseFieldNumber = 5, + kHavingClauseFieldNumber = 8, + kLimitOffsetFieldNumber = 12, + kLimitCountFieldNumber = 13, + kWithClauseFieldNumber = 16, + kLargFieldNumber = 19, + kRargFieldNumber = 20, + kGroupDistinctFieldNumber = 7, + kAllFieldNumber = 18, + kLimitOptionFieldNumber = 14, + kOpFieldNumber = 17, + }; + // repeated .pg_query.Node distinct_clause = 1 [json_name = "distinctClause"]; + int distinct_clause_size() const; + private: + int _internal_distinct_clause_size() const; + + public: + void clear_distinct_clause() ; + ::pg_query::Node* mutable_distinct_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_distinct_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_distinct_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_distinct_clause(); + public: + const ::pg_query::Node& distinct_clause(int index) const; + ::pg_query::Node* add_distinct_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + distinct_clause() const; + // repeated .pg_query.Node target_list = 3 [json_name = "targetList"]; + int target_list_size() const; + private: + int _internal_target_list_size() const; + + public: + void clear_target_list() ; + ::pg_query::Node* mutable_target_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_target_list(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_target_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_target_list(); + public: + const ::pg_query::Node& target_list(int index) const; + ::pg_query::Node* add_target_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + target_list() const; + // repeated .pg_query.Node from_clause = 4 [json_name = "fromClause"]; + int from_clause_size() const; + private: + int _internal_from_clause_size() const; + + public: + void clear_from_clause() ; + ::pg_query::Node* mutable_from_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_from_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_from_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_from_clause(); + public: + const ::pg_query::Node& from_clause(int index) const; + ::pg_query::Node* add_from_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + from_clause() const; + // repeated .pg_query.Node group_clause = 6 [json_name = "groupClause"]; + int group_clause_size() const; + private: + int _internal_group_clause_size() const; + + public: + void clear_group_clause() ; + ::pg_query::Node* mutable_group_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_group_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_group_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_group_clause(); + public: + const ::pg_query::Node& group_clause(int index) const; + ::pg_query::Node* add_group_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + group_clause() const; + // repeated .pg_query.Node window_clause = 9 [json_name = "windowClause"]; + int window_clause_size() const; + private: + int _internal_window_clause_size() const; + + public: + void clear_window_clause() ; + ::pg_query::Node* mutable_window_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_window_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_window_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_window_clause(); + public: + const ::pg_query::Node& window_clause(int index) const; + ::pg_query::Node* add_window_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + window_clause() const; + // repeated .pg_query.Node values_lists = 10 [json_name = "valuesLists"]; + int values_lists_size() const; + private: + int _internal_values_lists_size() const; + + public: + void clear_values_lists() ; + ::pg_query::Node* mutable_values_lists(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_values_lists(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_values_lists() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_values_lists(); + public: + const ::pg_query::Node& values_lists(int index) const; + ::pg_query::Node* add_values_lists(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + values_lists() const; + // repeated .pg_query.Node sort_clause = 11 [json_name = "sortClause"]; + int sort_clause_size() const; + private: + int _internal_sort_clause_size() const; + + public: + void clear_sort_clause() ; + ::pg_query::Node* mutable_sort_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_sort_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_sort_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_sort_clause(); + public: + const ::pg_query::Node& sort_clause(int index) const; + ::pg_query::Node* add_sort_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + sort_clause() const; + // repeated .pg_query.Node locking_clause = 15 [json_name = "lockingClause"]; + int locking_clause_size() const; + private: + int _internal_locking_clause_size() const; + + public: + void clear_locking_clause() ; + ::pg_query::Node* mutable_locking_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_locking_clause(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_locking_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_locking_clause(); + public: + const ::pg_query::Node& locking_clause(int index) const; + ::pg_query::Node* add_locking_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + locking_clause() const; + // .pg_query.IntoClause into_clause = 2 [json_name = "intoClause"]; + bool has_into_clause() const; + void clear_into_clause() ; + const ::pg_query::IntoClause& into_clause() const; + PROTOBUF_NODISCARD ::pg_query::IntoClause* release_into_clause(); + ::pg_query::IntoClause* mutable_into_clause(); + void set_allocated_into_clause(::pg_query::IntoClause* value); + void unsafe_arena_set_allocated_into_clause(::pg_query::IntoClause* value); + ::pg_query::IntoClause* unsafe_arena_release_into_clause(); + + private: + const ::pg_query::IntoClause& _internal_into_clause() const; + ::pg_query::IntoClause* _internal_mutable_into_clause(); + + public: + // .pg_query.Node where_clause = 5 [json_name = "whereClause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); + + private: + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); + + public: + // .pg_query.Node having_clause = 8 [json_name = "havingClause"]; + bool has_having_clause() const; + void clear_having_clause() ; + const ::pg_query::Node& having_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_having_clause(); + ::pg_query::Node* mutable_having_clause(); + void set_allocated_having_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_having_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_having_clause(); + + private: + const ::pg_query::Node& _internal_having_clause() const; + ::pg_query::Node* _internal_mutable_having_clause(); + + public: + // .pg_query.Node limit_offset = 12 [json_name = "limitOffset"]; + bool has_limit_offset() const; + void clear_limit_offset() ; + const ::pg_query::Node& limit_offset() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_limit_offset(); + ::pg_query::Node* mutable_limit_offset(); + void set_allocated_limit_offset(::pg_query::Node* value); + void unsafe_arena_set_allocated_limit_offset(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_limit_offset(); + + private: + const ::pg_query::Node& _internal_limit_offset() const; + ::pg_query::Node* _internal_mutable_limit_offset(); + + public: + // .pg_query.Node limit_count = 13 [json_name = "limitCount"]; + bool has_limit_count() const; + void clear_limit_count() ; + const ::pg_query::Node& limit_count() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_limit_count(); + ::pg_query::Node* mutable_limit_count(); + void set_allocated_limit_count(::pg_query::Node* value); + void unsafe_arena_set_allocated_limit_count(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_limit_count(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(SortGroupClause* other); + const ::pg_query::Node& _internal_limit_count() const; + ::pg_query::Node* _internal_mutable_limit_count(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.SortGroupClause"; - } - protected: - explicit SortGroupClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.WithClause with_clause = 16 [json_name = "withClause"]; + bool has_with_clause() const; + void clear_with_clause() ; + const ::pg_query::WithClause& with_clause() const; + PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); + ::pg_query::WithClause* mutable_with_clause(); + void set_allocated_with_clause(::pg_query::WithClause* value); + void unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value); + ::pg_query::WithClause* unsafe_arena_release_with_clause(); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + private: + const ::pg_query::WithClause& _internal_with_clause() const; + ::pg_query::WithClause* _internal_mutable_with_clause(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + // .pg_query.SelectStmt larg = 19 [json_name = "larg"]; + bool has_larg() const; + void clear_larg() ; + const ::pg_query::SelectStmt& larg() const; + PROTOBUF_NODISCARD ::pg_query::SelectStmt* release_larg(); + ::pg_query::SelectStmt* mutable_larg(); + void set_allocated_larg(::pg_query::SelectStmt* value); + void unsafe_arena_set_allocated_larg(::pg_query::SelectStmt* value); + ::pg_query::SelectStmt* unsafe_arena_release_larg(); - // nested types ---------------------------------------------------- + private: + const ::pg_query::SelectStmt& _internal_larg() const; + ::pg_query::SelectStmt* _internal_mutable_larg(); - // accessors ------------------------------------------------------- + public: + // .pg_query.SelectStmt rarg = 20 [json_name = "rarg"]; + bool has_rarg() const; + void clear_rarg() ; + const ::pg_query::SelectStmt& rarg() const; + PROTOBUF_NODISCARD ::pg_query::SelectStmt* release_rarg(); + ::pg_query::SelectStmt* mutable_rarg(); + void set_allocated_rarg(::pg_query::SelectStmt* value); + void unsafe_arena_set_allocated_rarg(::pg_query::SelectStmt* value); + ::pg_query::SelectStmt* unsafe_arena_release_rarg(); - enum : int { - kTleSortGroupRefFieldNumber = 1, - kEqopFieldNumber = 2, - kSortopFieldNumber = 3, - kNullsFirstFieldNumber = 4, - kHashableFieldNumber = 5, - }; - // uint32 tle_sort_group_ref = 1 [json_name = "tleSortGroupRef"]; - void clear_tle_sort_group_ref(); - uint32_t tle_sort_group_ref() const; - void set_tle_sort_group_ref(uint32_t value); private: - uint32_t _internal_tle_sort_group_ref() const; - void _internal_set_tle_sort_group_ref(uint32_t value); + const ::pg_query::SelectStmt& _internal_rarg() const; + ::pg_query::SelectStmt* _internal_mutable_rarg(); + public: + // bool group_distinct = 7 [json_name = "groupDistinct"]; + void clear_group_distinct() ; + bool group_distinct() const; + void set_group_distinct(bool value); - // uint32 eqop = 2 [json_name = "eqop"]; - void clear_eqop(); - uint32_t eqop() const; - void set_eqop(uint32_t value); private: - uint32_t _internal_eqop() const; - void _internal_set_eqop(uint32_t value); + bool _internal_group_distinct() const; + void _internal_set_group_distinct(bool value); + public: + // bool all = 18 [json_name = "all"]; + void clear_all() ; + bool all() const; + void set_all(bool value); - // uint32 sortop = 3 [json_name = "sortop"]; - void clear_sortop(); - uint32_t sortop() const; - void set_sortop(uint32_t value); private: - uint32_t _internal_sortop() const; - void _internal_set_sortop(uint32_t value); + bool _internal_all() const; + void _internal_set_all(bool value); + public: + // .pg_query.LimitOption limit_option = 14 [json_name = "limitOption"]; + void clear_limit_option() ; + ::pg_query::LimitOption limit_option() const; + void set_limit_option(::pg_query::LimitOption value); - // bool nulls_first = 4 [json_name = "nulls_first"]; - void clear_nulls_first(); - bool nulls_first() const; - void set_nulls_first(bool value); private: - bool _internal_nulls_first() const; - void _internal_set_nulls_first(bool value); + ::pg_query::LimitOption _internal_limit_option() const; + void _internal_set_limit_option(::pg_query::LimitOption value); + public: + // .pg_query.SetOperation op = 17 [json_name = "op"]; + void clear_op() ; + ::pg_query::SetOperation op() const; + void set_op(::pg_query::SetOperation value); - // bool hashable = 5 [json_name = "hashable"]; - void clear_hashable(); - bool hashable() const; - void set_hashable(bool value); private: - bool _internal_hashable() const; - void _internal_set_hashable(bool value); - public: + ::pg_query::SetOperation _internal_op() const; + void _internal_set_op(::pg_query::SetOperation value); - // @@protoc_insertion_point(class_scope:pg_query.SortGroupClause) + public: + // @@protoc_insertion_point(class_scope:pg_query.SelectStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 5, 20, 16, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - uint32_t tle_sort_group_ref_; - uint32_t eqop_; - uint32_t sortop_; - bool nulls_first_; - bool hashable_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > distinct_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > target_list_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > from_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > group_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > window_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > values_lists_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > sort_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > locking_clause_; + ::pg_query::IntoClause* into_clause_; + ::pg_query::Node* where_clause_; + ::pg_query::Node* having_clause_; + ::pg_query::Node* limit_offset_; + ::pg_query::Node* limit_count_; + ::pg_query::WithClause* with_clause_; + ::pg_query::SelectStmt* larg_; + ::pg_query::SelectStmt* rarg_; + bool group_distinct_; + bool all_; + int limit_option_; + int op_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class GroupingSet final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.GroupingSet) */ { +class SetOperationStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SetOperationStmt) */ { public: - inline GroupingSet() : GroupingSet(nullptr) {} - ~GroupingSet() override; - explicit PROTOBUF_CONSTEXPR GroupingSet(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline SetOperationStmt() : SetOperationStmt(nullptr) {} + ~SetOperationStmt() override; + template + explicit PROTOBUF_CONSTEXPR SetOperationStmt(::google::protobuf::internal::ConstantInitialized); - GroupingSet(const GroupingSet& from); - GroupingSet(GroupingSet&& from) noexcept - : GroupingSet() { + inline SetOperationStmt(const SetOperationStmt& from) + : SetOperationStmt(nullptr, from) {} + SetOperationStmt(SetOperationStmt&& from) noexcept + : SetOperationStmt() { *this = ::std::move(from); } - inline GroupingSet& operator=(const GroupingSet& from) { + inline SetOperationStmt& operator=(const SetOperationStmt& from) { CopyFrom(from); return *this; } - inline GroupingSet& operator=(GroupingSet&& from) noexcept { + inline SetOperationStmt& operator=(SetOperationStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -55264,176 +64355,299 @@ class GroupingSet final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const GroupingSet& default_instance() { + static const SetOperationStmt& default_instance() { return *internal_default_instance(); } - static inline const GroupingSet* internal_default_instance() { - return reinterpret_cast( - &_GroupingSet_default_instance_); + static inline const SetOperationStmt* internal_default_instance() { + return reinterpret_cast( + &_SetOperationStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 212; + 132; - friend void swap(GroupingSet& a, GroupingSet& b) { + friend void swap(SetOperationStmt& a, SetOperationStmt& b) { a.Swap(&b); } - inline void Swap(GroupingSet* other) { + inline void Swap(SetOperationStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(GroupingSet* other) { + void UnsafeArenaSwap(SetOperationStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - GroupingSet* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + SetOperationStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const GroupingSet& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const GroupingSet& from) { - GroupingSet::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SetOperationStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SetOperationStmt& from) { + SetOperationStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(GroupingSet* other); + void InternalSwap(SetOperationStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.GroupingSet"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SetOperationStmt"; } protected: - explicit GroupingSet(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit SetOperationStmt(::google::protobuf::Arena* arena); + SetOperationStmt(::google::protobuf::Arena* arena, const SetOperationStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kContentFieldNumber = 2, - kKindFieldNumber = 1, - kLocationFieldNumber = 3, + kColTypesFieldNumber = 5, + kColTypmodsFieldNumber = 6, + kColCollationsFieldNumber = 7, + kGroupClausesFieldNumber = 8, + kLargFieldNumber = 3, + kRargFieldNumber = 4, + kOpFieldNumber = 1, + kAllFieldNumber = 2, }; - // repeated .pg_query.Node content = 2 [json_name = "content"]; - int content_size() const; + // repeated .pg_query.Node col_types = 5 [json_name = "colTypes"]; + int col_types_size() const; private: - int _internal_content_size() const; + int _internal_col_types_size() const; + public: - void clear_content(); - ::pg_query::Node* mutable_content(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_content(); + void clear_col_types() ; + ::pg_query::Node* mutable_col_types(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_col_types(); private: - const ::pg_query::Node& _internal_content(int index) const; - ::pg_query::Node* _internal_add_content(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_col_types() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_col_types(); public: - const ::pg_query::Node& content(int index) const; - ::pg_query::Node* add_content(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - content() const; + const ::pg_query::Node& col_types(int index) const; + ::pg_query::Node* add_col_types(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + col_types() const; + // repeated .pg_query.Node col_typmods = 6 [json_name = "colTypmods"]; + int col_typmods_size() const; + private: + int _internal_col_typmods_size() const; - // .pg_query.GroupingSetKind kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::GroupingSetKind kind() const; - void set_kind(::pg_query::GroupingSetKind value); + public: + void clear_col_typmods() ; + ::pg_query::Node* mutable_col_typmods(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_col_typmods(); private: - ::pg_query::GroupingSetKind _internal_kind() const; - void _internal_set_kind(::pg_query::GroupingSetKind value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_col_typmods() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_col_typmods(); public: + const ::pg_query::Node& col_typmods(int index) const; + ::pg_query::Node* add_col_typmods(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + col_typmods() const; + // repeated .pg_query.Node col_collations = 7 [json_name = "colCollations"]; + int col_collations_size() const; + private: + int _internal_col_collations_size() const; - // int32 location = 3 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); + public: + void clear_col_collations() ; + ::pg_query::Node* mutable_col_collations(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_col_collations(); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_col_collations() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_col_collations(); public: + const ::pg_query::Node& col_collations(int index) const; + ::pg_query::Node* add_col_collations(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + col_collations() const; + // repeated .pg_query.Node group_clauses = 8 [json_name = "groupClauses"]; + int group_clauses_size() const; + private: + int _internal_group_clauses_size() const; - // @@protoc_insertion_point(class_scope:pg_query.GroupingSet) + public: + void clear_group_clauses() ; + ::pg_query::Node* mutable_group_clauses(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_group_clauses(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_group_clauses() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_group_clauses(); + public: + const ::pg_query::Node& group_clauses(int index) const; + ::pg_query::Node* add_group_clauses(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + group_clauses() const; + // .pg_query.Node larg = 3 [json_name = "larg"]; + bool has_larg() const; + void clear_larg() ; + const ::pg_query::Node& larg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_larg(); + ::pg_query::Node* mutable_larg(); + void set_allocated_larg(::pg_query::Node* value); + void unsafe_arena_set_allocated_larg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_larg(); + + private: + const ::pg_query::Node& _internal_larg() const; + ::pg_query::Node* _internal_mutable_larg(); + + public: + // .pg_query.Node rarg = 4 [json_name = "rarg"]; + bool has_rarg() const; + void clear_rarg() ; + const ::pg_query::Node& rarg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_rarg(); + ::pg_query::Node* mutable_rarg(); + void set_allocated_rarg(::pg_query::Node* value); + void unsafe_arena_set_allocated_rarg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_rarg(); + + private: + const ::pg_query::Node& _internal_rarg() const; + ::pg_query::Node* _internal_mutable_rarg(); + + public: + // .pg_query.SetOperation op = 1 [json_name = "op"]; + void clear_op() ; + ::pg_query::SetOperation op() const; + void set_op(::pg_query::SetOperation value); + + private: + ::pg_query::SetOperation _internal_op() const; + void _internal_set_op(::pg_query::SetOperation value); + + public: + // bool all = 2 [json_name = "all"]; + void clear_all() ; + bool all() const; + void set_all(bool value); + + private: + bool _internal_all() const; + void _internal_set_all(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.SetOperationStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 6, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > content_; - int kind_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > col_types_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > col_typmods_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > col_collations_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > group_clauses_; + ::pg_query::Node* larg_; + ::pg_query::Node* rarg_; + int op_; + bool all_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class WindowClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.WindowClause) */ { +class SetToDefault final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SetToDefault) */ { public: - inline WindowClause() : WindowClause(nullptr) {} - ~WindowClause() override; - explicit PROTOBUF_CONSTEXPR WindowClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline SetToDefault() : SetToDefault(nullptr) {} + ~SetToDefault() override; + template + explicit PROTOBUF_CONSTEXPR SetToDefault(::google::protobuf::internal::ConstantInitialized); - WindowClause(const WindowClause& from); - WindowClause(WindowClause&& from) noexcept - : WindowClause() { + inline SetToDefault(const SetToDefault& from) + : SetToDefault(nullptr, from) {} + SetToDefault(SetToDefault&& from) noexcept + : SetToDefault() { *this = ::std::move(from); } - inline WindowClause& operator=(const WindowClause& from) { + inline SetToDefault& operator=(const SetToDefault& from) { CopyFrom(from); return *this; } - inline WindowClause& operator=(WindowClause&& from) noexcept { + inline SetToDefault& operator=(SetToDefault&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -55443,354 +64657,226 @@ class WindowClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const WindowClause& default_instance() { + static const SetToDefault& default_instance() { return *internal_default_instance(); } - static inline const WindowClause* internal_default_instance() { - return reinterpret_cast( - &_WindowClause_default_instance_); + static inline const SetToDefault* internal_default_instance() { + return reinterpret_cast( + &_SetToDefault_default_instance_); } static constexpr int kIndexInFileMessages = - 213; + 58; - friend void swap(WindowClause& a, WindowClause& b) { + friend void swap(SetToDefault& a, SetToDefault& b) { a.Swap(&b); } - inline void Swap(WindowClause* other) { + inline void Swap(SetToDefault* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(WindowClause* other) { + void UnsafeArenaSwap(SetToDefault* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - WindowClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + SetToDefault* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const WindowClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const WindowClause& from) { - WindowClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SetToDefault& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SetToDefault& from) { + SetToDefault::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(WindowClause* other); + void InternalSwap(SetToDefault* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.WindowClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SetToDefault"; } protected: - explicit WindowClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit SetToDefault(::google::protobuf::Arena* arena); + SetToDefault(::google::protobuf::Arena* arena, const SetToDefault& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kPartitionClauseFieldNumber = 3, - kOrderClauseFieldNumber = 4, - kRunConditionFieldNumber = 8, - kNameFieldNumber = 1, - kRefnameFieldNumber = 2, - kStartOffsetFieldNumber = 6, - kEndOffsetFieldNumber = 7, - kFrameOptionsFieldNumber = 5, - kStartInRangeFuncFieldNumber = 9, - kEndInRangeFuncFieldNumber = 10, - kInRangeCollFieldNumber = 11, - kInRangeAscFieldNumber = 12, - kInRangeNullsFirstFieldNumber = 13, - kCopiedOrderFieldNumber = 15, - kWinrefFieldNumber = 14, + kXprFieldNumber = 1, + kTypeIdFieldNumber = 2, + kTypeModFieldNumber = 3, + kCollationFieldNumber = 4, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node partition_clause = 3 [json_name = "partitionClause"]; - int partition_clause_size() const; - private: - int _internal_partition_clause_size() const; - public: - void clear_partition_clause(); - ::pg_query::Node* mutable_partition_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_partition_clause(); - private: - const ::pg_query::Node& _internal_partition_clause(int index) const; - ::pg_query::Node* _internal_add_partition_clause(); - public: - const ::pg_query::Node& partition_clause(int index) const; - ::pg_query::Node* add_partition_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - partition_clause() const; - - // repeated .pg_query.Node order_clause = 4 [json_name = "orderClause"]; - int order_clause_size() const; - private: - int _internal_order_clause_size() const; - public: - void clear_order_clause(); - ::pg_query::Node* mutable_order_clause(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_order_clause(); - private: - const ::pg_query::Node& _internal_order_clause(int index) const; - ::pg_query::Node* _internal_add_order_clause(); - public: - const ::pg_query::Node& order_clause(int index) const; - ::pg_query::Node* add_order_clause(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - order_clause() const; - - // repeated .pg_query.Node run_condition = 8 [json_name = "runCondition"]; - int run_condition_size() const; - private: - int _internal_run_condition_size() const; - public: - void clear_run_condition(); - ::pg_query::Node* mutable_run_condition(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_run_condition(); - private: - const ::pg_query::Node& _internal_run_condition(int index) const; - ::pg_query::Node* _internal_add_run_condition(); - public: - const ::pg_query::Node& run_condition(int index) const; - ::pg_query::Node* add_run_condition(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - run_condition() const; - - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); - private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: - - // string refname = 2 [json_name = "refname"]; - void clear_refname(); - const std::string& refname() const; - template - void set_refname(ArgT0&& arg0, ArgT... args); - std::string* mutable_refname(); - PROTOBUF_NODISCARD std::string* release_refname(); - void set_allocated_refname(std::string* refname); - private: - const std::string& _internal_refname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_refname(const std::string& value); - std::string* _internal_mutable_refname(); - public: + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.Node start_offset = 6 [json_name = "startOffset"]; - bool has_start_offset() const; - private: - bool _internal_has_start_offset() const; - public: - void clear_start_offset(); - const ::pg_query::Node& start_offset() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_start_offset(); - ::pg_query::Node* mutable_start_offset(); - void set_allocated_start_offset(::pg_query::Node* start_offset); private: - const ::pg_query::Node& _internal_start_offset() const; - ::pg_query::Node* _internal_mutable_start_offset(); - public: - void unsafe_arena_set_allocated_start_offset( - ::pg_query::Node* start_offset); - ::pg_query::Node* unsafe_arena_release_start_offset(); + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - // .pg_query.Node end_offset = 7 [json_name = "endOffset"]; - bool has_end_offset() const; - private: - bool _internal_has_end_offset() const; public: - void clear_end_offset(); - const ::pg_query::Node& end_offset() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_end_offset(); - ::pg_query::Node* mutable_end_offset(); - void set_allocated_end_offset(::pg_query::Node* end_offset); - private: - const ::pg_query::Node& _internal_end_offset() const; - ::pg_query::Node* _internal_mutable_end_offset(); - public: - void unsafe_arena_set_allocated_end_offset( - ::pg_query::Node* end_offset); - ::pg_query::Node* unsafe_arena_release_end_offset(); + // uint32 type_id = 2 [json_name = "typeId"]; + void clear_type_id() ; + ::uint32_t type_id() const; + void set_type_id(::uint32_t value); - // int32 frame_options = 5 [json_name = "frameOptions"]; - void clear_frame_options(); - int32_t frame_options() const; - void set_frame_options(int32_t value); private: - int32_t _internal_frame_options() const; - void _internal_set_frame_options(int32_t value); - public: + ::uint32_t _internal_type_id() const; + void _internal_set_type_id(::uint32_t value); - // uint32 start_in_range_func = 9 [json_name = "startInRangeFunc"]; - void clear_start_in_range_func(); - uint32_t start_in_range_func() const; - void set_start_in_range_func(uint32_t value); - private: - uint32_t _internal_start_in_range_func() const; - void _internal_set_start_in_range_func(uint32_t value); public: + // int32 type_mod = 3 [json_name = "typeMod"]; + void clear_type_mod() ; + ::int32_t type_mod() const; + void set_type_mod(::int32_t value); - // uint32 end_in_range_func = 10 [json_name = "endInRangeFunc"]; - void clear_end_in_range_func(); - uint32_t end_in_range_func() const; - void set_end_in_range_func(uint32_t value); private: - uint32_t _internal_end_in_range_func() const; - void _internal_set_end_in_range_func(uint32_t value); - public: + ::int32_t _internal_type_mod() const; + void _internal_set_type_mod(::int32_t value); - // uint32 in_range_coll = 11 [json_name = "inRangeColl"]; - void clear_in_range_coll(); - uint32_t in_range_coll() const; - void set_in_range_coll(uint32_t value); - private: - uint32_t _internal_in_range_coll() const; - void _internal_set_in_range_coll(uint32_t value); public: + // uint32 collation = 4 [json_name = "collation"]; + void clear_collation() ; + ::uint32_t collation() const; + void set_collation(::uint32_t value); - // bool in_range_asc = 12 [json_name = "inRangeAsc"]; - void clear_in_range_asc(); - bool in_range_asc() const; - void set_in_range_asc(bool value); private: - bool _internal_in_range_asc() const; - void _internal_set_in_range_asc(bool value); - public: + ::uint32_t _internal_collation() const; + void _internal_set_collation(::uint32_t value); - // bool in_range_nulls_first = 13 [json_name = "inRangeNullsFirst"]; - void clear_in_range_nulls_first(); - bool in_range_nulls_first() const; - void set_in_range_nulls_first(bool value); - private: - bool _internal_in_range_nulls_first() const; - void _internal_set_in_range_nulls_first(bool value); public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // bool copied_order = 15 [json_name = "copiedOrder"]; - void clear_copied_order(); - bool copied_order() const; - void set_copied_order(bool value); private: - bool _internal_copied_order() const; - void _internal_set_copied_order(bool value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // uint32 winref = 14 [json_name = "winref"]; - void clear_winref(); - uint32_t winref() const; - void set_winref(uint32_t value); - private: - uint32_t _internal_winref() const; - void _internal_set_winref(uint32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.WindowClause) + // @@protoc_insertion_point(class_scope:pg_query.SetToDefault) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > partition_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > order_clause_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > run_condition_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr refname_; - ::pg_query::Node* start_offset_; - ::pg_query::Node* end_offset_; - int32_t frame_options_; - uint32_t start_in_range_func_; - uint32_t end_in_range_func_; - uint32_t in_range_coll_; - bool in_range_asc_; - bool in_range_nulls_first_; - bool copied_order_; - uint32_t winref_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* xpr_; + ::uint32_t type_id_; + ::int32_t type_mod_; + ::uint32_t collation_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ObjectWithArgs final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ObjectWithArgs) */ { +class SortBy final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SortBy) */ { public: - inline ObjectWithArgs() : ObjectWithArgs(nullptr) {} - ~ObjectWithArgs() override; - explicit PROTOBUF_CONSTEXPR ObjectWithArgs(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline SortBy() : SortBy(nullptr) {} + ~SortBy() override; + template + explicit PROTOBUF_CONSTEXPR SortBy(::google::protobuf::internal::ConstantInitialized); - ObjectWithArgs(const ObjectWithArgs& from); - ObjectWithArgs(ObjectWithArgs&& from) noexcept - : ObjectWithArgs() { + inline SortBy(const SortBy& from) + : SortBy(nullptr, from) {} + SortBy(SortBy&& from) noexcept + : SortBy() { *this = ::std::move(from); } - inline ObjectWithArgs& operator=(const ObjectWithArgs& from) { + inline SortBy& operator=(const SortBy& from) { CopyFrom(from); return *this; } - inline ObjectWithArgs& operator=(ObjectWithArgs&& from) noexcept { + inline SortBy& operator=(SortBy&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -55800,205 +64886,234 @@ class ObjectWithArgs final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ObjectWithArgs& default_instance() { + static const SortBy& default_instance() { return *internal_default_instance(); } - static inline const ObjectWithArgs* internal_default_instance() { - return reinterpret_cast( - &_ObjectWithArgs_default_instance_); + static inline const SortBy* internal_default_instance() { + return reinterpret_cast( + &_SortBy_default_instance_); } static constexpr int kIndexInFileMessages = - 214; + 82; - friend void swap(ObjectWithArgs& a, ObjectWithArgs& b) { + friend void swap(SortBy& a, SortBy& b) { a.Swap(&b); } - inline void Swap(ObjectWithArgs* other) { + inline void Swap(SortBy* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ObjectWithArgs* other) { + void UnsafeArenaSwap(SortBy* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ObjectWithArgs* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + SortBy* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ObjectWithArgs& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ObjectWithArgs& from) { - ObjectWithArgs::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SortBy& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SortBy& from) { + SortBy::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ObjectWithArgs* other); + void InternalSwap(SortBy* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ObjectWithArgs"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SortBy"; } protected: - explicit ObjectWithArgs(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit SortBy(::google::protobuf::Arena* arena); + SortBy(::google::protobuf::Arena* arena, const SortBy& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kObjnameFieldNumber = 1, - kObjargsFieldNumber = 2, - kObjfuncargsFieldNumber = 3, - kArgsUnspecifiedFieldNumber = 4, + kUseOpFieldNumber = 4, + kNodeFieldNumber = 1, + kSortbyDirFieldNumber = 2, + kSortbyNullsFieldNumber = 3, + kLocationFieldNumber = 5, }; - // repeated .pg_query.Node objname = 1 [json_name = "objname"]; - int objname_size() const; + // repeated .pg_query.Node use_op = 4 [json_name = "useOp"]; + int use_op_size() const; private: - int _internal_objname_size() const; + int _internal_use_op_size() const; + public: - void clear_objname(); - ::pg_query::Node* mutable_objname(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_objname(); + void clear_use_op() ; + ::pg_query::Node* mutable_use_op(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_use_op(); private: - const ::pg_query::Node& _internal_objname(int index) const; - ::pg_query::Node* _internal_add_objname(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_use_op() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_use_op(); public: - const ::pg_query::Node& objname(int index) const; - ::pg_query::Node* add_objname(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - objname() const; + const ::pg_query::Node& use_op(int index) const; + ::pg_query::Node* add_use_op(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + use_op() const; + // .pg_query.Node node = 1 [json_name = "node"]; + bool has_node() const; + void clear_node() ; + const ::pg_query::Node& node() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_node(); + ::pg_query::Node* mutable_node(); + void set_allocated_node(::pg_query::Node* value); + void unsafe_arena_set_allocated_node(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_node(); - // repeated .pg_query.Node objargs = 2 [json_name = "objargs"]; - int objargs_size() const; - private: - int _internal_objargs_size() const; - public: - void clear_objargs(); - ::pg_query::Node* mutable_objargs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_objargs(); private: - const ::pg_query::Node& _internal_objargs(int index) const; - ::pg_query::Node* _internal_add_objargs(); + const ::pg_query::Node& _internal_node() const; + ::pg_query::Node* _internal_mutable_node(); + public: - const ::pg_query::Node& objargs(int index) const; - ::pg_query::Node* add_objargs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - objargs() const; + // .pg_query.SortByDir sortby_dir = 2 [json_name = "sortby_dir"]; + void clear_sortby_dir() ; + ::pg_query::SortByDir sortby_dir() const; + void set_sortby_dir(::pg_query::SortByDir value); - // repeated .pg_query.Node objfuncargs = 3 [json_name = "objfuncargs"]; - int objfuncargs_size() const; private: - int _internal_objfuncargs_size() const; + ::pg_query::SortByDir _internal_sortby_dir() const; + void _internal_set_sortby_dir(::pg_query::SortByDir value); + public: - void clear_objfuncargs(); - ::pg_query::Node* mutable_objfuncargs(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_objfuncargs(); + // .pg_query.SortByNulls sortby_nulls = 3 [json_name = "sortby_nulls"]; + void clear_sortby_nulls() ; + ::pg_query::SortByNulls sortby_nulls() const; + void set_sortby_nulls(::pg_query::SortByNulls value); + private: - const ::pg_query::Node& _internal_objfuncargs(int index) const; - ::pg_query::Node* _internal_add_objfuncargs(); + ::pg_query::SortByNulls _internal_sortby_nulls() const; + void _internal_set_sortby_nulls(::pg_query::SortByNulls value); + public: - const ::pg_query::Node& objfuncargs(int index) const; - ::pg_query::Node* add_objfuncargs(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - objfuncargs() const; + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // bool args_unspecified = 4 [json_name = "args_unspecified"]; - void clear_args_unspecified(); - bool args_unspecified() const; - void set_args_unspecified(bool value); private: - bool _internal_args_unspecified() const; - void _internal_set_args_unspecified(bool value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.ObjectWithArgs) + public: + // @@protoc_insertion_point(class_scope:pg_query.SortBy) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > objname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > objargs_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > objfuncargs_; - bool args_unspecified_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > use_op_; + ::pg_query::Node* node_; + int sortby_dir_; + int sortby_nulls_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class AccessPriv final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.AccessPriv) */ { +class StatsElem final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.StatsElem) */ { public: - inline AccessPriv() : AccessPriv(nullptr) {} - ~AccessPriv() override; - explicit PROTOBUF_CONSTEXPR AccessPriv(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline StatsElem() : StatsElem(nullptr) {} + ~StatsElem() override; + template + explicit PROTOBUF_CONSTEXPR StatsElem(::google::protobuf::internal::ConstantInitialized); - AccessPriv(const AccessPriv& from); - AccessPriv(AccessPriv&& from) noexcept - : AccessPriv() { + inline StatsElem(const StatsElem& from) + : StatsElem(nullptr, from) {} + StatsElem(StatsElem&& from) noexcept + : StatsElem() { *this = ::std::move(from); } - inline AccessPriv& operator=(const AccessPriv& from) { + inline StatsElem& operator=(const StatsElem& from) { CopyFrom(from); return *this; } - inline AccessPriv& operator=(AccessPriv&& from) noexcept { + inline StatsElem& operator=(StatsElem&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -56008,170 +65123,196 @@ class AccessPriv final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const AccessPriv& default_instance() { + static const StatsElem& default_instance() { return *internal_default_instance(); } - static inline const AccessPriv* internal_default_instance() { - return reinterpret_cast( - &_AccessPriv_default_instance_); + static inline const StatsElem* internal_default_instance() { + return reinterpret_cast( + &_StatsElem_default_instance_); } static constexpr int kIndexInFileMessages = - 215; + 195; - friend void swap(AccessPriv& a, AccessPriv& b) { + friend void swap(StatsElem& a, StatsElem& b) { a.Swap(&b); } - inline void Swap(AccessPriv* other) { + inline void Swap(StatsElem* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(AccessPriv* other) { + void UnsafeArenaSwap(StatsElem* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - AccessPriv* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + StatsElem* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const AccessPriv& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const AccessPriv& from) { - AccessPriv::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const StatsElem& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const StatsElem& from) { + StatsElem::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(AccessPriv* other); + void InternalSwap(StatsElem* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.AccessPriv"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.StatsElem"; } protected: - explicit AccessPriv(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit StatsElem(::google::protobuf::Arena* arena); + StatsElem(::google::protobuf::Arena* arena, const StatsElem& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kColsFieldNumber = 2, - kPrivNameFieldNumber = 1, + kNameFieldNumber = 1, + kExprFieldNumber = 2, }; - // repeated .pg_query.Node cols = 2 [json_name = "cols"]; - int cols_size() const; - private: - int _internal_cols_size() const; - public: - void clear_cols(); - ::pg_query::Node* mutable_cols(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_cols(); + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + private: - const ::pg_query::Node& _internal_cols(int index) const; - ::pg_query::Node* _internal_add_cols(); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + public: - const ::pg_query::Node& cols(int index) const; - ::pg_query::Node* add_cols(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - cols() const; + // .pg_query.Node expr = 2 [json_name = "expr"]; + bool has_expr() const; + void clear_expr() ; + const ::pg_query::Node& expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); + ::pg_query::Node* mutable_expr(); + void set_allocated_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_expr(); - // string priv_name = 1 [json_name = "priv_name"]; - void clear_priv_name(); - const std::string& priv_name() const; - template - void set_priv_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_priv_name(); - PROTOBUF_NODISCARD std::string* release_priv_name(); - void set_allocated_priv_name(std::string* priv_name); private: - const std::string& _internal_priv_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_priv_name(const std::string& value); - std::string* _internal_mutable_priv_name(); - public: + const ::pg_query::Node& _internal_expr() const; + ::pg_query::Node* _internal_mutable_expr(); - // @@protoc_insertion_point(class_scope:pg_query.AccessPriv) + public: + // @@protoc_insertion_point(class_scope:pg_query.StatsElem) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 31, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > cols_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr priv_name_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::Node* expr_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CreateOpClassItem final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CreateOpClassItem) */ { +class SubLink final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SubLink) */ { public: - inline CreateOpClassItem() : CreateOpClassItem(nullptr) {} - ~CreateOpClassItem() override; - explicit PROTOBUF_CONSTEXPR CreateOpClassItem(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline SubLink() : SubLink(nullptr) {} + ~SubLink() override; + template + explicit PROTOBUF_CONSTEXPR SubLink(::google::protobuf::internal::ConstantInitialized); - CreateOpClassItem(const CreateOpClassItem& from); - CreateOpClassItem(CreateOpClassItem&& from) noexcept - : CreateOpClassItem() { + inline SubLink(const SubLink& from) + : SubLink(nullptr, from) {} + SubLink(SubLink&& from) noexcept + : SubLink() { *this = ::std::move(from); } - inline CreateOpClassItem& operator=(const CreateOpClassItem& from) { + inline SubLink& operator=(const SubLink& from) { CopyFrom(from); return *this; } - inline CreateOpClassItem& operator=(CreateOpClassItem&& from) noexcept { + inline SubLink& operator=(SubLink&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -56181,236 +65322,268 @@ class CreateOpClassItem final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CreateOpClassItem& default_instance() { + static const SubLink& default_instance() { return *internal_default_instance(); } - static inline const CreateOpClassItem* internal_default_instance() { - return reinterpret_cast( - &_CreateOpClassItem_default_instance_); + static inline const SubLink* internal_default_instance() { + return reinterpret_cast( + &_SubLink_default_instance_); } static constexpr int kIndexInFileMessages = - 216; + 29; - friend void swap(CreateOpClassItem& a, CreateOpClassItem& b) { + friend void swap(SubLink& a, SubLink& b) { a.Swap(&b); } - inline void Swap(CreateOpClassItem* other) { + inline void Swap(SubLink* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CreateOpClassItem* other) { + void UnsafeArenaSwap(SubLink* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CreateOpClassItem* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + SubLink* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CreateOpClassItem& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CreateOpClassItem& from) { - CreateOpClassItem::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SubLink& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SubLink& from) { + SubLink::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CreateOpClassItem* other); + void InternalSwap(SubLink* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CreateOpClassItem"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SubLink"; } protected: - explicit CreateOpClassItem(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit SubLink(::google::protobuf::Arena* arena); + SubLink(::google::protobuf::Arena* arena, const SubLink& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kOrderFamilyFieldNumber = 4, - kClassArgsFieldNumber = 5, - kNameFieldNumber = 2, - kStoredtypeFieldNumber = 6, - kItemtypeFieldNumber = 1, - kNumberFieldNumber = 3, + kOperNameFieldNumber = 5, + kXprFieldNumber = 1, + kTestexprFieldNumber = 4, + kSubselectFieldNumber = 6, + kSubLinkTypeFieldNumber = 2, + kSubLinkIdFieldNumber = 3, + kLocationFieldNumber = 7, }; - // repeated .pg_query.Node order_family = 4 [json_name = "order_family"]; - int order_family_size() const; - private: - int _internal_order_family_size() const; - public: - void clear_order_family(); - ::pg_query::Node* mutable_order_family(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_order_family(); + // repeated .pg_query.Node oper_name = 5 [json_name = "operName"]; + int oper_name_size() const; private: - const ::pg_query::Node& _internal_order_family(int index) const; - ::pg_query::Node* _internal_add_order_family(); - public: - const ::pg_query::Node& order_family(int index) const; - ::pg_query::Node* add_order_family(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - order_family() const; + int _internal_oper_name_size() const; - // repeated .pg_query.Node class_args = 5 [json_name = "class_args"]; - int class_args_size() const; - private: - int _internal_class_args_size() const; public: - void clear_class_args(); - ::pg_query::Node* mutable_class_args(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_class_args(); + void clear_oper_name() ; + ::pg_query::Node* mutable_oper_name(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_oper_name(); private: - const ::pg_query::Node& _internal_class_args(int index) const; - ::pg_query::Node* _internal_add_class_args(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_oper_name() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_oper_name(); public: - const ::pg_query::Node& class_args(int index) const; - ::pg_query::Node* add_class_args(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - class_args() const; + const ::pg_query::Node& oper_name(int index) const; + ::pg_query::Node* add_oper_name(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + oper_name() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.ObjectWithArgs name = 2 [json_name = "name"]; - bool has_name() const; private: - bool _internal_has_name() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_name(); - const ::pg_query::ObjectWithArgs& name() const; - PROTOBUF_NODISCARD ::pg_query::ObjectWithArgs* release_name(); - ::pg_query::ObjectWithArgs* mutable_name(); - void set_allocated_name(::pg_query::ObjectWithArgs* name); + // .pg_query.Node testexpr = 4 [json_name = "testexpr"]; + bool has_testexpr() const; + void clear_testexpr() ; + const ::pg_query::Node& testexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_testexpr(); + ::pg_query::Node* mutable_testexpr(); + void set_allocated_testexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_testexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_testexpr(); + private: - const ::pg_query::ObjectWithArgs& _internal_name() const; - ::pg_query::ObjectWithArgs* _internal_mutable_name(); + const ::pg_query::Node& _internal_testexpr() const; + ::pg_query::Node* _internal_mutable_testexpr(); + public: - void unsafe_arena_set_allocated_name( - ::pg_query::ObjectWithArgs* name); - ::pg_query::ObjectWithArgs* unsafe_arena_release_name(); + // .pg_query.Node subselect = 6 [json_name = "subselect"]; + bool has_subselect() const; + void clear_subselect() ; + const ::pg_query::Node& subselect() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_subselect(); + ::pg_query::Node* mutable_subselect(); + void set_allocated_subselect(::pg_query::Node* value); + void unsafe_arena_set_allocated_subselect(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_subselect(); - // .pg_query.TypeName storedtype = 6 [json_name = "storedtype"]; - bool has_storedtype() const; private: - bool _internal_has_storedtype() const; + const ::pg_query::Node& _internal_subselect() const; + ::pg_query::Node* _internal_mutable_subselect(); + public: - void clear_storedtype(); - const ::pg_query::TypeName& storedtype() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_storedtype(); - ::pg_query::TypeName* mutable_storedtype(); - void set_allocated_storedtype(::pg_query::TypeName* storedtype); + // .pg_query.SubLinkType sub_link_type = 2 [json_name = "subLinkType"]; + void clear_sub_link_type() ; + ::pg_query::SubLinkType sub_link_type() const; + void set_sub_link_type(::pg_query::SubLinkType value); + private: - const ::pg_query::TypeName& _internal_storedtype() const; - ::pg_query::TypeName* _internal_mutable_storedtype(); + ::pg_query::SubLinkType _internal_sub_link_type() const; + void _internal_set_sub_link_type(::pg_query::SubLinkType value); + public: - void unsafe_arena_set_allocated_storedtype( - ::pg_query::TypeName* storedtype); - ::pg_query::TypeName* unsafe_arena_release_storedtype(); + // int32 sub_link_id = 3 [json_name = "subLinkId"]; + void clear_sub_link_id() ; + ::int32_t sub_link_id() const; + void set_sub_link_id(::int32_t value); - // int32 itemtype = 1 [json_name = "itemtype"]; - void clear_itemtype(); - int32_t itemtype() const; - void set_itemtype(int32_t value); private: - int32_t _internal_itemtype() const; - void _internal_set_itemtype(int32_t value); + ::int32_t _internal_sub_link_id() const; + void _internal_set_sub_link_id(::int32_t value); + public: + // int32 location = 7 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 number = 3 [json_name = "number"]; - void clear_number(); - int32_t number() const; - void set_number(int32_t value); private: - int32_t _internal_number() const; - void _internal_set_number(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CreateOpClassItem) + public: + // @@protoc_insertion_point(class_scope:pg_query.SubLink) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 7, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > order_family_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > class_args_; - ::pg_query::ObjectWithArgs* name_; - ::pg_query::TypeName* storedtype_; - int32_t itemtype_; - int32_t number_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > oper_name_; + ::pg_query::Node* xpr_; + ::pg_query::Node* testexpr_; + ::pg_query::Node* subselect_; + int sub_link_type_; + ::int32_t sub_link_id_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class TableLikeClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.TableLikeClause) */ { +class SubPlan final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SubPlan) */ { public: - inline TableLikeClause() : TableLikeClause(nullptr) {} - ~TableLikeClause() override; - explicit PROTOBUF_CONSTEXPR TableLikeClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline SubPlan() : SubPlan(nullptr) {} + ~SubPlan() override; + template + explicit PROTOBUF_CONSTEXPR SubPlan(::google::protobuf::internal::ConstantInitialized); - TableLikeClause(const TableLikeClause& from); - TableLikeClause(TableLikeClause&& from) noexcept - : TableLikeClause() { + inline SubPlan(const SubPlan& from) + : SubPlan(nullptr, from) {} + SubPlan(SubPlan&& from) noexcept + : SubPlan() { *this = ::std::move(from); } - inline TableLikeClause& operator=(const TableLikeClause& from) { + inline SubPlan& operator=(const SubPlan& from) { CopyFrom(from); return *this; } - inline TableLikeClause& operator=(TableLikeClause&& from) noexcept { + inline SubPlan& operator=(SubPlan&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -56420,176 +65593,413 @@ class TableLikeClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const TableLikeClause& default_instance() { + static const SubPlan& default_instance() { return *internal_default_instance(); } - static inline const TableLikeClause* internal_default_instance() { - return reinterpret_cast( - &_TableLikeClause_default_instance_); + static inline const SubPlan* internal_default_instance() { + return reinterpret_cast( + &_SubPlan_default_instance_); } static constexpr int kIndexInFileMessages = - 217; + 30; - friend void swap(TableLikeClause& a, TableLikeClause& b) { + friend void swap(SubPlan& a, SubPlan& b) { a.Swap(&b); } - inline void Swap(TableLikeClause* other) { + inline void Swap(SubPlan* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(TableLikeClause* other) { + void UnsafeArenaSwap(SubPlan* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - TableLikeClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + SubPlan* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const TableLikeClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const TableLikeClause& from) { - TableLikeClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SubPlan& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SubPlan& from) { + SubPlan::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(TableLikeClause* other); + void InternalSwap(SubPlan* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.TableLikeClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SubPlan"; } protected: - explicit TableLikeClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit SubPlan(::google::protobuf::Arena* arena); + SubPlan(::google::protobuf::Arena* arena, const SubPlan& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRelationFieldNumber = 1, - kOptionsFieldNumber = 2, - kRelationOidFieldNumber = 3, + kParamIdsFieldNumber = 4, + kSetParamFieldNumber = 13, + kParParamFieldNumber = 14, + kArgsFieldNumber = 15, + kPlanNameFieldNumber = 6, + kXprFieldNumber = 1, + kTestexprFieldNumber = 3, + kSubLinkTypeFieldNumber = 2, + kPlanIdFieldNumber = 5, + kFirstColTypeFieldNumber = 7, + kFirstColTypmodFieldNumber = 8, + kFirstColCollationFieldNumber = 9, + kUseHashTableFieldNumber = 10, + kUnknownEqFalseFieldNumber = 11, + kParallelSafeFieldNumber = 12, + kStartupCostFieldNumber = 16, + kPerCallCostFieldNumber = 17, }; - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; + // repeated .pg_query.Node param_ids = 4 [json_name = "paramIds"]; + int param_ids_size() const; + private: + int _internal_param_ids_size() const; + + public: + void clear_param_ids() ; + ::pg_query::Node* mutable_param_ids(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_param_ids(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_param_ids() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_param_ids(); + public: + const ::pg_query::Node& param_ids(int index) const; + ::pg_query::Node* add_param_ids(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + param_ids() const; + // repeated .pg_query.Node set_param = 13 [json_name = "setParam"]; + int set_param_size() const; + private: + int _internal_set_param_size() const; + + public: + void clear_set_param() ; + ::pg_query::Node* mutable_set_param(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_set_param(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_set_param() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_set_param(); + public: + const ::pg_query::Node& set_param(int index) const; + ::pg_query::Node* add_set_param(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + set_param() const; + // repeated .pg_query.Node par_param = 14 [json_name = "parParam"]; + int par_param_size() const; + private: + int _internal_par_param_size() const; + + public: + void clear_par_param() ; + ::pg_query::Node* mutable_par_param(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_par_param(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_par_param() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_par_param(); + public: + const ::pg_query::Node& par_param(int index) const; + ::pg_query::Node* add_par_param(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + par_param() const; + // repeated .pg_query.Node args = 15 [json_name = "args"]; + int args_size() const; + private: + int _internal_args_size() const; + + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); + public: + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // string plan_name = 6 [json_name = "plan_name"]; + void clear_plan_name() ; + const std::string& plan_name() const; + template + void set_plan_name(Arg_&& arg, Args_... args); + std::string* mutable_plan_name(); + PROTOBUF_NODISCARD std::string* release_plan_name(); + void set_allocated_plan_name(std::string* value); + + private: + const std::string& _internal_plan_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_plan_name( + const std::string& value); + std::string* _internal_mutable_plan_name(); + + public: + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + + private: + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + + public: + // .pg_query.Node testexpr = 3 [json_name = "testexpr"]; + bool has_testexpr() const; + void clear_testexpr() ; + const ::pg_query::Node& testexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_testexpr(); + ::pg_query::Node* mutable_testexpr(); + void set_allocated_testexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_testexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_testexpr(); + + private: + const ::pg_query::Node& _internal_testexpr() const; + ::pg_query::Node* _internal_mutable_testexpr(); + + public: + // .pg_query.SubLinkType sub_link_type = 2 [json_name = "subLinkType"]; + void clear_sub_link_type() ; + ::pg_query::SubLinkType sub_link_type() const; + void set_sub_link_type(::pg_query::SubLinkType value); + + private: + ::pg_query::SubLinkType _internal_sub_link_type() const; + void _internal_set_sub_link_type(::pg_query::SubLinkType value); + + public: + // int32 plan_id = 5 [json_name = "plan_id"]; + void clear_plan_id() ; + ::int32_t plan_id() const; + void set_plan_id(::int32_t value); + + private: + ::int32_t _internal_plan_id() const; + void _internal_set_plan_id(::int32_t value); + + public: + // uint32 first_col_type = 7 [json_name = "firstColType"]; + void clear_first_col_type() ; + ::uint32_t first_col_type() const; + void set_first_col_type(::uint32_t value); + + private: + ::uint32_t _internal_first_col_type() const; + void _internal_set_first_col_type(::uint32_t value); + + public: + // int32 first_col_typmod = 8 [json_name = "firstColTypmod"]; + void clear_first_col_typmod() ; + ::int32_t first_col_typmod() const; + void set_first_col_typmod(::int32_t value); + + private: + ::int32_t _internal_first_col_typmod() const; + void _internal_set_first_col_typmod(::int32_t value); + + public: + // uint32 first_col_collation = 9 [json_name = "firstColCollation"]; + void clear_first_col_collation() ; + ::uint32_t first_col_collation() const; + void set_first_col_collation(::uint32_t value); + + private: + ::uint32_t _internal_first_col_collation() const; + void _internal_set_first_col_collation(::uint32_t value); + + public: + // bool use_hash_table = 10 [json_name = "useHashTable"]; + void clear_use_hash_table() ; + bool use_hash_table() const; + void set_use_hash_table(bool value); + private: - bool _internal_has_relation() const; + bool _internal_use_hash_table() const; + void _internal_set_use_hash_table(bool value); + public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + // bool unknown_eq_false = 11 [json_name = "unknownEqFalse"]; + void clear_unknown_eq_false() ; + bool unknown_eq_false() const; + void set_unknown_eq_false(bool value); + private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + bool _internal_unknown_eq_false() const; + void _internal_set_unknown_eq_false(bool value); + public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + // bool parallel_safe = 12 [json_name = "parallel_safe"]; + void clear_parallel_safe() ; + bool parallel_safe() const; + void set_parallel_safe(bool value); - // uint32 options = 2 [json_name = "options"]; - void clear_options(); - uint32_t options() const; - void set_options(uint32_t value); private: - uint32_t _internal_options() const; - void _internal_set_options(uint32_t value); + bool _internal_parallel_safe() const; + void _internal_set_parallel_safe(bool value); + public: + // double startup_cost = 16 [json_name = "startup_cost"]; + void clear_startup_cost() ; + double startup_cost() const; + void set_startup_cost(double value); - // uint32 relation_oid = 3 [json_name = "relationOid"]; - void clear_relation_oid(); - uint32_t relation_oid() const; - void set_relation_oid(uint32_t value); private: - uint32_t _internal_relation_oid() const; - void _internal_set_relation_oid(uint32_t value); + double _internal_startup_cost() const; + void _internal_set_startup_cost(double value); + public: + // double per_call_cost = 17 [json_name = "per_call_cost"]; + void clear_per_call_cost() ; + double per_call_cost() const; + void set_per_call_cost(double value); - // @@protoc_insertion_point(class_scope:pg_query.TableLikeClause) + private: + double _internal_per_call_cost() const; + void _internal_set_per_call_cost(double value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.SubPlan) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 5, 17, 6, + 50, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::RangeVar* relation_; - uint32_t options_; - uint32_t relation_oid_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > param_ids_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > set_param_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > par_param_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::google::protobuf::internal::ArenaStringPtr plan_name_; + ::pg_query::Node* xpr_; + ::pg_query::Node* testexpr_; + int sub_link_type_; + ::int32_t plan_id_; + ::uint32_t first_col_type_; + ::int32_t first_col_typmod_; + ::uint32_t first_col_collation_; + bool use_hash_table_; + bool unknown_eq_false_; + bool parallel_safe_; + double startup_cost_; + double per_call_cost_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class FunctionParameter final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.FunctionParameter) */ { +class SubscriptingRef final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.SubscriptingRef) */ { public: - inline FunctionParameter() : FunctionParameter(nullptr) {} - ~FunctionParameter() override; - explicit PROTOBUF_CONSTEXPR FunctionParameter(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline SubscriptingRef() : SubscriptingRef(nullptr) {} + ~SubscriptingRef() override; + template + explicit PROTOBUF_CONSTEXPR SubscriptingRef(::google::protobuf::internal::ConstantInitialized); - FunctionParameter(const FunctionParameter& from); - FunctionParameter(FunctionParameter&& from) noexcept - : FunctionParameter() { + inline SubscriptingRef(const SubscriptingRef& from) + : SubscriptingRef(nullptr, from) {} + SubscriptingRef(SubscriptingRef&& from) noexcept + : SubscriptingRef() { *this = ::std::move(from); } - inline FunctionParameter& operator=(const FunctionParameter& from) { + inline SubscriptingRef& operator=(const SubscriptingRef& from) { CopyFrom(from); return *this; } - inline FunctionParameter& operator=(FunctionParameter&& from) noexcept { + inline SubscriptingRef& operator=(SubscriptingRef&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -56599,201 +66009,312 @@ class FunctionParameter final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const FunctionParameter& default_instance() { + static const SubscriptingRef& default_instance() { return *internal_default_instance(); } - static inline const FunctionParameter* internal_default_instance() { - return reinterpret_cast( - &_FunctionParameter_default_instance_); + static inline const SubscriptingRef* internal_default_instance() { + return reinterpret_cast( + &_SubscriptingRef_default_instance_); } static constexpr int kIndexInFileMessages = - 218; + 21; - friend void swap(FunctionParameter& a, FunctionParameter& b) { + friend void swap(SubscriptingRef& a, SubscriptingRef& b) { a.Swap(&b); } - inline void Swap(FunctionParameter* other) { + inline void Swap(SubscriptingRef* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(FunctionParameter* other) { + void UnsafeArenaSwap(SubscriptingRef* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - FunctionParameter* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + SubscriptingRef* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FunctionParameter& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const FunctionParameter& from) { - FunctionParameter::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SubscriptingRef& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const SubscriptingRef& from) { + SubscriptingRef::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FunctionParameter* other); + void InternalSwap(SubscriptingRef* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.FunctionParameter"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.SubscriptingRef"; } protected: - explicit FunctionParameter(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit SubscriptingRef(::google::protobuf::Arena* arena); + SubscriptingRef(::google::protobuf::Arena* arena, const SubscriptingRef& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNameFieldNumber = 1, - kArgTypeFieldNumber = 2, - kDefexprFieldNumber = 4, - kModeFieldNumber = 3, + kRefupperindexprFieldNumber = 7, + kReflowerindexprFieldNumber = 8, + kXprFieldNumber = 1, + kRefexprFieldNumber = 9, + kRefassgnexprFieldNumber = 10, + kRefcontainertypeFieldNumber = 2, + kRefelemtypeFieldNumber = 3, + kRefrestypeFieldNumber = 4, + kReftypmodFieldNumber = 5, + kRefcollidFieldNumber = 6, }; - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + // repeated .pg_query.Node refupperindexpr = 7 [json_name = "refupperindexpr"]; + int refupperindexpr_size() const; private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); + int _internal_refupperindexpr_size() const; + + public: + void clear_refupperindexpr() ; + ::pg_query::Node* mutable_refupperindexpr(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_refupperindexpr(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_refupperindexpr() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_refupperindexpr(); + public: + const ::pg_query::Node& refupperindexpr(int index) const; + ::pg_query::Node* add_refupperindexpr(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + refupperindexpr() const; + // repeated .pg_query.Node reflowerindexpr = 8 [json_name = "reflowerindexpr"]; + int reflowerindexpr_size() const; + private: + int _internal_reflowerindexpr_size() const; + public: + void clear_reflowerindexpr() ; + ::pg_query::Node* mutable_reflowerindexpr(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_reflowerindexpr(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_reflowerindexpr() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_reflowerindexpr(); + public: + const ::pg_query::Node& reflowerindexpr(int index) const; + ::pg_query::Node* add_reflowerindexpr(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + reflowerindexpr() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.TypeName arg_type = 2 [json_name = "argType"]; - bool has_arg_type() const; private: - bool _internal_has_arg_type() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_arg_type(); - const ::pg_query::TypeName& arg_type() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_arg_type(); - ::pg_query::TypeName* mutable_arg_type(); - void set_allocated_arg_type(::pg_query::TypeName* arg_type); + // .pg_query.Node refexpr = 9 [json_name = "refexpr"]; + bool has_refexpr() const; + void clear_refexpr() ; + const ::pg_query::Node& refexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_refexpr(); + ::pg_query::Node* mutable_refexpr(); + void set_allocated_refexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_refexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_refexpr(); + private: - const ::pg_query::TypeName& _internal_arg_type() const; - ::pg_query::TypeName* _internal_mutable_arg_type(); + const ::pg_query::Node& _internal_refexpr() const; + ::pg_query::Node* _internal_mutable_refexpr(); + public: - void unsafe_arena_set_allocated_arg_type( - ::pg_query::TypeName* arg_type); - ::pg_query::TypeName* unsafe_arena_release_arg_type(); + // .pg_query.Node refassgnexpr = 10 [json_name = "refassgnexpr"]; + bool has_refassgnexpr() const; + void clear_refassgnexpr() ; + const ::pg_query::Node& refassgnexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_refassgnexpr(); + ::pg_query::Node* mutable_refassgnexpr(); + void set_allocated_refassgnexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_refassgnexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_refassgnexpr(); - // .pg_query.Node defexpr = 4 [json_name = "defexpr"]; - bool has_defexpr() const; private: - bool _internal_has_defexpr() const; + const ::pg_query::Node& _internal_refassgnexpr() const; + ::pg_query::Node* _internal_mutable_refassgnexpr(); + public: - void clear_defexpr(); - const ::pg_query::Node& defexpr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_defexpr(); - ::pg_query::Node* mutable_defexpr(); - void set_allocated_defexpr(::pg_query::Node* defexpr); + // uint32 refcontainertype = 2 [json_name = "refcontainertype"]; + void clear_refcontainertype() ; + ::uint32_t refcontainertype() const; + void set_refcontainertype(::uint32_t value); + private: - const ::pg_query::Node& _internal_defexpr() const; - ::pg_query::Node* _internal_mutable_defexpr(); + ::uint32_t _internal_refcontainertype() const; + void _internal_set_refcontainertype(::uint32_t value); + public: - void unsafe_arena_set_allocated_defexpr( - ::pg_query::Node* defexpr); - ::pg_query::Node* unsafe_arena_release_defexpr(); + // uint32 refelemtype = 3 [json_name = "refelemtype"]; + void clear_refelemtype() ; + ::uint32_t refelemtype() const; + void set_refelemtype(::uint32_t value); - // .pg_query.FunctionParameterMode mode = 3 [json_name = "mode"]; - void clear_mode(); - ::pg_query::FunctionParameterMode mode() const; - void set_mode(::pg_query::FunctionParameterMode value); private: - ::pg_query::FunctionParameterMode _internal_mode() const; - void _internal_set_mode(::pg_query::FunctionParameterMode value); + ::uint32_t _internal_refelemtype() const; + void _internal_set_refelemtype(::uint32_t value); + public: + // uint32 refrestype = 4 [json_name = "refrestype"]; + void clear_refrestype() ; + ::uint32_t refrestype() const; + void set_refrestype(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.FunctionParameter) + private: + ::uint32_t _internal_refrestype() const; + void _internal_set_refrestype(::uint32_t value); + + public: + // int32 reftypmod = 5 [json_name = "reftypmod"]; + void clear_reftypmod() ; + ::int32_t reftypmod() const; + void set_reftypmod(::int32_t value); + + private: + ::int32_t _internal_reftypmod() const; + void _internal_set_reftypmod(::int32_t value); + + public: + // uint32 refcollid = 6 [json_name = "refcollid"]; + void clear_refcollid() ; + ::uint32_t refcollid() const; + void set_refcollid(::uint32_t value); + + private: + ::uint32_t _internal_refcollid() const; + void _internal_set_refcollid(::uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.SubscriptingRef) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 10, 5, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::TypeName* arg_type_; - ::pg_query::Node* defexpr_; - int mode_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > refupperindexpr_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > reflowerindexpr_; + ::pg_query::Node* xpr_; + ::pg_query::Node* refexpr_; + ::pg_query::Node* refassgnexpr_; + ::uint32_t refcontainertype_; + ::uint32_t refelemtype_; + ::uint32_t refrestype_; + ::int32_t reftypmod_; + ::uint32_t refcollid_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class LockingClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.LockingClause) */ { +class TableFunc final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.TableFunc) */ { public: - inline LockingClause() : LockingClause(nullptr) {} - ~LockingClause() override; - explicit PROTOBUF_CONSTEXPR LockingClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline TableFunc() : TableFunc(nullptr) {} + ~TableFunc() override; + template + explicit PROTOBUF_CONSTEXPR TableFunc(::google::protobuf::internal::ConstantInitialized); - LockingClause(const LockingClause& from); - LockingClause(LockingClause&& from) noexcept - : LockingClause() { + inline TableFunc(const TableFunc& from) + : TableFunc(nullptr, from) {} + TableFunc(TableFunc&& from) noexcept + : TableFunc() { *this = ::std::move(from); } - inline LockingClause& operator=(const LockingClause& from) { + inline TableFunc& operator=(const TableFunc& from) { CopyFrom(from); return *this; } - inline LockingClause& operator=(LockingClause&& from) noexcept { + inline TableFunc& operator=(TableFunc&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -56803,357 +66324,400 @@ class LockingClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const LockingClause& default_instance() { + static const TableFunc& default_instance() { return *internal_default_instance(); } - static inline const LockingClause* internal_default_instance() { - return reinterpret_cast( - &_LockingClause_default_instance_); + static inline const TableFunc* internal_default_instance() { + return reinterpret_cast( + &_TableFunc_default_instance_); } static constexpr int kIndexInFileMessages = - 219; + 14; - friend void swap(LockingClause& a, LockingClause& b) { + friend void swap(TableFunc& a, TableFunc& b) { a.Swap(&b); } - inline void Swap(LockingClause* other) { + inline void Swap(TableFunc* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(LockingClause* other) { + void UnsafeArenaSwap(TableFunc* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - LockingClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + TableFunc* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const LockingClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const LockingClause& from) { - LockingClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TableFunc& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const TableFunc& from) { + TableFunc::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(LockingClause* other); + void InternalSwap(TableFunc* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.LockingClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.TableFunc"; } protected: - explicit LockingClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit TableFunc(::google::protobuf::Arena* arena); + TableFunc(::google::protobuf::Arena* arena, const TableFunc& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kLockedRelsFieldNumber = 1, - kStrengthFieldNumber = 2, - kWaitPolicyFieldNumber = 3, + kNsUrisFieldNumber = 1, + kNsNamesFieldNumber = 2, + kColnamesFieldNumber = 5, + kColtypesFieldNumber = 6, + kColtypmodsFieldNumber = 7, + kColcollationsFieldNumber = 8, + kColexprsFieldNumber = 9, + kColdefexprsFieldNumber = 10, + kNotnullsFieldNumber = 11, + kDocexprFieldNumber = 3, + kRowexprFieldNumber = 4, + kOrdinalitycolFieldNumber = 12, + kLocationFieldNumber = 13, }; - // repeated .pg_query.Node locked_rels = 1 [json_name = "lockedRels"]; - int locked_rels_size() const; + // repeated .pg_query.Node ns_uris = 1 [json_name = "ns_uris"]; + int ns_uris_size() const; private: - int _internal_locked_rels_size() const; + int _internal_ns_uris_size() const; + public: - void clear_locked_rels(); - ::pg_query::Node* mutable_locked_rels(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_locked_rels(); + void clear_ns_uris() ; + ::pg_query::Node* mutable_ns_uris(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_ns_uris(); private: - const ::pg_query::Node& _internal_locked_rels(int index) const; - ::pg_query::Node* _internal_add_locked_rels(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_ns_uris() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_ns_uris(); public: - const ::pg_query::Node& locked_rels(int index) const; - ::pg_query::Node* add_locked_rels(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - locked_rels() const; + const ::pg_query::Node& ns_uris(int index) const; + ::pg_query::Node* add_ns_uris(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + ns_uris() const; + // repeated .pg_query.Node ns_names = 2 [json_name = "ns_names"]; + int ns_names_size() const; + private: + int _internal_ns_names_size() const; - // .pg_query.LockClauseStrength strength = 2 [json_name = "strength"]; - void clear_strength(); - ::pg_query::LockClauseStrength strength() const; - void set_strength(::pg_query::LockClauseStrength value); + public: + void clear_ns_names() ; + ::pg_query::Node* mutable_ns_names(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_ns_names(); private: - ::pg_query::LockClauseStrength _internal_strength() const; - void _internal_set_strength(::pg_query::LockClauseStrength value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_ns_names() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_ns_names(); public: + const ::pg_query::Node& ns_names(int index) const; + ::pg_query::Node* add_ns_names(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + ns_names() const; + // repeated .pg_query.Node colnames = 5 [json_name = "colnames"]; + int colnames_size() const; + private: + int _internal_colnames_size() const; - // .pg_query.LockWaitPolicy wait_policy = 3 [json_name = "waitPolicy"]; - void clear_wait_policy(); - ::pg_query::LockWaitPolicy wait_policy() const; - void set_wait_policy(::pg_query::LockWaitPolicy value); + public: + void clear_colnames() ; + ::pg_query::Node* mutable_colnames(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_colnames(); private: - ::pg_query::LockWaitPolicy _internal_wait_policy() const; - void _internal_set_wait_policy(::pg_query::LockWaitPolicy value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_colnames() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_colnames(); public: + const ::pg_query::Node& colnames(int index) const; + ::pg_query::Node* add_colnames(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + colnames() const; + // repeated .pg_query.Node coltypes = 6 [json_name = "coltypes"]; + int coltypes_size() const; + private: + int _internal_coltypes_size() const; - // @@protoc_insertion_point(class_scope:pg_query.LockingClause) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > locked_rels_; - int strength_; - int wait_policy_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- - -class RowMarkClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RowMarkClause) */ { - public: - inline RowMarkClause() : RowMarkClause(nullptr) {} - ~RowMarkClause() override; - explicit PROTOBUF_CONSTEXPR RowMarkClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - RowMarkClause(const RowMarkClause& from); - RowMarkClause(RowMarkClause&& from) noexcept - : RowMarkClause() { - *this = ::std::move(from); - } - - inline RowMarkClause& operator=(const RowMarkClause& from) { - CopyFrom(from); - return *this; - } - inline RowMarkClause& operator=(RowMarkClause&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const RowMarkClause& default_instance() { - return *internal_default_instance(); - } - static inline const RowMarkClause* internal_default_instance() { - return reinterpret_cast( - &_RowMarkClause_default_instance_); - } - static constexpr int kIndexInFileMessages = - 220; - - friend void swap(RowMarkClause& a, RowMarkClause& b) { - a.Swap(&b); - } - inline void Swap(RowMarkClause* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(RowMarkClause* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - RowMarkClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RowMarkClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RowMarkClause& from) { - RowMarkClause::MergeImpl(*this, from); - } + public: + void clear_coltypes() ; + ::pg_query::Node* mutable_coltypes(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_coltypes(); private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_coltypes() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_coltypes(); public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; + const ::pg_query::Node& coltypes(int index) const; + ::pg_query::Node* add_coltypes(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + coltypes() const; + // repeated .pg_query.Node coltypmods = 7 [json_name = "coltypmods"]; + int coltypmods_size() const; + private: + int _internal_coltypmods_size() const; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + public: + void clear_coltypmods() ; + ::pg_query::Node* mutable_coltypmods(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_coltypmods(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_coltypmods() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_coltypmods(); + public: + const ::pg_query::Node& coltypmods(int index) const; + ::pg_query::Node* add_coltypmods(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + coltypmods() const; + // repeated .pg_query.Node colcollations = 8 [json_name = "colcollations"]; + int colcollations_size() const; + private: + int _internal_colcollations_size() const; + public: + void clear_colcollations() ; + ::pg_query::Node* mutable_colcollations(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_colcollations(); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RowMarkClause* other); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_colcollations() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_colcollations(); + public: + const ::pg_query::Node& colcollations(int index) const; + ::pg_query::Node* add_colcollations(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + colcollations() const; + // repeated .pg_query.Node colexprs = 9 [json_name = "colexprs"]; + int colexprs_size() const; + private: + int _internal_colexprs_size() const; + public: + void clear_colexprs() ; + ::pg_query::Node* mutable_colexprs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_colexprs(); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RowMarkClause"; - } - protected: - explicit RowMarkClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_colexprs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_colexprs(); public: + const ::pg_query::Node& colexprs(int index) const; + ::pg_query::Node* add_colexprs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + colexprs() const; + // repeated .pg_query.Node coldefexprs = 10 [json_name = "coldefexprs"]; + int coldefexprs_size() const; + private: + int _internal_coldefexprs_size() const; - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + public: + void clear_coldefexprs() ; + ::pg_query::Node* mutable_coldefexprs(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_coldefexprs(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_coldefexprs() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_coldefexprs(); + public: + const ::pg_query::Node& coldefexprs(int index) const; + ::pg_query::Node* add_coldefexprs(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + coldefexprs() const; + // repeated uint64 notnulls = 11 [json_name = "notnulls"]; + int notnulls_size() const; + private: + int _internal_notnulls_size() const; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + void clear_notnulls() ; + ::uint64_t notnulls(int index) const; + void set_notnulls(int index, ::uint64_t value); + void add_notnulls(::uint64_t value); + const ::google::protobuf::RepeatedField<::uint64_t>& notnulls() const; + ::google::protobuf::RepeatedField<::uint64_t>* mutable_notnulls(); - // nested types ---------------------------------------------------- + private: + const ::google::protobuf::RepeatedField<::uint64_t>& _internal_notnulls() const; + ::google::protobuf::RepeatedField<::uint64_t>* _internal_mutable_notnulls(); - // accessors ------------------------------------------------------- + public: + // .pg_query.Node docexpr = 3 [json_name = "docexpr"]; + bool has_docexpr() const; + void clear_docexpr() ; + const ::pg_query::Node& docexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_docexpr(); + ::pg_query::Node* mutable_docexpr(); + void set_allocated_docexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_docexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_docexpr(); - enum : int { - kRtiFieldNumber = 1, - kStrengthFieldNumber = 2, - kWaitPolicyFieldNumber = 3, - kPushedDownFieldNumber = 4, - }; - // uint32 rti = 1 [json_name = "rti"]; - void clear_rti(); - uint32_t rti() const; - void set_rti(uint32_t value); private: - uint32_t _internal_rti() const; - void _internal_set_rti(uint32_t value); + const ::pg_query::Node& _internal_docexpr() const; + ::pg_query::Node* _internal_mutable_docexpr(); + public: + // .pg_query.Node rowexpr = 4 [json_name = "rowexpr"]; + bool has_rowexpr() const; + void clear_rowexpr() ; + const ::pg_query::Node& rowexpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_rowexpr(); + ::pg_query::Node* mutable_rowexpr(); + void set_allocated_rowexpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_rowexpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_rowexpr(); - // .pg_query.LockClauseStrength strength = 2 [json_name = "strength"]; - void clear_strength(); - ::pg_query::LockClauseStrength strength() const; - void set_strength(::pg_query::LockClauseStrength value); private: - ::pg_query::LockClauseStrength _internal_strength() const; - void _internal_set_strength(::pg_query::LockClauseStrength value); + const ::pg_query::Node& _internal_rowexpr() const; + ::pg_query::Node* _internal_mutable_rowexpr(); + public: + // int32 ordinalitycol = 12 [json_name = "ordinalitycol"]; + void clear_ordinalitycol() ; + ::int32_t ordinalitycol() const; + void set_ordinalitycol(::int32_t value); - // .pg_query.LockWaitPolicy wait_policy = 3 [json_name = "waitPolicy"]; - void clear_wait_policy(); - ::pg_query::LockWaitPolicy wait_policy() const; - void set_wait_policy(::pg_query::LockWaitPolicy value); private: - ::pg_query::LockWaitPolicy _internal_wait_policy() const; - void _internal_set_wait_policy(::pg_query::LockWaitPolicy value); + ::int32_t _internal_ordinalitycol() const; + void _internal_set_ordinalitycol(::int32_t value); + public: + // int32 location = 13 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // bool pushed_down = 4 [json_name = "pushedDown"]; - void clear_pushed_down(); - bool pushed_down() const; - void set_pushed_down(bool value); private: - bool _internal_pushed_down() const; - void _internal_set_pushed_down(bool value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.RowMarkClause) + public: + // @@protoc_insertion_point(class_scope:pg_query.TableFunc) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 13, 10, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - uint32_t rti_; - int strength_; - int wait_policy_; - bool pushed_down_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > ns_uris_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > ns_names_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > colnames_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > coltypes_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > coltypmods_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > colcollations_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > colexprs_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > coldefexprs_; + ::google::protobuf::RepeatedField<::uint64_t> notnulls_; + mutable ::google::protobuf::internal::CachedSize _notnulls_cached_byte_size_; + ::pg_query::Node* docexpr_; + ::pg_query::Node* rowexpr_; + ::int32_t ordinalitycol_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class XmlSerialize final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.XmlSerialize) */ { +class TableLikeClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.TableLikeClause) */ { public: - inline XmlSerialize() : XmlSerialize(nullptr) {} - ~XmlSerialize() override; - explicit PROTOBUF_CONSTEXPR XmlSerialize(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline TableLikeClause() : TableLikeClause(nullptr) {} + ~TableLikeClause() override; + template + explicit PROTOBUF_CONSTEXPR TableLikeClause(::google::protobuf::internal::ConstantInitialized); - XmlSerialize(const XmlSerialize& from); - XmlSerialize(XmlSerialize&& from) noexcept - : XmlSerialize() { + inline TableLikeClause(const TableLikeClause& from) + : TableLikeClause(nullptr, from) {} + TableLikeClause(TableLikeClause&& from) noexcept + : TableLikeClause() { *this = ::std::move(from); } - inline XmlSerialize& operator=(const XmlSerialize& from) { + inline TableLikeClause& operator=(const TableLikeClause& from) { CopyFrom(from); return *this; } - inline XmlSerialize& operator=(XmlSerialize&& from) noexcept { + inline TableLikeClause& operator=(TableLikeClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -57163,196 +66727,202 @@ class XmlSerialize final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const XmlSerialize& default_instance() { + static const TableLikeClause& default_instance() { return *internal_default_instance(); } - static inline const XmlSerialize* internal_default_instance() { - return reinterpret_cast( - &_XmlSerialize_default_instance_); + static inline const TableLikeClause* internal_default_instance() { + return reinterpret_cast( + &_TableLikeClause_default_instance_); } static constexpr int kIndexInFileMessages = - 221; + 90; - friend void swap(XmlSerialize& a, XmlSerialize& b) { + friend void swap(TableLikeClause& a, TableLikeClause& b) { a.Swap(&b); } - inline void Swap(XmlSerialize* other) { + inline void Swap(TableLikeClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(XmlSerialize* other) { + void UnsafeArenaSwap(TableLikeClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - XmlSerialize* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + TableLikeClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const XmlSerialize& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const XmlSerialize& from) { - XmlSerialize::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TableLikeClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const TableLikeClause& from) { + TableLikeClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(XmlSerialize* other); + void InternalSwap(TableLikeClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.XmlSerialize"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.TableLikeClause"; } protected: - explicit XmlSerialize(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit TableLikeClause(::google::protobuf::Arena* arena); + TableLikeClause(::google::protobuf::Arena* arena, const TableLikeClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kExprFieldNumber = 2, - kTypeNameFieldNumber = 3, - kXmloptionFieldNumber = 1, - kLocationFieldNumber = 4, + kRelationFieldNumber = 1, + kOptionsFieldNumber = 2, + kRelationOidFieldNumber = 3, }; - // .pg_query.Node expr = 2 [json_name = "expr"]; - bool has_expr() const; - private: - bool _internal_has_expr() const; - public: - void clear_expr(); - const ::pg_query::Node& expr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); - ::pg_query::Node* mutable_expr(); - void set_allocated_expr(::pg_query::Node* expr); - private: - const ::pg_query::Node& _internal_expr() const; - ::pg_query::Node* _internal_mutable_expr(); - public: - void unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr); - ::pg_query::Node* unsafe_arena_release_expr(); + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // .pg_query.TypeName type_name = 3 [json_name = "typeName"]; - bool has_type_name() const; - private: - bool _internal_has_type_name() const; - public: - void clear_type_name(); - const ::pg_query::TypeName& type_name() const; - PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); - ::pg_query::TypeName* mutable_type_name(); - void set_allocated_type_name(::pg_query::TypeName* type_name); private: - const ::pg_query::TypeName& _internal_type_name() const; - ::pg_query::TypeName* _internal_mutable_type_name(); + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); + public: - void unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name); - ::pg_query::TypeName* unsafe_arena_release_type_name(); + // uint32 options = 2 [json_name = "options"]; + void clear_options() ; + ::uint32_t options() const; + void set_options(::uint32_t value); - // .pg_query.XmlOptionType xmloption = 1 [json_name = "xmloption"]; - void clear_xmloption(); - ::pg_query::XmlOptionType xmloption() const; - void set_xmloption(::pg_query::XmlOptionType value); private: - ::pg_query::XmlOptionType _internal_xmloption() const; - void _internal_set_xmloption(::pg_query::XmlOptionType value); + ::uint32_t _internal_options() const; + void _internal_set_options(::uint32_t value); + public: + // uint32 relation_oid = 3 [json_name = "relationOid"]; + void clear_relation_oid() ; + ::uint32_t relation_oid() const; + void set_relation_oid(::uint32_t value); - // int32 location = 4 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::uint32_t _internal_relation_oid() const; + void _internal_set_relation_oid(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.XmlSerialize) + public: + // @@protoc_insertion_point(class_scope:pg_query.TableLikeClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* expr_; - ::pg_query::TypeName* type_name_; - int xmloption_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::RangeVar* relation_; + ::uint32_t options_; + ::uint32_t relation_oid_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class WithClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.WithClause) */ { +class TableSampleClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.TableSampleClause) */ { public: - inline WithClause() : WithClause(nullptr) {} - ~WithClause() override; - explicit PROTOBUF_CONSTEXPR WithClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline TableSampleClause() : TableSampleClause(nullptr) {} + ~TableSampleClause() override; + template + explicit PROTOBUF_CONSTEXPR TableSampleClause(::google::protobuf::internal::ConstantInitialized); - WithClause(const WithClause& from); - WithClause(WithClause&& from) noexcept - : WithClause() { + inline TableSampleClause(const TableSampleClause& from) + : TableSampleClause(nullptr, from) {} + TableSampleClause(TableSampleClause&& from) noexcept + : TableSampleClause() { *this = ::std::move(from); } - inline WithClause& operator=(const WithClause& from) { + inline TableSampleClause& operator=(const TableSampleClause& from) { CopyFrom(from); return *this; } - inline WithClause& operator=(WithClause&& from) noexcept { + inline TableSampleClause& operator=(TableSampleClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -57362,176 +66932,210 @@ class WithClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const WithClause& default_instance() { + static const TableSampleClause& default_instance() { return *internal_default_instance(); } - static inline const WithClause* internal_default_instance() { - return reinterpret_cast( - &_WithClause_default_instance_); + static inline const TableSampleClause* internal_default_instance() { + return reinterpret_cast( + &_TableSampleClause_default_instance_); } static constexpr int kIndexInFileMessages = - 222; + 103; - friend void swap(WithClause& a, WithClause& b) { + friend void swap(TableSampleClause& a, TableSampleClause& b) { a.Swap(&b); } - inline void Swap(WithClause* other) { + inline void Swap(TableSampleClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(WithClause* other) { + void UnsafeArenaSwap(TableSampleClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - WithClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + TableSampleClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const WithClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const WithClause& from) { - WithClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TableSampleClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const TableSampleClause& from) { + TableSampleClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(WithClause* other); + void InternalSwap(TableSampleClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.WithClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.TableSampleClause"; } protected: - explicit WithClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit TableSampleClause(::google::protobuf::Arena* arena); + TableSampleClause(::google::protobuf::Arena* arena, const TableSampleClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCtesFieldNumber = 1, - kRecursiveFieldNumber = 2, - kLocationFieldNumber = 3, + kArgsFieldNumber = 2, + kRepeatableFieldNumber = 3, + kTsmhandlerFieldNumber = 1, }; - // repeated .pg_query.Node ctes = 1 [json_name = "ctes"]; - int ctes_size() const; + // repeated .pg_query.Node args = 2 [json_name = "args"]; + int args_size() const; private: - int _internal_ctes_size() const; + int _internal_args_size() const; + public: - void clear_ctes(); - ::pg_query::Node* mutable_ctes(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_ctes(); + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const ::pg_query::Node& _internal_ctes(int index) const; - ::pg_query::Node* _internal_add_ctes(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - const ::pg_query::Node& ctes(int index) const; - ::pg_query::Node* add_ctes(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - ctes() const; + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node repeatable = 3 [json_name = "repeatable"]; + bool has_repeatable() const; + void clear_repeatable() ; + const ::pg_query::Node& repeatable() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_repeatable(); + ::pg_query::Node* mutable_repeatable(); + void set_allocated_repeatable(::pg_query::Node* value); + void unsafe_arena_set_allocated_repeatable(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_repeatable(); - // bool recursive = 2 [json_name = "recursive"]; - void clear_recursive(); - bool recursive() const; - void set_recursive(bool value); private: - bool _internal_recursive() const; - void _internal_set_recursive(bool value); + const ::pg_query::Node& _internal_repeatable() const; + ::pg_query::Node* _internal_mutable_repeatable(); + public: + // uint32 tsmhandler = 1 [json_name = "tsmhandler"]; + void clear_tsmhandler() ; + ::uint32_t tsmhandler() const; + void set_tsmhandler(::uint32_t value); - // int32 location = 3 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::uint32_t _internal_tsmhandler() const; + void _internal_set_tsmhandler(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.WithClause) + public: + // @@protoc_insertion_point(class_scope:pg_query.TableSampleClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > ctes_; - bool recursive_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* repeatable_; + ::uint32_t tsmhandler_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class InferClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.InferClause) */ { +class TargetEntry final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.TargetEntry) */ { public: - inline InferClause() : InferClause(nullptr) {} - ~InferClause() override; - explicit PROTOBUF_CONSTEXPR InferClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline TargetEntry() : TargetEntry(nullptr) {} + ~TargetEntry() override; + template + explicit PROTOBUF_CONSTEXPR TargetEntry(::google::protobuf::internal::ConstantInitialized); - InferClause(const InferClause& from); - InferClause(InferClause&& from) noexcept - : InferClause() { + inline TargetEntry(const TargetEntry& from) + : TargetEntry(nullptr, from) {} + TargetEntry(TargetEntry&& from) noexcept + : TargetEntry() { *this = ::std::move(from); } - inline InferClause& operator=(const InferClause& from) { + inline TargetEntry& operator=(const TargetEntry& from) { CopyFrom(from); return *this; } - inline InferClause& operator=(InferClause&& from) noexcept { + inline TargetEntry& operator=(TargetEntry&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -57541,201 +67145,273 @@ class InferClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const InferClause& default_instance() { + static const TargetEntry& default_instance() { return *internal_default_instance(); } - static inline const InferClause* internal_default_instance() { - return reinterpret_cast( - &_InferClause_default_instance_); + static inline const TargetEntry* internal_default_instance() { + return reinterpret_cast( + &_TargetEntry_default_instance_); } static constexpr int kIndexInFileMessages = - 223; + 62; - friend void swap(InferClause& a, InferClause& b) { + friend void swap(TargetEntry& a, TargetEntry& b) { a.Swap(&b); } - inline void Swap(InferClause* other) { + inline void Swap(TargetEntry* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(InferClause* other) { + void UnsafeArenaSwap(TargetEntry* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - InferClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + TargetEntry* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const InferClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const InferClause& from) { - InferClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TargetEntry& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const TargetEntry& from) { + TargetEntry::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(InferClause* other); + void InternalSwap(TargetEntry* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.InferClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.TargetEntry"; } protected: - explicit InferClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit TargetEntry(::google::protobuf::Arena* arena); + TargetEntry(::google::protobuf::Arena* arena, const TargetEntry& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kIndexElemsFieldNumber = 1, - kConnameFieldNumber = 3, - kWhereClauseFieldNumber = 2, - kLocationFieldNumber = 4, + kResnameFieldNumber = 4, + kXprFieldNumber = 1, + kExprFieldNumber = 2, + kResnoFieldNumber = 3, + kRessortgrouprefFieldNumber = 5, + kResorigtblFieldNumber = 6, + kResorigcolFieldNumber = 7, + kResjunkFieldNumber = 8, }; - // repeated .pg_query.Node index_elems = 1 [json_name = "indexElems"]; - int index_elems_size() const; + // string resname = 4 [json_name = "resname"]; + void clear_resname() ; + const std::string& resname() const; + template + void set_resname(Arg_&& arg, Args_... args); + std::string* mutable_resname(); + PROTOBUF_NODISCARD std::string* release_resname(); + void set_allocated_resname(std::string* value); + private: - int _internal_index_elems_size() const; + const std::string& _internal_resname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_resname( + const std::string& value); + std::string* _internal_mutable_resname(); + public: - void clear_index_elems(); - ::pg_query::Node* mutable_index_elems(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_index_elems(); + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); + private: - const ::pg_query::Node& _internal_index_elems(int index) const; - ::pg_query::Node* _internal_add_index_elems(); + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - const ::pg_query::Node& index_elems(int index) const; - ::pg_query::Node* add_index_elems(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - index_elems() const; + // .pg_query.Node expr = 2 [json_name = "expr"]; + bool has_expr() const; + void clear_expr() ; + const ::pg_query::Node& expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); + ::pg_query::Node* mutable_expr(); + void set_allocated_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_expr(); - // string conname = 3 [json_name = "conname"]; - void clear_conname(); - const std::string& conname() const; - template - void set_conname(ArgT0&& arg0, ArgT... args); - std::string* mutable_conname(); - PROTOBUF_NODISCARD std::string* release_conname(); - void set_allocated_conname(std::string* conname); private: - const std::string& _internal_conname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_conname(const std::string& value); - std::string* _internal_mutable_conname(); + const ::pg_query::Node& _internal_expr() const; + ::pg_query::Node* _internal_mutable_expr(); + public: + // int32 resno = 3 [json_name = "resno"]; + void clear_resno() ; + ::int32_t resno() const; + void set_resno(::int32_t value); - // .pg_query.Node where_clause = 2 [json_name = "whereClause"]; - bool has_where_clause() const; private: - bool _internal_has_where_clause() const; + ::int32_t _internal_resno() const; + void _internal_set_resno(::int32_t value); + public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); + // uint32 ressortgroupref = 5 [json_name = "ressortgroupref"]; + void clear_ressortgroupref() ; + ::uint32_t ressortgroupref() const; + void set_ressortgroupref(::uint32_t value); + private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); + ::uint32_t _internal_ressortgroupref() const; + void _internal_set_ressortgroupref(::uint32_t value); + public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); + // uint32 resorigtbl = 6 [json_name = "resorigtbl"]; + void clear_resorigtbl() ; + ::uint32_t resorigtbl() const; + void set_resorigtbl(::uint32_t value); + + private: + ::uint32_t _internal_resorigtbl() const; + void _internal_set_resorigtbl(::uint32_t value); + + public: + // int32 resorigcol = 7 [json_name = "resorigcol"]; + void clear_resorigcol() ; + ::int32_t resorigcol() const; + void set_resorigcol(::int32_t value); - // int32 location = 4 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + ::int32_t _internal_resorigcol() const; + void _internal_set_resorigcol(::int32_t value); + public: + // bool resjunk = 8 [json_name = "resjunk"]; + void clear_resjunk() ; + bool resjunk() const; + void set_resjunk(bool value); - // @@protoc_insertion_point(class_scope:pg_query.InferClause) + private: + bool _internal_resjunk() const; + void _internal_set_resjunk(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.TargetEntry) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 2, + 44, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > index_elems_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr conname_; - ::pg_query::Node* where_clause_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr resname_; + ::pg_query::Node* xpr_; + ::pg_query::Node* expr_; + ::int32_t resno_; + ::uint32_t ressortgroupref_; + ::uint32_t resorigtbl_; + ::int32_t resorigcol_; + bool resjunk_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class OnConflictClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.OnConflictClause) */ { +class TransactionStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.TransactionStmt) */ { public: - inline OnConflictClause() : OnConflictClause(nullptr) {} - ~OnConflictClause() override; - explicit PROTOBUF_CONSTEXPR OnConflictClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline TransactionStmt() : TransactionStmt(nullptr) {} + ~TransactionStmt() override; + template + explicit PROTOBUF_CONSTEXPR TransactionStmt(::google::protobuf::internal::ConstantInitialized); - OnConflictClause(const OnConflictClause& from); - OnConflictClause(OnConflictClause&& from) noexcept - : OnConflictClause() { + inline TransactionStmt(const TransactionStmt& from) + : TransactionStmt(nullptr, from) {} + TransactionStmt(TransactionStmt&& from) noexcept + : TransactionStmt() { *this = ::std::move(from); } - inline OnConflictClause& operator=(const OnConflictClause& from) { + inline TransactionStmt& operator=(const TransactionStmt& from) { CopyFrom(from); return *this; } - inline OnConflictClause& operator=(OnConflictClause&& from) noexcept { + inline TransactionStmt& operator=(TransactionStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -57745,216 +67421,240 @@ class OnConflictClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const OnConflictClause& default_instance() { + static const TransactionStmt& default_instance() { return *internal_default_instance(); } - static inline const OnConflictClause* internal_default_instance() { - return reinterpret_cast( - &_OnConflictClause_default_instance_); + static inline const TransactionStmt* internal_default_instance() { + return reinterpret_cast( + &_TransactionStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 224; + 214; - friend void swap(OnConflictClause& a, OnConflictClause& b) { + friend void swap(TransactionStmt& a, TransactionStmt& b) { a.Swap(&b); } - inline void Swap(OnConflictClause* other) { + inline void Swap(TransactionStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(OnConflictClause* other) { + void UnsafeArenaSwap(TransactionStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - OnConflictClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + TransactionStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const OnConflictClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const OnConflictClause& from) { - OnConflictClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TransactionStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const TransactionStmt& from) { + TransactionStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(OnConflictClause* other); + void InternalSwap(TransactionStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.OnConflictClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.TransactionStmt"; } protected: - explicit OnConflictClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit TransactionStmt(::google::protobuf::Arena* arena); + TransactionStmt(::google::protobuf::Arena* arena, const TransactionStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kTargetListFieldNumber = 3, - kInferFieldNumber = 2, - kWhereClauseFieldNumber = 4, - kActionFieldNumber = 1, - kLocationFieldNumber = 5, + kOptionsFieldNumber = 2, + kSavepointNameFieldNumber = 3, + kGidFieldNumber = 4, + kKindFieldNumber = 1, + kChainFieldNumber = 5, }; - // repeated .pg_query.Node target_list = 3 [json_name = "targetList"]; - int target_list_size() const; - private: - int _internal_target_list_size() const; - public: - void clear_target_list(); - ::pg_query::Node* mutable_target_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_target_list(); + // repeated .pg_query.Node options = 2 [json_name = "options"]; + int options_size() const; private: - const ::pg_query::Node& _internal_target_list(int index) const; - ::pg_query::Node* _internal_add_target_list(); - public: - const ::pg_query::Node& target_list(int index) const; - ::pg_query::Node* add_target_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - target_list() const; + int _internal_options_size() const; - // .pg_query.InferClause infer = 2 [json_name = "infer"]; - bool has_infer() const; - private: - bool _internal_has_infer() const; public: - void clear_infer(); - const ::pg_query::InferClause& infer() const; - PROTOBUF_NODISCARD ::pg_query::InferClause* release_infer(); - ::pg_query::InferClause* mutable_infer(); - void set_allocated_infer(::pg_query::InferClause* infer); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::InferClause& _internal_infer() const; - ::pg_query::InferClause* _internal_mutable_infer(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - void unsafe_arena_set_allocated_infer( - ::pg_query::InferClause* infer); - ::pg_query::InferClause* unsafe_arena_release_infer(); + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // string savepoint_name = 3 [json_name = "savepoint_name"]; + void clear_savepoint_name() ; + const std::string& savepoint_name() const; + template + void set_savepoint_name(Arg_&& arg, Args_... args); + std::string* mutable_savepoint_name(); + PROTOBUF_NODISCARD std::string* release_savepoint_name(); + void set_allocated_savepoint_name(std::string* value); - // .pg_query.Node where_clause = 4 [json_name = "whereClause"]; - bool has_where_clause() const; private: - bool _internal_has_where_clause() const; + const std::string& _internal_savepoint_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_savepoint_name( + const std::string& value); + std::string* _internal_mutable_savepoint_name(); + public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); + // string gid = 4 [json_name = "gid"]; + void clear_gid() ; + const std::string& gid() const; + template + void set_gid(Arg_&& arg, Args_... args); + std::string* mutable_gid(); + PROTOBUF_NODISCARD std::string* release_gid(); + void set_allocated_gid(std::string* value); + private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); + const std::string& _internal_gid() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_gid( + const std::string& value); + std::string* _internal_mutable_gid(); + public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); + // .pg_query.TransactionStmtKind kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::TransactionStmtKind kind() const; + void set_kind(::pg_query::TransactionStmtKind value); - // .pg_query.OnConflictAction action = 1 [json_name = "action"]; - void clear_action(); - ::pg_query::OnConflictAction action() const; - void set_action(::pg_query::OnConflictAction value); private: - ::pg_query::OnConflictAction _internal_action() const; - void _internal_set_action(::pg_query::OnConflictAction value); + ::pg_query::TransactionStmtKind _internal_kind() const; + void _internal_set_kind(::pg_query::TransactionStmtKind value); + public: + // bool chain = 5 [json_name = "chain"]; + void clear_chain() ; + bool chain() const; + void set_chain(bool value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + bool _internal_chain() const; + void _internal_set_chain(bool value); - // @@protoc_insertion_point(class_scope:pg_query.OnConflictClause) + public: + // @@protoc_insertion_point(class_scope:pg_query.TransactionStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 1, + 50, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > target_list_; - ::pg_query::InferClause* infer_; - ::pg_query::Node* where_clause_; - int action_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::internal::ArenaStringPtr savepoint_name_; + ::google::protobuf::internal::ArenaStringPtr gid_; + int kind_; + bool chain_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CTESearchClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CTESearchClause) */ { +class TruncateStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.TruncateStmt) */ { public: - inline CTESearchClause() : CTESearchClause(nullptr) {} - ~CTESearchClause() override; - explicit PROTOBUF_CONSTEXPR CTESearchClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline TruncateStmt() : TruncateStmt(nullptr) {} + ~TruncateStmt() override; + template + explicit PROTOBUF_CONSTEXPR TruncateStmt(::google::protobuf::internal::ConstantInitialized); - CTESearchClause(const CTESearchClause& from); - CTESearchClause(CTESearchClause&& from) noexcept - : CTESearchClause() { + inline TruncateStmt(const TruncateStmt& from) + : TruncateStmt(nullptr, from) {} + TruncateStmt(TruncateStmt&& from) noexcept + : TruncateStmt() { *this = ::std::move(from); } - inline CTESearchClause& operator=(const CTESearchClause& from) { + inline TruncateStmt& operator=(const TruncateStmt& from) { CopyFrom(from); return *this; } - inline CTESearchClause& operator=(CTESearchClause&& from) noexcept { + inline TruncateStmt& operator=(TruncateStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -57964,192 +67664,204 @@ class CTESearchClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CTESearchClause& default_instance() { + static const TruncateStmt& default_instance() { return *internal_default_instance(); } - static inline const CTESearchClause* internal_default_instance() { - return reinterpret_cast( - &_CTESearchClause_default_instance_); + static inline const TruncateStmt* internal_default_instance() { + return reinterpret_cast( + &_TruncateStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 225; + 187; - friend void swap(CTESearchClause& a, CTESearchClause& b) { + friend void swap(TruncateStmt& a, TruncateStmt& b) { a.Swap(&b); } - inline void Swap(CTESearchClause* other) { + inline void Swap(TruncateStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CTESearchClause* other) { + void UnsafeArenaSwap(TruncateStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CTESearchClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + TruncateStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CTESearchClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CTESearchClause& from) { - CTESearchClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TruncateStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const TruncateStmt& from) { + TruncateStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CTESearchClause* other); + void InternalSwap(TruncateStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CTESearchClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.TruncateStmt"; } protected: - explicit CTESearchClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit TruncateStmt(::google::protobuf::Arena* arena); + TruncateStmt(::google::protobuf::Arena* arena, const TruncateStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kSearchColListFieldNumber = 1, - kSearchSeqColumnFieldNumber = 3, - kSearchBreadthFirstFieldNumber = 2, - kLocationFieldNumber = 4, + kRelationsFieldNumber = 1, + kRestartSeqsFieldNumber = 2, + kBehaviorFieldNumber = 3, }; - // repeated .pg_query.Node search_col_list = 1 [json_name = "search_col_list"]; - int search_col_list_size() const; + // repeated .pg_query.Node relations = 1 [json_name = "relations"]; + int relations_size() const; private: - int _internal_search_col_list_size() const; + int _internal_relations_size() const; + public: - void clear_search_col_list(); - ::pg_query::Node* mutable_search_col_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_search_col_list(); + void clear_relations() ; + ::pg_query::Node* mutable_relations(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_relations(); private: - const ::pg_query::Node& _internal_search_col_list(int index) const; - ::pg_query::Node* _internal_add_search_col_list(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_relations() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_relations(); public: - const ::pg_query::Node& search_col_list(int index) const; - ::pg_query::Node* add_search_col_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - search_col_list() const; + const ::pg_query::Node& relations(int index) const; + ::pg_query::Node* add_relations(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + relations() const; + // bool restart_seqs = 2 [json_name = "restart_seqs"]; + void clear_restart_seqs() ; + bool restart_seqs() const; + void set_restart_seqs(bool value); - // string search_seq_column = 3 [json_name = "search_seq_column"]; - void clear_search_seq_column(); - const std::string& search_seq_column() const; - template - void set_search_seq_column(ArgT0&& arg0, ArgT... args); - std::string* mutable_search_seq_column(); - PROTOBUF_NODISCARD std::string* release_search_seq_column(); - void set_allocated_search_seq_column(std::string* search_seq_column); private: - const std::string& _internal_search_seq_column() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_search_seq_column(const std::string& value); - std::string* _internal_mutable_search_seq_column(); - public: + bool _internal_restart_seqs() const; + void _internal_set_restart_seqs(bool value); - // bool search_breadth_first = 2 [json_name = "search_breadth_first"]; - void clear_search_breadth_first(); - bool search_breadth_first() const; - void set_search_breadth_first(bool value); - private: - bool _internal_search_breadth_first() const; - void _internal_set_search_breadth_first(bool value); public: + // .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; + void clear_behavior() ; + ::pg_query::DropBehavior behavior() const; + void set_behavior(::pg_query::DropBehavior value); - // int32 location = 4 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::pg_query::DropBehavior _internal_behavior() const; + void _internal_set_behavior(::pg_query::DropBehavior value); - // @@protoc_insertion_point(class_scope:pg_query.CTESearchClause) + public: + // @@protoc_insertion_point(class_scope:pg_query.TruncateStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > search_col_list_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr search_seq_column_; - bool search_breadth_first_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > relations_; + bool restart_seqs_; + int behavior_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CTECycleClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CTECycleClause) */ { +class TypeCast final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.TypeCast) */ { public: - inline CTECycleClause() : CTECycleClause(nullptr) {} - ~CTECycleClause() override; - explicit PROTOBUF_CONSTEXPR CTECycleClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline TypeCast() : TypeCast(nullptr) {} + ~TypeCast() override; + template + explicit PROTOBUF_CONSTEXPR TypeCast(::google::protobuf::internal::ConstantInitialized); - CTECycleClause(const CTECycleClause& from); - CTECycleClause(CTECycleClause&& from) noexcept - : CTECycleClause() { + inline TypeCast(const TypeCast& from) + : TypeCast(nullptr, from) {} + TypeCast(TypeCast&& from) noexcept + : TypeCast() { *this = ::std::move(from); } - inline CTECycleClause& operator=(const CTECycleClause& from) { + inline TypeCast& operator=(const TypeCast& from) { CopyFrom(from); return *this; } - inline CTECycleClause& operator=(CTECycleClause&& from) noexcept { + inline TypeCast& operator=(TypeCast&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -58159,281 +67871,207 @@ class CTECycleClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CTECycleClause& default_instance() { + static const TypeCast& default_instance() { return *internal_default_instance(); } - static inline const CTECycleClause* internal_default_instance() { - return reinterpret_cast( - &_CTECycleClause_default_instance_); + static inline const TypeCast* internal_default_instance() { + return reinterpret_cast( + &_TypeCast_default_instance_); } static constexpr int kIndexInFileMessages = - 226; + 72; - friend void swap(CTECycleClause& a, CTECycleClause& b) { + friend void swap(TypeCast& a, TypeCast& b) { a.Swap(&b); } - inline void Swap(CTECycleClause* other) { + inline void Swap(TypeCast* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CTECycleClause* other) { + void UnsafeArenaSwap(TypeCast* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CTECycleClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + TypeCast* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CTECycleClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CTECycleClause& from) { - CTECycleClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TypeCast& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const TypeCast& from) { + TypeCast::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CTECycleClause* other); + void InternalSwap(TypeCast* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CTECycleClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.TypeCast"; } protected: - explicit CTECycleClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit TypeCast(::google::protobuf::Arena* arena); + TypeCast(::google::protobuf::Arena* arena, const TypeCast& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCycleColListFieldNumber = 1, - kCycleMarkColumnFieldNumber = 2, - kCyclePathColumnFieldNumber = 5, - kCycleMarkValueFieldNumber = 3, - kCycleMarkDefaultFieldNumber = 4, - kLocationFieldNumber = 6, - kCycleMarkTypeFieldNumber = 7, - kCycleMarkTypmodFieldNumber = 8, - kCycleMarkCollationFieldNumber = 9, - kCycleMarkNeopFieldNumber = 10, + kArgFieldNumber = 1, + kTypeNameFieldNumber = 2, + kLocationFieldNumber = 3, }; - // repeated .pg_query.Node cycle_col_list = 1 [json_name = "cycle_col_list"]; - int cycle_col_list_size() const; - private: - int _internal_cycle_col_list_size() const; - public: - void clear_cycle_col_list(); - ::pg_query::Node* mutable_cycle_col_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_cycle_col_list(); - private: - const ::pg_query::Node& _internal_cycle_col_list(int index) const; - ::pg_query::Node* _internal_add_cycle_col_list(); - public: - const ::pg_query::Node& cycle_col_list(int index) const; - ::pg_query::Node* add_cycle_col_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - cycle_col_list() const; - - // string cycle_mark_column = 2 [json_name = "cycle_mark_column"]; - void clear_cycle_mark_column(); - const std::string& cycle_mark_column() const; - template - void set_cycle_mark_column(ArgT0&& arg0, ArgT... args); - std::string* mutable_cycle_mark_column(); - PROTOBUF_NODISCARD std::string* release_cycle_mark_column(); - void set_allocated_cycle_mark_column(std::string* cycle_mark_column); - private: - const std::string& _internal_cycle_mark_column() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_cycle_mark_column(const std::string& value); - std::string* _internal_mutable_cycle_mark_column(); - public: - - // string cycle_path_column = 5 [json_name = "cycle_path_column"]; - void clear_cycle_path_column(); - const std::string& cycle_path_column() const; - template - void set_cycle_path_column(ArgT0&& arg0, ArgT... args); - std::string* mutable_cycle_path_column(); - PROTOBUF_NODISCARD std::string* release_cycle_path_column(); - void set_allocated_cycle_path_column(std::string* cycle_path_column); - private: - const std::string& _internal_cycle_path_column() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_cycle_path_column(const std::string& value); - std::string* _internal_mutable_cycle_path_column(); - public: - - // .pg_query.Node cycle_mark_value = 3 [json_name = "cycle_mark_value"]; - bool has_cycle_mark_value() const; - private: - bool _internal_has_cycle_mark_value() const; - public: - void clear_cycle_mark_value(); - const ::pg_query::Node& cycle_mark_value() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_cycle_mark_value(); - ::pg_query::Node* mutable_cycle_mark_value(); - void set_allocated_cycle_mark_value(::pg_query::Node* cycle_mark_value); - private: - const ::pg_query::Node& _internal_cycle_mark_value() const; - ::pg_query::Node* _internal_mutable_cycle_mark_value(); - public: - void unsafe_arena_set_allocated_cycle_mark_value( - ::pg_query::Node* cycle_mark_value); - ::pg_query::Node* unsafe_arena_release_cycle_mark_value(); + // .pg_query.Node arg = 1 [json_name = "arg"]; + bool has_arg() const; + void clear_arg() ; + const ::pg_query::Node& arg() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_arg(); + ::pg_query::Node* mutable_arg(); + void set_allocated_arg(::pg_query::Node* value); + void unsafe_arena_set_allocated_arg(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_arg(); - // .pg_query.Node cycle_mark_default = 4 [json_name = "cycle_mark_default"]; - bool has_cycle_mark_default() const; - private: - bool _internal_has_cycle_mark_default() const; - public: - void clear_cycle_mark_default(); - const ::pg_query::Node& cycle_mark_default() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_cycle_mark_default(); - ::pg_query::Node* mutable_cycle_mark_default(); - void set_allocated_cycle_mark_default(::pg_query::Node* cycle_mark_default); private: - const ::pg_query::Node& _internal_cycle_mark_default() const; - ::pg_query::Node* _internal_mutable_cycle_mark_default(); - public: - void unsafe_arena_set_allocated_cycle_mark_default( - ::pg_query::Node* cycle_mark_default); - ::pg_query::Node* unsafe_arena_release_cycle_mark_default(); + const ::pg_query::Node& _internal_arg() const; + ::pg_query::Node* _internal_mutable_arg(); - // int32 location = 6 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: + // .pg_query.TypeName type_name = 2 [json_name = "typeName"]; + bool has_type_name() const; + void clear_type_name() ; + const ::pg_query::TypeName& type_name() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); + ::pg_query::TypeName* mutable_type_name(); + void set_allocated_type_name(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_type_name(); - // uint32 cycle_mark_type = 7 [json_name = "cycle_mark_type"]; - void clear_cycle_mark_type(); - uint32_t cycle_mark_type() const; - void set_cycle_mark_type(uint32_t value); private: - uint32_t _internal_cycle_mark_type() const; - void _internal_set_cycle_mark_type(uint32_t value); - public: + const ::pg_query::TypeName& _internal_type_name() const; + ::pg_query::TypeName* _internal_mutable_type_name(); - // int32 cycle_mark_typmod = 8 [json_name = "cycle_mark_typmod"]; - void clear_cycle_mark_typmod(); - int32_t cycle_mark_typmod() const; - void set_cycle_mark_typmod(int32_t value); - private: - int32_t _internal_cycle_mark_typmod() const; - void _internal_set_cycle_mark_typmod(int32_t value); public: + // int32 location = 3 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // uint32 cycle_mark_collation = 9 [json_name = "cycle_mark_collation"]; - void clear_cycle_mark_collation(); - uint32_t cycle_mark_collation() const; - void set_cycle_mark_collation(uint32_t value); private: - uint32_t _internal_cycle_mark_collation() const; - void _internal_set_cycle_mark_collation(uint32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // uint32 cycle_mark_neop = 10 [json_name = "cycle_mark_neop"]; - void clear_cycle_mark_neop(); - uint32_t cycle_mark_neop() const; - void set_cycle_mark_neop(uint32_t value); - private: - uint32_t _internal_cycle_mark_neop() const; - void _internal_set_cycle_mark_neop(uint32_t value); public: - - // @@protoc_insertion_point(class_scope:pg_query.CTECycleClause) + // @@protoc_insertion_point(class_scope:pg_query.TypeCast) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > cycle_col_list_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cycle_mark_column_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cycle_path_column_; - ::pg_query::Node* cycle_mark_value_; - ::pg_query::Node* cycle_mark_default_; - int32_t location_; - uint32_t cycle_mark_type_; - int32_t cycle_mark_typmod_; - uint32_t cycle_mark_collation_; - uint32_t cycle_mark_neop_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* arg_; + ::pg_query::TypeName* type_name_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CommonTableExpr final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CommonTableExpr) */ { +class TypeName final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.TypeName) */ { public: - inline CommonTableExpr() : CommonTableExpr(nullptr) {} - ~CommonTableExpr() override; - explicit PROTOBUF_CONSTEXPR CommonTableExpr(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline TypeName() : TypeName(nullptr) {} + ~TypeName() override; + template + explicit PROTOBUF_CONSTEXPR TypeName(::google::protobuf::internal::ConstantInitialized); - CommonTableExpr(const CommonTableExpr& from); - CommonTableExpr(CommonTableExpr&& from) noexcept - : CommonTableExpr() { + inline TypeName(const TypeName& from) + : TypeName(nullptr, from) {} + TypeName(TypeName&& from) noexcept + : TypeName() { *this = ::std::move(from); } - inline CommonTableExpr& operator=(const CommonTableExpr& from) { + inline TypeName& operator=(const TypeName& from) { CopyFrom(from); return *this; } - inline CommonTableExpr& operator=(CommonTableExpr&& from) noexcept { + inline TypeName& operator=(TypeName&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -58443,354 +68081,280 @@ class CommonTableExpr final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CommonTableExpr& default_instance() { + static const TypeName& default_instance() { return *internal_default_instance(); } - static inline const CommonTableExpr* internal_default_instance() { - return reinterpret_cast( - &_CommonTableExpr_default_instance_); + static inline const TypeName* internal_default_instance() { + return reinterpret_cast( + &_TypeName_default_instance_); } static constexpr int kIndexInFileMessages = - 227; + 68; - friend void swap(CommonTableExpr& a, CommonTableExpr& b) { + friend void swap(TypeName& a, TypeName& b) { a.Swap(&b); } - inline void Swap(CommonTableExpr* other) { + inline void Swap(TypeName* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CommonTableExpr* other) { + void UnsafeArenaSwap(TypeName* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CommonTableExpr* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + TypeName* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CommonTableExpr& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CommonTableExpr& from) { - CommonTableExpr::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TypeName& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const TypeName& from) { + TypeName::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CommonTableExpr* other); + void InternalSwap(TypeName* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CommonTableExpr"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.TypeName"; } protected: - explicit CommonTableExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit TypeName(::google::protobuf::Arena* arena); + TypeName(::google::protobuf::Arena* arena, const TypeName& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kAliascolnamesFieldNumber = 2, - kCtecolnamesFieldNumber = 10, - kCtecoltypesFieldNumber = 11, - kCtecoltypmodsFieldNumber = 12, - kCtecolcollationsFieldNumber = 13, - kCtenameFieldNumber = 1, - kCtequeryFieldNumber = 4, - kSearchClauseFieldNumber = 5, - kCycleClauseFieldNumber = 6, - kCtematerializedFieldNumber = 3, - kLocationFieldNumber = 7, - kCterecursiveFieldNumber = 8, - kCterefcountFieldNumber = 9, + kNamesFieldNumber = 1, + kTypmodsFieldNumber = 5, + kArrayBoundsFieldNumber = 7, + kTypeOidFieldNumber = 2, + kSetofFieldNumber = 3, + kPctTypeFieldNumber = 4, + kTypemodFieldNumber = 6, + kLocationFieldNumber = 8, }; - // repeated .pg_query.Node aliascolnames = 2 [json_name = "aliascolnames"]; - int aliascolnames_size() const; - private: - int _internal_aliascolnames_size() const; - public: - void clear_aliascolnames(); - ::pg_query::Node* mutable_aliascolnames(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_aliascolnames(); + // repeated .pg_query.Node names = 1 [json_name = "names"]; + int names_size() const; private: - const ::pg_query::Node& _internal_aliascolnames(int index) const; - ::pg_query::Node* _internal_add_aliascolnames(); - public: - const ::pg_query::Node& aliascolnames(int index) const; - ::pg_query::Node* add_aliascolnames(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - aliascolnames() const; + int _internal_names_size() const; - // repeated .pg_query.Node ctecolnames = 10 [json_name = "ctecolnames"]; - int ctecolnames_size() const; - private: - int _internal_ctecolnames_size() const; - public: - void clear_ctecolnames(); - ::pg_query::Node* mutable_ctecolnames(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_ctecolnames(); - private: - const ::pg_query::Node& _internal_ctecolnames(int index) const; - ::pg_query::Node* _internal_add_ctecolnames(); public: - const ::pg_query::Node& ctecolnames(int index) const; - ::pg_query::Node* add_ctecolnames(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - ctecolnames() const; - - // repeated .pg_query.Node ctecoltypes = 11 [json_name = "ctecoltypes"]; - int ctecoltypes_size() const; + void clear_names() ; + ::pg_query::Node* mutable_names(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_names(); private: - int _internal_ctecoltypes_size() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_names() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_names(); public: - void clear_ctecoltypes(); - ::pg_query::Node* mutable_ctecoltypes(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_ctecoltypes(); + const ::pg_query::Node& names(int index) const; + ::pg_query::Node* add_names(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + names() const; + // repeated .pg_query.Node typmods = 5 [json_name = "typmods"]; + int typmods_size() const; private: - const ::pg_query::Node& _internal_ctecoltypes(int index) const; - ::pg_query::Node* _internal_add_ctecoltypes(); - public: - const ::pg_query::Node& ctecoltypes(int index) const; - ::pg_query::Node* add_ctecoltypes(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - ctecoltypes() const; + int _internal_typmods_size() const; - // repeated .pg_query.Node ctecoltypmods = 12 [json_name = "ctecoltypmods"]; - int ctecoltypmods_size() const; - private: - int _internal_ctecoltypmods_size() const; public: - void clear_ctecoltypmods(); - ::pg_query::Node* mutable_ctecoltypmods(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_ctecoltypmods(); + void clear_typmods() ; + ::pg_query::Node* mutable_typmods(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_typmods(); private: - const ::pg_query::Node& _internal_ctecoltypmods(int index) const; - ::pg_query::Node* _internal_add_ctecoltypmods(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_typmods() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_typmods(); public: - const ::pg_query::Node& ctecoltypmods(int index) const; - ::pg_query::Node* add_ctecoltypmods(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - ctecoltypmods() const; - - // repeated .pg_query.Node ctecolcollations = 13 [json_name = "ctecolcollations"]; - int ctecolcollations_size() const; + const ::pg_query::Node& typmods(int index) const; + ::pg_query::Node* add_typmods(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + typmods() const; + // repeated .pg_query.Node array_bounds = 7 [json_name = "arrayBounds"]; + int array_bounds_size() const; private: - int _internal_ctecolcollations_size() const; + int _internal_array_bounds_size() const; + public: - void clear_ctecolcollations(); - ::pg_query::Node* mutable_ctecolcollations(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_ctecolcollations(); + void clear_array_bounds() ; + ::pg_query::Node* mutable_array_bounds(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_array_bounds(); private: - const ::pg_query::Node& _internal_ctecolcollations(int index) const; - ::pg_query::Node* _internal_add_ctecolcollations(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_array_bounds() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_array_bounds(); public: - const ::pg_query::Node& ctecolcollations(int index) const; - ::pg_query::Node* add_ctecolcollations(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - ctecolcollations() const; + const ::pg_query::Node& array_bounds(int index) const; + ::pg_query::Node* add_array_bounds(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + array_bounds() const; + // uint32 type_oid = 2 [json_name = "typeOid"]; + void clear_type_oid() ; + ::uint32_t type_oid() const; + void set_type_oid(::uint32_t value); - // string ctename = 1 [json_name = "ctename"]; - void clear_ctename(); - const std::string& ctename() const; - template - void set_ctename(ArgT0&& arg0, ArgT... args); - std::string* mutable_ctename(); - PROTOBUF_NODISCARD std::string* release_ctename(); - void set_allocated_ctename(std::string* ctename); private: - const std::string& _internal_ctename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_ctename(const std::string& value); - std::string* _internal_mutable_ctename(); - public: + ::uint32_t _internal_type_oid() const; + void _internal_set_type_oid(::uint32_t value); - // .pg_query.Node ctequery = 4 [json_name = "ctequery"]; - bool has_ctequery() const; - private: - bool _internal_has_ctequery() const; - public: - void clear_ctequery(); - const ::pg_query::Node& ctequery() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_ctequery(); - ::pg_query::Node* mutable_ctequery(); - void set_allocated_ctequery(::pg_query::Node* ctequery); - private: - const ::pg_query::Node& _internal_ctequery() const; - ::pg_query::Node* _internal_mutable_ctequery(); public: - void unsafe_arena_set_allocated_ctequery( - ::pg_query::Node* ctequery); - ::pg_query::Node* unsafe_arena_release_ctequery(); + // bool setof = 3 [json_name = "setof"]; + void clear_setof() ; + bool setof() const; + void set_setof(bool value); - // .pg_query.CTESearchClause search_clause = 5 [json_name = "search_clause"]; - bool has_search_clause() const; - private: - bool _internal_has_search_clause() const; - public: - void clear_search_clause(); - const ::pg_query::CTESearchClause& search_clause() const; - PROTOBUF_NODISCARD ::pg_query::CTESearchClause* release_search_clause(); - ::pg_query::CTESearchClause* mutable_search_clause(); - void set_allocated_search_clause(::pg_query::CTESearchClause* search_clause); private: - const ::pg_query::CTESearchClause& _internal_search_clause() const; - ::pg_query::CTESearchClause* _internal_mutable_search_clause(); - public: - void unsafe_arena_set_allocated_search_clause( - ::pg_query::CTESearchClause* search_clause); - ::pg_query::CTESearchClause* unsafe_arena_release_search_clause(); + bool _internal_setof() const; + void _internal_set_setof(bool value); - // .pg_query.CTECycleClause cycle_clause = 6 [json_name = "cycle_clause"]; - bool has_cycle_clause() const; - private: - bool _internal_has_cycle_clause() const; - public: - void clear_cycle_clause(); - const ::pg_query::CTECycleClause& cycle_clause() const; - PROTOBUF_NODISCARD ::pg_query::CTECycleClause* release_cycle_clause(); - ::pg_query::CTECycleClause* mutable_cycle_clause(); - void set_allocated_cycle_clause(::pg_query::CTECycleClause* cycle_clause); - private: - const ::pg_query::CTECycleClause& _internal_cycle_clause() const; - ::pg_query::CTECycleClause* _internal_mutable_cycle_clause(); public: - void unsafe_arena_set_allocated_cycle_clause( - ::pg_query::CTECycleClause* cycle_clause); - ::pg_query::CTECycleClause* unsafe_arena_release_cycle_clause(); + // bool pct_type = 4 [json_name = "pct_type"]; + void clear_pct_type() ; + bool pct_type() const; + void set_pct_type(bool value); - // .pg_query.CTEMaterialize ctematerialized = 3 [json_name = "ctematerialized"]; - void clear_ctematerialized(); - ::pg_query::CTEMaterialize ctematerialized() const; - void set_ctematerialized(::pg_query::CTEMaterialize value); private: - ::pg_query::CTEMaterialize _internal_ctematerialized() const; - void _internal_set_ctematerialized(::pg_query::CTEMaterialize value); - public: + bool _internal_pct_type() const; + void _internal_set_pct_type(bool value); - // int32 location = 7 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); - private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); public: + // int32 typemod = 6 [json_name = "typemod"]; + void clear_typemod() ; + ::int32_t typemod() const; + void set_typemod(::int32_t value); - // bool cterecursive = 8 [json_name = "cterecursive"]; - void clear_cterecursive(); - bool cterecursive() const; - void set_cterecursive(bool value); private: - bool _internal_cterecursive() const; - void _internal_set_cterecursive(bool value); + ::int32_t _internal_typemod() const; + void _internal_set_typemod(::int32_t value); + public: + // int32 location = 8 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // int32 cterefcount = 9 [json_name = "cterefcount"]; - void clear_cterefcount(); - int32_t cterefcount() const; - void set_cterefcount(int32_t value); private: - int32_t _internal_cterefcount() const; - void _internal_set_cterefcount(int32_t value); - public: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.CommonTableExpr) + public: + // @@protoc_insertion_point(class_scope:pg_query.TypeName) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > aliascolnames_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > ctecolnames_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > ctecoltypes_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > ctecoltypmods_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > ctecolcollations_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr ctename_; - ::pg_query::Node* ctequery_; - ::pg_query::CTESearchClause* search_clause_; - ::pg_query::CTECycleClause* cycle_clause_; - int ctematerialized_; - int32_t location_; - bool cterecursive_; - int32_t cterefcount_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > names_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > typmods_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > array_bounds_; + ::uint32_t type_oid_; + bool setof_; + bool pct_type_; + ::int32_t typemod_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class MergeWhenClause final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.MergeWhenClause) */ { +class UpdateStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.UpdateStmt) */ { public: - inline MergeWhenClause() : MergeWhenClause(nullptr) {} - ~MergeWhenClause() override; - explicit PROTOBUF_CONSTEXPR MergeWhenClause(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline UpdateStmt() : UpdateStmt(nullptr) {} + ~UpdateStmt() override; + template + explicit PROTOBUF_CONSTEXPR UpdateStmt(::google::protobuf::internal::ConstantInitialized); - MergeWhenClause(const MergeWhenClause& from); - MergeWhenClause(MergeWhenClause&& from) noexcept - : MergeWhenClause() { + inline UpdateStmt(const UpdateStmt& from) + : UpdateStmt(nullptr, from) {} + UpdateStmt(UpdateStmt&& from) noexcept + : UpdateStmt() { *this = ::std::move(from); } - inline MergeWhenClause& operator=(const MergeWhenClause& from) { + inline UpdateStmt& operator=(const UpdateStmt& from) { CopyFrom(from); return *this; } - inline MergeWhenClause& operator=(MergeWhenClause&& from) noexcept { + inline UpdateStmt& operator=(UpdateStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -58800,227 +68364,272 @@ class MergeWhenClause final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const MergeWhenClause& default_instance() { + static const UpdateStmt& default_instance() { return *internal_default_instance(); } - static inline const MergeWhenClause* internal_default_instance() { - return reinterpret_cast( - &_MergeWhenClause_default_instance_); + static inline const UpdateStmt* internal_default_instance() { + return reinterpret_cast( + &_UpdateStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 228; + 129; - friend void swap(MergeWhenClause& a, MergeWhenClause& b) { + friend void swap(UpdateStmt& a, UpdateStmt& b) { a.Swap(&b); } - inline void Swap(MergeWhenClause* other) { + inline void Swap(UpdateStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(MergeWhenClause* other) { + void UnsafeArenaSwap(UpdateStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - MergeWhenClause* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + UpdateStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const MergeWhenClause& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const MergeWhenClause& from) { - MergeWhenClause::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const UpdateStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const UpdateStmt& from) { + UpdateStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(MergeWhenClause* other); + void InternalSwap(UpdateStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.MergeWhenClause"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.UpdateStmt"; } protected: - explicit MergeWhenClause(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit UpdateStmt(::google::protobuf::Arena* arena); + UpdateStmt(::google::protobuf::Arena* arena, const UpdateStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kTargetListFieldNumber = 5, - kValuesFieldNumber = 6, - kConditionFieldNumber = 4, - kMatchedFieldNumber = 1, - kCommandTypeFieldNumber = 2, - kOverrideFieldNumber = 3, + kTargetListFieldNumber = 2, + kFromClauseFieldNumber = 4, + kReturningListFieldNumber = 5, + kRelationFieldNumber = 1, + kWhereClauseFieldNumber = 3, + kWithClauseFieldNumber = 6, }; - // repeated .pg_query.Node target_list = 5 [json_name = "targetList"]; + // repeated .pg_query.Node target_list = 2 [json_name = "targetList"]; int target_list_size() const; private: int _internal_target_list_size() const; + public: - void clear_target_list(); + void clear_target_list() ; ::pg_query::Node* mutable_target_list(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* mutable_target_list(); private: - const ::pg_query::Node& _internal_target_list(int index) const; - ::pg_query::Node* _internal_add_target_list(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_target_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_target_list(); public: const ::pg_query::Node& target_list(int index) const; ::pg_query::Node* add_target_list(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& target_list() const; - - // repeated .pg_query.Node values = 6 [json_name = "values"]; - int values_size() const; + // repeated .pg_query.Node from_clause = 4 [json_name = "fromClause"]; + int from_clause_size() const; private: - int _internal_values_size() const; + int _internal_from_clause_size() const; + public: - void clear_values(); - ::pg_query::Node* mutable_values(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_values(); + void clear_from_clause() ; + ::pg_query::Node* mutable_from_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_from_clause(); private: - const ::pg_query::Node& _internal_values(int index) const; - ::pg_query::Node* _internal_add_values(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_from_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_from_clause(); public: - const ::pg_query::Node& values(int index) const; - ::pg_query::Node* add_values(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - values() const; - - // .pg_query.Node condition = 4 [json_name = "condition"]; - bool has_condition() const; + const ::pg_query::Node& from_clause(int index) const; + ::pg_query::Node* add_from_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + from_clause() const; + // repeated .pg_query.Node returning_list = 5 [json_name = "returningList"]; + int returning_list_size() const; private: - bool _internal_has_condition() const; + int _internal_returning_list_size() const; + public: - void clear_condition(); - const ::pg_query::Node& condition() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_condition(); - ::pg_query::Node* mutable_condition(); - void set_allocated_condition(::pg_query::Node* condition); + void clear_returning_list() ; + ::pg_query::Node* mutable_returning_list(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_returning_list(); private: - const ::pg_query::Node& _internal_condition() const; - ::pg_query::Node* _internal_mutable_condition(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_returning_list() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_returning_list(); public: - void unsafe_arena_set_allocated_condition( - ::pg_query::Node* condition); - ::pg_query::Node* unsafe_arena_release_condition(); + const ::pg_query::Node& returning_list(int index) const; + ::pg_query::Node* add_returning_list(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + returning_list() const; + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // bool matched = 1 [json_name = "matched"]; - void clear_matched(); - bool matched() const; - void set_matched(bool value); private: - bool _internal_matched() const; - void _internal_set_matched(bool value); + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); + public: + // .pg_query.Node where_clause = 3 [json_name = "whereClause"]; + bool has_where_clause() const; + void clear_where_clause() ; + const ::pg_query::Node& where_clause() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); + ::pg_query::Node* mutable_where_clause(); + void set_allocated_where_clause(::pg_query::Node* value); + void unsafe_arena_set_allocated_where_clause(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_where_clause(); - // .pg_query.CmdType command_type = 2 [json_name = "commandType"]; - void clear_command_type(); - ::pg_query::CmdType command_type() const; - void set_command_type(::pg_query::CmdType value); private: - ::pg_query::CmdType _internal_command_type() const; - void _internal_set_command_type(::pg_query::CmdType value); + const ::pg_query::Node& _internal_where_clause() const; + ::pg_query::Node* _internal_mutable_where_clause(); + public: + // .pg_query.WithClause with_clause = 6 [json_name = "withClause"]; + bool has_with_clause() const; + void clear_with_clause() ; + const ::pg_query::WithClause& with_clause() const; + PROTOBUF_NODISCARD ::pg_query::WithClause* release_with_clause(); + ::pg_query::WithClause* mutable_with_clause(); + void set_allocated_with_clause(::pg_query::WithClause* value); + void unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value); + ::pg_query::WithClause* unsafe_arena_release_with_clause(); - // .pg_query.OverridingKind override = 3 [json_name = "override"]; - void clear_override(); - ::pg_query::OverridingKind override() const; - void set_override(::pg_query::OverridingKind value); private: - ::pg_query::OverridingKind _internal_override() const; - void _internal_set_override(::pg_query::OverridingKind value); - public: + const ::pg_query::WithClause& _internal_with_clause() const; + ::pg_query::WithClause* _internal_mutable_with_clause(); - // @@protoc_insertion_point(class_scope:pg_query.MergeWhenClause) + public: + // @@protoc_insertion_point(class_scope:pg_query.UpdateStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 6, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > target_list_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > values_; - ::pg_query::Node* condition_; - bool matched_; - int command_type_; - int override_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > target_list_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > from_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > returning_list_; + ::pg_query::RangeVar* relation_; + ::pg_query::Node* where_clause_; + ::pg_query::WithClause* with_clause_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class RoleSpec final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.RoleSpec) */ { +class VacuumRelation final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.VacuumRelation) */ { public: - inline RoleSpec() : RoleSpec(nullptr) {} - ~RoleSpec() override; - explicit PROTOBUF_CONSTEXPR RoleSpec(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline VacuumRelation() : VacuumRelation(nullptr) {} + ~VacuumRelation() override; + template + explicit PROTOBUF_CONSTEXPR VacuumRelation(::google::protobuf::internal::ConstantInitialized); - RoleSpec(const RoleSpec& from); - RoleSpec(RoleSpec&& from) noexcept - : RoleSpec() { + inline VacuumRelation(const VacuumRelation& from) + : VacuumRelation(nullptr, from) {} + VacuumRelation(VacuumRelation&& from) noexcept + : VacuumRelation() { *this = ::std::move(from); } - inline RoleSpec& operator=(const RoleSpec& from) { + inline VacuumRelation& operator=(const VacuumRelation& from) { CopyFrom(from); return *this; } - inline RoleSpec& operator=(RoleSpec&& from) noexcept { + inline VacuumRelation& operator=(VacuumRelation&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -59030,172 +68639,210 @@ class RoleSpec final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RoleSpec& default_instance() { + static const VacuumRelation& default_instance() { return *internal_default_instance(); } - static inline const RoleSpec* internal_default_instance() { - return reinterpret_cast( - &_RoleSpec_default_instance_); + static inline const VacuumRelation* internal_default_instance() { + return reinterpret_cast( + &_VacuumRelation_default_instance_); } static constexpr int kIndexInFileMessages = 229; - friend void swap(RoleSpec& a, RoleSpec& b) { + friend void swap(VacuumRelation& a, VacuumRelation& b) { a.Swap(&b); } - inline void Swap(RoleSpec* other) { + inline void Swap(VacuumRelation* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RoleSpec* other) { + void UnsafeArenaSwap(VacuumRelation* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - RoleSpec* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + VacuumRelation* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RoleSpec& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const RoleSpec& from) { - RoleSpec::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const VacuumRelation& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const VacuumRelation& from) { + VacuumRelation::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(RoleSpec* other); + void InternalSwap(VacuumRelation* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.RoleSpec"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.VacuumRelation"; } protected: - explicit RoleSpec(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit VacuumRelation(::google::protobuf::Arena* arena); + VacuumRelation(::google::protobuf::Arena* arena, const VacuumRelation& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kRolenameFieldNumber = 2, - kRoletypeFieldNumber = 1, - kLocationFieldNumber = 3, + kVaColsFieldNumber = 3, + kRelationFieldNumber = 1, + kOidFieldNumber = 2, }; - // string rolename = 2 [json_name = "rolename"]; - void clear_rolename(); - const std::string& rolename() const; - template - void set_rolename(ArgT0&& arg0, ArgT... args); - std::string* mutable_rolename(); - PROTOBUF_NODISCARD std::string* release_rolename(); - void set_allocated_rolename(std::string* rolename); + // repeated .pg_query.Node va_cols = 3 [json_name = "va_cols"]; + int va_cols_size() const; private: - const std::string& _internal_rolename() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_rolename(const std::string& value); - std::string* _internal_mutable_rolename(); - public: + int _internal_va_cols_size() const; - // .pg_query.RoleSpecType roletype = 1 [json_name = "roletype"]; - void clear_roletype(); - ::pg_query::RoleSpecType roletype() const; - void set_roletype(::pg_query::RoleSpecType value); + public: + void clear_va_cols() ; + ::pg_query::Node* mutable_va_cols(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_va_cols(); private: - ::pg_query::RoleSpecType _internal_roletype() const; - void _internal_set_roletype(::pg_query::RoleSpecType value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_va_cols() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_va_cols(); public: + const ::pg_query::Node& va_cols(int index) const; + ::pg_query::Node* add_va_cols(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + va_cols() const; + // .pg_query.RangeVar relation = 1 [json_name = "relation"]; + bool has_relation() const; + void clear_relation() ; + const ::pg_query::RangeVar& relation() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); + ::pg_query::RangeVar* mutable_relation(); + void set_allocated_relation(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_relation(); - // int32 location = 3 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::pg_query::RangeVar& _internal_relation() const; + ::pg_query::RangeVar* _internal_mutable_relation(); + public: + // uint32 oid = 2 [json_name = "oid"]; + void clear_oid() ; + ::uint32_t oid() const; + void set_oid(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.RoleSpec) + private: + ::uint32_t _internal_oid() const; + void _internal_set_oid(::uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.VacuumRelation) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr rolename_; - int roletype_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > va_cols_; + ::pg_query::RangeVar* relation_; + ::uint32_t oid_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class TriggerTransition final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.TriggerTransition) */ { +class VacuumStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.VacuumStmt) */ { public: - inline TriggerTransition() : TriggerTransition(nullptr) {} - ~TriggerTransition() override; - explicit PROTOBUF_CONSTEXPR TriggerTransition(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline VacuumStmt() : VacuumStmt(nullptr) {} + ~VacuumStmt() override; + template + explicit PROTOBUF_CONSTEXPR VacuumStmt(::google::protobuf::internal::ConstantInitialized); - TriggerTransition(const TriggerTransition& from); - TriggerTransition(TriggerTransition&& from) noexcept - : TriggerTransition() { + inline VacuumStmt(const VacuumStmt& from) + : VacuumStmt(nullptr, from) {} + VacuumStmt(VacuumStmt&& from) noexcept + : VacuumStmt() { *this = ::std::move(from); } - inline TriggerTransition& operator=(const TriggerTransition& from) { + inline VacuumStmt& operator=(const VacuumStmt& from) { CopyFrom(from); return *this; } - inline TriggerTransition& operator=(TriggerTransition&& from) noexcept { + inline VacuumStmt& operator=(VacuumStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -59205,172 +68852,212 @@ class TriggerTransition final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const TriggerTransition& default_instance() { + static const VacuumStmt& default_instance() { return *internal_default_instance(); } - static inline const TriggerTransition* internal_default_instance() { - return reinterpret_cast( - &_TriggerTransition_default_instance_); + static inline const VacuumStmt* internal_default_instance() { + return reinterpret_cast( + &_VacuumStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 230; + 228; - friend void swap(TriggerTransition& a, TriggerTransition& b) { + friend void swap(VacuumStmt& a, VacuumStmt& b) { a.Swap(&b); } - inline void Swap(TriggerTransition* other) { + inline void Swap(VacuumStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(TriggerTransition* other) { + void UnsafeArenaSwap(VacuumStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - TriggerTransition* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + VacuumStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const TriggerTransition& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const TriggerTransition& from) { - TriggerTransition::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const VacuumStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const VacuumStmt& from) { + VacuumStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(TriggerTransition* other); + void InternalSwap(VacuumStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.TriggerTransition"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.VacuumStmt"; } protected: - explicit TriggerTransition(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit VacuumStmt(::google::protobuf::Arena* arena); + VacuumStmt(::google::protobuf::Arena* arena, const VacuumStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNameFieldNumber = 1, - kIsNewFieldNumber = 2, - kIsTableFieldNumber = 3, + kOptionsFieldNumber = 1, + kRelsFieldNumber = 2, + kIsVacuumcmdFieldNumber = 3, }; - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + // repeated .pg_query.Node options = 1 [json_name = "options"]; + int options_size() const; private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: + int _internal_options_size() const; - // bool is_new = 2 [json_name = "isNew"]; - void clear_is_new(); - bool is_new() const; - void set_is_new(bool value); + public: + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - bool _internal_is_new() const; - void _internal_set_is_new(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // repeated .pg_query.Node rels = 2 [json_name = "rels"]; + int rels_size() const; + private: + int _internal_rels_size() const; - // bool is_table = 3 [json_name = "isTable"]; - void clear_is_table(); - bool is_table() const; - void set_is_table(bool value); + public: + void clear_rels() ; + ::pg_query::Node* mutable_rels(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_rels(); private: - bool _internal_is_table() const; - void _internal_set_is_table(bool value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_rels() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_rels(); public: + const ::pg_query::Node& rels(int index) const; + ::pg_query::Node* add_rels(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + rels() const; + // bool is_vacuumcmd = 3 [json_name = "is_vacuumcmd"]; + void clear_is_vacuumcmd() ; + bool is_vacuumcmd() const; + void set_is_vacuumcmd(bool value); - // @@protoc_insertion_point(class_scope:pg_query.TriggerTransition) + private: + bool _internal_is_vacuumcmd() const; + void _internal_set_is_vacuumcmd(bool value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.VacuumStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - bool is_new_; - bool is_table_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > rels_; + bool is_vacuumcmd_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class PartitionElem final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionElem) */ { +class Var final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.Var) */ { public: - inline PartitionElem() : PartitionElem(nullptr) {} - ~PartitionElem() override; - explicit PROTOBUF_CONSTEXPR PartitionElem(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline Var() : Var(nullptr) {} + ~Var() override; + template + explicit PROTOBUF_CONSTEXPR Var(::google::protobuf::internal::ConstantInitialized); - PartitionElem(const PartitionElem& from); - PartitionElem(PartitionElem&& from) noexcept - : PartitionElem() { + inline Var(const Var& from) + : Var(nullptr, from) {} + Var(Var&& from) noexcept + : Var() { *this = ::std::move(from); } - inline PartitionElem& operator=(const PartitionElem& from) { + inline Var& operator=(const Var& from) { CopyFrom(from); return *this; } - inline PartitionElem& operator=(PartitionElem&& from) noexcept { + inline Var& operator=(Var&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -59380,221 +69067,283 @@ class PartitionElem final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const PartitionElem& default_instance() { + static const Var& default_instance() { return *internal_default_instance(); } - static inline const PartitionElem* internal_default_instance() { - return reinterpret_cast( - &_PartitionElem_default_instance_); + static inline const Var* internal_default_instance() { + return reinterpret_cast( + &_Var_default_instance_); } static constexpr int kIndexInFileMessages = - 231; + 16; - friend void swap(PartitionElem& a, PartitionElem& b) { + friend void swap(Var& a, Var& b) { a.Swap(&b); } - inline void Swap(PartitionElem* other) { + inline void Swap(Var* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(PartitionElem* other) { + void UnsafeArenaSwap(Var* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - PartitionElem* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + Var* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const PartitionElem& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const PartitionElem& from) { - PartitionElem::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Var& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Var& from) { + Var::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(PartitionElem* other); + void InternalSwap(Var* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.PartitionElem"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.Var"; } protected: - explicit PartitionElem(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit Var(::google::protobuf::Arena* arena); + Var(::google::protobuf::Arena* arena, const Var& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kCollationFieldNumber = 3, - kOpclassFieldNumber = 4, - kNameFieldNumber = 1, - kExprFieldNumber = 2, - kLocationFieldNumber = 5, + kVarnullingrelsFieldNumber = 7, + kXprFieldNumber = 1, + kVarnoFieldNumber = 2, + kVarattnoFieldNumber = 3, + kVartypeFieldNumber = 4, + kVartypmodFieldNumber = 5, + kVarcollidFieldNumber = 6, + kVarlevelsupFieldNumber = 8, + kLocationFieldNumber = 9, }; - // repeated .pg_query.Node collation = 3 [json_name = "collation"]; - int collation_size() const; + // repeated uint64 varnullingrels = 7 [json_name = "varnullingrels"]; + int varnullingrels_size() const; private: - int _internal_collation_size() const; + int _internal_varnullingrels_size() const; + public: - void clear_collation(); - ::pg_query::Node* mutable_collation(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_collation(); + void clear_varnullingrels() ; + ::uint64_t varnullingrels(int index) const; + void set_varnullingrels(int index, ::uint64_t value); + void add_varnullingrels(::uint64_t value); + const ::google::protobuf::RepeatedField<::uint64_t>& varnullingrels() const; + ::google::protobuf::RepeatedField<::uint64_t>* mutable_varnullingrels(); + private: - const ::pg_query::Node& _internal_collation(int index) const; - ::pg_query::Node* _internal_add_collation(); + const ::google::protobuf::RepeatedField<::uint64_t>& _internal_varnullingrels() const; + ::google::protobuf::RepeatedField<::uint64_t>* _internal_mutable_varnullingrels(); + public: - const ::pg_query::Node& collation(int index) const; - ::pg_query::Node* add_collation(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - collation() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // repeated .pg_query.Node opclass = 4 [json_name = "opclass"]; - int opclass_size() const; private: - int _internal_opclass_size() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_opclass(); - ::pg_query::Node* mutable_opclass(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_opclass(); + // int32 varno = 2 [json_name = "varno"]; + void clear_varno() ; + ::int32_t varno() const; + void set_varno(::int32_t value); + private: - const ::pg_query::Node& _internal_opclass(int index) const; - ::pg_query::Node* _internal_add_opclass(); + ::int32_t _internal_varno() const; + void _internal_set_varno(::int32_t value); + public: - const ::pg_query::Node& opclass(int index) const; - ::pg_query::Node* add_opclass(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - opclass() const; + // int32 varattno = 3 [json_name = "varattno"]; + void clear_varattno() ; + ::int32_t varattno() const; + void set_varattno(::int32_t value); - // string name = 1 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); + ::int32_t _internal_varattno() const; + void _internal_set_varattno(::int32_t value); + public: + // uint32 vartype = 4 [json_name = "vartype"]; + void clear_vartype() ; + ::uint32_t vartype() const; + void set_vartype(::uint32_t value); - // .pg_query.Node expr = 2 [json_name = "expr"]; - bool has_expr() const; private: - bool _internal_has_expr() const; + ::uint32_t _internal_vartype() const; + void _internal_set_vartype(::uint32_t value); + public: - void clear_expr(); - const ::pg_query::Node& expr() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); - ::pg_query::Node* mutable_expr(); - void set_allocated_expr(::pg_query::Node* expr); + // int32 vartypmod = 5 [json_name = "vartypmod"]; + void clear_vartypmod() ; + ::int32_t vartypmod() const; + void set_vartypmod(::int32_t value); + private: - const ::pg_query::Node& _internal_expr() const; - ::pg_query::Node* _internal_mutable_expr(); + ::int32_t _internal_vartypmod() const; + void _internal_set_vartypmod(::int32_t value); + public: - void unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr); - ::pg_query::Node* unsafe_arena_release_expr(); + // uint32 varcollid = 6 [json_name = "varcollid"]; + void clear_varcollid() ; + ::uint32_t varcollid() const; + void set_varcollid(::uint32_t value); - // int32 location = 5 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + ::uint32_t _internal_varcollid() const; + void _internal_set_varcollid(::uint32_t value); + public: + // uint32 varlevelsup = 8 [json_name = "varlevelsup"]; + void clear_varlevelsup() ; + ::uint32_t varlevelsup() const; + void set_varlevelsup(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.PartitionElem) + private: + ::uint32_t _internal_varlevelsup() const; + void _internal_set_varlevelsup(::uint32_t value); + + public: + // int32 location = 9 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.Var) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 9, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > collation_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > opclass_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::Node* expr_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedField<::uint64_t> varnullingrels_; + mutable ::google::protobuf::internal::CachedSize _varnullingrels_cached_byte_size_; + ::pg_query::Node* xpr_; + ::int32_t varno_; + ::int32_t varattno_; + ::uint32_t vartype_; + ::int32_t vartypmod_; + ::uint32_t varcollid_; + ::uint32_t varlevelsup_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class PartitionSpec final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionSpec) */ { +class VariableSetStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.VariableSetStmt) */ { public: - inline PartitionSpec() : PartitionSpec(nullptr) {} - ~PartitionSpec() override; - explicit PROTOBUF_CONSTEXPR PartitionSpec(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline VariableSetStmt() : VariableSetStmt(nullptr) {} + ~VariableSetStmt() override; + template + explicit PROTOBUF_CONSTEXPR VariableSetStmt(::google::protobuf::internal::ConstantInitialized); - PartitionSpec(const PartitionSpec& from); - PartitionSpec(PartitionSpec&& from) noexcept - : PartitionSpec() { + inline VariableSetStmt(const VariableSetStmt& from) + : VariableSetStmt(nullptr, from) {} + VariableSetStmt(VariableSetStmt&& from) noexcept + : VariableSetStmt() { *this = ::std::move(from); } - inline PartitionSpec& operator=(const PartitionSpec& from) { + inline VariableSetStmt& operator=(const VariableSetStmt& from) { CopyFrom(from); return *this; } - inline PartitionSpec& operator=(PartitionSpec&& from) noexcept { + inline VariableSetStmt& operator=(VariableSetStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -59604,181 +69353,222 @@ class PartitionSpec final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const PartitionSpec& default_instance() { + static const VariableSetStmt& default_instance() { return *internal_default_instance(); } - static inline const PartitionSpec* internal_default_instance() { - return reinterpret_cast( - &_PartitionSpec_default_instance_); + static inline const VariableSetStmt* internal_default_instance() { + return reinterpret_cast( + &_VariableSetStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 232; + 147; - friend void swap(PartitionSpec& a, PartitionSpec& b) { + friend void swap(VariableSetStmt& a, VariableSetStmt& b) { a.Swap(&b); } - inline void Swap(PartitionSpec* other) { + inline void Swap(VariableSetStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(PartitionSpec* other) { + void UnsafeArenaSwap(VariableSetStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - PartitionSpec* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + VariableSetStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const PartitionSpec& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const PartitionSpec& from) { - PartitionSpec::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const VariableSetStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const VariableSetStmt& from) { + VariableSetStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(PartitionSpec* other); + void InternalSwap(VariableSetStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.PartitionSpec"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.VariableSetStmt"; } protected: - explicit PartitionSpec(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit VariableSetStmt(::google::protobuf::Arena* arena); + VariableSetStmt(::google::protobuf::Arena* arena, const VariableSetStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kPartParamsFieldNumber = 2, - kStrategyFieldNumber = 1, - kLocationFieldNumber = 3, + kArgsFieldNumber = 3, + kNameFieldNumber = 2, + kKindFieldNumber = 1, + kIsLocalFieldNumber = 4, }; - // repeated .pg_query.Node part_params = 2 [json_name = "partParams"]; - int part_params_size() const; + // repeated .pg_query.Node args = 3 [json_name = "args"]; + int args_size() const; private: - int _internal_part_params_size() const; + int _internal_args_size() const; + public: - void clear_part_params(); - ::pg_query::Node* mutable_part_params(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_part_params(); + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const ::pg_query::Node& _internal_part_params(int index) const; - ::pg_query::Node* _internal_add_part_params(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - const ::pg_query::Node& part_params(int index) const; - ::pg_query::Node* add_part_params(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - part_params() const; + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // string name = 2 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // string strategy = 1 [json_name = "strategy"]; - void clear_strategy(); - const std::string& strategy() const; - template - void set_strategy(ArgT0&& arg0, ArgT... args); - std::string* mutable_strategy(); - PROTOBUF_NODISCARD std::string* release_strategy(); - void set_allocated_strategy(std::string* strategy); private: - const std::string& _internal_strategy() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_strategy(const std::string& value); - std::string* _internal_mutable_strategy(); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + public: + // .pg_query.VariableSetKind kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::VariableSetKind kind() const; + void set_kind(::pg_query::VariableSetKind value); - // int32 location = 3 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + ::pg_query::VariableSetKind _internal_kind() const; + void _internal_set_kind(::pg_query::VariableSetKind value); + public: + // bool is_local = 4 [json_name = "is_local"]; + void clear_is_local() ; + bool is_local() const; + void set_is_local(bool value); + + private: + bool _internal_is_local() const; + void _internal_set_is_local(bool value); - // @@protoc_insertion_point(class_scope:pg_query.PartitionSpec) + public: + // @@protoc_insertion_point(class_scope:pg_query.VariableSetStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 1, + 37, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > part_params_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr strategy_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::google::protobuf::internal::ArenaStringPtr name_; + int kind_; + bool is_local_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class PartitionBoundSpec final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionBoundSpec) */ { +class ViewStmt final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ViewStmt) */ { public: - inline PartitionBoundSpec() : PartitionBoundSpec(nullptr) {} - ~PartitionBoundSpec() override; - explicit PROTOBUF_CONSTEXPR PartitionBoundSpec(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ViewStmt() : ViewStmt(nullptr) {} + ~ViewStmt() override; + template + explicit PROTOBUF_CONSTEXPR ViewStmt(::google::protobuf::internal::ConstantInitialized); - PartitionBoundSpec(const PartitionBoundSpec& from); - PartitionBoundSpec(PartitionBoundSpec&& from) noexcept - : PartitionBoundSpec() { + inline ViewStmt(const ViewStmt& from) + : ViewStmt(nullptr, from) {} + ViewStmt(ViewStmt&& from) noexcept + : ViewStmt() { *this = ::std::move(from); } - inline PartitionBoundSpec& operator=(const PartitionBoundSpec& from) { + inline ViewStmt& operator=(const ViewStmt& from) { CopyFrom(from); return *this; } - inline PartitionBoundSpec& operator=(PartitionBoundSpec&& from) noexcept { + inline ViewStmt& operator=(ViewStmt&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -59788,254 +69578,259 @@ class PartitionBoundSpec final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const PartitionBoundSpec& default_instance() { + static const ViewStmt& default_instance() { return *internal_default_instance(); } - static inline const PartitionBoundSpec* internal_default_instance() { - return reinterpret_cast( - &_PartitionBoundSpec_default_instance_); + static inline const ViewStmt* internal_default_instance() { + return reinterpret_cast( + &_ViewStmt_default_instance_); } static constexpr int kIndexInFileMessages = - 233; + 219; - friend void swap(PartitionBoundSpec& a, PartitionBoundSpec& b) { + friend void swap(ViewStmt& a, ViewStmt& b) { a.Swap(&b); } - inline void Swap(PartitionBoundSpec* other) { + inline void Swap(ViewStmt* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(PartitionBoundSpec* other) { + void UnsafeArenaSwap(ViewStmt* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - PartitionBoundSpec* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ViewStmt* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const PartitionBoundSpec& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const PartitionBoundSpec& from) { - PartitionBoundSpec::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ViewStmt& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ViewStmt& from) { + ViewStmt::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(PartitionBoundSpec* other); + void InternalSwap(ViewStmt* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.PartitionBoundSpec"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ViewStmt"; } protected: - explicit PartitionBoundSpec(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ViewStmt(::google::protobuf::Arena* arena); + ViewStmt(::google::protobuf::Arena* arena, const ViewStmt& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kListdatumsFieldNumber = 5, - kLowerdatumsFieldNumber = 6, - kUpperdatumsFieldNumber = 7, - kStrategyFieldNumber = 1, - kIsDefaultFieldNumber = 2, - kModulusFieldNumber = 3, - kRemainderFieldNumber = 4, - kLocationFieldNumber = 8, + kAliasesFieldNumber = 2, + kOptionsFieldNumber = 5, + kViewFieldNumber = 1, + kQueryFieldNumber = 3, + kReplaceFieldNumber = 4, + kWithCheckOptionFieldNumber = 6, }; - // repeated .pg_query.Node listdatums = 5 [json_name = "listdatums"]; - int listdatums_size() const; - private: - int _internal_listdatums_size() const; - public: - void clear_listdatums(); - ::pg_query::Node* mutable_listdatums(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_listdatums(); + // repeated .pg_query.Node aliases = 2 [json_name = "aliases"]; + int aliases_size() const; private: - const ::pg_query::Node& _internal_listdatums(int index) const; - ::pg_query::Node* _internal_add_listdatums(); - public: - const ::pg_query::Node& listdatums(int index) const; - ::pg_query::Node* add_listdatums(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - listdatums() const; + int _internal_aliases_size() const; - // repeated .pg_query.Node lowerdatums = 6 [json_name = "lowerdatums"]; - int lowerdatums_size() const; - private: - int _internal_lowerdatums_size() const; public: - void clear_lowerdatums(); - ::pg_query::Node* mutable_lowerdatums(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_lowerdatums(); + void clear_aliases() ; + ::pg_query::Node* mutable_aliases(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_aliases(); private: - const ::pg_query::Node& _internal_lowerdatums(int index) const; - ::pg_query::Node* _internal_add_lowerdatums(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_aliases() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_aliases(); public: - const ::pg_query::Node& lowerdatums(int index) const; - ::pg_query::Node* add_lowerdatums(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - lowerdatums() const; - - // repeated .pg_query.Node upperdatums = 7 [json_name = "upperdatums"]; - int upperdatums_size() const; + const ::pg_query::Node& aliases(int index) const; + ::pg_query::Node* add_aliases(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + aliases() const; + // repeated .pg_query.Node options = 5 [json_name = "options"]; + int options_size() const; private: - int _internal_upperdatums_size() const; + int _internal_options_size() const; + public: - void clear_upperdatums(); - ::pg_query::Node* mutable_upperdatums(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_upperdatums(); + void clear_options() ; + ::pg_query::Node* mutable_options(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_options(); private: - const ::pg_query::Node& _internal_upperdatums(int index) const; - ::pg_query::Node* _internal_add_upperdatums(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_options() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_options(); public: - const ::pg_query::Node& upperdatums(int index) const; - ::pg_query::Node* add_upperdatums(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - upperdatums() const; + const ::pg_query::Node& options(int index) const; + ::pg_query::Node* add_options(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + options() const; + // .pg_query.RangeVar view = 1 [json_name = "view"]; + bool has_view() const; + void clear_view() ; + const ::pg_query::RangeVar& view() const; + PROTOBUF_NODISCARD ::pg_query::RangeVar* release_view(); + ::pg_query::RangeVar* mutable_view(); + void set_allocated_view(::pg_query::RangeVar* value); + void unsafe_arena_set_allocated_view(::pg_query::RangeVar* value); + ::pg_query::RangeVar* unsafe_arena_release_view(); - // string strategy = 1 [json_name = "strategy"]; - void clear_strategy(); - const std::string& strategy() const; - template - void set_strategy(ArgT0&& arg0, ArgT... args); - std::string* mutable_strategy(); - PROTOBUF_NODISCARD std::string* release_strategy(); - void set_allocated_strategy(std::string* strategy); private: - const std::string& _internal_strategy() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_strategy(const std::string& value); - std::string* _internal_mutable_strategy(); - public: + const ::pg_query::RangeVar& _internal_view() const; + ::pg_query::RangeVar* _internal_mutable_view(); - // bool is_default = 2 [json_name = "is_default"]; - void clear_is_default(); - bool is_default() const; - void set_is_default(bool value); - private: - bool _internal_is_default() const; - void _internal_set_is_default(bool value); public: + // .pg_query.Node query = 3 [json_name = "query"]; + bool has_query() const; + void clear_query() ; + const ::pg_query::Node& query() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_query(); + ::pg_query::Node* mutable_query(); + void set_allocated_query(::pg_query::Node* value); + void unsafe_arena_set_allocated_query(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_query(); - // int32 modulus = 3 [json_name = "modulus"]; - void clear_modulus(); - int32_t modulus() const; - void set_modulus(int32_t value); private: - int32_t _internal_modulus() const; - void _internal_set_modulus(int32_t value); + const ::pg_query::Node& _internal_query() const; + ::pg_query::Node* _internal_mutable_query(); + public: + // bool replace = 4 [json_name = "replace"]; + void clear_replace() ; + bool replace() const; + void set_replace(bool value); - // int32 remainder = 4 [json_name = "remainder"]; - void clear_remainder(); - int32_t remainder() const; - void set_remainder(int32_t value); private: - int32_t _internal_remainder() const; - void _internal_set_remainder(int32_t value); + bool _internal_replace() const; + void _internal_set_replace(bool value); + public: + // .pg_query.ViewCheckOption with_check_option = 6 [json_name = "withCheckOption"]; + void clear_with_check_option() ; + ::pg_query::ViewCheckOption with_check_option() const; + void set_with_check_option(::pg_query::ViewCheckOption value); - // int32 location = 8 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + ::pg_query::ViewCheckOption _internal_with_check_option() const; + void _internal_set_with_check_option(::pg_query::ViewCheckOption value); - // @@protoc_insertion_point(class_scope:pg_query.PartitionBoundSpec) + public: + // @@protoc_insertion_point(class_scope:pg_query.ViewStmt) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 6, 4, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > listdatums_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > lowerdatums_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > upperdatums_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr strategy_; - bool is_default_; - int32_t modulus_; - int32_t remainder_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > aliases_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > options_; + ::pg_query::RangeVar* view_; + ::pg_query::Node* query_; + bool replace_; + int with_check_option_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class PartitionRangeDatum final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionRangeDatum) */ { +class WindowClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.WindowClause) */ { public: - inline PartitionRangeDatum() : PartitionRangeDatum(nullptr) {} - ~PartitionRangeDatum() override; - explicit PROTOBUF_CONSTEXPR PartitionRangeDatum(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline WindowClause() : WindowClause(nullptr) {} + ~WindowClause() override; + template + explicit PROTOBUF_CONSTEXPR WindowClause(::google::protobuf::internal::ConstantInitialized); - PartitionRangeDatum(const PartitionRangeDatum& from); - PartitionRangeDatum(PartitionRangeDatum&& from) noexcept - : PartitionRangeDatum() { + inline WindowClause(const WindowClause& from) + : WindowClause(nullptr, from) {} + WindowClause(WindowClause&& from) noexcept + : WindowClause() { *this = ::std::move(from); } - inline PartitionRangeDatum& operator=(const PartitionRangeDatum& from) { + inline WindowClause& operator=(const WindowClause& from) { CopyFrom(from); return *this; } - inline PartitionRangeDatum& operator=(PartitionRangeDatum&& from) noexcept { + inline WindowClause& operator=(WindowClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -60045,176 +69840,387 @@ class PartitionRangeDatum final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const PartitionRangeDatum& default_instance() { + static const WindowClause& default_instance() { return *internal_default_instance(); } - static inline const PartitionRangeDatum* internal_default_instance() { - return reinterpret_cast( - &_PartitionRangeDatum_default_instance_); + static inline const WindowClause* internal_default_instance() { + return reinterpret_cast( + &_WindowClause_default_instance_); } static constexpr int kIndexInFileMessages = - 234; + 107; - friend void swap(PartitionRangeDatum& a, PartitionRangeDatum& b) { + friend void swap(WindowClause& a, WindowClause& b) { a.Swap(&b); } - inline void Swap(PartitionRangeDatum* other) { + inline void Swap(WindowClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(PartitionRangeDatum* other) { + void UnsafeArenaSwap(WindowClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - PartitionRangeDatum* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + WindowClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const PartitionRangeDatum& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const PartitionRangeDatum& from) { - PartitionRangeDatum::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const WindowClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const WindowClause& from) { + WindowClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(PartitionRangeDatum* other); + void InternalSwap(WindowClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.PartitionRangeDatum"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.WindowClause"; } protected: - explicit PartitionRangeDatum(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit WindowClause(::google::protobuf::Arena* arena); + WindowClause(::google::protobuf::Arena* arena, const WindowClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kValueFieldNumber = 2, - kKindFieldNumber = 1, - kLocationFieldNumber = 3, + kPartitionClauseFieldNumber = 3, + kOrderClauseFieldNumber = 4, + kRunConditionFieldNumber = 8, + kNameFieldNumber = 1, + kRefnameFieldNumber = 2, + kStartOffsetFieldNumber = 6, + kEndOffsetFieldNumber = 7, + kFrameOptionsFieldNumber = 5, + kStartInRangeFuncFieldNumber = 9, + kEndInRangeFuncFieldNumber = 10, + kInRangeCollFieldNumber = 11, + kInRangeAscFieldNumber = 12, + kInRangeNullsFirstFieldNumber = 13, + kCopiedOrderFieldNumber = 15, + kWinrefFieldNumber = 14, }; - // .pg_query.Node value = 2 [json_name = "value"]; - bool has_value() const; + // repeated .pg_query.Node partition_clause = 3 [json_name = "partitionClause"]; + int partition_clause_size() const; private: - bool _internal_has_value() const; + int _internal_partition_clause_size() const; + public: - void clear_value(); - const ::pg_query::Node& value() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_value(); - ::pg_query::Node* mutable_value(); - void set_allocated_value(::pg_query::Node* value); + void clear_partition_clause() ; + ::pg_query::Node* mutable_partition_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_partition_clause(); private: - const ::pg_query::Node& _internal_value() const; - ::pg_query::Node* _internal_mutable_value(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_partition_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_partition_clause(); public: - void unsafe_arena_set_allocated_value( - ::pg_query::Node* value); - ::pg_query::Node* unsafe_arena_release_value(); + const ::pg_query::Node& partition_clause(int index) const; + ::pg_query::Node* add_partition_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + partition_clause() const; + // repeated .pg_query.Node order_clause = 4 [json_name = "orderClause"]; + int order_clause_size() const; + private: + int _internal_order_clause_size() const; - // .pg_query.PartitionRangeDatumKind kind = 1 [json_name = "kind"]; - void clear_kind(); - ::pg_query::PartitionRangeDatumKind kind() const; - void set_kind(::pg_query::PartitionRangeDatumKind value); + public: + void clear_order_clause() ; + ::pg_query::Node* mutable_order_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_order_clause(); private: - ::pg_query::PartitionRangeDatumKind _internal_kind() const; - void _internal_set_kind(::pg_query::PartitionRangeDatumKind value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_order_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_order_clause(); public: + const ::pg_query::Node& order_clause(int index) const; + ::pg_query::Node* add_order_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + order_clause() const; + // repeated .pg_query.Node run_condition = 8 [json_name = "runCondition"]; + int run_condition_size() const; + private: + int _internal_run_condition_size() const; - // int32 location = 3 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); + public: + void clear_run_condition() ; + ::pg_query::Node* mutable_run_condition(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_run_condition(); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_run_condition() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_run_condition(); public: + const ::pg_query::Node& run_condition(int index) const; + ::pg_query::Node* add_run_condition(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + run_condition() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); - // @@protoc_insertion_point(class_scope:pg_query.PartitionRangeDatum) + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + + public: + // string refname = 2 [json_name = "refname"]; + void clear_refname() ; + const std::string& refname() const; + template + void set_refname(Arg_&& arg, Args_... args); + std::string* mutable_refname(); + PROTOBUF_NODISCARD std::string* release_refname(); + void set_allocated_refname(std::string* value); + + private: + const std::string& _internal_refname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_refname( + const std::string& value); + std::string* _internal_mutable_refname(); + + public: + // .pg_query.Node start_offset = 6 [json_name = "startOffset"]; + bool has_start_offset() const; + void clear_start_offset() ; + const ::pg_query::Node& start_offset() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_start_offset(); + ::pg_query::Node* mutable_start_offset(); + void set_allocated_start_offset(::pg_query::Node* value); + void unsafe_arena_set_allocated_start_offset(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_start_offset(); + + private: + const ::pg_query::Node& _internal_start_offset() const; + ::pg_query::Node* _internal_mutable_start_offset(); + + public: + // .pg_query.Node end_offset = 7 [json_name = "endOffset"]; + bool has_end_offset() const; + void clear_end_offset() ; + const ::pg_query::Node& end_offset() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_end_offset(); + ::pg_query::Node* mutable_end_offset(); + void set_allocated_end_offset(::pg_query::Node* value); + void unsafe_arena_set_allocated_end_offset(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_end_offset(); + + private: + const ::pg_query::Node& _internal_end_offset() const; + ::pg_query::Node* _internal_mutable_end_offset(); + + public: + // int32 frame_options = 5 [json_name = "frameOptions"]; + void clear_frame_options() ; + ::int32_t frame_options() const; + void set_frame_options(::int32_t value); + + private: + ::int32_t _internal_frame_options() const; + void _internal_set_frame_options(::int32_t value); + + public: + // uint32 start_in_range_func = 9 [json_name = "startInRangeFunc"]; + void clear_start_in_range_func() ; + ::uint32_t start_in_range_func() const; + void set_start_in_range_func(::uint32_t value); + + private: + ::uint32_t _internal_start_in_range_func() const; + void _internal_set_start_in_range_func(::uint32_t value); + + public: + // uint32 end_in_range_func = 10 [json_name = "endInRangeFunc"]; + void clear_end_in_range_func() ; + ::uint32_t end_in_range_func() const; + void set_end_in_range_func(::uint32_t value); + + private: + ::uint32_t _internal_end_in_range_func() const; + void _internal_set_end_in_range_func(::uint32_t value); + + public: + // uint32 in_range_coll = 11 [json_name = "inRangeColl"]; + void clear_in_range_coll() ; + ::uint32_t in_range_coll() const; + void set_in_range_coll(::uint32_t value); + + private: + ::uint32_t _internal_in_range_coll() const; + void _internal_set_in_range_coll(::uint32_t value); + + public: + // bool in_range_asc = 12 [json_name = "inRangeAsc"]; + void clear_in_range_asc() ; + bool in_range_asc() const; + void set_in_range_asc(bool value); + + private: + bool _internal_in_range_asc() const; + void _internal_set_in_range_asc(bool value); + + public: + // bool in_range_nulls_first = 13 [json_name = "inRangeNullsFirst"]; + void clear_in_range_nulls_first() ; + bool in_range_nulls_first() const; + void set_in_range_nulls_first(bool value); + + private: + bool _internal_in_range_nulls_first() const; + void _internal_set_in_range_nulls_first(bool value); + + public: + // bool copied_order = 15 [json_name = "copiedOrder"]; + void clear_copied_order() ; + bool copied_order() const; + void set_copied_order(bool value); + + private: + bool _internal_copied_order() const; + void _internal_set_copied_order(bool value); + + public: + // uint32 winref = 14 [json_name = "winref"]; + void clear_winref() ; + ::uint32_t winref() const; + void set_winref(::uint32_t value); + + private: + ::uint32_t _internal_winref() const; + void _internal_set_winref(::uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.WindowClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 15, 5, + 49, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::Node* value_; - int kind_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > partition_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > order_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > run_condition_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::google::protobuf::internal::ArenaStringPtr refname_; + ::pg_query::Node* start_offset_; + ::pg_query::Node* end_offset_; + ::int32_t frame_options_; + ::uint32_t start_in_range_func_; + ::uint32_t end_in_range_func_; + ::uint32_t in_range_coll_; + bool in_range_asc_; + bool in_range_nulls_first_; + bool copied_order_; + ::uint32_t winref_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class PartitionCmd final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.PartitionCmd) */ { +class WindowDef final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.WindowDef) */ { public: - inline PartitionCmd() : PartitionCmd(nullptr) {} - ~PartitionCmd() override; - explicit PROTOBUF_CONSTEXPR PartitionCmd(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline WindowDef() : WindowDef(nullptr) {} + ~WindowDef() override; + template + explicit PROTOBUF_CONSTEXPR WindowDef(::google::protobuf::internal::ConstantInitialized); - PartitionCmd(const PartitionCmd& from); - PartitionCmd(PartitionCmd&& from) noexcept - : PartitionCmd() { + inline WindowDef(const WindowDef& from) + : WindowDef(nullptr, from) {} + WindowDef(WindowDef&& from) noexcept + : WindowDef() { *this = ::std::move(from); } - inline PartitionCmd& operator=(const PartitionCmd& from) { + inline WindowDef& operator=(const WindowDef& from) { CopyFrom(from); return *this; } - inline PartitionCmd& operator=(PartitionCmd&& from) noexcept { + inline WindowDef& operator=(WindowDef&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -60224,185 +70230,295 @@ class PartitionCmd final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const PartitionCmd& default_instance() { + static const WindowDef& default_instance() { return *internal_default_instance(); } - static inline const PartitionCmd* internal_default_instance() { - return reinterpret_cast( - &_PartitionCmd_default_instance_); + static inline const WindowDef* internal_default_instance() { + return reinterpret_cast( + &_WindowDef_default_instance_); } static constexpr int kIndexInFileMessages = - 235; + 83; - friend void swap(PartitionCmd& a, PartitionCmd& b) { + friend void swap(WindowDef& a, WindowDef& b) { a.Swap(&b); } - inline void Swap(PartitionCmd* other) { + inline void Swap(WindowDef* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(PartitionCmd* other) { + void UnsafeArenaSwap(WindowDef* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - PartitionCmd* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + WindowDef* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const PartitionCmd& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const PartitionCmd& from) { - PartitionCmd::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const WindowDef& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const WindowDef& from) { + WindowDef::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(PartitionCmd* other); + void InternalSwap(WindowDef* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.PartitionCmd"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.WindowDef"; } protected: - explicit PartitionCmd(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit WindowDef(::google::protobuf::Arena* arena); + WindowDef(::google::protobuf::Arena* arena, const WindowDef& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { + kPartitionClauseFieldNumber = 3, + kOrderClauseFieldNumber = 4, kNameFieldNumber = 1, - kBoundFieldNumber = 2, - kConcurrentFieldNumber = 3, + kRefnameFieldNumber = 2, + kStartOffsetFieldNumber = 6, + kEndOffsetFieldNumber = 7, + kFrameOptionsFieldNumber = 5, + kLocationFieldNumber = 8, }; - // .pg_query.RangeVar name = 1 [json_name = "name"]; - bool has_name() const; + // repeated .pg_query.Node partition_clause = 3 [json_name = "partitionClause"]; + int partition_clause_size() const; private: - bool _internal_has_name() const; + int _internal_partition_clause_size() const; + public: - void clear_name(); - const ::pg_query::RangeVar& name() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_name(); - ::pg_query::RangeVar* mutable_name(); - void set_allocated_name(::pg_query::RangeVar* name); + void clear_partition_clause() ; + ::pg_query::Node* mutable_partition_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_partition_clause(); private: - const ::pg_query::RangeVar& _internal_name() const; - ::pg_query::RangeVar* _internal_mutable_name(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_partition_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_partition_clause(); public: - void unsafe_arena_set_allocated_name( - ::pg_query::RangeVar* name); - ::pg_query::RangeVar* unsafe_arena_release_name(); + const ::pg_query::Node& partition_clause(int index) const; + ::pg_query::Node* add_partition_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + partition_clause() const; + // repeated .pg_query.Node order_clause = 4 [json_name = "orderClause"]; + int order_clause_size() const; + private: + int _internal_order_clause_size() const; - // .pg_query.PartitionBoundSpec bound = 2 [json_name = "bound"]; - bool has_bound() const; + public: + void clear_order_clause() ; + ::pg_query::Node* mutable_order_clause(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_order_clause(); private: - bool _internal_has_bound() const; + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_order_clause() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_order_clause(); public: - void clear_bound(); - const ::pg_query::PartitionBoundSpec& bound() const; - PROTOBUF_NODISCARD ::pg_query::PartitionBoundSpec* release_bound(); - ::pg_query::PartitionBoundSpec* mutable_bound(); - void set_allocated_bound(::pg_query::PartitionBoundSpec* bound); + const ::pg_query::Node& order_clause(int index) const; + ::pg_query::Node* add_order_clause(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + order_clause() const; + // string name = 1 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + private: - const ::pg_query::PartitionBoundSpec& _internal_bound() const; - ::pg_query::PartitionBoundSpec* _internal_mutable_bound(); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + + public: + // string refname = 2 [json_name = "refname"]; + void clear_refname() ; + const std::string& refname() const; + template + void set_refname(Arg_&& arg, Args_... args); + std::string* mutable_refname(); + PROTOBUF_NODISCARD std::string* release_refname(); + void set_allocated_refname(std::string* value); + + private: + const std::string& _internal_refname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_refname( + const std::string& value); + std::string* _internal_mutable_refname(); + + public: + // .pg_query.Node start_offset = 6 [json_name = "startOffset"]; + bool has_start_offset() const; + void clear_start_offset() ; + const ::pg_query::Node& start_offset() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_start_offset(); + ::pg_query::Node* mutable_start_offset(); + void set_allocated_start_offset(::pg_query::Node* value); + void unsafe_arena_set_allocated_start_offset(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_start_offset(); + + private: + const ::pg_query::Node& _internal_start_offset() const; + ::pg_query::Node* _internal_mutable_start_offset(); + + public: + // .pg_query.Node end_offset = 7 [json_name = "endOffset"]; + bool has_end_offset() const; + void clear_end_offset() ; + const ::pg_query::Node& end_offset() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_end_offset(); + ::pg_query::Node* mutable_end_offset(); + void set_allocated_end_offset(::pg_query::Node* value); + void unsafe_arena_set_allocated_end_offset(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_end_offset(); + + private: + const ::pg_query::Node& _internal_end_offset() const; + ::pg_query::Node* _internal_mutable_end_offset(); + public: - void unsafe_arena_set_allocated_bound( - ::pg_query::PartitionBoundSpec* bound); - ::pg_query::PartitionBoundSpec* unsafe_arena_release_bound(); + // int32 frame_options = 5 [json_name = "frameOptions"]; + void clear_frame_options() ; + ::int32_t frame_options() const; + void set_frame_options(::int32_t value); - // bool concurrent = 3 [json_name = "concurrent"]; - void clear_concurrent(); - bool concurrent() const; - void set_concurrent(bool value); private: - bool _internal_concurrent() const; - void _internal_set_concurrent(bool value); + ::int32_t _internal_frame_options() const; + void _internal_set_frame_options(::int32_t value); + public: + // int32 location = 8 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.PartitionCmd) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.WindowDef) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 8, 4, + 46, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::pg_query::RangeVar* name_; - ::pg_query::PartitionBoundSpec* bound_; - bool concurrent_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > partition_clause_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > order_clause_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::google::protobuf::internal::ArenaStringPtr refname_; + ::pg_query::Node* start_offset_; + ::pg_query::Node* end_offset_; + ::int32_t frame_options_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class VacuumRelation final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.VacuumRelation) */ { +class WindowFunc final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.WindowFunc) */ { public: - inline VacuumRelation() : VacuumRelation(nullptr) {} - ~VacuumRelation() override; - explicit PROTOBUF_CONSTEXPR VacuumRelation(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline WindowFunc() : WindowFunc(nullptr) {} + ~WindowFunc() override; + template + explicit PROTOBUF_CONSTEXPR WindowFunc(::google::protobuf::internal::ConstantInitialized); - VacuumRelation(const VacuumRelation& from); - VacuumRelation(VacuumRelation&& from) noexcept - : VacuumRelation() { + inline WindowFunc(const WindowFunc& from) + : WindowFunc(nullptr, from) {} + WindowFunc(WindowFunc&& from) noexcept + : WindowFunc() { *this = ::std::move(from); } - inline VacuumRelation& operator=(const VacuumRelation& from) { + inline WindowFunc& operator=(const WindowFunc& from) { CopyFrom(from); return *this; } - inline VacuumRelation& operator=(VacuumRelation&& from) noexcept { + inline WindowFunc& operator=(WindowFunc&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -60412,185 +70528,311 @@ class VacuumRelation final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const VacuumRelation& default_instance() { + static const WindowFunc& default_instance() { return *internal_default_instance(); } - static inline const VacuumRelation* internal_default_instance() { - return reinterpret_cast( - &_VacuumRelation_default_instance_); + static inline const WindowFunc* internal_default_instance() { + return reinterpret_cast( + &_WindowFunc_default_instance_); } static constexpr int kIndexInFileMessages = - 236; + 20; - friend void swap(VacuumRelation& a, VacuumRelation& b) { + friend void swap(WindowFunc& a, WindowFunc& b) { a.Swap(&b); } - inline void Swap(VacuumRelation* other) { + inline void Swap(WindowFunc* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(VacuumRelation* other) { + void UnsafeArenaSwap(WindowFunc* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - VacuumRelation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + WindowFunc* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const VacuumRelation& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const VacuumRelation& from) { - VacuumRelation::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const WindowFunc& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const WindowFunc& from) { + WindowFunc::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(VacuumRelation* other); + void InternalSwap(WindowFunc* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.VacuumRelation"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.WindowFunc"; } protected: - explicit VacuumRelation(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit WindowFunc(::google::protobuf::Arena* arena); + WindowFunc(::google::protobuf::Arena* arena, const WindowFunc& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kVaColsFieldNumber = 3, - kRelationFieldNumber = 1, - kOidFieldNumber = 2, + kArgsFieldNumber = 6, + kXprFieldNumber = 1, + kAggfilterFieldNumber = 7, + kWinfnoidFieldNumber = 2, + kWintypeFieldNumber = 3, + kWincollidFieldNumber = 4, + kInputcollidFieldNumber = 5, + kWinrefFieldNumber = 8, + kWinstarFieldNumber = 9, + kWinaggFieldNumber = 10, + kLocationFieldNumber = 11, }; - // repeated .pg_query.Node va_cols = 3 [json_name = "va_cols"]; - int va_cols_size() const; + // repeated .pg_query.Node args = 6 [json_name = "args"]; + int args_size() const; private: - int _internal_va_cols_size() const; + int _internal_args_size() const; + public: - void clear_va_cols(); - ::pg_query::Node* mutable_va_cols(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_va_cols(); + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - const ::pg_query::Node& _internal_va_cols(int index) const; - ::pg_query::Node* _internal_add_va_cols(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - const ::pg_query::Node& va_cols(int index) const; - ::pg_query::Node* add_va_cols(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - va_cols() const; + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; private: - bool _internal_has_relation() const; + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); + public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + // .pg_query.Node aggfilter = 7 [json_name = "aggfilter"]; + bool has_aggfilter() const; + void clear_aggfilter() ; + const ::pg_query::Node& aggfilter() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_aggfilter(); + ::pg_query::Node* mutable_aggfilter(); + void set_allocated_aggfilter(::pg_query::Node* value); + void unsafe_arena_set_allocated_aggfilter(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_aggfilter(); + private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + const ::pg_query::Node& _internal_aggfilter() const; + ::pg_query::Node* _internal_mutable_aggfilter(); + public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + // uint32 winfnoid = 2 [json_name = "winfnoid"]; + void clear_winfnoid() ; + ::uint32_t winfnoid() const; + void set_winfnoid(::uint32_t value); - // uint32 oid = 2 [json_name = "oid"]; - void clear_oid(); - uint32_t oid() const; - void set_oid(uint32_t value); private: - uint32_t _internal_oid() const; - void _internal_set_oid(uint32_t value); + ::uint32_t _internal_winfnoid() const; + void _internal_set_winfnoid(::uint32_t value); + public: + // uint32 wintype = 3 [json_name = "wintype"]; + void clear_wintype() ; + ::uint32_t wintype() const; + void set_wintype(::uint32_t value); - // @@protoc_insertion_point(class_scope:pg_query.VacuumRelation) + private: + ::uint32_t _internal_wintype() const; + void _internal_set_wintype(::uint32_t value); + + public: + // uint32 wincollid = 4 [json_name = "wincollid"]; + void clear_wincollid() ; + ::uint32_t wincollid() const; + void set_wincollid(::uint32_t value); + + private: + ::uint32_t _internal_wincollid() const; + void _internal_set_wincollid(::uint32_t value); + + public: + // uint32 inputcollid = 5 [json_name = "inputcollid"]; + void clear_inputcollid() ; + ::uint32_t inputcollid() const; + void set_inputcollid(::uint32_t value); + + private: + ::uint32_t _internal_inputcollid() const; + void _internal_set_inputcollid(::uint32_t value); + + public: + // uint32 winref = 8 [json_name = "winref"]; + void clear_winref() ; + ::uint32_t winref() const; + void set_winref(::uint32_t value); + + private: + ::uint32_t _internal_winref() const; + void _internal_set_winref(::uint32_t value); + + public: + // bool winstar = 9 [json_name = "winstar"]; + void clear_winstar() ; + bool winstar() const; + void set_winstar(bool value); + + private: + bool _internal_winstar() const; + void _internal_set_winstar(bool value); + + public: + // bool winagg = 10 [json_name = "winagg"]; + void clear_winagg() ; + bool winagg() const; + void set_winagg(bool value); + + private: + bool _internal_winagg() const; + void _internal_set_winagg(bool value); + + public: + // int32 location = 11 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.WindowFunc) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 11, 3, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > va_cols_; - ::pg_query::RangeVar* relation_; - uint32_t oid_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::pg_query::Node* xpr_; + ::pg_query::Node* aggfilter_; + ::uint32_t winfnoid_; + ::uint32_t wintype_; + ::uint32_t wincollid_; + ::uint32_t inputcollid_; + ::uint32_t winref_; + bool winstar_; + bool winagg_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class PublicationObjSpec final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.PublicationObjSpec) */ { +class WithCheckOption final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.WithCheckOption) */ { public: - inline PublicationObjSpec() : PublicationObjSpec(nullptr) {} - ~PublicationObjSpec() override; - explicit PROTOBUF_CONSTEXPR PublicationObjSpec(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline WithCheckOption() : WithCheckOption(nullptr) {} + ~WithCheckOption() override; + template + explicit PROTOBUF_CONSTEXPR WithCheckOption(::google::protobuf::internal::ConstantInitialized); - PublicationObjSpec(const PublicationObjSpec& from); - PublicationObjSpec(PublicationObjSpec&& from) noexcept - : PublicationObjSpec() { + inline WithCheckOption(const WithCheckOption& from) + : WithCheckOption(nullptr, from) {} + WithCheckOption(WithCheckOption&& from) noexcept + : WithCheckOption() { *this = ::std::move(from); } - inline PublicationObjSpec& operator=(const PublicationObjSpec& from) { + inline WithCheckOption& operator=(const WithCheckOption& from) { CopyFrom(from); return *this; } - inline PublicationObjSpec& operator=(PublicationObjSpec&& from) noexcept { + inline WithCheckOption& operator=(WithCheckOption&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -60600,192 +70842,238 @@ class PublicationObjSpec final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const PublicationObjSpec& default_instance() { + static const WithCheckOption& default_instance() { return *internal_default_instance(); } - static inline const PublicationObjSpec* internal_default_instance() { - return reinterpret_cast( - &_PublicationObjSpec_default_instance_); + static inline const WithCheckOption* internal_default_instance() { + return reinterpret_cast( + &_WithCheckOption_default_instance_); } static constexpr int kIndexInFileMessages = - 237; + 104; - friend void swap(PublicationObjSpec& a, PublicationObjSpec& b) { + friend void swap(WithCheckOption& a, WithCheckOption& b) { a.Swap(&b); } - inline void Swap(PublicationObjSpec* other) { + inline void Swap(WithCheckOption* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(PublicationObjSpec* other) { + void UnsafeArenaSwap(WithCheckOption* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - PublicationObjSpec* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + WithCheckOption* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const PublicationObjSpec& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const PublicationObjSpec& from) { - PublicationObjSpec::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const WithCheckOption& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const WithCheckOption& from) { + WithCheckOption::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(PublicationObjSpec* other); + void InternalSwap(WithCheckOption* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.PublicationObjSpec"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.WithCheckOption"; } protected: - explicit PublicationObjSpec(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit WithCheckOption(::google::protobuf::Arena* arena); + WithCheckOption(::google::protobuf::Arena* arena, const WithCheckOption& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kNameFieldNumber = 2, - kPubtableFieldNumber = 3, - kPubobjtypeFieldNumber = 1, - kLocationFieldNumber = 4, + kRelnameFieldNumber = 2, + kPolnameFieldNumber = 3, + kQualFieldNumber = 4, + kKindFieldNumber = 1, + kCascadedFieldNumber = 5, }; - // string name = 2 [json_name = "name"]; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); + // string relname = 2 [json_name = "relname"]; + void clear_relname() ; + const std::string& relname() const; + template + void set_relname(Arg_&& arg, Args_... args); + std::string* mutable_relname(); + PROTOBUF_NODISCARD std::string* release_relname(); + void set_allocated_relname(std::string* value); + private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); + const std::string& _internal_relname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_relname( + const std::string& value); + std::string* _internal_mutable_relname(); + public: + // string polname = 3 [json_name = "polname"]; + void clear_polname() ; + const std::string& polname() const; + template + void set_polname(Arg_&& arg, Args_... args); + std::string* mutable_polname(); + PROTOBUF_NODISCARD std::string* release_polname(); + void set_allocated_polname(std::string* value); - // .pg_query.PublicationTable pubtable = 3 [json_name = "pubtable"]; - bool has_pubtable() const; private: - bool _internal_has_pubtable() const; + const std::string& _internal_polname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_polname( + const std::string& value); + std::string* _internal_mutable_polname(); + public: - void clear_pubtable(); - const ::pg_query::PublicationTable& pubtable() const; - PROTOBUF_NODISCARD ::pg_query::PublicationTable* release_pubtable(); - ::pg_query::PublicationTable* mutable_pubtable(); - void set_allocated_pubtable(::pg_query::PublicationTable* pubtable); + // .pg_query.Node qual = 4 [json_name = "qual"]; + bool has_qual() const; + void clear_qual() ; + const ::pg_query::Node& qual() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_qual(); + ::pg_query::Node* mutable_qual(); + void set_allocated_qual(::pg_query::Node* value); + void unsafe_arena_set_allocated_qual(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_qual(); + private: - const ::pg_query::PublicationTable& _internal_pubtable() const; - ::pg_query::PublicationTable* _internal_mutable_pubtable(); + const ::pg_query::Node& _internal_qual() const; + ::pg_query::Node* _internal_mutable_qual(); + public: - void unsafe_arena_set_allocated_pubtable( - ::pg_query::PublicationTable* pubtable); - ::pg_query::PublicationTable* unsafe_arena_release_pubtable(); + // .pg_query.WCOKind kind = 1 [json_name = "kind"]; + void clear_kind() ; + ::pg_query::WCOKind kind() const; + void set_kind(::pg_query::WCOKind value); - // .pg_query.PublicationObjSpecType pubobjtype = 1 [json_name = "pubobjtype"]; - void clear_pubobjtype(); - ::pg_query::PublicationObjSpecType pubobjtype() const; - void set_pubobjtype(::pg_query::PublicationObjSpecType value); private: - ::pg_query::PublicationObjSpecType _internal_pubobjtype() const; - void _internal_set_pubobjtype(::pg_query::PublicationObjSpecType value); + ::pg_query::WCOKind _internal_kind() const; + void _internal_set_kind(::pg_query::WCOKind value); + public: + // bool cascaded = 5 [json_name = "cascaded"]; + void clear_cascaded() ; + bool cascaded() const; + void set_cascaded(bool value); - // int32 location = 4 [json_name = "location"]; - void clear_location(); - int32_t location() const; - void set_location(int32_t value); private: - int32_t _internal_location() const; - void _internal_set_location(int32_t value); - public: + bool _internal_cascaded() const; + void _internal_set_cascaded(bool value); - // @@protoc_insertion_point(class_scope:pg_query.PublicationObjSpec) + public: + // @@protoc_insertion_point(class_scope:pg_query.WithCheckOption) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 1, + 47, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::pg_query::PublicationTable* pubtable_; - int pubobjtype_; - int32_t location_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::internal::ArenaStringPtr relname_; + ::google::protobuf::internal::ArenaStringPtr polname_; + ::pg_query::Node* qual_; + int kind_; + bool cascaded_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class PublicationTable final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.PublicationTable) */ { +class WithClause final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.WithClause) */ { public: - inline PublicationTable() : PublicationTable(nullptr) {} - ~PublicationTable() override; - explicit PROTOBUF_CONSTEXPR PublicationTable(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline WithClause() : WithClause(nullptr) {} + ~WithClause() override; + template + explicit PROTOBUF_CONSTEXPR WithClause(::google::protobuf::internal::ConstantInitialized); - PublicationTable(const PublicationTable& from); - PublicationTable(PublicationTable&& from) noexcept - : PublicationTable() { + inline WithClause(const WithClause& from) + : WithClause(nullptr, from) {} + WithClause(WithClause&& from) noexcept + : WithClause() { *this = ::std::move(from); } - inline PublicationTable& operator=(const PublicationTable& from) { + inline WithClause& operator=(const WithClause& from) { CopyFrom(from); return *this; } - inline PublicationTable& operator=(PublicationTable&& from) noexcept { + inline WithClause& operator=(WithClause&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -60795,194 +71083,204 @@ class PublicationTable final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const PublicationTable& default_instance() { + static const WithClause& default_instance() { return *internal_default_instance(); } - static inline const PublicationTable* internal_default_instance() { - return reinterpret_cast( - &_PublicationTable_default_instance_); + static inline const WithClause* internal_default_instance() { + return reinterpret_cast( + &_WithClause_default_instance_); } static constexpr int kIndexInFileMessages = - 238; + 109; - friend void swap(PublicationTable& a, PublicationTable& b) { + friend void swap(WithClause& a, WithClause& b) { a.Swap(&b); } - inline void Swap(PublicationTable* other) { + inline void Swap(WithClause* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(PublicationTable* other) { + void UnsafeArenaSwap(WithClause* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - PublicationTable* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + WithClause* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const PublicationTable& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const PublicationTable& from) { - PublicationTable::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const WithClause& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const WithClause& from) { + WithClause::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(PublicationTable* other); + void InternalSwap(WithClause* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.PublicationTable"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.WithClause"; } protected: - explicit PublicationTable(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit WithClause(::google::protobuf::Arena* arena); + WithClause(::google::protobuf::Arena* arena, const WithClause& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kColumnsFieldNumber = 3, - kRelationFieldNumber = 1, - kWhereClauseFieldNumber = 2, + kCtesFieldNumber = 1, + kRecursiveFieldNumber = 2, + kLocationFieldNumber = 3, }; - // repeated .pg_query.Node columns = 3 [json_name = "columns"]; - int columns_size() const; - private: - int _internal_columns_size() const; - public: - void clear_columns(); - ::pg_query::Node* mutable_columns(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* - mutable_columns(); + // repeated .pg_query.Node ctes = 1 [json_name = "ctes"]; + int ctes_size() const; private: - const ::pg_query::Node& _internal_columns(int index) const; - ::pg_query::Node* _internal_add_columns(); - public: - const ::pg_query::Node& columns(int index) const; - ::pg_query::Node* add_columns(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& - columns() const; + int _internal_ctes_size() const; - // .pg_query.RangeVar relation = 1 [json_name = "relation"]; - bool has_relation() const; - private: - bool _internal_has_relation() const; public: - void clear_relation(); - const ::pg_query::RangeVar& relation() const; - PROTOBUF_NODISCARD ::pg_query::RangeVar* release_relation(); - ::pg_query::RangeVar* mutable_relation(); - void set_allocated_relation(::pg_query::RangeVar* relation); + void clear_ctes() ; + ::pg_query::Node* mutable_ctes(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_ctes(); private: - const ::pg_query::RangeVar& _internal_relation() const; - ::pg_query::RangeVar* _internal_mutable_relation(); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_ctes() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_ctes(); public: - void unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation); - ::pg_query::RangeVar* unsafe_arena_release_relation(); + const ::pg_query::Node& ctes(int index) const; + ::pg_query::Node* add_ctes(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + ctes() const; + // bool recursive = 2 [json_name = "recursive"]; + void clear_recursive() ; + bool recursive() const; + void set_recursive(bool value); - // .pg_query.Node where_clause = 2 [json_name = "whereClause"]; - bool has_where_clause() const; private: - bool _internal_has_where_clause() const; + bool _internal_recursive() const; + void _internal_set_recursive(bool value); + public: - void clear_where_clause(); - const ::pg_query::Node& where_clause() const; - PROTOBUF_NODISCARD ::pg_query::Node* release_where_clause(); - ::pg_query::Node* mutable_where_clause(); - void set_allocated_where_clause(::pg_query::Node* where_clause); + // int32 location = 3 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + private: - const ::pg_query::Node& _internal_where_clause() const; - ::pg_query::Node* _internal_mutable_where_clause(); - public: - void unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause); - ::pg_query::Node* unsafe_arena_release_where_clause(); + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.PublicationTable) + public: + // @@protoc_insertion_point(class_scope:pg_query.WithClause) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node > columns_; - ::pg_query::RangeVar* relation_; - ::pg_query::Node* where_clause_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > ctes_; + bool recursive_; + ::int32_t location_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class InlineCodeBlock final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.InlineCodeBlock) */ { +class XmlExpr final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.XmlExpr) */ { public: - inline InlineCodeBlock() : InlineCodeBlock(nullptr) {} - ~InlineCodeBlock() override; - explicit PROTOBUF_CONSTEXPR InlineCodeBlock(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline XmlExpr() : XmlExpr(nullptr) {} + ~XmlExpr() override; + template + explicit PROTOBUF_CONSTEXPR XmlExpr(::google::protobuf::internal::ConstantInitialized); - InlineCodeBlock(const InlineCodeBlock& from); - InlineCodeBlock(InlineCodeBlock&& from) noexcept - : InlineCodeBlock() { + inline XmlExpr(const XmlExpr& from) + : XmlExpr(nullptr, from) {} + XmlExpr(XmlExpr&& from) noexcept + : XmlExpr() { *this = ::std::move(from); } - inline InlineCodeBlock& operator=(const InlineCodeBlock& from) { + inline XmlExpr& operator=(const XmlExpr& from) { CopyFrom(from); return *this; } - inline InlineCodeBlock& operator=(InlineCodeBlock&& from) noexcept { + inline XmlExpr& operator=(XmlExpr&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -60992,183 +71290,328 @@ class InlineCodeBlock final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const InlineCodeBlock& default_instance() { + static const XmlExpr& default_instance() { return *internal_default_instance(); } - static inline const InlineCodeBlock* internal_default_instance() { - return reinterpret_cast( - &_InlineCodeBlock_default_instance_); + static inline const XmlExpr* internal_default_instance() { + return reinterpret_cast( + &_XmlExpr_default_instance_); } static constexpr int kIndexInFileMessages = - 239; + 48; - friend void swap(InlineCodeBlock& a, InlineCodeBlock& b) { + friend void swap(XmlExpr& a, XmlExpr& b) { a.Swap(&b); } - inline void Swap(InlineCodeBlock* other) { + inline void Swap(XmlExpr* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(InlineCodeBlock* other) { + void UnsafeArenaSwap(XmlExpr* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - InlineCodeBlock* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + XmlExpr* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const InlineCodeBlock& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const InlineCodeBlock& from) { - InlineCodeBlock::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const XmlExpr& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const XmlExpr& from) { + XmlExpr::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(XmlExpr* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.XmlExpr"; } + protected: + explicit XmlExpr(::google::protobuf::Arena* arena); + XmlExpr(::google::protobuf::Arena* arena, const XmlExpr& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNamedArgsFieldNumber = 4, + kArgNamesFieldNumber = 5, + kArgsFieldNumber = 6, + kNameFieldNumber = 3, + kXprFieldNumber = 1, + kOpFieldNumber = 2, + kXmloptionFieldNumber = 7, + kIndentFieldNumber = 8, + kTypeFieldNumber = 9, + kTypmodFieldNumber = 10, + kLocationFieldNumber = 11, + }; + // repeated .pg_query.Node named_args = 4 [json_name = "named_args"]; + int named_args_size() const; + private: + int _internal_named_args_size() const; + + public: + void clear_named_args() ; + ::pg_query::Node* mutable_named_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_named_args(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_named_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_named_args(); + public: + const ::pg_query::Node& named_args(int index) const; + ::pg_query::Node* add_named_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + named_args() const; + // repeated .pg_query.Node arg_names = 5 [json_name = "arg_names"]; + int arg_names_size() const; + private: + int _internal_arg_names_size() const; + + public: + void clear_arg_names() ; + ::pg_query::Node* mutable_arg_names(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_arg_names(); + private: + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_arg_names() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_arg_names(); + public: + const ::pg_query::Node& arg_names(int index) const; + ::pg_query::Node* add_arg_names(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + arg_names() const; + // repeated .pg_query.Node args = 6 [json_name = "args"]; + int args_size() const; + private: + int _internal_args_size() const; + + public: + void clear_args() ; + ::pg_query::Node* mutable_args(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::Node >* + mutable_args(); private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& _internal_args() const; + ::google::protobuf::RepeatedPtrField<::pg_query::Node>* _internal_mutable_args(); public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + const ::pg_query::Node& args(int index) const; + ::pg_query::Node* add_args(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::Node >& + args() const; + // string name = 3 [json_name = "name"]; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(InlineCodeBlock* other); + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.InlineCodeBlock"; - } - protected: - explicit InlineCodeBlock(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); public: + // .pg_query.Node xpr = 1 [json_name = "xpr"]; + bool has_xpr() const; + void clear_xpr() ; + const ::pg_query::Node& xpr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_xpr(); + ::pg_query::Node* mutable_xpr(); + void set_allocated_xpr(::pg_query::Node* value); + void unsafe_arena_set_allocated_xpr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_xpr(); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + private: + const ::pg_query::Node& _internal_xpr() const; + ::pg_query::Node* _internal_mutable_xpr(); - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + public: + // .pg_query.XmlExprOp op = 2 [json_name = "op"]; + void clear_op() ; + ::pg_query::XmlExprOp op() const; + void set_op(::pg_query::XmlExprOp value); - // nested types ---------------------------------------------------- + private: + ::pg_query::XmlExprOp _internal_op() const; + void _internal_set_op(::pg_query::XmlExprOp value); - // accessors ------------------------------------------------------- + public: + // .pg_query.XmlOptionType xmloption = 7 [json_name = "xmloption"]; + void clear_xmloption() ; + ::pg_query::XmlOptionType xmloption() const; + void set_xmloption(::pg_query::XmlOptionType value); - enum : int { - kSourceTextFieldNumber = 1, - kLangOidFieldNumber = 2, - kLangIsTrustedFieldNumber = 3, - kAtomicFieldNumber = 4, - }; - // string source_text = 1 [json_name = "source_text"]; - void clear_source_text(); - const std::string& source_text() const; - template - void set_source_text(ArgT0&& arg0, ArgT... args); - std::string* mutable_source_text(); - PROTOBUF_NODISCARD std::string* release_source_text(); - void set_allocated_source_text(std::string* source_text); private: - const std::string& _internal_source_text() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_source_text(const std::string& value); - std::string* _internal_mutable_source_text(); + ::pg_query::XmlOptionType _internal_xmloption() const; + void _internal_set_xmloption(::pg_query::XmlOptionType value); + public: + // bool indent = 8 [json_name = "indent"]; + void clear_indent() ; + bool indent() const; + void set_indent(bool value); - // uint32 lang_oid = 2 [json_name = "langOid"]; - void clear_lang_oid(); - uint32_t lang_oid() const; - void set_lang_oid(uint32_t value); private: - uint32_t _internal_lang_oid() const; - void _internal_set_lang_oid(uint32_t value); + bool _internal_indent() const; + void _internal_set_indent(bool value); + public: + // uint32 type = 9 [json_name = "type"]; + void clear_type() ; + ::uint32_t type() const; + void set_type(::uint32_t value); - // bool lang_is_trusted = 3 [json_name = "langIsTrusted"]; - void clear_lang_is_trusted(); - bool lang_is_trusted() const; - void set_lang_is_trusted(bool value); private: - bool _internal_lang_is_trusted() const; - void _internal_set_lang_is_trusted(bool value); + ::uint32_t _internal_type() const; + void _internal_set_type(::uint32_t value); + public: + // int32 typmod = 10 [json_name = "typmod"]; + void clear_typmod() ; + ::int32_t typmod() const; + void set_typmod(::int32_t value); - // bool atomic = 4 [json_name = "atomic"]; - void clear_atomic(); - bool atomic() const; - void set_atomic(bool value); private: - bool _internal_atomic() const; - void _internal_set_atomic(bool value); + ::int32_t _internal_typmod() const; + void _internal_set_typmod(::int32_t value); + public: + // int32 location = 11 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.InlineCodeBlock) + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.XmlExpr) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 11, 4, + 37, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr source_text_; - uint32_t lang_oid_; - bool lang_is_trusted_; - bool atomic_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > named_args_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > arg_names_; + ::google::protobuf::RepeatedPtrField< ::pg_query::Node > args_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::pg_query::Node* xpr_; + int op_; + int xmloption_; + bool indent_; + ::uint32_t type_; + ::int32_t typmod_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class CallContext final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.CallContext) */ { +class XmlSerialize final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.XmlSerialize) */ { public: - inline CallContext() : CallContext(nullptr) {} - ~CallContext() override; - explicit PROTOBUF_CONSTEXPR CallContext(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline XmlSerialize() : XmlSerialize(nullptr) {} + ~XmlSerialize() override; + template + explicit PROTOBUF_CONSTEXPR XmlSerialize(::google::protobuf::internal::ConstantInitialized); - CallContext(const CallContext& from); - CallContext(CallContext&& from) noexcept - : CallContext() { + inline XmlSerialize(const XmlSerialize& from) + : XmlSerialize(nullptr, from) {} + XmlSerialize(XmlSerialize&& from) noexcept + : XmlSerialize() { *this = ::std::move(from); } - inline CallContext& operator=(const CallContext& from) { + inline XmlSerialize& operator=(const XmlSerialize& from) { CopyFrom(from); return *this; } - inline CallContext& operator=(CallContext&& from) noexcept { + inline XmlSerialize& operator=(XmlSerialize&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -61178,145 +71621,231 @@ class CallContext final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const CallContext& default_instance() { + static const XmlSerialize& default_instance() { return *internal_default_instance(); } - static inline const CallContext* internal_default_instance() { - return reinterpret_cast( - &_CallContext_default_instance_); + static inline const XmlSerialize* internal_default_instance() { + return reinterpret_cast( + &_XmlSerialize_default_instance_); } static constexpr int kIndexInFileMessages = - 240; + 94; - friend void swap(CallContext& a, CallContext& b) { + friend void swap(XmlSerialize& a, XmlSerialize& b) { a.Swap(&b); } - inline void Swap(CallContext* other) { + inline void Swap(XmlSerialize* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(CallContext* other) { + void UnsafeArenaSwap(XmlSerialize* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - CallContext* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + XmlSerialize* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const CallContext& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const CallContext& from) { - CallContext::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const XmlSerialize& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const XmlSerialize& from) { + XmlSerialize::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(CallContext* other); + void InternalSwap(XmlSerialize* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.CallContext"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.XmlSerialize"; } protected: - explicit CallContext(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit XmlSerialize(::google::protobuf::Arena* arena); + XmlSerialize(::google::protobuf::Arena* arena, const XmlSerialize& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kAtomicFieldNumber = 1, + kExprFieldNumber = 2, + kTypeNameFieldNumber = 3, + kXmloptionFieldNumber = 1, + kIndentFieldNumber = 4, + kLocationFieldNumber = 5, }; - // bool atomic = 1 [json_name = "atomic"]; - void clear_atomic(); - bool atomic() const; - void set_atomic(bool value); + // .pg_query.Node expr = 2 [json_name = "expr"]; + bool has_expr() const; + void clear_expr() ; + const ::pg_query::Node& expr() const; + PROTOBUF_NODISCARD ::pg_query::Node* release_expr(); + ::pg_query::Node* mutable_expr(); + void set_allocated_expr(::pg_query::Node* value); + void unsafe_arena_set_allocated_expr(::pg_query::Node* value); + ::pg_query::Node* unsafe_arena_release_expr(); + private: - bool _internal_atomic() const; - void _internal_set_atomic(bool value); + const ::pg_query::Node& _internal_expr() const; + ::pg_query::Node* _internal_mutable_expr(); + public: + // .pg_query.TypeName type_name = 3 [json_name = "typeName"]; + bool has_type_name() const; + void clear_type_name() ; + const ::pg_query::TypeName& type_name() const; + PROTOBUF_NODISCARD ::pg_query::TypeName* release_type_name(); + ::pg_query::TypeName* mutable_type_name(); + void set_allocated_type_name(::pg_query::TypeName* value); + void unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value); + ::pg_query::TypeName* unsafe_arena_release_type_name(); - // @@protoc_insertion_point(class_scope:pg_query.CallContext) + private: + const ::pg_query::TypeName& _internal_type_name() const; + ::pg_query::TypeName* _internal_mutable_type_name(); + + public: + // .pg_query.XmlOptionType xmloption = 1 [json_name = "xmloption"]; + void clear_xmloption() ; + ::pg_query::XmlOptionType xmloption() const; + void set_xmloption(::pg_query::XmlOptionType value); + + private: + ::pg_query::XmlOptionType _internal_xmloption() const; + void _internal_set_xmloption(::pg_query::XmlOptionType value); + + public: + // bool indent = 4 [json_name = "indent"]; + void clear_indent() ; + bool indent() const; + void set_indent(bool value); + + private: + bool _internal_indent() const; + void _internal_set_indent(bool value); + + public: + // int32 location = 5 [json_name = "location"]; + void clear_location() ; + ::int32_t location() const; + void set_location(::int32_t value); + + private: + ::int32_t _internal_location() const; + void _internal_set_location(::int32_t value); + + public: + // @@protoc_insertion_point(class_scope:pg_query.XmlSerialize) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 2, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - bool atomic_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::internal::HasBits<1> _has_bits_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::pg_query::Node* expr_; + ::pg_query::TypeName* type_name_; + int xmloption_; + bool indent_; + ::int32_t location_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; -}; -// ------------------------------------------------------------------- +};// ------------------------------------------------------------------- -class ScanToken final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:pg_query.ScanToken) */ { +class ParseResult final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:pg_query.ParseResult) */ { public: - inline ScanToken() : ScanToken(nullptr) {} - ~ScanToken() override; - explicit PROTOBUF_CONSTEXPR ScanToken(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ParseResult() : ParseResult(nullptr) {} + ~ParseResult() override; + template + explicit PROTOBUF_CONSTEXPR ParseResult(::google::protobuf::internal::ConstantInitialized); - ScanToken(const ScanToken& from); - ScanToken(ScanToken&& from) noexcept - : ScanToken() { + inline ParseResult(const ParseResult& from) + : ParseResult(nullptr, from) {} + ParseResult(ParseResult&& from) noexcept + : ParseResult() { *this = ::std::move(from); } - inline ScanToken& operator=(const ScanToken& from) { + inline ParseResult& operator=(const ParseResult& from) { CopyFrom(from); return *this; } - inline ScanToken& operator=(ScanToken&& from) noexcept { + inline ParseResult& operator=(ParseResult&& from) noexcept { if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() + if (GetArena() == from.GetArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr + && GetArena() != nullptr #endif // !PROTOBUF_FORCE_COPY_IN_MOVE ) { InternalSwap(&from); @@ -61326,224 +71855,255 @@ class ScanToken final : return *this; } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { return GetDescriptor(); } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + static const ::google::protobuf::Descriptor* GetDescriptor() { return default_instance().GetMetadata().descriptor; } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + static const ::google::protobuf::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const ScanToken& default_instance() { + static const ParseResult& default_instance() { return *internal_default_instance(); } - static inline const ScanToken* internal_default_instance() { - return reinterpret_cast( - &_ScanToken_default_instance_); + static inline const ParseResult* internal_default_instance() { + return reinterpret_cast( + &_ParseResult_default_instance_); } static constexpr int kIndexInFileMessages = - 241; + 0; - friend void swap(ScanToken& a, ScanToken& b) { + friend void swap(ParseResult& a, ParseResult& b) { a.Swap(&b); } - inline void Swap(ScanToken* other) { + inline void Swap(ParseResult* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { + if (GetArena() == other->GetArena()) { #endif // !PROTOBUF_FORCE_COPY_IN_SWAP InternalSwap(other); } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + ::google::protobuf::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(ScanToken* other) { + void UnsafeArenaSwap(ParseResult* other) { if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + ABSL_DCHECK(GetArena() == other->GetArena()); InternalSwap(other); } // implements Message ---------------------------------------------- - ScanToken* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + ParseResult* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const ScanToken& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const ScanToken& from) { - ScanToken::MergeImpl(*this, from); + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ParseResult& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const ParseResult& from) { + ParseResult::MergeImpl(*this, from); } private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); public: PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; bool IsInitialized() const final; - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(ScanToken* other); + void InternalSwap(ParseResult* other); private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "pg_query.ScanToken"; + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "pg_query.ParseResult"; } protected: - explicit ScanToken(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + explicit ParseResult(::google::protobuf::Arena* arena); + ParseResult(::google::protobuf::Arena* arena, const ParseResult& from); public: static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + const ::google::protobuf::Message::ClassData*GetClassData() const final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + ::google::protobuf::Metadata GetMetadata() const final; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- enum : int { - kStartFieldNumber = 1, - kEndFieldNumber = 2, - kTokenFieldNumber = 4, - kKeywordKindFieldNumber = 5, + kStmtsFieldNumber = 2, + kVersionFieldNumber = 1, }; - // int32 start = 1; - void clear_start(); - int32_t start() const; - void set_start(int32_t value); + // repeated .pg_query.RawStmt stmts = 2; + int stmts_size() const; private: - int32_t _internal_start() const; - void _internal_set_start(int32_t value); - public: + int _internal_stmts_size() const; - // int32 end = 2; - void clear_end(); - int32_t end() const; - void set_end(int32_t value); - private: - int32_t _internal_end() const; - void _internal_set_end(int32_t value); public: - - // .pg_query.Token token = 4; - void clear_token(); - ::pg_query::Token token() const; - void set_token(::pg_query::Token value); + void clear_stmts() ; + ::pg_query::RawStmt* mutable_stmts(int index); + ::google::protobuf::RepeatedPtrField< ::pg_query::RawStmt >* + mutable_stmts(); private: - ::pg_query::Token _internal_token() const; - void _internal_set_token(::pg_query::Token value); + const ::google::protobuf::RepeatedPtrField<::pg_query::RawStmt>& _internal_stmts() const; + ::google::protobuf::RepeatedPtrField<::pg_query::RawStmt>* _internal_mutable_stmts(); public: + const ::pg_query::RawStmt& stmts(int index) const; + ::pg_query::RawStmt* add_stmts(); + const ::google::protobuf::RepeatedPtrField< ::pg_query::RawStmt >& + stmts() const; + // int32 version = 1; + void clear_version() ; + ::int32_t version() const; + void set_version(::int32_t value); - // .pg_query.KeywordKind keyword_kind = 5; - void clear_keyword_kind(); - ::pg_query::KeywordKind keyword_kind() const; - void set_keyword_kind(::pg_query::KeywordKind value); private: - ::pg_query::KeywordKind _internal_keyword_kind() const; - void _internal_set_keyword_kind(::pg_query::KeywordKind value); - public: + ::int32_t _internal_version() const; + void _internal_set_version(::int32_t value); - // @@protoc_insertion_point(class_scope:pg_query.ScanToken) + public: + // @@protoc_insertion_point(class_scope:pg_query.ParseResult) private: class _Internal; - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; struct Impl_ { - int32_t start_; - int32_t end_; - int token_; - int keyword_kind_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + ::google::protobuf::RepeatedPtrField< ::pg_query::RawStmt > stmts_; + ::int32_t version_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER }; union { Impl_ _impl_; }; friend struct ::TableStruct_protobuf_2fpg_5fquery_2eproto; }; + // =================================================================== + + // =================================================================== + #ifdef __GNUC__ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wstrict-aliasing" #endif // __GNUC__ +// ------------------------------------------------------------------- + // ParseResult // int32 version = 1; inline void ParseResult::clear_version() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.version_ = 0; } -inline int32_t ParseResult::_internal_version() const { - return _impl_.version_; -} -inline int32_t ParseResult::version() const { +inline ::int32_t ParseResult::version() const { // @@protoc_insertion_point(field_get:pg_query.ParseResult.version) return _internal_version(); } -inline void ParseResult::_internal_set_version(int32_t value) { - - _impl_.version_ = value; -} -inline void ParseResult::set_version(int32_t value) { +inline void ParseResult::set_version(::int32_t value) { _internal_set_version(value); // @@protoc_insertion_point(field_set:pg_query.ParseResult.version) } +inline ::int32_t ParseResult::_internal_version() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.version_; +} +inline void ParseResult::_internal_set_version(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.version_ = value; +} // repeated .pg_query.RawStmt stmts = 2; inline int ParseResult::_internal_stmts_size() const { - return _impl_.stmts_.size(); + return _internal_stmts().size(); } inline int ParseResult::stmts_size() const { return _internal_stmts_size(); } inline void ParseResult::clear_stmts() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.stmts_.Clear(); } -inline ::pg_query::RawStmt* ParseResult::mutable_stmts(int index) { +inline ::pg_query::RawStmt* ParseResult::mutable_stmts(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_mutable:pg_query.ParseResult.stmts) - return _impl_.stmts_.Mutable(index); + return _internal_mutable_stmts()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::RawStmt >* -ParseResult::mutable_stmts() { +inline ::google::protobuf::RepeatedPtrField<::pg_query::RawStmt>* ParseResult::mutable_stmts() + ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_mutable_list:pg_query.ParseResult.stmts) - return &_impl_.stmts_; + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_stmts(); } -inline const ::pg_query::RawStmt& ParseResult::_internal_stmts(int index) const { - return _impl_.stmts_.Get(index); -} -inline const ::pg_query::RawStmt& ParseResult::stmts(int index) const { +inline const ::pg_query::RawStmt& ParseResult::stmts(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.ParseResult.stmts) - return _internal_stmts(index); -} -inline ::pg_query::RawStmt* ParseResult::_internal_add_stmts() { - return _impl_.stmts_.Add(); + return _internal_stmts().Get(index); } -inline ::pg_query::RawStmt* ParseResult::add_stmts() { - ::pg_query::RawStmt* _add = _internal_add_stmts(); +inline ::pg_query::RawStmt* ParseResult::add_stmts() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::RawStmt* _add = _internal_mutable_stmts()->Add(); // @@protoc_insertion_point(field_add:pg_query.ParseResult.stmts) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::RawStmt >& -ParseResult::stmts() const { +inline const ::google::protobuf::RepeatedPtrField<::pg_query::RawStmt>& ParseResult::stmts() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_list:pg_query.ParseResult.stmts) + return _internal_stmts(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::RawStmt>& +ParseResult::_internal_stmts() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); return _impl_.stmts_; } +inline ::google::protobuf::RepeatedPtrField<::pg_query::RawStmt>* +ParseResult::_internal_mutable_stmts() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.stmts_; +} // ------------------------------------------------------------------- @@ -61551,81 +72111,94 @@ ParseResult::stmts() const { // int32 version = 1; inline void ScanResult::clear_version() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.version_ = 0; } -inline int32_t ScanResult::_internal_version() const { - return _impl_.version_; -} -inline int32_t ScanResult::version() const { +inline ::int32_t ScanResult::version() const { // @@protoc_insertion_point(field_get:pg_query.ScanResult.version) return _internal_version(); } -inline void ScanResult::_internal_set_version(int32_t value) { - - _impl_.version_ = value; -} -inline void ScanResult::set_version(int32_t value) { +inline void ScanResult::set_version(::int32_t value) { _internal_set_version(value); // @@protoc_insertion_point(field_set:pg_query.ScanResult.version) } +inline ::int32_t ScanResult::_internal_version() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.version_; +} +inline void ScanResult::_internal_set_version(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.version_ = value; +} // repeated .pg_query.ScanToken tokens = 2; inline int ScanResult::_internal_tokens_size() const { - return _impl_.tokens_.size(); + return _internal_tokens().size(); } inline int ScanResult::tokens_size() const { return _internal_tokens_size(); } inline void ScanResult::clear_tokens() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.tokens_.Clear(); } -inline ::pg_query::ScanToken* ScanResult::mutable_tokens(int index) { +inline ::pg_query::ScanToken* ScanResult::mutable_tokens(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_mutable:pg_query.ScanResult.tokens) - return _impl_.tokens_.Mutable(index); + return _internal_mutable_tokens()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::ScanToken >* -ScanResult::mutable_tokens() { +inline ::google::protobuf::RepeatedPtrField<::pg_query::ScanToken>* ScanResult::mutable_tokens() + ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_mutable_list:pg_query.ScanResult.tokens) - return &_impl_.tokens_; + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_tokens(); } -inline const ::pg_query::ScanToken& ScanResult::_internal_tokens(int index) const { - return _impl_.tokens_.Get(index); -} -inline const ::pg_query::ScanToken& ScanResult::tokens(int index) const { +inline const ::pg_query::ScanToken& ScanResult::tokens(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.ScanResult.tokens) - return _internal_tokens(index); -} -inline ::pg_query::ScanToken* ScanResult::_internal_add_tokens() { - return _impl_.tokens_.Add(); + return _internal_tokens().Get(index); } -inline ::pg_query::ScanToken* ScanResult::add_tokens() { - ::pg_query::ScanToken* _add = _internal_add_tokens(); +inline ::pg_query::ScanToken* ScanResult::add_tokens() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::ScanToken* _add = _internal_mutable_tokens()->Add(); // @@protoc_insertion_point(field_add:pg_query.ScanResult.tokens) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::ScanToken >& -ScanResult::tokens() const { +inline const ::google::protobuf::RepeatedPtrField<::pg_query::ScanToken>& ScanResult::tokens() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_list:pg_query.ScanResult.tokens) + return _internal_tokens(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::ScanToken>& +ScanResult::_internal_tokens() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); return _impl_.tokens_; } +inline ::google::protobuf::RepeatedPtrField<::pg_query::ScanToken>* +ScanResult::_internal_mutable_tokens() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.tokens_; +} // ------------------------------------------------------------------- // Node // .pg_query.Alias alias = 1 [json_name = "Alias"]; -inline bool Node::_internal_has_alias() const { +inline bool Node::has_alias() const { return node_case() == kAlias; } -inline bool Node::has_alias() const { - return _internal_has_alias(); +inline bool Node::_internal_has_alias() const { + return node_case() == kAlias; } inline void Node::set_has_alias() { _impl_._oneof_case_[0] = kAlias; } inline void Node::clear_alias() { - if (_internal_has_alias()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlias) { + if (GetArena() == nullptr) { delete _impl_.node_.alias_; } clear_has_node(); @@ -61633,11 +72206,11 @@ inline void Node::clear_alias() { } inline ::pg_query::Alias* Node::release_alias() { // @@protoc_insertion_point(field_release:pg_query.Node.alias) - if (_internal_has_alias()) { + if (node_case() == kAlias) { clear_has_node(); - ::pg_query::Alias* temp = _impl_.node_.alias_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alias_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.alias_ = nullptr; return temp; @@ -61646,60 +72219,62 @@ inline ::pg_query::Alias* Node::release_alias() { } } inline const ::pg_query::Alias& Node::_internal_alias() const { - return _internal_has_alias() - ? *_impl_.node_.alias_ - : reinterpret_cast< ::pg_query::Alias&>(::pg_query::_Alias_default_instance_); + return node_case() == kAlias ? *_impl_.node_.alias_ : reinterpret_cast<::pg_query::Alias&>(::pg_query::_Alias_default_instance_); } -inline const ::pg_query::Alias& Node::alias() const { +inline const ::pg_query::Alias& Node::alias() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.alias) return _internal_alias(); } inline ::pg_query::Alias* Node::unsafe_arena_release_alias() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alias) - if (_internal_has_alias()) { + if (node_case() == kAlias) { clear_has_node(); - ::pg_query::Alias* temp = _impl_.node_.alias_; + auto* temp = _impl_.node_.alias_; _impl_.node_.alias_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alias(::pg_query::Alias* alias) { +inline void Node::unsafe_arena_set_allocated_alias(::pg_query::Alias* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alias) { + if (value) { set_has_alias(); - _impl_.node_.alias_ = alias; + _impl_.node_.alias_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alias) } inline ::pg_query::Alias* Node::_internal_mutable_alias() { - if (!_internal_has_alias()) { + if (node_case() != kAlias) { clear_node(); set_has_alias(); - _impl_.node_.alias_ = CreateMaybeMessage< ::pg_query::Alias >(GetArenaForAllocation()); + _impl_.node_.alias_ = CreateMaybeMessage<::pg_query::Alias>(GetArena()); } return _impl_.node_.alias_; } -inline ::pg_query::Alias* Node::mutable_alias() { +inline ::pg_query::Alias* Node::mutable_alias() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Alias* _msg = _internal_mutable_alias(); // @@protoc_insertion_point(field_mutable:pg_query.Node.alias) return _msg; } // .pg_query.RangeVar range_var = 2 [json_name = "RangeVar"]; -inline bool Node::_internal_has_range_var() const { +inline bool Node::has_range_var() const { return node_case() == kRangeVar; } -inline bool Node::has_range_var() const { - return _internal_has_range_var(); +inline bool Node::_internal_has_range_var() const { + return node_case() == kRangeVar; } inline void Node::set_has_range_var() { _impl_._oneof_case_[0] = kRangeVar; } inline void Node::clear_range_var() { - if (_internal_has_range_var()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRangeVar) { + if (GetArena() == nullptr) { delete _impl_.node_.range_var_; } clear_has_node(); @@ -61707,11 +72282,11 @@ inline void Node::clear_range_var() { } inline ::pg_query::RangeVar* Node::release_range_var() { // @@protoc_insertion_point(field_release:pg_query.Node.range_var) - if (_internal_has_range_var()) { + if (node_case() == kRangeVar) { clear_has_node(); - ::pg_query::RangeVar* temp = _impl_.node_.range_var_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.range_var_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.range_var_ = nullptr; return temp; @@ -61720,60 +72295,62 @@ inline ::pg_query::RangeVar* Node::release_range_var() { } } inline const ::pg_query::RangeVar& Node::_internal_range_var() const { - return _internal_has_range_var() - ? *_impl_.node_.range_var_ - : reinterpret_cast< ::pg_query::RangeVar&>(::pg_query::_RangeVar_default_instance_); + return node_case() == kRangeVar ? *_impl_.node_.range_var_ : reinterpret_cast<::pg_query::RangeVar&>(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::RangeVar& Node::range_var() const { +inline const ::pg_query::RangeVar& Node::range_var() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.range_var) return _internal_range_var(); } inline ::pg_query::RangeVar* Node::unsafe_arena_release_range_var() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_var) - if (_internal_has_range_var()) { + if (node_case() == kRangeVar) { clear_has_node(); - ::pg_query::RangeVar* temp = _impl_.node_.range_var_; + auto* temp = _impl_.node_.range_var_; _impl_.node_.range_var_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_range_var(::pg_query::RangeVar* range_var) { +inline void Node::unsafe_arena_set_allocated_range_var(::pg_query::RangeVar* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (range_var) { + if (value) { set_has_range_var(); - _impl_.node_.range_var_ = range_var; + _impl_.node_.range_var_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_var) } inline ::pg_query::RangeVar* Node::_internal_mutable_range_var() { - if (!_internal_has_range_var()) { + if (node_case() != kRangeVar) { clear_node(); set_has_range_var(); - _impl_.node_.range_var_ = CreateMaybeMessage< ::pg_query::RangeVar >(GetArenaForAllocation()); + _impl_.node_.range_var_ = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); } return _impl_.node_.range_var_; } -inline ::pg_query::RangeVar* Node::mutable_range_var() { +inline ::pg_query::RangeVar* Node::mutable_range_var() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::RangeVar* _msg = _internal_mutable_range_var(); // @@protoc_insertion_point(field_mutable:pg_query.Node.range_var) return _msg; } // .pg_query.TableFunc table_func = 3 [json_name = "TableFunc"]; -inline bool Node::_internal_has_table_func() const { +inline bool Node::has_table_func() const { return node_case() == kTableFunc; } -inline bool Node::has_table_func() const { - return _internal_has_table_func(); +inline bool Node::_internal_has_table_func() const { + return node_case() == kTableFunc; } inline void Node::set_has_table_func() { _impl_._oneof_case_[0] = kTableFunc; } inline void Node::clear_table_func() { - if (_internal_has_table_func()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kTableFunc) { + if (GetArena() == nullptr) { delete _impl_.node_.table_func_; } clear_has_node(); @@ -61781,11 +72358,11 @@ inline void Node::clear_table_func() { } inline ::pg_query::TableFunc* Node::release_table_func() { // @@protoc_insertion_point(field_release:pg_query.Node.table_func) - if (_internal_has_table_func()) { + if (node_case() == kTableFunc) { clear_has_node(); - ::pg_query::TableFunc* temp = _impl_.node_.table_func_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.table_func_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.table_func_ = nullptr; return temp; @@ -61794,60 +72371,138 @@ inline ::pg_query::TableFunc* Node::release_table_func() { } } inline const ::pg_query::TableFunc& Node::_internal_table_func() const { - return _internal_has_table_func() - ? *_impl_.node_.table_func_ - : reinterpret_cast< ::pg_query::TableFunc&>(::pg_query::_TableFunc_default_instance_); + return node_case() == kTableFunc ? *_impl_.node_.table_func_ : reinterpret_cast<::pg_query::TableFunc&>(::pg_query::_TableFunc_default_instance_); } -inline const ::pg_query::TableFunc& Node::table_func() const { +inline const ::pg_query::TableFunc& Node::table_func() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.table_func) return _internal_table_func(); } inline ::pg_query::TableFunc* Node::unsafe_arena_release_table_func() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.table_func) - if (_internal_has_table_func()) { + if (node_case() == kTableFunc) { clear_has_node(); - ::pg_query::TableFunc* temp = _impl_.node_.table_func_; + auto* temp = _impl_.node_.table_func_; _impl_.node_.table_func_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_table_func(::pg_query::TableFunc* table_func) { +inline void Node::unsafe_arena_set_allocated_table_func(::pg_query::TableFunc* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (table_func) { + if (value) { set_has_table_func(); - _impl_.node_.table_func_ = table_func; + _impl_.node_.table_func_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.table_func) } inline ::pg_query::TableFunc* Node::_internal_mutable_table_func() { - if (!_internal_has_table_func()) { + if (node_case() != kTableFunc) { clear_node(); set_has_table_func(); - _impl_.node_.table_func_ = CreateMaybeMessage< ::pg_query::TableFunc >(GetArenaForAllocation()); + _impl_.node_.table_func_ = CreateMaybeMessage<::pg_query::TableFunc>(GetArena()); } return _impl_.node_.table_func_; } -inline ::pg_query::TableFunc* Node::mutable_table_func() { +inline ::pg_query::TableFunc* Node::mutable_table_func() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::TableFunc* _msg = _internal_mutable_table_func(); // @@protoc_insertion_point(field_mutable:pg_query.Node.table_func) return _msg; } -// .pg_query.Var var = 4 [json_name = "Var"]; -inline bool Node::_internal_has_var() const { - return node_case() == kVar; +// .pg_query.IntoClause into_clause = 4 [json_name = "IntoClause"]; +inline bool Node::has_into_clause() const { + return node_case() == kIntoClause; +} +inline bool Node::_internal_has_into_clause() const { + return node_case() == kIntoClause; +} +inline void Node::set_has_into_clause() { + _impl_._oneof_case_[0] = kIntoClause; +} +inline void Node::clear_into_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kIntoClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.into_clause_; + } + clear_has_node(); + } +} +inline ::pg_query::IntoClause* Node::release_into_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.into_clause) + if (node_case() == kIntoClause) { + clear_has_node(); + auto* temp = _impl_.node_.into_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.into_clause_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::pg_query::IntoClause& Node::_internal_into_clause() const { + return node_case() == kIntoClause ? *_impl_.node_.into_clause_ : reinterpret_cast<::pg_query::IntoClause&>(::pg_query::_IntoClause_default_instance_); +} +inline const ::pg_query::IntoClause& Node::into_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.into_clause) + return _internal_into_clause(); +} +inline ::pg_query::IntoClause* Node::unsafe_arena_release_into_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.into_clause) + if (node_case() == kIntoClause) { + clear_has_node(); + auto* temp = _impl_.node_.into_clause_; + _impl_.node_.into_clause_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void Node::unsafe_arena_set_allocated_into_clause(::pg_query::IntoClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_into_clause(); + _impl_.node_.into_clause_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.into_clause) +} +inline ::pg_query::IntoClause* Node::_internal_mutable_into_clause() { + if (node_case() != kIntoClause) { + clear_node(); + set_has_into_clause(); + _impl_.node_.into_clause_ = CreateMaybeMessage<::pg_query::IntoClause>(GetArena()); + } + return _impl_.node_.into_clause_; +} +inline ::pg_query::IntoClause* Node::mutable_into_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::IntoClause* _msg = _internal_mutable_into_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.into_clause) + return _msg; } + +// .pg_query.Var var = 5 [json_name = "Var"]; inline bool Node::has_var() const { - return _internal_has_var(); + return node_case() == kVar; +} +inline bool Node::_internal_has_var() const { + return node_case() == kVar; } inline void Node::set_has_var() { _impl_._oneof_case_[0] = kVar; } inline void Node::clear_var() { - if (_internal_has_var()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kVar) { + if (GetArena() == nullptr) { delete _impl_.node_.var_; } clear_has_node(); @@ -61855,11 +72510,11 @@ inline void Node::clear_var() { } inline ::pg_query::Var* Node::release_var() { // @@protoc_insertion_point(field_release:pg_query.Node.var) - if (_internal_has_var()) { + if (node_case() == kVar) { clear_has_node(); - ::pg_query::Var* temp = _impl_.node_.var_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.var_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.var_ = nullptr; return temp; @@ -61868,60 +72523,62 @@ inline ::pg_query::Var* Node::release_var() { } } inline const ::pg_query::Var& Node::_internal_var() const { - return _internal_has_var() - ? *_impl_.node_.var_ - : reinterpret_cast< ::pg_query::Var&>(::pg_query::_Var_default_instance_); + return node_case() == kVar ? *_impl_.node_.var_ : reinterpret_cast<::pg_query::Var&>(::pg_query::_Var_default_instance_); } -inline const ::pg_query::Var& Node::var() const { +inline const ::pg_query::Var& Node::var() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.var) return _internal_var(); } inline ::pg_query::Var* Node::unsafe_arena_release_var() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.var) - if (_internal_has_var()) { + if (node_case() == kVar) { clear_has_node(); - ::pg_query::Var* temp = _impl_.node_.var_; + auto* temp = _impl_.node_.var_; _impl_.node_.var_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_var(::pg_query::Var* var) { +inline void Node::unsafe_arena_set_allocated_var(::pg_query::Var* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (var) { + if (value) { set_has_var(); - _impl_.node_.var_ = var; + _impl_.node_.var_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.var) } inline ::pg_query::Var* Node::_internal_mutable_var() { - if (!_internal_has_var()) { + if (node_case() != kVar) { clear_node(); set_has_var(); - _impl_.node_.var_ = CreateMaybeMessage< ::pg_query::Var >(GetArenaForAllocation()); + _impl_.node_.var_ = CreateMaybeMessage<::pg_query::Var>(GetArena()); } return _impl_.node_.var_; } -inline ::pg_query::Var* Node::mutable_var() { +inline ::pg_query::Var* Node::mutable_var() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Var* _msg = _internal_mutable_var(); // @@protoc_insertion_point(field_mutable:pg_query.Node.var) return _msg; } -// .pg_query.Param param = 5 [json_name = "Param"]; -inline bool Node::_internal_has_param() const { +// .pg_query.Param param = 6 [json_name = "Param"]; +inline bool Node::has_param() const { return node_case() == kParam; } -inline bool Node::has_param() const { - return _internal_has_param(); +inline bool Node::_internal_has_param() const { + return node_case() == kParam; } inline void Node::set_has_param() { _impl_._oneof_case_[0] = kParam; } inline void Node::clear_param() { - if (_internal_has_param()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kParam) { + if (GetArena() == nullptr) { delete _impl_.node_.param_; } clear_has_node(); @@ -61929,11 +72586,11 @@ inline void Node::clear_param() { } inline ::pg_query::Param* Node::release_param() { // @@protoc_insertion_point(field_release:pg_query.Node.param) - if (_internal_has_param()) { + if (node_case() == kParam) { clear_has_node(); - ::pg_query::Param* temp = _impl_.node_.param_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.param_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.param_ = nullptr; return temp; @@ -61942,60 +72599,62 @@ inline ::pg_query::Param* Node::release_param() { } } inline const ::pg_query::Param& Node::_internal_param() const { - return _internal_has_param() - ? *_impl_.node_.param_ - : reinterpret_cast< ::pg_query::Param&>(::pg_query::_Param_default_instance_); + return node_case() == kParam ? *_impl_.node_.param_ : reinterpret_cast<::pg_query::Param&>(::pg_query::_Param_default_instance_); } -inline const ::pg_query::Param& Node::param() const { +inline const ::pg_query::Param& Node::param() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.param) return _internal_param(); } inline ::pg_query::Param* Node::unsafe_arena_release_param() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.param) - if (_internal_has_param()) { + if (node_case() == kParam) { clear_has_node(); - ::pg_query::Param* temp = _impl_.node_.param_; + auto* temp = _impl_.node_.param_; _impl_.node_.param_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_param(::pg_query::Param* param) { +inline void Node::unsafe_arena_set_allocated_param(::pg_query::Param* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (param) { + if (value) { set_has_param(); - _impl_.node_.param_ = param; + _impl_.node_.param_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.param) } inline ::pg_query::Param* Node::_internal_mutable_param() { - if (!_internal_has_param()) { + if (node_case() != kParam) { clear_node(); set_has_param(); - _impl_.node_.param_ = CreateMaybeMessage< ::pg_query::Param >(GetArenaForAllocation()); + _impl_.node_.param_ = CreateMaybeMessage<::pg_query::Param>(GetArena()); } return _impl_.node_.param_; } -inline ::pg_query::Param* Node::mutable_param() { +inline ::pg_query::Param* Node::mutable_param() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Param* _msg = _internal_mutable_param(); // @@protoc_insertion_point(field_mutable:pg_query.Node.param) return _msg; } -// .pg_query.Aggref aggref = 6 [json_name = "Aggref"]; -inline bool Node::_internal_has_aggref() const { +// .pg_query.Aggref aggref = 7 [json_name = "Aggref"]; +inline bool Node::has_aggref() const { return node_case() == kAggref; } -inline bool Node::has_aggref() const { - return _internal_has_aggref(); +inline bool Node::_internal_has_aggref() const { + return node_case() == kAggref; } inline void Node::set_has_aggref() { _impl_._oneof_case_[0] = kAggref; } inline void Node::clear_aggref() { - if (_internal_has_aggref()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAggref) { + if (GetArena() == nullptr) { delete _impl_.node_.aggref_; } clear_has_node(); @@ -62003,11 +72662,11 @@ inline void Node::clear_aggref() { } inline ::pg_query::Aggref* Node::release_aggref() { // @@protoc_insertion_point(field_release:pg_query.Node.aggref) - if (_internal_has_aggref()) { + if (node_case() == kAggref) { clear_has_node(); - ::pg_query::Aggref* temp = _impl_.node_.aggref_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.aggref_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.aggref_ = nullptr; return temp; @@ -62016,60 +72675,62 @@ inline ::pg_query::Aggref* Node::release_aggref() { } } inline const ::pg_query::Aggref& Node::_internal_aggref() const { - return _internal_has_aggref() - ? *_impl_.node_.aggref_ - : reinterpret_cast< ::pg_query::Aggref&>(::pg_query::_Aggref_default_instance_); + return node_case() == kAggref ? *_impl_.node_.aggref_ : reinterpret_cast<::pg_query::Aggref&>(::pg_query::_Aggref_default_instance_); } -inline const ::pg_query::Aggref& Node::aggref() const { +inline const ::pg_query::Aggref& Node::aggref() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.aggref) return _internal_aggref(); } inline ::pg_query::Aggref* Node::unsafe_arena_release_aggref() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.aggref) - if (_internal_has_aggref()) { + if (node_case() == kAggref) { clear_has_node(); - ::pg_query::Aggref* temp = _impl_.node_.aggref_; + auto* temp = _impl_.node_.aggref_; _impl_.node_.aggref_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_aggref(::pg_query::Aggref* aggref) { +inline void Node::unsafe_arena_set_allocated_aggref(::pg_query::Aggref* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (aggref) { + if (value) { set_has_aggref(); - _impl_.node_.aggref_ = aggref; + _impl_.node_.aggref_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.aggref) } inline ::pg_query::Aggref* Node::_internal_mutable_aggref() { - if (!_internal_has_aggref()) { + if (node_case() != kAggref) { clear_node(); set_has_aggref(); - _impl_.node_.aggref_ = CreateMaybeMessage< ::pg_query::Aggref >(GetArenaForAllocation()); + _impl_.node_.aggref_ = CreateMaybeMessage<::pg_query::Aggref>(GetArena()); } return _impl_.node_.aggref_; } -inline ::pg_query::Aggref* Node::mutable_aggref() { +inline ::pg_query::Aggref* Node::mutable_aggref() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Aggref* _msg = _internal_mutable_aggref(); // @@protoc_insertion_point(field_mutable:pg_query.Node.aggref) return _msg; } -// .pg_query.GroupingFunc grouping_func = 7 [json_name = "GroupingFunc"]; -inline bool Node::_internal_has_grouping_func() const { +// .pg_query.GroupingFunc grouping_func = 8 [json_name = "GroupingFunc"]; +inline bool Node::has_grouping_func() const { return node_case() == kGroupingFunc; } -inline bool Node::has_grouping_func() const { - return _internal_has_grouping_func(); +inline bool Node::_internal_has_grouping_func() const { + return node_case() == kGroupingFunc; } inline void Node::set_has_grouping_func() { _impl_._oneof_case_[0] = kGroupingFunc; } inline void Node::clear_grouping_func() { - if (_internal_has_grouping_func()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kGroupingFunc) { + if (GetArena() == nullptr) { delete _impl_.node_.grouping_func_; } clear_has_node(); @@ -62077,11 +72738,11 @@ inline void Node::clear_grouping_func() { } inline ::pg_query::GroupingFunc* Node::release_grouping_func() { // @@protoc_insertion_point(field_release:pg_query.Node.grouping_func) - if (_internal_has_grouping_func()) { + if (node_case() == kGroupingFunc) { clear_has_node(); - ::pg_query::GroupingFunc* temp = _impl_.node_.grouping_func_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.grouping_func_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.grouping_func_ = nullptr; return temp; @@ -62090,60 +72751,62 @@ inline ::pg_query::GroupingFunc* Node::release_grouping_func() { } } inline const ::pg_query::GroupingFunc& Node::_internal_grouping_func() const { - return _internal_has_grouping_func() - ? *_impl_.node_.grouping_func_ - : reinterpret_cast< ::pg_query::GroupingFunc&>(::pg_query::_GroupingFunc_default_instance_); + return node_case() == kGroupingFunc ? *_impl_.node_.grouping_func_ : reinterpret_cast<::pg_query::GroupingFunc&>(::pg_query::_GroupingFunc_default_instance_); } -inline const ::pg_query::GroupingFunc& Node::grouping_func() const { +inline const ::pg_query::GroupingFunc& Node::grouping_func() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.grouping_func) return _internal_grouping_func(); } inline ::pg_query::GroupingFunc* Node::unsafe_arena_release_grouping_func() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.grouping_func) - if (_internal_has_grouping_func()) { + if (node_case() == kGroupingFunc) { clear_has_node(); - ::pg_query::GroupingFunc* temp = _impl_.node_.grouping_func_; + auto* temp = _impl_.node_.grouping_func_; _impl_.node_.grouping_func_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_grouping_func(::pg_query::GroupingFunc* grouping_func) { +inline void Node::unsafe_arena_set_allocated_grouping_func(::pg_query::GroupingFunc* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (grouping_func) { + if (value) { set_has_grouping_func(); - _impl_.node_.grouping_func_ = grouping_func; + _impl_.node_.grouping_func_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.grouping_func) } inline ::pg_query::GroupingFunc* Node::_internal_mutable_grouping_func() { - if (!_internal_has_grouping_func()) { + if (node_case() != kGroupingFunc) { clear_node(); set_has_grouping_func(); - _impl_.node_.grouping_func_ = CreateMaybeMessage< ::pg_query::GroupingFunc >(GetArenaForAllocation()); + _impl_.node_.grouping_func_ = CreateMaybeMessage<::pg_query::GroupingFunc>(GetArena()); } return _impl_.node_.grouping_func_; } -inline ::pg_query::GroupingFunc* Node::mutable_grouping_func() { +inline ::pg_query::GroupingFunc* Node::mutable_grouping_func() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::GroupingFunc* _msg = _internal_mutable_grouping_func(); // @@protoc_insertion_point(field_mutable:pg_query.Node.grouping_func) return _msg; } -// .pg_query.WindowFunc window_func = 8 [json_name = "WindowFunc"]; -inline bool Node::_internal_has_window_func() const { +// .pg_query.WindowFunc window_func = 9 [json_name = "WindowFunc"]; +inline bool Node::has_window_func() const { return node_case() == kWindowFunc; } -inline bool Node::has_window_func() const { - return _internal_has_window_func(); +inline bool Node::_internal_has_window_func() const { + return node_case() == kWindowFunc; } inline void Node::set_has_window_func() { _impl_._oneof_case_[0] = kWindowFunc; } inline void Node::clear_window_func() { - if (_internal_has_window_func()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kWindowFunc) { + if (GetArena() == nullptr) { delete _impl_.node_.window_func_; } clear_has_node(); @@ -62151,11 +72814,11 @@ inline void Node::clear_window_func() { } inline ::pg_query::WindowFunc* Node::release_window_func() { // @@protoc_insertion_point(field_release:pg_query.Node.window_func) - if (_internal_has_window_func()) { + if (node_case() == kWindowFunc) { clear_has_node(); - ::pg_query::WindowFunc* temp = _impl_.node_.window_func_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.window_func_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.window_func_ = nullptr; return temp; @@ -62164,60 +72827,62 @@ inline ::pg_query::WindowFunc* Node::release_window_func() { } } inline const ::pg_query::WindowFunc& Node::_internal_window_func() const { - return _internal_has_window_func() - ? *_impl_.node_.window_func_ - : reinterpret_cast< ::pg_query::WindowFunc&>(::pg_query::_WindowFunc_default_instance_); + return node_case() == kWindowFunc ? *_impl_.node_.window_func_ : reinterpret_cast<::pg_query::WindowFunc&>(::pg_query::_WindowFunc_default_instance_); } -inline const ::pg_query::WindowFunc& Node::window_func() const { +inline const ::pg_query::WindowFunc& Node::window_func() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.window_func) return _internal_window_func(); } inline ::pg_query::WindowFunc* Node::unsafe_arena_release_window_func() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.window_func) - if (_internal_has_window_func()) { + if (node_case() == kWindowFunc) { clear_has_node(); - ::pg_query::WindowFunc* temp = _impl_.node_.window_func_; + auto* temp = _impl_.node_.window_func_; _impl_.node_.window_func_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_window_func(::pg_query::WindowFunc* window_func) { +inline void Node::unsafe_arena_set_allocated_window_func(::pg_query::WindowFunc* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (window_func) { + if (value) { set_has_window_func(); - _impl_.node_.window_func_ = window_func; + _impl_.node_.window_func_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.window_func) } inline ::pg_query::WindowFunc* Node::_internal_mutable_window_func() { - if (!_internal_has_window_func()) { + if (node_case() != kWindowFunc) { clear_node(); set_has_window_func(); - _impl_.node_.window_func_ = CreateMaybeMessage< ::pg_query::WindowFunc >(GetArenaForAllocation()); + _impl_.node_.window_func_ = CreateMaybeMessage<::pg_query::WindowFunc>(GetArena()); } return _impl_.node_.window_func_; } -inline ::pg_query::WindowFunc* Node::mutable_window_func() { +inline ::pg_query::WindowFunc* Node::mutable_window_func() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::WindowFunc* _msg = _internal_mutable_window_func(); // @@protoc_insertion_point(field_mutable:pg_query.Node.window_func) return _msg; } -// .pg_query.SubscriptingRef subscripting_ref = 9 [json_name = "SubscriptingRef"]; -inline bool Node::_internal_has_subscripting_ref() const { +// .pg_query.SubscriptingRef subscripting_ref = 10 [json_name = "SubscriptingRef"]; +inline bool Node::has_subscripting_ref() const { return node_case() == kSubscriptingRef; } -inline bool Node::has_subscripting_ref() const { - return _internal_has_subscripting_ref(); +inline bool Node::_internal_has_subscripting_ref() const { + return node_case() == kSubscriptingRef; } inline void Node::set_has_subscripting_ref() { _impl_._oneof_case_[0] = kSubscriptingRef; } inline void Node::clear_subscripting_ref() { - if (_internal_has_subscripting_ref()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSubscriptingRef) { + if (GetArena() == nullptr) { delete _impl_.node_.subscripting_ref_; } clear_has_node(); @@ -62225,11 +72890,11 @@ inline void Node::clear_subscripting_ref() { } inline ::pg_query::SubscriptingRef* Node::release_subscripting_ref() { // @@protoc_insertion_point(field_release:pg_query.Node.subscripting_ref) - if (_internal_has_subscripting_ref()) { + if (node_case() == kSubscriptingRef) { clear_has_node(); - ::pg_query::SubscriptingRef* temp = _impl_.node_.subscripting_ref_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.subscripting_ref_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.subscripting_ref_ = nullptr; return temp; @@ -62238,60 +72903,62 @@ inline ::pg_query::SubscriptingRef* Node::release_subscripting_ref() { } } inline const ::pg_query::SubscriptingRef& Node::_internal_subscripting_ref() const { - return _internal_has_subscripting_ref() - ? *_impl_.node_.subscripting_ref_ - : reinterpret_cast< ::pg_query::SubscriptingRef&>(::pg_query::_SubscriptingRef_default_instance_); + return node_case() == kSubscriptingRef ? *_impl_.node_.subscripting_ref_ : reinterpret_cast<::pg_query::SubscriptingRef&>(::pg_query::_SubscriptingRef_default_instance_); } -inline const ::pg_query::SubscriptingRef& Node::subscripting_ref() const { +inline const ::pg_query::SubscriptingRef& Node::subscripting_ref() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.subscripting_ref) return _internal_subscripting_ref(); } inline ::pg_query::SubscriptingRef* Node::unsafe_arena_release_subscripting_ref() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.subscripting_ref) - if (_internal_has_subscripting_ref()) { + if (node_case() == kSubscriptingRef) { clear_has_node(); - ::pg_query::SubscriptingRef* temp = _impl_.node_.subscripting_ref_; + auto* temp = _impl_.node_.subscripting_ref_; _impl_.node_.subscripting_ref_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_subscripting_ref(::pg_query::SubscriptingRef* subscripting_ref) { +inline void Node::unsafe_arena_set_allocated_subscripting_ref(::pg_query::SubscriptingRef* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (subscripting_ref) { + if (value) { set_has_subscripting_ref(); - _impl_.node_.subscripting_ref_ = subscripting_ref; + _impl_.node_.subscripting_ref_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.subscripting_ref) } inline ::pg_query::SubscriptingRef* Node::_internal_mutable_subscripting_ref() { - if (!_internal_has_subscripting_ref()) { + if (node_case() != kSubscriptingRef) { clear_node(); set_has_subscripting_ref(); - _impl_.node_.subscripting_ref_ = CreateMaybeMessage< ::pg_query::SubscriptingRef >(GetArenaForAllocation()); + _impl_.node_.subscripting_ref_ = CreateMaybeMessage<::pg_query::SubscriptingRef>(GetArena()); } return _impl_.node_.subscripting_ref_; } -inline ::pg_query::SubscriptingRef* Node::mutable_subscripting_ref() { +inline ::pg_query::SubscriptingRef* Node::mutable_subscripting_ref() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::SubscriptingRef* _msg = _internal_mutable_subscripting_ref(); // @@protoc_insertion_point(field_mutable:pg_query.Node.subscripting_ref) return _msg; } -// .pg_query.FuncExpr func_expr = 10 [json_name = "FuncExpr"]; -inline bool Node::_internal_has_func_expr() const { +// .pg_query.FuncExpr func_expr = 11 [json_name = "FuncExpr"]; +inline bool Node::has_func_expr() const { return node_case() == kFuncExpr; } -inline bool Node::has_func_expr() const { - return _internal_has_func_expr(); +inline bool Node::_internal_has_func_expr() const { + return node_case() == kFuncExpr; } inline void Node::set_has_func_expr() { _impl_._oneof_case_[0] = kFuncExpr; } inline void Node::clear_func_expr() { - if (_internal_has_func_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kFuncExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.func_expr_; } clear_has_node(); @@ -62299,11 +72966,11 @@ inline void Node::clear_func_expr() { } inline ::pg_query::FuncExpr* Node::release_func_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.func_expr) - if (_internal_has_func_expr()) { + if (node_case() == kFuncExpr) { clear_has_node(); - ::pg_query::FuncExpr* temp = _impl_.node_.func_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.func_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.func_expr_ = nullptr; return temp; @@ -62312,60 +72979,62 @@ inline ::pg_query::FuncExpr* Node::release_func_expr() { } } inline const ::pg_query::FuncExpr& Node::_internal_func_expr() const { - return _internal_has_func_expr() - ? *_impl_.node_.func_expr_ - : reinterpret_cast< ::pg_query::FuncExpr&>(::pg_query::_FuncExpr_default_instance_); + return node_case() == kFuncExpr ? *_impl_.node_.func_expr_ : reinterpret_cast<::pg_query::FuncExpr&>(::pg_query::_FuncExpr_default_instance_); } -inline const ::pg_query::FuncExpr& Node::func_expr() const { +inline const ::pg_query::FuncExpr& Node::func_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.func_expr) return _internal_func_expr(); } inline ::pg_query::FuncExpr* Node::unsafe_arena_release_func_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.func_expr) - if (_internal_has_func_expr()) { + if (node_case() == kFuncExpr) { clear_has_node(); - ::pg_query::FuncExpr* temp = _impl_.node_.func_expr_; + auto* temp = _impl_.node_.func_expr_; _impl_.node_.func_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_func_expr(::pg_query::FuncExpr* func_expr) { +inline void Node::unsafe_arena_set_allocated_func_expr(::pg_query::FuncExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (func_expr) { + if (value) { set_has_func_expr(); - _impl_.node_.func_expr_ = func_expr; + _impl_.node_.func_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.func_expr) } inline ::pg_query::FuncExpr* Node::_internal_mutable_func_expr() { - if (!_internal_has_func_expr()) { + if (node_case() != kFuncExpr) { clear_node(); set_has_func_expr(); - _impl_.node_.func_expr_ = CreateMaybeMessage< ::pg_query::FuncExpr >(GetArenaForAllocation()); + _impl_.node_.func_expr_ = CreateMaybeMessage<::pg_query::FuncExpr>(GetArena()); } return _impl_.node_.func_expr_; } -inline ::pg_query::FuncExpr* Node::mutable_func_expr() { +inline ::pg_query::FuncExpr* Node::mutable_func_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::FuncExpr* _msg = _internal_mutable_func_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.func_expr) return _msg; } -// .pg_query.NamedArgExpr named_arg_expr = 11 [json_name = "NamedArgExpr"]; -inline bool Node::_internal_has_named_arg_expr() const { +// .pg_query.NamedArgExpr named_arg_expr = 12 [json_name = "NamedArgExpr"]; +inline bool Node::has_named_arg_expr() const { return node_case() == kNamedArgExpr; } -inline bool Node::has_named_arg_expr() const { - return _internal_has_named_arg_expr(); +inline bool Node::_internal_has_named_arg_expr() const { + return node_case() == kNamedArgExpr; } inline void Node::set_has_named_arg_expr() { _impl_._oneof_case_[0] = kNamedArgExpr; } inline void Node::clear_named_arg_expr() { - if (_internal_has_named_arg_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kNamedArgExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.named_arg_expr_; } clear_has_node(); @@ -62373,11 +73042,11 @@ inline void Node::clear_named_arg_expr() { } inline ::pg_query::NamedArgExpr* Node::release_named_arg_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.named_arg_expr) - if (_internal_has_named_arg_expr()) { + if (node_case() == kNamedArgExpr) { clear_has_node(); - ::pg_query::NamedArgExpr* temp = _impl_.node_.named_arg_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.named_arg_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.named_arg_expr_ = nullptr; return temp; @@ -62386,60 +73055,62 @@ inline ::pg_query::NamedArgExpr* Node::release_named_arg_expr() { } } inline const ::pg_query::NamedArgExpr& Node::_internal_named_arg_expr() const { - return _internal_has_named_arg_expr() - ? *_impl_.node_.named_arg_expr_ - : reinterpret_cast< ::pg_query::NamedArgExpr&>(::pg_query::_NamedArgExpr_default_instance_); + return node_case() == kNamedArgExpr ? *_impl_.node_.named_arg_expr_ : reinterpret_cast<::pg_query::NamedArgExpr&>(::pg_query::_NamedArgExpr_default_instance_); } -inline const ::pg_query::NamedArgExpr& Node::named_arg_expr() const { +inline const ::pg_query::NamedArgExpr& Node::named_arg_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.named_arg_expr) return _internal_named_arg_expr(); } inline ::pg_query::NamedArgExpr* Node::unsafe_arena_release_named_arg_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.named_arg_expr) - if (_internal_has_named_arg_expr()) { + if (node_case() == kNamedArgExpr) { clear_has_node(); - ::pg_query::NamedArgExpr* temp = _impl_.node_.named_arg_expr_; + auto* temp = _impl_.node_.named_arg_expr_; _impl_.node_.named_arg_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_named_arg_expr(::pg_query::NamedArgExpr* named_arg_expr) { +inline void Node::unsafe_arena_set_allocated_named_arg_expr(::pg_query::NamedArgExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (named_arg_expr) { + if (value) { set_has_named_arg_expr(); - _impl_.node_.named_arg_expr_ = named_arg_expr; + _impl_.node_.named_arg_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.named_arg_expr) } inline ::pg_query::NamedArgExpr* Node::_internal_mutable_named_arg_expr() { - if (!_internal_has_named_arg_expr()) { + if (node_case() != kNamedArgExpr) { clear_node(); set_has_named_arg_expr(); - _impl_.node_.named_arg_expr_ = CreateMaybeMessage< ::pg_query::NamedArgExpr >(GetArenaForAllocation()); + _impl_.node_.named_arg_expr_ = CreateMaybeMessage<::pg_query::NamedArgExpr>(GetArena()); } return _impl_.node_.named_arg_expr_; } -inline ::pg_query::NamedArgExpr* Node::mutable_named_arg_expr() { +inline ::pg_query::NamedArgExpr* Node::mutable_named_arg_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::NamedArgExpr* _msg = _internal_mutable_named_arg_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.named_arg_expr) return _msg; } -// .pg_query.OpExpr op_expr = 12 [json_name = "OpExpr"]; -inline bool Node::_internal_has_op_expr() const { +// .pg_query.OpExpr op_expr = 13 [json_name = "OpExpr"]; +inline bool Node::has_op_expr() const { return node_case() == kOpExpr; } -inline bool Node::has_op_expr() const { - return _internal_has_op_expr(); +inline bool Node::_internal_has_op_expr() const { + return node_case() == kOpExpr; } inline void Node::set_has_op_expr() { _impl_._oneof_case_[0] = kOpExpr; } inline void Node::clear_op_expr() { - if (_internal_has_op_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kOpExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.op_expr_; } clear_has_node(); @@ -62447,11 +73118,11 @@ inline void Node::clear_op_expr() { } inline ::pg_query::OpExpr* Node::release_op_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.op_expr) - if (_internal_has_op_expr()) { + if (node_case() == kOpExpr) { clear_has_node(); - ::pg_query::OpExpr* temp = _impl_.node_.op_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.op_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.op_expr_ = nullptr; return temp; @@ -62460,60 +73131,62 @@ inline ::pg_query::OpExpr* Node::release_op_expr() { } } inline const ::pg_query::OpExpr& Node::_internal_op_expr() const { - return _internal_has_op_expr() - ? *_impl_.node_.op_expr_ - : reinterpret_cast< ::pg_query::OpExpr&>(::pg_query::_OpExpr_default_instance_); + return node_case() == kOpExpr ? *_impl_.node_.op_expr_ : reinterpret_cast<::pg_query::OpExpr&>(::pg_query::_OpExpr_default_instance_); } -inline const ::pg_query::OpExpr& Node::op_expr() const { +inline const ::pg_query::OpExpr& Node::op_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.op_expr) return _internal_op_expr(); } inline ::pg_query::OpExpr* Node::unsafe_arena_release_op_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.op_expr) - if (_internal_has_op_expr()) { + if (node_case() == kOpExpr) { clear_has_node(); - ::pg_query::OpExpr* temp = _impl_.node_.op_expr_; + auto* temp = _impl_.node_.op_expr_; _impl_.node_.op_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_op_expr(::pg_query::OpExpr* op_expr) { +inline void Node::unsafe_arena_set_allocated_op_expr(::pg_query::OpExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (op_expr) { + if (value) { set_has_op_expr(); - _impl_.node_.op_expr_ = op_expr; + _impl_.node_.op_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.op_expr) } inline ::pg_query::OpExpr* Node::_internal_mutable_op_expr() { - if (!_internal_has_op_expr()) { + if (node_case() != kOpExpr) { clear_node(); set_has_op_expr(); - _impl_.node_.op_expr_ = CreateMaybeMessage< ::pg_query::OpExpr >(GetArenaForAllocation()); + _impl_.node_.op_expr_ = CreateMaybeMessage<::pg_query::OpExpr>(GetArena()); } return _impl_.node_.op_expr_; } -inline ::pg_query::OpExpr* Node::mutable_op_expr() { +inline ::pg_query::OpExpr* Node::mutable_op_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::OpExpr* _msg = _internal_mutable_op_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.op_expr) return _msg; } -// .pg_query.DistinctExpr distinct_expr = 13 [json_name = "DistinctExpr"]; -inline bool Node::_internal_has_distinct_expr() const { +// .pg_query.DistinctExpr distinct_expr = 14 [json_name = "DistinctExpr"]; +inline bool Node::has_distinct_expr() const { return node_case() == kDistinctExpr; } -inline bool Node::has_distinct_expr() const { - return _internal_has_distinct_expr(); +inline bool Node::_internal_has_distinct_expr() const { + return node_case() == kDistinctExpr; } inline void Node::set_has_distinct_expr() { _impl_._oneof_case_[0] = kDistinctExpr; } inline void Node::clear_distinct_expr() { - if (_internal_has_distinct_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDistinctExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.distinct_expr_; } clear_has_node(); @@ -62521,11 +73194,11 @@ inline void Node::clear_distinct_expr() { } inline ::pg_query::DistinctExpr* Node::release_distinct_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.distinct_expr) - if (_internal_has_distinct_expr()) { + if (node_case() == kDistinctExpr) { clear_has_node(); - ::pg_query::DistinctExpr* temp = _impl_.node_.distinct_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.distinct_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.distinct_expr_ = nullptr; return temp; @@ -62534,60 +73207,62 @@ inline ::pg_query::DistinctExpr* Node::release_distinct_expr() { } } inline const ::pg_query::DistinctExpr& Node::_internal_distinct_expr() const { - return _internal_has_distinct_expr() - ? *_impl_.node_.distinct_expr_ - : reinterpret_cast< ::pg_query::DistinctExpr&>(::pg_query::_DistinctExpr_default_instance_); + return node_case() == kDistinctExpr ? *_impl_.node_.distinct_expr_ : reinterpret_cast<::pg_query::DistinctExpr&>(::pg_query::_DistinctExpr_default_instance_); } -inline const ::pg_query::DistinctExpr& Node::distinct_expr() const { +inline const ::pg_query::DistinctExpr& Node::distinct_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.distinct_expr) return _internal_distinct_expr(); } inline ::pg_query::DistinctExpr* Node::unsafe_arena_release_distinct_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.distinct_expr) - if (_internal_has_distinct_expr()) { + if (node_case() == kDistinctExpr) { clear_has_node(); - ::pg_query::DistinctExpr* temp = _impl_.node_.distinct_expr_; + auto* temp = _impl_.node_.distinct_expr_; _impl_.node_.distinct_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_distinct_expr(::pg_query::DistinctExpr* distinct_expr) { +inline void Node::unsafe_arena_set_allocated_distinct_expr(::pg_query::DistinctExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (distinct_expr) { + if (value) { set_has_distinct_expr(); - _impl_.node_.distinct_expr_ = distinct_expr; + _impl_.node_.distinct_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.distinct_expr) } inline ::pg_query::DistinctExpr* Node::_internal_mutable_distinct_expr() { - if (!_internal_has_distinct_expr()) { + if (node_case() != kDistinctExpr) { clear_node(); set_has_distinct_expr(); - _impl_.node_.distinct_expr_ = CreateMaybeMessage< ::pg_query::DistinctExpr >(GetArenaForAllocation()); + _impl_.node_.distinct_expr_ = CreateMaybeMessage<::pg_query::DistinctExpr>(GetArena()); } return _impl_.node_.distinct_expr_; } -inline ::pg_query::DistinctExpr* Node::mutable_distinct_expr() { +inline ::pg_query::DistinctExpr* Node::mutable_distinct_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::DistinctExpr* _msg = _internal_mutable_distinct_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.distinct_expr) return _msg; } -// .pg_query.NullIfExpr null_if_expr = 14 [json_name = "NullIfExpr"]; -inline bool Node::_internal_has_null_if_expr() const { +// .pg_query.NullIfExpr null_if_expr = 15 [json_name = "NullIfExpr"]; +inline bool Node::has_null_if_expr() const { return node_case() == kNullIfExpr; } -inline bool Node::has_null_if_expr() const { - return _internal_has_null_if_expr(); +inline bool Node::_internal_has_null_if_expr() const { + return node_case() == kNullIfExpr; } inline void Node::set_has_null_if_expr() { _impl_._oneof_case_[0] = kNullIfExpr; } inline void Node::clear_null_if_expr() { - if (_internal_has_null_if_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kNullIfExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.null_if_expr_; } clear_has_node(); @@ -62595,11 +73270,11 @@ inline void Node::clear_null_if_expr() { } inline ::pg_query::NullIfExpr* Node::release_null_if_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.null_if_expr) - if (_internal_has_null_if_expr()) { + if (node_case() == kNullIfExpr) { clear_has_node(); - ::pg_query::NullIfExpr* temp = _impl_.node_.null_if_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.null_if_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.null_if_expr_ = nullptr; return temp; @@ -62608,60 +73283,62 @@ inline ::pg_query::NullIfExpr* Node::release_null_if_expr() { } } inline const ::pg_query::NullIfExpr& Node::_internal_null_if_expr() const { - return _internal_has_null_if_expr() - ? *_impl_.node_.null_if_expr_ - : reinterpret_cast< ::pg_query::NullIfExpr&>(::pg_query::_NullIfExpr_default_instance_); + return node_case() == kNullIfExpr ? *_impl_.node_.null_if_expr_ : reinterpret_cast<::pg_query::NullIfExpr&>(::pg_query::_NullIfExpr_default_instance_); } -inline const ::pg_query::NullIfExpr& Node::null_if_expr() const { +inline const ::pg_query::NullIfExpr& Node::null_if_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.null_if_expr) return _internal_null_if_expr(); } inline ::pg_query::NullIfExpr* Node::unsafe_arena_release_null_if_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.null_if_expr) - if (_internal_has_null_if_expr()) { + if (node_case() == kNullIfExpr) { clear_has_node(); - ::pg_query::NullIfExpr* temp = _impl_.node_.null_if_expr_; + auto* temp = _impl_.node_.null_if_expr_; _impl_.node_.null_if_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_null_if_expr(::pg_query::NullIfExpr* null_if_expr) { +inline void Node::unsafe_arena_set_allocated_null_if_expr(::pg_query::NullIfExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (null_if_expr) { + if (value) { set_has_null_if_expr(); - _impl_.node_.null_if_expr_ = null_if_expr; + _impl_.node_.null_if_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.null_if_expr) } inline ::pg_query::NullIfExpr* Node::_internal_mutable_null_if_expr() { - if (!_internal_has_null_if_expr()) { + if (node_case() != kNullIfExpr) { clear_node(); set_has_null_if_expr(); - _impl_.node_.null_if_expr_ = CreateMaybeMessage< ::pg_query::NullIfExpr >(GetArenaForAllocation()); + _impl_.node_.null_if_expr_ = CreateMaybeMessage<::pg_query::NullIfExpr>(GetArena()); } return _impl_.node_.null_if_expr_; } -inline ::pg_query::NullIfExpr* Node::mutable_null_if_expr() { +inline ::pg_query::NullIfExpr* Node::mutable_null_if_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::NullIfExpr* _msg = _internal_mutable_null_if_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.null_if_expr) return _msg; } -// .pg_query.ScalarArrayOpExpr scalar_array_op_expr = 15 [json_name = "ScalarArrayOpExpr"]; -inline bool Node::_internal_has_scalar_array_op_expr() const { +// .pg_query.ScalarArrayOpExpr scalar_array_op_expr = 16 [json_name = "ScalarArrayOpExpr"]; +inline bool Node::has_scalar_array_op_expr() const { return node_case() == kScalarArrayOpExpr; } -inline bool Node::has_scalar_array_op_expr() const { - return _internal_has_scalar_array_op_expr(); +inline bool Node::_internal_has_scalar_array_op_expr() const { + return node_case() == kScalarArrayOpExpr; } inline void Node::set_has_scalar_array_op_expr() { _impl_._oneof_case_[0] = kScalarArrayOpExpr; } inline void Node::clear_scalar_array_op_expr() { - if (_internal_has_scalar_array_op_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kScalarArrayOpExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.scalar_array_op_expr_; } clear_has_node(); @@ -62669,11 +73346,11 @@ inline void Node::clear_scalar_array_op_expr() { } inline ::pg_query::ScalarArrayOpExpr* Node::release_scalar_array_op_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.scalar_array_op_expr) - if (_internal_has_scalar_array_op_expr()) { + if (node_case() == kScalarArrayOpExpr) { clear_has_node(); - ::pg_query::ScalarArrayOpExpr* temp = _impl_.node_.scalar_array_op_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.scalar_array_op_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.scalar_array_op_expr_ = nullptr; return temp; @@ -62682,60 +73359,62 @@ inline ::pg_query::ScalarArrayOpExpr* Node::release_scalar_array_op_expr() { } } inline const ::pg_query::ScalarArrayOpExpr& Node::_internal_scalar_array_op_expr() const { - return _internal_has_scalar_array_op_expr() - ? *_impl_.node_.scalar_array_op_expr_ - : reinterpret_cast< ::pg_query::ScalarArrayOpExpr&>(::pg_query::_ScalarArrayOpExpr_default_instance_); + return node_case() == kScalarArrayOpExpr ? *_impl_.node_.scalar_array_op_expr_ : reinterpret_cast<::pg_query::ScalarArrayOpExpr&>(::pg_query::_ScalarArrayOpExpr_default_instance_); } -inline const ::pg_query::ScalarArrayOpExpr& Node::scalar_array_op_expr() const { +inline const ::pg_query::ScalarArrayOpExpr& Node::scalar_array_op_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.scalar_array_op_expr) return _internal_scalar_array_op_expr(); } inline ::pg_query::ScalarArrayOpExpr* Node::unsafe_arena_release_scalar_array_op_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.scalar_array_op_expr) - if (_internal_has_scalar_array_op_expr()) { + if (node_case() == kScalarArrayOpExpr) { clear_has_node(); - ::pg_query::ScalarArrayOpExpr* temp = _impl_.node_.scalar_array_op_expr_; + auto* temp = _impl_.node_.scalar_array_op_expr_; _impl_.node_.scalar_array_op_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_scalar_array_op_expr(::pg_query::ScalarArrayOpExpr* scalar_array_op_expr) { +inline void Node::unsafe_arena_set_allocated_scalar_array_op_expr(::pg_query::ScalarArrayOpExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (scalar_array_op_expr) { + if (value) { set_has_scalar_array_op_expr(); - _impl_.node_.scalar_array_op_expr_ = scalar_array_op_expr; + _impl_.node_.scalar_array_op_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.scalar_array_op_expr) } inline ::pg_query::ScalarArrayOpExpr* Node::_internal_mutable_scalar_array_op_expr() { - if (!_internal_has_scalar_array_op_expr()) { + if (node_case() != kScalarArrayOpExpr) { clear_node(); set_has_scalar_array_op_expr(); - _impl_.node_.scalar_array_op_expr_ = CreateMaybeMessage< ::pg_query::ScalarArrayOpExpr >(GetArenaForAllocation()); + _impl_.node_.scalar_array_op_expr_ = CreateMaybeMessage<::pg_query::ScalarArrayOpExpr>(GetArena()); } return _impl_.node_.scalar_array_op_expr_; } -inline ::pg_query::ScalarArrayOpExpr* Node::mutable_scalar_array_op_expr() { +inline ::pg_query::ScalarArrayOpExpr* Node::mutable_scalar_array_op_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::ScalarArrayOpExpr* _msg = _internal_mutable_scalar_array_op_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.scalar_array_op_expr) return _msg; } -// .pg_query.BoolExpr bool_expr = 16 [json_name = "BoolExpr"]; -inline bool Node::_internal_has_bool_expr() const { +// .pg_query.BoolExpr bool_expr = 17 [json_name = "BoolExpr"]; +inline bool Node::has_bool_expr() const { return node_case() == kBoolExpr; } -inline bool Node::has_bool_expr() const { - return _internal_has_bool_expr(); +inline bool Node::_internal_has_bool_expr() const { + return node_case() == kBoolExpr; } inline void Node::set_has_bool_expr() { _impl_._oneof_case_[0] = kBoolExpr; } inline void Node::clear_bool_expr() { - if (_internal_has_bool_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kBoolExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.bool_expr_; } clear_has_node(); @@ -62743,11 +73422,11 @@ inline void Node::clear_bool_expr() { } inline ::pg_query::BoolExpr* Node::release_bool_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.bool_expr) - if (_internal_has_bool_expr()) { + if (node_case() == kBoolExpr) { clear_has_node(); - ::pg_query::BoolExpr* temp = _impl_.node_.bool_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.bool_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.bool_expr_ = nullptr; return temp; @@ -62756,60 +73435,62 @@ inline ::pg_query::BoolExpr* Node::release_bool_expr() { } } inline const ::pg_query::BoolExpr& Node::_internal_bool_expr() const { - return _internal_has_bool_expr() - ? *_impl_.node_.bool_expr_ - : reinterpret_cast< ::pg_query::BoolExpr&>(::pg_query::_BoolExpr_default_instance_); + return node_case() == kBoolExpr ? *_impl_.node_.bool_expr_ : reinterpret_cast<::pg_query::BoolExpr&>(::pg_query::_BoolExpr_default_instance_); } -inline const ::pg_query::BoolExpr& Node::bool_expr() const { +inline const ::pg_query::BoolExpr& Node::bool_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.bool_expr) return _internal_bool_expr(); } inline ::pg_query::BoolExpr* Node::unsafe_arena_release_bool_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.bool_expr) - if (_internal_has_bool_expr()) { + if (node_case() == kBoolExpr) { clear_has_node(); - ::pg_query::BoolExpr* temp = _impl_.node_.bool_expr_; + auto* temp = _impl_.node_.bool_expr_; _impl_.node_.bool_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_bool_expr(::pg_query::BoolExpr* bool_expr) { +inline void Node::unsafe_arena_set_allocated_bool_expr(::pg_query::BoolExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (bool_expr) { + if (value) { set_has_bool_expr(); - _impl_.node_.bool_expr_ = bool_expr; + _impl_.node_.bool_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.bool_expr) } inline ::pg_query::BoolExpr* Node::_internal_mutable_bool_expr() { - if (!_internal_has_bool_expr()) { + if (node_case() != kBoolExpr) { clear_node(); set_has_bool_expr(); - _impl_.node_.bool_expr_ = CreateMaybeMessage< ::pg_query::BoolExpr >(GetArenaForAllocation()); + _impl_.node_.bool_expr_ = CreateMaybeMessage<::pg_query::BoolExpr>(GetArena()); } return _impl_.node_.bool_expr_; } -inline ::pg_query::BoolExpr* Node::mutable_bool_expr() { +inline ::pg_query::BoolExpr* Node::mutable_bool_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::BoolExpr* _msg = _internal_mutable_bool_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.bool_expr) return _msg; } -// .pg_query.SubLink sub_link = 17 [json_name = "SubLink"]; -inline bool Node::_internal_has_sub_link() const { +// .pg_query.SubLink sub_link = 18 [json_name = "SubLink"]; +inline bool Node::has_sub_link() const { return node_case() == kSubLink; } -inline bool Node::has_sub_link() const { - return _internal_has_sub_link(); +inline bool Node::_internal_has_sub_link() const { + return node_case() == kSubLink; } inline void Node::set_has_sub_link() { _impl_._oneof_case_[0] = kSubLink; } inline void Node::clear_sub_link() { - if (_internal_has_sub_link()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSubLink) { + if (GetArena() == nullptr) { delete _impl_.node_.sub_link_; } clear_has_node(); @@ -62817,11 +73498,11 @@ inline void Node::clear_sub_link() { } inline ::pg_query::SubLink* Node::release_sub_link() { // @@protoc_insertion_point(field_release:pg_query.Node.sub_link) - if (_internal_has_sub_link()) { + if (node_case() == kSubLink) { clear_has_node(); - ::pg_query::SubLink* temp = _impl_.node_.sub_link_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.sub_link_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.sub_link_ = nullptr; return temp; @@ -62830,60 +73511,62 @@ inline ::pg_query::SubLink* Node::release_sub_link() { } } inline const ::pg_query::SubLink& Node::_internal_sub_link() const { - return _internal_has_sub_link() - ? *_impl_.node_.sub_link_ - : reinterpret_cast< ::pg_query::SubLink&>(::pg_query::_SubLink_default_instance_); + return node_case() == kSubLink ? *_impl_.node_.sub_link_ : reinterpret_cast<::pg_query::SubLink&>(::pg_query::_SubLink_default_instance_); } -inline const ::pg_query::SubLink& Node::sub_link() const { +inline const ::pg_query::SubLink& Node::sub_link() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.sub_link) return _internal_sub_link(); } inline ::pg_query::SubLink* Node::unsafe_arena_release_sub_link() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.sub_link) - if (_internal_has_sub_link()) { + if (node_case() == kSubLink) { clear_has_node(); - ::pg_query::SubLink* temp = _impl_.node_.sub_link_; + auto* temp = _impl_.node_.sub_link_; _impl_.node_.sub_link_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_sub_link(::pg_query::SubLink* sub_link) { +inline void Node::unsafe_arena_set_allocated_sub_link(::pg_query::SubLink* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (sub_link) { + if (value) { set_has_sub_link(); - _impl_.node_.sub_link_ = sub_link; + _impl_.node_.sub_link_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.sub_link) } inline ::pg_query::SubLink* Node::_internal_mutable_sub_link() { - if (!_internal_has_sub_link()) { + if (node_case() != kSubLink) { clear_node(); set_has_sub_link(); - _impl_.node_.sub_link_ = CreateMaybeMessage< ::pg_query::SubLink >(GetArenaForAllocation()); + _impl_.node_.sub_link_ = CreateMaybeMessage<::pg_query::SubLink>(GetArena()); } return _impl_.node_.sub_link_; } -inline ::pg_query::SubLink* Node::mutable_sub_link() { +inline ::pg_query::SubLink* Node::mutable_sub_link() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::SubLink* _msg = _internal_mutable_sub_link(); // @@protoc_insertion_point(field_mutable:pg_query.Node.sub_link) return _msg; } -// .pg_query.SubPlan sub_plan = 18 [json_name = "SubPlan"]; -inline bool Node::_internal_has_sub_plan() const { +// .pg_query.SubPlan sub_plan = 19 [json_name = "SubPlan"]; +inline bool Node::has_sub_plan() const { return node_case() == kSubPlan; } -inline bool Node::has_sub_plan() const { - return _internal_has_sub_plan(); +inline bool Node::_internal_has_sub_plan() const { + return node_case() == kSubPlan; } inline void Node::set_has_sub_plan() { _impl_._oneof_case_[0] = kSubPlan; } inline void Node::clear_sub_plan() { - if (_internal_has_sub_plan()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSubPlan) { + if (GetArena() == nullptr) { delete _impl_.node_.sub_plan_; } clear_has_node(); @@ -62891,11 +73574,11 @@ inline void Node::clear_sub_plan() { } inline ::pg_query::SubPlan* Node::release_sub_plan() { // @@protoc_insertion_point(field_release:pg_query.Node.sub_plan) - if (_internal_has_sub_plan()) { + if (node_case() == kSubPlan) { clear_has_node(); - ::pg_query::SubPlan* temp = _impl_.node_.sub_plan_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.sub_plan_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.sub_plan_ = nullptr; return temp; @@ -62904,60 +73587,62 @@ inline ::pg_query::SubPlan* Node::release_sub_plan() { } } inline const ::pg_query::SubPlan& Node::_internal_sub_plan() const { - return _internal_has_sub_plan() - ? *_impl_.node_.sub_plan_ - : reinterpret_cast< ::pg_query::SubPlan&>(::pg_query::_SubPlan_default_instance_); + return node_case() == kSubPlan ? *_impl_.node_.sub_plan_ : reinterpret_cast<::pg_query::SubPlan&>(::pg_query::_SubPlan_default_instance_); } -inline const ::pg_query::SubPlan& Node::sub_plan() const { +inline const ::pg_query::SubPlan& Node::sub_plan() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.sub_plan) return _internal_sub_plan(); } inline ::pg_query::SubPlan* Node::unsafe_arena_release_sub_plan() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.sub_plan) - if (_internal_has_sub_plan()) { + if (node_case() == kSubPlan) { clear_has_node(); - ::pg_query::SubPlan* temp = _impl_.node_.sub_plan_; + auto* temp = _impl_.node_.sub_plan_; _impl_.node_.sub_plan_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_sub_plan(::pg_query::SubPlan* sub_plan) { +inline void Node::unsafe_arena_set_allocated_sub_plan(::pg_query::SubPlan* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (sub_plan) { + if (value) { set_has_sub_plan(); - _impl_.node_.sub_plan_ = sub_plan; + _impl_.node_.sub_plan_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.sub_plan) } inline ::pg_query::SubPlan* Node::_internal_mutable_sub_plan() { - if (!_internal_has_sub_plan()) { + if (node_case() != kSubPlan) { clear_node(); set_has_sub_plan(); - _impl_.node_.sub_plan_ = CreateMaybeMessage< ::pg_query::SubPlan >(GetArenaForAllocation()); + _impl_.node_.sub_plan_ = CreateMaybeMessage<::pg_query::SubPlan>(GetArena()); } return _impl_.node_.sub_plan_; } -inline ::pg_query::SubPlan* Node::mutable_sub_plan() { +inline ::pg_query::SubPlan* Node::mutable_sub_plan() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::SubPlan* _msg = _internal_mutable_sub_plan(); // @@protoc_insertion_point(field_mutable:pg_query.Node.sub_plan) return _msg; } -// .pg_query.AlternativeSubPlan alternative_sub_plan = 19 [json_name = "AlternativeSubPlan"]; -inline bool Node::_internal_has_alternative_sub_plan() const { +// .pg_query.AlternativeSubPlan alternative_sub_plan = 20 [json_name = "AlternativeSubPlan"]; +inline bool Node::has_alternative_sub_plan() const { return node_case() == kAlternativeSubPlan; } -inline bool Node::has_alternative_sub_plan() const { - return _internal_has_alternative_sub_plan(); +inline bool Node::_internal_has_alternative_sub_plan() const { + return node_case() == kAlternativeSubPlan; } inline void Node::set_has_alternative_sub_plan() { _impl_._oneof_case_[0] = kAlternativeSubPlan; } inline void Node::clear_alternative_sub_plan() { - if (_internal_has_alternative_sub_plan()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlternativeSubPlan) { + if (GetArena() == nullptr) { delete _impl_.node_.alternative_sub_plan_; } clear_has_node(); @@ -62965,11 +73650,11 @@ inline void Node::clear_alternative_sub_plan() { } inline ::pg_query::AlternativeSubPlan* Node::release_alternative_sub_plan() { // @@protoc_insertion_point(field_release:pg_query.Node.alternative_sub_plan) - if (_internal_has_alternative_sub_plan()) { + if (node_case() == kAlternativeSubPlan) { clear_has_node(); - ::pg_query::AlternativeSubPlan* temp = _impl_.node_.alternative_sub_plan_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alternative_sub_plan_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.alternative_sub_plan_ = nullptr; return temp; @@ -62978,60 +73663,62 @@ inline ::pg_query::AlternativeSubPlan* Node::release_alternative_sub_plan() { } } inline const ::pg_query::AlternativeSubPlan& Node::_internal_alternative_sub_plan() const { - return _internal_has_alternative_sub_plan() - ? *_impl_.node_.alternative_sub_plan_ - : reinterpret_cast< ::pg_query::AlternativeSubPlan&>(::pg_query::_AlternativeSubPlan_default_instance_); + return node_case() == kAlternativeSubPlan ? *_impl_.node_.alternative_sub_plan_ : reinterpret_cast<::pg_query::AlternativeSubPlan&>(::pg_query::_AlternativeSubPlan_default_instance_); } -inline const ::pg_query::AlternativeSubPlan& Node::alternative_sub_plan() const { +inline const ::pg_query::AlternativeSubPlan& Node::alternative_sub_plan() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.alternative_sub_plan) return _internal_alternative_sub_plan(); } inline ::pg_query::AlternativeSubPlan* Node::unsafe_arena_release_alternative_sub_plan() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alternative_sub_plan) - if (_internal_has_alternative_sub_plan()) { + if (node_case() == kAlternativeSubPlan) { clear_has_node(); - ::pg_query::AlternativeSubPlan* temp = _impl_.node_.alternative_sub_plan_; + auto* temp = _impl_.node_.alternative_sub_plan_; _impl_.node_.alternative_sub_plan_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alternative_sub_plan(::pg_query::AlternativeSubPlan* alternative_sub_plan) { +inline void Node::unsafe_arena_set_allocated_alternative_sub_plan(::pg_query::AlternativeSubPlan* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alternative_sub_plan) { + if (value) { set_has_alternative_sub_plan(); - _impl_.node_.alternative_sub_plan_ = alternative_sub_plan; + _impl_.node_.alternative_sub_plan_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alternative_sub_plan) } inline ::pg_query::AlternativeSubPlan* Node::_internal_mutable_alternative_sub_plan() { - if (!_internal_has_alternative_sub_plan()) { + if (node_case() != kAlternativeSubPlan) { clear_node(); set_has_alternative_sub_plan(); - _impl_.node_.alternative_sub_plan_ = CreateMaybeMessage< ::pg_query::AlternativeSubPlan >(GetArenaForAllocation()); + _impl_.node_.alternative_sub_plan_ = CreateMaybeMessage<::pg_query::AlternativeSubPlan>(GetArena()); } return _impl_.node_.alternative_sub_plan_; } -inline ::pg_query::AlternativeSubPlan* Node::mutable_alternative_sub_plan() { +inline ::pg_query::AlternativeSubPlan* Node::mutable_alternative_sub_plan() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::AlternativeSubPlan* _msg = _internal_mutable_alternative_sub_plan(); // @@protoc_insertion_point(field_mutable:pg_query.Node.alternative_sub_plan) return _msg; } -// .pg_query.FieldSelect field_select = 20 [json_name = "FieldSelect"]; -inline bool Node::_internal_has_field_select() const { +// .pg_query.FieldSelect field_select = 21 [json_name = "FieldSelect"]; +inline bool Node::has_field_select() const { return node_case() == kFieldSelect; } -inline bool Node::has_field_select() const { - return _internal_has_field_select(); +inline bool Node::_internal_has_field_select() const { + return node_case() == kFieldSelect; } inline void Node::set_has_field_select() { _impl_._oneof_case_[0] = kFieldSelect; } inline void Node::clear_field_select() { - if (_internal_has_field_select()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kFieldSelect) { + if (GetArena() == nullptr) { delete _impl_.node_.field_select_; } clear_has_node(); @@ -63039,11 +73726,11 @@ inline void Node::clear_field_select() { } inline ::pg_query::FieldSelect* Node::release_field_select() { // @@protoc_insertion_point(field_release:pg_query.Node.field_select) - if (_internal_has_field_select()) { + if (node_case() == kFieldSelect) { clear_has_node(); - ::pg_query::FieldSelect* temp = _impl_.node_.field_select_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.field_select_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.field_select_ = nullptr; return temp; @@ -63052,60 +73739,62 @@ inline ::pg_query::FieldSelect* Node::release_field_select() { } } inline const ::pg_query::FieldSelect& Node::_internal_field_select() const { - return _internal_has_field_select() - ? *_impl_.node_.field_select_ - : reinterpret_cast< ::pg_query::FieldSelect&>(::pg_query::_FieldSelect_default_instance_); + return node_case() == kFieldSelect ? *_impl_.node_.field_select_ : reinterpret_cast<::pg_query::FieldSelect&>(::pg_query::_FieldSelect_default_instance_); } -inline const ::pg_query::FieldSelect& Node::field_select() const { +inline const ::pg_query::FieldSelect& Node::field_select() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.field_select) return _internal_field_select(); } inline ::pg_query::FieldSelect* Node::unsafe_arena_release_field_select() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.field_select) - if (_internal_has_field_select()) { + if (node_case() == kFieldSelect) { clear_has_node(); - ::pg_query::FieldSelect* temp = _impl_.node_.field_select_; + auto* temp = _impl_.node_.field_select_; _impl_.node_.field_select_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_field_select(::pg_query::FieldSelect* field_select) { +inline void Node::unsafe_arena_set_allocated_field_select(::pg_query::FieldSelect* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (field_select) { + if (value) { set_has_field_select(); - _impl_.node_.field_select_ = field_select; + _impl_.node_.field_select_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.field_select) } inline ::pg_query::FieldSelect* Node::_internal_mutable_field_select() { - if (!_internal_has_field_select()) { + if (node_case() != kFieldSelect) { clear_node(); set_has_field_select(); - _impl_.node_.field_select_ = CreateMaybeMessage< ::pg_query::FieldSelect >(GetArenaForAllocation()); + _impl_.node_.field_select_ = CreateMaybeMessage<::pg_query::FieldSelect>(GetArena()); } return _impl_.node_.field_select_; } -inline ::pg_query::FieldSelect* Node::mutable_field_select() { +inline ::pg_query::FieldSelect* Node::mutable_field_select() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::FieldSelect* _msg = _internal_mutable_field_select(); // @@protoc_insertion_point(field_mutable:pg_query.Node.field_select) return _msg; } -// .pg_query.FieldStore field_store = 21 [json_name = "FieldStore"]; -inline bool Node::_internal_has_field_store() const { +// .pg_query.FieldStore field_store = 22 [json_name = "FieldStore"]; +inline bool Node::has_field_store() const { return node_case() == kFieldStore; } -inline bool Node::has_field_store() const { - return _internal_has_field_store(); +inline bool Node::_internal_has_field_store() const { + return node_case() == kFieldStore; } inline void Node::set_has_field_store() { _impl_._oneof_case_[0] = kFieldStore; } inline void Node::clear_field_store() { - if (_internal_has_field_store()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kFieldStore) { + if (GetArena() == nullptr) { delete _impl_.node_.field_store_; } clear_has_node(); @@ -63113,11 +73802,11 @@ inline void Node::clear_field_store() { } inline ::pg_query::FieldStore* Node::release_field_store() { // @@protoc_insertion_point(field_release:pg_query.Node.field_store) - if (_internal_has_field_store()) { + if (node_case() == kFieldStore) { clear_has_node(); - ::pg_query::FieldStore* temp = _impl_.node_.field_store_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.field_store_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.field_store_ = nullptr; return temp; @@ -63126,60 +73815,62 @@ inline ::pg_query::FieldStore* Node::release_field_store() { } } inline const ::pg_query::FieldStore& Node::_internal_field_store() const { - return _internal_has_field_store() - ? *_impl_.node_.field_store_ - : reinterpret_cast< ::pg_query::FieldStore&>(::pg_query::_FieldStore_default_instance_); + return node_case() == kFieldStore ? *_impl_.node_.field_store_ : reinterpret_cast<::pg_query::FieldStore&>(::pg_query::_FieldStore_default_instance_); } -inline const ::pg_query::FieldStore& Node::field_store() const { +inline const ::pg_query::FieldStore& Node::field_store() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.field_store) return _internal_field_store(); } inline ::pg_query::FieldStore* Node::unsafe_arena_release_field_store() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.field_store) - if (_internal_has_field_store()) { + if (node_case() == kFieldStore) { clear_has_node(); - ::pg_query::FieldStore* temp = _impl_.node_.field_store_; + auto* temp = _impl_.node_.field_store_; _impl_.node_.field_store_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_field_store(::pg_query::FieldStore* field_store) { +inline void Node::unsafe_arena_set_allocated_field_store(::pg_query::FieldStore* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (field_store) { + if (value) { set_has_field_store(); - _impl_.node_.field_store_ = field_store; + _impl_.node_.field_store_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.field_store) } inline ::pg_query::FieldStore* Node::_internal_mutable_field_store() { - if (!_internal_has_field_store()) { + if (node_case() != kFieldStore) { clear_node(); set_has_field_store(); - _impl_.node_.field_store_ = CreateMaybeMessage< ::pg_query::FieldStore >(GetArenaForAllocation()); + _impl_.node_.field_store_ = CreateMaybeMessage<::pg_query::FieldStore>(GetArena()); } return _impl_.node_.field_store_; } -inline ::pg_query::FieldStore* Node::mutable_field_store() { +inline ::pg_query::FieldStore* Node::mutable_field_store() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::FieldStore* _msg = _internal_mutable_field_store(); // @@protoc_insertion_point(field_mutable:pg_query.Node.field_store) return _msg; } -// .pg_query.RelabelType relabel_type = 22 [json_name = "RelabelType"]; -inline bool Node::_internal_has_relabel_type() const { +// .pg_query.RelabelType relabel_type = 23 [json_name = "RelabelType"]; +inline bool Node::has_relabel_type() const { return node_case() == kRelabelType; } -inline bool Node::has_relabel_type() const { - return _internal_has_relabel_type(); +inline bool Node::_internal_has_relabel_type() const { + return node_case() == kRelabelType; } inline void Node::set_has_relabel_type() { _impl_._oneof_case_[0] = kRelabelType; } inline void Node::clear_relabel_type() { - if (_internal_has_relabel_type()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRelabelType) { + if (GetArena() == nullptr) { delete _impl_.node_.relabel_type_; } clear_has_node(); @@ -63187,11 +73878,11 @@ inline void Node::clear_relabel_type() { } inline ::pg_query::RelabelType* Node::release_relabel_type() { // @@protoc_insertion_point(field_release:pg_query.Node.relabel_type) - if (_internal_has_relabel_type()) { + if (node_case() == kRelabelType) { clear_has_node(); - ::pg_query::RelabelType* temp = _impl_.node_.relabel_type_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.relabel_type_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.relabel_type_ = nullptr; return temp; @@ -63200,60 +73891,62 @@ inline ::pg_query::RelabelType* Node::release_relabel_type() { } } inline const ::pg_query::RelabelType& Node::_internal_relabel_type() const { - return _internal_has_relabel_type() - ? *_impl_.node_.relabel_type_ - : reinterpret_cast< ::pg_query::RelabelType&>(::pg_query::_RelabelType_default_instance_); + return node_case() == kRelabelType ? *_impl_.node_.relabel_type_ : reinterpret_cast<::pg_query::RelabelType&>(::pg_query::_RelabelType_default_instance_); } -inline const ::pg_query::RelabelType& Node::relabel_type() const { +inline const ::pg_query::RelabelType& Node::relabel_type() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.relabel_type) return _internal_relabel_type(); } inline ::pg_query::RelabelType* Node::unsafe_arena_release_relabel_type() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.relabel_type) - if (_internal_has_relabel_type()) { + if (node_case() == kRelabelType) { clear_has_node(); - ::pg_query::RelabelType* temp = _impl_.node_.relabel_type_; + auto* temp = _impl_.node_.relabel_type_; _impl_.node_.relabel_type_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_relabel_type(::pg_query::RelabelType* relabel_type) { +inline void Node::unsafe_arena_set_allocated_relabel_type(::pg_query::RelabelType* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (relabel_type) { + if (value) { set_has_relabel_type(); - _impl_.node_.relabel_type_ = relabel_type; + _impl_.node_.relabel_type_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.relabel_type) } inline ::pg_query::RelabelType* Node::_internal_mutable_relabel_type() { - if (!_internal_has_relabel_type()) { + if (node_case() != kRelabelType) { clear_node(); set_has_relabel_type(); - _impl_.node_.relabel_type_ = CreateMaybeMessage< ::pg_query::RelabelType >(GetArenaForAllocation()); + _impl_.node_.relabel_type_ = CreateMaybeMessage<::pg_query::RelabelType>(GetArena()); } return _impl_.node_.relabel_type_; } -inline ::pg_query::RelabelType* Node::mutable_relabel_type() { +inline ::pg_query::RelabelType* Node::mutable_relabel_type() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::RelabelType* _msg = _internal_mutable_relabel_type(); // @@protoc_insertion_point(field_mutable:pg_query.Node.relabel_type) return _msg; } -// .pg_query.CoerceViaIO coerce_via_io = 23 [json_name = "CoerceViaIO"]; -inline bool Node::_internal_has_coerce_via_io() const { +// .pg_query.CoerceViaIO coerce_via_io = 24 [json_name = "CoerceViaIO"]; +inline bool Node::has_coerce_via_io() const { return node_case() == kCoerceViaIo; } -inline bool Node::has_coerce_via_io() const { - return _internal_has_coerce_via_io(); +inline bool Node::_internal_has_coerce_via_io() const { + return node_case() == kCoerceViaIo; } inline void Node::set_has_coerce_via_io() { _impl_._oneof_case_[0] = kCoerceViaIo; } inline void Node::clear_coerce_via_io() { - if (_internal_has_coerce_via_io()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCoerceViaIo) { + if (GetArena() == nullptr) { delete _impl_.node_.coerce_via_io_; } clear_has_node(); @@ -63261,11 +73954,11 @@ inline void Node::clear_coerce_via_io() { } inline ::pg_query::CoerceViaIO* Node::release_coerce_via_io() { // @@protoc_insertion_point(field_release:pg_query.Node.coerce_via_io) - if (_internal_has_coerce_via_io()) { + if (node_case() == kCoerceViaIo) { clear_has_node(); - ::pg_query::CoerceViaIO* temp = _impl_.node_.coerce_via_io_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.coerce_via_io_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.coerce_via_io_ = nullptr; return temp; @@ -63274,60 +73967,62 @@ inline ::pg_query::CoerceViaIO* Node::release_coerce_via_io() { } } inline const ::pg_query::CoerceViaIO& Node::_internal_coerce_via_io() const { - return _internal_has_coerce_via_io() - ? *_impl_.node_.coerce_via_io_ - : reinterpret_cast< ::pg_query::CoerceViaIO&>(::pg_query::_CoerceViaIO_default_instance_); + return node_case() == kCoerceViaIo ? *_impl_.node_.coerce_via_io_ : reinterpret_cast<::pg_query::CoerceViaIO&>(::pg_query::_CoerceViaIO_default_instance_); } -inline const ::pg_query::CoerceViaIO& Node::coerce_via_io() const { +inline const ::pg_query::CoerceViaIO& Node::coerce_via_io() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.coerce_via_io) return _internal_coerce_via_io(); } inline ::pg_query::CoerceViaIO* Node::unsafe_arena_release_coerce_via_io() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.coerce_via_io) - if (_internal_has_coerce_via_io()) { + if (node_case() == kCoerceViaIo) { clear_has_node(); - ::pg_query::CoerceViaIO* temp = _impl_.node_.coerce_via_io_; + auto* temp = _impl_.node_.coerce_via_io_; _impl_.node_.coerce_via_io_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_coerce_via_io(::pg_query::CoerceViaIO* coerce_via_io) { +inline void Node::unsafe_arena_set_allocated_coerce_via_io(::pg_query::CoerceViaIO* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (coerce_via_io) { + if (value) { set_has_coerce_via_io(); - _impl_.node_.coerce_via_io_ = coerce_via_io; + _impl_.node_.coerce_via_io_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.coerce_via_io) } inline ::pg_query::CoerceViaIO* Node::_internal_mutable_coerce_via_io() { - if (!_internal_has_coerce_via_io()) { + if (node_case() != kCoerceViaIo) { clear_node(); set_has_coerce_via_io(); - _impl_.node_.coerce_via_io_ = CreateMaybeMessage< ::pg_query::CoerceViaIO >(GetArenaForAllocation()); + _impl_.node_.coerce_via_io_ = CreateMaybeMessage<::pg_query::CoerceViaIO>(GetArena()); } return _impl_.node_.coerce_via_io_; } -inline ::pg_query::CoerceViaIO* Node::mutable_coerce_via_io() { +inline ::pg_query::CoerceViaIO* Node::mutable_coerce_via_io() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::CoerceViaIO* _msg = _internal_mutable_coerce_via_io(); // @@protoc_insertion_point(field_mutable:pg_query.Node.coerce_via_io) return _msg; } -// .pg_query.ArrayCoerceExpr array_coerce_expr = 24 [json_name = "ArrayCoerceExpr"]; -inline bool Node::_internal_has_array_coerce_expr() const { +// .pg_query.ArrayCoerceExpr array_coerce_expr = 25 [json_name = "ArrayCoerceExpr"]; +inline bool Node::has_array_coerce_expr() const { return node_case() == kArrayCoerceExpr; } -inline bool Node::has_array_coerce_expr() const { - return _internal_has_array_coerce_expr(); +inline bool Node::_internal_has_array_coerce_expr() const { + return node_case() == kArrayCoerceExpr; } inline void Node::set_has_array_coerce_expr() { _impl_._oneof_case_[0] = kArrayCoerceExpr; } inline void Node::clear_array_coerce_expr() { - if (_internal_has_array_coerce_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kArrayCoerceExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.array_coerce_expr_; } clear_has_node(); @@ -63335,11 +74030,11 @@ inline void Node::clear_array_coerce_expr() { } inline ::pg_query::ArrayCoerceExpr* Node::release_array_coerce_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.array_coerce_expr) - if (_internal_has_array_coerce_expr()) { + if (node_case() == kArrayCoerceExpr) { clear_has_node(); - ::pg_query::ArrayCoerceExpr* temp = _impl_.node_.array_coerce_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.array_coerce_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.array_coerce_expr_ = nullptr; return temp; @@ -63348,60 +74043,62 @@ inline ::pg_query::ArrayCoerceExpr* Node::release_array_coerce_expr() { } } inline const ::pg_query::ArrayCoerceExpr& Node::_internal_array_coerce_expr() const { - return _internal_has_array_coerce_expr() - ? *_impl_.node_.array_coerce_expr_ - : reinterpret_cast< ::pg_query::ArrayCoerceExpr&>(::pg_query::_ArrayCoerceExpr_default_instance_); + return node_case() == kArrayCoerceExpr ? *_impl_.node_.array_coerce_expr_ : reinterpret_cast<::pg_query::ArrayCoerceExpr&>(::pg_query::_ArrayCoerceExpr_default_instance_); } -inline const ::pg_query::ArrayCoerceExpr& Node::array_coerce_expr() const { +inline const ::pg_query::ArrayCoerceExpr& Node::array_coerce_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.array_coerce_expr) return _internal_array_coerce_expr(); } inline ::pg_query::ArrayCoerceExpr* Node::unsafe_arena_release_array_coerce_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.array_coerce_expr) - if (_internal_has_array_coerce_expr()) { + if (node_case() == kArrayCoerceExpr) { clear_has_node(); - ::pg_query::ArrayCoerceExpr* temp = _impl_.node_.array_coerce_expr_; + auto* temp = _impl_.node_.array_coerce_expr_; _impl_.node_.array_coerce_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_array_coerce_expr(::pg_query::ArrayCoerceExpr* array_coerce_expr) { +inline void Node::unsafe_arena_set_allocated_array_coerce_expr(::pg_query::ArrayCoerceExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (array_coerce_expr) { + if (value) { set_has_array_coerce_expr(); - _impl_.node_.array_coerce_expr_ = array_coerce_expr; + _impl_.node_.array_coerce_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.array_coerce_expr) } inline ::pg_query::ArrayCoerceExpr* Node::_internal_mutable_array_coerce_expr() { - if (!_internal_has_array_coerce_expr()) { + if (node_case() != kArrayCoerceExpr) { clear_node(); set_has_array_coerce_expr(); - _impl_.node_.array_coerce_expr_ = CreateMaybeMessage< ::pg_query::ArrayCoerceExpr >(GetArenaForAllocation()); + _impl_.node_.array_coerce_expr_ = CreateMaybeMessage<::pg_query::ArrayCoerceExpr>(GetArena()); } return _impl_.node_.array_coerce_expr_; } -inline ::pg_query::ArrayCoerceExpr* Node::mutable_array_coerce_expr() { +inline ::pg_query::ArrayCoerceExpr* Node::mutable_array_coerce_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::ArrayCoerceExpr* _msg = _internal_mutable_array_coerce_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.array_coerce_expr) return _msg; } -// .pg_query.ConvertRowtypeExpr convert_rowtype_expr = 25 [json_name = "ConvertRowtypeExpr"]; -inline bool Node::_internal_has_convert_rowtype_expr() const { +// .pg_query.ConvertRowtypeExpr convert_rowtype_expr = 26 [json_name = "ConvertRowtypeExpr"]; +inline bool Node::has_convert_rowtype_expr() const { return node_case() == kConvertRowtypeExpr; } -inline bool Node::has_convert_rowtype_expr() const { - return _internal_has_convert_rowtype_expr(); +inline bool Node::_internal_has_convert_rowtype_expr() const { + return node_case() == kConvertRowtypeExpr; } inline void Node::set_has_convert_rowtype_expr() { _impl_._oneof_case_[0] = kConvertRowtypeExpr; } inline void Node::clear_convert_rowtype_expr() { - if (_internal_has_convert_rowtype_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kConvertRowtypeExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.convert_rowtype_expr_; } clear_has_node(); @@ -63409,11 +74106,11 @@ inline void Node::clear_convert_rowtype_expr() { } inline ::pg_query::ConvertRowtypeExpr* Node::release_convert_rowtype_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.convert_rowtype_expr) - if (_internal_has_convert_rowtype_expr()) { + if (node_case() == kConvertRowtypeExpr) { clear_has_node(); - ::pg_query::ConvertRowtypeExpr* temp = _impl_.node_.convert_rowtype_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.convert_rowtype_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.convert_rowtype_expr_ = nullptr; return temp; @@ -63422,60 +74119,62 @@ inline ::pg_query::ConvertRowtypeExpr* Node::release_convert_rowtype_expr() { } } inline const ::pg_query::ConvertRowtypeExpr& Node::_internal_convert_rowtype_expr() const { - return _internal_has_convert_rowtype_expr() - ? *_impl_.node_.convert_rowtype_expr_ - : reinterpret_cast< ::pg_query::ConvertRowtypeExpr&>(::pg_query::_ConvertRowtypeExpr_default_instance_); + return node_case() == kConvertRowtypeExpr ? *_impl_.node_.convert_rowtype_expr_ : reinterpret_cast<::pg_query::ConvertRowtypeExpr&>(::pg_query::_ConvertRowtypeExpr_default_instance_); } -inline const ::pg_query::ConvertRowtypeExpr& Node::convert_rowtype_expr() const { +inline const ::pg_query::ConvertRowtypeExpr& Node::convert_rowtype_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.convert_rowtype_expr) return _internal_convert_rowtype_expr(); } inline ::pg_query::ConvertRowtypeExpr* Node::unsafe_arena_release_convert_rowtype_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.convert_rowtype_expr) - if (_internal_has_convert_rowtype_expr()) { + if (node_case() == kConvertRowtypeExpr) { clear_has_node(); - ::pg_query::ConvertRowtypeExpr* temp = _impl_.node_.convert_rowtype_expr_; + auto* temp = _impl_.node_.convert_rowtype_expr_; _impl_.node_.convert_rowtype_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_convert_rowtype_expr(::pg_query::ConvertRowtypeExpr* convert_rowtype_expr) { +inline void Node::unsafe_arena_set_allocated_convert_rowtype_expr(::pg_query::ConvertRowtypeExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (convert_rowtype_expr) { + if (value) { set_has_convert_rowtype_expr(); - _impl_.node_.convert_rowtype_expr_ = convert_rowtype_expr; + _impl_.node_.convert_rowtype_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.convert_rowtype_expr) } inline ::pg_query::ConvertRowtypeExpr* Node::_internal_mutable_convert_rowtype_expr() { - if (!_internal_has_convert_rowtype_expr()) { + if (node_case() != kConvertRowtypeExpr) { clear_node(); set_has_convert_rowtype_expr(); - _impl_.node_.convert_rowtype_expr_ = CreateMaybeMessage< ::pg_query::ConvertRowtypeExpr >(GetArenaForAllocation()); + _impl_.node_.convert_rowtype_expr_ = CreateMaybeMessage<::pg_query::ConvertRowtypeExpr>(GetArena()); } return _impl_.node_.convert_rowtype_expr_; } -inline ::pg_query::ConvertRowtypeExpr* Node::mutable_convert_rowtype_expr() { +inline ::pg_query::ConvertRowtypeExpr* Node::mutable_convert_rowtype_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::ConvertRowtypeExpr* _msg = _internal_mutable_convert_rowtype_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.convert_rowtype_expr) return _msg; } -// .pg_query.CollateExpr collate_expr = 26 [json_name = "CollateExpr"]; -inline bool Node::_internal_has_collate_expr() const { +// .pg_query.CollateExpr collate_expr = 27 [json_name = "CollateExpr"]; +inline bool Node::has_collate_expr() const { return node_case() == kCollateExpr; } -inline bool Node::has_collate_expr() const { - return _internal_has_collate_expr(); +inline bool Node::_internal_has_collate_expr() const { + return node_case() == kCollateExpr; } inline void Node::set_has_collate_expr() { _impl_._oneof_case_[0] = kCollateExpr; } inline void Node::clear_collate_expr() { - if (_internal_has_collate_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCollateExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.collate_expr_; } clear_has_node(); @@ -63483,11 +74182,11 @@ inline void Node::clear_collate_expr() { } inline ::pg_query::CollateExpr* Node::release_collate_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.collate_expr) - if (_internal_has_collate_expr()) { + if (node_case() == kCollateExpr) { clear_has_node(); - ::pg_query::CollateExpr* temp = _impl_.node_.collate_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.collate_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.collate_expr_ = nullptr; return temp; @@ -63496,60 +74195,62 @@ inline ::pg_query::CollateExpr* Node::release_collate_expr() { } } inline const ::pg_query::CollateExpr& Node::_internal_collate_expr() const { - return _internal_has_collate_expr() - ? *_impl_.node_.collate_expr_ - : reinterpret_cast< ::pg_query::CollateExpr&>(::pg_query::_CollateExpr_default_instance_); + return node_case() == kCollateExpr ? *_impl_.node_.collate_expr_ : reinterpret_cast<::pg_query::CollateExpr&>(::pg_query::_CollateExpr_default_instance_); } -inline const ::pg_query::CollateExpr& Node::collate_expr() const { +inline const ::pg_query::CollateExpr& Node::collate_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.collate_expr) return _internal_collate_expr(); } inline ::pg_query::CollateExpr* Node::unsafe_arena_release_collate_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.collate_expr) - if (_internal_has_collate_expr()) { + if (node_case() == kCollateExpr) { clear_has_node(); - ::pg_query::CollateExpr* temp = _impl_.node_.collate_expr_; + auto* temp = _impl_.node_.collate_expr_; _impl_.node_.collate_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_collate_expr(::pg_query::CollateExpr* collate_expr) { +inline void Node::unsafe_arena_set_allocated_collate_expr(::pg_query::CollateExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (collate_expr) { + if (value) { set_has_collate_expr(); - _impl_.node_.collate_expr_ = collate_expr; + _impl_.node_.collate_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.collate_expr) } inline ::pg_query::CollateExpr* Node::_internal_mutable_collate_expr() { - if (!_internal_has_collate_expr()) { + if (node_case() != kCollateExpr) { clear_node(); set_has_collate_expr(); - _impl_.node_.collate_expr_ = CreateMaybeMessage< ::pg_query::CollateExpr >(GetArenaForAllocation()); + _impl_.node_.collate_expr_ = CreateMaybeMessage<::pg_query::CollateExpr>(GetArena()); } return _impl_.node_.collate_expr_; } -inline ::pg_query::CollateExpr* Node::mutable_collate_expr() { +inline ::pg_query::CollateExpr* Node::mutable_collate_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::CollateExpr* _msg = _internal_mutable_collate_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.collate_expr) return _msg; } -// .pg_query.CaseExpr case_expr = 27 [json_name = "CaseExpr"]; -inline bool Node::_internal_has_case_expr() const { +// .pg_query.CaseExpr case_expr = 28 [json_name = "CaseExpr"]; +inline bool Node::has_case_expr() const { return node_case() == kCaseExpr; } -inline bool Node::has_case_expr() const { - return _internal_has_case_expr(); +inline bool Node::_internal_has_case_expr() const { + return node_case() == kCaseExpr; } inline void Node::set_has_case_expr() { _impl_._oneof_case_[0] = kCaseExpr; } inline void Node::clear_case_expr() { - if (_internal_has_case_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCaseExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.case_expr_; } clear_has_node(); @@ -63557,11 +74258,11 @@ inline void Node::clear_case_expr() { } inline ::pg_query::CaseExpr* Node::release_case_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.case_expr) - if (_internal_has_case_expr()) { + if (node_case() == kCaseExpr) { clear_has_node(); - ::pg_query::CaseExpr* temp = _impl_.node_.case_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.case_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.case_expr_ = nullptr; return temp; @@ -63570,60 +74271,62 @@ inline ::pg_query::CaseExpr* Node::release_case_expr() { } } inline const ::pg_query::CaseExpr& Node::_internal_case_expr() const { - return _internal_has_case_expr() - ? *_impl_.node_.case_expr_ - : reinterpret_cast< ::pg_query::CaseExpr&>(::pg_query::_CaseExpr_default_instance_); + return node_case() == kCaseExpr ? *_impl_.node_.case_expr_ : reinterpret_cast<::pg_query::CaseExpr&>(::pg_query::_CaseExpr_default_instance_); } -inline const ::pg_query::CaseExpr& Node::case_expr() const { +inline const ::pg_query::CaseExpr& Node::case_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.case_expr) return _internal_case_expr(); } inline ::pg_query::CaseExpr* Node::unsafe_arena_release_case_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.case_expr) - if (_internal_has_case_expr()) { + if (node_case() == kCaseExpr) { clear_has_node(); - ::pg_query::CaseExpr* temp = _impl_.node_.case_expr_; + auto* temp = _impl_.node_.case_expr_; _impl_.node_.case_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_case_expr(::pg_query::CaseExpr* case_expr) { +inline void Node::unsafe_arena_set_allocated_case_expr(::pg_query::CaseExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (case_expr) { + if (value) { set_has_case_expr(); - _impl_.node_.case_expr_ = case_expr; + _impl_.node_.case_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.case_expr) } inline ::pg_query::CaseExpr* Node::_internal_mutable_case_expr() { - if (!_internal_has_case_expr()) { + if (node_case() != kCaseExpr) { clear_node(); set_has_case_expr(); - _impl_.node_.case_expr_ = CreateMaybeMessage< ::pg_query::CaseExpr >(GetArenaForAllocation()); + _impl_.node_.case_expr_ = CreateMaybeMessage<::pg_query::CaseExpr>(GetArena()); } return _impl_.node_.case_expr_; } -inline ::pg_query::CaseExpr* Node::mutable_case_expr() { +inline ::pg_query::CaseExpr* Node::mutable_case_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::CaseExpr* _msg = _internal_mutable_case_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.case_expr) return _msg; } -// .pg_query.CaseWhen case_when = 28 [json_name = "CaseWhen"]; -inline bool Node::_internal_has_case_when() const { +// .pg_query.CaseWhen case_when = 29 [json_name = "CaseWhen"]; +inline bool Node::has_case_when() const { return node_case() == kCaseWhen; } -inline bool Node::has_case_when() const { - return _internal_has_case_when(); +inline bool Node::_internal_has_case_when() const { + return node_case() == kCaseWhen; } inline void Node::set_has_case_when() { _impl_._oneof_case_[0] = kCaseWhen; } inline void Node::clear_case_when() { - if (_internal_has_case_when()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCaseWhen) { + if (GetArena() == nullptr) { delete _impl_.node_.case_when_; } clear_has_node(); @@ -63631,11 +74334,11 @@ inline void Node::clear_case_when() { } inline ::pg_query::CaseWhen* Node::release_case_when() { // @@protoc_insertion_point(field_release:pg_query.Node.case_when) - if (_internal_has_case_when()) { + if (node_case() == kCaseWhen) { clear_has_node(); - ::pg_query::CaseWhen* temp = _impl_.node_.case_when_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.case_when_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.case_when_ = nullptr; return temp; @@ -63644,60 +74347,62 @@ inline ::pg_query::CaseWhen* Node::release_case_when() { } } inline const ::pg_query::CaseWhen& Node::_internal_case_when() const { - return _internal_has_case_when() - ? *_impl_.node_.case_when_ - : reinterpret_cast< ::pg_query::CaseWhen&>(::pg_query::_CaseWhen_default_instance_); + return node_case() == kCaseWhen ? *_impl_.node_.case_when_ : reinterpret_cast<::pg_query::CaseWhen&>(::pg_query::_CaseWhen_default_instance_); } -inline const ::pg_query::CaseWhen& Node::case_when() const { +inline const ::pg_query::CaseWhen& Node::case_when() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.case_when) return _internal_case_when(); } inline ::pg_query::CaseWhen* Node::unsafe_arena_release_case_when() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.case_when) - if (_internal_has_case_when()) { + if (node_case() == kCaseWhen) { clear_has_node(); - ::pg_query::CaseWhen* temp = _impl_.node_.case_when_; + auto* temp = _impl_.node_.case_when_; _impl_.node_.case_when_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_case_when(::pg_query::CaseWhen* case_when) { +inline void Node::unsafe_arena_set_allocated_case_when(::pg_query::CaseWhen* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (case_when) { + if (value) { set_has_case_when(); - _impl_.node_.case_when_ = case_when; + _impl_.node_.case_when_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.case_when) } inline ::pg_query::CaseWhen* Node::_internal_mutable_case_when() { - if (!_internal_has_case_when()) { + if (node_case() != kCaseWhen) { clear_node(); set_has_case_when(); - _impl_.node_.case_when_ = CreateMaybeMessage< ::pg_query::CaseWhen >(GetArenaForAllocation()); + _impl_.node_.case_when_ = CreateMaybeMessage<::pg_query::CaseWhen>(GetArena()); } return _impl_.node_.case_when_; } -inline ::pg_query::CaseWhen* Node::mutable_case_when() { +inline ::pg_query::CaseWhen* Node::mutable_case_when() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::CaseWhen* _msg = _internal_mutable_case_when(); // @@protoc_insertion_point(field_mutable:pg_query.Node.case_when) return _msg; } -// .pg_query.CaseTestExpr case_test_expr = 29 [json_name = "CaseTestExpr"]; -inline bool Node::_internal_has_case_test_expr() const { +// .pg_query.CaseTestExpr case_test_expr = 30 [json_name = "CaseTestExpr"]; +inline bool Node::has_case_test_expr() const { return node_case() == kCaseTestExpr; } -inline bool Node::has_case_test_expr() const { - return _internal_has_case_test_expr(); +inline bool Node::_internal_has_case_test_expr() const { + return node_case() == kCaseTestExpr; } inline void Node::set_has_case_test_expr() { _impl_._oneof_case_[0] = kCaseTestExpr; } inline void Node::clear_case_test_expr() { - if (_internal_has_case_test_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCaseTestExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.case_test_expr_; } clear_has_node(); @@ -63705,11 +74410,11 @@ inline void Node::clear_case_test_expr() { } inline ::pg_query::CaseTestExpr* Node::release_case_test_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.case_test_expr) - if (_internal_has_case_test_expr()) { + if (node_case() == kCaseTestExpr) { clear_has_node(); - ::pg_query::CaseTestExpr* temp = _impl_.node_.case_test_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.case_test_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.case_test_expr_ = nullptr; return temp; @@ -63718,60 +74423,62 @@ inline ::pg_query::CaseTestExpr* Node::release_case_test_expr() { } } inline const ::pg_query::CaseTestExpr& Node::_internal_case_test_expr() const { - return _internal_has_case_test_expr() - ? *_impl_.node_.case_test_expr_ - : reinterpret_cast< ::pg_query::CaseTestExpr&>(::pg_query::_CaseTestExpr_default_instance_); + return node_case() == kCaseTestExpr ? *_impl_.node_.case_test_expr_ : reinterpret_cast<::pg_query::CaseTestExpr&>(::pg_query::_CaseTestExpr_default_instance_); } -inline const ::pg_query::CaseTestExpr& Node::case_test_expr() const { +inline const ::pg_query::CaseTestExpr& Node::case_test_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.case_test_expr) return _internal_case_test_expr(); } inline ::pg_query::CaseTestExpr* Node::unsafe_arena_release_case_test_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.case_test_expr) - if (_internal_has_case_test_expr()) { + if (node_case() == kCaseTestExpr) { clear_has_node(); - ::pg_query::CaseTestExpr* temp = _impl_.node_.case_test_expr_; + auto* temp = _impl_.node_.case_test_expr_; _impl_.node_.case_test_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_case_test_expr(::pg_query::CaseTestExpr* case_test_expr) { +inline void Node::unsafe_arena_set_allocated_case_test_expr(::pg_query::CaseTestExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (case_test_expr) { + if (value) { set_has_case_test_expr(); - _impl_.node_.case_test_expr_ = case_test_expr; + _impl_.node_.case_test_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.case_test_expr) } inline ::pg_query::CaseTestExpr* Node::_internal_mutable_case_test_expr() { - if (!_internal_has_case_test_expr()) { + if (node_case() != kCaseTestExpr) { clear_node(); set_has_case_test_expr(); - _impl_.node_.case_test_expr_ = CreateMaybeMessage< ::pg_query::CaseTestExpr >(GetArenaForAllocation()); + _impl_.node_.case_test_expr_ = CreateMaybeMessage<::pg_query::CaseTestExpr>(GetArena()); } return _impl_.node_.case_test_expr_; } -inline ::pg_query::CaseTestExpr* Node::mutable_case_test_expr() { +inline ::pg_query::CaseTestExpr* Node::mutable_case_test_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::CaseTestExpr* _msg = _internal_mutable_case_test_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.case_test_expr) return _msg; } -// .pg_query.ArrayExpr array_expr = 30 [json_name = "ArrayExpr"]; -inline bool Node::_internal_has_array_expr() const { +// .pg_query.ArrayExpr array_expr = 31 [json_name = "ArrayExpr"]; +inline bool Node::has_array_expr() const { return node_case() == kArrayExpr; } -inline bool Node::has_array_expr() const { - return _internal_has_array_expr(); +inline bool Node::_internal_has_array_expr() const { + return node_case() == kArrayExpr; } inline void Node::set_has_array_expr() { _impl_._oneof_case_[0] = kArrayExpr; } inline void Node::clear_array_expr() { - if (_internal_has_array_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kArrayExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.array_expr_; } clear_has_node(); @@ -63779,11 +74486,11 @@ inline void Node::clear_array_expr() { } inline ::pg_query::ArrayExpr* Node::release_array_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.array_expr) - if (_internal_has_array_expr()) { + if (node_case() == kArrayExpr) { clear_has_node(); - ::pg_query::ArrayExpr* temp = _impl_.node_.array_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.array_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.array_expr_ = nullptr; return temp; @@ -63792,60 +74499,62 @@ inline ::pg_query::ArrayExpr* Node::release_array_expr() { } } inline const ::pg_query::ArrayExpr& Node::_internal_array_expr() const { - return _internal_has_array_expr() - ? *_impl_.node_.array_expr_ - : reinterpret_cast< ::pg_query::ArrayExpr&>(::pg_query::_ArrayExpr_default_instance_); + return node_case() == kArrayExpr ? *_impl_.node_.array_expr_ : reinterpret_cast<::pg_query::ArrayExpr&>(::pg_query::_ArrayExpr_default_instance_); } -inline const ::pg_query::ArrayExpr& Node::array_expr() const { +inline const ::pg_query::ArrayExpr& Node::array_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.array_expr) return _internal_array_expr(); } inline ::pg_query::ArrayExpr* Node::unsafe_arena_release_array_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.array_expr) - if (_internal_has_array_expr()) { + if (node_case() == kArrayExpr) { clear_has_node(); - ::pg_query::ArrayExpr* temp = _impl_.node_.array_expr_; + auto* temp = _impl_.node_.array_expr_; _impl_.node_.array_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_array_expr(::pg_query::ArrayExpr* array_expr) { +inline void Node::unsafe_arena_set_allocated_array_expr(::pg_query::ArrayExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (array_expr) { + if (value) { set_has_array_expr(); - _impl_.node_.array_expr_ = array_expr; + _impl_.node_.array_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.array_expr) } inline ::pg_query::ArrayExpr* Node::_internal_mutable_array_expr() { - if (!_internal_has_array_expr()) { + if (node_case() != kArrayExpr) { clear_node(); set_has_array_expr(); - _impl_.node_.array_expr_ = CreateMaybeMessage< ::pg_query::ArrayExpr >(GetArenaForAllocation()); + _impl_.node_.array_expr_ = CreateMaybeMessage<::pg_query::ArrayExpr>(GetArena()); } return _impl_.node_.array_expr_; } -inline ::pg_query::ArrayExpr* Node::mutable_array_expr() { +inline ::pg_query::ArrayExpr* Node::mutable_array_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::ArrayExpr* _msg = _internal_mutable_array_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.array_expr) return _msg; } -// .pg_query.RowExpr row_expr = 31 [json_name = "RowExpr"]; -inline bool Node::_internal_has_row_expr() const { +// .pg_query.RowExpr row_expr = 32 [json_name = "RowExpr"]; +inline bool Node::has_row_expr() const { return node_case() == kRowExpr; } -inline bool Node::has_row_expr() const { - return _internal_has_row_expr(); +inline bool Node::_internal_has_row_expr() const { + return node_case() == kRowExpr; } inline void Node::set_has_row_expr() { _impl_._oneof_case_[0] = kRowExpr; } inline void Node::clear_row_expr() { - if (_internal_has_row_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRowExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.row_expr_; } clear_has_node(); @@ -63853,11 +74562,11 @@ inline void Node::clear_row_expr() { } inline ::pg_query::RowExpr* Node::release_row_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.row_expr) - if (_internal_has_row_expr()) { + if (node_case() == kRowExpr) { clear_has_node(); - ::pg_query::RowExpr* temp = _impl_.node_.row_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.row_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.row_expr_ = nullptr; return temp; @@ -63866,60 +74575,62 @@ inline ::pg_query::RowExpr* Node::release_row_expr() { } } inline const ::pg_query::RowExpr& Node::_internal_row_expr() const { - return _internal_has_row_expr() - ? *_impl_.node_.row_expr_ - : reinterpret_cast< ::pg_query::RowExpr&>(::pg_query::_RowExpr_default_instance_); + return node_case() == kRowExpr ? *_impl_.node_.row_expr_ : reinterpret_cast<::pg_query::RowExpr&>(::pg_query::_RowExpr_default_instance_); } -inline const ::pg_query::RowExpr& Node::row_expr() const { +inline const ::pg_query::RowExpr& Node::row_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.row_expr) return _internal_row_expr(); } inline ::pg_query::RowExpr* Node::unsafe_arena_release_row_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.row_expr) - if (_internal_has_row_expr()) { + if (node_case() == kRowExpr) { clear_has_node(); - ::pg_query::RowExpr* temp = _impl_.node_.row_expr_; + auto* temp = _impl_.node_.row_expr_; _impl_.node_.row_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_row_expr(::pg_query::RowExpr* row_expr) { +inline void Node::unsafe_arena_set_allocated_row_expr(::pg_query::RowExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (row_expr) { + if (value) { set_has_row_expr(); - _impl_.node_.row_expr_ = row_expr; + _impl_.node_.row_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.row_expr) } inline ::pg_query::RowExpr* Node::_internal_mutable_row_expr() { - if (!_internal_has_row_expr()) { + if (node_case() != kRowExpr) { clear_node(); set_has_row_expr(); - _impl_.node_.row_expr_ = CreateMaybeMessage< ::pg_query::RowExpr >(GetArenaForAllocation()); + _impl_.node_.row_expr_ = CreateMaybeMessage<::pg_query::RowExpr>(GetArena()); } return _impl_.node_.row_expr_; } -inline ::pg_query::RowExpr* Node::mutable_row_expr() { +inline ::pg_query::RowExpr* Node::mutable_row_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::RowExpr* _msg = _internal_mutable_row_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.row_expr) return _msg; } -// .pg_query.RowCompareExpr row_compare_expr = 32 [json_name = "RowCompareExpr"]; -inline bool Node::_internal_has_row_compare_expr() const { +// .pg_query.RowCompareExpr row_compare_expr = 33 [json_name = "RowCompareExpr"]; +inline bool Node::has_row_compare_expr() const { return node_case() == kRowCompareExpr; } -inline bool Node::has_row_compare_expr() const { - return _internal_has_row_compare_expr(); +inline bool Node::_internal_has_row_compare_expr() const { + return node_case() == kRowCompareExpr; } inline void Node::set_has_row_compare_expr() { _impl_._oneof_case_[0] = kRowCompareExpr; } inline void Node::clear_row_compare_expr() { - if (_internal_has_row_compare_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRowCompareExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.row_compare_expr_; } clear_has_node(); @@ -63927,11 +74638,11 @@ inline void Node::clear_row_compare_expr() { } inline ::pg_query::RowCompareExpr* Node::release_row_compare_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.row_compare_expr) - if (_internal_has_row_compare_expr()) { + if (node_case() == kRowCompareExpr) { clear_has_node(); - ::pg_query::RowCompareExpr* temp = _impl_.node_.row_compare_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.row_compare_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.row_compare_expr_ = nullptr; return temp; @@ -63940,60 +74651,62 @@ inline ::pg_query::RowCompareExpr* Node::release_row_compare_expr() { } } inline const ::pg_query::RowCompareExpr& Node::_internal_row_compare_expr() const { - return _internal_has_row_compare_expr() - ? *_impl_.node_.row_compare_expr_ - : reinterpret_cast< ::pg_query::RowCompareExpr&>(::pg_query::_RowCompareExpr_default_instance_); + return node_case() == kRowCompareExpr ? *_impl_.node_.row_compare_expr_ : reinterpret_cast<::pg_query::RowCompareExpr&>(::pg_query::_RowCompareExpr_default_instance_); } -inline const ::pg_query::RowCompareExpr& Node::row_compare_expr() const { +inline const ::pg_query::RowCompareExpr& Node::row_compare_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.row_compare_expr) return _internal_row_compare_expr(); } inline ::pg_query::RowCompareExpr* Node::unsafe_arena_release_row_compare_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.row_compare_expr) - if (_internal_has_row_compare_expr()) { + if (node_case() == kRowCompareExpr) { clear_has_node(); - ::pg_query::RowCompareExpr* temp = _impl_.node_.row_compare_expr_; + auto* temp = _impl_.node_.row_compare_expr_; _impl_.node_.row_compare_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_row_compare_expr(::pg_query::RowCompareExpr* row_compare_expr) { +inline void Node::unsafe_arena_set_allocated_row_compare_expr(::pg_query::RowCompareExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (row_compare_expr) { + if (value) { set_has_row_compare_expr(); - _impl_.node_.row_compare_expr_ = row_compare_expr; + _impl_.node_.row_compare_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.row_compare_expr) } inline ::pg_query::RowCompareExpr* Node::_internal_mutable_row_compare_expr() { - if (!_internal_has_row_compare_expr()) { + if (node_case() != kRowCompareExpr) { clear_node(); set_has_row_compare_expr(); - _impl_.node_.row_compare_expr_ = CreateMaybeMessage< ::pg_query::RowCompareExpr >(GetArenaForAllocation()); + _impl_.node_.row_compare_expr_ = CreateMaybeMessage<::pg_query::RowCompareExpr>(GetArena()); } return _impl_.node_.row_compare_expr_; } -inline ::pg_query::RowCompareExpr* Node::mutable_row_compare_expr() { +inline ::pg_query::RowCompareExpr* Node::mutable_row_compare_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::RowCompareExpr* _msg = _internal_mutable_row_compare_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.row_compare_expr) return _msg; } -// .pg_query.CoalesceExpr coalesce_expr = 33 [json_name = "CoalesceExpr"]; -inline bool Node::_internal_has_coalesce_expr() const { +// .pg_query.CoalesceExpr coalesce_expr = 34 [json_name = "CoalesceExpr"]; +inline bool Node::has_coalesce_expr() const { return node_case() == kCoalesceExpr; } -inline bool Node::has_coalesce_expr() const { - return _internal_has_coalesce_expr(); +inline bool Node::_internal_has_coalesce_expr() const { + return node_case() == kCoalesceExpr; } inline void Node::set_has_coalesce_expr() { _impl_._oneof_case_[0] = kCoalesceExpr; } inline void Node::clear_coalesce_expr() { - if (_internal_has_coalesce_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCoalesceExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.coalesce_expr_; } clear_has_node(); @@ -64001,11 +74714,11 @@ inline void Node::clear_coalesce_expr() { } inline ::pg_query::CoalesceExpr* Node::release_coalesce_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.coalesce_expr) - if (_internal_has_coalesce_expr()) { + if (node_case() == kCoalesceExpr) { clear_has_node(); - ::pg_query::CoalesceExpr* temp = _impl_.node_.coalesce_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.coalesce_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.coalesce_expr_ = nullptr; return temp; @@ -64014,60 +74727,62 @@ inline ::pg_query::CoalesceExpr* Node::release_coalesce_expr() { } } inline const ::pg_query::CoalesceExpr& Node::_internal_coalesce_expr() const { - return _internal_has_coalesce_expr() - ? *_impl_.node_.coalesce_expr_ - : reinterpret_cast< ::pg_query::CoalesceExpr&>(::pg_query::_CoalesceExpr_default_instance_); + return node_case() == kCoalesceExpr ? *_impl_.node_.coalesce_expr_ : reinterpret_cast<::pg_query::CoalesceExpr&>(::pg_query::_CoalesceExpr_default_instance_); } -inline const ::pg_query::CoalesceExpr& Node::coalesce_expr() const { +inline const ::pg_query::CoalesceExpr& Node::coalesce_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.coalesce_expr) return _internal_coalesce_expr(); } inline ::pg_query::CoalesceExpr* Node::unsafe_arena_release_coalesce_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.coalesce_expr) - if (_internal_has_coalesce_expr()) { + if (node_case() == kCoalesceExpr) { clear_has_node(); - ::pg_query::CoalesceExpr* temp = _impl_.node_.coalesce_expr_; + auto* temp = _impl_.node_.coalesce_expr_; _impl_.node_.coalesce_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_coalesce_expr(::pg_query::CoalesceExpr* coalesce_expr) { +inline void Node::unsafe_arena_set_allocated_coalesce_expr(::pg_query::CoalesceExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (coalesce_expr) { + if (value) { set_has_coalesce_expr(); - _impl_.node_.coalesce_expr_ = coalesce_expr; + _impl_.node_.coalesce_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.coalesce_expr) } inline ::pg_query::CoalesceExpr* Node::_internal_mutable_coalesce_expr() { - if (!_internal_has_coalesce_expr()) { + if (node_case() != kCoalesceExpr) { clear_node(); set_has_coalesce_expr(); - _impl_.node_.coalesce_expr_ = CreateMaybeMessage< ::pg_query::CoalesceExpr >(GetArenaForAllocation()); + _impl_.node_.coalesce_expr_ = CreateMaybeMessage<::pg_query::CoalesceExpr>(GetArena()); } return _impl_.node_.coalesce_expr_; } -inline ::pg_query::CoalesceExpr* Node::mutable_coalesce_expr() { +inline ::pg_query::CoalesceExpr* Node::mutable_coalesce_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::CoalesceExpr* _msg = _internal_mutable_coalesce_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.coalesce_expr) return _msg; } -// .pg_query.MinMaxExpr min_max_expr = 34 [json_name = "MinMaxExpr"]; -inline bool Node::_internal_has_min_max_expr() const { +// .pg_query.MinMaxExpr min_max_expr = 35 [json_name = "MinMaxExpr"]; +inline bool Node::has_min_max_expr() const { return node_case() == kMinMaxExpr; } -inline bool Node::has_min_max_expr() const { - return _internal_has_min_max_expr(); +inline bool Node::_internal_has_min_max_expr() const { + return node_case() == kMinMaxExpr; } inline void Node::set_has_min_max_expr() { _impl_._oneof_case_[0] = kMinMaxExpr; } inline void Node::clear_min_max_expr() { - if (_internal_has_min_max_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kMinMaxExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.min_max_expr_; } clear_has_node(); @@ -64075,11 +74790,11 @@ inline void Node::clear_min_max_expr() { } inline ::pg_query::MinMaxExpr* Node::release_min_max_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.min_max_expr) - if (_internal_has_min_max_expr()) { + if (node_case() == kMinMaxExpr) { clear_has_node(); - ::pg_query::MinMaxExpr* temp = _impl_.node_.min_max_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.min_max_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.min_max_expr_ = nullptr; return temp; @@ -64088,60 +74803,62 @@ inline ::pg_query::MinMaxExpr* Node::release_min_max_expr() { } } inline const ::pg_query::MinMaxExpr& Node::_internal_min_max_expr() const { - return _internal_has_min_max_expr() - ? *_impl_.node_.min_max_expr_ - : reinterpret_cast< ::pg_query::MinMaxExpr&>(::pg_query::_MinMaxExpr_default_instance_); + return node_case() == kMinMaxExpr ? *_impl_.node_.min_max_expr_ : reinterpret_cast<::pg_query::MinMaxExpr&>(::pg_query::_MinMaxExpr_default_instance_); } -inline const ::pg_query::MinMaxExpr& Node::min_max_expr() const { +inline const ::pg_query::MinMaxExpr& Node::min_max_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.min_max_expr) return _internal_min_max_expr(); } inline ::pg_query::MinMaxExpr* Node::unsafe_arena_release_min_max_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.min_max_expr) - if (_internal_has_min_max_expr()) { + if (node_case() == kMinMaxExpr) { clear_has_node(); - ::pg_query::MinMaxExpr* temp = _impl_.node_.min_max_expr_; + auto* temp = _impl_.node_.min_max_expr_; _impl_.node_.min_max_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_min_max_expr(::pg_query::MinMaxExpr* min_max_expr) { +inline void Node::unsafe_arena_set_allocated_min_max_expr(::pg_query::MinMaxExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (min_max_expr) { + if (value) { set_has_min_max_expr(); - _impl_.node_.min_max_expr_ = min_max_expr; + _impl_.node_.min_max_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.min_max_expr) } inline ::pg_query::MinMaxExpr* Node::_internal_mutable_min_max_expr() { - if (!_internal_has_min_max_expr()) { + if (node_case() != kMinMaxExpr) { clear_node(); set_has_min_max_expr(); - _impl_.node_.min_max_expr_ = CreateMaybeMessage< ::pg_query::MinMaxExpr >(GetArenaForAllocation()); + _impl_.node_.min_max_expr_ = CreateMaybeMessage<::pg_query::MinMaxExpr>(GetArena()); } return _impl_.node_.min_max_expr_; } -inline ::pg_query::MinMaxExpr* Node::mutable_min_max_expr() { +inline ::pg_query::MinMaxExpr* Node::mutable_min_max_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::MinMaxExpr* _msg = _internal_mutable_min_max_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.min_max_expr) return _msg; } -// .pg_query.SQLValueFunction sqlvalue_function = 35 [json_name = "SQLValueFunction"]; -inline bool Node::_internal_has_sqlvalue_function() const { +// .pg_query.SQLValueFunction sqlvalue_function = 36 [json_name = "SQLValueFunction"]; +inline bool Node::has_sqlvalue_function() const { return node_case() == kSqlvalueFunction; } -inline bool Node::has_sqlvalue_function() const { - return _internal_has_sqlvalue_function(); +inline bool Node::_internal_has_sqlvalue_function() const { + return node_case() == kSqlvalueFunction; } inline void Node::set_has_sqlvalue_function() { _impl_._oneof_case_[0] = kSqlvalueFunction; } inline void Node::clear_sqlvalue_function() { - if (_internal_has_sqlvalue_function()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSqlvalueFunction) { + if (GetArena() == nullptr) { delete _impl_.node_.sqlvalue_function_; } clear_has_node(); @@ -64149,11 +74866,11 @@ inline void Node::clear_sqlvalue_function() { } inline ::pg_query::SQLValueFunction* Node::release_sqlvalue_function() { // @@protoc_insertion_point(field_release:pg_query.Node.sqlvalue_function) - if (_internal_has_sqlvalue_function()) { + if (node_case() == kSqlvalueFunction) { clear_has_node(); - ::pg_query::SQLValueFunction* temp = _impl_.node_.sqlvalue_function_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.sqlvalue_function_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.sqlvalue_function_ = nullptr; return temp; @@ -64162,60 +74879,62 @@ inline ::pg_query::SQLValueFunction* Node::release_sqlvalue_function() { } } inline const ::pg_query::SQLValueFunction& Node::_internal_sqlvalue_function() const { - return _internal_has_sqlvalue_function() - ? *_impl_.node_.sqlvalue_function_ - : reinterpret_cast< ::pg_query::SQLValueFunction&>(::pg_query::_SQLValueFunction_default_instance_); + return node_case() == kSqlvalueFunction ? *_impl_.node_.sqlvalue_function_ : reinterpret_cast<::pg_query::SQLValueFunction&>(::pg_query::_SQLValueFunction_default_instance_); } -inline const ::pg_query::SQLValueFunction& Node::sqlvalue_function() const { +inline const ::pg_query::SQLValueFunction& Node::sqlvalue_function() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.sqlvalue_function) return _internal_sqlvalue_function(); } inline ::pg_query::SQLValueFunction* Node::unsafe_arena_release_sqlvalue_function() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.sqlvalue_function) - if (_internal_has_sqlvalue_function()) { + if (node_case() == kSqlvalueFunction) { clear_has_node(); - ::pg_query::SQLValueFunction* temp = _impl_.node_.sqlvalue_function_; + auto* temp = _impl_.node_.sqlvalue_function_; _impl_.node_.sqlvalue_function_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_sqlvalue_function(::pg_query::SQLValueFunction* sqlvalue_function) { +inline void Node::unsafe_arena_set_allocated_sqlvalue_function(::pg_query::SQLValueFunction* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (sqlvalue_function) { + if (value) { set_has_sqlvalue_function(); - _impl_.node_.sqlvalue_function_ = sqlvalue_function; + _impl_.node_.sqlvalue_function_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.sqlvalue_function) } inline ::pg_query::SQLValueFunction* Node::_internal_mutable_sqlvalue_function() { - if (!_internal_has_sqlvalue_function()) { + if (node_case() != kSqlvalueFunction) { clear_node(); set_has_sqlvalue_function(); - _impl_.node_.sqlvalue_function_ = CreateMaybeMessage< ::pg_query::SQLValueFunction >(GetArenaForAllocation()); + _impl_.node_.sqlvalue_function_ = CreateMaybeMessage<::pg_query::SQLValueFunction>(GetArena()); } return _impl_.node_.sqlvalue_function_; } -inline ::pg_query::SQLValueFunction* Node::mutable_sqlvalue_function() { +inline ::pg_query::SQLValueFunction* Node::mutable_sqlvalue_function() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::SQLValueFunction* _msg = _internal_mutable_sqlvalue_function(); // @@protoc_insertion_point(field_mutable:pg_query.Node.sqlvalue_function) return _msg; } -// .pg_query.XmlExpr xml_expr = 36 [json_name = "XmlExpr"]; -inline bool Node::_internal_has_xml_expr() const { +// .pg_query.XmlExpr xml_expr = 37 [json_name = "XmlExpr"]; +inline bool Node::has_xml_expr() const { return node_case() == kXmlExpr; } -inline bool Node::has_xml_expr() const { - return _internal_has_xml_expr(); +inline bool Node::_internal_has_xml_expr() const { + return node_case() == kXmlExpr; } inline void Node::set_has_xml_expr() { _impl_._oneof_case_[0] = kXmlExpr; } inline void Node::clear_xml_expr() { - if (_internal_has_xml_expr()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kXmlExpr) { + if (GetArena() == nullptr) { delete _impl_.node_.xml_expr_; } clear_has_node(); @@ -64223,11 +74942,11 @@ inline void Node::clear_xml_expr() { } inline ::pg_query::XmlExpr* Node::release_xml_expr() { // @@protoc_insertion_point(field_release:pg_query.Node.xml_expr) - if (_internal_has_xml_expr()) { + if (node_case() == kXmlExpr) { clear_has_node(); - ::pg_query::XmlExpr* temp = _impl_.node_.xml_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.xml_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.xml_expr_ = nullptr; return temp; @@ -64236,8052 +74955,7966 @@ inline ::pg_query::XmlExpr* Node::release_xml_expr() { } } inline const ::pg_query::XmlExpr& Node::_internal_xml_expr() const { - return _internal_has_xml_expr() - ? *_impl_.node_.xml_expr_ - : reinterpret_cast< ::pg_query::XmlExpr&>(::pg_query::_XmlExpr_default_instance_); + return node_case() == kXmlExpr ? *_impl_.node_.xml_expr_ : reinterpret_cast<::pg_query::XmlExpr&>(::pg_query::_XmlExpr_default_instance_); } -inline const ::pg_query::XmlExpr& Node::xml_expr() const { +inline const ::pg_query::XmlExpr& Node::xml_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.xml_expr) return _internal_xml_expr(); } inline ::pg_query::XmlExpr* Node::unsafe_arena_release_xml_expr() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.xml_expr) - if (_internal_has_xml_expr()) { + if (node_case() == kXmlExpr) { clear_has_node(); - ::pg_query::XmlExpr* temp = _impl_.node_.xml_expr_; + auto* temp = _impl_.node_.xml_expr_; _impl_.node_.xml_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_xml_expr(::pg_query::XmlExpr* xml_expr) { +inline void Node::unsafe_arena_set_allocated_xml_expr(::pg_query::XmlExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (xml_expr) { + if (value) { set_has_xml_expr(); - _impl_.node_.xml_expr_ = xml_expr; + _impl_.node_.xml_expr_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.xml_expr) } inline ::pg_query::XmlExpr* Node::_internal_mutable_xml_expr() { - if (!_internal_has_xml_expr()) { + if (node_case() != kXmlExpr) { clear_node(); set_has_xml_expr(); - _impl_.node_.xml_expr_ = CreateMaybeMessage< ::pg_query::XmlExpr >(GetArenaForAllocation()); + _impl_.node_.xml_expr_ = CreateMaybeMessage<::pg_query::XmlExpr>(GetArena()); } return _impl_.node_.xml_expr_; } -inline ::pg_query::XmlExpr* Node::mutable_xml_expr() { +inline ::pg_query::XmlExpr* Node::mutable_xml_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::XmlExpr* _msg = _internal_mutable_xml_expr(); // @@protoc_insertion_point(field_mutable:pg_query.Node.xml_expr) return _msg; } -// .pg_query.NullTest null_test = 37 [json_name = "NullTest"]; -inline bool Node::_internal_has_null_test() const { - return node_case() == kNullTest; +// .pg_query.JsonFormat json_format = 38 [json_name = "JsonFormat"]; +inline bool Node::has_json_format() const { + return node_case() == kJsonFormat; } -inline bool Node::has_null_test() const { - return _internal_has_null_test(); +inline bool Node::_internal_has_json_format() const { + return node_case() == kJsonFormat; } -inline void Node::set_has_null_test() { - _impl_._oneof_case_[0] = kNullTest; +inline void Node::set_has_json_format() { + _impl_._oneof_case_[0] = kJsonFormat; } -inline void Node::clear_null_test() { - if (_internal_has_null_test()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.null_test_; +inline void Node::clear_json_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonFormat) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_format_; } clear_has_node(); } } -inline ::pg_query::NullTest* Node::release_null_test() { - // @@protoc_insertion_point(field_release:pg_query.Node.null_test) - if (_internal_has_null_test()) { +inline ::pg_query::JsonFormat* Node::release_json_format() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_format) + if (node_case() == kJsonFormat) { clear_has_node(); - ::pg_query::NullTest* temp = _impl_.node_.null_test_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_format_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.null_test_ = nullptr; + _impl_.node_.json_format_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::NullTest& Node::_internal_null_test() const { - return _internal_has_null_test() - ? *_impl_.node_.null_test_ - : reinterpret_cast< ::pg_query::NullTest&>(::pg_query::_NullTest_default_instance_); +inline const ::pg_query::JsonFormat& Node::_internal_json_format() const { + return node_case() == kJsonFormat ? *_impl_.node_.json_format_ : reinterpret_cast<::pg_query::JsonFormat&>(::pg_query::_JsonFormat_default_instance_); } -inline const ::pg_query::NullTest& Node::null_test() const { - // @@protoc_insertion_point(field_get:pg_query.Node.null_test) - return _internal_null_test(); +inline const ::pg_query::JsonFormat& Node::json_format() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_format) + return _internal_json_format(); } -inline ::pg_query::NullTest* Node::unsafe_arena_release_null_test() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.null_test) - if (_internal_has_null_test()) { +inline ::pg_query::JsonFormat* Node::unsafe_arena_release_json_format() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_format) + if (node_case() == kJsonFormat) { clear_has_node(); - ::pg_query::NullTest* temp = _impl_.node_.null_test_; - _impl_.node_.null_test_ = nullptr; + auto* temp = _impl_.node_.json_format_; + _impl_.node_.json_format_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_null_test(::pg_query::NullTest* null_test) { +inline void Node::unsafe_arena_set_allocated_json_format(::pg_query::JsonFormat* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (null_test) { - set_has_null_test(); - _impl_.node_.null_test_ = null_test; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.null_test) -} -inline ::pg_query::NullTest* Node::_internal_mutable_null_test() { - if (!_internal_has_null_test()) { - clear_node(); - set_has_null_test(); - _impl_.node_.null_test_ = CreateMaybeMessage< ::pg_query::NullTest >(GetArenaForAllocation()); - } - return _impl_.node_.null_test_; -} -inline ::pg_query::NullTest* Node::mutable_null_test() { - ::pg_query::NullTest* _msg = _internal_mutable_null_test(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.null_test) - return _msg; -} - -// .pg_query.BooleanTest boolean_test = 38 [json_name = "BooleanTest"]; -inline bool Node::_internal_has_boolean_test() const { - return node_case() == kBooleanTest; -} -inline bool Node::has_boolean_test() const { - return _internal_has_boolean_test(); -} -inline void Node::set_has_boolean_test() { - _impl_._oneof_case_[0] = kBooleanTest; -} -inline void Node::clear_boolean_test() { - if (_internal_has_boolean_test()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.boolean_test_; - } - clear_has_node(); - } -} -inline ::pg_query::BooleanTest* Node::release_boolean_test() { - // @@protoc_insertion_point(field_release:pg_query.Node.boolean_test) - if (_internal_has_boolean_test()) { - clear_has_node(); - ::pg_query::BooleanTest* temp = _impl_.node_.boolean_test_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.node_.boolean_test_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::pg_query::BooleanTest& Node::_internal_boolean_test() const { - return _internal_has_boolean_test() - ? *_impl_.node_.boolean_test_ - : reinterpret_cast< ::pg_query::BooleanTest&>(::pg_query::_BooleanTest_default_instance_); -} -inline const ::pg_query::BooleanTest& Node::boolean_test() const { - // @@protoc_insertion_point(field_get:pg_query.Node.boolean_test) - return _internal_boolean_test(); -} -inline ::pg_query::BooleanTest* Node::unsafe_arena_release_boolean_test() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.boolean_test) - if (_internal_has_boolean_test()) { - clear_has_node(); - ::pg_query::BooleanTest* temp = _impl_.node_.boolean_test_; - _impl_.node_.boolean_test_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline void Node::unsafe_arena_set_allocated_boolean_test(::pg_query::BooleanTest* boolean_test) { - clear_node(); - if (boolean_test) { - set_has_boolean_test(); - _impl_.node_.boolean_test_ = boolean_test; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.boolean_test) -} -inline ::pg_query::BooleanTest* Node::_internal_mutable_boolean_test() { - if (!_internal_has_boolean_test()) { - clear_node(); - set_has_boolean_test(); - _impl_.node_.boolean_test_ = CreateMaybeMessage< ::pg_query::BooleanTest >(GetArenaForAllocation()); - } - return _impl_.node_.boolean_test_; -} -inline ::pg_query::BooleanTest* Node::mutable_boolean_test() { - ::pg_query::BooleanTest* _msg = _internal_mutable_boolean_test(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.boolean_test) - return _msg; -} - -// .pg_query.CoerceToDomain coerce_to_domain = 39 [json_name = "CoerceToDomain"]; -inline bool Node::_internal_has_coerce_to_domain() const { - return node_case() == kCoerceToDomain; -} -inline bool Node::has_coerce_to_domain() const { - return _internal_has_coerce_to_domain(); -} -inline void Node::set_has_coerce_to_domain() { - _impl_._oneof_case_[0] = kCoerceToDomain; -} -inline void Node::clear_coerce_to_domain() { - if (_internal_has_coerce_to_domain()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.coerce_to_domain_; - } - clear_has_node(); - } -} -inline ::pg_query::CoerceToDomain* Node::release_coerce_to_domain() { - // @@protoc_insertion_point(field_release:pg_query.Node.coerce_to_domain) - if (_internal_has_coerce_to_domain()) { - clear_has_node(); - ::pg_query::CoerceToDomain* temp = _impl_.node_.coerce_to_domain_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.node_.coerce_to_domain_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::pg_query::CoerceToDomain& Node::_internal_coerce_to_domain() const { - return _internal_has_coerce_to_domain() - ? *_impl_.node_.coerce_to_domain_ - : reinterpret_cast< ::pg_query::CoerceToDomain&>(::pg_query::_CoerceToDomain_default_instance_); -} -inline const ::pg_query::CoerceToDomain& Node::coerce_to_domain() const { - // @@protoc_insertion_point(field_get:pg_query.Node.coerce_to_domain) - return _internal_coerce_to_domain(); -} -inline ::pg_query::CoerceToDomain* Node::unsafe_arena_release_coerce_to_domain() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.coerce_to_domain) - if (_internal_has_coerce_to_domain()) { - clear_has_node(); - ::pg_query::CoerceToDomain* temp = _impl_.node_.coerce_to_domain_; - _impl_.node_.coerce_to_domain_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline void Node::unsafe_arena_set_allocated_coerce_to_domain(::pg_query::CoerceToDomain* coerce_to_domain) { - clear_node(); - if (coerce_to_domain) { - set_has_coerce_to_domain(); - _impl_.node_.coerce_to_domain_ = coerce_to_domain; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.coerce_to_domain) -} -inline ::pg_query::CoerceToDomain* Node::_internal_mutable_coerce_to_domain() { - if (!_internal_has_coerce_to_domain()) { - clear_node(); - set_has_coerce_to_domain(); - _impl_.node_.coerce_to_domain_ = CreateMaybeMessage< ::pg_query::CoerceToDomain >(GetArenaForAllocation()); - } - return _impl_.node_.coerce_to_domain_; -} -inline ::pg_query::CoerceToDomain* Node::mutable_coerce_to_domain() { - ::pg_query::CoerceToDomain* _msg = _internal_mutable_coerce_to_domain(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.coerce_to_domain) - return _msg; -} - -// .pg_query.CoerceToDomainValue coerce_to_domain_value = 40 [json_name = "CoerceToDomainValue"]; -inline bool Node::_internal_has_coerce_to_domain_value() const { - return node_case() == kCoerceToDomainValue; -} -inline bool Node::has_coerce_to_domain_value() const { - return _internal_has_coerce_to_domain_value(); -} -inline void Node::set_has_coerce_to_domain_value() { - _impl_._oneof_case_[0] = kCoerceToDomainValue; -} -inline void Node::clear_coerce_to_domain_value() { - if (_internal_has_coerce_to_domain_value()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.coerce_to_domain_value_; - } - clear_has_node(); - } -} -inline ::pg_query::CoerceToDomainValue* Node::release_coerce_to_domain_value() { - // @@protoc_insertion_point(field_release:pg_query.Node.coerce_to_domain_value) - if (_internal_has_coerce_to_domain_value()) { - clear_has_node(); - ::pg_query::CoerceToDomainValue* temp = _impl_.node_.coerce_to_domain_value_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.node_.coerce_to_domain_value_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::pg_query::CoerceToDomainValue& Node::_internal_coerce_to_domain_value() const { - return _internal_has_coerce_to_domain_value() - ? *_impl_.node_.coerce_to_domain_value_ - : reinterpret_cast< ::pg_query::CoerceToDomainValue&>(::pg_query::_CoerceToDomainValue_default_instance_); -} -inline const ::pg_query::CoerceToDomainValue& Node::coerce_to_domain_value() const { - // @@protoc_insertion_point(field_get:pg_query.Node.coerce_to_domain_value) - return _internal_coerce_to_domain_value(); -} -inline ::pg_query::CoerceToDomainValue* Node::unsafe_arena_release_coerce_to_domain_value() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.coerce_to_domain_value) - if (_internal_has_coerce_to_domain_value()) { - clear_has_node(); - ::pg_query::CoerceToDomainValue* temp = _impl_.node_.coerce_to_domain_value_; - _impl_.node_.coerce_to_domain_value_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline void Node::unsafe_arena_set_allocated_coerce_to_domain_value(::pg_query::CoerceToDomainValue* coerce_to_domain_value) { - clear_node(); - if (coerce_to_domain_value) { - set_has_coerce_to_domain_value(); - _impl_.node_.coerce_to_domain_value_ = coerce_to_domain_value; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.coerce_to_domain_value) -} -inline ::pg_query::CoerceToDomainValue* Node::_internal_mutable_coerce_to_domain_value() { - if (!_internal_has_coerce_to_domain_value()) { - clear_node(); - set_has_coerce_to_domain_value(); - _impl_.node_.coerce_to_domain_value_ = CreateMaybeMessage< ::pg_query::CoerceToDomainValue >(GetArenaForAllocation()); - } - return _impl_.node_.coerce_to_domain_value_; -} -inline ::pg_query::CoerceToDomainValue* Node::mutable_coerce_to_domain_value() { - ::pg_query::CoerceToDomainValue* _msg = _internal_mutable_coerce_to_domain_value(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.coerce_to_domain_value) - return _msg; -} - -// .pg_query.SetToDefault set_to_default = 41 [json_name = "SetToDefault"]; -inline bool Node::_internal_has_set_to_default() const { - return node_case() == kSetToDefault; -} -inline bool Node::has_set_to_default() const { - return _internal_has_set_to_default(); -} -inline void Node::set_has_set_to_default() { - _impl_._oneof_case_[0] = kSetToDefault; -} -inline void Node::clear_set_to_default() { - if (_internal_has_set_to_default()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.set_to_default_; - } - clear_has_node(); - } -} -inline ::pg_query::SetToDefault* Node::release_set_to_default() { - // @@protoc_insertion_point(field_release:pg_query.Node.set_to_default) - if (_internal_has_set_to_default()) { - clear_has_node(); - ::pg_query::SetToDefault* temp = _impl_.node_.set_to_default_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.node_.set_to_default_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::pg_query::SetToDefault& Node::_internal_set_to_default() const { - return _internal_has_set_to_default() - ? *_impl_.node_.set_to_default_ - : reinterpret_cast< ::pg_query::SetToDefault&>(::pg_query::_SetToDefault_default_instance_); -} -inline const ::pg_query::SetToDefault& Node::set_to_default() const { - // @@protoc_insertion_point(field_get:pg_query.Node.set_to_default) - return _internal_set_to_default(); -} -inline ::pg_query::SetToDefault* Node::unsafe_arena_release_set_to_default() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.set_to_default) - if (_internal_has_set_to_default()) { - clear_has_node(); - ::pg_query::SetToDefault* temp = _impl_.node_.set_to_default_; - _impl_.node_.set_to_default_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline void Node::unsafe_arena_set_allocated_set_to_default(::pg_query::SetToDefault* set_to_default) { - clear_node(); - if (set_to_default) { - set_has_set_to_default(); - _impl_.node_.set_to_default_ = set_to_default; + if (value) { + set_has_json_format(); + _impl_.node_.json_format_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.set_to_default) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_format) } -inline ::pg_query::SetToDefault* Node::_internal_mutable_set_to_default() { - if (!_internal_has_set_to_default()) { +inline ::pg_query::JsonFormat* Node::_internal_mutable_json_format() { + if (node_case() != kJsonFormat) { clear_node(); - set_has_set_to_default(); - _impl_.node_.set_to_default_ = CreateMaybeMessage< ::pg_query::SetToDefault >(GetArenaForAllocation()); + set_has_json_format(); + _impl_.node_.json_format_ = CreateMaybeMessage<::pg_query::JsonFormat>(GetArena()); } - return _impl_.node_.set_to_default_; + return _impl_.node_.json_format_; } -inline ::pg_query::SetToDefault* Node::mutable_set_to_default() { - ::pg_query::SetToDefault* _msg = _internal_mutable_set_to_default(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.set_to_default) +inline ::pg_query::JsonFormat* Node::mutable_json_format() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonFormat* _msg = _internal_mutable_json_format(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_format) return _msg; } -// .pg_query.CurrentOfExpr current_of_expr = 42 [json_name = "CurrentOfExpr"]; -inline bool Node::_internal_has_current_of_expr() const { - return node_case() == kCurrentOfExpr; +// .pg_query.JsonReturning json_returning = 39 [json_name = "JsonReturning"]; +inline bool Node::has_json_returning() const { + return node_case() == kJsonReturning; } -inline bool Node::has_current_of_expr() const { - return _internal_has_current_of_expr(); +inline bool Node::_internal_has_json_returning() const { + return node_case() == kJsonReturning; } -inline void Node::set_has_current_of_expr() { - _impl_._oneof_case_[0] = kCurrentOfExpr; +inline void Node::set_has_json_returning() { + _impl_._oneof_case_[0] = kJsonReturning; } -inline void Node::clear_current_of_expr() { - if (_internal_has_current_of_expr()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.current_of_expr_; +inline void Node::clear_json_returning() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonReturning) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_returning_; } clear_has_node(); } } -inline ::pg_query::CurrentOfExpr* Node::release_current_of_expr() { - // @@protoc_insertion_point(field_release:pg_query.Node.current_of_expr) - if (_internal_has_current_of_expr()) { +inline ::pg_query::JsonReturning* Node::release_json_returning() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_returning) + if (node_case() == kJsonReturning) { clear_has_node(); - ::pg_query::CurrentOfExpr* temp = _impl_.node_.current_of_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_returning_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.current_of_expr_ = nullptr; + _impl_.node_.json_returning_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CurrentOfExpr& Node::_internal_current_of_expr() const { - return _internal_has_current_of_expr() - ? *_impl_.node_.current_of_expr_ - : reinterpret_cast< ::pg_query::CurrentOfExpr&>(::pg_query::_CurrentOfExpr_default_instance_); +inline const ::pg_query::JsonReturning& Node::_internal_json_returning() const { + return node_case() == kJsonReturning ? *_impl_.node_.json_returning_ : reinterpret_cast<::pg_query::JsonReturning&>(::pg_query::_JsonReturning_default_instance_); } -inline const ::pg_query::CurrentOfExpr& Node::current_of_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Node.current_of_expr) - return _internal_current_of_expr(); +inline const ::pg_query::JsonReturning& Node::json_returning() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_returning) + return _internal_json_returning(); } -inline ::pg_query::CurrentOfExpr* Node::unsafe_arena_release_current_of_expr() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.current_of_expr) - if (_internal_has_current_of_expr()) { +inline ::pg_query::JsonReturning* Node::unsafe_arena_release_json_returning() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_returning) + if (node_case() == kJsonReturning) { clear_has_node(); - ::pg_query::CurrentOfExpr* temp = _impl_.node_.current_of_expr_; - _impl_.node_.current_of_expr_ = nullptr; + auto* temp = _impl_.node_.json_returning_; + _impl_.node_.json_returning_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_current_of_expr(::pg_query::CurrentOfExpr* current_of_expr) { +inline void Node::unsafe_arena_set_allocated_json_returning(::pg_query::JsonReturning* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (current_of_expr) { - set_has_current_of_expr(); - _impl_.node_.current_of_expr_ = current_of_expr; + if (value) { + set_has_json_returning(); + _impl_.node_.json_returning_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.current_of_expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_returning) } -inline ::pg_query::CurrentOfExpr* Node::_internal_mutable_current_of_expr() { - if (!_internal_has_current_of_expr()) { +inline ::pg_query::JsonReturning* Node::_internal_mutable_json_returning() { + if (node_case() != kJsonReturning) { clear_node(); - set_has_current_of_expr(); - _impl_.node_.current_of_expr_ = CreateMaybeMessage< ::pg_query::CurrentOfExpr >(GetArenaForAllocation()); + set_has_json_returning(); + _impl_.node_.json_returning_ = CreateMaybeMessage<::pg_query::JsonReturning>(GetArena()); } - return _impl_.node_.current_of_expr_; + return _impl_.node_.json_returning_; } -inline ::pg_query::CurrentOfExpr* Node::mutable_current_of_expr() { - ::pg_query::CurrentOfExpr* _msg = _internal_mutable_current_of_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.current_of_expr) +inline ::pg_query::JsonReturning* Node::mutable_json_returning() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonReturning* _msg = _internal_mutable_json_returning(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_returning) return _msg; } -// .pg_query.NextValueExpr next_value_expr = 43 [json_name = "NextValueExpr"]; -inline bool Node::_internal_has_next_value_expr() const { - return node_case() == kNextValueExpr; +// .pg_query.JsonValueExpr json_value_expr = 40 [json_name = "JsonValueExpr"]; +inline bool Node::has_json_value_expr() const { + return node_case() == kJsonValueExpr; } -inline bool Node::has_next_value_expr() const { - return _internal_has_next_value_expr(); +inline bool Node::_internal_has_json_value_expr() const { + return node_case() == kJsonValueExpr; } -inline void Node::set_has_next_value_expr() { - _impl_._oneof_case_[0] = kNextValueExpr; +inline void Node::set_has_json_value_expr() { + _impl_._oneof_case_[0] = kJsonValueExpr; } -inline void Node::clear_next_value_expr() { - if (_internal_has_next_value_expr()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.next_value_expr_; +inline void Node::clear_json_value_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonValueExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_value_expr_; } clear_has_node(); } } -inline ::pg_query::NextValueExpr* Node::release_next_value_expr() { - // @@protoc_insertion_point(field_release:pg_query.Node.next_value_expr) - if (_internal_has_next_value_expr()) { +inline ::pg_query::JsonValueExpr* Node::release_json_value_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_value_expr) + if (node_case() == kJsonValueExpr) { clear_has_node(); - ::pg_query::NextValueExpr* temp = _impl_.node_.next_value_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_value_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.next_value_expr_ = nullptr; + _impl_.node_.json_value_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::NextValueExpr& Node::_internal_next_value_expr() const { - return _internal_has_next_value_expr() - ? *_impl_.node_.next_value_expr_ - : reinterpret_cast< ::pg_query::NextValueExpr&>(::pg_query::_NextValueExpr_default_instance_); +inline const ::pg_query::JsonValueExpr& Node::_internal_json_value_expr() const { + return node_case() == kJsonValueExpr ? *_impl_.node_.json_value_expr_ : reinterpret_cast<::pg_query::JsonValueExpr&>(::pg_query::_JsonValueExpr_default_instance_); } -inline const ::pg_query::NextValueExpr& Node::next_value_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Node.next_value_expr) - return _internal_next_value_expr(); +inline const ::pg_query::JsonValueExpr& Node::json_value_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_value_expr) + return _internal_json_value_expr(); } -inline ::pg_query::NextValueExpr* Node::unsafe_arena_release_next_value_expr() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.next_value_expr) - if (_internal_has_next_value_expr()) { +inline ::pg_query::JsonValueExpr* Node::unsafe_arena_release_json_value_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_value_expr) + if (node_case() == kJsonValueExpr) { clear_has_node(); - ::pg_query::NextValueExpr* temp = _impl_.node_.next_value_expr_; - _impl_.node_.next_value_expr_ = nullptr; + auto* temp = _impl_.node_.json_value_expr_; + _impl_.node_.json_value_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_next_value_expr(::pg_query::NextValueExpr* next_value_expr) { +inline void Node::unsafe_arena_set_allocated_json_value_expr(::pg_query::JsonValueExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (next_value_expr) { - set_has_next_value_expr(); - _impl_.node_.next_value_expr_ = next_value_expr; + if (value) { + set_has_json_value_expr(); + _impl_.node_.json_value_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.next_value_expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_value_expr) } -inline ::pg_query::NextValueExpr* Node::_internal_mutable_next_value_expr() { - if (!_internal_has_next_value_expr()) { +inline ::pg_query::JsonValueExpr* Node::_internal_mutable_json_value_expr() { + if (node_case() != kJsonValueExpr) { clear_node(); - set_has_next_value_expr(); - _impl_.node_.next_value_expr_ = CreateMaybeMessage< ::pg_query::NextValueExpr >(GetArenaForAllocation()); + set_has_json_value_expr(); + _impl_.node_.json_value_expr_ = CreateMaybeMessage<::pg_query::JsonValueExpr>(GetArena()); } - return _impl_.node_.next_value_expr_; + return _impl_.node_.json_value_expr_; } -inline ::pg_query::NextValueExpr* Node::mutable_next_value_expr() { - ::pg_query::NextValueExpr* _msg = _internal_mutable_next_value_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.next_value_expr) +inline ::pg_query::JsonValueExpr* Node::mutable_json_value_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonValueExpr* _msg = _internal_mutable_json_value_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_value_expr) return _msg; } -// .pg_query.InferenceElem inference_elem = 44 [json_name = "InferenceElem"]; -inline bool Node::_internal_has_inference_elem() const { - return node_case() == kInferenceElem; +// .pg_query.JsonConstructorExpr json_constructor_expr = 41 [json_name = "JsonConstructorExpr"]; +inline bool Node::has_json_constructor_expr() const { + return node_case() == kJsonConstructorExpr; } -inline bool Node::has_inference_elem() const { - return _internal_has_inference_elem(); +inline bool Node::_internal_has_json_constructor_expr() const { + return node_case() == kJsonConstructorExpr; } -inline void Node::set_has_inference_elem() { - _impl_._oneof_case_[0] = kInferenceElem; +inline void Node::set_has_json_constructor_expr() { + _impl_._oneof_case_[0] = kJsonConstructorExpr; } -inline void Node::clear_inference_elem() { - if (_internal_has_inference_elem()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.inference_elem_; +inline void Node::clear_json_constructor_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonConstructorExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_constructor_expr_; } clear_has_node(); } } -inline ::pg_query::InferenceElem* Node::release_inference_elem() { - // @@protoc_insertion_point(field_release:pg_query.Node.inference_elem) - if (_internal_has_inference_elem()) { +inline ::pg_query::JsonConstructorExpr* Node::release_json_constructor_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_constructor_expr) + if (node_case() == kJsonConstructorExpr) { clear_has_node(); - ::pg_query::InferenceElem* temp = _impl_.node_.inference_elem_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_constructor_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.inference_elem_ = nullptr; + _impl_.node_.json_constructor_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::InferenceElem& Node::_internal_inference_elem() const { - return _internal_has_inference_elem() - ? *_impl_.node_.inference_elem_ - : reinterpret_cast< ::pg_query::InferenceElem&>(::pg_query::_InferenceElem_default_instance_); +inline const ::pg_query::JsonConstructorExpr& Node::_internal_json_constructor_expr() const { + return node_case() == kJsonConstructorExpr ? *_impl_.node_.json_constructor_expr_ : reinterpret_cast<::pg_query::JsonConstructorExpr&>(::pg_query::_JsonConstructorExpr_default_instance_); } -inline const ::pg_query::InferenceElem& Node::inference_elem() const { - // @@protoc_insertion_point(field_get:pg_query.Node.inference_elem) - return _internal_inference_elem(); +inline const ::pg_query::JsonConstructorExpr& Node::json_constructor_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_constructor_expr) + return _internal_json_constructor_expr(); } -inline ::pg_query::InferenceElem* Node::unsafe_arena_release_inference_elem() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.inference_elem) - if (_internal_has_inference_elem()) { +inline ::pg_query::JsonConstructorExpr* Node::unsafe_arena_release_json_constructor_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_constructor_expr) + if (node_case() == kJsonConstructorExpr) { clear_has_node(); - ::pg_query::InferenceElem* temp = _impl_.node_.inference_elem_; - _impl_.node_.inference_elem_ = nullptr; + auto* temp = _impl_.node_.json_constructor_expr_; + _impl_.node_.json_constructor_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_inference_elem(::pg_query::InferenceElem* inference_elem) { +inline void Node::unsafe_arena_set_allocated_json_constructor_expr(::pg_query::JsonConstructorExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (inference_elem) { - set_has_inference_elem(); - _impl_.node_.inference_elem_ = inference_elem; + if (value) { + set_has_json_constructor_expr(); + _impl_.node_.json_constructor_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.inference_elem) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_constructor_expr) } -inline ::pg_query::InferenceElem* Node::_internal_mutable_inference_elem() { - if (!_internal_has_inference_elem()) { +inline ::pg_query::JsonConstructorExpr* Node::_internal_mutable_json_constructor_expr() { + if (node_case() != kJsonConstructorExpr) { clear_node(); - set_has_inference_elem(); - _impl_.node_.inference_elem_ = CreateMaybeMessage< ::pg_query::InferenceElem >(GetArenaForAllocation()); + set_has_json_constructor_expr(); + _impl_.node_.json_constructor_expr_ = CreateMaybeMessage<::pg_query::JsonConstructorExpr>(GetArena()); } - return _impl_.node_.inference_elem_; + return _impl_.node_.json_constructor_expr_; } -inline ::pg_query::InferenceElem* Node::mutable_inference_elem() { - ::pg_query::InferenceElem* _msg = _internal_mutable_inference_elem(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.inference_elem) +inline ::pg_query::JsonConstructorExpr* Node::mutable_json_constructor_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonConstructorExpr* _msg = _internal_mutable_json_constructor_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_constructor_expr) return _msg; } -// .pg_query.TargetEntry target_entry = 45 [json_name = "TargetEntry"]; -inline bool Node::_internal_has_target_entry() const { - return node_case() == kTargetEntry; +// .pg_query.JsonIsPredicate json_is_predicate = 42 [json_name = "JsonIsPredicate"]; +inline bool Node::has_json_is_predicate() const { + return node_case() == kJsonIsPredicate; } -inline bool Node::has_target_entry() const { - return _internal_has_target_entry(); +inline bool Node::_internal_has_json_is_predicate() const { + return node_case() == kJsonIsPredicate; } -inline void Node::set_has_target_entry() { - _impl_._oneof_case_[0] = kTargetEntry; +inline void Node::set_has_json_is_predicate() { + _impl_._oneof_case_[0] = kJsonIsPredicate; } -inline void Node::clear_target_entry() { - if (_internal_has_target_entry()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.target_entry_; +inline void Node::clear_json_is_predicate() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonIsPredicate) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_is_predicate_; } clear_has_node(); } } -inline ::pg_query::TargetEntry* Node::release_target_entry() { - // @@protoc_insertion_point(field_release:pg_query.Node.target_entry) - if (_internal_has_target_entry()) { +inline ::pg_query::JsonIsPredicate* Node::release_json_is_predicate() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_is_predicate) + if (node_case() == kJsonIsPredicate) { clear_has_node(); - ::pg_query::TargetEntry* temp = _impl_.node_.target_entry_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_is_predicate_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.target_entry_ = nullptr; + _impl_.node_.json_is_predicate_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::TargetEntry& Node::_internal_target_entry() const { - return _internal_has_target_entry() - ? *_impl_.node_.target_entry_ - : reinterpret_cast< ::pg_query::TargetEntry&>(::pg_query::_TargetEntry_default_instance_); +inline const ::pg_query::JsonIsPredicate& Node::_internal_json_is_predicate() const { + return node_case() == kJsonIsPredicate ? *_impl_.node_.json_is_predicate_ : reinterpret_cast<::pg_query::JsonIsPredicate&>(::pg_query::_JsonIsPredicate_default_instance_); } -inline const ::pg_query::TargetEntry& Node::target_entry() const { - // @@protoc_insertion_point(field_get:pg_query.Node.target_entry) - return _internal_target_entry(); +inline const ::pg_query::JsonIsPredicate& Node::json_is_predicate() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_is_predicate) + return _internal_json_is_predicate(); } -inline ::pg_query::TargetEntry* Node::unsafe_arena_release_target_entry() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.target_entry) - if (_internal_has_target_entry()) { +inline ::pg_query::JsonIsPredicate* Node::unsafe_arena_release_json_is_predicate() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_is_predicate) + if (node_case() == kJsonIsPredicate) { clear_has_node(); - ::pg_query::TargetEntry* temp = _impl_.node_.target_entry_; - _impl_.node_.target_entry_ = nullptr; + auto* temp = _impl_.node_.json_is_predicate_; + _impl_.node_.json_is_predicate_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_target_entry(::pg_query::TargetEntry* target_entry) { +inline void Node::unsafe_arena_set_allocated_json_is_predicate(::pg_query::JsonIsPredicate* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (target_entry) { - set_has_target_entry(); - _impl_.node_.target_entry_ = target_entry; + if (value) { + set_has_json_is_predicate(); + _impl_.node_.json_is_predicate_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.target_entry) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_is_predicate) } -inline ::pg_query::TargetEntry* Node::_internal_mutable_target_entry() { - if (!_internal_has_target_entry()) { +inline ::pg_query::JsonIsPredicate* Node::_internal_mutable_json_is_predicate() { + if (node_case() != kJsonIsPredicate) { clear_node(); - set_has_target_entry(); - _impl_.node_.target_entry_ = CreateMaybeMessage< ::pg_query::TargetEntry >(GetArenaForAllocation()); + set_has_json_is_predicate(); + _impl_.node_.json_is_predicate_ = CreateMaybeMessage<::pg_query::JsonIsPredicate>(GetArena()); } - return _impl_.node_.target_entry_; + return _impl_.node_.json_is_predicate_; } -inline ::pg_query::TargetEntry* Node::mutable_target_entry() { - ::pg_query::TargetEntry* _msg = _internal_mutable_target_entry(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.target_entry) +inline ::pg_query::JsonIsPredicate* Node::mutable_json_is_predicate() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonIsPredicate* _msg = _internal_mutable_json_is_predicate(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_is_predicate) return _msg; } -// .pg_query.RangeTblRef range_tbl_ref = 46 [json_name = "RangeTblRef"]; -inline bool Node::_internal_has_range_tbl_ref() const { - return node_case() == kRangeTblRef; +// .pg_query.NullTest null_test = 43 [json_name = "NullTest"]; +inline bool Node::has_null_test() const { + return node_case() == kNullTest; } -inline bool Node::has_range_tbl_ref() const { - return _internal_has_range_tbl_ref(); +inline bool Node::_internal_has_null_test() const { + return node_case() == kNullTest; } -inline void Node::set_has_range_tbl_ref() { - _impl_._oneof_case_[0] = kRangeTblRef; +inline void Node::set_has_null_test() { + _impl_._oneof_case_[0] = kNullTest; } -inline void Node::clear_range_tbl_ref() { - if (_internal_has_range_tbl_ref()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.range_tbl_ref_; +inline void Node::clear_null_test() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kNullTest) { + if (GetArena() == nullptr) { + delete _impl_.node_.null_test_; } clear_has_node(); } } -inline ::pg_query::RangeTblRef* Node::release_range_tbl_ref() { - // @@protoc_insertion_point(field_release:pg_query.Node.range_tbl_ref) - if (_internal_has_range_tbl_ref()) { +inline ::pg_query::NullTest* Node::release_null_test() { + // @@protoc_insertion_point(field_release:pg_query.Node.null_test) + if (node_case() == kNullTest) { clear_has_node(); - ::pg_query::RangeTblRef* temp = _impl_.node_.range_tbl_ref_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.null_test_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.range_tbl_ref_ = nullptr; + _impl_.node_.null_test_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RangeTblRef& Node::_internal_range_tbl_ref() const { - return _internal_has_range_tbl_ref() - ? *_impl_.node_.range_tbl_ref_ - : reinterpret_cast< ::pg_query::RangeTblRef&>(::pg_query::_RangeTblRef_default_instance_); +inline const ::pg_query::NullTest& Node::_internal_null_test() const { + return node_case() == kNullTest ? *_impl_.node_.null_test_ : reinterpret_cast<::pg_query::NullTest&>(::pg_query::_NullTest_default_instance_); } -inline const ::pg_query::RangeTblRef& Node::range_tbl_ref() const { - // @@protoc_insertion_point(field_get:pg_query.Node.range_tbl_ref) - return _internal_range_tbl_ref(); +inline const ::pg_query::NullTest& Node::null_test() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.null_test) + return _internal_null_test(); } -inline ::pg_query::RangeTblRef* Node::unsafe_arena_release_range_tbl_ref() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_tbl_ref) - if (_internal_has_range_tbl_ref()) { +inline ::pg_query::NullTest* Node::unsafe_arena_release_null_test() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.null_test) + if (node_case() == kNullTest) { clear_has_node(); - ::pg_query::RangeTblRef* temp = _impl_.node_.range_tbl_ref_; - _impl_.node_.range_tbl_ref_ = nullptr; + auto* temp = _impl_.node_.null_test_; + _impl_.node_.null_test_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_range_tbl_ref(::pg_query::RangeTblRef* range_tbl_ref) { +inline void Node::unsafe_arena_set_allocated_null_test(::pg_query::NullTest* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (range_tbl_ref) { - set_has_range_tbl_ref(); - _impl_.node_.range_tbl_ref_ = range_tbl_ref; + if (value) { + set_has_null_test(); + _impl_.node_.null_test_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_tbl_ref) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.null_test) } -inline ::pg_query::RangeTblRef* Node::_internal_mutable_range_tbl_ref() { - if (!_internal_has_range_tbl_ref()) { +inline ::pg_query::NullTest* Node::_internal_mutable_null_test() { + if (node_case() != kNullTest) { clear_node(); - set_has_range_tbl_ref(); - _impl_.node_.range_tbl_ref_ = CreateMaybeMessage< ::pg_query::RangeTblRef >(GetArenaForAllocation()); + set_has_null_test(); + _impl_.node_.null_test_ = CreateMaybeMessage<::pg_query::NullTest>(GetArena()); } - return _impl_.node_.range_tbl_ref_; + return _impl_.node_.null_test_; } -inline ::pg_query::RangeTblRef* Node::mutable_range_tbl_ref() { - ::pg_query::RangeTblRef* _msg = _internal_mutable_range_tbl_ref(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.range_tbl_ref) +inline ::pg_query::NullTest* Node::mutable_null_test() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::NullTest* _msg = _internal_mutable_null_test(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.null_test) return _msg; } -// .pg_query.JoinExpr join_expr = 47 [json_name = "JoinExpr"]; -inline bool Node::_internal_has_join_expr() const { - return node_case() == kJoinExpr; +// .pg_query.BooleanTest boolean_test = 44 [json_name = "BooleanTest"]; +inline bool Node::has_boolean_test() const { + return node_case() == kBooleanTest; } -inline bool Node::has_join_expr() const { - return _internal_has_join_expr(); +inline bool Node::_internal_has_boolean_test() const { + return node_case() == kBooleanTest; } -inline void Node::set_has_join_expr() { - _impl_._oneof_case_[0] = kJoinExpr; +inline void Node::set_has_boolean_test() { + _impl_._oneof_case_[0] = kBooleanTest; } -inline void Node::clear_join_expr() { - if (_internal_has_join_expr()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.join_expr_; +inline void Node::clear_boolean_test() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kBooleanTest) { + if (GetArena() == nullptr) { + delete _impl_.node_.boolean_test_; } clear_has_node(); } } -inline ::pg_query::JoinExpr* Node::release_join_expr() { - // @@protoc_insertion_point(field_release:pg_query.Node.join_expr) - if (_internal_has_join_expr()) { +inline ::pg_query::BooleanTest* Node::release_boolean_test() { + // @@protoc_insertion_point(field_release:pg_query.Node.boolean_test) + if (node_case() == kBooleanTest) { clear_has_node(); - ::pg_query::JoinExpr* temp = _impl_.node_.join_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.boolean_test_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.join_expr_ = nullptr; + _impl_.node_.boolean_test_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::JoinExpr& Node::_internal_join_expr() const { - return _internal_has_join_expr() - ? *_impl_.node_.join_expr_ - : reinterpret_cast< ::pg_query::JoinExpr&>(::pg_query::_JoinExpr_default_instance_); +inline const ::pg_query::BooleanTest& Node::_internal_boolean_test() const { + return node_case() == kBooleanTest ? *_impl_.node_.boolean_test_ : reinterpret_cast<::pg_query::BooleanTest&>(::pg_query::_BooleanTest_default_instance_); } -inline const ::pg_query::JoinExpr& Node::join_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Node.join_expr) - return _internal_join_expr(); +inline const ::pg_query::BooleanTest& Node::boolean_test() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.boolean_test) + return _internal_boolean_test(); } -inline ::pg_query::JoinExpr* Node::unsafe_arena_release_join_expr() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.join_expr) - if (_internal_has_join_expr()) { +inline ::pg_query::BooleanTest* Node::unsafe_arena_release_boolean_test() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.boolean_test) + if (node_case() == kBooleanTest) { clear_has_node(); - ::pg_query::JoinExpr* temp = _impl_.node_.join_expr_; - _impl_.node_.join_expr_ = nullptr; + auto* temp = _impl_.node_.boolean_test_; + _impl_.node_.boolean_test_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_join_expr(::pg_query::JoinExpr* join_expr) { +inline void Node::unsafe_arena_set_allocated_boolean_test(::pg_query::BooleanTest* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (join_expr) { - set_has_join_expr(); - _impl_.node_.join_expr_ = join_expr; + if (value) { + set_has_boolean_test(); + _impl_.node_.boolean_test_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.join_expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.boolean_test) } -inline ::pg_query::JoinExpr* Node::_internal_mutable_join_expr() { - if (!_internal_has_join_expr()) { +inline ::pg_query::BooleanTest* Node::_internal_mutable_boolean_test() { + if (node_case() != kBooleanTest) { clear_node(); - set_has_join_expr(); - _impl_.node_.join_expr_ = CreateMaybeMessage< ::pg_query::JoinExpr >(GetArenaForAllocation()); + set_has_boolean_test(); + _impl_.node_.boolean_test_ = CreateMaybeMessage<::pg_query::BooleanTest>(GetArena()); } - return _impl_.node_.join_expr_; + return _impl_.node_.boolean_test_; } -inline ::pg_query::JoinExpr* Node::mutable_join_expr() { - ::pg_query::JoinExpr* _msg = _internal_mutable_join_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.join_expr) +inline ::pg_query::BooleanTest* Node::mutable_boolean_test() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::BooleanTest* _msg = _internal_mutable_boolean_test(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.boolean_test) return _msg; } -// .pg_query.FromExpr from_expr = 48 [json_name = "FromExpr"]; -inline bool Node::_internal_has_from_expr() const { - return node_case() == kFromExpr; +// .pg_query.CoerceToDomain coerce_to_domain = 45 [json_name = "CoerceToDomain"]; +inline bool Node::has_coerce_to_domain() const { + return node_case() == kCoerceToDomain; } -inline bool Node::has_from_expr() const { - return _internal_has_from_expr(); +inline bool Node::_internal_has_coerce_to_domain() const { + return node_case() == kCoerceToDomain; } -inline void Node::set_has_from_expr() { - _impl_._oneof_case_[0] = kFromExpr; +inline void Node::set_has_coerce_to_domain() { + _impl_._oneof_case_[0] = kCoerceToDomain; } -inline void Node::clear_from_expr() { - if (_internal_has_from_expr()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.from_expr_; +inline void Node::clear_coerce_to_domain() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCoerceToDomain) { + if (GetArena() == nullptr) { + delete _impl_.node_.coerce_to_domain_; } clear_has_node(); } } -inline ::pg_query::FromExpr* Node::release_from_expr() { - // @@protoc_insertion_point(field_release:pg_query.Node.from_expr) - if (_internal_has_from_expr()) { +inline ::pg_query::CoerceToDomain* Node::release_coerce_to_domain() { + // @@protoc_insertion_point(field_release:pg_query.Node.coerce_to_domain) + if (node_case() == kCoerceToDomain) { clear_has_node(); - ::pg_query::FromExpr* temp = _impl_.node_.from_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.coerce_to_domain_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.from_expr_ = nullptr; + _impl_.node_.coerce_to_domain_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::FromExpr& Node::_internal_from_expr() const { - return _internal_has_from_expr() - ? *_impl_.node_.from_expr_ - : reinterpret_cast< ::pg_query::FromExpr&>(::pg_query::_FromExpr_default_instance_); +inline const ::pg_query::CoerceToDomain& Node::_internal_coerce_to_domain() const { + return node_case() == kCoerceToDomain ? *_impl_.node_.coerce_to_domain_ : reinterpret_cast<::pg_query::CoerceToDomain&>(::pg_query::_CoerceToDomain_default_instance_); } -inline const ::pg_query::FromExpr& Node::from_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Node.from_expr) - return _internal_from_expr(); +inline const ::pg_query::CoerceToDomain& Node::coerce_to_domain() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.coerce_to_domain) + return _internal_coerce_to_domain(); } -inline ::pg_query::FromExpr* Node::unsafe_arena_release_from_expr() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.from_expr) - if (_internal_has_from_expr()) { +inline ::pg_query::CoerceToDomain* Node::unsafe_arena_release_coerce_to_domain() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.coerce_to_domain) + if (node_case() == kCoerceToDomain) { clear_has_node(); - ::pg_query::FromExpr* temp = _impl_.node_.from_expr_; - _impl_.node_.from_expr_ = nullptr; + auto* temp = _impl_.node_.coerce_to_domain_; + _impl_.node_.coerce_to_domain_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_from_expr(::pg_query::FromExpr* from_expr) { +inline void Node::unsafe_arena_set_allocated_coerce_to_domain(::pg_query::CoerceToDomain* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (from_expr) { - set_has_from_expr(); - _impl_.node_.from_expr_ = from_expr; + if (value) { + set_has_coerce_to_domain(); + _impl_.node_.coerce_to_domain_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.from_expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.coerce_to_domain) } -inline ::pg_query::FromExpr* Node::_internal_mutable_from_expr() { - if (!_internal_has_from_expr()) { +inline ::pg_query::CoerceToDomain* Node::_internal_mutable_coerce_to_domain() { + if (node_case() != kCoerceToDomain) { clear_node(); - set_has_from_expr(); - _impl_.node_.from_expr_ = CreateMaybeMessage< ::pg_query::FromExpr >(GetArenaForAllocation()); + set_has_coerce_to_domain(); + _impl_.node_.coerce_to_domain_ = CreateMaybeMessage<::pg_query::CoerceToDomain>(GetArena()); } - return _impl_.node_.from_expr_; + return _impl_.node_.coerce_to_domain_; } -inline ::pg_query::FromExpr* Node::mutable_from_expr() { - ::pg_query::FromExpr* _msg = _internal_mutable_from_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.from_expr) +inline ::pg_query::CoerceToDomain* Node::mutable_coerce_to_domain() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CoerceToDomain* _msg = _internal_mutable_coerce_to_domain(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.coerce_to_domain) return _msg; } -// .pg_query.OnConflictExpr on_conflict_expr = 49 [json_name = "OnConflictExpr"]; -inline bool Node::_internal_has_on_conflict_expr() const { - return node_case() == kOnConflictExpr; +// .pg_query.CoerceToDomainValue coerce_to_domain_value = 46 [json_name = "CoerceToDomainValue"]; +inline bool Node::has_coerce_to_domain_value() const { + return node_case() == kCoerceToDomainValue; } -inline bool Node::has_on_conflict_expr() const { - return _internal_has_on_conflict_expr(); +inline bool Node::_internal_has_coerce_to_domain_value() const { + return node_case() == kCoerceToDomainValue; } -inline void Node::set_has_on_conflict_expr() { - _impl_._oneof_case_[0] = kOnConflictExpr; +inline void Node::set_has_coerce_to_domain_value() { + _impl_._oneof_case_[0] = kCoerceToDomainValue; } -inline void Node::clear_on_conflict_expr() { - if (_internal_has_on_conflict_expr()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.on_conflict_expr_; +inline void Node::clear_coerce_to_domain_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCoerceToDomainValue) { + if (GetArena() == nullptr) { + delete _impl_.node_.coerce_to_domain_value_; } clear_has_node(); } } -inline ::pg_query::OnConflictExpr* Node::release_on_conflict_expr() { - // @@protoc_insertion_point(field_release:pg_query.Node.on_conflict_expr) - if (_internal_has_on_conflict_expr()) { +inline ::pg_query::CoerceToDomainValue* Node::release_coerce_to_domain_value() { + // @@protoc_insertion_point(field_release:pg_query.Node.coerce_to_domain_value) + if (node_case() == kCoerceToDomainValue) { clear_has_node(); - ::pg_query::OnConflictExpr* temp = _impl_.node_.on_conflict_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.coerce_to_domain_value_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.on_conflict_expr_ = nullptr; + _impl_.node_.coerce_to_domain_value_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::OnConflictExpr& Node::_internal_on_conflict_expr() const { - return _internal_has_on_conflict_expr() - ? *_impl_.node_.on_conflict_expr_ - : reinterpret_cast< ::pg_query::OnConflictExpr&>(::pg_query::_OnConflictExpr_default_instance_); +inline const ::pg_query::CoerceToDomainValue& Node::_internal_coerce_to_domain_value() const { + return node_case() == kCoerceToDomainValue ? *_impl_.node_.coerce_to_domain_value_ : reinterpret_cast<::pg_query::CoerceToDomainValue&>(::pg_query::_CoerceToDomainValue_default_instance_); } -inline const ::pg_query::OnConflictExpr& Node::on_conflict_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Node.on_conflict_expr) - return _internal_on_conflict_expr(); +inline const ::pg_query::CoerceToDomainValue& Node::coerce_to_domain_value() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.coerce_to_domain_value) + return _internal_coerce_to_domain_value(); } -inline ::pg_query::OnConflictExpr* Node::unsafe_arena_release_on_conflict_expr() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.on_conflict_expr) - if (_internal_has_on_conflict_expr()) { +inline ::pg_query::CoerceToDomainValue* Node::unsafe_arena_release_coerce_to_domain_value() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.coerce_to_domain_value) + if (node_case() == kCoerceToDomainValue) { clear_has_node(); - ::pg_query::OnConflictExpr* temp = _impl_.node_.on_conflict_expr_; - _impl_.node_.on_conflict_expr_ = nullptr; + auto* temp = _impl_.node_.coerce_to_domain_value_; + _impl_.node_.coerce_to_domain_value_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_on_conflict_expr(::pg_query::OnConflictExpr* on_conflict_expr) { +inline void Node::unsafe_arena_set_allocated_coerce_to_domain_value(::pg_query::CoerceToDomainValue* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (on_conflict_expr) { - set_has_on_conflict_expr(); - _impl_.node_.on_conflict_expr_ = on_conflict_expr; + if (value) { + set_has_coerce_to_domain_value(); + _impl_.node_.coerce_to_domain_value_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.on_conflict_expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.coerce_to_domain_value) } -inline ::pg_query::OnConflictExpr* Node::_internal_mutable_on_conflict_expr() { - if (!_internal_has_on_conflict_expr()) { +inline ::pg_query::CoerceToDomainValue* Node::_internal_mutable_coerce_to_domain_value() { + if (node_case() != kCoerceToDomainValue) { clear_node(); - set_has_on_conflict_expr(); - _impl_.node_.on_conflict_expr_ = CreateMaybeMessage< ::pg_query::OnConflictExpr >(GetArenaForAllocation()); + set_has_coerce_to_domain_value(); + _impl_.node_.coerce_to_domain_value_ = CreateMaybeMessage<::pg_query::CoerceToDomainValue>(GetArena()); } - return _impl_.node_.on_conflict_expr_; + return _impl_.node_.coerce_to_domain_value_; } -inline ::pg_query::OnConflictExpr* Node::mutable_on_conflict_expr() { - ::pg_query::OnConflictExpr* _msg = _internal_mutable_on_conflict_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.on_conflict_expr) +inline ::pg_query::CoerceToDomainValue* Node::mutable_coerce_to_domain_value() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CoerceToDomainValue* _msg = _internal_mutable_coerce_to_domain_value(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.coerce_to_domain_value) return _msg; } -// .pg_query.IntoClause into_clause = 50 [json_name = "IntoClause"]; -inline bool Node::_internal_has_into_clause() const { - return node_case() == kIntoClause; +// .pg_query.SetToDefault set_to_default = 47 [json_name = "SetToDefault"]; +inline bool Node::has_set_to_default() const { + return node_case() == kSetToDefault; } -inline bool Node::has_into_clause() const { - return _internal_has_into_clause(); +inline bool Node::_internal_has_set_to_default() const { + return node_case() == kSetToDefault; } -inline void Node::set_has_into_clause() { - _impl_._oneof_case_[0] = kIntoClause; +inline void Node::set_has_set_to_default() { + _impl_._oneof_case_[0] = kSetToDefault; } -inline void Node::clear_into_clause() { - if (_internal_has_into_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.into_clause_; +inline void Node::clear_set_to_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSetToDefault) { + if (GetArena() == nullptr) { + delete _impl_.node_.set_to_default_; } clear_has_node(); } } -inline ::pg_query::IntoClause* Node::release_into_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.into_clause) - if (_internal_has_into_clause()) { +inline ::pg_query::SetToDefault* Node::release_set_to_default() { + // @@protoc_insertion_point(field_release:pg_query.Node.set_to_default) + if (node_case() == kSetToDefault) { clear_has_node(); - ::pg_query::IntoClause* temp = _impl_.node_.into_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.set_to_default_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.into_clause_ = nullptr; + _impl_.node_.set_to_default_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::IntoClause& Node::_internal_into_clause() const { - return _internal_has_into_clause() - ? *_impl_.node_.into_clause_ - : reinterpret_cast< ::pg_query::IntoClause&>(::pg_query::_IntoClause_default_instance_); +inline const ::pg_query::SetToDefault& Node::_internal_set_to_default() const { + return node_case() == kSetToDefault ? *_impl_.node_.set_to_default_ : reinterpret_cast<::pg_query::SetToDefault&>(::pg_query::_SetToDefault_default_instance_); } -inline const ::pg_query::IntoClause& Node::into_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.into_clause) - return _internal_into_clause(); +inline const ::pg_query::SetToDefault& Node::set_to_default() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.set_to_default) + return _internal_set_to_default(); } -inline ::pg_query::IntoClause* Node::unsafe_arena_release_into_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.into_clause) - if (_internal_has_into_clause()) { +inline ::pg_query::SetToDefault* Node::unsafe_arena_release_set_to_default() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.set_to_default) + if (node_case() == kSetToDefault) { clear_has_node(); - ::pg_query::IntoClause* temp = _impl_.node_.into_clause_; - _impl_.node_.into_clause_ = nullptr; + auto* temp = _impl_.node_.set_to_default_; + _impl_.node_.set_to_default_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_into_clause(::pg_query::IntoClause* into_clause) { +inline void Node::unsafe_arena_set_allocated_set_to_default(::pg_query::SetToDefault* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (into_clause) { - set_has_into_clause(); - _impl_.node_.into_clause_ = into_clause; + if (value) { + set_has_set_to_default(); + _impl_.node_.set_to_default_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.into_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.set_to_default) } -inline ::pg_query::IntoClause* Node::_internal_mutable_into_clause() { - if (!_internal_has_into_clause()) { +inline ::pg_query::SetToDefault* Node::_internal_mutable_set_to_default() { + if (node_case() != kSetToDefault) { clear_node(); - set_has_into_clause(); - _impl_.node_.into_clause_ = CreateMaybeMessage< ::pg_query::IntoClause >(GetArenaForAllocation()); + set_has_set_to_default(); + _impl_.node_.set_to_default_ = CreateMaybeMessage<::pg_query::SetToDefault>(GetArena()); } - return _impl_.node_.into_clause_; + return _impl_.node_.set_to_default_; } -inline ::pg_query::IntoClause* Node::mutable_into_clause() { - ::pg_query::IntoClause* _msg = _internal_mutable_into_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.into_clause) +inline ::pg_query::SetToDefault* Node::mutable_set_to_default() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::SetToDefault* _msg = _internal_mutable_set_to_default(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.set_to_default) return _msg; } -// .pg_query.MergeAction merge_action = 51 [json_name = "MergeAction"]; -inline bool Node::_internal_has_merge_action() const { - return node_case() == kMergeAction; +// .pg_query.CurrentOfExpr current_of_expr = 48 [json_name = "CurrentOfExpr"]; +inline bool Node::has_current_of_expr() const { + return node_case() == kCurrentOfExpr; } -inline bool Node::has_merge_action() const { - return _internal_has_merge_action(); +inline bool Node::_internal_has_current_of_expr() const { + return node_case() == kCurrentOfExpr; } -inline void Node::set_has_merge_action() { - _impl_._oneof_case_[0] = kMergeAction; +inline void Node::set_has_current_of_expr() { + _impl_._oneof_case_[0] = kCurrentOfExpr; } -inline void Node::clear_merge_action() { - if (_internal_has_merge_action()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.merge_action_; +inline void Node::clear_current_of_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCurrentOfExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.current_of_expr_; } clear_has_node(); } } -inline ::pg_query::MergeAction* Node::release_merge_action() { - // @@protoc_insertion_point(field_release:pg_query.Node.merge_action) - if (_internal_has_merge_action()) { +inline ::pg_query::CurrentOfExpr* Node::release_current_of_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.current_of_expr) + if (node_case() == kCurrentOfExpr) { clear_has_node(); - ::pg_query::MergeAction* temp = _impl_.node_.merge_action_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.current_of_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.merge_action_ = nullptr; + _impl_.node_.current_of_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::MergeAction& Node::_internal_merge_action() const { - return _internal_has_merge_action() - ? *_impl_.node_.merge_action_ - : reinterpret_cast< ::pg_query::MergeAction&>(::pg_query::_MergeAction_default_instance_); +inline const ::pg_query::CurrentOfExpr& Node::_internal_current_of_expr() const { + return node_case() == kCurrentOfExpr ? *_impl_.node_.current_of_expr_ : reinterpret_cast<::pg_query::CurrentOfExpr&>(::pg_query::_CurrentOfExpr_default_instance_); } -inline const ::pg_query::MergeAction& Node::merge_action() const { - // @@protoc_insertion_point(field_get:pg_query.Node.merge_action) - return _internal_merge_action(); +inline const ::pg_query::CurrentOfExpr& Node::current_of_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.current_of_expr) + return _internal_current_of_expr(); } -inline ::pg_query::MergeAction* Node::unsafe_arena_release_merge_action() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.merge_action) - if (_internal_has_merge_action()) { +inline ::pg_query::CurrentOfExpr* Node::unsafe_arena_release_current_of_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.current_of_expr) + if (node_case() == kCurrentOfExpr) { clear_has_node(); - ::pg_query::MergeAction* temp = _impl_.node_.merge_action_; - _impl_.node_.merge_action_ = nullptr; + auto* temp = _impl_.node_.current_of_expr_; + _impl_.node_.current_of_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_merge_action(::pg_query::MergeAction* merge_action) { +inline void Node::unsafe_arena_set_allocated_current_of_expr(::pg_query::CurrentOfExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (merge_action) { - set_has_merge_action(); - _impl_.node_.merge_action_ = merge_action; + if (value) { + set_has_current_of_expr(); + _impl_.node_.current_of_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.merge_action) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.current_of_expr) } -inline ::pg_query::MergeAction* Node::_internal_mutable_merge_action() { - if (!_internal_has_merge_action()) { +inline ::pg_query::CurrentOfExpr* Node::_internal_mutable_current_of_expr() { + if (node_case() != kCurrentOfExpr) { clear_node(); - set_has_merge_action(); - _impl_.node_.merge_action_ = CreateMaybeMessage< ::pg_query::MergeAction >(GetArenaForAllocation()); + set_has_current_of_expr(); + _impl_.node_.current_of_expr_ = CreateMaybeMessage<::pg_query::CurrentOfExpr>(GetArena()); } - return _impl_.node_.merge_action_; + return _impl_.node_.current_of_expr_; } -inline ::pg_query::MergeAction* Node::mutable_merge_action() { - ::pg_query::MergeAction* _msg = _internal_mutable_merge_action(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.merge_action) +inline ::pg_query::CurrentOfExpr* Node::mutable_current_of_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CurrentOfExpr* _msg = _internal_mutable_current_of_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.current_of_expr) return _msg; } -// .pg_query.RawStmt raw_stmt = 52 [json_name = "RawStmt"]; -inline bool Node::_internal_has_raw_stmt() const { - return node_case() == kRawStmt; +// .pg_query.NextValueExpr next_value_expr = 49 [json_name = "NextValueExpr"]; +inline bool Node::has_next_value_expr() const { + return node_case() == kNextValueExpr; } -inline bool Node::has_raw_stmt() const { - return _internal_has_raw_stmt(); +inline bool Node::_internal_has_next_value_expr() const { + return node_case() == kNextValueExpr; } -inline void Node::set_has_raw_stmt() { - _impl_._oneof_case_[0] = kRawStmt; +inline void Node::set_has_next_value_expr() { + _impl_._oneof_case_[0] = kNextValueExpr; } -inline void Node::clear_raw_stmt() { - if (_internal_has_raw_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.raw_stmt_; +inline void Node::clear_next_value_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kNextValueExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.next_value_expr_; } clear_has_node(); } } -inline ::pg_query::RawStmt* Node::release_raw_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.raw_stmt) - if (_internal_has_raw_stmt()) { +inline ::pg_query::NextValueExpr* Node::release_next_value_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.next_value_expr) + if (node_case() == kNextValueExpr) { clear_has_node(); - ::pg_query::RawStmt* temp = _impl_.node_.raw_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.next_value_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.raw_stmt_ = nullptr; + _impl_.node_.next_value_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RawStmt& Node::_internal_raw_stmt() const { - return _internal_has_raw_stmt() - ? *_impl_.node_.raw_stmt_ - : reinterpret_cast< ::pg_query::RawStmt&>(::pg_query::_RawStmt_default_instance_); +inline const ::pg_query::NextValueExpr& Node::_internal_next_value_expr() const { + return node_case() == kNextValueExpr ? *_impl_.node_.next_value_expr_ : reinterpret_cast<::pg_query::NextValueExpr&>(::pg_query::_NextValueExpr_default_instance_); } -inline const ::pg_query::RawStmt& Node::raw_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.raw_stmt) - return _internal_raw_stmt(); +inline const ::pg_query::NextValueExpr& Node::next_value_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.next_value_expr) + return _internal_next_value_expr(); } -inline ::pg_query::RawStmt* Node::unsafe_arena_release_raw_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.raw_stmt) - if (_internal_has_raw_stmt()) { +inline ::pg_query::NextValueExpr* Node::unsafe_arena_release_next_value_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.next_value_expr) + if (node_case() == kNextValueExpr) { clear_has_node(); - ::pg_query::RawStmt* temp = _impl_.node_.raw_stmt_; - _impl_.node_.raw_stmt_ = nullptr; + auto* temp = _impl_.node_.next_value_expr_; + _impl_.node_.next_value_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_raw_stmt(::pg_query::RawStmt* raw_stmt) { +inline void Node::unsafe_arena_set_allocated_next_value_expr(::pg_query::NextValueExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (raw_stmt) { - set_has_raw_stmt(); - _impl_.node_.raw_stmt_ = raw_stmt; + if (value) { + set_has_next_value_expr(); + _impl_.node_.next_value_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.raw_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.next_value_expr) } -inline ::pg_query::RawStmt* Node::_internal_mutable_raw_stmt() { - if (!_internal_has_raw_stmt()) { +inline ::pg_query::NextValueExpr* Node::_internal_mutable_next_value_expr() { + if (node_case() != kNextValueExpr) { clear_node(); - set_has_raw_stmt(); - _impl_.node_.raw_stmt_ = CreateMaybeMessage< ::pg_query::RawStmt >(GetArenaForAllocation()); + set_has_next_value_expr(); + _impl_.node_.next_value_expr_ = CreateMaybeMessage<::pg_query::NextValueExpr>(GetArena()); } - return _impl_.node_.raw_stmt_; + return _impl_.node_.next_value_expr_; } -inline ::pg_query::RawStmt* Node::mutable_raw_stmt() { - ::pg_query::RawStmt* _msg = _internal_mutable_raw_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.raw_stmt) +inline ::pg_query::NextValueExpr* Node::mutable_next_value_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::NextValueExpr* _msg = _internal_mutable_next_value_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.next_value_expr) return _msg; } -// .pg_query.Query query = 53 [json_name = "Query"]; -inline bool Node::_internal_has_query() const { - return node_case() == kQuery; +// .pg_query.InferenceElem inference_elem = 50 [json_name = "InferenceElem"]; +inline bool Node::has_inference_elem() const { + return node_case() == kInferenceElem; } -inline bool Node::has_query() const { - return _internal_has_query(); +inline bool Node::_internal_has_inference_elem() const { + return node_case() == kInferenceElem; } -inline void Node::set_has_query() { - _impl_._oneof_case_[0] = kQuery; +inline void Node::set_has_inference_elem() { + _impl_._oneof_case_[0] = kInferenceElem; } -inline void Node::clear_query() { - if (_internal_has_query()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.query_; +inline void Node::clear_inference_elem() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kInferenceElem) { + if (GetArena() == nullptr) { + delete _impl_.node_.inference_elem_; } clear_has_node(); } } -inline ::pg_query::Query* Node::release_query() { - // @@protoc_insertion_point(field_release:pg_query.Node.query) - if (_internal_has_query()) { +inline ::pg_query::InferenceElem* Node::release_inference_elem() { + // @@protoc_insertion_point(field_release:pg_query.Node.inference_elem) + if (node_case() == kInferenceElem) { clear_has_node(); - ::pg_query::Query* temp = _impl_.node_.query_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.inference_elem_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.query_ = nullptr; + _impl_.node_.inference_elem_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::Query& Node::_internal_query() const { - return _internal_has_query() - ? *_impl_.node_.query_ - : reinterpret_cast< ::pg_query::Query&>(::pg_query::_Query_default_instance_); +inline const ::pg_query::InferenceElem& Node::_internal_inference_elem() const { + return node_case() == kInferenceElem ? *_impl_.node_.inference_elem_ : reinterpret_cast<::pg_query::InferenceElem&>(::pg_query::_InferenceElem_default_instance_); } -inline const ::pg_query::Query& Node::query() const { - // @@protoc_insertion_point(field_get:pg_query.Node.query) - return _internal_query(); +inline const ::pg_query::InferenceElem& Node::inference_elem() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.inference_elem) + return _internal_inference_elem(); } -inline ::pg_query::Query* Node::unsafe_arena_release_query() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.query) - if (_internal_has_query()) { +inline ::pg_query::InferenceElem* Node::unsafe_arena_release_inference_elem() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.inference_elem) + if (node_case() == kInferenceElem) { clear_has_node(); - ::pg_query::Query* temp = _impl_.node_.query_; - _impl_.node_.query_ = nullptr; + auto* temp = _impl_.node_.inference_elem_; + _impl_.node_.inference_elem_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_query(::pg_query::Query* query) { +inline void Node::unsafe_arena_set_allocated_inference_elem(::pg_query::InferenceElem* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (query) { - set_has_query(); - _impl_.node_.query_ = query; + if (value) { + set_has_inference_elem(); + _impl_.node_.inference_elem_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.query) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.inference_elem) } -inline ::pg_query::Query* Node::_internal_mutable_query() { - if (!_internal_has_query()) { +inline ::pg_query::InferenceElem* Node::_internal_mutable_inference_elem() { + if (node_case() != kInferenceElem) { clear_node(); - set_has_query(); - _impl_.node_.query_ = CreateMaybeMessage< ::pg_query::Query >(GetArenaForAllocation()); + set_has_inference_elem(); + _impl_.node_.inference_elem_ = CreateMaybeMessage<::pg_query::InferenceElem>(GetArena()); } - return _impl_.node_.query_; + return _impl_.node_.inference_elem_; } -inline ::pg_query::Query* Node::mutable_query() { - ::pg_query::Query* _msg = _internal_mutable_query(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.query) +inline ::pg_query::InferenceElem* Node::mutable_inference_elem() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::InferenceElem* _msg = _internal_mutable_inference_elem(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.inference_elem) return _msg; } -// .pg_query.InsertStmt insert_stmt = 54 [json_name = "InsertStmt"]; -inline bool Node::_internal_has_insert_stmt() const { - return node_case() == kInsertStmt; +// .pg_query.TargetEntry target_entry = 51 [json_name = "TargetEntry"]; +inline bool Node::has_target_entry() const { + return node_case() == kTargetEntry; } -inline bool Node::has_insert_stmt() const { - return _internal_has_insert_stmt(); +inline bool Node::_internal_has_target_entry() const { + return node_case() == kTargetEntry; } -inline void Node::set_has_insert_stmt() { - _impl_._oneof_case_[0] = kInsertStmt; +inline void Node::set_has_target_entry() { + _impl_._oneof_case_[0] = kTargetEntry; } -inline void Node::clear_insert_stmt() { - if (_internal_has_insert_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.insert_stmt_; +inline void Node::clear_target_entry() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kTargetEntry) { + if (GetArena() == nullptr) { + delete _impl_.node_.target_entry_; } clear_has_node(); } } -inline ::pg_query::InsertStmt* Node::release_insert_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.insert_stmt) - if (_internal_has_insert_stmt()) { +inline ::pg_query::TargetEntry* Node::release_target_entry() { + // @@protoc_insertion_point(field_release:pg_query.Node.target_entry) + if (node_case() == kTargetEntry) { clear_has_node(); - ::pg_query::InsertStmt* temp = _impl_.node_.insert_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.target_entry_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.insert_stmt_ = nullptr; + _impl_.node_.target_entry_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::InsertStmt& Node::_internal_insert_stmt() const { - return _internal_has_insert_stmt() - ? *_impl_.node_.insert_stmt_ - : reinterpret_cast< ::pg_query::InsertStmt&>(::pg_query::_InsertStmt_default_instance_); +inline const ::pg_query::TargetEntry& Node::_internal_target_entry() const { + return node_case() == kTargetEntry ? *_impl_.node_.target_entry_ : reinterpret_cast<::pg_query::TargetEntry&>(::pg_query::_TargetEntry_default_instance_); } -inline const ::pg_query::InsertStmt& Node::insert_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.insert_stmt) - return _internal_insert_stmt(); +inline const ::pg_query::TargetEntry& Node::target_entry() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.target_entry) + return _internal_target_entry(); } -inline ::pg_query::InsertStmt* Node::unsafe_arena_release_insert_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.insert_stmt) - if (_internal_has_insert_stmt()) { +inline ::pg_query::TargetEntry* Node::unsafe_arena_release_target_entry() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.target_entry) + if (node_case() == kTargetEntry) { clear_has_node(); - ::pg_query::InsertStmt* temp = _impl_.node_.insert_stmt_; - _impl_.node_.insert_stmt_ = nullptr; + auto* temp = _impl_.node_.target_entry_; + _impl_.node_.target_entry_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_insert_stmt(::pg_query::InsertStmt* insert_stmt) { +inline void Node::unsafe_arena_set_allocated_target_entry(::pg_query::TargetEntry* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (insert_stmt) { - set_has_insert_stmt(); - _impl_.node_.insert_stmt_ = insert_stmt; + if (value) { + set_has_target_entry(); + _impl_.node_.target_entry_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.insert_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.target_entry) } -inline ::pg_query::InsertStmt* Node::_internal_mutable_insert_stmt() { - if (!_internal_has_insert_stmt()) { +inline ::pg_query::TargetEntry* Node::_internal_mutable_target_entry() { + if (node_case() != kTargetEntry) { clear_node(); - set_has_insert_stmt(); - _impl_.node_.insert_stmt_ = CreateMaybeMessage< ::pg_query::InsertStmt >(GetArenaForAllocation()); + set_has_target_entry(); + _impl_.node_.target_entry_ = CreateMaybeMessage<::pg_query::TargetEntry>(GetArena()); } - return _impl_.node_.insert_stmt_; + return _impl_.node_.target_entry_; } -inline ::pg_query::InsertStmt* Node::mutable_insert_stmt() { - ::pg_query::InsertStmt* _msg = _internal_mutable_insert_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.insert_stmt) +inline ::pg_query::TargetEntry* Node::mutable_target_entry() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TargetEntry* _msg = _internal_mutable_target_entry(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.target_entry) return _msg; } -// .pg_query.DeleteStmt delete_stmt = 55 [json_name = "DeleteStmt"]; -inline bool Node::_internal_has_delete_stmt() const { - return node_case() == kDeleteStmt; +// .pg_query.RangeTblRef range_tbl_ref = 52 [json_name = "RangeTblRef"]; +inline bool Node::has_range_tbl_ref() const { + return node_case() == kRangeTblRef; } -inline bool Node::has_delete_stmt() const { - return _internal_has_delete_stmt(); +inline bool Node::_internal_has_range_tbl_ref() const { + return node_case() == kRangeTblRef; } -inline void Node::set_has_delete_stmt() { - _impl_._oneof_case_[0] = kDeleteStmt; +inline void Node::set_has_range_tbl_ref() { + _impl_._oneof_case_[0] = kRangeTblRef; } -inline void Node::clear_delete_stmt() { - if (_internal_has_delete_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.delete_stmt_; +inline void Node::clear_range_tbl_ref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRangeTblRef) { + if (GetArena() == nullptr) { + delete _impl_.node_.range_tbl_ref_; } clear_has_node(); } } -inline ::pg_query::DeleteStmt* Node::release_delete_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.delete_stmt) - if (_internal_has_delete_stmt()) { +inline ::pg_query::RangeTblRef* Node::release_range_tbl_ref() { + // @@protoc_insertion_point(field_release:pg_query.Node.range_tbl_ref) + if (node_case() == kRangeTblRef) { clear_has_node(); - ::pg_query::DeleteStmt* temp = _impl_.node_.delete_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.range_tbl_ref_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.delete_stmt_ = nullptr; + _impl_.node_.range_tbl_ref_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DeleteStmt& Node::_internal_delete_stmt() const { - return _internal_has_delete_stmt() - ? *_impl_.node_.delete_stmt_ - : reinterpret_cast< ::pg_query::DeleteStmt&>(::pg_query::_DeleteStmt_default_instance_); +inline const ::pg_query::RangeTblRef& Node::_internal_range_tbl_ref() const { + return node_case() == kRangeTblRef ? *_impl_.node_.range_tbl_ref_ : reinterpret_cast<::pg_query::RangeTblRef&>(::pg_query::_RangeTblRef_default_instance_); } -inline const ::pg_query::DeleteStmt& Node::delete_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.delete_stmt) - return _internal_delete_stmt(); +inline const ::pg_query::RangeTblRef& Node::range_tbl_ref() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.range_tbl_ref) + return _internal_range_tbl_ref(); } -inline ::pg_query::DeleteStmt* Node::unsafe_arena_release_delete_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.delete_stmt) - if (_internal_has_delete_stmt()) { +inline ::pg_query::RangeTblRef* Node::unsafe_arena_release_range_tbl_ref() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_tbl_ref) + if (node_case() == kRangeTblRef) { clear_has_node(); - ::pg_query::DeleteStmt* temp = _impl_.node_.delete_stmt_; - _impl_.node_.delete_stmt_ = nullptr; + auto* temp = _impl_.node_.range_tbl_ref_; + _impl_.node_.range_tbl_ref_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_delete_stmt(::pg_query::DeleteStmt* delete_stmt) { +inline void Node::unsafe_arena_set_allocated_range_tbl_ref(::pg_query::RangeTblRef* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (delete_stmt) { - set_has_delete_stmt(); - _impl_.node_.delete_stmt_ = delete_stmt; + if (value) { + set_has_range_tbl_ref(); + _impl_.node_.range_tbl_ref_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.delete_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_tbl_ref) } -inline ::pg_query::DeleteStmt* Node::_internal_mutable_delete_stmt() { - if (!_internal_has_delete_stmt()) { +inline ::pg_query::RangeTblRef* Node::_internal_mutable_range_tbl_ref() { + if (node_case() != kRangeTblRef) { clear_node(); - set_has_delete_stmt(); - _impl_.node_.delete_stmt_ = CreateMaybeMessage< ::pg_query::DeleteStmt >(GetArenaForAllocation()); + set_has_range_tbl_ref(); + _impl_.node_.range_tbl_ref_ = CreateMaybeMessage<::pg_query::RangeTblRef>(GetArena()); } - return _impl_.node_.delete_stmt_; + return _impl_.node_.range_tbl_ref_; } -inline ::pg_query::DeleteStmt* Node::mutable_delete_stmt() { - ::pg_query::DeleteStmt* _msg = _internal_mutable_delete_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.delete_stmt) +inline ::pg_query::RangeTblRef* Node::mutable_range_tbl_ref() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeTblRef* _msg = _internal_mutable_range_tbl_ref(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.range_tbl_ref) return _msg; } -// .pg_query.UpdateStmt update_stmt = 56 [json_name = "UpdateStmt"]; -inline bool Node::_internal_has_update_stmt() const { - return node_case() == kUpdateStmt; +// .pg_query.JoinExpr join_expr = 53 [json_name = "JoinExpr"]; +inline bool Node::has_join_expr() const { + return node_case() == kJoinExpr; } -inline bool Node::has_update_stmt() const { - return _internal_has_update_stmt(); +inline bool Node::_internal_has_join_expr() const { + return node_case() == kJoinExpr; } -inline void Node::set_has_update_stmt() { - _impl_._oneof_case_[0] = kUpdateStmt; +inline void Node::set_has_join_expr() { + _impl_._oneof_case_[0] = kJoinExpr; } -inline void Node::clear_update_stmt() { - if (_internal_has_update_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.update_stmt_; +inline void Node::clear_join_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJoinExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.join_expr_; } clear_has_node(); } } -inline ::pg_query::UpdateStmt* Node::release_update_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.update_stmt) - if (_internal_has_update_stmt()) { +inline ::pg_query::JoinExpr* Node::release_join_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.join_expr) + if (node_case() == kJoinExpr) { clear_has_node(); - ::pg_query::UpdateStmt* temp = _impl_.node_.update_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.join_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.update_stmt_ = nullptr; + _impl_.node_.join_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::UpdateStmt& Node::_internal_update_stmt() const { - return _internal_has_update_stmt() - ? *_impl_.node_.update_stmt_ - : reinterpret_cast< ::pg_query::UpdateStmt&>(::pg_query::_UpdateStmt_default_instance_); +inline const ::pg_query::JoinExpr& Node::_internal_join_expr() const { + return node_case() == kJoinExpr ? *_impl_.node_.join_expr_ : reinterpret_cast<::pg_query::JoinExpr&>(::pg_query::_JoinExpr_default_instance_); } -inline const ::pg_query::UpdateStmt& Node::update_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.update_stmt) - return _internal_update_stmt(); +inline const ::pg_query::JoinExpr& Node::join_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.join_expr) + return _internal_join_expr(); } -inline ::pg_query::UpdateStmt* Node::unsafe_arena_release_update_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.update_stmt) - if (_internal_has_update_stmt()) { +inline ::pg_query::JoinExpr* Node::unsafe_arena_release_join_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.join_expr) + if (node_case() == kJoinExpr) { clear_has_node(); - ::pg_query::UpdateStmt* temp = _impl_.node_.update_stmt_; - _impl_.node_.update_stmt_ = nullptr; + auto* temp = _impl_.node_.join_expr_; + _impl_.node_.join_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_update_stmt(::pg_query::UpdateStmt* update_stmt) { +inline void Node::unsafe_arena_set_allocated_join_expr(::pg_query::JoinExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (update_stmt) { - set_has_update_stmt(); - _impl_.node_.update_stmt_ = update_stmt; + if (value) { + set_has_join_expr(); + _impl_.node_.join_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.update_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.join_expr) } -inline ::pg_query::UpdateStmt* Node::_internal_mutable_update_stmt() { - if (!_internal_has_update_stmt()) { +inline ::pg_query::JoinExpr* Node::_internal_mutable_join_expr() { + if (node_case() != kJoinExpr) { clear_node(); - set_has_update_stmt(); - _impl_.node_.update_stmt_ = CreateMaybeMessage< ::pg_query::UpdateStmt >(GetArenaForAllocation()); + set_has_join_expr(); + _impl_.node_.join_expr_ = CreateMaybeMessage<::pg_query::JoinExpr>(GetArena()); } - return _impl_.node_.update_stmt_; + return _impl_.node_.join_expr_; } -inline ::pg_query::UpdateStmt* Node::mutable_update_stmt() { - ::pg_query::UpdateStmt* _msg = _internal_mutable_update_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.update_stmt) +inline ::pg_query::JoinExpr* Node::mutable_join_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JoinExpr* _msg = _internal_mutable_join_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.join_expr) return _msg; } -// .pg_query.MergeStmt merge_stmt = 57 [json_name = "MergeStmt"]; -inline bool Node::_internal_has_merge_stmt() const { - return node_case() == kMergeStmt; +// .pg_query.FromExpr from_expr = 54 [json_name = "FromExpr"]; +inline bool Node::has_from_expr() const { + return node_case() == kFromExpr; } -inline bool Node::has_merge_stmt() const { - return _internal_has_merge_stmt(); +inline bool Node::_internal_has_from_expr() const { + return node_case() == kFromExpr; } -inline void Node::set_has_merge_stmt() { - _impl_._oneof_case_[0] = kMergeStmt; +inline void Node::set_has_from_expr() { + _impl_._oneof_case_[0] = kFromExpr; } -inline void Node::clear_merge_stmt() { - if (_internal_has_merge_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.merge_stmt_; +inline void Node::clear_from_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kFromExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.from_expr_; } clear_has_node(); } } -inline ::pg_query::MergeStmt* Node::release_merge_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.merge_stmt) - if (_internal_has_merge_stmt()) { +inline ::pg_query::FromExpr* Node::release_from_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.from_expr) + if (node_case() == kFromExpr) { clear_has_node(); - ::pg_query::MergeStmt* temp = _impl_.node_.merge_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.from_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.merge_stmt_ = nullptr; + _impl_.node_.from_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::MergeStmt& Node::_internal_merge_stmt() const { - return _internal_has_merge_stmt() - ? *_impl_.node_.merge_stmt_ - : reinterpret_cast< ::pg_query::MergeStmt&>(::pg_query::_MergeStmt_default_instance_); +inline const ::pg_query::FromExpr& Node::_internal_from_expr() const { + return node_case() == kFromExpr ? *_impl_.node_.from_expr_ : reinterpret_cast<::pg_query::FromExpr&>(::pg_query::_FromExpr_default_instance_); } -inline const ::pg_query::MergeStmt& Node::merge_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.merge_stmt) - return _internal_merge_stmt(); +inline const ::pg_query::FromExpr& Node::from_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.from_expr) + return _internal_from_expr(); } -inline ::pg_query::MergeStmt* Node::unsafe_arena_release_merge_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.merge_stmt) - if (_internal_has_merge_stmt()) { +inline ::pg_query::FromExpr* Node::unsafe_arena_release_from_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.from_expr) + if (node_case() == kFromExpr) { clear_has_node(); - ::pg_query::MergeStmt* temp = _impl_.node_.merge_stmt_; - _impl_.node_.merge_stmt_ = nullptr; + auto* temp = _impl_.node_.from_expr_; + _impl_.node_.from_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_merge_stmt(::pg_query::MergeStmt* merge_stmt) { +inline void Node::unsafe_arena_set_allocated_from_expr(::pg_query::FromExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (merge_stmt) { - set_has_merge_stmt(); - _impl_.node_.merge_stmt_ = merge_stmt; + if (value) { + set_has_from_expr(); + _impl_.node_.from_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.merge_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.from_expr) } -inline ::pg_query::MergeStmt* Node::_internal_mutable_merge_stmt() { - if (!_internal_has_merge_stmt()) { +inline ::pg_query::FromExpr* Node::_internal_mutable_from_expr() { + if (node_case() != kFromExpr) { clear_node(); - set_has_merge_stmt(); - _impl_.node_.merge_stmt_ = CreateMaybeMessage< ::pg_query::MergeStmt >(GetArenaForAllocation()); + set_has_from_expr(); + _impl_.node_.from_expr_ = CreateMaybeMessage<::pg_query::FromExpr>(GetArena()); } - return _impl_.node_.merge_stmt_; + return _impl_.node_.from_expr_; } -inline ::pg_query::MergeStmt* Node::mutable_merge_stmt() { - ::pg_query::MergeStmt* _msg = _internal_mutable_merge_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.merge_stmt) +inline ::pg_query::FromExpr* Node::mutable_from_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::FromExpr* _msg = _internal_mutable_from_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.from_expr) return _msg; } -// .pg_query.SelectStmt select_stmt = 58 [json_name = "SelectStmt"]; -inline bool Node::_internal_has_select_stmt() const { - return node_case() == kSelectStmt; +// .pg_query.OnConflictExpr on_conflict_expr = 55 [json_name = "OnConflictExpr"]; +inline bool Node::has_on_conflict_expr() const { + return node_case() == kOnConflictExpr; } -inline bool Node::has_select_stmt() const { - return _internal_has_select_stmt(); +inline bool Node::_internal_has_on_conflict_expr() const { + return node_case() == kOnConflictExpr; } -inline void Node::set_has_select_stmt() { - _impl_._oneof_case_[0] = kSelectStmt; +inline void Node::set_has_on_conflict_expr() { + _impl_._oneof_case_[0] = kOnConflictExpr; } -inline void Node::clear_select_stmt() { - if (_internal_has_select_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.select_stmt_; +inline void Node::clear_on_conflict_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kOnConflictExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.on_conflict_expr_; } clear_has_node(); } } -inline ::pg_query::SelectStmt* Node::release_select_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.select_stmt) - if (_internal_has_select_stmt()) { +inline ::pg_query::OnConflictExpr* Node::release_on_conflict_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.on_conflict_expr) + if (node_case() == kOnConflictExpr) { clear_has_node(); - ::pg_query::SelectStmt* temp = _impl_.node_.select_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.on_conflict_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.select_stmt_ = nullptr; + _impl_.node_.on_conflict_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::SelectStmt& Node::_internal_select_stmt() const { - return _internal_has_select_stmt() - ? *_impl_.node_.select_stmt_ - : reinterpret_cast< ::pg_query::SelectStmt&>(::pg_query::_SelectStmt_default_instance_); +inline const ::pg_query::OnConflictExpr& Node::_internal_on_conflict_expr() const { + return node_case() == kOnConflictExpr ? *_impl_.node_.on_conflict_expr_ : reinterpret_cast<::pg_query::OnConflictExpr&>(::pg_query::_OnConflictExpr_default_instance_); } -inline const ::pg_query::SelectStmt& Node::select_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.select_stmt) - return _internal_select_stmt(); +inline const ::pg_query::OnConflictExpr& Node::on_conflict_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.on_conflict_expr) + return _internal_on_conflict_expr(); } -inline ::pg_query::SelectStmt* Node::unsafe_arena_release_select_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.select_stmt) - if (_internal_has_select_stmt()) { +inline ::pg_query::OnConflictExpr* Node::unsafe_arena_release_on_conflict_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.on_conflict_expr) + if (node_case() == kOnConflictExpr) { clear_has_node(); - ::pg_query::SelectStmt* temp = _impl_.node_.select_stmt_; - _impl_.node_.select_stmt_ = nullptr; + auto* temp = _impl_.node_.on_conflict_expr_; + _impl_.node_.on_conflict_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_select_stmt(::pg_query::SelectStmt* select_stmt) { +inline void Node::unsafe_arena_set_allocated_on_conflict_expr(::pg_query::OnConflictExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (select_stmt) { - set_has_select_stmt(); - _impl_.node_.select_stmt_ = select_stmt; + if (value) { + set_has_on_conflict_expr(); + _impl_.node_.on_conflict_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.select_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.on_conflict_expr) } -inline ::pg_query::SelectStmt* Node::_internal_mutable_select_stmt() { - if (!_internal_has_select_stmt()) { +inline ::pg_query::OnConflictExpr* Node::_internal_mutable_on_conflict_expr() { + if (node_case() != kOnConflictExpr) { clear_node(); - set_has_select_stmt(); - _impl_.node_.select_stmt_ = CreateMaybeMessage< ::pg_query::SelectStmt >(GetArenaForAllocation()); + set_has_on_conflict_expr(); + _impl_.node_.on_conflict_expr_ = CreateMaybeMessage<::pg_query::OnConflictExpr>(GetArena()); } - return _impl_.node_.select_stmt_; + return _impl_.node_.on_conflict_expr_; } -inline ::pg_query::SelectStmt* Node::mutable_select_stmt() { - ::pg_query::SelectStmt* _msg = _internal_mutable_select_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.select_stmt) +inline ::pg_query::OnConflictExpr* Node::mutable_on_conflict_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::OnConflictExpr* _msg = _internal_mutable_on_conflict_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.on_conflict_expr) return _msg; } -// .pg_query.ReturnStmt return_stmt = 59 [json_name = "ReturnStmt"]; -inline bool Node::_internal_has_return_stmt() const { - return node_case() == kReturnStmt; +// .pg_query.Query query = 56 [json_name = "Query"]; +inline bool Node::has_query() const { + return node_case() == kQuery; } -inline bool Node::has_return_stmt() const { - return _internal_has_return_stmt(); +inline bool Node::_internal_has_query() const { + return node_case() == kQuery; } -inline void Node::set_has_return_stmt() { - _impl_._oneof_case_[0] = kReturnStmt; +inline void Node::set_has_query() { + _impl_._oneof_case_[0] = kQuery; } -inline void Node::clear_return_stmt() { - if (_internal_has_return_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.return_stmt_; +inline void Node::clear_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kQuery) { + if (GetArena() == nullptr) { + delete _impl_.node_.query_; } clear_has_node(); } } -inline ::pg_query::ReturnStmt* Node::release_return_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.return_stmt) - if (_internal_has_return_stmt()) { +inline ::pg_query::Query* Node::release_query() { + // @@protoc_insertion_point(field_release:pg_query.Node.query) + if (node_case() == kQuery) { clear_has_node(); - ::pg_query::ReturnStmt* temp = _impl_.node_.return_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.query_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.return_stmt_ = nullptr; + _impl_.node_.query_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ReturnStmt& Node::_internal_return_stmt() const { - return _internal_has_return_stmt() - ? *_impl_.node_.return_stmt_ - : reinterpret_cast< ::pg_query::ReturnStmt&>(::pg_query::_ReturnStmt_default_instance_); +inline const ::pg_query::Query& Node::_internal_query() const { + return node_case() == kQuery ? *_impl_.node_.query_ : reinterpret_cast<::pg_query::Query&>(::pg_query::_Query_default_instance_); } -inline const ::pg_query::ReturnStmt& Node::return_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.return_stmt) - return _internal_return_stmt(); +inline const ::pg_query::Query& Node::query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.query) + return _internal_query(); } -inline ::pg_query::ReturnStmt* Node::unsafe_arena_release_return_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.return_stmt) - if (_internal_has_return_stmt()) { +inline ::pg_query::Query* Node::unsafe_arena_release_query() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.query) + if (node_case() == kQuery) { clear_has_node(); - ::pg_query::ReturnStmt* temp = _impl_.node_.return_stmt_; - _impl_.node_.return_stmt_ = nullptr; + auto* temp = _impl_.node_.query_; + _impl_.node_.query_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_return_stmt(::pg_query::ReturnStmt* return_stmt) { +inline void Node::unsafe_arena_set_allocated_query(::pg_query::Query* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (return_stmt) { - set_has_return_stmt(); - _impl_.node_.return_stmt_ = return_stmt; + if (value) { + set_has_query(); + _impl_.node_.query_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.return_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.query) } -inline ::pg_query::ReturnStmt* Node::_internal_mutable_return_stmt() { - if (!_internal_has_return_stmt()) { +inline ::pg_query::Query* Node::_internal_mutable_query() { + if (node_case() != kQuery) { clear_node(); - set_has_return_stmt(); - _impl_.node_.return_stmt_ = CreateMaybeMessage< ::pg_query::ReturnStmt >(GetArenaForAllocation()); + set_has_query(); + _impl_.node_.query_ = CreateMaybeMessage<::pg_query::Query>(GetArena()); } - return _impl_.node_.return_stmt_; + return _impl_.node_.query_; } -inline ::pg_query::ReturnStmt* Node::mutable_return_stmt() { - ::pg_query::ReturnStmt* _msg = _internal_mutable_return_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.return_stmt) +inline ::pg_query::Query* Node::mutable_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Query* _msg = _internal_mutable_query(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.query) return _msg; } -// .pg_query.PLAssignStmt plassign_stmt = 60 [json_name = "PLAssignStmt"]; -inline bool Node::_internal_has_plassign_stmt() const { - return node_case() == kPlassignStmt; +// .pg_query.TypeName type_name = 57 [json_name = "TypeName"]; +inline bool Node::has_type_name() const { + return node_case() == kTypeName; } -inline bool Node::has_plassign_stmt() const { - return _internal_has_plassign_stmt(); +inline bool Node::_internal_has_type_name() const { + return node_case() == kTypeName; } -inline void Node::set_has_plassign_stmt() { - _impl_._oneof_case_[0] = kPlassignStmt; +inline void Node::set_has_type_name() { + _impl_._oneof_case_[0] = kTypeName; } -inline void Node::clear_plassign_stmt() { - if (_internal_has_plassign_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.plassign_stmt_; +inline void Node::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kTypeName) { + if (GetArena() == nullptr) { + delete _impl_.node_.type_name_; } clear_has_node(); } } -inline ::pg_query::PLAssignStmt* Node::release_plassign_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.plassign_stmt) - if (_internal_has_plassign_stmt()) { +inline ::pg_query::TypeName* Node::release_type_name() { + // @@protoc_insertion_point(field_release:pg_query.Node.type_name) + if (node_case() == kTypeName) { clear_has_node(); - ::pg_query::PLAssignStmt* temp = _impl_.node_.plassign_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.type_name_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.plassign_stmt_ = nullptr; + _impl_.node_.type_name_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::PLAssignStmt& Node::_internal_plassign_stmt() const { - return _internal_has_plassign_stmt() - ? *_impl_.node_.plassign_stmt_ - : reinterpret_cast< ::pg_query::PLAssignStmt&>(::pg_query::_PLAssignStmt_default_instance_); +inline const ::pg_query::TypeName& Node::_internal_type_name() const { + return node_case() == kTypeName ? *_impl_.node_.type_name_ : reinterpret_cast<::pg_query::TypeName&>(::pg_query::_TypeName_default_instance_); } -inline const ::pg_query::PLAssignStmt& Node::plassign_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.plassign_stmt) - return _internal_plassign_stmt(); +inline const ::pg_query::TypeName& Node::type_name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.type_name) + return _internal_type_name(); } -inline ::pg_query::PLAssignStmt* Node::unsafe_arena_release_plassign_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.plassign_stmt) - if (_internal_has_plassign_stmt()) { +inline ::pg_query::TypeName* Node::unsafe_arena_release_type_name() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.type_name) + if (node_case() == kTypeName) { clear_has_node(); - ::pg_query::PLAssignStmt* temp = _impl_.node_.plassign_stmt_; - _impl_.node_.plassign_stmt_ = nullptr; + auto* temp = _impl_.node_.type_name_; + _impl_.node_.type_name_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_plassign_stmt(::pg_query::PLAssignStmt* plassign_stmt) { +inline void Node::unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (plassign_stmt) { - set_has_plassign_stmt(); - _impl_.node_.plassign_stmt_ = plassign_stmt; + if (value) { + set_has_type_name(); + _impl_.node_.type_name_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.plassign_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.type_name) } -inline ::pg_query::PLAssignStmt* Node::_internal_mutable_plassign_stmt() { - if (!_internal_has_plassign_stmt()) { +inline ::pg_query::TypeName* Node::_internal_mutable_type_name() { + if (node_case() != kTypeName) { clear_node(); - set_has_plassign_stmt(); - _impl_.node_.plassign_stmt_ = CreateMaybeMessage< ::pg_query::PLAssignStmt >(GetArenaForAllocation()); + set_has_type_name(); + _impl_.node_.type_name_ = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); } - return _impl_.node_.plassign_stmt_; + return _impl_.node_.type_name_; } -inline ::pg_query::PLAssignStmt* Node::mutable_plassign_stmt() { - ::pg_query::PLAssignStmt* _msg = _internal_mutable_plassign_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.plassign_stmt) +inline ::pg_query::TypeName* Node::mutable_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_type_name(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.type_name) return _msg; } -// .pg_query.AlterTableStmt alter_table_stmt = 61 [json_name = "AlterTableStmt"]; -inline bool Node::_internal_has_alter_table_stmt() const { - return node_case() == kAlterTableStmt; +// .pg_query.ColumnRef column_ref = 58 [json_name = "ColumnRef"]; +inline bool Node::has_column_ref() const { + return node_case() == kColumnRef; } -inline bool Node::has_alter_table_stmt() const { - return _internal_has_alter_table_stmt(); +inline bool Node::_internal_has_column_ref() const { + return node_case() == kColumnRef; } -inline void Node::set_has_alter_table_stmt() { - _impl_._oneof_case_[0] = kAlterTableStmt; +inline void Node::set_has_column_ref() { + _impl_._oneof_case_[0] = kColumnRef; } -inline void Node::clear_alter_table_stmt() { - if (_internal_has_alter_table_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_table_stmt_; +inline void Node::clear_column_ref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kColumnRef) { + if (GetArena() == nullptr) { + delete _impl_.node_.column_ref_; } clear_has_node(); } } -inline ::pg_query::AlterTableStmt* Node::release_alter_table_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_table_stmt) - if (_internal_has_alter_table_stmt()) { +inline ::pg_query::ColumnRef* Node::release_column_ref() { + // @@protoc_insertion_point(field_release:pg_query.Node.column_ref) + if (node_case() == kColumnRef) { clear_has_node(); - ::pg_query::AlterTableStmt* temp = _impl_.node_.alter_table_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.column_ref_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_table_stmt_ = nullptr; + _impl_.node_.column_ref_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterTableStmt& Node::_internal_alter_table_stmt() const { - return _internal_has_alter_table_stmt() - ? *_impl_.node_.alter_table_stmt_ - : reinterpret_cast< ::pg_query::AlterTableStmt&>(::pg_query::_AlterTableStmt_default_instance_); +inline const ::pg_query::ColumnRef& Node::_internal_column_ref() const { + return node_case() == kColumnRef ? *_impl_.node_.column_ref_ : reinterpret_cast<::pg_query::ColumnRef&>(::pg_query::_ColumnRef_default_instance_); } -inline const ::pg_query::AlterTableStmt& Node::alter_table_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_table_stmt) - return _internal_alter_table_stmt(); +inline const ::pg_query::ColumnRef& Node::column_ref() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.column_ref) + return _internal_column_ref(); } -inline ::pg_query::AlterTableStmt* Node::unsafe_arena_release_alter_table_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_table_stmt) - if (_internal_has_alter_table_stmt()) { +inline ::pg_query::ColumnRef* Node::unsafe_arena_release_column_ref() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.column_ref) + if (node_case() == kColumnRef) { clear_has_node(); - ::pg_query::AlterTableStmt* temp = _impl_.node_.alter_table_stmt_; - _impl_.node_.alter_table_stmt_ = nullptr; + auto* temp = _impl_.node_.column_ref_; + _impl_.node_.column_ref_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_table_stmt(::pg_query::AlterTableStmt* alter_table_stmt) { +inline void Node::unsafe_arena_set_allocated_column_ref(::pg_query::ColumnRef* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_table_stmt) { - set_has_alter_table_stmt(); - _impl_.node_.alter_table_stmt_ = alter_table_stmt; + if (value) { + set_has_column_ref(); + _impl_.node_.column_ref_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_table_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.column_ref) } -inline ::pg_query::AlterTableStmt* Node::_internal_mutable_alter_table_stmt() { - if (!_internal_has_alter_table_stmt()) { +inline ::pg_query::ColumnRef* Node::_internal_mutable_column_ref() { + if (node_case() != kColumnRef) { clear_node(); - set_has_alter_table_stmt(); - _impl_.node_.alter_table_stmt_ = CreateMaybeMessage< ::pg_query::AlterTableStmt >(GetArenaForAllocation()); + set_has_column_ref(); + _impl_.node_.column_ref_ = CreateMaybeMessage<::pg_query::ColumnRef>(GetArena()); } - return _impl_.node_.alter_table_stmt_; + return _impl_.node_.column_ref_; } -inline ::pg_query::AlterTableStmt* Node::mutable_alter_table_stmt() { - ::pg_query::AlterTableStmt* _msg = _internal_mutable_alter_table_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_table_stmt) +inline ::pg_query::ColumnRef* Node::mutable_column_ref() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ColumnRef* _msg = _internal_mutable_column_ref(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.column_ref) return _msg; } -// .pg_query.AlterTableCmd alter_table_cmd = 62 [json_name = "AlterTableCmd"]; -inline bool Node::_internal_has_alter_table_cmd() const { - return node_case() == kAlterTableCmd; +// .pg_query.ParamRef param_ref = 59 [json_name = "ParamRef"]; +inline bool Node::has_param_ref() const { + return node_case() == kParamRef; } -inline bool Node::has_alter_table_cmd() const { - return _internal_has_alter_table_cmd(); +inline bool Node::_internal_has_param_ref() const { + return node_case() == kParamRef; } -inline void Node::set_has_alter_table_cmd() { - _impl_._oneof_case_[0] = kAlterTableCmd; +inline void Node::set_has_param_ref() { + _impl_._oneof_case_[0] = kParamRef; } -inline void Node::clear_alter_table_cmd() { - if (_internal_has_alter_table_cmd()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_table_cmd_; +inline void Node::clear_param_ref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kParamRef) { + if (GetArena() == nullptr) { + delete _impl_.node_.param_ref_; } clear_has_node(); } } -inline ::pg_query::AlterTableCmd* Node::release_alter_table_cmd() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_table_cmd) - if (_internal_has_alter_table_cmd()) { +inline ::pg_query::ParamRef* Node::release_param_ref() { + // @@protoc_insertion_point(field_release:pg_query.Node.param_ref) + if (node_case() == kParamRef) { clear_has_node(); - ::pg_query::AlterTableCmd* temp = _impl_.node_.alter_table_cmd_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.param_ref_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_table_cmd_ = nullptr; + _impl_.node_.param_ref_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterTableCmd& Node::_internal_alter_table_cmd() const { - return _internal_has_alter_table_cmd() - ? *_impl_.node_.alter_table_cmd_ - : reinterpret_cast< ::pg_query::AlterTableCmd&>(::pg_query::_AlterTableCmd_default_instance_); +inline const ::pg_query::ParamRef& Node::_internal_param_ref() const { + return node_case() == kParamRef ? *_impl_.node_.param_ref_ : reinterpret_cast<::pg_query::ParamRef&>(::pg_query::_ParamRef_default_instance_); } -inline const ::pg_query::AlterTableCmd& Node::alter_table_cmd() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_table_cmd) - return _internal_alter_table_cmd(); +inline const ::pg_query::ParamRef& Node::param_ref() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.param_ref) + return _internal_param_ref(); } -inline ::pg_query::AlterTableCmd* Node::unsafe_arena_release_alter_table_cmd() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_table_cmd) - if (_internal_has_alter_table_cmd()) { +inline ::pg_query::ParamRef* Node::unsafe_arena_release_param_ref() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.param_ref) + if (node_case() == kParamRef) { clear_has_node(); - ::pg_query::AlterTableCmd* temp = _impl_.node_.alter_table_cmd_; - _impl_.node_.alter_table_cmd_ = nullptr; + auto* temp = _impl_.node_.param_ref_; + _impl_.node_.param_ref_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_table_cmd(::pg_query::AlterTableCmd* alter_table_cmd) { +inline void Node::unsafe_arena_set_allocated_param_ref(::pg_query::ParamRef* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_table_cmd) { - set_has_alter_table_cmd(); - _impl_.node_.alter_table_cmd_ = alter_table_cmd; + if (value) { + set_has_param_ref(); + _impl_.node_.param_ref_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_table_cmd) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.param_ref) } -inline ::pg_query::AlterTableCmd* Node::_internal_mutable_alter_table_cmd() { - if (!_internal_has_alter_table_cmd()) { +inline ::pg_query::ParamRef* Node::_internal_mutable_param_ref() { + if (node_case() != kParamRef) { clear_node(); - set_has_alter_table_cmd(); - _impl_.node_.alter_table_cmd_ = CreateMaybeMessage< ::pg_query::AlterTableCmd >(GetArenaForAllocation()); + set_has_param_ref(); + _impl_.node_.param_ref_ = CreateMaybeMessage<::pg_query::ParamRef>(GetArena()); } - return _impl_.node_.alter_table_cmd_; + return _impl_.node_.param_ref_; } -inline ::pg_query::AlterTableCmd* Node::mutable_alter_table_cmd() { - ::pg_query::AlterTableCmd* _msg = _internal_mutable_alter_table_cmd(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_table_cmd) +inline ::pg_query::ParamRef* Node::mutable_param_ref() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ParamRef* _msg = _internal_mutable_param_ref(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.param_ref) return _msg; } -// .pg_query.AlterDomainStmt alter_domain_stmt = 63 [json_name = "AlterDomainStmt"]; -inline bool Node::_internal_has_alter_domain_stmt() const { - return node_case() == kAlterDomainStmt; +// .pg_query.A_Expr a_expr = 60 [json_name = "A_Expr"]; +inline bool Node::has_a_expr() const { + return node_case() == kAExpr; } -inline bool Node::has_alter_domain_stmt() const { - return _internal_has_alter_domain_stmt(); +inline bool Node::_internal_has_a_expr() const { + return node_case() == kAExpr; } -inline void Node::set_has_alter_domain_stmt() { - _impl_._oneof_case_[0] = kAlterDomainStmt; +inline void Node::set_has_a_expr() { + _impl_._oneof_case_[0] = kAExpr; } -inline void Node::clear_alter_domain_stmt() { - if (_internal_has_alter_domain_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_domain_stmt_; +inline void Node::clear_a_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.a_expr_; } clear_has_node(); } } -inline ::pg_query::AlterDomainStmt* Node::release_alter_domain_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_domain_stmt) - if (_internal_has_alter_domain_stmt()) { +inline ::pg_query::A_Expr* Node::release_a_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.a_expr) + if (node_case() == kAExpr) { clear_has_node(); - ::pg_query::AlterDomainStmt* temp = _impl_.node_.alter_domain_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.a_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_domain_stmt_ = nullptr; + _impl_.node_.a_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterDomainStmt& Node::_internal_alter_domain_stmt() const { - return _internal_has_alter_domain_stmt() - ? *_impl_.node_.alter_domain_stmt_ - : reinterpret_cast< ::pg_query::AlterDomainStmt&>(::pg_query::_AlterDomainStmt_default_instance_); +inline const ::pg_query::A_Expr& Node::_internal_a_expr() const { + return node_case() == kAExpr ? *_impl_.node_.a_expr_ : reinterpret_cast<::pg_query::A_Expr&>(::pg_query::_A_Expr_default_instance_); } -inline const ::pg_query::AlterDomainStmt& Node::alter_domain_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_domain_stmt) - return _internal_alter_domain_stmt(); +inline const ::pg_query::A_Expr& Node::a_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.a_expr) + return _internal_a_expr(); } -inline ::pg_query::AlterDomainStmt* Node::unsafe_arena_release_alter_domain_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_domain_stmt) - if (_internal_has_alter_domain_stmt()) { +inline ::pg_query::A_Expr* Node::unsafe_arena_release_a_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_expr) + if (node_case() == kAExpr) { clear_has_node(); - ::pg_query::AlterDomainStmt* temp = _impl_.node_.alter_domain_stmt_; - _impl_.node_.alter_domain_stmt_ = nullptr; + auto* temp = _impl_.node_.a_expr_; + _impl_.node_.a_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_domain_stmt(::pg_query::AlterDomainStmt* alter_domain_stmt) { +inline void Node::unsafe_arena_set_allocated_a_expr(::pg_query::A_Expr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_domain_stmt) { - set_has_alter_domain_stmt(); - _impl_.node_.alter_domain_stmt_ = alter_domain_stmt; + if (value) { + set_has_a_expr(); + _impl_.node_.a_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_domain_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_expr) } -inline ::pg_query::AlterDomainStmt* Node::_internal_mutable_alter_domain_stmt() { - if (!_internal_has_alter_domain_stmt()) { +inline ::pg_query::A_Expr* Node::_internal_mutable_a_expr() { + if (node_case() != kAExpr) { clear_node(); - set_has_alter_domain_stmt(); - _impl_.node_.alter_domain_stmt_ = CreateMaybeMessage< ::pg_query::AlterDomainStmt >(GetArenaForAllocation()); + set_has_a_expr(); + _impl_.node_.a_expr_ = CreateMaybeMessage<::pg_query::A_Expr>(GetArena()); } - return _impl_.node_.alter_domain_stmt_; + return _impl_.node_.a_expr_; } -inline ::pg_query::AlterDomainStmt* Node::mutable_alter_domain_stmt() { - ::pg_query::AlterDomainStmt* _msg = _internal_mutable_alter_domain_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_domain_stmt) +inline ::pg_query::A_Expr* Node::mutable_a_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::A_Expr* _msg = _internal_mutable_a_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.a_expr) return _msg; } -// .pg_query.SetOperationStmt set_operation_stmt = 64 [json_name = "SetOperationStmt"]; -inline bool Node::_internal_has_set_operation_stmt() const { - return node_case() == kSetOperationStmt; +// .pg_query.TypeCast type_cast = 61 [json_name = "TypeCast"]; +inline bool Node::has_type_cast() const { + return node_case() == kTypeCast; } -inline bool Node::has_set_operation_stmt() const { - return _internal_has_set_operation_stmt(); +inline bool Node::_internal_has_type_cast() const { + return node_case() == kTypeCast; } -inline void Node::set_has_set_operation_stmt() { - _impl_._oneof_case_[0] = kSetOperationStmt; +inline void Node::set_has_type_cast() { + _impl_._oneof_case_[0] = kTypeCast; } -inline void Node::clear_set_operation_stmt() { - if (_internal_has_set_operation_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.set_operation_stmt_; +inline void Node::clear_type_cast() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kTypeCast) { + if (GetArena() == nullptr) { + delete _impl_.node_.type_cast_; } clear_has_node(); } } -inline ::pg_query::SetOperationStmt* Node::release_set_operation_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.set_operation_stmt) - if (_internal_has_set_operation_stmt()) { +inline ::pg_query::TypeCast* Node::release_type_cast() { + // @@protoc_insertion_point(field_release:pg_query.Node.type_cast) + if (node_case() == kTypeCast) { clear_has_node(); - ::pg_query::SetOperationStmt* temp = _impl_.node_.set_operation_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.type_cast_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.set_operation_stmt_ = nullptr; + _impl_.node_.type_cast_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::SetOperationStmt& Node::_internal_set_operation_stmt() const { - return _internal_has_set_operation_stmt() - ? *_impl_.node_.set_operation_stmt_ - : reinterpret_cast< ::pg_query::SetOperationStmt&>(::pg_query::_SetOperationStmt_default_instance_); +inline const ::pg_query::TypeCast& Node::_internal_type_cast() const { + return node_case() == kTypeCast ? *_impl_.node_.type_cast_ : reinterpret_cast<::pg_query::TypeCast&>(::pg_query::_TypeCast_default_instance_); } -inline const ::pg_query::SetOperationStmt& Node::set_operation_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.set_operation_stmt) - return _internal_set_operation_stmt(); +inline const ::pg_query::TypeCast& Node::type_cast() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.type_cast) + return _internal_type_cast(); } -inline ::pg_query::SetOperationStmt* Node::unsafe_arena_release_set_operation_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.set_operation_stmt) - if (_internal_has_set_operation_stmt()) { +inline ::pg_query::TypeCast* Node::unsafe_arena_release_type_cast() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.type_cast) + if (node_case() == kTypeCast) { clear_has_node(); - ::pg_query::SetOperationStmt* temp = _impl_.node_.set_operation_stmt_; - _impl_.node_.set_operation_stmt_ = nullptr; + auto* temp = _impl_.node_.type_cast_; + _impl_.node_.type_cast_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_set_operation_stmt(::pg_query::SetOperationStmt* set_operation_stmt) { +inline void Node::unsafe_arena_set_allocated_type_cast(::pg_query::TypeCast* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (set_operation_stmt) { - set_has_set_operation_stmt(); - _impl_.node_.set_operation_stmt_ = set_operation_stmt; + if (value) { + set_has_type_cast(); + _impl_.node_.type_cast_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.set_operation_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.type_cast) } -inline ::pg_query::SetOperationStmt* Node::_internal_mutable_set_operation_stmt() { - if (!_internal_has_set_operation_stmt()) { +inline ::pg_query::TypeCast* Node::_internal_mutable_type_cast() { + if (node_case() != kTypeCast) { clear_node(); - set_has_set_operation_stmt(); - _impl_.node_.set_operation_stmt_ = CreateMaybeMessage< ::pg_query::SetOperationStmt >(GetArenaForAllocation()); + set_has_type_cast(); + _impl_.node_.type_cast_ = CreateMaybeMessage<::pg_query::TypeCast>(GetArena()); } - return _impl_.node_.set_operation_stmt_; + return _impl_.node_.type_cast_; } -inline ::pg_query::SetOperationStmt* Node::mutable_set_operation_stmt() { - ::pg_query::SetOperationStmt* _msg = _internal_mutable_set_operation_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.set_operation_stmt) +inline ::pg_query::TypeCast* Node::mutable_type_cast() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeCast* _msg = _internal_mutable_type_cast(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.type_cast) return _msg; } -// .pg_query.GrantStmt grant_stmt = 65 [json_name = "GrantStmt"]; -inline bool Node::_internal_has_grant_stmt() const { - return node_case() == kGrantStmt; +// .pg_query.CollateClause collate_clause = 62 [json_name = "CollateClause"]; +inline bool Node::has_collate_clause() const { + return node_case() == kCollateClause; } -inline bool Node::has_grant_stmt() const { - return _internal_has_grant_stmt(); +inline bool Node::_internal_has_collate_clause() const { + return node_case() == kCollateClause; } -inline void Node::set_has_grant_stmt() { - _impl_._oneof_case_[0] = kGrantStmt; +inline void Node::set_has_collate_clause() { + _impl_._oneof_case_[0] = kCollateClause; } -inline void Node::clear_grant_stmt() { - if (_internal_has_grant_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.grant_stmt_; +inline void Node::clear_collate_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCollateClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.collate_clause_; } clear_has_node(); } } -inline ::pg_query::GrantStmt* Node::release_grant_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.grant_stmt) - if (_internal_has_grant_stmt()) { +inline ::pg_query::CollateClause* Node::release_collate_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.collate_clause) + if (node_case() == kCollateClause) { clear_has_node(); - ::pg_query::GrantStmt* temp = _impl_.node_.grant_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.collate_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.grant_stmt_ = nullptr; + _impl_.node_.collate_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::GrantStmt& Node::_internal_grant_stmt() const { - return _internal_has_grant_stmt() - ? *_impl_.node_.grant_stmt_ - : reinterpret_cast< ::pg_query::GrantStmt&>(::pg_query::_GrantStmt_default_instance_); +inline const ::pg_query::CollateClause& Node::_internal_collate_clause() const { + return node_case() == kCollateClause ? *_impl_.node_.collate_clause_ : reinterpret_cast<::pg_query::CollateClause&>(::pg_query::_CollateClause_default_instance_); } -inline const ::pg_query::GrantStmt& Node::grant_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.grant_stmt) - return _internal_grant_stmt(); +inline const ::pg_query::CollateClause& Node::collate_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.collate_clause) + return _internal_collate_clause(); } -inline ::pg_query::GrantStmt* Node::unsafe_arena_release_grant_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.grant_stmt) - if (_internal_has_grant_stmt()) { +inline ::pg_query::CollateClause* Node::unsafe_arena_release_collate_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.collate_clause) + if (node_case() == kCollateClause) { clear_has_node(); - ::pg_query::GrantStmt* temp = _impl_.node_.grant_stmt_; - _impl_.node_.grant_stmt_ = nullptr; + auto* temp = _impl_.node_.collate_clause_; + _impl_.node_.collate_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_grant_stmt(::pg_query::GrantStmt* grant_stmt) { +inline void Node::unsafe_arena_set_allocated_collate_clause(::pg_query::CollateClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (grant_stmt) { - set_has_grant_stmt(); - _impl_.node_.grant_stmt_ = grant_stmt; + if (value) { + set_has_collate_clause(); + _impl_.node_.collate_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.grant_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.collate_clause) } -inline ::pg_query::GrantStmt* Node::_internal_mutable_grant_stmt() { - if (!_internal_has_grant_stmt()) { +inline ::pg_query::CollateClause* Node::_internal_mutable_collate_clause() { + if (node_case() != kCollateClause) { clear_node(); - set_has_grant_stmt(); - _impl_.node_.grant_stmt_ = CreateMaybeMessage< ::pg_query::GrantStmt >(GetArenaForAllocation()); + set_has_collate_clause(); + _impl_.node_.collate_clause_ = CreateMaybeMessage<::pg_query::CollateClause>(GetArena()); } - return _impl_.node_.grant_stmt_; + return _impl_.node_.collate_clause_; } -inline ::pg_query::GrantStmt* Node::mutable_grant_stmt() { - ::pg_query::GrantStmt* _msg = _internal_mutable_grant_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.grant_stmt) +inline ::pg_query::CollateClause* Node::mutable_collate_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CollateClause* _msg = _internal_mutable_collate_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.collate_clause) return _msg; } -// .pg_query.GrantRoleStmt grant_role_stmt = 66 [json_name = "GrantRoleStmt"]; -inline bool Node::_internal_has_grant_role_stmt() const { - return node_case() == kGrantRoleStmt; +// .pg_query.RoleSpec role_spec = 63 [json_name = "RoleSpec"]; +inline bool Node::has_role_spec() const { + return node_case() == kRoleSpec; } -inline bool Node::has_grant_role_stmt() const { - return _internal_has_grant_role_stmt(); +inline bool Node::_internal_has_role_spec() const { + return node_case() == kRoleSpec; } -inline void Node::set_has_grant_role_stmt() { - _impl_._oneof_case_[0] = kGrantRoleStmt; +inline void Node::set_has_role_spec() { + _impl_._oneof_case_[0] = kRoleSpec; } -inline void Node::clear_grant_role_stmt() { - if (_internal_has_grant_role_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.grant_role_stmt_; +inline void Node::clear_role_spec() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRoleSpec) { + if (GetArena() == nullptr) { + delete _impl_.node_.role_spec_; } clear_has_node(); } } -inline ::pg_query::GrantRoleStmt* Node::release_grant_role_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.grant_role_stmt) - if (_internal_has_grant_role_stmt()) { +inline ::pg_query::RoleSpec* Node::release_role_spec() { + // @@protoc_insertion_point(field_release:pg_query.Node.role_spec) + if (node_case() == kRoleSpec) { clear_has_node(); - ::pg_query::GrantRoleStmt* temp = _impl_.node_.grant_role_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.role_spec_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.grant_role_stmt_ = nullptr; + _impl_.node_.role_spec_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::GrantRoleStmt& Node::_internal_grant_role_stmt() const { - return _internal_has_grant_role_stmt() - ? *_impl_.node_.grant_role_stmt_ - : reinterpret_cast< ::pg_query::GrantRoleStmt&>(::pg_query::_GrantRoleStmt_default_instance_); +inline const ::pg_query::RoleSpec& Node::_internal_role_spec() const { + return node_case() == kRoleSpec ? *_impl_.node_.role_spec_ : reinterpret_cast<::pg_query::RoleSpec&>(::pg_query::_RoleSpec_default_instance_); } -inline const ::pg_query::GrantRoleStmt& Node::grant_role_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.grant_role_stmt) - return _internal_grant_role_stmt(); +inline const ::pg_query::RoleSpec& Node::role_spec() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.role_spec) + return _internal_role_spec(); } -inline ::pg_query::GrantRoleStmt* Node::unsafe_arena_release_grant_role_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.grant_role_stmt) - if (_internal_has_grant_role_stmt()) { +inline ::pg_query::RoleSpec* Node::unsafe_arena_release_role_spec() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.role_spec) + if (node_case() == kRoleSpec) { clear_has_node(); - ::pg_query::GrantRoleStmt* temp = _impl_.node_.grant_role_stmt_; - _impl_.node_.grant_role_stmt_ = nullptr; + auto* temp = _impl_.node_.role_spec_; + _impl_.node_.role_spec_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_grant_role_stmt(::pg_query::GrantRoleStmt* grant_role_stmt) { +inline void Node::unsafe_arena_set_allocated_role_spec(::pg_query::RoleSpec* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (grant_role_stmt) { - set_has_grant_role_stmt(); - _impl_.node_.grant_role_stmt_ = grant_role_stmt; + if (value) { + set_has_role_spec(); + _impl_.node_.role_spec_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.grant_role_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.role_spec) } -inline ::pg_query::GrantRoleStmt* Node::_internal_mutable_grant_role_stmt() { - if (!_internal_has_grant_role_stmt()) { +inline ::pg_query::RoleSpec* Node::_internal_mutable_role_spec() { + if (node_case() != kRoleSpec) { clear_node(); - set_has_grant_role_stmt(); - _impl_.node_.grant_role_stmt_ = CreateMaybeMessage< ::pg_query::GrantRoleStmt >(GetArenaForAllocation()); + set_has_role_spec(); + _impl_.node_.role_spec_ = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); } - return _impl_.node_.grant_role_stmt_; + return _impl_.node_.role_spec_; } -inline ::pg_query::GrantRoleStmt* Node::mutable_grant_role_stmt() { - ::pg_query::GrantRoleStmt* _msg = _internal_mutable_grant_role_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.grant_role_stmt) +inline ::pg_query::RoleSpec* Node::mutable_role_spec() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_role_spec(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.role_spec) return _msg; } -// .pg_query.AlterDefaultPrivilegesStmt alter_default_privileges_stmt = 67 [json_name = "AlterDefaultPrivilegesStmt"]; -inline bool Node::_internal_has_alter_default_privileges_stmt() const { - return node_case() == kAlterDefaultPrivilegesStmt; +// .pg_query.FuncCall func_call = 64 [json_name = "FuncCall"]; +inline bool Node::has_func_call() const { + return node_case() == kFuncCall; } -inline bool Node::has_alter_default_privileges_stmt() const { - return _internal_has_alter_default_privileges_stmt(); +inline bool Node::_internal_has_func_call() const { + return node_case() == kFuncCall; } -inline void Node::set_has_alter_default_privileges_stmt() { - _impl_._oneof_case_[0] = kAlterDefaultPrivilegesStmt; +inline void Node::set_has_func_call() { + _impl_._oneof_case_[0] = kFuncCall; } -inline void Node::clear_alter_default_privileges_stmt() { - if (_internal_has_alter_default_privileges_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_default_privileges_stmt_; +inline void Node::clear_func_call() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kFuncCall) { + if (GetArena() == nullptr) { + delete _impl_.node_.func_call_; } clear_has_node(); } } -inline ::pg_query::AlterDefaultPrivilegesStmt* Node::release_alter_default_privileges_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_default_privileges_stmt) - if (_internal_has_alter_default_privileges_stmt()) { +inline ::pg_query::FuncCall* Node::release_func_call() { + // @@protoc_insertion_point(field_release:pg_query.Node.func_call) + if (node_case() == kFuncCall) { clear_has_node(); - ::pg_query::AlterDefaultPrivilegesStmt* temp = _impl_.node_.alter_default_privileges_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.func_call_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_default_privileges_stmt_ = nullptr; + _impl_.node_.func_call_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterDefaultPrivilegesStmt& Node::_internal_alter_default_privileges_stmt() const { - return _internal_has_alter_default_privileges_stmt() - ? *_impl_.node_.alter_default_privileges_stmt_ - : reinterpret_cast< ::pg_query::AlterDefaultPrivilegesStmt&>(::pg_query::_AlterDefaultPrivilegesStmt_default_instance_); +inline const ::pg_query::FuncCall& Node::_internal_func_call() const { + return node_case() == kFuncCall ? *_impl_.node_.func_call_ : reinterpret_cast<::pg_query::FuncCall&>(::pg_query::_FuncCall_default_instance_); } -inline const ::pg_query::AlterDefaultPrivilegesStmt& Node::alter_default_privileges_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_default_privileges_stmt) - return _internal_alter_default_privileges_stmt(); +inline const ::pg_query::FuncCall& Node::func_call() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.func_call) + return _internal_func_call(); } -inline ::pg_query::AlterDefaultPrivilegesStmt* Node::unsafe_arena_release_alter_default_privileges_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_default_privileges_stmt) - if (_internal_has_alter_default_privileges_stmt()) { +inline ::pg_query::FuncCall* Node::unsafe_arena_release_func_call() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.func_call) + if (node_case() == kFuncCall) { clear_has_node(); - ::pg_query::AlterDefaultPrivilegesStmt* temp = _impl_.node_.alter_default_privileges_stmt_; - _impl_.node_.alter_default_privileges_stmt_ = nullptr; + auto* temp = _impl_.node_.func_call_; + _impl_.node_.func_call_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_default_privileges_stmt(::pg_query::AlterDefaultPrivilegesStmt* alter_default_privileges_stmt) { +inline void Node::unsafe_arena_set_allocated_func_call(::pg_query::FuncCall* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_default_privileges_stmt) { - set_has_alter_default_privileges_stmt(); - _impl_.node_.alter_default_privileges_stmt_ = alter_default_privileges_stmt; + if (value) { + set_has_func_call(); + _impl_.node_.func_call_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_default_privileges_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.func_call) } -inline ::pg_query::AlterDefaultPrivilegesStmt* Node::_internal_mutable_alter_default_privileges_stmt() { - if (!_internal_has_alter_default_privileges_stmt()) { +inline ::pg_query::FuncCall* Node::_internal_mutable_func_call() { + if (node_case() != kFuncCall) { clear_node(); - set_has_alter_default_privileges_stmt(); - _impl_.node_.alter_default_privileges_stmt_ = CreateMaybeMessage< ::pg_query::AlterDefaultPrivilegesStmt >(GetArenaForAllocation()); + set_has_func_call(); + _impl_.node_.func_call_ = CreateMaybeMessage<::pg_query::FuncCall>(GetArena()); } - return _impl_.node_.alter_default_privileges_stmt_; + return _impl_.node_.func_call_; } -inline ::pg_query::AlterDefaultPrivilegesStmt* Node::mutable_alter_default_privileges_stmt() { - ::pg_query::AlterDefaultPrivilegesStmt* _msg = _internal_mutable_alter_default_privileges_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_default_privileges_stmt) +inline ::pg_query::FuncCall* Node::mutable_func_call() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::FuncCall* _msg = _internal_mutable_func_call(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.func_call) return _msg; } -// .pg_query.ClosePortalStmt close_portal_stmt = 68 [json_name = "ClosePortalStmt"]; -inline bool Node::_internal_has_close_portal_stmt() const { - return node_case() == kClosePortalStmt; +// .pg_query.A_Star a_star = 65 [json_name = "A_Star"]; +inline bool Node::has_a_star() const { + return node_case() == kAStar; } -inline bool Node::has_close_portal_stmt() const { - return _internal_has_close_portal_stmt(); +inline bool Node::_internal_has_a_star() const { + return node_case() == kAStar; } -inline void Node::set_has_close_portal_stmt() { - _impl_._oneof_case_[0] = kClosePortalStmt; +inline void Node::set_has_a_star() { + _impl_._oneof_case_[0] = kAStar; } -inline void Node::clear_close_portal_stmt() { - if (_internal_has_close_portal_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.close_portal_stmt_; +inline void Node::clear_a_star() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAStar) { + if (GetArena() == nullptr) { + delete _impl_.node_.a_star_; } clear_has_node(); } } -inline ::pg_query::ClosePortalStmt* Node::release_close_portal_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.close_portal_stmt) - if (_internal_has_close_portal_stmt()) { +inline ::pg_query::A_Star* Node::release_a_star() { + // @@protoc_insertion_point(field_release:pg_query.Node.a_star) + if (node_case() == kAStar) { clear_has_node(); - ::pg_query::ClosePortalStmt* temp = _impl_.node_.close_portal_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.a_star_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.close_portal_stmt_ = nullptr; + _impl_.node_.a_star_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ClosePortalStmt& Node::_internal_close_portal_stmt() const { - return _internal_has_close_portal_stmt() - ? *_impl_.node_.close_portal_stmt_ - : reinterpret_cast< ::pg_query::ClosePortalStmt&>(::pg_query::_ClosePortalStmt_default_instance_); +inline const ::pg_query::A_Star& Node::_internal_a_star() const { + return node_case() == kAStar ? *_impl_.node_.a_star_ : reinterpret_cast<::pg_query::A_Star&>(::pg_query::_A_Star_default_instance_); } -inline const ::pg_query::ClosePortalStmt& Node::close_portal_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.close_portal_stmt) - return _internal_close_portal_stmt(); +inline const ::pg_query::A_Star& Node::a_star() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.a_star) + return _internal_a_star(); } -inline ::pg_query::ClosePortalStmt* Node::unsafe_arena_release_close_portal_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.close_portal_stmt) - if (_internal_has_close_portal_stmt()) { +inline ::pg_query::A_Star* Node::unsafe_arena_release_a_star() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_star) + if (node_case() == kAStar) { clear_has_node(); - ::pg_query::ClosePortalStmt* temp = _impl_.node_.close_portal_stmt_; - _impl_.node_.close_portal_stmt_ = nullptr; + auto* temp = _impl_.node_.a_star_; + _impl_.node_.a_star_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_close_portal_stmt(::pg_query::ClosePortalStmt* close_portal_stmt) { +inline void Node::unsafe_arena_set_allocated_a_star(::pg_query::A_Star* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (close_portal_stmt) { - set_has_close_portal_stmt(); - _impl_.node_.close_portal_stmt_ = close_portal_stmt; + if (value) { + set_has_a_star(); + _impl_.node_.a_star_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.close_portal_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_star) } -inline ::pg_query::ClosePortalStmt* Node::_internal_mutable_close_portal_stmt() { - if (!_internal_has_close_portal_stmt()) { +inline ::pg_query::A_Star* Node::_internal_mutable_a_star() { + if (node_case() != kAStar) { clear_node(); - set_has_close_portal_stmt(); - _impl_.node_.close_portal_stmt_ = CreateMaybeMessage< ::pg_query::ClosePortalStmt >(GetArenaForAllocation()); + set_has_a_star(); + _impl_.node_.a_star_ = CreateMaybeMessage<::pg_query::A_Star>(GetArena()); } - return _impl_.node_.close_portal_stmt_; + return _impl_.node_.a_star_; } -inline ::pg_query::ClosePortalStmt* Node::mutable_close_portal_stmt() { - ::pg_query::ClosePortalStmt* _msg = _internal_mutable_close_portal_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.close_portal_stmt) +inline ::pg_query::A_Star* Node::mutable_a_star() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::A_Star* _msg = _internal_mutable_a_star(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.a_star) return _msg; } -// .pg_query.ClusterStmt cluster_stmt = 69 [json_name = "ClusterStmt"]; -inline bool Node::_internal_has_cluster_stmt() const { - return node_case() == kClusterStmt; +// .pg_query.A_Indices a_indices = 66 [json_name = "A_Indices"]; +inline bool Node::has_a_indices() const { + return node_case() == kAIndices; } -inline bool Node::has_cluster_stmt() const { - return _internal_has_cluster_stmt(); +inline bool Node::_internal_has_a_indices() const { + return node_case() == kAIndices; } -inline void Node::set_has_cluster_stmt() { - _impl_._oneof_case_[0] = kClusterStmt; +inline void Node::set_has_a_indices() { + _impl_._oneof_case_[0] = kAIndices; } -inline void Node::clear_cluster_stmt() { - if (_internal_has_cluster_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.cluster_stmt_; +inline void Node::clear_a_indices() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAIndices) { + if (GetArena() == nullptr) { + delete _impl_.node_.a_indices_; } clear_has_node(); } } -inline ::pg_query::ClusterStmt* Node::release_cluster_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.cluster_stmt) - if (_internal_has_cluster_stmt()) { +inline ::pg_query::A_Indices* Node::release_a_indices() { + // @@protoc_insertion_point(field_release:pg_query.Node.a_indices) + if (node_case() == kAIndices) { clear_has_node(); - ::pg_query::ClusterStmt* temp = _impl_.node_.cluster_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.a_indices_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.cluster_stmt_ = nullptr; + _impl_.node_.a_indices_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ClusterStmt& Node::_internal_cluster_stmt() const { - return _internal_has_cluster_stmt() - ? *_impl_.node_.cluster_stmt_ - : reinterpret_cast< ::pg_query::ClusterStmt&>(::pg_query::_ClusterStmt_default_instance_); +inline const ::pg_query::A_Indices& Node::_internal_a_indices() const { + return node_case() == kAIndices ? *_impl_.node_.a_indices_ : reinterpret_cast<::pg_query::A_Indices&>(::pg_query::_A_Indices_default_instance_); } -inline const ::pg_query::ClusterStmt& Node::cluster_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.cluster_stmt) - return _internal_cluster_stmt(); +inline const ::pg_query::A_Indices& Node::a_indices() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.a_indices) + return _internal_a_indices(); } -inline ::pg_query::ClusterStmt* Node::unsafe_arena_release_cluster_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.cluster_stmt) - if (_internal_has_cluster_stmt()) { +inline ::pg_query::A_Indices* Node::unsafe_arena_release_a_indices() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_indices) + if (node_case() == kAIndices) { clear_has_node(); - ::pg_query::ClusterStmt* temp = _impl_.node_.cluster_stmt_; - _impl_.node_.cluster_stmt_ = nullptr; + auto* temp = _impl_.node_.a_indices_; + _impl_.node_.a_indices_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_cluster_stmt(::pg_query::ClusterStmt* cluster_stmt) { +inline void Node::unsafe_arena_set_allocated_a_indices(::pg_query::A_Indices* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (cluster_stmt) { - set_has_cluster_stmt(); - _impl_.node_.cluster_stmt_ = cluster_stmt; + if (value) { + set_has_a_indices(); + _impl_.node_.a_indices_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.cluster_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_indices) } -inline ::pg_query::ClusterStmt* Node::_internal_mutable_cluster_stmt() { - if (!_internal_has_cluster_stmt()) { +inline ::pg_query::A_Indices* Node::_internal_mutable_a_indices() { + if (node_case() != kAIndices) { clear_node(); - set_has_cluster_stmt(); - _impl_.node_.cluster_stmt_ = CreateMaybeMessage< ::pg_query::ClusterStmt >(GetArenaForAllocation()); + set_has_a_indices(); + _impl_.node_.a_indices_ = CreateMaybeMessage<::pg_query::A_Indices>(GetArena()); } - return _impl_.node_.cluster_stmt_; + return _impl_.node_.a_indices_; } -inline ::pg_query::ClusterStmt* Node::mutable_cluster_stmt() { - ::pg_query::ClusterStmt* _msg = _internal_mutable_cluster_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.cluster_stmt) +inline ::pg_query::A_Indices* Node::mutable_a_indices() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::A_Indices* _msg = _internal_mutable_a_indices(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.a_indices) return _msg; } -// .pg_query.CopyStmt copy_stmt = 70 [json_name = "CopyStmt"]; -inline bool Node::_internal_has_copy_stmt() const { - return node_case() == kCopyStmt; +// .pg_query.A_Indirection a_indirection = 67 [json_name = "A_Indirection"]; +inline bool Node::has_a_indirection() const { + return node_case() == kAIndirection; } -inline bool Node::has_copy_stmt() const { - return _internal_has_copy_stmt(); +inline bool Node::_internal_has_a_indirection() const { + return node_case() == kAIndirection; } -inline void Node::set_has_copy_stmt() { - _impl_._oneof_case_[0] = kCopyStmt; +inline void Node::set_has_a_indirection() { + _impl_._oneof_case_[0] = kAIndirection; } -inline void Node::clear_copy_stmt() { - if (_internal_has_copy_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.copy_stmt_; +inline void Node::clear_a_indirection() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAIndirection) { + if (GetArena() == nullptr) { + delete _impl_.node_.a_indirection_; } clear_has_node(); } } -inline ::pg_query::CopyStmt* Node::release_copy_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.copy_stmt) - if (_internal_has_copy_stmt()) { +inline ::pg_query::A_Indirection* Node::release_a_indirection() { + // @@protoc_insertion_point(field_release:pg_query.Node.a_indirection) + if (node_case() == kAIndirection) { clear_has_node(); - ::pg_query::CopyStmt* temp = _impl_.node_.copy_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.a_indirection_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.copy_stmt_ = nullptr; + _impl_.node_.a_indirection_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CopyStmt& Node::_internal_copy_stmt() const { - return _internal_has_copy_stmt() - ? *_impl_.node_.copy_stmt_ - : reinterpret_cast< ::pg_query::CopyStmt&>(::pg_query::_CopyStmt_default_instance_); +inline const ::pg_query::A_Indirection& Node::_internal_a_indirection() const { + return node_case() == kAIndirection ? *_impl_.node_.a_indirection_ : reinterpret_cast<::pg_query::A_Indirection&>(::pg_query::_A_Indirection_default_instance_); } -inline const ::pg_query::CopyStmt& Node::copy_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.copy_stmt) - return _internal_copy_stmt(); +inline const ::pg_query::A_Indirection& Node::a_indirection() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.a_indirection) + return _internal_a_indirection(); } -inline ::pg_query::CopyStmt* Node::unsafe_arena_release_copy_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.copy_stmt) - if (_internal_has_copy_stmt()) { +inline ::pg_query::A_Indirection* Node::unsafe_arena_release_a_indirection() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_indirection) + if (node_case() == kAIndirection) { clear_has_node(); - ::pg_query::CopyStmt* temp = _impl_.node_.copy_stmt_; - _impl_.node_.copy_stmt_ = nullptr; + auto* temp = _impl_.node_.a_indirection_; + _impl_.node_.a_indirection_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_copy_stmt(::pg_query::CopyStmt* copy_stmt) { +inline void Node::unsafe_arena_set_allocated_a_indirection(::pg_query::A_Indirection* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (copy_stmt) { - set_has_copy_stmt(); - _impl_.node_.copy_stmt_ = copy_stmt; + if (value) { + set_has_a_indirection(); + _impl_.node_.a_indirection_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.copy_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_indirection) } -inline ::pg_query::CopyStmt* Node::_internal_mutable_copy_stmt() { - if (!_internal_has_copy_stmt()) { +inline ::pg_query::A_Indirection* Node::_internal_mutable_a_indirection() { + if (node_case() != kAIndirection) { clear_node(); - set_has_copy_stmt(); - _impl_.node_.copy_stmt_ = CreateMaybeMessage< ::pg_query::CopyStmt >(GetArenaForAllocation()); + set_has_a_indirection(); + _impl_.node_.a_indirection_ = CreateMaybeMessage<::pg_query::A_Indirection>(GetArena()); } - return _impl_.node_.copy_stmt_; + return _impl_.node_.a_indirection_; } -inline ::pg_query::CopyStmt* Node::mutable_copy_stmt() { - ::pg_query::CopyStmt* _msg = _internal_mutable_copy_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.copy_stmt) +inline ::pg_query::A_Indirection* Node::mutable_a_indirection() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::A_Indirection* _msg = _internal_mutable_a_indirection(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.a_indirection) return _msg; } -// .pg_query.CreateStmt create_stmt = 71 [json_name = "CreateStmt"]; -inline bool Node::_internal_has_create_stmt() const { - return node_case() == kCreateStmt; +// .pg_query.A_ArrayExpr a_array_expr = 68 [json_name = "A_ArrayExpr"]; +inline bool Node::has_a_array_expr() const { + return node_case() == kAArrayExpr; } -inline bool Node::has_create_stmt() const { - return _internal_has_create_stmt(); +inline bool Node::_internal_has_a_array_expr() const { + return node_case() == kAArrayExpr; } -inline void Node::set_has_create_stmt() { - _impl_._oneof_case_[0] = kCreateStmt; +inline void Node::set_has_a_array_expr() { + _impl_._oneof_case_[0] = kAArrayExpr; } -inline void Node::clear_create_stmt() { - if (_internal_has_create_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_stmt_; +inline void Node::clear_a_array_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAArrayExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.a_array_expr_; } clear_has_node(); } } -inline ::pg_query::CreateStmt* Node::release_create_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_stmt) - if (_internal_has_create_stmt()) { +inline ::pg_query::A_ArrayExpr* Node::release_a_array_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.a_array_expr) + if (node_case() == kAArrayExpr) { clear_has_node(); - ::pg_query::CreateStmt* temp = _impl_.node_.create_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.a_array_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_stmt_ = nullptr; + _impl_.node_.a_array_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateStmt& Node::_internal_create_stmt() const { - return _internal_has_create_stmt() - ? *_impl_.node_.create_stmt_ - : reinterpret_cast< ::pg_query::CreateStmt&>(::pg_query::_CreateStmt_default_instance_); +inline const ::pg_query::A_ArrayExpr& Node::_internal_a_array_expr() const { + return node_case() == kAArrayExpr ? *_impl_.node_.a_array_expr_ : reinterpret_cast<::pg_query::A_ArrayExpr&>(::pg_query::_A_ArrayExpr_default_instance_); } -inline const ::pg_query::CreateStmt& Node::create_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_stmt) - return _internal_create_stmt(); +inline const ::pg_query::A_ArrayExpr& Node::a_array_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.a_array_expr) + return _internal_a_array_expr(); } -inline ::pg_query::CreateStmt* Node::unsafe_arena_release_create_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_stmt) - if (_internal_has_create_stmt()) { +inline ::pg_query::A_ArrayExpr* Node::unsafe_arena_release_a_array_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_array_expr) + if (node_case() == kAArrayExpr) { clear_has_node(); - ::pg_query::CreateStmt* temp = _impl_.node_.create_stmt_; - _impl_.node_.create_stmt_ = nullptr; + auto* temp = _impl_.node_.a_array_expr_; + _impl_.node_.a_array_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_stmt(::pg_query::CreateStmt* create_stmt) { +inline void Node::unsafe_arena_set_allocated_a_array_expr(::pg_query::A_ArrayExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_stmt) { - set_has_create_stmt(); - _impl_.node_.create_stmt_ = create_stmt; + if (value) { + set_has_a_array_expr(); + _impl_.node_.a_array_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_array_expr) } -inline ::pg_query::CreateStmt* Node::_internal_mutable_create_stmt() { - if (!_internal_has_create_stmt()) { +inline ::pg_query::A_ArrayExpr* Node::_internal_mutable_a_array_expr() { + if (node_case() != kAArrayExpr) { clear_node(); - set_has_create_stmt(); - _impl_.node_.create_stmt_ = CreateMaybeMessage< ::pg_query::CreateStmt >(GetArenaForAllocation()); + set_has_a_array_expr(); + _impl_.node_.a_array_expr_ = CreateMaybeMessage<::pg_query::A_ArrayExpr>(GetArena()); } - return _impl_.node_.create_stmt_; + return _impl_.node_.a_array_expr_; } -inline ::pg_query::CreateStmt* Node::mutable_create_stmt() { - ::pg_query::CreateStmt* _msg = _internal_mutable_create_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_stmt) +inline ::pg_query::A_ArrayExpr* Node::mutable_a_array_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::A_ArrayExpr* _msg = _internal_mutable_a_array_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.a_array_expr) return _msg; } -// .pg_query.DefineStmt define_stmt = 72 [json_name = "DefineStmt"]; -inline bool Node::_internal_has_define_stmt() const { - return node_case() == kDefineStmt; +// .pg_query.ResTarget res_target = 69 [json_name = "ResTarget"]; +inline bool Node::has_res_target() const { + return node_case() == kResTarget; } -inline bool Node::has_define_stmt() const { - return _internal_has_define_stmt(); +inline bool Node::_internal_has_res_target() const { + return node_case() == kResTarget; } -inline void Node::set_has_define_stmt() { - _impl_._oneof_case_[0] = kDefineStmt; +inline void Node::set_has_res_target() { + _impl_._oneof_case_[0] = kResTarget; } -inline void Node::clear_define_stmt() { - if (_internal_has_define_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.define_stmt_; +inline void Node::clear_res_target() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kResTarget) { + if (GetArena() == nullptr) { + delete _impl_.node_.res_target_; } clear_has_node(); } } -inline ::pg_query::DefineStmt* Node::release_define_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.define_stmt) - if (_internal_has_define_stmt()) { +inline ::pg_query::ResTarget* Node::release_res_target() { + // @@protoc_insertion_point(field_release:pg_query.Node.res_target) + if (node_case() == kResTarget) { clear_has_node(); - ::pg_query::DefineStmt* temp = _impl_.node_.define_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.res_target_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.define_stmt_ = nullptr; + _impl_.node_.res_target_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DefineStmt& Node::_internal_define_stmt() const { - return _internal_has_define_stmt() - ? *_impl_.node_.define_stmt_ - : reinterpret_cast< ::pg_query::DefineStmt&>(::pg_query::_DefineStmt_default_instance_); +inline const ::pg_query::ResTarget& Node::_internal_res_target() const { + return node_case() == kResTarget ? *_impl_.node_.res_target_ : reinterpret_cast<::pg_query::ResTarget&>(::pg_query::_ResTarget_default_instance_); } -inline const ::pg_query::DefineStmt& Node::define_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.define_stmt) - return _internal_define_stmt(); +inline const ::pg_query::ResTarget& Node::res_target() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.res_target) + return _internal_res_target(); } -inline ::pg_query::DefineStmt* Node::unsafe_arena_release_define_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.define_stmt) - if (_internal_has_define_stmt()) { +inline ::pg_query::ResTarget* Node::unsafe_arena_release_res_target() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.res_target) + if (node_case() == kResTarget) { clear_has_node(); - ::pg_query::DefineStmt* temp = _impl_.node_.define_stmt_; - _impl_.node_.define_stmt_ = nullptr; + auto* temp = _impl_.node_.res_target_; + _impl_.node_.res_target_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_define_stmt(::pg_query::DefineStmt* define_stmt) { +inline void Node::unsafe_arena_set_allocated_res_target(::pg_query::ResTarget* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (define_stmt) { - set_has_define_stmt(); - _impl_.node_.define_stmt_ = define_stmt; + if (value) { + set_has_res_target(); + _impl_.node_.res_target_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.define_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.res_target) } -inline ::pg_query::DefineStmt* Node::_internal_mutable_define_stmt() { - if (!_internal_has_define_stmt()) { +inline ::pg_query::ResTarget* Node::_internal_mutable_res_target() { + if (node_case() != kResTarget) { clear_node(); - set_has_define_stmt(); - _impl_.node_.define_stmt_ = CreateMaybeMessage< ::pg_query::DefineStmt >(GetArenaForAllocation()); + set_has_res_target(); + _impl_.node_.res_target_ = CreateMaybeMessage<::pg_query::ResTarget>(GetArena()); } - return _impl_.node_.define_stmt_; + return _impl_.node_.res_target_; } -inline ::pg_query::DefineStmt* Node::mutable_define_stmt() { - ::pg_query::DefineStmt* _msg = _internal_mutable_define_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.define_stmt) +inline ::pg_query::ResTarget* Node::mutable_res_target() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ResTarget* _msg = _internal_mutable_res_target(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.res_target) return _msg; } -// .pg_query.DropStmt drop_stmt = 73 [json_name = "DropStmt"]; -inline bool Node::_internal_has_drop_stmt() const { - return node_case() == kDropStmt; +// .pg_query.MultiAssignRef multi_assign_ref = 70 [json_name = "MultiAssignRef"]; +inline bool Node::has_multi_assign_ref() const { + return node_case() == kMultiAssignRef; } -inline bool Node::has_drop_stmt() const { - return _internal_has_drop_stmt(); +inline bool Node::_internal_has_multi_assign_ref() const { + return node_case() == kMultiAssignRef; } -inline void Node::set_has_drop_stmt() { - _impl_._oneof_case_[0] = kDropStmt; +inline void Node::set_has_multi_assign_ref() { + _impl_._oneof_case_[0] = kMultiAssignRef; } -inline void Node::clear_drop_stmt() { - if (_internal_has_drop_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.drop_stmt_; +inline void Node::clear_multi_assign_ref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kMultiAssignRef) { + if (GetArena() == nullptr) { + delete _impl_.node_.multi_assign_ref_; } clear_has_node(); } } -inline ::pg_query::DropStmt* Node::release_drop_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.drop_stmt) - if (_internal_has_drop_stmt()) { +inline ::pg_query::MultiAssignRef* Node::release_multi_assign_ref() { + // @@protoc_insertion_point(field_release:pg_query.Node.multi_assign_ref) + if (node_case() == kMultiAssignRef) { clear_has_node(); - ::pg_query::DropStmt* temp = _impl_.node_.drop_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.multi_assign_ref_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.drop_stmt_ = nullptr; + _impl_.node_.multi_assign_ref_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DropStmt& Node::_internal_drop_stmt() const { - return _internal_has_drop_stmt() - ? *_impl_.node_.drop_stmt_ - : reinterpret_cast< ::pg_query::DropStmt&>(::pg_query::_DropStmt_default_instance_); +inline const ::pg_query::MultiAssignRef& Node::_internal_multi_assign_ref() const { + return node_case() == kMultiAssignRef ? *_impl_.node_.multi_assign_ref_ : reinterpret_cast<::pg_query::MultiAssignRef&>(::pg_query::_MultiAssignRef_default_instance_); } -inline const ::pg_query::DropStmt& Node::drop_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.drop_stmt) - return _internal_drop_stmt(); +inline const ::pg_query::MultiAssignRef& Node::multi_assign_ref() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.multi_assign_ref) + return _internal_multi_assign_ref(); } -inline ::pg_query::DropStmt* Node::unsafe_arena_release_drop_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_stmt) - if (_internal_has_drop_stmt()) { +inline ::pg_query::MultiAssignRef* Node::unsafe_arena_release_multi_assign_ref() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.multi_assign_ref) + if (node_case() == kMultiAssignRef) { clear_has_node(); - ::pg_query::DropStmt* temp = _impl_.node_.drop_stmt_; - _impl_.node_.drop_stmt_ = nullptr; + auto* temp = _impl_.node_.multi_assign_ref_; + _impl_.node_.multi_assign_ref_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_drop_stmt(::pg_query::DropStmt* drop_stmt) { +inline void Node::unsafe_arena_set_allocated_multi_assign_ref(::pg_query::MultiAssignRef* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (drop_stmt) { - set_has_drop_stmt(); - _impl_.node_.drop_stmt_ = drop_stmt; + if (value) { + set_has_multi_assign_ref(); + _impl_.node_.multi_assign_ref_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.multi_assign_ref) } -inline ::pg_query::DropStmt* Node::_internal_mutable_drop_stmt() { - if (!_internal_has_drop_stmt()) { +inline ::pg_query::MultiAssignRef* Node::_internal_mutable_multi_assign_ref() { + if (node_case() != kMultiAssignRef) { clear_node(); - set_has_drop_stmt(); - _impl_.node_.drop_stmt_ = CreateMaybeMessage< ::pg_query::DropStmt >(GetArenaForAllocation()); + set_has_multi_assign_ref(); + _impl_.node_.multi_assign_ref_ = CreateMaybeMessage<::pg_query::MultiAssignRef>(GetArena()); } - return _impl_.node_.drop_stmt_; + return _impl_.node_.multi_assign_ref_; } -inline ::pg_query::DropStmt* Node::mutable_drop_stmt() { - ::pg_query::DropStmt* _msg = _internal_mutable_drop_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_stmt) +inline ::pg_query::MultiAssignRef* Node::mutable_multi_assign_ref() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::MultiAssignRef* _msg = _internal_mutable_multi_assign_ref(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.multi_assign_ref) return _msg; } -// .pg_query.TruncateStmt truncate_stmt = 74 [json_name = "TruncateStmt"]; -inline bool Node::_internal_has_truncate_stmt() const { - return node_case() == kTruncateStmt; +// .pg_query.SortBy sort_by = 71 [json_name = "SortBy"]; +inline bool Node::has_sort_by() const { + return node_case() == kSortBy; } -inline bool Node::has_truncate_stmt() const { - return _internal_has_truncate_stmt(); +inline bool Node::_internal_has_sort_by() const { + return node_case() == kSortBy; } -inline void Node::set_has_truncate_stmt() { - _impl_._oneof_case_[0] = kTruncateStmt; +inline void Node::set_has_sort_by() { + _impl_._oneof_case_[0] = kSortBy; } -inline void Node::clear_truncate_stmt() { - if (_internal_has_truncate_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.truncate_stmt_; +inline void Node::clear_sort_by() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSortBy) { + if (GetArena() == nullptr) { + delete _impl_.node_.sort_by_; } clear_has_node(); } } -inline ::pg_query::TruncateStmt* Node::release_truncate_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.truncate_stmt) - if (_internal_has_truncate_stmt()) { +inline ::pg_query::SortBy* Node::release_sort_by() { + // @@protoc_insertion_point(field_release:pg_query.Node.sort_by) + if (node_case() == kSortBy) { clear_has_node(); - ::pg_query::TruncateStmt* temp = _impl_.node_.truncate_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.sort_by_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.truncate_stmt_ = nullptr; + _impl_.node_.sort_by_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::TruncateStmt& Node::_internal_truncate_stmt() const { - return _internal_has_truncate_stmt() - ? *_impl_.node_.truncate_stmt_ - : reinterpret_cast< ::pg_query::TruncateStmt&>(::pg_query::_TruncateStmt_default_instance_); +inline const ::pg_query::SortBy& Node::_internal_sort_by() const { + return node_case() == kSortBy ? *_impl_.node_.sort_by_ : reinterpret_cast<::pg_query::SortBy&>(::pg_query::_SortBy_default_instance_); } -inline const ::pg_query::TruncateStmt& Node::truncate_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.truncate_stmt) - return _internal_truncate_stmt(); +inline const ::pg_query::SortBy& Node::sort_by() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.sort_by) + return _internal_sort_by(); } -inline ::pg_query::TruncateStmt* Node::unsafe_arena_release_truncate_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.truncate_stmt) - if (_internal_has_truncate_stmt()) { +inline ::pg_query::SortBy* Node::unsafe_arena_release_sort_by() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.sort_by) + if (node_case() == kSortBy) { clear_has_node(); - ::pg_query::TruncateStmt* temp = _impl_.node_.truncate_stmt_; - _impl_.node_.truncate_stmt_ = nullptr; + auto* temp = _impl_.node_.sort_by_; + _impl_.node_.sort_by_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_truncate_stmt(::pg_query::TruncateStmt* truncate_stmt) { +inline void Node::unsafe_arena_set_allocated_sort_by(::pg_query::SortBy* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (truncate_stmt) { - set_has_truncate_stmt(); - _impl_.node_.truncate_stmt_ = truncate_stmt; + if (value) { + set_has_sort_by(); + _impl_.node_.sort_by_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.truncate_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.sort_by) } -inline ::pg_query::TruncateStmt* Node::_internal_mutable_truncate_stmt() { - if (!_internal_has_truncate_stmt()) { +inline ::pg_query::SortBy* Node::_internal_mutable_sort_by() { + if (node_case() != kSortBy) { clear_node(); - set_has_truncate_stmt(); - _impl_.node_.truncate_stmt_ = CreateMaybeMessage< ::pg_query::TruncateStmt >(GetArenaForAllocation()); + set_has_sort_by(); + _impl_.node_.sort_by_ = CreateMaybeMessage<::pg_query::SortBy>(GetArena()); } - return _impl_.node_.truncate_stmt_; + return _impl_.node_.sort_by_; } -inline ::pg_query::TruncateStmt* Node::mutable_truncate_stmt() { - ::pg_query::TruncateStmt* _msg = _internal_mutable_truncate_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.truncate_stmt) +inline ::pg_query::SortBy* Node::mutable_sort_by() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::SortBy* _msg = _internal_mutable_sort_by(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.sort_by) return _msg; } -// .pg_query.CommentStmt comment_stmt = 75 [json_name = "CommentStmt"]; -inline bool Node::_internal_has_comment_stmt() const { - return node_case() == kCommentStmt; +// .pg_query.WindowDef window_def = 72 [json_name = "WindowDef"]; +inline bool Node::has_window_def() const { + return node_case() == kWindowDef; } -inline bool Node::has_comment_stmt() const { - return _internal_has_comment_stmt(); +inline bool Node::_internal_has_window_def() const { + return node_case() == kWindowDef; } -inline void Node::set_has_comment_stmt() { - _impl_._oneof_case_[0] = kCommentStmt; +inline void Node::set_has_window_def() { + _impl_._oneof_case_[0] = kWindowDef; } -inline void Node::clear_comment_stmt() { - if (_internal_has_comment_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.comment_stmt_; +inline void Node::clear_window_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kWindowDef) { + if (GetArena() == nullptr) { + delete _impl_.node_.window_def_; } clear_has_node(); } } -inline ::pg_query::CommentStmt* Node::release_comment_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.comment_stmt) - if (_internal_has_comment_stmt()) { +inline ::pg_query::WindowDef* Node::release_window_def() { + // @@protoc_insertion_point(field_release:pg_query.Node.window_def) + if (node_case() == kWindowDef) { clear_has_node(); - ::pg_query::CommentStmt* temp = _impl_.node_.comment_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.window_def_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.comment_stmt_ = nullptr; + _impl_.node_.window_def_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CommentStmt& Node::_internal_comment_stmt() const { - return _internal_has_comment_stmt() - ? *_impl_.node_.comment_stmt_ - : reinterpret_cast< ::pg_query::CommentStmt&>(::pg_query::_CommentStmt_default_instance_); +inline const ::pg_query::WindowDef& Node::_internal_window_def() const { + return node_case() == kWindowDef ? *_impl_.node_.window_def_ : reinterpret_cast<::pg_query::WindowDef&>(::pg_query::_WindowDef_default_instance_); } -inline const ::pg_query::CommentStmt& Node::comment_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.comment_stmt) - return _internal_comment_stmt(); +inline const ::pg_query::WindowDef& Node::window_def() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.window_def) + return _internal_window_def(); } -inline ::pg_query::CommentStmt* Node::unsafe_arena_release_comment_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.comment_stmt) - if (_internal_has_comment_stmt()) { +inline ::pg_query::WindowDef* Node::unsafe_arena_release_window_def() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.window_def) + if (node_case() == kWindowDef) { clear_has_node(); - ::pg_query::CommentStmt* temp = _impl_.node_.comment_stmt_; - _impl_.node_.comment_stmt_ = nullptr; + auto* temp = _impl_.node_.window_def_; + _impl_.node_.window_def_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_comment_stmt(::pg_query::CommentStmt* comment_stmt) { +inline void Node::unsafe_arena_set_allocated_window_def(::pg_query::WindowDef* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (comment_stmt) { - set_has_comment_stmt(); - _impl_.node_.comment_stmt_ = comment_stmt; + if (value) { + set_has_window_def(); + _impl_.node_.window_def_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.comment_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.window_def) } -inline ::pg_query::CommentStmt* Node::_internal_mutable_comment_stmt() { - if (!_internal_has_comment_stmt()) { +inline ::pg_query::WindowDef* Node::_internal_mutable_window_def() { + if (node_case() != kWindowDef) { clear_node(); - set_has_comment_stmt(); - _impl_.node_.comment_stmt_ = CreateMaybeMessage< ::pg_query::CommentStmt >(GetArenaForAllocation()); + set_has_window_def(); + _impl_.node_.window_def_ = CreateMaybeMessage<::pg_query::WindowDef>(GetArena()); } - return _impl_.node_.comment_stmt_; + return _impl_.node_.window_def_; } -inline ::pg_query::CommentStmt* Node::mutable_comment_stmt() { - ::pg_query::CommentStmt* _msg = _internal_mutable_comment_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.comment_stmt) +inline ::pg_query::WindowDef* Node::mutable_window_def() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WindowDef* _msg = _internal_mutable_window_def(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.window_def) return _msg; } -// .pg_query.FetchStmt fetch_stmt = 76 [json_name = "FetchStmt"]; -inline bool Node::_internal_has_fetch_stmt() const { - return node_case() == kFetchStmt; +// .pg_query.RangeSubselect range_subselect = 73 [json_name = "RangeSubselect"]; +inline bool Node::has_range_subselect() const { + return node_case() == kRangeSubselect; } -inline bool Node::has_fetch_stmt() const { - return _internal_has_fetch_stmt(); +inline bool Node::_internal_has_range_subselect() const { + return node_case() == kRangeSubselect; } -inline void Node::set_has_fetch_stmt() { - _impl_._oneof_case_[0] = kFetchStmt; +inline void Node::set_has_range_subselect() { + _impl_._oneof_case_[0] = kRangeSubselect; } -inline void Node::clear_fetch_stmt() { - if (_internal_has_fetch_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.fetch_stmt_; +inline void Node::clear_range_subselect() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRangeSubselect) { + if (GetArena() == nullptr) { + delete _impl_.node_.range_subselect_; } clear_has_node(); } } -inline ::pg_query::FetchStmt* Node::release_fetch_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.fetch_stmt) - if (_internal_has_fetch_stmt()) { +inline ::pg_query::RangeSubselect* Node::release_range_subselect() { + // @@protoc_insertion_point(field_release:pg_query.Node.range_subselect) + if (node_case() == kRangeSubselect) { clear_has_node(); - ::pg_query::FetchStmt* temp = _impl_.node_.fetch_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.range_subselect_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.fetch_stmt_ = nullptr; + _impl_.node_.range_subselect_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::FetchStmt& Node::_internal_fetch_stmt() const { - return _internal_has_fetch_stmt() - ? *_impl_.node_.fetch_stmt_ - : reinterpret_cast< ::pg_query::FetchStmt&>(::pg_query::_FetchStmt_default_instance_); +inline const ::pg_query::RangeSubselect& Node::_internal_range_subselect() const { + return node_case() == kRangeSubselect ? *_impl_.node_.range_subselect_ : reinterpret_cast<::pg_query::RangeSubselect&>(::pg_query::_RangeSubselect_default_instance_); } -inline const ::pg_query::FetchStmt& Node::fetch_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.fetch_stmt) - return _internal_fetch_stmt(); +inline const ::pg_query::RangeSubselect& Node::range_subselect() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.range_subselect) + return _internal_range_subselect(); } -inline ::pg_query::FetchStmt* Node::unsafe_arena_release_fetch_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.fetch_stmt) - if (_internal_has_fetch_stmt()) { +inline ::pg_query::RangeSubselect* Node::unsafe_arena_release_range_subselect() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_subselect) + if (node_case() == kRangeSubselect) { clear_has_node(); - ::pg_query::FetchStmt* temp = _impl_.node_.fetch_stmt_; - _impl_.node_.fetch_stmt_ = nullptr; + auto* temp = _impl_.node_.range_subselect_; + _impl_.node_.range_subselect_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_fetch_stmt(::pg_query::FetchStmt* fetch_stmt) { +inline void Node::unsafe_arena_set_allocated_range_subselect(::pg_query::RangeSubselect* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (fetch_stmt) { - set_has_fetch_stmt(); - _impl_.node_.fetch_stmt_ = fetch_stmt; + if (value) { + set_has_range_subselect(); + _impl_.node_.range_subselect_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.fetch_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_subselect) } -inline ::pg_query::FetchStmt* Node::_internal_mutable_fetch_stmt() { - if (!_internal_has_fetch_stmt()) { +inline ::pg_query::RangeSubselect* Node::_internal_mutable_range_subselect() { + if (node_case() != kRangeSubselect) { clear_node(); - set_has_fetch_stmt(); - _impl_.node_.fetch_stmt_ = CreateMaybeMessage< ::pg_query::FetchStmt >(GetArenaForAllocation()); + set_has_range_subselect(); + _impl_.node_.range_subselect_ = CreateMaybeMessage<::pg_query::RangeSubselect>(GetArena()); } - return _impl_.node_.fetch_stmt_; + return _impl_.node_.range_subselect_; } -inline ::pg_query::FetchStmt* Node::mutable_fetch_stmt() { - ::pg_query::FetchStmt* _msg = _internal_mutable_fetch_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.fetch_stmt) +inline ::pg_query::RangeSubselect* Node::mutable_range_subselect() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeSubselect* _msg = _internal_mutable_range_subselect(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.range_subselect) return _msg; } -// .pg_query.IndexStmt index_stmt = 77 [json_name = "IndexStmt"]; -inline bool Node::_internal_has_index_stmt() const { - return node_case() == kIndexStmt; +// .pg_query.RangeFunction range_function = 74 [json_name = "RangeFunction"]; +inline bool Node::has_range_function() const { + return node_case() == kRangeFunction; } -inline bool Node::has_index_stmt() const { - return _internal_has_index_stmt(); +inline bool Node::_internal_has_range_function() const { + return node_case() == kRangeFunction; } -inline void Node::set_has_index_stmt() { - _impl_._oneof_case_[0] = kIndexStmt; +inline void Node::set_has_range_function() { + _impl_._oneof_case_[0] = kRangeFunction; } -inline void Node::clear_index_stmt() { - if (_internal_has_index_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.index_stmt_; +inline void Node::clear_range_function() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRangeFunction) { + if (GetArena() == nullptr) { + delete _impl_.node_.range_function_; } clear_has_node(); } } -inline ::pg_query::IndexStmt* Node::release_index_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.index_stmt) - if (_internal_has_index_stmt()) { +inline ::pg_query::RangeFunction* Node::release_range_function() { + // @@protoc_insertion_point(field_release:pg_query.Node.range_function) + if (node_case() == kRangeFunction) { clear_has_node(); - ::pg_query::IndexStmt* temp = _impl_.node_.index_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.range_function_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.index_stmt_ = nullptr; + _impl_.node_.range_function_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::IndexStmt& Node::_internal_index_stmt() const { - return _internal_has_index_stmt() - ? *_impl_.node_.index_stmt_ - : reinterpret_cast< ::pg_query::IndexStmt&>(::pg_query::_IndexStmt_default_instance_); +inline const ::pg_query::RangeFunction& Node::_internal_range_function() const { + return node_case() == kRangeFunction ? *_impl_.node_.range_function_ : reinterpret_cast<::pg_query::RangeFunction&>(::pg_query::_RangeFunction_default_instance_); } -inline const ::pg_query::IndexStmt& Node::index_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.index_stmt) - return _internal_index_stmt(); +inline const ::pg_query::RangeFunction& Node::range_function() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.range_function) + return _internal_range_function(); } -inline ::pg_query::IndexStmt* Node::unsafe_arena_release_index_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.index_stmt) - if (_internal_has_index_stmt()) { +inline ::pg_query::RangeFunction* Node::unsafe_arena_release_range_function() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_function) + if (node_case() == kRangeFunction) { clear_has_node(); - ::pg_query::IndexStmt* temp = _impl_.node_.index_stmt_; - _impl_.node_.index_stmt_ = nullptr; + auto* temp = _impl_.node_.range_function_; + _impl_.node_.range_function_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_index_stmt(::pg_query::IndexStmt* index_stmt) { +inline void Node::unsafe_arena_set_allocated_range_function(::pg_query::RangeFunction* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (index_stmt) { - set_has_index_stmt(); - _impl_.node_.index_stmt_ = index_stmt; + if (value) { + set_has_range_function(); + _impl_.node_.range_function_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.index_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_function) } -inline ::pg_query::IndexStmt* Node::_internal_mutable_index_stmt() { - if (!_internal_has_index_stmt()) { +inline ::pg_query::RangeFunction* Node::_internal_mutable_range_function() { + if (node_case() != kRangeFunction) { clear_node(); - set_has_index_stmt(); - _impl_.node_.index_stmt_ = CreateMaybeMessage< ::pg_query::IndexStmt >(GetArenaForAllocation()); + set_has_range_function(); + _impl_.node_.range_function_ = CreateMaybeMessage<::pg_query::RangeFunction>(GetArena()); } - return _impl_.node_.index_stmt_; + return _impl_.node_.range_function_; } -inline ::pg_query::IndexStmt* Node::mutable_index_stmt() { - ::pg_query::IndexStmt* _msg = _internal_mutable_index_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.index_stmt) +inline ::pg_query::RangeFunction* Node::mutable_range_function() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeFunction* _msg = _internal_mutable_range_function(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.range_function) return _msg; } -// .pg_query.CreateFunctionStmt create_function_stmt = 78 [json_name = "CreateFunctionStmt"]; -inline bool Node::_internal_has_create_function_stmt() const { - return node_case() == kCreateFunctionStmt; +// .pg_query.RangeTableFunc range_table_func = 75 [json_name = "RangeTableFunc"]; +inline bool Node::has_range_table_func() const { + return node_case() == kRangeTableFunc; } -inline bool Node::has_create_function_stmt() const { - return _internal_has_create_function_stmt(); +inline bool Node::_internal_has_range_table_func() const { + return node_case() == kRangeTableFunc; } -inline void Node::set_has_create_function_stmt() { - _impl_._oneof_case_[0] = kCreateFunctionStmt; +inline void Node::set_has_range_table_func() { + _impl_._oneof_case_[0] = kRangeTableFunc; } -inline void Node::clear_create_function_stmt() { - if (_internal_has_create_function_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_function_stmt_; +inline void Node::clear_range_table_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRangeTableFunc) { + if (GetArena() == nullptr) { + delete _impl_.node_.range_table_func_; } clear_has_node(); } } -inline ::pg_query::CreateFunctionStmt* Node::release_create_function_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_function_stmt) - if (_internal_has_create_function_stmt()) { +inline ::pg_query::RangeTableFunc* Node::release_range_table_func() { + // @@protoc_insertion_point(field_release:pg_query.Node.range_table_func) + if (node_case() == kRangeTableFunc) { clear_has_node(); - ::pg_query::CreateFunctionStmt* temp = _impl_.node_.create_function_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.range_table_func_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_function_stmt_ = nullptr; + _impl_.node_.range_table_func_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateFunctionStmt& Node::_internal_create_function_stmt() const { - return _internal_has_create_function_stmt() - ? *_impl_.node_.create_function_stmt_ - : reinterpret_cast< ::pg_query::CreateFunctionStmt&>(::pg_query::_CreateFunctionStmt_default_instance_); +inline const ::pg_query::RangeTableFunc& Node::_internal_range_table_func() const { + return node_case() == kRangeTableFunc ? *_impl_.node_.range_table_func_ : reinterpret_cast<::pg_query::RangeTableFunc&>(::pg_query::_RangeTableFunc_default_instance_); } -inline const ::pg_query::CreateFunctionStmt& Node::create_function_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_function_stmt) - return _internal_create_function_stmt(); +inline const ::pg_query::RangeTableFunc& Node::range_table_func() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.range_table_func) + return _internal_range_table_func(); } -inline ::pg_query::CreateFunctionStmt* Node::unsafe_arena_release_create_function_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_function_stmt) - if (_internal_has_create_function_stmt()) { +inline ::pg_query::RangeTableFunc* Node::unsafe_arena_release_range_table_func() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_table_func) + if (node_case() == kRangeTableFunc) { clear_has_node(); - ::pg_query::CreateFunctionStmt* temp = _impl_.node_.create_function_stmt_; - _impl_.node_.create_function_stmt_ = nullptr; + auto* temp = _impl_.node_.range_table_func_; + _impl_.node_.range_table_func_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_function_stmt(::pg_query::CreateFunctionStmt* create_function_stmt) { +inline void Node::unsafe_arena_set_allocated_range_table_func(::pg_query::RangeTableFunc* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_function_stmt) { - set_has_create_function_stmt(); - _impl_.node_.create_function_stmt_ = create_function_stmt; + if (value) { + set_has_range_table_func(); + _impl_.node_.range_table_func_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_function_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_table_func) } -inline ::pg_query::CreateFunctionStmt* Node::_internal_mutable_create_function_stmt() { - if (!_internal_has_create_function_stmt()) { +inline ::pg_query::RangeTableFunc* Node::_internal_mutable_range_table_func() { + if (node_case() != kRangeTableFunc) { clear_node(); - set_has_create_function_stmt(); - _impl_.node_.create_function_stmt_ = CreateMaybeMessage< ::pg_query::CreateFunctionStmt >(GetArenaForAllocation()); + set_has_range_table_func(); + _impl_.node_.range_table_func_ = CreateMaybeMessage<::pg_query::RangeTableFunc>(GetArena()); } - return _impl_.node_.create_function_stmt_; + return _impl_.node_.range_table_func_; } -inline ::pg_query::CreateFunctionStmt* Node::mutable_create_function_stmt() { - ::pg_query::CreateFunctionStmt* _msg = _internal_mutable_create_function_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_function_stmt) +inline ::pg_query::RangeTableFunc* Node::mutable_range_table_func() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeTableFunc* _msg = _internal_mutable_range_table_func(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.range_table_func) return _msg; } -// .pg_query.AlterFunctionStmt alter_function_stmt = 79 [json_name = "AlterFunctionStmt"]; -inline bool Node::_internal_has_alter_function_stmt() const { - return node_case() == kAlterFunctionStmt; +// .pg_query.RangeTableFuncCol range_table_func_col = 76 [json_name = "RangeTableFuncCol"]; +inline bool Node::has_range_table_func_col() const { + return node_case() == kRangeTableFuncCol; } -inline bool Node::has_alter_function_stmt() const { - return _internal_has_alter_function_stmt(); +inline bool Node::_internal_has_range_table_func_col() const { + return node_case() == kRangeTableFuncCol; } -inline void Node::set_has_alter_function_stmt() { - _impl_._oneof_case_[0] = kAlterFunctionStmt; +inline void Node::set_has_range_table_func_col() { + _impl_._oneof_case_[0] = kRangeTableFuncCol; } -inline void Node::clear_alter_function_stmt() { - if (_internal_has_alter_function_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_function_stmt_; +inline void Node::clear_range_table_func_col() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRangeTableFuncCol) { + if (GetArena() == nullptr) { + delete _impl_.node_.range_table_func_col_; } clear_has_node(); } } -inline ::pg_query::AlterFunctionStmt* Node::release_alter_function_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_function_stmt) - if (_internal_has_alter_function_stmt()) { +inline ::pg_query::RangeTableFuncCol* Node::release_range_table_func_col() { + // @@protoc_insertion_point(field_release:pg_query.Node.range_table_func_col) + if (node_case() == kRangeTableFuncCol) { clear_has_node(); - ::pg_query::AlterFunctionStmt* temp = _impl_.node_.alter_function_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.range_table_func_col_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_function_stmt_ = nullptr; + _impl_.node_.range_table_func_col_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterFunctionStmt& Node::_internal_alter_function_stmt() const { - return _internal_has_alter_function_stmt() - ? *_impl_.node_.alter_function_stmt_ - : reinterpret_cast< ::pg_query::AlterFunctionStmt&>(::pg_query::_AlterFunctionStmt_default_instance_); +inline const ::pg_query::RangeTableFuncCol& Node::_internal_range_table_func_col() const { + return node_case() == kRangeTableFuncCol ? *_impl_.node_.range_table_func_col_ : reinterpret_cast<::pg_query::RangeTableFuncCol&>(::pg_query::_RangeTableFuncCol_default_instance_); } -inline const ::pg_query::AlterFunctionStmt& Node::alter_function_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_function_stmt) - return _internal_alter_function_stmt(); +inline const ::pg_query::RangeTableFuncCol& Node::range_table_func_col() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.range_table_func_col) + return _internal_range_table_func_col(); } -inline ::pg_query::AlterFunctionStmt* Node::unsafe_arena_release_alter_function_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_function_stmt) - if (_internal_has_alter_function_stmt()) { +inline ::pg_query::RangeTableFuncCol* Node::unsafe_arena_release_range_table_func_col() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_table_func_col) + if (node_case() == kRangeTableFuncCol) { clear_has_node(); - ::pg_query::AlterFunctionStmt* temp = _impl_.node_.alter_function_stmt_; - _impl_.node_.alter_function_stmt_ = nullptr; + auto* temp = _impl_.node_.range_table_func_col_; + _impl_.node_.range_table_func_col_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_function_stmt(::pg_query::AlterFunctionStmt* alter_function_stmt) { +inline void Node::unsafe_arena_set_allocated_range_table_func_col(::pg_query::RangeTableFuncCol* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_function_stmt) { - set_has_alter_function_stmt(); - _impl_.node_.alter_function_stmt_ = alter_function_stmt; + if (value) { + set_has_range_table_func_col(); + _impl_.node_.range_table_func_col_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_function_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_table_func_col) } -inline ::pg_query::AlterFunctionStmt* Node::_internal_mutable_alter_function_stmt() { - if (!_internal_has_alter_function_stmt()) { +inline ::pg_query::RangeTableFuncCol* Node::_internal_mutable_range_table_func_col() { + if (node_case() != kRangeTableFuncCol) { clear_node(); - set_has_alter_function_stmt(); - _impl_.node_.alter_function_stmt_ = CreateMaybeMessage< ::pg_query::AlterFunctionStmt >(GetArenaForAllocation()); + set_has_range_table_func_col(); + _impl_.node_.range_table_func_col_ = CreateMaybeMessage<::pg_query::RangeTableFuncCol>(GetArena()); } - return _impl_.node_.alter_function_stmt_; + return _impl_.node_.range_table_func_col_; } -inline ::pg_query::AlterFunctionStmt* Node::mutable_alter_function_stmt() { - ::pg_query::AlterFunctionStmt* _msg = _internal_mutable_alter_function_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_function_stmt) +inline ::pg_query::RangeTableFuncCol* Node::mutable_range_table_func_col() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeTableFuncCol* _msg = _internal_mutable_range_table_func_col(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.range_table_func_col) return _msg; } -// .pg_query.DoStmt do_stmt = 80 [json_name = "DoStmt"]; -inline bool Node::_internal_has_do_stmt() const { - return node_case() == kDoStmt; +// .pg_query.RangeTableSample range_table_sample = 77 [json_name = "RangeTableSample"]; +inline bool Node::has_range_table_sample() const { + return node_case() == kRangeTableSample; } -inline bool Node::has_do_stmt() const { - return _internal_has_do_stmt(); +inline bool Node::_internal_has_range_table_sample() const { + return node_case() == kRangeTableSample; } -inline void Node::set_has_do_stmt() { - _impl_._oneof_case_[0] = kDoStmt; +inline void Node::set_has_range_table_sample() { + _impl_._oneof_case_[0] = kRangeTableSample; } -inline void Node::clear_do_stmt() { - if (_internal_has_do_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.do_stmt_; +inline void Node::clear_range_table_sample() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRangeTableSample) { + if (GetArena() == nullptr) { + delete _impl_.node_.range_table_sample_; } clear_has_node(); } } -inline ::pg_query::DoStmt* Node::release_do_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.do_stmt) - if (_internal_has_do_stmt()) { +inline ::pg_query::RangeTableSample* Node::release_range_table_sample() { + // @@protoc_insertion_point(field_release:pg_query.Node.range_table_sample) + if (node_case() == kRangeTableSample) { clear_has_node(); - ::pg_query::DoStmt* temp = _impl_.node_.do_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.range_table_sample_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.do_stmt_ = nullptr; + _impl_.node_.range_table_sample_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DoStmt& Node::_internal_do_stmt() const { - return _internal_has_do_stmt() - ? *_impl_.node_.do_stmt_ - : reinterpret_cast< ::pg_query::DoStmt&>(::pg_query::_DoStmt_default_instance_); +inline const ::pg_query::RangeTableSample& Node::_internal_range_table_sample() const { + return node_case() == kRangeTableSample ? *_impl_.node_.range_table_sample_ : reinterpret_cast<::pg_query::RangeTableSample&>(::pg_query::_RangeTableSample_default_instance_); } -inline const ::pg_query::DoStmt& Node::do_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.do_stmt) - return _internal_do_stmt(); +inline const ::pg_query::RangeTableSample& Node::range_table_sample() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.range_table_sample) + return _internal_range_table_sample(); } -inline ::pg_query::DoStmt* Node::unsafe_arena_release_do_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.do_stmt) - if (_internal_has_do_stmt()) { +inline ::pg_query::RangeTableSample* Node::unsafe_arena_release_range_table_sample() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_table_sample) + if (node_case() == kRangeTableSample) { clear_has_node(); - ::pg_query::DoStmt* temp = _impl_.node_.do_stmt_; - _impl_.node_.do_stmt_ = nullptr; + auto* temp = _impl_.node_.range_table_sample_; + _impl_.node_.range_table_sample_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_do_stmt(::pg_query::DoStmt* do_stmt) { +inline void Node::unsafe_arena_set_allocated_range_table_sample(::pg_query::RangeTableSample* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (do_stmt) { - set_has_do_stmt(); - _impl_.node_.do_stmt_ = do_stmt; + if (value) { + set_has_range_table_sample(); + _impl_.node_.range_table_sample_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.do_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_table_sample) } -inline ::pg_query::DoStmt* Node::_internal_mutable_do_stmt() { - if (!_internal_has_do_stmt()) { +inline ::pg_query::RangeTableSample* Node::_internal_mutable_range_table_sample() { + if (node_case() != kRangeTableSample) { clear_node(); - set_has_do_stmt(); - _impl_.node_.do_stmt_ = CreateMaybeMessage< ::pg_query::DoStmt >(GetArenaForAllocation()); + set_has_range_table_sample(); + _impl_.node_.range_table_sample_ = CreateMaybeMessage<::pg_query::RangeTableSample>(GetArena()); } - return _impl_.node_.do_stmt_; + return _impl_.node_.range_table_sample_; } -inline ::pg_query::DoStmt* Node::mutable_do_stmt() { - ::pg_query::DoStmt* _msg = _internal_mutable_do_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.do_stmt) +inline ::pg_query::RangeTableSample* Node::mutable_range_table_sample() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeTableSample* _msg = _internal_mutable_range_table_sample(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.range_table_sample) return _msg; } -// .pg_query.RenameStmt rename_stmt = 81 [json_name = "RenameStmt"]; -inline bool Node::_internal_has_rename_stmt() const { - return node_case() == kRenameStmt; +// .pg_query.ColumnDef column_def = 78 [json_name = "ColumnDef"]; +inline bool Node::has_column_def() const { + return node_case() == kColumnDef; } -inline bool Node::has_rename_stmt() const { - return _internal_has_rename_stmt(); +inline bool Node::_internal_has_column_def() const { + return node_case() == kColumnDef; } -inline void Node::set_has_rename_stmt() { - _impl_._oneof_case_[0] = kRenameStmt; +inline void Node::set_has_column_def() { + _impl_._oneof_case_[0] = kColumnDef; } -inline void Node::clear_rename_stmt() { - if (_internal_has_rename_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.rename_stmt_; +inline void Node::clear_column_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kColumnDef) { + if (GetArena() == nullptr) { + delete _impl_.node_.column_def_; } clear_has_node(); } } -inline ::pg_query::RenameStmt* Node::release_rename_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.rename_stmt) - if (_internal_has_rename_stmt()) { +inline ::pg_query::ColumnDef* Node::release_column_def() { + // @@protoc_insertion_point(field_release:pg_query.Node.column_def) + if (node_case() == kColumnDef) { clear_has_node(); - ::pg_query::RenameStmt* temp = _impl_.node_.rename_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.column_def_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.rename_stmt_ = nullptr; + _impl_.node_.column_def_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RenameStmt& Node::_internal_rename_stmt() const { - return _internal_has_rename_stmt() - ? *_impl_.node_.rename_stmt_ - : reinterpret_cast< ::pg_query::RenameStmt&>(::pg_query::_RenameStmt_default_instance_); +inline const ::pg_query::ColumnDef& Node::_internal_column_def() const { + return node_case() == kColumnDef ? *_impl_.node_.column_def_ : reinterpret_cast<::pg_query::ColumnDef&>(::pg_query::_ColumnDef_default_instance_); } -inline const ::pg_query::RenameStmt& Node::rename_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.rename_stmt) - return _internal_rename_stmt(); +inline const ::pg_query::ColumnDef& Node::column_def() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.column_def) + return _internal_column_def(); } -inline ::pg_query::RenameStmt* Node::unsafe_arena_release_rename_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.rename_stmt) - if (_internal_has_rename_stmt()) { +inline ::pg_query::ColumnDef* Node::unsafe_arena_release_column_def() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.column_def) + if (node_case() == kColumnDef) { clear_has_node(); - ::pg_query::RenameStmt* temp = _impl_.node_.rename_stmt_; - _impl_.node_.rename_stmt_ = nullptr; + auto* temp = _impl_.node_.column_def_; + _impl_.node_.column_def_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_rename_stmt(::pg_query::RenameStmt* rename_stmt) { +inline void Node::unsafe_arena_set_allocated_column_def(::pg_query::ColumnDef* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (rename_stmt) { - set_has_rename_stmt(); - _impl_.node_.rename_stmt_ = rename_stmt; + if (value) { + set_has_column_def(); + _impl_.node_.column_def_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.rename_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.column_def) } -inline ::pg_query::RenameStmt* Node::_internal_mutable_rename_stmt() { - if (!_internal_has_rename_stmt()) { +inline ::pg_query::ColumnDef* Node::_internal_mutable_column_def() { + if (node_case() != kColumnDef) { clear_node(); - set_has_rename_stmt(); - _impl_.node_.rename_stmt_ = CreateMaybeMessage< ::pg_query::RenameStmt >(GetArenaForAllocation()); + set_has_column_def(); + _impl_.node_.column_def_ = CreateMaybeMessage<::pg_query::ColumnDef>(GetArena()); } - return _impl_.node_.rename_stmt_; + return _impl_.node_.column_def_; } -inline ::pg_query::RenameStmt* Node::mutable_rename_stmt() { - ::pg_query::RenameStmt* _msg = _internal_mutable_rename_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.rename_stmt) +inline ::pg_query::ColumnDef* Node::mutable_column_def() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ColumnDef* _msg = _internal_mutable_column_def(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.column_def) return _msg; } -// .pg_query.RuleStmt rule_stmt = 82 [json_name = "RuleStmt"]; -inline bool Node::_internal_has_rule_stmt() const { - return node_case() == kRuleStmt; +// .pg_query.TableLikeClause table_like_clause = 79 [json_name = "TableLikeClause"]; +inline bool Node::has_table_like_clause() const { + return node_case() == kTableLikeClause; } -inline bool Node::has_rule_stmt() const { - return _internal_has_rule_stmt(); +inline bool Node::_internal_has_table_like_clause() const { + return node_case() == kTableLikeClause; } -inline void Node::set_has_rule_stmt() { - _impl_._oneof_case_[0] = kRuleStmt; +inline void Node::set_has_table_like_clause() { + _impl_._oneof_case_[0] = kTableLikeClause; } -inline void Node::clear_rule_stmt() { - if (_internal_has_rule_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.rule_stmt_; +inline void Node::clear_table_like_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kTableLikeClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.table_like_clause_; } clear_has_node(); } } -inline ::pg_query::RuleStmt* Node::release_rule_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.rule_stmt) - if (_internal_has_rule_stmt()) { +inline ::pg_query::TableLikeClause* Node::release_table_like_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.table_like_clause) + if (node_case() == kTableLikeClause) { clear_has_node(); - ::pg_query::RuleStmt* temp = _impl_.node_.rule_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.table_like_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.rule_stmt_ = nullptr; + _impl_.node_.table_like_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RuleStmt& Node::_internal_rule_stmt() const { - return _internal_has_rule_stmt() - ? *_impl_.node_.rule_stmt_ - : reinterpret_cast< ::pg_query::RuleStmt&>(::pg_query::_RuleStmt_default_instance_); +inline const ::pg_query::TableLikeClause& Node::_internal_table_like_clause() const { + return node_case() == kTableLikeClause ? *_impl_.node_.table_like_clause_ : reinterpret_cast<::pg_query::TableLikeClause&>(::pg_query::_TableLikeClause_default_instance_); } -inline const ::pg_query::RuleStmt& Node::rule_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.rule_stmt) - return _internal_rule_stmt(); +inline const ::pg_query::TableLikeClause& Node::table_like_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.table_like_clause) + return _internal_table_like_clause(); } -inline ::pg_query::RuleStmt* Node::unsafe_arena_release_rule_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.rule_stmt) - if (_internal_has_rule_stmt()) { +inline ::pg_query::TableLikeClause* Node::unsafe_arena_release_table_like_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.table_like_clause) + if (node_case() == kTableLikeClause) { clear_has_node(); - ::pg_query::RuleStmt* temp = _impl_.node_.rule_stmt_; - _impl_.node_.rule_stmt_ = nullptr; + auto* temp = _impl_.node_.table_like_clause_; + _impl_.node_.table_like_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_rule_stmt(::pg_query::RuleStmt* rule_stmt) { +inline void Node::unsafe_arena_set_allocated_table_like_clause(::pg_query::TableLikeClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (rule_stmt) { - set_has_rule_stmt(); - _impl_.node_.rule_stmt_ = rule_stmt; + if (value) { + set_has_table_like_clause(); + _impl_.node_.table_like_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.rule_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.table_like_clause) } -inline ::pg_query::RuleStmt* Node::_internal_mutable_rule_stmt() { - if (!_internal_has_rule_stmt()) { +inline ::pg_query::TableLikeClause* Node::_internal_mutable_table_like_clause() { + if (node_case() != kTableLikeClause) { clear_node(); - set_has_rule_stmt(); - _impl_.node_.rule_stmt_ = CreateMaybeMessage< ::pg_query::RuleStmt >(GetArenaForAllocation()); + set_has_table_like_clause(); + _impl_.node_.table_like_clause_ = CreateMaybeMessage<::pg_query::TableLikeClause>(GetArena()); } - return _impl_.node_.rule_stmt_; + return _impl_.node_.table_like_clause_; } -inline ::pg_query::RuleStmt* Node::mutable_rule_stmt() { - ::pg_query::RuleStmt* _msg = _internal_mutable_rule_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.rule_stmt) +inline ::pg_query::TableLikeClause* Node::mutable_table_like_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TableLikeClause* _msg = _internal_mutable_table_like_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.table_like_clause) return _msg; } -// .pg_query.NotifyStmt notify_stmt = 83 [json_name = "NotifyStmt"]; -inline bool Node::_internal_has_notify_stmt() const { - return node_case() == kNotifyStmt; +// .pg_query.IndexElem index_elem = 80 [json_name = "IndexElem"]; +inline bool Node::has_index_elem() const { + return node_case() == kIndexElem; } -inline bool Node::has_notify_stmt() const { - return _internal_has_notify_stmt(); +inline bool Node::_internal_has_index_elem() const { + return node_case() == kIndexElem; } -inline void Node::set_has_notify_stmt() { - _impl_._oneof_case_[0] = kNotifyStmt; +inline void Node::set_has_index_elem() { + _impl_._oneof_case_[0] = kIndexElem; } -inline void Node::clear_notify_stmt() { - if (_internal_has_notify_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.notify_stmt_; +inline void Node::clear_index_elem() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kIndexElem) { + if (GetArena() == nullptr) { + delete _impl_.node_.index_elem_; } clear_has_node(); } } -inline ::pg_query::NotifyStmt* Node::release_notify_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.notify_stmt) - if (_internal_has_notify_stmt()) { +inline ::pg_query::IndexElem* Node::release_index_elem() { + // @@protoc_insertion_point(field_release:pg_query.Node.index_elem) + if (node_case() == kIndexElem) { clear_has_node(); - ::pg_query::NotifyStmt* temp = _impl_.node_.notify_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.index_elem_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.notify_stmt_ = nullptr; + _impl_.node_.index_elem_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::NotifyStmt& Node::_internal_notify_stmt() const { - return _internal_has_notify_stmt() - ? *_impl_.node_.notify_stmt_ - : reinterpret_cast< ::pg_query::NotifyStmt&>(::pg_query::_NotifyStmt_default_instance_); +inline const ::pg_query::IndexElem& Node::_internal_index_elem() const { + return node_case() == kIndexElem ? *_impl_.node_.index_elem_ : reinterpret_cast<::pg_query::IndexElem&>(::pg_query::_IndexElem_default_instance_); } -inline const ::pg_query::NotifyStmt& Node::notify_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.notify_stmt) - return _internal_notify_stmt(); +inline const ::pg_query::IndexElem& Node::index_elem() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.index_elem) + return _internal_index_elem(); } -inline ::pg_query::NotifyStmt* Node::unsafe_arena_release_notify_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.notify_stmt) - if (_internal_has_notify_stmt()) { +inline ::pg_query::IndexElem* Node::unsafe_arena_release_index_elem() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.index_elem) + if (node_case() == kIndexElem) { clear_has_node(); - ::pg_query::NotifyStmt* temp = _impl_.node_.notify_stmt_; - _impl_.node_.notify_stmt_ = nullptr; + auto* temp = _impl_.node_.index_elem_; + _impl_.node_.index_elem_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_notify_stmt(::pg_query::NotifyStmt* notify_stmt) { +inline void Node::unsafe_arena_set_allocated_index_elem(::pg_query::IndexElem* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (notify_stmt) { - set_has_notify_stmt(); - _impl_.node_.notify_stmt_ = notify_stmt; + if (value) { + set_has_index_elem(); + _impl_.node_.index_elem_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.notify_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.index_elem) } -inline ::pg_query::NotifyStmt* Node::_internal_mutable_notify_stmt() { - if (!_internal_has_notify_stmt()) { +inline ::pg_query::IndexElem* Node::_internal_mutable_index_elem() { + if (node_case() != kIndexElem) { clear_node(); - set_has_notify_stmt(); - _impl_.node_.notify_stmt_ = CreateMaybeMessage< ::pg_query::NotifyStmt >(GetArenaForAllocation()); + set_has_index_elem(); + _impl_.node_.index_elem_ = CreateMaybeMessage<::pg_query::IndexElem>(GetArena()); } - return _impl_.node_.notify_stmt_; + return _impl_.node_.index_elem_; } -inline ::pg_query::NotifyStmt* Node::mutable_notify_stmt() { - ::pg_query::NotifyStmt* _msg = _internal_mutable_notify_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.notify_stmt) +inline ::pg_query::IndexElem* Node::mutable_index_elem() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::IndexElem* _msg = _internal_mutable_index_elem(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.index_elem) return _msg; } -// .pg_query.ListenStmt listen_stmt = 84 [json_name = "ListenStmt"]; -inline bool Node::_internal_has_listen_stmt() const { - return node_case() == kListenStmt; +// .pg_query.DefElem def_elem = 81 [json_name = "DefElem"]; +inline bool Node::has_def_elem() const { + return node_case() == kDefElem; } -inline bool Node::has_listen_stmt() const { - return _internal_has_listen_stmt(); +inline bool Node::_internal_has_def_elem() const { + return node_case() == kDefElem; } -inline void Node::set_has_listen_stmt() { - _impl_._oneof_case_[0] = kListenStmt; +inline void Node::set_has_def_elem() { + _impl_._oneof_case_[0] = kDefElem; } -inline void Node::clear_listen_stmt() { - if (_internal_has_listen_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.listen_stmt_; +inline void Node::clear_def_elem() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDefElem) { + if (GetArena() == nullptr) { + delete _impl_.node_.def_elem_; } clear_has_node(); } } -inline ::pg_query::ListenStmt* Node::release_listen_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.listen_stmt) - if (_internal_has_listen_stmt()) { +inline ::pg_query::DefElem* Node::release_def_elem() { + // @@protoc_insertion_point(field_release:pg_query.Node.def_elem) + if (node_case() == kDefElem) { clear_has_node(); - ::pg_query::ListenStmt* temp = _impl_.node_.listen_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.def_elem_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.listen_stmt_ = nullptr; + _impl_.node_.def_elem_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ListenStmt& Node::_internal_listen_stmt() const { - return _internal_has_listen_stmt() - ? *_impl_.node_.listen_stmt_ - : reinterpret_cast< ::pg_query::ListenStmt&>(::pg_query::_ListenStmt_default_instance_); +inline const ::pg_query::DefElem& Node::_internal_def_elem() const { + return node_case() == kDefElem ? *_impl_.node_.def_elem_ : reinterpret_cast<::pg_query::DefElem&>(::pg_query::_DefElem_default_instance_); } -inline const ::pg_query::ListenStmt& Node::listen_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.listen_stmt) - return _internal_listen_stmt(); +inline const ::pg_query::DefElem& Node::def_elem() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.def_elem) + return _internal_def_elem(); } -inline ::pg_query::ListenStmt* Node::unsafe_arena_release_listen_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.listen_stmt) - if (_internal_has_listen_stmt()) { +inline ::pg_query::DefElem* Node::unsafe_arena_release_def_elem() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.def_elem) + if (node_case() == kDefElem) { clear_has_node(); - ::pg_query::ListenStmt* temp = _impl_.node_.listen_stmt_; - _impl_.node_.listen_stmt_ = nullptr; + auto* temp = _impl_.node_.def_elem_; + _impl_.node_.def_elem_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_listen_stmt(::pg_query::ListenStmt* listen_stmt) { +inline void Node::unsafe_arena_set_allocated_def_elem(::pg_query::DefElem* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (listen_stmt) { - set_has_listen_stmt(); - _impl_.node_.listen_stmt_ = listen_stmt; + if (value) { + set_has_def_elem(); + _impl_.node_.def_elem_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.listen_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.def_elem) } -inline ::pg_query::ListenStmt* Node::_internal_mutable_listen_stmt() { - if (!_internal_has_listen_stmt()) { +inline ::pg_query::DefElem* Node::_internal_mutable_def_elem() { + if (node_case() != kDefElem) { clear_node(); - set_has_listen_stmt(); - _impl_.node_.listen_stmt_ = CreateMaybeMessage< ::pg_query::ListenStmt >(GetArenaForAllocation()); + set_has_def_elem(); + _impl_.node_.def_elem_ = CreateMaybeMessage<::pg_query::DefElem>(GetArena()); } - return _impl_.node_.listen_stmt_; + return _impl_.node_.def_elem_; } -inline ::pg_query::ListenStmt* Node::mutable_listen_stmt() { - ::pg_query::ListenStmt* _msg = _internal_mutable_listen_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.listen_stmt) +inline ::pg_query::DefElem* Node::mutable_def_elem() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DefElem* _msg = _internal_mutable_def_elem(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.def_elem) return _msg; } -// .pg_query.UnlistenStmt unlisten_stmt = 85 [json_name = "UnlistenStmt"]; -inline bool Node::_internal_has_unlisten_stmt() const { - return node_case() == kUnlistenStmt; +// .pg_query.LockingClause locking_clause = 82 [json_name = "LockingClause"]; +inline bool Node::has_locking_clause() const { + return node_case() == kLockingClause; } -inline bool Node::has_unlisten_stmt() const { - return _internal_has_unlisten_stmt(); +inline bool Node::_internal_has_locking_clause() const { + return node_case() == kLockingClause; } -inline void Node::set_has_unlisten_stmt() { - _impl_._oneof_case_[0] = kUnlistenStmt; +inline void Node::set_has_locking_clause() { + _impl_._oneof_case_[0] = kLockingClause; } -inline void Node::clear_unlisten_stmt() { - if (_internal_has_unlisten_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.unlisten_stmt_; +inline void Node::clear_locking_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kLockingClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.locking_clause_; } clear_has_node(); } } -inline ::pg_query::UnlistenStmt* Node::release_unlisten_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.unlisten_stmt) - if (_internal_has_unlisten_stmt()) { +inline ::pg_query::LockingClause* Node::release_locking_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.locking_clause) + if (node_case() == kLockingClause) { clear_has_node(); - ::pg_query::UnlistenStmt* temp = _impl_.node_.unlisten_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.locking_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.unlisten_stmt_ = nullptr; + _impl_.node_.locking_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::UnlistenStmt& Node::_internal_unlisten_stmt() const { - return _internal_has_unlisten_stmt() - ? *_impl_.node_.unlisten_stmt_ - : reinterpret_cast< ::pg_query::UnlistenStmt&>(::pg_query::_UnlistenStmt_default_instance_); +inline const ::pg_query::LockingClause& Node::_internal_locking_clause() const { + return node_case() == kLockingClause ? *_impl_.node_.locking_clause_ : reinterpret_cast<::pg_query::LockingClause&>(::pg_query::_LockingClause_default_instance_); } -inline const ::pg_query::UnlistenStmt& Node::unlisten_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.unlisten_stmt) - return _internal_unlisten_stmt(); +inline const ::pg_query::LockingClause& Node::locking_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.locking_clause) + return _internal_locking_clause(); } -inline ::pg_query::UnlistenStmt* Node::unsafe_arena_release_unlisten_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.unlisten_stmt) - if (_internal_has_unlisten_stmt()) { +inline ::pg_query::LockingClause* Node::unsafe_arena_release_locking_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.locking_clause) + if (node_case() == kLockingClause) { clear_has_node(); - ::pg_query::UnlistenStmt* temp = _impl_.node_.unlisten_stmt_; - _impl_.node_.unlisten_stmt_ = nullptr; + auto* temp = _impl_.node_.locking_clause_; + _impl_.node_.locking_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_unlisten_stmt(::pg_query::UnlistenStmt* unlisten_stmt) { +inline void Node::unsafe_arena_set_allocated_locking_clause(::pg_query::LockingClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (unlisten_stmt) { - set_has_unlisten_stmt(); - _impl_.node_.unlisten_stmt_ = unlisten_stmt; + if (value) { + set_has_locking_clause(); + _impl_.node_.locking_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.unlisten_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.locking_clause) } -inline ::pg_query::UnlistenStmt* Node::_internal_mutable_unlisten_stmt() { - if (!_internal_has_unlisten_stmt()) { +inline ::pg_query::LockingClause* Node::_internal_mutable_locking_clause() { + if (node_case() != kLockingClause) { clear_node(); - set_has_unlisten_stmt(); - _impl_.node_.unlisten_stmt_ = CreateMaybeMessage< ::pg_query::UnlistenStmt >(GetArenaForAllocation()); + set_has_locking_clause(); + _impl_.node_.locking_clause_ = CreateMaybeMessage<::pg_query::LockingClause>(GetArena()); } - return _impl_.node_.unlisten_stmt_; + return _impl_.node_.locking_clause_; } -inline ::pg_query::UnlistenStmt* Node::mutable_unlisten_stmt() { - ::pg_query::UnlistenStmt* _msg = _internal_mutable_unlisten_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.unlisten_stmt) +inline ::pg_query::LockingClause* Node::mutable_locking_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::LockingClause* _msg = _internal_mutable_locking_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.locking_clause) return _msg; } -// .pg_query.TransactionStmt transaction_stmt = 86 [json_name = "TransactionStmt"]; -inline bool Node::_internal_has_transaction_stmt() const { - return node_case() == kTransactionStmt; +// .pg_query.XmlSerialize xml_serialize = 83 [json_name = "XmlSerialize"]; +inline bool Node::has_xml_serialize() const { + return node_case() == kXmlSerialize; } -inline bool Node::has_transaction_stmt() const { - return _internal_has_transaction_stmt(); +inline bool Node::_internal_has_xml_serialize() const { + return node_case() == kXmlSerialize; } -inline void Node::set_has_transaction_stmt() { - _impl_._oneof_case_[0] = kTransactionStmt; +inline void Node::set_has_xml_serialize() { + _impl_._oneof_case_[0] = kXmlSerialize; } -inline void Node::clear_transaction_stmt() { - if (_internal_has_transaction_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.transaction_stmt_; +inline void Node::clear_xml_serialize() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kXmlSerialize) { + if (GetArena() == nullptr) { + delete _impl_.node_.xml_serialize_; } clear_has_node(); } } -inline ::pg_query::TransactionStmt* Node::release_transaction_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.transaction_stmt) - if (_internal_has_transaction_stmt()) { +inline ::pg_query::XmlSerialize* Node::release_xml_serialize() { + // @@protoc_insertion_point(field_release:pg_query.Node.xml_serialize) + if (node_case() == kXmlSerialize) { clear_has_node(); - ::pg_query::TransactionStmt* temp = _impl_.node_.transaction_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.xml_serialize_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.transaction_stmt_ = nullptr; + _impl_.node_.xml_serialize_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::TransactionStmt& Node::_internal_transaction_stmt() const { - return _internal_has_transaction_stmt() - ? *_impl_.node_.transaction_stmt_ - : reinterpret_cast< ::pg_query::TransactionStmt&>(::pg_query::_TransactionStmt_default_instance_); +inline const ::pg_query::XmlSerialize& Node::_internal_xml_serialize() const { + return node_case() == kXmlSerialize ? *_impl_.node_.xml_serialize_ : reinterpret_cast<::pg_query::XmlSerialize&>(::pg_query::_XmlSerialize_default_instance_); } -inline const ::pg_query::TransactionStmt& Node::transaction_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.transaction_stmt) - return _internal_transaction_stmt(); +inline const ::pg_query::XmlSerialize& Node::xml_serialize() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.xml_serialize) + return _internal_xml_serialize(); } -inline ::pg_query::TransactionStmt* Node::unsafe_arena_release_transaction_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.transaction_stmt) - if (_internal_has_transaction_stmt()) { +inline ::pg_query::XmlSerialize* Node::unsafe_arena_release_xml_serialize() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.xml_serialize) + if (node_case() == kXmlSerialize) { clear_has_node(); - ::pg_query::TransactionStmt* temp = _impl_.node_.transaction_stmt_; - _impl_.node_.transaction_stmt_ = nullptr; + auto* temp = _impl_.node_.xml_serialize_; + _impl_.node_.xml_serialize_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_transaction_stmt(::pg_query::TransactionStmt* transaction_stmt) { +inline void Node::unsafe_arena_set_allocated_xml_serialize(::pg_query::XmlSerialize* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (transaction_stmt) { - set_has_transaction_stmt(); - _impl_.node_.transaction_stmt_ = transaction_stmt; + if (value) { + set_has_xml_serialize(); + _impl_.node_.xml_serialize_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.transaction_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.xml_serialize) } -inline ::pg_query::TransactionStmt* Node::_internal_mutable_transaction_stmt() { - if (!_internal_has_transaction_stmt()) { +inline ::pg_query::XmlSerialize* Node::_internal_mutable_xml_serialize() { + if (node_case() != kXmlSerialize) { clear_node(); - set_has_transaction_stmt(); - _impl_.node_.transaction_stmt_ = CreateMaybeMessage< ::pg_query::TransactionStmt >(GetArenaForAllocation()); + set_has_xml_serialize(); + _impl_.node_.xml_serialize_ = CreateMaybeMessage<::pg_query::XmlSerialize>(GetArena()); } - return _impl_.node_.transaction_stmt_; + return _impl_.node_.xml_serialize_; } -inline ::pg_query::TransactionStmt* Node::mutable_transaction_stmt() { - ::pg_query::TransactionStmt* _msg = _internal_mutable_transaction_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.transaction_stmt) +inline ::pg_query::XmlSerialize* Node::mutable_xml_serialize() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::XmlSerialize* _msg = _internal_mutable_xml_serialize(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.xml_serialize) return _msg; } -// .pg_query.ViewStmt view_stmt = 87 [json_name = "ViewStmt"]; -inline bool Node::_internal_has_view_stmt() const { - return node_case() == kViewStmt; +// .pg_query.PartitionElem partition_elem = 84 [json_name = "PartitionElem"]; +inline bool Node::has_partition_elem() const { + return node_case() == kPartitionElem; } -inline bool Node::has_view_stmt() const { - return _internal_has_view_stmt(); +inline bool Node::_internal_has_partition_elem() const { + return node_case() == kPartitionElem; } -inline void Node::set_has_view_stmt() { - _impl_._oneof_case_[0] = kViewStmt; +inline void Node::set_has_partition_elem() { + _impl_._oneof_case_[0] = kPartitionElem; } -inline void Node::clear_view_stmt() { - if (_internal_has_view_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.view_stmt_; +inline void Node::clear_partition_elem() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kPartitionElem) { + if (GetArena() == nullptr) { + delete _impl_.node_.partition_elem_; } clear_has_node(); } } -inline ::pg_query::ViewStmt* Node::release_view_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.view_stmt) - if (_internal_has_view_stmt()) { +inline ::pg_query::PartitionElem* Node::release_partition_elem() { + // @@protoc_insertion_point(field_release:pg_query.Node.partition_elem) + if (node_case() == kPartitionElem) { clear_has_node(); - ::pg_query::ViewStmt* temp = _impl_.node_.view_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.partition_elem_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.view_stmt_ = nullptr; + _impl_.node_.partition_elem_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ViewStmt& Node::_internal_view_stmt() const { - return _internal_has_view_stmt() - ? *_impl_.node_.view_stmt_ - : reinterpret_cast< ::pg_query::ViewStmt&>(::pg_query::_ViewStmt_default_instance_); +inline const ::pg_query::PartitionElem& Node::_internal_partition_elem() const { + return node_case() == kPartitionElem ? *_impl_.node_.partition_elem_ : reinterpret_cast<::pg_query::PartitionElem&>(::pg_query::_PartitionElem_default_instance_); } -inline const ::pg_query::ViewStmt& Node::view_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.view_stmt) - return _internal_view_stmt(); +inline const ::pg_query::PartitionElem& Node::partition_elem() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.partition_elem) + return _internal_partition_elem(); } -inline ::pg_query::ViewStmt* Node::unsafe_arena_release_view_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.view_stmt) - if (_internal_has_view_stmt()) { +inline ::pg_query::PartitionElem* Node::unsafe_arena_release_partition_elem() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_elem) + if (node_case() == kPartitionElem) { clear_has_node(); - ::pg_query::ViewStmt* temp = _impl_.node_.view_stmt_; - _impl_.node_.view_stmt_ = nullptr; + auto* temp = _impl_.node_.partition_elem_; + _impl_.node_.partition_elem_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_view_stmt(::pg_query::ViewStmt* view_stmt) { +inline void Node::unsafe_arena_set_allocated_partition_elem(::pg_query::PartitionElem* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (view_stmt) { - set_has_view_stmt(); - _impl_.node_.view_stmt_ = view_stmt; + if (value) { + set_has_partition_elem(); + _impl_.node_.partition_elem_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.view_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_elem) } -inline ::pg_query::ViewStmt* Node::_internal_mutable_view_stmt() { - if (!_internal_has_view_stmt()) { +inline ::pg_query::PartitionElem* Node::_internal_mutable_partition_elem() { + if (node_case() != kPartitionElem) { clear_node(); - set_has_view_stmt(); - _impl_.node_.view_stmt_ = CreateMaybeMessage< ::pg_query::ViewStmt >(GetArenaForAllocation()); + set_has_partition_elem(); + _impl_.node_.partition_elem_ = CreateMaybeMessage<::pg_query::PartitionElem>(GetArena()); } - return _impl_.node_.view_stmt_; + return _impl_.node_.partition_elem_; } -inline ::pg_query::ViewStmt* Node::mutable_view_stmt() { - ::pg_query::ViewStmt* _msg = _internal_mutable_view_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.view_stmt) +inline ::pg_query::PartitionElem* Node::mutable_partition_elem() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PartitionElem* _msg = _internal_mutable_partition_elem(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_elem) return _msg; } -// .pg_query.LoadStmt load_stmt = 88 [json_name = "LoadStmt"]; -inline bool Node::_internal_has_load_stmt() const { - return node_case() == kLoadStmt; +// .pg_query.PartitionSpec partition_spec = 85 [json_name = "PartitionSpec"]; +inline bool Node::has_partition_spec() const { + return node_case() == kPartitionSpec; } -inline bool Node::has_load_stmt() const { - return _internal_has_load_stmt(); +inline bool Node::_internal_has_partition_spec() const { + return node_case() == kPartitionSpec; } -inline void Node::set_has_load_stmt() { - _impl_._oneof_case_[0] = kLoadStmt; +inline void Node::set_has_partition_spec() { + _impl_._oneof_case_[0] = kPartitionSpec; } -inline void Node::clear_load_stmt() { - if (_internal_has_load_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.load_stmt_; +inline void Node::clear_partition_spec() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kPartitionSpec) { + if (GetArena() == nullptr) { + delete _impl_.node_.partition_spec_; } clear_has_node(); } } -inline ::pg_query::LoadStmt* Node::release_load_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.load_stmt) - if (_internal_has_load_stmt()) { +inline ::pg_query::PartitionSpec* Node::release_partition_spec() { + // @@protoc_insertion_point(field_release:pg_query.Node.partition_spec) + if (node_case() == kPartitionSpec) { clear_has_node(); - ::pg_query::LoadStmt* temp = _impl_.node_.load_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.partition_spec_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.load_stmt_ = nullptr; + _impl_.node_.partition_spec_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::LoadStmt& Node::_internal_load_stmt() const { - return _internal_has_load_stmt() - ? *_impl_.node_.load_stmt_ - : reinterpret_cast< ::pg_query::LoadStmt&>(::pg_query::_LoadStmt_default_instance_); +inline const ::pg_query::PartitionSpec& Node::_internal_partition_spec() const { + return node_case() == kPartitionSpec ? *_impl_.node_.partition_spec_ : reinterpret_cast<::pg_query::PartitionSpec&>(::pg_query::_PartitionSpec_default_instance_); } -inline const ::pg_query::LoadStmt& Node::load_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.load_stmt) - return _internal_load_stmt(); +inline const ::pg_query::PartitionSpec& Node::partition_spec() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.partition_spec) + return _internal_partition_spec(); } -inline ::pg_query::LoadStmt* Node::unsafe_arena_release_load_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.load_stmt) - if (_internal_has_load_stmt()) { +inline ::pg_query::PartitionSpec* Node::unsafe_arena_release_partition_spec() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_spec) + if (node_case() == kPartitionSpec) { clear_has_node(); - ::pg_query::LoadStmt* temp = _impl_.node_.load_stmt_; - _impl_.node_.load_stmt_ = nullptr; + auto* temp = _impl_.node_.partition_spec_; + _impl_.node_.partition_spec_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_load_stmt(::pg_query::LoadStmt* load_stmt) { +inline void Node::unsafe_arena_set_allocated_partition_spec(::pg_query::PartitionSpec* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (load_stmt) { - set_has_load_stmt(); - _impl_.node_.load_stmt_ = load_stmt; + if (value) { + set_has_partition_spec(); + _impl_.node_.partition_spec_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.load_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_spec) } -inline ::pg_query::LoadStmt* Node::_internal_mutable_load_stmt() { - if (!_internal_has_load_stmt()) { +inline ::pg_query::PartitionSpec* Node::_internal_mutable_partition_spec() { + if (node_case() != kPartitionSpec) { clear_node(); - set_has_load_stmt(); - _impl_.node_.load_stmt_ = CreateMaybeMessage< ::pg_query::LoadStmt >(GetArenaForAllocation()); + set_has_partition_spec(); + _impl_.node_.partition_spec_ = CreateMaybeMessage<::pg_query::PartitionSpec>(GetArena()); } - return _impl_.node_.load_stmt_; + return _impl_.node_.partition_spec_; } -inline ::pg_query::LoadStmt* Node::mutable_load_stmt() { - ::pg_query::LoadStmt* _msg = _internal_mutable_load_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.load_stmt) +inline ::pg_query::PartitionSpec* Node::mutable_partition_spec() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PartitionSpec* _msg = _internal_mutable_partition_spec(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_spec) return _msg; } -// .pg_query.CreateDomainStmt create_domain_stmt = 89 [json_name = "CreateDomainStmt"]; -inline bool Node::_internal_has_create_domain_stmt() const { - return node_case() == kCreateDomainStmt; +// .pg_query.PartitionBoundSpec partition_bound_spec = 86 [json_name = "PartitionBoundSpec"]; +inline bool Node::has_partition_bound_spec() const { + return node_case() == kPartitionBoundSpec; } -inline bool Node::has_create_domain_stmt() const { - return _internal_has_create_domain_stmt(); +inline bool Node::_internal_has_partition_bound_spec() const { + return node_case() == kPartitionBoundSpec; } -inline void Node::set_has_create_domain_stmt() { - _impl_._oneof_case_[0] = kCreateDomainStmt; +inline void Node::set_has_partition_bound_spec() { + _impl_._oneof_case_[0] = kPartitionBoundSpec; } -inline void Node::clear_create_domain_stmt() { - if (_internal_has_create_domain_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_domain_stmt_; +inline void Node::clear_partition_bound_spec() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kPartitionBoundSpec) { + if (GetArena() == nullptr) { + delete _impl_.node_.partition_bound_spec_; } clear_has_node(); } } -inline ::pg_query::CreateDomainStmt* Node::release_create_domain_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_domain_stmt) - if (_internal_has_create_domain_stmt()) { +inline ::pg_query::PartitionBoundSpec* Node::release_partition_bound_spec() { + // @@protoc_insertion_point(field_release:pg_query.Node.partition_bound_spec) + if (node_case() == kPartitionBoundSpec) { clear_has_node(); - ::pg_query::CreateDomainStmt* temp = _impl_.node_.create_domain_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.partition_bound_spec_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_domain_stmt_ = nullptr; + _impl_.node_.partition_bound_spec_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateDomainStmt& Node::_internal_create_domain_stmt() const { - return _internal_has_create_domain_stmt() - ? *_impl_.node_.create_domain_stmt_ - : reinterpret_cast< ::pg_query::CreateDomainStmt&>(::pg_query::_CreateDomainStmt_default_instance_); +inline const ::pg_query::PartitionBoundSpec& Node::_internal_partition_bound_spec() const { + return node_case() == kPartitionBoundSpec ? *_impl_.node_.partition_bound_spec_ : reinterpret_cast<::pg_query::PartitionBoundSpec&>(::pg_query::_PartitionBoundSpec_default_instance_); } -inline const ::pg_query::CreateDomainStmt& Node::create_domain_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_domain_stmt) - return _internal_create_domain_stmt(); +inline const ::pg_query::PartitionBoundSpec& Node::partition_bound_spec() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.partition_bound_spec) + return _internal_partition_bound_spec(); } -inline ::pg_query::CreateDomainStmt* Node::unsafe_arena_release_create_domain_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_domain_stmt) - if (_internal_has_create_domain_stmt()) { +inline ::pg_query::PartitionBoundSpec* Node::unsafe_arena_release_partition_bound_spec() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_bound_spec) + if (node_case() == kPartitionBoundSpec) { clear_has_node(); - ::pg_query::CreateDomainStmt* temp = _impl_.node_.create_domain_stmt_; - _impl_.node_.create_domain_stmt_ = nullptr; + auto* temp = _impl_.node_.partition_bound_spec_; + _impl_.node_.partition_bound_spec_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_domain_stmt(::pg_query::CreateDomainStmt* create_domain_stmt) { +inline void Node::unsafe_arena_set_allocated_partition_bound_spec(::pg_query::PartitionBoundSpec* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_domain_stmt) { - set_has_create_domain_stmt(); - _impl_.node_.create_domain_stmt_ = create_domain_stmt; + if (value) { + set_has_partition_bound_spec(); + _impl_.node_.partition_bound_spec_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_domain_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_bound_spec) } -inline ::pg_query::CreateDomainStmt* Node::_internal_mutable_create_domain_stmt() { - if (!_internal_has_create_domain_stmt()) { +inline ::pg_query::PartitionBoundSpec* Node::_internal_mutable_partition_bound_spec() { + if (node_case() != kPartitionBoundSpec) { clear_node(); - set_has_create_domain_stmt(); - _impl_.node_.create_domain_stmt_ = CreateMaybeMessage< ::pg_query::CreateDomainStmt >(GetArenaForAllocation()); + set_has_partition_bound_spec(); + _impl_.node_.partition_bound_spec_ = CreateMaybeMessage<::pg_query::PartitionBoundSpec>(GetArena()); } - return _impl_.node_.create_domain_stmt_; + return _impl_.node_.partition_bound_spec_; } -inline ::pg_query::CreateDomainStmt* Node::mutable_create_domain_stmt() { - ::pg_query::CreateDomainStmt* _msg = _internal_mutable_create_domain_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_domain_stmt) +inline ::pg_query::PartitionBoundSpec* Node::mutable_partition_bound_spec() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PartitionBoundSpec* _msg = _internal_mutable_partition_bound_spec(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_bound_spec) return _msg; } -// .pg_query.CreatedbStmt createdb_stmt = 90 [json_name = "CreatedbStmt"]; -inline bool Node::_internal_has_createdb_stmt() const { - return node_case() == kCreatedbStmt; +// .pg_query.PartitionRangeDatum partition_range_datum = 87 [json_name = "PartitionRangeDatum"]; +inline bool Node::has_partition_range_datum() const { + return node_case() == kPartitionRangeDatum; } -inline bool Node::has_createdb_stmt() const { - return _internal_has_createdb_stmt(); +inline bool Node::_internal_has_partition_range_datum() const { + return node_case() == kPartitionRangeDatum; } -inline void Node::set_has_createdb_stmt() { - _impl_._oneof_case_[0] = kCreatedbStmt; +inline void Node::set_has_partition_range_datum() { + _impl_._oneof_case_[0] = kPartitionRangeDatum; } -inline void Node::clear_createdb_stmt() { - if (_internal_has_createdb_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.createdb_stmt_; +inline void Node::clear_partition_range_datum() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kPartitionRangeDatum) { + if (GetArena() == nullptr) { + delete _impl_.node_.partition_range_datum_; } clear_has_node(); } } -inline ::pg_query::CreatedbStmt* Node::release_createdb_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.createdb_stmt) - if (_internal_has_createdb_stmt()) { +inline ::pg_query::PartitionRangeDatum* Node::release_partition_range_datum() { + // @@protoc_insertion_point(field_release:pg_query.Node.partition_range_datum) + if (node_case() == kPartitionRangeDatum) { clear_has_node(); - ::pg_query::CreatedbStmt* temp = _impl_.node_.createdb_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.partition_range_datum_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.createdb_stmt_ = nullptr; + _impl_.node_.partition_range_datum_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreatedbStmt& Node::_internal_createdb_stmt() const { - return _internal_has_createdb_stmt() - ? *_impl_.node_.createdb_stmt_ - : reinterpret_cast< ::pg_query::CreatedbStmt&>(::pg_query::_CreatedbStmt_default_instance_); +inline const ::pg_query::PartitionRangeDatum& Node::_internal_partition_range_datum() const { + return node_case() == kPartitionRangeDatum ? *_impl_.node_.partition_range_datum_ : reinterpret_cast<::pg_query::PartitionRangeDatum&>(::pg_query::_PartitionRangeDatum_default_instance_); } -inline const ::pg_query::CreatedbStmt& Node::createdb_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.createdb_stmt) - return _internal_createdb_stmt(); +inline const ::pg_query::PartitionRangeDatum& Node::partition_range_datum() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.partition_range_datum) + return _internal_partition_range_datum(); } -inline ::pg_query::CreatedbStmt* Node::unsafe_arena_release_createdb_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.createdb_stmt) - if (_internal_has_createdb_stmt()) { +inline ::pg_query::PartitionRangeDatum* Node::unsafe_arena_release_partition_range_datum() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_range_datum) + if (node_case() == kPartitionRangeDatum) { clear_has_node(); - ::pg_query::CreatedbStmt* temp = _impl_.node_.createdb_stmt_; - _impl_.node_.createdb_stmt_ = nullptr; + auto* temp = _impl_.node_.partition_range_datum_; + _impl_.node_.partition_range_datum_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_createdb_stmt(::pg_query::CreatedbStmt* createdb_stmt) { +inline void Node::unsafe_arena_set_allocated_partition_range_datum(::pg_query::PartitionRangeDatum* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (createdb_stmt) { - set_has_createdb_stmt(); - _impl_.node_.createdb_stmt_ = createdb_stmt; + if (value) { + set_has_partition_range_datum(); + _impl_.node_.partition_range_datum_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.createdb_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_range_datum) } -inline ::pg_query::CreatedbStmt* Node::_internal_mutable_createdb_stmt() { - if (!_internal_has_createdb_stmt()) { +inline ::pg_query::PartitionRangeDatum* Node::_internal_mutable_partition_range_datum() { + if (node_case() != kPartitionRangeDatum) { clear_node(); - set_has_createdb_stmt(); - _impl_.node_.createdb_stmt_ = CreateMaybeMessage< ::pg_query::CreatedbStmt >(GetArenaForAllocation()); + set_has_partition_range_datum(); + _impl_.node_.partition_range_datum_ = CreateMaybeMessage<::pg_query::PartitionRangeDatum>(GetArena()); } - return _impl_.node_.createdb_stmt_; + return _impl_.node_.partition_range_datum_; } -inline ::pg_query::CreatedbStmt* Node::mutable_createdb_stmt() { - ::pg_query::CreatedbStmt* _msg = _internal_mutable_createdb_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.createdb_stmt) +inline ::pg_query::PartitionRangeDatum* Node::mutable_partition_range_datum() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PartitionRangeDatum* _msg = _internal_mutable_partition_range_datum(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_range_datum) return _msg; } -// .pg_query.DropdbStmt dropdb_stmt = 91 [json_name = "DropdbStmt"]; -inline bool Node::_internal_has_dropdb_stmt() const { - return node_case() == kDropdbStmt; +// .pg_query.PartitionCmd partition_cmd = 88 [json_name = "PartitionCmd"]; +inline bool Node::has_partition_cmd() const { + return node_case() == kPartitionCmd; } -inline bool Node::has_dropdb_stmt() const { - return _internal_has_dropdb_stmt(); +inline bool Node::_internal_has_partition_cmd() const { + return node_case() == kPartitionCmd; } -inline void Node::set_has_dropdb_stmt() { - _impl_._oneof_case_[0] = kDropdbStmt; +inline void Node::set_has_partition_cmd() { + _impl_._oneof_case_[0] = kPartitionCmd; } -inline void Node::clear_dropdb_stmt() { - if (_internal_has_dropdb_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.dropdb_stmt_; +inline void Node::clear_partition_cmd() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kPartitionCmd) { + if (GetArena() == nullptr) { + delete _impl_.node_.partition_cmd_; } clear_has_node(); } } -inline ::pg_query::DropdbStmt* Node::release_dropdb_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.dropdb_stmt) - if (_internal_has_dropdb_stmt()) { +inline ::pg_query::PartitionCmd* Node::release_partition_cmd() { + // @@protoc_insertion_point(field_release:pg_query.Node.partition_cmd) + if (node_case() == kPartitionCmd) { clear_has_node(); - ::pg_query::DropdbStmt* temp = _impl_.node_.dropdb_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.partition_cmd_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.dropdb_stmt_ = nullptr; + _impl_.node_.partition_cmd_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DropdbStmt& Node::_internal_dropdb_stmt() const { - return _internal_has_dropdb_stmt() - ? *_impl_.node_.dropdb_stmt_ - : reinterpret_cast< ::pg_query::DropdbStmt&>(::pg_query::_DropdbStmt_default_instance_); +inline const ::pg_query::PartitionCmd& Node::_internal_partition_cmd() const { + return node_case() == kPartitionCmd ? *_impl_.node_.partition_cmd_ : reinterpret_cast<::pg_query::PartitionCmd&>(::pg_query::_PartitionCmd_default_instance_); } -inline const ::pg_query::DropdbStmt& Node::dropdb_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.dropdb_stmt) - return _internal_dropdb_stmt(); +inline const ::pg_query::PartitionCmd& Node::partition_cmd() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.partition_cmd) + return _internal_partition_cmd(); } -inline ::pg_query::DropdbStmt* Node::unsafe_arena_release_dropdb_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.dropdb_stmt) - if (_internal_has_dropdb_stmt()) { +inline ::pg_query::PartitionCmd* Node::unsafe_arena_release_partition_cmd() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_cmd) + if (node_case() == kPartitionCmd) { clear_has_node(); - ::pg_query::DropdbStmt* temp = _impl_.node_.dropdb_stmt_; - _impl_.node_.dropdb_stmt_ = nullptr; + auto* temp = _impl_.node_.partition_cmd_; + _impl_.node_.partition_cmd_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_dropdb_stmt(::pg_query::DropdbStmt* dropdb_stmt) { +inline void Node::unsafe_arena_set_allocated_partition_cmd(::pg_query::PartitionCmd* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (dropdb_stmt) { - set_has_dropdb_stmt(); - _impl_.node_.dropdb_stmt_ = dropdb_stmt; + if (value) { + set_has_partition_cmd(); + _impl_.node_.partition_cmd_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.dropdb_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_cmd) } -inline ::pg_query::DropdbStmt* Node::_internal_mutable_dropdb_stmt() { - if (!_internal_has_dropdb_stmt()) { +inline ::pg_query::PartitionCmd* Node::_internal_mutable_partition_cmd() { + if (node_case() != kPartitionCmd) { clear_node(); - set_has_dropdb_stmt(); - _impl_.node_.dropdb_stmt_ = CreateMaybeMessage< ::pg_query::DropdbStmt >(GetArenaForAllocation()); + set_has_partition_cmd(); + _impl_.node_.partition_cmd_ = CreateMaybeMessage<::pg_query::PartitionCmd>(GetArena()); } - return _impl_.node_.dropdb_stmt_; + return _impl_.node_.partition_cmd_; } -inline ::pg_query::DropdbStmt* Node::mutable_dropdb_stmt() { - ::pg_query::DropdbStmt* _msg = _internal_mutable_dropdb_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.dropdb_stmt) +inline ::pg_query::PartitionCmd* Node::mutable_partition_cmd() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PartitionCmd* _msg = _internal_mutable_partition_cmd(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_cmd) return _msg; } -// .pg_query.VacuumStmt vacuum_stmt = 92 [json_name = "VacuumStmt"]; -inline bool Node::_internal_has_vacuum_stmt() const { - return node_case() == kVacuumStmt; +// .pg_query.RangeTblEntry range_tbl_entry = 89 [json_name = "RangeTblEntry"]; +inline bool Node::has_range_tbl_entry() const { + return node_case() == kRangeTblEntry; } -inline bool Node::has_vacuum_stmt() const { - return _internal_has_vacuum_stmt(); +inline bool Node::_internal_has_range_tbl_entry() const { + return node_case() == kRangeTblEntry; } -inline void Node::set_has_vacuum_stmt() { - _impl_._oneof_case_[0] = kVacuumStmt; +inline void Node::set_has_range_tbl_entry() { + _impl_._oneof_case_[0] = kRangeTblEntry; } -inline void Node::clear_vacuum_stmt() { - if (_internal_has_vacuum_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.vacuum_stmt_; +inline void Node::clear_range_tbl_entry() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRangeTblEntry) { + if (GetArena() == nullptr) { + delete _impl_.node_.range_tbl_entry_; } clear_has_node(); } } -inline ::pg_query::VacuumStmt* Node::release_vacuum_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.vacuum_stmt) - if (_internal_has_vacuum_stmt()) { +inline ::pg_query::RangeTblEntry* Node::release_range_tbl_entry() { + // @@protoc_insertion_point(field_release:pg_query.Node.range_tbl_entry) + if (node_case() == kRangeTblEntry) { clear_has_node(); - ::pg_query::VacuumStmt* temp = _impl_.node_.vacuum_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.range_tbl_entry_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.vacuum_stmt_ = nullptr; + _impl_.node_.range_tbl_entry_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::VacuumStmt& Node::_internal_vacuum_stmt() const { - return _internal_has_vacuum_stmt() - ? *_impl_.node_.vacuum_stmt_ - : reinterpret_cast< ::pg_query::VacuumStmt&>(::pg_query::_VacuumStmt_default_instance_); +inline const ::pg_query::RangeTblEntry& Node::_internal_range_tbl_entry() const { + return node_case() == kRangeTblEntry ? *_impl_.node_.range_tbl_entry_ : reinterpret_cast<::pg_query::RangeTblEntry&>(::pg_query::_RangeTblEntry_default_instance_); } -inline const ::pg_query::VacuumStmt& Node::vacuum_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.vacuum_stmt) - return _internal_vacuum_stmt(); +inline const ::pg_query::RangeTblEntry& Node::range_tbl_entry() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.range_tbl_entry) + return _internal_range_tbl_entry(); } -inline ::pg_query::VacuumStmt* Node::unsafe_arena_release_vacuum_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.vacuum_stmt) - if (_internal_has_vacuum_stmt()) { +inline ::pg_query::RangeTblEntry* Node::unsafe_arena_release_range_tbl_entry() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_tbl_entry) + if (node_case() == kRangeTblEntry) { clear_has_node(); - ::pg_query::VacuumStmt* temp = _impl_.node_.vacuum_stmt_; - _impl_.node_.vacuum_stmt_ = nullptr; + auto* temp = _impl_.node_.range_tbl_entry_; + _impl_.node_.range_tbl_entry_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_vacuum_stmt(::pg_query::VacuumStmt* vacuum_stmt) { +inline void Node::unsafe_arena_set_allocated_range_tbl_entry(::pg_query::RangeTblEntry* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (vacuum_stmt) { - set_has_vacuum_stmt(); - _impl_.node_.vacuum_stmt_ = vacuum_stmt; + if (value) { + set_has_range_tbl_entry(); + _impl_.node_.range_tbl_entry_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.vacuum_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_tbl_entry) } -inline ::pg_query::VacuumStmt* Node::_internal_mutable_vacuum_stmt() { - if (!_internal_has_vacuum_stmt()) { +inline ::pg_query::RangeTblEntry* Node::_internal_mutable_range_tbl_entry() { + if (node_case() != kRangeTblEntry) { clear_node(); - set_has_vacuum_stmt(); - _impl_.node_.vacuum_stmt_ = CreateMaybeMessage< ::pg_query::VacuumStmt >(GetArenaForAllocation()); + set_has_range_tbl_entry(); + _impl_.node_.range_tbl_entry_ = CreateMaybeMessage<::pg_query::RangeTblEntry>(GetArena()); } - return _impl_.node_.vacuum_stmt_; + return _impl_.node_.range_tbl_entry_; } -inline ::pg_query::VacuumStmt* Node::mutable_vacuum_stmt() { - ::pg_query::VacuumStmt* _msg = _internal_mutable_vacuum_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.vacuum_stmt) +inline ::pg_query::RangeTblEntry* Node::mutable_range_tbl_entry() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeTblEntry* _msg = _internal_mutable_range_tbl_entry(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.range_tbl_entry) return _msg; } -// .pg_query.ExplainStmt explain_stmt = 93 [json_name = "ExplainStmt"]; -inline bool Node::_internal_has_explain_stmt() const { - return node_case() == kExplainStmt; +// .pg_query.RTEPermissionInfo rtepermission_info = 90 [json_name = "RTEPermissionInfo"]; +inline bool Node::has_rtepermission_info() const { + return node_case() == kRtepermissionInfo; } -inline bool Node::has_explain_stmt() const { - return _internal_has_explain_stmt(); +inline bool Node::_internal_has_rtepermission_info() const { + return node_case() == kRtepermissionInfo; } -inline void Node::set_has_explain_stmt() { - _impl_._oneof_case_[0] = kExplainStmt; +inline void Node::set_has_rtepermission_info() { + _impl_._oneof_case_[0] = kRtepermissionInfo; } -inline void Node::clear_explain_stmt() { - if (_internal_has_explain_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.explain_stmt_; +inline void Node::clear_rtepermission_info() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRtepermissionInfo) { + if (GetArena() == nullptr) { + delete _impl_.node_.rtepermission_info_; } clear_has_node(); } } -inline ::pg_query::ExplainStmt* Node::release_explain_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.explain_stmt) - if (_internal_has_explain_stmt()) { +inline ::pg_query::RTEPermissionInfo* Node::release_rtepermission_info() { + // @@protoc_insertion_point(field_release:pg_query.Node.rtepermission_info) + if (node_case() == kRtepermissionInfo) { clear_has_node(); - ::pg_query::ExplainStmt* temp = _impl_.node_.explain_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.rtepermission_info_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.explain_stmt_ = nullptr; + _impl_.node_.rtepermission_info_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ExplainStmt& Node::_internal_explain_stmt() const { - return _internal_has_explain_stmt() - ? *_impl_.node_.explain_stmt_ - : reinterpret_cast< ::pg_query::ExplainStmt&>(::pg_query::_ExplainStmt_default_instance_); +inline const ::pg_query::RTEPermissionInfo& Node::_internal_rtepermission_info() const { + return node_case() == kRtepermissionInfo ? *_impl_.node_.rtepermission_info_ : reinterpret_cast<::pg_query::RTEPermissionInfo&>(::pg_query::_RTEPermissionInfo_default_instance_); } -inline const ::pg_query::ExplainStmt& Node::explain_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.explain_stmt) - return _internal_explain_stmt(); +inline const ::pg_query::RTEPermissionInfo& Node::rtepermission_info() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.rtepermission_info) + return _internal_rtepermission_info(); } -inline ::pg_query::ExplainStmt* Node::unsafe_arena_release_explain_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.explain_stmt) - if (_internal_has_explain_stmt()) { +inline ::pg_query::RTEPermissionInfo* Node::unsafe_arena_release_rtepermission_info() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.rtepermission_info) + if (node_case() == kRtepermissionInfo) { clear_has_node(); - ::pg_query::ExplainStmt* temp = _impl_.node_.explain_stmt_; - _impl_.node_.explain_stmt_ = nullptr; + auto* temp = _impl_.node_.rtepermission_info_; + _impl_.node_.rtepermission_info_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_explain_stmt(::pg_query::ExplainStmt* explain_stmt) { +inline void Node::unsafe_arena_set_allocated_rtepermission_info(::pg_query::RTEPermissionInfo* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (explain_stmt) { - set_has_explain_stmt(); - _impl_.node_.explain_stmt_ = explain_stmt; + if (value) { + set_has_rtepermission_info(); + _impl_.node_.rtepermission_info_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.explain_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.rtepermission_info) } -inline ::pg_query::ExplainStmt* Node::_internal_mutable_explain_stmt() { - if (!_internal_has_explain_stmt()) { +inline ::pg_query::RTEPermissionInfo* Node::_internal_mutable_rtepermission_info() { + if (node_case() != kRtepermissionInfo) { clear_node(); - set_has_explain_stmt(); - _impl_.node_.explain_stmt_ = CreateMaybeMessage< ::pg_query::ExplainStmt >(GetArenaForAllocation()); + set_has_rtepermission_info(); + _impl_.node_.rtepermission_info_ = CreateMaybeMessage<::pg_query::RTEPermissionInfo>(GetArena()); } - return _impl_.node_.explain_stmt_; + return _impl_.node_.rtepermission_info_; } -inline ::pg_query::ExplainStmt* Node::mutable_explain_stmt() { - ::pg_query::ExplainStmt* _msg = _internal_mutable_explain_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.explain_stmt) +inline ::pg_query::RTEPermissionInfo* Node::mutable_rtepermission_info() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RTEPermissionInfo* _msg = _internal_mutable_rtepermission_info(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.rtepermission_info) return _msg; } -// .pg_query.CreateTableAsStmt create_table_as_stmt = 94 [json_name = "CreateTableAsStmt"]; -inline bool Node::_internal_has_create_table_as_stmt() const { - return node_case() == kCreateTableAsStmt; +// .pg_query.RangeTblFunction range_tbl_function = 91 [json_name = "RangeTblFunction"]; +inline bool Node::has_range_tbl_function() const { + return node_case() == kRangeTblFunction; } -inline bool Node::has_create_table_as_stmt() const { - return _internal_has_create_table_as_stmt(); +inline bool Node::_internal_has_range_tbl_function() const { + return node_case() == kRangeTblFunction; } -inline void Node::set_has_create_table_as_stmt() { - _impl_._oneof_case_[0] = kCreateTableAsStmt; +inline void Node::set_has_range_tbl_function() { + _impl_._oneof_case_[0] = kRangeTblFunction; } -inline void Node::clear_create_table_as_stmt() { - if (_internal_has_create_table_as_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_table_as_stmt_; +inline void Node::clear_range_tbl_function() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRangeTblFunction) { + if (GetArena() == nullptr) { + delete _impl_.node_.range_tbl_function_; } clear_has_node(); } } -inline ::pg_query::CreateTableAsStmt* Node::release_create_table_as_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_table_as_stmt) - if (_internal_has_create_table_as_stmt()) { +inline ::pg_query::RangeTblFunction* Node::release_range_tbl_function() { + // @@protoc_insertion_point(field_release:pg_query.Node.range_tbl_function) + if (node_case() == kRangeTblFunction) { clear_has_node(); - ::pg_query::CreateTableAsStmt* temp = _impl_.node_.create_table_as_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.range_tbl_function_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_table_as_stmt_ = nullptr; + _impl_.node_.range_tbl_function_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateTableAsStmt& Node::_internal_create_table_as_stmt() const { - return _internal_has_create_table_as_stmt() - ? *_impl_.node_.create_table_as_stmt_ - : reinterpret_cast< ::pg_query::CreateTableAsStmt&>(::pg_query::_CreateTableAsStmt_default_instance_); +inline const ::pg_query::RangeTblFunction& Node::_internal_range_tbl_function() const { + return node_case() == kRangeTblFunction ? *_impl_.node_.range_tbl_function_ : reinterpret_cast<::pg_query::RangeTblFunction&>(::pg_query::_RangeTblFunction_default_instance_); } -inline const ::pg_query::CreateTableAsStmt& Node::create_table_as_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_table_as_stmt) - return _internal_create_table_as_stmt(); +inline const ::pg_query::RangeTblFunction& Node::range_tbl_function() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.range_tbl_function) + return _internal_range_tbl_function(); } -inline ::pg_query::CreateTableAsStmt* Node::unsafe_arena_release_create_table_as_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_table_as_stmt) - if (_internal_has_create_table_as_stmt()) { +inline ::pg_query::RangeTblFunction* Node::unsafe_arena_release_range_tbl_function() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_tbl_function) + if (node_case() == kRangeTblFunction) { clear_has_node(); - ::pg_query::CreateTableAsStmt* temp = _impl_.node_.create_table_as_stmt_; - _impl_.node_.create_table_as_stmt_ = nullptr; + auto* temp = _impl_.node_.range_tbl_function_; + _impl_.node_.range_tbl_function_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_table_as_stmt(::pg_query::CreateTableAsStmt* create_table_as_stmt) { +inline void Node::unsafe_arena_set_allocated_range_tbl_function(::pg_query::RangeTblFunction* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_table_as_stmt) { - set_has_create_table_as_stmt(); - _impl_.node_.create_table_as_stmt_ = create_table_as_stmt; + if (value) { + set_has_range_tbl_function(); + _impl_.node_.range_tbl_function_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_table_as_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_tbl_function) } -inline ::pg_query::CreateTableAsStmt* Node::_internal_mutable_create_table_as_stmt() { - if (!_internal_has_create_table_as_stmt()) { +inline ::pg_query::RangeTblFunction* Node::_internal_mutable_range_tbl_function() { + if (node_case() != kRangeTblFunction) { clear_node(); - set_has_create_table_as_stmt(); - _impl_.node_.create_table_as_stmt_ = CreateMaybeMessage< ::pg_query::CreateTableAsStmt >(GetArenaForAllocation()); + set_has_range_tbl_function(); + _impl_.node_.range_tbl_function_ = CreateMaybeMessage<::pg_query::RangeTblFunction>(GetArena()); } - return _impl_.node_.create_table_as_stmt_; + return _impl_.node_.range_tbl_function_; } -inline ::pg_query::CreateTableAsStmt* Node::mutable_create_table_as_stmt() { - ::pg_query::CreateTableAsStmt* _msg = _internal_mutable_create_table_as_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_table_as_stmt) +inline ::pg_query::RangeTblFunction* Node::mutable_range_tbl_function() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeTblFunction* _msg = _internal_mutable_range_tbl_function(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.range_tbl_function) return _msg; } -// .pg_query.CreateSeqStmt create_seq_stmt = 95 [json_name = "CreateSeqStmt"]; -inline bool Node::_internal_has_create_seq_stmt() const { - return node_case() == kCreateSeqStmt; +// .pg_query.TableSampleClause table_sample_clause = 92 [json_name = "TableSampleClause"]; +inline bool Node::has_table_sample_clause() const { + return node_case() == kTableSampleClause; } -inline bool Node::has_create_seq_stmt() const { - return _internal_has_create_seq_stmt(); +inline bool Node::_internal_has_table_sample_clause() const { + return node_case() == kTableSampleClause; } -inline void Node::set_has_create_seq_stmt() { - _impl_._oneof_case_[0] = kCreateSeqStmt; +inline void Node::set_has_table_sample_clause() { + _impl_._oneof_case_[0] = kTableSampleClause; } -inline void Node::clear_create_seq_stmt() { - if (_internal_has_create_seq_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_seq_stmt_; +inline void Node::clear_table_sample_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kTableSampleClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.table_sample_clause_; } clear_has_node(); } } -inline ::pg_query::CreateSeqStmt* Node::release_create_seq_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_seq_stmt) - if (_internal_has_create_seq_stmt()) { +inline ::pg_query::TableSampleClause* Node::release_table_sample_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.table_sample_clause) + if (node_case() == kTableSampleClause) { clear_has_node(); - ::pg_query::CreateSeqStmt* temp = _impl_.node_.create_seq_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.table_sample_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_seq_stmt_ = nullptr; + _impl_.node_.table_sample_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateSeqStmt& Node::_internal_create_seq_stmt() const { - return _internal_has_create_seq_stmt() - ? *_impl_.node_.create_seq_stmt_ - : reinterpret_cast< ::pg_query::CreateSeqStmt&>(::pg_query::_CreateSeqStmt_default_instance_); +inline const ::pg_query::TableSampleClause& Node::_internal_table_sample_clause() const { + return node_case() == kTableSampleClause ? *_impl_.node_.table_sample_clause_ : reinterpret_cast<::pg_query::TableSampleClause&>(::pg_query::_TableSampleClause_default_instance_); } -inline const ::pg_query::CreateSeqStmt& Node::create_seq_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_seq_stmt) - return _internal_create_seq_stmt(); +inline const ::pg_query::TableSampleClause& Node::table_sample_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.table_sample_clause) + return _internal_table_sample_clause(); } -inline ::pg_query::CreateSeqStmt* Node::unsafe_arena_release_create_seq_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_seq_stmt) - if (_internal_has_create_seq_stmt()) { +inline ::pg_query::TableSampleClause* Node::unsafe_arena_release_table_sample_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.table_sample_clause) + if (node_case() == kTableSampleClause) { clear_has_node(); - ::pg_query::CreateSeqStmt* temp = _impl_.node_.create_seq_stmt_; - _impl_.node_.create_seq_stmt_ = nullptr; + auto* temp = _impl_.node_.table_sample_clause_; + _impl_.node_.table_sample_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_seq_stmt(::pg_query::CreateSeqStmt* create_seq_stmt) { +inline void Node::unsafe_arena_set_allocated_table_sample_clause(::pg_query::TableSampleClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_seq_stmt) { - set_has_create_seq_stmt(); - _impl_.node_.create_seq_stmt_ = create_seq_stmt; + if (value) { + set_has_table_sample_clause(); + _impl_.node_.table_sample_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_seq_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.table_sample_clause) } -inline ::pg_query::CreateSeqStmt* Node::_internal_mutable_create_seq_stmt() { - if (!_internal_has_create_seq_stmt()) { +inline ::pg_query::TableSampleClause* Node::_internal_mutable_table_sample_clause() { + if (node_case() != kTableSampleClause) { clear_node(); - set_has_create_seq_stmt(); - _impl_.node_.create_seq_stmt_ = CreateMaybeMessage< ::pg_query::CreateSeqStmt >(GetArenaForAllocation()); + set_has_table_sample_clause(); + _impl_.node_.table_sample_clause_ = CreateMaybeMessage<::pg_query::TableSampleClause>(GetArena()); } - return _impl_.node_.create_seq_stmt_; + return _impl_.node_.table_sample_clause_; } -inline ::pg_query::CreateSeqStmt* Node::mutable_create_seq_stmt() { - ::pg_query::CreateSeqStmt* _msg = _internal_mutable_create_seq_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_seq_stmt) +inline ::pg_query::TableSampleClause* Node::mutable_table_sample_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TableSampleClause* _msg = _internal_mutable_table_sample_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.table_sample_clause) return _msg; } -// .pg_query.AlterSeqStmt alter_seq_stmt = 96 [json_name = "AlterSeqStmt"]; -inline bool Node::_internal_has_alter_seq_stmt() const { - return node_case() == kAlterSeqStmt; +// .pg_query.WithCheckOption with_check_option = 93 [json_name = "WithCheckOption"]; +inline bool Node::has_with_check_option() const { + return node_case() == kWithCheckOption; } -inline bool Node::has_alter_seq_stmt() const { - return _internal_has_alter_seq_stmt(); +inline bool Node::_internal_has_with_check_option() const { + return node_case() == kWithCheckOption; } -inline void Node::set_has_alter_seq_stmt() { - _impl_._oneof_case_[0] = kAlterSeqStmt; +inline void Node::set_has_with_check_option() { + _impl_._oneof_case_[0] = kWithCheckOption; } -inline void Node::clear_alter_seq_stmt() { - if (_internal_has_alter_seq_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_seq_stmt_; +inline void Node::clear_with_check_option() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kWithCheckOption) { + if (GetArena() == nullptr) { + delete _impl_.node_.with_check_option_; } clear_has_node(); } } -inline ::pg_query::AlterSeqStmt* Node::release_alter_seq_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_seq_stmt) - if (_internal_has_alter_seq_stmt()) { +inline ::pg_query::WithCheckOption* Node::release_with_check_option() { + // @@protoc_insertion_point(field_release:pg_query.Node.with_check_option) + if (node_case() == kWithCheckOption) { clear_has_node(); - ::pg_query::AlterSeqStmt* temp = _impl_.node_.alter_seq_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.with_check_option_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_seq_stmt_ = nullptr; + _impl_.node_.with_check_option_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterSeqStmt& Node::_internal_alter_seq_stmt() const { - return _internal_has_alter_seq_stmt() - ? *_impl_.node_.alter_seq_stmt_ - : reinterpret_cast< ::pg_query::AlterSeqStmt&>(::pg_query::_AlterSeqStmt_default_instance_); +inline const ::pg_query::WithCheckOption& Node::_internal_with_check_option() const { + return node_case() == kWithCheckOption ? *_impl_.node_.with_check_option_ : reinterpret_cast<::pg_query::WithCheckOption&>(::pg_query::_WithCheckOption_default_instance_); } -inline const ::pg_query::AlterSeqStmt& Node::alter_seq_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_seq_stmt) - return _internal_alter_seq_stmt(); +inline const ::pg_query::WithCheckOption& Node::with_check_option() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.with_check_option) + return _internal_with_check_option(); } -inline ::pg_query::AlterSeqStmt* Node::unsafe_arena_release_alter_seq_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_seq_stmt) - if (_internal_has_alter_seq_stmt()) { +inline ::pg_query::WithCheckOption* Node::unsafe_arena_release_with_check_option() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.with_check_option) + if (node_case() == kWithCheckOption) { clear_has_node(); - ::pg_query::AlterSeqStmt* temp = _impl_.node_.alter_seq_stmt_; - _impl_.node_.alter_seq_stmt_ = nullptr; + auto* temp = _impl_.node_.with_check_option_; + _impl_.node_.with_check_option_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_seq_stmt(::pg_query::AlterSeqStmt* alter_seq_stmt) { +inline void Node::unsafe_arena_set_allocated_with_check_option(::pg_query::WithCheckOption* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_seq_stmt) { - set_has_alter_seq_stmt(); - _impl_.node_.alter_seq_stmt_ = alter_seq_stmt; + if (value) { + set_has_with_check_option(); + _impl_.node_.with_check_option_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_seq_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.with_check_option) } -inline ::pg_query::AlterSeqStmt* Node::_internal_mutable_alter_seq_stmt() { - if (!_internal_has_alter_seq_stmt()) { +inline ::pg_query::WithCheckOption* Node::_internal_mutable_with_check_option() { + if (node_case() != kWithCheckOption) { clear_node(); - set_has_alter_seq_stmt(); - _impl_.node_.alter_seq_stmt_ = CreateMaybeMessage< ::pg_query::AlterSeqStmt >(GetArenaForAllocation()); + set_has_with_check_option(); + _impl_.node_.with_check_option_ = CreateMaybeMessage<::pg_query::WithCheckOption>(GetArena()); } - return _impl_.node_.alter_seq_stmt_; + return _impl_.node_.with_check_option_; } -inline ::pg_query::AlterSeqStmt* Node::mutable_alter_seq_stmt() { - ::pg_query::AlterSeqStmt* _msg = _internal_mutable_alter_seq_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_seq_stmt) +inline ::pg_query::WithCheckOption* Node::mutable_with_check_option() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WithCheckOption* _msg = _internal_mutable_with_check_option(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.with_check_option) return _msg; } -// .pg_query.VariableSetStmt variable_set_stmt = 97 [json_name = "VariableSetStmt"]; -inline bool Node::_internal_has_variable_set_stmt() const { - return node_case() == kVariableSetStmt; +// .pg_query.SortGroupClause sort_group_clause = 94 [json_name = "SortGroupClause"]; +inline bool Node::has_sort_group_clause() const { + return node_case() == kSortGroupClause; } -inline bool Node::has_variable_set_stmt() const { - return _internal_has_variable_set_stmt(); +inline bool Node::_internal_has_sort_group_clause() const { + return node_case() == kSortGroupClause; } -inline void Node::set_has_variable_set_stmt() { - _impl_._oneof_case_[0] = kVariableSetStmt; +inline void Node::set_has_sort_group_clause() { + _impl_._oneof_case_[0] = kSortGroupClause; } -inline void Node::clear_variable_set_stmt() { - if (_internal_has_variable_set_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.variable_set_stmt_; +inline void Node::clear_sort_group_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSortGroupClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.sort_group_clause_; } clear_has_node(); } } -inline ::pg_query::VariableSetStmt* Node::release_variable_set_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.variable_set_stmt) - if (_internal_has_variable_set_stmt()) { +inline ::pg_query::SortGroupClause* Node::release_sort_group_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.sort_group_clause) + if (node_case() == kSortGroupClause) { clear_has_node(); - ::pg_query::VariableSetStmt* temp = _impl_.node_.variable_set_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.sort_group_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.variable_set_stmt_ = nullptr; + _impl_.node_.sort_group_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::VariableSetStmt& Node::_internal_variable_set_stmt() const { - return _internal_has_variable_set_stmt() - ? *_impl_.node_.variable_set_stmt_ - : reinterpret_cast< ::pg_query::VariableSetStmt&>(::pg_query::_VariableSetStmt_default_instance_); +inline const ::pg_query::SortGroupClause& Node::_internal_sort_group_clause() const { + return node_case() == kSortGroupClause ? *_impl_.node_.sort_group_clause_ : reinterpret_cast<::pg_query::SortGroupClause&>(::pg_query::_SortGroupClause_default_instance_); } -inline const ::pg_query::VariableSetStmt& Node::variable_set_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.variable_set_stmt) - return _internal_variable_set_stmt(); +inline const ::pg_query::SortGroupClause& Node::sort_group_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.sort_group_clause) + return _internal_sort_group_clause(); } -inline ::pg_query::VariableSetStmt* Node::unsafe_arena_release_variable_set_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.variable_set_stmt) - if (_internal_has_variable_set_stmt()) { +inline ::pg_query::SortGroupClause* Node::unsafe_arena_release_sort_group_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.sort_group_clause) + if (node_case() == kSortGroupClause) { clear_has_node(); - ::pg_query::VariableSetStmt* temp = _impl_.node_.variable_set_stmt_; - _impl_.node_.variable_set_stmt_ = nullptr; + auto* temp = _impl_.node_.sort_group_clause_; + _impl_.node_.sort_group_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_variable_set_stmt(::pg_query::VariableSetStmt* variable_set_stmt) { +inline void Node::unsafe_arena_set_allocated_sort_group_clause(::pg_query::SortGroupClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (variable_set_stmt) { - set_has_variable_set_stmt(); - _impl_.node_.variable_set_stmt_ = variable_set_stmt; + if (value) { + set_has_sort_group_clause(); + _impl_.node_.sort_group_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.variable_set_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.sort_group_clause) } -inline ::pg_query::VariableSetStmt* Node::_internal_mutable_variable_set_stmt() { - if (!_internal_has_variable_set_stmt()) { +inline ::pg_query::SortGroupClause* Node::_internal_mutable_sort_group_clause() { + if (node_case() != kSortGroupClause) { clear_node(); - set_has_variable_set_stmt(); - _impl_.node_.variable_set_stmt_ = CreateMaybeMessage< ::pg_query::VariableSetStmt >(GetArenaForAllocation()); + set_has_sort_group_clause(); + _impl_.node_.sort_group_clause_ = CreateMaybeMessage<::pg_query::SortGroupClause>(GetArena()); } - return _impl_.node_.variable_set_stmt_; + return _impl_.node_.sort_group_clause_; } -inline ::pg_query::VariableSetStmt* Node::mutable_variable_set_stmt() { - ::pg_query::VariableSetStmt* _msg = _internal_mutable_variable_set_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.variable_set_stmt) +inline ::pg_query::SortGroupClause* Node::mutable_sort_group_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::SortGroupClause* _msg = _internal_mutable_sort_group_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.sort_group_clause) return _msg; } -// .pg_query.VariableShowStmt variable_show_stmt = 98 [json_name = "VariableShowStmt"]; -inline bool Node::_internal_has_variable_show_stmt() const { - return node_case() == kVariableShowStmt; +// .pg_query.GroupingSet grouping_set = 95 [json_name = "GroupingSet"]; +inline bool Node::has_grouping_set() const { + return node_case() == kGroupingSet; } -inline bool Node::has_variable_show_stmt() const { - return _internal_has_variable_show_stmt(); +inline bool Node::_internal_has_grouping_set() const { + return node_case() == kGroupingSet; } -inline void Node::set_has_variable_show_stmt() { - _impl_._oneof_case_[0] = kVariableShowStmt; +inline void Node::set_has_grouping_set() { + _impl_._oneof_case_[0] = kGroupingSet; } -inline void Node::clear_variable_show_stmt() { - if (_internal_has_variable_show_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.variable_show_stmt_; +inline void Node::clear_grouping_set() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kGroupingSet) { + if (GetArena() == nullptr) { + delete _impl_.node_.grouping_set_; } clear_has_node(); } } -inline ::pg_query::VariableShowStmt* Node::release_variable_show_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.variable_show_stmt) - if (_internal_has_variable_show_stmt()) { +inline ::pg_query::GroupingSet* Node::release_grouping_set() { + // @@protoc_insertion_point(field_release:pg_query.Node.grouping_set) + if (node_case() == kGroupingSet) { clear_has_node(); - ::pg_query::VariableShowStmt* temp = _impl_.node_.variable_show_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.grouping_set_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.variable_show_stmt_ = nullptr; + _impl_.node_.grouping_set_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::VariableShowStmt& Node::_internal_variable_show_stmt() const { - return _internal_has_variable_show_stmt() - ? *_impl_.node_.variable_show_stmt_ - : reinterpret_cast< ::pg_query::VariableShowStmt&>(::pg_query::_VariableShowStmt_default_instance_); +inline const ::pg_query::GroupingSet& Node::_internal_grouping_set() const { + return node_case() == kGroupingSet ? *_impl_.node_.grouping_set_ : reinterpret_cast<::pg_query::GroupingSet&>(::pg_query::_GroupingSet_default_instance_); } -inline const ::pg_query::VariableShowStmt& Node::variable_show_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.variable_show_stmt) - return _internal_variable_show_stmt(); +inline const ::pg_query::GroupingSet& Node::grouping_set() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.grouping_set) + return _internal_grouping_set(); } -inline ::pg_query::VariableShowStmt* Node::unsafe_arena_release_variable_show_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.variable_show_stmt) - if (_internal_has_variable_show_stmt()) { +inline ::pg_query::GroupingSet* Node::unsafe_arena_release_grouping_set() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.grouping_set) + if (node_case() == kGroupingSet) { clear_has_node(); - ::pg_query::VariableShowStmt* temp = _impl_.node_.variable_show_stmt_; - _impl_.node_.variable_show_stmt_ = nullptr; + auto* temp = _impl_.node_.grouping_set_; + _impl_.node_.grouping_set_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_variable_show_stmt(::pg_query::VariableShowStmt* variable_show_stmt) { +inline void Node::unsafe_arena_set_allocated_grouping_set(::pg_query::GroupingSet* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (variable_show_stmt) { - set_has_variable_show_stmt(); - _impl_.node_.variable_show_stmt_ = variable_show_stmt; + if (value) { + set_has_grouping_set(); + _impl_.node_.grouping_set_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.variable_show_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.grouping_set) } -inline ::pg_query::VariableShowStmt* Node::_internal_mutable_variable_show_stmt() { - if (!_internal_has_variable_show_stmt()) { +inline ::pg_query::GroupingSet* Node::_internal_mutable_grouping_set() { + if (node_case() != kGroupingSet) { clear_node(); - set_has_variable_show_stmt(); - _impl_.node_.variable_show_stmt_ = CreateMaybeMessage< ::pg_query::VariableShowStmt >(GetArenaForAllocation()); + set_has_grouping_set(); + _impl_.node_.grouping_set_ = CreateMaybeMessage<::pg_query::GroupingSet>(GetArena()); } - return _impl_.node_.variable_show_stmt_; + return _impl_.node_.grouping_set_; } -inline ::pg_query::VariableShowStmt* Node::mutable_variable_show_stmt() { - ::pg_query::VariableShowStmt* _msg = _internal_mutable_variable_show_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.variable_show_stmt) +inline ::pg_query::GroupingSet* Node::mutable_grouping_set() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::GroupingSet* _msg = _internal_mutable_grouping_set(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.grouping_set) return _msg; } -// .pg_query.DiscardStmt discard_stmt = 99 [json_name = "DiscardStmt"]; -inline bool Node::_internal_has_discard_stmt() const { - return node_case() == kDiscardStmt; +// .pg_query.WindowClause window_clause = 96 [json_name = "WindowClause"]; +inline bool Node::has_window_clause() const { + return node_case() == kWindowClause; } -inline bool Node::has_discard_stmt() const { - return _internal_has_discard_stmt(); +inline bool Node::_internal_has_window_clause() const { + return node_case() == kWindowClause; } -inline void Node::set_has_discard_stmt() { - _impl_._oneof_case_[0] = kDiscardStmt; +inline void Node::set_has_window_clause() { + _impl_._oneof_case_[0] = kWindowClause; } -inline void Node::clear_discard_stmt() { - if (_internal_has_discard_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.discard_stmt_; +inline void Node::clear_window_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kWindowClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.window_clause_; } clear_has_node(); } } -inline ::pg_query::DiscardStmt* Node::release_discard_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.discard_stmt) - if (_internal_has_discard_stmt()) { +inline ::pg_query::WindowClause* Node::release_window_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.window_clause) + if (node_case() == kWindowClause) { clear_has_node(); - ::pg_query::DiscardStmt* temp = _impl_.node_.discard_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.window_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.discard_stmt_ = nullptr; + _impl_.node_.window_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DiscardStmt& Node::_internal_discard_stmt() const { - return _internal_has_discard_stmt() - ? *_impl_.node_.discard_stmt_ - : reinterpret_cast< ::pg_query::DiscardStmt&>(::pg_query::_DiscardStmt_default_instance_); +inline const ::pg_query::WindowClause& Node::_internal_window_clause() const { + return node_case() == kWindowClause ? *_impl_.node_.window_clause_ : reinterpret_cast<::pg_query::WindowClause&>(::pg_query::_WindowClause_default_instance_); } -inline const ::pg_query::DiscardStmt& Node::discard_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.discard_stmt) - return _internal_discard_stmt(); +inline const ::pg_query::WindowClause& Node::window_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.window_clause) + return _internal_window_clause(); } -inline ::pg_query::DiscardStmt* Node::unsafe_arena_release_discard_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.discard_stmt) - if (_internal_has_discard_stmt()) { +inline ::pg_query::WindowClause* Node::unsafe_arena_release_window_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.window_clause) + if (node_case() == kWindowClause) { clear_has_node(); - ::pg_query::DiscardStmt* temp = _impl_.node_.discard_stmt_; - _impl_.node_.discard_stmt_ = nullptr; + auto* temp = _impl_.node_.window_clause_; + _impl_.node_.window_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_discard_stmt(::pg_query::DiscardStmt* discard_stmt) { +inline void Node::unsafe_arena_set_allocated_window_clause(::pg_query::WindowClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (discard_stmt) { - set_has_discard_stmt(); - _impl_.node_.discard_stmt_ = discard_stmt; + if (value) { + set_has_window_clause(); + _impl_.node_.window_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.discard_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.window_clause) } -inline ::pg_query::DiscardStmt* Node::_internal_mutable_discard_stmt() { - if (!_internal_has_discard_stmt()) { +inline ::pg_query::WindowClause* Node::_internal_mutable_window_clause() { + if (node_case() != kWindowClause) { clear_node(); - set_has_discard_stmt(); - _impl_.node_.discard_stmt_ = CreateMaybeMessage< ::pg_query::DiscardStmt >(GetArenaForAllocation()); + set_has_window_clause(); + _impl_.node_.window_clause_ = CreateMaybeMessage<::pg_query::WindowClause>(GetArena()); } - return _impl_.node_.discard_stmt_; + return _impl_.node_.window_clause_; } -inline ::pg_query::DiscardStmt* Node::mutable_discard_stmt() { - ::pg_query::DiscardStmt* _msg = _internal_mutable_discard_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.discard_stmt) +inline ::pg_query::WindowClause* Node::mutable_window_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WindowClause* _msg = _internal_mutable_window_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.window_clause) return _msg; } -// .pg_query.CreateTrigStmt create_trig_stmt = 100 [json_name = "CreateTrigStmt"]; -inline bool Node::_internal_has_create_trig_stmt() const { - return node_case() == kCreateTrigStmt; +// .pg_query.RowMarkClause row_mark_clause = 97 [json_name = "RowMarkClause"]; +inline bool Node::has_row_mark_clause() const { + return node_case() == kRowMarkClause; } -inline bool Node::has_create_trig_stmt() const { - return _internal_has_create_trig_stmt(); +inline bool Node::_internal_has_row_mark_clause() const { + return node_case() == kRowMarkClause; } -inline void Node::set_has_create_trig_stmt() { - _impl_._oneof_case_[0] = kCreateTrigStmt; +inline void Node::set_has_row_mark_clause() { + _impl_._oneof_case_[0] = kRowMarkClause; } -inline void Node::clear_create_trig_stmt() { - if (_internal_has_create_trig_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_trig_stmt_; +inline void Node::clear_row_mark_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRowMarkClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.row_mark_clause_; } clear_has_node(); } } -inline ::pg_query::CreateTrigStmt* Node::release_create_trig_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_trig_stmt) - if (_internal_has_create_trig_stmt()) { +inline ::pg_query::RowMarkClause* Node::release_row_mark_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.row_mark_clause) + if (node_case() == kRowMarkClause) { clear_has_node(); - ::pg_query::CreateTrigStmt* temp = _impl_.node_.create_trig_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.row_mark_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_trig_stmt_ = nullptr; + _impl_.node_.row_mark_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateTrigStmt& Node::_internal_create_trig_stmt() const { - return _internal_has_create_trig_stmt() - ? *_impl_.node_.create_trig_stmt_ - : reinterpret_cast< ::pg_query::CreateTrigStmt&>(::pg_query::_CreateTrigStmt_default_instance_); +inline const ::pg_query::RowMarkClause& Node::_internal_row_mark_clause() const { + return node_case() == kRowMarkClause ? *_impl_.node_.row_mark_clause_ : reinterpret_cast<::pg_query::RowMarkClause&>(::pg_query::_RowMarkClause_default_instance_); } -inline const ::pg_query::CreateTrigStmt& Node::create_trig_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_trig_stmt) - return _internal_create_trig_stmt(); +inline const ::pg_query::RowMarkClause& Node::row_mark_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.row_mark_clause) + return _internal_row_mark_clause(); } -inline ::pg_query::CreateTrigStmt* Node::unsafe_arena_release_create_trig_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_trig_stmt) - if (_internal_has_create_trig_stmt()) { +inline ::pg_query::RowMarkClause* Node::unsafe_arena_release_row_mark_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.row_mark_clause) + if (node_case() == kRowMarkClause) { clear_has_node(); - ::pg_query::CreateTrigStmt* temp = _impl_.node_.create_trig_stmt_; - _impl_.node_.create_trig_stmt_ = nullptr; + auto* temp = _impl_.node_.row_mark_clause_; + _impl_.node_.row_mark_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_trig_stmt(::pg_query::CreateTrigStmt* create_trig_stmt) { +inline void Node::unsafe_arena_set_allocated_row_mark_clause(::pg_query::RowMarkClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_trig_stmt) { - set_has_create_trig_stmt(); - _impl_.node_.create_trig_stmt_ = create_trig_stmt; + if (value) { + set_has_row_mark_clause(); + _impl_.node_.row_mark_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_trig_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.row_mark_clause) } -inline ::pg_query::CreateTrigStmt* Node::_internal_mutable_create_trig_stmt() { - if (!_internal_has_create_trig_stmt()) { +inline ::pg_query::RowMarkClause* Node::_internal_mutable_row_mark_clause() { + if (node_case() != kRowMarkClause) { clear_node(); - set_has_create_trig_stmt(); - _impl_.node_.create_trig_stmt_ = CreateMaybeMessage< ::pg_query::CreateTrigStmt >(GetArenaForAllocation()); + set_has_row_mark_clause(); + _impl_.node_.row_mark_clause_ = CreateMaybeMessage<::pg_query::RowMarkClause>(GetArena()); } - return _impl_.node_.create_trig_stmt_; + return _impl_.node_.row_mark_clause_; } -inline ::pg_query::CreateTrigStmt* Node::mutable_create_trig_stmt() { - ::pg_query::CreateTrigStmt* _msg = _internal_mutable_create_trig_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_trig_stmt) +inline ::pg_query::RowMarkClause* Node::mutable_row_mark_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RowMarkClause* _msg = _internal_mutable_row_mark_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.row_mark_clause) return _msg; } -// .pg_query.CreatePLangStmt create_plang_stmt = 101 [json_name = "CreatePLangStmt"]; -inline bool Node::_internal_has_create_plang_stmt() const { - return node_case() == kCreatePlangStmt; +// .pg_query.WithClause with_clause = 98 [json_name = "WithClause"]; +inline bool Node::has_with_clause() const { + return node_case() == kWithClause; } -inline bool Node::has_create_plang_stmt() const { - return _internal_has_create_plang_stmt(); +inline bool Node::_internal_has_with_clause() const { + return node_case() == kWithClause; } -inline void Node::set_has_create_plang_stmt() { - _impl_._oneof_case_[0] = kCreatePlangStmt; +inline void Node::set_has_with_clause() { + _impl_._oneof_case_[0] = kWithClause; } -inline void Node::clear_create_plang_stmt() { - if (_internal_has_create_plang_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_plang_stmt_; +inline void Node::clear_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kWithClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.with_clause_; } clear_has_node(); } } -inline ::pg_query::CreatePLangStmt* Node::release_create_plang_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_plang_stmt) - if (_internal_has_create_plang_stmt()) { +inline ::pg_query::WithClause* Node::release_with_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.with_clause) + if (node_case() == kWithClause) { clear_has_node(); - ::pg_query::CreatePLangStmt* temp = _impl_.node_.create_plang_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.with_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_plang_stmt_ = nullptr; + _impl_.node_.with_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreatePLangStmt& Node::_internal_create_plang_stmt() const { - return _internal_has_create_plang_stmt() - ? *_impl_.node_.create_plang_stmt_ - : reinterpret_cast< ::pg_query::CreatePLangStmt&>(::pg_query::_CreatePLangStmt_default_instance_); +inline const ::pg_query::WithClause& Node::_internal_with_clause() const { + return node_case() == kWithClause ? *_impl_.node_.with_clause_ : reinterpret_cast<::pg_query::WithClause&>(::pg_query::_WithClause_default_instance_); } -inline const ::pg_query::CreatePLangStmt& Node::create_plang_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_plang_stmt) - return _internal_create_plang_stmt(); +inline const ::pg_query::WithClause& Node::with_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.with_clause) + return _internal_with_clause(); } -inline ::pg_query::CreatePLangStmt* Node::unsafe_arena_release_create_plang_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_plang_stmt) - if (_internal_has_create_plang_stmt()) { +inline ::pg_query::WithClause* Node::unsafe_arena_release_with_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.with_clause) + if (node_case() == kWithClause) { clear_has_node(); - ::pg_query::CreatePLangStmt* temp = _impl_.node_.create_plang_stmt_; - _impl_.node_.create_plang_stmt_ = nullptr; + auto* temp = _impl_.node_.with_clause_; + _impl_.node_.with_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_plang_stmt(::pg_query::CreatePLangStmt* create_plang_stmt) { +inline void Node::unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_plang_stmt) { - set_has_create_plang_stmt(); - _impl_.node_.create_plang_stmt_ = create_plang_stmt; + if (value) { + set_has_with_clause(); + _impl_.node_.with_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_plang_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.with_clause) } -inline ::pg_query::CreatePLangStmt* Node::_internal_mutable_create_plang_stmt() { - if (!_internal_has_create_plang_stmt()) { +inline ::pg_query::WithClause* Node::_internal_mutable_with_clause() { + if (node_case() != kWithClause) { clear_node(); - set_has_create_plang_stmt(); - _impl_.node_.create_plang_stmt_ = CreateMaybeMessage< ::pg_query::CreatePLangStmt >(GetArenaForAllocation()); + set_has_with_clause(); + _impl_.node_.with_clause_ = CreateMaybeMessage<::pg_query::WithClause>(GetArena()); } - return _impl_.node_.create_plang_stmt_; + return _impl_.node_.with_clause_; } -inline ::pg_query::CreatePLangStmt* Node::mutable_create_plang_stmt() { - ::pg_query::CreatePLangStmt* _msg = _internal_mutable_create_plang_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_plang_stmt) +inline ::pg_query::WithClause* Node::mutable_with_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.with_clause) return _msg; } -// .pg_query.CreateRoleStmt create_role_stmt = 102 [json_name = "CreateRoleStmt"]; -inline bool Node::_internal_has_create_role_stmt() const { - return node_case() == kCreateRoleStmt; +// .pg_query.InferClause infer_clause = 99 [json_name = "InferClause"]; +inline bool Node::has_infer_clause() const { + return node_case() == kInferClause; } -inline bool Node::has_create_role_stmt() const { - return _internal_has_create_role_stmt(); +inline bool Node::_internal_has_infer_clause() const { + return node_case() == kInferClause; } -inline void Node::set_has_create_role_stmt() { - _impl_._oneof_case_[0] = kCreateRoleStmt; +inline void Node::set_has_infer_clause() { + _impl_._oneof_case_[0] = kInferClause; } -inline void Node::clear_create_role_stmt() { - if (_internal_has_create_role_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_role_stmt_; +inline void Node::clear_infer_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kInferClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.infer_clause_; } clear_has_node(); } } -inline ::pg_query::CreateRoleStmt* Node::release_create_role_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_role_stmt) - if (_internal_has_create_role_stmt()) { +inline ::pg_query::InferClause* Node::release_infer_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.infer_clause) + if (node_case() == kInferClause) { clear_has_node(); - ::pg_query::CreateRoleStmt* temp = _impl_.node_.create_role_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.infer_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_role_stmt_ = nullptr; + _impl_.node_.infer_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateRoleStmt& Node::_internal_create_role_stmt() const { - return _internal_has_create_role_stmt() - ? *_impl_.node_.create_role_stmt_ - : reinterpret_cast< ::pg_query::CreateRoleStmt&>(::pg_query::_CreateRoleStmt_default_instance_); +inline const ::pg_query::InferClause& Node::_internal_infer_clause() const { + return node_case() == kInferClause ? *_impl_.node_.infer_clause_ : reinterpret_cast<::pg_query::InferClause&>(::pg_query::_InferClause_default_instance_); } -inline const ::pg_query::CreateRoleStmt& Node::create_role_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_role_stmt) - return _internal_create_role_stmt(); +inline const ::pg_query::InferClause& Node::infer_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.infer_clause) + return _internal_infer_clause(); } -inline ::pg_query::CreateRoleStmt* Node::unsafe_arena_release_create_role_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_role_stmt) - if (_internal_has_create_role_stmt()) { +inline ::pg_query::InferClause* Node::unsafe_arena_release_infer_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.infer_clause) + if (node_case() == kInferClause) { clear_has_node(); - ::pg_query::CreateRoleStmt* temp = _impl_.node_.create_role_stmt_; - _impl_.node_.create_role_stmt_ = nullptr; + auto* temp = _impl_.node_.infer_clause_; + _impl_.node_.infer_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_role_stmt(::pg_query::CreateRoleStmt* create_role_stmt) { +inline void Node::unsafe_arena_set_allocated_infer_clause(::pg_query::InferClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_role_stmt) { - set_has_create_role_stmt(); - _impl_.node_.create_role_stmt_ = create_role_stmt; + if (value) { + set_has_infer_clause(); + _impl_.node_.infer_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_role_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.infer_clause) } -inline ::pg_query::CreateRoleStmt* Node::_internal_mutable_create_role_stmt() { - if (!_internal_has_create_role_stmt()) { +inline ::pg_query::InferClause* Node::_internal_mutable_infer_clause() { + if (node_case() != kInferClause) { clear_node(); - set_has_create_role_stmt(); - _impl_.node_.create_role_stmt_ = CreateMaybeMessage< ::pg_query::CreateRoleStmt >(GetArenaForAllocation()); + set_has_infer_clause(); + _impl_.node_.infer_clause_ = CreateMaybeMessage<::pg_query::InferClause>(GetArena()); } - return _impl_.node_.create_role_stmt_; + return _impl_.node_.infer_clause_; } -inline ::pg_query::CreateRoleStmt* Node::mutable_create_role_stmt() { - ::pg_query::CreateRoleStmt* _msg = _internal_mutable_create_role_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_role_stmt) +inline ::pg_query::InferClause* Node::mutable_infer_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::InferClause* _msg = _internal_mutable_infer_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.infer_clause) return _msg; } -// .pg_query.AlterRoleStmt alter_role_stmt = 103 [json_name = "AlterRoleStmt"]; -inline bool Node::_internal_has_alter_role_stmt() const { - return node_case() == kAlterRoleStmt; +// .pg_query.OnConflictClause on_conflict_clause = 100 [json_name = "OnConflictClause"]; +inline bool Node::has_on_conflict_clause() const { + return node_case() == kOnConflictClause; } -inline bool Node::has_alter_role_stmt() const { - return _internal_has_alter_role_stmt(); +inline bool Node::_internal_has_on_conflict_clause() const { + return node_case() == kOnConflictClause; } -inline void Node::set_has_alter_role_stmt() { - _impl_._oneof_case_[0] = kAlterRoleStmt; +inline void Node::set_has_on_conflict_clause() { + _impl_._oneof_case_[0] = kOnConflictClause; } -inline void Node::clear_alter_role_stmt() { - if (_internal_has_alter_role_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_role_stmt_; +inline void Node::clear_on_conflict_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kOnConflictClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.on_conflict_clause_; } clear_has_node(); } } -inline ::pg_query::AlterRoleStmt* Node::release_alter_role_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_role_stmt) - if (_internal_has_alter_role_stmt()) { +inline ::pg_query::OnConflictClause* Node::release_on_conflict_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.on_conflict_clause) + if (node_case() == kOnConflictClause) { clear_has_node(); - ::pg_query::AlterRoleStmt* temp = _impl_.node_.alter_role_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.on_conflict_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_role_stmt_ = nullptr; + _impl_.node_.on_conflict_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterRoleStmt& Node::_internal_alter_role_stmt() const { - return _internal_has_alter_role_stmt() - ? *_impl_.node_.alter_role_stmt_ - : reinterpret_cast< ::pg_query::AlterRoleStmt&>(::pg_query::_AlterRoleStmt_default_instance_); +inline const ::pg_query::OnConflictClause& Node::_internal_on_conflict_clause() const { + return node_case() == kOnConflictClause ? *_impl_.node_.on_conflict_clause_ : reinterpret_cast<::pg_query::OnConflictClause&>(::pg_query::_OnConflictClause_default_instance_); } -inline const ::pg_query::AlterRoleStmt& Node::alter_role_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_role_stmt) - return _internal_alter_role_stmt(); +inline const ::pg_query::OnConflictClause& Node::on_conflict_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.on_conflict_clause) + return _internal_on_conflict_clause(); } -inline ::pg_query::AlterRoleStmt* Node::unsafe_arena_release_alter_role_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_role_stmt) - if (_internal_has_alter_role_stmt()) { +inline ::pg_query::OnConflictClause* Node::unsafe_arena_release_on_conflict_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.on_conflict_clause) + if (node_case() == kOnConflictClause) { clear_has_node(); - ::pg_query::AlterRoleStmt* temp = _impl_.node_.alter_role_stmt_; - _impl_.node_.alter_role_stmt_ = nullptr; + auto* temp = _impl_.node_.on_conflict_clause_; + _impl_.node_.on_conflict_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_role_stmt(::pg_query::AlterRoleStmt* alter_role_stmt) { +inline void Node::unsafe_arena_set_allocated_on_conflict_clause(::pg_query::OnConflictClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_role_stmt) { - set_has_alter_role_stmt(); - _impl_.node_.alter_role_stmt_ = alter_role_stmt; + if (value) { + set_has_on_conflict_clause(); + _impl_.node_.on_conflict_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_role_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.on_conflict_clause) } -inline ::pg_query::AlterRoleStmt* Node::_internal_mutable_alter_role_stmt() { - if (!_internal_has_alter_role_stmt()) { +inline ::pg_query::OnConflictClause* Node::_internal_mutable_on_conflict_clause() { + if (node_case() != kOnConflictClause) { clear_node(); - set_has_alter_role_stmt(); - _impl_.node_.alter_role_stmt_ = CreateMaybeMessage< ::pg_query::AlterRoleStmt >(GetArenaForAllocation()); + set_has_on_conflict_clause(); + _impl_.node_.on_conflict_clause_ = CreateMaybeMessage<::pg_query::OnConflictClause>(GetArena()); } - return _impl_.node_.alter_role_stmt_; + return _impl_.node_.on_conflict_clause_; } -inline ::pg_query::AlterRoleStmt* Node::mutable_alter_role_stmt() { - ::pg_query::AlterRoleStmt* _msg = _internal_mutable_alter_role_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_role_stmt) +inline ::pg_query::OnConflictClause* Node::mutable_on_conflict_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::OnConflictClause* _msg = _internal_mutable_on_conflict_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.on_conflict_clause) return _msg; } -// .pg_query.DropRoleStmt drop_role_stmt = 104 [json_name = "DropRoleStmt"]; -inline bool Node::_internal_has_drop_role_stmt() const { - return node_case() == kDropRoleStmt; +// .pg_query.CTESearchClause ctesearch_clause = 101 [json_name = "CTESearchClause"]; +inline bool Node::has_ctesearch_clause() const { + return node_case() == kCtesearchClause; } -inline bool Node::has_drop_role_stmt() const { - return _internal_has_drop_role_stmt(); +inline bool Node::_internal_has_ctesearch_clause() const { + return node_case() == kCtesearchClause; } -inline void Node::set_has_drop_role_stmt() { - _impl_._oneof_case_[0] = kDropRoleStmt; +inline void Node::set_has_ctesearch_clause() { + _impl_._oneof_case_[0] = kCtesearchClause; } -inline void Node::clear_drop_role_stmt() { - if (_internal_has_drop_role_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.drop_role_stmt_; +inline void Node::clear_ctesearch_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCtesearchClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.ctesearch_clause_; } clear_has_node(); } } -inline ::pg_query::DropRoleStmt* Node::release_drop_role_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.drop_role_stmt) - if (_internal_has_drop_role_stmt()) { +inline ::pg_query::CTESearchClause* Node::release_ctesearch_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.ctesearch_clause) + if (node_case() == kCtesearchClause) { clear_has_node(); - ::pg_query::DropRoleStmt* temp = _impl_.node_.drop_role_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.ctesearch_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.drop_role_stmt_ = nullptr; + _impl_.node_.ctesearch_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DropRoleStmt& Node::_internal_drop_role_stmt() const { - return _internal_has_drop_role_stmt() - ? *_impl_.node_.drop_role_stmt_ - : reinterpret_cast< ::pg_query::DropRoleStmt&>(::pg_query::_DropRoleStmt_default_instance_); +inline const ::pg_query::CTESearchClause& Node::_internal_ctesearch_clause() const { + return node_case() == kCtesearchClause ? *_impl_.node_.ctesearch_clause_ : reinterpret_cast<::pg_query::CTESearchClause&>(::pg_query::_CTESearchClause_default_instance_); } -inline const ::pg_query::DropRoleStmt& Node::drop_role_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.drop_role_stmt) - return _internal_drop_role_stmt(); +inline const ::pg_query::CTESearchClause& Node::ctesearch_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.ctesearch_clause) + return _internal_ctesearch_clause(); } -inline ::pg_query::DropRoleStmt* Node::unsafe_arena_release_drop_role_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_role_stmt) - if (_internal_has_drop_role_stmt()) { +inline ::pg_query::CTESearchClause* Node::unsafe_arena_release_ctesearch_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.ctesearch_clause) + if (node_case() == kCtesearchClause) { clear_has_node(); - ::pg_query::DropRoleStmt* temp = _impl_.node_.drop_role_stmt_; - _impl_.node_.drop_role_stmt_ = nullptr; + auto* temp = _impl_.node_.ctesearch_clause_; + _impl_.node_.ctesearch_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_drop_role_stmt(::pg_query::DropRoleStmt* drop_role_stmt) { +inline void Node::unsafe_arena_set_allocated_ctesearch_clause(::pg_query::CTESearchClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (drop_role_stmt) { - set_has_drop_role_stmt(); - _impl_.node_.drop_role_stmt_ = drop_role_stmt; + if (value) { + set_has_ctesearch_clause(); + _impl_.node_.ctesearch_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_role_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.ctesearch_clause) } -inline ::pg_query::DropRoleStmt* Node::_internal_mutable_drop_role_stmt() { - if (!_internal_has_drop_role_stmt()) { +inline ::pg_query::CTESearchClause* Node::_internal_mutable_ctesearch_clause() { + if (node_case() != kCtesearchClause) { clear_node(); - set_has_drop_role_stmt(); - _impl_.node_.drop_role_stmt_ = CreateMaybeMessage< ::pg_query::DropRoleStmt >(GetArenaForAllocation()); + set_has_ctesearch_clause(); + _impl_.node_.ctesearch_clause_ = CreateMaybeMessage<::pg_query::CTESearchClause>(GetArena()); } - return _impl_.node_.drop_role_stmt_; + return _impl_.node_.ctesearch_clause_; } -inline ::pg_query::DropRoleStmt* Node::mutable_drop_role_stmt() { - ::pg_query::DropRoleStmt* _msg = _internal_mutable_drop_role_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_role_stmt) +inline ::pg_query::CTESearchClause* Node::mutable_ctesearch_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CTESearchClause* _msg = _internal_mutable_ctesearch_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.ctesearch_clause) return _msg; } -// .pg_query.LockStmt lock_stmt = 105 [json_name = "LockStmt"]; -inline bool Node::_internal_has_lock_stmt() const { - return node_case() == kLockStmt; +// .pg_query.CTECycleClause ctecycle_clause = 102 [json_name = "CTECycleClause"]; +inline bool Node::has_ctecycle_clause() const { + return node_case() == kCtecycleClause; } -inline bool Node::has_lock_stmt() const { - return _internal_has_lock_stmt(); +inline bool Node::_internal_has_ctecycle_clause() const { + return node_case() == kCtecycleClause; } -inline void Node::set_has_lock_stmt() { - _impl_._oneof_case_[0] = kLockStmt; +inline void Node::set_has_ctecycle_clause() { + _impl_._oneof_case_[0] = kCtecycleClause; } -inline void Node::clear_lock_stmt() { - if (_internal_has_lock_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.lock_stmt_; +inline void Node::clear_ctecycle_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCtecycleClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.ctecycle_clause_; } clear_has_node(); } } -inline ::pg_query::LockStmt* Node::release_lock_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.lock_stmt) - if (_internal_has_lock_stmt()) { +inline ::pg_query::CTECycleClause* Node::release_ctecycle_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.ctecycle_clause) + if (node_case() == kCtecycleClause) { clear_has_node(); - ::pg_query::LockStmt* temp = _impl_.node_.lock_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.ctecycle_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.lock_stmt_ = nullptr; + _impl_.node_.ctecycle_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::LockStmt& Node::_internal_lock_stmt() const { - return _internal_has_lock_stmt() - ? *_impl_.node_.lock_stmt_ - : reinterpret_cast< ::pg_query::LockStmt&>(::pg_query::_LockStmt_default_instance_); +inline const ::pg_query::CTECycleClause& Node::_internal_ctecycle_clause() const { + return node_case() == kCtecycleClause ? *_impl_.node_.ctecycle_clause_ : reinterpret_cast<::pg_query::CTECycleClause&>(::pg_query::_CTECycleClause_default_instance_); } -inline const ::pg_query::LockStmt& Node::lock_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.lock_stmt) - return _internal_lock_stmt(); +inline const ::pg_query::CTECycleClause& Node::ctecycle_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.ctecycle_clause) + return _internal_ctecycle_clause(); } -inline ::pg_query::LockStmt* Node::unsafe_arena_release_lock_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.lock_stmt) - if (_internal_has_lock_stmt()) { +inline ::pg_query::CTECycleClause* Node::unsafe_arena_release_ctecycle_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.ctecycle_clause) + if (node_case() == kCtecycleClause) { clear_has_node(); - ::pg_query::LockStmt* temp = _impl_.node_.lock_stmt_; - _impl_.node_.lock_stmt_ = nullptr; + auto* temp = _impl_.node_.ctecycle_clause_; + _impl_.node_.ctecycle_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_lock_stmt(::pg_query::LockStmt* lock_stmt) { +inline void Node::unsafe_arena_set_allocated_ctecycle_clause(::pg_query::CTECycleClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (lock_stmt) { - set_has_lock_stmt(); - _impl_.node_.lock_stmt_ = lock_stmt; + if (value) { + set_has_ctecycle_clause(); + _impl_.node_.ctecycle_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.lock_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.ctecycle_clause) } -inline ::pg_query::LockStmt* Node::_internal_mutable_lock_stmt() { - if (!_internal_has_lock_stmt()) { +inline ::pg_query::CTECycleClause* Node::_internal_mutable_ctecycle_clause() { + if (node_case() != kCtecycleClause) { clear_node(); - set_has_lock_stmt(); - _impl_.node_.lock_stmt_ = CreateMaybeMessage< ::pg_query::LockStmt >(GetArenaForAllocation()); + set_has_ctecycle_clause(); + _impl_.node_.ctecycle_clause_ = CreateMaybeMessage<::pg_query::CTECycleClause>(GetArena()); } - return _impl_.node_.lock_stmt_; + return _impl_.node_.ctecycle_clause_; } -inline ::pg_query::LockStmt* Node::mutable_lock_stmt() { - ::pg_query::LockStmt* _msg = _internal_mutable_lock_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.lock_stmt) +inline ::pg_query::CTECycleClause* Node::mutable_ctecycle_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CTECycleClause* _msg = _internal_mutable_ctecycle_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.ctecycle_clause) return _msg; } -// .pg_query.ConstraintsSetStmt constraints_set_stmt = 106 [json_name = "ConstraintsSetStmt"]; -inline bool Node::_internal_has_constraints_set_stmt() const { - return node_case() == kConstraintsSetStmt; +// .pg_query.CommonTableExpr common_table_expr = 103 [json_name = "CommonTableExpr"]; +inline bool Node::has_common_table_expr() const { + return node_case() == kCommonTableExpr; } -inline bool Node::has_constraints_set_stmt() const { - return _internal_has_constraints_set_stmt(); +inline bool Node::_internal_has_common_table_expr() const { + return node_case() == kCommonTableExpr; } -inline void Node::set_has_constraints_set_stmt() { - _impl_._oneof_case_[0] = kConstraintsSetStmt; +inline void Node::set_has_common_table_expr() { + _impl_._oneof_case_[0] = kCommonTableExpr; } -inline void Node::clear_constraints_set_stmt() { - if (_internal_has_constraints_set_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.constraints_set_stmt_; +inline void Node::clear_common_table_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCommonTableExpr) { + if (GetArena() == nullptr) { + delete _impl_.node_.common_table_expr_; } clear_has_node(); } } -inline ::pg_query::ConstraintsSetStmt* Node::release_constraints_set_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.constraints_set_stmt) - if (_internal_has_constraints_set_stmt()) { +inline ::pg_query::CommonTableExpr* Node::release_common_table_expr() { + // @@protoc_insertion_point(field_release:pg_query.Node.common_table_expr) + if (node_case() == kCommonTableExpr) { clear_has_node(); - ::pg_query::ConstraintsSetStmt* temp = _impl_.node_.constraints_set_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.common_table_expr_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.constraints_set_stmt_ = nullptr; + _impl_.node_.common_table_expr_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ConstraintsSetStmt& Node::_internal_constraints_set_stmt() const { - return _internal_has_constraints_set_stmt() - ? *_impl_.node_.constraints_set_stmt_ - : reinterpret_cast< ::pg_query::ConstraintsSetStmt&>(::pg_query::_ConstraintsSetStmt_default_instance_); +inline const ::pg_query::CommonTableExpr& Node::_internal_common_table_expr() const { + return node_case() == kCommonTableExpr ? *_impl_.node_.common_table_expr_ : reinterpret_cast<::pg_query::CommonTableExpr&>(::pg_query::_CommonTableExpr_default_instance_); } -inline const ::pg_query::ConstraintsSetStmt& Node::constraints_set_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.constraints_set_stmt) - return _internal_constraints_set_stmt(); +inline const ::pg_query::CommonTableExpr& Node::common_table_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.common_table_expr) + return _internal_common_table_expr(); } -inline ::pg_query::ConstraintsSetStmt* Node::unsafe_arena_release_constraints_set_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.constraints_set_stmt) - if (_internal_has_constraints_set_stmt()) { +inline ::pg_query::CommonTableExpr* Node::unsafe_arena_release_common_table_expr() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.common_table_expr) + if (node_case() == kCommonTableExpr) { clear_has_node(); - ::pg_query::ConstraintsSetStmt* temp = _impl_.node_.constraints_set_stmt_; - _impl_.node_.constraints_set_stmt_ = nullptr; + auto* temp = _impl_.node_.common_table_expr_; + _impl_.node_.common_table_expr_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_constraints_set_stmt(::pg_query::ConstraintsSetStmt* constraints_set_stmt) { +inline void Node::unsafe_arena_set_allocated_common_table_expr(::pg_query::CommonTableExpr* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (constraints_set_stmt) { - set_has_constraints_set_stmt(); - _impl_.node_.constraints_set_stmt_ = constraints_set_stmt; + if (value) { + set_has_common_table_expr(); + _impl_.node_.common_table_expr_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.constraints_set_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.common_table_expr) } -inline ::pg_query::ConstraintsSetStmt* Node::_internal_mutable_constraints_set_stmt() { - if (!_internal_has_constraints_set_stmt()) { +inline ::pg_query::CommonTableExpr* Node::_internal_mutable_common_table_expr() { + if (node_case() != kCommonTableExpr) { clear_node(); - set_has_constraints_set_stmt(); - _impl_.node_.constraints_set_stmt_ = CreateMaybeMessage< ::pg_query::ConstraintsSetStmt >(GetArenaForAllocation()); + set_has_common_table_expr(); + _impl_.node_.common_table_expr_ = CreateMaybeMessage<::pg_query::CommonTableExpr>(GetArena()); } - return _impl_.node_.constraints_set_stmt_; + return _impl_.node_.common_table_expr_; } -inline ::pg_query::ConstraintsSetStmt* Node::mutable_constraints_set_stmt() { - ::pg_query::ConstraintsSetStmt* _msg = _internal_mutable_constraints_set_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.constraints_set_stmt) +inline ::pg_query::CommonTableExpr* Node::mutable_common_table_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CommonTableExpr* _msg = _internal_mutable_common_table_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.common_table_expr) return _msg; } -// .pg_query.ReindexStmt reindex_stmt = 107 [json_name = "ReindexStmt"]; -inline bool Node::_internal_has_reindex_stmt() const { - return node_case() == kReindexStmt; +// .pg_query.MergeWhenClause merge_when_clause = 104 [json_name = "MergeWhenClause"]; +inline bool Node::has_merge_when_clause() const { + return node_case() == kMergeWhenClause; } -inline bool Node::has_reindex_stmt() const { - return _internal_has_reindex_stmt(); +inline bool Node::_internal_has_merge_when_clause() const { + return node_case() == kMergeWhenClause; } -inline void Node::set_has_reindex_stmt() { - _impl_._oneof_case_[0] = kReindexStmt; +inline void Node::set_has_merge_when_clause() { + _impl_._oneof_case_[0] = kMergeWhenClause; } -inline void Node::clear_reindex_stmt() { - if (_internal_has_reindex_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.reindex_stmt_; +inline void Node::clear_merge_when_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kMergeWhenClause) { + if (GetArena() == nullptr) { + delete _impl_.node_.merge_when_clause_; } clear_has_node(); } } -inline ::pg_query::ReindexStmt* Node::release_reindex_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.reindex_stmt) - if (_internal_has_reindex_stmt()) { +inline ::pg_query::MergeWhenClause* Node::release_merge_when_clause() { + // @@protoc_insertion_point(field_release:pg_query.Node.merge_when_clause) + if (node_case() == kMergeWhenClause) { clear_has_node(); - ::pg_query::ReindexStmt* temp = _impl_.node_.reindex_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.merge_when_clause_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.reindex_stmt_ = nullptr; + _impl_.node_.merge_when_clause_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ReindexStmt& Node::_internal_reindex_stmt() const { - return _internal_has_reindex_stmt() - ? *_impl_.node_.reindex_stmt_ - : reinterpret_cast< ::pg_query::ReindexStmt&>(::pg_query::_ReindexStmt_default_instance_); +inline const ::pg_query::MergeWhenClause& Node::_internal_merge_when_clause() const { + return node_case() == kMergeWhenClause ? *_impl_.node_.merge_when_clause_ : reinterpret_cast<::pg_query::MergeWhenClause&>(::pg_query::_MergeWhenClause_default_instance_); } -inline const ::pg_query::ReindexStmt& Node::reindex_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.reindex_stmt) - return _internal_reindex_stmt(); +inline const ::pg_query::MergeWhenClause& Node::merge_when_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.merge_when_clause) + return _internal_merge_when_clause(); } -inline ::pg_query::ReindexStmt* Node::unsafe_arena_release_reindex_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.reindex_stmt) - if (_internal_has_reindex_stmt()) { +inline ::pg_query::MergeWhenClause* Node::unsafe_arena_release_merge_when_clause() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.merge_when_clause) + if (node_case() == kMergeWhenClause) { clear_has_node(); - ::pg_query::ReindexStmt* temp = _impl_.node_.reindex_stmt_; - _impl_.node_.reindex_stmt_ = nullptr; + auto* temp = _impl_.node_.merge_when_clause_; + _impl_.node_.merge_when_clause_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_reindex_stmt(::pg_query::ReindexStmt* reindex_stmt) { +inline void Node::unsafe_arena_set_allocated_merge_when_clause(::pg_query::MergeWhenClause* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (reindex_stmt) { - set_has_reindex_stmt(); - _impl_.node_.reindex_stmt_ = reindex_stmt; + if (value) { + set_has_merge_when_clause(); + _impl_.node_.merge_when_clause_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.reindex_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.merge_when_clause) } -inline ::pg_query::ReindexStmt* Node::_internal_mutable_reindex_stmt() { - if (!_internal_has_reindex_stmt()) { +inline ::pg_query::MergeWhenClause* Node::_internal_mutable_merge_when_clause() { + if (node_case() != kMergeWhenClause) { clear_node(); - set_has_reindex_stmt(); - _impl_.node_.reindex_stmt_ = CreateMaybeMessage< ::pg_query::ReindexStmt >(GetArenaForAllocation()); + set_has_merge_when_clause(); + _impl_.node_.merge_when_clause_ = CreateMaybeMessage<::pg_query::MergeWhenClause>(GetArena()); } - return _impl_.node_.reindex_stmt_; + return _impl_.node_.merge_when_clause_; } -inline ::pg_query::ReindexStmt* Node::mutable_reindex_stmt() { - ::pg_query::ReindexStmt* _msg = _internal_mutable_reindex_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.reindex_stmt) +inline ::pg_query::MergeWhenClause* Node::mutable_merge_when_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::MergeWhenClause* _msg = _internal_mutable_merge_when_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.merge_when_clause) return _msg; } -// .pg_query.CheckPointStmt check_point_stmt = 108 [json_name = "CheckPointStmt"]; -inline bool Node::_internal_has_check_point_stmt() const { - return node_case() == kCheckPointStmt; +// .pg_query.MergeAction merge_action = 105 [json_name = "MergeAction"]; +inline bool Node::has_merge_action() const { + return node_case() == kMergeAction; } -inline bool Node::has_check_point_stmt() const { - return _internal_has_check_point_stmt(); +inline bool Node::_internal_has_merge_action() const { + return node_case() == kMergeAction; } -inline void Node::set_has_check_point_stmt() { - _impl_._oneof_case_[0] = kCheckPointStmt; +inline void Node::set_has_merge_action() { + _impl_._oneof_case_[0] = kMergeAction; } -inline void Node::clear_check_point_stmt() { - if (_internal_has_check_point_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.check_point_stmt_; +inline void Node::clear_merge_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kMergeAction) { + if (GetArena() == nullptr) { + delete _impl_.node_.merge_action_; } clear_has_node(); } } -inline ::pg_query::CheckPointStmt* Node::release_check_point_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.check_point_stmt) - if (_internal_has_check_point_stmt()) { +inline ::pg_query::MergeAction* Node::release_merge_action() { + // @@protoc_insertion_point(field_release:pg_query.Node.merge_action) + if (node_case() == kMergeAction) { clear_has_node(); - ::pg_query::CheckPointStmt* temp = _impl_.node_.check_point_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.merge_action_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.check_point_stmt_ = nullptr; + _impl_.node_.merge_action_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CheckPointStmt& Node::_internal_check_point_stmt() const { - return _internal_has_check_point_stmt() - ? *_impl_.node_.check_point_stmt_ - : reinterpret_cast< ::pg_query::CheckPointStmt&>(::pg_query::_CheckPointStmt_default_instance_); +inline const ::pg_query::MergeAction& Node::_internal_merge_action() const { + return node_case() == kMergeAction ? *_impl_.node_.merge_action_ : reinterpret_cast<::pg_query::MergeAction&>(::pg_query::_MergeAction_default_instance_); } -inline const ::pg_query::CheckPointStmt& Node::check_point_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.check_point_stmt) - return _internal_check_point_stmt(); +inline const ::pg_query::MergeAction& Node::merge_action() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.merge_action) + return _internal_merge_action(); } -inline ::pg_query::CheckPointStmt* Node::unsafe_arena_release_check_point_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.check_point_stmt) - if (_internal_has_check_point_stmt()) { +inline ::pg_query::MergeAction* Node::unsafe_arena_release_merge_action() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.merge_action) + if (node_case() == kMergeAction) { clear_has_node(); - ::pg_query::CheckPointStmt* temp = _impl_.node_.check_point_stmt_; - _impl_.node_.check_point_stmt_ = nullptr; + auto* temp = _impl_.node_.merge_action_; + _impl_.node_.merge_action_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_check_point_stmt(::pg_query::CheckPointStmt* check_point_stmt) { +inline void Node::unsafe_arena_set_allocated_merge_action(::pg_query::MergeAction* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (check_point_stmt) { - set_has_check_point_stmt(); - _impl_.node_.check_point_stmt_ = check_point_stmt; + if (value) { + set_has_merge_action(); + _impl_.node_.merge_action_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.check_point_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.merge_action) } -inline ::pg_query::CheckPointStmt* Node::_internal_mutable_check_point_stmt() { - if (!_internal_has_check_point_stmt()) { +inline ::pg_query::MergeAction* Node::_internal_mutable_merge_action() { + if (node_case() != kMergeAction) { clear_node(); - set_has_check_point_stmt(); - _impl_.node_.check_point_stmt_ = CreateMaybeMessage< ::pg_query::CheckPointStmt >(GetArenaForAllocation()); + set_has_merge_action(); + _impl_.node_.merge_action_ = CreateMaybeMessage<::pg_query::MergeAction>(GetArena()); } - return _impl_.node_.check_point_stmt_; + return _impl_.node_.merge_action_; } -inline ::pg_query::CheckPointStmt* Node::mutable_check_point_stmt() { - ::pg_query::CheckPointStmt* _msg = _internal_mutable_check_point_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.check_point_stmt) +inline ::pg_query::MergeAction* Node::mutable_merge_action() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::MergeAction* _msg = _internal_mutable_merge_action(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.merge_action) return _msg; } -// .pg_query.CreateSchemaStmt create_schema_stmt = 109 [json_name = "CreateSchemaStmt"]; -inline bool Node::_internal_has_create_schema_stmt() const { - return node_case() == kCreateSchemaStmt; +// .pg_query.TriggerTransition trigger_transition = 106 [json_name = "TriggerTransition"]; +inline bool Node::has_trigger_transition() const { + return node_case() == kTriggerTransition; } -inline bool Node::has_create_schema_stmt() const { - return _internal_has_create_schema_stmt(); +inline bool Node::_internal_has_trigger_transition() const { + return node_case() == kTriggerTransition; } -inline void Node::set_has_create_schema_stmt() { - _impl_._oneof_case_[0] = kCreateSchemaStmt; +inline void Node::set_has_trigger_transition() { + _impl_._oneof_case_[0] = kTriggerTransition; } -inline void Node::clear_create_schema_stmt() { - if (_internal_has_create_schema_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_schema_stmt_; +inline void Node::clear_trigger_transition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kTriggerTransition) { + if (GetArena() == nullptr) { + delete _impl_.node_.trigger_transition_; } clear_has_node(); } } -inline ::pg_query::CreateSchemaStmt* Node::release_create_schema_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_schema_stmt) - if (_internal_has_create_schema_stmt()) { +inline ::pg_query::TriggerTransition* Node::release_trigger_transition() { + // @@protoc_insertion_point(field_release:pg_query.Node.trigger_transition) + if (node_case() == kTriggerTransition) { clear_has_node(); - ::pg_query::CreateSchemaStmt* temp = _impl_.node_.create_schema_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.trigger_transition_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_schema_stmt_ = nullptr; + _impl_.node_.trigger_transition_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateSchemaStmt& Node::_internal_create_schema_stmt() const { - return _internal_has_create_schema_stmt() - ? *_impl_.node_.create_schema_stmt_ - : reinterpret_cast< ::pg_query::CreateSchemaStmt&>(::pg_query::_CreateSchemaStmt_default_instance_); +inline const ::pg_query::TriggerTransition& Node::_internal_trigger_transition() const { + return node_case() == kTriggerTransition ? *_impl_.node_.trigger_transition_ : reinterpret_cast<::pg_query::TriggerTransition&>(::pg_query::_TriggerTransition_default_instance_); } -inline const ::pg_query::CreateSchemaStmt& Node::create_schema_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_schema_stmt) - return _internal_create_schema_stmt(); +inline const ::pg_query::TriggerTransition& Node::trigger_transition() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.trigger_transition) + return _internal_trigger_transition(); } -inline ::pg_query::CreateSchemaStmt* Node::unsafe_arena_release_create_schema_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_schema_stmt) - if (_internal_has_create_schema_stmt()) { +inline ::pg_query::TriggerTransition* Node::unsafe_arena_release_trigger_transition() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.trigger_transition) + if (node_case() == kTriggerTransition) { clear_has_node(); - ::pg_query::CreateSchemaStmt* temp = _impl_.node_.create_schema_stmt_; - _impl_.node_.create_schema_stmt_ = nullptr; + auto* temp = _impl_.node_.trigger_transition_; + _impl_.node_.trigger_transition_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_schema_stmt(::pg_query::CreateSchemaStmt* create_schema_stmt) { +inline void Node::unsafe_arena_set_allocated_trigger_transition(::pg_query::TriggerTransition* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_schema_stmt) { - set_has_create_schema_stmt(); - _impl_.node_.create_schema_stmt_ = create_schema_stmt; + if (value) { + set_has_trigger_transition(); + _impl_.node_.trigger_transition_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_schema_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.trigger_transition) } -inline ::pg_query::CreateSchemaStmt* Node::_internal_mutable_create_schema_stmt() { - if (!_internal_has_create_schema_stmt()) { +inline ::pg_query::TriggerTransition* Node::_internal_mutable_trigger_transition() { + if (node_case() != kTriggerTransition) { clear_node(); - set_has_create_schema_stmt(); - _impl_.node_.create_schema_stmt_ = CreateMaybeMessage< ::pg_query::CreateSchemaStmt >(GetArenaForAllocation()); + set_has_trigger_transition(); + _impl_.node_.trigger_transition_ = CreateMaybeMessage<::pg_query::TriggerTransition>(GetArena()); } - return _impl_.node_.create_schema_stmt_; + return _impl_.node_.trigger_transition_; } -inline ::pg_query::CreateSchemaStmt* Node::mutable_create_schema_stmt() { - ::pg_query::CreateSchemaStmt* _msg = _internal_mutable_create_schema_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_schema_stmt) +inline ::pg_query::TriggerTransition* Node::mutable_trigger_transition() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TriggerTransition* _msg = _internal_mutable_trigger_transition(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.trigger_transition) return _msg; } -// .pg_query.AlterDatabaseStmt alter_database_stmt = 110 [json_name = "AlterDatabaseStmt"]; -inline bool Node::_internal_has_alter_database_stmt() const { - return node_case() == kAlterDatabaseStmt; +// .pg_query.JsonOutput json_output = 107 [json_name = "JsonOutput"]; +inline bool Node::has_json_output() const { + return node_case() == kJsonOutput; } -inline bool Node::has_alter_database_stmt() const { - return _internal_has_alter_database_stmt(); +inline bool Node::_internal_has_json_output() const { + return node_case() == kJsonOutput; } -inline void Node::set_has_alter_database_stmt() { - _impl_._oneof_case_[0] = kAlterDatabaseStmt; +inline void Node::set_has_json_output() { + _impl_._oneof_case_[0] = kJsonOutput; } -inline void Node::clear_alter_database_stmt() { - if (_internal_has_alter_database_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_database_stmt_; +inline void Node::clear_json_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonOutput) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_output_; } clear_has_node(); } } -inline ::pg_query::AlterDatabaseStmt* Node::release_alter_database_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_database_stmt) - if (_internal_has_alter_database_stmt()) { +inline ::pg_query::JsonOutput* Node::release_json_output() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_output) + if (node_case() == kJsonOutput) { clear_has_node(); - ::pg_query::AlterDatabaseStmt* temp = _impl_.node_.alter_database_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_output_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_database_stmt_ = nullptr; + _impl_.node_.json_output_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterDatabaseStmt& Node::_internal_alter_database_stmt() const { - return _internal_has_alter_database_stmt() - ? *_impl_.node_.alter_database_stmt_ - : reinterpret_cast< ::pg_query::AlterDatabaseStmt&>(::pg_query::_AlterDatabaseStmt_default_instance_); +inline const ::pg_query::JsonOutput& Node::_internal_json_output() const { + return node_case() == kJsonOutput ? *_impl_.node_.json_output_ : reinterpret_cast<::pg_query::JsonOutput&>(::pg_query::_JsonOutput_default_instance_); } -inline const ::pg_query::AlterDatabaseStmt& Node::alter_database_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_database_stmt) - return _internal_alter_database_stmt(); +inline const ::pg_query::JsonOutput& Node::json_output() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_output) + return _internal_json_output(); } -inline ::pg_query::AlterDatabaseStmt* Node::unsafe_arena_release_alter_database_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_database_stmt) - if (_internal_has_alter_database_stmt()) { +inline ::pg_query::JsonOutput* Node::unsafe_arena_release_json_output() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_output) + if (node_case() == kJsonOutput) { clear_has_node(); - ::pg_query::AlterDatabaseStmt* temp = _impl_.node_.alter_database_stmt_; - _impl_.node_.alter_database_stmt_ = nullptr; + auto* temp = _impl_.node_.json_output_; + _impl_.node_.json_output_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_database_stmt(::pg_query::AlterDatabaseStmt* alter_database_stmt) { +inline void Node::unsafe_arena_set_allocated_json_output(::pg_query::JsonOutput* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_database_stmt) { - set_has_alter_database_stmt(); - _impl_.node_.alter_database_stmt_ = alter_database_stmt; + if (value) { + set_has_json_output(); + _impl_.node_.json_output_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_database_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_output) } -inline ::pg_query::AlterDatabaseStmt* Node::_internal_mutable_alter_database_stmt() { - if (!_internal_has_alter_database_stmt()) { +inline ::pg_query::JsonOutput* Node::_internal_mutable_json_output() { + if (node_case() != kJsonOutput) { clear_node(); - set_has_alter_database_stmt(); - _impl_.node_.alter_database_stmt_ = CreateMaybeMessage< ::pg_query::AlterDatabaseStmt >(GetArenaForAllocation()); + set_has_json_output(); + _impl_.node_.json_output_ = CreateMaybeMessage<::pg_query::JsonOutput>(GetArena()); } - return _impl_.node_.alter_database_stmt_; + return _impl_.node_.json_output_; } -inline ::pg_query::AlterDatabaseStmt* Node::mutable_alter_database_stmt() { - ::pg_query::AlterDatabaseStmt* _msg = _internal_mutable_alter_database_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_database_stmt) +inline ::pg_query::JsonOutput* Node::mutable_json_output() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonOutput* _msg = _internal_mutable_json_output(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_output) return _msg; } -// .pg_query.AlterDatabaseRefreshCollStmt alter_database_refresh_coll_stmt = 111 [json_name = "AlterDatabaseRefreshCollStmt"]; -inline bool Node::_internal_has_alter_database_refresh_coll_stmt() const { - return node_case() == kAlterDatabaseRefreshCollStmt; +// .pg_query.JsonKeyValue json_key_value = 108 [json_name = "JsonKeyValue"]; +inline bool Node::has_json_key_value() const { + return node_case() == kJsonKeyValue; } -inline bool Node::has_alter_database_refresh_coll_stmt() const { - return _internal_has_alter_database_refresh_coll_stmt(); +inline bool Node::_internal_has_json_key_value() const { + return node_case() == kJsonKeyValue; } -inline void Node::set_has_alter_database_refresh_coll_stmt() { - _impl_._oneof_case_[0] = kAlterDatabaseRefreshCollStmt; +inline void Node::set_has_json_key_value() { + _impl_._oneof_case_[0] = kJsonKeyValue; } -inline void Node::clear_alter_database_refresh_coll_stmt() { - if (_internal_has_alter_database_refresh_coll_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_database_refresh_coll_stmt_; +inline void Node::clear_json_key_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonKeyValue) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_key_value_; } clear_has_node(); } } -inline ::pg_query::AlterDatabaseRefreshCollStmt* Node::release_alter_database_refresh_coll_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_database_refresh_coll_stmt) - if (_internal_has_alter_database_refresh_coll_stmt()) { +inline ::pg_query::JsonKeyValue* Node::release_json_key_value() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_key_value) + if (node_case() == kJsonKeyValue) { clear_has_node(); - ::pg_query::AlterDatabaseRefreshCollStmt* temp = _impl_.node_.alter_database_refresh_coll_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_key_value_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_database_refresh_coll_stmt_ = nullptr; + _impl_.node_.json_key_value_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterDatabaseRefreshCollStmt& Node::_internal_alter_database_refresh_coll_stmt() const { - return _internal_has_alter_database_refresh_coll_stmt() - ? *_impl_.node_.alter_database_refresh_coll_stmt_ - : reinterpret_cast< ::pg_query::AlterDatabaseRefreshCollStmt&>(::pg_query::_AlterDatabaseRefreshCollStmt_default_instance_); +inline const ::pg_query::JsonKeyValue& Node::_internal_json_key_value() const { + return node_case() == kJsonKeyValue ? *_impl_.node_.json_key_value_ : reinterpret_cast<::pg_query::JsonKeyValue&>(::pg_query::_JsonKeyValue_default_instance_); } -inline const ::pg_query::AlterDatabaseRefreshCollStmt& Node::alter_database_refresh_coll_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_database_refresh_coll_stmt) - return _internal_alter_database_refresh_coll_stmt(); +inline const ::pg_query::JsonKeyValue& Node::json_key_value() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_key_value) + return _internal_json_key_value(); } -inline ::pg_query::AlterDatabaseRefreshCollStmt* Node::unsafe_arena_release_alter_database_refresh_coll_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_database_refresh_coll_stmt) - if (_internal_has_alter_database_refresh_coll_stmt()) { +inline ::pg_query::JsonKeyValue* Node::unsafe_arena_release_json_key_value() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_key_value) + if (node_case() == kJsonKeyValue) { clear_has_node(); - ::pg_query::AlterDatabaseRefreshCollStmt* temp = _impl_.node_.alter_database_refresh_coll_stmt_; - _impl_.node_.alter_database_refresh_coll_stmt_ = nullptr; + auto* temp = _impl_.node_.json_key_value_; + _impl_.node_.json_key_value_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_database_refresh_coll_stmt(::pg_query::AlterDatabaseRefreshCollStmt* alter_database_refresh_coll_stmt) { +inline void Node::unsafe_arena_set_allocated_json_key_value(::pg_query::JsonKeyValue* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_database_refresh_coll_stmt) { - set_has_alter_database_refresh_coll_stmt(); - _impl_.node_.alter_database_refresh_coll_stmt_ = alter_database_refresh_coll_stmt; + if (value) { + set_has_json_key_value(); + _impl_.node_.json_key_value_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_database_refresh_coll_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_key_value) } -inline ::pg_query::AlterDatabaseRefreshCollStmt* Node::_internal_mutable_alter_database_refresh_coll_stmt() { - if (!_internal_has_alter_database_refresh_coll_stmt()) { +inline ::pg_query::JsonKeyValue* Node::_internal_mutable_json_key_value() { + if (node_case() != kJsonKeyValue) { clear_node(); - set_has_alter_database_refresh_coll_stmt(); - _impl_.node_.alter_database_refresh_coll_stmt_ = CreateMaybeMessage< ::pg_query::AlterDatabaseRefreshCollStmt >(GetArenaForAllocation()); + set_has_json_key_value(); + _impl_.node_.json_key_value_ = CreateMaybeMessage<::pg_query::JsonKeyValue>(GetArena()); } - return _impl_.node_.alter_database_refresh_coll_stmt_; + return _impl_.node_.json_key_value_; } -inline ::pg_query::AlterDatabaseRefreshCollStmt* Node::mutable_alter_database_refresh_coll_stmt() { - ::pg_query::AlterDatabaseRefreshCollStmt* _msg = _internal_mutable_alter_database_refresh_coll_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_database_refresh_coll_stmt) +inline ::pg_query::JsonKeyValue* Node::mutable_json_key_value() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonKeyValue* _msg = _internal_mutable_json_key_value(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_key_value) return _msg; } -// .pg_query.AlterDatabaseSetStmt alter_database_set_stmt = 112 [json_name = "AlterDatabaseSetStmt"]; -inline bool Node::_internal_has_alter_database_set_stmt() const { - return node_case() == kAlterDatabaseSetStmt; +// .pg_query.JsonObjectConstructor json_object_constructor = 109 [json_name = "JsonObjectConstructor"]; +inline bool Node::has_json_object_constructor() const { + return node_case() == kJsonObjectConstructor; } -inline bool Node::has_alter_database_set_stmt() const { - return _internal_has_alter_database_set_stmt(); +inline bool Node::_internal_has_json_object_constructor() const { + return node_case() == kJsonObjectConstructor; } -inline void Node::set_has_alter_database_set_stmt() { - _impl_._oneof_case_[0] = kAlterDatabaseSetStmt; +inline void Node::set_has_json_object_constructor() { + _impl_._oneof_case_[0] = kJsonObjectConstructor; } -inline void Node::clear_alter_database_set_stmt() { - if (_internal_has_alter_database_set_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_database_set_stmt_; +inline void Node::clear_json_object_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonObjectConstructor) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_object_constructor_; } clear_has_node(); } } -inline ::pg_query::AlterDatabaseSetStmt* Node::release_alter_database_set_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_database_set_stmt) - if (_internal_has_alter_database_set_stmt()) { +inline ::pg_query::JsonObjectConstructor* Node::release_json_object_constructor() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_object_constructor) + if (node_case() == kJsonObjectConstructor) { clear_has_node(); - ::pg_query::AlterDatabaseSetStmt* temp = _impl_.node_.alter_database_set_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_object_constructor_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_database_set_stmt_ = nullptr; + _impl_.node_.json_object_constructor_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterDatabaseSetStmt& Node::_internal_alter_database_set_stmt() const { - return _internal_has_alter_database_set_stmt() - ? *_impl_.node_.alter_database_set_stmt_ - : reinterpret_cast< ::pg_query::AlterDatabaseSetStmt&>(::pg_query::_AlterDatabaseSetStmt_default_instance_); +inline const ::pg_query::JsonObjectConstructor& Node::_internal_json_object_constructor() const { + return node_case() == kJsonObjectConstructor ? *_impl_.node_.json_object_constructor_ : reinterpret_cast<::pg_query::JsonObjectConstructor&>(::pg_query::_JsonObjectConstructor_default_instance_); } -inline const ::pg_query::AlterDatabaseSetStmt& Node::alter_database_set_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_database_set_stmt) - return _internal_alter_database_set_stmt(); +inline const ::pg_query::JsonObjectConstructor& Node::json_object_constructor() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_object_constructor) + return _internal_json_object_constructor(); } -inline ::pg_query::AlterDatabaseSetStmt* Node::unsafe_arena_release_alter_database_set_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_database_set_stmt) - if (_internal_has_alter_database_set_stmt()) { +inline ::pg_query::JsonObjectConstructor* Node::unsafe_arena_release_json_object_constructor() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_object_constructor) + if (node_case() == kJsonObjectConstructor) { clear_has_node(); - ::pg_query::AlterDatabaseSetStmt* temp = _impl_.node_.alter_database_set_stmt_; - _impl_.node_.alter_database_set_stmt_ = nullptr; + auto* temp = _impl_.node_.json_object_constructor_; + _impl_.node_.json_object_constructor_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_database_set_stmt(::pg_query::AlterDatabaseSetStmt* alter_database_set_stmt) { +inline void Node::unsafe_arena_set_allocated_json_object_constructor(::pg_query::JsonObjectConstructor* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_database_set_stmt) { - set_has_alter_database_set_stmt(); - _impl_.node_.alter_database_set_stmt_ = alter_database_set_stmt; + if (value) { + set_has_json_object_constructor(); + _impl_.node_.json_object_constructor_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_database_set_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_object_constructor) } -inline ::pg_query::AlterDatabaseSetStmt* Node::_internal_mutable_alter_database_set_stmt() { - if (!_internal_has_alter_database_set_stmt()) { +inline ::pg_query::JsonObjectConstructor* Node::_internal_mutable_json_object_constructor() { + if (node_case() != kJsonObjectConstructor) { clear_node(); - set_has_alter_database_set_stmt(); - _impl_.node_.alter_database_set_stmt_ = CreateMaybeMessage< ::pg_query::AlterDatabaseSetStmt >(GetArenaForAllocation()); + set_has_json_object_constructor(); + _impl_.node_.json_object_constructor_ = CreateMaybeMessage<::pg_query::JsonObjectConstructor>(GetArena()); } - return _impl_.node_.alter_database_set_stmt_; + return _impl_.node_.json_object_constructor_; } -inline ::pg_query::AlterDatabaseSetStmt* Node::mutable_alter_database_set_stmt() { - ::pg_query::AlterDatabaseSetStmt* _msg = _internal_mutable_alter_database_set_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_database_set_stmt) +inline ::pg_query::JsonObjectConstructor* Node::mutable_json_object_constructor() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonObjectConstructor* _msg = _internal_mutable_json_object_constructor(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_object_constructor) return _msg; } -// .pg_query.AlterRoleSetStmt alter_role_set_stmt = 113 [json_name = "AlterRoleSetStmt"]; -inline bool Node::_internal_has_alter_role_set_stmt() const { - return node_case() == kAlterRoleSetStmt; +// .pg_query.JsonArrayConstructor json_array_constructor = 110 [json_name = "JsonArrayConstructor"]; +inline bool Node::has_json_array_constructor() const { + return node_case() == kJsonArrayConstructor; } -inline bool Node::has_alter_role_set_stmt() const { - return _internal_has_alter_role_set_stmt(); +inline bool Node::_internal_has_json_array_constructor() const { + return node_case() == kJsonArrayConstructor; } -inline void Node::set_has_alter_role_set_stmt() { - _impl_._oneof_case_[0] = kAlterRoleSetStmt; +inline void Node::set_has_json_array_constructor() { + _impl_._oneof_case_[0] = kJsonArrayConstructor; } -inline void Node::clear_alter_role_set_stmt() { - if (_internal_has_alter_role_set_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_role_set_stmt_; +inline void Node::clear_json_array_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonArrayConstructor) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_array_constructor_; } clear_has_node(); } } -inline ::pg_query::AlterRoleSetStmt* Node::release_alter_role_set_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_role_set_stmt) - if (_internal_has_alter_role_set_stmt()) { +inline ::pg_query::JsonArrayConstructor* Node::release_json_array_constructor() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_array_constructor) + if (node_case() == kJsonArrayConstructor) { clear_has_node(); - ::pg_query::AlterRoleSetStmt* temp = _impl_.node_.alter_role_set_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_array_constructor_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_role_set_stmt_ = nullptr; + _impl_.node_.json_array_constructor_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterRoleSetStmt& Node::_internal_alter_role_set_stmt() const { - return _internal_has_alter_role_set_stmt() - ? *_impl_.node_.alter_role_set_stmt_ - : reinterpret_cast< ::pg_query::AlterRoleSetStmt&>(::pg_query::_AlterRoleSetStmt_default_instance_); +inline const ::pg_query::JsonArrayConstructor& Node::_internal_json_array_constructor() const { + return node_case() == kJsonArrayConstructor ? *_impl_.node_.json_array_constructor_ : reinterpret_cast<::pg_query::JsonArrayConstructor&>(::pg_query::_JsonArrayConstructor_default_instance_); } -inline const ::pg_query::AlterRoleSetStmt& Node::alter_role_set_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_role_set_stmt) - return _internal_alter_role_set_stmt(); +inline const ::pg_query::JsonArrayConstructor& Node::json_array_constructor() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_array_constructor) + return _internal_json_array_constructor(); } -inline ::pg_query::AlterRoleSetStmt* Node::unsafe_arena_release_alter_role_set_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_role_set_stmt) - if (_internal_has_alter_role_set_stmt()) { +inline ::pg_query::JsonArrayConstructor* Node::unsafe_arena_release_json_array_constructor() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_array_constructor) + if (node_case() == kJsonArrayConstructor) { clear_has_node(); - ::pg_query::AlterRoleSetStmt* temp = _impl_.node_.alter_role_set_stmt_; - _impl_.node_.alter_role_set_stmt_ = nullptr; + auto* temp = _impl_.node_.json_array_constructor_; + _impl_.node_.json_array_constructor_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_role_set_stmt(::pg_query::AlterRoleSetStmt* alter_role_set_stmt) { +inline void Node::unsafe_arena_set_allocated_json_array_constructor(::pg_query::JsonArrayConstructor* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_role_set_stmt) { - set_has_alter_role_set_stmt(); - _impl_.node_.alter_role_set_stmt_ = alter_role_set_stmt; + if (value) { + set_has_json_array_constructor(); + _impl_.node_.json_array_constructor_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_role_set_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_array_constructor) } -inline ::pg_query::AlterRoleSetStmt* Node::_internal_mutable_alter_role_set_stmt() { - if (!_internal_has_alter_role_set_stmt()) { +inline ::pg_query::JsonArrayConstructor* Node::_internal_mutable_json_array_constructor() { + if (node_case() != kJsonArrayConstructor) { clear_node(); - set_has_alter_role_set_stmt(); - _impl_.node_.alter_role_set_stmt_ = CreateMaybeMessage< ::pg_query::AlterRoleSetStmt >(GetArenaForAllocation()); + set_has_json_array_constructor(); + _impl_.node_.json_array_constructor_ = CreateMaybeMessage<::pg_query::JsonArrayConstructor>(GetArena()); } - return _impl_.node_.alter_role_set_stmt_; + return _impl_.node_.json_array_constructor_; } -inline ::pg_query::AlterRoleSetStmt* Node::mutable_alter_role_set_stmt() { - ::pg_query::AlterRoleSetStmt* _msg = _internal_mutable_alter_role_set_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_role_set_stmt) +inline ::pg_query::JsonArrayConstructor* Node::mutable_json_array_constructor() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonArrayConstructor* _msg = _internal_mutable_json_array_constructor(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_array_constructor) return _msg; } -// .pg_query.CreateConversionStmt create_conversion_stmt = 114 [json_name = "CreateConversionStmt"]; -inline bool Node::_internal_has_create_conversion_stmt() const { - return node_case() == kCreateConversionStmt; +// .pg_query.JsonArrayQueryConstructor json_array_query_constructor = 111 [json_name = "JsonArrayQueryConstructor"]; +inline bool Node::has_json_array_query_constructor() const { + return node_case() == kJsonArrayQueryConstructor; } -inline bool Node::has_create_conversion_stmt() const { - return _internal_has_create_conversion_stmt(); +inline bool Node::_internal_has_json_array_query_constructor() const { + return node_case() == kJsonArrayQueryConstructor; } -inline void Node::set_has_create_conversion_stmt() { - _impl_._oneof_case_[0] = kCreateConversionStmt; +inline void Node::set_has_json_array_query_constructor() { + _impl_._oneof_case_[0] = kJsonArrayQueryConstructor; } -inline void Node::clear_create_conversion_stmt() { - if (_internal_has_create_conversion_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_conversion_stmt_; +inline void Node::clear_json_array_query_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonArrayQueryConstructor) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_array_query_constructor_; } clear_has_node(); } } -inline ::pg_query::CreateConversionStmt* Node::release_create_conversion_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_conversion_stmt) - if (_internal_has_create_conversion_stmt()) { +inline ::pg_query::JsonArrayQueryConstructor* Node::release_json_array_query_constructor() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_array_query_constructor) + if (node_case() == kJsonArrayQueryConstructor) { clear_has_node(); - ::pg_query::CreateConversionStmt* temp = _impl_.node_.create_conversion_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_array_query_constructor_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_conversion_stmt_ = nullptr; + _impl_.node_.json_array_query_constructor_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateConversionStmt& Node::_internal_create_conversion_stmt() const { - return _internal_has_create_conversion_stmt() - ? *_impl_.node_.create_conversion_stmt_ - : reinterpret_cast< ::pg_query::CreateConversionStmt&>(::pg_query::_CreateConversionStmt_default_instance_); +inline const ::pg_query::JsonArrayQueryConstructor& Node::_internal_json_array_query_constructor() const { + return node_case() == kJsonArrayQueryConstructor ? *_impl_.node_.json_array_query_constructor_ : reinterpret_cast<::pg_query::JsonArrayQueryConstructor&>(::pg_query::_JsonArrayQueryConstructor_default_instance_); } -inline const ::pg_query::CreateConversionStmt& Node::create_conversion_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_conversion_stmt) - return _internal_create_conversion_stmt(); +inline const ::pg_query::JsonArrayQueryConstructor& Node::json_array_query_constructor() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_array_query_constructor) + return _internal_json_array_query_constructor(); } -inline ::pg_query::CreateConversionStmt* Node::unsafe_arena_release_create_conversion_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_conversion_stmt) - if (_internal_has_create_conversion_stmt()) { +inline ::pg_query::JsonArrayQueryConstructor* Node::unsafe_arena_release_json_array_query_constructor() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_array_query_constructor) + if (node_case() == kJsonArrayQueryConstructor) { clear_has_node(); - ::pg_query::CreateConversionStmt* temp = _impl_.node_.create_conversion_stmt_; - _impl_.node_.create_conversion_stmt_ = nullptr; + auto* temp = _impl_.node_.json_array_query_constructor_; + _impl_.node_.json_array_query_constructor_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_conversion_stmt(::pg_query::CreateConversionStmt* create_conversion_stmt) { +inline void Node::unsafe_arena_set_allocated_json_array_query_constructor(::pg_query::JsonArrayQueryConstructor* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_conversion_stmt) { - set_has_create_conversion_stmt(); - _impl_.node_.create_conversion_stmt_ = create_conversion_stmt; + if (value) { + set_has_json_array_query_constructor(); + _impl_.node_.json_array_query_constructor_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_conversion_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_array_query_constructor) } -inline ::pg_query::CreateConversionStmt* Node::_internal_mutable_create_conversion_stmt() { - if (!_internal_has_create_conversion_stmt()) { +inline ::pg_query::JsonArrayQueryConstructor* Node::_internal_mutable_json_array_query_constructor() { + if (node_case() != kJsonArrayQueryConstructor) { clear_node(); - set_has_create_conversion_stmt(); - _impl_.node_.create_conversion_stmt_ = CreateMaybeMessage< ::pg_query::CreateConversionStmt >(GetArenaForAllocation()); + set_has_json_array_query_constructor(); + _impl_.node_.json_array_query_constructor_ = CreateMaybeMessage<::pg_query::JsonArrayQueryConstructor>(GetArena()); } - return _impl_.node_.create_conversion_stmt_; + return _impl_.node_.json_array_query_constructor_; } -inline ::pg_query::CreateConversionStmt* Node::mutable_create_conversion_stmt() { - ::pg_query::CreateConversionStmt* _msg = _internal_mutable_create_conversion_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_conversion_stmt) +inline ::pg_query::JsonArrayQueryConstructor* Node::mutable_json_array_query_constructor() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonArrayQueryConstructor* _msg = _internal_mutable_json_array_query_constructor(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_array_query_constructor) return _msg; } -// .pg_query.CreateCastStmt create_cast_stmt = 115 [json_name = "CreateCastStmt"]; -inline bool Node::_internal_has_create_cast_stmt() const { - return node_case() == kCreateCastStmt; +// .pg_query.JsonAggConstructor json_agg_constructor = 112 [json_name = "JsonAggConstructor"]; +inline bool Node::has_json_agg_constructor() const { + return node_case() == kJsonAggConstructor; } -inline bool Node::has_create_cast_stmt() const { - return _internal_has_create_cast_stmt(); +inline bool Node::_internal_has_json_agg_constructor() const { + return node_case() == kJsonAggConstructor; } -inline void Node::set_has_create_cast_stmt() { - _impl_._oneof_case_[0] = kCreateCastStmt; +inline void Node::set_has_json_agg_constructor() { + _impl_._oneof_case_[0] = kJsonAggConstructor; } -inline void Node::clear_create_cast_stmt() { - if (_internal_has_create_cast_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_cast_stmt_; +inline void Node::clear_json_agg_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonAggConstructor) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_agg_constructor_; } clear_has_node(); } } -inline ::pg_query::CreateCastStmt* Node::release_create_cast_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_cast_stmt) - if (_internal_has_create_cast_stmt()) { +inline ::pg_query::JsonAggConstructor* Node::release_json_agg_constructor() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_agg_constructor) + if (node_case() == kJsonAggConstructor) { clear_has_node(); - ::pg_query::CreateCastStmt* temp = _impl_.node_.create_cast_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_agg_constructor_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_cast_stmt_ = nullptr; + _impl_.node_.json_agg_constructor_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateCastStmt& Node::_internal_create_cast_stmt() const { - return _internal_has_create_cast_stmt() - ? *_impl_.node_.create_cast_stmt_ - : reinterpret_cast< ::pg_query::CreateCastStmt&>(::pg_query::_CreateCastStmt_default_instance_); +inline const ::pg_query::JsonAggConstructor& Node::_internal_json_agg_constructor() const { + return node_case() == kJsonAggConstructor ? *_impl_.node_.json_agg_constructor_ : reinterpret_cast<::pg_query::JsonAggConstructor&>(::pg_query::_JsonAggConstructor_default_instance_); } -inline const ::pg_query::CreateCastStmt& Node::create_cast_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_cast_stmt) - return _internal_create_cast_stmt(); +inline const ::pg_query::JsonAggConstructor& Node::json_agg_constructor() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_agg_constructor) + return _internal_json_agg_constructor(); } -inline ::pg_query::CreateCastStmt* Node::unsafe_arena_release_create_cast_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_cast_stmt) - if (_internal_has_create_cast_stmt()) { +inline ::pg_query::JsonAggConstructor* Node::unsafe_arena_release_json_agg_constructor() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_agg_constructor) + if (node_case() == kJsonAggConstructor) { clear_has_node(); - ::pg_query::CreateCastStmt* temp = _impl_.node_.create_cast_stmt_; - _impl_.node_.create_cast_stmt_ = nullptr; + auto* temp = _impl_.node_.json_agg_constructor_; + _impl_.node_.json_agg_constructor_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_cast_stmt(::pg_query::CreateCastStmt* create_cast_stmt) { +inline void Node::unsafe_arena_set_allocated_json_agg_constructor(::pg_query::JsonAggConstructor* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_cast_stmt) { - set_has_create_cast_stmt(); - _impl_.node_.create_cast_stmt_ = create_cast_stmt; + if (value) { + set_has_json_agg_constructor(); + _impl_.node_.json_agg_constructor_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_cast_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_agg_constructor) } -inline ::pg_query::CreateCastStmt* Node::_internal_mutable_create_cast_stmt() { - if (!_internal_has_create_cast_stmt()) { +inline ::pg_query::JsonAggConstructor* Node::_internal_mutable_json_agg_constructor() { + if (node_case() != kJsonAggConstructor) { clear_node(); - set_has_create_cast_stmt(); - _impl_.node_.create_cast_stmt_ = CreateMaybeMessage< ::pg_query::CreateCastStmt >(GetArenaForAllocation()); + set_has_json_agg_constructor(); + _impl_.node_.json_agg_constructor_ = CreateMaybeMessage<::pg_query::JsonAggConstructor>(GetArena()); } - return _impl_.node_.create_cast_stmt_; + return _impl_.node_.json_agg_constructor_; } -inline ::pg_query::CreateCastStmt* Node::mutable_create_cast_stmt() { - ::pg_query::CreateCastStmt* _msg = _internal_mutable_create_cast_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_cast_stmt) +inline ::pg_query::JsonAggConstructor* Node::mutable_json_agg_constructor() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonAggConstructor* _msg = _internal_mutable_json_agg_constructor(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_agg_constructor) return _msg; } -// .pg_query.CreateOpClassStmt create_op_class_stmt = 116 [json_name = "CreateOpClassStmt"]; -inline bool Node::_internal_has_create_op_class_stmt() const { - return node_case() == kCreateOpClassStmt; +// .pg_query.JsonObjectAgg json_object_agg = 113 [json_name = "JsonObjectAgg"]; +inline bool Node::has_json_object_agg() const { + return node_case() == kJsonObjectAgg; } -inline bool Node::has_create_op_class_stmt() const { - return _internal_has_create_op_class_stmt(); +inline bool Node::_internal_has_json_object_agg() const { + return node_case() == kJsonObjectAgg; } -inline void Node::set_has_create_op_class_stmt() { - _impl_._oneof_case_[0] = kCreateOpClassStmt; +inline void Node::set_has_json_object_agg() { + _impl_._oneof_case_[0] = kJsonObjectAgg; } -inline void Node::clear_create_op_class_stmt() { - if (_internal_has_create_op_class_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_op_class_stmt_; +inline void Node::clear_json_object_agg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonObjectAgg) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_object_agg_; } clear_has_node(); } } -inline ::pg_query::CreateOpClassStmt* Node::release_create_op_class_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_op_class_stmt) - if (_internal_has_create_op_class_stmt()) { +inline ::pg_query::JsonObjectAgg* Node::release_json_object_agg() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_object_agg) + if (node_case() == kJsonObjectAgg) { clear_has_node(); - ::pg_query::CreateOpClassStmt* temp = _impl_.node_.create_op_class_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_object_agg_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_op_class_stmt_ = nullptr; + _impl_.node_.json_object_agg_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateOpClassStmt& Node::_internal_create_op_class_stmt() const { - return _internal_has_create_op_class_stmt() - ? *_impl_.node_.create_op_class_stmt_ - : reinterpret_cast< ::pg_query::CreateOpClassStmt&>(::pg_query::_CreateOpClassStmt_default_instance_); +inline const ::pg_query::JsonObjectAgg& Node::_internal_json_object_agg() const { + return node_case() == kJsonObjectAgg ? *_impl_.node_.json_object_agg_ : reinterpret_cast<::pg_query::JsonObjectAgg&>(::pg_query::_JsonObjectAgg_default_instance_); } -inline const ::pg_query::CreateOpClassStmt& Node::create_op_class_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_op_class_stmt) - return _internal_create_op_class_stmt(); +inline const ::pg_query::JsonObjectAgg& Node::json_object_agg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_object_agg) + return _internal_json_object_agg(); } -inline ::pg_query::CreateOpClassStmt* Node::unsafe_arena_release_create_op_class_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_op_class_stmt) - if (_internal_has_create_op_class_stmt()) { +inline ::pg_query::JsonObjectAgg* Node::unsafe_arena_release_json_object_agg() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_object_agg) + if (node_case() == kJsonObjectAgg) { clear_has_node(); - ::pg_query::CreateOpClassStmt* temp = _impl_.node_.create_op_class_stmt_; - _impl_.node_.create_op_class_stmt_ = nullptr; + auto* temp = _impl_.node_.json_object_agg_; + _impl_.node_.json_object_agg_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_op_class_stmt(::pg_query::CreateOpClassStmt* create_op_class_stmt) { +inline void Node::unsafe_arena_set_allocated_json_object_agg(::pg_query::JsonObjectAgg* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_op_class_stmt) { - set_has_create_op_class_stmt(); - _impl_.node_.create_op_class_stmt_ = create_op_class_stmt; + if (value) { + set_has_json_object_agg(); + _impl_.node_.json_object_agg_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_op_class_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_object_agg) } -inline ::pg_query::CreateOpClassStmt* Node::_internal_mutable_create_op_class_stmt() { - if (!_internal_has_create_op_class_stmt()) { +inline ::pg_query::JsonObjectAgg* Node::_internal_mutable_json_object_agg() { + if (node_case() != kJsonObjectAgg) { clear_node(); - set_has_create_op_class_stmt(); - _impl_.node_.create_op_class_stmt_ = CreateMaybeMessage< ::pg_query::CreateOpClassStmt >(GetArenaForAllocation()); + set_has_json_object_agg(); + _impl_.node_.json_object_agg_ = CreateMaybeMessage<::pg_query::JsonObjectAgg>(GetArena()); } - return _impl_.node_.create_op_class_stmt_; + return _impl_.node_.json_object_agg_; } -inline ::pg_query::CreateOpClassStmt* Node::mutable_create_op_class_stmt() { - ::pg_query::CreateOpClassStmt* _msg = _internal_mutable_create_op_class_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_op_class_stmt) +inline ::pg_query::JsonObjectAgg* Node::mutable_json_object_agg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonObjectAgg* _msg = _internal_mutable_json_object_agg(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_object_agg) return _msg; } -// .pg_query.CreateOpFamilyStmt create_op_family_stmt = 117 [json_name = "CreateOpFamilyStmt"]; -inline bool Node::_internal_has_create_op_family_stmt() const { - return node_case() == kCreateOpFamilyStmt; +// .pg_query.JsonArrayAgg json_array_agg = 114 [json_name = "JsonArrayAgg"]; +inline bool Node::has_json_array_agg() const { + return node_case() == kJsonArrayAgg; } -inline bool Node::has_create_op_family_stmt() const { - return _internal_has_create_op_family_stmt(); +inline bool Node::_internal_has_json_array_agg() const { + return node_case() == kJsonArrayAgg; } -inline void Node::set_has_create_op_family_stmt() { - _impl_._oneof_case_[0] = kCreateOpFamilyStmt; +inline void Node::set_has_json_array_agg() { + _impl_._oneof_case_[0] = kJsonArrayAgg; } -inline void Node::clear_create_op_family_stmt() { - if (_internal_has_create_op_family_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_op_family_stmt_; +inline void Node::clear_json_array_agg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kJsonArrayAgg) { + if (GetArena() == nullptr) { + delete _impl_.node_.json_array_agg_; } clear_has_node(); } } -inline ::pg_query::CreateOpFamilyStmt* Node::release_create_op_family_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_op_family_stmt) - if (_internal_has_create_op_family_stmt()) { +inline ::pg_query::JsonArrayAgg* Node::release_json_array_agg() { + // @@protoc_insertion_point(field_release:pg_query.Node.json_array_agg) + if (node_case() == kJsonArrayAgg) { clear_has_node(); - ::pg_query::CreateOpFamilyStmt* temp = _impl_.node_.create_op_family_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.json_array_agg_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_op_family_stmt_ = nullptr; + _impl_.node_.json_array_agg_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateOpFamilyStmt& Node::_internal_create_op_family_stmt() const { - return _internal_has_create_op_family_stmt() - ? *_impl_.node_.create_op_family_stmt_ - : reinterpret_cast< ::pg_query::CreateOpFamilyStmt&>(::pg_query::_CreateOpFamilyStmt_default_instance_); +inline const ::pg_query::JsonArrayAgg& Node::_internal_json_array_agg() const { + return node_case() == kJsonArrayAgg ? *_impl_.node_.json_array_agg_ : reinterpret_cast<::pg_query::JsonArrayAgg&>(::pg_query::_JsonArrayAgg_default_instance_); } -inline const ::pg_query::CreateOpFamilyStmt& Node::create_op_family_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_op_family_stmt) - return _internal_create_op_family_stmt(); +inline const ::pg_query::JsonArrayAgg& Node::json_array_agg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.json_array_agg) + return _internal_json_array_agg(); } -inline ::pg_query::CreateOpFamilyStmt* Node::unsafe_arena_release_create_op_family_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_op_family_stmt) - if (_internal_has_create_op_family_stmt()) { +inline ::pg_query::JsonArrayAgg* Node::unsafe_arena_release_json_array_agg() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.json_array_agg) + if (node_case() == kJsonArrayAgg) { clear_has_node(); - ::pg_query::CreateOpFamilyStmt* temp = _impl_.node_.create_op_family_stmt_; - _impl_.node_.create_op_family_stmt_ = nullptr; + auto* temp = _impl_.node_.json_array_agg_; + _impl_.node_.json_array_agg_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_op_family_stmt(::pg_query::CreateOpFamilyStmt* create_op_family_stmt) { +inline void Node::unsafe_arena_set_allocated_json_array_agg(::pg_query::JsonArrayAgg* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_op_family_stmt) { - set_has_create_op_family_stmt(); - _impl_.node_.create_op_family_stmt_ = create_op_family_stmt; + if (value) { + set_has_json_array_agg(); + _impl_.node_.json_array_agg_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_op_family_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.json_array_agg) } -inline ::pg_query::CreateOpFamilyStmt* Node::_internal_mutable_create_op_family_stmt() { - if (!_internal_has_create_op_family_stmt()) { +inline ::pg_query::JsonArrayAgg* Node::_internal_mutable_json_array_agg() { + if (node_case() != kJsonArrayAgg) { clear_node(); - set_has_create_op_family_stmt(); - _impl_.node_.create_op_family_stmt_ = CreateMaybeMessage< ::pg_query::CreateOpFamilyStmt >(GetArenaForAllocation()); + set_has_json_array_agg(); + _impl_.node_.json_array_agg_ = CreateMaybeMessage<::pg_query::JsonArrayAgg>(GetArena()); } - return _impl_.node_.create_op_family_stmt_; + return _impl_.node_.json_array_agg_; } -inline ::pg_query::CreateOpFamilyStmt* Node::mutable_create_op_family_stmt() { - ::pg_query::CreateOpFamilyStmt* _msg = _internal_mutable_create_op_family_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_op_family_stmt) +inline ::pg_query::JsonArrayAgg* Node::mutable_json_array_agg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonArrayAgg* _msg = _internal_mutable_json_array_agg(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.json_array_agg) return _msg; } -// .pg_query.AlterOpFamilyStmt alter_op_family_stmt = 118 [json_name = "AlterOpFamilyStmt"]; -inline bool Node::_internal_has_alter_op_family_stmt() const { - return node_case() == kAlterOpFamilyStmt; +// .pg_query.RawStmt raw_stmt = 115 [json_name = "RawStmt"]; +inline bool Node::has_raw_stmt() const { + return node_case() == kRawStmt; } -inline bool Node::has_alter_op_family_stmt() const { - return _internal_has_alter_op_family_stmt(); +inline bool Node::_internal_has_raw_stmt() const { + return node_case() == kRawStmt; } -inline void Node::set_has_alter_op_family_stmt() { - _impl_._oneof_case_[0] = kAlterOpFamilyStmt; +inline void Node::set_has_raw_stmt() { + _impl_._oneof_case_[0] = kRawStmt; } -inline void Node::clear_alter_op_family_stmt() { - if (_internal_has_alter_op_family_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_op_family_stmt_; +inline void Node::clear_raw_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRawStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.raw_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterOpFamilyStmt* Node::release_alter_op_family_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_op_family_stmt) - if (_internal_has_alter_op_family_stmt()) { +inline ::pg_query::RawStmt* Node::release_raw_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.raw_stmt) + if (node_case() == kRawStmt) { clear_has_node(); - ::pg_query::AlterOpFamilyStmt* temp = _impl_.node_.alter_op_family_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.raw_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_op_family_stmt_ = nullptr; + _impl_.node_.raw_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterOpFamilyStmt& Node::_internal_alter_op_family_stmt() const { - return _internal_has_alter_op_family_stmt() - ? *_impl_.node_.alter_op_family_stmt_ - : reinterpret_cast< ::pg_query::AlterOpFamilyStmt&>(::pg_query::_AlterOpFamilyStmt_default_instance_); +inline const ::pg_query::RawStmt& Node::_internal_raw_stmt() const { + return node_case() == kRawStmt ? *_impl_.node_.raw_stmt_ : reinterpret_cast<::pg_query::RawStmt&>(::pg_query::_RawStmt_default_instance_); } -inline const ::pg_query::AlterOpFamilyStmt& Node::alter_op_family_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_op_family_stmt) - return _internal_alter_op_family_stmt(); +inline const ::pg_query::RawStmt& Node::raw_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.raw_stmt) + return _internal_raw_stmt(); } -inline ::pg_query::AlterOpFamilyStmt* Node::unsafe_arena_release_alter_op_family_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_op_family_stmt) - if (_internal_has_alter_op_family_stmt()) { +inline ::pg_query::RawStmt* Node::unsafe_arena_release_raw_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.raw_stmt) + if (node_case() == kRawStmt) { clear_has_node(); - ::pg_query::AlterOpFamilyStmt* temp = _impl_.node_.alter_op_family_stmt_; - _impl_.node_.alter_op_family_stmt_ = nullptr; + auto* temp = _impl_.node_.raw_stmt_; + _impl_.node_.raw_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_op_family_stmt(::pg_query::AlterOpFamilyStmt* alter_op_family_stmt) { +inline void Node::unsafe_arena_set_allocated_raw_stmt(::pg_query::RawStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_op_family_stmt) { - set_has_alter_op_family_stmt(); - _impl_.node_.alter_op_family_stmt_ = alter_op_family_stmt; + if (value) { + set_has_raw_stmt(); + _impl_.node_.raw_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_op_family_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.raw_stmt) } -inline ::pg_query::AlterOpFamilyStmt* Node::_internal_mutable_alter_op_family_stmt() { - if (!_internal_has_alter_op_family_stmt()) { +inline ::pg_query::RawStmt* Node::_internal_mutable_raw_stmt() { + if (node_case() != kRawStmt) { clear_node(); - set_has_alter_op_family_stmt(); - _impl_.node_.alter_op_family_stmt_ = CreateMaybeMessage< ::pg_query::AlterOpFamilyStmt >(GetArenaForAllocation()); + set_has_raw_stmt(); + _impl_.node_.raw_stmt_ = CreateMaybeMessage<::pg_query::RawStmt>(GetArena()); } - return _impl_.node_.alter_op_family_stmt_; + return _impl_.node_.raw_stmt_; } -inline ::pg_query::AlterOpFamilyStmt* Node::mutable_alter_op_family_stmt() { - ::pg_query::AlterOpFamilyStmt* _msg = _internal_mutable_alter_op_family_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_op_family_stmt) +inline ::pg_query::RawStmt* Node::mutable_raw_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RawStmt* _msg = _internal_mutable_raw_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.raw_stmt) return _msg; } -// .pg_query.PrepareStmt prepare_stmt = 119 [json_name = "PrepareStmt"]; -inline bool Node::_internal_has_prepare_stmt() const { - return node_case() == kPrepareStmt; +// .pg_query.InsertStmt insert_stmt = 116 [json_name = "InsertStmt"]; +inline bool Node::has_insert_stmt() const { + return node_case() == kInsertStmt; } -inline bool Node::has_prepare_stmt() const { - return _internal_has_prepare_stmt(); +inline bool Node::_internal_has_insert_stmt() const { + return node_case() == kInsertStmt; } -inline void Node::set_has_prepare_stmt() { - _impl_._oneof_case_[0] = kPrepareStmt; +inline void Node::set_has_insert_stmt() { + _impl_._oneof_case_[0] = kInsertStmt; } -inline void Node::clear_prepare_stmt() { - if (_internal_has_prepare_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.prepare_stmt_; +inline void Node::clear_insert_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kInsertStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.insert_stmt_; } clear_has_node(); } } -inline ::pg_query::PrepareStmt* Node::release_prepare_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.prepare_stmt) - if (_internal_has_prepare_stmt()) { +inline ::pg_query::InsertStmt* Node::release_insert_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.insert_stmt) + if (node_case() == kInsertStmt) { clear_has_node(); - ::pg_query::PrepareStmt* temp = _impl_.node_.prepare_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.insert_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.prepare_stmt_ = nullptr; + _impl_.node_.insert_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::PrepareStmt& Node::_internal_prepare_stmt() const { - return _internal_has_prepare_stmt() - ? *_impl_.node_.prepare_stmt_ - : reinterpret_cast< ::pg_query::PrepareStmt&>(::pg_query::_PrepareStmt_default_instance_); +inline const ::pg_query::InsertStmt& Node::_internal_insert_stmt() const { + return node_case() == kInsertStmt ? *_impl_.node_.insert_stmt_ : reinterpret_cast<::pg_query::InsertStmt&>(::pg_query::_InsertStmt_default_instance_); } -inline const ::pg_query::PrepareStmt& Node::prepare_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.prepare_stmt) - return _internal_prepare_stmt(); +inline const ::pg_query::InsertStmt& Node::insert_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.insert_stmt) + return _internal_insert_stmt(); } -inline ::pg_query::PrepareStmt* Node::unsafe_arena_release_prepare_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.prepare_stmt) - if (_internal_has_prepare_stmt()) { +inline ::pg_query::InsertStmt* Node::unsafe_arena_release_insert_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.insert_stmt) + if (node_case() == kInsertStmt) { clear_has_node(); - ::pg_query::PrepareStmt* temp = _impl_.node_.prepare_stmt_; - _impl_.node_.prepare_stmt_ = nullptr; + auto* temp = _impl_.node_.insert_stmt_; + _impl_.node_.insert_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_prepare_stmt(::pg_query::PrepareStmt* prepare_stmt) { +inline void Node::unsafe_arena_set_allocated_insert_stmt(::pg_query::InsertStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (prepare_stmt) { - set_has_prepare_stmt(); - _impl_.node_.prepare_stmt_ = prepare_stmt; + if (value) { + set_has_insert_stmt(); + _impl_.node_.insert_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.prepare_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.insert_stmt) } -inline ::pg_query::PrepareStmt* Node::_internal_mutable_prepare_stmt() { - if (!_internal_has_prepare_stmt()) { +inline ::pg_query::InsertStmt* Node::_internal_mutable_insert_stmt() { + if (node_case() != kInsertStmt) { clear_node(); - set_has_prepare_stmt(); - _impl_.node_.prepare_stmt_ = CreateMaybeMessage< ::pg_query::PrepareStmt >(GetArenaForAllocation()); + set_has_insert_stmt(); + _impl_.node_.insert_stmt_ = CreateMaybeMessage<::pg_query::InsertStmt>(GetArena()); } - return _impl_.node_.prepare_stmt_; + return _impl_.node_.insert_stmt_; } -inline ::pg_query::PrepareStmt* Node::mutable_prepare_stmt() { - ::pg_query::PrepareStmt* _msg = _internal_mutable_prepare_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.prepare_stmt) +inline ::pg_query::InsertStmt* Node::mutable_insert_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::InsertStmt* _msg = _internal_mutable_insert_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.insert_stmt) return _msg; } -// .pg_query.ExecuteStmt execute_stmt = 120 [json_name = "ExecuteStmt"]; -inline bool Node::_internal_has_execute_stmt() const { - return node_case() == kExecuteStmt; +// .pg_query.DeleteStmt delete_stmt = 117 [json_name = "DeleteStmt"]; +inline bool Node::has_delete_stmt() const { + return node_case() == kDeleteStmt; } -inline bool Node::has_execute_stmt() const { - return _internal_has_execute_stmt(); +inline bool Node::_internal_has_delete_stmt() const { + return node_case() == kDeleteStmt; } -inline void Node::set_has_execute_stmt() { - _impl_._oneof_case_[0] = kExecuteStmt; +inline void Node::set_has_delete_stmt() { + _impl_._oneof_case_[0] = kDeleteStmt; } -inline void Node::clear_execute_stmt() { - if (_internal_has_execute_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.execute_stmt_; +inline void Node::clear_delete_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDeleteStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.delete_stmt_; } clear_has_node(); } } -inline ::pg_query::ExecuteStmt* Node::release_execute_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.execute_stmt) - if (_internal_has_execute_stmt()) { +inline ::pg_query::DeleteStmt* Node::release_delete_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.delete_stmt) + if (node_case() == kDeleteStmt) { clear_has_node(); - ::pg_query::ExecuteStmt* temp = _impl_.node_.execute_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.delete_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.execute_stmt_ = nullptr; + _impl_.node_.delete_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ExecuteStmt& Node::_internal_execute_stmt() const { - return _internal_has_execute_stmt() - ? *_impl_.node_.execute_stmt_ - : reinterpret_cast< ::pg_query::ExecuteStmt&>(::pg_query::_ExecuteStmt_default_instance_); +inline const ::pg_query::DeleteStmt& Node::_internal_delete_stmt() const { + return node_case() == kDeleteStmt ? *_impl_.node_.delete_stmt_ : reinterpret_cast<::pg_query::DeleteStmt&>(::pg_query::_DeleteStmt_default_instance_); } -inline const ::pg_query::ExecuteStmt& Node::execute_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.execute_stmt) - return _internal_execute_stmt(); +inline const ::pg_query::DeleteStmt& Node::delete_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.delete_stmt) + return _internal_delete_stmt(); } -inline ::pg_query::ExecuteStmt* Node::unsafe_arena_release_execute_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.execute_stmt) - if (_internal_has_execute_stmt()) { +inline ::pg_query::DeleteStmt* Node::unsafe_arena_release_delete_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.delete_stmt) + if (node_case() == kDeleteStmt) { clear_has_node(); - ::pg_query::ExecuteStmt* temp = _impl_.node_.execute_stmt_; - _impl_.node_.execute_stmt_ = nullptr; + auto* temp = _impl_.node_.delete_stmt_; + _impl_.node_.delete_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_execute_stmt(::pg_query::ExecuteStmt* execute_stmt) { +inline void Node::unsafe_arena_set_allocated_delete_stmt(::pg_query::DeleteStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (execute_stmt) { - set_has_execute_stmt(); - _impl_.node_.execute_stmt_ = execute_stmt; + if (value) { + set_has_delete_stmt(); + _impl_.node_.delete_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.execute_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.delete_stmt) } -inline ::pg_query::ExecuteStmt* Node::_internal_mutable_execute_stmt() { - if (!_internal_has_execute_stmt()) { +inline ::pg_query::DeleteStmt* Node::_internal_mutable_delete_stmt() { + if (node_case() != kDeleteStmt) { clear_node(); - set_has_execute_stmt(); - _impl_.node_.execute_stmt_ = CreateMaybeMessage< ::pg_query::ExecuteStmt >(GetArenaForAllocation()); + set_has_delete_stmt(); + _impl_.node_.delete_stmt_ = CreateMaybeMessage<::pg_query::DeleteStmt>(GetArena()); } - return _impl_.node_.execute_stmt_; + return _impl_.node_.delete_stmt_; } -inline ::pg_query::ExecuteStmt* Node::mutable_execute_stmt() { - ::pg_query::ExecuteStmt* _msg = _internal_mutable_execute_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.execute_stmt) +inline ::pg_query::DeleteStmt* Node::mutable_delete_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DeleteStmt* _msg = _internal_mutable_delete_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.delete_stmt) return _msg; } -// .pg_query.DeallocateStmt deallocate_stmt = 121 [json_name = "DeallocateStmt"]; -inline bool Node::_internal_has_deallocate_stmt() const { - return node_case() == kDeallocateStmt; +// .pg_query.UpdateStmt update_stmt = 118 [json_name = "UpdateStmt"]; +inline bool Node::has_update_stmt() const { + return node_case() == kUpdateStmt; } -inline bool Node::has_deallocate_stmt() const { - return _internal_has_deallocate_stmt(); +inline bool Node::_internal_has_update_stmt() const { + return node_case() == kUpdateStmt; } -inline void Node::set_has_deallocate_stmt() { - _impl_._oneof_case_[0] = kDeallocateStmt; +inline void Node::set_has_update_stmt() { + _impl_._oneof_case_[0] = kUpdateStmt; } -inline void Node::clear_deallocate_stmt() { - if (_internal_has_deallocate_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.deallocate_stmt_; +inline void Node::clear_update_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kUpdateStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.update_stmt_; } clear_has_node(); } } -inline ::pg_query::DeallocateStmt* Node::release_deallocate_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.deallocate_stmt) - if (_internal_has_deallocate_stmt()) { +inline ::pg_query::UpdateStmt* Node::release_update_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.update_stmt) + if (node_case() == kUpdateStmt) { clear_has_node(); - ::pg_query::DeallocateStmt* temp = _impl_.node_.deallocate_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.update_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.deallocate_stmt_ = nullptr; + _impl_.node_.update_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DeallocateStmt& Node::_internal_deallocate_stmt() const { - return _internal_has_deallocate_stmt() - ? *_impl_.node_.deallocate_stmt_ - : reinterpret_cast< ::pg_query::DeallocateStmt&>(::pg_query::_DeallocateStmt_default_instance_); +inline const ::pg_query::UpdateStmt& Node::_internal_update_stmt() const { + return node_case() == kUpdateStmt ? *_impl_.node_.update_stmt_ : reinterpret_cast<::pg_query::UpdateStmt&>(::pg_query::_UpdateStmt_default_instance_); } -inline const ::pg_query::DeallocateStmt& Node::deallocate_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.deallocate_stmt) - return _internal_deallocate_stmt(); +inline const ::pg_query::UpdateStmt& Node::update_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.update_stmt) + return _internal_update_stmt(); } -inline ::pg_query::DeallocateStmt* Node::unsafe_arena_release_deallocate_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.deallocate_stmt) - if (_internal_has_deallocate_stmt()) { +inline ::pg_query::UpdateStmt* Node::unsafe_arena_release_update_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.update_stmt) + if (node_case() == kUpdateStmt) { clear_has_node(); - ::pg_query::DeallocateStmt* temp = _impl_.node_.deallocate_stmt_; - _impl_.node_.deallocate_stmt_ = nullptr; + auto* temp = _impl_.node_.update_stmt_; + _impl_.node_.update_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_deallocate_stmt(::pg_query::DeallocateStmt* deallocate_stmt) { +inline void Node::unsafe_arena_set_allocated_update_stmt(::pg_query::UpdateStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (deallocate_stmt) { - set_has_deallocate_stmt(); - _impl_.node_.deallocate_stmt_ = deallocate_stmt; + if (value) { + set_has_update_stmt(); + _impl_.node_.update_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.deallocate_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.update_stmt) } -inline ::pg_query::DeallocateStmt* Node::_internal_mutable_deallocate_stmt() { - if (!_internal_has_deallocate_stmt()) { +inline ::pg_query::UpdateStmt* Node::_internal_mutable_update_stmt() { + if (node_case() != kUpdateStmt) { clear_node(); - set_has_deallocate_stmt(); - _impl_.node_.deallocate_stmt_ = CreateMaybeMessage< ::pg_query::DeallocateStmt >(GetArenaForAllocation()); + set_has_update_stmt(); + _impl_.node_.update_stmt_ = CreateMaybeMessage<::pg_query::UpdateStmt>(GetArena()); } - return _impl_.node_.deallocate_stmt_; + return _impl_.node_.update_stmt_; } -inline ::pg_query::DeallocateStmt* Node::mutable_deallocate_stmt() { - ::pg_query::DeallocateStmt* _msg = _internal_mutable_deallocate_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.deallocate_stmt) +inline ::pg_query::UpdateStmt* Node::mutable_update_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::UpdateStmt* _msg = _internal_mutable_update_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.update_stmt) return _msg; } -// .pg_query.DeclareCursorStmt declare_cursor_stmt = 122 [json_name = "DeclareCursorStmt"]; -inline bool Node::_internal_has_declare_cursor_stmt() const { - return node_case() == kDeclareCursorStmt; +// .pg_query.MergeStmt merge_stmt = 119 [json_name = "MergeStmt"]; +inline bool Node::has_merge_stmt() const { + return node_case() == kMergeStmt; } -inline bool Node::has_declare_cursor_stmt() const { - return _internal_has_declare_cursor_stmt(); +inline bool Node::_internal_has_merge_stmt() const { + return node_case() == kMergeStmt; } -inline void Node::set_has_declare_cursor_stmt() { - _impl_._oneof_case_[0] = kDeclareCursorStmt; +inline void Node::set_has_merge_stmt() { + _impl_._oneof_case_[0] = kMergeStmt; } -inline void Node::clear_declare_cursor_stmt() { - if (_internal_has_declare_cursor_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.declare_cursor_stmt_; +inline void Node::clear_merge_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kMergeStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.merge_stmt_; } clear_has_node(); } } -inline ::pg_query::DeclareCursorStmt* Node::release_declare_cursor_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.declare_cursor_stmt) - if (_internal_has_declare_cursor_stmt()) { +inline ::pg_query::MergeStmt* Node::release_merge_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.merge_stmt) + if (node_case() == kMergeStmt) { clear_has_node(); - ::pg_query::DeclareCursorStmt* temp = _impl_.node_.declare_cursor_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.merge_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.declare_cursor_stmt_ = nullptr; + _impl_.node_.merge_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DeclareCursorStmt& Node::_internal_declare_cursor_stmt() const { - return _internal_has_declare_cursor_stmt() - ? *_impl_.node_.declare_cursor_stmt_ - : reinterpret_cast< ::pg_query::DeclareCursorStmt&>(::pg_query::_DeclareCursorStmt_default_instance_); +inline const ::pg_query::MergeStmt& Node::_internal_merge_stmt() const { + return node_case() == kMergeStmt ? *_impl_.node_.merge_stmt_ : reinterpret_cast<::pg_query::MergeStmt&>(::pg_query::_MergeStmt_default_instance_); } -inline const ::pg_query::DeclareCursorStmt& Node::declare_cursor_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.declare_cursor_stmt) - return _internal_declare_cursor_stmt(); +inline const ::pg_query::MergeStmt& Node::merge_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.merge_stmt) + return _internal_merge_stmt(); } -inline ::pg_query::DeclareCursorStmt* Node::unsafe_arena_release_declare_cursor_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.declare_cursor_stmt) - if (_internal_has_declare_cursor_stmt()) { +inline ::pg_query::MergeStmt* Node::unsafe_arena_release_merge_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.merge_stmt) + if (node_case() == kMergeStmt) { clear_has_node(); - ::pg_query::DeclareCursorStmt* temp = _impl_.node_.declare_cursor_stmt_; - _impl_.node_.declare_cursor_stmt_ = nullptr; + auto* temp = _impl_.node_.merge_stmt_; + _impl_.node_.merge_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_declare_cursor_stmt(::pg_query::DeclareCursorStmt* declare_cursor_stmt) { +inline void Node::unsafe_arena_set_allocated_merge_stmt(::pg_query::MergeStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (declare_cursor_stmt) { - set_has_declare_cursor_stmt(); - _impl_.node_.declare_cursor_stmt_ = declare_cursor_stmt; + if (value) { + set_has_merge_stmt(); + _impl_.node_.merge_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.declare_cursor_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.merge_stmt) } -inline ::pg_query::DeclareCursorStmt* Node::_internal_mutable_declare_cursor_stmt() { - if (!_internal_has_declare_cursor_stmt()) { +inline ::pg_query::MergeStmt* Node::_internal_mutable_merge_stmt() { + if (node_case() != kMergeStmt) { clear_node(); - set_has_declare_cursor_stmt(); - _impl_.node_.declare_cursor_stmt_ = CreateMaybeMessage< ::pg_query::DeclareCursorStmt >(GetArenaForAllocation()); + set_has_merge_stmt(); + _impl_.node_.merge_stmt_ = CreateMaybeMessage<::pg_query::MergeStmt>(GetArena()); } - return _impl_.node_.declare_cursor_stmt_; + return _impl_.node_.merge_stmt_; } -inline ::pg_query::DeclareCursorStmt* Node::mutable_declare_cursor_stmt() { - ::pg_query::DeclareCursorStmt* _msg = _internal_mutable_declare_cursor_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.declare_cursor_stmt) +inline ::pg_query::MergeStmt* Node::mutable_merge_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::MergeStmt* _msg = _internal_mutable_merge_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.merge_stmt) return _msg; } -// .pg_query.CreateTableSpaceStmt create_table_space_stmt = 123 [json_name = "CreateTableSpaceStmt"]; -inline bool Node::_internal_has_create_table_space_stmt() const { - return node_case() == kCreateTableSpaceStmt; +// .pg_query.SelectStmt select_stmt = 120 [json_name = "SelectStmt"]; +inline bool Node::has_select_stmt() const { + return node_case() == kSelectStmt; } -inline bool Node::has_create_table_space_stmt() const { - return _internal_has_create_table_space_stmt(); +inline bool Node::_internal_has_select_stmt() const { + return node_case() == kSelectStmt; } -inline void Node::set_has_create_table_space_stmt() { - _impl_._oneof_case_[0] = kCreateTableSpaceStmt; +inline void Node::set_has_select_stmt() { + _impl_._oneof_case_[0] = kSelectStmt; } -inline void Node::clear_create_table_space_stmt() { - if (_internal_has_create_table_space_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_table_space_stmt_; +inline void Node::clear_select_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSelectStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.select_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateTableSpaceStmt* Node::release_create_table_space_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_table_space_stmt) - if (_internal_has_create_table_space_stmt()) { +inline ::pg_query::SelectStmt* Node::release_select_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.select_stmt) + if (node_case() == kSelectStmt) { clear_has_node(); - ::pg_query::CreateTableSpaceStmt* temp = _impl_.node_.create_table_space_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.select_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_table_space_stmt_ = nullptr; + _impl_.node_.select_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateTableSpaceStmt& Node::_internal_create_table_space_stmt() const { - return _internal_has_create_table_space_stmt() - ? *_impl_.node_.create_table_space_stmt_ - : reinterpret_cast< ::pg_query::CreateTableSpaceStmt&>(::pg_query::_CreateTableSpaceStmt_default_instance_); +inline const ::pg_query::SelectStmt& Node::_internal_select_stmt() const { + return node_case() == kSelectStmt ? *_impl_.node_.select_stmt_ : reinterpret_cast<::pg_query::SelectStmt&>(::pg_query::_SelectStmt_default_instance_); } -inline const ::pg_query::CreateTableSpaceStmt& Node::create_table_space_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_table_space_stmt) - return _internal_create_table_space_stmt(); +inline const ::pg_query::SelectStmt& Node::select_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.select_stmt) + return _internal_select_stmt(); } -inline ::pg_query::CreateTableSpaceStmt* Node::unsafe_arena_release_create_table_space_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_table_space_stmt) - if (_internal_has_create_table_space_stmt()) { +inline ::pg_query::SelectStmt* Node::unsafe_arena_release_select_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.select_stmt) + if (node_case() == kSelectStmt) { clear_has_node(); - ::pg_query::CreateTableSpaceStmt* temp = _impl_.node_.create_table_space_stmt_; - _impl_.node_.create_table_space_stmt_ = nullptr; + auto* temp = _impl_.node_.select_stmt_; + _impl_.node_.select_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_table_space_stmt(::pg_query::CreateTableSpaceStmt* create_table_space_stmt) { +inline void Node::unsafe_arena_set_allocated_select_stmt(::pg_query::SelectStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_table_space_stmt) { - set_has_create_table_space_stmt(); - _impl_.node_.create_table_space_stmt_ = create_table_space_stmt; + if (value) { + set_has_select_stmt(); + _impl_.node_.select_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_table_space_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.select_stmt) } -inline ::pg_query::CreateTableSpaceStmt* Node::_internal_mutable_create_table_space_stmt() { - if (!_internal_has_create_table_space_stmt()) { +inline ::pg_query::SelectStmt* Node::_internal_mutable_select_stmt() { + if (node_case() != kSelectStmt) { clear_node(); - set_has_create_table_space_stmt(); - _impl_.node_.create_table_space_stmt_ = CreateMaybeMessage< ::pg_query::CreateTableSpaceStmt >(GetArenaForAllocation()); + set_has_select_stmt(); + _impl_.node_.select_stmt_ = CreateMaybeMessage<::pg_query::SelectStmt>(GetArena()); } - return _impl_.node_.create_table_space_stmt_; + return _impl_.node_.select_stmt_; } -inline ::pg_query::CreateTableSpaceStmt* Node::mutable_create_table_space_stmt() { - ::pg_query::CreateTableSpaceStmt* _msg = _internal_mutable_create_table_space_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_table_space_stmt) +inline ::pg_query::SelectStmt* Node::mutable_select_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::SelectStmt* _msg = _internal_mutable_select_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.select_stmt) return _msg; } -// .pg_query.DropTableSpaceStmt drop_table_space_stmt = 124 [json_name = "DropTableSpaceStmt"]; -inline bool Node::_internal_has_drop_table_space_stmt() const { - return node_case() == kDropTableSpaceStmt; +// .pg_query.SetOperationStmt set_operation_stmt = 121 [json_name = "SetOperationStmt"]; +inline bool Node::has_set_operation_stmt() const { + return node_case() == kSetOperationStmt; } -inline bool Node::has_drop_table_space_stmt() const { - return _internal_has_drop_table_space_stmt(); +inline bool Node::_internal_has_set_operation_stmt() const { + return node_case() == kSetOperationStmt; } -inline void Node::set_has_drop_table_space_stmt() { - _impl_._oneof_case_[0] = kDropTableSpaceStmt; +inline void Node::set_has_set_operation_stmt() { + _impl_._oneof_case_[0] = kSetOperationStmt; } -inline void Node::clear_drop_table_space_stmt() { - if (_internal_has_drop_table_space_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.drop_table_space_stmt_; +inline void Node::clear_set_operation_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSetOperationStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.set_operation_stmt_; } clear_has_node(); } } -inline ::pg_query::DropTableSpaceStmt* Node::release_drop_table_space_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.drop_table_space_stmt) - if (_internal_has_drop_table_space_stmt()) { +inline ::pg_query::SetOperationStmt* Node::release_set_operation_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.set_operation_stmt) + if (node_case() == kSetOperationStmt) { clear_has_node(); - ::pg_query::DropTableSpaceStmt* temp = _impl_.node_.drop_table_space_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.set_operation_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.drop_table_space_stmt_ = nullptr; + _impl_.node_.set_operation_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DropTableSpaceStmt& Node::_internal_drop_table_space_stmt() const { - return _internal_has_drop_table_space_stmt() - ? *_impl_.node_.drop_table_space_stmt_ - : reinterpret_cast< ::pg_query::DropTableSpaceStmt&>(::pg_query::_DropTableSpaceStmt_default_instance_); +inline const ::pg_query::SetOperationStmt& Node::_internal_set_operation_stmt() const { + return node_case() == kSetOperationStmt ? *_impl_.node_.set_operation_stmt_ : reinterpret_cast<::pg_query::SetOperationStmt&>(::pg_query::_SetOperationStmt_default_instance_); } -inline const ::pg_query::DropTableSpaceStmt& Node::drop_table_space_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.drop_table_space_stmt) - return _internal_drop_table_space_stmt(); +inline const ::pg_query::SetOperationStmt& Node::set_operation_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.set_operation_stmt) + return _internal_set_operation_stmt(); } -inline ::pg_query::DropTableSpaceStmt* Node::unsafe_arena_release_drop_table_space_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_table_space_stmt) - if (_internal_has_drop_table_space_stmt()) { +inline ::pg_query::SetOperationStmt* Node::unsafe_arena_release_set_operation_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.set_operation_stmt) + if (node_case() == kSetOperationStmt) { clear_has_node(); - ::pg_query::DropTableSpaceStmt* temp = _impl_.node_.drop_table_space_stmt_; - _impl_.node_.drop_table_space_stmt_ = nullptr; + auto* temp = _impl_.node_.set_operation_stmt_; + _impl_.node_.set_operation_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_drop_table_space_stmt(::pg_query::DropTableSpaceStmt* drop_table_space_stmt) { +inline void Node::unsafe_arena_set_allocated_set_operation_stmt(::pg_query::SetOperationStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (drop_table_space_stmt) { - set_has_drop_table_space_stmt(); - _impl_.node_.drop_table_space_stmt_ = drop_table_space_stmt; + if (value) { + set_has_set_operation_stmt(); + _impl_.node_.set_operation_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_table_space_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.set_operation_stmt) } -inline ::pg_query::DropTableSpaceStmt* Node::_internal_mutable_drop_table_space_stmt() { - if (!_internal_has_drop_table_space_stmt()) { +inline ::pg_query::SetOperationStmt* Node::_internal_mutable_set_operation_stmt() { + if (node_case() != kSetOperationStmt) { clear_node(); - set_has_drop_table_space_stmt(); - _impl_.node_.drop_table_space_stmt_ = CreateMaybeMessage< ::pg_query::DropTableSpaceStmt >(GetArenaForAllocation()); + set_has_set_operation_stmt(); + _impl_.node_.set_operation_stmt_ = CreateMaybeMessage<::pg_query::SetOperationStmt>(GetArena()); } - return _impl_.node_.drop_table_space_stmt_; + return _impl_.node_.set_operation_stmt_; } -inline ::pg_query::DropTableSpaceStmt* Node::mutable_drop_table_space_stmt() { - ::pg_query::DropTableSpaceStmt* _msg = _internal_mutable_drop_table_space_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_table_space_stmt) +inline ::pg_query::SetOperationStmt* Node::mutable_set_operation_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::SetOperationStmt* _msg = _internal_mutable_set_operation_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.set_operation_stmt) return _msg; } -// .pg_query.AlterObjectDependsStmt alter_object_depends_stmt = 125 [json_name = "AlterObjectDependsStmt"]; -inline bool Node::_internal_has_alter_object_depends_stmt() const { - return node_case() == kAlterObjectDependsStmt; +// .pg_query.ReturnStmt return_stmt = 122 [json_name = "ReturnStmt"]; +inline bool Node::has_return_stmt() const { + return node_case() == kReturnStmt; } -inline bool Node::has_alter_object_depends_stmt() const { - return _internal_has_alter_object_depends_stmt(); +inline bool Node::_internal_has_return_stmt() const { + return node_case() == kReturnStmt; } -inline void Node::set_has_alter_object_depends_stmt() { - _impl_._oneof_case_[0] = kAlterObjectDependsStmt; +inline void Node::set_has_return_stmt() { + _impl_._oneof_case_[0] = kReturnStmt; } -inline void Node::clear_alter_object_depends_stmt() { - if (_internal_has_alter_object_depends_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_object_depends_stmt_; +inline void Node::clear_return_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kReturnStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.return_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterObjectDependsStmt* Node::release_alter_object_depends_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_object_depends_stmt) - if (_internal_has_alter_object_depends_stmt()) { +inline ::pg_query::ReturnStmt* Node::release_return_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.return_stmt) + if (node_case() == kReturnStmt) { clear_has_node(); - ::pg_query::AlterObjectDependsStmt* temp = _impl_.node_.alter_object_depends_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.return_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_object_depends_stmt_ = nullptr; + _impl_.node_.return_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterObjectDependsStmt& Node::_internal_alter_object_depends_stmt() const { - return _internal_has_alter_object_depends_stmt() - ? *_impl_.node_.alter_object_depends_stmt_ - : reinterpret_cast< ::pg_query::AlterObjectDependsStmt&>(::pg_query::_AlterObjectDependsStmt_default_instance_); +inline const ::pg_query::ReturnStmt& Node::_internal_return_stmt() const { + return node_case() == kReturnStmt ? *_impl_.node_.return_stmt_ : reinterpret_cast<::pg_query::ReturnStmt&>(::pg_query::_ReturnStmt_default_instance_); } -inline const ::pg_query::AlterObjectDependsStmt& Node::alter_object_depends_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_object_depends_stmt) - return _internal_alter_object_depends_stmt(); +inline const ::pg_query::ReturnStmt& Node::return_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.return_stmt) + return _internal_return_stmt(); } -inline ::pg_query::AlterObjectDependsStmt* Node::unsafe_arena_release_alter_object_depends_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_object_depends_stmt) - if (_internal_has_alter_object_depends_stmt()) { +inline ::pg_query::ReturnStmt* Node::unsafe_arena_release_return_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.return_stmt) + if (node_case() == kReturnStmt) { clear_has_node(); - ::pg_query::AlterObjectDependsStmt* temp = _impl_.node_.alter_object_depends_stmt_; - _impl_.node_.alter_object_depends_stmt_ = nullptr; + auto* temp = _impl_.node_.return_stmt_; + _impl_.node_.return_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_object_depends_stmt(::pg_query::AlterObjectDependsStmt* alter_object_depends_stmt) { +inline void Node::unsafe_arena_set_allocated_return_stmt(::pg_query::ReturnStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_object_depends_stmt) { - set_has_alter_object_depends_stmt(); - _impl_.node_.alter_object_depends_stmt_ = alter_object_depends_stmt; + if (value) { + set_has_return_stmt(); + _impl_.node_.return_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_object_depends_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.return_stmt) } -inline ::pg_query::AlterObjectDependsStmt* Node::_internal_mutable_alter_object_depends_stmt() { - if (!_internal_has_alter_object_depends_stmt()) { +inline ::pg_query::ReturnStmt* Node::_internal_mutable_return_stmt() { + if (node_case() != kReturnStmt) { clear_node(); - set_has_alter_object_depends_stmt(); - _impl_.node_.alter_object_depends_stmt_ = CreateMaybeMessage< ::pg_query::AlterObjectDependsStmt >(GetArenaForAllocation()); + set_has_return_stmt(); + _impl_.node_.return_stmt_ = CreateMaybeMessage<::pg_query::ReturnStmt>(GetArena()); } - return _impl_.node_.alter_object_depends_stmt_; + return _impl_.node_.return_stmt_; } -inline ::pg_query::AlterObjectDependsStmt* Node::mutable_alter_object_depends_stmt() { - ::pg_query::AlterObjectDependsStmt* _msg = _internal_mutable_alter_object_depends_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_object_depends_stmt) +inline ::pg_query::ReturnStmt* Node::mutable_return_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ReturnStmt* _msg = _internal_mutable_return_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.return_stmt) return _msg; } -// .pg_query.AlterObjectSchemaStmt alter_object_schema_stmt = 126 [json_name = "AlterObjectSchemaStmt"]; -inline bool Node::_internal_has_alter_object_schema_stmt() const { - return node_case() == kAlterObjectSchemaStmt; +// .pg_query.PLAssignStmt plassign_stmt = 123 [json_name = "PLAssignStmt"]; +inline bool Node::has_plassign_stmt() const { + return node_case() == kPlassignStmt; } -inline bool Node::has_alter_object_schema_stmt() const { - return _internal_has_alter_object_schema_stmt(); +inline bool Node::_internal_has_plassign_stmt() const { + return node_case() == kPlassignStmt; } -inline void Node::set_has_alter_object_schema_stmt() { - _impl_._oneof_case_[0] = kAlterObjectSchemaStmt; +inline void Node::set_has_plassign_stmt() { + _impl_._oneof_case_[0] = kPlassignStmt; } -inline void Node::clear_alter_object_schema_stmt() { - if (_internal_has_alter_object_schema_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_object_schema_stmt_; +inline void Node::clear_plassign_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kPlassignStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.plassign_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterObjectSchemaStmt* Node::release_alter_object_schema_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_object_schema_stmt) - if (_internal_has_alter_object_schema_stmt()) { +inline ::pg_query::PLAssignStmt* Node::release_plassign_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.plassign_stmt) + if (node_case() == kPlassignStmt) { clear_has_node(); - ::pg_query::AlterObjectSchemaStmt* temp = _impl_.node_.alter_object_schema_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.plassign_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_object_schema_stmt_ = nullptr; + _impl_.node_.plassign_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterObjectSchemaStmt& Node::_internal_alter_object_schema_stmt() const { - return _internal_has_alter_object_schema_stmt() - ? *_impl_.node_.alter_object_schema_stmt_ - : reinterpret_cast< ::pg_query::AlterObjectSchemaStmt&>(::pg_query::_AlterObjectSchemaStmt_default_instance_); +inline const ::pg_query::PLAssignStmt& Node::_internal_plassign_stmt() const { + return node_case() == kPlassignStmt ? *_impl_.node_.plassign_stmt_ : reinterpret_cast<::pg_query::PLAssignStmt&>(::pg_query::_PLAssignStmt_default_instance_); } -inline const ::pg_query::AlterObjectSchemaStmt& Node::alter_object_schema_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_object_schema_stmt) - return _internal_alter_object_schema_stmt(); +inline const ::pg_query::PLAssignStmt& Node::plassign_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.plassign_stmt) + return _internal_plassign_stmt(); } -inline ::pg_query::AlterObjectSchemaStmt* Node::unsafe_arena_release_alter_object_schema_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_object_schema_stmt) - if (_internal_has_alter_object_schema_stmt()) { +inline ::pg_query::PLAssignStmt* Node::unsafe_arena_release_plassign_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.plassign_stmt) + if (node_case() == kPlassignStmt) { clear_has_node(); - ::pg_query::AlterObjectSchemaStmt* temp = _impl_.node_.alter_object_schema_stmt_; - _impl_.node_.alter_object_schema_stmt_ = nullptr; + auto* temp = _impl_.node_.plassign_stmt_; + _impl_.node_.plassign_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_object_schema_stmt(::pg_query::AlterObjectSchemaStmt* alter_object_schema_stmt) { +inline void Node::unsafe_arena_set_allocated_plassign_stmt(::pg_query::PLAssignStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_object_schema_stmt) { - set_has_alter_object_schema_stmt(); - _impl_.node_.alter_object_schema_stmt_ = alter_object_schema_stmt; + if (value) { + set_has_plassign_stmt(); + _impl_.node_.plassign_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_object_schema_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.plassign_stmt) } -inline ::pg_query::AlterObjectSchemaStmt* Node::_internal_mutable_alter_object_schema_stmt() { - if (!_internal_has_alter_object_schema_stmt()) { +inline ::pg_query::PLAssignStmt* Node::_internal_mutable_plassign_stmt() { + if (node_case() != kPlassignStmt) { clear_node(); - set_has_alter_object_schema_stmt(); - _impl_.node_.alter_object_schema_stmt_ = CreateMaybeMessage< ::pg_query::AlterObjectSchemaStmt >(GetArenaForAllocation()); + set_has_plassign_stmt(); + _impl_.node_.plassign_stmt_ = CreateMaybeMessage<::pg_query::PLAssignStmt>(GetArena()); } - return _impl_.node_.alter_object_schema_stmt_; + return _impl_.node_.plassign_stmt_; } -inline ::pg_query::AlterObjectSchemaStmt* Node::mutable_alter_object_schema_stmt() { - ::pg_query::AlterObjectSchemaStmt* _msg = _internal_mutable_alter_object_schema_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_object_schema_stmt) +inline ::pg_query::PLAssignStmt* Node::mutable_plassign_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PLAssignStmt* _msg = _internal_mutable_plassign_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.plassign_stmt) return _msg; } -// .pg_query.AlterOwnerStmt alter_owner_stmt = 127 [json_name = "AlterOwnerStmt"]; -inline bool Node::_internal_has_alter_owner_stmt() const { - return node_case() == kAlterOwnerStmt; +// .pg_query.CreateSchemaStmt create_schema_stmt = 124 [json_name = "CreateSchemaStmt"]; +inline bool Node::has_create_schema_stmt() const { + return node_case() == kCreateSchemaStmt; } -inline bool Node::has_alter_owner_stmt() const { - return _internal_has_alter_owner_stmt(); +inline bool Node::_internal_has_create_schema_stmt() const { + return node_case() == kCreateSchemaStmt; } -inline void Node::set_has_alter_owner_stmt() { - _impl_._oneof_case_[0] = kAlterOwnerStmt; +inline void Node::set_has_create_schema_stmt() { + _impl_._oneof_case_[0] = kCreateSchemaStmt; } -inline void Node::clear_alter_owner_stmt() { - if (_internal_has_alter_owner_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_owner_stmt_; +inline void Node::clear_create_schema_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateSchemaStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_schema_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterOwnerStmt* Node::release_alter_owner_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_owner_stmt) - if (_internal_has_alter_owner_stmt()) { +inline ::pg_query::CreateSchemaStmt* Node::release_create_schema_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_schema_stmt) + if (node_case() == kCreateSchemaStmt) { clear_has_node(); - ::pg_query::AlterOwnerStmt* temp = _impl_.node_.alter_owner_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_schema_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_owner_stmt_ = nullptr; + _impl_.node_.create_schema_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterOwnerStmt& Node::_internal_alter_owner_stmt() const { - return _internal_has_alter_owner_stmt() - ? *_impl_.node_.alter_owner_stmt_ - : reinterpret_cast< ::pg_query::AlterOwnerStmt&>(::pg_query::_AlterOwnerStmt_default_instance_); +inline const ::pg_query::CreateSchemaStmt& Node::_internal_create_schema_stmt() const { + return node_case() == kCreateSchemaStmt ? *_impl_.node_.create_schema_stmt_ : reinterpret_cast<::pg_query::CreateSchemaStmt&>(::pg_query::_CreateSchemaStmt_default_instance_); } -inline const ::pg_query::AlterOwnerStmt& Node::alter_owner_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_owner_stmt) - return _internal_alter_owner_stmt(); +inline const ::pg_query::CreateSchemaStmt& Node::create_schema_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_schema_stmt) + return _internal_create_schema_stmt(); } -inline ::pg_query::AlterOwnerStmt* Node::unsafe_arena_release_alter_owner_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_owner_stmt) - if (_internal_has_alter_owner_stmt()) { +inline ::pg_query::CreateSchemaStmt* Node::unsafe_arena_release_create_schema_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_schema_stmt) + if (node_case() == kCreateSchemaStmt) { clear_has_node(); - ::pg_query::AlterOwnerStmt* temp = _impl_.node_.alter_owner_stmt_; - _impl_.node_.alter_owner_stmt_ = nullptr; + auto* temp = _impl_.node_.create_schema_stmt_; + _impl_.node_.create_schema_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_owner_stmt(::pg_query::AlterOwnerStmt* alter_owner_stmt) { +inline void Node::unsafe_arena_set_allocated_create_schema_stmt(::pg_query::CreateSchemaStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_owner_stmt) { - set_has_alter_owner_stmt(); - _impl_.node_.alter_owner_stmt_ = alter_owner_stmt; + if (value) { + set_has_create_schema_stmt(); + _impl_.node_.create_schema_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_owner_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_schema_stmt) } -inline ::pg_query::AlterOwnerStmt* Node::_internal_mutable_alter_owner_stmt() { - if (!_internal_has_alter_owner_stmt()) { +inline ::pg_query::CreateSchemaStmt* Node::_internal_mutable_create_schema_stmt() { + if (node_case() != kCreateSchemaStmt) { clear_node(); - set_has_alter_owner_stmt(); - _impl_.node_.alter_owner_stmt_ = CreateMaybeMessage< ::pg_query::AlterOwnerStmt >(GetArenaForAllocation()); + set_has_create_schema_stmt(); + _impl_.node_.create_schema_stmt_ = CreateMaybeMessage<::pg_query::CreateSchemaStmt>(GetArena()); } - return _impl_.node_.alter_owner_stmt_; + return _impl_.node_.create_schema_stmt_; } -inline ::pg_query::AlterOwnerStmt* Node::mutable_alter_owner_stmt() { - ::pg_query::AlterOwnerStmt* _msg = _internal_mutable_alter_owner_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_owner_stmt) +inline ::pg_query::CreateSchemaStmt* Node::mutable_create_schema_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateSchemaStmt* _msg = _internal_mutable_create_schema_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_schema_stmt) return _msg; } -// .pg_query.AlterOperatorStmt alter_operator_stmt = 128 [json_name = "AlterOperatorStmt"]; -inline bool Node::_internal_has_alter_operator_stmt() const { - return node_case() == kAlterOperatorStmt; +// .pg_query.AlterTableStmt alter_table_stmt = 125 [json_name = "AlterTableStmt"]; +inline bool Node::has_alter_table_stmt() const { + return node_case() == kAlterTableStmt; } -inline bool Node::has_alter_operator_stmt() const { - return _internal_has_alter_operator_stmt(); +inline bool Node::_internal_has_alter_table_stmt() const { + return node_case() == kAlterTableStmt; } -inline void Node::set_has_alter_operator_stmt() { - _impl_._oneof_case_[0] = kAlterOperatorStmt; +inline void Node::set_has_alter_table_stmt() { + _impl_._oneof_case_[0] = kAlterTableStmt; } -inline void Node::clear_alter_operator_stmt() { - if (_internal_has_alter_operator_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_operator_stmt_; +inline void Node::clear_alter_table_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterTableStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_table_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterOperatorStmt* Node::release_alter_operator_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_operator_stmt) - if (_internal_has_alter_operator_stmt()) { +inline ::pg_query::AlterTableStmt* Node::release_alter_table_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_table_stmt) + if (node_case() == kAlterTableStmt) { clear_has_node(); - ::pg_query::AlterOperatorStmt* temp = _impl_.node_.alter_operator_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_table_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_operator_stmt_ = nullptr; + _impl_.node_.alter_table_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterOperatorStmt& Node::_internal_alter_operator_stmt() const { - return _internal_has_alter_operator_stmt() - ? *_impl_.node_.alter_operator_stmt_ - : reinterpret_cast< ::pg_query::AlterOperatorStmt&>(::pg_query::_AlterOperatorStmt_default_instance_); +inline const ::pg_query::AlterTableStmt& Node::_internal_alter_table_stmt() const { + return node_case() == kAlterTableStmt ? *_impl_.node_.alter_table_stmt_ : reinterpret_cast<::pg_query::AlterTableStmt&>(::pg_query::_AlterTableStmt_default_instance_); } -inline const ::pg_query::AlterOperatorStmt& Node::alter_operator_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_operator_stmt) - return _internal_alter_operator_stmt(); +inline const ::pg_query::AlterTableStmt& Node::alter_table_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_table_stmt) + return _internal_alter_table_stmt(); } -inline ::pg_query::AlterOperatorStmt* Node::unsafe_arena_release_alter_operator_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_operator_stmt) - if (_internal_has_alter_operator_stmt()) { +inline ::pg_query::AlterTableStmt* Node::unsafe_arena_release_alter_table_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_table_stmt) + if (node_case() == kAlterTableStmt) { clear_has_node(); - ::pg_query::AlterOperatorStmt* temp = _impl_.node_.alter_operator_stmt_; - _impl_.node_.alter_operator_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_table_stmt_; + _impl_.node_.alter_table_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_operator_stmt(::pg_query::AlterOperatorStmt* alter_operator_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_table_stmt(::pg_query::AlterTableStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_operator_stmt) { - set_has_alter_operator_stmt(); - _impl_.node_.alter_operator_stmt_ = alter_operator_stmt; + if (value) { + set_has_alter_table_stmt(); + _impl_.node_.alter_table_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_operator_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_table_stmt) } -inline ::pg_query::AlterOperatorStmt* Node::_internal_mutable_alter_operator_stmt() { - if (!_internal_has_alter_operator_stmt()) { +inline ::pg_query::AlterTableStmt* Node::_internal_mutable_alter_table_stmt() { + if (node_case() != kAlterTableStmt) { clear_node(); - set_has_alter_operator_stmt(); - _impl_.node_.alter_operator_stmt_ = CreateMaybeMessage< ::pg_query::AlterOperatorStmt >(GetArenaForAllocation()); + set_has_alter_table_stmt(); + _impl_.node_.alter_table_stmt_ = CreateMaybeMessage<::pg_query::AlterTableStmt>(GetArena()); } - return _impl_.node_.alter_operator_stmt_; + return _impl_.node_.alter_table_stmt_; } -inline ::pg_query::AlterOperatorStmt* Node::mutable_alter_operator_stmt() { - ::pg_query::AlterOperatorStmt* _msg = _internal_mutable_alter_operator_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_operator_stmt) +inline ::pg_query::AlterTableStmt* Node::mutable_alter_table_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterTableStmt* _msg = _internal_mutable_alter_table_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_table_stmt) return _msg; } -// .pg_query.AlterTypeStmt alter_type_stmt = 129 [json_name = "AlterTypeStmt"]; -inline bool Node::_internal_has_alter_type_stmt() const { - return node_case() == kAlterTypeStmt; +// .pg_query.ReplicaIdentityStmt replica_identity_stmt = 126 [json_name = "ReplicaIdentityStmt"]; +inline bool Node::has_replica_identity_stmt() const { + return node_case() == kReplicaIdentityStmt; } -inline bool Node::has_alter_type_stmt() const { - return _internal_has_alter_type_stmt(); +inline bool Node::_internal_has_replica_identity_stmt() const { + return node_case() == kReplicaIdentityStmt; } -inline void Node::set_has_alter_type_stmt() { - _impl_._oneof_case_[0] = kAlterTypeStmt; +inline void Node::set_has_replica_identity_stmt() { + _impl_._oneof_case_[0] = kReplicaIdentityStmt; } -inline void Node::clear_alter_type_stmt() { - if (_internal_has_alter_type_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_type_stmt_; +inline void Node::clear_replica_identity_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kReplicaIdentityStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.replica_identity_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterTypeStmt* Node::release_alter_type_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_type_stmt) - if (_internal_has_alter_type_stmt()) { +inline ::pg_query::ReplicaIdentityStmt* Node::release_replica_identity_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.replica_identity_stmt) + if (node_case() == kReplicaIdentityStmt) { clear_has_node(); - ::pg_query::AlterTypeStmt* temp = _impl_.node_.alter_type_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.replica_identity_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_type_stmt_ = nullptr; + _impl_.node_.replica_identity_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterTypeStmt& Node::_internal_alter_type_stmt() const { - return _internal_has_alter_type_stmt() - ? *_impl_.node_.alter_type_stmt_ - : reinterpret_cast< ::pg_query::AlterTypeStmt&>(::pg_query::_AlterTypeStmt_default_instance_); +inline const ::pg_query::ReplicaIdentityStmt& Node::_internal_replica_identity_stmt() const { + return node_case() == kReplicaIdentityStmt ? *_impl_.node_.replica_identity_stmt_ : reinterpret_cast<::pg_query::ReplicaIdentityStmt&>(::pg_query::_ReplicaIdentityStmt_default_instance_); } -inline const ::pg_query::AlterTypeStmt& Node::alter_type_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_type_stmt) - return _internal_alter_type_stmt(); +inline const ::pg_query::ReplicaIdentityStmt& Node::replica_identity_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.replica_identity_stmt) + return _internal_replica_identity_stmt(); } -inline ::pg_query::AlterTypeStmt* Node::unsafe_arena_release_alter_type_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_type_stmt) - if (_internal_has_alter_type_stmt()) { +inline ::pg_query::ReplicaIdentityStmt* Node::unsafe_arena_release_replica_identity_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.replica_identity_stmt) + if (node_case() == kReplicaIdentityStmt) { clear_has_node(); - ::pg_query::AlterTypeStmt* temp = _impl_.node_.alter_type_stmt_; - _impl_.node_.alter_type_stmt_ = nullptr; + auto* temp = _impl_.node_.replica_identity_stmt_; + _impl_.node_.replica_identity_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_type_stmt(::pg_query::AlterTypeStmt* alter_type_stmt) { +inline void Node::unsafe_arena_set_allocated_replica_identity_stmt(::pg_query::ReplicaIdentityStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_type_stmt) { - set_has_alter_type_stmt(); - _impl_.node_.alter_type_stmt_ = alter_type_stmt; + if (value) { + set_has_replica_identity_stmt(); + _impl_.node_.replica_identity_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_type_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.replica_identity_stmt) } -inline ::pg_query::AlterTypeStmt* Node::_internal_mutable_alter_type_stmt() { - if (!_internal_has_alter_type_stmt()) { +inline ::pg_query::ReplicaIdentityStmt* Node::_internal_mutable_replica_identity_stmt() { + if (node_case() != kReplicaIdentityStmt) { clear_node(); - set_has_alter_type_stmt(); - _impl_.node_.alter_type_stmt_ = CreateMaybeMessage< ::pg_query::AlterTypeStmt >(GetArenaForAllocation()); + set_has_replica_identity_stmt(); + _impl_.node_.replica_identity_stmt_ = CreateMaybeMessage<::pg_query::ReplicaIdentityStmt>(GetArena()); } - return _impl_.node_.alter_type_stmt_; + return _impl_.node_.replica_identity_stmt_; } -inline ::pg_query::AlterTypeStmt* Node::mutable_alter_type_stmt() { - ::pg_query::AlterTypeStmt* _msg = _internal_mutable_alter_type_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_type_stmt) +inline ::pg_query::ReplicaIdentityStmt* Node::mutable_replica_identity_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ReplicaIdentityStmt* _msg = _internal_mutable_replica_identity_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.replica_identity_stmt) return _msg; } -// .pg_query.DropOwnedStmt drop_owned_stmt = 130 [json_name = "DropOwnedStmt"]; -inline bool Node::_internal_has_drop_owned_stmt() const { - return node_case() == kDropOwnedStmt; +// .pg_query.AlterTableCmd alter_table_cmd = 127 [json_name = "AlterTableCmd"]; +inline bool Node::has_alter_table_cmd() const { + return node_case() == kAlterTableCmd; } -inline bool Node::has_drop_owned_stmt() const { - return _internal_has_drop_owned_stmt(); +inline bool Node::_internal_has_alter_table_cmd() const { + return node_case() == kAlterTableCmd; } -inline void Node::set_has_drop_owned_stmt() { - _impl_._oneof_case_[0] = kDropOwnedStmt; +inline void Node::set_has_alter_table_cmd() { + _impl_._oneof_case_[0] = kAlterTableCmd; } -inline void Node::clear_drop_owned_stmt() { - if (_internal_has_drop_owned_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.drop_owned_stmt_; +inline void Node::clear_alter_table_cmd() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterTableCmd) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_table_cmd_; } clear_has_node(); } } -inline ::pg_query::DropOwnedStmt* Node::release_drop_owned_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.drop_owned_stmt) - if (_internal_has_drop_owned_stmt()) { +inline ::pg_query::AlterTableCmd* Node::release_alter_table_cmd() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_table_cmd) + if (node_case() == kAlterTableCmd) { clear_has_node(); - ::pg_query::DropOwnedStmt* temp = _impl_.node_.drop_owned_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_table_cmd_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.drop_owned_stmt_ = nullptr; + _impl_.node_.alter_table_cmd_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DropOwnedStmt& Node::_internal_drop_owned_stmt() const { - return _internal_has_drop_owned_stmt() - ? *_impl_.node_.drop_owned_stmt_ - : reinterpret_cast< ::pg_query::DropOwnedStmt&>(::pg_query::_DropOwnedStmt_default_instance_); +inline const ::pg_query::AlterTableCmd& Node::_internal_alter_table_cmd() const { + return node_case() == kAlterTableCmd ? *_impl_.node_.alter_table_cmd_ : reinterpret_cast<::pg_query::AlterTableCmd&>(::pg_query::_AlterTableCmd_default_instance_); } -inline const ::pg_query::DropOwnedStmt& Node::drop_owned_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.drop_owned_stmt) - return _internal_drop_owned_stmt(); +inline const ::pg_query::AlterTableCmd& Node::alter_table_cmd() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_table_cmd) + return _internal_alter_table_cmd(); } -inline ::pg_query::DropOwnedStmt* Node::unsafe_arena_release_drop_owned_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_owned_stmt) - if (_internal_has_drop_owned_stmt()) { +inline ::pg_query::AlterTableCmd* Node::unsafe_arena_release_alter_table_cmd() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_table_cmd) + if (node_case() == kAlterTableCmd) { clear_has_node(); - ::pg_query::DropOwnedStmt* temp = _impl_.node_.drop_owned_stmt_; - _impl_.node_.drop_owned_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_table_cmd_; + _impl_.node_.alter_table_cmd_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_drop_owned_stmt(::pg_query::DropOwnedStmt* drop_owned_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_table_cmd(::pg_query::AlterTableCmd* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (drop_owned_stmt) { - set_has_drop_owned_stmt(); - _impl_.node_.drop_owned_stmt_ = drop_owned_stmt; + if (value) { + set_has_alter_table_cmd(); + _impl_.node_.alter_table_cmd_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_owned_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_table_cmd) } -inline ::pg_query::DropOwnedStmt* Node::_internal_mutable_drop_owned_stmt() { - if (!_internal_has_drop_owned_stmt()) { +inline ::pg_query::AlterTableCmd* Node::_internal_mutable_alter_table_cmd() { + if (node_case() != kAlterTableCmd) { clear_node(); - set_has_drop_owned_stmt(); - _impl_.node_.drop_owned_stmt_ = CreateMaybeMessage< ::pg_query::DropOwnedStmt >(GetArenaForAllocation()); + set_has_alter_table_cmd(); + _impl_.node_.alter_table_cmd_ = CreateMaybeMessage<::pg_query::AlterTableCmd>(GetArena()); } - return _impl_.node_.drop_owned_stmt_; + return _impl_.node_.alter_table_cmd_; } -inline ::pg_query::DropOwnedStmt* Node::mutable_drop_owned_stmt() { - ::pg_query::DropOwnedStmt* _msg = _internal_mutable_drop_owned_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_owned_stmt) +inline ::pg_query::AlterTableCmd* Node::mutable_alter_table_cmd() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterTableCmd* _msg = _internal_mutable_alter_table_cmd(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_table_cmd) return _msg; } -// .pg_query.ReassignOwnedStmt reassign_owned_stmt = 131 [json_name = "ReassignOwnedStmt"]; -inline bool Node::_internal_has_reassign_owned_stmt() const { - return node_case() == kReassignOwnedStmt; +// .pg_query.AlterCollationStmt alter_collation_stmt = 128 [json_name = "AlterCollationStmt"]; +inline bool Node::has_alter_collation_stmt() const { + return node_case() == kAlterCollationStmt; } -inline bool Node::has_reassign_owned_stmt() const { - return _internal_has_reassign_owned_stmt(); +inline bool Node::_internal_has_alter_collation_stmt() const { + return node_case() == kAlterCollationStmt; } -inline void Node::set_has_reassign_owned_stmt() { - _impl_._oneof_case_[0] = kReassignOwnedStmt; +inline void Node::set_has_alter_collation_stmt() { + _impl_._oneof_case_[0] = kAlterCollationStmt; } -inline void Node::clear_reassign_owned_stmt() { - if (_internal_has_reassign_owned_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.reassign_owned_stmt_; +inline void Node::clear_alter_collation_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterCollationStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_collation_stmt_; } clear_has_node(); } } -inline ::pg_query::ReassignOwnedStmt* Node::release_reassign_owned_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.reassign_owned_stmt) - if (_internal_has_reassign_owned_stmt()) { +inline ::pg_query::AlterCollationStmt* Node::release_alter_collation_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_collation_stmt) + if (node_case() == kAlterCollationStmt) { clear_has_node(); - ::pg_query::ReassignOwnedStmt* temp = _impl_.node_.reassign_owned_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_collation_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.reassign_owned_stmt_ = nullptr; + _impl_.node_.alter_collation_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ReassignOwnedStmt& Node::_internal_reassign_owned_stmt() const { - return _internal_has_reassign_owned_stmt() - ? *_impl_.node_.reassign_owned_stmt_ - : reinterpret_cast< ::pg_query::ReassignOwnedStmt&>(::pg_query::_ReassignOwnedStmt_default_instance_); +inline const ::pg_query::AlterCollationStmt& Node::_internal_alter_collation_stmt() const { + return node_case() == kAlterCollationStmt ? *_impl_.node_.alter_collation_stmt_ : reinterpret_cast<::pg_query::AlterCollationStmt&>(::pg_query::_AlterCollationStmt_default_instance_); } -inline const ::pg_query::ReassignOwnedStmt& Node::reassign_owned_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.reassign_owned_stmt) - return _internal_reassign_owned_stmt(); +inline const ::pg_query::AlterCollationStmt& Node::alter_collation_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_collation_stmt) + return _internal_alter_collation_stmt(); } -inline ::pg_query::ReassignOwnedStmt* Node::unsafe_arena_release_reassign_owned_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.reassign_owned_stmt) - if (_internal_has_reassign_owned_stmt()) { +inline ::pg_query::AlterCollationStmt* Node::unsafe_arena_release_alter_collation_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_collation_stmt) + if (node_case() == kAlterCollationStmt) { clear_has_node(); - ::pg_query::ReassignOwnedStmt* temp = _impl_.node_.reassign_owned_stmt_; - _impl_.node_.reassign_owned_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_collation_stmt_; + _impl_.node_.alter_collation_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_reassign_owned_stmt(::pg_query::ReassignOwnedStmt* reassign_owned_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_collation_stmt(::pg_query::AlterCollationStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (reassign_owned_stmt) { - set_has_reassign_owned_stmt(); - _impl_.node_.reassign_owned_stmt_ = reassign_owned_stmt; + if (value) { + set_has_alter_collation_stmt(); + _impl_.node_.alter_collation_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.reassign_owned_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_collation_stmt) } -inline ::pg_query::ReassignOwnedStmt* Node::_internal_mutable_reassign_owned_stmt() { - if (!_internal_has_reassign_owned_stmt()) { +inline ::pg_query::AlterCollationStmt* Node::_internal_mutable_alter_collation_stmt() { + if (node_case() != kAlterCollationStmt) { clear_node(); - set_has_reassign_owned_stmt(); - _impl_.node_.reassign_owned_stmt_ = CreateMaybeMessage< ::pg_query::ReassignOwnedStmt >(GetArenaForAllocation()); + set_has_alter_collation_stmt(); + _impl_.node_.alter_collation_stmt_ = CreateMaybeMessage<::pg_query::AlterCollationStmt>(GetArena()); } - return _impl_.node_.reassign_owned_stmt_; + return _impl_.node_.alter_collation_stmt_; } -inline ::pg_query::ReassignOwnedStmt* Node::mutable_reassign_owned_stmt() { - ::pg_query::ReassignOwnedStmt* _msg = _internal_mutable_reassign_owned_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.reassign_owned_stmt) +inline ::pg_query::AlterCollationStmt* Node::mutable_alter_collation_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterCollationStmt* _msg = _internal_mutable_alter_collation_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_collation_stmt) return _msg; } -// .pg_query.CompositeTypeStmt composite_type_stmt = 132 [json_name = "CompositeTypeStmt"]; -inline bool Node::_internal_has_composite_type_stmt() const { - return node_case() == kCompositeTypeStmt; +// .pg_query.AlterDomainStmt alter_domain_stmt = 129 [json_name = "AlterDomainStmt"]; +inline bool Node::has_alter_domain_stmt() const { + return node_case() == kAlterDomainStmt; } -inline bool Node::has_composite_type_stmt() const { - return _internal_has_composite_type_stmt(); +inline bool Node::_internal_has_alter_domain_stmt() const { + return node_case() == kAlterDomainStmt; } -inline void Node::set_has_composite_type_stmt() { - _impl_._oneof_case_[0] = kCompositeTypeStmt; +inline void Node::set_has_alter_domain_stmt() { + _impl_._oneof_case_[0] = kAlterDomainStmt; } -inline void Node::clear_composite_type_stmt() { - if (_internal_has_composite_type_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.composite_type_stmt_; +inline void Node::clear_alter_domain_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterDomainStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_domain_stmt_; } clear_has_node(); } } -inline ::pg_query::CompositeTypeStmt* Node::release_composite_type_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.composite_type_stmt) - if (_internal_has_composite_type_stmt()) { +inline ::pg_query::AlterDomainStmt* Node::release_alter_domain_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_domain_stmt) + if (node_case() == kAlterDomainStmt) { clear_has_node(); - ::pg_query::CompositeTypeStmt* temp = _impl_.node_.composite_type_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_domain_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.composite_type_stmt_ = nullptr; + _impl_.node_.alter_domain_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CompositeTypeStmt& Node::_internal_composite_type_stmt() const { - return _internal_has_composite_type_stmt() - ? *_impl_.node_.composite_type_stmt_ - : reinterpret_cast< ::pg_query::CompositeTypeStmt&>(::pg_query::_CompositeTypeStmt_default_instance_); +inline const ::pg_query::AlterDomainStmt& Node::_internal_alter_domain_stmt() const { + return node_case() == kAlterDomainStmt ? *_impl_.node_.alter_domain_stmt_ : reinterpret_cast<::pg_query::AlterDomainStmt&>(::pg_query::_AlterDomainStmt_default_instance_); } -inline const ::pg_query::CompositeTypeStmt& Node::composite_type_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.composite_type_stmt) - return _internal_composite_type_stmt(); +inline const ::pg_query::AlterDomainStmt& Node::alter_domain_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_domain_stmt) + return _internal_alter_domain_stmt(); } -inline ::pg_query::CompositeTypeStmt* Node::unsafe_arena_release_composite_type_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.composite_type_stmt) - if (_internal_has_composite_type_stmt()) { +inline ::pg_query::AlterDomainStmt* Node::unsafe_arena_release_alter_domain_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_domain_stmt) + if (node_case() == kAlterDomainStmt) { clear_has_node(); - ::pg_query::CompositeTypeStmt* temp = _impl_.node_.composite_type_stmt_; - _impl_.node_.composite_type_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_domain_stmt_; + _impl_.node_.alter_domain_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_composite_type_stmt(::pg_query::CompositeTypeStmt* composite_type_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_domain_stmt(::pg_query::AlterDomainStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (composite_type_stmt) { - set_has_composite_type_stmt(); - _impl_.node_.composite_type_stmt_ = composite_type_stmt; + if (value) { + set_has_alter_domain_stmt(); + _impl_.node_.alter_domain_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.composite_type_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_domain_stmt) } -inline ::pg_query::CompositeTypeStmt* Node::_internal_mutable_composite_type_stmt() { - if (!_internal_has_composite_type_stmt()) { +inline ::pg_query::AlterDomainStmt* Node::_internal_mutable_alter_domain_stmt() { + if (node_case() != kAlterDomainStmt) { clear_node(); - set_has_composite_type_stmt(); - _impl_.node_.composite_type_stmt_ = CreateMaybeMessage< ::pg_query::CompositeTypeStmt >(GetArenaForAllocation()); + set_has_alter_domain_stmt(); + _impl_.node_.alter_domain_stmt_ = CreateMaybeMessage<::pg_query::AlterDomainStmt>(GetArena()); } - return _impl_.node_.composite_type_stmt_; + return _impl_.node_.alter_domain_stmt_; } -inline ::pg_query::CompositeTypeStmt* Node::mutable_composite_type_stmt() { - ::pg_query::CompositeTypeStmt* _msg = _internal_mutable_composite_type_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.composite_type_stmt) +inline ::pg_query::AlterDomainStmt* Node::mutable_alter_domain_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterDomainStmt* _msg = _internal_mutable_alter_domain_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_domain_stmt) return _msg; } -// .pg_query.CreateEnumStmt create_enum_stmt = 133 [json_name = "CreateEnumStmt"]; -inline bool Node::_internal_has_create_enum_stmt() const { - return node_case() == kCreateEnumStmt; +// .pg_query.GrantStmt grant_stmt = 130 [json_name = "GrantStmt"]; +inline bool Node::has_grant_stmt() const { + return node_case() == kGrantStmt; } -inline bool Node::has_create_enum_stmt() const { - return _internal_has_create_enum_stmt(); +inline bool Node::_internal_has_grant_stmt() const { + return node_case() == kGrantStmt; } -inline void Node::set_has_create_enum_stmt() { - _impl_._oneof_case_[0] = kCreateEnumStmt; +inline void Node::set_has_grant_stmt() { + _impl_._oneof_case_[0] = kGrantStmt; } -inline void Node::clear_create_enum_stmt() { - if (_internal_has_create_enum_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_enum_stmt_; +inline void Node::clear_grant_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kGrantStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.grant_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateEnumStmt* Node::release_create_enum_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_enum_stmt) - if (_internal_has_create_enum_stmt()) { +inline ::pg_query::GrantStmt* Node::release_grant_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.grant_stmt) + if (node_case() == kGrantStmt) { clear_has_node(); - ::pg_query::CreateEnumStmt* temp = _impl_.node_.create_enum_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.grant_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_enum_stmt_ = nullptr; + _impl_.node_.grant_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateEnumStmt& Node::_internal_create_enum_stmt() const { - return _internal_has_create_enum_stmt() - ? *_impl_.node_.create_enum_stmt_ - : reinterpret_cast< ::pg_query::CreateEnumStmt&>(::pg_query::_CreateEnumStmt_default_instance_); +inline const ::pg_query::GrantStmt& Node::_internal_grant_stmt() const { + return node_case() == kGrantStmt ? *_impl_.node_.grant_stmt_ : reinterpret_cast<::pg_query::GrantStmt&>(::pg_query::_GrantStmt_default_instance_); } -inline const ::pg_query::CreateEnumStmt& Node::create_enum_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_enum_stmt) - return _internal_create_enum_stmt(); +inline const ::pg_query::GrantStmt& Node::grant_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.grant_stmt) + return _internal_grant_stmt(); } -inline ::pg_query::CreateEnumStmt* Node::unsafe_arena_release_create_enum_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_enum_stmt) - if (_internal_has_create_enum_stmt()) { +inline ::pg_query::GrantStmt* Node::unsafe_arena_release_grant_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.grant_stmt) + if (node_case() == kGrantStmt) { clear_has_node(); - ::pg_query::CreateEnumStmt* temp = _impl_.node_.create_enum_stmt_; - _impl_.node_.create_enum_stmt_ = nullptr; + auto* temp = _impl_.node_.grant_stmt_; + _impl_.node_.grant_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_enum_stmt(::pg_query::CreateEnumStmt* create_enum_stmt) { +inline void Node::unsafe_arena_set_allocated_grant_stmt(::pg_query::GrantStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_enum_stmt) { - set_has_create_enum_stmt(); - _impl_.node_.create_enum_stmt_ = create_enum_stmt; + if (value) { + set_has_grant_stmt(); + _impl_.node_.grant_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_enum_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.grant_stmt) } -inline ::pg_query::CreateEnumStmt* Node::_internal_mutable_create_enum_stmt() { - if (!_internal_has_create_enum_stmt()) { +inline ::pg_query::GrantStmt* Node::_internal_mutable_grant_stmt() { + if (node_case() != kGrantStmt) { clear_node(); - set_has_create_enum_stmt(); - _impl_.node_.create_enum_stmt_ = CreateMaybeMessage< ::pg_query::CreateEnumStmt >(GetArenaForAllocation()); + set_has_grant_stmt(); + _impl_.node_.grant_stmt_ = CreateMaybeMessage<::pg_query::GrantStmt>(GetArena()); } - return _impl_.node_.create_enum_stmt_; + return _impl_.node_.grant_stmt_; } -inline ::pg_query::CreateEnumStmt* Node::mutable_create_enum_stmt() { - ::pg_query::CreateEnumStmt* _msg = _internal_mutable_create_enum_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_enum_stmt) +inline ::pg_query::GrantStmt* Node::mutable_grant_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::GrantStmt* _msg = _internal_mutable_grant_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.grant_stmt) return _msg; } -// .pg_query.CreateRangeStmt create_range_stmt = 134 [json_name = "CreateRangeStmt"]; -inline bool Node::_internal_has_create_range_stmt() const { - return node_case() == kCreateRangeStmt; +// .pg_query.ObjectWithArgs object_with_args = 131 [json_name = "ObjectWithArgs"]; +inline bool Node::has_object_with_args() const { + return node_case() == kObjectWithArgs; } -inline bool Node::has_create_range_stmt() const { - return _internal_has_create_range_stmt(); +inline bool Node::_internal_has_object_with_args() const { + return node_case() == kObjectWithArgs; } -inline void Node::set_has_create_range_stmt() { - _impl_._oneof_case_[0] = kCreateRangeStmt; +inline void Node::set_has_object_with_args() { + _impl_._oneof_case_[0] = kObjectWithArgs; } -inline void Node::clear_create_range_stmt() { - if (_internal_has_create_range_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_range_stmt_; +inline void Node::clear_object_with_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kObjectWithArgs) { + if (GetArena() == nullptr) { + delete _impl_.node_.object_with_args_; } clear_has_node(); } } -inline ::pg_query::CreateRangeStmt* Node::release_create_range_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_range_stmt) - if (_internal_has_create_range_stmt()) { +inline ::pg_query::ObjectWithArgs* Node::release_object_with_args() { + // @@protoc_insertion_point(field_release:pg_query.Node.object_with_args) + if (node_case() == kObjectWithArgs) { clear_has_node(); - ::pg_query::CreateRangeStmt* temp = _impl_.node_.create_range_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.object_with_args_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_range_stmt_ = nullptr; + _impl_.node_.object_with_args_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateRangeStmt& Node::_internal_create_range_stmt() const { - return _internal_has_create_range_stmt() - ? *_impl_.node_.create_range_stmt_ - : reinterpret_cast< ::pg_query::CreateRangeStmt&>(::pg_query::_CreateRangeStmt_default_instance_); +inline const ::pg_query::ObjectWithArgs& Node::_internal_object_with_args() const { + return node_case() == kObjectWithArgs ? *_impl_.node_.object_with_args_ : reinterpret_cast<::pg_query::ObjectWithArgs&>(::pg_query::_ObjectWithArgs_default_instance_); } -inline const ::pg_query::CreateRangeStmt& Node::create_range_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_range_stmt) - return _internal_create_range_stmt(); +inline const ::pg_query::ObjectWithArgs& Node::object_with_args() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.object_with_args) + return _internal_object_with_args(); } -inline ::pg_query::CreateRangeStmt* Node::unsafe_arena_release_create_range_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_range_stmt) - if (_internal_has_create_range_stmt()) { +inline ::pg_query::ObjectWithArgs* Node::unsafe_arena_release_object_with_args() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.object_with_args) + if (node_case() == kObjectWithArgs) { clear_has_node(); - ::pg_query::CreateRangeStmt* temp = _impl_.node_.create_range_stmt_; - _impl_.node_.create_range_stmt_ = nullptr; + auto* temp = _impl_.node_.object_with_args_; + _impl_.node_.object_with_args_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_range_stmt(::pg_query::CreateRangeStmt* create_range_stmt) { +inline void Node::unsafe_arena_set_allocated_object_with_args(::pg_query::ObjectWithArgs* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_range_stmt) { - set_has_create_range_stmt(); - _impl_.node_.create_range_stmt_ = create_range_stmt; + if (value) { + set_has_object_with_args(); + _impl_.node_.object_with_args_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_range_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.object_with_args) } -inline ::pg_query::CreateRangeStmt* Node::_internal_mutable_create_range_stmt() { - if (!_internal_has_create_range_stmt()) { +inline ::pg_query::ObjectWithArgs* Node::_internal_mutable_object_with_args() { + if (node_case() != kObjectWithArgs) { clear_node(); - set_has_create_range_stmt(); - _impl_.node_.create_range_stmt_ = CreateMaybeMessage< ::pg_query::CreateRangeStmt >(GetArenaForAllocation()); + set_has_object_with_args(); + _impl_.node_.object_with_args_ = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArena()); } - return _impl_.node_.create_range_stmt_; + return _impl_.node_.object_with_args_; } -inline ::pg_query::CreateRangeStmt* Node::mutable_create_range_stmt() { - ::pg_query::CreateRangeStmt* _msg = _internal_mutable_create_range_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_range_stmt) +inline ::pg_query::ObjectWithArgs* Node::mutable_object_with_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ObjectWithArgs* _msg = _internal_mutable_object_with_args(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.object_with_args) return _msg; } -// .pg_query.AlterEnumStmt alter_enum_stmt = 135 [json_name = "AlterEnumStmt"]; -inline bool Node::_internal_has_alter_enum_stmt() const { - return node_case() == kAlterEnumStmt; +// .pg_query.AccessPriv access_priv = 132 [json_name = "AccessPriv"]; +inline bool Node::has_access_priv() const { + return node_case() == kAccessPriv; } -inline bool Node::has_alter_enum_stmt() const { - return _internal_has_alter_enum_stmt(); +inline bool Node::_internal_has_access_priv() const { + return node_case() == kAccessPriv; } -inline void Node::set_has_alter_enum_stmt() { - _impl_._oneof_case_[0] = kAlterEnumStmt; +inline void Node::set_has_access_priv() { + _impl_._oneof_case_[0] = kAccessPriv; } -inline void Node::clear_alter_enum_stmt() { - if (_internal_has_alter_enum_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_enum_stmt_; +inline void Node::clear_access_priv() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAccessPriv) { + if (GetArena() == nullptr) { + delete _impl_.node_.access_priv_; } clear_has_node(); } } -inline ::pg_query::AlterEnumStmt* Node::release_alter_enum_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_enum_stmt) - if (_internal_has_alter_enum_stmt()) { +inline ::pg_query::AccessPriv* Node::release_access_priv() { + // @@protoc_insertion_point(field_release:pg_query.Node.access_priv) + if (node_case() == kAccessPriv) { clear_has_node(); - ::pg_query::AlterEnumStmt* temp = _impl_.node_.alter_enum_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.access_priv_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_enum_stmt_ = nullptr; + _impl_.node_.access_priv_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterEnumStmt& Node::_internal_alter_enum_stmt() const { - return _internal_has_alter_enum_stmt() - ? *_impl_.node_.alter_enum_stmt_ - : reinterpret_cast< ::pg_query::AlterEnumStmt&>(::pg_query::_AlterEnumStmt_default_instance_); +inline const ::pg_query::AccessPriv& Node::_internal_access_priv() const { + return node_case() == kAccessPriv ? *_impl_.node_.access_priv_ : reinterpret_cast<::pg_query::AccessPriv&>(::pg_query::_AccessPriv_default_instance_); } -inline const ::pg_query::AlterEnumStmt& Node::alter_enum_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_enum_stmt) - return _internal_alter_enum_stmt(); +inline const ::pg_query::AccessPriv& Node::access_priv() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.access_priv) + return _internal_access_priv(); } -inline ::pg_query::AlterEnumStmt* Node::unsafe_arena_release_alter_enum_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_enum_stmt) - if (_internal_has_alter_enum_stmt()) { +inline ::pg_query::AccessPriv* Node::unsafe_arena_release_access_priv() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.access_priv) + if (node_case() == kAccessPriv) { clear_has_node(); - ::pg_query::AlterEnumStmt* temp = _impl_.node_.alter_enum_stmt_; - _impl_.node_.alter_enum_stmt_ = nullptr; + auto* temp = _impl_.node_.access_priv_; + _impl_.node_.access_priv_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_enum_stmt(::pg_query::AlterEnumStmt* alter_enum_stmt) { +inline void Node::unsafe_arena_set_allocated_access_priv(::pg_query::AccessPriv* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_enum_stmt) { - set_has_alter_enum_stmt(); - _impl_.node_.alter_enum_stmt_ = alter_enum_stmt; + if (value) { + set_has_access_priv(); + _impl_.node_.access_priv_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_enum_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.access_priv) } -inline ::pg_query::AlterEnumStmt* Node::_internal_mutable_alter_enum_stmt() { - if (!_internal_has_alter_enum_stmt()) { +inline ::pg_query::AccessPriv* Node::_internal_mutable_access_priv() { + if (node_case() != kAccessPriv) { clear_node(); - set_has_alter_enum_stmt(); - _impl_.node_.alter_enum_stmt_ = CreateMaybeMessage< ::pg_query::AlterEnumStmt >(GetArenaForAllocation()); + set_has_access_priv(); + _impl_.node_.access_priv_ = CreateMaybeMessage<::pg_query::AccessPriv>(GetArena()); } - return _impl_.node_.alter_enum_stmt_; + return _impl_.node_.access_priv_; } -inline ::pg_query::AlterEnumStmt* Node::mutable_alter_enum_stmt() { - ::pg_query::AlterEnumStmt* _msg = _internal_mutable_alter_enum_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_enum_stmt) +inline ::pg_query::AccessPriv* Node::mutable_access_priv() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AccessPriv* _msg = _internal_mutable_access_priv(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.access_priv) return _msg; } -// .pg_query.AlterTSDictionaryStmt alter_tsdictionary_stmt = 136 [json_name = "AlterTSDictionaryStmt"]; -inline bool Node::_internal_has_alter_tsdictionary_stmt() const { - return node_case() == kAlterTsdictionaryStmt; +// .pg_query.GrantRoleStmt grant_role_stmt = 133 [json_name = "GrantRoleStmt"]; +inline bool Node::has_grant_role_stmt() const { + return node_case() == kGrantRoleStmt; } -inline bool Node::has_alter_tsdictionary_stmt() const { - return _internal_has_alter_tsdictionary_stmt(); +inline bool Node::_internal_has_grant_role_stmt() const { + return node_case() == kGrantRoleStmt; } -inline void Node::set_has_alter_tsdictionary_stmt() { - _impl_._oneof_case_[0] = kAlterTsdictionaryStmt; +inline void Node::set_has_grant_role_stmt() { + _impl_._oneof_case_[0] = kGrantRoleStmt; } -inline void Node::clear_alter_tsdictionary_stmt() { - if (_internal_has_alter_tsdictionary_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_tsdictionary_stmt_; +inline void Node::clear_grant_role_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kGrantRoleStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.grant_role_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterTSDictionaryStmt* Node::release_alter_tsdictionary_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_tsdictionary_stmt) - if (_internal_has_alter_tsdictionary_stmt()) { +inline ::pg_query::GrantRoleStmt* Node::release_grant_role_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.grant_role_stmt) + if (node_case() == kGrantRoleStmt) { clear_has_node(); - ::pg_query::AlterTSDictionaryStmt* temp = _impl_.node_.alter_tsdictionary_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.grant_role_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_tsdictionary_stmt_ = nullptr; + _impl_.node_.grant_role_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterTSDictionaryStmt& Node::_internal_alter_tsdictionary_stmt() const { - return _internal_has_alter_tsdictionary_stmt() - ? *_impl_.node_.alter_tsdictionary_stmt_ - : reinterpret_cast< ::pg_query::AlterTSDictionaryStmt&>(::pg_query::_AlterTSDictionaryStmt_default_instance_); +inline const ::pg_query::GrantRoleStmt& Node::_internal_grant_role_stmt() const { + return node_case() == kGrantRoleStmt ? *_impl_.node_.grant_role_stmt_ : reinterpret_cast<::pg_query::GrantRoleStmt&>(::pg_query::_GrantRoleStmt_default_instance_); } -inline const ::pg_query::AlterTSDictionaryStmt& Node::alter_tsdictionary_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_tsdictionary_stmt) - return _internal_alter_tsdictionary_stmt(); +inline const ::pg_query::GrantRoleStmt& Node::grant_role_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.grant_role_stmt) + return _internal_grant_role_stmt(); } -inline ::pg_query::AlterTSDictionaryStmt* Node::unsafe_arena_release_alter_tsdictionary_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_tsdictionary_stmt) - if (_internal_has_alter_tsdictionary_stmt()) { +inline ::pg_query::GrantRoleStmt* Node::unsafe_arena_release_grant_role_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.grant_role_stmt) + if (node_case() == kGrantRoleStmt) { clear_has_node(); - ::pg_query::AlterTSDictionaryStmt* temp = _impl_.node_.alter_tsdictionary_stmt_; - _impl_.node_.alter_tsdictionary_stmt_ = nullptr; + auto* temp = _impl_.node_.grant_role_stmt_; + _impl_.node_.grant_role_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_tsdictionary_stmt(::pg_query::AlterTSDictionaryStmt* alter_tsdictionary_stmt) { +inline void Node::unsafe_arena_set_allocated_grant_role_stmt(::pg_query::GrantRoleStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_tsdictionary_stmt) { - set_has_alter_tsdictionary_stmt(); - _impl_.node_.alter_tsdictionary_stmt_ = alter_tsdictionary_stmt; + if (value) { + set_has_grant_role_stmt(); + _impl_.node_.grant_role_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_tsdictionary_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.grant_role_stmt) } -inline ::pg_query::AlterTSDictionaryStmt* Node::_internal_mutable_alter_tsdictionary_stmt() { - if (!_internal_has_alter_tsdictionary_stmt()) { +inline ::pg_query::GrantRoleStmt* Node::_internal_mutable_grant_role_stmt() { + if (node_case() != kGrantRoleStmt) { clear_node(); - set_has_alter_tsdictionary_stmt(); - _impl_.node_.alter_tsdictionary_stmt_ = CreateMaybeMessage< ::pg_query::AlterTSDictionaryStmt >(GetArenaForAllocation()); + set_has_grant_role_stmt(); + _impl_.node_.grant_role_stmt_ = CreateMaybeMessage<::pg_query::GrantRoleStmt>(GetArena()); } - return _impl_.node_.alter_tsdictionary_stmt_; + return _impl_.node_.grant_role_stmt_; } -inline ::pg_query::AlterTSDictionaryStmt* Node::mutable_alter_tsdictionary_stmt() { - ::pg_query::AlterTSDictionaryStmt* _msg = _internal_mutable_alter_tsdictionary_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_tsdictionary_stmt) +inline ::pg_query::GrantRoleStmt* Node::mutable_grant_role_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::GrantRoleStmt* _msg = _internal_mutable_grant_role_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.grant_role_stmt) return _msg; } -// .pg_query.AlterTSConfigurationStmt alter_tsconfiguration_stmt = 137 [json_name = "AlterTSConfigurationStmt"]; -inline bool Node::_internal_has_alter_tsconfiguration_stmt() const { - return node_case() == kAlterTsconfigurationStmt; +// .pg_query.AlterDefaultPrivilegesStmt alter_default_privileges_stmt = 134 [json_name = "AlterDefaultPrivilegesStmt"]; +inline bool Node::has_alter_default_privileges_stmt() const { + return node_case() == kAlterDefaultPrivilegesStmt; } -inline bool Node::has_alter_tsconfiguration_stmt() const { - return _internal_has_alter_tsconfiguration_stmt(); +inline bool Node::_internal_has_alter_default_privileges_stmt() const { + return node_case() == kAlterDefaultPrivilegesStmt; } -inline void Node::set_has_alter_tsconfiguration_stmt() { - _impl_._oneof_case_[0] = kAlterTsconfigurationStmt; +inline void Node::set_has_alter_default_privileges_stmt() { + _impl_._oneof_case_[0] = kAlterDefaultPrivilegesStmt; } -inline void Node::clear_alter_tsconfiguration_stmt() { - if (_internal_has_alter_tsconfiguration_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_tsconfiguration_stmt_; +inline void Node::clear_alter_default_privileges_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterDefaultPrivilegesStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_default_privileges_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterTSConfigurationStmt* Node::release_alter_tsconfiguration_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_tsconfiguration_stmt) - if (_internal_has_alter_tsconfiguration_stmt()) { +inline ::pg_query::AlterDefaultPrivilegesStmt* Node::release_alter_default_privileges_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_default_privileges_stmt) + if (node_case() == kAlterDefaultPrivilegesStmt) { clear_has_node(); - ::pg_query::AlterTSConfigurationStmt* temp = _impl_.node_.alter_tsconfiguration_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_default_privileges_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_tsconfiguration_stmt_ = nullptr; + _impl_.node_.alter_default_privileges_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterTSConfigurationStmt& Node::_internal_alter_tsconfiguration_stmt() const { - return _internal_has_alter_tsconfiguration_stmt() - ? *_impl_.node_.alter_tsconfiguration_stmt_ - : reinterpret_cast< ::pg_query::AlterTSConfigurationStmt&>(::pg_query::_AlterTSConfigurationStmt_default_instance_); +inline const ::pg_query::AlterDefaultPrivilegesStmt& Node::_internal_alter_default_privileges_stmt() const { + return node_case() == kAlterDefaultPrivilegesStmt ? *_impl_.node_.alter_default_privileges_stmt_ : reinterpret_cast<::pg_query::AlterDefaultPrivilegesStmt&>(::pg_query::_AlterDefaultPrivilegesStmt_default_instance_); } -inline const ::pg_query::AlterTSConfigurationStmt& Node::alter_tsconfiguration_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_tsconfiguration_stmt) - return _internal_alter_tsconfiguration_stmt(); +inline const ::pg_query::AlterDefaultPrivilegesStmt& Node::alter_default_privileges_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_default_privileges_stmt) + return _internal_alter_default_privileges_stmt(); } -inline ::pg_query::AlterTSConfigurationStmt* Node::unsafe_arena_release_alter_tsconfiguration_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_tsconfiguration_stmt) - if (_internal_has_alter_tsconfiguration_stmt()) { +inline ::pg_query::AlterDefaultPrivilegesStmt* Node::unsafe_arena_release_alter_default_privileges_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_default_privileges_stmt) + if (node_case() == kAlterDefaultPrivilegesStmt) { clear_has_node(); - ::pg_query::AlterTSConfigurationStmt* temp = _impl_.node_.alter_tsconfiguration_stmt_; - _impl_.node_.alter_tsconfiguration_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_default_privileges_stmt_; + _impl_.node_.alter_default_privileges_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_tsconfiguration_stmt(::pg_query::AlterTSConfigurationStmt* alter_tsconfiguration_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_default_privileges_stmt(::pg_query::AlterDefaultPrivilegesStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_tsconfiguration_stmt) { - set_has_alter_tsconfiguration_stmt(); - _impl_.node_.alter_tsconfiguration_stmt_ = alter_tsconfiguration_stmt; + if (value) { + set_has_alter_default_privileges_stmt(); + _impl_.node_.alter_default_privileges_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_tsconfiguration_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_default_privileges_stmt) } -inline ::pg_query::AlterTSConfigurationStmt* Node::_internal_mutable_alter_tsconfiguration_stmt() { - if (!_internal_has_alter_tsconfiguration_stmt()) { +inline ::pg_query::AlterDefaultPrivilegesStmt* Node::_internal_mutable_alter_default_privileges_stmt() { + if (node_case() != kAlterDefaultPrivilegesStmt) { clear_node(); - set_has_alter_tsconfiguration_stmt(); - _impl_.node_.alter_tsconfiguration_stmt_ = CreateMaybeMessage< ::pg_query::AlterTSConfigurationStmt >(GetArenaForAllocation()); + set_has_alter_default_privileges_stmt(); + _impl_.node_.alter_default_privileges_stmt_ = CreateMaybeMessage<::pg_query::AlterDefaultPrivilegesStmt>(GetArena()); } - return _impl_.node_.alter_tsconfiguration_stmt_; + return _impl_.node_.alter_default_privileges_stmt_; } -inline ::pg_query::AlterTSConfigurationStmt* Node::mutable_alter_tsconfiguration_stmt() { - ::pg_query::AlterTSConfigurationStmt* _msg = _internal_mutable_alter_tsconfiguration_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_tsconfiguration_stmt) +inline ::pg_query::AlterDefaultPrivilegesStmt* Node::mutable_alter_default_privileges_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterDefaultPrivilegesStmt* _msg = _internal_mutable_alter_default_privileges_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_default_privileges_stmt) return _msg; } -// .pg_query.CreateFdwStmt create_fdw_stmt = 138 [json_name = "CreateFdwStmt"]; -inline bool Node::_internal_has_create_fdw_stmt() const { - return node_case() == kCreateFdwStmt; +// .pg_query.CopyStmt copy_stmt = 135 [json_name = "CopyStmt"]; +inline bool Node::has_copy_stmt() const { + return node_case() == kCopyStmt; } -inline bool Node::has_create_fdw_stmt() const { - return _internal_has_create_fdw_stmt(); +inline bool Node::_internal_has_copy_stmt() const { + return node_case() == kCopyStmt; } -inline void Node::set_has_create_fdw_stmt() { - _impl_._oneof_case_[0] = kCreateFdwStmt; +inline void Node::set_has_copy_stmt() { + _impl_._oneof_case_[0] = kCopyStmt; } -inline void Node::clear_create_fdw_stmt() { - if (_internal_has_create_fdw_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_fdw_stmt_; +inline void Node::clear_copy_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCopyStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.copy_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateFdwStmt* Node::release_create_fdw_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_fdw_stmt) - if (_internal_has_create_fdw_stmt()) { +inline ::pg_query::CopyStmt* Node::release_copy_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.copy_stmt) + if (node_case() == kCopyStmt) { clear_has_node(); - ::pg_query::CreateFdwStmt* temp = _impl_.node_.create_fdw_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.copy_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_fdw_stmt_ = nullptr; + _impl_.node_.copy_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateFdwStmt& Node::_internal_create_fdw_stmt() const { - return _internal_has_create_fdw_stmt() - ? *_impl_.node_.create_fdw_stmt_ - : reinterpret_cast< ::pg_query::CreateFdwStmt&>(::pg_query::_CreateFdwStmt_default_instance_); +inline const ::pg_query::CopyStmt& Node::_internal_copy_stmt() const { + return node_case() == kCopyStmt ? *_impl_.node_.copy_stmt_ : reinterpret_cast<::pg_query::CopyStmt&>(::pg_query::_CopyStmt_default_instance_); } -inline const ::pg_query::CreateFdwStmt& Node::create_fdw_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_fdw_stmt) - return _internal_create_fdw_stmt(); +inline const ::pg_query::CopyStmt& Node::copy_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.copy_stmt) + return _internal_copy_stmt(); } -inline ::pg_query::CreateFdwStmt* Node::unsafe_arena_release_create_fdw_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_fdw_stmt) - if (_internal_has_create_fdw_stmt()) { +inline ::pg_query::CopyStmt* Node::unsafe_arena_release_copy_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.copy_stmt) + if (node_case() == kCopyStmt) { clear_has_node(); - ::pg_query::CreateFdwStmt* temp = _impl_.node_.create_fdw_stmt_; - _impl_.node_.create_fdw_stmt_ = nullptr; + auto* temp = _impl_.node_.copy_stmt_; + _impl_.node_.copy_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_fdw_stmt(::pg_query::CreateFdwStmt* create_fdw_stmt) { +inline void Node::unsafe_arena_set_allocated_copy_stmt(::pg_query::CopyStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_fdw_stmt) { - set_has_create_fdw_stmt(); - _impl_.node_.create_fdw_stmt_ = create_fdw_stmt; + if (value) { + set_has_copy_stmt(); + _impl_.node_.copy_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_fdw_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.copy_stmt) } -inline ::pg_query::CreateFdwStmt* Node::_internal_mutable_create_fdw_stmt() { - if (!_internal_has_create_fdw_stmt()) { +inline ::pg_query::CopyStmt* Node::_internal_mutable_copy_stmt() { + if (node_case() != kCopyStmt) { clear_node(); - set_has_create_fdw_stmt(); - _impl_.node_.create_fdw_stmt_ = CreateMaybeMessage< ::pg_query::CreateFdwStmt >(GetArenaForAllocation()); + set_has_copy_stmt(); + _impl_.node_.copy_stmt_ = CreateMaybeMessage<::pg_query::CopyStmt>(GetArena()); } - return _impl_.node_.create_fdw_stmt_; + return _impl_.node_.copy_stmt_; } -inline ::pg_query::CreateFdwStmt* Node::mutable_create_fdw_stmt() { - ::pg_query::CreateFdwStmt* _msg = _internal_mutable_create_fdw_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_fdw_stmt) +inline ::pg_query::CopyStmt* Node::mutable_copy_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CopyStmt* _msg = _internal_mutable_copy_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.copy_stmt) return _msg; } -// .pg_query.AlterFdwStmt alter_fdw_stmt = 139 [json_name = "AlterFdwStmt"]; -inline bool Node::_internal_has_alter_fdw_stmt() const { - return node_case() == kAlterFdwStmt; +// .pg_query.VariableSetStmt variable_set_stmt = 136 [json_name = "VariableSetStmt"]; +inline bool Node::has_variable_set_stmt() const { + return node_case() == kVariableSetStmt; } -inline bool Node::has_alter_fdw_stmt() const { - return _internal_has_alter_fdw_stmt(); +inline bool Node::_internal_has_variable_set_stmt() const { + return node_case() == kVariableSetStmt; } -inline void Node::set_has_alter_fdw_stmt() { - _impl_._oneof_case_[0] = kAlterFdwStmt; +inline void Node::set_has_variable_set_stmt() { + _impl_._oneof_case_[0] = kVariableSetStmt; } -inline void Node::clear_alter_fdw_stmt() { - if (_internal_has_alter_fdw_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_fdw_stmt_; +inline void Node::clear_variable_set_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kVariableSetStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.variable_set_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterFdwStmt* Node::release_alter_fdw_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_fdw_stmt) - if (_internal_has_alter_fdw_stmt()) { +inline ::pg_query::VariableSetStmt* Node::release_variable_set_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.variable_set_stmt) + if (node_case() == kVariableSetStmt) { clear_has_node(); - ::pg_query::AlterFdwStmt* temp = _impl_.node_.alter_fdw_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.variable_set_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_fdw_stmt_ = nullptr; + _impl_.node_.variable_set_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterFdwStmt& Node::_internal_alter_fdw_stmt() const { - return _internal_has_alter_fdw_stmt() - ? *_impl_.node_.alter_fdw_stmt_ - : reinterpret_cast< ::pg_query::AlterFdwStmt&>(::pg_query::_AlterFdwStmt_default_instance_); +inline const ::pg_query::VariableSetStmt& Node::_internal_variable_set_stmt() const { + return node_case() == kVariableSetStmt ? *_impl_.node_.variable_set_stmt_ : reinterpret_cast<::pg_query::VariableSetStmt&>(::pg_query::_VariableSetStmt_default_instance_); } -inline const ::pg_query::AlterFdwStmt& Node::alter_fdw_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_fdw_stmt) - return _internal_alter_fdw_stmt(); +inline const ::pg_query::VariableSetStmt& Node::variable_set_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.variable_set_stmt) + return _internal_variable_set_stmt(); } -inline ::pg_query::AlterFdwStmt* Node::unsafe_arena_release_alter_fdw_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_fdw_stmt) - if (_internal_has_alter_fdw_stmt()) { +inline ::pg_query::VariableSetStmt* Node::unsafe_arena_release_variable_set_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.variable_set_stmt) + if (node_case() == kVariableSetStmt) { clear_has_node(); - ::pg_query::AlterFdwStmt* temp = _impl_.node_.alter_fdw_stmt_; - _impl_.node_.alter_fdw_stmt_ = nullptr; + auto* temp = _impl_.node_.variable_set_stmt_; + _impl_.node_.variable_set_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_fdw_stmt(::pg_query::AlterFdwStmt* alter_fdw_stmt) { +inline void Node::unsafe_arena_set_allocated_variable_set_stmt(::pg_query::VariableSetStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_fdw_stmt) { - set_has_alter_fdw_stmt(); - _impl_.node_.alter_fdw_stmt_ = alter_fdw_stmt; + if (value) { + set_has_variable_set_stmt(); + _impl_.node_.variable_set_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_fdw_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.variable_set_stmt) } -inline ::pg_query::AlterFdwStmt* Node::_internal_mutable_alter_fdw_stmt() { - if (!_internal_has_alter_fdw_stmt()) { +inline ::pg_query::VariableSetStmt* Node::_internal_mutable_variable_set_stmt() { + if (node_case() != kVariableSetStmt) { clear_node(); - set_has_alter_fdw_stmt(); - _impl_.node_.alter_fdw_stmt_ = CreateMaybeMessage< ::pg_query::AlterFdwStmt >(GetArenaForAllocation()); + set_has_variable_set_stmt(); + _impl_.node_.variable_set_stmt_ = CreateMaybeMessage<::pg_query::VariableSetStmt>(GetArena()); } - return _impl_.node_.alter_fdw_stmt_; + return _impl_.node_.variable_set_stmt_; } -inline ::pg_query::AlterFdwStmt* Node::mutable_alter_fdw_stmt() { - ::pg_query::AlterFdwStmt* _msg = _internal_mutable_alter_fdw_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_fdw_stmt) +inline ::pg_query::VariableSetStmt* Node::mutable_variable_set_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::VariableSetStmt* _msg = _internal_mutable_variable_set_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.variable_set_stmt) return _msg; } -// .pg_query.CreateForeignServerStmt create_foreign_server_stmt = 140 [json_name = "CreateForeignServerStmt"]; -inline bool Node::_internal_has_create_foreign_server_stmt() const { - return node_case() == kCreateForeignServerStmt; +// .pg_query.VariableShowStmt variable_show_stmt = 137 [json_name = "VariableShowStmt"]; +inline bool Node::has_variable_show_stmt() const { + return node_case() == kVariableShowStmt; } -inline bool Node::has_create_foreign_server_stmt() const { - return _internal_has_create_foreign_server_stmt(); +inline bool Node::_internal_has_variable_show_stmt() const { + return node_case() == kVariableShowStmt; } -inline void Node::set_has_create_foreign_server_stmt() { - _impl_._oneof_case_[0] = kCreateForeignServerStmt; +inline void Node::set_has_variable_show_stmt() { + _impl_._oneof_case_[0] = kVariableShowStmt; } -inline void Node::clear_create_foreign_server_stmt() { - if (_internal_has_create_foreign_server_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_foreign_server_stmt_; +inline void Node::clear_variable_show_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kVariableShowStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.variable_show_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateForeignServerStmt* Node::release_create_foreign_server_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_foreign_server_stmt) - if (_internal_has_create_foreign_server_stmt()) { +inline ::pg_query::VariableShowStmt* Node::release_variable_show_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.variable_show_stmt) + if (node_case() == kVariableShowStmt) { clear_has_node(); - ::pg_query::CreateForeignServerStmt* temp = _impl_.node_.create_foreign_server_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.variable_show_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_foreign_server_stmt_ = nullptr; + _impl_.node_.variable_show_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateForeignServerStmt& Node::_internal_create_foreign_server_stmt() const { - return _internal_has_create_foreign_server_stmt() - ? *_impl_.node_.create_foreign_server_stmt_ - : reinterpret_cast< ::pg_query::CreateForeignServerStmt&>(::pg_query::_CreateForeignServerStmt_default_instance_); +inline const ::pg_query::VariableShowStmt& Node::_internal_variable_show_stmt() const { + return node_case() == kVariableShowStmt ? *_impl_.node_.variable_show_stmt_ : reinterpret_cast<::pg_query::VariableShowStmt&>(::pg_query::_VariableShowStmt_default_instance_); } -inline const ::pg_query::CreateForeignServerStmt& Node::create_foreign_server_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_foreign_server_stmt) - return _internal_create_foreign_server_stmt(); +inline const ::pg_query::VariableShowStmt& Node::variable_show_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.variable_show_stmt) + return _internal_variable_show_stmt(); } -inline ::pg_query::CreateForeignServerStmt* Node::unsafe_arena_release_create_foreign_server_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_foreign_server_stmt) - if (_internal_has_create_foreign_server_stmt()) { +inline ::pg_query::VariableShowStmt* Node::unsafe_arena_release_variable_show_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.variable_show_stmt) + if (node_case() == kVariableShowStmt) { clear_has_node(); - ::pg_query::CreateForeignServerStmt* temp = _impl_.node_.create_foreign_server_stmt_; - _impl_.node_.create_foreign_server_stmt_ = nullptr; + auto* temp = _impl_.node_.variable_show_stmt_; + _impl_.node_.variable_show_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_foreign_server_stmt(::pg_query::CreateForeignServerStmt* create_foreign_server_stmt) { +inline void Node::unsafe_arena_set_allocated_variable_show_stmt(::pg_query::VariableShowStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_foreign_server_stmt) { - set_has_create_foreign_server_stmt(); - _impl_.node_.create_foreign_server_stmt_ = create_foreign_server_stmt; + if (value) { + set_has_variable_show_stmt(); + _impl_.node_.variable_show_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_foreign_server_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.variable_show_stmt) } -inline ::pg_query::CreateForeignServerStmt* Node::_internal_mutable_create_foreign_server_stmt() { - if (!_internal_has_create_foreign_server_stmt()) { +inline ::pg_query::VariableShowStmt* Node::_internal_mutable_variable_show_stmt() { + if (node_case() != kVariableShowStmt) { clear_node(); - set_has_create_foreign_server_stmt(); - _impl_.node_.create_foreign_server_stmt_ = CreateMaybeMessage< ::pg_query::CreateForeignServerStmt >(GetArenaForAllocation()); + set_has_variable_show_stmt(); + _impl_.node_.variable_show_stmt_ = CreateMaybeMessage<::pg_query::VariableShowStmt>(GetArena()); } - return _impl_.node_.create_foreign_server_stmt_; + return _impl_.node_.variable_show_stmt_; } -inline ::pg_query::CreateForeignServerStmt* Node::mutable_create_foreign_server_stmt() { - ::pg_query::CreateForeignServerStmt* _msg = _internal_mutable_create_foreign_server_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_foreign_server_stmt) +inline ::pg_query::VariableShowStmt* Node::mutable_variable_show_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::VariableShowStmt* _msg = _internal_mutable_variable_show_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.variable_show_stmt) return _msg; } -// .pg_query.AlterForeignServerStmt alter_foreign_server_stmt = 141 [json_name = "AlterForeignServerStmt"]; -inline bool Node::_internal_has_alter_foreign_server_stmt() const { - return node_case() == kAlterForeignServerStmt; +// .pg_query.CreateStmt create_stmt = 138 [json_name = "CreateStmt"]; +inline bool Node::has_create_stmt() const { + return node_case() == kCreateStmt; } -inline bool Node::has_alter_foreign_server_stmt() const { - return _internal_has_alter_foreign_server_stmt(); +inline bool Node::_internal_has_create_stmt() const { + return node_case() == kCreateStmt; } -inline void Node::set_has_alter_foreign_server_stmt() { - _impl_._oneof_case_[0] = kAlterForeignServerStmt; +inline void Node::set_has_create_stmt() { + _impl_._oneof_case_[0] = kCreateStmt; } -inline void Node::clear_alter_foreign_server_stmt() { - if (_internal_has_alter_foreign_server_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_foreign_server_stmt_; +inline void Node::clear_create_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterForeignServerStmt* Node::release_alter_foreign_server_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_foreign_server_stmt) - if (_internal_has_alter_foreign_server_stmt()) { +inline ::pg_query::CreateStmt* Node::release_create_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_stmt) + if (node_case() == kCreateStmt) { clear_has_node(); - ::pg_query::AlterForeignServerStmt* temp = _impl_.node_.alter_foreign_server_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_foreign_server_stmt_ = nullptr; + _impl_.node_.create_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterForeignServerStmt& Node::_internal_alter_foreign_server_stmt() const { - return _internal_has_alter_foreign_server_stmt() - ? *_impl_.node_.alter_foreign_server_stmt_ - : reinterpret_cast< ::pg_query::AlterForeignServerStmt&>(::pg_query::_AlterForeignServerStmt_default_instance_); +inline const ::pg_query::CreateStmt& Node::_internal_create_stmt() const { + return node_case() == kCreateStmt ? *_impl_.node_.create_stmt_ : reinterpret_cast<::pg_query::CreateStmt&>(::pg_query::_CreateStmt_default_instance_); } -inline const ::pg_query::AlterForeignServerStmt& Node::alter_foreign_server_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_foreign_server_stmt) - return _internal_alter_foreign_server_stmt(); +inline const ::pg_query::CreateStmt& Node::create_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_stmt) + return _internal_create_stmt(); } -inline ::pg_query::AlterForeignServerStmt* Node::unsafe_arena_release_alter_foreign_server_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_foreign_server_stmt) - if (_internal_has_alter_foreign_server_stmt()) { +inline ::pg_query::CreateStmt* Node::unsafe_arena_release_create_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_stmt) + if (node_case() == kCreateStmt) { clear_has_node(); - ::pg_query::AlterForeignServerStmt* temp = _impl_.node_.alter_foreign_server_stmt_; - _impl_.node_.alter_foreign_server_stmt_ = nullptr; + auto* temp = _impl_.node_.create_stmt_; + _impl_.node_.create_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_foreign_server_stmt(::pg_query::AlterForeignServerStmt* alter_foreign_server_stmt) { +inline void Node::unsafe_arena_set_allocated_create_stmt(::pg_query::CreateStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_foreign_server_stmt) { - set_has_alter_foreign_server_stmt(); - _impl_.node_.alter_foreign_server_stmt_ = alter_foreign_server_stmt; + if (value) { + set_has_create_stmt(); + _impl_.node_.create_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_foreign_server_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_stmt) } -inline ::pg_query::AlterForeignServerStmt* Node::_internal_mutable_alter_foreign_server_stmt() { - if (!_internal_has_alter_foreign_server_stmt()) { +inline ::pg_query::CreateStmt* Node::_internal_mutable_create_stmt() { + if (node_case() != kCreateStmt) { clear_node(); - set_has_alter_foreign_server_stmt(); - _impl_.node_.alter_foreign_server_stmt_ = CreateMaybeMessage< ::pg_query::AlterForeignServerStmt >(GetArenaForAllocation()); + set_has_create_stmt(); + _impl_.node_.create_stmt_ = CreateMaybeMessage<::pg_query::CreateStmt>(GetArena()); } - return _impl_.node_.alter_foreign_server_stmt_; + return _impl_.node_.create_stmt_; } -inline ::pg_query::AlterForeignServerStmt* Node::mutable_alter_foreign_server_stmt() { - ::pg_query::AlterForeignServerStmt* _msg = _internal_mutable_alter_foreign_server_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_foreign_server_stmt) +inline ::pg_query::CreateStmt* Node::mutable_create_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateStmt* _msg = _internal_mutable_create_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_stmt) return _msg; } -// .pg_query.CreateUserMappingStmt create_user_mapping_stmt = 142 [json_name = "CreateUserMappingStmt"]; -inline bool Node::_internal_has_create_user_mapping_stmt() const { - return node_case() == kCreateUserMappingStmt; +// .pg_query.Constraint constraint = 139 [json_name = "Constraint"]; +inline bool Node::has_constraint() const { + return node_case() == kConstraint; } -inline bool Node::has_create_user_mapping_stmt() const { - return _internal_has_create_user_mapping_stmt(); +inline bool Node::_internal_has_constraint() const { + return node_case() == kConstraint; } -inline void Node::set_has_create_user_mapping_stmt() { - _impl_._oneof_case_[0] = kCreateUserMappingStmt; +inline void Node::set_has_constraint() { + _impl_._oneof_case_[0] = kConstraint; } -inline void Node::clear_create_user_mapping_stmt() { - if (_internal_has_create_user_mapping_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_user_mapping_stmt_; +inline void Node::clear_constraint() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kConstraint) { + if (GetArena() == nullptr) { + delete _impl_.node_.constraint_; } clear_has_node(); } } -inline ::pg_query::CreateUserMappingStmt* Node::release_create_user_mapping_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_user_mapping_stmt) - if (_internal_has_create_user_mapping_stmt()) { +inline ::pg_query::Constraint* Node::release_constraint() { + // @@protoc_insertion_point(field_release:pg_query.Node.constraint) + if (node_case() == kConstraint) { clear_has_node(); - ::pg_query::CreateUserMappingStmt* temp = _impl_.node_.create_user_mapping_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.constraint_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_user_mapping_stmt_ = nullptr; + _impl_.node_.constraint_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateUserMappingStmt& Node::_internal_create_user_mapping_stmt() const { - return _internal_has_create_user_mapping_stmt() - ? *_impl_.node_.create_user_mapping_stmt_ - : reinterpret_cast< ::pg_query::CreateUserMappingStmt&>(::pg_query::_CreateUserMappingStmt_default_instance_); +inline const ::pg_query::Constraint& Node::_internal_constraint() const { + return node_case() == kConstraint ? *_impl_.node_.constraint_ : reinterpret_cast<::pg_query::Constraint&>(::pg_query::_Constraint_default_instance_); } -inline const ::pg_query::CreateUserMappingStmt& Node::create_user_mapping_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_user_mapping_stmt) - return _internal_create_user_mapping_stmt(); +inline const ::pg_query::Constraint& Node::constraint() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.constraint) + return _internal_constraint(); } -inline ::pg_query::CreateUserMappingStmt* Node::unsafe_arena_release_create_user_mapping_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_user_mapping_stmt) - if (_internal_has_create_user_mapping_stmt()) { +inline ::pg_query::Constraint* Node::unsafe_arena_release_constraint() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.constraint) + if (node_case() == kConstraint) { clear_has_node(); - ::pg_query::CreateUserMappingStmt* temp = _impl_.node_.create_user_mapping_stmt_; - _impl_.node_.create_user_mapping_stmt_ = nullptr; + auto* temp = _impl_.node_.constraint_; + _impl_.node_.constraint_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_user_mapping_stmt(::pg_query::CreateUserMappingStmt* create_user_mapping_stmt) { +inline void Node::unsafe_arena_set_allocated_constraint(::pg_query::Constraint* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_user_mapping_stmt) { - set_has_create_user_mapping_stmt(); - _impl_.node_.create_user_mapping_stmt_ = create_user_mapping_stmt; + if (value) { + set_has_constraint(); + _impl_.node_.constraint_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_user_mapping_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.constraint) } -inline ::pg_query::CreateUserMappingStmt* Node::_internal_mutable_create_user_mapping_stmt() { - if (!_internal_has_create_user_mapping_stmt()) { +inline ::pg_query::Constraint* Node::_internal_mutable_constraint() { + if (node_case() != kConstraint) { clear_node(); - set_has_create_user_mapping_stmt(); - _impl_.node_.create_user_mapping_stmt_ = CreateMaybeMessage< ::pg_query::CreateUserMappingStmt >(GetArenaForAllocation()); + set_has_constraint(); + _impl_.node_.constraint_ = CreateMaybeMessage<::pg_query::Constraint>(GetArena()); } - return _impl_.node_.create_user_mapping_stmt_; + return _impl_.node_.constraint_; } -inline ::pg_query::CreateUserMappingStmt* Node::mutable_create_user_mapping_stmt() { - ::pg_query::CreateUserMappingStmt* _msg = _internal_mutable_create_user_mapping_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_user_mapping_stmt) +inline ::pg_query::Constraint* Node::mutable_constraint() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Constraint* _msg = _internal_mutable_constraint(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.constraint) return _msg; } -// .pg_query.AlterUserMappingStmt alter_user_mapping_stmt = 143 [json_name = "AlterUserMappingStmt"]; -inline bool Node::_internal_has_alter_user_mapping_stmt() const { - return node_case() == kAlterUserMappingStmt; +// .pg_query.CreateTableSpaceStmt create_table_space_stmt = 140 [json_name = "CreateTableSpaceStmt"]; +inline bool Node::has_create_table_space_stmt() const { + return node_case() == kCreateTableSpaceStmt; } -inline bool Node::has_alter_user_mapping_stmt() const { - return _internal_has_alter_user_mapping_stmt(); +inline bool Node::_internal_has_create_table_space_stmt() const { + return node_case() == kCreateTableSpaceStmt; } -inline void Node::set_has_alter_user_mapping_stmt() { - _impl_._oneof_case_[0] = kAlterUserMappingStmt; +inline void Node::set_has_create_table_space_stmt() { + _impl_._oneof_case_[0] = kCreateTableSpaceStmt; } -inline void Node::clear_alter_user_mapping_stmt() { - if (_internal_has_alter_user_mapping_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_user_mapping_stmt_; +inline void Node::clear_create_table_space_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateTableSpaceStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_table_space_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterUserMappingStmt* Node::release_alter_user_mapping_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_user_mapping_stmt) - if (_internal_has_alter_user_mapping_stmt()) { +inline ::pg_query::CreateTableSpaceStmt* Node::release_create_table_space_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_table_space_stmt) + if (node_case() == kCreateTableSpaceStmt) { clear_has_node(); - ::pg_query::AlterUserMappingStmt* temp = _impl_.node_.alter_user_mapping_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_table_space_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_user_mapping_stmt_ = nullptr; + _impl_.node_.create_table_space_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterUserMappingStmt& Node::_internal_alter_user_mapping_stmt() const { - return _internal_has_alter_user_mapping_stmt() - ? *_impl_.node_.alter_user_mapping_stmt_ - : reinterpret_cast< ::pg_query::AlterUserMappingStmt&>(::pg_query::_AlterUserMappingStmt_default_instance_); +inline const ::pg_query::CreateTableSpaceStmt& Node::_internal_create_table_space_stmt() const { + return node_case() == kCreateTableSpaceStmt ? *_impl_.node_.create_table_space_stmt_ : reinterpret_cast<::pg_query::CreateTableSpaceStmt&>(::pg_query::_CreateTableSpaceStmt_default_instance_); } -inline const ::pg_query::AlterUserMappingStmt& Node::alter_user_mapping_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_user_mapping_stmt) - return _internal_alter_user_mapping_stmt(); +inline const ::pg_query::CreateTableSpaceStmt& Node::create_table_space_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_table_space_stmt) + return _internal_create_table_space_stmt(); } -inline ::pg_query::AlterUserMappingStmt* Node::unsafe_arena_release_alter_user_mapping_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_user_mapping_stmt) - if (_internal_has_alter_user_mapping_stmt()) { +inline ::pg_query::CreateTableSpaceStmt* Node::unsafe_arena_release_create_table_space_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_table_space_stmt) + if (node_case() == kCreateTableSpaceStmt) { clear_has_node(); - ::pg_query::AlterUserMappingStmt* temp = _impl_.node_.alter_user_mapping_stmt_; - _impl_.node_.alter_user_mapping_stmt_ = nullptr; + auto* temp = _impl_.node_.create_table_space_stmt_; + _impl_.node_.create_table_space_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_user_mapping_stmt(::pg_query::AlterUserMappingStmt* alter_user_mapping_stmt) { +inline void Node::unsafe_arena_set_allocated_create_table_space_stmt(::pg_query::CreateTableSpaceStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_user_mapping_stmt) { - set_has_alter_user_mapping_stmt(); - _impl_.node_.alter_user_mapping_stmt_ = alter_user_mapping_stmt; + if (value) { + set_has_create_table_space_stmt(); + _impl_.node_.create_table_space_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_user_mapping_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_table_space_stmt) } -inline ::pg_query::AlterUserMappingStmt* Node::_internal_mutable_alter_user_mapping_stmt() { - if (!_internal_has_alter_user_mapping_stmt()) { +inline ::pg_query::CreateTableSpaceStmt* Node::_internal_mutable_create_table_space_stmt() { + if (node_case() != kCreateTableSpaceStmt) { clear_node(); - set_has_alter_user_mapping_stmt(); - _impl_.node_.alter_user_mapping_stmt_ = CreateMaybeMessage< ::pg_query::AlterUserMappingStmt >(GetArenaForAllocation()); + set_has_create_table_space_stmt(); + _impl_.node_.create_table_space_stmt_ = CreateMaybeMessage<::pg_query::CreateTableSpaceStmt>(GetArena()); } - return _impl_.node_.alter_user_mapping_stmt_; + return _impl_.node_.create_table_space_stmt_; } -inline ::pg_query::AlterUserMappingStmt* Node::mutable_alter_user_mapping_stmt() { - ::pg_query::AlterUserMappingStmt* _msg = _internal_mutable_alter_user_mapping_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_user_mapping_stmt) +inline ::pg_query::CreateTableSpaceStmt* Node::mutable_create_table_space_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateTableSpaceStmt* _msg = _internal_mutable_create_table_space_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_table_space_stmt) return _msg; } -// .pg_query.DropUserMappingStmt drop_user_mapping_stmt = 144 [json_name = "DropUserMappingStmt"]; -inline bool Node::_internal_has_drop_user_mapping_stmt() const { - return node_case() == kDropUserMappingStmt; +// .pg_query.DropTableSpaceStmt drop_table_space_stmt = 141 [json_name = "DropTableSpaceStmt"]; +inline bool Node::has_drop_table_space_stmt() const { + return node_case() == kDropTableSpaceStmt; } -inline bool Node::has_drop_user_mapping_stmt() const { - return _internal_has_drop_user_mapping_stmt(); +inline bool Node::_internal_has_drop_table_space_stmt() const { + return node_case() == kDropTableSpaceStmt; } -inline void Node::set_has_drop_user_mapping_stmt() { - _impl_._oneof_case_[0] = kDropUserMappingStmt; +inline void Node::set_has_drop_table_space_stmt() { + _impl_._oneof_case_[0] = kDropTableSpaceStmt; } -inline void Node::clear_drop_user_mapping_stmt() { - if (_internal_has_drop_user_mapping_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.drop_user_mapping_stmt_; +inline void Node::clear_drop_table_space_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDropTableSpaceStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.drop_table_space_stmt_; } clear_has_node(); } } -inline ::pg_query::DropUserMappingStmt* Node::release_drop_user_mapping_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.drop_user_mapping_stmt) - if (_internal_has_drop_user_mapping_stmt()) { +inline ::pg_query::DropTableSpaceStmt* Node::release_drop_table_space_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.drop_table_space_stmt) + if (node_case() == kDropTableSpaceStmt) { clear_has_node(); - ::pg_query::DropUserMappingStmt* temp = _impl_.node_.drop_user_mapping_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.drop_table_space_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.drop_user_mapping_stmt_ = nullptr; + _impl_.node_.drop_table_space_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DropUserMappingStmt& Node::_internal_drop_user_mapping_stmt() const { - return _internal_has_drop_user_mapping_stmt() - ? *_impl_.node_.drop_user_mapping_stmt_ - : reinterpret_cast< ::pg_query::DropUserMappingStmt&>(::pg_query::_DropUserMappingStmt_default_instance_); +inline const ::pg_query::DropTableSpaceStmt& Node::_internal_drop_table_space_stmt() const { + return node_case() == kDropTableSpaceStmt ? *_impl_.node_.drop_table_space_stmt_ : reinterpret_cast<::pg_query::DropTableSpaceStmt&>(::pg_query::_DropTableSpaceStmt_default_instance_); } -inline const ::pg_query::DropUserMappingStmt& Node::drop_user_mapping_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.drop_user_mapping_stmt) - return _internal_drop_user_mapping_stmt(); +inline const ::pg_query::DropTableSpaceStmt& Node::drop_table_space_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.drop_table_space_stmt) + return _internal_drop_table_space_stmt(); } -inline ::pg_query::DropUserMappingStmt* Node::unsafe_arena_release_drop_user_mapping_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_user_mapping_stmt) - if (_internal_has_drop_user_mapping_stmt()) { +inline ::pg_query::DropTableSpaceStmt* Node::unsafe_arena_release_drop_table_space_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_table_space_stmt) + if (node_case() == kDropTableSpaceStmt) { clear_has_node(); - ::pg_query::DropUserMappingStmt* temp = _impl_.node_.drop_user_mapping_stmt_; - _impl_.node_.drop_user_mapping_stmt_ = nullptr; + auto* temp = _impl_.node_.drop_table_space_stmt_; + _impl_.node_.drop_table_space_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_drop_user_mapping_stmt(::pg_query::DropUserMappingStmt* drop_user_mapping_stmt) { +inline void Node::unsafe_arena_set_allocated_drop_table_space_stmt(::pg_query::DropTableSpaceStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (drop_user_mapping_stmt) { - set_has_drop_user_mapping_stmt(); - _impl_.node_.drop_user_mapping_stmt_ = drop_user_mapping_stmt; + if (value) { + set_has_drop_table_space_stmt(); + _impl_.node_.drop_table_space_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_user_mapping_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_table_space_stmt) } -inline ::pg_query::DropUserMappingStmt* Node::_internal_mutable_drop_user_mapping_stmt() { - if (!_internal_has_drop_user_mapping_stmt()) { +inline ::pg_query::DropTableSpaceStmt* Node::_internal_mutable_drop_table_space_stmt() { + if (node_case() != kDropTableSpaceStmt) { clear_node(); - set_has_drop_user_mapping_stmt(); - _impl_.node_.drop_user_mapping_stmt_ = CreateMaybeMessage< ::pg_query::DropUserMappingStmt >(GetArenaForAllocation()); + set_has_drop_table_space_stmt(); + _impl_.node_.drop_table_space_stmt_ = CreateMaybeMessage<::pg_query::DropTableSpaceStmt>(GetArena()); } - return _impl_.node_.drop_user_mapping_stmt_; + return _impl_.node_.drop_table_space_stmt_; } -inline ::pg_query::DropUserMappingStmt* Node::mutable_drop_user_mapping_stmt() { - ::pg_query::DropUserMappingStmt* _msg = _internal_mutable_drop_user_mapping_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_user_mapping_stmt) +inline ::pg_query::DropTableSpaceStmt* Node::mutable_drop_table_space_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DropTableSpaceStmt* _msg = _internal_mutable_drop_table_space_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_table_space_stmt) return _msg; } -// .pg_query.AlterTableSpaceOptionsStmt alter_table_space_options_stmt = 145 [json_name = "AlterTableSpaceOptionsStmt"]; -inline bool Node::_internal_has_alter_table_space_options_stmt() const { +// .pg_query.AlterTableSpaceOptionsStmt alter_table_space_options_stmt = 142 [json_name = "AlterTableSpaceOptionsStmt"]; +inline bool Node::has_alter_table_space_options_stmt() const { return node_case() == kAlterTableSpaceOptionsStmt; } -inline bool Node::has_alter_table_space_options_stmt() const { - return _internal_has_alter_table_space_options_stmt(); +inline bool Node::_internal_has_alter_table_space_options_stmt() const { + return node_case() == kAlterTableSpaceOptionsStmt; } inline void Node::set_has_alter_table_space_options_stmt() { _impl_._oneof_case_[0] = kAlterTableSpaceOptionsStmt; } inline void Node::clear_alter_table_space_options_stmt() { - if (_internal_has_alter_table_space_options_stmt()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterTableSpaceOptionsStmt) { + if (GetArena() == nullptr) { delete _impl_.node_.alter_table_space_options_stmt_; } clear_has_node(); @@ -72289,11 +82922,11 @@ inline void Node::clear_alter_table_space_options_stmt() { } inline ::pg_query::AlterTableSpaceOptionsStmt* Node::release_alter_table_space_options_stmt() { // @@protoc_insertion_point(field_release:pg_query.Node.alter_table_space_options_stmt) - if (_internal_has_alter_table_space_options_stmt()) { + if (node_case() == kAlterTableSpaceOptionsStmt) { clear_has_node(); - ::pg_query::AlterTableSpaceOptionsStmt* temp = _impl_.node_.alter_table_space_options_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_table_space_options_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.alter_table_space_options_stmt_ = nullptr; return temp; @@ -72302,60 +82935,62 @@ inline ::pg_query::AlterTableSpaceOptionsStmt* Node::release_alter_table_space_o } } inline const ::pg_query::AlterTableSpaceOptionsStmt& Node::_internal_alter_table_space_options_stmt() const { - return _internal_has_alter_table_space_options_stmt() - ? *_impl_.node_.alter_table_space_options_stmt_ - : reinterpret_cast< ::pg_query::AlterTableSpaceOptionsStmt&>(::pg_query::_AlterTableSpaceOptionsStmt_default_instance_); + return node_case() == kAlterTableSpaceOptionsStmt ? *_impl_.node_.alter_table_space_options_stmt_ : reinterpret_cast<::pg_query::AlterTableSpaceOptionsStmt&>(::pg_query::_AlterTableSpaceOptionsStmt_default_instance_); } -inline const ::pg_query::AlterTableSpaceOptionsStmt& Node::alter_table_space_options_stmt() const { +inline const ::pg_query::AlterTableSpaceOptionsStmt& Node::alter_table_space_options_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.alter_table_space_options_stmt) return _internal_alter_table_space_options_stmt(); } inline ::pg_query::AlterTableSpaceOptionsStmt* Node::unsafe_arena_release_alter_table_space_options_stmt() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_table_space_options_stmt) - if (_internal_has_alter_table_space_options_stmt()) { + if (node_case() == kAlterTableSpaceOptionsStmt) { clear_has_node(); - ::pg_query::AlterTableSpaceOptionsStmt* temp = _impl_.node_.alter_table_space_options_stmt_; + auto* temp = _impl_.node_.alter_table_space_options_stmt_; _impl_.node_.alter_table_space_options_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_table_space_options_stmt(::pg_query::AlterTableSpaceOptionsStmt* alter_table_space_options_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_table_space_options_stmt(::pg_query::AlterTableSpaceOptionsStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_table_space_options_stmt) { + if (value) { set_has_alter_table_space_options_stmt(); - _impl_.node_.alter_table_space_options_stmt_ = alter_table_space_options_stmt; + _impl_.node_.alter_table_space_options_stmt_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_table_space_options_stmt) } inline ::pg_query::AlterTableSpaceOptionsStmt* Node::_internal_mutable_alter_table_space_options_stmt() { - if (!_internal_has_alter_table_space_options_stmt()) { + if (node_case() != kAlterTableSpaceOptionsStmt) { clear_node(); set_has_alter_table_space_options_stmt(); - _impl_.node_.alter_table_space_options_stmt_ = CreateMaybeMessage< ::pg_query::AlterTableSpaceOptionsStmt >(GetArenaForAllocation()); + _impl_.node_.alter_table_space_options_stmt_ = CreateMaybeMessage<::pg_query::AlterTableSpaceOptionsStmt>(GetArena()); } return _impl_.node_.alter_table_space_options_stmt_; } -inline ::pg_query::AlterTableSpaceOptionsStmt* Node::mutable_alter_table_space_options_stmt() { +inline ::pg_query::AlterTableSpaceOptionsStmt* Node::mutable_alter_table_space_options_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::AlterTableSpaceOptionsStmt* _msg = _internal_mutable_alter_table_space_options_stmt(); // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_table_space_options_stmt) return _msg; } -// .pg_query.AlterTableMoveAllStmt alter_table_move_all_stmt = 146 [json_name = "AlterTableMoveAllStmt"]; -inline bool Node::_internal_has_alter_table_move_all_stmt() const { +// .pg_query.AlterTableMoveAllStmt alter_table_move_all_stmt = 143 [json_name = "AlterTableMoveAllStmt"]; +inline bool Node::has_alter_table_move_all_stmt() const { return node_case() == kAlterTableMoveAllStmt; } -inline bool Node::has_alter_table_move_all_stmt() const { - return _internal_has_alter_table_move_all_stmt(); +inline bool Node::_internal_has_alter_table_move_all_stmt() const { + return node_case() == kAlterTableMoveAllStmt; } inline void Node::set_has_alter_table_move_all_stmt() { _impl_._oneof_case_[0] = kAlterTableMoveAllStmt; } inline void Node::clear_alter_table_move_all_stmt() { - if (_internal_has_alter_table_move_all_stmt()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterTableMoveAllStmt) { + if (GetArena() == nullptr) { delete _impl_.node_.alter_table_move_all_stmt_; } clear_has_node(); @@ -72363,11 +82998,11 @@ inline void Node::clear_alter_table_move_all_stmt() { } inline ::pg_query::AlterTableMoveAllStmt* Node::release_alter_table_move_all_stmt() { // @@protoc_insertion_point(field_release:pg_query.Node.alter_table_move_all_stmt) - if (_internal_has_alter_table_move_all_stmt()) { + if (node_case() == kAlterTableMoveAllStmt) { clear_has_node(); - ::pg_query::AlterTableMoveAllStmt* temp = _impl_.node_.alter_table_move_all_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_table_move_all_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.alter_table_move_all_stmt_ = nullptr; return temp; @@ -72375,875 +83010,975 @@ inline ::pg_query::AlterTableMoveAllStmt* Node::release_alter_table_move_all_stm return nullptr; } } -inline const ::pg_query::AlterTableMoveAllStmt& Node::_internal_alter_table_move_all_stmt() const { - return _internal_has_alter_table_move_all_stmt() - ? *_impl_.node_.alter_table_move_all_stmt_ - : reinterpret_cast< ::pg_query::AlterTableMoveAllStmt&>(::pg_query::_AlterTableMoveAllStmt_default_instance_); +inline const ::pg_query::AlterTableMoveAllStmt& Node::_internal_alter_table_move_all_stmt() const { + return node_case() == kAlterTableMoveAllStmt ? *_impl_.node_.alter_table_move_all_stmt_ : reinterpret_cast<::pg_query::AlterTableMoveAllStmt&>(::pg_query::_AlterTableMoveAllStmt_default_instance_); +} +inline const ::pg_query::AlterTableMoveAllStmt& Node::alter_table_move_all_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_table_move_all_stmt) + return _internal_alter_table_move_all_stmt(); +} +inline ::pg_query::AlterTableMoveAllStmt* Node::unsafe_arena_release_alter_table_move_all_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_table_move_all_stmt) + if (node_case() == kAlterTableMoveAllStmt) { + clear_has_node(); + auto* temp = _impl_.node_.alter_table_move_all_stmt_; + _impl_.node_.alter_table_move_all_stmt_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void Node::unsafe_arena_set_allocated_alter_table_move_all_stmt(::pg_query::AlterTableMoveAllStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_alter_table_move_all_stmt(); + _impl_.node_.alter_table_move_all_stmt_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_table_move_all_stmt) +} +inline ::pg_query::AlterTableMoveAllStmt* Node::_internal_mutable_alter_table_move_all_stmt() { + if (node_case() != kAlterTableMoveAllStmt) { + clear_node(); + set_has_alter_table_move_all_stmt(); + _impl_.node_.alter_table_move_all_stmt_ = CreateMaybeMessage<::pg_query::AlterTableMoveAllStmt>(GetArena()); + } + return _impl_.node_.alter_table_move_all_stmt_; +} +inline ::pg_query::AlterTableMoveAllStmt* Node::mutable_alter_table_move_all_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterTableMoveAllStmt* _msg = _internal_mutable_alter_table_move_all_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_table_move_all_stmt) + return _msg; +} + +// .pg_query.CreateExtensionStmt create_extension_stmt = 144 [json_name = "CreateExtensionStmt"]; +inline bool Node::has_create_extension_stmt() const { + return node_case() == kCreateExtensionStmt; +} +inline bool Node::_internal_has_create_extension_stmt() const { + return node_case() == kCreateExtensionStmt; +} +inline void Node::set_has_create_extension_stmt() { + _impl_._oneof_case_[0] = kCreateExtensionStmt; +} +inline void Node::clear_create_extension_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateExtensionStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_extension_stmt_; + } + clear_has_node(); + } +} +inline ::pg_query::CreateExtensionStmt* Node::release_create_extension_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_extension_stmt) + if (node_case() == kCreateExtensionStmt) { + clear_has_node(); + auto* temp = _impl_.node_.create_extension_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.create_extension_stmt_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::pg_query::CreateExtensionStmt& Node::_internal_create_extension_stmt() const { + return node_case() == kCreateExtensionStmt ? *_impl_.node_.create_extension_stmt_ : reinterpret_cast<::pg_query::CreateExtensionStmt&>(::pg_query::_CreateExtensionStmt_default_instance_); } -inline const ::pg_query::AlterTableMoveAllStmt& Node::alter_table_move_all_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_table_move_all_stmt) - return _internal_alter_table_move_all_stmt(); +inline const ::pg_query::CreateExtensionStmt& Node::create_extension_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_extension_stmt) + return _internal_create_extension_stmt(); } -inline ::pg_query::AlterTableMoveAllStmt* Node::unsafe_arena_release_alter_table_move_all_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_table_move_all_stmt) - if (_internal_has_alter_table_move_all_stmt()) { +inline ::pg_query::CreateExtensionStmt* Node::unsafe_arena_release_create_extension_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_extension_stmt) + if (node_case() == kCreateExtensionStmt) { clear_has_node(); - ::pg_query::AlterTableMoveAllStmt* temp = _impl_.node_.alter_table_move_all_stmt_; - _impl_.node_.alter_table_move_all_stmt_ = nullptr; + auto* temp = _impl_.node_.create_extension_stmt_; + _impl_.node_.create_extension_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_table_move_all_stmt(::pg_query::AlterTableMoveAllStmt* alter_table_move_all_stmt) { +inline void Node::unsafe_arena_set_allocated_create_extension_stmt(::pg_query::CreateExtensionStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_table_move_all_stmt) { - set_has_alter_table_move_all_stmt(); - _impl_.node_.alter_table_move_all_stmt_ = alter_table_move_all_stmt; + if (value) { + set_has_create_extension_stmt(); + _impl_.node_.create_extension_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_table_move_all_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_extension_stmt) } -inline ::pg_query::AlterTableMoveAllStmt* Node::_internal_mutable_alter_table_move_all_stmt() { - if (!_internal_has_alter_table_move_all_stmt()) { +inline ::pg_query::CreateExtensionStmt* Node::_internal_mutable_create_extension_stmt() { + if (node_case() != kCreateExtensionStmt) { clear_node(); - set_has_alter_table_move_all_stmt(); - _impl_.node_.alter_table_move_all_stmt_ = CreateMaybeMessage< ::pg_query::AlterTableMoveAllStmt >(GetArenaForAllocation()); + set_has_create_extension_stmt(); + _impl_.node_.create_extension_stmt_ = CreateMaybeMessage<::pg_query::CreateExtensionStmt>(GetArena()); } - return _impl_.node_.alter_table_move_all_stmt_; + return _impl_.node_.create_extension_stmt_; } -inline ::pg_query::AlterTableMoveAllStmt* Node::mutable_alter_table_move_all_stmt() { - ::pg_query::AlterTableMoveAllStmt* _msg = _internal_mutable_alter_table_move_all_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_table_move_all_stmt) +inline ::pg_query::CreateExtensionStmt* Node::mutable_create_extension_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateExtensionStmt* _msg = _internal_mutable_create_extension_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_extension_stmt) return _msg; } -// .pg_query.SecLabelStmt sec_label_stmt = 147 [json_name = "SecLabelStmt"]; -inline bool Node::_internal_has_sec_label_stmt() const { - return node_case() == kSecLabelStmt; +// .pg_query.AlterExtensionStmt alter_extension_stmt = 145 [json_name = "AlterExtensionStmt"]; +inline bool Node::has_alter_extension_stmt() const { + return node_case() == kAlterExtensionStmt; } -inline bool Node::has_sec_label_stmt() const { - return _internal_has_sec_label_stmt(); +inline bool Node::_internal_has_alter_extension_stmt() const { + return node_case() == kAlterExtensionStmt; } -inline void Node::set_has_sec_label_stmt() { - _impl_._oneof_case_[0] = kSecLabelStmt; +inline void Node::set_has_alter_extension_stmt() { + _impl_._oneof_case_[0] = kAlterExtensionStmt; } -inline void Node::clear_sec_label_stmt() { - if (_internal_has_sec_label_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.sec_label_stmt_; +inline void Node::clear_alter_extension_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterExtensionStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_extension_stmt_; } clear_has_node(); } } -inline ::pg_query::SecLabelStmt* Node::release_sec_label_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.sec_label_stmt) - if (_internal_has_sec_label_stmt()) { +inline ::pg_query::AlterExtensionStmt* Node::release_alter_extension_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_extension_stmt) + if (node_case() == kAlterExtensionStmt) { clear_has_node(); - ::pg_query::SecLabelStmt* temp = _impl_.node_.sec_label_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_extension_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.sec_label_stmt_ = nullptr; + _impl_.node_.alter_extension_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::SecLabelStmt& Node::_internal_sec_label_stmt() const { - return _internal_has_sec_label_stmt() - ? *_impl_.node_.sec_label_stmt_ - : reinterpret_cast< ::pg_query::SecLabelStmt&>(::pg_query::_SecLabelStmt_default_instance_); +inline const ::pg_query::AlterExtensionStmt& Node::_internal_alter_extension_stmt() const { + return node_case() == kAlterExtensionStmt ? *_impl_.node_.alter_extension_stmt_ : reinterpret_cast<::pg_query::AlterExtensionStmt&>(::pg_query::_AlterExtensionStmt_default_instance_); } -inline const ::pg_query::SecLabelStmt& Node::sec_label_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.sec_label_stmt) - return _internal_sec_label_stmt(); +inline const ::pg_query::AlterExtensionStmt& Node::alter_extension_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_extension_stmt) + return _internal_alter_extension_stmt(); } -inline ::pg_query::SecLabelStmt* Node::unsafe_arena_release_sec_label_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.sec_label_stmt) - if (_internal_has_sec_label_stmt()) { +inline ::pg_query::AlterExtensionStmt* Node::unsafe_arena_release_alter_extension_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_extension_stmt) + if (node_case() == kAlterExtensionStmt) { clear_has_node(); - ::pg_query::SecLabelStmt* temp = _impl_.node_.sec_label_stmt_; - _impl_.node_.sec_label_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_extension_stmt_; + _impl_.node_.alter_extension_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_sec_label_stmt(::pg_query::SecLabelStmt* sec_label_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_extension_stmt(::pg_query::AlterExtensionStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (sec_label_stmt) { - set_has_sec_label_stmt(); - _impl_.node_.sec_label_stmt_ = sec_label_stmt; + if (value) { + set_has_alter_extension_stmt(); + _impl_.node_.alter_extension_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.sec_label_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_extension_stmt) } -inline ::pg_query::SecLabelStmt* Node::_internal_mutable_sec_label_stmt() { - if (!_internal_has_sec_label_stmt()) { +inline ::pg_query::AlterExtensionStmt* Node::_internal_mutable_alter_extension_stmt() { + if (node_case() != kAlterExtensionStmt) { clear_node(); - set_has_sec_label_stmt(); - _impl_.node_.sec_label_stmt_ = CreateMaybeMessage< ::pg_query::SecLabelStmt >(GetArenaForAllocation()); + set_has_alter_extension_stmt(); + _impl_.node_.alter_extension_stmt_ = CreateMaybeMessage<::pg_query::AlterExtensionStmt>(GetArena()); } - return _impl_.node_.sec_label_stmt_; + return _impl_.node_.alter_extension_stmt_; } -inline ::pg_query::SecLabelStmt* Node::mutable_sec_label_stmt() { - ::pg_query::SecLabelStmt* _msg = _internal_mutable_sec_label_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.sec_label_stmt) +inline ::pg_query::AlterExtensionStmt* Node::mutable_alter_extension_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterExtensionStmt* _msg = _internal_mutable_alter_extension_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_extension_stmt) return _msg; } -// .pg_query.CreateForeignTableStmt create_foreign_table_stmt = 148 [json_name = "CreateForeignTableStmt"]; -inline bool Node::_internal_has_create_foreign_table_stmt() const { - return node_case() == kCreateForeignTableStmt; +// .pg_query.AlterExtensionContentsStmt alter_extension_contents_stmt = 146 [json_name = "AlterExtensionContentsStmt"]; +inline bool Node::has_alter_extension_contents_stmt() const { + return node_case() == kAlterExtensionContentsStmt; } -inline bool Node::has_create_foreign_table_stmt() const { - return _internal_has_create_foreign_table_stmt(); +inline bool Node::_internal_has_alter_extension_contents_stmt() const { + return node_case() == kAlterExtensionContentsStmt; } -inline void Node::set_has_create_foreign_table_stmt() { - _impl_._oneof_case_[0] = kCreateForeignTableStmt; +inline void Node::set_has_alter_extension_contents_stmt() { + _impl_._oneof_case_[0] = kAlterExtensionContentsStmt; } -inline void Node::clear_create_foreign_table_stmt() { - if (_internal_has_create_foreign_table_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_foreign_table_stmt_; +inline void Node::clear_alter_extension_contents_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterExtensionContentsStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_extension_contents_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateForeignTableStmt* Node::release_create_foreign_table_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_foreign_table_stmt) - if (_internal_has_create_foreign_table_stmt()) { +inline ::pg_query::AlterExtensionContentsStmt* Node::release_alter_extension_contents_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_extension_contents_stmt) + if (node_case() == kAlterExtensionContentsStmt) { clear_has_node(); - ::pg_query::CreateForeignTableStmt* temp = _impl_.node_.create_foreign_table_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_extension_contents_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_foreign_table_stmt_ = nullptr; + _impl_.node_.alter_extension_contents_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateForeignTableStmt& Node::_internal_create_foreign_table_stmt() const { - return _internal_has_create_foreign_table_stmt() - ? *_impl_.node_.create_foreign_table_stmt_ - : reinterpret_cast< ::pg_query::CreateForeignTableStmt&>(::pg_query::_CreateForeignTableStmt_default_instance_); +inline const ::pg_query::AlterExtensionContentsStmt& Node::_internal_alter_extension_contents_stmt() const { + return node_case() == kAlterExtensionContentsStmt ? *_impl_.node_.alter_extension_contents_stmt_ : reinterpret_cast<::pg_query::AlterExtensionContentsStmt&>(::pg_query::_AlterExtensionContentsStmt_default_instance_); } -inline const ::pg_query::CreateForeignTableStmt& Node::create_foreign_table_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_foreign_table_stmt) - return _internal_create_foreign_table_stmt(); +inline const ::pg_query::AlterExtensionContentsStmt& Node::alter_extension_contents_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_extension_contents_stmt) + return _internal_alter_extension_contents_stmt(); } -inline ::pg_query::CreateForeignTableStmt* Node::unsafe_arena_release_create_foreign_table_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_foreign_table_stmt) - if (_internal_has_create_foreign_table_stmt()) { +inline ::pg_query::AlterExtensionContentsStmt* Node::unsafe_arena_release_alter_extension_contents_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_extension_contents_stmt) + if (node_case() == kAlterExtensionContentsStmt) { clear_has_node(); - ::pg_query::CreateForeignTableStmt* temp = _impl_.node_.create_foreign_table_stmt_; - _impl_.node_.create_foreign_table_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_extension_contents_stmt_; + _impl_.node_.alter_extension_contents_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_foreign_table_stmt(::pg_query::CreateForeignTableStmt* create_foreign_table_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_extension_contents_stmt(::pg_query::AlterExtensionContentsStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_foreign_table_stmt) { - set_has_create_foreign_table_stmt(); - _impl_.node_.create_foreign_table_stmt_ = create_foreign_table_stmt; + if (value) { + set_has_alter_extension_contents_stmt(); + _impl_.node_.alter_extension_contents_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_foreign_table_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_extension_contents_stmt) } -inline ::pg_query::CreateForeignTableStmt* Node::_internal_mutable_create_foreign_table_stmt() { - if (!_internal_has_create_foreign_table_stmt()) { +inline ::pg_query::AlterExtensionContentsStmt* Node::_internal_mutable_alter_extension_contents_stmt() { + if (node_case() != kAlterExtensionContentsStmt) { clear_node(); - set_has_create_foreign_table_stmt(); - _impl_.node_.create_foreign_table_stmt_ = CreateMaybeMessage< ::pg_query::CreateForeignTableStmt >(GetArenaForAllocation()); + set_has_alter_extension_contents_stmt(); + _impl_.node_.alter_extension_contents_stmt_ = CreateMaybeMessage<::pg_query::AlterExtensionContentsStmt>(GetArena()); } - return _impl_.node_.create_foreign_table_stmt_; + return _impl_.node_.alter_extension_contents_stmt_; } -inline ::pg_query::CreateForeignTableStmt* Node::mutable_create_foreign_table_stmt() { - ::pg_query::CreateForeignTableStmt* _msg = _internal_mutable_create_foreign_table_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_foreign_table_stmt) +inline ::pg_query::AlterExtensionContentsStmt* Node::mutable_alter_extension_contents_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterExtensionContentsStmt* _msg = _internal_mutable_alter_extension_contents_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_extension_contents_stmt) return _msg; } -// .pg_query.ImportForeignSchemaStmt import_foreign_schema_stmt = 149 [json_name = "ImportForeignSchemaStmt"]; -inline bool Node::_internal_has_import_foreign_schema_stmt() const { - return node_case() == kImportForeignSchemaStmt; +// .pg_query.CreateFdwStmt create_fdw_stmt = 147 [json_name = "CreateFdwStmt"]; +inline bool Node::has_create_fdw_stmt() const { + return node_case() == kCreateFdwStmt; } -inline bool Node::has_import_foreign_schema_stmt() const { - return _internal_has_import_foreign_schema_stmt(); +inline bool Node::_internal_has_create_fdw_stmt() const { + return node_case() == kCreateFdwStmt; } -inline void Node::set_has_import_foreign_schema_stmt() { - _impl_._oneof_case_[0] = kImportForeignSchemaStmt; +inline void Node::set_has_create_fdw_stmt() { + _impl_._oneof_case_[0] = kCreateFdwStmt; } -inline void Node::clear_import_foreign_schema_stmt() { - if (_internal_has_import_foreign_schema_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.import_foreign_schema_stmt_; +inline void Node::clear_create_fdw_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateFdwStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_fdw_stmt_; } clear_has_node(); } } -inline ::pg_query::ImportForeignSchemaStmt* Node::release_import_foreign_schema_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.import_foreign_schema_stmt) - if (_internal_has_import_foreign_schema_stmt()) { +inline ::pg_query::CreateFdwStmt* Node::release_create_fdw_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_fdw_stmt) + if (node_case() == kCreateFdwStmt) { clear_has_node(); - ::pg_query::ImportForeignSchemaStmt* temp = _impl_.node_.import_foreign_schema_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_fdw_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.import_foreign_schema_stmt_ = nullptr; + _impl_.node_.create_fdw_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ImportForeignSchemaStmt& Node::_internal_import_foreign_schema_stmt() const { - return _internal_has_import_foreign_schema_stmt() - ? *_impl_.node_.import_foreign_schema_stmt_ - : reinterpret_cast< ::pg_query::ImportForeignSchemaStmt&>(::pg_query::_ImportForeignSchemaStmt_default_instance_); +inline const ::pg_query::CreateFdwStmt& Node::_internal_create_fdw_stmt() const { + return node_case() == kCreateFdwStmt ? *_impl_.node_.create_fdw_stmt_ : reinterpret_cast<::pg_query::CreateFdwStmt&>(::pg_query::_CreateFdwStmt_default_instance_); } -inline const ::pg_query::ImportForeignSchemaStmt& Node::import_foreign_schema_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.import_foreign_schema_stmt) - return _internal_import_foreign_schema_stmt(); +inline const ::pg_query::CreateFdwStmt& Node::create_fdw_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_fdw_stmt) + return _internal_create_fdw_stmt(); } -inline ::pg_query::ImportForeignSchemaStmt* Node::unsafe_arena_release_import_foreign_schema_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.import_foreign_schema_stmt) - if (_internal_has_import_foreign_schema_stmt()) { +inline ::pg_query::CreateFdwStmt* Node::unsafe_arena_release_create_fdw_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_fdw_stmt) + if (node_case() == kCreateFdwStmt) { clear_has_node(); - ::pg_query::ImportForeignSchemaStmt* temp = _impl_.node_.import_foreign_schema_stmt_; - _impl_.node_.import_foreign_schema_stmt_ = nullptr; + auto* temp = _impl_.node_.create_fdw_stmt_; + _impl_.node_.create_fdw_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_import_foreign_schema_stmt(::pg_query::ImportForeignSchemaStmt* import_foreign_schema_stmt) { +inline void Node::unsafe_arena_set_allocated_create_fdw_stmt(::pg_query::CreateFdwStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (import_foreign_schema_stmt) { - set_has_import_foreign_schema_stmt(); - _impl_.node_.import_foreign_schema_stmt_ = import_foreign_schema_stmt; + if (value) { + set_has_create_fdw_stmt(); + _impl_.node_.create_fdw_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.import_foreign_schema_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_fdw_stmt) } -inline ::pg_query::ImportForeignSchemaStmt* Node::_internal_mutable_import_foreign_schema_stmt() { - if (!_internal_has_import_foreign_schema_stmt()) { +inline ::pg_query::CreateFdwStmt* Node::_internal_mutable_create_fdw_stmt() { + if (node_case() != kCreateFdwStmt) { clear_node(); - set_has_import_foreign_schema_stmt(); - _impl_.node_.import_foreign_schema_stmt_ = CreateMaybeMessage< ::pg_query::ImportForeignSchemaStmt >(GetArenaForAllocation()); + set_has_create_fdw_stmt(); + _impl_.node_.create_fdw_stmt_ = CreateMaybeMessage<::pg_query::CreateFdwStmt>(GetArena()); } - return _impl_.node_.import_foreign_schema_stmt_; + return _impl_.node_.create_fdw_stmt_; } -inline ::pg_query::ImportForeignSchemaStmt* Node::mutable_import_foreign_schema_stmt() { - ::pg_query::ImportForeignSchemaStmt* _msg = _internal_mutable_import_foreign_schema_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.import_foreign_schema_stmt) +inline ::pg_query::CreateFdwStmt* Node::mutable_create_fdw_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateFdwStmt* _msg = _internal_mutable_create_fdw_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_fdw_stmt) return _msg; } -// .pg_query.CreateExtensionStmt create_extension_stmt = 150 [json_name = "CreateExtensionStmt"]; -inline bool Node::_internal_has_create_extension_stmt() const { - return node_case() == kCreateExtensionStmt; +// .pg_query.AlterFdwStmt alter_fdw_stmt = 148 [json_name = "AlterFdwStmt"]; +inline bool Node::has_alter_fdw_stmt() const { + return node_case() == kAlterFdwStmt; } -inline bool Node::has_create_extension_stmt() const { - return _internal_has_create_extension_stmt(); +inline bool Node::_internal_has_alter_fdw_stmt() const { + return node_case() == kAlterFdwStmt; } -inline void Node::set_has_create_extension_stmt() { - _impl_._oneof_case_[0] = kCreateExtensionStmt; +inline void Node::set_has_alter_fdw_stmt() { + _impl_._oneof_case_[0] = kAlterFdwStmt; } -inline void Node::clear_create_extension_stmt() { - if (_internal_has_create_extension_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_extension_stmt_; +inline void Node::clear_alter_fdw_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterFdwStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_fdw_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateExtensionStmt* Node::release_create_extension_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_extension_stmt) - if (_internal_has_create_extension_stmt()) { +inline ::pg_query::AlterFdwStmt* Node::release_alter_fdw_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_fdw_stmt) + if (node_case() == kAlterFdwStmt) { clear_has_node(); - ::pg_query::CreateExtensionStmt* temp = _impl_.node_.create_extension_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_fdw_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_extension_stmt_ = nullptr; + _impl_.node_.alter_fdw_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateExtensionStmt& Node::_internal_create_extension_stmt() const { - return _internal_has_create_extension_stmt() - ? *_impl_.node_.create_extension_stmt_ - : reinterpret_cast< ::pg_query::CreateExtensionStmt&>(::pg_query::_CreateExtensionStmt_default_instance_); +inline const ::pg_query::AlterFdwStmt& Node::_internal_alter_fdw_stmt() const { + return node_case() == kAlterFdwStmt ? *_impl_.node_.alter_fdw_stmt_ : reinterpret_cast<::pg_query::AlterFdwStmt&>(::pg_query::_AlterFdwStmt_default_instance_); } -inline const ::pg_query::CreateExtensionStmt& Node::create_extension_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_extension_stmt) - return _internal_create_extension_stmt(); +inline const ::pg_query::AlterFdwStmt& Node::alter_fdw_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_fdw_stmt) + return _internal_alter_fdw_stmt(); } -inline ::pg_query::CreateExtensionStmt* Node::unsafe_arena_release_create_extension_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_extension_stmt) - if (_internal_has_create_extension_stmt()) { +inline ::pg_query::AlterFdwStmt* Node::unsafe_arena_release_alter_fdw_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_fdw_stmt) + if (node_case() == kAlterFdwStmt) { clear_has_node(); - ::pg_query::CreateExtensionStmt* temp = _impl_.node_.create_extension_stmt_; - _impl_.node_.create_extension_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_fdw_stmt_; + _impl_.node_.alter_fdw_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_extension_stmt(::pg_query::CreateExtensionStmt* create_extension_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_fdw_stmt(::pg_query::AlterFdwStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_extension_stmt) { - set_has_create_extension_stmt(); - _impl_.node_.create_extension_stmt_ = create_extension_stmt; + if (value) { + set_has_alter_fdw_stmt(); + _impl_.node_.alter_fdw_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_extension_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_fdw_stmt) } -inline ::pg_query::CreateExtensionStmt* Node::_internal_mutable_create_extension_stmt() { - if (!_internal_has_create_extension_stmt()) { +inline ::pg_query::AlterFdwStmt* Node::_internal_mutable_alter_fdw_stmt() { + if (node_case() != kAlterFdwStmt) { clear_node(); - set_has_create_extension_stmt(); - _impl_.node_.create_extension_stmt_ = CreateMaybeMessage< ::pg_query::CreateExtensionStmt >(GetArenaForAllocation()); + set_has_alter_fdw_stmt(); + _impl_.node_.alter_fdw_stmt_ = CreateMaybeMessage<::pg_query::AlterFdwStmt>(GetArena()); } - return _impl_.node_.create_extension_stmt_; + return _impl_.node_.alter_fdw_stmt_; } -inline ::pg_query::CreateExtensionStmt* Node::mutable_create_extension_stmt() { - ::pg_query::CreateExtensionStmt* _msg = _internal_mutable_create_extension_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_extension_stmt) +inline ::pg_query::AlterFdwStmt* Node::mutable_alter_fdw_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterFdwStmt* _msg = _internal_mutable_alter_fdw_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_fdw_stmt) return _msg; } -// .pg_query.AlterExtensionStmt alter_extension_stmt = 151 [json_name = "AlterExtensionStmt"]; -inline bool Node::_internal_has_alter_extension_stmt() const { - return node_case() == kAlterExtensionStmt; +// .pg_query.CreateForeignServerStmt create_foreign_server_stmt = 149 [json_name = "CreateForeignServerStmt"]; +inline bool Node::has_create_foreign_server_stmt() const { + return node_case() == kCreateForeignServerStmt; } -inline bool Node::has_alter_extension_stmt() const { - return _internal_has_alter_extension_stmt(); +inline bool Node::_internal_has_create_foreign_server_stmt() const { + return node_case() == kCreateForeignServerStmt; } -inline void Node::set_has_alter_extension_stmt() { - _impl_._oneof_case_[0] = kAlterExtensionStmt; +inline void Node::set_has_create_foreign_server_stmt() { + _impl_._oneof_case_[0] = kCreateForeignServerStmt; } -inline void Node::clear_alter_extension_stmt() { - if (_internal_has_alter_extension_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_extension_stmt_; +inline void Node::clear_create_foreign_server_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateForeignServerStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_foreign_server_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterExtensionStmt* Node::release_alter_extension_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_extension_stmt) - if (_internal_has_alter_extension_stmt()) { +inline ::pg_query::CreateForeignServerStmt* Node::release_create_foreign_server_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_foreign_server_stmt) + if (node_case() == kCreateForeignServerStmt) { clear_has_node(); - ::pg_query::AlterExtensionStmt* temp = _impl_.node_.alter_extension_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_foreign_server_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_extension_stmt_ = nullptr; + _impl_.node_.create_foreign_server_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterExtensionStmt& Node::_internal_alter_extension_stmt() const { - return _internal_has_alter_extension_stmt() - ? *_impl_.node_.alter_extension_stmt_ - : reinterpret_cast< ::pg_query::AlterExtensionStmt&>(::pg_query::_AlterExtensionStmt_default_instance_); +inline const ::pg_query::CreateForeignServerStmt& Node::_internal_create_foreign_server_stmt() const { + return node_case() == kCreateForeignServerStmt ? *_impl_.node_.create_foreign_server_stmt_ : reinterpret_cast<::pg_query::CreateForeignServerStmt&>(::pg_query::_CreateForeignServerStmt_default_instance_); } -inline const ::pg_query::AlterExtensionStmt& Node::alter_extension_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_extension_stmt) - return _internal_alter_extension_stmt(); +inline const ::pg_query::CreateForeignServerStmt& Node::create_foreign_server_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_foreign_server_stmt) + return _internal_create_foreign_server_stmt(); } -inline ::pg_query::AlterExtensionStmt* Node::unsafe_arena_release_alter_extension_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_extension_stmt) - if (_internal_has_alter_extension_stmt()) { +inline ::pg_query::CreateForeignServerStmt* Node::unsafe_arena_release_create_foreign_server_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_foreign_server_stmt) + if (node_case() == kCreateForeignServerStmt) { clear_has_node(); - ::pg_query::AlterExtensionStmt* temp = _impl_.node_.alter_extension_stmt_; - _impl_.node_.alter_extension_stmt_ = nullptr; + auto* temp = _impl_.node_.create_foreign_server_stmt_; + _impl_.node_.create_foreign_server_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_extension_stmt(::pg_query::AlterExtensionStmt* alter_extension_stmt) { +inline void Node::unsafe_arena_set_allocated_create_foreign_server_stmt(::pg_query::CreateForeignServerStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_extension_stmt) { - set_has_alter_extension_stmt(); - _impl_.node_.alter_extension_stmt_ = alter_extension_stmt; + if (value) { + set_has_create_foreign_server_stmt(); + _impl_.node_.create_foreign_server_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_extension_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_foreign_server_stmt) } -inline ::pg_query::AlterExtensionStmt* Node::_internal_mutable_alter_extension_stmt() { - if (!_internal_has_alter_extension_stmt()) { +inline ::pg_query::CreateForeignServerStmt* Node::_internal_mutable_create_foreign_server_stmt() { + if (node_case() != kCreateForeignServerStmt) { clear_node(); - set_has_alter_extension_stmt(); - _impl_.node_.alter_extension_stmt_ = CreateMaybeMessage< ::pg_query::AlterExtensionStmt >(GetArenaForAllocation()); + set_has_create_foreign_server_stmt(); + _impl_.node_.create_foreign_server_stmt_ = CreateMaybeMessage<::pg_query::CreateForeignServerStmt>(GetArena()); } - return _impl_.node_.alter_extension_stmt_; + return _impl_.node_.create_foreign_server_stmt_; } -inline ::pg_query::AlterExtensionStmt* Node::mutable_alter_extension_stmt() { - ::pg_query::AlterExtensionStmt* _msg = _internal_mutable_alter_extension_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_extension_stmt) +inline ::pg_query::CreateForeignServerStmt* Node::mutable_create_foreign_server_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateForeignServerStmt* _msg = _internal_mutable_create_foreign_server_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_foreign_server_stmt) return _msg; } -// .pg_query.AlterExtensionContentsStmt alter_extension_contents_stmt = 152 [json_name = "AlterExtensionContentsStmt"]; -inline bool Node::_internal_has_alter_extension_contents_stmt() const { - return node_case() == kAlterExtensionContentsStmt; +// .pg_query.AlterForeignServerStmt alter_foreign_server_stmt = 150 [json_name = "AlterForeignServerStmt"]; +inline bool Node::has_alter_foreign_server_stmt() const { + return node_case() == kAlterForeignServerStmt; } -inline bool Node::has_alter_extension_contents_stmt() const { - return _internal_has_alter_extension_contents_stmt(); +inline bool Node::_internal_has_alter_foreign_server_stmt() const { + return node_case() == kAlterForeignServerStmt; } -inline void Node::set_has_alter_extension_contents_stmt() { - _impl_._oneof_case_[0] = kAlterExtensionContentsStmt; +inline void Node::set_has_alter_foreign_server_stmt() { + _impl_._oneof_case_[0] = kAlterForeignServerStmt; } -inline void Node::clear_alter_extension_contents_stmt() { - if (_internal_has_alter_extension_contents_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_extension_contents_stmt_; +inline void Node::clear_alter_foreign_server_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterForeignServerStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_foreign_server_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterExtensionContentsStmt* Node::release_alter_extension_contents_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_extension_contents_stmt) - if (_internal_has_alter_extension_contents_stmt()) { +inline ::pg_query::AlterForeignServerStmt* Node::release_alter_foreign_server_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_foreign_server_stmt) + if (node_case() == kAlterForeignServerStmt) { clear_has_node(); - ::pg_query::AlterExtensionContentsStmt* temp = _impl_.node_.alter_extension_contents_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_foreign_server_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_extension_contents_stmt_ = nullptr; + _impl_.node_.alter_foreign_server_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterExtensionContentsStmt& Node::_internal_alter_extension_contents_stmt() const { - return _internal_has_alter_extension_contents_stmt() - ? *_impl_.node_.alter_extension_contents_stmt_ - : reinterpret_cast< ::pg_query::AlterExtensionContentsStmt&>(::pg_query::_AlterExtensionContentsStmt_default_instance_); +inline const ::pg_query::AlterForeignServerStmt& Node::_internal_alter_foreign_server_stmt() const { + return node_case() == kAlterForeignServerStmt ? *_impl_.node_.alter_foreign_server_stmt_ : reinterpret_cast<::pg_query::AlterForeignServerStmt&>(::pg_query::_AlterForeignServerStmt_default_instance_); } -inline const ::pg_query::AlterExtensionContentsStmt& Node::alter_extension_contents_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_extension_contents_stmt) - return _internal_alter_extension_contents_stmt(); +inline const ::pg_query::AlterForeignServerStmt& Node::alter_foreign_server_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_foreign_server_stmt) + return _internal_alter_foreign_server_stmt(); } -inline ::pg_query::AlterExtensionContentsStmt* Node::unsafe_arena_release_alter_extension_contents_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_extension_contents_stmt) - if (_internal_has_alter_extension_contents_stmt()) { +inline ::pg_query::AlterForeignServerStmt* Node::unsafe_arena_release_alter_foreign_server_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_foreign_server_stmt) + if (node_case() == kAlterForeignServerStmt) { clear_has_node(); - ::pg_query::AlterExtensionContentsStmt* temp = _impl_.node_.alter_extension_contents_stmt_; - _impl_.node_.alter_extension_contents_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_foreign_server_stmt_; + _impl_.node_.alter_foreign_server_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_extension_contents_stmt(::pg_query::AlterExtensionContentsStmt* alter_extension_contents_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_foreign_server_stmt(::pg_query::AlterForeignServerStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_extension_contents_stmt) { - set_has_alter_extension_contents_stmt(); - _impl_.node_.alter_extension_contents_stmt_ = alter_extension_contents_stmt; + if (value) { + set_has_alter_foreign_server_stmt(); + _impl_.node_.alter_foreign_server_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_extension_contents_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_foreign_server_stmt) } -inline ::pg_query::AlterExtensionContentsStmt* Node::_internal_mutable_alter_extension_contents_stmt() { - if (!_internal_has_alter_extension_contents_stmt()) { +inline ::pg_query::AlterForeignServerStmt* Node::_internal_mutable_alter_foreign_server_stmt() { + if (node_case() != kAlterForeignServerStmt) { clear_node(); - set_has_alter_extension_contents_stmt(); - _impl_.node_.alter_extension_contents_stmt_ = CreateMaybeMessage< ::pg_query::AlterExtensionContentsStmt >(GetArenaForAllocation()); + set_has_alter_foreign_server_stmt(); + _impl_.node_.alter_foreign_server_stmt_ = CreateMaybeMessage<::pg_query::AlterForeignServerStmt>(GetArena()); } - return _impl_.node_.alter_extension_contents_stmt_; + return _impl_.node_.alter_foreign_server_stmt_; } -inline ::pg_query::AlterExtensionContentsStmt* Node::mutable_alter_extension_contents_stmt() { - ::pg_query::AlterExtensionContentsStmt* _msg = _internal_mutable_alter_extension_contents_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_extension_contents_stmt) +inline ::pg_query::AlterForeignServerStmt* Node::mutable_alter_foreign_server_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterForeignServerStmt* _msg = _internal_mutable_alter_foreign_server_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_foreign_server_stmt) return _msg; } -// .pg_query.CreateEventTrigStmt create_event_trig_stmt = 153 [json_name = "CreateEventTrigStmt"]; -inline bool Node::_internal_has_create_event_trig_stmt() const { - return node_case() == kCreateEventTrigStmt; +// .pg_query.CreateForeignTableStmt create_foreign_table_stmt = 151 [json_name = "CreateForeignTableStmt"]; +inline bool Node::has_create_foreign_table_stmt() const { + return node_case() == kCreateForeignTableStmt; } -inline bool Node::has_create_event_trig_stmt() const { - return _internal_has_create_event_trig_stmt(); +inline bool Node::_internal_has_create_foreign_table_stmt() const { + return node_case() == kCreateForeignTableStmt; } -inline void Node::set_has_create_event_trig_stmt() { - _impl_._oneof_case_[0] = kCreateEventTrigStmt; +inline void Node::set_has_create_foreign_table_stmt() { + _impl_._oneof_case_[0] = kCreateForeignTableStmt; } -inline void Node::clear_create_event_trig_stmt() { - if (_internal_has_create_event_trig_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_event_trig_stmt_; +inline void Node::clear_create_foreign_table_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateForeignTableStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_foreign_table_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateEventTrigStmt* Node::release_create_event_trig_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_event_trig_stmt) - if (_internal_has_create_event_trig_stmt()) { +inline ::pg_query::CreateForeignTableStmt* Node::release_create_foreign_table_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_foreign_table_stmt) + if (node_case() == kCreateForeignTableStmt) { clear_has_node(); - ::pg_query::CreateEventTrigStmt* temp = _impl_.node_.create_event_trig_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_foreign_table_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_event_trig_stmt_ = nullptr; + _impl_.node_.create_foreign_table_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateEventTrigStmt& Node::_internal_create_event_trig_stmt() const { - return _internal_has_create_event_trig_stmt() - ? *_impl_.node_.create_event_trig_stmt_ - : reinterpret_cast< ::pg_query::CreateEventTrigStmt&>(::pg_query::_CreateEventTrigStmt_default_instance_); +inline const ::pg_query::CreateForeignTableStmt& Node::_internal_create_foreign_table_stmt() const { + return node_case() == kCreateForeignTableStmt ? *_impl_.node_.create_foreign_table_stmt_ : reinterpret_cast<::pg_query::CreateForeignTableStmt&>(::pg_query::_CreateForeignTableStmt_default_instance_); } -inline const ::pg_query::CreateEventTrigStmt& Node::create_event_trig_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_event_trig_stmt) - return _internal_create_event_trig_stmt(); +inline const ::pg_query::CreateForeignTableStmt& Node::create_foreign_table_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_foreign_table_stmt) + return _internal_create_foreign_table_stmt(); } -inline ::pg_query::CreateEventTrigStmt* Node::unsafe_arena_release_create_event_trig_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_event_trig_stmt) - if (_internal_has_create_event_trig_stmt()) { +inline ::pg_query::CreateForeignTableStmt* Node::unsafe_arena_release_create_foreign_table_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_foreign_table_stmt) + if (node_case() == kCreateForeignTableStmt) { clear_has_node(); - ::pg_query::CreateEventTrigStmt* temp = _impl_.node_.create_event_trig_stmt_; - _impl_.node_.create_event_trig_stmt_ = nullptr; + auto* temp = _impl_.node_.create_foreign_table_stmt_; + _impl_.node_.create_foreign_table_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_event_trig_stmt(::pg_query::CreateEventTrigStmt* create_event_trig_stmt) { +inline void Node::unsafe_arena_set_allocated_create_foreign_table_stmt(::pg_query::CreateForeignTableStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_event_trig_stmt) { - set_has_create_event_trig_stmt(); - _impl_.node_.create_event_trig_stmt_ = create_event_trig_stmt; + if (value) { + set_has_create_foreign_table_stmt(); + _impl_.node_.create_foreign_table_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_event_trig_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_foreign_table_stmt) } -inline ::pg_query::CreateEventTrigStmt* Node::_internal_mutable_create_event_trig_stmt() { - if (!_internal_has_create_event_trig_stmt()) { +inline ::pg_query::CreateForeignTableStmt* Node::_internal_mutable_create_foreign_table_stmt() { + if (node_case() != kCreateForeignTableStmt) { clear_node(); - set_has_create_event_trig_stmt(); - _impl_.node_.create_event_trig_stmt_ = CreateMaybeMessage< ::pg_query::CreateEventTrigStmt >(GetArenaForAllocation()); + set_has_create_foreign_table_stmt(); + _impl_.node_.create_foreign_table_stmt_ = CreateMaybeMessage<::pg_query::CreateForeignTableStmt>(GetArena()); } - return _impl_.node_.create_event_trig_stmt_; + return _impl_.node_.create_foreign_table_stmt_; } -inline ::pg_query::CreateEventTrigStmt* Node::mutable_create_event_trig_stmt() { - ::pg_query::CreateEventTrigStmt* _msg = _internal_mutable_create_event_trig_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_event_trig_stmt) +inline ::pg_query::CreateForeignTableStmt* Node::mutable_create_foreign_table_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateForeignTableStmt* _msg = _internal_mutable_create_foreign_table_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_foreign_table_stmt) return _msg; } -// .pg_query.AlterEventTrigStmt alter_event_trig_stmt = 154 [json_name = "AlterEventTrigStmt"]; -inline bool Node::_internal_has_alter_event_trig_stmt() const { - return node_case() == kAlterEventTrigStmt; +// .pg_query.CreateUserMappingStmt create_user_mapping_stmt = 152 [json_name = "CreateUserMappingStmt"]; +inline bool Node::has_create_user_mapping_stmt() const { + return node_case() == kCreateUserMappingStmt; } -inline bool Node::has_alter_event_trig_stmt() const { - return _internal_has_alter_event_trig_stmt(); +inline bool Node::_internal_has_create_user_mapping_stmt() const { + return node_case() == kCreateUserMappingStmt; } -inline void Node::set_has_alter_event_trig_stmt() { - _impl_._oneof_case_[0] = kAlterEventTrigStmt; +inline void Node::set_has_create_user_mapping_stmt() { + _impl_._oneof_case_[0] = kCreateUserMappingStmt; } -inline void Node::clear_alter_event_trig_stmt() { - if (_internal_has_alter_event_trig_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_event_trig_stmt_; +inline void Node::clear_create_user_mapping_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateUserMappingStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_user_mapping_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterEventTrigStmt* Node::release_alter_event_trig_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_event_trig_stmt) - if (_internal_has_alter_event_trig_stmt()) { +inline ::pg_query::CreateUserMappingStmt* Node::release_create_user_mapping_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_user_mapping_stmt) + if (node_case() == kCreateUserMappingStmt) { clear_has_node(); - ::pg_query::AlterEventTrigStmt* temp = _impl_.node_.alter_event_trig_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_user_mapping_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_event_trig_stmt_ = nullptr; + _impl_.node_.create_user_mapping_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterEventTrigStmt& Node::_internal_alter_event_trig_stmt() const { - return _internal_has_alter_event_trig_stmt() - ? *_impl_.node_.alter_event_trig_stmt_ - : reinterpret_cast< ::pg_query::AlterEventTrigStmt&>(::pg_query::_AlterEventTrigStmt_default_instance_); +inline const ::pg_query::CreateUserMappingStmt& Node::_internal_create_user_mapping_stmt() const { + return node_case() == kCreateUserMappingStmt ? *_impl_.node_.create_user_mapping_stmt_ : reinterpret_cast<::pg_query::CreateUserMappingStmt&>(::pg_query::_CreateUserMappingStmt_default_instance_); } -inline const ::pg_query::AlterEventTrigStmt& Node::alter_event_trig_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_event_trig_stmt) - return _internal_alter_event_trig_stmt(); +inline const ::pg_query::CreateUserMappingStmt& Node::create_user_mapping_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_user_mapping_stmt) + return _internal_create_user_mapping_stmt(); } -inline ::pg_query::AlterEventTrigStmt* Node::unsafe_arena_release_alter_event_trig_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_event_trig_stmt) - if (_internal_has_alter_event_trig_stmt()) { +inline ::pg_query::CreateUserMappingStmt* Node::unsafe_arena_release_create_user_mapping_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_user_mapping_stmt) + if (node_case() == kCreateUserMappingStmt) { clear_has_node(); - ::pg_query::AlterEventTrigStmt* temp = _impl_.node_.alter_event_trig_stmt_; - _impl_.node_.alter_event_trig_stmt_ = nullptr; + auto* temp = _impl_.node_.create_user_mapping_stmt_; + _impl_.node_.create_user_mapping_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_event_trig_stmt(::pg_query::AlterEventTrigStmt* alter_event_trig_stmt) { +inline void Node::unsafe_arena_set_allocated_create_user_mapping_stmt(::pg_query::CreateUserMappingStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_event_trig_stmt) { - set_has_alter_event_trig_stmt(); - _impl_.node_.alter_event_trig_stmt_ = alter_event_trig_stmt; + if (value) { + set_has_create_user_mapping_stmt(); + _impl_.node_.create_user_mapping_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_event_trig_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_user_mapping_stmt) } -inline ::pg_query::AlterEventTrigStmt* Node::_internal_mutable_alter_event_trig_stmt() { - if (!_internal_has_alter_event_trig_stmt()) { +inline ::pg_query::CreateUserMappingStmt* Node::_internal_mutable_create_user_mapping_stmt() { + if (node_case() != kCreateUserMappingStmt) { clear_node(); - set_has_alter_event_trig_stmt(); - _impl_.node_.alter_event_trig_stmt_ = CreateMaybeMessage< ::pg_query::AlterEventTrigStmt >(GetArenaForAllocation()); + set_has_create_user_mapping_stmt(); + _impl_.node_.create_user_mapping_stmt_ = CreateMaybeMessage<::pg_query::CreateUserMappingStmt>(GetArena()); } - return _impl_.node_.alter_event_trig_stmt_; + return _impl_.node_.create_user_mapping_stmt_; } -inline ::pg_query::AlterEventTrigStmt* Node::mutable_alter_event_trig_stmt() { - ::pg_query::AlterEventTrigStmt* _msg = _internal_mutable_alter_event_trig_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_event_trig_stmt) +inline ::pg_query::CreateUserMappingStmt* Node::mutable_create_user_mapping_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateUserMappingStmt* _msg = _internal_mutable_create_user_mapping_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_user_mapping_stmt) return _msg; } -// .pg_query.RefreshMatViewStmt refresh_mat_view_stmt = 155 [json_name = "RefreshMatViewStmt"]; -inline bool Node::_internal_has_refresh_mat_view_stmt() const { - return node_case() == kRefreshMatViewStmt; +// .pg_query.AlterUserMappingStmt alter_user_mapping_stmt = 153 [json_name = "AlterUserMappingStmt"]; +inline bool Node::has_alter_user_mapping_stmt() const { + return node_case() == kAlterUserMappingStmt; } -inline bool Node::has_refresh_mat_view_stmt() const { - return _internal_has_refresh_mat_view_stmt(); +inline bool Node::_internal_has_alter_user_mapping_stmt() const { + return node_case() == kAlterUserMappingStmt; } -inline void Node::set_has_refresh_mat_view_stmt() { - _impl_._oneof_case_[0] = kRefreshMatViewStmt; +inline void Node::set_has_alter_user_mapping_stmt() { + _impl_._oneof_case_[0] = kAlterUserMappingStmt; } -inline void Node::clear_refresh_mat_view_stmt() { - if (_internal_has_refresh_mat_view_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.refresh_mat_view_stmt_; +inline void Node::clear_alter_user_mapping_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterUserMappingStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_user_mapping_stmt_; } clear_has_node(); } } -inline ::pg_query::RefreshMatViewStmt* Node::release_refresh_mat_view_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.refresh_mat_view_stmt) - if (_internal_has_refresh_mat_view_stmt()) { +inline ::pg_query::AlterUserMappingStmt* Node::release_alter_user_mapping_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_user_mapping_stmt) + if (node_case() == kAlterUserMappingStmt) { clear_has_node(); - ::pg_query::RefreshMatViewStmt* temp = _impl_.node_.refresh_mat_view_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_user_mapping_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.refresh_mat_view_stmt_ = nullptr; + _impl_.node_.alter_user_mapping_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RefreshMatViewStmt& Node::_internal_refresh_mat_view_stmt() const { - return _internal_has_refresh_mat_view_stmt() - ? *_impl_.node_.refresh_mat_view_stmt_ - : reinterpret_cast< ::pg_query::RefreshMatViewStmt&>(::pg_query::_RefreshMatViewStmt_default_instance_); +inline const ::pg_query::AlterUserMappingStmt& Node::_internal_alter_user_mapping_stmt() const { + return node_case() == kAlterUserMappingStmt ? *_impl_.node_.alter_user_mapping_stmt_ : reinterpret_cast<::pg_query::AlterUserMappingStmt&>(::pg_query::_AlterUserMappingStmt_default_instance_); } -inline const ::pg_query::RefreshMatViewStmt& Node::refresh_mat_view_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.refresh_mat_view_stmt) - return _internal_refresh_mat_view_stmt(); +inline const ::pg_query::AlterUserMappingStmt& Node::alter_user_mapping_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_user_mapping_stmt) + return _internal_alter_user_mapping_stmt(); } -inline ::pg_query::RefreshMatViewStmt* Node::unsafe_arena_release_refresh_mat_view_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.refresh_mat_view_stmt) - if (_internal_has_refresh_mat_view_stmt()) { +inline ::pg_query::AlterUserMappingStmt* Node::unsafe_arena_release_alter_user_mapping_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_user_mapping_stmt) + if (node_case() == kAlterUserMappingStmt) { clear_has_node(); - ::pg_query::RefreshMatViewStmt* temp = _impl_.node_.refresh_mat_view_stmt_; - _impl_.node_.refresh_mat_view_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_user_mapping_stmt_; + _impl_.node_.alter_user_mapping_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_refresh_mat_view_stmt(::pg_query::RefreshMatViewStmt* refresh_mat_view_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_user_mapping_stmt(::pg_query::AlterUserMappingStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (refresh_mat_view_stmt) { - set_has_refresh_mat_view_stmt(); - _impl_.node_.refresh_mat_view_stmt_ = refresh_mat_view_stmt; + if (value) { + set_has_alter_user_mapping_stmt(); + _impl_.node_.alter_user_mapping_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.refresh_mat_view_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_user_mapping_stmt) } -inline ::pg_query::RefreshMatViewStmt* Node::_internal_mutable_refresh_mat_view_stmt() { - if (!_internal_has_refresh_mat_view_stmt()) { +inline ::pg_query::AlterUserMappingStmt* Node::_internal_mutable_alter_user_mapping_stmt() { + if (node_case() != kAlterUserMappingStmt) { clear_node(); - set_has_refresh_mat_view_stmt(); - _impl_.node_.refresh_mat_view_stmt_ = CreateMaybeMessage< ::pg_query::RefreshMatViewStmt >(GetArenaForAllocation()); + set_has_alter_user_mapping_stmt(); + _impl_.node_.alter_user_mapping_stmt_ = CreateMaybeMessage<::pg_query::AlterUserMappingStmt>(GetArena()); } - return _impl_.node_.refresh_mat_view_stmt_; + return _impl_.node_.alter_user_mapping_stmt_; } -inline ::pg_query::RefreshMatViewStmt* Node::mutable_refresh_mat_view_stmt() { - ::pg_query::RefreshMatViewStmt* _msg = _internal_mutable_refresh_mat_view_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.refresh_mat_view_stmt) +inline ::pg_query::AlterUserMappingStmt* Node::mutable_alter_user_mapping_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterUserMappingStmt* _msg = _internal_mutable_alter_user_mapping_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_user_mapping_stmt) return _msg; } -// .pg_query.ReplicaIdentityStmt replica_identity_stmt = 156 [json_name = "ReplicaIdentityStmt"]; -inline bool Node::_internal_has_replica_identity_stmt() const { - return node_case() == kReplicaIdentityStmt; +// .pg_query.DropUserMappingStmt drop_user_mapping_stmt = 154 [json_name = "DropUserMappingStmt"]; +inline bool Node::has_drop_user_mapping_stmt() const { + return node_case() == kDropUserMappingStmt; } -inline bool Node::has_replica_identity_stmt() const { - return _internal_has_replica_identity_stmt(); +inline bool Node::_internal_has_drop_user_mapping_stmt() const { + return node_case() == kDropUserMappingStmt; } -inline void Node::set_has_replica_identity_stmt() { - _impl_._oneof_case_[0] = kReplicaIdentityStmt; +inline void Node::set_has_drop_user_mapping_stmt() { + _impl_._oneof_case_[0] = kDropUserMappingStmt; } -inline void Node::clear_replica_identity_stmt() { - if (_internal_has_replica_identity_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.replica_identity_stmt_; +inline void Node::clear_drop_user_mapping_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDropUserMappingStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.drop_user_mapping_stmt_; } clear_has_node(); } } -inline ::pg_query::ReplicaIdentityStmt* Node::release_replica_identity_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.replica_identity_stmt) - if (_internal_has_replica_identity_stmt()) { +inline ::pg_query::DropUserMappingStmt* Node::release_drop_user_mapping_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.drop_user_mapping_stmt) + if (node_case() == kDropUserMappingStmt) { clear_has_node(); - ::pg_query::ReplicaIdentityStmt* temp = _impl_.node_.replica_identity_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.drop_user_mapping_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.replica_identity_stmt_ = nullptr; + _impl_.node_.drop_user_mapping_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ReplicaIdentityStmt& Node::_internal_replica_identity_stmt() const { - return _internal_has_replica_identity_stmt() - ? *_impl_.node_.replica_identity_stmt_ - : reinterpret_cast< ::pg_query::ReplicaIdentityStmt&>(::pg_query::_ReplicaIdentityStmt_default_instance_); +inline const ::pg_query::DropUserMappingStmt& Node::_internal_drop_user_mapping_stmt() const { + return node_case() == kDropUserMappingStmt ? *_impl_.node_.drop_user_mapping_stmt_ : reinterpret_cast<::pg_query::DropUserMappingStmt&>(::pg_query::_DropUserMappingStmt_default_instance_); } -inline const ::pg_query::ReplicaIdentityStmt& Node::replica_identity_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.replica_identity_stmt) - return _internal_replica_identity_stmt(); +inline const ::pg_query::DropUserMappingStmt& Node::drop_user_mapping_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.drop_user_mapping_stmt) + return _internal_drop_user_mapping_stmt(); } -inline ::pg_query::ReplicaIdentityStmt* Node::unsafe_arena_release_replica_identity_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.replica_identity_stmt) - if (_internal_has_replica_identity_stmt()) { +inline ::pg_query::DropUserMappingStmt* Node::unsafe_arena_release_drop_user_mapping_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_user_mapping_stmt) + if (node_case() == kDropUserMappingStmt) { clear_has_node(); - ::pg_query::ReplicaIdentityStmt* temp = _impl_.node_.replica_identity_stmt_; - _impl_.node_.replica_identity_stmt_ = nullptr; + auto* temp = _impl_.node_.drop_user_mapping_stmt_; + _impl_.node_.drop_user_mapping_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_replica_identity_stmt(::pg_query::ReplicaIdentityStmt* replica_identity_stmt) { +inline void Node::unsafe_arena_set_allocated_drop_user_mapping_stmt(::pg_query::DropUserMappingStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (replica_identity_stmt) { - set_has_replica_identity_stmt(); - _impl_.node_.replica_identity_stmt_ = replica_identity_stmt; + if (value) { + set_has_drop_user_mapping_stmt(); + _impl_.node_.drop_user_mapping_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.replica_identity_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_user_mapping_stmt) } -inline ::pg_query::ReplicaIdentityStmt* Node::_internal_mutable_replica_identity_stmt() { - if (!_internal_has_replica_identity_stmt()) { +inline ::pg_query::DropUserMappingStmt* Node::_internal_mutable_drop_user_mapping_stmt() { + if (node_case() != kDropUserMappingStmt) { clear_node(); - set_has_replica_identity_stmt(); - _impl_.node_.replica_identity_stmt_ = CreateMaybeMessage< ::pg_query::ReplicaIdentityStmt >(GetArenaForAllocation()); + set_has_drop_user_mapping_stmt(); + _impl_.node_.drop_user_mapping_stmt_ = CreateMaybeMessage<::pg_query::DropUserMappingStmt>(GetArena()); } - return _impl_.node_.replica_identity_stmt_; + return _impl_.node_.drop_user_mapping_stmt_; } -inline ::pg_query::ReplicaIdentityStmt* Node::mutable_replica_identity_stmt() { - ::pg_query::ReplicaIdentityStmt* _msg = _internal_mutable_replica_identity_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.replica_identity_stmt) +inline ::pg_query::DropUserMappingStmt* Node::mutable_drop_user_mapping_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DropUserMappingStmt* _msg = _internal_mutable_drop_user_mapping_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_user_mapping_stmt) return _msg; } -// .pg_query.AlterSystemStmt alter_system_stmt = 157 [json_name = "AlterSystemStmt"]; -inline bool Node::_internal_has_alter_system_stmt() const { - return node_case() == kAlterSystemStmt; +// .pg_query.ImportForeignSchemaStmt import_foreign_schema_stmt = 155 [json_name = "ImportForeignSchemaStmt"]; +inline bool Node::has_import_foreign_schema_stmt() const { + return node_case() == kImportForeignSchemaStmt; } -inline bool Node::has_alter_system_stmt() const { - return _internal_has_alter_system_stmt(); +inline bool Node::_internal_has_import_foreign_schema_stmt() const { + return node_case() == kImportForeignSchemaStmt; } -inline void Node::set_has_alter_system_stmt() { - _impl_._oneof_case_[0] = kAlterSystemStmt; +inline void Node::set_has_import_foreign_schema_stmt() { + _impl_._oneof_case_[0] = kImportForeignSchemaStmt; } -inline void Node::clear_alter_system_stmt() { - if (_internal_has_alter_system_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_system_stmt_; +inline void Node::clear_import_foreign_schema_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kImportForeignSchemaStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.import_foreign_schema_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterSystemStmt* Node::release_alter_system_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_system_stmt) - if (_internal_has_alter_system_stmt()) { +inline ::pg_query::ImportForeignSchemaStmt* Node::release_import_foreign_schema_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.import_foreign_schema_stmt) + if (node_case() == kImportForeignSchemaStmt) { clear_has_node(); - ::pg_query::AlterSystemStmt* temp = _impl_.node_.alter_system_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.import_foreign_schema_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_system_stmt_ = nullptr; + _impl_.node_.import_foreign_schema_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterSystemStmt& Node::_internal_alter_system_stmt() const { - return _internal_has_alter_system_stmt() - ? *_impl_.node_.alter_system_stmt_ - : reinterpret_cast< ::pg_query::AlterSystemStmt&>(::pg_query::_AlterSystemStmt_default_instance_); +inline const ::pg_query::ImportForeignSchemaStmt& Node::_internal_import_foreign_schema_stmt() const { + return node_case() == kImportForeignSchemaStmt ? *_impl_.node_.import_foreign_schema_stmt_ : reinterpret_cast<::pg_query::ImportForeignSchemaStmt&>(::pg_query::_ImportForeignSchemaStmt_default_instance_); } -inline const ::pg_query::AlterSystemStmt& Node::alter_system_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_system_stmt) - return _internal_alter_system_stmt(); +inline const ::pg_query::ImportForeignSchemaStmt& Node::import_foreign_schema_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.import_foreign_schema_stmt) + return _internal_import_foreign_schema_stmt(); } -inline ::pg_query::AlterSystemStmt* Node::unsafe_arena_release_alter_system_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_system_stmt) - if (_internal_has_alter_system_stmt()) { +inline ::pg_query::ImportForeignSchemaStmt* Node::unsafe_arena_release_import_foreign_schema_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.import_foreign_schema_stmt) + if (node_case() == kImportForeignSchemaStmt) { clear_has_node(); - ::pg_query::AlterSystemStmt* temp = _impl_.node_.alter_system_stmt_; - _impl_.node_.alter_system_stmt_ = nullptr; + auto* temp = _impl_.node_.import_foreign_schema_stmt_; + _impl_.node_.import_foreign_schema_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_system_stmt(::pg_query::AlterSystemStmt* alter_system_stmt) { +inline void Node::unsafe_arena_set_allocated_import_foreign_schema_stmt(::pg_query::ImportForeignSchemaStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_system_stmt) { - set_has_alter_system_stmt(); - _impl_.node_.alter_system_stmt_ = alter_system_stmt; + if (value) { + set_has_import_foreign_schema_stmt(); + _impl_.node_.import_foreign_schema_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_system_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.import_foreign_schema_stmt) } -inline ::pg_query::AlterSystemStmt* Node::_internal_mutable_alter_system_stmt() { - if (!_internal_has_alter_system_stmt()) { +inline ::pg_query::ImportForeignSchemaStmt* Node::_internal_mutable_import_foreign_schema_stmt() { + if (node_case() != kImportForeignSchemaStmt) { clear_node(); - set_has_alter_system_stmt(); - _impl_.node_.alter_system_stmt_ = CreateMaybeMessage< ::pg_query::AlterSystemStmt >(GetArenaForAllocation()); + set_has_import_foreign_schema_stmt(); + _impl_.node_.import_foreign_schema_stmt_ = CreateMaybeMessage<::pg_query::ImportForeignSchemaStmt>(GetArena()); } - return _impl_.node_.alter_system_stmt_; + return _impl_.node_.import_foreign_schema_stmt_; } -inline ::pg_query::AlterSystemStmt* Node::mutable_alter_system_stmt() { - ::pg_query::AlterSystemStmt* _msg = _internal_mutable_alter_system_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_system_stmt) +inline ::pg_query::ImportForeignSchemaStmt* Node::mutable_import_foreign_schema_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ImportForeignSchemaStmt* _msg = _internal_mutable_import_foreign_schema_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.import_foreign_schema_stmt) return _msg; } -// .pg_query.CreatePolicyStmt create_policy_stmt = 158 [json_name = "CreatePolicyStmt"]; -inline bool Node::_internal_has_create_policy_stmt() const { +// .pg_query.CreatePolicyStmt create_policy_stmt = 156 [json_name = "CreatePolicyStmt"]; +inline bool Node::has_create_policy_stmt() const { return node_case() == kCreatePolicyStmt; } -inline bool Node::has_create_policy_stmt() const { - return _internal_has_create_policy_stmt(); +inline bool Node::_internal_has_create_policy_stmt() const { + return node_case() == kCreatePolicyStmt; } inline void Node::set_has_create_policy_stmt() { _impl_._oneof_case_[0] = kCreatePolicyStmt; } inline void Node::clear_create_policy_stmt() { - if (_internal_has_create_policy_stmt()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreatePolicyStmt) { + if (GetArena() == nullptr) { delete _impl_.node_.create_policy_stmt_; } clear_has_node(); @@ -73251,11 +83986,11 @@ inline void Node::clear_create_policy_stmt() { } inline ::pg_query::CreatePolicyStmt* Node::release_create_policy_stmt() { // @@protoc_insertion_point(field_release:pg_query.Node.create_policy_stmt) - if (_internal_has_create_policy_stmt()) { + if (node_case() == kCreatePolicyStmt) { clear_has_node(); - ::pg_query::CreatePolicyStmt* temp = _impl_.node_.create_policy_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_policy_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.create_policy_stmt_ = nullptr; return temp; @@ -73264,60 +83999,62 @@ inline ::pg_query::CreatePolicyStmt* Node::release_create_policy_stmt() { } } inline const ::pg_query::CreatePolicyStmt& Node::_internal_create_policy_stmt() const { - return _internal_has_create_policy_stmt() - ? *_impl_.node_.create_policy_stmt_ - : reinterpret_cast< ::pg_query::CreatePolicyStmt&>(::pg_query::_CreatePolicyStmt_default_instance_); + return node_case() == kCreatePolicyStmt ? *_impl_.node_.create_policy_stmt_ : reinterpret_cast<::pg_query::CreatePolicyStmt&>(::pg_query::_CreatePolicyStmt_default_instance_); } -inline const ::pg_query::CreatePolicyStmt& Node::create_policy_stmt() const { +inline const ::pg_query::CreatePolicyStmt& Node::create_policy_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.create_policy_stmt) return _internal_create_policy_stmt(); } inline ::pg_query::CreatePolicyStmt* Node::unsafe_arena_release_create_policy_stmt() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_policy_stmt) - if (_internal_has_create_policy_stmt()) { + if (node_case() == kCreatePolicyStmt) { clear_has_node(); - ::pg_query::CreatePolicyStmt* temp = _impl_.node_.create_policy_stmt_; + auto* temp = _impl_.node_.create_policy_stmt_; _impl_.node_.create_policy_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_policy_stmt(::pg_query::CreatePolicyStmt* create_policy_stmt) { +inline void Node::unsafe_arena_set_allocated_create_policy_stmt(::pg_query::CreatePolicyStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_policy_stmt) { + if (value) { set_has_create_policy_stmt(); - _impl_.node_.create_policy_stmt_ = create_policy_stmt; + _impl_.node_.create_policy_stmt_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_policy_stmt) } inline ::pg_query::CreatePolicyStmt* Node::_internal_mutable_create_policy_stmt() { - if (!_internal_has_create_policy_stmt()) { + if (node_case() != kCreatePolicyStmt) { clear_node(); set_has_create_policy_stmt(); - _impl_.node_.create_policy_stmt_ = CreateMaybeMessage< ::pg_query::CreatePolicyStmt >(GetArenaForAllocation()); + _impl_.node_.create_policy_stmt_ = CreateMaybeMessage<::pg_query::CreatePolicyStmt>(GetArena()); } return _impl_.node_.create_policy_stmt_; } -inline ::pg_query::CreatePolicyStmt* Node::mutable_create_policy_stmt() { +inline ::pg_query::CreatePolicyStmt* Node::mutable_create_policy_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::CreatePolicyStmt* _msg = _internal_mutable_create_policy_stmt(); // @@protoc_insertion_point(field_mutable:pg_query.Node.create_policy_stmt) return _msg; } -// .pg_query.AlterPolicyStmt alter_policy_stmt = 159 [json_name = "AlterPolicyStmt"]; -inline bool Node::_internal_has_alter_policy_stmt() const { +// .pg_query.AlterPolicyStmt alter_policy_stmt = 157 [json_name = "AlterPolicyStmt"]; +inline bool Node::has_alter_policy_stmt() const { return node_case() == kAlterPolicyStmt; } -inline bool Node::has_alter_policy_stmt() const { - return _internal_has_alter_policy_stmt(); +inline bool Node::_internal_has_alter_policy_stmt() const { + return node_case() == kAlterPolicyStmt; } inline void Node::set_has_alter_policy_stmt() { _impl_._oneof_case_[0] = kAlterPolicyStmt; } inline void Node::clear_alter_policy_stmt() { - if (_internal_has_alter_policy_stmt()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterPolicyStmt) { + if (GetArena() == nullptr) { delete _impl_.node_.alter_policy_stmt_; } clear_has_node(); @@ -73325,11 +84062,11 @@ inline void Node::clear_alter_policy_stmt() { } inline ::pg_query::AlterPolicyStmt* Node::release_alter_policy_stmt() { // @@protoc_insertion_point(field_release:pg_query.Node.alter_policy_stmt) - if (_internal_has_alter_policy_stmt()) { + if (node_case() == kAlterPolicyStmt) { clear_has_node(); - ::pg_query::AlterPolicyStmt* temp = _impl_.node_.alter_policy_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_policy_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.alter_policy_stmt_ = nullptr; return temp; @@ -73338,134 +84075,62 @@ inline ::pg_query::AlterPolicyStmt* Node::release_alter_policy_stmt() { } } inline const ::pg_query::AlterPolicyStmt& Node::_internal_alter_policy_stmt() const { - return _internal_has_alter_policy_stmt() - ? *_impl_.node_.alter_policy_stmt_ - : reinterpret_cast< ::pg_query::AlterPolicyStmt&>(::pg_query::_AlterPolicyStmt_default_instance_); + return node_case() == kAlterPolicyStmt ? *_impl_.node_.alter_policy_stmt_ : reinterpret_cast<::pg_query::AlterPolicyStmt&>(::pg_query::_AlterPolicyStmt_default_instance_); } -inline const ::pg_query::AlterPolicyStmt& Node::alter_policy_stmt() const { +inline const ::pg_query::AlterPolicyStmt& Node::alter_policy_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.alter_policy_stmt) return _internal_alter_policy_stmt(); } inline ::pg_query::AlterPolicyStmt* Node::unsafe_arena_release_alter_policy_stmt() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_policy_stmt) - if (_internal_has_alter_policy_stmt()) { + if (node_case() == kAlterPolicyStmt) { clear_has_node(); - ::pg_query::AlterPolicyStmt* temp = _impl_.node_.alter_policy_stmt_; + auto* temp = _impl_.node_.alter_policy_stmt_; _impl_.node_.alter_policy_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_policy_stmt(::pg_query::AlterPolicyStmt* alter_policy_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_policy_stmt(::pg_query::AlterPolicyStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_policy_stmt) { + if (value) { set_has_alter_policy_stmt(); - _impl_.node_.alter_policy_stmt_ = alter_policy_stmt; + _impl_.node_.alter_policy_stmt_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_policy_stmt) } inline ::pg_query::AlterPolicyStmt* Node::_internal_mutable_alter_policy_stmt() { - if (!_internal_has_alter_policy_stmt()) { + if (node_case() != kAlterPolicyStmt) { clear_node(); set_has_alter_policy_stmt(); - _impl_.node_.alter_policy_stmt_ = CreateMaybeMessage< ::pg_query::AlterPolicyStmt >(GetArenaForAllocation()); + _impl_.node_.alter_policy_stmt_ = CreateMaybeMessage<::pg_query::AlterPolicyStmt>(GetArena()); } return _impl_.node_.alter_policy_stmt_; } -inline ::pg_query::AlterPolicyStmt* Node::mutable_alter_policy_stmt() { +inline ::pg_query::AlterPolicyStmt* Node::mutable_alter_policy_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::AlterPolicyStmt* _msg = _internal_mutable_alter_policy_stmt(); // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_policy_stmt) return _msg; } -// .pg_query.CreateTransformStmt create_transform_stmt = 160 [json_name = "CreateTransformStmt"]; -inline bool Node::_internal_has_create_transform_stmt() const { - return node_case() == kCreateTransformStmt; -} -inline bool Node::has_create_transform_stmt() const { - return _internal_has_create_transform_stmt(); -} -inline void Node::set_has_create_transform_stmt() { - _impl_._oneof_case_[0] = kCreateTransformStmt; -} -inline void Node::clear_create_transform_stmt() { - if (_internal_has_create_transform_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_transform_stmt_; - } - clear_has_node(); - } -} -inline ::pg_query::CreateTransformStmt* Node::release_create_transform_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_transform_stmt) - if (_internal_has_create_transform_stmt()) { - clear_has_node(); - ::pg_query::CreateTransformStmt* temp = _impl_.node_.create_transform_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.node_.create_transform_stmt_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::pg_query::CreateTransformStmt& Node::_internal_create_transform_stmt() const { - return _internal_has_create_transform_stmt() - ? *_impl_.node_.create_transform_stmt_ - : reinterpret_cast< ::pg_query::CreateTransformStmt&>(::pg_query::_CreateTransformStmt_default_instance_); -} -inline const ::pg_query::CreateTransformStmt& Node::create_transform_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_transform_stmt) - return _internal_create_transform_stmt(); -} -inline ::pg_query::CreateTransformStmt* Node::unsafe_arena_release_create_transform_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_transform_stmt) - if (_internal_has_create_transform_stmt()) { - clear_has_node(); - ::pg_query::CreateTransformStmt* temp = _impl_.node_.create_transform_stmt_; - _impl_.node_.create_transform_stmt_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline void Node::unsafe_arena_set_allocated_create_transform_stmt(::pg_query::CreateTransformStmt* create_transform_stmt) { - clear_node(); - if (create_transform_stmt) { - set_has_create_transform_stmt(); - _impl_.node_.create_transform_stmt_ = create_transform_stmt; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_transform_stmt) -} -inline ::pg_query::CreateTransformStmt* Node::_internal_mutable_create_transform_stmt() { - if (!_internal_has_create_transform_stmt()) { - clear_node(); - set_has_create_transform_stmt(); - _impl_.node_.create_transform_stmt_ = CreateMaybeMessage< ::pg_query::CreateTransformStmt >(GetArenaForAllocation()); - } - return _impl_.node_.create_transform_stmt_; -} -inline ::pg_query::CreateTransformStmt* Node::mutable_create_transform_stmt() { - ::pg_query::CreateTransformStmt* _msg = _internal_mutable_create_transform_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_transform_stmt) - return _msg; +// .pg_query.CreateAmStmt create_am_stmt = 158 [json_name = "CreateAmStmt"]; +inline bool Node::has_create_am_stmt() const { + return node_case() == kCreateAmStmt; } - -// .pg_query.CreateAmStmt create_am_stmt = 161 [json_name = "CreateAmStmt"]; inline bool Node::_internal_has_create_am_stmt() const { return node_case() == kCreateAmStmt; } -inline bool Node::has_create_am_stmt() const { - return _internal_has_create_am_stmt(); -} inline void Node::set_has_create_am_stmt() { _impl_._oneof_case_[0] = kCreateAmStmt; } inline void Node::clear_create_am_stmt() { - if (_internal_has_create_am_stmt()) { - if (GetArenaForAllocation() == nullptr) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateAmStmt) { + if (GetArena() == nullptr) { delete _impl_.node_.create_am_stmt_; } clear_has_node(); @@ -73473,11 +84138,11 @@ inline void Node::clear_create_am_stmt() { } inline ::pg_query::CreateAmStmt* Node::release_create_am_stmt() { // @@protoc_insertion_point(field_release:pg_query.Node.create_am_stmt) - if (_internal_has_create_am_stmt()) { + if (node_case() == kCreateAmStmt) { clear_has_node(); - ::pg_query::CreateAmStmt* temp = _impl_.node_.create_am_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_am_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } _impl_.node_.create_am_stmt_ = nullptr; return temp; @@ -73486,62142 +84151,72698 @@ inline ::pg_query::CreateAmStmt* Node::release_create_am_stmt() { } } inline const ::pg_query::CreateAmStmt& Node::_internal_create_am_stmt() const { - return _internal_has_create_am_stmt() - ? *_impl_.node_.create_am_stmt_ - : reinterpret_cast< ::pg_query::CreateAmStmt&>(::pg_query::_CreateAmStmt_default_instance_); + return node_case() == kCreateAmStmt ? *_impl_.node_.create_am_stmt_ : reinterpret_cast<::pg_query::CreateAmStmt&>(::pg_query::_CreateAmStmt_default_instance_); } -inline const ::pg_query::CreateAmStmt& Node::create_am_stmt() const { +inline const ::pg_query::CreateAmStmt& Node::create_am_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { // @@protoc_insertion_point(field_get:pg_query.Node.create_am_stmt) return _internal_create_am_stmt(); } inline ::pg_query::CreateAmStmt* Node::unsafe_arena_release_create_am_stmt() { // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_am_stmt) - if (_internal_has_create_am_stmt()) { + if (node_case() == kCreateAmStmt) { clear_has_node(); - ::pg_query::CreateAmStmt* temp = _impl_.node_.create_am_stmt_; + auto* temp = _impl_.node_.create_am_stmt_; _impl_.node_.create_am_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_am_stmt(::pg_query::CreateAmStmt* create_am_stmt) { +inline void Node::unsafe_arena_set_allocated_create_am_stmt(::pg_query::CreateAmStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_am_stmt) { + if (value) { set_has_create_am_stmt(); - _impl_.node_.create_am_stmt_ = create_am_stmt; + _impl_.node_.create_am_stmt_ = value; } // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_am_stmt) } inline ::pg_query::CreateAmStmt* Node::_internal_mutable_create_am_stmt() { - if (!_internal_has_create_am_stmt()) { + if (node_case() != kCreateAmStmt) { clear_node(); set_has_create_am_stmt(); - _impl_.node_.create_am_stmt_ = CreateMaybeMessage< ::pg_query::CreateAmStmt >(GetArenaForAllocation()); + _impl_.node_.create_am_stmt_ = CreateMaybeMessage<::pg_query::CreateAmStmt>(GetArena()); } return _impl_.node_.create_am_stmt_; } -inline ::pg_query::CreateAmStmt* Node::mutable_create_am_stmt() { +inline ::pg_query::CreateAmStmt* Node::mutable_create_am_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::CreateAmStmt* _msg = _internal_mutable_create_am_stmt(); // @@protoc_insertion_point(field_mutable:pg_query.Node.create_am_stmt) return _msg; } -// .pg_query.CreatePublicationStmt create_publication_stmt = 162 [json_name = "CreatePublicationStmt"]; -inline bool Node::_internal_has_create_publication_stmt() const { - return node_case() == kCreatePublicationStmt; -} -inline bool Node::has_create_publication_stmt() const { - return _internal_has_create_publication_stmt(); -} -inline void Node::set_has_create_publication_stmt() { - _impl_._oneof_case_[0] = kCreatePublicationStmt; -} -inline void Node::clear_create_publication_stmt() { - if (_internal_has_create_publication_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_publication_stmt_; - } - clear_has_node(); - } -} -inline ::pg_query::CreatePublicationStmt* Node::release_create_publication_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_publication_stmt) - if (_internal_has_create_publication_stmt()) { - clear_has_node(); - ::pg_query::CreatePublicationStmt* temp = _impl_.node_.create_publication_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.node_.create_publication_stmt_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::pg_query::CreatePublicationStmt& Node::_internal_create_publication_stmt() const { - return _internal_has_create_publication_stmt() - ? *_impl_.node_.create_publication_stmt_ - : reinterpret_cast< ::pg_query::CreatePublicationStmt&>(::pg_query::_CreatePublicationStmt_default_instance_); -} -inline const ::pg_query::CreatePublicationStmt& Node::create_publication_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_publication_stmt) - return _internal_create_publication_stmt(); -} -inline ::pg_query::CreatePublicationStmt* Node::unsafe_arena_release_create_publication_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_publication_stmt) - if (_internal_has_create_publication_stmt()) { - clear_has_node(); - ::pg_query::CreatePublicationStmt* temp = _impl_.node_.create_publication_stmt_; - _impl_.node_.create_publication_stmt_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline void Node::unsafe_arena_set_allocated_create_publication_stmt(::pg_query::CreatePublicationStmt* create_publication_stmt) { - clear_node(); - if (create_publication_stmt) { - set_has_create_publication_stmt(); - _impl_.node_.create_publication_stmt_ = create_publication_stmt; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_publication_stmt) -} -inline ::pg_query::CreatePublicationStmt* Node::_internal_mutable_create_publication_stmt() { - if (!_internal_has_create_publication_stmt()) { - clear_node(); - set_has_create_publication_stmt(); - _impl_.node_.create_publication_stmt_ = CreateMaybeMessage< ::pg_query::CreatePublicationStmt >(GetArenaForAllocation()); - } - return _impl_.node_.create_publication_stmt_; -} -inline ::pg_query::CreatePublicationStmt* Node::mutable_create_publication_stmt() { - ::pg_query::CreatePublicationStmt* _msg = _internal_mutable_create_publication_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_publication_stmt) - return _msg; -} - -// .pg_query.AlterPublicationStmt alter_publication_stmt = 163 [json_name = "AlterPublicationStmt"]; -inline bool Node::_internal_has_alter_publication_stmt() const { - return node_case() == kAlterPublicationStmt; -} -inline bool Node::has_alter_publication_stmt() const { - return _internal_has_alter_publication_stmt(); -} -inline void Node::set_has_alter_publication_stmt() { - _impl_._oneof_case_[0] = kAlterPublicationStmt; -} -inline void Node::clear_alter_publication_stmt() { - if (_internal_has_alter_publication_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_publication_stmt_; - } - clear_has_node(); - } -} -inline ::pg_query::AlterPublicationStmt* Node::release_alter_publication_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_publication_stmt) - if (_internal_has_alter_publication_stmt()) { - clear_has_node(); - ::pg_query::AlterPublicationStmt* temp = _impl_.node_.alter_publication_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } - _impl_.node_.alter_publication_stmt_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline const ::pg_query::AlterPublicationStmt& Node::_internal_alter_publication_stmt() const { - return _internal_has_alter_publication_stmt() - ? *_impl_.node_.alter_publication_stmt_ - : reinterpret_cast< ::pg_query::AlterPublicationStmt&>(::pg_query::_AlterPublicationStmt_default_instance_); -} -inline const ::pg_query::AlterPublicationStmt& Node::alter_publication_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_publication_stmt) - return _internal_alter_publication_stmt(); -} -inline ::pg_query::AlterPublicationStmt* Node::unsafe_arena_release_alter_publication_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_publication_stmt) - if (_internal_has_alter_publication_stmt()) { - clear_has_node(); - ::pg_query::AlterPublicationStmt* temp = _impl_.node_.alter_publication_stmt_; - _impl_.node_.alter_publication_stmt_ = nullptr; - return temp; - } else { - return nullptr; - } -} -inline void Node::unsafe_arena_set_allocated_alter_publication_stmt(::pg_query::AlterPublicationStmt* alter_publication_stmt) { - clear_node(); - if (alter_publication_stmt) { - set_has_alter_publication_stmt(); - _impl_.node_.alter_publication_stmt_ = alter_publication_stmt; - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_publication_stmt) -} -inline ::pg_query::AlterPublicationStmt* Node::_internal_mutable_alter_publication_stmt() { - if (!_internal_has_alter_publication_stmt()) { - clear_node(); - set_has_alter_publication_stmt(); - _impl_.node_.alter_publication_stmt_ = CreateMaybeMessage< ::pg_query::AlterPublicationStmt >(GetArenaForAllocation()); - } - return _impl_.node_.alter_publication_stmt_; -} -inline ::pg_query::AlterPublicationStmt* Node::mutable_alter_publication_stmt() { - ::pg_query::AlterPublicationStmt* _msg = _internal_mutable_alter_publication_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_publication_stmt) - return _msg; -} - -// .pg_query.CreateSubscriptionStmt create_subscription_stmt = 164 [json_name = "CreateSubscriptionStmt"]; -inline bool Node::_internal_has_create_subscription_stmt() const { - return node_case() == kCreateSubscriptionStmt; +// .pg_query.CreateTrigStmt create_trig_stmt = 159 [json_name = "CreateTrigStmt"]; +inline bool Node::has_create_trig_stmt() const { + return node_case() == kCreateTrigStmt; } -inline bool Node::has_create_subscription_stmt() const { - return _internal_has_create_subscription_stmt(); +inline bool Node::_internal_has_create_trig_stmt() const { + return node_case() == kCreateTrigStmt; } -inline void Node::set_has_create_subscription_stmt() { - _impl_._oneof_case_[0] = kCreateSubscriptionStmt; +inline void Node::set_has_create_trig_stmt() { + _impl_._oneof_case_[0] = kCreateTrigStmt; } -inline void Node::clear_create_subscription_stmt() { - if (_internal_has_create_subscription_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_subscription_stmt_; +inline void Node::clear_create_trig_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateTrigStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_trig_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateSubscriptionStmt* Node::release_create_subscription_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_subscription_stmt) - if (_internal_has_create_subscription_stmt()) { +inline ::pg_query::CreateTrigStmt* Node::release_create_trig_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_trig_stmt) + if (node_case() == kCreateTrigStmt) { clear_has_node(); - ::pg_query::CreateSubscriptionStmt* temp = _impl_.node_.create_subscription_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_trig_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_subscription_stmt_ = nullptr; + _impl_.node_.create_trig_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateSubscriptionStmt& Node::_internal_create_subscription_stmt() const { - return _internal_has_create_subscription_stmt() - ? *_impl_.node_.create_subscription_stmt_ - : reinterpret_cast< ::pg_query::CreateSubscriptionStmt&>(::pg_query::_CreateSubscriptionStmt_default_instance_); +inline const ::pg_query::CreateTrigStmt& Node::_internal_create_trig_stmt() const { + return node_case() == kCreateTrigStmt ? *_impl_.node_.create_trig_stmt_ : reinterpret_cast<::pg_query::CreateTrigStmt&>(::pg_query::_CreateTrigStmt_default_instance_); } -inline const ::pg_query::CreateSubscriptionStmt& Node::create_subscription_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_subscription_stmt) - return _internal_create_subscription_stmt(); +inline const ::pg_query::CreateTrigStmt& Node::create_trig_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_trig_stmt) + return _internal_create_trig_stmt(); } -inline ::pg_query::CreateSubscriptionStmt* Node::unsafe_arena_release_create_subscription_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_subscription_stmt) - if (_internal_has_create_subscription_stmt()) { +inline ::pg_query::CreateTrigStmt* Node::unsafe_arena_release_create_trig_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_trig_stmt) + if (node_case() == kCreateTrigStmt) { clear_has_node(); - ::pg_query::CreateSubscriptionStmt* temp = _impl_.node_.create_subscription_stmt_; - _impl_.node_.create_subscription_stmt_ = nullptr; + auto* temp = _impl_.node_.create_trig_stmt_; + _impl_.node_.create_trig_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_subscription_stmt(::pg_query::CreateSubscriptionStmt* create_subscription_stmt) { +inline void Node::unsafe_arena_set_allocated_create_trig_stmt(::pg_query::CreateTrigStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_subscription_stmt) { - set_has_create_subscription_stmt(); - _impl_.node_.create_subscription_stmt_ = create_subscription_stmt; + if (value) { + set_has_create_trig_stmt(); + _impl_.node_.create_trig_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_subscription_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_trig_stmt) } -inline ::pg_query::CreateSubscriptionStmt* Node::_internal_mutable_create_subscription_stmt() { - if (!_internal_has_create_subscription_stmt()) { +inline ::pg_query::CreateTrigStmt* Node::_internal_mutable_create_trig_stmt() { + if (node_case() != kCreateTrigStmt) { clear_node(); - set_has_create_subscription_stmt(); - _impl_.node_.create_subscription_stmt_ = CreateMaybeMessage< ::pg_query::CreateSubscriptionStmt >(GetArenaForAllocation()); + set_has_create_trig_stmt(); + _impl_.node_.create_trig_stmt_ = CreateMaybeMessage<::pg_query::CreateTrigStmt>(GetArena()); } - return _impl_.node_.create_subscription_stmt_; + return _impl_.node_.create_trig_stmt_; } -inline ::pg_query::CreateSubscriptionStmt* Node::mutable_create_subscription_stmt() { - ::pg_query::CreateSubscriptionStmt* _msg = _internal_mutable_create_subscription_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_subscription_stmt) +inline ::pg_query::CreateTrigStmt* Node::mutable_create_trig_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateTrigStmt* _msg = _internal_mutable_create_trig_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_trig_stmt) return _msg; } -// .pg_query.AlterSubscriptionStmt alter_subscription_stmt = 165 [json_name = "AlterSubscriptionStmt"]; -inline bool Node::_internal_has_alter_subscription_stmt() const { - return node_case() == kAlterSubscriptionStmt; +// .pg_query.CreateEventTrigStmt create_event_trig_stmt = 160 [json_name = "CreateEventTrigStmt"]; +inline bool Node::has_create_event_trig_stmt() const { + return node_case() == kCreateEventTrigStmt; } -inline bool Node::has_alter_subscription_stmt() const { - return _internal_has_alter_subscription_stmt(); +inline bool Node::_internal_has_create_event_trig_stmt() const { + return node_case() == kCreateEventTrigStmt; } -inline void Node::set_has_alter_subscription_stmt() { - _impl_._oneof_case_[0] = kAlterSubscriptionStmt; +inline void Node::set_has_create_event_trig_stmt() { + _impl_._oneof_case_[0] = kCreateEventTrigStmt; } -inline void Node::clear_alter_subscription_stmt() { - if (_internal_has_alter_subscription_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_subscription_stmt_; +inline void Node::clear_create_event_trig_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateEventTrigStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_event_trig_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterSubscriptionStmt* Node::release_alter_subscription_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_subscription_stmt) - if (_internal_has_alter_subscription_stmt()) { +inline ::pg_query::CreateEventTrigStmt* Node::release_create_event_trig_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_event_trig_stmt) + if (node_case() == kCreateEventTrigStmt) { clear_has_node(); - ::pg_query::AlterSubscriptionStmt* temp = _impl_.node_.alter_subscription_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_event_trig_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_subscription_stmt_ = nullptr; + _impl_.node_.create_event_trig_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterSubscriptionStmt& Node::_internal_alter_subscription_stmt() const { - return _internal_has_alter_subscription_stmt() - ? *_impl_.node_.alter_subscription_stmt_ - : reinterpret_cast< ::pg_query::AlterSubscriptionStmt&>(::pg_query::_AlterSubscriptionStmt_default_instance_); +inline const ::pg_query::CreateEventTrigStmt& Node::_internal_create_event_trig_stmt() const { + return node_case() == kCreateEventTrigStmt ? *_impl_.node_.create_event_trig_stmt_ : reinterpret_cast<::pg_query::CreateEventTrigStmt&>(::pg_query::_CreateEventTrigStmt_default_instance_); } -inline const ::pg_query::AlterSubscriptionStmt& Node::alter_subscription_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_subscription_stmt) - return _internal_alter_subscription_stmt(); +inline const ::pg_query::CreateEventTrigStmt& Node::create_event_trig_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_event_trig_stmt) + return _internal_create_event_trig_stmt(); } -inline ::pg_query::AlterSubscriptionStmt* Node::unsafe_arena_release_alter_subscription_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_subscription_stmt) - if (_internal_has_alter_subscription_stmt()) { +inline ::pg_query::CreateEventTrigStmt* Node::unsafe_arena_release_create_event_trig_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_event_trig_stmt) + if (node_case() == kCreateEventTrigStmt) { clear_has_node(); - ::pg_query::AlterSubscriptionStmt* temp = _impl_.node_.alter_subscription_stmt_; - _impl_.node_.alter_subscription_stmt_ = nullptr; + auto* temp = _impl_.node_.create_event_trig_stmt_; + _impl_.node_.create_event_trig_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_subscription_stmt(::pg_query::AlterSubscriptionStmt* alter_subscription_stmt) { +inline void Node::unsafe_arena_set_allocated_create_event_trig_stmt(::pg_query::CreateEventTrigStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_subscription_stmt) { - set_has_alter_subscription_stmt(); - _impl_.node_.alter_subscription_stmt_ = alter_subscription_stmt; + if (value) { + set_has_create_event_trig_stmt(); + _impl_.node_.create_event_trig_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_subscription_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_event_trig_stmt) } -inline ::pg_query::AlterSubscriptionStmt* Node::_internal_mutable_alter_subscription_stmt() { - if (!_internal_has_alter_subscription_stmt()) { +inline ::pg_query::CreateEventTrigStmt* Node::_internal_mutable_create_event_trig_stmt() { + if (node_case() != kCreateEventTrigStmt) { clear_node(); - set_has_alter_subscription_stmt(); - _impl_.node_.alter_subscription_stmt_ = CreateMaybeMessage< ::pg_query::AlterSubscriptionStmt >(GetArenaForAllocation()); + set_has_create_event_trig_stmt(); + _impl_.node_.create_event_trig_stmt_ = CreateMaybeMessage<::pg_query::CreateEventTrigStmt>(GetArena()); } - return _impl_.node_.alter_subscription_stmt_; + return _impl_.node_.create_event_trig_stmt_; } -inline ::pg_query::AlterSubscriptionStmt* Node::mutable_alter_subscription_stmt() { - ::pg_query::AlterSubscriptionStmt* _msg = _internal_mutable_alter_subscription_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_subscription_stmt) +inline ::pg_query::CreateEventTrigStmt* Node::mutable_create_event_trig_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateEventTrigStmt* _msg = _internal_mutable_create_event_trig_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_event_trig_stmt) return _msg; } -// .pg_query.DropSubscriptionStmt drop_subscription_stmt = 166 [json_name = "DropSubscriptionStmt"]; -inline bool Node::_internal_has_drop_subscription_stmt() const { - return node_case() == kDropSubscriptionStmt; +// .pg_query.AlterEventTrigStmt alter_event_trig_stmt = 161 [json_name = "AlterEventTrigStmt"]; +inline bool Node::has_alter_event_trig_stmt() const { + return node_case() == kAlterEventTrigStmt; } -inline bool Node::has_drop_subscription_stmt() const { - return _internal_has_drop_subscription_stmt(); +inline bool Node::_internal_has_alter_event_trig_stmt() const { + return node_case() == kAlterEventTrigStmt; } -inline void Node::set_has_drop_subscription_stmt() { - _impl_._oneof_case_[0] = kDropSubscriptionStmt; +inline void Node::set_has_alter_event_trig_stmt() { + _impl_._oneof_case_[0] = kAlterEventTrigStmt; } -inline void Node::clear_drop_subscription_stmt() { - if (_internal_has_drop_subscription_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.drop_subscription_stmt_; +inline void Node::clear_alter_event_trig_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterEventTrigStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_event_trig_stmt_; } clear_has_node(); } } -inline ::pg_query::DropSubscriptionStmt* Node::release_drop_subscription_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.drop_subscription_stmt) - if (_internal_has_drop_subscription_stmt()) { +inline ::pg_query::AlterEventTrigStmt* Node::release_alter_event_trig_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_event_trig_stmt) + if (node_case() == kAlterEventTrigStmt) { clear_has_node(); - ::pg_query::DropSubscriptionStmt* temp = _impl_.node_.drop_subscription_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_event_trig_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.drop_subscription_stmt_ = nullptr; + _impl_.node_.alter_event_trig_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DropSubscriptionStmt& Node::_internal_drop_subscription_stmt() const { - return _internal_has_drop_subscription_stmt() - ? *_impl_.node_.drop_subscription_stmt_ - : reinterpret_cast< ::pg_query::DropSubscriptionStmt&>(::pg_query::_DropSubscriptionStmt_default_instance_); +inline const ::pg_query::AlterEventTrigStmt& Node::_internal_alter_event_trig_stmt() const { + return node_case() == kAlterEventTrigStmt ? *_impl_.node_.alter_event_trig_stmt_ : reinterpret_cast<::pg_query::AlterEventTrigStmt&>(::pg_query::_AlterEventTrigStmt_default_instance_); } -inline const ::pg_query::DropSubscriptionStmt& Node::drop_subscription_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.drop_subscription_stmt) - return _internal_drop_subscription_stmt(); +inline const ::pg_query::AlterEventTrigStmt& Node::alter_event_trig_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_event_trig_stmt) + return _internal_alter_event_trig_stmt(); } -inline ::pg_query::DropSubscriptionStmt* Node::unsafe_arena_release_drop_subscription_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_subscription_stmt) - if (_internal_has_drop_subscription_stmt()) { +inline ::pg_query::AlterEventTrigStmt* Node::unsafe_arena_release_alter_event_trig_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_event_trig_stmt) + if (node_case() == kAlterEventTrigStmt) { clear_has_node(); - ::pg_query::DropSubscriptionStmt* temp = _impl_.node_.drop_subscription_stmt_; - _impl_.node_.drop_subscription_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_event_trig_stmt_; + _impl_.node_.alter_event_trig_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_drop_subscription_stmt(::pg_query::DropSubscriptionStmt* drop_subscription_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_event_trig_stmt(::pg_query::AlterEventTrigStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (drop_subscription_stmt) { - set_has_drop_subscription_stmt(); - _impl_.node_.drop_subscription_stmt_ = drop_subscription_stmt; + if (value) { + set_has_alter_event_trig_stmt(); + _impl_.node_.alter_event_trig_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_subscription_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_event_trig_stmt) } -inline ::pg_query::DropSubscriptionStmt* Node::_internal_mutable_drop_subscription_stmt() { - if (!_internal_has_drop_subscription_stmt()) { +inline ::pg_query::AlterEventTrigStmt* Node::_internal_mutable_alter_event_trig_stmt() { + if (node_case() != kAlterEventTrigStmt) { clear_node(); - set_has_drop_subscription_stmt(); - _impl_.node_.drop_subscription_stmt_ = CreateMaybeMessage< ::pg_query::DropSubscriptionStmt >(GetArenaForAllocation()); + set_has_alter_event_trig_stmt(); + _impl_.node_.alter_event_trig_stmt_ = CreateMaybeMessage<::pg_query::AlterEventTrigStmt>(GetArena()); } - return _impl_.node_.drop_subscription_stmt_; + return _impl_.node_.alter_event_trig_stmt_; } -inline ::pg_query::DropSubscriptionStmt* Node::mutable_drop_subscription_stmt() { - ::pg_query::DropSubscriptionStmt* _msg = _internal_mutable_drop_subscription_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_subscription_stmt) +inline ::pg_query::AlterEventTrigStmt* Node::mutable_alter_event_trig_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterEventTrigStmt* _msg = _internal_mutable_alter_event_trig_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_event_trig_stmt) return _msg; } -// .pg_query.CreateStatsStmt create_stats_stmt = 167 [json_name = "CreateStatsStmt"]; -inline bool Node::_internal_has_create_stats_stmt() const { - return node_case() == kCreateStatsStmt; +// .pg_query.CreatePLangStmt create_plang_stmt = 162 [json_name = "CreatePLangStmt"]; +inline bool Node::has_create_plang_stmt() const { + return node_case() == kCreatePlangStmt; } -inline bool Node::has_create_stats_stmt() const { - return _internal_has_create_stats_stmt(); +inline bool Node::_internal_has_create_plang_stmt() const { + return node_case() == kCreatePlangStmt; } -inline void Node::set_has_create_stats_stmt() { - _impl_._oneof_case_[0] = kCreateStatsStmt; +inline void Node::set_has_create_plang_stmt() { + _impl_._oneof_case_[0] = kCreatePlangStmt; } -inline void Node::clear_create_stats_stmt() { - if (_internal_has_create_stats_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_stats_stmt_; +inline void Node::clear_create_plang_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreatePlangStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_plang_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateStatsStmt* Node::release_create_stats_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_stats_stmt) - if (_internal_has_create_stats_stmt()) { +inline ::pg_query::CreatePLangStmt* Node::release_create_plang_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_plang_stmt) + if (node_case() == kCreatePlangStmt) { clear_has_node(); - ::pg_query::CreateStatsStmt* temp = _impl_.node_.create_stats_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_plang_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_stats_stmt_ = nullptr; + _impl_.node_.create_plang_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateStatsStmt& Node::_internal_create_stats_stmt() const { - return _internal_has_create_stats_stmt() - ? *_impl_.node_.create_stats_stmt_ - : reinterpret_cast< ::pg_query::CreateStatsStmt&>(::pg_query::_CreateStatsStmt_default_instance_); +inline const ::pg_query::CreatePLangStmt& Node::_internal_create_plang_stmt() const { + return node_case() == kCreatePlangStmt ? *_impl_.node_.create_plang_stmt_ : reinterpret_cast<::pg_query::CreatePLangStmt&>(::pg_query::_CreatePLangStmt_default_instance_); } -inline const ::pg_query::CreateStatsStmt& Node::create_stats_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_stats_stmt) - return _internal_create_stats_stmt(); +inline const ::pg_query::CreatePLangStmt& Node::create_plang_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_plang_stmt) + return _internal_create_plang_stmt(); } -inline ::pg_query::CreateStatsStmt* Node::unsafe_arena_release_create_stats_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_stats_stmt) - if (_internal_has_create_stats_stmt()) { +inline ::pg_query::CreatePLangStmt* Node::unsafe_arena_release_create_plang_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_plang_stmt) + if (node_case() == kCreatePlangStmt) { clear_has_node(); - ::pg_query::CreateStatsStmt* temp = _impl_.node_.create_stats_stmt_; - _impl_.node_.create_stats_stmt_ = nullptr; + auto* temp = _impl_.node_.create_plang_stmt_; + _impl_.node_.create_plang_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_stats_stmt(::pg_query::CreateStatsStmt* create_stats_stmt) { +inline void Node::unsafe_arena_set_allocated_create_plang_stmt(::pg_query::CreatePLangStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_stats_stmt) { - set_has_create_stats_stmt(); - _impl_.node_.create_stats_stmt_ = create_stats_stmt; + if (value) { + set_has_create_plang_stmt(); + _impl_.node_.create_plang_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_stats_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_plang_stmt) } -inline ::pg_query::CreateStatsStmt* Node::_internal_mutable_create_stats_stmt() { - if (!_internal_has_create_stats_stmt()) { +inline ::pg_query::CreatePLangStmt* Node::_internal_mutable_create_plang_stmt() { + if (node_case() != kCreatePlangStmt) { clear_node(); - set_has_create_stats_stmt(); - _impl_.node_.create_stats_stmt_ = CreateMaybeMessage< ::pg_query::CreateStatsStmt >(GetArenaForAllocation()); + set_has_create_plang_stmt(); + _impl_.node_.create_plang_stmt_ = CreateMaybeMessage<::pg_query::CreatePLangStmt>(GetArena()); } - return _impl_.node_.create_stats_stmt_; + return _impl_.node_.create_plang_stmt_; } -inline ::pg_query::CreateStatsStmt* Node::mutable_create_stats_stmt() { - ::pg_query::CreateStatsStmt* _msg = _internal_mutable_create_stats_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_stats_stmt) +inline ::pg_query::CreatePLangStmt* Node::mutable_create_plang_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreatePLangStmt* _msg = _internal_mutable_create_plang_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_plang_stmt) return _msg; } -// .pg_query.AlterCollationStmt alter_collation_stmt = 168 [json_name = "AlterCollationStmt"]; -inline bool Node::_internal_has_alter_collation_stmt() const { - return node_case() == kAlterCollationStmt; +// .pg_query.CreateRoleStmt create_role_stmt = 163 [json_name = "CreateRoleStmt"]; +inline bool Node::has_create_role_stmt() const { + return node_case() == kCreateRoleStmt; } -inline bool Node::has_alter_collation_stmt() const { - return _internal_has_alter_collation_stmt(); +inline bool Node::_internal_has_create_role_stmt() const { + return node_case() == kCreateRoleStmt; } -inline void Node::set_has_alter_collation_stmt() { - _impl_._oneof_case_[0] = kAlterCollationStmt; +inline void Node::set_has_create_role_stmt() { + _impl_._oneof_case_[0] = kCreateRoleStmt; } -inline void Node::clear_alter_collation_stmt() { - if (_internal_has_alter_collation_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_collation_stmt_; +inline void Node::clear_create_role_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateRoleStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_role_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterCollationStmt* Node::release_alter_collation_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_collation_stmt) - if (_internal_has_alter_collation_stmt()) { +inline ::pg_query::CreateRoleStmt* Node::release_create_role_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_role_stmt) + if (node_case() == kCreateRoleStmt) { clear_has_node(); - ::pg_query::AlterCollationStmt* temp = _impl_.node_.alter_collation_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_role_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_collation_stmt_ = nullptr; + _impl_.node_.create_role_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterCollationStmt& Node::_internal_alter_collation_stmt() const { - return _internal_has_alter_collation_stmt() - ? *_impl_.node_.alter_collation_stmt_ - : reinterpret_cast< ::pg_query::AlterCollationStmt&>(::pg_query::_AlterCollationStmt_default_instance_); +inline const ::pg_query::CreateRoleStmt& Node::_internal_create_role_stmt() const { + return node_case() == kCreateRoleStmt ? *_impl_.node_.create_role_stmt_ : reinterpret_cast<::pg_query::CreateRoleStmt&>(::pg_query::_CreateRoleStmt_default_instance_); } -inline const ::pg_query::AlterCollationStmt& Node::alter_collation_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_collation_stmt) - return _internal_alter_collation_stmt(); +inline const ::pg_query::CreateRoleStmt& Node::create_role_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_role_stmt) + return _internal_create_role_stmt(); } -inline ::pg_query::AlterCollationStmt* Node::unsafe_arena_release_alter_collation_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_collation_stmt) - if (_internal_has_alter_collation_stmt()) { +inline ::pg_query::CreateRoleStmt* Node::unsafe_arena_release_create_role_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_role_stmt) + if (node_case() == kCreateRoleStmt) { clear_has_node(); - ::pg_query::AlterCollationStmt* temp = _impl_.node_.alter_collation_stmt_; - _impl_.node_.alter_collation_stmt_ = nullptr; + auto* temp = _impl_.node_.create_role_stmt_; + _impl_.node_.create_role_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_collation_stmt(::pg_query::AlterCollationStmt* alter_collation_stmt) { +inline void Node::unsafe_arena_set_allocated_create_role_stmt(::pg_query::CreateRoleStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_collation_stmt) { - set_has_alter_collation_stmt(); - _impl_.node_.alter_collation_stmt_ = alter_collation_stmt; + if (value) { + set_has_create_role_stmt(); + _impl_.node_.create_role_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_collation_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_role_stmt) } -inline ::pg_query::AlterCollationStmt* Node::_internal_mutable_alter_collation_stmt() { - if (!_internal_has_alter_collation_stmt()) { +inline ::pg_query::CreateRoleStmt* Node::_internal_mutable_create_role_stmt() { + if (node_case() != kCreateRoleStmt) { clear_node(); - set_has_alter_collation_stmt(); - _impl_.node_.alter_collation_stmt_ = CreateMaybeMessage< ::pg_query::AlterCollationStmt >(GetArenaForAllocation()); + set_has_create_role_stmt(); + _impl_.node_.create_role_stmt_ = CreateMaybeMessage<::pg_query::CreateRoleStmt>(GetArena()); } - return _impl_.node_.alter_collation_stmt_; + return _impl_.node_.create_role_stmt_; } -inline ::pg_query::AlterCollationStmt* Node::mutable_alter_collation_stmt() { - ::pg_query::AlterCollationStmt* _msg = _internal_mutable_alter_collation_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_collation_stmt) +inline ::pg_query::CreateRoleStmt* Node::mutable_create_role_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateRoleStmt* _msg = _internal_mutable_create_role_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_role_stmt) return _msg; } -// .pg_query.CallStmt call_stmt = 169 [json_name = "CallStmt"]; -inline bool Node::_internal_has_call_stmt() const { - return node_case() == kCallStmt; +// .pg_query.AlterRoleStmt alter_role_stmt = 164 [json_name = "AlterRoleStmt"]; +inline bool Node::has_alter_role_stmt() const { + return node_case() == kAlterRoleStmt; } -inline bool Node::has_call_stmt() const { - return _internal_has_call_stmt(); +inline bool Node::_internal_has_alter_role_stmt() const { + return node_case() == kAlterRoleStmt; } -inline void Node::set_has_call_stmt() { - _impl_._oneof_case_[0] = kCallStmt; +inline void Node::set_has_alter_role_stmt() { + _impl_._oneof_case_[0] = kAlterRoleStmt; } -inline void Node::clear_call_stmt() { - if (_internal_has_call_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.call_stmt_; +inline void Node::clear_alter_role_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterRoleStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_role_stmt_; } clear_has_node(); } } -inline ::pg_query::CallStmt* Node::release_call_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.call_stmt) - if (_internal_has_call_stmt()) { +inline ::pg_query::AlterRoleStmt* Node::release_alter_role_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_role_stmt) + if (node_case() == kAlterRoleStmt) { clear_has_node(); - ::pg_query::CallStmt* temp = _impl_.node_.call_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_role_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.call_stmt_ = nullptr; + _impl_.node_.alter_role_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CallStmt& Node::_internal_call_stmt() const { - return _internal_has_call_stmt() - ? *_impl_.node_.call_stmt_ - : reinterpret_cast< ::pg_query::CallStmt&>(::pg_query::_CallStmt_default_instance_); +inline const ::pg_query::AlterRoleStmt& Node::_internal_alter_role_stmt() const { + return node_case() == kAlterRoleStmt ? *_impl_.node_.alter_role_stmt_ : reinterpret_cast<::pg_query::AlterRoleStmt&>(::pg_query::_AlterRoleStmt_default_instance_); } -inline const ::pg_query::CallStmt& Node::call_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.call_stmt) - return _internal_call_stmt(); +inline const ::pg_query::AlterRoleStmt& Node::alter_role_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_role_stmt) + return _internal_alter_role_stmt(); } -inline ::pg_query::CallStmt* Node::unsafe_arena_release_call_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.call_stmt) - if (_internal_has_call_stmt()) { +inline ::pg_query::AlterRoleStmt* Node::unsafe_arena_release_alter_role_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_role_stmt) + if (node_case() == kAlterRoleStmt) { clear_has_node(); - ::pg_query::CallStmt* temp = _impl_.node_.call_stmt_; - _impl_.node_.call_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_role_stmt_; + _impl_.node_.alter_role_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_call_stmt(::pg_query::CallStmt* call_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_role_stmt(::pg_query::AlterRoleStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (call_stmt) { - set_has_call_stmt(); - _impl_.node_.call_stmt_ = call_stmt; + if (value) { + set_has_alter_role_stmt(); + _impl_.node_.alter_role_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.call_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_role_stmt) } -inline ::pg_query::CallStmt* Node::_internal_mutable_call_stmt() { - if (!_internal_has_call_stmt()) { +inline ::pg_query::AlterRoleStmt* Node::_internal_mutable_alter_role_stmt() { + if (node_case() != kAlterRoleStmt) { clear_node(); - set_has_call_stmt(); - _impl_.node_.call_stmt_ = CreateMaybeMessage< ::pg_query::CallStmt >(GetArenaForAllocation()); + set_has_alter_role_stmt(); + _impl_.node_.alter_role_stmt_ = CreateMaybeMessage<::pg_query::AlterRoleStmt>(GetArena()); } - return _impl_.node_.call_stmt_; + return _impl_.node_.alter_role_stmt_; } -inline ::pg_query::CallStmt* Node::mutable_call_stmt() { - ::pg_query::CallStmt* _msg = _internal_mutable_call_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.call_stmt) +inline ::pg_query::AlterRoleStmt* Node::mutable_alter_role_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterRoleStmt* _msg = _internal_mutable_alter_role_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_role_stmt) return _msg; } -// .pg_query.AlterStatsStmt alter_stats_stmt = 170 [json_name = "AlterStatsStmt"]; -inline bool Node::_internal_has_alter_stats_stmt() const { - return node_case() == kAlterStatsStmt; +// .pg_query.AlterRoleSetStmt alter_role_set_stmt = 165 [json_name = "AlterRoleSetStmt"]; +inline bool Node::has_alter_role_set_stmt() const { + return node_case() == kAlterRoleSetStmt; } -inline bool Node::has_alter_stats_stmt() const { - return _internal_has_alter_stats_stmt(); +inline bool Node::_internal_has_alter_role_set_stmt() const { + return node_case() == kAlterRoleSetStmt; } -inline void Node::set_has_alter_stats_stmt() { - _impl_._oneof_case_[0] = kAlterStatsStmt; +inline void Node::set_has_alter_role_set_stmt() { + _impl_._oneof_case_[0] = kAlterRoleSetStmt; } -inline void Node::clear_alter_stats_stmt() { - if (_internal_has_alter_stats_stmt()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.alter_stats_stmt_; +inline void Node::clear_alter_role_set_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterRoleSetStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_role_set_stmt_; } clear_has_node(); } } -inline ::pg_query::AlterStatsStmt* Node::release_alter_stats_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Node.alter_stats_stmt) - if (_internal_has_alter_stats_stmt()) { +inline ::pg_query::AlterRoleSetStmt* Node::release_alter_role_set_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_role_set_stmt) + if (node_case() == kAlterRoleSetStmt) { clear_has_node(); - ::pg_query::AlterStatsStmt* temp = _impl_.node_.alter_stats_stmt_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_role_set_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.alter_stats_stmt_ = nullptr; + _impl_.node_.alter_role_set_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AlterStatsStmt& Node::_internal_alter_stats_stmt() const { - return _internal_has_alter_stats_stmt() - ? *_impl_.node_.alter_stats_stmt_ - : reinterpret_cast< ::pg_query::AlterStatsStmt&>(::pg_query::_AlterStatsStmt_default_instance_); +inline const ::pg_query::AlterRoleSetStmt& Node::_internal_alter_role_set_stmt() const { + return node_case() == kAlterRoleSetStmt ? *_impl_.node_.alter_role_set_stmt_ : reinterpret_cast<::pg_query::AlterRoleSetStmt&>(::pg_query::_AlterRoleSetStmt_default_instance_); } -inline const ::pg_query::AlterStatsStmt& Node::alter_stats_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Node.alter_stats_stmt) - return _internal_alter_stats_stmt(); +inline const ::pg_query::AlterRoleSetStmt& Node::alter_role_set_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_role_set_stmt) + return _internal_alter_role_set_stmt(); } -inline ::pg_query::AlterStatsStmt* Node::unsafe_arena_release_alter_stats_stmt() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_stats_stmt) - if (_internal_has_alter_stats_stmt()) { +inline ::pg_query::AlterRoleSetStmt* Node::unsafe_arena_release_alter_role_set_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_role_set_stmt) + if (node_case() == kAlterRoleSetStmt) { clear_has_node(); - ::pg_query::AlterStatsStmt* temp = _impl_.node_.alter_stats_stmt_; - _impl_.node_.alter_stats_stmt_ = nullptr; + auto* temp = _impl_.node_.alter_role_set_stmt_; + _impl_.node_.alter_role_set_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_alter_stats_stmt(::pg_query::AlterStatsStmt* alter_stats_stmt) { +inline void Node::unsafe_arena_set_allocated_alter_role_set_stmt(::pg_query::AlterRoleSetStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (alter_stats_stmt) { - set_has_alter_stats_stmt(); - _impl_.node_.alter_stats_stmt_ = alter_stats_stmt; + if (value) { + set_has_alter_role_set_stmt(); + _impl_.node_.alter_role_set_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_stats_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_role_set_stmt) } -inline ::pg_query::AlterStatsStmt* Node::_internal_mutable_alter_stats_stmt() { - if (!_internal_has_alter_stats_stmt()) { +inline ::pg_query::AlterRoleSetStmt* Node::_internal_mutable_alter_role_set_stmt() { + if (node_case() != kAlterRoleSetStmt) { clear_node(); - set_has_alter_stats_stmt(); - _impl_.node_.alter_stats_stmt_ = CreateMaybeMessage< ::pg_query::AlterStatsStmt >(GetArenaForAllocation()); + set_has_alter_role_set_stmt(); + _impl_.node_.alter_role_set_stmt_ = CreateMaybeMessage<::pg_query::AlterRoleSetStmt>(GetArena()); } - return _impl_.node_.alter_stats_stmt_; + return _impl_.node_.alter_role_set_stmt_; } -inline ::pg_query::AlterStatsStmt* Node::mutable_alter_stats_stmt() { - ::pg_query::AlterStatsStmt* _msg = _internal_mutable_alter_stats_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_stats_stmt) +inline ::pg_query::AlterRoleSetStmt* Node::mutable_alter_role_set_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterRoleSetStmt* _msg = _internal_mutable_alter_role_set_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_role_set_stmt) return _msg; } -// .pg_query.A_Expr a_expr = 171 [json_name = "A_Expr"]; -inline bool Node::_internal_has_a_expr() const { - return node_case() == kAExpr; +// .pg_query.DropRoleStmt drop_role_stmt = 166 [json_name = "DropRoleStmt"]; +inline bool Node::has_drop_role_stmt() const { + return node_case() == kDropRoleStmt; } -inline bool Node::has_a_expr() const { - return _internal_has_a_expr(); +inline bool Node::_internal_has_drop_role_stmt() const { + return node_case() == kDropRoleStmt; } -inline void Node::set_has_a_expr() { - _impl_._oneof_case_[0] = kAExpr; +inline void Node::set_has_drop_role_stmt() { + _impl_._oneof_case_[0] = kDropRoleStmt; } -inline void Node::clear_a_expr() { - if (_internal_has_a_expr()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.a_expr_; +inline void Node::clear_drop_role_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDropRoleStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.drop_role_stmt_; } clear_has_node(); } } -inline ::pg_query::A_Expr* Node::release_a_expr() { - // @@protoc_insertion_point(field_release:pg_query.Node.a_expr) - if (_internal_has_a_expr()) { +inline ::pg_query::DropRoleStmt* Node::release_drop_role_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.drop_role_stmt) + if (node_case() == kDropRoleStmt) { clear_has_node(); - ::pg_query::A_Expr* temp = _impl_.node_.a_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.drop_role_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.a_expr_ = nullptr; + _impl_.node_.drop_role_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::A_Expr& Node::_internal_a_expr() const { - return _internal_has_a_expr() - ? *_impl_.node_.a_expr_ - : reinterpret_cast< ::pg_query::A_Expr&>(::pg_query::_A_Expr_default_instance_); +inline const ::pg_query::DropRoleStmt& Node::_internal_drop_role_stmt() const { + return node_case() == kDropRoleStmt ? *_impl_.node_.drop_role_stmt_ : reinterpret_cast<::pg_query::DropRoleStmt&>(::pg_query::_DropRoleStmt_default_instance_); } -inline const ::pg_query::A_Expr& Node::a_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Node.a_expr) - return _internal_a_expr(); +inline const ::pg_query::DropRoleStmt& Node::drop_role_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.drop_role_stmt) + return _internal_drop_role_stmt(); } -inline ::pg_query::A_Expr* Node::unsafe_arena_release_a_expr() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_expr) - if (_internal_has_a_expr()) { +inline ::pg_query::DropRoleStmt* Node::unsafe_arena_release_drop_role_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_role_stmt) + if (node_case() == kDropRoleStmt) { clear_has_node(); - ::pg_query::A_Expr* temp = _impl_.node_.a_expr_; - _impl_.node_.a_expr_ = nullptr; + auto* temp = _impl_.node_.drop_role_stmt_; + _impl_.node_.drop_role_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_a_expr(::pg_query::A_Expr* a_expr) { +inline void Node::unsafe_arena_set_allocated_drop_role_stmt(::pg_query::DropRoleStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (a_expr) { - set_has_a_expr(); - _impl_.node_.a_expr_ = a_expr; + if (value) { + set_has_drop_role_stmt(); + _impl_.node_.drop_role_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_role_stmt) } -inline ::pg_query::A_Expr* Node::_internal_mutable_a_expr() { - if (!_internal_has_a_expr()) { +inline ::pg_query::DropRoleStmt* Node::_internal_mutable_drop_role_stmt() { + if (node_case() != kDropRoleStmt) { clear_node(); - set_has_a_expr(); - _impl_.node_.a_expr_ = CreateMaybeMessage< ::pg_query::A_Expr >(GetArenaForAllocation()); + set_has_drop_role_stmt(); + _impl_.node_.drop_role_stmt_ = CreateMaybeMessage<::pg_query::DropRoleStmt>(GetArena()); } - return _impl_.node_.a_expr_; + return _impl_.node_.drop_role_stmt_; } -inline ::pg_query::A_Expr* Node::mutable_a_expr() { - ::pg_query::A_Expr* _msg = _internal_mutable_a_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.a_expr) +inline ::pg_query::DropRoleStmt* Node::mutable_drop_role_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DropRoleStmt* _msg = _internal_mutable_drop_role_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_role_stmt) return _msg; } -// .pg_query.ColumnRef column_ref = 172 [json_name = "ColumnRef"]; -inline bool Node::_internal_has_column_ref() const { - return node_case() == kColumnRef; +// .pg_query.CreateSeqStmt create_seq_stmt = 167 [json_name = "CreateSeqStmt"]; +inline bool Node::has_create_seq_stmt() const { + return node_case() == kCreateSeqStmt; } -inline bool Node::has_column_ref() const { - return _internal_has_column_ref(); +inline bool Node::_internal_has_create_seq_stmt() const { + return node_case() == kCreateSeqStmt; } -inline void Node::set_has_column_ref() { - _impl_._oneof_case_[0] = kColumnRef; +inline void Node::set_has_create_seq_stmt() { + _impl_._oneof_case_[0] = kCreateSeqStmt; } -inline void Node::clear_column_ref() { - if (_internal_has_column_ref()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.column_ref_; +inline void Node::clear_create_seq_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateSeqStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_seq_stmt_; } clear_has_node(); } } -inline ::pg_query::ColumnRef* Node::release_column_ref() { - // @@protoc_insertion_point(field_release:pg_query.Node.column_ref) - if (_internal_has_column_ref()) { +inline ::pg_query::CreateSeqStmt* Node::release_create_seq_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_seq_stmt) + if (node_case() == kCreateSeqStmt) { clear_has_node(); - ::pg_query::ColumnRef* temp = _impl_.node_.column_ref_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_seq_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.column_ref_ = nullptr; + _impl_.node_.create_seq_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ColumnRef& Node::_internal_column_ref() const { - return _internal_has_column_ref() - ? *_impl_.node_.column_ref_ - : reinterpret_cast< ::pg_query::ColumnRef&>(::pg_query::_ColumnRef_default_instance_); +inline const ::pg_query::CreateSeqStmt& Node::_internal_create_seq_stmt() const { + return node_case() == kCreateSeqStmt ? *_impl_.node_.create_seq_stmt_ : reinterpret_cast<::pg_query::CreateSeqStmt&>(::pg_query::_CreateSeqStmt_default_instance_); } -inline const ::pg_query::ColumnRef& Node::column_ref() const { - // @@protoc_insertion_point(field_get:pg_query.Node.column_ref) - return _internal_column_ref(); +inline const ::pg_query::CreateSeqStmt& Node::create_seq_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_seq_stmt) + return _internal_create_seq_stmt(); } -inline ::pg_query::ColumnRef* Node::unsafe_arena_release_column_ref() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.column_ref) - if (_internal_has_column_ref()) { +inline ::pg_query::CreateSeqStmt* Node::unsafe_arena_release_create_seq_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_seq_stmt) + if (node_case() == kCreateSeqStmt) { clear_has_node(); - ::pg_query::ColumnRef* temp = _impl_.node_.column_ref_; - _impl_.node_.column_ref_ = nullptr; + auto* temp = _impl_.node_.create_seq_stmt_; + _impl_.node_.create_seq_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_column_ref(::pg_query::ColumnRef* column_ref) { +inline void Node::unsafe_arena_set_allocated_create_seq_stmt(::pg_query::CreateSeqStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (column_ref) { - set_has_column_ref(); - _impl_.node_.column_ref_ = column_ref; + if (value) { + set_has_create_seq_stmt(); + _impl_.node_.create_seq_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.column_ref) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_seq_stmt) } -inline ::pg_query::ColumnRef* Node::_internal_mutable_column_ref() { - if (!_internal_has_column_ref()) { +inline ::pg_query::CreateSeqStmt* Node::_internal_mutable_create_seq_stmt() { + if (node_case() != kCreateSeqStmt) { clear_node(); - set_has_column_ref(); - _impl_.node_.column_ref_ = CreateMaybeMessage< ::pg_query::ColumnRef >(GetArenaForAllocation()); + set_has_create_seq_stmt(); + _impl_.node_.create_seq_stmt_ = CreateMaybeMessage<::pg_query::CreateSeqStmt>(GetArena()); } - return _impl_.node_.column_ref_; + return _impl_.node_.create_seq_stmt_; } -inline ::pg_query::ColumnRef* Node::mutable_column_ref() { - ::pg_query::ColumnRef* _msg = _internal_mutable_column_ref(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.column_ref) +inline ::pg_query::CreateSeqStmt* Node::mutable_create_seq_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateSeqStmt* _msg = _internal_mutable_create_seq_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_seq_stmt) return _msg; } -// .pg_query.ParamRef param_ref = 173 [json_name = "ParamRef"]; -inline bool Node::_internal_has_param_ref() const { - return node_case() == kParamRef; +// .pg_query.AlterSeqStmt alter_seq_stmt = 168 [json_name = "AlterSeqStmt"]; +inline bool Node::has_alter_seq_stmt() const { + return node_case() == kAlterSeqStmt; } -inline bool Node::has_param_ref() const { - return _internal_has_param_ref(); +inline bool Node::_internal_has_alter_seq_stmt() const { + return node_case() == kAlterSeqStmt; } -inline void Node::set_has_param_ref() { - _impl_._oneof_case_[0] = kParamRef; +inline void Node::set_has_alter_seq_stmt() { + _impl_._oneof_case_[0] = kAlterSeqStmt; } -inline void Node::clear_param_ref() { - if (_internal_has_param_ref()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.param_ref_; +inline void Node::clear_alter_seq_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterSeqStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_seq_stmt_; } clear_has_node(); } } -inline ::pg_query::ParamRef* Node::release_param_ref() { - // @@protoc_insertion_point(field_release:pg_query.Node.param_ref) - if (_internal_has_param_ref()) { +inline ::pg_query::AlterSeqStmt* Node::release_alter_seq_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_seq_stmt) + if (node_case() == kAlterSeqStmt) { clear_has_node(); - ::pg_query::ParamRef* temp = _impl_.node_.param_ref_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_seq_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.param_ref_ = nullptr; + _impl_.node_.alter_seq_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ParamRef& Node::_internal_param_ref() const { - return _internal_has_param_ref() - ? *_impl_.node_.param_ref_ - : reinterpret_cast< ::pg_query::ParamRef&>(::pg_query::_ParamRef_default_instance_); +inline const ::pg_query::AlterSeqStmt& Node::_internal_alter_seq_stmt() const { + return node_case() == kAlterSeqStmt ? *_impl_.node_.alter_seq_stmt_ : reinterpret_cast<::pg_query::AlterSeqStmt&>(::pg_query::_AlterSeqStmt_default_instance_); } -inline const ::pg_query::ParamRef& Node::param_ref() const { - // @@protoc_insertion_point(field_get:pg_query.Node.param_ref) - return _internal_param_ref(); +inline const ::pg_query::AlterSeqStmt& Node::alter_seq_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_seq_stmt) + return _internal_alter_seq_stmt(); } -inline ::pg_query::ParamRef* Node::unsafe_arena_release_param_ref() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.param_ref) - if (_internal_has_param_ref()) { +inline ::pg_query::AlterSeqStmt* Node::unsafe_arena_release_alter_seq_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_seq_stmt) + if (node_case() == kAlterSeqStmt) { clear_has_node(); - ::pg_query::ParamRef* temp = _impl_.node_.param_ref_; - _impl_.node_.param_ref_ = nullptr; + auto* temp = _impl_.node_.alter_seq_stmt_; + _impl_.node_.alter_seq_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_param_ref(::pg_query::ParamRef* param_ref) { +inline void Node::unsafe_arena_set_allocated_alter_seq_stmt(::pg_query::AlterSeqStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (param_ref) { - set_has_param_ref(); - _impl_.node_.param_ref_ = param_ref; + if (value) { + set_has_alter_seq_stmt(); + _impl_.node_.alter_seq_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.param_ref) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_seq_stmt) } -inline ::pg_query::ParamRef* Node::_internal_mutable_param_ref() { - if (!_internal_has_param_ref()) { +inline ::pg_query::AlterSeqStmt* Node::_internal_mutable_alter_seq_stmt() { + if (node_case() != kAlterSeqStmt) { clear_node(); - set_has_param_ref(); - _impl_.node_.param_ref_ = CreateMaybeMessage< ::pg_query::ParamRef >(GetArenaForAllocation()); + set_has_alter_seq_stmt(); + _impl_.node_.alter_seq_stmt_ = CreateMaybeMessage<::pg_query::AlterSeqStmt>(GetArena()); } - return _impl_.node_.param_ref_; + return _impl_.node_.alter_seq_stmt_; } -inline ::pg_query::ParamRef* Node::mutable_param_ref() { - ::pg_query::ParamRef* _msg = _internal_mutable_param_ref(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.param_ref) +inline ::pg_query::AlterSeqStmt* Node::mutable_alter_seq_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterSeqStmt* _msg = _internal_mutable_alter_seq_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_seq_stmt) return _msg; } -// .pg_query.FuncCall func_call = 174 [json_name = "FuncCall"]; -inline bool Node::_internal_has_func_call() const { - return node_case() == kFuncCall; +// .pg_query.DefineStmt define_stmt = 169 [json_name = "DefineStmt"]; +inline bool Node::has_define_stmt() const { + return node_case() == kDefineStmt; } -inline bool Node::has_func_call() const { - return _internal_has_func_call(); +inline bool Node::_internal_has_define_stmt() const { + return node_case() == kDefineStmt; } -inline void Node::set_has_func_call() { - _impl_._oneof_case_[0] = kFuncCall; +inline void Node::set_has_define_stmt() { + _impl_._oneof_case_[0] = kDefineStmt; } -inline void Node::clear_func_call() { - if (_internal_has_func_call()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.func_call_; +inline void Node::clear_define_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDefineStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.define_stmt_; } clear_has_node(); } } -inline ::pg_query::FuncCall* Node::release_func_call() { - // @@protoc_insertion_point(field_release:pg_query.Node.func_call) - if (_internal_has_func_call()) { +inline ::pg_query::DefineStmt* Node::release_define_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.define_stmt) + if (node_case() == kDefineStmt) { clear_has_node(); - ::pg_query::FuncCall* temp = _impl_.node_.func_call_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.define_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.func_call_ = nullptr; + _impl_.node_.define_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::FuncCall& Node::_internal_func_call() const { - return _internal_has_func_call() - ? *_impl_.node_.func_call_ - : reinterpret_cast< ::pg_query::FuncCall&>(::pg_query::_FuncCall_default_instance_); +inline const ::pg_query::DefineStmt& Node::_internal_define_stmt() const { + return node_case() == kDefineStmt ? *_impl_.node_.define_stmt_ : reinterpret_cast<::pg_query::DefineStmt&>(::pg_query::_DefineStmt_default_instance_); } -inline const ::pg_query::FuncCall& Node::func_call() const { - // @@protoc_insertion_point(field_get:pg_query.Node.func_call) - return _internal_func_call(); +inline const ::pg_query::DefineStmt& Node::define_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.define_stmt) + return _internal_define_stmt(); } -inline ::pg_query::FuncCall* Node::unsafe_arena_release_func_call() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.func_call) - if (_internal_has_func_call()) { +inline ::pg_query::DefineStmt* Node::unsafe_arena_release_define_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.define_stmt) + if (node_case() == kDefineStmt) { clear_has_node(); - ::pg_query::FuncCall* temp = _impl_.node_.func_call_; - _impl_.node_.func_call_ = nullptr; + auto* temp = _impl_.node_.define_stmt_; + _impl_.node_.define_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_func_call(::pg_query::FuncCall* func_call) { +inline void Node::unsafe_arena_set_allocated_define_stmt(::pg_query::DefineStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (func_call) { - set_has_func_call(); - _impl_.node_.func_call_ = func_call; + if (value) { + set_has_define_stmt(); + _impl_.node_.define_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.func_call) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.define_stmt) } -inline ::pg_query::FuncCall* Node::_internal_mutable_func_call() { - if (!_internal_has_func_call()) { +inline ::pg_query::DefineStmt* Node::_internal_mutable_define_stmt() { + if (node_case() != kDefineStmt) { clear_node(); - set_has_func_call(); - _impl_.node_.func_call_ = CreateMaybeMessage< ::pg_query::FuncCall >(GetArenaForAllocation()); + set_has_define_stmt(); + _impl_.node_.define_stmt_ = CreateMaybeMessage<::pg_query::DefineStmt>(GetArena()); } - return _impl_.node_.func_call_; + return _impl_.node_.define_stmt_; } -inline ::pg_query::FuncCall* Node::mutable_func_call() { - ::pg_query::FuncCall* _msg = _internal_mutable_func_call(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.func_call) +inline ::pg_query::DefineStmt* Node::mutable_define_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DefineStmt* _msg = _internal_mutable_define_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.define_stmt) return _msg; } -// .pg_query.A_Star a_star = 175 [json_name = "A_Star"]; -inline bool Node::_internal_has_a_star() const { - return node_case() == kAStar; +// .pg_query.CreateDomainStmt create_domain_stmt = 170 [json_name = "CreateDomainStmt"]; +inline bool Node::has_create_domain_stmt() const { + return node_case() == kCreateDomainStmt; } -inline bool Node::has_a_star() const { - return _internal_has_a_star(); +inline bool Node::_internal_has_create_domain_stmt() const { + return node_case() == kCreateDomainStmt; } -inline void Node::set_has_a_star() { - _impl_._oneof_case_[0] = kAStar; +inline void Node::set_has_create_domain_stmt() { + _impl_._oneof_case_[0] = kCreateDomainStmt; } -inline void Node::clear_a_star() { - if (_internal_has_a_star()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.a_star_; +inline void Node::clear_create_domain_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateDomainStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_domain_stmt_; } clear_has_node(); } } -inline ::pg_query::A_Star* Node::release_a_star() { - // @@protoc_insertion_point(field_release:pg_query.Node.a_star) - if (_internal_has_a_star()) { +inline ::pg_query::CreateDomainStmt* Node::release_create_domain_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_domain_stmt) + if (node_case() == kCreateDomainStmt) { clear_has_node(); - ::pg_query::A_Star* temp = _impl_.node_.a_star_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_domain_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.a_star_ = nullptr; + _impl_.node_.create_domain_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::A_Star& Node::_internal_a_star() const { - return _internal_has_a_star() - ? *_impl_.node_.a_star_ - : reinterpret_cast< ::pg_query::A_Star&>(::pg_query::_A_Star_default_instance_); +inline const ::pg_query::CreateDomainStmt& Node::_internal_create_domain_stmt() const { + return node_case() == kCreateDomainStmt ? *_impl_.node_.create_domain_stmt_ : reinterpret_cast<::pg_query::CreateDomainStmt&>(::pg_query::_CreateDomainStmt_default_instance_); } -inline const ::pg_query::A_Star& Node::a_star() const { - // @@protoc_insertion_point(field_get:pg_query.Node.a_star) - return _internal_a_star(); +inline const ::pg_query::CreateDomainStmt& Node::create_domain_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_domain_stmt) + return _internal_create_domain_stmt(); } -inline ::pg_query::A_Star* Node::unsafe_arena_release_a_star() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_star) - if (_internal_has_a_star()) { +inline ::pg_query::CreateDomainStmt* Node::unsafe_arena_release_create_domain_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_domain_stmt) + if (node_case() == kCreateDomainStmt) { clear_has_node(); - ::pg_query::A_Star* temp = _impl_.node_.a_star_; - _impl_.node_.a_star_ = nullptr; + auto* temp = _impl_.node_.create_domain_stmt_; + _impl_.node_.create_domain_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_a_star(::pg_query::A_Star* a_star) { +inline void Node::unsafe_arena_set_allocated_create_domain_stmt(::pg_query::CreateDomainStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (a_star) { - set_has_a_star(); - _impl_.node_.a_star_ = a_star; + if (value) { + set_has_create_domain_stmt(); + _impl_.node_.create_domain_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_star) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_domain_stmt) } -inline ::pg_query::A_Star* Node::_internal_mutable_a_star() { - if (!_internal_has_a_star()) { +inline ::pg_query::CreateDomainStmt* Node::_internal_mutable_create_domain_stmt() { + if (node_case() != kCreateDomainStmt) { clear_node(); - set_has_a_star(); - _impl_.node_.a_star_ = CreateMaybeMessage< ::pg_query::A_Star >(GetArenaForAllocation()); + set_has_create_domain_stmt(); + _impl_.node_.create_domain_stmt_ = CreateMaybeMessage<::pg_query::CreateDomainStmt>(GetArena()); } - return _impl_.node_.a_star_; + return _impl_.node_.create_domain_stmt_; } -inline ::pg_query::A_Star* Node::mutable_a_star() { - ::pg_query::A_Star* _msg = _internal_mutable_a_star(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.a_star) +inline ::pg_query::CreateDomainStmt* Node::mutable_create_domain_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateDomainStmt* _msg = _internal_mutable_create_domain_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_domain_stmt) return _msg; } -// .pg_query.A_Indices a_indices = 176 [json_name = "A_Indices"]; -inline bool Node::_internal_has_a_indices() const { - return node_case() == kAIndices; +// .pg_query.CreateOpClassStmt create_op_class_stmt = 171 [json_name = "CreateOpClassStmt"]; +inline bool Node::has_create_op_class_stmt() const { + return node_case() == kCreateOpClassStmt; } -inline bool Node::has_a_indices() const { - return _internal_has_a_indices(); +inline bool Node::_internal_has_create_op_class_stmt() const { + return node_case() == kCreateOpClassStmt; } -inline void Node::set_has_a_indices() { - _impl_._oneof_case_[0] = kAIndices; +inline void Node::set_has_create_op_class_stmt() { + _impl_._oneof_case_[0] = kCreateOpClassStmt; } -inline void Node::clear_a_indices() { - if (_internal_has_a_indices()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.a_indices_; +inline void Node::clear_create_op_class_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateOpClassStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_op_class_stmt_; } clear_has_node(); } } -inline ::pg_query::A_Indices* Node::release_a_indices() { - // @@protoc_insertion_point(field_release:pg_query.Node.a_indices) - if (_internal_has_a_indices()) { +inline ::pg_query::CreateOpClassStmt* Node::release_create_op_class_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_op_class_stmt) + if (node_case() == kCreateOpClassStmt) { clear_has_node(); - ::pg_query::A_Indices* temp = _impl_.node_.a_indices_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_op_class_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.a_indices_ = nullptr; + _impl_.node_.create_op_class_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::A_Indices& Node::_internal_a_indices() const { - return _internal_has_a_indices() - ? *_impl_.node_.a_indices_ - : reinterpret_cast< ::pg_query::A_Indices&>(::pg_query::_A_Indices_default_instance_); +inline const ::pg_query::CreateOpClassStmt& Node::_internal_create_op_class_stmt() const { + return node_case() == kCreateOpClassStmt ? *_impl_.node_.create_op_class_stmt_ : reinterpret_cast<::pg_query::CreateOpClassStmt&>(::pg_query::_CreateOpClassStmt_default_instance_); } -inline const ::pg_query::A_Indices& Node::a_indices() const { - // @@protoc_insertion_point(field_get:pg_query.Node.a_indices) - return _internal_a_indices(); +inline const ::pg_query::CreateOpClassStmt& Node::create_op_class_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_op_class_stmt) + return _internal_create_op_class_stmt(); } -inline ::pg_query::A_Indices* Node::unsafe_arena_release_a_indices() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_indices) - if (_internal_has_a_indices()) { +inline ::pg_query::CreateOpClassStmt* Node::unsafe_arena_release_create_op_class_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_op_class_stmt) + if (node_case() == kCreateOpClassStmt) { clear_has_node(); - ::pg_query::A_Indices* temp = _impl_.node_.a_indices_; - _impl_.node_.a_indices_ = nullptr; + auto* temp = _impl_.node_.create_op_class_stmt_; + _impl_.node_.create_op_class_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_a_indices(::pg_query::A_Indices* a_indices) { +inline void Node::unsafe_arena_set_allocated_create_op_class_stmt(::pg_query::CreateOpClassStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (a_indices) { - set_has_a_indices(); - _impl_.node_.a_indices_ = a_indices; + if (value) { + set_has_create_op_class_stmt(); + _impl_.node_.create_op_class_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_indices) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_op_class_stmt) } -inline ::pg_query::A_Indices* Node::_internal_mutable_a_indices() { - if (!_internal_has_a_indices()) { +inline ::pg_query::CreateOpClassStmt* Node::_internal_mutable_create_op_class_stmt() { + if (node_case() != kCreateOpClassStmt) { clear_node(); - set_has_a_indices(); - _impl_.node_.a_indices_ = CreateMaybeMessage< ::pg_query::A_Indices >(GetArenaForAllocation()); + set_has_create_op_class_stmt(); + _impl_.node_.create_op_class_stmt_ = CreateMaybeMessage<::pg_query::CreateOpClassStmt>(GetArena()); } - return _impl_.node_.a_indices_; + return _impl_.node_.create_op_class_stmt_; } -inline ::pg_query::A_Indices* Node::mutable_a_indices() { - ::pg_query::A_Indices* _msg = _internal_mutable_a_indices(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.a_indices) +inline ::pg_query::CreateOpClassStmt* Node::mutable_create_op_class_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateOpClassStmt* _msg = _internal_mutable_create_op_class_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_op_class_stmt) return _msg; } -// .pg_query.A_Indirection a_indirection = 177 [json_name = "A_Indirection"]; -inline bool Node::_internal_has_a_indirection() const { - return node_case() == kAIndirection; +// .pg_query.CreateOpClassItem create_op_class_item = 172 [json_name = "CreateOpClassItem"]; +inline bool Node::has_create_op_class_item() const { + return node_case() == kCreateOpClassItem; } -inline bool Node::has_a_indirection() const { - return _internal_has_a_indirection(); +inline bool Node::_internal_has_create_op_class_item() const { + return node_case() == kCreateOpClassItem; } -inline void Node::set_has_a_indirection() { - _impl_._oneof_case_[0] = kAIndirection; +inline void Node::set_has_create_op_class_item() { + _impl_._oneof_case_[0] = kCreateOpClassItem; } -inline void Node::clear_a_indirection() { - if (_internal_has_a_indirection()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.a_indirection_; +inline void Node::clear_create_op_class_item() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateOpClassItem) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_op_class_item_; } clear_has_node(); } } -inline ::pg_query::A_Indirection* Node::release_a_indirection() { - // @@protoc_insertion_point(field_release:pg_query.Node.a_indirection) - if (_internal_has_a_indirection()) { +inline ::pg_query::CreateOpClassItem* Node::release_create_op_class_item() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_op_class_item) + if (node_case() == kCreateOpClassItem) { clear_has_node(); - ::pg_query::A_Indirection* temp = _impl_.node_.a_indirection_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_op_class_item_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.a_indirection_ = nullptr; + _impl_.node_.create_op_class_item_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::A_Indirection& Node::_internal_a_indirection() const { - return _internal_has_a_indirection() - ? *_impl_.node_.a_indirection_ - : reinterpret_cast< ::pg_query::A_Indirection&>(::pg_query::_A_Indirection_default_instance_); +inline const ::pg_query::CreateOpClassItem& Node::_internal_create_op_class_item() const { + return node_case() == kCreateOpClassItem ? *_impl_.node_.create_op_class_item_ : reinterpret_cast<::pg_query::CreateOpClassItem&>(::pg_query::_CreateOpClassItem_default_instance_); } -inline const ::pg_query::A_Indirection& Node::a_indirection() const { - // @@protoc_insertion_point(field_get:pg_query.Node.a_indirection) - return _internal_a_indirection(); +inline const ::pg_query::CreateOpClassItem& Node::create_op_class_item() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_op_class_item) + return _internal_create_op_class_item(); } -inline ::pg_query::A_Indirection* Node::unsafe_arena_release_a_indirection() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_indirection) - if (_internal_has_a_indirection()) { +inline ::pg_query::CreateOpClassItem* Node::unsafe_arena_release_create_op_class_item() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_op_class_item) + if (node_case() == kCreateOpClassItem) { clear_has_node(); - ::pg_query::A_Indirection* temp = _impl_.node_.a_indirection_; - _impl_.node_.a_indirection_ = nullptr; + auto* temp = _impl_.node_.create_op_class_item_; + _impl_.node_.create_op_class_item_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_a_indirection(::pg_query::A_Indirection* a_indirection) { +inline void Node::unsafe_arena_set_allocated_create_op_class_item(::pg_query::CreateOpClassItem* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (a_indirection) { - set_has_a_indirection(); - _impl_.node_.a_indirection_ = a_indirection; + if (value) { + set_has_create_op_class_item(); + _impl_.node_.create_op_class_item_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_indirection) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_op_class_item) } -inline ::pg_query::A_Indirection* Node::_internal_mutable_a_indirection() { - if (!_internal_has_a_indirection()) { +inline ::pg_query::CreateOpClassItem* Node::_internal_mutable_create_op_class_item() { + if (node_case() != kCreateOpClassItem) { clear_node(); - set_has_a_indirection(); - _impl_.node_.a_indirection_ = CreateMaybeMessage< ::pg_query::A_Indirection >(GetArenaForAllocation()); + set_has_create_op_class_item(); + _impl_.node_.create_op_class_item_ = CreateMaybeMessage<::pg_query::CreateOpClassItem>(GetArena()); } - return _impl_.node_.a_indirection_; + return _impl_.node_.create_op_class_item_; } -inline ::pg_query::A_Indirection* Node::mutable_a_indirection() { - ::pg_query::A_Indirection* _msg = _internal_mutable_a_indirection(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.a_indirection) +inline ::pg_query::CreateOpClassItem* Node::mutable_create_op_class_item() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateOpClassItem* _msg = _internal_mutable_create_op_class_item(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_op_class_item) return _msg; } -// .pg_query.A_ArrayExpr a_array_expr = 178 [json_name = "A_ArrayExpr"]; -inline bool Node::_internal_has_a_array_expr() const { - return node_case() == kAArrayExpr; +// .pg_query.CreateOpFamilyStmt create_op_family_stmt = 173 [json_name = "CreateOpFamilyStmt"]; +inline bool Node::has_create_op_family_stmt() const { + return node_case() == kCreateOpFamilyStmt; } -inline bool Node::has_a_array_expr() const { - return _internal_has_a_array_expr(); +inline bool Node::_internal_has_create_op_family_stmt() const { + return node_case() == kCreateOpFamilyStmt; } -inline void Node::set_has_a_array_expr() { - _impl_._oneof_case_[0] = kAArrayExpr; +inline void Node::set_has_create_op_family_stmt() { + _impl_._oneof_case_[0] = kCreateOpFamilyStmt; } -inline void Node::clear_a_array_expr() { - if (_internal_has_a_array_expr()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.a_array_expr_; +inline void Node::clear_create_op_family_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateOpFamilyStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_op_family_stmt_; } clear_has_node(); } } -inline ::pg_query::A_ArrayExpr* Node::release_a_array_expr() { - // @@protoc_insertion_point(field_release:pg_query.Node.a_array_expr) - if (_internal_has_a_array_expr()) { +inline ::pg_query::CreateOpFamilyStmt* Node::release_create_op_family_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_op_family_stmt) + if (node_case() == kCreateOpFamilyStmt) { clear_has_node(); - ::pg_query::A_ArrayExpr* temp = _impl_.node_.a_array_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_op_family_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.a_array_expr_ = nullptr; + _impl_.node_.create_op_family_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::A_ArrayExpr& Node::_internal_a_array_expr() const { - return _internal_has_a_array_expr() - ? *_impl_.node_.a_array_expr_ - : reinterpret_cast< ::pg_query::A_ArrayExpr&>(::pg_query::_A_ArrayExpr_default_instance_); +inline const ::pg_query::CreateOpFamilyStmt& Node::_internal_create_op_family_stmt() const { + return node_case() == kCreateOpFamilyStmt ? *_impl_.node_.create_op_family_stmt_ : reinterpret_cast<::pg_query::CreateOpFamilyStmt&>(::pg_query::_CreateOpFamilyStmt_default_instance_); } -inline const ::pg_query::A_ArrayExpr& Node::a_array_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Node.a_array_expr) - return _internal_a_array_expr(); +inline const ::pg_query::CreateOpFamilyStmt& Node::create_op_family_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_op_family_stmt) + return _internal_create_op_family_stmt(); } -inline ::pg_query::A_ArrayExpr* Node::unsafe_arena_release_a_array_expr() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_array_expr) - if (_internal_has_a_array_expr()) { +inline ::pg_query::CreateOpFamilyStmt* Node::unsafe_arena_release_create_op_family_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_op_family_stmt) + if (node_case() == kCreateOpFamilyStmt) { clear_has_node(); - ::pg_query::A_ArrayExpr* temp = _impl_.node_.a_array_expr_; - _impl_.node_.a_array_expr_ = nullptr; + auto* temp = _impl_.node_.create_op_family_stmt_; + _impl_.node_.create_op_family_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_a_array_expr(::pg_query::A_ArrayExpr* a_array_expr) { +inline void Node::unsafe_arena_set_allocated_create_op_family_stmt(::pg_query::CreateOpFamilyStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (a_array_expr) { - set_has_a_array_expr(); - _impl_.node_.a_array_expr_ = a_array_expr; + if (value) { + set_has_create_op_family_stmt(); + _impl_.node_.create_op_family_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_array_expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_op_family_stmt) } -inline ::pg_query::A_ArrayExpr* Node::_internal_mutable_a_array_expr() { - if (!_internal_has_a_array_expr()) { +inline ::pg_query::CreateOpFamilyStmt* Node::_internal_mutable_create_op_family_stmt() { + if (node_case() != kCreateOpFamilyStmt) { clear_node(); - set_has_a_array_expr(); - _impl_.node_.a_array_expr_ = CreateMaybeMessage< ::pg_query::A_ArrayExpr >(GetArenaForAllocation()); + set_has_create_op_family_stmt(); + _impl_.node_.create_op_family_stmt_ = CreateMaybeMessage<::pg_query::CreateOpFamilyStmt>(GetArena()); } - return _impl_.node_.a_array_expr_; + return _impl_.node_.create_op_family_stmt_; } -inline ::pg_query::A_ArrayExpr* Node::mutable_a_array_expr() { - ::pg_query::A_ArrayExpr* _msg = _internal_mutable_a_array_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.a_array_expr) +inline ::pg_query::CreateOpFamilyStmt* Node::mutable_create_op_family_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateOpFamilyStmt* _msg = _internal_mutable_create_op_family_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_op_family_stmt) return _msg; } -// .pg_query.ResTarget res_target = 179 [json_name = "ResTarget"]; -inline bool Node::_internal_has_res_target() const { - return node_case() == kResTarget; +// .pg_query.AlterOpFamilyStmt alter_op_family_stmt = 174 [json_name = "AlterOpFamilyStmt"]; +inline bool Node::has_alter_op_family_stmt() const { + return node_case() == kAlterOpFamilyStmt; } -inline bool Node::has_res_target() const { - return _internal_has_res_target(); +inline bool Node::_internal_has_alter_op_family_stmt() const { + return node_case() == kAlterOpFamilyStmt; } -inline void Node::set_has_res_target() { - _impl_._oneof_case_[0] = kResTarget; +inline void Node::set_has_alter_op_family_stmt() { + _impl_._oneof_case_[0] = kAlterOpFamilyStmt; } -inline void Node::clear_res_target() { - if (_internal_has_res_target()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.res_target_; +inline void Node::clear_alter_op_family_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterOpFamilyStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_op_family_stmt_; } clear_has_node(); } } -inline ::pg_query::ResTarget* Node::release_res_target() { - // @@protoc_insertion_point(field_release:pg_query.Node.res_target) - if (_internal_has_res_target()) { +inline ::pg_query::AlterOpFamilyStmt* Node::release_alter_op_family_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_op_family_stmt) + if (node_case() == kAlterOpFamilyStmt) { clear_has_node(); - ::pg_query::ResTarget* temp = _impl_.node_.res_target_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_op_family_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.res_target_ = nullptr; + _impl_.node_.alter_op_family_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ResTarget& Node::_internal_res_target() const { - return _internal_has_res_target() - ? *_impl_.node_.res_target_ - : reinterpret_cast< ::pg_query::ResTarget&>(::pg_query::_ResTarget_default_instance_); +inline const ::pg_query::AlterOpFamilyStmt& Node::_internal_alter_op_family_stmt() const { + return node_case() == kAlterOpFamilyStmt ? *_impl_.node_.alter_op_family_stmt_ : reinterpret_cast<::pg_query::AlterOpFamilyStmt&>(::pg_query::_AlterOpFamilyStmt_default_instance_); } -inline const ::pg_query::ResTarget& Node::res_target() const { - // @@protoc_insertion_point(field_get:pg_query.Node.res_target) - return _internal_res_target(); +inline const ::pg_query::AlterOpFamilyStmt& Node::alter_op_family_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_op_family_stmt) + return _internal_alter_op_family_stmt(); } -inline ::pg_query::ResTarget* Node::unsafe_arena_release_res_target() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.res_target) - if (_internal_has_res_target()) { +inline ::pg_query::AlterOpFamilyStmt* Node::unsafe_arena_release_alter_op_family_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_op_family_stmt) + if (node_case() == kAlterOpFamilyStmt) { clear_has_node(); - ::pg_query::ResTarget* temp = _impl_.node_.res_target_; - _impl_.node_.res_target_ = nullptr; + auto* temp = _impl_.node_.alter_op_family_stmt_; + _impl_.node_.alter_op_family_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_res_target(::pg_query::ResTarget* res_target) { +inline void Node::unsafe_arena_set_allocated_alter_op_family_stmt(::pg_query::AlterOpFamilyStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (res_target) { - set_has_res_target(); - _impl_.node_.res_target_ = res_target; + if (value) { + set_has_alter_op_family_stmt(); + _impl_.node_.alter_op_family_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.res_target) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_op_family_stmt) } -inline ::pg_query::ResTarget* Node::_internal_mutable_res_target() { - if (!_internal_has_res_target()) { +inline ::pg_query::AlterOpFamilyStmt* Node::_internal_mutable_alter_op_family_stmt() { + if (node_case() != kAlterOpFamilyStmt) { clear_node(); - set_has_res_target(); - _impl_.node_.res_target_ = CreateMaybeMessage< ::pg_query::ResTarget >(GetArenaForAllocation()); + set_has_alter_op_family_stmt(); + _impl_.node_.alter_op_family_stmt_ = CreateMaybeMessage<::pg_query::AlterOpFamilyStmt>(GetArena()); } - return _impl_.node_.res_target_; + return _impl_.node_.alter_op_family_stmt_; } -inline ::pg_query::ResTarget* Node::mutable_res_target() { - ::pg_query::ResTarget* _msg = _internal_mutable_res_target(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.res_target) +inline ::pg_query::AlterOpFamilyStmt* Node::mutable_alter_op_family_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterOpFamilyStmt* _msg = _internal_mutable_alter_op_family_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_op_family_stmt) return _msg; } -// .pg_query.MultiAssignRef multi_assign_ref = 180 [json_name = "MultiAssignRef"]; -inline bool Node::_internal_has_multi_assign_ref() const { - return node_case() == kMultiAssignRef; +// .pg_query.DropStmt drop_stmt = 175 [json_name = "DropStmt"]; +inline bool Node::has_drop_stmt() const { + return node_case() == kDropStmt; } -inline bool Node::has_multi_assign_ref() const { - return _internal_has_multi_assign_ref(); +inline bool Node::_internal_has_drop_stmt() const { + return node_case() == kDropStmt; } -inline void Node::set_has_multi_assign_ref() { - _impl_._oneof_case_[0] = kMultiAssignRef; +inline void Node::set_has_drop_stmt() { + _impl_._oneof_case_[0] = kDropStmt; } -inline void Node::clear_multi_assign_ref() { - if (_internal_has_multi_assign_ref()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.multi_assign_ref_; +inline void Node::clear_drop_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDropStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.drop_stmt_; } clear_has_node(); } } -inline ::pg_query::MultiAssignRef* Node::release_multi_assign_ref() { - // @@protoc_insertion_point(field_release:pg_query.Node.multi_assign_ref) - if (_internal_has_multi_assign_ref()) { +inline ::pg_query::DropStmt* Node::release_drop_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.drop_stmt) + if (node_case() == kDropStmt) { clear_has_node(); - ::pg_query::MultiAssignRef* temp = _impl_.node_.multi_assign_ref_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.drop_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.multi_assign_ref_ = nullptr; + _impl_.node_.drop_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::MultiAssignRef& Node::_internal_multi_assign_ref() const { - return _internal_has_multi_assign_ref() - ? *_impl_.node_.multi_assign_ref_ - : reinterpret_cast< ::pg_query::MultiAssignRef&>(::pg_query::_MultiAssignRef_default_instance_); +inline const ::pg_query::DropStmt& Node::_internal_drop_stmt() const { + return node_case() == kDropStmt ? *_impl_.node_.drop_stmt_ : reinterpret_cast<::pg_query::DropStmt&>(::pg_query::_DropStmt_default_instance_); } -inline const ::pg_query::MultiAssignRef& Node::multi_assign_ref() const { - // @@protoc_insertion_point(field_get:pg_query.Node.multi_assign_ref) - return _internal_multi_assign_ref(); +inline const ::pg_query::DropStmt& Node::drop_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.drop_stmt) + return _internal_drop_stmt(); } -inline ::pg_query::MultiAssignRef* Node::unsafe_arena_release_multi_assign_ref() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.multi_assign_ref) - if (_internal_has_multi_assign_ref()) { +inline ::pg_query::DropStmt* Node::unsafe_arena_release_drop_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_stmt) + if (node_case() == kDropStmt) { clear_has_node(); - ::pg_query::MultiAssignRef* temp = _impl_.node_.multi_assign_ref_; - _impl_.node_.multi_assign_ref_ = nullptr; + auto* temp = _impl_.node_.drop_stmt_; + _impl_.node_.drop_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_multi_assign_ref(::pg_query::MultiAssignRef* multi_assign_ref) { +inline void Node::unsafe_arena_set_allocated_drop_stmt(::pg_query::DropStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (multi_assign_ref) { - set_has_multi_assign_ref(); - _impl_.node_.multi_assign_ref_ = multi_assign_ref; + if (value) { + set_has_drop_stmt(); + _impl_.node_.drop_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.multi_assign_ref) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_stmt) } -inline ::pg_query::MultiAssignRef* Node::_internal_mutable_multi_assign_ref() { - if (!_internal_has_multi_assign_ref()) { +inline ::pg_query::DropStmt* Node::_internal_mutable_drop_stmt() { + if (node_case() != kDropStmt) { clear_node(); - set_has_multi_assign_ref(); - _impl_.node_.multi_assign_ref_ = CreateMaybeMessage< ::pg_query::MultiAssignRef >(GetArenaForAllocation()); + set_has_drop_stmt(); + _impl_.node_.drop_stmt_ = CreateMaybeMessage<::pg_query::DropStmt>(GetArena()); } - return _impl_.node_.multi_assign_ref_; + return _impl_.node_.drop_stmt_; } -inline ::pg_query::MultiAssignRef* Node::mutable_multi_assign_ref() { - ::pg_query::MultiAssignRef* _msg = _internal_mutable_multi_assign_ref(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.multi_assign_ref) +inline ::pg_query::DropStmt* Node::mutable_drop_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DropStmt* _msg = _internal_mutable_drop_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_stmt) return _msg; } -// .pg_query.TypeCast type_cast = 181 [json_name = "TypeCast"]; -inline bool Node::_internal_has_type_cast() const { - return node_case() == kTypeCast; +// .pg_query.TruncateStmt truncate_stmt = 176 [json_name = "TruncateStmt"]; +inline bool Node::has_truncate_stmt() const { + return node_case() == kTruncateStmt; } -inline bool Node::has_type_cast() const { - return _internal_has_type_cast(); +inline bool Node::_internal_has_truncate_stmt() const { + return node_case() == kTruncateStmt; } -inline void Node::set_has_type_cast() { - _impl_._oneof_case_[0] = kTypeCast; +inline void Node::set_has_truncate_stmt() { + _impl_._oneof_case_[0] = kTruncateStmt; } -inline void Node::clear_type_cast() { - if (_internal_has_type_cast()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.type_cast_; +inline void Node::clear_truncate_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kTruncateStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.truncate_stmt_; } clear_has_node(); } } -inline ::pg_query::TypeCast* Node::release_type_cast() { - // @@protoc_insertion_point(field_release:pg_query.Node.type_cast) - if (_internal_has_type_cast()) { +inline ::pg_query::TruncateStmt* Node::release_truncate_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.truncate_stmt) + if (node_case() == kTruncateStmt) { clear_has_node(); - ::pg_query::TypeCast* temp = _impl_.node_.type_cast_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.truncate_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.type_cast_ = nullptr; + _impl_.node_.truncate_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::TypeCast& Node::_internal_type_cast() const { - return _internal_has_type_cast() - ? *_impl_.node_.type_cast_ - : reinterpret_cast< ::pg_query::TypeCast&>(::pg_query::_TypeCast_default_instance_); +inline const ::pg_query::TruncateStmt& Node::_internal_truncate_stmt() const { + return node_case() == kTruncateStmt ? *_impl_.node_.truncate_stmt_ : reinterpret_cast<::pg_query::TruncateStmt&>(::pg_query::_TruncateStmt_default_instance_); } -inline const ::pg_query::TypeCast& Node::type_cast() const { - // @@protoc_insertion_point(field_get:pg_query.Node.type_cast) - return _internal_type_cast(); +inline const ::pg_query::TruncateStmt& Node::truncate_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.truncate_stmt) + return _internal_truncate_stmt(); } -inline ::pg_query::TypeCast* Node::unsafe_arena_release_type_cast() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.type_cast) - if (_internal_has_type_cast()) { +inline ::pg_query::TruncateStmt* Node::unsafe_arena_release_truncate_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.truncate_stmt) + if (node_case() == kTruncateStmt) { clear_has_node(); - ::pg_query::TypeCast* temp = _impl_.node_.type_cast_; - _impl_.node_.type_cast_ = nullptr; + auto* temp = _impl_.node_.truncate_stmt_; + _impl_.node_.truncate_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_type_cast(::pg_query::TypeCast* type_cast) { +inline void Node::unsafe_arena_set_allocated_truncate_stmt(::pg_query::TruncateStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (type_cast) { - set_has_type_cast(); - _impl_.node_.type_cast_ = type_cast; + if (value) { + set_has_truncate_stmt(); + _impl_.node_.truncate_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.type_cast) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.truncate_stmt) } -inline ::pg_query::TypeCast* Node::_internal_mutable_type_cast() { - if (!_internal_has_type_cast()) { +inline ::pg_query::TruncateStmt* Node::_internal_mutable_truncate_stmt() { + if (node_case() != kTruncateStmt) { clear_node(); - set_has_type_cast(); - _impl_.node_.type_cast_ = CreateMaybeMessage< ::pg_query::TypeCast >(GetArenaForAllocation()); + set_has_truncate_stmt(); + _impl_.node_.truncate_stmt_ = CreateMaybeMessage<::pg_query::TruncateStmt>(GetArena()); } - return _impl_.node_.type_cast_; + return _impl_.node_.truncate_stmt_; } -inline ::pg_query::TypeCast* Node::mutable_type_cast() { - ::pg_query::TypeCast* _msg = _internal_mutable_type_cast(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.type_cast) +inline ::pg_query::TruncateStmt* Node::mutable_truncate_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TruncateStmt* _msg = _internal_mutable_truncate_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.truncate_stmt) return _msg; } -// .pg_query.CollateClause collate_clause = 182 [json_name = "CollateClause"]; -inline bool Node::_internal_has_collate_clause() const { - return node_case() == kCollateClause; +// .pg_query.CommentStmt comment_stmt = 177 [json_name = "CommentStmt"]; +inline bool Node::has_comment_stmt() const { + return node_case() == kCommentStmt; } -inline bool Node::has_collate_clause() const { - return _internal_has_collate_clause(); +inline bool Node::_internal_has_comment_stmt() const { + return node_case() == kCommentStmt; } -inline void Node::set_has_collate_clause() { - _impl_._oneof_case_[0] = kCollateClause; +inline void Node::set_has_comment_stmt() { + _impl_._oneof_case_[0] = kCommentStmt; } -inline void Node::clear_collate_clause() { - if (_internal_has_collate_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.collate_clause_; +inline void Node::clear_comment_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCommentStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.comment_stmt_; } clear_has_node(); } } -inline ::pg_query::CollateClause* Node::release_collate_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.collate_clause) - if (_internal_has_collate_clause()) { +inline ::pg_query::CommentStmt* Node::release_comment_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.comment_stmt) + if (node_case() == kCommentStmt) { clear_has_node(); - ::pg_query::CollateClause* temp = _impl_.node_.collate_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.comment_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.collate_clause_ = nullptr; + _impl_.node_.comment_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CollateClause& Node::_internal_collate_clause() const { - return _internal_has_collate_clause() - ? *_impl_.node_.collate_clause_ - : reinterpret_cast< ::pg_query::CollateClause&>(::pg_query::_CollateClause_default_instance_); +inline const ::pg_query::CommentStmt& Node::_internal_comment_stmt() const { + return node_case() == kCommentStmt ? *_impl_.node_.comment_stmt_ : reinterpret_cast<::pg_query::CommentStmt&>(::pg_query::_CommentStmt_default_instance_); } -inline const ::pg_query::CollateClause& Node::collate_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.collate_clause) - return _internal_collate_clause(); +inline const ::pg_query::CommentStmt& Node::comment_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.comment_stmt) + return _internal_comment_stmt(); } -inline ::pg_query::CollateClause* Node::unsafe_arena_release_collate_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.collate_clause) - if (_internal_has_collate_clause()) { +inline ::pg_query::CommentStmt* Node::unsafe_arena_release_comment_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.comment_stmt) + if (node_case() == kCommentStmt) { clear_has_node(); - ::pg_query::CollateClause* temp = _impl_.node_.collate_clause_; - _impl_.node_.collate_clause_ = nullptr; + auto* temp = _impl_.node_.comment_stmt_; + _impl_.node_.comment_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_collate_clause(::pg_query::CollateClause* collate_clause) { +inline void Node::unsafe_arena_set_allocated_comment_stmt(::pg_query::CommentStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (collate_clause) { - set_has_collate_clause(); - _impl_.node_.collate_clause_ = collate_clause; + if (value) { + set_has_comment_stmt(); + _impl_.node_.comment_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.collate_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.comment_stmt) } -inline ::pg_query::CollateClause* Node::_internal_mutable_collate_clause() { - if (!_internal_has_collate_clause()) { +inline ::pg_query::CommentStmt* Node::_internal_mutable_comment_stmt() { + if (node_case() != kCommentStmt) { clear_node(); - set_has_collate_clause(); - _impl_.node_.collate_clause_ = CreateMaybeMessage< ::pg_query::CollateClause >(GetArenaForAllocation()); + set_has_comment_stmt(); + _impl_.node_.comment_stmt_ = CreateMaybeMessage<::pg_query::CommentStmt>(GetArena()); } - return _impl_.node_.collate_clause_; + return _impl_.node_.comment_stmt_; } -inline ::pg_query::CollateClause* Node::mutable_collate_clause() { - ::pg_query::CollateClause* _msg = _internal_mutable_collate_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.collate_clause) +inline ::pg_query::CommentStmt* Node::mutable_comment_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CommentStmt* _msg = _internal_mutable_comment_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.comment_stmt) return _msg; } -// .pg_query.SortBy sort_by = 183 [json_name = "SortBy"]; -inline bool Node::_internal_has_sort_by() const { - return node_case() == kSortBy; +// .pg_query.SecLabelStmt sec_label_stmt = 178 [json_name = "SecLabelStmt"]; +inline bool Node::has_sec_label_stmt() const { + return node_case() == kSecLabelStmt; } -inline bool Node::has_sort_by() const { - return _internal_has_sort_by(); +inline bool Node::_internal_has_sec_label_stmt() const { + return node_case() == kSecLabelStmt; } -inline void Node::set_has_sort_by() { - _impl_._oneof_case_[0] = kSortBy; +inline void Node::set_has_sec_label_stmt() { + _impl_._oneof_case_[0] = kSecLabelStmt; } -inline void Node::clear_sort_by() { - if (_internal_has_sort_by()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.sort_by_; +inline void Node::clear_sec_label_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kSecLabelStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.sec_label_stmt_; } clear_has_node(); } } -inline ::pg_query::SortBy* Node::release_sort_by() { - // @@protoc_insertion_point(field_release:pg_query.Node.sort_by) - if (_internal_has_sort_by()) { +inline ::pg_query::SecLabelStmt* Node::release_sec_label_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.sec_label_stmt) + if (node_case() == kSecLabelStmt) { clear_has_node(); - ::pg_query::SortBy* temp = _impl_.node_.sort_by_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.sec_label_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.sort_by_ = nullptr; + _impl_.node_.sec_label_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::SortBy& Node::_internal_sort_by() const { - return _internal_has_sort_by() - ? *_impl_.node_.sort_by_ - : reinterpret_cast< ::pg_query::SortBy&>(::pg_query::_SortBy_default_instance_); +inline const ::pg_query::SecLabelStmt& Node::_internal_sec_label_stmt() const { + return node_case() == kSecLabelStmt ? *_impl_.node_.sec_label_stmt_ : reinterpret_cast<::pg_query::SecLabelStmt&>(::pg_query::_SecLabelStmt_default_instance_); } -inline const ::pg_query::SortBy& Node::sort_by() const { - // @@protoc_insertion_point(field_get:pg_query.Node.sort_by) - return _internal_sort_by(); +inline const ::pg_query::SecLabelStmt& Node::sec_label_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.sec_label_stmt) + return _internal_sec_label_stmt(); } -inline ::pg_query::SortBy* Node::unsafe_arena_release_sort_by() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.sort_by) - if (_internal_has_sort_by()) { +inline ::pg_query::SecLabelStmt* Node::unsafe_arena_release_sec_label_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.sec_label_stmt) + if (node_case() == kSecLabelStmt) { clear_has_node(); - ::pg_query::SortBy* temp = _impl_.node_.sort_by_; - _impl_.node_.sort_by_ = nullptr; + auto* temp = _impl_.node_.sec_label_stmt_; + _impl_.node_.sec_label_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_sort_by(::pg_query::SortBy* sort_by) { +inline void Node::unsafe_arena_set_allocated_sec_label_stmt(::pg_query::SecLabelStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (sort_by) { - set_has_sort_by(); - _impl_.node_.sort_by_ = sort_by; + if (value) { + set_has_sec_label_stmt(); + _impl_.node_.sec_label_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.sort_by) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.sec_label_stmt) } -inline ::pg_query::SortBy* Node::_internal_mutable_sort_by() { - if (!_internal_has_sort_by()) { +inline ::pg_query::SecLabelStmt* Node::_internal_mutable_sec_label_stmt() { + if (node_case() != kSecLabelStmt) { clear_node(); - set_has_sort_by(); - _impl_.node_.sort_by_ = CreateMaybeMessage< ::pg_query::SortBy >(GetArenaForAllocation()); + set_has_sec_label_stmt(); + _impl_.node_.sec_label_stmt_ = CreateMaybeMessage<::pg_query::SecLabelStmt>(GetArena()); } - return _impl_.node_.sort_by_; + return _impl_.node_.sec_label_stmt_; } -inline ::pg_query::SortBy* Node::mutable_sort_by() { - ::pg_query::SortBy* _msg = _internal_mutable_sort_by(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.sort_by) +inline ::pg_query::SecLabelStmt* Node::mutable_sec_label_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::SecLabelStmt* _msg = _internal_mutable_sec_label_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.sec_label_stmt) return _msg; } -// .pg_query.WindowDef window_def = 184 [json_name = "WindowDef"]; -inline bool Node::_internal_has_window_def() const { - return node_case() == kWindowDef; +// .pg_query.DeclareCursorStmt declare_cursor_stmt = 179 [json_name = "DeclareCursorStmt"]; +inline bool Node::has_declare_cursor_stmt() const { + return node_case() == kDeclareCursorStmt; } -inline bool Node::has_window_def() const { - return _internal_has_window_def(); +inline bool Node::_internal_has_declare_cursor_stmt() const { + return node_case() == kDeclareCursorStmt; } -inline void Node::set_has_window_def() { - _impl_._oneof_case_[0] = kWindowDef; +inline void Node::set_has_declare_cursor_stmt() { + _impl_._oneof_case_[0] = kDeclareCursorStmt; } -inline void Node::clear_window_def() { - if (_internal_has_window_def()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.window_def_; +inline void Node::clear_declare_cursor_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDeclareCursorStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.declare_cursor_stmt_; } clear_has_node(); } } -inline ::pg_query::WindowDef* Node::release_window_def() { - // @@protoc_insertion_point(field_release:pg_query.Node.window_def) - if (_internal_has_window_def()) { +inline ::pg_query::DeclareCursorStmt* Node::release_declare_cursor_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.declare_cursor_stmt) + if (node_case() == kDeclareCursorStmt) { clear_has_node(); - ::pg_query::WindowDef* temp = _impl_.node_.window_def_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.declare_cursor_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.window_def_ = nullptr; + _impl_.node_.declare_cursor_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::WindowDef& Node::_internal_window_def() const { - return _internal_has_window_def() - ? *_impl_.node_.window_def_ - : reinterpret_cast< ::pg_query::WindowDef&>(::pg_query::_WindowDef_default_instance_); +inline const ::pg_query::DeclareCursorStmt& Node::_internal_declare_cursor_stmt() const { + return node_case() == kDeclareCursorStmt ? *_impl_.node_.declare_cursor_stmt_ : reinterpret_cast<::pg_query::DeclareCursorStmt&>(::pg_query::_DeclareCursorStmt_default_instance_); } -inline const ::pg_query::WindowDef& Node::window_def() const { - // @@protoc_insertion_point(field_get:pg_query.Node.window_def) - return _internal_window_def(); +inline const ::pg_query::DeclareCursorStmt& Node::declare_cursor_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.declare_cursor_stmt) + return _internal_declare_cursor_stmt(); } -inline ::pg_query::WindowDef* Node::unsafe_arena_release_window_def() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.window_def) - if (_internal_has_window_def()) { +inline ::pg_query::DeclareCursorStmt* Node::unsafe_arena_release_declare_cursor_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.declare_cursor_stmt) + if (node_case() == kDeclareCursorStmt) { clear_has_node(); - ::pg_query::WindowDef* temp = _impl_.node_.window_def_; - _impl_.node_.window_def_ = nullptr; + auto* temp = _impl_.node_.declare_cursor_stmt_; + _impl_.node_.declare_cursor_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_window_def(::pg_query::WindowDef* window_def) { +inline void Node::unsafe_arena_set_allocated_declare_cursor_stmt(::pg_query::DeclareCursorStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (window_def) { - set_has_window_def(); - _impl_.node_.window_def_ = window_def; + if (value) { + set_has_declare_cursor_stmt(); + _impl_.node_.declare_cursor_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.window_def) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.declare_cursor_stmt) } -inline ::pg_query::WindowDef* Node::_internal_mutable_window_def() { - if (!_internal_has_window_def()) { +inline ::pg_query::DeclareCursorStmt* Node::_internal_mutable_declare_cursor_stmt() { + if (node_case() != kDeclareCursorStmt) { clear_node(); - set_has_window_def(); - _impl_.node_.window_def_ = CreateMaybeMessage< ::pg_query::WindowDef >(GetArenaForAllocation()); + set_has_declare_cursor_stmt(); + _impl_.node_.declare_cursor_stmt_ = CreateMaybeMessage<::pg_query::DeclareCursorStmt>(GetArena()); } - return _impl_.node_.window_def_; + return _impl_.node_.declare_cursor_stmt_; } -inline ::pg_query::WindowDef* Node::mutable_window_def() { - ::pg_query::WindowDef* _msg = _internal_mutable_window_def(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.window_def) +inline ::pg_query::DeclareCursorStmt* Node::mutable_declare_cursor_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DeclareCursorStmt* _msg = _internal_mutable_declare_cursor_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.declare_cursor_stmt) return _msg; } -// .pg_query.RangeSubselect range_subselect = 185 [json_name = "RangeSubselect"]; -inline bool Node::_internal_has_range_subselect() const { - return node_case() == kRangeSubselect; +// .pg_query.ClosePortalStmt close_portal_stmt = 180 [json_name = "ClosePortalStmt"]; +inline bool Node::has_close_portal_stmt() const { + return node_case() == kClosePortalStmt; } -inline bool Node::has_range_subselect() const { - return _internal_has_range_subselect(); +inline bool Node::_internal_has_close_portal_stmt() const { + return node_case() == kClosePortalStmt; } -inline void Node::set_has_range_subselect() { - _impl_._oneof_case_[0] = kRangeSubselect; +inline void Node::set_has_close_portal_stmt() { + _impl_._oneof_case_[0] = kClosePortalStmt; } -inline void Node::clear_range_subselect() { - if (_internal_has_range_subselect()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.range_subselect_; +inline void Node::clear_close_portal_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kClosePortalStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.close_portal_stmt_; } clear_has_node(); } } -inline ::pg_query::RangeSubselect* Node::release_range_subselect() { - // @@protoc_insertion_point(field_release:pg_query.Node.range_subselect) - if (_internal_has_range_subselect()) { +inline ::pg_query::ClosePortalStmt* Node::release_close_portal_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.close_portal_stmt) + if (node_case() == kClosePortalStmt) { clear_has_node(); - ::pg_query::RangeSubselect* temp = _impl_.node_.range_subselect_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.close_portal_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.range_subselect_ = nullptr; + _impl_.node_.close_portal_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RangeSubselect& Node::_internal_range_subselect() const { - return _internal_has_range_subselect() - ? *_impl_.node_.range_subselect_ - : reinterpret_cast< ::pg_query::RangeSubselect&>(::pg_query::_RangeSubselect_default_instance_); +inline const ::pg_query::ClosePortalStmt& Node::_internal_close_portal_stmt() const { + return node_case() == kClosePortalStmt ? *_impl_.node_.close_portal_stmt_ : reinterpret_cast<::pg_query::ClosePortalStmt&>(::pg_query::_ClosePortalStmt_default_instance_); } -inline const ::pg_query::RangeSubselect& Node::range_subselect() const { - // @@protoc_insertion_point(field_get:pg_query.Node.range_subselect) - return _internal_range_subselect(); +inline const ::pg_query::ClosePortalStmt& Node::close_portal_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.close_portal_stmt) + return _internal_close_portal_stmt(); } -inline ::pg_query::RangeSubselect* Node::unsafe_arena_release_range_subselect() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_subselect) - if (_internal_has_range_subselect()) { +inline ::pg_query::ClosePortalStmt* Node::unsafe_arena_release_close_portal_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.close_portal_stmt) + if (node_case() == kClosePortalStmt) { clear_has_node(); - ::pg_query::RangeSubselect* temp = _impl_.node_.range_subselect_; - _impl_.node_.range_subselect_ = nullptr; + auto* temp = _impl_.node_.close_portal_stmt_; + _impl_.node_.close_portal_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_range_subselect(::pg_query::RangeSubselect* range_subselect) { +inline void Node::unsafe_arena_set_allocated_close_portal_stmt(::pg_query::ClosePortalStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (range_subselect) { - set_has_range_subselect(); - _impl_.node_.range_subselect_ = range_subselect; + if (value) { + set_has_close_portal_stmt(); + _impl_.node_.close_portal_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_subselect) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.close_portal_stmt) } -inline ::pg_query::RangeSubselect* Node::_internal_mutable_range_subselect() { - if (!_internal_has_range_subselect()) { +inline ::pg_query::ClosePortalStmt* Node::_internal_mutable_close_portal_stmt() { + if (node_case() != kClosePortalStmt) { clear_node(); - set_has_range_subselect(); - _impl_.node_.range_subselect_ = CreateMaybeMessage< ::pg_query::RangeSubselect >(GetArenaForAllocation()); + set_has_close_portal_stmt(); + _impl_.node_.close_portal_stmt_ = CreateMaybeMessage<::pg_query::ClosePortalStmt>(GetArena()); } - return _impl_.node_.range_subselect_; + return _impl_.node_.close_portal_stmt_; } -inline ::pg_query::RangeSubselect* Node::mutable_range_subselect() { - ::pg_query::RangeSubselect* _msg = _internal_mutable_range_subselect(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.range_subselect) +inline ::pg_query::ClosePortalStmt* Node::mutable_close_portal_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ClosePortalStmt* _msg = _internal_mutable_close_portal_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.close_portal_stmt) return _msg; } -// .pg_query.RangeFunction range_function = 186 [json_name = "RangeFunction"]; -inline bool Node::_internal_has_range_function() const { - return node_case() == kRangeFunction; +// .pg_query.FetchStmt fetch_stmt = 181 [json_name = "FetchStmt"]; +inline bool Node::has_fetch_stmt() const { + return node_case() == kFetchStmt; } -inline bool Node::has_range_function() const { - return _internal_has_range_function(); +inline bool Node::_internal_has_fetch_stmt() const { + return node_case() == kFetchStmt; } -inline void Node::set_has_range_function() { - _impl_._oneof_case_[0] = kRangeFunction; +inline void Node::set_has_fetch_stmt() { + _impl_._oneof_case_[0] = kFetchStmt; } -inline void Node::clear_range_function() { - if (_internal_has_range_function()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.range_function_; +inline void Node::clear_fetch_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kFetchStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.fetch_stmt_; } clear_has_node(); } } -inline ::pg_query::RangeFunction* Node::release_range_function() { - // @@protoc_insertion_point(field_release:pg_query.Node.range_function) - if (_internal_has_range_function()) { +inline ::pg_query::FetchStmt* Node::release_fetch_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.fetch_stmt) + if (node_case() == kFetchStmt) { clear_has_node(); - ::pg_query::RangeFunction* temp = _impl_.node_.range_function_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.fetch_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.range_function_ = nullptr; + _impl_.node_.fetch_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RangeFunction& Node::_internal_range_function() const { - return _internal_has_range_function() - ? *_impl_.node_.range_function_ - : reinterpret_cast< ::pg_query::RangeFunction&>(::pg_query::_RangeFunction_default_instance_); +inline const ::pg_query::FetchStmt& Node::_internal_fetch_stmt() const { + return node_case() == kFetchStmt ? *_impl_.node_.fetch_stmt_ : reinterpret_cast<::pg_query::FetchStmt&>(::pg_query::_FetchStmt_default_instance_); } -inline const ::pg_query::RangeFunction& Node::range_function() const { - // @@protoc_insertion_point(field_get:pg_query.Node.range_function) - return _internal_range_function(); +inline const ::pg_query::FetchStmt& Node::fetch_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.fetch_stmt) + return _internal_fetch_stmt(); } -inline ::pg_query::RangeFunction* Node::unsafe_arena_release_range_function() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_function) - if (_internal_has_range_function()) { +inline ::pg_query::FetchStmt* Node::unsafe_arena_release_fetch_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.fetch_stmt) + if (node_case() == kFetchStmt) { clear_has_node(); - ::pg_query::RangeFunction* temp = _impl_.node_.range_function_; - _impl_.node_.range_function_ = nullptr; + auto* temp = _impl_.node_.fetch_stmt_; + _impl_.node_.fetch_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_range_function(::pg_query::RangeFunction* range_function) { +inline void Node::unsafe_arena_set_allocated_fetch_stmt(::pg_query::FetchStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (range_function) { - set_has_range_function(); - _impl_.node_.range_function_ = range_function; + if (value) { + set_has_fetch_stmt(); + _impl_.node_.fetch_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_function) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.fetch_stmt) } -inline ::pg_query::RangeFunction* Node::_internal_mutable_range_function() { - if (!_internal_has_range_function()) { +inline ::pg_query::FetchStmt* Node::_internal_mutable_fetch_stmt() { + if (node_case() != kFetchStmt) { clear_node(); - set_has_range_function(); - _impl_.node_.range_function_ = CreateMaybeMessage< ::pg_query::RangeFunction >(GetArenaForAllocation()); + set_has_fetch_stmt(); + _impl_.node_.fetch_stmt_ = CreateMaybeMessage<::pg_query::FetchStmt>(GetArena()); } - return _impl_.node_.range_function_; + return _impl_.node_.fetch_stmt_; } -inline ::pg_query::RangeFunction* Node::mutable_range_function() { - ::pg_query::RangeFunction* _msg = _internal_mutable_range_function(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.range_function) +inline ::pg_query::FetchStmt* Node::mutable_fetch_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::FetchStmt* _msg = _internal_mutable_fetch_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.fetch_stmt) return _msg; } -// .pg_query.RangeTableSample range_table_sample = 187 [json_name = "RangeTableSample"]; -inline bool Node::_internal_has_range_table_sample() const { - return node_case() == kRangeTableSample; +// .pg_query.IndexStmt index_stmt = 182 [json_name = "IndexStmt"]; +inline bool Node::has_index_stmt() const { + return node_case() == kIndexStmt; } -inline bool Node::has_range_table_sample() const { - return _internal_has_range_table_sample(); +inline bool Node::_internal_has_index_stmt() const { + return node_case() == kIndexStmt; } -inline void Node::set_has_range_table_sample() { - _impl_._oneof_case_[0] = kRangeTableSample; +inline void Node::set_has_index_stmt() { + _impl_._oneof_case_[0] = kIndexStmt; } -inline void Node::clear_range_table_sample() { - if (_internal_has_range_table_sample()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.range_table_sample_; +inline void Node::clear_index_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kIndexStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.index_stmt_; } clear_has_node(); } } -inline ::pg_query::RangeTableSample* Node::release_range_table_sample() { - // @@protoc_insertion_point(field_release:pg_query.Node.range_table_sample) - if (_internal_has_range_table_sample()) { +inline ::pg_query::IndexStmt* Node::release_index_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.index_stmt) + if (node_case() == kIndexStmt) { clear_has_node(); - ::pg_query::RangeTableSample* temp = _impl_.node_.range_table_sample_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.index_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.range_table_sample_ = nullptr; + _impl_.node_.index_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RangeTableSample& Node::_internal_range_table_sample() const { - return _internal_has_range_table_sample() - ? *_impl_.node_.range_table_sample_ - : reinterpret_cast< ::pg_query::RangeTableSample&>(::pg_query::_RangeTableSample_default_instance_); +inline const ::pg_query::IndexStmt& Node::_internal_index_stmt() const { + return node_case() == kIndexStmt ? *_impl_.node_.index_stmt_ : reinterpret_cast<::pg_query::IndexStmt&>(::pg_query::_IndexStmt_default_instance_); } -inline const ::pg_query::RangeTableSample& Node::range_table_sample() const { - // @@protoc_insertion_point(field_get:pg_query.Node.range_table_sample) - return _internal_range_table_sample(); +inline const ::pg_query::IndexStmt& Node::index_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.index_stmt) + return _internal_index_stmt(); } -inline ::pg_query::RangeTableSample* Node::unsafe_arena_release_range_table_sample() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_table_sample) - if (_internal_has_range_table_sample()) { +inline ::pg_query::IndexStmt* Node::unsafe_arena_release_index_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.index_stmt) + if (node_case() == kIndexStmt) { clear_has_node(); - ::pg_query::RangeTableSample* temp = _impl_.node_.range_table_sample_; - _impl_.node_.range_table_sample_ = nullptr; + auto* temp = _impl_.node_.index_stmt_; + _impl_.node_.index_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_range_table_sample(::pg_query::RangeTableSample* range_table_sample) { +inline void Node::unsafe_arena_set_allocated_index_stmt(::pg_query::IndexStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (range_table_sample) { - set_has_range_table_sample(); - _impl_.node_.range_table_sample_ = range_table_sample; + if (value) { + set_has_index_stmt(); + _impl_.node_.index_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_table_sample) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.index_stmt) } -inline ::pg_query::RangeTableSample* Node::_internal_mutable_range_table_sample() { - if (!_internal_has_range_table_sample()) { +inline ::pg_query::IndexStmt* Node::_internal_mutable_index_stmt() { + if (node_case() != kIndexStmt) { clear_node(); - set_has_range_table_sample(); - _impl_.node_.range_table_sample_ = CreateMaybeMessage< ::pg_query::RangeTableSample >(GetArenaForAllocation()); + set_has_index_stmt(); + _impl_.node_.index_stmt_ = CreateMaybeMessage<::pg_query::IndexStmt>(GetArena()); } - return _impl_.node_.range_table_sample_; + return _impl_.node_.index_stmt_; } -inline ::pg_query::RangeTableSample* Node::mutable_range_table_sample() { - ::pg_query::RangeTableSample* _msg = _internal_mutable_range_table_sample(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.range_table_sample) +inline ::pg_query::IndexStmt* Node::mutable_index_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::IndexStmt* _msg = _internal_mutable_index_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.index_stmt) return _msg; } -// .pg_query.RangeTableFunc range_table_func = 188 [json_name = "RangeTableFunc"]; -inline bool Node::_internal_has_range_table_func() const { - return node_case() == kRangeTableFunc; +// .pg_query.CreateStatsStmt create_stats_stmt = 183 [json_name = "CreateStatsStmt"]; +inline bool Node::has_create_stats_stmt() const { + return node_case() == kCreateStatsStmt; } -inline bool Node::has_range_table_func() const { - return _internal_has_range_table_func(); +inline bool Node::_internal_has_create_stats_stmt() const { + return node_case() == kCreateStatsStmt; } -inline void Node::set_has_range_table_func() { - _impl_._oneof_case_[0] = kRangeTableFunc; +inline void Node::set_has_create_stats_stmt() { + _impl_._oneof_case_[0] = kCreateStatsStmt; } -inline void Node::clear_range_table_func() { - if (_internal_has_range_table_func()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.range_table_func_; +inline void Node::clear_create_stats_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateStatsStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_stats_stmt_; } clear_has_node(); } } -inline ::pg_query::RangeTableFunc* Node::release_range_table_func() { - // @@protoc_insertion_point(field_release:pg_query.Node.range_table_func) - if (_internal_has_range_table_func()) { +inline ::pg_query::CreateStatsStmt* Node::release_create_stats_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_stats_stmt) + if (node_case() == kCreateStatsStmt) { clear_has_node(); - ::pg_query::RangeTableFunc* temp = _impl_.node_.range_table_func_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_stats_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.range_table_func_ = nullptr; + _impl_.node_.create_stats_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RangeTableFunc& Node::_internal_range_table_func() const { - return _internal_has_range_table_func() - ? *_impl_.node_.range_table_func_ - : reinterpret_cast< ::pg_query::RangeTableFunc&>(::pg_query::_RangeTableFunc_default_instance_); +inline const ::pg_query::CreateStatsStmt& Node::_internal_create_stats_stmt() const { + return node_case() == kCreateStatsStmt ? *_impl_.node_.create_stats_stmt_ : reinterpret_cast<::pg_query::CreateStatsStmt&>(::pg_query::_CreateStatsStmt_default_instance_); } -inline const ::pg_query::RangeTableFunc& Node::range_table_func() const { - // @@protoc_insertion_point(field_get:pg_query.Node.range_table_func) - return _internal_range_table_func(); +inline const ::pg_query::CreateStatsStmt& Node::create_stats_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_stats_stmt) + return _internal_create_stats_stmt(); } -inline ::pg_query::RangeTableFunc* Node::unsafe_arena_release_range_table_func() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_table_func) - if (_internal_has_range_table_func()) { +inline ::pg_query::CreateStatsStmt* Node::unsafe_arena_release_create_stats_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_stats_stmt) + if (node_case() == kCreateStatsStmt) { clear_has_node(); - ::pg_query::RangeTableFunc* temp = _impl_.node_.range_table_func_; - _impl_.node_.range_table_func_ = nullptr; + auto* temp = _impl_.node_.create_stats_stmt_; + _impl_.node_.create_stats_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_range_table_func(::pg_query::RangeTableFunc* range_table_func) { +inline void Node::unsafe_arena_set_allocated_create_stats_stmt(::pg_query::CreateStatsStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (range_table_func) { - set_has_range_table_func(); - _impl_.node_.range_table_func_ = range_table_func; + if (value) { + set_has_create_stats_stmt(); + _impl_.node_.create_stats_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_table_func) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_stats_stmt) } -inline ::pg_query::RangeTableFunc* Node::_internal_mutable_range_table_func() { - if (!_internal_has_range_table_func()) { +inline ::pg_query::CreateStatsStmt* Node::_internal_mutable_create_stats_stmt() { + if (node_case() != kCreateStatsStmt) { clear_node(); - set_has_range_table_func(); - _impl_.node_.range_table_func_ = CreateMaybeMessage< ::pg_query::RangeTableFunc >(GetArenaForAllocation()); + set_has_create_stats_stmt(); + _impl_.node_.create_stats_stmt_ = CreateMaybeMessage<::pg_query::CreateStatsStmt>(GetArena()); } - return _impl_.node_.range_table_func_; + return _impl_.node_.create_stats_stmt_; } -inline ::pg_query::RangeTableFunc* Node::mutable_range_table_func() { - ::pg_query::RangeTableFunc* _msg = _internal_mutable_range_table_func(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.range_table_func) +inline ::pg_query::CreateStatsStmt* Node::mutable_create_stats_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateStatsStmt* _msg = _internal_mutable_create_stats_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_stats_stmt) return _msg; } -// .pg_query.RangeTableFuncCol range_table_func_col = 189 [json_name = "RangeTableFuncCol"]; -inline bool Node::_internal_has_range_table_func_col() const { - return node_case() == kRangeTableFuncCol; +// .pg_query.StatsElem stats_elem = 184 [json_name = "StatsElem"]; +inline bool Node::has_stats_elem() const { + return node_case() == kStatsElem; } -inline bool Node::has_range_table_func_col() const { - return _internal_has_range_table_func_col(); +inline bool Node::_internal_has_stats_elem() const { + return node_case() == kStatsElem; } -inline void Node::set_has_range_table_func_col() { - _impl_._oneof_case_[0] = kRangeTableFuncCol; +inline void Node::set_has_stats_elem() { + _impl_._oneof_case_[0] = kStatsElem; } -inline void Node::clear_range_table_func_col() { - if (_internal_has_range_table_func_col()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.range_table_func_col_; +inline void Node::clear_stats_elem() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kStatsElem) { + if (GetArena() == nullptr) { + delete _impl_.node_.stats_elem_; } clear_has_node(); } } -inline ::pg_query::RangeTableFuncCol* Node::release_range_table_func_col() { - // @@protoc_insertion_point(field_release:pg_query.Node.range_table_func_col) - if (_internal_has_range_table_func_col()) { +inline ::pg_query::StatsElem* Node::release_stats_elem() { + // @@protoc_insertion_point(field_release:pg_query.Node.stats_elem) + if (node_case() == kStatsElem) { clear_has_node(); - ::pg_query::RangeTableFuncCol* temp = _impl_.node_.range_table_func_col_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.stats_elem_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.range_table_func_col_ = nullptr; + _impl_.node_.stats_elem_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RangeTableFuncCol& Node::_internal_range_table_func_col() const { - return _internal_has_range_table_func_col() - ? *_impl_.node_.range_table_func_col_ - : reinterpret_cast< ::pg_query::RangeTableFuncCol&>(::pg_query::_RangeTableFuncCol_default_instance_); +inline const ::pg_query::StatsElem& Node::_internal_stats_elem() const { + return node_case() == kStatsElem ? *_impl_.node_.stats_elem_ : reinterpret_cast<::pg_query::StatsElem&>(::pg_query::_StatsElem_default_instance_); } -inline const ::pg_query::RangeTableFuncCol& Node::range_table_func_col() const { - // @@protoc_insertion_point(field_get:pg_query.Node.range_table_func_col) - return _internal_range_table_func_col(); +inline const ::pg_query::StatsElem& Node::stats_elem() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.stats_elem) + return _internal_stats_elem(); } -inline ::pg_query::RangeTableFuncCol* Node::unsafe_arena_release_range_table_func_col() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_table_func_col) - if (_internal_has_range_table_func_col()) { +inline ::pg_query::StatsElem* Node::unsafe_arena_release_stats_elem() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.stats_elem) + if (node_case() == kStatsElem) { clear_has_node(); - ::pg_query::RangeTableFuncCol* temp = _impl_.node_.range_table_func_col_; - _impl_.node_.range_table_func_col_ = nullptr; + auto* temp = _impl_.node_.stats_elem_; + _impl_.node_.stats_elem_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_range_table_func_col(::pg_query::RangeTableFuncCol* range_table_func_col) { +inline void Node::unsafe_arena_set_allocated_stats_elem(::pg_query::StatsElem* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (range_table_func_col) { - set_has_range_table_func_col(); - _impl_.node_.range_table_func_col_ = range_table_func_col; + if (value) { + set_has_stats_elem(); + _impl_.node_.stats_elem_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_table_func_col) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.stats_elem) } -inline ::pg_query::RangeTableFuncCol* Node::_internal_mutable_range_table_func_col() { - if (!_internal_has_range_table_func_col()) { +inline ::pg_query::StatsElem* Node::_internal_mutable_stats_elem() { + if (node_case() != kStatsElem) { clear_node(); - set_has_range_table_func_col(); - _impl_.node_.range_table_func_col_ = CreateMaybeMessage< ::pg_query::RangeTableFuncCol >(GetArenaForAllocation()); + set_has_stats_elem(); + _impl_.node_.stats_elem_ = CreateMaybeMessage<::pg_query::StatsElem>(GetArena()); } - return _impl_.node_.range_table_func_col_; + return _impl_.node_.stats_elem_; } -inline ::pg_query::RangeTableFuncCol* Node::mutable_range_table_func_col() { - ::pg_query::RangeTableFuncCol* _msg = _internal_mutable_range_table_func_col(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.range_table_func_col) +inline ::pg_query::StatsElem* Node::mutable_stats_elem() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::StatsElem* _msg = _internal_mutable_stats_elem(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.stats_elem) return _msg; } -// .pg_query.TypeName type_name = 190 [json_name = "TypeName"]; -inline bool Node::_internal_has_type_name() const { - return node_case() == kTypeName; +// .pg_query.AlterStatsStmt alter_stats_stmt = 185 [json_name = "AlterStatsStmt"]; +inline bool Node::has_alter_stats_stmt() const { + return node_case() == kAlterStatsStmt; } -inline bool Node::has_type_name() const { - return _internal_has_type_name(); +inline bool Node::_internal_has_alter_stats_stmt() const { + return node_case() == kAlterStatsStmt; } -inline void Node::set_has_type_name() { - _impl_._oneof_case_[0] = kTypeName; +inline void Node::set_has_alter_stats_stmt() { + _impl_._oneof_case_[0] = kAlterStatsStmt; } -inline void Node::clear_type_name() { - if (_internal_has_type_name()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.type_name_; +inline void Node::clear_alter_stats_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterStatsStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_stats_stmt_; } clear_has_node(); } } -inline ::pg_query::TypeName* Node::release_type_name() { - // @@protoc_insertion_point(field_release:pg_query.Node.type_name) - if (_internal_has_type_name()) { +inline ::pg_query::AlterStatsStmt* Node::release_alter_stats_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_stats_stmt) + if (node_case() == kAlterStatsStmt) { clear_has_node(); - ::pg_query::TypeName* temp = _impl_.node_.type_name_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_stats_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.type_name_ = nullptr; + _impl_.node_.alter_stats_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::TypeName& Node::_internal_type_name() const { - return _internal_has_type_name() - ? *_impl_.node_.type_name_ - : reinterpret_cast< ::pg_query::TypeName&>(::pg_query::_TypeName_default_instance_); +inline const ::pg_query::AlterStatsStmt& Node::_internal_alter_stats_stmt() const { + return node_case() == kAlterStatsStmt ? *_impl_.node_.alter_stats_stmt_ : reinterpret_cast<::pg_query::AlterStatsStmt&>(::pg_query::_AlterStatsStmt_default_instance_); } -inline const ::pg_query::TypeName& Node::type_name() const { - // @@protoc_insertion_point(field_get:pg_query.Node.type_name) - return _internal_type_name(); +inline const ::pg_query::AlterStatsStmt& Node::alter_stats_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_stats_stmt) + return _internal_alter_stats_stmt(); } -inline ::pg_query::TypeName* Node::unsafe_arena_release_type_name() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.type_name) - if (_internal_has_type_name()) { +inline ::pg_query::AlterStatsStmt* Node::unsafe_arena_release_alter_stats_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_stats_stmt) + if (node_case() == kAlterStatsStmt) { clear_has_node(); - ::pg_query::TypeName* temp = _impl_.node_.type_name_; - _impl_.node_.type_name_ = nullptr; + auto* temp = _impl_.node_.alter_stats_stmt_; + _impl_.node_.alter_stats_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_type_name(::pg_query::TypeName* type_name) { +inline void Node::unsafe_arena_set_allocated_alter_stats_stmt(::pg_query::AlterStatsStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (type_name) { - set_has_type_name(); - _impl_.node_.type_name_ = type_name; + if (value) { + set_has_alter_stats_stmt(); + _impl_.node_.alter_stats_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.type_name) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_stats_stmt) } -inline ::pg_query::TypeName* Node::_internal_mutable_type_name() { - if (!_internal_has_type_name()) { +inline ::pg_query::AlterStatsStmt* Node::_internal_mutable_alter_stats_stmt() { + if (node_case() != kAlterStatsStmt) { clear_node(); - set_has_type_name(); - _impl_.node_.type_name_ = CreateMaybeMessage< ::pg_query::TypeName >(GetArenaForAllocation()); + set_has_alter_stats_stmt(); + _impl_.node_.alter_stats_stmt_ = CreateMaybeMessage<::pg_query::AlterStatsStmt>(GetArena()); } - return _impl_.node_.type_name_; + return _impl_.node_.alter_stats_stmt_; } -inline ::pg_query::TypeName* Node::mutable_type_name() { - ::pg_query::TypeName* _msg = _internal_mutable_type_name(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.type_name) +inline ::pg_query::AlterStatsStmt* Node::mutable_alter_stats_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterStatsStmt* _msg = _internal_mutable_alter_stats_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_stats_stmt) return _msg; } -// .pg_query.ColumnDef column_def = 191 [json_name = "ColumnDef"]; -inline bool Node::_internal_has_column_def() const { - return node_case() == kColumnDef; +// .pg_query.CreateFunctionStmt create_function_stmt = 186 [json_name = "CreateFunctionStmt"]; +inline bool Node::has_create_function_stmt() const { + return node_case() == kCreateFunctionStmt; } -inline bool Node::has_column_def() const { - return _internal_has_column_def(); +inline bool Node::_internal_has_create_function_stmt() const { + return node_case() == kCreateFunctionStmt; } -inline void Node::set_has_column_def() { - _impl_._oneof_case_[0] = kColumnDef; +inline void Node::set_has_create_function_stmt() { + _impl_._oneof_case_[0] = kCreateFunctionStmt; } -inline void Node::clear_column_def() { - if (_internal_has_column_def()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.column_def_; +inline void Node::clear_create_function_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateFunctionStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_function_stmt_; } clear_has_node(); } } -inline ::pg_query::ColumnDef* Node::release_column_def() { - // @@protoc_insertion_point(field_release:pg_query.Node.column_def) - if (_internal_has_column_def()) { +inline ::pg_query::CreateFunctionStmt* Node::release_create_function_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_function_stmt) + if (node_case() == kCreateFunctionStmt) { clear_has_node(); - ::pg_query::ColumnDef* temp = _impl_.node_.column_def_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_function_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.column_def_ = nullptr; + _impl_.node_.create_function_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ColumnDef& Node::_internal_column_def() const { - return _internal_has_column_def() - ? *_impl_.node_.column_def_ - : reinterpret_cast< ::pg_query::ColumnDef&>(::pg_query::_ColumnDef_default_instance_); +inline const ::pg_query::CreateFunctionStmt& Node::_internal_create_function_stmt() const { + return node_case() == kCreateFunctionStmt ? *_impl_.node_.create_function_stmt_ : reinterpret_cast<::pg_query::CreateFunctionStmt&>(::pg_query::_CreateFunctionStmt_default_instance_); } -inline const ::pg_query::ColumnDef& Node::column_def() const { - // @@protoc_insertion_point(field_get:pg_query.Node.column_def) - return _internal_column_def(); +inline const ::pg_query::CreateFunctionStmt& Node::create_function_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_function_stmt) + return _internal_create_function_stmt(); } -inline ::pg_query::ColumnDef* Node::unsafe_arena_release_column_def() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.column_def) - if (_internal_has_column_def()) { +inline ::pg_query::CreateFunctionStmt* Node::unsafe_arena_release_create_function_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_function_stmt) + if (node_case() == kCreateFunctionStmt) { clear_has_node(); - ::pg_query::ColumnDef* temp = _impl_.node_.column_def_; - _impl_.node_.column_def_ = nullptr; + auto* temp = _impl_.node_.create_function_stmt_; + _impl_.node_.create_function_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_column_def(::pg_query::ColumnDef* column_def) { +inline void Node::unsafe_arena_set_allocated_create_function_stmt(::pg_query::CreateFunctionStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (column_def) { - set_has_column_def(); - _impl_.node_.column_def_ = column_def; + if (value) { + set_has_create_function_stmt(); + _impl_.node_.create_function_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.column_def) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_function_stmt) } -inline ::pg_query::ColumnDef* Node::_internal_mutable_column_def() { - if (!_internal_has_column_def()) { +inline ::pg_query::CreateFunctionStmt* Node::_internal_mutable_create_function_stmt() { + if (node_case() != kCreateFunctionStmt) { clear_node(); - set_has_column_def(); - _impl_.node_.column_def_ = CreateMaybeMessage< ::pg_query::ColumnDef >(GetArenaForAllocation()); + set_has_create_function_stmt(); + _impl_.node_.create_function_stmt_ = CreateMaybeMessage<::pg_query::CreateFunctionStmt>(GetArena()); } - return _impl_.node_.column_def_; + return _impl_.node_.create_function_stmt_; } -inline ::pg_query::ColumnDef* Node::mutable_column_def() { - ::pg_query::ColumnDef* _msg = _internal_mutable_column_def(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.column_def) +inline ::pg_query::CreateFunctionStmt* Node::mutable_create_function_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateFunctionStmt* _msg = _internal_mutable_create_function_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_function_stmt) return _msg; } -// .pg_query.IndexElem index_elem = 192 [json_name = "IndexElem"]; -inline bool Node::_internal_has_index_elem() const { - return node_case() == kIndexElem; +// .pg_query.FunctionParameter function_parameter = 187 [json_name = "FunctionParameter"]; +inline bool Node::has_function_parameter() const { + return node_case() == kFunctionParameter; } -inline bool Node::has_index_elem() const { - return _internal_has_index_elem(); +inline bool Node::_internal_has_function_parameter() const { + return node_case() == kFunctionParameter; } -inline void Node::set_has_index_elem() { - _impl_._oneof_case_[0] = kIndexElem; +inline void Node::set_has_function_parameter() { + _impl_._oneof_case_[0] = kFunctionParameter; } -inline void Node::clear_index_elem() { - if (_internal_has_index_elem()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.index_elem_; +inline void Node::clear_function_parameter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kFunctionParameter) { + if (GetArena() == nullptr) { + delete _impl_.node_.function_parameter_; } clear_has_node(); } } -inline ::pg_query::IndexElem* Node::release_index_elem() { - // @@protoc_insertion_point(field_release:pg_query.Node.index_elem) - if (_internal_has_index_elem()) { +inline ::pg_query::FunctionParameter* Node::release_function_parameter() { + // @@protoc_insertion_point(field_release:pg_query.Node.function_parameter) + if (node_case() == kFunctionParameter) { clear_has_node(); - ::pg_query::IndexElem* temp = _impl_.node_.index_elem_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.function_parameter_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.index_elem_ = nullptr; + _impl_.node_.function_parameter_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::IndexElem& Node::_internal_index_elem() const { - return _internal_has_index_elem() - ? *_impl_.node_.index_elem_ - : reinterpret_cast< ::pg_query::IndexElem&>(::pg_query::_IndexElem_default_instance_); +inline const ::pg_query::FunctionParameter& Node::_internal_function_parameter() const { + return node_case() == kFunctionParameter ? *_impl_.node_.function_parameter_ : reinterpret_cast<::pg_query::FunctionParameter&>(::pg_query::_FunctionParameter_default_instance_); } -inline const ::pg_query::IndexElem& Node::index_elem() const { - // @@protoc_insertion_point(field_get:pg_query.Node.index_elem) - return _internal_index_elem(); +inline const ::pg_query::FunctionParameter& Node::function_parameter() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.function_parameter) + return _internal_function_parameter(); } -inline ::pg_query::IndexElem* Node::unsafe_arena_release_index_elem() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.index_elem) - if (_internal_has_index_elem()) { +inline ::pg_query::FunctionParameter* Node::unsafe_arena_release_function_parameter() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.function_parameter) + if (node_case() == kFunctionParameter) { clear_has_node(); - ::pg_query::IndexElem* temp = _impl_.node_.index_elem_; - _impl_.node_.index_elem_ = nullptr; + auto* temp = _impl_.node_.function_parameter_; + _impl_.node_.function_parameter_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_index_elem(::pg_query::IndexElem* index_elem) { +inline void Node::unsafe_arena_set_allocated_function_parameter(::pg_query::FunctionParameter* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (index_elem) { - set_has_index_elem(); - _impl_.node_.index_elem_ = index_elem; + if (value) { + set_has_function_parameter(); + _impl_.node_.function_parameter_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.index_elem) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.function_parameter) } -inline ::pg_query::IndexElem* Node::_internal_mutable_index_elem() { - if (!_internal_has_index_elem()) { +inline ::pg_query::FunctionParameter* Node::_internal_mutable_function_parameter() { + if (node_case() != kFunctionParameter) { clear_node(); - set_has_index_elem(); - _impl_.node_.index_elem_ = CreateMaybeMessage< ::pg_query::IndexElem >(GetArenaForAllocation()); + set_has_function_parameter(); + _impl_.node_.function_parameter_ = CreateMaybeMessage<::pg_query::FunctionParameter>(GetArena()); } - return _impl_.node_.index_elem_; + return _impl_.node_.function_parameter_; } -inline ::pg_query::IndexElem* Node::mutable_index_elem() { - ::pg_query::IndexElem* _msg = _internal_mutable_index_elem(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.index_elem) +inline ::pg_query::FunctionParameter* Node::mutable_function_parameter() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::FunctionParameter* _msg = _internal_mutable_function_parameter(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.function_parameter) return _msg; } -// .pg_query.StatsElem stats_elem = 193 [json_name = "StatsElem"]; -inline bool Node::_internal_has_stats_elem() const { - return node_case() == kStatsElem; +// .pg_query.AlterFunctionStmt alter_function_stmt = 188 [json_name = "AlterFunctionStmt"]; +inline bool Node::has_alter_function_stmt() const { + return node_case() == kAlterFunctionStmt; } -inline bool Node::has_stats_elem() const { - return _internal_has_stats_elem(); +inline bool Node::_internal_has_alter_function_stmt() const { + return node_case() == kAlterFunctionStmt; } -inline void Node::set_has_stats_elem() { - _impl_._oneof_case_[0] = kStatsElem; +inline void Node::set_has_alter_function_stmt() { + _impl_._oneof_case_[0] = kAlterFunctionStmt; } -inline void Node::clear_stats_elem() { - if (_internal_has_stats_elem()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.stats_elem_; +inline void Node::clear_alter_function_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterFunctionStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_function_stmt_; } clear_has_node(); } } -inline ::pg_query::StatsElem* Node::release_stats_elem() { - // @@protoc_insertion_point(field_release:pg_query.Node.stats_elem) - if (_internal_has_stats_elem()) { +inline ::pg_query::AlterFunctionStmt* Node::release_alter_function_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_function_stmt) + if (node_case() == kAlterFunctionStmt) { clear_has_node(); - ::pg_query::StatsElem* temp = _impl_.node_.stats_elem_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_function_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.stats_elem_ = nullptr; + _impl_.node_.alter_function_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::StatsElem& Node::_internal_stats_elem() const { - return _internal_has_stats_elem() - ? *_impl_.node_.stats_elem_ - : reinterpret_cast< ::pg_query::StatsElem&>(::pg_query::_StatsElem_default_instance_); +inline const ::pg_query::AlterFunctionStmt& Node::_internal_alter_function_stmt() const { + return node_case() == kAlterFunctionStmt ? *_impl_.node_.alter_function_stmt_ : reinterpret_cast<::pg_query::AlterFunctionStmt&>(::pg_query::_AlterFunctionStmt_default_instance_); } -inline const ::pg_query::StatsElem& Node::stats_elem() const { - // @@protoc_insertion_point(field_get:pg_query.Node.stats_elem) - return _internal_stats_elem(); +inline const ::pg_query::AlterFunctionStmt& Node::alter_function_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_function_stmt) + return _internal_alter_function_stmt(); } -inline ::pg_query::StatsElem* Node::unsafe_arena_release_stats_elem() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.stats_elem) - if (_internal_has_stats_elem()) { +inline ::pg_query::AlterFunctionStmt* Node::unsafe_arena_release_alter_function_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_function_stmt) + if (node_case() == kAlterFunctionStmt) { clear_has_node(); - ::pg_query::StatsElem* temp = _impl_.node_.stats_elem_; - _impl_.node_.stats_elem_ = nullptr; + auto* temp = _impl_.node_.alter_function_stmt_; + _impl_.node_.alter_function_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_stats_elem(::pg_query::StatsElem* stats_elem) { +inline void Node::unsafe_arena_set_allocated_alter_function_stmt(::pg_query::AlterFunctionStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (stats_elem) { - set_has_stats_elem(); - _impl_.node_.stats_elem_ = stats_elem; + if (value) { + set_has_alter_function_stmt(); + _impl_.node_.alter_function_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.stats_elem) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_function_stmt) } -inline ::pg_query::StatsElem* Node::_internal_mutable_stats_elem() { - if (!_internal_has_stats_elem()) { +inline ::pg_query::AlterFunctionStmt* Node::_internal_mutable_alter_function_stmt() { + if (node_case() != kAlterFunctionStmt) { clear_node(); - set_has_stats_elem(); - _impl_.node_.stats_elem_ = CreateMaybeMessage< ::pg_query::StatsElem >(GetArenaForAllocation()); + set_has_alter_function_stmt(); + _impl_.node_.alter_function_stmt_ = CreateMaybeMessage<::pg_query::AlterFunctionStmt>(GetArena()); } - return _impl_.node_.stats_elem_; + return _impl_.node_.alter_function_stmt_; } -inline ::pg_query::StatsElem* Node::mutable_stats_elem() { - ::pg_query::StatsElem* _msg = _internal_mutable_stats_elem(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.stats_elem) +inline ::pg_query::AlterFunctionStmt* Node::mutable_alter_function_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterFunctionStmt* _msg = _internal_mutable_alter_function_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_function_stmt) return _msg; } -// .pg_query.Constraint constraint = 194 [json_name = "Constraint"]; -inline bool Node::_internal_has_constraint() const { - return node_case() == kConstraint; +// .pg_query.DoStmt do_stmt = 189 [json_name = "DoStmt"]; +inline bool Node::has_do_stmt() const { + return node_case() == kDoStmt; } -inline bool Node::has_constraint() const { - return _internal_has_constraint(); +inline bool Node::_internal_has_do_stmt() const { + return node_case() == kDoStmt; } -inline void Node::set_has_constraint() { - _impl_._oneof_case_[0] = kConstraint; +inline void Node::set_has_do_stmt() { + _impl_._oneof_case_[0] = kDoStmt; } -inline void Node::clear_constraint() { - if (_internal_has_constraint()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.constraint_; +inline void Node::clear_do_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDoStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.do_stmt_; } clear_has_node(); } } -inline ::pg_query::Constraint* Node::release_constraint() { - // @@protoc_insertion_point(field_release:pg_query.Node.constraint) - if (_internal_has_constraint()) { +inline ::pg_query::DoStmt* Node::release_do_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.do_stmt) + if (node_case() == kDoStmt) { clear_has_node(); - ::pg_query::Constraint* temp = _impl_.node_.constraint_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.do_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.constraint_ = nullptr; + _impl_.node_.do_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::Constraint& Node::_internal_constraint() const { - return _internal_has_constraint() - ? *_impl_.node_.constraint_ - : reinterpret_cast< ::pg_query::Constraint&>(::pg_query::_Constraint_default_instance_); +inline const ::pg_query::DoStmt& Node::_internal_do_stmt() const { + return node_case() == kDoStmt ? *_impl_.node_.do_stmt_ : reinterpret_cast<::pg_query::DoStmt&>(::pg_query::_DoStmt_default_instance_); } -inline const ::pg_query::Constraint& Node::constraint() const { - // @@protoc_insertion_point(field_get:pg_query.Node.constraint) - return _internal_constraint(); +inline const ::pg_query::DoStmt& Node::do_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.do_stmt) + return _internal_do_stmt(); } -inline ::pg_query::Constraint* Node::unsafe_arena_release_constraint() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.constraint) - if (_internal_has_constraint()) { +inline ::pg_query::DoStmt* Node::unsafe_arena_release_do_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.do_stmt) + if (node_case() == kDoStmt) { clear_has_node(); - ::pg_query::Constraint* temp = _impl_.node_.constraint_; - _impl_.node_.constraint_ = nullptr; + auto* temp = _impl_.node_.do_stmt_; + _impl_.node_.do_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_constraint(::pg_query::Constraint* constraint) { +inline void Node::unsafe_arena_set_allocated_do_stmt(::pg_query::DoStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (constraint) { - set_has_constraint(); - _impl_.node_.constraint_ = constraint; + if (value) { + set_has_do_stmt(); + _impl_.node_.do_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.constraint) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.do_stmt) } -inline ::pg_query::Constraint* Node::_internal_mutable_constraint() { - if (!_internal_has_constraint()) { +inline ::pg_query::DoStmt* Node::_internal_mutable_do_stmt() { + if (node_case() != kDoStmt) { clear_node(); - set_has_constraint(); - _impl_.node_.constraint_ = CreateMaybeMessage< ::pg_query::Constraint >(GetArenaForAllocation()); + set_has_do_stmt(); + _impl_.node_.do_stmt_ = CreateMaybeMessage<::pg_query::DoStmt>(GetArena()); } - return _impl_.node_.constraint_; + return _impl_.node_.do_stmt_; } -inline ::pg_query::Constraint* Node::mutable_constraint() { - ::pg_query::Constraint* _msg = _internal_mutable_constraint(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.constraint) +inline ::pg_query::DoStmt* Node::mutable_do_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DoStmt* _msg = _internal_mutable_do_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.do_stmt) return _msg; } -// .pg_query.DefElem def_elem = 195 [json_name = "DefElem"]; -inline bool Node::_internal_has_def_elem() const { - return node_case() == kDefElem; +// .pg_query.InlineCodeBlock inline_code_block = 190 [json_name = "InlineCodeBlock"]; +inline bool Node::has_inline_code_block() const { + return node_case() == kInlineCodeBlock; } -inline bool Node::has_def_elem() const { - return _internal_has_def_elem(); +inline bool Node::_internal_has_inline_code_block() const { + return node_case() == kInlineCodeBlock; } -inline void Node::set_has_def_elem() { - _impl_._oneof_case_[0] = kDefElem; +inline void Node::set_has_inline_code_block() { + _impl_._oneof_case_[0] = kInlineCodeBlock; } -inline void Node::clear_def_elem() { - if (_internal_has_def_elem()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.def_elem_; +inline void Node::clear_inline_code_block() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kInlineCodeBlock) { + if (GetArena() == nullptr) { + delete _impl_.node_.inline_code_block_; } clear_has_node(); } } -inline ::pg_query::DefElem* Node::release_def_elem() { - // @@protoc_insertion_point(field_release:pg_query.Node.def_elem) - if (_internal_has_def_elem()) { +inline ::pg_query::InlineCodeBlock* Node::release_inline_code_block() { + // @@protoc_insertion_point(field_release:pg_query.Node.inline_code_block) + if (node_case() == kInlineCodeBlock) { clear_has_node(); - ::pg_query::DefElem* temp = _impl_.node_.def_elem_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.inline_code_block_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.def_elem_ = nullptr; + _impl_.node_.inline_code_block_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::DefElem& Node::_internal_def_elem() const { - return _internal_has_def_elem() - ? *_impl_.node_.def_elem_ - : reinterpret_cast< ::pg_query::DefElem&>(::pg_query::_DefElem_default_instance_); +inline const ::pg_query::InlineCodeBlock& Node::_internal_inline_code_block() const { + return node_case() == kInlineCodeBlock ? *_impl_.node_.inline_code_block_ : reinterpret_cast<::pg_query::InlineCodeBlock&>(::pg_query::_InlineCodeBlock_default_instance_); } -inline const ::pg_query::DefElem& Node::def_elem() const { - // @@protoc_insertion_point(field_get:pg_query.Node.def_elem) - return _internal_def_elem(); +inline const ::pg_query::InlineCodeBlock& Node::inline_code_block() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.inline_code_block) + return _internal_inline_code_block(); } -inline ::pg_query::DefElem* Node::unsafe_arena_release_def_elem() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.def_elem) - if (_internal_has_def_elem()) { +inline ::pg_query::InlineCodeBlock* Node::unsafe_arena_release_inline_code_block() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.inline_code_block) + if (node_case() == kInlineCodeBlock) { clear_has_node(); - ::pg_query::DefElem* temp = _impl_.node_.def_elem_; - _impl_.node_.def_elem_ = nullptr; + auto* temp = _impl_.node_.inline_code_block_; + _impl_.node_.inline_code_block_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_def_elem(::pg_query::DefElem* def_elem) { +inline void Node::unsafe_arena_set_allocated_inline_code_block(::pg_query::InlineCodeBlock* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (def_elem) { - set_has_def_elem(); - _impl_.node_.def_elem_ = def_elem; + if (value) { + set_has_inline_code_block(); + _impl_.node_.inline_code_block_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.def_elem) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.inline_code_block) } -inline ::pg_query::DefElem* Node::_internal_mutable_def_elem() { - if (!_internal_has_def_elem()) { +inline ::pg_query::InlineCodeBlock* Node::_internal_mutable_inline_code_block() { + if (node_case() != kInlineCodeBlock) { clear_node(); - set_has_def_elem(); - _impl_.node_.def_elem_ = CreateMaybeMessage< ::pg_query::DefElem >(GetArenaForAllocation()); + set_has_inline_code_block(); + _impl_.node_.inline_code_block_ = CreateMaybeMessage<::pg_query::InlineCodeBlock>(GetArena()); } - return _impl_.node_.def_elem_; + return _impl_.node_.inline_code_block_; } -inline ::pg_query::DefElem* Node::mutable_def_elem() { - ::pg_query::DefElem* _msg = _internal_mutable_def_elem(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.def_elem) +inline ::pg_query::InlineCodeBlock* Node::mutable_inline_code_block() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::InlineCodeBlock* _msg = _internal_mutable_inline_code_block(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.inline_code_block) return _msg; } -// .pg_query.RangeTblEntry range_tbl_entry = 196 [json_name = "RangeTblEntry"]; -inline bool Node::_internal_has_range_tbl_entry() const { - return node_case() == kRangeTblEntry; +// .pg_query.CallStmt call_stmt = 191 [json_name = "CallStmt"]; +inline bool Node::has_call_stmt() const { + return node_case() == kCallStmt; } -inline bool Node::has_range_tbl_entry() const { - return _internal_has_range_tbl_entry(); +inline bool Node::_internal_has_call_stmt() const { + return node_case() == kCallStmt; } -inline void Node::set_has_range_tbl_entry() { - _impl_._oneof_case_[0] = kRangeTblEntry; +inline void Node::set_has_call_stmt() { + _impl_._oneof_case_[0] = kCallStmt; } -inline void Node::clear_range_tbl_entry() { - if (_internal_has_range_tbl_entry()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.range_tbl_entry_; +inline void Node::clear_call_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCallStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.call_stmt_; } clear_has_node(); } } -inline ::pg_query::RangeTblEntry* Node::release_range_tbl_entry() { - // @@protoc_insertion_point(field_release:pg_query.Node.range_tbl_entry) - if (_internal_has_range_tbl_entry()) { +inline ::pg_query::CallStmt* Node::release_call_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.call_stmt) + if (node_case() == kCallStmt) { clear_has_node(); - ::pg_query::RangeTblEntry* temp = _impl_.node_.range_tbl_entry_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.call_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.range_tbl_entry_ = nullptr; + _impl_.node_.call_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RangeTblEntry& Node::_internal_range_tbl_entry() const { - return _internal_has_range_tbl_entry() - ? *_impl_.node_.range_tbl_entry_ - : reinterpret_cast< ::pg_query::RangeTblEntry&>(::pg_query::_RangeTblEntry_default_instance_); +inline const ::pg_query::CallStmt& Node::_internal_call_stmt() const { + return node_case() == kCallStmt ? *_impl_.node_.call_stmt_ : reinterpret_cast<::pg_query::CallStmt&>(::pg_query::_CallStmt_default_instance_); } -inline const ::pg_query::RangeTblEntry& Node::range_tbl_entry() const { - // @@protoc_insertion_point(field_get:pg_query.Node.range_tbl_entry) - return _internal_range_tbl_entry(); +inline const ::pg_query::CallStmt& Node::call_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.call_stmt) + return _internal_call_stmt(); } -inline ::pg_query::RangeTblEntry* Node::unsafe_arena_release_range_tbl_entry() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_tbl_entry) - if (_internal_has_range_tbl_entry()) { +inline ::pg_query::CallStmt* Node::unsafe_arena_release_call_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.call_stmt) + if (node_case() == kCallStmt) { clear_has_node(); - ::pg_query::RangeTblEntry* temp = _impl_.node_.range_tbl_entry_; - _impl_.node_.range_tbl_entry_ = nullptr; + auto* temp = _impl_.node_.call_stmt_; + _impl_.node_.call_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_range_tbl_entry(::pg_query::RangeTblEntry* range_tbl_entry) { +inline void Node::unsafe_arena_set_allocated_call_stmt(::pg_query::CallStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (range_tbl_entry) { - set_has_range_tbl_entry(); - _impl_.node_.range_tbl_entry_ = range_tbl_entry; + if (value) { + set_has_call_stmt(); + _impl_.node_.call_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_tbl_entry) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.call_stmt) } -inline ::pg_query::RangeTblEntry* Node::_internal_mutable_range_tbl_entry() { - if (!_internal_has_range_tbl_entry()) { +inline ::pg_query::CallStmt* Node::_internal_mutable_call_stmt() { + if (node_case() != kCallStmt) { clear_node(); - set_has_range_tbl_entry(); - _impl_.node_.range_tbl_entry_ = CreateMaybeMessage< ::pg_query::RangeTblEntry >(GetArenaForAllocation()); + set_has_call_stmt(); + _impl_.node_.call_stmt_ = CreateMaybeMessage<::pg_query::CallStmt>(GetArena()); } - return _impl_.node_.range_tbl_entry_; + return _impl_.node_.call_stmt_; } -inline ::pg_query::RangeTblEntry* Node::mutable_range_tbl_entry() { - ::pg_query::RangeTblEntry* _msg = _internal_mutable_range_tbl_entry(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.range_tbl_entry) +inline ::pg_query::CallStmt* Node::mutable_call_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CallStmt* _msg = _internal_mutable_call_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.call_stmt) return _msg; } -// .pg_query.RangeTblFunction range_tbl_function = 197 [json_name = "RangeTblFunction"]; -inline bool Node::_internal_has_range_tbl_function() const { - return node_case() == kRangeTblFunction; +// .pg_query.CallContext call_context = 192 [json_name = "CallContext"]; +inline bool Node::has_call_context() const { + return node_case() == kCallContext; } -inline bool Node::has_range_tbl_function() const { - return _internal_has_range_tbl_function(); +inline bool Node::_internal_has_call_context() const { + return node_case() == kCallContext; } -inline void Node::set_has_range_tbl_function() { - _impl_._oneof_case_[0] = kRangeTblFunction; +inline void Node::set_has_call_context() { + _impl_._oneof_case_[0] = kCallContext; } -inline void Node::clear_range_tbl_function() { - if (_internal_has_range_tbl_function()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.range_tbl_function_; +inline void Node::clear_call_context() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCallContext) { + if (GetArena() == nullptr) { + delete _impl_.node_.call_context_; } clear_has_node(); } } -inline ::pg_query::RangeTblFunction* Node::release_range_tbl_function() { - // @@protoc_insertion_point(field_release:pg_query.Node.range_tbl_function) - if (_internal_has_range_tbl_function()) { +inline ::pg_query::CallContext* Node::release_call_context() { + // @@protoc_insertion_point(field_release:pg_query.Node.call_context) + if (node_case() == kCallContext) { clear_has_node(); - ::pg_query::RangeTblFunction* temp = _impl_.node_.range_tbl_function_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.call_context_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.range_tbl_function_ = nullptr; + _impl_.node_.call_context_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RangeTblFunction& Node::_internal_range_tbl_function() const { - return _internal_has_range_tbl_function() - ? *_impl_.node_.range_tbl_function_ - : reinterpret_cast< ::pg_query::RangeTblFunction&>(::pg_query::_RangeTblFunction_default_instance_); +inline const ::pg_query::CallContext& Node::_internal_call_context() const { + return node_case() == kCallContext ? *_impl_.node_.call_context_ : reinterpret_cast<::pg_query::CallContext&>(::pg_query::_CallContext_default_instance_); } -inline const ::pg_query::RangeTblFunction& Node::range_tbl_function() const { - // @@protoc_insertion_point(field_get:pg_query.Node.range_tbl_function) - return _internal_range_tbl_function(); +inline const ::pg_query::CallContext& Node::call_context() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.call_context) + return _internal_call_context(); } -inline ::pg_query::RangeTblFunction* Node::unsafe_arena_release_range_tbl_function() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.range_tbl_function) - if (_internal_has_range_tbl_function()) { +inline ::pg_query::CallContext* Node::unsafe_arena_release_call_context() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.call_context) + if (node_case() == kCallContext) { clear_has_node(); - ::pg_query::RangeTblFunction* temp = _impl_.node_.range_tbl_function_; - _impl_.node_.range_tbl_function_ = nullptr; + auto* temp = _impl_.node_.call_context_; + _impl_.node_.call_context_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_range_tbl_function(::pg_query::RangeTblFunction* range_tbl_function) { +inline void Node::unsafe_arena_set_allocated_call_context(::pg_query::CallContext* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (range_tbl_function) { - set_has_range_tbl_function(); - _impl_.node_.range_tbl_function_ = range_tbl_function; + if (value) { + set_has_call_context(); + _impl_.node_.call_context_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.range_tbl_function) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.call_context) } -inline ::pg_query::RangeTblFunction* Node::_internal_mutable_range_tbl_function() { - if (!_internal_has_range_tbl_function()) { +inline ::pg_query::CallContext* Node::_internal_mutable_call_context() { + if (node_case() != kCallContext) { clear_node(); - set_has_range_tbl_function(); - _impl_.node_.range_tbl_function_ = CreateMaybeMessage< ::pg_query::RangeTblFunction >(GetArenaForAllocation()); + set_has_call_context(); + _impl_.node_.call_context_ = CreateMaybeMessage<::pg_query::CallContext>(GetArena()); } - return _impl_.node_.range_tbl_function_; + return _impl_.node_.call_context_; } -inline ::pg_query::RangeTblFunction* Node::mutable_range_tbl_function() { - ::pg_query::RangeTblFunction* _msg = _internal_mutable_range_tbl_function(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.range_tbl_function) +inline ::pg_query::CallContext* Node::mutable_call_context() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CallContext* _msg = _internal_mutable_call_context(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.call_context) return _msg; } -// .pg_query.TableSampleClause table_sample_clause = 198 [json_name = "TableSampleClause"]; -inline bool Node::_internal_has_table_sample_clause() const { - return node_case() == kTableSampleClause; +// .pg_query.RenameStmt rename_stmt = 193 [json_name = "RenameStmt"]; +inline bool Node::has_rename_stmt() const { + return node_case() == kRenameStmt; } -inline bool Node::has_table_sample_clause() const { - return _internal_has_table_sample_clause(); +inline bool Node::_internal_has_rename_stmt() const { + return node_case() == kRenameStmt; } -inline void Node::set_has_table_sample_clause() { - _impl_._oneof_case_[0] = kTableSampleClause; +inline void Node::set_has_rename_stmt() { + _impl_._oneof_case_[0] = kRenameStmt; } -inline void Node::clear_table_sample_clause() { - if (_internal_has_table_sample_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.table_sample_clause_; +inline void Node::clear_rename_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRenameStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.rename_stmt_; } clear_has_node(); } } -inline ::pg_query::TableSampleClause* Node::release_table_sample_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.table_sample_clause) - if (_internal_has_table_sample_clause()) { +inline ::pg_query::RenameStmt* Node::release_rename_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.rename_stmt) + if (node_case() == kRenameStmt) { clear_has_node(); - ::pg_query::TableSampleClause* temp = _impl_.node_.table_sample_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.rename_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.table_sample_clause_ = nullptr; + _impl_.node_.rename_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::TableSampleClause& Node::_internal_table_sample_clause() const { - return _internal_has_table_sample_clause() - ? *_impl_.node_.table_sample_clause_ - : reinterpret_cast< ::pg_query::TableSampleClause&>(::pg_query::_TableSampleClause_default_instance_); +inline const ::pg_query::RenameStmt& Node::_internal_rename_stmt() const { + return node_case() == kRenameStmt ? *_impl_.node_.rename_stmt_ : reinterpret_cast<::pg_query::RenameStmt&>(::pg_query::_RenameStmt_default_instance_); } -inline const ::pg_query::TableSampleClause& Node::table_sample_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.table_sample_clause) - return _internal_table_sample_clause(); +inline const ::pg_query::RenameStmt& Node::rename_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.rename_stmt) + return _internal_rename_stmt(); } -inline ::pg_query::TableSampleClause* Node::unsafe_arena_release_table_sample_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.table_sample_clause) - if (_internal_has_table_sample_clause()) { +inline ::pg_query::RenameStmt* Node::unsafe_arena_release_rename_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.rename_stmt) + if (node_case() == kRenameStmt) { clear_has_node(); - ::pg_query::TableSampleClause* temp = _impl_.node_.table_sample_clause_; - _impl_.node_.table_sample_clause_ = nullptr; + auto* temp = _impl_.node_.rename_stmt_; + _impl_.node_.rename_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_table_sample_clause(::pg_query::TableSampleClause* table_sample_clause) { +inline void Node::unsafe_arena_set_allocated_rename_stmt(::pg_query::RenameStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (table_sample_clause) { - set_has_table_sample_clause(); - _impl_.node_.table_sample_clause_ = table_sample_clause; + if (value) { + set_has_rename_stmt(); + _impl_.node_.rename_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.table_sample_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.rename_stmt) } -inline ::pg_query::TableSampleClause* Node::_internal_mutable_table_sample_clause() { - if (!_internal_has_table_sample_clause()) { +inline ::pg_query::RenameStmt* Node::_internal_mutable_rename_stmt() { + if (node_case() != kRenameStmt) { clear_node(); - set_has_table_sample_clause(); - _impl_.node_.table_sample_clause_ = CreateMaybeMessage< ::pg_query::TableSampleClause >(GetArenaForAllocation()); + set_has_rename_stmt(); + _impl_.node_.rename_stmt_ = CreateMaybeMessage<::pg_query::RenameStmt>(GetArena()); } - return _impl_.node_.table_sample_clause_; + return _impl_.node_.rename_stmt_; } -inline ::pg_query::TableSampleClause* Node::mutable_table_sample_clause() { - ::pg_query::TableSampleClause* _msg = _internal_mutable_table_sample_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.table_sample_clause) +inline ::pg_query::RenameStmt* Node::mutable_rename_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RenameStmt* _msg = _internal_mutable_rename_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.rename_stmt) return _msg; } -// .pg_query.WithCheckOption with_check_option = 199 [json_name = "WithCheckOption"]; -inline bool Node::_internal_has_with_check_option() const { - return node_case() == kWithCheckOption; +// .pg_query.AlterObjectDependsStmt alter_object_depends_stmt = 194 [json_name = "AlterObjectDependsStmt"]; +inline bool Node::has_alter_object_depends_stmt() const { + return node_case() == kAlterObjectDependsStmt; } -inline bool Node::has_with_check_option() const { - return _internal_has_with_check_option(); +inline bool Node::_internal_has_alter_object_depends_stmt() const { + return node_case() == kAlterObjectDependsStmt; } -inline void Node::set_has_with_check_option() { - _impl_._oneof_case_[0] = kWithCheckOption; +inline void Node::set_has_alter_object_depends_stmt() { + _impl_._oneof_case_[0] = kAlterObjectDependsStmt; } -inline void Node::clear_with_check_option() { - if (_internal_has_with_check_option()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.with_check_option_; +inline void Node::clear_alter_object_depends_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterObjectDependsStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_object_depends_stmt_; } clear_has_node(); } } -inline ::pg_query::WithCheckOption* Node::release_with_check_option() { - // @@protoc_insertion_point(field_release:pg_query.Node.with_check_option) - if (_internal_has_with_check_option()) { +inline ::pg_query::AlterObjectDependsStmt* Node::release_alter_object_depends_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_object_depends_stmt) + if (node_case() == kAlterObjectDependsStmt) { clear_has_node(); - ::pg_query::WithCheckOption* temp = _impl_.node_.with_check_option_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_object_depends_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.with_check_option_ = nullptr; + _impl_.node_.alter_object_depends_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::WithCheckOption& Node::_internal_with_check_option() const { - return _internal_has_with_check_option() - ? *_impl_.node_.with_check_option_ - : reinterpret_cast< ::pg_query::WithCheckOption&>(::pg_query::_WithCheckOption_default_instance_); +inline const ::pg_query::AlterObjectDependsStmt& Node::_internal_alter_object_depends_stmt() const { + return node_case() == kAlterObjectDependsStmt ? *_impl_.node_.alter_object_depends_stmt_ : reinterpret_cast<::pg_query::AlterObjectDependsStmt&>(::pg_query::_AlterObjectDependsStmt_default_instance_); } -inline const ::pg_query::WithCheckOption& Node::with_check_option() const { - // @@protoc_insertion_point(field_get:pg_query.Node.with_check_option) - return _internal_with_check_option(); +inline const ::pg_query::AlterObjectDependsStmt& Node::alter_object_depends_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_object_depends_stmt) + return _internal_alter_object_depends_stmt(); } -inline ::pg_query::WithCheckOption* Node::unsafe_arena_release_with_check_option() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.with_check_option) - if (_internal_has_with_check_option()) { +inline ::pg_query::AlterObjectDependsStmt* Node::unsafe_arena_release_alter_object_depends_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_object_depends_stmt) + if (node_case() == kAlterObjectDependsStmt) { clear_has_node(); - ::pg_query::WithCheckOption* temp = _impl_.node_.with_check_option_; - _impl_.node_.with_check_option_ = nullptr; + auto* temp = _impl_.node_.alter_object_depends_stmt_; + _impl_.node_.alter_object_depends_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_with_check_option(::pg_query::WithCheckOption* with_check_option) { +inline void Node::unsafe_arena_set_allocated_alter_object_depends_stmt(::pg_query::AlterObjectDependsStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (with_check_option) { - set_has_with_check_option(); - _impl_.node_.with_check_option_ = with_check_option; + if (value) { + set_has_alter_object_depends_stmt(); + _impl_.node_.alter_object_depends_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.with_check_option) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_object_depends_stmt) } -inline ::pg_query::WithCheckOption* Node::_internal_mutable_with_check_option() { - if (!_internal_has_with_check_option()) { +inline ::pg_query::AlterObjectDependsStmt* Node::_internal_mutable_alter_object_depends_stmt() { + if (node_case() != kAlterObjectDependsStmt) { clear_node(); - set_has_with_check_option(); - _impl_.node_.with_check_option_ = CreateMaybeMessage< ::pg_query::WithCheckOption >(GetArenaForAllocation()); + set_has_alter_object_depends_stmt(); + _impl_.node_.alter_object_depends_stmt_ = CreateMaybeMessage<::pg_query::AlterObjectDependsStmt>(GetArena()); } - return _impl_.node_.with_check_option_; + return _impl_.node_.alter_object_depends_stmt_; } -inline ::pg_query::WithCheckOption* Node::mutable_with_check_option() { - ::pg_query::WithCheckOption* _msg = _internal_mutable_with_check_option(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.with_check_option) +inline ::pg_query::AlterObjectDependsStmt* Node::mutable_alter_object_depends_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterObjectDependsStmt* _msg = _internal_mutable_alter_object_depends_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_object_depends_stmt) return _msg; } -// .pg_query.SortGroupClause sort_group_clause = 200 [json_name = "SortGroupClause"]; -inline bool Node::_internal_has_sort_group_clause() const { - return node_case() == kSortGroupClause; +// .pg_query.AlterObjectSchemaStmt alter_object_schema_stmt = 195 [json_name = "AlterObjectSchemaStmt"]; +inline bool Node::has_alter_object_schema_stmt() const { + return node_case() == kAlterObjectSchemaStmt; } -inline bool Node::has_sort_group_clause() const { - return _internal_has_sort_group_clause(); +inline bool Node::_internal_has_alter_object_schema_stmt() const { + return node_case() == kAlterObjectSchemaStmt; } -inline void Node::set_has_sort_group_clause() { - _impl_._oneof_case_[0] = kSortGroupClause; +inline void Node::set_has_alter_object_schema_stmt() { + _impl_._oneof_case_[0] = kAlterObjectSchemaStmt; } -inline void Node::clear_sort_group_clause() { - if (_internal_has_sort_group_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.sort_group_clause_; +inline void Node::clear_alter_object_schema_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterObjectSchemaStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_object_schema_stmt_; } clear_has_node(); } } -inline ::pg_query::SortGroupClause* Node::release_sort_group_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.sort_group_clause) - if (_internal_has_sort_group_clause()) { +inline ::pg_query::AlterObjectSchemaStmt* Node::release_alter_object_schema_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_object_schema_stmt) + if (node_case() == kAlterObjectSchemaStmt) { clear_has_node(); - ::pg_query::SortGroupClause* temp = _impl_.node_.sort_group_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_object_schema_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.sort_group_clause_ = nullptr; + _impl_.node_.alter_object_schema_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::SortGroupClause& Node::_internal_sort_group_clause() const { - return _internal_has_sort_group_clause() - ? *_impl_.node_.sort_group_clause_ - : reinterpret_cast< ::pg_query::SortGroupClause&>(::pg_query::_SortGroupClause_default_instance_); +inline const ::pg_query::AlterObjectSchemaStmt& Node::_internal_alter_object_schema_stmt() const { + return node_case() == kAlterObjectSchemaStmt ? *_impl_.node_.alter_object_schema_stmt_ : reinterpret_cast<::pg_query::AlterObjectSchemaStmt&>(::pg_query::_AlterObjectSchemaStmt_default_instance_); } -inline const ::pg_query::SortGroupClause& Node::sort_group_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.sort_group_clause) - return _internal_sort_group_clause(); +inline const ::pg_query::AlterObjectSchemaStmt& Node::alter_object_schema_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_object_schema_stmt) + return _internal_alter_object_schema_stmt(); } -inline ::pg_query::SortGroupClause* Node::unsafe_arena_release_sort_group_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.sort_group_clause) - if (_internal_has_sort_group_clause()) { +inline ::pg_query::AlterObjectSchemaStmt* Node::unsafe_arena_release_alter_object_schema_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_object_schema_stmt) + if (node_case() == kAlterObjectSchemaStmt) { clear_has_node(); - ::pg_query::SortGroupClause* temp = _impl_.node_.sort_group_clause_; - _impl_.node_.sort_group_clause_ = nullptr; + auto* temp = _impl_.node_.alter_object_schema_stmt_; + _impl_.node_.alter_object_schema_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_sort_group_clause(::pg_query::SortGroupClause* sort_group_clause) { +inline void Node::unsafe_arena_set_allocated_alter_object_schema_stmt(::pg_query::AlterObjectSchemaStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (sort_group_clause) { - set_has_sort_group_clause(); - _impl_.node_.sort_group_clause_ = sort_group_clause; + if (value) { + set_has_alter_object_schema_stmt(); + _impl_.node_.alter_object_schema_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.sort_group_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_object_schema_stmt) } -inline ::pg_query::SortGroupClause* Node::_internal_mutable_sort_group_clause() { - if (!_internal_has_sort_group_clause()) { +inline ::pg_query::AlterObjectSchemaStmt* Node::_internal_mutable_alter_object_schema_stmt() { + if (node_case() != kAlterObjectSchemaStmt) { clear_node(); - set_has_sort_group_clause(); - _impl_.node_.sort_group_clause_ = CreateMaybeMessage< ::pg_query::SortGroupClause >(GetArenaForAllocation()); + set_has_alter_object_schema_stmt(); + _impl_.node_.alter_object_schema_stmt_ = CreateMaybeMessage<::pg_query::AlterObjectSchemaStmt>(GetArena()); } - return _impl_.node_.sort_group_clause_; + return _impl_.node_.alter_object_schema_stmt_; } -inline ::pg_query::SortGroupClause* Node::mutable_sort_group_clause() { - ::pg_query::SortGroupClause* _msg = _internal_mutable_sort_group_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.sort_group_clause) +inline ::pg_query::AlterObjectSchemaStmt* Node::mutable_alter_object_schema_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterObjectSchemaStmt* _msg = _internal_mutable_alter_object_schema_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_object_schema_stmt) return _msg; } -// .pg_query.GroupingSet grouping_set = 201 [json_name = "GroupingSet"]; -inline bool Node::_internal_has_grouping_set() const { - return node_case() == kGroupingSet; +// .pg_query.AlterOwnerStmt alter_owner_stmt = 196 [json_name = "AlterOwnerStmt"]; +inline bool Node::has_alter_owner_stmt() const { + return node_case() == kAlterOwnerStmt; } -inline bool Node::has_grouping_set() const { - return _internal_has_grouping_set(); +inline bool Node::_internal_has_alter_owner_stmt() const { + return node_case() == kAlterOwnerStmt; } -inline void Node::set_has_grouping_set() { - _impl_._oneof_case_[0] = kGroupingSet; +inline void Node::set_has_alter_owner_stmt() { + _impl_._oneof_case_[0] = kAlterOwnerStmt; } -inline void Node::clear_grouping_set() { - if (_internal_has_grouping_set()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.grouping_set_; +inline void Node::clear_alter_owner_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterOwnerStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_owner_stmt_; } clear_has_node(); } } -inline ::pg_query::GroupingSet* Node::release_grouping_set() { - // @@protoc_insertion_point(field_release:pg_query.Node.grouping_set) - if (_internal_has_grouping_set()) { +inline ::pg_query::AlterOwnerStmt* Node::release_alter_owner_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_owner_stmt) + if (node_case() == kAlterOwnerStmt) { clear_has_node(); - ::pg_query::GroupingSet* temp = _impl_.node_.grouping_set_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_owner_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.grouping_set_ = nullptr; + _impl_.node_.alter_owner_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::GroupingSet& Node::_internal_grouping_set() const { - return _internal_has_grouping_set() - ? *_impl_.node_.grouping_set_ - : reinterpret_cast< ::pg_query::GroupingSet&>(::pg_query::_GroupingSet_default_instance_); +inline const ::pg_query::AlterOwnerStmt& Node::_internal_alter_owner_stmt() const { + return node_case() == kAlterOwnerStmt ? *_impl_.node_.alter_owner_stmt_ : reinterpret_cast<::pg_query::AlterOwnerStmt&>(::pg_query::_AlterOwnerStmt_default_instance_); } -inline const ::pg_query::GroupingSet& Node::grouping_set() const { - // @@protoc_insertion_point(field_get:pg_query.Node.grouping_set) - return _internal_grouping_set(); +inline const ::pg_query::AlterOwnerStmt& Node::alter_owner_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_owner_stmt) + return _internal_alter_owner_stmt(); } -inline ::pg_query::GroupingSet* Node::unsafe_arena_release_grouping_set() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.grouping_set) - if (_internal_has_grouping_set()) { +inline ::pg_query::AlterOwnerStmt* Node::unsafe_arena_release_alter_owner_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_owner_stmt) + if (node_case() == kAlterOwnerStmt) { clear_has_node(); - ::pg_query::GroupingSet* temp = _impl_.node_.grouping_set_; - _impl_.node_.grouping_set_ = nullptr; + auto* temp = _impl_.node_.alter_owner_stmt_; + _impl_.node_.alter_owner_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_grouping_set(::pg_query::GroupingSet* grouping_set) { +inline void Node::unsafe_arena_set_allocated_alter_owner_stmt(::pg_query::AlterOwnerStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (grouping_set) { - set_has_grouping_set(); - _impl_.node_.grouping_set_ = grouping_set; + if (value) { + set_has_alter_owner_stmt(); + _impl_.node_.alter_owner_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.grouping_set) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_owner_stmt) } -inline ::pg_query::GroupingSet* Node::_internal_mutable_grouping_set() { - if (!_internal_has_grouping_set()) { +inline ::pg_query::AlterOwnerStmt* Node::_internal_mutable_alter_owner_stmt() { + if (node_case() != kAlterOwnerStmt) { clear_node(); - set_has_grouping_set(); - _impl_.node_.grouping_set_ = CreateMaybeMessage< ::pg_query::GroupingSet >(GetArenaForAllocation()); + set_has_alter_owner_stmt(); + _impl_.node_.alter_owner_stmt_ = CreateMaybeMessage<::pg_query::AlterOwnerStmt>(GetArena()); } - return _impl_.node_.grouping_set_; + return _impl_.node_.alter_owner_stmt_; } -inline ::pg_query::GroupingSet* Node::mutable_grouping_set() { - ::pg_query::GroupingSet* _msg = _internal_mutable_grouping_set(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.grouping_set) +inline ::pg_query::AlterOwnerStmt* Node::mutable_alter_owner_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterOwnerStmt* _msg = _internal_mutable_alter_owner_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_owner_stmt) return _msg; } -// .pg_query.WindowClause window_clause = 202 [json_name = "WindowClause"]; -inline bool Node::_internal_has_window_clause() const { - return node_case() == kWindowClause; +// .pg_query.AlterOperatorStmt alter_operator_stmt = 197 [json_name = "AlterOperatorStmt"]; +inline bool Node::has_alter_operator_stmt() const { + return node_case() == kAlterOperatorStmt; } -inline bool Node::has_window_clause() const { - return _internal_has_window_clause(); +inline bool Node::_internal_has_alter_operator_stmt() const { + return node_case() == kAlterOperatorStmt; } -inline void Node::set_has_window_clause() { - _impl_._oneof_case_[0] = kWindowClause; +inline void Node::set_has_alter_operator_stmt() { + _impl_._oneof_case_[0] = kAlterOperatorStmt; } -inline void Node::clear_window_clause() { - if (_internal_has_window_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.window_clause_; +inline void Node::clear_alter_operator_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterOperatorStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_operator_stmt_; } clear_has_node(); } } -inline ::pg_query::WindowClause* Node::release_window_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.window_clause) - if (_internal_has_window_clause()) { +inline ::pg_query::AlterOperatorStmt* Node::release_alter_operator_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_operator_stmt) + if (node_case() == kAlterOperatorStmt) { clear_has_node(); - ::pg_query::WindowClause* temp = _impl_.node_.window_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_operator_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.window_clause_ = nullptr; + _impl_.node_.alter_operator_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::WindowClause& Node::_internal_window_clause() const { - return _internal_has_window_clause() - ? *_impl_.node_.window_clause_ - : reinterpret_cast< ::pg_query::WindowClause&>(::pg_query::_WindowClause_default_instance_); +inline const ::pg_query::AlterOperatorStmt& Node::_internal_alter_operator_stmt() const { + return node_case() == kAlterOperatorStmt ? *_impl_.node_.alter_operator_stmt_ : reinterpret_cast<::pg_query::AlterOperatorStmt&>(::pg_query::_AlterOperatorStmt_default_instance_); } -inline const ::pg_query::WindowClause& Node::window_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.window_clause) - return _internal_window_clause(); +inline const ::pg_query::AlterOperatorStmt& Node::alter_operator_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_operator_stmt) + return _internal_alter_operator_stmt(); } -inline ::pg_query::WindowClause* Node::unsafe_arena_release_window_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.window_clause) - if (_internal_has_window_clause()) { +inline ::pg_query::AlterOperatorStmt* Node::unsafe_arena_release_alter_operator_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_operator_stmt) + if (node_case() == kAlterOperatorStmt) { clear_has_node(); - ::pg_query::WindowClause* temp = _impl_.node_.window_clause_; - _impl_.node_.window_clause_ = nullptr; + auto* temp = _impl_.node_.alter_operator_stmt_; + _impl_.node_.alter_operator_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_window_clause(::pg_query::WindowClause* window_clause) { +inline void Node::unsafe_arena_set_allocated_alter_operator_stmt(::pg_query::AlterOperatorStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (window_clause) { - set_has_window_clause(); - _impl_.node_.window_clause_ = window_clause; + if (value) { + set_has_alter_operator_stmt(); + _impl_.node_.alter_operator_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.window_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_operator_stmt) } -inline ::pg_query::WindowClause* Node::_internal_mutable_window_clause() { - if (!_internal_has_window_clause()) { +inline ::pg_query::AlterOperatorStmt* Node::_internal_mutable_alter_operator_stmt() { + if (node_case() != kAlterOperatorStmt) { clear_node(); - set_has_window_clause(); - _impl_.node_.window_clause_ = CreateMaybeMessage< ::pg_query::WindowClause >(GetArenaForAllocation()); + set_has_alter_operator_stmt(); + _impl_.node_.alter_operator_stmt_ = CreateMaybeMessage<::pg_query::AlterOperatorStmt>(GetArena()); } - return _impl_.node_.window_clause_; + return _impl_.node_.alter_operator_stmt_; } -inline ::pg_query::WindowClause* Node::mutable_window_clause() { - ::pg_query::WindowClause* _msg = _internal_mutable_window_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.window_clause) +inline ::pg_query::AlterOperatorStmt* Node::mutable_alter_operator_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterOperatorStmt* _msg = _internal_mutable_alter_operator_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_operator_stmt) return _msg; } -// .pg_query.ObjectWithArgs object_with_args = 203 [json_name = "ObjectWithArgs"]; -inline bool Node::_internal_has_object_with_args() const { - return node_case() == kObjectWithArgs; +// .pg_query.AlterTypeStmt alter_type_stmt = 198 [json_name = "AlterTypeStmt"]; +inline bool Node::has_alter_type_stmt() const { + return node_case() == kAlterTypeStmt; } -inline bool Node::has_object_with_args() const { - return _internal_has_object_with_args(); +inline bool Node::_internal_has_alter_type_stmt() const { + return node_case() == kAlterTypeStmt; } -inline void Node::set_has_object_with_args() { - _impl_._oneof_case_[0] = kObjectWithArgs; +inline void Node::set_has_alter_type_stmt() { + _impl_._oneof_case_[0] = kAlterTypeStmt; } -inline void Node::clear_object_with_args() { - if (_internal_has_object_with_args()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.object_with_args_; +inline void Node::clear_alter_type_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterTypeStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_type_stmt_; } clear_has_node(); } } -inline ::pg_query::ObjectWithArgs* Node::release_object_with_args() { - // @@protoc_insertion_point(field_release:pg_query.Node.object_with_args) - if (_internal_has_object_with_args()) { +inline ::pg_query::AlterTypeStmt* Node::release_alter_type_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_type_stmt) + if (node_case() == kAlterTypeStmt) { clear_has_node(); - ::pg_query::ObjectWithArgs* temp = _impl_.node_.object_with_args_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_type_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.object_with_args_ = nullptr; + _impl_.node_.alter_type_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::ObjectWithArgs& Node::_internal_object_with_args() const { - return _internal_has_object_with_args() - ? *_impl_.node_.object_with_args_ - : reinterpret_cast< ::pg_query::ObjectWithArgs&>(::pg_query::_ObjectWithArgs_default_instance_); +inline const ::pg_query::AlterTypeStmt& Node::_internal_alter_type_stmt() const { + return node_case() == kAlterTypeStmt ? *_impl_.node_.alter_type_stmt_ : reinterpret_cast<::pg_query::AlterTypeStmt&>(::pg_query::_AlterTypeStmt_default_instance_); } -inline const ::pg_query::ObjectWithArgs& Node::object_with_args() const { - // @@protoc_insertion_point(field_get:pg_query.Node.object_with_args) - return _internal_object_with_args(); +inline const ::pg_query::AlterTypeStmt& Node::alter_type_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_type_stmt) + return _internal_alter_type_stmt(); } -inline ::pg_query::ObjectWithArgs* Node::unsafe_arena_release_object_with_args() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.object_with_args) - if (_internal_has_object_with_args()) { +inline ::pg_query::AlterTypeStmt* Node::unsafe_arena_release_alter_type_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_type_stmt) + if (node_case() == kAlterTypeStmt) { clear_has_node(); - ::pg_query::ObjectWithArgs* temp = _impl_.node_.object_with_args_; - _impl_.node_.object_with_args_ = nullptr; + auto* temp = _impl_.node_.alter_type_stmt_; + _impl_.node_.alter_type_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_object_with_args(::pg_query::ObjectWithArgs* object_with_args) { +inline void Node::unsafe_arena_set_allocated_alter_type_stmt(::pg_query::AlterTypeStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (object_with_args) { - set_has_object_with_args(); - _impl_.node_.object_with_args_ = object_with_args; + if (value) { + set_has_alter_type_stmt(); + _impl_.node_.alter_type_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.object_with_args) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_type_stmt) } -inline ::pg_query::ObjectWithArgs* Node::_internal_mutable_object_with_args() { - if (!_internal_has_object_with_args()) { +inline ::pg_query::AlterTypeStmt* Node::_internal_mutable_alter_type_stmt() { + if (node_case() != kAlterTypeStmt) { clear_node(); - set_has_object_with_args(); - _impl_.node_.object_with_args_ = CreateMaybeMessage< ::pg_query::ObjectWithArgs >(GetArenaForAllocation()); + set_has_alter_type_stmt(); + _impl_.node_.alter_type_stmt_ = CreateMaybeMessage<::pg_query::AlterTypeStmt>(GetArena()); } - return _impl_.node_.object_with_args_; + return _impl_.node_.alter_type_stmt_; } -inline ::pg_query::ObjectWithArgs* Node::mutable_object_with_args() { - ::pg_query::ObjectWithArgs* _msg = _internal_mutable_object_with_args(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.object_with_args) +inline ::pg_query::AlterTypeStmt* Node::mutable_alter_type_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterTypeStmt* _msg = _internal_mutable_alter_type_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_type_stmt) return _msg; } -// .pg_query.AccessPriv access_priv = 204 [json_name = "AccessPriv"]; -inline bool Node::_internal_has_access_priv() const { - return node_case() == kAccessPriv; +// .pg_query.RuleStmt rule_stmt = 199 [json_name = "RuleStmt"]; +inline bool Node::has_rule_stmt() const { + return node_case() == kRuleStmt; } -inline bool Node::has_access_priv() const { - return _internal_has_access_priv(); +inline bool Node::_internal_has_rule_stmt() const { + return node_case() == kRuleStmt; } -inline void Node::set_has_access_priv() { - _impl_._oneof_case_[0] = kAccessPriv; +inline void Node::set_has_rule_stmt() { + _impl_._oneof_case_[0] = kRuleStmt; } -inline void Node::clear_access_priv() { - if (_internal_has_access_priv()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.access_priv_; +inline void Node::clear_rule_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRuleStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.rule_stmt_; } clear_has_node(); } } -inline ::pg_query::AccessPriv* Node::release_access_priv() { - // @@protoc_insertion_point(field_release:pg_query.Node.access_priv) - if (_internal_has_access_priv()) { +inline ::pg_query::RuleStmt* Node::release_rule_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.rule_stmt) + if (node_case() == kRuleStmt) { clear_has_node(); - ::pg_query::AccessPriv* temp = _impl_.node_.access_priv_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.rule_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.access_priv_ = nullptr; + _impl_.node_.rule_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::AccessPriv& Node::_internal_access_priv() const { - return _internal_has_access_priv() - ? *_impl_.node_.access_priv_ - : reinterpret_cast< ::pg_query::AccessPriv&>(::pg_query::_AccessPriv_default_instance_); +inline const ::pg_query::RuleStmt& Node::_internal_rule_stmt() const { + return node_case() == kRuleStmt ? *_impl_.node_.rule_stmt_ : reinterpret_cast<::pg_query::RuleStmt&>(::pg_query::_RuleStmt_default_instance_); } -inline const ::pg_query::AccessPriv& Node::access_priv() const { - // @@protoc_insertion_point(field_get:pg_query.Node.access_priv) - return _internal_access_priv(); +inline const ::pg_query::RuleStmt& Node::rule_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.rule_stmt) + return _internal_rule_stmt(); } -inline ::pg_query::AccessPriv* Node::unsafe_arena_release_access_priv() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.access_priv) - if (_internal_has_access_priv()) { +inline ::pg_query::RuleStmt* Node::unsafe_arena_release_rule_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.rule_stmt) + if (node_case() == kRuleStmt) { clear_has_node(); - ::pg_query::AccessPriv* temp = _impl_.node_.access_priv_; - _impl_.node_.access_priv_ = nullptr; + auto* temp = _impl_.node_.rule_stmt_; + _impl_.node_.rule_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_access_priv(::pg_query::AccessPriv* access_priv) { +inline void Node::unsafe_arena_set_allocated_rule_stmt(::pg_query::RuleStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (access_priv) { - set_has_access_priv(); - _impl_.node_.access_priv_ = access_priv; + if (value) { + set_has_rule_stmt(); + _impl_.node_.rule_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.access_priv) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.rule_stmt) } -inline ::pg_query::AccessPriv* Node::_internal_mutable_access_priv() { - if (!_internal_has_access_priv()) { +inline ::pg_query::RuleStmt* Node::_internal_mutable_rule_stmt() { + if (node_case() != kRuleStmt) { clear_node(); - set_has_access_priv(); - _impl_.node_.access_priv_ = CreateMaybeMessage< ::pg_query::AccessPriv >(GetArenaForAllocation()); + set_has_rule_stmt(); + _impl_.node_.rule_stmt_ = CreateMaybeMessage<::pg_query::RuleStmt>(GetArena()); } - return _impl_.node_.access_priv_; + return _impl_.node_.rule_stmt_; } -inline ::pg_query::AccessPriv* Node::mutable_access_priv() { - ::pg_query::AccessPriv* _msg = _internal_mutable_access_priv(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.access_priv) +inline ::pg_query::RuleStmt* Node::mutable_rule_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RuleStmt* _msg = _internal_mutable_rule_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.rule_stmt) return _msg; } -// .pg_query.CreateOpClassItem create_op_class_item = 205 [json_name = "CreateOpClassItem"]; -inline bool Node::_internal_has_create_op_class_item() const { - return node_case() == kCreateOpClassItem; +// .pg_query.NotifyStmt notify_stmt = 200 [json_name = "NotifyStmt"]; +inline bool Node::has_notify_stmt() const { + return node_case() == kNotifyStmt; } -inline bool Node::has_create_op_class_item() const { - return _internal_has_create_op_class_item(); +inline bool Node::_internal_has_notify_stmt() const { + return node_case() == kNotifyStmt; } -inline void Node::set_has_create_op_class_item() { - _impl_._oneof_case_[0] = kCreateOpClassItem; +inline void Node::set_has_notify_stmt() { + _impl_._oneof_case_[0] = kNotifyStmt; } -inline void Node::clear_create_op_class_item() { - if (_internal_has_create_op_class_item()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.create_op_class_item_; +inline void Node::clear_notify_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kNotifyStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.notify_stmt_; } clear_has_node(); } } -inline ::pg_query::CreateOpClassItem* Node::release_create_op_class_item() { - // @@protoc_insertion_point(field_release:pg_query.Node.create_op_class_item) - if (_internal_has_create_op_class_item()) { +inline ::pg_query::NotifyStmt* Node::release_notify_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.notify_stmt) + if (node_case() == kNotifyStmt) { clear_has_node(); - ::pg_query::CreateOpClassItem* temp = _impl_.node_.create_op_class_item_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.notify_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.create_op_class_item_ = nullptr; + _impl_.node_.notify_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CreateOpClassItem& Node::_internal_create_op_class_item() const { - return _internal_has_create_op_class_item() - ? *_impl_.node_.create_op_class_item_ - : reinterpret_cast< ::pg_query::CreateOpClassItem&>(::pg_query::_CreateOpClassItem_default_instance_); +inline const ::pg_query::NotifyStmt& Node::_internal_notify_stmt() const { + return node_case() == kNotifyStmt ? *_impl_.node_.notify_stmt_ : reinterpret_cast<::pg_query::NotifyStmt&>(::pg_query::_NotifyStmt_default_instance_); } -inline const ::pg_query::CreateOpClassItem& Node::create_op_class_item() const { - // @@protoc_insertion_point(field_get:pg_query.Node.create_op_class_item) - return _internal_create_op_class_item(); +inline const ::pg_query::NotifyStmt& Node::notify_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.notify_stmt) + return _internal_notify_stmt(); } -inline ::pg_query::CreateOpClassItem* Node::unsafe_arena_release_create_op_class_item() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_op_class_item) - if (_internal_has_create_op_class_item()) { +inline ::pg_query::NotifyStmt* Node::unsafe_arena_release_notify_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.notify_stmt) + if (node_case() == kNotifyStmt) { clear_has_node(); - ::pg_query::CreateOpClassItem* temp = _impl_.node_.create_op_class_item_; - _impl_.node_.create_op_class_item_ = nullptr; + auto* temp = _impl_.node_.notify_stmt_; + _impl_.node_.notify_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_create_op_class_item(::pg_query::CreateOpClassItem* create_op_class_item) { +inline void Node::unsafe_arena_set_allocated_notify_stmt(::pg_query::NotifyStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (create_op_class_item) { - set_has_create_op_class_item(); - _impl_.node_.create_op_class_item_ = create_op_class_item; + if (value) { + set_has_notify_stmt(); + _impl_.node_.notify_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_op_class_item) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.notify_stmt) } -inline ::pg_query::CreateOpClassItem* Node::_internal_mutable_create_op_class_item() { - if (!_internal_has_create_op_class_item()) { +inline ::pg_query::NotifyStmt* Node::_internal_mutable_notify_stmt() { + if (node_case() != kNotifyStmt) { clear_node(); - set_has_create_op_class_item(); - _impl_.node_.create_op_class_item_ = CreateMaybeMessage< ::pg_query::CreateOpClassItem >(GetArenaForAllocation()); + set_has_notify_stmt(); + _impl_.node_.notify_stmt_ = CreateMaybeMessage<::pg_query::NotifyStmt>(GetArena()); } - return _impl_.node_.create_op_class_item_; + return _impl_.node_.notify_stmt_; } -inline ::pg_query::CreateOpClassItem* Node::mutable_create_op_class_item() { - ::pg_query::CreateOpClassItem* _msg = _internal_mutable_create_op_class_item(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.create_op_class_item) +inline ::pg_query::NotifyStmt* Node::mutable_notify_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::NotifyStmt* _msg = _internal_mutable_notify_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.notify_stmt) return _msg; } -// .pg_query.TableLikeClause table_like_clause = 206 [json_name = "TableLikeClause"]; -inline bool Node::_internal_has_table_like_clause() const { - return node_case() == kTableLikeClause; +// .pg_query.ListenStmt listen_stmt = 201 [json_name = "ListenStmt"]; +inline bool Node::has_listen_stmt() const { + return node_case() == kListenStmt; } -inline bool Node::has_table_like_clause() const { - return _internal_has_table_like_clause(); +inline bool Node::_internal_has_listen_stmt() const { + return node_case() == kListenStmt; } -inline void Node::set_has_table_like_clause() { - _impl_._oneof_case_[0] = kTableLikeClause; +inline void Node::set_has_listen_stmt() { + _impl_._oneof_case_[0] = kListenStmt; } -inline void Node::clear_table_like_clause() { - if (_internal_has_table_like_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.table_like_clause_; +inline void Node::clear_listen_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kListenStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.listen_stmt_; } clear_has_node(); } } -inline ::pg_query::TableLikeClause* Node::release_table_like_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.table_like_clause) - if (_internal_has_table_like_clause()) { +inline ::pg_query::ListenStmt* Node::release_listen_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.listen_stmt) + if (node_case() == kListenStmt) { clear_has_node(); - ::pg_query::TableLikeClause* temp = _impl_.node_.table_like_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.listen_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.table_like_clause_ = nullptr; + _impl_.node_.listen_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::TableLikeClause& Node::_internal_table_like_clause() const { - return _internal_has_table_like_clause() - ? *_impl_.node_.table_like_clause_ - : reinterpret_cast< ::pg_query::TableLikeClause&>(::pg_query::_TableLikeClause_default_instance_); +inline const ::pg_query::ListenStmt& Node::_internal_listen_stmt() const { + return node_case() == kListenStmt ? *_impl_.node_.listen_stmt_ : reinterpret_cast<::pg_query::ListenStmt&>(::pg_query::_ListenStmt_default_instance_); } -inline const ::pg_query::TableLikeClause& Node::table_like_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.table_like_clause) - return _internal_table_like_clause(); +inline const ::pg_query::ListenStmt& Node::listen_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.listen_stmt) + return _internal_listen_stmt(); } -inline ::pg_query::TableLikeClause* Node::unsafe_arena_release_table_like_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.table_like_clause) - if (_internal_has_table_like_clause()) { +inline ::pg_query::ListenStmt* Node::unsafe_arena_release_listen_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.listen_stmt) + if (node_case() == kListenStmt) { clear_has_node(); - ::pg_query::TableLikeClause* temp = _impl_.node_.table_like_clause_; - _impl_.node_.table_like_clause_ = nullptr; + auto* temp = _impl_.node_.listen_stmt_; + _impl_.node_.listen_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_table_like_clause(::pg_query::TableLikeClause* table_like_clause) { +inline void Node::unsafe_arena_set_allocated_listen_stmt(::pg_query::ListenStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (table_like_clause) { - set_has_table_like_clause(); - _impl_.node_.table_like_clause_ = table_like_clause; + if (value) { + set_has_listen_stmt(); + _impl_.node_.listen_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.table_like_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.listen_stmt) } -inline ::pg_query::TableLikeClause* Node::_internal_mutable_table_like_clause() { - if (!_internal_has_table_like_clause()) { +inline ::pg_query::ListenStmt* Node::_internal_mutable_listen_stmt() { + if (node_case() != kListenStmt) { clear_node(); - set_has_table_like_clause(); - _impl_.node_.table_like_clause_ = CreateMaybeMessage< ::pg_query::TableLikeClause >(GetArenaForAllocation()); + set_has_listen_stmt(); + _impl_.node_.listen_stmt_ = CreateMaybeMessage<::pg_query::ListenStmt>(GetArena()); } - return _impl_.node_.table_like_clause_; + return _impl_.node_.listen_stmt_; } -inline ::pg_query::TableLikeClause* Node::mutable_table_like_clause() { - ::pg_query::TableLikeClause* _msg = _internal_mutable_table_like_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.table_like_clause) +inline ::pg_query::ListenStmt* Node::mutable_listen_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ListenStmt* _msg = _internal_mutable_listen_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.listen_stmt) return _msg; } -// .pg_query.FunctionParameter function_parameter = 207 [json_name = "FunctionParameter"]; -inline bool Node::_internal_has_function_parameter() const { - return node_case() == kFunctionParameter; +// .pg_query.UnlistenStmt unlisten_stmt = 202 [json_name = "UnlistenStmt"]; +inline bool Node::has_unlisten_stmt() const { + return node_case() == kUnlistenStmt; } -inline bool Node::has_function_parameter() const { - return _internal_has_function_parameter(); +inline bool Node::_internal_has_unlisten_stmt() const { + return node_case() == kUnlistenStmt; } -inline void Node::set_has_function_parameter() { - _impl_._oneof_case_[0] = kFunctionParameter; +inline void Node::set_has_unlisten_stmt() { + _impl_._oneof_case_[0] = kUnlistenStmt; } -inline void Node::clear_function_parameter() { - if (_internal_has_function_parameter()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.function_parameter_; +inline void Node::clear_unlisten_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kUnlistenStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.unlisten_stmt_; } clear_has_node(); } } -inline ::pg_query::FunctionParameter* Node::release_function_parameter() { - // @@protoc_insertion_point(field_release:pg_query.Node.function_parameter) - if (_internal_has_function_parameter()) { +inline ::pg_query::UnlistenStmt* Node::release_unlisten_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.unlisten_stmt) + if (node_case() == kUnlistenStmt) { clear_has_node(); - ::pg_query::FunctionParameter* temp = _impl_.node_.function_parameter_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.unlisten_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.function_parameter_ = nullptr; + _impl_.node_.unlisten_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::FunctionParameter& Node::_internal_function_parameter() const { - return _internal_has_function_parameter() - ? *_impl_.node_.function_parameter_ - : reinterpret_cast< ::pg_query::FunctionParameter&>(::pg_query::_FunctionParameter_default_instance_); +inline const ::pg_query::UnlistenStmt& Node::_internal_unlisten_stmt() const { + return node_case() == kUnlistenStmt ? *_impl_.node_.unlisten_stmt_ : reinterpret_cast<::pg_query::UnlistenStmt&>(::pg_query::_UnlistenStmt_default_instance_); } -inline const ::pg_query::FunctionParameter& Node::function_parameter() const { - // @@protoc_insertion_point(field_get:pg_query.Node.function_parameter) - return _internal_function_parameter(); +inline const ::pg_query::UnlistenStmt& Node::unlisten_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.unlisten_stmt) + return _internal_unlisten_stmt(); } -inline ::pg_query::FunctionParameter* Node::unsafe_arena_release_function_parameter() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.function_parameter) - if (_internal_has_function_parameter()) { +inline ::pg_query::UnlistenStmt* Node::unsafe_arena_release_unlisten_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.unlisten_stmt) + if (node_case() == kUnlistenStmt) { clear_has_node(); - ::pg_query::FunctionParameter* temp = _impl_.node_.function_parameter_; - _impl_.node_.function_parameter_ = nullptr; + auto* temp = _impl_.node_.unlisten_stmt_; + _impl_.node_.unlisten_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_function_parameter(::pg_query::FunctionParameter* function_parameter) { +inline void Node::unsafe_arena_set_allocated_unlisten_stmt(::pg_query::UnlistenStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (function_parameter) { - set_has_function_parameter(); - _impl_.node_.function_parameter_ = function_parameter; + if (value) { + set_has_unlisten_stmt(); + _impl_.node_.unlisten_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.function_parameter) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.unlisten_stmt) } -inline ::pg_query::FunctionParameter* Node::_internal_mutable_function_parameter() { - if (!_internal_has_function_parameter()) { +inline ::pg_query::UnlistenStmt* Node::_internal_mutable_unlisten_stmt() { + if (node_case() != kUnlistenStmt) { clear_node(); - set_has_function_parameter(); - _impl_.node_.function_parameter_ = CreateMaybeMessage< ::pg_query::FunctionParameter >(GetArenaForAllocation()); + set_has_unlisten_stmt(); + _impl_.node_.unlisten_stmt_ = CreateMaybeMessage<::pg_query::UnlistenStmt>(GetArena()); } - return _impl_.node_.function_parameter_; + return _impl_.node_.unlisten_stmt_; } -inline ::pg_query::FunctionParameter* Node::mutable_function_parameter() { - ::pg_query::FunctionParameter* _msg = _internal_mutable_function_parameter(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.function_parameter) +inline ::pg_query::UnlistenStmt* Node::mutable_unlisten_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::UnlistenStmt* _msg = _internal_mutable_unlisten_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.unlisten_stmt) return _msg; } -// .pg_query.LockingClause locking_clause = 208 [json_name = "LockingClause"]; -inline bool Node::_internal_has_locking_clause() const { - return node_case() == kLockingClause; +// .pg_query.TransactionStmt transaction_stmt = 203 [json_name = "TransactionStmt"]; +inline bool Node::has_transaction_stmt() const { + return node_case() == kTransactionStmt; } -inline bool Node::has_locking_clause() const { - return _internal_has_locking_clause(); +inline bool Node::_internal_has_transaction_stmt() const { + return node_case() == kTransactionStmt; } -inline void Node::set_has_locking_clause() { - _impl_._oneof_case_[0] = kLockingClause; +inline void Node::set_has_transaction_stmt() { + _impl_._oneof_case_[0] = kTransactionStmt; } -inline void Node::clear_locking_clause() { - if (_internal_has_locking_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.locking_clause_; +inline void Node::clear_transaction_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kTransactionStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.transaction_stmt_; } clear_has_node(); } } -inline ::pg_query::LockingClause* Node::release_locking_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.locking_clause) - if (_internal_has_locking_clause()) { +inline ::pg_query::TransactionStmt* Node::release_transaction_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.transaction_stmt) + if (node_case() == kTransactionStmt) { clear_has_node(); - ::pg_query::LockingClause* temp = _impl_.node_.locking_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.transaction_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.locking_clause_ = nullptr; + _impl_.node_.transaction_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::LockingClause& Node::_internal_locking_clause() const { - return _internal_has_locking_clause() - ? *_impl_.node_.locking_clause_ - : reinterpret_cast< ::pg_query::LockingClause&>(::pg_query::_LockingClause_default_instance_); +inline const ::pg_query::TransactionStmt& Node::_internal_transaction_stmt() const { + return node_case() == kTransactionStmt ? *_impl_.node_.transaction_stmt_ : reinterpret_cast<::pg_query::TransactionStmt&>(::pg_query::_TransactionStmt_default_instance_); } -inline const ::pg_query::LockingClause& Node::locking_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.locking_clause) - return _internal_locking_clause(); +inline const ::pg_query::TransactionStmt& Node::transaction_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.transaction_stmt) + return _internal_transaction_stmt(); } -inline ::pg_query::LockingClause* Node::unsafe_arena_release_locking_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.locking_clause) - if (_internal_has_locking_clause()) { +inline ::pg_query::TransactionStmt* Node::unsafe_arena_release_transaction_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.transaction_stmt) + if (node_case() == kTransactionStmt) { clear_has_node(); - ::pg_query::LockingClause* temp = _impl_.node_.locking_clause_; - _impl_.node_.locking_clause_ = nullptr; + auto* temp = _impl_.node_.transaction_stmt_; + _impl_.node_.transaction_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_locking_clause(::pg_query::LockingClause* locking_clause) { +inline void Node::unsafe_arena_set_allocated_transaction_stmt(::pg_query::TransactionStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (locking_clause) { - set_has_locking_clause(); - _impl_.node_.locking_clause_ = locking_clause; + if (value) { + set_has_transaction_stmt(); + _impl_.node_.transaction_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.locking_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.transaction_stmt) } -inline ::pg_query::LockingClause* Node::_internal_mutable_locking_clause() { - if (!_internal_has_locking_clause()) { +inline ::pg_query::TransactionStmt* Node::_internal_mutable_transaction_stmt() { + if (node_case() != kTransactionStmt) { clear_node(); - set_has_locking_clause(); - _impl_.node_.locking_clause_ = CreateMaybeMessage< ::pg_query::LockingClause >(GetArenaForAllocation()); + set_has_transaction_stmt(); + _impl_.node_.transaction_stmt_ = CreateMaybeMessage<::pg_query::TransactionStmt>(GetArena()); } - return _impl_.node_.locking_clause_; + return _impl_.node_.transaction_stmt_; } -inline ::pg_query::LockingClause* Node::mutable_locking_clause() { - ::pg_query::LockingClause* _msg = _internal_mutable_locking_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.locking_clause) +inline ::pg_query::TransactionStmt* Node::mutable_transaction_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TransactionStmt* _msg = _internal_mutable_transaction_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.transaction_stmt) return _msg; } -// .pg_query.RowMarkClause row_mark_clause = 209 [json_name = "RowMarkClause"]; -inline bool Node::_internal_has_row_mark_clause() const { - return node_case() == kRowMarkClause; +// .pg_query.CompositeTypeStmt composite_type_stmt = 204 [json_name = "CompositeTypeStmt"]; +inline bool Node::has_composite_type_stmt() const { + return node_case() == kCompositeTypeStmt; } -inline bool Node::has_row_mark_clause() const { - return _internal_has_row_mark_clause(); +inline bool Node::_internal_has_composite_type_stmt() const { + return node_case() == kCompositeTypeStmt; } -inline void Node::set_has_row_mark_clause() { - _impl_._oneof_case_[0] = kRowMarkClause; +inline void Node::set_has_composite_type_stmt() { + _impl_._oneof_case_[0] = kCompositeTypeStmt; } -inline void Node::clear_row_mark_clause() { - if (_internal_has_row_mark_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.row_mark_clause_; +inline void Node::clear_composite_type_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCompositeTypeStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.composite_type_stmt_; } clear_has_node(); } } -inline ::pg_query::RowMarkClause* Node::release_row_mark_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.row_mark_clause) - if (_internal_has_row_mark_clause()) { +inline ::pg_query::CompositeTypeStmt* Node::release_composite_type_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.composite_type_stmt) + if (node_case() == kCompositeTypeStmt) { clear_has_node(); - ::pg_query::RowMarkClause* temp = _impl_.node_.row_mark_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.composite_type_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.row_mark_clause_ = nullptr; + _impl_.node_.composite_type_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RowMarkClause& Node::_internal_row_mark_clause() const { - return _internal_has_row_mark_clause() - ? *_impl_.node_.row_mark_clause_ - : reinterpret_cast< ::pg_query::RowMarkClause&>(::pg_query::_RowMarkClause_default_instance_); +inline const ::pg_query::CompositeTypeStmt& Node::_internal_composite_type_stmt() const { + return node_case() == kCompositeTypeStmt ? *_impl_.node_.composite_type_stmt_ : reinterpret_cast<::pg_query::CompositeTypeStmt&>(::pg_query::_CompositeTypeStmt_default_instance_); } -inline const ::pg_query::RowMarkClause& Node::row_mark_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.row_mark_clause) - return _internal_row_mark_clause(); +inline const ::pg_query::CompositeTypeStmt& Node::composite_type_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.composite_type_stmt) + return _internal_composite_type_stmt(); } -inline ::pg_query::RowMarkClause* Node::unsafe_arena_release_row_mark_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.row_mark_clause) - if (_internal_has_row_mark_clause()) { +inline ::pg_query::CompositeTypeStmt* Node::unsafe_arena_release_composite_type_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.composite_type_stmt) + if (node_case() == kCompositeTypeStmt) { clear_has_node(); - ::pg_query::RowMarkClause* temp = _impl_.node_.row_mark_clause_; - _impl_.node_.row_mark_clause_ = nullptr; + auto* temp = _impl_.node_.composite_type_stmt_; + _impl_.node_.composite_type_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_row_mark_clause(::pg_query::RowMarkClause* row_mark_clause) { +inline void Node::unsafe_arena_set_allocated_composite_type_stmt(::pg_query::CompositeTypeStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (row_mark_clause) { - set_has_row_mark_clause(); - _impl_.node_.row_mark_clause_ = row_mark_clause; + if (value) { + set_has_composite_type_stmt(); + _impl_.node_.composite_type_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.row_mark_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.composite_type_stmt) } -inline ::pg_query::RowMarkClause* Node::_internal_mutable_row_mark_clause() { - if (!_internal_has_row_mark_clause()) { +inline ::pg_query::CompositeTypeStmt* Node::_internal_mutable_composite_type_stmt() { + if (node_case() != kCompositeTypeStmt) { clear_node(); - set_has_row_mark_clause(); - _impl_.node_.row_mark_clause_ = CreateMaybeMessage< ::pg_query::RowMarkClause >(GetArenaForAllocation()); + set_has_composite_type_stmt(); + _impl_.node_.composite_type_stmt_ = CreateMaybeMessage<::pg_query::CompositeTypeStmt>(GetArena()); } - return _impl_.node_.row_mark_clause_; + return _impl_.node_.composite_type_stmt_; } -inline ::pg_query::RowMarkClause* Node::mutable_row_mark_clause() { - ::pg_query::RowMarkClause* _msg = _internal_mutable_row_mark_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.row_mark_clause) +inline ::pg_query::CompositeTypeStmt* Node::mutable_composite_type_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CompositeTypeStmt* _msg = _internal_mutable_composite_type_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.composite_type_stmt) return _msg; } -// .pg_query.XmlSerialize xml_serialize = 210 [json_name = "XmlSerialize"]; -inline bool Node::_internal_has_xml_serialize() const { - return node_case() == kXmlSerialize; +// .pg_query.CreateEnumStmt create_enum_stmt = 205 [json_name = "CreateEnumStmt"]; +inline bool Node::has_create_enum_stmt() const { + return node_case() == kCreateEnumStmt; } -inline bool Node::has_xml_serialize() const { - return _internal_has_xml_serialize(); +inline bool Node::_internal_has_create_enum_stmt() const { + return node_case() == kCreateEnumStmt; } -inline void Node::set_has_xml_serialize() { - _impl_._oneof_case_[0] = kXmlSerialize; +inline void Node::set_has_create_enum_stmt() { + _impl_._oneof_case_[0] = kCreateEnumStmt; } -inline void Node::clear_xml_serialize() { - if (_internal_has_xml_serialize()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.xml_serialize_; +inline void Node::clear_create_enum_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateEnumStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_enum_stmt_; } clear_has_node(); } } -inline ::pg_query::XmlSerialize* Node::release_xml_serialize() { - // @@protoc_insertion_point(field_release:pg_query.Node.xml_serialize) - if (_internal_has_xml_serialize()) { +inline ::pg_query::CreateEnumStmt* Node::release_create_enum_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_enum_stmt) + if (node_case() == kCreateEnumStmt) { clear_has_node(); - ::pg_query::XmlSerialize* temp = _impl_.node_.xml_serialize_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_enum_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.xml_serialize_ = nullptr; + _impl_.node_.create_enum_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::XmlSerialize& Node::_internal_xml_serialize() const { - return _internal_has_xml_serialize() - ? *_impl_.node_.xml_serialize_ - : reinterpret_cast< ::pg_query::XmlSerialize&>(::pg_query::_XmlSerialize_default_instance_); +inline const ::pg_query::CreateEnumStmt& Node::_internal_create_enum_stmt() const { + return node_case() == kCreateEnumStmt ? *_impl_.node_.create_enum_stmt_ : reinterpret_cast<::pg_query::CreateEnumStmt&>(::pg_query::_CreateEnumStmt_default_instance_); } -inline const ::pg_query::XmlSerialize& Node::xml_serialize() const { - // @@protoc_insertion_point(field_get:pg_query.Node.xml_serialize) - return _internal_xml_serialize(); +inline const ::pg_query::CreateEnumStmt& Node::create_enum_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_enum_stmt) + return _internal_create_enum_stmt(); } -inline ::pg_query::XmlSerialize* Node::unsafe_arena_release_xml_serialize() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.xml_serialize) - if (_internal_has_xml_serialize()) { +inline ::pg_query::CreateEnumStmt* Node::unsafe_arena_release_create_enum_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_enum_stmt) + if (node_case() == kCreateEnumStmt) { clear_has_node(); - ::pg_query::XmlSerialize* temp = _impl_.node_.xml_serialize_; - _impl_.node_.xml_serialize_ = nullptr; + auto* temp = _impl_.node_.create_enum_stmt_; + _impl_.node_.create_enum_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_xml_serialize(::pg_query::XmlSerialize* xml_serialize) { +inline void Node::unsafe_arena_set_allocated_create_enum_stmt(::pg_query::CreateEnumStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (xml_serialize) { - set_has_xml_serialize(); - _impl_.node_.xml_serialize_ = xml_serialize; + if (value) { + set_has_create_enum_stmt(); + _impl_.node_.create_enum_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.xml_serialize) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_enum_stmt) } -inline ::pg_query::XmlSerialize* Node::_internal_mutable_xml_serialize() { - if (!_internal_has_xml_serialize()) { +inline ::pg_query::CreateEnumStmt* Node::_internal_mutable_create_enum_stmt() { + if (node_case() != kCreateEnumStmt) { clear_node(); - set_has_xml_serialize(); - _impl_.node_.xml_serialize_ = CreateMaybeMessage< ::pg_query::XmlSerialize >(GetArenaForAllocation()); + set_has_create_enum_stmt(); + _impl_.node_.create_enum_stmt_ = CreateMaybeMessage<::pg_query::CreateEnumStmt>(GetArena()); } - return _impl_.node_.xml_serialize_; + return _impl_.node_.create_enum_stmt_; } -inline ::pg_query::XmlSerialize* Node::mutable_xml_serialize() { - ::pg_query::XmlSerialize* _msg = _internal_mutable_xml_serialize(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.xml_serialize) +inline ::pg_query::CreateEnumStmt* Node::mutable_create_enum_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateEnumStmt* _msg = _internal_mutable_create_enum_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_enum_stmt) return _msg; } -// .pg_query.WithClause with_clause = 211 [json_name = "WithClause"]; -inline bool Node::_internal_has_with_clause() const { - return node_case() == kWithClause; +// .pg_query.CreateRangeStmt create_range_stmt = 206 [json_name = "CreateRangeStmt"]; +inline bool Node::has_create_range_stmt() const { + return node_case() == kCreateRangeStmt; } -inline bool Node::has_with_clause() const { - return _internal_has_with_clause(); +inline bool Node::_internal_has_create_range_stmt() const { + return node_case() == kCreateRangeStmt; } -inline void Node::set_has_with_clause() { - _impl_._oneof_case_[0] = kWithClause; +inline void Node::set_has_create_range_stmt() { + _impl_._oneof_case_[0] = kCreateRangeStmt; } -inline void Node::clear_with_clause() { - if (_internal_has_with_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.with_clause_; +inline void Node::clear_create_range_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateRangeStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_range_stmt_; } clear_has_node(); } } -inline ::pg_query::WithClause* Node::release_with_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.with_clause) - if (_internal_has_with_clause()) { +inline ::pg_query::CreateRangeStmt* Node::release_create_range_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_range_stmt) + if (node_case() == kCreateRangeStmt) { clear_has_node(); - ::pg_query::WithClause* temp = _impl_.node_.with_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_range_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.with_clause_ = nullptr; + _impl_.node_.create_range_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::WithClause& Node::_internal_with_clause() const { - return _internal_has_with_clause() - ? *_impl_.node_.with_clause_ - : reinterpret_cast< ::pg_query::WithClause&>(::pg_query::_WithClause_default_instance_); +inline const ::pg_query::CreateRangeStmt& Node::_internal_create_range_stmt() const { + return node_case() == kCreateRangeStmt ? *_impl_.node_.create_range_stmt_ : reinterpret_cast<::pg_query::CreateRangeStmt&>(::pg_query::_CreateRangeStmt_default_instance_); } -inline const ::pg_query::WithClause& Node::with_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.with_clause) - return _internal_with_clause(); +inline const ::pg_query::CreateRangeStmt& Node::create_range_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_range_stmt) + return _internal_create_range_stmt(); } -inline ::pg_query::WithClause* Node::unsafe_arena_release_with_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.with_clause) - if (_internal_has_with_clause()) { +inline ::pg_query::CreateRangeStmt* Node::unsafe_arena_release_create_range_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_range_stmt) + if (node_case() == kCreateRangeStmt) { clear_has_node(); - ::pg_query::WithClause* temp = _impl_.node_.with_clause_; - _impl_.node_.with_clause_ = nullptr; + auto* temp = _impl_.node_.create_range_stmt_; + _impl_.node_.create_range_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* with_clause) { +inline void Node::unsafe_arena_set_allocated_create_range_stmt(::pg_query::CreateRangeStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (with_clause) { - set_has_with_clause(); - _impl_.node_.with_clause_ = with_clause; + if (value) { + set_has_create_range_stmt(); + _impl_.node_.create_range_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.with_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_range_stmt) } -inline ::pg_query::WithClause* Node::_internal_mutable_with_clause() { - if (!_internal_has_with_clause()) { +inline ::pg_query::CreateRangeStmt* Node::_internal_mutable_create_range_stmt() { + if (node_case() != kCreateRangeStmt) { clear_node(); - set_has_with_clause(); - _impl_.node_.with_clause_ = CreateMaybeMessage< ::pg_query::WithClause >(GetArenaForAllocation()); + set_has_create_range_stmt(); + _impl_.node_.create_range_stmt_ = CreateMaybeMessage<::pg_query::CreateRangeStmt>(GetArena()); } - return _impl_.node_.with_clause_; + return _impl_.node_.create_range_stmt_; } -inline ::pg_query::WithClause* Node::mutable_with_clause() { - ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.with_clause) +inline ::pg_query::CreateRangeStmt* Node::mutable_create_range_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateRangeStmt* _msg = _internal_mutable_create_range_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_range_stmt) return _msg; } -// .pg_query.InferClause infer_clause = 212 [json_name = "InferClause"]; -inline bool Node::_internal_has_infer_clause() const { - return node_case() == kInferClause; +// .pg_query.AlterEnumStmt alter_enum_stmt = 207 [json_name = "AlterEnumStmt"]; +inline bool Node::has_alter_enum_stmt() const { + return node_case() == kAlterEnumStmt; } -inline bool Node::has_infer_clause() const { - return _internal_has_infer_clause(); +inline bool Node::_internal_has_alter_enum_stmt() const { + return node_case() == kAlterEnumStmt; } -inline void Node::set_has_infer_clause() { - _impl_._oneof_case_[0] = kInferClause; +inline void Node::set_has_alter_enum_stmt() { + _impl_._oneof_case_[0] = kAlterEnumStmt; } -inline void Node::clear_infer_clause() { - if (_internal_has_infer_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.infer_clause_; +inline void Node::clear_alter_enum_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterEnumStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_enum_stmt_; } clear_has_node(); } } -inline ::pg_query::InferClause* Node::release_infer_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.infer_clause) - if (_internal_has_infer_clause()) { +inline ::pg_query::AlterEnumStmt* Node::release_alter_enum_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_enum_stmt) + if (node_case() == kAlterEnumStmt) { clear_has_node(); - ::pg_query::InferClause* temp = _impl_.node_.infer_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_enum_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.infer_clause_ = nullptr; + _impl_.node_.alter_enum_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::InferClause& Node::_internal_infer_clause() const { - return _internal_has_infer_clause() - ? *_impl_.node_.infer_clause_ - : reinterpret_cast< ::pg_query::InferClause&>(::pg_query::_InferClause_default_instance_); +inline const ::pg_query::AlterEnumStmt& Node::_internal_alter_enum_stmt() const { + return node_case() == kAlterEnumStmt ? *_impl_.node_.alter_enum_stmt_ : reinterpret_cast<::pg_query::AlterEnumStmt&>(::pg_query::_AlterEnumStmt_default_instance_); } -inline const ::pg_query::InferClause& Node::infer_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.infer_clause) - return _internal_infer_clause(); +inline const ::pg_query::AlterEnumStmt& Node::alter_enum_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_enum_stmt) + return _internal_alter_enum_stmt(); } -inline ::pg_query::InferClause* Node::unsafe_arena_release_infer_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.infer_clause) - if (_internal_has_infer_clause()) { +inline ::pg_query::AlterEnumStmt* Node::unsafe_arena_release_alter_enum_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_enum_stmt) + if (node_case() == kAlterEnumStmt) { clear_has_node(); - ::pg_query::InferClause* temp = _impl_.node_.infer_clause_; - _impl_.node_.infer_clause_ = nullptr; + auto* temp = _impl_.node_.alter_enum_stmt_; + _impl_.node_.alter_enum_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_infer_clause(::pg_query::InferClause* infer_clause) { +inline void Node::unsafe_arena_set_allocated_alter_enum_stmt(::pg_query::AlterEnumStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (infer_clause) { - set_has_infer_clause(); - _impl_.node_.infer_clause_ = infer_clause; + if (value) { + set_has_alter_enum_stmt(); + _impl_.node_.alter_enum_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.infer_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_enum_stmt) } -inline ::pg_query::InferClause* Node::_internal_mutable_infer_clause() { - if (!_internal_has_infer_clause()) { +inline ::pg_query::AlterEnumStmt* Node::_internal_mutable_alter_enum_stmt() { + if (node_case() != kAlterEnumStmt) { clear_node(); - set_has_infer_clause(); - _impl_.node_.infer_clause_ = CreateMaybeMessage< ::pg_query::InferClause >(GetArenaForAllocation()); + set_has_alter_enum_stmt(); + _impl_.node_.alter_enum_stmt_ = CreateMaybeMessage<::pg_query::AlterEnumStmt>(GetArena()); } - return _impl_.node_.infer_clause_; + return _impl_.node_.alter_enum_stmt_; } -inline ::pg_query::InferClause* Node::mutable_infer_clause() { - ::pg_query::InferClause* _msg = _internal_mutable_infer_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.infer_clause) +inline ::pg_query::AlterEnumStmt* Node::mutable_alter_enum_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterEnumStmt* _msg = _internal_mutable_alter_enum_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_enum_stmt) return _msg; } -// .pg_query.OnConflictClause on_conflict_clause = 213 [json_name = "OnConflictClause"]; -inline bool Node::_internal_has_on_conflict_clause() const { - return node_case() == kOnConflictClause; +// .pg_query.ViewStmt view_stmt = 208 [json_name = "ViewStmt"]; +inline bool Node::has_view_stmt() const { + return node_case() == kViewStmt; } -inline bool Node::has_on_conflict_clause() const { - return _internal_has_on_conflict_clause(); +inline bool Node::_internal_has_view_stmt() const { + return node_case() == kViewStmt; } -inline void Node::set_has_on_conflict_clause() { - _impl_._oneof_case_[0] = kOnConflictClause; +inline void Node::set_has_view_stmt() { + _impl_._oneof_case_[0] = kViewStmt; } -inline void Node::clear_on_conflict_clause() { - if (_internal_has_on_conflict_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.on_conflict_clause_; +inline void Node::clear_view_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kViewStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.view_stmt_; } clear_has_node(); } } -inline ::pg_query::OnConflictClause* Node::release_on_conflict_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.on_conflict_clause) - if (_internal_has_on_conflict_clause()) { +inline ::pg_query::ViewStmt* Node::release_view_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.view_stmt) + if (node_case() == kViewStmt) { clear_has_node(); - ::pg_query::OnConflictClause* temp = _impl_.node_.on_conflict_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.view_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.on_conflict_clause_ = nullptr; + _impl_.node_.view_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::OnConflictClause& Node::_internal_on_conflict_clause() const { - return _internal_has_on_conflict_clause() - ? *_impl_.node_.on_conflict_clause_ - : reinterpret_cast< ::pg_query::OnConflictClause&>(::pg_query::_OnConflictClause_default_instance_); +inline const ::pg_query::ViewStmt& Node::_internal_view_stmt() const { + return node_case() == kViewStmt ? *_impl_.node_.view_stmt_ : reinterpret_cast<::pg_query::ViewStmt&>(::pg_query::_ViewStmt_default_instance_); } -inline const ::pg_query::OnConflictClause& Node::on_conflict_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.on_conflict_clause) - return _internal_on_conflict_clause(); +inline const ::pg_query::ViewStmt& Node::view_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.view_stmt) + return _internal_view_stmt(); } -inline ::pg_query::OnConflictClause* Node::unsafe_arena_release_on_conflict_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.on_conflict_clause) - if (_internal_has_on_conflict_clause()) { +inline ::pg_query::ViewStmt* Node::unsafe_arena_release_view_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.view_stmt) + if (node_case() == kViewStmt) { clear_has_node(); - ::pg_query::OnConflictClause* temp = _impl_.node_.on_conflict_clause_; - _impl_.node_.on_conflict_clause_ = nullptr; + auto* temp = _impl_.node_.view_stmt_; + _impl_.node_.view_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_on_conflict_clause(::pg_query::OnConflictClause* on_conflict_clause) { +inline void Node::unsafe_arena_set_allocated_view_stmt(::pg_query::ViewStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (on_conflict_clause) { - set_has_on_conflict_clause(); - _impl_.node_.on_conflict_clause_ = on_conflict_clause; + if (value) { + set_has_view_stmt(); + _impl_.node_.view_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.on_conflict_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.view_stmt) } -inline ::pg_query::OnConflictClause* Node::_internal_mutable_on_conflict_clause() { - if (!_internal_has_on_conflict_clause()) { +inline ::pg_query::ViewStmt* Node::_internal_mutable_view_stmt() { + if (node_case() != kViewStmt) { clear_node(); - set_has_on_conflict_clause(); - _impl_.node_.on_conflict_clause_ = CreateMaybeMessage< ::pg_query::OnConflictClause >(GetArenaForAllocation()); + set_has_view_stmt(); + _impl_.node_.view_stmt_ = CreateMaybeMessage<::pg_query::ViewStmt>(GetArena()); } - return _impl_.node_.on_conflict_clause_; + return _impl_.node_.view_stmt_; } -inline ::pg_query::OnConflictClause* Node::mutable_on_conflict_clause() { - ::pg_query::OnConflictClause* _msg = _internal_mutable_on_conflict_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.on_conflict_clause) +inline ::pg_query::ViewStmt* Node::mutable_view_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ViewStmt* _msg = _internal_mutable_view_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.view_stmt) return _msg; } -// .pg_query.CTESearchClause ctesearch_clause = 214 [json_name = "CTESearchClause"]; -inline bool Node::_internal_has_ctesearch_clause() const { - return node_case() == kCtesearchClause; +// .pg_query.LoadStmt load_stmt = 209 [json_name = "LoadStmt"]; +inline bool Node::has_load_stmt() const { + return node_case() == kLoadStmt; } -inline bool Node::has_ctesearch_clause() const { - return _internal_has_ctesearch_clause(); +inline bool Node::_internal_has_load_stmt() const { + return node_case() == kLoadStmt; } -inline void Node::set_has_ctesearch_clause() { - _impl_._oneof_case_[0] = kCtesearchClause; +inline void Node::set_has_load_stmt() { + _impl_._oneof_case_[0] = kLoadStmt; } -inline void Node::clear_ctesearch_clause() { - if (_internal_has_ctesearch_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.ctesearch_clause_; +inline void Node::clear_load_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kLoadStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.load_stmt_; } clear_has_node(); } } -inline ::pg_query::CTESearchClause* Node::release_ctesearch_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.ctesearch_clause) - if (_internal_has_ctesearch_clause()) { +inline ::pg_query::LoadStmt* Node::release_load_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.load_stmt) + if (node_case() == kLoadStmt) { clear_has_node(); - ::pg_query::CTESearchClause* temp = _impl_.node_.ctesearch_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.load_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.ctesearch_clause_ = nullptr; + _impl_.node_.load_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CTESearchClause& Node::_internal_ctesearch_clause() const { - return _internal_has_ctesearch_clause() - ? *_impl_.node_.ctesearch_clause_ - : reinterpret_cast< ::pg_query::CTESearchClause&>(::pg_query::_CTESearchClause_default_instance_); +inline const ::pg_query::LoadStmt& Node::_internal_load_stmt() const { + return node_case() == kLoadStmt ? *_impl_.node_.load_stmt_ : reinterpret_cast<::pg_query::LoadStmt&>(::pg_query::_LoadStmt_default_instance_); } -inline const ::pg_query::CTESearchClause& Node::ctesearch_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.ctesearch_clause) - return _internal_ctesearch_clause(); +inline const ::pg_query::LoadStmt& Node::load_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.load_stmt) + return _internal_load_stmt(); } -inline ::pg_query::CTESearchClause* Node::unsafe_arena_release_ctesearch_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.ctesearch_clause) - if (_internal_has_ctesearch_clause()) { +inline ::pg_query::LoadStmt* Node::unsafe_arena_release_load_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.load_stmt) + if (node_case() == kLoadStmt) { clear_has_node(); - ::pg_query::CTESearchClause* temp = _impl_.node_.ctesearch_clause_; - _impl_.node_.ctesearch_clause_ = nullptr; + auto* temp = _impl_.node_.load_stmt_; + _impl_.node_.load_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_ctesearch_clause(::pg_query::CTESearchClause* ctesearch_clause) { +inline void Node::unsafe_arena_set_allocated_load_stmt(::pg_query::LoadStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (ctesearch_clause) { - set_has_ctesearch_clause(); - _impl_.node_.ctesearch_clause_ = ctesearch_clause; + if (value) { + set_has_load_stmt(); + _impl_.node_.load_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.ctesearch_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.load_stmt) } -inline ::pg_query::CTESearchClause* Node::_internal_mutable_ctesearch_clause() { - if (!_internal_has_ctesearch_clause()) { +inline ::pg_query::LoadStmt* Node::_internal_mutable_load_stmt() { + if (node_case() != kLoadStmt) { clear_node(); - set_has_ctesearch_clause(); - _impl_.node_.ctesearch_clause_ = CreateMaybeMessage< ::pg_query::CTESearchClause >(GetArenaForAllocation()); + set_has_load_stmt(); + _impl_.node_.load_stmt_ = CreateMaybeMessage<::pg_query::LoadStmt>(GetArena()); } - return _impl_.node_.ctesearch_clause_; + return _impl_.node_.load_stmt_; } -inline ::pg_query::CTESearchClause* Node::mutable_ctesearch_clause() { - ::pg_query::CTESearchClause* _msg = _internal_mutable_ctesearch_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.ctesearch_clause) +inline ::pg_query::LoadStmt* Node::mutable_load_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::LoadStmt* _msg = _internal_mutable_load_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.load_stmt) return _msg; } -// .pg_query.CTECycleClause ctecycle_clause = 215 [json_name = "CTECycleClause"]; -inline bool Node::_internal_has_ctecycle_clause() const { - return node_case() == kCtecycleClause; +// .pg_query.CreatedbStmt createdb_stmt = 210 [json_name = "CreatedbStmt"]; +inline bool Node::has_createdb_stmt() const { + return node_case() == kCreatedbStmt; } -inline bool Node::has_ctecycle_clause() const { - return _internal_has_ctecycle_clause(); +inline bool Node::_internal_has_createdb_stmt() const { + return node_case() == kCreatedbStmt; } -inline void Node::set_has_ctecycle_clause() { - _impl_._oneof_case_[0] = kCtecycleClause; +inline void Node::set_has_createdb_stmt() { + _impl_._oneof_case_[0] = kCreatedbStmt; } -inline void Node::clear_ctecycle_clause() { - if (_internal_has_ctecycle_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.ctecycle_clause_; +inline void Node::clear_createdb_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreatedbStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.createdb_stmt_; } clear_has_node(); } } -inline ::pg_query::CTECycleClause* Node::release_ctecycle_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.ctecycle_clause) - if (_internal_has_ctecycle_clause()) { +inline ::pg_query::CreatedbStmt* Node::release_createdb_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.createdb_stmt) + if (node_case() == kCreatedbStmt) { clear_has_node(); - ::pg_query::CTECycleClause* temp = _impl_.node_.ctecycle_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.createdb_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.ctecycle_clause_ = nullptr; + _impl_.node_.createdb_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CTECycleClause& Node::_internal_ctecycle_clause() const { - return _internal_has_ctecycle_clause() - ? *_impl_.node_.ctecycle_clause_ - : reinterpret_cast< ::pg_query::CTECycleClause&>(::pg_query::_CTECycleClause_default_instance_); +inline const ::pg_query::CreatedbStmt& Node::_internal_createdb_stmt() const { + return node_case() == kCreatedbStmt ? *_impl_.node_.createdb_stmt_ : reinterpret_cast<::pg_query::CreatedbStmt&>(::pg_query::_CreatedbStmt_default_instance_); } -inline const ::pg_query::CTECycleClause& Node::ctecycle_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.ctecycle_clause) - return _internal_ctecycle_clause(); +inline const ::pg_query::CreatedbStmt& Node::createdb_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.createdb_stmt) + return _internal_createdb_stmt(); } -inline ::pg_query::CTECycleClause* Node::unsafe_arena_release_ctecycle_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.ctecycle_clause) - if (_internal_has_ctecycle_clause()) { +inline ::pg_query::CreatedbStmt* Node::unsafe_arena_release_createdb_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.createdb_stmt) + if (node_case() == kCreatedbStmt) { clear_has_node(); - ::pg_query::CTECycleClause* temp = _impl_.node_.ctecycle_clause_; - _impl_.node_.ctecycle_clause_ = nullptr; + auto* temp = _impl_.node_.createdb_stmt_; + _impl_.node_.createdb_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_ctecycle_clause(::pg_query::CTECycleClause* ctecycle_clause) { +inline void Node::unsafe_arena_set_allocated_createdb_stmt(::pg_query::CreatedbStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (ctecycle_clause) { - set_has_ctecycle_clause(); - _impl_.node_.ctecycle_clause_ = ctecycle_clause; + if (value) { + set_has_createdb_stmt(); + _impl_.node_.createdb_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.ctecycle_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.createdb_stmt) } -inline ::pg_query::CTECycleClause* Node::_internal_mutable_ctecycle_clause() { - if (!_internal_has_ctecycle_clause()) { +inline ::pg_query::CreatedbStmt* Node::_internal_mutable_createdb_stmt() { + if (node_case() != kCreatedbStmt) { clear_node(); - set_has_ctecycle_clause(); - _impl_.node_.ctecycle_clause_ = CreateMaybeMessage< ::pg_query::CTECycleClause >(GetArenaForAllocation()); + set_has_createdb_stmt(); + _impl_.node_.createdb_stmt_ = CreateMaybeMessage<::pg_query::CreatedbStmt>(GetArena()); } - return _impl_.node_.ctecycle_clause_; + return _impl_.node_.createdb_stmt_; } -inline ::pg_query::CTECycleClause* Node::mutable_ctecycle_clause() { - ::pg_query::CTECycleClause* _msg = _internal_mutable_ctecycle_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.ctecycle_clause) +inline ::pg_query::CreatedbStmt* Node::mutable_createdb_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreatedbStmt* _msg = _internal_mutable_createdb_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.createdb_stmt) return _msg; } -// .pg_query.CommonTableExpr common_table_expr = 216 [json_name = "CommonTableExpr"]; -inline bool Node::_internal_has_common_table_expr() const { - return node_case() == kCommonTableExpr; +// .pg_query.AlterDatabaseStmt alter_database_stmt = 211 [json_name = "AlterDatabaseStmt"]; +inline bool Node::has_alter_database_stmt() const { + return node_case() == kAlterDatabaseStmt; } -inline bool Node::has_common_table_expr() const { - return _internal_has_common_table_expr(); +inline bool Node::_internal_has_alter_database_stmt() const { + return node_case() == kAlterDatabaseStmt; } -inline void Node::set_has_common_table_expr() { - _impl_._oneof_case_[0] = kCommonTableExpr; +inline void Node::set_has_alter_database_stmt() { + _impl_._oneof_case_[0] = kAlterDatabaseStmt; } -inline void Node::clear_common_table_expr() { - if (_internal_has_common_table_expr()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.common_table_expr_; +inline void Node::clear_alter_database_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterDatabaseStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_database_stmt_; } clear_has_node(); } } -inline ::pg_query::CommonTableExpr* Node::release_common_table_expr() { - // @@protoc_insertion_point(field_release:pg_query.Node.common_table_expr) - if (_internal_has_common_table_expr()) { +inline ::pg_query::AlterDatabaseStmt* Node::release_alter_database_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_database_stmt) + if (node_case() == kAlterDatabaseStmt) { clear_has_node(); - ::pg_query::CommonTableExpr* temp = _impl_.node_.common_table_expr_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_database_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.common_table_expr_ = nullptr; + _impl_.node_.alter_database_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CommonTableExpr& Node::_internal_common_table_expr() const { - return _internal_has_common_table_expr() - ? *_impl_.node_.common_table_expr_ - : reinterpret_cast< ::pg_query::CommonTableExpr&>(::pg_query::_CommonTableExpr_default_instance_); +inline const ::pg_query::AlterDatabaseStmt& Node::_internal_alter_database_stmt() const { + return node_case() == kAlterDatabaseStmt ? *_impl_.node_.alter_database_stmt_ : reinterpret_cast<::pg_query::AlterDatabaseStmt&>(::pg_query::_AlterDatabaseStmt_default_instance_); } -inline const ::pg_query::CommonTableExpr& Node::common_table_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Node.common_table_expr) - return _internal_common_table_expr(); +inline const ::pg_query::AlterDatabaseStmt& Node::alter_database_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_database_stmt) + return _internal_alter_database_stmt(); } -inline ::pg_query::CommonTableExpr* Node::unsafe_arena_release_common_table_expr() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.common_table_expr) - if (_internal_has_common_table_expr()) { +inline ::pg_query::AlterDatabaseStmt* Node::unsafe_arena_release_alter_database_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_database_stmt) + if (node_case() == kAlterDatabaseStmt) { clear_has_node(); - ::pg_query::CommonTableExpr* temp = _impl_.node_.common_table_expr_; - _impl_.node_.common_table_expr_ = nullptr; + auto* temp = _impl_.node_.alter_database_stmt_; + _impl_.node_.alter_database_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_common_table_expr(::pg_query::CommonTableExpr* common_table_expr) { +inline void Node::unsafe_arena_set_allocated_alter_database_stmt(::pg_query::AlterDatabaseStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (common_table_expr) { - set_has_common_table_expr(); - _impl_.node_.common_table_expr_ = common_table_expr; + if (value) { + set_has_alter_database_stmt(); + _impl_.node_.alter_database_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.common_table_expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_database_stmt) } -inline ::pg_query::CommonTableExpr* Node::_internal_mutable_common_table_expr() { - if (!_internal_has_common_table_expr()) { +inline ::pg_query::AlterDatabaseStmt* Node::_internal_mutable_alter_database_stmt() { + if (node_case() != kAlterDatabaseStmt) { clear_node(); - set_has_common_table_expr(); - _impl_.node_.common_table_expr_ = CreateMaybeMessage< ::pg_query::CommonTableExpr >(GetArenaForAllocation()); + set_has_alter_database_stmt(); + _impl_.node_.alter_database_stmt_ = CreateMaybeMessage<::pg_query::AlterDatabaseStmt>(GetArena()); } - return _impl_.node_.common_table_expr_; + return _impl_.node_.alter_database_stmt_; } -inline ::pg_query::CommonTableExpr* Node::mutable_common_table_expr() { - ::pg_query::CommonTableExpr* _msg = _internal_mutable_common_table_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.common_table_expr) +inline ::pg_query::AlterDatabaseStmt* Node::mutable_alter_database_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterDatabaseStmt* _msg = _internal_mutable_alter_database_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_database_stmt) return _msg; } -// .pg_query.MergeWhenClause merge_when_clause = 217 [json_name = "MergeWhenClause"]; -inline bool Node::_internal_has_merge_when_clause() const { - return node_case() == kMergeWhenClause; +// .pg_query.AlterDatabaseRefreshCollStmt alter_database_refresh_coll_stmt = 212 [json_name = "AlterDatabaseRefreshCollStmt"]; +inline bool Node::has_alter_database_refresh_coll_stmt() const { + return node_case() == kAlterDatabaseRefreshCollStmt; } -inline bool Node::has_merge_when_clause() const { - return _internal_has_merge_when_clause(); +inline bool Node::_internal_has_alter_database_refresh_coll_stmt() const { + return node_case() == kAlterDatabaseRefreshCollStmt; } -inline void Node::set_has_merge_when_clause() { - _impl_._oneof_case_[0] = kMergeWhenClause; +inline void Node::set_has_alter_database_refresh_coll_stmt() { + _impl_._oneof_case_[0] = kAlterDatabaseRefreshCollStmt; } -inline void Node::clear_merge_when_clause() { - if (_internal_has_merge_when_clause()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.merge_when_clause_; +inline void Node::clear_alter_database_refresh_coll_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterDatabaseRefreshCollStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_database_refresh_coll_stmt_; } clear_has_node(); } } -inline ::pg_query::MergeWhenClause* Node::release_merge_when_clause() { - // @@protoc_insertion_point(field_release:pg_query.Node.merge_when_clause) - if (_internal_has_merge_when_clause()) { +inline ::pg_query::AlterDatabaseRefreshCollStmt* Node::release_alter_database_refresh_coll_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_database_refresh_coll_stmt) + if (node_case() == kAlterDatabaseRefreshCollStmt) { clear_has_node(); - ::pg_query::MergeWhenClause* temp = _impl_.node_.merge_when_clause_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_database_refresh_coll_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.merge_when_clause_ = nullptr; + _impl_.node_.alter_database_refresh_coll_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::MergeWhenClause& Node::_internal_merge_when_clause() const { - return _internal_has_merge_when_clause() - ? *_impl_.node_.merge_when_clause_ - : reinterpret_cast< ::pg_query::MergeWhenClause&>(::pg_query::_MergeWhenClause_default_instance_); +inline const ::pg_query::AlterDatabaseRefreshCollStmt& Node::_internal_alter_database_refresh_coll_stmt() const { + return node_case() == kAlterDatabaseRefreshCollStmt ? *_impl_.node_.alter_database_refresh_coll_stmt_ : reinterpret_cast<::pg_query::AlterDatabaseRefreshCollStmt&>(::pg_query::_AlterDatabaseRefreshCollStmt_default_instance_); } -inline const ::pg_query::MergeWhenClause& Node::merge_when_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Node.merge_when_clause) - return _internal_merge_when_clause(); +inline const ::pg_query::AlterDatabaseRefreshCollStmt& Node::alter_database_refresh_coll_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_database_refresh_coll_stmt) + return _internal_alter_database_refresh_coll_stmt(); } -inline ::pg_query::MergeWhenClause* Node::unsafe_arena_release_merge_when_clause() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.merge_when_clause) - if (_internal_has_merge_when_clause()) { +inline ::pg_query::AlterDatabaseRefreshCollStmt* Node::unsafe_arena_release_alter_database_refresh_coll_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_database_refresh_coll_stmt) + if (node_case() == kAlterDatabaseRefreshCollStmt) { clear_has_node(); - ::pg_query::MergeWhenClause* temp = _impl_.node_.merge_when_clause_; - _impl_.node_.merge_when_clause_ = nullptr; + auto* temp = _impl_.node_.alter_database_refresh_coll_stmt_; + _impl_.node_.alter_database_refresh_coll_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_merge_when_clause(::pg_query::MergeWhenClause* merge_when_clause) { +inline void Node::unsafe_arena_set_allocated_alter_database_refresh_coll_stmt(::pg_query::AlterDatabaseRefreshCollStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (merge_when_clause) { - set_has_merge_when_clause(); - _impl_.node_.merge_when_clause_ = merge_when_clause; + if (value) { + set_has_alter_database_refresh_coll_stmt(); + _impl_.node_.alter_database_refresh_coll_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.merge_when_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_database_refresh_coll_stmt) } -inline ::pg_query::MergeWhenClause* Node::_internal_mutable_merge_when_clause() { - if (!_internal_has_merge_when_clause()) { +inline ::pg_query::AlterDatabaseRefreshCollStmt* Node::_internal_mutable_alter_database_refresh_coll_stmt() { + if (node_case() != kAlterDatabaseRefreshCollStmt) { clear_node(); - set_has_merge_when_clause(); - _impl_.node_.merge_when_clause_ = CreateMaybeMessage< ::pg_query::MergeWhenClause >(GetArenaForAllocation()); + set_has_alter_database_refresh_coll_stmt(); + _impl_.node_.alter_database_refresh_coll_stmt_ = CreateMaybeMessage<::pg_query::AlterDatabaseRefreshCollStmt>(GetArena()); } - return _impl_.node_.merge_when_clause_; + return _impl_.node_.alter_database_refresh_coll_stmt_; } -inline ::pg_query::MergeWhenClause* Node::mutable_merge_when_clause() { - ::pg_query::MergeWhenClause* _msg = _internal_mutable_merge_when_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.merge_when_clause) +inline ::pg_query::AlterDatabaseRefreshCollStmt* Node::mutable_alter_database_refresh_coll_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterDatabaseRefreshCollStmt* _msg = _internal_mutable_alter_database_refresh_coll_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_database_refresh_coll_stmt) return _msg; } -// .pg_query.RoleSpec role_spec = 218 [json_name = "RoleSpec"]; -inline bool Node::_internal_has_role_spec() const { - return node_case() == kRoleSpec; +// .pg_query.AlterDatabaseSetStmt alter_database_set_stmt = 213 [json_name = "AlterDatabaseSetStmt"]; +inline bool Node::has_alter_database_set_stmt() const { + return node_case() == kAlterDatabaseSetStmt; } -inline bool Node::has_role_spec() const { - return _internal_has_role_spec(); +inline bool Node::_internal_has_alter_database_set_stmt() const { + return node_case() == kAlterDatabaseSetStmt; } -inline void Node::set_has_role_spec() { - _impl_._oneof_case_[0] = kRoleSpec; +inline void Node::set_has_alter_database_set_stmt() { + _impl_._oneof_case_[0] = kAlterDatabaseSetStmt; } -inline void Node::clear_role_spec() { - if (_internal_has_role_spec()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.role_spec_; +inline void Node::clear_alter_database_set_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterDatabaseSetStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_database_set_stmt_; } clear_has_node(); } } -inline ::pg_query::RoleSpec* Node::release_role_spec() { - // @@protoc_insertion_point(field_release:pg_query.Node.role_spec) - if (_internal_has_role_spec()) { +inline ::pg_query::AlterDatabaseSetStmt* Node::release_alter_database_set_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_database_set_stmt) + if (node_case() == kAlterDatabaseSetStmt) { clear_has_node(); - ::pg_query::RoleSpec* temp = _impl_.node_.role_spec_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_database_set_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.role_spec_ = nullptr; + _impl_.node_.alter_database_set_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::RoleSpec& Node::_internal_role_spec() const { - return _internal_has_role_spec() - ? *_impl_.node_.role_spec_ - : reinterpret_cast< ::pg_query::RoleSpec&>(::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::AlterDatabaseSetStmt& Node::_internal_alter_database_set_stmt() const { + return node_case() == kAlterDatabaseSetStmt ? *_impl_.node_.alter_database_set_stmt_ : reinterpret_cast<::pg_query::AlterDatabaseSetStmt&>(::pg_query::_AlterDatabaseSetStmt_default_instance_); } -inline const ::pg_query::RoleSpec& Node::role_spec() const { - // @@protoc_insertion_point(field_get:pg_query.Node.role_spec) - return _internal_role_spec(); +inline const ::pg_query::AlterDatabaseSetStmt& Node::alter_database_set_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_database_set_stmt) + return _internal_alter_database_set_stmt(); } -inline ::pg_query::RoleSpec* Node::unsafe_arena_release_role_spec() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.role_spec) - if (_internal_has_role_spec()) { +inline ::pg_query::AlterDatabaseSetStmt* Node::unsafe_arena_release_alter_database_set_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_database_set_stmt) + if (node_case() == kAlterDatabaseSetStmt) { clear_has_node(); - ::pg_query::RoleSpec* temp = _impl_.node_.role_spec_; - _impl_.node_.role_spec_ = nullptr; + auto* temp = _impl_.node_.alter_database_set_stmt_; + _impl_.node_.alter_database_set_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_role_spec(::pg_query::RoleSpec* role_spec) { +inline void Node::unsafe_arena_set_allocated_alter_database_set_stmt(::pg_query::AlterDatabaseSetStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (role_spec) { - set_has_role_spec(); - _impl_.node_.role_spec_ = role_spec; + if (value) { + set_has_alter_database_set_stmt(); + _impl_.node_.alter_database_set_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.role_spec) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_database_set_stmt) } -inline ::pg_query::RoleSpec* Node::_internal_mutable_role_spec() { - if (!_internal_has_role_spec()) { +inline ::pg_query::AlterDatabaseSetStmt* Node::_internal_mutable_alter_database_set_stmt() { + if (node_case() != kAlterDatabaseSetStmt) { clear_node(); - set_has_role_spec(); - _impl_.node_.role_spec_ = CreateMaybeMessage< ::pg_query::RoleSpec >(GetArenaForAllocation()); + set_has_alter_database_set_stmt(); + _impl_.node_.alter_database_set_stmt_ = CreateMaybeMessage<::pg_query::AlterDatabaseSetStmt>(GetArena()); } - return _impl_.node_.role_spec_; + return _impl_.node_.alter_database_set_stmt_; } -inline ::pg_query::RoleSpec* Node::mutable_role_spec() { - ::pg_query::RoleSpec* _msg = _internal_mutable_role_spec(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.role_spec) +inline ::pg_query::AlterDatabaseSetStmt* Node::mutable_alter_database_set_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterDatabaseSetStmt* _msg = _internal_mutable_alter_database_set_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_database_set_stmt) return _msg; } -// .pg_query.TriggerTransition trigger_transition = 219 [json_name = "TriggerTransition"]; -inline bool Node::_internal_has_trigger_transition() const { - return node_case() == kTriggerTransition; +// .pg_query.DropdbStmt dropdb_stmt = 214 [json_name = "DropdbStmt"]; +inline bool Node::has_dropdb_stmt() const { + return node_case() == kDropdbStmt; } -inline bool Node::has_trigger_transition() const { - return _internal_has_trigger_transition(); +inline bool Node::_internal_has_dropdb_stmt() const { + return node_case() == kDropdbStmt; } -inline void Node::set_has_trigger_transition() { - _impl_._oneof_case_[0] = kTriggerTransition; +inline void Node::set_has_dropdb_stmt() { + _impl_._oneof_case_[0] = kDropdbStmt; } -inline void Node::clear_trigger_transition() { - if (_internal_has_trigger_transition()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.trigger_transition_; +inline void Node::clear_dropdb_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDropdbStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.dropdb_stmt_; } clear_has_node(); } } -inline ::pg_query::TriggerTransition* Node::release_trigger_transition() { - // @@protoc_insertion_point(field_release:pg_query.Node.trigger_transition) - if (_internal_has_trigger_transition()) { +inline ::pg_query::DropdbStmt* Node::release_dropdb_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.dropdb_stmt) + if (node_case() == kDropdbStmt) { clear_has_node(); - ::pg_query::TriggerTransition* temp = _impl_.node_.trigger_transition_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.dropdb_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.trigger_transition_ = nullptr; + _impl_.node_.dropdb_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::TriggerTransition& Node::_internal_trigger_transition() const { - return _internal_has_trigger_transition() - ? *_impl_.node_.trigger_transition_ - : reinterpret_cast< ::pg_query::TriggerTransition&>(::pg_query::_TriggerTransition_default_instance_); +inline const ::pg_query::DropdbStmt& Node::_internal_dropdb_stmt() const { + return node_case() == kDropdbStmt ? *_impl_.node_.dropdb_stmt_ : reinterpret_cast<::pg_query::DropdbStmt&>(::pg_query::_DropdbStmt_default_instance_); } -inline const ::pg_query::TriggerTransition& Node::trigger_transition() const { - // @@protoc_insertion_point(field_get:pg_query.Node.trigger_transition) - return _internal_trigger_transition(); +inline const ::pg_query::DropdbStmt& Node::dropdb_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.dropdb_stmt) + return _internal_dropdb_stmt(); } -inline ::pg_query::TriggerTransition* Node::unsafe_arena_release_trigger_transition() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.trigger_transition) - if (_internal_has_trigger_transition()) { +inline ::pg_query::DropdbStmt* Node::unsafe_arena_release_dropdb_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.dropdb_stmt) + if (node_case() == kDropdbStmt) { clear_has_node(); - ::pg_query::TriggerTransition* temp = _impl_.node_.trigger_transition_; - _impl_.node_.trigger_transition_ = nullptr; + auto* temp = _impl_.node_.dropdb_stmt_; + _impl_.node_.dropdb_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_trigger_transition(::pg_query::TriggerTransition* trigger_transition) { +inline void Node::unsafe_arena_set_allocated_dropdb_stmt(::pg_query::DropdbStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (trigger_transition) { - set_has_trigger_transition(); - _impl_.node_.trigger_transition_ = trigger_transition; + if (value) { + set_has_dropdb_stmt(); + _impl_.node_.dropdb_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.trigger_transition) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.dropdb_stmt) } -inline ::pg_query::TriggerTransition* Node::_internal_mutable_trigger_transition() { - if (!_internal_has_trigger_transition()) { +inline ::pg_query::DropdbStmt* Node::_internal_mutable_dropdb_stmt() { + if (node_case() != kDropdbStmt) { clear_node(); - set_has_trigger_transition(); - _impl_.node_.trigger_transition_ = CreateMaybeMessage< ::pg_query::TriggerTransition >(GetArenaForAllocation()); + set_has_dropdb_stmt(); + _impl_.node_.dropdb_stmt_ = CreateMaybeMessage<::pg_query::DropdbStmt>(GetArena()); } - return _impl_.node_.trigger_transition_; + return _impl_.node_.dropdb_stmt_; } -inline ::pg_query::TriggerTransition* Node::mutable_trigger_transition() { - ::pg_query::TriggerTransition* _msg = _internal_mutable_trigger_transition(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.trigger_transition) +inline ::pg_query::DropdbStmt* Node::mutable_dropdb_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DropdbStmt* _msg = _internal_mutable_dropdb_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.dropdb_stmt) return _msg; } -// .pg_query.PartitionElem partition_elem = 220 [json_name = "PartitionElem"]; -inline bool Node::_internal_has_partition_elem() const { - return node_case() == kPartitionElem; +// .pg_query.AlterSystemStmt alter_system_stmt = 215 [json_name = "AlterSystemStmt"]; +inline bool Node::has_alter_system_stmt() const { + return node_case() == kAlterSystemStmt; } -inline bool Node::has_partition_elem() const { - return _internal_has_partition_elem(); +inline bool Node::_internal_has_alter_system_stmt() const { + return node_case() == kAlterSystemStmt; } -inline void Node::set_has_partition_elem() { - _impl_._oneof_case_[0] = kPartitionElem; +inline void Node::set_has_alter_system_stmt() { + _impl_._oneof_case_[0] = kAlterSystemStmt; } -inline void Node::clear_partition_elem() { - if (_internal_has_partition_elem()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.partition_elem_; +inline void Node::clear_alter_system_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterSystemStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_system_stmt_; } clear_has_node(); } } -inline ::pg_query::PartitionElem* Node::release_partition_elem() { - // @@protoc_insertion_point(field_release:pg_query.Node.partition_elem) - if (_internal_has_partition_elem()) { +inline ::pg_query::AlterSystemStmt* Node::release_alter_system_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_system_stmt) + if (node_case() == kAlterSystemStmt) { clear_has_node(); - ::pg_query::PartitionElem* temp = _impl_.node_.partition_elem_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.alter_system_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.partition_elem_ = nullptr; + _impl_.node_.alter_system_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::PartitionElem& Node::_internal_partition_elem() const { - return _internal_has_partition_elem() - ? *_impl_.node_.partition_elem_ - : reinterpret_cast< ::pg_query::PartitionElem&>(::pg_query::_PartitionElem_default_instance_); +inline const ::pg_query::AlterSystemStmt& Node::_internal_alter_system_stmt() const { + return node_case() == kAlterSystemStmt ? *_impl_.node_.alter_system_stmt_ : reinterpret_cast<::pg_query::AlterSystemStmt&>(::pg_query::_AlterSystemStmt_default_instance_); } -inline const ::pg_query::PartitionElem& Node::partition_elem() const { - // @@protoc_insertion_point(field_get:pg_query.Node.partition_elem) - return _internal_partition_elem(); +inline const ::pg_query::AlterSystemStmt& Node::alter_system_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_system_stmt) + return _internal_alter_system_stmt(); } -inline ::pg_query::PartitionElem* Node::unsafe_arena_release_partition_elem() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_elem) - if (_internal_has_partition_elem()) { +inline ::pg_query::AlterSystemStmt* Node::unsafe_arena_release_alter_system_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_system_stmt) + if (node_case() == kAlterSystemStmt) { clear_has_node(); - ::pg_query::PartitionElem* temp = _impl_.node_.partition_elem_; - _impl_.node_.partition_elem_ = nullptr; + auto* temp = _impl_.node_.alter_system_stmt_; + _impl_.node_.alter_system_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_partition_elem(::pg_query::PartitionElem* partition_elem) { +inline void Node::unsafe_arena_set_allocated_alter_system_stmt(::pg_query::AlterSystemStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (partition_elem) { - set_has_partition_elem(); - _impl_.node_.partition_elem_ = partition_elem; + if (value) { + set_has_alter_system_stmt(); + _impl_.node_.alter_system_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_elem) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_system_stmt) } -inline ::pg_query::PartitionElem* Node::_internal_mutable_partition_elem() { - if (!_internal_has_partition_elem()) { +inline ::pg_query::AlterSystemStmt* Node::_internal_mutable_alter_system_stmt() { + if (node_case() != kAlterSystemStmt) { clear_node(); - set_has_partition_elem(); - _impl_.node_.partition_elem_ = CreateMaybeMessage< ::pg_query::PartitionElem >(GetArenaForAllocation()); + set_has_alter_system_stmt(); + _impl_.node_.alter_system_stmt_ = CreateMaybeMessage<::pg_query::AlterSystemStmt>(GetArena()); } - return _impl_.node_.partition_elem_; + return _impl_.node_.alter_system_stmt_; } -inline ::pg_query::PartitionElem* Node::mutable_partition_elem() { - ::pg_query::PartitionElem* _msg = _internal_mutable_partition_elem(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_elem) +inline ::pg_query::AlterSystemStmt* Node::mutable_alter_system_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterSystemStmt* _msg = _internal_mutable_alter_system_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_system_stmt) return _msg; } -// .pg_query.PartitionSpec partition_spec = 221 [json_name = "PartitionSpec"]; -inline bool Node::_internal_has_partition_spec() const { - return node_case() == kPartitionSpec; +// .pg_query.ClusterStmt cluster_stmt = 216 [json_name = "ClusterStmt"]; +inline bool Node::has_cluster_stmt() const { + return node_case() == kClusterStmt; } -inline bool Node::has_partition_spec() const { - return _internal_has_partition_spec(); +inline bool Node::_internal_has_cluster_stmt() const { + return node_case() == kClusterStmt; } -inline void Node::set_has_partition_spec() { - _impl_._oneof_case_[0] = kPartitionSpec; +inline void Node::set_has_cluster_stmt() { + _impl_._oneof_case_[0] = kClusterStmt; } -inline void Node::clear_partition_spec() { - if (_internal_has_partition_spec()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.partition_spec_; +inline void Node::clear_cluster_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kClusterStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.cluster_stmt_; } clear_has_node(); } } -inline ::pg_query::PartitionSpec* Node::release_partition_spec() { - // @@protoc_insertion_point(field_release:pg_query.Node.partition_spec) - if (_internal_has_partition_spec()) { +inline ::pg_query::ClusterStmt* Node::release_cluster_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.cluster_stmt) + if (node_case() == kClusterStmt) { clear_has_node(); - ::pg_query::PartitionSpec* temp = _impl_.node_.partition_spec_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.cluster_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.partition_spec_ = nullptr; + _impl_.node_.cluster_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::PartitionSpec& Node::_internal_partition_spec() const { - return _internal_has_partition_spec() - ? *_impl_.node_.partition_spec_ - : reinterpret_cast< ::pg_query::PartitionSpec&>(::pg_query::_PartitionSpec_default_instance_); +inline const ::pg_query::ClusterStmt& Node::_internal_cluster_stmt() const { + return node_case() == kClusterStmt ? *_impl_.node_.cluster_stmt_ : reinterpret_cast<::pg_query::ClusterStmt&>(::pg_query::_ClusterStmt_default_instance_); } -inline const ::pg_query::PartitionSpec& Node::partition_spec() const { - // @@protoc_insertion_point(field_get:pg_query.Node.partition_spec) - return _internal_partition_spec(); +inline const ::pg_query::ClusterStmt& Node::cluster_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.cluster_stmt) + return _internal_cluster_stmt(); } -inline ::pg_query::PartitionSpec* Node::unsafe_arena_release_partition_spec() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_spec) - if (_internal_has_partition_spec()) { +inline ::pg_query::ClusterStmt* Node::unsafe_arena_release_cluster_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.cluster_stmt) + if (node_case() == kClusterStmt) { clear_has_node(); - ::pg_query::PartitionSpec* temp = _impl_.node_.partition_spec_; - _impl_.node_.partition_spec_ = nullptr; + auto* temp = _impl_.node_.cluster_stmt_; + _impl_.node_.cluster_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_partition_spec(::pg_query::PartitionSpec* partition_spec) { +inline void Node::unsafe_arena_set_allocated_cluster_stmt(::pg_query::ClusterStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (partition_spec) { - set_has_partition_spec(); - _impl_.node_.partition_spec_ = partition_spec; + if (value) { + set_has_cluster_stmt(); + _impl_.node_.cluster_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_spec) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.cluster_stmt) } -inline ::pg_query::PartitionSpec* Node::_internal_mutable_partition_spec() { - if (!_internal_has_partition_spec()) { +inline ::pg_query::ClusterStmt* Node::_internal_mutable_cluster_stmt() { + if (node_case() != kClusterStmt) { clear_node(); - set_has_partition_spec(); - _impl_.node_.partition_spec_ = CreateMaybeMessage< ::pg_query::PartitionSpec >(GetArenaForAllocation()); + set_has_cluster_stmt(); + _impl_.node_.cluster_stmt_ = CreateMaybeMessage<::pg_query::ClusterStmt>(GetArena()); } - return _impl_.node_.partition_spec_; + return _impl_.node_.cluster_stmt_; } -inline ::pg_query::PartitionSpec* Node::mutable_partition_spec() { - ::pg_query::PartitionSpec* _msg = _internal_mutable_partition_spec(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_spec) +inline ::pg_query::ClusterStmt* Node::mutable_cluster_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ClusterStmt* _msg = _internal_mutable_cluster_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.cluster_stmt) return _msg; } -// .pg_query.PartitionBoundSpec partition_bound_spec = 222 [json_name = "PartitionBoundSpec"]; -inline bool Node::_internal_has_partition_bound_spec() const { - return node_case() == kPartitionBoundSpec; +// .pg_query.VacuumStmt vacuum_stmt = 217 [json_name = "VacuumStmt"]; +inline bool Node::has_vacuum_stmt() const { + return node_case() == kVacuumStmt; } -inline bool Node::has_partition_bound_spec() const { - return _internal_has_partition_bound_spec(); +inline bool Node::_internal_has_vacuum_stmt() const { + return node_case() == kVacuumStmt; } -inline void Node::set_has_partition_bound_spec() { - _impl_._oneof_case_[0] = kPartitionBoundSpec; +inline void Node::set_has_vacuum_stmt() { + _impl_._oneof_case_[0] = kVacuumStmt; } -inline void Node::clear_partition_bound_spec() { - if (_internal_has_partition_bound_spec()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.partition_bound_spec_; +inline void Node::clear_vacuum_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kVacuumStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.vacuum_stmt_; } clear_has_node(); } } -inline ::pg_query::PartitionBoundSpec* Node::release_partition_bound_spec() { - // @@protoc_insertion_point(field_release:pg_query.Node.partition_bound_spec) - if (_internal_has_partition_bound_spec()) { +inline ::pg_query::VacuumStmt* Node::release_vacuum_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.vacuum_stmt) + if (node_case() == kVacuumStmt) { clear_has_node(); - ::pg_query::PartitionBoundSpec* temp = _impl_.node_.partition_bound_spec_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.vacuum_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.partition_bound_spec_ = nullptr; + _impl_.node_.vacuum_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::PartitionBoundSpec& Node::_internal_partition_bound_spec() const { - return _internal_has_partition_bound_spec() - ? *_impl_.node_.partition_bound_spec_ - : reinterpret_cast< ::pg_query::PartitionBoundSpec&>(::pg_query::_PartitionBoundSpec_default_instance_); +inline const ::pg_query::VacuumStmt& Node::_internal_vacuum_stmt() const { + return node_case() == kVacuumStmt ? *_impl_.node_.vacuum_stmt_ : reinterpret_cast<::pg_query::VacuumStmt&>(::pg_query::_VacuumStmt_default_instance_); } -inline const ::pg_query::PartitionBoundSpec& Node::partition_bound_spec() const { - // @@protoc_insertion_point(field_get:pg_query.Node.partition_bound_spec) - return _internal_partition_bound_spec(); +inline const ::pg_query::VacuumStmt& Node::vacuum_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.vacuum_stmt) + return _internal_vacuum_stmt(); } -inline ::pg_query::PartitionBoundSpec* Node::unsafe_arena_release_partition_bound_spec() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_bound_spec) - if (_internal_has_partition_bound_spec()) { +inline ::pg_query::VacuumStmt* Node::unsafe_arena_release_vacuum_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.vacuum_stmt) + if (node_case() == kVacuumStmt) { clear_has_node(); - ::pg_query::PartitionBoundSpec* temp = _impl_.node_.partition_bound_spec_; - _impl_.node_.partition_bound_spec_ = nullptr; + auto* temp = _impl_.node_.vacuum_stmt_; + _impl_.node_.vacuum_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_partition_bound_spec(::pg_query::PartitionBoundSpec* partition_bound_spec) { +inline void Node::unsafe_arena_set_allocated_vacuum_stmt(::pg_query::VacuumStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (partition_bound_spec) { - set_has_partition_bound_spec(); - _impl_.node_.partition_bound_spec_ = partition_bound_spec; + if (value) { + set_has_vacuum_stmt(); + _impl_.node_.vacuum_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_bound_spec) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.vacuum_stmt) } -inline ::pg_query::PartitionBoundSpec* Node::_internal_mutable_partition_bound_spec() { - if (!_internal_has_partition_bound_spec()) { +inline ::pg_query::VacuumStmt* Node::_internal_mutable_vacuum_stmt() { + if (node_case() != kVacuumStmt) { clear_node(); - set_has_partition_bound_spec(); - _impl_.node_.partition_bound_spec_ = CreateMaybeMessage< ::pg_query::PartitionBoundSpec >(GetArenaForAllocation()); + set_has_vacuum_stmt(); + _impl_.node_.vacuum_stmt_ = CreateMaybeMessage<::pg_query::VacuumStmt>(GetArena()); } - return _impl_.node_.partition_bound_spec_; + return _impl_.node_.vacuum_stmt_; } -inline ::pg_query::PartitionBoundSpec* Node::mutable_partition_bound_spec() { - ::pg_query::PartitionBoundSpec* _msg = _internal_mutable_partition_bound_spec(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_bound_spec) +inline ::pg_query::VacuumStmt* Node::mutable_vacuum_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::VacuumStmt* _msg = _internal_mutable_vacuum_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.vacuum_stmt) return _msg; } -// .pg_query.PartitionRangeDatum partition_range_datum = 223 [json_name = "PartitionRangeDatum"]; -inline bool Node::_internal_has_partition_range_datum() const { - return node_case() == kPartitionRangeDatum; +// .pg_query.VacuumRelation vacuum_relation = 218 [json_name = "VacuumRelation"]; +inline bool Node::has_vacuum_relation() const { + return node_case() == kVacuumRelation; } -inline bool Node::has_partition_range_datum() const { - return _internal_has_partition_range_datum(); +inline bool Node::_internal_has_vacuum_relation() const { + return node_case() == kVacuumRelation; } -inline void Node::set_has_partition_range_datum() { - _impl_._oneof_case_[0] = kPartitionRangeDatum; +inline void Node::set_has_vacuum_relation() { + _impl_._oneof_case_[0] = kVacuumRelation; } -inline void Node::clear_partition_range_datum() { - if (_internal_has_partition_range_datum()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.partition_range_datum_; +inline void Node::clear_vacuum_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kVacuumRelation) { + if (GetArena() == nullptr) { + delete _impl_.node_.vacuum_relation_; } clear_has_node(); } } -inline ::pg_query::PartitionRangeDatum* Node::release_partition_range_datum() { - // @@protoc_insertion_point(field_release:pg_query.Node.partition_range_datum) - if (_internal_has_partition_range_datum()) { +inline ::pg_query::VacuumRelation* Node::release_vacuum_relation() { + // @@protoc_insertion_point(field_release:pg_query.Node.vacuum_relation) + if (node_case() == kVacuumRelation) { clear_has_node(); - ::pg_query::PartitionRangeDatum* temp = _impl_.node_.partition_range_datum_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.vacuum_relation_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.partition_range_datum_ = nullptr; + _impl_.node_.vacuum_relation_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::PartitionRangeDatum& Node::_internal_partition_range_datum() const { - return _internal_has_partition_range_datum() - ? *_impl_.node_.partition_range_datum_ - : reinterpret_cast< ::pg_query::PartitionRangeDatum&>(::pg_query::_PartitionRangeDatum_default_instance_); +inline const ::pg_query::VacuumRelation& Node::_internal_vacuum_relation() const { + return node_case() == kVacuumRelation ? *_impl_.node_.vacuum_relation_ : reinterpret_cast<::pg_query::VacuumRelation&>(::pg_query::_VacuumRelation_default_instance_); } -inline const ::pg_query::PartitionRangeDatum& Node::partition_range_datum() const { - // @@protoc_insertion_point(field_get:pg_query.Node.partition_range_datum) - return _internal_partition_range_datum(); +inline const ::pg_query::VacuumRelation& Node::vacuum_relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.vacuum_relation) + return _internal_vacuum_relation(); } -inline ::pg_query::PartitionRangeDatum* Node::unsafe_arena_release_partition_range_datum() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_range_datum) - if (_internal_has_partition_range_datum()) { +inline ::pg_query::VacuumRelation* Node::unsafe_arena_release_vacuum_relation() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.vacuum_relation) + if (node_case() == kVacuumRelation) { clear_has_node(); - ::pg_query::PartitionRangeDatum* temp = _impl_.node_.partition_range_datum_; - _impl_.node_.partition_range_datum_ = nullptr; + auto* temp = _impl_.node_.vacuum_relation_; + _impl_.node_.vacuum_relation_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_partition_range_datum(::pg_query::PartitionRangeDatum* partition_range_datum) { +inline void Node::unsafe_arena_set_allocated_vacuum_relation(::pg_query::VacuumRelation* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (partition_range_datum) { - set_has_partition_range_datum(); - _impl_.node_.partition_range_datum_ = partition_range_datum; + if (value) { + set_has_vacuum_relation(); + _impl_.node_.vacuum_relation_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_range_datum) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.vacuum_relation) } -inline ::pg_query::PartitionRangeDatum* Node::_internal_mutable_partition_range_datum() { - if (!_internal_has_partition_range_datum()) { +inline ::pg_query::VacuumRelation* Node::_internal_mutable_vacuum_relation() { + if (node_case() != kVacuumRelation) { clear_node(); - set_has_partition_range_datum(); - _impl_.node_.partition_range_datum_ = CreateMaybeMessage< ::pg_query::PartitionRangeDatum >(GetArenaForAllocation()); + set_has_vacuum_relation(); + _impl_.node_.vacuum_relation_ = CreateMaybeMessage<::pg_query::VacuumRelation>(GetArena()); } - return _impl_.node_.partition_range_datum_; + return _impl_.node_.vacuum_relation_; } -inline ::pg_query::PartitionRangeDatum* Node::mutable_partition_range_datum() { - ::pg_query::PartitionRangeDatum* _msg = _internal_mutable_partition_range_datum(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_range_datum) +inline ::pg_query::VacuumRelation* Node::mutable_vacuum_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::VacuumRelation* _msg = _internal_mutable_vacuum_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.vacuum_relation) return _msg; } -// .pg_query.PartitionCmd partition_cmd = 224 [json_name = "PartitionCmd"]; -inline bool Node::_internal_has_partition_cmd() const { - return node_case() == kPartitionCmd; +// .pg_query.ExplainStmt explain_stmt = 219 [json_name = "ExplainStmt"]; +inline bool Node::has_explain_stmt() const { + return node_case() == kExplainStmt; } -inline bool Node::has_partition_cmd() const { - return _internal_has_partition_cmd(); +inline bool Node::_internal_has_explain_stmt() const { + return node_case() == kExplainStmt; } -inline void Node::set_has_partition_cmd() { - _impl_._oneof_case_[0] = kPartitionCmd; +inline void Node::set_has_explain_stmt() { + _impl_._oneof_case_[0] = kExplainStmt; } -inline void Node::clear_partition_cmd() { - if (_internal_has_partition_cmd()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.partition_cmd_; +inline void Node::clear_explain_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kExplainStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.explain_stmt_; } clear_has_node(); } } -inline ::pg_query::PartitionCmd* Node::release_partition_cmd() { - // @@protoc_insertion_point(field_release:pg_query.Node.partition_cmd) - if (_internal_has_partition_cmd()) { +inline ::pg_query::ExplainStmt* Node::release_explain_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.explain_stmt) + if (node_case() == kExplainStmt) { clear_has_node(); - ::pg_query::PartitionCmd* temp = _impl_.node_.partition_cmd_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.explain_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.partition_cmd_ = nullptr; + _impl_.node_.explain_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::PartitionCmd& Node::_internal_partition_cmd() const { - return _internal_has_partition_cmd() - ? *_impl_.node_.partition_cmd_ - : reinterpret_cast< ::pg_query::PartitionCmd&>(::pg_query::_PartitionCmd_default_instance_); +inline const ::pg_query::ExplainStmt& Node::_internal_explain_stmt() const { + return node_case() == kExplainStmt ? *_impl_.node_.explain_stmt_ : reinterpret_cast<::pg_query::ExplainStmt&>(::pg_query::_ExplainStmt_default_instance_); } -inline const ::pg_query::PartitionCmd& Node::partition_cmd() const { - // @@protoc_insertion_point(field_get:pg_query.Node.partition_cmd) - return _internal_partition_cmd(); +inline const ::pg_query::ExplainStmt& Node::explain_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.explain_stmt) + return _internal_explain_stmt(); } -inline ::pg_query::PartitionCmd* Node::unsafe_arena_release_partition_cmd() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.partition_cmd) - if (_internal_has_partition_cmd()) { +inline ::pg_query::ExplainStmt* Node::unsafe_arena_release_explain_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.explain_stmt) + if (node_case() == kExplainStmt) { clear_has_node(); - ::pg_query::PartitionCmd* temp = _impl_.node_.partition_cmd_; - _impl_.node_.partition_cmd_ = nullptr; + auto* temp = _impl_.node_.explain_stmt_; + _impl_.node_.explain_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_partition_cmd(::pg_query::PartitionCmd* partition_cmd) { +inline void Node::unsafe_arena_set_allocated_explain_stmt(::pg_query::ExplainStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (partition_cmd) { - set_has_partition_cmd(); - _impl_.node_.partition_cmd_ = partition_cmd; + if (value) { + set_has_explain_stmt(); + _impl_.node_.explain_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.partition_cmd) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.explain_stmt) } -inline ::pg_query::PartitionCmd* Node::_internal_mutable_partition_cmd() { - if (!_internal_has_partition_cmd()) { +inline ::pg_query::ExplainStmt* Node::_internal_mutable_explain_stmt() { + if (node_case() != kExplainStmt) { clear_node(); - set_has_partition_cmd(); - _impl_.node_.partition_cmd_ = CreateMaybeMessage< ::pg_query::PartitionCmd >(GetArenaForAllocation()); + set_has_explain_stmt(); + _impl_.node_.explain_stmt_ = CreateMaybeMessage<::pg_query::ExplainStmt>(GetArena()); } - return _impl_.node_.partition_cmd_; + return _impl_.node_.explain_stmt_; } -inline ::pg_query::PartitionCmd* Node::mutable_partition_cmd() { - ::pg_query::PartitionCmd* _msg = _internal_mutable_partition_cmd(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.partition_cmd) +inline ::pg_query::ExplainStmt* Node::mutable_explain_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ExplainStmt* _msg = _internal_mutable_explain_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.explain_stmt) return _msg; } -// .pg_query.VacuumRelation vacuum_relation = 225 [json_name = "VacuumRelation"]; -inline bool Node::_internal_has_vacuum_relation() const { - return node_case() == kVacuumRelation; +// .pg_query.CreateTableAsStmt create_table_as_stmt = 220 [json_name = "CreateTableAsStmt"]; +inline bool Node::has_create_table_as_stmt() const { + return node_case() == kCreateTableAsStmt; } -inline bool Node::has_vacuum_relation() const { - return _internal_has_vacuum_relation(); +inline bool Node::_internal_has_create_table_as_stmt() const { + return node_case() == kCreateTableAsStmt; } -inline void Node::set_has_vacuum_relation() { - _impl_._oneof_case_[0] = kVacuumRelation; +inline void Node::set_has_create_table_as_stmt() { + _impl_._oneof_case_[0] = kCreateTableAsStmt; } -inline void Node::clear_vacuum_relation() { - if (_internal_has_vacuum_relation()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.vacuum_relation_; +inline void Node::clear_create_table_as_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateTableAsStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_table_as_stmt_; } clear_has_node(); } } -inline ::pg_query::VacuumRelation* Node::release_vacuum_relation() { - // @@protoc_insertion_point(field_release:pg_query.Node.vacuum_relation) - if (_internal_has_vacuum_relation()) { +inline ::pg_query::CreateTableAsStmt* Node::release_create_table_as_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_table_as_stmt) + if (node_case() == kCreateTableAsStmt) { clear_has_node(); - ::pg_query::VacuumRelation* temp = _impl_.node_.vacuum_relation_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_table_as_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.vacuum_relation_ = nullptr; + _impl_.node_.create_table_as_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::VacuumRelation& Node::_internal_vacuum_relation() const { - return _internal_has_vacuum_relation() - ? *_impl_.node_.vacuum_relation_ - : reinterpret_cast< ::pg_query::VacuumRelation&>(::pg_query::_VacuumRelation_default_instance_); +inline const ::pg_query::CreateTableAsStmt& Node::_internal_create_table_as_stmt() const { + return node_case() == kCreateTableAsStmt ? *_impl_.node_.create_table_as_stmt_ : reinterpret_cast<::pg_query::CreateTableAsStmt&>(::pg_query::_CreateTableAsStmt_default_instance_); } -inline const ::pg_query::VacuumRelation& Node::vacuum_relation() const { - // @@protoc_insertion_point(field_get:pg_query.Node.vacuum_relation) - return _internal_vacuum_relation(); +inline const ::pg_query::CreateTableAsStmt& Node::create_table_as_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_table_as_stmt) + return _internal_create_table_as_stmt(); } -inline ::pg_query::VacuumRelation* Node::unsafe_arena_release_vacuum_relation() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.vacuum_relation) - if (_internal_has_vacuum_relation()) { +inline ::pg_query::CreateTableAsStmt* Node::unsafe_arena_release_create_table_as_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_table_as_stmt) + if (node_case() == kCreateTableAsStmt) { clear_has_node(); - ::pg_query::VacuumRelation* temp = _impl_.node_.vacuum_relation_; - _impl_.node_.vacuum_relation_ = nullptr; + auto* temp = _impl_.node_.create_table_as_stmt_; + _impl_.node_.create_table_as_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_vacuum_relation(::pg_query::VacuumRelation* vacuum_relation) { +inline void Node::unsafe_arena_set_allocated_create_table_as_stmt(::pg_query::CreateTableAsStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (vacuum_relation) { - set_has_vacuum_relation(); - _impl_.node_.vacuum_relation_ = vacuum_relation; + if (value) { + set_has_create_table_as_stmt(); + _impl_.node_.create_table_as_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.vacuum_relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_table_as_stmt) } -inline ::pg_query::VacuumRelation* Node::_internal_mutable_vacuum_relation() { - if (!_internal_has_vacuum_relation()) { +inline ::pg_query::CreateTableAsStmt* Node::_internal_mutable_create_table_as_stmt() { + if (node_case() != kCreateTableAsStmt) { clear_node(); - set_has_vacuum_relation(); - _impl_.node_.vacuum_relation_ = CreateMaybeMessage< ::pg_query::VacuumRelation >(GetArenaForAllocation()); + set_has_create_table_as_stmt(); + _impl_.node_.create_table_as_stmt_ = CreateMaybeMessage<::pg_query::CreateTableAsStmt>(GetArena()); } - return _impl_.node_.vacuum_relation_; + return _impl_.node_.create_table_as_stmt_; } -inline ::pg_query::VacuumRelation* Node::mutable_vacuum_relation() { - ::pg_query::VacuumRelation* _msg = _internal_mutable_vacuum_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.vacuum_relation) +inline ::pg_query::CreateTableAsStmt* Node::mutable_create_table_as_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateTableAsStmt* _msg = _internal_mutable_create_table_as_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_table_as_stmt) return _msg; } -// .pg_query.PublicationObjSpec publication_obj_spec = 226 [json_name = "PublicationObjSpec"]; -inline bool Node::_internal_has_publication_obj_spec() const { - return node_case() == kPublicationObjSpec; +// .pg_query.RefreshMatViewStmt refresh_mat_view_stmt = 221 [json_name = "RefreshMatViewStmt"]; +inline bool Node::has_refresh_mat_view_stmt() const { + return node_case() == kRefreshMatViewStmt; } -inline bool Node::has_publication_obj_spec() const { - return _internal_has_publication_obj_spec(); +inline bool Node::_internal_has_refresh_mat_view_stmt() const { + return node_case() == kRefreshMatViewStmt; } -inline void Node::set_has_publication_obj_spec() { - _impl_._oneof_case_[0] = kPublicationObjSpec; +inline void Node::set_has_refresh_mat_view_stmt() { + _impl_._oneof_case_[0] = kRefreshMatViewStmt; } -inline void Node::clear_publication_obj_spec() { - if (_internal_has_publication_obj_spec()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.publication_obj_spec_; +inline void Node::clear_refresh_mat_view_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kRefreshMatViewStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.refresh_mat_view_stmt_; } clear_has_node(); } } -inline ::pg_query::PublicationObjSpec* Node::release_publication_obj_spec() { - // @@protoc_insertion_point(field_release:pg_query.Node.publication_obj_spec) - if (_internal_has_publication_obj_spec()) { +inline ::pg_query::RefreshMatViewStmt* Node::release_refresh_mat_view_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.refresh_mat_view_stmt) + if (node_case() == kRefreshMatViewStmt) { clear_has_node(); - ::pg_query::PublicationObjSpec* temp = _impl_.node_.publication_obj_spec_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.refresh_mat_view_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.publication_obj_spec_ = nullptr; + _impl_.node_.refresh_mat_view_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::PublicationObjSpec& Node::_internal_publication_obj_spec() const { - return _internal_has_publication_obj_spec() - ? *_impl_.node_.publication_obj_spec_ - : reinterpret_cast< ::pg_query::PublicationObjSpec&>(::pg_query::_PublicationObjSpec_default_instance_); +inline const ::pg_query::RefreshMatViewStmt& Node::_internal_refresh_mat_view_stmt() const { + return node_case() == kRefreshMatViewStmt ? *_impl_.node_.refresh_mat_view_stmt_ : reinterpret_cast<::pg_query::RefreshMatViewStmt&>(::pg_query::_RefreshMatViewStmt_default_instance_); } -inline const ::pg_query::PublicationObjSpec& Node::publication_obj_spec() const { - // @@protoc_insertion_point(field_get:pg_query.Node.publication_obj_spec) - return _internal_publication_obj_spec(); +inline const ::pg_query::RefreshMatViewStmt& Node::refresh_mat_view_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.refresh_mat_view_stmt) + return _internal_refresh_mat_view_stmt(); } -inline ::pg_query::PublicationObjSpec* Node::unsafe_arena_release_publication_obj_spec() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.publication_obj_spec) - if (_internal_has_publication_obj_spec()) { +inline ::pg_query::RefreshMatViewStmt* Node::unsafe_arena_release_refresh_mat_view_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.refresh_mat_view_stmt) + if (node_case() == kRefreshMatViewStmt) { clear_has_node(); - ::pg_query::PublicationObjSpec* temp = _impl_.node_.publication_obj_spec_; - _impl_.node_.publication_obj_spec_ = nullptr; + auto* temp = _impl_.node_.refresh_mat_view_stmt_; + _impl_.node_.refresh_mat_view_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_publication_obj_spec(::pg_query::PublicationObjSpec* publication_obj_spec) { +inline void Node::unsafe_arena_set_allocated_refresh_mat_view_stmt(::pg_query::RefreshMatViewStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (publication_obj_spec) { - set_has_publication_obj_spec(); - _impl_.node_.publication_obj_spec_ = publication_obj_spec; + if (value) { + set_has_refresh_mat_view_stmt(); + _impl_.node_.refresh_mat_view_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.publication_obj_spec) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.refresh_mat_view_stmt) } -inline ::pg_query::PublicationObjSpec* Node::_internal_mutable_publication_obj_spec() { - if (!_internal_has_publication_obj_spec()) { +inline ::pg_query::RefreshMatViewStmt* Node::_internal_mutable_refresh_mat_view_stmt() { + if (node_case() != kRefreshMatViewStmt) { clear_node(); - set_has_publication_obj_spec(); - _impl_.node_.publication_obj_spec_ = CreateMaybeMessage< ::pg_query::PublicationObjSpec >(GetArenaForAllocation()); + set_has_refresh_mat_view_stmt(); + _impl_.node_.refresh_mat_view_stmt_ = CreateMaybeMessage<::pg_query::RefreshMatViewStmt>(GetArena()); } - return _impl_.node_.publication_obj_spec_; + return _impl_.node_.refresh_mat_view_stmt_; } -inline ::pg_query::PublicationObjSpec* Node::mutable_publication_obj_spec() { - ::pg_query::PublicationObjSpec* _msg = _internal_mutable_publication_obj_spec(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.publication_obj_spec) +inline ::pg_query::RefreshMatViewStmt* Node::mutable_refresh_mat_view_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RefreshMatViewStmt* _msg = _internal_mutable_refresh_mat_view_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.refresh_mat_view_stmt) return _msg; } -// .pg_query.PublicationTable publication_table = 227 [json_name = "PublicationTable"]; -inline bool Node::_internal_has_publication_table() const { - return node_case() == kPublicationTable; +// .pg_query.CheckPointStmt check_point_stmt = 222 [json_name = "CheckPointStmt"]; +inline bool Node::has_check_point_stmt() const { + return node_case() == kCheckPointStmt; } -inline bool Node::has_publication_table() const { - return _internal_has_publication_table(); +inline bool Node::_internal_has_check_point_stmt() const { + return node_case() == kCheckPointStmt; } -inline void Node::set_has_publication_table() { - _impl_._oneof_case_[0] = kPublicationTable; +inline void Node::set_has_check_point_stmt() { + _impl_._oneof_case_[0] = kCheckPointStmt; } -inline void Node::clear_publication_table() { - if (_internal_has_publication_table()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.publication_table_; +inline void Node::clear_check_point_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCheckPointStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.check_point_stmt_; } clear_has_node(); } } -inline ::pg_query::PublicationTable* Node::release_publication_table() { - // @@protoc_insertion_point(field_release:pg_query.Node.publication_table) - if (_internal_has_publication_table()) { +inline ::pg_query::CheckPointStmt* Node::release_check_point_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.check_point_stmt) + if (node_case() == kCheckPointStmt) { clear_has_node(); - ::pg_query::PublicationTable* temp = _impl_.node_.publication_table_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.check_point_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.publication_table_ = nullptr; + _impl_.node_.check_point_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::PublicationTable& Node::_internal_publication_table() const { - return _internal_has_publication_table() - ? *_impl_.node_.publication_table_ - : reinterpret_cast< ::pg_query::PublicationTable&>(::pg_query::_PublicationTable_default_instance_); +inline const ::pg_query::CheckPointStmt& Node::_internal_check_point_stmt() const { + return node_case() == kCheckPointStmt ? *_impl_.node_.check_point_stmt_ : reinterpret_cast<::pg_query::CheckPointStmt&>(::pg_query::_CheckPointStmt_default_instance_); } -inline const ::pg_query::PublicationTable& Node::publication_table() const { - // @@protoc_insertion_point(field_get:pg_query.Node.publication_table) - return _internal_publication_table(); +inline const ::pg_query::CheckPointStmt& Node::check_point_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.check_point_stmt) + return _internal_check_point_stmt(); } -inline ::pg_query::PublicationTable* Node::unsafe_arena_release_publication_table() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.publication_table) - if (_internal_has_publication_table()) { +inline ::pg_query::CheckPointStmt* Node::unsafe_arena_release_check_point_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.check_point_stmt) + if (node_case() == kCheckPointStmt) { clear_has_node(); - ::pg_query::PublicationTable* temp = _impl_.node_.publication_table_; - _impl_.node_.publication_table_ = nullptr; + auto* temp = _impl_.node_.check_point_stmt_; + _impl_.node_.check_point_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_publication_table(::pg_query::PublicationTable* publication_table) { +inline void Node::unsafe_arena_set_allocated_check_point_stmt(::pg_query::CheckPointStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (publication_table) { - set_has_publication_table(); - _impl_.node_.publication_table_ = publication_table; + if (value) { + set_has_check_point_stmt(); + _impl_.node_.check_point_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.publication_table) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.check_point_stmt) } -inline ::pg_query::PublicationTable* Node::_internal_mutable_publication_table() { - if (!_internal_has_publication_table()) { +inline ::pg_query::CheckPointStmt* Node::_internal_mutable_check_point_stmt() { + if (node_case() != kCheckPointStmt) { clear_node(); - set_has_publication_table(); - _impl_.node_.publication_table_ = CreateMaybeMessage< ::pg_query::PublicationTable >(GetArenaForAllocation()); + set_has_check_point_stmt(); + _impl_.node_.check_point_stmt_ = CreateMaybeMessage<::pg_query::CheckPointStmt>(GetArena()); } - return _impl_.node_.publication_table_; + return _impl_.node_.check_point_stmt_; } -inline ::pg_query::PublicationTable* Node::mutable_publication_table() { - ::pg_query::PublicationTable* _msg = _internal_mutable_publication_table(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.publication_table) +inline ::pg_query::CheckPointStmt* Node::mutable_check_point_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CheckPointStmt* _msg = _internal_mutable_check_point_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.check_point_stmt) return _msg; } -// .pg_query.InlineCodeBlock inline_code_block = 228 [json_name = "InlineCodeBlock"]; -inline bool Node::_internal_has_inline_code_block() const { - return node_case() == kInlineCodeBlock; +// .pg_query.DiscardStmt discard_stmt = 223 [json_name = "DiscardStmt"]; +inline bool Node::has_discard_stmt() const { + return node_case() == kDiscardStmt; } -inline bool Node::has_inline_code_block() const { - return _internal_has_inline_code_block(); +inline bool Node::_internal_has_discard_stmt() const { + return node_case() == kDiscardStmt; } -inline void Node::set_has_inline_code_block() { - _impl_._oneof_case_[0] = kInlineCodeBlock; +inline void Node::set_has_discard_stmt() { + _impl_._oneof_case_[0] = kDiscardStmt; } -inline void Node::clear_inline_code_block() { - if (_internal_has_inline_code_block()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.inline_code_block_; +inline void Node::clear_discard_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDiscardStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.discard_stmt_; } clear_has_node(); } } -inline ::pg_query::InlineCodeBlock* Node::release_inline_code_block() { - // @@protoc_insertion_point(field_release:pg_query.Node.inline_code_block) - if (_internal_has_inline_code_block()) { +inline ::pg_query::DiscardStmt* Node::release_discard_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.discard_stmt) + if (node_case() == kDiscardStmt) { clear_has_node(); - ::pg_query::InlineCodeBlock* temp = _impl_.node_.inline_code_block_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.discard_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.inline_code_block_ = nullptr; + _impl_.node_.discard_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::InlineCodeBlock& Node::_internal_inline_code_block() const { - return _internal_has_inline_code_block() - ? *_impl_.node_.inline_code_block_ - : reinterpret_cast< ::pg_query::InlineCodeBlock&>(::pg_query::_InlineCodeBlock_default_instance_); +inline const ::pg_query::DiscardStmt& Node::_internal_discard_stmt() const { + return node_case() == kDiscardStmt ? *_impl_.node_.discard_stmt_ : reinterpret_cast<::pg_query::DiscardStmt&>(::pg_query::_DiscardStmt_default_instance_); } -inline const ::pg_query::InlineCodeBlock& Node::inline_code_block() const { - // @@protoc_insertion_point(field_get:pg_query.Node.inline_code_block) - return _internal_inline_code_block(); +inline const ::pg_query::DiscardStmt& Node::discard_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.discard_stmt) + return _internal_discard_stmt(); } -inline ::pg_query::InlineCodeBlock* Node::unsafe_arena_release_inline_code_block() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.inline_code_block) - if (_internal_has_inline_code_block()) { +inline ::pg_query::DiscardStmt* Node::unsafe_arena_release_discard_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.discard_stmt) + if (node_case() == kDiscardStmt) { clear_has_node(); - ::pg_query::InlineCodeBlock* temp = _impl_.node_.inline_code_block_; - _impl_.node_.inline_code_block_ = nullptr; + auto* temp = _impl_.node_.discard_stmt_; + _impl_.node_.discard_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_inline_code_block(::pg_query::InlineCodeBlock* inline_code_block) { +inline void Node::unsafe_arena_set_allocated_discard_stmt(::pg_query::DiscardStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (inline_code_block) { - set_has_inline_code_block(); - _impl_.node_.inline_code_block_ = inline_code_block; + if (value) { + set_has_discard_stmt(); + _impl_.node_.discard_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.inline_code_block) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.discard_stmt) } -inline ::pg_query::InlineCodeBlock* Node::_internal_mutable_inline_code_block() { - if (!_internal_has_inline_code_block()) { +inline ::pg_query::DiscardStmt* Node::_internal_mutable_discard_stmt() { + if (node_case() != kDiscardStmt) { clear_node(); - set_has_inline_code_block(); - _impl_.node_.inline_code_block_ = CreateMaybeMessage< ::pg_query::InlineCodeBlock >(GetArenaForAllocation()); + set_has_discard_stmt(); + _impl_.node_.discard_stmt_ = CreateMaybeMessage<::pg_query::DiscardStmt>(GetArena()); } - return _impl_.node_.inline_code_block_; + return _impl_.node_.discard_stmt_; } -inline ::pg_query::InlineCodeBlock* Node::mutable_inline_code_block() { - ::pg_query::InlineCodeBlock* _msg = _internal_mutable_inline_code_block(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.inline_code_block) +inline ::pg_query::DiscardStmt* Node::mutable_discard_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DiscardStmt* _msg = _internal_mutable_discard_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.discard_stmt) return _msg; } -// .pg_query.CallContext call_context = 229 [json_name = "CallContext"]; -inline bool Node::_internal_has_call_context() const { - return node_case() == kCallContext; +// .pg_query.LockStmt lock_stmt = 224 [json_name = "LockStmt"]; +inline bool Node::has_lock_stmt() const { + return node_case() == kLockStmt; } -inline bool Node::has_call_context() const { - return _internal_has_call_context(); +inline bool Node::_internal_has_lock_stmt() const { + return node_case() == kLockStmt; } -inline void Node::set_has_call_context() { - _impl_._oneof_case_[0] = kCallContext; +inline void Node::set_has_lock_stmt() { + _impl_._oneof_case_[0] = kLockStmt; } -inline void Node::clear_call_context() { - if (_internal_has_call_context()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.call_context_; +inline void Node::clear_lock_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kLockStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.lock_stmt_; } clear_has_node(); } } -inline ::pg_query::CallContext* Node::release_call_context() { - // @@protoc_insertion_point(field_release:pg_query.Node.call_context) - if (_internal_has_call_context()) { +inline ::pg_query::LockStmt* Node::release_lock_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.lock_stmt) + if (node_case() == kLockStmt) { clear_has_node(); - ::pg_query::CallContext* temp = _impl_.node_.call_context_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.lock_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.call_context_ = nullptr; + _impl_.node_.lock_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::CallContext& Node::_internal_call_context() const { - return _internal_has_call_context() - ? *_impl_.node_.call_context_ - : reinterpret_cast< ::pg_query::CallContext&>(::pg_query::_CallContext_default_instance_); +inline const ::pg_query::LockStmt& Node::_internal_lock_stmt() const { + return node_case() == kLockStmt ? *_impl_.node_.lock_stmt_ : reinterpret_cast<::pg_query::LockStmt&>(::pg_query::_LockStmt_default_instance_); } -inline const ::pg_query::CallContext& Node::call_context() const { - // @@protoc_insertion_point(field_get:pg_query.Node.call_context) - return _internal_call_context(); +inline const ::pg_query::LockStmt& Node::lock_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.lock_stmt) + return _internal_lock_stmt(); } -inline ::pg_query::CallContext* Node::unsafe_arena_release_call_context() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.call_context) - if (_internal_has_call_context()) { +inline ::pg_query::LockStmt* Node::unsafe_arena_release_lock_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.lock_stmt) + if (node_case() == kLockStmt) { clear_has_node(); - ::pg_query::CallContext* temp = _impl_.node_.call_context_; - _impl_.node_.call_context_ = nullptr; + auto* temp = _impl_.node_.lock_stmt_; + _impl_.node_.lock_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_call_context(::pg_query::CallContext* call_context) { +inline void Node::unsafe_arena_set_allocated_lock_stmt(::pg_query::LockStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (call_context) { - set_has_call_context(); - _impl_.node_.call_context_ = call_context; + if (value) { + set_has_lock_stmt(); + _impl_.node_.lock_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.call_context) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.lock_stmt) } -inline ::pg_query::CallContext* Node::_internal_mutable_call_context() { - if (!_internal_has_call_context()) { +inline ::pg_query::LockStmt* Node::_internal_mutable_lock_stmt() { + if (node_case() != kLockStmt) { clear_node(); - set_has_call_context(); - _impl_.node_.call_context_ = CreateMaybeMessage< ::pg_query::CallContext >(GetArenaForAllocation()); + set_has_lock_stmt(); + _impl_.node_.lock_stmt_ = CreateMaybeMessage<::pg_query::LockStmt>(GetArena()); } - return _impl_.node_.call_context_; + return _impl_.node_.lock_stmt_; } -inline ::pg_query::CallContext* Node::mutable_call_context() { - ::pg_query::CallContext* _msg = _internal_mutable_call_context(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.call_context) +inline ::pg_query::LockStmt* Node::mutable_lock_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::LockStmt* _msg = _internal_mutable_lock_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.lock_stmt) return _msg; } -// .pg_query.Integer integer = 230 [json_name = "Integer"]; -inline bool Node::_internal_has_integer() const { - return node_case() == kInteger; +// .pg_query.ConstraintsSetStmt constraints_set_stmt = 225 [json_name = "ConstraintsSetStmt"]; +inline bool Node::has_constraints_set_stmt() const { + return node_case() == kConstraintsSetStmt; } -inline bool Node::has_integer() const { - return _internal_has_integer(); +inline bool Node::_internal_has_constraints_set_stmt() const { + return node_case() == kConstraintsSetStmt; } -inline void Node::set_has_integer() { - _impl_._oneof_case_[0] = kInteger; +inline void Node::set_has_constraints_set_stmt() { + _impl_._oneof_case_[0] = kConstraintsSetStmt; } -inline void Node::clear_integer() { - if (_internal_has_integer()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.integer_; +inline void Node::clear_constraints_set_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kConstraintsSetStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.constraints_set_stmt_; } clear_has_node(); } } -inline ::pg_query::Integer* Node::release_integer() { - // @@protoc_insertion_point(field_release:pg_query.Node.integer) - if (_internal_has_integer()) { +inline ::pg_query::ConstraintsSetStmt* Node::release_constraints_set_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.constraints_set_stmt) + if (node_case() == kConstraintsSetStmt) { clear_has_node(); - ::pg_query::Integer* temp = _impl_.node_.integer_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.constraints_set_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.integer_ = nullptr; + _impl_.node_.constraints_set_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::Integer& Node::_internal_integer() const { - return _internal_has_integer() - ? *_impl_.node_.integer_ - : reinterpret_cast< ::pg_query::Integer&>(::pg_query::_Integer_default_instance_); +inline const ::pg_query::ConstraintsSetStmt& Node::_internal_constraints_set_stmt() const { + return node_case() == kConstraintsSetStmt ? *_impl_.node_.constraints_set_stmt_ : reinterpret_cast<::pg_query::ConstraintsSetStmt&>(::pg_query::_ConstraintsSetStmt_default_instance_); } -inline const ::pg_query::Integer& Node::integer() const { - // @@protoc_insertion_point(field_get:pg_query.Node.integer) - return _internal_integer(); +inline const ::pg_query::ConstraintsSetStmt& Node::constraints_set_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.constraints_set_stmt) + return _internal_constraints_set_stmt(); } -inline ::pg_query::Integer* Node::unsafe_arena_release_integer() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.integer) - if (_internal_has_integer()) { +inline ::pg_query::ConstraintsSetStmt* Node::unsafe_arena_release_constraints_set_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.constraints_set_stmt) + if (node_case() == kConstraintsSetStmt) { clear_has_node(); - ::pg_query::Integer* temp = _impl_.node_.integer_; - _impl_.node_.integer_ = nullptr; + auto* temp = _impl_.node_.constraints_set_stmt_; + _impl_.node_.constraints_set_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_integer(::pg_query::Integer* integer) { +inline void Node::unsafe_arena_set_allocated_constraints_set_stmt(::pg_query::ConstraintsSetStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (integer) { - set_has_integer(); - _impl_.node_.integer_ = integer; + if (value) { + set_has_constraints_set_stmt(); + _impl_.node_.constraints_set_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.integer) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.constraints_set_stmt) } -inline ::pg_query::Integer* Node::_internal_mutable_integer() { - if (!_internal_has_integer()) { +inline ::pg_query::ConstraintsSetStmt* Node::_internal_mutable_constraints_set_stmt() { + if (node_case() != kConstraintsSetStmt) { clear_node(); - set_has_integer(); - _impl_.node_.integer_ = CreateMaybeMessage< ::pg_query::Integer >(GetArenaForAllocation()); + set_has_constraints_set_stmt(); + _impl_.node_.constraints_set_stmt_ = CreateMaybeMessage<::pg_query::ConstraintsSetStmt>(GetArena()); } - return _impl_.node_.integer_; + return _impl_.node_.constraints_set_stmt_; } -inline ::pg_query::Integer* Node::mutable_integer() { - ::pg_query::Integer* _msg = _internal_mutable_integer(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.integer) +inline ::pg_query::ConstraintsSetStmt* Node::mutable_constraints_set_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ConstraintsSetStmt* _msg = _internal_mutable_constraints_set_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.constraints_set_stmt) return _msg; } -// .pg_query.Float float = 231 [json_name = "Float"]; -inline bool Node::_internal_has_float_() const { - return node_case() == kFloat; +// .pg_query.ReindexStmt reindex_stmt = 226 [json_name = "ReindexStmt"]; +inline bool Node::has_reindex_stmt() const { + return node_case() == kReindexStmt; } -inline bool Node::has_float_() const { - return _internal_has_float_(); +inline bool Node::_internal_has_reindex_stmt() const { + return node_case() == kReindexStmt; } -inline void Node::set_has_float_() { - _impl_._oneof_case_[0] = kFloat; +inline void Node::set_has_reindex_stmt() { + _impl_._oneof_case_[0] = kReindexStmt; } -inline void Node::clear_float_() { - if (_internal_has_float_()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.float__; +inline void Node::clear_reindex_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kReindexStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.reindex_stmt_; } clear_has_node(); } } -inline ::pg_query::Float* Node::release_float_() { - // @@protoc_insertion_point(field_release:pg_query.Node.float) - if (_internal_has_float_()) { +inline ::pg_query::ReindexStmt* Node::release_reindex_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.reindex_stmt) + if (node_case() == kReindexStmt) { clear_has_node(); - ::pg_query::Float* temp = _impl_.node_.float__; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.reindex_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.float__ = nullptr; + _impl_.node_.reindex_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::Float& Node::_internal_float_() const { - return _internal_has_float_() - ? *_impl_.node_.float__ - : reinterpret_cast< ::pg_query::Float&>(::pg_query::_Float_default_instance_); +inline const ::pg_query::ReindexStmt& Node::_internal_reindex_stmt() const { + return node_case() == kReindexStmt ? *_impl_.node_.reindex_stmt_ : reinterpret_cast<::pg_query::ReindexStmt&>(::pg_query::_ReindexStmt_default_instance_); } -inline const ::pg_query::Float& Node::float_() const { - // @@protoc_insertion_point(field_get:pg_query.Node.float) - return _internal_float_(); +inline const ::pg_query::ReindexStmt& Node::reindex_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.reindex_stmt) + return _internal_reindex_stmt(); } -inline ::pg_query::Float* Node::unsafe_arena_release_float_() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.float) - if (_internal_has_float_()) { +inline ::pg_query::ReindexStmt* Node::unsafe_arena_release_reindex_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.reindex_stmt) + if (node_case() == kReindexStmt) { clear_has_node(); - ::pg_query::Float* temp = _impl_.node_.float__; - _impl_.node_.float__ = nullptr; + auto* temp = _impl_.node_.reindex_stmt_; + _impl_.node_.reindex_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_float_(::pg_query::Float* float_) { +inline void Node::unsafe_arena_set_allocated_reindex_stmt(::pg_query::ReindexStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (float_) { - set_has_float_(); - _impl_.node_.float__ = float_; + if (value) { + set_has_reindex_stmt(); + _impl_.node_.reindex_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.float) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.reindex_stmt) } -inline ::pg_query::Float* Node::_internal_mutable_float_() { - if (!_internal_has_float_()) { +inline ::pg_query::ReindexStmt* Node::_internal_mutable_reindex_stmt() { + if (node_case() != kReindexStmt) { clear_node(); - set_has_float_(); - _impl_.node_.float__ = CreateMaybeMessage< ::pg_query::Float >(GetArenaForAllocation()); + set_has_reindex_stmt(); + _impl_.node_.reindex_stmt_ = CreateMaybeMessage<::pg_query::ReindexStmt>(GetArena()); } - return _impl_.node_.float__; + return _impl_.node_.reindex_stmt_; } -inline ::pg_query::Float* Node::mutable_float_() { - ::pg_query::Float* _msg = _internal_mutable_float_(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.float) +inline ::pg_query::ReindexStmt* Node::mutable_reindex_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ReindexStmt* _msg = _internal_mutable_reindex_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.reindex_stmt) return _msg; } -// .pg_query.Boolean boolean = 232 [json_name = "Boolean"]; -inline bool Node::_internal_has_boolean() const { - return node_case() == kBoolean; +// .pg_query.CreateConversionStmt create_conversion_stmt = 227 [json_name = "CreateConversionStmt"]; +inline bool Node::has_create_conversion_stmt() const { + return node_case() == kCreateConversionStmt; } -inline bool Node::has_boolean() const { - return _internal_has_boolean(); +inline bool Node::_internal_has_create_conversion_stmt() const { + return node_case() == kCreateConversionStmt; } -inline void Node::set_has_boolean() { - _impl_._oneof_case_[0] = kBoolean; +inline void Node::set_has_create_conversion_stmt() { + _impl_._oneof_case_[0] = kCreateConversionStmt; } -inline void Node::clear_boolean() { - if (_internal_has_boolean()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.boolean_; +inline void Node::clear_create_conversion_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateConversionStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_conversion_stmt_; } clear_has_node(); } } -inline ::pg_query::Boolean* Node::release_boolean() { - // @@protoc_insertion_point(field_release:pg_query.Node.boolean) - if (_internal_has_boolean()) { +inline ::pg_query::CreateConversionStmt* Node::release_create_conversion_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_conversion_stmt) + if (node_case() == kCreateConversionStmt) { clear_has_node(); - ::pg_query::Boolean* temp = _impl_.node_.boolean_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_conversion_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.boolean_ = nullptr; + _impl_.node_.create_conversion_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::Boolean& Node::_internal_boolean() const { - return _internal_has_boolean() - ? *_impl_.node_.boolean_ - : reinterpret_cast< ::pg_query::Boolean&>(::pg_query::_Boolean_default_instance_); +inline const ::pg_query::CreateConversionStmt& Node::_internal_create_conversion_stmt() const { + return node_case() == kCreateConversionStmt ? *_impl_.node_.create_conversion_stmt_ : reinterpret_cast<::pg_query::CreateConversionStmt&>(::pg_query::_CreateConversionStmt_default_instance_); } -inline const ::pg_query::Boolean& Node::boolean() const { - // @@protoc_insertion_point(field_get:pg_query.Node.boolean) - return _internal_boolean(); +inline const ::pg_query::CreateConversionStmt& Node::create_conversion_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_conversion_stmt) + return _internal_create_conversion_stmt(); } -inline ::pg_query::Boolean* Node::unsafe_arena_release_boolean() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.boolean) - if (_internal_has_boolean()) { +inline ::pg_query::CreateConversionStmt* Node::unsafe_arena_release_create_conversion_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_conversion_stmt) + if (node_case() == kCreateConversionStmt) { clear_has_node(); - ::pg_query::Boolean* temp = _impl_.node_.boolean_; - _impl_.node_.boolean_ = nullptr; + auto* temp = _impl_.node_.create_conversion_stmt_; + _impl_.node_.create_conversion_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_boolean(::pg_query::Boolean* boolean) { +inline void Node::unsafe_arena_set_allocated_create_conversion_stmt(::pg_query::CreateConversionStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (boolean) { - set_has_boolean(); - _impl_.node_.boolean_ = boolean; + if (value) { + set_has_create_conversion_stmt(); + _impl_.node_.create_conversion_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.boolean) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_conversion_stmt) } -inline ::pg_query::Boolean* Node::_internal_mutable_boolean() { - if (!_internal_has_boolean()) { +inline ::pg_query::CreateConversionStmt* Node::_internal_mutable_create_conversion_stmt() { + if (node_case() != kCreateConversionStmt) { clear_node(); - set_has_boolean(); - _impl_.node_.boolean_ = CreateMaybeMessage< ::pg_query::Boolean >(GetArenaForAllocation()); + set_has_create_conversion_stmt(); + _impl_.node_.create_conversion_stmt_ = CreateMaybeMessage<::pg_query::CreateConversionStmt>(GetArena()); } - return _impl_.node_.boolean_; + return _impl_.node_.create_conversion_stmt_; } -inline ::pg_query::Boolean* Node::mutable_boolean() { - ::pg_query::Boolean* _msg = _internal_mutable_boolean(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.boolean) +inline ::pg_query::CreateConversionStmt* Node::mutable_create_conversion_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateConversionStmt* _msg = _internal_mutable_create_conversion_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_conversion_stmt) return _msg; } -// .pg_query.String string = 233 [json_name = "String"]; -inline bool Node::_internal_has_string() const { - return node_case() == kString; +// .pg_query.CreateCastStmt create_cast_stmt = 228 [json_name = "CreateCastStmt"]; +inline bool Node::has_create_cast_stmt() const { + return node_case() == kCreateCastStmt; } -inline bool Node::has_string() const { - return _internal_has_string(); +inline bool Node::_internal_has_create_cast_stmt() const { + return node_case() == kCreateCastStmt; } -inline void Node::set_has_string() { - _impl_._oneof_case_[0] = kString; +inline void Node::set_has_create_cast_stmt() { + _impl_._oneof_case_[0] = kCreateCastStmt; } -inline void Node::clear_string() { - if (_internal_has_string()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.string_; +inline void Node::clear_create_cast_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateCastStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_cast_stmt_; } clear_has_node(); } } -inline ::pg_query::String* Node::release_string() { - // @@protoc_insertion_point(field_release:pg_query.Node.string) - if (_internal_has_string()) { +inline ::pg_query::CreateCastStmt* Node::release_create_cast_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_cast_stmt) + if (node_case() == kCreateCastStmt) { clear_has_node(); - ::pg_query::String* temp = _impl_.node_.string_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_cast_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.string_ = nullptr; + _impl_.node_.create_cast_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::String& Node::_internal_string() const { - return _internal_has_string() - ? *_impl_.node_.string_ - : reinterpret_cast< ::pg_query::String&>(::pg_query::_String_default_instance_); +inline const ::pg_query::CreateCastStmt& Node::_internal_create_cast_stmt() const { + return node_case() == kCreateCastStmt ? *_impl_.node_.create_cast_stmt_ : reinterpret_cast<::pg_query::CreateCastStmt&>(::pg_query::_CreateCastStmt_default_instance_); } -inline const ::pg_query::String& Node::string() const { - // @@protoc_insertion_point(field_get:pg_query.Node.string) - return _internal_string(); +inline const ::pg_query::CreateCastStmt& Node::create_cast_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_cast_stmt) + return _internal_create_cast_stmt(); } -inline ::pg_query::String* Node::unsafe_arena_release_string() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.string) - if (_internal_has_string()) { +inline ::pg_query::CreateCastStmt* Node::unsafe_arena_release_create_cast_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_cast_stmt) + if (node_case() == kCreateCastStmt) { clear_has_node(); - ::pg_query::String* temp = _impl_.node_.string_; - _impl_.node_.string_ = nullptr; + auto* temp = _impl_.node_.create_cast_stmt_; + _impl_.node_.create_cast_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_string(::pg_query::String* string) { +inline void Node::unsafe_arena_set_allocated_create_cast_stmt(::pg_query::CreateCastStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (string) { - set_has_string(); - _impl_.node_.string_ = string; + if (value) { + set_has_create_cast_stmt(); + _impl_.node_.create_cast_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.string) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_cast_stmt) } -inline ::pg_query::String* Node::_internal_mutable_string() { - if (!_internal_has_string()) { +inline ::pg_query::CreateCastStmt* Node::_internal_mutable_create_cast_stmt() { + if (node_case() != kCreateCastStmt) { clear_node(); - set_has_string(); - _impl_.node_.string_ = CreateMaybeMessage< ::pg_query::String >(GetArenaForAllocation()); + set_has_create_cast_stmt(); + _impl_.node_.create_cast_stmt_ = CreateMaybeMessage<::pg_query::CreateCastStmt>(GetArena()); } - return _impl_.node_.string_; + return _impl_.node_.create_cast_stmt_; } -inline ::pg_query::String* Node::mutable_string() { - ::pg_query::String* _msg = _internal_mutable_string(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.string) +inline ::pg_query::CreateCastStmt* Node::mutable_create_cast_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateCastStmt* _msg = _internal_mutable_create_cast_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_cast_stmt) return _msg; } -// .pg_query.BitString bit_string = 234 [json_name = "BitString"]; -inline bool Node::_internal_has_bit_string() const { - return node_case() == kBitString; +// .pg_query.CreateTransformStmt create_transform_stmt = 229 [json_name = "CreateTransformStmt"]; +inline bool Node::has_create_transform_stmt() const { + return node_case() == kCreateTransformStmt; } -inline bool Node::has_bit_string() const { - return _internal_has_bit_string(); +inline bool Node::_internal_has_create_transform_stmt() const { + return node_case() == kCreateTransformStmt; } -inline void Node::set_has_bit_string() { - _impl_._oneof_case_[0] = kBitString; +inline void Node::set_has_create_transform_stmt() { + _impl_._oneof_case_[0] = kCreateTransformStmt; } -inline void Node::clear_bit_string() { - if (_internal_has_bit_string()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.bit_string_; +inline void Node::clear_create_transform_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateTransformStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_transform_stmt_; } clear_has_node(); } } -inline ::pg_query::BitString* Node::release_bit_string() { - // @@protoc_insertion_point(field_release:pg_query.Node.bit_string) - if (_internal_has_bit_string()) { +inline ::pg_query::CreateTransformStmt* Node::release_create_transform_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_transform_stmt) + if (node_case() == kCreateTransformStmt) { clear_has_node(); - ::pg_query::BitString* temp = _impl_.node_.bit_string_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.create_transform_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.bit_string_ = nullptr; + _impl_.node_.create_transform_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::BitString& Node::_internal_bit_string() const { - return _internal_has_bit_string() - ? *_impl_.node_.bit_string_ - : reinterpret_cast< ::pg_query::BitString&>(::pg_query::_BitString_default_instance_); +inline const ::pg_query::CreateTransformStmt& Node::_internal_create_transform_stmt() const { + return node_case() == kCreateTransformStmt ? *_impl_.node_.create_transform_stmt_ : reinterpret_cast<::pg_query::CreateTransformStmt&>(::pg_query::_CreateTransformStmt_default_instance_); } -inline const ::pg_query::BitString& Node::bit_string() const { - // @@protoc_insertion_point(field_get:pg_query.Node.bit_string) - return _internal_bit_string(); +inline const ::pg_query::CreateTransformStmt& Node::create_transform_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_transform_stmt) + return _internal_create_transform_stmt(); } -inline ::pg_query::BitString* Node::unsafe_arena_release_bit_string() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.bit_string) - if (_internal_has_bit_string()) { +inline ::pg_query::CreateTransformStmt* Node::unsafe_arena_release_create_transform_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_transform_stmt) + if (node_case() == kCreateTransformStmt) { clear_has_node(); - ::pg_query::BitString* temp = _impl_.node_.bit_string_; - _impl_.node_.bit_string_ = nullptr; + auto* temp = _impl_.node_.create_transform_stmt_; + _impl_.node_.create_transform_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_bit_string(::pg_query::BitString* bit_string) { +inline void Node::unsafe_arena_set_allocated_create_transform_stmt(::pg_query::CreateTransformStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (bit_string) { - set_has_bit_string(); - _impl_.node_.bit_string_ = bit_string; + if (value) { + set_has_create_transform_stmt(); + _impl_.node_.create_transform_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.bit_string) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_transform_stmt) } -inline ::pg_query::BitString* Node::_internal_mutable_bit_string() { - if (!_internal_has_bit_string()) { +inline ::pg_query::CreateTransformStmt* Node::_internal_mutable_create_transform_stmt() { + if (node_case() != kCreateTransformStmt) { clear_node(); - set_has_bit_string(); - _impl_.node_.bit_string_ = CreateMaybeMessage< ::pg_query::BitString >(GetArenaForAllocation()); + set_has_create_transform_stmt(); + _impl_.node_.create_transform_stmt_ = CreateMaybeMessage<::pg_query::CreateTransformStmt>(GetArena()); } - return _impl_.node_.bit_string_; + return _impl_.node_.create_transform_stmt_; } -inline ::pg_query::BitString* Node::mutable_bit_string() { - ::pg_query::BitString* _msg = _internal_mutable_bit_string(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.bit_string) +inline ::pg_query::CreateTransformStmt* Node::mutable_create_transform_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateTransformStmt* _msg = _internal_mutable_create_transform_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_transform_stmt) return _msg; } -// .pg_query.List list = 235 [json_name = "List"]; -inline bool Node::_internal_has_list() const { - return node_case() == kList; +// .pg_query.PrepareStmt prepare_stmt = 230 [json_name = "PrepareStmt"]; +inline bool Node::has_prepare_stmt() const { + return node_case() == kPrepareStmt; } -inline bool Node::has_list() const { - return _internal_has_list(); +inline bool Node::_internal_has_prepare_stmt() const { + return node_case() == kPrepareStmt; } -inline void Node::set_has_list() { - _impl_._oneof_case_[0] = kList; +inline void Node::set_has_prepare_stmt() { + _impl_._oneof_case_[0] = kPrepareStmt; } -inline void Node::clear_list() { - if (_internal_has_list()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.list_; +inline void Node::clear_prepare_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kPrepareStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.prepare_stmt_; } clear_has_node(); } } -inline ::pg_query::List* Node::release_list() { - // @@protoc_insertion_point(field_release:pg_query.Node.list) - if (_internal_has_list()) { +inline ::pg_query::PrepareStmt* Node::release_prepare_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.prepare_stmt) + if (node_case() == kPrepareStmt) { clear_has_node(); - ::pg_query::List* temp = _impl_.node_.list_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.prepare_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.list_ = nullptr; + _impl_.node_.prepare_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::List& Node::_internal_list() const { - return _internal_has_list() - ? *_impl_.node_.list_ - : reinterpret_cast< ::pg_query::List&>(::pg_query::_List_default_instance_); +inline const ::pg_query::PrepareStmt& Node::_internal_prepare_stmt() const { + return node_case() == kPrepareStmt ? *_impl_.node_.prepare_stmt_ : reinterpret_cast<::pg_query::PrepareStmt&>(::pg_query::_PrepareStmt_default_instance_); } -inline const ::pg_query::List& Node::list() const { - // @@protoc_insertion_point(field_get:pg_query.Node.list) - return _internal_list(); +inline const ::pg_query::PrepareStmt& Node::prepare_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.prepare_stmt) + return _internal_prepare_stmt(); } -inline ::pg_query::List* Node::unsafe_arena_release_list() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.list) - if (_internal_has_list()) { +inline ::pg_query::PrepareStmt* Node::unsafe_arena_release_prepare_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.prepare_stmt) + if (node_case() == kPrepareStmt) { clear_has_node(); - ::pg_query::List* temp = _impl_.node_.list_; - _impl_.node_.list_ = nullptr; + auto* temp = _impl_.node_.prepare_stmt_; + _impl_.node_.prepare_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_list(::pg_query::List* list) { +inline void Node::unsafe_arena_set_allocated_prepare_stmt(::pg_query::PrepareStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (list) { - set_has_list(); - _impl_.node_.list_ = list; + if (value) { + set_has_prepare_stmt(); + _impl_.node_.prepare_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.list) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.prepare_stmt) } -inline ::pg_query::List* Node::_internal_mutable_list() { - if (!_internal_has_list()) { +inline ::pg_query::PrepareStmt* Node::_internal_mutable_prepare_stmt() { + if (node_case() != kPrepareStmt) { clear_node(); - set_has_list(); - _impl_.node_.list_ = CreateMaybeMessage< ::pg_query::List >(GetArenaForAllocation()); + set_has_prepare_stmt(); + _impl_.node_.prepare_stmt_ = CreateMaybeMessage<::pg_query::PrepareStmt>(GetArena()); } - return _impl_.node_.list_; + return _impl_.node_.prepare_stmt_; } -inline ::pg_query::List* Node::mutable_list() { - ::pg_query::List* _msg = _internal_mutable_list(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.list) +inline ::pg_query::PrepareStmt* Node::mutable_prepare_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PrepareStmt* _msg = _internal_mutable_prepare_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.prepare_stmt) return _msg; } -// .pg_query.IntList int_list = 236 [json_name = "IntList"]; -inline bool Node::_internal_has_int_list() const { - return node_case() == kIntList; +// .pg_query.ExecuteStmt execute_stmt = 231 [json_name = "ExecuteStmt"]; +inline bool Node::has_execute_stmt() const { + return node_case() == kExecuteStmt; } -inline bool Node::has_int_list() const { - return _internal_has_int_list(); +inline bool Node::_internal_has_execute_stmt() const { + return node_case() == kExecuteStmt; } -inline void Node::set_has_int_list() { - _impl_._oneof_case_[0] = kIntList; +inline void Node::set_has_execute_stmt() { + _impl_._oneof_case_[0] = kExecuteStmt; } -inline void Node::clear_int_list() { - if (_internal_has_int_list()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.int_list_; +inline void Node::clear_execute_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kExecuteStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.execute_stmt_; } clear_has_node(); } } -inline ::pg_query::IntList* Node::release_int_list() { - // @@protoc_insertion_point(field_release:pg_query.Node.int_list) - if (_internal_has_int_list()) { +inline ::pg_query::ExecuteStmt* Node::release_execute_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.execute_stmt) + if (node_case() == kExecuteStmt) { clear_has_node(); - ::pg_query::IntList* temp = _impl_.node_.int_list_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.execute_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.int_list_ = nullptr; + _impl_.node_.execute_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::IntList& Node::_internal_int_list() const { - return _internal_has_int_list() - ? *_impl_.node_.int_list_ - : reinterpret_cast< ::pg_query::IntList&>(::pg_query::_IntList_default_instance_); +inline const ::pg_query::ExecuteStmt& Node::_internal_execute_stmt() const { + return node_case() == kExecuteStmt ? *_impl_.node_.execute_stmt_ : reinterpret_cast<::pg_query::ExecuteStmt&>(::pg_query::_ExecuteStmt_default_instance_); } -inline const ::pg_query::IntList& Node::int_list() const { - // @@protoc_insertion_point(field_get:pg_query.Node.int_list) - return _internal_int_list(); +inline const ::pg_query::ExecuteStmt& Node::execute_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.execute_stmt) + return _internal_execute_stmt(); } -inline ::pg_query::IntList* Node::unsafe_arena_release_int_list() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.int_list) - if (_internal_has_int_list()) { +inline ::pg_query::ExecuteStmt* Node::unsafe_arena_release_execute_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.execute_stmt) + if (node_case() == kExecuteStmt) { clear_has_node(); - ::pg_query::IntList* temp = _impl_.node_.int_list_; - _impl_.node_.int_list_ = nullptr; + auto* temp = _impl_.node_.execute_stmt_; + _impl_.node_.execute_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_int_list(::pg_query::IntList* int_list) { +inline void Node::unsafe_arena_set_allocated_execute_stmt(::pg_query::ExecuteStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (int_list) { - set_has_int_list(); - _impl_.node_.int_list_ = int_list; + if (value) { + set_has_execute_stmt(); + _impl_.node_.execute_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.int_list) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.execute_stmt) } -inline ::pg_query::IntList* Node::_internal_mutable_int_list() { - if (!_internal_has_int_list()) { +inline ::pg_query::ExecuteStmt* Node::_internal_mutable_execute_stmt() { + if (node_case() != kExecuteStmt) { clear_node(); - set_has_int_list(); - _impl_.node_.int_list_ = CreateMaybeMessage< ::pg_query::IntList >(GetArenaForAllocation()); + set_has_execute_stmt(); + _impl_.node_.execute_stmt_ = CreateMaybeMessage<::pg_query::ExecuteStmt>(GetArena()); } - return _impl_.node_.int_list_; + return _impl_.node_.execute_stmt_; } -inline ::pg_query::IntList* Node::mutable_int_list() { - ::pg_query::IntList* _msg = _internal_mutable_int_list(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.int_list) +inline ::pg_query::ExecuteStmt* Node::mutable_execute_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ExecuteStmt* _msg = _internal_mutable_execute_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.execute_stmt) return _msg; } -// .pg_query.OidList oid_list = 237 [json_name = "OidList"]; -inline bool Node::_internal_has_oid_list() const { - return node_case() == kOidList; +// .pg_query.DeallocateStmt deallocate_stmt = 232 [json_name = "DeallocateStmt"]; +inline bool Node::has_deallocate_stmt() const { + return node_case() == kDeallocateStmt; } -inline bool Node::has_oid_list() const { - return _internal_has_oid_list(); +inline bool Node::_internal_has_deallocate_stmt() const { + return node_case() == kDeallocateStmt; } -inline void Node::set_has_oid_list() { - _impl_._oneof_case_[0] = kOidList; +inline void Node::set_has_deallocate_stmt() { + _impl_._oneof_case_[0] = kDeallocateStmt; } -inline void Node::clear_oid_list() { - if (_internal_has_oid_list()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.oid_list_; +inline void Node::clear_deallocate_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDeallocateStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.deallocate_stmt_; } clear_has_node(); } } -inline ::pg_query::OidList* Node::release_oid_list() { - // @@protoc_insertion_point(field_release:pg_query.Node.oid_list) - if (_internal_has_oid_list()) { +inline ::pg_query::DeallocateStmt* Node::release_deallocate_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.deallocate_stmt) + if (node_case() == kDeallocateStmt) { clear_has_node(); - ::pg_query::OidList* temp = _impl_.node_.oid_list_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.deallocate_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.oid_list_ = nullptr; + _impl_.node_.deallocate_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::OidList& Node::_internal_oid_list() const { - return _internal_has_oid_list() - ? *_impl_.node_.oid_list_ - : reinterpret_cast< ::pg_query::OidList&>(::pg_query::_OidList_default_instance_); +inline const ::pg_query::DeallocateStmt& Node::_internal_deallocate_stmt() const { + return node_case() == kDeallocateStmt ? *_impl_.node_.deallocate_stmt_ : reinterpret_cast<::pg_query::DeallocateStmt&>(::pg_query::_DeallocateStmt_default_instance_); } -inline const ::pg_query::OidList& Node::oid_list() const { - // @@protoc_insertion_point(field_get:pg_query.Node.oid_list) - return _internal_oid_list(); +inline const ::pg_query::DeallocateStmt& Node::deallocate_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.deallocate_stmt) + return _internal_deallocate_stmt(); } -inline ::pg_query::OidList* Node::unsafe_arena_release_oid_list() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.oid_list) - if (_internal_has_oid_list()) { +inline ::pg_query::DeallocateStmt* Node::unsafe_arena_release_deallocate_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.deallocate_stmt) + if (node_case() == kDeallocateStmt) { clear_has_node(); - ::pg_query::OidList* temp = _impl_.node_.oid_list_; - _impl_.node_.oid_list_ = nullptr; + auto* temp = _impl_.node_.deallocate_stmt_; + _impl_.node_.deallocate_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_oid_list(::pg_query::OidList* oid_list) { +inline void Node::unsafe_arena_set_allocated_deallocate_stmt(::pg_query::DeallocateStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (oid_list) { - set_has_oid_list(); - _impl_.node_.oid_list_ = oid_list; + if (value) { + set_has_deallocate_stmt(); + _impl_.node_.deallocate_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.oid_list) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.deallocate_stmt) } -inline ::pg_query::OidList* Node::_internal_mutable_oid_list() { - if (!_internal_has_oid_list()) { +inline ::pg_query::DeallocateStmt* Node::_internal_mutable_deallocate_stmt() { + if (node_case() != kDeallocateStmt) { clear_node(); - set_has_oid_list(); - _impl_.node_.oid_list_ = CreateMaybeMessage< ::pg_query::OidList >(GetArenaForAllocation()); + set_has_deallocate_stmt(); + _impl_.node_.deallocate_stmt_ = CreateMaybeMessage<::pg_query::DeallocateStmt>(GetArena()); } - return _impl_.node_.oid_list_; + return _impl_.node_.deallocate_stmt_; } -inline ::pg_query::OidList* Node::mutable_oid_list() { - ::pg_query::OidList* _msg = _internal_mutable_oid_list(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.oid_list) +inline ::pg_query::DeallocateStmt* Node::mutable_deallocate_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DeallocateStmt* _msg = _internal_mutable_deallocate_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.deallocate_stmt) return _msg; } -// .pg_query.A_Const a_const = 238 [json_name = "A_Const"]; -inline bool Node::_internal_has_a_const() const { - return node_case() == kAConst; +// .pg_query.DropOwnedStmt drop_owned_stmt = 233 [json_name = "DropOwnedStmt"]; +inline bool Node::has_drop_owned_stmt() const { + return node_case() == kDropOwnedStmt; } -inline bool Node::has_a_const() const { - return _internal_has_a_const(); +inline bool Node::_internal_has_drop_owned_stmt() const { + return node_case() == kDropOwnedStmt; } -inline void Node::set_has_a_const() { - _impl_._oneof_case_[0] = kAConst; +inline void Node::set_has_drop_owned_stmt() { + _impl_._oneof_case_[0] = kDropOwnedStmt; } -inline void Node::clear_a_const() { - if (_internal_has_a_const()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.node_.a_const_; +inline void Node::clear_drop_owned_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDropOwnedStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.drop_owned_stmt_; } clear_has_node(); } } -inline ::pg_query::A_Const* Node::release_a_const() { - // @@protoc_insertion_point(field_release:pg_query.Node.a_const) - if (_internal_has_a_const()) { +inline ::pg_query::DropOwnedStmt* Node::release_drop_owned_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.drop_owned_stmt) + if (node_case() == kDropOwnedStmt) { clear_has_node(); - ::pg_query::A_Const* temp = _impl_.node_.a_const_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* temp = _impl_.node_.drop_owned_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.node_.a_const_ = nullptr; + _impl_.node_.drop_owned_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::A_Const& Node::_internal_a_const() const { - return _internal_has_a_const() - ? *_impl_.node_.a_const_ - : reinterpret_cast< ::pg_query::A_Const&>(::pg_query::_A_Const_default_instance_); +inline const ::pg_query::DropOwnedStmt& Node::_internal_drop_owned_stmt() const { + return node_case() == kDropOwnedStmt ? *_impl_.node_.drop_owned_stmt_ : reinterpret_cast<::pg_query::DropOwnedStmt&>(::pg_query::_DropOwnedStmt_default_instance_); } -inline const ::pg_query::A_Const& Node::a_const() const { - // @@protoc_insertion_point(field_get:pg_query.Node.a_const) - return _internal_a_const(); +inline const ::pg_query::DropOwnedStmt& Node::drop_owned_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.drop_owned_stmt) + return _internal_drop_owned_stmt(); } -inline ::pg_query::A_Const* Node::unsafe_arena_release_a_const() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_const) - if (_internal_has_a_const()) { +inline ::pg_query::DropOwnedStmt* Node::unsafe_arena_release_drop_owned_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_owned_stmt) + if (node_case() == kDropOwnedStmt) { clear_has_node(); - ::pg_query::A_Const* temp = _impl_.node_.a_const_; - _impl_.node_.a_const_ = nullptr; + auto* temp = _impl_.node_.drop_owned_stmt_; + _impl_.node_.drop_owned_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void Node::unsafe_arena_set_allocated_a_const(::pg_query::A_Const* a_const) { +inline void Node::unsafe_arena_set_allocated_drop_owned_stmt(::pg_query::DropOwnedStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. clear_node(); - if (a_const) { - set_has_a_const(); - _impl_.node_.a_const_ = a_const; + if (value) { + set_has_drop_owned_stmt(); + _impl_.node_.drop_owned_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_const) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_owned_stmt) } -inline ::pg_query::A_Const* Node::_internal_mutable_a_const() { - if (!_internal_has_a_const()) { +inline ::pg_query::DropOwnedStmt* Node::_internal_mutable_drop_owned_stmt() { + if (node_case() != kDropOwnedStmt) { clear_node(); - set_has_a_const(); - _impl_.node_.a_const_ = CreateMaybeMessage< ::pg_query::A_Const >(GetArenaForAllocation()); + set_has_drop_owned_stmt(); + _impl_.node_.drop_owned_stmt_ = CreateMaybeMessage<::pg_query::DropOwnedStmt>(GetArena()); } - return _impl_.node_.a_const_; + return _impl_.node_.drop_owned_stmt_; } -inline ::pg_query::A_Const* Node::mutable_a_const() { - ::pg_query::A_Const* _msg = _internal_mutable_a_const(); - // @@protoc_insertion_point(field_mutable:pg_query.Node.a_const) +inline ::pg_query::DropOwnedStmt* Node::mutable_drop_owned_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DropOwnedStmt* _msg = _internal_mutable_drop_owned_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_owned_stmt) return _msg; } -inline bool Node::has_node() const { - return node_case() != NODE_NOT_SET; -} -inline void Node::clear_has_node() { - _impl_._oneof_case_[0] = NODE_NOT_SET; -} -inline Node::NodeCase Node::node_case() const { - return Node::NodeCase(_impl_._oneof_case_[0]); -} -// ------------------------------------------------------------------- - -// Integer - -// int32 ival = 1; -inline void Integer::clear_ival() { - _impl_.ival_ = 0; -} -inline int32_t Integer::_internal_ival() const { - return _impl_.ival_; -} -inline int32_t Integer::ival() const { - // @@protoc_insertion_point(field_get:pg_query.Integer.ival) - return _internal_ival(); -} -inline void Integer::_internal_set_ival(int32_t value) { - - _impl_.ival_ = value; -} -inline void Integer::set_ival(int32_t value) { - _internal_set_ival(value); - // @@protoc_insertion_point(field_set:pg_query.Integer.ival) -} - -// ------------------------------------------------------------------- - -// Float - -// string fval = 1; -inline void Float::clear_fval() { - _impl_.fval_.ClearToEmpty(); -} -inline const std::string& Float::fval() const { - // @@protoc_insertion_point(field_get:pg_query.Float.fval) - return _internal_fval(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void Float::set_fval(ArgT0&& arg0, ArgT... args) { - - _impl_.fval_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Float.fval) -} -inline std::string* Float::mutable_fval() { - std::string* _s = _internal_mutable_fval(); - // @@protoc_insertion_point(field_mutable:pg_query.Float.fval) - return _s; -} -inline const std::string& Float::_internal_fval() const { - return _impl_.fval_.Get(); -} -inline void Float::_internal_set_fval(const std::string& value) { - - _impl_.fval_.Set(value, GetArenaForAllocation()); +// .pg_query.ReassignOwnedStmt reassign_owned_stmt = 234 [json_name = "ReassignOwnedStmt"]; +inline bool Node::has_reassign_owned_stmt() const { + return node_case() == kReassignOwnedStmt; } -inline std::string* Float::_internal_mutable_fval() { - - return _impl_.fval_.Mutable(GetArenaForAllocation()); +inline bool Node::_internal_has_reassign_owned_stmt() const { + return node_case() == kReassignOwnedStmt; } -inline std::string* Float::release_fval() { - // @@protoc_insertion_point(field_release:pg_query.Float.fval) - return _impl_.fval_.Release(); +inline void Node::set_has_reassign_owned_stmt() { + _impl_._oneof_case_[0] = kReassignOwnedStmt; } -inline void Float::set_allocated_fval(std::string* fval) { - if (fval != nullptr) { - - } else { - - } - _impl_.fval_.SetAllocated(fval, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.fval_.IsDefault()) { - _impl_.fval_.Set("", GetArenaForAllocation()); +inline void Node::clear_reassign_owned_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kReassignOwnedStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.reassign_owned_stmt_; + } + clear_has_node(); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Float.fval) -} - -// ------------------------------------------------------------------- - -// Boolean - -// bool boolval = 1; -inline void Boolean::clear_boolval() { - _impl_.boolval_ = false; -} -inline bool Boolean::_internal_boolval() const { - return _impl_.boolval_; -} -inline bool Boolean::boolval() const { - // @@protoc_insertion_point(field_get:pg_query.Boolean.boolval) - return _internal_boolval(); } -inline void Boolean::_internal_set_boolval(bool value) { - - _impl_.boolval_ = value; -} -inline void Boolean::set_boolval(bool value) { - _internal_set_boolval(value); - // @@protoc_insertion_point(field_set:pg_query.Boolean.boolval) -} - -// ------------------------------------------------------------------- - -// String - -// string sval = 1; -inline void String::clear_sval() { - _impl_.sval_.ClearToEmpty(); -} -inline const std::string& String::sval() const { - // @@protoc_insertion_point(field_get:pg_query.String.sval) - return _internal_sval(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void String::set_sval(ArgT0&& arg0, ArgT... args) { - - _impl_.sval_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.String.sval) -} -inline std::string* String::mutable_sval() { - std::string* _s = _internal_mutable_sval(); - // @@protoc_insertion_point(field_mutable:pg_query.String.sval) - return _s; -} -inline const std::string& String::_internal_sval() const { - return _impl_.sval_.Get(); -} -inline void String::_internal_set_sval(const std::string& value) { - - _impl_.sval_.Set(value, GetArenaForAllocation()); -} -inline std::string* String::_internal_mutable_sval() { - - return _impl_.sval_.Mutable(GetArenaForAllocation()); -} -inline std::string* String::release_sval() { - // @@protoc_insertion_point(field_release:pg_query.String.sval) - return _impl_.sval_.Release(); -} -inline void String::set_allocated_sval(std::string* sval) { - if (sval != nullptr) { - +inline ::pg_query::ReassignOwnedStmt* Node::release_reassign_owned_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.reassign_owned_stmt) + if (node_case() == kReassignOwnedStmt) { + clear_has_node(); + auto* temp = _impl_.node_.reassign_owned_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.reassign_owned_stmt_ = nullptr; + return temp; } else { - - } - _impl_.sval_.SetAllocated(sval, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.sval_.IsDefault()) { - _impl_.sval_.Set("", GetArenaForAllocation()); + return nullptr; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.String.sval) -} - -// ------------------------------------------------------------------- - -// BitString - -// string bsval = 1; -inline void BitString::clear_bsval() { - _impl_.bsval_.ClearToEmpty(); -} -inline const std::string& BitString::bsval() const { - // @@protoc_insertion_point(field_get:pg_query.BitString.bsval) - return _internal_bsval(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void BitString::set_bsval(ArgT0&& arg0, ArgT... args) { - - _impl_.bsval_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.BitString.bsval) -} -inline std::string* BitString::mutable_bsval() { - std::string* _s = _internal_mutable_bsval(); - // @@protoc_insertion_point(field_mutable:pg_query.BitString.bsval) - return _s; -} -inline const std::string& BitString::_internal_bsval() const { - return _impl_.bsval_.Get(); -} -inline void BitString::_internal_set_bsval(const std::string& value) { - - _impl_.bsval_.Set(value, GetArenaForAllocation()); } -inline std::string* BitString::_internal_mutable_bsval() { - - return _impl_.bsval_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::ReassignOwnedStmt& Node::_internal_reassign_owned_stmt() const { + return node_case() == kReassignOwnedStmt ? *_impl_.node_.reassign_owned_stmt_ : reinterpret_cast<::pg_query::ReassignOwnedStmt&>(::pg_query::_ReassignOwnedStmt_default_instance_); } -inline std::string* BitString::release_bsval() { - // @@protoc_insertion_point(field_release:pg_query.BitString.bsval) - return _impl_.bsval_.Release(); +inline const ::pg_query::ReassignOwnedStmt& Node::reassign_owned_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.reassign_owned_stmt) + return _internal_reassign_owned_stmt(); } -inline void BitString::set_allocated_bsval(std::string* bsval) { - if (bsval != nullptr) { - +inline ::pg_query::ReassignOwnedStmt* Node::unsafe_arena_release_reassign_owned_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.reassign_owned_stmt) + if (node_case() == kReassignOwnedStmt) { + clear_has_node(); + auto* temp = _impl_.node_.reassign_owned_stmt_; + _impl_.node_.reassign_owned_stmt_ = nullptr; + return temp; } else { - - } - _impl_.bsval_.SetAllocated(bsval, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.bsval_.IsDefault()) { - _impl_.bsval_.Set("", GetArenaForAllocation()); + return nullptr; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.BitString.bsval) -} - -// ------------------------------------------------------------------- - -// List - -// repeated .pg_query.Node items = 1; -inline int List::_internal_items_size() const { - return _impl_.items_.size(); -} -inline int List::items_size() const { - return _internal_items_size(); -} -inline void List::clear_items() { - _impl_.items_.Clear(); -} -inline ::pg_query::Node* List::mutable_items(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.List.items) - return _impl_.items_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -List::mutable_items() { - // @@protoc_insertion_point(field_mutable_list:pg_query.List.items) - return &_impl_.items_; -} -inline const ::pg_query::Node& List::_internal_items(int index) const { - return _impl_.items_.Get(index); -} -inline const ::pg_query::Node& List::items(int index) const { - // @@protoc_insertion_point(field_get:pg_query.List.items) - return _internal_items(index); -} -inline ::pg_query::Node* List::_internal_add_items() { - return _impl_.items_.Add(); -} -inline ::pg_query::Node* List::add_items() { - ::pg_query::Node* _add = _internal_add_items(); - // @@protoc_insertion_point(field_add:pg_query.List.items) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -List::items() const { - // @@protoc_insertion_point(field_list:pg_query.List.items) - return _impl_.items_; -} - -// ------------------------------------------------------------------- - -// OidList - -// repeated .pg_query.Node items = 1; -inline int OidList::_internal_items_size() const { - return _impl_.items_.size(); -} -inline int OidList::items_size() const { - return _internal_items_size(); -} -inline void OidList::clear_items() { - _impl_.items_.Clear(); -} -inline ::pg_query::Node* OidList::mutable_items(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.OidList.items) - return _impl_.items_.Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -OidList::mutable_items() { - // @@protoc_insertion_point(field_mutable_list:pg_query.OidList.items) - return &_impl_.items_; -} -inline const ::pg_query::Node& OidList::_internal_items(int index) const { - return _impl_.items_.Get(index); -} -inline const ::pg_query::Node& OidList::items(int index) const { - // @@protoc_insertion_point(field_get:pg_query.OidList.items) - return _internal_items(index); -} -inline ::pg_query::Node* OidList::_internal_add_items() { - return _impl_.items_.Add(); -} -inline ::pg_query::Node* OidList::add_items() { - ::pg_query::Node* _add = _internal_add_items(); - // @@protoc_insertion_point(field_add:pg_query.OidList.items) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -OidList::items() const { - // @@protoc_insertion_point(field_list:pg_query.OidList.items) - return _impl_.items_; -} - -// ------------------------------------------------------------------- - -// IntList - -// repeated .pg_query.Node items = 1; -inline int IntList::_internal_items_size() const { - return _impl_.items_.size(); -} -inline int IntList::items_size() const { - return _internal_items_size(); -} -inline void IntList::clear_items() { - _impl_.items_.Clear(); -} -inline ::pg_query::Node* IntList::mutable_items(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IntList.items) - return _impl_.items_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IntList::mutable_items() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IntList.items) - return &_impl_.items_; -} -inline const ::pg_query::Node& IntList::_internal_items(int index) const { - return _impl_.items_.Get(index); -} -inline const ::pg_query::Node& IntList::items(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IntList.items) - return _internal_items(index); -} -inline ::pg_query::Node* IntList::_internal_add_items() { - return _impl_.items_.Add(); +inline void Node::unsafe_arena_set_allocated_reassign_owned_stmt(::pg_query::ReassignOwnedStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_reassign_owned_stmt(); + _impl_.node_.reassign_owned_stmt_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.reassign_owned_stmt) } -inline ::pg_query::Node* IntList::add_items() { - ::pg_query::Node* _add = _internal_add_items(); - // @@protoc_insertion_point(field_add:pg_query.IntList.items) - return _add; +inline ::pg_query::ReassignOwnedStmt* Node::_internal_mutable_reassign_owned_stmt() { + if (node_case() != kReassignOwnedStmt) { + clear_node(); + set_has_reassign_owned_stmt(); + _impl_.node_.reassign_owned_stmt_ = CreateMaybeMessage<::pg_query::ReassignOwnedStmt>(GetArena()); + } + return _impl_.node_.reassign_owned_stmt_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IntList::items() const { - // @@protoc_insertion_point(field_list:pg_query.IntList.items) - return _impl_.items_; +inline ::pg_query::ReassignOwnedStmt* Node::mutable_reassign_owned_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ReassignOwnedStmt* _msg = _internal_mutable_reassign_owned_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.reassign_owned_stmt) + return _msg; } -// ------------------------------------------------------------------- - -// A_Const - -// .pg_query.Integer ival = 1; -inline bool A_Const::_internal_has_ival() const { - return val_case() == kIval; +// .pg_query.AlterTSDictionaryStmt alter_tsdictionary_stmt = 235 [json_name = "AlterTSDictionaryStmt"]; +inline bool Node::has_alter_tsdictionary_stmt() const { + return node_case() == kAlterTsdictionaryStmt; } -inline bool A_Const::has_ival() const { - return _internal_has_ival(); +inline bool Node::_internal_has_alter_tsdictionary_stmt() const { + return node_case() == kAlterTsdictionaryStmt; } -inline void A_Const::set_has_ival() { - _impl_._oneof_case_[0] = kIval; +inline void Node::set_has_alter_tsdictionary_stmt() { + _impl_._oneof_case_[0] = kAlterTsdictionaryStmt; } -inline void A_Const::clear_ival() { - if (_internal_has_ival()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.val_.ival_; +inline void Node::clear_alter_tsdictionary_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterTsdictionaryStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_tsdictionary_stmt_; } - clear_has_val(); + clear_has_node(); } } -inline ::pg_query::Integer* A_Const::release_ival() { - // @@protoc_insertion_point(field_release:pg_query.A_Const.ival) - if (_internal_has_ival()) { - clear_has_val(); - ::pg_query::Integer* temp = _impl_.val_.ival_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline ::pg_query::AlterTSDictionaryStmt* Node::release_alter_tsdictionary_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_tsdictionary_stmt) + if (node_case() == kAlterTsdictionaryStmt) { + clear_has_node(); + auto* temp = _impl_.node_.alter_tsdictionary_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.val_.ival_ = nullptr; + _impl_.node_.alter_tsdictionary_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::Integer& A_Const::_internal_ival() const { - return _internal_has_ival() - ? *_impl_.val_.ival_ - : reinterpret_cast< ::pg_query::Integer&>(::pg_query::_Integer_default_instance_); +inline const ::pg_query::AlterTSDictionaryStmt& Node::_internal_alter_tsdictionary_stmt() const { + return node_case() == kAlterTsdictionaryStmt ? *_impl_.node_.alter_tsdictionary_stmt_ : reinterpret_cast<::pg_query::AlterTSDictionaryStmt&>(::pg_query::_AlterTSDictionaryStmt_default_instance_); } -inline const ::pg_query::Integer& A_Const::ival() const { - // @@protoc_insertion_point(field_get:pg_query.A_Const.ival) - return _internal_ival(); +inline const ::pg_query::AlterTSDictionaryStmt& Node::alter_tsdictionary_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_tsdictionary_stmt) + return _internal_alter_tsdictionary_stmt(); } -inline ::pg_query::Integer* A_Const::unsafe_arena_release_ival() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.ival) - if (_internal_has_ival()) { - clear_has_val(); - ::pg_query::Integer* temp = _impl_.val_.ival_; - _impl_.val_.ival_ = nullptr; +inline ::pg_query::AlterTSDictionaryStmt* Node::unsafe_arena_release_alter_tsdictionary_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_tsdictionary_stmt) + if (node_case() == kAlterTsdictionaryStmt) { + clear_has_node(); + auto* temp = _impl_.node_.alter_tsdictionary_stmt_; + _impl_.node_.alter_tsdictionary_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void A_Const::unsafe_arena_set_allocated_ival(::pg_query::Integer* ival) { - clear_val(); - if (ival) { - set_has_ival(); - _impl_.val_.ival_ = ival; +inline void Node::unsafe_arena_set_allocated_alter_tsdictionary_stmt(::pg_query::AlterTSDictionaryStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_alter_tsdictionary_stmt(); + _impl_.node_.alter_tsdictionary_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.ival) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_tsdictionary_stmt) } -inline ::pg_query::Integer* A_Const::_internal_mutable_ival() { - if (!_internal_has_ival()) { - clear_val(); - set_has_ival(); - _impl_.val_.ival_ = CreateMaybeMessage< ::pg_query::Integer >(GetArenaForAllocation()); +inline ::pg_query::AlterTSDictionaryStmt* Node::_internal_mutable_alter_tsdictionary_stmt() { + if (node_case() != kAlterTsdictionaryStmt) { + clear_node(); + set_has_alter_tsdictionary_stmt(); + _impl_.node_.alter_tsdictionary_stmt_ = CreateMaybeMessage<::pg_query::AlterTSDictionaryStmt>(GetArena()); } - return _impl_.val_.ival_; + return _impl_.node_.alter_tsdictionary_stmt_; } -inline ::pg_query::Integer* A_Const::mutable_ival() { - ::pg_query::Integer* _msg = _internal_mutable_ival(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Const.ival) +inline ::pg_query::AlterTSDictionaryStmt* Node::mutable_alter_tsdictionary_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterTSDictionaryStmt* _msg = _internal_mutable_alter_tsdictionary_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_tsdictionary_stmt) return _msg; } -// .pg_query.Float fval = 2; -inline bool A_Const::_internal_has_fval() const { - return val_case() == kFval; +// .pg_query.AlterTSConfigurationStmt alter_tsconfiguration_stmt = 236 [json_name = "AlterTSConfigurationStmt"]; +inline bool Node::has_alter_tsconfiguration_stmt() const { + return node_case() == kAlterTsconfigurationStmt; } -inline bool A_Const::has_fval() const { - return _internal_has_fval(); +inline bool Node::_internal_has_alter_tsconfiguration_stmt() const { + return node_case() == kAlterTsconfigurationStmt; } -inline void A_Const::set_has_fval() { - _impl_._oneof_case_[0] = kFval; +inline void Node::set_has_alter_tsconfiguration_stmt() { + _impl_._oneof_case_[0] = kAlterTsconfigurationStmt; } -inline void A_Const::clear_fval() { - if (_internal_has_fval()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.val_.fval_; +inline void Node::clear_alter_tsconfiguration_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterTsconfigurationStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_tsconfiguration_stmt_; } - clear_has_val(); + clear_has_node(); } } -inline ::pg_query::Float* A_Const::release_fval() { - // @@protoc_insertion_point(field_release:pg_query.A_Const.fval) - if (_internal_has_fval()) { - clear_has_val(); - ::pg_query::Float* temp = _impl_.val_.fval_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline ::pg_query::AlterTSConfigurationStmt* Node::release_alter_tsconfiguration_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_tsconfiguration_stmt) + if (node_case() == kAlterTsconfigurationStmt) { + clear_has_node(); + auto* temp = _impl_.node_.alter_tsconfiguration_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.val_.fval_ = nullptr; + _impl_.node_.alter_tsconfiguration_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::Float& A_Const::_internal_fval() const { - return _internal_has_fval() - ? *_impl_.val_.fval_ - : reinterpret_cast< ::pg_query::Float&>(::pg_query::_Float_default_instance_); +inline const ::pg_query::AlterTSConfigurationStmt& Node::_internal_alter_tsconfiguration_stmt() const { + return node_case() == kAlterTsconfigurationStmt ? *_impl_.node_.alter_tsconfiguration_stmt_ : reinterpret_cast<::pg_query::AlterTSConfigurationStmt&>(::pg_query::_AlterTSConfigurationStmt_default_instance_); } -inline const ::pg_query::Float& A_Const::fval() const { - // @@protoc_insertion_point(field_get:pg_query.A_Const.fval) - return _internal_fval(); +inline const ::pg_query::AlterTSConfigurationStmt& Node::alter_tsconfiguration_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_tsconfiguration_stmt) + return _internal_alter_tsconfiguration_stmt(); } -inline ::pg_query::Float* A_Const::unsafe_arena_release_fval() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.fval) - if (_internal_has_fval()) { - clear_has_val(); - ::pg_query::Float* temp = _impl_.val_.fval_; - _impl_.val_.fval_ = nullptr; +inline ::pg_query::AlterTSConfigurationStmt* Node::unsafe_arena_release_alter_tsconfiguration_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_tsconfiguration_stmt) + if (node_case() == kAlterTsconfigurationStmt) { + clear_has_node(); + auto* temp = _impl_.node_.alter_tsconfiguration_stmt_; + _impl_.node_.alter_tsconfiguration_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void A_Const::unsafe_arena_set_allocated_fval(::pg_query::Float* fval) { - clear_val(); - if (fval) { - set_has_fval(); - _impl_.val_.fval_ = fval; +inline void Node::unsafe_arena_set_allocated_alter_tsconfiguration_stmt(::pg_query::AlterTSConfigurationStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_alter_tsconfiguration_stmt(); + _impl_.node_.alter_tsconfiguration_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.fval) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_tsconfiguration_stmt) } -inline ::pg_query::Float* A_Const::_internal_mutable_fval() { - if (!_internal_has_fval()) { - clear_val(); - set_has_fval(); - _impl_.val_.fval_ = CreateMaybeMessage< ::pg_query::Float >(GetArenaForAllocation()); +inline ::pg_query::AlterTSConfigurationStmt* Node::_internal_mutable_alter_tsconfiguration_stmt() { + if (node_case() != kAlterTsconfigurationStmt) { + clear_node(); + set_has_alter_tsconfiguration_stmt(); + _impl_.node_.alter_tsconfiguration_stmt_ = CreateMaybeMessage<::pg_query::AlterTSConfigurationStmt>(GetArena()); } - return _impl_.val_.fval_; + return _impl_.node_.alter_tsconfiguration_stmt_; } -inline ::pg_query::Float* A_Const::mutable_fval() { - ::pg_query::Float* _msg = _internal_mutable_fval(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Const.fval) +inline ::pg_query::AlterTSConfigurationStmt* Node::mutable_alter_tsconfiguration_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterTSConfigurationStmt* _msg = _internal_mutable_alter_tsconfiguration_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_tsconfiguration_stmt) return _msg; } -// .pg_query.Boolean boolval = 3; -inline bool A_Const::_internal_has_boolval() const { - return val_case() == kBoolval; +// .pg_query.PublicationTable publication_table = 237 [json_name = "PublicationTable"]; +inline bool Node::has_publication_table() const { + return node_case() == kPublicationTable; } -inline bool A_Const::has_boolval() const { - return _internal_has_boolval(); +inline bool Node::_internal_has_publication_table() const { + return node_case() == kPublicationTable; } -inline void A_Const::set_has_boolval() { - _impl_._oneof_case_[0] = kBoolval; +inline void Node::set_has_publication_table() { + _impl_._oneof_case_[0] = kPublicationTable; } -inline void A_Const::clear_boolval() { - if (_internal_has_boolval()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.val_.boolval_; +inline void Node::clear_publication_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kPublicationTable) { + if (GetArena() == nullptr) { + delete _impl_.node_.publication_table_; } - clear_has_val(); + clear_has_node(); } } -inline ::pg_query::Boolean* A_Const::release_boolval() { - // @@protoc_insertion_point(field_release:pg_query.A_Const.boolval) - if (_internal_has_boolval()) { - clear_has_val(); - ::pg_query::Boolean* temp = _impl_.val_.boolval_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline ::pg_query::PublicationTable* Node::release_publication_table() { + // @@protoc_insertion_point(field_release:pg_query.Node.publication_table) + if (node_case() == kPublicationTable) { + clear_has_node(); + auto* temp = _impl_.node_.publication_table_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.val_.boolval_ = nullptr; + _impl_.node_.publication_table_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::Boolean& A_Const::_internal_boolval() const { - return _internal_has_boolval() - ? *_impl_.val_.boolval_ - : reinterpret_cast< ::pg_query::Boolean&>(::pg_query::_Boolean_default_instance_); +inline const ::pg_query::PublicationTable& Node::_internal_publication_table() const { + return node_case() == kPublicationTable ? *_impl_.node_.publication_table_ : reinterpret_cast<::pg_query::PublicationTable&>(::pg_query::_PublicationTable_default_instance_); } -inline const ::pg_query::Boolean& A_Const::boolval() const { - // @@protoc_insertion_point(field_get:pg_query.A_Const.boolval) - return _internal_boolval(); +inline const ::pg_query::PublicationTable& Node::publication_table() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.publication_table) + return _internal_publication_table(); } -inline ::pg_query::Boolean* A_Const::unsafe_arena_release_boolval() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.boolval) - if (_internal_has_boolval()) { - clear_has_val(); - ::pg_query::Boolean* temp = _impl_.val_.boolval_; - _impl_.val_.boolval_ = nullptr; +inline ::pg_query::PublicationTable* Node::unsafe_arena_release_publication_table() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.publication_table) + if (node_case() == kPublicationTable) { + clear_has_node(); + auto* temp = _impl_.node_.publication_table_; + _impl_.node_.publication_table_ = nullptr; return temp; } else { return nullptr; } } -inline void A_Const::unsafe_arena_set_allocated_boolval(::pg_query::Boolean* boolval) { - clear_val(); - if (boolval) { - set_has_boolval(); - _impl_.val_.boolval_ = boolval; +inline void Node::unsafe_arena_set_allocated_publication_table(::pg_query::PublicationTable* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_publication_table(); + _impl_.node_.publication_table_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.boolval) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.publication_table) } -inline ::pg_query::Boolean* A_Const::_internal_mutable_boolval() { - if (!_internal_has_boolval()) { - clear_val(); - set_has_boolval(); - _impl_.val_.boolval_ = CreateMaybeMessage< ::pg_query::Boolean >(GetArenaForAllocation()); +inline ::pg_query::PublicationTable* Node::_internal_mutable_publication_table() { + if (node_case() != kPublicationTable) { + clear_node(); + set_has_publication_table(); + _impl_.node_.publication_table_ = CreateMaybeMessage<::pg_query::PublicationTable>(GetArena()); } - return _impl_.val_.boolval_; + return _impl_.node_.publication_table_; } -inline ::pg_query::Boolean* A_Const::mutable_boolval() { - ::pg_query::Boolean* _msg = _internal_mutable_boolval(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Const.boolval) +inline ::pg_query::PublicationTable* Node::mutable_publication_table() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PublicationTable* _msg = _internal_mutable_publication_table(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.publication_table) return _msg; } -// .pg_query.String sval = 4; -inline bool A_Const::_internal_has_sval() const { - return val_case() == kSval; +// .pg_query.PublicationObjSpec publication_obj_spec = 238 [json_name = "PublicationObjSpec"]; +inline bool Node::has_publication_obj_spec() const { + return node_case() == kPublicationObjSpec; } -inline bool A_Const::has_sval() const { - return _internal_has_sval(); +inline bool Node::_internal_has_publication_obj_spec() const { + return node_case() == kPublicationObjSpec; } -inline void A_Const::set_has_sval() { - _impl_._oneof_case_[0] = kSval; +inline void Node::set_has_publication_obj_spec() { + _impl_._oneof_case_[0] = kPublicationObjSpec; } -inline void A_Const::clear_sval() { - if (_internal_has_sval()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.val_.sval_; +inline void Node::clear_publication_obj_spec() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kPublicationObjSpec) { + if (GetArena() == nullptr) { + delete _impl_.node_.publication_obj_spec_; } - clear_has_val(); + clear_has_node(); } } -inline ::pg_query::String* A_Const::release_sval() { - // @@protoc_insertion_point(field_release:pg_query.A_Const.sval) - if (_internal_has_sval()) { - clear_has_val(); - ::pg_query::String* temp = _impl_.val_.sval_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline ::pg_query::PublicationObjSpec* Node::release_publication_obj_spec() { + // @@protoc_insertion_point(field_release:pg_query.Node.publication_obj_spec) + if (node_case() == kPublicationObjSpec) { + clear_has_node(); + auto* temp = _impl_.node_.publication_obj_spec_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.val_.sval_ = nullptr; + _impl_.node_.publication_obj_spec_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::String& A_Const::_internal_sval() const { - return _internal_has_sval() - ? *_impl_.val_.sval_ - : reinterpret_cast< ::pg_query::String&>(::pg_query::_String_default_instance_); +inline const ::pg_query::PublicationObjSpec& Node::_internal_publication_obj_spec() const { + return node_case() == kPublicationObjSpec ? *_impl_.node_.publication_obj_spec_ : reinterpret_cast<::pg_query::PublicationObjSpec&>(::pg_query::_PublicationObjSpec_default_instance_); } -inline const ::pg_query::String& A_Const::sval() const { - // @@protoc_insertion_point(field_get:pg_query.A_Const.sval) - return _internal_sval(); +inline const ::pg_query::PublicationObjSpec& Node::publication_obj_spec() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.publication_obj_spec) + return _internal_publication_obj_spec(); } -inline ::pg_query::String* A_Const::unsafe_arena_release_sval() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.sval) - if (_internal_has_sval()) { - clear_has_val(); - ::pg_query::String* temp = _impl_.val_.sval_; - _impl_.val_.sval_ = nullptr; +inline ::pg_query::PublicationObjSpec* Node::unsafe_arena_release_publication_obj_spec() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.publication_obj_spec) + if (node_case() == kPublicationObjSpec) { + clear_has_node(); + auto* temp = _impl_.node_.publication_obj_spec_; + _impl_.node_.publication_obj_spec_ = nullptr; return temp; } else { return nullptr; } } -inline void A_Const::unsafe_arena_set_allocated_sval(::pg_query::String* sval) { - clear_val(); - if (sval) { - set_has_sval(); - _impl_.val_.sval_ = sval; +inline void Node::unsafe_arena_set_allocated_publication_obj_spec(::pg_query::PublicationObjSpec* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_publication_obj_spec(); + _impl_.node_.publication_obj_spec_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.sval) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.publication_obj_spec) } -inline ::pg_query::String* A_Const::_internal_mutable_sval() { - if (!_internal_has_sval()) { - clear_val(); - set_has_sval(); - _impl_.val_.sval_ = CreateMaybeMessage< ::pg_query::String >(GetArenaForAllocation()); +inline ::pg_query::PublicationObjSpec* Node::_internal_mutable_publication_obj_spec() { + if (node_case() != kPublicationObjSpec) { + clear_node(); + set_has_publication_obj_spec(); + _impl_.node_.publication_obj_spec_ = CreateMaybeMessage<::pg_query::PublicationObjSpec>(GetArena()); } - return _impl_.val_.sval_; + return _impl_.node_.publication_obj_spec_; } -inline ::pg_query::String* A_Const::mutable_sval() { - ::pg_query::String* _msg = _internal_mutable_sval(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Const.sval) +inline ::pg_query::PublicationObjSpec* Node::mutable_publication_obj_spec() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PublicationObjSpec* _msg = _internal_mutable_publication_obj_spec(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.publication_obj_spec) return _msg; } -// .pg_query.BitString bsval = 5; -inline bool A_Const::_internal_has_bsval() const { - return val_case() == kBsval; +// .pg_query.CreatePublicationStmt create_publication_stmt = 239 [json_name = "CreatePublicationStmt"]; +inline bool Node::has_create_publication_stmt() const { + return node_case() == kCreatePublicationStmt; } -inline bool A_Const::has_bsval() const { - return _internal_has_bsval(); +inline bool Node::_internal_has_create_publication_stmt() const { + return node_case() == kCreatePublicationStmt; } -inline void A_Const::set_has_bsval() { - _impl_._oneof_case_[0] = kBsval; +inline void Node::set_has_create_publication_stmt() { + _impl_._oneof_case_[0] = kCreatePublicationStmt; } -inline void A_Const::clear_bsval() { - if (_internal_has_bsval()) { - if (GetArenaForAllocation() == nullptr) { - delete _impl_.val_.bsval_; +inline void Node::clear_create_publication_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreatePublicationStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_publication_stmt_; } - clear_has_val(); + clear_has_node(); } } -inline ::pg_query::BitString* A_Const::release_bsval() { - // @@protoc_insertion_point(field_release:pg_query.A_Const.bsval) - if (_internal_has_bsval()) { - clear_has_val(); - ::pg_query::BitString* temp = _impl_.val_.bsval_; - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline ::pg_query::CreatePublicationStmt* Node::release_create_publication_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_publication_stmt) + if (node_case() == kCreatePublicationStmt) { + clear_has_node(); + auto* temp = _impl_.node_.create_publication_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - _impl_.val_.bsval_ = nullptr; + _impl_.node_.create_publication_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline const ::pg_query::BitString& A_Const::_internal_bsval() const { - return _internal_has_bsval() - ? *_impl_.val_.bsval_ - : reinterpret_cast< ::pg_query::BitString&>(::pg_query::_BitString_default_instance_); +inline const ::pg_query::CreatePublicationStmt& Node::_internal_create_publication_stmt() const { + return node_case() == kCreatePublicationStmt ? *_impl_.node_.create_publication_stmt_ : reinterpret_cast<::pg_query::CreatePublicationStmt&>(::pg_query::_CreatePublicationStmt_default_instance_); } -inline const ::pg_query::BitString& A_Const::bsval() const { - // @@protoc_insertion_point(field_get:pg_query.A_Const.bsval) - return _internal_bsval(); +inline const ::pg_query::CreatePublicationStmt& Node::create_publication_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_publication_stmt) + return _internal_create_publication_stmt(); } -inline ::pg_query::BitString* A_Const::unsafe_arena_release_bsval() { - // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.bsval) - if (_internal_has_bsval()) { - clear_has_val(); - ::pg_query::BitString* temp = _impl_.val_.bsval_; - _impl_.val_.bsval_ = nullptr; +inline ::pg_query::CreatePublicationStmt* Node::unsafe_arena_release_create_publication_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_publication_stmt) + if (node_case() == kCreatePublicationStmt) { + clear_has_node(); + auto* temp = _impl_.node_.create_publication_stmt_; + _impl_.node_.create_publication_stmt_ = nullptr; return temp; } else { return nullptr; } } -inline void A_Const::unsafe_arena_set_allocated_bsval(::pg_query::BitString* bsval) { - clear_val(); - if (bsval) { - set_has_bsval(); - _impl_.val_.bsval_ = bsval; +inline void Node::unsafe_arena_set_allocated_create_publication_stmt(::pg_query::CreatePublicationStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_create_publication_stmt(); + _impl_.node_.create_publication_stmt_ = value; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.bsval) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_publication_stmt) } -inline ::pg_query::BitString* A_Const::_internal_mutable_bsval() { - if (!_internal_has_bsval()) { - clear_val(); - set_has_bsval(); - _impl_.val_.bsval_ = CreateMaybeMessage< ::pg_query::BitString >(GetArenaForAllocation()); +inline ::pg_query::CreatePublicationStmt* Node::_internal_mutable_create_publication_stmt() { + if (node_case() != kCreatePublicationStmt) { + clear_node(); + set_has_create_publication_stmt(); + _impl_.node_.create_publication_stmt_ = CreateMaybeMessage<::pg_query::CreatePublicationStmt>(GetArena()); } - return _impl_.val_.bsval_; + return _impl_.node_.create_publication_stmt_; } -inline ::pg_query::BitString* A_Const::mutable_bsval() { - ::pg_query::BitString* _msg = _internal_mutable_bsval(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Const.bsval) +inline ::pg_query::CreatePublicationStmt* Node::mutable_create_publication_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreatePublicationStmt* _msg = _internal_mutable_create_publication_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_publication_stmt) return _msg; } -// bool isnull = 10; -inline void A_Const::clear_isnull() { - _impl_.isnull_ = false; -} -inline bool A_Const::_internal_isnull() const { - return _impl_.isnull_; -} -inline bool A_Const::isnull() const { - // @@protoc_insertion_point(field_get:pg_query.A_Const.isnull) - return _internal_isnull(); +// .pg_query.AlterPublicationStmt alter_publication_stmt = 240 [json_name = "AlterPublicationStmt"]; +inline bool Node::has_alter_publication_stmt() const { + return node_case() == kAlterPublicationStmt; } -inline void A_Const::_internal_set_isnull(bool value) { - - _impl_.isnull_ = value; +inline bool Node::_internal_has_alter_publication_stmt() const { + return node_case() == kAlterPublicationStmt; } -inline void A_Const::set_isnull(bool value) { - _internal_set_isnull(value); - // @@protoc_insertion_point(field_set:pg_query.A_Const.isnull) +inline void Node::set_has_alter_publication_stmt() { + _impl_._oneof_case_[0] = kAlterPublicationStmt; } - -// int32 location = 11; -inline void A_Const::clear_location() { - _impl_.location_ = 0; +inline void Node::clear_alter_publication_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterPublicationStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_publication_stmt_; + } + clear_has_node(); + } } -inline int32_t A_Const::_internal_location() const { - return _impl_.location_; +inline ::pg_query::AlterPublicationStmt* Node::release_alter_publication_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_publication_stmt) + if (node_case() == kAlterPublicationStmt) { + clear_has_node(); + auto* temp = _impl_.node_.alter_publication_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.alter_publication_stmt_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline int32_t A_Const::location() const { - // @@protoc_insertion_point(field_get:pg_query.A_Const.location) - return _internal_location(); +inline const ::pg_query::AlterPublicationStmt& Node::_internal_alter_publication_stmt() const { + return node_case() == kAlterPublicationStmt ? *_impl_.node_.alter_publication_stmt_ : reinterpret_cast<::pg_query::AlterPublicationStmt&>(::pg_query::_AlterPublicationStmt_default_instance_); } -inline void A_Const::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::pg_query::AlterPublicationStmt& Node::alter_publication_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_publication_stmt) + return _internal_alter_publication_stmt(); } -inline void A_Const::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.A_Const.location) +inline ::pg_query::AlterPublicationStmt* Node::unsafe_arena_release_alter_publication_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_publication_stmt) + if (node_case() == kAlterPublicationStmt) { + clear_has_node(); + auto* temp = _impl_.node_.alter_publication_stmt_; + _impl_.node_.alter_publication_stmt_ = nullptr; + return temp; + } else { + return nullptr; + } } - -inline bool A_Const::has_val() const { - return val_case() != VAL_NOT_SET; +inline void Node::unsafe_arena_set_allocated_alter_publication_stmt(::pg_query::AlterPublicationStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_alter_publication_stmt(); + _impl_.node_.alter_publication_stmt_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_publication_stmt) } -inline void A_Const::clear_has_val() { - _impl_._oneof_case_[0] = VAL_NOT_SET; +inline ::pg_query::AlterPublicationStmt* Node::_internal_mutable_alter_publication_stmt() { + if (node_case() != kAlterPublicationStmt) { + clear_node(); + set_has_alter_publication_stmt(); + _impl_.node_.alter_publication_stmt_ = CreateMaybeMessage<::pg_query::AlterPublicationStmt>(GetArena()); + } + return _impl_.node_.alter_publication_stmt_; } -inline A_Const::ValCase A_Const::val_case() const { - return A_Const::ValCase(_impl_._oneof_case_[0]); +inline ::pg_query::AlterPublicationStmt* Node::mutable_alter_publication_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterPublicationStmt* _msg = _internal_mutable_alter_publication_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_publication_stmt) + return _msg; } -// ------------------------------------------------------------------- -// Alias - -// string aliasname = 1 [json_name = "aliasname"]; -inline void Alias::clear_aliasname() { - _impl_.aliasname_.ClearToEmpty(); -} -inline const std::string& Alias::aliasname() const { - // @@protoc_insertion_point(field_get:pg_query.Alias.aliasname) - return _internal_aliasname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void Alias::set_aliasname(ArgT0&& arg0, ArgT... args) { - - _impl_.aliasname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Alias.aliasname) -} -inline std::string* Alias::mutable_aliasname() { - std::string* _s = _internal_mutable_aliasname(); - // @@protoc_insertion_point(field_mutable:pg_query.Alias.aliasname) - return _s; -} -inline const std::string& Alias::_internal_aliasname() const { - return _impl_.aliasname_.Get(); +// .pg_query.CreateSubscriptionStmt create_subscription_stmt = 241 [json_name = "CreateSubscriptionStmt"]; +inline bool Node::has_create_subscription_stmt() const { + return node_case() == kCreateSubscriptionStmt; } -inline void Alias::_internal_set_aliasname(const std::string& value) { - - _impl_.aliasname_.Set(value, GetArenaForAllocation()); +inline bool Node::_internal_has_create_subscription_stmt() const { + return node_case() == kCreateSubscriptionStmt; } -inline std::string* Alias::_internal_mutable_aliasname() { - - return _impl_.aliasname_.Mutable(GetArenaForAllocation()); +inline void Node::set_has_create_subscription_stmt() { + _impl_._oneof_case_[0] = kCreateSubscriptionStmt; } -inline std::string* Alias::release_aliasname() { - // @@protoc_insertion_point(field_release:pg_query.Alias.aliasname) - return _impl_.aliasname_.Release(); +inline void Node::clear_create_subscription_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kCreateSubscriptionStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.create_subscription_stmt_; + } + clear_has_node(); + } } -inline void Alias::set_allocated_aliasname(std::string* aliasname) { - if (aliasname != nullptr) { - +inline ::pg_query::CreateSubscriptionStmt* Node::release_create_subscription_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.create_subscription_stmt) + if (node_case() == kCreateSubscriptionStmt) { + clear_has_node(); + auto* temp = _impl_.node_.create_subscription_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.create_subscription_stmt_ = nullptr; + return temp; } else { - - } - _impl_.aliasname_.SetAllocated(aliasname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.aliasname_.IsDefault()) { - _impl_.aliasname_.Set("", GetArenaForAllocation()); + return nullptr; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Alias.aliasname) -} - -// repeated .pg_query.Node colnames = 2 [json_name = "colnames"]; -inline int Alias::_internal_colnames_size() const { - return _impl_.colnames_.size(); -} -inline int Alias::colnames_size() const { - return _internal_colnames_size(); -} -inline void Alias::clear_colnames() { - _impl_.colnames_.Clear(); } -inline ::pg_query::Node* Alias::mutable_colnames(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Alias.colnames) - return _impl_.colnames_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Alias::mutable_colnames() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Alias.colnames) - return &_impl_.colnames_; +inline const ::pg_query::CreateSubscriptionStmt& Node::_internal_create_subscription_stmt() const { + return node_case() == kCreateSubscriptionStmt ? *_impl_.node_.create_subscription_stmt_ : reinterpret_cast<::pg_query::CreateSubscriptionStmt&>(::pg_query::_CreateSubscriptionStmt_default_instance_); } -inline const ::pg_query::Node& Alias::_internal_colnames(int index) const { - return _impl_.colnames_.Get(index); +inline const ::pg_query::CreateSubscriptionStmt& Node::create_subscription_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.create_subscription_stmt) + return _internal_create_subscription_stmt(); } -inline const ::pg_query::Node& Alias::colnames(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Alias.colnames) - return _internal_colnames(index); +inline ::pg_query::CreateSubscriptionStmt* Node::unsafe_arena_release_create_subscription_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.create_subscription_stmt) + if (node_case() == kCreateSubscriptionStmt) { + clear_has_node(); + auto* temp = _impl_.node_.create_subscription_stmt_; + _impl_.node_.create_subscription_stmt_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline ::pg_query::Node* Alias::_internal_add_colnames() { - return _impl_.colnames_.Add(); +inline void Node::unsafe_arena_set_allocated_create_subscription_stmt(::pg_query::CreateSubscriptionStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_create_subscription_stmt(); + _impl_.node_.create_subscription_stmt_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.create_subscription_stmt) } -inline ::pg_query::Node* Alias::add_colnames() { - ::pg_query::Node* _add = _internal_add_colnames(); - // @@protoc_insertion_point(field_add:pg_query.Alias.colnames) - return _add; +inline ::pg_query::CreateSubscriptionStmt* Node::_internal_mutable_create_subscription_stmt() { + if (node_case() != kCreateSubscriptionStmt) { + clear_node(); + set_has_create_subscription_stmt(); + _impl_.node_.create_subscription_stmt_ = CreateMaybeMessage<::pg_query::CreateSubscriptionStmt>(GetArena()); + } + return _impl_.node_.create_subscription_stmt_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Alias::colnames() const { - // @@protoc_insertion_point(field_list:pg_query.Alias.colnames) - return _impl_.colnames_; +inline ::pg_query::CreateSubscriptionStmt* Node::mutable_create_subscription_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateSubscriptionStmt* _msg = _internal_mutable_create_subscription_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.create_subscription_stmt) + return _msg; } -// ------------------------------------------------------------------- - -// RangeVar - -// string catalogname = 1 [json_name = "catalogname"]; -inline void RangeVar::clear_catalogname() { - _impl_.catalogname_.ClearToEmpty(); -} -inline const std::string& RangeVar::catalogname() const { - // @@protoc_insertion_point(field_get:pg_query.RangeVar.catalogname) - return _internal_catalogname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void RangeVar::set_catalogname(ArgT0&& arg0, ArgT... args) { - - _impl_.catalogname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RangeVar.catalogname) -} -inline std::string* RangeVar::mutable_catalogname() { - std::string* _s = _internal_mutable_catalogname(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.catalogname) - return _s; -} -inline const std::string& RangeVar::_internal_catalogname() const { - return _impl_.catalogname_.Get(); -} -inline void RangeVar::_internal_set_catalogname(const std::string& value) { - - _impl_.catalogname_.Set(value, GetArenaForAllocation()); +// .pg_query.AlterSubscriptionStmt alter_subscription_stmt = 242 [json_name = "AlterSubscriptionStmt"]; +inline bool Node::has_alter_subscription_stmt() const { + return node_case() == kAlterSubscriptionStmt; } -inline std::string* RangeVar::_internal_mutable_catalogname() { - - return _impl_.catalogname_.Mutable(GetArenaForAllocation()); +inline bool Node::_internal_has_alter_subscription_stmt() const { + return node_case() == kAlterSubscriptionStmt; } -inline std::string* RangeVar::release_catalogname() { - // @@protoc_insertion_point(field_release:pg_query.RangeVar.catalogname) - return _impl_.catalogname_.Release(); +inline void Node::set_has_alter_subscription_stmt() { + _impl_._oneof_case_[0] = kAlterSubscriptionStmt; } -inline void RangeVar::set_allocated_catalogname(std::string* catalogname) { - if (catalogname != nullptr) { - - } else { - - } - _impl_.catalogname_.SetAllocated(catalogname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.catalogname_.IsDefault()) { - _impl_.catalogname_.Set("", GetArenaForAllocation()); +inline void Node::clear_alter_subscription_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAlterSubscriptionStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.alter_subscription_stmt_; + } + clear_has_node(); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.catalogname) -} - -// string schemaname = 2 [json_name = "schemaname"]; -inline void RangeVar::clear_schemaname() { - _impl_.schemaname_.ClearToEmpty(); -} -inline const std::string& RangeVar::schemaname() const { - // @@protoc_insertion_point(field_get:pg_query.RangeVar.schemaname) - return _internal_schemaname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void RangeVar::set_schemaname(ArgT0&& arg0, ArgT... args) { - - _impl_.schemaname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RangeVar.schemaname) -} -inline std::string* RangeVar::mutable_schemaname() { - std::string* _s = _internal_mutable_schemaname(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.schemaname) - return _s; -} -inline const std::string& RangeVar::_internal_schemaname() const { - return _impl_.schemaname_.Get(); } -inline void RangeVar::_internal_set_schemaname(const std::string& value) { - - _impl_.schemaname_.Set(value, GetArenaForAllocation()); +inline ::pg_query::AlterSubscriptionStmt* Node::release_alter_subscription_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.alter_subscription_stmt) + if (node_case() == kAlterSubscriptionStmt) { + clear_has_node(); + auto* temp = _impl_.node_.alter_subscription_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.alter_subscription_stmt_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline std::string* RangeVar::_internal_mutable_schemaname() { - - return _impl_.schemaname_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::AlterSubscriptionStmt& Node::_internal_alter_subscription_stmt() const { + return node_case() == kAlterSubscriptionStmt ? *_impl_.node_.alter_subscription_stmt_ : reinterpret_cast<::pg_query::AlterSubscriptionStmt&>(::pg_query::_AlterSubscriptionStmt_default_instance_); } -inline std::string* RangeVar::release_schemaname() { - // @@protoc_insertion_point(field_release:pg_query.RangeVar.schemaname) - return _impl_.schemaname_.Release(); +inline const ::pg_query::AlterSubscriptionStmt& Node::alter_subscription_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.alter_subscription_stmt) + return _internal_alter_subscription_stmt(); } -inline void RangeVar::set_allocated_schemaname(std::string* schemaname) { - if (schemaname != nullptr) { - +inline ::pg_query::AlterSubscriptionStmt* Node::unsafe_arena_release_alter_subscription_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.alter_subscription_stmt) + if (node_case() == kAlterSubscriptionStmt) { + clear_has_node(); + auto* temp = _impl_.node_.alter_subscription_stmt_; + _impl_.node_.alter_subscription_stmt_ = nullptr; + return temp; } else { - - } - _impl_.schemaname_.SetAllocated(schemaname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.schemaname_.IsDefault()) { - _impl_.schemaname_.Set("", GetArenaForAllocation()); + return nullptr; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.schemaname) -} - -// string relname = 3 [json_name = "relname"]; -inline void RangeVar::clear_relname() { - _impl_.relname_.ClearToEmpty(); } -inline const std::string& RangeVar::relname() const { - // @@protoc_insertion_point(field_get:pg_query.RangeVar.relname) - return _internal_relname(); +inline void Node::unsafe_arena_set_allocated_alter_subscription_stmt(::pg_query::AlterSubscriptionStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_alter_subscription_stmt(); + _impl_.node_.alter_subscription_stmt_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.alter_subscription_stmt) } -template -inline PROTOBUF_ALWAYS_INLINE -void RangeVar::set_relname(ArgT0&& arg0, ArgT... args) { - - _impl_.relname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RangeVar.relname) +inline ::pg_query::AlterSubscriptionStmt* Node::_internal_mutable_alter_subscription_stmt() { + if (node_case() != kAlterSubscriptionStmt) { + clear_node(); + set_has_alter_subscription_stmt(); + _impl_.node_.alter_subscription_stmt_ = CreateMaybeMessage<::pg_query::AlterSubscriptionStmt>(GetArena()); + } + return _impl_.node_.alter_subscription_stmt_; } -inline std::string* RangeVar::mutable_relname() { - std::string* _s = _internal_mutable_relname(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.relname) - return _s; +inline ::pg_query::AlterSubscriptionStmt* Node::mutable_alter_subscription_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::AlterSubscriptionStmt* _msg = _internal_mutable_alter_subscription_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.alter_subscription_stmt) + return _msg; } -inline const std::string& RangeVar::_internal_relname() const { - return _impl_.relname_.Get(); + +// .pg_query.DropSubscriptionStmt drop_subscription_stmt = 243 [json_name = "DropSubscriptionStmt"]; +inline bool Node::has_drop_subscription_stmt() const { + return node_case() == kDropSubscriptionStmt; } -inline void RangeVar::_internal_set_relname(const std::string& value) { - - _impl_.relname_.Set(value, GetArenaForAllocation()); +inline bool Node::_internal_has_drop_subscription_stmt() const { + return node_case() == kDropSubscriptionStmt; } -inline std::string* RangeVar::_internal_mutable_relname() { - - return _impl_.relname_.Mutable(GetArenaForAllocation()); +inline void Node::set_has_drop_subscription_stmt() { + _impl_._oneof_case_[0] = kDropSubscriptionStmt; } -inline std::string* RangeVar::release_relname() { - // @@protoc_insertion_point(field_release:pg_query.RangeVar.relname) - return _impl_.relname_.Release(); +inline void Node::clear_drop_subscription_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kDropSubscriptionStmt) { + if (GetArena() == nullptr) { + delete _impl_.node_.drop_subscription_stmt_; + } + clear_has_node(); + } } -inline void RangeVar::set_allocated_relname(std::string* relname) { - if (relname != nullptr) { - +inline ::pg_query::DropSubscriptionStmt* Node::release_drop_subscription_stmt() { + // @@protoc_insertion_point(field_release:pg_query.Node.drop_subscription_stmt) + if (node_case() == kDropSubscriptionStmt) { + clear_has_node(); + auto* temp = _impl_.node_.drop_subscription_stmt_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.drop_subscription_stmt_ = nullptr; + return temp; } else { - - } - _impl_.relname_.SetAllocated(relname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.relname_.IsDefault()) { - _impl_.relname_.Set("", GetArenaForAllocation()); + return nullptr; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.relname) } - -// bool inh = 4 [json_name = "inh"]; -inline void RangeVar::clear_inh() { - _impl_.inh_ = false; +inline const ::pg_query::DropSubscriptionStmt& Node::_internal_drop_subscription_stmt() const { + return node_case() == kDropSubscriptionStmt ? *_impl_.node_.drop_subscription_stmt_ : reinterpret_cast<::pg_query::DropSubscriptionStmt&>(::pg_query::_DropSubscriptionStmt_default_instance_); } -inline bool RangeVar::_internal_inh() const { - return _impl_.inh_; +inline const ::pg_query::DropSubscriptionStmt& Node::drop_subscription_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.drop_subscription_stmt) + return _internal_drop_subscription_stmt(); } -inline bool RangeVar::inh() const { - // @@protoc_insertion_point(field_get:pg_query.RangeVar.inh) - return _internal_inh(); +inline ::pg_query::DropSubscriptionStmt* Node::unsafe_arena_release_drop_subscription_stmt() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.drop_subscription_stmt) + if (node_case() == kDropSubscriptionStmt) { + clear_has_node(); + auto* temp = _impl_.node_.drop_subscription_stmt_; + _impl_.node_.drop_subscription_stmt_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline void RangeVar::_internal_set_inh(bool value) { - - _impl_.inh_ = value; +inline void Node::unsafe_arena_set_allocated_drop_subscription_stmt(::pg_query::DropSubscriptionStmt* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_drop_subscription_stmt(); + _impl_.node_.drop_subscription_stmt_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.drop_subscription_stmt) } -inline void RangeVar::set_inh(bool value) { - _internal_set_inh(value); - // @@protoc_insertion_point(field_set:pg_query.RangeVar.inh) +inline ::pg_query::DropSubscriptionStmt* Node::_internal_mutable_drop_subscription_stmt() { + if (node_case() != kDropSubscriptionStmt) { + clear_node(); + set_has_drop_subscription_stmt(); + _impl_.node_.drop_subscription_stmt_ = CreateMaybeMessage<::pg_query::DropSubscriptionStmt>(GetArena()); + } + return _impl_.node_.drop_subscription_stmt_; } - -// string relpersistence = 5 [json_name = "relpersistence"]; -inline void RangeVar::clear_relpersistence() { - _impl_.relpersistence_.ClearToEmpty(); +inline ::pg_query::DropSubscriptionStmt* Node::mutable_drop_subscription_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::DropSubscriptionStmt* _msg = _internal_mutable_drop_subscription_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.drop_subscription_stmt) + return _msg; } -inline const std::string& RangeVar::relpersistence() const { - // @@protoc_insertion_point(field_get:pg_query.RangeVar.relpersistence) - return _internal_relpersistence(); + +// .pg_query.Integer integer = 244 [json_name = "Integer"]; +inline bool Node::has_integer() const { + return node_case() == kInteger; } -template -inline PROTOBUF_ALWAYS_INLINE -void RangeVar::set_relpersistence(ArgT0&& arg0, ArgT... args) { - - _impl_.relpersistence_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RangeVar.relpersistence) +inline bool Node::_internal_has_integer() const { + return node_case() == kInteger; } -inline std::string* RangeVar::mutable_relpersistence() { - std::string* _s = _internal_mutable_relpersistence(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.relpersistence) - return _s; +inline void Node::set_has_integer() { + _impl_._oneof_case_[0] = kInteger; } -inline const std::string& RangeVar::_internal_relpersistence() const { - return _impl_.relpersistence_.Get(); +inline void Node::clear_integer() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kInteger) { + if (GetArena() == nullptr) { + delete _impl_.node_.integer_; + } + clear_has_node(); + } } -inline void RangeVar::_internal_set_relpersistence(const std::string& value) { - - _impl_.relpersistence_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Integer* Node::release_integer() { + // @@protoc_insertion_point(field_release:pg_query.Node.integer) + if (node_case() == kInteger) { + clear_has_node(); + auto* temp = _impl_.node_.integer_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.integer_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline std::string* RangeVar::_internal_mutable_relpersistence() { - - return _impl_.relpersistence_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Integer& Node::_internal_integer() const { + return node_case() == kInteger ? *_impl_.node_.integer_ : reinterpret_cast<::pg_query::Integer&>(::pg_query::_Integer_default_instance_); } -inline std::string* RangeVar::release_relpersistence() { - // @@protoc_insertion_point(field_release:pg_query.RangeVar.relpersistence) - return _impl_.relpersistence_.Release(); +inline const ::pg_query::Integer& Node::integer() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.integer) + return _internal_integer(); } -inline void RangeVar::set_allocated_relpersistence(std::string* relpersistence) { - if (relpersistence != nullptr) { - +inline ::pg_query::Integer* Node::unsafe_arena_release_integer() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.integer) + if (node_case() == kInteger) { + clear_has_node(); + auto* temp = _impl_.node_.integer_; + _impl_.node_.integer_ = nullptr; + return temp; } else { - + return nullptr; } - _impl_.relpersistence_.SetAllocated(relpersistence, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.relpersistence_.IsDefault()) { - _impl_.relpersistence_.Set("", GetArenaForAllocation()); +} +inline void Node::unsafe_arena_set_allocated_integer(::pg_query::Integer* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_integer(); + _impl_.node_.integer_ = value; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.relpersistence) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.integer) } - -// .pg_query.Alias alias = 6 [json_name = "alias"]; -inline bool RangeVar::_internal_has_alias() const { - return this != internal_default_instance() && _impl_.alias_ != nullptr; +inline ::pg_query::Integer* Node::_internal_mutable_integer() { + if (node_case() != kInteger) { + clear_node(); + set_has_integer(); + _impl_.node_.integer_ = CreateMaybeMessage<::pg_query::Integer>(GetArena()); + } + return _impl_.node_.integer_; } -inline bool RangeVar::has_alias() const { - return _internal_has_alias(); +inline ::pg_query::Integer* Node::mutable_integer() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Integer* _msg = _internal_mutable_integer(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.integer) + return _msg; } -inline void RangeVar::clear_alias() { - if (GetArenaForAllocation() == nullptr && _impl_.alias_ != nullptr) { - delete _impl_.alias_; - } - _impl_.alias_ = nullptr; + +// .pg_query.Float float = 245 [json_name = "Float"]; +inline bool Node::has_float_() const { + return node_case() == kFloat; } -inline const ::pg_query::Alias& RangeVar::_internal_alias() const { - const ::pg_query::Alias* p = _impl_.alias_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Alias_default_instance_); +inline bool Node::_internal_has_float_() const { + return node_case() == kFloat; } -inline const ::pg_query::Alias& RangeVar::alias() const { - // @@protoc_insertion_point(field_get:pg_query.RangeVar.alias) - return _internal_alias(); +inline void Node::set_has_float_() { + _impl_._oneof_case_[0] = kFloat; } -inline void RangeVar::unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.alias_); +inline void Node::clear_float_() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kFloat) { + if (GetArena() == nullptr) { + delete _impl_.node_.float__; + } + clear_has_node(); } - _impl_.alias_ = alias; - if (alias) { - +} +inline ::pg_query::Float* Node::release_float_() { + // @@protoc_insertion_point(field_release:pg_query.Node.float) + if (node_case() == kFloat) { + clear_has_node(); + auto* temp = _impl_.node_.float__; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.float__ = nullptr; + return temp; } else { - + return nullptr; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeVar.alias) } -inline ::pg_query::Alias* RangeVar::release_alias() { - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline const ::pg_query::Float& Node::_internal_float_() const { + return node_case() == kFloat ? *_impl_.node_.float__ : reinterpret_cast<::pg_query::Float&>(::pg_query::_Float_default_instance_); +} +inline const ::pg_query::Float& Node::float_() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.float) + return _internal_float_(); +} +inline ::pg_query::Float* Node::unsafe_arena_release_float_() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.float) + if (node_case() == kFloat) { + clear_has_node(); + auto* temp = _impl_.node_.float__; + _impl_.node_.float__ = nullptr; + return temp; + } else { + return nullptr; } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; } -inline ::pg_query::Alias* RangeVar::unsafe_arena_release_alias() { - // @@protoc_insertion_point(field_release:pg_query.RangeVar.alias) - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; - return temp; +inline void Node::unsafe_arena_set_allocated_float_(::pg_query::Float* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_float_(); + _impl_.node_.float__ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.float) } -inline ::pg_query::Alias* RangeVar::_internal_mutable_alias() { - - if (_impl_.alias_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArenaForAllocation()); - _impl_.alias_ = p; +inline ::pg_query::Float* Node::_internal_mutable_float_() { + if (node_case() != kFloat) { + clear_node(); + set_has_float_(); + _impl_.node_.float__ = CreateMaybeMessage<::pg_query::Float>(GetArena()); } - return _impl_.alias_; + return _impl_.node_.float__; } -inline ::pg_query::Alias* RangeVar::mutable_alias() { - ::pg_query::Alias* _msg = _internal_mutable_alias(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.alias) +inline ::pg_query::Float* Node::mutable_float_() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Float* _msg = _internal_mutable_float_(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.float) return _msg; } -inline void RangeVar::set_allocated_alias(::pg_query::Alias* alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.alias_; + +// .pg_query.Boolean boolean = 246 [json_name = "Boolean"]; +inline bool Node::has_boolean() const { + return node_case() == kBoolean; +} +inline bool Node::_internal_has_boolean() const { + return node_case() == kBoolean; +} +inline void Node::set_has_boolean() { + _impl_._oneof_case_[0] = kBoolean; +} +inline void Node::clear_boolean() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kBoolean) { + if (GetArena() == nullptr) { + delete _impl_.node_.boolean_; + } + clear_has_node(); } - if (alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(alias); - if (message_arena != submessage_arena) { - alias = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, alias, submessage_arena); +} +inline ::pg_query::Boolean* Node::release_boolean() { + // @@protoc_insertion_point(field_release:pg_query.Node.boolean) + if (node_case() == kBoolean) { + clear_has_node(); + auto* temp = _impl_.node_.boolean_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - + _impl_.node_.boolean_ = nullptr; + return temp; } else { - + return nullptr; } - _impl_.alias_ = alias; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.alias) } - -// int32 location = 7 [json_name = "location"]; -inline void RangeVar::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Boolean& Node::_internal_boolean() const { + return node_case() == kBoolean ? *_impl_.node_.boolean_ : reinterpret_cast<::pg_query::Boolean&>(::pg_query::_Boolean_default_instance_); } -inline int32_t RangeVar::_internal_location() const { - return _impl_.location_; +inline const ::pg_query::Boolean& Node::boolean() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.boolean) + return _internal_boolean(); } -inline int32_t RangeVar::location() const { - // @@protoc_insertion_point(field_get:pg_query.RangeVar.location) - return _internal_location(); +inline ::pg_query::Boolean* Node::unsafe_arena_release_boolean() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.boolean) + if (node_case() == kBoolean) { + clear_has_node(); + auto* temp = _impl_.node_.boolean_; + _impl_.node_.boolean_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline void RangeVar::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline void Node::unsafe_arena_set_allocated_boolean(::pg_query::Boolean* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_boolean(); + _impl_.node_.boolean_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.boolean) } -inline void RangeVar::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.RangeVar.location) +inline ::pg_query::Boolean* Node::_internal_mutable_boolean() { + if (node_case() != kBoolean) { + clear_node(); + set_has_boolean(); + _impl_.node_.boolean_ = CreateMaybeMessage<::pg_query::Boolean>(GetArena()); + } + return _impl_.node_.boolean_; +} +inline ::pg_query::Boolean* Node::mutable_boolean() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Boolean* _msg = _internal_mutable_boolean(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.boolean) + return _msg; } -// ------------------------------------------------------------------- - -// TableFunc - -// repeated .pg_query.Node ns_uris = 1 [json_name = "ns_uris"]; -inline int TableFunc::_internal_ns_uris_size() const { - return _impl_.ns_uris_.size(); +// .pg_query.String string = 247 [json_name = "String"]; +inline bool Node::has_string() const { + return node_case() == kString; } -inline int TableFunc::ns_uris_size() const { - return _internal_ns_uris_size(); +inline bool Node::_internal_has_string() const { + return node_case() == kString; } -inline void TableFunc::clear_ns_uris() { - _impl_.ns_uris_.Clear(); +inline void Node::set_has_string() { + _impl_._oneof_case_[0] = kString; } -inline ::pg_query::Node* TableFunc::mutable_ns_uris(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.ns_uris) - return _impl_.ns_uris_.Mutable(index); +inline void Node::clear_string() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kString) { + if (GetArena() == nullptr) { + delete _impl_.node_.string_; + } + clear_has_node(); + } } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TableFunc::mutable_ns_uris() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.ns_uris) - return &_impl_.ns_uris_; +inline ::pg_query::String* Node::release_string() { + // @@protoc_insertion_point(field_release:pg_query.Node.string) + if (node_case() == kString) { + clear_has_node(); + auto* temp = _impl_.node_.string_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.string_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline const ::pg_query::Node& TableFunc::_internal_ns_uris(int index) const { - return _impl_.ns_uris_.Get(index); +inline const ::pg_query::String& Node::_internal_string() const { + return node_case() == kString ? *_impl_.node_.string_ : reinterpret_cast<::pg_query::String&>(::pg_query::_String_default_instance_); } -inline const ::pg_query::Node& TableFunc::ns_uris(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.ns_uris) - return _internal_ns_uris(index); +inline const ::pg_query::String& Node::string() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.string) + return _internal_string(); } -inline ::pg_query::Node* TableFunc::_internal_add_ns_uris() { - return _impl_.ns_uris_.Add(); +inline ::pg_query::String* Node::unsafe_arena_release_string() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.string) + if (node_case() == kString) { + clear_has_node(); + auto* temp = _impl_.node_.string_; + _impl_.node_.string_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline ::pg_query::Node* TableFunc::add_ns_uris() { - ::pg_query::Node* _add = _internal_add_ns_uris(); - // @@protoc_insertion_point(field_add:pg_query.TableFunc.ns_uris) - return _add; +inline void Node::unsafe_arena_set_allocated_string(::pg_query::String* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_string(); + _impl_.node_.string_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.string) } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TableFunc::ns_uris() const { - // @@protoc_insertion_point(field_list:pg_query.TableFunc.ns_uris) - return _impl_.ns_uris_; +inline ::pg_query::String* Node::_internal_mutable_string() { + if (node_case() != kString) { + clear_node(); + set_has_string(); + _impl_.node_.string_ = CreateMaybeMessage<::pg_query::String>(GetArena()); + } + return _impl_.node_.string_; +} +inline ::pg_query::String* Node::mutable_string() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::String* _msg = _internal_mutable_string(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.string) + return _msg; } -// repeated .pg_query.Node ns_names = 2 [json_name = "ns_names"]; -inline int TableFunc::_internal_ns_names_size() const { - return _impl_.ns_names_.size(); +// .pg_query.BitString bit_string = 248 [json_name = "BitString"]; +inline bool Node::has_bit_string() const { + return node_case() == kBitString; } -inline int TableFunc::ns_names_size() const { - return _internal_ns_names_size(); +inline bool Node::_internal_has_bit_string() const { + return node_case() == kBitString; } -inline void TableFunc::clear_ns_names() { - _impl_.ns_names_.Clear(); +inline void Node::set_has_bit_string() { + _impl_._oneof_case_[0] = kBitString; } -inline ::pg_query::Node* TableFunc::mutable_ns_names(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.ns_names) - return _impl_.ns_names_.Mutable(index); +inline void Node::clear_bit_string() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kBitString) { + if (GetArena() == nullptr) { + delete _impl_.node_.bit_string_; + } + clear_has_node(); + } } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TableFunc::mutable_ns_names() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.ns_names) - return &_impl_.ns_names_; +inline ::pg_query::BitString* Node::release_bit_string() { + // @@protoc_insertion_point(field_release:pg_query.Node.bit_string) + if (node_case() == kBitString) { + clear_has_node(); + auto* temp = _impl_.node_.bit_string_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.bit_string_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline const ::pg_query::Node& TableFunc::_internal_ns_names(int index) const { - return _impl_.ns_names_.Get(index); +inline const ::pg_query::BitString& Node::_internal_bit_string() const { + return node_case() == kBitString ? *_impl_.node_.bit_string_ : reinterpret_cast<::pg_query::BitString&>(::pg_query::_BitString_default_instance_); } -inline const ::pg_query::Node& TableFunc::ns_names(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.ns_names) - return _internal_ns_names(index); +inline const ::pg_query::BitString& Node::bit_string() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.bit_string) + return _internal_bit_string(); +} +inline ::pg_query::BitString* Node::unsafe_arena_release_bit_string() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.bit_string) + if (node_case() == kBitString) { + clear_has_node(); + auto* temp = _impl_.node_.bit_string_; + _impl_.node_.bit_string_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline ::pg_query::Node* TableFunc::_internal_add_ns_names() { - return _impl_.ns_names_.Add(); +inline void Node::unsafe_arena_set_allocated_bit_string(::pg_query::BitString* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_bit_string(); + _impl_.node_.bit_string_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.bit_string) } -inline ::pg_query::Node* TableFunc::add_ns_names() { - ::pg_query::Node* _add = _internal_add_ns_names(); - // @@protoc_insertion_point(field_add:pg_query.TableFunc.ns_names) - return _add; +inline ::pg_query::BitString* Node::_internal_mutable_bit_string() { + if (node_case() != kBitString) { + clear_node(); + set_has_bit_string(); + _impl_.node_.bit_string_ = CreateMaybeMessage<::pg_query::BitString>(GetArena()); + } + return _impl_.node_.bit_string_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TableFunc::ns_names() const { - // @@protoc_insertion_point(field_list:pg_query.TableFunc.ns_names) - return _impl_.ns_names_; +inline ::pg_query::BitString* Node::mutable_bit_string() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::BitString* _msg = _internal_mutable_bit_string(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.bit_string) + return _msg; } -// .pg_query.Node docexpr = 3 [json_name = "docexpr"]; -inline bool TableFunc::_internal_has_docexpr() const { - return this != internal_default_instance() && _impl_.docexpr_ != nullptr; +// .pg_query.List list = 249 [json_name = "List"]; +inline bool Node::has_list() const { + return node_case() == kList; } -inline bool TableFunc::has_docexpr() const { - return _internal_has_docexpr(); +inline bool Node::_internal_has_list() const { + return node_case() == kList; } -inline void TableFunc::clear_docexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.docexpr_ != nullptr) { - delete _impl_.docexpr_; +inline void Node::set_has_list() { + _impl_._oneof_case_[0] = kList; +} +inline void Node::clear_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kList) { + if (GetArena() == nullptr) { + delete _impl_.node_.list_; + } + clear_has_node(); } - _impl_.docexpr_ = nullptr; } -inline const ::pg_query::Node& TableFunc::_internal_docexpr() const { - const ::pg_query::Node* p = _impl_.docexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::List* Node::release_list() { + // @@protoc_insertion_point(field_release:pg_query.Node.list) + if (node_case() == kList) { + clear_has_node(); + auto* temp = _impl_.node_.list_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.list_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline const ::pg_query::Node& TableFunc::docexpr() const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.docexpr) - return _internal_docexpr(); +inline const ::pg_query::List& Node::_internal_list() const { + return node_case() == kList ? *_impl_.node_.list_ : reinterpret_cast<::pg_query::List&>(::pg_query::_List_default_instance_); } -inline void TableFunc::unsafe_arena_set_allocated_docexpr( - ::pg_query::Node* docexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.docexpr_); - } - _impl_.docexpr_ = docexpr; - if (docexpr) { - +inline const ::pg_query::List& Node::list() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.list) + return _internal_list(); +} +inline ::pg_query::List* Node::unsafe_arena_release_list() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.list) + if (node_case() == kList) { + clear_has_node(); + auto* temp = _impl_.node_.list_; + _impl_.node_.list_ = nullptr; + return temp; } else { - + return nullptr; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TableFunc.docexpr) } -inline ::pg_query::Node* TableFunc::release_docexpr() { - - ::pg_query::Node* temp = _impl_.docexpr_; - _impl_.docexpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline void Node::unsafe_arena_set_allocated_list(::pg_query::List* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_list(); + _impl_.node_.list_ = value; } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::pg_query::Node* TableFunc::unsafe_arena_release_docexpr() { - // @@protoc_insertion_point(field_release:pg_query.TableFunc.docexpr) - - ::pg_query::Node* temp = _impl_.docexpr_; - _impl_.docexpr_ = nullptr; - return temp; + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.list) } -inline ::pg_query::Node* TableFunc::_internal_mutable_docexpr() { - - if (_impl_.docexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.docexpr_ = p; +inline ::pg_query::List* Node::_internal_mutable_list() { + if (node_case() != kList) { + clear_node(); + set_has_list(); + _impl_.node_.list_ = CreateMaybeMessage<::pg_query::List>(GetArena()); } - return _impl_.docexpr_; + return _impl_.node_.list_; } -inline ::pg_query::Node* TableFunc::mutable_docexpr() { - ::pg_query::Node* _msg = _internal_mutable_docexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.docexpr) +inline ::pg_query::List* Node::mutable_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::List* _msg = _internal_mutable_list(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.list) return _msg; } -inline void TableFunc::set_allocated_docexpr(::pg_query::Node* docexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.docexpr_; - } - if (docexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(docexpr); - if (message_arena != submessage_arena) { - docexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, docexpr, submessage_arena); - } - - } else { - - } - _impl_.docexpr_ = docexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.TableFunc.docexpr) -} -// .pg_query.Node rowexpr = 4 [json_name = "rowexpr"]; -inline bool TableFunc::_internal_has_rowexpr() const { - return this != internal_default_instance() && _impl_.rowexpr_ != nullptr; +// .pg_query.IntList int_list = 250 [json_name = "IntList"]; +inline bool Node::has_int_list() const { + return node_case() == kIntList; } -inline bool TableFunc::has_rowexpr() const { - return _internal_has_rowexpr(); +inline bool Node::_internal_has_int_list() const { + return node_case() == kIntList; } -inline void TableFunc::clear_rowexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.rowexpr_ != nullptr) { - delete _impl_.rowexpr_; +inline void Node::set_has_int_list() { + _impl_._oneof_case_[0] = kIntList; +} +inline void Node::clear_int_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kIntList) { + if (GetArena() == nullptr) { + delete _impl_.node_.int_list_; + } + clear_has_node(); + } +} +inline ::pg_query::IntList* Node::release_int_list() { + // @@protoc_insertion_point(field_release:pg_query.Node.int_list) + if (node_case() == kIntList) { + clear_has_node(); + auto* temp = _impl_.node_.int_list_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.int_list_ = nullptr; + return temp; + } else { + return nullptr; } - _impl_.rowexpr_ = nullptr; } -inline const ::pg_query::Node& TableFunc::_internal_rowexpr() const { - const ::pg_query::Node* p = _impl_.rowexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::IntList& Node::_internal_int_list() const { + return node_case() == kIntList ? *_impl_.node_.int_list_ : reinterpret_cast<::pg_query::IntList&>(::pg_query::_IntList_default_instance_); } -inline const ::pg_query::Node& TableFunc::rowexpr() const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.rowexpr) - return _internal_rowexpr(); +inline const ::pg_query::IntList& Node::int_list() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.int_list) + return _internal_int_list(); } -inline void TableFunc::unsafe_arena_set_allocated_rowexpr( - ::pg_query::Node* rowexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.rowexpr_); - } - _impl_.rowexpr_ = rowexpr; - if (rowexpr) { - +inline ::pg_query::IntList* Node::unsafe_arena_release_int_list() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.int_list) + if (node_case() == kIntList) { + clear_has_node(); + auto* temp = _impl_.node_.int_list_; + _impl_.node_.int_list_ = nullptr; + return temp; } else { - + return nullptr; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TableFunc.rowexpr) } -inline ::pg_query::Node* TableFunc::release_rowexpr() { - - ::pg_query::Node* temp = _impl_.rowexpr_; - _impl_.rowexpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline void Node::unsafe_arena_set_allocated_int_list(::pg_query::IntList* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_int_list(); + _impl_.node_.int_list_ = value; } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::pg_query::Node* TableFunc::unsafe_arena_release_rowexpr() { - // @@protoc_insertion_point(field_release:pg_query.TableFunc.rowexpr) - - ::pg_query::Node* temp = _impl_.rowexpr_; - _impl_.rowexpr_ = nullptr; - return temp; + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.int_list) } -inline ::pg_query::Node* TableFunc::_internal_mutable_rowexpr() { - - if (_impl_.rowexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.rowexpr_ = p; +inline ::pg_query::IntList* Node::_internal_mutable_int_list() { + if (node_case() != kIntList) { + clear_node(); + set_has_int_list(); + _impl_.node_.int_list_ = CreateMaybeMessage<::pg_query::IntList>(GetArena()); } - return _impl_.rowexpr_; + return _impl_.node_.int_list_; } -inline ::pg_query::Node* TableFunc::mutable_rowexpr() { - ::pg_query::Node* _msg = _internal_mutable_rowexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.rowexpr) +inline ::pg_query::IntList* Node::mutable_int_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::IntList* _msg = _internal_mutable_int_list(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.int_list) return _msg; } -inline void TableFunc::set_allocated_rowexpr(::pg_query::Node* rowexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.rowexpr_; - } - if (rowexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(rowexpr); - if (message_arena != submessage_arena) { - rowexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, rowexpr, submessage_arena); - } - - } else { - - } - _impl_.rowexpr_ = rowexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.TableFunc.rowexpr) -} -// repeated .pg_query.Node colnames = 5 [json_name = "colnames"]; -inline int TableFunc::_internal_colnames_size() const { - return _impl_.colnames_.size(); +// .pg_query.OidList oid_list = 251 [json_name = "OidList"]; +inline bool Node::has_oid_list() const { + return node_case() == kOidList; } -inline int TableFunc::colnames_size() const { - return _internal_colnames_size(); +inline bool Node::_internal_has_oid_list() const { + return node_case() == kOidList; } -inline void TableFunc::clear_colnames() { - _impl_.colnames_.Clear(); +inline void Node::set_has_oid_list() { + _impl_._oneof_case_[0] = kOidList; } -inline ::pg_query::Node* TableFunc::mutable_colnames(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.colnames) - return _impl_.colnames_.Mutable(index); +inline void Node::clear_oid_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kOidList) { + if (GetArena() == nullptr) { + delete _impl_.node_.oid_list_; + } + clear_has_node(); + } } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TableFunc::mutable_colnames() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.colnames) - return &_impl_.colnames_; +inline ::pg_query::OidList* Node::release_oid_list() { + // @@protoc_insertion_point(field_release:pg_query.Node.oid_list) + if (node_case() == kOidList) { + clear_has_node(); + auto* temp = _impl_.node_.oid_list_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.oid_list_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline const ::pg_query::Node& TableFunc::_internal_colnames(int index) const { - return _impl_.colnames_.Get(index); +inline const ::pg_query::OidList& Node::_internal_oid_list() const { + return node_case() == kOidList ? *_impl_.node_.oid_list_ : reinterpret_cast<::pg_query::OidList&>(::pg_query::_OidList_default_instance_); } -inline const ::pg_query::Node& TableFunc::colnames(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.colnames) - return _internal_colnames(index); +inline const ::pg_query::OidList& Node::oid_list() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.oid_list) + return _internal_oid_list(); +} +inline ::pg_query::OidList* Node::unsafe_arena_release_oid_list() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.oid_list) + if (node_case() == kOidList) { + clear_has_node(); + auto* temp = _impl_.node_.oid_list_; + _impl_.node_.oid_list_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline ::pg_query::Node* TableFunc::_internal_add_colnames() { - return _impl_.colnames_.Add(); +inline void Node::unsafe_arena_set_allocated_oid_list(::pg_query::OidList* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_oid_list(); + _impl_.node_.oid_list_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.oid_list) } -inline ::pg_query::Node* TableFunc::add_colnames() { - ::pg_query::Node* _add = _internal_add_colnames(); - // @@protoc_insertion_point(field_add:pg_query.TableFunc.colnames) - return _add; +inline ::pg_query::OidList* Node::_internal_mutable_oid_list() { + if (node_case() != kOidList) { + clear_node(); + set_has_oid_list(); + _impl_.node_.oid_list_ = CreateMaybeMessage<::pg_query::OidList>(GetArena()); + } + return _impl_.node_.oid_list_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TableFunc::colnames() const { - // @@protoc_insertion_point(field_list:pg_query.TableFunc.colnames) - return _impl_.colnames_; +inline ::pg_query::OidList* Node::mutable_oid_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::OidList* _msg = _internal_mutable_oid_list(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.oid_list) + return _msg; } -// repeated .pg_query.Node coltypes = 6 [json_name = "coltypes"]; -inline int TableFunc::_internal_coltypes_size() const { - return _impl_.coltypes_.size(); -} -inline int TableFunc::coltypes_size() const { - return _internal_coltypes_size(); +// .pg_query.A_Const a_const = 252 [json_name = "A_Const"]; +inline bool Node::has_a_const() const { + return node_case() == kAConst; } -inline void TableFunc::clear_coltypes() { - _impl_.coltypes_.Clear(); +inline bool Node::_internal_has_a_const() const { + return node_case() == kAConst; } -inline ::pg_query::Node* TableFunc::mutable_coltypes(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.coltypes) - return _impl_.coltypes_.Mutable(index); +inline void Node::set_has_a_const() { + _impl_._oneof_case_[0] = kAConst; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TableFunc::mutable_coltypes() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.coltypes) - return &_impl_.coltypes_; +inline void Node::clear_a_const() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (node_case() == kAConst) { + if (GetArena() == nullptr) { + delete _impl_.node_.a_const_; + } + clear_has_node(); + } } -inline const ::pg_query::Node& TableFunc::_internal_coltypes(int index) const { - return _impl_.coltypes_.Get(index); +inline ::pg_query::A_Const* Node::release_a_const() { + // @@protoc_insertion_point(field_release:pg_query.Node.a_const) + if (node_case() == kAConst) { + clear_has_node(); + auto* temp = _impl_.node_.a_const_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.node_.a_const_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline const ::pg_query::Node& TableFunc::coltypes(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.coltypes) - return _internal_coltypes(index); +inline const ::pg_query::A_Const& Node::_internal_a_const() const { + return node_case() == kAConst ? *_impl_.node_.a_const_ : reinterpret_cast<::pg_query::A_Const&>(::pg_query::_A_Const_default_instance_); } -inline ::pg_query::Node* TableFunc::_internal_add_coltypes() { - return _impl_.coltypes_.Add(); +inline const ::pg_query::A_Const& Node::a_const() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Node.a_const) + return _internal_a_const(); } -inline ::pg_query::Node* TableFunc::add_coltypes() { - ::pg_query::Node* _add = _internal_add_coltypes(); - // @@protoc_insertion_point(field_add:pg_query.TableFunc.coltypes) - return _add; +inline ::pg_query::A_Const* Node::unsafe_arena_release_a_const() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.Node.a_const) + if (node_case() == kAConst) { + clear_has_node(); + auto* temp = _impl_.node_.a_const_; + _impl_.node_.a_const_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TableFunc::coltypes() const { - // @@protoc_insertion_point(field_list:pg_query.TableFunc.coltypes) - return _impl_.coltypes_; +inline void Node::unsafe_arena_set_allocated_a_const(::pg_query::A_Const* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_node(); + if (value) { + set_has_a_const(); + _impl_.node_.a_const_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Node.a_const) } - -// repeated .pg_query.Node coltypmods = 7 [json_name = "coltypmods"]; -inline int TableFunc::_internal_coltypmods_size() const { - return _impl_.coltypmods_.size(); +inline ::pg_query::A_Const* Node::_internal_mutable_a_const() { + if (node_case() != kAConst) { + clear_node(); + set_has_a_const(); + _impl_.node_.a_const_ = CreateMaybeMessage<::pg_query::A_Const>(GetArena()); + } + return _impl_.node_.a_const_; } -inline int TableFunc::coltypmods_size() const { - return _internal_coltypmods_size(); +inline ::pg_query::A_Const* Node::mutable_a_const() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::A_Const* _msg = _internal_mutable_a_const(); + // @@protoc_insertion_point(field_mutable:pg_query.Node.a_const) + return _msg; } -inline void TableFunc::clear_coltypmods() { - _impl_.coltypmods_.Clear(); + +inline bool Node::has_node() const { + return node_case() != NODE_NOT_SET; } -inline ::pg_query::Node* TableFunc::mutable_coltypmods(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.coltypmods) - return _impl_.coltypmods_.Mutable(index); +inline void Node::clear_has_node() { + _impl_._oneof_case_[0] = NODE_NOT_SET; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TableFunc::mutable_coltypmods() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.coltypmods) - return &_impl_.coltypmods_; +inline Node::NodeCase Node::node_case() const { + return Node::NodeCase(_impl_._oneof_case_[0]); } -inline const ::pg_query::Node& TableFunc::_internal_coltypmods(int index) const { - return _impl_.coltypmods_.Get(index); +// ------------------------------------------------------------------- + +// Integer + +// int32 ival = 1; +inline void Integer::clear_ival() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ival_ = 0; } -inline const ::pg_query::Node& TableFunc::coltypmods(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.coltypmods) - return _internal_coltypmods(index); +inline ::int32_t Integer::ival() const { + // @@protoc_insertion_point(field_get:pg_query.Integer.ival) + return _internal_ival(); } -inline ::pg_query::Node* TableFunc::_internal_add_coltypmods() { - return _impl_.coltypmods_.Add(); +inline void Integer::set_ival(::int32_t value) { + _internal_set_ival(value); + // @@protoc_insertion_point(field_set:pg_query.Integer.ival) } -inline ::pg_query::Node* TableFunc::add_coltypmods() { - ::pg_query::Node* _add = _internal_add_coltypmods(); - // @@protoc_insertion_point(field_add:pg_query.TableFunc.coltypmods) - return _add; +inline ::int32_t Integer::_internal_ival() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ival_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TableFunc::coltypmods() const { - // @@protoc_insertion_point(field_list:pg_query.TableFunc.coltypmods) - return _impl_.coltypmods_; +inline void Integer::_internal_set_ival(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ival_ = value; } -// repeated .pg_query.Node colcollations = 8 [json_name = "colcollations"]; -inline int TableFunc::_internal_colcollations_size() const { - return _impl_.colcollations_.size(); -} -inline int TableFunc::colcollations_size() const { - return _internal_colcollations_size(); +// ------------------------------------------------------------------- + +// Float + +// string fval = 1; +inline void Float::clear_fval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fval_.ClearToEmpty(); } -inline void TableFunc::clear_colcollations() { - _impl_.colcollations_.Clear(); +inline const std::string& Float::fval() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Float.fval) + return _internal_fval(); } -inline ::pg_query::Node* TableFunc::mutable_colcollations(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.colcollations) - return _impl_.colcollations_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void Float::set_fval(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fval_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Float.fval) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TableFunc::mutable_colcollations() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.colcollations) - return &_impl_.colcollations_; +inline std::string* Float::mutable_fval() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_fval(); + // @@protoc_insertion_point(field_mutable:pg_query.Float.fval) + return _s; } -inline const ::pg_query::Node& TableFunc::_internal_colcollations(int index) const { - return _impl_.colcollations_.Get(index); +inline const std::string& Float::_internal_fval() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fval_.Get(); } -inline const ::pg_query::Node& TableFunc::colcollations(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.colcollations) - return _internal_colcollations(index); +inline void Float::_internal_set_fval(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fval_.Set(value, GetArena()); } -inline ::pg_query::Node* TableFunc::_internal_add_colcollations() { - return _impl_.colcollations_.Add(); +inline std::string* Float::_internal_mutable_fval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.fval_.Mutable( GetArena()); } -inline ::pg_query::Node* TableFunc::add_colcollations() { - ::pg_query::Node* _add = _internal_add_colcollations(); - // @@protoc_insertion_point(field_add:pg_query.TableFunc.colcollations) - return _add; +inline std::string* Float::release_fval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Float.fval) + return _impl_.fval_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TableFunc::colcollations() const { - // @@protoc_insertion_point(field_list:pg_query.TableFunc.colcollations) - return _impl_.colcollations_; +inline void Float::set_allocated_fval(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fval_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.fval_.IsDefault()) { + _impl_.fval_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Float.fval) } -// repeated .pg_query.Node colexprs = 9 [json_name = "colexprs"]; -inline int TableFunc::_internal_colexprs_size() const { - return _impl_.colexprs_.size(); -} -inline int TableFunc::colexprs_size() const { - return _internal_colexprs_size(); -} -inline void TableFunc::clear_colexprs() { - _impl_.colexprs_.Clear(); -} -inline ::pg_query::Node* TableFunc::mutable_colexprs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.colexprs) - return _impl_.colexprs_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TableFunc::mutable_colexprs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.colexprs) - return &_impl_.colexprs_; -} -inline const ::pg_query::Node& TableFunc::_internal_colexprs(int index) const { - return _impl_.colexprs_.Get(index); +// ------------------------------------------------------------------- + +// Boolean + +// bool boolval = 1; +inline void Boolean::clear_boolval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.boolval_ = false; } -inline const ::pg_query::Node& TableFunc::colexprs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.colexprs) - return _internal_colexprs(index); +inline bool Boolean::boolval() const { + // @@protoc_insertion_point(field_get:pg_query.Boolean.boolval) + return _internal_boolval(); } -inline ::pg_query::Node* TableFunc::_internal_add_colexprs() { - return _impl_.colexprs_.Add(); +inline void Boolean::set_boolval(bool value) { + _internal_set_boolval(value); + // @@protoc_insertion_point(field_set:pg_query.Boolean.boolval) } -inline ::pg_query::Node* TableFunc::add_colexprs() { - ::pg_query::Node* _add = _internal_add_colexprs(); - // @@protoc_insertion_point(field_add:pg_query.TableFunc.colexprs) - return _add; +inline bool Boolean::_internal_boolval() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.boolval_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TableFunc::colexprs() const { - // @@protoc_insertion_point(field_list:pg_query.TableFunc.colexprs) - return _impl_.colexprs_; +inline void Boolean::_internal_set_boolval(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.boolval_ = value; } -// repeated .pg_query.Node coldefexprs = 10 [json_name = "coldefexprs"]; -inline int TableFunc::_internal_coldefexprs_size() const { - return _impl_.coldefexprs_.size(); -} -inline int TableFunc::coldefexprs_size() const { - return _internal_coldefexprs_size(); +// ------------------------------------------------------------------- + +// String + +// string sval = 1; +inline void String::clear_sval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sval_.ClearToEmpty(); } -inline void TableFunc::clear_coldefexprs() { - _impl_.coldefexprs_.Clear(); +inline const std::string& String::sval() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.String.sval) + return _internal_sval(); } -inline ::pg_query::Node* TableFunc::mutable_coldefexprs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.coldefexprs) - return _impl_.coldefexprs_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void String::set_sval(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.sval_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.String.sval) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TableFunc::mutable_coldefexprs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.coldefexprs) - return &_impl_.coldefexprs_; +inline std::string* String::mutable_sval() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_sval(); + // @@protoc_insertion_point(field_mutable:pg_query.String.sval) + return _s; } -inline const ::pg_query::Node& TableFunc::_internal_coldefexprs(int index) const { - return _impl_.coldefexprs_.Get(index); +inline const std::string& String::_internal_sval() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.sval_.Get(); } -inline const ::pg_query::Node& TableFunc::coldefexprs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.coldefexprs) - return _internal_coldefexprs(index); +inline void String::_internal_set_sval(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.sval_.Set(value, GetArena()); } -inline ::pg_query::Node* TableFunc::_internal_add_coldefexprs() { - return _impl_.coldefexprs_.Add(); +inline std::string* String::_internal_mutable_sval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.sval_.Mutable( GetArena()); } -inline ::pg_query::Node* TableFunc::add_coldefexprs() { - ::pg_query::Node* _add = _internal_add_coldefexprs(); - // @@protoc_insertion_point(field_add:pg_query.TableFunc.coldefexprs) - return _add; +inline std::string* String::release_sval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.String.sval) + return _impl_.sval_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TableFunc::coldefexprs() const { - // @@protoc_insertion_point(field_list:pg_query.TableFunc.coldefexprs) - return _impl_.coldefexprs_; +inline void String::set_allocated_sval(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sval_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.sval_.IsDefault()) { + _impl_.sval_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.String.sval) } -// repeated uint64 notnulls = 11 [json_name = "notnulls"]; -inline int TableFunc::_internal_notnulls_size() const { - return _impl_.notnulls_.size(); -} -inline int TableFunc::notnulls_size() const { - return _internal_notnulls_size(); -} -inline void TableFunc::clear_notnulls() { - _impl_.notnulls_.Clear(); -} -inline uint64_t TableFunc::_internal_notnulls(int index) const { - return _impl_.notnulls_.Get(index); +// ------------------------------------------------------------------- + +// BitString + +// string bsval = 1; +inline void BitString::clear_bsval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.bsval_.ClearToEmpty(); } -inline uint64_t TableFunc::notnulls(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.notnulls) - return _internal_notnulls(index); +inline const std::string& BitString::bsval() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.BitString.bsval) + return _internal_bsval(); } -inline void TableFunc::set_notnulls(int index, uint64_t value) { - _impl_.notnulls_.Set(index, value); - // @@protoc_insertion_point(field_set:pg_query.TableFunc.notnulls) +template +inline PROTOBUF_ALWAYS_INLINE void BitString::set_bsval(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.bsval_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.BitString.bsval) } -inline void TableFunc::_internal_add_notnulls(uint64_t value) { - _impl_.notnulls_.Add(value); +inline std::string* BitString::mutable_bsval() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_bsval(); + // @@protoc_insertion_point(field_mutable:pg_query.BitString.bsval) + return _s; } -inline void TableFunc::add_notnulls(uint64_t value) { - _internal_add_notnulls(value); - // @@protoc_insertion_point(field_add:pg_query.TableFunc.notnulls) +inline const std::string& BitString::_internal_bsval() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.bsval_.Get(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -TableFunc::_internal_notnulls() const { - return _impl_.notnulls_; +inline void BitString::_internal_set_bsval(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.bsval_.Set(value, GetArena()); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -TableFunc::notnulls() const { - // @@protoc_insertion_point(field_list:pg_query.TableFunc.notnulls) - return _internal_notnulls(); +inline std::string* BitString::_internal_mutable_bsval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.bsval_.Mutable( GetArena()); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -TableFunc::_internal_mutable_notnulls() { - return &_impl_.notnulls_; +inline std::string* BitString::release_bsval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.BitString.bsval) + return _impl_.bsval_.Release(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -TableFunc::mutable_notnulls() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.notnulls) - return _internal_mutable_notnulls(); +inline void BitString::set_allocated_bsval(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.bsval_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.bsval_.IsDefault()) { + _impl_.bsval_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.BitString.bsval) } -// int32 ordinalitycol = 12 [json_name = "ordinalitycol"]; -inline void TableFunc::clear_ordinalitycol() { - _impl_.ordinalitycol_ = 0; +// ------------------------------------------------------------------- + +// List + +// repeated .pg_query.Node items = 1; +inline int List::_internal_items_size() const { + return _internal_items().size(); } -inline int32_t TableFunc::_internal_ordinalitycol() const { - return _impl_.ordinalitycol_; +inline int List::items_size() const { + return _internal_items_size(); } -inline int32_t TableFunc::ordinalitycol() const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.ordinalitycol) - return _internal_ordinalitycol(); +inline void List::clear_items() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.items_.Clear(); } -inline void TableFunc::_internal_set_ordinalitycol(int32_t value) { - - _impl_.ordinalitycol_ = value; +inline ::pg_query::Node* List::mutable_items(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.List.items) + return _internal_mutable_items()->Mutable(index); } -inline void TableFunc::set_ordinalitycol(int32_t value) { - _internal_set_ordinalitycol(value); - // @@protoc_insertion_point(field_set:pg_query.TableFunc.ordinalitycol) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* List::mutable_items() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.List.items) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_items(); } - -// int32 location = 13 [json_name = "location"]; -inline void TableFunc::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Node& List::items(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.List.items) + return _internal_items().Get(index); } -inline int32_t TableFunc::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Node* List::add_items() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_items()->Add(); + // @@protoc_insertion_point(field_add:pg_query.List.items) + return _add; } -inline int32_t TableFunc::location() const { - // @@protoc_insertion_point(field_get:pg_query.TableFunc.location) - return _internal_location(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& List::items() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.List.items) + return _internal_items(); } -inline void TableFunc::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +List::_internal_items() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.items_; } -inline void TableFunc::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.TableFunc.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +List::_internal_mutable_items() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.items_; } // ------------------------------------------------------------------- -// Var +// OidList -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool Var::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool Var::has_xpr() const { - return _internal_has_xpr(); +// repeated .pg_query.Node items = 1; +inline int OidList::_internal_items_size() const { + return _internal_items().size(); } -inline void Var::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline int OidList::items_size() const { + return _internal_items_size(); } -inline const ::pg_query::Node& Var::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void OidList::clear_items() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.items_.Clear(); } -inline const ::pg_query::Node& Var::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.Var.xpr) - return _internal_xpr(); +inline ::pg_query::Node* OidList::mutable_items(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.OidList.items) + return _internal_mutable_items()->Mutable(index); } -inline void Var::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); - } - _impl_.xpr_ = xpr; - if (xpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Var.xpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* OidList::mutable_items() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.OidList.items) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_items(); } -inline ::pg_query::Node* Var::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& OidList::items(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OidList.items) + return _internal_items().Get(index); } -inline ::pg_query::Node* Var::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.Var.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; - return temp; +inline ::pg_query::Node* OidList::add_items() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_items()->Add(); + // @@protoc_insertion_point(field_add:pg_query.OidList.items) + return _add; } -inline ::pg_query::Node* Var::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; - } - return _impl_.xpr_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& OidList::items() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.OidList.items) + return _internal_items(); } -inline ::pg_query::Node* Var::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.Var.xpr) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +OidList::_internal_items() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.items_; } -inline void Var::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - - } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.Var.xpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +OidList::_internal_mutable_items() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.items_; } -// int32 varno = 2 [json_name = "varno"]; -inline void Var::clear_varno() { - _impl_.varno_ = 0; -} -inline int32_t Var::_internal_varno() const { - return _impl_.varno_; -} -inline int32_t Var::varno() const { - // @@protoc_insertion_point(field_get:pg_query.Var.varno) - return _internal_varno(); -} -inline void Var::_internal_set_varno(int32_t value) { - - _impl_.varno_ = value; -} -inline void Var::set_varno(int32_t value) { - _internal_set_varno(value); - // @@protoc_insertion_point(field_set:pg_query.Var.varno) -} +// ------------------------------------------------------------------- -// int32 varattno = 3 [json_name = "varattno"]; -inline void Var::clear_varattno() { - _impl_.varattno_ = 0; +// IntList + +// repeated .pg_query.Node items = 1; +inline int IntList::_internal_items_size() const { + return _internal_items().size(); } -inline int32_t Var::_internal_varattno() const { - return _impl_.varattno_; +inline int IntList::items_size() const { + return _internal_items_size(); } -inline int32_t Var::varattno() const { - // @@protoc_insertion_point(field_get:pg_query.Var.varattno) - return _internal_varattno(); +inline void IntList::clear_items() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.items_.Clear(); } -inline void Var::_internal_set_varattno(int32_t value) { - - _impl_.varattno_ = value; +inline ::pg_query::Node* IntList::mutable_items(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IntList.items) + return _internal_mutable_items()->Mutable(index); } -inline void Var::set_varattno(int32_t value) { - _internal_set_varattno(value); - // @@protoc_insertion_point(field_set:pg_query.Var.varattno) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IntList::mutable_items() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IntList.items) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_items(); } - -// uint32 vartype = 4 [json_name = "vartype"]; -inline void Var::clear_vartype() { - _impl_.vartype_ = 0u; +inline const ::pg_query::Node& IntList::items(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IntList.items) + return _internal_items().Get(index); } -inline uint32_t Var::_internal_vartype() const { - return _impl_.vartype_; +inline ::pg_query::Node* IntList::add_items() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_items()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IntList.items) + return _add; } -inline uint32_t Var::vartype() const { - // @@protoc_insertion_point(field_get:pg_query.Var.vartype) - return _internal_vartype(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IntList::items() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IntList.items) + return _internal_items(); } -inline void Var::_internal_set_vartype(uint32_t value) { - - _impl_.vartype_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IntList::_internal_items() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.items_; } -inline void Var::set_vartype(uint32_t value) { - _internal_set_vartype(value); - // @@protoc_insertion_point(field_set:pg_query.Var.vartype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IntList::_internal_mutable_items() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.items_; } -// int32 vartypmod = 5 [json_name = "vartypmod"]; -inline void Var::clear_vartypmod() { - _impl_.vartypmod_ = 0; +// ------------------------------------------------------------------- + +// A_Const + +// .pg_query.Integer ival = 1; +inline bool A_Const::has_ival() const { + return val_case() == kIval; +} +inline bool A_Const::_internal_has_ival() const { + return val_case() == kIval; } -inline int32_t Var::_internal_vartypmod() const { - return _impl_.vartypmod_; +inline void A_Const::set_has_ival() { + _impl_._oneof_case_[0] = kIval; } -inline int32_t Var::vartypmod() const { - // @@protoc_insertion_point(field_get:pg_query.Var.vartypmod) - return _internal_vartypmod(); +inline void A_Const::clear_ival() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (val_case() == kIval) { + if (GetArena() == nullptr) { + delete _impl_.val_.ival_; + } + clear_has_val(); + } } -inline void Var::_internal_set_vartypmod(int32_t value) { - - _impl_.vartypmod_ = value; +inline ::pg_query::Integer* A_Const::release_ival() { + // @@protoc_insertion_point(field_release:pg_query.A_Const.ival) + if (val_case() == kIval) { + clear_has_val(); + auto* temp = _impl_.val_.ival_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.val_.ival_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline void Var::set_vartypmod(int32_t value) { - _internal_set_vartypmod(value); - // @@protoc_insertion_point(field_set:pg_query.Var.vartypmod) +inline const ::pg_query::Integer& A_Const::_internal_ival() const { + return val_case() == kIval ? *_impl_.val_.ival_ : reinterpret_cast<::pg_query::Integer&>(::pg_query::_Integer_default_instance_); } - -// uint32 varcollid = 6 [json_name = "varcollid"]; -inline void Var::clear_varcollid() { - _impl_.varcollid_ = 0u; +inline const ::pg_query::Integer& A_Const::ival() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Const.ival) + return _internal_ival(); } -inline uint32_t Var::_internal_varcollid() const { - return _impl_.varcollid_; +inline ::pg_query::Integer* A_Const::unsafe_arena_release_ival() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.ival) + if (val_case() == kIval) { + clear_has_val(); + auto* temp = _impl_.val_.ival_; + _impl_.val_.ival_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline uint32_t Var::varcollid() const { - // @@protoc_insertion_point(field_get:pg_query.Var.varcollid) - return _internal_varcollid(); +inline void A_Const::unsafe_arena_set_allocated_ival(::pg_query::Integer* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_val(); + if (value) { + set_has_ival(); + _impl_.val_.ival_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.ival) } -inline void Var::_internal_set_varcollid(uint32_t value) { - - _impl_.varcollid_ = value; +inline ::pg_query::Integer* A_Const::_internal_mutable_ival() { + if (val_case() != kIval) { + clear_val(); + set_has_ival(); + _impl_.val_.ival_ = CreateMaybeMessage<::pg_query::Integer>(GetArena()); + } + return _impl_.val_.ival_; } -inline void Var::set_varcollid(uint32_t value) { - _internal_set_varcollid(value); - // @@protoc_insertion_point(field_set:pg_query.Var.varcollid) +inline ::pg_query::Integer* A_Const::mutable_ival() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Integer* _msg = _internal_mutable_ival(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Const.ival) + return _msg; } -// uint32 varlevelsup = 7 [json_name = "varlevelsup"]; -inline void Var::clear_varlevelsup() { - _impl_.varlevelsup_ = 0u; +// .pg_query.Float fval = 2; +inline bool A_Const::has_fval() const { + return val_case() == kFval; } -inline uint32_t Var::_internal_varlevelsup() const { - return _impl_.varlevelsup_; +inline bool A_Const::_internal_has_fval() const { + return val_case() == kFval; } -inline uint32_t Var::varlevelsup() const { - // @@protoc_insertion_point(field_get:pg_query.Var.varlevelsup) - return _internal_varlevelsup(); +inline void A_Const::set_has_fval() { + _impl_._oneof_case_[0] = kFval; } -inline void Var::_internal_set_varlevelsup(uint32_t value) { - - _impl_.varlevelsup_ = value; +inline void A_Const::clear_fval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (val_case() == kFval) { + if (GetArena() == nullptr) { + delete _impl_.val_.fval_; + } + clear_has_val(); + } } -inline void Var::set_varlevelsup(uint32_t value) { - _internal_set_varlevelsup(value); - // @@protoc_insertion_point(field_set:pg_query.Var.varlevelsup) +inline ::pg_query::Float* A_Const::release_fval() { + // @@protoc_insertion_point(field_release:pg_query.A_Const.fval) + if (val_case() == kFval) { + clear_has_val(); + auto* temp = _impl_.val_.fval_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.val_.fval_ = nullptr; + return temp; + } else { + return nullptr; + } } - -// uint32 varnosyn = 8 [json_name = "varnosyn"]; -inline void Var::clear_varnosyn() { - _impl_.varnosyn_ = 0u; +inline const ::pg_query::Float& A_Const::_internal_fval() const { + return val_case() == kFval ? *_impl_.val_.fval_ : reinterpret_cast<::pg_query::Float&>(::pg_query::_Float_default_instance_); +} +inline const ::pg_query::Float& A_Const::fval() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Const.fval) + return _internal_fval(); } -inline uint32_t Var::_internal_varnosyn() const { - return _impl_.varnosyn_; +inline ::pg_query::Float* A_Const::unsafe_arena_release_fval() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.fval) + if (val_case() == kFval) { + clear_has_val(); + auto* temp = _impl_.val_.fval_; + _impl_.val_.fval_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline uint32_t Var::varnosyn() const { - // @@protoc_insertion_point(field_get:pg_query.Var.varnosyn) - return _internal_varnosyn(); +inline void A_Const::unsafe_arena_set_allocated_fval(::pg_query::Float* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_val(); + if (value) { + set_has_fval(); + _impl_.val_.fval_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.fval) } -inline void Var::_internal_set_varnosyn(uint32_t value) { - - _impl_.varnosyn_ = value; +inline ::pg_query::Float* A_Const::_internal_mutable_fval() { + if (val_case() != kFval) { + clear_val(); + set_has_fval(); + _impl_.val_.fval_ = CreateMaybeMessage<::pg_query::Float>(GetArena()); + } + return _impl_.val_.fval_; } -inline void Var::set_varnosyn(uint32_t value) { - _internal_set_varnosyn(value); - // @@protoc_insertion_point(field_set:pg_query.Var.varnosyn) +inline ::pg_query::Float* A_Const::mutable_fval() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Float* _msg = _internal_mutable_fval(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Const.fval) + return _msg; } -// int32 varattnosyn = 9 [json_name = "varattnosyn"]; -inline void Var::clear_varattnosyn() { - _impl_.varattnosyn_ = 0; +// .pg_query.Boolean boolval = 3; +inline bool A_Const::has_boolval() const { + return val_case() == kBoolval; +} +inline bool A_Const::_internal_has_boolval() const { + return val_case() == kBoolval; } -inline int32_t Var::_internal_varattnosyn() const { - return _impl_.varattnosyn_; +inline void A_Const::set_has_boolval() { + _impl_._oneof_case_[0] = kBoolval; } -inline int32_t Var::varattnosyn() const { - // @@protoc_insertion_point(field_get:pg_query.Var.varattnosyn) - return _internal_varattnosyn(); +inline void A_Const::clear_boolval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (val_case() == kBoolval) { + if (GetArena() == nullptr) { + delete _impl_.val_.boolval_; + } + clear_has_val(); + } } -inline void Var::_internal_set_varattnosyn(int32_t value) { - - _impl_.varattnosyn_ = value; +inline ::pg_query::Boolean* A_Const::release_boolval() { + // @@protoc_insertion_point(field_release:pg_query.A_Const.boolval) + if (val_case() == kBoolval) { + clear_has_val(); + auto* temp = _impl_.val_.boolval_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.val_.boolval_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline void Var::set_varattnosyn(int32_t value) { - _internal_set_varattnosyn(value); - // @@protoc_insertion_point(field_set:pg_query.Var.varattnosyn) +inline const ::pg_query::Boolean& A_Const::_internal_boolval() const { + return val_case() == kBoolval ? *_impl_.val_.boolval_ : reinterpret_cast<::pg_query::Boolean&>(::pg_query::_Boolean_default_instance_); } - -// int32 location = 10 [json_name = "location"]; -inline void Var::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Boolean& A_Const::boolval() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Const.boolval) + return _internal_boolval(); } -inline int32_t Var::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Boolean* A_Const::unsafe_arena_release_boolval() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.boolval) + if (val_case() == kBoolval) { + clear_has_val(); + auto* temp = _impl_.val_.boolval_; + _impl_.val_.boolval_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline int32_t Var::location() const { - // @@protoc_insertion_point(field_get:pg_query.Var.location) - return _internal_location(); +inline void A_Const::unsafe_arena_set_allocated_boolval(::pg_query::Boolean* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_val(); + if (value) { + set_has_boolval(); + _impl_.val_.boolval_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.boolval) } -inline void Var::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Boolean* A_Const::_internal_mutable_boolval() { + if (val_case() != kBoolval) { + clear_val(); + set_has_boolval(); + _impl_.val_.boolval_ = CreateMaybeMessage<::pg_query::Boolean>(GetArena()); + } + return _impl_.val_.boolval_; } -inline void Var::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.Var.location) +inline ::pg_query::Boolean* A_Const::mutable_boolval() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Boolean* _msg = _internal_mutable_boolval(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Const.boolval) + return _msg; } -// ------------------------------------------------------------------- - -// Param - -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool Param::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; +// .pg_query.String sval = 4; +inline bool A_Const::has_sval() const { + return val_case() == kSval; } -inline bool Param::has_xpr() const { - return _internal_has_xpr(); +inline bool A_Const::_internal_has_sval() const { + return val_case() == kSval; } -inline void Param::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; +inline void A_Const::set_has_sval() { + _impl_._oneof_case_[0] = kSval; +} +inline void A_Const::clear_sval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (val_case() == kSval) { + if (GetArena() == nullptr) { + delete _impl_.val_.sval_; + } + clear_has_val(); } - _impl_.xpr_ = nullptr; } -inline const ::pg_query::Node& Param::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::String* A_Const::release_sval() { + // @@protoc_insertion_point(field_release:pg_query.A_Const.sval) + if (val_case() == kSval) { + clear_has_val(); + auto* temp = _impl_.val_.sval_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.val_.sval_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline const ::pg_query::Node& Param::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.Param.xpr) - return _internal_xpr(); +inline const ::pg_query::String& A_Const::_internal_sval() const { + return val_case() == kSval ? *_impl_.val_.sval_ : reinterpret_cast<::pg_query::String&>(::pg_query::_String_default_instance_); } -inline void Param::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); - } - _impl_.xpr_ = xpr; - if (xpr) { - +inline const ::pg_query::String& A_Const::sval() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Const.sval) + return _internal_sval(); +} +inline ::pg_query::String* A_Const::unsafe_arena_release_sval() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.sval) + if (val_case() == kSval) { + clear_has_val(); + auto* temp = _impl_.val_.sval_; + _impl_.val_.sval_ = nullptr; + return temp; } else { - + return nullptr; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Param.xpr) } -inline ::pg_query::Node* Param::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline void A_Const::unsafe_arena_set_allocated_sval(::pg_query::String* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_val(); + if (value) { + set_has_sval(); + _impl_.val_.sval_ = value; } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::pg_query::Node* Param::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.Param.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; - return temp; + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.sval) } -inline ::pg_query::Node* Param::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; +inline ::pg_query::String* A_Const::_internal_mutable_sval() { + if (val_case() != kSval) { + clear_val(); + set_has_sval(); + _impl_.val_.sval_ = CreateMaybeMessage<::pg_query::String>(GetArena()); } - return _impl_.xpr_; + return _impl_.val_.sval_; } -inline ::pg_query::Node* Param::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.Param.xpr) +inline ::pg_query::String* A_Const::mutable_sval() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::String* _msg = _internal_mutable_sval(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Const.sval) return _msg; } -inline void Param::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.xpr_; + +// .pg_query.BitString bsval = 5; +inline bool A_Const::has_bsval() const { + return val_case() == kBsval; +} +inline bool A_Const::_internal_has_bsval() const { + return val_case() == kBsval; +} +inline void A_Const::set_has_bsval() { + _impl_._oneof_case_[0] = kBsval; +} +inline void A_Const::clear_bsval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (val_case() == kBsval) { + if (GetArena() == nullptr) { + delete _impl_.val_.bsval_; + } + clear_has_val(); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); +} +inline ::pg_query::BitString* A_Const::release_bsval() { + // @@protoc_insertion_point(field_release:pg_query.A_Const.bsval) + if (val_case() == kBsval) { + clear_has_val(); + auto* temp = _impl_.val_.bsval_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); } - + _impl_.val_.bsval_ = nullptr; + return temp; } else { - + return nullptr; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.Param.xpr) } - -// .pg_query.ParamKind paramkind = 2 [json_name = "paramkind"]; -inline void Param::clear_paramkind() { - _impl_.paramkind_ = 0; +inline const ::pg_query::BitString& A_Const::_internal_bsval() const { + return val_case() == kBsval ? *_impl_.val_.bsval_ : reinterpret_cast<::pg_query::BitString&>(::pg_query::_BitString_default_instance_); } -inline ::pg_query::ParamKind Param::_internal_paramkind() const { - return static_cast< ::pg_query::ParamKind >(_impl_.paramkind_); +inline const ::pg_query::BitString& A_Const::bsval() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Const.bsval) + return _internal_bsval(); } -inline ::pg_query::ParamKind Param::paramkind() const { - // @@protoc_insertion_point(field_get:pg_query.Param.paramkind) - return _internal_paramkind(); +inline ::pg_query::BitString* A_Const::unsafe_arena_release_bsval() { + // @@protoc_insertion_point(field_unsafe_arena_release:pg_query.A_Const.bsval) + if (val_case() == kBsval) { + clear_has_val(); + auto* temp = _impl_.val_.bsval_; + _impl_.val_.bsval_ = nullptr; + return temp; + } else { + return nullptr; + } } -inline void Param::_internal_set_paramkind(::pg_query::ParamKind value) { - - _impl_.paramkind_ = value; +inline void A_Const::unsafe_arena_set_allocated_bsval(::pg_query::BitString* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_val(); + if (value) { + set_has_bsval(); + _impl_.val_.bsval_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Const.bsval) } -inline void Param::set_paramkind(::pg_query::ParamKind value) { - _internal_set_paramkind(value); - // @@protoc_insertion_point(field_set:pg_query.Param.paramkind) +inline ::pg_query::BitString* A_Const::_internal_mutable_bsval() { + if (val_case() != kBsval) { + clear_val(); + set_has_bsval(); + _impl_.val_.bsval_ = CreateMaybeMessage<::pg_query::BitString>(GetArena()); + } + return _impl_.val_.bsval_; +} +inline ::pg_query::BitString* A_Const::mutable_bsval() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::BitString* _msg = _internal_mutable_bsval(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Const.bsval) + return _msg; } -// int32 paramid = 3 [json_name = "paramid"]; -inline void Param::clear_paramid() { - _impl_.paramid_ = 0; +// bool isnull = 10; +inline void A_Const::clear_isnull() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.isnull_ = false; } -inline int32_t Param::_internal_paramid() const { - return _impl_.paramid_; +inline bool A_Const::isnull() const { + // @@protoc_insertion_point(field_get:pg_query.A_Const.isnull) + return _internal_isnull(); } -inline int32_t Param::paramid() const { - // @@protoc_insertion_point(field_get:pg_query.Param.paramid) - return _internal_paramid(); +inline void A_Const::set_isnull(bool value) { + _internal_set_isnull(value); + // @@protoc_insertion_point(field_set:pg_query.A_Const.isnull) } -inline void Param::_internal_set_paramid(int32_t value) { - - _impl_.paramid_ = value; +inline bool A_Const::_internal_isnull() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.isnull_; } -inline void Param::set_paramid(int32_t value) { - _internal_set_paramid(value); - // @@protoc_insertion_point(field_set:pg_query.Param.paramid) +inline void A_Const::_internal_set_isnull(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.isnull_ = value; } -// uint32 paramtype = 4 [json_name = "paramtype"]; -inline void Param::clear_paramtype() { - _impl_.paramtype_ = 0u; +// int32 location = 11; +inline void A_Const::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline uint32_t Param::_internal_paramtype() const { - return _impl_.paramtype_; +inline ::int32_t A_Const::location() const { + // @@protoc_insertion_point(field_get:pg_query.A_Const.location) + return _internal_location(); } -inline uint32_t Param::paramtype() const { - // @@protoc_insertion_point(field_get:pg_query.Param.paramtype) - return _internal_paramtype(); +inline void A_Const::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.A_Const.location) } -inline void Param::_internal_set_paramtype(uint32_t value) { - - _impl_.paramtype_ = value; +inline ::int32_t A_Const::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void Param::set_paramtype(uint32_t value) { - _internal_set_paramtype(value); - // @@protoc_insertion_point(field_set:pg_query.Param.paramtype) +inline void A_Const::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// int32 paramtypmod = 5 [json_name = "paramtypmod"]; -inline void Param::clear_paramtypmod() { - _impl_.paramtypmod_ = 0; +inline bool A_Const::has_val() const { + return val_case() != VAL_NOT_SET; } -inline int32_t Param::_internal_paramtypmod() const { - return _impl_.paramtypmod_; +inline void A_Const::clear_has_val() { + _impl_._oneof_case_[0] = VAL_NOT_SET; } -inline int32_t Param::paramtypmod() const { - // @@protoc_insertion_point(field_get:pg_query.Param.paramtypmod) - return _internal_paramtypmod(); +inline A_Const::ValCase A_Const::val_case() const { + return A_Const::ValCase(_impl_._oneof_case_[0]); } -inline void Param::_internal_set_paramtypmod(int32_t value) { - - _impl_.paramtypmod_ = value; +// ------------------------------------------------------------------- + +// Alias + +// string aliasname = 1 [json_name = "aliasname"]; +inline void Alias::clear_aliasname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aliasname_.ClearToEmpty(); } -inline void Param::set_paramtypmod(int32_t value) { - _internal_set_paramtypmod(value); - // @@protoc_insertion_point(field_set:pg_query.Param.paramtypmod) +inline const std::string& Alias::aliasname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Alias.aliasname) + return _internal_aliasname(); } - -// uint32 paramcollid = 6 [json_name = "paramcollid"]; -inline void Param::clear_paramcollid() { - _impl_.paramcollid_ = 0u; +template +inline PROTOBUF_ALWAYS_INLINE void Alias::set_aliasname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aliasname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Alias.aliasname) } -inline uint32_t Param::_internal_paramcollid() const { - return _impl_.paramcollid_; +inline std::string* Alias::mutable_aliasname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_aliasname(); + // @@protoc_insertion_point(field_mutable:pg_query.Alias.aliasname) + return _s; } -inline uint32_t Param::paramcollid() const { - // @@protoc_insertion_point(field_get:pg_query.Param.paramcollid) - return _internal_paramcollid(); +inline const std::string& Alias::_internal_aliasname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aliasname_.Get(); } -inline void Param::_internal_set_paramcollid(uint32_t value) { - - _impl_.paramcollid_ = value; +inline void Alias::_internal_set_aliasname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aliasname_.Set(value, GetArena()); } -inline void Param::set_paramcollid(uint32_t value) { - _internal_set_paramcollid(value); - // @@protoc_insertion_point(field_set:pg_query.Param.paramcollid) +inline std::string* Alias::_internal_mutable_aliasname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.aliasname_.Mutable( GetArena()); } - -// int32 location = 7 [json_name = "location"]; -inline void Param::clear_location() { - _impl_.location_ = 0; +inline std::string* Alias::release_aliasname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Alias.aliasname) + return _impl_.aliasname_.Release(); } -inline int32_t Param::_internal_location() const { - return _impl_.location_; +inline void Alias::set_allocated_aliasname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aliasname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.aliasname_.IsDefault()) { + _impl_.aliasname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Alias.aliasname) } -inline int32_t Param::location() const { - // @@protoc_insertion_point(field_get:pg_query.Param.location) - return _internal_location(); + +// repeated .pg_query.Node colnames = 2 [json_name = "colnames"]; +inline int Alias::_internal_colnames_size() const { + return _internal_colnames().size(); } -inline void Param::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline int Alias::colnames_size() const { + return _internal_colnames_size(); } -inline void Param::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.Param.location) +inline void Alias::clear_colnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colnames_.Clear(); } - -// ------------------------------------------------------------------- - -// Aggref - -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool Aggref::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; +inline ::pg_query::Node* Alias::mutable_colnames(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Alias.colnames) + return _internal_mutable_colnames()->Mutable(index); } -inline bool Aggref::has_xpr() const { - return _internal_has_xpr(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Alias::mutable_colnames() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Alias.colnames) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_colnames(); } -inline void Aggref::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline const ::pg_query::Node& Alias::colnames(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Alias.colnames) + return _internal_colnames().Get(index); } -inline const ::pg_query::Node& Aggref::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::Node* Alias::add_colnames() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_colnames()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Alias.colnames) + return _add; } -inline const ::pg_query::Node& Aggref::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.xpr) - return _internal_xpr(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Alias::colnames() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Alias.colnames) + return _internal_colnames(); } -inline void Aggref::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); - } - _impl_.xpr_ = xpr; - if (xpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Aggref.xpr) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Alias::_internal_colnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.colnames_; } -inline ::pg_query::Node* Aggref::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Alias::_internal_mutable_colnames() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.colnames_; } -inline ::pg_query::Node* Aggref::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.Aggref.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; - return temp; + +// ------------------------------------------------------------------- + +// RangeVar + +// string catalogname = 1 [json_name = "catalogname"]; +inline void RangeVar::clear_catalogname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.catalogname_.ClearToEmpty(); } -inline ::pg_query::Node* Aggref::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; - } - return _impl_.xpr_; +inline const std::string& RangeVar::catalogname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeVar.catalogname) + return _internal_catalogname(); } -inline ::pg_query::Node* Aggref::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.Aggref.xpr) - return _msg; +template +inline PROTOBUF_ALWAYS_INLINE void RangeVar::set_catalogname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.catalogname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RangeVar.catalogname) } -inline void Aggref::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - - } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.Aggref.xpr) +inline std::string* RangeVar::mutable_catalogname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_catalogname(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.catalogname) + return _s; } - -// uint32 aggfnoid = 2 [json_name = "aggfnoid"]; -inline void Aggref::clear_aggfnoid() { - _impl_.aggfnoid_ = 0u; +inline const std::string& RangeVar::_internal_catalogname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.catalogname_.Get(); } -inline uint32_t Aggref::_internal_aggfnoid() const { - return _impl_.aggfnoid_; +inline void RangeVar::_internal_set_catalogname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.catalogname_.Set(value, GetArena()); } -inline uint32_t Aggref::aggfnoid() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggfnoid) - return _internal_aggfnoid(); +inline std::string* RangeVar::_internal_mutable_catalogname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.catalogname_.Mutable( GetArena()); } -inline void Aggref::_internal_set_aggfnoid(uint32_t value) { - - _impl_.aggfnoid_ = value; +inline std::string* RangeVar::release_catalogname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeVar.catalogname) + return _impl_.catalogname_.Release(); } -inline void Aggref::set_aggfnoid(uint32_t value) { - _internal_set_aggfnoid(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggfnoid) +inline void RangeVar::set_allocated_catalogname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.catalogname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.catalogname_.IsDefault()) { + _impl_.catalogname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.catalogname) } -// uint32 aggtype = 3 [json_name = "aggtype"]; -inline void Aggref::clear_aggtype() { - _impl_.aggtype_ = 0u; -} -inline uint32_t Aggref::_internal_aggtype() const { - return _impl_.aggtype_; +// string schemaname = 2 [json_name = "schemaname"]; +inline void RangeVar::clear_schemaname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.schemaname_.ClearToEmpty(); } -inline uint32_t Aggref::aggtype() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggtype) - return _internal_aggtype(); +inline const std::string& RangeVar::schemaname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeVar.schemaname) + return _internal_schemaname(); } -inline void Aggref::_internal_set_aggtype(uint32_t value) { - - _impl_.aggtype_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void RangeVar::set_schemaname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.schemaname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RangeVar.schemaname) } -inline void Aggref::set_aggtype(uint32_t value) { - _internal_set_aggtype(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggtype) +inline std::string* RangeVar::mutable_schemaname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_schemaname(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.schemaname) + return _s; } - -// uint32 aggcollid = 4 [json_name = "aggcollid"]; -inline void Aggref::clear_aggcollid() { - _impl_.aggcollid_ = 0u; +inline const std::string& RangeVar::_internal_schemaname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.schemaname_.Get(); } -inline uint32_t Aggref::_internal_aggcollid() const { - return _impl_.aggcollid_; +inline void RangeVar::_internal_set_schemaname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.schemaname_.Set(value, GetArena()); } -inline uint32_t Aggref::aggcollid() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggcollid) - return _internal_aggcollid(); +inline std::string* RangeVar::_internal_mutable_schemaname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.schemaname_.Mutable( GetArena()); } -inline void Aggref::_internal_set_aggcollid(uint32_t value) { - - _impl_.aggcollid_ = value; +inline std::string* RangeVar::release_schemaname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeVar.schemaname) + return _impl_.schemaname_.Release(); } -inline void Aggref::set_aggcollid(uint32_t value) { - _internal_set_aggcollid(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggcollid) +inline void RangeVar::set_allocated_schemaname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.schemaname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.schemaname_.IsDefault()) { + _impl_.schemaname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.schemaname) } -// uint32 inputcollid = 5 [json_name = "inputcollid"]; -inline void Aggref::clear_inputcollid() { - _impl_.inputcollid_ = 0u; -} -inline uint32_t Aggref::_internal_inputcollid() const { - return _impl_.inputcollid_; +// string relname = 3 [json_name = "relname"]; +inline void RangeVar::clear_relname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relname_.ClearToEmpty(); } -inline uint32_t Aggref::inputcollid() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.inputcollid) - return _internal_inputcollid(); +inline const std::string& RangeVar::relname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeVar.relname) + return _internal_relname(); } -inline void Aggref::_internal_set_inputcollid(uint32_t value) { - - _impl_.inputcollid_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void RangeVar::set_relname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RangeVar.relname) } -inline void Aggref::set_inputcollid(uint32_t value) { - _internal_set_inputcollid(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.inputcollid) +inline std::string* RangeVar::mutable_relname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_relname(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.relname) + return _s; } - -// uint32 aggtranstype = 6 [json_name = "aggtranstype"]; -inline void Aggref::clear_aggtranstype() { - _impl_.aggtranstype_ = 0u; +inline const std::string& RangeVar::_internal_relname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relname_.Get(); } -inline uint32_t Aggref::_internal_aggtranstype() const { - return _impl_.aggtranstype_; +inline void RangeVar::_internal_set_relname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relname_.Set(value, GetArena()); } -inline uint32_t Aggref::aggtranstype() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggtranstype) - return _internal_aggtranstype(); +inline std::string* RangeVar::_internal_mutable_relname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.relname_.Mutable( GetArena()); } -inline void Aggref::_internal_set_aggtranstype(uint32_t value) { - - _impl_.aggtranstype_ = value; +inline std::string* RangeVar::release_relname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeVar.relname) + return _impl_.relname_.Release(); } -inline void Aggref::set_aggtranstype(uint32_t value) { - _internal_set_aggtranstype(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggtranstype) +inline void RangeVar::set_allocated_relname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.relname_.IsDefault()) { + _impl_.relname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.relname) } -// repeated .pg_query.Node aggargtypes = 7 [json_name = "aggargtypes"]; -inline int Aggref::_internal_aggargtypes_size() const { - return _impl_.aggargtypes_.size(); -} -inline int Aggref::aggargtypes_size() const { - return _internal_aggargtypes_size(); +// bool inh = 4 [json_name = "inh"]; +inline void RangeVar::clear_inh() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inh_ = false; } -inline void Aggref::clear_aggargtypes() { - _impl_.aggargtypes_.Clear(); +inline bool RangeVar::inh() const { + // @@protoc_insertion_point(field_get:pg_query.RangeVar.inh) + return _internal_inh(); } -inline ::pg_query::Node* Aggref::mutable_aggargtypes(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggargtypes) - return _impl_.aggargtypes_.Mutable(index); +inline void RangeVar::set_inh(bool value) { + _internal_set_inh(value); + // @@protoc_insertion_point(field_set:pg_query.RangeVar.inh) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Aggref::mutable_aggargtypes() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.aggargtypes) - return &_impl_.aggargtypes_; +inline bool RangeVar::_internal_inh() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inh_; } -inline const ::pg_query::Node& Aggref::_internal_aggargtypes(int index) const { - return _impl_.aggargtypes_.Get(index); +inline void RangeVar::_internal_set_inh(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inh_ = value; } -inline const ::pg_query::Node& Aggref::aggargtypes(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggargtypes) - return _internal_aggargtypes(index); + +// string relpersistence = 5 [json_name = "relpersistence"]; +inline void RangeVar::clear_relpersistence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relpersistence_.ClearToEmpty(); } -inline ::pg_query::Node* Aggref::_internal_add_aggargtypes() { - return _impl_.aggargtypes_.Add(); +inline const std::string& RangeVar::relpersistence() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeVar.relpersistence) + return _internal_relpersistence(); } -inline ::pg_query::Node* Aggref::add_aggargtypes() { - ::pg_query::Node* _add = _internal_add_aggargtypes(); - // @@protoc_insertion_point(field_add:pg_query.Aggref.aggargtypes) - return _add; +template +inline PROTOBUF_ALWAYS_INLINE void RangeVar::set_relpersistence(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relpersistence_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RangeVar.relpersistence) } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Aggref::aggargtypes() const { - // @@protoc_insertion_point(field_list:pg_query.Aggref.aggargtypes) - return _impl_.aggargtypes_; +inline std::string* RangeVar::mutable_relpersistence() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_relpersistence(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.relpersistence) + return _s; } - -// repeated .pg_query.Node aggdirectargs = 8 [json_name = "aggdirectargs"]; -inline int Aggref::_internal_aggdirectargs_size() const { - return _impl_.aggdirectargs_.size(); +inline const std::string& RangeVar::_internal_relpersistence() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relpersistence_.Get(); } -inline int Aggref::aggdirectargs_size() const { - return _internal_aggdirectargs_size(); +inline void RangeVar::_internal_set_relpersistence(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relpersistence_.Set(value, GetArena()); } -inline void Aggref::clear_aggdirectargs() { - _impl_.aggdirectargs_.Clear(); +inline std::string* RangeVar::_internal_mutable_relpersistence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.relpersistence_.Mutable( GetArena()); } -inline ::pg_query::Node* Aggref::mutable_aggdirectargs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggdirectargs) - return _impl_.aggdirectargs_.Mutable(index); +inline std::string* RangeVar::release_relpersistence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeVar.relpersistence) + return _impl_.relpersistence_.Release(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Aggref::mutable_aggdirectargs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.aggdirectargs) - return &_impl_.aggdirectargs_; +inline void RangeVar::set_allocated_relpersistence(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relpersistence_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.relpersistence_.IsDefault()) { + _impl_.relpersistence_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.relpersistence) } -inline const ::pg_query::Node& Aggref::_internal_aggdirectargs(int index) const { - return _impl_.aggdirectargs_.Get(index); + +// .pg_query.Alias alias = 6 [json_name = "alias"]; +inline bool RangeVar::has_alias() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.alias_ != nullptr); + return value; } -inline const ::pg_query::Node& Aggref::aggdirectargs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggdirectargs) - return _internal_aggdirectargs(index); +inline void RangeVar::clear_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.alias_ != nullptr) _impl_.alias_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* Aggref::_internal_add_aggdirectargs() { - return _impl_.aggdirectargs_.Add(); +inline const ::pg_query::Alias& RangeVar::_internal_alias() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Alias* p = _impl_.alias_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Alias_default_instance_); } -inline ::pg_query::Node* Aggref::add_aggdirectargs() { - ::pg_query::Node* _add = _internal_add_aggdirectargs(); - // @@protoc_insertion_point(field_add:pg_query.Aggref.aggdirectargs) - return _add; +inline const ::pg_query::Alias& RangeVar::alias() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeVar.alias) + return _internal_alias(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Aggref::aggdirectargs() const { - // @@protoc_insertion_point(field_list:pg_query.Aggref.aggdirectargs) - return _impl_.aggdirectargs_; +inline void RangeVar::unsafe_arena_set_allocated_alias(::pg_query::Alias* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.alias_); + } + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeVar.alias) } +inline ::pg_query::Alias* RangeVar::release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node args = 9 [json_name = "args"]; -inline int Aggref::_internal_args_size() const { - return _impl_.args_.size(); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Alias* released = _impl_.alias_; + _impl_.alias_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int Aggref::args_size() const { - return _internal_args_size(); +inline ::pg_query::Alias* RangeVar::unsafe_arena_release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeVar.alias) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Alias* temp = _impl_.alias_; + _impl_.alias_ = nullptr; + return temp; } -inline void Aggref::clear_args() { - _impl_.args_.Clear(); +inline ::pg_query::Alias* RangeVar::_internal_mutable_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.alias_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArena()); + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(p); + } + return _impl_.alias_; } -inline ::pg_query::Node* Aggref::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Aggref.args) - return _impl_.args_.Mutable(index); +inline ::pg_query::Alias* RangeVar::mutable_alias() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Alias* _msg = _internal_mutable_alias(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeVar.alias) + return _msg; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Aggref::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.args) - return &_impl_.args_; +inline void RangeVar::set_allocated_alias(::pg_query::Alias* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Alias*>(_impl_.alias_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Alias*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeVar.alias) } -inline const ::pg_query::Node& Aggref::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// int32 location = 7 [json_name = "location"]; +inline void RangeVar::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& Aggref::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.args) - return _internal_args(index); +inline ::int32_t RangeVar::location() const { + // @@protoc_insertion_point(field_get:pg_query.RangeVar.location) + return _internal_location(); } -inline ::pg_query::Node* Aggref::_internal_add_args() { - return _impl_.args_.Add(); +inline void RangeVar::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.RangeVar.location) } -inline ::pg_query::Node* Aggref::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.Aggref.args) - return _add; +inline ::int32_t RangeVar::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Aggref::args() const { - // @@protoc_insertion_point(field_list:pg_query.Aggref.args) - return _impl_.args_; +inline void RangeVar::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// repeated .pg_query.Node aggorder = 10 [json_name = "aggorder"]; -inline int Aggref::_internal_aggorder_size() const { - return _impl_.aggorder_.size(); +// ------------------------------------------------------------------- + +// TableFunc + +// repeated .pg_query.Node ns_uris = 1 [json_name = "ns_uris"]; +inline int TableFunc::_internal_ns_uris_size() const { + return _internal_ns_uris().size(); } -inline int Aggref::aggorder_size() const { - return _internal_aggorder_size(); +inline int TableFunc::ns_uris_size() const { + return _internal_ns_uris_size(); } -inline void Aggref::clear_aggorder() { - _impl_.aggorder_.Clear(); +inline void TableFunc::clear_ns_uris() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ns_uris_.Clear(); } -inline ::pg_query::Node* Aggref::mutable_aggorder(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggorder) - return _impl_.aggorder_.Mutable(index); +inline ::pg_query::Node* TableFunc::mutable_ns_uris(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.ns_uris) + return _internal_mutable_ns_uris()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Aggref::mutable_aggorder() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.aggorder) - return &_impl_.aggorder_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TableFunc::mutable_ns_uris() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.ns_uris) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_ns_uris(); } -inline const ::pg_query::Node& Aggref::_internal_aggorder(int index) const { - return _impl_.aggorder_.Get(index); +inline const ::pg_query::Node& TableFunc::ns_uris(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.ns_uris) + return _internal_ns_uris().Get(index); } -inline const ::pg_query::Node& Aggref::aggorder(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggorder) - return _internal_aggorder(index); +inline ::pg_query::Node* TableFunc::add_ns_uris() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_ns_uris()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TableFunc.ns_uris) + return _add; } -inline ::pg_query::Node* Aggref::_internal_add_aggorder() { - return _impl_.aggorder_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TableFunc::ns_uris() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableFunc.ns_uris) + return _internal_ns_uris(); } -inline ::pg_query::Node* Aggref::add_aggorder() { - ::pg_query::Node* _add = _internal_add_aggorder(); - // @@protoc_insertion_point(field_add:pg_query.Aggref.aggorder) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TableFunc::_internal_ns_uris() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ns_uris_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Aggref::aggorder() const { - // @@protoc_insertion_point(field_list:pg_query.Aggref.aggorder) - return _impl_.aggorder_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TableFunc::_internal_mutable_ns_uris() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.ns_uris_; } -// repeated .pg_query.Node aggdistinct = 11 [json_name = "aggdistinct"]; -inline int Aggref::_internal_aggdistinct_size() const { - return _impl_.aggdistinct_.size(); +// repeated .pg_query.Node ns_names = 2 [json_name = "ns_names"]; +inline int TableFunc::_internal_ns_names_size() const { + return _internal_ns_names().size(); } -inline int Aggref::aggdistinct_size() const { - return _internal_aggdistinct_size(); +inline int TableFunc::ns_names_size() const { + return _internal_ns_names_size(); } -inline void Aggref::clear_aggdistinct() { - _impl_.aggdistinct_.Clear(); +inline void TableFunc::clear_ns_names() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ns_names_.Clear(); } -inline ::pg_query::Node* Aggref::mutable_aggdistinct(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggdistinct) - return _impl_.aggdistinct_.Mutable(index); +inline ::pg_query::Node* TableFunc::mutable_ns_names(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.ns_names) + return _internal_mutable_ns_names()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Aggref::mutable_aggdistinct() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.aggdistinct) - return &_impl_.aggdistinct_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TableFunc::mutable_ns_names() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.ns_names) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_ns_names(); } -inline const ::pg_query::Node& Aggref::_internal_aggdistinct(int index) const { - return _impl_.aggdistinct_.Get(index); +inline const ::pg_query::Node& TableFunc::ns_names(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.ns_names) + return _internal_ns_names().Get(index); } -inline const ::pg_query::Node& Aggref::aggdistinct(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggdistinct) - return _internal_aggdistinct(index); +inline ::pg_query::Node* TableFunc::add_ns_names() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_ns_names()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TableFunc.ns_names) + return _add; } -inline ::pg_query::Node* Aggref::_internal_add_aggdistinct() { - return _impl_.aggdistinct_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TableFunc::ns_names() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableFunc.ns_names) + return _internal_ns_names(); } -inline ::pg_query::Node* Aggref::add_aggdistinct() { - ::pg_query::Node* _add = _internal_add_aggdistinct(); - // @@protoc_insertion_point(field_add:pg_query.Aggref.aggdistinct) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TableFunc::_internal_ns_names() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ns_names_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Aggref::aggdistinct() const { - // @@protoc_insertion_point(field_list:pg_query.Aggref.aggdistinct) - return _impl_.aggdistinct_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TableFunc::_internal_mutable_ns_names() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.ns_names_; } -// .pg_query.Node aggfilter = 12 [json_name = "aggfilter"]; -inline bool Aggref::_internal_has_aggfilter() const { - return this != internal_default_instance() && _impl_.aggfilter_ != nullptr; -} -inline bool Aggref::has_aggfilter() const { - return _internal_has_aggfilter(); +// .pg_query.Node docexpr = 3 [json_name = "docexpr"]; +inline bool TableFunc::has_docexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.docexpr_ != nullptr); + return value; } -inline void Aggref::clear_aggfilter() { - if (GetArenaForAllocation() == nullptr && _impl_.aggfilter_ != nullptr) { - delete _impl_.aggfilter_; - } - _impl_.aggfilter_ = nullptr; +inline void TableFunc::clear_docexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.docexpr_ != nullptr) _impl_.docexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& Aggref::_internal_aggfilter() const { - const ::pg_query::Node* p = _impl_.aggfilter_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& TableFunc::_internal_docexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.docexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& Aggref::aggfilter() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggfilter) - return _internal_aggfilter(); +inline const ::pg_query::Node& TableFunc::docexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.docexpr) + return _internal_docexpr(); } -inline void Aggref::unsafe_arena_set_allocated_aggfilter( - ::pg_query::Node* aggfilter) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.aggfilter_); +inline void TableFunc::unsafe_arena_set_allocated_docexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.docexpr_); } - _impl_.aggfilter_ = aggfilter; - if (aggfilter) { - + _impl_.docexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Aggref.aggfilter) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TableFunc.docexpr) } -inline ::pg_query::Node* Aggref::release_aggfilter() { - - ::pg_query::Node* temp = _impl_.aggfilter_; - _impl_.aggfilter_ = nullptr; +inline ::pg_query::Node* TableFunc::release_docexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.docexpr_; + _impl_.docexpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* Aggref::unsafe_arena_release_aggfilter() { - // @@protoc_insertion_point(field_release:pg_query.Aggref.aggfilter) - - ::pg_query::Node* temp = _impl_.aggfilter_; - _impl_.aggfilter_ = nullptr; +inline ::pg_query::Node* TableFunc::unsafe_arena_release_docexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TableFunc.docexpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.docexpr_; + _impl_.docexpr_ = nullptr; return temp; } -inline ::pg_query::Node* Aggref::_internal_mutable_aggfilter() { - - if (_impl_.aggfilter_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.aggfilter_ = p; +inline ::pg_query::Node* TableFunc::_internal_mutable_docexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.docexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.docexpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.aggfilter_; + return _impl_.docexpr_; } -inline ::pg_query::Node* Aggref::mutable_aggfilter() { - ::pg_query::Node* _msg = _internal_mutable_aggfilter(); - // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggfilter) +inline ::pg_query::Node* TableFunc::mutable_docexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_docexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.docexpr) return _msg; } -inline void Aggref::set_allocated_aggfilter(::pg_query::Node* aggfilter) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void TableFunc::set_allocated_docexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.aggfilter_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.docexpr_); } - if (aggfilter) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(aggfilter); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - aggfilter = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, aggfilter, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.aggfilter_ = aggfilter; - // @@protoc_insertion_point(field_set_allocated:pg_query.Aggref.aggfilter) + + _impl_.docexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.TableFunc.docexpr) } -// bool aggstar = 13 [json_name = "aggstar"]; -inline void Aggref::clear_aggstar() { - _impl_.aggstar_ = false; +// .pg_query.Node rowexpr = 4 [json_name = "rowexpr"]; +inline bool TableFunc::has_rowexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.rowexpr_ != nullptr); + return value; } -inline bool Aggref::_internal_aggstar() const { - return _impl_.aggstar_; +inline void TableFunc::clear_rowexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.rowexpr_ != nullptr) _impl_.rowexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline bool Aggref::aggstar() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggstar) - return _internal_aggstar(); +inline const ::pg_query::Node& TableFunc::_internal_rowexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.rowexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void Aggref::_internal_set_aggstar(bool value) { - - _impl_.aggstar_ = value; +inline const ::pg_query::Node& TableFunc::rowexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.rowexpr) + return _internal_rowexpr(); } -inline void Aggref::set_aggstar(bool value) { - _internal_set_aggstar(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggstar) +inline void TableFunc::unsafe_arena_set_allocated_rowexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.rowexpr_); + } + _impl_.rowexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TableFunc.rowexpr) } +inline ::pg_query::Node* TableFunc::release_rowexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool aggvariadic = 14 [json_name = "aggvariadic"]; -inline void Aggref::clear_aggvariadic() { - _impl_.aggvariadic_ = false; -} -inline bool Aggref::_internal_aggvariadic() const { - return _impl_.aggvariadic_; -} -inline bool Aggref::aggvariadic() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggvariadic) - return _internal_aggvariadic(); -} -inline void Aggref::_internal_set_aggvariadic(bool value) { - - _impl_.aggvariadic_ = value; -} -inline void Aggref::set_aggvariadic(bool value) { - _internal_set_aggvariadic(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggvariadic) + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.rowexpr_; + _impl_.rowexpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* TableFunc::unsafe_arena_release_rowexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TableFunc.rowexpr) -// string aggkind = 15 [json_name = "aggkind"]; -inline void Aggref::clear_aggkind() { - _impl_.aggkind_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.rowexpr_; + _impl_.rowexpr_ = nullptr; + return temp; } -inline const std::string& Aggref::aggkind() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggkind) - return _internal_aggkind(); +inline ::pg_query::Node* TableFunc::_internal_mutable_rowexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.rowexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.rowexpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.rowexpr_; } -template -inline PROTOBUF_ALWAYS_INLINE -void Aggref::set_aggkind(ArgT0&& arg0, ArgT... args) { - - _impl_.aggkind_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggkind) +inline ::pg_query::Node* TableFunc::mutable_rowexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_rowexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.rowexpr) + return _msg; } -inline std::string* Aggref::mutable_aggkind() { - std::string* _s = _internal_mutable_aggkind(); - // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggkind) - return _s; +inline void TableFunc::set_allocated_rowexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.rowexpr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.rowexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.TableFunc.rowexpr) } -inline const std::string& Aggref::_internal_aggkind() const { - return _impl_.aggkind_.Get(); + +// repeated .pg_query.Node colnames = 5 [json_name = "colnames"]; +inline int TableFunc::_internal_colnames_size() const { + return _internal_colnames().size(); } -inline void Aggref::_internal_set_aggkind(const std::string& value) { - - _impl_.aggkind_.Set(value, GetArenaForAllocation()); +inline int TableFunc::colnames_size() const { + return _internal_colnames_size(); } -inline std::string* Aggref::_internal_mutable_aggkind() { - - return _impl_.aggkind_.Mutable(GetArenaForAllocation()); +inline void TableFunc::clear_colnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colnames_.Clear(); } -inline std::string* Aggref::release_aggkind() { - // @@protoc_insertion_point(field_release:pg_query.Aggref.aggkind) - return _impl_.aggkind_.Release(); +inline ::pg_query::Node* TableFunc::mutable_colnames(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.colnames) + return _internal_mutable_colnames()->Mutable(index); } -inline void Aggref::set_allocated_aggkind(std::string* aggkind) { - if (aggkind != nullptr) { - - } else { - - } - _impl_.aggkind_.SetAllocated(aggkind, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.aggkind_.IsDefault()) { - _impl_.aggkind_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Aggref.aggkind) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TableFunc::mutable_colnames() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.colnames) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_colnames(); } - -// uint32 agglevelsup = 16 [json_name = "agglevelsup"]; -inline void Aggref::clear_agglevelsup() { - _impl_.agglevelsup_ = 0u; +inline const ::pg_query::Node& TableFunc::colnames(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.colnames) + return _internal_colnames().Get(index); } -inline uint32_t Aggref::_internal_agglevelsup() const { - return _impl_.agglevelsup_; +inline ::pg_query::Node* TableFunc::add_colnames() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_colnames()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TableFunc.colnames) + return _add; } -inline uint32_t Aggref::agglevelsup() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.agglevelsup) - return _internal_agglevelsup(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TableFunc::colnames() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableFunc.colnames) + return _internal_colnames(); } -inline void Aggref::_internal_set_agglevelsup(uint32_t value) { - - _impl_.agglevelsup_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TableFunc::_internal_colnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.colnames_; } -inline void Aggref::set_agglevelsup(uint32_t value) { - _internal_set_agglevelsup(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.agglevelsup) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TableFunc::_internal_mutable_colnames() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.colnames_; } -// .pg_query.AggSplit aggsplit = 17 [json_name = "aggsplit"]; -inline void Aggref::clear_aggsplit() { - _impl_.aggsplit_ = 0; +// repeated .pg_query.Node coltypes = 6 [json_name = "coltypes"]; +inline int TableFunc::_internal_coltypes_size() const { + return _internal_coltypes().size(); } -inline ::pg_query::AggSplit Aggref::_internal_aggsplit() const { - return static_cast< ::pg_query::AggSplit >(_impl_.aggsplit_); +inline int TableFunc::coltypes_size() const { + return _internal_coltypes_size(); } -inline ::pg_query::AggSplit Aggref::aggsplit() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggsplit) - return _internal_aggsplit(); +inline void TableFunc::clear_coltypes() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coltypes_.Clear(); } -inline void Aggref::_internal_set_aggsplit(::pg_query::AggSplit value) { - - _impl_.aggsplit_ = value; +inline ::pg_query::Node* TableFunc::mutable_coltypes(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.coltypes) + return _internal_mutable_coltypes()->Mutable(index); } -inline void Aggref::set_aggsplit(::pg_query::AggSplit value) { - _internal_set_aggsplit(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggsplit) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TableFunc::mutable_coltypes() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.coltypes) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_coltypes(); } - -// int32 aggno = 18 [json_name = "aggno"]; -inline void Aggref::clear_aggno() { - _impl_.aggno_ = 0; +inline const ::pg_query::Node& TableFunc::coltypes(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.coltypes) + return _internal_coltypes().Get(index); } -inline int32_t Aggref::_internal_aggno() const { - return _impl_.aggno_; +inline ::pg_query::Node* TableFunc::add_coltypes() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_coltypes()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TableFunc.coltypes) + return _add; } -inline int32_t Aggref::aggno() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggno) - return _internal_aggno(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TableFunc::coltypes() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableFunc.coltypes) + return _internal_coltypes(); } -inline void Aggref::_internal_set_aggno(int32_t value) { - - _impl_.aggno_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TableFunc::_internal_coltypes() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coltypes_; } -inline void Aggref::set_aggno(int32_t value) { - _internal_set_aggno(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggno) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TableFunc::_internal_mutable_coltypes() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.coltypes_; } -// int32 aggtransno = 19 [json_name = "aggtransno"]; -inline void Aggref::clear_aggtransno() { - _impl_.aggtransno_ = 0; +// repeated .pg_query.Node coltypmods = 7 [json_name = "coltypmods"]; +inline int TableFunc::_internal_coltypmods_size() const { + return _internal_coltypmods().size(); } -inline int32_t Aggref::_internal_aggtransno() const { - return _impl_.aggtransno_; +inline int TableFunc::coltypmods_size() const { + return _internal_coltypmods_size(); } -inline int32_t Aggref::aggtransno() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.aggtransno) - return _internal_aggtransno(); +inline void TableFunc::clear_coltypmods() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coltypmods_.Clear(); } -inline void Aggref::_internal_set_aggtransno(int32_t value) { - - _impl_.aggtransno_ = value; +inline ::pg_query::Node* TableFunc::mutable_coltypmods(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.coltypmods) + return _internal_mutable_coltypmods()->Mutable(index); } -inline void Aggref::set_aggtransno(int32_t value) { - _internal_set_aggtransno(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.aggtransno) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TableFunc::mutable_coltypmods() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.coltypmods) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_coltypmods(); } - -// int32 location = 20 [json_name = "location"]; -inline void Aggref::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Node& TableFunc::coltypmods(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.coltypmods) + return _internal_coltypmods().Get(index); } -inline int32_t Aggref::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Node* TableFunc::add_coltypmods() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_coltypmods()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TableFunc.coltypmods) + return _add; } -inline int32_t Aggref::location() const { - // @@protoc_insertion_point(field_get:pg_query.Aggref.location) - return _internal_location(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TableFunc::coltypmods() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableFunc.coltypmods) + return _internal_coltypmods(); } -inline void Aggref::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TableFunc::_internal_coltypmods() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coltypmods_; } -inline void Aggref::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.Aggref.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TableFunc::_internal_mutable_coltypmods() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.coltypmods_; } -// ------------------------------------------------------------------- - -// GroupingFunc - -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool GroupingFunc::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool GroupingFunc::has_xpr() const { - return _internal_has_xpr(); +// repeated .pg_query.Node colcollations = 8 [json_name = "colcollations"]; +inline int TableFunc::_internal_colcollations_size() const { + return _internal_colcollations().size(); } -inline void GroupingFunc::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline int TableFunc::colcollations_size() const { + return _internal_colcollations_size(); } -inline const ::pg_query::Node& GroupingFunc::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void TableFunc::clear_colcollations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colcollations_.Clear(); } -inline const ::pg_query::Node& GroupingFunc::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.xpr) - return _internal_xpr(); +inline ::pg_query::Node* TableFunc::mutable_colcollations(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.colcollations) + return _internal_mutable_colcollations()->Mutable(index); } -inline void GroupingFunc::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); - } - _impl_.xpr_ = xpr; - if (xpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.GroupingFunc.xpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TableFunc::mutable_colcollations() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.colcollations) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_colcollations(); } -inline ::pg_query::Node* GroupingFunc::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& TableFunc::colcollations(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.colcollations) + return _internal_colcollations().Get(index); } -inline ::pg_query::Node* GroupingFunc::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.GroupingFunc.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; - return temp; +inline ::pg_query::Node* TableFunc::add_colcollations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_colcollations()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TableFunc.colcollations) + return _add; } -inline ::pg_query::Node* GroupingFunc::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; - } - return _impl_.xpr_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TableFunc::colcollations() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableFunc.colcollations) + return _internal_colcollations(); } -inline ::pg_query::Node* GroupingFunc::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.GroupingFunc.xpr) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TableFunc::_internal_colcollations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.colcollations_; } -inline void GroupingFunc::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - - } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.GroupingFunc.xpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TableFunc::_internal_mutable_colcollations() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.colcollations_; } -// repeated .pg_query.Node args = 2 [json_name = "args"]; -inline int GroupingFunc::_internal_args_size() const { - return _impl_.args_.size(); -} -inline int GroupingFunc::args_size() const { - return _internal_args_size(); -} -inline void GroupingFunc::clear_args() { - _impl_.args_.Clear(); +// repeated .pg_query.Node colexprs = 9 [json_name = "colexprs"]; +inline int TableFunc::_internal_colexprs_size() const { + return _internal_colexprs().size(); } -inline ::pg_query::Node* GroupingFunc::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.GroupingFunc.args) - return _impl_.args_.Mutable(index); +inline int TableFunc::colexprs_size() const { + return _internal_colexprs_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -GroupingFunc::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.GroupingFunc.args) - return &_impl_.args_; +inline void TableFunc::clear_colexprs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colexprs_.Clear(); } -inline const ::pg_query::Node& GroupingFunc::_internal_args(int index) const { - return _impl_.args_.Get(index); +inline ::pg_query::Node* TableFunc::mutable_colexprs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.colexprs) + return _internal_mutable_colexprs()->Mutable(index); } -inline const ::pg_query::Node& GroupingFunc::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.args) - return _internal_args(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TableFunc::mutable_colexprs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.colexprs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_colexprs(); } -inline ::pg_query::Node* GroupingFunc::_internal_add_args() { - return _impl_.args_.Add(); +inline const ::pg_query::Node& TableFunc::colexprs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.colexprs) + return _internal_colexprs().Get(index); } -inline ::pg_query::Node* GroupingFunc::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.GroupingFunc.args) +inline ::pg_query::Node* TableFunc::add_colexprs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_colexprs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TableFunc.colexprs) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -GroupingFunc::args() const { - // @@protoc_insertion_point(field_list:pg_query.GroupingFunc.args) - return _impl_.args_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TableFunc::colexprs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableFunc.colexprs) + return _internal_colexprs(); } - -// repeated .pg_query.Node refs = 3 [json_name = "refs"]; -inline int GroupingFunc::_internal_refs_size() const { - return _impl_.refs_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TableFunc::_internal_colexprs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.colexprs_; } -inline int GroupingFunc::refs_size() const { - return _internal_refs_size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TableFunc::_internal_mutable_colexprs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.colexprs_; } -inline void GroupingFunc::clear_refs() { - _impl_.refs_.Clear(); + +// repeated .pg_query.Node coldefexprs = 10 [json_name = "coldefexprs"]; +inline int TableFunc::_internal_coldefexprs_size() const { + return _internal_coldefexprs().size(); } -inline ::pg_query::Node* GroupingFunc::mutable_refs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.GroupingFunc.refs) - return _impl_.refs_.Mutable(index); +inline int TableFunc::coldefexprs_size() const { + return _internal_coldefexprs_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -GroupingFunc::mutable_refs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.GroupingFunc.refs) - return &_impl_.refs_; +inline void TableFunc::clear_coldefexprs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coldefexprs_.Clear(); } -inline const ::pg_query::Node& GroupingFunc::_internal_refs(int index) const { - return _impl_.refs_.Get(index); +inline ::pg_query::Node* TableFunc::mutable_coldefexprs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TableFunc.coldefexprs) + return _internal_mutable_coldefexprs()->Mutable(index); } -inline const ::pg_query::Node& GroupingFunc::refs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.refs) - return _internal_refs(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TableFunc::mutable_coldefexprs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.coldefexprs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_coldefexprs(); } -inline ::pg_query::Node* GroupingFunc::_internal_add_refs() { - return _impl_.refs_.Add(); +inline const ::pg_query::Node& TableFunc::coldefexprs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.coldefexprs) + return _internal_coldefexprs().Get(index); } -inline ::pg_query::Node* GroupingFunc::add_refs() { - ::pg_query::Node* _add = _internal_add_refs(); - // @@protoc_insertion_point(field_add:pg_query.GroupingFunc.refs) +inline ::pg_query::Node* TableFunc::add_coldefexprs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_coldefexprs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TableFunc.coldefexprs) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -GroupingFunc::refs() const { - // @@protoc_insertion_point(field_list:pg_query.GroupingFunc.refs) - return _impl_.refs_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TableFunc::coldefexprs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableFunc.coldefexprs) + return _internal_coldefexprs(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TableFunc::_internal_coldefexprs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coldefexprs_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TableFunc::_internal_mutable_coldefexprs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.coldefexprs_; } -// repeated .pg_query.Node cols = 4 [json_name = "cols"]; -inline int GroupingFunc::_internal_cols_size() const { - return _impl_.cols_.size(); +// repeated uint64 notnulls = 11 [json_name = "notnulls"]; +inline int TableFunc::_internal_notnulls_size() const { + return _internal_notnulls().size(); } -inline int GroupingFunc::cols_size() const { - return _internal_cols_size(); +inline int TableFunc::notnulls_size() const { + return _internal_notnulls_size(); } -inline void GroupingFunc::clear_cols() { - _impl_.cols_.Clear(); +inline void TableFunc::clear_notnulls() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.notnulls_.Clear(); } -inline ::pg_query::Node* GroupingFunc::mutable_cols(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.GroupingFunc.cols) - return _impl_.cols_.Mutable(index); +inline ::uint64_t TableFunc::notnulls(int index) const { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.notnulls) + return _internal_notnulls().Get(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -GroupingFunc::mutable_cols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.GroupingFunc.cols) - return &_impl_.cols_; +inline void TableFunc::set_notnulls(int index, ::uint64_t value) { + _internal_mutable_notnulls()->Set(index, value); + // @@protoc_insertion_point(field_set:pg_query.TableFunc.notnulls) } -inline const ::pg_query::Node& GroupingFunc::_internal_cols(int index) const { - return _impl_.cols_.Get(index); +inline void TableFunc::add_notnulls(::uint64_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _internal_mutable_notnulls()->Add(value); + // @@protoc_insertion_point(field_add:pg_query.TableFunc.notnulls) } -inline const ::pg_query::Node& GroupingFunc::cols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.cols) - return _internal_cols(index); +inline const ::google::protobuf::RepeatedField<::uint64_t>& TableFunc::notnulls() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableFunc.notnulls) + return _internal_notnulls(); } -inline ::pg_query::Node* GroupingFunc::_internal_add_cols() { - return _impl_.cols_.Add(); +inline ::google::protobuf::RepeatedField<::uint64_t>* TableFunc::mutable_notnulls() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableFunc.notnulls) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_notnulls(); } -inline ::pg_query::Node* GroupingFunc::add_cols() { - ::pg_query::Node* _add = _internal_add_cols(); - // @@protoc_insertion_point(field_add:pg_query.GroupingFunc.cols) - return _add; +inline const ::google::protobuf::RepeatedField<::uint64_t>& TableFunc::_internal_notnulls() + const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.notnulls_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -GroupingFunc::cols() const { - // @@protoc_insertion_point(field_list:pg_query.GroupingFunc.cols) - return _impl_.cols_; +inline ::google::protobuf::RepeatedField<::uint64_t>* TableFunc::_internal_mutable_notnulls() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.notnulls_; } -// uint32 agglevelsup = 5 [json_name = "agglevelsup"]; -inline void GroupingFunc::clear_agglevelsup() { - _impl_.agglevelsup_ = 0u; +// int32 ordinalitycol = 12 [json_name = "ordinalitycol"]; +inline void TableFunc::clear_ordinalitycol() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ordinalitycol_ = 0; } -inline uint32_t GroupingFunc::_internal_agglevelsup() const { - return _impl_.agglevelsup_; +inline ::int32_t TableFunc::ordinalitycol() const { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.ordinalitycol) + return _internal_ordinalitycol(); } -inline uint32_t GroupingFunc::agglevelsup() const { - // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.agglevelsup) - return _internal_agglevelsup(); +inline void TableFunc::set_ordinalitycol(::int32_t value) { + _internal_set_ordinalitycol(value); + // @@protoc_insertion_point(field_set:pg_query.TableFunc.ordinalitycol) } -inline void GroupingFunc::_internal_set_agglevelsup(uint32_t value) { - - _impl_.agglevelsup_ = value; +inline ::int32_t TableFunc::_internal_ordinalitycol() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ordinalitycol_; } -inline void GroupingFunc::set_agglevelsup(uint32_t value) { - _internal_set_agglevelsup(value); - // @@protoc_insertion_point(field_set:pg_query.GroupingFunc.agglevelsup) +inline void TableFunc::_internal_set_ordinalitycol(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ordinalitycol_ = value; } -// int32 location = 6 [json_name = "location"]; -inline void GroupingFunc::clear_location() { +// int32 location = 13 [json_name = "location"]; +inline void TableFunc::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t GroupingFunc::_internal_location() const { - return _impl_.location_; -} -inline int32_t GroupingFunc::location() const { - // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.location) +inline ::int32_t TableFunc::location() const { + // @@protoc_insertion_point(field_get:pg_query.TableFunc.location) return _internal_location(); } -inline void GroupingFunc::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void GroupingFunc::set_location(int32_t value) { +inline void TableFunc::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.GroupingFunc.location) + // @@protoc_insertion_point(field_set:pg_query.TableFunc.location) +} +inline ::int32_t TableFunc::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void TableFunc::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// WindowFunc +// IntoClause -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool WindowFunc::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool WindowFunc::has_xpr() const { - return _internal_has_xpr(); +// .pg_query.RangeVar rel = 1 [json_name = "rel"]; +inline bool IntoClause::has_rel() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.rel_ != nullptr); + return value; } -inline void WindowFunc::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void IntoClause::clear_rel() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.rel_ != nullptr) _impl_.rel_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& WindowFunc::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::RangeVar& IntoClause::_internal_rel() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.rel_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::Node& WindowFunc::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.xpr) - return _internal_xpr(); +inline const ::pg_query::RangeVar& IntoClause::rel() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IntoClause.rel) + return _internal_rel(); } -inline void WindowFunc::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void IntoClause::unsafe_arena_set_allocated_rel(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.rel_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.rel_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowFunc.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IntoClause.rel) } -inline ::pg_query::Node* WindowFunc::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::RangeVar* IntoClause::release_rel() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.rel_; + _impl_.rel_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* WindowFunc::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.WindowFunc.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::RangeVar* IntoClause::unsafe_arena_release_rel() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IntoClause.rel) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.rel_; + _impl_.rel_ = nullptr; return temp; } -inline ::pg_query::Node* WindowFunc::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; +inline ::pg_query::RangeVar* IntoClause::_internal_mutable_rel() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.rel_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.rel_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.xpr_; + return _impl_.rel_; } -inline ::pg_query::Node* WindowFunc::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowFunc.xpr) +inline ::pg_query::RangeVar* IntoClause::mutable_rel() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_rel(); + // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.rel) return _msg; } -inline void WindowFunc::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void IntoClause::set_allocated_rel(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.rel_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowFunc.xpr) + + _impl_.rel_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.IntoClause.rel) } -// uint32 winfnoid = 2 [json_name = "winfnoid"]; -inline void WindowFunc::clear_winfnoid() { - _impl_.winfnoid_ = 0u; +// repeated .pg_query.Node col_names = 2 [json_name = "colNames"]; +inline int IntoClause::_internal_col_names_size() const { + return _internal_col_names().size(); } -inline uint32_t WindowFunc::_internal_winfnoid() const { - return _impl_.winfnoid_; +inline int IntoClause::col_names_size() const { + return _internal_col_names_size(); } -inline uint32_t WindowFunc::winfnoid() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.winfnoid) - return _internal_winfnoid(); +inline void IntoClause::clear_col_names() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.col_names_.Clear(); } -inline void WindowFunc::_internal_set_winfnoid(uint32_t value) { - - _impl_.winfnoid_ = value; +inline ::pg_query::Node* IntoClause::mutable_col_names(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.col_names) + return _internal_mutable_col_names()->Mutable(index); } -inline void WindowFunc::set_winfnoid(uint32_t value) { - _internal_set_winfnoid(value); - // @@protoc_insertion_point(field_set:pg_query.WindowFunc.winfnoid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IntoClause::mutable_col_names() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IntoClause.col_names) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_col_names(); } - -// uint32 wintype = 3 [json_name = "wintype"]; -inline void WindowFunc::clear_wintype() { - _impl_.wintype_ = 0u; +inline const ::pg_query::Node& IntoClause::col_names(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IntoClause.col_names) + return _internal_col_names().Get(index); } -inline uint32_t WindowFunc::_internal_wintype() const { - return _impl_.wintype_; +inline ::pg_query::Node* IntoClause::add_col_names() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_col_names()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IntoClause.col_names) + return _add; } -inline uint32_t WindowFunc::wintype() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.wintype) - return _internal_wintype(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IntoClause::col_names() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IntoClause.col_names) + return _internal_col_names(); } -inline void WindowFunc::_internal_set_wintype(uint32_t value) { - - _impl_.wintype_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IntoClause::_internal_col_names() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.col_names_; } -inline void WindowFunc::set_wintype(uint32_t value) { - _internal_set_wintype(value); - // @@protoc_insertion_point(field_set:pg_query.WindowFunc.wintype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IntoClause::_internal_mutable_col_names() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.col_names_; } -// uint32 wincollid = 4 [json_name = "wincollid"]; -inline void WindowFunc::clear_wincollid() { - _impl_.wincollid_ = 0u; +// string access_method = 3 [json_name = "accessMethod"]; +inline void IntoClause::clear_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.access_method_.ClearToEmpty(); } -inline uint32_t WindowFunc::_internal_wincollid() const { - return _impl_.wincollid_; +inline const std::string& IntoClause::access_method() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IntoClause.access_method) + return _internal_access_method(); } -inline uint32_t WindowFunc::wincollid() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.wincollid) - return _internal_wincollid(); +template +inline PROTOBUF_ALWAYS_INLINE void IntoClause::set_access_method(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.access_method_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.IntoClause.access_method) } -inline void WindowFunc::_internal_set_wincollid(uint32_t value) { - - _impl_.wincollid_ = value; +inline std::string* IntoClause::mutable_access_method() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_access_method(); + // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.access_method) + return _s; } -inline void WindowFunc::set_wincollid(uint32_t value) { - _internal_set_wincollid(value); - // @@protoc_insertion_point(field_set:pg_query.WindowFunc.wincollid) +inline const std::string& IntoClause::_internal_access_method() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.access_method_.Get(); +} +inline void IntoClause::_internal_set_access_method(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.access_method_.Set(value, GetArena()); +} +inline std::string* IntoClause::_internal_mutable_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.access_method_.Mutable( GetArena()); +} +inline std::string* IntoClause::release_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IntoClause.access_method) + return _impl_.access_method_.Release(); +} +inline void IntoClause::set_allocated_access_method(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.access_method_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.access_method_.IsDefault()) { + _impl_.access_method_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.IntoClause.access_method) } -// uint32 inputcollid = 5 [json_name = "inputcollid"]; -inline void WindowFunc::clear_inputcollid() { - _impl_.inputcollid_ = 0u; +// repeated .pg_query.Node options = 4 [json_name = "options"]; +inline int IntoClause::_internal_options_size() const { + return _internal_options().size(); } -inline uint32_t WindowFunc::_internal_inputcollid() const { - return _impl_.inputcollid_; +inline int IntoClause::options_size() const { + return _internal_options_size(); } -inline uint32_t WindowFunc::inputcollid() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.inputcollid) - return _internal_inputcollid(); +inline void IntoClause::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void WindowFunc::_internal_set_inputcollid(uint32_t value) { - - _impl_.inputcollid_ = value; +inline ::pg_query::Node* IntoClause::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.options) + return _internal_mutable_options()->Mutable(index); } -inline void WindowFunc::set_inputcollid(uint32_t value) { - _internal_set_inputcollid(value); - // @@protoc_insertion_point(field_set:pg_query.WindowFunc.inputcollid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IntoClause::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IntoClause.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } - -// repeated .pg_query.Node args = 6 [json_name = "args"]; -inline int WindowFunc::_internal_args_size() const { - return _impl_.args_.size(); +inline const ::pg_query::Node& IntoClause::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IntoClause.options) + return _internal_options().Get(index); } -inline int WindowFunc::args_size() const { - return _internal_args_size(); +inline ::pg_query::Node* IntoClause::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IntoClause.options) + return _add; } -inline void WindowFunc::clear_args() { - _impl_.args_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IntoClause::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IntoClause.options) + return _internal_options(); } -inline ::pg_query::Node* WindowFunc::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.WindowFunc.args) - return _impl_.args_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IntoClause::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -WindowFunc::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.WindowFunc.args) - return &_impl_.args_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IntoClause::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -inline const ::pg_query::Node& WindowFunc::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// .pg_query.OnCommitAction on_commit = 5 [json_name = "onCommit"]; +inline void IntoClause::clear_on_commit() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.on_commit_ = 0; } -inline const ::pg_query::Node& WindowFunc::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.args) - return _internal_args(index); +inline ::pg_query::OnCommitAction IntoClause::on_commit() const { + // @@protoc_insertion_point(field_get:pg_query.IntoClause.on_commit) + return _internal_on_commit(); } -inline ::pg_query::Node* WindowFunc::_internal_add_args() { - return _impl_.args_.Add(); +inline void IntoClause::set_on_commit(::pg_query::OnCommitAction value) { + _internal_set_on_commit(value); + // @@protoc_insertion_point(field_set:pg_query.IntoClause.on_commit) } -inline ::pg_query::Node* WindowFunc::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.WindowFunc.args) - return _add; +inline ::pg_query::OnCommitAction IntoClause::_internal_on_commit() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::OnCommitAction>(_impl_.on_commit_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -WindowFunc::args() const { - // @@protoc_insertion_point(field_list:pg_query.WindowFunc.args) - return _impl_.args_; +inline void IntoClause::_internal_set_on_commit(::pg_query::OnCommitAction value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.on_commit_ = value; } -// .pg_query.Node aggfilter = 7 [json_name = "aggfilter"]; -inline bool WindowFunc::_internal_has_aggfilter() const { - return this != internal_default_instance() && _impl_.aggfilter_ != nullptr; +// string table_space_name = 6 [json_name = "tableSpaceName"]; +inline void IntoClause::clear_table_space_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.table_space_name_.ClearToEmpty(); } -inline bool WindowFunc::has_aggfilter() const { - return _internal_has_aggfilter(); +inline const std::string& IntoClause::table_space_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IntoClause.table_space_name) + return _internal_table_space_name(); } -inline void WindowFunc::clear_aggfilter() { - if (GetArenaForAllocation() == nullptr && _impl_.aggfilter_ != nullptr) { - delete _impl_.aggfilter_; - } - _impl_.aggfilter_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void IntoClause::set_table_space_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.table_space_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.IntoClause.table_space_name) } -inline const ::pg_query::Node& WindowFunc::_internal_aggfilter() const { - const ::pg_query::Node* p = _impl_.aggfilter_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline std::string* IntoClause::mutable_table_space_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_table_space_name(); + // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.table_space_name) + return _s; } -inline const ::pg_query::Node& WindowFunc::aggfilter() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.aggfilter) - return _internal_aggfilter(); +inline const std::string& IntoClause::_internal_table_space_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.table_space_name_.Get(); +} +inline void IntoClause::_internal_set_table_space_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.table_space_name_.Set(value, GetArena()); +} +inline std::string* IntoClause::_internal_mutable_table_space_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.table_space_name_.Mutable( GetArena()); +} +inline std::string* IntoClause::release_table_space_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IntoClause.table_space_name) + return _impl_.table_space_name_.Release(); +} +inline void IntoClause::set_allocated_table_space_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.table_space_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.table_space_name_.IsDefault()) { + _impl_.table_space_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.IntoClause.table_space_name) +} + +// .pg_query.Node view_query = 7 [json_name = "viewQuery"]; +inline bool IntoClause::has_view_query() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.view_query_ != nullptr); + return value; } -inline void WindowFunc::unsafe_arena_set_allocated_aggfilter( - ::pg_query::Node* aggfilter) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.aggfilter_); +inline void IntoClause::clear_view_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.view_query_ != nullptr) _impl_.view_query_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::Node& IntoClause::_internal_view_query() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.view_query_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& IntoClause::view_query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IntoClause.view_query) + return _internal_view_query(); +} +inline void IntoClause::unsafe_arena_set_allocated_view_query(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.view_query_); } - _impl_.aggfilter_ = aggfilter; - if (aggfilter) { - + _impl_.view_query_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowFunc.aggfilter) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IntoClause.view_query) } -inline ::pg_query::Node* WindowFunc::release_aggfilter() { - - ::pg_query::Node* temp = _impl_.aggfilter_; - _impl_.aggfilter_ = nullptr; +inline ::pg_query::Node* IntoClause::release_view_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.view_query_; + _impl_.view_query_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* WindowFunc::unsafe_arena_release_aggfilter() { - // @@protoc_insertion_point(field_release:pg_query.WindowFunc.aggfilter) - - ::pg_query::Node* temp = _impl_.aggfilter_; - _impl_.aggfilter_ = nullptr; +inline ::pg_query::Node* IntoClause::unsafe_arena_release_view_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IntoClause.view_query) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.view_query_; + _impl_.view_query_ = nullptr; return temp; } -inline ::pg_query::Node* WindowFunc::_internal_mutable_aggfilter() { - - if (_impl_.aggfilter_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.aggfilter_ = p; +inline ::pg_query::Node* IntoClause::_internal_mutable_view_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.view_query_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.view_query_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.aggfilter_; + return _impl_.view_query_; } -inline ::pg_query::Node* WindowFunc::mutable_aggfilter() { - ::pg_query::Node* _msg = _internal_mutable_aggfilter(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowFunc.aggfilter) +inline ::pg_query::Node* IntoClause::mutable_view_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_view_query(); + // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.view_query) return _msg; } -inline void WindowFunc::set_allocated_aggfilter(::pg_query::Node* aggfilter) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void IntoClause::set_allocated_view_query(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.aggfilter_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.view_query_); } - if (aggfilter) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(aggfilter); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - aggfilter = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, aggfilter, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.aggfilter_ = aggfilter; - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowFunc.aggfilter) -} - -// uint32 winref = 8 [json_name = "winref"]; -inline void WindowFunc::clear_winref() { - _impl_.winref_ = 0u; -} -inline uint32_t WindowFunc::_internal_winref() const { - return _impl_.winref_; -} -inline uint32_t WindowFunc::winref() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.winref) - return _internal_winref(); -} -inline void WindowFunc::_internal_set_winref(uint32_t value) { - - _impl_.winref_ = value; -} -inline void WindowFunc::set_winref(uint32_t value) { - _internal_set_winref(value); - // @@protoc_insertion_point(field_set:pg_query.WindowFunc.winref) -} - -// bool winstar = 9 [json_name = "winstar"]; -inline void WindowFunc::clear_winstar() { - _impl_.winstar_ = false; -} -inline bool WindowFunc::_internal_winstar() const { - return _impl_.winstar_; -} -inline bool WindowFunc::winstar() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.winstar) - return _internal_winstar(); -} -inline void WindowFunc::_internal_set_winstar(bool value) { - - _impl_.winstar_ = value; -} -inline void WindowFunc::set_winstar(bool value) { - _internal_set_winstar(value); - // @@protoc_insertion_point(field_set:pg_query.WindowFunc.winstar) -} -// bool winagg = 10 [json_name = "winagg"]; -inline void WindowFunc::clear_winagg() { - _impl_.winagg_ = false; -} -inline bool WindowFunc::_internal_winagg() const { - return _impl_.winagg_; -} -inline bool WindowFunc::winagg() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.winagg) - return _internal_winagg(); -} -inline void WindowFunc::_internal_set_winagg(bool value) { - - _impl_.winagg_ = value; -} -inline void WindowFunc::set_winagg(bool value) { - _internal_set_winagg(value); - // @@protoc_insertion_point(field_set:pg_query.WindowFunc.winagg) + _impl_.view_query_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.IntoClause.view_query) } -// int32 location = 11 [json_name = "location"]; -inline void WindowFunc::clear_location() { - _impl_.location_ = 0; +// bool skip_data = 8 [json_name = "skipData"]; +inline void IntoClause::clear_skip_data() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.skip_data_ = false; } -inline int32_t WindowFunc::_internal_location() const { - return _impl_.location_; +inline bool IntoClause::skip_data() const { + // @@protoc_insertion_point(field_get:pg_query.IntoClause.skip_data) + return _internal_skip_data(); } -inline int32_t WindowFunc::location() const { - // @@protoc_insertion_point(field_get:pg_query.WindowFunc.location) - return _internal_location(); +inline void IntoClause::set_skip_data(bool value) { + _internal_set_skip_data(value); + // @@protoc_insertion_point(field_set:pg_query.IntoClause.skip_data) } -inline void WindowFunc::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline bool IntoClause::_internal_skip_data() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.skip_data_; } -inline void WindowFunc::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.WindowFunc.location) +inline void IntoClause::_internal_set_skip_data(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.skip_data_ = value; } // ------------------------------------------------------------------- -// SubscriptingRef +// Var // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool SubscriptingRef::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool SubscriptingRef::has_xpr() const { - return _internal_has_xpr(); +inline bool Var::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void SubscriptingRef::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void Var::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& SubscriptingRef::_internal_xpr() const { +inline const ::pg_query::Node& Var::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& SubscriptingRef::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.xpr) +inline const ::pg_query::Node& Var::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Var.xpr) return _internal_xpr(); } -inline void SubscriptingRef::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void Var::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubscriptingRef.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Var.xpr) } -inline ::pg_query::Node* SubscriptingRef::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* Var::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SubscriptingRef::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.SubscriptingRef.xpr) - +inline ::pg_query::Node* Var::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Var.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* SubscriptingRef::_internal_mutable_xpr() { - +inline ::pg_query::Node* Var::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* SubscriptingRef::mutable_xpr() { +inline ::pg_query::Node* Var::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.Var.xpr) return _msg; } -inline void SubscriptingRef::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Var::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.SubscriptingRef.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Var.xpr) } -// uint32 refcontainertype = 2 [json_name = "refcontainertype"]; -inline void SubscriptingRef::clear_refcontainertype() { - _impl_.refcontainertype_ = 0u; +// int32 varno = 2 [json_name = "varno"]; +inline void Var::clear_varno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.varno_ = 0; } -inline uint32_t SubscriptingRef::_internal_refcontainertype() const { - return _impl_.refcontainertype_; +inline ::int32_t Var::varno() const { + // @@protoc_insertion_point(field_get:pg_query.Var.varno) + return _internal_varno(); } -inline uint32_t SubscriptingRef::refcontainertype() const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refcontainertype) - return _internal_refcontainertype(); +inline void Var::set_varno(::int32_t value) { + _internal_set_varno(value); + // @@protoc_insertion_point(field_set:pg_query.Var.varno) } -inline void SubscriptingRef::_internal_set_refcontainertype(uint32_t value) { - - _impl_.refcontainertype_ = value; +inline ::int32_t Var::_internal_varno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.varno_; } -inline void SubscriptingRef::set_refcontainertype(uint32_t value) { - _internal_set_refcontainertype(value); - // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.refcontainertype) +inline void Var::_internal_set_varno(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.varno_ = value; } -// uint32 refelemtype = 3 [json_name = "refelemtype"]; -inline void SubscriptingRef::clear_refelemtype() { - _impl_.refelemtype_ = 0u; +// int32 varattno = 3 [json_name = "varattno"]; +inline void Var::clear_varattno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.varattno_ = 0; } -inline uint32_t SubscriptingRef::_internal_refelemtype() const { - return _impl_.refelemtype_; +inline ::int32_t Var::varattno() const { + // @@protoc_insertion_point(field_get:pg_query.Var.varattno) + return _internal_varattno(); } -inline uint32_t SubscriptingRef::refelemtype() const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refelemtype) - return _internal_refelemtype(); +inline void Var::set_varattno(::int32_t value) { + _internal_set_varattno(value); + // @@protoc_insertion_point(field_set:pg_query.Var.varattno) } -inline void SubscriptingRef::_internal_set_refelemtype(uint32_t value) { - - _impl_.refelemtype_ = value; +inline ::int32_t Var::_internal_varattno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.varattno_; } -inline void SubscriptingRef::set_refelemtype(uint32_t value) { - _internal_set_refelemtype(value); - // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.refelemtype) +inline void Var::_internal_set_varattno(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.varattno_ = value; } -// uint32 refrestype = 4 [json_name = "refrestype"]; -inline void SubscriptingRef::clear_refrestype() { - _impl_.refrestype_ = 0u; +// uint32 vartype = 4 [json_name = "vartype"]; +inline void Var::clear_vartype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.vartype_ = 0u; } -inline uint32_t SubscriptingRef::_internal_refrestype() const { - return _impl_.refrestype_; +inline ::uint32_t Var::vartype() const { + // @@protoc_insertion_point(field_get:pg_query.Var.vartype) + return _internal_vartype(); } -inline uint32_t SubscriptingRef::refrestype() const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refrestype) - return _internal_refrestype(); +inline void Var::set_vartype(::uint32_t value) { + _internal_set_vartype(value); + // @@protoc_insertion_point(field_set:pg_query.Var.vartype) } -inline void SubscriptingRef::_internal_set_refrestype(uint32_t value) { - - _impl_.refrestype_ = value; +inline ::uint32_t Var::_internal_vartype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.vartype_; } -inline void SubscriptingRef::set_refrestype(uint32_t value) { - _internal_set_refrestype(value); - // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.refrestype) +inline void Var::_internal_set_vartype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.vartype_ = value; } -// int32 reftypmod = 5 [json_name = "reftypmod"]; -inline void SubscriptingRef::clear_reftypmod() { - _impl_.reftypmod_ = 0; +// int32 vartypmod = 5 [json_name = "vartypmod"]; +inline void Var::clear_vartypmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.vartypmod_ = 0; } -inline int32_t SubscriptingRef::_internal_reftypmod() const { - return _impl_.reftypmod_; +inline ::int32_t Var::vartypmod() const { + // @@protoc_insertion_point(field_get:pg_query.Var.vartypmod) + return _internal_vartypmod(); } -inline int32_t SubscriptingRef::reftypmod() const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.reftypmod) - return _internal_reftypmod(); +inline void Var::set_vartypmod(::int32_t value) { + _internal_set_vartypmod(value); + // @@protoc_insertion_point(field_set:pg_query.Var.vartypmod) } -inline void SubscriptingRef::_internal_set_reftypmod(int32_t value) { - - _impl_.reftypmod_ = value; +inline ::int32_t Var::_internal_vartypmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.vartypmod_; } -inline void SubscriptingRef::set_reftypmod(int32_t value) { - _internal_set_reftypmod(value); - // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.reftypmod) +inline void Var::_internal_set_vartypmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.vartypmod_ = value; } -// uint32 refcollid = 6 [json_name = "refcollid"]; -inline void SubscriptingRef::clear_refcollid() { - _impl_.refcollid_ = 0u; +// uint32 varcollid = 6 [json_name = "varcollid"]; +inline void Var::clear_varcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.varcollid_ = 0u; } -inline uint32_t SubscriptingRef::_internal_refcollid() const { - return _impl_.refcollid_; +inline ::uint32_t Var::varcollid() const { + // @@protoc_insertion_point(field_get:pg_query.Var.varcollid) + return _internal_varcollid(); } -inline uint32_t SubscriptingRef::refcollid() const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refcollid) - return _internal_refcollid(); +inline void Var::set_varcollid(::uint32_t value) { + _internal_set_varcollid(value); + // @@protoc_insertion_point(field_set:pg_query.Var.varcollid) } -inline void SubscriptingRef::_internal_set_refcollid(uint32_t value) { - - _impl_.refcollid_ = value; +inline ::uint32_t Var::_internal_varcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.varcollid_; } -inline void SubscriptingRef::set_refcollid(uint32_t value) { - _internal_set_refcollid(value); - // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.refcollid) +inline void Var::_internal_set_varcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.varcollid_ = value; } -// repeated .pg_query.Node refupperindexpr = 7 [json_name = "refupperindexpr"]; -inline int SubscriptingRef::_internal_refupperindexpr_size() const { - return _impl_.refupperindexpr_.size(); +// repeated uint64 varnullingrels = 7 [json_name = "varnullingrels"]; +inline int Var::_internal_varnullingrels_size() const { + return _internal_varnullingrels().size(); } -inline int SubscriptingRef::refupperindexpr_size() const { - return _internal_refupperindexpr_size(); +inline int Var::varnullingrels_size() const { + return _internal_varnullingrels_size(); } -inline void SubscriptingRef::clear_refupperindexpr() { - _impl_.refupperindexpr_.Clear(); +inline void Var::clear_varnullingrels() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.varnullingrels_.Clear(); } -inline ::pg_query::Node* SubscriptingRef::mutable_refupperindexpr(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.refupperindexpr) - return _impl_.refupperindexpr_.Mutable(index); +inline ::uint64_t Var::varnullingrels(int index) const { + // @@protoc_insertion_point(field_get:pg_query.Var.varnullingrels) + return _internal_varnullingrels().Get(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SubscriptingRef::mutable_refupperindexpr() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SubscriptingRef.refupperindexpr) - return &_impl_.refupperindexpr_; +inline void Var::set_varnullingrels(int index, ::uint64_t value) { + _internal_mutable_varnullingrels()->Set(index, value); + // @@protoc_insertion_point(field_set:pg_query.Var.varnullingrels) } -inline const ::pg_query::Node& SubscriptingRef::_internal_refupperindexpr(int index) const { - return _impl_.refupperindexpr_.Get(index); +inline void Var::add_varnullingrels(::uint64_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _internal_mutable_varnullingrels()->Add(value); + // @@protoc_insertion_point(field_add:pg_query.Var.varnullingrels) } -inline const ::pg_query::Node& SubscriptingRef::refupperindexpr(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refupperindexpr) - return _internal_refupperindexpr(index); +inline const ::google::protobuf::RepeatedField<::uint64_t>& Var::varnullingrels() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Var.varnullingrels) + return _internal_varnullingrels(); } -inline ::pg_query::Node* SubscriptingRef::_internal_add_refupperindexpr() { - return _impl_.refupperindexpr_.Add(); +inline ::google::protobuf::RepeatedField<::uint64_t>* Var::mutable_varnullingrels() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Var.varnullingrels) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_varnullingrels(); } -inline ::pg_query::Node* SubscriptingRef::add_refupperindexpr() { - ::pg_query::Node* _add = _internal_add_refupperindexpr(); - // @@protoc_insertion_point(field_add:pg_query.SubscriptingRef.refupperindexpr) - return _add; +inline const ::google::protobuf::RepeatedField<::uint64_t>& Var::_internal_varnullingrels() + const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.varnullingrels_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SubscriptingRef::refupperindexpr() const { - // @@protoc_insertion_point(field_list:pg_query.SubscriptingRef.refupperindexpr) - return _impl_.refupperindexpr_; +inline ::google::protobuf::RepeatedField<::uint64_t>* Var::_internal_mutable_varnullingrels() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.varnullingrels_; } -// repeated .pg_query.Node reflowerindexpr = 8 [json_name = "reflowerindexpr"]; -inline int SubscriptingRef::_internal_reflowerindexpr_size() const { - return _impl_.reflowerindexpr_.size(); +// uint32 varlevelsup = 8 [json_name = "varlevelsup"]; +inline void Var::clear_varlevelsup() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.varlevelsup_ = 0u; } -inline int SubscriptingRef::reflowerindexpr_size() const { - return _internal_reflowerindexpr_size(); +inline ::uint32_t Var::varlevelsup() const { + // @@protoc_insertion_point(field_get:pg_query.Var.varlevelsup) + return _internal_varlevelsup(); } -inline void SubscriptingRef::clear_reflowerindexpr() { - _impl_.reflowerindexpr_.Clear(); +inline void Var::set_varlevelsup(::uint32_t value) { + _internal_set_varlevelsup(value); + // @@protoc_insertion_point(field_set:pg_query.Var.varlevelsup) } -inline ::pg_query::Node* SubscriptingRef::mutable_reflowerindexpr(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.reflowerindexpr) - return _impl_.reflowerindexpr_.Mutable(index); +inline ::uint32_t Var::_internal_varlevelsup() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.varlevelsup_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SubscriptingRef::mutable_reflowerindexpr() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SubscriptingRef.reflowerindexpr) - return &_impl_.reflowerindexpr_; +inline void Var::_internal_set_varlevelsup(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.varlevelsup_ = value; } -inline const ::pg_query::Node& SubscriptingRef::_internal_reflowerindexpr(int index) const { - return _impl_.reflowerindexpr_.Get(index); + +// int32 location = 9 [json_name = "location"]; +inline void Var::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& SubscriptingRef::reflowerindexpr(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.reflowerindexpr) - return _internal_reflowerindexpr(index); +inline ::int32_t Var::location() const { + // @@protoc_insertion_point(field_get:pg_query.Var.location) + return _internal_location(); } -inline ::pg_query::Node* SubscriptingRef::_internal_add_reflowerindexpr() { - return _impl_.reflowerindexpr_.Add(); +inline void Var::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.Var.location) } -inline ::pg_query::Node* SubscriptingRef::add_reflowerindexpr() { - ::pg_query::Node* _add = _internal_add_reflowerindexpr(); - // @@protoc_insertion_point(field_add:pg_query.SubscriptingRef.reflowerindexpr) - return _add; +inline ::int32_t Var::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SubscriptingRef::reflowerindexpr() const { - // @@protoc_insertion_point(field_list:pg_query.SubscriptingRef.reflowerindexpr) - return _impl_.reflowerindexpr_; +inline void Var::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.Node refexpr = 9 [json_name = "refexpr"]; -inline bool SubscriptingRef::_internal_has_refexpr() const { - return this != internal_default_instance() && _impl_.refexpr_ != nullptr; -} -inline bool SubscriptingRef::has_refexpr() const { - return _internal_has_refexpr(); +// ------------------------------------------------------------------- + +// Param + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool Param::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void SubscriptingRef::clear_refexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.refexpr_ != nullptr) { - delete _impl_.refexpr_; - } - _impl_.refexpr_ = nullptr; +inline void Param::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& SubscriptingRef::_internal_refexpr() const { - const ::pg_query::Node* p = _impl_.refexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& Param::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& SubscriptingRef::refexpr() const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refexpr) - return _internal_refexpr(); +inline const ::pg_query::Node& Param::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Param.xpr) + return _internal_xpr(); } -inline void SubscriptingRef::unsafe_arena_set_allocated_refexpr( - ::pg_query::Node* refexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.refexpr_); +inline void Param::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.refexpr_ = refexpr; - if (refexpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubscriptingRef.refexpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Param.xpr) } -inline ::pg_query::Node* SubscriptingRef::release_refexpr() { - - ::pg_query::Node* temp = _impl_.refexpr_; - _impl_.refexpr_ = nullptr; +inline ::pg_query::Node* Param::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SubscriptingRef::unsafe_arena_release_refexpr() { - // @@protoc_insertion_point(field_release:pg_query.SubscriptingRef.refexpr) - - ::pg_query::Node* temp = _impl_.refexpr_; - _impl_.refexpr_ = nullptr; +inline ::pg_query::Node* Param::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Param.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* SubscriptingRef::_internal_mutable_refexpr() { - - if (_impl_.refexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.refexpr_ = p; +inline ::pg_query::Node* Param::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.refexpr_; + return _impl_.xpr_; } -inline ::pg_query::Node* SubscriptingRef::mutable_refexpr() { - ::pg_query::Node* _msg = _internal_mutable_refexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.refexpr) +inline ::pg_query::Node* Param::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.Param.xpr) return _msg; } -inline void SubscriptingRef::set_allocated_refexpr(::pg_query::Node* refexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Param::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.refexpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (refexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(refexpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - refexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, refexpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.refexpr_ = refexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.SubscriptingRef.refexpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Param.xpr) } -// .pg_query.Node refassgnexpr = 10 [json_name = "refassgnexpr"]; -inline bool SubscriptingRef::_internal_has_refassgnexpr() const { - return this != internal_default_instance() && _impl_.refassgnexpr_ != nullptr; +// .pg_query.ParamKind paramkind = 2 [json_name = "paramkind"]; +inline void Param::clear_paramkind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.paramkind_ = 0; } -inline bool SubscriptingRef::has_refassgnexpr() const { - return _internal_has_refassgnexpr(); +inline ::pg_query::ParamKind Param::paramkind() const { + // @@protoc_insertion_point(field_get:pg_query.Param.paramkind) + return _internal_paramkind(); } -inline void SubscriptingRef::clear_refassgnexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.refassgnexpr_ != nullptr) { - delete _impl_.refassgnexpr_; - } - _impl_.refassgnexpr_ = nullptr; +inline void Param::set_paramkind(::pg_query::ParamKind value) { + _internal_set_paramkind(value); + // @@protoc_insertion_point(field_set:pg_query.Param.paramkind) } -inline const ::pg_query::Node& SubscriptingRef::_internal_refassgnexpr() const { - const ::pg_query::Node* p = _impl_.refassgnexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::ParamKind Param::_internal_paramkind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ParamKind>(_impl_.paramkind_); } -inline const ::pg_query::Node& SubscriptingRef::refassgnexpr() const { - // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refassgnexpr) - return _internal_refassgnexpr(); +inline void Param::_internal_set_paramkind(::pg_query::ParamKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.paramkind_ = value; } -inline void SubscriptingRef::unsafe_arena_set_allocated_refassgnexpr( - ::pg_query::Node* refassgnexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.refassgnexpr_); - } - _impl_.refassgnexpr_ = refassgnexpr; - if (refassgnexpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubscriptingRef.refassgnexpr) + +// int32 paramid = 3 [json_name = "paramid"]; +inline void Param::clear_paramid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.paramid_ = 0; } -inline ::pg_query::Node* SubscriptingRef::release_refassgnexpr() { - - ::pg_query::Node* temp = _impl_.refassgnexpr_; - _impl_.refassgnexpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::int32_t Param::paramid() const { + // @@protoc_insertion_point(field_get:pg_query.Param.paramid) + return _internal_paramid(); } -inline ::pg_query::Node* SubscriptingRef::unsafe_arena_release_refassgnexpr() { - // @@protoc_insertion_point(field_release:pg_query.SubscriptingRef.refassgnexpr) - - ::pg_query::Node* temp = _impl_.refassgnexpr_; - _impl_.refassgnexpr_ = nullptr; - return temp; +inline void Param::set_paramid(::int32_t value) { + _internal_set_paramid(value); + // @@protoc_insertion_point(field_set:pg_query.Param.paramid) } -inline ::pg_query::Node* SubscriptingRef::_internal_mutable_refassgnexpr() { - - if (_impl_.refassgnexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.refassgnexpr_ = p; - } - return _impl_.refassgnexpr_; +inline ::int32_t Param::_internal_paramid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.paramid_; } -inline ::pg_query::Node* SubscriptingRef::mutable_refassgnexpr() { - ::pg_query::Node* _msg = _internal_mutable_refassgnexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.refassgnexpr) - return _msg; +inline void Param::_internal_set_paramid(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.paramid_ = value; } -inline void SubscriptingRef::set_allocated_refassgnexpr(::pg_query::Node* refassgnexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.refassgnexpr_; - } - if (refassgnexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(refassgnexpr); - if (message_arena != submessage_arena) { - refassgnexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, refassgnexpr, submessage_arena); - } - - } else { - - } - _impl_.refassgnexpr_ = refassgnexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.SubscriptingRef.refassgnexpr) + +// uint32 paramtype = 4 [json_name = "paramtype"]; +inline void Param::clear_paramtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.paramtype_ = 0u; +} +inline ::uint32_t Param::paramtype() const { + // @@protoc_insertion_point(field_get:pg_query.Param.paramtype) + return _internal_paramtype(); +} +inline void Param::set_paramtype(::uint32_t value) { + _internal_set_paramtype(value); + // @@protoc_insertion_point(field_set:pg_query.Param.paramtype) +} +inline ::uint32_t Param::_internal_paramtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.paramtype_; +} +inline void Param::_internal_set_paramtype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.paramtype_ = value; +} + +// int32 paramtypmod = 5 [json_name = "paramtypmod"]; +inline void Param::clear_paramtypmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.paramtypmod_ = 0; +} +inline ::int32_t Param::paramtypmod() const { + // @@protoc_insertion_point(field_get:pg_query.Param.paramtypmod) + return _internal_paramtypmod(); +} +inline void Param::set_paramtypmod(::int32_t value) { + _internal_set_paramtypmod(value); + // @@protoc_insertion_point(field_set:pg_query.Param.paramtypmod) +} +inline ::int32_t Param::_internal_paramtypmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.paramtypmod_; +} +inline void Param::_internal_set_paramtypmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.paramtypmod_ = value; +} + +// uint32 paramcollid = 6 [json_name = "paramcollid"]; +inline void Param::clear_paramcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.paramcollid_ = 0u; +} +inline ::uint32_t Param::paramcollid() const { + // @@protoc_insertion_point(field_get:pg_query.Param.paramcollid) + return _internal_paramcollid(); +} +inline void Param::set_paramcollid(::uint32_t value) { + _internal_set_paramcollid(value); + // @@protoc_insertion_point(field_set:pg_query.Param.paramcollid) +} +inline ::uint32_t Param::_internal_paramcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.paramcollid_; +} +inline void Param::_internal_set_paramcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.paramcollid_ = value; +} + +// int32 location = 7 [json_name = "location"]; +inline void Param::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; +} +inline ::int32_t Param::location() const { + // @@protoc_insertion_point(field_get:pg_query.Param.location) + return _internal_location(); +} +inline void Param::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.Param.location) +} +inline ::int32_t Param::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void Param::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// FuncExpr +// Aggref // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool FuncExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool FuncExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool Aggref::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void FuncExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void Aggref::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& FuncExpr::_internal_xpr() const { +inline const ::pg_query::Node& Aggref::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& FuncExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.xpr) +inline const ::pg_query::Node& Aggref::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Aggref.xpr) return _internal_xpr(); } -inline void FuncExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void Aggref::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FuncExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Aggref.xpr) } -inline ::pg_query::Node* FuncExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* Aggref::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* FuncExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.FuncExpr.xpr) - +inline ::pg_query::Node* Aggref::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Aggref.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* FuncExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* Aggref::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* FuncExpr::mutable_xpr() { +inline ::pg_query::Node* Aggref::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.FuncExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.Aggref.xpr) return _msg; } -inline void FuncExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Aggref::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.FuncExpr.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Aggref.xpr) } -// uint32 funcid = 2 [json_name = "funcid"]; -inline void FuncExpr::clear_funcid() { - _impl_.funcid_ = 0u; +// uint32 aggfnoid = 2 [json_name = "aggfnoid"]; +inline void Aggref::clear_aggfnoid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggfnoid_ = 0u; } -inline uint32_t FuncExpr::_internal_funcid() const { - return _impl_.funcid_; +inline ::uint32_t Aggref::aggfnoid() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggfnoid) + return _internal_aggfnoid(); } -inline uint32_t FuncExpr::funcid() const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcid) - return _internal_funcid(); +inline void Aggref::set_aggfnoid(::uint32_t value) { + _internal_set_aggfnoid(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.aggfnoid) } -inline void FuncExpr::_internal_set_funcid(uint32_t value) { - - _impl_.funcid_ = value; +inline ::uint32_t Aggref::_internal_aggfnoid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggfnoid_; } -inline void FuncExpr::set_funcid(uint32_t value) { - _internal_set_funcid(value); - // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcid) +inline void Aggref::_internal_set_aggfnoid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggfnoid_ = value; } -// uint32 funcresulttype = 3 [json_name = "funcresulttype"]; -inline void FuncExpr::clear_funcresulttype() { - _impl_.funcresulttype_ = 0u; +// uint32 aggtype = 3 [json_name = "aggtype"]; +inline void Aggref::clear_aggtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggtype_ = 0u; } -inline uint32_t FuncExpr::_internal_funcresulttype() const { - return _impl_.funcresulttype_; +inline ::uint32_t Aggref::aggtype() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggtype) + return _internal_aggtype(); } -inline uint32_t FuncExpr::funcresulttype() const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcresulttype) - return _internal_funcresulttype(); +inline void Aggref::set_aggtype(::uint32_t value) { + _internal_set_aggtype(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.aggtype) } -inline void FuncExpr::_internal_set_funcresulttype(uint32_t value) { - - _impl_.funcresulttype_ = value; +inline ::uint32_t Aggref::_internal_aggtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggtype_; } -inline void FuncExpr::set_funcresulttype(uint32_t value) { - _internal_set_funcresulttype(value); - // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcresulttype) +inline void Aggref::_internal_set_aggtype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggtype_ = value; } -// bool funcretset = 4 [json_name = "funcretset"]; -inline void FuncExpr::clear_funcretset() { - _impl_.funcretset_ = false; +// uint32 aggcollid = 4 [json_name = "aggcollid"]; +inline void Aggref::clear_aggcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggcollid_ = 0u; } -inline bool FuncExpr::_internal_funcretset() const { - return _impl_.funcretset_; +inline ::uint32_t Aggref::aggcollid() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggcollid) + return _internal_aggcollid(); } -inline bool FuncExpr::funcretset() const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcretset) - return _internal_funcretset(); +inline void Aggref::set_aggcollid(::uint32_t value) { + _internal_set_aggcollid(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.aggcollid) } -inline void FuncExpr::_internal_set_funcretset(bool value) { - - _impl_.funcretset_ = value; +inline ::uint32_t Aggref::_internal_aggcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggcollid_; } -inline void FuncExpr::set_funcretset(bool value) { - _internal_set_funcretset(value); - // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcretset) +inline void Aggref::_internal_set_aggcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggcollid_ = value; } -// bool funcvariadic = 5 [json_name = "funcvariadic"]; -inline void FuncExpr::clear_funcvariadic() { - _impl_.funcvariadic_ = false; +// uint32 inputcollid = 5 [json_name = "inputcollid"]; +inline void Aggref::clear_inputcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inputcollid_ = 0u; } -inline bool FuncExpr::_internal_funcvariadic() const { - return _impl_.funcvariadic_; +inline ::uint32_t Aggref::inputcollid() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.inputcollid) + return _internal_inputcollid(); } -inline bool FuncExpr::funcvariadic() const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcvariadic) - return _internal_funcvariadic(); +inline void Aggref::set_inputcollid(::uint32_t value) { + _internal_set_inputcollid(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.inputcollid) } -inline void FuncExpr::_internal_set_funcvariadic(bool value) { - - _impl_.funcvariadic_ = value; +inline ::uint32_t Aggref::_internal_inputcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inputcollid_; } -inline void FuncExpr::set_funcvariadic(bool value) { - _internal_set_funcvariadic(value); - // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcvariadic) +inline void Aggref::_internal_set_inputcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inputcollid_ = value; } -// .pg_query.CoercionForm funcformat = 6 [json_name = "funcformat"]; -inline void FuncExpr::clear_funcformat() { - _impl_.funcformat_ = 0; +// repeated .pg_query.Node aggargtypes = 6 [json_name = "aggargtypes"]; +inline int Aggref::_internal_aggargtypes_size() const { + return _internal_aggargtypes().size(); } -inline ::pg_query::CoercionForm FuncExpr::_internal_funcformat() const { - return static_cast< ::pg_query::CoercionForm >(_impl_.funcformat_); +inline int Aggref::aggargtypes_size() const { + return _internal_aggargtypes_size(); } -inline ::pg_query::CoercionForm FuncExpr::funcformat() const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcformat) - return _internal_funcformat(); +inline void Aggref::clear_aggargtypes() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggargtypes_.Clear(); } -inline void FuncExpr::_internal_set_funcformat(::pg_query::CoercionForm value) { - - _impl_.funcformat_ = value; +inline ::pg_query::Node* Aggref::mutable_aggargtypes(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggargtypes) + return _internal_mutable_aggargtypes()->Mutable(index); } -inline void FuncExpr::set_funcformat(::pg_query::CoercionForm value) { - _internal_set_funcformat(value); - // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcformat) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Aggref::mutable_aggargtypes() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.aggargtypes) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_aggargtypes(); } - -// uint32 funccollid = 7 [json_name = "funccollid"]; -inline void FuncExpr::clear_funccollid() { - _impl_.funccollid_ = 0u; +inline const ::pg_query::Node& Aggref::aggargtypes(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggargtypes) + return _internal_aggargtypes().Get(index); } -inline uint32_t FuncExpr::_internal_funccollid() const { - return _impl_.funccollid_; +inline ::pg_query::Node* Aggref::add_aggargtypes() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_aggargtypes()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Aggref.aggargtypes) + return _add; } -inline uint32_t FuncExpr::funccollid() const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funccollid) - return _internal_funccollid(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Aggref::aggargtypes() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Aggref.aggargtypes) + return _internal_aggargtypes(); } -inline void FuncExpr::_internal_set_funccollid(uint32_t value) { - - _impl_.funccollid_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Aggref::_internal_aggargtypes() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggargtypes_; } -inline void FuncExpr::set_funccollid(uint32_t value) { - _internal_set_funccollid(value); - // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funccollid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Aggref::_internal_mutable_aggargtypes() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.aggargtypes_; } -// uint32 inputcollid = 8 [json_name = "inputcollid"]; -inline void FuncExpr::clear_inputcollid() { - _impl_.inputcollid_ = 0u; +// repeated .pg_query.Node aggdirectargs = 7 [json_name = "aggdirectargs"]; +inline int Aggref::_internal_aggdirectargs_size() const { + return _internal_aggdirectargs().size(); } -inline uint32_t FuncExpr::_internal_inputcollid() const { - return _impl_.inputcollid_; +inline int Aggref::aggdirectargs_size() const { + return _internal_aggdirectargs_size(); } -inline uint32_t FuncExpr::inputcollid() const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.inputcollid) - return _internal_inputcollid(); +inline void Aggref::clear_aggdirectargs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggdirectargs_.Clear(); } -inline void FuncExpr::_internal_set_inputcollid(uint32_t value) { - - _impl_.inputcollid_ = value; +inline ::pg_query::Node* Aggref::mutable_aggdirectargs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggdirectargs) + return _internal_mutable_aggdirectargs()->Mutable(index); } -inline void FuncExpr::set_inputcollid(uint32_t value) { - _internal_set_inputcollid(value); - // @@protoc_insertion_point(field_set:pg_query.FuncExpr.inputcollid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Aggref::mutable_aggdirectargs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.aggdirectargs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_aggdirectargs(); +} +inline const ::pg_query::Node& Aggref::aggdirectargs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggdirectargs) + return _internal_aggdirectargs().Get(index); +} +inline ::pg_query::Node* Aggref::add_aggdirectargs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_aggdirectargs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Aggref.aggdirectargs) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Aggref::aggdirectargs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Aggref.aggdirectargs) + return _internal_aggdirectargs(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Aggref::_internal_aggdirectargs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggdirectargs_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Aggref::_internal_mutable_aggdirectargs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.aggdirectargs_; } -// repeated .pg_query.Node args = 9 [json_name = "args"]; -inline int FuncExpr::_internal_args_size() const { - return _impl_.args_.size(); +// repeated .pg_query.Node args = 8 [json_name = "args"]; +inline int Aggref::_internal_args_size() const { + return _internal_args().size(); } -inline int FuncExpr::args_size() const { +inline int Aggref::args_size() const { return _internal_args_size(); } -inline void FuncExpr::clear_args() { +inline void Aggref::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.args_.Clear(); } -inline ::pg_query::Node* FuncExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.FuncExpr.args) - return _impl_.args_.Mutable(index); +inline ::pg_query::Node* Aggref::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Aggref.args) + return _internal_mutable_args()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -FuncExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.FuncExpr.args) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Aggref::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); +} +inline const ::pg_query::Node& Aggref::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Aggref.args) + return _internal_args().Get(index); +} +inline ::pg_query::Node* Aggref::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Aggref.args) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Aggref::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Aggref.args) + return _internal_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Aggref::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Aggref::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); return &_impl_.args_; } -inline const ::pg_query::Node& FuncExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// repeated .pg_query.Node aggorder = 9 [json_name = "aggorder"]; +inline int Aggref::_internal_aggorder_size() const { + return _internal_aggorder().size(); } -inline const ::pg_query::Node& FuncExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.args) - return _internal_args(index); +inline int Aggref::aggorder_size() const { + return _internal_aggorder_size(); } -inline ::pg_query::Node* FuncExpr::_internal_add_args() { - return _impl_.args_.Add(); +inline void Aggref::clear_aggorder() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggorder_.Clear(); } -inline ::pg_query::Node* FuncExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.FuncExpr.args) +inline ::pg_query::Node* Aggref::mutable_aggorder(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggorder) + return _internal_mutable_aggorder()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Aggref::mutable_aggorder() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.aggorder) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_aggorder(); +} +inline const ::pg_query::Node& Aggref::aggorder(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggorder) + return _internal_aggorder().Get(index); +} +inline ::pg_query::Node* Aggref::add_aggorder() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_aggorder()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Aggref.aggorder) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -FuncExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.FuncExpr.args) - return _impl_.args_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Aggref::aggorder() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Aggref.aggorder) + return _internal_aggorder(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Aggref::_internal_aggorder() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggorder_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Aggref::_internal_mutable_aggorder() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.aggorder_; } -// int32 location = 10 [json_name = "location"]; -inline void FuncExpr::clear_location() { - _impl_.location_ = 0; +// repeated .pg_query.Node aggdistinct = 10 [json_name = "aggdistinct"]; +inline int Aggref::_internal_aggdistinct_size() const { + return _internal_aggdistinct().size(); } -inline int32_t FuncExpr::_internal_location() const { - return _impl_.location_; +inline int Aggref::aggdistinct_size() const { + return _internal_aggdistinct_size(); } -inline int32_t FuncExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.FuncExpr.location) - return _internal_location(); +inline void Aggref::clear_aggdistinct() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggdistinct_.Clear(); } -inline void FuncExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* Aggref::mutable_aggdistinct(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggdistinct) + return _internal_mutable_aggdistinct()->Mutable(index); } -inline void FuncExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.FuncExpr.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Aggref::mutable_aggdistinct() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Aggref.aggdistinct) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_aggdistinct(); } - -// ------------------------------------------------------------------- - -// NamedArgExpr - -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool NamedArgExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; +inline const ::pg_query::Node& Aggref::aggdistinct(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggdistinct) + return _internal_aggdistinct().Get(index); } -inline bool NamedArgExpr::has_xpr() const { - return _internal_has_xpr(); +inline ::pg_query::Node* Aggref::add_aggdistinct() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_aggdistinct()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Aggref.aggdistinct) + return _add; } -inline void NamedArgExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Aggref::aggdistinct() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Aggref.aggdistinct) + return _internal_aggdistinct(); } -inline const ::pg_query::Node& NamedArgExpr::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Aggref::_internal_aggdistinct() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggdistinct_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Aggref::_internal_mutable_aggdistinct() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.aggdistinct_; +} + +// .pg_query.Node aggfilter = 11 [json_name = "aggfilter"]; +inline bool Aggref::has_aggfilter() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.aggfilter_ != nullptr); + return value; +} +inline void Aggref::clear_aggfilter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.aggfilter_ != nullptr) _impl_.aggfilter_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::Node& Aggref::_internal_aggfilter() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.aggfilter_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& NamedArgExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.xpr) - return _internal_xpr(); +inline const ::pg_query::Node& Aggref::aggfilter() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggfilter) + return _internal_aggfilter(); } -inline void NamedArgExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void Aggref::unsafe_arena_set_allocated_aggfilter(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.aggfilter_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.aggfilter_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NamedArgExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Aggref.aggfilter) } -inline ::pg_query::Node* NamedArgExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* Aggref::release_aggfilter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.aggfilter_; + _impl_.aggfilter_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* NamedArgExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.NamedArgExpr.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* Aggref::unsafe_arena_release_aggfilter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Aggref.aggfilter) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.aggfilter_; + _impl_.aggfilter_ = nullptr; return temp; } -inline ::pg_query::Node* NamedArgExpr::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; +inline ::pg_query::Node* Aggref::_internal_mutable_aggfilter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.aggfilter_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.aggfilter_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.xpr_; + return _impl_.aggfilter_; } -inline ::pg_query::Node* NamedArgExpr::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.NamedArgExpr.xpr) +inline ::pg_query::Node* Aggref::mutable_aggfilter() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_aggfilter(); + // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggfilter) return _msg; } -inline void NamedArgExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Aggref::set_allocated_aggfilter(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.aggfilter_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.NamedArgExpr.xpr) -} -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool NamedArgExpr::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; + _impl_.aggfilter_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Aggref.aggfilter) } -inline bool NamedArgExpr::has_arg() const { - return _internal_has_arg(); + +// bool aggstar = 12 [json_name = "aggstar"]; +inline void Aggref::clear_aggstar() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggstar_ = false; } -inline void NamedArgExpr::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline bool Aggref::aggstar() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggstar) + return _internal_aggstar(); } -inline const ::pg_query::Node& NamedArgExpr::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void Aggref::set_aggstar(bool value) { + _internal_set_aggstar(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.aggstar) } -inline const ::pg_query::Node& NamedArgExpr::arg() const { - // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.arg) - return _internal_arg(); +inline bool Aggref::_internal_aggstar() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggstar_; } -inline void NamedArgExpr::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NamedArgExpr.arg) +inline void Aggref::_internal_set_aggstar(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggstar_ = value; } -inline ::pg_query::Node* NamedArgExpr::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// bool aggvariadic = 13 [json_name = "aggvariadic"]; +inline void Aggref::clear_aggvariadic() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggvariadic_ = false; } -inline ::pg_query::Node* NamedArgExpr::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.NamedArgExpr.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; +inline bool Aggref::aggvariadic() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggvariadic) + return _internal_aggvariadic(); } -inline ::pg_query::Node* NamedArgExpr::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; +inline void Aggref::set_aggvariadic(bool value) { + _internal_set_aggvariadic(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.aggvariadic) } -inline ::pg_query::Node* NamedArgExpr::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.NamedArgExpr.arg) - return _msg; +inline bool Aggref::_internal_aggvariadic() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggvariadic_; } -inline void NamedArgExpr::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); - if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); - } - - } else { - - } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.NamedArgExpr.arg) +inline void Aggref::_internal_set_aggvariadic(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggvariadic_ = value; } -// string name = 3 [json_name = "name"]; -inline void NamedArgExpr::clear_name() { - _impl_.name_.ClearToEmpty(); +// string aggkind = 14 [json_name = "aggkind"]; +inline void Aggref::clear_aggkind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggkind_.ClearToEmpty(); } -inline const std::string& NamedArgExpr::name() const { - // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.name) - return _internal_name(); +inline const std::string& Aggref::aggkind() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggkind) + return _internal_aggkind(); } -template -inline PROTOBUF_ALWAYS_INLINE -void NamedArgExpr::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.NamedArgExpr.name) +template +inline PROTOBUF_ALWAYS_INLINE void Aggref::set_aggkind(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggkind_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Aggref.aggkind) } -inline std::string* NamedArgExpr::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.NamedArgExpr.name) +inline std::string* Aggref::mutable_aggkind() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_aggkind(); + // @@protoc_insertion_point(field_mutable:pg_query.Aggref.aggkind) return _s; } -inline const std::string& NamedArgExpr::_internal_name() const { - return _impl_.name_.Get(); +inline const std::string& Aggref::_internal_aggkind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggkind_.Get(); } -inline void NamedArgExpr::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void Aggref::_internal_set_aggkind(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggkind_.Set(value, GetArena()); } -inline std::string* NamedArgExpr::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline std::string* Aggref::_internal_mutable_aggkind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.aggkind_.Mutable( GetArena()); } -inline std::string* NamedArgExpr::release_name() { - // @@protoc_insertion_point(field_release:pg_query.NamedArgExpr.name) - return _impl_.name_.Release(); +inline std::string* Aggref::release_aggkind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Aggref.aggkind) + return _impl_.aggkind_.Release(); } -inline void NamedArgExpr::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.NamedArgExpr.name) +inline void Aggref::set_allocated_aggkind(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggkind_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.aggkind_.IsDefault()) { + _impl_.aggkind_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Aggref.aggkind) } -// int32 argnumber = 4 [json_name = "argnumber"]; -inline void NamedArgExpr::clear_argnumber() { - _impl_.argnumber_ = 0; +// uint32 agglevelsup = 15 [json_name = "agglevelsup"]; +inline void Aggref::clear_agglevelsup() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.agglevelsup_ = 0u; } -inline int32_t NamedArgExpr::_internal_argnumber() const { - return _impl_.argnumber_; +inline ::uint32_t Aggref::agglevelsup() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.agglevelsup) + return _internal_agglevelsup(); } -inline int32_t NamedArgExpr::argnumber() const { - // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.argnumber) - return _internal_argnumber(); +inline void Aggref::set_agglevelsup(::uint32_t value) { + _internal_set_agglevelsup(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.agglevelsup) } -inline void NamedArgExpr::_internal_set_argnumber(int32_t value) { - - _impl_.argnumber_ = value; +inline ::uint32_t Aggref::_internal_agglevelsup() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.agglevelsup_; } -inline void NamedArgExpr::set_argnumber(int32_t value) { - _internal_set_argnumber(value); - // @@protoc_insertion_point(field_set:pg_query.NamedArgExpr.argnumber) +inline void Aggref::_internal_set_agglevelsup(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.agglevelsup_ = value; } -// int32 location = 5 [json_name = "location"]; -inline void NamedArgExpr::clear_location() { - _impl_.location_ = 0; +// .pg_query.AggSplit aggsplit = 16 [json_name = "aggsplit"]; +inline void Aggref::clear_aggsplit() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggsplit_ = 0; } -inline int32_t NamedArgExpr::_internal_location() const { - return _impl_.location_; +inline ::pg_query::AggSplit Aggref::aggsplit() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggsplit) + return _internal_aggsplit(); } -inline int32_t NamedArgExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.location) - return _internal_location(); +inline void Aggref::set_aggsplit(::pg_query::AggSplit value) { + _internal_set_aggsplit(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.aggsplit) } -inline void NamedArgExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::AggSplit Aggref::_internal_aggsplit() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::AggSplit>(_impl_.aggsplit_); +} +inline void Aggref::_internal_set_aggsplit(::pg_query::AggSplit value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggsplit_ = value; +} + +// int32 aggno = 17 [json_name = "aggno"]; +inline void Aggref::clear_aggno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggno_ = 0; +} +inline ::int32_t Aggref::aggno() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggno) + return _internal_aggno(); +} +inline void Aggref::set_aggno(::int32_t value) { + _internal_set_aggno(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.aggno) +} +inline ::int32_t Aggref::_internal_aggno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggno_; +} +inline void Aggref::_internal_set_aggno(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggno_ = value; +} + +// int32 aggtransno = 18 [json_name = "aggtransno"]; +inline void Aggref::clear_aggtransno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aggtransno_ = 0; +} +inline ::int32_t Aggref::aggtransno() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.aggtransno) + return _internal_aggtransno(); +} +inline void Aggref::set_aggtransno(::int32_t value) { + _internal_set_aggtransno(value); + // @@protoc_insertion_point(field_set:pg_query.Aggref.aggtransno) +} +inline ::int32_t Aggref::_internal_aggtransno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aggtransno_; +} +inline void Aggref::_internal_set_aggtransno(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.aggtransno_ = value; +} + +// int32 location = 19 [json_name = "location"]; +inline void Aggref::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; +} +inline ::int32_t Aggref::location() const { + // @@protoc_insertion_point(field_get:pg_query.Aggref.location) + return _internal_location(); } -inline void NamedArgExpr::set_location(int32_t value) { +inline void Aggref::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.NamedArgExpr.location) + // @@protoc_insertion_point(field_set:pg_query.Aggref.location) +} +inline ::int32_t Aggref::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void Aggref::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// OpExpr +// GroupingFunc // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool OpExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool OpExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool GroupingFunc::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void OpExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void GroupingFunc::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& OpExpr::_internal_xpr() const { +inline const ::pg_query::Node& GroupingFunc::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& OpExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.OpExpr.xpr) +inline const ::pg_query::Node& GroupingFunc::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.xpr) return _internal_xpr(); } -inline void OpExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void GroupingFunc::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OpExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.GroupingFunc.xpr) } -inline ::pg_query::Node* OpExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* GroupingFunc::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* OpExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.OpExpr.xpr) - +inline ::pg_query::Node* GroupingFunc::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.GroupingFunc.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* OpExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* GroupingFunc::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* OpExpr::mutable_xpr() { +inline ::pg_query::Node* GroupingFunc::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.OpExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.GroupingFunc.xpr) return _msg; } -inline void OpExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void GroupingFunc::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.OpExpr.xpr) -} -// uint32 opno = 2 [json_name = "opno"]; -inline void OpExpr::clear_opno() { - _impl_.opno_ = 0u; -} -inline uint32_t OpExpr::_internal_opno() const { - return _impl_.opno_; -} -inline uint32_t OpExpr::opno() const { - // @@protoc_insertion_point(field_get:pg_query.OpExpr.opno) - return _internal_opno(); -} -inline void OpExpr::_internal_set_opno(uint32_t value) { - - _impl_.opno_ = value; -} -inline void OpExpr::set_opno(uint32_t value) { - _internal_set_opno(value); - // @@protoc_insertion_point(field_set:pg_query.OpExpr.opno) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.GroupingFunc.xpr) } -// uint32 opfuncid = 3 [json_name = "opfuncid"]; -inline void OpExpr::clear_opfuncid() { - _impl_.opfuncid_ = 0u; +// repeated .pg_query.Node args = 2 [json_name = "args"]; +inline int GroupingFunc::_internal_args_size() const { + return _internal_args().size(); } -inline uint32_t OpExpr::_internal_opfuncid() const { - return _impl_.opfuncid_; +inline int GroupingFunc::args_size() const { + return _internal_args_size(); } -inline uint32_t OpExpr::opfuncid() const { - // @@protoc_insertion_point(field_get:pg_query.OpExpr.opfuncid) - return _internal_opfuncid(); +inline void GroupingFunc::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline void OpExpr::_internal_set_opfuncid(uint32_t value) { - - _impl_.opfuncid_ = value; +inline ::pg_query::Node* GroupingFunc::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.GroupingFunc.args) + return _internal_mutable_args()->Mutable(index); } -inline void OpExpr::set_opfuncid(uint32_t value) { - _internal_set_opfuncid(value); - // @@protoc_insertion_point(field_set:pg_query.OpExpr.opfuncid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* GroupingFunc::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.GroupingFunc.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } - -// uint32 opresulttype = 4 [json_name = "opresulttype"]; -inline void OpExpr::clear_opresulttype() { - _impl_.opresulttype_ = 0u; +inline const ::pg_query::Node& GroupingFunc::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.args) + return _internal_args().Get(index); } -inline uint32_t OpExpr::_internal_opresulttype() const { - return _impl_.opresulttype_; +inline ::pg_query::Node* GroupingFunc::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.GroupingFunc.args) + return _add; } -inline uint32_t OpExpr::opresulttype() const { - // @@protoc_insertion_point(field_get:pg_query.OpExpr.opresulttype) - return _internal_opresulttype(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& GroupingFunc::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.GroupingFunc.args) + return _internal_args(); } -inline void OpExpr::_internal_set_opresulttype(uint32_t value) { - - _impl_.opresulttype_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +GroupingFunc::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline void OpExpr::set_opresulttype(uint32_t value) { - _internal_set_opresulttype(value); - // @@protoc_insertion_point(field_set:pg_query.OpExpr.opresulttype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +GroupingFunc::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// bool opretset = 5 [json_name = "opretset"]; -inline void OpExpr::clear_opretset() { - _impl_.opretset_ = false; +// repeated .pg_query.Node refs = 3 [json_name = "refs"]; +inline int GroupingFunc::_internal_refs_size() const { + return _internal_refs().size(); } -inline bool OpExpr::_internal_opretset() const { - return _impl_.opretset_; +inline int GroupingFunc::refs_size() const { + return _internal_refs_size(); } -inline bool OpExpr::opretset() const { - // @@protoc_insertion_point(field_get:pg_query.OpExpr.opretset) - return _internal_opretset(); +inline void GroupingFunc::clear_refs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refs_.Clear(); } -inline void OpExpr::_internal_set_opretset(bool value) { - - _impl_.opretset_ = value; +inline ::pg_query::Node* GroupingFunc::mutable_refs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.GroupingFunc.refs) + return _internal_mutable_refs()->Mutable(index); } -inline void OpExpr::set_opretset(bool value) { - _internal_set_opretset(value); - // @@protoc_insertion_point(field_set:pg_query.OpExpr.opretset) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* GroupingFunc::mutable_refs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.GroupingFunc.refs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_refs(); } - -// uint32 opcollid = 6 [json_name = "opcollid"]; -inline void OpExpr::clear_opcollid() { - _impl_.opcollid_ = 0u; +inline const ::pg_query::Node& GroupingFunc::refs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.refs) + return _internal_refs().Get(index); } -inline uint32_t OpExpr::_internal_opcollid() const { - return _impl_.opcollid_; +inline ::pg_query::Node* GroupingFunc::add_refs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_refs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.GroupingFunc.refs) + return _add; } -inline uint32_t OpExpr::opcollid() const { - // @@protoc_insertion_point(field_get:pg_query.OpExpr.opcollid) - return _internal_opcollid(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& GroupingFunc::refs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.GroupingFunc.refs) + return _internal_refs(); } -inline void OpExpr::_internal_set_opcollid(uint32_t value) { - - _impl_.opcollid_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +GroupingFunc::_internal_refs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.refs_; } -inline void OpExpr::set_opcollid(uint32_t value) { - _internal_set_opcollid(value); - // @@protoc_insertion_point(field_set:pg_query.OpExpr.opcollid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +GroupingFunc::_internal_mutable_refs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.refs_; } -// uint32 inputcollid = 7 [json_name = "inputcollid"]; -inline void OpExpr::clear_inputcollid() { - _impl_.inputcollid_ = 0u; +// uint32 agglevelsup = 4 [json_name = "agglevelsup"]; +inline void GroupingFunc::clear_agglevelsup() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.agglevelsup_ = 0u; } -inline uint32_t OpExpr::_internal_inputcollid() const { - return _impl_.inputcollid_; +inline ::uint32_t GroupingFunc::agglevelsup() const { + // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.agglevelsup) + return _internal_agglevelsup(); } -inline uint32_t OpExpr::inputcollid() const { - // @@protoc_insertion_point(field_get:pg_query.OpExpr.inputcollid) - return _internal_inputcollid(); +inline void GroupingFunc::set_agglevelsup(::uint32_t value) { + _internal_set_agglevelsup(value); + // @@protoc_insertion_point(field_set:pg_query.GroupingFunc.agglevelsup) } -inline void OpExpr::_internal_set_inputcollid(uint32_t value) { - - _impl_.inputcollid_ = value; +inline ::uint32_t GroupingFunc::_internal_agglevelsup() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.agglevelsup_; } -inline void OpExpr::set_inputcollid(uint32_t value) { - _internal_set_inputcollid(value); - // @@protoc_insertion_point(field_set:pg_query.OpExpr.inputcollid) +inline void GroupingFunc::_internal_set_agglevelsup(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.agglevelsup_ = value; } -// repeated .pg_query.Node args = 8 [json_name = "args"]; -inline int OpExpr::_internal_args_size() const { - return _impl_.args_.size(); -} -inline int OpExpr::args_size() const { - return _internal_args_size(); -} -inline void OpExpr::clear_args() { - _impl_.args_.Clear(); -} -inline ::pg_query::Node* OpExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.OpExpr.args) - return _impl_.args_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -OpExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.OpExpr.args) - return &_impl_.args_; -} -inline const ::pg_query::Node& OpExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); -} -inline const ::pg_query::Node& OpExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.OpExpr.args) - return _internal_args(index); -} -inline ::pg_query::Node* OpExpr::_internal_add_args() { - return _impl_.args_.Add(); -} -inline ::pg_query::Node* OpExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.OpExpr.args) - return _add; +// int32 location = 5 [json_name = "location"]; +inline void GroupingFunc::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -OpExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.OpExpr.args) - return _impl_.args_; +inline ::int32_t GroupingFunc::location() const { + // @@protoc_insertion_point(field_get:pg_query.GroupingFunc.location) + return _internal_location(); } - -// int32 location = 9 [json_name = "location"]; -inline void OpExpr::clear_location() { - _impl_.location_ = 0; +inline void GroupingFunc::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.GroupingFunc.location) } -inline int32_t OpExpr::_internal_location() const { +inline ::int32_t GroupingFunc::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); return _impl_.location_; } -inline int32_t OpExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.OpExpr.location) - return _internal_location(); -} -inline void OpExpr::_internal_set_location(int32_t value) { - +inline void GroupingFunc::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; _impl_.location_ = value; } -inline void OpExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.OpExpr.location) -} // ------------------------------------------------------------------- -// DistinctExpr +// WindowFunc // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool DistinctExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool DistinctExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool WindowFunc::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void DistinctExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void WindowFunc::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& DistinctExpr::_internal_xpr() const { +inline const ::pg_query::Node& WindowFunc::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& DistinctExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.xpr) +inline const ::pg_query::Node& WindowFunc::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.xpr) return _internal_xpr(); } -inline void DistinctExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void WindowFunc::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DistinctExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowFunc.xpr) } -inline ::pg_query::Node* DistinctExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* WindowFunc::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* DistinctExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.DistinctExpr.xpr) - +inline ::pg_query::Node* WindowFunc::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowFunc.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* DistinctExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* WindowFunc::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* DistinctExpr::mutable_xpr() { +inline ::pg_query::Node* WindowFunc::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.DistinctExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.WindowFunc.xpr) return _msg; } -inline void DistinctExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void WindowFunc::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.DistinctExpr.xpr) -} -// uint32 opno = 2 [json_name = "opno"]; -inline void DistinctExpr::clear_opno() { - _impl_.opno_ = 0u; -} -inline uint32_t DistinctExpr::_internal_opno() const { - return _impl_.opno_; -} -inline uint32_t DistinctExpr::opno() const { - // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.opno) - return _internal_opno(); -} -inline void DistinctExpr::_internal_set_opno(uint32_t value) { - - _impl_.opno_ = value; -} -inline void DistinctExpr::set_opno(uint32_t value) { - _internal_set_opno(value); - // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.opno) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowFunc.xpr) } -// uint32 opfuncid = 3 [json_name = "opfuncid"]; -inline void DistinctExpr::clear_opfuncid() { - _impl_.opfuncid_ = 0u; +// uint32 winfnoid = 2 [json_name = "winfnoid"]; +inline void WindowFunc::clear_winfnoid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.winfnoid_ = 0u; } -inline uint32_t DistinctExpr::_internal_opfuncid() const { - return _impl_.opfuncid_; +inline ::uint32_t WindowFunc::winfnoid() const { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.winfnoid) + return _internal_winfnoid(); } -inline uint32_t DistinctExpr::opfuncid() const { - // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.opfuncid) - return _internal_opfuncid(); +inline void WindowFunc::set_winfnoid(::uint32_t value) { + _internal_set_winfnoid(value); + // @@protoc_insertion_point(field_set:pg_query.WindowFunc.winfnoid) } -inline void DistinctExpr::_internal_set_opfuncid(uint32_t value) { - - _impl_.opfuncid_ = value; +inline ::uint32_t WindowFunc::_internal_winfnoid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.winfnoid_; } -inline void DistinctExpr::set_opfuncid(uint32_t value) { - _internal_set_opfuncid(value); - // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.opfuncid) +inline void WindowFunc::_internal_set_winfnoid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.winfnoid_ = value; } -// uint32 opresulttype = 4 [json_name = "opresulttype"]; -inline void DistinctExpr::clear_opresulttype() { - _impl_.opresulttype_ = 0u; +// uint32 wintype = 3 [json_name = "wintype"]; +inline void WindowFunc::clear_wintype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.wintype_ = 0u; } -inline uint32_t DistinctExpr::_internal_opresulttype() const { - return _impl_.opresulttype_; +inline ::uint32_t WindowFunc::wintype() const { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.wintype) + return _internal_wintype(); } -inline uint32_t DistinctExpr::opresulttype() const { - // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.opresulttype) - return _internal_opresulttype(); +inline void WindowFunc::set_wintype(::uint32_t value) { + _internal_set_wintype(value); + // @@protoc_insertion_point(field_set:pg_query.WindowFunc.wintype) } -inline void DistinctExpr::_internal_set_opresulttype(uint32_t value) { - - _impl_.opresulttype_ = value; +inline ::uint32_t WindowFunc::_internal_wintype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.wintype_; } -inline void DistinctExpr::set_opresulttype(uint32_t value) { - _internal_set_opresulttype(value); - // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.opresulttype) +inline void WindowFunc::_internal_set_wintype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.wintype_ = value; } -// bool opretset = 5 [json_name = "opretset"]; -inline void DistinctExpr::clear_opretset() { - _impl_.opretset_ = false; +// uint32 wincollid = 4 [json_name = "wincollid"]; +inline void WindowFunc::clear_wincollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.wincollid_ = 0u; } -inline bool DistinctExpr::_internal_opretset() const { - return _impl_.opretset_; +inline ::uint32_t WindowFunc::wincollid() const { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.wincollid) + return _internal_wincollid(); } -inline bool DistinctExpr::opretset() const { - // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.opretset) - return _internal_opretset(); +inline void WindowFunc::set_wincollid(::uint32_t value) { + _internal_set_wincollid(value); + // @@protoc_insertion_point(field_set:pg_query.WindowFunc.wincollid) } -inline void DistinctExpr::_internal_set_opretset(bool value) { - - _impl_.opretset_ = value; +inline ::uint32_t WindowFunc::_internal_wincollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.wincollid_; } -inline void DistinctExpr::set_opretset(bool value) { - _internal_set_opretset(value); - // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.opretset) +inline void WindowFunc::_internal_set_wincollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.wincollid_ = value; } -// uint32 opcollid = 6 [json_name = "opcollid"]; -inline void DistinctExpr::clear_opcollid() { - _impl_.opcollid_ = 0u; -} -inline uint32_t DistinctExpr::_internal_opcollid() const { - return _impl_.opcollid_; -} -inline uint32_t DistinctExpr::opcollid() const { - // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.opcollid) - return _internal_opcollid(); -} -inline void DistinctExpr::_internal_set_opcollid(uint32_t value) { - - _impl_.opcollid_ = value; +// uint32 inputcollid = 5 [json_name = "inputcollid"]; +inline void WindowFunc::clear_inputcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inputcollid_ = 0u; } -inline void DistinctExpr::set_opcollid(uint32_t value) { - _internal_set_opcollid(value); - // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.opcollid) +inline ::uint32_t WindowFunc::inputcollid() const { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.inputcollid) + return _internal_inputcollid(); } - -// uint32 inputcollid = 7 [json_name = "inputcollid"]; -inline void DistinctExpr::clear_inputcollid() { - _impl_.inputcollid_ = 0u; +inline void WindowFunc::set_inputcollid(::uint32_t value) { + _internal_set_inputcollid(value); + // @@protoc_insertion_point(field_set:pg_query.WindowFunc.inputcollid) } -inline uint32_t DistinctExpr::_internal_inputcollid() const { +inline ::uint32_t WindowFunc::_internal_inputcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); return _impl_.inputcollid_; } -inline uint32_t DistinctExpr::inputcollid() const { - // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.inputcollid) - return _internal_inputcollid(); -} -inline void DistinctExpr::_internal_set_inputcollid(uint32_t value) { - +inline void WindowFunc::_internal_set_inputcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; _impl_.inputcollid_ = value; } -inline void DistinctExpr::set_inputcollid(uint32_t value) { - _internal_set_inputcollid(value); - // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.inputcollid) -} -// repeated .pg_query.Node args = 8 [json_name = "args"]; -inline int DistinctExpr::_internal_args_size() const { - return _impl_.args_.size(); +// repeated .pg_query.Node args = 6 [json_name = "args"]; +inline int WindowFunc::_internal_args_size() const { + return _internal_args().size(); } -inline int DistinctExpr::args_size() const { +inline int WindowFunc::args_size() const { return _internal_args_size(); } -inline void DistinctExpr::clear_args() { +inline void WindowFunc::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.args_.Clear(); } -inline ::pg_query::Node* DistinctExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DistinctExpr.args) - return _impl_.args_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DistinctExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DistinctExpr.args) - return &_impl_.args_; -} -inline const ::pg_query::Node& DistinctExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); -} -inline const ::pg_query::Node& DistinctExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.args) - return _internal_args(index); -} -inline ::pg_query::Node* DistinctExpr::_internal_add_args() { - return _impl_.args_.Add(); -} -inline ::pg_query::Node* DistinctExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.DistinctExpr.args) - return _add; +inline ::pg_query::Node* WindowFunc::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.WindowFunc.args) + return _internal_mutable_args()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DistinctExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.DistinctExpr.args) - return _impl_.args_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* WindowFunc::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.WindowFunc.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } - -// int32 location = 9 [json_name = "location"]; -inline void DistinctExpr::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Node& WindowFunc::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.args) + return _internal_args().Get(index); } -inline int32_t DistinctExpr::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Node* WindowFunc::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.WindowFunc.args) + return _add; } -inline int32_t DistinctExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.location) - return _internal_location(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& WindowFunc::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.WindowFunc.args) + return _internal_args(); } -inline void DistinctExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +WindowFunc::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline void DistinctExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +WindowFunc::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// ------------------------------------------------------------------- - -// NullIfExpr - -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool NullIfExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool NullIfExpr::has_xpr() const { - return _internal_has_xpr(); +// .pg_query.Node aggfilter = 7 [json_name = "aggfilter"]; +inline bool WindowFunc::has_aggfilter() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.aggfilter_ != nullptr); + return value; } -inline void NullIfExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void WindowFunc::clear_aggfilter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.aggfilter_ != nullptr) _impl_.aggfilter_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& NullIfExpr::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& WindowFunc::_internal_aggfilter() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.aggfilter_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& NullIfExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.xpr) - return _internal_xpr(); +inline const ::pg_query::Node& WindowFunc::aggfilter() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.aggfilter) + return _internal_aggfilter(); } -inline void NullIfExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void WindowFunc::unsafe_arena_set_allocated_aggfilter(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.aggfilter_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.aggfilter_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NullIfExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowFunc.aggfilter) } -inline ::pg_query::Node* NullIfExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* WindowFunc::release_aggfilter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.aggfilter_; + _impl_.aggfilter_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* NullIfExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.NullIfExpr.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* WindowFunc::unsafe_arena_release_aggfilter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowFunc.aggfilter) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.aggfilter_; + _impl_.aggfilter_ = nullptr; return temp; } -inline ::pg_query::Node* NullIfExpr::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; +inline ::pg_query::Node* WindowFunc::_internal_mutable_aggfilter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.aggfilter_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.aggfilter_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.xpr_; + return _impl_.aggfilter_; } -inline ::pg_query::Node* NullIfExpr::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.NullIfExpr.xpr) +inline ::pg_query::Node* WindowFunc::mutable_aggfilter() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_aggfilter(); + // @@protoc_insertion_point(field_mutable:pg_query.WindowFunc.aggfilter) return _msg; } -inline void NullIfExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void WindowFunc::set_allocated_aggfilter(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.aggfilter_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.NullIfExpr.xpr) -} - -// uint32 opno = 2 [json_name = "opno"]; -inline void NullIfExpr::clear_opno() { - _impl_.opno_ = 0u; -} -inline uint32_t NullIfExpr::_internal_opno() const { - return _impl_.opno_; -} -inline uint32_t NullIfExpr::opno() const { - // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.opno) - return _internal_opno(); -} -inline void NullIfExpr::_internal_set_opno(uint32_t value) { - - _impl_.opno_ = value; -} -inline void NullIfExpr::set_opno(uint32_t value) { - _internal_set_opno(value); - // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.opno) -} - -// uint32 opfuncid = 3 [json_name = "opfuncid"]; -inline void NullIfExpr::clear_opfuncid() { - _impl_.opfuncid_ = 0u; -} -inline uint32_t NullIfExpr::_internal_opfuncid() const { - return _impl_.opfuncid_; -} -inline uint32_t NullIfExpr::opfuncid() const { - // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.opfuncid) - return _internal_opfuncid(); -} -inline void NullIfExpr::_internal_set_opfuncid(uint32_t value) { - - _impl_.opfuncid_ = value; -} -inline void NullIfExpr::set_opfuncid(uint32_t value) { - _internal_set_opfuncid(value); - // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.opfuncid) -} -// uint32 opresulttype = 4 [json_name = "opresulttype"]; -inline void NullIfExpr::clear_opresulttype() { - _impl_.opresulttype_ = 0u; -} -inline uint32_t NullIfExpr::_internal_opresulttype() const { - return _impl_.opresulttype_; -} -inline uint32_t NullIfExpr::opresulttype() const { - // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.opresulttype) - return _internal_opresulttype(); -} -inline void NullIfExpr::_internal_set_opresulttype(uint32_t value) { - - _impl_.opresulttype_ = value; -} -inline void NullIfExpr::set_opresulttype(uint32_t value) { - _internal_set_opresulttype(value); - // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.opresulttype) + _impl_.aggfilter_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowFunc.aggfilter) } -// bool opretset = 5 [json_name = "opretset"]; -inline void NullIfExpr::clear_opretset() { - _impl_.opretset_ = false; +// uint32 winref = 8 [json_name = "winref"]; +inline void WindowFunc::clear_winref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.winref_ = 0u; } -inline bool NullIfExpr::_internal_opretset() const { - return _impl_.opretset_; +inline ::uint32_t WindowFunc::winref() const { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.winref) + return _internal_winref(); } -inline bool NullIfExpr::opretset() const { - // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.opretset) - return _internal_opretset(); +inline void WindowFunc::set_winref(::uint32_t value) { + _internal_set_winref(value); + // @@protoc_insertion_point(field_set:pg_query.WindowFunc.winref) } -inline void NullIfExpr::_internal_set_opretset(bool value) { - - _impl_.opretset_ = value; +inline ::uint32_t WindowFunc::_internal_winref() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.winref_; } -inline void NullIfExpr::set_opretset(bool value) { - _internal_set_opretset(value); - // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.opretset) +inline void WindowFunc::_internal_set_winref(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.winref_ = value; } -// uint32 opcollid = 6 [json_name = "opcollid"]; -inline void NullIfExpr::clear_opcollid() { - _impl_.opcollid_ = 0u; +// bool winstar = 9 [json_name = "winstar"]; +inline void WindowFunc::clear_winstar() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.winstar_ = false; } -inline uint32_t NullIfExpr::_internal_opcollid() const { - return _impl_.opcollid_; +inline bool WindowFunc::winstar() const { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.winstar) + return _internal_winstar(); } -inline uint32_t NullIfExpr::opcollid() const { - // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.opcollid) - return _internal_opcollid(); +inline void WindowFunc::set_winstar(bool value) { + _internal_set_winstar(value); + // @@protoc_insertion_point(field_set:pg_query.WindowFunc.winstar) } -inline void NullIfExpr::_internal_set_opcollid(uint32_t value) { - - _impl_.opcollid_ = value; +inline bool WindowFunc::_internal_winstar() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.winstar_; } -inline void NullIfExpr::set_opcollid(uint32_t value) { - _internal_set_opcollid(value); - // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.opcollid) +inline void WindowFunc::_internal_set_winstar(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.winstar_ = value; } -// uint32 inputcollid = 7 [json_name = "inputcollid"]; -inline void NullIfExpr::clear_inputcollid() { - _impl_.inputcollid_ = 0u; +// bool winagg = 10 [json_name = "winagg"]; +inline void WindowFunc::clear_winagg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.winagg_ = false; } -inline uint32_t NullIfExpr::_internal_inputcollid() const { - return _impl_.inputcollid_; +inline bool WindowFunc::winagg() const { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.winagg) + return _internal_winagg(); } -inline uint32_t NullIfExpr::inputcollid() const { - // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.inputcollid) - return _internal_inputcollid(); +inline void WindowFunc::set_winagg(bool value) { + _internal_set_winagg(value); + // @@protoc_insertion_point(field_set:pg_query.WindowFunc.winagg) } -inline void NullIfExpr::_internal_set_inputcollid(uint32_t value) { - - _impl_.inputcollid_ = value; +inline bool WindowFunc::_internal_winagg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.winagg_; } -inline void NullIfExpr::set_inputcollid(uint32_t value) { - _internal_set_inputcollid(value); - // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.inputcollid) +inline void WindowFunc::_internal_set_winagg(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.winagg_ = value; } -// repeated .pg_query.Node args = 8 [json_name = "args"]; -inline int NullIfExpr::_internal_args_size() const { - return _impl_.args_.size(); -} -inline int NullIfExpr::args_size() const { - return _internal_args_size(); -} -inline void NullIfExpr::clear_args() { - _impl_.args_.Clear(); -} -inline ::pg_query::Node* NullIfExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.NullIfExpr.args) - return _impl_.args_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -NullIfExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.NullIfExpr.args) - return &_impl_.args_; -} -inline const ::pg_query::Node& NullIfExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); -} -inline const ::pg_query::Node& NullIfExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.args) - return _internal_args(index); -} -inline ::pg_query::Node* NullIfExpr::_internal_add_args() { - return _impl_.args_.Add(); -} -inline ::pg_query::Node* NullIfExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.NullIfExpr.args) - return _add; +// int32 location = 11 [json_name = "location"]; +inline void WindowFunc::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -NullIfExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.NullIfExpr.args) - return _impl_.args_; +inline ::int32_t WindowFunc::location() const { + // @@protoc_insertion_point(field_get:pg_query.WindowFunc.location) + return _internal_location(); } - -// int32 location = 9 [json_name = "location"]; -inline void NullIfExpr::clear_location() { - _impl_.location_ = 0; +inline void WindowFunc::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.WindowFunc.location) } -inline int32_t NullIfExpr::_internal_location() const { +inline ::int32_t WindowFunc::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); return _impl_.location_; } -inline int32_t NullIfExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.location) - return _internal_location(); -} -inline void NullIfExpr::_internal_set_location(int32_t value) { - +inline void WindowFunc::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; _impl_.location_ = value; } -inline void NullIfExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.location) -} // ------------------------------------------------------------------- -// ScalarArrayOpExpr +// SubscriptingRef // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool ScalarArrayOpExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool ScalarArrayOpExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool SubscriptingRef::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void ScalarArrayOpExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void SubscriptingRef::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& ScalarArrayOpExpr::_internal_xpr() const { +inline const ::pg_query::Node& SubscriptingRef::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& ScalarArrayOpExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.xpr) +inline const ::pg_query::Node& SubscriptingRef::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.xpr) return _internal_xpr(); } -inline void ScalarArrayOpExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void SubscriptingRef::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ScalarArrayOpExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubscriptingRef.xpr) } -inline ::pg_query::Node* ScalarArrayOpExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* SubscriptingRef::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* ScalarArrayOpExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.ScalarArrayOpExpr.xpr) - +inline ::pg_query::Node* SubscriptingRef::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SubscriptingRef.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* ScalarArrayOpExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* SubscriptingRef::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* ScalarArrayOpExpr::mutable_xpr() { +inline ::pg_query::Node* SubscriptingRef::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.ScalarArrayOpExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.xpr) return _msg; } -inline void ScalarArrayOpExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SubscriptingRef::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.ScalarArrayOpExpr.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SubscriptingRef.xpr) } -// uint32 opno = 2 [json_name = "opno"]; -inline void ScalarArrayOpExpr::clear_opno() { - _impl_.opno_ = 0u; +// uint32 refcontainertype = 2 [json_name = "refcontainertype"]; +inline void SubscriptingRef::clear_refcontainertype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refcontainertype_ = 0u; } -inline uint32_t ScalarArrayOpExpr::_internal_opno() const { - return _impl_.opno_; +inline ::uint32_t SubscriptingRef::refcontainertype() const { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refcontainertype) + return _internal_refcontainertype(); } -inline uint32_t ScalarArrayOpExpr::opno() const { - // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.opno) - return _internal_opno(); +inline void SubscriptingRef::set_refcontainertype(::uint32_t value) { + _internal_set_refcontainertype(value); + // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.refcontainertype) } -inline void ScalarArrayOpExpr::_internal_set_opno(uint32_t value) { - - _impl_.opno_ = value; +inline ::uint32_t SubscriptingRef::_internal_refcontainertype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.refcontainertype_; } -inline void ScalarArrayOpExpr::set_opno(uint32_t value) { - _internal_set_opno(value); - // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.opno) +inline void SubscriptingRef::_internal_set_refcontainertype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.refcontainertype_ = value; } -// uint32 opfuncid = 3 [json_name = "opfuncid"]; -inline void ScalarArrayOpExpr::clear_opfuncid() { - _impl_.opfuncid_ = 0u; +// uint32 refelemtype = 3 [json_name = "refelemtype"]; +inline void SubscriptingRef::clear_refelemtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refelemtype_ = 0u; } -inline uint32_t ScalarArrayOpExpr::_internal_opfuncid() const { - return _impl_.opfuncid_; +inline ::uint32_t SubscriptingRef::refelemtype() const { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refelemtype) + return _internal_refelemtype(); } -inline uint32_t ScalarArrayOpExpr::opfuncid() const { - // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.opfuncid) - return _internal_opfuncid(); +inline void SubscriptingRef::set_refelemtype(::uint32_t value) { + _internal_set_refelemtype(value); + // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.refelemtype) } -inline void ScalarArrayOpExpr::_internal_set_opfuncid(uint32_t value) { - - _impl_.opfuncid_ = value; +inline ::uint32_t SubscriptingRef::_internal_refelemtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.refelemtype_; } -inline void ScalarArrayOpExpr::set_opfuncid(uint32_t value) { - _internal_set_opfuncid(value); - // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.opfuncid) +inline void SubscriptingRef::_internal_set_refelemtype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.refelemtype_ = value; } -// uint32 hashfuncid = 4 [json_name = "hashfuncid"]; -inline void ScalarArrayOpExpr::clear_hashfuncid() { - _impl_.hashfuncid_ = 0u; +// uint32 refrestype = 4 [json_name = "refrestype"]; +inline void SubscriptingRef::clear_refrestype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refrestype_ = 0u; } -inline uint32_t ScalarArrayOpExpr::_internal_hashfuncid() const { - return _impl_.hashfuncid_; +inline ::uint32_t SubscriptingRef::refrestype() const { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refrestype) + return _internal_refrestype(); } -inline uint32_t ScalarArrayOpExpr::hashfuncid() const { - // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.hashfuncid) - return _internal_hashfuncid(); +inline void SubscriptingRef::set_refrestype(::uint32_t value) { + _internal_set_refrestype(value); + // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.refrestype) } -inline void ScalarArrayOpExpr::_internal_set_hashfuncid(uint32_t value) { - - _impl_.hashfuncid_ = value; +inline ::uint32_t SubscriptingRef::_internal_refrestype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.refrestype_; } -inline void ScalarArrayOpExpr::set_hashfuncid(uint32_t value) { - _internal_set_hashfuncid(value); - // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.hashfuncid) +inline void SubscriptingRef::_internal_set_refrestype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.refrestype_ = value; } -// uint32 negfuncid = 5 [json_name = "negfuncid"]; -inline void ScalarArrayOpExpr::clear_negfuncid() { - _impl_.negfuncid_ = 0u; +// int32 reftypmod = 5 [json_name = "reftypmod"]; +inline void SubscriptingRef::clear_reftypmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.reftypmod_ = 0; } -inline uint32_t ScalarArrayOpExpr::_internal_negfuncid() const { - return _impl_.negfuncid_; +inline ::int32_t SubscriptingRef::reftypmod() const { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.reftypmod) + return _internal_reftypmod(); } -inline uint32_t ScalarArrayOpExpr::negfuncid() const { - // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.negfuncid) - return _internal_negfuncid(); +inline void SubscriptingRef::set_reftypmod(::int32_t value) { + _internal_set_reftypmod(value); + // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.reftypmod) } -inline void ScalarArrayOpExpr::_internal_set_negfuncid(uint32_t value) { - - _impl_.negfuncid_ = value; +inline ::int32_t SubscriptingRef::_internal_reftypmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.reftypmod_; } -inline void ScalarArrayOpExpr::set_negfuncid(uint32_t value) { - _internal_set_negfuncid(value); - // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.negfuncid) +inline void SubscriptingRef::_internal_set_reftypmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.reftypmod_ = value; } -// bool use_or = 6 [json_name = "useOr"]; -inline void ScalarArrayOpExpr::clear_use_or() { - _impl_.use_or_ = false; +// uint32 refcollid = 6 [json_name = "refcollid"]; +inline void SubscriptingRef::clear_refcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refcollid_ = 0u; } -inline bool ScalarArrayOpExpr::_internal_use_or() const { - return _impl_.use_or_; +inline ::uint32_t SubscriptingRef::refcollid() const { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refcollid) + return _internal_refcollid(); } -inline bool ScalarArrayOpExpr::use_or() const { - // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.use_or) - return _internal_use_or(); +inline void SubscriptingRef::set_refcollid(::uint32_t value) { + _internal_set_refcollid(value); + // @@protoc_insertion_point(field_set:pg_query.SubscriptingRef.refcollid) } -inline void ScalarArrayOpExpr::_internal_set_use_or(bool value) { - - _impl_.use_or_ = value; +inline ::uint32_t SubscriptingRef::_internal_refcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.refcollid_; } -inline void ScalarArrayOpExpr::set_use_or(bool value) { - _internal_set_use_or(value); - // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.use_or) +inline void SubscriptingRef::_internal_set_refcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.refcollid_ = value; } -// uint32 inputcollid = 7 [json_name = "inputcollid"]; -inline void ScalarArrayOpExpr::clear_inputcollid() { - _impl_.inputcollid_ = 0u; +// repeated .pg_query.Node refupperindexpr = 7 [json_name = "refupperindexpr"]; +inline int SubscriptingRef::_internal_refupperindexpr_size() const { + return _internal_refupperindexpr().size(); } -inline uint32_t ScalarArrayOpExpr::_internal_inputcollid() const { - return _impl_.inputcollid_; +inline int SubscriptingRef::refupperindexpr_size() const { + return _internal_refupperindexpr_size(); } -inline uint32_t ScalarArrayOpExpr::inputcollid() const { - // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.inputcollid) - return _internal_inputcollid(); +inline void SubscriptingRef::clear_refupperindexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refupperindexpr_.Clear(); } -inline void ScalarArrayOpExpr::_internal_set_inputcollid(uint32_t value) { - - _impl_.inputcollid_ = value; +inline ::pg_query::Node* SubscriptingRef::mutable_refupperindexpr(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.refupperindexpr) + return _internal_mutable_refupperindexpr()->Mutable(index); } -inline void ScalarArrayOpExpr::set_inputcollid(uint32_t value) { - _internal_set_inputcollid(value); - // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.inputcollid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SubscriptingRef::mutable_refupperindexpr() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SubscriptingRef.refupperindexpr) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_refupperindexpr(); } - -// repeated .pg_query.Node args = 8 [json_name = "args"]; -inline int ScalarArrayOpExpr::_internal_args_size() const { - return _impl_.args_.size(); +inline const ::pg_query::Node& SubscriptingRef::refupperindexpr(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refupperindexpr) + return _internal_refupperindexpr().Get(index); } -inline int ScalarArrayOpExpr::args_size() const { - return _internal_args_size(); +inline ::pg_query::Node* SubscriptingRef::add_refupperindexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_refupperindexpr()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SubscriptingRef.refupperindexpr) + return _add; } -inline void ScalarArrayOpExpr::clear_args() { - _impl_.args_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SubscriptingRef::refupperindexpr() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SubscriptingRef.refupperindexpr) + return _internal_refupperindexpr(); } -inline ::pg_query::Node* ScalarArrayOpExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ScalarArrayOpExpr.args) - return _impl_.args_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SubscriptingRef::_internal_refupperindexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.refupperindexpr_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ScalarArrayOpExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ScalarArrayOpExpr.args) - return &_impl_.args_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SubscriptingRef::_internal_mutable_refupperindexpr() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.refupperindexpr_; } -inline const ::pg_query::Node& ScalarArrayOpExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// repeated .pg_query.Node reflowerindexpr = 8 [json_name = "reflowerindexpr"]; +inline int SubscriptingRef::_internal_reflowerindexpr_size() const { + return _internal_reflowerindexpr().size(); } -inline const ::pg_query::Node& ScalarArrayOpExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.args) - return _internal_args(index); +inline int SubscriptingRef::reflowerindexpr_size() const { + return _internal_reflowerindexpr_size(); } -inline ::pg_query::Node* ScalarArrayOpExpr::_internal_add_args() { - return _impl_.args_.Add(); +inline void SubscriptingRef::clear_reflowerindexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.reflowerindexpr_.Clear(); } -inline ::pg_query::Node* ScalarArrayOpExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.ScalarArrayOpExpr.args) - return _add; +inline ::pg_query::Node* SubscriptingRef::mutable_reflowerindexpr(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.reflowerindexpr) + return _internal_mutable_reflowerindexpr()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ScalarArrayOpExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.ScalarArrayOpExpr.args) - return _impl_.args_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SubscriptingRef::mutable_reflowerindexpr() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SubscriptingRef.reflowerindexpr) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_reflowerindexpr(); } - -// int32 location = 9 [json_name = "location"]; -inline void ScalarArrayOpExpr::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Node& SubscriptingRef::reflowerindexpr(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.reflowerindexpr) + return _internal_reflowerindexpr().Get(index); } -inline int32_t ScalarArrayOpExpr::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Node* SubscriptingRef::add_reflowerindexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_reflowerindexpr()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SubscriptingRef.reflowerindexpr) + return _add; } -inline int32_t ScalarArrayOpExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.location) - return _internal_location(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SubscriptingRef::reflowerindexpr() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SubscriptingRef.reflowerindexpr) + return _internal_reflowerindexpr(); } -inline void ScalarArrayOpExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SubscriptingRef::_internal_reflowerindexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.reflowerindexpr_; } -inline void ScalarArrayOpExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SubscriptingRef::_internal_mutable_reflowerindexpr() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.reflowerindexpr_; } -// ------------------------------------------------------------------- - -// BoolExpr - -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool BoolExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool BoolExpr::has_xpr() const { - return _internal_has_xpr(); +// .pg_query.Node refexpr = 9 [json_name = "refexpr"]; +inline bool SubscriptingRef::has_refexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.refexpr_ != nullptr); + return value; } -inline void BoolExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void SubscriptingRef::clear_refexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.refexpr_ != nullptr) _impl_.refexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& BoolExpr::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& SubscriptingRef::_internal_refexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.refexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& BoolExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.BoolExpr.xpr) - return _internal_xpr(); +inline const ::pg_query::Node& SubscriptingRef::refexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refexpr) + return _internal_refexpr(); } -inline void BoolExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void SubscriptingRef::unsafe_arena_set_allocated_refexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.refexpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.refexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.BoolExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubscriptingRef.refexpr) } -inline ::pg_query::Node* BoolExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* SubscriptingRef::release_refexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.refexpr_; + _impl_.refexpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* BoolExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.BoolExpr.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* SubscriptingRef::unsafe_arena_release_refexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SubscriptingRef.refexpr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.refexpr_; + _impl_.refexpr_ = nullptr; return temp; } -inline ::pg_query::Node* BoolExpr::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; +inline ::pg_query::Node* SubscriptingRef::_internal_mutable_refexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.refexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.refexpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.xpr_; + return _impl_.refexpr_; } -inline ::pg_query::Node* BoolExpr::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.BoolExpr.xpr) +inline ::pg_query::Node* SubscriptingRef::mutable_refexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_refexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.refexpr) return _msg; } -inline void BoolExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SubscriptingRef::set_allocated_refexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.refexpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.BoolExpr.xpr) -} -// .pg_query.BoolExprType boolop = 2 [json_name = "boolop"]; -inline void BoolExpr::clear_boolop() { - _impl_.boolop_ = 0; -} -inline ::pg_query::BoolExprType BoolExpr::_internal_boolop() const { - return static_cast< ::pg_query::BoolExprType >(_impl_.boolop_); -} -inline ::pg_query::BoolExprType BoolExpr::boolop() const { - // @@protoc_insertion_point(field_get:pg_query.BoolExpr.boolop) - return _internal_boolop(); -} -inline void BoolExpr::_internal_set_boolop(::pg_query::BoolExprType value) { - - _impl_.boolop_ = value; -} -inline void BoolExpr::set_boolop(::pg_query::BoolExprType value) { - _internal_set_boolop(value); - // @@protoc_insertion_point(field_set:pg_query.BoolExpr.boolop) + _impl_.refexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SubscriptingRef.refexpr) } -// repeated .pg_query.Node args = 3 [json_name = "args"]; -inline int BoolExpr::_internal_args_size() const { - return _impl_.args_.size(); -} -inline int BoolExpr::args_size() const { - return _internal_args_size(); -} -inline void BoolExpr::clear_args() { - _impl_.args_.Clear(); -} -inline ::pg_query::Node* BoolExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.BoolExpr.args) - return _impl_.args_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -BoolExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.BoolExpr.args) - return &_impl_.args_; -} -inline const ::pg_query::Node& BoolExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); +// .pg_query.Node refassgnexpr = 10 [json_name = "refassgnexpr"]; +inline bool SubscriptingRef::has_refassgnexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.refassgnexpr_ != nullptr); + return value; } -inline const ::pg_query::Node& BoolExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.BoolExpr.args) - return _internal_args(index); +inline void SubscriptingRef::clear_refassgnexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.refassgnexpr_ != nullptr) _impl_.refassgnexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline ::pg_query::Node* BoolExpr::_internal_add_args() { - return _impl_.args_.Add(); +inline const ::pg_query::Node& SubscriptingRef::_internal_refassgnexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.refassgnexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* BoolExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.BoolExpr.args) - return _add; +inline const ::pg_query::Node& SubscriptingRef::refassgnexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubscriptingRef.refassgnexpr) + return _internal_refassgnexpr(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -BoolExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.BoolExpr.args) - return _impl_.args_; +inline void SubscriptingRef::unsafe_arena_set_allocated_refassgnexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.refassgnexpr_); + } + _impl_.refassgnexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubscriptingRef.refassgnexpr) } +inline ::pg_query::Node* SubscriptingRef::release_refassgnexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// int32 location = 4 [json_name = "location"]; -inline void BoolExpr::clear_location() { - _impl_.location_ = 0; + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.refassgnexpr_; + _impl_.refassgnexpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int32_t BoolExpr::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Node* SubscriptingRef::unsafe_arena_release_refassgnexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SubscriptingRef.refassgnexpr) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.refassgnexpr_; + _impl_.refassgnexpr_ = nullptr; + return temp; } -inline int32_t BoolExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.BoolExpr.location) - return _internal_location(); +inline ::pg_query::Node* SubscriptingRef::_internal_mutable_refassgnexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.refassgnexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.refassgnexpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.refassgnexpr_; } -inline void BoolExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* SubscriptingRef::mutable_refassgnexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_refassgnexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.SubscriptingRef.refassgnexpr) + return _msg; } -inline void BoolExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.BoolExpr.location) +inline void SubscriptingRef::set_allocated_refassgnexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.refassgnexpr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.refassgnexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SubscriptingRef.refassgnexpr) } // ------------------------------------------------------------------- -// SubLink +// FuncExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool SubLink::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool SubLink::has_xpr() const { - return _internal_has_xpr(); +inline bool FuncExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void SubLink::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void FuncExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& SubLink::_internal_xpr() const { +inline const ::pg_query::Node& FuncExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& SubLink::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.SubLink.xpr) +inline const ::pg_query::Node& FuncExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.xpr) return _internal_xpr(); } -inline void SubLink::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void FuncExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubLink.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FuncExpr.xpr) } -inline ::pg_query::Node* SubLink::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* FuncExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SubLink::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.SubLink.xpr) - +inline ::pg_query::Node* FuncExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FuncExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* SubLink::_internal_mutable_xpr() { - +inline ::pg_query::Node* FuncExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* SubLink::mutable_xpr() { +inline ::pg_query::Node* FuncExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.SubLink.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.FuncExpr.xpr) return _msg; } -inline void SubLink::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void FuncExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.SubLink.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FuncExpr.xpr) } -// .pg_query.SubLinkType sub_link_type = 2 [json_name = "subLinkType"]; -inline void SubLink::clear_sub_link_type() { - _impl_.sub_link_type_ = 0; +// uint32 funcid = 2 [json_name = "funcid"]; +inline void FuncExpr::clear_funcid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcid_ = 0u; } -inline ::pg_query::SubLinkType SubLink::_internal_sub_link_type() const { - return static_cast< ::pg_query::SubLinkType >(_impl_.sub_link_type_); +inline ::uint32_t FuncExpr::funcid() const { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcid) + return _internal_funcid(); } -inline ::pg_query::SubLinkType SubLink::sub_link_type() const { - // @@protoc_insertion_point(field_get:pg_query.SubLink.sub_link_type) - return _internal_sub_link_type(); +inline void FuncExpr::set_funcid(::uint32_t value) { + _internal_set_funcid(value); + // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcid) } -inline void SubLink::_internal_set_sub_link_type(::pg_query::SubLinkType value) { - - _impl_.sub_link_type_ = value; +inline ::uint32_t FuncExpr::_internal_funcid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcid_; } -inline void SubLink::set_sub_link_type(::pg_query::SubLinkType value) { - _internal_set_sub_link_type(value); - // @@protoc_insertion_point(field_set:pg_query.SubLink.sub_link_type) +inline void FuncExpr::_internal_set_funcid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.funcid_ = value; } -// int32 sub_link_id = 3 [json_name = "subLinkId"]; -inline void SubLink::clear_sub_link_id() { - _impl_.sub_link_id_ = 0; +// uint32 funcresulttype = 3 [json_name = "funcresulttype"]; +inline void FuncExpr::clear_funcresulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcresulttype_ = 0u; } -inline int32_t SubLink::_internal_sub_link_id() const { - return _impl_.sub_link_id_; +inline ::uint32_t FuncExpr::funcresulttype() const { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcresulttype) + return _internal_funcresulttype(); } -inline int32_t SubLink::sub_link_id() const { - // @@protoc_insertion_point(field_get:pg_query.SubLink.sub_link_id) - return _internal_sub_link_id(); +inline void FuncExpr::set_funcresulttype(::uint32_t value) { + _internal_set_funcresulttype(value); + // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcresulttype) } -inline void SubLink::_internal_set_sub_link_id(int32_t value) { - - _impl_.sub_link_id_ = value; +inline ::uint32_t FuncExpr::_internal_funcresulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcresulttype_; } -inline void SubLink::set_sub_link_id(int32_t value) { - _internal_set_sub_link_id(value); - // @@protoc_insertion_point(field_set:pg_query.SubLink.sub_link_id) +inline void FuncExpr::_internal_set_funcresulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.funcresulttype_ = value; } -// .pg_query.Node testexpr = 4 [json_name = "testexpr"]; -inline bool SubLink::_internal_has_testexpr() const { - return this != internal_default_instance() && _impl_.testexpr_ != nullptr; -} -inline bool SubLink::has_testexpr() const { - return _internal_has_testexpr(); +// bool funcretset = 4 [json_name = "funcretset"]; +inline void FuncExpr::clear_funcretset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcretset_ = false; } -inline void SubLink::clear_testexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.testexpr_ != nullptr) { - delete _impl_.testexpr_; - } - _impl_.testexpr_ = nullptr; +inline bool FuncExpr::funcretset() const { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcretset) + return _internal_funcretset(); } -inline const ::pg_query::Node& SubLink::_internal_testexpr() const { - const ::pg_query::Node* p = _impl_.testexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void FuncExpr::set_funcretset(bool value) { + _internal_set_funcretset(value); + // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcretset) } -inline const ::pg_query::Node& SubLink::testexpr() const { - // @@protoc_insertion_point(field_get:pg_query.SubLink.testexpr) - return _internal_testexpr(); +inline bool FuncExpr::_internal_funcretset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcretset_; } -inline void SubLink::unsafe_arena_set_allocated_testexpr( - ::pg_query::Node* testexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.testexpr_); - } - _impl_.testexpr_ = testexpr; - if (testexpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubLink.testexpr) +inline void FuncExpr::_internal_set_funcretset(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.funcretset_ = value; } -inline ::pg_query::Node* SubLink::release_testexpr() { - - ::pg_query::Node* temp = _impl_.testexpr_; - _impl_.testexpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// bool funcvariadic = 5 [json_name = "funcvariadic"]; +inline void FuncExpr::clear_funcvariadic() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcvariadic_ = false; } -inline ::pg_query::Node* SubLink::unsafe_arena_release_testexpr() { - // @@protoc_insertion_point(field_release:pg_query.SubLink.testexpr) - - ::pg_query::Node* temp = _impl_.testexpr_; - _impl_.testexpr_ = nullptr; - return temp; +inline bool FuncExpr::funcvariadic() const { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcvariadic) + return _internal_funcvariadic(); } -inline ::pg_query::Node* SubLink::_internal_mutable_testexpr() { - - if (_impl_.testexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.testexpr_ = p; - } - return _impl_.testexpr_; +inline void FuncExpr::set_funcvariadic(bool value) { + _internal_set_funcvariadic(value); + // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcvariadic) } -inline ::pg_query::Node* SubLink::mutable_testexpr() { - ::pg_query::Node* _msg = _internal_mutable_testexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.SubLink.testexpr) - return _msg; +inline bool FuncExpr::_internal_funcvariadic() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcvariadic_; } -inline void SubLink::set_allocated_testexpr(::pg_query::Node* testexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.testexpr_; - } - if (testexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(testexpr); - if (message_arena != submessage_arena) { - testexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, testexpr, submessage_arena); - } - - } else { - - } - _impl_.testexpr_ = testexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.SubLink.testexpr) +inline void FuncExpr::_internal_set_funcvariadic(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.funcvariadic_ = value; } -// repeated .pg_query.Node oper_name = 5 [json_name = "operName"]; -inline int SubLink::_internal_oper_name_size() const { - return _impl_.oper_name_.size(); +// .pg_query.CoercionForm funcformat = 6 [json_name = "funcformat"]; +inline void FuncExpr::clear_funcformat() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcformat_ = 0; } -inline int SubLink::oper_name_size() const { - return _internal_oper_name_size(); +inline ::pg_query::CoercionForm FuncExpr::funcformat() const { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funcformat) + return _internal_funcformat(); } -inline void SubLink::clear_oper_name() { - _impl_.oper_name_.Clear(); +inline void FuncExpr::set_funcformat(::pg_query::CoercionForm value) { + _internal_set_funcformat(value); + // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funcformat) } -inline ::pg_query::Node* SubLink::mutable_oper_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SubLink.oper_name) - return _impl_.oper_name_.Mutable(index); +inline ::pg_query::CoercionForm FuncExpr::_internal_funcformat() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CoercionForm>(_impl_.funcformat_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SubLink::mutable_oper_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SubLink.oper_name) - return &_impl_.oper_name_; +inline void FuncExpr::_internal_set_funcformat(::pg_query::CoercionForm value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.funcformat_ = value; } -inline const ::pg_query::Node& SubLink::_internal_oper_name(int index) const { - return _impl_.oper_name_.Get(index); + +// uint32 funccollid = 7 [json_name = "funccollid"]; +inline void FuncExpr::clear_funccollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funccollid_ = 0u; } -inline const ::pg_query::Node& SubLink::oper_name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SubLink.oper_name) - return _internal_oper_name(index); +inline ::uint32_t FuncExpr::funccollid() const { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.funccollid) + return _internal_funccollid(); } -inline ::pg_query::Node* SubLink::_internal_add_oper_name() { - return _impl_.oper_name_.Add(); +inline void FuncExpr::set_funccollid(::uint32_t value) { + _internal_set_funccollid(value); + // @@protoc_insertion_point(field_set:pg_query.FuncExpr.funccollid) } -inline ::pg_query::Node* SubLink::add_oper_name() { - ::pg_query::Node* _add = _internal_add_oper_name(); - // @@protoc_insertion_point(field_add:pg_query.SubLink.oper_name) - return _add; +inline ::uint32_t FuncExpr::_internal_funccollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funccollid_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SubLink::oper_name() const { - // @@protoc_insertion_point(field_list:pg_query.SubLink.oper_name) - return _impl_.oper_name_; +inline void FuncExpr::_internal_set_funccollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.funccollid_ = value; } -// .pg_query.Node subselect = 6 [json_name = "subselect"]; -inline bool SubLink::_internal_has_subselect() const { - return this != internal_default_instance() && _impl_.subselect_ != nullptr; +// uint32 inputcollid = 8 [json_name = "inputcollid"]; +inline void FuncExpr::clear_inputcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inputcollid_ = 0u; } -inline bool SubLink::has_subselect() const { - return _internal_has_subselect(); +inline ::uint32_t FuncExpr::inputcollid() const { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.inputcollid) + return _internal_inputcollid(); } -inline void SubLink::clear_subselect() { - if (GetArenaForAllocation() == nullptr && _impl_.subselect_ != nullptr) { - delete _impl_.subselect_; - } - _impl_.subselect_ = nullptr; +inline void FuncExpr::set_inputcollid(::uint32_t value) { + _internal_set_inputcollid(value); + // @@protoc_insertion_point(field_set:pg_query.FuncExpr.inputcollid) } -inline const ::pg_query::Node& SubLink::_internal_subselect() const { - const ::pg_query::Node* p = _impl_.subselect_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::uint32_t FuncExpr::_internal_inputcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inputcollid_; } -inline const ::pg_query::Node& SubLink::subselect() const { - // @@protoc_insertion_point(field_get:pg_query.SubLink.subselect) - return _internal_subselect(); +inline void FuncExpr::_internal_set_inputcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inputcollid_ = value; } -inline void SubLink::unsafe_arena_set_allocated_subselect( - ::pg_query::Node* subselect) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.subselect_); - } - _impl_.subselect_ = subselect; - if (subselect) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubLink.subselect) + +// repeated .pg_query.Node args = 9 [json_name = "args"]; +inline int FuncExpr::_internal_args_size() const { + return _internal_args().size(); } -inline ::pg_query::Node* SubLink::release_subselect() { - - ::pg_query::Node* temp = _impl_.subselect_; - _impl_.subselect_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline int FuncExpr::args_size() const { + return _internal_args_size(); } -inline ::pg_query::Node* SubLink::unsafe_arena_release_subselect() { - // @@protoc_insertion_point(field_release:pg_query.SubLink.subselect) - - ::pg_query::Node* temp = _impl_.subselect_; - _impl_.subselect_ = nullptr; - return temp; +inline void FuncExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline ::pg_query::Node* SubLink::_internal_mutable_subselect() { - - if (_impl_.subselect_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.subselect_ = p; - } - return _impl_.subselect_; +inline ::pg_query::Node* FuncExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.FuncExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline ::pg_query::Node* SubLink::mutable_subselect() { - ::pg_query::Node* _msg = _internal_mutable_subselect(); - // @@protoc_insertion_point(field_mutable:pg_query.SubLink.subselect) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* FuncExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.FuncExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } -inline void SubLink::set_allocated_subselect(::pg_query::Node* subselect) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.subselect_; - } - if (subselect) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(subselect); - if (message_arena != submessage_arena) { - subselect = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, subselect, submessage_arena); - } - - } else { - - } - _impl_.subselect_ = subselect; - // @@protoc_insertion_point(field_set_allocated:pg_query.SubLink.subselect) +inline const ::pg_query::Node& FuncExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.args) + return _internal_args().Get(index); +} +inline ::pg_query::Node* FuncExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.FuncExpr.args) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& FuncExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.FuncExpr.args) + return _internal_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +FuncExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +FuncExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// int32 location = 7 [json_name = "location"]; -inline void SubLink::clear_location() { +// int32 location = 10 [json_name = "location"]; +inline void FuncExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t SubLink::_internal_location() const { - return _impl_.location_; -} -inline int32_t SubLink::location() const { - // @@protoc_insertion_point(field_get:pg_query.SubLink.location) +inline ::int32_t FuncExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.FuncExpr.location) return _internal_location(); } -inline void SubLink::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void SubLink::set_location(int32_t value) { +inline void FuncExpr::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.SubLink.location) + // @@protoc_insertion_point(field_set:pg_query.FuncExpr.location) +} +inline ::int32_t FuncExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void FuncExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// SubPlan +// NamedArgExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool SubPlan::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool SubPlan::has_xpr() const { - return _internal_has_xpr(); +inline bool NamedArgExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void SubPlan::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void NamedArgExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& SubPlan::_internal_xpr() const { +inline const ::pg_query::Node& NamedArgExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& SubPlan::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.xpr) +inline const ::pg_query::Node& NamedArgExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.xpr) return _internal_xpr(); } -inline void SubPlan::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void NamedArgExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubPlan.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NamedArgExpr.xpr) } -inline ::pg_query::Node* SubPlan::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* NamedArgExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SubPlan::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.SubPlan.xpr) - +inline ::pg_query::Node* NamedArgExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.NamedArgExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* SubPlan::_internal_mutable_xpr() { - +inline ::pg_query::Node* NamedArgExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* SubPlan::mutable_xpr() { +inline ::pg_query::Node* NamedArgExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.NamedArgExpr.xpr) return _msg; } -inline void SubPlan::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void NamedArgExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.SubPlan.xpr) -} -// .pg_query.SubLinkType sub_link_type = 2 [json_name = "subLinkType"]; -inline void SubPlan::clear_sub_link_type() { - _impl_.sub_link_type_ = 0; -} -inline ::pg_query::SubLinkType SubPlan::_internal_sub_link_type() const { - return static_cast< ::pg_query::SubLinkType >(_impl_.sub_link_type_); -} -inline ::pg_query::SubLinkType SubPlan::sub_link_type() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.sub_link_type) - return _internal_sub_link_type(); -} -inline void SubPlan::_internal_set_sub_link_type(::pg_query::SubLinkType value) { - - _impl_.sub_link_type_ = value; -} -inline void SubPlan::set_sub_link_type(::pg_query::SubLinkType value) { - _internal_set_sub_link_type(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.sub_link_type) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.NamedArgExpr.xpr) } -// .pg_query.Node testexpr = 3 [json_name = "testexpr"]; -inline bool SubPlan::_internal_has_testexpr() const { - return this != internal_default_instance() && _impl_.testexpr_ != nullptr; -} -inline bool SubPlan::has_testexpr() const { - return _internal_has_testexpr(); +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool NamedArgExpr::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void SubPlan::clear_testexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.testexpr_ != nullptr) { - delete _impl_.testexpr_; - } - _impl_.testexpr_ = nullptr; +inline void NamedArgExpr::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& SubPlan::_internal_testexpr() const { - const ::pg_query::Node* p = _impl_.testexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& NamedArgExpr::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& SubPlan::testexpr() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.testexpr) - return _internal_testexpr(); +inline const ::pg_query::Node& NamedArgExpr::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.arg) + return _internal_arg(); } -inline void SubPlan::unsafe_arena_set_allocated_testexpr( - ::pg_query::Node* testexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.testexpr_); +inline void NamedArgExpr::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.testexpr_ = testexpr; - if (testexpr) { - + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubPlan.testexpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NamedArgExpr.arg) } -inline ::pg_query::Node* SubPlan::release_testexpr() { - - ::pg_query::Node* temp = _impl_.testexpr_; - _impl_.testexpr_ = nullptr; +inline ::pg_query::Node* NamedArgExpr::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SubPlan::unsafe_arena_release_testexpr() { - // @@protoc_insertion_point(field_release:pg_query.SubPlan.testexpr) - - ::pg_query::Node* temp = _impl_.testexpr_; - _impl_.testexpr_ = nullptr; +inline ::pg_query::Node* NamedArgExpr::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.NamedArgExpr.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::Node* SubPlan::_internal_mutable_testexpr() { - - if (_impl_.testexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.testexpr_ = p; +inline ::pg_query::Node* NamedArgExpr::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.testexpr_; + return _impl_.arg_; } -inline ::pg_query::Node* SubPlan::mutable_testexpr() { - ::pg_query::Node* _msg = _internal_mutable_testexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.testexpr) +inline ::pg_query::Node* NamedArgExpr::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.NamedArgExpr.arg) return _msg; } -inline void SubPlan::set_allocated_testexpr(::pg_query::Node* testexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void NamedArgExpr::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.testexpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); } - if (testexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(testexpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - testexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, testexpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.testexpr_ = testexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.SubPlan.testexpr) -} - -// repeated .pg_query.Node param_ids = 4 [json_name = "paramIds"]; -inline int SubPlan::_internal_param_ids_size() const { - return _impl_.param_ids_.size(); -} -inline int SubPlan::param_ids_size() const { - return _internal_param_ids_size(); -} -inline void SubPlan::clear_param_ids() { - _impl_.param_ids_.Clear(); -} -inline ::pg_query::Node* SubPlan::mutable_param_ids(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.param_ids) - return _impl_.param_ids_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SubPlan::mutable_param_ids() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SubPlan.param_ids) - return &_impl_.param_ids_; -} -inline const ::pg_query::Node& SubPlan::_internal_param_ids(int index) const { - return _impl_.param_ids_.Get(index); -} -inline const ::pg_query::Node& SubPlan::param_ids(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.param_ids) - return _internal_param_ids(index); -} -inline ::pg_query::Node* SubPlan::_internal_add_param_ids() { - return _impl_.param_ids_.Add(); -} -inline ::pg_query::Node* SubPlan::add_param_ids() { - ::pg_query::Node* _add = _internal_add_param_ids(); - // @@protoc_insertion_point(field_add:pg_query.SubPlan.param_ids) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SubPlan::param_ids() const { - // @@protoc_insertion_point(field_list:pg_query.SubPlan.param_ids) - return _impl_.param_ids_; -} -// int32 plan_id = 5 [json_name = "plan_id"]; -inline void SubPlan::clear_plan_id() { - _impl_.plan_id_ = 0; -} -inline int32_t SubPlan::_internal_plan_id() const { - return _impl_.plan_id_; -} -inline int32_t SubPlan::plan_id() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.plan_id) - return _internal_plan_id(); -} -inline void SubPlan::_internal_set_plan_id(int32_t value) { - - _impl_.plan_id_ = value; -} -inline void SubPlan::set_plan_id(int32_t value) { - _internal_set_plan_id(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.plan_id) + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.NamedArgExpr.arg) } -// string plan_name = 6 [json_name = "plan_name"]; -inline void SubPlan::clear_plan_name() { - _impl_.plan_name_.ClearToEmpty(); +// string name = 3 [json_name = "name"]; +inline void NamedArgExpr::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline const std::string& SubPlan::plan_name() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.plan_name) - return _internal_plan_name(); +inline const std::string& NamedArgExpr::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.name) + return _internal_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void SubPlan::set_plan_name(ArgT0&& arg0, ArgT... args) { - - _impl_.plan_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.plan_name) +template +inline PROTOBUF_ALWAYS_INLINE void NamedArgExpr::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.NamedArgExpr.name) } -inline std::string* SubPlan::mutable_plan_name() { - std::string* _s = _internal_mutable_plan_name(); - // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.plan_name) +inline std::string* NamedArgExpr::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.NamedArgExpr.name) return _s; } -inline const std::string& SubPlan::_internal_plan_name() const { - return _impl_.plan_name_.Get(); +inline const std::string& NamedArgExpr::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline void SubPlan::_internal_set_plan_name(const std::string& value) { - - _impl_.plan_name_.Set(value, GetArenaForAllocation()); +inline void NamedArgExpr::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline std::string* SubPlan::_internal_mutable_plan_name() { - - return _impl_.plan_name_.Mutable(GetArenaForAllocation()); +inline std::string* NamedArgExpr::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline std::string* SubPlan::release_plan_name() { - // @@protoc_insertion_point(field_release:pg_query.SubPlan.plan_name) - return _impl_.plan_name_.Release(); +inline std::string* NamedArgExpr::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.NamedArgExpr.name) + return _impl_.name_.Release(); } -inline void SubPlan::set_allocated_plan_name(std::string* plan_name) { - if (plan_name != nullptr) { - - } else { - - } - _impl_.plan_name_.SetAllocated(plan_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.plan_name_.IsDefault()) { - _impl_.plan_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.SubPlan.plan_name) +inline void NamedArgExpr::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.NamedArgExpr.name) } -// uint32 first_col_type = 7 [json_name = "firstColType"]; -inline void SubPlan::clear_first_col_type() { - _impl_.first_col_type_ = 0u; +// int32 argnumber = 4 [json_name = "argnumber"]; +inline void NamedArgExpr::clear_argnumber() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.argnumber_ = 0; } -inline uint32_t SubPlan::_internal_first_col_type() const { - return _impl_.first_col_type_; +inline ::int32_t NamedArgExpr::argnumber() const { + // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.argnumber) + return _internal_argnumber(); } -inline uint32_t SubPlan::first_col_type() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.first_col_type) - return _internal_first_col_type(); +inline void NamedArgExpr::set_argnumber(::int32_t value) { + _internal_set_argnumber(value); + // @@protoc_insertion_point(field_set:pg_query.NamedArgExpr.argnumber) } -inline void SubPlan::_internal_set_first_col_type(uint32_t value) { - - _impl_.first_col_type_ = value; +inline ::int32_t NamedArgExpr::_internal_argnumber() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.argnumber_; } -inline void SubPlan::set_first_col_type(uint32_t value) { - _internal_set_first_col_type(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.first_col_type) +inline void NamedArgExpr::_internal_set_argnumber(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.argnumber_ = value; } -// int32 first_col_typmod = 8 [json_name = "firstColTypmod"]; -inline void SubPlan::clear_first_col_typmod() { - _impl_.first_col_typmod_ = 0; +// int32 location = 5 [json_name = "location"]; +inline void NamedArgExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline int32_t SubPlan::_internal_first_col_typmod() const { - return _impl_.first_col_typmod_; +inline ::int32_t NamedArgExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.NamedArgExpr.location) + return _internal_location(); } -inline int32_t SubPlan::first_col_typmod() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.first_col_typmod) - return _internal_first_col_typmod(); +inline void NamedArgExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.NamedArgExpr.location) } -inline void SubPlan::_internal_set_first_col_typmod(int32_t value) { - - _impl_.first_col_typmod_ = value; +inline ::int32_t NamedArgExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void SubPlan::set_first_col_typmod(int32_t value) { - _internal_set_first_col_typmod(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.first_col_typmod) +inline void NamedArgExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// uint32 first_col_collation = 9 [json_name = "firstColCollation"]; -inline void SubPlan::clear_first_col_collation() { - _impl_.first_col_collation_ = 0u; +// ------------------------------------------------------------------- + +// OpExpr + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool OpExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline uint32_t SubPlan::_internal_first_col_collation() const { - return _impl_.first_col_collation_; +inline void OpExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline uint32_t SubPlan::first_col_collation() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.first_col_collation) - return _internal_first_col_collation(); +inline const ::pg_query::Node& OpExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void SubPlan::_internal_set_first_col_collation(uint32_t value) { - - _impl_.first_col_collation_ = value; +inline const ::pg_query::Node& OpExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OpExpr.xpr) + return _internal_xpr(); } -inline void SubPlan::set_first_col_collation(uint32_t value) { - _internal_set_first_col_collation(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.first_col_collation) +inline void OpExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); + } + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OpExpr.xpr) } +inline ::pg_query::Node* OpExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool use_hash_table = 10 [json_name = "useHashTable"]; -inline void SubPlan::clear_use_hash_table() { - _impl_.use_hash_table_ = false; -} -inline bool SubPlan::_internal_use_hash_table() const { - return _impl_.use_hash_table_; -} -inline bool SubPlan::use_hash_table() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.use_hash_table) - return _internal_use_hash_table(); -} -inline void SubPlan::_internal_set_use_hash_table(bool value) { - - _impl_.use_hash_table_ = value; -} -inline void SubPlan::set_use_hash_table(bool value) { - _internal_set_use_hash_table(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.use_hash_table) + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* OpExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.OpExpr.xpr) -// bool unknown_eq_false = 11 [json_name = "unknownEqFalse"]; -inline void SubPlan::clear_unknown_eq_false() { - _impl_.unknown_eq_false_ = false; -} -inline bool SubPlan::_internal_unknown_eq_false() const { - return _impl_.unknown_eq_false_; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; + return temp; } -inline bool SubPlan::unknown_eq_false() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.unknown_eq_false) - return _internal_unknown_eq_false(); +inline ::pg_query::Node* OpExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.xpr_; } -inline void SubPlan::_internal_set_unknown_eq_false(bool value) { - - _impl_.unknown_eq_false_ = value; +inline ::pg_query::Node* OpExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.OpExpr.xpr) + return _msg; } -inline void SubPlan::set_unknown_eq_false(bool value) { - _internal_set_unknown_eq_false(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.unknown_eq_false) +inline void OpExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.OpExpr.xpr) } -// bool parallel_safe = 12 [json_name = "parallel_safe"]; -inline void SubPlan::clear_parallel_safe() { - _impl_.parallel_safe_ = false; +// uint32 opno = 2 [json_name = "opno"]; +inline void OpExpr::clear_opno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opno_ = 0u; } -inline bool SubPlan::_internal_parallel_safe() const { - return _impl_.parallel_safe_; +inline ::uint32_t OpExpr::opno() const { + // @@protoc_insertion_point(field_get:pg_query.OpExpr.opno) + return _internal_opno(); } -inline bool SubPlan::parallel_safe() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.parallel_safe) - return _internal_parallel_safe(); +inline void OpExpr::set_opno(::uint32_t value) { + _internal_set_opno(value); + // @@protoc_insertion_point(field_set:pg_query.OpExpr.opno) } -inline void SubPlan::_internal_set_parallel_safe(bool value) { - - _impl_.parallel_safe_ = value; +inline ::uint32_t OpExpr::_internal_opno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opno_; } -inline void SubPlan::set_parallel_safe(bool value) { - _internal_set_parallel_safe(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.parallel_safe) +inline void OpExpr::_internal_set_opno(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opno_ = value; } -// repeated .pg_query.Node set_param = 13 [json_name = "setParam"]; -inline int SubPlan::_internal_set_param_size() const { - return _impl_.set_param_.size(); +// uint32 opresulttype = 3 [json_name = "opresulttype"]; +inline void OpExpr::clear_opresulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opresulttype_ = 0u; } -inline int SubPlan::set_param_size() const { - return _internal_set_param_size(); +inline ::uint32_t OpExpr::opresulttype() const { + // @@protoc_insertion_point(field_get:pg_query.OpExpr.opresulttype) + return _internal_opresulttype(); } -inline void SubPlan::clear_set_param() { - _impl_.set_param_.Clear(); +inline void OpExpr::set_opresulttype(::uint32_t value) { + _internal_set_opresulttype(value); + // @@protoc_insertion_point(field_set:pg_query.OpExpr.opresulttype) } -inline ::pg_query::Node* SubPlan::mutable_set_param(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.set_param) - return _impl_.set_param_.Mutable(index); +inline ::uint32_t OpExpr::_internal_opresulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opresulttype_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SubPlan::mutable_set_param() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SubPlan.set_param) - return &_impl_.set_param_; +inline void OpExpr::_internal_set_opresulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opresulttype_ = value; } -inline const ::pg_query::Node& SubPlan::_internal_set_param(int index) const { - return _impl_.set_param_.Get(index); + +// bool opretset = 4 [json_name = "opretset"]; +inline void OpExpr::clear_opretset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opretset_ = false; } -inline const ::pg_query::Node& SubPlan::set_param(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.set_param) - return _internal_set_param(index); +inline bool OpExpr::opretset() const { + // @@protoc_insertion_point(field_get:pg_query.OpExpr.opretset) + return _internal_opretset(); } -inline ::pg_query::Node* SubPlan::_internal_add_set_param() { - return _impl_.set_param_.Add(); +inline void OpExpr::set_opretset(bool value) { + _internal_set_opretset(value); + // @@protoc_insertion_point(field_set:pg_query.OpExpr.opretset) } -inline ::pg_query::Node* SubPlan::add_set_param() { - ::pg_query::Node* _add = _internal_add_set_param(); - // @@protoc_insertion_point(field_add:pg_query.SubPlan.set_param) - return _add; +inline bool OpExpr::_internal_opretset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opretset_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SubPlan::set_param() const { - // @@protoc_insertion_point(field_list:pg_query.SubPlan.set_param) - return _impl_.set_param_; +inline void OpExpr::_internal_set_opretset(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opretset_ = value; } -// repeated .pg_query.Node par_param = 14 [json_name = "parParam"]; -inline int SubPlan::_internal_par_param_size() const { - return _impl_.par_param_.size(); +// uint32 opcollid = 5 [json_name = "opcollid"]; +inline void OpExpr::clear_opcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opcollid_ = 0u; } -inline int SubPlan::par_param_size() const { - return _internal_par_param_size(); +inline ::uint32_t OpExpr::opcollid() const { + // @@protoc_insertion_point(field_get:pg_query.OpExpr.opcollid) + return _internal_opcollid(); } -inline void SubPlan::clear_par_param() { - _impl_.par_param_.Clear(); +inline void OpExpr::set_opcollid(::uint32_t value) { + _internal_set_opcollid(value); + // @@protoc_insertion_point(field_set:pg_query.OpExpr.opcollid) } -inline ::pg_query::Node* SubPlan::mutable_par_param(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.par_param) - return _impl_.par_param_.Mutable(index); +inline ::uint32_t OpExpr::_internal_opcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opcollid_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SubPlan::mutable_par_param() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SubPlan.par_param) - return &_impl_.par_param_; +inline void OpExpr::_internal_set_opcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opcollid_ = value; } -inline const ::pg_query::Node& SubPlan::_internal_par_param(int index) const { - return _impl_.par_param_.Get(index); + +// uint32 inputcollid = 6 [json_name = "inputcollid"]; +inline void OpExpr::clear_inputcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inputcollid_ = 0u; } -inline const ::pg_query::Node& SubPlan::par_param(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.par_param) - return _internal_par_param(index); +inline ::uint32_t OpExpr::inputcollid() const { + // @@protoc_insertion_point(field_get:pg_query.OpExpr.inputcollid) + return _internal_inputcollid(); } -inline ::pg_query::Node* SubPlan::_internal_add_par_param() { - return _impl_.par_param_.Add(); +inline void OpExpr::set_inputcollid(::uint32_t value) { + _internal_set_inputcollid(value); + // @@protoc_insertion_point(field_set:pg_query.OpExpr.inputcollid) } -inline ::pg_query::Node* SubPlan::add_par_param() { - ::pg_query::Node* _add = _internal_add_par_param(); - // @@protoc_insertion_point(field_add:pg_query.SubPlan.par_param) - return _add; +inline ::uint32_t OpExpr::_internal_inputcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inputcollid_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SubPlan::par_param() const { - // @@protoc_insertion_point(field_list:pg_query.SubPlan.par_param) - return _impl_.par_param_; +inline void OpExpr::_internal_set_inputcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inputcollid_ = value; } -// repeated .pg_query.Node args = 15 [json_name = "args"]; -inline int SubPlan::_internal_args_size() const { - return _impl_.args_.size(); +// repeated .pg_query.Node args = 7 [json_name = "args"]; +inline int OpExpr::_internal_args_size() const { + return _internal_args().size(); } -inline int SubPlan::args_size() const { +inline int OpExpr::args_size() const { return _internal_args_size(); } -inline void SubPlan::clear_args() { +inline void OpExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.args_.Clear(); } -inline ::pg_query::Node* SubPlan::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.args) - return _impl_.args_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SubPlan::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SubPlan.args) - return &_impl_.args_; -} -inline const ::pg_query::Node& SubPlan::_internal_args(int index) const { - return _impl_.args_.Get(index); +inline ::pg_query::Node* OpExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.OpExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline const ::pg_query::Node& SubPlan::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.args) - return _internal_args(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* OpExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.OpExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } -inline ::pg_query::Node* SubPlan::_internal_add_args() { - return _impl_.args_.Add(); +inline const ::pg_query::Node& OpExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OpExpr.args) + return _internal_args().Get(index); } -inline ::pg_query::Node* SubPlan::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.SubPlan.args) +inline ::pg_query::Node* OpExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.OpExpr.args) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SubPlan::args() const { - // @@protoc_insertion_point(field_list:pg_query.SubPlan.args) - return _impl_.args_; -} - -// double startup_cost = 16 [json_name = "startup_cost"]; -inline void SubPlan::clear_startup_cost() { - _impl_.startup_cost_ = 0; -} -inline double SubPlan::_internal_startup_cost() const { - return _impl_.startup_cost_; -} -inline double SubPlan::startup_cost() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.startup_cost) - return _internal_startup_cost(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& OpExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.OpExpr.args) + return _internal_args(); } -inline void SubPlan::_internal_set_startup_cost(double value) { - - _impl_.startup_cost_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +OpExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline void SubPlan::set_startup_cost(double value) { - _internal_set_startup_cost(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.startup_cost) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +OpExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// double per_call_cost = 17 [json_name = "per_call_cost"]; -inline void SubPlan::clear_per_call_cost() { - _impl_.per_call_cost_ = 0; +// int32 location = 8 [json_name = "location"]; +inline void OpExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline double SubPlan::_internal_per_call_cost() const { - return _impl_.per_call_cost_; +inline ::int32_t OpExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.OpExpr.location) + return _internal_location(); } -inline double SubPlan::per_call_cost() const { - // @@protoc_insertion_point(field_get:pg_query.SubPlan.per_call_cost) - return _internal_per_call_cost(); +inline void OpExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.OpExpr.location) } -inline void SubPlan::_internal_set_per_call_cost(double value) { - - _impl_.per_call_cost_ = value; +inline ::int32_t OpExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void SubPlan::set_per_call_cost(double value) { - _internal_set_per_call_cost(value); - // @@protoc_insertion_point(field_set:pg_query.SubPlan.per_call_cost) +inline void OpExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// AlternativeSubPlan +// DistinctExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool AlternativeSubPlan::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool AlternativeSubPlan::has_xpr() const { - return _internal_has_xpr(); +inline bool DistinctExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void AlternativeSubPlan::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void DistinctExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& AlternativeSubPlan::_internal_xpr() const { +inline const ::pg_query::Node& DistinctExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& AlternativeSubPlan::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.AlternativeSubPlan.xpr) +inline const ::pg_query::Node& DistinctExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.xpr) return _internal_xpr(); } -inline void AlternativeSubPlan::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void DistinctExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlternativeSubPlan.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DistinctExpr.xpr) } -inline ::pg_query::Node* AlternativeSubPlan::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* DistinctExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* AlternativeSubPlan::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.AlternativeSubPlan.xpr) - +inline ::pg_query::Node* DistinctExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DistinctExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* AlternativeSubPlan::_internal_mutable_xpr() { - +inline ::pg_query::Node* DistinctExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* AlternativeSubPlan::mutable_xpr() { +inline ::pg_query::Node* DistinctExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.AlternativeSubPlan.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.DistinctExpr.xpr) return _msg; } -inline void AlternativeSubPlan::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void DistinctExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlternativeSubPlan.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.DistinctExpr.xpr) } -// repeated .pg_query.Node subplans = 2 [json_name = "subplans"]; -inline int AlternativeSubPlan::_internal_subplans_size() const { - return _impl_.subplans_.size(); +// uint32 opno = 2 [json_name = "opno"]; +inline void DistinctExpr::clear_opno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opno_ = 0u; } -inline int AlternativeSubPlan::subplans_size() const { - return _internal_subplans_size(); +inline ::uint32_t DistinctExpr::opno() const { + // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.opno) + return _internal_opno(); } -inline void AlternativeSubPlan::clear_subplans() { - _impl_.subplans_.Clear(); +inline void DistinctExpr::set_opno(::uint32_t value) { + _internal_set_opno(value); + // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.opno) } -inline ::pg_query::Node* AlternativeSubPlan::mutable_subplans(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlternativeSubPlan.subplans) - return _impl_.subplans_.Mutable(index); +inline ::uint32_t DistinctExpr::_internal_opno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opno_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlternativeSubPlan::mutable_subplans() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlternativeSubPlan.subplans) - return &_impl_.subplans_; +inline void DistinctExpr::_internal_set_opno(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opno_ = value; +} + +// uint32 opresulttype = 3 [json_name = "opresulttype"]; +inline void DistinctExpr::clear_opresulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opresulttype_ = 0u; +} +inline ::uint32_t DistinctExpr::opresulttype() const { + // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.opresulttype) + return _internal_opresulttype(); } -inline const ::pg_query::Node& AlternativeSubPlan::_internal_subplans(int index) const { - return _impl_.subplans_.Get(index); +inline void DistinctExpr::set_opresulttype(::uint32_t value) { + _internal_set_opresulttype(value); + // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.opresulttype) } -inline const ::pg_query::Node& AlternativeSubPlan::subplans(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlternativeSubPlan.subplans) - return _internal_subplans(index); +inline ::uint32_t DistinctExpr::_internal_opresulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opresulttype_; } -inline ::pg_query::Node* AlternativeSubPlan::_internal_add_subplans() { - return _impl_.subplans_.Add(); +inline void DistinctExpr::_internal_set_opresulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opresulttype_ = value; } -inline ::pg_query::Node* AlternativeSubPlan::add_subplans() { - ::pg_query::Node* _add = _internal_add_subplans(); - // @@protoc_insertion_point(field_add:pg_query.AlternativeSubPlan.subplans) + +// bool opretset = 4 [json_name = "opretset"]; +inline void DistinctExpr::clear_opretset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opretset_ = false; +} +inline bool DistinctExpr::opretset() const { + // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.opretset) + return _internal_opretset(); +} +inline void DistinctExpr::set_opretset(bool value) { + _internal_set_opretset(value); + // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.opretset) +} +inline bool DistinctExpr::_internal_opretset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opretset_; +} +inline void DistinctExpr::_internal_set_opretset(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opretset_ = value; +} + +// uint32 opcollid = 5 [json_name = "opcollid"]; +inline void DistinctExpr::clear_opcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opcollid_ = 0u; +} +inline ::uint32_t DistinctExpr::opcollid() const { + // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.opcollid) + return _internal_opcollid(); +} +inline void DistinctExpr::set_opcollid(::uint32_t value) { + _internal_set_opcollid(value); + // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.opcollid) +} +inline ::uint32_t DistinctExpr::_internal_opcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opcollid_; +} +inline void DistinctExpr::_internal_set_opcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opcollid_ = value; +} + +// uint32 inputcollid = 6 [json_name = "inputcollid"]; +inline void DistinctExpr::clear_inputcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inputcollid_ = 0u; +} +inline ::uint32_t DistinctExpr::inputcollid() const { + // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.inputcollid) + return _internal_inputcollid(); +} +inline void DistinctExpr::set_inputcollid(::uint32_t value) { + _internal_set_inputcollid(value); + // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.inputcollid) +} +inline ::uint32_t DistinctExpr::_internal_inputcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inputcollid_; +} +inline void DistinctExpr::_internal_set_inputcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inputcollid_ = value; +} + +// repeated .pg_query.Node args = 7 [json_name = "args"]; +inline int DistinctExpr::_internal_args_size() const { + return _internal_args().size(); +} +inline int DistinctExpr::args_size() const { + return _internal_args_size(); +} +inline void DistinctExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); +} +inline ::pg_query::Node* DistinctExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DistinctExpr.args) + return _internal_mutable_args()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DistinctExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DistinctExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); +} +inline const ::pg_query::Node& DistinctExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.args) + return _internal_args().Get(index); +} +inline ::pg_query::Node* DistinctExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DistinctExpr.args) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlternativeSubPlan::subplans() const { - // @@protoc_insertion_point(field_list:pg_query.AlternativeSubPlan.subplans) - return _impl_.subplans_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DistinctExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DistinctExpr.args) + return _internal_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DistinctExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DistinctExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; +} + +// int32 location = 8 [json_name = "location"]; +inline void DistinctExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; +} +inline ::int32_t DistinctExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.DistinctExpr.location) + return _internal_location(); +} +inline void DistinctExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.DistinctExpr.location) +} +inline ::int32_t DistinctExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void DistinctExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// FieldSelect +// NullIfExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool FieldSelect::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool FieldSelect::has_xpr() const { - return _internal_has_xpr(); +inline bool NullIfExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void FieldSelect::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void NullIfExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& FieldSelect::_internal_xpr() const { +inline const ::pg_query::Node& NullIfExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& FieldSelect::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.FieldSelect.xpr) +inline const ::pg_query::Node& NullIfExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.xpr) return _internal_xpr(); } -inline void FieldSelect::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void NullIfExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FieldSelect.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NullIfExpr.xpr) } -inline ::pg_query::Node* FieldSelect::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* NullIfExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* FieldSelect::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.FieldSelect.xpr) - +inline ::pg_query::Node* NullIfExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.NullIfExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* FieldSelect::_internal_mutable_xpr() { - +inline ::pg_query::Node* NullIfExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* FieldSelect::mutable_xpr() { +inline ::pg_query::Node* NullIfExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.FieldSelect.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.NullIfExpr.xpr) return _msg; } -inline void FieldSelect::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void NullIfExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.FieldSelect.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.NullIfExpr.xpr) } -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool FieldSelect::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +// uint32 opno = 2 [json_name = "opno"]; +inline void NullIfExpr::clear_opno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opno_ = 0u; } -inline bool FieldSelect::has_arg() const { - return _internal_has_arg(); +inline ::uint32_t NullIfExpr::opno() const { + // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.opno) + return _internal_opno(); } -inline void FieldSelect::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline void NullIfExpr::set_opno(::uint32_t value) { + _internal_set_opno(value); + // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.opno) } -inline const ::pg_query::Node& FieldSelect::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::uint32_t NullIfExpr::_internal_opno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opno_; } -inline const ::pg_query::Node& FieldSelect::arg() const { - // @@protoc_insertion_point(field_get:pg_query.FieldSelect.arg) - return _internal_arg(); +inline void NullIfExpr::_internal_set_opno(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opno_ = value; } -inline void FieldSelect::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FieldSelect.arg) + +// uint32 opresulttype = 3 [json_name = "opresulttype"]; +inline void NullIfExpr::clear_opresulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opresulttype_ = 0u; } -inline ::pg_query::Node* FieldSelect::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::uint32_t NullIfExpr::opresulttype() const { + // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.opresulttype) + return _internal_opresulttype(); } -inline ::pg_query::Node* FieldSelect::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.FieldSelect.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; +inline void NullIfExpr::set_opresulttype(::uint32_t value) { + _internal_set_opresulttype(value); + // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.opresulttype) } -inline ::pg_query::Node* FieldSelect::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; +inline ::uint32_t NullIfExpr::_internal_opresulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opresulttype_; } -inline ::pg_query::Node* FieldSelect::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.FieldSelect.arg) - return _msg; +inline void NullIfExpr::_internal_set_opresulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opresulttype_ = value; } -inline void FieldSelect::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); - if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); - } - - } else { - - } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.FieldSelect.arg) + +// bool opretset = 4 [json_name = "opretset"]; +inline void NullIfExpr::clear_opretset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opretset_ = false; +} +inline bool NullIfExpr::opretset() const { + // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.opretset) + return _internal_opretset(); +} +inline void NullIfExpr::set_opretset(bool value) { + _internal_set_opretset(value); + // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.opretset) +} +inline bool NullIfExpr::_internal_opretset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opretset_; +} +inline void NullIfExpr::_internal_set_opretset(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opretset_ = value; } -// int32 fieldnum = 3 [json_name = "fieldnum"]; -inline void FieldSelect::clear_fieldnum() { - _impl_.fieldnum_ = 0; +// uint32 opcollid = 5 [json_name = "opcollid"]; +inline void NullIfExpr::clear_opcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opcollid_ = 0u; } -inline int32_t FieldSelect::_internal_fieldnum() const { - return _impl_.fieldnum_; +inline ::uint32_t NullIfExpr::opcollid() const { + // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.opcollid) + return _internal_opcollid(); } -inline int32_t FieldSelect::fieldnum() const { - // @@protoc_insertion_point(field_get:pg_query.FieldSelect.fieldnum) - return _internal_fieldnum(); +inline void NullIfExpr::set_opcollid(::uint32_t value) { + _internal_set_opcollid(value); + // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.opcollid) } -inline void FieldSelect::_internal_set_fieldnum(int32_t value) { - - _impl_.fieldnum_ = value; +inline ::uint32_t NullIfExpr::_internal_opcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opcollid_; } -inline void FieldSelect::set_fieldnum(int32_t value) { - _internal_set_fieldnum(value); - // @@protoc_insertion_point(field_set:pg_query.FieldSelect.fieldnum) +inline void NullIfExpr::_internal_set_opcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opcollid_ = value; } -// uint32 resulttype = 4 [json_name = "resulttype"]; -inline void FieldSelect::clear_resulttype() { - _impl_.resulttype_ = 0u; +// uint32 inputcollid = 6 [json_name = "inputcollid"]; +inline void NullIfExpr::clear_inputcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inputcollid_ = 0u; } -inline uint32_t FieldSelect::_internal_resulttype() const { - return _impl_.resulttype_; +inline ::uint32_t NullIfExpr::inputcollid() const { + // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.inputcollid) + return _internal_inputcollid(); } -inline uint32_t FieldSelect::resulttype() const { - // @@protoc_insertion_point(field_get:pg_query.FieldSelect.resulttype) - return _internal_resulttype(); +inline void NullIfExpr::set_inputcollid(::uint32_t value) { + _internal_set_inputcollid(value); + // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.inputcollid) } -inline void FieldSelect::_internal_set_resulttype(uint32_t value) { - - _impl_.resulttype_ = value; +inline ::uint32_t NullIfExpr::_internal_inputcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inputcollid_; } -inline void FieldSelect::set_resulttype(uint32_t value) { - _internal_set_resulttype(value); - // @@protoc_insertion_point(field_set:pg_query.FieldSelect.resulttype) +inline void NullIfExpr::_internal_set_inputcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inputcollid_ = value; } -// int32 resulttypmod = 5 [json_name = "resulttypmod"]; -inline void FieldSelect::clear_resulttypmod() { - _impl_.resulttypmod_ = 0; +// repeated .pg_query.Node args = 7 [json_name = "args"]; +inline int NullIfExpr::_internal_args_size() const { + return _internal_args().size(); } -inline int32_t FieldSelect::_internal_resulttypmod() const { - return _impl_.resulttypmod_; +inline int NullIfExpr::args_size() const { + return _internal_args_size(); } -inline int32_t FieldSelect::resulttypmod() const { - // @@protoc_insertion_point(field_get:pg_query.FieldSelect.resulttypmod) - return _internal_resulttypmod(); +inline void NullIfExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline void FieldSelect::_internal_set_resulttypmod(int32_t value) { - - _impl_.resulttypmod_ = value; +inline ::pg_query::Node* NullIfExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.NullIfExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline void FieldSelect::set_resulttypmod(int32_t value) { - _internal_set_resulttypmod(value); - // @@protoc_insertion_point(field_set:pg_query.FieldSelect.resulttypmod) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* NullIfExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.NullIfExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); +} +inline const ::pg_query::Node& NullIfExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.args) + return _internal_args().Get(index); +} +inline ::pg_query::Node* NullIfExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.NullIfExpr.args) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& NullIfExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.NullIfExpr.args) + return _internal_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +NullIfExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +NullIfExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// uint32 resultcollid = 6 [json_name = "resultcollid"]; -inline void FieldSelect::clear_resultcollid() { - _impl_.resultcollid_ = 0u; +// int32 location = 8 [json_name = "location"]; +inline void NullIfExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline uint32_t FieldSelect::_internal_resultcollid() const { - return _impl_.resultcollid_; +inline ::int32_t NullIfExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.NullIfExpr.location) + return _internal_location(); } -inline uint32_t FieldSelect::resultcollid() const { - // @@protoc_insertion_point(field_get:pg_query.FieldSelect.resultcollid) - return _internal_resultcollid(); +inline void NullIfExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.NullIfExpr.location) } -inline void FieldSelect::_internal_set_resultcollid(uint32_t value) { - - _impl_.resultcollid_ = value; +inline ::int32_t NullIfExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void FieldSelect::set_resultcollid(uint32_t value) { - _internal_set_resultcollid(value); - // @@protoc_insertion_point(field_set:pg_query.FieldSelect.resultcollid) +inline void NullIfExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// FieldStore +// ScalarArrayOpExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool FieldStore::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool FieldStore::has_xpr() const { - return _internal_has_xpr(); +inline bool ScalarArrayOpExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void FieldStore::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void ScalarArrayOpExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& FieldStore::_internal_xpr() const { +inline const ::pg_query::Node& ScalarArrayOpExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& FieldStore::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.FieldStore.xpr) +inline const ::pg_query::Node& ScalarArrayOpExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.xpr) return _internal_xpr(); } -inline void FieldStore::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void ScalarArrayOpExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FieldStore.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ScalarArrayOpExpr.xpr) } -inline ::pg_query::Node* FieldStore::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* ScalarArrayOpExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* FieldStore::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.FieldStore.xpr) - +inline ::pg_query::Node* ScalarArrayOpExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ScalarArrayOpExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* FieldStore::_internal_mutable_xpr() { - +inline ::pg_query::Node* ScalarArrayOpExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* FieldStore::mutable_xpr() { +inline ::pg_query::Node* ScalarArrayOpExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.FieldStore.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.ScalarArrayOpExpr.xpr) return _msg; } -inline void FieldStore::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ScalarArrayOpExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.FieldStore.xpr) -} -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool FieldStore::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; -} -inline bool FieldStore::has_arg() const { - return _internal_has_arg(); -} -inline void FieldStore::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; -} -inline const ::pg_query::Node& FieldStore::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); -} -inline const ::pg_query::Node& FieldStore::arg() const { - // @@protoc_insertion_point(field_get:pg_query.FieldStore.arg) - return _internal_arg(); -} -inline void FieldStore::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FieldStore.arg) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ScalarArrayOpExpr.xpr) } -inline ::pg_query::Node* FieldStore::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// uint32 opno = 2 [json_name = "opno"]; +inline void ScalarArrayOpExpr::clear_opno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opno_ = 0u; } -inline ::pg_query::Node* FieldStore::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.FieldStore.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; +inline ::uint32_t ScalarArrayOpExpr::opno() const { + // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.opno) + return _internal_opno(); } -inline ::pg_query::Node* FieldStore::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; +inline void ScalarArrayOpExpr::set_opno(::uint32_t value) { + _internal_set_opno(value); + // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.opno) } -inline ::pg_query::Node* FieldStore::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.FieldStore.arg) - return _msg; +inline ::uint32_t ScalarArrayOpExpr::_internal_opno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opno_; } -inline void FieldStore::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); - if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); - } - - } else { - - } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.FieldStore.arg) +inline void ScalarArrayOpExpr::_internal_set_opno(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.opno_ = value; } -// repeated .pg_query.Node newvals = 3 [json_name = "newvals"]; -inline int FieldStore::_internal_newvals_size() const { - return _impl_.newvals_.size(); +// bool use_or = 3 [json_name = "useOr"]; +inline void ScalarArrayOpExpr::clear_use_or() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.use_or_ = false; } -inline int FieldStore::newvals_size() const { - return _internal_newvals_size(); +inline bool ScalarArrayOpExpr::use_or() const { + // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.use_or) + return _internal_use_or(); } -inline void FieldStore::clear_newvals() { - _impl_.newvals_.Clear(); +inline void ScalarArrayOpExpr::set_use_or(bool value) { + _internal_set_use_or(value); + // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.use_or) } -inline ::pg_query::Node* FieldStore::mutable_newvals(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.FieldStore.newvals) - return _impl_.newvals_.Mutable(index); +inline bool ScalarArrayOpExpr::_internal_use_or() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.use_or_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -FieldStore::mutable_newvals() { - // @@protoc_insertion_point(field_mutable_list:pg_query.FieldStore.newvals) - return &_impl_.newvals_; +inline void ScalarArrayOpExpr::_internal_set_use_or(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.use_or_ = value; } -inline const ::pg_query::Node& FieldStore::_internal_newvals(int index) const { - return _impl_.newvals_.Get(index); + +// uint32 inputcollid = 4 [json_name = "inputcollid"]; +inline void ScalarArrayOpExpr::clear_inputcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inputcollid_ = 0u; } -inline const ::pg_query::Node& FieldStore::newvals(int index) const { - // @@protoc_insertion_point(field_get:pg_query.FieldStore.newvals) - return _internal_newvals(index); +inline ::uint32_t ScalarArrayOpExpr::inputcollid() const { + // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.inputcollid) + return _internal_inputcollid(); } -inline ::pg_query::Node* FieldStore::_internal_add_newvals() { - return _impl_.newvals_.Add(); +inline void ScalarArrayOpExpr::set_inputcollid(::uint32_t value) { + _internal_set_inputcollid(value); + // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.inputcollid) } -inline ::pg_query::Node* FieldStore::add_newvals() { - ::pg_query::Node* _add = _internal_add_newvals(); - // @@protoc_insertion_point(field_add:pg_query.FieldStore.newvals) - return _add; +inline ::uint32_t ScalarArrayOpExpr::_internal_inputcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inputcollid_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -FieldStore::newvals() const { - // @@protoc_insertion_point(field_list:pg_query.FieldStore.newvals) - return _impl_.newvals_; +inline void ScalarArrayOpExpr::_internal_set_inputcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inputcollid_ = value; } -// repeated .pg_query.Node fieldnums = 4 [json_name = "fieldnums"]; -inline int FieldStore::_internal_fieldnums_size() const { - return _impl_.fieldnums_.size(); +// repeated .pg_query.Node args = 5 [json_name = "args"]; +inline int ScalarArrayOpExpr::_internal_args_size() const { + return _internal_args().size(); } -inline int FieldStore::fieldnums_size() const { - return _internal_fieldnums_size(); +inline int ScalarArrayOpExpr::args_size() const { + return _internal_args_size(); } -inline void FieldStore::clear_fieldnums() { - _impl_.fieldnums_.Clear(); +inline void ScalarArrayOpExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline ::pg_query::Node* FieldStore::mutable_fieldnums(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.FieldStore.fieldnums) - return _impl_.fieldnums_.Mutable(index); +inline ::pg_query::Node* ScalarArrayOpExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ScalarArrayOpExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -FieldStore::mutable_fieldnums() { - // @@protoc_insertion_point(field_mutable_list:pg_query.FieldStore.fieldnums) - return &_impl_.fieldnums_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ScalarArrayOpExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ScalarArrayOpExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } -inline const ::pg_query::Node& FieldStore::_internal_fieldnums(int index) const { - return _impl_.fieldnums_.Get(index); +inline const ::pg_query::Node& ScalarArrayOpExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.args) + return _internal_args().Get(index); } -inline const ::pg_query::Node& FieldStore::fieldnums(int index) const { - // @@protoc_insertion_point(field_get:pg_query.FieldStore.fieldnums) - return _internal_fieldnums(index); +inline ::pg_query::Node* ScalarArrayOpExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ScalarArrayOpExpr.args) + return _add; } -inline ::pg_query::Node* FieldStore::_internal_add_fieldnums() { - return _impl_.fieldnums_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ScalarArrayOpExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ScalarArrayOpExpr.args) + return _internal_args(); } -inline ::pg_query::Node* FieldStore::add_fieldnums() { - ::pg_query::Node* _add = _internal_add_fieldnums(); - // @@protoc_insertion_point(field_add:pg_query.FieldStore.fieldnums) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ScalarArrayOpExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -FieldStore::fieldnums() const { - // @@protoc_insertion_point(field_list:pg_query.FieldStore.fieldnums) - return _impl_.fieldnums_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ScalarArrayOpExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// uint32 resulttype = 5 [json_name = "resulttype"]; -inline void FieldStore::clear_resulttype() { - _impl_.resulttype_ = 0u; +// int32 location = 6 [json_name = "location"]; +inline void ScalarArrayOpExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline uint32_t FieldStore::_internal_resulttype() const { - return _impl_.resulttype_; +inline ::int32_t ScalarArrayOpExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.ScalarArrayOpExpr.location) + return _internal_location(); } -inline uint32_t FieldStore::resulttype() const { - // @@protoc_insertion_point(field_get:pg_query.FieldStore.resulttype) - return _internal_resulttype(); +inline void ScalarArrayOpExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.ScalarArrayOpExpr.location) } -inline void FieldStore::_internal_set_resulttype(uint32_t value) { - - _impl_.resulttype_ = value; +inline ::int32_t ScalarArrayOpExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void FieldStore::set_resulttype(uint32_t value) { - _internal_set_resulttype(value); - // @@protoc_insertion_point(field_set:pg_query.FieldStore.resulttype) +inline void ScalarArrayOpExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// RelabelType +// BoolExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool RelabelType::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool RelabelType::has_xpr() const { - return _internal_has_xpr(); +inline bool BoolExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void RelabelType::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void BoolExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& RelabelType::_internal_xpr() const { +inline const ::pg_query::Node& BoolExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& RelabelType::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.RelabelType.xpr) +inline const ::pg_query::Node& BoolExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.BoolExpr.xpr) return _internal_xpr(); } -inline void RelabelType::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void BoolExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RelabelType.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.BoolExpr.xpr) } -inline ::pg_query::Node* RelabelType::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* BoolExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* RelabelType::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.RelabelType.xpr) - +inline ::pg_query::Node* BoolExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.BoolExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* RelabelType::_internal_mutable_xpr() { - +inline ::pg_query::Node* BoolExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* RelabelType::mutable_xpr() { +inline ::pg_query::Node* BoolExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.RelabelType.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.BoolExpr.xpr) return _msg; } -inline void RelabelType::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void BoolExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.RelabelType.xpr) -} -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool RelabelType::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; -} -inline bool RelabelType::has_arg() const { - return _internal_has_arg(); -} -inline void RelabelType::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; -} -inline const ::pg_query::Node& RelabelType::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); -} -inline const ::pg_query::Node& RelabelType::arg() const { - // @@protoc_insertion_point(field_get:pg_query.RelabelType.arg) - return _internal_arg(); -} -inline void RelabelType::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RelabelType.arg) -} -inline ::pg_query::Node* RelabelType::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::pg_query::Node* RelabelType::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.RelabelType.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; -} -inline ::pg_query::Node* RelabelType::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; -} -inline ::pg_query::Node* RelabelType::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.RelabelType.arg) - return _msg; -} -inline void RelabelType::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.RelabelType.arg) -} -// uint32 resulttype = 3 [json_name = "resulttype"]; -inline void RelabelType::clear_resulttype() { - _impl_.resulttype_ = 0u; -} -inline uint32_t RelabelType::_internal_resulttype() const { - return _impl_.resulttype_; -} -inline uint32_t RelabelType::resulttype() const { - // @@protoc_insertion_point(field_get:pg_query.RelabelType.resulttype) - return _internal_resulttype(); -} -inline void RelabelType::_internal_set_resulttype(uint32_t value) { - - _impl_.resulttype_ = value; -} -inline void RelabelType::set_resulttype(uint32_t value) { - _internal_set_resulttype(value); - // @@protoc_insertion_point(field_set:pg_query.RelabelType.resulttype) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.BoolExpr.xpr) } -// int32 resulttypmod = 4 [json_name = "resulttypmod"]; -inline void RelabelType::clear_resulttypmod() { - _impl_.resulttypmod_ = 0; +// .pg_query.BoolExprType boolop = 2 [json_name = "boolop"]; +inline void BoolExpr::clear_boolop() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.boolop_ = 0; } -inline int32_t RelabelType::_internal_resulttypmod() const { - return _impl_.resulttypmod_; +inline ::pg_query::BoolExprType BoolExpr::boolop() const { + // @@protoc_insertion_point(field_get:pg_query.BoolExpr.boolop) + return _internal_boolop(); } -inline int32_t RelabelType::resulttypmod() const { - // @@protoc_insertion_point(field_get:pg_query.RelabelType.resulttypmod) - return _internal_resulttypmod(); +inline void BoolExpr::set_boolop(::pg_query::BoolExprType value) { + _internal_set_boolop(value); + // @@protoc_insertion_point(field_set:pg_query.BoolExpr.boolop) } -inline void RelabelType::_internal_set_resulttypmod(int32_t value) { - - _impl_.resulttypmod_ = value; +inline ::pg_query::BoolExprType BoolExpr::_internal_boolop() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::BoolExprType>(_impl_.boolop_); } -inline void RelabelType::set_resulttypmod(int32_t value) { - _internal_set_resulttypmod(value); - // @@protoc_insertion_point(field_set:pg_query.RelabelType.resulttypmod) +inline void BoolExpr::_internal_set_boolop(::pg_query::BoolExprType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.boolop_ = value; } -// uint32 resultcollid = 5 [json_name = "resultcollid"]; -inline void RelabelType::clear_resultcollid() { - _impl_.resultcollid_ = 0u; +// repeated .pg_query.Node args = 3 [json_name = "args"]; +inline int BoolExpr::_internal_args_size() const { + return _internal_args().size(); } -inline uint32_t RelabelType::_internal_resultcollid() const { - return _impl_.resultcollid_; +inline int BoolExpr::args_size() const { + return _internal_args_size(); } -inline uint32_t RelabelType::resultcollid() const { - // @@protoc_insertion_point(field_get:pg_query.RelabelType.resultcollid) - return _internal_resultcollid(); +inline void BoolExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline void RelabelType::_internal_set_resultcollid(uint32_t value) { - - _impl_.resultcollid_ = value; +inline ::pg_query::Node* BoolExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.BoolExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline void RelabelType::set_resultcollid(uint32_t value) { - _internal_set_resultcollid(value); - // @@protoc_insertion_point(field_set:pg_query.RelabelType.resultcollid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* BoolExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.BoolExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } - -// .pg_query.CoercionForm relabelformat = 6 [json_name = "relabelformat"]; -inline void RelabelType::clear_relabelformat() { - _impl_.relabelformat_ = 0; +inline const ::pg_query::Node& BoolExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.BoolExpr.args) + return _internal_args().Get(index); } -inline ::pg_query::CoercionForm RelabelType::_internal_relabelformat() const { - return static_cast< ::pg_query::CoercionForm >(_impl_.relabelformat_); +inline ::pg_query::Node* BoolExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.BoolExpr.args) + return _add; } -inline ::pg_query::CoercionForm RelabelType::relabelformat() const { - // @@protoc_insertion_point(field_get:pg_query.RelabelType.relabelformat) - return _internal_relabelformat(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& BoolExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.BoolExpr.args) + return _internal_args(); } -inline void RelabelType::_internal_set_relabelformat(::pg_query::CoercionForm value) { - - _impl_.relabelformat_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +BoolExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline void RelabelType::set_relabelformat(::pg_query::CoercionForm value) { - _internal_set_relabelformat(value); - // @@protoc_insertion_point(field_set:pg_query.RelabelType.relabelformat) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +BoolExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// int32 location = 7 [json_name = "location"]; -inline void RelabelType::clear_location() { +// int32 location = 4 [json_name = "location"]; +inline void BoolExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t RelabelType::_internal_location() const { - return _impl_.location_; -} -inline int32_t RelabelType::location() const { - // @@protoc_insertion_point(field_get:pg_query.RelabelType.location) +inline ::int32_t BoolExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.BoolExpr.location) return _internal_location(); } -inline void RelabelType::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void RelabelType::set_location(int32_t value) { +inline void BoolExpr::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.RelabelType.location) + // @@protoc_insertion_point(field_set:pg_query.BoolExpr.location) +} +inline ::int32_t BoolExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void BoolExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// CoerceViaIO +// SubLink // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool CoerceViaIO::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool CoerceViaIO::has_xpr() const { - return _internal_has_xpr(); +inline bool SubLink::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void CoerceViaIO::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void SubLink::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& CoerceViaIO::_internal_xpr() const { +inline const ::pg_query::Node& SubLink::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CoerceViaIO::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.xpr) +inline const ::pg_query::Node& SubLink::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubLink.xpr) return _internal_xpr(); } -inline void CoerceViaIO::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void SubLink::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceViaIO.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubLink.xpr) } -inline ::pg_query::Node* CoerceViaIO::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* SubLink::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CoerceViaIO::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.CoerceViaIO.xpr) - +inline ::pg_query::Node* SubLink::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SubLink.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* CoerceViaIO::_internal_mutable_xpr() { - +inline ::pg_query::Node* SubLink::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* CoerceViaIO::mutable_xpr() { +inline ::pg_query::Node* SubLink::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CoerceViaIO.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.SubLink.xpr) return _msg; } -inline void CoerceViaIO::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SubLink::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceViaIO.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SubLink.xpr) } -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool CoerceViaIO::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +// .pg_query.SubLinkType sub_link_type = 2 [json_name = "subLinkType"]; +inline void SubLink::clear_sub_link_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sub_link_type_ = 0; } -inline bool CoerceViaIO::has_arg() const { - return _internal_has_arg(); +inline ::pg_query::SubLinkType SubLink::sub_link_type() const { + // @@protoc_insertion_point(field_get:pg_query.SubLink.sub_link_type) + return _internal_sub_link_type(); } -inline void CoerceViaIO::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline void SubLink::set_sub_link_type(::pg_query::SubLinkType value) { + _internal_set_sub_link_type(value); + // @@protoc_insertion_point(field_set:pg_query.SubLink.sub_link_type) } -inline const ::pg_query::Node& CoerceViaIO::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::SubLinkType SubLink::_internal_sub_link_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::SubLinkType>(_impl_.sub_link_type_); } -inline const ::pg_query::Node& CoerceViaIO::arg() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.arg) - return _internal_arg(); +inline void SubLink::_internal_set_sub_link_type(::pg_query::SubLinkType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.sub_link_type_ = value; +} + +// int32 sub_link_id = 3 [json_name = "subLinkId"]; +inline void SubLink::clear_sub_link_id() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sub_link_id_ = 0; +} +inline ::int32_t SubLink::sub_link_id() const { + // @@protoc_insertion_point(field_get:pg_query.SubLink.sub_link_id) + return _internal_sub_link_id(); +} +inline void SubLink::set_sub_link_id(::int32_t value) { + _internal_set_sub_link_id(value); + // @@protoc_insertion_point(field_set:pg_query.SubLink.sub_link_id) +} +inline ::int32_t SubLink::_internal_sub_link_id() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.sub_link_id_; +} +inline void SubLink::_internal_set_sub_link_id(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.sub_link_id_ = value; +} + +// .pg_query.Node testexpr = 4 [json_name = "testexpr"]; +inline bool SubLink::has_testexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.testexpr_ != nullptr); + return value; +} +inline void SubLink::clear_testexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.testexpr_ != nullptr) _impl_.testexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::Node& SubLink::_internal_testexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.testexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void CoerceViaIO::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); +inline const ::pg_query::Node& SubLink::testexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubLink.testexpr) + return _internal_testexpr(); +} +inline void SubLink::unsafe_arena_set_allocated_testexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.testexpr_); } - _impl_.arg_ = arg; - if (arg) { - + _impl_.testexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceViaIO.arg) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubLink.testexpr) } -inline ::pg_query::Node* CoerceViaIO::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; +inline ::pg_query::Node* SubLink::release_testexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.testexpr_; + _impl_.testexpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CoerceViaIO::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.CoerceViaIO.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; +inline ::pg_query::Node* SubLink::unsafe_arena_release_testexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SubLink.testexpr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.testexpr_; + _impl_.testexpr_ = nullptr; return temp; } -inline ::pg_query::Node* CoerceViaIO::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; +inline ::pg_query::Node* SubLink::_internal_mutable_testexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.testexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.testexpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.arg_; + return _impl_.testexpr_; } -inline ::pg_query::Node* CoerceViaIO::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.CoerceViaIO.arg) +inline ::pg_query::Node* SubLink::mutable_testexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_testexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.SubLink.testexpr) return _msg; } -inline void CoerceViaIO::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SubLink::set_allocated_testexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.arg_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.testexpr_); } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceViaIO.arg) + + _impl_.testexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SubLink.testexpr) } -// uint32 resulttype = 3 [json_name = "resulttype"]; -inline void CoerceViaIO::clear_resulttype() { - _impl_.resulttype_ = 0u; +// repeated .pg_query.Node oper_name = 5 [json_name = "operName"]; +inline int SubLink::_internal_oper_name_size() const { + return _internal_oper_name().size(); } -inline uint32_t CoerceViaIO::_internal_resulttype() const { - return _impl_.resulttype_; +inline int SubLink::oper_name_size() const { + return _internal_oper_name_size(); } -inline uint32_t CoerceViaIO::resulttype() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.resulttype) - return _internal_resulttype(); +inline void SubLink::clear_oper_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.oper_name_.Clear(); } -inline void CoerceViaIO::_internal_set_resulttype(uint32_t value) { - - _impl_.resulttype_ = value; +inline ::pg_query::Node* SubLink::mutable_oper_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SubLink.oper_name) + return _internal_mutable_oper_name()->Mutable(index); } -inline void CoerceViaIO::set_resulttype(uint32_t value) { - _internal_set_resulttype(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceViaIO.resulttype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SubLink::mutable_oper_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SubLink.oper_name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_oper_name(); +} +inline const ::pg_query::Node& SubLink::oper_name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubLink.oper_name) + return _internal_oper_name().Get(index); +} +inline ::pg_query::Node* SubLink::add_oper_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_oper_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SubLink.oper_name) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SubLink::oper_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SubLink.oper_name) + return _internal_oper_name(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SubLink::_internal_oper_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.oper_name_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SubLink::_internal_mutable_oper_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.oper_name_; } -// uint32 resultcollid = 4 [json_name = "resultcollid"]; -inline void CoerceViaIO::clear_resultcollid() { - _impl_.resultcollid_ = 0u; +// .pg_query.Node subselect = 6 [json_name = "subselect"]; +inline bool SubLink::has_subselect() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.subselect_ != nullptr); + return value; } -inline uint32_t CoerceViaIO::_internal_resultcollid() const { - return _impl_.resultcollid_; +inline void SubLink::clear_subselect() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.subselect_ != nullptr) _impl_.subselect_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline uint32_t CoerceViaIO::resultcollid() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.resultcollid) - return _internal_resultcollid(); +inline const ::pg_query::Node& SubLink::_internal_subselect() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.subselect_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void CoerceViaIO::_internal_set_resultcollid(uint32_t value) { - - _impl_.resultcollid_ = value; +inline const ::pg_query::Node& SubLink::subselect() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubLink.subselect) + return _internal_subselect(); } -inline void CoerceViaIO::set_resultcollid(uint32_t value) { - _internal_set_resultcollid(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceViaIO.resultcollid) +inline void SubLink::unsafe_arena_set_allocated_subselect(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.subselect_); + } + _impl_.subselect_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubLink.subselect) } +inline ::pg_query::Node* SubLink::release_subselect() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// .pg_query.CoercionForm coerceformat = 5 [json_name = "coerceformat"]; -inline void CoerceViaIO::clear_coerceformat() { - _impl_.coerceformat_ = 0; + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.subselect_; + _impl_.subselect_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::CoercionForm CoerceViaIO::_internal_coerceformat() const { - return static_cast< ::pg_query::CoercionForm >(_impl_.coerceformat_); +inline ::pg_query::Node* SubLink::unsafe_arena_release_subselect() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SubLink.subselect) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.subselect_; + _impl_.subselect_ = nullptr; + return temp; } -inline ::pg_query::CoercionForm CoerceViaIO::coerceformat() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.coerceformat) - return _internal_coerceformat(); +inline ::pg_query::Node* SubLink::_internal_mutable_subselect() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.subselect_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.subselect_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.subselect_; } -inline void CoerceViaIO::_internal_set_coerceformat(::pg_query::CoercionForm value) { - - _impl_.coerceformat_ = value; +inline ::pg_query::Node* SubLink::mutable_subselect() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_subselect(); + // @@protoc_insertion_point(field_mutable:pg_query.SubLink.subselect) + return _msg; } -inline void CoerceViaIO::set_coerceformat(::pg_query::CoercionForm value) { - _internal_set_coerceformat(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceViaIO.coerceformat) +inline void SubLink::set_allocated_subselect(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.subselect_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.subselect_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SubLink.subselect) } -// int32 location = 6 [json_name = "location"]; -inline void CoerceViaIO::clear_location() { +// int32 location = 7 [json_name = "location"]; +inline void SubLink::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t CoerceViaIO::_internal_location() const { - return _impl_.location_; -} -inline int32_t CoerceViaIO::location() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.location) +inline ::int32_t SubLink::location() const { + // @@protoc_insertion_point(field_get:pg_query.SubLink.location) return _internal_location(); } -inline void CoerceViaIO::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void CoerceViaIO::set_location(int32_t value) { +inline void SubLink::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceViaIO.location) + // @@protoc_insertion_point(field_set:pg_query.SubLink.location) +} +inline ::int32_t SubLink::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void SubLink::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// ArrayCoerceExpr +// SubPlan // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool ArrayCoerceExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool ArrayCoerceExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool SubPlan::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void ArrayCoerceExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void SubPlan::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& ArrayCoerceExpr::_internal_xpr() const { +inline const ::pg_query::Node& SubPlan::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& ArrayCoerceExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.xpr) +inline const ::pg_query::Node& SubPlan::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.xpr) return _internal_xpr(); } -inline void ArrayCoerceExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void SubPlan::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ArrayCoerceExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubPlan.xpr) } -inline ::pg_query::Node* ArrayCoerceExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* SubPlan::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* ArrayCoerceExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.ArrayCoerceExpr.xpr) - +inline ::pg_query::Node* SubPlan::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SubPlan.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* ArrayCoerceExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* SubPlan::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* ArrayCoerceExpr::mutable_xpr() { +inline ::pg_query::Node* SubPlan::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.ArrayCoerceExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.xpr) return _msg; } -inline void ArrayCoerceExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SubPlan::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.ArrayCoerceExpr.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SubPlan.xpr) } -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool ArrayCoerceExpr::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +// .pg_query.SubLinkType sub_link_type = 2 [json_name = "subLinkType"]; +inline void SubPlan::clear_sub_link_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sub_link_type_ = 0; } -inline bool ArrayCoerceExpr::has_arg() const { - return _internal_has_arg(); +inline ::pg_query::SubLinkType SubPlan::sub_link_type() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.sub_link_type) + return _internal_sub_link_type(); } -inline void ArrayCoerceExpr::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline void SubPlan::set_sub_link_type(::pg_query::SubLinkType value) { + _internal_set_sub_link_type(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.sub_link_type) } -inline const ::pg_query::Node& ArrayCoerceExpr::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::SubLinkType SubPlan::_internal_sub_link_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::SubLinkType>(_impl_.sub_link_type_); } -inline const ::pg_query::Node& ArrayCoerceExpr::arg() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.arg) - return _internal_arg(); +inline void SubPlan::_internal_set_sub_link_type(::pg_query::SubLinkType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.sub_link_type_ = value; +} + +// .pg_query.Node testexpr = 3 [json_name = "testexpr"]; +inline bool SubPlan::has_testexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.testexpr_ != nullptr); + return value; +} +inline void SubPlan::clear_testexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.testexpr_ != nullptr) _impl_.testexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::Node& SubPlan::_internal_testexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.testexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void ArrayCoerceExpr::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); +inline const ::pg_query::Node& SubPlan::testexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.testexpr) + return _internal_testexpr(); +} +inline void SubPlan::unsafe_arena_set_allocated_testexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.testexpr_); } - _impl_.arg_ = arg; - if (arg) { - + _impl_.testexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ArrayCoerceExpr.arg) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SubPlan.testexpr) } -inline ::pg_query::Node* ArrayCoerceExpr::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; +inline ::pg_query::Node* SubPlan::release_testexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.testexpr_; + _impl_.testexpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* ArrayCoerceExpr::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.ArrayCoerceExpr.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; +inline ::pg_query::Node* SubPlan::unsafe_arena_release_testexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SubPlan.testexpr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.testexpr_; + _impl_.testexpr_ = nullptr; return temp; } -inline ::pg_query::Node* ArrayCoerceExpr::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; +inline ::pg_query::Node* SubPlan::_internal_mutable_testexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.testexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.testexpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.arg_; + return _impl_.testexpr_; } -inline ::pg_query::Node* ArrayCoerceExpr::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.ArrayCoerceExpr.arg) +inline ::pg_query::Node* SubPlan::mutable_testexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_testexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.testexpr) return _msg; } -inline void ArrayCoerceExpr::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SubPlan::set_allocated_testexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.arg_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.testexpr_); } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.ArrayCoerceExpr.arg) -} -// .pg_query.Node elemexpr = 3 [json_name = "elemexpr"]; -inline bool ArrayCoerceExpr::_internal_has_elemexpr() const { - return this != internal_default_instance() && _impl_.elemexpr_ != nullptr; + _impl_.testexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SubPlan.testexpr) } -inline bool ArrayCoerceExpr::has_elemexpr() const { - return _internal_has_elemexpr(); + +// repeated .pg_query.Node param_ids = 4 [json_name = "paramIds"]; +inline int SubPlan::_internal_param_ids_size() const { + return _internal_param_ids().size(); } -inline void ArrayCoerceExpr::clear_elemexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.elemexpr_ != nullptr) { - delete _impl_.elemexpr_; - } - _impl_.elemexpr_ = nullptr; +inline int SubPlan::param_ids_size() const { + return _internal_param_ids_size(); } -inline const ::pg_query::Node& ArrayCoerceExpr::_internal_elemexpr() const { - const ::pg_query::Node* p = _impl_.elemexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void SubPlan::clear_param_ids() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.param_ids_.Clear(); } -inline const ::pg_query::Node& ArrayCoerceExpr::elemexpr() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.elemexpr) - return _internal_elemexpr(); +inline ::pg_query::Node* SubPlan::mutable_param_ids(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.param_ids) + return _internal_mutable_param_ids()->Mutable(index); } -inline void ArrayCoerceExpr::unsafe_arena_set_allocated_elemexpr( - ::pg_query::Node* elemexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.elemexpr_); - } - _impl_.elemexpr_ = elemexpr; - if (elemexpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ArrayCoerceExpr.elemexpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SubPlan::mutable_param_ids() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SubPlan.param_ids) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_param_ids(); } -inline ::pg_query::Node* ArrayCoerceExpr::release_elemexpr() { - - ::pg_query::Node* temp = _impl_.elemexpr_; - _impl_.elemexpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& SubPlan::param_ids(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.param_ids) + return _internal_param_ids().Get(index); } -inline ::pg_query::Node* ArrayCoerceExpr::unsafe_arena_release_elemexpr() { - // @@protoc_insertion_point(field_release:pg_query.ArrayCoerceExpr.elemexpr) - - ::pg_query::Node* temp = _impl_.elemexpr_; - _impl_.elemexpr_ = nullptr; - return temp; +inline ::pg_query::Node* SubPlan::add_param_ids() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_param_ids()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SubPlan.param_ids) + return _add; } -inline ::pg_query::Node* ArrayCoerceExpr::_internal_mutable_elemexpr() { - - if (_impl_.elemexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.elemexpr_ = p; - } - return _impl_.elemexpr_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SubPlan::param_ids() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SubPlan.param_ids) + return _internal_param_ids(); } -inline ::pg_query::Node* ArrayCoerceExpr::mutable_elemexpr() { - ::pg_query::Node* _msg = _internal_mutable_elemexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.ArrayCoerceExpr.elemexpr) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SubPlan::_internal_param_ids() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.param_ids_; } -inline void ArrayCoerceExpr::set_allocated_elemexpr(::pg_query::Node* elemexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.elemexpr_; - } - if (elemexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(elemexpr); - if (message_arena != submessage_arena) { - elemexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, elemexpr, submessage_arena); - } - - } else { - - } - _impl_.elemexpr_ = elemexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.ArrayCoerceExpr.elemexpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SubPlan::_internal_mutable_param_ids() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.param_ids_; } -// uint32 resulttype = 4 [json_name = "resulttype"]; -inline void ArrayCoerceExpr::clear_resulttype() { - _impl_.resulttype_ = 0u; +// int32 plan_id = 5 [json_name = "plan_id"]; +inline void SubPlan::clear_plan_id() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.plan_id_ = 0; } -inline uint32_t ArrayCoerceExpr::_internal_resulttype() const { - return _impl_.resulttype_; +inline ::int32_t SubPlan::plan_id() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.plan_id) + return _internal_plan_id(); } -inline uint32_t ArrayCoerceExpr::resulttype() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.resulttype) - return _internal_resulttype(); +inline void SubPlan::set_plan_id(::int32_t value) { + _internal_set_plan_id(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.plan_id) } -inline void ArrayCoerceExpr::_internal_set_resulttype(uint32_t value) { - - _impl_.resulttype_ = value; +inline ::int32_t SubPlan::_internal_plan_id() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.plan_id_; } -inline void ArrayCoerceExpr::set_resulttype(uint32_t value) { - _internal_set_resulttype(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.resulttype) +inline void SubPlan::_internal_set_plan_id(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.plan_id_ = value; } -// int32 resulttypmod = 5 [json_name = "resulttypmod"]; -inline void ArrayCoerceExpr::clear_resulttypmod() { - _impl_.resulttypmod_ = 0; +// string plan_name = 6 [json_name = "plan_name"]; +inline void SubPlan::clear_plan_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.plan_name_.ClearToEmpty(); } -inline int32_t ArrayCoerceExpr::_internal_resulttypmod() const { - return _impl_.resulttypmod_; +inline const std::string& SubPlan::plan_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.plan_name) + return _internal_plan_name(); } -inline int32_t ArrayCoerceExpr::resulttypmod() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.resulttypmod) - return _internal_resulttypmod(); +template +inline PROTOBUF_ALWAYS_INLINE void SubPlan::set_plan_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.plan_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.plan_name) } -inline void ArrayCoerceExpr::_internal_set_resulttypmod(int32_t value) { - - _impl_.resulttypmod_ = value; +inline std::string* SubPlan::mutable_plan_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_plan_name(); + // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.plan_name) + return _s; } -inline void ArrayCoerceExpr::set_resulttypmod(int32_t value) { - _internal_set_resulttypmod(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.resulttypmod) +inline const std::string& SubPlan::_internal_plan_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.plan_name_.Get(); +} +inline void SubPlan::_internal_set_plan_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.plan_name_.Set(value, GetArena()); +} +inline std::string* SubPlan::_internal_mutable_plan_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.plan_name_.Mutable( GetArena()); +} +inline std::string* SubPlan::release_plan_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SubPlan.plan_name) + return _impl_.plan_name_.Release(); +} +inline void SubPlan::set_allocated_plan_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.plan_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.plan_name_.IsDefault()) { + _impl_.plan_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.SubPlan.plan_name) } -// uint32 resultcollid = 6 [json_name = "resultcollid"]; -inline void ArrayCoerceExpr::clear_resultcollid() { - _impl_.resultcollid_ = 0u; +// uint32 first_col_type = 7 [json_name = "firstColType"]; +inline void SubPlan::clear_first_col_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.first_col_type_ = 0u; } -inline uint32_t ArrayCoerceExpr::_internal_resultcollid() const { - return _impl_.resultcollid_; +inline ::uint32_t SubPlan::first_col_type() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.first_col_type) + return _internal_first_col_type(); } -inline uint32_t ArrayCoerceExpr::resultcollid() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.resultcollid) - return _internal_resultcollid(); +inline void SubPlan::set_first_col_type(::uint32_t value) { + _internal_set_first_col_type(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.first_col_type) } -inline void ArrayCoerceExpr::_internal_set_resultcollid(uint32_t value) { - - _impl_.resultcollid_ = value; +inline ::uint32_t SubPlan::_internal_first_col_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.first_col_type_; } -inline void ArrayCoerceExpr::set_resultcollid(uint32_t value) { - _internal_set_resultcollid(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.resultcollid) +inline void SubPlan::_internal_set_first_col_type(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.first_col_type_ = value; } -// .pg_query.CoercionForm coerceformat = 7 [json_name = "coerceformat"]; -inline void ArrayCoerceExpr::clear_coerceformat() { - _impl_.coerceformat_ = 0; +// int32 first_col_typmod = 8 [json_name = "firstColTypmod"]; +inline void SubPlan::clear_first_col_typmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.first_col_typmod_ = 0; } -inline ::pg_query::CoercionForm ArrayCoerceExpr::_internal_coerceformat() const { - return static_cast< ::pg_query::CoercionForm >(_impl_.coerceformat_); +inline ::int32_t SubPlan::first_col_typmod() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.first_col_typmod) + return _internal_first_col_typmod(); } -inline ::pg_query::CoercionForm ArrayCoerceExpr::coerceformat() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.coerceformat) - return _internal_coerceformat(); +inline void SubPlan::set_first_col_typmod(::int32_t value) { + _internal_set_first_col_typmod(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.first_col_typmod) } -inline void ArrayCoerceExpr::_internal_set_coerceformat(::pg_query::CoercionForm value) { - - _impl_.coerceformat_ = value; +inline ::int32_t SubPlan::_internal_first_col_typmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.first_col_typmod_; } -inline void ArrayCoerceExpr::set_coerceformat(::pg_query::CoercionForm value) { - _internal_set_coerceformat(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.coerceformat) +inline void SubPlan::_internal_set_first_col_typmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.first_col_typmod_ = value; } -// int32 location = 8 [json_name = "location"]; -inline void ArrayCoerceExpr::clear_location() { - _impl_.location_ = 0; +// uint32 first_col_collation = 9 [json_name = "firstColCollation"]; +inline void SubPlan::clear_first_col_collation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.first_col_collation_ = 0u; } -inline int32_t ArrayCoerceExpr::_internal_location() const { - return _impl_.location_; +inline ::uint32_t SubPlan::first_col_collation() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.first_col_collation) + return _internal_first_col_collation(); } -inline int32_t ArrayCoerceExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.location) - return _internal_location(); +inline void SubPlan::set_first_col_collation(::uint32_t value) { + _internal_set_first_col_collation(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.first_col_collation) } -inline void ArrayCoerceExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::uint32_t SubPlan::_internal_first_col_collation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.first_col_collation_; } -inline void ArrayCoerceExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.location) +inline void SubPlan::_internal_set_first_col_collation(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.first_col_collation_ = value; } -// ------------------------------------------------------------------- +// bool use_hash_table = 10 [json_name = "useHashTable"]; +inline void SubPlan::clear_use_hash_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.use_hash_table_ = false; +} +inline bool SubPlan::use_hash_table() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.use_hash_table) + return _internal_use_hash_table(); +} +inline void SubPlan::set_use_hash_table(bool value) { + _internal_set_use_hash_table(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.use_hash_table) +} +inline bool SubPlan::_internal_use_hash_table() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.use_hash_table_; +} +inline void SubPlan::_internal_set_use_hash_table(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.use_hash_table_ = value; +} -// ConvertRowtypeExpr +// bool unknown_eq_false = 11 [json_name = "unknownEqFalse"]; +inline void SubPlan::clear_unknown_eq_false() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.unknown_eq_false_ = false; +} +inline bool SubPlan::unknown_eq_false() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.unknown_eq_false) + return _internal_unknown_eq_false(); +} +inline void SubPlan::set_unknown_eq_false(bool value) { + _internal_set_unknown_eq_false(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.unknown_eq_false) +} +inline bool SubPlan::_internal_unknown_eq_false() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.unknown_eq_false_; +} +inline void SubPlan::_internal_set_unknown_eq_false(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.unknown_eq_false_ = value; +} -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool ConvertRowtypeExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; +// bool parallel_safe = 12 [json_name = "parallel_safe"]; +inline void SubPlan::clear_parallel_safe() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.parallel_safe_ = false; } -inline bool ConvertRowtypeExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool SubPlan::parallel_safe() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.parallel_safe) + return _internal_parallel_safe(); } -inline void ConvertRowtypeExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void SubPlan::set_parallel_safe(bool value) { + _internal_set_parallel_safe(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.parallel_safe) } -inline const ::pg_query::Node& ConvertRowtypeExpr::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline bool SubPlan::_internal_parallel_safe() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.parallel_safe_; } -inline const ::pg_query::Node& ConvertRowtypeExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.xpr) - return _internal_xpr(); +inline void SubPlan::_internal_set_parallel_safe(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.parallel_safe_ = value; } -inline void ConvertRowtypeExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); - } - _impl_.xpr_ = xpr; - if (xpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ConvertRowtypeExpr.xpr) + +// repeated .pg_query.Node set_param = 13 [json_name = "setParam"]; +inline int SubPlan::_internal_set_param_size() const { + return _internal_set_param().size(); } -inline ::pg_query::Node* ConvertRowtypeExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline int SubPlan::set_param_size() const { + return _internal_set_param_size(); } -inline ::pg_query::Node* ConvertRowtypeExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.ConvertRowtypeExpr.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; - return temp; +inline void SubPlan::clear_set_param() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.set_param_.Clear(); } -inline ::pg_query::Node* ConvertRowtypeExpr::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; - } - return _impl_.xpr_; +inline ::pg_query::Node* SubPlan::mutable_set_param(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.set_param) + return _internal_mutable_set_param()->Mutable(index); } -inline ::pg_query::Node* ConvertRowtypeExpr::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.ConvertRowtypeExpr.xpr) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SubPlan::mutable_set_param() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SubPlan.set_param) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_set_param(); } -inline void ConvertRowtypeExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - - } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.ConvertRowtypeExpr.xpr) +inline const ::pg_query::Node& SubPlan::set_param(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.set_param) + return _internal_set_param().Get(index); } - -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool ConvertRowtypeExpr::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +inline ::pg_query::Node* SubPlan::add_set_param() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_set_param()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SubPlan.set_param) + return _add; } -inline bool ConvertRowtypeExpr::has_arg() const { - return _internal_has_arg(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SubPlan::set_param() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SubPlan.set_param) + return _internal_set_param(); } -inline void ConvertRowtypeExpr::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SubPlan::_internal_set_param() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.set_param_; } -inline const ::pg_query::Node& ConvertRowtypeExpr::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SubPlan::_internal_mutable_set_param() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.set_param_; } -inline const ::pg_query::Node& ConvertRowtypeExpr::arg() const { - // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.arg) - return _internal_arg(); + +// repeated .pg_query.Node par_param = 14 [json_name = "parParam"]; +inline int SubPlan::_internal_par_param_size() const { + return _internal_par_param().size(); } -inline void ConvertRowtypeExpr::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ConvertRowtypeExpr.arg) +inline int SubPlan::par_param_size() const { + return _internal_par_param_size(); } -inline ::pg_query::Node* ConvertRowtypeExpr::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline void SubPlan::clear_par_param() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.par_param_.Clear(); } -inline ::pg_query::Node* ConvertRowtypeExpr::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.ConvertRowtypeExpr.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; +inline ::pg_query::Node* SubPlan::mutable_par_param(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.par_param) + return _internal_mutable_par_param()->Mutable(index); } -inline ::pg_query::Node* ConvertRowtypeExpr::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SubPlan::mutable_par_param() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SubPlan.par_param) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_par_param(); } -inline ::pg_query::Node* ConvertRowtypeExpr::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.ConvertRowtypeExpr.arg) - return _msg; +inline const ::pg_query::Node& SubPlan::par_param(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.par_param) + return _internal_par_param().Get(index); } -inline void ConvertRowtypeExpr::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); - if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); - } - - } else { - - } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.ConvertRowtypeExpr.arg) +inline ::pg_query::Node* SubPlan::add_par_param() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_par_param()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SubPlan.par_param) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SubPlan::par_param() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SubPlan.par_param) + return _internal_par_param(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SubPlan::_internal_par_param() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.par_param_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SubPlan::_internal_mutable_par_param() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.par_param_; } -// uint32 resulttype = 3 [json_name = "resulttype"]; -inline void ConvertRowtypeExpr::clear_resulttype() { - _impl_.resulttype_ = 0u; +// repeated .pg_query.Node args = 15 [json_name = "args"]; +inline int SubPlan::_internal_args_size() const { + return _internal_args().size(); } -inline uint32_t ConvertRowtypeExpr::_internal_resulttype() const { - return _impl_.resulttype_; +inline int SubPlan::args_size() const { + return _internal_args_size(); } -inline uint32_t ConvertRowtypeExpr::resulttype() const { - // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.resulttype) - return _internal_resulttype(); +inline void SubPlan::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline void ConvertRowtypeExpr::_internal_set_resulttype(uint32_t value) { - - _impl_.resulttype_ = value; +inline ::pg_query::Node* SubPlan::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SubPlan.args) + return _internal_mutable_args()->Mutable(index); } -inline void ConvertRowtypeExpr::set_resulttype(uint32_t value) { - _internal_set_resulttype(value); - // @@protoc_insertion_point(field_set:pg_query.ConvertRowtypeExpr.resulttype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SubPlan::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SubPlan.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); +} +inline const ::pg_query::Node& SubPlan::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.args) + return _internal_args().Get(index); +} +inline ::pg_query::Node* SubPlan::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SubPlan.args) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SubPlan::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SubPlan.args) + return _internal_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SubPlan::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SubPlan::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// .pg_query.CoercionForm convertformat = 4 [json_name = "convertformat"]; -inline void ConvertRowtypeExpr::clear_convertformat() { - _impl_.convertformat_ = 0; +// double startup_cost = 16 [json_name = "startup_cost"]; +inline void SubPlan::clear_startup_cost() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.startup_cost_ = 0; } -inline ::pg_query::CoercionForm ConvertRowtypeExpr::_internal_convertformat() const { - return static_cast< ::pg_query::CoercionForm >(_impl_.convertformat_); +inline double SubPlan::startup_cost() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.startup_cost) + return _internal_startup_cost(); } -inline ::pg_query::CoercionForm ConvertRowtypeExpr::convertformat() const { - // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.convertformat) - return _internal_convertformat(); +inline void SubPlan::set_startup_cost(double value) { + _internal_set_startup_cost(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.startup_cost) } -inline void ConvertRowtypeExpr::_internal_set_convertformat(::pg_query::CoercionForm value) { - - _impl_.convertformat_ = value; +inline double SubPlan::_internal_startup_cost() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.startup_cost_; } -inline void ConvertRowtypeExpr::set_convertformat(::pg_query::CoercionForm value) { - _internal_set_convertformat(value); - // @@protoc_insertion_point(field_set:pg_query.ConvertRowtypeExpr.convertformat) +inline void SubPlan::_internal_set_startup_cost(double value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.startup_cost_ = value; } -// int32 location = 5 [json_name = "location"]; -inline void ConvertRowtypeExpr::clear_location() { - _impl_.location_ = 0; +// double per_call_cost = 17 [json_name = "per_call_cost"]; +inline void SubPlan::clear_per_call_cost() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.per_call_cost_ = 0; } -inline int32_t ConvertRowtypeExpr::_internal_location() const { - return _impl_.location_; +inline double SubPlan::per_call_cost() const { + // @@protoc_insertion_point(field_get:pg_query.SubPlan.per_call_cost) + return _internal_per_call_cost(); } -inline int32_t ConvertRowtypeExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.location) - return _internal_location(); +inline void SubPlan::set_per_call_cost(double value) { + _internal_set_per_call_cost(value); + // @@protoc_insertion_point(field_set:pg_query.SubPlan.per_call_cost) } -inline void ConvertRowtypeExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline double SubPlan::_internal_per_call_cost() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.per_call_cost_; } -inline void ConvertRowtypeExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.ConvertRowtypeExpr.location) +inline void SubPlan::_internal_set_per_call_cost(double value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.per_call_cost_ = value; } // ------------------------------------------------------------------- -// CollateExpr +// AlternativeSubPlan // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool CollateExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool CollateExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool AlternativeSubPlan::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void CollateExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void AlternativeSubPlan::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& CollateExpr::_internal_xpr() const { +inline const ::pg_query::Node& AlternativeSubPlan::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CollateExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.CollateExpr.xpr) +inline const ::pg_query::Node& AlternativeSubPlan::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlternativeSubPlan.xpr) return _internal_xpr(); } -inline void CollateExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void AlternativeSubPlan::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CollateExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlternativeSubPlan.xpr) } -inline ::pg_query::Node* CollateExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* AlternativeSubPlan::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CollateExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.CollateExpr.xpr) - +inline ::pg_query::Node* AlternativeSubPlan::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlternativeSubPlan.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* CollateExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* AlternativeSubPlan::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* CollateExpr::mutable_xpr() { +inline ::pg_query::Node* AlternativeSubPlan::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CollateExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.AlternativeSubPlan.xpr) return _msg; } -inline void CollateExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlternativeSubPlan::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CollateExpr.xpr) -} -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool CollateExpr::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; -} -inline bool CollateExpr::has_arg() const { - return _internal_has_arg(); -} -inline void CollateExpr::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; -} -inline const ::pg_query::Node& CollateExpr::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); -} -inline const ::pg_query::Node& CollateExpr::arg() const { - // @@protoc_insertion_point(field_get:pg_query.CollateExpr.arg) - return _internal_arg(); -} -inline void CollateExpr::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CollateExpr.arg) -} -inline ::pg_query::Node* CollateExpr::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::pg_query::Node* CollateExpr::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.CollateExpr.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; -} -inline ::pg_query::Node* CollateExpr::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; -} -inline ::pg_query::Node* CollateExpr::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.CollateExpr.arg) - return _msg; -} -inline void CollateExpr::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.CollateExpr.arg) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlternativeSubPlan.xpr) } -// uint32 coll_oid = 3 [json_name = "collOid"]; -inline void CollateExpr::clear_coll_oid() { - _impl_.coll_oid_ = 0u; +// repeated .pg_query.Node subplans = 2 [json_name = "subplans"]; +inline int AlternativeSubPlan::_internal_subplans_size() const { + return _internal_subplans().size(); } -inline uint32_t CollateExpr::_internal_coll_oid() const { - return _impl_.coll_oid_; +inline int AlternativeSubPlan::subplans_size() const { + return _internal_subplans_size(); } -inline uint32_t CollateExpr::coll_oid() const { - // @@protoc_insertion_point(field_get:pg_query.CollateExpr.coll_oid) - return _internal_coll_oid(); +inline void AlternativeSubPlan::clear_subplans() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subplans_.Clear(); } -inline void CollateExpr::_internal_set_coll_oid(uint32_t value) { - - _impl_.coll_oid_ = value; +inline ::pg_query::Node* AlternativeSubPlan::mutable_subplans(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlternativeSubPlan.subplans) + return _internal_mutable_subplans()->Mutable(index); } -inline void CollateExpr::set_coll_oid(uint32_t value) { - _internal_set_coll_oid(value); - // @@protoc_insertion_point(field_set:pg_query.CollateExpr.coll_oid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlternativeSubPlan::mutable_subplans() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlternativeSubPlan.subplans) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_subplans(); } - -// int32 location = 4 [json_name = "location"]; -inline void CollateExpr::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Node& AlternativeSubPlan::subplans(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlternativeSubPlan.subplans) + return _internal_subplans().Get(index); } -inline int32_t CollateExpr::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Node* AlternativeSubPlan::add_subplans() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_subplans()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlternativeSubPlan.subplans) + return _add; } -inline int32_t CollateExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.CollateExpr.location) - return _internal_location(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlternativeSubPlan::subplans() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlternativeSubPlan.subplans) + return _internal_subplans(); } -inline void CollateExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlternativeSubPlan::_internal_subplans() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.subplans_; } -inline void CollateExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CollateExpr.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlternativeSubPlan::_internal_mutable_subplans() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.subplans_; } // ------------------------------------------------------------------- -// CaseExpr +// FieldSelect // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool CaseExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool CaseExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool FieldSelect::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void CaseExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void FieldSelect::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& CaseExpr::_internal_xpr() const { +inline const ::pg_query::Node& FieldSelect::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CaseExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.CaseExpr.xpr) +inline const ::pg_query::Node& FieldSelect::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FieldSelect.xpr) return _internal_xpr(); } -inline void CaseExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void FieldSelect::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FieldSelect.xpr) } -inline ::pg_query::Node* CaseExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* FieldSelect::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CaseExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.CaseExpr.xpr) - +inline ::pg_query::Node* FieldSelect::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FieldSelect.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* CaseExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* FieldSelect::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* CaseExpr::mutable_xpr() { +inline ::pg_query::Node* FieldSelect::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CaseExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.FieldSelect.xpr) return _msg; } -inline void CaseExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void FieldSelect::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CaseExpr.xpr) -} - -// uint32 casetype = 2 [json_name = "casetype"]; -inline void CaseExpr::clear_casetype() { - _impl_.casetype_ = 0u; -} -inline uint32_t CaseExpr::_internal_casetype() const { - return _impl_.casetype_; -} -inline uint32_t CaseExpr::casetype() const { - // @@protoc_insertion_point(field_get:pg_query.CaseExpr.casetype) - return _internal_casetype(); -} -inline void CaseExpr::_internal_set_casetype(uint32_t value) { - - _impl_.casetype_ = value; -} -inline void CaseExpr::set_casetype(uint32_t value) { - _internal_set_casetype(value); - // @@protoc_insertion_point(field_set:pg_query.CaseExpr.casetype) -} -// uint32 casecollid = 3 [json_name = "casecollid"]; -inline void CaseExpr::clear_casecollid() { - _impl_.casecollid_ = 0u; -} -inline uint32_t CaseExpr::_internal_casecollid() const { - return _impl_.casecollid_; -} -inline uint32_t CaseExpr::casecollid() const { - // @@protoc_insertion_point(field_get:pg_query.CaseExpr.casecollid) - return _internal_casecollid(); -} -inline void CaseExpr::_internal_set_casecollid(uint32_t value) { - - _impl_.casecollid_ = value; -} -inline void CaseExpr::set_casecollid(uint32_t value) { - _internal_set_casecollid(value); - // @@protoc_insertion_point(field_set:pg_query.CaseExpr.casecollid) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FieldSelect.xpr) } -// .pg_query.Node arg = 4 [json_name = "arg"]; -inline bool CaseExpr::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; -} -inline bool CaseExpr::has_arg() const { - return _internal_has_arg(); +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool FieldSelect::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void CaseExpr::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline void FieldSelect::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& CaseExpr::_internal_arg() const { +inline const ::pg_query::Node& FieldSelect::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CaseExpr::arg() const { - // @@protoc_insertion_point(field_get:pg_query.CaseExpr.arg) +inline const ::pg_query::Node& FieldSelect::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FieldSelect.arg) return _internal_arg(); } -inline void CaseExpr::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); +inline void FieldSelect::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.arg_ = arg; - if (arg) { - + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseExpr.arg) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FieldSelect.arg) } -inline ::pg_query::Node* CaseExpr::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; +inline ::pg_query::Node* FieldSelect::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CaseExpr::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.CaseExpr.arg) - +inline ::pg_query::Node* FieldSelect::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FieldSelect.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; ::pg_query::Node* temp = _impl_.arg_; _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::Node* CaseExpr::_internal_mutable_arg() { - +inline ::pg_query::Node* FieldSelect::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.arg_; } -inline ::pg_query::Node* CaseExpr::mutable_arg() { +inline ::pg_query::Node* FieldSelect::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.CaseExpr.arg) + // @@protoc_insertion_point(field_mutable:pg_query.FieldSelect.arg) return _msg; } -inline void CaseExpr::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void FieldSelect::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.arg_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.CaseExpr.arg) -} -// repeated .pg_query.Node args = 5 [json_name = "args"]; -inline int CaseExpr::_internal_args_size() const { - return _impl_.args_.size(); -} -inline int CaseExpr::args_size() const { - return _internal_args_size(); -} -inline void CaseExpr::clear_args() { - _impl_.args_.Clear(); -} -inline ::pg_query::Node* CaseExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CaseExpr.args) - return _impl_.args_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CaseExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CaseExpr.args) - return &_impl_.args_; + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FieldSelect.arg) } -inline const ::pg_query::Node& CaseExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// int32 fieldnum = 3 [json_name = "fieldnum"]; +inline void FieldSelect::clear_fieldnum() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fieldnum_ = 0; } -inline const ::pg_query::Node& CaseExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CaseExpr.args) - return _internal_args(index); +inline ::int32_t FieldSelect::fieldnum() const { + // @@protoc_insertion_point(field_get:pg_query.FieldSelect.fieldnum) + return _internal_fieldnum(); } -inline ::pg_query::Node* CaseExpr::_internal_add_args() { - return _impl_.args_.Add(); +inline void FieldSelect::set_fieldnum(::int32_t value) { + _internal_set_fieldnum(value); + // @@protoc_insertion_point(field_set:pg_query.FieldSelect.fieldnum) } -inline ::pg_query::Node* CaseExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.CaseExpr.args) - return _add; +inline ::int32_t FieldSelect::_internal_fieldnum() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fieldnum_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CaseExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.CaseExpr.args) - return _impl_.args_; +inline void FieldSelect::_internal_set_fieldnum(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fieldnum_ = value; } -// .pg_query.Node defresult = 6 [json_name = "defresult"]; -inline bool CaseExpr::_internal_has_defresult() const { - return this != internal_default_instance() && _impl_.defresult_ != nullptr; -} -inline bool CaseExpr::has_defresult() const { - return _internal_has_defresult(); +// uint32 resulttype = 4 [json_name = "resulttype"]; +inline void FieldSelect::clear_resulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttype_ = 0u; } -inline void CaseExpr::clear_defresult() { - if (GetArenaForAllocation() == nullptr && _impl_.defresult_ != nullptr) { - delete _impl_.defresult_; - } - _impl_.defresult_ = nullptr; +inline ::uint32_t FieldSelect::resulttype() const { + // @@protoc_insertion_point(field_get:pg_query.FieldSelect.resulttype) + return _internal_resulttype(); } -inline const ::pg_query::Node& CaseExpr::_internal_defresult() const { - const ::pg_query::Node* p = _impl_.defresult_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void FieldSelect::set_resulttype(::uint32_t value) { + _internal_set_resulttype(value); + // @@protoc_insertion_point(field_set:pg_query.FieldSelect.resulttype) } -inline const ::pg_query::Node& CaseExpr::defresult() const { - // @@protoc_insertion_point(field_get:pg_query.CaseExpr.defresult) - return _internal_defresult(); +inline ::uint32_t FieldSelect::_internal_resulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttype_; } -inline void CaseExpr::unsafe_arena_set_allocated_defresult( - ::pg_query::Node* defresult) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.defresult_); - } - _impl_.defresult_ = defresult; - if (defresult) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseExpr.defresult) +inline void FieldSelect::_internal_set_resulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttype_ = value; } -inline ::pg_query::Node* CaseExpr::release_defresult() { - - ::pg_query::Node* temp = _impl_.defresult_; - _impl_.defresult_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// int32 resulttypmod = 5 [json_name = "resulttypmod"]; +inline void FieldSelect::clear_resulttypmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttypmod_ = 0; } -inline ::pg_query::Node* CaseExpr::unsafe_arena_release_defresult() { - // @@protoc_insertion_point(field_release:pg_query.CaseExpr.defresult) - - ::pg_query::Node* temp = _impl_.defresult_; - _impl_.defresult_ = nullptr; - return temp; +inline ::int32_t FieldSelect::resulttypmod() const { + // @@protoc_insertion_point(field_get:pg_query.FieldSelect.resulttypmod) + return _internal_resulttypmod(); } -inline ::pg_query::Node* CaseExpr::_internal_mutable_defresult() { - - if (_impl_.defresult_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.defresult_ = p; - } - return _impl_.defresult_; +inline void FieldSelect::set_resulttypmod(::int32_t value) { + _internal_set_resulttypmod(value); + // @@protoc_insertion_point(field_set:pg_query.FieldSelect.resulttypmod) } -inline ::pg_query::Node* CaseExpr::mutable_defresult() { - ::pg_query::Node* _msg = _internal_mutable_defresult(); - // @@protoc_insertion_point(field_mutable:pg_query.CaseExpr.defresult) - return _msg; +inline ::int32_t FieldSelect::_internal_resulttypmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttypmod_; } -inline void CaseExpr::set_allocated_defresult(::pg_query::Node* defresult) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.defresult_; - } - if (defresult) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(defresult); - if (message_arena != submessage_arena) { - defresult = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, defresult, submessage_arena); - } - - } else { - - } - _impl_.defresult_ = defresult; - // @@protoc_insertion_point(field_set_allocated:pg_query.CaseExpr.defresult) +inline void FieldSelect::_internal_set_resulttypmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttypmod_ = value; } -// int32 location = 7 [json_name = "location"]; -inline void CaseExpr::clear_location() { - _impl_.location_ = 0; +// uint32 resultcollid = 6 [json_name = "resultcollid"]; +inline void FieldSelect::clear_resultcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resultcollid_ = 0u; } -inline int32_t CaseExpr::_internal_location() const { - return _impl_.location_; +inline ::uint32_t FieldSelect::resultcollid() const { + // @@protoc_insertion_point(field_get:pg_query.FieldSelect.resultcollid) + return _internal_resultcollid(); } -inline int32_t CaseExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.CaseExpr.location) - return _internal_location(); +inline void FieldSelect::set_resultcollid(::uint32_t value) { + _internal_set_resultcollid(value); + // @@protoc_insertion_point(field_set:pg_query.FieldSelect.resultcollid) } -inline void CaseExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::uint32_t FieldSelect::_internal_resultcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resultcollid_; } -inline void CaseExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CaseExpr.location) +inline void FieldSelect::_internal_set_resultcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resultcollid_ = value; } // ------------------------------------------------------------------- -// CaseWhen +// FieldStore // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool CaseWhen::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool CaseWhen::has_xpr() const { - return _internal_has_xpr(); +inline bool FieldStore::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void CaseWhen::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void FieldStore::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& CaseWhen::_internal_xpr() const { +inline const ::pg_query::Node& FieldStore::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CaseWhen::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.CaseWhen.xpr) +inline const ::pg_query::Node& FieldStore::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FieldStore.xpr) return _internal_xpr(); } -inline void CaseWhen::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void FieldStore::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseWhen.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FieldStore.xpr) } -inline ::pg_query::Node* CaseWhen::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* FieldStore::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CaseWhen::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.CaseWhen.xpr) - +inline ::pg_query::Node* FieldStore::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FieldStore.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* CaseWhen::_internal_mutable_xpr() { - +inline ::pg_query::Node* FieldStore::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* CaseWhen::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CaseWhen.xpr) - return _msg; -} -inline void CaseWhen::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - - } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CaseWhen.xpr) -} - -// .pg_query.Node expr = 2 [json_name = "expr"]; -inline bool CaseWhen::_internal_has_expr() const { - return this != internal_default_instance() && _impl_.expr_ != nullptr; -} -inline bool CaseWhen::has_expr() const { - return _internal_has_expr(); -} -inline void CaseWhen::clear_expr() { - if (GetArenaForAllocation() == nullptr && _impl_.expr_ != nullptr) { - delete _impl_.expr_; - } - _impl_.expr_ = nullptr; -} -inline const ::pg_query::Node& CaseWhen::_internal_expr() const { - const ::pg_query::Node* p = _impl_.expr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); -} -inline const ::pg_query::Node& CaseWhen::expr() const { - // @@protoc_insertion_point(field_get:pg_query.CaseWhen.expr) - return _internal_expr(); -} -inline void CaseWhen::unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.expr_); - } - _impl_.expr_ = expr; - if (expr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseWhen.expr) -} -inline ::pg_query::Node* CaseWhen::release_expr() { - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::pg_query::Node* CaseWhen::unsafe_arena_release_expr() { - // @@protoc_insertion_point(field_release:pg_query.CaseWhen.expr) - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; - return temp; -} -inline ::pg_query::Node* CaseWhen::_internal_mutable_expr() { - - if (_impl_.expr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.expr_ = p; - } - return _impl_.expr_; -} -inline ::pg_query::Node* CaseWhen::mutable_expr() { - ::pg_query::Node* _msg = _internal_mutable_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.CaseWhen.expr) - return _msg; -} -inline void CaseWhen::set_allocated_expr(::pg_query::Node* expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.expr_; - } - if (expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(expr); - if (message_arena != submessage_arena) { - expr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, expr, submessage_arena); - } - - } else { - - } - _impl_.expr_ = expr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CaseWhen.expr) -} - -// .pg_query.Node result = 3 [json_name = "result"]; -inline bool CaseWhen::_internal_has_result() const { - return this != internal_default_instance() && _impl_.result_ != nullptr; -} -inline bool CaseWhen::has_result() const { - return _internal_has_result(); -} -inline void CaseWhen::clear_result() { - if (GetArenaForAllocation() == nullptr && _impl_.result_ != nullptr) { - delete _impl_.result_; - } - _impl_.result_ = nullptr; -} -inline const ::pg_query::Node& CaseWhen::_internal_result() const { - const ::pg_query::Node* p = _impl_.result_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); -} -inline const ::pg_query::Node& CaseWhen::result() const { - // @@protoc_insertion_point(field_get:pg_query.CaseWhen.result) - return _internal_result(); -} -inline void CaseWhen::unsafe_arena_set_allocated_result( - ::pg_query::Node* result) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.result_); - } - _impl_.result_ = result; - if (result) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseWhen.result) -} -inline ::pg_query::Node* CaseWhen::release_result() { - - ::pg_query::Node* temp = _impl_.result_; - _impl_.result_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::pg_query::Node* CaseWhen::unsafe_arena_release_result() { - // @@protoc_insertion_point(field_release:pg_query.CaseWhen.result) - - ::pg_query::Node* temp = _impl_.result_; - _impl_.result_ = nullptr; - return temp; -} -inline ::pg_query::Node* CaseWhen::_internal_mutable_result() { - - if (_impl_.result_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.result_ = p; - } - return _impl_.result_; -} -inline ::pg_query::Node* CaseWhen::mutable_result() { - ::pg_query::Node* _msg = _internal_mutable_result(); - // @@protoc_insertion_point(field_mutable:pg_query.CaseWhen.result) - return _msg; -} -inline void CaseWhen::set_allocated_result(::pg_query::Node* result) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.result_; - } - if (result) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(result); - if (message_arena != submessage_arena) { - result = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, result, submessage_arena); - } - - } else { - - } - _impl_.result_ = result; - // @@protoc_insertion_point(field_set_allocated:pg_query.CaseWhen.result) -} - -// int32 location = 4 [json_name = "location"]; -inline void CaseWhen::clear_location() { - _impl_.location_ = 0; -} -inline int32_t CaseWhen::_internal_location() const { - return _impl_.location_; -} -inline int32_t CaseWhen::location() const { - // @@protoc_insertion_point(field_get:pg_query.CaseWhen.location) - return _internal_location(); -} -inline void CaseWhen::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void CaseWhen::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CaseWhen.location) +inline ::pg_query::Node* FieldStore::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.FieldStore.xpr) + return _msg; } +inline void FieldStore::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); + } -// ------------------------------------------------------------------- - -// CaseTestExpr + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool CaseTestExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FieldStore.xpr) } -inline bool CaseTestExpr::has_xpr() const { - return _internal_has_xpr(); + +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool FieldStore::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void CaseTestExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void FieldStore::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& CaseTestExpr::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& FieldStore::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CaseTestExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.CaseTestExpr.xpr) - return _internal_xpr(); +inline const ::pg_query::Node& FieldStore::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FieldStore.arg) + return _internal_arg(); } -inline void CaseTestExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void FieldStore::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseTestExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FieldStore.arg) } -inline ::pg_query::Node* CaseTestExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* FieldStore::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CaseTestExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.CaseTestExpr.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* FieldStore::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FieldStore.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::Node* CaseTestExpr::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; +inline ::pg_query::Node* FieldStore::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.xpr_; + return _impl_.arg_; } -inline ::pg_query::Node* CaseTestExpr::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CaseTestExpr.xpr) +inline ::pg_query::Node* FieldStore::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.FieldStore.arg) return _msg; } -inline void CaseTestExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void FieldStore::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CaseTestExpr.xpr) + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FieldStore.arg) } -// uint32 type_id = 2 [json_name = "typeId"]; -inline void CaseTestExpr::clear_type_id() { - _impl_.type_id_ = 0u; +// repeated .pg_query.Node newvals = 3 [json_name = "newvals"]; +inline int FieldStore::_internal_newvals_size() const { + return _internal_newvals().size(); } -inline uint32_t CaseTestExpr::_internal_type_id() const { - return _impl_.type_id_; +inline int FieldStore::newvals_size() const { + return _internal_newvals_size(); } -inline uint32_t CaseTestExpr::type_id() const { - // @@protoc_insertion_point(field_get:pg_query.CaseTestExpr.type_id) - return _internal_type_id(); +inline void FieldStore::clear_newvals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.newvals_.Clear(); } -inline void CaseTestExpr::_internal_set_type_id(uint32_t value) { - - _impl_.type_id_ = value; +inline ::pg_query::Node* FieldStore::mutable_newvals(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.FieldStore.newvals) + return _internal_mutable_newvals()->Mutable(index); } -inline void CaseTestExpr::set_type_id(uint32_t value) { - _internal_set_type_id(value); - // @@protoc_insertion_point(field_set:pg_query.CaseTestExpr.type_id) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* FieldStore::mutable_newvals() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.FieldStore.newvals) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_newvals(); +} +inline const ::pg_query::Node& FieldStore::newvals(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FieldStore.newvals) + return _internal_newvals().Get(index); +} +inline ::pg_query::Node* FieldStore::add_newvals() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_newvals()->Add(); + // @@protoc_insertion_point(field_add:pg_query.FieldStore.newvals) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& FieldStore::newvals() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.FieldStore.newvals) + return _internal_newvals(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +FieldStore::_internal_newvals() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.newvals_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +FieldStore::_internal_mutable_newvals() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.newvals_; } -// int32 type_mod = 3 [json_name = "typeMod"]; -inline void CaseTestExpr::clear_type_mod() { - _impl_.type_mod_ = 0; +// repeated .pg_query.Node fieldnums = 4 [json_name = "fieldnums"]; +inline int FieldStore::_internal_fieldnums_size() const { + return _internal_fieldnums().size(); } -inline int32_t CaseTestExpr::_internal_type_mod() const { - return _impl_.type_mod_; +inline int FieldStore::fieldnums_size() const { + return _internal_fieldnums_size(); } -inline int32_t CaseTestExpr::type_mod() const { - // @@protoc_insertion_point(field_get:pg_query.CaseTestExpr.type_mod) - return _internal_type_mod(); +inline void FieldStore::clear_fieldnums() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fieldnums_.Clear(); } -inline void CaseTestExpr::_internal_set_type_mod(int32_t value) { - - _impl_.type_mod_ = value; +inline ::pg_query::Node* FieldStore::mutable_fieldnums(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.FieldStore.fieldnums) + return _internal_mutable_fieldnums()->Mutable(index); } -inline void CaseTestExpr::set_type_mod(int32_t value) { - _internal_set_type_mod(value); - // @@protoc_insertion_point(field_set:pg_query.CaseTestExpr.type_mod) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* FieldStore::mutable_fieldnums() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.FieldStore.fieldnums) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_fieldnums(); +} +inline const ::pg_query::Node& FieldStore::fieldnums(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FieldStore.fieldnums) + return _internal_fieldnums().Get(index); +} +inline ::pg_query::Node* FieldStore::add_fieldnums() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_fieldnums()->Add(); + // @@protoc_insertion_point(field_add:pg_query.FieldStore.fieldnums) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& FieldStore::fieldnums() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.FieldStore.fieldnums) + return _internal_fieldnums(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +FieldStore::_internal_fieldnums() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fieldnums_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +FieldStore::_internal_mutable_fieldnums() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.fieldnums_; } -// uint32 collation = 4 [json_name = "collation"]; -inline void CaseTestExpr::clear_collation() { - _impl_.collation_ = 0u; +// uint32 resulttype = 5 [json_name = "resulttype"]; +inline void FieldStore::clear_resulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttype_ = 0u; } -inline uint32_t CaseTestExpr::_internal_collation() const { - return _impl_.collation_; +inline ::uint32_t FieldStore::resulttype() const { + // @@protoc_insertion_point(field_get:pg_query.FieldStore.resulttype) + return _internal_resulttype(); } -inline uint32_t CaseTestExpr::collation() const { - // @@protoc_insertion_point(field_get:pg_query.CaseTestExpr.collation) - return _internal_collation(); +inline void FieldStore::set_resulttype(::uint32_t value) { + _internal_set_resulttype(value); + // @@protoc_insertion_point(field_set:pg_query.FieldStore.resulttype) } -inline void CaseTestExpr::_internal_set_collation(uint32_t value) { - - _impl_.collation_ = value; +inline ::uint32_t FieldStore::_internal_resulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttype_; } -inline void CaseTestExpr::set_collation(uint32_t value) { - _internal_set_collation(value); - // @@protoc_insertion_point(field_set:pg_query.CaseTestExpr.collation) +inline void FieldStore::_internal_set_resulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttype_ = value; } // ------------------------------------------------------------------- -// ArrayExpr +// RelabelType // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool ArrayExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool ArrayExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool RelabelType::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void ArrayExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void RelabelType::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& ArrayExpr::_internal_xpr() const { +inline const ::pg_query::Node& RelabelType::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& ArrayExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.xpr) +inline const ::pg_query::Node& RelabelType::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RelabelType.xpr) return _internal_xpr(); } -inline void ArrayExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void RelabelType::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ArrayExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RelabelType.xpr) } -inline ::pg_query::Node* ArrayExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* RelabelType::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* ArrayExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.ArrayExpr.xpr) - +inline ::pg_query::Node* RelabelType::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RelabelType.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* ArrayExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* RelabelType::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* ArrayExpr::mutable_xpr() { +inline ::pg_query::Node* RelabelType::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.ArrayExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.RelabelType.xpr) return _msg; } -inline void ArrayExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RelabelType::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.ArrayExpr.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RelabelType.xpr) } -// uint32 array_typeid = 2 [json_name = "array_typeid"]; -inline void ArrayExpr::clear_array_typeid() { - _impl_.array_typeid_ = 0u; +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool RelabelType::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline uint32_t ArrayExpr::_internal_array_typeid() const { - return _impl_.array_typeid_; +inline void RelabelType::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline uint32_t ArrayExpr::array_typeid() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.array_typeid) - return _internal_array_typeid(); +inline const ::pg_query::Node& RelabelType::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void ArrayExpr::_internal_set_array_typeid(uint32_t value) { - - _impl_.array_typeid_ = value; +inline const ::pg_query::Node& RelabelType::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RelabelType.arg) + return _internal_arg(); } -inline void ArrayExpr::set_array_typeid(uint32_t value) { - _internal_set_array_typeid(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.array_typeid) +inline void RelabelType::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); + } + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RelabelType.arg) } +inline ::pg_query::Node* RelabelType::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// uint32 array_collid = 3 [json_name = "array_collid"]; -inline void ArrayExpr::clear_array_collid() { - _impl_.array_collid_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline uint32_t ArrayExpr::_internal_array_collid() const { - return _impl_.array_collid_; +inline ::pg_query::Node* RelabelType::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RelabelType.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; + return temp; } -inline uint32_t ArrayExpr::array_collid() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.array_collid) - return _internal_array_collid(); +inline ::pg_query::Node* RelabelType::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.arg_; } -inline void ArrayExpr::_internal_set_array_collid(uint32_t value) { - - _impl_.array_collid_ = value; +inline ::pg_query::Node* RelabelType::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.RelabelType.arg) + return _msg; } -inline void ArrayExpr::set_array_collid(uint32_t value) { - _internal_set_array_collid(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.array_collid) +inline void RelabelType::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RelabelType.arg) } -// uint32 element_typeid = 4 [json_name = "element_typeid"]; -inline void ArrayExpr::clear_element_typeid() { - _impl_.element_typeid_ = 0u; +// uint32 resulttype = 3 [json_name = "resulttype"]; +inline void RelabelType::clear_resulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttype_ = 0u; } -inline uint32_t ArrayExpr::_internal_element_typeid() const { - return _impl_.element_typeid_; +inline ::uint32_t RelabelType::resulttype() const { + // @@protoc_insertion_point(field_get:pg_query.RelabelType.resulttype) + return _internal_resulttype(); } -inline uint32_t ArrayExpr::element_typeid() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.element_typeid) - return _internal_element_typeid(); +inline void RelabelType::set_resulttype(::uint32_t value) { + _internal_set_resulttype(value); + // @@protoc_insertion_point(field_set:pg_query.RelabelType.resulttype) } -inline void ArrayExpr::_internal_set_element_typeid(uint32_t value) { - - _impl_.element_typeid_ = value; +inline ::uint32_t RelabelType::_internal_resulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttype_; } -inline void ArrayExpr::set_element_typeid(uint32_t value) { - _internal_set_element_typeid(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.element_typeid) +inline void RelabelType::_internal_set_resulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttype_ = value; } -// repeated .pg_query.Node elements = 5 [json_name = "elements"]; -inline int ArrayExpr::_internal_elements_size() const { - return _impl_.elements_.size(); +// int32 resulttypmod = 4 [json_name = "resulttypmod"]; +inline void RelabelType::clear_resulttypmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttypmod_ = 0; } -inline int ArrayExpr::elements_size() const { - return _internal_elements_size(); +inline ::int32_t RelabelType::resulttypmod() const { + // @@protoc_insertion_point(field_get:pg_query.RelabelType.resulttypmod) + return _internal_resulttypmod(); } -inline void ArrayExpr::clear_elements() { - _impl_.elements_.Clear(); +inline void RelabelType::set_resulttypmod(::int32_t value) { + _internal_set_resulttypmod(value); + // @@protoc_insertion_point(field_set:pg_query.RelabelType.resulttypmod) } -inline ::pg_query::Node* ArrayExpr::mutable_elements(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ArrayExpr.elements) - return _impl_.elements_.Mutable(index); +inline ::int32_t RelabelType::_internal_resulttypmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttypmod_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ArrayExpr::mutable_elements() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ArrayExpr.elements) - return &_impl_.elements_; +inline void RelabelType::_internal_set_resulttypmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttypmod_ = value; } -inline const ::pg_query::Node& ArrayExpr::_internal_elements(int index) const { - return _impl_.elements_.Get(index); + +// uint32 resultcollid = 5 [json_name = "resultcollid"]; +inline void RelabelType::clear_resultcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resultcollid_ = 0u; } -inline const ::pg_query::Node& ArrayExpr::elements(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.elements) - return _internal_elements(index); +inline ::uint32_t RelabelType::resultcollid() const { + // @@protoc_insertion_point(field_get:pg_query.RelabelType.resultcollid) + return _internal_resultcollid(); } -inline ::pg_query::Node* ArrayExpr::_internal_add_elements() { - return _impl_.elements_.Add(); +inline void RelabelType::set_resultcollid(::uint32_t value) { + _internal_set_resultcollid(value); + // @@protoc_insertion_point(field_set:pg_query.RelabelType.resultcollid) } -inline ::pg_query::Node* ArrayExpr::add_elements() { - ::pg_query::Node* _add = _internal_add_elements(); - // @@protoc_insertion_point(field_add:pg_query.ArrayExpr.elements) - return _add; +inline ::uint32_t RelabelType::_internal_resultcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resultcollid_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ArrayExpr::elements() const { - // @@protoc_insertion_point(field_list:pg_query.ArrayExpr.elements) - return _impl_.elements_; +inline void RelabelType::_internal_set_resultcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resultcollid_ = value; } -// bool multidims = 6 [json_name = "multidims"]; -inline void ArrayExpr::clear_multidims() { - _impl_.multidims_ = false; +// .pg_query.CoercionForm relabelformat = 6 [json_name = "relabelformat"]; +inline void RelabelType::clear_relabelformat() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relabelformat_ = 0; } -inline bool ArrayExpr::_internal_multidims() const { - return _impl_.multidims_; +inline ::pg_query::CoercionForm RelabelType::relabelformat() const { + // @@protoc_insertion_point(field_get:pg_query.RelabelType.relabelformat) + return _internal_relabelformat(); } -inline bool ArrayExpr::multidims() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.multidims) - return _internal_multidims(); +inline void RelabelType::set_relabelformat(::pg_query::CoercionForm value) { + _internal_set_relabelformat(value); + // @@protoc_insertion_point(field_set:pg_query.RelabelType.relabelformat) } -inline void ArrayExpr::_internal_set_multidims(bool value) { - - _impl_.multidims_ = value; +inline ::pg_query::CoercionForm RelabelType::_internal_relabelformat() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CoercionForm>(_impl_.relabelformat_); } -inline void ArrayExpr::set_multidims(bool value) { - _internal_set_multidims(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.multidims) +inline void RelabelType::_internal_set_relabelformat(::pg_query::CoercionForm value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relabelformat_ = value; } // int32 location = 7 [json_name = "location"]; -inline void ArrayExpr::clear_location() { +inline void RelabelType::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t ArrayExpr::_internal_location() const { - return _impl_.location_; -} -inline int32_t ArrayExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.location) +inline ::int32_t RelabelType::location() const { + // @@protoc_insertion_point(field_get:pg_query.RelabelType.location) return _internal_location(); } -inline void ArrayExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void ArrayExpr::set_location(int32_t value) { +inline void RelabelType::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.location) + // @@protoc_insertion_point(field_set:pg_query.RelabelType.location) +} +inline ::int32_t RelabelType::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void RelabelType::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// RowExpr +// CoerceViaIO // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool RowExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool RowExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool CoerceViaIO::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void RowExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void CoerceViaIO::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& RowExpr::_internal_xpr() const { +inline const ::pg_query::Node& CoerceViaIO::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& RowExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.RowExpr.xpr) +inline const ::pg_query::Node& CoerceViaIO::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.xpr) return _internal_xpr(); } -inline void RowExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void CoerceViaIO::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RowExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceViaIO.xpr) } -inline ::pg_query::Node* RowExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* CoerceViaIO::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* RowExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.RowExpr.xpr) - +inline ::pg_query::Node* CoerceViaIO::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CoerceViaIO.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* RowExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* CoerceViaIO::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* RowExpr::mutable_xpr() { +inline ::pg_query::Node* CoerceViaIO::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.RowExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.CoerceViaIO.xpr) return _msg; } -inline void RowExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CoerceViaIO::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.RowExpr.xpr) -} -// repeated .pg_query.Node args = 2 [json_name = "args"]; -inline int RowExpr::_internal_args_size() const { - return _impl_.args_.size(); -} -inline int RowExpr::args_size() const { - return _internal_args_size(); -} -inline void RowExpr::clear_args() { - _impl_.args_.Clear(); -} -inline ::pg_query::Node* RowExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RowExpr.args) - return _impl_.args_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RowExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RowExpr.args) - return &_impl_.args_; + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceViaIO.xpr) } -inline const ::pg_query::Node& RowExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool CoerceViaIO::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline const ::pg_query::Node& RowExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RowExpr.args) - return _internal_args(index); +inline void CoerceViaIO::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::Node* RowExpr::_internal_add_args() { - return _impl_.args_.Add(); +inline const ::pg_query::Node& CoerceViaIO::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* RowExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.RowExpr.args) - return _add; +inline const ::pg_query::Node& CoerceViaIO::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.arg) + return _internal_arg(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RowExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.RowExpr.args) - return _impl_.args_; +inline void CoerceViaIO::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); + } + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceViaIO.arg) } +inline ::pg_query::Node* CoerceViaIO::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// uint32 row_typeid = 3 [json_name = "row_typeid"]; -inline void RowExpr::clear_row_typeid() { - _impl_.row_typeid_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline uint32_t RowExpr::_internal_row_typeid() const { - return _impl_.row_typeid_; +inline ::pg_query::Node* CoerceViaIO::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CoerceViaIO.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; + return temp; } -inline uint32_t RowExpr::row_typeid() const { - // @@protoc_insertion_point(field_get:pg_query.RowExpr.row_typeid) - return _internal_row_typeid(); +inline ::pg_query::Node* CoerceViaIO::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.arg_; } -inline void RowExpr::_internal_set_row_typeid(uint32_t value) { - - _impl_.row_typeid_ = value; +inline ::pg_query::Node* CoerceViaIO::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.CoerceViaIO.arg) + return _msg; } -inline void RowExpr::set_row_typeid(uint32_t value) { - _internal_set_row_typeid(value); - // @@protoc_insertion_point(field_set:pg_query.RowExpr.row_typeid) +inline void CoerceViaIO::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceViaIO.arg) } -// .pg_query.CoercionForm row_format = 4 [json_name = "row_format"]; -inline void RowExpr::clear_row_format() { - _impl_.row_format_ = 0; +// uint32 resulttype = 3 [json_name = "resulttype"]; +inline void CoerceViaIO::clear_resulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttype_ = 0u; } -inline ::pg_query::CoercionForm RowExpr::_internal_row_format() const { - return static_cast< ::pg_query::CoercionForm >(_impl_.row_format_); +inline ::uint32_t CoerceViaIO::resulttype() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.resulttype) + return _internal_resulttype(); } -inline ::pg_query::CoercionForm RowExpr::row_format() const { - // @@protoc_insertion_point(field_get:pg_query.RowExpr.row_format) - return _internal_row_format(); +inline void CoerceViaIO::set_resulttype(::uint32_t value) { + _internal_set_resulttype(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceViaIO.resulttype) } -inline void RowExpr::_internal_set_row_format(::pg_query::CoercionForm value) { - - _impl_.row_format_ = value; +inline ::uint32_t CoerceViaIO::_internal_resulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttype_; } -inline void RowExpr::set_row_format(::pg_query::CoercionForm value) { - _internal_set_row_format(value); - // @@protoc_insertion_point(field_set:pg_query.RowExpr.row_format) +inline void CoerceViaIO::_internal_set_resulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttype_ = value; } -// repeated .pg_query.Node colnames = 5 [json_name = "colnames"]; -inline int RowExpr::_internal_colnames_size() const { - return _impl_.colnames_.size(); +// uint32 resultcollid = 4 [json_name = "resultcollid"]; +inline void CoerceViaIO::clear_resultcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resultcollid_ = 0u; } -inline int RowExpr::colnames_size() const { - return _internal_colnames_size(); +inline ::uint32_t CoerceViaIO::resultcollid() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.resultcollid) + return _internal_resultcollid(); } -inline void RowExpr::clear_colnames() { - _impl_.colnames_.Clear(); +inline void CoerceViaIO::set_resultcollid(::uint32_t value) { + _internal_set_resultcollid(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceViaIO.resultcollid) } -inline ::pg_query::Node* RowExpr::mutable_colnames(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RowExpr.colnames) - return _impl_.colnames_.Mutable(index); +inline ::uint32_t CoerceViaIO::_internal_resultcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resultcollid_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RowExpr::mutable_colnames() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RowExpr.colnames) - return &_impl_.colnames_; +inline void CoerceViaIO::_internal_set_resultcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resultcollid_ = value; } -inline const ::pg_query::Node& RowExpr::_internal_colnames(int index) const { - return _impl_.colnames_.Get(index); + +// .pg_query.CoercionForm coerceformat = 5 [json_name = "coerceformat"]; +inline void CoerceViaIO::clear_coerceformat() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coerceformat_ = 0; } -inline const ::pg_query::Node& RowExpr::colnames(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RowExpr.colnames) - return _internal_colnames(index); +inline ::pg_query::CoercionForm CoerceViaIO::coerceformat() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.coerceformat) + return _internal_coerceformat(); } -inline ::pg_query::Node* RowExpr::_internal_add_colnames() { - return _impl_.colnames_.Add(); +inline void CoerceViaIO::set_coerceformat(::pg_query::CoercionForm value) { + _internal_set_coerceformat(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceViaIO.coerceformat) } -inline ::pg_query::Node* RowExpr::add_colnames() { - ::pg_query::Node* _add = _internal_add_colnames(); - // @@protoc_insertion_point(field_add:pg_query.RowExpr.colnames) - return _add; +inline ::pg_query::CoercionForm CoerceViaIO::_internal_coerceformat() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CoercionForm>(_impl_.coerceformat_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RowExpr::colnames() const { - // @@protoc_insertion_point(field_list:pg_query.RowExpr.colnames) - return _impl_.colnames_; +inline void CoerceViaIO::_internal_set_coerceformat(::pg_query::CoercionForm value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.coerceformat_ = value; } // int32 location = 6 [json_name = "location"]; -inline void RowExpr::clear_location() { +inline void CoerceViaIO::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t RowExpr::_internal_location() const { - return _impl_.location_; -} -inline int32_t RowExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.RowExpr.location) +inline ::int32_t CoerceViaIO::location() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceViaIO.location) return _internal_location(); } -inline void RowExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void RowExpr::set_location(int32_t value) { +inline void CoerceViaIO::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.RowExpr.location) + // @@protoc_insertion_point(field_set:pg_query.CoerceViaIO.location) +} +inline ::int32_t CoerceViaIO::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void CoerceViaIO::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// RowCompareExpr +// ArrayCoerceExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool RowCompareExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool RowCompareExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool ArrayCoerceExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void RowCompareExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void ArrayCoerceExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& RowCompareExpr::_internal_xpr() const { +inline const ::pg_query::Node& ArrayCoerceExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& RowCompareExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.xpr) +inline const ::pg_query::Node& ArrayCoerceExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.xpr) return _internal_xpr(); } -inline void RowCompareExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void ArrayCoerceExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RowCompareExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ArrayCoerceExpr.xpr) } -inline ::pg_query::Node* RowCompareExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* ArrayCoerceExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* RowCompareExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.RowCompareExpr.xpr) - +inline ::pg_query::Node* ArrayCoerceExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ArrayCoerceExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* RowCompareExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* ArrayCoerceExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* RowCompareExpr::mutable_xpr() { +inline ::pg_query::Node* ArrayCoerceExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.ArrayCoerceExpr.xpr) return _msg; } -inline void RowCompareExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ArrayCoerceExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.RowCompareExpr.xpr) -} -// .pg_query.RowCompareType rctype = 2 [json_name = "rctype"]; -inline void RowCompareExpr::clear_rctype() { - _impl_.rctype_ = 0; -} -inline ::pg_query::RowCompareType RowCompareExpr::_internal_rctype() const { - return static_cast< ::pg_query::RowCompareType >(_impl_.rctype_); -} -inline ::pg_query::RowCompareType RowCompareExpr::rctype() const { - // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.rctype) - return _internal_rctype(); -} -inline void RowCompareExpr::_internal_set_rctype(::pg_query::RowCompareType value) { - - _impl_.rctype_ = value; -} -inline void RowCompareExpr::set_rctype(::pg_query::RowCompareType value) { - _internal_set_rctype(value); - // @@protoc_insertion_point(field_set:pg_query.RowCompareExpr.rctype) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ArrayCoerceExpr.xpr) } -// repeated .pg_query.Node opnos = 3 [json_name = "opnos"]; -inline int RowCompareExpr::_internal_opnos_size() const { - return _impl_.opnos_.size(); -} -inline int RowCompareExpr::opnos_size() const { - return _internal_opnos_size(); -} -inline void RowCompareExpr::clear_opnos() { - _impl_.opnos_.Clear(); -} -inline ::pg_query::Node* RowCompareExpr::mutable_opnos(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.opnos) - return _impl_.opnos_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RowCompareExpr::mutable_opnos() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.opnos) - return &_impl_.opnos_; -} -inline const ::pg_query::Node& RowCompareExpr::_internal_opnos(int index) const { - return _impl_.opnos_.Get(index); +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool ArrayCoerceExpr::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline const ::pg_query::Node& RowCompareExpr::opnos(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.opnos) - return _internal_opnos(index); +inline void ArrayCoerceExpr::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::Node* RowCompareExpr::_internal_add_opnos() { - return _impl_.opnos_.Add(); +inline const ::pg_query::Node& ArrayCoerceExpr::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* RowCompareExpr::add_opnos() { - ::pg_query::Node* _add = _internal_add_opnos(); - // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.opnos) - return _add; +inline const ::pg_query::Node& ArrayCoerceExpr::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.arg) + return _internal_arg(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RowCompareExpr::opnos() const { - // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.opnos) - return _impl_.opnos_; +inline void ArrayCoerceExpr::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); + } + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ArrayCoerceExpr.arg) } +inline ::pg_query::Node* ArrayCoerceExpr::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node opfamilies = 4 [json_name = "opfamilies"]; -inline int RowCompareExpr::_internal_opfamilies_size() const { - return _impl_.opfamilies_.size(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int RowCompareExpr::opfamilies_size() const { - return _internal_opfamilies_size(); +inline ::pg_query::Node* ArrayCoerceExpr::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ArrayCoerceExpr.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; + return temp; } -inline void RowCompareExpr::clear_opfamilies() { - _impl_.opfamilies_.Clear(); +inline ::pg_query::Node* ArrayCoerceExpr::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.arg_; } -inline ::pg_query::Node* RowCompareExpr::mutable_opfamilies(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.opfamilies) - return _impl_.opfamilies_.Mutable(index); +inline ::pg_query::Node* ArrayCoerceExpr::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.ArrayCoerceExpr.arg) + return _msg; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RowCompareExpr::mutable_opfamilies() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.opfamilies) - return &_impl_.opfamilies_; +inline void ArrayCoerceExpr::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ArrayCoerceExpr.arg) } -inline const ::pg_query::Node& RowCompareExpr::_internal_opfamilies(int index) const { - return _impl_.opfamilies_.Get(index); + +// .pg_query.Node elemexpr = 3 [json_name = "elemexpr"]; +inline bool ArrayCoerceExpr::has_elemexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.elemexpr_ != nullptr); + return value; } -inline const ::pg_query::Node& RowCompareExpr::opfamilies(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.opfamilies) - return _internal_opfamilies(index); +inline void ArrayCoerceExpr::clear_elemexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.elemexpr_ != nullptr) _impl_.elemexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline ::pg_query::Node* RowCompareExpr::_internal_add_opfamilies() { - return _impl_.opfamilies_.Add(); +inline const ::pg_query::Node& ArrayCoerceExpr::_internal_elemexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.elemexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* RowCompareExpr::add_opfamilies() { - ::pg_query::Node* _add = _internal_add_opfamilies(); - // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.opfamilies) - return _add; +inline const ::pg_query::Node& ArrayCoerceExpr::elemexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.elemexpr) + return _internal_elemexpr(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RowCompareExpr::opfamilies() const { - // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.opfamilies) - return _impl_.opfamilies_; +inline void ArrayCoerceExpr::unsafe_arena_set_allocated_elemexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.elemexpr_); + } + _impl_.elemexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ArrayCoerceExpr.elemexpr) } +inline ::pg_query::Node* ArrayCoerceExpr::release_elemexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node inputcollids = 5 [json_name = "inputcollids"]; -inline int RowCompareExpr::_internal_inputcollids_size() const { - return _impl_.inputcollids_.size(); + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.elemexpr_; + _impl_.elemexpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int RowCompareExpr::inputcollids_size() const { - return _internal_inputcollids_size(); +inline ::pg_query::Node* ArrayCoerceExpr::unsafe_arena_release_elemexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ArrayCoerceExpr.elemexpr) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.elemexpr_; + _impl_.elemexpr_ = nullptr; + return temp; } -inline void RowCompareExpr::clear_inputcollids() { - _impl_.inputcollids_.Clear(); +inline ::pg_query::Node* ArrayCoerceExpr::_internal_mutable_elemexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.elemexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.elemexpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.elemexpr_; } -inline ::pg_query::Node* RowCompareExpr::mutable_inputcollids(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.inputcollids) - return _impl_.inputcollids_.Mutable(index); +inline ::pg_query::Node* ArrayCoerceExpr::mutable_elemexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_elemexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.ArrayCoerceExpr.elemexpr) + return _msg; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RowCompareExpr::mutable_inputcollids() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.inputcollids) - return &_impl_.inputcollids_; +inline void ArrayCoerceExpr::set_allocated_elemexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.elemexpr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.elemexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ArrayCoerceExpr.elemexpr) } -inline const ::pg_query::Node& RowCompareExpr::_internal_inputcollids(int index) const { - return _impl_.inputcollids_.Get(index); + +// uint32 resulttype = 4 [json_name = "resulttype"]; +inline void ArrayCoerceExpr::clear_resulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttype_ = 0u; } -inline const ::pg_query::Node& RowCompareExpr::inputcollids(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.inputcollids) - return _internal_inputcollids(index); +inline ::uint32_t ArrayCoerceExpr::resulttype() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.resulttype) + return _internal_resulttype(); } -inline ::pg_query::Node* RowCompareExpr::_internal_add_inputcollids() { - return _impl_.inputcollids_.Add(); +inline void ArrayCoerceExpr::set_resulttype(::uint32_t value) { + _internal_set_resulttype(value); + // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.resulttype) } -inline ::pg_query::Node* RowCompareExpr::add_inputcollids() { - ::pg_query::Node* _add = _internal_add_inputcollids(); - // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.inputcollids) - return _add; +inline ::uint32_t ArrayCoerceExpr::_internal_resulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttype_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RowCompareExpr::inputcollids() const { - // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.inputcollids) - return _impl_.inputcollids_; +inline void ArrayCoerceExpr::_internal_set_resulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttype_ = value; } -// repeated .pg_query.Node largs = 6 [json_name = "largs"]; -inline int RowCompareExpr::_internal_largs_size() const { - return _impl_.largs_.size(); +// int32 resulttypmod = 5 [json_name = "resulttypmod"]; +inline void ArrayCoerceExpr::clear_resulttypmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttypmod_ = 0; } -inline int RowCompareExpr::largs_size() const { - return _internal_largs_size(); +inline ::int32_t ArrayCoerceExpr::resulttypmod() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.resulttypmod) + return _internal_resulttypmod(); } -inline void RowCompareExpr::clear_largs() { - _impl_.largs_.Clear(); +inline void ArrayCoerceExpr::set_resulttypmod(::int32_t value) { + _internal_set_resulttypmod(value); + // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.resulttypmod) } -inline ::pg_query::Node* RowCompareExpr::mutable_largs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.largs) - return _impl_.largs_.Mutable(index); +inline ::int32_t ArrayCoerceExpr::_internal_resulttypmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttypmod_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RowCompareExpr::mutable_largs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.largs) - return &_impl_.largs_; +inline void ArrayCoerceExpr::_internal_set_resulttypmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttypmod_ = value; } -inline const ::pg_query::Node& RowCompareExpr::_internal_largs(int index) const { - return _impl_.largs_.Get(index); + +// uint32 resultcollid = 6 [json_name = "resultcollid"]; +inline void ArrayCoerceExpr::clear_resultcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resultcollid_ = 0u; } -inline const ::pg_query::Node& RowCompareExpr::largs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.largs) - return _internal_largs(index); +inline ::uint32_t ArrayCoerceExpr::resultcollid() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.resultcollid) + return _internal_resultcollid(); } -inline ::pg_query::Node* RowCompareExpr::_internal_add_largs() { - return _impl_.largs_.Add(); +inline void ArrayCoerceExpr::set_resultcollid(::uint32_t value) { + _internal_set_resultcollid(value); + // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.resultcollid) } -inline ::pg_query::Node* RowCompareExpr::add_largs() { - ::pg_query::Node* _add = _internal_add_largs(); - // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.largs) - return _add; +inline ::uint32_t ArrayCoerceExpr::_internal_resultcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resultcollid_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RowCompareExpr::largs() const { - // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.largs) - return _impl_.largs_; +inline void ArrayCoerceExpr::_internal_set_resultcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resultcollid_ = value; } -// repeated .pg_query.Node rargs = 7 [json_name = "rargs"]; -inline int RowCompareExpr::_internal_rargs_size() const { - return _impl_.rargs_.size(); +// .pg_query.CoercionForm coerceformat = 7 [json_name = "coerceformat"]; +inline void ArrayCoerceExpr::clear_coerceformat() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coerceformat_ = 0; } -inline int RowCompareExpr::rargs_size() const { - return _internal_rargs_size(); +inline ::pg_query::CoercionForm ArrayCoerceExpr::coerceformat() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.coerceformat) + return _internal_coerceformat(); } -inline void RowCompareExpr::clear_rargs() { - _impl_.rargs_.Clear(); +inline void ArrayCoerceExpr::set_coerceformat(::pg_query::CoercionForm value) { + _internal_set_coerceformat(value); + // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.coerceformat) } -inline ::pg_query::Node* RowCompareExpr::mutable_rargs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.rargs) - return _impl_.rargs_.Mutable(index); +inline ::pg_query::CoercionForm ArrayCoerceExpr::_internal_coerceformat() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CoercionForm>(_impl_.coerceformat_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RowCompareExpr::mutable_rargs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.rargs) - return &_impl_.rargs_; +inline void ArrayCoerceExpr::_internal_set_coerceformat(::pg_query::CoercionForm value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.coerceformat_ = value; } -inline const ::pg_query::Node& RowCompareExpr::_internal_rargs(int index) const { - return _impl_.rargs_.Get(index); + +// int32 location = 8 [json_name = "location"]; +inline void ArrayCoerceExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& RowCompareExpr::rargs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.rargs) - return _internal_rargs(index); +inline ::int32_t ArrayCoerceExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayCoerceExpr.location) + return _internal_location(); } -inline ::pg_query::Node* RowCompareExpr::_internal_add_rargs() { - return _impl_.rargs_.Add(); +inline void ArrayCoerceExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.ArrayCoerceExpr.location) } -inline ::pg_query::Node* RowCompareExpr::add_rargs() { - ::pg_query::Node* _add = _internal_add_rargs(); - // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.rargs) - return _add; +inline ::int32_t ArrayCoerceExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RowCompareExpr::rargs() const { - // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.rargs) - return _impl_.rargs_; +inline void ArrayCoerceExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// CoalesceExpr +// ConvertRowtypeExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool CoalesceExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool CoalesceExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool ConvertRowtypeExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void CoalesceExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void ConvertRowtypeExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& CoalesceExpr::_internal_xpr() const { +inline const ::pg_query::Node& ConvertRowtypeExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CoalesceExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.xpr) +inline const ::pg_query::Node& ConvertRowtypeExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.xpr) return _internal_xpr(); } -inline void CoalesceExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void ConvertRowtypeExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoalesceExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ConvertRowtypeExpr.xpr) } -inline ::pg_query::Node* CoalesceExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* ConvertRowtypeExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CoalesceExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.CoalesceExpr.xpr) - +inline ::pg_query::Node* ConvertRowtypeExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ConvertRowtypeExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* CoalesceExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* ConvertRowtypeExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* CoalesceExpr::mutable_xpr() { +inline ::pg_query::Node* ConvertRowtypeExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CoalesceExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.ConvertRowtypeExpr.xpr) return _msg; } -inline void CoalesceExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ConvertRowtypeExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CoalesceExpr.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ConvertRowtypeExpr.xpr) } -// uint32 coalescetype = 2 [json_name = "coalescetype"]; -inline void CoalesceExpr::clear_coalescetype() { - _impl_.coalescetype_ = 0u; +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool ConvertRowtypeExpr::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline uint32_t CoalesceExpr::_internal_coalescetype() const { - return _impl_.coalescetype_; +inline void ConvertRowtypeExpr::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline uint32_t CoalesceExpr::coalescetype() const { - // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.coalescetype) - return _internal_coalescetype(); +inline const ::pg_query::Node& ConvertRowtypeExpr::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void CoalesceExpr::_internal_set_coalescetype(uint32_t value) { - - _impl_.coalescetype_ = value; +inline const ::pg_query::Node& ConvertRowtypeExpr::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.arg) + return _internal_arg(); } -inline void CoalesceExpr::set_coalescetype(uint32_t value) { - _internal_set_coalescetype(value); - // @@protoc_insertion_point(field_set:pg_query.CoalesceExpr.coalescetype) +inline void ConvertRowtypeExpr::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); + } + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ConvertRowtypeExpr.arg) } +inline ::pg_query::Node* ConvertRowtypeExpr::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// uint32 coalescecollid = 3 [json_name = "coalescecollid"]; -inline void CoalesceExpr::clear_coalescecollid() { - _impl_.coalescecollid_ = 0u; + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline uint32_t CoalesceExpr::_internal_coalescecollid() const { - return _impl_.coalescecollid_; +inline ::pg_query::Node* ConvertRowtypeExpr::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ConvertRowtypeExpr.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; + return temp; } -inline uint32_t CoalesceExpr::coalescecollid() const { - // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.coalescecollid) - return _internal_coalescecollid(); +inline ::pg_query::Node* ConvertRowtypeExpr::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.arg_; } -inline void CoalesceExpr::_internal_set_coalescecollid(uint32_t value) { - - _impl_.coalescecollid_ = value; +inline ::pg_query::Node* ConvertRowtypeExpr::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.ConvertRowtypeExpr.arg) + return _msg; } -inline void CoalesceExpr::set_coalescecollid(uint32_t value) { - _internal_set_coalescecollid(value); - // @@protoc_insertion_point(field_set:pg_query.CoalesceExpr.coalescecollid) +inline void ConvertRowtypeExpr::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ConvertRowtypeExpr.arg) } -// repeated .pg_query.Node args = 4 [json_name = "args"]; -inline int CoalesceExpr::_internal_args_size() const { - return _impl_.args_.size(); +// uint32 resulttype = 3 [json_name = "resulttype"]; +inline void ConvertRowtypeExpr::clear_resulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttype_ = 0u; } -inline int CoalesceExpr::args_size() const { - return _internal_args_size(); +inline ::uint32_t ConvertRowtypeExpr::resulttype() const { + // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.resulttype) + return _internal_resulttype(); } -inline void CoalesceExpr::clear_args() { - _impl_.args_.Clear(); +inline void ConvertRowtypeExpr::set_resulttype(::uint32_t value) { + _internal_set_resulttype(value); + // @@protoc_insertion_point(field_set:pg_query.ConvertRowtypeExpr.resulttype) } -inline ::pg_query::Node* CoalesceExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CoalesceExpr.args) - return _impl_.args_.Mutable(index); +inline ::uint32_t ConvertRowtypeExpr::_internal_resulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttype_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CoalesceExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CoalesceExpr.args) - return &_impl_.args_; +inline void ConvertRowtypeExpr::_internal_set_resulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttype_ = value; } -inline const ::pg_query::Node& CoalesceExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// .pg_query.CoercionForm convertformat = 4 [json_name = "convertformat"]; +inline void ConvertRowtypeExpr::clear_convertformat() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.convertformat_ = 0; } -inline const ::pg_query::Node& CoalesceExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.args) - return _internal_args(index); +inline ::pg_query::CoercionForm ConvertRowtypeExpr::convertformat() const { + // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.convertformat) + return _internal_convertformat(); } -inline ::pg_query::Node* CoalesceExpr::_internal_add_args() { - return _impl_.args_.Add(); +inline void ConvertRowtypeExpr::set_convertformat(::pg_query::CoercionForm value) { + _internal_set_convertformat(value); + // @@protoc_insertion_point(field_set:pg_query.ConvertRowtypeExpr.convertformat) } -inline ::pg_query::Node* CoalesceExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.CoalesceExpr.args) - return _add; +inline ::pg_query::CoercionForm ConvertRowtypeExpr::_internal_convertformat() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CoercionForm>(_impl_.convertformat_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CoalesceExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.CoalesceExpr.args) - return _impl_.args_; +inline void ConvertRowtypeExpr::_internal_set_convertformat(::pg_query::CoercionForm value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.convertformat_ = value; } // int32 location = 5 [json_name = "location"]; -inline void CoalesceExpr::clear_location() { +inline void ConvertRowtypeExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t CoalesceExpr::_internal_location() const { - return _impl_.location_; -} -inline int32_t CoalesceExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.location) +inline ::int32_t ConvertRowtypeExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.ConvertRowtypeExpr.location) return _internal_location(); } -inline void CoalesceExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void CoalesceExpr::set_location(int32_t value) { +inline void ConvertRowtypeExpr::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CoalesceExpr.location) + // @@protoc_insertion_point(field_set:pg_query.ConvertRowtypeExpr.location) +} +inline ::int32_t ConvertRowtypeExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void ConvertRowtypeExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// MinMaxExpr +// CollateExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool MinMaxExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool MinMaxExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool CollateExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void MinMaxExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void CollateExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& MinMaxExpr::_internal_xpr() const { +inline const ::pg_query::Node& CollateExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& MinMaxExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.xpr) +inline const ::pg_query::Node& CollateExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CollateExpr.xpr) return _internal_xpr(); } -inline void MinMaxExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void CollateExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MinMaxExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CollateExpr.xpr) } -inline ::pg_query::Node* MinMaxExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* CollateExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* MinMaxExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.MinMaxExpr.xpr) - +inline ::pg_query::Node* CollateExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CollateExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* MinMaxExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* CollateExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* MinMaxExpr::mutable_xpr() { +inline ::pg_query::Node* CollateExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.MinMaxExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.CollateExpr.xpr) return _msg; } -inline void MinMaxExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CollateExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.MinMaxExpr.xpr) -} -// uint32 minmaxtype = 2 [json_name = "minmaxtype"]; -inline void MinMaxExpr::clear_minmaxtype() { - _impl_.minmaxtype_ = 0u; -} -inline uint32_t MinMaxExpr::_internal_minmaxtype() const { - return _impl_.minmaxtype_; -} -inline uint32_t MinMaxExpr::minmaxtype() const { - // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.minmaxtype) - return _internal_minmaxtype(); -} -inline void MinMaxExpr::_internal_set_minmaxtype(uint32_t value) { - - _impl_.minmaxtype_ = value; -} -inline void MinMaxExpr::set_minmaxtype(uint32_t value) { - _internal_set_minmaxtype(value); - // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.minmaxtype) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CollateExpr.xpr) } -// uint32 minmaxcollid = 3 [json_name = "minmaxcollid"]; -inline void MinMaxExpr::clear_minmaxcollid() { - _impl_.minmaxcollid_ = 0u; +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool CollateExpr::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline uint32_t MinMaxExpr::_internal_minmaxcollid() const { - return _impl_.minmaxcollid_; +inline void CollateExpr::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline uint32_t MinMaxExpr::minmaxcollid() const { - // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.minmaxcollid) - return _internal_minmaxcollid(); +inline const ::pg_query::Node& CollateExpr::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void MinMaxExpr::_internal_set_minmaxcollid(uint32_t value) { - - _impl_.minmaxcollid_ = value; +inline const ::pg_query::Node& CollateExpr::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CollateExpr.arg) + return _internal_arg(); } -inline void MinMaxExpr::set_minmaxcollid(uint32_t value) { - _internal_set_minmaxcollid(value); - // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.minmaxcollid) +inline void CollateExpr::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); + } + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CollateExpr.arg) } +inline ::pg_query::Node* CollateExpr::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// uint32 inputcollid = 4 [json_name = "inputcollid"]; -inline void MinMaxExpr::clear_inputcollid() { - _impl_.inputcollid_ = 0u; -} -inline uint32_t MinMaxExpr::_internal_inputcollid() const { - return _impl_.inputcollid_; -} -inline uint32_t MinMaxExpr::inputcollid() const { - // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.inputcollid) - return _internal_inputcollid(); -} -inline void MinMaxExpr::_internal_set_inputcollid(uint32_t value) { - - _impl_.inputcollid_ = value; -} -inline void MinMaxExpr::set_inputcollid(uint32_t value) { - _internal_set_inputcollid(value); - // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.inputcollid) + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* CollateExpr::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CollateExpr.arg) -// .pg_query.MinMaxOp op = 5 [json_name = "op"]; -inline void MinMaxExpr::clear_op() { - _impl_.op_ = 0; -} -inline ::pg_query::MinMaxOp MinMaxExpr::_internal_op() const { - return static_cast< ::pg_query::MinMaxOp >(_impl_.op_); -} -inline ::pg_query::MinMaxOp MinMaxExpr::op() const { - // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.op) - return _internal_op(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; + return temp; } -inline void MinMaxExpr::_internal_set_op(::pg_query::MinMaxOp value) { - - _impl_.op_ = value; +inline ::pg_query::Node* CollateExpr::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.arg_; } -inline void MinMaxExpr::set_op(::pg_query::MinMaxOp value) { - _internal_set_op(value); - // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.op) +inline ::pg_query::Node* CollateExpr::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.CollateExpr.arg) + return _msg; } +inline void CollateExpr::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); + } -// repeated .pg_query.Node args = 6 [json_name = "args"]; -inline int MinMaxExpr::_internal_args_size() const { - return _impl_.args_.size(); -} -inline int MinMaxExpr::args_size() const { - return _internal_args_size(); -} -inline void MinMaxExpr::clear_args() { - _impl_.args_.Clear(); -} -inline ::pg_query::Node* MinMaxExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.MinMaxExpr.args) - return _impl_.args_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -MinMaxExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.MinMaxExpr.args) - return &_impl_.args_; + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CollateExpr.arg) } -inline const ::pg_query::Node& MinMaxExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// uint32 coll_oid = 3 [json_name = "collOid"]; +inline void CollateExpr::clear_coll_oid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coll_oid_ = 0u; } -inline const ::pg_query::Node& MinMaxExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.args) - return _internal_args(index); +inline ::uint32_t CollateExpr::coll_oid() const { + // @@protoc_insertion_point(field_get:pg_query.CollateExpr.coll_oid) + return _internal_coll_oid(); } -inline ::pg_query::Node* MinMaxExpr::_internal_add_args() { - return _impl_.args_.Add(); +inline void CollateExpr::set_coll_oid(::uint32_t value) { + _internal_set_coll_oid(value); + // @@protoc_insertion_point(field_set:pg_query.CollateExpr.coll_oid) } -inline ::pg_query::Node* MinMaxExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.MinMaxExpr.args) - return _add; +inline ::uint32_t CollateExpr::_internal_coll_oid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coll_oid_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -MinMaxExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.MinMaxExpr.args) - return _impl_.args_; +inline void CollateExpr::_internal_set_coll_oid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.coll_oid_ = value; } -// int32 location = 7 [json_name = "location"]; -inline void MinMaxExpr::clear_location() { +// int32 location = 4 [json_name = "location"]; +inline void CollateExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t MinMaxExpr::_internal_location() const { - return _impl_.location_; -} -inline int32_t MinMaxExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.location) +inline ::int32_t CollateExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.CollateExpr.location) return _internal_location(); } -inline void MinMaxExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void MinMaxExpr::set_location(int32_t value) { +inline void CollateExpr::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.location) + // @@protoc_insertion_point(field_set:pg_query.CollateExpr.location) +} +inline ::int32_t CollateExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void CollateExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// SQLValueFunction +// CaseExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool SQLValueFunction::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool SQLValueFunction::has_xpr() const { - return _internal_has_xpr(); +inline bool CaseExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void SQLValueFunction::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void CaseExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& SQLValueFunction::_internal_xpr() const { +inline const ::pg_query::Node& CaseExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& SQLValueFunction::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.xpr) +inline const ::pg_query::Node& CaseExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CaseExpr.xpr) return _internal_xpr(); } -inline void SQLValueFunction::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void CaseExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SQLValueFunction.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseExpr.xpr) } -inline ::pg_query::Node* SQLValueFunction::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* CaseExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SQLValueFunction::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.SQLValueFunction.xpr) - +inline ::pg_query::Node* CaseExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CaseExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* SQLValueFunction::_internal_mutable_xpr() { - +inline ::pg_query::Node* CaseExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* SQLValueFunction::mutable_xpr() { +inline ::pg_query::Node* CaseExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.SQLValueFunction.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.CaseExpr.xpr) return _msg; } -inline void SQLValueFunction::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CaseExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.SQLValueFunction.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CaseExpr.xpr) } -// .pg_query.SQLValueFunctionOp op = 2 [json_name = "op"]; -inline void SQLValueFunction::clear_op() { - _impl_.op_ = 0; +// uint32 casetype = 2 [json_name = "casetype"]; +inline void CaseExpr::clear_casetype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.casetype_ = 0u; } -inline ::pg_query::SQLValueFunctionOp SQLValueFunction::_internal_op() const { - return static_cast< ::pg_query::SQLValueFunctionOp >(_impl_.op_); +inline ::uint32_t CaseExpr::casetype() const { + // @@protoc_insertion_point(field_get:pg_query.CaseExpr.casetype) + return _internal_casetype(); } -inline ::pg_query::SQLValueFunctionOp SQLValueFunction::op() const { - // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.op) - return _internal_op(); +inline void CaseExpr::set_casetype(::uint32_t value) { + _internal_set_casetype(value); + // @@protoc_insertion_point(field_set:pg_query.CaseExpr.casetype) } -inline void SQLValueFunction::_internal_set_op(::pg_query::SQLValueFunctionOp value) { - - _impl_.op_ = value; +inline ::uint32_t CaseExpr::_internal_casetype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.casetype_; } -inline void SQLValueFunction::set_op(::pg_query::SQLValueFunctionOp value) { - _internal_set_op(value); - // @@protoc_insertion_point(field_set:pg_query.SQLValueFunction.op) +inline void CaseExpr::_internal_set_casetype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.casetype_ = value; } -// uint32 type = 3 [json_name = "type"]; -inline void SQLValueFunction::clear_type() { - _impl_.type_ = 0u; +// uint32 casecollid = 3 [json_name = "casecollid"]; +inline void CaseExpr::clear_casecollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.casecollid_ = 0u; } -inline uint32_t SQLValueFunction::_internal_type() const { - return _impl_.type_; +inline ::uint32_t CaseExpr::casecollid() const { + // @@protoc_insertion_point(field_get:pg_query.CaseExpr.casecollid) + return _internal_casecollid(); } -inline uint32_t SQLValueFunction::type() const { - // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.type) - return _internal_type(); +inline void CaseExpr::set_casecollid(::uint32_t value) { + _internal_set_casecollid(value); + // @@protoc_insertion_point(field_set:pg_query.CaseExpr.casecollid) } -inline void SQLValueFunction::_internal_set_type(uint32_t value) { - - _impl_.type_ = value; +inline ::uint32_t CaseExpr::_internal_casecollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.casecollid_; } -inline void SQLValueFunction::set_type(uint32_t value) { - _internal_set_type(value); - // @@protoc_insertion_point(field_set:pg_query.SQLValueFunction.type) +inline void CaseExpr::_internal_set_casecollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.casecollid_ = value; } -// int32 typmod = 4 [json_name = "typmod"]; -inline void SQLValueFunction::clear_typmod() { - _impl_.typmod_ = 0; +// .pg_query.Node arg = 4 [json_name = "arg"]; +inline bool CaseExpr::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline int32_t SQLValueFunction::_internal_typmod() const { - return _impl_.typmod_; +inline void CaseExpr::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline int32_t SQLValueFunction::typmod() const { - // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.typmod) - return _internal_typmod(); +inline const ::pg_query::Node& CaseExpr::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void SQLValueFunction::_internal_set_typmod(int32_t value) { - - _impl_.typmod_ = value; +inline const ::pg_query::Node& CaseExpr::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CaseExpr.arg) + return _internal_arg(); } -inline void SQLValueFunction::set_typmod(int32_t value) { - _internal_set_typmod(value); - // @@protoc_insertion_point(field_set:pg_query.SQLValueFunction.typmod) +inline void CaseExpr::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); + } + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseExpr.arg) } +inline ::pg_query::Node* CaseExpr::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// int32 location = 5 [json_name = "location"]; -inline void SQLValueFunction::clear_location() { - _impl_.location_ = 0; -} -inline int32_t SQLValueFunction::_internal_location() const { - return _impl_.location_; + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int32_t SQLValueFunction::location() const { - // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.location) - return _internal_location(); +inline ::pg_query::Node* CaseExpr::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CaseExpr.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; + return temp; } -inline void SQLValueFunction::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* CaseExpr::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.arg_; } -inline void SQLValueFunction::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.SQLValueFunction.location) +inline ::pg_query::Node* CaseExpr::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.CaseExpr.arg) + return _msg; } +inline void CaseExpr::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } -// XmlExpr + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CaseExpr.arg) +} -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool XmlExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; +// repeated .pg_query.Node args = 5 [json_name = "args"]; +inline int CaseExpr::_internal_args_size() const { + return _internal_args().size(); } -inline bool XmlExpr::has_xpr() const { - return _internal_has_xpr(); +inline int CaseExpr::args_size() const { + return _internal_args_size(); } -inline void XmlExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void CaseExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline const ::pg_query::Node& XmlExpr::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::Node* CaseExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CaseExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline const ::pg_query::Node& XmlExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.xpr) - return _internal_xpr(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CaseExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CaseExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); +} +inline const ::pg_query::Node& CaseExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CaseExpr.args) + return _internal_args().Get(index); +} +inline ::pg_query::Node* CaseExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CaseExpr.args) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CaseExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CaseExpr.args) + return _internal_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CaseExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CaseExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; +} + +// .pg_query.Node defresult = 6 [json_name = "defresult"]; +inline bool CaseExpr::has_defresult() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.defresult_ != nullptr); + return value; } -inline void XmlExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void CaseExpr::clear_defresult() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.defresult_ != nullptr) _impl_.defresult_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; +} +inline const ::pg_query::Node& CaseExpr::_internal_defresult() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.defresult_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& CaseExpr::defresult() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CaseExpr.defresult) + return _internal_defresult(); +} +inline void CaseExpr::unsafe_arena_set_allocated_defresult(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.defresult_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.defresult_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.XmlExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseExpr.defresult) } -inline ::pg_query::Node* XmlExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* CaseExpr::release_defresult() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.defresult_; + _impl_.defresult_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* XmlExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.XmlExpr.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; +inline ::pg_query::Node* CaseExpr::unsafe_arena_release_defresult() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CaseExpr.defresult) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.defresult_; + _impl_.defresult_ = nullptr; return temp; } -inline ::pg_query::Node* XmlExpr::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; +inline ::pg_query::Node* CaseExpr::_internal_mutable_defresult() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.defresult_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.defresult_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.xpr_; + return _impl_.defresult_; } -inline ::pg_query::Node* XmlExpr::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.xpr) +inline ::pg_query::Node* CaseExpr::mutable_defresult() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_defresult(); + // @@protoc_insertion_point(field_mutable:pg_query.CaseExpr.defresult) return _msg; } -inline void XmlExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CaseExpr::set_allocated_defresult(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.defresult_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.XmlExpr.xpr) + + _impl_.defresult_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CaseExpr.defresult) } -// .pg_query.XmlExprOp op = 2 [json_name = "op"]; -inline void XmlExpr::clear_op() { - _impl_.op_ = 0; +// int32 location = 7 [json_name = "location"]; +inline void CaseExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline ::pg_query::XmlExprOp XmlExpr::_internal_op() const { - return static_cast< ::pg_query::XmlExprOp >(_impl_.op_); +inline ::int32_t CaseExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.CaseExpr.location) + return _internal_location(); } -inline ::pg_query::XmlExprOp XmlExpr::op() const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.op) - return _internal_op(); +inline void CaseExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.CaseExpr.location) } -inline void XmlExpr::_internal_set_op(::pg_query::XmlExprOp value) { - - _impl_.op_ = value; +inline ::int32_t CaseExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void XmlExpr::set_op(::pg_query::XmlExprOp value) { - _internal_set_op(value); - // @@protoc_insertion_point(field_set:pg_query.XmlExpr.op) +inline void CaseExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// string name = 3 [json_name = "name"]; -inline void XmlExpr::clear_name() { - _impl_.name_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// CaseWhen + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool CaseWhen::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline const std::string& XmlExpr::name() const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.name) - return _internal_name(); +inline void CaseWhen::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -template -inline PROTOBUF_ALWAYS_INLINE -void XmlExpr::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.XmlExpr.name) +inline const ::pg_query::Node& CaseWhen::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* XmlExpr::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.name) - return _s; +inline const ::pg_query::Node& CaseWhen::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CaseWhen.xpr) + return _internal_xpr(); } -inline const std::string& XmlExpr::_internal_name() const { - return _impl_.name_.Get(); +inline void CaseWhen::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); + } + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseWhen.xpr) } -inline void XmlExpr::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Node* CaseWhen::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* XmlExpr::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CaseWhen::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CaseWhen.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; + return temp; } -inline std::string* XmlExpr::release_name() { - // @@protoc_insertion_point(field_release:pg_query.XmlExpr.name) - return _impl_.name_.Release(); +inline ::pg_query::Node* CaseWhen::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.xpr_; } -inline void XmlExpr::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - +inline ::pg_query::Node* CaseWhen::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.CaseWhen.xpr) + return _msg; +} +inline void CaseWhen::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.XmlExpr.name) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CaseWhen.xpr) } -// repeated .pg_query.Node named_args = 4 [json_name = "named_args"]; -inline int XmlExpr::_internal_named_args_size() const { - return _impl_.named_args_.size(); +// .pg_query.Node expr = 2 [json_name = "expr"]; +inline bool CaseWhen::has_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.expr_ != nullptr); + return value; } -inline int XmlExpr::named_args_size() const { - return _internal_named_args_size(); +inline void CaseWhen::clear_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.expr_ != nullptr) _impl_.expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline void XmlExpr::clear_named_args() { - _impl_.named_args_.Clear(); +inline const ::pg_query::Node& CaseWhen::_internal_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* XmlExpr::mutable_named_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.named_args) - return _impl_.named_args_.Mutable(index); +inline const ::pg_query::Node& CaseWhen::expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CaseWhen.expr) + return _internal_expr(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -XmlExpr::mutable_named_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.XmlExpr.named_args) - return &_impl_.named_args_; +inline void CaseWhen::unsafe_arena_set_allocated_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.expr_); + } + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseWhen.expr) } -inline const ::pg_query::Node& XmlExpr::_internal_named_args(int index) const { - return _impl_.named_args_.Get(index); +inline ::pg_query::Node* CaseWhen::release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.expr_; + _impl_.expr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& XmlExpr::named_args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.named_args) - return _internal_named_args(index); +inline ::pg_query::Node* CaseWhen::unsafe_arena_release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CaseWhen.expr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.expr_; + _impl_.expr_ = nullptr; + return temp; } -inline ::pg_query::Node* XmlExpr::_internal_add_named_args() { - return _impl_.named_args_.Add(); +inline ::pg_query::Node* CaseWhen::_internal_mutable_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.expr_; } -inline ::pg_query::Node* XmlExpr::add_named_args() { - ::pg_query::Node* _add = _internal_add_named_args(); - // @@protoc_insertion_point(field_add:pg_query.XmlExpr.named_args) - return _add; +inline ::pg_query::Node* CaseWhen::mutable_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.CaseWhen.expr) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -XmlExpr::named_args() const { - // @@protoc_insertion_point(field_list:pg_query.XmlExpr.named_args) - return _impl_.named_args_; +inline void CaseWhen::set_allocated_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.expr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CaseWhen.expr) } -// repeated .pg_query.Node arg_names = 5 [json_name = "arg_names"]; -inline int XmlExpr::_internal_arg_names_size() const { - return _impl_.arg_names_.size(); +// .pg_query.Node result = 3 [json_name = "result"]; +inline bool CaseWhen::has_result() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.result_ != nullptr); + return value; } -inline int XmlExpr::arg_names_size() const { - return _internal_arg_names_size(); +inline void CaseWhen::clear_result() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.result_ != nullptr) _impl_.result_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline void XmlExpr::clear_arg_names() { - _impl_.arg_names_.Clear(); +inline const ::pg_query::Node& CaseWhen::_internal_result() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.result_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* XmlExpr::mutable_arg_names(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.arg_names) - return _impl_.arg_names_.Mutable(index); +inline const ::pg_query::Node& CaseWhen::result() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CaseWhen.result) + return _internal_result(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -XmlExpr::mutable_arg_names() { - // @@protoc_insertion_point(field_mutable_list:pg_query.XmlExpr.arg_names) - return &_impl_.arg_names_; +inline void CaseWhen::unsafe_arena_set_allocated_result(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.result_); + } + _impl_.result_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseWhen.result) } -inline const ::pg_query::Node& XmlExpr::_internal_arg_names(int index) const { - return _impl_.arg_names_.Get(index); +inline ::pg_query::Node* CaseWhen::release_result() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.result_; + _impl_.result_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& XmlExpr::arg_names(int index) const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.arg_names) - return _internal_arg_names(index); +inline ::pg_query::Node* CaseWhen::unsafe_arena_release_result() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CaseWhen.result) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.result_; + _impl_.result_ = nullptr; + return temp; } -inline ::pg_query::Node* XmlExpr::_internal_add_arg_names() { - return _impl_.arg_names_.Add(); +inline ::pg_query::Node* CaseWhen::_internal_mutable_result() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.result_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.result_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.result_; } -inline ::pg_query::Node* XmlExpr::add_arg_names() { - ::pg_query::Node* _add = _internal_add_arg_names(); - // @@protoc_insertion_point(field_add:pg_query.XmlExpr.arg_names) - return _add; +inline ::pg_query::Node* CaseWhen::mutable_result() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_result(); + // @@protoc_insertion_point(field_mutable:pg_query.CaseWhen.result) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -XmlExpr::arg_names() const { - // @@protoc_insertion_point(field_list:pg_query.XmlExpr.arg_names) - return _impl_.arg_names_; +inline void CaseWhen::set_allocated_result(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.result_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.result_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CaseWhen.result) } -// repeated .pg_query.Node args = 6 [json_name = "args"]; -inline int XmlExpr::_internal_args_size() const { - return _impl_.args_.size(); +// int32 location = 4 [json_name = "location"]; +inline void CaseWhen::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline int XmlExpr::args_size() const { - return _internal_args_size(); +inline ::int32_t CaseWhen::location() const { + // @@protoc_insertion_point(field_get:pg_query.CaseWhen.location) + return _internal_location(); } -inline void XmlExpr::clear_args() { - _impl_.args_.Clear(); +inline void CaseWhen::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.CaseWhen.location) } -inline ::pg_query::Node* XmlExpr::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.args) - return _impl_.args_.Mutable(index); +inline ::int32_t CaseWhen::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -XmlExpr::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.XmlExpr.args) - return &_impl_.args_; +inline void CaseWhen::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -inline const ::pg_query::Node& XmlExpr::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// ------------------------------------------------------------------- + +// CaseTestExpr + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool CaseTestExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline const ::pg_query::Node& XmlExpr::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.args) - return _internal_args(index); +inline void CaseTestExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* XmlExpr::_internal_add_args() { - return _impl_.args_.Add(); +inline const ::pg_query::Node& CaseTestExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* XmlExpr::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.XmlExpr.args) - return _add; +inline const ::pg_query::Node& CaseTestExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CaseTestExpr.xpr) + return _internal_xpr(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -XmlExpr::args() const { - // @@protoc_insertion_point(field_list:pg_query.XmlExpr.args) - return _impl_.args_; +inline void CaseTestExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); + } + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CaseTestExpr.xpr) } +inline ::pg_query::Node* CaseTestExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// .pg_query.XmlOptionType xmloption = 7 [json_name = "xmloption"]; -inline void XmlExpr::clear_xmloption() { - _impl_.xmloption_ = 0; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::XmlOptionType XmlExpr::_internal_xmloption() const { - return static_cast< ::pg_query::XmlOptionType >(_impl_.xmloption_); +inline ::pg_query::Node* CaseTestExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CaseTestExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; + return temp; } -inline ::pg_query::XmlOptionType XmlExpr::xmloption() const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.xmloption) - return _internal_xmloption(); +inline ::pg_query::Node* CaseTestExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.xpr_; } -inline void XmlExpr::_internal_set_xmloption(::pg_query::XmlOptionType value) { - - _impl_.xmloption_ = value; +inline ::pg_query::Node* CaseTestExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.CaseTestExpr.xpr) + return _msg; } -inline void XmlExpr::set_xmloption(::pg_query::XmlOptionType value) { - _internal_set_xmloption(value); - // @@protoc_insertion_point(field_set:pg_query.XmlExpr.xmloption) +inline void CaseTestExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CaseTestExpr.xpr) } -// uint32 type = 8 [json_name = "type"]; -inline void XmlExpr::clear_type() { - _impl_.type_ = 0u; +// uint32 type_id = 2 [json_name = "typeId"]; +inline void CaseTestExpr::clear_type_id() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_id_ = 0u; } -inline uint32_t XmlExpr::_internal_type() const { - return _impl_.type_; +inline ::uint32_t CaseTestExpr::type_id() const { + // @@protoc_insertion_point(field_get:pg_query.CaseTestExpr.type_id) + return _internal_type_id(); } -inline uint32_t XmlExpr::type() const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.type) - return _internal_type(); +inline void CaseTestExpr::set_type_id(::uint32_t value) { + _internal_set_type_id(value); + // @@protoc_insertion_point(field_set:pg_query.CaseTestExpr.type_id) } -inline void XmlExpr::_internal_set_type(uint32_t value) { - - _impl_.type_ = value; +inline ::uint32_t CaseTestExpr::_internal_type_id() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_id_; } -inline void XmlExpr::set_type(uint32_t value) { - _internal_set_type(value); - // @@protoc_insertion_point(field_set:pg_query.XmlExpr.type) +inline void CaseTestExpr::_internal_set_type_id(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_id_ = value; } -// int32 typmod = 9 [json_name = "typmod"]; -inline void XmlExpr::clear_typmod() { - _impl_.typmod_ = 0; +// int32 type_mod = 3 [json_name = "typeMod"]; +inline void CaseTestExpr::clear_type_mod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_mod_ = 0; } -inline int32_t XmlExpr::_internal_typmod() const { - return _impl_.typmod_; +inline ::int32_t CaseTestExpr::type_mod() const { + // @@protoc_insertion_point(field_get:pg_query.CaseTestExpr.type_mod) + return _internal_type_mod(); } -inline int32_t XmlExpr::typmod() const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.typmod) - return _internal_typmod(); +inline void CaseTestExpr::set_type_mod(::int32_t value) { + _internal_set_type_mod(value); + // @@protoc_insertion_point(field_set:pg_query.CaseTestExpr.type_mod) } -inline void XmlExpr::_internal_set_typmod(int32_t value) { - - _impl_.typmod_ = value; +inline ::int32_t CaseTestExpr::_internal_type_mod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_mod_; } -inline void XmlExpr::set_typmod(int32_t value) { - _internal_set_typmod(value); - // @@protoc_insertion_point(field_set:pg_query.XmlExpr.typmod) +inline void CaseTestExpr::_internal_set_type_mod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_mod_ = value; } -// int32 location = 10 [json_name = "location"]; -inline void XmlExpr::clear_location() { - _impl_.location_ = 0; +// uint32 collation = 4 [json_name = "collation"]; +inline void CaseTestExpr::clear_collation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.collation_ = 0u; } -inline int32_t XmlExpr::_internal_location() const { - return _impl_.location_; +inline ::uint32_t CaseTestExpr::collation() const { + // @@protoc_insertion_point(field_get:pg_query.CaseTestExpr.collation) + return _internal_collation(); } -inline int32_t XmlExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.XmlExpr.location) - return _internal_location(); +inline void CaseTestExpr::set_collation(::uint32_t value) { + _internal_set_collation(value); + // @@protoc_insertion_point(field_set:pg_query.CaseTestExpr.collation) } -inline void XmlExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::uint32_t CaseTestExpr::_internal_collation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.collation_; } -inline void XmlExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.XmlExpr.location) +inline void CaseTestExpr::_internal_set_collation(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.collation_ = value; } // ------------------------------------------------------------------- -// NullTest +// ArrayExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool NullTest::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool NullTest::has_xpr() const { - return _internal_has_xpr(); +inline bool ArrayExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void NullTest::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void ArrayExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& NullTest::_internal_xpr() const { +inline const ::pg_query::Node& ArrayExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& NullTest::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.NullTest.xpr) +inline const ::pg_query::Node& ArrayExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.xpr) return _internal_xpr(); } -inline void NullTest::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void ArrayExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NullTest.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ArrayExpr.xpr) } -inline ::pg_query::Node* NullTest::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* ArrayExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* NullTest::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.NullTest.xpr) - +inline ::pg_query::Node* ArrayExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ArrayExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* NullTest::_internal_mutable_xpr() { - +inline ::pg_query::Node* ArrayExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* NullTest::mutable_xpr() { +inline ::pg_query::Node* ArrayExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.NullTest.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.ArrayExpr.xpr) return _msg; } -inline void NullTest::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ArrayExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.NullTest.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ArrayExpr.xpr) } -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool NullTest::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +// uint32 array_typeid = 2 [json_name = "array_typeid"]; +inline void ArrayExpr::clear_array_typeid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.array_typeid_ = 0u; } -inline bool NullTest::has_arg() const { - return _internal_has_arg(); +inline ::uint32_t ArrayExpr::array_typeid() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.array_typeid) + return _internal_array_typeid(); } -inline void NullTest::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline void ArrayExpr::set_array_typeid(::uint32_t value) { + _internal_set_array_typeid(value); + // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.array_typeid) } -inline const ::pg_query::Node& NullTest::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::uint32_t ArrayExpr::_internal_array_typeid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.array_typeid_; } -inline const ::pg_query::Node& NullTest::arg() const { - // @@protoc_insertion_point(field_get:pg_query.NullTest.arg) - return _internal_arg(); +inline void ArrayExpr::_internal_set_array_typeid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.array_typeid_ = value; } -inline void NullTest::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NullTest.arg) + +// uint32 array_collid = 3 [json_name = "array_collid"]; +inline void ArrayExpr::clear_array_collid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.array_collid_ = 0u; } -inline ::pg_query::Node* NullTest::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::uint32_t ArrayExpr::array_collid() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.array_collid) + return _internal_array_collid(); } -inline ::pg_query::Node* NullTest::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.NullTest.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; +inline void ArrayExpr::set_array_collid(::uint32_t value) { + _internal_set_array_collid(value); + // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.array_collid) } -inline ::pg_query::Node* NullTest::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; +inline ::uint32_t ArrayExpr::_internal_array_collid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.array_collid_; } -inline ::pg_query::Node* NullTest::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.NullTest.arg) - return _msg; +inline void ArrayExpr::_internal_set_array_collid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.array_collid_ = value; } -inline void NullTest::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); - if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); - } - - } else { - - } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.NullTest.arg) + +// uint32 element_typeid = 4 [json_name = "element_typeid"]; +inline void ArrayExpr::clear_element_typeid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.element_typeid_ = 0u; +} +inline ::uint32_t ArrayExpr::element_typeid() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.element_typeid) + return _internal_element_typeid(); +} +inline void ArrayExpr::set_element_typeid(::uint32_t value) { + _internal_set_element_typeid(value); + // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.element_typeid) +} +inline ::uint32_t ArrayExpr::_internal_element_typeid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.element_typeid_; +} +inline void ArrayExpr::_internal_set_element_typeid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.element_typeid_ = value; } -// .pg_query.NullTestType nulltesttype = 3 [json_name = "nulltesttype"]; -inline void NullTest::clear_nulltesttype() { - _impl_.nulltesttype_ = 0; +// repeated .pg_query.Node elements = 5 [json_name = "elements"]; +inline int ArrayExpr::_internal_elements_size() const { + return _internal_elements().size(); } -inline ::pg_query::NullTestType NullTest::_internal_nulltesttype() const { - return static_cast< ::pg_query::NullTestType >(_impl_.nulltesttype_); +inline int ArrayExpr::elements_size() const { + return _internal_elements_size(); } -inline ::pg_query::NullTestType NullTest::nulltesttype() const { - // @@protoc_insertion_point(field_get:pg_query.NullTest.nulltesttype) - return _internal_nulltesttype(); +inline void ArrayExpr::clear_elements() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.elements_.Clear(); } -inline void NullTest::_internal_set_nulltesttype(::pg_query::NullTestType value) { - - _impl_.nulltesttype_ = value; +inline ::pg_query::Node* ArrayExpr::mutable_elements(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ArrayExpr.elements) + return _internal_mutable_elements()->Mutable(index); } -inline void NullTest::set_nulltesttype(::pg_query::NullTestType value) { - _internal_set_nulltesttype(value); - // @@protoc_insertion_point(field_set:pg_query.NullTest.nulltesttype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ArrayExpr::mutable_elements() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ArrayExpr.elements) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_elements(); +} +inline const ::pg_query::Node& ArrayExpr::elements(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.elements) + return _internal_elements().Get(index); +} +inline ::pg_query::Node* ArrayExpr::add_elements() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_elements()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ArrayExpr.elements) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ArrayExpr::elements() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ArrayExpr.elements) + return _internal_elements(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ArrayExpr::_internal_elements() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.elements_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ArrayExpr::_internal_mutable_elements() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.elements_; } -// bool argisrow = 4 [json_name = "argisrow"]; -inline void NullTest::clear_argisrow() { - _impl_.argisrow_ = false; +// bool multidims = 6 [json_name = "multidims"]; +inline void ArrayExpr::clear_multidims() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.multidims_ = false; } -inline bool NullTest::_internal_argisrow() const { - return _impl_.argisrow_; +inline bool ArrayExpr::multidims() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.multidims) + return _internal_multidims(); } -inline bool NullTest::argisrow() const { - // @@protoc_insertion_point(field_get:pg_query.NullTest.argisrow) - return _internal_argisrow(); +inline void ArrayExpr::set_multidims(bool value) { + _internal_set_multidims(value); + // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.multidims) } -inline void NullTest::_internal_set_argisrow(bool value) { - - _impl_.argisrow_ = value; +inline bool ArrayExpr::_internal_multidims() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.multidims_; } -inline void NullTest::set_argisrow(bool value) { - _internal_set_argisrow(value); - // @@protoc_insertion_point(field_set:pg_query.NullTest.argisrow) +inline void ArrayExpr::_internal_set_multidims(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.multidims_ = value; } -// int32 location = 5 [json_name = "location"]; -inline void NullTest::clear_location() { +// int32 location = 7 [json_name = "location"]; +inline void ArrayExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t NullTest::_internal_location() const { - return _impl_.location_; -} -inline int32_t NullTest::location() const { - // @@protoc_insertion_point(field_get:pg_query.NullTest.location) +inline ::int32_t ArrayExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.ArrayExpr.location) return _internal_location(); } -inline void NullTest::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void NullTest::set_location(int32_t value) { +inline void ArrayExpr::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.NullTest.location) + // @@protoc_insertion_point(field_set:pg_query.ArrayExpr.location) +} +inline ::int32_t ArrayExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void ArrayExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// BooleanTest +// RowExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool BooleanTest::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool BooleanTest::has_xpr() const { - return _internal_has_xpr(); +inline bool RowExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void BooleanTest::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void RowExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& BooleanTest::_internal_xpr() const { +inline const ::pg_query::Node& RowExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& BooleanTest::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.BooleanTest.xpr) +inline const ::pg_query::Node& RowExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RowExpr.xpr) return _internal_xpr(); } -inline void BooleanTest::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void RowExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.BooleanTest.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RowExpr.xpr) } -inline ::pg_query::Node* BooleanTest::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* RowExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* BooleanTest::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.BooleanTest.xpr) - +inline ::pg_query::Node* RowExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RowExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* BooleanTest::_internal_mutable_xpr() { - +inline ::pg_query::Node* RowExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* BooleanTest::mutable_xpr() { +inline ::pg_query::Node* RowExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.BooleanTest.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.RowExpr.xpr) return _msg; } -inline void BooleanTest::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RowExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.BooleanTest.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RowExpr.xpr) } -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool BooleanTest::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +// repeated .pg_query.Node args = 2 [json_name = "args"]; +inline int RowExpr::_internal_args_size() const { + return _internal_args().size(); } -inline bool BooleanTest::has_arg() const { - return _internal_has_arg(); +inline int RowExpr::args_size() const { + return _internal_args_size(); } -inline void BooleanTest::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline void RowExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline const ::pg_query::Node& BooleanTest::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::Node* RowExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RowExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline const ::pg_query::Node& BooleanTest::arg() const { - // @@protoc_insertion_point(field_get:pg_query.BooleanTest.arg) - return _internal_arg(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RowExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RowExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } -inline void BooleanTest::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.BooleanTest.arg) +inline const ::pg_query::Node& RowExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RowExpr.args) + return _internal_args().Get(index); } -inline ::pg_query::Node* BooleanTest::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::pg_query::Node* RowExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RowExpr.args) + return _add; } -inline ::pg_query::Node* BooleanTest::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.BooleanTest.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RowExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RowExpr.args) + return _internal_args(); } -inline ::pg_query::Node* BooleanTest::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RowExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline ::pg_query::Node* BooleanTest::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.BooleanTest.arg) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RowExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -inline void BooleanTest::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); - if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); - } - - } else { - - } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.BooleanTest.arg) + +// uint32 row_typeid = 3 [json_name = "row_typeid"]; +inline void RowExpr::clear_row_typeid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.row_typeid_ = 0u; +} +inline ::uint32_t RowExpr::row_typeid() const { + // @@protoc_insertion_point(field_get:pg_query.RowExpr.row_typeid) + return _internal_row_typeid(); +} +inline void RowExpr::set_row_typeid(::uint32_t value) { + _internal_set_row_typeid(value); + // @@protoc_insertion_point(field_set:pg_query.RowExpr.row_typeid) +} +inline ::uint32_t RowExpr::_internal_row_typeid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.row_typeid_; +} +inline void RowExpr::_internal_set_row_typeid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.row_typeid_ = value; } -// .pg_query.BoolTestType booltesttype = 3 [json_name = "booltesttype"]; -inline void BooleanTest::clear_booltesttype() { - _impl_.booltesttype_ = 0; +// .pg_query.CoercionForm row_format = 4 [json_name = "row_format"]; +inline void RowExpr::clear_row_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.row_format_ = 0; } -inline ::pg_query::BoolTestType BooleanTest::_internal_booltesttype() const { - return static_cast< ::pg_query::BoolTestType >(_impl_.booltesttype_); +inline ::pg_query::CoercionForm RowExpr::row_format() const { + // @@protoc_insertion_point(field_get:pg_query.RowExpr.row_format) + return _internal_row_format(); } -inline ::pg_query::BoolTestType BooleanTest::booltesttype() const { - // @@protoc_insertion_point(field_get:pg_query.BooleanTest.booltesttype) - return _internal_booltesttype(); +inline void RowExpr::set_row_format(::pg_query::CoercionForm value) { + _internal_set_row_format(value); + // @@protoc_insertion_point(field_set:pg_query.RowExpr.row_format) } -inline void BooleanTest::_internal_set_booltesttype(::pg_query::BoolTestType value) { - - _impl_.booltesttype_ = value; +inline ::pg_query::CoercionForm RowExpr::_internal_row_format() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CoercionForm>(_impl_.row_format_); } -inline void BooleanTest::set_booltesttype(::pg_query::BoolTestType value) { - _internal_set_booltesttype(value); - // @@protoc_insertion_point(field_set:pg_query.BooleanTest.booltesttype) +inline void RowExpr::_internal_set_row_format(::pg_query::CoercionForm value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.row_format_ = value; } -// int32 location = 4 [json_name = "location"]; -inline void BooleanTest::clear_location() { - _impl_.location_ = 0; +// repeated .pg_query.Node colnames = 5 [json_name = "colnames"]; +inline int RowExpr::_internal_colnames_size() const { + return _internal_colnames().size(); } -inline int32_t BooleanTest::_internal_location() const { - return _impl_.location_; +inline int RowExpr::colnames_size() const { + return _internal_colnames_size(); } -inline int32_t BooleanTest::location() const { - // @@protoc_insertion_point(field_get:pg_query.BooleanTest.location) - return _internal_location(); +inline void RowExpr::clear_colnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colnames_.Clear(); } -inline void BooleanTest::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* RowExpr::mutable_colnames(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RowExpr.colnames) + return _internal_mutable_colnames()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RowExpr::mutable_colnames() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RowExpr.colnames) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_colnames(); +} +inline const ::pg_query::Node& RowExpr::colnames(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RowExpr.colnames) + return _internal_colnames().Get(index); +} +inline ::pg_query::Node* RowExpr::add_colnames() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_colnames()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RowExpr.colnames) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RowExpr::colnames() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RowExpr.colnames) + return _internal_colnames(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RowExpr::_internal_colnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.colnames_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RowExpr::_internal_mutable_colnames() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.colnames_; +} + +// int32 location = 6 [json_name = "location"]; +inline void RowExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; +} +inline ::int32_t RowExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.RowExpr.location) + return _internal_location(); } -inline void BooleanTest::set_location(int32_t value) { +inline void RowExpr::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.BooleanTest.location) + // @@protoc_insertion_point(field_set:pg_query.RowExpr.location) +} +inline ::int32_t RowExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void RowExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// CoerceToDomain +// RowCompareExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool CoerceToDomain::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool CoerceToDomain::has_xpr() const { - return _internal_has_xpr(); +inline bool RowCompareExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void CoerceToDomain::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void RowCompareExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& CoerceToDomain::_internal_xpr() const { +inline const ::pg_query::Node& RowCompareExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CoerceToDomain::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.xpr) +inline const ::pg_query::Node& RowCompareExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.xpr) return _internal_xpr(); } -inline void CoerceToDomain::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void RowCompareExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceToDomain.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RowCompareExpr.xpr) } -inline ::pg_query::Node* CoerceToDomain::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* RowCompareExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CoerceToDomain::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.CoerceToDomain.xpr) - +inline ::pg_query::Node* RowCompareExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RowCompareExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* CoerceToDomain::_internal_mutable_xpr() { - +inline ::pg_query::Node* RowCompareExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* CoerceToDomain::mutable_xpr() { +inline ::pg_query::Node* RowCompareExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CoerceToDomain.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.xpr) return _msg; } -inline void CoerceToDomain::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RowCompareExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceToDomain.xpr) -} -// .pg_query.Node arg = 2 [json_name = "arg"]; -inline bool CoerceToDomain::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; -} -inline bool CoerceToDomain::has_arg() const { - return _internal_has_arg(); -} -inline void CoerceToDomain::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; -} -inline const ::pg_query::Node& CoerceToDomain::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); -} -inline const ::pg_query::Node& CoerceToDomain::arg() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.arg) - return _internal_arg(); -} -inline void CoerceToDomain::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceToDomain.arg) -} -inline ::pg_query::Node* CoerceToDomain::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::pg_query::Node* CoerceToDomain::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.CoerceToDomain.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; -} -inline ::pg_query::Node* CoerceToDomain::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; -} -inline ::pg_query::Node* CoerceToDomain::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.CoerceToDomain.arg) - return _msg; -} -inline void CoerceToDomain::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceToDomain.arg) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RowCompareExpr.xpr) } -// uint32 resulttype = 3 [json_name = "resulttype"]; -inline void CoerceToDomain::clear_resulttype() { - _impl_.resulttype_ = 0u; +// .pg_query.RowCompareType rctype = 2 [json_name = "rctype"]; +inline void RowCompareExpr::clear_rctype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rctype_ = 0; } -inline uint32_t CoerceToDomain::_internal_resulttype() const { - return _impl_.resulttype_; +inline ::pg_query::RowCompareType RowCompareExpr::rctype() const { + // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.rctype) + return _internal_rctype(); } -inline uint32_t CoerceToDomain::resulttype() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.resulttype) - return _internal_resulttype(); +inline void RowCompareExpr::set_rctype(::pg_query::RowCompareType value) { + _internal_set_rctype(value); + // @@protoc_insertion_point(field_set:pg_query.RowCompareExpr.rctype) } -inline void CoerceToDomain::_internal_set_resulttype(uint32_t value) { - - _impl_.resulttype_ = value; +inline ::pg_query::RowCompareType RowCompareExpr::_internal_rctype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::RowCompareType>(_impl_.rctype_); } -inline void CoerceToDomain::set_resulttype(uint32_t value) { - _internal_set_resulttype(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.resulttype) +inline void RowCompareExpr::_internal_set_rctype(::pg_query::RowCompareType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rctype_ = value; } -// int32 resulttypmod = 4 [json_name = "resulttypmod"]; -inline void CoerceToDomain::clear_resulttypmod() { - _impl_.resulttypmod_ = 0; -} -inline int32_t CoerceToDomain::_internal_resulttypmod() const { - return _impl_.resulttypmod_; +// repeated .pg_query.Node opnos = 3 [json_name = "opnos"]; +inline int RowCompareExpr::_internal_opnos_size() const { + return _internal_opnos().size(); } -inline int32_t CoerceToDomain::resulttypmod() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.resulttypmod) - return _internal_resulttypmod(); +inline int RowCompareExpr::opnos_size() const { + return _internal_opnos_size(); } -inline void CoerceToDomain::_internal_set_resulttypmod(int32_t value) { - - _impl_.resulttypmod_ = value; +inline void RowCompareExpr::clear_opnos() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opnos_.Clear(); } -inline void CoerceToDomain::set_resulttypmod(int32_t value) { - _internal_set_resulttypmod(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.resulttypmod) +inline ::pg_query::Node* RowCompareExpr::mutable_opnos(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.opnos) + return _internal_mutable_opnos()->Mutable(index); } - -// uint32 resultcollid = 5 [json_name = "resultcollid"]; -inline void CoerceToDomain::clear_resultcollid() { - _impl_.resultcollid_ = 0u; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RowCompareExpr::mutable_opnos() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.opnos) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opnos(); } -inline uint32_t CoerceToDomain::_internal_resultcollid() const { - return _impl_.resultcollid_; +inline const ::pg_query::Node& RowCompareExpr::opnos(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.opnos) + return _internal_opnos().Get(index); } -inline uint32_t CoerceToDomain::resultcollid() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.resultcollid) - return _internal_resultcollid(); +inline ::pg_query::Node* RowCompareExpr::add_opnos() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opnos()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.opnos) + return _add; } -inline void CoerceToDomain::_internal_set_resultcollid(uint32_t value) { - - _impl_.resultcollid_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RowCompareExpr::opnos() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.opnos) + return _internal_opnos(); } -inline void CoerceToDomain::set_resultcollid(uint32_t value) { - _internal_set_resultcollid(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.resultcollid) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RowCompareExpr::_internal_opnos() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opnos_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RowCompareExpr::_internal_mutable_opnos() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opnos_; } -// .pg_query.CoercionForm coercionformat = 6 [json_name = "coercionformat"]; -inline void CoerceToDomain::clear_coercionformat() { - _impl_.coercionformat_ = 0; +// repeated .pg_query.Node opfamilies = 4 [json_name = "opfamilies"]; +inline int RowCompareExpr::_internal_opfamilies_size() const { + return _internal_opfamilies().size(); } -inline ::pg_query::CoercionForm CoerceToDomain::_internal_coercionformat() const { - return static_cast< ::pg_query::CoercionForm >(_impl_.coercionformat_); +inline int RowCompareExpr::opfamilies_size() const { + return _internal_opfamilies_size(); } -inline ::pg_query::CoercionForm CoerceToDomain::coercionformat() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.coercionformat) - return _internal_coercionformat(); +inline void RowCompareExpr::clear_opfamilies() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opfamilies_.Clear(); } -inline void CoerceToDomain::_internal_set_coercionformat(::pg_query::CoercionForm value) { - - _impl_.coercionformat_ = value; +inline ::pg_query::Node* RowCompareExpr::mutable_opfamilies(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.opfamilies) + return _internal_mutable_opfamilies()->Mutable(index); } -inline void CoerceToDomain::set_coercionformat(::pg_query::CoercionForm value) { - _internal_set_coercionformat(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.coercionformat) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RowCompareExpr::mutable_opfamilies() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.opfamilies) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opfamilies(); } - -// int32 location = 7 [json_name = "location"]; -inline void CoerceToDomain::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Node& RowCompareExpr::opfamilies(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.opfamilies) + return _internal_opfamilies().Get(index); } -inline int32_t CoerceToDomain::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Node* RowCompareExpr::add_opfamilies() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opfamilies()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.opfamilies) + return _add; } -inline int32_t CoerceToDomain::location() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.location) - return _internal_location(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RowCompareExpr::opfamilies() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.opfamilies) + return _internal_opfamilies(); } -inline void CoerceToDomain::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RowCompareExpr::_internal_opfamilies() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opfamilies_; } -inline void CoerceToDomain::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RowCompareExpr::_internal_mutable_opfamilies() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opfamilies_; } -// ------------------------------------------------------------------- - -// CoerceToDomainValue - -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool CoerceToDomainValue::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool CoerceToDomainValue::has_xpr() const { - return _internal_has_xpr(); +// repeated .pg_query.Node inputcollids = 5 [json_name = "inputcollids"]; +inline int RowCompareExpr::_internal_inputcollids_size() const { + return _internal_inputcollids().size(); } -inline void CoerceToDomainValue::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline int RowCompareExpr::inputcollids_size() const { + return _internal_inputcollids_size(); } -inline const ::pg_query::Node& CoerceToDomainValue::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void RowCompareExpr::clear_inputcollids() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inputcollids_.Clear(); } -inline const ::pg_query::Node& CoerceToDomainValue::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.xpr) - return _internal_xpr(); +inline ::pg_query::Node* RowCompareExpr::mutable_inputcollids(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.inputcollids) + return _internal_mutable_inputcollids()->Mutable(index); } -inline void CoerceToDomainValue::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); - } - _impl_.xpr_ = xpr; - if (xpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceToDomainValue.xpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RowCompareExpr::mutable_inputcollids() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.inputcollids) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_inputcollids(); } -inline ::pg_query::Node* CoerceToDomainValue::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& RowCompareExpr::inputcollids(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.inputcollids) + return _internal_inputcollids().Get(index); } -inline ::pg_query::Node* CoerceToDomainValue::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.CoerceToDomainValue.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; - return temp; +inline ::pg_query::Node* RowCompareExpr::add_inputcollids() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_inputcollids()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.inputcollids) + return _add; } -inline ::pg_query::Node* CoerceToDomainValue::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; - } - return _impl_.xpr_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RowCompareExpr::inputcollids() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.inputcollids) + return _internal_inputcollids(); } -inline ::pg_query::Node* CoerceToDomainValue::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CoerceToDomainValue.xpr) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RowCompareExpr::_internal_inputcollids() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inputcollids_; } -inline void CoerceToDomainValue::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - - } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceToDomainValue.xpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RowCompareExpr::_internal_mutable_inputcollids() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.inputcollids_; } -// uint32 type_id = 2 [json_name = "typeId"]; -inline void CoerceToDomainValue::clear_type_id() { - _impl_.type_id_ = 0u; +// repeated .pg_query.Node largs = 6 [json_name = "largs"]; +inline int RowCompareExpr::_internal_largs_size() const { + return _internal_largs().size(); } -inline uint32_t CoerceToDomainValue::_internal_type_id() const { - return _impl_.type_id_; +inline int RowCompareExpr::largs_size() const { + return _internal_largs_size(); } -inline uint32_t CoerceToDomainValue::type_id() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.type_id) - return _internal_type_id(); +inline void RowCompareExpr::clear_largs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.largs_.Clear(); } -inline void CoerceToDomainValue::_internal_set_type_id(uint32_t value) { - - _impl_.type_id_ = value; +inline ::pg_query::Node* RowCompareExpr::mutable_largs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.largs) + return _internal_mutable_largs()->Mutable(index); } -inline void CoerceToDomainValue::set_type_id(uint32_t value) { - _internal_set_type_id(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceToDomainValue.type_id) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RowCompareExpr::mutable_largs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.largs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_largs(); } - -// int32 type_mod = 3 [json_name = "typeMod"]; -inline void CoerceToDomainValue::clear_type_mod() { - _impl_.type_mod_ = 0; +inline const ::pg_query::Node& RowCompareExpr::largs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.largs) + return _internal_largs().Get(index); } -inline int32_t CoerceToDomainValue::_internal_type_mod() const { - return _impl_.type_mod_; +inline ::pg_query::Node* RowCompareExpr::add_largs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_largs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.largs) + return _add; } -inline int32_t CoerceToDomainValue::type_mod() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.type_mod) - return _internal_type_mod(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RowCompareExpr::largs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.largs) + return _internal_largs(); } -inline void CoerceToDomainValue::_internal_set_type_mod(int32_t value) { - - _impl_.type_mod_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RowCompareExpr::_internal_largs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.largs_; } -inline void CoerceToDomainValue::set_type_mod(int32_t value) { - _internal_set_type_mod(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceToDomainValue.type_mod) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RowCompareExpr::_internal_mutable_largs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.largs_; } -// uint32 collation = 4 [json_name = "collation"]; -inline void CoerceToDomainValue::clear_collation() { - _impl_.collation_ = 0u; +// repeated .pg_query.Node rargs = 7 [json_name = "rargs"]; +inline int RowCompareExpr::_internal_rargs_size() const { + return _internal_rargs().size(); } -inline uint32_t CoerceToDomainValue::_internal_collation() const { - return _impl_.collation_; +inline int RowCompareExpr::rargs_size() const { + return _internal_rargs_size(); } -inline uint32_t CoerceToDomainValue::collation() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.collation) - return _internal_collation(); +inline void RowCompareExpr::clear_rargs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rargs_.Clear(); } -inline void CoerceToDomainValue::_internal_set_collation(uint32_t value) { - - _impl_.collation_ = value; +inline ::pg_query::Node* RowCompareExpr::mutable_rargs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RowCompareExpr.rargs) + return _internal_mutable_rargs()->Mutable(index); } -inline void CoerceToDomainValue::set_collation(uint32_t value) { - _internal_set_collation(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceToDomainValue.collation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RowCompareExpr::mutable_rargs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RowCompareExpr.rargs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_rargs(); } - -// int32 location = 5 [json_name = "location"]; -inline void CoerceToDomainValue::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Node& RowCompareExpr::rargs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RowCompareExpr.rargs) + return _internal_rargs().Get(index); } -inline int32_t CoerceToDomainValue::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Node* RowCompareExpr::add_rargs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_rargs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RowCompareExpr.rargs) + return _add; } -inline int32_t CoerceToDomainValue::location() const { - // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.location) - return _internal_location(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RowCompareExpr::rargs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RowCompareExpr.rargs) + return _internal_rargs(); } -inline void CoerceToDomainValue::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RowCompareExpr::_internal_rargs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rargs_; } -inline void CoerceToDomainValue::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CoerceToDomainValue.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RowCompareExpr::_internal_mutable_rargs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.rargs_; } // ------------------------------------------------------------------- -// SetToDefault +// CoalesceExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool SetToDefault::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool SetToDefault::has_xpr() const { - return _internal_has_xpr(); +inline bool CoalesceExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void SetToDefault::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void CoalesceExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& SetToDefault::_internal_xpr() const { +inline const ::pg_query::Node& CoalesceExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& SetToDefault::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.SetToDefault.xpr) +inline const ::pg_query::Node& CoalesceExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.xpr) return _internal_xpr(); } -inline void SetToDefault::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void CoalesceExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SetToDefault.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoalesceExpr.xpr) } -inline ::pg_query::Node* SetToDefault::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* CoalesceExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SetToDefault::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.SetToDefault.xpr) - +inline ::pg_query::Node* CoalesceExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CoalesceExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* SetToDefault::_internal_mutable_xpr() { - +inline ::pg_query::Node* CoalesceExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* SetToDefault::mutable_xpr() { +inline ::pg_query::Node* CoalesceExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.SetToDefault.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.CoalesceExpr.xpr) return _msg; } -inline void SetToDefault::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CoalesceExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.SetToDefault.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CoalesceExpr.xpr) } -// uint32 type_id = 2 [json_name = "typeId"]; -inline void SetToDefault::clear_type_id() { - _impl_.type_id_ = 0u; +// uint32 coalescetype = 2 [json_name = "coalescetype"]; +inline void CoalesceExpr::clear_coalescetype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coalescetype_ = 0u; } -inline uint32_t SetToDefault::_internal_type_id() const { - return _impl_.type_id_; +inline ::uint32_t CoalesceExpr::coalescetype() const { + // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.coalescetype) + return _internal_coalescetype(); } -inline uint32_t SetToDefault::type_id() const { - // @@protoc_insertion_point(field_get:pg_query.SetToDefault.type_id) - return _internal_type_id(); +inline void CoalesceExpr::set_coalescetype(::uint32_t value) { + _internal_set_coalescetype(value); + // @@protoc_insertion_point(field_set:pg_query.CoalesceExpr.coalescetype) } -inline void SetToDefault::_internal_set_type_id(uint32_t value) { - - _impl_.type_id_ = value; +inline ::uint32_t CoalesceExpr::_internal_coalescetype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coalescetype_; } -inline void SetToDefault::set_type_id(uint32_t value) { - _internal_set_type_id(value); - // @@protoc_insertion_point(field_set:pg_query.SetToDefault.type_id) +inline void CoalesceExpr::_internal_set_coalescetype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.coalescetype_ = value; } -// int32 type_mod = 3 [json_name = "typeMod"]; -inline void SetToDefault::clear_type_mod() { - _impl_.type_mod_ = 0; +// uint32 coalescecollid = 3 [json_name = "coalescecollid"]; +inline void CoalesceExpr::clear_coalescecollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coalescecollid_ = 0u; } -inline int32_t SetToDefault::_internal_type_mod() const { - return _impl_.type_mod_; +inline ::uint32_t CoalesceExpr::coalescecollid() const { + // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.coalescecollid) + return _internal_coalescecollid(); } -inline int32_t SetToDefault::type_mod() const { - // @@protoc_insertion_point(field_get:pg_query.SetToDefault.type_mod) - return _internal_type_mod(); +inline void CoalesceExpr::set_coalescecollid(::uint32_t value) { + _internal_set_coalescecollid(value); + // @@protoc_insertion_point(field_set:pg_query.CoalesceExpr.coalescecollid) } -inline void SetToDefault::_internal_set_type_mod(int32_t value) { - - _impl_.type_mod_ = value; +inline ::uint32_t CoalesceExpr::_internal_coalescecollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coalescecollid_; } -inline void SetToDefault::set_type_mod(int32_t value) { - _internal_set_type_mod(value); - // @@protoc_insertion_point(field_set:pg_query.SetToDefault.type_mod) +inline void CoalesceExpr::_internal_set_coalescecollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.coalescecollid_ = value; } -// uint32 collation = 4 [json_name = "collation"]; -inline void SetToDefault::clear_collation() { - _impl_.collation_ = 0u; +// repeated .pg_query.Node args = 4 [json_name = "args"]; +inline int CoalesceExpr::_internal_args_size() const { + return _internal_args().size(); } -inline uint32_t SetToDefault::_internal_collation() const { - return _impl_.collation_; +inline int CoalesceExpr::args_size() const { + return _internal_args_size(); } -inline uint32_t SetToDefault::collation() const { - // @@protoc_insertion_point(field_get:pg_query.SetToDefault.collation) - return _internal_collation(); +inline void CoalesceExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline void SetToDefault::_internal_set_collation(uint32_t value) { - - _impl_.collation_ = value; +inline ::pg_query::Node* CoalesceExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CoalesceExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline void SetToDefault::set_collation(uint32_t value) { - _internal_set_collation(value); - // @@protoc_insertion_point(field_set:pg_query.SetToDefault.collation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CoalesceExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CoalesceExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); +} +inline const ::pg_query::Node& CoalesceExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.args) + return _internal_args().Get(index); +} +inline ::pg_query::Node* CoalesceExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CoalesceExpr.args) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CoalesceExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CoalesceExpr.args) + return _internal_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CoalesceExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CoalesceExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } // int32 location = 5 [json_name = "location"]; -inline void SetToDefault::clear_location() { +inline void CoalesceExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t SetToDefault::_internal_location() const { - return _impl_.location_; -} -inline int32_t SetToDefault::location() const { - // @@protoc_insertion_point(field_get:pg_query.SetToDefault.location) +inline ::int32_t CoalesceExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.CoalesceExpr.location) return _internal_location(); } -inline void SetToDefault::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void SetToDefault::set_location(int32_t value) { +inline void CoalesceExpr::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.SetToDefault.location) + // @@protoc_insertion_point(field_set:pg_query.CoalesceExpr.location) +} +inline ::int32_t CoalesceExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void CoalesceExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// CurrentOfExpr +// MinMaxExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool CurrentOfExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool CurrentOfExpr::has_xpr() const { - return _internal_has_xpr(); +inline bool MinMaxExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void CurrentOfExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void MinMaxExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& CurrentOfExpr::_internal_xpr() const { +inline const ::pg_query::Node& MinMaxExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CurrentOfExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.CurrentOfExpr.xpr) +inline const ::pg_query::Node& MinMaxExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.xpr) return _internal_xpr(); } -inline void CurrentOfExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void MinMaxExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CurrentOfExpr.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MinMaxExpr.xpr) } -inline ::pg_query::Node* CurrentOfExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* MinMaxExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CurrentOfExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.CurrentOfExpr.xpr) - +inline ::pg_query::Node* MinMaxExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.MinMaxExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* CurrentOfExpr::_internal_mutable_xpr() { - +inline ::pg_query::Node* MinMaxExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* CurrentOfExpr::mutable_xpr() { +inline ::pg_query::Node* MinMaxExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CurrentOfExpr.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.MinMaxExpr.xpr) return _msg; } -inline void CurrentOfExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void MinMaxExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CurrentOfExpr.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.MinMaxExpr.xpr) } -// uint32 cvarno = 2 [json_name = "cvarno"]; -inline void CurrentOfExpr::clear_cvarno() { - _impl_.cvarno_ = 0u; +// uint32 minmaxtype = 2 [json_name = "minmaxtype"]; +inline void MinMaxExpr::clear_minmaxtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.minmaxtype_ = 0u; } -inline uint32_t CurrentOfExpr::_internal_cvarno() const { - return _impl_.cvarno_; +inline ::uint32_t MinMaxExpr::minmaxtype() const { + // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.minmaxtype) + return _internal_minmaxtype(); } -inline uint32_t CurrentOfExpr::cvarno() const { - // @@protoc_insertion_point(field_get:pg_query.CurrentOfExpr.cvarno) - return _internal_cvarno(); +inline void MinMaxExpr::set_minmaxtype(::uint32_t value) { + _internal_set_minmaxtype(value); + // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.minmaxtype) } -inline void CurrentOfExpr::_internal_set_cvarno(uint32_t value) { - - _impl_.cvarno_ = value; +inline ::uint32_t MinMaxExpr::_internal_minmaxtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.minmaxtype_; } -inline void CurrentOfExpr::set_cvarno(uint32_t value) { - _internal_set_cvarno(value); - // @@protoc_insertion_point(field_set:pg_query.CurrentOfExpr.cvarno) +inline void MinMaxExpr::_internal_set_minmaxtype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.minmaxtype_ = value; } -// string cursor_name = 3 [json_name = "cursor_name"]; -inline void CurrentOfExpr::clear_cursor_name() { - _impl_.cursor_name_.ClearToEmpty(); -} -inline const std::string& CurrentOfExpr::cursor_name() const { - // @@protoc_insertion_point(field_get:pg_query.CurrentOfExpr.cursor_name) - return _internal_cursor_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CurrentOfExpr::set_cursor_name(ArgT0&& arg0, ArgT... args) { - - _impl_.cursor_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CurrentOfExpr.cursor_name) -} -inline std::string* CurrentOfExpr::mutable_cursor_name() { - std::string* _s = _internal_mutable_cursor_name(); - // @@protoc_insertion_point(field_mutable:pg_query.CurrentOfExpr.cursor_name) - return _s; -} -inline const std::string& CurrentOfExpr::_internal_cursor_name() const { - return _impl_.cursor_name_.Get(); +// uint32 minmaxcollid = 3 [json_name = "minmaxcollid"]; +inline void MinMaxExpr::clear_minmaxcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.minmaxcollid_ = 0u; } -inline void CurrentOfExpr::_internal_set_cursor_name(const std::string& value) { - - _impl_.cursor_name_.Set(value, GetArenaForAllocation()); +inline ::uint32_t MinMaxExpr::minmaxcollid() const { + // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.minmaxcollid) + return _internal_minmaxcollid(); } -inline std::string* CurrentOfExpr::_internal_mutable_cursor_name() { - - return _impl_.cursor_name_.Mutable(GetArenaForAllocation()); +inline void MinMaxExpr::set_minmaxcollid(::uint32_t value) { + _internal_set_minmaxcollid(value); + // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.minmaxcollid) } -inline std::string* CurrentOfExpr::release_cursor_name() { - // @@protoc_insertion_point(field_release:pg_query.CurrentOfExpr.cursor_name) - return _impl_.cursor_name_.Release(); +inline ::uint32_t MinMaxExpr::_internal_minmaxcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.minmaxcollid_; } -inline void CurrentOfExpr::set_allocated_cursor_name(std::string* cursor_name) { - if (cursor_name != nullptr) { - - } else { - - } - _impl_.cursor_name_.SetAllocated(cursor_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.cursor_name_.IsDefault()) { - _impl_.cursor_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CurrentOfExpr.cursor_name) +inline void MinMaxExpr::_internal_set_minmaxcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.minmaxcollid_ = value; } -// int32 cursor_param = 4 [json_name = "cursor_param"]; -inline void CurrentOfExpr::clear_cursor_param() { - _impl_.cursor_param_ = 0; +// uint32 inputcollid = 4 [json_name = "inputcollid"]; +inline void MinMaxExpr::clear_inputcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inputcollid_ = 0u; } -inline int32_t CurrentOfExpr::_internal_cursor_param() const { - return _impl_.cursor_param_; +inline ::uint32_t MinMaxExpr::inputcollid() const { + // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.inputcollid) + return _internal_inputcollid(); } -inline int32_t CurrentOfExpr::cursor_param() const { - // @@protoc_insertion_point(field_get:pg_query.CurrentOfExpr.cursor_param) - return _internal_cursor_param(); +inline void MinMaxExpr::set_inputcollid(::uint32_t value) { + _internal_set_inputcollid(value); + // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.inputcollid) } -inline void CurrentOfExpr::_internal_set_cursor_param(int32_t value) { - - _impl_.cursor_param_ = value; +inline ::uint32_t MinMaxExpr::_internal_inputcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inputcollid_; } -inline void CurrentOfExpr::set_cursor_param(int32_t value) { - _internal_set_cursor_param(value); - // @@protoc_insertion_point(field_set:pg_query.CurrentOfExpr.cursor_param) +inline void MinMaxExpr::_internal_set_inputcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inputcollid_ = value; } -// ------------------------------------------------------------------- - -// NextValueExpr - -// .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool NextValueExpr::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool NextValueExpr::has_xpr() const { - return _internal_has_xpr(); +// .pg_query.MinMaxOp op = 5 [json_name = "op"]; +inline void MinMaxExpr::clear_op() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.op_ = 0; } -inline void NextValueExpr::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline ::pg_query::MinMaxOp MinMaxExpr::op() const { + // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.op) + return _internal_op(); } -inline const ::pg_query::Node& NextValueExpr::_internal_xpr() const { - const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void MinMaxExpr::set_op(::pg_query::MinMaxOp value) { + _internal_set_op(value); + // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.op) } -inline const ::pg_query::Node& NextValueExpr::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.NextValueExpr.xpr) - return _internal_xpr(); +inline ::pg_query::MinMaxOp MinMaxExpr::_internal_op() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::MinMaxOp>(_impl_.op_); } -inline void NextValueExpr::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); - } - _impl_.xpr_ = xpr; - if (xpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NextValueExpr.xpr) +inline void MinMaxExpr::_internal_set_op(::pg_query::MinMaxOp value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.op_ = value; } -inline ::pg_query::Node* NextValueExpr::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// repeated .pg_query.Node args = 6 [json_name = "args"]; +inline int MinMaxExpr::_internal_args_size() const { + return _internal_args().size(); } -inline ::pg_query::Node* NextValueExpr::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.NextValueExpr.xpr) - - ::pg_query::Node* temp = _impl_.xpr_; - _impl_.xpr_ = nullptr; - return temp; +inline int MinMaxExpr::args_size() const { + return _internal_args_size(); } -inline ::pg_query::Node* NextValueExpr::_internal_mutable_xpr() { - - if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; - } - return _impl_.xpr_; +inline void MinMaxExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline ::pg_query::Node* NextValueExpr::mutable_xpr() { - ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.NextValueExpr.xpr) - return _msg; +inline ::pg_query::Node* MinMaxExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.MinMaxExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline void NextValueExpr::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.xpr_; - } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); - if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); - } - - } else { - - } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.NextValueExpr.xpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* MinMaxExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.MinMaxExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } - -// uint32 seqid = 2 [json_name = "seqid"]; -inline void NextValueExpr::clear_seqid() { - _impl_.seqid_ = 0u; +inline const ::pg_query::Node& MinMaxExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.args) + return _internal_args().Get(index); } -inline uint32_t NextValueExpr::_internal_seqid() const { - return _impl_.seqid_; +inline ::pg_query::Node* MinMaxExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.MinMaxExpr.args) + return _add; } -inline uint32_t NextValueExpr::seqid() const { - // @@protoc_insertion_point(field_get:pg_query.NextValueExpr.seqid) - return _internal_seqid(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& MinMaxExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.MinMaxExpr.args) + return _internal_args(); } -inline void NextValueExpr::_internal_set_seqid(uint32_t value) { - - _impl_.seqid_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +MinMaxExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline void NextValueExpr::set_seqid(uint32_t value) { - _internal_set_seqid(value); - // @@protoc_insertion_point(field_set:pg_query.NextValueExpr.seqid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +MinMaxExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// uint32 type_id = 3 [json_name = "typeId"]; -inline void NextValueExpr::clear_type_id() { - _impl_.type_id_ = 0u; +// int32 location = 7 [json_name = "location"]; +inline void MinMaxExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline uint32_t NextValueExpr::_internal_type_id() const { - return _impl_.type_id_; +inline ::int32_t MinMaxExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.MinMaxExpr.location) + return _internal_location(); } -inline uint32_t NextValueExpr::type_id() const { - // @@protoc_insertion_point(field_get:pg_query.NextValueExpr.type_id) - return _internal_type_id(); +inline void MinMaxExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.MinMaxExpr.location) } -inline void NextValueExpr::_internal_set_type_id(uint32_t value) { - - _impl_.type_id_ = value; +inline ::int32_t MinMaxExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void NextValueExpr::set_type_id(uint32_t value) { - _internal_set_type_id(value); - // @@protoc_insertion_point(field_set:pg_query.NextValueExpr.type_id) +inline void MinMaxExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// InferenceElem +// SQLValueFunction // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool InferenceElem::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool InferenceElem::has_xpr() const { - return _internal_has_xpr(); +inline bool SQLValueFunction::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void InferenceElem::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void SQLValueFunction::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& InferenceElem::_internal_xpr() const { +inline const ::pg_query::Node& SQLValueFunction::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& InferenceElem::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.InferenceElem.xpr) +inline const ::pg_query::Node& SQLValueFunction::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.xpr) return _internal_xpr(); } -inline void InferenceElem::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void SQLValueFunction::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InferenceElem.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SQLValueFunction.xpr) } -inline ::pg_query::Node* InferenceElem::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* SQLValueFunction::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* InferenceElem::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.InferenceElem.xpr) - +inline ::pg_query::Node* SQLValueFunction::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SQLValueFunction.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* InferenceElem::_internal_mutable_xpr() { - +inline ::pg_query::Node* SQLValueFunction::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* InferenceElem::mutable_xpr() { +inline ::pg_query::Node* SQLValueFunction::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.InferenceElem.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.SQLValueFunction.xpr) return _msg; } -inline void InferenceElem::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SQLValueFunction::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.InferenceElem.xpr) -} -// .pg_query.Node expr = 2 [json_name = "expr"]; -inline bool InferenceElem::_internal_has_expr() const { - return this != internal_default_instance() && _impl_.expr_ != nullptr; + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SQLValueFunction.xpr) } -inline bool InferenceElem::has_expr() const { - return _internal_has_expr(); + +// .pg_query.SQLValueFunctionOp op = 2 [json_name = "op"]; +inline void SQLValueFunction::clear_op() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.op_ = 0; } -inline void InferenceElem::clear_expr() { - if (GetArenaForAllocation() == nullptr && _impl_.expr_ != nullptr) { - delete _impl_.expr_; - } - _impl_.expr_ = nullptr; +inline ::pg_query::SQLValueFunctionOp SQLValueFunction::op() const { + // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.op) + return _internal_op(); } -inline const ::pg_query::Node& InferenceElem::_internal_expr() const { - const ::pg_query::Node* p = _impl_.expr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void SQLValueFunction::set_op(::pg_query::SQLValueFunctionOp value) { + _internal_set_op(value); + // @@protoc_insertion_point(field_set:pg_query.SQLValueFunction.op) } -inline const ::pg_query::Node& InferenceElem::expr() const { - // @@protoc_insertion_point(field_get:pg_query.InferenceElem.expr) - return _internal_expr(); +inline ::pg_query::SQLValueFunctionOp SQLValueFunction::_internal_op() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::SQLValueFunctionOp>(_impl_.op_); } -inline void InferenceElem::unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.expr_); - } - _impl_.expr_ = expr; - if (expr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InferenceElem.expr) +inline void SQLValueFunction::_internal_set_op(::pg_query::SQLValueFunctionOp value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.op_ = value; } -inline ::pg_query::Node* InferenceElem::release_expr() { - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// uint32 type = 3 [json_name = "type"]; +inline void SQLValueFunction::clear_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_ = 0u; } -inline ::pg_query::Node* InferenceElem::unsafe_arena_release_expr() { - // @@protoc_insertion_point(field_release:pg_query.InferenceElem.expr) - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; - return temp; +inline ::uint32_t SQLValueFunction::type() const { + // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.type) + return _internal_type(); } -inline ::pg_query::Node* InferenceElem::_internal_mutable_expr() { - - if (_impl_.expr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.expr_ = p; - } - return _impl_.expr_; +inline void SQLValueFunction::set_type(::uint32_t value) { + _internal_set_type(value); + // @@protoc_insertion_point(field_set:pg_query.SQLValueFunction.type) } -inline ::pg_query::Node* InferenceElem::mutable_expr() { - ::pg_query::Node* _msg = _internal_mutable_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.InferenceElem.expr) - return _msg; +inline ::uint32_t SQLValueFunction::_internal_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_; } -inline void InferenceElem::set_allocated_expr(::pg_query::Node* expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.expr_; - } - if (expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(expr); - if (message_arena != submessage_arena) { - expr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, expr, submessage_arena); - } - - } else { - - } - _impl_.expr_ = expr; - // @@protoc_insertion_point(field_set_allocated:pg_query.InferenceElem.expr) +inline void SQLValueFunction::_internal_set_type(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_ = value; } -// uint32 infercollid = 3 [json_name = "infercollid"]; -inline void InferenceElem::clear_infercollid() { - _impl_.infercollid_ = 0u; +// int32 typmod = 4 [json_name = "typmod"]; +inline void SQLValueFunction::clear_typmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.typmod_ = 0; } -inline uint32_t InferenceElem::_internal_infercollid() const { - return _impl_.infercollid_; +inline ::int32_t SQLValueFunction::typmod() const { + // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.typmod) + return _internal_typmod(); } -inline uint32_t InferenceElem::infercollid() const { - // @@protoc_insertion_point(field_get:pg_query.InferenceElem.infercollid) - return _internal_infercollid(); +inline void SQLValueFunction::set_typmod(::int32_t value) { + _internal_set_typmod(value); + // @@protoc_insertion_point(field_set:pg_query.SQLValueFunction.typmod) } -inline void InferenceElem::_internal_set_infercollid(uint32_t value) { - - _impl_.infercollid_ = value; +inline ::int32_t SQLValueFunction::_internal_typmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.typmod_; } -inline void InferenceElem::set_infercollid(uint32_t value) { - _internal_set_infercollid(value); - // @@protoc_insertion_point(field_set:pg_query.InferenceElem.infercollid) +inline void SQLValueFunction::_internal_set_typmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.typmod_ = value; } -// uint32 inferopclass = 4 [json_name = "inferopclass"]; -inline void InferenceElem::clear_inferopclass() { - _impl_.inferopclass_ = 0u; +// int32 location = 5 [json_name = "location"]; +inline void SQLValueFunction::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline uint32_t InferenceElem::_internal_inferopclass() const { - return _impl_.inferopclass_; +inline ::int32_t SQLValueFunction::location() const { + // @@protoc_insertion_point(field_get:pg_query.SQLValueFunction.location) + return _internal_location(); } -inline uint32_t InferenceElem::inferopclass() const { - // @@protoc_insertion_point(field_get:pg_query.InferenceElem.inferopclass) - return _internal_inferopclass(); +inline void SQLValueFunction::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.SQLValueFunction.location) } -inline void InferenceElem::_internal_set_inferopclass(uint32_t value) { - - _impl_.inferopclass_ = value; +inline ::int32_t SQLValueFunction::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void InferenceElem::set_inferopclass(uint32_t value) { - _internal_set_inferopclass(value); - // @@protoc_insertion_point(field_set:pg_query.InferenceElem.inferopclass) +inline void SQLValueFunction::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// TargetEntry +// XmlExpr // .pg_query.Node xpr = 1 [json_name = "xpr"]; -inline bool TargetEntry::_internal_has_xpr() const { - return this != internal_default_instance() && _impl_.xpr_ != nullptr; -} -inline bool TargetEntry::has_xpr() const { - return _internal_has_xpr(); +inline bool XmlExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void TargetEntry::clear_xpr() { - if (GetArenaForAllocation() == nullptr && _impl_.xpr_ != nullptr) { - delete _impl_.xpr_; - } - _impl_.xpr_ = nullptr; +inline void XmlExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& TargetEntry::_internal_xpr() const { +inline const ::pg_query::Node& XmlExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.xpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& TargetEntry::xpr() const { - // @@protoc_insertion_point(field_get:pg_query.TargetEntry.xpr) +inline const ::pg_query::Node& XmlExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.xpr) return _internal_xpr(); } -inline void TargetEntry::unsafe_arena_set_allocated_xpr( - ::pg_query::Node* xpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.xpr_); +inline void XmlExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.xpr_ = xpr; - if (xpr) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TargetEntry.xpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.XmlExpr.xpr) } -inline ::pg_query::Node* TargetEntry::release_xpr() { - - ::pg_query::Node* temp = _impl_.xpr_; +inline ::pg_query::Node* XmlExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* TargetEntry::unsafe_arena_release_xpr() { - // @@protoc_insertion_point(field_release:pg_query.TargetEntry.xpr) - +inline ::pg_query::Node* XmlExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.XmlExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::Node* temp = _impl_.xpr_; _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* TargetEntry::_internal_mutable_xpr() { - +inline ::pg_query::Node* XmlExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.xpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.xpr_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.xpr_; } -inline ::pg_query::Node* TargetEntry::mutable_xpr() { +inline ::pg_query::Node* XmlExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_xpr(); - // @@protoc_insertion_point(field_mutable:pg_query.TargetEntry.xpr) + // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.xpr) return _msg; } -inline void TargetEntry::set_allocated_xpr(::pg_query::Node* xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void XmlExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.xpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (xpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(xpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - xpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, xpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.xpr_ = xpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.TargetEntry.xpr) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.XmlExpr.xpr) } -// .pg_query.Node expr = 2 [json_name = "expr"]; -inline bool TargetEntry::_internal_has_expr() const { - return this != internal_default_instance() && _impl_.expr_ != nullptr; +// .pg_query.XmlExprOp op = 2 [json_name = "op"]; +inline void XmlExpr::clear_op() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.op_ = 0; } -inline bool TargetEntry::has_expr() const { - return _internal_has_expr(); +inline ::pg_query::XmlExprOp XmlExpr::op() const { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.op) + return _internal_op(); } -inline void TargetEntry::clear_expr() { - if (GetArenaForAllocation() == nullptr && _impl_.expr_ != nullptr) { - delete _impl_.expr_; - } - _impl_.expr_ = nullptr; +inline void XmlExpr::set_op(::pg_query::XmlExprOp value) { + _internal_set_op(value); + // @@protoc_insertion_point(field_set:pg_query.XmlExpr.op) } -inline const ::pg_query::Node& TargetEntry::_internal_expr() const { - const ::pg_query::Node* p = _impl_.expr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::XmlExprOp XmlExpr::_internal_op() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::XmlExprOp>(_impl_.op_); } -inline const ::pg_query::Node& TargetEntry::expr() const { - // @@protoc_insertion_point(field_get:pg_query.TargetEntry.expr) - return _internal_expr(); +inline void XmlExpr::_internal_set_op(::pg_query::XmlExprOp value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.op_ = value; } -inline void TargetEntry::unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.expr_); - } - _impl_.expr_ = expr; - if (expr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TargetEntry.expr) + +// string name = 3 [json_name = "name"]; +inline void XmlExpr::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline ::pg_query::Node* TargetEntry::release_expr() { - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const std::string& XmlExpr::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.name) + return _internal_name(); } -inline ::pg_query::Node* TargetEntry::unsafe_arena_release_expr() { - // @@protoc_insertion_point(field_release:pg_query.TargetEntry.expr) - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; - return temp; +template +inline PROTOBUF_ALWAYS_INLINE void XmlExpr::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.XmlExpr.name) } -inline ::pg_query::Node* TargetEntry::_internal_mutable_expr() { - - if (_impl_.expr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.expr_ = p; - } - return _impl_.expr_; +inline std::string* XmlExpr::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.name) + return _s; } -inline ::pg_query::Node* TargetEntry::mutable_expr() { - ::pg_query::Node* _msg = _internal_mutable_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.TargetEntry.expr) - return _msg; +inline const std::string& XmlExpr::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline void TargetEntry::set_allocated_expr(::pg_query::Node* expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.expr_; - } - if (expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(expr); - if (message_arena != submessage_arena) { - expr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, expr, submessage_arena); - } - - } else { - - } - _impl_.expr_ = expr; - // @@protoc_insertion_point(field_set_allocated:pg_query.TargetEntry.expr) +inline void XmlExpr::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); +} +inline std::string* XmlExpr::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* XmlExpr::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.XmlExpr.name) + return _impl_.name_.Release(); +} +inline void XmlExpr::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.XmlExpr.name) } -// int32 resno = 3 [json_name = "resno"]; -inline void TargetEntry::clear_resno() { - _impl_.resno_ = 0; +// repeated .pg_query.Node named_args = 4 [json_name = "named_args"]; +inline int XmlExpr::_internal_named_args_size() const { + return _internal_named_args().size(); } -inline int32_t TargetEntry::_internal_resno() const { - return _impl_.resno_; +inline int XmlExpr::named_args_size() const { + return _internal_named_args_size(); } -inline int32_t TargetEntry::resno() const { - // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resno) - return _internal_resno(); +inline void XmlExpr::clear_named_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.named_args_.Clear(); } -inline void TargetEntry::_internal_set_resno(int32_t value) { - - _impl_.resno_ = value; +inline ::pg_query::Node* XmlExpr::mutable_named_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.named_args) + return _internal_mutable_named_args()->Mutable(index); } -inline void TargetEntry::set_resno(int32_t value) { - _internal_set_resno(value); - // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resno) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* XmlExpr::mutable_named_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.XmlExpr.named_args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_named_args(); +} +inline const ::pg_query::Node& XmlExpr::named_args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.named_args) + return _internal_named_args().Get(index); +} +inline ::pg_query::Node* XmlExpr::add_named_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_named_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.XmlExpr.named_args) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& XmlExpr::named_args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.XmlExpr.named_args) + return _internal_named_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +XmlExpr::_internal_named_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.named_args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +XmlExpr::_internal_mutable_named_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.named_args_; } -// string resname = 4 [json_name = "resname"]; -inline void TargetEntry::clear_resname() { - _impl_.resname_.ClearToEmpty(); +// repeated .pg_query.Node arg_names = 5 [json_name = "arg_names"]; +inline int XmlExpr::_internal_arg_names_size() const { + return _internal_arg_names().size(); } -inline const std::string& TargetEntry::resname() const { - // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resname) - return _internal_resname(); +inline int XmlExpr::arg_names_size() const { + return _internal_arg_names_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void TargetEntry::set_resname(ArgT0&& arg0, ArgT... args) { - - _impl_.resname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resname) +inline void XmlExpr::clear_arg_names() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.arg_names_.Clear(); } -inline std::string* TargetEntry::mutable_resname() { - std::string* _s = _internal_mutable_resname(); - // @@protoc_insertion_point(field_mutable:pg_query.TargetEntry.resname) - return _s; +inline ::pg_query::Node* XmlExpr::mutable_arg_names(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.arg_names) + return _internal_mutable_arg_names()->Mutable(index); } -inline const std::string& TargetEntry::_internal_resname() const { - return _impl_.resname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* XmlExpr::mutable_arg_names() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.XmlExpr.arg_names) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_arg_names(); } -inline void TargetEntry::_internal_set_resname(const std::string& value) { - - _impl_.resname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& XmlExpr::arg_names(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.arg_names) + return _internal_arg_names().Get(index); } -inline std::string* TargetEntry::_internal_mutable_resname() { - - return _impl_.resname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* XmlExpr::add_arg_names() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_arg_names()->Add(); + // @@protoc_insertion_point(field_add:pg_query.XmlExpr.arg_names) + return _add; } -inline std::string* TargetEntry::release_resname() { - // @@protoc_insertion_point(field_release:pg_query.TargetEntry.resname) - return _impl_.resname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& XmlExpr::arg_names() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.XmlExpr.arg_names) + return _internal_arg_names(); } -inline void TargetEntry::set_allocated_resname(std::string* resname) { - if (resname != nullptr) { - - } else { - - } - _impl_.resname_.SetAllocated(resname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.resname_.IsDefault()) { - _impl_.resname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.TargetEntry.resname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +XmlExpr::_internal_arg_names() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.arg_names_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +XmlExpr::_internal_mutable_arg_names() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.arg_names_; } -// uint32 ressortgroupref = 5 [json_name = "ressortgroupref"]; -inline void TargetEntry::clear_ressortgroupref() { - _impl_.ressortgroupref_ = 0u; +// repeated .pg_query.Node args = 6 [json_name = "args"]; +inline int XmlExpr::_internal_args_size() const { + return _internal_args().size(); } -inline uint32_t TargetEntry::_internal_ressortgroupref() const { - return _impl_.ressortgroupref_; +inline int XmlExpr::args_size() const { + return _internal_args_size(); } -inline uint32_t TargetEntry::ressortgroupref() const { - // @@protoc_insertion_point(field_get:pg_query.TargetEntry.ressortgroupref) - return _internal_ressortgroupref(); +inline void XmlExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline void TargetEntry::_internal_set_ressortgroupref(uint32_t value) { - - _impl_.ressortgroupref_ = value; +inline ::pg_query::Node* XmlExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.XmlExpr.args) + return _internal_mutable_args()->Mutable(index); } -inline void TargetEntry::set_ressortgroupref(uint32_t value) { - _internal_set_ressortgroupref(value); - // @@protoc_insertion_point(field_set:pg_query.TargetEntry.ressortgroupref) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* XmlExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.XmlExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } - -// uint32 resorigtbl = 6 [json_name = "resorigtbl"]; -inline void TargetEntry::clear_resorigtbl() { - _impl_.resorigtbl_ = 0u; +inline const ::pg_query::Node& XmlExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.args) + return _internal_args().Get(index); } -inline uint32_t TargetEntry::_internal_resorigtbl() const { - return _impl_.resorigtbl_; +inline ::pg_query::Node* XmlExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.XmlExpr.args) + return _add; } -inline uint32_t TargetEntry::resorigtbl() const { - // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resorigtbl) - return _internal_resorigtbl(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& XmlExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.XmlExpr.args) + return _internal_args(); } -inline void TargetEntry::_internal_set_resorigtbl(uint32_t value) { - - _impl_.resorigtbl_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +XmlExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline void TargetEntry::set_resorigtbl(uint32_t value) { - _internal_set_resorigtbl(value); - // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resorigtbl) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +XmlExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// int32 resorigcol = 7 [json_name = "resorigcol"]; -inline void TargetEntry::clear_resorigcol() { - _impl_.resorigcol_ = 0; +// .pg_query.XmlOptionType xmloption = 7 [json_name = "xmloption"]; +inline void XmlExpr::clear_xmloption() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.xmloption_ = 0; } -inline int32_t TargetEntry::_internal_resorigcol() const { - return _impl_.resorigcol_; +inline ::pg_query::XmlOptionType XmlExpr::xmloption() const { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.xmloption) + return _internal_xmloption(); } -inline int32_t TargetEntry::resorigcol() const { - // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resorigcol) - return _internal_resorigcol(); +inline void XmlExpr::set_xmloption(::pg_query::XmlOptionType value) { + _internal_set_xmloption(value); + // @@protoc_insertion_point(field_set:pg_query.XmlExpr.xmloption) } -inline void TargetEntry::_internal_set_resorigcol(int32_t value) { - - _impl_.resorigcol_ = value; +inline ::pg_query::XmlOptionType XmlExpr::_internal_xmloption() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::XmlOptionType>(_impl_.xmloption_); } -inline void TargetEntry::set_resorigcol(int32_t value) { - _internal_set_resorigcol(value); - // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resorigcol) +inline void XmlExpr::_internal_set_xmloption(::pg_query::XmlOptionType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.xmloption_ = value; } -// bool resjunk = 8 [json_name = "resjunk"]; -inline void TargetEntry::clear_resjunk() { - _impl_.resjunk_ = false; +// bool indent = 8 [json_name = "indent"]; +inline void XmlExpr::clear_indent() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indent_ = false; } -inline bool TargetEntry::_internal_resjunk() const { - return _impl_.resjunk_; +inline bool XmlExpr::indent() const { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.indent) + return _internal_indent(); } -inline bool TargetEntry::resjunk() const { - // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resjunk) - return _internal_resjunk(); +inline void XmlExpr::set_indent(bool value) { + _internal_set_indent(value); + // @@protoc_insertion_point(field_set:pg_query.XmlExpr.indent) } -inline void TargetEntry::_internal_set_resjunk(bool value) { - - _impl_.resjunk_ = value; +inline bool XmlExpr::_internal_indent() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.indent_; } -inline void TargetEntry::set_resjunk(bool value) { - _internal_set_resjunk(value); - // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resjunk) +inline void XmlExpr::_internal_set_indent(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indent_ = value; } -// ------------------------------------------------------------------- +// uint32 type = 9 [json_name = "type"]; +inline void XmlExpr::clear_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_ = 0u; +} +inline ::uint32_t XmlExpr::type() const { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.type) + return _internal_type(); +} +inline void XmlExpr::set_type(::uint32_t value) { + _internal_set_type(value); + // @@protoc_insertion_point(field_set:pg_query.XmlExpr.type) +} +inline ::uint32_t XmlExpr::_internal_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_; +} +inline void XmlExpr::_internal_set_type(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_ = value; +} -// RangeTblRef +// int32 typmod = 10 [json_name = "typmod"]; +inline void XmlExpr::clear_typmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.typmod_ = 0; +} +inline ::int32_t XmlExpr::typmod() const { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.typmod) + return _internal_typmod(); +} +inline void XmlExpr::set_typmod(::int32_t value) { + _internal_set_typmod(value); + // @@protoc_insertion_point(field_set:pg_query.XmlExpr.typmod) +} +inline ::int32_t XmlExpr::_internal_typmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.typmod_; +} +inline void XmlExpr::_internal_set_typmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.typmod_ = value; +} -// int32 rtindex = 1 [json_name = "rtindex"]; -inline void RangeTblRef::clear_rtindex() { - _impl_.rtindex_ = 0; +// int32 location = 11 [json_name = "location"]; +inline void XmlExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline int32_t RangeTblRef::_internal_rtindex() const { - return _impl_.rtindex_; +inline ::int32_t XmlExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.XmlExpr.location) + return _internal_location(); } -inline int32_t RangeTblRef::rtindex() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblRef.rtindex) - return _internal_rtindex(); +inline void XmlExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.XmlExpr.location) } -inline void RangeTblRef::_internal_set_rtindex(int32_t value) { - - _impl_.rtindex_ = value; +inline ::int32_t XmlExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void RangeTblRef::set_rtindex(int32_t value) { - _internal_set_rtindex(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblRef.rtindex) +inline void XmlExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// JoinExpr +// JsonFormat -// .pg_query.JoinType jointype = 1 [json_name = "jointype"]; -inline void JoinExpr::clear_jointype() { - _impl_.jointype_ = 0; +// .pg_query.JsonFormatType format_type = 1 [json_name = "format_type"]; +inline void JsonFormat::clear_format_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.format_type_ = 0; } -inline ::pg_query::JoinType JoinExpr::_internal_jointype() const { - return static_cast< ::pg_query::JoinType >(_impl_.jointype_); +inline ::pg_query::JsonFormatType JsonFormat::format_type() const { + // @@protoc_insertion_point(field_get:pg_query.JsonFormat.format_type) + return _internal_format_type(); } -inline ::pg_query::JoinType JoinExpr::jointype() const { - // @@protoc_insertion_point(field_get:pg_query.JoinExpr.jointype) - return _internal_jointype(); +inline void JsonFormat::set_format_type(::pg_query::JsonFormatType value) { + _internal_set_format_type(value); + // @@protoc_insertion_point(field_set:pg_query.JsonFormat.format_type) } -inline void JoinExpr::_internal_set_jointype(::pg_query::JoinType value) { - - _impl_.jointype_ = value; +inline ::pg_query::JsonFormatType JsonFormat::_internal_format_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::JsonFormatType>(_impl_.format_type_); } -inline void JoinExpr::set_jointype(::pg_query::JoinType value) { - _internal_set_jointype(value); - // @@protoc_insertion_point(field_set:pg_query.JoinExpr.jointype) +inline void JsonFormat::_internal_set_format_type(::pg_query::JsonFormatType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.format_type_ = value; } -// bool is_natural = 2 [json_name = "isNatural"]; -inline void JoinExpr::clear_is_natural() { - _impl_.is_natural_ = false; +// .pg_query.JsonEncoding encoding = 2 [json_name = "encoding"]; +inline void JsonFormat::clear_encoding() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.encoding_ = 0; } -inline bool JoinExpr::_internal_is_natural() const { - return _impl_.is_natural_; +inline ::pg_query::JsonEncoding JsonFormat::encoding() const { + // @@protoc_insertion_point(field_get:pg_query.JsonFormat.encoding) + return _internal_encoding(); } -inline bool JoinExpr::is_natural() const { - // @@protoc_insertion_point(field_get:pg_query.JoinExpr.is_natural) - return _internal_is_natural(); +inline void JsonFormat::set_encoding(::pg_query::JsonEncoding value) { + _internal_set_encoding(value); + // @@protoc_insertion_point(field_set:pg_query.JsonFormat.encoding) } -inline void JoinExpr::_internal_set_is_natural(bool value) { - - _impl_.is_natural_ = value; +inline ::pg_query::JsonEncoding JsonFormat::_internal_encoding() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::JsonEncoding>(_impl_.encoding_); } -inline void JoinExpr::set_is_natural(bool value) { - _internal_set_is_natural(value); - // @@protoc_insertion_point(field_set:pg_query.JoinExpr.is_natural) +inline void JsonFormat::_internal_set_encoding(::pg_query::JsonEncoding value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.encoding_ = value; } -// .pg_query.Node larg = 3 [json_name = "larg"]; -inline bool JoinExpr::_internal_has_larg() const { - return this != internal_default_instance() && _impl_.larg_ != nullptr; +// int32 location = 3 [json_name = "location"]; +inline void JsonFormat::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool JoinExpr::has_larg() const { - return _internal_has_larg(); +inline ::int32_t JsonFormat::location() const { + // @@protoc_insertion_point(field_get:pg_query.JsonFormat.location) + return _internal_location(); } -inline void JoinExpr::clear_larg() { - if (GetArenaForAllocation() == nullptr && _impl_.larg_ != nullptr) { - delete _impl_.larg_; - } - _impl_.larg_ = nullptr; +inline void JsonFormat::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.JsonFormat.location) } -inline const ::pg_query::Node& JoinExpr::_internal_larg() const { - const ::pg_query::Node* p = _impl_.larg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::int32_t JsonFormat::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::pg_query::Node& JoinExpr::larg() const { - // @@protoc_insertion_point(field_get:pg_query.JoinExpr.larg) - return _internal_larg(); +inline void JsonFormat::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; +} + +// ------------------------------------------------------------------- + +// JsonReturning + +// .pg_query.JsonFormat format = 1 [json_name = "format"]; +inline bool JsonReturning::has_format() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.format_ != nullptr); + return value; } -inline void JoinExpr::unsafe_arena_set_allocated_larg( - ::pg_query::Node* larg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.larg_); +inline void JsonReturning::clear_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.format_ != nullptr) _impl_.format_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::JsonFormat& JsonReturning::_internal_format() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonFormat* p = _impl_.format_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonFormat_default_instance_); +} +inline const ::pg_query::JsonFormat& JsonReturning::format() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonReturning.format) + return _internal_format(); +} +inline void JsonReturning::unsafe_arena_set_allocated_format(::pg_query::JsonFormat* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.format_); } - _impl_.larg_ = larg; - if (larg) { - + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.larg) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonReturning.format) } -inline ::pg_query::Node* JoinExpr::release_larg() { - - ::pg_query::Node* temp = _impl_.larg_; - _impl_.larg_ = nullptr; +inline ::pg_query::JsonFormat* JsonReturning::release_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonFormat* released = _impl_.format_; + _impl_.format_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* JoinExpr::unsafe_arena_release_larg() { - // @@protoc_insertion_point(field_release:pg_query.JoinExpr.larg) - - ::pg_query::Node* temp = _impl_.larg_; - _impl_.larg_ = nullptr; +inline ::pg_query::JsonFormat* JsonReturning::unsafe_arena_release_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonReturning.format) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonFormat* temp = _impl_.format_; + _impl_.format_ = nullptr; return temp; } -inline ::pg_query::Node* JoinExpr::_internal_mutable_larg() { - - if (_impl_.larg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.larg_ = p; +inline ::pg_query::JsonFormat* JsonReturning::_internal_mutable_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.format_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonFormat>(GetArena()); + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(p); } - return _impl_.larg_; + return _impl_.format_; } -inline ::pg_query::Node* JoinExpr::mutable_larg() { - ::pg_query::Node* _msg = _internal_mutable_larg(); - // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.larg) +inline ::pg_query::JsonFormat* JsonReturning::mutable_format() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonFormat* _msg = _internal_mutable_format(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonReturning.format) return _msg; } -inline void JoinExpr::set_allocated_larg(::pg_query::Node* larg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonReturning::set_allocated_format(::pg_query::JsonFormat* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.larg_; + delete reinterpret_cast<::pg_query::JsonFormat*>(_impl_.format_); } - if (larg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(larg); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonFormat*>(value)->GetArena(); if (message_arena != submessage_arena) { - larg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, larg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.larg_ = larg; - // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.larg) + + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonReturning.format) } -// .pg_query.Node rarg = 4 [json_name = "rarg"]; -inline bool JoinExpr::_internal_has_rarg() const { - return this != internal_default_instance() && _impl_.rarg_ != nullptr; +// uint32 typid = 2 [json_name = "typid"]; +inline void JsonReturning::clear_typid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.typid_ = 0u; } -inline bool JoinExpr::has_rarg() const { - return _internal_has_rarg(); +inline ::uint32_t JsonReturning::typid() const { + // @@protoc_insertion_point(field_get:pg_query.JsonReturning.typid) + return _internal_typid(); } -inline void JoinExpr::clear_rarg() { - if (GetArenaForAllocation() == nullptr && _impl_.rarg_ != nullptr) { - delete _impl_.rarg_; - } - _impl_.rarg_ = nullptr; +inline void JsonReturning::set_typid(::uint32_t value) { + _internal_set_typid(value); + // @@protoc_insertion_point(field_set:pg_query.JsonReturning.typid) } -inline const ::pg_query::Node& JoinExpr::_internal_rarg() const { - const ::pg_query::Node* p = _impl_.rarg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::uint32_t JsonReturning::_internal_typid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.typid_; } -inline const ::pg_query::Node& JoinExpr::rarg() const { - // @@protoc_insertion_point(field_get:pg_query.JoinExpr.rarg) - return _internal_rarg(); +inline void JsonReturning::_internal_set_typid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.typid_ = value; +} + +// int32 typmod = 3 [json_name = "typmod"]; +inline void JsonReturning::clear_typmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.typmod_ = 0; +} +inline ::int32_t JsonReturning::typmod() const { + // @@protoc_insertion_point(field_get:pg_query.JsonReturning.typmod) + return _internal_typmod(); +} +inline void JsonReturning::set_typmod(::int32_t value) { + _internal_set_typmod(value); + // @@protoc_insertion_point(field_set:pg_query.JsonReturning.typmod) +} +inline ::int32_t JsonReturning::_internal_typmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.typmod_; +} +inline void JsonReturning::_internal_set_typmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.typmod_ = value; +} + +// ------------------------------------------------------------------- + +// JsonValueExpr + +// .pg_query.Node raw_expr = 1 [json_name = "raw_expr"]; +inline bool JsonValueExpr::has_raw_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.raw_expr_ != nullptr); + return value; +} +inline void JsonValueExpr::clear_raw_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.raw_expr_ != nullptr) _impl_.raw_expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& JsonValueExpr::_internal_raw_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.raw_expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& JsonValueExpr::raw_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonValueExpr.raw_expr) + return _internal_raw_expr(); } -inline void JoinExpr::unsafe_arena_set_allocated_rarg( - ::pg_query::Node* rarg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.rarg_); +inline void JsonValueExpr::unsafe_arena_set_allocated_raw_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.raw_expr_); } - _impl_.rarg_ = rarg; - if (rarg) { - + _impl_.raw_expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.rarg) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonValueExpr.raw_expr) } -inline ::pg_query::Node* JoinExpr::release_rarg() { - - ::pg_query::Node* temp = _impl_.rarg_; - _impl_.rarg_ = nullptr; +inline ::pg_query::Node* JsonValueExpr::release_raw_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.raw_expr_; + _impl_.raw_expr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* JoinExpr::unsafe_arena_release_rarg() { - // @@protoc_insertion_point(field_release:pg_query.JoinExpr.rarg) - - ::pg_query::Node* temp = _impl_.rarg_; - _impl_.rarg_ = nullptr; +inline ::pg_query::Node* JsonValueExpr::unsafe_arena_release_raw_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonValueExpr.raw_expr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.raw_expr_; + _impl_.raw_expr_ = nullptr; return temp; } -inline ::pg_query::Node* JoinExpr::_internal_mutable_rarg() { - - if (_impl_.rarg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.rarg_ = p; +inline ::pg_query::Node* JsonValueExpr::_internal_mutable_raw_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.raw_expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.raw_expr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.rarg_; -} -inline ::pg_query::Node* JoinExpr::mutable_rarg() { - ::pg_query::Node* _msg = _internal_mutable_rarg(); - // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.rarg) + return _impl_.raw_expr_; +} +inline ::pg_query::Node* JsonValueExpr::mutable_raw_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_raw_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonValueExpr.raw_expr) return _msg; } -inline void JoinExpr::set_allocated_rarg(::pg_query::Node* rarg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonValueExpr::set_allocated_raw_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.rarg_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.raw_expr_); } - if (rarg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(rarg); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - rarg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, rarg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.rarg_ = rarg; - // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.rarg) -} -// repeated .pg_query.Node using_clause = 5 [json_name = "usingClause"]; -inline int JoinExpr::_internal_using_clause_size() const { - return _impl_.using_clause_.size(); -} -inline int JoinExpr::using_clause_size() const { - return _internal_using_clause_size(); -} -inline void JoinExpr::clear_using_clause() { - _impl_.using_clause_.Clear(); -} -inline ::pg_query::Node* JoinExpr::mutable_using_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.using_clause) - return _impl_.using_clause_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -JoinExpr::mutable_using_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.JoinExpr.using_clause) - return &_impl_.using_clause_; -} -inline const ::pg_query::Node& JoinExpr::_internal_using_clause(int index) const { - return _impl_.using_clause_.Get(index); -} -inline const ::pg_query::Node& JoinExpr::using_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.JoinExpr.using_clause) - return _internal_using_clause(index); -} -inline ::pg_query::Node* JoinExpr::_internal_add_using_clause() { - return _impl_.using_clause_.Add(); -} -inline ::pg_query::Node* JoinExpr::add_using_clause() { - ::pg_query::Node* _add = _internal_add_using_clause(); - // @@protoc_insertion_point(field_add:pg_query.JoinExpr.using_clause) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -JoinExpr::using_clause() const { - // @@protoc_insertion_point(field_list:pg_query.JoinExpr.using_clause) - return _impl_.using_clause_; + _impl_.raw_expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonValueExpr.raw_expr) } -// .pg_query.Alias join_using_alias = 6 [json_name = "join_using_alias"]; -inline bool JoinExpr::_internal_has_join_using_alias() const { - return this != internal_default_instance() && _impl_.join_using_alias_ != nullptr; -} -inline bool JoinExpr::has_join_using_alias() const { - return _internal_has_join_using_alias(); +// .pg_query.Node formatted_expr = 2 [json_name = "formatted_expr"]; +inline bool JsonValueExpr::has_formatted_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.formatted_expr_ != nullptr); + return value; } -inline void JoinExpr::clear_join_using_alias() { - if (GetArenaForAllocation() == nullptr && _impl_.join_using_alias_ != nullptr) { - delete _impl_.join_using_alias_; - } - _impl_.join_using_alias_ = nullptr; +inline void JsonValueExpr::clear_formatted_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.formatted_expr_ != nullptr) _impl_.formatted_expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Alias& JoinExpr::_internal_join_using_alias() const { - const ::pg_query::Alias* p = _impl_.join_using_alias_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Alias_default_instance_); +inline const ::pg_query::Node& JsonValueExpr::_internal_formatted_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.formatted_expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Alias& JoinExpr::join_using_alias() const { - // @@protoc_insertion_point(field_get:pg_query.JoinExpr.join_using_alias) - return _internal_join_using_alias(); +inline const ::pg_query::Node& JsonValueExpr::formatted_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonValueExpr.formatted_expr) + return _internal_formatted_expr(); } -inline void JoinExpr::unsafe_arena_set_allocated_join_using_alias( - ::pg_query::Alias* join_using_alias) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.join_using_alias_); +inline void JsonValueExpr::unsafe_arena_set_allocated_formatted_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.formatted_expr_); } - _impl_.join_using_alias_ = join_using_alias; - if (join_using_alias) { - + _impl_.formatted_expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.join_using_alias) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonValueExpr.formatted_expr) } -inline ::pg_query::Alias* JoinExpr::release_join_using_alias() { - - ::pg_query::Alias* temp = _impl_.join_using_alias_; - _impl_.join_using_alias_ = nullptr; +inline ::pg_query::Node* JsonValueExpr::release_formatted_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.formatted_expr_; + _impl_.formatted_expr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Alias* JoinExpr::unsafe_arena_release_join_using_alias() { - // @@protoc_insertion_point(field_release:pg_query.JoinExpr.join_using_alias) - - ::pg_query::Alias* temp = _impl_.join_using_alias_; - _impl_.join_using_alias_ = nullptr; +inline ::pg_query::Node* JsonValueExpr::unsafe_arena_release_formatted_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonValueExpr.formatted_expr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.formatted_expr_; + _impl_.formatted_expr_ = nullptr; return temp; } -inline ::pg_query::Alias* JoinExpr::_internal_mutable_join_using_alias() { - - if (_impl_.join_using_alias_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArenaForAllocation()); - _impl_.join_using_alias_ = p; +inline ::pg_query::Node* JsonValueExpr::_internal_mutable_formatted_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.formatted_expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.formatted_expr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.join_using_alias_; + return _impl_.formatted_expr_; } -inline ::pg_query::Alias* JoinExpr::mutable_join_using_alias() { - ::pg_query::Alias* _msg = _internal_mutable_join_using_alias(); - // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.join_using_alias) +inline ::pg_query::Node* JsonValueExpr::mutable_formatted_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_formatted_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonValueExpr.formatted_expr) return _msg; } -inline void JoinExpr::set_allocated_join_using_alias(::pg_query::Alias* join_using_alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonValueExpr::set_allocated_formatted_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.join_using_alias_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.formatted_expr_); } - if (join_using_alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(join_using_alias); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - join_using_alias = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, join_using_alias, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.join_using_alias_ = join_using_alias; - // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.join_using_alias) -} -// .pg_query.Node quals = 7 [json_name = "quals"]; -inline bool JoinExpr::_internal_has_quals() const { - return this != internal_default_instance() && _impl_.quals_ != nullptr; + _impl_.formatted_expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonValueExpr.formatted_expr) } -inline bool JoinExpr::has_quals() const { - return _internal_has_quals(); + +// .pg_query.JsonFormat format = 3 [json_name = "format"]; +inline bool JsonValueExpr::has_format() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.format_ != nullptr); + return value; } -inline void JoinExpr::clear_quals() { - if (GetArenaForAllocation() == nullptr && _impl_.quals_ != nullptr) { - delete _impl_.quals_; - } - _impl_.quals_ = nullptr; +inline void JsonValueExpr::clear_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.format_ != nullptr) _impl_.format_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline const ::pg_query::Node& JoinExpr::_internal_quals() const { - const ::pg_query::Node* p = _impl_.quals_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::JsonFormat& JsonValueExpr::_internal_format() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonFormat* p = _impl_.format_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonFormat_default_instance_); } -inline const ::pg_query::Node& JoinExpr::quals() const { - // @@protoc_insertion_point(field_get:pg_query.JoinExpr.quals) - return _internal_quals(); +inline const ::pg_query::JsonFormat& JsonValueExpr::format() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonValueExpr.format) + return _internal_format(); } -inline void JoinExpr::unsafe_arena_set_allocated_quals( - ::pg_query::Node* quals) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.quals_); +inline void JsonValueExpr::unsafe_arena_set_allocated_format(::pg_query::JsonFormat* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.format_); } - _impl_.quals_ = quals; - if (quals) { - + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.quals) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonValueExpr.format) } -inline ::pg_query::Node* JoinExpr::release_quals() { - - ::pg_query::Node* temp = _impl_.quals_; - _impl_.quals_ = nullptr; +inline ::pg_query::JsonFormat* JsonValueExpr::release_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::JsonFormat* released = _impl_.format_; + _impl_.format_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* JoinExpr::unsafe_arena_release_quals() { - // @@protoc_insertion_point(field_release:pg_query.JoinExpr.quals) - - ::pg_query::Node* temp = _impl_.quals_; - _impl_.quals_ = nullptr; +inline ::pg_query::JsonFormat* JsonValueExpr::unsafe_arena_release_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonValueExpr.format) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::JsonFormat* temp = _impl_.format_; + _impl_.format_ = nullptr; return temp; } -inline ::pg_query::Node* JoinExpr::_internal_mutable_quals() { - - if (_impl_.quals_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.quals_ = p; +inline ::pg_query::JsonFormat* JsonValueExpr::_internal_mutable_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.format_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonFormat>(GetArena()); + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(p); } - return _impl_.quals_; + return _impl_.format_; } -inline ::pg_query::Node* JoinExpr::mutable_quals() { - ::pg_query::Node* _msg = _internal_mutable_quals(); - // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.quals) +inline ::pg_query::JsonFormat* JsonValueExpr::mutable_format() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonFormat* _msg = _internal_mutable_format(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonValueExpr.format) return _msg; } -inline void JoinExpr::set_allocated_quals(::pg_query::Node* quals) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonValueExpr::set_allocated_format(::pg_query::JsonFormat* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.quals_; + delete reinterpret_cast<::pg_query::JsonFormat*>(_impl_.format_); } - if (quals) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(quals); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonFormat*>(value)->GetArena(); if (message_arena != submessage_arena) { - quals = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, quals, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.quals_ = quals; - // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.quals) -} -// .pg_query.Alias alias = 8 [json_name = "alias"]; -inline bool JoinExpr::_internal_has_alias() const { - return this != internal_default_instance() && _impl_.alias_ != nullptr; -} -inline bool JoinExpr::has_alias() const { - return _internal_has_alias(); -} -inline void JoinExpr::clear_alias() { - if (GetArenaForAllocation() == nullptr && _impl_.alias_ != nullptr) { - delete _impl_.alias_; - } - _impl_.alias_ = nullptr; + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonValueExpr.format) } -inline const ::pg_query::Alias& JoinExpr::_internal_alias() const { - const ::pg_query::Alias* p = _impl_.alias_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Alias_default_instance_); + +// ------------------------------------------------------------------- + +// JsonConstructorExpr + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool JsonConstructorExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; +} +inline void JsonConstructorExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& JsonConstructorExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Alias& JoinExpr::alias() const { - // @@protoc_insertion_point(field_get:pg_query.JoinExpr.alias) - return _internal_alias(); +inline const ::pg_query::Node& JsonConstructorExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonConstructorExpr.xpr) + return _internal_xpr(); } -inline void JoinExpr::unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.alias_); +inline void JsonConstructorExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.alias_ = alias; - if (alias) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.alias) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonConstructorExpr.xpr) } -inline ::pg_query::Alias* JoinExpr::release_alias() { - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; +inline ::pg_query::Node* JsonConstructorExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Alias* JoinExpr::unsafe_arena_release_alias() { - // @@protoc_insertion_point(field_release:pg_query.JoinExpr.alias) - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; +inline ::pg_query::Node* JsonConstructorExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonConstructorExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Alias* JoinExpr::_internal_mutable_alias() { - - if (_impl_.alias_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArenaForAllocation()); - _impl_.alias_ = p; +inline ::pg_query::Node* JsonConstructorExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.alias_; + return _impl_.xpr_; } -inline ::pg_query::Alias* JoinExpr::mutable_alias() { - ::pg_query::Alias* _msg = _internal_mutable_alias(); - // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.alias) +inline ::pg_query::Node* JsonConstructorExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonConstructorExpr.xpr) return _msg; } -inline void JoinExpr::set_allocated_alias(::pg_query::Alias* alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonConstructorExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.alias_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(alias); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - alias = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, alias, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.alias_ = alias; - // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.alias) + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonConstructorExpr.xpr) } -// int32 rtindex = 9 [json_name = "rtindex"]; -inline void JoinExpr::clear_rtindex() { - _impl_.rtindex_ = 0; +// .pg_query.JsonConstructorType type = 2 [json_name = "type"]; +inline void JsonConstructorExpr::clear_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_ = 0; } -inline int32_t JoinExpr::_internal_rtindex() const { - return _impl_.rtindex_; +inline ::pg_query::JsonConstructorType JsonConstructorExpr::type() const { + // @@protoc_insertion_point(field_get:pg_query.JsonConstructorExpr.type) + return _internal_type(); } -inline int32_t JoinExpr::rtindex() const { - // @@protoc_insertion_point(field_get:pg_query.JoinExpr.rtindex) - return _internal_rtindex(); +inline void JsonConstructorExpr::set_type(::pg_query::JsonConstructorType value) { + _internal_set_type(value); + // @@protoc_insertion_point(field_set:pg_query.JsonConstructorExpr.type) } -inline void JoinExpr::_internal_set_rtindex(int32_t value) { - - _impl_.rtindex_ = value; +inline ::pg_query::JsonConstructorType JsonConstructorExpr::_internal_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::JsonConstructorType>(_impl_.type_); } -inline void JoinExpr::set_rtindex(int32_t value) { - _internal_set_rtindex(value); - // @@protoc_insertion_point(field_set:pg_query.JoinExpr.rtindex) +inline void JsonConstructorExpr::_internal_set_type(::pg_query::JsonConstructorType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_ = value; } -// ------------------------------------------------------------------- - -// FromExpr - -// repeated .pg_query.Node fromlist = 1 [json_name = "fromlist"]; -inline int FromExpr::_internal_fromlist_size() const { - return _impl_.fromlist_.size(); -} -inline int FromExpr::fromlist_size() const { - return _internal_fromlist_size(); -} -inline void FromExpr::clear_fromlist() { - _impl_.fromlist_.Clear(); -} -inline ::pg_query::Node* FromExpr::mutable_fromlist(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.FromExpr.fromlist) - return _impl_.fromlist_.Mutable(index); +// repeated .pg_query.Node args = 3 [json_name = "args"]; +inline int JsonConstructorExpr::_internal_args_size() const { + return _internal_args().size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -FromExpr::mutable_fromlist() { - // @@protoc_insertion_point(field_mutable_list:pg_query.FromExpr.fromlist) - return &_impl_.fromlist_; +inline int JsonConstructorExpr::args_size() const { + return _internal_args_size(); } -inline const ::pg_query::Node& FromExpr::_internal_fromlist(int index) const { - return _impl_.fromlist_.Get(index); +inline void JsonConstructorExpr::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline const ::pg_query::Node& FromExpr::fromlist(int index) const { - // @@protoc_insertion_point(field_get:pg_query.FromExpr.fromlist) - return _internal_fromlist(index); +inline ::pg_query::Node* JsonConstructorExpr::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.JsonConstructorExpr.args) + return _internal_mutable_args()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* JsonConstructorExpr::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.JsonConstructorExpr.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); +} +inline const ::pg_query::Node& JsonConstructorExpr::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonConstructorExpr.args) + return _internal_args().Get(index); +} +inline ::pg_query::Node* JsonConstructorExpr::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.JsonConstructorExpr.args) + return _add; } -inline ::pg_query::Node* FromExpr::_internal_add_fromlist() { - return _impl_.fromlist_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& JsonConstructorExpr::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.JsonConstructorExpr.args) + return _internal_args(); } -inline ::pg_query::Node* FromExpr::add_fromlist() { - ::pg_query::Node* _add = _internal_add_fromlist(); - // @@protoc_insertion_point(field_add:pg_query.FromExpr.fromlist) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +JsonConstructorExpr::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -FromExpr::fromlist() const { - // @@protoc_insertion_point(field_list:pg_query.FromExpr.fromlist) - return _impl_.fromlist_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +JsonConstructorExpr::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// .pg_query.Node quals = 2 [json_name = "quals"]; -inline bool FromExpr::_internal_has_quals() const { - return this != internal_default_instance() && _impl_.quals_ != nullptr; +// .pg_query.Node func = 4 [json_name = "func"]; +inline bool JsonConstructorExpr::has_func() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.func_ != nullptr); + return value; } -inline bool FromExpr::has_quals() const { - return _internal_has_quals(); -} -inline void FromExpr::clear_quals() { - if (GetArenaForAllocation() == nullptr && _impl_.quals_ != nullptr) { - delete _impl_.quals_; - } - _impl_.quals_ = nullptr; +inline void JsonConstructorExpr::clear_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.func_ != nullptr) _impl_.func_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& FromExpr::_internal_quals() const { - const ::pg_query::Node* p = _impl_.quals_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& JsonConstructorExpr::_internal_func() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.func_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& FromExpr::quals() const { - // @@protoc_insertion_point(field_get:pg_query.FromExpr.quals) - return _internal_quals(); +inline const ::pg_query::Node& JsonConstructorExpr::func() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonConstructorExpr.func) + return _internal_func(); } -inline void FromExpr::unsafe_arena_set_allocated_quals( - ::pg_query::Node* quals) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.quals_); +inline void JsonConstructorExpr::unsafe_arena_set_allocated_func(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.func_); } - _impl_.quals_ = quals; - if (quals) { - + _impl_.func_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FromExpr.quals) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonConstructorExpr.func) } -inline ::pg_query::Node* FromExpr::release_quals() { - - ::pg_query::Node* temp = _impl_.quals_; - _impl_.quals_ = nullptr; +inline ::pg_query::Node* JsonConstructorExpr::release_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.func_; + _impl_.func_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* FromExpr::unsafe_arena_release_quals() { - // @@protoc_insertion_point(field_release:pg_query.FromExpr.quals) - - ::pg_query::Node* temp = _impl_.quals_; - _impl_.quals_ = nullptr; +inline ::pg_query::Node* JsonConstructorExpr::unsafe_arena_release_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonConstructorExpr.func) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.func_; + _impl_.func_ = nullptr; return temp; } -inline ::pg_query::Node* FromExpr::_internal_mutable_quals() { - - if (_impl_.quals_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.quals_ = p; +inline ::pg_query::Node* JsonConstructorExpr::_internal_mutable_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.func_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.func_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.quals_; + return _impl_.func_; } -inline ::pg_query::Node* FromExpr::mutable_quals() { - ::pg_query::Node* _msg = _internal_mutable_quals(); - // @@protoc_insertion_point(field_mutable:pg_query.FromExpr.quals) +inline ::pg_query::Node* JsonConstructorExpr::mutable_func() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_func(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonConstructorExpr.func) return _msg; } -inline void FromExpr::set_allocated_quals(::pg_query::Node* quals) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonConstructorExpr::set_allocated_func(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.quals_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.func_); } - if (quals) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(quals); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - quals = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, quals, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.quals_ = quals; - // @@protoc_insertion_point(field_set_allocated:pg_query.FromExpr.quals) -} - -// ------------------------------------------------------------------- -// OnConflictExpr - -// .pg_query.OnConflictAction action = 1 [json_name = "action"]; -inline void OnConflictExpr::clear_action() { - _impl_.action_ = 0; -} -inline ::pg_query::OnConflictAction OnConflictExpr::_internal_action() const { - return static_cast< ::pg_query::OnConflictAction >(_impl_.action_); -} -inline ::pg_query::OnConflictAction OnConflictExpr::action() const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.action) - return _internal_action(); -} -inline void OnConflictExpr::_internal_set_action(::pg_query::OnConflictAction value) { - - _impl_.action_ = value; -} -inline void OnConflictExpr::set_action(::pg_query::OnConflictAction value) { - _internal_set_action(value); - // @@protoc_insertion_point(field_set:pg_query.OnConflictExpr.action) + _impl_.func_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonConstructorExpr.func) } -// repeated .pg_query.Node arbiter_elems = 2 [json_name = "arbiterElems"]; -inline int OnConflictExpr::_internal_arbiter_elems_size() const { - return _impl_.arbiter_elems_.size(); +// .pg_query.Node coercion = 5 [json_name = "coercion"]; +inline bool JsonConstructorExpr::has_coercion() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.coercion_ != nullptr); + return value; } -inline int OnConflictExpr::arbiter_elems_size() const { - return _internal_arbiter_elems_size(); -} -inline void OnConflictExpr::clear_arbiter_elems() { - _impl_.arbiter_elems_.Clear(); +inline void JsonConstructorExpr::clear_coercion() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.coercion_ != nullptr) _impl_.coercion_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline ::pg_query::Node* OnConflictExpr::mutable_arbiter_elems(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.arbiter_elems) - return _impl_.arbiter_elems_.Mutable(index); +inline const ::pg_query::Node& JsonConstructorExpr::_internal_coercion() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.coercion_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -OnConflictExpr::mutable_arbiter_elems() { - // @@protoc_insertion_point(field_mutable_list:pg_query.OnConflictExpr.arbiter_elems) - return &_impl_.arbiter_elems_; +inline const ::pg_query::Node& JsonConstructorExpr::coercion() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonConstructorExpr.coercion) + return _internal_coercion(); } -inline const ::pg_query::Node& OnConflictExpr::_internal_arbiter_elems(int index) const { - return _impl_.arbiter_elems_.Get(index); +inline void JsonConstructorExpr::unsafe_arena_set_allocated_coercion(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.coercion_); + } + _impl_.coercion_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonConstructorExpr.coercion) } -inline const ::pg_query::Node& OnConflictExpr::arbiter_elems(int index) const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.arbiter_elems) - return _internal_arbiter_elems(index); +inline ::pg_query::Node* JsonConstructorExpr::release_coercion() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.coercion_; + _impl_.coercion_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::Node* OnConflictExpr::_internal_add_arbiter_elems() { - return _impl_.arbiter_elems_.Add(); +inline ::pg_query::Node* JsonConstructorExpr::unsafe_arena_release_coercion() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonConstructorExpr.coercion) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.coercion_; + _impl_.coercion_ = nullptr; + return temp; } -inline ::pg_query::Node* OnConflictExpr::add_arbiter_elems() { - ::pg_query::Node* _add = _internal_add_arbiter_elems(); - // @@protoc_insertion_point(field_add:pg_query.OnConflictExpr.arbiter_elems) - return _add; +inline ::pg_query::Node* JsonConstructorExpr::_internal_mutable_coercion() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.coercion_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.coercion_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.coercion_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -OnConflictExpr::arbiter_elems() const { - // @@protoc_insertion_point(field_list:pg_query.OnConflictExpr.arbiter_elems) - return _impl_.arbiter_elems_; +inline ::pg_query::Node* JsonConstructorExpr::mutable_coercion() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_coercion(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonConstructorExpr.coercion) + return _msg; } +inline void JsonConstructorExpr::set_allocated_coercion(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.coercion_); + } -// .pg_query.Node arbiter_where = 3 [json_name = "arbiterWhere"]; -inline bool OnConflictExpr::_internal_has_arbiter_where() const { - return this != internal_default_instance() && _impl_.arbiter_where_ != nullptr; + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.coercion_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonConstructorExpr.coercion) } -inline bool OnConflictExpr::has_arbiter_where() const { - return _internal_has_arbiter_where(); + +// .pg_query.JsonReturning returning = 6 [json_name = "returning"]; +inline bool JsonConstructorExpr::has_returning() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.returning_ != nullptr); + return value; } -inline void OnConflictExpr::clear_arbiter_where() { - if (GetArenaForAllocation() == nullptr && _impl_.arbiter_where_ != nullptr) { - delete _impl_.arbiter_where_; - } - _impl_.arbiter_where_ = nullptr; +inline void JsonConstructorExpr::clear_returning() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.returning_ != nullptr) _impl_.returning_->Clear(); + _impl_._has_bits_[0] &= ~0x00000008u; } -inline const ::pg_query::Node& OnConflictExpr::_internal_arbiter_where() const { - const ::pg_query::Node* p = _impl_.arbiter_where_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::JsonReturning& JsonConstructorExpr::_internal_returning() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonReturning* p = _impl_.returning_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonReturning_default_instance_); } -inline const ::pg_query::Node& OnConflictExpr::arbiter_where() const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.arbiter_where) - return _internal_arbiter_where(); +inline const ::pg_query::JsonReturning& JsonConstructorExpr::returning() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonConstructorExpr.returning) + return _internal_returning(); } -inline void OnConflictExpr::unsafe_arena_set_allocated_arbiter_where( - ::pg_query::Node* arbiter_where) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arbiter_where_); +inline void JsonConstructorExpr::unsafe_arena_set_allocated_returning(::pg_query::JsonReturning* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.returning_); } - _impl_.arbiter_where_ = arbiter_where; - if (arbiter_where) { - + _impl_.returning_ = reinterpret_cast<::pg_query::JsonReturning*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OnConflictExpr.arbiter_where) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonConstructorExpr.returning) } -inline ::pg_query::Node* OnConflictExpr::release_arbiter_where() { - - ::pg_query::Node* temp = _impl_.arbiter_where_; - _impl_.arbiter_where_ = nullptr; +inline ::pg_query::JsonReturning* JsonConstructorExpr::release_returning() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::JsonReturning* released = _impl_.returning_; + _impl_.returning_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* OnConflictExpr::unsafe_arena_release_arbiter_where() { - // @@protoc_insertion_point(field_release:pg_query.OnConflictExpr.arbiter_where) - - ::pg_query::Node* temp = _impl_.arbiter_where_; - _impl_.arbiter_where_ = nullptr; +inline ::pg_query::JsonReturning* JsonConstructorExpr::unsafe_arena_release_returning() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonConstructorExpr.returning) + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::JsonReturning* temp = _impl_.returning_; + _impl_.returning_ = nullptr; return temp; } -inline ::pg_query::Node* OnConflictExpr::_internal_mutable_arbiter_where() { - - if (_impl_.arbiter_where_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arbiter_where_ = p; +inline ::pg_query::JsonReturning* JsonConstructorExpr::_internal_mutable_returning() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.returning_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonReturning>(GetArena()); + _impl_.returning_ = reinterpret_cast<::pg_query::JsonReturning*>(p); } - return _impl_.arbiter_where_; + return _impl_.returning_; } -inline ::pg_query::Node* OnConflictExpr::mutable_arbiter_where() { - ::pg_query::Node* _msg = _internal_mutable_arbiter_where(); - // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.arbiter_where) +inline ::pg_query::JsonReturning* JsonConstructorExpr::mutable_returning() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonReturning* _msg = _internal_mutable_returning(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonConstructorExpr.returning) return _msg; } -inline void OnConflictExpr::set_allocated_arbiter_where(::pg_query::Node* arbiter_where) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonConstructorExpr::set_allocated_returning(::pg_query::JsonReturning* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.arbiter_where_; + delete reinterpret_cast<::pg_query::JsonReturning*>(_impl_.returning_); } - if (arbiter_where) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arbiter_where); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonReturning*>(value)->GetArena(); if (message_arena != submessage_arena) { - arbiter_where = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arbiter_where, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; } - _impl_.arbiter_where_ = arbiter_where; - // @@protoc_insertion_point(field_set_allocated:pg_query.OnConflictExpr.arbiter_where) + + _impl_.returning_ = reinterpret_cast<::pg_query::JsonReturning*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonConstructorExpr.returning) } -// uint32 constraint = 4 [json_name = "constraint"]; -inline void OnConflictExpr::clear_constraint() { - _impl_.constraint_ = 0u; +// bool absent_on_null = 7 [json_name = "absent_on_null"]; +inline void JsonConstructorExpr::clear_absent_on_null() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.absent_on_null_ = false; } -inline uint32_t OnConflictExpr::_internal_constraint() const { - return _impl_.constraint_; +inline bool JsonConstructorExpr::absent_on_null() const { + // @@protoc_insertion_point(field_get:pg_query.JsonConstructorExpr.absent_on_null) + return _internal_absent_on_null(); } -inline uint32_t OnConflictExpr::constraint() const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.constraint) - return _internal_constraint(); +inline void JsonConstructorExpr::set_absent_on_null(bool value) { + _internal_set_absent_on_null(value); + // @@protoc_insertion_point(field_set:pg_query.JsonConstructorExpr.absent_on_null) } -inline void OnConflictExpr::_internal_set_constraint(uint32_t value) { - - _impl_.constraint_ = value; +inline bool JsonConstructorExpr::_internal_absent_on_null() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.absent_on_null_; } -inline void OnConflictExpr::set_constraint(uint32_t value) { - _internal_set_constraint(value); - // @@protoc_insertion_point(field_set:pg_query.OnConflictExpr.constraint) +inline void JsonConstructorExpr::_internal_set_absent_on_null(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.absent_on_null_ = value; } -// repeated .pg_query.Node on_conflict_set = 5 [json_name = "onConflictSet"]; -inline int OnConflictExpr::_internal_on_conflict_set_size() const { - return _impl_.on_conflict_set_.size(); +// bool unique = 8 [json_name = "unique"]; +inline void JsonConstructorExpr::clear_unique() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.unique_ = false; } -inline int OnConflictExpr::on_conflict_set_size() const { - return _internal_on_conflict_set_size(); +inline bool JsonConstructorExpr::unique() const { + // @@protoc_insertion_point(field_get:pg_query.JsonConstructorExpr.unique) + return _internal_unique(); } -inline void OnConflictExpr::clear_on_conflict_set() { - _impl_.on_conflict_set_.Clear(); +inline void JsonConstructorExpr::set_unique(bool value) { + _internal_set_unique(value); + // @@protoc_insertion_point(field_set:pg_query.JsonConstructorExpr.unique) } -inline ::pg_query::Node* OnConflictExpr::mutable_on_conflict_set(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.on_conflict_set) - return _impl_.on_conflict_set_.Mutable(index); +inline bool JsonConstructorExpr::_internal_unique() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.unique_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -OnConflictExpr::mutable_on_conflict_set() { - // @@protoc_insertion_point(field_mutable_list:pg_query.OnConflictExpr.on_conflict_set) - return &_impl_.on_conflict_set_; +inline void JsonConstructorExpr::_internal_set_unique(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.unique_ = value; } -inline const ::pg_query::Node& OnConflictExpr::_internal_on_conflict_set(int index) const { - return _impl_.on_conflict_set_.Get(index); + +// int32 location = 9 [json_name = "location"]; +inline void JsonConstructorExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& OnConflictExpr::on_conflict_set(int index) const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.on_conflict_set) - return _internal_on_conflict_set(index); +inline ::int32_t JsonConstructorExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.JsonConstructorExpr.location) + return _internal_location(); } -inline ::pg_query::Node* OnConflictExpr::_internal_add_on_conflict_set() { - return _impl_.on_conflict_set_.Add(); +inline void JsonConstructorExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.JsonConstructorExpr.location) } -inline ::pg_query::Node* OnConflictExpr::add_on_conflict_set() { - ::pg_query::Node* _add = _internal_add_on_conflict_set(); - // @@protoc_insertion_point(field_add:pg_query.OnConflictExpr.on_conflict_set) - return _add; +inline ::int32_t JsonConstructorExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -OnConflictExpr::on_conflict_set() const { - // @@protoc_insertion_point(field_list:pg_query.OnConflictExpr.on_conflict_set) - return _impl_.on_conflict_set_; +inline void JsonConstructorExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.Node on_conflict_where = 6 [json_name = "onConflictWhere"]; -inline bool OnConflictExpr::_internal_has_on_conflict_where() const { - return this != internal_default_instance() && _impl_.on_conflict_where_ != nullptr; +// ------------------------------------------------------------------- + +// JsonIsPredicate + +// .pg_query.Node expr = 1 [json_name = "expr"]; +inline bool JsonIsPredicate::has_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.expr_ != nullptr); + return value; } -inline bool OnConflictExpr::has_on_conflict_where() const { - return _internal_has_on_conflict_where(); +inline void JsonIsPredicate::clear_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.expr_ != nullptr) _impl_.expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void OnConflictExpr::clear_on_conflict_where() { - if (GetArenaForAllocation() == nullptr && _impl_.on_conflict_where_ != nullptr) { - delete _impl_.on_conflict_where_; +inline const ::pg_query::Node& JsonIsPredicate::_internal_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& JsonIsPredicate::expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonIsPredicate.expr) + return _internal_expr(); +} +inline void JsonIsPredicate::unsafe_arena_set_allocated_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.expr_); } - _impl_.on_conflict_where_ = nullptr; + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonIsPredicate.expr) } -inline const ::pg_query::Node& OnConflictExpr::_internal_on_conflict_where() const { - const ::pg_query::Node* p = _impl_.on_conflict_where_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::Node* JsonIsPredicate::release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.expr_; + _impl_.expr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& OnConflictExpr::on_conflict_where() const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.on_conflict_where) - return _internal_on_conflict_where(); +inline ::pg_query::Node* JsonIsPredicate::unsafe_arena_release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonIsPredicate.expr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.expr_; + _impl_.expr_ = nullptr; + return temp; } -inline void OnConflictExpr::unsafe_arena_set_allocated_on_conflict_where( - ::pg_query::Node* on_conflict_where) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.on_conflict_where_); +inline ::pg_query::Node* JsonIsPredicate::_internal_mutable_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.expr_; +} +inline ::pg_query::Node* JsonIsPredicate::mutable_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonIsPredicate.expr) + return _msg; +} +inline void JsonIsPredicate::set_allocated_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.expr_); } - _impl_.on_conflict_where_ = on_conflict_where; - if (on_conflict_where) { - + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OnConflictExpr.on_conflict_where) + + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonIsPredicate.expr) } -inline ::pg_query::Node* OnConflictExpr::release_on_conflict_where() { - - ::pg_query::Node* temp = _impl_.on_conflict_where_; - _impl_.on_conflict_where_ = nullptr; + +// .pg_query.JsonFormat format = 2 [json_name = "format"]; +inline bool JsonIsPredicate::has_format() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.format_ != nullptr); + return value; +} +inline void JsonIsPredicate::clear_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.format_ != nullptr) _impl_.format_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::JsonFormat& JsonIsPredicate::_internal_format() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonFormat* p = _impl_.format_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonFormat_default_instance_); +} +inline const ::pg_query::JsonFormat& JsonIsPredicate::format() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonIsPredicate.format) + return _internal_format(); +} +inline void JsonIsPredicate::unsafe_arena_set_allocated_format(::pg_query::JsonFormat* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.format_); + } + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonIsPredicate.format) +} +inline ::pg_query::JsonFormat* JsonIsPredicate::release_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonFormat* released = _impl_.format_; + _impl_.format_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* OnConflictExpr::unsafe_arena_release_on_conflict_where() { - // @@protoc_insertion_point(field_release:pg_query.OnConflictExpr.on_conflict_where) - - ::pg_query::Node* temp = _impl_.on_conflict_where_; - _impl_.on_conflict_where_ = nullptr; +inline ::pg_query::JsonFormat* JsonIsPredicate::unsafe_arena_release_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonIsPredicate.format) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonFormat* temp = _impl_.format_; + _impl_.format_ = nullptr; return temp; } -inline ::pg_query::Node* OnConflictExpr::_internal_mutable_on_conflict_where() { - - if (_impl_.on_conflict_where_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.on_conflict_where_ = p; +inline ::pg_query::JsonFormat* JsonIsPredicate::_internal_mutable_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.format_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonFormat>(GetArena()); + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(p); } - return _impl_.on_conflict_where_; + return _impl_.format_; } -inline ::pg_query::Node* OnConflictExpr::mutable_on_conflict_where() { - ::pg_query::Node* _msg = _internal_mutable_on_conflict_where(); - // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.on_conflict_where) +inline ::pg_query::JsonFormat* JsonIsPredicate::mutable_format() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonFormat* _msg = _internal_mutable_format(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonIsPredicate.format) return _msg; } -inline void OnConflictExpr::set_allocated_on_conflict_where(::pg_query::Node* on_conflict_where) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonIsPredicate::set_allocated_format(::pg_query::JsonFormat* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.on_conflict_where_; + delete reinterpret_cast<::pg_query::JsonFormat*>(_impl_.format_); } - if (on_conflict_where) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(on_conflict_where); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonFormat*>(value)->GetArena(); if (message_arena != submessage_arena) { - on_conflict_where = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, on_conflict_where, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.on_conflict_where_ = on_conflict_where; - // @@protoc_insertion_point(field_set_allocated:pg_query.OnConflictExpr.on_conflict_where) + + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonIsPredicate.format) } -// int32 excl_rel_index = 7 [json_name = "exclRelIndex"]; -inline void OnConflictExpr::clear_excl_rel_index() { - _impl_.excl_rel_index_ = 0; +// .pg_query.JsonValueType item_type = 3 [json_name = "item_type"]; +inline void JsonIsPredicate::clear_item_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.item_type_ = 0; } -inline int32_t OnConflictExpr::_internal_excl_rel_index() const { - return _impl_.excl_rel_index_; +inline ::pg_query::JsonValueType JsonIsPredicate::item_type() const { + // @@protoc_insertion_point(field_get:pg_query.JsonIsPredicate.item_type) + return _internal_item_type(); } -inline int32_t OnConflictExpr::excl_rel_index() const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.excl_rel_index) - return _internal_excl_rel_index(); +inline void JsonIsPredicate::set_item_type(::pg_query::JsonValueType value) { + _internal_set_item_type(value); + // @@protoc_insertion_point(field_set:pg_query.JsonIsPredicate.item_type) } -inline void OnConflictExpr::_internal_set_excl_rel_index(int32_t value) { - - _impl_.excl_rel_index_ = value; +inline ::pg_query::JsonValueType JsonIsPredicate::_internal_item_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::JsonValueType>(_impl_.item_type_); } -inline void OnConflictExpr::set_excl_rel_index(int32_t value) { - _internal_set_excl_rel_index(value); - // @@protoc_insertion_point(field_set:pg_query.OnConflictExpr.excl_rel_index) +inline void JsonIsPredicate::_internal_set_item_type(::pg_query::JsonValueType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.item_type_ = value; } -// repeated .pg_query.Node excl_rel_tlist = 8 [json_name = "exclRelTlist"]; -inline int OnConflictExpr::_internal_excl_rel_tlist_size() const { - return _impl_.excl_rel_tlist_.size(); +// bool unique_keys = 4 [json_name = "unique_keys"]; +inline void JsonIsPredicate::clear_unique_keys() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.unique_keys_ = false; } -inline int OnConflictExpr::excl_rel_tlist_size() const { - return _internal_excl_rel_tlist_size(); +inline bool JsonIsPredicate::unique_keys() const { + // @@protoc_insertion_point(field_get:pg_query.JsonIsPredicate.unique_keys) + return _internal_unique_keys(); } -inline void OnConflictExpr::clear_excl_rel_tlist() { - _impl_.excl_rel_tlist_.Clear(); +inline void JsonIsPredicate::set_unique_keys(bool value) { + _internal_set_unique_keys(value); + // @@protoc_insertion_point(field_set:pg_query.JsonIsPredicate.unique_keys) } -inline ::pg_query::Node* OnConflictExpr::mutable_excl_rel_tlist(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.excl_rel_tlist) - return _impl_.excl_rel_tlist_.Mutable(index); +inline bool JsonIsPredicate::_internal_unique_keys() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.unique_keys_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -OnConflictExpr::mutable_excl_rel_tlist() { - // @@protoc_insertion_point(field_mutable_list:pg_query.OnConflictExpr.excl_rel_tlist) - return &_impl_.excl_rel_tlist_; +inline void JsonIsPredicate::_internal_set_unique_keys(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.unique_keys_ = value; } -inline const ::pg_query::Node& OnConflictExpr::_internal_excl_rel_tlist(int index) const { - return _impl_.excl_rel_tlist_.Get(index); + +// int32 location = 5 [json_name = "location"]; +inline void JsonIsPredicate::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& OnConflictExpr::excl_rel_tlist(int index) const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.excl_rel_tlist) - return _internal_excl_rel_tlist(index); +inline ::int32_t JsonIsPredicate::location() const { + // @@protoc_insertion_point(field_get:pg_query.JsonIsPredicate.location) + return _internal_location(); } -inline ::pg_query::Node* OnConflictExpr::_internal_add_excl_rel_tlist() { - return _impl_.excl_rel_tlist_.Add(); +inline void JsonIsPredicate::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.JsonIsPredicate.location) } -inline ::pg_query::Node* OnConflictExpr::add_excl_rel_tlist() { - ::pg_query::Node* _add = _internal_add_excl_rel_tlist(); - // @@protoc_insertion_point(field_add:pg_query.OnConflictExpr.excl_rel_tlist) - return _add; +inline ::int32_t JsonIsPredicate::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -OnConflictExpr::excl_rel_tlist() const { - // @@protoc_insertion_point(field_list:pg_query.OnConflictExpr.excl_rel_tlist) - return _impl_.excl_rel_tlist_; +inline void JsonIsPredicate::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// IntoClause +// NullTest -// .pg_query.RangeVar rel = 1 [json_name = "rel"]; -inline bool IntoClause::_internal_has_rel() const { - return this != internal_default_instance() && _impl_.rel_ != nullptr; -} -inline bool IntoClause::has_rel() const { - return _internal_has_rel(); +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool NullTest::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void IntoClause::clear_rel() { - if (GetArenaForAllocation() == nullptr && _impl_.rel_ != nullptr) { - delete _impl_.rel_; - } - _impl_.rel_ = nullptr; +inline void NullTest::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RangeVar& IntoClause::_internal_rel() const { - const ::pg_query::RangeVar* p = _impl_.rel_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::Node& NullTest::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RangeVar& IntoClause::rel() const { - // @@protoc_insertion_point(field_get:pg_query.IntoClause.rel) - return _internal_rel(); +inline const ::pg_query::Node& NullTest::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NullTest.xpr) + return _internal_xpr(); } -inline void IntoClause::unsafe_arena_set_allocated_rel( - ::pg_query::RangeVar* rel) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.rel_); +inline void NullTest::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.rel_ = rel; - if (rel) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IntoClause.rel) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NullTest.xpr) } -inline ::pg_query::RangeVar* IntoClause::release_rel() { - - ::pg_query::RangeVar* temp = _impl_.rel_; - _impl_.rel_ = nullptr; +inline ::pg_query::Node* NullTest::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* IntoClause::unsafe_arena_release_rel() { - // @@protoc_insertion_point(field_release:pg_query.IntoClause.rel) - - ::pg_query::RangeVar* temp = _impl_.rel_; - _impl_.rel_ = nullptr; +inline ::pg_query::Node* NullTest::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.NullTest.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::RangeVar* IntoClause::_internal_mutable_rel() { - - if (_impl_.rel_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.rel_ = p; +inline ::pg_query::Node* NullTest::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.rel_; + return _impl_.xpr_; } -inline ::pg_query::RangeVar* IntoClause::mutable_rel() { - ::pg_query::RangeVar* _msg = _internal_mutable_rel(); - // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.rel) +inline ::pg_query::Node* NullTest::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.NullTest.xpr) return _msg; } -inline void IntoClause::set_allocated_rel(::pg_query::RangeVar* rel) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void NullTest::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.rel_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (rel) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(rel); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - rel = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, rel, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.rel_ = rel; - // @@protoc_insertion_point(field_set_allocated:pg_query.IntoClause.rel) -} - -// repeated .pg_query.Node col_names = 2 [json_name = "colNames"]; -inline int IntoClause::_internal_col_names_size() const { - return _impl_.col_names_.size(); -} -inline int IntoClause::col_names_size() const { - return _internal_col_names_size(); -} -inline void IntoClause::clear_col_names() { - _impl_.col_names_.Clear(); -} -inline ::pg_query::Node* IntoClause::mutable_col_names(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.col_names) - return _impl_.col_names_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IntoClause::mutable_col_names() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IntoClause.col_names) - return &_impl_.col_names_; -} -inline const ::pg_query::Node& IntoClause::_internal_col_names(int index) const { - return _impl_.col_names_.Get(index); -} -inline const ::pg_query::Node& IntoClause::col_names(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IntoClause.col_names) - return _internal_col_names(index); -} -inline ::pg_query::Node* IntoClause::_internal_add_col_names() { - return _impl_.col_names_.Add(); -} -inline ::pg_query::Node* IntoClause::add_col_names() { - ::pg_query::Node* _add = _internal_add_col_names(); - // @@protoc_insertion_point(field_add:pg_query.IntoClause.col_names) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IntoClause::col_names() const { - // @@protoc_insertion_point(field_list:pg_query.IntoClause.col_names) - return _impl_.col_names_; -} -// string access_method = 3 [json_name = "accessMethod"]; -inline void IntoClause::clear_access_method() { - _impl_.access_method_.ClearToEmpty(); -} -inline const std::string& IntoClause::access_method() const { - // @@protoc_insertion_point(field_get:pg_query.IntoClause.access_method) - return _internal_access_method(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void IntoClause::set_access_method(ArgT0&& arg0, ArgT... args) { - - _impl_.access_method_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.IntoClause.access_method) -} -inline std::string* IntoClause::mutable_access_method() { - std::string* _s = _internal_mutable_access_method(); - // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.access_method) - return _s; + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.NullTest.xpr) } -inline const std::string& IntoClause::_internal_access_method() const { - return _impl_.access_method_.Get(); + +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool NullTest::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void IntoClause::_internal_set_access_method(const std::string& value) { - - _impl_.access_method_.Set(value, GetArenaForAllocation()); +inline void NullTest::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline std::string* IntoClause::_internal_mutable_access_method() { - - return _impl_.access_method_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Node& NullTest::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* IntoClause::release_access_method() { - // @@protoc_insertion_point(field_release:pg_query.IntoClause.access_method) - return _impl_.access_method_.Release(); +inline const ::pg_query::Node& NullTest::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NullTest.arg) + return _internal_arg(); } -inline void IntoClause::set_allocated_access_method(std::string* access_method) { - if (access_method != nullptr) { - - } else { - +inline void NullTest::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.access_method_.SetAllocated(access_method, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.access_method_.IsDefault()) { - _impl_.access_method_.Set("", GetArenaForAllocation()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.IntoClause.access_method) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NullTest.arg) } +inline ::pg_query::Node* NullTest::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node options = 4 [json_name = "options"]; -inline int IntoClause::_internal_options_size() const { - return _impl_.options_.size(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int IntoClause::options_size() const { - return _internal_options_size(); +inline ::pg_query::Node* NullTest::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.NullTest.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; + return temp; } -inline void IntoClause::clear_options() { - _impl_.options_.Clear(); +inline ::pg_query::Node* NullTest::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.arg_; } -inline ::pg_query::Node* IntoClause::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.options) - return _impl_.options_.Mutable(index); +inline ::pg_query::Node* NullTest::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.NullTest.arg) + return _msg; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IntoClause::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IntoClause.options) - return &_impl_.options_; +inline void NullTest::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.NullTest.arg) } -inline const ::pg_query::Node& IntoClause::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// .pg_query.NullTestType nulltesttype = 3 [json_name = "nulltesttype"]; +inline void NullTest::clear_nulltesttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.nulltesttype_ = 0; } -inline const ::pg_query::Node& IntoClause::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IntoClause.options) - return _internal_options(index); +inline ::pg_query::NullTestType NullTest::nulltesttype() const { + // @@protoc_insertion_point(field_get:pg_query.NullTest.nulltesttype) + return _internal_nulltesttype(); } -inline ::pg_query::Node* IntoClause::_internal_add_options() { - return _impl_.options_.Add(); +inline void NullTest::set_nulltesttype(::pg_query::NullTestType value) { + _internal_set_nulltesttype(value); + // @@protoc_insertion_point(field_set:pg_query.NullTest.nulltesttype) } -inline ::pg_query::Node* IntoClause::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.IntoClause.options) - return _add; +inline ::pg_query::NullTestType NullTest::_internal_nulltesttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::NullTestType>(_impl_.nulltesttype_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IntoClause::options() const { - // @@protoc_insertion_point(field_list:pg_query.IntoClause.options) - return _impl_.options_; +inline void NullTest::_internal_set_nulltesttype(::pg_query::NullTestType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.nulltesttype_ = value; } -// .pg_query.OnCommitAction on_commit = 5 [json_name = "onCommit"]; -inline void IntoClause::clear_on_commit() { - _impl_.on_commit_ = 0; +// bool argisrow = 4 [json_name = "argisrow"]; +inline void NullTest::clear_argisrow() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.argisrow_ = false; } -inline ::pg_query::OnCommitAction IntoClause::_internal_on_commit() const { - return static_cast< ::pg_query::OnCommitAction >(_impl_.on_commit_); +inline bool NullTest::argisrow() const { + // @@protoc_insertion_point(field_get:pg_query.NullTest.argisrow) + return _internal_argisrow(); } -inline ::pg_query::OnCommitAction IntoClause::on_commit() const { - // @@protoc_insertion_point(field_get:pg_query.IntoClause.on_commit) - return _internal_on_commit(); +inline void NullTest::set_argisrow(bool value) { + _internal_set_argisrow(value); + // @@protoc_insertion_point(field_set:pg_query.NullTest.argisrow) } -inline void IntoClause::_internal_set_on_commit(::pg_query::OnCommitAction value) { - - _impl_.on_commit_ = value; +inline bool NullTest::_internal_argisrow() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.argisrow_; } -inline void IntoClause::set_on_commit(::pg_query::OnCommitAction value) { - _internal_set_on_commit(value); - // @@protoc_insertion_point(field_set:pg_query.IntoClause.on_commit) +inline void NullTest::_internal_set_argisrow(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.argisrow_ = value; } -// string table_space_name = 6 [json_name = "tableSpaceName"]; -inline void IntoClause::clear_table_space_name() { - _impl_.table_space_name_.ClearToEmpty(); +// int32 location = 5 [json_name = "location"]; +inline void NullTest::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const std::string& IntoClause::table_space_name() const { - // @@protoc_insertion_point(field_get:pg_query.IntoClause.table_space_name) - return _internal_table_space_name(); +inline ::int32_t NullTest::location() const { + // @@protoc_insertion_point(field_get:pg_query.NullTest.location) + return _internal_location(); } -template -inline PROTOBUF_ALWAYS_INLINE -void IntoClause::set_table_space_name(ArgT0&& arg0, ArgT... args) { - - _impl_.table_space_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.IntoClause.table_space_name) +inline void NullTest::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.NullTest.location) } -inline std::string* IntoClause::mutable_table_space_name() { - std::string* _s = _internal_mutable_table_space_name(); - // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.table_space_name) - return _s; +inline ::int32_t NullTest::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const std::string& IntoClause::_internal_table_space_name() const { - return _impl_.table_space_name_.Get(); +inline void NullTest::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -inline void IntoClause::_internal_set_table_space_name(const std::string& value) { - - _impl_.table_space_name_.Set(value, GetArenaForAllocation()); + +// ------------------------------------------------------------------- + +// BooleanTest + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool BooleanTest::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline std::string* IntoClause::_internal_mutable_table_space_name() { - - return _impl_.table_space_name_.Mutable(GetArenaForAllocation()); +inline void BooleanTest::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* IntoClause::release_table_space_name() { - // @@protoc_insertion_point(field_release:pg_query.IntoClause.table_space_name) - return _impl_.table_space_name_.Release(); +inline const ::pg_query::Node& BooleanTest::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& BooleanTest::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.BooleanTest.xpr) + return _internal_xpr(); } -inline void IntoClause::set_allocated_table_space_name(std::string* table_space_name) { - if (table_space_name != nullptr) { - +inline void BooleanTest::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); + } + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.BooleanTest.xpr) +} +inline ::pg_query::Node* BooleanTest::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } - _impl_.table_space_name_.SetAllocated(table_space_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.table_space_name_.IsDefault()) { - _impl_.table_space_name_.Set("", GetArenaForAllocation()); +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.IntoClause.table_space_name) +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* BooleanTest::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.BooleanTest.xpr) -// .pg_query.Node view_query = 7 [json_name = "viewQuery"]; -inline bool IntoClause::_internal_has_view_query() const { - return this != internal_default_instance() && _impl_.view_query_ != nullptr; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; + return temp; } -inline bool IntoClause::has_view_query() const { - return _internal_has_view_query(); +inline ::pg_query::Node* BooleanTest::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.xpr_; } -inline void IntoClause::clear_view_query() { - if (GetArenaForAllocation() == nullptr && _impl_.view_query_ != nullptr) { - delete _impl_.view_query_; +inline ::pg_query::Node* BooleanTest::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.BooleanTest.xpr) + return _msg; +} +inline void BooleanTest::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - _impl_.view_query_ = nullptr; + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.BooleanTest.xpr) } -inline const ::pg_query::Node& IntoClause::_internal_view_query() const { - const ::pg_query::Node* p = _impl_.view_query_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool BooleanTest::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline const ::pg_query::Node& IntoClause::view_query() const { - // @@protoc_insertion_point(field_get:pg_query.IntoClause.view_query) - return _internal_view_query(); +inline void BooleanTest::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::Node& BooleanTest::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& BooleanTest::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.BooleanTest.arg) + return _internal_arg(); } -inline void IntoClause::unsafe_arena_set_allocated_view_query( - ::pg_query::Node* view_query) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.view_query_); +inline void BooleanTest::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.view_query_ = view_query; - if (view_query) { - + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IntoClause.view_query) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.BooleanTest.arg) } -inline ::pg_query::Node* IntoClause::release_view_query() { - - ::pg_query::Node* temp = _impl_.view_query_; - _impl_.view_query_ = nullptr; +inline ::pg_query::Node* BooleanTest::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* IntoClause::unsafe_arena_release_view_query() { - // @@protoc_insertion_point(field_release:pg_query.IntoClause.view_query) - - ::pg_query::Node* temp = _impl_.view_query_; - _impl_.view_query_ = nullptr; +inline ::pg_query::Node* BooleanTest::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.BooleanTest.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::Node* IntoClause::_internal_mutable_view_query() { - - if (_impl_.view_query_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.view_query_ = p; +inline ::pg_query::Node* BooleanTest::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.view_query_; + return _impl_.arg_; } -inline ::pg_query::Node* IntoClause::mutable_view_query() { - ::pg_query::Node* _msg = _internal_mutable_view_query(); - // @@protoc_insertion_point(field_mutable:pg_query.IntoClause.view_query) +inline ::pg_query::Node* BooleanTest::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.BooleanTest.arg) return _msg; } -inline void IntoClause::set_allocated_view_query(::pg_query::Node* view_query) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void BooleanTest::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.view_query_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); } - if (view_query) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(view_query); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - view_query = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, view_query, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.view_query_ = view_query; - // @@protoc_insertion_point(field_set_allocated:pg_query.IntoClause.view_query) + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.BooleanTest.arg) } -// bool skip_data = 8 [json_name = "skipData"]; -inline void IntoClause::clear_skip_data() { - _impl_.skip_data_ = false; +// .pg_query.BoolTestType booltesttype = 3 [json_name = "booltesttype"]; +inline void BooleanTest::clear_booltesttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.booltesttype_ = 0; } -inline bool IntoClause::_internal_skip_data() const { - return _impl_.skip_data_; +inline ::pg_query::BoolTestType BooleanTest::booltesttype() const { + // @@protoc_insertion_point(field_get:pg_query.BooleanTest.booltesttype) + return _internal_booltesttype(); } -inline bool IntoClause::skip_data() const { - // @@protoc_insertion_point(field_get:pg_query.IntoClause.skip_data) - return _internal_skip_data(); +inline void BooleanTest::set_booltesttype(::pg_query::BoolTestType value) { + _internal_set_booltesttype(value); + // @@protoc_insertion_point(field_set:pg_query.BooleanTest.booltesttype) } -inline void IntoClause::_internal_set_skip_data(bool value) { - - _impl_.skip_data_ = value; +inline ::pg_query::BoolTestType BooleanTest::_internal_booltesttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::BoolTestType>(_impl_.booltesttype_); } -inline void IntoClause::set_skip_data(bool value) { - _internal_set_skip_data(value); - // @@protoc_insertion_point(field_set:pg_query.IntoClause.skip_data) +inline void BooleanTest::_internal_set_booltesttype(::pg_query::BoolTestType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.booltesttype_ = value; } -// ------------------------------------------------------------------- - -// MergeAction - -// bool matched = 1 [json_name = "matched"]; -inline void MergeAction::clear_matched() { - _impl_.matched_ = false; +// int32 location = 4 [json_name = "location"]; +inline void BooleanTest::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool MergeAction::_internal_matched() const { - return _impl_.matched_; +inline ::int32_t BooleanTest::location() const { + // @@protoc_insertion_point(field_get:pg_query.BooleanTest.location) + return _internal_location(); } -inline bool MergeAction::matched() const { - // @@protoc_insertion_point(field_get:pg_query.MergeAction.matched) - return _internal_matched(); +inline void BooleanTest::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.BooleanTest.location) } -inline void MergeAction::_internal_set_matched(bool value) { - - _impl_.matched_ = value; +inline ::int32_t BooleanTest::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void MergeAction::set_matched(bool value) { - _internal_set_matched(value); - // @@protoc_insertion_point(field_set:pg_query.MergeAction.matched) +inline void BooleanTest::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.CmdType command_type = 2 [json_name = "commandType"]; -inline void MergeAction::clear_command_type() { - _impl_.command_type_ = 0; +// ------------------------------------------------------------------- + +// CoerceToDomain + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool CoerceToDomain::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline ::pg_query::CmdType MergeAction::_internal_command_type() const { - return static_cast< ::pg_query::CmdType >(_impl_.command_type_); +inline void CoerceToDomain::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::CmdType MergeAction::command_type() const { - // @@protoc_insertion_point(field_get:pg_query.MergeAction.command_type) - return _internal_command_type(); +inline const ::pg_query::Node& CoerceToDomain::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void MergeAction::_internal_set_command_type(::pg_query::CmdType value) { - - _impl_.command_type_ = value; +inline const ::pg_query::Node& CoerceToDomain::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.xpr) + return _internal_xpr(); } -inline void MergeAction::set_command_type(::pg_query::CmdType value) { - _internal_set_command_type(value); - // @@protoc_insertion_point(field_set:pg_query.MergeAction.command_type) +inline void CoerceToDomain::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); + } + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceToDomain.xpr) } +inline ::pg_query::Node* CoerceToDomain::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// .pg_query.OverridingKind override = 3 [json_name = "override"]; -inline void MergeAction::clear_override() { - _impl_.override_ = 0; -} -inline ::pg_query::OverridingKind MergeAction::_internal_override() const { - return static_cast< ::pg_query::OverridingKind >(_impl_.override_); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::OverridingKind MergeAction::override() const { - // @@protoc_insertion_point(field_get:pg_query.MergeAction.override) - return _internal_override(); +inline ::pg_query::Node* CoerceToDomain::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CoerceToDomain.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; + return temp; } -inline void MergeAction::_internal_set_override(::pg_query::OverridingKind value) { - - _impl_.override_ = value; +inline ::pg_query::Node* CoerceToDomain::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.xpr_; } -inline void MergeAction::set_override(::pg_query::OverridingKind value) { - _internal_set_override(value); - // @@protoc_insertion_point(field_set:pg_query.MergeAction.override) +inline ::pg_query::Node* CoerceToDomain::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.CoerceToDomain.xpr) + return _msg; } +inline void CoerceToDomain::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); + } -// .pg_query.Node qual = 4 [json_name = "qual"]; -inline bool MergeAction::_internal_has_qual() const { - return this != internal_default_instance() && _impl_.qual_ != nullptr; + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceToDomain.xpr) } -inline bool MergeAction::has_qual() const { - return _internal_has_qual(); + +// .pg_query.Node arg = 2 [json_name = "arg"]; +inline bool CoerceToDomain::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void MergeAction::clear_qual() { - if (GetArenaForAllocation() == nullptr && _impl_.qual_ != nullptr) { - delete _impl_.qual_; - } - _impl_.qual_ = nullptr; +inline void CoerceToDomain::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& MergeAction::_internal_qual() const { - const ::pg_query::Node* p = _impl_.qual_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& CoerceToDomain::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& MergeAction::qual() const { - // @@protoc_insertion_point(field_get:pg_query.MergeAction.qual) - return _internal_qual(); +inline const ::pg_query::Node& CoerceToDomain::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.arg) + return _internal_arg(); } -inline void MergeAction::unsafe_arena_set_allocated_qual( - ::pg_query::Node* qual) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.qual_); +inline void CoerceToDomain::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.qual_ = qual; - if (qual) { - + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeAction.qual) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceToDomain.arg) } -inline ::pg_query::Node* MergeAction::release_qual() { - - ::pg_query::Node* temp = _impl_.qual_; - _impl_.qual_ = nullptr; +inline ::pg_query::Node* CoerceToDomain::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* MergeAction::unsafe_arena_release_qual() { - // @@protoc_insertion_point(field_release:pg_query.MergeAction.qual) - - ::pg_query::Node* temp = _impl_.qual_; - _impl_.qual_ = nullptr; +inline ::pg_query::Node* CoerceToDomain::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CoerceToDomain.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::Node* MergeAction::_internal_mutable_qual() { - - if (_impl_.qual_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.qual_ = p; +inline ::pg_query::Node* CoerceToDomain::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.qual_; + return _impl_.arg_; } -inline ::pg_query::Node* MergeAction::mutable_qual() { - ::pg_query::Node* _msg = _internal_mutable_qual(); - // @@protoc_insertion_point(field_mutable:pg_query.MergeAction.qual) +inline ::pg_query::Node* CoerceToDomain::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.CoerceToDomain.arg) return _msg; } -inline void MergeAction::set_allocated_qual(::pg_query::Node* qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CoerceToDomain::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.qual_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); } - if (qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(qual); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - qual = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, qual, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.qual_ = qual; - // @@protoc_insertion_point(field_set_allocated:pg_query.MergeAction.qual) + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceToDomain.arg) } -// repeated .pg_query.Node target_list = 5 [json_name = "targetList"]; -inline int MergeAction::_internal_target_list_size() const { - return _impl_.target_list_.size(); +// uint32 resulttype = 3 [json_name = "resulttype"]; +inline void CoerceToDomain::clear_resulttype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttype_ = 0u; } -inline int MergeAction::target_list_size() const { - return _internal_target_list_size(); +inline ::uint32_t CoerceToDomain::resulttype() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.resulttype) + return _internal_resulttype(); } -inline void MergeAction::clear_target_list() { - _impl_.target_list_.Clear(); +inline void CoerceToDomain::set_resulttype(::uint32_t value) { + _internal_set_resulttype(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.resulttype) } -inline ::pg_query::Node* MergeAction::mutable_target_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.MergeAction.target_list) - return _impl_.target_list_.Mutable(index); +inline ::uint32_t CoerceToDomain::_internal_resulttype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttype_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -MergeAction::mutable_target_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.MergeAction.target_list) - return &_impl_.target_list_; +inline void CoerceToDomain::_internal_set_resulttype(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttype_ = value; } -inline const ::pg_query::Node& MergeAction::_internal_target_list(int index) const { - return _impl_.target_list_.Get(index); + +// int32 resulttypmod = 4 [json_name = "resulttypmod"]; +inline void CoerceToDomain::clear_resulttypmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resulttypmod_ = 0; } -inline const ::pg_query::Node& MergeAction::target_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.MergeAction.target_list) - return _internal_target_list(index); +inline ::int32_t CoerceToDomain::resulttypmod() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.resulttypmod) + return _internal_resulttypmod(); } -inline ::pg_query::Node* MergeAction::_internal_add_target_list() { - return _impl_.target_list_.Add(); +inline void CoerceToDomain::set_resulttypmod(::int32_t value) { + _internal_set_resulttypmod(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.resulttypmod) } -inline ::pg_query::Node* MergeAction::add_target_list() { - ::pg_query::Node* _add = _internal_add_target_list(); - // @@protoc_insertion_point(field_add:pg_query.MergeAction.target_list) - return _add; +inline ::int32_t CoerceToDomain::_internal_resulttypmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resulttypmod_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -MergeAction::target_list() const { - // @@protoc_insertion_point(field_list:pg_query.MergeAction.target_list) - return _impl_.target_list_; +inline void CoerceToDomain::_internal_set_resulttypmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resulttypmod_ = value; } -// repeated .pg_query.Node update_colnos = 6 [json_name = "updateColnos"]; -inline int MergeAction::_internal_update_colnos_size() const { - return _impl_.update_colnos_.size(); +// uint32 resultcollid = 5 [json_name = "resultcollid"]; +inline void CoerceToDomain::clear_resultcollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resultcollid_ = 0u; } -inline int MergeAction::update_colnos_size() const { - return _internal_update_colnos_size(); +inline ::uint32_t CoerceToDomain::resultcollid() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.resultcollid) + return _internal_resultcollid(); } -inline void MergeAction::clear_update_colnos() { - _impl_.update_colnos_.Clear(); +inline void CoerceToDomain::set_resultcollid(::uint32_t value) { + _internal_set_resultcollid(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.resultcollid) } -inline ::pg_query::Node* MergeAction::mutable_update_colnos(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.MergeAction.update_colnos) - return _impl_.update_colnos_.Mutable(index); +inline ::uint32_t CoerceToDomain::_internal_resultcollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resultcollid_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -MergeAction::mutable_update_colnos() { - // @@protoc_insertion_point(field_mutable_list:pg_query.MergeAction.update_colnos) - return &_impl_.update_colnos_; +inline void CoerceToDomain::_internal_set_resultcollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resultcollid_ = value; +} + +// .pg_query.CoercionForm coercionformat = 6 [json_name = "coercionformat"]; +inline void CoerceToDomain::clear_coercionformat() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coercionformat_ = 0; } -inline const ::pg_query::Node& MergeAction::_internal_update_colnos(int index) const { - return _impl_.update_colnos_.Get(index); +inline ::pg_query::CoercionForm CoerceToDomain::coercionformat() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.coercionformat) + return _internal_coercionformat(); } -inline const ::pg_query::Node& MergeAction::update_colnos(int index) const { - // @@protoc_insertion_point(field_get:pg_query.MergeAction.update_colnos) - return _internal_update_colnos(index); +inline void CoerceToDomain::set_coercionformat(::pg_query::CoercionForm value) { + _internal_set_coercionformat(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.coercionformat) } -inline ::pg_query::Node* MergeAction::_internal_add_update_colnos() { - return _impl_.update_colnos_.Add(); +inline ::pg_query::CoercionForm CoerceToDomain::_internal_coercionformat() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CoercionForm>(_impl_.coercionformat_); } -inline ::pg_query::Node* MergeAction::add_update_colnos() { - ::pg_query::Node* _add = _internal_add_update_colnos(); - // @@protoc_insertion_point(field_add:pg_query.MergeAction.update_colnos) - return _add; +inline void CoerceToDomain::_internal_set_coercionformat(::pg_query::CoercionForm value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.coercionformat_ = value; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -MergeAction::update_colnos() const { - // @@protoc_insertion_point(field_list:pg_query.MergeAction.update_colnos) - return _impl_.update_colnos_; + +// int32 location = 7 [json_name = "location"]; +inline void CoerceToDomain::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; +} +inline ::int32_t CoerceToDomain::location() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomain.location) + return _internal_location(); +} +inline void CoerceToDomain::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceToDomain.location) +} +inline ::int32_t CoerceToDomain::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void CoerceToDomain::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// RawStmt +// CoerceToDomainValue -// .pg_query.Node stmt = 1 [json_name = "stmt"]; -inline bool RawStmt::_internal_has_stmt() const { - return this != internal_default_instance() && _impl_.stmt_ != nullptr; -} -inline bool RawStmt::has_stmt() const { - return _internal_has_stmt(); +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool CoerceToDomainValue::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void RawStmt::clear_stmt() { - if (GetArenaForAllocation() == nullptr && _impl_.stmt_ != nullptr) { - delete _impl_.stmt_; - } - _impl_.stmt_ = nullptr; +inline void CoerceToDomainValue::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& RawStmt::_internal_stmt() const { - const ::pg_query::Node* p = _impl_.stmt_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& CoerceToDomainValue::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& RawStmt::stmt() const { - // @@protoc_insertion_point(field_get:pg_query.RawStmt.stmt) - return _internal_stmt(); +inline const ::pg_query::Node& CoerceToDomainValue::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.xpr) + return _internal_xpr(); } -inline void RawStmt::unsafe_arena_set_allocated_stmt( - ::pg_query::Node* stmt) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.stmt_); +inline void CoerceToDomainValue::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.stmt_ = stmt; - if (stmt) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RawStmt.stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CoerceToDomainValue.xpr) } -inline ::pg_query::Node* RawStmt::release_stmt() { - - ::pg_query::Node* temp = _impl_.stmt_; - _impl_.stmt_ = nullptr; +inline ::pg_query::Node* CoerceToDomainValue::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* RawStmt::unsafe_arena_release_stmt() { - // @@protoc_insertion_point(field_release:pg_query.RawStmt.stmt) - - ::pg_query::Node* temp = _impl_.stmt_; - _impl_.stmt_ = nullptr; +inline ::pg_query::Node* CoerceToDomainValue::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CoerceToDomainValue.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; return temp; -} -inline ::pg_query::Node* RawStmt::_internal_mutable_stmt() { - - if (_impl_.stmt_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.stmt_ = p; +} +inline ::pg_query::Node* CoerceToDomainValue::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.stmt_; + return _impl_.xpr_; } -inline ::pg_query::Node* RawStmt::mutable_stmt() { - ::pg_query::Node* _msg = _internal_mutable_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.RawStmt.stmt) +inline ::pg_query::Node* CoerceToDomainValue::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.CoerceToDomainValue.xpr) return _msg; } -inline void RawStmt::set_allocated_stmt(::pg_query::Node* stmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CoerceToDomainValue::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.stmt_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (stmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(stmt); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - stmt = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, stmt, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.stmt_ = stmt; - // @@protoc_insertion_point(field_set_allocated:pg_query.RawStmt.stmt) -} -// int32 stmt_location = 2 [json_name = "stmt_location"]; -inline void RawStmt::clear_stmt_location() { - _impl_.stmt_location_ = 0; -} -inline int32_t RawStmt::_internal_stmt_location() const { - return _impl_.stmt_location_; -} -inline int32_t RawStmt::stmt_location() const { - // @@protoc_insertion_point(field_get:pg_query.RawStmt.stmt_location) - return _internal_stmt_location(); -} -inline void RawStmt::_internal_set_stmt_location(int32_t value) { - - _impl_.stmt_location_ = value; -} -inline void RawStmt::set_stmt_location(int32_t value) { - _internal_set_stmt_location(value); - // @@protoc_insertion_point(field_set:pg_query.RawStmt.stmt_location) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CoerceToDomainValue.xpr) } -// int32 stmt_len = 3 [json_name = "stmt_len"]; -inline void RawStmt::clear_stmt_len() { - _impl_.stmt_len_ = 0; +// uint32 type_id = 2 [json_name = "typeId"]; +inline void CoerceToDomainValue::clear_type_id() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_id_ = 0u; } -inline int32_t RawStmt::_internal_stmt_len() const { - return _impl_.stmt_len_; +inline ::uint32_t CoerceToDomainValue::type_id() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.type_id) + return _internal_type_id(); } -inline int32_t RawStmt::stmt_len() const { - // @@protoc_insertion_point(field_get:pg_query.RawStmt.stmt_len) - return _internal_stmt_len(); +inline void CoerceToDomainValue::set_type_id(::uint32_t value) { + _internal_set_type_id(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceToDomainValue.type_id) } -inline void RawStmt::_internal_set_stmt_len(int32_t value) { - - _impl_.stmt_len_ = value; +inline ::uint32_t CoerceToDomainValue::_internal_type_id() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_id_; } -inline void RawStmt::set_stmt_len(int32_t value) { - _internal_set_stmt_len(value); - // @@protoc_insertion_point(field_set:pg_query.RawStmt.stmt_len) +inline void CoerceToDomainValue::_internal_set_type_id(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_id_ = value; } -// ------------------------------------------------------------------- - -// Query - -// .pg_query.CmdType command_type = 1 [json_name = "commandType"]; -inline void Query::clear_command_type() { - _impl_.command_type_ = 0; +// int32 type_mod = 3 [json_name = "typeMod"]; +inline void CoerceToDomainValue::clear_type_mod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_mod_ = 0; } -inline ::pg_query::CmdType Query::_internal_command_type() const { - return static_cast< ::pg_query::CmdType >(_impl_.command_type_); +inline ::int32_t CoerceToDomainValue::type_mod() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.type_mod) + return _internal_type_mod(); } -inline ::pg_query::CmdType Query::command_type() const { - // @@protoc_insertion_point(field_get:pg_query.Query.command_type) - return _internal_command_type(); +inline void CoerceToDomainValue::set_type_mod(::int32_t value) { + _internal_set_type_mod(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceToDomainValue.type_mod) } -inline void Query::_internal_set_command_type(::pg_query::CmdType value) { - - _impl_.command_type_ = value; +inline ::int32_t CoerceToDomainValue::_internal_type_mod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_mod_; } -inline void Query::set_command_type(::pg_query::CmdType value) { - _internal_set_command_type(value); - // @@protoc_insertion_point(field_set:pg_query.Query.command_type) +inline void CoerceToDomainValue::_internal_set_type_mod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_mod_ = value; } -// .pg_query.QuerySource query_source = 2 [json_name = "querySource"]; -inline void Query::clear_query_source() { - _impl_.query_source_ = 0; +// uint32 collation = 4 [json_name = "collation"]; +inline void CoerceToDomainValue::clear_collation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.collation_ = 0u; } -inline ::pg_query::QuerySource Query::_internal_query_source() const { - return static_cast< ::pg_query::QuerySource >(_impl_.query_source_); +inline ::uint32_t CoerceToDomainValue::collation() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.collation) + return _internal_collation(); } -inline ::pg_query::QuerySource Query::query_source() const { - // @@protoc_insertion_point(field_get:pg_query.Query.query_source) - return _internal_query_source(); +inline void CoerceToDomainValue::set_collation(::uint32_t value) { + _internal_set_collation(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceToDomainValue.collation) } -inline void Query::_internal_set_query_source(::pg_query::QuerySource value) { - - _impl_.query_source_ = value; +inline ::uint32_t CoerceToDomainValue::_internal_collation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.collation_; } -inline void Query::set_query_source(::pg_query::QuerySource value) { - _internal_set_query_source(value); - // @@protoc_insertion_point(field_set:pg_query.Query.query_source) +inline void CoerceToDomainValue::_internal_set_collation(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.collation_ = value; } -// bool can_set_tag = 3 [json_name = "canSetTag"]; -inline void Query::clear_can_set_tag() { - _impl_.can_set_tag_ = false; +// int32 location = 5 [json_name = "location"]; +inline void CoerceToDomainValue::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool Query::_internal_can_set_tag() const { - return _impl_.can_set_tag_; +inline ::int32_t CoerceToDomainValue::location() const { + // @@protoc_insertion_point(field_get:pg_query.CoerceToDomainValue.location) + return _internal_location(); } -inline bool Query::can_set_tag() const { - // @@protoc_insertion_point(field_get:pg_query.Query.can_set_tag) - return _internal_can_set_tag(); +inline void CoerceToDomainValue::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.CoerceToDomainValue.location) } -inline void Query::_internal_set_can_set_tag(bool value) { - - _impl_.can_set_tag_ = value; +inline ::int32_t CoerceToDomainValue::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void Query::set_can_set_tag(bool value) { - _internal_set_can_set_tag(value); - // @@protoc_insertion_point(field_set:pg_query.Query.can_set_tag) +inline void CoerceToDomainValue::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.Node utility_stmt = 4 [json_name = "utilityStmt"]; -inline bool Query::_internal_has_utility_stmt() const { - return this != internal_default_instance() && _impl_.utility_stmt_ != nullptr; -} -inline bool Query::has_utility_stmt() const { - return _internal_has_utility_stmt(); +// ------------------------------------------------------------------- + +// SetToDefault + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool SetToDefault::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void Query::clear_utility_stmt() { - if (GetArenaForAllocation() == nullptr && _impl_.utility_stmt_ != nullptr) { - delete _impl_.utility_stmt_; - } - _impl_.utility_stmt_ = nullptr; +inline void SetToDefault::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& Query::_internal_utility_stmt() const { - const ::pg_query::Node* p = _impl_.utility_stmt_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& SetToDefault::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& Query::utility_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.Query.utility_stmt) - return _internal_utility_stmt(); +inline const ::pg_query::Node& SetToDefault::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SetToDefault.xpr) + return _internal_xpr(); } -inline void Query::unsafe_arena_set_allocated_utility_stmt( - ::pg_query::Node* utility_stmt) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.utility_stmt_); +inline void SetToDefault::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.utility_stmt_ = utility_stmt; - if (utility_stmt) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.utility_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SetToDefault.xpr) } -inline ::pg_query::Node* Query::release_utility_stmt() { - - ::pg_query::Node* temp = _impl_.utility_stmt_; - _impl_.utility_stmt_ = nullptr; +inline ::pg_query::Node* SetToDefault::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* Query::unsafe_arena_release_utility_stmt() { - // @@protoc_insertion_point(field_release:pg_query.Query.utility_stmt) - - ::pg_query::Node* temp = _impl_.utility_stmt_; - _impl_.utility_stmt_ = nullptr; +inline ::pg_query::Node* SetToDefault::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SetToDefault.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::Node* Query::_internal_mutable_utility_stmt() { - - if (_impl_.utility_stmt_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.utility_stmt_ = p; +inline ::pg_query::Node* SetToDefault::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.utility_stmt_; + return _impl_.xpr_; } -inline ::pg_query::Node* Query::mutable_utility_stmt() { - ::pg_query::Node* _msg = _internal_mutable_utility_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.Query.utility_stmt) +inline ::pg_query::Node* SetToDefault::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.SetToDefault.xpr) return _msg; } -inline void Query::set_allocated_utility_stmt(::pg_query::Node* utility_stmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SetToDefault::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.utility_stmt_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (utility_stmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(utility_stmt); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - utility_stmt = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, utility_stmt, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.utility_stmt_ = utility_stmt; - // @@protoc_insertion_point(field_set_allocated:pg_query.Query.utility_stmt) -} -// int32 result_relation = 5 [json_name = "resultRelation"]; -inline void Query::clear_result_relation() { - _impl_.result_relation_ = 0; -} -inline int32_t Query::_internal_result_relation() const { - return _impl_.result_relation_; -} -inline int32_t Query::result_relation() const { - // @@protoc_insertion_point(field_get:pg_query.Query.result_relation) - return _internal_result_relation(); -} -inline void Query::_internal_set_result_relation(int32_t value) { - - _impl_.result_relation_ = value; -} -inline void Query::set_result_relation(int32_t value) { - _internal_set_result_relation(value); - // @@protoc_insertion_point(field_set:pg_query.Query.result_relation) + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SetToDefault.xpr) } -// bool has_aggs = 6 [json_name = "hasAggs"]; -inline void Query::clear_has_aggs() { - _impl_.has_aggs_ = false; +// uint32 type_id = 2 [json_name = "typeId"]; +inline void SetToDefault::clear_type_id() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_id_ = 0u; } -inline bool Query::_internal_has_aggs() const { - return _impl_.has_aggs_; +inline ::uint32_t SetToDefault::type_id() const { + // @@protoc_insertion_point(field_get:pg_query.SetToDefault.type_id) + return _internal_type_id(); } -inline bool Query::has_aggs() const { - // @@protoc_insertion_point(field_get:pg_query.Query.has_aggs) - return _internal_has_aggs(); +inline void SetToDefault::set_type_id(::uint32_t value) { + _internal_set_type_id(value); + // @@protoc_insertion_point(field_set:pg_query.SetToDefault.type_id) } -inline void Query::_internal_set_has_aggs(bool value) { - - _impl_.has_aggs_ = value; +inline ::uint32_t SetToDefault::_internal_type_id() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_id_; } -inline void Query::set_has_aggs(bool value) { - _internal_set_has_aggs(value); - // @@protoc_insertion_point(field_set:pg_query.Query.has_aggs) +inline void SetToDefault::_internal_set_type_id(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_id_ = value; } -// bool has_window_funcs = 7 [json_name = "hasWindowFuncs"]; -inline void Query::clear_has_window_funcs() { - _impl_.has_window_funcs_ = false; +// int32 type_mod = 3 [json_name = "typeMod"]; +inline void SetToDefault::clear_type_mod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_mod_ = 0; } -inline bool Query::_internal_has_window_funcs() const { - return _impl_.has_window_funcs_; +inline ::int32_t SetToDefault::type_mod() const { + // @@protoc_insertion_point(field_get:pg_query.SetToDefault.type_mod) + return _internal_type_mod(); } -inline bool Query::has_window_funcs() const { - // @@protoc_insertion_point(field_get:pg_query.Query.has_window_funcs) - return _internal_has_window_funcs(); +inline void SetToDefault::set_type_mod(::int32_t value) { + _internal_set_type_mod(value); + // @@protoc_insertion_point(field_set:pg_query.SetToDefault.type_mod) } -inline void Query::_internal_set_has_window_funcs(bool value) { - - _impl_.has_window_funcs_ = value; +inline ::int32_t SetToDefault::_internal_type_mod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_mod_; } -inline void Query::set_has_window_funcs(bool value) { - _internal_set_has_window_funcs(value); - // @@protoc_insertion_point(field_set:pg_query.Query.has_window_funcs) +inline void SetToDefault::_internal_set_type_mod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_mod_ = value; } -// bool has_target_srfs = 8 [json_name = "hasTargetSRFs"]; -inline void Query::clear_has_target_srfs() { - _impl_.has_target_srfs_ = false; +// uint32 collation = 4 [json_name = "collation"]; +inline void SetToDefault::clear_collation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.collation_ = 0u; } -inline bool Query::_internal_has_target_srfs() const { - return _impl_.has_target_srfs_; +inline ::uint32_t SetToDefault::collation() const { + // @@protoc_insertion_point(field_get:pg_query.SetToDefault.collation) + return _internal_collation(); } -inline bool Query::has_target_srfs() const { - // @@protoc_insertion_point(field_get:pg_query.Query.has_target_srfs) - return _internal_has_target_srfs(); +inline void SetToDefault::set_collation(::uint32_t value) { + _internal_set_collation(value); + // @@protoc_insertion_point(field_set:pg_query.SetToDefault.collation) } -inline void Query::_internal_set_has_target_srfs(bool value) { - - _impl_.has_target_srfs_ = value; +inline ::uint32_t SetToDefault::_internal_collation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.collation_; } -inline void Query::set_has_target_srfs(bool value) { - _internal_set_has_target_srfs(value); - // @@protoc_insertion_point(field_set:pg_query.Query.has_target_srfs) +inline void SetToDefault::_internal_set_collation(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.collation_ = value; } -// bool has_sub_links = 9 [json_name = "hasSubLinks"]; -inline void Query::clear_has_sub_links() { - _impl_.has_sub_links_ = false; +// int32 location = 5 [json_name = "location"]; +inline void SetToDefault::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool Query::_internal_has_sub_links() const { - return _impl_.has_sub_links_; +inline ::int32_t SetToDefault::location() const { + // @@protoc_insertion_point(field_get:pg_query.SetToDefault.location) + return _internal_location(); } -inline bool Query::has_sub_links() const { - // @@protoc_insertion_point(field_get:pg_query.Query.has_sub_links) - return _internal_has_sub_links(); +inline void SetToDefault::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.SetToDefault.location) } -inline void Query::_internal_set_has_sub_links(bool value) { - - _impl_.has_sub_links_ = value; +inline ::int32_t SetToDefault::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void Query::set_has_sub_links(bool value) { - _internal_set_has_sub_links(value); - // @@protoc_insertion_point(field_set:pg_query.Query.has_sub_links) +inline void SetToDefault::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// bool has_distinct_on = 10 [json_name = "hasDistinctOn"]; -inline void Query::clear_has_distinct_on() { - _impl_.has_distinct_on_ = false; +// ------------------------------------------------------------------- + +// CurrentOfExpr + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool CurrentOfExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline bool Query::_internal_has_distinct_on() const { - return _impl_.has_distinct_on_; +inline void CurrentOfExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline bool Query::has_distinct_on() const { - // @@protoc_insertion_point(field_get:pg_query.Query.has_distinct_on) - return _internal_has_distinct_on(); +inline const ::pg_query::Node& CurrentOfExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void Query::_internal_set_has_distinct_on(bool value) { - - _impl_.has_distinct_on_ = value; +inline const ::pg_query::Node& CurrentOfExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CurrentOfExpr.xpr) + return _internal_xpr(); } -inline void Query::set_has_distinct_on(bool value) { - _internal_set_has_distinct_on(value); - // @@protoc_insertion_point(field_set:pg_query.Query.has_distinct_on) +inline void CurrentOfExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); + } + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CurrentOfExpr.xpr) } +inline ::pg_query::Node* CurrentOfExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool has_recursive = 11 [json_name = "hasRecursive"]; -inline void Query::clear_has_recursive() { - _impl_.has_recursive_ = false; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool Query::_internal_has_recursive() const { - return _impl_.has_recursive_; +inline ::pg_query::Node* CurrentOfExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CurrentOfExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; + return temp; } -inline bool Query::has_recursive() const { - // @@protoc_insertion_point(field_get:pg_query.Query.has_recursive) - return _internal_has_recursive(); +inline ::pg_query::Node* CurrentOfExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.xpr_; } -inline void Query::_internal_set_has_recursive(bool value) { - - _impl_.has_recursive_ = value; +inline ::pg_query::Node* CurrentOfExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.CurrentOfExpr.xpr) + return _msg; } -inline void Query::set_has_recursive(bool value) { - _internal_set_has_recursive(value); - // @@protoc_insertion_point(field_set:pg_query.Query.has_recursive) +inline void CurrentOfExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CurrentOfExpr.xpr) } -// bool has_modifying_cte = 12 [json_name = "hasModifyingCTE"]; -inline void Query::clear_has_modifying_cte() { - _impl_.has_modifying_cte_ = false; +// uint32 cvarno = 2 [json_name = "cvarno"]; +inline void CurrentOfExpr::clear_cvarno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cvarno_ = 0u; } -inline bool Query::_internal_has_modifying_cte() const { - return _impl_.has_modifying_cte_; +inline ::uint32_t CurrentOfExpr::cvarno() const { + // @@protoc_insertion_point(field_get:pg_query.CurrentOfExpr.cvarno) + return _internal_cvarno(); } -inline bool Query::has_modifying_cte() const { - // @@protoc_insertion_point(field_get:pg_query.Query.has_modifying_cte) - return _internal_has_modifying_cte(); +inline void CurrentOfExpr::set_cvarno(::uint32_t value) { + _internal_set_cvarno(value); + // @@protoc_insertion_point(field_set:pg_query.CurrentOfExpr.cvarno) } -inline void Query::_internal_set_has_modifying_cte(bool value) { - - _impl_.has_modifying_cte_ = value; +inline ::uint32_t CurrentOfExpr::_internal_cvarno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cvarno_; } -inline void Query::set_has_modifying_cte(bool value) { - _internal_set_has_modifying_cte(value); - // @@protoc_insertion_point(field_set:pg_query.Query.has_modifying_cte) +inline void CurrentOfExpr::_internal_set_cvarno(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cvarno_ = value; } -// bool has_for_update = 13 [json_name = "hasForUpdate"]; -inline void Query::clear_has_for_update() { - _impl_.has_for_update_ = false; -} -inline bool Query::_internal_has_for_update() const { - return _impl_.has_for_update_; +// string cursor_name = 3 [json_name = "cursor_name"]; +inline void CurrentOfExpr::clear_cursor_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cursor_name_.ClearToEmpty(); } -inline bool Query::has_for_update() const { - // @@protoc_insertion_point(field_get:pg_query.Query.has_for_update) - return _internal_has_for_update(); +inline const std::string& CurrentOfExpr::cursor_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CurrentOfExpr.cursor_name) + return _internal_cursor_name(); } -inline void Query::_internal_set_has_for_update(bool value) { - - _impl_.has_for_update_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void CurrentOfExpr::set_cursor_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cursor_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CurrentOfExpr.cursor_name) } -inline void Query::set_has_for_update(bool value) { - _internal_set_has_for_update(value); - // @@protoc_insertion_point(field_set:pg_query.Query.has_for_update) +inline std::string* CurrentOfExpr::mutable_cursor_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_cursor_name(); + // @@protoc_insertion_point(field_mutable:pg_query.CurrentOfExpr.cursor_name) + return _s; } - -// bool has_row_security = 14 [json_name = "hasRowSecurity"]; -inline void Query::clear_has_row_security() { - _impl_.has_row_security_ = false; +inline const std::string& CurrentOfExpr::_internal_cursor_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cursor_name_.Get(); } -inline bool Query::_internal_has_row_security() const { - return _impl_.has_row_security_; +inline void CurrentOfExpr::_internal_set_cursor_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cursor_name_.Set(value, GetArena()); } -inline bool Query::has_row_security() const { - // @@protoc_insertion_point(field_get:pg_query.Query.has_row_security) - return _internal_has_row_security(); +inline std::string* CurrentOfExpr::_internal_mutable_cursor_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.cursor_name_.Mutable( GetArena()); } -inline void Query::_internal_set_has_row_security(bool value) { - - _impl_.has_row_security_ = value; +inline std::string* CurrentOfExpr::release_cursor_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CurrentOfExpr.cursor_name) + return _impl_.cursor_name_.Release(); } -inline void Query::set_has_row_security(bool value) { - _internal_set_has_row_security(value); - // @@protoc_insertion_point(field_set:pg_query.Query.has_row_security) +inline void CurrentOfExpr::set_allocated_cursor_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cursor_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.cursor_name_.IsDefault()) { + _impl_.cursor_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CurrentOfExpr.cursor_name) } -// bool is_return = 15 [json_name = "isReturn"]; -inline void Query::clear_is_return() { - _impl_.is_return_ = false; +// int32 cursor_param = 4 [json_name = "cursor_param"]; +inline void CurrentOfExpr::clear_cursor_param() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cursor_param_ = 0; } -inline bool Query::_internal_is_return() const { - return _impl_.is_return_; +inline ::int32_t CurrentOfExpr::cursor_param() const { + // @@protoc_insertion_point(field_get:pg_query.CurrentOfExpr.cursor_param) + return _internal_cursor_param(); } -inline bool Query::is_return() const { - // @@protoc_insertion_point(field_get:pg_query.Query.is_return) - return _internal_is_return(); +inline void CurrentOfExpr::set_cursor_param(::int32_t value) { + _internal_set_cursor_param(value); + // @@protoc_insertion_point(field_set:pg_query.CurrentOfExpr.cursor_param) } -inline void Query::_internal_set_is_return(bool value) { - - _impl_.is_return_ = value; +inline ::int32_t CurrentOfExpr::_internal_cursor_param() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cursor_param_; } -inline void Query::set_is_return(bool value) { - _internal_set_is_return(value); - // @@protoc_insertion_point(field_set:pg_query.Query.is_return) +inline void CurrentOfExpr::_internal_set_cursor_param(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cursor_param_ = value; } -// repeated .pg_query.Node cte_list = 16 [json_name = "cteList"]; -inline int Query::_internal_cte_list_size() const { - return _impl_.cte_list_.size(); +// ------------------------------------------------------------------- + +// NextValueExpr + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool NextValueExpr::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline int Query::cte_list_size() const { - return _internal_cte_list_size(); +inline void NextValueExpr::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void Query::clear_cte_list() { - _impl_.cte_list_.Clear(); +inline const ::pg_query::Node& NextValueExpr::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* Query::mutable_cte_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.cte_list) - return _impl_.cte_list_.Mutable(index); +inline const ::pg_query::Node& NextValueExpr::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NextValueExpr.xpr) + return _internal_xpr(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_cte_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.cte_list) - return &_impl_.cte_list_; +inline void NextValueExpr::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); + } + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.NextValueExpr.xpr) } -inline const ::pg_query::Node& Query::_internal_cte_list(int index) const { - return _impl_.cte_list_.Get(index); +inline ::pg_query::Node* NextValueExpr::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& Query::cte_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.cte_list) - return _internal_cte_list(index); +inline ::pg_query::Node* NextValueExpr::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.NextValueExpr.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; + return temp; } -inline ::pg_query::Node* Query::_internal_add_cte_list() { - return _impl_.cte_list_.Add(); +inline ::pg_query::Node* NextValueExpr::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.xpr_; } -inline ::pg_query::Node* Query::add_cte_list() { - ::pg_query::Node* _add = _internal_add_cte_list(); - // @@protoc_insertion_point(field_add:pg_query.Query.cte_list) - return _add; +inline ::pg_query::Node* NextValueExpr::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.NextValueExpr.xpr) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::cte_list() const { - // @@protoc_insertion_point(field_list:pg_query.Query.cte_list) - return _impl_.cte_list_; +inline void NextValueExpr::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.NextValueExpr.xpr) } -// repeated .pg_query.Node rtable = 17 [json_name = "rtable"]; -inline int Query::_internal_rtable_size() const { - return _impl_.rtable_.size(); +// uint32 seqid = 2 [json_name = "seqid"]; +inline void NextValueExpr::clear_seqid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.seqid_ = 0u; } -inline int Query::rtable_size() const { - return _internal_rtable_size(); +inline ::uint32_t NextValueExpr::seqid() const { + // @@protoc_insertion_point(field_get:pg_query.NextValueExpr.seqid) + return _internal_seqid(); } -inline void Query::clear_rtable() { - _impl_.rtable_.Clear(); +inline void NextValueExpr::set_seqid(::uint32_t value) { + _internal_set_seqid(value); + // @@protoc_insertion_point(field_set:pg_query.NextValueExpr.seqid) } -inline ::pg_query::Node* Query::mutable_rtable(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.rtable) - return _impl_.rtable_.Mutable(index); +inline ::uint32_t NextValueExpr::_internal_seqid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.seqid_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_rtable() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.rtable) - return &_impl_.rtable_; +inline void NextValueExpr::_internal_set_seqid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.seqid_ = value; } -inline const ::pg_query::Node& Query::_internal_rtable(int index) const { - return _impl_.rtable_.Get(index); + +// uint32 type_id = 3 [json_name = "typeId"]; +inline void NextValueExpr::clear_type_id() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_id_ = 0u; } -inline const ::pg_query::Node& Query::rtable(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.rtable) - return _internal_rtable(index); +inline ::uint32_t NextValueExpr::type_id() const { + // @@protoc_insertion_point(field_get:pg_query.NextValueExpr.type_id) + return _internal_type_id(); } -inline ::pg_query::Node* Query::_internal_add_rtable() { - return _impl_.rtable_.Add(); +inline void NextValueExpr::set_type_id(::uint32_t value) { + _internal_set_type_id(value); + // @@protoc_insertion_point(field_set:pg_query.NextValueExpr.type_id) } -inline ::pg_query::Node* Query::add_rtable() { - ::pg_query::Node* _add = _internal_add_rtable(); - // @@protoc_insertion_point(field_add:pg_query.Query.rtable) - return _add; +inline ::uint32_t NextValueExpr::_internal_type_id() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_id_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::rtable() const { - // @@protoc_insertion_point(field_list:pg_query.Query.rtable) - return _impl_.rtable_; +inline void NextValueExpr::_internal_set_type_id(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_id_ = value; } -// .pg_query.FromExpr jointree = 18 [json_name = "jointree"]; -inline bool Query::_internal_has_jointree() const { - return this != internal_default_instance() && _impl_.jointree_ != nullptr; -} -inline bool Query::has_jointree() const { - return _internal_has_jointree(); +// ------------------------------------------------------------------- + +// InferenceElem + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool InferenceElem::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void Query::clear_jointree() { - if (GetArenaForAllocation() == nullptr && _impl_.jointree_ != nullptr) { - delete _impl_.jointree_; - } - _impl_.jointree_ = nullptr; +inline void InferenceElem::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::FromExpr& Query::_internal_jointree() const { - const ::pg_query::FromExpr* p = _impl_.jointree_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_FromExpr_default_instance_); +inline const ::pg_query::Node& InferenceElem::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::FromExpr& Query::jointree() const { - // @@protoc_insertion_point(field_get:pg_query.Query.jointree) - return _internal_jointree(); +inline const ::pg_query::Node& InferenceElem::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InferenceElem.xpr) + return _internal_xpr(); } -inline void Query::unsafe_arena_set_allocated_jointree( - ::pg_query::FromExpr* jointree) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.jointree_); +inline void InferenceElem::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.jointree_ = jointree; - if (jointree) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.jointree) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InferenceElem.xpr) } -inline ::pg_query::FromExpr* Query::release_jointree() { - - ::pg_query::FromExpr* temp = _impl_.jointree_; - _impl_.jointree_ = nullptr; +inline ::pg_query::Node* InferenceElem::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::FromExpr* Query::unsafe_arena_release_jointree() { - // @@protoc_insertion_point(field_release:pg_query.Query.jointree) - - ::pg_query::FromExpr* temp = _impl_.jointree_; - _impl_.jointree_ = nullptr; +inline ::pg_query::Node* InferenceElem::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.InferenceElem.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::FromExpr* Query::_internal_mutable_jointree() { - - if (_impl_.jointree_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::FromExpr>(GetArenaForAllocation()); - _impl_.jointree_ = p; +inline ::pg_query::Node* InferenceElem::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.jointree_; + return _impl_.xpr_; } -inline ::pg_query::FromExpr* Query::mutable_jointree() { - ::pg_query::FromExpr* _msg = _internal_mutable_jointree(); - // @@protoc_insertion_point(field_mutable:pg_query.Query.jointree) +inline ::pg_query::Node* InferenceElem::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.InferenceElem.xpr) return _msg; } -inline void Query::set_allocated_jointree(::pg_query::FromExpr* jointree) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void InferenceElem::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.jointree_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (jointree) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(jointree); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - jointree = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, jointree, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.jointree_ = jointree; - // @@protoc_insertion_point(field_set_allocated:pg_query.Query.jointree) -} -// repeated .pg_query.Node merge_action_list = 19 [json_name = "mergeActionList"]; -inline int Query::_internal_merge_action_list_size() const { - return _impl_.merge_action_list_.size(); -} -inline int Query::merge_action_list_size() const { - return _internal_merge_action_list_size(); -} -inline void Query::clear_merge_action_list() { - _impl_.merge_action_list_.Clear(); -} -inline ::pg_query::Node* Query::mutable_merge_action_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.merge_action_list) - return _impl_.merge_action_list_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_merge_action_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.merge_action_list) - return &_impl_.merge_action_list_; -} -inline const ::pg_query::Node& Query::_internal_merge_action_list(int index) const { - return _impl_.merge_action_list_.Get(index); -} -inline const ::pg_query::Node& Query::merge_action_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.merge_action_list) - return _internal_merge_action_list(index); -} -inline ::pg_query::Node* Query::_internal_add_merge_action_list() { - return _impl_.merge_action_list_.Add(); -} -inline ::pg_query::Node* Query::add_merge_action_list() { - ::pg_query::Node* _add = _internal_add_merge_action_list(); - // @@protoc_insertion_point(field_add:pg_query.Query.merge_action_list) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::merge_action_list() const { - // @@protoc_insertion_point(field_list:pg_query.Query.merge_action_list) - return _impl_.merge_action_list_; + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.InferenceElem.xpr) } -// bool merge_use_outer_join = 20 [json_name = "mergeUseOuterJoin"]; -inline void Query::clear_merge_use_outer_join() { - _impl_.merge_use_outer_join_ = false; +// .pg_query.Node expr = 2 [json_name = "expr"]; +inline bool InferenceElem::has_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.expr_ != nullptr); + return value; } -inline bool Query::_internal_merge_use_outer_join() const { - return _impl_.merge_use_outer_join_; +inline void InferenceElem::clear_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.expr_ != nullptr) _impl_.expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline bool Query::merge_use_outer_join() const { - // @@protoc_insertion_point(field_get:pg_query.Query.merge_use_outer_join) - return _internal_merge_use_outer_join(); +inline const ::pg_query::Node& InferenceElem::_internal_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void Query::_internal_set_merge_use_outer_join(bool value) { - - _impl_.merge_use_outer_join_ = value; +inline const ::pg_query::Node& InferenceElem::expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InferenceElem.expr) + return _internal_expr(); } -inline void Query::set_merge_use_outer_join(bool value) { - _internal_set_merge_use_outer_join(value); - // @@protoc_insertion_point(field_set:pg_query.Query.merge_use_outer_join) +inline void InferenceElem::unsafe_arena_set_allocated_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.expr_); + } + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InferenceElem.expr) } +inline ::pg_query::Node* InferenceElem::release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node target_list = 21 [json_name = "targetList"]; -inline int Query::_internal_target_list_size() const { - return _impl_.target_list_.size(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.expr_; + _impl_.expr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int Query::target_list_size() const { - return _internal_target_list_size(); +inline ::pg_query::Node* InferenceElem::unsafe_arena_release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.InferenceElem.expr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.expr_; + _impl_.expr_ = nullptr; + return temp; } -inline void Query::clear_target_list() { - _impl_.target_list_.Clear(); +inline ::pg_query::Node* InferenceElem::_internal_mutable_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.expr_; } -inline ::pg_query::Node* Query::mutable_target_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.target_list) - return _impl_.target_list_.Mutable(index); +inline ::pg_query::Node* InferenceElem::mutable_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.InferenceElem.expr) + return _msg; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_target_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.target_list) - return &_impl_.target_list_; +inline void InferenceElem::set_allocated_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.expr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.InferenceElem.expr) } -inline const ::pg_query::Node& Query::_internal_target_list(int index) const { - return _impl_.target_list_.Get(index); + +// uint32 infercollid = 3 [json_name = "infercollid"]; +inline void InferenceElem::clear_infercollid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.infercollid_ = 0u; } -inline const ::pg_query::Node& Query::target_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.target_list) - return _internal_target_list(index); +inline ::uint32_t InferenceElem::infercollid() const { + // @@protoc_insertion_point(field_get:pg_query.InferenceElem.infercollid) + return _internal_infercollid(); } -inline ::pg_query::Node* Query::_internal_add_target_list() { - return _impl_.target_list_.Add(); +inline void InferenceElem::set_infercollid(::uint32_t value) { + _internal_set_infercollid(value); + // @@protoc_insertion_point(field_set:pg_query.InferenceElem.infercollid) } -inline ::pg_query::Node* Query::add_target_list() { - ::pg_query::Node* _add = _internal_add_target_list(); - // @@protoc_insertion_point(field_add:pg_query.Query.target_list) - return _add; +inline ::uint32_t InferenceElem::_internal_infercollid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.infercollid_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::target_list() const { - // @@protoc_insertion_point(field_list:pg_query.Query.target_list) - return _impl_.target_list_; +inline void InferenceElem::_internal_set_infercollid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.infercollid_ = value; } -// .pg_query.OverridingKind override = 22 [json_name = "override"]; -inline void Query::clear_override() { - _impl_.override_ = 0; +// uint32 inferopclass = 4 [json_name = "inferopclass"]; +inline void InferenceElem::clear_inferopclass() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inferopclass_ = 0u; } -inline ::pg_query::OverridingKind Query::_internal_override() const { - return static_cast< ::pg_query::OverridingKind >(_impl_.override_); +inline ::uint32_t InferenceElem::inferopclass() const { + // @@protoc_insertion_point(field_get:pg_query.InferenceElem.inferopclass) + return _internal_inferopclass(); } -inline ::pg_query::OverridingKind Query::override() const { - // @@protoc_insertion_point(field_get:pg_query.Query.override) - return _internal_override(); +inline void InferenceElem::set_inferopclass(::uint32_t value) { + _internal_set_inferopclass(value); + // @@protoc_insertion_point(field_set:pg_query.InferenceElem.inferopclass) } -inline void Query::_internal_set_override(::pg_query::OverridingKind value) { - - _impl_.override_ = value; +inline ::uint32_t InferenceElem::_internal_inferopclass() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inferopclass_; } -inline void Query::set_override(::pg_query::OverridingKind value) { - _internal_set_override(value); - // @@protoc_insertion_point(field_set:pg_query.Query.override) +inline void InferenceElem::_internal_set_inferopclass(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inferopclass_ = value; } -// .pg_query.OnConflictExpr on_conflict = 23 [json_name = "onConflict"]; -inline bool Query::_internal_has_on_conflict() const { - return this != internal_default_instance() && _impl_.on_conflict_ != nullptr; -} -inline bool Query::has_on_conflict() const { - return _internal_has_on_conflict(); +// ------------------------------------------------------------------- + +// TargetEntry + +// .pg_query.Node xpr = 1 [json_name = "xpr"]; +inline bool TargetEntry::has_xpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.xpr_ != nullptr); + return value; } -inline void Query::clear_on_conflict() { - if (GetArenaForAllocation() == nullptr && _impl_.on_conflict_ != nullptr) { - delete _impl_.on_conflict_; - } - _impl_.on_conflict_ = nullptr; +inline void TargetEntry::clear_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.xpr_ != nullptr) _impl_.xpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::OnConflictExpr& Query::_internal_on_conflict() const { - const ::pg_query::OnConflictExpr* p = _impl_.on_conflict_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_OnConflictExpr_default_instance_); +inline const ::pg_query::Node& TargetEntry::_internal_xpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.xpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::OnConflictExpr& Query::on_conflict() const { - // @@protoc_insertion_point(field_get:pg_query.Query.on_conflict) - return _internal_on_conflict(); +inline const ::pg_query::Node& TargetEntry::xpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TargetEntry.xpr) + return _internal_xpr(); } -inline void Query::unsafe_arena_set_allocated_on_conflict( - ::pg_query::OnConflictExpr* on_conflict) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.on_conflict_); +inline void TargetEntry::unsafe_arena_set_allocated_xpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.xpr_); } - _impl_.on_conflict_ = on_conflict; - if (on_conflict) { - + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.on_conflict) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TargetEntry.xpr) } -inline ::pg_query::OnConflictExpr* Query::release_on_conflict() { - - ::pg_query::OnConflictExpr* temp = _impl_.on_conflict_; - _impl_.on_conflict_ = nullptr; +inline ::pg_query::Node* TargetEntry::release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.xpr_; + _impl_.xpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::OnConflictExpr* Query::unsafe_arena_release_on_conflict() { - // @@protoc_insertion_point(field_release:pg_query.Query.on_conflict) - - ::pg_query::OnConflictExpr* temp = _impl_.on_conflict_; - _impl_.on_conflict_ = nullptr; +inline ::pg_query::Node* TargetEntry::unsafe_arena_release_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TargetEntry.xpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.xpr_; + _impl_.xpr_ = nullptr; return temp; } -inline ::pg_query::OnConflictExpr* Query::_internal_mutable_on_conflict() { - - if (_impl_.on_conflict_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::OnConflictExpr>(GetArenaForAllocation()); - _impl_.on_conflict_ = p; +inline ::pg_query::Node* TargetEntry::_internal_mutable_xpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.xpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.on_conflict_; + return _impl_.xpr_; } -inline ::pg_query::OnConflictExpr* Query::mutable_on_conflict() { - ::pg_query::OnConflictExpr* _msg = _internal_mutable_on_conflict(); - // @@protoc_insertion_point(field_mutable:pg_query.Query.on_conflict) +inline ::pg_query::Node* TargetEntry::mutable_xpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_xpr(); + // @@protoc_insertion_point(field_mutable:pg_query.TargetEntry.xpr) return _msg; } -inline void Query::set_allocated_on_conflict(::pg_query::OnConflictExpr* on_conflict) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void TargetEntry::set_allocated_xpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.on_conflict_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.xpr_); } - if (on_conflict) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(on_conflict); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - on_conflict = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, on_conflict, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.on_conflict_ = on_conflict; - // @@protoc_insertion_point(field_set_allocated:pg_query.Query.on_conflict) -} -// repeated .pg_query.Node returning_list = 24 [json_name = "returningList"]; -inline int Query::_internal_returning_list_size() const { - return _impl_.returning_list_.size(); -} -inline int Query::returning_list_size() const { - return _internal_returning_list_size(); -} -inline void Query::clear_returning_list() { - _impl_.returning_list_.Clear(); -} -inline ::pg_query::Node* Query::mutable_returning_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.returning_list) - return _impl_.returning_list_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_returning_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.returning_list) - return &_impl_.returning_list_; -} -inline const ::pg_query::Node& Query::_internal_returning_list(int index) const { - return _impl_.returning_list_.Get(index); -} -inline const ::pg_query::Node& Query::returning_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.returning_list) - return _internal_returning_list(index); -} -inline ::pg_query::Node* Query::_internal_add_returning_list() { - return _impl_.returning_list_.Add(); -} -inline ::pg_query::Node* Query::add_returning_list() { - ::pg_query::Node* _add = _internal_add_returning_list(); - // @@protoc_insertion_point(field_add:pg_query.Query.returning_list) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::returning_list() const { - // @@protoc_insertion_point(field_list:pg_query.Query.returning_list) - return _impl_.returning_list_; + _impl_.xpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.TargetEntry.xpr) } -// repeated .pg_query.Node group_clause = 25 [json_name = "groupClause"]; -inline int Query::_internal_group_clause_size() const { - return _impl_.group_clause_.size(); +// .pg_query.Node expr = 2 [json_name = "expr"]; +inline bool TargetEntry::has_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.expr_ != nullptr); + return value; } -inline int Query::group_clause_size() const { - return _internal_group_clause_size(); +inline void TargetEntry::clear_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.expr_ != nullptr) _impl_.expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline void Query::clear_group_clause() { - _impl_.group_clause_.Clear(); +inline const ::pg_query::Node& TargetEntry::_internal_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* Query::mutable_group_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.group_clause) - return _impl_.group_clause_.Mutable(index); +inline const ::pg_query::Node& TargetEntry::expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TargetEntry.expr) + return _internal_expr(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_group_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.group_clause) - return &_impl_.group_clause_; +inline void TargetEntry::unsafe_arena_set_allocated_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.expr_); + } + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TargetEntry.expr) } -inline const ::pg_query::Node& Query::_internal_group_clause(int index) const { - return _impl_.group_clause_.Get(index); +inline ::pg_query::Node* TargetEntry::release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.expr_; + _impl_.expr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& Query::group_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.group_clause) - return _internal_group_clause(index); +inline ::pg_query::Node* TargetEntry::unsafe_arena_release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TargetEntry.expr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.expr_; + _impl_.expr_ = nullptr; + return temp; } -inline ::pg_query::Node* Query::_internal_add_group_clause() { - return _impl_.group_clause_.Add(); +inline ::pg_query::Node* TargetEntry::_internal_mutable_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.expr_; } -inline ::pg_query::Node* Query::add_group_clause() { - ::pg_query::Node* _add = _internal_add_group_clause(); - // @@protoc_insertion_point(field_add:pg_query.Query.group_clause) - return _add; +inline ::pg_query::Node* TargetEntry::mutable_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.TargetEntry.expr) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::group_clause() const { - // @@protoc_insertion_point(field_list:pg_query.Query.group_clause) - return _impl_.group_clause_; +inline void TargetEntry::set_allocated_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.expr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.TargetEntry.expr) } -// bool group_distinct = 26 [json_name = "groupDistinct"]; -inline void Query::clear_group_distinct() { - _impl_.group_distinct_ = false; +// int32 resno = 3 [json_name = "resno"]; +inline void TargetEntry::clear_resno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resno_ = 0; } -inline bool Query::_internal_group_distinct() const { - return _impl_.group_distinct_; +inline ::int32_t TargetEntry::resno() const { + // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resno) + return _internal_resno(); } -inline bool Query::group_distinct() const { - // @@protoc_insertion_point(field_get:pg_query.Query.group_distinct) - return _internal_group_distinct(); +inline void TargetEntry::set_resno(::int32_t value) { + _internal_set_resno(value); + // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resno) } -inline void Query::_internal_set_group_distinct(bool value) { - - _impl_.group_distinct_ = value; +inline ::int32_t TargetEntry::_internal_resno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resno_; } -inline void Query::set_group_distinct(bool value) { - _internal_set_group_distinct(value); - // @@protoc_insertion_point(field_set:pg_query.Query.group_distinct) +inline void TargetEntry::_internal_set_resno(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resno_ = value; } -// repeated .pg_query.Node grouping_sets = 27 [json_name = "groupingSets"]; -inline int Query::_internal_grouping_sets_size() const { - return _impl_.grouping_sets_.size(); -} -inline int Query::grouping_sets_size() const { - return _internal_grouping_sets_size(); +// string resname = 4 [json_name = "resname"]; +inline void TargetEntry::clear_resname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resname_.ClearToEmpty(); } -inline void Query::clear_grouping_sets() { - _impl_.grouping_sets_.Clear(); +inline const std::string& TargetEntry::resname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resname) + return _internal_resname(); } -inline ::pg_query::Node* Query::mutable_grouping_sets(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.grouping_sets) - return _impl_.grouping_sets_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void TargetEntry::set_resname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_grouping_sets() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.grouping_sets) - return &_impl_.grouping_sets_; +inline std::string* TargetEntry::mutable_resname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_resname(); + // @@protoc_insertion_point(field_mutable:pg_query.TargetEntry.resname) + return _s; } -inline const ::pg_query::Node& Query::_internal_grouping_sets(int index) const { - return _impl_.grouping_sets_.Get(index); +inline const std::string& TargetEntry::_internal_resname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resname_.Get(); } -inline const ::pg_query::Node& Query::grouping_sets(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.grouping_sets) - return _internal_grouping_sets(index); +inline void TargetEntry::_internal_set_resname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resname_.Set(value, GetArena()); } -inline ::pg_query::Node* Query::_internal_add_grouping_sets() { - return _impl_.grouping_sets_.Add(); +inline std::string* TargetEntry::_internal_mutable_resname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.resname_.Mutable( GetArena()); } -inline ::pg_query::Node* Query::add_grouping_sets() { - ::pg_query::Node* _add = _internal_add_grouping_sets(); - // @@protoc_insertion_point(field_add:pg_query.Query.grouping_sets) - return _add; +inline std::string* TargetEntry::release_resname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TargetEntry.resname) + return _impl_.resname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::grouping_sets() const { - // @@protoc_insertion_point(field_list:pg_query.Query.grouping_sets) - return _impl_.grouping_sets_; +inline void TargetEntry::set_allocated_resname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.resname_.IsDefault()) { + _impl_.resname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.TargetEntry.resname) } -// .pg_query.Node having_qual = 28 [json_name = "havingQual"]; -inline bool Query::_internal_has_having_qual() const { - return this != internal_default_instance() && _impl_.having_qual_ != nullptr; -} -inline bool Query::has_having_qual() const { - return _internal_has_having_qual(); -} -inline void Query::clear_having_qual() { - if (GetArenaForAllocation() == nullptr && _impl_.having_qual_ != nullptr) { - delete _impl_.having_qual_; - } - _impl_.having_qual_ = nullptr; -} -inline const ::pg_query::Node& Query::_internal_having_qual() const { - const ::pg_query::Node* p = _impl_.having_qual_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); -} -inline const ::pg_query::Node& Query::having_qual() const { - // @@protoc_insertion_point(field_get:pg_query.Query.having_qual) - return _internal_having_qual(); -} -inline void Query::unsafe_arena_set_allocated_having_qual( - ::pg_query::Node* having_qual) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.having_qual_); - } - _impl_.having_qual_ = having_qual; - if (having_qual) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.having_qual) -} -inline ::pg_query::Node* Query::release_having_qual() { - - ::pg_query::Node* temp = _impl_.having_qual_; - _impl_.having_qual_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +// uint32 ressortgroupref = 5 [json_name = "ressortgroupref"]; +inline void TargetEntry::clear_ressortgroupref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ressortgroupref_ = 0u; } -inline ::pg_query::Node* Query::unsafe_arena_release_having_qual() { - // @@protoc_insertion_point(field_release:pg_query.Query.having_qual) - - ::pg_query::Node* temp = _impl_.having_qual_; - _impl_.having_qual_ = nullptr; - return temp; +inline ::uint32_t TargetEntry::ressortgroupref() const { + // @@protoc_insertion_point(field_get:pg_query.TargetEntry.ressortgroupref) + return _internal_ressortgroupref(); } -inline ::pg_query::Node* Query::_internal_mutable_having_qual() { - - if (_impl_.having_qual_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.having_qual_ = p; - } - return _impl_.having_qual_; +inline void TargetEntry::set_ressortgroupref(::uint32_t value) { + _internal_set_ressortgroupref(value); + // @@protoc_insertion_point(field_set:pg_query.TargetEntry.ressortgroupref) } -inline ::pg_query::Node* Query::mutable_having_qual() { - ::pg_query::Node* _msg = _internal_mutable_having_qual(); - // @@protoc_insertion_point(field_mutable:pg_query.Query.having_qual) - return _msg; +inline ::uint32_t TargetEntry::_internal_ressortgroupref() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ressortgroupref_; } -inline void Query::set_allocated_having_qual(::pg_query::Node* having_qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.having_qual_; - } - if (having_qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(having_qual); - if (message_arena != submessage_arena) { - having_qual = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, having_qual, submessage_arena); - } - - } else { - - } - _impl_.having_qual_ = having_qual; - // @@protoc_insertion_point(field_set_allocated:pg_query.Query.having_qual) +inline void TargetEntry::_internal_set_ressortgroupref(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ressortgroupref_ = value; } -// repeated .pg_query.Node window_clause = 29 [json_name = "windowClause"]; -inline int Query::_internal_window_clause_size() const { - return _impl_.window_clause_.size(); +// uint32 resorigtbl = 6 [json_name = "resorigtbl"]; +inline void TargetEntry::clear_resorigtbl() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resorigtbl_ = 0u; } -inline int Query::window_clause_size() const { - return _internal_window_clause_size(); +inline ::uint32_t TargetEntry::resorigtbl() const { + // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resorigtbl) + return _internal_resorigtbl(); } -inline void Query::clear_window_clause() { - _impl_.window_clause_.Clear(); +inline void TargetEntry::set_resorigtbl(::uint32_t value) { + _internal_set_resorigtbl(value); + // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resorigtbl) } -inline ::pg_query::Node* Query::mutable_window_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.window_clause) - return _impl_.window_clause_.Mutable(index); +inline ::uint32_t TargetEntry::_internal_resorigtbl() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resorigtbl_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_window_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.window_clause) - return &_impl_.window_clause_; +inline void TargetEntry::_internal_set_resorigtbl(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resorigtbl_ = value; } -inline const ::pg_query::Node& Query::_internal_window_clause(int index) const { - return _impl_.window_clause_.Get(index); + +// int32 resorigcol = 7 [json_name = "resorigcol"]; +inline void TargetEntry::clear_resorigcol() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resorigcol_ = 0; } -inline const ::pg_query::Node& Query::window_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.window_clause) - return _internal_window_clause(index); +inline ::int32_t TargetEntry::resorigcol() const { + // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resorigcol) + return _internal_resorigcol(); } -inline ::pg_query::Node* Query::_internal_add_window_clause() { - return _impl_.window_clause_.Add(); +inline void TargetEntry::set_resorigcol(::int32_t value) { + _internal_set_resorigcol(value); + // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resorigcol) } -inline ::pg_query::Node* Query::add_window_clause() { - ::pg_query::Node* _add = _internal_add_window_clause(); - // @@protoc_insertion_point(field_add:pg_query.Query.window_clause) - return _add; +inline ::int32_t TargetEntry::_internal_resorigcol() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resorigcol_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::window_clause() const { - // @@protoc_insertion_point(field_list:pg_query.Query.window_clause) - return _impl_.window_clause_; +inline void TargetEntry::_internal_set_resorigcol(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resorigcol_ = value; } -// repeated .pg_query.Node distinct_clause = 30 [json_name = "distinctClause"]; -inline int Query::_internal_distinct_clause_size() const { - return _impl_.distinct_clause_.size(); +// bool resjunk = 8 [json_name = "resjunk"]; +inline void TargetEntry::clear_resjunk() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.resjunk_ = false; } -inline int Query::distinct_clause_size() const { - return _internal_distinct_clause_size(); +inline bool TargetEntry::resjunk() const { + // @@protoc_insertion_point(field_get:pg_query.TargetEntry.resjunk) + return _internal_resjunk(); } -inline void Query::clear_distinct_clause() { - _impl_.distinct_clause_.Clear(); +inline void TargetEntry::set_resjunk(bool value) { + _internal_set_resjunk(value); + // @@protoc_insertion_point(field_set:pg_query.TargetEntry.resjunk) } -inline ::pg_query::Node* Query::mutable_distinct_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.distinct_clause) - return _impl_.distinct_clause_.Mutable(index); +inline bool TargetEntry::_internal_resjunk() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.resjunk_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_distinct_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.distinct_clause) - return &_impl_.distinct_clause_; +inline void TargetEntry::_internal_set_resjunk(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.resjunk_ = value; } -inline const ::pg_query::Node& Query::_internal_distinct_clause(int index) const { - return _impl_.distinct_clause_.Get(index); + +// ------------------------------------------------------------------- + +// RangeTblRef + +// int32 rtindex = 1 [json_name = "rtindex"]; +inline void RangeTblRef::clear_rtindex() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rtindex_ = 0; } -inline const ::pg_query::Node& Query::distinct_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.distinct_clause) - return _internal_distinct_clause(index); +inline ::int32_t RangeTblRef::rtindex() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblRef.rtindex) + return _internal_rtindex(); } -inline ::pg_query::Node* Query::_internal_add_distinct_clause() { - return _impl_.distinct_clause_.Add(); +inline void RangeTblRef::set_rtindex(::int32_t value) { + _internal_set_rtindex(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblRef.rtindex) } -inline ::pg_query::Node* Query::add_distinct_clause() { - ::pg_query::Node* _add = _internal_add_distinct_clause(); - // @@protoc_insertion_point(field_add:pg_query.Query.distinct_clause) - return _add; +inline ::int32_t RangeTblRef::_internal_rtindex() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rtindex_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::distinct_clause() const { - // @@protoc_insertion_point(field_list:pg_query.Query.distinct_clause) - return _impl_.distinct_clause_; +inline void RangeTblRef::_internal_set_rtindex(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rtindex_ = value; } -// repeated .pg_query.Node sort_clause = 31 [json_name = "sortClause"]; -inline int Query::_internal_sort_clause_size() const { - return _impl_.sort_clause_.size(); +// ------------------------------------------------------------------- + +// JoinExpr + +// .pg_query.JoinType jointype = 1 [json_name = "jointype"]; +inline void JoinExpr::clear_jointype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.jointype_ = 0; } -inline int Query::sort_clause_size() const { - return _internal_sort_clause_size(); +inline ::pg_query::JoinType JoinExpr::jointype() const { + // @@protoc_insertion_point(field_get:pg_query.JoinExpr.jointype) + return _internal_jointype(); } -inline void Query::clear_sort_clause() { - _impl_.sort_clause_.Clear(); +inline void JoinExpr::set_jointype(::pg_query::JoinType value) { + _internal_set_jointype(value); + // @@protoc_insertion_point(field_set:pg_query.JoinExpr.jointype) } -inline ::pg_query::Node* Query::mutable_sort_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.sort_clause) - return _impl_.sort_clause_.Mutable(index); +inline ::pg_query::JoinType JoinExpr::_internal_jointype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::JoinType>(_impl_.jointype_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_sort_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.sort_clause) - return &_impl_.sort_clause_; +inline void JoinExpr::_internal_set_jointype(::pg_query::JoinType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.jointype_ = value; } -inline const ::pg_query::Node& Query::_internal_sort_clause(int index) const { - return _impl_.sort_clause_.Get(index); + +// bool is_natural = 2 [json_name = "isNatural"]; +inline void JoinExpr::clear_is_natural() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_natural_ = false; } -inline const ::pg_query::Node& Query::sort_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.sort_clause) - return _internal_sort_clause(index); +inline bool JoinExpr::is_natural() const { + // @@protoc_insertion_point(field_get:pg_query.JoinExpr.is_natural) + return _internal_is_natural(); } -inline ::pg_query::Node* Query::_internal_add_sort_clause() { - return _impl_.sort_clause_.Add(); +inline void JoinExpr::set_is_natural(bool value) { + _internal_set_is_natural(value); + // @@protoc_insertion_point(field_set:pg_query.JoinExpr.is_natural) } -inline ::pg_query::Node* Query::add_sort_clause() { - ::pg_query::Node* _add = _internal_add_sort_clause(); - // @@protoc_insertion_point(field_add:pg_query.Query.sort_clause) - return _add; +inline bool JoinExpr::_internal_is_natural() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_natural_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::sort_clause() const { - // @@protoc_insertion_point(field_list:pg_query.Query.sort_clause) - return _impl_.sort_clause_; +inline void JoinExpr::_internal_set_is_natural(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_natural_ = value; } -// .pg_query.Node limit_offset = 32 [json_name = "limitOffset"]; -inline bool Query::_internal_has_limit_offset() const { - return this != internal_default_instance() && _impl_.limit_offset_ != nullptr; -} -inline bool Query::has_limit_offset() const { - return _internal_has_limit_offset(); +// .pg_query.Node larg = 3 [json_name = "larg"]; +inline bool JoinExpr::has_larg() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.larg_ != nullptr); + return value; } -inline void Query::clear_limit_offset() { - if (GetArenaForAllocation() == nullptr && _impl_.limit_offset_ != nullptr) { - delete _impl_.limit_offset_; - } - _impl_.limit_offset_ = nullptr; +inline void JoinExpr::clear_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.larg_ != nullptr) _impl_.larg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& Query::_internal_limit_offset() const { - const ::pg_query::Node* p = _impl_.limit_offset_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& JoinExpr::_internal_larg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.larg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& Query::limit_offset() const { - // @@protoc_insertion_point(field_get:pg_query.Query.limit_offset) - return _internal_limit_offset(); +inline const ::pg_query::Node& JoinExpr::larg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JoinExpr.larg) + return _internal_larg(); } -inline void Query::unsafe_arena_set_allocated_limit_offset( - ::pg_query::Node* limit_offset) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.limit_offset_); +inline void JoinExpr::unsafe_arena_set_allocated_larg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.larg_); } - _impl_.limit_offset_ = limit_offset; - if (limit_offset) { - + _impl_.larg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.limit_offset) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.larg) } -inline ::pg_query::Node* Query::release_limit_offset() { - - ::pg_query::Node* temp = _impl_.limit_offset_; - _impl_.limit_offset_ = nullptr; +inline ::pg_query::Node* JoinExpr::release_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.larg_; + _impl_.larg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* Query::unsafe_arena_release_limit_offset() { - // @@protoc_insertion_point(field_release:pg_query.Query.limit_offset) - - ::pg_query::Node* temp = _impl_.limit_offset_; - _impl_.limit_offset_ = nullptr; +inline ::pg_query::Node* JoinExpr::unsafe_arena_release_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JoinExpr.larg) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.larg_; + _impl_.larg_ = nullptr; return temp; } -inline ::pg_query::Node* Query::_internal_mutable_limit_offset() { - - if (_impl_.limit_offset_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.limit_offset_ = p; +inline ::pg_query::Node* JoinExpr::_internal_mutable_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.larg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.larg_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.limit_offset_; + return _impl_.larg_; } -inline ::pg_query::Node* Query::mutable_limit_offset() { - ::pg_query::Node* _msg = _internal_mutable_limit_offset(); - // @@protoc_insertion_point(field_mutable:pg_query.Query.limit_offset) +inline ::pg_query::Node* JoinExpr::mutable_larg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_larg(); + // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.larg) return _msg; } -inline void Query::set_allocated_limit_offset(::pg_query::Node* limit_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JoinExpr::set_allocated_larg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.limit_offset_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.larg_); } - if (limit_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(limit_offset); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - limit_offset = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, limit_offset, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.limit_offset_ = limit_offset; - // @@protoc_insertion_point(field_set_allocated:pg_query.Query.limit_offset) -} -// .pg_query.Node limit_count = 33 [json_name = "limitCount"]; -inline bool Query::_internal_has_limit_count() const { - return this != internal_default_instance() && _impl_.limit_count_ != nullptr; + _impl_.larg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.larg) } -inline bool Query::has_limit_count() const { - return _internal_has_limit_count(); + +// .pg_query.Node rarg = 4 [json_name = "rarg"]; +inline bool JoinExpr::has_rarg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.rarg_ != nullptr); + return value; } -inline void Query::clear_limit_count() { - if (GetArenaForAllocation() == nullptr && _impl_.limit_count_ != nullptr) { - delete _impl_.limit_count_; - } - _impl_.limit_count_ = nullptr; +inline void JoinExpr::clear_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.rarg_ != nullptr) _impl_.rarg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& Query::_internal_limit_count() const { - const ::pg_query::Node* p = _impl_.limit_count_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& JoinExpr::_internal_rarg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.rarg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& Query::limit_count() const { - // @@protoc_insertion_point(field_get:pg_query.Query.limit_count) - return _internal_limit_count(); +inline const ::pg_query::Node& JoinExpr::rarg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JoinExpr.rarg) + return _internal_rarg(); } -inline void Query::unsafe_arena_set_allocated_limit_count( - ::pg_query::Node* limit_count) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.limit_count_); +inline void JoinExpr::unsafe_arena_set_allocated_rarg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.rarg_); } - _impl_.limit_count_ = limit_count; - if (limit_count) { - + _impl_.rarg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.limit_count) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.rarg) } -inline ::pg_query::Node* Query::release_limit_count() { - - ::pg_query::Node* temp = _impl_.limit_count_; - _impl_.limit_count_ = nullptr; +inline ::pg_query::Node* JoinExpr::release_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.rarg_; + _impl_.rarg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* Query::unsafe_arena_release_limit_count() { - // @@protoc_insertion_point(field_release:pg_query.Query.limit_count) - - ::pg_query::Node* temp = _impl_.limit_count_; - _impl_.limit_count_ = nullptr; +inline ::pg_query::Node* JoinExpr::unsafe_arena_release_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JoinExpr.rarg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.rarg_; + _impl_.rarg_ = nullptr; return temp; } -inline ::pg_query::Node* Query::_internal_mutable_limit_count() { - - if (_impl_.limit_count_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.limit_count_ = p; +inline ::pg_query::Node* JoinExpr::_internal_mutable_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.rarg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.rarg_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.limit_count_; + return _impl_.rarg_; } -inline ::pg_query::Node* Query::mutable_limit_count() { - ::pg_query::Node* _msg = _internal_mutable_limit_count(); - // @@protoc_insertion_point(field_mutable:pg_query.Query.limit_count) +inline ::pg_query::Node* JoinExpr::mutable_rarg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_rarg(); + // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.rarg) return _msg; } -inline void Query::set_allocated_limit_count(::pg_query::Node* limit_count) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JoinExpr::set_allocated_rarg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.limit_count_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.rarg_); } - if (limit_count) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(limit_count); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - limit_count = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, limit_count, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.limit_count_ = limit_count; - // @@protoc_insertion_point(field_set_allocated:pg_query.Query.limit_count) -} -// .pg_query.LimitOption limit_option = 34 [json_name = "limitOption"]; -inline void Query::clear_limit_option() { - _impl_.limit_option_ = 0; -} -inline ::pg_query::LimitOption Query::_internal_limit_option() const { - return static_cast< ::pg_query::LimitOption >(_impl_.limit_option_); -} -inline ::pg_query::LimitOption Query::limit_option() const { - // @@protoc_insertion_point(field_get:pg_query.Query.limit_option) - return _internal_limit_option(); -} -inline void Query::_internal_set_limit_option(::pg_query::LimitOption value) { - - _impl_.limit_option_ = value; -} -inline void Query::set_limit_option(::pg_query::LimitOption value) { - _internal_set_limit_option(value); - // @@protoc_insertion_point(field_set:pg_query.Query.limit_option) + _impl_.rarg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.rarg) } -// repeated .pg_query.Node row_marks = 35 [json_name = "rowMarks"]; -inline int Query::_internal_row_marks_size() const { - return _impl_.row_marks_.size(); +// repeated .pg_query.Node using_clause = 5 [json_name = "usingClause"]; +inline int JoinExpr::_internal_using_clause_size() const { + return _internal_using_clause().size(); } -inline int Query::row_marks_size() const { - return _internal_row_marks_size(); +inline int JoinExpr::using_clause_size() const { + return _internal_using_clause_size(); } -inline void Query::clear_row_marks() { - _impl_.row_marks_.Clear(); +inline void JoinExpr::clear_using_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.using_clause_.Clear(); } -inline ::pg_query::Node* Query::mutable_row_marks(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.row_marks) - return _impl_.row_marks_.Mutable(index); +inline ::pg_query::Node* JoinExpr::mutable_using_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.using_clause) + return _internal_mutable_using_clause()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_row_marks() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.row_marks) - return &_impl_.row_marks_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* JoinExpr::mutable_using_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.JoinExpr.using_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_using_clause(); } -inline const ::pg_query::Node& Query::_internal_row_marks(int index) const { - return _impl_.row_marks_.Get(index); +inline const ::pg_query::Node& JoinExpr::using_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JoinExpr.using_clause) + return _internal_using_clause().Get(index); } -inline const ::pg_query::Node& Query::row_marks(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.row_marks) - return _internal_row_marks(index); +inline ::pg_query::Node* JoinExpr::add_using_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_using_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.JoinExpr.using_clause) + return _add; } -inline ::pg_query::Node* Query::_internal_add_row_marks() { - return _impl_.row_marks_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& JoinExpr::using_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.JoinExpr.using_clause) + return _internal_using_clause(); } -inline ::pg_query::Node* Query::add_row_marks() { - ::pg_query::Node* _add = _internal_add_row_marks(); - // @@protoc_insertion_point(field_add:pg_query.Query.row_marks) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +JoinExpr::_internal_using_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.using_clause_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::row_marks() const { - // @@protoc_insertion_point(field_list:pg_query.Query.row_marks) - return _impl_.row_marks_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +JoinExpr::_internal_mutable_using_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.using_clause_; } -// .pg_query.Node set_operations = 36 [json_name = "setOperations"]; -inline bool Query::_internal_has_set_operations() const { - return this != internal_default_instance() && _impl_.set_operations_ != nullptr; -} -inline bool Query::has_set_operations() const { - return _internal_has_set_operations(); +// .pg_query.Alias join_using_alias = 6 [json_name = "join_using_alias"]; +inline bool JoinExpr::has_join_using_alias() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.join_using_alias_ != nullptr); + return value; } -inline void Query::clear_set_operations() { - if (GetArenaForAllocation() == nullptr && _impl_.set_operations_ != nullptr) { - delete _impl_.set_operations_; - } - _impl_.set_operations_ = nullptr; +inline void JoinExpr::clear_join_using_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.join_using_alias_ != nullptr) _impl_.join_using_alias_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline const ::pg_query::Node& Query::_internal_set_operations() const { - const ::pg_query::Node* p = _impl_.set_operations_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Alias& JoinExpr::_internal_join_using_alias() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Alias* p = _impl_.join_using_alias_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Alias_default_instance_); } -inline const ::pg_query::Node& Query::set_operations() const { - // @@protoc_insertion_point(field_get:pg_query.Query.set_operations) - return _internal_set_operations(); +inline const ::pg_query::Alias& JoinExpr::join_using_alias() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JoinExpr.join_using_alias) + return _internal_join_using_alias(); } -inline void Query::unsafe_arena_set_allocated_set_operations( - ::pg_query::Node* set_operations) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.set_operations_); +inline void JoinExpr::unsafe_arena_set_allocated_join_using_alias(::pg_query::Alias* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.join_using_alias_); } - _impl_.set_operations_ = set_operations; - if (set_operations) { - + _impl_.join_using_alias_ = reinterpret_cast<::pg_query::Alias*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.set_operations) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.join_using_alias) } -inline ::pg_query::Node* Query::release_set_operations() { - - ::pg_query::Node* temp = _impl_.set_operations_; - _impl_.set_operations_ = nullptr; +inline ::pg_query::Alias* JoinExpr::release_join_using_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Alias* released = _impl_.join_using_alias_; + _impl_.join_using_alias_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* Query::unsafe_arena_release_set_operations() { - // @@protoc_insertion_point(field_release:pg_query.Query.set_operations) - - ::pg_query::Node* temp = _impl_.set_operations_; - _impl_.set_operations_ = nullptr; +inline ::pg_query::Alias* JoinExpr::unsafe_arena_release_join_using_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JoinExpr.join_using_alias) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Alias* temp = _impl_.join_using_alias_; + _impl_.join_using_alias_ = nullptr; return temp; } -inline ::pg_query::Node* Query::_internal_mutable_set_operations() { - - if (_impl_.set_operations_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.set_operations_ = p; +inline ::pg_query::Alias* JoinExpr::_internal_mutable_join_using_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.join_using_alias_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArena()); + _impl_.join_using_alias_ = reinterpret_cast<::pg_query::Alias*>(p); } - return _impl_.set_operations_; + return _impl_.join_using_alias_; } -inline ::pg_query::Node* Query::mutable_set_operations() { - ::pg_query::Node* _msg = _internal_mutable_set_operations(); - // @@protoc_insertion_point(field_mutable:pg_query.Query.set_operations) +inline ::pg_query::Alias* JoinExpr::mutable_join_using_alias() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Alias* _msg = _internal_mutable_join_using_alias(); + // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.join_using_alias) return _msg; } -inline void Query::set_allocated_set_operations(::pg_query::Node* set_operations) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JoinExpr::set_allocated_join_using_alias(::pg_query::Alias* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.set_operations_; + delete reinterpret_cast<::pg_query::Alias*>(_impl_.join_using_alias_); } - if (set_operations) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(set_operations); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Alias*>(value)->GetArena(); if (message_arena != submessage_arena) { - set_operations = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, set_operations, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.set_operations_ = set_operations; - // @@protoc_insertion_point(field_set_allocated:pg_query.Query.set_operations) -} -// repeated .pg_query.Node constraint_deps = 37 [json_name = "constraintDeps"]; -inline int Query::_internal_constraint_deps_size() const { - return _impl_.constraint_deps_.size(); -} -inline int Query::constraint_deps_size() const { - return _internal_constraint_deps_size(); -} -inline void Query::clear_constraint_deps() { - _impl_.constraint_deps_.Clear(); -} -inline ::pg_query::Node* Query::mutable_constraint_deps(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.constraint_deps) - return _impl_.constraint_deps_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_constraint_deps() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.constraint_deps) - return &_impl_.constraint_deps_; -} -inline const ::pg_query::Node& Query::_internal_constraint_deps(int index) const { - return _impl_.constraint_deps_.Get(index); -} -inline const ::pg_query::Node& Query::constraint_deps(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.constraint_deps) - return _internal_constraint_deps(index); -} -inline ::pg_query::Node* Query::_internal_add_constraint_deps() { - return _impl_.constraint_deps_.Add(); -} -inline ::pg_query::Node* Query::add_constraint_deps() { - ::pg_query::Node* _add = _internal_add_constraint_deps(); - // @@protoc_insertion_point(field_add:pg_query.Query.constraint_deps) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::constraint_deps() const { - // @@protoc_insertion_point(field_list:pg_query.Query.constraint_deps) - return _impl_.constraint_deps_; + _impl_.join_using_alias_ = reinterpret_cast<::pg_query::Alias*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.join_using_alias) } -// repeated .pg_query.Node with_check_options = 38 [json_name = "withCheckOptions"]; -inline int Query::_internal_with_check_options_size() const { - return _impl_.with_check_options_.size(); -} -inline int Query::with_check_options_size() const { - return _internal_with_check_options_size(); -} -inline void Query::clear_with_check_options() { - _impl_.with_check_options_.Clear(); -} -inline ::pg_query::Node* Query::mutable_with_check_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Query.with_check_options) - return _impl_.with_check_options_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Query::mutable_with_check_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Query.with_check_options) - return &_impl_.with_check_options_; -} -inline const ::pg_query::Node& Query::_internal_with_check_options(int index) const { - return _impl_.with_check_options_.Get(index); +// .pg_query.Node quals = 7 [json_name = "quals"]; +inline bool JoinExpr::has_quals() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.quals_ != nullptr); + return value; } -inline const ::pg_query::Node& Query::with_check_options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Query.with_check_options) - return _internal_with_check_options(index); +inline void JoinExpr::clear_quals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.quals_ != nullptr) _impl_.quals_->Clear(); + _impl_._has_bits_[0] &= ~0x00000008u; } -inline ::pg_query::Node* Query::_internal_add_with_check_options() { - return _impl_.with_check_options_.Add(); +inline const ::pg_query::Node& JoinExpr::_internal_quals() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.quals_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* Query::add_with_check_options() { - ::pg_query::Node* _add = _internal_add_with_check_options(); - // @@protoc_insertion_point(field_add:pg_query.Query.with_check_options) - return _add; +inline const ::pg_query::Node& JoinExpr::quals() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JoinExpr.quals) + return _internal_quals(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Query::with_check_options() const { - // @@protoc_insertion_point(field_list:pg_query.Query.with_check_options) - return _impl_.with_check_options_; +inline void JoinExpr::unsafe_arena_set_allocated_quals(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.quals_); + } + _impl_.quals_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.quals) } +inline ::pg_query::Node* JoinExpr::release_quals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// int32 stmt_location = 39 [json_name = "stmt_location"]; -inline void Query::clear_stmt_location() { - _impl_.stmt_location_ = 0; -} -inline int32_t Query::_internal_stmt_location() const { - return _impl_.stmt_location_; -} -inline int32_t Query::stmt_location() const { - // @@protoc_insertion_point(field_get:pg_query.Query.stmt_location) - return _internal_stmt_location(); -} -inline void Query::_internal_set_stmt_location(int32_t value) { - - _impl_.stmt_location_ = value; -} -inline void Query::set_stmt_location(int32_t value) { - _internal_set_stmt_location(value); - // @@protoc_insertion_point(field_set:pg_query.Query.stmt_location) + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::Node* released = _impl_.quals_; + _impl_.quals_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* JoinExpr::unsafe_arena_release_quals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JoinExpr.quals) -// int32 stmt_len = 40 [json_name = "stmt_len"]; -inline void Query::clear_stmt_len() { - _impl_.stmt_len_ = 0; -} -inline int32_t Query::_internal_stmt_len() const { - return _impl_.stmt_len_; -} -inline int32_t Query::stmt_len() const { - // @@protoc_insertion_point(field_get:pg_query.Query.stmt_len) - return _internal_stmt_len(); + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::Node* temp = _impl_.quals_; + _impl_.quals_ = nullptr; + return temp; } -inline void Query::_internal_set_stmt_len(int32_t value) { - - _impl_.stmt_len_ = value; +inline ::pg_query::Node* JoinExpr::_internal_mutable_quals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.quals_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.quals_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.quals_; } -inline void Query::set_stmt_len(int32_t value) { - _internal_set_stmt_len(value); - // @@protoc_insertion_point(field_set:pg_query.Query.stmt_len) +inline ::pg_query::Node* JoinExpr::mutable_quals() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_quals(); + // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.quals) + return _msg; } +inline void JoinExpr::set_allocated_quals(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.quals_); + } -// ------------------------------------------------------------------- - -// InsertStmt + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool InsertStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; + _impl_.quals_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.quals) } -inline bool InsertStmt::has_relation() const { - return _internal_has_relation(); + +// .pg_query.Alias alias = 8 [json_name = "alias"]; +inline bool JoinExpr::has_alias() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + PROTOBUF_ASSUME(!value || _impl_.alias_ != nullptr); + return value; } -inline void InsertStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void JoinExpr::clear_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.alias_ != nullptr) _impl_.alias_->Clear(); + _impl_._has_bits_[0] &= ~0x00000010u; } -inline const ::pg_query::RangeVar& InsertStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::Alias& JoinExpr::_internal_alias() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Alias* p = _impl_.alias_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Alias_default_instance_); } -inline const ::pg_query::RangeVar& InsertStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.InsertStmt.relation) - return _internal_relation(); +inline const ::pg_query::Alias& JoinExpr::alias() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JoinExpr.alias) + return _internal_alias(); } -inline void InsertStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void JoinExpr::unsafe_arena_set_allocated_alias(::pg_query::Alias* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.alias_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000010u; } else { - + _impl_._has_bits_[0] &= ~0x00000010u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InsertStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JoinExpr.alias) } -inline ::pg_query::RangeVar* InsertStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Alias* JoinExpr::release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::Alias* released = _impl_.alias_; + _impl_.alias_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* InsertStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.InsertStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Alias* JoinExpr::unsafe_arena_release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JoinExpr.alias) + + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::Alias* temp = _impl_.alias_; + _impl_.alias_ = nullptr; return temp; } -inline ::pg_query::RangeVar* InsertStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::Alias* JoinExpr::_internal_mutable_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000010u; + if (_impl_.alias_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArena()); + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(p); } - return _impl_.relation_; + return _impl_.alias_; } -inline ::pg_query::RangeVar* InsertStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.relation) +inline ::pg_query::Alias* JoinExpr::mutable_alias() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Alias* _msg = _internal_mutable_alias(); + // @@protoc_insertion_point(field_mutable:pg_query.JoinExpr.alias) return _msg; } -inline void InsertStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JoinExpr::set_allocated_alias(::pg_query::Alias* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::Alias*>(_impl_.alias_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Alias*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000010u; } else { - + _impl_._has_bits_[0] &= ~0x00000010u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.InsertStmt.relation) + + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JoinExpr.alias) } -// repeated .pg_query.Node cols = 2 [json_name = "cols"]; -inline int InsertStmt::_internal_cols_size() const { - return _impl_.cols_.size(); +// int32 rtindex = 9 [json_name = "rtindex"]; +inline void JoinExpr::clear_rtindex() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rtindex_ = 0; } -inline int InsertStmt::cols_size() const { - return _internal_cols_size(); +inline ::int32_t JoinExpr::rtindex() const { + // @@protoc_insertion_point(field_get:pg_query.JoinExpr.rtindex) + return _internal_rtindex(); } -inline void InsertStmt::clear_cols() { - _impl_.cols_.Clear(); +inline void JoinExpr::set_rtindex(::int32_t value) { + _internal_set_rtindex(value); + // @@protoc_insertion_point(field_set:pg_query.JoinExpr.rtindex) } -inline ::pg_query::Node* InsertStmt::mutable_cols(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.cols) - return _impl_.cols_.Mutable(index); +inline ::int32_t JoinExpr::_internal_rtindex() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rtindex_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -InsertStmt::mutable_cols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.InsertStmt.cols) - return &_impl_.cols_; +inline void JoinExpr::_internal_set_rtindex(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rtindex_ = value; +} + +// ------------------------------------------------------------------- + +// FromExpr + +// repeated .pg_query.Node fromlist = 1 [json_name = "fromlist"]; +inline int FromExpr::_internal_fromlist_size() const { + return _internal_fromlist().size(); +} +inline int FromExpr::fromlist_size() const { + return _internal_fromlist_size(); } -inline const ::pg_query::Node& InsertStmt::_internal_cols(int index) const { - return _impl_.cols_.Get(index); +inline void FromExpr::clear_fromlist() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fromlist_.Clear(); } -inline const ::pg_query::Node& InsertStmt::cols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.InsertStmt.cols) - return _internal_cols(index); +inline ::pg_query::Node* FromExpr::mutable_fromlist(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.FromExpr.fromlist) + return _internal_mutable_fromlist()->Mutable(index); } -inline ::pg_query::Node* InsertStmt::_internal_add_cols() { - return _impl_.cols_.Add(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* FromExpr::mutable_fromlist() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.FromExpr.fromlist) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_fromlist(); } -inline ::pg_query::Node* InsertStmt::add_cols() { - ::pg_query::Node* _add = _internal_add_cols(); - // @@protoc_insertion_point(field_add:pg_query.InsertStmt.cols) +inline const ::pg_query::Node& FromExpr::fromlist(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FromExpr.fromlist) + return _internal_fromlist().Get(index); +} +inline ::pg_query::Node* FromExpr::add_fromlist() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_fromlist()->Add(); + // @@protoc_insertion_point(field_add:pg_query.FromExpr.fromlist) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -InsertStmt::cols() const { - // @@protoc_insertion_point(field_list:pg_query.InsertStmt.cols) - return _impl_.cols_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& FromExpr::fromlist() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.FromExpr.fromlist) + return _internal_fromlist(); } - -// .pg_query.Node select_stmt = 3 [json_name = "selectStmt"]; -inline bool InsertStmt::_internal_has_select_stmt() const { - return this != internal_default_instance() && _impl_.select_stmt_ != nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +FromExpr::_internal_fromlist() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fromlist_; } -inline bool InsertStmt::has_select_stmt() const { - return _internal_has_select_stmt(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +FromExpr::_internal_mutable_fromlist() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.fromlist_; } -inline void InsertStmt::clear_select_stmt() { - if (GetArenaForAllocation() == nullptr && _impl_.select_stmt_ != nullptr) { - delete _impl_.select_stmt_; - } - _impl_.select_stmt_ = nullptr; + +// .pg_query.Node quals = 2 [json_name = "quals"]; +inline bool FromExpr::has_quals() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.quals_ != nullptr); + return value; } -inline const ::pg_query::Node& InsertStmt::_internal_select_stmt() const { - const ::pg_query::Node* p = _impl_.select_stmt_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void FromExpr::clear_quals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.quals_ != nullptr) _impl_.quals_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& InsertStmt::select_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.InsertStmt.select_stmt) - return _internal_select_stmt(); +inline const ::pg_query::Node& FromExpr::_internal_quals() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.quals_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void InsertStmt::unsafe_arena_set_allocated_select_stmt( - ::pg_query::Node* select_stmt) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.select_stmt_); +inline const ::pg_query::Node& FromExpr::quals() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FromExpr.quals) + return _internal_quals(); +} +inline void FromExpr::unsafe_arena_set_allocated_quals(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.quals_); } - _impl_.select_stmt_ = select_stmt; - if (select_stmt) { - + _impl_.quals_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InsertStmt.select_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FromExpr.quals) } -inline ::pg_query::Node* InsertStmt::release_select_stmt() { - - ::pg_query::Node* temp = _impl_.select_stmt_; - _impl_.select_stmt_ = nullptr; +inline ::pg_query::Node* FromExpr::release_quals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.quals_; + _impl_.quals_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* InsertStmt::unsafe_arena_release_select_stmt() { - // @@protoc_insertion_point(field_release:pg_query.InsertStmt.select_stmt) - - ::pg_query::Node* temp = _impl_.select_stmt_; - _impl_.select_stmt_ = nullptr; +inline ::pg_query::Node* FromExpr::unsafe_arena_release_quals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FromExpr.quals) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.quals_; + _impl_.quals_ = nullptr; return temp; } -inline ::pg_query::Node* InsertStmt::_internal_mutable_select_stmt() { - - if (_impl_.select_stmt_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.select_stmt_ = p; +inline ::pg_query::Node* FromExpr::_internal_mutable_quals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.quals_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.quals_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.select_stmt_; + return _impl_.quals_; } -inline ::pg_query::Node* InsertStmt::mutable_select_stmt() { - ::pg_query::Node* _msg = _internal_mutable_select_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.select_stmt) +inline ::pg_query::Node* FromExpr::mutable_quals() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_quals(); + // @@protoc_insertion_point(field_mutable:pg_query.FromExpr.quals) return _msg; } -inline void InsertStmt::set_allocated_select_stmt(::pg_query::Node* select_stmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void FromExpr::set_allocated_quals(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.select_stmt_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.quals_); } - if (select_stmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(select_stmt); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - select_stmt = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, select_stmt, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.select_stmt_ = select_stmt; - // @@protoc_insertion_point(field_set_allocated:pg_query.InsertStmt.select_stmt) + + _impl_.quals_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FromExpr.quals) } -// .pg_query.OnConflictClause on_conflict_clause = 4 [json_name = "onConflictClause"]; -inline bool InsertStmt::_internal_has_on_conflict_clause() const { - return this != internal_default_instance() && _impl_.on_conflict_clause_ != nullptr; +// ------------------------------------------------------------------- + +// OnConflictExpr + +// .pg_query.OnConflictAction action = 1 [json_name = "action"]; +inline void OnConflictExpr::clear_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.action_ = 0; } -inline bool InsertStmt::has_on_conflict_clause() const { - return _internal_has_on_conflict_clause(); +inline ::pg_query::OnConflictAction OnConflictExpr::action() const { + // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.action) + return _internal_action(); } -inline void InsertStmt::clear_on_conflict_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.on_conflict_clause_ != nullptr) { - delete _impl_.on_conflict_clause_; - } - _impl_.on_conflict_clause_ = nullptr; +inline void OnConflictExpr::set_action(::pg_query::OnConflictAction value) { + _internal_set_action(value); + // @@protoc_insertion_point(field_set:pg_query.OnConflictExpr.action) } -inline const ::pg_query::OnConflictClause& InsertStmt::_internal_on_conflict_clause() const { - const ::pg_query::OnConflictClause* p = _impl_.on_conflict_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_OnConflictClause_default_instance_); +inline ::pg_query::OnConflictAction OnConflictExpr::_internal_action() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::OnConflictAction>(_impl_.action_); } -inline const ::pg_query::OnConflictClause& InsertStmt::on_conflict_clause() const { - // @@protoc_insertion_point(field_get:pg_query.InsertStmt.on_conflict_clause) - return _internal_on_conflict_clause(); +inline void OnConflictExpr::_internal_set_action(::pg_query::OnConflictAction value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.action_ = value; +} + +// repeated .pg_query.Node arbiter_elems = 2 [json_name = "arbiterElems"]; +inline int OnConflictExpr::_internal_arbiter_elems_size() const { + return _internal_arbiter_elems().size(); +} +inline int OnConflictExpr::arbiter_elems_size() const { + return _internal_arbiter_elems_size(); +} +inline void OnConflictExpr::clear_arbiter_elems() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.arbiter_elems_.Clear(); +} +inline ::pg_query::Node* OnConflictExpr::mutable_arbiter_elems(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.arbiter_elems) + return _internal_mutable_arbiter_elems()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* OnConflictExpr::mutable_arbiter_elems() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.OnConflictExpr.arbiter_elems) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_arbiter_elems(); +} +inline const ::pg_query::Node& OnConflictExpr::arbiter_elems(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.arbiter_elems) + return _internal_arbiter_elems().Get(index); +} +inline ::pg_query::Node* OnConflictExpr::add_arbiter_elems() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_arbiter_elems()->Add(); + // @@protoc_insertion_point(field_add:pg_query.OnConflictExpr.arbiter_elems) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& OnConflictExpr::arbiter_elems() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.OnConflictExpr.arbiter_elems) + return _internal_arbiter_elems(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +OnConflictExpr::_internal_arbiter_elems() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.arbiter_elems_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +OnConflictExpr::_internal_mutable_arbiter_elems() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.arbiter_elems_; +} + +// .pg_query.Node arbiter_where = 3 [json_name = "arbiterWhere"]; +inline bool OnConflictExpr::has_arbiter_where() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arbiter_where_ != nullptr); + return value; +} +inline void OnConflictExpr::clear_arbiter_where() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arbiter_where_ != nullptr) _impl_.arbiter_where_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& OnConflictExpr::_internal_arbiter_where() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arbiter_where_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& OnConflictExpr::arbiter_where() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.arbiter_where) + return _internal_arbiter_where(); } -inline void InsertStmt::unsafe_arena_set_allocated_on_conflict_clause( - ::pg_query::OnConflictClause* on_conflict_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.on_conflict_clause_); +inline void OnConflictExpr::unsafe_arena_set_allocated_arbiter_where(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arbiter_where_); } - _impl_.on_conflict_clause_ = on_conflict_clause; - if (on_conflict_clause) { - + _impl_.arbiter_where_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InsertStmt.on_conflict_clause) -} -inline ::pg_query::OnConflictClause* InsertStmt::release_on_conflict_clause() { - - ::pg_query::OnConflictClause* temp = _impl_.on_conflict_clause_; - _impl_.on_conflict_clause_ = nullptr; + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OnConflictExpr.arbiter_where) +} +inline ::pg_query::Node* OnConflictExpr::release_arbiter_where() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.arbiter_where_; + _impl_.arbiter_where_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::OnConflictClause* InsertStmt::unsafe_arena_release_on_conflict_clause() { - // @@protoc_insertion_point(field_release:pg_query.InsertStmt.on_conflict_clause) - - ::pg_query::OnConflictClause* temp = _impl_.on_conflict_clause_; - _impl_.on_conflict_clause_ = nullptr; +inline ::pg_query::Node* OnConflictExpr::unsafe_arena_release_arbiter_where() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.OnConflictExpr.arbiter_where) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.arbiter_where_; + _impl_.arbiter_where_ = nullptr; return temp; } -inline ::pg_query::OnConflictClause* InsertStmt::_internal_mutable_on_conflict_clause() { - - if (_impl_.on_conflict_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::OnConflictClause>(GetArenaForAllocation()); - _impl_.on_conflict_clause_ = p; +inline ::pg_query::Node* OnConflictExpr::_internal_mutable_arbiter_where() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.arbiter_where_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arbiter_where_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.on_conflict_clause_; + return _impl_.arbiter_where_; } -inline ::pg_query::OnConflictClause* InsertStmt::mutable_on_conflict_clause() { - ::pg_query::OnConflictClause* _msg = _internal_mutable_on_conflict_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.on_conflict_clause) +inline ::pg_query::Node* OnConflictExpr::mutable_arbiter_where() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arbiter_where(); + // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.arbiter_where) return _msg; } -inline void InsertStmt::set_allocated_on_conflict_clause(::pg_query::OnConflictClause* on_conflict_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void OnConflictExpr::set_allocated_arbiter_where(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.on_conflict_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.arbiter_where_); } - if (on_conflict_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(on_conflict_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - on_conflict_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, on_conflict_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.on_conflict_clause_ = on_conflict_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.InsertStmt.on_conflict_clause) + + _impl_.arbiter_where_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.OnConflictExpr.arbiter_where) } -// repeated .pg_query.Node returning_list = 5 [json_name = "returningList"]; -inline int InsertStmt::_internal_returning_list_size() const { - return _impl_.returning_list_.size(); +// uint32 constraint = 4 [json_name = "constraint"]; +inline void OnConflictExpr::clear_constraint() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.constraint_ = 0u; } -inline int InsertStmt::returning_list_size() const { - return _internal_returning_list_size(); +inline ::uint32_t OnConflictExpr::constraint() const { + // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.constraint) + return _internal_constraint(); } -inline void InsertStmt::clear_returning_list() { - _impl_.returning_list_.Clear(); +inline void OnConflictExpr::set_constraint(::uint32_t value) { + _internal_set_constraint(value); + // @@protoc_insertion_point(field_set:pg_query.OnConflictExpr.constraint) } -inline ::pg_query::Node* InsertStmt::mutable_returning_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.returning_list) - return _impl_.returning_list_.Mutable(index); +inline ::uint32_t OnConflictExpr::_internal_constraint() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.constraint_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -InsertStmt::mutable_returning_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.InsertStmt.returning_list) - return &_impl_.returning_list_; +inline void OnConflictExpr::_internal_set_constraint(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.constraint_ = value; +} + +// repeated .pg_query.Node on_conflict_set = 5 [json_name = "onConflictSet"]; +inline int OnConflictExpr::_internal_on_conflict_set_size() const { + return _internal_on_conflict_set().size(); } -inline const ::pg_query::Node& InsertStmt::_internal_returning_list(int index) const { - return _impl_.returning_list_.Get(index); +inline int OnConflictExpr::on_conflict_set_size() const { + return _internal_on_conflict_set_size(); } -inline const ::pg_query::Node& InsertStmt::returning_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.InsertStmt.returning_list) - return _internal_returning_list(index); +inline void OnConflictExpr::clear_on_conflict_set() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.on_conflict_set_.Clear(); } -inline ::pg_query::Node* InsertStmt::_internal_add_returning_list() { - return _impl_.returning_list_.Add(); +inline ::pg_query::Node* OnConflictExpr::mutable_on_conflict_set(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.on_conflict_set) + return _internal_mutable_on_conflict_set()->Mutable(index); } -inline ::pg_query::Node* InsertStmt::add_returning_list() { - ::pg_query::Node* _add = _internal_add_returning_list(); - // @@protoc_insertion_point(field_add:pg_query.InsertStmt.returning_list) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* OnConflictExpr::mutable_on_conflict_set() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.OnConflictExpr.on_conflict_set) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_on_conflict_set(); +} +inline const ::pg_query::Node& OnConflictExpr::on_conflict_set(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.on_conflict_set) + return _internal_on_conflict_set().Get(index); +} +inline ::pg_query::Node* OnConflictExpr::add_on_conflict_set() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_on_conflict_set()->Add(); + // @@protoc_insertion_point(field_add:pg_query.OnConflictExpr.on_conflict_set) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -InsertStmt::returning_list() const { - // @@protoc_insertion_point(field_list:pg_query.InsertStmt.returning_list) - return _impl_.returning_list_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& OnConflictExpr::on_conflict_set() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.OnConflictExpr.on_conflict_set) + return _internal_on_conflict_set(); } - -// .pg_query.WithClause with_clause = 6 [json_name = "withClause"]; -inline bool InsertStmt::_internal_has_with_clause() const { - return this != internal_default_instance() && _impl_.with_clause_ != nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +OnConflictExpr::_internal_on_conflict_set() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.on_conflict_set_; } -inline bool InsertStmt::has_with_clause() const { - return _internal_has_with_clause(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +OnConflictExpr::_internal_mutable_on_conflict_set() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.on_conflict_set_; } -inline void InsertStmt::clear_with_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.with_clause_ != nullptr) { - delete _impl_.with_clause_; - } - _impl_.with_clause_ = nullptr; + +// .pg_query.Node on_conflict_where = 6 [json_name = "onConflictWhere"]; +inline bool OnConflictExpr::has_on_conflict_where() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.on_conflict_where_ != nullptr); + return value; } -inline const ::pg_query::WithClause& InsertStmt::_internal_with_clause() const { - const ::pg_query::WithClause* p = _impl_.with_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_WithClause_default_instance_); +inline void OnConflictExpr::clear_on_conflict_where() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.on_conflict_where_ != nullptr) _impl_.on_conflict_where_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::WithClause& InsertStmt::with_clause() const { - // @@protoc_insertion_point(field_get:pg_query.InsertStmt.with_clause) - return _internal_with_clause(); +inline const ::pg_query::Node& OnConflictExpr::_internal_on_conflict_where() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.on_conflict_where_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void InsertStmt::unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.with_clause_); +inline const ::pg_query::Node& OnConflictExpr::on_conflict_where() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.on_conflict_where) + return _internal_on_conflict_where(); +} +inline void OnConflictExpr::unsafe_arena_set_allocated_on_conflict_where(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.on_conflict_where_); } - _impl_.with_clause_ = with_clause; - if (with_clause) { - + _impl_.on_conflict_where_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InsertStmt.with_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OnConflictExpr.on_conflict_where) } -inline ::pg_query::WithClause* InsertStmt::release_with_clause() { - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; +inline ::pg_query::Node* OnConflictExpr::release_on_conflict_where() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.on_conflict_where_; + _impl_.on_conflict_where_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::WithClause* InsertStmt::unsafe_arena_release_with_clause() { - // @@protoc_insertion_point(field_release:pg_query.InsertStmt.with_clause) - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; +inline ::pg_query::Node* OnConflictExpr::unsafe_arena_release_on_conflict_where() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.OnConflictExpr.on_conflict_where) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.on_conflict_where_; + _impl_.on_conflict_where_ = nullptr; return temp; } -inline ::pg_query::WithClause* InsertStmt::_internal_mutable_with_clause() { - - if (_impl_.with_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArenaForAllocation()); - _impl_.with_clause_ = p; +inline ::pg_query::Node* OnConflictExpr::_internal_mutable_on_conflict_where() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.on_conflict_where_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.on_conflict_where_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.with_clause_; + return _impl_.on_conflict_where_; } -inline ::pg_query::WithClause* InsertStmt::mutable_with_clause() { - ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.with_clause) +inline ::pg_query::Node* OnConflictExpr::mutable_on_conflict_where() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_on_conflict_where(); + // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.on_conflict_where) return _msg; } -inline void InsertStmt::set_allocated_with_clause(::pg_query::WithClause* with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void OnConflictExpr::set_allocated_on_conflict_where(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.with_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.on_conflict_where_); } - if (with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(with_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - with_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, with_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.with_clause_ = with_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.InsertStmt.with_clause) + + _impl_.on_conflict_where_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.OnConflictExpr.on_conflict_where) } -// .pg_query.OverridingKind override = 7 [json_name = "override"]; -inline void InsertStmt::clear_override() { - _impl_.override_ = 0; +// int32 excl_rel_index = 7 [json_name = "exclRelIndex"]; +inline void OnConflictExpr::clear_excl_rel_index() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.excl_rel_index_ = 0; } -inline ::pg_query::OverridingKind InsertStmt::_internal_override() const { - return static_cast< ::pg_query::OverridingKind >(_impl_.override_); +inline ::int32_t OnConflictExpr::excl_rel_index() const { + // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.excl_rel_index) + return _internal_excl_rel_index(); } -inline ::pg_query::OverridingKind InsertStmt::override() const { - // @@protoc_insertion_point(field_get:pg_query.InsertStmt.override) - return _internal_override(); +inline void OnConflictExpr::set_excl_rel_index(::int32_t value) { + _internal_set_excl_rel_index(value); + // @@protoc_insertion_point(field_set:pg_query.OnConflictExpr.excl_rel_index) } -inline void InsertStmt::_internal_set_override(::pg_query::OverridingKind value) { - - _impl_.override_ = value; +inline ::int32_t OnConflictExpr::_internal_excl_rel_index() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.excl_rel_index_; } -inline void InsertStmt::set_override(::pg_query::OverridingKind value) { - _internal_set_override(value); - // @@protoc_insertion_point(field_set:pg_query.InsertStmt.override) +inline void OnConflictExpr::_internal_set_excl_rel_index(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.excl_rel_index_ = value; } -// ------------------------------------------------------------------- - -// DeleteStmt - -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool DeleteStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; -} -inline bool DeleteStmt::has_relation() const { - return _internal_has_relation(); +// repeated .pg_query.Node excl_rel_tlist = 8 [json_name = "exclRelTlist"]; +inline int OnConflictExpr::_internal_excl_rel_tlist_size() const { + return _internal_excl_rel_tlist().size(); } -inline void DeleteStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline int OnConflictExpr::excl_rel_tlist_size() const { + return _internal_excl_rel_tlist_size(); } -inline const ::pg_query::RangeVar& DeleteStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline void OnConflictExpr::clear_excl_rel_tlist() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.excl_rel_tlist_.Clear(); } -inline const ::pg_query::RangeVar& DeleteStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.relation) - return _internal_relation(); +inline ::pg_query::Node* OnConflictExpr::mutable_excl_rel_tlist(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.OnConflictExpr.excl_rel_tlist) + return _internal_mutable_excl_rel_tlist()->Mutable(index); } -inline void DeleteStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); - } - _impl_.relation_ = relation; - if (relation) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DeleteStmt.relation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* OnConflictExpr::mutable_excl_rel_tlist() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.OnConflictExpr.excl_rel_tlist) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_excl_rel_tlist(); } -inline ::pg_query::RangeVar* DeleteStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& OnConflictExpr::excl_rel_tlist(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OnConflictExpr.excl_rel_tlist) + return _internal_excl_rel_tlist().Get(index); } -inline ::pg_query::RangeVar* DeleteStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.DeleteStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; - return temp; +inline ::pg_query::Node* OnConflictExpr::add_excl_rel_tlist() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_excl_rel_tlist()->Add(); + // @@protoc_insertion_point(field_add:pg_query.OnConflictExpr.excl_rel_tlist) + return _add; } -inline ::pg_query::RangeVar* DeleteStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; - } - return _impl_.relation_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& OnConflictExpr::excl_rel_tlist() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.OnConflictExpr.excl_rel_tlist) + return _internal_excl_rel_tlist(); } -inline ::pg_query::RangeVar* DeleteStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.relation) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +OnConflictExpr::_internal_excl_rel_tlist() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.excl_rel_tlist_; } -inline void DeleteStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.relation_; - } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); - if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); - } - - } else { - - } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.DeleteStmt.relation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +OnConflictExpr::_internal_mutable_excl_rel_tlist() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.excl_rel_tlist_; } -// repeated .pg_query.Node using_clause = 2 [json_name = "usingClause"]; -inline int DeleteStmt::_internal_using_clause_size() const { - return _impl_.using_clause_.size(); +// ------------------------------------------------------------------- + +// Query + +// .pg_query.CmdType command_type = 1 [json_name = "commandType"]; +inline void Query::clear_command_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.command_type_ = 0; } -inline int DeleteStmt::using_clause_size() const { - return _internal_using_clause_size(); +inline ::pg_query::CmdType Query::command_type() const { + // @@protoc_insertion_point(field_get:pg_query.Query.command_type) + return _internal_command_type(); } -inline void DeleteStmt::clear_using_clause() { - _impl_.using_clause_.Clear(); +inline void Query::set_command_type(::pg_query::CmdType value) { + _internal_set_command_type(value); + // @@protoc_insertion_point(field_set:pg_query.Query.command_type) } -inline ::pg_query::Node* DeleteStmt::mutable_using_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.using_clause) - return _impl_.using_clause_.Mutable(index); +inline ::pg_query::CmdType Query::_internal_command_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CmdType>(_impl_.command_type_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DeleteStmt::mutable_using_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DeleteStmt.using_clause) - return &_impl_.using_clause_; +inline void Query::_internal_set_command_type(::pg_query::CmdType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.command_type_ = value; } -inline const ::pg_query::Node& DeleteStmt::_internal_using_clause(int index) const { - return _impl_.using_clause_.Get(index); + +// .pg_query.QuerySource query_source = 2 [json_name = "querySource"]; +inline void Query::clear_query_source() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.query_source_ = 0; } -inline const ::pg_query::Node& DeleteStmt::using_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.using_clause) - return _internal_using_clause(index); +inline ::pg_query::QuerySource Query::query_source() const { + // @@protoc_insertion_point(field_get:pg_query.Query.query_source) + return _internal_query_source(); } -inline ::pg_query::Node* DeleteStmt::_internal_add_using_clause() { - return _impl_.using_clause_.Add(); +inline void Query::set_query_source(::pg_query::QuerySource value) { + _internal_set_query_source(value); + // @@protoc_insertion_point(field_set:pg_query.Query.query_source) } -inline ::pg_query::Node* DeleteStmt::add_using_clause() { - ::pg_query::Node* _add = _internal_add_using_clause(); - // @@protoc_insertion_point(field_add:pg_query.DeleteStmt.using_clause) - return _add; +inline ::pg_query::QuerySource Query::_internal_query_source() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::QuerySource>(_impl_.query_source_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DeleteStmt::using_clause() const { - // @@protoc_insertion_point(field_list:pg_query.DeleteStmt.using_clause) - return _impl_.using_clause_; +inline void Query::_internal_set_query_source(::pg_query::QuerySource value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.query_source_ = value; } -// .pg_query.Node where_clause = 3 [json_name = "whereClause"]; -inline bool DeleteStmt::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; +// bool can_set_tag = 3 [json_name = "canSetTag"]; +inline void Query::clear_can_set_tag() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.can_set_tag_ = false; } -inline bool DeleteStmt::has_where_clause() const { - return _internal_has_where_clause(); +inline bool Query::can_set_tag() const { + // @@protoc_insertion_point(field_get:pg_query.Query.can_set_tag) + return _internal_can_set_tag(); } -inline void DeleteStmt::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline void Query::set_can_set_tag(bool value) { + _internal_set_can_set_tag(value); + // @@protoc_insertion_point(field_set:pg_query.Query.can_set_tag) } -inline const ::pg_query::Node& DeleteStmt::_internal_where_clause() const { - const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline bool Query::_internal_can_set_tag() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.can_set_tag_; } -inline const ::pg_query::Node& DeleteStmt::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.where_clause) - return _internal_where_clause(); +inline void Query::_internal_set_can_set_tag(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.can_set_tag_ = value; +} + +// .pg_query.Node utility_stmt = 4 [json_name = "utilityStmt"]; +inline bool Query::has_utility_stmt() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.utility_stmt_ != nullptr); + return value; +} +inline void Query::clear_utility_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.utility_stmt_ != nullptr) _impl_.utility_stmt_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& Query::_internal_utility_stmt() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.utility_stmt_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& Query::utility_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.utility_stmt) + return _internal_utility_stmt(); } -inline void DeleteStmt::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); +inline void Query::unsafe_arena_set_allocated_utility_stmt(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.utility_stmt_); } - _impl_.where_clause_ = where_clause; - if (where_clause) { - + _impl_.utility_stmt_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DeleteStmt.where_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.utility_stmt) } -inline ::pg_query::Node* DeleteStmt::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::Node* Query::release_utility_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.utility_stmt_; + _impl_.utility_stmt_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* DeleteStmt::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.DeleteStmt.where_clause) - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::Node* Query::unsafe_arena_release_utility_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Query.utility_stmt) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.utility_stmt_; + _impl_.utility_stmt_ = nullptr; return temp; } -inline ::pg_query::Node* DeleteStmt::_internal_mutable_where_clause() { - - if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; +inline ::pg_query::Node* Query::_internal_mutable_utility_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.utility_stmt_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.utility_stmt_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.where_clause_; + return _impl_.utility_stmt_; } -inline ::pg_query::Node* DeleteStmt::mutable_where_clause() { - ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.where_clause) +inline ::pg_query::Node* Query::mutable_utility_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_utility_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.Query.utility_stmt) return _msg; } -inline void DeleteStmt::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Query::set_allocated_utility_stmt(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.where_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.utility_stmt_); } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.DeleteStmt.where_clause) + + _impl_.utility_stmt_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Query.utility_stmt) } -// repeated .pg_query.Node returning_list = 4 [json_name = "returningList"]; -inline int DeleteStmt::_internal_returning_list_size() const { - return _impl_.returning_list_.size(); +// int32 result_relation = 5 [json_name = "resultRelation"]; +inline void Query::clear_result_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.result_relation_ = 0; } -inline int DeleteStmt::returning_list_size() const { - return _internal_returning_list_size(); +inline ::int32_t Query::result_relation() const { + // @@protoc_insertion_point(field_get:pg_query.Query.result_relation) + return _internal_result_relation(); } -inline void DeleteStmt::clear_returning_list() { - _impl_.returning_list_.Clear(); +inline void Query::set_result_relation(::int32_t value) { + _internal_set_result_relation(value); + // @@protoc_insertion_point(field_set:pg_query.Query.result_relation) } -inline ::pg_query::Node* DeleteStmt::mutable_returning_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.returning_list) - return _impl_.returning_list_.Mutable(index); +inline ::int32_t Query::_internal_result_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.result_relation_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DeleteStmt::mutable_returning_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DeleteStmt.returning_list) - return &_impl_.returning_list_; +inline void Query::_internal_set_result_relation(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.result_relation_ = value; } -inline const ::pg_query::Node& DeleteStmt::_internal_returning_list(int index) const { - return _impl_.returning_list_.Get(index); + +// bool has_aggs = 6 [json_name = "hasAggs"]; +inline void Query::clear_has_aggs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_aggs_ = false; } -inline const ::pg_query::Node& DeleteStmt::returning_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.returning_list) - return _internal_returning_list(index); +inline bool Query::has_aggs() const { + // @@protoc_insertion_point(field_get:pg_query.Query.has_aggs) + return _internal_has_aggs(); } -inline ::pg_query::Node* DeleteStmt::_internal_add_returning_list() { - return _impl_.returning_list_.Add(); +inline void Query::set_has_aggs(bool value) { + _internal_set_has_aggs(value); + // @@protoc_insertion_point(field_set:pg_query.Query.has_aggs) } -inline ::pg_query::Node* DeleteStmt::add_returning_list() { - ::pg_query::Node* _add = _internal_add_returning_list(); - // @@protoc_insertion_point(field_add:pg_query.DeleteStmt.returning_list) - return _add; +inline bool Query::_internal_has_aggs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_aggs_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DeleteStmt::returning_list() const { - // @@protoc_insertion_point(field_list:pg_query.DeleteStmt.returning_list) - return _impl_.returning_list_; +inline void Query::_internal_set_has_aggs(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_aggs_ = value; } -// .pg_query.WithClause with_clause = 5 [json_name = "withClause"]; -inline bool DeleteStmt::_internal_has_with_clause() const { - return this != internal_default_instance() && _impl_.with_clause_ != nullptr; -} -inline bool DeleteStmt::has_with_clause() const { - return _internal_has_with_clause(); +// bool has_window_funcs = 7 [json_name = "hasWindowFuncs"]; +inline void Query::clear_has_window_funcs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_window_funcs_ = false; } -inline void DeleteStmt::clear_with_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.with_clause_ != nullptr) { - delete _impl_.with_clause_; - } - _impl_.with_clause_ = nullptr; +inline bool Query::has_window_funcs() const { + // @@protoc_insertion_point(field_get:pg_query.Query.has_window_funcs) + return _internal_has_window_funcs(); } -inline const ::pg_query::WithClause& DeleteStmt::_internal_with_clause() const { - const ::pg_query::WithClause* p = _impl_.with_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_WithClause_default_instance_); +inline void Query::set_has_window_funcs(bool value) { + _internal_set_has_window_funcs(value); + // @@protoc_insertion_point(field_set:pg_query.Query.has_window_funcs) } -inline const ::pg_query::WithClause& DeleteStmt::with_clause() const { - // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.with_clause) - return _internal_with_clause(); +inline bool Query::_internal_has_window_funcs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_window_funcs_; } -inline void DeleteStmt::unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.with_clause_); - } - _impl_.with_clause_ = with_clause; - if (with_clause) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DeleteStmt.with_clause) +inline void Query::_internal_set_has_window_funcs(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_window_funcs_ = value; } -inline ::pg_query::WithClause* DeleteStmt::release_with_clause() { - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// bool has_target_srfs = 8 [json_name = "hasTargetSRFs"]; +inline void Query::clear_has_target_srfs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_target_srfs_ = false; } -inline ::pg_query::WithClause* DeleteStmt::unsafe_arena_release_with_clause() { - // @@protoc_insertion_point(field_release:pg_query.DeleteStmt.with_clause) - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; - return temp; +inline bool Query::has_target_srfs() const { + // @@protoc_insertion_point(field_get:pg_query.Query.has_target_srfs) + return _internal_has_target_srfs(); } -inline ::pg_query::WithClause* DeleteStmt::_internal_mutable_with_clause() { - - if (_impl_.with_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArenaForAllocation()); - _impl_.with_clause_ = p; - } - return _impl_.with_clause_; +inline void Query::set_has_target_srfs(bool value) { + _internal_set_has_target_srfs(value); + // @@protoc_insertion_point(field_set:pg_query.Query.has_target_srfs) } -inline ::pg_query::WithClause* DeleteStmt::mutable_with_clause() { - ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.with_clause) - return _msg; +inline bool Query::_internal_has_target_srfs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_target_srfs_; } -inline void DeleteStmt::set_allocated_with_clause(::pg_query::WithClause* with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.with_clause_; - } - if (with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(with_clause); - if (message_arena != submessage_arena) { - with_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, with_clause, submessage_arena); - } - - } else { - - } - _impl_.with_clause_ = with_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.DeleteStmt.with_clause) +inline void Query::_internal_set_has_target_srfs(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_target_srfs_ = value; } -// ------------------------------------------------------------------- +// bool has_sub_links = 9 [json_name = "hasSubLinks"]; +inline void Query::clear_has_sub_links() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_sub_links_ = false; +} +inline bool Query::has_sub_links() const { + // @@protoc_insertion_point(field_get:pg_query.Query.has_sub_links) + return _internal_has_sub_links(); +} +inline void Query::set_has_sub_links(bool value) { + _internal_set_has_sub_links(value); + // @@protoc_insertion_point(field_set:pg_query.Query.has_sub_links) +} +inline bool Query::_internal_has_sub_links() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_sub_links_; +} +inline void Query::_internal_set_has_sub_links(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_sub_links_ = value; +} -// UpdateStmt +// bool has_distinct_on = 10 [json_name = "hasDistinctOn"]; +inline void Query::clear_has_distinct_on() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_distinct_on_ = false; +} +inline bool Query::has_distinct_on() const { + // @@protoc_insertion_point(field_get:pg_query.Query.has_distinct_on) + return _internal_has_distinct_on(); +} +inline void Query::set_has_distinct_on(bool value) { + _internal_set_has_distinct_on(value); + // @@protoc_insertion_point(field_set:pg_query.Query.has_distinct_on) +} +inline bool Query::_internal_has_distinct_on() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_distinct_on_; +} +inline void Query::_internal_set_has_distinct_on(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_distinct_on_ = value; +} -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool UpdateStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; +// bool has_recursive = 11 [json_name = "hasRecursive"]; +inline void Query::clear_has_recursive() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_recursive_ = false; } -inline bool UpdateStmt::has_relation() const { - return _internal_has_relation(); +inline bool Query::has_recursive() const { + // @@protoc_insertion_point(field_get:pg_query.Query.has_recursive) + return _internal_has_recursive(); } -inline void UpdateStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void Query::set_has_recursive(bool value) { + _internal_set_has_recursive(value); + // @@protoc_insertion_point(field_set:pg_query.Query.has_recursive) } -inline const ::pg_query::RangeVar& UpdateStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline bool Query::_internal_has_recursive() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_recursive_; } -inline const ::pg_query::RangeVar& UpdateStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.relation) - return _internal_relation(); +inline void Query::_internal_set_has_recursive(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_recursive_ = value; } -inline void UpdateStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); - } - _impl_.relation_ = relation; - if (relation) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.UpdateStmt.relation) + +// bool has_modifying_cte = 12 [json_name = "hasModifyingCTE"]; +inline void Query::clear_has_modifying_cte() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_modifying_cte_ = false; } -inline ::pg_query::RangeVar* UpdateStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline bool Query::has_modifying_cte() const { + // @@protoc_insertion_point(field_get:pg_query.Query.has_modifying_cte) + return _internal_has_modifying_cte(); } -inline ::pg_query::RangeVar* UpdateStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.UpdateStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; - return temp; +inline void Query::set_has_modifying_cte(bool value) { + _internal_set_has_modifying_cte(value); + // @@protoc_insertion_point(field_set:pg_query.Query.has_modifying_cte) +} +inline bool Query::_internal_has_modifying_cte() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_modifying_cte_; +} +inline void Query::_internal_set_has_modifying_cte(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_modifying_cte_ = value; +} + +// bool has_for_update = 13 [json_name = "hasForUpdate"]; +inline void Query::clear_has_for_update() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_for_update_ = false; +} +inline bool Query::has_for_update() const { + // @@protoc_insertion_point(field_get:pg_query.Query.has_for_update) + return _internal_has_for_update(); } -inline ::pg_query::RangeVar* UpdateStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; - } - return _impl_.relation_; +inline void Query::set_has_for_update(bool value) { + _internal_set_has_for_update(value); + // @@protoc_insertion_point(field_set:pg_query.Query.has_for_update) } -inline ::pg_query::RangeVar* UpdateStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.relation) - return _msg; +inline bool Query::_internal_has_for_update() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_for_update_; } -inline void UpdateStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.relation_; - } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); - if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); - } - - } else { - - } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.UpdateStmt.relation) +inline void Query::_internal_set_has_for_update(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_for_update_ = value; } -// repeated .pg_query.Node target_list = 2 [json_name = "targetList"]; -inline int UpdateStmt::_internal_target_list_size() const { - return _impl_.target_list_.size(); +// bool has_row_security = 14 [json_name = "hasRowSecurity"]; +inline void Query::clear_has_row_security() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_row_security_ = false; } -inline int UpdateStmt::target_list_size() const { - return _internal_target_list_size(); +inline bool Query::has_row_security() const { + // @@protoc_insertion_point(field_get:pg_query.Query.has_row_security) + return _internal_has_row_security(); } -inline void UpdateStmt::clear_target_list() { - _impl_.target_list_.Clear(); +inline void Query::set_has_row_security(bool value) { + _internal_set_has_row_security(value); + // @@protoc_insertion_point(field_set:pg_query.Query.has_row_security) } -inline ::pg_query::Node* UpdateStmt::mutable_target_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.target_list) - return _impl_.target_list_.Mutable(index); +inline bool Query::_internal_has_row_security() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_row_security_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -UpdateStmt::mutable_target_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.UpdateStmt.target_list) - return &_impl_.target_list_; +inline void Query::_internal_set_has_row_security(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_row_security_ = value; } -inline const ::pg_query::Node& UpdateStmt::_internal_target_list(int index) const { - return _impl_.target_list_.Get(index); + +// bool is_return = 15 [json_name = "isReturn"]; +inline void Query::clear_is_return() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_return_ = false; } -inline const ::pg_query::Node& UpdateStmt::target_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.target_list) - return _internal_target_list(index); +inline bool Query::is_return() const { + // @@protoc_insertion_point(field_get:pg_query.Query.is_return) + return _internal_is_return(); } -inline ::pg_query::Node* UpdateStmt::_internal_add_target_list() { - return _impl_.target_list_.Add(); +inline void Query::set_is_return(bool value) { + _internal_set_is_return(value); + // @@protoc_insertion_point(field_set:pg_query.Query.is_return) } -inline ::pg_query::Node* UpdateStmt::add_target_list() { - ::pg_query::Node* _add = _internal_add_target_list(); - // @@protoc_insertion_point(field_add:pg_query.UpdateStmt.target_list) - return _add; +inline bool Query::_internal_is_return() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_return_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -UpdateStmt::target_list() const { - // @@protoc_insertion_point(field_list:pg_query.UpdateStmt.target_list) - return _impl_.target_list_; +inline void Query::_internal_set_is_return(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_return_ = value; } -// .pg_query.Node where_clause = 3 [json_name = "whereClause"]; -inline bool UpdateStmt::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; -} -inline bool UpdateStmt::has_where_clause() const { - return _internal_has_where_clause(); +// repeated .pg_query.Node cte_list = 16 [json_name = "cteList"]; +inline int Query::_internal_cte_list_size() const { + return _internal_cte_list().size(); } -inline void UpdateStmt::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline int Query::cte_list_size() const { + return _internal_cte_list_size(); } -inline const ::pg_query::Node& UpdateStmt::_internal_where_clause() const { - const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void Query::clear_cte_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cte_list_.Clear(); } -inline const ::pg_query::Node& UpdateStmt::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.where_clause) - return _internal_where_clause(); +inline ::pg_query::Node* Query::mutable_cte_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.cte_list) + return _internal_mutable_cte_list()->Mutable(index); } -inline void UpdateStmt::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); - } - _impl_.where_clause_ = where_clause; - if (where_clause) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.UpdateStmt.where_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_cte_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.cte_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_cte_list(); } -inline ::pg_query::Node* UpdateStmt::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& Query::cte_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.cte_list) + return _internal_cte_list().Get(index); } -inline ::pg_query::Node* UpdateStmt::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.UpdateStmt.where_clause) - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; - return temp; +inline ::pg_query::Node* Query::add_cte_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_cte_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.cte_list) + return _add; } -inline ::pg_query::Node* UpdateStmt::_internal_mutable_where_clause() { - - if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; - } - return _impl_.where_clause_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::cte_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.cte_list) + return _internal_cte_list(); } -inline ::pg_query::Node* UpdateStmt::mutable_where_clause() { - ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.where_clause) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_cte_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cte_list_; } -inline void UpdateStmt::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.where_clause_; - } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); - if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); - } - - } else { - - } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.UpdateStmt.where_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_cte_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.cte_list_; } -// repeated .pg_query.Node from_clause = 4 [json_name = "fromClause"]; -inline int UpdateStmt::_internal_from_clause_size() const { - return _impl_.from_clause_.size(); +// repeated .pg_query.Node rtable = 17 [json_name = "rtable"]; +inline int Query::_internal_rtable_size() const { + return _internal_rtable().size(); } -inline int UpdateStmt::from_clause_size() const { - return _internal_from_clause_size(); +inline int Query::rtable_size() const { + return _internal_rtable_size(); } -inline void UpdateStmt::clear_from_clause() { - _impl_.from_clause_.Clear(); +inline void Query::clear_rtable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rtable_.Clear(); } -inline ::pg_query::Node* UpdateStmt::mutable_from_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.from_clause) - return _impl_.from_clause_.Mutable(index); +inline ::pg_query::Node* Query::mutable_rtable(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.rtable) + return _internal_mutable_rtable()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -UpdateStmt::mutable_from_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.UpdateStmt.from_clause) - return &_impl_.from_clause_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_rtable() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.rtable) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_rtable(); } -inline const ::pg_query::Node& UpdateStmt::_internal_from_clause(int index) const { - return _impl_.from_clause_.Get(index); +inline const ::pg_query::Node& Query::rtable(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.rtable) + return _internal_rtable().Get(index); } -inline const ::pg_query::Node& UpdateStmt::from_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.from_clause) - return _internal_from_clause(index); +inline ::pg_query::Node* Query::add_rtable() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_rtable()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.rtable) + return _add; } -inline ::pg_query::Node* UpdateStmt::_internal_add_from_clause() { - return _impl_.from_clause_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::rtable() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.rtable) + return _internal_rtable(); } -inline ::pg_query::Node* UpdateStmt::add_from_clause() { - ::pg_query::Node* _add = _internal_add_from_clause(); - // @@protoc_insertion_point(field_add:pg_query.UpdateStmt.from_clause) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_rtable() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rtable_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -UpdateStmt::from_clause() const { - // @@protoc_insertion_point(field_list:pg_query.UpdateStmt.from_clause) - return _impl_.from_clause_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_rtable() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.rtable_; } -// repeated .pg_query.Node returning_list = 5 [json_name = "returningList"]; -inline int UpdateStmt::_internal_returning_list_size() const { - return _impl_.returning_list_.size(); +// repeated .pg_query.Node rteperminfos = 18 [json_name = "rteperminfos"]; +inline int Query::_internal_rteperminfos_size() const { + return _internal_rteperminfos().size(); } -inline int UpdateStmt::returning_list_size() const { - return _internal_returning_list_size(); +inline int Query::rteperminfos_size() const { + return _internal_rteperminfos_size(); } -inline void UpdateStmt::clear_returning_list() { - _impl_.returning_list_.Clear(); +inline void Query::clear_rteperminfos() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rteperminfos_.Clear(); } -inline ::pg_query::Node* UpdateStmt::mutable_returning_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.returning_list) - return _impl_.returning_list_.Mutable(index); +inline ::pg_query::Node* Query::mutable_rteperminfos(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.rteperminfos) + return _internal_mutable_rteperminfos()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -UpdateStmt::mutable_returning_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.UpdateStmt.returning_list) - return &_impl_.returning_list_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_rteperminfos() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.rteperminfos) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_rteperminfos(); } -inline const ::pg_query::Node& UpdateStmt::_internal_returning_list(int index) const { - return _impl_.returning_list_.Get(index); +inline const ::pg_query::Node& Query::rteperminfos(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.rteperminfos) + return _internal_rteperminfos().Get(index); } -inline const ::pg_query::Node& UpdateStmt::returning_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.returning_list) - return _internal_returning_list(index); +inline ::pg_query::Node* Query::add_rteperminfos() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_rteperminfos()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.rteperminfos) + return _add; } -inline ::pg_query::Node* UpdateStmt::_internal_add_returning_list() { - return _impl_.returning_list_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::rteperminfos() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.rteperminfos) + return _internal_rteperminfos(); } -inline ::pg_query::Node* UpdateStmt::add_returning_list() { - ::pg_query::Node* _add = _internal_add_returning_list(); - // @@protoc_insertion_point(field_add:pg_query.UpdateStmt.returning_list) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_rteperminfos() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rteperminfos_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -UpdateStmt::returning_list() const { - // @@protoc_insertion_point(field_list:pg_query.UpdateStmt.returning_list) - return _impl_.returning_list_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_rteperminfos() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.rteperminfos_; } -// .pg_query.WithClause with_clause = 6 [json_name = "withClause"]; -inline bool UpdateStmt::_internal_has_with_clause() const { - return this != internal_default_instance() && _impl_.with_clause_ != nullptr; -} -inline bool UpdateStmt::has_with_clause() const { - return _internal_has_with_clause(); +// .pg_query.FromExpr jointree = 19 [json_name = "jointree"]; +inline bool Query::has_jointree() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.jointree_ != nullptr); + return value; } -inline void UpdateStmt::clear_with_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.with_clause_ != nullptr) { - delete _impl_.with_clause_; - } - _impl_.with_clause_ = nullptr; +inline void Query::clear_jointree() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.jointree_ != nullptr) _impl_.jointree_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::WithClause& UpdateStmt::_internal_with_clause() const { - const ::pg_query::WithClause* p = _impl_.with_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_WithClause_default_instance_); +inline const ::pg_query::FromExpr& Query::_internal_jointree() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::FromExpr* p = _impl_.jointree_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_FromExpr_default_instance_); } -inline const ::pg_query::WithClause& UpdateStmt::with_clause() const { - // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.with_clause) - return _internal_with_clause(); +inline const ::pg_query::FromExpr& Query::jointree() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.jointree) + return _internal_jointree(); } -inline void UpdateStmt::unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.with_clause_); +inline void Query::unsafe_arena_set_allocated_jointree(::pg_query::FromExpr* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.jointree_); } - _impl_.with_clause_ = with_clause; - if (with_clause) { - + _impl_.jointree_ = reinterpret_cast<::pg_query::FromExpr*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.UpdateStmt.with_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.jointree) } -inline ::pg_query::WithClause* UpdateStmt::release_with_clause() { - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; +inline ::pg_query::FromExpr* Query::release_jointree() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::FromExpr* released = _impl_.jointree_; + _impl_.jointree_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::WithClause* UpdateStmt::unsafe_arena_release_with_clause() { - // @@protoc_insertion_point(field_release:pg_query.UpdateStmt.with_clause) - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; +inline ::pg_query::FromExpr* Query::unsafe_arena_release_jointree() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Query.jointree) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::FromExpr* temp = _impl_.jointree_; + _impl_.jointree_ = nullptr; return temp; } -inline ::pg_query::WithClause* UpdateStmt::_internal_mutable_with_clause() { - - if (_impl_.with_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArenaForAllocation()); - _impl_.with_clause_ = p; +inline ::pg_query::FromExpr* Query::_internal_mutable_jointree() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.jointree_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::FromExpr>(GetArena()); + _impl_.jointree_ = reinterpret_cast<::pg_query::FromExpr*>(p); } - return _impl_.with_clause_; + return _impl_.jointree_; } -inline ::pg_query::WithClause* UpdateStmt::mutable_with_clause() { - ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.with_clause) +inline ::pg_query::FromExpr* Query::mutable_jointree() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::FromExpr* _msg = _internal_mutable_jointree(); + // @@protoc_insertion_point(field_mutable:pg_query.Query.jointree) return _msg; } -inline void UpdateStmt::set_allocated_with_clause(::pg_query::WithClause* with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Query::set_allocated_jointree(::pg_query::FromExpr* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.with_clause_; + delete reinterpret_cast<::pg_query::FromExpr*>(_impl_.jointree_); } - if (with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(with_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::FromExpr*>(value)->GetArena(); if (message_arena != submessage_arena) { - with_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, with_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.with_clause_ = with_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.UpdateStmt.with_clause) -} - -// ------------------------------------------------------------------- - -// MergeStmt -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool MergeStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; + _impl_.jointree_ = reinterpret_cast<::pg_query::FromExpr*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Query.jointree) } -inline bool MergeStmt::has_relation() const { - return _internal_has_relation(); + +// repeated .pg_query.Node merge_action_list = 20 [json_name = "mergeActionList"]; +inline int Query::_internal_merge_action_list_size() const { + return _internal_merge_action_list().size(); } -inline void MergeStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline int Query::merge_action_list_size() const { + return _internal_merge_action_list_size(); } -inline const ::pg_query::RangeVar& MergeStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline void Query::clear_merge_action_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.merge_action_list_.Clear(); } -inline const ::pg_query::RangeVar& MergeStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.MergeStmt.relation) - return _internal_relation(); +inline ::pg_query::Node* Query::mutable_merge_action_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.merge_action_list) + return _internal_mutable_merge_action_list()->Mutable(index); } -inline void MergeStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); - } - _impl_.relation_ = relation; - if (relation) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeStmt.relation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_merge_action_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.merge_action_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_merge_action_list(); } -inline ::pg_query::RangeVar* MergeStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& Query::merge_action_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.merge_action_list) + return _internal_merge_action_list().Get(index); } -inline ::pg_query::RangeVar* MergeStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.MergeStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; - return temp; +inline ::pg_query::Node* Query::add_merge_action_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_merge_action_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.merge_action_list) + return _add; } -inline ::pg_query::RangeVar* MergeStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; - } - return _impl_.relation_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::merge_action_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.merge_action_list) + return _internal_merge_action_list(); } -inline ::pg_query::RangeVar* MergeStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.relation) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_merge_action_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.merge_action_list_; } -inline void MergeStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.relation_; - } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); - if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); - } - - } else { - - } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.MergeStmt.relation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_merge_action_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.merge_action_list_; } -// .pg_query.Node source_relation = 2 [json_name = "sourceRelation"]; -inline bool MergeStmt::_internal_has_source_relation() const { - return this != internal_default_instance() && _impl_.source_relation_ != nullptr; +// bool merge_use_outer_join = 21 [json_name = "mergeUseOuterJoin"]; +inline void Query::clear_merge_use_outer_join() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.merge_use_outer_join_ = false; } -inline bool MergeStmt::has_source_relation() const { - return _internal_has_source_relation(); +inline bool Query::merge_use_outer_join() const { + // @@protoc_insertion_point(field_get:pg_query.Query.merge_use_outer_join) + return _internal_merge_use_outer_join(); } -inline void MergeStmt::clear_source_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.source_relation_ != nullptr) { - delete _impl_.source_relation_; - } - _impl_.source_relation_ = nullptr; +inline void Query::set_merge_use_outer_join(bool value) { + _internal_set_merge_use_outer_join(value); + // @@protoc_insertion_point(field_set:pg_query.Query.merge_use_outer_join) } -inline const ::pg_query::Node& MergeStmt::_internal_source_relation() const { - const ::pg_query::Node* p = _impl_.source_relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline bool Query::_internal_merge_use_outer_join() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.merge_use_outer_join_; } -inline const ::pg_query::Node& MergeStmt::source_relation() const { - // @@protoc_insertion_point(field_get:pg_query.MergeStmt.source_relation) - return _internal_source_relation(); +inline void Query::_internal_set_merge_use_outer_join(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.merge_use_outer_join_ = value; } -inline void MergeStmt::unsafe_arena_set_allocated_source_relation( - ::pg_query::Node* source_relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.source_relation_); - } - _impl_.source_relation_ = source_relation; - if (source_relation) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeStmt.source_relation) + +// repeated .pg_query.Node target_list = 22 [json_name = "targetList"]; +inline int Query::_internal_target_list_size() const { + return _internal_target_list().size(); } -inline ::pg_query::Node* MergeStmt::release_source_relation() { - - ::pg_query::Node* temp = _impl_.source_relation_; - _impl_.source_relation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline int Query::target_list_size() const { + return _internal_target_list_size(); } -inline ::pg_query::Node* MergeStmt::unsafe_arena_release_source_relation() { - // @@protoc_insertion_point(field_release:pg_query.MergeStmt.source_relation) - - ::pg_query::Node* temp = _impl_.source_relation_; - _impl_.source_relation_ = nullptr; - return temp; +inline void Query::clear_target_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.target_list_.Clear(); } -inline ::pg_query::Node* MergeStmt::_internal_mutable_source_relation() { - - if (_impl_.source_relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.source_relation_ = p; - } - return _impl_.source_relation_; +inline ::pg_query::Node* Query::mutable_target_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.target_list) + return _internal_mutable_target_list()->Mutable(index); } -inline ::pg_query::Node* MergeStmt::mutable_source_relation() { - ::pg_query::Node* _msg = _internal_mutable_source_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.source_relation) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_target_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.target_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_target_list(); } -inline void MergeStmt::set_allocated_source_relation(::pg_query::Node* source_relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.source_relation_; - } - if (source_relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(source_relation); - if (message_arena != submessage_arena) { - source_relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, source_relation, submessage_arena); - } - - } else { - - } - _impl_.source_relation_ = source_relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.MergeStmt.source_relation) +inline const ::pg_query::Node& Query::target_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.target_list) + return _internal_target_list().Get(index); +} +inline ::pg_query::Node* Query::add_target_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_target_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.target_list) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::target_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.target_list) + return _internal_target_list(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_target_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.target_list_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_target_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.target_list_; } -// .pg_query.Node join_condition = 3 [json_name = "joinCondition"]; -inline bool MergeStmt::_internal_has_join_condition() const { - return this != internal_default_instance() && _impl_.join_condition_ != nullptr; +// .pg_query.OverridingKind override = 23 [json_name = "override"]; +inline void Query::clear_override() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.override_ = 0; } -inline bool MergeStmt::has_join_condition() const { - return _internal_has_join_condition(); +inline ::pg_query::OverridingKind Query::override() const { + // @@protoc_insertion_point(field_get:pg_query.Query.override) + return _internal_override(); } -inline void MergeStmt::clear_join_condition() { - if (GetArenaForAllocation() == nullptr && _impl_.join_condition_ != nullptr) { - delete _impl_.join_condition_; - } - _impl_.join_condition_ = nullptr; +inline void Query::set_override(::pg_query::OverridingKind value) { + _internal_set_override(value); + // @@protoc_insertion_point(field_set:pg_query.Query.override) } -inline const ::pg_query::Node& MergeStmt::_internal_join_condition() const { - const ::pg_query::Node* p = _impl_.join_condition_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::OverridingKind Query::_internal_override() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::OverridingKind>(_impl_.override_); } -inline const ::pg_query::Node& MergeStmt::join_condition() const { - // @@protoc_insertion_point(field_get:pg_query.MergeStmt.join_condition) - return _internal_join_condition(); +inline void Query::_internal_set_override(::pg_query::OverridingKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.override_ = value; +} + +// .pg_query.OnConflictExpr on_conflict = 24 [json_name = "onConflict"]; +inline bool Query::has_on_conflict() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.on_conflict_ != nullptr); + return value; +} +inline void Query::clear_on_conflict() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.on_conflict_ != nullptr) _impl_.on_conflict_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; +} +inline const ::pg_query::OnConflictExpr& Query::_internal_on_conflict() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::OnConflictExpr* p = _impl_.on_conflict_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_OnConflictExpr_default_instance_); } -inline void MergeStmt::unsafe_arena_set_allocated_join_condition( - ::pg_query::Node* join_condition) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.join_condition_); +inline const ::pg_query::OnConflictExpr& Query::on_conflict() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.on_conflict) + return _internal_on_conflict(); +} +inline void Query::unsafe_arena_set_allocated_on_conflict(::pg_query::OnConflictExpr* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.on_conflict_); } - _impl_.join_condition_ = join_condition; - if (join_condition) { - + _impl_.on_conflict_ = reinterpret_cast<::pg_query::OnConflictExpr*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeStmt.join_condition) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.on_conflict) } -inline ::pg_query::Node* MergeStmt::release_join_condition() { - - ::pg_query::Node* temp = _impl_.join_condition_; - _impl_.join_condition_ = nullptr; +inline ::pg_query::OnConflictExpr* Query::release_on_conflict() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::OnConflictExpr* released = _impl_.on_conflict_; + _impl_.on_conflict_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* MergeStmt::unsafe_arena_release_join_condition() { - // @@protoc_insertion_point(field_release:pg_query.MergeStmt.join_condition) - - ::pg_query::Node* temp = _impl_.join_condition_; - _impl_.join_condition_ = nullptr; +inline ::pg_query::OnConflictExpr* Query::unsafe_arena_release_on_conflict() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Query.on_conflict) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::OnConflictExpr* temp = _impl_.on_conflict_; + _impl_.on_conflict_ = nullptr; return temp; } -inline ::pg_query::Node* MergeStmt::_internal_mutable_join_condition() { - - if (_impl_.join_condition_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.join_condition_ = p; +inline ::pg_query::OnConflictExpr* Query::_internal_mutable_on_conflict() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.on_conflict_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::OnConflictExpr>(GetArena()); + _impl_.on_conflict_ = reinterpret_cast<::pg_query::OnConflictExpr*>(p); } - return _impl_.join_condition_; + return _impl_.on_conflict_; } -inline ::pg_query::Node* MergeStmt::mutable_join_condition() { - ::pg_query::Node* _msg = _internal_mutable_join_condition(); - // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.join_condition) +inline ::pg_query::OnConflictExpr* Query::mutable_on_conflict() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::OnConflictExpr* _msg = _internal_mutable_on_conflict(); + // @@protoc_insertion_point(field_mutable:pg_query.Query.on_conflict) return _msg; } -inline void MergeStmt::set_allocated_join_condition(::pg_query::Node* join_condition) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Query::set_allocated_on_conflict(::pg_query::OnConflictExpr* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.join_condition_; + delete reinterpret_cast<::pg_query::OnConflictExpr*>(_impl_.on_conflict_); } - if (join_condition) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(join_condition); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::OnConflictExpr*>(value)->GetArena(); if (message_arena != submessage_arena) { - join_condition = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, join_condition, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.join_condition_ = join_condition; - // @@protoc_insertion_point(field_set_allocated:pg_query.MergeStmt.join_condition) + + _impl_.on_conflict_ = reinterpret_cast<::pg_query::OnConflictExpr*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Query.on_conflict) } -// repeated .pg_query.Node merge_when_clauses = 4 [json_name = "mergeWhenClauses"]; -inline int MergeStmt::_internal_merge_when_clauses_size() const { - return _impl_.merge_when_clauses_.size(); +// repeated .pg_query.Node returning_list = 25 [json_name = "returningList"]; +inline int Query::_internal_returning_list_size() const { + return _internal_returning_list().size(); } -inline int MergeStmt::merge_when_clauses_size() const { - return _internal_merge_when_clauses_size(); +inline int Query::returning_list_size() const { + return _internal_returning_list_size(); } -inline void MergeStmt::clear_merge_when_clauses() { - _impl_.merge_when_clauses_.Clear(); +inline void Query::clear_returning_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.returning_list_.Clear(); } -inline ::pg_query::Node* MergeStmt::mutable_merge_when_clauses(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.merge_when_clauses) - return _impl_.merge_when_clauses_.Mutable(index); +inline ::pg_query::Node* Query::mutable_returning_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.returning_list) + return _internal_mutable_returning_list()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -MergeStmt::mutable_merge_when_clauses() { - // @@protoc_insertion_point(field_mutable_list:pg_query.MergeStmt.merge_when_clauses) - return &_impl_.merge_when_clauses_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_returning_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.returning_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_returning_list(); } -inline const ::pg_query::Node& MergeStmt::_internal_merge_when_clauses(int index) const { - return _impl_.merge_when_clauses_.Get(index); +inline const ::pg_query::Node& Query::returning_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.returning_list) + return _internal_returning_list().Get(index); } -inline const ::pg_query::Node& MergeStmt::merge_when_clauses(int index) const { - // @@protoc_insertion_point(field_get:pg_query.MergeStmt.merge_when_clauses) - return _internal_merge_when_clauses(index); +inline ::pg_query::Node* Query::add_returning_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_returning_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.returning_list) + return _add; } -inline ::pg_query::Node* MergeStmt::_internal_add_merge_when_clauses() { - return _impl_.merge_when_clauses_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::returning_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.returning_list) + return _internal_returning_list(); } -inline ::pg_query::Node* MergeStmt::add_merge_when_clauses() { - ::pg_query::Node* _add = _internal_add_merge_when_clauses(); - // @@protoc_insertion_point(field_add:pg_query.MergeStmt.merge_when_clauses) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_returning_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.returning_list_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -MergeStmt::merge_when_clauses() const { - // @@protoc_insertion_point(field_list:pg_query.MergeStmt.merge_when_clauses) - return _impl_.merge_when_clauses_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_returning_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.returning_list_; } -// .pg_query.WithClause with_clause = 5 [json_name = "withClause"]; -inline bool MergeStmt::_internal_has_with_clause() const { - return this != internal_default_instance() && _impl_.with_clause_ != nullptr; -} -inline bool MergeStmt::has_with_clause() const { - return _internal_has_with_clause(); +// repeated .pg_query.Node group_clause = 26 [json_name = "groupClause"]; +inline int Query::_internal_group_clause_size() const { + return _internal_group_clause().size(); } -inline void MergeStmt::clear_with_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.with_clause_ != nullptr) { - delete _impl_.with_clause_; - } - _impl_.with_clause_ = nullptr; +inline int Query::group_clause_size() const { + return _internal_group_clause_size(); } -inline const ::pg_query::WithClause& MergeStmt::_internal_with_clause() const { - const ::pg_query::WithClause* p = _impl_.with_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_WithClause_default_instance_); +inline void Query::clear_group_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.group_clause_.Clear(); } -inline const ::pg_query::WithClause& MergeStmt::with_clause() const { - // @@protoc_insertion_point(field_get:pg_query.MergeStmt.with_clause) - return _internal_with_clause(); +inline ::pg_query::Node* Query::mutable_group_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.group_clause) + return _internal_mutable_group_clause()->Mutable(index); } -inline void MergeStmt::unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.with_clause_); - } - _impl_.with_clause_ = with_clause; - if (with_clause) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeStmt.with_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_group_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.group_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_group_clause(); } -inline ::pg_query::WithClause* MergeStmt::release_with_clause() { - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& Query::group_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.group_clause) + return _internal_group_clause().Get(index); } -inline ::pg_query::WithClause* MergeStmt::unsafe_arena_release_with_clause() { - // @@protoc_insertion_point(field_release:pg_query.MergeStmt.with_clause) - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; - return temp; +inline ::pg_query::Node* Query::add_group_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_group_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.group_clause) + return _add; } -inline ::pg_query::WithClause* MergeStmt::_internal_mutable_with_clause() { - - if (_impl_.with_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArenaForAllocation()); - _impl_.with_clause_ = p; - } - return _impl_.with_clause_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::group_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.group_clause) + return _internal_group_clause(); } -inline ::pg_query::WithClause* MergeStmt::mutable_with_clause() { - ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.with_clause) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_group_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.group_clause_; } -inline void MergeStmt::set_allocated_with_clause(::pg_query::WithClause* with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.with_clause_; - } - if (with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(with_clause); - if (message_arena != submessage_arena) { - with_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, with_clause, submessage_arena); - } - - } else { - - } - _impl_.with_clause_ = with_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.MergeStmt.with_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_group_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.group_clause_; } -// ------------------------------------------------------------------- - -// SelectStmt - -// repeated .pg_query.Node distinct_clause = 1 [json_name = "distinctClause"]; -inline int SelectStmt::_internal_distinct_clause_size() const { - return _impl_.distinct_clause_.size(); +// bool group_distinct = 27 [json_name = "groupDistinct"]; +inline void Query::clear_group_distinct() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.group_distinct_ = false; } -inline int SelectStmt::distinct_clause_size() const { - return _internal_distinct_clause_size(); +inline bool Query::group_distinct() const { + // @@protoc_insertion_point(field_get:pg_query.Query.group_distinct) + return _internal_group_distinct(); } -inline void SelectStmt::clear_distinct_clause() { - _impl_.distinct_clause_.Clear(); +inline void Query::set_group_distinct(bool value) { + _internal_set_group_distinct(value); + // @@protoc_insertion_point(field_set:pg_query.Query.group_distinct) } -inline ::pg_query::Node* SelectStmt::mutable_distinct_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.distinct_clause) - return _impl_.distinct_clause_.Mutable(index); +inline bool Query::_internal_group_distinct() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.group_distinct_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SelectStmt::mutable_distinct_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.distinct_clause) - return &_impl_.distinct_clause_; +inline void Query::_internal_set_group_distinct(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.group_distinct_ = value; +} + +// repeated .pg_query.Node grouping_sets = 28 [json_name = "groupingSets"]; +inline int Query::_internal_grouping_sets_size() const { + return _internal_grouping_sets().size(); +} +inline int Query::grouping_sets_size() const { + return _internal_grouping_sets_size(); +} +inline void Query::clear_grouping_sets() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.grouping_sets_.Clear(); } -inline const ::pg_query::Node& SelectStmt::_internal_distinct_clause(int index) const { - return _impl_.distinct_clause_.Get(index); +inline ::pg_query::Node* Query::mutable_grouping_sets(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.grouping_sets) + return _internal_mutable_grouping_sets()->Mutable(index); } -inline const ::pg_query::Node& SelectStmt::distinct_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.distinct_clause) - return _internal_distinct_clause(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_grouping_sets() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.grouping_sets) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_grouping_sets(); } -inline ::pg_query::Node* SelectStmt::_internal_add_distinct_clause() { - return _impl_.distinct_clause_.Add(); +inline const ::pg_query::Node& Query::grouping_sets(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.grouping_sets) + return _internal_grouping_sets().Get(index); } -inline ::pg_query::Node* SelectStmt::add_distinct_clause() { - ::pg_query::Node* _add = _internal_add_distinct_clause(); - // @@protoc_insertion_point(field_add:pg_query.SelectStmt.distinct_clause) +inline ::pg_query::Node* Query::add_grouping_sets() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_grouping_sets()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.grouping_sets) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SelectStmt::distinct_clause() const { - // @@protoc_insertion_point(field_list:pg_query.SelectStmt.distinct_clause) - return _impl_.distinct_clause_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::grouping_sets() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.grouping_sets) + return _internal_grouping_sets(); } - -// .pg_query.IntoClause into_clause = 2 [json_name = "intoClause"]; -inline bool SelectStmt::_internal_has_into_clause() const { - return this != internal_default_instance() && _impl_.into_clause_ != nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_grouping_sets() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.grouping_sets_; } -inline bool SelectStmt::has_into_clause() const { - return _internal_has_into_clause(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_grouping_sets() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.grouping_sets_; } -inline void SelectStmt::clear_into_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.into_clause_ != nullptr) { - delete _impl_.into_clause_; - } - _impl_.into_clause_ = nullptr; + +// .pg_query.Node having_qual = 29 [json_name = "havingQual"]; +inline bool Query::has_having_qual() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.having_qual_ != nullptr); + return value; } -inline const ::pg_query::IntoClause& SelectStmt::_internal_into_clause() const { - const ::pg_query::IntoClause* p = _impl_.into_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_IntoClause_default_instance_); +inline void Query::clear_having_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.having_qual_ != nullptr) _impl_.having_qual_->Clear(); + _impl_._has_bits_[0] &= ~0x00000008u; } -inline const ::pg_query::IntoClause& SelectStmt::into_clause() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.into_clause) - return _internal_into_clause(); +inline const ::pg_query::Node& Query::_internal_having_qual() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.having_qual_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void SelectStmt::unsafe_arena_set_allocated_into_clause( - ::pg_query::IntoClause* into_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.into_clause_); +inline const ::pg_query::Node& Query::having_qual() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.having_qual) + return _internal_having_qual(); +} +inline void Query::unsafe_arena_set_allocated_having_qual(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.having_qual_); } - _impl_.into_clause_ = into_clause; - if (into_clause) { - + _impl_.having_qual_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.into_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.having_qual) } -inline ::pg_query::IntoClause* SelectStmt::release_into_clause() { - - ::pg_query::IntoClause* temp = _impl_.into_clause_; - _impl_.into_clause_ = nullptr; +inline ::pg_query::Node* Query::release_having_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::Node* released = _impl_.having_qual_; + _impl_.having_qual_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::IntoClause* SelectStmt::unsafe_arena_release_into_clause() { - // @@protoc_insertion_point(field_release:pg_query.SelectStmt.into_clause) - - ::pg_query::IntoClause* temp = _impl_.into_clause_; - _impl_.into_clause_ = nullptr; +inline ::pg_query::Node* Query::unsafe_arena_release_having_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Query.having_qual) + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::Node* temp = _impl_.having_qual_; + _impl_.having_qual_ = nullptr; return temp; } -inline ::pg_query::IntoClause* SelectStmt::_internal_mutable_into_clause() { - - if (_impl_.into_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::IntoClause>(GetArenaForAllocation()); - _impl_.into_clause_ = p; +inline ::pg_query::Node* Query::_internal_mutable_having_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.having_qual_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.having_qual_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.into_clause_; + return _impl_.having_qual_; } -inline ::pg_query::IntoClause* SelectStmt::mutable_into_clause() { - ::pg_query::IntoClause* _msg = _internal_mutable_into_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.into_clause) +inline ::pg_query::Node* Query::mutable_having_qual() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_having_qual(); + // @@protoc_insertion_point(field_mutable:pg_query.Query.having_qual) return _msg; } -inline void SelectStmt::set_allocated_into_clause(::pg_query::IntoClause* into_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Query::set_allocated_having_qual(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.into_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.having_qual_); } - if (into_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(into_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - into_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, into_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; } - _impl_.into_clause_ = into_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.into_clause) + + _impl_.having_qual_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Query.having_qual) } -// repeated .pg_query.Node target_list = 3 [json_name = "targetList"]; -inline int SelectStmt::_internal_target_list_size() const { - return _impl_.target_list_.size(); +// repeated .pg_query.Node window_clause = 30 [json_name = "windowClause"]; +inline int Query::_internal_window_clause_size() const { + return _internal_window_clause().size(); } -inline int SelectStmt::target_list_size() const { - return _internal_target_list_size(); +inline int Query::window_clause_size() const { + return _internal_window_clause_size(); } -inline void SelectStmt::clear_target_list() { - _impl_.target_list_.Clear(); +inline void Query::clear_window_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.window_clause_.Clear(); } -inline ::pg_query::Node* SelectStmt::mutable_target_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.target_list) - return _impl_.target_list_.Mutable(index); +inline ::pg_query::Node* Query::mutable_window_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.window_clause) + return _internal_mutable_window_clause()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SelectStmt::mutable_target_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.target_list) - return &_impl_.target_list_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_window_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.window_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_window_clause(); } -inline const ::pg_query::Node& SelectStmt::_internal_target_list(int index) const { - return _impl_.target_list_.Get(index); +inline const ::pg_query::Node& Query::window_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.window_clause) + return _internal_window_clause().Get(index); } -inline const ::pg_query::Node& SelectStmt::target_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.target_list) - return _internal_target_list(index); +inline ::pg_query::Node* Query::add_window_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_window_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.window_clause) + return _add; } -inline ::pg_query::Node* SelectStmt::_internal_add_target_list() { - return _impl_.target_list_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::window_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.window_clause) + return _internal_window_clause(); } -inline ::pg_query::Node* SelectStmt::add_target_list() { - ::pg_query::Node* _add = _internal_add_target_list(); - // @@protoc_insertion_point(field_add:pg_query.SelectStmt.target_list) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_window_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.window_clause_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SelectStmt::target_list() const { - // @@protoc_insertion_point(field_list:pg_query.SelectStmt.target_list) - return _impl_.target_list_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_window_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.window_clause_; } -// repeated .pg_query.Node from_clause = 4 [json_name = "fromClause"]; -inline int SelectStmt::_internal_from_clause_size() const { - return _impl_.from_clause_.size(); +// repeated .pg_query.Node distinct_clause = 31 [json_name = "distinctClause"]; +inline int Query::_internal_distinct_clause_size() const { + return _internal_distinct_clause().size(); } -inline int SelectStmt::from_clause_size() const { - return _internal_from_clause_size(); +inline int Query::distinct_clause_size() const { + return _internal_distinct_clause_size(); } -inline void SelectStmt::clear_from_clause() { - _impl_.from_clause_.Clear(); +inline void Query::clear_distinct_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.distinct_clause_.Clear(); } -inline ::pg_query::Node* SelectStmt::mutable_from_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.from_clause) - return _impl_.from_clause_.Mutable(index); +inline ::pg_query::Node* Query::mutable_distinct_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.distinct_clause) + return _internal_mutable_distinct_clause()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SelectStmt::mutable_from_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.from_clause) - return &_impl_.from_clause_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_distinct_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.distinct_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_distinct_clause(); } -inline const ::pg_query::Node& SelectStmt::_internal_from_clause(int index) const { - return _impl_.from_clause_.Get(index); +inline const ::pg_query::Node& Query::distinct_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.distinct_clause) + return _internal_distinct_clause().Get(index); } -inline const ::pg_query::Node& SelectStmt::from_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.from_clause) - return _internal_from_clause(index); +inline ::pg_query::Node* Query::add_distinct_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_distinct_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.distinct_clause) + return _add; } -inline ::pg_query::Node* SelectStmt::_internal_add_from_clause() { - return _impl_.from_clause_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::distinct_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.distinct_clause) + return _internal_distinct_clause(); } -inline ::pg_query::Node* SelectStmt::add_from_clause() { - ::pg_query::Node* _add = _internal_add_from_clause(); - // @@protoc_insertion_point(field_add:pg_query.SelectStmt.from_clause) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_distinct_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.distinct_clause_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SelectStmt::from_clause() const { - // @@protoc_insertion_point(field_list:pg_query.SelectStmt.from_clause) - return _impl_.from_clause_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_distinct_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.distinct_clause_; } -// .pg_query.Node where_clause = 5 [json_name = "whereClause"]; -inline bool SelectStmt::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; +// repeated .pg_query.Node sort_clause = 32 [json_name = "sortClause"]; +inline int Query::_internal_sort_clause_size() const { + return _internal_sort_clause().size(); } -inline bool SelectStmt::has_where_clause() const { - return _internal_has_where_clause(); +inline int Query::sort_clause_size() const { + return _internal_sort_clause_size(); } -inline void SelectStmt::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline void Query::clear_sort_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sort_clause_.Clear(); } -inline const ::pg_query::Node& SelectStmt::_internal_where_clause() const { - const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::Node* Query::mutable_sort_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.sort_clause) + return _internal_mutable_sort_clause()->Mutable(index); } -inline const ::pg_query::Node& SelectStmt::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.where_clause) - return _internal_where_clause(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_sort_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.sort_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_sort_clause(); +} +inline const ::pg_query::Node& Query::sort_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.sort_clause) + return _internal_sort_clause().Get(index); +} +inline ::pg_query::Node* Query::add_sort_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_sort_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.sort_clause) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::sort_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.sort_clause) + return _internal_sort_clause(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_sort_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.sort_clause_; } -inline void SelectStmt::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_sort_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.sort_clause_; +} + +// .pg_query.Node limit_offset = 33 [json_name = "limitOffset"]; +inline bool Query::has_limit_offset() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + PROTOBUF_ASSUME(!value || _impl_.limit_offset_ != nullptr); + return value; +} +inline void Query::clear_limit_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.limit_offset_ != nullptr) _impl_.limit_offset_->Clear(); + _impl_._has_bits_[0] &= ~0x00000010u; +} +inline const ::pg_query::Node& Query::_internal_limit_offset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.limit_offset_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& Query::limit_offset() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.limit_offset) + return _internal_limit_offset(); +} +inline void Query::unsafe_arena_set_allocated_limit_offset(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.limit_offset_); } - _impl_.where_clause_ = where_clause; - if (where_clause) { - + _impl_.limit_offset_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000010u; } else { - + _impl_._has_bits_[0] &= ~0x00000010u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.where_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.limit_offset) } -inline ::pg_query::Node* SelectStmt::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::Node* Query::release_limit_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::Node* released = _impl_.limit_offset_; + _impl_.limit_offset_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SelectStmt::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.SelectStmt.where_clause) - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::Node* Query::unsafe_arena_release_limit_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Query.limit_offset) + + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::Node* temp = _impl_.limit_offset_; + _impl_.limit_offset_ = nullptr; return temp; } -inline ::pg_query::Node* SelectStmt::_internal_mutable_where_clause() { - - if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; +inline ::pg_query::Node* Query::_internal_mutable_limit_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000010u; + if (_impl_.limit_offset_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.limit_offset_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.where_clause_; + return _impl_.limit_offset_; } -inline ::pg_query::Node* SelectStmt::mutable_where_clause() { - ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.where_clause) +inline ::pg_query::Node* Query::mutable_limit_offset() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_limit_offset(); + // @@protoc_insertion_point(field_mutable:pg_query.Query.limit_offset) return _msg; } -inline void SelectStmt::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Query::set_allocated_limit_offset(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.where_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.limit_offset_); } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000010u; } else { - + _impl_._has_bits_[0] &= ~0x00000010u; } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.where_clause) + + _impl_.limit_offset_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Query.limit_offset) } -// repeated .pg_query.Node group_clause = 6 [json_name = "groupClause"]; -inline int SelectStmt::_internal_group_clause_size() const { - return _impl_.group_clause_.size(); +// .pg_query.Node limit_count = 34 [json_name = "limitCount"]; +inline bool Query::has_limit_count() const { + bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; + PROTOBUF_ASSUME(!value || _impl_.limit_count_ != nullptr); + return value; } -inline int SelectStmt::group_clause_size() const { - return _internal_group_clause_size(); +inline void Query::clear_limit_count() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.limit_count_ != nullptr) _impl_.limit_count_->Clear(); + _impl_._has_bits_[0] &= ~0x00000020u; } -inline void SelectStmt::clear_group_clause() { - _impl_.group_clause_.Clear(); +inline const ::pg_query::Node& Query::_internal_limit_count() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.limit_count_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* SelectStmt::mutable_group_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.group_clause) - return _impl_.group_clause_.Mutable(index); +inline const ::pg_query::Node& Query::limit_count() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.limit_count) + return _internal_limit_count(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SelectStmt::mutable_group_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.group_clause) - return &_impl_.group_clause_; +inline void Query::unsafe_arena_set_allocated_limit_count(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.limit_count_); + } + _impl_.limit_count_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000020u; + } else { + _impl_._has_bits_[0] &= ~0x00000020u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.limit_count) } -inline const ::pg_query::Node& SelectStmt::_internal_group_clause(int index) const { - return _impl_.group_clause_.Get(index); +inline ::pg_query::Node* Query::release_limit_count() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000020u; + ::pg_query::Node* released = _impl_.limit_count_; + _impl_.limit_count_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& SelectStmt::group_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.group_clause) - return _internal_group_clause(index); +inline ::pg_query::Node* Query::unsafe_arena_release_limit_count() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Query.limit_count) + + _impl_._has_bits_[0] &= ~0x00000020u; + ::pg_query::Node* temp = _impl_.limit_count_; + _impl_.limit_count_ = nullptr; + return temp; } -inline ::pg_query::Node* SelectStmt::_internal_add_group_clause() { - return _impl_.group_clause_.Add(); +inline ::pg_query::Node* Query::_internal_mutable_limit_count() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000020u; + if (_impl_.limit_count_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.limit_count_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.limit_count_; } -inline ::pg_query::Node* SelectStmt::add_group_clause() { - ::pg_query::Node* _add = _internal_add_group_clause(); - // @@protoc_insertion_point(field_add:pg_query.SelectStmt.group_clause) - return _add; +inline ::pg_query::Node* Query::mutable_limit_count() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_limit_count(); + // @@protoc_insertion_point(field_mutable:pg_query.Query.limit_count) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SelectStmt::group_clause() const { - // @@protoc_insertion_point(field_list:pg_query.SelectStmt.group_clause) - return _impl_.group_clause_; +inline void Query::set_allocated_limit_count(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.limit_count_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000020u; + } else { + _impl_._has_bits_[0] &= ~0x00000020u; + } + + _impl_.limit_count_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Query.limit_count) } -// bool group_distinct = 7 [json_name = "groupDistinct"]; -inline void SelectStmt::clear_group_distinct() { - _impl_.group_distinct_ = false; +// .pg_query.LimitOption limit_option = 35 [json_name = "limitOption"]; +inline void Query::clear_limit_option() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.limit_option_ = 0; } -inline bool SelectStmt::_internal_group_distinct() const { - return _impl_.group_distinct_; +inline ::pg_query::LimitOption Query::limit_option() const { + // @@protoc_insertion_point(field_get:pg_query.Query.limit_option) + return _internal_limit_option(); } -inline bool SelectStmt::group_distinct() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.group_distinct) - return _internal_group_distinct(); +inline void Query::set_limit_option(::pg_query::LimitOption value) { + _internal_set_limit_option(value); + // @@protoc_insertion_point(field_set:pg_query.Query.limit_option) } -inline void SelectStmt::_internal_set_group_distinct(bool value) { - - _impl_.group_distinct_ = value; +inline ::pg_query::LimitOption Query::_internal_limit_option() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::LimitOption>(_impl_.limit_option_); } -inline void SelectStmt::set_group_distinct(bool value) { - _internal_set_group_distinct(value); - // @@protoc_insertion_point(field_set:pg_query.SelectStmt.group_distinct) +inline void Query::_internal_set_limit_option(::pg_query::LimitOption value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.limit_option_ = value; } -// .pg_query.Node having_clause = 8 [json_name = "havingClause"]; -inline bool SelectStmt::_internal_has_having_clause() const { - return this != internal_default_instance() && _impl_.having_clause_ != nullptr; +// repeated .pg_query.Node row_marks = 36 [json_name = "rowMarks"]; +inline int Query::_internal_row_marks_size() const { + return _internal_row_marks().size(); } -inline bool SelectStmt::has_having_clause() const { - return _internal_has_having_clause(); +inline int Query::row_marks_size() const { + return _internal_row_marks_size(); } -inline void SelectStmt::clear_having_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.having_clause_ != nullptr) { - delete _impl_.having_clause_; - } - _impl_.having_clause_ = nullptr; +inline void Query::clear_row_marks() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.row_marks_.Clear(); } -inline const ::pg_query::Node& SelectStmt::_internal_having_clause() const { - const ::pg_query::Node* p = _impl_.having_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::Node* Query::mutable_row_marks(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.row_marks) + return _internal_mutable_row_marks()->Mutable(index); } -inline const ::pg_query::Node& SelectStmt::having_clause() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.having_clause) - return _internal_having_clause(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_row_marks() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.row_marks) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_row_marks(); +} +inline const ::pg_query::Node& Query::row_marks(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.row_marks) + return _internal_row_marks().Get(index); +} +inline ::pg_query::Node* Query::add_row_marks() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_row_marks()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.row_marks) + return _add; } -inline void SelectStmt::unsafe_arena_set_allocated_having_clause( - ::pg_query::Node* having_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.having_clause_); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::row_marks() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.row_marks) + return _internal_row_marks(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_row_marks() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.row_marks_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_row_marks() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.row_marks_; +} + +// .pg_query.Node set_operations = 37 [json_name = "setOperations"]; +inline bool Query::has_set_operations() const { + bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; + PROTOBUF_ASSUME(!value || _impl_.set_operations_ != nullptr); + return value; +} +inline void Query::clear_set_operations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.set_operations_ != nullptr) _impl_.set_operations_->Clear(); + _impl_._has_bits_[0] &= ~0x00000040u; +} +inline const ::pg_query::Node& Query::_internal_set_operations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.set_operations_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& Query::set_operations() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.set_operations) + return _internal_set_operations(); +} +inline void Query::unsafe_arena_set_allocated_set_operations(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.set_operations_); } - _impl_.having_clause_ = having_clause; - if (having_clause) { - + _impl_.set_operations_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000040u; } else { - + _impl_._has_bits_[0] &= ~0x00000040u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.having_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Query.set_operations) } -inline ::pg_query::Node* SelectStmt::release_having_clause() { - - ::pg_query::Node* temp = _impl_.having_clause_; - _impl_.having_clause_ = nullptr; +inline ::pg_query::Node* Query::release_set_operations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000040u; + ::pg_query::Node* released = _impl_.set_operations_; + _impl_.set_operations_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SelectStmt::unsafe_arena_release_having_clause() { - // @@protoc_insertion_point(field_release:pg_query.SelectStmt.having_clause) - - ::pg_query::Node* temp = _impl_.having_clause_; - _impl_.having_clause_ = nullptr; +inline ::pg_query::Node* Query::unsafe_arena_release_set_operations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Query.set_operations) + + _impl_._has_bits_[0] &= ~0x00000040u; + ::pg_query::Node* temp = _impl_.set_operations_; + _impl_.set_operations_ = nullptr; return temp; } -inline ::pg_query::Node* SelectStmt::_internal_mutable_having_clause() { - - if (_impl_.having_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.having_clause_ = p; +inline ::pg_query::Node* Query::_internal_mutable_set_operations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000040u; + if (_impl_.set_operations_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.set_operations_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.having_clause_; + return _impl_.set_operations_; } -inline ::pg_query::Node* SelectStmt::mutable_having_clause() { - ::pg_query::Node* _msg = _internal_mutable_having_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.having_clause) +inline ::pg_query::Node* Query::mutable_set_operations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_set_operations(); + // @@protoc_insertion_point(field_mutable:pg_query.Query.set_operations) return _msg; } -inline void SelectStmt::set_allocated_having_clause(::pg_query::Node* having_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Query::set_allocated_set_operations(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.having_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.set_operations_); } - if (having_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(having_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - having_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, having_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000040u; } else { - + _impl_._has_bits_[0] &= ~0x00000040u; } - _impl_.having_clause_ = having_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.having_clause) -} -// repeated .pg_query.Node window_clause = 9 [json_name = "windowClause"]; -inline int SelectStmt::_internal_window_clause_size() const { - return _impl_.window_clause_.size(); -} -inline int SelectStmt::window_clause_size() const { - return _internal_window_clause_size(); -} -inline void SelectStmt::clear_window_clause() { - _impl_.window_clause_.Clear(); -} -inline ::pg_query::Node* SelectStmt::mutable_window_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.window_clause) - return _impl_.window_clause_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SelectStmt::mutable_window_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.window_clause) - return &_impl_.window_clause_; -} -inline const ::pg_query::Node& SelectStmt::_internal_window_clause(int index) const { - return _impl_.window_clause_.Get(index); -} -inline const ::pg_query::Node& SelectStmt::window_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.window_clause) - return _internal_window_clause(index); -} -inline ::pg_query::Node* SelectStmt::_internal_add_window_clause() { - return _impl_.window_clause_.Add(); -} -inline ::pg_query::Node* SelectStmt::add_window_clause() { - ::pg_query::Node* _add = _internal_add_window_clause(); - // @@protoc_insertion_point(field_add:pg_query.SelectStmt.window_clause) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SelectStmt::window_clause() const { - // @@protoc_insertion_point(field_list:pg_query.SelectStmt.window_clause) - return _impl_.window_clause_; + _impl_.set_operations_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Query.set_operations) } -// repeated .pg_query.Node values_lists = 10 [json_name = "valuesLists"]; -inline int SelectStmt::_internal_values_lists_size() const { - return _impl_.values_lists_.size(); +// repeated .pg_query.Node constraint_deps = 38 [json_name = "constraintDeps"]; +inline int Query::_internal_constraint_deps_size() const { + return _internal_constraint_deps().size(); } -inline int SelectStmt::values_lists_size() const { - return _internal_values_lists_size(); +inline int Query::constraint_deps_size() const { + return _internal_constraint_deps_size(); } -inline void SelectStmt::clear_values_lists() { - _impl_.values_lists_.Clear(); +inline void Query::clear_constraint_deps() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.constraint_deps_.Clear(); } -inline ::pg_query::Node* SelectStmt::mutable_values_lists(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.values_lists) - return _impl_.values_lists_.Mutable(index); +inline ::pg_query::Node* Query::mutable_constraint_deps(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.constraint_deps) + return _internal_mutable_constraint_deps()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SelectStmt::mutable_values_lists() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.values_lists) - return &_impl_.values_lists_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_constraint_deps() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.constraint_deps) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_constraint_deps(); } -inline const ::pg_query::Node& SelectStmt::_internal_values_lists(int index) const { - return _impl_.values_lists_.Get(index); +inline const ::pg_query::Node& Query::constraint_deps(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.constraint_deps) + return _internal_constraint_deps().Get(index); } -inline const ::pg_query::Node& SelectStmt::values_lists(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.values_lists) - return _internal_values_lists(index); +inline ::pg_query::Node* Query::add_constraint_deps() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_constraint_deps()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.constraint_deps) + return _add; } -inline ::pg_query::Node* SelectStmt::_internal_add_values_lists() { - return _impl_.values_lists_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::constraint_deps() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.constraint_deps) + return _internal_constraint_deps(); } -inline ::pg_query::Node* SelectStmt::add_values_lists() { - ::pg_query::Node* _add = _internal_add_values_lists(); - // @@protoc_insertion_point(field_add:pg_query.SelectStmt.values_lists) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_constraint_deps() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.constraint_deps_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SelectStmt::values_lists() const { - // @@protoc_insertion_point(field_list:pg_query.SelectStmt.values_lists) - return _impl_.values_lists_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_constraint_deps() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.constraint_deps_; } -// repeated .pg_query.Node sort_clause = 11 [json_name = "sortClause"]; -inline int SelectStmt::_internal_sort_clause_size() const { - return _impl_.sort_clause_.size(); +// repeated .pg_query.Node with_check_options = 39 [json_name = "withCheckOptions"]; +inline int Query::_internal_with_check_options_size() const { + return _internal_with_check_options().size(); } -inline int SelectStmt::sort_clause_size() const { - return _internal_sort_clause_size(); +inline int Query::with_check_options_size() const { + return _internal_with_check_options_size(); } -inline void SelectStmt::clear_sort_clause() { - _impl_.sort_clause_.Clear(); +inline void Query::clear_with_check_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.with_check_options_.Clear(); } -inline ::pg_query::Node* SelectStmt::mutable_sort_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.sort_clause) - return _impl_.sort_clause_.Mutable(index); +inline ::pg_query::Node* Query::mutable_with_check_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Query.with_check_options) + return _internal_mutable_with_check_options()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SelectStmt::mutable_sort_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.sort_clause) - return &_impl_.sort_clause_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Query::mutable_with_check_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Query.with_check_options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_with_check_options(); } -inline const ::pg_query::Node& SelectStmt::_internal_sort_clause(int index) const { - return _impl_.sort_clause_.Get(index); +inline const ::pg_query::Node& Query::with_check_options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Query.with_check_options) + return _internal_with_check_options().Get(index); } -inline const ::pg_query::Node& SelectStmt::sort_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.sort_clause) - return _internal_sort_clause(index); +inline ::pg_query::Node* Query::add_with_check_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_with_check_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Query.with_check_options) + return _add; } -inline ::pg_query::Node* SelectStmt::_internal_add_sort_clause() { - return _impl_.sort_clause_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Query::with_check_options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Query.with_check_options) + return _internal_with_check_options(); } -inline ::pg_query::Node* SelectStmt::add_sort_clause() { - ::pg_query::Node* _add = _internal_add_sort_clause(); - // @@protoc_insertion_point(field_add:pg_query.SelectStmt.sort_clause) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Query::_internal_with_check_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.with_check_options_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SelectStmt::sort_clause() const { - // @@protoc_insertion_point(field_list:pg_query.SelectStmt.sort_clause) - return _impl_.sort_clause_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Query::_internal_mutable_with_check_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.with_check_options_; } -// .pg_query.Node limit_offset = 12 [json_name = "limitOffset"]; -inline bool SelectStmt::_internal_has_limit_offset() const { - return this != internal_default_instance() && _impl_.limit_offset_ != nullptr; -} -inline bool SelectStmt::has_limit_offset() const { - return _internal_has_limit_offset(); +// int32 stmt_location = 40 [json_name = "stmt_location"]; +inline void Query::clear_stmt_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.stmt_location_ = 0; } -inline void SelectStmt::clear_limit_offset() { - if (GetArenaForAllocation() == nullptr && _impl_.limit_offset_ != nullptr) { - delete _impl_.limit_offset_; - } - _impl_.limit_offset_ = nullptr; +inline ::int32_t Query::stmt_location() const { + // @@protoc_insertion_point(field_get:pg_query.Query.stmt_location) + return _internal_stmt_location(); } -inline const ::pg_query::Node& SelectStmt::_internal_limit_offset() const { - const ::pg_query::Node* p = _impl_.limit_offset_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void Query::set_stmt_location(::int32_t value) { + _internal_set_stmt_location(value); + // @@protoc_insertion_point(field_set:pg_query.Query.stmt_location) } -inline const ::pg_query::Node& SelectStmt::limit_offset() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.limit_offset) - return _internal_limit_offset(); +inline ::int32_t Query::_internal_stmt_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.stmt_location_; } -inline void SelectStmt::unsafe_arena_set_allocated_limit_offset( - ::pg_query::Node* limit_offset) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.limit_offset_); - } - _impl_.limit_offset_ = limit_offset; - if (limit_offset) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.limit_offset) +inline void Query::_internal_set_stmt_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.stmt_location_ = value; } -inline ::pg_query::Node* SelectStmt::release_limit_offset() { - - ::pg_query::Node* temp = _impl_.limit_offset_; - _impl_.limit_offset_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// int32 stmt_len = 41 [json_name = "stmt_len"]; +inline void Query::clear_stmt_len() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.stmt_len_ = 0; } -inline ::pg_query::Node* SelectStmt::unsafe_arena_release_limit_offset() { - // @@protoc_insertion_point(field_release:pg_query.SelectStmt.limit_offset) - - ::pg_query::Node* temp = _impl_.limit_offset_; - _impl_.limit_offset_ = nullptr; - return temp; +inline ::int32_t Query::stmt_len() const { + // @@protoc_insertion_point(field_get:pg_query.Query.stmt_len) + return _internal_stmt_len(); } -inline ::pg_query::Node* SelectStmt::_internal_mutable_limit_offset() { - - if (_impl_.limit_offset_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.limit_offset_ = p; - } - return _impl_.limit_offset_; +inline void Query::set_stmt_len(::int32_t value) { + _internal_set_stmt_len(value); + // @@protoc_insertion_point(field_set:pg_query.Query.stmt_len) } -inline ::pg_query::Node* SelectStmt::mutable_limit_offset() { - ::pg_query::Node* _msg = _internal_mutable_limit_offset(); - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.limit_offset) - return _msg; +inline ::int32_t Query::_internal_stmt_len() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.stmt_len_; } -inline void SelectStmt::set_allocated_limit_offset(::pg_query::Node* limit_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.limit_offset_; - } - if (limit_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(limit_offset); - if (message_arena != submessage_arena) { - limit_offset = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, limit_offset, submessage_arena); - } - - } else { - - } - _impl_.limit_offset_ = limit_offset; - // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.limit_offset) +inline void Query::_internal_set_stmt_len(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.stmt_len_ = value; } -// .pg_query.Node limit_count = 13 [json_name = "limitCount"]; -inline bool SelectStmt::_internal_has_limit_count() const { - return this != internal_default_instance() && _impl_.limit_count_ != nullptr; -} -inline bool SelectStmt::has_limit_count() const { - return _internal_has_limit_count(); +// ------------------------------------------------------------------- + +// TypeName + +// repeated .pg_query.Node names = 1 [json_name = "names"]; +inline int TypeName::_internal_names_size() const { + return _internal_names().size(); } -inline void SelectStmt::clear_limit_count() { - if (GetArenaForAllocation() == nullptr && _impl_.limit_count_ != nullptr) { - delete _impl_.limit_count_; - } - _impl_.limit_count_ = nullptr; +inline int TypeName::names_size() const { + return _internal_names_size(); } -inline const ::pg_query::Node& SelectStmt::_internal_limit_count() const { - const ::pg_query::Node* p = _impl_.limit_count_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void TypeName::clear_names() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.names_.Clear(); } -inline const ::pg_query::Node& SelectStmt::limit_count() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.limit_count) - return _internal_limit_count(); +inline ::pg_query::Node* TypeName::mutable_names(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TypeName.names) + return _internal_mutable_names()->Mutable(index); } -inline void SelectStmt::unsafe_arena_set_allocated_limit_count( - ::pg_query::Node* limit_count) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.limit_count_); - } - _impl_.limit_count_ = limit_count; - if (limit_count) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.limit_count) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TypeName::mutable_names() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TypeName.names) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_names(); } -inline ::pg_query::Node* SelectStmt::release_limit_count() { - - ::pg_query::Node* temp = _impl_.limit_count_; - _impl_.limit_count_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& TypeName::names(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TypeName.names) + return _internal_names().Get(index); } -inline ::pg_query::Node* SelectStmt::unsafe_arena_release_limit_count() { - // @@protoc_insertion_point(field_release:pg_query.SelectStmt.limit_count) - - ::pg_query::Node* temp = _impl_.limit_count_; - _impl_.limit_count_ = nullptr; - return temp; +inline ::pg_query::Node* TypeName::add_names() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_names()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TypeName.names) + return _add; } -inline ::pg_query::Node* SelectStmt::_internal_mutable_limit_count() { - - if (_impl_.limit_count_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.limit_count_ = p; - } - return _impl_.limit_count_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TypeName::names() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TypeName.names) + return _internal_names(); } -inline ::pg_query::Node* SelectStmt::mutable_limit_count() { - ::pg_query::Node* _msg = _internal_mutable_limit_count(); - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.limit_count) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TypeName::_internal_names() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.names_; } -inline void SelectStmt::set_allocated_limit_count(::pg_query::Node* limit_count) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.limit_count_; - } - if (limit_count) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(limit_count); - if (message_arena != submessage_arena) { - limit_count = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, limit_count, submessage_arena); - } - - } else { - - } - _impl_.limit_count_ = limit_count; - // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.limit_count) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TypeName::_internal_mutable_names() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.names_; } -// .pg_query.LimitOption limit_option = 14 [json_name = "limitOption"]; -inline void SelectStmt::clear_limit_option() { - _impl_.limit_option_ = 0; +// uint32 type_oid = 2 [json_name = "typeOid"]; +inline void TypeName::clear_type_oid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_oid_ = 0u; } -inline ::pg_query::LimitOption SelectStmt::_internal_limit_option() const { - return static_cast< ::pg_query::LimitOption >(_impl_.limit_option_); +inline ::uint32_t TypeName::type_oid() const { + // @@protoc_insertion_point(field_get:pg_query.TypeName.type_oid) + return _internal_type_oid(); } -inline ::pg_query::LimitOption SelectStmt::limit_option() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.limit_option) - return _internal_limit_option(); +inline void TypeName::set_type_oid(::uint32_t value) { + _internal_set_type_oid(value); + // @@protoc_insertion_point(field_set:pg_query.TypeName.type_oid) } -inline void SelectStmt::_internal_set_limit_option(::pg_query::LimitOption value) { - - _impl_.limit_option_ = value; +inline ::uint32_t TypeName::_internal_type_oid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_oid_; } -inline void SelectStmt::set_limit_option(::pg_query::LimitOption value) { - _internal_set_limit_option(value); - // @@protoc_insertion_point(field_set:pg_query.SelectStmt.limit_option) +inline void TypeName::_internal_set_type_oid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.type_oid_ = value; } -// repeated .pg_query.Node locking_clause = 15 [json_name = "lockingClause"]; -inline int SelectStmt::_internal_locking_clause_size() const { - return _impl_.locking_clause_.size(); +// bool setof = 3 [json_name = "setof"]; +inline void TypeName::clear_setof() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.setof_ = false; } -inline int SelectStmt::locking_clause_size() const { - return _internal_locking_clause_size(); +inline bool TypeName::setof() const { + // @@protoc_insertion_point(field_get:pg_query.TypeName.setof) + return _internal_setof(); } -inline void SelectStmt::clear_locking_clause() { - _impl_.locking_clause_.Clear(); +inline void TypeName::set_setof(bool value) { + _internal_set_setof(value); + // @@protoc_insertion_point(field_set:pg_query.TypeName.setof) } -inline ::pg_query::Node* SelectStmt::mutable_locking_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.locking_clause) - return _impl_.locking_clause_.Mutable(index); +inline bool TypeName::_internal_setof() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.setof_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SelectStmt::mutable_locking_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.locking_clause) - return &_impl_.locking_clause_; +inline void TypeName::_internal_set_setof(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.setof_ = value; } -inline const ::pg_query::Node& SelectStmt::_internal_locking_clause(int index) const { - return _impl_.locking_clause_.Get(index); + +// bool pct_type = 4 [json_name = "pct_type"]; +inline void TypeName::clear_pct_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pct_type_ = false; } -inline const ::pg_query::Node& SelectStmt::locking_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.locking_clause) - return _internal_locking_clause(index); +inline bool TypeName::pct_type() const { + // @@protoc_insertion_point(field_get:pg_query.TypeName.pct_type) + return _internal_pct_type(); } -inline ::pg_query::Node* SelectStmt::_internal_add_locking_clause() { - return _impl_.locking_clause_.Add(); +inline void TypeName::set_pct_type(bool value) { + _internal_set_pct_type(value); + // @@protoc_insertion_point(field_set:pg_query.TypeName.pct_type) } -inline ::pg_query::Node* SelectStmt::add_locking_clause() { - ::pg_query::Node* _add = _internal_add_locking_clause(); - // @@protoc_insertion_point(field_add:pg_query.SelectStmt.locking_clause) - return _add; +inline bool TypeName::_internal_pct_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.pct_type_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SelectStmt::locking_clause() const { - // @@protoc_insertion_point(field_list:pg_query.SelectStmt.locking_clause) - return _impl_.locking_clause_; +inline void TypeName::_internal_set_pct_type(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.pct_type_ = value; } -// .pg_query.WithClause with_clause = 16 [json_name = "withClause"]; -inline bool SelectStmt::_internal_has_with_clause() const { - return this != internal_default_instance() && _impl_.with_clause_ != nullptr; -} -inline bool SelectStmt::has_with_clause() const { - return _internal_has_with_clause(); +// repeated .pg_query.Node typmods = 5 [json_name = "typmods"]; +inline int TypeName::_internal_typmods_size() const { + return _internal_typmods().size(); } -inline void SelectStmt::clear_with_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.with_clause_ != nullptr) { - delete _impl_.with_clause_; - } - _impl_.with_clause_ = nullptr; +inline int TypeName::typmods_size() const { + return _internal_typmods_size(); } -inline const ::pg_query::WithClause& SelectStmt::_internal_with_clause() const { - const ::pg_query::WithClause* p = _impl_.with_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_WithClause_default_instance_); +inline void TypeName::clear_typmods() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.typmods_.Clear(); } -inline const ::pg_query::WithClause& SelectStmt::with_clause() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.with_clause) - return _internal_with_clause(); +inline ::pg_query::Node* TypeName::mutable_typmods(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TypeName.typmods) + return _internal_mutable_typmods()->Mutable(index); } -inline void SelectStmt::unsafe_arena_set_allocated_with_clause( - ::pg_query::WithClause* with_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.with_clause_); - } - _impl_.with_clause_ = with_clause; - if (with_clause) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.with_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TypeName::mutable_typmods() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TypeName.typmods) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_typmods(); } -inline ::pg_query::WithClause* SelectStmt::release_with_clause() { - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& TypeName::typmods(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TypeName.typmods) + return _internal_typmods().Get(index); } -inline ::pg_query::WithClause* SelectStmt::unsafe_arena_release_with_clause() { - // @@protoc_insertion_point(field_release:pg_query.SelectStmt.with_clause) - - ::pg_query::WithClause* temp = _impl_.with_clause_; - _impl_.with_clause_ = nullptr; - return temp; +inline ::pg_query::Node* TypeName::add_typmods() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_typmods()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TypeName.typmods) + return _add; } -inline ::pg_query::WithClause* SelectStmt::_internal_mutable_with_clause() { - - if (_impl_.with_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArenaForAllocation()); - _impl_.with_clause_ = p; - } - return _impl_.with_clause_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TypeName::typmods() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TypeName.typmods) + return _internal_typmods(); } -inline ::pg_query::WithClause* SelectStmt::mutable_with_clause() { - ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.with_clause) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TypeName::_internal_typmods() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.typmods_; } -inline void SelectStmt::set_allocated_with_clause(::pg_query::WithClause* with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.with_clause_; - } - if (with_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(with_clause); - if (message_arena != submessage_arena) { - with_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, with_clause, submessage_arena); - } - - } else { - - } - _impl_.with_clause_ = with_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.with_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TypeName::_internal_mutable_typmods() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.typmods_; } -// .pg_query.SetOperation op = 17 [json_name = "op"]; -inline void SelectStmt::clear_op() { - _impl_.op_ = 0; +// int32 typemod = 6 [json_name = "typemod"]; +inline void TypeName::clear_typemod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.typemod_ = 0; } -inline ::pg_query::SetOperation SelectStmt::_internal_op() const { - return static_cast< ::pg_query::SetOperation >(_impl_.op_); +inline ::int32_t TypeName::typemod() const { + // @@protoc_insertion_point(field_get:pg_query.TypeName.typemod) + return _internal_typemod(); } -inline ::pg_query::SetOperation SelectStmt::op() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.op) - return _internal_op(); +inline void TypeName::set_typemod(::int32_t value) { + _internal_set_typemod(value); + // @@protoc_insertion_point(field_set:pg_query.TypeName.typemod) } -inline void SelectStmt::_internal_set_op(::pg_query::SetOperation value) { - - _impl_.op_ = value; +inline ::int32_t TypeName::_internal_typemod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.typemod_; } -inline void SelectStmt::set_op(::pg_query::SetOperation value) { - _internal_set_op(value); - // @@protoc_insertion_point(field_set:pg_query.SelectStmt.op) +inline void TypeName::_internal_set_typemod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.typemod_ = value; } -// bool all = 18 [json_name = "all"]; -inline void SelectStmt::clear_all() { - _impl_.all_ = false; -} -inline bool SelectStmt::_internal_all() const { - return _impl_.all_; +// repeated .pg_query.Node array_bounds = 7 [json_name = "arrayBounds"]; +inline int TypeName::_internal_array_bounds_size() const { + return _internal_array_bounds().size(); } -inline bool SelectStmt::all() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.all) - return _internal_all(); +inline int TypeName::array_bounds_size() const { + return _internal_array_bounds_size(); } -inline void SelectStmt::_internal_set_all(bool value) { - - _impl_.all_ = value; +inline void TypeName::clear_array_bounds() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.array_bounds_.Clear(); } -inline void SelectStmt::set_all(bool value) { - _internal_set_all(value); - // @@protoc_insertion_point(field_set:pg_query.SelectStmt.all) +inline ::pg_query::Node* TypeName::mutable_array_bounds(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TypeName.array_bounds) + return _internal_mutable_array_bounds()->Mutable(index); } - -// .pg_query.SelectStmt larg = 19 [json_name = "larg"]; -inline bool SelectStmt::_internal_has_larg() const { - return this != internal_default_instance() && _impl_.larg_ != nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TypeName::mutable_array_bounds() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TypeName.array_bounds) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_array_bounds(); } -inline bool SelectStmt::has_larg() const { - return _internal_has_larg(); +inline const ::pg_query::Node& TypeName::array_bounds(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TypeName.array_bounds) + return _internal_array_bounds().Get(index); } -inline void SelectStmt::clear_larg() { - if (GetArenaForAllocation() == nullptr && _impl_.larg_ != nullptr) { - delete _impl_.larg_; - } - _impl_.larg_ = nullptr; +inline ::pg_query::Node* TypeName::add_array_bounds() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_array_bounds()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TypeName.array_bounds) + return _add; } -inline const ::pg_query::SelectStmt& SelectStmt::_internal_larg() const { - const ::pg_query::SelectStmt* p = _impl_.larg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_SelectStmt_default_instance_); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TypeName::array_bounds() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TypeName.array_bounds) + return _internal_array_bounds(); } -inline const ::pg_query::SelectStmt& SelectStmt::larg() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.larg) - return _internal_larg(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TypeName::_internal_array_bounds() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.array_bounds_; } -inline void SelectStmt::unsafe_arena_set_allocated_larg( - ::pg_query::SelectStmt* larg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.larg_); - } - _impl_.larg_ = larg; - if (larg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.larg) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TypeName::_internal_mutable_array_bounds() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.array_bounds_; } -inline ::pg_query::SelectStmt* SelectStmt::release_larg() { - - ::pg_query::SelectStmt* temp = _impl_.larg_; - _impl_.larg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// int32 location = 8 [json_name = "location"]; +inline void TypeName::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline ::pg_query::SelectStmt* SelectStmt::unsafe_arena_release_larg() { - // @@protoc_insertion_point(field_release:pg_query.SelectStmt.larg) - - ::pg_query::SelectStmt* temp = _impl_.larg_; - _impl_.larg_ = nullptr; - return temp; +inline ::int32_t TypeName::location() const { + // @@protoc_insertion_point(field_get:pg_query.TypeName.location) + return _internal_location(); } -inline ::pg_query::SelectStmt* SelectStmt::_internal_mutable_larg() { - - if (_impl_.larg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::SelectStmt>(GetArenaForAllocation()); - _impl_.larg_ = p; - } - return _impl_.larg_; +inline void TypeName::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.TypeName.location) } -inline ::pg_query::SelectStmt* SelectStmt::mutable_larg() { - ::pg_query::SelectStmt* _msg = _internal_mutable_larg(); - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.larg) - return _msg; +inline ::int32_t TypeName::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void SelectStmt::set_allocated_larg(::pg_query::SelectStmt* larg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.larg_; - } - if (larg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(larg); - if (message_arena != submessage_arena) { - larg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, larg, submessage_arena); - } - - } else { - - } - _impl_.larg_ = larg; - // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.larg) +inline void TypeName::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.SelectStmt rarg = 20 [json_name = "rarg"]; -inline bool SelectStmt::_internal_has_rarg() const { - return this != internal_default_instance() && _impl_.rarg_ != nullptr; +// ------------------------------------------------------------------- + +// ColumnRef + +// repeated .pg_query.Node fields = 1 [json_name = "fields"]; +inline int ColumnRef::_internal_fields_size() const { + return _internal_fields().size(); } -inline bool SelectStmt::has_rarg() const { - return _internal_has_rarg(); +inline int ColumnRef::fields_size() const { + return _internal_fields_size(); } -inline void SelectStmt::clear_rarg() { - if (GetArenaForAllocation() == nullptr && _impl_.rarg_ != nullptr) { - delete _impl_.rarg_; - } - _impl_.rarg_ = nullptr; +inline void ColumnRef::clear_fields() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fields_.Clear(); } -inline const ::pg_query::SelectStmt& SelectStmt::_internal_rarg() const { - const ::pg_query::SelectStmt* p = _impl_.rarg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_SelectStmt_default_instance_); +inline ::pg_query::Node* ColumnRef::mutable_fields(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ColumnRef.fields) + return _internal_mutable_fields()->Mutable(index); } -inline const ::pg_query::SelectStmt& SelectStmt::rarg() const { - // @@protoc_insertion_point(field_get:pg_query.SelectStmt.rarg) - return _internal_rarg(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ColumnRef::mutable_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ColumnRef.fields) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_fields(); } -inline void SelectStmt::unsafe_arena_set_allocated_rarg( - ::pg_query::SelectStmt* rarg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.rarg_); - } - _impl_.rarg_ = rarg; - if (rarg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.rarg) +inline const ::pg_query::Node& ColumnRef::fields(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnRef.fields) + return _internal_fields().Get(index); } -inline ::pg_query::SelectStmt* SelectStmt::release_rarg() { - - ::pg_query::SelectStmt* temp = _impl_.rarg_; - _impl_.rarg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::pg_query::Node* ColumnRef::add_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_fields()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ColumnRef.fields) + return _add; } -inline ::pg_query::SelectStmt* SelectStmt::unsafe_arena_release_rarg() { - // @@protoc_insertion_point(field_release:pg_query.SelectStmt.rarg) - - ::pg_query::SelectStmt* temp = _impl_.rarg_; - _impl_.rarg_ = nullptr; - return temp; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ColumnRef::fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ColumnRef.fields) + return _internal_fields(); } -inline ::pg_query::SelectStmt* SelectStmt::_internal_mutable_rarg() { - - if (_impl_.rarg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::SelectStmt>(GetArenaForAllocation()); - _impl_.rarg_ = p; - } - return _impl_.rarg_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ColumnRef::_internal_fields() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fields_; } -inline ::pg_query::SelectStmt* SelectStmt::mutable_rarg() { - ::pg_query::SelectStmt* _msg = _internal_mutable_rarg(); - // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.rarg) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ColumnRef::_internal_mutable_fields() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.fields_; } -inline void SelectStmt::set_allocated_rarg(::pg_query::SelectStmt* rarg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.rarg_; - } - if (rarg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(rarg); - if (message_arena != submessage_arena) { - rarg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, rarg, submessage_arena); - } - - } else { - - } - _impl_.rarg_ = rarg; - // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.rarg) + +// int32 location = 2 [json_name = "location"]; +inline void ColumnRef::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; +} +inline ::int32_t ColumnRef::location() const { + // @@protoc_insertion_point(field_get:pg_query.ColumnRef.location) + return _internal_location(); +} +inline void ColumnRef::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.ColumnRef.location) +} +inline ::int32_t ColumnRef::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void ColumnRef::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// ReturnStmt +// ParamRef -// .pg_query.Node returnval = 1 [json_name = "returnval"]; -inline bool ReturnStmt::_internal_has_returnval() const { - return this != internal_default_instance() && _impl_.returnval_ != nullptr; -} -inline bool ReturnStmt::has_returnval() const { - return _internal_has_returnval(); +// int32 number = 1 [json_name = "number"]; +inline void ParamRef::clear_number() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.number_ = 0; } -inline void ReturnStmt::clear_returnval() { - if (GetArenaForAllocation() == nullptr && _impl_.returnval_ != nullptr) { - delete _impl_.returnval_; - } - _impl_.returnval_ = nullptr; +inline ::int32_t ParamRef::number() const { + // @@protoc_insertion_point(field_get:pg_query.ParamRef.number) + return _internal_number(); } -inline const ::pg_query::Node& ReturnStmt::_internal_returnval() const { - const ::pg_query::Node* p = _impl_.returnval_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void ParamRef::set_number(::int32_t value) { + _internal_set_number(value); + // @@protoc_insertion_point(field_set:pg_query.ParamRef.number) } -inline const ::pg_query::Node& ReturnStmt::returnval() const { - // @@protoc_insertion_point(field_get:pg_query.ReturnStmt.returnval) - return _internal_returnval(); +inline ::int32_t ParamRef::_internal_number() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.number_; } -inline void ReturnStmt::unsafe_arena_set_allocated_returnval( - ::pg_query::Node* returnval) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.returnval_); - } - _impl_.returnval_ = returnval; - if (returnval) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ReturnStmt.returnval) +inline void ParamRef::_internal_set_number(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.number_ = value; } -inline ::pg_query::Node* ReturnStmt::release_returnval() { - - ::pg_query::Node* temp = _impl_.returnval_; - _impl_.returnval_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// int32 location = 2 [json_name = "location"]; +inline void ParamRef::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline ::pg_query::Node* ReturnStmt::unsafe_arena_release_returnval() { - // @@protoc_insertion_point(field_release:pg_query.ReturnStmt.returnval) - - ::pg_query::Node* temp = _impl_.returnval_; - _impl_.returnval_ = nullptr; - return temp; +inline ::int32_t ParamRef::location() const { + // @@protoc_insertion_point(field_get:pg_query.ParamRef.location) + return _internal_location(); } -inline ::pg_query::Node* ReturnStmt::_internal_mutable_returnval() { - - if (_impl_.returnval_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.returnval_ = p; - } - return _impl_.returnval_; +inline void ParamRef::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.ParamRef.location) } -inline ::pg_query::Node* ReturnStmt::mutable_returnval() { - ::pg_query::Node* _msg = _internal_mutable_returnval(); - // @@protoc_insertion_point(field_mutable:pg_query.ReturnStmt.returnval) - return _msg; +inline ::int32_t ParamRef::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void ReturnStmt::set_allocated_returnval(::pg_query::Node* returnval) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.returnval_; - } - if (returnval) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(returnval); - if (message_arena != submessage_arena) { - returnval = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, returnval, submessage_arena); - } - - } else { - - } - _impl_.returnval_ = returnval; - // @@protoc_insertion_point(field_set_allocated:pg_query.ReturnStmt.returnval) +inline void ParamRef::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// PLAssignStmt +// A_Expr -// string name = 1 [json_name = "name"]; -inline void PLAssignStmt::clear_name() { - _impl_.name_.ClearToEmpty(); +// .pg_query.A_Expr_Kind kind = 1 [json_name = "kind"]; +inline void A_Expr::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; } -inline const std::string& PLAssignStmt::name() const { - // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.name) - return _internal_name(); +inline ::pg_query::A_Expr_Kind A_Expr::kind() const { + // @@protoc_insertion_point(field_get:pg_query.A_Expr.kind) + return _internal_kind(); } -template -inline PROTOBUF_ALWAYS_INLINE -void PLAssignStmt::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.PLAssignStmt.name) +inline void A_Expr::set_kind(::pg_query::A_Expr_Kind value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.A_Expr.kind) } -inline std::string* PLAssignStmt::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.PLAssignStmt.name) - return _s; +inline ::pg_query::A_Expr_Kind A_Expr::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::A_Expr_Kind>(_impl_.kind_); } -inline const std::string& PLAssignStmt::_internal_name() const { - return _impl_.name_.Get(); +inline void A_Expr::_internal_set_kind(::pg_query::A_Expr_Kind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; } -inline void PLAssignStmt::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); + +// repeated .pg_query.Node name = 2 [json_name = "name"]; +inline int A_Expr::_internal_name_size() const { + return _internal_name().size(); } -inline std::string* PLAssignStmt::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline int A_Expr::name_size() const { + return _internal_name_size(); } -inline std::string* PLAssignStmt::release_name() { - // @@protoc_insertion_point(field_release:pg_query.PLAssignStmt.name) - return _impl_.name_.Release(); +inline void A_Expr::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.Clear(); } -inline void PLAssignStmt::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.PLAssignStmt.name) +inline ::pg_query::Node* A_Expr::mutable_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.A_Expr.name) + return _internal_mutable_name()->Mutable(index); } - -// repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; -inline int PLAssignStmt::_internal_indirection_size() const { - return _impl_.indirection_.size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* A_Expr::mutable_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.A_Expr.name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_name(); } -inline int PLAssignStmt::indirection_size() const { - return _internal_indirection_size(); +inline const ::pg_query::Node& A_Expr::name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Expr.name) + return _internal_name().Get(index); } -inline void PLAssignStmt::clear_indirection() { - _impl_.indirection_.Clear(); +inline ::pg_query::Node* A_Expr::add_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.A_Expr.name) + return _add; } -inline ::pg_query::Node* PLAssignStmt::mutable_indirection(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.PLAssignStmt.indirection) - return _impl_.indirection_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& A_Expr::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.A_Expr.name) + return _internal_name(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -PLAssignStmt::mutable_indirection() { - // @@protoc_insertion_point(field_mutable_list:pg_query.PLAssignStmt.indirection) - return &_impl_.indirection_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +A_Expr::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_; } -inline const ::pg_query::Node& PLAssignStmt::_internal_indirection(int index) const { - return _impl_.indirection_.Get(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +A_Expr::_internal_mutable_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.name_; } -inline const ::pg_query::Node& PLAssignStmt::indirection(int index) const { - // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.indirection) - return _internal_indirection(index); + +// .pg_query.Node lexpr = 3 [json_name = "lexpr"]; +inline bool A_Expr::has_lexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.lexpr_ != nullptr); + return value; } -inline ::pg_query::Node* PLAssignStmt::_internal_add_indirection() { - return _impl_.indirection_.Add(); +inline void A_Expr::clear_lexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.lexpr_ != nullptr) _impl_.lexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* PLAssignStmt::add_indirection() { - ::pg_query::Node* _add = _internal_add_indirection(); - // @@protoc_insertion_point(field_add:pg_query.PLAssignStmt.indirection) - return _add; +inline const ::pg_query::Node& A_Expr::_internal_lexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.lexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -PLAssignStmt::indirection() const { - // @@protoc_insertion_point(field_list:pg_query.PLAssignStmt.indirection) - return _impl_.indirection_; +inline const ::pg_query::Node& A_Expr::lexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Expr.lexpr) + return _internal_lexpr(); } - -// int32 nnames = 3 [json_name = "nnames"]; -inline void PLAssignStmt::clear_nnames() { - _impl_.nnames_ = 0; +inline void A_Expr::unsafe_arena_set_allocated_lexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.lexpr_); + } + _impl_.lexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Expr.lexpr) } -inline int32_t PLAssignStmt::_internal_nnames() const { - return _impl_.nnames_; +inline ::pg_query::Node* A_Expr::release_lexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.lexpr_; + _impl_.lexpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int32_t PLAssignStmt::nnames() const { - // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.nnames) - return _internal_nnames(); +inline ::pg_query::Node* A_Expr::unsafe_arena_release_lexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.A_Expr.lexpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.lexpr_; + _impl_.lexpr_ = nullptr; + return temp; } -inline void PLAssignStmt::_internal_set_nnames(int32_t value) { - - _impl_.nnames_ = value; +inline ::pg_query::Node* A_Expr::_internal_mutable_lexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.lexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.lexpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.lexpr_; } -inline void PLAssignStmt::set_nnames(int32_t value) { - _internal_set_nnames(value); - // @@protoc_insertion_point(field_set:pg_query.PLAssignStmt.nnames) +inline ::pg_query::Node* A_Expr::mutable_lexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_lexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Expr.lexpr) + return _msg; } +inline void A_Expr::set_allocated_lexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.lexpr_); + } -// .pg_query.SelectStmt val = 4 [json_name = "val"]; -inline bool PLAssignStmt::_internal_has_val() const { - return this != internal_default_instance() && _impl_.val_ != nullptr; + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.lexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.A_Expr.lexpr) } -inline bool PLAssignStmt::has_val() const { - return _internal_has_val(); + +// .pg_query.Node rexpr = 4 [json_name = "rexpr"]; +inline bool A_Expr::has_rexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.rexpr_ != nullptr); + return value; } -inline void PLAssignStmt::clear_val() { - if (GetArenaForAllocation() == nullptr && _impl_.val_ != nullptr) { - delete _impl_.val_; - } - _impl_.val_ = nullptr; +inline void A_Expr::clear_rexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.rexpr_ != nullptr) _impl_.rexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::SelectStmt& PLAssignStmt::_internal_val() const { - const ::pg_query::SelectStmt* p = _impl_.val_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_SelectStmt_default_instance_); +inline const ::pg_query::Node& A_Expr::_internal_rexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.rexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::SelectStmt& PLAssignStmt::val() const { - // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.val) - return _internal_val(); +inline const ::pg_query::Node& A_Expr::rexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Expr.rexpr) + return _internal_rexpr(); } -inline void PLAssignStmt::unsafe_arena_set_allocated_val( - ::pg_query::SelectStmt* val) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.val_); +inline void A_Expr::unsafe_arena_set_allocated_rexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.rexpr_); } - _impl_.val_ = val; - if (val) { - + _impl_.rexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PLAssignStmt.val) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Expr.rexpr) } -inline ::pg_query::SelectStmt* PLAssignStmt::release_val() { - - ::pg_query::SelectStmt* temp = _impl_.val_; - _impl_.val_ = nullptr; +inline ::pg_query::Node* A_Expr::release_rexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.rexpr_; + _impl_.rexpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::SelectStmt* PLAssignStmt::unsafe_arena_release_val() { - // @@protoc_insertion_point(field_release:pg_query.PLAssignStmt.val) - - ::pg_query::SelectStmt* temp = _impl_.val_; - _impl_.val_ = nullptr; +inline ::pg_query::Node* A_Expr::unsafe_arena_release_rexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.A_Expr.rexpr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.rexpr_; + _impl_.rexpr_ = nullptr; return temp; } -inline ::pg_query::SelectStmt* PLAssignStmt::_internal_mutable_val() { - - if (_impl_.val_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::SelectStmt>(GetArenaForAllocation()); - _impl_.val_ = p; +inline ::pg_query::Node* A_Expr::_internal_mutable_rexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.rexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.rexpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.val_; + return _impl_.rexpr_; } -inline ::pg_query::SelectStmt* PLAssignStmt::mutable_val() { - ::pg_query::SelectStmt* _msg = _internal_mutable_val(); - // @@protoc_insertion_point(field_mutable:pg_query.PLAssignStmt.val) +inline ::pg_query::Node* A_Expr::mutable_rexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_rexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Expr.rexpr) return _msg; } -inline void PLAssignStmt::set_allocated_val(::pg_query::SelectStmt* val) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void A_Expr::set_allocated_rexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.val_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.rexpr_); } - if (val) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(val); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - val = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, val, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.val_ = val; - // @@protoc_insertion_point(field_set_allocated:pg_query.PLAssignStmt.val) + + _impl_.rexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.A_Expr.rexpr) } // int32 location = 5 [json_name = "location"]; -inline void PLAssignStmt::clear_location() { +inline void A_Expr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.location_ = 0; } -inline int32_t PLAssignStmt::_internal_location() const { - return _impl_.location_; -} -inline int32_t PLAssignStmt::location() const { - // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.location) +inline ::int32_t A_Expr::location() const { + // @@protoc_insertion_point(field_get:pg_query.A_Expr.location) return _internal_location(); } -inline void PLAssignStmt::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void PLAssignStmt::set_location(int32_t value) { +inline void A_Expr::set_location(::int32_t value) { _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.PLAssignStmt.location) + // @@protoc_insertion_point(field_set:pg_query.A_Expr.location) +} +inline ::int32_t A_Expr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void A_Expr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// AlterTableStmt +// TypeCast -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool AlterTableStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; -} -inline bool AlterTableStmt::has_relation() const { - return _internal_has_relation(); +// .pg_query.Node arg = 1 [json_name = "arg"]; +inline bool TypeCast::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void AlterTableStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void TypeCast::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RangeVar& AlterTableStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::Node& TypeCast::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RangeVar& AlterTableStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableStmt.relation) - return _internal_relation(); +inline const ::pg_query::Node& TypeCast::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TypeCast.arg) + return _internal_arg(); } -inline void AlterTableStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void TypeCast::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterTableStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TypeCast.arg) } -inline ::pg_query::RangeVar* AlterTableStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* TypeCast::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* AlterTableStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.AlterTableStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* TypeCast::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TypeCast.arg) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::RangeVar* AlterTableStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::Node* TypeCast::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.relation_; + return _impl_.arg_; } -inline ::pg_query::RangeVar* AlterTableStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableStmt.relation) +inline ::pg_query::Node* TypeCast::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.TypeCast.arg) return _msg; } -inline void AlterTableStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void TypeCast::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableStmt.relation) -} -// repeated .pg_query.Node cmds = 2 [json_name = "cmds"]; -inline int AlterTableStmt::_internal_cmds_size() const { - return _impl_.cmds_.size(); -} -inline int AlterTableStmt::cmds_size() const { - return _internal_cmds_size(); -} -inline void AlterTableStmt::clear_cmds() { - _impl_.cmds_.Clear(); -} -inline ::pg_query::Node* AlterTableStmt::mutable_cmds(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableStmt.cmds) - return _impl_.cmds_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTableStmt::mutable_cmds() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTableStmt.cmds) - return &_impl_.cmds_; -} -inline const ::pg_query::Node& AlterTableStmt::_internal_cmds(int index) const { - return _impl_.cmds_.Get(index); -} -inline const ::pg_query::Node& AlterTableStmt::cmds(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableStmt.cmds) - return _internal_cmds(index); -} -inline ::pg_query::Node* AlterTableStmt::_internal_add_cmds() { - return _impl_.cmds_.Add(); -} -inline ::pg_query::Node* AlterTableStmt::add_cmds() { - ::pg_query::Node* _add = _internal_add_cmds(); - // @@protoc_insertion_point(field_add:pg_query.AlterTableStmt.cmds) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTableStmt::cmds() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTableStmt.cmds) - return _impl_.cmds_; + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.TypeCast.arg) } -// .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; -inline void AlterTableStmt::clear_objtype() { - _impl_.objtype_ = 0; +// .pg_query.TypeName type_name = 2 [json_name = "typeName"]; +inline bool TypeCast::has_type_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.type_name_ != nullptr); + return value; } -inline ::pg_query::ObjectType AlterTableStmt::_internal_objtype() const { - return static_cast< ::pg_query::ObjectType >(_impl_.objtype_); +inline void TypeCast::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.type_name_ != nullptr) _impl_.type_name_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::ObjectType AlterTableStmt::objtype() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableStmt.objtype) - return _internal_objtype(); +inline const ::pg_query::TypeName& TypeCast::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.type_name_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline void AlterTableStmt::_internal_set_objtype(::pg_query::ObjectType value) { - - _impl_.objtype_ = value; +inline const ::pg_query::TypeName& TypeCast::type_name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TypeCast.type_name) + return _internal_type_name(); } -inline void AlterTableStmt::set_objtype(::pg_query::ObjectType value) { - _internal_set_objtype(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableStmt.objtype) +inline void TypeCast::unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.type_name_); + } + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TypeCast.type_name) } +inline ::pg_query::TypeName* TypeCast::release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool missing_ok = 4 [json_name = "missing_ok"]; -inline void AlterTableStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; -} -inline bool AlterTableStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; -} -inline bool AlterTableStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableStmt.missing_ok) - return _internal_missing_ok(); -} -inline void AlterTableStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; -} -inline void AlterTableStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableStmt.missing_ok) + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::TypeName* released = _impl_.type_name_; + _impl_.type_name_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::TypeName* TypeCast::unsafe_arena_release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TypeCast.type_name) -// ------------------------------------------------------------------- - -// AlterTableCmd - -// .pg_query.AlterTableType subtype = 1 [json_name = "subtype"]; -inline void AlterTableCmd::clear_subtype() { - _impl_.subtype_ = 0; -} -inline ::pg_query::AlterTableType AlterTableCmd::_internal_subtype() const { - return static_cast< ::pg_query::AlterTableType >(_impl_.subtype_); -} -inline ::pg_query::AlterTableType AlterTableCmd::subtype() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.subtype) - return _internal_subtype(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::TypeName* temp = _impl_.type_name_; + _impl_.type_name_ = nullptr; + return temp; } -inline void AlterTableCmd::_internal_set_subtype(::pg_query::AlterTableType value) { - - _impl_.subtype_ = value; +inline ::pg_query::TypeName* TypeCast::_internal_mutable_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.type_name_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(p); + } + return _impl_.type_name_; } -inline void AlterTableCmd::set_subtype(::pg_query::AlterTableType value) { - _internal_set_subtype(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.subtype) +inline ::pg_query::TypeName* TypeCast::mutable_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_type_name(); + // @@protoc_insertion_point(field_mutable:pg_query.TypeCast.type_name) + return _msg; } +inline void TypeCast::set_allocated_type_name(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.type_name_); + } -// string name = 2 [json_name = "name"]; -inline void AlterTableCmd::clear_name() { - _impl_.name_.ClearToEmpty(); -} -inline const std::string& AlterTableCmd::name() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.name) - return _internal_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AlterTableCmd::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.name) -} -inline std::string* AlterTableCmd::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableCmd.name) - return _s; -} -inline const std::string& AlterTableCmd::_internal_name() const { - return _impl_.name_.Get(); -} -inline void AlterTableCmd::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); -} -inline std::string* AlterTableCmd::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); -} -inline std::string* AlterTableCmd::release_name() { - // @@protoc_insertion_point(field_release:pg_query.AlterTableCmd.name) - return _impl_.name_.Release(); -} -inline void AlterTableCmd::set_allocated_name(std::string* name) { - if (name != nullptr) { - + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); + _impl_._has_bits_[0] &= ~0x00000002u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableCmd.name) + + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.TypeCast.type_name) } -// int32 num = 3 [json_name = "num"]; -inline void AlterTableCmd::clear_num() { - _impl_.num_ = 0; +// int32 location = 3 [json_name = "location"]; +inline void TypeCast::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline int32_t AlterTableCmd::_internal_num() const { - return _impl_.num_; +inline ::int32_t TypeCast::location() const { + // @@protoc_insertion_point(field_get:pg_query.TypeCast.location) + return _internal_location(); } -inline int32_t AlterTableCmd::num() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.num) - return _internal_num(); +inline void TypeCast::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.TypeCast.location) } -inline void AlterTableCmd::_internal_set_num(int32_t value) { - - _impl_.num_ = value; +inline ::int32_t TypeCast::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void AlterTableCmd::set_num(int32_t value) { - _internal_set_num(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.num) +inline void TypeCast::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.RoleSpec newowner = 4 [json_name = "newowner"]; -inline bool AlterTableCmd::_internal_has_newowner() const { - return this != internal_default_instance() && _impl_.newowner_ != nullptr; -} -inline bool AlterTableCmd::has_newowner() const { - return _internal_has_newowner(); +// ------------------------------------------------------------------- + +// CollateClause + +// .pg_query.Node arg = 1 [json_name = "arg"]; +inline bool CollateClause::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void AlterTableCmd::clear_newowner() { - if (GetArenaForAllocation() == nullptr && _impl_.newowner_ != nullptr) { - delete _impl_.newowner_; - } - _impl_.newowner_ = nullptr; +inline void CollateClause::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RoleSpec& AlterTableCmd::_internal_newowner() const { - const ::pg_query::RoleSpec* p = _impl_.newowner_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::Node& CollateClause::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RoleSpec& AlterTableCmd::newowner() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.newowner) - return _internal_newowner(); +inline const ::pg_query::Node& CollateClause::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CollateClause.arg) + return _internal_arg(); } -inline void AlterTableCmd::unsafe_arena_set_allocated_newowner( - ::pg_query::RoleSpec* newowner) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.newowner_); +inline void CollateClause::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.newowner_ = newowner; - if (newowner) { - + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterTableCmd.newowner) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CollateClause.arg) } -inline ::pg_query::RoleSpec* AlterTableCmd::release_newowner() { - - ::pg_query::RoleSpec* temp = _impl_.newowner_; - _impl_.newowner_ = nullptr; +inline ::pg_query::Node* CollateClause::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* AlterTableCmd::unsafe_arena_release_newowner() { - // @@protoc_insertion_point(field_release:pg_query.AlterTableCmd.newowner) - - ::pg_query::RoleSpec* temp = _impl_.newowner_; - _impl_.newowner_ = nullptr; +inline ::pg_query::Node* CollateClause::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CollateClause.arg) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* AlterTableCmd::_internal_mutable_newowner() { - - if (_impl_.newowner_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.newowner_ = p; +inline ::pg_query::Node* CollateClause::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.newowner_; + return _impl_.arg_; } -inline ::pg_query::RoleSpec* AlterTableCmd::mutable_newowner() { - ::pg_query::RoleSpec* _msg = _internal_mutable_newowner(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableCmd.newowner) +inline ::pg_query::Node* CollateClause::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.CollateClause.arg) return _msg; } -inline void AlterTableCmd::set_allocated_newowner(::pg_query::RoleSpec* newowner) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CollateClause::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.newowner_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); } - if (newowner) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(newowner); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - newowner = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, newowner, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.newowner_ = newowner; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableCmd.newowner) + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CollateClause.arg) } -// .pg_query.Node def = 5 [json_name = "def"]; -inline bool AlterTableCmd::_internal_has_def() const { - return this != internal_default_instance() && _impl_.def_ != nullptr; +// repeated .pg_query.Node collname = 2 [json_name = "collname"]; +inline int CollateClause::_internal_collname_size() const { + return _internal_collname().size(); } -inline bool AlterTableCmd::has_def() const { - return _internal_has_def(); +inline int CollateClause::collname_size() const { + return _internal_collname_size(); } -inline void AlterTableCmd::clear_def() { - if (GetArenaForAllocation() == nullptr && _impl_.def_ != nullptr) { - delete _impl_.def_; - } - _impl_.def_ = nullptr; +inline void CollateClause::clear_collname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.collname_.Clear(); } -inline const ::pg_query::Node& AlterTableCmd::_internal_def() const { - const ::pg_query::Node* p = _impl_.def_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::Node* CollateClause::mutable_collname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CollateClause.collname) + return _internal_mutable_collname()->Mutable(index); } -inline const ::pg_query::Node& AlterTableCmd::def() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.def) - return _internal_def(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CollateClause::mutable_collname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CollateClause.collname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_collname(); } -inline void AlterTableCmd::unsafe_arena_set_allocated_def( - ::pg_query::Node* def) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.def_); - } - _impl_.def_ = def; - if (def) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterTableCmd.def) +inline const ::pg_query::Node& CollateClause::collname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CollateClause.collname) + return _internal_collname().Get(index); } -inline ::pg_query::Node* AlterTableCmd::release_def() { - - ::pg_query::Node* temp = _impl_.def_; - _impl_.def_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::pg_query::Node* CollateClause::add_collname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_collname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CollateClause.collname) + return _add; } -inline ::pg_query::Node* AlterTableCmd::unsafe_arena_release_def() { - // @@protoc_insertion_point(field_release:pg_query.AlterTableCmd.def) - - ::pg_query::Node* temp = _impl_.def_; - _impl_.def_ = nullptr; - return temp; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CollateClause::collname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CollateClause.collname) + return _internal_collname(); } -inline ::pg_query::Node* AlterTableCmd::_internal_mutable_def() { - - if (_impl_.def_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.def_ = p; - } - return _impl_.def_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CollateClause::_internal_collname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.collname_; } -inline ::pg_query::Node* AlterTableCmd::mutable_def() { - ::pg_query::Node* _msg = _internal_mutable_def(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableCmd.def) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CollateClause::_internal_mutable_collname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.collname_; } -inline void AlterTableCmd::set_allocated_def(::pg_query::Node* def) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.def_; - } - if (def) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(def); - if (message_arena != submessage_arena) { - def = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, def, submessage_arena); - } - - } else { - - } - _impl_.def_ = def; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableCmd.def) + +// int32 location = 3 [json_name = "location"]; +inline void CollateClause::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; +} +inline ::int32_t CollateClause::location() const { + // @@protoc_insertion_point(field_get:pg_query.CollateClause.location) + return _internal_location(); +} +inline void CollateClause::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.CollateClause.location) +} +inline ::int32_t CollateClause::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void CollateClause::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.DropBehavior behavior = 6 [json_name = "behavior"]; -inline void AlterTableCmd::clear_behavior() { - _impl_.behavior_ = 0; +// ------------------------------------------------------------------- + +// RoleSpec + +// .pg_query.RoleSpecType roletype = 1 [json_name = "roletype"]; +inline void RoleSpec::clear_roletype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.roletype_ = 0; } -inline ::pg_query::DropBehavior AlterTableCmd::_internal_behavior() const { - return static_cast< ::pg_query::DropBehavior >(_impl_.behavior_); +inline ::pg_query::RoleSpecType RoleSpec::roletype() const { + // @@protoc_insertion_point(field_get:pg_query.RoleSpec.roletype) + return _internal_roletype(); } -inline ::pg_query::DropBehavior AlterTableCmd::behavior() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.behavior) - return _internal_behavior(); +inline void RoleSpec::set_roletype(::pg_query::RoleSpecType value) { + _internal_set_roletype(value); + // @@protoc_insertion_point(field_set:pg_query.RoleSpec.roletype) } -inline void AlterTableCmd::_internal_set_behavior(::pg_query::DropBehavior value) { - - _impl_.behavior_ = value; +inline ::pg_query::RoleSpecType RoleSpec::_internal_roletype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::RoleSpecType>(_impl_.roletype_); } -inline void AlterTableCmd::set_behavior(::pg_query::DropBehavior value) { - _internal_set_behavior(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.behavior) +inline void RoleSpec::_internal_set_roletype(::pg_query::RoleSpecType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.roletype_ = value; } -// bool missing_ok = 7 [json_name = "missing_ok"]; -inline void AlterTableCmd::clear_missing_ok() { - _impl_.missing_ok_ = false; +// string rolename = 2 [json_name = "rolename"]; +inline void RoleSpec::clear_rolename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rolename_.ClearToEmpty(); } -inline bool AlterTableCmd::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline const std::string& RoleSpec::rolename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RoleSpec.rolename) + return _internal_rolename(); } -inline bool AlterTableCmd::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.missing_ok) - return _internal_missing_ok(); +template +inline PROTOBUF_ALWAYS_INLINE void RoleSpec::set_rolename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rolename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RoleSpec.rolename) } -inline void AlterTableCmd::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline std::string* RoleSpec::mutable_rolename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_rolename(); + // @@protoc_insertion_point(field_mutable:pg_query.RoleSpec.rolename) + return _s; } -inline void AlterTableCmd::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.missing_ok) +inline const std::string& RoleSpec::_internal_rolename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rolename_.Get(); +} +inline void RoleSpec::_internal_set_rolename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rolename_.Set(value, GetArena()); +} +inline std::string* RoleSpec::_internal_mutable_rolename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.rolename_.Mutable( GetArena()); +} +inline std::string* RoleSpec::release_rolename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RoleSpec.rolename) + return _impl_.rolename_.Release(); +} +inline void RoleSpec::set_allocated_rolename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rolename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.rolename_.IsDefault()) { + _impl_.rolename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RoleSpec.rolename) } -// bool recurse = 8 [json_name = "recurse"]; -inline void AlterTableCmd::clear_recurse() { - _impl_.recurse_ = false; +// int32 location = 3 [json_name = "location"]; +inline void RoleSpec::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool AlterTableCmd::_internal_recurse() const { - return _impl_.recurse_; +inline ::int32_t RoleSpec::location() const { + // @@protoc_insertion_point(field_get:pg_query.RoleSpec.location) + return _internal_location(); } -inline bool AlterTableCmd::recurse() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.recurse) - return _internal_recurse(); +inline void RoleSpec::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.RoleSpec.location) } -inline void AlterTableCmd::_internal_set_recurse(bool value) { - - _impl_.recurse_ = value; +inline ::int32_t RoleSpec::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void AlterTableCmd::set_recurse(bool value) { - _internal_set_recurse(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.recurse) +inline void RoleSpec::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// AlterDomainStmt +// FuncCall -// string subtype = 1 [json_name = "subtype"]; -inline void AlterDomainStmt::clear_subtype() { - _impl_.subtype_.ClearToEmpty(); +// repeated .pg_query.Node funcname = 1 [json_name = "funcname"]; +inline int FuncCall::_internal_funcname_size() const { + return _internal_funcname().size(); } -inline const std::string& AlterDomainStmt::subtype() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.subtype) - return _internal_subtype(); +inline int FuncCall::funcname_size() const { + return _internal_funcname_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterDomainStmt::set_subtype(ArgT0&& arg0, ArgT... args) { - - _impl_.subtype_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterDomainStmt.subtype) +inline void FuncCall::clear_funcname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcname_.Clear(); } -inline std::string* AlterDomainStmt::mutable_subtype() { - std::string* _s = _internal_mutable_subtype(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterDomainStmt.subtype) - return _s; +inline ::pg_query::Node* FuncCall::mutable_funcname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.funcname) + return _internal_mutable_funcname()->Mutable(index); } -inline const std::string& AlterDomainStmt::_internal_subtype() const { - return _impl_.subtype_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* FuncCall::mutable_funcname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.FuncCall.funcname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_funcname(); } -inline void AlterDomainStmt::_internal_set_subtype(const std::string& value) { - - _impl_.subtype_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& FuncCall::funcname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.funcname) + return _internal_funcname().Get(index); } -inline std::string* AlterDomainStmt::_internal_mutable_subtype() { - - return _impl_.subtype_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* FuncCall::add_funcname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_funcname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.FuncCall.funcname) + return _add; } -inline std::string* AlterDomainStmt::release_subtype() { - // @@protoc_insertion_point(field_release:pg_query.AlterDomainStmt.subtype) - return _impl_.subtype_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& FuncCall::funcname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.FuncCall.funcname) + return _internal_funcname(); } -inline void AlterDomainStmt::set_allocated_subtype(std::string* subtype) { - if (subtype != nullptr) { - - } else { - - } - _impl_.subtype_.SetAllocated(subtype, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.subtype_.IsDefault()) { - _impl_.subtype_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDomainStmt.subtype) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +FuncCall::_internal_funcname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcname_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +FuncCall::_internal_mutable_funcname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.funcname_; } -// repeated .pg_query.Node type_name = 2 [json_name = "typeName"]; -inline int AlterDomainStmt::_internal_type_name_size() const { - return _impl_.type_name_.size(); +// repeated .pg_query.Node args = 2 [json_name = "args"]; +inline int FuncCall::_internal_args_size() const { + return _internal_args().size(); } -inline int AlterDomainStmt::type_name_size() const { - return _internal_type_name_size(); +inline int FuncCall::args_size() const { + return _internal_args_size(); } -inline void AlterDomainStmt::clear_type_name() { - _impl_.type_name_.Clear(); +inline void FuncCall::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline ::pg_query::Node* AlterDomainStmt::mutable_type_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterDomainStmt.type_name) - return _impl_.type_name_.Mutable(index); +inline ::pg_query::Node* FuncCall::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.args) + return _internal_mutable_args()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterDomainStmt::mutable_type_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterDomainStmt.type_name) - return &_impl_.type_name_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* FuncCall::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.FuncCall.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } -inline const ::pg_query::Node& AlterDomainStmt::_internal_type_name(int index) const { - return _impl_.type_name_.Get(index); +inline const ::pg_query::Node& FuncCall::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.args) + return _internal_args().Get(index); } -inline const ::pg_query::Node& AlterDomainStmt::type_name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.type_name) - return _internal_type_name(index); +inline ::pg_query::Node* FuncCall::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.FuncCall.args) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& FuncCall::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.FuncCall.args) + return _internal_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +FuncCall::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +FuncCall::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; +} + +// repeated .pg_query.Node agg_order = 3 [json_name = "agg_order"]; +inline int FuncCall::_internal_agg_order_size() const { + return _internal_agg_order().size(); +} +inline int FuncCall::agg_order_size() const { + return _internal_agg_order_size(); +} +inline void FuncCall::clear_agg_order() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.agg_order_.Clear(); } -inline ::pg_query::Node* AlterDomainStmt::_internal_add_type_name() { - return _impl_.type_name_.Add(); +inline ::pg_query::Node* FuncCall::mutable_agg_order(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.agg_order) + return _internal_mutable_agg_order()->Mutable(index); } -inline ::pg_query::Node* AlterDomainStmt::add_type_name() { - ::pg_query::Node* _add = _internal_add_type_name(); - // @@protoc_insertion_point(field_add:pg_query.AlterDomainStmt.type_name) - return _add; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* FuncCall::mutable_agg_order() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.FuncCall.agg_order) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_agg_order(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterDomainStmt::type_name() const { - // @@protoc_insertion_point(field_list:pg_query.AlterDomainStmt.type_name) - return _impl_.type_name_; +inline const ::pg_query::Node& FuncCall::agg_order(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_order) + return _internal_agg_order().Get(index); } - -// string name = 3 [json_name = "name"]; -inline void AlterDomainStmt::clear_name() { - _impl_.name_.ClearToEmpty(); +inline ::pg_query::Node* FuncCall::add_agg_order() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_agg_order()->Add(); + // @@protoc_insertion_point(field_add:pg_query.FuncCall.agg_order) + return _add; } -inline const std::string& AlterDomainStmt::name() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.name) - return _internal_name(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& FuncCall::agg_order() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.FuncCall.agg_order) + return _internal_agg_order(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterDomainStmt::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterDomainStmt.name) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +FuncCall::_internal_agg_order() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.agg_order_; } -inline std::string* AlterDomainStmt::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterDomainStmt.name) - return _s; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +FuncCall::_internal_mutable_agg_order() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.agg_order_; } -inline const std::string& AlterDomainStmt::_internal_name() const { - return _impl_.name_.Get(); + +// .pg_query.Node agg_filter = 4 [json_name = "agg_filter"]; +inline bool FuncCall::has_agg_filter() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.agg_filter_ != nullptr); + return value; } -inline void AlterDomainStmt::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void FuncCall::clear_agg_filter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.agg_filter_ != nullptr) _impl_.agg_filter_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* AlterDomainStmt::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Node& FuncCall::_internal_agg_filter() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.agg_filter_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* AlterDomainStmt::release_name() { - // @@protoc_insertion_point(field_release:pg_query.AlterDomainStmt.name) - return _impl_.name_.Release(); +inline const ::pg_query::Node& FuncCall::agg_filter() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_filter) + return _internal_agg_filter(); } -inline void AlterDomainStmt::set_allocated_name(std::string* name) { - if (name != nullptr) { - +inline void FuncCall::unsafe_arena_set_allocated_agg_filter(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.agg_filter_); + } + _impl_.agg_filter_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FuncCall.agg_filter) +} +inline ::pg_query::Node* FuncCall::release_agg_filter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.agg_filter_; + _impl_.agg_filter_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDomainStmt.name) +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* FuncCall::unsafe_arena_release_agg_filter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FuncCall.agg_filter) -// .pg_query.Node def = 4 [json_name = "def"]; -inline bool AlterDomainStmt::_internal_has_def() const { - return this != internal_default_instance() && _impl_.def_ != nullptr; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.agg_filter_; + _impl_.agg_filter_ = nullptr; + return temp; } -inline bool AlterDomainStmt::has_def() const { - return _internal_has_def(); +inline ::pg_query::Node* FuncCall::_internal_mutable_agg_filter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.agg_filter_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.agg_filter_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.agg_filter_; } -inline void AlterDomainStmt::clear_def() { - if (GetArenaForAllocation() == nullptr && _impl_.def_ != nullptr) { - delete _impl_.def_; +inline ::pg_query::Node* FuncCall::mutable_agg_filter() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_agg_filter(); + // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.agg_filter) + return _msg; +} +inline void FuncCall::set_allocated_agg_filter(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.agg_filter_); } - _impl_.def_ = nullptr; + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.agg_filter_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FuncCall.agg_filter) } -inline const ::pg_query::Node& AlterDomainStmt::_internal_def() const { - const ::pg_query::Node* p = _impl_.def_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + +// .pg_query.WindowDef over = 5 [json_name = "over"]; +inline bool FuncCall::has_over() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.over_ != nullptr); + return value; } -inline const ::pg_query::Node& AlterDomainStmt::def() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.def) - return _internal_def(); +inline void FuncCall::clear_over() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.over_ != nullptr) _impl_.over_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline void AlterDomainStmt::unsafe_arena_set_allocated_def( - ::pg_query::Node* def) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.def_); +inline const ::pg_query::WindowDef& FuncCall::_internal_over() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::WindowDef* p = _impl_.over_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_WindowDef_default_instance_); +} +inline const ::pg_query::WindowDef& FuncCall::over() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.over) + return _internal_over(); +} +inline void FuncCall::unsafe_arena_set_allocated_over(::pg_query::WindowDef* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.over_); } - _impl_.def_ = def; - if (def) { - + _impl_.over_ = reinterpret_cast<::pg_query::WindowDef*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterDomainStmt.def) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FuncCall.over) } -inline ::pg_query::Node* AlterDomainStmt::release_def() { - - ::pg_query::Node* temp = _impl_.def_; - _impl_.def_ = nullptr; +inline ::pg_query::WindowDef* FuncCall::release_over() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::WindowDef* released = _impl_.over_; + _impl_.over_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* AlterDomainStmt::unsafe_arena_release_def() { - // @@protoc_insertion_point(field_release:pg_query.AlterDomainStmt.def) - - ::pg_query::Node* temp = _impl_.def_; - _impl_.def_ = nullptr; +inline ::pg_query::WindowDef* FuncCall::unsafe_arena_release_over() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FuncCall.over) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::WindowDef* temp = _impl_.over_; + _impl_.over_ = nullptr; return temp; } -inline ::pg_query::Node* AlterDomainStmt::_internal_mutable_def() { - - if (_impl_.def_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.def_ = p; +inline ::pg_query::WindowDef* FuncCall::_internal_mutable_over() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.over_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::WindowDef>(GetArena()); + _impl_.over_ = reinterpret_cast<::pg_query::WindowDef*>(p); } - return _impl_.def_; + return _impl_.over_; } -inline ::pg_query::Node* AlterDomainStmt::mutable_def() { - ::pg_query::Node* _msg = _internal_mutable_def(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterDomainStmt.def) +inline ::pg_query::WindowDef* FuncCall::mutable_over() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WindowDef* _msg = _internal_mutable_over(); + // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.over) return _msg; } -inline void AlterDomainStmt::set_allocated_def(::pg_query::Node* def) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void FuncCall::set_allocated_over(::pg_query::WindowDef* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.def_; + delete reinterpret_cast<::pg_query::WindowDef*>(_impl_.over_); } - if (def) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(def); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::WindowDef*>(value)->GetArena(); if (message_arena != submessage_arena) { - def = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, def, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.def_ = def; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDomainStmt.def) + + _impl_.over_ = reinterpret_cast<::pg_query::WindowDef*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FuncCall.over) } -// .pg_query.DropBehavior behavior = 5 [json_name = "behavior"]; -inline void AlterDomainStmt::clear_behavior() { - _impl_.behavior_ = 0; +// bool agg_within_group = 6 [json_name = "agg_within_group"]; +inline void FuncCall::clear_agg_within_group() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.agg_within_group_ = false; } -inline ::pg_query::DropBehavior AlterDomainStmt::_internal_behavior() const { - return static_cast< ::pg_query::DropBehavior >(_impl_.behavior_); +inline bool FuncCall::agg_within_group() const { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_within_group) + return _internal_agg_within_group(); } -inline ::pg_query::DropBehavior AlterDomainStmt::behavior() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.behavior) - return _internal_behavior(); +inline void FuncCall::set_agg_within_group(bool value) { + _internal_set_agg_within_group(value); + // @@protoc_insertion_point(field_set:pg_query.FuncCall.agg_within_group) } -inline void AlterDomainStmt::_internal_set_behavior(::pg_query::DropBehavior value) { - - _impl_.behavior_ = value; +inline bool FuncCall::_internal_agg_within_group() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.agg_within_group_; } -inline void AlterDomainStmt::set_behavior(::pg_query::DropBehavior value) { - _internal_set_behavior(value); - // @@protoc_insertion_point(field_set:pg_query.AlterDomainStmt.behavior) +inline void FuncCall::_internal_set_agg_within_group(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.agg_within_group_ = value; } -// bool missing_ok = 6 [json_name = "missing_ok"]; -inline void AlterDomainStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; +// bool agg_star = 7 [json_name = "agg_star"]; +inline void FuncCall::clear_agg_star() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.agg_star_ = false; } -inline bool AlterDomainStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline bool FuncCall::agg_star() const { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_star) + return _internal_agg_star(); } -inline bool AlterDomainStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.missing_ok) - return _internal_missing_ok(); +inline void FuncCall::set_agg_star(bool value) { + _internal_set_agg_star(value); + // @@protoc_insertion_point(field_set:pg_query.FuncCall.agg_star) } -inline void AlterDomainStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline bool FuncCall::_internal_agg_star() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.agg_star_; } -inline void AlterDomainStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.AlterDomainStmt.missing_ok) +inline void FuncCall::_internal_set_agg_star(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.agg_star_ = value; } -// ------------------------------------------------------------------- +// bool agg_distinct = 8 [json_name = "agg_distinct"]; +inline void FuncCall::clear_agg_distinct() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.agg_distinct_ = false; +} +inline bool FuncCall::agg_distinct() const { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_distinct) + return _internal_agg_distinct(); +} +inline void FuncCall::set_agg_distinct(bool value) { + _internal_set_agg_distinct(value); + // @@protoc_insertion_point(field_set:pg_query.FuncCall.agg_distinct) +} +inline bool FuncCall::_internal_agg_distinct() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.agg_distinct_; +} +inline void FuncCall::_internal_set_agg_distinct(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.agg_distinct_ = value; +} -// SetOperationStmt +// bool func_variadic = 9 [json_name = "func_variadic"]; +inline void FuncCall::clear_func_variadic() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.func_variadic_ = false; +} +inline bool FuncCall::func_variadic() const { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.func_variadic) + return _internal_func_variadic(); +} +inline void FuncCall::set_func_variadic(bool value) { + _internal_set_func_variadic(value); + // @@protoc_insertion_point(field_set:pg_query.FuncCall.func_variadic) +} +inline bool FuncCall::_internal_func_variadic() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.func_variadic_; +} +inline void FuncCall::_internal_set_func_variadic(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.func_variadic_ = value; +} -// .pg_query.SetOperation op = 1 [json_name = "op"]; -inline void SetOperationStmt::clear_op() { - _impl_.op_ = 0; +// .pg_query.CoercionForm funcformat = 10 [json_name = "funcformat"]; +inline void FuncCall::clear_funcformat() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcformat_ = 0; } -inline ::pg_query::SetOperation SetOperationStmt::_internal_op() const { - return static_cast< ::pg_query::SetOperation >(_impl_.op_); +inline ::pg_query::CoercionForm FuncCall::funcformat() const { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.funcformat) + return _internal_funcformat(); } -inline ::pg_query::SetOperation SetOperationStmt::op() const { - // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.op) - return _internal_op(); +inline void FuncCall::set_funcformat(::pg_query::CoercionForm value) { + _internal_set_funcformat(value); + // @@protoc_insertion_point(field_set:pg_query.FuncCall.funcformat) } -inline void SetOperationStmt::_internal_set_op(::pg_query::SetOperation value) { - - _impl_.op_ = value; +inline ::pg_query::CoercionForm FuncCall::_internal_funcformat() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CoercionForm>(_impl_.funcformat_); } -inline void SetOperationStmt::set_op(::pg_query::SetOperation value) { - _internal_set_op(value); - // @@protoc_insertion_point(field_set:pg_query.SetOperationStmt.op) +inline void FuncCall::_internal_set_funcformat(::pg_query::CoercionForm value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.funcformat_ = value; } -// bool all = 2 [json_name = "all"]; -inline void SetOperationStmt::clear_all() { - _impl_.all_ = false; +// int32 location = 11 [json_name = "location"]; +inline void FuncCall::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool SetOperationStmt::_internal_all() const { - return _impl_.all_; +inline ::int32_t FuncCall::location() const { + // @@protoc_insertion_point(field_get:pg_query.FuncCall.location) + return _internal_location(); } -inline bool SetOperationStmt::all() const { - // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.all) - return _internal_all(); +inline void FuncCall::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.FuncCall.location) } -inline void SetOperationStmt::_internal_set_all(bool value) { - - _impl_.all_ = value; +inline ::int32_t FuncCall::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void SetOperationStmt::set_all(bool value) { - _internal_set_all(value); - // @@protoc_insertion_point(field_set:pg_query.SetOperationStmt.all) +inline void FuncCall::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.Node larg = 3 [json_name = "larg"]; -inline bool SetOperationStmt::_internal_has_larg() const { - return this != internal_default_instance() && _impl_.larg_ != nullptr; +// ------------------------------------------------------------------- + +// A_Star + +// ------------------------------------------------------------------- + +// A_Indices + +// bool is_slice = 1 [json_name = "is_slice"]; +inline void A_Indices::clear_is_slice() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_slice_ = false; } -inline bool SetOperationStmt::has_larg() const { - return _internal_has_larg(); +inline bool A_Indices::is_slice() const { + // @@protoc_insertion_point(field_get:pg_query.A_Indices.is_slice) + return _internal_is_slice(); } -inline void SetOperationStmt::clear_larg() { - if (GetArenaForAllocation() == nullptr && _impl_.larg_ != nullptr) { - delete _impl_.larg_; - } - _impl_.larg_ = nullptr; +inline void A_Indices::set_is_slice(bool value) { + _internal_set_is_slice(value); + // @@protoc_insertion_point(field_set:pg_query.A_Indices.is_slice) } -inline const ::pg_query::Node& SetOperationStmt::_internal_larg() const { - const ::pg_query::Node* p = _impl_.larg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline bool A_Indices::_internal_is_slice() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_slice_; } -inline const ::pg_query::Node& SetOperationStmt::larg() const { - // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.larg) - return _internal_larg(); +inline void A_Indices::_internal_set_is_slice(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_slice_ = value; +} + +// .pg_query.Node lidx = 2 [json_name = "lidx"]; +inline bool A_Indices::has_lidx() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.lidx_ != nullptr); + return value; } -inline void SetOperationStmt::unsafe_arena_set_allocated_larg( - ::pg_query::Node* larg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.larg_); +inline void A_Indices::clear_lidx() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.lidx_ != nullptr) _impl_.lidx_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& A_Indices::_internal_lidx() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.lidx_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& A_Indices::lidx() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Indices.lidx) + return _internal_lidx(); +} +inline void A_Indices::unsafe_arena_set_allocated_lidx(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.lidx_); } - _impl_.larg_ = larg; - if (larg) { - + _impl_.lidx_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SetOperationStmt.larg) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Indices.lidx) } -inline ::pg_query::Node* SetOperationStmt::release_larg() { - - ::pg_query::Node* temp = _impl_.larg_; - _impl_.larg_ = nullptr; +inline ::pg_query::Node* A_Indices::release_lidx() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.lidx_; + _impl_.lidx_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SetOperationStmt::unsafe_arena_release_larg() { - // @@protoc_insertion_point(field_release:pg_query.SetOperationStmt.larg) - - ::pg_query::Node* temp = _impl_.larg_; - _impl_.larg_ = nullptr; +inline ::pg_query::Node* A_Indices::unsafe_arena_release_lidx() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.A_Indices.lidx) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.lidx_; + _impl_.lidx_ = nullptr; return temp; } -inline ::pg_query::Node* SetOperationStmt::_internal_mutable_larg() { - - if (_impl_.larg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.larg_ = p; +inline ::pg_query::Node* A_Indices::_internal_mutable_lidx() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.lidx_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.lidx_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.larg_; + return _impl_.lidx_; } -inline ::pg_query::Node* SetOperationStmt::mutable_larg() { - ::pg_query::Node* _msg = _internal_mutable_larg(); - // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.larg) +inline ::pg_query::Node* A_Indices::mutable_lidx() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_lidx(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Indices.lidx) return _msg; } -inline void SetOperationStmt::set_allocated_larg(::pg_query::Node* larg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void A_Indices::set_allocated_lidx(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.larg_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.lidx_); } - if (larg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(larg); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - larg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, larg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.larg_ = larg; - // @@protoc_insertion_point(field_set_allocated:pg_query.SetOperationStmt.larg) -} -// .pg_query.Node rarg = 4 [json_name = "rarg"]; -inline bool SetOperationStmt::_internal_has_rarg() const { - return this != internal_default_instance() && _impl_.rarg_ != nullptr; + _impl_.lidx_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.A_Indices.lidx) } -inline bool SetOperationStmt::has_rarg() const { - return _internal_has_rarg(); + +// .pg_query.Node uidx = 3 [json_name = "uidx"]; +inline bool A_Indices::has_uidx() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.uidx_ != nullptr); + return value; } -inline void SetOperationStmt::clear_rarg() { - if (GetArenaForAllocation() == nullptr && _impl_.rarg_ != nullptr) { - delete _impl_.rarg_; - } - _impl_.rarg_ = nullptr; +inline void A_Indices::clear_uidx() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.uidx_ != nullptr) _impl_.uidx_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& SetOperationStmt::_internal_rarg() const { - const ::pg_query::Node* p = _impl_.rarg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& A_Indices::_internal_uidx() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.uidx_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& SetOperationStmt::rarg() const { - // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.rarg) - return _internal_rarg(); +inline const ::pg_query::Node& A_Indices::uidx() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Indices.uidx) + return _internal_uidx(); } -inline void SetOperationStmt::unsafe_arena_set_allocated_rarg( - ::pg_query::Node* rarg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.rarg_); +inline void A_Indices::unsafe_arena_set_allocated_uidx(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.uidx_); } - _impl_.rarg_ = rarg; - if (rarg) { - + _impl_.uidx_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SetOperationStmt.rarg) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Indices.uidx) } -inline ::pg_query::Node* SetOperationStmt::release_rarg() { - - ::pg_query::Node* temp = _impl_.rarg_; - _impl_.rarg_ = nullptr; +inline ::pg_query::Node* A_Indices::release_uidx() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.uidx_; + _impl_.uidx_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SetOperationStmt::unsafe_arena_release_rarg() { - // @@protoc_insertion_point(field_release:pg_query.SetOperationStmt.rarg) - - ::pg_query::Node* temp = _impl_.rarg_; - _impl_.rarg_ = nullptr; +inline ::pg_query::Node* A_Indices::unsafe_arena_release_uidx() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.A_Indices.uidx) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.uidx_; + _impl_.uidx_ = nullptr; return temp; } -inline ::pg_query::Node* SetOperationStmt::_internal_mutable_rarg() { - - if (_impl_.rarg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.rarg_ = p; +inline ::pg_query::Node* A_Indices::_internal_mutable_uidx() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.uidx_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.uidx_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.rarg_; + return _impl_.uidx_; } -inline ::pg_query::Node* SetOperationStmt::mutable_rarg() { - ::pg_query::Node* _msg = _internal_mutable_rarg(); - // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.rarg) +inline ::pg_query::Node* A_Indices::mutable_uidx() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_uidx(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Indices.uidx) return _msg; } -inline void SetOperationStmt::set_allocated_rarg(::pg_query::Node* rarg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void A_Indices::set_allocated_uidx(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.rarg_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.uidx_); } - if (rarg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(rarg); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - rarg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, rarg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.rarg_ = rarg; - // @@protoc_insertion_point(field_set_allocated:pg_query.SetOperationStmt.rarg) -} -// repeated .pg_query.Node col_types = 5 [json_name = "colTypes"]; -inline int SetOperationStmt::_internal_col_types_size() const { - return _impl_.col_types_.size(); -} -inline int SetOperationStmt::col_types_size() const { - return _internal_col_types_size(); -} -inline void SetOperationStmt::clear_col_types() { - _impl_.col_types_.Clear(); -} -inline ::pg_query::Node* SetOperationStmt::mutable_col_types(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.col_types) - return _impl_.col_types_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SetOperationStmt::mutable_col_types() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SetOperationStmt.col_types) - return &_impl_.col_types_; -} -inline const ::pg_query::Node& SetOperationStmt::_internal_col_types(int index) const { - return _impl_.col_types_.Get(index); -} -inline const ::pg_query::Node& SetOperationStmt::col_types(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.col_types) - return _internal_col_types(index); -} -inline ::pg_query::Node* SetOperationStmt::_internal_add_col_types() { - return _impl_.col_types_.Add(); -} -inline ::pg_query::Node* SetOperationStmt::add_col_types() { - ::pg_query::Node* _add = _internal_add_col_types(); - // @@protoc_insertion_point(field_add:pg_query.SetOperationStmt.col_types) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SetOperationStmt::col_types() const { - // @@protoc_insertion_point(field_list:pg_query.SetOperationStmt.col_types) - return _impl_.col_types_; + _impl_.uidx_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.A_Indices.uidx) } -// repeated .pg_query.Node col_typmods = 6 [json_name = "colTypmods"]; -inline int SetOperationStmt::_internal_col_typmods_size() const { - return _impl_.col_typmods_.size(); -} -inline int SetOperationStmt::col_typmods_size() const { - return _internal_col_typmods_size(); -} -inline void SetOperationStmt::clear_col_typmods() { - _impl_.col_typmods_.Clear(); -} -inline ::pg_query::Node* SetOperationStmt::mutable_col_typmods(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.col_typmods) - return _impl_.col_typmods_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SetOperationStmt::mutable_col_typmods() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SetOperationStmt.col_typmods) - return &_impl_.col_typmods_; -} -inline const ::pg_query::Node& SetOperationStmt::_internal_col_typmods(int index) const { - return _impl_.col_typmods_.Get(index); -} -inline const ::pg_query::Node& SetOperationStmt::col_typmods(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.col_typmods) - return _internal_col_typmods(index); -} -inline ::pg_query::Node* SetOperationStmt::_internal_add_col_typmods() { - return _impl_.col_typmods_.Add(); -} -inline ::pg_query::Node* SetOperationStmt::add_col_typmods() { - ::pg_query::Node* _add = _internal_add_col_typmods(); - // @@protoc_insertion_point(field_add:pg_query.SetOperationStmt.col_typmods) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SetOperationStmt::col_typmods() const { - // @@protoc_insertion_point(field_list:pg_query.SetOperationStmt.col_typmods) - return _impl_.col_typmods_; -} +// ------------------------------------------------------------------- -// repeated .pg_query.Node col_collations = 7 [json_name = "colCollations"]; -inline int SetOperationStmt::_internal_col_collations_size() const { - return _impl_.col_collations_.size(); -} -inline int SetOperationStmt::col_collations_size() const { - return _internal_col_collations_size(); -} -inline void SetOperationStmt::clear_col_collations() { - _impl_.col_collations_.Clear(); -} -inline ::pg_query::Node* SetOperationStmt::mutable_col_collations(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.col_collations) - return _impl_.col_collations_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SetOperationStmt::mutable_col_collations() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SetOperationStmt.col_collations) - return &_impl_.col_collations_; -} -inline const ::pg_query::Node& SetOperationStmt::_internal_col_collations(int index) const { - return _impl_.col_collations_.Get(index); -} -inline const ::pg_query::Node& SetOperationStmt::col_collations(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.col_collations) - return _internal_col_collations(index); -} -inline ::pg_query::Node* SetOperationStmt::_internal_add_col_collations() { - return _impl_.col_collations_.Add(); -} -inline ::pg_query::Node* SetOperationStmt::add_col_collations() { - ::pg_query::Node* _add = _internal_add_col_collations(); - // @@protoc_insertion_point(field_add:pg_query.SetOperationStmt.col_collations) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SetOperationStmt::col_collations() const { - // @@protoc_insertion_point(field_list:pg_query.SetOperationStmt.col_collations) - return _impl_.col_collations_; -} +// A_Indirection -// repeated .pg_query.Node group_clauses = 8 [json_name = "groupClauses"]; -inline int SetOperationStmt::_internal_group_clauses_size() const { - return _impl_.group_clauses_.size(); -} -inline int SetOperationStmt::group_clauses_size() const { - return _internal_group_clauses_size(); -} -inline void SetOperationStmt::clear_group_clauses() { - _impl_.group_clauses_.Clear(); -} -inline ::pg_query::Node* SetOperationStmt::mutable_group_clauses(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.group_clauses) - return _impl_.group_clauses_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SetOperationStmt::mutable_group_clauses() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SetOperationStmt.group_clauses) - return &_impl_.group_clauses_; -} -inline const ::pg_query::Node& SetOperationStmt::_internal_group_clauses(int index) const { - return _impl_.group_clauses_.Get(index); +// .pg_query.Node arg = 1 [json_name = "arg"]; +inline bool A_Indirection::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline const ::pg_query::Node& SetOperationStmt::group_clauses(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.group_clauses) - return _internal_group_clauses(index); +inline void A_Indirection::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* SetOperationStmt::_internal_add_group_clauses() { - return _impl_.group_clauses_.Add(); +inline const ::pg_query::Node& A_Indirection::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* SetOperationStmt::add_group_clauses() { - ::pg_query::Node* _add = _internal_add_group_clauses(); - // @@protoc_insertion_point(field_add:pg_query.SetOperationStmt.group_clauses) - return _add; +inline const ::pg_query::Node& A_Indirection::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Indirection.arg) + return _internal_arg(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SetOperationStmt::group_clauses() const { - // @@protoc_insertion_point(field_list:pg_query.SetOperationStmt.group_clauses) - return _impl_.group_clauses_; +inline void A_Indirection::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); + } + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Indirection.arg) } +inline ::pg_query::Node* A_Indirection::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- - -// GrantStmt - -// bool is_grant = 1 [json_name = "is_grant"]; -inline void GrantStmt::clear_is_grant() { - _impl_.is_grant_ = false; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool GrantStmt::_internal_is_grant() const { - return _impl_.is_grant_; +inline ::pg_query::Node* A_Indirection::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.A_Indirection.arg) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; + return temp; } -inline bool GrantStmt::is_grant() const { - // @@protoc_insertion_point(field_get:pg_query.GrantStmt.is_grant) - return _internal_is_grant(); +inline ::pg_query::Node* A_Indirection::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.arg_; } -inline void GrantStmt::_internal_set_is_grant(bool value) { - - _impl_.is_grant_ = value; +inline ::pg_query::Node* A_Indirection::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.A_Indirection.arg) + return _msg; } -inline void GrantStmt::set_is_grant(bool value) { - _internal_set_is_grant(value); - // @@protoc_insertion_point(field_set:pg_query.GrantStmt.is_grant) +inline void A_Indirection::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.A_Indirection.arg) } -// .pg_query.GrantTargetType targtype = 2 [json_name = "targtype"]; -inline void GrantStmt::clear_targtype() { - _impl_.targtype_ = 0; +// repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; +inline int A_Indirection::_internal_indirection_size() const { + return _internal_indirection().size(); } -inline ::pg_query::GrantTargetType GrantStmt::_internal_targtype() const { - return static_cast< ::pg_query::GrantTargetType >(_impl_.targtype_); +inline int A_Indirection::indirection_size() const { + return _internal_indirection_size(); } -inline ::pg_query::GrantTargetType GrantStmt::targtype() const { - // @@protoc_insertion_point(field_get:pg_query.GrantStmt.targtype) - return _internal_targtype(); +inline void A_Indirection::clear_indirection() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indirection_.Clear(); } -inline void GrantStmt::_internal_set_targtype(::pg_query::GrantTargetType value) { - - _impl_.targtype_ = value; +inline ::pg_query::Node* A_Indirection::mutable_indirection(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.A_Indirection.indirection) + return _internal_mutable_indirection()->Mutable(index); } -inline void GrantStmt::set_targtype(::pg_query::GrantTargetType value) { - _internal_set_targtype(value); - // @@protoc_insertion_point(field_set:pg_query.GrantStmt.targtype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* A_Indirection::mutable_indirection() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.A_Indirection.indirection) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_indirection(); } - -// .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; -inline void GrantStmt::clear_objtype() { - _impl_.objtype_ = 0; +inline const ::pg_query::Node& A_Indirection::indirection(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_Indirection.indirection) + return _internal_indirection().Get(index); } -inline ::pg_query::ObjectType GrantStmt::_internal_objtype() const { - return static_cast< ::pg_query::ObjectType >(_impl_.objtype_); +inline ::pg_query::Node* A_Indirection::add_indirection() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_indirection()->Add(); + // @@protoc_insertion_point(field_add:pg_query.A_Indirection.indirection) + return _add; } -inline ::pg_query::ObjectType GrantStmt::objtype() const { - // @@protoc_insertion_point(field_get:pg_query.GrantStmt.objtype) - return _internal_objtype(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& A_Indirection::indirection() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.A_Indirection.indirection) + return _internal_indirection(); } -inline void GrantStmt::_internal_set_objtype(::pg_query::ObjectType value) { - - _impl_.objtype_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +A_Indirection::_internal_indirection() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.indirection_; } -inline void GrantStmt::set_objtype(::pg_query::ObjectType value) { - _internal_set_objtype(value); - // @@protoc_insertion_point(field_set:pg_query.GrantStmt.objtype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +A_Indirection::_internal_mutable_indirection() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.indirection_; } -// repeated .pg_query.Node objects = 4 [json_name = "objects"]; -inline int GrantStmt::_internal_objects_size() const { - return _impl_.objects_.size(); +// ------------------------------------------------------------------- + +// A_ArrayExpr + +// repeated .pg_query.Node elements = 1 [json_name = "elements"]; +inline int A_ArrayExpr::_internal_elements_size() const { + return _internal_elements().size(); } -inline int GrantStmt::objects_size() const { - return _internal_objects_size(); +inline int A_ArrayExpr::elements_size() const { + return _internal_elements_size(); } -inline void GrantStmt::clear_objects() { - _impl_.objects_.Clear(); +inline void A_ArrayExpr::clear_elements() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.elements_.Clear(); } -inline ::pg_query::Node* GrantStmt::mutable_objects(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.GrantStmt.objects) - return _impl_.objects_.Mutable(index); +inline ::pg_query::Node* A_ArrayExpr::mutable_elements(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.A_ArrayExpr.elements) + return _internal_mutable_elements()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -GrantStmt::mutable_objects() { - // @@protoc_insertion_point(field_mutable_list:pg_query.GrantStmt.objects) - return &_impl_.objects_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* A_ArrayExpr::mutable_elements() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.A_ArrayExpr.elements) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_elements(); } -inline const ::pg_query::Node& GrantStmt::_internal_objects(int index) const { - return _impl_.objects_.Get(index); +inline const ::pg_query::Node& A_ArrayExpr::elements(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.A_ArrayExpr.elements) + return _internal_elements().Get(index); } -inline const ::pg_query::Node& GrantStmt::objects(int index) const { - // @@protoc_insertion_point(field_get:pg_query.GrantStmt.objects) - return _internal_objects(index); +inline ::pg_query::Node* A_ArrayExpr::add_elements() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_elements()->Add(); + // @@protoc_insertion_point(field_add:pg_query.A_ArrayExpr.elements) + return _add; } -inline ::pg_query::Node* GrantStmt::_internal_add_objects() { - return _impl_.objects_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& A_ArrayExpr::elements() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.A_ArrayExpr.elements) + return _internal_elements(); } -inline ::pg_query::Node* GrantStmt::add_objects() { - ::pg_query::Node* _add = _internal_add_objects(); - // @@protoc_insertion_point(field_add:pg_query.GrantStmt.objects) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +A_ArrayExpr::_internal_elements() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.elements_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -GrantStmt::objects() const { - // @@protoc_insertion_point(field_list:pg_query.GrantStmt.objects) - return _impl_.objects_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +A_ArrayExpr::_internal_mutable_elements() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.elements_; } -// repeated .pg_query.Node privileges = 5 [json_name = "privileges"]; -inline int GrantStmt::_internal_privileges_size() const { - return _impl_.privileges_.size(); -} -inline int GrantStmt::privileges_size() const { - return _internal_privileges_size(); +// int32 location = 2 [json_name = "location"]; +inline void A_ArrayExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline void GrantStmt::clear_privileges() { - _impl_.privileges_.Clear(); +inline ::int32_t A_ArrayExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.A_ArrayExpr.location) + return _internal_location(); } -inline ::pg_query::Node* GrantStmt::mutable_privileges(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.GrantStmt.privileges) - return _impl_.privileges_.Mutable(index); +inline void A_ArrayExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.A_ArrayExpr.location) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -GrantStmt::mutable_privileges() { - // @@protoc_insertion_point(field_mutable_list:pg_query.GrantStmt.privileges) - return &_impl_.privileges_; +inline ::int32_t A_ArrayExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::pg_query::Node& GrantStmt::_internal_privileges(int index) const { - return _impl_.privileges_.Get(index); +inline void A_ArrayExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -inline const ::pg_query::Node& GrantStmt::privileges(int index) const { - // @@protoc_insertion_point(field_get:pg_query.GrantStmt.privileges) - return _internal_privileges(index); + +// ------------------------------------------------------------------- + +// ResTarget + +// string name = 1 [json_name = "name"]; +inline void ResTarget::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline ::pg_query::Node* GrantStmt::_internal_add_privileges() { - return _impl_.privileges_.Add(); +inline const std::string& ResTarget::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ResTarget.name) + return _internal_name(); } -inline ::pg_query::Node* GrantStmt::add_privileges() { - ::pg_query::Node* _add = _internal_add_privileges(); - // @@protoc_insertion_point(field_add:pg_query.GrantStmt.privileges) - return _add; +template +inline PROTOBUF_ALWAYS_INLINE void ResTarget::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ResTarget.name) } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -GrantStmt::privileges() const { - // @@protoc_insertion_point(field_list:pg_query.GrantStmt.privileges) - return _impl_.privileges_; +inline std::string* ResTarget::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.ResTarget.name) + return _s; } - -// repeated .pg_query.Node grantees = 6 [json_name = "grantees"]; -inline int GrantStmt::_internal_grantees_size() const { - return _impl_.grantees_.size(); +inline const std::string& ResTarget::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline int GrantStmt::grantees_size() const { - return _internal_grantees_size(); +inline void ResTarget::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline void GrantStmt::clear_grantees() { - _impl_.grantees_.Clear(); +inline std::string* ResTarget::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline ::pg_query::Node* GrantStmt::mutable_grantees(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.GrantStmt.grantees) - return _impl_.grantees_.Mutable(index); +inline std::string* ResTarget::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ResTarget.name) + return _impl_.name_.Release(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -GrantStmt::mutable_grantees() { - // @@protoc_insertion_point(field_mutable_list:pg_query.GrantStmt.grantees) - return &_impl_.grantees_; +inline void ResTarget::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ResTarget.name) } -inline const ::pg_query::Node& GrantStmt::_internal_grantees(int index) const { - return _impl_.grantees_.Get(index); + +// repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; +inline int ResTarget::_internal_indirection_size() const { + return _internal_indirection().size(); } -inline const ::pg_query::Node& GrantStmt::grantees(int index) const { - // @@protoc_insertion_point(field_get:pg_query.GrantStmt.grantees) - return _internal_grantees(index); +inline int ResTarget::indirection_size() const { + return _internal_indirection_size(); } -inline ::pg_query::Node* GrantStmt::_internal_add_grantees() { - return _impl_.grantees_.Add(); +inline void ResTarget::clear_indirection() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indirection_.Clear(); } -inline ::pg_query::Node* GrantStmt::add_grantees() { - ::pg_query::Node* _add = _internal_add_grantees(); - // @@protoc_insertion_point(field_add:pg_query.GrantStmt.grantees) - return _add; +inline ::pg_query::Node* ResTarget::mutable_indirection(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ResTarget.indirection) + return _internal_mutable_indirection()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -GrantStmt::grantees() const { - // @@protoc_insertion_point(field_list:pg_query.GrantStmt.grantees) - return _impl_.grantees_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ResTarget::mutable_indirection() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ResTarget.indirection) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_indirection(); } - -// bool grant_option = 7 [json_name = "grant_option"]; -inline void GrantStmt::clear_grant_option() { - _impl_.grant_option_ = false; +inline const ::pg_query::Node& ResTarget::indirection(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ResTarget.indirection) + return _internal_indirection().Get(index); } -inline bool GrantStmt::_internal_grant_option() const { - return _impl_.grant_option_; +inline ::pg_query::Node* ResTarget::add_indirection() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_indirection()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ResTarget.indirection) + return _add; } -inline bool GrantStmt::grant_option() const { - // @@protoc_insertion_point(field_get:pg_query.GrantStmt.grant_option) - return _internal_grant_option(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ResTarget::indirection() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ResTarget.indirection) + return _internal_indirection(); } -inline void GrantStmt::_internal_set_grant_option(bool value) { - - _impl_.grant_option_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ResTarget::_internal_indirection() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.indirection_; } -inline void GrantStmt::set_grant_option(bool value) { - _internal_set_grant_option(value); - // @@protoc_insertion_point(field_set:pg_query.GrantStmt.grant_option) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ResTarget::_internal_mutable_indirection() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.indirection_; } -// .pg_query.RoleSpec grantor = 8 [json_name = "grantor"]; -inline bool GrantStmt::_internal_has_grantor() const { - return this != internal_default_instance() && _impl_.grantor_ != nullptr; -} -inline bool GrantStmt::has_grantor() const { - return _internal_has_grantor(); +// .pg_query.Node val = 3 [json_name = "val"]; +inline bool ResTarget::has_val() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.val_ != nullptr); + return value; } -inline void GrantStmt::clear_grantor() { - if (GetArenaForAllocation() == nullptr && _impl_.grantor_ != nullptr) { - delete _impl_.grantor_; - } - _impl_.grantor_ = nullptr; +inline void ResTarget::clear_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.val_ != nullptr) _impl_.val_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RoleSpec& GrantStmt::_internal_grantor() const { - const ::pg_query::RoleSpec* p = _impl_.grantor_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::Node& ResTarget::_internal_val() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.val_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RoleSpec& GrantStmt::grantor() const { - // @@protoc_insertion_point(field_get:pg_query.GrantStmt.grantor) - return _internal_grantor(); +inline const ::pg_query::Node& ResTarget::val() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ResTarget.val) + return _internal_val(); } -inline void GrantStmt::unsafe_arena_set_allocated_grantor( - ::pg_query::RoleSpec* grantor) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.grantor_); +inline void ResTarget::unsafe_arena_set_allocated_val(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.val_); } - _impl_.grantor_ = grantor; - if (grantor) { - + _impl_.val_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.GrantStmt.grantor) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ResTarget.val) } -inline ::pg_query::RoleSpec* GrantStmt::release_grantor() { - - ::pg_query::RoleSpec* temp = _impl_.grantor_; - _impl_.grantor_ = nullptr; +inline ::pg_query::Node* ResTarget::release_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.val_; + _impl_.val_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* GrantStmt::unsafe_arena_release_grantor() { - // @@protoc_insertion_point(field_release:pg_query.GrantStmt.grantor) - - ::pg_query::RoleSpec* temp = _impl_.grantor_; - _impl_.grantor_ = nullptr; +inline ::pg_query::Node* ResTarget::unsafe_arena_release_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ResTarget.val) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.val_; + _impl_.val_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* GrantStmt::_internal_mutable_grantor() { - - if (_impl_.grantor_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.grantor_ = p; +inline ::pg_query::Node* ResTarget::_internal_mutable_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.val_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.val_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.grantor_; + return _impl_.val_; } -inline ::pg_query::RoleSpec* GrantStmt::mutable_grantor() { - ::pg_query::RoleSpec* _msg = _internal_mutable_grantor(); - // @@protoc_insertion_point(field_mutable:pg_query.GrantStmt.grantor) +inline ::pg_query::Node* ResTarget::mutable_val() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_val(); + // @@protoc_insertion_point(field_mutable:pg_query.ResTarget.val) return _msg; } -inline void GrantStmt::set_allocated_grantor(::pg_query::RoleSpec* grantor) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ResTarget::set_allocated_val(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.grantor_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.val_); } - if (grantor) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(grantor); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - grantor = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, grantor, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.grantor_ = grantor; - // @@protoc_insertion_point(field_set_allocated:pg_query.GrantStmt.grantor) + + _impl_.val_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ResTarget.val) } -// .pg_query.DropBehavior behavior = 9 [json_name = "behavior"]; -inline void GrantStmt::clear_behavior() { - _impl_.behavior_ = 0; +// int32 location = 4 [json_name = "location"]; +inline void ResTarget::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline ::pg_query::DropBehavior GrantStmt::_internal_behavior() const { - return static_cast< ::pg_query::DropBehavior >(_impl_.behavior_); +inline ::int32_t ResTarget::location() const { + // @@protoc_insertion_point(field_get:pg_query.ResTarget.location) + return _internal_location(); } -inline ::pg_query::DropBehavior GrantStmt::behavior() const { - // @@protoc_insertion_point(field_get:pg_query.GrantStmt.behavior) - return _internal_behavior(); +inline void ResTarget::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.ResTarget.location) } -inline void GrantStmt::_internal_set_behavior(::pg_query::DropBehavior value) { - - _impl_.behavior_ = value; +inline ::int32_t ResTarget::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void GrantStmt::set_behavior(::pg_query::DropBehavior value) { - _internal_set_behavior(value); - // @@protoc_insertion_point(field_set:pg_query.GrantStmt.behavior) +inline void ResTarget::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// GrantRoleStmt +// MultiAssignRef -// repeated .pg_query.Node granted_roles = 1 [json_name = "granted_roles"]; -inline int GrantRoleStmt::_internal_granted_roles_size() const { - return _impl_.granted_roles_.size(); -} -inline int GrantRoleStmt::granted_roles_size() const { - return _internal_granted_roles_size(); -} -inline void GrantRoleStmt::clear_granted_roles() { - _impl_.granted_roles_.Clear(); -} -inline ::pg_query::Node* GrantRoleStmt::mutable_granted_roles(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.GrantRoleStmt.granted_roles) - return _impl_.granted_roles_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -GrantRoleStmt::mutable_granted_roles() { - // @@protoc_insertion_point(field_mutable_list:pg_query.GrantRoleStmt.granted_roles) - return &_impl_.granted_roles_; -} -inline const ::pg_query::Node& GrantRoleStmt::_internal_granted_roles(int index) const { - return _impl_.granted_roles_.Get(index); +// .pg_query.Node source = 1 [json_name = "source"]; +inline bool MultiAssignRef::has_source() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.source_ != nullptr); + return value; } -inline const ::pg_query::Node& GrantRoleStmt::granted_roles(int index) const { - // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.granted_roles) - return _internal_granted_roles(index); +inline void MultiAssignRef::clear_source() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.source_ != nullptr) _impl_.source_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* GrantRoleStmt::_internal_add_granted_roles() { - return _impl_.granted_roles_.Add(); +inline const ::pg_query::Node& MultiAssignRef::_internal_source() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.source_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* GrantRoleStmt::add_granted_roles() { - ::pg_query::Node* _add = _internal_add_granted_roles(); - // @@protoc_insertion_point(field_add:pg_query.GrantRoleStmt.granted_roles) - return _add; +inline const ::pg_query::Node& MultiAssignRef::source() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MultiAssignRef.source) + return _internal_source(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -GrantRoleStmt::granted_roles() const { - // @@protoc_insertion_point(field_list:pg_query.GrantRoleStmt.granted_roles) - return _impl_.granted_roles_; +inline void MultiAssignRef::unsafe_arena_set_allocated_source(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.source_); + } + _impl_.source_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MultiAssignRef.source) } +inline ::pg_query::Node* MultiAssignRef::release_source() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node grantee_roles = 2 [json_name = "grantee_roles"]; -inline int GrantRoleStmt::_internal_grantee_roles_size() const { - return _impl_.grantee_roles_.size(); -} -inline int GrantRoleStmt::grantee_roles_size() const { - return _internal_grantee_roles_size(); -} -inline void GrantRoleStmt::clear_grantee_roles() { - _impl_.grantee_roles_.Clear(); -} -inline ::pg_query::Node* GrantRoleStmt::mutable_grantee_roles(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.GrantRoleStmt.grantee_roles) - return _impl_.grantee_roles_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -GrantRoleStmt::mutable_grantee_roles() { - // @@protoc_insertion_point(field_mutable_list:pg_query.GrantRoleStmt.grantee_roles) - return &_impl_.grantee_roles_; -} -inline const ::pg_query::Node& GrantRoleStmt::_internal_grantee_roles(int index) const { - return _impl_.grantee_roles_.Get(index); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.source_; + _impl_.source_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& GrantRoleStmt::grantee_roles(int index) const { - // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.grantee_roles) - return _internal_grantee_roles(index); +inline ::pg_query::Node* MultiAssignRef::unsafe_arena_release_source() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.MultiAssignRef.source) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.source_; + _impl_.source_ = nullptr; + return temp; } -inline ::pg_query::Node* GrantRoleStmt::_internal_add_grantee_roles() { - return _impl_.grantee_roles_.Add(); +inline ::pg_query::Node* MultiAssignRef::_internal_mutable_source() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.source_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.source_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.source_; } -inline ::pg_query::Node* GrantRoleStmt::add_grantee_roles() { - ::pg_query::Node* _add = _internal_add_grantee_roles(); - // @@protoc_insertion_point(field_add:pg_query.GrantRoleStmt.grantee_roles) - return _add; +inline ::pg_query::Node* MultiAssignRef::mutable_source() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_source(); + // @@protoc_insertion_point(field_mutable:pg_query.MultiAssignRef.source) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -GrantRoleStmt::grantee_roles() const { - // @@protoc_insertion_point(field_list:pg_query.GrantRoleStmt.grantee_roles) - return _impl_.grantee_roles_; +inline void MultiAssignRef::set_allocated_source(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.source_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.source_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.MultiAssignRef.source) } -// bool is_grant = 3 [json_name = "is_grant"]; -inline void GrantRoleStmt::clear_is_grant() { - _impl_.is_grant_ = false; +// int32 colno = 2 [json_name = "colno"]; +inline void MultiAssignRef::clear_colno() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colno_ = 0; } -inline bool GrantRoleStmt::_internal_is_grant() const { - return _impl_.is_grant_; +inline ::int32_t MultiAssignRef::colno() const { + // @@protoc_insertion_point(field_get:pg_query.MultiAssignRef.colno) + return _internal_colno(); } -inline bool GrantRoleStmt::is_grant() const { - // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.is_grant) - return _internal_is_grant(); +inline void MultiAssignRef::set_colno(::int32_t value) { + _internal_set_colno(value); + // @@protoc_insertion_point(field_set:pg_query.MultiAssignRef.colno) } -inline void GrantRoleStmt::_internal_set_is_grant(bool value) { - - _impl_.is_grant_ = value; +inline ::int32_t MultiAssignRef::_internal_colno() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.colno_; } -inline void GrantRoleStmt::set_is_grant(bool value) { - _internal_set_is_grant(value); - // @@protoc_insertion_point(field_set:pg_query.GrantRoleStmt.is_grant) +inline void MultiAssignRef::_internal_set_colno(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.colno_ = value; } -// bool admin_opt = 4 [json_name = "admin_opt"]; -inline void GrantRoleStmt::clear_admin_opt() { - _impl_.admin_opt_ = false; +// int32 ncolumns = 3 [json_name = "ncolumns"]; +inline void MultiAssignRef::clear_ncolumns() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ncolumns_ = 0; } -inline bool GrantRoleStmt::_internal_admin_opt() const { - return _impl_.admin_opt_; +inline ::int32_t MultiAssignRef::ncolumns() const { + // @@protoc_insertion_point(field_get:pg_query.MultiAssignRef.ncolumns) + return _internal_ncolumns(); } -inline bool GrantRoleStmt::admin_opt() const { - // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.admin_opt) - return _internal_admin_opt(); +inline void MultiAssignRef::set_ncolumns(::int32_t value) { + _internal_set_ncolumns(value); + // @@protoc_insertion_point(field_set:pg_query.MultiAssignRef.ncolumns) } -inline void GrantRoleStmt::_internal_set_admin_opt(bool value) { - - _impl_.admin_opt_ = value; +inline ::int32_t MultiAssignRef::_internal_ncolumns() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ncolumns_; } -inline void GrantRoleStmt::set_admin_opt(bool value) { - _internal_set_admin_opt(value); - // @@protoc_insertion_point(field_set:pg_query.GrantRoleStmt.admin_opt) +inline void MultiAssignRef::_internal_set_ncolumns(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ncolumns_ = value; } -// .pg_query.RoleSpec grantor = 5 [json_name = "grantor"]; -inline bool GrantRoleStmt::_internal_has_grantor() const { - return this != internal_default_instance() && _impl_.grantor_ != nullptr; -} -inline bool GrantRoleStmt::has_grantor() const { - return _internal_has_grantor(); +// ------------------------------------------------------------------- + +// SortBy + +// .pg_query.Node node = 1 [json_name = "node"]; +inline bool SortBy::has_node() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.node_ != nullptr); + return value; } -inline void GrantRoleStmt::clear_grantor() { - if (GetArenaForAllocation() == nullptr && _impl_.grantor_ != nullptr) { - delete _impl_.grantor_; - } - _impl_.grantor_ = nullptr; +inline void SortBy::clear_node() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.node_ != nullptr) _impl_.node_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RoleSpec& GrantRoleStmt::_internal_grantor() const { - const ::pg_query::RoleSpec* p = _impl_.grantor_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::Node& SortBy::_internal_node() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.node_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RoleSpec& GrantRoleStmt::grantor() const { - // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.grantor) - return _internal_grantor(); +inline const ::pg_query::Node& SortBy::node() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SortBy.node) + return _internal_node(); } -inline void GrantRoleStmt::unsafe_arena_set_allocated_grantor( - ::pg_query::RoleSpec* grantor) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.grantor_); +inline void SortBy::unsafe_arena_set_allocated_node(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.node_); } - _impl_.grantor_ = grantor; - if (grantor) { - + _impl_.node_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.GrantRoleStmt.grantor) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SortBy.node) } -inline ::pg_query::RoleSpec* GrantRoleStmt::release_grantor() { - - ::pg_query::RoleSpec* temp = _impl_.grantor_; - _impl_.grantor_ = nullptr; +inline ::pg_query::Node* SortBy::release_node() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.node_; + _impl_.node_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* GrantRoleStmt::unsafe_arena_release_grantor() { - // @@protoc_insertion_point(field_release:pg_query.GrantRoleStmt.grantor) - - ::pg_query::RoleSpec* temp = _impl_.grantor_; - _impl_.grantor_ = nullptr; +inline ::pg_query::Node* SortBy::unsafe_arena_release_node() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SortBy.node) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.node_; + _impl_.node_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* GrantRoleStmt::_internal_mutable_grantor() { - - if (_impl_.grantor_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.grantor_ = p; +inline ::pg_query::Node* SortBy::_internal_mutable_node() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.node_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.node_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.grantor_; + return _impl_.node_; } -inline ::pg_query::RoleSpec* GrantRoleStmt::mutable_grantor() { - ::pg_query::RoleSpec* _msg = _internal_mutable_grantor(); - // @@protoc_insertion_point(field_mutable:pg_query.GrantRoleStmt.grantor) +inline ::pg_query::Node* SortBy::mutable_node() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_node(); + // @@protoc_insertion_point(field_mutable:pg_query.SortBy.node) return _msg; } -inline void GrantRoleStmt::set_allocated_grantor(::pg_query::RoleSpec* grantor) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SortBy::set_allocated_node(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.grantor_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.node_); } - if (grantor) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(grantor); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - grantor = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, grantor, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.grantor_ = grantor; - // @@protoc_insertion_point(field_set_allocated:pg_query.GrantRoleStmt.grantor) + + _impl_.node_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SortBy.node) } -// .pg_query.DropBehavior behavior = 6 [json_name = "behavior"]; -inline void GrantRoleStmt::clear_behavior() { - _impl_.behavior_ = 0; +// .pg_query.SortByDir sortby_dir = 2 [json_name = "sortby_dir"]; +inline void SortBy::clear_sortby_dir() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sortby_dir_ = 0; } -inline ::pg_query::DropBehavior GrantRoleStmt::_internal_behavior() const { - return static_cast< ::pg_query::DropBehavior >(_impl_.behavior_); +inline ::pg_query::SortByDir SortBy::sortby_dir() const { + // @@protoc_insertion_point(field_get:pg_query.SortBy.sortby_dir) + return _internal_sortby_dir(); } -inline ::pg_query::DropBehavior GrantRoleStmt::behavior() const { - // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.behavior) - return _internal_behavior(); +inline void SortBy::set_sortby_dir(::pg_query::SortByDir value) { + _internal_set_sortby_dir(value); + // @@protoc_insertion_point(field_set:pg_query.SortBy.sortby_dir) } -inline void GrantRoleStmt::_internal_set_behavior(::pg_query::DropBehavior value) { - - _impl_.behavior_ = value; +inline ::pg_query::SortByDir SortBy::_internal_sortby_dir() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::SortByDir>(_impl_.sortby_dir_); } -inline void GrantRoleStmt::set_behavior(::pg_query::DropBehavior value) { - _internal_set_behavior(value); - // @@protoc_insertion_point(field_set:pg_query.GrantRoleStmt.behavior) +inline void SortBy::_internal_set_sortby_dir(::pg_query::SortByDir value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.sortby_dir_ = value; } -// ------------------------------------------------------------------- - -// AlterDefaultPrivilegesStmt - -// repeated .pg_query.Node options = 1 [json_name = "options"]; -inline int AlterDefaultPrivilegesStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int AlterDefaultPrivilegesStmt::options_size() const { - return _internal_options_size(); +// .pg_query.SortByNulls sortby_nulls = 3 [json_name = "sortby_nulls"]; +inline void SortBy::clear_sortby_nulls() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sortby_nulls_ = 0; } -inline void AlterDefaultPrivilegesStmt::clear_options() { - _impl_.options_.Clear(); +inline ::pg_query::SortByNulls SortBy::sortby_nulls() const { + // @@protoc_insertion_point(field_get:pg_query.SortBy.sortby_nulls) + return _internal_sortby_nulls(); } -inline ::pg_query::Node* AlterDefaultPrivilegesStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterDefaultPrivilegesStmt.options) - return _impl_.options_.Mutable(index); +inline void SortBy::set_sortby_nulls(::pg_query::SortByNulls value) { + _internal_set_sortby_nulls(value); + // @@protoc_insertion_point(field_set:pg_query.SortBy.sortby_nulls) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterDefaultPrivilegesStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterDefaultPrivilegesStmt.options) - return &_impl_.options_; +inline ::pg_query::SortByNulls SortBy::_internal_sortby_nulls() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::SortByNulls>(_impl_.sortby_nulls_); } -inline const ::pg_query::Node& AlterDefaultPrivilegesStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline void SortBy::_internal_set_sortby_nulls(::pg_query::SortByNulls value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.sortby_nulls_ = value; } -inline const ::pg_query::Node& AlterDefaultPrivilegesStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterDefaultPrivilegesStmt.options) - return _internal_options(index); + +// repeated .pg_query.Node use_op = 4 [json_name = "useOp"]; +inline int SortBy::_internal_use_op_size() const { + return _internal_use_op().size(); } -inline ::pg_query::Node* AlterDefaultPrivilegesStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline int SortBy::use_op_size() const { + return _internal_use_op_size(); } -inline ::pg_query::Node* AlterDefaultPrivilegesStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterDefaultPrivilegesStmt.options) - return _add; +inline void SortBy::clear_use_op() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.use_op_.Clear(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterDefaultPrivilegesStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterDefaultPrivilegesStmt.options) - return _impl_.options_; +inline ::pg_query::Node* SortBy::mutable_use_op(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SortBy.use_op) + return _internal_mutable_use_op()->Mutable(index); } - -// .pg_query.GrantStmt action = 2 [json_name = "action"]; -inline bool AlterDefaultPrivilegesStmt::_internal_has_action() const { - return this != internal_default_instance() && _impl_.action_ != nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SortBy::mutable_use_op() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SortBy.use_op) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_use_op(); } -inline bool AlterDefaultPrivilegesStmt::has_action() const { - return _internal_has_action(); +inline const ::pg_query::Node& SortBy::use_op(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SortBy.use_op) + return _internal_use_op().Get(index); } -inline void AlterDefaultPrivilegesStmt::clear_action() { - if (GetArenaForAllocation() == nullptr && _impl_.action_ != nullptr) { - delete _impl_.action_; - } - _impl_.action_ = nullptr; +inline ::pg_query::Node* SortBy::add_use_op() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_use_op()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SortBy.use_op) + return _add; } -inline const ::pg_query::GrantStmt& AlterDefaultPrivilegesStmt::_internal_action() const { - const ::pg_query::GrantStmt* p = _impl_.action_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_GrantStmt_default_instance_); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SortBy::use_op() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SortBy.use_op) + return _internal_use_op(); } -inline const ::pg_query::GrantStmt& AlterDefaultPrivilegesStmt::action() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDefaultPrivilegesStmt.action) - return _internal_action(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SortBy::_internal_use_op() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.use_op_; } -inline void AlterDefaultPrivilegesStmt::unsafe_arena_set_allocated_action( - ::pg_query::GrantStmt* action) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.action_); - } - _impl_.action_ = action; - if (action) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterDefaultPrivilegesStmt.action) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SortBy::_internal_mutable_use_op() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.use_op_; } -inline ::pg_query::GrantStmt* AlterDefaultPrivilegesStmt::release_action() { - - ::pg_query::GrantStmt* temp = _impl_.action_; - _impl_.action_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// int32 location = 5 [json_name = "location"]; +inline void SortBy::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline ::pg_query::GrantStmt* AlterDefaultPrivilegesStmt::unsafe_arena_release_action() { - // @@protoc_insertion_point(field_release:pg_query.AlterDefaultPrivilegesStmt.action) - - ::pg_query::GrantStmt* temp = _impl_.action_; - _impl_.action_ = nullptr; - return temp; +inline ::int32_t SortBy::location() const { + // @@protoc_insertion_point(field_get:pg_query.SortBy.location) + return _internal_location(); } -inline ::pg_query::GrantStmt* AlterDefaultPrivilegesStmt::_internal_mutable_action() { - - if (_impl_.action_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::GrantStmt>(GetArenaForAllocation()); - _impl_.action_ = p; - } - return _impl_.action_; +inline void SortBy::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.SortBy.location) } -inline ::pg_query::GrantStmt* AlterDefaultPrivilegesStmt::mutable_action() { - ::pg_query::GrantStmt* _msg = _internal_mutable_action(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterDefaultPrivilegesStmt.action) - return _msg; +inline ::int32_t SortBy::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void AlterDefaultPrivilegesStmt::set_allocated_action(::pg_query::GrantStmt* action) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.action_; - } - if (action) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(action); - if (message_arena != submessage_arena) { - action = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, action, submessage_arena); - } - - } else { - - } - _impl_.action_ = action; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDefaultPrivilegesStmt.action) +inline void SortBy::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// ClosePortalStmt +// WindowDef -// string portalname = 1 [json_name = "portalname"]; -inline void ClosePortalStmt::clear_portalname() { - _impl_.portalname_.ClearToEmpty(); +// string name = 1 [json_name = "name"]; +inline void WindowDef::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline const std::string& ClosePortalStmt::portalname() const { - // @@protoc_insertion_point(field_get:pg_query.ClosePortalStmt.portalname) - return _internal_portalname(); +inline const std::string& WindowDef::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowDef.name) + return _internal_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ClosePortalStmt::set_portalname(ArgT0&& arg0, ArgT... args) { - - _impl_.portalname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ClosePortalStmt.portalname) +template +inline PROTOBUF_ALWAYS_INLINE void WindowDef::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.WindowDef.name) } -inline std::string* ClosePortalStmt::mutable_portalname() { - std::string* _s = _internal_mutable_portalname(); - // @@protoc_insertion_point(field_mutable:pg_query.ClosePortalStmt.portalname) +inline std::string* WindowDef::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.name) return _s; } -inline const std::string& ClosePortalStmt::_internal_portalname() const { - return _impl_.portalname_.Get(); +inline const std::string& WindowDef::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline void ClosePortalStmt::_internal_set_portalname(const std::string& value) { - - _impl_.portalname_.Set(value, GetArenaForAllocation()); +inline void WindowDef::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline std::string* ClosePortalStmt::_internal_mutable_portalname() { - - return _impl_.portalname_.Mutable(GetArenaForAllocation()); +inline std::string* WindowDef::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline std::string* ClosePortalStmt::release_portalname() { - // @@protoc_insertion_point(field_release:pg_query.ClosePortalStmt.portalname) - return _impl_.portalname_.Release(); +inline std::string* WindowDef::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowDef.name) + return _impl_.name_.Release(); } -inline void ClosePortalStmt::set_allocated_portalname(std::string* portalname) { - if (portalname != nullptr) { - - } else { - - } - _impl_.portalname_.SetAllocated(portalname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.portalname_.IsDefault()) { - _impl_.portalname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ClosePortalStmt.portalname) +inline void WindowDef::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowDef.name) } -// ------------------------------------------------------------------- - -// ClusterStmt - -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool ClusterStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; -} -inline bool ClusterStmt::has_relation() const { - return _internal_has_relation(); -} -inline void ClusterStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +// string refname = 2 [json_name = "refname"]; +inline void WindowDef::clear_refname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refname_.ClearToEmpty(); } -inline const ::pg_query::RangeVar& ClusterStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const std::string& WindowDef::refname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowDef.refname) + return _internal_refname(); } -inline const ::pg_query::RangeVar& ClusterStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.ClusterStmt.relation) - return _internal_relation(); +template +inline PROTOBUF_ALWAYS_INLINE void WindowDef::set_refname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.refname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.WindowDef.refname) } -inline void ClusterStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); - } - _impl_.relation_ = relation; - if (relation) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ClusterStmt.relation) +inline std::string* WindowDef::mutable_refname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_refname(); + // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.refname) + return _s; } -inline ::pg_query::RangeVar* ClusterStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const std::string& WindowDef::_internal_refname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.refname_.Get(); } -inline ::pg_query::RangeVar* ClusterStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.ClusterStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; - return temp; +inline void WindowDef::_internal_set_refname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.refname_.Set(value, GetArena()); } -inline ::pg_query::RangeVar* ClusterStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; - } - return _impl_.relation_; +inline std::string* WindowDef::_internal_mutable_refname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.refname_.Mutable( GetArena()); } -inline ::pg_query::RangeVar* ClusterStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.ClusterStmt.relation) - return _msg; +inline std::string* WindowDef::release_refname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowDef.refname) + return _impl_.refname_.Release(); } -inline void ClusterStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.relation_; - } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); - if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); - } - - } else { - - } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.ClusterStmt.relation) +inline void WindowDef::set_allocated_refname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.refname_.IsDefault()) { + _impl_.refname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowDef.refname) } -// string indexname = 2 [json_name = "indexname"]; -inline void ClusterStmt::clear_indexname() { - _impl_.indexname_.ClearToEmpty(); +// repeated .pg_query.Node partition_clause = 3 [json_name = "partitionClause"]; +inline int WindowDef::_internal_partition_clause_size() const { + return _internal_partition_clause().size(); } -inline const std::string& ClusterStmt::indexname() const { - // @@protoc_insertion_point(field_get:pg_query.ClusterStmt.indexname) - return _internal_indexname(); +inline int WindowDef::partition_clause_size() const { + return _internal_partition_clause_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ClusterStmt::set_indexname(ArgT0&& arg0, ArgT... args) { - - _impl_.indexname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ClusterStmt.indexname) +inline void WindowDef::clear_partition_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.partition_clause_.Clear(); } -inline std::string* ClusterStmt::mutable_indexname() { - std::string* _s = _internal_mutable_indexname(); - // @@protoc_insertion_point(field_mutable:pg_query.ClusterStmt.indexname) - return _s; +inline ::pg_query::Node* WindowDef::mutable_partition_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.partition_clause) + return _internal_mutable_partition_clause()->Mutable(index); } -inline const std::string& ClusterStmt::_internal_indexname() const { - return _impl_.indexname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* WindowDef::mutable_partition_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.WindowDef.partition_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_partition_clause(); } -inline void ClusterStmt::_internal_set_indexname(const std::string& value) { - - _impl_.indexname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& WindowDef::partition_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowDef.partition_clause) + return _internal_partition_clause().Get(index); } -inline std::string* ClusterStmt::_internal_mutable_indexname() { - - return _impl_.indexname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* WindowDef::add_partition_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_partition_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.WindowDef.partition_clause) + return _add; } -inline std::string* ClusterStmt::release_indexname() { - // @@protoc_insertion_point(field_release:pg_query.ClusterStmt.indexname) - return _impl_.indexname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& WindowDef::partition_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.WindowDef.partition_clause) + return _internal_partition_clause(); } -inline void ClusterStmt::set_allocated_indexname(std::string* indexname) { - if (indexname != nullptr) { - - } else { - - } - _impl_.indexname_.SetAllocated(indexname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.indexname_.IsDefault()) { - _impl_.indexname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ClusterStmt.indexname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +WindowDef::_internal_partition_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.partition_clause_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +WindowDef::_internal_mutable_partition_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.partition_clause_; } -// repeated .pg_query.Node params = 3 [json_name = "params"]; -inline int ClusterStmt::_internal_params_size() const { - return _impl_.params_.size(); +// repeated .pg_query.Node order_clause = 4 [json_name = "orderClause"]; +inline int WindowDef::_internal_order_clause_size() const { + return _internal_order_clause().size(); } -inline int ClusterStmt::params_size() const { - return _internal_params_size(); +inline int WindowDef::order_clause_size() const { + return _internal_order_clause_size(); } -inline void ClusterStmt::clear_params() { - _impl_.params_.Clear(); +inline void WindowDef::clear_order_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.order_clause_.Clear(); } -inline ::pg_query::Node* ClusterStmt::mutable_params(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ClusterStmt.params) - return _impl_.params_.Mutable(index); +inline ::pg_query::Node* WindowDef::mutable_order_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.order_clause) + return _internal_mutable_order_clause()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ClusterStmt::mutable_params() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ClusterStmt.params) - return &_impl_.params_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* WindowDef::mutable_order_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.WindowDef.order_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_order_clause(); } -inline const ::pg_query::Node& ClusterStmt::_internal_params(int index) const { - return _impl_.params_.Get(index); +inline const ::pg_query::Node& WindowDef::order_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowDef.order_clause) + return _internal_order_clause().Get(index); } -inline const ::pg_query::Node& ClusterStmt::params(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ClusterStmt.params) - return _internal_params(index); +inline ::pg_query::Node* WindowDef::add_order_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_order_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.WindowDef.order_clause) + return _add; } -inline ::pg_query::Node* ClusterStmt::_internal_add_params() { - return _impl_.params_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& WindowDef::order_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.WindowDef.order_clause) + return _internal_order_clause(); } -inline ::pg_query::Node* ClusterStmt::add_params() { - ::pg_query::Node* _add = _internal_add_params(); - // @@protoc_insertion_point(field_add:pg_query.ClusterStmt.params) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +WindowDef::_internal_order_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.order_clause_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ClusterStmt::params() const { - // @@protoc_insertion_point(field_list:pg_query.ClusterStmt.params) - return _impl_.params_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +WindowDef::_internal_mutable_order_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.order_clause_; } -// ------------------------------------------------------------------- - -// CopyStmt - -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool CopyStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; +// int32 frame_options = 5 [json_name = "frameOptions"]; +inline void WindowDef::clear_frame_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.frame_options_ = 0; } -inline bool CopyStmt::has_relation() const { - return _internal_has_relation(); +inline ::int32_t WindowDef::frame_options() const { + // @@protoc_insertion_point(field_get:pg_query.WindowDef.frame_options) + return _internal_frame_options(); } -inline void CopyStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void WindowDef::set_frame_options(::int32_t value) { + _internal_set_frame_options(value); + // @@protoc_insertion_point(field_set:pg_query.WindowDef.frame_options) } -inline const ::pg_query::RangeVar& CopyStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline ::int32_t WindowDef::_internal_frame_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.frame_options_; } -inline const ::pg_query::RangeVar& CopyStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.CopyStmt.relation) - return _internal_relation(); +inline void WindowDef::_internal_set_frame_options(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.frame_options_ = value; +} + +// .pg_query.Node start_offset = 6 [json_name = "startOffset"]; +inline bool WindowDef::has_start_offset() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.start_offset_ != nullptr); + return value; +} +inline void WindowDef::clear_start_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.start_offset_ != nullptr) _impl_.start_offset_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& WindowDef::_internal_start_offset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.start_offset_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void CopyStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline const ::pg_query::Node& WindowDef::start_offset() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowDef.start_offset) + return _internal_start_offset(); +} +inline void WindowDef::unsafe_arena_set_allocated_start_offset(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.start_offset_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.start_offset_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CopyStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowDef.start_offset) } -inline ::pg_query::RangeVar* CopyStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* WindowDef::release_start_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.start_offset_; + _impl_.start_offset_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* CopyStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.CopyStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* WindowDef::unsafe_arena_release_start_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowDef.start_offset) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.start_offset_; + _impl_.start_offset_ = nullptr; return temp; } -inline ::pg_query::RangeVar* CopyStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::Node* WindowDef::_internal_mutable_start_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.start_offset_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.start_offset_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.relation_; + return _impl_.start_offset_; } -inline ::pg_query::RangeVar* CopyStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.relation) +inline ::pg_query::Node* WindowDef::mutable_start_offset() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_start_offset(); + // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.start_offset) return _msg; } -inline void CopyStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void WindowDef::set_allocated_start_offset(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.start_offset_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.CopyStmt.relation) -} -// .pg_query.Node query = 2 [json_name = "query"]; -inline bool CopyStmt::_internal_has_query() const { - return this != internal_default_instance() && _impl_.query_ != nullptr; + _impl_.start_offset_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowDef.start_offset) } -inline bool CopyStmt::has_query() const { - return _internal_has_query(); + +// .pg_query.Node end_offset = 7 [json_name = "endOffset"]; +inline bool WindowDef::has_end_offset() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.end_offset_ != nullptr); + return value; } -inline void CopyStmt::clear_query() { - if (GetArenaForAllocation() == nullptr && _impl_.query_ != nullptr) { - delete _impl_.query_; - } - _impl_.query_ = nullptr; +inline void WindowDef::clear_end_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.end_offset_ != nullptr) _impl_.end_offset_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& CopyStmt::_internal_query() const { - const ::pg_query::Node* p = _impl_.query_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& WindowDef::_internal_end_offset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.end_offset_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CopyStmt::query() const { - // @@protoc_insertion_point(field_get:pg_query.CopyStmt.query) - return _internal_query(); +inline const ::pg_query::Node& WindowDef::end_offset() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowDef.end_offset) + return _internal_end_offset(); } -inline void CopyStmt::unsafe_arena_set_allocated_query( - ::pg_query::Node* query) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.query_); +inline void WindowDef::unsafe_arena_set_allocated_end_offset(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.end_offset_); } - _impl_.query_ = query; - if (query) { - + _impl_.end_offset_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CopyStmt.query) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowDef.end_offset) } -inline ::pg_query::Node* CopyStmt::release_query() { - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::Node* WindowDef::release_end_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.end_offset_; + _impl_.end_offset_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CopyStmt::unsafe_arena_release_query() { - // @@protoc_insertion_point(field_release:pg_query.CopyStmt.query) - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::Node* WindowDef::unsafe_arena_release_end_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowDef.end_offset) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.end_offset_; + _impl_.end_offset_ = nullptr; return temp; } -inline ::pg_query::Node* CopyStmt::_internal_mutable_query() { - - if (_impl_.query_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.query_ = p; +inline ::pg_query::Node* WindowDef::_internal_mutable_end_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.end_offset_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.end_offset_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.query_; + return _impl_.end_offset_; } -inline ::pg_query::Node* CopyStmt::mutable_query() { - ::pg_query::Node* _msg = _internal_mutable_query(); - // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.query) +inline ::pg_query::Node* WindowDef::mutable_end_offset() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_end_offset(); + // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.end_offset) return _msg; } -inline void CopyStmt::set_allocated_query(::pg_query::Node* query) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void WindowDef::set_allocated_end_offset(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.query_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.end_offset_); } - if (query) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(query); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - query = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, query, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.query_ = query; - // @@protoc_insertion_point(field_set_allocated:pg_query.CopyStmt.query) -} -// repeated .pg_query.Node attlist = 3 [json_name = "attlist"]; -inline int CopyStmt::_internal_attlist_size() const { - return _impl_.attlist_.size(); -} -inline int CopyStmt::attlist_size() const { - return _internal_attlist_size(); -} -inline void CopyStmt::clear_attlist() { - _impl_.attlist_.Clear(); -} -inline ::pg_query::Node* CopyStmt::mutable_attlist(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.attlist) - return _impl_.attlist_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CopyStmt::mutable_attlist() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CopyStmt.attlist) - return &_impl_.attlist_; -} -inline const ::pg_query::Node& CopyStmt::_internal_attlist(int index) const { - return _impl_.attlist_.Get(index); -} -inline const ::pg_query::Node& CopyStmt::attlist(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CopyStmt.attlist) - return _internal_attlist(index); -} -inline ::pg_query::Node* CopyStmt::_internal_add_attlist() { - return _impl_.attlist_.Add(); -} -inline ::pg_query::Node* CopyStmt::add_attlist() { - ::pg_query::Node* _add = _internal_add_attlist(); - // @@protoc_insertion_point(field_add:pg_query.CopyStmt.attlist) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CopyStmt::attlist() const { - // @@protoc_insertion_point(field_list:pg_query.CopyStmt.attlist) - return _impl_.attlist_; + _impl_.end_offset_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowDef.end_offset) } -// bool is_from = 4 [json_name = "is_from"]; -inline void CopyStmt::clear_is_from() { - _impl_.is_from_ = false; +// int32 location = 8 [json_name = "location"]; +inline void WindowDef::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool CopyStmt::_internal_is_from() const { - return _impl_.is_from_; +inline ::int32_t WindowDef::location() const { + // @@protoc_insertion_point(field_get:pg_query.WindowDef.location) + return _internal_location(); } -inline bool CopyStmt::is_from() const { - // @@protoc_insertion_point(field_get:pg_query.CopyStmt.is_from) - return _internal_is_from(); +inline void WindowDef::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.WindowDef.location) } -inline void CopyStmt::_internal_set_is_from(bool value) { - - _impl_.is_from_ = value; +inline ::int32_t WindowDef::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void CopyStmt::set_is_from(bool value) { - _internal_set_is_from(value); - // @@protoc_insertion_point(field_set:pg_query.CopyStmt.is_from) +inline void WindowDef::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// bool is_program = 5 [json_name = "is_program"]; -inline void CopyStmt::clear_is_program() { - _impl_.is_program_ = false; -} -inline bool CopyStmt::_internal_is_program() const { - return _impl_.is_program_; -} -inline bool CopyStmt::is_program() const { - // @@protoc_insertion_point(field_get:pg_query.CopyStmt.is_program) - return _internal_is_program(); -} -inline void CopyStmt::_internal_set_is_program(bool value) { - - _impl_.is_program_ = value; -} -inline void CopyStmt::set_is_program(bool value) { - _internal_set_is_program(value); - // @@protoc_insertion_point(field_set:pg_query.CopyStmt.is_program) -} +// ------------------------------------------------------------------- -// string filename = 6 [json_name = "filename"]; -inline void CopyStmt::clear_filename() { - _impl_.filename_.ClearToEmpty(); -} -inline const std::string& CopyStmt::filename() const { - // @@protoc_insertion_point(field_get:pg_query.CopyStmt.filename) - return _internal_filename(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CopyStmt::set_filename(ArgT0&& arg0, ArgT... args) { - - _impl_.filename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CopyStmt.filename) -} -inline std::string* CopyStmt::mutable_filename() { - std::string* _s = _internal_mutable_filename(); - // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.filename) - return _s; -} -inline const std::string& CopyStmt::_internal_filename() const { - return _impl_.filename_.Get(); -} -inline void CopyStmt::_internal_set_filename(const std::string& value) { - - _impl_.filename_.Set(value, GetArenaForAllocation()); -} -inline std::string* CopyStmt::_internal_mutable_filename() { - - return _impl_.filename_.Mutable(GetArenaForAllocation()); -} -inline std::string* CopyStmt::release_filename() { - // @@protoc_insertion_point(field_release:pg_query.CopyStmt.filename) - return _impl_.filename_.Release(); -} -inline void CopyStmt::set_allocated_filename(std::string* filename) { - if (filename != nullptr) { - - } else { - - } - _impl_.filename_.SetAllocated(filename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.filename_.IsDefault()) { - _impl_.filename_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CopyStmt.filename) -} +// RangeSubselect -// repeated .pg_query.Node options = 7 [json_name = "options"]; -inline int CopyStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int CopyStmt::options_size() const { - return _internal_options_size(); -} -inline void CopyStmt::clear_options() { - _impl_.options_.Clear(); -} -inline ::pg_query::Node* CopyStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.options) - return _impl_.options_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CopyStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CopyStmt.options) - return &_impl_.options_; -} -inline const ::pg_query::Node& CopyStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +// bool lateral = 1 [json_name = "lateral"]; +inline void RangeSubselect::clear_lateral() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.lateral_ = false; } -inline const ::pg_query::Node& CopyStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CopyStmt.options) - return _internal_options(index); +inline bool RangeSubselect::lateral() const { + // @@protoc_insertion_point(field_get:pg_query.RangeSubselect.lateral) + return _internal_lateral(); } -inline ::pg_query::Node* CopyStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void RangeSubselect::set_lateral(bool value) { + _internal_set_lateral(value); + // @@protoc_insertion_point(field_set:pg_query.RangeSubselect.lateral) } -inline ::pg_query::Node* CopyStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CopyStmt.options) - return _add; +inline bool RangeSubselect::_internal_lateral() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.lateral_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CopyStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CopyStmt.options) - return _impl_.options_; +inline void RangeSubselect::_internal_set_lateral(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.lateral_ = value; } -// .pg_query.Node where_clause = 8 [json_name = "whereClause"]; -inline bool CopyStmt::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; -} -inline bool CopyStmt::has_where_clause() const { - return _internal_has_where_clause(); +// .pg_query.Node subquery = 2 [json_name = "subquery"]; +inline bool RangeSubselect::has_subquery() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.subquery_ != nullptr); + return value; } -inline void CopyStmt::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline void RangeSubselect::clear_subquery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.subquery_ != nullptr) _impl_.subquery_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& CopyStmt::_internal_where_clause() const { - const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& RangeSubselect::_internal_subquery() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.subquery_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CopyStmt::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.CopyStmt.where_clause) - return _internal_where_clause(); +inline const ::pg_query::Node& RangeSubselect::subquery() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeSubselect.subquery) + return _internal_subquery(); } -inline void CopyStmt::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); +inline void RangeSubselect::unsafe_arena_set_allocated_subquery(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.subquery_); } - _impl_.where_clause_ = where_clause; - if (where_clause) { - + _impl_.subquery_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CopyStmt.where_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeSubselect.subquery) } -inline ::pg_query::Node* CopyStmt::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::Node* RangeSubselect::release_subquery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.subquery_; + _impl_.subquery_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CopyStmt::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.CopyStmt.where_clause) - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::Node* RangeSubselect::unsafe_arena_release_subquery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeSubselect.subquery) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.subquery_; + _impl_.subquery_ = nullptr; return temp; } -inline ::pg_query::Node* CopyStmt::_internal_mutable_where_clause() { - - if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; +inline ::pg_query::Node* RangeSubselect::_internal_mutable_subquery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.subquery_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.subquery_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.where_clause_; + return _impl_.subquery_; } -inline ::pg_query::Node* CopyStmt::mutable_where_clause() { - ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.where_clause) +inline ::pg_query::Node* RangeSubselect::mutable_subquery() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_subquery(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeSubselect.subquery) return _msg; } -inline void CopyStmt::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeSubselect::set_allocated_subquery(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.where_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.subquery_); } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.CopyStmt.where_clause) -} - -// ------------------------------------------------------------------- - -// CreateStmt -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool CreateStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; + _impl_.subquery_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeSubselect.subquery) } -inline bool CreateStmt::has_relation() const { - return _internal_has_relation(); + +// .pg_query.Alias alias = 3 [json_name = "alias"]; +inline bool RangeSubselect::has_alias() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.alias_ != nullptr); + return value; } -inline void CreateStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void RangeSubselect::clear_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.alias_ != nullptr) _impl_.alias_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::RangeVar& CreateStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::Alias& RangeSubselect::_internal_alias() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Alias* p = _impl_.alias_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Alias_default_instance_); } -inline const ::pg_query::RangeVar& CreateStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.relation) - return _internal_relation(); +inline const ::pg_query::Alias& RangeSubselect::alias() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeSubselect.alias) + return _internal_alias(); } -inline void CreateStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void RangeSubselect::unsafe_arena_set_allocated_alias(::pg_query::Alias* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.alias_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeSubselect.alias) } -inline ::pg_query::RangeVar* CreateStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Alias* RangeSubselect::release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Alias* released = _impl_.alias_; + _impl_.alias_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* CreateStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.CreateStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Alias* RangeSubselect::unsafe_arena_release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeSubselect.alias) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Alias* temp = _impl_.alias_; + _impl_.alias_ = nullptr; return temp; } -inline ::pg_query::RangeVar* CreateStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::Alias* RangeSubselect::_internal_mutable_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.alias_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArena()); + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(p); } - return _impl_.relation_; + return _impl_.alias_; } -inline ::pg_query::RangeVar* CreateStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.relation) +inline ::pg_query::Alias* RangeSubselect::mutable_alias() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Alias* _msg = _internal_mutable_alias(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeSubselect.alias) return _msg; } -inline void CreateStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeSubselect::set_allocated_alias(::pg_query::Alias* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::Alias*>(_impl_.alias_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Alias*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.relation) + + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeSubselect.alias) } -// repeated .pg_query.Node table_elts = 2 [json_name = "tableElts"]; -inline int CreateStmt::_internal_table_elts_size() const { - return _impl_.table_elts_.size(); +// ------------------------------------------------------------------- + +// RangeFunction + +// bool lateral = 1 [json_name = "lateral"]; +inline void RangeFunction::clear_lateral() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.lateral_ = false; } -inline int CreateStmt::table_elts_size() const { - return _internal_table_elts_size(); +inline bool RangeFunction::lateral() const { + // @@protoc_insertion_point(field_get:pg_query.RangeFunction.lateral) + return _internal_lateral(); } -inline void CreateStmt::clear_table_elts() { - _impl_.table_elts_.Clear(); +inline void RangeFunction::set_lateral(bool value) { + _internal_set_lateral(value); + // @@protoc_insertion_point(field_set:pg_query.RangeFunction.lateral) } -inline ::pg_query::Node* CreateStmt::mutable_table_elts(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.table_elts) - return _impl_.table_elts_.Mutable(index); +inline bool RangeFunction::_internal_lateral() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.lateral_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateStmt::mutable_table_elts() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStmt.table_elts) - return &_impl_.table_elts_; +inline void RangeFunction::_internal_set_lateral(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.lateral_ = value; } -inline const ::pg_query::Node& CreateStmt::_internal_table_elts(int index) const { - return _impl_.table_elts_.Get(index); + +// bool ordinality = 2 [json_name = "ordinality"]; +inline void RangeFunction::clear_ordinality() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ordinality_ = false; } -inline const ::pg_query::Node& CreateStmt::table_elts(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.table_elts) - return _internal_table_elts(index); +inline bool RangeFunction::ordinality() const { + // @@protoc_insertion_point(field_get:pg_query.RangeFunction.ordinality) + return _internal_ordinality(); } -inline ::pg_query::Node* CreateStmt::_internal_add_table_elts() { - return _impl_.table_elts_.Add(); +inline void RangeFunction::set_ordinality(bool value) { + _internal_set_ordinality(value); + // @@protoc_insertion_point(field_set:pg_query.RangeFunction.ordinality) } -inline ::pg_query::Node* CreateStmt::add_table_elts() { - ::pg_query::Node* _add = _internal_add_table_elts(); - // @@protoc_insertion_point(field_add:pg_query.CreateStmt.table_elts) - return _add; +inline bool RangeFunction::_internal_ordinality() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ordinality_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateStmt::table_elts() const { - // @@protoc_insertion_point(field_list:pg_query.CreateStmt.table_elts) - return _impl_.table_elts_; +inline void RangeFunction::_internal_set_ordinality(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ordinality_ = value; } -// repeated .pg_query.Node inh_relations = 3 [json_name = "inhRelations"]; -inline int CreateStmt::_internal_inh_relations_size() const { - return _impl_.inh_relations_.size(); +// bool is_rowsfrom = 3 [json_name = "is_rowsfrom"]; +inline void RangeFunction::clear_is_rowsfrom() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_rowsfrom_ = false; } -inline int CreateStmt::inh_relations_size() const { - return _internal_inh_relations_size(); +inline bool RangeFunction::is_rowsfrom() const { + // @@protoc_insertion_point(field_get:pg_query.RangeFunction.is_rowsfrom) + return _internal_is_rowsfrom(); } -inline void CreateStmt::clear_inh_relations() { - _impl_.inh_relations_.Clear(); +inline void RangeFunction::set_is_rowsfrom(bool value) { + _internal_set_is_rowsfrom(value); + // @@protoc_insertion_point(field_set:pg_query.RangeFunction.is_rowsfrom) } -inline ::pg_query::Node* CreateStmt::mutable_inh_relations(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.inh_relations) - return _impl_.inh_relations_.Mutable(index); +inline bool RangeFunction::_internal_is_rowsfrom() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_rowsfrom_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateStmt::mutable_inh_relations() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStmt.inh_relations) - return &_impl_.inh_relations_; +inline void RangeFunction::_internal_set_is_rowsfrom(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_rowsfrom_ = value; } -inline const ::pg_query::Node& CreateStmt::_internal_inh_relations(int index) const { - return _impl_.inh_relations_.Get(index); + +// repeated .pg_query.Node functions = 4 [json_name = "functions"]; +inline int RangeFunction::_internal_functions_size() const { + return _internal_functions().size(); } -inline const ::pg_query::Node& CreateStmt::inh_relations(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.inh_relations) - return _internal_inh_relations(index); +inline int RangeFunction::functions_size() const { + return _internal_functions_size(); } -inline ::pg_query::Node* CreateStmt::_internal_add_inh_relations() { - return _impl_.inh_relations_.Add(); +inline void RangeFunction::clear_functions() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.functions_.Clear(); } -inline ::pg_query::Node* CreateStmt::add_inh_relations() { - ::pg_query::Node* _add = _internal_add_inh_relations(); - // @@protoc_insertion_point(field_add:pg_query.CreateStmt.inh_relations) +inline ::pg_query::Node* RangeFunction::mutable_functions(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeFunction.functions) + return _internal_mutable_functions()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeFunction::mutable_functions() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeFunction.functions) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_functions(); +} +inline const ::pg_query::Node& RangeFunction::functions(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeFunction.functions) + return _internal_functions().Get(index); +} +inline ::pg_query::Node* RangeFunction::add_functions() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_functions()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeFunction.functions) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateStmt::inh_relations() const { - // @@protoc_insertion_point(field_list:pg_query.CreateStmt.inh_relations) - return _impl_.inh_relations_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeFunction::functions() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeFunction.functions) + return _internal_functions(); } - -// .pg_query.PartitionBoundSpec partbound = 4 [json_name = "partbound"]; -inline bool CreateStmt::_internal_has_partbound() const { - return this != internal_default_instance() && _impl_.partbound_ != nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeFunction::_internal_functions() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.functions_; } -inline bool CreateStmt::has_partbound() const { - return _internal_has_partbound(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeFunction::_internal_mutable_functions() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.functions_; } -inline void CreateStmt::clear_partbound() { - if (GetArenaForAllocation() == nullptr && _impl_.partbound_ != nullptr) { - delete _impl_.partbound_; - } - _impl_.partbound_ = nullptr; + +// .pg_query.Alias alias = 5 [json_name = "alias"]; +inline bool RangeFunction::has_alias() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.alias_ != nullptr); + return value; } -inline const ::pg_query::PartitionBoundSpec& CreateStmt::_internal_partbound() const { - const ::pg_query::PartitionBoundSpec* p = _impl_.partbound_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_PartitionBoundSpec_default_instance_); +inline void RangeFunction::clear_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.alias_ != nullptr) _impl_.alias_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::PartitionBoundSpec& CreateStmt::partbound() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.partbound) - return _internal_partbound(); +inline const ::pg_query::Alias& RangeFunction::_internal_alias() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Alias* p = _impl_.alias_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Alias_default_instance_); } -inline void CreateStmt::unsafe_arena_set_allocated_partbound( - ::pg_query::PartitionBoundSpec* partbound) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.partbound_); +inline const ::pg_query::Alias& RangeFunction::alias() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeFunction.alias) + return _internal_alias(); +} +inline void RangeFunction::unsafe_arena_set_allocated_alias(::pg_query::Alias* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.alias_); } - _impl_.partbound_ = partbound; - if (partbound) { - + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateStmt.partbound) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeFunction.alias) } -inline ::pg_query::PartitionBoundSpec* CreateStmt::release_partbound() { - - ::pg_query::PartitionBoundSpec* temp = _impl_.partbound_; - _impl_.partbound_ = nullptr; +inline ::pg_query::Alias* RangeFunction::release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Alias* released = _impl_.alias_; + _impl_.alias_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::PartitionBoundSpec* CreateStmt::unsafe_arena_release_partbound() { - // @@protoc_insertion_point(field_release:pg_query.CreateStmt.partbound) - - ::pg_query::PartitionBoundSpec* temp = _impl_.partbound_; - _impl_.partbound_ = nullptr; +inline ::pg_query::Alias* RangeFunction::unsafe_arena_release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeFunction.alias) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Alias* temp = _impl_.alias_; + _impl_.alias_ = nullptr; return temp; } -inline ::pg_query::PartitionBoundSpec* CreateStmt::_internal_mutable_partbound() { - - if (_impl_.partbound_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::PartitionBoundSpec>(GetArenaForAllocation()); - _impl_.partbound_ = p; +inline ::pg_query::Alias* RangeFunction::_internal_mutable_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.alias_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArena()); + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(p); } - return _impl_.partbound_; + return _impl_.alias_; } -inline ::pg_query::PartitionBoundSpec* CreateStmt::mutable_partbound() { - ::pg_query::PartitionBoundSpec* _msg = _internal_mutable_partbound(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.partbound) +inline ::pg_query::Alias* RangeFunction::mutable_alias() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Alias* _msg = _internal_mutable_alias(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeFunction.alias) return _msg; } -inline void CreateStmt::set_allocated_partbound(::pg_query::PartitionBoundSpec* partbound) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeFunction::set_allocated_alias(::pg_query::Alias* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.partbound_; + delete reinterpret_cast<::pg_query::Alias*>(_impl_.alias_); } - if (partbound) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(partbound); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Alias*>(value)->GetArena(); if (message_arena != submessage_arena) { - partbound = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, partbound, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.partbound_ = partbound; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.partbound) + + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeFunction.alias) } -// .pg_query.PartitionSpec partspec = 5 [json_name = "partspec"]; -inline bool CreateStmt::_internal_has_partspec() const { - return this != internal_default_instance() && _impl_.partspec_ != nullptr; +// repeated .pg_query.Node coldeflist = 6 [json_name = "coldeflist"]; +inline int RangeFunction::_internal_coldeflist_size() const { + return _internal_coldeflist().size(); } -inline bool CreateStmt::has_partspec() const { - return _internal_has_partspec(); +inline int RangeFunction::coldeflist_size() const { + return _internal_coldeflist_size(); } -inline void CreateStmt::clear_partspec() { - if (GetArenaForAllocation() == nullptr && _impl_.partspec_ != nullptr) { - delete _impl_.partspec_; - } - _impl_.partspec_ = nullptr; +inline void RangeFunction::clear_coldeflist() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coldeflist_.Clear(); } -inline const ::pg_query::PartitionSpec& CreateStmt::_internal_partspec() const { - const ::pg_query::PartitionSpec* p = _impl_.partspec_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_PartitionSpec_default_instance_); +inline ::pg_query::Node* RangeFunction::mutable_coldeflist(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeFunction.coldeflist) + return _internal_mutable_coldeflist()->Mutable(index); } -inline const ::pg_query::PartitionSpec& CreateStmt::partspec() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.partspec) - return _internal_partspec(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeFunction::mutable_coldeflist() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeFunction.coldeflist) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_coldeflist(); +} +inline const ::pg_query::Node& RangeFunction::coldeflist(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeFunction.coldeflist) + return _internal_coldeflist().Get(index); +} +inline ::pg_query::Node* RangeFunction::add_coldeflist() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_coldeflist()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeFunction.coldeflist) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeFunction::coldeflist() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeFunction.coldeflist) + return _internal_coldeflist(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeFunction::_internal_coldeflist() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coldeflist_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeFunction::_internal_mutable_coldeflist() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.coldeflist_; +} + +// ------------------------------------------------------------------- + +// RangeTableFunc + +// bool lateral = 1 [json_name = "lateral"]; +inline void RangeTableFunc::clear_lateral() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.lateral_ = false; +} +inline bool RangeTableFunc::lateral() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.lateral) + return _internal_lateral(); +} +inline void RangeTableFunc::set_lateral(bool value) { + _internal_set_lateral(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTableFunc.lateral) +} +inline bool RangeTableFunc::_internal_lateral() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.lateral_; +} +inline void RangeTableFunc::_internal_set_lateral(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.lateral_ = value; +} + +// .pg_query.Node docexpr = 2 [json_name = "docexpr"]; +inline bool RangeTableFunc::has_docexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.docexpr_ != nullptr); + return value; +} +inline void RangeTableFunc::clear_docexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.docexpr_ != nullptr) _impl_.docexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& RangeTableFunc::_internal_docexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.docexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void CreateStmt::unsafe_arena_set_allocated_partspec( - ::pg_query::PartitionSpec* partspec) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.partspec_); +inline const ::pg_query::Node& RangeTableFunc::docexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.docexpr) + return _internal_docexpr(); +} +inline void RangeTableFunc::unsafe_arena_set_allocated_docexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.docexpr_); } - _impl_.partspec_ = partspec; - if (partspec) { - + _impl_.docexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateStmt.partspec) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFunc.docexpr) } -inline ::pg_query::PartitionSpec* CreateStmt::release_partspec() { - - ::pg_query::PartitionSpec* temp = _impl_.partspec_; - _impl_.partspec_ = nullptr; +inline ::pg_query::Node* RangeTableFunc::release_docexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.docexpr_; + _impl_.docexpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::PartitionSpec* CreateStmt::unsafe_arena_release_partspec() { - // @@protoc_insertion_point(field_release:pg_query.CreateStmt.partspec) - - ::pg_query::PartitionSpec* temp = _impl_.partspec_; - _impl_.partspec_ = nullptr; +inline ::pg_query::Node* RangeTableFunc::unsafe_arena_release_docexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTableFunc.docexpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.docexpr_; + _impl_.docexpr_ = nullptr; return temp; } -inline ::pg_query::PartitionSpec* CreateStmt::_internal_mutable_partspec() { - - if (_impl_.partspec_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::PartitionSpec>(GetArenaForAllocation()); - _impl_.partspec_ = p; +inline ::pg_query::Node* RangeTableFunc::_internal_mutable_docexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.docexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.docexpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.partspec_; + return _impl_.docexpr_; } -inline ::pg_query::PartitionSpec* CreateStmt::mutable_partspec() { - ::pg_query::PartitionSpec* _msg = _internal_mutable_partspec(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.partspec) +inline ::pg_query::Node* RangeTableFunc::mutable_docexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_docexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.docexpr) return _msg; } -inline void CreateStmt::set_allocated_partspec(::pg_query::PartitionSpec* partspec) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeTableFunc::set_allocated_docexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.partspec_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.docexpr_); } - if (partspec) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(partspec); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - partspec = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, partspec, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.partspec_ = partspec; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.partspec) -} -// .pg_query.TypeName of_typename = 6 [json_name = "ofTypename"]; -inline bool CreateStmt::_internal_has_of_typename() const { - return this != internal_default_instance() && _impl_.of_typename_ != nullptr; + _impl_.docexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFunc.docexpr) } -inline bool CreateStmt::has_of_typename() const { - return _internal_has_of_typename(); + +// .pg_query.Node rowexpr = 3 [json_name = "rowexpr"]; +inline bool RangeTableFunc::has_rowexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.rowexpr_ != nullptr); + return value; } -inline void CreateStmt::clear_of_typename() { - if (GetArenaForAllocation() == nullptr && _impl_.of_typename_ != nullptr) { - delete _impl_.of_typename_; - } - _impl_.of_typename_ = nullptr; +inline void RangeTableFunc::clear_rowexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.rowexpr_ != nullptr) _impl_.rowexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::TypeName& CreateStmt::_internal_of_typename() const { - const ::pg_query::TypeName* p = _impl_.of_typename_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline const ::pg_query::Node& RangeTableFunc::_internal_rowexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.rowexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::TypeName& CreateStmt::of_typename() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.of_typename) - return _internal_of_typename(); +inline const ::pg_query::Node& RangeTableFunc::rowexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.rowexpr) + return _internal_rowexpr(); } -inline void CreateStmt::unsafe_arena_set_allocated_of_typename( - ::pg_query::TypeName* of_typename) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.of_typename_); +inline void RangeTableFunc::unsafe_arena_set_allocated_rowexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.rowexpr_); } - _impl_.of_typename_ = of_typename; - if (of_typename) { - + _impl_.rowexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateStmt.of_typename) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFunc.rowexpr) } -inline ::pg_query::TypeName* CreateStmt::release_of_typename() { - - ::pg_query::TypeName* temp = _impl_.of_typename_; - _impl_.of_typename_ = nullptr; +inline ::pg_query::Node* RangeTableFunc::release_rowexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.rowexpr_; + _impl_.rowexpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* CreateStmt::unsafe_arena_release_of_typename() { - // @@protoc_insertion_point(field_release:pg_query.CreateStmt.of_typename) - - ::pg_query::TypeName* temp = _impl_.of_typename_; - _impl_.of_typename_ = nullptr; +inline ::pg_query::Node* RangeTableFunc::unsafe_arena_release_rowexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTableFunc.rowexpr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.rowexpr_; + _impl_.rowexpr_ = nullptr; return temp; } -inline ::pg_query::TypeName* CreateStmt::_internal_mutable_of_typename() { - - if (_impl_.of_typename_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.of_typename_ = p; +inline ::pg_query::Node* RangeTableFunc::_internal_mutable_rowexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.rowexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.rowexpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.of_typename_; + return _impl_.rowexpr_; } -inline ::pg_query::TypeName* CreateStmt::mutable_of_typename() { - ::pg_query::TypeName* _msg = _internal_mutable_of_typename(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.of_typename) +inline ::pg_query::Node* RangeTableFunc::mutable_rowexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_rowexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.rowexpr) return _msg; } -inline void CreateStmt::set_allocated_of_typename(::pg_query::TypeName* of_typename) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeTableFunc::set_allocated_rowexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.of_typename_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.rowexpr_); } - if (of_typename) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(of_typename); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - of_typename = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, of_typename, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.of_typename_ = of_typename; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.of_typename) -} -// repeated .pg_query.Node constraints = 7 [json_name = "constraints"]; -inline int CreateStmt::_internal_constraints_size() const { - return _impl_.constraints_.size(); -} -inline int CreateStmt::constraints_size() const { - return _internal_constraints_size(); + _impl_.rowexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFunc.rowexpr) } -inline void CreateStmt::clear_constraints() { - _impl_.constraints_.Clear(); + +// repeated .pg_query.Node namespaces = 4 [json_name = "namespaces"]; +inline int RangeTableFunc::_internal_namespaces_size() const { + return _internal_namespaces().size(); } -inline ::pg_query::Node* CreateStmt::mutable_constraints(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.constraints) - return _impl_.constraints_.Mutable(index); +inline int RangeTableFunc::namespaces_size() const { + return _internal_namespaces_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateStmt::mutable_constraints() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStmt.constraints) - return &_impl_.constraints_; +inline void RangeTableFunc::clear_namespaces() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.namespaces_.Clear(); } -inline const ::pg_query::Node& CreateStmt::_internal_constraints(int index) const { - return _impl_.constraints_.Get(index); +inline ::pg_query::Node* RangeTableFunc::mutable_namespaces(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.namespaces) + return _internal_mutable_namespaces()->Mutable(index); } -inline const ::pg_query::Node& CreateStmt::constraints(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.constraints) - return _internal_constraints(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTableFunc::mutable_namespaces() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTableFunc.namespaces) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_namespaces(); } -inline ::pg_query::Node* CreateStmt::_internal_add_constraints() { - return _impl_.constraints_.Add(); +inline const ::pg_query::Node& RangeTableFunc::namespaces(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.namespaces) + return _internal_namespaces().Get(index); } -inline ::pg_query::Node* CreateStmt::add_constraints() { - ::pg_query::Node* _add = _internal_add_constraints(); - // @@protoc_insertion_point(field_add:pg_query.CreateStmt.constraints) +inline ::pg_query::Node* RangeTableFunc::add_namespaces() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_namespaces()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTableFunc.namespaces) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateStmt::constraints() const { - // @@protoc_insertion_point(field_list:pg_query.CreateStmt.constraints) - return _impl_.constraints_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTableFunc::namespaces() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTableFunc.namespaces) + return _internal_namespaces(); } - -// repeated .pg_query.Node options = 8 [json_name = "options"]; -inline int CreateStmt::_internal_options_size() const { - return _impl_.options_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTableFunc::_internal_namespaces() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.namespaces_; } -inline int CreateStmt::options_size() const { - return _internal_options_size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTableFunc::_internal_mutable_namespaces() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.namespaces_; } -inline void CreateStmt::clear_options() { - _impl_.options_.Clear(); + +// repeated .pg_query.Node columns = 5 [json_name = "columns"]; +inline int RangeTableFunc::_internal_columns_size() const { + return _internal_columns().size(); } -inline ::pg_query::Node* CreateStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.options) - return _impl_.options_.Mutable(index); +inline int RangeTableFunc::columns_size() const { + return _internal_columns_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStmt.options) - return &_impl_.options_; +inline void RangeTableFunc::clear_columns() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.columns_.Clear(); } -inline const ::pg_query::Node& CreateStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::Node* RangeTableFunc::mutable_columns(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.columns) + return _internal_mutable_columns()->Mutable(index); } -inline const ::pg_query::Node& CreateStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.options) - return _internal_options(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTableFunc::mutable_columns() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTableFunc.columns) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_columns(); } -inline ::pg_query::Node* CreateStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::pg_query::Node& RangeTableFunc::columns(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.columns) + return _internal_columns().Get(index); } -inline ::pg_query::Node* CreateStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateStmt.options) +inline ::pg_query::Node* RangeTableFunc::add_columns() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_columns()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTableFunc.columns) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateStmt.options) - return _impl_.options_; -} - -// .pg_query.OnCommitAction oncommit = 9 [json_name = "oncommit"]; -inline void CreateStmt::clear_oncommit() { - _impl_.oncommit_ = 0; -} -inline ::pg_query::OnCommitAction CreateStmt::_internal_oncommit() const { - return static_cast< ::pg_query::OnCommitAction >(_impl_.oncommit_); -} -inline ::pg_query::OnCommitAction CreateStmt::oncommit() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.oncommit) - return _internal_oncommit(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTableFunc::columns() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTableFunc.columns) + return _internal_columns(); } -inline void CreateStmt::_internal_set_oncommit(::pg_query::OnCommitAction value) { - - _impl_.oncommit_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTableFunc::_internal_columns() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.columns_; } -inline void CreateStmt::set_oncommit(::pg_query::OnCommitAction value) { - _internal_set_oncommit(value); - // @@protoc_insertion_point(field_set:pg_query.CreateStmt.oncommit) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTableFunc::_internal_mutable_columns() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.columns_; } -// string tablespacename = 10 [json_name = "tablespacename"]; -inline void CreateStmt::clear_tablespacename() { - _impl_.tablespacename_.ClearToEmpty(); -} -inline const std::string& CreateStmt::tablespacename() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.tablespacename) - return _internal_tablespacename(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CreateStmt::set_tablespacename(ArgT0&& arg0, ArgT... args) { - - _impl_.tablespacename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateStmt.tablespacename) -} -inline std::string* CreateStmt::mutable_tablespacename() { - std::string* _s = _internal_mutable_tablespacename(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.tablespacename) - return _s; -} -inline const std::string& CreateStmt::_internal_tablespacename() const { - return _impl_.tablespacename_.Get(); +// .pg_query.Alias alias = 6 [json_name = "alias"]; +inline bool RangeTableFunc::has_alias() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.alias_ != nullptr); + return value; } -inline void CreateStmt::_internal_set_tablespacename(const std::string& value) { - - _impl_.tablespacename_.Set(value, GetArenaForAllocation()); +inline void RangeTableFunc::clear_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.alias_ != nullptr) _impl_.alias_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline std::string* CreateStmt::_internal_mutable_tablespacename() { - - return _impl_.tablespacename_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Alias& RangeTableFunc::_internal_alias() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Alias* p = _impl_.alias_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Alias_default_instance_); } -inline std::string* CreateStmt::release_tablespacename() { - // @@protoc_insertion_point(field_release:pg_query.CreateStmt.tablespacename) - return _impl_.tablespacename_.Release(); +inline const ::pg_query::Alias& RangeTableFunc::alias() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.alias) + return _internal_alias(); } -inline void CreateStmt::set_allocated_tablespacename(std::string* tablespacename) { - if (tablespacename != nullptr) { - - } else { - +inline void RangeTableFunc::unsafe_arena_set_allocated_alias(::pg_query::Alias* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.alias_); } - _impl_.tablespacename_.SetAllocated(tablespacename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.tablespacename_.IsDefault()) { - _impl_.tablespacename_.Set("", GetArenaForAllocation()); + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.tablespacename) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFunc.alias) } +inline ::pg_query::Alias* RangeTableFunc::release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// string access_method = 11 [json_name = "accessMethod"]; -inline void CreateStmt::clear_access_method() { - _impl_.access_method_.ClearToEmpty(); -} -inline const std::string& CreateStmt::access_method() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.access_method) - return _internal_access_method(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CreateStmt::set_access_method(ArgT0&& arg0, ArgT... args) { - - _impl_.access_method_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateStmt.access_method) -} -inline std::string* CreateStmt::mutable_access_method() { - std::string* _s = _internal_mutable_access_method(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.access_method) - return _s; -} -inline const std::string& CreateStmt::_internal_access_method() const { - return _impl_.access_method_.Get(); + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Alias* released = _impl_.alias_; + _impl_.alias_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline void CreateStmt::_internal_set_access_method(const std::string& value) { - - _impl_.access_method_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Alias* RangeTableFunc::unsafe_arena_release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTableFunc.alias) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Alias* temp = _impl_.alias_; + _impl_.alias_ = nullptr; + return temp; } -inline std::string* CreateStmt::_internal_mutable_access_method() { - - return _impl_.access_method_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Alias* RangeTableFunc::_internal_mutable_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.alias_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArena()); + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(p); + } + return _impl_.alias_; } -inline std::string* CreateStmt::release_access_method() { - // @@protoc_insertion_point(field_release:pg_query.CreateStmt.access_method) - return _impl_.access_method_.Release(); +inline ::pg_query::Alias* RangeTableFunc::mutable_alias() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Alias* _msg = _internal_mutable_alias(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.alias) + return _msg; } -inline void CreateStmt::set_allocated_access_method(std::string* access_method) { - if (access_method != nullptr) { - - } else { - +inline void RangeTableFunc::set_allocated_alias(::pg_query::Alias* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Alias*>(_impl_.alias_); } - _impl_.access_method_.SetAllocated(access_method, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.access_method_.IsDefault()) { - _impl_.access_method_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Alias*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.access_method) + + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFunc.alias) } -// bool if_not_exists = 12 [json_name = "if_not_exists"]; -inline void CreateStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +// int32 location = 7 [json_name = "location"]; +inline void RangeTableFunc::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool CreateStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline ::int32_t RangeTableFunc::location() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.location) + return _internal_location(); } -inline bool CreateStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStmt.if_not_exists) - return _internal_if_not_exists(); +inline void RangeTableFunc::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTableFunc.location) } -inline void CreateStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline ::int32_t RangeTableFunc::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void CreateStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.CreateStmt.if_not_exists) +inline void RangeTableFunc::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// DefineStmt +// RangeTableFuncCol -// .pg_query.ObjectType kind = 1 [json_name = "kind"]; -inline void DefineStmt::clear_kind() { - _impl_.kind_ = 0; -} -inline ::pg_query::ObjectType DefineStmt::_internal_kind() const { - return static_cast< ::pg_query::ObjectType >(_impl_.kind_); +// string colname = 1 [json_name = "colname"]; +inline void RangeTableFuncCol::clear_colname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colname_.ClearToEmpty(); } -inline ::pg_query::ObjectType DefineStmt::kind() const { - // @@protoc_insertion_point(field_get:pg_query.DefineStmt.kind) - return _internal_kind(); +inline const std::string& RangeTableFuncCol::colname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.colname) + return _internal_colname(); } -inline void DefineStmt::_internal_set_kind(::pg_query::ObjectType value) { - - _impl_.kind_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void RangeTableFuncCol::set_colname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.colname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RangeTableFuncCol.colname) } -inline void DefineStmt::set_kind(::pg_query::ObjectType value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.DefineStmt.kind) +inline std::string* RangeTableFuncCol::mutable_colname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_colname(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFuncCol.colname) + return _s; } - -// bool oldstyle = 2 [json_name = "oldstyle"]; -inline void DefineStmt::clear_oldstyle() { - _impl_.oldstyle_ = false; +inline const std::string& RangeTableFuncCol::_internal_colname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.colname_.Get(); } -inline bool DefineStmt::_internal_oldstyle() const { - return _impl_.oldstyle_; +inline void RangeTableFuncCol::_internal_set_colname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.colname_.Set(value, GetArena()); } -inline bool DefineStmt::oldstyle() const { - // @@protoc_insertion_point(field_get:pg_query.DefineStmt.oldstyle) - return _internal_oldstyle(); +inline std::string* RangeTableFuncCol::_internal_mutable_colname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.colname_.Mutable( GetArena()); } -inline void DefineStmt::_internal_set_oldstyle(bool value) { - - _impl_.oldstyle_ = value; +inline std::string* RangeTableFuncCol::release_colname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTableFuncCol.colname) + return _impl_.colname_.Release(); } -inline void DefineStmt::set_oldstyle(bool value) { - _internal_set_oldstyle(value); - // @@protoc_insertion_point(field_set:pg_query.DefineStmt.oldstyle) +inline void RangeTableFuncCol::set_allocated_colname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.colname_.IsDefault()) { + _impl_.colname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFuncCol.colname) } -// repeated .pg_query.Node defnames = 3 [json_name = "defnames"]; -inline int DefineStmt::_internal_defnames_size() const { - return _impl_.defnames_.size(); +// .pg_query.TypeName type_name = 2 [json_name = "typeName"]; +inline bool RangeTableFuncCol::has_type_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.type_name_ != nullptr); + return value; } -inline int DefineStmt::defnames_size() const { - return _internal_defnames_size(); +inline void RangeTableFuncCol::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.type_name_ != nullptr) _impl_.type_name_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void DefineStmt::clear_defnames() { - _impl_.defnames_.Clear(); +inline const ::pg_query::TypeName& RangeTableFuncCol::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.type_name_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline ::pg_query::Node* DefineStmt::mutable_defnames(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DefineStmt.defnames) - return _impl_.defnames_.Mutable(index); +inline const ::pg_query::TypeName& RangeTableFuncCol::type_name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.type_name) + return _internal_type_name(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DefineStmt::mutable_defnames() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DefineStmt.defnames) - return &_impl_.defnames_; +inline void RangeTableFuncCol::unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.type_name_); + } + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFuncCol.type_name) } -inline const ::pg_query::Node& DefineStmt::_internal_defnames(int index) const { - return _impl_.defnames_.Get(index); +inline ::pg_query::TypeName* RangeTableFuncCol::release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* released = _impl_.type_name_; + _impl_.type_name_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& DefineStmt::defnames(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DefineStmt.defnames) - return _internal_defnames(index); +inline ::pg_query::TypeName* RangeTableFuncCol::unsafe_arena_release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTableFuncCol.type_name) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* temp = _impl_.type_name_; + _impl_.type_name_ = nullptr; + return temp; } -inline ::pg_query::Node* DefineStmt::_internal_add_defnames() { - return _impl_.defnames_.Add(); +inline ::pg_query::TypeName* RangeTableFuncCol::_internal_mutable_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.type_name_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(p); + } + return _impl_.type_name_; } -inline ::pg_query::Node* DefineStmt::add_defnames() { - ::pg_query::Node* _add = _internal_add_defnames(); - // @@protoc_insertion_point(field_add:pg_query.DefineStmt.defnames) - return _add; +inline ::pg_query::TypeName* RangeTableFuncCol::mutable_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_type_name(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFuncCol.type_name) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DefineStmt::defnames() const { - // @@protoc_insertion_point(field_list:pg_query.DefineStmt.defnames) - return _impl_.defnames_; +inline void RangeTableFuncCol::set_allocated_type_name(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.type_name_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFuncCol.type_name) } -// repeated .pg_query.Node args = 4 [json_name = "args"]; -inline int DefineStmt::_internal_args_size() const { - return _impl_.args_.size(); +// bool for_ordinality = 3 [json_name = "for_ordinality"]; +inline void RangeTableFuncCol::clear_for_ordinality() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.for_ordinality_ = false; } -inline int DefineStmt::args_size() const { - return _internal_args_size(); +inline bool RangeTableFuncCol::for_ordinality() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.for_ordinality) + return _internal_for_ordinality(); } -inline void DefineStmt::clear_args() { - _impl_.args_.Clear(); +inline void RangeTableFuncCol::set_for_ordinality(bool value) { + _internal_set_for_ordinality(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTableFuncCol.for_ordinality) } -inline ::pg_query::Node* DefineStmt::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DefineStmt.args) - return _impl_.args_.Mutable(index); +inline bool RangeTableFuncCol::_internal_for_ordinality() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.for_ordinality_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DefineStmt::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DefineStmt.args) - return &_impl_.args_; +inline void RangeTableFuncCol::_internal_set_for_ordinality(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.for_ordinality_ = value; } -inline const ::pg_query::Node& DefineStmt::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// bool is_not_null = 4 [json_name = "is_not_null"]; +inline void RangeTableFuncCol::clear_is_not_null() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_not_null_ = false; } -inline const ::pg_query::Node& DefineStmt::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DefineStmt.args) - return _internal_args(index); +inline bool RangeTableFuncCol::is_not_null() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.is_not_null) + return _internal_is_not_null(); } -inline ::pg_query::Node* DefineStmt::_internal_add_args() { - return _impl_.args_.Add(); +inline void RangeTableFuncCol::set_is_not_null(bool value) { + _internal_set_is_not_null(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTableFuncCol.is_not_null) } -inline ::pg_query::Node* DefineStmt::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.DefineStmt.args) - return _add; +inline bool RangeTableFuncCol::_internal_is_not_null() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_not_null_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DefineStmt::args() const { - // @@protoc_insertion_point(field_list:pg_query.DefineStmt.args) - return _impl_.args_; +inline void RangeTableFuncCol::_internal_set_is_not_null(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_not_null_ = value; } -// repeated .pg_query.Node definition = 5 [json_name = "definition"]; -inline int DefineStmt::_internal_definition_size() const { - return _impl_.definition_.size(); +// .pg_query.Node colexpr = 5 [json_name = "colexpr"]; +inline bool RangeTableFuncCol::has_colexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.colexpr_ != nullptr); + return value; } -inline int DefineStmt::definition_size() const { - return _internal_definition_size(); +inline void RangeTableFuncCol::clear_colexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.colexpr_ != nullptr) _impl_.colexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline void DefineStmt::clear_definition() { - _impl_.definition_.Clear(); +inline const ::pg_query::Node& RangeTableFuncCol::_internal_colexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.colexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* DefineStmt::mutable_definition(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DefineStmt.definition) - return _impl_.definition_.Mutable(index); +inline const ::pg_query::Node& RangeTableFuncCol::colexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.colexpr) + return _internal_colexpr(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DefineStmt::mutable_definition() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DefineStmt.definition) - return &_impl_.definition_; +inline void RangeTableFuncCol::unsafe_arena_set_allocated_colexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.colexpr_); + } + _impl_.colexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFuncCol.colexpr) } -inline const ::pg_query::Node& DefineStmt::_internal_definition(int index) const { - return _impl_.definition_.Get(index); +inline ::pg_query::Node* RangeTableFuncCol::release_colexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.colexpr_; + _impl_.colexpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& DefineStmt::definition(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DefineStmt.definition) - return _internal_definition(index); +inline ::pg_query::Node* RangeTableFuncCol::unsafe_arena_release_colexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTableFuncCol.colexpr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.colexpr_; + _impl_.colexpr_ = nullptr; + return temp; } -inline ::pg_query::Node* DefineStmt::_internal_add_definition() { - return _impl_.definition_.Add(); +inline ::pg_query::Node* RangeTableFuncCol::_internal_mutable_colexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.colexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.colexpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.colexpr_; } -inline ::pg_query::Node* DefineStmt::add_definition() { - ::pg_query::Node* _add = _internal_add_definition(); - // @@protoc_insertion_point(field_add:pg_query.DefineStmt.definition) - return _add; +inline ::pg_query::Node* RangeTableFuncCol::mutable_colexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_colexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFuncCol.colexpr) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DefineStmt::definition() const { - // @@protoc_insertion_point(field_list:pg_query.DefineStmt.definition) - return _impl_.definition_; +inline void RangeTableFuncCol::set_allocated_colexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.colexpr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.colexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFuncCol.colexpr) } -// bool if_not_exists = 6 [json_name = "if_not_exists"]; -inline void DefineStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +// .pg_query.Node coldefexpr = 6 [json_name = "coldefexpr"]; +inline bool RangeTableFuncCol::has_coldefexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.coldefexpr_ != nullptr); + return value; } -inline bool DefineStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline void RangeTableFuncCol::clear_coldefexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.coldefexpr_ != nullptr) _impl_.coldefexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline bool DefineStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.DefineStmt.if_not_exists) - return _internal_if_not_exists(); +inline const ::pg_query::Node& RangeTableFuncCol::_internal_coldefexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.coldefexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void DefineStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline const ::pg_query::Node& RangeTableFuncCol::coldefexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.coldefexpr) + return _internal_coldefexpr(); } -inline void DefineStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.DefineStmt.if_not_exists) +inline void RangeTableFuncCol::unsafe_arena_set_allocated_coldefexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.coldefexpr_); + } + _impl_.coldefexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFuncCol.coldefexpr) } +inline ::pg_query::Node* RangeTableFuncCol::release_coldefexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool replace = 7 [json_name = "replace"]; -inline void DefineStmt::clear_replace() { - _impl_.replace_ = false; -} -inline bool DefineStmt::_internal_replace() const { - return _impl_.replace_; + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.coldefexpr_; + _impl_.coldefexpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool DefineStmt::replace() const { - // @@protoc_insertion_point(field_get:pg_query.DefineStmt.replace) - return _internal_replace(); +inline ::pg_query::Node* RangeTableFuncCol::unsafe_arena_release_coldefexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTableFuncCol.coldefexpr) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.coldefexpr_; + _impl_.coldefexpr_ = nullptr; + return temp; } -inline void DefineStmt::_internal_set_replace(bool value) { - - _impl_.replace_ = value; +inline ::pg_query::Node* RangeTableFuncCol::_internal_mutable_coldefexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.coldefexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.coldefexpr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.coldefexpr_; } -inline void DefineStmt::set_replace(bool value) { - _internal_set_replace(value); - // @@protoc_insertion_point(field_set:pg_query.DefineStmt.replace) +inline ::pg_query::Node* RangeTableFuncCol::mutable_coldefexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_coldefexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFuncCol.coldefexpr) + return _msg; } +inline void RangeTableFuncCol::set_allocated_coldefexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.coldefexpr_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } -// DropStmt + _impl_.coldefexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFuncCol.coldefexpr) +} -// repeated .pg_query.Node objects = 1 [json_name = "objects"]; -inline int DropStmt::_internal_objects_size() const { - return _impl_.objects_.size(); +// int32 location = 7 [json_name = "location"]; +inline void RangeTableFuncCol::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline int DropStmt::objects_size() const { - return _internal_objects_size(); +inline ::int32_t RangeTableFuncCol::location() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.location) + return _internal_location(); } -inline void DropStmt::clear_objects() { - _impl_.objects_.Clear(); +inline void RangeTableFuncCol::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTableFuncCol.location) } -inline ::pg_query::Node* DropStmt::mutable_objects(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DropStmt.objects) - return _impl_.objects_.Mutable(index); +inline ::int32_t RangeTableFuncCol::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DropStmt::mutable_objects() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DropStmt.objects) - return &_impl_.objects_; +inline void RangeTableFuncCol::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -inline const ::pg_query::Node& DropStmt::_internal_objects(int index) const { - return _impl_.objects_.Get(index); + +// ------------------------------------------------------------------- + +// RangeTableSample + +// .pg_query.Node relation = 1 [json_name = "relation"]; +inline bool RangeTableSample::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline const ::pg_query::Node& DropStmt::objects(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DropStmt.objects) - return _internal_objects(index); +inline void RangeTableSample::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* DropStmt::_internal_add_objects() { - return _impl_.objects_.Add(); +inline const ::pg_query::Node& RangeTableSample::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* DropStmt::add_objects() { - ::pg_query::Node* _add = _internal_add_objects(); - // @@protoc_insertion_point(field_add:pg_query.DropStmt.objects) - return _add; +inline const ::pg_query::Node& RangeTableSample::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.relation) + return _internal_relation(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DropStmt::objects() const { - // @@protoc_insertion_point(field_list:pg_query.DropStmt.objects) - return _impl_.objects_; +inline void RangeTableSample::unsafe_arena_set_allocated_relation(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableSample.relation) } +inline ::pg_query::Node* RangeTableSample::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// .pg_query.ObjectType remove_type = 2 [json_name = "removeType"]; -inline void DropStmt::clear_remove_type() { - _impl_.remove_type_ = 0; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::ObjectType DropStmt::_internal_remove_type() const { - return static_cast< ::pg_query::ObjectType >(_impl_.remove_type_); +inline ::pg_query::Node* RangeTableSample::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTableSample.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline ::pg_query::ObjectType DropStmt::remove_type() const { - // @@protoc_insertion_point(field_get:pg_query.DropStmt.remove_type) - return _internal_remove_type(); +inline ::pg_query::Node* RangeTableSample::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.relation_; } -inline void DropStmt::_internal_set_remove_type(::pg_query::ObjectType value) { - - _impl_.remove_type_ = value; +inline ::pg_query::Node* RangeTableSample::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableSample.relation) + return _msg; } -inline void DropStmt::set_remove_type(::pg_query::ObjectType value) { - _internal_set_remove_type(value); - // @@protoc_insertion_point(field_set:pg_query.DropStmt.remove_type) +inline void RangeTableSample::set_allocated_relation(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.relation_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.relation_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableSample.relation) } -// .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; -inline void DropStmt::clear_behavior() { - _impl_.behavior_ = 0; +// repeated .pg_query.Node method = 2 [json_name = "method"]; +inline int RangeTableSample::_internal_method_size() const { + return _internal_method().size(); } -inline ::pg_query::DropBehavior DropStmt::_internal_behavior() const { - return static_cast< ::pg_query::DropBehavior >(_impl_.behavior_); +inline int RangeTableSample::method_size() const { + return _internal_method_size(); } -inline ::pg_query::DropBehavior DropStmt::behavior() const { - // @@protoc_insertion_point(field_get:pg_query.DropStmt.behavior) - return _internal_behavior(); +inline void RangeTableSample::clear_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.method_.Clear(); } -inline void DropStmt::_internal_set_behavior(::pg_query::DropBehavior value) { - - _impl_.behavior_ = value; +inline ::pg_query::Node* RangeTableSample::mutable_method(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableSample.method) + return _internal_mutable_method()->Mutable(index); } -inline void DropStmt::set_behavior(::pg_query::DropBehavior value) { - _internal_set_behavior(value); - // @@protoc_insertion_point(field_set:pg_query.DropStmt.behavior) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTableSample::mutable_method() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTableSample.method) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_method(); } - -// bool missing_ok = 4 [json_name = "missing_ok"]; -inline void DropStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; +inline const ::pg_query::Node& RangeTableSample::method(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.method) + return _internal_method().Get(index); } -inline bool DropStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline ::pg_query::Node* RangeTableSample::add_method() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_method()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTableSample.method) + return _add; } -inline bool DropStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.DropStmt.missing_ok) - return _internal_missing_ok(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTableSample::method() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTableSample.method) + return _internal_method(); } -inline void DropStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTableSample::_internal_method() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.method_; } -inline void DropStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.DropStmt.missing_ok) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTableSample::_internal_mutable_method() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.method_; } -// bool concurrent = 5 [json_name = "concurrent"]; -inline void DropStmt::clear_concurrent() { - _impl_.concurrent_ = false; +// repeated .pg_query.Node args = 3 [json_name = "args"]; +inline int RangeTableSample::_internal_args_size() const { + return _internal_args().size(); } -inline bool DropStmt::_internal_concurrent() const { - return _impl_.concurrent_; +inline int RangeTableSample::args_size() const { + return _internal_args_size(); } -inline bool DropStmt::concurrent() const { - // @@protoc_insertion_point(field_get:pg_query.DropStmt.concurrent) - return _internal_concurrent(); +inline void RangeTableSample::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline void DropStmt::_internal_set_concurrent(bool value) { - - _impl_.concurrent_ = value; +inline ::pg_query::Node* RangeTableSample::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableSample.args) + return _internal_mutable_args()->Mutable(index); } -inline void DropStmt::set_concurrent(bool value) { - _internal_set_concurrent(value); - // @@protoc_insertion_point(field_set:pg_query.DropStmt.concurrent) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTableSample::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTableSample.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } - -// ------------------------------------------------------------------- - -// TruncateStmt - -// repeated .pg_query.Node relations = 1 [json_name = "relations"]; -inline int TruncateStmt::_internal_relations_size() const { - return _impl_.relations_.size(); +inline const ::pg_query::Node& RangeTableSample::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.args) + return _internal_args().Get(index); } -inline int TruncateStmt::relations_size() const { - return _internal_relations_size(); +inline ::pg_query::Node* RangeTableSample::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTableSample.args) + return _add; } -inline void TruncateStmt::clear_relations() { - _impl_.relations_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTableSample::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTableSample.args) + return _internal_args(); } -inline ::pg_query::Node* TruncateStmt::mutable_relations(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TruncateStmt.relations) - return _impl_.relations_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTableSample::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TruncateStmt::mutable_relations() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TruncateStmt.relations) - return &_impl_.relations_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTableSample::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -inline const ::pg_query::Node& TruncateStmt::_internal_relations(int index) const { - return _impl_.relations_.Get(index); + +// .pg_query.Node repeatable = 4 [json_name = "repeatable"]; +inline bool RangeTableSample::has_repeatable() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.repeatable_ != nullptr); + return value; } -inline const ::pg_query::Node& TruncateStmt::relations(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TruncateStmt.relations) - return _internal_relations(index); +inline void RangeTableSample::clear_repeatable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.repeatable_ != nullptr) _impl_.repeatable_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::Node* TruncateStmt::_internal_add_relations() { - return _impl_.relations_.Add(); +inline const ::pg_query::Node& RangeTableSample::_internal_repeatable() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.repeatable_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* TruncateStmt::add_relations() { - ::pg_query::Node* _add = _internal_add_relations(); - // @@protoc_insertion_point(field_add:pg_query.TruncateStmt.relations) - return _add; +inline const ::pg_query::Node& RangeTableSample::repeatable() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.repeatable) + return _internal_repeatable(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TruncateStmt::relations() const { - // @@protoc_insertion_point(field_list:pg_query.TruncateStmt.relations) - return _impl_.relations_; +inline void RangeTableSample::unsafe_arena_set_allocated_repeatable(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.repeatable_); + } + _impl_.repeatable_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableSample.repeatable) } +inline ::pg_query::Node* RangeTableSample::release_repeatable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool restart_seqs = 2 [json_name = "restart_seqs"]; -inline void TruncateStmt::clear_restart_seqs() { - _impl_.restart_seqs_ = false; + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.repeatable_; + _impl_.repeatable_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool TruncateStmt::_internal_restart_seqs() const { - return _impl_.restart_seqs_; +inline ::pg_query::Node* RangeTableSample::unsafe_arena_release_repeatable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTableSample.repeatable) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.repeatable_; + _impl_.repeatable_ = nullptr; + return temp; } -inline bool TruncateStmt::restart_seqs() const { - // @@protoc_insertion_point(field_get:pg_query.TruncateStmt.restart_seqs) - return _internal_restart_seqs(); +inline ::pg_query::Node* RangeTableSample::_internal_mutable_repeatable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.repeatable_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.repeatable_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.repeatable_; } -inline void TruncateStmt::_internal_set_restart_seqs(bool value) { - - _impl_.restart_seqs_ = value; +inline ::pg_query::Node* RangeTableSample::mutable_repeatable() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_repeatable(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTableSample.repeatable) + return _msg; } -inline void TruncateStmt::set_restart_seqs(bool value) { - _internal_set_restart_seqs(value); - // @@protoc_insertion_point(field_set:pg_query.TruncateStmt.restart_seqs) +inline void RangeTableSample::set_allocated_repeatable(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.repeatable_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.repeatable_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableSample.repeatable) } -// .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; -inline void TruncateStmt::clear_behavior() { - _impl_.behavior_ = 0; +// int32 location = 5 [json_name = "location"]; +inline void RangeTableSample::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline ::pg_query::DropBehavior TruncateStmt::_internal_behavior() const { - return static_cast< ::pg_query::DropBehavior >(_impl_.behavior_); +inline ::int32_t RangeTableSample::location() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.location) + return _internal_location(); } -inline ::pg_query::DropBehavior TruncateStmt::behavior() const { - // @@protoc_insertion_point(field_get:pg_query.TruncateStmt.behavior) - return _internal_behavior(); +inline void RangeTableSample::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTableSample.location) } -inline void TruncateStmt::_internal_set_behavior(::pg_query::DropBehavior value) { - - _impl_.behavior_ = value; +inline ::int32_t RangeTableSample::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void TruncateStmt::set_behavior(::pg_query::DropBehavior value) { - _internal_set_behavior(value); - // @@protoc_insertion_point(field_set:pg_query.TruncateStmt.behavior) +inline void RangeTableSample::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// CommentStmt +// ColumnDef -// .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; -inline void CommentStmt::clear_objtype() { - _impl_.objtype_ = 0; +// string colname = 1 [json_name = "colname"]; +inline void ColumnDef::clear_colname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colname_.ClearToEmpty(); } -inline ::pg_query::ObjectType CommentStmt::_internal_objtype() const { - return static_cast< ::pg_query::ObjectType >(_impl_.objtype_); +inline const std::string& ColumnDef::colname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.colname) + return _internal_colname(); } -inline ::pg_query::ObjectType CommentStmt::objtype() const { - // @@protoc_insertion_point(field_get:pg_query.CommentStmt.objtype) - return _internal_objtype(); +template +inline PROTOBUF_ALWAYS_INLINE void ColumnDef::set_colname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.colname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.colname) } -inline void CommentStmt::_internal_set_objtype(::pg_query::ObjectType value) { - - _impl_.objtype_ = value; +inline std::string* ColumnDef::mutable_colname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_colname(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.colname) + return _s; } -inline void CommentStmt::set_objtype(::pg_query::ObjectType value) { - _internal_set_objtype(value); - // @@protoc_insertion_point(field_set:pg_query.CommentStmt.objtype) +inline const std::string& ColumnDef::_internal_colname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.colname_.Get(); } - -// .pg_query.Node object = 2 [json_name = "object"]; -inline bool CommentStmt::_internal_has_object() const { - return this != internal_default_instance() && _impl_.object_ != nullptr; +inline void ColumnDef::_internal_set_colname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.colname_.Set(value, GetArena()); } -inline bool CommentStmt::has_object() const { - return _internal_has_object(); +inline std::string* ColumnDef::_internal_mutable_colname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.colname_.Mutable( GetArena()); } -inline void CommentStmt::clear_object() { - if (GetArenaForAllocation() == nullptr && _impl_.object_ != nullptr) { - delete _impl_.object_; - } - _impl_.object_ = nullptr; +inline std::string* ColumnDef::release_colname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.colname) + return _impl_.colname_.Release(); } -inline const ::pg_query::Node& CommentStmt::_internal_object() const { - const ::pg_query::Node* p = _impl_.object_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void ColumnDef::set_allocated_colname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.colname_.IsDefault()) { + _impl_.colname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.colname) +} + +// .pg_query.TypeName type_name = 2 [json_name = "typeName"]; +inline bool ColumnDef::has_type_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.type_name_ != nullptr); + return value; +} +inline void ColumnDef::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.type_name_ != nullptr) _impl_.type_name_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::TypeName& ColumnDef::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.type_name_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline const ::pg_query::Node& CommentStmt::object() const { - // @@protoc_insertion_point(field_get:pg_query.CommentStmt.object) - return _internal_object(); +inline const ::pg_query::TypeName& ColumnDef::type_name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.type_name) + return _internal_type_name(); } -inline void CommentStmt::unsafe_arena_set_allocated_object( - ::pg_query::Node* object) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.object_); +inline void ColumnDef::unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.type_name_); } - _impl_.object_ = object; - if (object) { - + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CommentStmt.object) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.type_name) } -inline ::pg_query::Node* CommentStmt::release_object() { - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::TypeName* ColumnDef::release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* released = _impl_.type_name_; + _impl_.type_name_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CommentStmt::unsafe_arena_release_object() { - // @@protoc_insertion_point(field_release:pg_query.CommentStmt.object) - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::TypeName* ColumnDef::unsafe_arena_release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.type_name) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* temp = _impl_.type_name_; + _impl_.type_name_ = nullptr; return temp; } -inline ::pg_query::Node* CommentStmt::_internal_mutable_object() { - - if (_impl_.object_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.object_ = p; +inline ::pg_query::TypeName* ColumnDef::_internal_mutable_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.type_name_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(p); } - return _impl_.object_; + return _impl_.type_name_; } -inline ::pg_query::Node* CommentStmt::mutable_object() { - ::pg_query::Node* _msg = _internal_mutable_object(); - // @@protoc_insertion_point(field_mutable:pg_query.CommentStmt.object) +inline ::pg_query::TypeName* ColumnDef::mutable_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_type_name(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.type_name) return _msg; } -inline void CommentStmt::set_allocated_object(::pg_query::Node* object) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ColumnDef::set_allocated_type_name(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.object_; + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.type_name_); } - if (object) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(object); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); if (message_arena != submessage_arena) { - object = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, object, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.object_ = object; - // @@protoc_insertion_point(field_set_allocated:pg_query.CommentStmt.object) + + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.type_name) } -// string comment = 3 [json_name = "comment"]; -inline void CommentStmt::clear_comment() { - _impl_.comment_.ClearToEmpty(); +// string compression = 3 [json_name = "compression"]; +inline void ColumnDef::clear_compression() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.compression_.ClearToEmpty(); } -inline const std::string& CommentStmt::comment() const { - // @@protoc_insertion_point(field_get:pg_query.CommentStmt.comment) - return _internal_comment(); +inline const std::string& ColumnDef::compression() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.compression) + return _internal_compression(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CommentStmt::set_comment(ArgT0&& arg0, ArgT... args) { - - _impl_.comment_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CommentStmt.comment) +template +inline PROTOBUF_ALWAYS_INLINE void ColumnDef::set_compression(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.compression_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.compression) } -inline std::string* CommentStmt::mutable_comment() { - std::string* _s = _internal_mutable_comment(); - // @@protoc_insertion_point(field_mutable:pg_query.CommentStmt.comment) +inline std::string* ColumnDef::mutable_compression() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_compression(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.compression) return _s; } -inline const std::string& CommentStmt::_internal_comment() const { - return _impl_.comment_.Get(); +inline const std::string& ColumnDef::_internal_compression() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.compression_.Get(); } -inline void CommentStmt::_internal_set_comment(const std::string& value) { - - _impl_.comment_.Set(value, GetArenaForAllocation()); +inline void ColumnDef::_internal_set_compression(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.compression_.Set(value, GetArena()); } -inline std::string* CommentStmt::_internal_mutable_comment() { - - return _impl_.comment_.Mutable(GetArenaForAllocation()); +inline std::string* ColumnDef::_internal_mutable_compression() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.compression_.Mutable( GetArena()); } -inline std::string* CommentStmt::release_comment() { - // @@protoc_insertion_point(field_release:pg_query.CommentStmt.comment) - return _impl_.comment_.Release(); +inline std::string* ColumnDef::release_compression() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.compression) + return _impl_.compression_.Release(); } -inline void CommentStmt::set_allocated_comment(std::string* comment) { - if (comment != nullptr) { - - } else { - - } - _impl_.comment_.SetAllocated(comment, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.comment_.IsDefault()) { - _impl_.comment_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CommentStmt.comment) +inline void ColumnDef::set_allocated_compression(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.compression_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.compression_.IsDefault()) { + _impl_.compression_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.compression) } -// ------------------------------------------------------------------- - -// FetchStmt - -// .pg_query.FetchDirection direction = 1 [json_name = "direction"]; -inline void FetchStmt::clear_direction() { - _impl_.direction_ = 0; +// int32 inhcount = 4 [json_name = "inhcount"]; +inline void ColumnDef::clear_inhcount() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inhcount_ = 0; } -inline ::pg_query::FetchDirection FetchStmt::_internal_direction() const { - return static_cast< ::pg_query::FetchDirection >(_impl_.direction_); +inline ::int32_t ColumnDef::inhcount() const { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.inhcount) + return _internal_inhcount(); } -inline ::pg_query::FetchDirection FetchStmt::direction() const { - // @@protoc_insertion_point(field_get:pg_query.FetchStmt.direction) - return _internal_direction(); +inline void ColumnDef::set_inhcount(::int32_t value) { + _internal_set_inhcount(value); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.inhcount) } -inline void FetchStmt::_internal_set_direction(::pg_query::FetchDirection value) { - - _impl_.direction_ = value; +inline ::int32_t ColumnDef::_internal_inhcount() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inhcount_; } -inline void FetchStmt::set_direction(::pg_query::FetchDirection value) { - _internal_set_direction(value); - // @@protoc_insertion_point(field_set:pg_query.FetchStmt.direction) +inline void ColumnDef::_internal_set_inhcount(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inhcount_ = value; } -// int64 how_many = 2 [json_name = "howMany"]; -inline void FetchStmt::clear_how_many() { - _impl_.how_many_ = int64_t{0}; +// bool is_local = 5 [json_name = "is_local"]; +inline void ColumnDef::clear_is_local() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_local_ = false; } -inline int64_t FetchStmt::_internal_how_many() const { - return _impl_.how_many_; +inline bool ColumnDef::is_local() const { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.is_local) + return _internal_is_local(); } -inline int64_t FetchStmt::how_many() const { - // @@protoc_insertion_point(field_get:pg_query.FetchStmt.how_many) - return _internal_how_many(); +inline void ColumnDef::set_is_local(bool value) { + _internal_set_is_local(value); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.is_local) } -inline void FetchStmt::_internal_set_how_many(int64_t value) { - - _impl_.how_many_ = value; +inline bool ColumnDef::_internal_is_local() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_local_; } -inline void FetchStmt::set_how_many(int64_t value) { - _internal_set_how_many(value); - // @@protoc_insertion_point(field_set:pg_query.FetchStmt.how_many) +inline void ColumnDef::_internal_set_is_local(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_local_ = value; } -// string portalname = 3 [json_name = "portalname"]; -inline void FetchStmt::clear_portalname() { - _impl_.portalname_.ClearToEmpty(); +// bool is_not_null = 6 [json_name = "is_not_null"]; +inline void ColumnDef::clear_is_not_null() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_not_null_ = false; } -inline const std::string& FetchStmt::portalname() const { - // @@protoc_insertion_point(field_get:pg_query.FetchStmt.portalname) - return _internal_portalname(); +inline bool ColumnDef::is_not_null() const { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.is_not_null) + return _internal_is_not_null(); } -template -inline PROTOBUF_ALWAYS_INLINE -void FetchStmt::set_portalname(ArgT0&& arg0, ArgT... args) { - - _impl_.portalname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.FetchStmt.portalname) +inline void ColumnDef::set_is_not_null(bool value) { + _internal_set_is_not_null(value); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.is_not_null) } -inline std::string* FetchStmt::mutable_portalname() { - std::string* _s = _internal_mutable_portalname(); - // @@protoc_insertion_point(field_mutable:pg_query.FetchStmt.portalname) - return _s; +inline bool ColumnDef::_internal_is_not_null() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_not_null_; } -inline const std::string& FetchStmt::_internal_portalname() const { - return _impl_.portalname_.Get(); +inline void ColumnDef::_internal_set_is_not_null(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_not_null_ = value; } -inline void FetchStmt::_internal_set_portalname(const std::string& value) { - - _impl_.portalname_.Set(value, GetArenaForAllocation()); + +// bool is_from_type = 7 [json_name = "is_from_type"]; +inline void ColumnDef::clear_is_from_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_from_type_ = false; } -inline std::string* FetchStmt::_internal_mutable_portalname() { - - return _impl_.portalname_.Mutable(GetArenaForAllocation()); +inline bool ColumnDef::is_from_type() const { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.is_from_type) + return _internal_is_from_type(); } -inline std::string* FetchStmt::release_portalname() { - // @@protoc_insertion_point(field_release:pg_query.FetchStmt.portalname) - return _impl_.portalname_.Release(); +inline void ColumnDef::set_is_from_type(bool value) { + _internal_set_is_from_type(value); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.is_from_type) } -inline void FetchStmt::set_allocated_portalname(std::string* portalname) { - if (portalname != nullptr) { - - } else { - - } - _impl_.portalname_.SetAllocated(portalname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.portalname_.IsDefault()) { - _impl_.portalname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.FetchStmt.portalname) +inline bool ColumnDef::_internal_is_from_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_from_type_; +} +inline void ColumnDef::_internal_set_is_from_type(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_from_type_ = value; } -// bool ismove = 4 [json_name = "ismove"]; -inline void FetchStmt::clear_ismove() { - _impl_.ismove_ = false; +// string storage = 8 [json_name = "storage"]; +inline void ColumnDef::clear_storage() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.storage_.ClearToEmpty(); } -inline bool FetchStmt::_internal_ismove() const { - return _impl_.ismove_; +inline const std::string& ColumnDef::storage() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.storage) + return _internal_storage(); } -inline bool FetchStmt::ismove() const { - // @@protoc_insertion_point(field_get:pg_query.FetchStmt.ismove) - return _internal_ismove(); +template +inline PROTOBUF_ALWAYS_INLINE void ColumnDef::set_storage(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.storage_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.storage) } -inline void FetchStmt::_internal_set_ismove(bool value) { - - _impl_.ismove_ = value; +inline std::string* ColumnDef::mutable_storage() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_storage(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.storage) + return _s; } -inline void FetchStmt::set_ismove(bool value) { - _internal_set_ismove(value); - // @@protoc_insertion_point(field_set:pg_query.FetchStmt.ismove) +inline const std::string& ColumnDef::_internal_storage() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.storage_.Get(); +} +inline void ColumnDef::_internal_set_storage(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.storage_.Set(value, GetArena()); +} +inline std::string* ColumnDef::_internal_mutable_storage() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.storage_.Mutable( GetArena()); +} +inline std::string* ColumnDef::release_storage() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.storage) + return _impl_.storage_.Release(); +} +inline void ColumnDef::set_allocated_storage(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.storage_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.storage_.IsDefault()) { + _impl_.storage_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.storage) } -// ------------------------------------------------------------------- - -// IndexStmt - -// string idxname = 1 [json_name = "idxname"]; -inline void IndexStmt::clear_idxname() { - _impl_.idxname_.ClearToEmpty(); +// string storage_name = 9 [json_name = "storage_name"]; +inline void ColumnDef::clear_storage_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.storage_name_.ClearToEmpty(); } -inline const std::string& IndexStmt::idxname() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.idxname) - return _internal_idxname(); +inline const std::string& ColumnDef::storage_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.storage_name) + return _internal_storage_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void IndexStmt::set_idxname(ArgT0&& arg0, ArgT... args) { - - _impl_.idxname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.idxname) +template +inline PROTOBUF_ALWAYS_INLINE void ColumnDef::set_storage_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.storage_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.storage_name) } -inline std::string* IndexStmt::mutable_idxname() { - std::string* _s = _internal_mutable_idxname(); - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.idxname) +inline std::string* ColumnDef::mutable_storage_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_storage_name(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.storage_name) return _s; } -inline const std::string& IndexStmt::_internal_idxname() const { - return _impl_.idxname_.Get(); +inline const std::string& ColumnDef::_internal_storage_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.storage_name_.Get(); +} +inline void ColumnDef::_internal_set_storage_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.storage_name_.Set(value, GetArena()); +} +inline std::string* ColumnDef::_internal_mutable_storage_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.storage_name_.Mutable( GetArena()); +} +inline std::string* ColumnDef::release_storage_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.storage_name) + return _impl_.storage_name_.Release(); +} +inline void ColumnDef::set_allocated_storage_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.storage_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.storage_name_.IsDefault()) { + _impl_.storage_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.storage_name) +} + +// .pg_query.Node raw_default = 10 [json_name = "raw_default"]; +inline bool ColumnDef::has_raw_default() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.raw_default_ != nullptr); + return value; } -inline void IndexStmt::_internal_set_idxname(const std::string& value) { - - _impl_.idxname_.Set(value, GetArenaForAllocation()); +inline void ColumnDef::clear_raw_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.raw_default_ != nullptr) _impl_.raw_default_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline std::string* IndexStmt::_internal_mutable_idxname() { - - return _impl_.idxname_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Node& ColumnDef::_internal_raw_default() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.raw_default_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* IndexStmt::release_idxname() { - // @@protoc_insertion_point(field_release:pg_query.IndexStmt.idxname) - return _impl_.idxname_.Release(); +inline const ::pg_query::Node& ColumnDef::raw_default() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.raw_default) + return _internal_raw_default(); } -inline void IndexStmt::set_allocated_idxname(std::string* idxname) { - if (idxname != nullptr) { - +inline void ColumnDef::unsafe_arena_set_allocated_raw_default(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.raw_default_); + } + _impl_.raw_default_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.raw_default) +} +inline ::pg_query::Node* ColumnDef::release_raw_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.raw_default_; + _impl_.raw_default_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } - _impl_.idxname_.SetAllocated(idxname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.idxname_.IsDefault()) { - _impl_.idxname_.Set("", GetArenaForAllocation()); +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.idxname) +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* ColumnDef::unsafe_arena_release_raw_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.raw_default) -// .pg_query.RangeVar relation = 2 [json_name = "relation"]; -inline bool IndexStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.raw_default_; + _impl_.raw_default_ = nullptr; + return temp; } -inline bool IndexStmt::has_relation() const { - return _internal_has_relation(); +inline ::pg_query::Node* ColumnDef::_internal_mutable_raw_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.raw_default_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.raw_default_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.raw_default_; } -inline void IndexStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; +inline ::pg_query::Node* ColumnDef::mutable_raw_default() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_raw_default(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.raw_default) + return _msg; +} +inline void ColumnDef::set_allocated_raw_default(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.raw_default_); } - _impl_.relation_ = nullptr; + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.raw_default_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.raw_default) } -inline const ::pg_query::RangeVar& IndexStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); + +// .pg_query.Node cooked_default = 11 [json_name = "cooked_default"]; +inline bool ColumnDef::has_cooked_default() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.cooked_default_ != nullptr); + return value; } -inline const ::pg_query::RangeVar& IndexStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.relation) - return _internal_relation(); +inline void ColumnDef::clear_cooked_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.cooked_default_ != nullptr) _impl_.cooked_default_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; +} +inline const ::pg_query::Node& ColumnDef::_internal_cooked_default() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.cooked_default_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& ColumnDef::cooked_default() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.cooked_default) + return _internal_cooked_default(); } -inline void IndexStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void ColumnDef::unsafe_arena_set_allocated_cooked_default(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.cooked_default_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.cooked_default_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IndexStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.cooked_default) } -inline ::pg_query::RangeVar* IndexStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* ColumnDef::release_cooked_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.cooked_default_; + _impl_.cooked_default_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* IndexStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.IndexStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* ColumnDef::unsafe_arena_release_cooked_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.cooked_default) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.cooked_default_; + _impl_.cooked_default_ = nullptr; return temp; } -inline ::pg_query::RangeVar* IndexStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::Node* ColumnDef::_internal_mutable_cooked_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.cooked_default_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.cooked_default_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.relation_; + return _impl_.cooked_default_; } -inline ::pg_query::RangeVar* IndexStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.relation) +inline ::pg_query::Node* ColumnDef::mutable_cooked_default() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_cooked_default(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.cooked_default) return _msg; } -inline void IndexStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ColumnDef::set_allocated_cooked_default(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.cooked_default_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.relation) + + _impl_.cooked_default_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.cooked_default) } -// string access_method = 3 [json_name = "accessMethod"]; -inline void IndexStmt::clear_access_method() { - _impl_.access_method_.ClearToEmpty(); +// string identity = 12 [json_name = "identity"]; +inline void ColumnDef::clear_identity() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.identity_.ClearToEmpty(); } -inline const std::string& IndexStmt::access_method() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.access_method) - return _internal_access_method(); +inline const std::string& ColumnDef::identity() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.identity) + return _internal_identity(); } -template -inline PROTOBUF_ALWAYS_INLINE -void IndexStmt::set_access_method(ArgT0&& arg0, ArgT... args) { - - _impl_.access_method_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.access_method) +template +inline PROTOBUF_ALWAYS_INLINE void ColumnDef::set_identity(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.identity_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.identity) } -inline std::string* IndexStmt::mutable_access_method() { - std::string* _s = _internal_mutable_access_method(); - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.access_method) +inline std::string* ColumnDef::mutable_identity() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_identity(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.identity) return _s; } -inline const std::string& IndexStmt::_internal_access_method() const { - return _impl_.access_method_.Get(); +inline const std::string& ColumnDef::_internal_identity() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.identity_.Get(); } -inline void IndexStmt::_internal_set_access_method(const std::string& value) { - - _impl_.access_method_.Set(value, GetArenaForAllocation()); +inline void ColumnDef::_internal_set_identity(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.identity_.Set(value, GetArena()); } -inline std::string* IndexStmt::_internal_mutable_access_method() { - - return _impl_.access_method_.Mutable(GetArenaForAllocation()); +inline std::string* ColumnDef::_internal_mutable_identity() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.identity_.Mutable( GetArena()); } -inline std::string* IndexStmt::release_access_method() { - // @@protoc_insertion_point(field_release:pg_query.IndexStmt.access_method) - return _impl_.access_method_.Release(); +inline std::string* ColumnDef::release_identity() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.identity) + return _impl_.identity_.Release(); +} +inline void ColumnDef::set_allocated_identity(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.identity_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.identity_.IsDefault()) { + _impl_.identity_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.identity) +} + +// .pg_query.RangeVar identity_sequence = 13 [json_name = "identitySequence"]; +inline bool ColumnDef::has_identity_sequence() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.identity_sequence_ != nullptr); + return value; +} +inline void ColumnDef::clear_identity_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.identity_sequence_ != nullptr) _impl_.identity_sequence_->Clear(); + _impl_._has_bits_[0] &= ~0x00000008u; +} +inline const ::pg_query::RangeVar& ColumnDef::_internal_identity_sequence() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.identity_sequence_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); +} +inline const ::pg_query::RangeVar& ColumnDef::identity_sequence() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.identity_sequence) + return _internal_identity_sequence(); } -inline void IndexStmt::set_allocated_access_method(std::string* access_method) { - if (access_method != nullptr) { - +inline void ColumnDef::unsafe_arena_set_allocated_identity_sequence(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.identity_sequence_); + } + _impl_.identity_sequence_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.identity_sequence) +} +inline ::pg_query::RangeVar* ColumnDef::release_identity_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::RangeVar* released = _impl_.identity_sequence_; + _impl_.identity_sequence_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } - _impl_.access_method_.SetAllocated(access_method, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.access_method_.IsDefault()) { - _impl_.access_method_.Set("", GetArenaForAllocation()); +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.access_method) +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::RangeVar* ColumnDef::unsafe_arena_release_identity_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.identity_sequence) -// string table_space = 4 [json_name = "tableSpace"]; -inline void IndexStmt::clear_table_space() { - _impl_.table_space_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::RangeVar* temp = _impl_.identity_sequence_; + _impl_.identity_sequence_ = nullptr; + return temp; } -inline const std::string& IndexStmt::table_space() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.table_space) - return _internal_table_space(); +inline ::pg_query::RangeVar* ColumnDef::_internal_mutable_identity_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.identity_sequence_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.identity_sequence_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.identity_sequence_; } -template -inline PROTOBUF_ALWAYS_INLINE -void IndexStmt::set_table_space(ArgT0&& arg0, ArgT... args) { - - _impl_.table_space_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.table_space) +inline ::pg_query::RangeVar* ColumnDef::mutable_identity_sequence() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_identity_sequence(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.identity_sequence) + return _msg; } -inline std::string* IndexStmt::mutable_table_space() { - std::string* _s = _internal_mutable_table_space(); - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.table_space) +inline void ColumnDef::set_allocated_identity_sequence(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.identity_sequence_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } + + _impl_.identity_sequence_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.identity_sequence) +} + +// string generated = 14 [json_name = "generated"]; +inline void ColumnDef::clear_generated() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.generated_.ClearToEmpty(); +} +inline const std::string& ColumnDef::generated() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.generated) + return _internal_generated(); +} +template +inline PROTOBUF_ALWAYS_INLINE void ColumnDef::set_generated(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.generated_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.generated) +} +inline std::string* ColumnDef::mutable_generated() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_generated(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.generated) return _s; } -inline const std::string& IndexStmt::_internal_table_space() const { - return _impl_.table_space_.Get(); +inline const std::string& ColumnDef::_internal_generated() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.generated_.Get(); } -inline void IndexStmt::_internal_set_table_space(const std::string& value) { - - _impl_.table_space_.Set(value, GetArenaForAllocation()); +inline void ColumnDef::_internal_set_generated(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.generated_.Set(value, GetArena()); } -inline std::string* IndexStmt::_internal_mutable_table_space() { - - return _impl_.table_space_.Mutable(GetArenaForAllocation()); +inline std::string* ColumnDef::_internal_mutable_generated() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.generated_.Mutable( GetArena()); } -inline std::string* IndexStmt::release_table_space() { - // @@protoc_insertion_point(field_release:pg_query.IndexStmt.table_space) - return _impl_.table_space_.Release(); +inline std::string* ColumnDef::release_generated() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.generated) + return _impl_.generated_.Release(); } -inline void IndexStmt::set_allocated_table_space(std::string* table_space) { - if (table_space != nullptr) { - - } else { - +inline void ColumnDef::set_allocated_generated(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.generated_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.generated_.IsDefault()) { + _impl_.generated_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.generated) +} + +// .pg_query.CollateClause coll_clause = 15 [json_name = "collClause"]; +inline bool ColumnDef::has_coll_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + PROTOBUF_ASSUME(!value || _impl_.coll_clause_ != nullptr); + return value; +} +inline void ColumnDef::clear_coll_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.coll_clause_ != nullptr) _impl_.coll_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000010u; +} +inline const ::pg_query::CollateClause& ColumnDef::_internal_coll_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::CollateClause* p = _impl_.coll_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_CollateClause_default_instance_); +} +inline const ::pg_query::CollateClause& ColumnDef::coll_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.coll_clause) + return _internal_coll_clause(); +} +inline void ColumnDef::unsafe_arena_set_allocated_coll_clause(::pg_query::CollateClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.coll_clause_); } - _impl_.table_space_.SetAllocated(table_space, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.table_space_.IsDefault()) { - _impl_.table_space_.Set("", GetArenaForAllocation()); + _impl_.coll_clause_ = reinterpret_cast<::pg_query::CollateClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000010u; + } else { + _impl_._has_bits_[0] &= ~0x00000010u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.table_space) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.coll_clause) } +inline ::pg_query::CollateClause* ColumnDef::release_coll_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node index_params = 5 [json_name = "indexParams"]; -inline int IndexStmt::_internal_index_params_size() const { - return _impl_.index_params_.size(); + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::CollateClause* released = _impl_.coll_clause_; + _impl_.coll_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int IndexStmt::index_params_size() const { - return _internal_index_params_size(); +inline ::pg_query::CollateClause* ColumnDef::unsafe_arena_release_coll_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ColumnDef.coll_clause) + + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::CollateClause* temp = _impl_.coll_clause_; + _impl_.coll_clause_ = nullptr; + return temp; } -inline void IndexStmt::clear_index_params() { - _impl_.index_params_.Clear(); +inline ::pg_query::CollateClause* ColumnDef::_internal_mutable_coll_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000010u; + if (_impl_.coll_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::CollateClause>(GetArena()); + _impl_.coll_clause_ = reinterpret_cast<::pg_query::CollateClause*>(p); + } + return _impl_.coll_clause_; } -inline ::pg_query::Node* IndexStmt::mutable_index_params(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.index_params) - return _impl_.index_params_.Mutable(index); +inline ::pg_query::CollateClause* ColumnDef::mutable_coll_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CollateClause* _msg = _internal_mutable_coll_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.coll_clause) + return _msg; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IndexStmt::mutable_index_params() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IndexStmt.index_params) - return &_impl_.index_params_; +inline void ColumnDef::set_allocated_coll_clause(::pg_query::CollateClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::CollateClause*>(_impl_.coll_clause_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::CollateClause*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000010u; + } else { + _impl_._has_bits_[0] &= ~0x00000010u; + } + + _impl_.coll_clause_ = reinterpret_cast<::pg_query::CollateClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.coll_clause) } -inline const ::pg_query::Node& IndexStmt::_internal_index_params(int index) const { - return _impl_.index_params_.Get(index); + +// uint32 coll_oid = 16 [json_name = "collOid"]; +inline void ColumnDef::clear_coll_oid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coll_oid_ = 0u; } -inline const ::pg_query::Node& IndexStmt::index_params(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.index_params) - return _internal_index_params(index); +inline ::uint32_t ColumnDef::coll_oid() const { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.coll_oid) + return _internal_coll_oid(); } -inline ::pg_query::Node* IndexStmt::_internal_add_index_params() { - return _impl_.index_params_.Add(); +inline void ColumnDef::set_coll_oid(::uint32_t value) { + _internal_set_coll_oid(value); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.coll_oid) } -inline ::pg_query::Node* IndexStmt::add_index_params() { - ::pg_query::Node* _add = _internal_add_index_params(); - // @@protoc_insertion_point(field_add:pg_query.IndexStmt.index_params) - return _add; +inline ::uint32_t ColumnDef::_internal_coll_oid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coll_oid_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IndexStmt::index_params() const { - // @@protoc_insertion_point(field_list:pg_query.IndexStmt.index_params) - return _impl_.index_params_; +inline void ColumnDef::_internal_set_coll_oid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.coll_oid_ = value; } -// repeated .pg_query.Node index_including_params = 6 [json_name = "indexIncludingParams"]; -inline int IndexStmt::_internal_index_including_params_size() const { - return _impl_.index_including_params_.size(); +// repeated .pg_query.Node constraints = 17 [json_name = "constraints"]; +inline int ColumnDef::_internal_constraints_size() const { + return _internal_constraints().size(); } -inline int IndexStmt::index_including_params_size() const { - return _internal_index_including_params_size(); +inline int ColumnDef::constraints_size() const { + return _internal_constraints_size(); } -inline void IndexStmt::clear_index_including_params() { - _impl_.index_including_params_.Clear(); +inline void ColumnDef::clear_constraints() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.constraints_.Clear(); } -inline ::pg_query::Node* IndexStmt::mutable_index_including_params(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.index_including_params) - return _impl_.index_including_params_.Mutable(index); +inline ::pg_query::Node* ColumnDef::mutable_constraints(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.constraints) + return _internal_mutable_constraints()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IndexStmt::mutable_index_including_params() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IndexStmt.index_including_params) - return &_impl_.index_including_params_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ColumnDef::mutable_constraints() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ColumnDef.constraints) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_constraints(); } -inline const ::pg_query::Node& IndexStmt::_internal_index_including_params(int index) const { - return _impl_.index_including_params_.Get(index); +inline const ::pg_query::Node& ColumnDef::constraints(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.constraints) + return _internal_constraints().Get(index); } -inline const ::pg_query::Node& IndexStmt::index_including_params(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.index_including_params) - return _internal_index_including_params(index); +inline ::pg_query::Node* ColumnDef::add_constraints() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_constraints()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ColumnDef.constraints) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ColumnDef::constraints() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ColumnDef.constraints) + return _internal_constraints(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ColumnDef::_internal_constraints() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.constraints_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ColumnDef::_internal_mutable_constraints() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.constraints_; +} + +// repeated .pg_query.Node fdwoptions = 18 [json_name = "fdwoptions"]; +inline int ColumnDef::_internal_fdwoptions_size() const { + return _internal_fdwoptions().size(); +} +inline int ColumnDef::fdwoptions_size() const { + return _internal_fdwoptions_size(); } -inline ::pg_query::Node* IndexStmt::_internal_add_index_including_params() { - return _impl_.index_including_params_.Add(); +inline void ColumnDef::clear_fdwoptions() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fdwoptions_.Clear(); } -inline ::pg_query::Node* IndexStmt::add_index_including_params() { - ::pg_query::Node* _add = _internal_add_index_including_params(); - // @@protoc_insertion_point(field_add:pg_query.IndexStmt.index_including_params) - return _add; +inline ::pg_query::Node* ColumnDef::mutable_fdwoptions(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.fdwoptions) + return _internal_mutable_fdwoptions()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IndexStmt::index_including_params() const { - // @@protoc_insertion_point(field_list:pg_query.IndexStmt.index_including_params) - return _impl_.index_including_params_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ColumnDef::mutable_fdwoptions() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ColumnDef.fdwoptions) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_fdwoptions(); } - -// repeated .pg_query.Node options = 7 [json_name = "options"]; -inline int IndexStmt::_internal_options_size() const { - return _impl_.options_.size(); +inline const ::pg_query::Node& ColumnDef::fdwoptions(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.fdwoptions) + return _internal_fdwoptions().Get(index); } -inline int IndexStmt::options_size() const { - return _internal_options_size(); +inline ::pg_query::Node* ColumnDef::add_fdwoptions() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_fdwoptions()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ColumnDef.fdwoptions) + return _add; } -inline void IndexStmt::clear_options() { - _impl_.options_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ColumnDef::fdwoptions() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ColumnDef.fdwoptions) + return _internal_fdwoptions(); } -inline ::pg_query::Node* IndexStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.options) - return _impl_.options_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ColumnDef::_internal_fdwoptions() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fdwoptions_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IndexStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IndexStmt.options) - return &_impl_.options_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ColumnDef::_internal_mutable_fdwoptions() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.fdwoptions_; } -inline const ::pg_query::Node& IndexStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// int32 location = 19 [json_name = "location"]; +inline void ColumnDef::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& IndexStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.options) - return _internal_options(index); +inline ::int32_t ColumnDef::location() const { + // @@protoc_insertion_point(field_get:pg_query.ColumnDef.location) + return _internal_location(); } -inline ::pg_query::Node* IndexStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void ColumnDef::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.ColumnDef.location) } -inline ::pg_query::Node* IndexStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.IndexStmt.options) - return _add; +inline ::int32_t ColumnDef::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IndexStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.IndexStmt.options) - return _impl_.options_; +inline void ColumnDef::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.Node where_clause = 8 [json_name = "whereClause"]; -inline bool IndexStmt::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; -} -inline bool IndexStmt::has_where_clause() const { - return _internal_has_where_clause(); +// ------------------------------------------------------------------- + +// TableLikeClause + +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool TableLikeClause::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline void IndexStmt::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline void TableLikeClause::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& IndexStmt::_internal_where_clause() const { - const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::RangeVar& TableLikeClause::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::Node& IndexStmt::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.where_clause) - return _internal_where_clause(); +inline const ::pg_query::RangeVar& TableLikeClause::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableLikeClause.relation) + return _internal_relation(); } -inline void IndexStmt::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); +inline void TableLikeClause::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.where_clause_ = where_clause; - if (where_clause) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IndexStmt.where_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TableLikeClause.relation) } -inline ::pg_query::Node* IndexStmt::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::RangeVar* TableLikeClause::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* IndexStmt::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.IndexStmt.where_clause) - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::RangeVar* TableLikeClause::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TableLikeClause.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::Node* IndexStmt::_internal_mutable_where_clause() { - - if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; +inline ::pg_query::RangeVar* TableLikeClause::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.where_clause_; + return _impl_.relation_; } -inline ::pg_query::Node* IndexStmt::mutable_where_clause() { - ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.where_clause) +inline ::pg_query::RangeVar* TableLikeClause::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.TableLikeClause.relation) return _msg; } -inline void IndexStmt::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void TableLikeClause::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.where_clause_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.where_clause) + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.TableLikeClause.relation) } -// repeated .pg_query.Node exclude_op_names = 9 [json_name = "excludeOpNames"]; -inline int IndexStmt::_internal_exclude_op_names_size() const { - return _impl_.exclude_op_names_.size(); +// uint32 options = 2 [json_name = "options"]; +inline void TableLikeClause::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_ = 0u; } -inline int IndexStmt::exclude_op_names_size() const { - return _internal_exclude_op_names_size(); +inline ::uint32_t TableLikeClause::options() const { + // @@protoc_insertion_point(field_get:pg_query.TableLikeClause.options) + return _internal_options(); } -inline void IndexStmt::clear_exclude_op_names() { - _impl_.exclude_op_names_.Clear(); +inline void TableLikeClause::set_options(::uint32_t value) { + _internal_set_options(value); + // @@protoc_insertion_point(field_set:pg_query.TableLikeClause.options) } -inline ::pg_query::Node* IndexStmt::mutable_exclude_op_names(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.exclude_op_names) - return _impl_.exclude_op_names_.Mutable(index); +inline ::uint32_t TableLikeClause::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IndexStmt::mutable_exclude_op_names() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IndexStmt.exclude_op_names) - return &_impl_.exclude_op_names_; +inline void TableLikeClause::_internal_set_options(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.options_ = value; } -inline const ::pg_query::Node& IndexStmt::_internal_exclude_op_names(int index) const { - return _impl_.exclude_op_names_.Get(index); + +// uint32 relation_oid = 3 [json_name = "relationOid"]; +inline void TableLikeClause::clear_relation_oid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relation_oid_ = 0u; } -inline const ::pg_query::Node& IndexStmt::exclude_op_names(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.exclude_op_names) - return _internal_exclude_op_names(index); +inline ::uint32_t TableLikeClause::relation_oid() const { + // @@protoc_insertion_point(field_get:pg_query.TableLikeClause.relation_oid) + return _internal_relation_oid(); } -inline ::pg_query::Node* IndexStmt::_internal_add_exclude_op_names() { - return _impl_.exclude_op_names_.Add(); +inline void TableLikeClause::set_relation_oid(::uint32_t value) { + _internal_set_relation_oid(value); + // @@protoc_insertion_point(field_set:pg_query.TableLikeClause.relation_oid) } -inline ::pg_query::Node* IndexStmt::add_exclude_op_names() { - ::pg_query::Node* _add = _internal_add_exclude_op_names(); - // @@protoc_insertion_point(field_add:pg_query.IndexStmt.exclude_op_names) - return _add; +inline ::uint32_t TableLikeClause::_internal_relation_oid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relation_oid_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IndexStmt::exclude_op_names() const { - // @@protoc_insertion_point(field_list:pg_query.IndexStmt.exclude_op_names) - return _impl_.exclude_op_names_; +inline void TableLikeClause::_internal_set_relation_oid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relation_oid_ = value; } -// string idxcomment = 10 [json_name = "idxcomment"]; -inline void IndexStmt::clear_idxcomment() { - _impl_.idxcomment_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// IndexElem + +// string name = 1 [json_name = "name"]; +inline void IndexElem::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline const std::string& IndexStmt::idxcomment() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.idxcomment) - return _internal_idxcomment(); +inline const std::string& IndexElem::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexElem.name) + return _internal_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void IndexStmt::set_idxcomment(ArgT0&& arg0, ArgT... args) { - - _impl_.idxcomment_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.idxcomment) +template +inline PROTOBUF_ALWAYS_INLINE void IndexElem::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.IndexElem.name) } -inline std::string* IndexStmt::mutable_idxcomment() { - std::string* _s = _internal_mutable_idxcomment(); - // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.idxcomment) +inline std::string* IndexElem::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.name) return _s; } -inline const std::string& IndexStmt::_internal_idxcomment() const { - return _impl_.idxcomment_.Get(); +inline const std::string& IndexElem::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline void IndexStmt::_internal_set_idxcomment(const std::string& value) { - - _impl_.idxcomment_.Set(value, GetArenaForAllocation()); +inline void IndexElem::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline std::string* IndexStmt::_internal_mutable_idxcomment() { - - return _impl_.idxcomment_.Mutable(GetArenaForAllocation()); +inline std::string* IndexElem::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline std::string* IndexStmt::release_idxcomment() { - // @@protoc_insertion_point(field_release:pg_query.IndexStmt.idxcomment) - return _impl_.idxcomment_.Release(); +inline std::string* IndexElem::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IndexElem.name) + return _impl_.name_.Release(); } -inline void IndexStmt::set_allocated_idxcomment(std::string* idxcomment) { - if (idxcomment != nullptr) { - - } else { - - } - _impl_.idxcomment_.SetAllocated(idxcomment, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.idxcomment_.IsDefault()) { - _impl_.idxcomment_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.idxcomment) +inline void IndexElem::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.IndexElem.name) } -// uint32 index_oid = 11 [json_name = "indexOid"]; -inline void IndexStmt::clear_index_oid() { - _impl_.index_oid_ = 0u; +// .pg_query.Node expr = 2 [json_name = "expr"]; +inline bool IndexElem::has_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.expr_ != nullptr); + return value; } -inline uint32_t IndexStmt::_internal_index_oid() const { - return _impl_.index_oid_; +inline void IndexElem::clear_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.expr_ != nullptr) _impl_.expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline uint32_t IndexStmt::index_oid() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.index_oid) - return _internal_index_oid(); +inline const ::pg_query::Node& IndexElem::_internal_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void IndexStmt::_internal_set_index_oid(uint32_t value) { - - _impl_.index_oid_ = value; +inline const ::pg_query::Node& IndexElem::expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexElem.expr) + return _internal_expr(); } -inline void IndexStmt::set_index_oid(uint32_t value) { - _internal_set_index_oid(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.index_oid) +inline void IndexElem::unsafe_arena_set_allocated_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.expr_); + } + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IndexElem.expr) } +inline ::pg_query::Node* IndexElem::release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// uint32 old_node = 12 [json_name = "oldNode"]; -inline void IndexStmt::clear_old_node() { - _impl_.old_node_ = 0u; -} -inline uint32_t IndexStmt::_internal_old_node() const { - return _impl_.old_node_; -} -inline uint32_t IndexStmt::old_node() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.old_node) - return _internal_old_node(); -} -inline void IndexStmt::_internal_set_old_node(uint32_t value) { - - _impl_.old_node_ = value; -} -inline void IndexStmt::set_old_node(uint32_t value) { - _internal_set_old_node(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.old_node) + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.expr_; + _impl_.expr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* IndexElem::unsafe_arena_release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IndexElem.expr) -// uint32 old_create_subid = 13 [json_name = "oldCreateSubid"]; -inline void IndexStmt::clear_old_create_subid() { - _impl_.old_create_subid_ = 0u; -} -inline uint32_t IndexStmt::_internal_old_create_subid() const { - return _impl_.old_create_subid_; -} -inline uint32_t IndexStmt::old_create_subid() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.old_create_subid) - return _internal_old_create_subid(); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.expr_; + _impl_.expr_ = nullptr; + return temp; } -inline void IndexStmt::_internal_set_old_create_subid(uint32_t value) { - - _impl_.old_create_subid_ = value; +inline ::pg_query::Node* IndexElem::_internal_mutable_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.expr_; } -inline void IndexStmt::set_old_create_subid(uint32_t value) { - _internal_set_old_create_subid(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.old_create_subid) +inline ::pg_query::Node* IndexElem::mutable_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.expr) + return _msg; } +inline void IndexElem::set_allocated_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.expr_); + } -// uint32 old_first_relfilenode_subid = 14 [json_name = "oldFirstRelfilenodeSubid"]; -inline void IndexStmt::clear_old_first_relfilenode_subid() { - _impl_.old_first_relfilenode_subid_ = 0u; -} -inline uint32_t IndexStmt::_internal_old_first_relfilenode_subid() const { - return _impl_.old_first_relfilenode_subid_; -} -inline uint32_t IndexStmt::old_first_relfilenode_subid() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.old_first_relfilenode_subid) - return _internal_old_first_relfilenode_subid(); -} -inline void IndexStmt::_internal_set_old_first_relfilenode_subid(uint32_t value) { - - _impl_.old_first_relfilenode_subid_ = value; -} -inline void IndexStmt::set_old_first_relfilenode_subid(uint32_t value) { - _internal_set_old_first_relfilenode_subid(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.old_first_relfilenode_subid) -} + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// bool unique = 15 [json_name = "unique"]; -inline void IndexStmt::clear_unique() { - _impl_.unique_ = false; + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.IndexElem.expr) } -inline bool IndexStmt::_internal_unique() const { - return _impl_.unique_; + +// string indexcolname = 3 [json_name = "indexcolname"]; +inline void IndexElem::clear_indexcolname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indexcolname_.ClearToEmpty(); } -inline bool IndexStmt::unique() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.unique) - return _internal_unique(); +inline const std::string& IndexElem::indexcolname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexElem.indexcolname) + return _internal_indexcolname(); } -inline void IndexStmt::_internal_set_unique(bool value) { - - _impl_.unique_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void IndexElem::set_indexcolname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indexcolname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.IndexElem.indexcolname) } -inline void IndexStmt::set_unique(bool value) { - _internal_set_unique(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.unique) +inline std::string* IndexElem::mutable_indexcolname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_indexcolname(); + // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.indexcolname) + return _s; } - -// bool nulls_not_distinct = 16 [json_name = "nulls_not_distinct"]; -inline void IndexStmt::clear_nulls_not_distinct() { - _impl_.nulls_not_distinct_ = false; +inline const std::string& IndexElem::_internal_indexcolname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.indexcolname_.Get(); } -inline bool IndexStmt::_internal_nulls_not_distinct() const { - return _impl_.nulls_not_distinct_; +inline void IndexElem::_internal_set_indexcolname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indexcolname_.Set(value, GetArena()); } -inline bool IndexStmt::nulls_not_distinct() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.nulls_not_distinct) - return _internal_nulls_not_distinct(); +inline std::string* IndexElem::_internal_mutable_indexcolname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.indexcolname_.Mutable( GetArena()); } -inline void IndexStmt::_internal_set_nulls_not_distinct(bool value) { - - _impl_.nulls_not_distinct_ = value; +inline std::string* IndexElem::release_indexcolname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IndexElem.indexcolname) + return _impl_.indexcolname_.Release(); } -inline void IndexStmt::set_nulls_not_distinct(bool value) { - _internal_set_nulls_not_distinct(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.nulls_not_distinct) +inline void IndexElem::set_allocated_indexcolname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indexcolname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.indexcolname_.IsDefault()) { + _impl_.indexcolname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.IndexElem.indexcolname) } -// bool primary = 17 [json_name = "primary"]; -inline void IndexStmt::clear_primary() { - _impl_.primary_ = false; +// repeated .pg_query.Node collation = 4 [json_name = "collation"]; +inline int IndexElem::_internal_collation_size() const { + return _internal_collation().size(); } -inline bool IndexStmt::_internal_primary() const { - return _impl_.primary_; +inline int IndexElem::collation_size() const { + return _internal_collation_size(); } -inline bool IndexStmt::primary() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.primary) - return _internal_primary(); +inline void IndexElem::clear_collation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.collation_.Clear(); } -inline void IndexStmt::_internal_set_primary(bool value) { - - _impl_.primary_ = value; +inline ::pg_query::Node* IndexElem::mutable_collation(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.collation) + return _internal_mutable_collation()->Mutable(index); } -inline void IndexStmt::set_primary(bool value) { - _internal_set_primary(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.primary) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IndexElem::mutable_collation() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IndexElem.collation) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_collation(); } - -// bool isconstraint = 18 [json_name = "isconstraint"]; -inline void IndexStmt::clear_isconstraint() { - _impl_.isconstraint_ = false; +inline const ::pg_query::Node& IndexElem::collation(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexElem.collation) + return _internal_collation().Get(index); } -inline bool IndexStmt::_internal_isconstraint() const { - return _impl_.isconstraint_; +inline ::pg_query::Node* IndexElem::add_collation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_collation()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IndexElem.collation) + return _add; } -inline bool IndexStmt::isconstraint() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.isconstraint) - return _internal_isconstraint(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IndexElem::collation() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IndexElem.collation) + return _internal_collation(); } -inline void IndexStmt::_internal_set_isconstraint(bool value) { - - _impl_.isconstraint_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IndexElem::_internal_collation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.collation_; } -inline void IndexStmt::set_isconstraint(bool value) { - _internal_set_isconstraint(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.isconstraint) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IndexElem::_internal_mutable_collation() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.collation_; } -// bool deferrable = 19 [json_name = "deferrable"]; -inline void IndexStmt::clear_deferrable() { - _impl_.deferrable_ = false; +// repeated .pg_query.Node opclass = 5 [json_name = "opclass"]; +inline int IndexElem::_internal_opclass_size() const { + return _internal_opclass().size(); } -inline bool IndexStmt::_internal_deferrable() const { - return _impl_.deferrable_; +inline int IndexElem::opclass_size() const { + return _internal_opclass_size(); } -inline bool IndexStmt::deferrable() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.deferrable) - return _internal_deferrable(); +inline void IndexElem::clear_opclass() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opclass_.Clear(); } -inline void IndexStmt::_internal_set_deferrable(bool value) { - - _impl_.deferrable_ = value; +inline ::pg_query::Node* IndexElem::mutable_opclass(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.opclass) + return _internal_mutable_opclass()->Mutable(index); } -inline void IndexStmt::set_deferrable(bool value) { - _internal_set_deferrable(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.deferrable) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IndexElem::mutable_opclass() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IndexElem.opclass) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opclass(); } - -// bool initdeferred = 20 [json_name = "initdeferred"]; -inline void IndexStmt::clear_initdeferred() { - _impl_.initdeferred_ = false; +inline const ::pg_query::Node& IndexElem::opclass(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexElem.opclass) + return _internal_opclass().Get(index); } -inline bool IndexStmt::_internal_initdeferred() const { - return _impl_.initdeferred_; +inline ::pg_query::Node* IndexElem::add_opclass() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opclass()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IndexElem.opclass) + return _add; } -inline bool IndexStmt::initdeferred() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.initdeferred) - return _internal_initdeferred(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IndexElem::opclass() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IndexElem.opclass) + return _internal_opclass(); } -inline void IndexStmt::_internal_set_initdeferred(bool value) { - - _impl_.initdeferred_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IndexElem::_internal_opclass() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opclass_; } -inline void IndexStmt::set_initdeferred(bool value) { - _internal_set_initdeferred(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.initdeferred) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IndexElem::_internal_mutable_opclass() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opclass_; } -// bool transformed = 21 [json_name = "transformed"]; -inline void IndexStmt::clear_transformed() { - _impl_.transformed_ = false; +// repeated .pg_query.Node opclassopts = 6 [json_name = "opclassopts"]; +inline int IndexElem::_internal_opclassopts_size() const { + return _internal_opclassopts().size(); } -inline bool IndexStmt::_internal_transformed() const { - return _impl_.transformed_; +inline int IndexElem::opclassopts_size() const { + return _internal_opclassopts_size(); } -inline bool IndexStmt::transformed() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.transformed) - return _internal_transformed(); +inline void IndexElem::clear_opclassopts() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opclassopts_.Clear(); } -inline void IndexStmt::_internal_set_transformed(bool value) { - - _impl_.transformed_ = value; +inline ::pg_query::Node* IndexElem::mutable_opclassopts(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.opclassopts) + return _internal_mutable_opclassopts()->Mutable(index); } -inline void IndexStmt::set_transformed(bool value) { - _internal_set_transformed(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.transformed) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IndexElem::mutable_opclassopts() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IndexElem.opclassopts) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opclassopts(); } - -// bool concurrent = 22 [json_name = "concurrent"]; -inline void IndexStmt::clear_concurrent() { - _impl_.concurrent_ = false; +inline const ::pg_query::Node& IndexElem::opclassopts(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexElem.opclassopts) + return _internal_opclassopts().Get(index); } -inline bool IndexStmt::_internal_concurrent() const { - return _impl_.concurrent_; +inline ::pg_query::Node* IndexElem::add_opclassopts() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opclassopts()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IndexElem.opclassopts) + return _add; } -inline bool IndexStmt::concurrent() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.concurrent) - return _internal_concurrent(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IndexElem::opclassopts() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IndexElem.opclassopts) + return _internal_opclassopts(); } -inline void IndexStmt::_internal_set_concurrent(bool value) { - - _impl_.concurrent_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IndexElem::_internal_opclassopts() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opclassopts_; } -inline void IndexStmt::set_concurrent(bool value) { - _internal_set_concurrent(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.concurrent) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IndexElem::_internal_mutable_opclassopts() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opclassopts_; } -// bool if_not_exists = 23 [json_name = "if_not_exists"]; -inline void IndexStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +// .pg_query.SortByDir ordering = 7 [json_name = "ordering"]; +inline void IndexElem::clear_ordering() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ordering_ = 0; } -inline bool IndexStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline ::pg_query::SortByDir IndexElem::ordering() const { + // @@protoc_insertion_point(field_get:pg_query.IndexElem.ordering) + return _internal_ordering(); } -inline bool IndexStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.if_not_exists) - return _internal_if_not_exists(); +inline void IndexElem::set_ordering(::pg_query::SortByDir value) { + _internal_set_ordering(value); + // @@protoc_insertion_point(field_set:pg_query.IndexElem.ordering) } -inline void IndexStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline ::pg_query::SortByDir IndexElem::_internal_ordering() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::SortByDir>(_impl_.ordering_); } -inline void IndexStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.if_not_exists) +inline void IndexElem::_internal_set_ordering(::pg_query::SortByDir value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ordering_ = value; } -// bool reset_default_tblspc = 24 [json_name = "reset_default_tblspc"]; -inline void IndexStmt::clear_reset_default_tblspc() { - _impl_.reset_default_tblspc_ = false; +// .pg_query.SortByNulls nulls_ordering = 8 [json_name = "nulls_ordering"]; +inline void IndexElem::clear_nulls_ordering() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.nulls_ordering_ = 0; } -inline bool IndexStmt::_internal_reset_default_tblspc() const { - return _impl_.reset_default_tblspc_; +inline ::pg_query::SortByNulls IndexElem::nulls_ordering() const { + // @@protoc_insertion_point(field_get:pg_query.IndexElem.nulls_ordering) + return _internal_nulls_ordering(); } -inline bool IndexStmt::reset_default_tblspc() const { - // @@protoc_insertion_point(field_get:pg_query.IndexStmt.reset_default_tblspc) - return _internal_reset_default_tblspc(); +inline void IndexElem::set_nulls_ordering(::pg_query::SortByNulls value) { + _internal_set_nulls_ordering(value); + // @@protoc_insertion_point(field_set:pg_query.IndexElem.nulls_ordering) } -inline void IndexStmt::_internal_set_reset_default_tblspc(bool value) { - - _impl_.reset_default_tblspc_ = value; +inline ::pg_query::SortByNulls IndexElem::_internal_nulls_ordering() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::SortByNulls>(_impl_.nulls_ordering_); } -inline void IndexStmt::set_reset_default_tblspc(bool value) { - _internal_set_reset_default_tblspc(value); - // @@protoc_insertion_point(field_set:pg_query.IndexStmt.reset_default_tblspc) +inline void IndexElem::_internal_set_nulls_ordering(::pg_query::SortByNulls value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.nulls_ordering_ = value; } // ------------------------------------------------------------------- -// CreateFunctionStmt - -// bool is_procedure = 1 [json_name = "is_procedure"]; -inline void CreateFunctionStmt::clear_is_procedure() { - _impl_.is_procedure_ = false; -} -inline bool CreateFunctionStmt::_internal_is_procedure() const { - return _impl_.is_procedure_; -} -inline bool CreateFunctionStmt::is_procedure() const { - // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.is_procedure) - return _internal_is_procedure(); -} -inline void CreateFunctionStmt::_internal_set_is_procedure(bool value) { - - _impl_.is_procedure_ = value; -} -inline void CreateFunctionStmt::set_is_procedure(bool value) { - _internal_set_is_procedure(value); - // @@protoc_insertion_point(field_set:pg_query.CreateFunctionStmt.is_procedure) -} - -// bool replace = 2 [json_name = "replace"]; -inline void CreateFunctionStmt::clear_replace() { - _impl_.replace_ = false; -} -inline bool CreateFunctionStmt::_internal_replace() const { - return _impl_.replace_; -} -inline bool CreateFunctionStmt::replace() const { - // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.replace) - return _internal_replace(); -} -inline void CreateFunctionStmt::_internal_set_replace(bool value) { - - _impl_.replace_ = value; -} -inline void CreateFunctionStmt::set_replace(bool value) { - _internal_set_replace(value); - // @@protoc_insertion_point(field_set:pg_query.CreateFunctionStmt.replace) -} +// DefElem -// repeated .pg_query.Node funcname = 3 [json_name = "funcname"]; -inline int CreateFunctionStmt::_internal_funcname_size() const { - return _impl_.funcname_.size(); -} -inline int CreateFunctionStmt::funcname_size() const { - return _internal_funcname_size(); +// string defnamespace = 1 [json_name = "defnamespace"]; +inline void DefElem::clear_defnamespace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.defnamespace_.ClearToEmpty(); } -inline void CreateFunctionStmt::clear_funcname() { - _impl_.funcname_.Clear(); +inline const std::string& DefElem::defnamespace() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DefElem.defnamespace) + return _internal_defnamespace(); } -inline ::pg_query::Node* CreateFunctionStmt::mutable_funcname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.funcname) - return _impl_.funcname_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void DefElem::set_defnamespace(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.defnamespace_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.DefElem.defnamespace) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateFunctionStmt::mutable_funcname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFunctionStmt.funcname) - return &_impl_.funcname_; +inline std::string* DefElem::mutable_defnamespace() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_defnamespace(); + // @@protoc_insertion_point(field_mutable:pg_query.DefElem.defnamespace) + return _s; } -inline const ::pg_query::Node& CreateFunctionStmt::_internal_funcname(int index) const { - return _impl_.funcname_.Get(index); +inline const std::string& DefElem::_internal_defnamespace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.defnamespace_.Get(); } -inline const ::pg_query::Node& CreateFunctionStmt::funcname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.funcname) - return _internal_funcname(index); +inline void DefElem::_internal_set_defnamespace(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.defnamespace_.Set(value, GetArena()); } -inline ::pg_query::Node* CreateFunctionStmt::_internal_add_funcname() { - return _impl_.funcname_.Add(); +inline std::string* DefElem::_internal_mutable_defnamespace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.defnamespace_.Mutable( GetArena()); } -inline ::pg_query::Node* CreateFunctionStmt::add_funcname() { - ::pg_query::Node* _add = _internal_add_funcname(); - // @@protoc_insertion_point(field_add:pg_query.CreateFunctionStmt.funcname) - return _add; +inline std::string* DefElem::release_defnamespace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DefElem.defnamespace) + return _impl_.defnamespace_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateFunctionStmt::funcname() const { - // @@protoc_insertion_point(field_list:pg_query.CreateFunctionStmt.funcname) - return _impl_.funcname_; +inline void DefElem::set_allocated_defnamespace(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.defnamespace_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.defnamespace_.IsDefault()) { + _impl_.defnamespace_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.DefElem.defnamespace) } -// repeated .pg_query.Node parameters = 4 [json_name = "parameters"]; -inline int CreateFunctionStmt::_internal_parameters_size() const { - return _impl_.parameters_.size(); -} -inline int CreateFunctionStmt::parameters_size() const { - return _internal_parameters_size(); +// string defname = 2 [json_name = "defname"]; +inline void DefElem::clear_defname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.defname_.ClearToEmpty(); } -inline void CreateFunctionStmt::clear_parameters() { - _impl_.parameters_.Clear(); +inline const std::string& DefElem::defname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DefElem.defname) + return _internal_defname(); } -inline ::pg_query::Node* CreateFunctionStmt::mutable_parameters(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.parameters) - return _impl_.parameters_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void DefElem::set_defname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.defname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.DefElem.defname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateFunctionStmt::mutable_parameters() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFunctionStmt.parameters) - return &_impl_.parameters_; +inline std::string* DefElem::mutable_defname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_defname(); + // @@protoc_insertion_point(field_mutable:pg_query.DefElem.defname) + return _s; } -inline const ::pg_query::Node& CreateFunctionStmt::_internal_parameters(int index) const { - return _impl_.parameters_.Get(index); +inline const std::string& DefElem::_internal_defname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.defname_.Get(); } -inline const ::pg_query::Node& CreateFunctionStmt::parameters(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.parameters) - return _internal_parameters(index); +inline void DefElem::_internal_set_defname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.defname_.Set(value, GetArena()); } -inline ::pg_query::Node* CreateFunctionStmt::_internal_add_parameters() { - return _impl_.parameters_.Add(); +inline std::string* DefElem::_internal_mutable_defname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.defname_.Mutable( GetArena()); } -inline ::pg_query::Node* CreateFunctionStmt::add_parameters() { - ::pg_query::Node* _add = _internal_add_parameters(); - // @@protoc_insertion_point(field_add:pg_query.CreateFunctionStmt.parameters) - return _add; +inline std::string* DefElem::release_defname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DefElem.defname) + return _impl_.defname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateFunctionStmt::parameters() const { - // @@protoc_insertion_point(field_list:pg_query.CreateFunctionStmt.parameters) - return _impl_.parameters_; +inline void DefElem::set_allocated_defname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.defname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.defname_.IsDefault()) { + _impl_.defname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.DefElem.defname) } -// .pg_query.TypeName return_type = 5 [json_name = "returnType"]; -inline bool CreateFunctionStmt::_internal_has_return_type() const { - return this != internal_default_instance() && _impl_.return_type_ != nullptr; -} -inline bool CreateFunctionStmt::has_return_type() const { - return _internal_has_return_type(); +// .pg_query.Node arg = 3 [json_name = "arg"]; +inline bool DefElem::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void CreateFunctionStmt::clear_return_type() { - if (GetArenaForAllocation() == nullptr && _impl_.return_type_ != nullptr) { - delete _impl_.return_type_; - } - _impl_.return_type_ = nullptr; +inline void DefElem::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::TypeName& CreateFunctionStmt::_internal_return_type() const { - const ::pg_query::TypeName* p = _impl_.return_type_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline const ::pg_query::Node& DefElem::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::TypeName& CreateFunctionStmt::return_type() const { - // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.return_type) - return _internal_return_type(); +inline const ::pg_query::Node& DefElem::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DefElem.arg) + return _internal_arg(); } -inline void CreateFunctionStmt::unsafe_arena_set_allocated_return_type( - ::pg_query::TypeName* return_type) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.return_type_); +inline void DefElem::unsafe_arena_set_allocated_arg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.return_type_ = return_type; - if (return_type) { - + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateFunctionStmt.return_type) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DefElem.arg) } -inline ::pg_query::TypeName* CreateFunctionStmt::release_return_type() { - - ::pg_query::TypeName* temp = _impl_.return_type_; - _impl_.return_type_ = nullptr; +inline ::pg_query::Node* DefElem::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.arg_; + _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* CreateFunctionStmt::unsafe_arena_release_return_type() { - // @@protoc_insertion_point(field_release:pg_query.CreateFunctionStmt.return_type) - - ::pg_query::TypeName* temp = _impl_.return_type_; - _impl_.return_type_ = nullptr; +inline ::pg_query::Node* DefElem::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DefElem.arg) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.arg_; + _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::TypeName* CreateFunctionStmt::_internal_mutable_return_type() { - - if (_impl_.return_type_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.return_type_ = p; +inline ::pg_query::Node* DefElem::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.return_type_; + return _impl_.arg_; } -inline ::pg_query::TypeName* CreateFunctionStmt::mutable_return_type() { - ::pg_query::TypeName* _msg = _internal_mutable_return_type(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.return_type) +inline ::pg_query::Node* DefElem::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.DefElem.arg) return _msg; } -inline void CreateFunctionStmt::set_allocated_return_type(::pg_query::TypeName* return_type) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void DefElem::set_allocated_arg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.return_type_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.arg_); } - if (return_type) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(return_type); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - return_type = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, return_type, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.return_type_ = return_type; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateFunctionStmt.return_type) + + _impl_.arg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.DefElem.arg) } -// repeated .pg_query.Node options = 6 [json_name = "options"]; -inline int CreateFunctionStmt::_internal_options_size() const { - return _impl_.options_.size(); +// .pg_query.DefElemAction defaction = 4 [json_name = "defaction"]; +inline void DefElem::clear_defaction() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.defaction_ = 0; } -inline int CreateFunctionStmt::options_size() const { - return _internal_options_size(); +inline ::pg_query::DefElemAction DefElem::defaction() const { + // @@protoc_insertion_point(field_get:pg_query.DefElem.defaction) + return _internal_defaction(); } -inline void CreateFunctionStmt::clear_options() { - _impl_.options_.Clear(); +inline void DefElem::set_defaction(::pg_query::DefElemAction value) { + _internal_set_defaction(value); + // @@protoc_insertion_point(field_set:pg_query.DefElem.defaction) } -inline ::pg_query::Node* CreateFunctionStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.options) - return _impl_.options_.Mutable(index); +inline ::pg_query::DefElemAction DefElem::_internal_defaction() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DefElemAction>(_impl_.defaction_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateFunctionStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFunctionStmt.options) - return &_impl_.options_; +inline void DefElem::_internal_set_defaction(::pg_query::DefElemAction value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.defaction_ = value; } -inline const ::pg_query::Node& CreateFunctionStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// int32 location = 5 [json_name = "location"]; +inline void DefElem::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& CreateFunctionStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.options) - return _internal_options(index); +inline ::int32_t DefElem::location() const { + // @@protoc_insertion_point(field_get:pg_query.DefElem.location) + return _internal_location(); } -inline ::pg_query::Node* CreateFunctionStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void DefElem::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.DefElem.location) } -inline ::pg_query::Node* CreateFunctionStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateFunctionStmt.options) - return _add; +inline ::int32_t DefElem::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateFunctionStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateFunctionStmt.options) - return _impl_.options_; +inline void DefElem::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.Node sql_body = 7 [json_name = "sql_body"]; -inline bool CreateFunctionStmt::_internal_has_sql_body() const { - return this != internal_default_instance() && _impl_.sql_body_ != nullptr; +// ------------------------------------------------------------------- + +// LockingClause + +// repeated .pg_query.Node locked_rels = 1 [json_name = "lockedRels"]; +inline int LockingClause::_internal_locked_rels_size() const { + return _internal_locked_rels().size(); } -inline bool CreateFunctionStmt::has_sql_body() const { - return _internal_has_sql_body(); +inline int LockingClause::locked_rels_size() const { + return _internal_locked_rels_size(); } -inline void CreateFunctionStmt::clear_sql_body() { - if (GetArenaForAllocation() == nullptr && _impl_.sql_body_ != nullptr) { - delete _impl_.sql_body_; - } - _impl_.sql_body_ = nullptr; +inline void LockingClause::clear_locked_rels() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.locked_rels_.Clear(); } -inline const ::pg_query::Node& CreateFunctionStmt::_internal_sql_body() const { - const ::pg_query::Node* p = _impl_.sql_body_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::Node* LockingClause::mutable_locked_rels(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.LockingClause.locked_rels) + return _internal_mutable_locked_rels()->Mutable(index); } -inline const ::pg_query::Node& CreateFunctionStmt::sql_body() const { - // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.sql_body) - return _internal_sql_body(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* LockingClause::mutable_locked_rels() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.LockingClause.locked_rels) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_locked_rels(); } -inline void CreateFunctionStmt::unsafe_arena_set_allocated_sql_body( - ::pg_query::Node* sql_body) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.sql_body_); - } - _impl_.sql_body_ = sql_body; - if (sql_body) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateFunctionStmt.sql_body) +inline const ::pg_query::Node& LockingClause::locked_rels(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.LockingClause.locked_rels) + return _internal_locked_rels().Get(index); } -inline ::pg_query::Node* CreateFunctionStmt::release_sql_body() { - - ::pg_query::Node* temp = _impl_.sql_body_; - _impl_.sql_body_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::pg_query::Node* LockingClause::add_locked_rels() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_locked_rels()->Add(); + // @@protoc_insertion_point(field_add:pg_query.LockingClause.locked_rels) + return _add; } -inline ::pg_query::Node* CreateFunctionStmt::unsafe_arena_release_sql_body() { - // @@protoc_insertion_point(field_release:pg_query.CreateFunctionStmt.sql_body) - - ::pg_query::Node* temp = _impl_.sql_body_; - _impl_.sql_body_ = nullptr; - return temp; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& LockingClause::locked_rels() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.LockingClause.locked_rels) + return _internal_locked_rels(); } -inline ::pg_query::Node* CreateFunctionStmt::_internal_mutable_sql_body() { - - if (_impl_.sql_body_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.sql_body_ = p; - } - return _impl_.sql_body_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +LockingClause::_internal_locked_rels() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.locked_rels_; } -inline ::pg_query::Node* CreateFunctionStmt::mutable_sql_body() { - ::pg_query::Node* _msg = _internal_mutable_sql_body(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.sql_body) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +LockingClause::_internal_mutable_locked_rels() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.locked_rels_; } -inline void CreateFunctionStmt::set_allocated_sql_body(::pg_query::Node* sql_body) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.sql_body_; - } - if (sql_body) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(sql_body); - if (message_arena != submessage_arena) { - sql_body = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, sql_body, submessage_arena); - } - - } else { - - } - _impl_.sql_body_ = sql_body; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateFunctionStmt.sql_body) + +// .pg_query.LockClauseStrength strength = 2 [json_name = "strength"]; +inline void LockingClause::clear_strength() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.strength_ = 0; +} +inline ::pg_query::LockClauseStrength LockingClause::strength() const { + // @@protoc_insertion_point(field_get:pg_query.LockingClause.strength) + return _internal_strength(); +} +inline void LockingClause::set_strength(::pg_query::LockClauseStrength value) { + _internal_set_strength(value); + // @@protoc_insertion_point(field_set:pg_query.LockingClause.strength) +} +inline ::pg_query::LockClauseStrength LockingClause::_internal_strength() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::LockClauseStrength>(_impl_.strength_); +} +inline void LockingClause::_internal_set_strength(::pg_query::LockClauseStrength value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.strength_ = value; +} + +// .pg_query.LockWaitPolicy wait_policy = 3 [json_name = "waitPolicy"]; +inline void LockingClause::clear_wait_policy() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.wait_policy_ = 0; +} +inline ::pg_query::LockWaitPolicy LockingClause::wait_policy() const { + // @@protoc_insertion_point(field_get:pg_query.LockingClause.wait_policy) + return _internal_wait_policy(); +} +inline void LockingClause::set_wait_policy(::pg_query::LockWaitPolicy value) { + _internal_set_wait_policy(value); + // @@protoc_insertion_point(field_set:pg_query.LockingClause.wait_policy) +} +inline ::pg_query::LockWaitPolicy LockingClause::_internal_wait_policy() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::LockWaitPolicy>(_impl_.wait_policy_); +} +inline void LockingClause::_internal_set_wait_policy(::pg_query::LockWaitPolicy value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.wait_policy_ = value; } // ------------------------------------------------------------------- -// AlterFunctionStmt +// XmlSerialize -// .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; -inline void AlterFunctionStmt::clear_objtype() { - _impl_.objtype_ = 0; +// .pg_query.XmlOptionType xmloption = 1 [json_name = "xmloption"]; +inline void XmlSerialize::clear_xmloption() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.xmloption_ = 0; } -inline ::pg_query::ObjectType AlterFunctionStmt::_internal_objtype() const { - return static_cast< ::pg_query::ObjectType >(_impl_.objtype_); +inline ::pg_query::XmlOptionType XmlSerialize::xmloption() const { + // @@protoc_insertion_point(field_get:pg_query.XmlSerialize.xmloption) + return _internal_xmloption(); } -inline ::pg_query::ObjectType AlterFunctionStmt::objtype() const { - // @@protoc_insertion_point(field_get:pg_query.AlterFunctionStmt.objtype) - return _internal_objtype(); +inline void XmlSerialize::set_xmloption(::pg_query::XmlOptionType value) { + _internal_set_xmloption(value); + // @@protoc_insertion_point(field_set:pg_query.XmlSerialize.xmloption) } -inline void AlterFunctionStmt::_internal_set_objtype(::pg_query::ObjectType value) { - - _impl_.objtype_ = value; +inline ::pg_query::XmlOptionType XmlSerialize::_internal_xmloption() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::XmlOptionType>(_impl_.xmloption_); } -inline void AlterFunctionStmt::set_objtype(::pg_query::ObjectType value) { - _internal_set_objtype(value); - // @@protoc_insertion_point(field_set:pg_query.AlterFunctionStmt.objtype) +inline void XmlSerialize::_internal_set_xmloption(::pg_query::XmlOptionType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.xmloption_ = value; } -// .pg_query.ObjectWithArgs func = 2 [json_name = "func"]; -inline bool AlterFunctionStmt::_internal_has_func() const { - return this != internal_default_instance() && _impl_.func_ != nullptr; -} -inline bool AlterFunctionStmt::has_func() const { - return _internal_has_func(); +// .pg_query.Node expr = 2 [json_name = "expr"]; +inline bool XmlSerialize::has_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.expr_ != nullptr); + return value; } -inline void AlterFunctionStmt::clear_func() { - if (GetArenaForAllocation() == nullptr && _impl_.func_ != nullptr) { - delete _impl_.func_; - } - _impl_.func_ = nullptr; +inline void XmlSerialize::clear_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.expr_ != nullptr) _impl_.expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::ObjectWithArgs& AlterFunctionStmt::_internal_func() const { - const ::pg_query::ObjectWithArgs* p = _impl_.func_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_ObjectWithArgs_default_instance_); +inline const ::pg_query::Node& XmlSerialize::_internal_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::ObjectWithArgs& AlterFunctionStmt::func() const { - // @@protoc_insertion_point(field_get:pg_query.AlterFunctionStmt.func) - return _internal_func(); +inline const ::pg_query::Node& XmlSerialize::expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.XmlSerialize.expr) + return _internal_expr(); } -inline void AlterFunctionStmt::unsafe_arena_set_allocated_func( - ::pg_query::ObjectWithArgs* func) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.func_); +inline void XmlSerialize::unsafe_arena_set_allocated_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.expr_); } - _impl_.func_ = func; - if (func) { - + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterFunctionStmt.func) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.XmlSerialize.expr) } -inline ::pg_query::ObjectWithArgs* AlterFunctionStmt::release_func() { - - ::pg_query::ObjectWithArgs* temp = _impl_.func_; - _impl_.func_ = nullptr; +inline ::pg_query::Node* XmlSerialize::release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.expr_; + _impl_.expr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::ObjectWithArgs* AlterFunctionStmt::unsafe_arena_release_func() { - // @@protoc_insertion_point(field_release:pg_query.AlterFunctionStmt.func) - - ::pg_query::ObjectWithArgs* temp = _impl_.func_; - _impl_.func_ = nullptr; +inline ::pg_query::Node* XmlSerialize::unsafe_arena_release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.XmlSerialize.expr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.expr_; + _impl_.expr_ = nullptr; return temp; } -inline ::pg_query::ObjectWithArgs* AlterFunctionStmt::_internal_mutable_func() { - - if (_impl_.func_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArenaForAllocation()); - _impl_.func_ = p; +inline ::pg_query::Node* XmlSerialize::_internal_mutable_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.func_; + return _impl_.expr_; } -inline ::pg_query::ObjectWithArgs* AlterFunctionStmt::mutable_func() { - ::pg_query::ObjectWithArgs* _msg = _internal_mutable_func(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterFunctionStmt.func) +inline ::pg_query::Node* XmlSerialize::mutable_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.XmlSerialize.expr) return _msg; } -inline void AlterFunctionStmt::set_allocated_func(::pg_query::ObjectWithArgs* func) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void XmlSerialize::set_allocated_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.func_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.expr_); } - if (func) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(func); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - func = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, func, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.func_ = func; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterFunctionStmt.func) -} -// repeated .pg_query.Node actions = 3 [json_name = "actions"]; -inline int AlterFunctionStmt::_internal_actions_size() const { - return _impl_.actions_.size(); + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.XmlSerialize.expr) } -inline int AlterFunctionStmt::actions_size() const { - return _internal_actions_size(); + +// .pg_query.TypeName type_name = 3 [json_name = "typeName"]; +inline bool XmlSerialize::has_type_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.type_name_ != nullptr); + return value; } -inline void AlterFunctionStmt::clear_actions() { - _impl_.actions_.Clear(); +inline void XmlSerialize::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.type_name_ != nullptr) _impl_.type_name_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::Node* AlterFunctionStmt::mutable_actions(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterFunctionStmt.actions) - return _impl_.actions_.Mutable(index); +inline const ::pg_query::TypeName& XmlSerialize::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.type_name_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterFunctionStmt::mutable_actions() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterFunctionStmt.actions) - return &_impl_.actions_; +inline const ::pg_query::TypeName& XmlSerialize::type_name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.XmlSerialize.type_name) + return _internal_type_name(); } -inline const ::pg_query::Node& AlterFunctionStmt::_internal_actions(int index) const { - return _impl_.actions_.Get(index); +inline void XmlSerialize::unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.type_name_); + } + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.XmlSerialize.type_name) } -inline const ::pg_query::Node& AlterFunctionStmt::actions(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterFunctionStmt.actions) - return _internal_actions(index); +inline ::pg_query::TypeName* XmlSerialize::release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::TypeName* released = _impl_.type_name_; + _impl_.type_name_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::Node* AlterFunctionStmt::_internal_add_actions() { - return _impl_.actions_.Add(); +inline ::pg_query::TypeName* XmlSerialize::unsafe_arena_release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.XmlSerialize.type_name) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::TypeName* temp = _impl_.type_name_; + _impl_.type_name_ = nullptr; + return temp; } -inline ::pg_query::Node* AlterFunctionStmt::add_actions() { - ::pg_query::Node* _add = _internal_add_actions(); - // @@protoc_insertion_point(field_add:pg_query.AlterFunctionStmt.actions) - return _add; +inline ::pg_query::TypeName* XmlSerialize::_internal_mutable_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.type_name_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(p); + } + return _impl_.type_name_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterFunctionStmt::actions() const { - // @@protoc_insertion_point(field_list:pg_query.AlterFunctionStmt.actions) - return _impl_.actions_; +inline ::pg_query::TypeName* XmlSerialize::mutable_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_type_name(); + // @@protoc_insertion_point(field_mutable:pg_query.XmlSerialize.type_name) + return _msg; } +inline void XmlSerialize::set_allocated_type_name(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.type_name_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } -// DoStmt + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.XmlSerialize.type_name) +} -// repeated .pg_query.Node args = 1 [json_name = "args"]; -inline int DoStmt::_internal_args_size() const { - return _impl_.args_.size(); +// bool indent = 4 [json_name = "indent"]; +inline void XmlSerialize::clear_indent() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indent_ = false; } -inline int DoStmt::args_size() const { - return _internal_args_size(); +inline bool XmlSerialize::indent() const { + // @@protoc_insertion_point(field_get:pg_query.XmlSerialize.indent) + return _internal_indent(); } -inline void DoStmt::clear_args() { - _impl_.args_.Clear(); +inline void XmlSerialize::set_indent(bool value) { + _internal_set_indent(value); + // @@protoc_insertion_point(field_set:pg_query.XmlSerialize.indent) } -inline ::pg_query::Node* DoStmt::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DoStmt.args) - return _impl_.args_.Mutable(index); +inline bool XmlSerialize::_internal_indent() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.indent_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DoStmt::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DoStmt.args) - return &_impl_.args_; +inline void XmlSerialize::_internal_set_indent(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indent_ = value; } -inline const ::pg_query::Node& DoStmt::_internal_args(int index) const { - return _impl_.args_.Get(index); + +// int32 location = 5 [json_name = "location"]; +inline void XmlSerialize::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& DoStmt::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DoStmt.args) - return _internal_args(index); +inline ::int32_t XmlSerialize::location() const { + // @@protoc_insertion_point(field_get:pg_query.XmlSerialize.location) + return _internal_location(); } -inline ::pg_query::Node* DoStmt::_internal_add_args() { - return _impl_.args_.Add(); +inline void XmlSerialize::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.XmlSerialize.location) } -inline ::pg_query::Node* DoStmt::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.DoStmt.args) - return _add; +inline ::int32_t XmlSerialize::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DoStmt::args() const { - // @@protoc_insertion_point(field_list:pg_query.DoStmt.args) - return _impl_.args_; +inline void XmlSerialize::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// RenameStmt +// PartitionElem -// .pg_query.ObjectType rename_type = 1 [json_name = "renameType"]; -inline void RenameStmt::clear_rename_type() { - _impl_.rename_type_ = 0; -} -inline ::pg_query::ObjectType RenameStmt::_internal_rename_type() const { - return static_cast< ::pg_query::ObjectType >(_impl_.rename_type_); +// string name = 1 [json_name = "name"]; +inline void PartitionElem::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline ::pg_query::ObjectType RenameStmt::rename_type() const { - // @@protoc_insertion_point(field_get:pg_query.RenameStmt.rename_type) - return _internal_rename_type(); +inline const std::string& PartitionElem::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionElem.name) + return _internal_name(); } -inline void RenameStmt::_internal_set_rename_type(::pg_query::ObjectType value) { - - _impl_.rename_type_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void PartitionElem::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.PartitionElem.name) } -inline void RenameStmt::set_rename_type(::pg_query::ObjectType value) { - _internal_set_rename_type(value); - // @@protoc_insertion_point(field_set:pg_query.RenameStmt.rename_type) +inline std::string* PartitionElem::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.PartitionElem.name) + return _s; } - -// .pg_query.ObjectType relation_type = 2 [json_name = "relationType"]; -inline void RenameStmt::clear_relation_type() { - _impl_.relation_type_ = 0; +inline const std::string& PartitionElem::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline ::pg_query::ObjectType RenameStmt::_internal_relation_type() const { - return static_cast< ::pg_query::ObjectType >(_impl_.relation_type_); +inline void PartitionElem::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline ::pg_query::ObjectType RenameStmt::relation_type() const { - // @@protoc_insertion_point(field_get:pg_query.RenameStmt.relation_type) - return _internal_relation_type(); +inline std::string* PartitionElem::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline void RenameStmt::_internal_set_relation_type(::pg_query::ObjectType value) { - - _impl_.relation_type_ = value; +inline std::string* PartitionElem::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PartitionElem.name) + return _impl_.name_.Release(); } -inline void RenameStmt::set_relation_type(::pg_query::ObjectType value) { - _internal_set_relation_type(value); - // @@protoc_insertion_point(field_set:pg_query.RenameStmt.relation_type) +inline void PartitionElem::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionElem.name) } -// .pg_query.RangeVar relation = 3 [json_name = "relation"]; -inline bool RenameStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; -} -inline bool RenameStmt::has_relation() const { - return _internal_has_relation(); +// .pg_query.Node expr = 2 [json_name = "expr"]; +inline bool PartitionElem::has_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.expr_ != nullptr); + return value; } -inline void RenameStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void PartitionElem::clear_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.expr_ != nullptr) _impl_.expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RangeVar& RenameStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::Node& PartitionElem::_internal_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RangeVar& RenameStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.RenameStmt.relation) - return _internal_relation(); +inline const ::pg_query::Node& PartitionElem::expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionElem.expr) + return _internal_expr(); } -inline void RenameStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void PartitionElem::unsafe_arena_set_allocated_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.expr_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RenameStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PartitionElem.expr) } -inline ::pg_query::RangeVar* RenameStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* PartitionElem::release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.expr_; + _impl_.expr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* RenameStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.RenameStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* PartitionElem::unsafe_arena_release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PartitionElem.expr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.expr_; + _impl_.expr_ = nullptr; return temp; } -inline ::pg_query::RangeVar* RenameStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::Node* PartitionElem::_internal_mutable_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.relation_; + return _impl_.expr_; } -inline ::pg_query::RangeVar* RenameStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.RenameStmt.relation) +inline ::pg_query::Node* PartitionElem::mutable_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.PartitionElem.expr) return _msg; } -inline void RenameStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void PartitionElem::set_allocated_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.expr_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.RenameStmt.relation) -} -// .pg_query.Node object = 4 [json_name = "object"]; -inline bool RenameStmt::_internal_has_object() const { - return this != internal_default_instance() && _impl_.object_ != nullptr; + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionElem.expr) } -inline bool RenameStmt::has_object() const { - return _internal_has_object(); + +// repeated .pg_query.Node collation = 3 [json_name = "collation"]; +inline int PartitionElem::_internal_collation_size() const { + return _internal_collation().size(); } -inline void RenameStmt::clear_object() { - if (GetArenaForAllocation() == nullptr && _impl_.object_ != nullptr) { - delete _impl_.object_; - } - _impl_.object_ = nullptr; +inline int PartitionElem::collation_size() const { + return _internal_collation_size(); } -inline const ::pg_query::Node& RenameStmt::_internal_object() const { - const ::pg_query::Node* p = _impl_.object_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void PartitionElem::clear_collation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.collation_.Clear(); } -inline const ::pg_query::Node& RenameStmt::object() const { - // @@protoc_insertion_point(field_get:pg_query.RenameStmt.object) - return _internal_object(); +inline ::pg_query::Node* PartitionElem::mutable_collation(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.PartitionElem.collation) + return _internal_mutable_collation()->Mutable(index); } -inline void RenameStmt::unsafe_arena_set_allocated_object( - ::pg_query::Node* object) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.object_); - } - _impl_.object_ = object; - if (object) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RenameStmt.object) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* PartitionElem::mutable_collation() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionElem.collation) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_collation(); } -inline ::pg_query::Node* RenameStmt::release_object() { - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& PartitionElem::collation(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionElem.collation) + return _internal_collation().Get(index); } -inline ::pg_query::Node* RenameStmt::unsafe_arena_release_object() { - // @@protoc_insertion_point(field_release:pg_query.RenameStmt.object) - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; - return temp; +inline ::pg_query::Node* PartitionElem::add_collation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_collation()->Add(); + // @@protoc_insertion_point(field_add:pg_query.PartitionElem.collation) + return _add; } -inline ::pg_query::Node* RenameStmt::_internal_mutable_object() { - - if (_impl_.object_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.object_ = p; - } - return _impl_.object_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& PartitionElem::collation() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.PartitionElem.collation) + return _internal_collation(); } -inline ::pg_query::Node* RenameStmt::mutable_object() { - ::pg_query::Node* _msg = _internal_mutable_object(); - // @@protoc_insertion_point(field_mutable:pg_query.RenameStmt.object) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +PartitionElem::_internal_collation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.collation_; } -inline void RenameStmt::set_allocated_object(::pg_query::Node* object) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.object_; - } - if (object) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(object); - if (message_arena != submessage_arena) { - object = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, object, submessage_arena); - } - - } else { - - } - _impl_.object_ = object; - // @@protoc_insertion_point(field_set_allocated:pg_query.RenameStmt.object) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +PartitionElem::_internal_mutable_collation() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.collation_; } -// string subname = 5 [json_name = "subname"]; -inline void RenameStmt::clear_subname() { - _impl_.subname_.ClearToEmpty(); +// repeated .pg_query.Node opclass = 4 [json_name = "opclass"]; +inline int PartitionElem::_internal_opclass_size() const { + return _internal_opclass().size(); } -inline const std::string& RenameStmt::subname() const { - // @@protoc_insertion_point(field_get:pg_query.RenameStmt.subname) - return _internal_subname(); +inline int PartitionElem::opclass_size() const { + return _internal_opclass_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void RenameStmt::set_subname(ArgT0&& arg0, ArgT... args) { - - _impl_.subname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RenameStmt.subname) +inline void PartitionElem::clear_opclass() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opclass_.Clear(); } -inline std::string* RenameStmt::mutable_subname() { - std::string* _s = _internal_mutable_subname(); - // @@protoc_insertion_point(field_mutable:pg_query.RenameStmt.subname) - return _s; +inline ::pg_query::Node* PartitionElem::mutable_opclass(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.PartitionElem.opclass) + return _internal_mutable_opclass()->Mutable(index); } -inline const std::string& RenameStmt::_internal_subname() const { - return _impl_.subname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* PartitionElem::mutable_opclass() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionElem.opclass) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opclass(); } -inline void RenameStmt::_internal_set_subname(const std::string& value) { - - _impl_.subname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& PartitionElem::opclass(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionElem.opclass) + return _internal_opclass().Get(index); } -inline std::string* RenameStmt::_internal_mutable_subname() { - - return _impl_.subname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* PartitionElem::add_opclass() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opclass()->Add(); + // @@protoc_insertion_point(field_add:pg_query.PartitionElem.opclass) + return _add; } -inline std::string* RenameStmt::release_subname() { - // @@protoc_insertion_point(field_release:pg_query.RenameStmt.subname) - return _impl_.subname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& PartitionElem::opclass() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.PartitionElem.opclass) + return _internal_opclass(); } -inline void RenameStmt::set_allocated_subname(std::string* subname) { - if (subname != nullptr) { - - } else { - - } - _impl_.subname_.SetAllocated(subname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.subname_.IsDefault()) { - _impl_.subname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RenameStmt.subname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +PartitionElem::_internal_opclass() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opclass_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +PartitionElem::_internal_mutable_opclass() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opclass_; } -// string newname = 6 [json_name = "newname"]; -inline void RenameStmt::clear_newname() { - _impl_.newname_.ClearToEmpty(); +// int32 location = 5 [json_name = "location"]; +inline void PartitionElem::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const std::string& RenameStmt::newname() const { - // @@protoc_insertion_point(field_get:pg_query.RenameStmt.newname) - return _internal_newname(); +inline ::int32_t PartitionElem::location() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionElem.location) + return _internal_location(); } -template -inline PROTOBUF_ALWAYS_INLINE -void RenameStmt::set_newname(ArgT0&& arg0, ArgT... args) { - - _impl_.newname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RenameStmt.newname) +inline void PartitionElem::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionElem.location) } -inline std::string* RenameStmt::mutable_newname() { - std::string* _s = _internal_mutable_newname(); - // @@protoc_insertion_point(field_mutable:pg_query.RenameStmt.newname) - return _s; +inline ::int32_t PartitionElem::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const std::string& RenameStmt::_internal_newname() const { - return _impl_.newname_.Get(); +inline void PartitionElem::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -inline void RenameStmt::_internal_set_newname(const std::string& value) { - - _impl_.newname_.Set(value, GetArenaForAllocation()); + +// ------------------------------------------------------------------- + +// PartitionSpec + +// .pg_query.PartitionStrategy strategy = 1 [json_name = "strategy"]; +inline void PartitionSpec::clear_strategy() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.strategy_ = 0; } -inline std::string* RenameStmt::_internal_mutable_newname() { - - return _impl_.newname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::PartitionStrategy PartitionSpec::strategy() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionSpec.strategy) + return _internal_strategy(); } -inline std::string* RenameStmt::release_newname() { - // @@protoc_insertion_point(field_release:pg_query.RenameStmt.newname) - return _impl_.newname_.Release(); +inline void PartitionSpec::set_strategy(::pg_query::PartitionStrategy value) { + _internal_set_strategy(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionSpec.strategy) } -inline void RenameStmt::set_allocated_newname(std::string* newname) { - if (newname != nullptr) { - - } else { - - } - _impl_.newname_.SetAllocated(newname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.newname_.IsDefault()) { - _impl_.newname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RenameStmt.newname) +inline ::pg_query::PartitionStrategy PartitionSpec::_internal_strategy() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::PartitionStrategy>(_impl_.strategy_); +} +inline void PartitionSpec::_internal_set_strategy(::pg_query::PartitionStrategy value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.strategy_ = value; } -// .pg_query.DropBehavior behavior = 7 [json_name = "behavior"]; -inline void RenameStmt::clear_behavior() { - _impl_.behavior_ = 0; +// repeated .pg_query.Node part_params = 2 [json_name = "partParams"]; +inline int PartitionSpec::_internal_part_params_size() const { + return _internal_part_params().size(); } -inline ::pg_query::DropBehavior RenameStmt::_internal_behavior() const { - return static_cast< ::pg_query::DropBehavior >(_impl_.behavior_); +inline int PartitionSpec::part_params_size() const { + return _internal_part_params_size(); } -inline ::pg_query::DropBehavior RenameStmt::behavior() const { - // @@protoc_insertion_point(field_get:pg_query.RenameStmt.behavior) - return _internal_behavior(); +inline void PartitionSpec::clear_part_params() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.part_params_.Clear(); } -inline void RenameStmt::_internal_set_behavior(::pg_query::DropBehavior value) { - - _impl_.behavior_ = value; +inline ::pg_query::Node* PartitionSpec::mutable_part_params(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.PartitionSpec.part_params) + return _internal_mutable_part_params()->Mutable(index); } -inline void RenameStmt::set_behavior(::pg_query::DropBehavior value) { - _internal_set_behavior(value); - // @@protoc_insertion_point(field_set:pg_query.RenameStmt.behavior) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* PartitionSpec::mutable_part_params() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionSpec.part_params) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_part_params(); +} +inline const ::pg_query::Node& PartitionSpec::part_params(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionSpec.part_params) + return _internal_part_params().Get(index); +} +inline ::pg_query::Node* PartitionSpec::add_part_params() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_part_params()->Add(); + // @@protoc_insertion_point(field_add:pg_query.PartitionSpec.part_params) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& PartitionSpec::part_params() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.PartitionSpec.part_params) + return _internal_part_params(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +PartitionSpec::_internal_part_params() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.part_params_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +PartitionSpec::_internal_mutable_part_params() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.part_params_; } -// bool missing_ok = 8 [json_name = "missing_ok"]; -inline void RenameStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; +// int32 location = 3 [json_name = "location"]; +inline void PartitionSpec::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool RenameStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline ::int32_t PartitionSpec::location() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionSpec.location) + return _internal_location(); } -inline bool RenameStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.RenameStmt.missing_ok) - return _internal_missing_ok(); +inline void PartitionSpec::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionSpec.location) } -inline void RenameStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline ::int32_t PartitionSpec::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void RenameStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.RenameStmt.missing_ok) +inline void PartitionSpec::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// RuleStmt +// PartitionBoundSpec -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool RuleStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; +// string strategy = 1 [json_name = "strategy"]; +inline void PartitionBoundSpec::clear_strategy() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.strategy_.ClearToEmpty(); } -inline bool RuleStmt::has_relation() const { - return _internal_has_relation(); +inline const std::string& PartitionBoundSpec::strategy() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.strategy) + return _internal_strategy(); } -inline void RuleStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void PartitionBoundSpec::set_strategy(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.strategy_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.strategy) } -inline const ::pg_query::RangeVar& RuleStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline std::string* PartitionBoundSpec::mutable_strategy() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_strategy(); + // @@protoc_insertion_point(field_mutable:pg_query.PartitionBoundSpec.strategy) + return _s; } -inline const ::pg_query::RangeVar& RuleStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.RuleStmt.relation) - return _internal_relation(); +inline const std::string& PartitionBoundSpec::_internal_strategy() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.strategy_.Get(); } -inline void RuleStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); - } - _impl_.relation_ = relation; - if (relation) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RuleStmt.relation) +inline void PartitionBoundSpec::_internal_set_strategy(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.strategy_.Set(value, GetArena()); } -inline ::pg_query::RangeVar* RuleStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* PartitionBoundSpec::_internal_mutable_strategy() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.strategy_.Mutable( GetArena()); } -inline ::pg_query::RangeVar* RuleStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.RuleStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; - return temp; +inline std::string* PartitionBoundSpec::release_strategy() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PartitionBoundSpec.strategy) + return _impl_.strategy_.Release(); } -inline ::pg_query::RangeVar* RuleStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; - } - return _impl_.relation_; +inline void PartitionBoundSpec::set_allocated_strategy(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.strategy_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.strategy_.IsDefault()) { + _impl_.strategy_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionBoundSpec.strategy) } -inline ::pg_query::RangeVar* RuleStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.RuleStmt.relation) - return _msg; + +// bool is_default = 2 [json_name = "is_default"]; +inline void PartitionBoundSpec::clear_is_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_default_ = false; } -inline void RuleStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.relation_; - } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); - if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); - } - - } else { - - } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.RuleStmt.relation) +inline bool PartitionBoundSpec::is_default() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.is_default) + return _internal_is_default(); +} +inline void PartitionBoundSpec::set_is_default(bool value) { + _internal_set_is_default(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.is_default) +} +inline bool PartitionBoundSpec::_internal_is_default() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_default_; +} +inline void PartitionBoundSpec::_internal_set_is_default(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_default_ = value; } -// string rulename = 2 [json_name = "rulename"]; -inline void RuleStmt::clear_rulename() { - _impl_.rulename_.ClearToEmpty(); +// int32 modulus = 3 [json_name = "modulus"]; +inline void PartitionBoundSpec::clear_modulus() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.modulus_ = 0; } -inline const std::string& RuleStmt::rulename() const { - // @@protoc_insertion_point(field_get:pg_query.RuleStmt.rulename) - return _internal_rulename(); +inline ::int32_t PartitionBoundSpec::modulus() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.modulus) + return _internal_modulus(); } -template -inline PROTOBUF_ALWAYS_INLINE -void RuleStmt::set_rulename(ArgT0&& arg0, ArgT... args) { - - _impl_.rulename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RuleStmt.rulename) +inline void PartitionBoundSpec::set_modulus(::int32_t value) { + _internal_set_modulus(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.modulus) } -inline std::string* RuleStmt::mutable_rulename() { - std::string* _s = _internal_mutable_rulename(); - // @@protoc_insertion_point(field_mutable:pg_query.RuleStmt.rulename) - return _s; +inline ::int32_t PartitionBoundSpec::_internal_modulus() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.modulus_; } -inline const std::string& RuleStmt::_internal_rulename() const { - return _impl_.rulename_.Get(); +inline void PartitionBoundSpec::_internal_set_modulus(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.modulus_ = value; } -inline void RuleStmt::_internal_set_rulename(const std::string& value) { - - _impl_.rulename_.Set(value, GetArenaForAllocation()); + +// int32 remainder = 4 [json_name = "remainder"]; +inline void PartitionBoundSpec::clear_remainder() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.remainder_ = 0; } -inline std::string* RuleStmt::_internal_mutable_rulename() { - - return _impl_.rulename_.Mutable(GetArenaForAllocation()); +inline ::int32_t PartitionBoundSpec::remainder() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.remainder) + return _internal_remainder(); } -inline std::string* RuleStmt::release_rulename() { - // @@protoc_insertion_point(field_release:pg_query.RuleStmt.rulename) - return _impl_.rulename_.Release(); +inline void PartitionBoundSpec::set_remainder(::int32_t value) { + _internal_set_remainder(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.remainder) } -inline void RuleStmt::set_allocated_rulename(std::string* rulename) { - if (rulename != nullptr) { - - } else { - - } - _impl_.rulename_.SetAllocated(rulename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.rulename_.IsDefault()) { - _impl_.rulename_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RuleStmt.rulename) +inline ::int32_t PartitionBoundSpec::_internal_remainder() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.remainder_; } - -// .pg_query.Node where_clause = 3 [json_name = "whereClause"]; -inline bool RuleStmt::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; +inline void PartitionBoundSpec::_internal_set_remainder(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.remainder_ = value; } -inline bool RuleStmt::has_where_clause() const { - return _internal_has_where_clause(); + +// repeated .pg_query.Node listdatums = 5 [json_name = "listdatums"]; +inline int PartitionBoundSpec::_internal_listdatums_size() const { + return _internal_listdatums().size(); } -inline void RuleStmt::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline int PartitionBoundSpec::listdatums_size() const { + return _internal_listdatums_size(); } -inline const ::pg_query::Node& RuleStmt::_internal_where_clause() const { - const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void PartitionBoundSpec::clear_listdatums() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.listdatums_.Clear(); } -inline const ::pg_query::Node& RuleStmt::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.RuleStmt.where_clause) - return _internal_where_clause(); +inline ::pg_query::Node* PartitionBoundSpec::mutable_listdatums(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.PartitionBoundSpec.listdatums) + return _internal_mutable_listdatums()->Mutable(index); } -inline void RuleStmt::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); - } - _impl_.where_clause_ = where_clause; - if (where_clause) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RuleStmt.where_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* PartitionBoundSpec::mutable_listdatums() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionBoundSpec.listdatums) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_listdatums(); } -inline ::pg_query::Node* RuleStmt::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& PartitionBoundSpec::listdatums(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.listdatums) + return _internal_listdatums().Get(index); } -inline ::pg_query::Node* RuleStmt::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.RuleStmt.where_clause) - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; - return temp; +inline ::pg_query::Node* PartitionBoundSpec::add_listdatums() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_listdatums()->Add(); + // @@protoc_insertion_point(field_add:pg_query.PartitionBoundSpec.listdatums) + return _add; } -inline ::pg_query::Node* RuleStmt::_internal_mutable_where_clause() { - - if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; - } - return _impl_.where_clause_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& PartitionBoundSpec::listdatums() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.PartitionBoundSpec.listdatums) + return _internal_listdatums(); } -inline ::pg_query::Node* RuleStmt::mutable_where_clause() { - ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.RuleStmt.where_clause) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +PartitionBoundSpec::_internal_listdatums() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.listdatums_; } -inline void RuleStmt::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.where_clause_; - } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); - if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); - } - - } else { - - } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.RuleStmt.where_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +PartitionBoundSpec::_internal_mutable_listdatums() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.listdatums_; } -// .pg_query.CmdType event = 4 [json_name = "event"]; -inline void RuleStmt::clear_event() { - _impl_.event_ = 0; +// repeated .pg_query.Node lowerdatums = 6 [json_name = "lowerdatums"]; +inline int PartitionBoundSpec::_internal_lowerdatums_size() const { + return _internal_lowerdatums().size(); } -inline ::pg_query::CmdType RuleStmt::_internal_event() const { - return static_cast< ::pg_query::CmdType >(_impl_.event_); +inline int PartitionBoundSpec::lowerdatums_size() const { + return _internal_lowerdatums_size(); } -inline ::pg_query::CmdType RuleStmt::event() const { - // @@protoc_insertion_point(field_get:pg_query.RuleStmt.event) - return _internal_event(); +inline void PartitionBoundSpec::clear_lowerdatums() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.lowerdatums_.Clear(); } -inline void RuleStmt::_internal_set_event(::pg_query::CmdType value) { - - _impl_.event_ = value; +inline ::pg_query::Node* PartitionBoundSpec::mutable_lowerdatums(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.PartitionBoundSpec.lowerdatums) + return _internal_mutable_lowerdatums()->Mutable(index); } -inline void RuleStmt::set_event(::pg_query::CmdType value) { - _internal_set_event(value); - // @@protoc_insertion_point(field_set:pg_query.RuleStmt.event) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* PartitionBoundSpec::mutable_lowerdatums() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionBoundSpec.lowerdatums) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_lowerdatums(); } - -// bool instead = 5 [json_name = "instead"]; -inline void RuleStmt::clear_instead() { - _impl_.instead_ = false; +inline const ::pg_query::Node& PartitionBoundSpec::lowerdatums(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.lowerdatums) + return _internal_lowerdatums().Get(index); } -inline bool RuleStmt::_internal_instead() const { - return _impl_.instead_; +inline ::pg_query::Node* PartitionBoundSpec::add_lowerdatums() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_lowerdatums()->Add(); + // @@protoc_insertion_point(field_add:pg_query.PartitionBoundSpec.lowerdatums) + return _add; } -inline bool RuleStmt::instead() const { - // @@protoc_insertion_point(field_get:pg_query.RuleStmt.instead) - return _internal_instead(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& PartitionBoundSpec::lowerdatums() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.PartitionBoundSpec.lowerdatums) + return _internal_lowerdatums(); } -inline void RuleStmt::_internal_set_instead(bool value) { - - _impl_.instead_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +PartitionBoundSpec::_internal_lowerdatums() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.lowerdatums_; } -inline void RuleStmt::set_instead(bool value) { - _internal_set_instead(value); - // @@protoc_insertion_point(field_set:pg_query.RuleStmt.instead) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +PartitionBoundSpec::_internal_mutable_lowerdatums() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.lowerdatums_; } -// repeated .pg_query.Node actions = 6 [json_name = "actions"]; -inline int RuleStmt::_internal_actions_size() const { - return _impl_.actions_.size(); +// repeated .pg_query.Node upperdatums = 7 [json_name = "upperdatums"]; +inline int PartitionBoundSpec::_internal_upperdatums_size() const { + return _internal_upperdatums().size(); } -inline int RuleStmt::actions_size() const { - return _internal_actions_size(); +inline int PartitionBoundSpec::upperdatums_size() const { + return _internal_upperdatums_size(); } -inline void RuleStmt::clear_actions() { - _impl_.actions_.Clear(); +inline void PartitionBoundSpec::clear_upperdatums() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.upperdatums_.Clear(); } -inline ::pg_query::Node* RuleStmt::mutable_actions(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RuleStmt.actions) - return _impl_.actions_.Mutable(index); +inline ::pg_query::Node* PartitionBoundSpec::mutable_upperdatums(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.PartitionBoundSpec.upperdatums) + return _internal_mutable_upperdatums()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RuleStmt::mutable_actions() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RuleStmt.actions) - return &_impl_.actions_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* PartitionBoundSpec::mutable_upperdatums() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionBoundSpec.upperdatums) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_upperdatums(); } -inline const ::pg_query::Node& RuleStmt::_internal_actions(int index) const { - return _impl_.actions_.Get(index); +inline const ::pg_query::Node& PartitionBoundSpec::upperdatums(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.upperdatums) + return _internal_upperdatums().Get(index); } -inline const ::pg_query::Node& RuleStmt::actions(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RuleStmt.actions) - return _internal_actions(index); +inline ::pg_query::Node* PartitionBoundSpec::add_upperdatums() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_upperdatums()->Add(); + // @@protoc_insertion_point(field_add:pg_query.PartitionBoundSpec.upperdatums) + return _add; } -inline ::pg_query::Node* RuleStmt::_internal_add_actions() { - return _impl_.actions_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& PartitionBoundSpec::upperdatums() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.PartitionBoundSpec.upperdatums) + return _internal_upperdatums(); } -inline ::pg_query::Node* RuleStmt::add_actions() { - ::pg_query::Node* _add = _internal_add_actions(); - // @@protoc_insertion_point(field_add:pg_query.RuleStmt.actions) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +PartitionBoundSpec::_internal_upperdatums() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.upperdatums_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RuleStmt::actions() const { - // @@protoc_insertion_point(field_list:pg_query.RuleStmt.actions) - return _impl_.actions_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +PartitionBoundSpec::_internal_mutable_upperdatums() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.upperdatums_; } -// bool replace = 7 [json_name = "replace"]; -inline void RuleStmt::clear_replace() { - _impl_.replace_ = false; +// int32 location = 8 [json_name = "location"]; +inline void PartitionBoundSpec::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool RuleStmt::_internal_replace() const { - return _impl_.replace_; +inline ::int32_t PartitionBoundSpec::location() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.location) + return _internal_location(); } -inline bool RuleStmt::replace() const { - // @@protoc_insertion_point(field_get:pg_query.RuleStmt.replace) - return _internal_replace(); +inline void PartitionBoundSpec::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.location) } -inline void RuleStmt::_internal_set_replace(bool value) { - - _impl_.replace_ = value; +inline ::int32_t PartitionBoundSpec::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void RuleStmt::set_replace(bool value) { - _internal_set_replace(value); - // @@protoc_insertion_point(field_set:pg_query.RuleStmt.replace) +inline void PartitionBoundSpec::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// NotifyStmt +// PartitionRangeDatum -// string conditionname = 1 [json_name = "conditionname"]; -inline void NotifyStmt::clear_conditionname() { - _impl_.conditionname_.ClearToEmpty(); +// .pg_query.PartitionRangeDatumKind kind = 1 [json_name = "kind"]; +inline void PartitionRangeDatum::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; } -inline const std::string& NotifyStmt::conditionname() const { - // @@protoc_insertion_point(field_get:pg_query.NotifyStmt.conditionname) - return _internal_conditionname(); +inline ::pg_query::PartitionRangeDatumKind PartitionRangeDatum::kind() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionRangeDatum.kind) + return _internal_kind(); } -template -inline PROTOBUF_ALWAYS_INLINE -void NotifyStmt::set_conditionname(ArgT0&& arg0, ArgT... args) { - - _impl_.conditionname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.NotifyStmt.conditionname) +inline void PartitionRangeDatum::set_kind(::pg_query::PartitionRangeDatumKind value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionRangeDatum.kind) } -inline std::string* NotifyStmt::mutable_conditionname() { - std::string* _s = _internal_mutable_conditionname(); - // @@protoc_insertion_point(field_mutable:pg_query.NotifyStmt.conditionname) - return _s; +inline ::pg_query::PartitionRangeDatumKind PartitionRangeDatum::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::PartitionRangeDatumKind>(_impl_.kind_); } -inline const std::string& NotifyStmt::_internal_conditionname() const { - return _impl_.conditionname_.Get(); +inline void PartitionRangeDatum::_internal_set_kind(::pg_query::PartitionRangeDatumKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; } -inline void NotifyStmt::_internal_set_conditionname(const std::string& value) { - - _impl_.conditionname_.Set(value, GetArenaForAllocation()); + +// .pg_query.Node value = 2 [json_name = "value"]; +inline bool PartitionRangeDatum::has_value() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.value_ != nullptr); + return value; } -inline std::string* NotifyStmt::_internal_mutable_conditionname() { - - return _impl_.conditionname_.Mutable(GetArenaForAllocation()); +inline void PartitionRangeDatum::clear_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.value_ != nullptr) _impl_.value_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* NotifyStmt::release_conditionname() { - // @@protoc_insertion_point(field_release:pg_query.NotifyStmt.conditionname) - return _impl_.conditionname_.Release(); +inline const ::pg_query::Node& PartitionRangeDatum::_internal_value() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.value_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void NotifyStmt::set_allocated_conditionname(std::string* conditionname) { - if (conditionname != nullptr) { - - } else { - +inline const ::pg_query::Node& PartitionRangeDatum::value() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionRangeDatum.value) + return _internal_value(); +} +inline void PartitionRangeDatum::unsafe_arena_set_allocated_value(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.value_); } - _impl_.conditionname_.SetAllocated(conditionname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.conditionname_.IsDefault()) { - _impl_.conditionname_.Set("", GetArenaForAllocation()); + _impl_.value_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.NotifyStmt.conditionname) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PartitionRangeDatum.value) } +inline ::pg_query::Node* PartitionRangeDatum::release_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// string payload = 2 [json_name = "payload"]; -inline void NotifyStmt::clear_payload() { - _impl_.payload_.ClearToEmpty(); -} -inline const std::string& NotifyStmt::payload() const { - // @@protoc_insertion_point(field_get:pg_query.NotifyStmt.payload) - return _internal_payload(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void NotifyStmt::set_payload(ArgT0&& arg0, ArgT... args) { - - _impl_.payload_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.NotifyStmt.payload) -} -inline std::string* NotifyStmt::mutable_payload() { - std::string* _s = _internal_mutable_payload(); - // @@protoc_insertion_point(field_mutable:pg_query.NotifyStmt.payload) - return _s; -} -inline const std::string& NotifyStmt::_internal_payload() const { - return _impl_.payload_.Get(); -} -inline void NotifyStmt::_internal_set_payload(const std::string& value) { - - _impl_.payload_.Set(value, GetArenaForAllocation()); -} -inline std::string* NotifyStmt::_internal_mutable_payload() { - - return _impl_.payload_.Mutable(GetArenaForAllocation()); -} -inline std::string* NotifyStmt::release_payload() { - // @@protoc_insertion_point(field_release:pg_query.NotifyStmt.payload) - return _impl_.payload_.Release(); -} -inline void NotifyStmt::set_allocated_payload(std::string* payload) { - if (payload != nullptr) { - - } else { - + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.value_; + _impl_.value_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } - _impl_.payload_.SetAllocated(payload, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.payload_.IsDefault()) { - _impl_.payload_.Set("", GetArenaForAllocation()); +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.NotifyStmt.payload) +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* PartitionRangeDatum::unsafe_arena_release_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PartitionRangeDatum.value) -// ------------------------------------------------------------------- - -// ListenStmt - -// string conditionname = 1 [json_name = "conditionname"]; -inline void ListenStmt::clear_conditionname() { - _impl_.conditionname_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.value_; + _impl_.value_ = nullptr; + return temp; } -inline const std::string& ListenStmt::conditionname() const { - // @@protoc_insertion_point(field_get:pg_query.ListenStmt.conditionname) - return _internal_conditionname(); +inline ::pg_query::Node* PartitionRangeDatum::_internal_mutable_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.value_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.value_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.value_; } -template -inline PROTOBUF_ALWAYS_INLINE -void ListenStmt::set_conditionname(ArgT0&& arg0, ArgT... args) { - - _impl_.conditionname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ListenStmt.conditionname) +inline ::pg_query::Node* PartitionRangeDatum::mutable_value() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_value(); + // @@protoc_insertion_point(field_mutable:pg_query.PartitionRangeDatum.value) + return _msg; } -inline std::string* ListenStmt::mutable_conditionname() { - std::string* _s = _internal_mutable_conditionname(); - // @@protoc_insertion_point(field_mutable:pg_query.ListenStmt.conditionname) - return _s; +inline void PartitionRangeDatum::set_allocated_value(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.value_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.value_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionRangeDatum.value) } -inline const std::string& ListenStmt::_internal_conditionname() const { - return _impl_.conditionname_.Get(); + +// int32 location = 3 [json_name = "location"]; +inline void PartitionRangeDatum::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline void ListenStmt::_internal_set_conditionname(const std::string& value) { - - _impl_.conditionname_.Set(value, GetArenaForAllocation()); +inline ::int32_t PartitionRangeDatum::location() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionRangeDatum.location) + return _internal_location(); } -inline std::string* ListenStmt::_internal_mutable_conditionname() { - - return _impl_.conditionname_.Mutable(GetArenaForAllocation()); +inline void PartitionRangeDatum::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionRangeDatum.location) } -inline std::string* ListenStmt::release_conditionname() { - // @@protoc_insertion_point(field_release:pg_query.ListenStmt.conditionname) - return _impl_.conditionname_.Release(); +inline ::int32_t PartitionRangeDatum::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void ListenStmt::set_allocated_conditionname(std::string* conditionname) { - if (conditionname != nullptr) { - - } else { - - } - _impl_.conditionname_.SetAllocated(conditionname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.conditionname_.IsDefault()) { - _impl_.conditionname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ListenStmt.conditionname) +inline void PartitionRangeDatum::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// UnlistenStmt +// PartitionCmd -// string conditionname = 1 [json_name = "conditionname"]; -inline void UnlistenStmt::clear_conditionname() { - _impl_.conditionname_.ClearToEmpty(); -} -inline const std::string& UnlistenStmt::conditionname() const { - // @@protoc_insertion_point(field_get:pg_query.UnlistenStmt.conditionname) - return _internal_conditionname(); +// .pg_query.RangeVar name = 1 [json_name = "name"]; +inline bool PartitionCmd::has_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.name_ != nullptr); + return value; } -template -inline PROTOBUF_ALWAYS_INLINE -void UnlistenStmt::set_conditionname(ArgT0&& arg0, ArgT... args) { - - _impl_.conditionname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.UnlistenStmt.conditionname) +inline void PartitionCmd::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.name_ != nullptr) _impl_.name_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* UnlistenStmt::mutable_conditionname() { - std::string* _s = _internal_mutable_conditionname(); - // @@protoc_insertion_point(field_mutable:pg_query.UnlistenStmt.conditionname) - return _s; +inline const ::pg_query::RangeVar& PartitionCmd::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.name_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const std::string& UnlistenStmt::_internal_conditionname() const { - return _impl_.conditionname_.Get(); +inline const ::pg_query::RangeVar& PartitionCmd::name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionCmd.name) + return _internal_name(); } -inline void UnlistenStmt::_internal_set_conditionname(const std::string& value) { - - _impl_.conditionname_.Set(value, GetArenaForAllocation()); +inline void PartitionCmd::unsafe_arena_set_allocated_name(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.name_); + } + _impl_.name_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PartitionCmd.name) } -inline std::string* UnlistenStmt::_internal_mutable_conditionname() { - - return _impl_.conditionname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::RangeVar* PartitionCmd::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.name_; + _impl_.name_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* UnlistenStmt::release_conditionname() { - // @@protoc_insertion_point(field_release:pg_query.UnlistenStmt.conditionname) - return _impl_.conditionname_.Release(); +inline ::pg_query::RangeVar* PartitionCmd::unsafe_arena_release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PartitionCmd.name) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.name_; + _impl_.name_ = nullptr; + return temp; } -inline void UnlistenStmt::set_allocated_conditionname(std::string* conditionname) { - if (conditionname != nullptr) { - - } else { - - } - _impl_.conditionname_.SetAllocated(conditionname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.conditionname_.IsDefault()) { - _impl_.conditionname_.Set("", GetArenaForAllocation()); +inline ::pg_query::RangeVar* PartitionCmd::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.name_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.name_ = reinterpret_cast<::pg_query::RangeVar*>(p); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.UnlistenStmt.conditionname) + return _impl_.name_; +} +inline ::pg_query::RangeVar* PartitionCmd::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.PartitionCmd.name) + return _msg; } +inline void PartitionCmd::set_allocated_name(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.name_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// TransactionStmt + _impl_.name_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionCmd.name) +} -// .pg_query.TransactionStmtKind kind = 1 [json_name = "kind"]; -inline void TransactionStmt::clear_kind() { - _impl_.kind_ = 0; +// .pg_query.PartitionBoundSpec bound = 2 [json_name = "bound"]; +inline bool PartitionCmd::has_bound() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.bound_ != nullptr); + return value; } -inline ::pg_query::TransactionStmtKind TransactionStmt::_internal_kind() const { - return static_cast< ::pg_query::TransactionStmtKind >(_impl_.kind_); +inline void PartitionCmd::clear_bound() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.bound_ != nullptr) _impl_.bound_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::TransactionStmtKind TransactionStmt::kind() const { - // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.kind) - return _internal_kind(); +inline const ::pg_query::PartitionBoundSpec& PartitionCmd::_internal_bound() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::PartitionBoundSpec* p = _impl_.bound_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_PartitionBoundSpec_default_instance_); } -inline void TransactionStmt::_internal_set_kind(::pg_query::TransactionStmtKind value) { - - _impl_.kind_ = value; +inline const ::pg_query::PartitionBoundSpec& PartitionCmd::bound() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PartitionCmd.bound) + return _internal_bound(); } -inline void TransactionStmt::set_kind(::pg_query::TransactionStmtKind value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.TransactionStmt.kind) +inline void PartitionCmd::unsafe_arena_set_allocated_bound(::pg_query::PartitionBoundSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.bound_); + } + _impl_.bound_ = reinterpret_cast<::pg_query::PartitionBoundSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PartitionCmd.bound) } +inline ::pg_query::PartitionBoundSpec* PartitionCmd::release_bound() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int TransactionStmt::_internal_options_size() const { - return _impl_.options_.size(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::PartitionBoundSpec* released = _impl_.bound_; + _impl_.bound_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int TransactionStmt::options_size() const { - return _internal_options_size(); +inline ::pg_query::PartitionBoundSpec* PartitionCmd::unsafe_arena_release_bound() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PartitionCmd.bound) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::PartitionBoundSpec* temp = _impl_.bound_; + _impl_.bound_ = nullptr; + return temp; } -inline void TransactionStmt::clear_options() { - _impl_.options_.Clear(); +inline ::pg_query::PartitionBoundSpec* PartitionCmd::_internal_mutable_bound() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.bound_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::PartitionBoundSpec>(GetArena()); + _impl_.bound_ = reinterpret_cast<::pg_query::PartitionBoundSpec*>(p); + } + return _impl_.bound_; } -inline ::pg_query::Node* TransactionStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TransactionStmt.options) - return _impl_.options_.Mutable(index); +inline ::pg_query::PartitionBoundSpec* PartitionCmd::mutable_bound() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PartitionBoundSpec* _msg = _internal_mutable_bound(); + // @@protoc_insertion_point(field_mutable:pg_query.PartitionCmd.bound) + return _msg; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TransactionStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TransactionStmt.options) - return &_impl_.options_; +inline void PartitionCmd::set_allocated_bound(::pg_query::PartitionBoundSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::PartitionBoundSpec*>(_impl_.bound_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::PartitionBoundSpec*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.bound_ = reinterpret_cast<::pg_query::PartitionBoundSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionCmd.bound) } -inline const ::pg_query::Node& TransactionStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// bool concurrent = 3 [json_name = "concurrent"]; +inline void PartitionCmd::clear_concurrent() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.concurrent_ = false; } -inline const ::pg_query::Node& TransactionStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.options) - return _internal_options(index); +inline bool PartitionCmd::concurrent() const { + // @@protoc_insertion_point(field_get:pg_query.PartitionCmd.concurrent) + return _internal_concurrent(); } -inline ::pg_query::Node* TransactionStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void PartitionCmd::set_concurrent(bool value) { + _internal_set_concurrent(value); + // @@protoc_insertion_point(field_set:pg_query.PartitionCmd.concurrent) } -inline ::pg_query::Node* TransactionStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.TransactionStmt.options) - return _add; +inline bool PartitionCmd::_internal_concurrent() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.concurrent_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TransactionStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.TransactionStmt.options) - return _impl_.options_; +inline void PartitionCmd::_internal_set_concurrent(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.concurrent_ = value; } -// string savepoint_name = 3 [json_name = "savepoint_name"]; -inline void TransactionStmt::clear_savepoint_name() { - _impl_.savepoint_name_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// RangeTblEntry + +// .pg_query.RTEKind rtekind = 1 [json_name = "rtekind"]; +inline void RangeTblEntry::clear_rtekind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rtekind_ = 0; } -inline const std::string& TransactionStmt::savepoint_name() const { - // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.savepoint_name) - return _internal_savepoint_name(); +inline ::pg_query::RTEKind RangeTblEntry::rtekind() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.rtekind) + return _internal_rtekind(); } -template -inline PROTOBUF_ALWAYS_INLINE -void TransactionStmt::set_savepoint_name(ArgT0&& arg0, ArgT... args) { - - _impl_.savepoint_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.TransactionStmt.savepoint_name) +inline void RangeTblEntry::set_rtekind(::pg_query::RTEKind value) { + _internal_set_rtekind(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.rtekind) } -inline std::string* TransactionStmt::mutable_savepoint_name() { - std::string* _s = _internal_mutable_savepoint_name(); - // @@protoc_insertion_point(field_mutable:pg_query.TransactionStmt.savepoint_name) - return _s; +inline ::pg_query::RTEKind RangeTblEntry::_internal_rtekind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::RTEKind>(_impl_.rtekind_); } -inline const std::string& TransactionStmt::_internal_savepoint_name() const { - return _impl_.savepoint_name_.Get(); +inline void RangeTblEntry::_internal_set_rtekind(::pg_query::RTEKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rtekind_ = value; } -inline void TransactionStmt::_internal_set_savepoint_name(const std::string& value) { - - _impl_.savepoint_name_.Set(value, GetArenaForAllocation()); + +// uint32 relid = 2 [json_name = "relid"]; +inline void RangeTblEntry::clear_relid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relid_ = 0u; } -inline std::string* TransactionStmt::_internal_mutable_savepoint_name() { - - return _impl_.savepoint_name_.Mutable(GetArenaForAllocation()); +inline ::uint32_t RangeTblEntry::relid() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.relid) + return _internal_relid(); } -inline std::string* TransactionStmt::release_savepoint_name() { - // @@protoc_insertion_point(field_release:pg_query.TransactionStmt.savepoint_name) - return _impl_.savepoint_name_.Release(); +inline void RangeTblEntry::set_relid(::uint32_t value) { + _internal_set_relid(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.relid) } -inline void TransactionStmt::set_allocated_savepoint_name(std::string* savepoint_name) { - if (savepoint_name != nullptr) { - - } else { - - } - _impl_.savepoint_name_.SetAllocated(savepoint_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.savepoint_name_.IsDefault()) { - _impl_.savepoint_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.TransactionStmt.savepoint_name) +inline ::uint32_t RangeTblEntry::_internal_relid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relid_; +} +inline void RangeTblEntry::_internal_set_relid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relid_ = value; } -// string gid = 4 [json_name = "gid"]; -inline void TransactionStmt::clear_gid() { - _impl_.gid_.ClearToEmpty(); +// string relkind = 3 [json_name = "relkind"]; +inline void RangeTblEntry::clear_relkind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relkind_.ClearToEmpty(); } -inline const std::string& TransactionStmt::gid() const { - // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.gid) - return _internal_gid(); +inline const std::string& RangeTblEntry::relkind() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.relkind) + return _internal_relkind(); } -template -inline PROTOBUF_ALWAYS_INLINE -void TransactionStmt::set_gid(ArgT0&& arg0, ArgT... args) { - - _impl_.gid_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.TransactionStmt.gid) +template +inline PROTOBUF_ALWAYS_INLINE void RangeTblEntry::set_relkind(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relkind_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.relkind) } -inline std::string* TransactionStmt::mutable_gid() { - std::string* _s = _internal_mutable_gid(); - // @@protoc_insertion_point(field_mutable:pg_query.TransactionStmt.gid) +inline std::string* RangeTblEntry::mutable_relkind() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_relkind(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.relkind) return _s; } -inline const std::string& TransactionStmt::_internal_gid() const { - return _impl_.gid_.Get(); +inline const std::string& RangeTblEntry::_internal_relkind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relkind_.Get(); } -inline void TransactionStmt::_internal_set_gid(const std::string& value) { - - _impl_.gid_.Set(value, GetArenaForAllocation()); +inline void RangeTblEntry::_internal_set_relkind(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relkind_.Set(value, GetArena()); } -inline std::string* TransactionStmt::_internal_mutable_gid() { - - return _impl_.gid_.Mutable(GetArenaForAllocation()); +inline std::string* RangeTblEntry::_internal_mutable_relkind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.relkind_.Mutable( GetArena()); } -inline std::string* TransactionStmt::release_gid() { - // @@protoc_insertion_point(field_release:pg_query.TransactionStmt.gid) - return _impl_.gid_.Release(); +inline std::string* RangeTblEntry::release_relkind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.relkind) + return _impl_.relkind_.Release(); } -inline void TransactionStmt::set_allocated_gid(std::string* gid) { - if (gid != nullptr) { - - } else { - - } - _impl_.gid_.SetAllocated(gid, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.gid_.IsDefault()) { - _impl_.gid_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.TransactionStmt.gid) +inline void RangeTblEntry::set_allocated_relkind(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relkind_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.relkind_.IsDefault()) { + _impl_.relkind_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.relkind) } -// bool chain = 5 [json_name = "chain"]; -inline void TransactionStmt::clear_chain() { - _impl_.chain_ = false; +// int32 rellockmode = 4 [json_name = "rellockmode"]; +inline void RangeTblEntry::clear_rellockmode() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rellockmode_ = 0; } -inline bool TransactionStmt::_internal_chain() const { - return _impl_.chain_; +inline ::int32_t RangeTblEntry::rellockmode() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.rellockmode) + return _internal_rellockmode(); } -inline bool TransactionStmt::chain() const { - // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.chain) - return _internal_chain(); +inline void RangeTblEntry::set_rellockmode(::int32_t value) { + _internal_set_rellockmode(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.rellockmode) } -inline void TransactionStmt::_internal_set_chain(bool value) { - - _impl_.chain_ = value; +inline ::int32_t RangeTblEntry::_internal_rellockmode() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rellockmode_; } -inline void TransactionStmt::set_chain(bool value) { - _internal_set_chain(value); - // @@protoc_insertion_point(field_set:pg_query.TransactionStmt.chain) +inline void RangeTblEntry::_internal_set_rellockmode(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rellockmode_ = value; } -// ------------------------------------------------------------------- - -// ViewStmt - -// .pg_query.RangeVar view = 1 [json_name = "view"]; -inline bool ViewStmt::_internal_has_view() const { - return this != internal_default_instance() && _impl_.view_ != nullptr; -} -inline bool ViewStmt::has_view() const { - return _internal_has_view(); +// .pg_query.TableSampleClause tablesample = 5 [json_name = "tablesample"]; +inline bool RangeTblEntry::has_tablesample() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.tablesample_ != nullptr); + return value; } -inline void ViewStmt::clear_view() { - if (GetArenaForAllocation() == nullptr && _impl_.view_ != nullptr) { - delete _impl_.view_; - } - _impl_.view_ = nullptr; +inline void RangeTblEntry::clear_tablesample() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.tablesample_ != nullptr) _impl_.tablesample_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RangeVar& ViewStmt::_internal_view() const { - const ::pg_query::RangeVar* p = _impl_.view_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::TableSampleClause& RangeTblEntry::_internal_tablesample() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TableSampleClause* p = _impl_.tablesample_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TableSampleClause_default_instance_); } -inline const ::pg_query::RangeVar& ViewStmt::view() const { - // @@protoc_insertion_point(field_get:pg_query.ViewStmt.view) - return _internal_view(); +inline const ::pg_query::TableSampleClause& RangeTblEntry::tablesample() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.tablesample) + return _internal_tablesample(); } -inline void ViewStmt::unsafe_arena_set_allocated_view( - ::pg_query::RangeVar* view) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.view_); +inline void RangeTblEntry::unsafe_arena_set_allocated_tablesample(::pg_query::TableSampleClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.tablesample_); } - _impl_.view_ = view; - if (view) { - + _impl_.tablesample_ = reinterpret_cast<::pg_query::TableSampleClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ViewStmt.view) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.tablesample) } -inline ::pg_query::RangeVar* ViewStmt::release_view() { - - ::pg_query::RangeVar* temp = _impl_.view_; - _impl_.view_ = nullptr; +inline ::pg_query::TableSampleClause* RangeTblEntry::release_tablesample() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TableSampleClause* released = _impl_.tablesample_; + _impl_.tablesample_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* ViewStmt::unsafe_arena_release_view() { - // @@protoc_insertion_point(field_release:pg_query.ViewStmt.view) - - ::pg_query::RangeVar* temp = _impl_.view_; - _impl_.view_ = nullptr; +inline ::pg_query::TableSampleClause* RangeTblEntry::unsafe_arena_release_tablesample() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.tablesample) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TableSampleClause* temp = _impl_.tablesample_; + _impl_.tablesample_ = nullptr; return temp; } -inline ::pg_query::RangeVar* ViewStmt::_internal_mutable_view() { - - if (_impl_.view_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.view_ = p; +inline ::pg_query::TableSampleClause* RangeTblEntry::_internal_mutable_tablesample() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.tablesample_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TableSampleClause>(GetArena()); + _impl_.tablesample_ = reinterpret_cast<::pg_query::TableSampleClause*>(p); } - return _impl_.view_; + return _impl_.tablesample_; } -inline ::pg_query::RangeVar* ViewStmt::mutable_view() { - ::pg_query::RangeVar* _msg = _internal_mutable_view(); - // @@protoc_insertion_point(field_mutable:pg_query.ViewStmt.view) +inline ::pg_query::TableSampleClause* RangeTblEntry::mutable_tablesample() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TableSampleClause* _msg = _internal_mutable_tablesample(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.tablesample) return _msg; } -inline void ViewStmt::set_allocated_view(::pg_query::RangeVar* view) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeTblEntry::set_allocated_tablesample(::pg_query::TableSampleClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.view_; + delete reinterpret_cast<::pg_query::TableSampleClause*>(_impl_.tablesample_); } - if (view) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(view); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TableSampleClause*>(value)->GetArena(); if (message_arena != submessage_arena) { - view = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, view, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.view_ = view; - // @@protoc_insertion_point(field_set_allocated:pg_query.ViewStmt.view) -} -// repeated .pg_query.Node aliases = 2 [json_name = "aliases"]; -inline int ViewStmt::_internal_aliases_size() const { - return _impl_.aliases_.size(); -} -inline int ViewStmt::aliases_size() const { - return _internal_aliases_size(); -} -inline void ViewStmt::clear_aliases() { - _impl_.aliases_.Clear(); -} -inline ::pg_query::Node* ViewStmt::mutable_aliases(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ViewStmt.aliases) - return _impl_.aliases_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ViewStmt::mutable_aliases() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ViewStmt.aliases) - return &_impl_.aliases_; + _impl_.tablesample_ = reinterpret_cast<::pg_query::TableSampleClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.tablesample) } -inline const ::pg_query::Node& ViewStmt::_internal_aliases(int index) const { - return _impl_.aliases_.Get(index); + +// uint32 perminfoindex = 6 [json_name = "perminfoindex"]; +inline void RangeTblEntry::clear_perminfoindex() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.perminfoindex_ = 0u; } -inline const ::pg_query::Node& ViewStmt::aliases(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ViewStmt.aliases) - return _internal_aliases(index); +inline ::uint32_t RangeTblEntry::perminfoindex() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.perminfoindex) + return _internal_perminfoindex(); } -inline ::pg_query::Node* ViewStmt::_internal_add_aliases() { - return _impl_.aliases_.Add(); +inline void RangeTblEntry::set_perminfoindex(::uint32_t value) { + _internal_set_perminfoindex(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.perminfoindex) } -inline ::pg_query::Node* ViewStmt::add_aliases() { - ::pg_query::Node* _add = _internal_add_aliases(); - // @@protoc_insertion_point(field_add:pg_query.ViewStmt.aliases) - return _add; +inline ::uint32_t RangeTblEntry::_internal_perminfoindex() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.perminfoindex_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ViewStmt::aliases() const { - // @@protoc_insertion_point(field_list:pg_query.ViewStmt.aliases) - return _impl_.aliases_; +inline void RangeTblEntry::_internal_set_perminfoindex(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.perminfoindex_ = value; } -// .pg_query.Node query = 3 [json_name = "query"]; -inline bool ViewStmt::_internal_has_query() const { - return this != internal_default_instance() && _impl_.query_ != nullptr; -} -inline bool ViewStmt::has_query() const { - return _internal_has_query(); +// .pg_query.Query subquery = 7 [json_name = "subquery"]; +inline bool RangeTblEntry::has_subquery() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.subquery_ != nullptr); + return value; } -inline void ViewStmt::clear_query() { - if (GetArenaForAllocation() == nullptr && _impl_.query_ != nullptr) { - delete _impl_.query_; - } - _impl_.query_ = nullptr; +inline void RangeTblEntry::clear_subquery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.subquery_ != nullptr) _impl_.subquery_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& ViewStmt::_internal_query() const { - const ::pg_query::Node* p = _impl_.query_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Query& RangeTblEntry::_internal_subquery() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Query* p = _impl_.subquery_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Query_default_instance_); } -inline const ::pg_query::Node& ViewStmt::query() const { - // @@protoc_insertion_point(field_get:pg_query.ViewStmt.query) - return _internal_query(); +inline const ::pg_query::Query& RangeTblEntry::subquery() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.subquery) + return _internal_subquery(); } -inline void ViewStmt::unsafe_arena_set_allocated_query( - ::pg_query::Node* query) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.query_); +inline void RangeTblEntry::unsafe_arena_set_allocated_subquery(::pg_query::Query* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.subquery_); } - _impl_.query_ = query; - if (query) { - + _impl_.subquery_ = reinterpret_cast<::pg_query::Query*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ViewStmt.query) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.subquery) } -inline ::pg_query::Node* ViewStmt::release_query() { - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::Query* RangeTblEntry::release_subquery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Query* released = _impl_.subquery_; + _impl_.subquery_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* ViewStmt::unsafe_arena_release_query() { - // @@protoc_insertion_point(field_release:pg_query.ViewStmt.query) - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::Query* RangeTblEntry::unsafe_arena_release_subquery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.subquery) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Query* temp = _impl_.subquery_; + _impl_.subquery_ = nullptr; return temp; } -inline ::pg_query::Node* ViewStmt::_internal_mutable_query() { - - if (_impl_.query_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.query_ = p; +inline ::pg_query::Query* RangeTblEntry::_internal_mutable_subquery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.subquery_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Query>(GetArena()); + _impl_.subquery_ = reinterpret_cast<::pg_query::Query*>(p); } - return _impl_.query_; + return _impl_.subquery_; } -inline ::pg_query::Node* ViewStmt::mutable_query() { - ::pg_query::Node* _msg = _internal_mutable_query(); - // @@protoc_insertion_point(field_mutable:pg_query.ViewStmt.query) +inline ::pg_query::Query* RangeTblEntry::mutable_subquery() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Query* _msg = _internal_mutable_subquery(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.subquery) return _msg; } -inline void ViewStmt::set_allocated_query(::pg_query::Node* query) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeTblEntry::set_allocated_subquery(::pg_query::Query* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.query_; + delete reinterpret_cast<::pg_query::Query*>(_impl_.subquery_); } - if (query) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(query); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Query*>(value)->GetArena(); if (message_arena != submessage_arena) { - query = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, query, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.query_ = query; - // @@protoc_insertion_point(field_set_allocated:pg_query.ViewStmt.query) -} -// bool replace = 4 [json_name = "replace"]; -inline void ViewStmt::clear_replace() { - _impl_.replace_ = false; -} -inline bool ViewStmt::_internal_replace() const { - return _impl_.replace_; -} -inline bool ViewStmt::replace() const { - // @@protoc_insertion_point(field_get:pg_query.ViewStmt.replace) - return _internal_replace(); -} -inline void ViewStmt::_internal_set_replace(bool value) { - - _impl_.replace_ = value; -} -inline void ViewStmt::set_replace(bool value) { - _internal_set_replace(value); - // @@protoc_insertion_point(field_set:pg_query.ViewStmt.replace) + _impl_.subquery_ = reinterpret_cast<::pg_query::Query*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.subquery) } -// repeated .pg_query.Node options = 5 [json_name = "options"]; -inline int ViewStmt::_internal_options_size() const { - return _impl_.options_.size(); +// bool security_barrier = 8 [json_name = "security_barrier"]; +inline void RangeTblEntry::clear_security_barrier() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.security_barrier_ = false; } -inline int ViewStmt::options_size() const { - return _internal_options_size(); +inline bool RangeTblEntry::security_barrier() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.security_barrier) + return _internal_security_barrier(); } -inline void ViewStmt::clear_options() { - _impl_.options_.Clear(); +inline void RangeTblEntry::set_security_barrier(bool value) { + _internal_set_security_barrier(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.security_barrier) } -inline ::pg_query::Node* ViewStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ViewStmt.options) - return _impl_.options_.Mutable(index); +inline bool RangeTblEntry::_internal_security_barrier() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.security_barrier_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ViewStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ViewStmt.options) - return &_impl_.options_; +inline void RangeTblEntry::_internal_set_security_barrier(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.security_barrier_ = value; } -inline const ::pg_query::Node& ViewStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// .pg_query.JoinType jointype = 9 [json_name = "jointype"]; +inline void RangeTblEntry::clear_jointype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.jointype_ = 0; } -inline const ::pg_query::Node& ViewStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ViewStmt.options) - return _internal_options(index); +inline ::pg_query::JoinType RangeTblEntry::jointype() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.jointype) + return _internal_jointype(); } -inline ::pg_query::Node* ViewStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void RangeTblEntry::set_jointype(::pg_query::JoinType value) { + _internal_set_jointype(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.jointype) } -inline ::pg_query::Node* ViewStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.ViewStmt.options) - return _add; +inline ::pg_query::JoinType RangeTblEntry::_internal_jointype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::JoinType>(_impl_.jointype_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ViewStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.ViewStmt.options) - return _impl_.options_; +inline void RangeTblEntry::_internal_set_jointype(::pg_query::JoinType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.jointype_ = value; } -// .pg_query.ViewCheckOption with_check_option = 6 [json_name = "withCheckOption"]; -inline void ViewStmt::clear_with_check_option() { - _impl_.with_check_option_ = 0; +// int32 joinmergedcols = 10 [json_name = "joinmergedcols"]; +inline void RangeTblEntry::clear_joinmergedcols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.joinmergedcols_ = 0; } -inline ::pg_query::ViewCheckOption ViewStmt::_internal_with_check_option() const { - return static_cast< ::pg_query::ViewCheckOption >(_impl_.with_check_option_); +inline ::int32_t RangeTblEntry::joinmergedcols() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.joinmergedcols) + return _internal_joinmergedcols(); } -inline ::pg_query::ViewCheckOption ViewStmt::with_check_option() const { - // @@protoc_insertion_point(field_get:pg_query.ViewStmt.with_check_option) - return _internal_with_check_option(); +inline void RangeTblEntry::set_joinmergedcols(::int32_t value) { + _internal_set_joinmergedcols(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.joinmergedcols) } -inline void ViewStmt::_internal_set_with_check_option(::pg_query::ViewCheckOption value) { - - _impl_.with_check_option_ = value; +inline ::int32_t RangeTblEntry::_internal_joinmergedcols() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.joinmergedcols_; } -inline void ViewStmt::set_with_check_option(::pg_query::ViewCheckOption value) { - _internal_set_with_check_option(value); - // @@protoc_insertion_point(field_set:pg_query.ViewStmt.with_check_option) +inline void RangeTblEntry::_internal_set_joinmergedcols(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.joinmergedcols_ = value; } -// ------------------------------------------------------------------- - -// LoadStmt - -// string filename = 1 [json_name = "filename"]; -inline void LoadStmt::clear_filename() { - _impl_.filename_.ClearToEmpty(); -} -inline const std::string& LoadStmt::filename() const { - // @@protoc_insertion_point(field_get:pg_query.LoadStmt.filename) - return _internal_filename(); +// repeated .pg_query.Node joinaliasvars = 11 [json_name = "joinaliasvars"]; +inline int RangeTblEntry::_internal_joinaliasvars_size() const { + return _internal_joinaliasvars().size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void LoadStmt::set_filename(ArgT0&& arg0, ArgT... args) { - - _impl_.filename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.LoadStmt.filename) +inline int RangeTblEntry::joinaliasvars_size() const { + return _internal_joinaliasvars_size(); } -inline std::string* LoadStmt::mutable_filename() { - std::string* _s = _internal_mutable_filename(); - // @@protoc_insertion_point(field_mutable:pg_query.LoadStmt.filename) - return _s; +inline void RangeTblEntry::clear_joinaliasvars() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.joinaliasvars_.Clear(); } -inline const std::string& LoadStmt::_internal_filename() const { - return _impl_.filename_.Get(); +inline ::pg_query::Node* RangeTblEntry::mutable_joinaliasvars(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.joinaliasvars) + return _internal_mutable_joinaliasvars()->Mutable(index); } -inline void LoadStmt::_internal_set_filename(const std::string& value) { - - _impl_.filename_.Set(value, GetArenaForAllocation()); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblEntry::mutable_joinaliasvars() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.joinaliasvars) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_joinaliasvars(); } -inline std::string* LoadStmt::_internal_mutable_filename() { - - return _impl_.filename_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Node& RangeTblEntry::joinaliasvars(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.joinaliasvars) + return _internal_joinaliasvars().Get(index); } -inline std::string* LoadStmt::release_filename() { - // @@protoc_insertion_point(field_release:pg_query.LoadStmt.filename) - return _impl_.filename_.Release(); +inline ::pg_query::Node* RangeTblEntry::add_joinaliasvars() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_joinaliasvars()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.joinaliasvars) + return _add; } -inline void LoadStmt::set_allocated_filename(std::string* filename) { - if (filename != nullptr) { - - } else { - - } - _impl_.filename_.SetAllocated(filename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.filename_.IsDefault()) { - _impl_.filename_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.LoadStmt.filename) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblEntry::joinaliasvars() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.joinaliasvars) + return _internal_joinaliasvars(); } - -// ------------------------------------------------------------------- - -// CreateDomainStmt - -// repeated .pg_query.Node domainname = 1 [json_name = "domainname"]; -inline int CreateDomainStmt::_internal_domainname_size() const { - return _impl_.domainname_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblEntry::_internal_joinaliasvars() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.joinaliasvars_; } -inline int CreateDomainStmt::domainname_size() const { - return _internal_domainname_size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblEntry::_internal_mutable_joinaliasvars() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.joinaliasvars_; } -inline void CreateDomainStmt::clear_domainname() { - _impl_.domainname_.Clear(); + +// repeated .pg_query.Node joinleftcols = 12 [json_name = "joinleftcols"]; +inline int RangeTblEntry::_internal_joinleftcols_size() const { + return _internal_joinleftcols().size(); } -inline ::pg_query::Node* CreateDomainStmt::mutable_domainname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateDomainStmt.domainname) - return _impl_.domainname_.Mutable(index); +inline int RangeTblEntry::joinleftcols_size() const { + return _internal_joinleftcols_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateDomainStmt::mutable_domainname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateDomainStmt.domainname) - return &_impl_.domainname_; +inline void RangeTblEntry::clear_joinleftcols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.joinleftcols_.Clear(); } -inline const ::pg_query::Node& CreateDomainStmt::_internal_domainname(int index) const { - return _impl_.domainname_.Get(index); +inline ::pg_query::Node* RangeTblEntry::mutable_joinleftcols(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.joinleftcols) + return _internal_mutable_joinleftcols()->Mutable(index); } -inline const ::pg_query::Node& CreateDomainStmt::domainname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateDomainStmt.domainname) - return _internal_domainname(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblEntry::mutable_joinleftcols() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.joinleftcols) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_joinleftcols(); } -inline ::pg_query::Node* CreateDomainStmt::_internal_add_domainname() { - return _impl_.domainname_.Add(); +inline const ::pg_query::Node& RangeTblEntry::joinleftcols(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.joinleftcols) + return _internal_joinleftcols().Get(index); } -inline ::pg_query::Node* CreateDomainStmt::add_domainname() { - ::pg_query::Node* _add = _internal_add_domainname(); - // @@protoc_insertion_point(field_add:pg_query.CreateDomainStmt.domainname) +inline ::pg_query::Node* RangeTblEntry::add_joinleftcols() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_joinleftcols()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.joinleftcols) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateDomainStmt::domainname() const { - // @@protoc_insertion_point(field_list:pg_query.CreateDomainStmt.domainname) - return _impl_.domainname_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblEntry::joinleftcols() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.joinleftcols) + return _internal_joinleftcols(); } - -// .pg_query.TypeName type_name = 2 [json_name = "typeName"]; -inline bool CreateDomainStmt::_internal_has_type_name() const { - return this != internal_default_instance() && _impl_.type_name_ != nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblEntry::_internal_joinleftcols() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.joinleftcols_; } -inline bool CreateDomainStmt::has_type_name() const { - return _internal_has_type_name(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblEntry::_internal_mutable_joinleftcols() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.joinleftcols_; } -inline void CreateDomainStmt::clear_type_name() { - if (GetArenaForAllocation() == nullptr && _impl_.type_name_ != nullptr) { - delete _impl_.type_name_; - } - _impl_.type_name_ = nullptr; + +// repeated .pg_query.Node joinrightcols = 13 [json_name = "joinrightcols"]; +inline int RangeTblEntry::_internal_joinrightcols_size() const { + return _internal_joinrightcols().size(); } -inline const ::pg_query::TypeName& CreateDomainStmt::_internal_type_name() const { - const ::pg_query::TypeName* p = _impl_.type_name_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline int RangeTblEntry::joinrightcols_size() const { + return _internal_joinrightcols_size(); } -inline const ::pg_query::TypeName& CreateDomainStmt::type_name() const { - // @@protoc_insertion_point(field_get:pg_query.CreateDomainStmt.type_name) - return _internal_type_name(); +inline void RangeTblEntry::clear_joinrightcols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.joinrightcols_.Clear(); } -inline void CreateDomainStmt::unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.type_name_); - } - _impl_.type_name_ = type_name; - if (type_name) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateDomainStmt.type_name) +inline ::pg_query::Node* RangeTblEntry::mutable_joinrightcols(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.joinrightcols) + return _internal_mutable_joinrightcols()->Mutable(index); } -inline ::pg_query::TypeName* CreateDomainStmt::release_type_name() { - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblEntry::mutable_joinrightcols() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.joinrightcols) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_joinrightcols(); } -inline ::pg_query::TypeName* CreateDomainStmt::unsafe_arena_release_type_name() { - // @@protoc_insertion_point(field_release:pg_query.CreateDomainStmt.type_name) - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; - return temp; +inline const ::pg_query::Node& RangeTblEntry::joinrightcols(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.joinrightcols) + return _internal_joinrightcols().Get(index); } -inline ::pg_query::TypeName* CreateDomainStmt::_internal_mutable_type_name() { - - if (_impl_.type_name_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.type_name_ = p; - } - return _impl_.type_name_; +inline ::pg_query::Node* RangeTblEntry::add_joinrightcols() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_joinrightcols()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.joinrightcols) + return _add; } -inline ::pg_query::TypeName* CreateDomainStmt::mutable_type_name() { - ::pg_query::TypeName* _msg = _internal_mutable_type_name(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateDomainStmt.type_name) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblEntry::joinrightcols() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.joinrightcols) + return _internal_joinrightcols(); } -inline void CreateDomainStmt::set_allocated_type_name(::pg_query::TypeName* type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.type_name_; - } - if (type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(type_name); - if (message_arena != submessage_arena) { - type_name = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, type_name, submessage_arena); - } - - } else { - - } - _impl_.type_name_ = type_name; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateDomainStmt.type_name) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblEntry::_internal_joinrightcols() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.joinrightcols_; } - -// .pg_query.CollateClause coll_clause = 3 [json_name = "collClause"]; -inline bool CreateDomainStmt::_internal_has_coll_clause() const { - return this != internal_default_instance() && _impl_.coll_clause_ != nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblEntry::_internal_mutable_joinrightcols() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.joinrightcols_; } -inline bool CreateDomainStmt::has_coll_clause() const { - return _internal_has_coll_clause(); + +// .pg_query.Alias join_using_alias = 14 [json_name = "join_using_alias"]; +inline bool RangeTblEntry::has_join_using_alias() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.join_using_alias_ != nullptr); + return value; } -inline void CreateDomainStmt::clear_coll_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.coll_clause_ != nullptr) { - delete _impl_.coll_clause_; - } - _impl_.coll_clause_ = nullptr; +inline void RangeTblEntry::clear_join_using_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.join_using_alias_ != nullptr) _impl_.join_using_alias_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline const ::pg_query::CollateClause& CreateDomainStmt::_internal_coll_clause() const { - const ::pg_query::CollateClause* p = _impl_.coll_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_CollateClause_default_instance_); +inline const ::pg_query::Alias& RangeTblEntry::_internal_join_using_alias() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Alias* p = _impl_.join_using_alias_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Alias_default_instance_); } -inline const ::pg_query::CollateClause& CreateDomainStmt::coll_clause() const { - // @@protoc_insertion_point(field_get:pg_query.CreateDomainStmt.coll_clause) - return _internal_coll_clause(); +inline const ::pg_query::Alias& RangeTblEntry::join_using_alias() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.join_using_alias) + return _internal_join_using_alias(); } -inline void CreateDomainStmt::unsafe_arena_set_allocated_coll_clause( - ::pg_query::CollateClause* coll_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.coll_clause_); +inline void RangeTblEntry::unsafe_arena_set_allocated_join_using_alias(::pg_query::Alias* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.join_using_alias_); } - _impl_.coll_clause_ = coll_clause; - if (coll_clause) { - + _impl_.join_using_alias_ = reinterpret_cast<::pg_query::Alias*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateDomainStmt.coll_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.join_using_alias) } -inline ::pg_query::CollateClause* CreateDomainStmt::release_coll_clause() { - - ::pg_query::CollateClause* temp = _impl_.coll_clause_; - _impl_.coll_clause_ = nullptr; +inline ::pg_query::Alias* RangeTblEntry::release_join_using_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Alias* released = _impl_.join_using_alias_; + _impl_.join_using_alias_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::CollateClause* CreateDomainStmt::unsafe_arena_release_coll_clause() { - // @@protoc_insertion_point(field_release:pg_query.CreateDomainStmt.coll_clause) - - ::pg_query::CollateClause* temp = _impl_.coll_clause_; - _impl_.coll_clause_ = nullptr; +inline ::pg_query::Alias* RangeTblEntry::unsafe_arena_release_join_using_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.join_using_alias) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Alias* temp = _impl_.join_using_alias_; + _impl_.join_using_alias_ = nullptr; return temp; } -inline ::pg_query::CollateClause* CreateDomainStmt::_internal_mutable_coll_clause() { - - if (_impl_.coll_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::CollateClause>(GetArenaForAllocation()); - _impl_.coll_clause_ = p; +inline ::pg_query::Alias* RangeTblEntry::_internal_mutable_join_using_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.join_using_alias_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArena()); + _impl_.join_using_alias_ = reinterpret_cast<::pg_query::Alias*>(p); } - return _impl_.coll_clause_; + return _impl_.join_using_alias_; } -inline ::pg_query::CollateClause* CreateDomainStmt::mutable_coll_clause() { - ::pg_query::CollateClause* _msg = _internal_mutable_coll_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateDomainStmt.coll_clause) +inline ::pg_query::Alias* RangeTblEntry::mutable_join_using_alias() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Alias* _msg = _internal_mutable_join_using_alias(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.join_using_alias) return _msg; } -inline void CreateDomainStmt::set_allocated_coll_clause(::pg_query::CollateClause* coll_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeTblEntry::set_allocated_join_using_alias(::pg_query::Alias* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.coll_clause_; + delete reinterpret_cast<::pg_query::Alias*>(_impl_.join_using_alias_); } - if (coll_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(coll_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Alias*>(value)->GetArena(); if (message_arena != submessage_arena) { - coll_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, coll_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.coll_clause_ = coll_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateDomainStmt.coll_clause) + + _impl_.join_using_alias_ = reinterpret_cast<::pg_query::Alias*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.join_using_alias) } -// repeated .pg_query.Node constraints = 4 [json_name = "constraints"]; -inline int CreateDomainStmt::_internal_constraints_size() const { - return _impl_.constraints_.size(); +// repeated .pg_query.Node functions = 15 [json_name = "functions"]; +inline int RangeTblEntry::_internal_functions_size() const { + return _internal_functions().size(); } -inline int CreateDomainStmt::constraints_size() const { - return _internal_constraints_size(); +inline int RangeTblEntry::functions_size() const { + return _internal_functions_size(); } -inline void CreateDomainStmt::clear_constraints() { - _impl_.constraints_.Clear(); +inline void RangeTblEntry::clear_functions() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.functions_.Clear(); } -inline ::pg_query::Node* CreateDomainStmt::mutable_constraints(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateDomainStmt.constraints) - return _impl_.constraints_.Mutable(index); +inline ::pg_query::Node* RangeTblEntry::mutable_functions(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.functions) + return _internal_mutable_functions()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateDomainStmt::mutable_constraints() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateDomainStmt.constraints) - return &_impl_.constraints_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblEntry::mutable_functions() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.functions) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_functions(); } -inline const ::pg_query::Node& CreateDomainStmt::_internal_constraints(int index) const { - return _impl_.constraints_.Get(index); +inline const ::pg_query::Node& RangeTblEntry::functions(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.functions) + return _internal_functions().Get(index); } -inline const ::pg_query::Node& CreateDomainStmt::constraints(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateDomainStmt.constraints) - return _internal_constraints(index); +inline ::pg_query::Node* RangeTblEntry::add_functions() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_functions()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.functions) + return _add; } -inline ::pg_query::Node* CreateDomainStmt::_internal_add_constraints() { - return _impl_.constraints_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblEntry::functions() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.functions) + return _internal_functions(); } -inline ::pg_query::Node* CreateDomainStmt::add_constraints() { - ::pg_query::Node* _add = _internal_add_constraints(); - // @@protoc_insertion_point(field_add:pg_query.CreateDomainStmt.constraints) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblEntry::_internal_functions() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.functions_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateDomainStmt::constraints() const { - // @@protoc_insertion_point(field_list:pg_query.CreateDomainStmt.constraints) - return _impl_.constraints_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblEntry::_internal_mutable_functions() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.functions_; } -// ------------------------------------------------------------------- - -// CreatedbStmt - -// string dbname = 1 [json_name = "dbname"]; -inline void CreatedbStmt::clear_dbname() { - _impl_.dbname_.ClearToEmpty(); +// bool funcordinality = 16 [json_name = "funcordinality"]; +inline void RangeTblEntry::clear_funcordinality() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcordinality_ = false; } -inline const std::string& CreatedbStmt::dbname() const { - // @@protoc_insertion_point(field_get:pg_query.CreatedbStmt.dbname) - return _internal_dbname(); +inline bool RangeTblEntry::funcordinality() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.funcordinality) + return _internal_funcordinality(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreatedbStmt::set_dbname(ArgT0&& arg0, ArgT... args) { - - _impl_.dbname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreatedbStmt.dbname) +inline void RangeTblEntry::set_funcordinality(bool value) { + _internal_set_funcordinality(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.funcordinality) } -inline std::string* CreatedbStmt::mutable_dbname() { - std::string* _s = _internal_mutable_dbname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreatedbStmt.dbname) - return _s; +inline bool RangeTblEntry::_internal_funcordinality() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcordinality_; } -inline const std::string& CreatedbStmt::_internal_dbname() const { - return _impl_.dbname_.Get(); +inline void RangeTblEntry::_internal_set_funcordinality(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.funcordinality_ = value; } -inline void CreatedbStmt::_internal_set_dbname(const std::string& value) { - - _impl_.dbname_.Set(value, GetArenaForAllocation()); + +// .pg_query.TableFunc tablefunc = 17 [json_name = "tablefunc"]; +inline bool RangeTblEntry::has_tablefunc() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.tablefunc_ != nullptr); + return value; } -inline std::string* CreatedbStmt::_internal_mutable_dbname() { - - return _impl_.dbname_.Mutable(GetArenaForAllocation()); +inline void RangeTblEntry::clear_tablefunc() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.tablefunc_ != nullptr) _impl_.tablefunc_->Clear(); + _impl_._has_bits_[0] &= ~0x00000008u; } -inline std::string* CreatedbStmt::release_dbname() { - // @@protoc_insertion_point(field_release:pg_query.CreatedbStmt.dbname) - return _impl_.dbname_.Release(); +inline const ::pg_query::TableFunc& RangeTblEntry::_internal_tablefunc() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TableFunc* p = _impl_.tablefunc_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TableFunc_default_instance_); } -inline void CreatedbStmt::set_allocated_dbname(std::string* dbname) { - if (dbname != nullptr) { - - } else { - +inline const ::pg_query::TableFunc& RangeTblEntry::tablefunc() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.tablefunc) + return _internal_tablefunc(); +} +inline void RangeTblEntry::unsafe_arena_set_allocated_tablefunc(::pg_query::TableFunc* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.tablefunc_); } - _impl_.dbname_.SetAllocated(dbname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.dbname_.IsDefault()) { - _impl_.dbname_.Set("", GetArenaForAllocation()); + _impl_.tablefunc_ = reinterpret_cast<::pg_query::TableFunc*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreatedbStmt.dbname) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.tablefunc) } +inline ::pg_query::TableFunc* RangeTblEntry::release_tablefunc() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int CreatedbStmt::_internal_options_size() const { - return _impl_.options_.size(); + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::TableFunc* released = _impl_.tablefunc_; + _impl_.tablefunc_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int CreatedbStmt::options_size() const { - return _internal_options_size(); +inline ::pg_query::TableFunc* RangeTblEntry::unsafe_arena_release_tablefunc() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.tablefunc) + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::TableFunc* temp = _impl_.tablefunc_; + _impl_.tablefunc_ = nullptr; + return temp; } -inline void CreatedbStmt::clear_options() { - _impl_.options_.Clear(); +inline ::pg_query::TableFunc* RangeTblEntry::_internal_mutable_tablefunc() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.tablefunc_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TableFunc>(GetArena()); + _impl_.tablefunc_ = reinterpret_cast<::pg_query::TableFunc*>(p); + } + return _impl_.tablefunc_; } -inline ::pg_query::Node* CreatedbStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreatedbStmt.options) - return _impl_.options_.Mutable(index); +inline ::pg_query::TableFunc* RangeTblEntry::mutable_tablefunc() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TableFunc* _msg = _internal_mutable_tablefunc(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.tablefunc) + return _msg; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreatedbStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreatedbStmt.options) - return &_impl_.options_; +inline void RangeTblEntry::set_allocated_tablefunc(::pg_query::TableFunc* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TableFunc*>(_impl_.tablefunc_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TableFunc*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } + + _impl_.tablefunc_ = reinterpret_cast<::pg_query::TableFunc*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.tablefunc) } -inline const ::pg_query::Node& CreatedbStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// repeated .pg_query.Node values_lists = 18 [json_name = "values_lists"]; +inline int RangeTblEntry::_internal_values_lists_size() const { + return _internal_values_lists().size(); } -inline const ::pg_query::Node& CreatedbStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreatedbStmt.options) - return _internal_options(index); +inline int RangeTblEntry::values_lists_size() const { + return _internal_values_lists_size(); } -inline ::pg_query::Node* CreatedbStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void RangeTblEntry::clear_values_lists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.values_lists_.Clear(); } -inline ::pg_query::Node* CreatedbStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreatedbStmt.options) - return _add; +inline ::pg_query::Node* RangeTblEntry::mutable_values_lists(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.values_lists) + return _internal_mutable_values_lists()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreatedbStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreatedbStmt.options) - return _impl_.options_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblEntry::mutable_values_lists() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.values_lists) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_values_lists(); } - -// ------------------------------------------------------------------- - -// DropdbStmt - -// string dbname = 1 [json_name = "dbname"]; -inline void DropdbStmt::clear_dbname() { - _impl_.dbname_.ClearToEmpty(); +inline const ::pg_query::Node& RangeTblEntry::values_lists(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.values_lists) + return _internal_values_lists().Get(index); } -inline const std::string& DropdbStmt::dbname() const { - // @@protoc_insertion_point(field_get:pg_query.DropdbStmt.dbname) - return _internal_dbname(); +inline ::pg_query::Node* RangeTblEntry::add_values_lists() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_values_lists()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.values_lists) + return _add; } -template -inline PROTOBUF_ALWAYS_INLINE -void DropdbStmt::set_dbname(ArgT0&& arg0, ArgT... args) { - - _impl_.dbname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.DropdbStmt.dbname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblEntry::values_lists() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.values_lists) + return _internal_values_lists(); } -inline std::string* DropdbStmt::mutable_dbname() { - std::string* _s = _internal_mutable_dbname(); - // @@protoc_insertion_point(field_mutable:pg_query.DropdbStmt.dbname) - return _s; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblEntry::_internal_values_lists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.values_lists_; } -inline const std::string& DropdbStmt::_internal_dbname() const { - return _impl_.dbname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblEntry::_internal_mutable_values_lists() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.values_lists_; } -inline void DropdbStmt::_internal_set_dbname(const std::string& value) { - - _impl_.dbname_.Set(value, GetArenaForAllocation()); + +// string ctename = 19 [json_name = "ctename"]; +inline void RangeTblEntry::clear_ctename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctename_.ClearToEmpty(); } -inline std::string* DropdbStmt::_internal_mutable_dbname() { - - return _impl_.dbname_.Mutable(GetArenaForAllocation()); +inline const std::string& RangeTblEntry::ctename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.ctename) + return _internal_ctename(); } -inline std::string* DropdbStmt::release_dbname() { - // @@protoc_insertion_point(field_release:pg_query.DropdbStmt.dbname) - return _impl_.dbname_.Release(); +template +inline PROTOBUF_ALWAYS_INLINE void RangeTblEntry::set_ctename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ctename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.ctename) } -inline void DropdbStmt::set_allocated_dbname(std::string* dbname) { - if (dbname != nullptr) { - - } else { - - } - _impl_.dbname_.SetAllocated(dbname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.dbname_.IsDefault()) { - _impl_.dbname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.DropdbStmt.dbname) +inline std::string* RangeTblEntry::mutable_ctename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_ctename(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.ctename) + return _s; } - -// bool missing_ok = 2 [json_name = "missing_ok"]; -inline void DropdbStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; +inline const std::string& RangeTblEntry::_internal_ctename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ctename_.Get(); } -inline bool DropdbStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline void RangeTblEntry::_internal_set_ctename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ctename_.Set(value, GetArena()); } -inline bool DropdbStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.DropdbStmt.missing_ok) - return _internal_missing_ok(); +inline std::string* RangeTblEntry::_internal_mutable_ctename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.ctename_.Mutable( GetArena()); } -inline void DropdbStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline std::string* RangeTblEntry::release_ctename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.ctename) + return _impl_.ctename_.Release(); } -inline void DropdbStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.DropdbStmt.missing_ok) +inline void RangeTblEntry::set_allocated_ctename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.ctename_.IsDefault()) { + _impl_.ctename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.ctename) } -// repeated .pg_query.Node options = 3 [json_name = "options"]; -inline int DropdbStmt::_internal_options_size() const { - return _impl_.options_.size(); +// uint32 ctelevelsup = 20 [json_name = "ctelevelsup"]; +inline void RangeTblEntry::clear_ctelevelsup() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctelevelsup_ = 0u; } -inline int DropdbStmt::options_size() const { - return _internal_options_size(); +inline ::uint32_t RangeTblEntry::ctelevelsup() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.ctelevelsup) + return _internal_ctelevelsup(); } -inline void DropdbStmt::clear_options() { - _impl_.options_.Clear(); +inline void RangeTblEntry::set_ctelevelsup(::uint32_t value) { + _internal_set_ctelevelsup(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.ctelevelsup) } -inline ::pg_query::Node* DropdbStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DropdbStmt.options) - return _impl_.options_.Mutable(index); +inline ::uint32_t RangeTblEntry::_internal_ctelevelsup() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ctelevelsup_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DropdbStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DropdbStmt.options) - return &_impl_.options_; +inline void RangeTblEntry::_internal_set_ctelevelsup(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ctelevelsup_ = value; } -inline const ::pg_query::Node& DropdbStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// bool self_reference = 21 [json_name = "self_reference"]; +inline void RangeTblEntry::clear_self_reference() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.self_reference_ = false; } -inline const ::pg_query::Node& DropdbStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DropdbStmt.options) - return _internal_options(index); +inline bool RangeTblEntry::self_reference() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.self_reference) + return _internal_self_reference(); } -inline ::pg_query::Node* DropdbStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void RangeTblEntry::set_self_reference(bool value) { + _internal_set_self_reference(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.self_reference) } -inline ::pg_query::Node* DropdbStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.DropdbStmt.options) - return _add; +inline bool RangeTblEntry::_internal_self_reference() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.self_reference_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DropdbStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.DropdbStmt.options) - return _impl_.options_; +inline void RangeTblEntry::_internal_set_self_reference(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.self_reference_ = value; } -// ------------------------------------------------------------------- - -// VacuumStmt - -// repeated .pg_query.Node options = 1 [json_name = "options"]; -inline int VacuumStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int VacuumStmt::options_size() const { - return _internal_options_size(); -} -inline void VacuumStmt::clear_options() { - _impl_.options_.Clear(); +// repeated .pg_query.Node coltypes = 22 [json_name = "coltypes"]; +inline int RangeTblEntry::_internal_coltypes_size() const { + return _internal_coltypes().size(); } -inline ::pg_query::Node* VacuumStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.VacuumStmt.options) - return _impl_.options_.Mutable(index); +inline int RangeTblEntry::coltypes_size() const { + return _internal_coltypes_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -VacuumStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.VacuumStmt.options) - return &_impl_.options_; +inline void RangeTblEntry::clear_coltypes() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coltypes_.Clear(); } -inline const ::pg_query::Node& VacuumStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::Node* RangeTblEntry::mutable_coltypes(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.coltypes) + return _internal_mutable_coltypes()->Mutable(index); } -inline const ::pg_query::Node& VacuumStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.VacuumStmt.options) - return _internal_options(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblEntry::mutable_coltypes() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.coltypes) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_coltypes(); } -inline ::pg_query::Node* VacuumStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::pg_query::Node& RangeTblEntry::coltypes(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.coltypes) + return _internal_coltypes().Get(index); } -inline ::pg_query::Node* VacuumStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.VacuumStmt.options) +inline ::pg_query::Node* RangeTblEntry::add_coltypes() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_coltypes()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.coltypes) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -VacuumStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.VacuumStmt.options) - return _impl_.options_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblEntry::coltypes() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.coltypes) + return _internal_coltypes(); } - -// repeated .pg_query.Node rels = 2 [json_name = "rels"]; -inline int VacuumStmt::_internal_rels_size() const { - return _impl_.rels_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblEntry::_internal_coltypes() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coltypes_; } -inline int VacuumStmt::rels_size() const { - return _internal_rels_size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblEntry::_internal_mutable_coltypes() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.coltypes_; } -inline void VacuumStmt::clear_rels() { - _impl_.rels_.Clear(); + +// repeated .pg_query.Node coltypmods = 23 [json_name = "coltypmods"]; +inline int RangeTblEntry::_internal_coltypmods_size() const { + return _internal_coltypmods().size(); } -inline ::pg_query::Node* VacuumStmt::mutable_rels(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.VacuumStmt.rels) - return _impl_.rels_.Mutable(index); +inline int RangeTblEntry::coltypmods_size() const { + return _internal_coltypmods_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -VacuumStmt::mutable_rels() { - // @@protoc_insertion_point(field_mutable_list:pg_query.VacuumStmt.rels) - return &_impl_.rels_; +inline void RangeTblEntry::clear_coltypmods() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coltypmods_.Clear(); } -inline const ::pg_query::Node& VacuumStmt::_internal_rels(int index) const { - return _impl_.rels_.Get(index); +inline ::pg_query::Node* RangeTblEntry::mutable_coltypmods(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.coltypmods) + return _internal_mutable_coltypmods()->Mutable(index); } -inline const ::pg_query::Node& VacuumStmt::rels(int index) const { - // @@protoc_insertion_point(field_get:pg_query.VacuumStmt.rels) - return _internal_rels(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblEntry::mutable_coltypmods() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.coltypmods) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_coltypmods(); } -inline ::pg_query::Node* VacuumStmt::_internal_add_rels() { - return _impl_.rels_.Add(); +inline const ::pg_query::Node& RangeTblEntry::coltypmods(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.coltypmods) + return _internal_coltypmods().Get(index); } -inline ::pg_query::Node* VacuumStmt::add_rels() { - ::pg_query::Node* _add = _internal_add_rels(); - // @@protoc_insertion_point(field_add:pg_query.VacuumStmt.rels) +inline ::pg_query::Node* RangeTblEntry::add_coltypmods() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_coltypmods()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.coltypmods) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -VacuumStmt::rels() const { - // @@protoc_insertion_point(field_list:pg_query.VacuumStmt.rels) - return _impl_.rels_; -} - -// bool is_vacuumcmd = 3 [json_name = "is_vacuumcmd"]; -inline void VacuumStmt::clear_is_vacuumcmd() { - _impl_.is_vacuumcmd_ = false; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblEntry::coltypmods() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.coltypmods) + return _internal_coltypmods(); } -inline bool VacuumStmt::_internal_is_vacuumcmd() const { - return _impl_.is_vacuumcmd_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblEntry::_internal_coltypmods() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coltypmods_; } -inline bool VacuumStmt::is_vacuumcmd() const { - // @@protoc_insertion_point(field_get:pg_query.VacuumStmt.is_vacuumcmd) - return _internal_is_vacuumcmd(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblEntry::_internal_mutable_coltypmods() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.coltypmods_; } -inline void VacuumStmt::_internal_set_is_vacuumcmd(bool value) { - - _impl_.is_vacuumcmd_ = value; + +// repeated .pg_query.Node colcollations = 24 [json_name = "colcollations"]; +inline int RangeTblEntry::_internal_colcollations_size() const { + return _internal_colcollations().size(); } -inline void VacuumStmt::set_is_vacuumcmd(bool value) { - _internal_set_is_vacuumcmd(value); - // @@protoc_insertion_point(field_set:pg_query.VacuumStmt.is_vacuumcmd) +inline int RangeTblEntry::colcollations_size() const { + return _internal_colcollations_size(); } - -// ------------------------------------------------------------------- - -// ExplainStmt - -// .pg_query.Node query = 1 [json_name = "query"]; -inline bool ExplainStmt::_internal_has_query() const { - return this != internal_default_instance() && _impl_.query_ != nullptr; +inline void RangeTblEntry::clear_colcollations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.colcollations_.Clear(); } -inline bool ExplainStmt::has_query() const { - return _internal_has_query(); +inline ::pg_query::Node* RangeTblEntry::mutable_colcollations(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.colcollations) + return _internal_mutable_colcollations()->Mutable(index); } -inline void ExplainStmt::clear_query() { - if (GetArenaForAllocation() == nullptr && _impl_.query_ != nullptr) { - delete _impl_.query_; - } - _impl_.query_ = nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblEntry::mutable_colcollations() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.colcollations) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_colcollations(); } -inline const ::pg_query::Node& ExplainStmt::_internal_query() const { - const ::pg_query::Node* p = _impl_.query_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& RangeTblEntry::colcollations(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.colcollations) + return _internal_colcollations().Get(index); } -inline const ::pg_query::Node& ExplainStmt::query() const { - // @@protoc_insertion_point(field_get:pg_query.ExplainStmt.query) - return _internal_query(); +inline ::pg_query::Node* RangeTblEntry::add_colcollations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_colcollations()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.colcollations) + return _add; } -inline void ExplainStmt::unsafe_arena_set_allocated_query( - ::pg_query::Node* query) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.query_); - } - _impl_.query_ = query; - if (query) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ExplainStmt.query) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblEntry::colcollations() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.colcollations) + return _internal_colcollations(); } -inline ::pg_query::Node* ExplainStmt::release_query() { - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblEntry::_internal_colcollations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.colcollations_; } -inline ::pg_query::Node* ExplainStmt::unsafe_arena_release_query() { - // @@protoc_insertion_point(field_release:pg_query.ExplainStmt.query) - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; - return temp; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblEntry::_internal_mutable_colcollations() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.colcollations_; } -inline ::pg_query::Node* ExplainStmt::_internal_mutable_query() { - - if (_impl_.query_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.query_ = p; - } - return _impl_.query_; + +// string enrname = 25 [json_name = "enrname"]; +inline void RangeTblEntry::clear_enrname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.enrname_.ClearToEmpty(); } -inline ::pg_query::Node* ExplainStmt::mutable_query() { - ::pg_query::Node* _msg = _internal_mutable_query(); - // @@protoc_insertion_point(field_mutable:pg_query.ExplainStmt.query) - return _msg; +inline const std::string& RangeTblEntry::enrname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.enrname) + return _internal_enrname(); } -inline void ExplainStmt::set_allocated_query(::pg_query::Node* query) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.query_; - } - if (query) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(query); - if (message_arena != submessage_arena) { - query = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, query, submessage_arena); - } - - } else { - - } - _impl_.query_ = query; - // @@protoc_insertion_point(field_set_allocated:pg_query.ExplainStmt.query) +template +inline PROTOBUF_ALWAYS_INLINE void RangeTblEntry::set_enrname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.enrname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.enrname) } - -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int ExplainStmt::_internal_options_size() const { - return _impl_.options_.size(); +inline std::string* RangeTblEntry::mutable_enrname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_enrname(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.enrname) + return _s; } -inline int ExplainStmt::options_size() const { - return _internal_options_size(); +inline const std::string& RangeTblEntry::_internal_enrname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.enrname_.Get(); } -inline void ExplainStmt::clear_options() { - _impl_.options_.Clear(); +inline void RangeTblEntry::_internal_set_enrname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.enrname_.Set(value, GetArena()); } -inline ::pg_query::Node* ExplainStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ExplainStmt.options) - return _impl_.options_.Mutable(index); +inline std::string* RangeTblEntry::_internal_mutable_enrname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.enrname_.Mutable( GetArena()); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ExplainStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ExplainStmt.options) - return &_impl_.options_; +inline std::string* RangeTblEntry::release_enrname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.enrname) + return _impl_.enrname_.Release(); } -inline const ::pg_query::Node& ExplainStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline void RangeTblEntry::set_allocated_enrname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.enrname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.enrname_.IsDefault()) { + _impl_.enrname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.enrname) } -inline const ::pg_query::Node& ExplainStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ExplainStmt.options) - return _internal_options(index); + +// double enrtuples = 26 [json_name = "enrtuples"]; +inline void RangeTblEntry::clear_enrtuples() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.enrtuples_ = 0; } -inline ::pg_query::Node* ExplainStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline double RangeTblEntry::enrtuples() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.enrtuples) + return _internal_enrtuples(); } -inline ::pg_query::Node* ExplainStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.ExplainStmt.options) - return _add; +inline void RangeTblEntry::set_enrtuples(double value) { + _internal_set_enrtuples(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.enrtuples) } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ExplainStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.ExplainStmt.options) - return _impl_.options_; +inline double RangeTblEntry::_internal_enrtuples() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.enrtuples_; } - -// ------------------------------------------------------------------- - -// CreateTableAsStmt - -// .pg_query.Node query = 1 [json_name = "query"]; -inline bool CreateTableAsStmt::_internal_has_query() const { - return this != internal_default_instance() && _impl_.query_ != nullptr; +inline void RangeTblEntry::_internal_set_enrtuples(double value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.enrtuples_ = value; } -inline bool CreateTableAsStmt::has_query() const { - return _internal_has_query(); + +// .pg_query.Alias alias = 27 [json_name = "alias"]; +inline bool RangeTblEntry::has_alias() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + PROTOBUF_ASSUME(!value || _impl_.alias_ != nullptr); + return value; } -inline void CreateTableAsStmt::clear_query() { - if (GetArenaForAllocation() == nullptr && _impl_.query_ != nullptr) { - delete _impl_.query_; - } - _impl_.query_ = nullptr; +inline void RangeTblEntry::clear_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.alias_ != nullptr) _impl_.alias_->Clear(); + _impl_._has_bits_[0] &= ~0x00000010u; } -inline const ::pg_query::Node& CreateTableAsStmt::_internal_query() const { - const ::pg_query::Node* p = _impl_.query_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Alias& RangeTblEntry::_internal_alias() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Alias* p = _impl_.alias_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Alias_default_instance_); } -inline const ::pg_query::Node& CreateTableAsStmt::query() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.query) - return _internal_query(); +inline const ::pg_query::Alias& RangeTblEntry::alias() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.alias) + return _internal_alias(); } -inline void CreateTableAsStmt::unsafe_arena_set_allocated_query( - ::pg_query::Node* query) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.query_); +inline void RangeTblEntry::unsafe_arena_set_allocated_alias(::pg_query::Alias* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.alias_); } - _impl_.query_ = query; - if (query) { - + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000010u; } else { - + _impl_._has_bits_[0] &= ~0x00000010u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTableAsStmt.query) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.alias) } -inline ::pg_query::Node* CreateTableAsStmt::release_query() { - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::Alias* RangeTblEntry::release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::Alias* released = _impl_.alias_; + _impl_.alias_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CreateTableAsStmt::unsafe_arena_release_query() { - // @@protoc_insertion_point(field_release:pg_query.CreateTableAsStmt.query) - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::Alias* RangeTblEntry::unsafe_arena_release_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.alias) + + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::Alias* temp = _impl_.alias_; + _impl_.alias_ = nullptr; return temp; } -inline ::pg_query::Node* CreateTableAsStmt::_internal_mutable_query() { - - if (_impl_.query_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.query_ = p; +inline ::pg_query::Alias* RangeTblEntry::_internal_mutable_alias() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000010u; + if (_impl_.alias_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArena()); + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(p); } - return _impl_.query_; + return _impl_.alias_; } -inline ::pg_query::Node* CreateTableAsStmt::mutable_query() { - ::pg_query::Node* _msg = _internal_mutable_query(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTableAsStmt.query) +inline ::pg_query::Alias* RangeTblEntry::mutable_alias() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Alias* _msg = _internal_mutable_alias(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.alias) return _msg; } -inline void CreateTableAsStmt::set_allocated_query(::pg_query::Node* query) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeTblEntry::set_allocated_alias(::pg_query::Alias* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.query_; + delete reinterpret_cast<::pg_query::Alias*>(_impl_.alias_); } - if (query) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(query); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Alias*>(value)->GetArena(); if (message_arena != submessage_arena) { - query = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, query, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000010u; } else { - + _impl_._has_bits_[0] &= ~0x00000010u; } - _impl_.query_ = query; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableAsStmt.query) -} -// .pg_query.IntoClause into = 2 [json_name = "into"]; -inline bool CreateTableAsStmt::_internal_has_into() const { - return this != internal_default_instance() && _impl_.into_ != nullptr; + _impl_.alias_ = reinterpret_cast<::pg_query::Alias*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.alias) } -inline bool CreateTableAsStmt::has_into() const { - return _internal_has_into(); + +// .pg_query.Alias eref = 28 [json_name = "eref"]; +inline bool RangeTblEntry::has_eref() const { + bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; + PROTOBUF_ASSUME(!value || _impl_.eref_ != nullptr); + return value; } -inline void CreateTableAsStmt::clear_into() { - if (GetArenaForAllocation() == nullptr && _impl_.into_ != nullptr) { - delete _impl_.into_; - } - _impl_.into_ = nullptr; +inline void RangeTblEntry::clear_eref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.eref_ != nullptr) _impl_.eref_->Clear(); + _impl_._has_bits_[0] &= ~0x00000020u; } -inline const ::pg_query::IntoClause& CreateTableAsStmt::_internal_into() const { - const ::pg_query::IntoClause* p = _impl_.into_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_IntoClause_default_instance_); +inline const ::pg_query::Alias& RangeTblEntry::_internal_eref() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Alias* p = _impl_.eref_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Alias_default_instance_); } -inline const ::pg_query::IntoClause& CreateTableAsStmt::into() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.into) - return _internal_into(); +inline const ::pg_query::Alias& RangeTblEntry::eref() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.eref) + return _internal_eref(); } -inline void CreateTableAsStmt::unsafe_arena_set_allocated_into( - ::pg_query::IntoClause* into) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.into_); +inline void RangeTblEntry::unsafe_arena_set_allocated_eref(::pg_query::Alias* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.eref_); } - _impl_.into_ = into; - if (into) { - + _impl_.eref_ = reinterpret_cast<::pg_query::Alias*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000020u; } else { - + _impl_._has_bits_[0] &= ~0x00000020u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTableAsStmt.into) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.eref) } -inline ::pg_query::IntoClause* CreateTableAsStmt::release_into() { - - ::pg_query::IntoClause* temp = _impl_.into_; - _impl_.into_ = nullptr; +inline ::pg_query::Alias* RangeTblEntry::release_eref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000020u; + ::pg_query::Alias* released = _impl_.eref_; + _impl_.eref_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::IntoClause* CreateTableAsStmt::unsafe_arena_release_into() { - // @@protoc_insertion_point(field_release:pg_query.CreateTableAsStmt.into) - - ::pg_query::IntoClause* temp = _impl_.into_; - _impl_.into_ = nullptr; +inline ::pg_query::Alias* RangeTblEntry::unsafe_arena_release_eref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.eref) + + _impl_._has_bits_[0] &= ~0x00000020u; + ::pg_query::Alias* temp = _impl_.eref_; + _impl_.eref_ = nullptr; return temp; } -inline ::pg_query::IntoClause* CreateTableAsStmt::_internal_mutable_into() { - - if (_impl_.into_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::IntoClause>(GetArenaForAllocation()); - _impl_.into_ = p; +inline ::pg_query::Alias* RangeTblEntry::_internal_mutable_eref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000020u; + if (_impl_.eref_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArena()); + _impl_.eref_ = reinterpret_cast<::pg_query::Alias*>(p); } - return _impl_.into_; + return _impl_.eref_; } -inline ::pg_query::IntoClause* CreateTableAsStmt::mutable_into() { - ::pg_query::IntoClause* _msg = _internal_mutable_into(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTableAsStmt.into) +inline ::pg_query::Alias* RangeTblEntry::mutable_eref() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Alias* _msg = _internal_mutable_eref(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.eref) return _msg; } -inline void CreateTableAsStmt::set_allocated_into(::pg_query::IntoClause* into) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeTblEntry::set_allocated_eref(::pg_query::Alias* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.into_; + delete reinterpret_cast<::pg_query::Alias*>(_impl_.eref_); } - if (into) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(into); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Alias*>(value)->GetArena(); if (message_arena != submessage_arena) { - into = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, into, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000020u; } else { - + _impl_._has_bits_[0] &= ~0x00000020u; } - _impl_.into_ = into; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableAsStmt.into) + + _impl_.eref_ = reinterpret_cast<::pg_query::Alias*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.eref) } -// .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; -inline void CreateTableAsStmt::clear_objtype() { - _impl_.objtype_ = 0; +// bool lateral = 29 [json_name = "lateral"]; +inline void RangeTblEntry::clear_lateral() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.lateral_ = false; } -inline ::pg_query::ObjectType CreateTableAsStmt::_internal_objtype() const { - return static_cast< ::pg_query::ObjectType >(_impl_.objtype_); +inline bool RangeTblEntry::lateral() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.lateral) + return _internal_lateral(); } -inline ::pg_query::ObjectType CreateTableAsStmt::objtype() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.objtype) - return _internal_objtype(); +inline void RangeTblEntry::set_lateral(bool value) { + _internal_set_lateral(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.lateral) } -inline void CreateTableAsStmt::_internal_set_objtype(::pg_query::ObjectType value) { - - _impl_.objtype_ = value; +inline bool RangeTblEntry::_internal_lateral() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.lateral_; } -inline void CreateTableAsStmt::set_objtype(::pg_query::ObjectType value) { - _internal_set_objtype(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTableAsStmt.objtype) +inline void RangeTblEntry::_internal_set_lateral(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.lateral_ = value; } -// bool is_select_into = 4 [json_name = "is_select_into"]; -inline void CreateTableAsStmt::clear_is_select_into() { - _impl_.is_select_into_ = false; +// bool inh = 30 [json_name = "inh"]; +inline void RangeTblEntry::clear_inh() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inh_ = false; } -inline bool CreateTableAsStmt::_internal_is_select_into() const { - return _impl_.is_select_into_; +inline bool RangeTblEntry::inh() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.inh) + return _internal_inh(); } -inline bool CreateTableAsStmt::is_select_into() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.is_select_into) - return _internal_is_select_into(); +inline void RangeTblEntry::set_inh(bool value) { + _internal_set_inh(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.inh) } -inline void CreateTableAsStmt::_internal_set_is_select_into(bool value) { - - _impl_.is_select_into_ = value; +inline bool RangeTblEntry::_internal_inh() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inh_; } -inline void CreateTableAsStmt::set_is_select_into(bool value) { - _internal_set_is_select_into(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTableAsStmt.is_select_into) +inline void RangeTblEntry::_internal_set_inh(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inh_ = value; } -// bool if_not_exists = 5 [json_name = "if_not_exists"]; -inline void CreateTableAsStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +// bool in_from_cl = 31 [json_name = "inFromCl"]; +inline void RangeTblEntry::clear_in_from_cl() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.in_from_cl_ = false; } -inline bool CreateTableAsStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline bool RangeTblEntry::in_from_cl() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.in_from_cl) + return _internal_in_from_cl(); } -inline bool CreateTableAsStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.if_not_exists) - return _internal_if_not_exists(); +inline void RangeTblEntry::set_in_from_cl(bool value) { + _internal_set_in_from_cl(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.in_from_cl) } -inline void CreateTableAsStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline bool RangeTblEntry::_internal_in_from_cl() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.in_from_cl_; } -inline void CreateTableAsStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTableAsStmt.if_not_exists) +inline void RangeTblEntry::_internal_set_in_from_cl(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.in_from_cl_ = value; +} + +// repeated .pg_query.Node security_quals = 32 [json_name = "securityQuals"]; +inline int RangeTblEntry::_internal_security_quals_size() const { + return _internal_security_quals().size(); +} +inline int RangeTblEntry::security_quals_size() const { + return _internal_security_quals_size(); +} +inline void RangeTblEntry::clear_security_quals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.security_quals_.Clear(); +} +inline ::pg_query::Node* RangeTblEntry::mutable_security_quals(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.security_quals) + return _internal_mutable_security_quals()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblEntry::mutable_security_quals() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.security_quals) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_security_quals(); +} +inline const ::pg_query::Node& RangeTblEntry::security_quals(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.security_quals) + return _internal_security_quals().Get(index); +} +inline ::pg_query::Node* RangeTblEntry::add_security_quals() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_security_quals()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.security_quals) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblEntry::security_quals() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.security_quals) + return _internal_security_quals(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblEntry::_internal_security_quals() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.security_quals_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblEntry::_internal_mutable_security_quals() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.security_quals_; } // ------------------------------------------------------------------- -// CreateSeqStmt +// RTEPermissionInfo -// .pg_query.RangeVar sequence = 1 [json_name = "sequence"]; -inline bool CreateSeqStmt::_internal_has_sequence() const { - return this != internal_default_instance() && _impl_.sequence_ != nullptr; -} -inline bool CreateSeqStmt::has_sequence() const { - return _internal_has_sequence(); +// uint32 relid = 1 [json_name = "relid"]; +inline void RTEPermissionInfo::clear_relid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relid_ = 0u; } -inline void CreateSeqStmt::clear_sequence() { - if (GetArenaForAllocation() == nullptr && _impl_.sequence_ != nullptr) { - delete _impl_.sequence_; - } - _impl_.sequence_ = nullptr; +inline ::uint32_t RTEPermissionInfo::relid() const { + // @@protoc_insertion_point(field_get:pg_query.RTEPermissionInfo.relid) + return _internal_relid(); } -inline const ::pg_query::RangeVar& CreateSeqStmt::_internal_sequence() const { - const ::pg_query::RangeVar* p = _impl_.sequence_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline void RTEPermissionInfo::set_relid(::uint32_t value) { + _internal_set_relid(value); + // @@protoc_insertion_point(field_set:pg_query.RTEPermissionInfo.relid) } -inline const ::pg_query::RangeVar& CreateSeqStmt::sequence() const { - // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.sequence) - return _internal_sequence(); +inline ::uint32_t RTEPermissionInfo::_internal_relid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relid_; } -inline void CreateSeqStmt::unsafe_arena_set_allocated_sequence( - ::pg_query::RangeVar* sequence) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.sequence_); - } - _impl_.sequence_ = sequence; - if (sequence) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateSeqStmt.sequence) +inline void RTEPermissionInfo::_internal_set_relid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relid_ = value; } -inline ::pg_query::RangeVar* CreateSeqStmt::release_sequence() { - - ::pg_query::RangeVar* temp = _impl_.sequence_; - _impl_.sequence_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// bool inh = 2 [json_name = "inh"]; +inline void RTEPermissionInfo::clear_inh() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inh_ = false; } -inline ::pg_query::RangeVar* CreateSeqStmt::unsafe_arena_release_sequence() { - // @@protoc_insertion_point(field_release:pg_query.CreateSeqStmt.sequence) - - ::pg_query::RangeVar* temp = _impl_.sequence_; - _impl_.sequence_ = nullptr; - return temp; +inline bool RTEPermissionInfo::inh() const { + // @@protoc_insertion_point(field_get:pg_query.RTEPermissionInfo.inh) + return _internal_inh(); } -inline ::pg_query::RangeVar* CreateSeqStmt::_internal_mutable_sequence() { - - if (_impl_.sequence_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.sequence_ = p; - } - return _impl_.sequence_; +inline void RTEPermissionInfo::set_inh(bool value) { + _internal_set_inh(value); + // @@protoc_insertion_point(field_set:pg_query.RTEPermissionInfo.inh) } -inline ::pg_query::RangeVar* CreateSeqStmt::mutable_sequence() { - ::pg_query::RangeVar* _msg = _internal_mutable_sequence(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateSeqStmt.sequence) - return _msg; +inline bool RTEPermissionInfo::_internal_inh() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inh_; } -inline void CreateSeqStmt::set_allocated_sequence(::pg_query::RangeVar* sequence) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.sequence_; - } - if (sequence) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(sequence); - if (message_arena != submessage_arena) { - sequence = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, sequence, submessage_arena); - } - - } else { - - } - _impl_.sequence_ = sequence; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSeqStmt.sequence) +inline void RTEPermissionInfo::_internal_set_inh(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inh_ = value; } -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int CreateSeqStmt::_internal_options_size() const { - return _impl_.options_.size(); +// int64 required_perms = 3 [json_name = "requiredPerms"]; +inline void RTEPermissionInfo::clear_required_perms() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.required_perms_ = ::int64_t{0}; } -inline int CreateSeqStmt::options_size() const { - return _internal_options_size(); +inline ::int64_t RTEPermissionInfo::required_perms() const { + // @@protoc_insertion_point(field_get:pg_query.RTEPermissionInfo.required_perms) + return _internal_required_perms(); } -inline void CreateSeqStmt::clear_options() { - _impl_.options_.Clear(); +inline void RTEPermissionInfo::set_required_perms(::int64_t value) { + _internal_set_required_perms(value); + // @@protoc_insertion_point(field_set:pg_query.RTEPermissionInfo.required_perms) } -inline ::pg_query::Node* CreateSeqStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateSeqStmt.options) - return _impl_.options_.Mutable(index); +inline ::int64_t RTEPermissionInfo::_internal_required_perms() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.required_perms_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateSeqStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateSeqStmt.options) - return &_impl_.options_; +inline void RTEPermissionInfo::_internal_set_required_perms(::int64_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.required_perms_ = value; } -inline const ::pg_query::Node& CreateSeqStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// uint32 check_as_user = 4 [json_name = "checkAsUser"]; +inline void RTEPermissionInfo::clear_check_as_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.check_as_user_ = 0u; } -inline const ::pg_query::Node& CreateSeqStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.options) - return _internal_options(index); +inline ::uint32_t RTEPermissionInfo::check_as_user() const { + // @@protoc_insertion_point(field_get:pg_query.RTEPermissionInfo.check_as_user) + return _internal_check_as_user(); } -inline ::pg_query::Node* CreateSeqStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void RTEPermissionInfo::set_check_as_user(::uint32_t value) { + _internal_set_check_as_user(value); + // @@protoc_insertion_point(field_set:pg_query.RTEPermissionInfo.check_as_user) } -inline ::pg_query::Node* CreateSeqStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateSeqStmt.options) - return _add; +inline ::uint32_t RTEPermissionInfo::_internal_check_as_user() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.check_as_user_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateSeqStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateSeqStmt.options) - return _impl_.options_; +inline void RTEPermissionInfo::_internal_set_check_as_user(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.check_as_user_ = value; } -// uint32 owner_id = 3 [json_name = "ownerId"]; -inline void CreateSeqStmt::clear_owner_id() { - _impl_.owner_id_ = 0u; +// repeated uint64 selected_cols = 5 [json_name = "selectedCols"]; +inline int RTEPermissionInfo::_internal_selected_cols_size() const { + return _internal_selected_cols().size(); } -inline uint32_t CreateSeqStmt::_internal_owner_id() const { - return _impl_.owner_id_; +inline int RTEPermissionInfo::selected_cols_size() const { + return _internal_selected_cols_size(); } -inline uint32_t CreateSeqStmt::owner_id() const { - // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.owner_id) - return _internal_owner_id(); +inline void RTEPermissionInfo::clear_selected_cols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.selected_cols_.Clear(); } -inline void CreateSeqStmt::_internal_set_owner_id(uint32_t value) { - - _impl_.owner_id_ = value; +inline ::uint64_t RTEPermissionInfo::selected_cols(int index) const { + // @@protoc_insertion_point(field_get:pg_query.RTEPermissionInfo.selected_cols) + return _internal_selected_cols().Get(index); } -inline void CreateSeqStmt::set_owner_id(uint32_t value) { - _internal_set_owner_id(value); - // @@protoc_insertion_point(field_set:pg_query.CreateSeqStmt.owner_id) +inline void RTEPermissionInfo::set_selected_cols(int index, ::uint64_t value) { + _internal_mutable_selected_cols()->Set(index, value); + // @@protoc_insertion_point(field_set:pg_query.RTEPermissionInfo.selected_cols) +} +inline void RTEPermissionInfo::add_selected_cols(::uint64_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _internal_mutable_selected_cols()->Add(value); + // @@protoc_insertion_point(field_add:pg_query.RTEPermissionInfo.selected_cols) +} +inline const ::google::protobuf::RepeatedField<::uint64_t>& RTEPermissionInfo::selected_cols() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RTEPermissionInfo.selected_cols) + return _internal_selected_cols(); +} +inline ::google::protobuf::RepeatedField<::uint64_t>* RTEPermissionInfo::mutable_selected_cols() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RTEPermissionInfo.selected_cols) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_selected_cols(); +} +inline const ::google::protobuf::RepeatedField<::uint64_t>& RTEPermissionInfo::_internal_selected_cols() + const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.selected_cols_; +} +inline ::google::protobuf::RepeatedField<::uint64_t>* RTEPermissionInfo::_internal_mutable_selected_cols() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.selected_cols_; } -// bool for_identity = 4 [json_name = "for_identity"]; -inline void CreateSeqStmt::clear_for_identity() { - _impl_.for_identity_ = false; +// repeated uint64 inserted_cols = 6 [json_name = "insertedCols"]; +inline int RTEPermissionInfo::_internal_inserted_cols_size() const { + return _internal_inserted_cols().size(); } -inline bool CreateSeqStmt::_internal_for_identity() const { - return _impl_.for_identity_; +inline int RTEPermissionInfo::inserted_cols_size() const { + return _internal_inserted_cols_size(); } -inline bool CreateSeqStmt::for_identity() const { - // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.for_identity) - return _internal_for_identity(); +inline void RTEPermissionInfo::clear_inserted_cols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inserted_cols_.Clear(); } -inline void CreateSeqStmt::_internal_set_for_identity(bool value) { - - _impl_.for_identity_ = value; +inline ::uint64_t RTEPermissionInfo::inserted_cols(int index) const { + // @@protoc_insertion_point(field_get:pg_query.RTEPermissionInfo.inserted_cols) + return _internal_inserted_cols().Get(index); } -inline void CreateSeqStmt::set_for_identity(bool value) { - _internal_set_for_identity(value); - // @@protoc_insertion_point(field_set:pg_query.CreateSeqStmt.for_identity) +inline void RTEPermissionInfo::set_inserted_cols(int index, ::uint64_t value) { + _internal_mutable_inserted_cols()->Set(index, value); + // @@protoc_insertion_point(field_set:pg_query.RTEPermissionInfo.inserted_cols) +} +inline void RTEPermissionInfo::add_inserted_cols(::uint64_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _internal_mutable_inserted_cols()->Add(value); + // @@protoc_insertion_point(field_add:pg_query.RTEPermissionInfo.inserted_cols) +} +inline const ::google::protobuf::RepeatedField<::uint64_t>& RTEPermissionInfo::inserted_cols() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RTEPermissionInfo.inserted_cols) + return _internal_inserted_cols(); +} +inline ::google::protobuf::RepeatedField<::uint64_t>* RTEPermissionInfo::mutable_inserted_cols() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RTEPermissionInfo.inserted_cols) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_inserted_cols(); +} +inline const ::google::protobuf::RepeatedField<::uint64_t>& RTEPermissionInfo::_internal_inserted_cols() + const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inserted_cols_; +} +inline ::google::protobuf::RepeatedField<::uint64_t>* RTEPermissionInfo::_internal_mutable_inserted_cols() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.inserted_cols_; } -// bool if_not_exists = 5 [json_name = "if_not_exists"]; -inline void CreateSeqStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +// repeated uint64 updated_cols = 7 [json_name = "updatedCols"]; +inline int RTEPermissionInfo::_internal_updated_cols_size() const { + return _internal_updated_cols().size(); } -inline bool CreateSeqStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline int RTEPermissionInfo::updated_cols_size() const { + return _internal_updated_cols_size(); } -inline bool CreateSeqStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.if_not_exists) - return _internal_if_not_exists(); +inline void RTEPermissionInfo::clear_updated_cols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.updated_cols_.Clear(); } -inline void CreateSeqStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline ::uint64_t RTEPermissionInfo::updated_cols(int index) const { + // @@protoc_insertion_point(field_get:pg_query.RTEPermissionInfo.updated_cols) + return _internal_updated_cols().Get(index); } -inline void CreateSeqStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.CreateSeqStmt.if_not_exists) +inline void RTEPermissionInfo::set_updated_cols(int index, ::uint64_t value) { + _internal_mutable_updated_cols()->Set(index, value); + // @@protoc_insertion_point(field_set:pg_query.RTEPermissionInfo.updated_cols) +} +inline void RTEPermissionInfo::add_updated_cols(::uint64_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _internal_mutable_updated_cols()->Add(value); + // @@protoc_insertion_point(field_add:pg_query.RTEPermissionInfo.updated_cols) +} +inline const ::google::protobuf::RepeatedField<::uint64_t>& RTEPermissionInfo::updated_cols() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RTEPermissionInfo.updated_cols) + return _internal_updated_cols(); +} +inline ::google::protobuf::RepeatedField<::uint64_t>* RTEPermissionInfo::mutable_updated_cols() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RTEPermissionInfo.updated_cols) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_updated_cols(); +} +inline const ::google::protobuf::RepeatedField<::uint64_t>& RTEPermissionInfo::_internal_updated_cols() + const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.updated_cols_; +} +inline ::google::protobuf::RepeatedField<::uint64_t>* RTEPermissionInfo::_internal_mutable_updated_cols() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.updated_cols_; } // ------------------------------------------------------------------- -// AlterSeqStmt +// RangeTblFunction -// .pg_query.RangeVar sequence = 1 [json_name = "sequence"]; -inline bool AlterSeqStmt::_internal_has_sequence() const { - return this != internal_default_instance() && _impl_.sequence_ != nullptr; -} -inline bool AlterSeqStmt::has_sequence() const { - return _internal_has_sequence(); +// .pg_query.Node funcexpr = 1 [json_name = "funcexpr"]; +inline bool RangeTblFunction::has_funcexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.funcexpr_ != nullptr); + return value; } -inline void AlterSeqStmt::clear_sequence() { - if (GetArenaForAllocation() == nullptr && _impl_.sequence_ != nullptr) { - delete _impl_.sequence_; - } - _impl_.sequence_ = nullptr; +inline void RangeTblFunction::clear_funcexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.funcexpr_ != nullptr) _impl_.funcexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RangeVar& AlterSeqStmt::_internal_sequence() const { - const ::pg_query::RangeVar* p = _impl_.sequence_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::Node& RangeTblFunction::_internal_funcexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.funcexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RangeVar& AlterSeqStmt::sequence() const { - // @@protoc_insertion_point(field_get:pg_query.AlterSeqStmt.sequence) - return _internal_sequence(); +inline const ::pg_query::Node& RangeTblFunction::funcexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funcexpr) + return _internal_funcexpr(); } -inline void AlterSeqStmt::unsafe_arena_set_allocated_sequence( - ::pg_query::RangeVar* sequence) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.sequence_); +inline void RangeTblFunction::unsafe_arena_set_allocated_funcexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.funcexpr_); } - _impl_.sequence_ = sequence; - if (sequence) { - + _impl_.funcexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterSeqStmt.sequence) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblFunction.funcexpr) } -inline ::pg_query::RangeVar* AlterSeqStmt::release_sequence() { - - ::pg_query::RangeVar* temp = _impl_.sequence_; - _impl_.sequence_ = nullptr; +inline ::pg_query::Node* RangeTblFunction::release_funcexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.funcexpr_; + _impl_.funcexpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* AlterSeqStmt::unsafe_arena_release_sequence() { - // @@protoc_insertion_point(field_release:pg_query.AlterSeqStmt.sequence) - - ::pg_query::RangeVar* temp = _impl_.sequence_; - _impl_.sequence_ = nullptr; +inline ::pg_query::Node* RangeTblFunction::unsafe_arena_release_funcexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RangeTblFunction.funcexpr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.funcexpr_; + _impl_.funcexpr_ = nullptr; return temp; } -inline ::pg_query::RangeVar* AlterSeqStmt::_internal_mutable_sequence() { - - if (_impl_.sequence_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.sequence_ = p; +inline ::pg_query::Node* RangeTblFunction::_internal_mutable_funcexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.funcexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.funcexpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.sequence_; + return _impl_.funcexpr_; } -inline ::pg_query::RangeVar* AlterSeqStmt::mutable_sequence() { - ::pg_query::RangeVar* _msg = _internal_mutable_sequence(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterSeqStmt.sequence) +inline ::pg_query::Node* RangeTblFunction::mutable_funcexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_funcexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funcexpr) return _msg; } -inline void AlterSeqStmt::set_allocated_sequence(::pg_query::RangeVar* sequence) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RangeTblFunction::set_allocated_funcexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.sequence_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.funcexpr_); } - if (sequence) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(sequence); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - sequence = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, sequence, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.sequence_ = sequence; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterSeqStmt.sequence) -} -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int AlterSeqStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int AlterSeqStmt::options_size() const { - return _internal_options_size(); -} -inline void AlterSeqStmt::clear_options() { - _impl_.options_.Clear(); -} -inline ::pg_query::Node* AlterSeqStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterSeqStmt.options) - return _impl_.options_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterSeqStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterSeqStmt.options) - return &_impl_.options_; -} -inline const ::pg_query::Node& AlterSeqStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); -} -inline const ::pg_query::Node& AlterSeqStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterSeqStmt.options) - return _internal_options(index); -} -inline ::pg_query::Node* AlterSeqStmt::_internal_add_options() { - return _impl_.options_.Add(); -} -inline ::pg_query::Node* AlterSeqStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterSeqStmt.options) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterSeqStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterSeqStmt.options) - return _impl_.options_; + _impl_.funcexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblFunction.funcexpr) } -// bool for_identity = 3 [json_name = "for_identity"]; -inline void AlterSeqStmt::clear_for_identity() { - _impl_.for_identity_ = false; +// int32 funccolcount = 2 [json_name = "funccolcount"]; +inline void RangeTblFunction::clear_funccolcount() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funccolcount_ = 0; } -inline bool AlterSeqStmt::_internal_for_identity() const { - return _impl_.for_identity_; +inline ::int32_t RangeTblFunction::funccolcount() const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccolcount) + return _internal_funccolcount(); } -inline bool AlterSeqStmt::for_identity() const { - // @@protoc_insertion_point(field_get:pg_query.AlterSeqStmt.for_identity) - return _internal_for_identity(); +inline void RangeTblFunction::set_funccolcount(::int32_t value) { + _internal_set_funccolcount(value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblFunction.funccolcount) } -inline void AlterSeqStmt::_internal_set_for_identity(bool value) { - - _impl_.for_identity_ = value; +inline ::int32_t RangeTblFunction::_internal_funccolcount() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funccolcount_; } -inline void AlterSeqStmt::set_for_identity(bool value) { - _internal_set_for_identity(value); - // @@protoc_insertion_point(field_set:pg_query.AlterSeqStmt.for_identity) +inline void RangeTblFunction::_internal_set_funccolcount(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.funccolcount_ = value; } -// bool missing_ok = 4 [json_name = "missing_ok"]; -inline void AlterSeqStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; +// repeated .pg_query.Node funccolnames = 3 [json_name = "funccolnames"]; +inline int RangeTblFunction::_internal_funccolnames_size() const { + return _internal_funccolnames().size(); } -inline bool AlterSeqStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline int RangeTblFunction::funccolnames_size() const { + return _internal_funccolnames_size(); } -inline bool AlterSeqStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.AlterSeqStmt.missing_ok) - return _internal_missing_ok(); +inline void RangeTblFunction::clear_funccolnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funccolnames_.Clear(); } -inline void AlterSeqStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline ::pg_query::Node* RangeTblFunction::mutable_funccolnames(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funccolnames) + return _internal_mutable_funccolnames()->Mutable(index); } -inline void AlterSeqStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.AlterSeqStmt.missing_ok) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblFunction::mutable_funccolnames() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funccolnames) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_funccolnames(); } - -// ------------------------------------------------------------------- - -// VariableSetStmt - -// .pg_query.VariableSetKind kind = 1 [json_name = "kind"]; -inline void VariableSetStmt::clear_kind() { - _impl_.kind_ = 0; +inline const ::pg_query::Node& RangeTblFunction::funccolnames(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccolnames) + return _internal_funccolnames().Get(index); } -inline ::pg_query::VariableSetKind VariableSetStmt::_internal_kind() const { - return static_cast< ::pg_query::VariableSetKind >(_impl_.kind_); +inline ::pg_query::Node* RangeTblFunction::add_funccolnames() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_funccolnames()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funccolnames) + return _add; } -inline ::pg_query::VariableSetKind VariableSetStmt::kind() const { - // @@protoc_insertion_point(field_get:pg_query.VariableSetStmt.kind) - return _internal_kind(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblFunction::funccolnames() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funccolnames) + return _internal_funccolnames(); } -inline void VariableSetStmt::_internal_set_kind(::pg_query::VariableSetKind value) { - - _impl_.kind_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblFunction::_internal_funccolnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funccolnames_; } -inline void VariableSetStmt::set_kind(::pg_query::VariableSetKind value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.VariableSetStmt.kind) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblFunction::_internal_mutable_funccolnames() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.funccolnames_; } -// string name = 2 [json_name = "name"]; -inline void VariableSetStmt::clear_name() { - _impl_.name_.ClearToEmpty(); +// repeated .pg_query.Node funccoltypes = 4 [json_name = "funccoltypes"]; +inline int RangeTblFunction::_internal_funccoltypes_size() const { + return _internal_funccoltypes().size(); } -inline const std::string& VariableSetStmt::name() const { - // @@protoc_insertion_point(field_get:pg_query.VariableSetStmt.name) - return _internal_name(); +inline int RangeTblFunction::funccoltypes_size() const { + return _internal_funccoltypes_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void VariableSetStmt::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.VariableSetStmt.name) +inline void RangeTblFunction::clear_funccoltypes() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funccoltypes_.Clear(); } -inline std::string* VariableSetStmt::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.VariableSetStmt.name) - return _s; +inline ::pg_query::Node* RangeTblFunction::mutable_funccoltypes(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funccoltypes) + return _internal_mutable_funccoltypes()->Mutable(index); } -inline const std::string& VariableSetStmt::_internal_name() const { - return _impl_.name_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblFunction::mutable_funccoltypes() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funccoltypes) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_funccoltypes(); } -inline void VariableSetStmt::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& RangeTblFunction::funccoltypes(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccoltypes) + return _internal_funccoltypes().Get(index); +} +inline ::pg_query::Node* RangeTblFunction::add_funccoltypes() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_funccoltypes()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funccoltypes) + return _add; } -inline std::string* VariableSetStmt::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblFunction::funccoltypes() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funccoltypes) + return _internal_funccoltypes(); } -inline std::string* VariableSetStmt::release_name() { - // @@protoc_insertion_point(field_release:pg_query.VariableSetStmt.name) - return _impl_.name_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblFunction::_internal_funccoltypes() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funccoltypes_; } -inline void VariableSetStmt::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.VariableSetStmt.name) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblFunction::_internal_mutable_funccoltypes() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.funccoltypes_; } -// repeated .pg_query.Node args = 3 [json_name = "args"]; -inline int VariableSetStmt::_internal_args_size() const { - return _impl_.args_.size(); +// repeated .pg_query.Node funccoltypmods = 5 [json_name = "funccoltypmods"]; +inline int RangeTblFunction::_internal_funccoltypmods_size() const { + return _internal_funccoltypmods().size(); } -inline int VariableSetStmt::args_size() const { - return _internal_args_size(); +inline int RangeTblFunction::funccoltypmods_size() const { + return _internal_funccoltypmods_size(); } -inline void VariableSetStmt::clear_args() { - _impl_.args_.Clear(); +inline void RangeTblFunction::clear_funccoltypmods() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funccoltypmods_.Clear(); } -inline ::pg_query::Node* VariableSetStmt::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.VariableSetStmt.args) - return _impl_.args_.Mutable(index); +inline ::pg_query::Node* RangeTblFunction::mutable_funccoltypmods(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funccoltypmods) + return _internal_mutable_funccoltypmods()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -VariableSetStmt::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.VariableSetStmt.args) - return &_impl_.args_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblFunction::mutable_funccoltypmods() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funccoltypmods) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_funccoltypmods(); } -inline const ::pg_query::Node& VariableSetStmt::_internal_args(int index) const { - return _impl_.args_.Get(index); +inline const ::pg_query::Node& RangeTblFunction::funccoltypmods(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccoltypmods) + return _internal_funccoltypmods().Get(index); } -inline const ::pg_query::Node& VariableSetStmt::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.VariableSetStmt.args) - return _internal_args(index); +inline ::pg_query::Node* RangeTblFunction::add_funccoltypmods() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_funccoltypmods()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funccoltypmods) + return _add; } -inline ::pg_query::Node* VariableSetStmt::_internal_add_args() { - return _impl_.args_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblFunction::funccoltypmods() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funccoltypmods) + return _internal_funccoltypmods(); } -inline ::pg_query::Node* VariableSetStmt::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.VariableSetStmt.args) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblFunction::_internal_funccoltypmods() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funccoltypmods_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -VariableSetStmt::args() const { - // @@protoc_insertion_point(field_list:pg_query.VariableSetStmt.args) - return _impl_.args_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblFunction::_internal_mutable_funccoltypmods() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.funccoltypmods_; } -// bool is_local = 4 [json_name = "is_local"]; -inline void VariableSetStmt::clear_is_local() { - _impl_.is_local_ = false; +// repeated .pg_query.Node funccolcollations = 6 [json_name = "funccolcollations"]; +inline int RangeTblFunction::_internal_funccolcollations_size() const { + return _internal_funccolcollations().size(); } -inline bool VariableSetStmt::_internal_is_local() const { - return _impl_.is_local_; +inline int RangeTblFunction::funccolcollations_size() const { + return _internal_funccolcollations_size(); } -inline bool VariableSetStmt::is_local() const { - // @@protoc_insertion_point(field_get:pg_query.VariableSetStmt.is_local) - return _internal_is_local(); +inline void RangeTblFunction::clear_funccolcollations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funccolcollations_.Clear(); } -inline void VariableSetStmt::_internal_set_is_local(bool value) { - - _impl_.is_local_ = value; +inline ::pg_query::Node* RangeTblFunction::mutable_funccolcollations(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funccolcollations) + return _internal_mutable_funccolcollations()->Mutable(index); } -inline void VariableSetStmt::set_is_local(bool value) { - _internal_set_is_local(value); - // @@protoc_insertion_point(field_set:pg_query.VariableSetStmt.is_local) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RangeTblFunction::mutable_funccolcollations() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funccolcollations) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_funccolcollations(); } - -// ------------------------------------------------------------------- - -// VariableShowStmt - -// string name = 1 [json_name = "name"]; -inline void VariableShowStmt::clear_name() { - _impl_.name_.ClearToEmpty(); +inline const ::pg_query::Node& RangeTblFunction::funccolcollations(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccolcollations) + return _internal_funccolcollations().Get(index); } -inline const std::string& VariableShowStmt::name() const { - // @@protoc_insertion_point(field_get:pg_query.VariableShowStmt.name) - return _internal_name(); +inline ::pg_query::Node* RangeTblFunction::add_funccolcollations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_funccolcollations()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funccolcollations) + return _add; } -template -inline PROTOBUF_ALWAYS_INLINE -void VariableShowStmt::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.VariableShowStmt.name) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RangeTblFunction::funccolcollations() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funccolcollations) + return _internal_funccolcollations(); } -inline std::string* VariableShowStmt::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.VariableShowStmt.name) - return _s; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RangeTblFunction::_internal_funccolcollations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funccolcollations_; } -inline const std::string& VariableShowStmt::_internal_name() const { - return _impl_.name_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RangeTblFunction::_internal_mutable_funccolcollations() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.funccolcollations_; } -inline void VariableShowStmt::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); + +// repeated uint64 funcparams = 7 [json_name = "funcparams"]; +inline int RangeTblFunction::_internal_funcparams_size() const { + return _internal_funcparams().size(); } -inline std::string* VariableShowStmt::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline int RangeTblFunction::funcparams_size() const { + return _internal_funcparams_size(); } -inline std::string* VariableShowStmt::release_name() { - // @@protoc_insertion_point(field_release:pg_query.VariableShowStmt.name) - return _impl_.name_.Release(); +inline void RangeTblFunction::clear_funcparams() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcparams_.Clear(); } -inline void VariableShowStmt::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.VariableShowStmt.name) +inline ::uint64_t RangeTblFunction::funcparams(int index) const { + // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funcparams) + return _internal_funcparams().Get(index); } - -// ------------------------------------------------------------------- - -// DiscardStmt - -// .pg_query.DiscardMode target = 1 [json_name = "target"]; -inline void DiscardStmt::clear_target() { - _impl_.target_ = 0; +inline void RangeTblFunction::set_funcparams(int index, ::uint64_t value) { + _internal_mutable_funcparams()->Set(index, value); + // @@protoc_insertion_point(field_set:pg_query.RangeTblFunction.funcparams) } -inline ::pg_query::DiscardMode DiscardStmt::_internal_target() const { - return static_cast< ::pg_query::DiscardMode >(_impl_.target_); +inline void RangeTblFunction::add_funcparams(::uint64_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _internal_mutable_funcparams()->Add(value); + // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funcparams) } -inline ::pg_query::DiscardMode DiscardStmt::target() const { - // @@protoc_insertion_point(field_get:pg_query.DiscardStmt.target) - return _internal_target(); +inline const ::google::protobuf::RepeatedField<::uint64_t>& RangeTblFunction::funcparams() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funcparams) + return _internal_funcparams(); } -inline void DiscardStmt::_internal_set_target(::pg_query::DiscardMode value) { - - _impl_.target_ = value; +inline ::google::protobuf::RepeatedField<::uint64_t>* RangeTblFunction::mutable_funcparams() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funcparams) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_funcparams(); } -inline void DiscardStmt::set_target(::pg_query::DiscardMode value) { - _internal_set_target(value); - // @@protoc_insertion_point(field_set:pg_query.DiscardStmt.target) +inline const ::google::protobuf::RepeatedField<::uint64_t>& RangeTblFunction::_internal_funcparams() + const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcparams_; +} +inline ::google::protobuf::RepeatedField<::uint64_t>* RangeTblFunction::_internal_mutable_funcparams() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.funcparams_; } // ------------------------------------------------------------------- -// CreateTrigStmt +// TableSampleClause -// bool replace = 1 [json_name = "replace"]; -inline void CreateTrigStmt::clear_replace() { - _impl_.replace_ = false; +// uint32 tsmhandler = 1 [json_name = "tsmhandler"]; +inline void TableSampleClause::clear_tsmhandler() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tsmhandler_ = 0u; } -inline bool CreateTrigStmt::_internal_replace() const { - return _impl_.replace_; +inline ::uint32_t TableSampleClause::tsmhandler() const { + // @@protoc_insertion_point(field_get:pg_query.TableSampleClause.tsmhandler) + return _internal_tsmhandler(); } -inline bool CreateTrigStmt::replace() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.replace) - return _internal_replace(); +inline void TableSampleClause::set_tsmhandler(::uint32_t value) { + _internal_set_tsmhandler(value); + // @@protoc_insertion_point(field_set:pg_query.TableSampleClause.tsmhandler) } -inline void CreateTrigStmt::_internal_set_replace(bool value) { - - _impl_.replace_ = value; +inline ::uint32_t TableSampleClause::_internal_tsmhandler() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.tsmhandler_; } -inline void CreateTrigStmt::set_replace(bool value) { - _internal_set_replace(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.replace) +inline void TableSampleClause::_internal_set_tsmhandler(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tsmhandler_ = value; } -// bool isconstraint = 2 [json_name = "isconstraint"]; -inline void CreateTrigStmt::clear_isconstraint() { - _impl_.isconstraint_ = false; -} -inline bool CreateTrigStmt::_internal_isconstraint() const { - return _impl_.isconstraint_; -} -inline bool CreateTrigStmt::isconstraint() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.isconstraint) - return _internal_isconstraint(); -} -inline void CreateTrigStmt::_internal_set_isconstraint(bool value) { - - _impl_.isconstraint_ = value; -} -inline void CreateTrigStmt::set_isconstraint(bool value) { - _internal_set_isconstraint(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.isconstraint) +// repeated .pg_query.Node args = 2 [json_name = "args"]; +inline int TableSampleClause::_internal_args_size() const { + return _internal_args().size(); } - -// string trigname = 3 [json_name = "trigname"]; -inline void CreateTrigStmt::clear_trigname() { - _impl_.trigname_.ClearToEmpty(); +inline int TableSampleClause::args_size() const { + return _internal_args_size(); } -inline const std::string& CreateTrigStmt::trigname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.trigname) - return _internal_trigname(); +inline void TableSampleClause::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateTrigStmt::set_trigname(ArgT0&& arg0, ArgT... args) { - - _impl_.trigname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.trigname) +inline ::pg_query::Node* TableSampleClause::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TableSampleClause.args) + return _internal_mutable_args()->Mutable(index); } -inline std::string* CreateTrigStmt::mutable_trigname() { - std::string* _s = _internal_mutable_trigname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.trigname) - return _s; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TableSampleClause::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TableSampleClause.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } -inline const std::string& CreateTrigStmt::_internal_trigname() const { - return _impl_.trigname_.Get(); +inline const ::pg_query::Node& TableSampleClause::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableSampleClause.args) + return _internal_args().Get(index); } -inline void CreateTrigStmt::_internal_set_trigname(const std::string& value) { - - _impl_.trigname_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Node* TableSampleClause::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TableSampleClause.args) + return _add; } -inline std::string* CreateTrigStmt::_internal_mutable_trigname() { - - return _impl_.trigname_.Mutable(GetArenaForAllocation()); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TableSampleClause::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TableSampleClause.args) + return _internal_args(); } -inline std::string* CreateTrigStmt::release_trigname() { - // @@protoc_insertion_point(field_release:pg_query.CreateTrigStmt.trigname) - return _impl_.trigname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TableSampleClause::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline void CreateTrigStmt::set_allocated_trigname(std::string* trigname) { - if (trigname != nullptr) { - - } else { - - } - _impl_.trigname_.SetAllocated(trigname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.trigname_.IsDefault()) { - _impl_.trigname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTrigStmt.trigname) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TableSampleClause::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// .pg_query.RangeVar relation = 4 [json_name = "relation"]; -inline bool CreateTrigStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; -} -inline bool CreateTrigStmt::has_relation() const { - return _internal_has_relation(); +// .pg_query.Node repeatable = 3 [json_name = "repeatable"]; +inline bool TableSampleClause::has_repeatable() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.repeatable_ != nullptr); + return value; } -inline void CreateTrigStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void TableSampleClause::clear_repeatable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.repeatable_ != nullptr) _impl_.repeatable_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RangeVar& CreateTrigStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::Node& TableSampleClause::_internal_repeatable() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.repeatable_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RangeVar& CreateTrigStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.relation) - return _internal_relation(); +inline const ::pg_query::Node& TableSampleClause::repeatable() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TableSampleClause.repeatable) + return _internal_repeatable(); } -inline void CreateTrigStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void TableSampleClause::unsafe_arena_set_allocated_repeatable(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.repeatable_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.repeatable_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTrigStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TableSampleClause.repeatable) } -inline ::pg_query::RangeVar* CreateTrigStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* TableSampleClause::release_repeatable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.repeatable_; + _impl_.repeatable_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* CreateTrigStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.CreateTrigStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* TableSampleClause::unsafe_arena_release_repeatable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TableSampleClause.repeatable) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.repeatable_; + _impl_.repeatable_ = nullptr; return temp; } -inline ::pg_query::RangeVar* CreateTrigStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::Node* TableSampleClause::_internal_mutable_repeatable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.repeatable_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.repeatable_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.relation_; + return _impl_.repeatable_; } -inline ::pg_query::RangeVar* CreateTrigStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.relation) +inline ::pg_query::Node* TableSampleClause::mutable_repeatable() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_repeatable(); + // @@protoc_insertion_point(field_mutable:pg_query.TableSampleClause.repeatable) return _msg; } -inline void CreateTrigStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void TableSampleClause::set_allocated_repeatable(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.repeatable_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTrigStmt.relation) -} -// repeated .pg_query.Node funcname = 5 [json_name = "funcname"]; -inline int CreateTrigStmt::_internal_funcname_size() const { - return _impl_.funcname_.size(); -} -inline int CreateTrigStmt::funcname_size() const { - return _internal_funcname_size(); -} -inline void CreateTrigStmt::clear_funcname() { - _impl_.funcname_.Clear(); -} -inline ::pg_query::Node* CreateTrigStmt::mutable_funcname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.funcname) - return _impl_.funcname_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateTrigStmt::mutable_funcname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTrigStmt.funcname) - return &_impl_.funcname_; -} -inline const ::pg_query::Node& CreateTrigStmt::_internal_funcname(int index) const { - return _impl_.funcname_.Get(index); -} -inline const ::pg_query::Node& CreateTrigStmt::funcname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.funcname) - return _internal_funcname(index); -} -inline ::pg_query::Node* CreateTrigStmt::_internal_add_funcname() { - return _impl_.funcname_.Add(); -} -inline ::pg_query::Node* CreateTrigStmt::add_funcname() { - ::pg_query::Node* _add = _internal_add_funcname(); - // @@protoc_insertion_point(field_add:pg_query.CreateTrigStmt.funcname) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateTrigStmt::funcname() const { - // @@protoc_insertion_point(field_list:pg_query.CreateTrigStmt.funcname) - return _impl_.funcname_; + _impl_.repeatable_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.TableSampleClause.repeatable) } -// repeated .pg_query.Node args = 6 [json_name = "args"]; -inline int CreateTrigStmt::_internal_args_size() const { - return _impl_.args_.size(); -} -inline int CreateTrigStmt::args_size() const { - return _internal_args_size(); -} -inline void CreateTrigStmt::clear_args() { - _impl_.args_.Clear(); -} -inline ::pg_query::Node* CreateTrigStmt::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.args) - return _impl_.args_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateTrigStmt::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTrigStmt.args) - return &_impl_.args_; -} -inline const ::pg_query::Node& CreateTrigStmt::_internal_args(int index) const { - return _impl_.args_.Get(index); -} -inline const ::pg_query::Node& CreateTrigStmt::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.args) - return _internal_args(index); -} -inline ::pg_query::Node* CreateTrigStmt::_internal_add_args() { - return _impl_.args_.Add(); -} -inline ::pg_query::Node* CreateTrigStmt::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.CreateTrigStmt.args) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateTrigStmt::args() const { - // @@protoc_insertion_point(field_list:pg_query.CreateTrigStmt.args) - return _impl_.args_; -} +// ------------------------------------------------------------------- -// bool row = 7 [json_name = "row"]; -inline void CreateTrigStmt::clear_row() { - _impl_.row_ = false; +// WithCheckOption + +// .pg_query.WCOKind kind = 1 [json_name = "kind"]; +inline void WithCheckOption::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; } -inline bool CreateTrigStmt::_internal_row() const { - return _impl_.row_; +inline ::pg_query::WCOKind WithCheckOption::kind() const { + // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.kind) + return _internal_kind(); } -inline bool CreateTrigStmt::row() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.row) - return _internal_row(); +inline void WithCheckOption::set_kind(::pg_query::WCOKind value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.WithCheckOption.kind) } -inline void CreateTrigStmt::_internal_set_row(bool value) { - - _impl_.row_ = value; +inline ::pg_query::WCOKind WithCheckOption::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::WCOKind>(_impl_.kind_); } -inline void CreateTrigStmt::set_row(bool value) { - _internal_set_row(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.row) +inline void WithCheckOption::_internal_set_kind(::pg_query::WCOKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; } -// int32 timing = 8 [json_name = "timing"]; -inline void CreateTrigStmt::clear_timing() { - _impl_.timing_ = 0; -} -inline int32_t CreateTrigStmt::_internal_timing() const { - return _impl_.timing_; +// string relname = 2 [json_name = "relname"]; +inline void WithCheckOption::clear_relname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relname_.ClearToEmpty(); } -inline int32_t CreateTrigStmt::timing() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.timing) - return _internal_timing(); +inline const std::string& WithCheckOption::relname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.relname) + return _internal_relname(); } -inline void CreateTrigStmt::_internal_set_timing(int32_t value) { - - _impl_.timing_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void WithCheckOption::set_relname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.WithCheckOption.relname) } -inline void CreateTrigStmt::set_timing(int32_t value) { - _internal_set_timing(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.timing) +inline std::string* WithCheckOption::mutable_relname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_relname(); + // @@protoc_insertion_point(field_mutable:pg_query.WithCheckOption.relname) + return _s; } - -// int32 events = 9 [json_name = "events"]; -inline void CreateTrigStmt::clear_events() { - _impl_.events_ = 0; +inline const std::string& WithCheckOption::_internal_relname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relname_.Get(); } -inline int32_t CreateTrigStmt::_internal_events() const { - return _impl_.events_; +inline void WithCheckOption::_internal_set_relname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relname_.Set(value, GetArena()); } -inline int32_t CreateTrigStmt::events() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.events) - return _internal_events(); +inline std::string* WithCheckOption::_internal_mutable_relname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.relname_.Mutable( GetArena()); } -inline void CreateTrigStmt::_internal_set_events(int32_t value) { - - _impl_.events_ = value; +inline std::string* WithCheckOption::release_relname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WithCheckOption.relname) + return _impl_.relname_.Release(); } -inline void CreateTrigStmt::set_events(int32_t value) { - _internal_set_events(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.events) +inline void WithCheckOption::set_allocated_relname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.relname_.IsDefault()) { + _impl_.relname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.WithCheckOption.relname) } -// repeated .pg_query.Node columns = 10 [json_name = "columns"]; -inline int CreateTrigStmt::_internal_columns_size() const { - return _impl_.columns_.size(); -} -inline int CreateTrigStmt::columns_size() const { - return _internal_columns_size(); +// string polname = 3 [json_name = "polname"]; +inline void WithCheckOption::clear_polname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.polname_.ClearToEmpty(); } -inline void CreateTrigStmt::clear_columns() { - _impl_.columns_.Clear(); +inline const std::string& WithCheckOption::polname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.polname) + return _internal_polname(); } -inline ::pg_query::Node* CreateTrigStmt::mutable_columns(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.columns) - return _impl_.columns_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void WithCheckOption::set_polname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.polname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.WithCheckOption.polname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateTrigStmt::mutable_columns() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTrigStmt.columns) - return &_impl_.columns_; +inline std::string* WithCheckOption::mutable_polname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_polname(); + // @@protoc_insertion_point(field_mutable:pg_query.WithCheckOption.polname) + return _s; } -inline const ::pg_query::Node& CreateTrigStmt::_internal_columns(int index) const { - return _impl_.columns_.Get(index); +inline const std::string& WithCheckOption::_internal_polname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.polname_.Get(); } -inline const ::pg_query::Node& CreateTrigStmt::columns(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.columns) - return _internal_columns(index); +inline void WithCheckOption::_internal_set_polname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.polname_.Set(value, GetArena()); } -inline ::pg_query::Node* CreateTrigStmt::_internal_add_columns() { - return _impl_.columns_.Add(); +inline std::string* WithCheckOption::_internal_mutable_polname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.polname_.Mutable( GetArena()); } -inline ::pg_query::Node* CreateTrigStmt::add_columns() { - ::pg_query::Node* _add = _internal_add_columns(); - // @@protoc_insertion_point(field_add:pg_query.CreateTrigStmt.columns) - return _add; +inline std::string* WithCheckOption::release_polname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WithCheckOption.polname) + return _impl_.polname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateTrigStmt::columns() const { - // @@protoc_insertion_point(field_list:pg_query.CreateTrigStmt.columns) - return _impl_.columns_; +inline void WithCheckOption::set_allocated_polname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.polname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.polname_.IsDefault()) { + _impl_.polname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.WithCheckOption.polname) } -// .pg_query.Node when_clause = 11 [json_name = "whenClause"]; -inline bool CreateTrigStmt::_internal_has_when_clause() const { - return this != internal_default_instance() && _impl_.when_clause_ != nullptr; -} -inline bool CreateTrigStmt::has_when_clause() const { - return _internal_has_when_clause(); +// .pg_query.Node qual = 4 [json_name = "qual"]; +inline bool WithCheckOption::has_qual() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.qual_ != nullptr); + return value; } -inline void CreateTrigStmt::clear_when_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.when_clause_ != nullptr) { - delete _impl_.when_clause_; - } - _impl_.when_clause_ = nullptr; +inline void WithCheckOption::clear_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.qual_ != nullptr) _impl_.qual_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& CreateTrigStmt::_internal_when_clause() const { - const ::pg_query::Node* p = _impl_.when_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& WithCheckOption::_internal_qual() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.qual_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& CreateTrigStmt::when_clause() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.when_clause) - return _internal_when_clause(); +inline const ::pg_query::Node& WithCheckOption::qual() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.qual) + return _internal_qual(); } -inline void CreateTrigStmt::unsafe_arena_set_allocated_when_clause( - ::pg_query::Node* when_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.when_clause_); +inline void WithCheckOption::unsafe_arena_set_allocated_qual(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.qual_); } - _impl_.when_clause_ = when_clause; - if (when_clause) { - + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTrigStmt.when_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WithCheckOption.qual) } -inline ::pg_query::Node* CreateTrigStmt::release_when_clause() { - - ::pg_query::Node* temp = _impl_.when_clause_; - _impl_.when_clause_ = nullptr; +inline ::pg_query::Node* WithCheckOption::release_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.qual_; + _impl_.qual_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CreateTrigStmt::unsafe_arena_release_when_clause() { - // @@protoc_insertion_point(field_release:pg_query.CreateTrigStmt.when_clause) - - ::pg_query::Node* temp = _impl_.when_clause_; - _impl_.when_clause_ = nullptr; +inline ::pg_query::Node* WithCheckOption::unsafe_arena_release_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WithCheckOption.qual) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.qual_; + _impl_.qual_ = nullptr; return temp; } -inline ::pg_query::Node* CreateTrigStmt::_internal_mutable_when_clause() { - - if (_impl_.when_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.when_clause_ = p; +inline ::pg_query::Node* WithCheckOption::_internal_mutable_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.qual_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.when_clause_; + return _impl_.qual_; } -inline ::pg_query::Node* CreateTrigStmt::mutable_when_clause() { - ::pg_query::Node* _msg = _internal_mutable_when_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.when_clause) +inline ::pg_query::Node* WithCheckOption::mutable_qual() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_qual(); + // @@protoc_insertion_point(field_mutable:pg_query.WithCheckOption.qual) return _msg; } -inline void CreateTrigStmt::set_allocated_when_clause(::pg_query::Node* when_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void WithCheckOption::set_allocated_qual(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.when_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.qual_); } - if (when_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(when_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - when_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, when_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.when_clause_ = when_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTrigStmt.when_clause) + + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.WithCheckOption.qual) } -// repeated .pg_query.Node transition_rels = 12 [json_name = "transitionRels"]; -inline int CreateTrigStmt::_internal_transition_rels_size() const { - return _impl_.transition_rels_.size(); +// bool cascaded = 5 [json_name = "cascaded"]; +inline void WithCheckOption::clear_cascaded() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cascaded_ = false; } -inline int CreateTrigStmt::transition_rels_size() const { - return _internal_transition_rels_size(); +inline bool WithCheckOption::cascaded() const { + // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.cascaded) + return _internal_cascaded(); } -inline void CreateTrigStmt::clear_transition_rels() { - _impl_.transition_rels_.Clear(); +inline void WithCheckOption::set_cascaded(bool value) { + _internal_set_cascaded(value); + // @@protoc_insertion_point(field_set:pg_query.WithCheckOption.cascaded) } -inline ::pg_query::Node* CreateTrigStmt::mutable_transition_rels(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.transition_rels) - return _impl_.transition_rels_.Mutable(index); +inline bool WithCheckOption::_internal_cascaded() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cascaded_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateTrigStmt::mutable_transition_rels() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTrigStmt.transition_rels) - return &_impl_.transition_rels_; +inline void WithCheckOption::_internal_set_cascaded(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cascaded_ = value; } -inline const ::pg_query::Node& CreateTrigStmt::_internal_transition_rels(int index) const { - return _impl_.transition_rels_.Get(index); + +// ------------------------------------------------------------------- + +// SortGroupClause + +// uint32 tle_sort_group_ref = 1 [json_name = "tleSortGroupRef"]; +inline void SortGroupClause::clear_tle_sort_group_ref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tle_sort_group_ref_ = 0u; } -inline const ::pg_query::Node& CreateTrigStmt::transition_rels(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.transition_rels) - return _internal_transition_rels(index); +inline ::uint32_t SortGroupClause::tle_sort_group_ref() const { + // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.tle_sort_group_ref) + return _internal_tle_sort_group_ref(); } -inline ::pg_query::Node* CreateTrigStmt::_internal_add_transition_rels() { - return _impl_.transition_rels_.Add(); +inline void SortGroupClause::set_tle_sort_group_ref(::uint32_t value) { + _internal_set_tle_sort_group_ref(value); + // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.tle_sort_group_ref) } -inline ::pg_query::Node* CreateTrigStmt::add_transition_rels() { - ::pg_query::Node* _add = _internal_add_transition_rels(); - // @@protoc_insertion_point(field_add:pg_query.CreateTrigStmt.transition_rels) - return _add; +inline ::uint32_t SortGroupClause::_internal_tle_sort_group_ref() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.tle_sort_group_ref_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateTrigStmt::transition_rels() const { - // @@protoc_insertion_point(field_list:pg_query.CreateTrigStmt.transition_rels) - return _impl_.transition_rels_; +inline void SortGroupClause::_internal_set_tle_sort_group_ref(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tle_sort_group_ref_ = value; } -// bool deferrable = 13 [json_name = "deferrable"]; -inline void CreateTrigStmt::clear_deferrable() { - _impl_.deferrable_ = false; +// uint32 eqop = 2 [json_name = "eqop"]; +inline void SortGroupClause::clear_eqop() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.eqop_ = 0u; } -inline bool CreateTrigStmt::_internal_deferrable() const { - return _impl_.deferrable_; +inline ::uint32_t SortGroupClause::eqop() const { + // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.eqop) + return _internal_eqop(); } -inline bool CreateTrigStmt::deferrable() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.deferrable) - return _internal_deferrable(); +inline void SortGroupClause::set_eqop(::uint32_t value) { + _internal_set_eqop(value); + // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.eqop) } -inline void CreateTrigStmt::_internal_set_deferrable(bool value) { - - _impl_.deferrable_ = value; +inline ::uint32_t SortGroupClause::_internal_eqop() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.eqop_; } -inline void CreateTrigStmt::set_deferrable(bool value) { - _internal_set_deferrable(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.deferrable) +inline void SortGroupClause::_internal_set_eqop(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.eqop_ = value; } - -// bool initdeferred = 14 [json_name = "initdeferred"]; -inline void CreateTrigStmt::clear_initdeferred() { - _impl_.initdeferred_ = false; + +// uint32 sortop = 3 [json_name = "sortop"]; +inline void SortGroupClause::clear_sortop() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sortop_ = 0u; } -inline bool CreateTrigStmt::_internal_initdeferred() const { - return _impl_.initdeferred_; +inline ::uint32_t SortGroupClause::sortop() const { + // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.sortop) + return _internal_sortop(); } -inline bool CreateTrigStmt::initdeferred() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.initdeferred) - return _internal_initdeferred(); +inline void SortGroupClause::set_sortop(::uint32_t value) { + _internal_set_sortop(value); + // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.sortop) } -inline void CreateTrigStmt::_internal_set_initdeferred(bool value) { - - _impl_.initdeferred_ = value; +inline ::uint32_t SortGroupClause::_internal_sortop() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.sortop_; } -inline void CreateTrigStmt::set_initdeferred(bool value) { - _internal_set_initdeferred(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.initdeferred) +inline void SortGroupClause::_internal_set_sortop(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.sortop_ = value; } -// .pg_query.RangeVar constrrel = 15 [json_name = "constrrel"]; -inline bool CreateTrigStmt::_internal_has_constrrel() const { - return this != internal_default_instance() && _impl_.constrrel_ != nullptr; -} -inline bool CreateTrigStmt::has_constrrel() const { - return _internal_has_constrrel(); +// bool nulls_first = 4 [json_name = "nulls_first"]; +inline void SortGroupClause::clear_nulls_first() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.nulls_first_ = false; } -inline void CreateTrigStmt::clear_constrrel() { - if (GetArenaForAllocation() == nullptr && _impl_.constrrel_ != nullptr) { - delete _impl_.constrrel_; - } - _impl_.constrrel_ = nullptr; +inline bool SortGroupClause::nulls_first() const { + // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.nulls_first) + return _internal_nulls_first(); } -inline const ::pg_query::RangeVar& CreateTrigStmt::_internal_constrrel() const { - const ::pg_query::RangeVar* p = _impl_.constrrel_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline void SortGroupClause::set_nulls_first(bool value) { + _internal_set_nulls_first(value); + // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.nulls_first) } -inline const ::pg_query::RangeVar& CreateTrigStmt::constrrel() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.constrrel) - return _internal_constrrel(); +inline bool SortGroupClause::_internal_nulls_first() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.nulls_first_; } -inline void CreateTrigStmt::unsafe_arena_set_allocated_constrrel( - ::pg_query::RangeVar* constrrel) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.constrrel_); - } - _impl_.constrrel_ = constrrel; - if (constrrel) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTrigStmt.constrrel) +inline void SortGroupClause::_internal_set_nulls_first(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.nulls_first_ = value; } -inline ::pg_query::RangeVar* CreateTrigStmt::release_constrrel() { - - ::pg_query::RangeVar* temp = _impl_.constrrel_; - _impl_.constrrel_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// bool hashable = 5 [json_name = "hashable"]; +inline void SortGroupClause::clear_hashable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.hashable_ = false; } -inline ::pg_query::RangeVar* CreateTrigStmt::unsafe_arena_release_constrrel() { - // @@protoc_insertion_point(field_release:pg_query.CreateTrigStmt.constrrel) - - ::pg_query::RangeVar* temp = _impl_.constrrel_; - _impl_.constrrel_ = nullptr; - return temp; +inline bool SortGroupClause::hashable() const { + // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.hashable) + return _internal_hashable(); } -inline ::pg_query::RangeVar* CreateTrigStmt::_internal_mutable_constrrel() { - - if (_impl_.constrrel_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.constrrel_ = p; - } - return _impl_.constrrel_; +inline void SortGroupClause::set_hashable(bool value) { + _internal_set_hashable(value); + // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.hashable) } -inline ::pg_query::RangeVar* CreateTrigStmt::mutable_constrrel() { - ::pg_query::RangeVar* _msg = _internal_mutable_constrrel(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.constrrel) - return _msg; +inline bool SortGroupClause::_internal_hashable() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.hashable_; } -inline void CreateTrigStmt::set_allocated_constrrel(::pg_query::RangeVar* constrrel) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.constrrel_; - } - if (constrrel) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(constrrel); - if (message_arena != submessage_arena) { - constrrel = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, constrrel, submessage_arena); - } - - } else { - - } - _impl_.constrrel_ = constrrel; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTrigStmt.constrrel) +inline void SortGroupClause::_internal_set_hashable(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.hashable_ = value; } // ------------------------------------------------------------------- -// CreatePLangStmt +// GroupingSet -// bool replace = 1 [json_name = "replace"]; -inline void CreatePLangStmt::clear_replace() { - _impl_.replace_ = false; +// .pg_query.GroupingSetKind kind = 1 [json_name = "kind"]; +inline void GroupingSet::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; } -inline bool CreatePLangStmt::_internal_replace() const { - return _impl_.replace_; +inline ::pg_query::GroupingSetKind GroupingSet::kind() const { + // @@protoc_insertion_point(field_get:pg_query.GroupingSet.kind) + return _internal_kind(); } -inline bool CreatePLangStmt::replace() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.replace) - return _internal_replace(); +inline void GroupingSet::set_kind(::pg_query::GroupingSetKind value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.GroupingSet.kind) } -inline void CreatePLangStmt::_internal_set_replace(bool value) { - - _impl_.replace_ = value; +inline ::pg_query::GroupingSetKind GroupingSet::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::GroupingSetKind>(_impl_.kind_); } -inline void CreatePLangStmt::set_replace(bool value) { - _internal_set_replace(value); - // @@protoc_insertion_point(field_set:pg_query.CreatePLangStmt.replace) +inline void GroupingSet::_internal_set_kind(::pg_query::GroupingSetKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; } -// string plname = 2 [json_name = "plname"]; -inline void CreatePLangStmt::clear_plname() { - _impl_.plname_.ClearToEmpty(); +// repeated .pg_query.Node content = 2 [json_name = "content"]; +inline int GroupingSet::_internal_content_size() const { + return _internal_content().size(); } -inline const std::string& CreatePLangStmt::plname() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.plname) - return _internal_plname(); +inline int GroupingSet::content_size() const { + return _internal_content_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreatePLangStmt::set_plname(ArgT0&& arg0, ArgT... args) { - - _impl_.plname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreatePLangStmt.plname) +inline void GroupingSet::clear_content() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.content_.Clear(); } -inline std::string* CreatePLangStmt::mutable_plname() { - std::string* _s = _internal_mutable_plname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreatePLangStmt.plname) - return _s; +inline ::pg_query::Node* GroupingSet::mutable_content(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.GroupingSet.content) + return _internal_mutable_content()->Mutable(index); } -inline const std::string& CreatePLangStmt::_internal_plname() const { - return _impl_.plname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* GroupingSet::mutable_content() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.GroupingSet.content) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_content(); } -inline void CreatePLangStmt::_internal_set_plname(const std::string& value) { - - _impl_.plname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& GroupingSet::content(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GroupingSet.content) + return _internal_content().Get(index); } -inline std::string* CreatePLangStmt::_internal_mutable_plname() { - - return _impl_.plname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* GroupingSet::add_content() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_content()->Add(); + // @@protoc_insertion_point(field_add:pg_query.GroupingSet.content) + return _add; } -inline std::string* CreatePLangStmt::release_plname() { - // @@protoc_insertion_point(field_release:pg_query.CreatePLangStmt.plname) - return _impl_.plname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& GroupingSet::content() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.GroupingSet.content) + return _internal_content(); } -inline void CreatePLangStmt::set_allocated_plname(std::string* plname) { - if (plname != nullptr) { - - } else { - - } - _impl_.plname_.SetAllocated(plname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.plname_.IsDefault()) { - _impl_.plname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePLangStmt.plname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +GroupingSet::_internal_content() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.content_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +GroupingSet::_internal_mutable_content() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.content_; } -// repeated .pg_query.Node plhandler = 3 [json_name = "plhandler"]; -inline int CreatePLangStmt::_internal_plhandler_size() const { - return _impl_.plhandler_.size(); +// int32 location = 3 [json_name = "location"]; +inline void GroupingSet::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline int CreatePLangStmt::plhandler_size() const { - return _internal_plhandler_size(); +inline ::int32_t GroupingSet::location() const { + // @@protoc_insertion_point(field_get:pg_query.GroupingSet.location) + return _internal_location(); } -inline void CreatePLangStmt::clear_plhandler() { - _impl_.plhandler_.Clear(); +inline void GroupingSet::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.GroupingSet.location) } -inline ::pg_query::Node* CreatePLangStmt::mutable_plhandler(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreatePLangStmt.plhandler) - return _impl_.plhandler_.Mutable(index); +inline ::int32_t GroupingSet::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreatePLangStmt::mutable_plhandler() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePLangStmt.plhandler) - return &_impl_.plhandler_; +inline void GroupingSet::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -inline const ::pg_query::Node& CreatePLangStmt::_internal_plhandler(int index) const { - return _impl_.plhandler_.Get(index); + +// ------------------------------------------------------------------- + +// WindowClause + +// string name = 1 [json_name = "name"]; +inline void WindowClause::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline const ::pg_query::Node& CreatePLangStmt::plhandler(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.plhandler) - return _internal_plhandler(index); +inline const std::string& WindowClause::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.name) + return _internal_name(); } -inline ::pg_query::Node* CreatePLangStmt::_internal_add_plhandler() { - return _impl_.plhandler_.Add(); +template +inline PROTOBUF_ALWAYS_INLINE void WindowClause::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.name) } -inline ::pg_query::Node* CreatePLangStmt::add_plhandler() { - ::pg_query::Node* _add = _internal_add_plhandler(); - // @@protoc_insertion_point(field_add:pg_query.CreatePLangStmt.plhandler) - return _add; +inline std::string* WindowClause::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.name) + return _s; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreatePLangStmt::plhandler() const { - // @@protoc_insertion_point(field_list:pg_query.CreatePLangStmt.plhandler) - return _impl_.plhandler_; +inline const std::string& WindowClause::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } - -// repeated .pg_query.Node plinline = 4 [json_name = "plinline"]; -inline int CreatePLangStmt::_internal_plinline_size() const { - return _impl_.plinline_.size(); +inline void WindowClause::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline int CreatePLangStmt::plinline_size() const { - return _internal_plinline_size(); +inline std::string* WindowClause::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline void CreatePLangStmt::clear_plinline() { - _impl_.plinline_.Clear(); +inline std::string* WindowClause::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowClause.name) + return _impl_.name_.Release(); } -inline ::pg_query::Node* CreatePLangStmt::mutable_plinline(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreatePLangStmt.plinline) - return _impl_.plinline_.Mutable(index); +inline void WindowClause::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowClause.name) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreatePLangStmt::mutable_plinline() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePLangStmt.plinline) - return &_impl_.plinline_; + +// string refname = 2 [json_name = "refname"]; +inline void WindowClause::clear_refname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refname_.ClearToEmpty(); } -inline const ::pg_query::Node& CreatePLangStmt::_internal_plinline(int index) const { - return _impl_.plinline_.Get(index); +inline const std::string& WindowClause::refname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.refname) + return _internal_refname(); } -inline const ::pg_query::Node& CreatePLangStmt::plinline(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.plinline) - return _internal_plinline(index); +template +inline PROTOBUF_ALWAYS_INLINE void WindowClause::set_refname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.refname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.refname) } -inline ::pg_query::Node* CreatePLangStmt::_internal_add_plinline() { - return _impl_.plinline_.Add(); +inline std::string* WindowClause::mutable_refname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_refname(); + // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.refname) + return _s; } -inline ::pg_query::Node* CreatePLangStmt::add_plinline() { - ::pg_query::Node* _add = _internal_add_plinline(); - // @@protoc_insertion_point(field_add:pg_query.CreatePLangStmt.plinline) - return _add; +inline const std::string& WindowClause::_internal_refname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.refname_.Get(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreatePLangStmt::plinline() const { - // @@protoc_insertion_point(field_list:pg_query.CreatePLangStmt.plinline) - return _impl_.plinline_; +inline void WindowClause::_internal_set_refname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.refname_.Set(value, GetArena()); } - -// repeated .pg_query.Node plvalidator = 5 [json_name = "plvalidator"]; -inline int CreatePLangStmt::_internal_plvalidator_size() const { - return _impl_.plvalidator_.size(); +inline std::string* WindowClause::_internal_mutable_refname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.refname_.Mutable( GetArena()); } -inline int CreatePLangStmt::plvalidator_size() const { - return _internal_plvalidator_size(); +inline std::string* WindowClause::release_refname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowClause.refname) + return _impl_.refname_.Release(); } -inline void CreatePLangStmt::clear_plvalidator() { - _impl_.plvalidator_.Clear(); +inline void WindowClause::set_allocated_refname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.refname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.refname_.IsDefault()) { + _impl_.refname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowClause.refname) } -inline ::pg_query::Node* CreatePLangStmt::mutable_plvalidator(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreatePLangStmt.plvalidator) - return _impl_.plvalidator_.Mutable(index); + +// repeated .pg_query.Node partition_clause = 3 [json_name = "partitionClause"]; +inline int WindowClause::_internal_partition_clause_size() const { + return _internal_partition_clause().size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreatePLangStmt::mutable_plvalidator() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePLangStmt.plvalidator) - return &_impl_.plvalidator_; +inline int WindowClause::partition_clause_size() const { + return _internal_partition_clause_size(); } -inline const ::pg_query::Node& CreatePLangStmt::_internal_plvalidator(int index) const { - return _impl_.plvalidator_.Get(index); +inline void WindowClause::clear_partition_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.partition_clause_.Clear(); } -inline const ::pg_query::Node& CreatePLangStmt::plvalidator(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.plvalidator) - return _internal_plvalidator(index); +inline ::pg_query::Node* WindowClause::mutable_partition_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.partition_clause) + return _internal_mutable_partition_clause()->Mutable(index); } -inline ::pg_query::Node* CreatePLangStmt::_internal_add_plvalidator() { - return _impl_.plvalidator_.Add(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* WindowClause::mutable_partition_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.WindowClause.partition_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_partition_clause(); } -inline ::pg_query::Node* CreatePLangStmt::add_plvalidator() { - ::pg_query::Node* _add = _internal_add_plvalidator(); - // @@protoc_insertion_point(field_add:pg_query.CreatePLangStmt.plvalidator) +inline const ::pg_query::Node& WindowClause::partition_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.partition_clause) + return _internal_partition_clause().Get(index); +} +inline ::pg_query::Node* WindowClause::add_partition_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_partition_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.WindowClause.partition_clause) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreatePLangStmt::plvalidator() const { - // @@protoc_insertion_point(field_list:pg_query.CreatePLangStmt.plvalidator) - return _impl_.plvalidator_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& WindowClause::partition_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.WindowClause.partition_clause) + return _internal_partition_clause(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +WindowClause::_internal_partition_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.partition_clause_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +WindowClause::_internal_mutable_partition_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.partition_clause_; } -// bool pltrusted = 6 [json_name = "pltrusted"]; -inline void CreatePLangStmt::clear_pltrusted() { - _impl_.pltrusted_ = false; +// repeated .pg_query.Node order_clause = 4 [json_name = "orderClause"]; +inline int WindowClause::_internal_order_clause_size() const { + return _internal_order_clause().size(); } -inline bool CreatePLangStmt::_internal_pltrusted() const { - return _impl_.pltrusted_; +inline int WindowClause::order_clause_size() const { + return _internal_order_clause_size(); } -inline bool CreatePLangStmt::pltrusted() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.pltrusted) - return _internal_pltrusted(); +inline void WindowClause::clear_order_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.order_clause_.Clear(); } -inline void CreatePLangStmt::_internal_set_pltrusted(bool value) { - - _impl_.pltrusted_ = value; +inline ::pg_query::Node* WindowClause::mutable_order_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.order_clause) + return _internal_mutable_order_clause()->Mutable(index); } -inline void CreatePLangStmt::set_pltrusted(bool value) { - _internal_set_pltrusted(value); - // @@protoc_insertion_point(field_set:pg_query.CreatePLangStmt.pltrusted) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* WindowClause::mutable_order_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.WindowClause.order_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_order_clause(); } - -// ------------------------------------------------------------------- - -// CreateRoleStmt - -// .pg_query.RoleStmtType stmt_type = 1 [json_name = "stmt_type"]; -inline void CreateRoleStmt::clear_stmt_type() { - _impl_.stmt_type_ = 0; +inline const ::pg_query::Node& WindowClause::order_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.order_clause) + return _internal_order_clause().Get(index); } -inline ::pg_query::RoleStmtType CreateRoleStmt::_internal_stmt_type() const { - return static_cast< ::pg_query::RoleStmtType >(_impl_.stmt_type_); +inline ::pg_query::Node* WindowClause::add_order_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_order_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.WindowClause.order_clause) + return _add; } -inline ::pg_query::RoleStmtType CreateRoleStmt::stmt_type() const { - // @@protoc_insertion_point(field_get:pg_query.CreateRoleStmt.stmt_type) - return _internal_stmt_type(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& WindowClause::order_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.WindowClause.order_clause) + return _internal_order_clause(); } -inline void CreateRoleStmt::_internal_set_stmt_type(::pg_query::RoleStmtType value) { - - _impl_.stmt_type_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +WindowClause::_internal_order_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.order_clause_; } -inline void CreateRoleStmt::set_stmt_type(::pg_query::RoleStmtType value) { - _internal_set_stmt_type(value); - // @@protoc_insertion_point(field_set:pg_query.CreateRoleStmt.stmt_type) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +WindowClause::_internal_mutable_order_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.order_clause_; } -// string role = 2 [json_name = "role"]; -inline void CreateRoleStmt::clear_role() { - _impl_.role_.ClearToEmpty(); +// int32 frame_options = 5 [json_name = "frameOptions"]; +inline void WindowClause::clear_frame_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.frame_options_ = 0; } -inline const std::string& CreateRoleStmt::role() const { - // @@protoc_insertion_point(field_get:pg_query.CreateRoleStmt.role) - return _internal_role(); +inline ::int32_t WindowClause::frame_options() const { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.frame_options) + return _internal_frame_options(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateRoleStmt::set_role(ArgT0&& arg0, ArgT... args) { - - _impl_.role_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateRoleStmt.role) +inline void WindowClause::set_frame_options(::int32_t value) { + _internal_set_frame_options(value); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.frame_options) } -inline std::string* CreateRoleStmt::mutable_role() { - std::string* _s = _internal_mutable_role(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateRoleStmt.role) - return _s; +inline ::int32_t WindowClause::_internal_frame_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.frame_options_; } -inline const std::string& CreateRoleStmt::_internal_role() const { - return _impl_.role_.Get(); +inline void WindowClause::_internal_set_frame_options(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.frame_options_ = value; } -inline void CreateRoleStmt::_internal_set_role(const std::string& value) { - - _impl_.role_.Set(value, GetArenaForAllocation()); + +// .pg_query.Node start_offset = 6 [json_name = "startOffset"]; +inline bool WindowClause::has_start_offset() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.start_offset_ != nullptr); + return value; } -inline std::string* CreateRoleStmt::_internal_mutable_role() { - - return _impl_.role_.Mutable(GetArenaForAllocation()); +inline void WindowClause::clear_start_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.start_offset_ != nullptr) _impl_.start_offset_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* CreateRoleStmt::release_role() { - // @@protoc_insertion_point(field_release:pg_query.CreateRoleStmt.role) - return _impl_.role_.Release(); +inline const ::pg_query::Node& WindowClause::_internal_start_offset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.start_offset_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void CreateRoleStmt::set_allocated_role(std::string* role) { - if (role != nullptr) { - - } else { - +inline const ::pg_query::Node& WindowClause::start_offset() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.start_offset) + return _internal_start_offset(); +} +inline void WindowClause::unsafe_arena_set_allocated_start_offset(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.start_offset_); } - _impl_.role_.SetAllocated(role, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.role_.IsDefault()) { - _impl_.role_.Set("", GetArenaForAllocation()); + _impl_.start_offset_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateRoleStmt.role) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowClause.start_offset) } +inline ::pg_query::Node* WindowClause::release_start_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node options = 3 [json_name = "options"]; -inline int CreateRoleStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int CreateRoleStmt::options_size() const { - return _internal_options_size(); -} -inline void CreateRoleStmt::clear_options() { - _impl_.options_.Clear(); -} -inline ::pg_query::Node* CreateRoleStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateRoleStmt.options) - return _impl_.options_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateRoleStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateRoleStmt.options) - return &_impl_.options_; -} -inline const ::pg_query::Node& CreateRoleStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); -} -inline const ::pg_query::Node& CreateRoleStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateRoleStmt.options) - return _internal_options(index); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.start_offset_; + _impl_.start_offset_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::Node* CreateRoleStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline ::pg_query::Node* WindowClause::unsafe_arena_release_start_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowClause.start_offset) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.start_offset_; + _impl_.start_offset_ = nullptr; + return temp; } -inline ::pg_query::Node* CreateRoleStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateRoleStmt.options) - return _add; +inline ::pg_query::Node* WindowClause::_internal_mutable_start_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.start_offset_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.start_offset_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.start_offset_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateRoleStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateRoleStmt.options) - return _impl_.options_; +inline ::pg_query::Node* WindowClause::mutable_start_offset() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_start_offset(); + // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.start_offset) + return _msg; } +inline void WindowClause::set_allocated_start_offset(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.start_offset_); + } -// ------------------------------------------------------------------- - -// AlterRoleStmt + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// .pg_query.RoleSpec role = 1 [json_name = "role"]; -inline bool AlterRoleStmt::_internal_has_role() const { - return this != internal_default_instance() && _impl_.role_ != nullptr; + _impl_.start_offset_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowClause.start_offset) } -inline bool AlterRoleStmt::has_role() const { - return _internal_has_role(); + +// .pg_query.Node end_offset = 7 [json_name = "endOffset"]; +inline bool WindowClause::has_end_offset() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.end_offset_ != nullptr); + return value; } -inline void AlterRoleStmt::clear_role() { - if (GetArenaForAllocation() == nullptr && _impl_.role_ != nullptr) { - delete _impl_.role_; - } - _impl_.role_ = nullptr; +inline void WindowClause::clear_end_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.end_offset_ != nullptr) _impl_.end_offset_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::RoleSpec& AlterRoleStmt::_internal_role() const { - const ::pg_query::RoleSpec* p = _impl_.role_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::Node& WindowClause::_internal_end_offset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.end_offset_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RoleSpec& AlterRoleStmt::role() const { - // @@protoc_insertion_point(field_get:pg_query.AlterRoleStmt.role) - return _internal_role(); +inline const ::pg_query::Node& WindowClause::end_offset() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.end_offset) + return _internal_end_offset(); } -inline void AlterRoleStmt::unsafe_arena_set_allocated_role( - ::pg_query::RoleSpec* role) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.role_); +inline void WindowClause::unsafe_arena_set_allocated_end_offset(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.end_offset_); } - _impl_.role_ = role; - if (role) { - + _impl_.end_offset_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterRoleStmt.role) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowClause.end_offset) } -inline ::pg_query::RoleSpec* AlterRoleStmt::release_role() { - - ::pg_query::RoleSpec* temp = _impl_.role_; - _impl_.role_ = nullptr; +inline ::pg_query::Node* WindowClause::release_end_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.end_offset_; + _impl_.end_offset_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* AlterRoleStmt::unsafe_arena_release_role() { - // @@protoc_insertion_point(field_release:pg_query.AlterRoleStmt.role) - - ::pg_query::RoleSpec* temp = _impl_.role_; - _impl_.role_ = nullptr; +inline ::pg_query::Node* WindowClause::unsafe_arena_release_end_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.WindowClause.end_offset) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.end_offset_; + _impl_.end_offset_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* AlterRoleStmt::_internal_mutable_role() { - - if (_impl_.role_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.role_ = p; +inline ::pg_query::Node* WindowClause::_internal_mutable_end_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.end_offset_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.end_offset_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.role_; + return _impl_.end_offset_; } -inline ::pg_query::RoleSpec* AlterRoleStmt::mutable_role() { - ::pg_query::RoleSpec* _msg = _internal_mutable_role(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleStmt.role) +inline ::pg_query::Node* WindowClause::mutable_end_offset() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_end_offset(); + // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.end_offset) return _msg; } -inline void AlterRoleStmt::set_allocated_role(::pg_query::RoleSpec* role) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void WindowClause::set_allocated_end_offset(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.role_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.end_offset_); } - if (role) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(role); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - role = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, role, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.role_ = role; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterRoleStmt.role) + + _impl_.end_offset_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.WindowClause.end_offset) } -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int AlterRoleStmt::_internal_options_size() const { - return _impl_.options_.size(); +// repeated .pg_query.Node run_condition = 8 [json_name = "runCondition"]; +inline int WindowClause::_internal_run_condition_size() const { + return _internal_run_condition().size(); } -inline int AlterRoleStmt::options_size() const { - return _internal_options_size(); +inline int WindowClause::run_condition_size() const { + return _internal_run_condition_size(); } -inline void AlterRoleStmt::clear_options() { - _impl_.options_.Clear(); +inline void WindowClause::clear_run_condition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.run_condition_.Clear(); } -inline ::pg_query::Node* AlterRoleStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleStmt.options) - return _impl_.options_.Mutable(index); +inline ::pg_query::Node* WindowClause::mutable_run_condition(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.run_condition) + return _internal_mutable_run_condition()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterRoleStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterRoleStmt.options) - return &_impl_.options_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* WindowClause::mutable_run_condition() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.WindowClause.run_condition) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_run_condition(); } -inline const ::pg_query::Node& AlterRoleStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline const ::pg_query::Node& WindowClause::run_condition(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.run_condition) + return _internal_run_condition().Get(index); } -inline const ::pg_query::Node& AlterRoleStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterRoleStmt.options) - return _internal_options(index); +inline ::pg_query::Node* WindowClause::add_run_condition() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_run_condition()->Add(); + // @@protoc_insertion_point(field_add:pg_query.WindowClause.run_condition) + return _add; } -inline ::pg_query::Node* AlterRoleStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& WindowClause::run_condition() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.WindowClause.run_condition) + return _internal_run_condition(); } -inline ::pg_query::Node* AlterRoleStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterRoleStmt.options) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +WindowClause::_internal_run_condition() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.run_condition_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterRoleStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterRoleStmt.options) - return _impl_.options_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +WindowClause::_internal_mutable_run_condition() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.run_condition_; +} + +// uint32 start_in_range_func = 9 [json_name = "startInRangeFunc"]; +inline void WindowClause::clear_start_in_range_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.start_in_range_func_ = 0u; +} +inline ::uint32_t WindowClause::start_in_range_func() const { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.start_in_range_func) + return _internal_start_in_range_func(); +} +inline void WindowClause::set_start_in_range_func(::uint32_t value) { + _internal_set_start_in_range_func(value); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.start_in_range_func) +} +inline ::uint32_t WindowClause::_internal_start_in_range_func() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.start_in_range_func_; +} +inline void WindowClause::_internal_set_start_in_range_func(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.start_in_range_func_ = value; +} + +// uint32 end_in_range_func = 10 [json_name = "endInRangeFunc"]; +inline void WindowClause::clear_end_in_range_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.end_in_range_func_ = 0u; +} +inline ::uint32_t WindowClause::end_in_range_func() const { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.end_in_range_func) + return _internal_end_in_range_func(); +} +inline void WindowClause::set_end_in_range_func(::uint32_t value) { + _internal_set_end_in_range_func(value); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.end_in_range_func) +} +inline ::uint32_t WindowClause::_internal_end_in_range_func() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.end_in_range_func_; +} +inline void WindowClause::_internal_set_end_in_range_func(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.end_in_range_func_ = value; +} + +// uint32 in_range_coll = 11 [json_name = "inRangeColl"]; +inline void WindowClause::clear_in_range_coll() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.in_range_coll_ = 0u; +} +inline ::uint32_t WindowClause::in_range_coll() const { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.in_range_coll) + return _internal_in_range_coll(); +} +inline void WindowClause::set_in_range_coll(::uint32_t value) { + _internal_set_in_range_coll(value); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.in_range_coll) +} +inline ::uint32_t WindowClause::_internal_in_range_coll() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.in_range_coll_; +} +inline void WindowClause::_internal_set_in_range_coll(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.in_range_coll_ = value; } -// int32 action = 3 [json_name = "action"]; -inline void AlterRoleStmt::clear_action() { - _impl_.action_ = 0; +// bool in_range_asc = 12 [json_name = "inRangeAsc"]; +inline void WindowClause::clear_in_range_asc() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.in_range_asc_ = false; } -inline int32_t AlterRoleStmt::_internal_action() const { - return _impl_.action_; +inline bool WindowClause::in_range_asc() const { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.in_range_asc) + return _internal_in_range_asc(); } -inline int32_t AlterRoleStmt::action() const { - // @@protoc_insertion_point(field_get:pg_query.AlterRoleStmt.action) - return _internal_action(); +inline void WindowClause::set_in_range_asc(bool value) { + _internal_set_in_range_asc(value); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.in_range_asc) } -inline void AlterRoleStmt::_internal_set_action(int32_t value) { - - _impl_.action_ = value; +inline bool WindowClause::_internal_in_range_asc() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.in_range_asc_; } -inline void AlterRoleStmt::set_action(int32_t value) { - _internal_set_action(value); - // @@protoc_insertion_point(field_set:pg_query.AlterRoleStmt.action) +inline void WindowClause::_internal_set_in_range_asc(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.in_range_asc_ = value; } -// ------------------------------------------------------------------- - -// DropRoleStmt - -// repeated .pg_query.Node roles = 1 [json_name = "roles"]; -inline int DropRoleStmt::_internal_roles_size() const { - return _impl_.roles_.size(); +// bool in_range_nulls_first = 13 [json_name = "inRangeNullsFirst"]; +inline void WindowClause::clear_in_range_nulls_first() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.in_range_nulls_first_ = false; } -inline int DropRoleStmt::roles_size() const { - return _internal_roles_size(); +inline bool WindowClause::in_range_nulls_first() const { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.in_range_nulls_first) + return _internal_in_range_nulls_first(); } -inline void DropRoleStmt::clear_roles() { - _impl_.roles_.Clear(); +inline void WindowClause::set_in_range_nulls_first(bool value) { + _internal_set_in_range_nulls_first(value); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.in_range_nulls_first) } -inline ::pg_query::Node* DropRoleStmt::mutable_roles(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DropRoleStmt.roles) - return _impl_.roles_.Mutable(index); +inline bool WindowClause::_internal_in_range_nulls_first() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.in_range_nulls_first_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DropRoleStmt::mutable_roles() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DropRoleStmt.roles) - return &_impl_.roles_; +inline void WindowClause::_internal_set_in_range_nulls_first(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.in_range_nulls_first_ = value; } -inline const ::pg_query::Node& DropRoleStmt::_internal_roles(int index) const { - return _impl_.roles_.Get(index); + +// uint32 winref = 14 [json_name = "winref"]; +inline void WindowClause::clear_winref() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.winref_ = 0u; } -inline const ::pg_query::Node& DropRoleStmt::roles(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DropRoleStmt.roles) - return _internal_roles(index); +inline ::uint32_t WindowClause::winref() const { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.winref) + return _internal_winref(); } -inline ::pg_query::Node* DropRoleStmt::_internal_add_roles() { - return _impl_.roles_.Add(); +inline void WindowClause::set_winref(::uint32_t value) { + _internal_set_winref(value); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.winref) } -inline ::pg_query::Node* DropRoleStmt::add_roles() { - ::pg_query::Node* _add = _internal_add_roles(); - // @@protoc_insertion_point(field_add:pg_query.DropRoleStmt.roles) - return _add; +inline ::uint32_t WindowClause::_internal_winref() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.winref_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DropRoleStmt::roles() const { - // @@protoc_insertion_point(field_list:pg_query.DropRoleStmt.roles) - return _impl_.roles_; +inline void WindowClause::_internal_set_winref(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.winref_ = value; } -// bool missing_ok = 2 [json_name = "missing_ok"]; -inline void DropRoleStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; +// bool copied_order = 15 [json_name = "copiedOrder"]; +inline void WindowClause::clear_copied_order() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.copied_order_ = false; } -inline bool DropRoleStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline bool WindowClause::copied_order() const { + // @@protoc_insertion_point(field_get:pg_query.WindowClause.copied_order) + return _internal_copied_order(); } -inline bool DropRoleStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.DropRoleStmt.missing_ok) - return _internal_missing_ok(); +inline void WindowClause::set_copied_order(bool value) { + _internal_set_copied_order(value); + // @@protoc_insertion_point(field_set:pg_query.WindowClause.copied_order) } -inline void DropRoleStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline bool WindowClause::_internal_copied_order() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.copied_order_; } -inline void DropRoleStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.DropRoleStmt.missing_ok) +inline void WindowClause::_internal_set_copied_order(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.copied_order_ = value; } // ------------------------------------------------------------------- -// LockStmt +// RowMarkClause -// repeated .pg_query.Node relations = 1 [json_name = "relations"]; -inline int LockStmt::_internal_relations_size() const { - return _impl_.relations_.size(); +// uint32 rti = 1 [json_name = "rti"]; +inline void RowMarkClause::clear_rti() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rti_ = 0u; } -inline int LockStmt::relations_size() const { - return _internal_relations_size(); +inline ::uint32_t RowMarkClause::rti() const { + // @@protoc_insertion_point(field_get:pg_query.RowMarkClause.rti) + return _internal_rti(); } -inline void LockStmt::clear_relations() { - _impl_.relations_.Clear(); +inline void RowMarkClause::set_rti(::uint32_t value) { + _internal_set_rti(value); + // @@protoc_insertion_point(field_set:pg_query.RowMarkClause.rti) } -inline ::pg_query::Node* LockStmt::mutable_relations(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.LockStmt.relations) - return _impl_.relations_.Mutable(index); +inline ::uint32_t RowMarkClause::_internal_rti() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rti_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -LockStmt::mutable_relations() { - // @@protoc_insertion_point(field_mutable_list:pg_query.LockStmt.relations) - return &_impl_.relations_; +inline void RowMarkClause::_internal_set_rti(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rti_ = value; } -inline const ::pg_query::Node& LockStmt::_internal_relations(int index) const { - return _impl_.relations_.Get(index); + +// .pg_query.LockClauseStrength strength = 2 [json_name = "strength"]; +inline void RowMarkClause::clear_strength() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.strength_ = 0; } -inline const ::pg_query::Node& LockStmt::relations(int index) const { - // @@protoc_insertion_point(field_get:pg_query.LockStmt.relations) - return _internal_relations(index); +inline ::pg_query::LockClauseStrength RowMarkClause::strength() const { + // @@protoc_insertion_point(field_get:pg_query.RowMarkClause.strength) + return _internal_strength(); } -inline ::pg_query::Node* LockStmt::_internal_add_relations() { - return _impl_.relations_.Add(); +inline void RowMarkClause::set_strength(::pg_query::LockClauseStrength value) { + _internal_set_strength(value); + // @@protoc_insertion_point(field_set:pg_query.RowMarkClause.strength) } -inline ::pg_query::Node* LockStmt::add_relations() { - ::pg_query::Node* _add = _internal_add_relations(); - // @@protoc_insertion_point(field_add:pg_query.LockStmt.relations) - return _add; +inline ::pg_query::LockClauseStrength RowMarkClause::_internal_strength() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::LockClauseStrength>(_impl_.strength_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -LockStmt::relations() const { - // @@protoc_insertion_point(field_list:pg_query.LockStmt.relations) - return _impl_.relations_; +inline void RowMarkClause::_internal_set_strength(::pg_query::LockClauseStrength value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.strength_ = value; } -// int32 mode = 2 [json_name = "mode"]; -inline void LockStmt::clear_mode() { - _impl_.mode_ = 0; +// .pg_query.LockWaitPolicy wait_policy = 3 [json_name = "waitPolicy"]; +inline void RowMarkClause::clear_wait_policy() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.wait_policy_ = 0; } -inline int32_t LockStmt::_internal_mode() const { - return _impl_.mode_; +inline ::pg_query::LockWaitPolicy RowMarkClause::wait_policy() const { + // @@protoc_insertion_point(field_get:pg_query.RowMarkClause.wait_policy) + return _internal_wait_policy(); } -inline int32_t LockStmt::mode() const { - // @@protoc_insertion_point(field_get:pg_query.LockStmt.mode) - return _internal_mode(); +inline void RowMarkClause::set_wait_policy(::pg_query::LockWaitPolicy value) { + _internal_set_wait_policy(value); + // @@protoc_insertion_point(field_set:pg_query.RowMarkClause.wait_policy) } -inline void LockStmt::_internal_set_mode(int32_t value) { - - _impl_.mode_ = value; +inline ::pg_query::LockWaitPolicy RowMarkClause::_internal_wait_policy() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::LockWaitPolicy>(_impl_.wait_policy_); } -inline void LockStmt::set_mode(int32_t value) { - _internal_set_mode(value); - // @@protoc_insertion_point(field_set:pg_query.LockStmt.mode) +inline void RowMarkClause::_internal_set_wait_policy(::pg_query::LockWaitPolicy value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.wait_policy_ = value; } -// bool nowait = 3 [json_name = "nowait"]; -inline void LockStmt::clear_nowait() { - _impl_.nowait_ = false; +// bool pushed_down = 4 [json_name = "pushedDown"]; +inline void RowMarkClause::clear_pushed_down() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pushed_down_ = false; } -inline bool LockStmt::_internal_nowait() const { - return _impl_.nowait_; +inline bool RowMarkClause::pushed_down() const { + // @@protoc_insertion_point(field_get:pg_query.RowMarkClause.pushed_down) + return _internal_pushed_down(); } -inline bool LockStmt::nowait() const { - // @@protoc_insertion_point(field_get:pg_query.LockStmt.nowait) - return _internal_nowait(); +inline void RowMarkClause::set_pushed_down(bool value) { + _internal_set_pushed_down(value); + // @@protoc_insertion_point(field_set:pg_query.RowMarkClause.pushed_down) } -inline void LockStmt::_internal_set_nowait(bool value) { - - _impl_.nowait_ = value; +inline bool RowMarkClause::_internal_pushed_down() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.pushed_down_; } -inline void LockStmt::set_nowait(bool value) { - _internal_set_nowait(value); - // @@protoc_insertion_point(field_set:pg_query.LockStmt.nowait) +inline void RowMarkClause::_internal_set_pushed_down(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.pushed_down_ = value; } // ------------------------------------------------------------------- -// ConstraintsSetStmt +// WithClause -// repeated .pg_query.Node constraints = 1 [json_name = "constraints"]; -inline int ConstraintsSetStmt::_internal_constraints_size() const { - return _impl_.constraints_.size(); +// repeated .pg_query.Node ctes = 1 [json_name = "ctes"]; +inline int WithClause::_internal_ctes_size() const { + return _internal_ctes().size(); } -inline int ConstraintsSetStmt::constraints_size() const { - return _internal_constraints_size(); +inline int WithClause::ctes_size() const { + return _internal_ctes_size(); } -inline void ConstraintsSetStmt::clear_constraints() { - _impl_.constraints_.Clear(); +inline void WithClause::clear_ctes() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctes_.Clear(); } -inline ::pg_query::Node* ConstraintsSetStmt::mutable_constraints(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ConstraintsSetStmt.constraints) - return _impl_.constraints_.Mutable(index); +inline ::pg_query::Node* WithClause::mutable_ctes(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.WithClause.ctes) + return _internal_mutable_ctes()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ConstraintsSetStmt::mutable_constraints() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ConstraintsSetStmt.constraints) - return &_impl_.constraints_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* WithClause::mutable_ctes() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.WithClause.ctes) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_ctes(); } -inline const ::pg_query::Node& ConstraintsSetStmt::_internal_constraints(int index) const { - return _impl_.constraints_.Get(index); +inline const ::pg_query::Node& WithClause::ctes(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.WithClause.ctes) + return _internal_ctes().Get(index); } -inline const ::pg_query::Node& ConstraintsSetStmt::constraints(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ConstraintsSetStmt.constraints) - return _internal_constraints(index); +inline ::pg_query::Node* WithClause::add_ctes() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_ctes()->Add(); + // @@protoc_insertion_point(field_add:pg_query.WithClause.ctes) + return _add; } -inline ::pg_query::Node* ConstraintsSetStmt::_internal_add_constraints() { - return _impl_.constraints_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& WithClause::ctes() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.WithClause.ctes) + return _internal_ctes(); } -inline ::pg_query::Node* ConstraintsSetStmt::add_constraints() { - ::pg_query::Node* _add = _internal_add_constraints(); - // @@protoc_insertion_point(field_add:pg_query.ConstraintsSetStmt.constraints) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +WithClause::_internal_ctes() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ctes_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ConstraintsSetStmt::constraints() const { - // @@protoc_insertion_point(field_list:pg_query.ConstraintsSetStmt.constraints) - return _impl_.constraints_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +WithClause::_internal_mutable_ctes() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.ctes_; } -// bool deferred = 2 [json_name = "deferred"]; -inline void ConstraintsSetStmt::clear_deferred() { - _impl_.deferred_ = false; +// bool recursive = 2 [json_name = "recursive"]; +inline void WithClause::clear_recursive() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.recursive_ = false; } -inline bool ConstraintsSetStmt::_internal_deferred() const { - return _impl_.deferred_; +inline bool WithClause::recursive() const { + // @@protoc_insertion_point(field_get:pg_query.WithClause.recursive) + return _internal_recursive(); } -inline bool ConstraintsSetStmt::deferred() const { - // @@protoc_insertion_point(field_get:pg_query.ConstraintsSetStmt.deferred) - return _internal_deferred(); +inline void WithClause::set_recursive(bool value) { + _internal_set_recursive(value); + // @@protoc_insertion_point(field_set:pg_query.WithClause.recursive) } -inline void ConstraintsSetStmt::_internal_set_deferred(bool value) { - - _impl_.deferred_ = value; +inline bool WithClause::_internal_recursive() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.recursive_; } -inline void ConstraintsSetStmt::set_deferred(bool value) { - _internal_set_deferred(value); - // @@protoc_insertion_point(field_set:pg_query.ConstraintsSetStmt.deferred) +inline void WithClause::_internal_set_recursive(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.recursive_ = value; +} + +// int32 location = 3 [json_name = "location"]; +inline void WithClause::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; +} +inline ::int32_t WithClause::location() const { + // @@protoc_insertion_point(field_get:pg_query.WithClause.location) + return _internal_location(); +} +inline void WithClause::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.WithClause.location) +} +inline ::int32_t WithClause::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void WithClause::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// ReindexStmt +// InferClause -// .pg_query.ReindexObjectType kind = 1 [json_name = "kind"]; -inline void ReindexStmt::clear_kind() { - _impl_.kind_ = 0; +// repeated .pg_query.Node index_elems = 1 [json_name = "indexElems"]; +inline int InferClause::_internal_index_elems_size() const { + return _internal_index_elems().size(); } -inline ::pg_query::ReindexObjectType ReindexStmt::_internal_kind() const { - return static_cast< ::pg_query::ReindexObjectType >(_impl_.kind_); +inline int InferClause::index_elems_size() const { + return _internal_index_elems_size(); } -inline ::pg_query::ReindexObjectType ReindexStmt::kind() const { - // @@protoc_insertion_point(field_get:pg_query.ReindexStmt.kind) - return _internal_kind(); +inline void InferClause::clear_index_elems() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.index_elems_.Clear(); } -inline void ReindexStmt::_internal_set_kind(::pg_query::ReindexObjectType value) { - - _impl_.kind_ = value; +inline ::pg_query::Node* InferClause::mutable_index_elems(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.InferClause.index_elems) + return _internal_mutable_index_elems()->Mutable(index); } -inline void ReindexStmt::set_kind(::pg_query::ReindexObjectType value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.ReindexStmt.kind) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* InferClause::mutable_index_elems() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.InferClause.index_elems) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_index_elems(); } - -// .pg_query.RangeVar relation = 2 [json_name = "relation"]; -inline bool ReindexStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; +inline const ::pg_query::Node& InferClause::index_elems(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InferClause.index_elems) + return _internal_index_elems().Get(index); } -inline bool ReindexStmt::has_relation() const { - return _internal_has_relation(); +inline ::pg_query::Node* InferClause::add_index_elems() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_index_elems()->Add(); + // @@protoc_insertion_point(field_add:pg_query.InferClause.index_elems) + return _add; } -inline void ReindexStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& InferClause::index_elems() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.InferClause.index_elems) + return _internal_index_elems(); } -inline const ::pg_query::RangeVar& ReindexStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +InferClause::_internal_index_elems() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.index_elems_; } -inline const ::pg_query::RangeVar& ReindexStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.ReindexStmt.relation) - return _internal_relation(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +InferClause::_internal_mutable_index_elems() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.index_elems_; +} + +// .pg_query.Node where_clause = 2 [json_name = "whereClause"]; +inline bool InferClause::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; +} +inline void InferClause::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& InferClause::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.where_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void ReindexStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline const ::pg_query::Node& InferClause::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InferClause.where_clause) + return _internal_where_clause(); +} +inline void InferClause::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ReindexStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InferClause.where_clause) } -inline ::pg_query::RangeVar* ReindexStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* InferClause::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* ReindexStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.ReindexStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* InferClause::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.InferClause.where_clause) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; return temp; } -inline ::pg_query::RangeVar* ReindexStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::Node* InferClause::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.where_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.relation_; + return _impl_.where_clause_; } -inline ::pg_query::RangeVar* ReindexStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.ReindexStmt.relation) +inline ::pg_query::Node* InferClause::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_where_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.InferClause.where_clause) return _msg; } -inline void ReindexStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void InferClause::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.ReindexStmt.relation) + + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.InferClause.where_clause) } -// string name = 3 [json_name = "name"]; -inline void ReindexStmt::clear_name() { - _impl_.name_.ClearToEmpty(); +// string conname = 3 [json_name = "conname"]; +inline void InferClause::clear_conname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conname_.ClearToEmpty(); } -inline const std::string& ReindexStmt::name() const { - // @@protoc_insertion_point(field_get:pg_query.ReindexStmt.name) - return _internal_name(); +inline const std::string& InferClause::conname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InferClause.conname) + return _internal_conname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ReindexStmt::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ReindexStmt.name) +template +inline PROTOBUF_ALWAYS_INLINE void InferClause::set_conname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.InferClause.conname) } -inline std::string* ReindexStmt::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.ReindexStmt.name) +inline std::string* InferClause::mutable_conname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_conname(); + // @@protoc_insertion_point(field_mutable:pg_query.InferClause.conname) return _s; } -inline const std::string& ReindexStmt::_internal_name() const { - return _impl_.name_.Get(); +inline const std::string& InferClause::_internal_conname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.conname_.Get(); } -inline void ReindexStmt::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void InferClause::_internal_set_conname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conname_.Set(value, GetArena()); } -inline std::string* ReindexStmt::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline std::string* InferClause::_internal_mutable_conname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.conname_.Mutable( GetArena()); } -inline std::string* ReindexStmt::release_name() { - // @@protoc_insertion_point(field_release:pg_query.ReindexStmt.name) - return _impl_.name_.Release(); +inline std::string* InferClause::release_conname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.InferClause.conname) + return _impl_.conname_.Release(); } -inline void ReindexStmt::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ReindexStmt.name) +inline void InferClause::set_allocated_conname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.conname_.IsDefault()) { + _impl_.conname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.InferClause.conname) } -// repeated .pg_query.Node params = 4 [json_name = "params"]; -inline int ReindexStmt::_internal_params_size() const { - return _impl_.params_.size(); +// int32 location = 4 [json_name = "location"]; +inline void InferClause::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline int ReindexStmt::params_size() const { - return _internal_params_size(); +inline ::int32_t InferClause::location() const { + // @@protoc_insertion_point(field_get:pg_query.InferClause.location) + return _internal_location(); } -inline void ReindexStmt::clear_params() { - _impl_.params_.Clear(); +inline void InferClause::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.InferClause.location) } -inline ::pg_query::Node* ReindexStmt::mutable_params(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ReindexStmt.params) - return _impl_.params_.Mutable(index); +inline ::int32_t InferClause::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ReindexStmt::mutable_params() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ReindexStmt.params) - return &_impl_.params_; +inline void InferClause::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; +} + +// ------------------------------------------------------------------- + +// OnConflictClause + +// .pg_query.OnConflictAction action = 1 [json_name = "action"]; +inline void OnConflictClause::clear_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.action_ = 0; } -inline const ::pg_query::Node& ReindexStmt::_internal_params(int index) const { - return _impl_.params_.Get(index); +inline ::pg_query::OnConflictAction OnConflictClause::action() const { + // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.action) + return _internal_action(); } -inline const ::pg_query::Node& ReindexStmt::params(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ReindexStmt.params) - return _internal_params(index); +inline void OnConflictClause::set_action(::pg_query::OnConflictAction value) { + _internal_set_action(value); + // @@protoc_insertion_point(field_set:pg_query.OnConflictClause.action) } -inline ::pg_query::Node* ReindexStmt::_internal_add_params() { - return _impl_.params_.Add(); +inline ::pg_query::OnConflictAction OnConflictClause::_internal_action() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::OnConflictAction>(_impl_.action_); } -inline ::pg_query::Node* ReindexStmt::add_params() { - ::pg_query::Node* _add = _internal_add_params(); - // @@protoc_insertion_point(field_add:pg_query.ReindexStmt.params) - return _add; +inline void OnConflictClause::_internal_set_action(::pg_query::OnConflictAction value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.action_ = value; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ReindexStmt::params() const { - // @@protoc_insertion_point(field_list:pg_query.ReindexStmt.params) - return _impl_.params_; + +// .pg_query.InferClause infer = 2 [json_name = "infer"]; +inline bool OnConflictClause::has_infer() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.infer_ != nullptr); + return value; +} +inline void OnConflictClause::clear_infer() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.infer_ != nullptr) _impl_.infer_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::InferClause& OnConflictClause::_internal_infer() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::InferClause* p = _impl_.infer_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_InferClause_default_instance_); +} +inline const ::pg_query::InferClause& OnConflictClause::infer() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.infer) + return _internal_infer(); +} +inline void OnConflictClause::unsafe_arena_set_allocated_infer(::pg_query::InferClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.infer_); + } + _impl_.infer_ = reinterpret_cast<::pg_query::InferClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OnConflictClause.infer) } +inline ::pg_query::InferClause* OnConflictClause::release_infer() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::InferClause* released = _impl_.infer_; + _impl_.infer_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::InferClause* OnConflictClause::unsafe_arena_release_infer() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.OnConflictClause.infer) -// CheckPointStmt + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::InferClause* temp = _impl_.infer_; + _impl_.infer_ = nullptr; + return temp; +} +inline ::pg_query::InferClause* OnConflictClause::_internal_mutable_infer() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.infer_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::InferClause>(GetArena()); + _impl_.infer_ = reinterpret_cast<::pg_query::InferClause*>(p); + } + return _impl_.infer_; +} +inline ::pg_query::InferClause* OnConflictClause::mutable_infer() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::InferClause* _msg = _internal_mutable_infer(); + // @@protoc_insertion_point(field_mutable:pg_query.OnConflictClause.infer) + return _msg; +} +inline void OnConflictClause::set_allocated_infer(::pg_query::InferClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::InferClause*>(_impl_.infer_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::InferClause*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// CreateSchemaStmt + _impl_.infer_ = reinterpret_cast<::pg_query::InferClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.OnConflictClause.infer) +} -// string schemaname = 1 [json_name = "schemaname"]; -inline void CreateSchemaStmt::clear_schemaname() { - _impl_.schemaname_.ClearToEmpty(); +// repeated .pg_query.Node target_list = 3 [json_name = "targetList"]; +inline int OnConflictClause::_internal_target_list_size() const { + return _internal_target_list().size(); } -inline const std::string& CreateSchemaStmt::schemaname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateSchemaStmt.schemaname) - return _internal_schemaname(); +inline int OnConflictClause::target_list_size() const { + return _internal_target_list_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateSchemaStmt::set_schemaname(ArgT0&& arg0, ArgT... args) { - - _impl_.schemaname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateSchemaStmt.schemaname) +inline void OnConflictClause::clear_target_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.target_list_.Clear(); } -inline std::string* CreateSchemaStmt::mutable_schemaname() { - std::string* _s = _internal_mutable_schemaname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateSchemaStmt.schemaname) - return _s; +inline ::pg_query::Node* OnConflictClause::mutable_target_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.OnConflictClause.target_list) + return _internal_mutable_target_list()->Mutable(index); } -inline const std::string& CreateSchemaStmt::_internal_schemaname() const { - return _impl_.schemaname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* OnConflictClause::mutable_target_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.OnConflictClause.target_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_target_list(); } -inline void CreateSchemaStmt::_internal_set_schemaname(const std::string& value) { - - _impl_.schemaname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& OnConflictClause::target_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.target_list) + return _internal_target_list().Get(index); } -inline std::string* CreateSchemaStmt::_internal_mutable_schemaname() { - - return _impl_.schemaname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* OnConflictClause::add_target_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_target_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.OnConflictClause.target_list) + return _add; } -inline std::string* CreateSchemaStmt::release_schemaname() { - // @@protoc_insertion_point(field_release:pg_query.CreateSchemaStmt.schemaname) - return _impl_.schemaname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& OnConflictClause::target_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.OnConflictClause.target_list) + return _internal_target_list(); } -inline void CreateSchemaStmt::set_allocated_schemaname(std::string* schemaname) { - if (schemaname != nullptr) { - - } else { - - } - _impl_.schemaname_.SetAllocated(schemaname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.schemaname_.IsDefault()) { - _impl_.schemaname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSchemaStmt.schemaname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +OnConflictClause::_internal_target_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.target_list_; } - -// .pg_query.RoleSpec authrole = 2 [json_name = "authrole"]; -inline bool CreateSchemaStmt::_internal_has_authrole() const { - return this != internal_default_instance() && _impl_.authrole_ != nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +OnConflictClause::_internal_mutable_target_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.target_list_; } -inline bool CreateSchemaStmt::has_authrole() const { - return _internal_has_authrole(); + +// .pg_query.Node where_clause = 4 [json_name = "whereClause"]; +inline bool OnConflictClause::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; } -inline void CreateSchemaStmt::clear_authrole() { - if (GetArenaForAllocation() == nullptr && _impl_.authrole_ != nullptr) { - delete _impl_.authrole_; - } - _impl_.authrole_ = nullptr; +inline void OnConflictClause::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::RoleSpec& CreateSchemaStmt::_internal_authrole() const { - const ::pg_query::RoleSpec* p = _impl_.authrole_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::Node& OnConflictClause::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.where_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RoleSpec& CreateSchemaStmt::authrole() const { - // @@protoc_insertion_point(field_get:pg_query.CreateSchemaStmt.authrole) - return _internal_authrole(); +inline const ::pg_query::Node& OnConflictClause::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.where_clause) + return _internal_where_clause(); } -inline void CreateSchemaStmt::unsafe_arena_set_allocated_authrole( - ::pg_query::RoleSpec* authrole) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.authrole_); +inline void OnConflictClause::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); } - _impl_.authrole_ = authrole; - if (authrole) { - + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateSchemaStmt.authrole) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OnConflictClause.where_clause) } -inline ::pg_query::RoleSpec* CreateSchemaStmt::release_authrole() { - - ::pg_query::RoleSpec* temp = _impl_.authrole_; - _impl_.authrole_ = nullptr; +inline ::pg_query::Node* OnConflictClause::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* CreateSchemaStmt::unsafe_arena_release_authrole() { - // @@protoc_insertion_point(field_release:pg_query.CreateSchemaStmt.authrole) - - ::pg_query::RoleSpec* temp = _impl_.authrole_; - _impl_.authrole_ = nullptr; +inline ::pg_query::Node* OnConflictClause::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.OnConflictClause.where_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* CreateSchemaStmt::_internal_mutable_authrole() { - - if (_impl_.authrole_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.authrole_ = p; +inline ::pg_query::Node* OnConflictClause::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.where_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.authrole_; + return _impl_.where_clause_; } -inline ::pg_query::RoleSpec* CreateSchemaStmt::mutable_authrole() { - ::pg_query::RoleSpec* _msg = _internal_mutable_authrole(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateSchemaStmt.authrole) +inline ::pg_query::Node* OnConflictClause::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_where_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.OnConflictClause.where_clause) return _msg; } -inline void CreateSchemaStmt::set_allocated_authrole(::pg_query::RoleSpec* authrole) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void OnConflictClause::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.authrole_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); } - if (authrole) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(authrole); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - authrole = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, authrole, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.authrole_ = authrole; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSchemaStmt.authrole) + + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.OnConflictClause.where_clause) } -// repeated .pg_query.Node schema_elts = 3 [json_name = "schemaElts"]; -inline int CreateSchemaStmt::_internal_schema_elts_size() const { - return _impl_.schema_elts_.size(); +// int32 location = 5 [json_name = "location"]; +inline void OnConflictClause::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline int CreateSchemaStmt::schema_elts_size() const { - return _internal_schema_elts_size(); +inline ::int32_t OnConflictClause::location() const { + // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.location) + return _internal_location(); } -inline void CreateSchemaStmt::clear_schema_elts() { - _impl_.schema_elts_.Clear(); +inline void OnConflictClause::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.OnConflictClause.location) } -inline ::pg_query::Node* CreateSchemaStmt::mutable_schema_elts(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateSchemaStmt.schema_elts) - return _impl_.schema_elts_.Mutable(index); +inline ::int32_t OnConflictClause::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateSchemaStmt::mutable_schema_elts() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateSchemaStmt.schema_elts) - return &_impl_.schema_elts_; +inline void OnConflictClause::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -inline const ::pg_query::Node& CreateSchemaStmt::_internal_schema_elts(int index) const { - return _impl_.schema_elts_.Get(index); + +// ------------------------------------------------------------------- + +// CTESearchClause + +// repeated .pg_query.Node search_col_list = 1 [json_name = "search_col_list"]; +inline int CTESearchClause::_internal_search_col_list_size() const { + return _internal_search_col_list().size(); } -inline const ::pg_query::Node& CreateSchemaStmt::schema_elts(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateSchemaStmt.schema_elts) - return _internal_schema_elts(index); +inline int CTESearchClause::search_col_list_size() const { + return _internal_search_col_list_size(); } -inline ::pg_query::Node* CreateSchemaStmt::_internal_add_schema_elts() { - return _impl_.schema_elts_.Add(); +inline void CTESearchClause::clear_search_col_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.search_col_list_.Clear(); } -inline ::pg_query::Node* CreateSchemaStmt::add_schema_elts() { - ::pg_query::Node* _add = _internal_add_schema_elts(); - // @@protoc_insertion_point(field_add:pg_query.CreateSchemaStmt.schema_elts) - return _add; +inline ::pg_query::Node* CTESearchClause::mutable_search_col_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CTESearchClause.search_col_list) + return _internal_mutable_search_col_list()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateSchemaStmt::schema_elts() const { - // @@protoc_insertion_point(field_list:pg_query.CreateSchemaStmt.schema_elts) - return _impl_.schema_elts_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CTESearchClause::mutable_search_col_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CTESearchClause.search_col_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_search_col_list(); } - -// bool if_not_exists = 4 [json_name = "if_not_exists"]; -inline void CreateSchemaStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +inline const ::pg_query::Node& CTESearchClause::search_col_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CTESearchClause.search_col_list) + return _internal_search_col_list().Get(index); } -inline bool CreateSchemaStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline ::pg_query::Node* CTESearchClause::add_search_col_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_search_col_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CTESearchClause.search_col_list) + return _add; } -inline bool CreateSchemaStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.CreateSchemaStmt.if_not_exists) - return _internal_if_not_exists(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CTESearchClause::search_col_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CTESearchClause.search_col_list) + return _internal_search_col_list(); } -inline void CreateSchemaStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CTESearchClause::_internal_search_col_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.search_col_list_; } -inline void CreateSchemaStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.CreateSchemaStmt.if_not_exists) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CTESearchClause::_internal_mutable_search_col_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.search_col_list_; } -// ------------------------------------------------------------------- - -// AlterDatabaseStmt - -// string dbname = 1 [json_name = "dbname"]; -inline void AlterDatabaseStmt::clear_dbname() { - _impl_.dbname_.ClearToEmpty(); +// bool search_breadth_first = 2 [json_name = "search_breadth_first"]; +inline void CTESearchClause::clear_search_breadth_first() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.search_breadth_first_ = false; } -inline const std::string& AlterDatabaseStmt::dbname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseStmt.dbname) - return _internal_dbname(); +inline bool CTESearchClause::search_breadth_first() const { + // @@protoc_insertion_point(field_get:pg_query.CTESearchClause.search_breadth_first) + return _internal_search_breadth_first(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterDatabaseStmt::set_dbname(ArgT0&& arg0, ArgT... args) { - - _impl_.dbname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterDatabaseStmt.dbname) +inline void CTESearchClause::set_search_breadth_first(bool value) { + _internal_set_search_breadth_first(value); + // @@protoc_insertion_point(field_set:pg_query.CTESearchClause.search_breadth_first) } -inline std::string* AlterDatabaseStmt::mutable_dbname() { - std::string* _s = _internal_mutable_dbname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseStmt.dbname) - return _s; +inline bool CTESearchClause::_internal_search_breadth_first() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.search_breadth_first_; } -inline const std::string& AlterDatabaseStmt::_internal_dbname() const { - return _impl_.dbname_.Get(); +inline void CTESearchClause::_internal_set_search_breadth_first(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.search_breadth_first_ = value; } -inline void AlterDatabaseStmt::_internal_set_dbname(const std::string& value) { - - _impl_.dbname_.Set(value, GetArenaForAllocation()); + +// string search_seq_column = 3 [json_name = "search_seq_column"]; +inline void CTESearchClause::clear_search_seq_column() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.search_seq_column_.ClearToEmpty(); } -inline std::string* AlterDatabaseStmt::_internal_mutable_dbname() { - - return _impl_.dbname_.Mutable(GetArenaForAllocation()); +inline const std::string& CTESearchClause::search_seq_column() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CTESearchClause.search_seq_column) + return _internal_search_seq_column(); } -inline std::string* AlterDatabaseStmt::release_dbname() { - // @@protoc_insertion_point(field_release:pg_query.AlterDatabaseStmt.dbname) - return _impl_.dbname_.Release(); +template +inline PROTOBUF_ALWAYS_INLINE void CTESearchClause::set_search_seq_column(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.search_seq_column_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CTESearchClause.search_seq_column) } -inline void AlterDatabaseStmt::set_allocated_dbname(std::string* dbname) { - if (dbname != nullptr) { - - } else { - - } - _impl_.dbname_.SetAllocated(dbname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.dbname_.IsDefault()) { - _impl_.dbname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDatabaseStmt.dbname) +inline std::string* CTESearchClause::mutable_search_seq_column() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_search_seq_column(); + // @@protoc_insertion_point(field_mutable:pg_query.CTESearchClause.search_seq_column) + return _s; } - -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int AlterDatabaseStmt::_internal_options_size() const { - return _impl_.options_.size(); +inline const std::string& CTESearchClause::_internal_search_seq_column() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.search_seq_column_.Get(); } -inline int AlterDatabaseStmt::options_size() const { - return _internal_options_size(); +inline void CTESearchClause::_internal_set_search_seq_column(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.search_seq_column_.Set(value, GetArena()); } -inline void AlterDatabaseStmt::clear_options() { - _impl_.options_.Clear(); +inline std::string* CTESearchClause::_internal_mutable_search_seq_column() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.search_seq_column_.Mutable( GetArena()); } -inline ::pg_query::Node* AlterDatabaseStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseStmt.options) - return _impl_.options_.Mutable(index); +inline std::string* CTESearchClause::release_search_seq_column() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CTESearchClause.search_seq_column) + return _impl_.search_seq_column_.Release(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterDatabaseStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterDatabaseStmt.options) - return &_impl_.options_; +inline void CTESearchClause::set_allocated_search_seq_column(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.search_seq_column_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.search_seq_column_.IsDefault()) { + _impl_.search_seq_column_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CTESearchClause.search_seq_column) } -inline const ::pg_query::Node& AlterDatabaseStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// int32 location = 4 [json_name = "location"]; +inline void CTESearchClause::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& AlterDatabaseStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseStmt.options) - return _internal_options(index); +inline ::int32_t CTESearchClause::location() const { + // @@protoc_insertion_point(field_get:pg_query.CTESearchClause.location) + return _internal_location(); } -inline ::pg_query::Node* AlterDatabaseStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void CTESearchClause::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.CTESearchClause.location) } -inline ::pg_query::Node* AlterDatabaseStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterDatabaseStmt.options) - return _add; +inline ::int32_t CTESearchClause::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterDatabaseStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterDatabaseStmt.options) - return _impl_.options_; +inline void CTESearchClause::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// AlterDatabaseRefreshCollStmt +// CTECycleClause -// string dbname = 1 [json_name = "dbname"]; -inline void AlterDatabaseRefreshCollStmt::clear_dbname() { - _impl_.dbname_.ClearToEmpty(); +// repeated .pg_query.Node cycle_col_list = 1 [json_name = "cycle_col_list"]; +inline int CTECycleClause::_internal_cycle_col_list_size() const { + return _internal_cycle_col_list().size(); } -inline const std::string& AlterDatabaseRefreshCollStmt::dbname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseRefreshCollStmt.dbname) - return _internal_dbname(); +inline int CTECycleClause::cycle_col_list_size() const { + return _internal_cycle_col_list_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterDatabaseRefreshCollStmt::set_dbname(ArgT0&& arg0, ArgT... args) { - - _impl_.dbname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterDatabaseRefreshCollStmt.dbname) +inline void CTECycleClause::clear_cycle_col_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cycle_col_list_.Clear(); } -inline std::string* AlterDatabaseRefreshCollStmt::mutable_dbname() { - std::string* _s = _internal_mutable_dbname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseRefreshCollStmt.dbname) - return _s; +inline ::pg_query::Node* CTECycleClause::mutable_cycle_col_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_col_list) + return _internal_mutable_cycle_col_list()->Mutable(index); } -inline const std::string& AlterDatabaseRefreshCollStmt::_internal_dbname() const { - return _impl_.dbname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CTECycleClause::mutable_cycle_col_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CTECycleClause.cycle_col_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_cycle_col_list(); } -inline void AlterDatabaseRefreshCollStmt::_internal_set_dbname(const std::string& value) { - - _impl_.dbname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& CTECycleClause::cycle_col_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_col_list) + return _internal_cycle_col_list().Get(index); } -inline std::string* AlterDatabaseRefreshCollStmt::_internal_mutable_dbname() { - - return _impl_.dbname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CTECycleClause::add_cycle_col_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_cycle_col_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CTECycleClause.cycle_col_list) + return _add; } -inline std::string* AlterDatabaseRefreshCollStmt::release_dbname() { - // @@protoc_insertion_point(field_release:pg_query.AlterDatabaseRefreshCollStmt.dbname) - return _impl_.dbname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CTECycleClause::cycle_col_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CTECycleClause.cycle_col_list) + return _internal_cycle_col_list(); } -inline void AlterDatabaseRefreshCollStmt::set_allocated_dbname(std::string* dbname) { - if (dbname != nullptr) { - - } else { - - } - _impl_.dbname_.SetAllocated(dbname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.dbname_.IsDefault()) { - _impl_.dbname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDatabaseRefreshCollStmt.dbname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CTECycleClause::_internal_cycle_col_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cycle_col_list_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CTECycleClause::_internal_mutable_cycle_col_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.cycle_col_list_; } -// ------------------------------------------------------------------- - -// AlterDatabaseSetStmt - -// string dbname = 1 [json_name = "dbname"]; -inline void AlterDatabaseSetStmt::clear_dbname() { - _impl_.dbname_.ClearToEmpty(); +// string cycle_mark_column = 2 [json_name = "cycle_mark_column"]; +inline void CTECycleClause::clear_cycle_mark_column() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cycle_mark_column_.ClearToEmpty(); } -inline const std::string& AlterDatabaseSetStmt::dbname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseSetStmt.dbname) - return _internal_dbname(); +inline const std::string& CTECycleClause::cycle_mark_column() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_column) + return _internal_cycle_mark_column(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterDatabaseSetStmt::set_dbname(ArgT0&& arg0, ArgT... args) { - - _impl_.dbname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterDatabaseSetStmt.dbname) +template +inline PROTOBUF_ALWAYS_INLINE void CTECycleClause::set_cycle_mark_column(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cycle_mark_column_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_column) } -inline std::string* AlterDatabaseSetStmt::mutable_dbname() { - std::string* _s = _internal_mutable_dbname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseSetStmt.dbname) +inline std::string* CTECycleClause::mutable_cycle_mark_column() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_cycle_mark_column(); + // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_mark_column) return _s; } -inline const std::string& AlterDatabaseSetStmt::_internal_dbname() const { - return _impl_.dbname_.Get(); +inline const std::string& CTECycleClause::_internal_cycle_mark_column() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cycle_mark_column_.Get(); } -inline void AlterDatabaseSetStmt::_internal_set_dbname(const std::string& value) { - - _impl_.dbname_.Set(value, GetArenaForAllocation()); +inline void CTECycleClause::_internal_set_cycle_mark_column(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cycle_mark_column_.Set(value, GetArena()); } -inline std::string* AlterDatabaseSetStmt::_internal_mutable_dbname() { - - return _impl_.dbname_.Mutable(GetArenaForAllocation()); +inline std::string* CTECycleClause::_internal_mutable_cycle_mark_column() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.cycle_mark_column_.Mutable( GetArena()); } -inline std::string* AlterDatabaseSetStmt::release_dbname() { - // @@protoc_insertion_point(field_release:pg_query.AlterDatabaseSetStmt.dbname) - return _impl_.dbname_.Release(); +inline std::string* CTECycleClause::release_cycle_mark_column() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CTECycleClause.cycle_mark_column) + return _impl_.cycle_mark_column_.Release(); } -inline void AlterDatabaseSetStmt::set_allocated_dbname(std::string* dbname) { - if (dbname != nullptr) { - - } else { - - } - _impl_.dbname_.SetAllocated(dbname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.dbname_.IsDefault()) { - _impl_.dbname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDatabaseSetStmt.dbname) +inline void CTECycleClause::set_allocated_cycle_mark_column(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cycle_mark_column_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.cycle_mark_column_.IsDefault()) { + _impl_.cycle_mark_column_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CTECycleClause.cycle_mark_column) } -// .pg_query.VariableSetStmt setstmt = 2 [json_name = "setstmt"]; -inline bool AlterDatabaseSetStmt::_internal_has_setstmt() const { - return this != internal_default_instance() && _impl_.setstmt_ != nullptr; -} -inline bool AlterDatabaseSetStmt::has_setstmt() const { - return _internal_has_setstmt(); +// .pg_query.Node cycle_mark_value = 3 [json_name = "cycle_mark_value"]; +inline bool CTECycleClause::has_cycle_mark_value() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.cycle_mark_value_ != nullptr); + return value; } -inline void AlterDatabaseSetStmt::clear_setstmt() { - if (GetArenaForAllocation() == nullptr && _impl_.setstmt_ != nullptr) { - delete _impl_.setstmt_; - } - _impl_.setstmt_ = nullptr; +inline void CTECycleClause::clear_cycle_mark_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.cycle_mark_value_ != nullptr) _impl_.cycle_mark_value_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::VariableSetStmt& AlterDatabaseSetStmt::_internal_setstmt() const { - const ::pg_query::VariableSetStmt* p = _impl_.setstmt_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_VariableSetStmt_default_instance_); +inline const ::pg_query::Node& CTECycleClause::_internal_cycle_mark_value() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.cycle_mark_value_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::VariableSetStmt& AlterDatabaseSetStmt::setstmt() const { - // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseSetStmt.setstmt) - return _internal_setstmt(); +inline const ::pg_query::Node& CTECycleClause::cycle_mark_value() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_value) + return _internal_cycle_mark_value(); } -inline void AlterDatabaseSetStmt::unsafe_arena_set_allocated_setstmt( - ::pg_query::VariableSetStmt* setstmt) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.setstmt_); +inline void CTECycleClause::unsafe_arena_set_allocated_cycle_mark_value(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.cycle_mark_value_); } - _impl_.setstmt_ = setstmt; - if (setstmt) { - + _impl_.cycle_mark_value_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterDatabaseSetStmt.setstmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CTECycleClause.cycle_mark_value) } -inline ::pg_query::VariableSetStmt* AlterDatabaseSetStmt::release_setstmt() { - - ::pg_query::VariableSetStmt* temp = _impl_.setstmt_; - _impl_.setstmt_ = nullptr; +inline ::pg_query::Node* CTECycleClause::release_cycle_mark_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.cycle_mark_value_; + _impl_.cycle_mark_value_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::VariableSetStmt* AlterDatabaseSetStmt::unsafe_arena_release_setstmt() { - // @@protoc_insertion_point(field_release:pg_query.AlterDatabaseSetStmt.setstmt) - - ::pg_query::VariableSetStmt* temp = _impl_.setstmt_; - _impl_.setstmt_ = nullptr; +inline ::pg_query::Node* CTECycleClause::unsafe_arena_release_cycle_mark_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CTECycleClause.cycle_mark_value) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.cycle_mark_value_; + _impl_.cycle_mark_value_ = nullptr; return temp; } -inline ::pg_query::VariableSetStmt* AlterDatabaseSetStmt::_internal_mutable_setstmt() { - - if (_impl_.setstmt_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::VariableSetStmt>(GetArenaForAllocation()); - _impl_.setstmt_ = p; +inline ::pg_query::Node* CTECycleClause::_internal_mutable_cycle_mark_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.cycle_mark_value_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.cycle_mark_value_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.setstmt_; + return _impl_.cycle_mark_value_; } -inline ::pg_query::VariableSetStmt* AlterDatabaseSetStmt::mutable_setstmt() { - ::pg_query::VariableSetStmt* _msg = _internal_mutable_setstmt(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseSetStmt.setstmt) +inline ::pg_query::Node* CTECycleClause::mutable_cycle_mark_value() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_cycle_mark_value(); + // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_mark_value) return _msg; } -inline void AlterDatabaseSetStmt::set_allocated_setstmt(::pg_query::VariableSetStmt* setstmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CTECycleClause::set_allocated_cycle_mark_value(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.setstmt_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.cycle_mark_value_); } - if (setstmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(setstmt); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - setstmt = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, setstmt, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.setstmt_ = setstmt; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDatabaseSetStmt.setstmt) -} -// ------------------------------------------------------------------- - -// AlterRoleSetStmt - -// .pg_query.RoleSpec role = 1 [json_name = "role"]; -inline bool AlterRoleSetStmt::_internal_has_role() const { - return this != internal_default_instance() && _impl_.role_ != nullptr; + _impl_.cycle_mark_value_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CTECycleClause.cycle_mark_value) } -inline bool AlterRoleSetStmt::has_role() const { - return _internal_has_role(); + +// .pg_query.Node cycle_mark_default = 4 [json_name = "cycle_mark_default"]; +inline bool CTECycleClause::has_cycle_mark_default() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.cycle_mark_default_ != nullptr); + return value; } -inline void AlterRoleSetStmt::clear_role() { - if (GetArenaForAllocation() == nullptr && _impl_.role_ != nullptr) { - delete _impl_.role_; - } - _impl_.role_ = nullptr; +inline void CTECycleClause::clear_cycle_mark_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.cycle_mark_default_ != nullptr) _impl_.cycle_mark_default_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::RoleSpec& AlterRoleSetStmt::_internal_role() const { - const ::pg_query::RoleSpec* p = _impl_.role_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::Node& CTECycleClause::_internal_cycle_mark_default() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.cycle_mark_default_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RoleSpec& AlterRoleSetStmt::role() const { - // @@protoc_insertion_point(field_get:pg_query.AlterRoleSetStmt.role) - return _internal_role(); +inline const ::pg_query::Node& CTECycleClause::cycle_mark_default() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_default) + return _internal_cycle_mark_default(); } -inline void AlterRoleSetStmt::unsafe_arena_set_allocated_role( - ::pg_query::RoleSpec* role) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.role_); +inline void CTECycleClause::unsafe_arena_set_allocated_cycle_mark_default(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.cycle_mark_default_); } - _impl_.role_ = role; - if (role) { - + _impl_.cycle_mark_default_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterRoleSetStmt.role) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CTECycleClause.cycle_mark_default) } -inline ::pg_query::RoleSpec* AlterRoleSetStmt::release_role() { - - ::pg_query::RoleSpec* temp = _impl_.role_; - _impl_.role_ = nullptr; +inline ::pg_query::Node* CTECycleClause::release_cycle_mark_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.cycle_mark_default_; + _impl_.cycle_mark_default_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* AlterRoleSetStmt::unsafe_arena_release_role() { - // @@protoc_insertion_point(field_release:pg_query.AlterRoleSetStmt.role) - - ::pg_query::RoleSpec* temp = _impl_.role_; - _impl_.role_ = nullptr; +inline ::pg_query::Node* CTECycleClause::unsafe_arena_release_cycle_mark_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CTECycleClause.cycle_mark_default) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.cycle_mark_default_; + _impl_.cycle_mark_default_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* AlterRoleSetStmt::_internal_mutable_role() { - - if (_impl_.role_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.role_ = p; +inline ::pg_query::Node* CTECycleClause::_internal_mutable_cycle_mark_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.cycle_mark_default_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.cycle_mark_default_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.role_; + return _impl_.cycle_mark_default_; } -inline ::pg_query::RoleSpec* AlterRoleSetStmt::mutable_role() { - ::pg_query::RoleSpec* _msg = _internal_mutable_role(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleSetStmt.role) +inline ::pg_query::Node* CTECycleClause::mutable_cycle_mark_default() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_cycle_mark_default(); + // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_mark_default) return _msg; } -inline void AlterRoleSetStmt::set_allocated_role(::pg_query::RoleSpec* role) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CTECycleClause::set_allocated_cycle_mark_default(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.role_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.cycle_mark_default_); } - if (role) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(role); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - role = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, role, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.role_ = role; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterRoleSetStmt.role) + + _impl_.cycle_mark_default_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CTECycleClause.cycle_mark_default) } -// string database = 2 [json_name = "database"]; -inline void AlterRoleSetStmt::clear_database() { - _impl_.database_.ClearToEmpty(); +// string cycle_path_column = 5 [json_name = "cycle_path_column"]; +inline void CTECycleClause::clear_cycle_path_column() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cycle_path_column_.ClearToEmpty(); } -inline const std::string& AlterRoleSetStmt::database() const { - // @@protoc_insertion_point(field_get:pg_query.AlterRoleSetStmt.database) - return _internal_database(); +inline const std::string& CTECycleClause::cycle_path_column() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_path_column) + return _internal_cycle_path_column(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterRoleSetStmt::set_database(ArgT0&& arg0, ArgT... args) { - - _impl_.database_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterRoleSetStmt.database) +template +inline PROTOBUF_ALWAYS_INLINE void CTECycleClause::set_cycle_path_column(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cycle_path_column_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_path_column) } -inline std::string* AlterRoleSetStmt::mutable_database() { - std::string* _s = _internal_mutable_database(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleSetStmt.database) +inline std::string* CTECycleClause::mutable_cycle_path_column() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_cycle_path_column(); + // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_path_column) return _s; } -inline const std::string& AlterRoleSetStmt::_internal_database() const { - return _impl_.database_.Get(); +inline const std::string& CTECycleClause::_internal_cycle_path_column() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cycle_path_column_.Get(); } -inline void AlterRoleSetStmt::_internal_set_database(const std::string& value) { - - _impl_.database_.Set(value, GetArenaForAllocation()); +inline void CTECycleClause::_internal_set_cycle_path_column(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cycle_path_column_.Set(value, GetArena()); } -inline std::string* AlterRoleSetStmt::_internal_mutable_database() { - - return _impl_.database_.Mutable(GetArenaForAllocation()); +inline std::string* CTECycleClause::_internal_mutable_cycle_path_column() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.cycle_path_column_.Mutable( GetArena()); } -inline std::string* AlterRoleSetStmt::release_database() { - // @@protoc_insertion_point(field_release:pg_query.AlterRoleSetStmt.database) - return _impl_.database_.Release(); +inline std::string* CTECycleClause::release_cycle_path_column() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CTECycleClause.cycle_path_column) + return _impl_.cycle_path_column_.Release(); } -inline void AlterRoleSetStmt::set_allocated_database(std::string* database) { - if (database != nullptr) { - - } else { - - } - _impl_.database_.SetAllocated(database, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.database_.IsDefault()) { - _impl_.database_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterRoleSetStmt.database) +inline void CTECycleClause::set_allocated_cycle_path_column(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cycle_path_column_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.cycle_path_column_.IsDefault()) { + _impl_.cycle_path_column_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CTECycleClause.cycle_path_column) } -// .pg_query.VariableSetStmt setstmt = 3 [json_name = "setstmt"]; -inline bool AlterRoleSetStmt::_internal_has_setstmt() const { - return this != internal_default_instance() && _impl_.setstmt_ != nullptr; -} -inline bool AlterRoleSetStmt::has_setstmt() const { - return _internal_has_setstmt(); +// int32 location = 6 [json_name = "location"]; +inline void CTECycleClause::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline void AlterRoleSetStmt::clear_setstmt() { - if (GetArenaForAllocation() == nullptr && _impl_.setstmt_ != nullptr) { - delete _impl_.setstmt_; - } - _impl_.setstmt_ = nullptr; +inline ::int32_t CTECycleClause::location() const { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.location) + return _internal_location(); } -inline const ::pg_query::VariableSetStmt& AlterRoleSetStmt::_internal_setstmt() const { - const ::pg_query::VariableSetStmt* p = _impl_.setstmt_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_VariableSetStmt_default_instance_); +inline void CTECycleClause::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.location) } -inline const ::pg_query::VariableSetStmt& AlterRoleSetStmt::setstmt() const { - // @@protoc_insertion_point(field_get:pg_query.AlterRoleSetStmt.setstmt) - return _internal_setstmt(); +inline ::int32_t CTECycleClause::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void AlterRoleSetStmt::unsafe_arena_set_allocated_setstmt( - ::pg_query::VariableSetStmt* setstmt) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.setstmt_); - } - _impl_.setstmt_ = setstmt; - if (setstmt) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterRoleSetStmt.setstmt) +inline void CTECycleClause::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -inline ::pg_query::VariableSetStmt* AlterRoleSetStmt::release_setstmt() { - - ::pg_query::VariableSetStmt* temp = _impl_.setstmt_; - _impl_.setstmt_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// uint32 cycle_mark_type = 7 [json_name = "cycle_mark_type"]; +inline void CTECycleClause::clear_cycle_mark_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cycle_mark_type_ = 0u; } -inline ::pg_query::VariableSetStmt* AlterRoleSetStmt::unsafe_arena_release_setstmt() { - // @@protoc_insertion_point(field_release:pg_query.AlterRoleSetStmt.setstmt) - - ::pg_query::VariableSetStmt* temp = _impl_.setstmt_; - _impl_.setstmt_ = nullptr; - return temp; +inline ::uint32_t CTECycleClause::cycle_mark_type() const { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_type) + return _internal_cycle_mark_type(); } -inline ::pg_query::VariableSetStmt* AlterRoleSetStmt::_internal_mutable_setstmt() { - - if (_impl_.setstmt_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::VariableSetStmt>(GetArenaForAllocation()); - _impl_.setstmt_ = p; - } - return _impl_.setstmt_; +inline void CTECycleClause::set_cycle_mark_type(::uint32_t value) { + _internal_set_cycle_mark_type(value); + // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_type) } -inline ::pg_query::VariableSetStmt* AlterRoleSetStmt::mutable_setstmt() { - ::pg_query::VariableSetStmt* _msg = _internal_mutable_setstmt(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleSetStmt.setstmt) - return _msg; +inline ::uint32_t CTECycleClause::_internal_cycle_mark_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cycle_mark_type_; } -inline void AlterRoleSetStmt::set_allocated_setstmt(::pg_query::VariableSetStmt* setstmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.setstmt_; - } - if (setstmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(setstmt); - if (message_arena != submessage_arena) { - setstmt = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, setstmt, submessage_arena); - } - - } else { - - } - _impl_.setstmt_ = setstmt; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterRoleSetStmt.setstmt) +inline void CTECycleClause::_internal_set_cycle_mark_type(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cycle_mark_type_ = value; } -// ------------------------------------------------------------------- - -// CreateConversionStmt - -// repeated .pg_query.Node conversion_name = 1 [json_name = "conversion_name"]; -inline int CreateConversionStmt::_internal_conversion_name_size() const { - return _impl_.conversion_name_.size(); +// int32 cycle_mark_typmod = 8 [json_name = "cycle_mark_typmod"]; +inline void CTECycleClause::clear_cycle_mark_typmod() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cycle_mark_typmod_ = 0; } -inline int CreateConversionStmt::conversion_name_size() const { - return _internal_conversion_name_size(); +inline ::int32_t CTECycleClause::cycle_mark_typmod() const { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_typmod) + return _internal_cycle_mark_typmod(); } -inline void CreateConversionStmt::clear_conversion_name() { - _impl_.conversion_name_.Clear(); +inline void CTECycleClause::set_cycle_mark_typmod(::int32_t value) { + _internal_set_cycle_mark_typmod(value); + // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_typmod) } -inline ::pg_query::Node* CreateConversionStmt::mutable_conversion_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateConversionStmt.conversion_name) - return _impl_.conversion_name_.Mutable(index); +inline ::int32_t CTECycleClause::_internal_cycle_mark_typmod() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cycle_mark_typmod_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateConversionStmt::mutable_conversion_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateConversionStmt.conversion_name) - return &_impl_.conversion_name_; +inline void CTECycleClause::_internal_set_cycle_mark_typmod(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cycle_mark_typmod_ = value; } -inline const ::pg_query::Node& CreateConversionStmt::_internal_conversion_name(int index) const { - return _impl_.conversion_name_.Get(index); + +// uint32 cycle_mark_collation = 9 [json_name = "cycle_mark_collation"]; +inline void CTECycleClause::clear_cycle_mark_collation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cycle_mark_collation_ = 0u; } -inline const ::pg_query::Node& CreateConversionStmt::conversion_name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.conversion_name) - return _internal_conversion_name(index); +inline ::uint32_t CTECycleClause::cycle_mark_collation() const { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_collation) + return _internal_cycle_mark_collation(); } -inline ::pg_query::Node* CreateConversionStmt::_internal_add_conversion_name() { - return _impl_.conversion_name_.Add(); +inline void CTECycleClause::set_cycle_mark_collation(::uint32_t value) { + _internal_set_cycle_mark_collation(value); + // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_collation) } -inline ::pg_query::Node* CreateConversionStmt::add_conversion_name() { - ::pg_query::Node* _add = _internal_add_conversion_name(); - // @@protoc_insertion_point(field_add:pg_query.CreateConversionStmt.conversion_name) - return _add; +inline ::uint32_t CTECycleClause::_internal_cycle_mark_collation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cycle_mark_collation_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateConversionStmt::conversion_name() const { - // @@protoc_insertion_point(field_list:pg_query.CreateConversionStmt.conversion_name) - return _impl_.conversion_name_; +inline void CTECycleClause::_internal_set_cycle_mark_collation(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cycle_mark_collation_ = value; } -// string for_encoding_name = 2 [json_name = "for_encoding_name"]; -inline void CreateConversionStmt::clear_for_encoding_name() { - _impl_.for_encoding_name_.ClearToEmpty(); -} -inline const std::string& CreateConversionStmt::for_encoding_name() const { - // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.for_encoding_name) - return _internal_for_encoding_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CreateConversionStmt::set_for_encoding_name(ArgT0&& arg0, ArgT... args) { - - _impl_.for_encoding_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateConversionStmt.for_encoding_name) -} -inline std::string* CreateConversionStmt::mutable_for_encoding_name() { - std::string* _s = _internal_mutable_for_encoding_name(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateConversionStmt.for_encoding_name) - return _s; -} -inline const std::string& CreateConversionStmt::_internal_for_encoding_name() const { - return _impl_.for_encoding_name_.Get(); +// uint32 cycle_mark_neop = 10 [json_name = "cycle_mark_neop"]; +inline void CTECycleClause::clear_cycle_mark_neop() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cycle_mark_neop_ = 0u; } -inline void CreateConversionStmt::_internal_set_for_encoding_name(const std::string& value) { - - _impl_.for_encoding_name_.Set(value, GetArenaForAllocation()); +inline ::uint32_t CTECycleClause::cycle_mark_neop() const { + // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_neop) + return _internal_cycle_mark_neop(); } -inline std::string* CreateConversionStmt::_internal_mutable_for_encoding_name() { - - return _impl_.for_encoding_name_.Mutable(GetArenaForAllocation()); +inline void CTECycleClause::set_cycle_mark_neop(::uint32_t value) { + _internal_set_cycle_mark_neop(value); + // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_neop) } -inline std::string* CreateConversionStmt::release_for_encoding_name() { - // @@protoc_insertion_point(field_release:pg_query.CreateConversionStmt.for_encoding_name) - return _impl_.for_encoding_name_.Release(); +inline ::uint32_t CTECycleClause::_internal_cycle_mark_neop() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cycle_mark_neop_; } -inline void CreateConversionStmt::set_allocated_for_encoding_name(std::string* for_encoding_name) { - if (for_encoding_name != nullptr) { - - } else { - - } - _impl_.for_encoding_name_.SetAllocated(for_encoding_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.for_encoding_name_.IsDefault()) { - _impl_.for_encoding_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateConversionStmt.for_encoding_name) +inline void CTECycleClause::_internal_set_cycle_mark_neop(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cycle_mark_neop_ = value; } -// string to_encoding_name = 3 [json_name = "to_encoding_name"]; -inline void CreateConversionStmt::clear_to_encoding_name() { - _impl_.to_encoding_name_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// CommonTableExpr + +// string ctename = 1 [json_name = "ctename"]; +inline void CommonTableExpr::clear_ctename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctename_.ClearToEmpty(); } -inline const std::string& CreateConversionStmt::to_encoding_name() const { - // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.to_encoding_name) - return _internal_to_encoding_name(); +inline const std::string& CommonTableExpr::ctename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctename) + return _internal_ctename(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateConversionStmt::set_to_encoding_name(ArgT0&& arg0, ArgT... args) { - - _impl_.to_encoding_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateConversionStmt.to_encoding_name) +template +inline PROTOBUF_ALWAYS_INLINE void CommonTableExpr::set_ctename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ctename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.ctename) } -inline std::string* CreateConversionStmt::mutable_to_encoding_name() { - std::string* _s = _internal_mutable_to_encoding_name(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateConversionStmt.to_encoding_name) +inline std::string* CommonTableExpr::mutable_ctename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_ctename(); + // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctename) return _s; } -inline const std::string& CreateConversionStmt::_internal_to_encoding_name() const { - return _impl_.to_encoding_name_.Get(); +inline const std::string& CommonTableExpr::_internal_ctename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ctename_.Get(); } -inline void CreateConversionStmt::_internal_set_to_encoding_name(const std::string& value) { - - _impl_.to_encoding_name_.Set(value, GetArenaForAllocation()); +inline void CommonTableExpr::_internal_set_ctename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ctename_.Set(value, GetArena()); } -inline std::string* CreateConversionStmt::_internal_mutable_to_encoding_name() { - - return _impl_.to_encoding_name_.Mutable(GetArenaForAllocation()); +inline std::string* CommonTableExpr::_internal_mutable_ctename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.ctename_.Mutable( GetArena()); } -inline std::string* CreateConversionStmt::release_to_encoding_name() { - // @@protoc_insertion_point(field_release:pg_query.CreateConversionStmt.to_encoding_name) - return _impl_.to_encoding_name_.Release(); +inline std::string* CommonTableExpr::release_ctename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CommonTableExpr.ctename) + return _impl_.ctename_.Release(); } -inline void CreateConversionStmt::set_allocated_to_encoding_name(std::string* to_encoding_name) { - if (to_encoding_name != nullptr) { - - } else { - - } - _impl_.to_encoding_name_.SetAllocated(to_encoding_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.to_encoding_name_.IsDefault()) { - _impl_.to_encoding_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateConversionStmt.to_encoding_name) +inline void CommonTableExpr::set_allocated_ctename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.ctename_.IsDefault()) { + _impl_.ctename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CommonTableExpr.ctename) } -// repeated .pg_query.Node func_name = 4 [json_name = "func_name"]; -inline int CreateConversionStmt::_internal_func_name_size() const { - return _impl_.func_name_.size(); +// repeated .pg_query.Node aliascolnames = 2 [json_name = "aliascolnames"]; +inline int CommonTableExpr::_internal_aliascolnames_size() const { + return _internal_aliascolnames().size(); } -inline int CreateConversionStmt::func_name_size() const { - return _internal_func_name_size(); +inline int CommonTableExpr::aliascolnames_size() const { + return _internal_aliascolnames_size(); } -inline void CreateConversionStmt::clear_func_name() { - _impl_.func_name_.Clear(); +inline void CommonTableExpr::clear_aliascolnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aliascolnames_.Clear(); } -inline ::pg_query::Node* CreateConversionStmt::mutable_func_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateConversionStmt.func_name) - return _impl_.func_name_.Mutable(index); +inline ::pg_query::Node* CommonTableExpr::mutable_aliascolnames(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.aliascolnames) + return _internal_mutable_aliascolnames()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateConversionStmt::mutable_func_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateConversionStmt.func_name) - return &_impl_.func_name_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CommonTableExpr::mutable_aliascolnames() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.aliascolnames) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_aliascolnames(); } -inline const ::pg_query::Node& CreateConversionStmt::_internal_func_name(int index) const { - return _impl_.func_name_.Get(index); +inline const ::pg_query::Node& CommonTableExpr::aliascolnames(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.aliascolnames) + return _internal_aliascolnames().Get(index); } -inline const ::pg_query::Node& CreateConversionStmt::func_name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.func_name) - return _internal_func_name(index); +inline ::pg_query::Node* CommonTableExpr::add_aliascolnames() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_aliascolnames()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.aliascolnames) + return _add; } -inline ::pg_query::Node* CreateConversionStmt::_internal_add_func_name() { - return _impl_.func_name_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CommonTableExpr::aliascolnames() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.aliascolnames) + return _internal_aliascolnames(); } -inline ::pg_query::Node* CreateConversionStmt::add_func_name() { - ::pg_query::Node* _add = _internal_add_func_name(); - // @@protoc_insertion_point(field_add:pg_query.CreateConversionStmt.func_name) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CommonTableExpr::_internal_aliascolnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aliascolnames_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateConversionStmt::func_name() const { - // @@protoc_insertion_point(field_list:pg_query.CreateConversionStmt.func_name) - return _impl_.func_name_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CommonTableExpr::_internal_mutable_aliascolnames() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.aliascolnames_; } -// bool def = 5 [json_name = "def"]; -inline void CreateConversionStmt::clear_def() { - _impl_.def_ = false; +// .pg_query.CTEMaterialize ctematerialized = 3 [json_name = "ctematerialized"]; +inline void CommonTableExpr::clear_ctematerialized() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctematerialized_ = 0; } -inline bool CreateConversionStmt::_internal_def() const { - return _impl_.def_; +inline ::pg_query::CTEMaterialize CommonTableExpr::ctematerialized() const { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctematerialized) + return _internal_ctematerialized(); } -inline bool CreateConversionStmt::def() const { - // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.def) - return _internal_def(); +inline void CommonTableExpr::set_ctematerialized(::pg_query::CTEMaterialize value) { + _internal_set_ctematerialized(value); + // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.ctematerialized) } -inline void CreateConversionStmt::_internal_set_def(bool value) { - - _impl_.def_ = value; +inline ::pg_query::CTEMaterialize CommonTableExpr::_internal_ctematerialized() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CTEMaterialize>(_impl_.ctematerialized_); } -inline void CreateConversionStmt::set_def(bool value) { - _internal_set_def(value); - // @@protoc_insertion_point(field_set:pg_query.CreateConversionStmt.def) +inline void CommonTableExpr::_internal_set_ctematerialized(::pg_query::CTEMaterialize value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ctematerialized_ = value; } -// ------------------------------------------------------------------- - -// CreateCastStmt - -// .pg_query.TypeName sourcetype = 1 [json_name = "sourcetype"]; -inline bool CreateCastStmt::_internal_has_sourcetype() const { - return this != internal_default_instance() && _impl_.sourcetype_ != nullptr; -} -inline bool CreateCastStmt::has_sourcetype() const { - return _internal_has_sourcetype(); +// .pg_query.Node ctequery = 4 [json_name = "ctequery"]; +inline bool CommonTableExpr::has_ctequery() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.ctequery_ != nullptr); + return value; } -inline void CreateCastStmt::clear_sourcetype() { - if (GetArenaForAllocation() == nullptr && _impl_.sourcetype_ != nullptr) { - delete _impl_.sourcetype_; - } - _impl_.sourcetype_ = nullptr; +inline void CommonTableExpr::clear_ctequery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.ctequery_ != nullptr) _impl_.ctequery_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::TypeName& CreateCastStmt::_internal_sourcetype() const { - const ::pg_query::TypeName* p = _impl_.sourcetype_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline const ::pg_query::Node& CommonTableExpr::_internal_ctequery() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.ctequery_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::TypeName& CreateCastStmt::sourcetype() const { - // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.sourcetype) - return _internal_sourcetype(); +inline const ::pg_query::Node& CommonTableExpr::ctequery() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctequery) + return _internal_ctequery(); } -inline void CreateCastStmt::unsafe_arena_set_allocated_sourcetype( - ::pg_query::TypeName* sourcetype) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.sourcetype_); +inline void CommonTableExpr::unsafe_arena_set_allocated_ctequery(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.ctequery_); } - _impl_.sourcetype_ = sourcetype; - if (sourcetype) { - + _impl_.ctequery_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateCastStmt.sourcetype) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CommonTableExpr.ctequery) } -inline ::pg_query::TypeName* CreateCastStmt::release_sourcetype() { - - ::pg_query::TypeName* temp = _impl_.sourcetype_; - _impl_.sourcetype_ = nullptr; +inline ::pg_query::Node* CommonTableExpr::release_ctequery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.ctequery_; + _impl_.ctequery_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* CreateCastStmt::unsafe_arena_release_sourcetype() { - // @@protoc_insertion_point(field_release:pg_query.CreateCastStmt.sourcetype) - - ::pg_query::TypeName* temp = _impl_.sourcetype_; - _impl_.sourcetype_ = nullptr; +inline ::pg_query::Node* CommonTableExpr::unsafe_arena_release_ctequery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CommonTableExpr.ctequery) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.ctequery_; + _impl_.ctequery_ = nullptr; return temp; } -inline ::pg_query::TypeName* CreateCastStmt::_internal_mutable_sourcetype() { - - if (_impl_.sourcetype_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.sourcetype_ = p; +inline ::pg_query::Node* CommonTableExpr::_internal_mutable_ctequery() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.ctequery_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.ctequery_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.sourcetype_; + return _impl_.ctequery_; } -inline ::pg_query::TypeName* CreateCastStmt::mutable_sourcetype() { - ::pg_query::TypeName* _msg = _internal_mutable_sourcetype(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateCastStmt.sourcetype) +inline ::pg_query::Node* CommonTableExpr::mutable_ctequery() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_ctequery(); + // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctequery) return _msg; } -inline void CreateCastStmt::set_allocated_sourcetype(::pg_query::TypeName* sourcetype) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CommonTableExpr::set_allocated_ctequery(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.sourcetype_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.ctequery_); } - if (sourcetype) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(sourcetype); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - sourcetype = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, sourcetype, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.sourcetype_ = sourcetype; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateCastStmt.sourcetype) -} -// .pg_query.TypeName targettype = 2 [json_name = "targettype"]; -inline bool CreateCastStmt::_internal_has_targettype() const { - return this != internal_default_instance() && _impl_.targettype_ != nullptr; + _impl_.ctequery_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CommonTableExpr.ctequery) } -inline bool CreateCastStmt::has_targettype() const { - return _internal_has_targettype(); + +// .pg_query.CTESearchClause search_clause = 5 [json_name = "search_clause"]; +inline bool CommonTableExpr::has_search_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.search_clause_ != nullptr); + return value; } -inline void CreateCastStmt::clear_targettype() { - if (GetArenaForAllocation() == nullptr && _impl_.targettype_ != nullptr) { - delete _impl_.targettype_; - } - _impl_.targettype_ = nullptr; +inline void CommonTableExpr::clear_search_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.search_clause_ != nullptr) _impl_.search_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::TypeName& CreateCastStmt::_internal_targettype() const { - const ::pg_query::TypeName* p = _impl_.targettype_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline const ::pg_query::CTESearchClause& CommonTableExpr::_internal_search_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::CTESearchClause* p = _impl_.search_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_CTESearchClause_default_instance_); } -inline const ::pg_query::TypeName& CreateCastStmt::targettype() const { - // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.targettype) - return _internal_targettype(); +inline const ::pg_query::CTESearchClause& CommonTableExpr::search_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.search_clause) + return _internal_search_clause(); } -inline void CreateCastStmt::unsafe_arena_set_allocated_targettype( - ::pg_query::TypeName* targettype) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.targettype_); +inline void CommonTableExpr::unsafe_arena_set_allocated_search_clause(::pg_query::CTESearchClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.search_clause_); } - _impl_.targettype_ = targettype; - if (targettype) { - + _impl_.search_clause_ = reinterpret_cast<::pg_query::CTESearchClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateCastStmt.targettype) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CommonTableExpr.search_clause) } -inline ::pg_query::TypeName* CreateCastStmt::release_targettype() { - - ::pg_query::TypeName* temp = _impl_.targettype_; - _impl_.targettype_ = nullptr; +inline ::pg_query::CTESearchClause* CommonTableExpr::release_search_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::CTESearchClause* released = _impl_.search_clause_; + _impl_.search_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* CreateCastStmt::unsafe_arena_release_targettype() { - // @@protoc_insertion_point(field_release:pg_query.CreateCastStmt.targettype) - - ::pg_query::TypeName* temp = _impl_.targettype_; - _impl_.targettype_ = nullptr; +inline ::pg_query::CTESearchClause* CommonTableExpr::unsafe_arena_release_search_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CommonTableExpr.search_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::CTESearchClause* temp = _impl_.search_clause_; + _impl_.search_clause_ = nullptr; return temp; } -inline ::pg_query::TypeName* CreateCastStmt::_internal_mutable_targettype() { - - if (_impl_.targettype_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.targettype_ = p; +inline ::pg_query::CTESearchClause* CommonTableExpr::_internal_mutable_search_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.search_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::CTESearchClause>(GetArena()); + _impl_.search_clause_ = reinterpret_cast<::pg_query::CTESearchClause*>(p); } - return _impl_.targettype_; + return _impl_.search_clause_; } -inline ::pg_query::TypeName* CreateCastStmt::mutable_targettype() { - ::pg_query::TypeName* _msg = _internal_mutable_targettype(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateCastStmt.targettype) +inline ::pg_query::CTESearchClause* CommonTableExpr::mutable_search_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CTESearchClause* _msg = _internal_mutable_search_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.search_clause) return _msg; } -inline void CreateCastStmt::set_allocated_targettype(::pg_query::TypeName* targettype) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CommonTableExpr::set_allocated_search_clause(::pg_query::CTESearchClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.targettype_; + delete reinterpret_cast<::pg_query::CTESearchClause*>(_impl_.search_clause_); } - if (targettype) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(targettype); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::CTESearchClause*>(value)->GetArena(); if (message_arena != submessage_arena) { - targettype = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, targettype, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.targettype_ = targettype; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateCastStmt.targettype) -} -// .pg_query.ObjectWithArgs func = 3 [json_name = "func"]; -inline bool CreateCastStmt::_internal_has_func() const { - return this != internal_default_instance() && _impl_.func_ != nullptr; + _impl_.search_clause_ = reinterpret_cast<::pg_query::CTESearchClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CommonTableExpr.search_clause) } -inline bool CreateCastStmt::has_func() const { - return _internal_has_func(); + +// .pg_query.CTECycleClause cycle_clause = 6 [json_name = "cycle_clause"]; +inline bool CommonTableExpr::has_cycle_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.cycle_clause_ != nullptr); + return value; } -inline void CreateCastStmt::clear_func() { - if (GetArenaForAllocation() == nullptr && _impl_.func_ != nullptr) { - delete _impl_.func_; - } - _impl_.func_ = nullptr; +inline void CommonTableExpr::clear_cycle_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.cycle_clause_ != nullptr) _impl_.cycle_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline const ::pg_query::ObjectWithArgs& CreateCastStmt::_internal_func() const { - const ::pg_query::ObjectWithArgs* p = _impl_.func_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_ObjectWithArgs_default_instance_); +inline const ::pg_query::CTECycleClause& CommonTableExpr::_internal_cycle_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::CTECycleClause* p = _impl_.cycle_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_CTECycleClause_default_instance_); } -inline const ::pg_query::ObjectWithArgs& CreateCastStmt::func() const { - // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.func) - return _internal_func(); +inline const ::pg_query::CTECycleClause& CommonTableExpr::cycle_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.cycle_clause) + return _internal_cycle_clause(); } -inline void CreateCastStmt::unsafe_arena_set_allocated_func( - ::pg_query::ObjectWithArgs* func) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.func_); +inline void CommonTableExpr::unsafe_arena_set_allocated_cycle_clause(::pg_query::CTECycleClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.cycle_clause_); } - _impl_.func_ = func; - if (func) { - + _impl_.cycle_clause_ = reinterpret_cast<::pg_query::CTECycleClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateCastStmt.func) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CommonTableExpr.cycle_clause) } -inline ::pg_query::ObjectWithArgs* CreateCastStmt::release_func() { - - ::pg_query::ObjectWithArgs* temp = _impl_.func_; - _impl_.func_ = nullptr; +inline ::pg_query::CTECycleClause* CommonTableExpr::release_cycle_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::CTECycleClause* released = _impl_.cycle_clause_; + _impl_.cycle_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::ObjectWithArgs* CreateCastStmt::unsafe_arena_release_func() { - // @@protoc_insertion_point(field_release:pg_query.CreateCastStmt.func) - - ::pg_query::ObjectWithArgs* temp = _impl_.func_; - _impl_.func_ = nullptr; +inline ::pg_query::CTECycleClause* CommonTableExpr::unsafe_arena_release_cycle_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CommonTableExpr.cycle_clause) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::CTECycleClause* temp = _impl_.cycle_clause_; + _impl_.cycle_clause_ = nullptr; return temp; } -inline ::pg_query::ObjectWithArgs* CreateCastStmt::_internal_mutable_func() { - - if (_impl_.func_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArenaForAllocation()); - _impl_.func_ = p; +inline ::pg_query::CTECycleClause* CommonTableExpr::_internal_mutable_cycle_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.cycle_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::CTECycleClause>(GetArena()); + _impl_.cycle_clause_ = reinterpret_cast<::pg_query::CTECycleClause*>(p); } - return _impl_.func_; + return _impl_.cycle_clause_; } -inline ::pg_query::ObjectWithArgs* CreateCastStmt::mutable_func() { - ::pg_query::ObjectWithArgs* _msg = _internal_mutable_func(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateCastStmt.func) +inline ::pg_query::CTECycleClause* CommonTableExpr::mutable_cycle_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CTECycleClause* _msg = _internal_mutable_cycle_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.cycle_clause) return _msg; } -inline void CreateCastStmt::set_allocated_func(::pg_query::ObjectWithArgs* func) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CommonTableExpr::set_allocated_cycle_clause(::pg_query::CTECycleClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.func_; + delete reinterpret_cast<::pg_query::CTECycleClause*>(_impl_.cycle_clause_); } - if (func) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(func); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::CTECycleClause*>(value)->GetArena(); if (message_arena != submessage_arena) { - func = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, func, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.func_ = func; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateCastStmt.func) + + _impl_.cycle_clause_ = reinterpret_cast<::pg_query::CTECycleClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CommonTableExpr.cycle_clause) } -// .pg_query.CoercionContext context = 4 [json_name = "context"]; -inline void CreateCastStmt::clear_context() { - _impl_.context_ = 0; +// int32 location = 7 [json_name = "location"]; +inline void CommonTableExpr::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline ::pg_query::CoercionContext CreateCastStmt::_internal_context() const { - return static_cast< ::pg_query::CoercionContext >(_impl_.context_); +inline ::int32_t CommonTableExpr::location() const { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.location) + return _internal_location(); } -inline ::pg_query::CoercionContext CreateCastStmt::context() const { - // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.context) - return _internal_context(); +inline void CommonTableExpr::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.location) } -inline void CreateCastStmt::_internal_set_context(::pg_query::CoercionContext value) { - - _impl_.context_ = value; +inline ::int32_t CommonTableExpr::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void CreateCastStmt::set_context(::pg_query::CoercionContext value) { - _internal_set_context(value); - // @@protoc_insertion_point(field_set:pg_query.CreateCastStmt.context) +inline void CommonTableExpr::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// bool inout = 5 [json_name = "inout"]; -inline void CreateCastStmt::clear_inout() { - _impl_.inout_ = false; +// bool cterecursive = 8 [json_name = "cterecursive"]; +inline void CommonTableExpr::clear_cterecursive() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cterecursive_ = false; } -inline bool CreateCastStmt::_internal_inout() const { - return _impl_.inout_; +inline bool CommonTableExpr::cterecursive() const { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.cterecursive) + return _internal_cterecursive(); } -inline bool CreateCastStmt::inout() const { - // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.inout) - return _internal_inout(); +inline void CommonTableExpr::set_cterecursive(bool value) { + _internal_set_cterecursive(value); + // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.cterecursive) } -inline void CreateCastStmt::_internal_set_inout(bool value) { - - _impl_.inout_ = value; +inline bool CommonTableExpr::_internal_cterecursive() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cterecursive_; } -inline void CreateCastStmt::set_inout(bool value) { - _internal_set_inout(value); - // @@protoc_insertion_point(field_set:pg_query.CreateCastStmt.inout) +inline void CommonTableExpr::_internal_set_cterecursive(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cterecursive_ = value; } -// ------------------------------------------------------------------- - -// CreateOpClassStmt +// int32 cterefcount = 9 [json_name = "cterefcount"]; +inline void CommonTableExpr::clear_cterefcount() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cterefcount_ = 0; +} +inline ::int32_t CommonTableExpr::cterefcount() const { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.cterefcount) + return _internal_cterefcount(); +} +inline void CommonTableExpr::set_cterefcount(::int32_t value) { + _internal_set_cterefcount(value); + // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.cterefcount) +} +inline ::int32_t CommonTableExpr::_internal_cterefcount() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cterefcount_; +} +inline void CommonTableExpr::_internal_set_cterefcount(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cterefcount_ = value; +} -// repeated .pg_query.Node opclassname = 1 [json_name = "opclassname"]; -inline int CreateOpClassStmt::_internal_opclassname_size() const { - return _impl_.opclassname_.size(); +// repeated .pg_query.Node ctecolnames = 10 [json_name = "ctecolnames"]; +inline int CommonTableExpr::_internal_ctecolnames_size() const { + return _internal_ctecolnames().size(); } -inline int CreateOpClassStmt::opclassname_size() const { - return _internal_opclassname_size(); +inline int CommonTableExpr::ctecolnames_size() const { + return _internal_ctecolnames_size(); } -inline void CreateOpClassStmt::clear_opclassname() { - _impl_.opclassname_.Clear(); +inline void CommonTableExpr::clear_ctecolnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctecolnames_.Clear(); } -inline ::pg_query::Node* CreateOpClassStmt::mutable_opclassname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.opclassname) - return _impl_.opclassname_.Mutable(index); +inline ::pg_query::Node* CommonTableExpr::mutable_ctecolnames(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctecolnames) + return _internal_mutable_ctecolnames()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateOpClassStmt::mutable_opclassname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassStmt.opclassname) - return &_impl_.opclassname_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CommonTableExpr::mutable_ctecolnames() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.ctecolnames) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_ctecolnames(); } -inline const ::pg_query::Node& CreateOpClassStmt::_internal_opclassname(int index) const { - return _impl_.opclassname_.Get(index); +inline const ::pg_query::Node& CommonTableExpr::ctecolnames(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctecolnames) + return _internal_ctecolnames().Get(index); } -inline const ::pg_query::Node& CreateOpClassStmt::opclassname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.opclassname) - return _internal_opclassname(index); +inline ::pg_query::Node* CommonTableExpr::add_ctecolnames() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_ctecolnames()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.ctecolnames) + return _add; } -inline ::pg_query::Node* CreateOpClassStmt::_internal_add_opclassname() { - return _impl_.opclassname_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CommonTableExpr::ctecolnames() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.ctecolnames) + return _internal_ctecolnames(); } -inline ::pg_query::Node* CreateOpClassStmt::add_opclassname() { - ::pg_query::Node* _add = _internal_add_opclassname(); - // @@protoc_insertion_point(field_add:pg_query.CreateOpClassStmt.opclassname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CommonTableExpr::_internal_ctecolnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ctecolnames_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CommonTableExpr::_internal_mutable_ctecolnames() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.ctecolnames_; +} + +// repeated .pg_query.Node ctecoltypes = 11 [json_name = "ctecoltypes"]; +inline int CommonTableExpr::_internal_ctecoltypes_size() const { + return _internal_ctecoltypes().size(); +} +inline int CommonTableExpr::ctecoltypes_size() const { + return _internal_ctecoltypes_size(); +} +inline void CommonTableExpr::clear_ctecoltypes() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctecoltypes_.Clear(); +} +inline ::pg_query::Node* CommonTableExpr::mutable_ctecoltypes(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctecoltypes) + return _internal_mutable_ctecoltypes()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CommonTableExpr::mutable_ctecoltypes() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.ctecoltypes) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_ctecoltypes(); +} +inline const ::pg_query::Node& CommonTableExpr::ctecoltypes(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctecoltypes) + return _internal_ctecoltypes().Get(index); +} +inline ::pg_query::Node* CommonTableExpr::add_ctecoltypes() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_ctecoltypes()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.ctecoltypes) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateOpClassStmt::opclassname() const { - // @@protoc_insertion_point(field_list:pg_query.CreateOpClassStmt.opclassname) - return _impl_.opclassname_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CommonTableExpr::ctecoltypes() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.ctecoltypes) + return _internal_ctecoltypes(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CommonTableExpr::_internal_ctecoltypes() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ctecoltypes_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CommonTableExpr::_internal_mutable_ctecoltypes() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.ctecoltypes_; } -// repeated .pg_query.Node opfamilyname = 2 [json_name = "opfamilyname"]; -inline int CreateOpClassStmt::_internal_opfamilyname_size() const { - return _impl_.opfamilyname_.size(); +// repeated .pg_query.Node ctecoltypmods = 12 [json_name = "ctecoltypmods"]; +inline int CommonTableExpr::_internal_ctecoltypmods_size() const { + return _internal_ctecoltypmods().size(); } -inline int CreateOpClassStmt::opfamilyname_size() const { - return _internal_opfamilyname_size(); +inline int CommonTableExpr::ctecoltypmods_size() const { + return _internal_ctecoltypmods_size(); } -inline void CreateOpClassStmt::clear_opfamilyname() { - _impl_.opfamilyname_.Clear(); +inline void CommonTableExpr::clear_ctecoltypmods() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctecoltypmods_.Clear(); } -inline ::pg_query::Node* CreateOpClassStmt::mutable_opfamilyname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.opfamilyname) - return _impl_.opfamilyname_.Mutable(index); +inline ::pg_query::Node* CommonTableExpr::mutable_ctecoltypmods(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctecoltypmods) + return _internal_mutable_ctecoltypmods()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateOpClassStmt::mutable_opfamilyname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassStmt.opfamilyname) - return &_impl_.opfamilyname_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CommonTableExpr::mutable_ctecoltypmods() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.ctecoltypmods) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_ctecoltypmods(); } -inline const ::pg_query::Node& CreateOpClassStmt::_internal_opfamilyname(int index) const { - return _impl_.opfamilyname_.Get(index); +inline const ::pg_query::Node& CommonTableExpr::ctecoltypmods(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctecoltypmods) + return _internal_ctecoltypmods().Get(index); } -inline const ::pg_query::Node& CreateOpClassStmt::opfamilyname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.opfamilyname) - return _internal_opfamilyname(index); +inline ::pg_query::Node* CommonTableExpr::add_ctecoltypmods() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_ctecoltypmods()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.ctecoltypmods) + return _add; } -inline ::pg_query::Node* CreateOpClassStmt::_internal_add_opfamilyname() { - return _impl_.opfamilyname_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CommonTableExpr::ctecoltypmods() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.ctecoltypmods) + return _internal_ctecoltypmods(); } -inline ::pg_query::Node* CreateOpClassStmt::add_opfamilyname() { - ::pg_query::Node* _add = _internal_add_opfamilyname(); - // @@protoc_insertion_point(field_add:pg_query.CreateOpClassStmt.opfamilyname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CommonTableExpr::_internal_ctecoltypmods() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ctecoltypmods_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CommonTableExpr::_internal_mutable_ctecoltypmods() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.ctecoltypmods_; +} + +// repeated .pg_query.Node ctecolcollations = 13 [json_name = "ctecolcollations"]; +inline int CommonTableExpr::_internal_ctecolcollations_size() const { + return _internal_ctecolcollations().size(); +} +inline int CommonTableExpr::ctecolcollations_size() const { + return _internal_ctecolcollations_size(); +} +inline void CommonTableExpr::clear_ctecolcollations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ctecolcollations_.Clear(); +} +inline ::pg_query::Node* CommonTableExpr::mutable_ctecolcollations(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctecolcollations) + return _internal_mutable_ctecolcollations()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CommonTableExpr::mutable_ctecolcollations() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.ctecolcollations) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_ctecolcollations(); +} +inline const ::pg_query::Node& CommonTableExpr::ctecolcollations(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctecolcollations) + return _internal_ctecolcollations().Get(index); +} +inline ::pg_query::Node* CommonTableExpr::add_ctecolcollations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_ctecolcollations()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.ctecolcollations) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateOpClassStmt::opfamilyname() const { - // @@protoc_insertion_point(field_list:pg_query.CreateOpClassStmt.opfamilyname) - return _impl_.opfamilyname_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CommonTableExpr::ctecolcollations() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.ctecolcollations) + return _internal_ctecolcollations(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CommonTableExpr::_internal_ctecolcollations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ctecolcollations_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CommonTableExpr::_internal_mutable_ctecolcollations() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.ctecolcollations_; } -// string amname = 3 [json_name = "amname"]; -inline void CreateOpClassStmt::clear_amname() { - _impl_.amname_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// MergeWhenClause + +// bool matched = 1 [json_name = "matched"]; +inline void MergeWhenClause::clear_matched() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.matched_ = false; } -inline const std::string& CreateOpClassStmt::amname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.amname) - return _internal_amname(); +inline bool MergeWhenClause::matched() const { + // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.matched) + return _internal_matched(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateOpClassStmt::set_amname(ArgT0&& arg0, ArgT... args) { - - _impl_.amname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateOpClassStmt.amname) +inline void MergeWhenClause::set_matched(bool value) { + _internal_set_matched(value); + // @@protoc_insertion_point(field_set:pg_query.MergeWhenClause.matched) } -inline std::string* CreateOpClassStmt::mutable_amname() { - std::string* _s = _internal_mutable_amname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.amname) - return _s; +inline bool MergeWhenClause::_internal_matched() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.matched_; } -inline const std::string& CreateOpClassStmt::_internal_amname() const { - return _impl_.amname_.Get(); +inline void MergeWhenClause::_internal_set_matched(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.matched_ = value; } -inline void CreateOpClassStmt::_internal_set_amname(const std::string& value) { - - _impl_.amname_.Set(value, GetArenaForAllocation()); + +// .pg_query.CmdType command_type = 2 [json_name = "commandType"]; +inline void MergeWhenClause::clear_command_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.command_type_ = 0; } -inline std::string* CreateOpClassStmt::_internal_mutable_amname() { - - return _impl_.amname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::CmdType MergeWhenClause::command_type() const { + // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.command_type) + return _internal_command_type(); } -inline std::string* CreateOpClassStmt::release_amname() { - // @@protoc_insertion_point(field_release:pg_query.CreateOpClassStmt.amname) - return _impl_.amname_.Release(); +inline void MergeWhenClause::set_command_type(::pg_query::CmdType value) { + _internal_set_command_type(value); + // @@protoc_insertion_point(field_set:pg_query.MergeWhenClause.command_type) } -inline void CreateOpClassStmt::set_allocated_amname(std::string* amname) { - if (amname != nullptr) { - - } else { - - } - _impl_.amname_.SetAllocated(amname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.amname_.IsDefault()) { - _impl_.amname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpClassStmt.amname) +inline ::pg_query::CmdType MergeWhenClause::_internal_command_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CmdType>(_impl_.command_type_); +} +inline void MergeWhenClause::_internal_set_command_type(::pg_query::CmdType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.command_type_ = value; } -// .pg_query.TypeName datatype = 4 [json_name = "datatype"]; -inline bool CreateOpClassStmt::_internal_has_datatype() const { - return this != internal_default_instance() && _impl_.datatype_ != nullptr; +// .pg_query.OverridingKind override = 3 [json_name = "override"]; +inline void MergeWhenClause::clear_override() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.override_ = 0; } -inline bool CreateOpClassStmt::has_datatype() const { - return _internal_has_datatype(); +inline ::pg_query::OverridingKind MergeWhenClause::override() const { + // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.override) + return _internal_override(); } -inline void CreateOpClassStmt::clear_datatype() { - if (GetArenaForAllocation() == nullptr && _impl_.datatype_ != nullptr) { - delete _impl_.datatype_; - } - _impl_.datatype_ = nullptr; +inline void MergeWhenClause::set_override(::pg_query::OverridingKind value) { + _internal_set_override(value); + // @@protoc_insertion_point(field_set:pg_query.MergeWhenClause.override) } -inline const ::pg_query::TypeName& CreateOpClassStmt::_internal_datatype() const { - const ::pg_query::TypeName* p = _impl_.datatype_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline ::pg_query::OverridingKind MergeWhenClause::_internal_override() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::OverridingKind>(_impl_.override_); } -inline const ::pg_query::TypeName& CreateOpClassStmt::datatype() const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.datatype) - return _internal_datatype(); +inline void MergeWhenClause::_internal_set_override(::pg_query::OverridingKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.override_ = value; +} + +// .pg_query.Node condition = 4 [json_name = "condition"]; +inline bool MergeWhenClause::has_condition() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.condition_ != nullptr); + return value; +} +inline void MergeWhenClause::clear_condition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.condition_ != nullptr) _impl_.condition_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& MergeWhenClause::_internal_condition() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.condition_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void CreateOpClassStmt::unsafe_arena_set_allocated_datatype( - ::pg_query::TypeName* datatype) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.datatype_); +inline const ::pg_query::Node& MergeWhenClause::condition() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.condition) + return _internal_condition(); +} +inline void MergeWhenClause::unsafe_arena_set_allocated_condition(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.condition_); } - _impl_.datatype_ = datatype; - if (datatype) { - + _impl_.condition_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateOpClassStmt.datatype) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeWhenClause.condition) } -inline ::pg_query::TypeName* CreateOpClassStmt::release_datatype() { - - ::pg_query::TypeName* temp = _impl_.datatype_; - _impl_.datatype_ = nullptr; +inline ::pg_query::Node* MergeWhenClause::release_condition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.condition_; + _impl_.condition_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* CreateOpClassStmt::unsafe_arena_release_datatype() { - // @@protoc_insertion_point(field_release:pg_query.CreateOpClassStmt.datatype) - - ::pg_query::TypeName* temp = _impl_.datatype_; - _impl_.datatype_ = nullptr; +inline ::pg_query::Node* MergeWhenClause::unsafe_arena_release_condition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.MergeWhenClause.condition) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.condition_; + _impl_.condition_ = nullptr; return temp; } -inline ::pg_query::TypeName* CreateOpClassStmt::_internal_mutable_datatype() { - - if (_impl_.datatype_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.datatype_ = p; +inline ::pg_query::Node* MergeWhenClause::_internal_mutable_condition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.condition_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.condition_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.datatype_; + return _impl_.condition_; } -inline ::pg_query::TypeName* CreateOpClassStmt::mutable_datatype() { - ::pg_query::TypeName* _msg = _internal_mutable_datatype(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.datatype) +inline ::pg_query::Node* MergeWhenClause::mutable_condition() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_condition(); + // @@protoc_insertion_point(field_mutable:pg_query.MergeWhenClause.condition) return _msg; } -inline void CreateOpClassStmt::set_allocated_datatype(::pg_query::TypeName* datatype) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void MergeWhenClause::set_allocated_condition(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.datatype_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.condition_); } - if (datatype) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(datatype); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - datatype = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, datatype, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.datatype_ = datatype; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpClassStmt.datatype) + + _impl_.condition_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.MergeWhenClause.condition) } -// repeated .pg_query.Node items = 5 [json_name = "items"]; -inline int CreateOpClassStmt::_internal_items_size() const { - return _impl_.items_.size(); +// repeated .pg_query.Node target_list = 5 [json_name = "targetList"]; +inline int MergeWhenClause::_internal_target_list_size() const { + return _internal_target_list().size(); } -inline int CreateOpClassStmt::items_size() const { - return _internal_items_size(); +inline int MergeWhenClause::target_list_size() const { + return _internal_target_list_size(); } -inline void CreateOpClassStmt::clear_items() { - _impl_.items_.Clear(); +inline void MergeWhenClause::clear_target_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.target_list_.Clear(); } -inline ::pg_query::Node* CreateOpClassStmt::mutable_items(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.items) - return _impl_.items_.Mutable(index); +inline ::pg_query::Node* MergeWhenClause::mutable_target_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.MergeWhenClause.target_list) + return _internal_mutable_target_list()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateOpClassStmt::mutable_items() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassStmt.items) - return &_impl_.items_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* MergeWhenClause::mutable_target_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.MergeWhenClause.target_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_target_list(); } -inline const ::pg_query::Node& CreateOpClassStmt::_internal_items(int index) const { - return _impl_.items_.Get(index); +inline const ::pg_query::Node& MergeWhenClause::target_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.target_list) + return _internal_target_list().Get(index); } -inline const ::pg_query::Node& CreateOpClassStmt::items(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.items) - return _internal_items(index); +inline ::pg_query::Node* MergeWhenClause::add_target_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_target_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.MergeWhenClause.target_list) + return _add; } -inline ::pg_query::Node* CreateOpClassStmt::_internal_add_items() { - return _impl_.items_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& MergeWhenClause::target_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.MergeWhenClause.target_list) + return _internal_target_list(); } -inline ::pg_query::Node* CreateOpClassStmt::add_items() { - ::pg_query::Node* _add = _internal_add_items(); - // @@protoc_insertion_point(field_add:pg_query.CreateOpClassStmt.items) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +MergeWhenClause::_internal_target_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.target_list_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateOpClassStmt::items() const { - // @@protoc_insertion_point(field_list:pg_query.CreateOpClassStmt.items) - return _impl_.items_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +MergeWhenClause::_internal_mutable_target_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.target_list_; } -// bool is_default = 6 [json_name = "isDefault"]; -inline void CreateOpClassStmt::clear_is_default() { - _impl_.is_default_ = false; +// repeated .pg_query.Node values = 6 [json_name = "values"]; +inline int MergeWhenClause::_internal_values_size() const { + return _internal_values().size(); } -inline bool CreateOpClassStmt::_internal_is_default() const { - return _impl_.is_default_; +inline int MergeWhenClause::values_size() const { + return _internal_values_size(); } -inline bool CreateOpClassStmt::is_default() const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.is_default) - return _internal_is_default(); +inline void MergeWhenClause::clear_values() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.values_.Clear(); } -inline void CreateOpClassStmt::_internal_set_is_default(bool value) { - - _impl_.is_default_ = value; +inline ::pg_query::Node* MergeWhenClause::mutable_values(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.MergeWhenClause.values) + return _internal_mutable_values()->Mutable(index); } -inline void CreateOpClassStmt::set_is_default(bool value) { - _internal_set_is_default(value); - // @@protoc_insertion_point(field_set:pg_query.CreateOpClassStmt.is_default) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* MergeWhenClause::mutable_values() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.MergeWhenClause.values) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_values(); +} +inline const ::pg_query::Node& MergeWhenClause::values(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.values) + return _internal_values().Get(index); +} +inline ::pg_query::Node* MergeWhenClause::add_values() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_values()->Add(); + // @@protoc_insertion_point(field_add:pg_query.MergeWhenClause.values) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& MergeWhenClause::values() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.MergeWhenClause.values) + return _internal_values(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +MergeWhenClause::_internal_values() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.values_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +MergeWhenClause::_internal_mutable_values() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.values_; } // ------------------------------------------------------------------- -// CreateOpFamilyStmt +// MergeAction -// repeated .pg_query.Node opfamilyname = 1 [json_name = "opfamilyname"]; -inline int CreateOpFamilyStmt::_internal_opfamilyname_size() const { - return _impl_.opfamilyname_.size(); +// bool matched = 1 [json_name = "matched"]; +inline void MergeAction::clear_matched() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.matched_ = false; } -inline int CreateOpFamilyStmt::opfamilyname_size() const { - return _internal_opfamilyname_size(); +inline bool MergeAction::matched() const { + // @@protoc_insertion_point(field_get:pg_query.MergeAction.matched) + return _internal_matched(); } -inline void CreateOpFamilyStmt::clear_opfamilyname() { - _impl_.opfamilyname_.Clear(); +inline void MergeAction::set_matched(bool value) { + _internal_set_matched(value); + // @@protoc_insertion_point(field_set:pg_query.MergeAction.matched) } -inline ::pg_query::Node* CreateOpFamilyStmt::mutable_opfamilyname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpFamilyStmt.opfamilyname) - return _impl_.opfamilyname_.Mutable(index); +inline bool MergeAction::_internal_matched() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.matched_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateOpFamilyStmt::mutable_opfamilyname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpFamilyStmt.opfamilyname) - return &_impl_.opfamilyname_; +inline void MergeAction::_internal_set_matched(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.matched_ = value; } -inline const ::pg_query::Node& CreateOpFamilyStmt::_internal_opfamilyname(int index) const { - return _impl_.opfamilyname_.Get(index); + +// .pg_query.CmdType command_type = 2 [json_name = "commandType"]; +inline void MergeAction::clear_command_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.command_type_ = 0; } -inline const ::pg_query::Node& CreateOpFamilyStmt::opfamilyname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpFamilyStmt.opfamilyname) - return _internal_opfamilyname(index); +inline ::pg_query::CmdType MergeAction::command_type() const { + // @@protoc_insertion_point(field_get:pg_query.MergeAction.command_type) + return _internal_command_type(); } -inline ::pg_query::Node* CreateOpFamilyStmt::_internal_add_opfamilyname() { - return _impl_.opfamilyname_.Add(); +inline void MergeAction::set_command_type(::pg_query::CmdType value) { + _internal_set_command_type(value); + // @@protoc_insertion_point(field_set:pg_query.MergeAction.command_type) } -inline ::pg_query::Node* CreateOpFamilyStmt::add_opfamilyname() { - ::pg_query::Node* _add = _internal_add_opfamilyname(); - // @@protoc_insertion_point(field_add:pg_query.CreateOpFamilyStmt.opfamilyname) - return _add; +inline ::pg_query::CmdType MergeAction::_internal_command_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CmdType>(_impl_.command_type_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateOpFamilyStmt::opfamilyname() const { - // @@protoc_insertion_point(field_list:pg_query.CreateOpFamilyStmt.opfamilyname) - return _impl_.opfamilyname_; +inline void MergeAction::_internal_set_command_type(::pg_query::CmdType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.command_type_ = value; } -// string amname = 2 [json_name = "amname"]; -inline void CreateOpFamilyStmt::clear_amname() { - _impl_.amname_.ClearToEmpty(); +// .pg_query.OverridingKind override = 3 [json_name = "override"]; +inline void MergeAction::clear_override() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.override_ = 0; } -inline const std::string& CreateOpFamilyStmt::amname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpFamilyStmt.amname) - return _internal_amname(); +inline ::pg_query::OverridingKind MergeAction::override() const { + // @@protoc_insertion_point(field_get:pg_query.MergeAction.override) + return _internal_override(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateOpFamilyStmt::set_amname(ArgT0&& arg0, ArgT... args) { - - _impl_.amname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateOpFamilyStmt.amname) +inline void MergeAction::set_override(::pg_query::OverridingKind value) { + _internal_set_override(value); + // @@protoc_insertion_point(field_set:pg_query.MergeAction.override) } -inline std::string* CreateOpFamilyStmt::mutable_amname() { - std::string* _s = _internal_mutable_amname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpFamilyStmt.amname) - return _s; +inline ::pg_query::OverridingKind MergeAction::_internal_override() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::OverridingKind>(_impl_.override_); } -inline const std::string& CreateOpFamilyStmt::_internal_amname() const { - return _impl_.amname_.Get(); +inline void MergeAction::_internal_set_override(::pg_query::OverridingKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.override_ = value; } -inline void CreateOpFamilyStmt::_internal_set_amname(const std::string& value) { - - _impl_.amname_.Set(value, GetArenaForAllocation()); + +// .pg_query.Node qual = 4 [json_name = "qual"]; +inline bool MergeAction::has_qual() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.qual_ != nullptr); + return value; } -inline std::string* CreateOpFamilyStmt::_internal_mutable_amname() { - - return _impl_.amname_.Mutable(GetArenaForAllocation()); +inline void MergeAction::clear_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.qual_ != nullptr) _impl_.qual_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* CreateOpFamilyStmt::release_amname() { - // @@protoc_insertion_point(field_release:pg_query.CreateOpFamilyStmt.amname) - return _impl_.amname_.Release(); +inline const ::pg_query::Node& MergeAction::_internal_qual() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.qual_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void CreateOpFamilyStmt::set_allocated_amname(std::string* amname) { - if (amname != nullptr) { - - } else { - +inline const ::pg_query::Node& MergeAction::qual() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeAction.qual) + return _internal_qual(); +} +inline void MergeAction::unsafe_arena_set_allocated_qual(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.qual_); } - _impl_.amname_.SetAllocated(amname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.amname_.IsDefault()) { - _impl_.amname_.Set("", GetArenaForAllocation()); + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpFamilyStmt.amname) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeAction.qual) } +inline ::pg_query::Node* MergeAction::release_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- - -// AlterOpFamilyStmt - -// repeated .pg_query.Node opfamilyname = 1 [json_name = "opfamilyname"]; -inline int AlterOpFamilyStmt::_internal_opfamilyname_size() const { - return _impl_.opfamilyname_.size(); -} -inline int AlterOpFamilyStmt::opfamilyname_size() const { - return _internal_opfamilyname_size(); -} -inline void AlterOpFamilyStmt::clear_opfamilyname() { - _impl_.opfamilyname_.Clear(); -} -inline ::pg_query::Node* AlterOpFamilyStmt::mutable_opfamilyname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterOpFamilyStmt.opfamilyname) - return _impl_.opfamilyname_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterOpFamilyStmt::mutable_opfamilyname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterOpFamilyStmt.opfamilyname) - return &_impl_.opfamilyname_; -} -inline const ::pg_query::Node& AlterOpFamilyStmt::_internal_opfamilyname(int index) const { - return _impl_.opfamilyname_.Get(index); -} -inline const ::pg_query::Node& AlterOpFamilyStmt::opfamilyname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterOpFamilyStmt.opfamilyname) - return _internal_opfamilyname(index); -} -inline ::pg_query::Node* AlterOpFamilyStmt::_internal_add_opfamilyname() { - return _impl_.opfamilyname_.Add(); -} -inline ::pg_query::Node* AlterOpFamilyStmt::add_opfamilyname() { - ::pg_query::Node* _add = _internal_add_opfamilyname(); - // @@protoc_insertion_point(field_add:pg_query.AlterOpFamilyStmt.opfamilyname) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterOpFamilyStmt::opfamilyname() const { - // @@protoc_insertion_point(field_list:pg_query.AlterOpFamilyStmt.opfamilyname) - return _impl_.opfamilyname_; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.qual_; + _impl_.qual_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* MergeAction::unsafe_arena_release_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.MergeAction.qual) -// string amname = 2 [json_name = "amname"]; -inline void AlterOpFamilyStmt::clear_amname() { - _impl_.amname_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.qual_; + _impl_.qual_ = nullptr; + return temp; } -inline const std::string& AlterOpFamilyStmt::amname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterOpFamilyStmt.amname) - return _internal_amname(); +inline ::pg_query::Node* MergeAction::_internal_mutable_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.qual_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.qual_; } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterOpFamilyStmt::set_amname(ArgT0&& arg0, ArgT... args) { - - _impl_.amname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterOpFamilyStmt.amname) +inline ::pg_query::Node* MergeAction::mutable_qual() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_qual(); + // @@protoc_insertion_point(field_mutable:pg_query.MergeAction.qual) + return _msg; } -inline std::string* AlterOpFamilyStmt::mutable_amname() { - std::string* _s = _internal_mutable_amname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterOpFamilyStmt.amname) - return _s; +inline void MergeAction::set_allocated_qual(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.qual_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.MergeAction.qual) } -inline const std::string& AlterOpFamilyStmt::_internal_amname() const { - return _impl_.amname_.Get(); + +// repeated .pg_query.Node target_list = 5 [json_name = "targetList"]; +inline int MergeAction::_internal_target_list_size() const { + return _internal_target_list().size(); } -inline void AlterOpFamilyStmt::_internal_set_amname(const std::string& value) { - - _impl_.amname_.Set(value, GetArenaForAllocation()); +inline int MergeAction::target_list_size() const { + return _internal_target_list_size(); } -inline std::string* AlterOpFamilyStmt::_internal_mutable_amname() { - - return _impl_.amname_.Mutable(GetArenaForAllocation()); +inline void MergeAction::clear_target_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.target_list_.Clear(); } -inline std::string* AlterOpFamilyStmt::release_amname() { - // @@protoc_insertion_point(field_release:pg_query.AlterOpFamilyStmt.amname) - return _impl_.amname_.Release(); +inline ::pg_query::Node* MergeAction::mutable_target_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.MergeAction.target_list) + return _internal_mutable_target_list()->Mutable(index); } -inline void AlterOpFamilyStmt::set_allocated_amname(std::string* amname) { - if (amname != nullptr) { - - } else { - - } - _impl_.amname_.SetAllocated(amname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.amname_.IsDefault()) { - _impl_.amname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOpFamilyStmt.amname) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* MergeAction::mutable_target_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.MergeAction.target_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_target_list(); } - -// bool is_drop = 3 [json_name = "isDrop"]; -inline void AlterOpFamilyStmt::clear_is_drop() { - _impl_.is_drop_ = false; +inline const ::pg_query::Node& MergeAction::target_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeAction.target_list) + return _internal_target_list().Get(index); } -inline bool AlterOpFamilyStmt::_internal_is_drop() const { - return _impl_.is_drop_; +inline ::pg_query::Node* MergeAction::add_target_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_target_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.MergeAction.target_list) + return _add; } -inline bool AlterOpFamilyStmt::is_drop() const { - // @@protoc_insertion_point(field_get:pg_query.AlterOpFamilyStmt.is_drop) - return _internal_is_drop(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& MergeAction::target_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.MergeAction.target_list) + return _internal_target_list(); } -inline void AlterOpFamilyStmt::_internal_set_is_drop(bool value) { - - _impl_.is_drop_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +MergeAction::_internal_target_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.target_list_; } -inline void AlterOpFamilyStmt::set_is_drop(bool value) { - _internal_set_is_drop(value); - // @@protoc_insertion_point(field_set:pg_query.AlterOpFamilyStmt.is_drop) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +MergeAction::_internal_mutable_target_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.target_list_; } -// repeated .pg_query.Node items = 4 [json_name = "items"]; -inline int AlterOpFamilyStmt::_internal_items_size() const { - return _impl_.items_.size(); +// repeated .pg_query.Node update_colnos = 6 [json_name = "updateColnos"]; +inline int MergeAction::_internal_update_colnos_size() const { + return _internal_update_colnos().size(); } -inline int AlterOpFamilyStmt::items_size() const { - return _internal_items_size(); +inline int MergeAction::update_colnos_size() const { + return _internal_update_colnos_size(); } -inline void AlterOpFamilyStmt::clear_items() { - _impl_.items_.Clear(); +inline void MergeAction::clear_update_colnos() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.update_colnos_.Clear(); } -inline ::pg_query::Node* AlterOpFamilyStmt::mutable_items(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterOpFamilyStmt.items) - return _impl_.items_.Mutable(index); +inline ::pg_query::Node* MergeAction::mutable_update_colnos(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.MergeAction.update_colnos) + return _internal_mutable_update_colnos()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterOpFamilyStmt::mutable_items() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterOpFamilyStmt.items) - return &_impl_.items_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* MergeAction::mutable_update_colnos() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.MergeAction.update_colnos) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_update_colnos(); } -inline const ::pg_query::Node& AlterOpFamilyStmt::_internal_items(int index) const { - return _impl_.items_.Get(index); +inline const ::pg_query::Node& MergeAction::update_colnos(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeAction.update_colnos) + return _internal_update_colnos().Get(index); } -inline const ::pg_query::Node& AlterOpFamilyStmt::items(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterOpFamilyStmt.items) - return _internal_items(index); +inline ::pg_query::Node* MergeAction::add_update_colnos() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_update_colnos()->Add(); + // @@protoc_insertion_point(field_add:pg_query.MergeAction.update_colnos) + return _add; } -inline ::pg_query::Node* AlterOpFamilyStmt::_internal_add_items() { - return _impl_.items_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& MergeAction::update_colnos() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.MergeAction.update_colnos) + return _internal_update_colnos(); } -inline ::pg_query::Node* AlterOpFamilyStmt::add_items() { - ::pg_query::Node* _add = _internal_add_items(); - // @@protoc_insertion_point(field_add:pg_query.AlterOpFamilyStmt.items) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +MergeAction::_internal_update_colnos() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.update_colnos_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterOpFamilyStmt::items() const { - // @@protoc_insertion_point(field_list:pg_query.AlterOpFamilyStmt.items) - return _impl_.items_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +MergeAction::_internal_mutable_update_colnos() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.update_colnos_; } // ------------------------------------------------------------------- -// PrepareStmt +// TriggerTransition // string name = 1 [json_name = "name"]; -inline void PrepareStmt::clear_name() { +inline void TriggerTransition::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.name_.ClearToEmpty(); } -inline const std::string& PrepareStmt::name() const { - // @@protoc_insertion_point(field_get:pg_query.PrepareStmt.name) +inline const std::string& TriggerTransition::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TriggerTransition.name) return _internal_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void PrepareStmt::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.PrepareStmt.name) +template +inline PROTOBUF_ALWAYS_INLINE void TriggerTransition::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.TriggerTransition.name) } -inline std::string* PrepareStmt::mutable_name() { +inline std::string* TriggerTransition::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.PrepareStmt.name) + // @@protoc_insertion_point(field_mutable:pg_query.TriggerTransition.name) return _s; } -inline const std::string& PrepareStmt::_internal_name() const { +inline const std::string& TriggerTransition::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); return _impl_.name_.Get(); } -inline void PrepareStmt::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void TriggerTransition::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline std::string* PrepareStmt::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline std::string* TriggerTransition::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline std::string* PrepareStmt::release_name() { - // @@protoc_insertion_point(field_release:pg_query.PrepareStmt.name) +inline std::string* TriggerTransition::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TriggerTransition.name) return _impl_.name_.Release(); } -inline void PrepareStmt::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.PrepareStmt.name) +inline void TriggerTransition::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.TriggerTransition.name) } -// repeated .pg_query.Node argtypes = 2 [json_name = "argtypes"]; -inline int PrepareStmt::_internal_argtypes_size() const { - return _impl_.argtypes_.size(); +// bool is_new = 2 [json_name = "isNew"]; +inline void TriggerTransition::clear_is_new() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_new_ = false; } -inline int PrepareStmt::argtypes_size() const { - return _internal_argtypes_size(); +inline bool TriggerTransition::is_new() const { + // @@protoc_insertion_point(field_get:pg_query.TriggerTransition.is_new) + return _internal_is_new(); } -inline void PrepareStmt::clear_argtypes() { - _impl_.argtypes_.Clear(); +inline void TriggerTransition::set_is_new(bool value) { + _internal_set_is_new(value); + // @@protoc_insertion_point(field_set:pg_query.TriggerTransition.is_new) } -inline ::pg_query::Node* PrepareStmt::mutable_argtypes(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.PrepareStmt.argtypes) - return _impl_.argtypes_.Mutable(index); +inline bool TriggerTransition::_internal_is_new() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_new_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -PrepareStmt::mutable_argtypes() { - // @@protoc_insertion_point(field_mutable_list:pg_query.PrepareStmt.argtypes) - return &_impl_.argtypes_; +inline void TriggerTransition::_internal_set_is_new(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_new_ = value; } -inline const ::pg_query::Node& PrepareStmt::_internal_argtypes(int index) const { - return _impl_.argtypes_.Get(index); + +// bool is_table = 3 [json_name = "isTable"]; +inline void TriggerTransition::clear_is_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_table_ = false; } -inline const ::pg_query::Node& PrepareStmt::argtypes(int index) const { - // @@protoc_insertion_point(field_get:pg_query.PrepareStmt.argtypes) - return _internal_argtypes(index); +inline bool TriggerTransition::is_table() const { + // @@protoc_insertion_point(field_get:pg_query.TriggerTransition.is_table) + return _internal_is_table(); } -inline ::pg_query::Node* PrepareStmt::_internal_add_argtypes() { - return _impl_.argtypes_.Add(); +inline void TriggerTransition::set_is_table(bool value) { + _internal_set_is_table(value); + // @@protoc_insertion_point(field_set:pg_query.TriggerTransition.is_table) } -inline ::pg_query::Node* PrepareStmt::add_argtypes() { - ::pg_query::Node* _add = _internal_add_argtypes(); - // @@protoc_insertion_point(field_add:pg_query.PrepareStmt.argtypes) - return _add; +inline bool TriggerTransition::_internal_is_table() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_table_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -PrepareStmt::argtypes() const { - // @@protoc_insertion_point(field_list:pg_query.PrepareStmt.argtypes) - return _impl_.argtypes_; +inline void TriggerTransition::_internal_set_is_table(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_table_ = value; } -// .pg_query.Node query = 3 [json_name = "query"]; -inline bool PrepareStmt::_internal_has_query() const { - return this != internal_default_instance() && _impl_.query_ != nullptr; -} -inline bool PrepareStmt::has_query() const { - return _internal_has_query(); +// ------------------------------------------------------------------- + +// JsonOutput + +// .pg_query.TypeName type_name = 1 [json_name = "typeName"]; +inline bool JsonOutput::has_type_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.type_name_ != nullptr); + return value; } -inline void PrepareStmt::clear_query() { - if (GetArenaForAllocation() == nullptr && _impl_.query_ != nullptr) { - delete _impl_.query_; - } - _impl_.query_ = nullptr; +inline void JsonOutput::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.type_name_ != nullptr) _impl_.type_name_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& PrepareStmt::_internal_query() const { - const ::pg_query::Node* p = _impl_.query_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::TypeName& JsonOutput::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.type_name_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline const ::pg_query::Node& PrepareStmt::query() const { - // @@protoc_insertion_point(field_get:pg_query.PrepareStmt.query) - return _internal_query(); +inline const ::pg_query::TypeName& JsonOutput::type_name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonOutput.type_name) + return _internal_type_name(); } -inline void PrepareStmt::unsafe_arena_set_allocated_query( - ::pg_query::Node* query) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.query_); +inline void JsonOutput::unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.type_name_); } - _impl_.query_ = query; - if (query) { - + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PrepareStmt.query) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonOutput.type_name) } -inline ::pg_query::Node* PrepareStmt::release_query() { - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::TypeName* JsonOutput::release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* released = _impl_.type_name_; + _impl_.type_name_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* PrepareStmt::unsafe_arena_release_query() { - // @@protoc_insertion_point(field_release:pg_query.PrepareStmt.query) - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::TypeName* JsonOutput::unsafe_arena_release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonOutput.type_name) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* temp = _impl_.type_name_; + _impl_.type_name_ = nullptr; return temp; } -inline ::pg_query::Node* PrepareStmt::_internal_mutable_query() { - - if (_impl_.query_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.query_ = p; +inline ::pg_query::TypeName* JsonOutput::_internal_mutable_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.type_name_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(p); } - return _impl_.query_; + return _impl_.type_name_; } -inline ::pg_query::Node* PrepareStmt::mutable_query() { - ::pg_query::Node* _msg = _internal_mutable_query(); - // @@protoc_insertion_point(field_mutable:pg_query.PrepareStmt.query) +inline ::pg_query::TypeName* JsonOutput::mutable_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_type_name(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonOutput.type_name) return _msg; } -inline void PrepareStmt::set_allocated_query(::pg_query::Node* query) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonOutput::set_allocated_type_name(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.query_; + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.type_name_); } - if (query) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(query); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); if (message_arena != submessage_arena) { - query = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, query, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.query_ = query; - // @@protoc_insertion_point(field_set_allocated:pg_query.PrepareStmt.query) -} - -// ------------------------------------------------------------------- - -// ExecuteStmt -// string name = 1 [json_name = "name"]; -inline void ExecuteStmt::clear_name() { - _impl_.name_.ClearToEmpty(); + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonOutput.type_name) } -inline const std::string& ExecuteStmt::name() const { - // @@protoc_insertion_point(field_get:pg_query.ExecuteStmt.name) - return _internal_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void ExecuteStmt::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ExecuteStmt.name) -} -inline std::string* ExecuteStmt::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.ExecuteStmt.name) - return _s; -} -inline const std::string& ExecuteStmt::_internal_name() const { - return _impl_.name_.Get(); + +// .pg_query.JsonReturning returning = 2 [json_name = "returning"]; +inline bool JsonOutput::has_returning() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.returning_ != nullptr); + return value; } -inline void ExecuteStmt::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void JsonOutput::clear_returning() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.returning_ != nullptr) _impl_.returning_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline std::string* ExecuteStmt::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::JsonReturning& JsonOutput::_internal_returning() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonReturning* p = _impl_.returning_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonReturning_default_instance_); } -inline std::string* ExecuteStmt::release_name() { - // @@protoc_insertion_point(field_release:pg_query.ExecuteStmt.name) - return _impl_.name_.Release(); +inline const ::pg_query::JsonReturning& JsonOutput::returning() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonOutput.returning) + return _internal_returning(); } -inline void ExecuteStmt::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - +inline void JsonOutput::unsafe_arena_set_allocated_returning(::pg_query::JsonReturning* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.returning_); } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); + _impl_.returning_ = reinterpret_cast<::pg_query::JsonReturning*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ExecuteStmt.name) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonOutput.returning) } +inline ::pg_query::JsonReturning* JsonOutput::release_returning() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node params = 2 [json_name = "params"]; -inline int ExecuteStmt::_internal_params_size() const { - return _impl_.params_.size(); -} -inline int ExecuteStmt::params_size() const { - return _internal_params_size(); -} -inline void ExecuteStmt::clear_params() { - _impl_.params_.Clear(); -} -inline ::pg_query::Node* ExecuteStmt::mutable_params(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ExecuteStmt.params) - return _impl_.params_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ExecuteStmt::mutable_params() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ExecuteStmt.params) - return &_impl_.params_; -} -inline const ::pg_query::Node& ExecuteStmt::_internal_params(int index) const { - return _impl_.params_.Get(index); -} -inline const ::pg_query::Node& ExecuteStmt::params(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ExecuteStmt.params) - return _internal_params(index); -} -inline ::pg_query::Node* ExecuteStmt::_internal_add_params() { - return _impl_.params_.Add(); -} -inline ::pg_query::Node* ExecuteStmt::add_params() { - ::pg_query::Node* _add = _internal_add_params(); - // @@protoc_insertion_point(field_add:pg_query.ExecuteStmt.params) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ExecuteStmt::params() const { - // @@protoc_insertion_point(field_list:pg_query.ExecuteStmt.params) - return _impl_.params_; + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonReturning* released = _impl_.returning_; + _impl_.returning_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::JsonReturning* JsonOutput::unsafe_arena_release_returning() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonOutput.returning) -// ------------------------------------------------------------------- - -// DeallocateStmt - -// string name = 1 [json_name = "name"]; -inline void DeallocateStmt::clear_name() { - _impl_.name_.ClearToEmpty(); -} -inline const std::string& DeallocateStmt::name() const { - // @@protoc_insertion_point(field_get:pg_query.DeallocateStmt.name) - return _internal_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void DeallocateStmt::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.DeallocateStmt.name) -} -inline std::string* DeallocateStmt::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.DeallocateStmt.name) - return _s; -} -inline const std::string& DeallocateStmt::_internal_name() const { - return _impl_.name_.Get(); -} -inline void DeallocateStmt::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonReturning* temp = _impl_.returning_; + _impl_.returning_ = nullptr; + return temp; } -inline std::string* DeallocateStmt::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline ::pg_query::JsonReturning* JsonOutput::_internal_mutable_returning() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.returning_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonReturning>(GetArena()); + _impl_.returning_ = reinterpret_cast<::pg_query::JsonReturning*>(p); + } + return _impl_.returning_; } -inline std::string* DeallocateStmt::release_name() { - // @@protoc_insertion_point(field_release:pg_query.DeallocateStmt.name) - return _impl_.name_.Release(); +inline ::pg_query::JsonReturning* JsonOutput::mutable_returning() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonReturning* _msg = _internal_mutable_returning(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonOutput.returning) + return _msg; } -inline void DeallocateStmt::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - +inline void JsonOutput::set_allocated_returning(::pg_query::JsonReturning* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::JsonReturning*>(_impl_.returning_); } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonReturning*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.DeallocateStmt.name) + + _impl_.returning_ = reinterpret_cast<::pg_query::JsonReturning*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonOutput.returning) } // ------------------------------------------------------------------- -// DeclareCursorStmt +// JsonKeyValue -// string portalname = 1 [json_name = "portalname"]; -inline void DeclareCursorStmt::clear_portalname() { - _impl_.portalname_.ClearToEmpty(); -} -inline const std::string& DeclareCursorStmt::portalname() const { - // @@protoc_insertion_point(field_get:pg_query.DeclareCursorStmt.portalname) - return _internal_portalname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void DeclareCursorStmt::set_portalname(ArgT0&& arg0, ArgT... args) { - - _impl_.portalname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.DeclareCursorStmt.portalname) -} -inline std::string* DeclareCursorStmt::mutable_portalname() { - std::string* _s = _internal_mutable_portalname(); - // @@protoc_insertion_point(field_mutable:pg_query.DeclareCursorStmt.portalname) - return _s; +// .pg_query.Node key = 1 [json_name = "key"]; +inline bool JsonKeyValue::has_key() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.key_ != nullptr); + return value; } -inline const std::string& DeclareCursorStmt::_internal_portalname() const { - return _impl_.portalname_.Get(); -} -inline void DeclareCursorStmt::_internal_set_portalname(const std::string& value) { - - _impl_.portalname_.Set(value, GetArenaForAllocation()); +inline void JsonKeyValue::clear_key() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.key_ != nullptr) _impl_.key_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* DeclareCursorStmt::_internal_mutable_portalname() { - - return _impl_.portalname_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Node& JsonKeyValue::_internal_key() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.key_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* DeclareCursorStmt::release_portalname() { - // @@protoc_insertion_point(field_release:pg_query.DeclareCursorStmt.portalname) - return _impl_.portalname_.Release(); +inline const ::pg_query::Node& JsonKeyValue::key() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonKeyValue.key) + return _internal_key(); } -inline void DeclareCursorStmt::set_allocated_portalname(std::string* portalname) { - if (portalname != nullptr) { - - } else { - +inline void JsonKeyValue::unsafe_arena_set_allocated_key(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.key_); } - _impl_.portalname_.SetAllocated(portalname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.portalname_.IsDefault()) { - _impl_.portalname_.Set("", GetArenaForAllocation()); + _impl_.key_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.DeclareCursorStmt.portalname) -} - -// int32 options = 2 [json_name = "options"]; -inline void DeclareCursorStmt::clear_options() { - _impl_.options_ = 0; + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonKeyValue.key) } -inline int32_t DeclareCursorStmt::_internal_options() const { - return _impl_.options_; +inline ::pg_query::Node* JsonKeyValue::release_key() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.key_; + _impl_.key_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int32_t DeclareCursorStmt::options() const { - // @@protoc_insertion_point(field_get:pg_query.DeclareCursorStmt.options) - return _internal_options(); +inline ::pg_query::Node* JsonKeyValue::unsafe_arena_release_key() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonKeyValue.key) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.key_; + _impl_.key_ = nullptr; + return temp; } -inline void DeclareCursorStmt::_internal_set_options(int32_t value) { - - _impl_.options_ = value; +inline ::pg_query::Node* JsonKeyValue::_internal_mutable_key() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.key_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.key_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.key_; } -inline void DeclareCursorStmt::set_options(int32_t value) { - _internal_set_options(value); - // @@protoc_insertion_point(field_set:pg_query.DeclareCursorStmt.options) +inline ::pg_query::Node* JsonKeyValue::mutable_key() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_key(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonKeyValue.key) + return _msg; } +inline void JsonKeyValue::set_allocated_key(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.key_); + } -// .pg_query.Node query = 3 [json_name = "query"]; -inline bool DeclareCursorStmt::_internal_has_query() const { - return this != internal_default_instance() && _impl_.query_ != nullptr; + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.key_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonKeyValue.key) } -inline bool DeclareCursorStmt::has_query() const { - return _internal_has_query(); + +// .pg_query.JsonValueExpr value = 2 [json_name = "value"]; +inline bool JsonKeyValue::has_value() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.value_ != nullptr); + return value; } -inline void DeclareCursorStmt::clear_query() { - if (GetArenaForAllocation() == nullptr && _impl_.query_ != nullptr) { - delete _impl_.query_; - } - _impl_.query_ = nullptr; +inline void JsonKeyValue::clear_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.value_ != nullptr) _impl_.value_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& DeclareCursorStmt::_internal_query() const { - const ::pg_query::Node* p = _impl_.query_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::JsonValueExpr& JsonKeyValue::_internal_value() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonValueExpr* p = _impl_.value_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonValueExpr_default_instance_); } -inline const ::pg_query::Node& DeclareCursorStmt::query() const { - // @@protoc_insertion_point(field_get:pg_query.DeclareCursorStmt.query) - return _internal_query(); +inline const ::pg_query::JsonValueExpr& JsonKeyValue::value() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonKeyValue.value) + return _internal_value(); } -inline void DeclareCursorStmt::unsafe_arena_set_allocated_query( - ::pg_query::Node* query) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.query_); +inline void JsonKeyValue::unsafe_arena_set_allocated_value(::pg_query::JsonValueExpr* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.value_); } - _impl_.query_ = query; - if (query) { - + _impl_.value_ = reinterpret_cast<::pg_query::JsonValueExpr*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DeclareCursorStmt.query) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonKeyValue.value) } -inline ::pg_query::Node* DeclareCursorStmt::release_query() { - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::JsonValueExpr* JsonKeyValue::release_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonValueExpr* released = _impl_.value_; + _impl_.value_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* DeclareCursorStmt::unsafe_arena_release_query() { - // @@protoc_insertion_point(field_release:pg_query.DeclareCursorStmt.query) - - ::pg_query::Node* temp = _impl_.query_; - _impl_.query_ = nullptr; +inline ::pg_query::JsonValueExpr* JsonKeyValue::unsafe_arena_release_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonKeyValue.value) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonValueExpr* temp = _impl_.value_; + _impl_.value_ = nullptr; return temp; } -inline ::pg_query::Node* DeclareCursorStmt::_internal_mutable_query() { - - if (_impl_.query_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.query_ = p; +inline ::pg_query::JsonValueExpr* JsonKeyValue::_internal_mutable_value() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.value_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonValueExpr>(GetArena()); + _impl_.value_ = reinterpret_cast<::pg_query::JsonValueExpr*>(p); } - return _impl_.query_; + return _impl_.value_; } -inline ::pg_query::Node* DeclareCursorStmt::mutable_query() { - ::pg_query::Node* _msg = _internal_mutable_query(); - // @@protoc_insertion_point(field_mutable:pg_query.DeclareCursorStmt.query) +inline ::pg_query::JsonValueExpr* JsonKeyValue::mutable_value() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonValueExpr* _msg = _internal_mutable_value(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonKeyValue.value) return _msg; } -inline void DeclareCursorStmt::set_allocated_query(::pg_query::Node* query) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonKeyValue::set_allocated_value(::pg_query::JsonValueExpr* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.query_; + delete reinterpret_cast<::pg_query::JsonValueExpr*>(_impl_.value_); } - if (query) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(query); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonValueExpr*>(value)->GetArena(); if (message_arena != submessage_arena) { - query = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, query, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.query_ = query; - // @@protoc_insertion_point(field_set_allocated:pg_query.DeclareCursorStmt.query) + + _impl_.value_ = reinterpret_cast<::pg_query::JsonValueExpr*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonKeyValue.value) } // ------------------------------------------------------------------- -// CreateTableSpaceStmt +// JsonObjectConstructor -// string tablespacename = 1 [json_name = "tablespacename"]; -inline void CreateTableSpaceStmt::clear_tablespacename() { - _impl_.tablespacename_.ClearToEmpty(); -} -inline const std::string& CreateTableSpaceStmt::tablespacename() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTableSpaceStmt.tablespacename) - return _internal_tablespacename(); +// repeated .pg_query.Node exprs = 1 [json_name = "exprs"]; +inline int JsonObjectConstructor::_internal_exprs_size() const { + return _internal_exprs().size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateTableSpaceStmt::set_tablespacename(ArgT0&& arg0, ArgT... args) { - - _impl_.tablespacename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateTableSpaceStmt.tablespacename) -} -inline std::string* CreateTableSpaceStmt::mutable_tablespacename() { - std::string* _s = _internal_mutable_tablespacename(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTableSpaceStmt.tablespacename) - return _s; +inline int JsonObjectConstructor::exprs_size() const { + return _internal_exprs_size(); } -inline const std::string& CreateTableSpaceStmt::_internal_tablespacename() const { - return _impl_.tablespacename_.Get(); +inline void JsonObjectConstructor::clear_exprs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.exprs_.Clear(); } -inline void CreateTableSpaceStmt::_internal_set_tablespacename(const std::string& value) { - - _impl_.tablespacename_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Node* JsonObjectConstructor::mutable_exprs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.JsonObjectConstructor.exprs) + return _internal_mutable_exprs()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* JsonObjectConstructor::mutable_exprs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.JsonObjectConstructor.exprs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_exprs(); +} +inline const ::pg_query::Node& JsonObjectConstructor::exprs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonObjectConstructor.exprs) + return _internal_exprs().Get(index); +} +inline ::pg_query::Node* JsonObjectConstructor::add_exprs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_exprs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.JsonObjectConstructor.exprs) + return _add; } -inline std::string* CreateTableSpaceStmt::_internal_mutable_tablespacename() { - - return _impl_.tablespacename_.Mutable(GetArenaForAllocation()); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& JsonObjectConstructor::exprs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.JsonObjectConstructor.exprs) + return _internal_exprs(); } -inline std::string* CreateTableSpaceStmt::release_tablespacename() { - // @@protoc_insertion_point(field_release:pg_query.CreateTableSpaceStmt.tablespacename) - return _impl_.tablespacename_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +JsonObjectConstructor::_internal_exprs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.exprs_; } -inline void CreateTableSpaceStmt::set_allocated_tablespacename(std::string* tablespacename) { - if (tablespacename != nullptr) { - - } else { - - } - _impl_.tablespacename_.SetAllocated(tablespacename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.tablespacename_.IsDefault()) { - _impl_.tablespacename_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableSpaceStmt.tablespacename) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +JsonObjectConstructor::_internal_mutable_exprs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.exprs_; } -// .pg_query.RoleSpec owner = 2 [json_name = "owner"]; -inline bool CreateTableSpaceStmt::_internal_has_owner() const { - return this != internal_default_instance() && _impl_.owner_ != nullptr; -} -inline bool CreateTableSpaceStmt::has_owner() const { - return _internal_has_owner(); +// .pg_query.JsonOutput output = 2 [json_name = "output"]; +inline bool JsonObjectConstructor::has_output() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.output_ != nullptr); + return value; } -inline void CreateTableSpaceStmt::clear_owner() { - if (GetArenaForAllocation() == nullptr && _impl_.owner_ != nullptr) { - delete _impl_.owner_; - } - _impl_.owner_ = nullptr; +inline void JsonObjectConstructor::clear_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.output_ != nullptr) _impl_.output_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RoleSpec& CreateTableSpaceStmt::_internal_owner() const { - const ::pg_query::RoleSpec* p = _impl_.owner_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::JsonOutput& JsonObjectConstructor::_internal_output() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonOutput* p = _impl_.output_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonOutput_default_instance_); } -inline const ::pg_query::RoleSpec& CreateTableSpaceStmt::owner() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTableSpaceStmt.owner) - return _internal_owner(); +inline const ::pg_query::JsonOutput& JsonObjectConstructor::output() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonObjectConstructor.output) + return _internal_output(); } -inline void CreateTableSpaceStmt::unsafe_arena_set_allocated_owner( - ::pg_query::RoleSpec* owner) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.owner_); +inline void JsonObjectConstructor::unsafe_arena_set_allocated_output(::pg_query::JsonOutput* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.output_); } - _impl_.owner_ = owner; - if (owner) { - + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTableSpaceStmt.owner) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonObjectConstructor.output) } -inline ::pg_query::RoleSpec* CreateTableSpaceStmt::release_owner() { - - ::pg_query::RoleSpec* temp = _impl_.owner_; - _impl_.owner_ = nullptr; +inline ::pg_query::JsonOutput* JsonObjectConstructor::release_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonOutput* released = _impl_.output_; + _impl_.output_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* CreateTableSpaceStmt::unsafe_arena_release_owner() { - // @@protoc_insertion_point(field_release:pg_query.CreateTableSpaceStmt.owner) - - ::pg_query::RoleSpec* temp = _impl_.owner_; - _impl_.owner_ = nullptr; +inline ::pg_query::JsonOutput* JsonObjectConstructor::unsafe_arena_release_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonObjectConstructor.output) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonOutput* temp = _impl_.output_; + _impl_.output_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* CreateTableSpaceStmt::_internal_mutable_owner() { - - if (_impl_.owner_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.owner_ = p; +inline ::pg_query::JsonOutput* JsonObjectConstructor::_internal_mutable_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.output_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonOutput>(GetArena()); + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(p); } - return _impl_.owner_; + return _impl_.output_; } -inline ::pg_query::RoleSpec* CreateTableSpaceStmt::mutable_owner() { - ::pg_query::RoleSpec* _msg = _internal_mutable_owner(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTableSpaceStmt.owner) +inline ::pg_query::JsonOutput* JsonObjectConstructor::mutable_output() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonOutput* _msg = _internal_mutable_output(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonObjectConstructor.output) return _msg; } -inline void CreateTableSpaceStmt::set_allocated_owner(::pg_query::RoleSpec* owner) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonObjectConstructor::set_allocated_output(::pg_query::JsonOutput* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.owner_; + delete reinterpret_cast<::pg_query::JsonOutput*>(_impl_.output_); } - if (owner) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(owner); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonOutput*>(value)->GetArena(); if (message_arena != submessage_arena) { - owner = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, owner, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.owner_ = owner; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableSpaceStmt.owner) -} -// string location = 3 [json_name = "location"]; -inline void CreateTableSpaceStmt::clear_location() { - _impl_.location_.ClearToEmpty(); -} -inline const std::string& CreateTableSpaceStmt::location() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTableSpaceStmt.location) - return _internal_location(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CreateTableSpaceStmt::set_location(ArgT0&& arg0, ArgT... args) { - - _impl_.location_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateTableSpaceStmt.location) -} -inline std::string* CreateTableSpaceStmt::mutable_location() { - std::string* _s = _internal_mutable_location(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTableSpaceStmt.location) - return _s; + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonObjectConstructor.output) } -inline const std::string& CreateTableSpaceStmt::_internal_location() const { - return _impl_.location_.Get(); + +// bool absent_on_null = 3 [json_name = "absent_on_null"]; +inline void JsonObjectConstructor::clear_absent_on_null() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.absent_on_null_ = false; } -inline void CreateTableSpaceStmt::_internal_set_location(const std::string& value) { - - _impl_.location_.Set(value, GetArenaForAllocation()); +inline bool JsonObjectConstructor::absent_on_null() const { + // @@protoc_insertion_point(field_get:pg_query.JsonObjectConstructor.absent_on_null) + return _internal_absent_on_null(); } -inline std::string* CreateTableSpaceStmt::_internal_mutable_location() { - - return _impl_.location_.Mutable(GetArenaForAllocation()); +inline void JsonObjectConstructor::set_absent_on_null(bool value) { + _internal_set_absent_on_null(value); + // @@protoc_insertion_point(field_set:pg_query.JsonObjectConstructor.absent_on_null) } -inline std::string* CreateTableSpaceStmt::release_location() { - // @@protoc_insertion_point(field_release:pg_query.CreateTableSpaceStmt.location) - return _impl_.location_.Release(); +inline bool JsonObjectConstructor::_internal_absent_on_null() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.absent_on_null_; } -inline void CreateTableSpaceStmt::set_allocated_location(std::string* location) { - if (location != nullptr) { - - } else { - - } - _impl_.location_.SetAllocated(location, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.location_.IsDefault()) { - _impl_.location_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableSpaceStmt.location) +inline void JsonObjectConstructor::_internal_set_absent_on_null(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.absent_on_null_ = value; } -// repeated .pg_query.Node options = 4 [json_name = "options"]; -inline int CreateTableSpaceStmt::_internal_options_size() const { - return _impl_.options_.size(); +// bool unique = 4 [json_name = "unique"]; +inline void JsonObjectConstructor::clear_unique() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.unique_ = false; } -inline int CreateTableSpaceStmt::options_size() const { - return _internal_options_size(); +inline bool JsonObjectConstructor::unique() const { + // @@protoc_insertion_point(field_get:pg_query.JsonObjectConstructor.unique) + return _internal_unique(); } -inline void CreateTableSpaceStmt::clear_options() { - _impl_.options_.Clear(); +inline void JsonObjectConstructor::set_unique(bool value) { + _internal_set_unique(value); + // @@protoc_insertion_point(field_set:pg_query.JsonObjectConstructor.unique) } -inline ::pg_query::Node* CreateTableSpaceStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateTableSpaceStmt.options) - return _impl_.options_.Mutable(index); +inline bool JsonObjectConstructor::_internal_unique() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.unique_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateTableSpaceStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTableSpaceStmt.options) - return &_impl_.options_; +inline void JsonObjectConstructor::_internal_set_unique(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.unique_ = value; } -inline const ::pg_query::Node& CreateTableSpaceStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// int32 location = 5 [json_name = "location"]; +inline void JsonObjectConstructor::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline const ::pg_query::Node& CreateTableSpaceStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateTableSpaceStmt.options) - return _internal_options(index); +inline ::int32_t JsonObjectConstructor::location() const { + // @@protoc_insertion_point(field_get:pg_query.JsonObjectConstructor.location) + return _internal_location(); } -inline ::pg_query::Node* CreateTableSpaceStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void JsonObjectConstructor::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.JsonObjectConstructor.location) } -inline ::pg_query::Node* CreateTableSpaceStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateTableSpaceStmt.options) - return _add; +inline ::int32_t JsonObjectConstructor::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateTableSpaceStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateTableSpaceStmt.options) - return _impl_.options_; +inline void JsonObjectConstructor::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } // ------------------------------------------------------------------- -// DropTableSpaceStmt +// JsonArrayConstructor -// string tablespacename = 1 [json_name = "tablespacename"]; -inline void DropTableSpaceStmt::clear_tablespacename() { - _impl_.tablespacename_.ClearToEmpty(); +// repeated .pg_query.Node exprs = 1 [json_name = "exprs"]; +inline int JsonArrayConstructor::_internal_exprs_size() const { + return _internal_exprs().size(); } -inline const std::string& DropTableSpaceStmt::tablespacename() const { - // @@protoc_insertion_point(field_get:pg_query.DropTableSpaceStmt.tablespacename) - return _internal_tablespacename(); +inline int JsonArrayConstructor::exprs_size() const { + return _internal_exprs_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void DropTableSpaceStmt::set_tablespacename(ArgT0&& arg0, ArgT... args) { - - _impl_.tablespacename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.DropTableSpaceStmt.tablespacename) +inline void JsonArrayConstructor::clear_exprs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.exprs_.Clear(); } -inline std::string* DropTableSpaceStmt::mutable_tablespacename() { - std::string* _s = _internal_mutable_tablespacename(); - // @@protoc_insertion_point(field_mutable:pg_query.DropTableSpaceStmt.tablespacename) - return _s; +inline ::pg_query::Node* JsonArrayConstructor::mutable_exprs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.JsonArrayConstructor.exprs) + return _internal_mutable_exprs()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* JsonArrayConstructor::mutable_exprs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.JsonArrayConstructor.exprs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_exprs(); +} +inline const ::pg_query::Node& JsonArrayConstructor::exprs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayConstructor.exprs) + return _internal_exprs().Get(index); +} +inline ::pg_query::Node* JsonArrayConstructor::add_exprs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_exprs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.JsonArrayConstructor.exprs) + return _add; } -inline const std::string& DropTableSpaceStmt::_internal_tablespacename() const { - return _impl_.tablespacename_.Get(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& JsonArrayConstructor::exprs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.JsonArrayConstructor.exprs) + return _internal_exprs(); } -inline void DropTableSpaceStmt::_internal_set_tablespacename(const std::string& value) { - - _impl_.tablespacename_.Set(value, GetArenaForAllocation()); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +JsonArrayConstructor::_internal_exprs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.exprs_; } -inline std::string* DropTableSpaceStmt::_internal_mutable_tablespacename() { - - return _impl_.tablespacename_.Mutable(GetArenaForAllocation()); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +JsonArrayConstructor::_internal_mutable_exprs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.exprs_; } -inline std::string* DropTableSpaceStmt::release_tablespacename() { - // @@protoc_insertion_point(field_release:pg_query.DropTableSpaceStmt.tablespacename) - return _impl_.tablespacename_.Release(); + +// .pg_query.JsonOutput output = 2 [json_name = "output"]; +inline bool JsonArrayConstructor::has_output() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.output_ != nullptr); + return value; } -inline void DropTableSpaceStmt::set_allocated_tablespacename(std::string* tablespacename) { - if (tablespacename != nullptr) { - - } else { - +inline void JsonArrayConstructor::clear_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.output_ != nullptr) _impl_.output_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::JsonOutput& JsonArrayConstructor::_internal_output() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonOutput* p = _impl_.output_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonOutput_default_instance_); +} +inline const ::pg_query::JsonOutput& JsonArrayConstructor::output() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayConstructor.output) + return _internal_output(); +} +inline void JsonArrayConstructor::unsafe_arena_set_allocated_output(::pg_query::JsonOutput* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.output_); } - _impl_.tablespacename_.SetAllocated(tablespacename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.tablespacename_.IsDefault()) { - _impl_.tablespacename_.Set("", GetArenaForAllocation()); + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.DropTableSpaceStmt.tablespacename) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonArrayConstructor.output) } +inline ::pg_query::JsonOutput* JsonArrayConstructor::release_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool missing_ok = 2 [json_name = "missing_ok"]; -inline void DropTableSpaceStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; -} -inline bool DropTableSpaceStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonOutput* released = _impl_.output_; + _impl_.output_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool DropTableSpaceStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.DropTableSpaceStmt.missing_ok) - return _internal_missing_ok(); +inline ::pg_query::JsonOutput* JsonArrayConstructor::unsafe_arena_release_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonArrayConstructor.output) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonOutput* temp = _impl_.output_; + _impl_.output_ = nullptr; + return temp; } -inline void DropTableSpaceStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline ::pg_query::JsonOutput* JsonArrayConstructor::_internal_mutable_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.output_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonOutput>(GetArena()); + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(p); + } + return _impl_.output_; } -inline void DropTableSpaceStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.DropTableSpaceStmt.missing_ok) +inline ::pg_query::JsonOutput* JsonArrayConstructor::mutable_output() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonOutput* _msg = _internal_mutable_output(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonArrayConstructor.output) + return _msg; } +inline void JsonArrayConstructor::set_allocated_output(::pg_query::JsonOutput* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::JsonOutput*>(_impl_.output_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonOutput*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// AlterObjectDependsStmt + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonArrayConstructor.output) +} -// .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; -inline void AlterObjectDependsStmt::clear_object_type() { - _impl_.object_type_ = 0; +// bool absent_on_null = 3 [json_name = "absent_on_null"]; +inline void JsonArrayConstructor::clear_absent_on_null() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.absent_on_null_ = false; } -inline ::pg_query::ObjectType AlterObjectDependsStmt::_internal_object_type() const { - return static_cast< ::pg_query::ObjectType >(_impl_.object_type_); +inline bool JsonArrayConstructor::absent_on_null() const { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayConstructor.absent_on_null) + return _internal_absent_on_null(); } -inline ::pg_query::ObjectType AlterObjectDependsStmt::object_type() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.object_type) - return _internal_object_type(); +inline void JsonArrayConstructor::set_absent_on_null(bool value) { + _internal_set_absent_on_null(value); + // @@protoc_insertion_point(field_set:pg_query.JsonArrayConstructor.absent_on_null) } -inline void AlterObjectDependsStmt::_internal_set_object_type(::pg_query::ObjectType value) { - - _impl_.object_type_ = value; +inline bool JsonArrayConstructor::_internal_absent_on_null() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.absent_on_null_; } -inline void AlterObjectDependsStmt::set_object_type(::pg_query::ObjectType value) { - _internal_set_object_type(value); - // @@protoc_insertion_point(field_set:pg_query.AlterObjectDependsStmt.object_type) +inline void JsonArrayConstructor::_internal_set_absent_on_null(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.absent_on_null_ = value; } -// .pg_query.RangeVar relation = 2 [json_name = "relation"]; -inline bool AlterObjectDependsStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; +// int32 location = 4 [json_name = "location"]; +inline void JsonArrayConstructor::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline bool AlterObjectDependsStmt::has_relation() const { - return _internal_has_relation(); +inline ::int32_t JsonArrayConstructor::location() const { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayConstructor.location) + return _internal_location(); } -inline void AlterObjectDependsStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void JsonArrayConstructor::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.JsonArrayConstructor.location) } -inline const ::pg_query::RangeVar& AlterObjectDependsStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline ::int32_t JsonArrayConstructor::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline const ::pg_query::RangeVar& AlterObjectDependsStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.relation) - return _internal_relation(); +inline void JsonArrayConstructor::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; +} + +// ------------------------------------------------------------------- + +// JsonArrayQueryConstructor + +// .pg_query.Node query = 1 [json_name = "query"]; +inline bool JsonArrayQueryConstructor::has_query() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.query_ != nullptr); + return value; +} +inline void JsonArrayQueryConstructor::clear_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.query_ != nullptr) _impl_.query_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& JsonArrayQueryConstructor::_internal_query() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.query_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& JsonArrayQueryConstructor::query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayQueryConstructor.query) + return _internal_query(); } -inline void AlterObjectDependsStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void JsonArrayQueryConstructor::unsafe_arena_set_allocated_query(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.query_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectDependsStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonArrayQueryConstructor.query) } -inline ::pg_query::RangeVar* AlterObjectDependsStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* JsonArrayQueryConstructor::release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.query_; + _impl_.query_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* AlterObjectDependsStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.AlterObjectDependsStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::Node* JsonArrayQueryConstructor::unsafe_arena_release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonArrayQueryConstructor.query) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.query_; + _impl_.query_ = nullptr; return temp; } -inline ::pg_query::RangeVar* AlterObjectDependsStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::Node* JsonArrayQueryConstructor::_internal_mutable_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.query_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.relation_; + return _impl_.query_; } -inline ::pg_query::RangeVar* AlterObjectDependsStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectDependsStmt.relation) +inline ::pg_query::Node* JsonArrayQueryConstructor::mutable_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_query(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonArrayQueryConstructor.query) return _msg; } -inline void AlterObjectDependsStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonArrayQueryConstructor::set_allocated_query(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.query_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectDependsStmt.relation) -} -// .pg_query.Node object = 3 [json_name = "object"]; -inline bool AlterObjectDependsStmt::_internal_has_object() const { - return this != internal_default_instance() && _impl_.object_ != nullptr; + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonArrayQueryConstructor.query) } -inline bool AlterObjectDependsStmt::has_object() const { - return _internal_has_object(); + +// .pg_query.JsonOutput output = 2 [json_name = "output"]; +inline bool JsonArrayQueryConstructor::has_output() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.output_ != nullptr); + return value; } -inline void AlterObjectDependsStmt::clear_object() { - if (GetArenaForAllocation() == nullptr && _impl_.object_ != nullptr) { - delete _impl_.object_; - } - _impl_.object_ = nullptr; +inline void JsonArrayQueryConstructor::clear_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.output_ != nullptr) _impl_.output_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& AlterObjectDependsStmt::_internal_object() const { - const ::pg_query::Node* p = _impl_.object_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::JsonOutput& JsonArrayQueryConstructor::_internal_output() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonOutput* p = _impl_.output_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonOutput_default_instance_); } -inline const ::pg_query::Node& AlterObjectDependsStmt::object() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.object) - return _internal_object(); +inline const ::pg_query::JsonOutput& JsonArrayQueryConstructor::output() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayQueryConstructor.output) + return _internal_output(); } -inline void AlterObjectDependsStmt::unsafe_arena_set_allocated_object( - ::pg_query::Node* object) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.object_); +inline void JsonArrayQueryConstructor::unsafe_arena_set_allocated_output(::pg_query::JsonOutput* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.output_); } - _impl_.object_ = object; - if (object) { - + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectDependsStmt.object) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonArrayQueryConstructor.output) } -inline ::pg_query::Node* AlterObjectDependsStmt::release_object() { - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::JsonOutput* JsonArrayQueryConstructor::release_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonOutput* released = _impl_.output_; + _impl_.output_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* AlterObjectDependsStmt::unsafe_arena_release_object() { - // @@protoc_insertion_point(field_release:pg_query.AlterObjectDependsStmt.object) - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::JsonOutput* JsonArrayQueryConstructor::unsafe_arena_release_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonArrayQueryConstructor.output) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonOutput* temp = _impl_.output_; + _impl_.output_ = nullptr; return temp; } -inline ::pg_query::Node* AlterObjectDependsStmt::_internal_mutable_object() { - - if (_impl_.object_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.object_ = p; +inline ::pg_query::JsonOutput* JsonArrayQueryConstructor::_internal_mutable_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.output_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonOutput>(GetArena()); + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(p); } - return _impl_.object_; + return _impl_.output_; } -inline ::pg_query::Node* AlterObjectDependsStmt::mutable_object() { - ::pg_query::Node* _msg = _internal_mutable_object(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectDependsStmt.object) +inline ::pg_query::JsonOutput* JsonArrayQueryConstructor::mutable_output() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonOutput* _msg = _internal_mutable_output(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonArrayQueryConstructor.output) return _msg; } -inline void AlterObjectDependsStmt::set_allocated_object(::pg_query::Node* object) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonArrayQueryConstructor::set_allocated_output(::pg_query::JsonOutput* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.object_; + delete reinterpret_cast<::pg_query::JsonOutput*>(_impl_.output_); } - if (object) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(object); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonOutput*>(value)->GetArena(); if (message_arena != submessage_arena) { - object = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, object, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.object_ = object; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectDependsStmt.object) -} -// .pg_query.String extname = 4 [json_name = "extname"]; -inline bool AlterObjectDependsStmt::_internal_has_extname() const { - return this != internal_default_instance() && _impl_.extname_ != nullptr; + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonArrayQueryConstructor.output) } -inline bool AlterObjectDependsStmt::has_extname() const { - return _internal_has_extname(); + +// .pg_query.JsonFormat format = 3 [json_name = "format"]; +inline bool JsonArrayQueryConstructor::has_format() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.format_ != nullptr); + return value; } -inline void AlterObjectDependsStmt::clear_extname() { - if (GetArenaForAllocation() == nullptr && _impl_.extname_ != nullptr) { - delete _impl_.extname_; - } - _impl_.extname_ = nullptr; +inline void JsonArrayQueryConstructor::clear_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.format_ != nullptr) _impl_.format_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline const ::pg_query::String& AlterObjectDependsStmt::_internal_extname() const { - const ::pg_query::String* p = _impl_.extname_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_String_default_instance_); +inline const ::pg_query::JsonFormat& JsonArrayQueryConstructor::_internal_format() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonFormat* p = _impl_.format_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonFormat_default_instance_); } -inline const ::pg_query::String& AlterObjectDependsStmt::extname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.extname) - return _internal_extname(); +inline const ::pg_query::JsonFormat& JsonArrayQueryConstructor::format() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayQueryConstructor.format) + return _internal_format(); } -inline void AlterObjectDependsStmt::unsafe_arena_set_allocated_extname( - ::pg_query::String* extname) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.extname_); +inline void JsonArrayQueryConstructor::unsafe_arena_set_allocated_format(::pg_query::JsonFormat* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.format_); } - _impl_.extname_ = extname; - if (extname) { - + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectDependsStmt.extname) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonArrayQueryConstructor.format) } -inline ::pg_query::String* AlterObjectDependsStmt::release_extname() { - - ::pg_query::String* temp = _impl_.extname_; - _impl_.extname_ = nullptr; +inline ::pg_query::JsonFormat* JsonArrayQueryConstructor::release_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::JsonFormat* released = _impl_.format_; + _impl_.format_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::String* AlterObjectDependsStmt::unsafe_arena_release_extname() { - // @@protoc_insertion_point(field_release:pg_query.AlterObjectDependsStmt.extname) - - ::pg_query::String* temp = _impl_.extname_; - _impl_.extname_ = nullptr; +inline ::pg_query::JsonFormat* JsonArrayQueryConstructor::unsafe_arena_release_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonArrayQueryConstructor.format) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::JsonFormat* temp = _impl_.format_; + _impl_.format_ = nullptr; return temp; } -inline ::pg_query::String* AlterObjectDependsStmt::_internal_mutable_extname() { - - if (_impl_.extname_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::String>(GetArenaForAllocation()); - _impl_.extname_ = p; +inline ::pg_query::JsonFormat* JsonArrayQueryConstructor::_internal_mutable_format() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.format_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonFormat>(GetArena()); + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(p); } - return _impl_.extname_; + return _impl_.format_; } -inline ::pg_query::String* AlterObjectDependsStmt::mutable_extname() { - ::pg_query::String* _msg = _internal_mutable_extname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectDependsStmt.extname) +inline ::pg_query::JsonFormat* JsonArrayQueryConstructor::mutable_format() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonFormat* _msg = _internal_mutable_format(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonArrayQueryConstructor.format) return _msg; } -inline void AlterObjectDependsStmt::set_allocated_extname(::pg_query::String* extname) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonArrayQueryConstructor::set_allocated_format(::pg_query::JsonFormat* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.extname_; + delete reinterpret_cast<::pg_query::JsonFormat*>(_impl_.format_); } - if (extname) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(extname); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonFormat*>(value)->GetArena(); if (message_arena != submessage_arena) { - extname = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, extname, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.extname_ = extname; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectDependsStmt.extname) + + _impl_.format_ = reinterpret_cast<::pg_query::JsonFormat*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonArrayQueryConstructor.format) } -// bool remove = 5 [json_name = "remove"]; -inline void AlterObjectDependsStmt::clear_remove() { - _impl_.remove_ = false; +// bool absent_on_null = 4 [json_name = "absent_on_null"]; +inline void JsonArrayQueryConstructor::clear_absent_on_null() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.absent_on_null_ = false; } -inline bool AlterObjectDependsStmt::_internal_remove() const { - return _impl_.remove_; +inline bool JsonArrayQueryConstructor::absent_on_null() const { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayQueryConstructor.absent_on_null) + return _internal_absent_on_null(); } -inline bool AlterObjectDependsStmt::remove() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.remove) - return _internal_remove(); +inline void JsonArrayQueryConstructor::set_absent_on_null(bool value) { + _internal_set_absent_on_null(value); + // @@protoc_insertion_point(field_set:pg_query.JsonArrayQueryConstructor.absent_on_null) } -inline void AlterObjectDependsStmt::_internal_set_remove(bool value) { - - _impl_.remove_ = value; +inline bool JsonArrayQueryConstructor::_internal_absent_on_null() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.absent_on_null_; } -inline void AlterObjectDependsStmt::set_remove(bool value) { - _internal_set_remove(value); - // @@protoc_insertion_point(field_set:pg_query.AlterObjectDependsStmt.remove) +inline void JsonArrayQueryConstructor::_internal_set_absent_on_null(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.absent_on_null_ = value; } -// ------------------------------------------------------------------- - -// AlterObjectSchemaStmt - -// .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; -inline void AlterObjectSchemaStmt::clear_object_type() { - _impl_.object_type_ = 0; +// int32 location = 5 [json_name = "location"]; +inline void JsonArrayQueryConstructor::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline ::pg_query::ObjectType AlterObjectSchemaStmt::_internal_object_type() const { - return static_cast< ::pg_query::ObjectType >(_impl_.object_type_); +inline ::int32_t JsonArrayQueryConstructor::location() const { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayQueryConstructor.location) + return _internal_location(); } -inline ::pg_query::ObjectType AlterObjectSchemaStmt::object_type() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.object_type) - return _internal_object_type(); +inline void JsonArrayQueryConstructor::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.JsonArrayQueryConstructor.location) } -inline void AlterObjectSchemaStmt::_internal_set_object_type(::pg_query::ObjectType value) { - - _impl_.object_type_ = value; +inline ::int32_t JsonArrayQueryConstructor::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void AlterObjectSchemaStmt::set_object_type(::pg_query::ObjectType value) { - _internal_set_object_type(value); - // @@protoc_insertion_point(field_set:pg_query.AlterObjectSchemaStmt.object_type) +inline void JsonArrayQueryConstructor::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.RangeVar relation = 2 [json_name = "relation"]; -inline bool AlterObjectSchemaStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; -} -inline bool AlterObjectSchemaStmt::has_relation() const { - return _internal_has_relation(); +// ------------------------------------------------------------------- + +// JsonAggConstructor + +// .pg_query.JsonOutput output = 1 [json_name = "output"]; +inline bool JsonAggConstructor::has_output() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.output_ != nullptr); + return value; } -inline void AlterObjectSchemaStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void JsonAggConstructor::clear_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.output_ != nullptr) _impl_.output_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RangeVar& AlterObjectSchemaStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::JsonOutput& JsonAggConstructor::_internal_output() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonOutput* p = _impl_.output_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonOutput_default_instance_); } -inline const ::pg_query::RangeVar& AlterObjectSchemaStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.relation) - return _internal_relation(); +inline const ::pg_query::JsonOutput& JsonAggConstructor::output() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonAggConstructor.output) + return _internal_output(); } -inline void AlterObjectSchemaStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void JsonAggConstructor::unsafe_arena_set_allocated_output(::pg_query::JsonOutput* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.output_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectSchemaStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonAggConstructor.output) } -inline ::pg_query::RangeVar* AlterObjectSchemaStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::JsonOutput* JsonAggConstructor::release_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonOutput* released = _impl_.output_; + _impl_.output_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* AlterObjectSchemaStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.AlterObjectSchemaStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::JsonOutput* JsonAggConstructor::unsafe_arena_release_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonAggConstructor.output) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonOutput* temp = _impl_.output_; + _impl_.output_ = nullptr; return temp; } -inline ::pg_query::RangeVar* AlterObjectSchemaStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::JsonOutput* JsonAggConstructor::_internal_mutable_output() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.output_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonOutput>(GetArena()); + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(p); } - return _impl_.relation_; + return _impl_.output_; } -inline ::pg_query::RangeVar* AlterObjectSchemaStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectSchemaStmt.relation) +inline ::pg_query::JsonOutput* JsonAggConstructor::mutable_output() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonOutput* _msg = _internal_mutable_output(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonAggConstructor.output) return _msg; } -inline void AlterObjectSchemaStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonAggConstructor::set_allocated_output(::pg_query::JsonOutput* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::JsonOutput*>(_impl_.output_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonOutput*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectSchemaStmt.relation) -} -// .pg_query.Node object = 3 [json_name = "object"]; -inline bool AlterObjectSchemaStmt::_internal_has_object() const { - return this != internal_default_instance() && _impl_.object_ != nullptr; + _impl_.output_ = reinterpret_cast<::pg_query::JsonOutput*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonAggConstructor.output) } -inline bool AlterObjectSchemaStmt::has_object() const { - return _internal_has_object(); + +// .pg_query.Node agg_filter = 2 [json_name = "agg_filter"]; +inline bool JsonAggConstructor::has_agg_filter() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.agg_filter_ != nullptr); + return value; } -inline void AlterObjectSchemaStmt::clear_object() { - if (GetArenaForAllocation() == nullptr && _impl_.object_ != nullptr) { - delete _impl_.object_; - } - _impl_.object_ = nullptr; +inline void JsonAggConstructor::clear_agg_filter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.agg_filter_ != nullptr) _impl_.agg_filter_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& AlterObjectSchemaStmt::_internal_object() const { - const ::pg_query::Node* p = _impl_.object_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& JsonAggConstructor::_internal_agg_filter() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.agg_filter_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& AlterObjectSchemaStmt::object() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.object) - return _internal_object(); +inline const ::pg_query::Node& JsonAggConstructor::agg_filter() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonAggConstructor.agg_filter) + return _internal_agg_filter(); } -inline void AlterObjectSchemaStmt::unsafe_arena_set_allocated_object( - ::pg_query::Node* object) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.object_); +inline void JsonAggConstructor::unsafe_arena_set_allocated_agg_filter(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.agg_filter_); } - _impl_.object_ = object; - if (object) { - + _impl_.agg_filter_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectSchemaStmt.object) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonAggConstructor.agg_filter) } -inline ::pg_query::Node* AlterObjectSchemaStmt::release_object() { - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::Node* JsonAggConstructor::release_agg_filter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.agg_filter_; + _impl_.agg_filter_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* AlterObjectSchemaStmt::unsafe_arena_release_object() { - // @@protoc_insertion_point(field_release:pg_query.AlterObjectSchemaStmt.object) - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::Node* JsonAggConstructor::unsafe_arena_release_agg_filter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonAggConstructor.agg_filter) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.agg_filter_; + _impl_.agg_filter_ = nullptr; return temp; } -inline ::pg_query::Node* AlterObjectSchemaStmt::_internal_mutable_object() { - - if (_impl_.object_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.object_ = p; +inline ::pg_query::Node* JsonAggConstructor::_internal_mutable_agg_filter() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.agg_filter_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.agg_filter_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.object_; + return _impl_.agg_filter_; } -inline ::pg_query::Node* AlterObjectSchemaStmt::mutable_object() { - ::pg_query::Node* _msg = _internal_mutable_object(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectSchemaStmt.object) +inline ::pg_query::Node* JsonAggConstructor::mutable_agg_filter() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_agg_filter(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonAggConstructor.agg_filter) return _msg; } -inline void AlterObjectSchemaStmt::set_allocated_object(::pg_query::Node* object) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonAggConstructor::set_allocated_agg_filter(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.object_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.agg_filter_); } - if (object) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(object); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - object = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, object, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.object_ = object; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectSchemaStmt.object) + + _impl_.agg_filter_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonAggConstructor.agg_filter) } -// string newschema = 4 [json_name = "newschema"]; -inline void AlterObjectSchemaStmt::clear_newschema() { - _impl_.newschema_.ClearToEmpty(); +// repeated .pg_query.Node agg_order = 3 [json_name = "agg_order"]; +inline int JsonAggConstructor::_internal_agg_order_size() const { + return _internal_agg_order().size(); } -inline const std::string& AlterObjectSchemaStmt::newschema() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.newschema) - return _internal_newschema(); +inline int JsonAggConstructor::agg_order_size() const { + return _internal_agg_order_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterObjectSchemaStmt::set_newschema(ArgT0&& arg0, ArgT... args) { - - _impl_.newschema_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterObjectSchemaStmt.newschema) +inline void JsonAggConstructor::clear_agg_order() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.agg_order_.Clear(); } -inline std::string* AlterObjectSchemaStmt::mutable_newschema() { - std::string* _s = _internal_mutable_newschema(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectSchemaStmt.newschema) - return _s; +inline ::pg_query::Node* JsonAggConstructor::mutable_agg_order(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.JsonAggConstructor.agg_order) + return _internal_mutable_agg_order()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* JsonAggConstructor::mutable_agg_order() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.JsonAggConstructor.agg_order) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_agg_order(); +} +inline const ::pg_query::Node& JsonAggConstructor::agg_order(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonAggConstructor.agg_order) + return _internal_agg_order().Get(index); +} +inline ::pg_query::Node* JsonAggConstructor::add_agg_order() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_agg_order()->Add(); + // @@protoc_insertion_point(field_add:pg_query.JsonAggConstructor.agg_order) + return _add; } -inline const std::string& AlterObjectSchemaStmt::_internal_newschema() const { - return _impl_.newschema_.Get(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& JsonAggConstructor::agg_order() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.JsonAggConstructor.agg_order) + return _internal_agg_order(); } -inline void AlterObjectSchemaStmt::_internal_set_newschema(const std::string& value) { - - _impl_.newschema_.Set(value, GetArenaForAllocation()); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +JsonAggConstructor::_internal_agg_order() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.agg_order_; } -inline std::string* AlterObjectSchemaStmt::_internal_mutable_newschema() { - - return _impl_.newschema_.Mutable(GetArenaForAllocation()); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +JsonAggConstructor::_internal_mutable_agg_order() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.agg_order_; } -inline std::string* AlterObjectSchemaStmt::release_newschema() { - // @@protoc_insertion_point(field_release:pg_query.AlterObjectSchemaStmt.newschema) - return _impl_.newschema_.Release(); + +// .pg_query.WindowDef over = 4 [json_name = "over"]; +inline bool JsonAggConstructor::has_over() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.over_ != nullptr); + return value; } -inline void AlterObjectSchemaStmt::set_allocated_newschema(std::string* newschema) { - if (newschema != nullptr) { - - } else { - +inline void JsonAggConstructor::clear_over() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.over_ != nullptr) _impl_.over_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; +} +inline const ::pg_query::WindowDef& JsonAggConstructor::_internal_over() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::WindowDef* p = _impl_.over_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_WindowDef_default_instance_); +} +inline const ::pg_query::WindowDef& JsonAggConstructor::over() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonAggConstructor.over) + return _internal_over(); +} +inline void JsonAggConstructor::unsafe_arena_set_allocated_over(::pg_query::WindowDef* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.over_); } - _impl_.newschema_.SetAllocated(newschema, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.newschema_.IsDefault()) { - _impl_.newschema_.Set("", GetArenaForAllocation()); + _impl_.over_ = reinterpret_cast<::pg_query::WindowDef*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectSchemaStmt.newschema) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonAggConstructor.over) } +inline ::pg_query::WindowDef* JsonAggConstructor::release_over() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool missing_ok = 5 [json_name = "missing_ok"]; -inline void AlterObjectSchemaStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; -} -inline bool AlterObjectSchemaStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::WindowDef* released = _impl_.over_; + _impl_.over_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool AlterObjectSchemaStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.missing_ok) - return _internal_missing_ok(); +inline ::pg_query::WindowDef* JsonAggConstructor::unsafe_arena_release_over() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonAggConstructor.over) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::WindowDef* temp = _impl_.over_; + _impl_.over_ = nullptr; + return temp; } -inline void AlterObjectSchemaStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline ::pg_query::WindowDef* JsonAggConstructor::_internal_mutable_over() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.over_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::WindowDef>(GetArena()); + _impl_.over_ = reinterpret_cast<::pg_query::WindowDef*>(p); + } + return _impl_.over_; } -inline void AlterObjectSchemaStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.AlterObjectSchemaStmt.missing_ok) +inline ::pg_query::WindowDef* JsonAggConstructor::mutable_over() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WindowDef* _msg = _internal_mutable_over(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonAggConstructor.over) + return _msg; } +inline void JsonAggConstructor::set_allocated_over(::pg_query::WindowDef* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::WindowDef*>(_impl_.over_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::WindowDef*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } -// AlterOwnerStmt + _impl_.over_ = reinterpret_cast<::pg_query::WindowDef*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonAggConstructor.over) +} -// .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; -inline void AlterOwnerStmt::clear_object_type() { - _impl_.object_type_ = 0; +// int32 location = 5 [json_name = "location"]; +inline void JsonAggConstructor::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline ::pg_query::ObjectType AlterOwnerStmt::_internal_object_type() const { - return static_cast< ::pg_query::ObjectType >(_impl_.object_type_); +inline ::int32_t JsonAggConstructor::location() const { + // @@protoc_insertion_point(field_get:pg_query.JsonAggConstructor.location) + return _internal_location(); } -inline ::pg_query::ObjectType AlterOwnerStmt::object_type() const { - // @@protoc_insertion_point(field_get:pg_query.AlterOwnerStmt.object_type) - return _internal_object_type(); +inline void JsonAggConstructor::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.JsonAggConstructor.location) } -inline void AlterOwnerStmt::_internal_set_object_type(::pg_query::ObjectType value) { - - _impl_.object_type_ = value; +inline ::int32_t JsonAggConstructor::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void AlterOwnerStmt::set_object_type(::pg_query::ObjectType value) { - _internal_set_object_type(value); - // @@protoc_insertion_point(field_set:pg_query.AlterOwnerStmt.object_type) +inline void JsonAggConstructor::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// .pg_query.RangeVar relation = 2 [json_name = "relation"]; -inline bool AlterOwnerStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; -} -inline bool AlterOwnerStmt::has_relation() const { - return _internal_has_relation(); +// ------------------------------------------------------------------- + +// JsonObjectAgg + +// .pg_query.JsonAggConstructor constructor = 1 [json_name = "constructor"]; +inline bool JsonObjectAgg::has_constructor() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.constructor_ != nullptr); + return value; } -inline void AlterOwnerStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void JsonObjectAgg::clear_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.constructor_ != nullptr) _impl_.constructor_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::RangeVar& AlterOwnerStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::JsonAggConstructor& JsonObjectAgg::_internal_constructor() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonAggConstructor* p = _impl_.constructor_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonAggConstructor_default_instance_); } -inline const ::pg_query::RangeVar& AlterOwnerStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.AlterOwnerStmt.relation) - return _internal_relation(); +inline const ::pg_query::JsonAggConstructor& JsonObjectAgg::constructor() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonObjectAgg.constructor) + return _internal_constructor(); } -inline void AlterOwnerStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void JsonObjectAgg::unsafe_arena_set_allocated_constructor(::pg_query::JsonAggConstructor* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.constructor_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.constructor_ = reinterpret_cast<::pg_query::JsonAggConstructor*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterOwnerStmt.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonObjectAgg.constructor) } -inline ::pg_query::RangeVar* AlterOwnerStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::JsonAggConstructor* JsonObjectAgg::release_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonAggConstructor* released = _impl_.constructor_; + _impl_.constructor_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* AlterOwnerStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.AlterOwnerStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; +inline ::pg_query::JsonAggConstructor* JsonObjectAgg::unsafe_arena_release_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonObjectAgg.constructor) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonAggConstructor* temp = _impl_.constructor_; + _impl_.constructor_ = nullptr; return temp; } -inline ::pg_query::RangeVar* AlterOwnerStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; +inline ::pg_query::JsonAggConstructor* JsonObjectAgg::_internal_mutable_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.constructor_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonAggConstructor>(GetArena()); + _impl_.constructor_ = reinterpret_cast<::pg_query::JsonAggConstructor*>(p); } - return _impl_.relation_; + return _impl_.constructor_; } -inline ::pg_query::RangeVar* AlterOwnerStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterOwnerStmt.relation) +inline ::pg_query::JsonAggConstructor* JsonObjectAgg::mutable_constructor() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonAggConstructor* _msg = _internal_mutable_constructor(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonObjectAgg.constructor) return _msg; } -inline void AlterOwnerStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonObjectAgg::set_allocated_constructor(::pg_query::JsonAggConstructor* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::JsonAggConstructor*>(_impl_.constructor_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonAggConstructor*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOwnerStmt.relation) -} -// .pg_query.Node object = 3 [json_name = "object"]; -inline bool AlterOwnerStmt::_internal_has_object() const { - return this != internal_default_instance() && _impl_.object_ != nullptr; + _impl_.constructor_ = reinterpret_cast<::pg_query::JsonAggConstructor*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonObjectAgg.constructor) } -inline bool AlterOwnerStmt::has_object() const { - return _internal_has_object(); + +// .pg_query.JsonKeyValue arg = 2 [json_name = "arg"]; +inline bool JsonObjectAgg::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void AlterOwnerStmt::clear_object() { - if (GetArenaForAllocation() == nullptr && _impl_.object_ != nullptr) { - delete _impl_.object_; - } - _impl_.object_ = nullptr; +inline void JsonObjectAgg::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& AlterOwnerStmt::_internal_object() const { - const ::pg_query::Node* p = _impl_.object_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::JsonKeyValue& JsonObjectAgg::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonKeyValue* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonKeyValue_default_instance_); } -inline const ::pg_query::Node& AlterOwnerStmt::object() const { - // @@protoc_insertion_point(field_get:pg_query.AlterOwnerStmt.object) - return _internal_object(); +inline const ::pg_query::JsonKeyValue& JsonObjectAgg::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonObjectAgg.arg) + return _internal_arg(); } -inline void AlterOwnerStmt::unsafe_arena_set_allocated_object( - ::pg_query::Node* object) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.object_); +inline void JsonObjectAgg::unsafe_arena_set_allocated_arg(::pg_query::JsonKeyValue* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.object_ = object; - if (object) { - + _impl_.arg_ = reinterpret_cast<::pg_query::JsonKeyValue*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterOwnerStmt.object) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonObjectAgg.arg) } -inline ::pg_query::Node* AlterOwnerStmt::release_object() { - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::JsonKeyValue* JsonObjectAgg::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonKeyValue* released = _impl_.arg_; + _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* AlterOwnerStmt::unsafe_arena_release_object() { - // @@protoc_insertion_point(field_release:pg_query.AlterOwnerStmt.object) - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::JsonKeyValue* JsonObjectAgg::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonObjectAgg.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonKeyValue* temp = _impl_.arg_; + _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::Node* AlterOwnerStmt::_internal_mutable_object() { - - if (_impl_.object_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.object_ = p; +inline ::pg_query::JsonKeyValue* JsonObjectAgg::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonKeyValue>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::JsonKeyValue*>(p); } - return _impl_.object_; + return _impl_.arg_; } -inline ::pg_query::Node* AlterOwnerStmt::mutable_object() { - ::pg_query::Node* _msg = _internal_mutable_object(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterOwnerStmt.object) +inline ::pg_query::JsonKeyValue* JsonObjectAgg::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonKeyValue* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonObjectAgg.arg) return _msg; } -inline void AlterOwnerStmt::set_allocated_object(::pg_query::Node* object) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonObjectAgg::set_allocated_arg(::pg_query::JsonKeyValue* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.object_; + delete reinterpret_cast<::pg_query::JsonKeyValue*>(_impl_.arg_); } - if (object) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(object); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonKeyValue*>(value)->GetArena(); if (message_arena != submessage_arena) { - object = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, object, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.object_ = object; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOwnerStmt.object) + + _impl_.arg_ = reinterpret_cast<::pg_query::JsonKeyValue*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonObjectAgg.arg) } -// .pg_query.RoleSpec newowner = 4 [json_name = "newowner"]; -inline bool AlterOwnerStmt::_internal_has_newowner() const { - return this != internal_default_instance() && _impl_.newowner_ != nullptr; +// bool absent_on_null = 3 [json_name = "absent_on_null"]; +inline void JsonObjectAgg::clear_absent_on_null() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.absent_on_null_ = false; } -inline bool AlterOwnerStmt::has_newowner() const { - return _internal_has_newowner(); +inline bool JsonObjectAgg::absent_on_null() const { + // @@protoc_insertion_point(field_get:pg_query.JsonObjectAgg.absent_on_null) + return _internal_absent_on_null(); } -inline void AlterOwnerStmt::clear_newowner() { - if (GetArenaForAllocation() == nullptr && _impl_.newowner_ != nullptr) { - delete _impl_.newowner_; - } - _impl_.newowner_ = nullptr; +inline void JsonObjectAgg::set_absent_on_null(bool value) { + _internal_set_absent_on_null(value); + // @@protoc_insertion_point(field_set:pg_query.JsonObjectAgg.absent_on_null) } -inline const ::pg_query::RoleSpec& AlterOwnerStmt::_internal_newowner() const { - const ::pg_query::RoleSpec* p = _impl_.newowner_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline bool JsonObjectAgg::_internal_absent_on_null() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.absent_on_null_; } -inline const ::pg_query::RoleSpec& AlterOwnerStmt::newowner() const { - // @@protoc_insertion_point(field_get:pg_query.AlterOwnerStmt.newowner) - return _internal_newowner(); +inline void JsonObjectAgg::_internal_set_absent_on_null(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.absent_on_null_ = value; +} + +// bool unique = 4 [json_name = "unique"]; +inline void JsonObjectAgg::clear_unique() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.unique_ = false; +} +inline bool JsonObjectAgg::unique() const { + // @@protoc_insertion_point(field_get:pg_query.JsonObjectAgg.unique) + return _internal_unique(); +} +inline void JsonObjectAgg::set_unique(bool value) { + _internal_set_unique(value); + // @@protoc_insertion_point(field_set:pg_query.JsonObjectAgg.unique) +} +inline bool JsonObjectAgg::_internal_unique() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.unique_; +} +inline void JsonObjectAgg::_internal_set_unique(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.unique_ = value; +} + +// ------------------------------------------------------------------- + +// JsonArrayAgg + +// .pg_query.JsonAggConstructor constructor = 1 [json_name = "constructor"]; +inline bool JsonArrayAgg::has_constructor() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.constructor_ != nullptr); + return value; } -inline void AlterOwnerStmt::unsafe_arena_set_allocated_newowner( - ::pg_query::RoleSpec* newowner) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.newowner_); +inline void JsonArrayAgg::clear_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.constructor_ != nullptr) _impl_.constructor_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::JsonAggConstructor& JsonArrayAgg::_internal_constructor() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonAggConstructor* p = _impl_.constructor_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonAggConstructor_default_instance_); +} +inline const ::pg_query::JsonAggConstructor& JsonArrayAgg::constructor() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayAgg.constructor) + return _internal_constructor(); +} +inline void JsonArrayAgg::unsafe_arena_set_allocated_constructor(::pg_query::JsonAggConstructor* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.constructor_); } - _impl_.newowner_ = newowner; - if (newowner) { - + _impl_.constructor_ = reinterpret_cast<::pg_query::JsonAggConstructor*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterOwnerStmt.newowner) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonArrayAgg.constructor) } -inline ::pg_query::RoleSpec* AlterOwnerStmt::release_newowner() { - - ::pg_query::RoleSpec* temp = _impl_.newowner_; - _impl_.newowner_ = nullptr; +inline ::pg_query::JsonAggConstructor* JsonArrayAgg::release_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonAggConstructor* released = _impl_.constructor_; + _impl_.constructor_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* AlterOwnerStmt::unsafe_arena_release_newowner() { - // @@protoc_insertion_point(field_release:pg_query.AlterOwnerStmt.newowner) - - ::pg_query::RoleSpec* temp = _impl_.newowner_; - _impl_.newowner_ = nullptr; +inline ::pg_query::JsonAggConstructor* JsonArrayAgg::unsafe_arena_release_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonArrayAgg.constructor) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::JsonAggConstructor* temp = _impl_.constructor_; + _impl_.constructor_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* AlterOwnerStmt::_internal_mutable_newowner() { - - if (_impl_.newowner_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.newowner_ = p; +inline ::pg_query::JsonAggConstructor* JsonArrayAgg::_internal_mutable_constructor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.constructor_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonAggConstructor>(GetArena()); + _impl_.constructor_ = reinterpret_cast<::pg_query::JsonAggConstructor*>(p); } - return _impl_.newowner_; + return _impl_.constructor_; } -inline ::pg_query::RoleSpec* AlterOwnerStmt::mutable_newowner() { - ::pg_query::RoleSpec* _msg = _internal_mutable_newowner(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterOwnerStmt.newowner) +inline ::pg_query::JsonAggConstructor* JsonArrayAgg::mutable_constructor() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonAggConstructor* _msg = _internal_mutable_constructor(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonArrayAgg.constructor) return _msg; } -inline void AlterOwnerStmt::set_allocated_newowner(::pg_query::RoleSpec* newowner) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonArrayAgg::set_allocated_constructor(::pg_query::JsonAggConstructor* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.newowner_; + delete reinterpret_cast<::pg_query::JsonAggConstructor*>(_impl_.constructor_); } - if (newowner) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(newowner); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonAggConstructor*>(value)->GetArena(); if (message_arena != submessage_arena) { - newowner = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, newowner, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.newowner_ = newowner; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOwnerStmt.newowner) -} - -// ------------------------------------------------------------------- - -// AlterOperatorStmt -// .pg_query.ObjectWithArgs opername = 1 [json_name = "opername"]; -inline bool AlterOperatorStmt::_internal_has_opername() const { - return this != internal_default_instance() && _impl_.opername_ != nullptr; + _impl_.constructor_ = reinterpret_cast<::pg_query::JsonAggConstructor*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonArrayAgg.constructor) } -inline bool AlterOperatorStmt::has_opername() const { - return _internal_has_opername(); + +// .pg_query.JsonValueExpr arg = 2 [json_name = "arg"]; +inline bool JsonArrayAgg::has_arg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_ != nullptr); + return value; } -inline void AlterOperatorStmt::clear_opername() { - if (GetArenaForAllocation() == nullptr && _impl_.opername_ != nullptr) { - delete _impl_.opername_; - } - _impl_.opername_ = nullptr; +inline void JsonArrayAgg::clear_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_ != nullptr) _impl_.arg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::ObjectWithArgs& AlterOperatorStmt::_internal_opername() const { - const ::pg_query::ObjectWithArgs* p = _impl_.opername_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_ObjectWithArgs_default_instance_); +inline const ::pg_query::JsonValueExpr& JsonArrayAgg::_internal_arg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::JsonValueExpr* p = _impl_.arg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_JsonValueExpr_default_instance_); } -inline const ::pg_query::ObjectWithArgs& AlterOperatorStmt::opername() const { - // @@protoc_insertion_point(field_get:pg_query.AlterOperatorStmt.opername) - return _internal_opername(); +inline const ::pg_query::JsonValueExpr& JsonArrayAgg::arg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayAgg.arg) + return _internal_arg(); } -inline void AlterOperatorStmt::unsafe_arena_set_allocated_opername( - ::pg_query::ObjectWithArgs* opername) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.opername_); +inline void JsonArrayAgg::unsafe_arena_set_allocated_arg(::pg_query::JsonValueExpr* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_); } - _impl_.opername_ = opername; - if (opername) { - + _impl_.arg_ = reinterpret_cast<::pg_query::JsonValueExpr*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterOperatorStmt.opername) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.JsonArrayAgg.arg) } -inline ::pg_query::ObjectWithArgs* AlterOperatorStmt::release_opername() { - - ::pg_query::ObjectWithArgs* temp = _impl_.opername_; - _impl_.opername_ = nullptr; +inline ::pg_query::JsonValueExpr* JsonArrayAgg::release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonValueExpr* released = _impl_.arg_; + _impl_.arg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::ObjectWithArgs* AlterOperatorStmt::unsafe_arena_release_opername() { - // @@protoc_insertion_point(field_release:pg_query.AlterOperatorStmt.opername) - - ::pg_query::ObjectWithArgs* temp = _impl_.opername_; - _impl_.opername_ = nullptr; +inline ::pg_query::JsonValueExpr* JsonArrayAgg::unsafe_arena_release_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.JsonArrayAgg.arg) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::JsonValueExpr* temp = _impl_.arg_; + _impl_.arg_ = nullptr; return temp; } -inline ::pg_query::ObjectWithArgs* AlterOperatorStmt::_internal_mutable_opername() { - - if (_impl_.opername_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArenaForAllocation()); - _impl_.opername_ = p; +inline ::pg_query::JsonValueExpr* JsonArrayAgg::_internal_mutable_arg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.arg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::JsonValueExpr>(GetArena()); + _impl_.arg_ = reinterpret_cast<::pg_query::JsonValueExpr*>(p); } - return _impl_.opername_; + return _impl_.arg_; } -inline ::pg_query::ObjectWithArgs* AlterOperatorStmt::mutable_opername() { - ::pg_query::ObjectWithArgs* _msg = _internal_mutable_opername(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterOperatorStmt.opername) +inline ::pg_query::JsonValueExpr* JsonArrayAgg::mutable_arg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::JsonValueExpr* _msg = _internal_mutable_arg(); + // @@protoc_insertion_point(field_mutable:pg_query.JsonArrayAgg.arg) return _msg; } -inline void AlterOperatorStmt::set_allocated_opername(::pg_query::ObjectWithArgs* opername) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void JsonArrayAgg::set_allocated_arg(::pg_query::JsonValueExpr* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.opername_; + delete reinterpret_cast<::pg_query::JsonValueExpr*>(_impl_.arg_); } - if (opername) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(opername); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::JsonValueExpr*>(value)->GetArena(); if (message_arena != submessage_arena) { - opername = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, opername, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.opername_ = opername; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOperatorStmt.opername) -} -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int AlterOperatorStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int AlterOperatorStmt::options_size() const { - return _internal_options_size(); -} -inline void AlterOperatorStmt::clear_options() { - _impl_.options_.Clear(); -} -inline ::pg_query::Node* AlterOperatorStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterOperatorStmt.options) - return _impl_.options_.Mutable(index); + _impl_.arg_ = reinterpret_cast<::pg_query::JsonValueExpr*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.JsonArrayAgg.arg) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterOperatorStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterOperatorStmt.options) - return &_impl_.options_; -} -inline const ::pg_query::Node& AlterOperatorStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// bool absent_on_null = 3 [json_name = "absent_on_null"]; +inline void JsonArrayAgg::clear_absent_on_null() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.absent_on_null_ = false; } -inline const ::pg_query::Node& AlterOperatorStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterOperatorStmt.options) - return _internal_options(index); +inline bool JsonArrayAgg::absent_on_null() const { + // @@protoc_insertion_point(field_get:pg_query.JsonArrayAgg.absent_on_null) + return _internal_absent_on_null(); } -inline ::pg_query::Node* AlterOperatorStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void JsonArrayAgg::set_absent_on_null(bool value) { + _internal_set_absent_on_null(value); + // @@protoc_insertion_point(field_set:pg_query.JsonArrayAgg.absent_on_null) } -inline ::pg_query::Node* AlterOperatorStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterOperatorStmt.options) - return _add; +inline bool JsonArrayAgg::_internal_absent_on_null() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.absent_on_null_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterOperatorStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterOperatorStmt.options) - return _impl_.options_; +inline void JsonArrayAgg::_internal_set_absent_on_null(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.absent_on_null_ = value; } // ------------------------------------------------------------------- -// AlterTypeStmt +// RawStmt -// repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; -inline int AlterTypeStmt::_internal_type_name_size() const { - return _impl_.type_name_.size(); +// .pg_query.Node stmt = 1 [json_name = "stmt"]; +inline bool RawStmt::has_stmt() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.stmt_ != nullptr); + return value; } -inline int AlterTypeStmt::type_name_size() const { - return _internal_type_name_size(); +inline void RawStmt::clear_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.stmt_ != nullptr) _impl_.stmt_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void AlterTypeStmt::clear_type_name() { - _impl_.type_name_.Clear(); +inline const ::pg_query::Node& RawStmt::_internal_stmt() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.stmt_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* AlterTypeStmt::mutable_type_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTypeStmt.type_name) - return _impl_.type_name_.Mutable(index); +inline const ::pg_query::Node& RawStmt::stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RawStmt.stmt) + return _internal_stmt(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTypeStmt::mutable_type_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTypeStmt.type_name) - return &_impl_.type_name_; +inline void RawStmt::unsafe_arena_set_allocated_stmt(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.stmt_); + } + _impl_.stmt_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RawStmt.stmt) } -inline const ::pg_query::Node& AlterTypeStmt::_internal_type_name(int index) const { - return _impl_.type_name_.Get(index); +inline ::pg_query::Node* RawStmt::release_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.stmt_; + _impl_.stmt_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& AlterTypeStmt::type_name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTypeStmt.type_name) - return _internal_type_name(index); +inline ::pg_query::Node* RawStmt::unsafe_arena_release_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RawStmt.stmt) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.stmt_; + _impl_.stmt_ = nullptr; + return temp; } -inline ::pg_query::Node* AlterTypeStmt::_internal_add_type_name() { - return _impl_.type_name_.Add(); +inline ::pg_query::Node* RawStmt::_internal_mutable_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.stmt_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.stmt_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.stmt_; } -inline ::pg_query::Node* AlterTypeStmt::add_type_name() { - ::pg_query::Node* _add = _internal_add_type_name(); - // @@protoc_insertion_point(field_add:pg_query.AlterTypeStmt.type_name) - return _add; +inline ::pg_query::Node* RawStmt::mutable_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.RawStmt.stmt) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTypeStmt::type_name() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTypeStmt.type_name) - return _impl_.type_name_; +inline void RawStmt::set_allocated_stmt(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.stmt_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.stmt_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RawStmt.stmt) } -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int AlterTypeStmt::_internal_options_size() const { - return _impl_.options_.size(); +// int32 stmt_location = 2 [json_name = "stmt_location"]; +inline void RawStmt::clear_stmt_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.stmt_location_ = 0; } -inline int AlterTypeStmt::options_size() const { - return _internal_options_size(); +inline ::int32_t RawStmt::stmt_location() const { + // @@protoc_insertion_point(field_get:pg_query.RawStmt.stmt_location) + return _internal_stmt_location(); } -inline void AlterTypeStmt::clear_options() { - _impl_.options_.Clear(); +inline void RawStmt::set_stmt_location(::int32_t value) { + _internal_set_stmt_location(value); + // @@protoc_insertion_point(field_set:pg_query.RawStmt.stmt_location) } -inline ::pg_query::Node* AlterTypeStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTypeStmt.options) - return _impl_.options_.Mutable(index); +inline ::int32_t RawStmt::_internal_stmt_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.stmt_location_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTypeStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTypeStmt.options) - return &_impl_.options_; +inline void RawStmt::_internal_set_stmt_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.stmt_location_ = value; } -inline const ::pg_query::Node& AlterTypeStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// int32 stmt_len = 3 [json_name = "stmt_len"]; +inline void RawStmt::clear_stmt_len() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.stmt_len_ = 0; } -inline const ::pg_query::Node& AlterTypeStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTypeStmt.options) - return _internal_options(index); +inline ::int32_t RawStmt::stmt_len() const { + // @@protoc_insertion_point(field_get:pg_query.RawStmt.stmt_len) + return _internal_stmt_len(); } -inline ::pg_query::Node* AlterTypeStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void RawStmt::set_stmt_len(::int32_t value) { + _internal_set_stmt_len(value); + // @@protoc_insertion_point(field_set:pg_query.RawStmt.stmt_len) } -inline ::pg_query::Node* AlterTypeStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterTypeStmt.options) - return _add; +inline ::int32_t RawStmt::_internal_stmt_len() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.stmt_len_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTypeStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTypeStmt.options) - return _impl_.options_; +inline void RawStmt::_internal_set_stmt_len(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.stmt_len_ = value; } // ------------------------------------------------------------------- -// DropOwnedStmt +// InsertStmt -// repeated .pg_query.Node roles = 1 [json_name = "roles"]; -inline int DropOwnedStmt::_internal_roles_size() const { - return _impl_.roles_.size(); +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool InsertStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline int DropOwnedStmt::roles_size() const { - return _internal_roles_size(); +inline void InsertStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void DropOwnedStmt::clear_roles() { - _impl_.roles_.Clear(); +inline const ::pg_query::RangeVar& InsertStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline ::pg_query::Node* DropOwnedStmt::mutable_roles(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.DropOwnedStmt.roles) - return _impl_.roles_.Mutable(index); +inline const ::pg_query::RangeVar& InsertStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InsertStmt.relation) + return _internal_relation(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -DropOwnedStmt::mutable_roles() { - // @@protoc_insertion_point(field_mutable_list:pg_query.DropOwnedStmt.roles) - return &_impl_.roles_; +inline void InsertStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InsertStmt.relation) } -inline const ::pg_query::Node& DropOwnedStmt::_internal_roles(int index) const { - return _impl_.roles_.Get(index); +inline ::pg_query::RangeVar* InsertStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& DropOwnedStmt::roles(int index) const { - // @@protoc_insertion_point(field_get:pg_query.DropOwnedStmt.roles) - return _internal_roles(index); +inline ::pg_query::RangeVar* InsertStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.InsertStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline ::pg_query::Node* DropOwnedStmt::_internal_add_roles() { - return _impl_.roles_.Add(); +inline ::pg_query::RangeVar* InsertStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; } -inline ::pg_query::Node* DropOwnedStmt::add_roles() { - ::pg_query::Node* _add = _internal_add_roles(); - // @@protoc_insertion_point(field_add:pg_query.DropOwnedStmt.roles) - return _add; +inline ::pg_query::RangeVar* InsertStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.relation) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -DropOwnedStmt::roles() const { - // @@protoc_insertion_point(field_list:pg_query.DropOwnedStmt.roles) - return _impl_.roles_; +inline void InsertStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.InsertStmt.relation) } -// .pg_query.DropBehavior behavior = 2 [json_name = "behavior"]; -inline void DropOwnedStmt::clear_behavior() { - _impl_.behavior_ = 0; +// repeated .pg_query.Node cols = 2 [json_name = "cols"]; +inline int InsertStmt::_internal_cols_size() const { + return _internal_cols().size(); } -inline ::pg_query::DropBehavior DropOwnedStmt::_internal_behavior() const { - return static_cast< ::pg_query::DropBehavior >(_impl_.behavior_); +inline int InsertStmt::cols_size() const { + return _internal_cols_size(); } -inline ::pg_query::DropBehavior DropOwnedStmt::behavior() const { - // @@protoc_insertion_point(field_get:pg_query.DropOwnedStmt.behavior) - return _internal_behavior(); +inline void InsertStmt::clear_cols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cols_.Clear(); } -inline void DropOwnedStmt::_internal_set_behavior(::pg_query::DropBehavior value) { - - _impl_.behavior_ = value; +inline ::pg_query::Node* InsertStmt::mutable_cols(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.cols) + return _internal_mutable_cols()->Mutable(index); } -inline void DropOwnedStmt::set_behavior(::pg_query::DropBehavior value) { - _internal_set_behavior(value); - // @@protoc_insertion_point(field_set:pg_query.DropOwnedStmt.behavior) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* InsertStmt::mutable_cols() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.InsertStmt.cols) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_cols(); } - -// ------------------------------------------------------------------- - -// ReassignOwnedStmt - -// repeated .pg_query.Node roles = 1 [json_name = "roles"]; -inline int ReassignOwnedStmt::_internal_roles_size() const { - return _impl_.roles_.size(); +inline const ::pg_query::Node& InsertStmt::cols(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InsertStmt.cols) + return _internal_cols().Get(index); } -inline int ReassignOwnedStmt::roles_size() const { - return _internal_roles_size(); +inline ::pg_query::Node* InsertStmt::add_cols() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_cols()->Add(); + // @@protoc_insertion_point(field_add:pg_query.InsertStmt.cols) + return _add; } -inline void ReassignOwnedStmt::clear_roles() { - _impl_.roles_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& InsertStmt::cols() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.InsertStmt.cols) + return _internal_cols(); } -inline ::pg_query::Node* ReassignOwnedStmt::mutable_roles(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ReassignOwnedStmt.roles) - return _impl_.roles_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +InsertStmt::_internal_cols() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cols_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ReassignOwnedStmt::mutable_roles() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ReassignOwnedStmt.roles) - return &_impl_.roles_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +InsertStmt::_internal_mutable_cols() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.cols_; } -inline const ::pg_query::Node& ReassignOwnedStmt::_internal_roles(int index) const { - return _impl_.roles_.Get(index); + +// .pg_query.Node select_stmt = 3 [json_name = "selectStmt"]; +inline bool InsertStmt::has_select_stmt() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.select_stmt_ != nullptr); + return value; } -inline const ::pg_query::Node& ReassignOwnedStmt::roles(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ReassignOwnedStmt.roles) - return _internal_roles(index); +inline void InsertStmt::clear_select_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.select_stmt_ != nullptr) _impl_.select_stmt_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::Node* ReassignOwnedStmt::_internal_add_roles() { - return _impl_.roles_.Add(); +inline const ::pg_query::Node& InsertStmt::_internal_select_stmt() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.select_stmt_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* ReassignOwnedStmt::add_roles() { - ::pg_query::Node* _add = _internal_add_roles(); - // @@protoc_insertion_point(field_add:pg_query.ReassignOwnedStmt.roles) - return _add; +inline const ::pg_query::Node& InsertStmt::select_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InsertStmt.select_stmt) + return _internal_select_stmt(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ReassignOwnedStmt::roles() const { - // @@protoc_insertion_point(field_list:pg_query.ReassignOwnedStmt.roles) - return _impl_.roles_; +inline void InsertStmt::unsafe_arena_set_allocated_select_stmt(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.select_stmt_); + } + _impl_.select_stmt_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InsertStmt.select_stmt) } +inline ::pg_query::Node* InsertStmt::release_select_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// .pg_query.RoleSpec newrole = 2 [json_name = "newrole"]; -inline bool ReassignOwnedStmt::_internal_has_newrole() const { - return this != internal_default_instance() && _impl_.newrole_ != nullptr; + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.select_stmt_; + _impl_.select_stmt_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool ReassignOwnedStmt::has_newrole() const { - return _internal_has_newrole(); +inline ::pg_query::Node* InsertStmt::unsafe_arena_release_select_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.InsertStmt.select_stmt) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.select_stmt_; + _impl_.select_stmt_ = nullptr; + return temp; } -inline void ReassignOwnedStmt::clear_newrole() { - if (GetArenaForAllocation() == nullptr && _impl_.newrole_ != nullptr) { - delete _impl_.newrole_; +inline ::pg_query::Node* InsertStmt::_internal_mutable_select_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.select_stmt_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.select_stmt_ = reinterpret_cast<::pg_query::Node*>(p); } - _impl_.newrole_ = nullptr; + return _impl_.select_stmt_; } -inline const ::pg_query::RoleSpec& ReassignOwnedStmt::_internal_newrole() const { - const ::pg_query::RoleSpec* p = _impl_.newrole_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline ::pg_query::Node* InsertStmt::mutable_select_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_select_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.select_stmt) + return _msg; } -inline const ::pg_query::RoleSpec& ReassignOwnedStmt::newrole() const { - // @@protoc_insertion_point(field_get:pg_query.ReassignOwnedStmt.newrole) - return _internal_newrole(); +inline void InsertStmt::set_allocated_select_stmt(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.select_stmt_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.select_stmt_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.InsertStmt.select_stmt) +} + +// .pg_query.OnConflictClause on_conflict_clause = 4 [json_name = "onConflictClause"]; +inline bool InsertStmt::has_on_conflict_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.on_conflict_clause_ != nullptr); + return value; +} +inline void InsertStmt::clear_on_conflict_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.on_conflict_clause_ != nullptr) _impl_.on_conflict_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; +} +inline const ::pg_query::OnConflictClause& InsertStmt::_internal_on_conflict_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::OnConflictClause* p = _impl_.on_conflict_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_OnConflictClause_default_instance_); +} +inline const ::pg_query::OnConflictClause& InsertStmt::on_conflict_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InsertStmt.on_conflict_clause) + return _internal_on_conflict_clause(); } -inline void ReassignOwnedStmt::unsafe_arena_set_allocated_newrole( - ::pg_query::RoleSpec* newrole) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.newrole_); +inline void InsertStmt::unsafe_arena_set_allocated_on_conflict_clause(::pg_query::OnConflictClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.on_conflict_clause_); } - _impl_.newrole_ = newrole; - if (newrole) { - + _impl_.on_conflict_clause_ = reinterpret_cast<::pg_query::OnConflictClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ReassignOwnedStmt.newrole) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InsertStmt.on_conflict_clause) } -inline ::pg_query::RoleSpec* ReassignOwnedStmt::release_newrole() { - - ::pg_query::RoleSpec* temp = _impl_.newrole_; - _impl_.newrole_ = nullptr; +inline ::pg_query::OnConflictClause* InsertStmt::release_on_conflict_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::OnConflictClause* released = _impl_.on_conflict_clause_; + _impl_.on_conflict_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* ReassignOwnedStmt::unsafe_arena_release_newrole() { - // @@protoc_insertion_point(field_release:pg_query.ReassignOwnedStmt.newrole) - - ::pg_query::RoleSpec* temp = _impl_.newrole_; - _impl_.newrole_ = nullptr; +inline ::pg_query::OnConflictClause* InsertStmt::unsafe_arena_release_on_conflict_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.InsertStmt.on_conflict_clause) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::OnConflictClause* temp = _impl_.on_conflict_clause_; + _impl_.on_conflict_clause_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* ReassignOwnedStmt::_internal_mutable_newrole() { - - if (_impl_.newrole_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.newrole_ = p; +inline ::pg_query::OnConflictClause* InsertStmt::_internal_mutable_on_conflict_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.on_conflict_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::OnConflictClause>(GetArena()); + _impl_.on_conflict_clause_ = reinterpret_cast<::pg_query::OnConflictClause*>(p); } - return _impl_.newrole_; + return _impl_.on_conflict_clause_; } -inline ::pg_query::RoleSpec* ReassignOwnedStmt::mutable_newrole() { - ::pg_query::RoleSpec* _msg = _internal_mutable_newrole(); - // @@protoc_insertion_point(field_mutable:pg_query.ReassignOwnedStmt.newrole) +inline ::pg_query::OnConflictClause* InsertStmt::mutable_on_conflict_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::OnConflictClause* _msg = _internal_mutable_on_conflict_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.on_conflict_clause) return _msg; } -inline void ReassignOwnedStmt::set_allocated_newrole(::pg_query::RoleSpec* newrole) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void InsertStmt::set_allocated_on_conflict_clause(::pg_query::OnConflictClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.newrole_; + delete reinterpret_cast<::pg_query::OnConflictClause*>(_impl_.on_conflict_clause_); } - if (newrole) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(newrole); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::OnConflictClause*>(value)->GetArena(); if (message_arena != submessage_arena) { - newrole = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, newrole, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.newrole_ = newrole; - // @@protoc_insertion_point(field_set_allocated:pg_query.ReassignOwnedStmt.newrole) -} - -// ------------------------------------------------------------------- -// CompositeTypeStmt + _impl_.on_conflict_clause_ = reinterpret_cast<::pg_query::OnConflictClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.InsertStmt.on_conflict_clause) +} -// .pg_query.RangeVar typevar = 1 [json_name = "typevar"]; -inline bool CompositeTypeStmt::_internal_has_typevar() const { - return this != internal_default_instance() && _impl_.typevar_ != nullptr; +// repeated .pg_query.Node returning_list = 5 [json_name = "returningList"]; +inline int InsertStmt::_internal_returning_list_size() const { + return _internal_returning_list().size(); } -inline bool CompositeTypeStmt::has_typevar() const { - return _internal_has_typevar(); +inline int InsertStmt::returning_list_size() const { + return _internal_returning_list_size(); +} +inline void InsertStmt::clear_returning_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.returning_list_.Clear(); +} +inline ::pg_query::Node* InsertStmt::mutable_returning_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.returning_list) + return _internal_mutable_returning_list()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* InsertStmt::mutable_returning_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.InsertStmt.returning_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_returning_list(); +} +inline const ::pg_query::Node& InsertStmt::returning_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InsertStmt.returning_list) + return _internal_returning_list().Get(index); +} +inline ::pg_query::Node* InsertStmt::add_returning_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_returning_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.InsertStmt.returning_list) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& InsertStmt::returning_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.InsertStmt.returning_list) + return _internal_returning_list(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +InsertStmt::_internal_returning_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.returning_list_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +InsertStmt::_internal_mutable_returning_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.returning_list_; +} + +// .pg_query.WithClause with_clause = 6 [json_name = "withClause"]; +inline bool InsertStmt::has_with_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.with_clause_ != nullptr); + return value; } -inline void CompositeTypeStmt::clear_typevar() { - if (GetArenaForAllocation() == nullptr && _impl_.typevar_ != nullptr) { - delete _impl_.typevar_; - } - _impl_.typevar_ = nullptr; +inline void InsertStmt::clear_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.with_clause_ != nullptr) _impl_.with_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000008u; } -inline const ::pg_query::RangeVar& CompositeTypeStmt::_internal_typevar() const { - const ::pg_query::RangeVar* p = _impl_.typevar_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::WithClause& InsertStmt::_internal_with_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::WithClause* p = _impl_.with_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_WithClause_default_instance_); } -inline const ::pg_query::RangeVar& CompositeTypeStmt::typevar() const { - // @@protoc_insertion_point(field_get:pg_query.CompositeTypeStmt.typevar) - return _internal_typevar(); +inline const ::pg_query::WithClause& InsertStmt::with_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InsertStmt.with_clause) + return _internal_with_clause(); } -inline void CompositeTypeStmt::unsafe_arena_set_allocated_typevar( - ::pg_query::RangeVar* typevar) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.typevar_); +inline void InsertStmt::unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.with_clause_); } - _impl_.typevar_ = typevar; - if (typevar) { - + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CompositeTypeStmt.typevar) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InsertStmt.with_clause) } -inline ::pg_query::RangeVar* CompositeTypeStmt::release_typevar() { - - ::pg_query::RangeVar* temp = _impl_.typevar_; - _impl_.typevar_ = nullptr; +inline ::pg_query::WithClause* InsertStmt::release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::WithClause* released = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* CompositeTypeStmt::unsafe_arena_release_typevar() { - // @@protoc_insertion_point(field_release:pg_query.CompositeTypeStmt.typevar) - - ::pg_query::RangeVar* temp = _impl_.typevar_; - _impl_.typevar_ = nullptr; +inline ::pg_query::WithClause* InsertStmt::unsafe_arena_release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.InsertStmt.with_clause) + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::WithClause* temp = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; return temp; } -inline ::pg_query::RangeVar* CompositeTypeStmt::_internal_mutable_typevar() { - - if (_impl_.typevar_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.typevar_ = p; +inline ::pg_query::WithClause* InsertStmt::_internal_mutable_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.with_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArena()); + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(p); } - return _impl_.typevar_; + return _impl_.with_clause_; } -inline ::pg_query::RangeVar* CompositeTypeStmt::mutable_typevar() { - ::pg_query::RangeVar* _msg = _internal_mutable_typevar(); - // @@protoc_insertion_point(field_mutable:pg_query.CompositeTypeStmt.typevar) +inline ::pg_query::WithClause* InsertStmt::mutable_with_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.InsertStmt.with_clause) return _msg; } -inline void CompositeTypeStmt::set_allocated_typevar(::pg_query::RangeVar* typevar) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void InsertStmt::set_allocated_with_clause(::pg_query::WithClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.typevar_; + delete reinterpret_cast<::pg_query::WithClause*>(_impl_.with_clause_); } - if (typevar) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(typevar); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::WithClause*>(value)->GetArena(); if (message_arena != submessage_arena) { - typevar = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, typevar, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; } - _impl_.typevar_ = typevar; - // @@protoc_insertion_point(field_set_allocated:pg_query.CompositeTypeStmt.typevar) -} -// repeated .pg_query.Node coldeflist = 2 [json_name = "coldeflist"]; -inline int CompositeTypeStmt::_internal_coldeflist_size() const { - return _impl_.coldeflist_.size(); -} -inline int CompositeTypeStmt::coldeflist_size() const { - return _internal_coldeflist_size(); -} -inline void CompositeTypeStmt::clear_coldeflist() { - _impl_.coldeflist_.Clear(); -} -inline ::pg_query::Node* CompositeTypeStmt::mutable_coldeflist(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CompositeTypeStmt.coldeflist) - return _impl_.coldeflist_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CompositeTypeStmt::mutable_coldeflist() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CompositeTypeStmt.coldeflist) - return &_impl_.coldeflist_; + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.InsertStmt.with_clause) } -inline const ::pg_query::Node& CompositeTypeStmt::_internal_coldeflist(int index) const { - return _impl_.coldeflist_.Get(index); + +// .pg_query.OverridingKind override = 7 [json_name = "override"]; +inline void InsertStmt::clear_override() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.override_ = 0; } -inline const ::pg_query::Node& CompositeTypeStmt::coldeflist(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CompositeTypeStmt.coldeflist) - return _internal_coldeflist(index); +inline ::pg_query::OverridingKind InsertStmt::override() const { + // @@protoc_insertion_point(field_get:pg_query.InsertStmt.override) + return _internal_override(); } -inline ::pg_query::Node* CompositeTypeStmt::_internal_add_coldeflist() { - return _impl_.coldeflist_.Add(); +inline void InsertStmt::set_override(::pg_query::OverridingKind value) { + _internal_set_override(value); + // @@protoc_insertion_point(field_set:pg_query.InsertStmt.override) } -inline ::pg_query::Node* CompositeTypeStmt::add_coldeflist() { - ::pg_query::Node* _add = _internal_add_coldeflist(); - // @@protoc_insertion_point(field_add:pg_query.CompositeTypeStmt.coldeflist) - return _add; +inline ::pg_query::OverridingKind InsertStmt::_internal_override() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::OverridingKind>(_impl_.override_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CompositeTypeStmt::coldeflist() const { - // @@protoc_insertion_point(field_list:pg_query.CompositeTypeStmt.coldeflist) - return _impl_.coldeflist_; +inline void InsertStmt::_internal_set_override(::pg_query::OverridingKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.override_ = value; } // ------------------------------------------------------------------- -// CreateEnumStmt +// DeleteStmt -// repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; -inline int CreateEnumStmt::_internal_type_name_size() const { - return _impl_.type_name_.size(); -} -inline int CreateEnumStmt::type_name_size() const { - return _internal_type_name_size(); -} -inline void CreateEnumStmt::clear_type_name() { - _impl_.type_name_.Clear(); -} -inline ::pg_query::Node* CreateEnumStmt::mutable_type_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateEnumStmt.type_name) - return _impl_.type_name_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateEnumStmt::mutable_type_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateEnumStmt.type_name) - return &_impl_.type_name_; -} -inline const ::pg_query::Node& CreateEnumStmt::_internal_type_name(int index) const { - return _impl_.type_name_.Get(index); +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool DeleteStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline const ::pg_query::Node& CreateEnumStmt::type_name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateEnumStmt.type_name) - return _internal_type_name(index); +inline void DeleteStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* CreateEnumStmt::_internal_add_type_name() { - return _impl_.type_name_.Add(); +inline const ::pg_query::RangeVar& DeleteStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline ::pg_query::Node* CreateEnumStmt::add_type_name() { - ::pg_query::Node* _add = _internal_add_type_name(); - // @@protoc_insertion_point(field_add:pg_query.CreateEnumStmt.type_name) - return _add; +inline const ::pg_query::RangeVar& DeleteStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.relation) + return _internal_relation(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateEnumStmt::type_name() const { - // @@protoc_insertion_point(field_list:pg_query.CreateEnumStmt.type_name) - return _impl_.type_name_; +inline void DeleteStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DeleteStmt.relation) } +inline ::pg_query::RangeVar* DeleteStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node vals = 2 [json_name = "vals"]; -inline int CreateEnumStmt::_internal_vals_size() const { - return _impl_.vals_.size(); -} -inline int CreateEnumStmt::vals_size() const { - return _internal_vals_size(); -} -inline void CreateEnumStmt::clear_vals() { - _impl_.vals_.Clear(); -} -inline ::pg_query::Node* CreateEnumStmt::mutable_vals(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateEnumStmt.vals) - return _impl_.vals_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateEnumStmt::mutable_vals() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateEnumStmt.vals) - return &_impl_.vals_; -} -inline const ::pg_query::Node& CreateEnumStmt::_internal_vals(int index) const { - return _impl_.vals_.Get(index); -} -inline const ::pg_query::Node& CreateEnumStmt::vals(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateEnumStmt.vals) - return _internal_vals(index); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::Node* CreateEnumStmt::_internal_add_vals() { - return _impl_.vals_.Add(); +inline ::pg_query::RangeVar* DeleteStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DeleteStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline ::pg_query::Node* CreateEnumStmt::add_vals() { - ::pg_query::Node* _add = _internal_add_vals(); - // @@protoc_insertion_point(field_add:pg_query.CreateEnumStmt.vals) - return _add; +inline ::pg_query::RangeVar* DeleteStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateEnumStmt::vals() const { - // @@protoc_insertion_point(field_list:pg_query.CreateEnumStmt.vals) - return _impl_.vals_; +inline ::pg_query::RangeVar* DeleteStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.relation) + return _msg; } +inline void DeleteStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// CreateRangeStmt + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.DeleteStmt.relation) +} -// repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; -inline int CreateRangeStmt::_internal_type_name_size() const { - return _impl_.type_name_.size(); +// repeated .pg_query.Node using_clause = 2 [json_name = "usingClause"]; +inline int DeleteStmt::_internal_using_clause_size() const { + return _internal_using_clause().size(); } -inline int CreateRangeStmt::type_name_size() const { - return _internal_type_name_size(); +inline int DeleteStmt::using_clause_size() const { + return _internal_using_clause_size(); } -inline void CreateRangeStmt::clear_type_name() { - _impl_.type_name_.Clear(); +inline void DeleteStmt::clear_using_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.using_clause_.Clear(); } -inline ::pg_query::Node* CreateRangeStmt::mutable_type_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateRangeStmt.type_name) - return _impl_.type_name_.Mutable(index); +inline ::pg_query::Node* DeleteStmt::mutable_using_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.using_clause) + return _internal_mutable_using_clause()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateRangeStmt::mutable_type_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateRangeStmt.type_name) - return &_impl_.type_name_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DeleteStmt::mutable_using_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DeleteStmt.using_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_using_clause(); } -inline const ::pg_query::Node& CreateRangeStmt::_internal_type_name(int index) const { - return _impl_.type_name_.Get(index); +inline const ::pg_query::Node& DeleteStmt::using_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.using_clause) + return _internal_using_clause().Get(index); } -inline const ::pg_query::Node& CreateRangeStmt::type_name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateRangeStmt.type_name) - return _internal_type_name(index); +inline ::pg_query::Node* DeleteStmt::add_using_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_using_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DeleteStmt.using_clause) + return _add; } -inline ::pg_query::Node* CreateRangeStmt::_internal_add_type_name() { - return _impl_.type_name_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DeleteStmt::using_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DeleteStmt.using_clause) + return _internal_using_clause(); } -inline ::pg_query::Node* CreateRangeStmt::add_type_name() { - ::pg_query::Node* _add = _internal_add_type_name(); - // @@protoc_insertion_point(field_add:pg_query.CreateRangeStmt.type_name) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DeleteStmt::_internal_using_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.using_clause_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateRangeStmt::type_name() const { - // @@protoc_insertion_point(field_list:pg_query.CreateRangeStmt.type_name) - return _impl_.type_name_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DeleteStmt::_internal_mutable_using_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.using_clause_; } -// repeated .pg_query.Node params = 2 [json_name = "params"]; -inline int CreateRangeStmt::_internal_params_size() const { - return _impl_.params_.size(); -} -inline int CreateRangeStmt::params_size() const { - return _internal_params_size(); +// .pg_query.Node where_clause = 3 [json_name = "whereClause"]; +inline bool DeleteStmt::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; } -inline void CreateRangeStmt::clear_params() { - _impl_.params_.Clear(); +inline void DeleteStmt::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::Node* CreateRangeStmt::mutable_params(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateRangeStmt.params) - return _impl_.params_.Mutable(index); +inline const ::pg_query::Node& DeleteStmt::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.where_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateRangeStmt::mutable_params() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateRangeStmt.params) - return &_impl_.params_; +inline const ::pg_query::Node& DeleteStmt::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.where_clause) + return _internal_where_clause(); } -inline const ::pg_query::Node& CreateRangeStmt::_internal_params(int index) const { - return _impl_.params_.Get(index); +inline void DeleteStmt::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); + } + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DeleteStmt.where_clause) } -inline const ::pg_query::Node& CreateRangeStmt::params(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateRangeStmt.params) - return _internal_params(index); +inline ::pg_query::Node* DeleteStmt::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::Node* CreateRangeStmt::_internal_add_params() { - return _impl_.params_.Add(); +inline ::pg_query::Node* DeleteStmt::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DeleteStmt.where_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; + return temp; } -inline ::pg_query::Node* CreateRangeStmt::add_params() { - ::pg_query::Node* _add = _internal_add_params(); - // @@protoc_insertion_point(field_add:pg_query.CreateRangeStmt.params) - return _add; +inline ::pg_query::Node* DeleteStmt::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.where_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.where_clause_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateRangeStmt::params() const { - // @@protoc_insertion_point(field_list:pg_query.CreateRangeStmt.params) - return _impl_.params_; +inline ::pg_query::Node* DeleteStmt::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_where_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.where_clause) + return _msg; } +inline void DeleteStmt::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); + } -// ------------------------------------------------------------------- - -// AlterEnumStmt + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } -// repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; -inline int AlterEnumStmt::_internal_type_name_size() const { - return _impl_.type_name_.size(); -} -inline int AlterEnumStmt::type_name_size() const { - return _internal_type_name_size(); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.DeleteStmt.where_clause) } -inline void AlterEnumStmt::clear_type_name() { - _impl_.type_name_.Clear(); + +// repeated .pg_query.Node returning_list = 4 [json_name = "returningList"]; +inline int DeleteStmt::_internal_returning_list_size() const { + return _internal_returning_list().size(); } -inline ::pg_query::Node* AlterEnumStmt::mutable_type_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterEnumStmt.type_name) - return _impl_.type_name_.Mutable(index); +inline int DeleteStmt::returning_list_size() const { + return _internal_returning_list_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterEnumStmt::mutable_type_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterEnumStmt.type_name) - return &_impl_.type_name_; +inline void DeleteStmt::clear_returning_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.returning_list_.Clear(); } -inline const ::pg_query::Node& AlterEnumStmt::_internal_type_name(int index) const { - return _impl_.type_name_.Get(index); +inline ::pg_query::Node* DeleteStmt::mutable_returning_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.returning_list) + return _internal_mutable_returning_list()->Mutable(index); } -inline const ::pg_query::Node& AlterEnumStmt::type_name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.type_name) - return _internal_type_name(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DeleteStmt::mutable_returning_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DeleteStmt.returning_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_returning_list(); } -inline ::pg_query::Node* AlterEnumStmt::_internal_add_type_name() { - return _impl_.type_name_.Add(); +inline const ::pg_query::Node& DeleteStmt::returning_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.returning_list) + return _internal_returning_list().Get(index); } -inline ::pg_query::Node* AlterEnumStmt::add_type_name() { - ::pg_query::Node* _add = _internal_add_type_name(); - // @@protoc_insertion_point(field_add:pg_query.AlterEnumStmt.type_name) +inline ::pg_query::Node* DeleteStmt::add_returning_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_returning_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DeleteStmt.returning_list) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterEnumStmt::type_name() const { - // @@protoc_insertion_point(field_list:pg_query.AlterEnumStmt.type_name) - return _impl_.type_name_; -} - -// string old_val = 2 [json_name = "oldVal"]; -inline void AlterEnumStmt::clear_old_val() { - _impl_.old_val_.ClearToEmpty(); -} -inline const std::string& AlterEnumStmt::old_val() const { - // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.old_val) - return _internal_old_val(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DeleteStmt::returning_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DeleteStmt.returning_list) + return _internal_returning_list(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterEnumStmt::set_old_val(ArgT0&& arg0, ArgT... args) { - - _impl_.old_val_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.old_val) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DeleteStmt::_internal_returning_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.returning_list_; } -inline std::string* AlterEnumStmt::mutable_old_val() { - std::string* _s = _internal_mutable_old_val(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterEnumStmt.old_val) - return _s; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DeleteStmt::_internal_mutable_returning_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.returning_list_; } -inline const std::string& AlterEnumStmt::_internal_old_val() const { - return _impl_.old_val_.Get(); + +// .pg_query.WithClause with_clause = 5 [json_name = "withClause"]; +inline bool DeleteStmt::has_with_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.with_clause_ != nullptr); + return value; } -inline void AlterEnumStmt::_internal_set_old_val(const std::string& value) { - - _impl_.old_val_.Set(value, GetArenaForAllocation()); +inline void DeleteStmt::clear_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.with_clause_ != nullptr) _impl_.with_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline std::string* AlterEnumStmt::_internal_mutable_old_val() { - - return _impl_.old_val_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::WithClause& DeleteStmt::_internal_with_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::WithClause* p = _impl_.with_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_WithClause_default_instance_); } -inline std::string* AlterEnumStmt::release_old_val() { - // @@protoc_insertion_point(field_release:pg_query.AlterEnumStmt.old_val) - return _impl_.old_val_.Release(); +inline const ::pg_query::WithClause& DeleteStmt::with_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DeleteStmt.with_clause) + return _internal_with_clause(); } -inline void AlterEnumStmt::set_allocated_old_val(std::string* old_val) { - if (old_val != nullptr) { - - } else { - +inline void DeleteStmt::unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.with_clause_); } - _impl_.old_val_.SetAllocated(old_val, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.old_val_.IsDefault()) { - _impl_.old_val_.Set("", GetArenaForAllocation()); + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEnumStmt.old_val) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DeleteStmt.with_clause) } +inline ::pg_query::WithClause* DeleteStmt::release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// string new_val = 3 [json_name = "newVal"]; -inline void AlterEnumStmt::clear_new_val() { - _impl_.new_val_.ClearToEmpty(); -} -inline const std::string& AlterEnumStmt::new_val() const { - // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.new_val) - return _internal_new_val(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AlterEnumStmt::set_new_val(ArgT0&& arg0, ArgT... args) { - - _impl_.new_val_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.new_val) -} -inline std::string* AlterEnumStmt::mutable_new_val() { - std::string* _s = _internal_mutable_new_val(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterEnumStmt.new_val) - return _s; -} -inline const std::string& AlterEnumStmt::_internal_new_val() const { - return _impl_.new_val_.Get(); -} -inline void AlterEnumStmt::_internal_set_new_val(const std::string& value) { - - _impl_.new_val_.Set(value, GetArenaForAllocation()); -} -inline std::string* AlterEnumStmt::_internal_mutable_new_val() { - - return _impl_.new_val_.Mutable(GetArenaForAllocation()); -} -inline std::string* AlterEnumStmt::release_new_val() { - // @@protoc_insertion_point(field_release:pg_query.AlterEnumStmt.new_val) - return _impl_.new_val_.Release(); -} -inline void AlterEnumStmt::set_allocated_new_val(std::string* new_val) { - if (new_val != nullptr) { - - } else { - + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::WithClause* released = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } - _impl_.new_val_.SetAllocated(new_val, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.new_val_.IsDefault()) { - _impl_.new_val_.Set("", GetArenaForAllocation()); +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEnumStmt.new_val) +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::WithClause* DeleteStmt::unsafe_arena_release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DeleteStmt.with_clause) -// string new_val_neighbor = 4 [json_name = "newValNeighbor"]; -inline void AlterEnumStmt::clear_new_val_neighbor() { - _impl_.new_val_neighbor_.ClearToEmpty(); -} -inline const std::string& AlterEnumStmt::new_val_neighbor() const { - // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.new_val_neighbor) - return _internal_new_val_neighbor(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AlterEnumStmt::set_new_val_neighbor(ArgT0&& arg0, ArgT... args) { - - _impl_.new_val_neighbor_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.new_val_neighbor) -} -inline std::string* AlterEnumStmt::mutable_new_val_neighbor() { - std::string* _s = _internal_mutable_new_val_neighbor(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterEnumStmt.new_val_neighbor) - return _s; -} -inline const std::string& AlterEnumStmt::_internal_new_val_neighbor() const { - return _impl_.new_val_neighbor_.Get(); -} -inline void AlterEnumStmt::_internal_set_new_val_neighbor(const std::string& value) { - - _impl_.new_val_neighbor_.Set(value, GetArenaForAllocation()); + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::WithClause* temp = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; + return temp; } -inline std::string* AlterEnumStmt::_internal_mutable_new_val_neighbor() { - - return _impl_.new_val_neighbor_.Mutable(GetArenaForAllocation()); +inline ::pg_query::WithClause* DeleteStmt::_internal_mutable_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.with_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArena()); + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(p); + } + return _impl_.with_clause_; } -inline std::string* AlterEnumStmt::release_new_val_neighbor() { - // @@protoc_insertion_point(field_release:pg_query.AlterEnumStmt.new_val_neighbor) - return _impl_.new_val_neighbor_.Release(); +inline ::pg_query::WithClause* DeleteStmt::mutable_with_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.DeleteStmt.with_clause) + return _msg; } -inline void AlterEnumStmt::set_allocated_new_val_neighbor(std::string* new_val_neighbor) { - if (new_val_neighbor != nullptr) { - - } else { - +inline void DeleteStmt::set_allocated_with_clause(::pg_query::WithClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::WithClause*>(_impl_.with_clause_); } - _impl_.new_val_neighbor_.SetAllocated(new_val_neighbor, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.new_val_neighbor_.IsDefault()) { - _impl_.new_val_neighbor_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::WithClause*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEnumStmt.new_val_neighbor) + + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.DeleteStmt.with_clause) } -// bool new_val_is_after = 5 [json_name = "newValIsAfter"]; -inline void AlterEnumStmt::clear_new_val_is_after() { - _impl_.new_val_is_after_ = false; +// ------------------------------------------------------------------- + +// UpdateStmt + +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool UpdateStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline bool AlterEnumStmt::_internal_new_val_is_after() const { - return _impl_.new_val_is_after_; +inline void UpdateStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline bool AlterEnumStmt::new_val_is_after() const { - // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.new_val_is_after) - return _internal_new_val_is_after(); +inline const ::pg_query::RangeVar& UpdateStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline void AlterEnumStmt::_internal_set_new_val_is_after(bool value) { - - _impl_.new_val_is_after_ = value; +inline const ::pg_query::RangeVar& UpdateStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.relation) + return _internal_relation(); } -inline void AlterEnumStmt::set_new_val_is_after(bool value) { - _internal_set_new_val_is_after(value); - // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.new_val_is_after) +inline void UpdateStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.UpdateStmt.relation) } +inline ::pg_query::RangeVar* UpdateStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool skip_if_new_val_exists = 6 [json_name = "skipIfNewValExists"]; -inline void AlterEnumStmt::clear_skip_if_new_val_exists() { - _impl_.skip_if_new_val_exists_ = false; -} -inline bool AlterEnumStmt::_internal_skip_if_new_val_exists() const { - return _impl_.skip_if_new_val_exists_; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool AlterEnumStmt::skip_if_new_val_exists() const { - // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.skip_if_new_val_exists) - return _internal_skip_if_new_val_exists(); +inline ::pg_query::RangeVar* UpdateStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.UpdateStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline void AlterEnumStmt::_internal_set_skip_if_new_val_exists(bool value) { - - _impl_.skip_if_new_val_exists_ = value; +inline ::pg_query::RangeVar* UpdateStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; } -inline void AlterEnumStmt::set_skip_if_new_val_exists(bool value) { - _internal_set_skip_if_new_val_exists(value); - // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.skip_if_new_val_exists) +inline ::pg_query::RangeVar* UpdateStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.relation) + return _msg; } +inline void UpdateStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// AlterTSDictionaryStmt + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.UpdateStmt.relation) +} -// repeated .pg_query.Node dictname = 1 [json_name = "dictname"]; -inline int AlterTSDictionaryStmt::_internal_dictname_size() const { - return _impl_.dictname_.size(); +// repeated .pg_query.Node target_list = 2 [json_name = "targetList"]; +inline int UpdateStmt::_internal_target_list_size() const { + return _internal_target_list().size(); } -inline int AlterTSDictionaryStmt::dictname_size() const { - return _internal_dictname_size(); +inline int UpdateStmt::target_list_size() const { + return _internal_target_list_size(); } -inline void AlterTSDictionaryStmt::clear_dictname() { - _impl_.dictname_.Clear(); +inline void UpdateStmt::clear_target_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.target_list_.Clear(); } -inline ::pg_query::Node* AlterTSDictionaryStmt::mutable_dictname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTSDictionaryStmt.dictname) - return _impl_.dictname_.Mutable(index); +inline ::pg_query::Node* UpdateStmt::mutable_target_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.target_list) + return _internal_mutable_target_list()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTSDictionaryStmt::mutable_dictname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSDictionaryStmt.dictname) - return &_impl_.dictname_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* UpdateStmt::mutable_target_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.UpdateStmt.target_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_target_list(); } -inline const ::pg_query::Node& AlterTSDictionaryStmt::_internal_dictname(int index) const { - return _impl_.dictname_.Get(index); +inline const ::pg_query::Node& UpdateStmt::target_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.target_list) + return _internal_target_list().Get(index); } -inline const ::pg_query::Node& AlterTSDictionaryStmt::dictname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTSDictionaryStmt.dictname) - return _internal_dictname(index); +inline ::pg_query::Node* UpdateStmt::add_target_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_target_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.UpdateStmt.target_list) + return _add; } -inline ::pg_query::Node* AlterTSDictionaryStmt::_internal_add_dictname() { - return _impl_.dictname_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& UpdateStmt::target_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.UpdateStmt.target_list) + return _internal_target_list(); } -inline ::pg_query::Node* AlterTSDictionaryStmt::add_dictname() { - ::pg_query::Node* _add = _internal_add_dictname(); - // @@protoc_insertion_point(field_add:pg_query.AlterTSDictionaryStmt.dictname) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +UpdateStmt::_internal_target_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.target_list_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTSDictionaryStmt::dictname() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTSDictionaryStmt.dictname) - return _impl_.dictname_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +UpdateStmt::_internal_mutable_target_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.target_list_; } -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int AlterTSDictionaryStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int AlterTSDictionaryStmt::options_size() const { - return _internal_options_size(); +// .pg_query.Node where_clause = 3 [json_name = "whereClause"]; +inline bool UpdateStmt::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; } -inline void AlterTSDictionaryStmt::clear_options() { - _impl_.options_.Clear(); +inline void UpdateStmt::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::Node* AlterTSDictionaryStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTSDictionaryStmt.options) - return _impl_.options_.Mutable(index); +inline const ::pg_query::Node& UpdateStmt::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.where_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTSDictionaryStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSDictionaryStmt.options) - return &_impl_.options_; +inline const ::pg_query::Node& UpdateStmt::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.where_clause) + return _internal_where_clause(); } -inline const ::pg_query::Node& AlterTSDictionaryStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline void UpdateStmt::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); + } + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.UpdateStmt.where_clause) } -inline const ::pg_query::Node& AlterTSDictionaryStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTSDictionaryStmt.options) - return _internal_options(index); +inline ::pg_query::Node* UpdateStmt::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::Node* AlterTSDictionaryStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline ::pg_query::Node* UpdateStmt::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.UpdateStmt.where_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; + return temp; } -inline ::pg_query::Node* AlterTSDictionaryStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterTSDictionaryStmt.options) - return _add; +inline ::pg_query::Node* UpdateStmt::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.where_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.where_clause_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTSDictionaryStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTSDictionaryStmt.options) - return _impl_.options_; +inline ::pg_query::Node* UpdateStmt::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_where_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.where_clause) + return _msg; } +inline void UpdateStmt::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } -// AlterTSConfigurationStmt + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.UpdateStmt.where_clause) +} -// .pg_query.AlterTSConfigType kind = 1 [json_name = "kind"]; -inline void AlterTSConfigurationStmt::clear_kind() { - _impl_.kind_ = 0; +// repeated .pg_query.Node from_clause = 4 [json_name = "fromClause"]; +inline int UpdateStmt::_internal_from_clause_size() const { + return _internal_from_clause().size(); } -inline ::pg_query::AlterTSConfigType AlterTSConfigurationStmt::_internal_kind() const { - return static_cast< ::pg_query::AlterTSConfigType >(_impl_.kind_); +inline int UpdateStmt::from_clause_size() const { + return _internal_from_clause_size(); } -inline ::pg_query::AlterTSConfigType AlterTSConfigurationStmt::kind() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.kind) - return _internal_kind(); +inline void UpdateStmt::clear_from_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.from_clause_.Clear(); } -inline void AlterTSConfigurationStmt::_internal_set_kind(::pg_query::AlterTSConfigType value) { - - _impl_.kind_ = value; +inline ::pg_query::Node* UpdateStmt::mutable_from_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.from_clause) + return _internal_mutable_from_clause()->Mutable(index); } -inline void AlterTSConfigurationStmt::set_kind(::pg_query::AlterTSConfigType value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTSConfigurationStmt.kind) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* UpdateStmt::mutable_from_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.UpdateStmt.from_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_from_clause(); } - -// repeated .pg_query.Node cfgname = 2 [json_name = "cfgname"]; -inline int AlterTSConfigurationStmt::_internal_cfgname_size() const { - return _impl_.cfgname_.size(); +inline const ::pg_query::Node& UpdateStmt::from_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.from_clause) + return _internal_from_clause().Get(index); } -inline int AlterTSConfigurationStmt::cfgname_size() const { - return _internal_cfgname_size(); +inline ::pg_query::Node* UpdateStmt::add_from_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_from_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.UpdateStmt.from_clause) + return _add; } -inline void AlterTSConfigurationStmt::clear_cfgname() { - _impl_.cfgname_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& UpdateStmt::from_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.UpdateStmt.from_clause) + return _internal_from_clause(); } -inline ::pg_query::Node* AlterTSConfigurationStmt::mutable_cfgname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTSConfigurationStmt.cfgname) - return _impl_.cfgname_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +UpdateStmt::_internal_from_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.from_clause_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTSConfigurationStmt::mutable_cfgname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSConfigurationStmt.cfgname) - return &_impl_.cfgname_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +UpdateStmt::_internal_mutable_from_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.from_clause_; } -inline const ::pg_query::Node& AlterTSConfigurationStmt::_internal_cfgname(int index) const { - return _impl_.cfgname_.Get(index); + +// repeated .pg_query.Node returning_list = 5 [json_name = "returningList"]; +inline int UpdateStmt::_internal_returning_list_size() const { + return _internal_returning_list().size(); } -inline const ::pg_query::Node& AlterTSConfigurationStmt::cfgname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.cfgname) - return _internal_cfgname(index); +inline int UpdateStmt::returning_list_size() const { + return _internal_returning_list_size(); } -inline ::pg_query::Node* AlterTSConfigurationStmt::_internal_add_cfgname() { - return _impl_.cfgname_.Add(); +inline void UpdateStmt::clear_returning_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.returning_list_.Clear(); } -inline ::pg_query::Node* AlterTSConfigurationStmt::add_cfgname() { - ::pg_query::Node* _add = _internal_add_cfgname(); - // @@protoc_insertion_point(field_add:pg_query.AlterTSConfigurationStmt.cfgname) - return _add; +inline ::pg_query::Node* UpdateStmt::mutable_returning_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.returning_list) + return _internal_mutable_returning_list()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTSConfigurationStmt::cfgname() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTSConfigurationStmt.cfgname) - return _impl_.cfgname_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* UpdateStmt::mutable_returning_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.UpdateStmt.returning_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_returning_list(); } - -// repeated .pg_query.Node tokentype = 3 [json_name = "tokentype"]; -inline int AlterTSConfigurationStmt::_internal_tokentype_size() const { - return _impl_.tokentype_.size(); +inline const ::pg_query::Node& UpdateStmt::returning_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.returning_list) + return _internal_returning_list().Get(index); } -inline int AlterTSConfigurationStmt::tokentype_size() const { - return _internal_tokentype_size(); +inline ::pg_query::Node* UpdateStmt::add_returning_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_returning_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.UpdateStmt.returning_list) + return _add; } -inline void AlterTSConfigurationStmt::clear_tokentype() { - _impl_.tokentype_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& UpdateStmt::returning_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.UpdateStmt.returning_list) + return _internal_returning_list(); } -inline ::pg_query::Node* AlterTSConfigurationStmt::mutable_tokentype(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTSConfigurationStmt.tokentype) - return _impl_.tokentype_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +UpdateStmt::_internal_returning_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.returning_list_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTSConfigurationStmt::mutable_tokentype() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSConfigurationStmt.tokentype) - return &_impl_.tokentype_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +UpdateStmt::_internal_mutable_returning_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.returning_list_; } -inline const ::pg_query::Node& AlterTSConfigurationStmt::_internal_tokentype(int index) const { - return _impl_.tokentype_.Get(index); + +// .pg_query.WithClause with_clause = 6 [json_name = "withClause"]; +inline bool UpdateStmt::has_with_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.with_clause_ != nullptr); + return value; } -inline const ::pg_query::Node& AlterTSConfigurationStmt::tokentype(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.tokentype) - return _internal_tokentype(index); +inline void UpdateStmt::clear_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.with_clause_ != nullptr) _impl_.with_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline ::pg_query::Node* AlterTSConfigurationStmt::_internal_add_tokentype() { - return _impl_.tokentype_.Add(); +inline const ::pg_query::WithClause& UpdateStmt::_internal_with_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::WithClause* p = _impl_.with_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_WithClause_default_instance_); } -inline ::pg_query::Node* AlterTSConfigurationStmt::add_tokentype() { - ::pg_query::Node* _add = _internal_add_tokentype(); - // @@protoc_insertion_point(field_add:pg_query.AlterTSConfigurationStmt.tokentype) - return _add; +inline const ::pg_query::WithClause& UpdateStmt::with_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.UpdateStmt.with_clause) + return _internal_with_clause(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTSConfigurationStmt::tokentype() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTSConfigurationStmt.tokentype) - return _impl_.tokentype_; +inline void UpdateStmt::unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.with_clause_); + } + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.UpdateStmt.with_clause) } +inline ::pg_query::WithClause* UpdateStmt::release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated .pg_query.Node dicts = 4 [json_name = "dicts"]; -inline int AlterTSConfigurationStmt::_internal_dicts_size() const { - return _impl_.dicts_.size(); + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::WithClause* released = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int AlterTSConfigurationStmt::dicts_size() const { - return _internal_dicts_size(); +inline ::pg_query::WithClause* UpdateStmt::unsafe_arena_release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.UpdateStmt.with_clause) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::WithClause* temp = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; + return temp; } -inline void AlterTSConfigurationStmt::clear_dicts() { - _impl_.dicts_.Clear(); +inline ::pg_query::WithClause* UpdateStmt::_internal_mutable_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.with_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArena()); + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(p); + } + return _impl_.with_clause_; } -inline ::pg_query::Node* AlterTSConfigurationStmt::mutable_dicts(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTSConfigurationStmt.dicts) - return _impl_.dicts_.Mutable(index); +inline ::pg_query::WithClause* UpdateStmt::mutable_with_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.UpdateStmt.with_clause) + return _msg; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTSConfigurationStmt::mutable_dicts() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSConfigurationStmt.dicts) - return &_impl_.dicts_; +inline void UpdateStmt::set_allocated_with_clause(::pg_query::WithClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::WithClause*>(_impl_.with_clause_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::WithClause*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.UpdateStmt.with_clause) } -inline const ::pg_query::Node& AlterTSConfigurationStmt::_internal_dicts(int index) const { - return _impl_.dicts_.Get(index); + +// ------------------------------------------------------------------- + +// MergeStmt + +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool MergeStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline const ::pg_query::Node& AlterTSConfigurationStmt::dicts(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.dicts) - return _internal_dicts(index); +inline void MergeStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* AlterTSConfigurationStmt::_internal_add_dicts() { - return _impl_.dicts_.Add(); +inline const ::pg_query::RangeVar& MergeStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline ::pg_query::Node* AlterTSConfigurationStmt::add_dicts() { - ::pg_query::Node* _add = _internal_add_dicts(); - // @@protoc_insertion_point(field_add:pg_query.AlterTSConfigurationStmt.dicts) - return _add; +inline const ::pg_query::RangeVar& MergeStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeStmt.relation) + return _internal_relation(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTSConfigurationStmt::dicts() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTSConfigurationStmt.dicts) - return _impl_.dicts_; +inline void MergeStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeStmt.relation) } +inline ::pg_query::RangeVar* MergeStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool override = 5 [json_name = "override"]; -inline void AlterTSConfigurationStmt::clear_override() { - _impl_.override_ = false; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool AlterTSConfigurationStmt::_internal_override() const { - return _impl_.override_; +inline ::pg_query::RangeVar* MergeStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.MergeStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline bool AlterTSConfigurationStmt::override() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.override) - return _internal_override(); +inline ::pg_query::RangeVar* MergeStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; } -inline void AlterTSConfigurationStmt::_internal_set_override(bool value) { - - _impl_.override_ = value; +inline ::pg_query::RangeVar* MergeStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.relation) + return _msg; } -inline void AlterTSConfigurationStmt::set_override(bool value) { - _internal_set_override(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTSConfigurationStmt.override) +inline void MergeStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.MergeStmt.relation) } -// bool replace = 6 [json_name = "replace"]; -inline void AlterTSConfigurationStmt::clear_replace() { - _impl_.replace_ = false; +// .pg_query.Node source_relation = 2 [json_name = "sourceRelation"]; +inline bool MergeStmt::has_source_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.source_relation_ != nullptr); + return value; } -inline bool AlterTSConfigurationStmt::_internal_replace() const { - return _impl_.replace_; +inline void MergeStmt::clear_source_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.source_relation_ != nullptr) _impl_.source_relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline bool AlterTSConfigurationStmt::replace() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.replace) - return _internal_replace(); +inline const ::pg_query::Node& MergeStmt::_internal_source_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.source_relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void AlterTSConfigurationStmt::_internal_set_replace(bool value) { - - _impl_.replace_ = value; +inline const ::pg_query::Node& MergeStmt::source_relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeStmt.source_relation) + return _internal_source_relation(); } -inline void AlterTSConfigurationStmt::set_replace(bool value) { - _internal_set_replace(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTSConfigurationStmt.replace) +inline void MergeStmt::unsafe_arena_set_allocated_source_relation(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.source_relation_); + } + _impl_.source_relation_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeStmt.source_relation) } +inline ::pg_query::Node* MergeStmt::release_source_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool missing_ok = 7 [json_name = "missing_ok"]; -inline void AlterTSConfigurationStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; -} -inline bool AlterTSConfigurationStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.source_relation_; + _impl_.source_relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool AlterTSConfigurationStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.missing_ok) - return _internal_missing_ok(); +inline ::pg_query::Node* MergeStmt::unsafe_arena_release_source_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.MergeStmt.source_relation) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.source_relation_; + _impl_.source_relation_ = nullptr; + return temp; } -inline void AlterTSConfigurationStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline ::pg_query::Node* MergeStmt::_internal_mutable_source_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.source_relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.source_relation_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.source_relation_; } -inline void AlterTSConfigurationStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTSConfigurationStmt.missing_ok) +inline ::pg_query::Node* MergeStmt::mutable_source_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_source_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.source_relation) + return _msg; } +inline void MergeStmt::set_allocated_source_relation(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.source_relation_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } -// CreateFdwStmt + _impl_.source_relation_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.MergeStmt.source_relation) +} -// string fdwname = 1 [json_name = "fdwname"]; -inline void CreateFdwStmt::clear_fdwname() { - _impl_.fdwname_.ClearToEmpty(); +// .pg_query.Node join_condition = 3 [json_name = "joinCondition"]; +inline bool MergeStmt::has_join_condition() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.join_condition_ != nullptr); + return value; } -inline const std::string& CreateFdwStmt::fdwname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateFdwStmt.fdwname) - return _internal_fdwname(); +inline void MergeStmt::clear_join_condition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.join_condition_ != nullptr) _impl_.join_condition_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateFdwStmt::set_fdwname(ArgT0&& arg0, ArgT... args) { - - _impl_.fdwname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateFdwStmt.fdwname) +inline const ::pg_query::Node& MergeStmt::_internal_join_condition() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.join_condition_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* CreateFdwStmt::mutable_fdwname() { - std::string* _s = _internal_mutable_fdwname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateFdwStmt.fdwname) - return _s; +inline const ::pg_query::Node& MergeStmt::join_condition() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeStmt.join_condition) + return _internal_join_condition(); } -inline const std::string& CreateFdwStmt::_internal_fdwname() const { - return _impl_.fdwname_.Get(); +inline void MergeStmt::unsafe_arena_set_allocated_join_condition(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.join_condition_); + } + _impl_.join_condition_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeStmt.join_condition) } -inline void CreateFdwStmt::_internal_set_fdwname(const std::string& value) { - - _impl_.fdwname_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Node* MergeStmt::release_join_condition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.join_condition_; + _impl_.join_condition_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* CreateFdwStmt::_internal_mutable_fdwname() { - - return _impl_.fdwname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* MergeStmt::unsafe_arena_release_join_condition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.MergeStmt.join_condition) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.join_condition_; + _impl_.join_condition_ = nullptr; + return temp; } -inline std::string* CreateFdwStmt::release_fdwname() { - // @@protoc_insertion_point(field_release:pg_query.CreateFdwStmt.fdwname) - return _impl_.fdwname_.Release(); +inline ::pg_query::Node* MergeStmt::_internal_mutable_join_condition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.join_condition_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.join_condition_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.join_condition_; } -inline void CreateFdwStmt::set_allocated_fdwname(std::string* fdwname) { - if (fdwname != nullptr) { - - } else { - +inline ::pg_query::Node* MergeStmt::mutable_join_condition() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_join_condition(); + // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.join_condition) + return _msg; +} +inline void MergeStmt::set_allocated_join_condition(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.join_condition_); } - _impl_.fdwname_.SetAllocated(fdwname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.fdwname_.IsDefault()) { - _impl_.fdwname_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateFdwStmt.fdwname) + + _impl_.join_condition_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.MergeStmt.join_condition) } -// repeated .pg_query.Node func_options = 2 [json_name = "func_options"]; -inline int CreateFdwStmt::_internal_func_options_size() const { - return _impl_.func_options_.size(); +// repeated .pg_query.Node merge_when_clauses = 4 [json_name = "mergeWhenClauses"]; +inline int MergeStmt::_internal_merge_when_clauses_size() const { + return _internal_merge_when_clauses().size(); } -inline int CreateFdwStmt::func_options_size() const { - return _internal_func_options_size(); +inline int MergeStmt::merge_when_clauses_size() const { + return _internal_merge_when_clauses_size(); } -inline void CreateFdwStmt::clear_func_options() { - _impl_.func_options_.Clear(); +inline void MergeStmt::clear_merge_when_clauses() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.merge_when_clauses_.Clear(); } -inline ::pg_query::Node* CreateFdwStmt::mutable_func_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateFdwStmt.func_options) - return _impl_.func_options_.Mutable(index); +inline ::pg_query::Node* MergeStmt::mutable_merge_when_clauses(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.merge_when_clauses) + return _internal_mutable_merge_when_clauses()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateFdwStmt::mutable_func_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFdwStmt.func_options) - return &_impl_.func_options_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* MergeStmt::mutable_merge_when_clauses() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.MergeStmt.merge_when_clauses) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_merge_when_clauses(); } -inline const ::pg_query::Node& CreateFdwStmt::_internal_func_options(int index) const { - return _impl_.func_options_.Get(index); +inline const ::pg_query::Node& MergeStmt::merge_when_clauses(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeStmt.merge_when_clauses) + return _internal_merge_when_clauses().Get(index); } -inline const ::pg_query::Node& CreateFdwStmt::func_options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateFdwStmt.func_options) - return _internal_func_options(index); +inline ::pg_query::Node* MergeStmt::add_merge_when_clauses() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_merge_when_clauses()->Add(); + // @@protoc_insertion_point(field_add:pg_query.MergeStmt.merge_when_clauses) + return _add; } -inline ::pg_query::Node* CreateFdwStmt::_internal_add_func_options() { - return _impl_.func_options_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& MergeStmt::merge_when_clauses() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.MergeStmt.merge_when_clauses) + return _internal_merge_when_clauses(); } -inline ::pg_query::Node* CreateFdwStmt::add_func_options() { - ::pg_query::Node* _add = _internal_add_func_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateFdwStmt.func_options) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +MergeStmt::_internal_merge_when_clauses() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.merge_when_clauses_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateFdwStmt::func_options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateFdwStmt.func_options) - return _impl_.func_options_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +MergeStmt::_internal_mutable_merge_when_clauses() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.merge_when_clauses_; } -// repeated .pg_query.Node options = 3 [json_name = "options"]; -inline int CreateFdwStmt::_internal_options_size() const { - return _impl_.options_.size(); +// .pg_query.WithClause with_clause = 5 [json_name = "withClause"]; +inline bool MergeStmt::has_with_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.with_clause_ != nullptr); + return value; } -inline int CreateFdwStmt::options_size() const { - return _internal_options_size(); +inline void MergeStmt::clear_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.with_clause_ != nullptr) _impl_.with_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000008u; } -inline void CreateFdwStmt::clear_options() { - _impl_.options_.Clear(); +inline const ::pg_query::WithClause& MergeStmt::_internal_with_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::WithClause* p = _impl_.with_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_WithClause_default_instance_); } -inline ::pg_query::Node* CreateFdwStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateFdwStmt.options) - return _impl_.options_.Mutable(index); +inline const ::pg_query::WithClause& MergeStmt::with_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.MergeStmt.with_clause) + return _internal_with_clause(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateFdwStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFdwStmt.options) - return &_impl_.options_; +inline void MergeStmt::unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.with_clause_); + } + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeStmt.with_clause) } -inline const ::pg_query::Node& CreateFdwStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::WithClause* MergeStmt::release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::WithClause* released = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& CreateFdwStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateFdwStmt.options) - return _internal_options(index); +inline ::pg_query::WithClause* MergeStmt::unsafe_arena_release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.MergeStmt.with_clause) + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::WithClause* temp = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; + return temp; } -inline ::pg_query::Node* CreateFdwStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline ::pg_query::WithClause* MergeStmt::_internal_mutable_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.with_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArena()); + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(p); + } + return _impl_.with_clause_; } -inline ::pg_query::Node* CreateFdwStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateFdwStmt.options) - return _add; +inline ::pg_query::WithClause* MergeStmt::mutable_with_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.MergeStmt.with_clause) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateFdwStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateFdwStmt.options) - return _impl_.options_; +inline void MergeStmt::set_allocated_with_clause(::pg_query::WithClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::WithClause*>(_impl_.with_clause_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::WithClause*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } + + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.MergeStmt.with_clause) } // ------------------------------------------------------------------- -// AlterFdwStmt +// SelectStmt -// string fdwname = 1 [json_name = "fdwname"]; -inline void AlterFdwStmt::clear_fdwname() { - _impl_.fdwname_.ClearToEmpty(); +// repeated .pg_query.Node distinct_clause = 1 [json_name = "distinctClause"]; +inline int SelectStmt::_internal_distinct_clause_size() const { + return _internal_distinct_clause().size(); } -inline const std::string& AlterFdwStmt::fdwname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterFdwStmt.fdwname) - return _internal_fdwname(); +inline int SelectStmt::distinct_clause_size() const { + return _internal_distinct_clause_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterFdwStmt::set_fdwname(ArgT0&& arg0, ArgT... args) { - - _impl_.fdwname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterFdwStmt.fdwname) +inline void SelectStmt::clear_distinct_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.distinct_clause_.Clear(); } -inline std::string* AlterFdwStmt::mutable_fdwname() { - std::string* _s = _internal_mutable_fdwname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterFdwStmt.fdwname) - return _s; +inline ::pg_query::Node* SelectStmt::mutable_distinct_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.distinct_clause) + return _internal_mutable_distinct_clause()->Mutable(index); } -inline const std::string& AlterFdwStmt::_internal_fdwname() const { - return _impl_.fdwname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SelectStmt::mutable_distinct_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.distinct_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_distinct_clause(); } -inline void AlterFdwStmt::_internal_set_fdwname(const std::string& value) { - - _impl_.fdwname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& SelectStmt::distinct_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.distinct_clause) + return _internal_distinct_clause().Get(index); } -inline std::string* AlterFdwStmt::_internal_mutable_fdwname() { - - return _impl_.fdwname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* SelectStmt::add_distinct_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_distinct_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SelectStmt.distinct_clause) + return _add; } -inline std::string* AlterFdwStmt::release_fdwname() { - // @@protoc_insertion_point(field_release:pg_query.AlterFdwStmt.fdwname) - return _impl_.fdwname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SelectStmt::distinct_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SelectStmt.distinct_clause) + return _internal_distinct_clause(); } -inline void AlterFdwStmt::set_allocated_fdwname(std::string* fdwname) { - if (fdwname != nullptr) { - - } else { - - } - _impl_.fdwname_.SetAllocated(fdwname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.fdwname_.IsDefault()) { - _impl_.fdwname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterFdwStmt.fdwname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SelectStmt::_internal_distinct_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.distinct_clause_; } - -// repeated .pg_query.Node func_options = 2 [json_name = "func_options"]; -inline int AlterFdwStmt::_internal_func_options_size() const { - return _impl_.func_options_.size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SelectStmt::_internal_mutable_distinct_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.distinct_clause_; } -inline int AlterFdwStmt::func_options_size() const { - return _internal_func_options_size(); + +// .pg_query.IntoClause into_clause = 2 [json_name = "intoClause"]; +inline bool SelectStmt::has_into_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.into_clause_ != nullptr); + return value; } -inline void AlterFdwStmt::clear_func_options() { - _impl_.func_options_.Clear(); +inline void SelectStmt::clear_into_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.into_clause_ != nullptr) _impl_.into_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* AlterFdwStmt::mutable_func_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterFdwStmt.func_options) - return _impl_.func_options_.Mutable(index); +inline const ::pg_query::IntoClause& SelectStmt::_internal_into_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::IntoClause* p = _impl_.into_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_IntoClause_default_instance_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterFdwStmt::mutable_func_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterFdwStmt.func_options) - return &_impl_.func_options_; +inline const ::pg_query::IntoClause& SelectStmt::into_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.into_clause) + return _internal_into_clause(); } -inline const ::pg_query::Node& AlterFdwStmt::_internal_func_options(int index) const { - return _impl_.func_options_.Get(index); +inline void SelectStmt::unsafe_arena_set_allocated_into_clause(::pg_query::IntoClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.into_clause_); + } + _impl_.into_clause_ = reinterpret_cast<::pg_query::IntoClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.into_clause) } -inline const ::pg_query::Node& AlterFdwStmt::func_options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterFdwStmt.func_options) - return _internal_func_options(index); +inline ::pg_query::IntoClause* SelectStmt::release_into_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::IntoClause* released = _impl_.into_clause_; + _impl_.into_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::Node* AlterFdwStmt::_internal_add_func_options() { - return _impl_.func_options_.Add(); +inline ::pg_query::IntoClause* SelectStmt::unsafe_arena_release_into_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SelectStmt.into_clause) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::IntoClause* temp = _impl_.into_clause_; + _impl_.into_clause_ = nullptr; + return temp; } -inline ::pg_query::Node* AlterFdwStmt::add_func_options() { - ::pg_query::Node* _add = _internal_add_func_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterFdwStmt.func_options) - return _add; +inline ::pg_query::IntoClause* SelectStmt::_internal_mutable_into_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.into_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::IntoClause>(GetArena()); + _impl_.into_clause_ = reinterpret_cast<::pg_query::IntoClause*>(p); + } + return _impl_.into_clause_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterFdwStmt::func_options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterFdwStmt.func_options) - return _impl_.func_options_; +inline ::pg_query::IntoClause* SelectStmt::mutable_into_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::IntoClause* _msg = _internal_mutable_into_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.into_clause) + return _msg; } +inline void SelectStmt::set_allocated_into_clause(::pg_query::IntoClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::IntoClause*>(_impl_.into_clause_); + } -// repeated .pg_query.Node options = 3 [json_name = "options"]; -inline int AlterFdwStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int AlterFdwStmt::options_size() const { - return _internal_options_size(); + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::IntoClause*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.into_clause_ = reinterpret_cast<::pg_query::IntoClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.into_clause) } -inline void AlterFdwStmt::clear_options() { - _impl_.options_.Clear(); + +// repeated .pg_query.Node target_list = 3 [json_name = "targetList"]; +inline int SelectStmt::_internal_target_list_size() const { + return _internal_target_list().size(); } -inline ::pg_query::Node* AlterFdwStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterFdwStmt.options) - return _impl_.options_.Mutable(index); +inline int SelectStmt::target_list_size() const { + return _internal_target_list_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterFdwStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterFdwStmt.options) - return &_impl_.options_; +inline void SelectStmt::clear_target_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.target_list_.Clear(); } -inline const ::pg_query::Node& AlterFdwStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::Node* SelectStmt::mutable_target_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.target_list) + return _internal_mutable_target_list()->Mutable(index); } -inline const ::pg_query::Node& AlterFdwStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterFdwStmt.options) - return _internal_options(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SelectStmt::mutable_target_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.target_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_target_list(); } -inline ::pg_query::Node* AlterFdwStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::pg_query::Node& SelectStmt::target_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.target_list) + return _internal_target_list().Get(index); } -inline ::pg_query::Node* AlterFdwStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterFdwStmt.options) +inline ::pg_query::Node* SelectStmt::add_target_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_target_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SelectStmt.target_list) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterFdwStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterFdwStmt.options) - return _impl_.options_; -} - -// ------------------------------------------------------------------- - -// CreateForeignServerStmt - -// string servername = 1 [json_name = "servername"]; -inline void CreateForeignServerStmt::clear_servername() { - _impl_.servername_.ClearToEmpty(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SelectStmt::target_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SelectStmt.target_list) + return _internal_target_list(); } -inline const std::string& CreateForeignServerStmt::servername() const { - // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.servername) - return _internal_servername(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SelectStmt::_internal_target_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.target_list_; } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateForeignServerStmt::set_servername(ArgT0&& arg0, ArgT... args) { - - _impl_.servername_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.servername) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SelectStmt::_internal_mutable_target_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.target_list_; } -inline std::string* CreateForeignServerStmt::mutable_servername() { - std::string* _s = _internal_mutable_servername(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.servername) - return _s; + +// repeated .pg_query.Node from_clause = 4 [json_name = "fromClause"]; +inline int SelectStmt::_internal_from_clause_size() const { + return _internal_from_clause().size(); } -inline const std::string& CreateForeignServerStmt::_internal_servername() const { - return _impl_.servername_.Get(); +inline int SelectStmt::from_clause_size() const { + return _internal_from_clause_size(); } -inline void CreateForeignServerStmt::_internal_set_servername(const std::string& value) { - - _impl_.servername_.Set(value, GetArenaForAllocation()); +inline void SelectStmt::clear_from_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.from_clause_.Clear(); } -inline std::string* CreateForeignServerStmt::_internal_mutable_servername() { - - return _impl_.servername_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* SelectStmt::mutable_from_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.from_clause) + return _internal_mutable_from_clause()->Mutable(index); } -inline std::string* CreateForeignServerStmt::release_servername() { - // @@protoc_insertion_point(field_release:pg_query.CreateForeignServerStmt.servername) - return _impl_.servername_.Release(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SelectStmt::mutable_from_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.from_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_from_clause(); } -inline void CreateForeignServerStmt::set_allocated_servername(std::string* servername) { - if (servername != nullptr) { - - } else { - - } - _impl_.servername_.SetAllocated(servername, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.servername_.IsDefault()) { - _impl_.servername_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignServerStmt.servername) +inline const ::pg_query::Node& SelectStmt::from_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.from_clause) + return _internal_from_clause().Get(index); } - -// string servertype = 2 [json_name = "servertype"]; -inline void CreateForeignServerStmt::clear_servertype() { - _impl_.servertype_.ClearToEmpty(); +inline ::pg_query::Node* SelectStmt::add_from_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_from_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SelectStmt.from_clause) + return _add; } -inline const std::string& CreateForeignServerStmt::servertype() const { - // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.servertype) - return _internal_servertype(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SelectStmt::from_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SelectStmt.from_clause) + return _internal_from_clause(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateForeignServerStmt::set_servertype(ArgT0&& arg0, ArgT... args) { - - _impl_.servertype_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.servertype) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SelectStmt::_internal_from_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.from_clause_; } -inline std::string* CreateForeignServerStmt::mutable_servertype() { - std::string* _s = _internal_mutable_servertype(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.servertype) - return _s; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SelectStmt::_internal_mutable_from_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.from_clause_; } -inline const std::string& CreateForeignServerStmt::_internal_servertype() const { - return _impl_.servertype_.Get(); + +// .pg_query.Node where_clause = 5 [json_name = "whereClause"]; +inline bool SelectStmt::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; } -inline void CreateForeignServerStmt::_internal_set_servertype(const std::string& value) { - - _impl_.servertype_.Set(value, GetArenaForAllocation()); +inline void SelectStmt::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline std::string* CreateForeignServerStmt::_internal_mutable_servertype() { - - return _impl_.servertype_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Node& SelectStmt::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.where_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* CreateForeignServerStmt::release_servertype() { - // @@protoc_insertion_point(field_release:pg_query.CreateForeignServerStmt.servertype) - return _impl_.servertype_.Release(); +inline const ::pg_query::Node& SelectStmt::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.where_clause) + return _internal_where_clause(); } -inline void CreateForeignServerStmt::set_allocated_servertype(std::string* servertype) { - if (servertype != nullptr) { - - } else { - +inline void SelectStmt::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); } - _impl_.servertype_.SetAllocated(servertype, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.servertype_.IsDefault()) { - _impl_.servertype_.Set("", GetArenaForAllocation()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignServerStmt.servertype) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.where_clause) } +inline ::pg_query::Node* SelectStmt::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// string version = 3 [json_name = "version"]; -inline void CreateForeignServerStmt::clear_version() { - _impl_.version_.ClearToEmpty(); -} -inline const std::string& CreateForeignServerStmt::version() const { - // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.version) - return _internal_version(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CreateForeignServerStmt::set_version(ArgT0&& arg0, ArgT... args) { - - _impl_.version_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.version) -} -inline std::string* CreateForeignServerStmt::mutable_version() { - std::string* _s = _internal_mutable_version(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.version) - return _s; -} -inline const std::string& CreateForeignServerStmt::_internal_version() const { - return _impl_.version_.Get(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline void CreateForeignServerStmt::_internal_set_version(const std::string& value) { - - _impl_.version_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Node* SelectStmt::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SelectStmt.where_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; + return temp; } -inline std::string* CreateForeignServerStmt::_internal_mutable_version() { - - return _impl_.version_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* SelectStmt::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.where_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.where_clause_; } -inline std::string* CreateForeignServerStmt::release_version() { - // @@protoc_insertion_point(field_release:pg_query.CreateForeignServerStmt.version) - return _impl_.version_.Release(); +inline ::pg_query::Node* SelectStmt::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_where_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.where_clause) + return _msg; } -inline void CreateForeignServerStmt::set_allocated_version(std::string* version) { - if (version != nullptr) { - - } else { - +inline void SelectStmt::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); } - _impl_.version_.SetAllocated(version, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.version_.IsDefault()) { - _impl_.version_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignServerStmt.version) + + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.where_clause) } -// string fdwname = 4 [json_name = "fdwname"]; -inline void CreateForeignServerStmt::clear_fdwname() { - _impl_.fdwname_.ClearToEmpty(); +// repeated .pg_query.Node group_clause = 6 [json_name = "groupClause"]; +inline int SelectStmt::_internal_group_clause_size() const { + return _internal_group_clause().size(); } -inline const std::string& CreateForeignServerStmt::fdwname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.fdwname) - return _internal_fdwname(); +inline int SelectStmt::group_clause_size() const { + return _internal_group_clause_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateForeignServerStmt::set_fdwname(ArgT0&& arg0, ArgT... args) { - - _impl_.fdwname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.fdwname) +inline void SelectStmt::clear_group_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.group_clause_.Clear(); } -inline std::string* CreateForeignServerStmt::mutable_fdwname() { - std::string* _s = _internal_mutable_fdwname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.fdwname) - return _s; +inline ::pg_query::Node* SelectStmt::mutable_group_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.group_clause) + return _internal_mutable_group_clause()->Mutable(index); } -inline const std::string& CreateForeignServerStmt::_internal_fdwname() const { - return _impl_.fdwname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SelectStmt::mutable_group_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.group_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_group_clause(); } -inline void CreateForeignServerStmt::_internal_set_fdwname(const std::string& value) { - - _impl_.fdwname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& SelectStmt::group_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.group_clause) + return _internal_group_clause().Get(index); } -inline std::string* CreateForeignServerStmt::_internal_mutable_fdwname() { - - return _impl_.fdwname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* SelectStmt::add_group_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_group_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SelectStmt.group_clause) + return _add; } -inline std::string* CreateForeignServerStmt::release_fdwname() { - // @@protoc_insertion_point(field_release:pg_query.CreateForeignServerStmt.fdwname) - return _impl_.fdwname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SelectStmt::group_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SelectStmt.group_clause) + return _internal_group_clause(); } -inline void CreateForeignServerStmt::set_allocated_fdwname(std::string* fdwname) { - if (fdwname != nullptr) { - - } else { - - } - _impl_.fdwname_.SetAllocated(fdwname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.fdwname_.IsDefault()) { - _impl_.fdwname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignServerStmt.fdwname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SelectStmt::_internal_group_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.group_clause_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SelectStmt::_internal_mutable_group_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.group_clause_; } -// bool if_not_exists = 5 [json_name = "if_not_exists"]; -inline void CreateForeignServerStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +// bool group_distinct = 7 [json_name = "groupDistinct"]; +inline void SelectStmt::clear_group_distinct() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.group_distinct_ = false; } -inline bool CreateForeignServerStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline bool SelectStmt::group_distinct() const { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.group_distinct) + return _internal_group_distinct(); } -inline bool CreateForeignServerStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.if_not_exists) - return _internal_if_not_exists(); +inline void SelectStmt::set_group_distinct(bool value) { + _internal_set_group_distinct(value); + // @@protoc_insertion_point(field_set:pg_query.SelectStmt.group_distinct) } -inline void CreateForeignServerStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline bool SelectStmt::_internal_group_distinct() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.group_distinct_; } -inline void CreateForeignServerStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.if_not_exists) +inline void SelectStmt::_internal_set_group_distinct(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.group_distinct_ = value; } -// repeated .pg_query.Node options = 6 [json_name = "options"]; -inline int CreateForeignServerStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int CreateForeignServerStmt::options_size() const { - return _internal_options_size(); +// .pg_query.Node having_clause = 8 [json_name = "havingClause"]; +inline bool SelectStmt::has_having_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.having_clause_ != nullptr); + return value; } -inline void CreateForeignServerStmt::clear_options() { - _impl_.options_.Clear(); +inline void SelectStmt::clear_having_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.having_clause_ != nullptr) _impl_.having_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline ::pg_query::Node* CreateForeignServerStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.options) - return _impl_.options_.Mutable(index); +inline const ::pg_query::Node& SelectStmt::_internal_having_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.having_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateForeignServerStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateForeignServerStmt.options) - return &_impl_.options_; +inline const ::pg_query::Node& SelectStmt::having_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.having_clause) + return _internal_having_clause(); } -inline const ::pg_query::Node& CreateForeignServerStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline void SelectStmt::unsafe_arena_set_allocated_having_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.having_clause_); + } + _impl_.having_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.having_clause) } -inline const ::pg_query::Node& CreateForeignServerStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.options) - return _internal_options(index); +inline ::pg_query::Node* SelectStmt::release_having_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.having_clause_; + _impl_.having_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::Node* CreateForeignServerStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline ::pg_query::Node* SelectStmt::unsafe_arena_release_having_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SelectStmt.having_clause) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.having_clause_; + _impl_.having_clause_ = nullptr; + return temp; } -inline ::pg_query::Node* CreateForeignServerStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateForeignServerStmt.options) - return _add; +inline ::pg_query::Node* SelectStmt::_internal_mutable_having_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.having_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.having_clause_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.having_clause_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateForeignServerStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateForeignServerStmt.options) - return _impl_.options_; +inline ::pg_query::Node* SelectStmt::mutable_having_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_having_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.having_clause) + return _msg; } +inline void SelectStmt::set_allocated_having_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.having_clause_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } -// AlterForeignServerStmt + _impl_.having_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.having_clause) +} -// string servername = 1 [json_name = "servername"]; -inline void AlterForeignServerStmt::clear_servername() { - _impl_.servername_.ClearToEmpty(); +// repeated .pg_query.Node window_clause = 9 [json_name = "windowClause"]; +inline int SelectStmt::_internal_window_clause_size() const { + return _internal_window_clause().size(); } -inline const std::string& AlterForeignServerStmt::servername() const { - // @@protoc_insertion_point(field_get:pg_query.AlterForeignServerStmt.servername) - return _internal_servername(); +inline int SelectStmt::window_clause_size() const { + return _internal_window_clause_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterForeignServerStmt::set_servername(ArgT0&& arg0, ArgT... args) { - - _impl_.servername_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterForeignServerStmt.servername) +inline void SelectStmt::clear_window_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.window_clause_.Clear(); } -inline std::string* AlterForeignServerStmt::mutable_servername() { - std::string* _s = _internal_mutable_servername(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterForeignServerStmt.servername) - return _s; +inline ::pg_query::Node* SelectStmt::mutable_window_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.window_clause) + return _internal_mutable_window_clause()->Mutable(index); } -inline const std::string& AlterForeignServerStmt::_internal_servername() const { - return _impl_.servername_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SelectStmt::mutable_window_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.window_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_window_clause(); } -inline void AlterForeignServerStmt::_internal_set_servername(const std::string& value) { - - _impl_.servername_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& SelectStmt::window_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.window_clause) + return _internal_window_clause().Get(index); } -inline std::string* AlterForeignServerStmt::_internal_mutable_servername() { - - return _impl_.servername_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* SelectStmt::add_window_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_window_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SelectStmt.window_clause) + return _add; } -inline std::string* AlterForeignServerStmt::release_servername() { - // @@protoc_insertion_point(field_release:pg_query.AlterForeignServerStmt.servername) - return _impl_.servername_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SelectStmt::window_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SelectStmt.window_clause) + return _internal_window_clause(); } -inline void AlterForeignServerStmt::set_allocated_servername(std::string* servername) { - if (servername != nullptr) { - - } else { - - } - _impl_.servername_.SetAllocated(servername, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.servername_.IsDefault()) { - _impl_.servername_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterForeignServerStmt.servername) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SelectStmt::_internal_window_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.window_clause_; } - -// string version = 2 [json_name = "version"]; -inline void AlterForeignServerStmt::clear_version() { - _impl_.version_.ClearToEmpty(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SelectStmt::_internal_mutable_window_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.window_clause_; } -inline const std::string& AlterForeignServerStmt::version() const { - // @@protoc_insertion_point(field_get:pg_query.AlterForeignServerStmt.version) - return _internal_version(); + +// repeated .pg_query.Node values_lists = 10 [json_name = "valuesLists"]; +inline int SelectStmt::_internal_values_lists_size() const { + return _internal_values_lists().size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterForeignServerStmt::set_version(ArgT0&& arg0, ArgT... args) { - - _impl_.version_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterForeignServerStmt.version) +inline int SelectStmt::values_lists_size() const { + return _internal_values_lists_size(); } -inline std::string* AlterForeignServerStmt::mutable_version() { - std::string* _s = _internal_mutable_version(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterForeignServerStmt.version) - return _s; +inline void SelectStmt::clear_values_lists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.values_lists_.Clear(); } -inline const std::string& AlterForeignServerStmt::_internal_version() const { - return _impl_.version_.Get(); +inline ::pg_query::Node* SelectStmt::mutable_values_lists(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.values_lists) + return _internal_mutable_values_lists()->Mutable(index); } -inline void AlterForeignServerStmt::_internal_set_version(const std::string& value) { - - _impl_.version_.Set(value, GetArenaForAllocation()); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SelectStmt::mutable_values_lists() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.values_lists) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_values_lists(); } -inline std::string* AlterForeignServerStmt::_internal_mutable_version() { - - return _impl_.version_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Node& SelectStmt::values_lists(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.values_lists) + return _internal_values_lists().Get(index); } -inline std::string* AlterForeignServerStmt::release_version() { - // @@protoc_insertion_point(field_release:pg_query.AlterForeignServerStmt.version) - return _impl_.version_.Release(); +inline ::pg_query::Node* SelectStmt::add_values_lists() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_values_lists()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SelectStmt.values_lists) + return _add; } -inline void AlterForeignServerStmt::set_allocated_version(std::string* version) { - if (version != nullptr) { - - } else { - - } - _impl_.version_.SetAllocated(version, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.version_.IsDefault()) { - _impl_.version_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterForeignServerStmt.version) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SelectStmt::values_lists() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SelectStmt.values_lists) + return _internal_values_lists(); } - -// repeated .pg_query.Node options = 3 [json_name = "options"]; -inline int AlterForeignServerStmt::_internal_options_size() const { - return _impl_.options_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SelectStmt::_internal_values_lists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.values_lists_; } -inline int AlterForeignServerStmt::options_size() const { - return _internal_options_size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SelectStmt::_internal_mutable_values_lists() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.values_lists_; } -inline void AlterForeignServerStmt::clear_options() { - _impl_.options_.Clear(); + +// repeated .pg_query.Node sort_clause = 11 [json_name = "sortClause"]; +inline int SelectStmt::_internal_sort_clause_size() const { + return _internal_sort_clause().size(); } -inline ::pg_query::Node* AlterForeignServerStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterForeignServerStmt.options) - return _impl_.options_.Mutable(index); +inline int SelectStmt::sort_clause_size() const { + return _internal_sort_clause_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterForeignServerStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterForeignServerStmt.options) - return &_impl_.options_; +inline void SelectStmt::clear_sort_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.sort_clause_.Clear(); } -inline const ::pg_query::Node& AlterForeignServerStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::Node* SelectStmt::mutable_sort_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.sort_clause) + return _internal_mutable_sort_clause()->Mutable(index); } -inline const ::pg_query::Node& AlterForeignServerStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterForeignServerStmt.options) - return _internal_options(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SelectStmt::mutable_sort_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.sort_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_sort_clause(); } -inline ::pg_query::Node* AlterForeignServerStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::pg_query::Node& SelectStmt::sort_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.sort_clause) + return _internal_sort_clause().Get(index); } -inline ::pg_query::Node* AlterForeignServerStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterForeignServerStmt.options) +inline ::pg_query::Node* SelectStmt::add_sort_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_sort_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SelectStmt.sort_clause) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterForeignServerStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterForeignServerStmt.options) - return _impl_.options_; -} - -// bool has_version = 4 [json_name = "has_version"]; -inline void AlterForeignServerStmt::clear_has_version() { - _impl_.has_version_ = false; -} -inline bool AlterForeignServerStmt::_internal_has_version() const { - return _impl_.has_version_; -} -inline bool AlterForeignServerStmt::has_version() const { - // @@protoc_insertion_point(field_get:pg_query.AlterForeignServerStmt.has_version) - return _internal_has_version(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SelectStmt::sort_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SelectStmt.sort_clause) + return _internal_sort_clause(); } -inline void AlterForeignServerStmt::_internal_set_has_version(bool value) { - - _impl_.has_version_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SelectStmt::_internal_sort_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.sort_clause_; } -inline void AlterForeignServerStmt::set_has_version(bool value) { - _internal_set_has_version(value); - // @@protoc_insertion_point(field_set:pg_query.AlterForeignServerStmt.has_version) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SelectStmt::_internal_mutable_sort_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.sort_clause_; } -// ------------------------------------------------------------------- - -// CreateUserMappingStmt - -// .pg_query.RoleSpec user = 1 [json_name = "user"]; -inline bool CreateUserMappingStmt::_internal_has_user() const { - return this != internal_default_instance() && _impl_.user_ != nullptr; -} -inline bool CreateUserMappingStmt::has_user() const { - return _internal_has_user(); +// .pg_query.Node limit_offset = 12 [json_name = "limitOffset"]; +inline bool SelectStmt::has_limit_offset() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.limit_offset_ != nullptr); + return value; } -inline void CreateUserMappingStmt::clear_user() { - if (GetArenaForAllocation() == nullptr && _impl_.user_ != nullptr) { - delete _impl_.user_; - } - _impl_.user_ = nullptr; +inline void SelectStmt::clear_limit_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.limit_offset_ != nullptr) _impl_.limit_offset_->Clear(); + _impl_._has_bits_[0] &= ~0x00000008u; } -inline const ::pg_query::RoleSpec& CreateUserMappingStmt::_internal_user() const { - const ::pg_query::RoleSpec* p = _impl_.user_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::Node& SelectStmt::_internal_limit_offset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.limit_offset_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::RoleSpec& CreateUserMappingStmt::user() const { - // @@protoc_insertion_point(field_get:pg_query.CreateUserMappingStmt.user) - return _internal_user(); +inline const ::pg_query::Node& SelectStmt::limit_offset() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.limit_offset) + return _internal_limit_offset(); } -inline void CreateUserMappingStmt::unsafe_arena_set_allocated_user( - ::pg_query::RoleSpec* user) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.user_); +inline void SelectStmt::unsafe_arena_set_allocated_limit_offset(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.limit_offset_); } - _impl_.user_ = user; - if (user) { - + _impl_.limit_offset_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateUserMappingStmt.user) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.limit_offset) } -inline ::pg_query::RoleSpec* CreateUserMappingStmt::release_user() { - - ::pg_query::RoleSpec* temp = _impl_.user_; - _impl_.user_ = nullptr; +inline ::pg_query::Node* SelectStmt::release_limit_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::Node* released = _impl_.limit_offset_; + _impl_.limit_offset_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* CreateUserMappingStmt::unsafe_arena_release_user() { - // @@protoc_insertion_point(field_release:pg_query.CreateUserMappingStmt.user) - - ::pg_query::RoleSpec* temp = _impl_.user_; - _impl_.user_ = nullptr; +inline ::pg_query::Node* SelectStmt::unsafe_arena_release_limit_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SelectStmt.limit_offset) + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::Node* temp = _impl_.limit_offset_; + _impl_.limit_offset_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* CreateUserMappingStmt::_internal_mutable_user() { - - if (_impl_.user_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.user_ = p; +inline ::pg_query::Node* SelectStmt::_internal_mutable_limit_offset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.limit_offset_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.limit_offset_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.user_; + return _impl_.limit_offset_; } -inline ::pg_query::RoleSpec* CreateUserMappingStmt::mutable_user() { - ::pg_query::RoleSpec* _msg = _internal_mutable_user(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateUserMappingStmt.user) +inline ::pg_query::Node* SelectStmt::mutable_limit_offset() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_limit_offset(); + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.limit_offset) return _msg; } -inline void CreateUserMappingStmt::set_allocated_user(::pg_query::RoleSpec* user) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SelectStmt::set_allocated_limit_offset(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.user_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.limit_offset_); } - if (user) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(user); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - user = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, user, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; } - _impl_.user_ = user; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateUserMappingStmt.user) + + _impl_.limit_offset_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.limit_offset) } -// string servername = 2 [json_name = "servername"]; -inline void CreateUserMappingStmt::clear_servername() { - _impl_.servername_.ClearToEmpty(); +// .pg_query.Node limit_count = 13 [json_name = "limitCount"]; +inline bool SelectStmt::has_limit_count() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + PROTOBUF_ASSUME(!value || _impl_.limit_count_ != nullptr); + return value; } -inline const std::string& CreateUserMappingStmt::servername() const { - // @@protoc_insertion_point(field_get:pg_query.CreateUserMappingStmt.servername) - return _internal_servername(); +inline void SelectStmt::clear_limit_count() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.limit_count_ != nullptr) _impl_.limit_count_->Clear(); + _impl_._has_bits_[0] &= ~0x00000010u; } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateUserMappingStmt::set_servername(ArgT0&& arg0, ArgT... args) { - - _impl_.servername_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateUserMappingStmt.servername) +inline const ::pg_query::Node& SelectStmt::_internal_limit_count() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.limit_count_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* CreateUserMappingStmt::mutable_servername() { - std::string* _s = _internal_mutable_servername(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateUserMappingStmt.servername) - return _s; +inline const ::pg_query::Node& SelectStmt::limit_count() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.limit_count) + return _internal_limit_count(); } -inline const std::string& CreateUserMappingStmt::_internal_servername() const { - return _impl_.servername_.Get(); +inline void SelectStmt::unsafe_arena_set_allocated_limit_count(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.limit_count_); + } + _impl_.limit_count_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000010u; + } else { + _impl_._has_bits_[0] &= ~0x00000010u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.limit_count) } -inline void CreateUserMappingStmt::_internal_set_servername(const std::string& value) { - - _impl_.servername_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Node* SelectStmt::release_limit_count() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::Node* released = _impl_.limit_count_; + _impl_.limit_count_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* CreateUserMappingStmt::_internal_mutable_servername() { - - return _impl_.servername_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* SelectStmt::unsafe_arena_release_limit_count() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SelectStmt.limit_count) + + _impl_._has_bits_[0] &= ~0x00000010u; + ::pg_query::Node* temp = _impl_.limit_count_; + _impl_.limit_count_ = nullptr; + return temp; } -inline std::string* CreateUserMappingStmt::release_servername() { - // @@protoc_insertion_point(field_release:pg_query.CreateUserMappingStmt.servername) - return _impl_.servername_.Release(); +inline ::pg_query::Node* SelectStmt::_internal_mutable_limit_count() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000010u; + if (_impl_.limit_count_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.limit_count_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.limit_count_; } -inline void CreateUserMappingStmt::set_allocated_servername(std::string* servername) { - if (servername != nullptr) { - - } else { - +inline ::pg_query::Node* SelectStmt::mutable_limit_count() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_limit_count(); + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.limit_count) + return _msg; +} +inline void SelectStmt::set_allocated_limit_count(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.limit_count_); } - _impl_.servername_.SetAllocated(servername, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.servername_.IsDefault()) { - _impl_.servername_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000010u; + } else { + _impl_._has_bits_[0] &= ~0x00000010u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateUserMappingStmt.servername) + + _impl_.limit_count_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.limit_count) } -// bool if_not_exists = 3 [json_name = "if_not_exists"]; -inline void CreateUserMappingStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +// .pg_query.LimitOption limit_option = 14 [json_name = "limitOption"]; +inline void SelectStmt::clear_limit_option() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.limit_option_ = 0; } -inline bool CreateUserMappingStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline ::pg_query::LimitOption SelectStmt::limit_option() const { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.limit_option) + return _internal_limit_option(); } -inline bool CreateUserMappingStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.CreateUserMappingStmt.if_not_exists) - return _internal_if_not_exists(); +inline void SelectStmt::set_limit_option(::pg_query::LimitOption value) { + _internal_set_limit_option(value); + // @@protoc_insertion_point(field_set:pg_query.SelectStmt.limit_option) } -inline void CreateUserMappingStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline ::pg_query::LimitOption SelectStmt::_internal_limit_option() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::LimitOption>(_impl_.limit_option_); } -inline void CreateUserMappingStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.CreateUserMappingStmt.if_not_exists) +inline void SelectStmt::_internal_set_limit_option(::pg_query::LimitOption value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.limit_option_ = value; } -// repeated .pg_query.Node options = 4 [json_name = "options"]; -inline int CreateUserMappingStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int CreateUserMappingStmt::options_size() const { - return _internal_options_size(); -} -inline void CreateUserMappingStmt::clear_options() { - _impl_.options_.Clear(); +// repeated .pg_query.Node locking_clause = 15 [json_name = "lockingClause"]; +inline int SelectStmt::_internal_locking_clause_size() const { + return _internal_locking_clause().size(); } -inline ::pg_query::Node* CreateUserMappingStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateUserMappingStmt.options) - return _impl_.options_.Mutable(index); +inline int SelectStmt::locking_clause_size() const { + return _internal_locking_clause_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateUserMappingStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateUserMappingStmt.options) - return &_impl_.options_; +inline void SelectStmt::clear_locking_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.locking_clause_.Clear(); } -inline const ::pg_query::Node& CreateUserMappingStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::Node* SelectStmt::mutable_locking_clause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.locking_clause) + return _internal_mutable_locking_clause()->Mutable(index); } -inline const ::pg_query::Node& CreateUserMappingStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateUserMappingStmt.options) - return _internal_options(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SelectStmt::mutable_locking_clause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SelectStmt.locking_clause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_locking_clause(); } -inline ::pg_query::Node* CreateUserMappingStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::pg_query::Node& SelectStmt::locking_clause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.locking_clause) + return _internal_locking_clause().Get(index); } -inline ::pg_query::Node* CreateUserMappingStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateUserMappingStmt.options) +inline ::pg_query::Node* SelectStmt::add_locking_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_locking_clause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SelectStmt.locking_clause) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateUserMappingStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateUserMappingStmt.options) - return _impl_.options_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SelectStmt::locking_clause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SelectStmt.locking_clause) + return _internal_locking_clause(); } - -// ------------------------------------------------------------------- - -// AlterUserMappingStmt - -// .pg_query.RoleSpec user = 1 [json_name = "user"]; -inline bool AlterUserMappingStmt::_internal_has_user() const { - return this != internal_default_instance() && _impl_.user_ != nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SelectStmt::_internal_locking_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.locking_clause_; } -inline bool AlterUserMappingStmt::has_user() const { - return _internal_has_user(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SelectStmt::_internal_mutable_locking_clause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.locking_clause_; } -inline void AlterUserMappingStmt::clear_user() { - if (GetArenaForAllocation() == nullptr && _impl_.user_ != nullptr) { - delete _impl_.user_; - } - _impl_.user_ = nullptr; + +// .pg_query.WithClause with_clause = 16 [json_name = "withClause"]; +inline bool SelectStmt::has_with_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; + PROTOBUF_ASSUME(!value || _impl_.with_clause_ != nullptr); + return value; } -inline const ::pg_query::RoleSpec& AlterUserMappingStmt::_internal_user() const { - const ::pg_query::RoleSpec* p = _impl_.user_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline void SelectStmt::clear_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.with_clause_ != nullptr) _impl_.with_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000020u; } -inline const ::pg_query::RoleSpec& AlterUserMappingStmt::user() const { - // @@protoc_insertion_point(field_get:pg_query.AlterUserMappingStmt.user) - return _internal_user(); +inline const ::pg_query::WithClause& SelectStmt::_internal_with_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::WithClause* p = _impl_.with_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_WithClause_default_instance_); +} +inline const ::pg_query::WithClause& SelectStmt::with_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.with_clause) + return _internal_with_clause(); } -inline void AlterUserMappingStmt::unsafe_arena_set_allocated_user( - ::pg_query::RoleSpec* user) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.user_); +inline void SelectStmt::unsafe_arena_set_allocated_with_clause(::pg_query::WithClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.with_clause_); } - _impl_.user_ = user; - if (user) { - + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000020u; } else { - + _impl_._has_bits_[0] &= ~0x00000020u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterUserMappingStmt.user) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.with_clause) } -inline ::pg_query::RoleSpec* AlterUserMappingStmt::release_user() { - - ::pg_query::RoleSpec* temp = _impl_.user_; - _impl_.user_ = nullptr; +inline ::pg_query::WithClause* SelectStmt::release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000020u; + ::pg_query::WithClause* released = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* AlterUserMappingStmt::unsafe_arena_release_user() { - // @@protoc_insertion_point(field_release:pg_query.AlterUserMappingStmt.user) - - ::pg_query::RoleSpec* temp = _impl_.user_; - _impl_.user_ = nullptr; +inline ::pg_query::WithClause* SelectStmt::unsafe_arena_release_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SelectStmt.with_clause) + + _impl_._has_bits_[0] &= ~0x00000020u; + ::pg_query::WithClause* temp = _impl_.with_clause_; + _impl_.with_clause_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* AlterUserMappingStmt::_internal_mutable_user() { - - if (_impl_.user_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.user_ = p; +inline ::pg_query::WithClause* SelectStmt::_internal_mutable_with_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000020u; + if (_impl_.with_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::WithClause>(GetArena()); + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(p); } - return _impl_.user_; + return _impl_.with_clause_; } -inline ::pg_query::RoleSpec* AlterUserMappingStmt::mutable_user() { - ::pg_query::RoleSpec* _msg = _internal_mutable_user(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterUserMappingStmt.user) +inline ::pg_query::WithClause* SelectStmt::mutable_with_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::WithClause* _msg = _internal_mutable_with_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.with_clause) return _msg; } -inline void AlterUserMappingStmt::set_allocated_user(::pg_query::RoleSpec* user) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SelectStmt::set_allocated_with_clause(::pg_query::WithClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.user_; + delete reinterpret_cast<::pg_query::WithClause*>(_impl_.with_clause_); } - if (user) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(user); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::WithClause*>(value)->GetArena(); if (message_arena != submessage_arena) { - user = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, user, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000020u; } else { - + _impl_._has_bits_[0] &= ~0x00000020u; } - _impl_.user_ = user; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterUserMappingStmt.user) -} -// string servername = 2 [json_name = "servername"]; -inline void AlterUserMappingStmt::clear_servername() { - _impl_.servername_.ClearToEmpty(); -} -inline const std::string& AlterUserMappingStmt::servername() const { - // @@protoc_insertion_point(field_get:pg_query.AlterUserMappingStmt.servername) - return _internal_servername(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AlterUserMappingStmt::set_servername(ArgT0&& arg0, ArgT... args) { - - _impl_.servername_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterUserMappingStmt.servername) -} -inline std::string* AlterUserMappingStmt::mutable_servername() { - std::string* _s = _internal_mutable_servername(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterUserMappingStmt.servername) - return _s; -} -inline const std::string& AlterUserMappingStmt::_internal_servername() const { - return _impl_.servername_.Get(); -} -inline void AlterUserMappingStmt::_internal_set_servername(const std::string& value) { - - _impl_.servername_.Set(value, GetArenaForAllocation()); -} -inline std::string* AlterUserMappingStmt::_internal_mutable_servername() { - - return _impl_.servername_.Mutable(GetArenaForAllocation()); -} -inline std::string* AlterUserMappingStmt::release_servername() { - // @@protoc_insertion_point(field_release:pg_query.AlterUserMappingStmt.servername) - return _impl_.servername_.Release(); -} -inline void AlterUserMappingStmt::set_allocated_servername(std::string* servername) { - if (servername != nullptr) { - - } else { - - } - _impl_.servername_.SetAllocated(servername, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.servername_.IsDefault()) { - _impl_.servername_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterUserMappingStmt.servername) + _impl_.with_clause_ = reinterpret_cast<::pg_query::WithClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.with_clause) } -// repeated .pg_query.Node options = 3 [json_name = "options"]; -inline int AlterUserMappingStmt::_internal_options_size() const { - return _impl_.options_.size(); +// .pg_query.SetOperation op = 17 [json_name = "op"]; +inline void SelectStmt::clear_op() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.op_ = 0; } -inline int AlterUserMappingStmt::options_size() const { - return _internal_options_size(); +inline ::pg_query::SetOperation SelectStmt::op() const { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.op) + return _internal_op(); } -inline void AlterUserMappingStmt::clear_options() { - _impl_.options_.Clear(); +inline void SelectStmt::set_op(::pg_query::SetOperation value) { + _internal_set_op(value); + // @@protoc_insertion_point(field_set:pg_query.SelectStmt.op) } -inline ::pg_query::Node* AlterUserMappingStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterUserMappingStmt.options) - return _impl_.options_.Mutable(index); +inline ::pg_query::SetOperation SelectStmt::_internal_op() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::SetOperation>(_impl_.op_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterUserMappingStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterUserMappingStmt.options) - return &_impl_.options_; +inline void SelectStmt::_internal_set_op(::pg_query::SetOperation value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.op_ = value; } -inline const ::pg_query::Node& AlterUserMappingStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// bool all = 18 [json_name = "all"]; +inline void SelectStmt::clear_all() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.all_ = false; } -inline const ::pg_query::Node& AlterUserMappingStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterUserMappingStmt.options) - return _internal_options(index); +inline bool SelectStmt::all() const { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.all) + return _internal_all(); } -inline ::pg_query::Node* AlterUserMappingStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void SelectStmt::set_all(bool value) { + _internal_set_all(value); + // @@protoc_insertion_point(field_set:pg_query.SelectStmt.all) } -inline ::pg_query::Node* AlterUserMappingStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterUserMappingStmt.options) - return _add; +inline bool SelectStmt::_internal_all() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.all_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterUserMappingStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterUserMappingStmt.options) - return _impl_.options_; +inline void SelectStmt::_internal_set_all(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.all_ = value; } -// ------------------------------------------------------------------- - -// DropUserMappingStmt - -// .pg_query.RoleSpec user = 1 [json_name = "user"]; -inline bool DropUserMappingStmt::_internal_has_user() const { - return this != internal_default_instance() && _impl_.user_ != nullptr; -} -inline bool DropUserMappingStmt::has_user() const { - return _internal_has_user(); +// .pg_query.SelectStmt larg = 19 [json_name = "larg"]; +inline bool SelectStmt::has_larg() const { + bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; + PROTOBUF_ASSUME(!value || _impl_.larg_ != nullptr); + return value; } -inline void DropUserMappingStmt::clear_user() { - if (GetArenaForAllocation() == nullptr && _impl_.user_ != nullptr) { - delete _impl_.user_; - } - _impl_.user_ = nullptr; +inline void SelectStmt::clear_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.larg_ != nullptr) _impl_.larg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000040u; } -inline const ::pg_query::RoleSpec& DropUserMappingStmt::_internal_user() const { - const ::pg_query::RoleSpec* p = _impl_.user_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RoleSpec_default_instance_); +inline const ::pg_query::SelectStmt& SelectStmt::_internal_larg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::SelectStmt* p = _impl_.larg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_SelectStmt_default_instance_); } -inline const ::pg_query::RoleSpec& DropUserMappingStmt::user() const { - // @@protoc_insertion_point(field_get:pg_query.DropUserMappingStmt.user) - return _internal_user(); +inline const ::pg_query::SelectStmt& SelectStmt::larg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.larg) + return _internal_larg(); } -inline void DropUserMappingStmt::unsafe_arena_set_allocated_user( - ::pg_query::RoleSpec* user) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.user_); +inline void SelectStmt::unsafe_arena_set_allocated_larg(::pg_query::SelectStmt* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.larg_); } - _impl_.user_ = user; - if (user) { - + _impl_.larg_ = reinterpret_cast<::pg_query::SelectStmt*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000040u; } else { - + _impl_._has_bits_[0] &= ~0x00000040u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DropUserMappingStmt.user) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.larg) } -inline ::pg_query::RoleSpec* DropUserMappingStmt::release_user() { - - ::pg_query::RoleSpec* temp = _impl_.user_; - _impl_.user_ = nullptr; +inline ::pg_query::SelectStmt* SelectStmt::release_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000040u; + ::pg_query::SelectStmt* released = _impl_.larg_; + _impl_.larg_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RoleSpec* DropUserMappingStmt::unsafe_arena_release_user() { - // @@protoc_insertion_point(field_release:pg_query.DropUserMappingStmt.user) - - ::pg_query::RoleSpec* temp = _impl_.user_; - _impl_.user_ = nullptr; +inline ::pg_query::SelectStmt* SelectStmt::unsafe_arena_release_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SelectStmt.larg) + + _impl_._has_bits_[0] &= ~0x00000040u; + ::pg_query::SelectStmt* temp = _impl_.larg_; + _impl_.larg_ = nullptr; return temp; } -inline ::pg_query::RoleSpec* DropUserMappingStmt::_internal_mutable_user() { - - if (_impl_.user_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArenaForAllocation()); - _impl_.user_ = p; +inline ::pg_query::SelectStmt* SelectStmt::_internal_mutable_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000040u; + if (_impl_.larg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::SelectStmt>(GetArena()); + _impl_.larg_ = reinterpret_cast<::pg_query::SelectStmt*>(p); } - return _impl_.user_; + return _impl_.larg_; } -inline ::pg_query::RoleSpec* DropUserMappingStmt::mutable_user() { - ::pg_query::RoleSpec* _msg = _internal_mutable_user(); - // @@protoc_insertion_point(field_mutable:pg_query.DropUserMappingStmt.user) +inline ::pg_query::SelectStmt* SelectStmt::mutable_larg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::SelectStmt* _msg = _internal_mutable_larg(); + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.larg) return _msg; } -inline void DropUserMappingStmt::set_allocated_user(::pg_query::RoleSpec* user) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SelectStmt::set_allocated_larg(::pg_query::SelectStmt* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.user_; + delete reinterpret_cast<::pg_query::SelectStmt*>(_impl_.larg_); } - if (user) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(user); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::SelectStmt*>(value)->GetArena(); if (message_arena != submessage_arena) { - user = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, user, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000040u; } else { - + _impl_._has_bits_[0] &= ~0x00000040u; } - _impl_.user_ = user; - // @@protoc_insertion_point(field_set_allocated:pg_query.DropUserMappingStmt.user) -} -// string servername = 2 [json_name = "servername"]; -inline void DropUserMappingStmt::clear_servername() { - _impl_.servername_.ClearToEmpty(); -} -inline const std::string& DropUserMappingStmt::servername() const { - // @@protoc_insertion_point(field_get:pg_query.DropUserMappingStmt.servername) - return _internal_servername(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void DropUserMappingStmt::set_servername(ArgT0&& arg0, ArgT... args) { - - _impl_.servername_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.DropUserMappingStmt.servername) -} -inline std::string* DropUserMappingStmt::mutable_servername() { - std::string* _s = _internal_mutable_servername(); - // @@protoc_insertion_point(field_mutable:pg_query.DropUserMappingStmt.servername) - return _s; + _impl_.larg_ = reinterpret_cast<::pg_query::SelectStmt*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.larg) } -inline const std::string& DropUserMappingStmt::_internal_servername() const { - return _impl_.servername_.Get(); + +// .pg_query.SelectStmt rarg = 20 [json_name = "rarg"]; +inline bool SelectStmt::has_rarg() const { + bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0; + PROTOBUF_ASSUME(!value || _impl_.rarg_ != nullptr); + return value; } -inline void DropUserMappingStmt::_internal_set_servername(const std::string& value) { - - _impl_.servername_.Set(value, GetArenaForAllocation()); +inline void SelectStmt::clear_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.rarg_ != nullptr) _impl_.rarg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000080u; } -inline std::string* DropUserMappingStmt::_internal_mutable_servername() { - - return _impl_.servername_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::SelectStmt& SelectStmt::_internal_rarg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::SelectStmt* p = _impl_.rarg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_SelectStmt_default_instance_); } -inline std::string* DropUserMappingStmt::release_servername() { - // @@protoc_insertion_point(field_release:pg_query.DropUserMappingStmt.servername) - return _impl_.servername_.Release(); +inline const ::pg_query::SelectStmt& SelectStmt::rarg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SelectStmt.rarg) + return _internal_rarg(); } -inline void DropUserMappingStmt::set_allocated_servername(std::string* servername) { - if (servername != nullptr) { - - } else { - +inline void SelectStmt::unsafe_arena_set_allocated_rarg(::pg_query::SelectStmt* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.rarg_); } - _impl_.servername_.SetAllocated(servername, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.servername_.IsDefault()) { - _impl_.servername_.Set("", GetArenaForAllocation()); + _impl_.rarg_ = reinterpret_cast<::pg_query::SelectStmt*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000080u; + } else { + _impl_._has_bits_[0] &= ~0x00000080u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.DropUserMappingStmt.servername) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SelectStmt.rarg) } +inline ::pg_query::SelectStmt* SelectStmt::release_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool missing_ok = 3 [json_name = "missing_ok"]; -inline void DropUserMappingStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; + _impl_._has_bits_[0] &= ~0x00000080u; + ::pg_query::SelectStmt* released = _impl_.rarg_; + _impl_.rarg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool DropUserMappingStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline ::pg_query::SelectStmt* SelectStmt::unsafe_arena_release_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SelectStmt.rarg) + + _impl_._has_bits_[0] &= ~0x00000080u; + ::pg_query::SelectStmt* temp = _impl_.rarg_; + _impl_.rarg_ = nullptr; + return temp; } -inline bool DropUserMappingStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.DropUserMappingStmt.missing_ok) - return _internal_missing_ok(); +inline ::pg_query::SelectStmt* SelectStmt::_internal_mutable_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000080u; + if (_impl_.rarg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::SelectStmt>(GetArena()); + _impl_.rarg_ = reinterpret_cast<::pg_query::SelectStmt*>(p); + } + return _impl_.rarg_; } -inline void DropUserMappingStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline ::pg_query::SelectStmt* SelectStmt::mutable_rarg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::SelectStmt* _msg = _internal_mutable_rarg(); + // @@protoc_insertion_point(field_mutable:pg_query.SelectStmt.rarg) + return _msg; } -inline void DropUserMappingStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.DropUserMappingStmt.missing_ok) +inline void SelectStmt::set_allocated_rarg(::pg_query::SelectStmt* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::SelectStmt*>(_impl_.rarg_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::SelectStmt*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000080u; + } else { + _impl_._has_bits_[0] &= ~0x00000080u; + } + + _impl_.rarg_ = reinterpret_cast<::pg_query::SelectStmt*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SelectStmt.rarg) } // ------------------------------------------------------------------- -// AlterTableSpaceOptionsStmt +// SetOperationStmt -// string tablespacename = 1 [json_name = "tablespacename"]; -inline void AlterTableSpaceOptionsStmt::clear_tablespacename() { - _impl_.tablespacename_.ClearToEmpty(); +// .pg_query.SetOperation op = 1 [json_name = "op"]; +inline void SetOperationStmt::clear_op() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.op_ = 0; } -inline const std::string& AlterTableSpaceOptionsStmt::tablespacename() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableSpaceOptionsStmt.tablespacename) - return _internal_tablespacename(); +inline ::pg_query::SetOperation SetOperationStmt::op() const { + // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.op) + return _internal_op(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterTableSpaceOptionsStmt::set_tablespacename(ArgT0&& arg0, ArgT... args) { - - _impl_.tablespacename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterTableSpaceOptionsStmt.tablespacename) +inline void SetOperationStmt::set_op(::pg_query::SetOperation value) { + _internal_set_op(value); + // @@protoc_insertion_point(field_set:pg_query.SetOperationStmt.op) } -inline std::string* AlterTableSpaceOptionsStmt::mutable_tablespacename() { - std::string* _s = _internal_mutable_tablespacename(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableSpaceOptionsStmt.tablespacename) - return _s; +inline ::pg_query::SetOperation SetOperationStmt::_internal_op() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::SetOperation>(_impl_.op_); } -inline const std::string& AlterTableSpaceOptionsStmt::_internal_tablespacename() const { - return _impl_.tablespacename_.Get(); +inline void SetOperationStmt::_internal_set_op(::pg_query::SetOperation value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.op_ = value; } -inline void AlterTableSpaceOptionsStmt::_internal_set_tablespacename(const std::string& value) { - - _impl_.tablespacename_.Set(value, GetArenaForAllocation()); + +// bool all = 2 [json_name = "all"]; +inline void SetOperationStmt::clear_all() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.all_ = false; } -inline std::string* AlterTableSpaceOptionsStmt::_internal_mutable_tablespacename() { - - return _impl_.tablespacename_.Mutable(GetArenaForAllocation()); +inline bool SetOperationStmt::all() const { + // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.all) + return _internal_all(); } -inline std::string* AlterTableSpaceOptionsStmt::release_tablespacename() { - // @@protoc_insertion_point(field_release:pg_query.AlterTableSpaceOptionsStmt.tablespacename) - return _impl_.tablespacename_.Release(); +inline void SetOperationStmt::set_all(bool value) { + _internal_set_all(value); + // @@protoc_insertion_point(field_set:pg_query.SetOperationStmt.all) } -inline void AlterTableSpaceOptionsStmt::set_allocated_tablespacename(std::string* tablespacename) { - if (tablespacename != nullptr) { - - } else { - - } - _impl_.tablespacename_.SetAllocated(tablespacename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.tablespacename_.IsDefault()) { - _impl_.tablespacename_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableSpaceOptionsStmt.tablespacename) +inline bool SetOperationStmt::_internal_all() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.all_; +} +inline void SetOperationStmt::_internal_set_all(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.all_ = value; } -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int AlterTableSpaceOptionsStmt::_internal_options_size() const { - return _impl_.options_.size(); +// .pg_query.Node larg = 3 [json_name = "larg"]; +inline bool SetOperationStmt::has_larg() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.larg_ != nullptr); + return value; } -inline int AlterTableSpaceOptionsStmt::options_size() const { - return _internal_options_size(); +inline void SetOperationStmt::clear_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.larg_ != nullptr) _impl_.larg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void AlterTableSpaceOptionsStmt::clear_options() { - _impl_.options_.Clear(); +inline const ::pg_query::Node& SetOperationStmt::_internal_larg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.larg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* AlterTableSpaceOptionsStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableSpaceOptionsStmt.options) - return _impl_.options_.Mutable(index); +inline const ::pg_query::Node& SetOperationStmt::larg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.larg) + return _internal_larg(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTableSpaceOptionsStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTableSpaceOptionsStmt.options) - return &_impl_.options_; +inline void SetOperationStmt::unsafe_arena_set_allocated_larg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.larg_); + } + _impl_.larg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SetOperationStmt.larg) } -inline const ::pg_query::Node& AlterTableSpaceOptionsStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::Node* SetOperationStmt::release_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.larg_; + _impl_.larg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& AlterTableSpaceOptionsStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableSpaceOptionsStmt.options) - return _internal_options(index); +inline ::pg_query::Node* SetOperationStmt::unsafe_arena_release_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SetOperationStmt.larg) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.larg_; + _impl_.larg_ = nullptr; + return temp; } -inline ::pg_query::Node* AlterTableSpaceOptionsStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline ::pg_query::Node* SetOperationStmt::_internal_mutable_larg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.larg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.larg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.larg_; } -inline ::pg_query::Node* AlterTableSpaceOptionsStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterTableSpaceOptionsStmt.options) - return _add; +inline ::pg_query::Node* SetOperationStmt::mutable_larg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_larg(); + // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.larg) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTableSpaceOptionsStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTableSpaceOptionsStmt.options) - return _impl_.options_; +inline void SetOperationStmt::set_allocated_larg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.larg_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.larg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SetOperationStmt.larg) } -// bool is_reset = 3 [json_name = "isReset"]; -inline void AlterTableSpaceOptionsStmt::clear_is_reset() { - _impl_.is_reset_ = false; +// .pg_query.Node rarg = 4 [json_name = "rarg"]; +inline bool SetOperationStmt::has_rarg() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.rarg_ != nullptr); + return value; } -inline bool AlterTableSpaceOptionsStmt::_internal_is_reset() const { - return _impl_.is_reset_; +inline void SetOperationStmt::clear_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.rarg_ != nullptr) _impl_.rarg_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline bool AlterTableSpaceOptionsStmt::is_reset() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableSpaceOptionsStmt.is_reset) - return _internal_is_reset(); +inline const ::pg_query::Node& SetOperationStmt::_internal_rarg() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.rarg_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void AlterTableSpaceOptionsStmt::_internal_set_is_reset(bool value) { - - _impl_.is_reset_ = value; +inline const ::pg_query::Node& SetOperationStmt::rarg() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.rarg) + return _internal_rarg(); } -inline void AlterTableSpaceOptionsStmt::set_is_reset(bool value) { - _internal_set_is_reset(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableSpaceOptionsStmt.is_reset) +inline void SetOperationStmt::unsafe_arena_set_allocated_rarg(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.rarg_); + } + _impl_.rarg_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SetOperationStmt.rarg) } +inline ::pg_query::Node* SetOperationStmt::release_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- - -// AlterTableMoveAllStmt + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.rarg_; + _impl_.rarg_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::Node* SetOperationStmt::unsafe_arena_release_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SetOperationStmt.rarg) -// string orig_tablespacename = 1 [json_name = "orig_tablespacename"]; -inline void AlterTableMoveAllStmt::clear_orig_tablespacename() { - _impl_.orig_tablespacename_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.rarg_; + _impl_.rarg_ = nullptr; + return temp; } -inline const std::string& AlterTableMoveAllStmt::orig_tablespacename() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.orig_tablespacename) - return _internal_orig_tablespacename(); +inline ::pg_query::Node* SetOperationStmt::_internal_mutable_rarg() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.rarg_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.rarg_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.rarg_; } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterTableMoveAllStmt::set_orig_tablespacename(ArgT0&& arg0, ArgT... args) { - - _impl_.orig_tablespacename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterTableMoveAllStmt.orig_tablespacename) +inline ::pg_query::Node* SetOperationStmt::mutable_rarg() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_rarg(); + // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.rarg) + return _msg; } -inline std::string* AlterTableMoveAllStmt::mutable_orig_tablespacename() { - std::string* _s = _internal_mutable_orig_tablespacename(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableMoveAllStmt.orig_tablespacename) - return _s; +inline void SetOperationStmt::set_allocated_rarg(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.rarg_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.rarg_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SetOperationStmt.rarg) } -inline const std::string& AlterTableMoveAllStmt::_internal_orig_tablespacename() const { - return _impl_.orig_tablespacename_.Get(); + +// repeated .pg_query.Node col_types = 5 [json_name = "colTypes"]; +inline int SetOperationStmt::_internal_col_types_size() const { + return _internal_col_types().size(); } -inline void AlterTableMoveAllStmt::_internal_set_orig_tablespacename(const std::string& value) { - - _impl_.orig_tablespacename_.Set(value, GetArenaForAllocation()); +inline int SetOperationStmt::col_types_size() const { + return _internal_col_types_size(); } -inline std::string* AlterTableMoveAllStmt::_internal_mutable_orig_tablespacename() { - - return _impl_.orig_tablespacename_.Mutable(GetArenaForAllocation()); +inline void SetOperationStmt::clear_col_types() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.col_types_.Clear(); } -inline std::string* AlterTableMoveAllStmt::release_orig_tablespacename() { - // @@protoc_insertion_point(field_release:pg_query.AlterTableMoveAllStmt.orig_tablespacename) - return _impl_.orig_tablespacename_.Release(); +inline ::pg_query::Node* SetOperationStmt::mutable_col_types(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.col_types) + return _internal_mutable_col_types()->Mutable(index); } -inline void AlterTableMoveAllStmt::set_allocated_orig_tablespacename(std::string* orig_tablespacename) { - if (orig_tablespacename != nullptr) { - - } else { - - } - _impl_.orig_tablespacename_.SetAllocated(orig_tablespacename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.orig_tablespacename_.IsDefault()) { - _impl_.orig_tablespacename_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableMoveAllStmt.orig_tablespacename) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SetOperationStmt::mutable_col_types() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SetOperationStmt.col_types) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_col_types(); } - -// .pg_query.ObjectType objtype = 2 [json_name = "objtype"]; -inline void AlterTableMoveAllStmt::clear_objtype() { - _impl_.objtype_ = 0; +inline const ::pg_query::Node& SetOperationStmt::col_types(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.col_types) + return _internal_col_types().Get(index); } -inline ::pg_query::ObjectType AlterTableMoveAllStmt::_internal_objtype() const { - return static_cast< ::pg_query::ObjectType >(_impl_.objtype_); +inline ::pg_query::Node* SetOperationStmt::add_col_types() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_col_types()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SetOperationStmt.col_types) + return _add; } -inline ::pg_query::ObjectType AlterTableMoveAllStmt::objtype() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.objtype) - return _internal_objtype(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SetOperationStmt::col_types() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SetOperationStmt.col_types) + return _internal_col_types(); } -inline void AlterTableMoveAllStmt::_internal_set_objtype(::pg_query::ObjectType value) { - - _impl_.objtype_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SetOperationStmt::_internal_col_types() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.col_types_; } -inline void AlterTableMoveAllStmt::set_objtype(::pg_query::ObjectType value) { - _internal_set_objtype(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableMoveAllStmt.objtype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SetOperationStmt::_internal_mutable_col_types() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.col_types_; } -// repeated .pg_query.Node roles = 3 [json_name = "roles"]; -inline int AlterTableMoveAllStmt::_internal_roles_size() const { - return _impl_.roles_.size(); +// repeated .pg_query.Node col_typmods = 6 [json_name = "colTypmods"]; +inline int SetOperationStmt::_internal_col_typmods_size() const { + return _internal_col_typmods().size(); } -inline int AlterTableMoveAllStmt::roles_size() const { - return _internal_roles_size(); +inline int SetOperationStmt::col_typmods_size() const { + return _internal_col_typmods_size(); } -inline void AlterTableMoveAllStmt::clear_roles() { - _impl_.roles_.Clear(); +inline void SetOperationStmt::clear_col_typmods() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.col_typmods_.Clear(); } -inline ::pg_query::Node* AlterTableMoveAllStmt::mutable_roles(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableMoveAllStmt.roles) - return _impl_.roles_.Mutable(index); +inline ::pg_query::Node* SetOperationStmt::mutable_col_typmods(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.col_typmods) + return _internal_mutable_col_typmods()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterTableMoveAllStmt::mutable_roles() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTableMoveAllStmt.roles) - return &_impl_.roles_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SetOperationStmt::mutable_col_typmods() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SetOperationStmt.col_typmods) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_col_typmods(); } -inline const ::pg_query::Node& AlterTableMoveAllStmt::_internal_roles(int index) const { - return _impl_.roles_.Get(index); +inline const ::pg_query::Node& SetOperationStmt::col_typmods(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.col_typmods) + return _internal_col_typmods().Get(index); } -inline const ::pg_query::Node& AlterTableMoveAllStmt::roles(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.roles) - return _internal_roles(index); +inline ::pg_query::Node* SetOperationStmt::add_col_typmods() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_col_typmods()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SetOperationStmt.col_typmods) + return _add; } -inline ::pg_query::Node* AlterTableMoveAllStmt::_internal_add_roles() { - return _impl_.roles_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SetOperationStmt::col_typmods() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SetOperationStmt.col_typmods) + return _internal_col_typmods(); } -inline ::pg_query::Node* AlterTableMoveAllStmt::add_roles() { - ::pg_query::Node* _add = _internal_add_roles(); - // @@protoc_insertion_point(field_add:pg_query.AlterTableMoveAllStmt.roles) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SetOperationStmt::_internal_col_typmods() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.col_typmods_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterTableMoveAllStmt::roles() const { - // @@protoc_insertion_point(field_list:pg_query.AlterTableMoveAllStmt.roles) - return _impl_.roles_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SetOperationStmt::_internal_mutable_col_typmods() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.col_typmods_; } -// string new_tablespacename = 4 [json_name = "new_tablespacename"]; -inline void AlterTableMoveAllStmt::clear_new_tablespacename() { - _impl_.new_tablespacename_.ClearToEmpty(); +// repeated .pg_query.Node col_collations = 7 [json_name = "colCollations"]; +inline int SetOperationStmt::_internal_col_collations_size() const { + return _internal_col_collations().size(); } -inline const std::string& AlterTableMoveAllStmt::new_tablespacename() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.new_tablespacename) - return _internal_new_tablespacename(); +inline int SetOperationStmt::col_collations_size() const { + return _internal_col_collations_size(); +} +inline void SetOperationStmt::clear_col_collations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.col_collations_.Clear(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterTableMoveAllStmt::set_new_tablespacename(ArgT0&& arg0, ArgT... args) { - - _impl_.new_tablespacename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterTableMoveAllStmt.new_tablespacename) +inline ::pg_query::Node* SetOperationStmt::mutable_col_collations(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.col_collations) + return _internal_mutable_col_collations()->Mutable(index); } -inline std::string* AlterTableMoveAllStmt::mutable_new_tablespacename() { - std::string* _s = _internal_mutable_new_tablespacename(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterTableMoveAllStmt.new_tablespacename) - return _s; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SetOperationStmt::mutable_col_collations() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SetOperationStmt.col_collations) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_col_collations(); } -inline const std::string& AlterTableMoveAllStmt::_internal_new_tablespacename() const { - return _impl_.new_tablespacename_.Get(); +inline const ::pg_query::Node& SetOperationStmt::col_collations(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.col_collations) + return _internal_col_collations().Get(index); } -inline void AlterTableMoveAllStmt::_internal_set_new_tablespacename(const std::string& value) { - - _impl_.new_tablespacename_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Node* SetOperationStmt::add_col_collations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_col_collations()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SetOperationStmt.col_collations) + return _add; } -inline std::string* AlterTableMoveAllStmt::_internal_mutable_new_tablespacename() { - - return _impl_.new_tablespacename_.Mutable(GetArenaForAllocation()); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SetOperationStmt::col_collations() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SetOperationStmt.col_collations) + return _internal_col_collations(); } -inline std::string* AlterTableMoveAllStmt::release_new_tablespacename() { - // @@protoc_insertion_point(field_release:pg_query.AlterTableMoveAllStmt.new_tablespacename) - return _impl_.new_tablespacename_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SetOperationStmt::_internal_col_collations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.col_collations_; } -inline void AlterTableMoveAllStmt::set_allocated_new_tablespacename(std::string* new_tablespacename) { - if (new_tablespacename != nullptr) { - - } else { - - } - _impl_.new_tablespacename_.SetAllocated(new_tablespacename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.new_tablespacename_.IsDefault()) { - _impl_.new_tablespacename_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableMoveAllStmt.new_tablespacename) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SetOperationStmt::_internal_mutable_col_collations() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.col_collations_; } -// bool nowait = 5 [json_name = "nowait"]; -inline void AlterTableMoveAllStmt::clear_nowait() { - _impl_.nowait_ = false; +// repeated .pg_query.Node group_clauses = 8 [json_name = "groupClauses"]; +inline int SetOperationStmt::_internal_group_clauses_size() const { + return _internal_group_clauses().size(); } -inline bool AlterTableMoveAllStmt::_internal_nowait() const { - return _impl_.nowait_; +inline int SetOperationStmt::group_clauses_size() const { + return _internal_group_clauses_size(); } -inline bool AlterTableMoveAllStmt::nowait() const { - // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.nowait) - return _internal_nowait(); +inline void SetOperationStmt::clear_group_clauses() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.group_clauses_.Clear(); } -inline void AlterTableMoveAllStmt::_internal_set_nowait(bool value) { - - _impl_.nowait_ = value; +inline ::pg_query::Node* SetOperationStmt::mutable_group_clauses(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.SetOperationStmt.group_clauses) + return _internal_mutable_group_clauses()->Mutable(index); } -inline void AlterTableMoveAllStmt::set_nowait(bool value) { - _internal_set_nowait(value); - // @@protoc_insertion_point(field_set:pg_query.AlterTableMoveAllStmt.nowait) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* SetOperationStmt::mutable_group_clauses() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.SetOperationStmt.group_clauses) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_group_clauses(); } - -// ------------------------------------------------------------------- - -// SecLabelStmt - -// .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; -inline void SecLabelStmt::clear_objtype() { - _impl_.objtype_ = 0; +inline const ::pg_query::Node& SetOperationStmt::group_clauses(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SetOperationStmt.group_clauses) + return _internal_group_clauses().Get(index); } -inline ::pg_query::ObjectType SecLabelStmt::_internal_objtype() const { - return static_cast< ::pg_query::ObjectType >(_impl_.objtype_); +inline ::pg_query::Node* SetOperationStmt::add_group_clauses() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_group_clauses()->Add(); + // @@protoc_insertion_point(field_add:pg_query.SetOperationStmt.group_clauses) + return _add; } -inline ::pg_query::ObjectType SecLabelStmt::objtype() const { - // @@protoc_insertion_point(field_get:pg_query.SecLabelStmt.objtype) - return _internal_objtype(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& SetOperationStmt::group_clauses() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.SetOperationStmt.group_clauses) + return _internal_group_clauses(); } -inline void SecLabelStmt::_internal_set_objtype(::pg_query::ObjectType value) { - - _impl_.objtype_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +SetOperationStmt::_internal_group_clauses() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.group_clauses_; } -inline void SecLabelStmt::set_objtype(::pg_query::ObjectType value) { - _internal_set_objtype(value); - // @@protoc_insertion_point(field_set:pg_query.SecLabelStmt.objtype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +SetOperationStmt::_internal_mutable_group_clauses() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.group_clauses_; } -// .pg_query.Node object = 2 [json_name = "object"]; -inline bool SecLabelStmt::_internal_has_object() const { - return this != internal_default_instance() && _impl_.object_ != nullptr; -} -inline bool SecLabelStmt::has_object() const { - return _internal_has_object(); +// ------------------------------------------------------------------- + +// ReturnStmt + +// .pg_query.Node returnval = 1 [json_name = "returnval"]; +inline bool ReturnStmt::has_returnval() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.returnval_ != nullptr); + return value; } -inline void SecLabelStmt::clear_object() { - if (GetArenaForAllocation() == nullptr && _impl_.object_ != nullptr) { - delete _impl_.object_; - } - _impl_.object_ = nullptr; +inline void ReturnStmt::clear_returnval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.returnval_ != nullptr) _impl_.returnval_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& SecLabelStmt::_internal_object() const { - const ::pg_query::Node* p = _impl_.object_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& ReturnStmt::_internal_returnval() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.returnval_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& SecLabelStmt::object() const { - // @@protoc_insertion_point(field_get:pg_query.SecLabelStmt.object) - return _internal_object(); +inline const ::pg_query::Node& ReturnStmt::returnval() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ReturnStmt.returnval) + return _internal_returnval(); } -inline void SecLabelStmt::unsafe_arena_set_allocated_object( - ::pg_query::Node* object) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.object_); +inline void ReturnStmt::unsafe_arena_set_allocated_returnval(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.returnval_); } - _impl_.object_ = object; - if (object) { - + _impl_.returnval_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SecLabelStmt.object) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ReturnStmt.returnval) } -inline ::pg_query::Node* SecLabelStmt::release_object() { - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::Node* ReturnStmt::release_returnval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.returnval_; + _impl_.returnval_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* SecLabelStmt::unsafe_arena_release_object() { - // @@protoc_insertion_point(field_release:pg_query.SecLabelStmt.object) - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::Node* ReturnStmt::unsafe_arena_release_returnval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ReturnStmt.returnval) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.returnval_; + _impl_.returnval_ = nullptr; return temp; } -inline ::pg_query::Node* SecLabelStmt::_internal_mutable_object() { - - if (_impl_.object_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.object_ = p; +inline ::pg_query::Node* ReturnStmt::_internal_mutable_returnval() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.returnval_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.returnval_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.object_; + return _impl_.returnval_; } -inline ::pg_query::Node* SecLabelStmt::mutable_object() { - ::pg_query::Node* _msg = _internal_mutable_object(); - // @@protoc_insertion_point(field_mutable:pg_query.SecLabelStmt.object) +inline ::pg_query::Node* ReturnStmt::mutable_returnval() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_returnval(); + // @@protoc_insertion_point(field_mutable:pg_query.ReturnStmt.returnval) return _msg; } -inline void SecLabelStmt::set_allocated_object(::pg_query::Node* object) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ReturnStmt::set_allocated_returnval(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.object_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.returnval_); } - if (object) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(object); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - object = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, object, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.object_ = object; - // @@protoc_insertion_point(field_set_allocated:pg_query.SecLabelStmt.object) + + _impl_.returnval_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ReturnStmt.returnval) } -// string provider = 3 [json_name = "provider"]; -inline void SecLabelStmt::clear_provider() { - _impl_.provider_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// PLAssignStmt + +// string name = 1 [json_name = "name"]; +inline void PLAssignStmt::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline const std::string& SecLabelStmt::provider() const { - // @@protoc_insertion_point(field_get:pg_query.SecLabelStmt.provider) - return _internal_provider(); +inline const std::string& PLAssignStmt::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.name) + return _internal_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void SecLabelStmt::set_provider(ArgT0&& arg0, ArgT... args) { - - _impl_.provider_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.SecLabelStmt.provider) +template +inline PROTOBUF_ALWAYS_INLINE void PLAssignStmt::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.PLAssignStmt.name) } -inline std::string* SecLabelStmt::mutable_provider() { - std::string* _s = _internal_mutable_provider(); - // @@protoc_insertion_point(field_mutable:pg_query.SecLabelStmt.provider) +inline std::string* PLAssignStmt::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.PLAssignStmt.name) return _s; } -inline const std::string& SecLabelStmt::_internal_provider() const { - return _impl_.provider_.Get(); +inline const std::string& PLAssignStmt::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline void SecLabelStmt::_internal_set_provider(const std::string& value) { - - _impl_.provider_.Set(value, GetArenaForAllocation()); +inline void PLAssignStmt::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline std::string* SecLabelStmt::_internal_mutable_provider() { - - return _impl_.provider_.Mutable(GetArenaForAllocation()); +inline std::string* PLAssignStmt::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline std::string* SecLabelStmt::release_provider() { - // @@protoc_insertion_point(field_release:pg_query.SecLabelStmt.provider) - return _impl_.provider_.Release(); +inline std::string* PLAssignStmt::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PLAssignStmt.name) + return _impl_.name_.Release(); } -inline void SecLabelStmt::set_allocated_provider(std::string* provider) { - if (provider != nullptr) { - - } else { - - } - _impl_.provider_.SetAllocated(provider, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.provider_.IsDefault()) { - _impl_.provider_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.SecLabelStmt.provider) +inline void PLAssignStmt::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.PLAssignStmt.name) } -// string label = 4 [json_name = "label"]; -inline void SecLabelStmt::clear_label() { - _impl_.label_.ClearToEmpty(); +// repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; +inline int PLAssignStmt::_internal_indirection_size() const { + return _internal_indirection().size(); } -inline const std::string& SecLabelStmt::label() const { - // @@protoc_insertion_point(field_get:pg_query.SecLabelStmt.label) - return _internal_label(); +inline int PLAssignStmt::indirection_size() const { + return _internal_indirection_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void SecLabelStmt::set_label(ArgT0&& arg0, ArgT... args) { - - _impl_.label_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.SecLabelStmt.label) +inline void PLAssignStmt::clear_indirection() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indirection_.Clear(); } -inline std::string* SecLabelStmt::mutable_label() { - std::string* _s = _internal_mutable_label(); - // @@protoc_insertion_point(field_mutable:pg_query.SecLabelStmt.label) - return _s; +inline ::pg_query::Node* PLAssignStmt::mutable_indirection(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.PLAssignStmt.indirection) + return _internal_mutable_indirection()->Mutable(index); } -inline const std::string& SecLabelStmt::_internal_label() const { - return _impl_.label_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* PLAssignStmt::mutable_indirection() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.PLAssignStmt.indirection) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_indirection(); } -inline void SecLabelStmt::_internal_set_label(const std::string& value) { - - _impl_.label_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& PLAssignStmt::indirection(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.indirection) + return _internal_indirection().Get(index); } -inline std::string* SecLabelStmt::_internal_mutable_label() { - - return _impl_.label_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* PLAssignStmt::add_indirection() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_indirection()->Add(); + // @@protoc_insertion_point(field_add:pg_query.PLAssignStmt.indirection) + return _add; } -inline std::string* SecLabelStmt::release_label() { - // @@protoc_insertion_point(field_release:pg_query.SecLabelStmt.label) - return _impl_.label_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& PLAssignStmt::indirection() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.PLAssignStmt.indirection) + return _internal_indirection(); } -inline void SecLabelStmt::set_allocated_label(std::string* label) { - if (label != nullptr) { - - } else { - - } - _impl_.label_.SetAllocated(label, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.label_.IsDefault()) { - _impl_.label_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.SecLabelStmt.label) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +PLAssignStmt::_internal_indirection() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.indirection_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +PLAssignStmt::_internal_mutable_indirection() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.indirection_; } -// ------------------------------------------------------------------- - -// CreateForeignTableStmt - -// .pg_query.CreateStmt base_stmt = 1 [json_name = "base"]; -inline bool CreateForeignTableStmt::_internal_has_base_stmt() const { - return this != internal_default_instance() && _impl_.base_stmt_ != nullptr; +// int32 nnames = 3 [json_name = "nnames"]; +inline void PLAssignStmt::clear_nnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.nnames_ = 0; } -inline bool CreateForeignTableStmt::has_base_stmt() const { - return _internal_has_base_stmt(); +inline ::int32_t PLAssignStmt::nnames() const { + // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.nnames) + return _internal_nnames(); } -inline void CreateForeignTableStmt::clear_base_stmt() { - if (GetArenaForAllocation() == nullptr && _impl_.base_stmt_ != nullptr) { - delete _impl_.base_stmt_; - } - _impl_.base_stmt_ = nullptr; +inline void PLAssignStmt::set_nnames(::int32_t value) { + _internal_set_nnames(value); + // @@protoc_insertion_point(field_set:pg_query.PLAssignStmt.nnames) } -inline const ::pg_query::CreateStmt& CreateForeignTableStmt::_internal_base_stmt() const { - const ::pg_query::CreateStmt* p = _impl_.base_stmt_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_CreateStmt_default_instance_); +inline ::int32_t PLAssignStmt::_internal_nnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.nnames_; } -inline const ::pg_query::CreateStmt& CreateForeignTableStmt::base_stmt() const { - // @@protoc_insertion_point(field_get:pg_query.CreateForeignTableStmt.base_stmt) - return _internal_base_stmt(); +inline void PLAssignStmt::_internal_set_nnames(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.nnames_ = value; +} + +// .pg_query.SelectStmt val = 4 [json_name = "val"]; +inline bool PLAssignStmt::has_val() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.val_ != nullptr); + return value; +} +inline void PLAssignStmt::clear_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.val_ != nullptr) _impl_.val_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void CreateForeignTableStmt::unsafe_arena_set_allocated_base_stmt( - ::pg_query::CreateStmt* base_stmt) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.base_stmt_); +inline const ::pg_query::SelectStmt& PLAssignStmt::_internal_val() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::SelectStmt* p = _impl_.val_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_SelectStmt_default_instance_); +} +inline const ::pg_query::SelectStmt& PLAssignStmt::val() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.val) + return _internal_val(); +} +inline void PLAssignStmt::unsafe_arena_set_allocated_val(::pg_query::SelectStmt* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.val_); } - _impl_.base_stmt_ = base_stmt; - if (base_stmt) { - + _impl_.val_ = reinterpret_cast<::pg_query::SelectStmt*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateForeignTableStmt.base_stmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PLAssignStmt.val) } -inline ::pg_query::CreateStmt* CreateForeignTableStmt::release_base_stmt() { - - ::pg_query::CreateStmt* temp = _impl_.base_stmt_; - _impl_.base_stmt_ = nullptr; +inline ::pg_query::SelectStmt* PLAssignStmt::release_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::SelectStmt* released = _impl_.val_; + _impl_.val_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::CreateStmt* CreateForeignTableStmt::unsafe_arena_release_base_stmt() { - // @@protoc_insertion_point(field_release:pg_query.CreateForeignTableStmt.base_stmt) - - ::pg_query::CreateStmt* temp = _impl_.base_stmt_; - _impl_.base_stmt_ = nullptr; +inline ::pg_query::SelectStmt* PLAssignStmt::unsafe_arena_release_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PLAssignStmt.val) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::SelectStmt* temp = _impl_.val_; + _impl_.val_ = nullptr; return temp; } -inline ::pg_query::CreateStmt* CreateForeignTableStmt::_internal_mutable_base_stmt() { - - if (_impl_.base_stmt_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::CreateStmt>(GetArenaForAllocation()); - _impl_.base_stmt_ = p; +inline ::pg_query::SelectStmt* PLAssignStmt::_internal_mutable_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.val_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::SelectStmt>(GetArena()); + _impl_.val_ = reinterpret_cast<::pg_query::SelectStmt*>(p); } - return _impl_.base_stmt_; + return _impl_.val_; } -inline ::pg_query::CreateStmt* CreateForeignTableStmt::mutable_base_stmt() { - ::pg_query::CreateStmt* _msg = _internal_mutable_base_stmt(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignTableStmt.base_stmt) +inline ::pg_query::SelectStmt* PLAssignStmt::mutable_val() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::SelectStmt* _msg = _internal_mutable_val(); + // @@protoc_insertion_point(field_mutable:pg_query.PLAssignStmt.val) return _msg; } -inline void CreateForeignTableStmt::set_allocated_base_stmt(::pg_query::CreateStmt* base_stmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void PLAssignStmt::set_allocated_val(::pg_query::SelectStmt* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.base_stmt_; + delete reinterpret_cast<::pg_query::SelectStmt*>(_impl_.val_); } - if (base_stmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(base_stmt); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::SelectStmt*>(value)->GetArena(); if (message_arena != submessage_arena) { - base_stmt = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, base_stmt, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.base_stmt_ = base_stmt; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignTableStmt.base_stmt) -} -// string servername = 2 [json_name = "servername"]; -inline void CreateForeignTableStmt::clear_servername() { - _impl_.servername_.ClearToEmpty(); -} -inline const std::string& CreateForeignTableStmt::servername() const { - // @@protoc_insertion_point(field_get:pg_query.CreateForeignTableStmt.servername) - return _internal_servername(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CreateForeignTableStmt::set_servername(ArgT0&& arg0, ArgT... args) { - - _impl_.servername_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateForeignTableStmt.servername) -} -inline std::string* CreateForeignTableStmt::mutable_servername() { - std::string* _s = _internal_mutable_servername(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignTableStmt.servername) - return _s; + _impl_.val_ = reinterpret_cast<::pg_query::SelectStmt*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.PLAssignStmt.val) } -inline const std::string& CreateForeignTableStmt::_internal_servername() const { - return _impl_.servername_.Get(); + +// int32 location = 5 [json_name = "location"]; +inline void PLAssignStmt::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline void CreateForeignTableStmt::_internal_set_servername(const std::string& value) { - - _impl_.servername_.Set(value, GetArenaForAllocation()); +inline ::int32_t PLAssignStmt::location() const { + // @@protoc_insertion_point(field_get:pg_query.PLAssignStmt.location) + return _internal_location(); } -inline std::string* CreateForeignTableStmt::_internal_mutable_servername() { - - return _impl_.servername_.Mutable(GetArenaForAllocation()); +inline void PLAssignStmt::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.PLAssignStmt.location) } -inline std::string* CreateForeignTableStmt::release_servername() { - // @@protoc_insertion_point(field_release:pg_query.CreateForeignTableStmt.servername) - return _impl_.servername_.Release(); +inline ::int32_t PLAssignStmt::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline void CreateForeignTableStmt::set_allocated_servername(std::string* servername) { - if (servername != nullptr) { - - } else { - - } - _impl_.servername_.SetAllocated(servername, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.servername_.IsDefault()) { - _impl_.servername_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignTableStmt.servername) +inline void PLAssignStmt::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -// repeated .pg_query.Node options = 3 [json_name = "options"]; -inline int CreateForeignTableStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int CreateForeignTableStmt::options_size() const { - return _internal_options_size(); +// ------------------------------------------------------------------- + +// CreateSchemaStmt + +// string schemaname = 1 [json_name = "schemaname"]; +inline void CreateSchemaStmt::clear_schemaname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.schemaname_.ClearToEmpty(); } -inline void CreateForeignTableStmt::clear_options() { - _impl_.options_.Clear(); +inline const std::string& CreateSchemaStmt::schemaname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateSchemaStmt.schemaname) + return _internal_schemaname(); } -inline ::pg_query::Node* CreateForeignTableStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignTableStmt.options) - return _impl_.options_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void CreateSchemaStmt::set_schemaname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.schemaname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateSchemaStmt.schemaname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateForeignTableStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateForeignTableStmt.options) - return &_impl_.options_; +inline std::string* CreateSchemaStmt::mutable_schemaname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_schemaname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateSchemaStmt.schemaname) + return _s; } -inline const ::pg_query::Node& CreateForeignTableStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline const std::string& CreateSchemaStmt::_internal_schemaname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.schemaname_.Get(); } -inline const ::pg_query::Node& CreateForeignTableStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateForeignTableStmt.options) - return _internal_options(index); +inline void CreateSchemaStmt::_internal_set_schemaname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.schemaname_.Set(value, GetArena()); } -inline ::pg_query::Node* CreateForeignTableStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline std::string* CreateSchemaStmt::_internal_mutable_schemaname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.schemaname_.Mutable( GetArena()); } -inline ::pg_query::Node* CreateForeignTableStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateForeignTableStmt.options) - return _add; +inline std::string* CreateSchemaStmt::release_schemaname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateSchemaStmt.schemaname) + return _impl_.schemaname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateForeignTableStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateForeignTableStmt.options) - return _impl_.options_; +inline void CreateSchemaStmt::set_allocated_schemaname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.schemaname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.schemaname_.IsDefault()) { + _impl_.schemaname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSchemaStmt.schemaname) } -// ------------------------------------------------------------------- - -// ImportForeignSchemaStmt - -// string server_name = 1 [json_name = "server_name"]; -inline void ImportForeignSchemaStmt::clear_server_name() { - _impl_.server_name_.ClearToEmpty(); +// .pg_query.RoleSpec authrole = 2 [json_name = "authrole"]; +inline bool CreateSchemaStmt::has_authrole() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.authrole_ != nullptr); + return value; } -inline const std::string& ImportForeignSchemaStmt::server_name() const { - // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.server_name) - return _internal_server_name(); +inline void CreateSchemaStmt::clear_authrole() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.authrole_ != nullptr) _impl_.authrole_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -template -inline PROTOBUF_ALWAYS_INLINE -void ImportForeignSchemaStmt::set_server_name(ArgT0&& arg0, ArgT... args) { - - _impl_.server_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ImportForeignSchemaStmt.server_name) +inline const ::pg_query::RoleSpec& CreateSchemaStmt::_internal_authrole() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.authrole_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); } -inline std::string* ImportForeignSchemaStmt::mutable_server_name() { - std::string* _s = _internal_mutable_server_name(); - // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.server_name) - return _s; +inline const ::pg_query::RoleSpec& CreateSchemaStmt::authrole() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateSchemaStmt.authrole) + return _internal_authrole(); } -inline const std::string& ImportForeignSchemaStmt::_internal_server_name() const { - return _impl_.server_name_.Get(); +inline void CreateSchemaStmt::unsafe_arena_set_allocated_authrole(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.authrole_); + } + _impl_.authrole_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateSchemaStmt.authrole) } -inline void ImportForeignSchemaStmt::_internal_set_server_name(const std::string& value) { - - _impl_.server_name_.Set(value, GetArenaForAllocation()); +inline ::pg_query::RoleSpec* CreateSchemaStmt::release_authrole() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.authrole_; + _impl_.authrole_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* ImportForeignSchemaStmt::_internal_mutable_server_name() { - - return _impl_.server_name_.Mutable(GetArenaForAllocation()); +inline ::pg_query::RoleSpec* CreateSchemaStmt::unsafe_arena_release_authrole() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateSchemaStmt.authrole) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.authrole_; + _impl_.authrole_ = nullptr; + return temp; } -inline std::string* ImportForeignSchemaStmt::release_server_name() { - // @@protoc_insertion_point(field_release:pg_query.ImportForeignSchemaStmt.server_name) - return _impl_.server_name_.Release(); +inline ::pg_query::RoleSpec* CreateSchemaStmt::_internal_mutable_authrole() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.authrole_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.authrole_ = reinterpret_cast<::pg_query::RoleSpec*>(p); + } + return _impl_.authrole_; } -inline void ImportForeignSchemaStmt::set_allocated_server_name(std::string* server_name) { - if (server_name != nullptr) { - - } else { - +inline ::pg_query::RoleSpec* CreateSchemaStmt::mutable_authrole() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_authrole(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateSchemaStmt.authrole) + return _msg; +} +inline void CreateSchemaStmt::set_allocated_authrole(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.authrole_); } - _impl_.server_name_.SetAllocated(server_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.server_name_.IsDefault()) { - _impl_.server_name_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ImportForeignSchemaStmt.server_name) + + _impl_.authrole_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSchemaStmt.authrole) } -// string remote_schema = 2 [json_name = "remote_schema"]; -inline void ImportForeignSchemaStmt::clear_remote_schema() { - _impl_.remote_schema_.ClearToEmpty(); +// repeated .pg_query.Node schema_elts = 3 [json_name = "schemaElts"]; +inline int CreateSchemaStmt::_internal_schema_elts_size() const { + return _internal_schema_elts().size(); } -inline const std::string& ImportForeignSchemaStmt::remote_schema() const { - // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.remote_schema) - return _internal_remote_schema(); +inline int CreateSchemaStmt::schema_elts_size() const { + return _internal_schema_elts_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ImportForeignSchemaStmt::set_remote_schema(ArgT0&& arg0, ArgT... args) { - - _impl_.remote_schema_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ImportForeignSchemaStmt.remote_schema) +inline void CreateSchemaStmt::clear_schema_elts() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.schema_elts_.Clear(); } -inline std::string* ImportForeignSchemaStmt::mutable_remote_schema() { - std::string* _s = _internal_mutable_remote_schema(); - // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.remote_schema) - return _s; +inline ::pg_query::Node* CreateSchemaStmt::mutable_schema_elts(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateSchemaStmt.schema_elts) + return _internal_mutable_schema_elts()->Mutable(index); } -inline const std::string& ImportForeignSchemaStmt::_internal_remote_schema() const { - return _impl_.remote_schema_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateSchemaStmt::mutable_schema_elts() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateSchemaStmt.schema_elts) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_schema_elts(); } -inline void ImportForeignSchemaStmt::_internal_set_remote_schema(const std::string& value) { - - _impl_.remote_schema_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& CreateSchemaStmt::schema_elts(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateSchemaStmt.schema_elts) + return _internal_schema_elts().Get(index); } -inline std::string* ImportForeignSchemaStmt::_internal_mutable_remote_schema() { - - return _impl_.remote_schema_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CreateSchemaStmt::add_schema_elts() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_schema_elts()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateSchemaStmt.schema_elts) + return _add; } -inline std::string* ImportForeignSchemaStmt::release_remote_schema() { - // @@protoc_insertion_point(field_release:pg_query.ImportForeignSchemaStmt.remote_schema) - return _impl_.remote_schema_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateSchemaStmt::schema_elts() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateSchemaStmt.schema_elts) + return _internal_schema_elts(); } -inline void ImportForeignSchemaStmt::set_allocated_remote_schema(std::string* remote_schema) { - if (remote_schema != nullptr) { - - } else { - - } - _impl_.remote_schema_.SetAllocated(remote_schema, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.remote_schema_.IsDefault()) { - _impl_.remote_schema_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ImportForeignSchemaStmt.remote_schema) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateSchemaStmt::_internal_schema_elts() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.schema_elts_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateSchemaStmt::_internal_mutable_schema_elts() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.schema_elts_; } -// string local_schema = 3 [json_name = "local_schema"]; -inline void ImportForeignSchemaStmt::clear_local_schema() { - _impl_.local_schema_.ClearToEmpty(); +// bool if_not_exists = 4 [json_name = "if_not_exists"]; +inline void CreateSchemaStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; } -inline const std::string& ImportForeignSchemaStmt::local_schema() const { - // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.local_schema) - return _internal_local_schema(); +inline bool CreateSchemaStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.CreateSchemaStmt.if_not_exists) + return _internal_if_not_exists(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ImportForeignSchemaStmt::set_local_schema(ArgT0&& arg0, ArgT... args) { - - _impl_.local_schema_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ImportForeignSchemaStmt.local_schema) +inline void CreateSchemaStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.CreateSchemaStmt.if_not_exists) } -inline std::string* ImportForeignSchemaStmt::mutable_local_schema() { - std::string* _s = _internal_mutable_local_schema(); - // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.local_schema) - return _s; +inline bool CreateSchemaStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; } -inline const std::string& ImportForeignSchemaStmt::_internal_local_schema() const { - return _impl_.local_schema_.Get(); +inline void CreateSchemaStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; } -inline void ImportForeignSchemaStmt::_internal_set_local_schema(const std::string& value) { - - _impl_.local_schema_.Set(value, GetArenaForAllocation()); + +// ------------------------------------------------------------------- + +// AlterTableStmt + +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool AlterTableStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline std::string* ImportForeignSchemaStmt::_internal_mutable_local_schema() { - - return _impl_.local_schema_.Mutable(GetArenaForAllocation()); +inline void AlterTableStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* ImportForeignSchemaStmt::release_local_schema() { - // @@protoc_insertion_point(field_release:pg_query.ImportForeignSchemaStmt.local_schema) - return _impl_.local_schema_.Release(); +inline const ::pg_query::RangeVar& AlterTableStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline void ImportForeignSchemaStmt::set_allocated_local_schema(std::string* local_schema) { - if (local_schema != nullptr) { - - } else { - +inline const ::pg_query::RangeVar& AlterTableStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableStmt.relation) + return _internal_relation(); +} +inline void AlterTableStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.local_schema_.SetAllocated(local_schema, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.local_schema_.IsDefault()) { - _impl_.local_schema_.Set("", GetArenaForAllocation()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ImportForeignSchemaStmt.local_schema) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterTableStmt.relation) } +inline ::pg_query::RangeVar* AlterTableStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// .pg_query.ImportForeignSchemaType list_type = 4 [json_name = "list_type"]; -inline void ImportForeignSchemaStmt::clear_list_type() { - _impl_.list_type_ = 0; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::ImportForeignSchemaType ImportForeignSchemaStmt::_internal_list_type() const { - return static_cast< ::pg_query::ImportForeignSchemaType >(_impl_.list_type_); +inline ::pg_query::RangeVar* AlterTableStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterTableStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline ::pg_query::ImportForeignSchemaType ImportForeignSchemaStmt::list_type() const { - // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.list_type) - return _internal_list_type(); +inline ::pg_query::RangeVar* AlterTableStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; } -inline void ImportForeignSchemaStmt::_internal_set_list_type(::pg_query::ImportForeignSchemaType value) { - - _impl_.list_type_ = value; +inline ::pg_query::RangeVar* AlterTableStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableStmt.relation) + return _msg; } -inline void ImportForeignSchemaStmt::set_list_type(::pg_query::ImportForeignSchemaType value) { - _internal_set_list_type(value); - // @@protoc_insertion_point(field_set:pg_query.ImportForeignSchemaStmt.list_type) +inline void AlterTableStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableStmt.relation) } -// repeated .pg_query.Node table_list = 5 [json_name = "table_list"]; -inline int ImportForeignSchemaStmt::_internal_table_list_size() const { - return _impl_.table_list_.size(); +// repeated .pg_query.Node cmds = 2 [json_name = "cmds"]; +inline int AlterTableStmt::_internal_cmds_size() const { + return _internal_cmds().size(); } -inline int ImportForeignSchemaStmt::table_list_size() const { - return _internal_table_list_size(); +inline int AlterTableStmt::cmds_size() const { + return _internal_cmds_size(); } -inline void ImportForeignSchemaStmt::clear_table_list() { - _impl_.table_list_.Clear(); +inline void AlterTableStmt::clear_cmds() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cmds_.Clear(); } -inline ::pg_query::Node* ImportForeignSchemaStmt::mutable_table_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.table_list) - return _impl_.table_list_.Mutable(index); +inline ::pg_query::Node* AlterTableStmt::mutable_cmds(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableStmt.cmds) + return _internal_mutable_cmds()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ImportForeignSchemaStmt::mutable_table_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ImportForeignSchemaStmt.table_list) - return &_impl_.table_list_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTableStmt::mutable_cmds() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTableStmt.cmds) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_cmds(); } -inline const ::pg_query::Node& ImportForeignSchemaStmt::_internal_table_list(int index) const { - return _impl_.table_list_.Get(index); +inline const ::pg_query::Node& AlterTableStmt::cmds(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableStmt.cmds) + return _internal_cmds().Get(index); } -inline const ::pg_query::Node& ImportForeignSchemaStmt::table_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.table_list) - return _internal_table_list(index); +inline ::pg_query::Node* AlterTableStmt::add_cmds() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_cmds()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTableStmt.cmds) + return _add; } -inline ::pg_query::Node* ImportForeignSchemaStmt::_internal_add_table_list() { - return _impl_.table_list_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTableStmt::cmds() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTableStmt.cmds) + return _internal_cmds(); } -inline ::pg_query::Node* ImportForeignSchemaStmt::add_table_list() { - ::pg_query::Node* _add = _internal_add_table_list(); - // @@protoc_insertion_point(field_add:pg_query.ImportForeignSchemaStmt.table_list) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTableStmt::_internal_cmds() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cmds_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ImportForeignSchemaStmt::table_list() const { - // @@protoc_insertion_point(field_list:pg_query.ImportForeignSchemaStmt.table_list) - return _impl_.table_list_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTableStmt::_internal_mutable_cmds() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.cmds_; } -// repeated .pg_query.Node options = 6 [json_name = "options"]; -inline int ImportForeignSchemaStmt::_internal_options_size() const { - return _impl_.options_.size(); +// .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; +inline void AlterTableStmt::clear_objtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objtype_ = 0; } -inline int ImportForeignSchemaStmt::options_size() const { - return _internal_options_size(); +inline ::pg_query::ObjectType AlterTableStmt::objtype() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableStmt.objtype) + return _internal_objtype(); } -inline void ImportForeignSchemaStmt::clear_options() { - _impl_.options_.Clear(); +inline void AlterTableStmt::set_objtype(::pg_query::ObjectType value) { + _internal_set_objtype(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableStmt.objtype) } -inline ::pg_query::Node* ImportForeignSchemaStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.options) - return _impl_.options_.Mutable(index); +inline ::pg_query::ObjectType AlterTableStmt::_internal_objtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.objtype_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ImportForeignSchemaStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ImportForeignSchemaStmt.options) - return &_impl_.options_; +inline void AlterTableStmt::_internal_set_objtype(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.objtype_ = value; } -inline const ::pg_query::Node& ImportForeignSchemaStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); + +// bool missing_ok = 4 [json_name = "missing_ok"]; +inline void AlterTableStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline const ::pg_query::Node& ImportForeignSchemaStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.options) - return _internal_options(index); +inline bool AlterTableStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableStmt.missing_ok) + return _internal_missing_ok(); } -inline ::pg_query::Node* ImportForeignSchemaStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline void AlterTableStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableStmt.missing_ok) } -inline ::pg_query::Node* ImportForeignSchemaStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.ImportForeignSchemaStmt.options) - return _add; +inline bool AlterTableStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ImportForeignSchemaStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.ImportForeignSchemaStmt.options) - return _impl_.options_; +inline void AlterTableStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } // ------------------------------------------------------------------- -// CreateExtensionStmt +// ReplicaIdentityStmt -// string extname = 1 [json_name = "extname"]; -inline void CreateExtensionStmt::clear_extname() { - _impl_.extname_.ClearToEmpty(); +// string identity_type = 1 [json_name = "identity_type"]; +inline void ReplicaIdentityStmt::clear_identity_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.identity_type_.ClearToEmpty(); } -inline const std::string& CreateExtensionStmt::extname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateExtensionStmt.extname) - return _internal_extname(); +inline const std::string& ReplicaIdentityStmt::identity_type() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ReplicaIdentityStmt.identity_type) + return _internal_identity_type(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateExtensionStmt::set_extname(ArgT0&& arg0, ArgT... args) { - - _impl_.extname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateExtensionStmt.extname) +template +inline PROTOBUF_ALWAYS_INLINE void ReplicaIdentityStmt::set_identity_type(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.identity_type_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ReplicaIdentityStmt.identity_type) } -inline std::string* CreateExtensionStmt::mutable_extname() { - std::string* _s = _internal_mutable_extname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateExtensionStmt.extname) +inline std::string* ReplicaIdentityStmt::mutable_identity_type() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_identity_type(); + // @@protoc_insertion_point(field_mutable:pg_query.ReplicaIdentityStmt.identity_type) return _s; } -inline const std::string& CreateExtensionStmt::_internal_extname() const { - return _impl_.extname_.Get(); -} -inline void CreateExtensionStmt::_internal_set_extname(const std::string& value) { - - _impl_.extname_.Set(value, GetArenaForAllocation()); -} -inline std::string* CreateExtensionStmt::_internal_mutable_extname() { - - return _impl_.extname_.Mutable(GetArenaForAllocation()); -} -inline std::string* CreateExtensionStmt::release_extname() { - // @@protoc_insertion_point(field_release:pg_query.CreateExtensionStmt.extname) - return _impl_.extname_.Release(); -} -inline void CreateExtensionStmt::set_allocated_extname(std::string* extname) { - if (extname != nullptr) { - - } else { - - } - _impl_.extname_.SetAllocated(extname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.extname_.IsDefault()) { - _impl_.extname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateExtensionStmt.extname) -} - -// bool if_not_exists = 2 [json_name = "if_not_exists"]; -inline void CreateExtensionStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +inline const std::string& ReplicaIdentityStmt::_internal_identity_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.identity_type_.Get(); } -inline bool CreateExtensionStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline void ReplicaIdentityStmt::_internal_set_identity_type(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.identity_type_.Set(value, GetArena()); } -inline bool CreateExtensionStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.CreateExtensionStmt.if_not_exists) - return _internal_if_not_exists(); +inline std::string* ReplicaIdentityStmt::_internal_mutable_identity_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.identity_type_.Mutable( GetArena()); } -inline void CreateExtensionStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline std::string* ReplicaIdentityStmt::release_identity_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ReplicaIdentityStmt.identity_type) + return _impl_.identity_type_.Release(); } -inline void CreateExtensionStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.CreateExtensionStmt.if_not_exists) +inline void ReplicaIdentityStmt::set_allocated_identity_type(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.identity_type_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.identity_type_.IsDefault()) { + _impl_.identity_type_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ReplicaIdentityStmt.identity_type) } -// repeated .pg_query.Node options = 3 [json_name = "options"]; -inline int CreateExtensionStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int CreateExtensionStmt::options_size() const { - return _internal_options_size(); +// string name = 2 [json_name = "name"]; +inline void ReplicaIdentityStmt::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline void CreateExtensionStmt::clear_options() { - _impl_.options_.Clear(); +inline const std::string& ReplicaIdentityStmt::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ReplicaIdentityStmt.name) + return _internal_name(); } -inline ::pg_query::Node* CreateExtensionStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateExtensionStmt.options) - return _impl_.options_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void ReplicaIdentityStmt::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ReplicaIdentityStmt.name) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateExtensionStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateExtensionStmt.options) - return &_impl_.options_; +inline std::string* ReplicaIdentityStmt::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.ReplicaIdentityStmt.name) + return _s; } -inline const ::pg_query::Node& CreateExtensionStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline const std::string& ReplicaIdentityStmt::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline const ::pg_query::Node& CreateExtensionStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateExtensionStmt.options) - return _internal_options(index); +inline void ReplicaIdentityStmt::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline ::pg_query::Node* CreateExtensionStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline std::string* ReplicaIdentityStmt::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline ::pg_query::Node* CreateExtensionStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateExtensionStmt.options) - return _add; +inline std::string* ReplicaIdentityStmt::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ReplicaIdentityStmt.name) + return _impl_.name_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateExtensionStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateExtensionStmt.options) - return _impl_.options_; +inline void ReplicaIdentityStmt::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ReplicaIdentityStmt.name) } // ------------------------------------------------------------------- -// AlterExtensionStmt +// AlterTableCmd -// string extname = 1 [json_name = "extname"]; -inline void AlterExtensionStmt::clear_extname() { - _impl_.extname_.ClearToEmpty(); -} -inline const std::string& AlterExtensionStmt::extname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterExtensionStmt.extname) - return _internal_extname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AlterExtensionStmt::set_extname(ArgT0&& arg0, ArgT... args) { - - _impl_.extname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterExtensionStmt.extname) -} -inline std::string* AlterExtensionStmt::mutable_extname() { - std::string* _s = _internal_mutable_extname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterExtensionStmt.extname) - return _s; -} -inline const std::string& AlterExtensionStmt::_internal_extname() const { - return _impl_.extname_.Get(); +// .pg_query.AlterTableType subtype = 1 [json_name = "subtype"]; +inline void AlterTableCmd::clear_subtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subtype_ = 0; } -inline void AlterExtensionStmt::_internal_set_extname(const std::string& value) { - - _impl_.extname_.Set(value, GetArenaForAllocation()); +inline ::pg_query::AlterTableType AlterTableCmd::subtype() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.subtype) + return _internal_subtype(); } -inline std::string* AlterExtensionStmt::_internal_mutable_extname() { - - return _impl_.extname_.Mutable(GetArenaForAllocation()); +inline void AlterTableCmd::set_subtype(::pg_query::AlterTableType value) { + _internal_set_subtype(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.subtype) } -inline std::string* AlterExtensionStmt::release_extname() { - // @@protoc_insertion_point(field_release:pg_query.AlterExtensionStmt.extname) - return _impl_.extname_.Release(); +inline ::pg_query::AlterTableType AlterTableCmd::_internal_subtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::AlterTableType>(_impl_.subtype_); } -inline void AlterExtensionStmt::set_allocated_extname(std::string* extname) { - if (extname != nullptr) { - - } else { - - } - _impl_.extname_.SetAllocated(extname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.extname_.IsDefault()) { - _impl_.extname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterExtensionStmt.extname) +inline void AlterTableCmd::_internal_set_subtype(::pg_query::AlterTableType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subtype_ = value; } -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int AlterExtensionStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int AlterExtensionStmt::options_size() const { - return _internal_options_size(); +// string name = 2 [json_name = "name"]; +inline void AlterTableCmd::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline void AlterExtensionStmt::clear_options() { - _impl_.options_.Clear(); +inline const std::string& AlterTableCmd::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.name) + return _internal_name(); } -inline ::pg_query::Node* AlterExtensionStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterExtensionStmt.options) - return _impl_.options_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void AlterTableCmd::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.name) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterExtensionStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterExtensionStmt.options) - return &_impl_.options_; +inline std::string* AlterTableCmd::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableCmd.name) + return _s; } -inline const ::pg_query::Node& AlterExtensionStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline const std::string& AlterTableCmd::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline const ::pg_query::Node& AlterExtensionStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterExtensionStmt.options) - return _internal_options(index); +inline void AlterTableCmd::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline ::pg_query::Node* AlterExtensionStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline std::string* AlterTableCmd::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline ::pg_query::Node* AlterExtensionStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterExtensionStmt.options) - return _add; +inline std::string* AlterTableCmd::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterTableCmd.name) + return _impl_.name_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterExtensionStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterExtensionStmt.options) - return _impl_.options_; +inline void AlterTableCmd::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableCmd.name) } -// ------------------------------------------------------------------- - -// AlterExtensionContentsStmt - -// string extname = 1 [json_name = "extname"]; -inline void AlterExtensionContentsStmt::clear_extname() { - _impl_.extname_.ClearToEmpty(); +// int32 num = 3 [json_name = "num"]; +inline void AlterTableCmd::clear_num() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.num_ = 0; } -inline const std::string& AlterExtensionContentsStmt::extname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterExtensionContentsStmt.extname) - return _internal_extname(); +inline ::int32_t AlterTableCmd::num() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.num) + return _internal_num(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterExtensionContentsStmt::set_extname(ArgT0&& arg0, ArgT... args) { - - _impl_.extname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterExtensionContentsStmt.extname) +inline void AlterTableCmd::set_num(::int32_t value) { + _internal_set_num(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.num) } -inline std::string* AlterExtensionContentsStmt::mutable_extname() { - std::string* _s = _internal_mutable_extname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterExtensionContentsStmt.extname) - return _s; +inline ::int32_t AlterTableCmd::_internal_num() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.num_; } -inline const std::string& AlterExtensionContentsStmt::_internal_extname() const { - return _impl_.extname_.Get(); +inline void AlterTableCmd::_internal_set_num(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.num_ = value; } -inline void AlterExtensionContentsStmt::_internal_set_extname(const std::string& value) { - - _impl_.extname_.Set(value, GetArenaForAllocation()); + +// .pg_query.RoleSpec newowner = 4 [json_name = "newowner"]; +inline bool AlterTableCmd::has_newowner() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.newowner_ != nullptr); + return value; } -inline std::string* AlterExtensionContentsStmt::_internal_mutable_extname() { - - return _impl_.extname_.Mutable(GetArenaForAllocation()); +inline void AlterTableCmd::clear_newowner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.newowner_ != nullptr) _impl_.newowner_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* AlterExtensionContentsStmt::release_extname() { - // @@protoc_insertion_point(field_release:pg_query.AlterExtensionContentsStmt.extname) - return _impl_.extname_.Release(); +inline const ::pg_query::RoleSpec& AlterTableCmd::_internal_newowner() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.newowner_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); } -inline void AlterExtensionContentsStmt::set_allocated_extname(std::string* extname) { - if (extname != nullptr) { - - } else { - +inline const ::pg_query::RoleSpec& AlterTableCmd::newowner() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.newowner) + return _internal_newowner(); +} +inline void AlterTableCmd::unsafe_arena_set_allocated_newowner(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.newowner_); } - _impl_.extname_.SetAllocated(extname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.extname_.IsDefault()) { - _impl_.extname_.Set("", GetArenaForAllocation()); + _impl_.newowner_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterExtensionContentsStmt.extname) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterTableCmd.newowner) } +inline ::pg_query::RoleSpec* AlterTableCmd::release_newowner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// int32 action = 2 [json_name = "action"]; -inline void AlterExtensionContentsStmt::clear_action() { - _impl_.action_ = 0; -} -inline int32_t AlterExtensionContentsStmt::_internal_action() const { - return _impl_.action_; -} -inline int32_t AlterExtensionContentsStmt::action() const { - // @@protoc_insertion_point(field_get:pg_query.AlterExtensionContentsStmt.action) - return _internal_action(); -} -inline void AlterExtensionContentsStmt::_internal_set_action(int32_t value) { - - _impl_.action_ = value; -} -inline void AlterExtensionContentsStmt::set_action(int32_t value) { - _internal_set_action(value); - // @@protoc_insertion_point(field_set:pg_query.AlterExtensionContentsStmt.action) + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.newowner_; + _impl_.newowner_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::RoleSpec* AlterTableCmd::unsafe_arena_release_newowner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterTableCmd.newowner) -// .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; -inline void AlterExtensionContentsStmt::clear_objtype() { - _impl_.objtype_ = 0; -} -inline ::pg_query::ObjectType AlterExtensionContentsStmt::_internal_objtype() const { - return static_cast< ::pg_query::ObjectType >(_impl_.objtype_); -} -inline ::pg_query::ObjectType AlterExtensionContentsStmt::objtype() const { - // @@protoc_insertion_point(field_get:pg_query.AlterExtensionContentsStmt.objtype) - return _internal_objtype(); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.newowner_; + _impl_.newowner_ = nullptr; + return temp; } -inline void AlterExtensionContentsStmt::_internal_set_objtype(::pg_query::ObjectType value) { - - _impl_.objtype_ = value; +inline ::pg_query::RoleSpec* AlterTableCmd::_internal_mutable_newowner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.newowner_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.newowner_ = reinterpret_cast<::pg_query::RoleSpec*>(p); + } + return _impl_.newowner_; } -inline void AlterExtensionContentsStmt::set_objtype(::pg_query::ObjectType value) { - _internal_set_objtype(value); - // @@protoc_insertion_point(field_set:pg_query.AlterExtensionContentsStmt.objtype) +inline ::pg_query::RoleSpec* AlterTableCmd::mutable_newowner() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_newowner(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableCmd.newowner) + return _msg; } +inline void AlterTableCmd::set_allocated_newowner(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.newowner_); + } -// .pg_query.Node object = 4 [json_name = "object"]; -inline bool AlterExtensionContentsStmt::_internal_has_object() const { - return this != internal_default_instance() && _impl_.object_ != nullptr; + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.newowner_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableCmd.newowner) } -inline bool AlterExtensionContentsStmt::has_object() const { - return _internal_has_object(); + +// .pg_query.Node def = 5 [json_name = "def"]; +inline bool AlterTableCmd::has_def() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.def_ != nullptr); + return value; } -inline void AlterExtensionContentsStmt::clear_object() { - if (GetArenaForAllocation() == nullptr && _impl_.object_ != nullptr) { - delete _impl_.object_; - } - _impl_.object_ = nullptr; +inline void AlterTableCmd::clear_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.def_ != nullptr) _impl_.def_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& AlterExtensionContentsStmt::_internal_object() const { - const ::pg_query::Node* p = _impl_.object_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& AlterTableCmd::_internal_def() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.def_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& AlterExtensionContentsStmt::object() const { - // @@protoc_insertion_point(field_get:pg_query.AlterExtensionContentsStmt.object) - return _internal_object(); +inline const ::pg_query::Node& AlterTableCmd::def() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.def) + return _internal_def(); } -inline void AlterExtensionContentsStmt::unsafe_arena_set_allocated_object( - ::pg_query::Node* object) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.object_); +inline void AlterTableCmd::unsafe_arena_set_allocated_def(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.def_); } - _impl_.object_ = object; - if (object) { - + _impl_.def_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterExtensionContentsStmt.object) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterTableCmd.def) } -inline ::pg_query::Node* AlterExtensionContentsStmt::release_object() { - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::Node* AlterTableCmd::release_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.def_; + _impl_.def_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* AlterExtensionContentsStmt::unsafe_arena_release_object() { - // @@protoc_insertion_point(field_release:pg_query.AlterExtensionContentsStmt.object) - - ::pg_query::Node* temp = _impl_.object_; - _impl_.object_ = nullptr; +inline ::pg_query::Node* AlterTableCmd::unsafe_arena_release_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterTableCmd.def) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.def_; + _impl_.def_ = nullptr; return temp; } -inline ::pg_query::Node* AlterExtensionContentsStmt::_internal_mutable_object() { - - if (_impl_.object_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.object_ = p; +inline ::pg_query::Node* AlterTableCmd::_internal_mutable_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.def_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.def_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.object_; + return _impl_.def_; } -inline ::pg_query::Node* AlterExtensionContentsStmt::mutable_object() { - ::pg_query::Node* _msg = _internal_mutable_object(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterExtensionContentsStmt.object) +inline ::pg_query::Node* AlterTableCmd::mutable_def() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_def(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableCmd.def) return _msg; } -inline void AlterExtensionContentsStmt::set_allocated_object(::pg_query::Node* object) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterTableCmd::set_allocated_def(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.object_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.def_); } - if (object) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(object); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - object = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, object, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.object_ = object; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterExtensionContentsStmt.object) -} -// ------------------------------------------------------------------- + _impl_.def_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableCmd.def) +} -// CreateEventTrigStmt +// .pg_query.DropBehavior behavior = 6 [json_name = "behavior"]; +inline void AlterTableCmd::clear_behavior() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.behavior_ = 0; +} +inline ::pg_query::DropBehavior AlterTableCmd::behavior() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.behavior) + return _internal_behavior(); +} +inline void AlterTableCmd::set_behavior(::pg_query::DropBehavior value) { + _internal_set_behavior(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.behavior) +} +inline ::pg_query::DropBehavior AlterTableCmd::_internal_behavior() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DropBehavior>(_impl_.behavior_); +} +inline void AlterTableCmd::_internal_set_behavior(::pg_query::DropBehavior value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.behavior_ = value; +} -// string trigname = 1 [json_name = "trigname"]; -inline void CreateEventTrigStmt::clear_trigname() { - _impl_.trigname_.ClearToEmpty(); +// bool missing_ok = 7 [json_name = "missing_ok"]; +inline void AlterTableCmd::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline const std::string& CreateEventTrigStmt::trigname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateEventTrigStmt.trigname) - return _internal_trigname(); +inline bool AlterTableCmd::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.missing_ok) + return _internal_missing_ok(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateEventTrigStmt::set_trigname(ArgT0&& arg0, ArgT... args) { - - _impl_.trigname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateEventTrigStmt.trigname) +inline void AlterTableCmd::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.missing_ok) } -inline std::string* CreateEventTrigStmt::mutable_trigname() { - std::string* _s = _internal_mutable_trigname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateEventTrigStmt.trigname) - return _s; +inline bool AlterTableCmd::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline const std::string& CreateEventTrigStmt::_internal_trigname() const { - return _impl_.trigname_.Get(); +inline void AlterTableCmd::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } -inline void CreateEventTrigStmt::_internal_set_trigname(const std::string& value) { - - _impl_.trigname_.Set(value, GetArenaForAllocation()); + +// bool recurse = 8 [json_name = "recurse"]; +inline void AlterTableCmd::clear_recurse() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.recurse_ = false; } -inline std::string* CreateEventTrigStmt::_internal_mutable_trigname() { - - return _impl_.trigname_.Mutable(GetArenaForAllocation()); +inline bool AlterTableCmd::recurse() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableCmd.recurse) + return _internal_recurse(); } -inline std::string* CreateEventTrigStmt::release_trigname() { - // @@protoc_insertion_point(field_release:pg_query.CreateEventTrigStmt.trigname) - return _impl_.trigname_.Release(); +inline void AlterTableCmd::set_recurse(bool value) { + _internal_set_recurse(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableCmd.recurse) } -inline void CreateEventTrigStmt::set_allocated_trigname(std::string* trigname) { - if (trigname != nullptr) { - - } else { - - } - _impl_.trigname_.SetAllocated(trigname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.trigname_.IsDefault()) { - _impl_.trigname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateEventTrigStmt.trigname) +inline bool AlterTableCmd::_internal_recurse() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.recurse_; +} +inline void AlterTableCmd::_internal_set_recurse(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.recurse_ = value; } -// string eventname = 2 [json_name = "eventname"]; -inline void CreateEventTrigStmt::clear_eventname() { - _impl_.eventname_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// AlterCollationStmt + +// repeated .pg_query.Node collname = 1 [json_name = "collname"]; +inline int AlterCollationStmt::_internal_collname_size() const { + return _internal_collname().size(); } -inline const std::string& CreateEventTrigStmt::eventname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateEventTrigStmt.eventname) - return _internal_eventname(); +inline int AlterCollationStmt::collname_size() const { + return _internal_collname_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateEventTrigStmt::set_eventname(ArgT0&& arg0, ArgT... args) { - - _impl_.eventname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateEventTrigStmt.eventname) +inline void AlterCollationStmt::clear_collname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.collname_.Clear(); } -inline std::string* CreateEventTrigStmt::mutable_eventname() { - std::string* _s = _internal_mutable_eventname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateEventTrigStmt.eventname) - return _s; +inline ::pg_query::Node* AlterCollationStmt::mutable_collname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterCollationStmt.collname) + return _internal_mutable_collname()->Mutable(index); } -inline const std::string& CreateEventTrigStmt::_internal_eventname() const { - return _impl_.eventname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterCollationStmt::mutable_collname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterCollationStmt.collname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_collname(); } -inline void CreateEventTrigStmt::_internal_set_eventname(const std::string& value) { - - _impl_.eventname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& AlterCollationStmt::collname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterCollationStmt.collname) + return _internal_collname().Get(index); } -inline std::string* CreateEventTrigStmt::_internal_mutable_eventname() { - - return _impl_.eventname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* AlterCollationStmt::add_collname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_collname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterCollationStmt.collname) + return _add; } -inline std::string* CreateEventTrigStmt::release_eventname() { - // @@protoc_insertion_point(field_release:pg_query.CreateEventTrigStmt.eventname) - return _impl_.eventname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterCollationStmt::collname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterCollationStmt.collname) + return _internal_collname(); } -inline void CreateEventTrigStmt::set_allocated_eventname(std::string* eventname) { - if (eventname != nullptr) { - - } else { - - } - _impl_.eventname_.SetAllocated(eventname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.eventname_.IsDefault()) { - _impl_.eventname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateEventTrigStmt.eventname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterCollationStmt::_internal_collname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.collname_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterCollationStmt::_internal_mutable_collname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.collname_; } -// repeated .pg_query.Node whenclause = 3 [json_name = "whenclause"]; -inline int CreateEventTrigStmt::_internal_whenclause_size() const { - return _impl_.whenclause_.size(); +// ------------------------------------------------------------------- + +// AlterDomainStmt + +// string subtype = 1 [json_name = "subtype"]; +inline void AlterDomainStmt::clear_subtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subtype_.ClearToEmpty(); } -inline int CreateEventTrigStmt::whenclause_size() const { - return _internal_whenclause_size(); +inline const std::string& AlterDomainStmt::subtype() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.subtype) + return _internal_subtype(); +} +template +inline PROTOBUF_ALWAYS_INLINE void AlterDomainStmt::set_subtype(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subtype_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterDomainStmt.subtype) +} +inline std::string* AlterDomainStmt::mutable_subtype() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_subtype(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterDomainStmt.subtype) + return _s; +} +inline const std::string& AlterDomainStmt::_internal_subtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.subtype_.Get(); +} +inline void AlterDomainStmt::_internal_set_subtype(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subtype_.Set(value, GetArena()); +} +inline std::string* AlterDomainStmt::_internal_mutable_subtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.subtype_.Mutable( GetArena()); +} +inline std::string* AlterDomainStmt::release_subtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterDomainStmt.subtype) + return _impl_.subtype_.Release(); +} +inline void AlterDomainStmt::set_allocated_subtype(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subtype_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.subtype_.IsDefault()) { + _impl_.subtype_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDomainStmt.subtype) } -inline void CreateEventTrigStmt::clear_whenclause() { - _impl_.whenclause_.Clear(); + +// repeated .pg_query.Node type_name = 2 [json_name = "typeName"]; +inline int AlterDomainStmt::_internal_type_name_size() const { + return _internal_type_name().size(); } -inline ::pg_query::Node* CreateEventTrigStmt::mutable_whenclause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateEventTrigStmt.whenclause) - return _impl_.whenclause_.Mutable(index); +inline int AlterDomainStmt::type_name_size() const { + return _internal_type_name_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateEventTrigStmt::mutable_whenclause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateEventTrigStmt.whenclause) - return &_impl_.whenclause_; +inline void AlterDomainStmt::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_name_.Clear(); } -inline const ::pg_query::Node& CreateEventTrigStmt::_internal_whenclause(int index) const { - return _impl_.whenclause_.Get(index); +inline ::pg_query::Node* AlterDomainStmt::mutable_type_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterDomainStmt.type_name) + return _internal_mutable_type_name()->Mutable(index); } -inline const ::pg_query::Node& CreateEventTrigStmt::whenclause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateEventTrigStmt.whenclause) - return _internal_whenclause(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterDomainStmt::mutable_type_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterDomainStmt.type_name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_type_name(); } -inline ::pg_query::Node* CreateEventTrigStmt::_internal_add_whenclause() { - return _impl_.whenclause_.Add(); +inline const ::pg_query::Node& AlterDomainStmt::type_name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.type_name) + return _internal_type_name().Get(index); } -inline ::pg_query::Node* CreateEventTrigStmt::add_whenclause() { - ::pg_query::Node* _add = _internal_add_whenclause(); - // @@protoc_insertion_point(field_add:pg_query.CreateEventTrigStmt.whenclause) +inline ::pg_query::Node* AlterDomainStmt::add_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_type_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterDomainStmt.type_name) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateEventTrigStmt::whenclause() const { - // @@protoc_insertion_point(field_list:pg_query.CreateEventTrigStmt.whenclause) - return _impl_.whenclause_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterDomainStmt::type_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterDomainStmt.type_name) + return _internal_type_name(); } - -// repeated .pg_query.Node funcname = 4 [json_name = "funcname"]; -inline int CreateEventTrigStmt::_internal_funcname_size() const { - return _impl_.funcname_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterDomainStmt::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_name_; } -inline int CreateEventTrigStmt::funcname_size() const { - return _internal_funcname_size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterDomainStmt::_internal_mutable_type_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.type_name_; } -inline void CreateEventTrigStmt::clear_funcname() { - _impl_.funcname_.Clear(); + +// string name = 3 [json_name = "name"]; +inline void AlterDomainStmt::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline ::pg_query::Node* CreateEventTrigStmt::mutable_funcname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateEventTrigStmt.funcname) - return _impl_.funcname_.Mutable(index); +inline const std::string& AlterDomainStmt::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.name) + return _internal_name(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateEventTrigStmt::mutable_funcname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateEventTrigStmt.funcname) - return &_impl_.funcname_; +template +inline PROTOBUF_ALWAYS_INLINE void AlterDomainStmt::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterDomainStmt.name) +} +inline std::string* AlterDomainStmt::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterDomainStmt.name) + return _s; } -inline const ::pg_query::Node& CreateEventTrigStmt::_internal_funcname(int index) const { - return _impl_.funcname_.Get(index); +inline const std::string& AlterDomainStmt::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline const ::pg_query::Node& CreateEventTrigStmt::funcname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateEventTrigStmt.funcname) - return _internal_funcname(index); +inline void AlterDomainStmt::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline ::pg_query::Node* CreateEventTrigStmt::_internal_add_funcname() { - return _impl_.funcname_.Add(); +inline std::string* AlterDomainStmt::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline ::pg_query::Node* CreateEventTrigStmt::add_funcname() { - ::pg_query::Node* _add = _internal_add_funcname(); - // @@protoc_insertion_point(field_add:pg_query.CreateEventTrigStmt.funcname) - return _add; +inline std::string* AlterDomainStmt::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterDomainStmt.name) + return _impl_.name_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateEventTrigStmt::funcname() const { - // @@protoc_insertion_point(field_list:pg_query.CreateEventTrigStmt.funcname) - return _impl_.funcname_; +inline void AlterDomainStmt::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDomainStmt.name) } -// ------------------------------------------------------------------- - -// AlterEventTrigStmt - -// string trigname = 1 [json_name = "trigname"]; -inline void AlterEventTrigStmt::clear_trigname() { - _impl_.trigname_.ClearToEmpty(); +// .pg_query.Node def = 4 [json_name = "def"]; +inline bool AlterDomainStmt::has_def() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.def_ != nullptr); + return value; } -inline const std::string& AlterEventTrigStmt::trigname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterEventTrigStmt.trigname) - return _internal_trigname(); +inline void AlterDomainStmt::clear_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.def_ != nullptr) _impl_.def_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterEventTrigStmt::set_trigname(ArgT0&& arg0, ArgT... args) { - - _impl_.trigname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterEventTrigStmt.trigname) +inline const ::pg_query::Node& AlterDomainStmt::_internal_def() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.def_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* AlterEventTrigStmt::mutable_trigname() { - std::string* _s = _internal_mutable_trigname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterEventTrigStmt.trigname) - return _s; +inline const ::pg_query::Node& AlterDomainStmt::def() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.def) + return _internal_def(); } -inline const std::string& AlterEventTrigStmt::_internal_trigname() const { - return _impl_.trigname_.Get(); +inline void AlterDomainStmt::unsafe_arena_set_allocated_def(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.def_); + } + _impl_.def_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterDomainStmt.def) } -inline void AlterEventTrigStmt::_internal_set_trigname(const std::string& value) { - - _impl_.trigname_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Node* AlterDomainStmt::release_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.def_; + _impl_.def_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* AlterEventTrigStmt::_internal_mutable_trigname() { - - return _impl_.trigname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* AlterDomainStmt::unsafe_arena_release_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterDomainStmt.def) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.def_; + _impl_.def_ = nullptr; + return temp; } -inline std::string* AlterEventTrigStmt::release_trigname() { - // @@protoc_insertion_point(field_release:pg_query.AlterEventTrigStmt.trigname) - return _impl_.trigname_.Release(); +inline ::pg_query::Node* AlterDomainStmt::_internal_mutable_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.def_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.def_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.def_; } -inline void AlterEventTrigStmt::set_allocated_trigname(std::string* trigname) { - if (trigname != nullptr) { - - } else { - +inline ::pg_query::Node* AlterDomainStmt::mutable_def() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_def(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterDomainStmt.def) + return _msg; +} +inline void AlterDomainStmt::set_allocated_def(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.def_); } - _impl_.trigname_.SetAllocated(trigname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.trigname_.IsDefault()) { - _impl_.trigname_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEventTrigStmt.trigname) + + _impl_.def_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDomainStmt.def) } -// string tgenabled = 2 [json_name = "tgenabled"]; -inline void AlterEventTrigStmt::clear_tgenabled() { - _impl_.tgenabled_.ClearToEmpty(); +// .pg_query.DropBehavior behavior = 5 [json_name = "behavior"]; +inline void AlterDomainStmt::clear_behavior() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.behavior_ = 0; } -inline const std::string& AlterEventTrigStmt::tgenabled() const { - // @@protoc_insertion_point(field_get:pg_query.AlterEventTrigStmt.tgenabled) - return _internal_tgenabled(); +inline ::pg_query::DropBehavior AlterDomainStmt::behavior() const { + // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.behavior) + return _internal_behavior(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterEventTrigStmt::set_tgenabled(ArgT0&& arg0, ArgT... args) { - - _impl_.tgenabled_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterEventTrigStmt.tgenabled) +inline void AlterDomainStmt::set_behavior(::pg_query::DropBehavior value) { + _internal_set_behavior(value); + // @@protoc_insertion_point(field_set:pg_query.AlterDomainStmt.behavior) } -inline std::string* AlterEventTrigStmt::mutable_tgenabled() { - std::string* _s = _internal_mutable_tgenabled(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterEventTrigStmt.tgenabled) - return _s; +inline ::pg_query::DropBehavior AlterDomainStmt::_internal_behavior() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DropBehavior>(_impl_.behavior_); } -inline const std::string& AlterEventTrigStmt::_internal_tgenabled() const { - return _impl_.tgenabled_.Get(); +inline void AlterDomainStmt::_internal_set_behavior(::pg_query::DropBehavior value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.behavior_ = value; } -inline void AlterEventTrigStmt::_internal_set_tgenabled(const std::string& value) { - - _impl_.tgenabled_.Set(value, GetArenaForAllocation()); + +// bool missing_ok = 6 [json_name = "missing_ok"]; +inline void AlterDomainStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline std::string* AlterEventTrigStmt::_internal_mutable_tgenabled() { - - return _impl_.tgenabled_.Mutable(GetArenaForAllocation()); +inline bool AlterDomainStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.AlterDomainStmt.missing_ok) + return _internal_missing_ok(); } -inline std::string* AlterEventTrigStmt::release_tgenabled() { - // @@protoc_insertion_point(field_release:pg_query.AlterEventTrigStmt.tgenabled) - return _impl_.tgenabled_.Release(); +inline void AlterDomainStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.AlterDomainStmt.missing_ok) } -inline void AlterEventTrigStmt::set_allocated_tgenabled(std::string* tgenabled) { - if (tgenabled != nullptr) { - - } else { - - } - _impl_.tgenabled_.SetAllocated(tgenabled, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.tgenabled_.IsDefault()) { - _impl_.tgenabled_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEventTrigStmt.tgenabled) +inline bool AlterDomainStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; +} +inline void AlterDomainStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } // ------------------------------------------------------------------- -// RefreshMatViewStmt +// GrantStmt -// bool concurrent = 1 [json_name = "concurrent"]; -inline void RefreshMatViewStmt::clear_concurrent() { - _impl_.concurrent_ = false; +// bool is_grant = 1 [json_name = "is_grant"]; +inline void GrantStmt::clear_is_grant() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_grant_ = false; } -inline bool RefreshMatViewStmt::_internal_concurrent() const { - return _impl_.concurrent_; +inline bool GrantStmt::is_grant() const { + // @@protoc_insertion_point(field_get:pg_query.GrantStmt.is_grant) + return _internal_is_grant(); } -inline bool RefreshMatViewStmt::concurrent() const { - // @@protoc_insertion_point(field_get:pg_query.RefreshMatViewStmt.concurrent) - return _internal_concurrent(); +inline void GrantStmt::set_is_grant(bool value) { + _internal_set_is_grant(value); + // @@protoc_insertion_point(field_set:pg_query.GrantStmt.is_grant) } -inline void RefreshMatViewStmt::_internal_set_concurrent(bool value) { - - _impl_.concurrent_ = value; +inline bool GrantStmt::_internal_is_grant() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_grant_; } -inline void RefreshMatViewStmt::set_concurrent(bool value) { - _internal_set_concurrent(value); - // @@protoc_insertion_point(field_set:pg_query.RefreshMatViewStmt.concurrent) +inline void GrantStmt::_internal_set_is_grant(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_grant_ = value; } -// bool skip_data = 2 [json_name = "skipData"]; -inline void RefreshMatViewStmt::clear_skip_data() { - _impl_.skip_data_ = false; +// .pg_query.GrantTargetType targtype = 2 [json_name = "targtype"]; +inline void GrantStmt::clear_targtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.targtype_ = 0; } -inline bool RefreshMatViewStmt::_internal_skip_data() const { - return _impl_.skip_data_; +inline ::pg_query::GrantTargetType GrantStmt::targtype() const { + // @@protoc_insertion_point(field_get:pg_query.GrantStmt.targtype) + return _internal_targtype(); } -inline bool RefreshMatViewStmt::skip_data() const { - // @@protoc_insertion_point(field_get:pg_query.RefreshMatViewStmt.skip_data) - return _internal_skip_data(); +inline void GrantStmt::set_targtype(::pg_query::GrantTargetType value) { + _internal_set_targtype(value); + // @@protoc_insertion_point(field_set:pg_query.GrantStmt.targtype) } -inline void RefreshMatViewStmt::_internal_set_skip_data(bool value) { - - _impl_.skip_data_ = value; +inline ::pg_query::GrantTargetType GrantStmt::_internal_targtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::GrantTargetType>(_impl_.targtype_); } -inline void RefreshMatViewStmt::set_skip_data(bool value) { - _internal_set_skip_data(value); - // @@protoc_insertion_point(field_set:pg_query.RefreshMatViewStmt.skip_data) +inline void GrantStmt::_internal_set_targtype(::pg_query::GrantTargetType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.targtype_ = value; } -// .pg_query.RangeVar relation = 3 [json_name = "relation"]; -inline bool RefreshMatViewStmt::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; +// .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; +inline void GrantStmt::clear_objtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objtype_ = 0; } -inline bool RefreshMatViewStmt::has_relation() const { - return _internal_has_relation(); +inline ::pg_query::ObjectType GrantStmt::objtype() const { + // @@protoc_insertion_point(field_get:pg_query.GrantStmt.objtype) + return _internal_objtype(); } -inline void RefreshMatViewStmt::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void GrantStmt::set_objtype(::pg_query::ObjectType value) { + _internal_set_objtype(value); + // @@protoc_insertion_point(field_set:pg_query.GrantStmt.objtype) } -inline const ::pg_query::RangeVar& RefreshMatViewStmt::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline ::pg_query::ObjectType GrantStmt::_internal_objtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.objtype_); } -inline const ::pg_query::RangeVar& RefreshMatViewStmt::relation() const { - // @@protoc_insertion_point(field_get:pg_query.RefreshMatViewStmt.relation) - return _internal_relation(); +inline void GrantStmt::_internal_set_objtype(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.objtype_ = value; } -inline void RefreshMatViewStmt::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); - } - _impl_.relation_ = relation; - if (relation) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RefreshMatViewStmt.relation) + +// repeated .pg_query.Node objects = 4 [json_name = "objects"]; +inline int GrantStmt::_internal_objects_size() const { + return _internal_objects().size(); } -inline ::pg_query::RangeVar* RefreshMatViewStmt::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline int GrantStmt::objects_size() const { + return _internal_objects_size(); } -inline ::pg_query::RangeVar* RefreshMatViewStmt::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.RefreshMatViewStmt.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; - return temp; +inline void GrantStmt::clear_objects() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objects_.Clear(); } -inline ::pg_query::RangeVar* RefreshMatViewStmt::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; - } - return _impl_.relation_; +inline ::pg_query::Node* GrantStmt::mutable_objects(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.GrantStmt.objects) + return _internal_mutable_objects()->Mutable(index); } -inline ::pg_query::RangeVar* RefreshMatViewStmt::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.RefreshMatViewStmt.relation) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* GrantStmt::mutable_objects() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.GrantStmt.objects) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_objects(); } -inline void RefreshMatViewStmt::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.relation_; - } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); - if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); - } - - } else { - - } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.RefreshMatViewStmt.relation) +inline const ::pg_query::Node& GrantStmt::objects(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GrantStmt.objects) + return _internal_objects().Get(index); +} +inline ::pg_query::Node* GrantStmt::add_objects() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_objects()->Add(); + // @@protoc_insertion_point(field_add:pg_query.GrantStmt.objects) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& GrantStmt::objects() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.GrantStmt.objects) + return _internal_objects(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +GrantStmt::_internal_objects() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.objects_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +GrantStmt::_internal_mutable_objects() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.objects_; } -// ------------------------------------------------------------------- - -// ReplicaIdentityStmt - -// string identity_type = 1 [json_name = "identity_type"]; -inline void ReplicaIdentityStmt::clear_identity_type() { - _impl_.identity_type_.ClearToEmpty(); +// repeated .pg_query.Node privileges = 5 [json_name = "privileges"]; +inline int GrantStmt::_internal_privileges_size() const { + return _internal_privileges().size(); } -inline const std::string& ReplicaIdentityStmt::identity_type() const { - // @@protoc_insertion_point(field_get:pg_query.ReplicaIdentityStmt.identity_type) - return _internal_identity_type(); +inline int GrantStmt::privileges_size() const { + return _internal_privileges_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ReplicaIdentityStmt::set_identity_type(ArgT0&& arg0, ArgT... args) { - - _impl_.identity_type_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ReplicaIdentityStmt.identity_type) +inline void GrantStmt::clear_privileges() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.privileges_.Clear(); } -inline std::string* ReplicaIdentityStmt::mutable_identity_type() { - std::string* _s = _internal_mutable_identity_type(); - // @@protoc_insertion_point(field_mutable:pg_query.ReplicaIdentityStmt.identity_type) - return _s; +inline ::pg_query::Node* GrantStmt::mutable_privileges(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.GrantStmt.privileges) + return _internal_mutable_privileges()->Mutable(index); } -inline const std::string& ReplicaIdentityStmt::_internal_identity_type() const { - return _impl_.identity_type_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* GrantStmt::mutable_privileges() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.GrantStmt.privileges) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_privileges(); } -inline void ReplicaIdentityStmt::_internal_set_identity_type(const std::string& value) { - - _impl_.identity_type_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& GrantStmt::privileges(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GrantStmt.privileges) + return _internal_privileges().Get(index); } -inline std::string* ReplicaIdentityStmt::_internal_mutable_identity_type() { - - return _impl_.identity_type_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* GrantStmt::add_privileges() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_privileges()->Add(); + // @@protoc_insertion_point(field_add:pg_query.GrantStmt.privileges) + return _add; } -inline std::string* ReplicaIdentityStmt::release_identity_type() { - // @@protoc_insertion_point(field_release:pg_query.ReplicaIdentityStmt.identity_type) - return _impl_.identity_type_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& GrantStmt::privileges() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.GrantStmt.privileges) + return _internal_privileges(); } -inline void ReplicaIdentityStmt::set_allocated_identity_type(std::string* identity_type) { - if (identity_type != nullptr) { - - } else { - - } - _impl_.identity_type_.SetAllocated(identity_type, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.identity_type_.IsDefault()) { - _impl_.identity_type_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ReplicaIdentityStmt.identity_type) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +GrantStmt::_internal_privileges() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.privileges_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +GrantStmt::_internal_mutable_privileges() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.privileges_; } -// string name = 2 [json_name = "name"]; -inline void ReplicaIdentityStmt::clear_name() { - _impl_.name_.ClearToEmpty(); +// repeated .pg_query.Node grantees = 6 [json_name = "grantees"]; +inline int GrantStmt::_internal_grantees_size() const { + return _internal_grantees().size(); } -inline const std::string& ReplicaIdentityStmt::name() const { - // @@protoc_insertion_point(field_get:pg_query.ReplicaIdentityStmt.name) - return _internal_name(); +inline int GrantStmt::grantees_size() const { + return _internal_grantees_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ReplicaIdentityStmt::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ReplicaIdentityStmt.name) +inline void GrantStmt::clear_grantees() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.grantees_.Clear(); } -inline std::string* ReplicaIdentityStmt::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.ReplicaIdentityStmt.name) - return _s; +inline ::pg_query::Node* GrantStmt::mutable_grantees(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.GrantStmt.grantees) + return _internal_mutable_grantees()->Mutable(index); } -inline const std::string& ReplicaIdentityStmt::_internal_name() const { - return _impl_.name_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* GrantStmt::mutable_grantees() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.GrantStmt.grantees) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_grantees(); } -inline void ReplicaIdentityStmt::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& GrantStmt::grantees(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GrantStmt.grantees) + return _internal_grantees().Get(index); } -inline std::string* ReplicaIdentityStmt::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* GrantStmt::add_grantees() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_grantees()->Add(); + // @@protoc_insertion_point(field_add:pg_query.GrantStmt.grantees) + return _add; } -inline std::string* ReplicaIdentityStmt::release_name() { - // @@protoc_insertion_point(field_release:pg_query.ReplicaIdentityStmt.name) - return _impl_.name_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& GrantStmt::grantees() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.GrantStmt.grantees) + return _internal_grantees(); } -inline void ReplicaIdentityStmt::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ReplicaIdentityStmt.name) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +GrantStmt::_internal_grantees() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.grantees_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +GrantStmt::_internal_mutable_grantees() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.grantees_; } -// ------------------------------------------------------------------- - -// AlterSystemStmt - -// .pg_query.VariableSetStmt setstmt = 1 [json_name = "setstmt"]; -inline bool AlterSystemStmt::_internal_has_setstmt() const { - return this != internal_default_instance() && _impl_.setstmt_ != nullptr; +// bool grant_option = 7 [json_name = "grant_option"]; +inline void GrantStmt::clear_grant_option() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.grant_option_ = false; } -inline bool AlterSystemStmt::has_setstmt() const { - return _internal_has_setstmt(); +inline bool GrantStmt::grant_option() const { + // @@protoc_insertion_point(field_get:pg_query.GrantStmt.grant_option) + return _internal_grant_option(); } -inline void AlterSystemStmt::clear_setstmt() { - if (GetArenaForAllocation() == nullptr && _impl_.setstmt_ != nullptr) { - delete _impl_.setstmt_; - } - _impl_.setstmt_ = nullptr; +inline void GrantStmt::set_grant_option(bool value) { + _internal_set_grant_option(value); + // @@protoc_insertion_point(field_set:pg_query.GrantStmt.grant_option) } -inline const ::pg_query::VariableSetStmt& AlterSystemStmt::_internal_setstmt() const { - const ::pg_query::VariableSetStmt* p = _impl_.setstmt_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_VariableSetStmt_default_instance_); +inline bool GrantStmt::_internal_grant_option() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.grant_option_; } -inline const ::pg_query::VariableSetStmt& AlterSystemStmt::setstmt() const { - // @@protoc_insertion_point(field_get:pg_query.AlterSystemStmt.setstmt) - return _internal_setstmt(); +inline void GrantStmt::_internal_set_grant_option(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.grant_option_ = value; +} + +// .pg_query.RoleSpec grantor = 8 [json_name = "grantor"]; +inline bool GrantStmt::has_grantor() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.grantor_ != nullptr); + return value; +} +inline void GrantStmt::clear_grantor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.grantor_ != nullptr) _impl_.grantor_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RoleSpec& GrantStmt::_internal_grantor() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.grantor_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); +} +inline const ::pg_query::RoleSpec& GrantStmt::grantor() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GrantStmt.grantor) + return _internal_grantor(); } -inline void AlterSystemStmt::unsafe_arena_set_allocated_setstmt( - ::pg_query::VariableSetStmt* setstmt) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.setstmt_); +inline void GrantStmt::unsafe_arena_set_allocated_grantor(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.grantor_); } - _impl_.setstmt_ = setstmt; - if (setstmt) { - + _impl_.grantor_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterSystemStmt.setstmt) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.GrantStmt.grantor) } -inline ::pg_query::VariableSetStmt* AlterSystemStmt::release_setstmt() { - - ::pg_query::VariableSetStmt* temp = _impl_.setstmt_; - _impl_.setstmt_ = nullptr; +inline ::pg_query::RoleSpec* GrantStmt::release_grantor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.grantor_; + _impl_.grantor_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::VariableSetStmt* AlterSystemStmt::unsafe_arena_release_setstmt() { - // @@protoc_insertion_point(field_release:pg_query.AlterSystemStmt.setstmt) - - ::pg_query::VariableSetStmt* temp = _impl_.setstmt_; - _impl_.setstmt_ = nullptr; +inline ::pg_query::RoleSpec* GrantStmt::unsafe_arena_release_grantor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.GrantStmt.grantor) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.grantor_; + _impl_.grantor_ = nullptr; return temp; } -inline ::pg_query::VariableSetStmt* AlterSystemStmt::_internal_mutable_setstmt() { - - if (_impl_.setstmt_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::VariableSetStmt>(GetArenaForAllocation()); - _impl_.setstmt_ = p; +inline ::pg_query::RoleSpec* GrantStmt::_internal_mutable_grantor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.grantor_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.grantor_ = reinterpret_cast<::pg_query::RoleSpec*>(p); } - return _impl_.setstmt_; + return _impl_.grantor_; } -inline ::pg_query::VariableSetStmt* AlterSystemStmt::mutable_setstmt() { - ::pg_query::VariableSetStmt* _msg = _internal_mutable_setstmt(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterSystemStmt.setstmt) +inline ::pg_query::RoleSpec* GrantStmt::mutable_grantor() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_grantor(); + // @@protoc_insertion_point(field_mutable:pg_query.GrantStmt.grantor) return _msg; } -inline void AlterSystemStmt::set_allocated_setstmt(::pg_query::VariableSetStmt* setstmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void GrantStmt::set_allocated_grantor(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.setstmt_; + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.grantor_); } - if (setstmt) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(setstmt); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); if (message_arena != submessage_arena) { - setstmt = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, setstmt, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.setstmt_ = setstmt; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterSystemStmt.setstmt) -} - -// ------------------------------------------------------------------- - -// CreatePolicyStmt -// string policy_name = 1 [json_name = "policy_name"]; -inline void CreatePolicyStmt::clear_policy_name() { - _impl_.policy_name_.ClearToEmpty(); -} -inline const std::string& CreatePolicyStmt::policy_name() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.policy_name) - return _internal_policy_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CreatePolicyStmt::set_policy_name(ArgT0&& arg0, ArgT... args) { - - _impl_.policy_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreatePolicyStmt.policy_name) -} -inline std::string* CreatePolicyStmt::mutable_policy_name() { - std::string* _s = _internal_mutable_policy_name(); - // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.policy_name) - return _s; -} -inline const std::string& CreatePolicyStmt::_internal_policy_name() const { - return _impl_.policy_name_.Get(); -} -inline void CreatePolicyStmt::_internal_set_policy_name(const std::string& value) { - - _impl_.policy_name_.Set(value, GetArenaForAllocation()); -} -inline std::string* CreatePolicyStmt::_internal_mutable_policy_name() { - - return _impl_.policy_name_.Mutable(GetArenaForAllocation()); -} -inline std::string* CreatePolicyStmt::release_policy_name() { - // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.policy_name) - return _impl_.policy_name_.Release(); -} -inline void CreatePolicyStmt::set_allocated_policy_name(std::string* policy_name) { - if (policy_name != nullptr) { - - } else { - - } - _impl_.policy_name_.SetAllocated(policy_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.policy_name_.IsDefault()) { - _impl_.policy_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.policy_name) + _impl_.grantor_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.GrantStmt.grantor) } -// .pg_query.RangeVar table = 2 [json_name = "table"]; -inline bool CreatePolicyStmt::_internal_has_table() const { - return this != internal_default_instance() && _impl_.table_ != nullptr; +// .pg_query.DropBehavior behavior = 9 [json_name = "behavior"]; +inline void GrantStmt::clear_behavior() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.behavior_ = 0; } -inline bool CreatePolicyStmt::has_table() const { - return _internal_has_table(); +inline ::pg_query::DropBehavior GrantStmt::behavior() const { + // @@protoc_insertion_point(field_get:pg_query.GrantStmt.behavior) + return _internal_behavior(); } -inline void CreatePolicyStmt::clear_table() { - if (GetArenaForAllocation() == nullptr && _impl_.table_ != nullptr) { - delete _impl_.table_; - } - _impl_.table_ = nullptr; +inline void GrantStmt::set_behavior(::pg_query::DropBehavior value) { + _internal_set_behavior(value); + // @@protoc_insertion_point(field_set:pg_query.GrantStmt.behavior) } -inline const ::pg_query::RangeVar& CreatePolicyStmt::_internal_table() const { - const ::pg_query::RangeVar* p = _impl_.table_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline ::pg_query::DropBehavior GrantStmt::_internal_behavior() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DropBehavior>(_impl_.behavior_); } -inline const ::pg_query::RangeVar& CreatePolicyStmt::table() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.table) - return _internal_table(); +inline void GrantStmt::_internal_set_behavior(::pg_query::DropBehavior value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.behavior_ = value; } -inline void CreatePolicyStmt::unsafe_arena_set_allocated_table( - ::pg_query::RangeVar* table) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.table_); - } - _impl_.table_ = table; - if (table) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreatePolicyStmt.table) + +// ------------------------------------------------------------------- + +// ObjectWithArgs + +// repeated .pg_query.Node objname = 1 [json_name = "objname"]; +inline int ObjectWithArgs::_internal_objname_size() const { + return _internal_objname().size(); } -inline ::pg_query::RangeVar* CreatePolicyStmt::release_table() { - - ::pg_query::RangeVar* temp = _impl_.table_; - _impl_.table_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline int ObjectWithArgs::objname_size() const { + return _internal_objname_size(); } -inline ::pg_query::RangeVar* CreatePolicyStmt::unsafe_arena_release_table() { - // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.table) - - ::pg_query::RangeVar* temp = _impl_.table_; - _impl_.table_ = nullptr; - return temp; +inline void ObjectWithArgs::clear_objname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objname_.Clear(); } -inline ::pg_query::RangeVar* CreatePolicyStmt::_internal_mutable_table() { - - if (_impl_.table_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.table_ = p; - } - return _impl_.table_; +inline ::pg_query::Node* ObjectWithArgs::mutable_objname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ObjectWithArgs.objname) + return _internal_mutable_objname()->Mutable(index); } -inline ::pg_query::RangeVar* CreatePolicyStmt::mutable_table() { - ::pg_query::RangeVar* _msg = _internal_mutable_table(); - // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.table) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ObjectWithArgs::mutable_objname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ObjectWithArgs.objname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_objname(); } -inline void CreatePolicyStmt::set_allocated_table(::pg_query::RangeVar* table) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.table_; - } - if (table) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(table); - if (message_arena != submessage_arena) { - table = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, table, submessage_arena); - } - - } else { - - } - _impl_.table_ = table; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.table) +inline const ::pg_query::Node& ObjectWithArgs::objname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ObjectWithArgs.objname) + return _internal_objname().Get(index); } - -// string cmd_name = 3 [json_name = "cmd_name"]; -inline void CreatePolicyStmt::clear_cmd_name() { - _impl_.cmd_name_.ClearToEmpty(); +inline ::pg_query::Node* ObjectWithArgs::add_objname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_objname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ObjectWithArgs.objname) + return _add; } -inline const std::string& CreatePolicyStmt::cmd_name() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.cmd_name) - return _internal_cmd_name(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ObjectWithArgs::objname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ObjectWithArgs.objname) + return _internal_objname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreatePolicyStmt::set_cmd_name(ArgT0&& arg0, ArgT... args) { - - _impl_.cmd_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreatePolicyStmt.cmd_name) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ObjectWithArgs::_internal_objname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.objname_; } -inline std::string* CreatePolicyStmt::mutable_cmd_name() { - std::string* _s = _internal_mutable_cmd_name(); - // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.cmd_name) - return _s; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ObjectWithArgs::_internal_mutable_objname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.objname_; } -inline const std::string& CreatePolicyStmt::_internal_cmd_name() const { - return _impl_.cmd_name_.Get(); + +// repeated .pg_query.Node objargs = 2 [json_name = "objargs"]; +inline int ObjectWithArgs::_internal_objargs_size() const { + return _internal_objargs().size(); } -inline void CreatePolicyStmt::_internal_set_cmd_name(const std::string& value) { - - _impl_.cmd_name_.Set(value, GetArenaForAllocation()); +inline int ObjectWithArgs::objargs_size() const { + return _internal_objargs_size(); } -inline std::string* CreatePolicyStmt::_internal_mutable_cmd_name() { - - return _impl_.cmd_name_.Mutable(GetArenaForAllocation()); +inline void ObjectWithArgs::clear_objargs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objargs_.Clear(); } -inline std::string* CreatePolicyStmt::release_cmd_name() { - // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.cmd_name) - return _impl_.cmd_name_.Release(); +inline ::pg_query::Node* ObjectWithArgs::mutable_objargs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ObjectWithArgs.objargs) + return _internal_mutable_objargs()->Mutable(index); } -inline void CreatePolicyStmt::set_allocated_cmd_name(std::string* cmd_name) { - if (cmd_name != nullptr) { - - } else { - - } - _impl_.cmd_name_.SetAllocated(cmd_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.cmd_name_.IsDefault()) { - _impl_.cmd_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.cmd_name) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ObjectWithArgs::mutable_objargs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ObjectWithArgs.objargs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_objargs(); } - -// bool permissive = 4 [json_name = "permissive"]; -inline void CreatePolicyStmt::clear_permissive() { - _impl_.permissive_ = false; +inline const ::pg_query::Node& ObjectWithArgs::objargs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ObjectWithArgs.objargs) + return _internal_objargs().Get(index); } -inline bool CreatePolicyStmt::_internal_permissive() const { - return _impl_.permissive_; +inline ::pg_query::Node* ObjectWithArgs::add_objargs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_objargs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ObjectWithArgs.objargs) + return _add; } -inline bool CreatePolicyStmt::permissive() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.permissive) - return _internal_permissive(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ObjectWithArgs::objargs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ObjectWithArgs.objargs) + return _internal_objargs(); } -inline void CreatePolicyStmt::_internal_set_permissive(bool value) { - - _impl_.permissive_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ObjectWithArgs::_internal_objargs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.objargs_; } -inline void CreatePolicyStmt::set_permissive(bool value) { - _internal_set_permissive(value); - // @@protoc_insertion_point(field_set:pg_query.CreatePolicyStmt.permissive) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ObjectWithArgs::_internal_mutable_objargs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.objargs_; } -// repeated .pg_query.Node roles = 5 [json_name = "roles"]; -inline int CreatePolicyStmt::_internal_roles_size() const { - return _impl_.roles_.size(); +// repeated .pg_query.Node objfuncargs = 3 [json_name = "objfuncargs"]; +inline int ObjectWithArgs::_internal_objfuncargs_size() const { + return _internal_objfuncargs().size(); } -inline int CreatePolicyStmt::roles_size() const { - return _internal_roles_size(); +inline int ObjectWithArgs::objfuncargs_size() const { + return _internal_objfuncargs_size(); } -inline void CreatePolicyStmt::clear_roles() { - _impl_.roles_.Clear(); +inline void ObjectWithArgs::clear_objfuncargs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objfuncargs_.Clear(); } -inline ::pg_query::Node* CreatePolicyStmt::mutable_roles(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.roles) - return _impl_.roles_.Mutable(index); +inline ::pg_query::Node* ObjectWithArgs::mutable_objfuncargs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ObjectWithArgs.objfuncargs) + return _internal_mutable_objfuncargs()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreatePolicyStmt::mutable_roles() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePolicyStmt.roles) - return &_impl_.roles_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ObjectWithArgs::mutable_objfuncargs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ObjectWithArgs.objfuncargs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_objfuncargs(); } -inline const ::pg_query::Node& CreatePolicyStmt::_internal_roles(int index) const { - return _impl_.roles_.Get(index); +inline const ::pg_query::Node& ObjectWithArgs::objfuncargs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ObjectWithArgs.objfuncargs) + return _internal_objfuncargs().Get(index); } -inline const ::pg_query::Node& CreatePolicyStmt::roles(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.roles) - return _internal_roles(index); +inline ::pg_query::Node* ObjectWithArgs::add_objfuncargs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_objfuncargs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ObjectWithArgs.objfuncargs) + return _add; } -inline ::pg_query::Node* CreatePolicyStmt::_internal_add_roles() { - return _impl_.roles_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ObjectWithArgs::objfuncargs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ObjectWithArgs.objfuncargs) + return _internal_objfuncargs(); } -inline ::pg_query::Node* CreatePolicyStmt::add_roles() { - ::pg_query::Node* _add = _internal_add_roles(); - // @@protoc_insertion_point(field_add:pg_query.CreatePolicyStmt.roles) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ObjectWithArgs::_internal_objfuncargs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.objfuncargs_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreatePolicyStmt::roles() const { - // @@protoc_insertion_point(field_list:pg_query.CreatePolicyStmt.roles) - return _impl_.roles_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ObjectWithArgs::_internal_mutable_objfuncargs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.objfuncargs_; } -// .pg_query.Node qual = 6 [json_name = "qual"]; -inline bool CreatePolicyStmt::_internal_has_qual() const { - return this != internal_default_instance() && _impl_.qual_ != nullptr; +// bool args_unspecified = 4 [json_name = "args_unspecified"]; +inline void ObjectWithArgs::clear_args_unspecified() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_unspecified_ = false; } -inline bool CreatePolicyStmt::has_qual() const { - return _internal_has_qual(); +inline bool ObjectWithArgs::args_unspecified() const { + // @@protoc_insertion_point(field_get:pg_query.ObjectWithArgs.args_unspecified) + return _internal_args_unspecified(); } -inline void CreatePolicyStmt::clear_qual() { - if (GetArenaForAllocation() == nullptr && _impl_.qual_ != nullptr) { - delete _impl_.qual_; - } - _impl_.qual_ = nullptr; +inline void ObjectWithArgs::set_args_unspecified(bool value) { + _internal_set_args_unspecified(value); + // @@protoc_insertion_point(field_set:pg_query.ObjectWithArgs.args_unspecified) } -inline const ::pg_query::Node& CreatePolicyStmt::_internal_qual() const { - const ::pg_query::Node* p = _impl_.qual_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline bool ObjectWithArgs::_internal_args_unspecified() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_unspecified_; } -inline const ::pg_query::Node& CreatePolicyStmt::qual() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.qual) - return _internal_qual(); +inline void ObjectWithArgs::_internal_set_args_unspecified(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.args_unspecified_ = value; } -inline void CreatePolicyStmt::unsafe_arena_set_allocated_qual( - ::pg_query::Node* qual) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.qual_); - } - _impl_.qual_ = qual; - if (qual) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreatePolicyStmt.qual) + +// ------------------------------------------------------------------- + +// AccessPriv + +// string priv_name = 1 [json_name = "priv_name"]; +inline void AccessPriv::clear_priv_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.priv_name_.ClearToEmpty(); } -inline ::pg_query::Node* CreatePolicyStmt::release_qual() { - - ::pg_query::Node* temp = _impl_.qual_; - _impl_.qual_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const std::string& AccessPriv::priv_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AccessPriv.priv_name) + return _internal_priv_name(); } -inline ::pg_query::Node* CreatePolicyStmt::unsafe_arena_release_qual() { - // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.qual) - - ::pg_query::Node* temp = _impl_.qual_; - _impl_.qual_ = nullptr; - return temp; +template +inline PROTOBUF_ALWAYS_INLINE void AccessPriv::set_priv_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.priv_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AccessPriv.priv_name) } -inline ::pg_query::Node* CreatePolicyStmt::_internal_mutable_qual() { - - if (_impl_.qual_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.qual_ = p; - } - return _impl_.qual_; +inline std::string* AccessPriv::mutable_priv_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_priv_name(); + // @@protoc_insertion_point(field_mutable:pg_query.AccessPriv.priv_name) + return _s; } -inline ::pg_query::Node* CreatePolicyStmt::mutable_qual() { - ::pg_query::Node* _msg = _internal_mutable_qual(); - // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.qual) - return _msg; +inline const std::string& AccessPriv::_internal_priv_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.priv_name_.Get(); } -inline void CreatePolicyStmt::set_allocated_qual(::pg_query::Node* qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.qual_; - } - if (qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(qual); - if (message_arena != submessage_arena) { - qual = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, qual, submessage_arena); - } - - } else { - - } - _impl_.qual_ = qual; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.qual) +inline void AccessPriv::_internal_set_priv_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.priv_name_.Set(value, GetArena()); } - -// .pg_query.Node with_check = 7 [json_name = "with_check"]; -inline bool CreatePolicyStmt::_internal_has_with_check() const { - return this != internal_default_instance() && _impl_.with_check_ != nullptr; +inline std::string* AccessPriv::_internal_mutable_priv_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.priv_name_.Mutable( GetArena()); } -inline bool CreatePolicyStmt::has_with_check() const { - return _internal_has_with_check(); +inline std::string* AccessPriv::release_priv_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AccessPriv.priv_name) + return _impl_.priv_name_.Release(); } -inline void CreatePolicyStmt::clear_with_check() { - if (GetArenaForAllocation() == nullptr && _impl_.with_check_ != nullptr) { - delete _impl_.with_check_; - } - _impl_.with_check_ = nullptr; +inline void AccessPriv::set_allocated_priv_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.priv_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.priv_name_.IsDefault()) { + _impl_.priv_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AccessPriv.priv_name) } -inline const ::pg_query::Node& CreatePolicyStmt::_internal_with_check() const { - const ::pg_query::Node* p = _impl_.with_check_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + +// repeated .pg_query.Node cols = 2 [json_name = "cols"]; +inline int AccessPriv::_internal_cols_size() const { + return _internal_cols().size(); } -inline const ::pg_query::Node& CreatePolicyStmt::with_check() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.with_check) - return _internal_with_check(); +inline int AccessPriv::cols_size() const { + return _internal_cols_size(); } -inline void CreatePolicyStmt::unsafe_arena_set_allocated_with_check( - ::pg_query::Node* with_check) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.with_check_); - } - _impl_.with_check_ = with_check; - if (with_check) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreatePolicyStmt.with_check) +inline void AccessPriv::clear_cols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cols_.Clear(); } -inline ::pg_query::Node* CreatePolicyStmt::release_with_check() { - - ::pg_query::Node* temp = _impl_.with_check_; - _impl_.with_check_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::pg_query::Node* AccessPriv::mutable_cols(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AccessPriv.cols) + return _internal_mutable_cols()->Mutable(index); } -inline ::pg_query::Node* CreatePolicyStmt::unsafe_arena_release_with_check() { - // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.with_check) - - ::pg_query::Node* temp = _impl_.with_check_; - _impl_.with_check_ = nullptr; - return temp; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AccessPriv::mutable_cols() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AccessPriv.cols) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_cols(); } -inline ::pg_query::Node* CreatePolicyStmt::_internal_mutable_with_check() { - - if (_impl_.with_check_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.with_check_ = p; - } - return _impl_.with_check_; +inline const ::pg_query::Node& AccessPriv::cols(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AccessPriv.cols) + return _internal_cols().Get(index); } -inline ::pg_query::Node* CreatePolicyStmt::mutable_with_check() { - ::pg_query::Node* _msg = _internal_mutable_with_check(); - // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.with_check) - return _msg; +inline ::pg_query::Node* AccessPriv::add_cols() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_cols()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AccessPriv.cols) + return _add; } -inline void CreatePolicyStmt::set_allocated_with_check(::pg_query::Node* with_check) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.with_check_; - } - if (with_check) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(with_check); - if (message_arena != submessage_arena) { - with_check = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, with_check, submessage_arena); - } - - } else { - - } - _impl_.with_check_ = with_check; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.with_check) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AccessPriv::cols() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AccessPriv.cols) + return _internal_cols(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AccessPriv::_internal_cols() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cols_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AccessPriv::_internal_mutable_cols() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.cols_; } // ------------------------------------------------------------------- -// AlterPolicyStmt +// GrantRoleStmt -// string policy_name = 1 [json_name = "policy_name"]; -inline void AlterPolicyStmt::clear_policy_name() { - _impl_.policy_name_.ClearToEmpty(); +// repeated .pg_query.Node granted_roles = 1 [json_name = "granted_roles"]; +inline int GrantRoleStmt::_internal_granted_roles_size() const { + return _internal_granted_roles().size(); } -inline const std::string& AlterPolicyStmt::policy_name() const { - // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.policy_name) - return _internal_policy_name(); +inline int GrantRoleStmt::granted_roles_size() const { + return _internal_granted_roles_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterPolicyStmt::set_policy_name(ArgT0&& arg0, ArgT... args) { - - _impl_.policy_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterPolicyStmt.policy_name) +inline void GrantRoleStmt::clear_granted_roles() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.granted_roles_.Clear(); } -inline std::string* AlterPolicyStmt::mutable_policy_name() { - std::string* _s = _internal_mutable_policy_name(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.policy_name) - return _s; +inline ::pg_query::Node* GrantRoleStmt::mutable_granted_roles(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.GrantRoleStmt.granted_roles) + return _internal_mutable_granted_roles()->Mutable(index); } -inline const std::string& AlterPolicyStmt::_internal_policy_name() const { - return _impl_.policy_name_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* GrantRoleStmt::mutable_granted_roles() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.GrantRoleStmt.granted_roles) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_granted_roles(); } -inline void AlterPolicyStmt::_internal_set_policy_name(const std::string& value) { - - _impl_.policy_name_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& GrantRoleStmt::granted_roles(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.granted_roles) + return _internal_granted_roles().Get(index); } -inline std::string* AlterPolicyStmt::_internal_mutable_policy_name() { - - return _impl_.policy_name_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* GrantRoleStmt::add_granted_roles() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_granted_roles()->Add(); + // @@protoc_insertion_point(field_add:pg_query.GrantRoleStmt.granted_roles) + return _add; } -inline std::string* AlterPolicyStmt::release_policy_name() { - // @@protoc_insertion_point(field_release:pg_query.AlterPolicyStmt.policy_name) - return _impl_.policy_name_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& GrantRoleStmt::granted_roles() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.GrantRoleStmt.granted_roles) + return _internal_granted_roles(); } -inline void AlterPolicyStmt::set_allocated_policy_name(std::string* policy_name) { - if (policy_name != nullptr) { - - } else { - - } - _impl_.policy_name_.SetAllocated(policy_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.policy_name_.IsDefault()) { - _impl_.policy_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPolicyStmt.policy_name) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +GrantRoleStmt::_internal_granted_roles() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.granted_roles_; } - -// .pg_query.RangeVar table = 2 [json_name = "table"]; -inline bool AlterPolicyStmt::_internal_has_table() const { - return this != internal_default_instance() && _impl_.table_ != nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +GrantRoleStmt::_internal_mutable_granted_roles() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.granted_roles_; } -inline bool AlterPolicyStmt::has_table() const { - return _internal_has_table(); + +// repeated .pg_query.Node grantee_roles = 2 [json_name = "grantee_roles"]; +inline int GrantRoleStmt::_internal_grantee_roles_size() const { + return _internal_grantee_roles().size(); } -inline void AlterPolicyStmt::clear_table() { - if (GetArenaForAllocation() == nullptr && _impl_.table_ != nullptr) { - delete _impl_.table_; - } - _impl_.table_ = nullptr; +inline int GrantRoleStmt::grantee_roles_size() const { + return _internal_grantee_roles_size(); } -inline const ::pg_query::RangeVar& AlterPolicyStmt::_internal_table() const { - const ::pg_query::RangeVar* p = _impl_.table_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline void GrantRoleStmt::clear_grantee_roles() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.grantee_roles_.Clear(); } -inline const ::pg_query::RangeVar& AlterPolicyStmt::table() const { - // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.table) - return _internal_table(); +inline ::pg_query::Node* GrantRoleStmt::mutable_grantee_roles(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.GrantRoleStmt.grantee_roles) + return _internal_mutable_grantee_roles()->Mutable(index); } -inline void AlterPolicyStmt::unsafe_arena_set_allocated_table( - ::pg_query::RangeVar* table) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.table_); - } - _impl_.table_ = table; - if (table) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterPolicyStmt.table) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* GrantRoleStmt::mutable_grantee_roles() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.GrantRoleStmt.grantee_roles) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_grantee_roles(); } -inline ::pg_query::RangeVar* AlterPolicyStmt::release_table() { - - ::pg_query::RangeVar* temp = _impl_.table_; - _impl_.table_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& GrantRoleStmt::grantee_roles(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.grantee_roles) + return _internal_grantee_roles().Get(index); } -inline ::pg_query::RangeVar* AlterPolicyStmt::unsafe_arena_release_table() { - // @@protoc_insertion_point(field_release:pg_query.AlterPolicyStmt.table) - - ::pg_query::RangeVar* temp = _impl_.table_; - _impl_.table_ = nullptr; - return temp; +inline ::pg_query::Node* GrantRoleStmt::add_grantee_roles() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_grantee_roles()->Add(); + // @@protoc_insertion_point(field_add:pg_query.GrantRoleStmt.grantee_roles) + return _add; } -inline ::pg_query::RangeVar* AlterPolicyStmt::_internal_mutable_table() { - - if (_impl_.table_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.table_ = p; - } - return _impl_.table_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& GrantRoleStmt::grantee_roles() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.GrantRoleStmt.grantee_roles) + return _internal_grantee_roles(); } -inline ::pg_query::RangeVar* AlterPolicyStmt::mutable_table() { - ::pg_query::RangeVar* _msg = _internal_mutable_table(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.table) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +GrantRoleStmt::_internal_grantee_roles() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.grantee_roles_; } -inline void AlterPolicyStmt::set_allocated_table(::pg_query::RangeVar* table) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.table_; - } - if (table) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(table); - if (message_arena != submessage_arena) { - table = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, table, submessage_arena); - } - - } else { - - } - _impl_.table_ = table; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPolicyStmt.table) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +GrantRoleStmt::_internal_mutable_grantee_roles() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.grantee_roles_; } -// repeated .pg_query.Node roles = 3 [json_name = "roles"]; -inline int AlterPolicyStmt::_internal_roles_size() const { - return _impl_.roles_.size(); +// bool is_grant = 3 [json_name = "is_grant"]; +inline void GrantRoleStmt::clear_is_grant() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_grant_ = false; } -inline int AlterPolicyStmt::roles_size() const { - return _internal_roles_size(); +inline bool GrantRoleStmt::is_grant() const { + // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.is_grant) + return _internal_is_grant(); } -inline void AlterPolicyStmt::clear_roles() { - _impl_.roles_.Clear(); +inline void GrantRoleStmt::set_is_grant(bool value) { + _internal_set_is_grant(value); + // @@protoc_insertion_point(field_set:pg_query.GrantRoleStmt.is_grant) } -inline ::pg_query::Node* AlterPolicyStmt::mutable_roles(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.roles) - return _impl_.roles_.Mutable(index); +inline bool GrantRoleStmt::_internal_is_grant() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_grant_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterPolicyStmt::mutable_roles() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterPolicyStmt.roles) - return &_impl_.roles_; +inline void GrantRoleStmt::_internal_set_is_grant(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_grant_ = value; } -inline const ::pg_query::Node& AlterPolicyStmt::_internal_roles(int index) const { - return _impl_.roles_.Get(index); + +// repeated .pg_query.Node opt = 4 [json_name = "opt"]; +inline int GrantRoleStmt::_internal_opt_size() const { + return _internal_opt().size(); } -inline const ::pg_query::Node& AlterPolicyStmt::roles(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.roles) - return _internal_roles(index); +inline int GrantRoleStmt::opt_size() const { + return _internal_opt_size(); } -inline ::pg_query::Node* AlterPolicyStmt::_internal_add_roles() { - return _impl_.roles_.Add(); +inline void GrantRoleStmt::clear_opt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opt_.Clear(); } -inline ::pg_query::Node* AlterPolicyStmt::add_roles() { - ::pg_query::Node* _add = _internal_add_roles(); - // @@protoc_insertion_point(field_add:pg_query.AlterPolicyStmt.roles) +inline ::pg_query::Node* GrantRoleStmt::mutable_opt(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.GrantRoleStmt.opt) + return _internal_mutable_opt()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* GrantRoleStmt::mutable_opt() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.GrantRoleStmt.opt) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opt(); +} +inline const ::pg_query::Node& GrantRoleStmt::opt(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.opt) + return _internal_opt().Get(index); +} +inline ::pg_query::Node* GrantRoleStmt::add_opt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opt()->Add(); + // @@protoc_insertion_point(field_add:pg_query.GrantRoleStmt.opt) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterPolicyStmt::roles() const { - // @@protoc_insertion_point(field_list:pg_query.AlterPolicyStmt.roles) - return _impl_.roles_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& GrantRoleStmt::opt() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.GrantRoleStmt.opt) + return _internal_opt(); } - -// .pg_query.Node qual = 4 [json_name = "qual"]; -inline bool AlterPolicyStmt::_internal_has_qual() const { - return this != internal_default_instance() && _impl_.qual_ != nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +GrantRoleStmt::_internal_opt() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opt_; } -inline bool AlterPolicyStmt::has_qual() const { - return _internal_has_qual(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +GrantRoleStmt::_internal_mutable_opt() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opt_; } -inline void AlterPolicyStmt::clear_qual() { - if (GetArenaForAllocation() == nullptr && _impl_.qual_ != nullptr) { - delete _impl_.qual_; - } - _impl_.qual_ = nullptr; + +// .pg_query.RoleSpec grantor = 5 [json_name = "grantor"]; +inline bool GrantRoleStmt::has_grantor() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.grantor_ != nullptr); + return value; } -inline const ::pg_query::Node& AlterPolicyStmt::_internal_qual() const { - const ::pg_query::Node* p = _impl_.qual_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void GrantRoleStmt::clear_grantor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.grantor_ != nullptr) _impl_.grantor_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& AlterPolicyStmt::qual() const { - // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.qual) - return _internal_qual(); +inline const ::pg_query::RoleSpec& GrantRoleStmt::_internal_grantor() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.grantor_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); +} +inline const ::pg_query::RoleSpec& GrantRoleStmt::grantor() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.grantor) + return _internal_grantor(); } -inline void AlterPolicyStmt::unsafe_arena_set_allocated_qual( - ::pg_query::Node* qual) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.qual_); +inline void GrantRoleStmt::unsafe_arena_set_allocated_grantor(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.grantor_); } - _impl_.qual_ = qual; - if (qual) { - + _impl_.grantor_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterPolicyStmt.qual) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.GrantRoleStmt.grantor) } -inline ::pg_query::Node* AlterPolicyStmt::release_qual() { - - ::pg_query::Node* temp = _impl_.qual_; - _impl_.qual_ = nullptr; +inline ::pg_query::RoleSpec* GrantRoleStmt::release_grantor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.grantor_; + _impl_.grantor_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* AlterPolicyStmt::unsafe_arena_release_qual() { - // @@protoc_insertion_point(field_release:pg_query.AlterPolicyStmt.qual) - - ::pg_query::Node* temp = _impl_.qual_; - _impl_.qual_ = nullptr; +inline ::pg_query::RoleSpec* GrantRoleStmt::unsafe_arena_release_grantor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.GrantRoleStmt.grantor) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.grantor_; + _impl_.grantor_ = nullptr; return temp; } -inline ::pg_query::Node* AlterPolicyStmt::_internal_mutable_qual() { - - if (_impl_.qual_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.qual_ = p; +inline ::pg_query::RoleSpec* GrantRoleStmt::_internal_mutable_grantor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.grantor_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.grantor_ = reinterpret_cast<::pg_query::RoleSpec*>(p); } - return _impl_.qual_; + return _impl_.grantor_; } -inline ::pg_query::Node* AlterPolicyStmt::mutable_qual() { - ::pg_query::Node* _msg = _internal_mutable_qual(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.qual) +inline ::pg_query::RoleSpec* GrantRoleStmt::mutable_grantor() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_grantor(); + // @@protoc_insertion_point(field_mutable:pg_query.GrantRoleStmt.grantor) return _msg; } -inline void AlterPolicyStmt::set_allocated_qual(::pg_query::Node* qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void GrantRoleStmt::set_allocated_grantor(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.qual_; + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.grantor_); } - if (qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(qual); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); if (message_arena != submessage_arena) { - qual = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, qual, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.qual_ = qual; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPolicyStmt.qual) -} -// .pg_query.Node with_check = 5 [json_name = "with_check"]; -inline bool AlterPolicyStmt::_internal_has_with_check() const { - return this != internal_default_instance() && _impl_.with_check_ != nullptr; -} -inline bool AlterPolicyStmt::has_with_check() const { - return _internal_has_with_check(); -} -inline void AlterPolicyStmt::clear_with_check() { - if (GetArenaForAllocation() == nullptr && _impl_.with_check_ != nullptr) { - delete _impl_.with_check_; - } - _impl_.with_check_ = nullptr; -} -inline const ::pg_query::Node& AlterPolicyStmt::_internal_with_check() const { - const ::pg_query::Node* p = _impl_.with_check_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); -} -inline const ::pg_query::Node& AlterPolicyStmt::with_check() const { - // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.with_check) - return _internal_with_check(); -} -inline void AlterPolicyStmt::unsafe_arena_set_allocated_with_check( - ::pg_query::Node* with_check) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.with_check_); - } - _impl_.with_check_ = with_check; - if (with_check) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterPolicyStmt.with_check) + _impl_.grantor_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.GrantRoleStmt.grantor) } -inline ::pg_query::Node* AlterPolicyStmt::release_with_check() { - - ::pg_query::Node* temp = _impl_.with_check_; - _impl_.with_check_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// .pg_query.DropBehavior behavior = 6 [json_name = "behavior"]; +inline void GrantRoleStmt::clear_behavior() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.behavior_ = 0; } -inline ::pg_query::Node* AlterPolicyStmt::unsafe_arena_release_with_check() { - // @@protoc_insertion_point(field_release:pg_query.AlterPolicyStmt.with_check) - - ::pg_query::Node* temp = _impl_.with_check_; - _impl_.with_check_ = nullptr; - return temp; +inline ::pg_query::DropBehavior GrantRoleStmt::behavior() const { + // @@protoc_insertion_point(field_get:pg_query.GrantRoleStmt.behavior) + return _internal_behavior(); } -inline ::pg_query::Node* AlterPolicyStmt::_internal_mutable_with_check() { - - if (_impl_.with_check_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.with_check_ = p; - } - return _impl_.with_check_; +inline void GrantRoleStmt::set_behavior(::pg_query::DropBehavior value) { + _internal_set_behavior(value); + // @@protoc_insertion_point(field_set:pg_query.GrantRoleStmt.behavior) } -inline ::pg_query::Node* AlterPolicyStmt::mutable_with_check() { - ::pg_query::Node* _msg = _internal_mutable_with_check(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.with_check) - return _msg; +inline ::pg_query::DropBehavior GrantRoleStmt::_internal_behavior() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DropBehavior>(_impl_.behavior_); } -inline void AlterPolicyStmt::set_allocated_with_check(::pg_query::Node* with_check) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.with_check_; - } - if (with_check) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(with_check); - if (message_arena != submessage_arena) { - with_check = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, with_check, submessage_arena); - } - - } else { - - } - _impl_.with_check_ = with_check; - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPolicyStmt.with_check) +inline void GrantRoleStmt::_internal_set_behavior(::pg_query::DropBehavior value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.behavior_ = value; } // ------------------------------------------------------------------- -// CreateTransformStmt +// AlterDefaultPrivilegesStmt -// bool replace = 1 [json_name = "replace"]; -inline void CreateTransformStmt::clear_replace() { - _impl_.replace_ = false; +// repeated .pg_query.Node options = 1 [json_name = "options"]; +inline int AlterDefaultPrivilegesStmt::_internal_options_size() const { + return _internal_options().size(); } -inline bool CreateTransformStmt::_internal_replace() const { - return _impl_.replace_; +inline int AlterDefaultPrivilegesStmt::options_size() const { + return _internal_options_size(); } -inline bool CreateTransformStmt::replace() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.replace) - return _internal_replace(); +inline void AlterDefaultPrivilegesStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void CreateTransformStmt::_internal_set_replace(bool value) { - - _impl_.replace_ = value; +inline ::pg_query::Node* AlterDefaultPrivilegesStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterDefaultPrivilegesStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void CreateTransformStmt::set_replace(bool value) { - _internal_set_replace(value); - // @@protoc_insertion_point(field_set:pg_query.CreateTransformStmt.replace) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterDefaultPrivilegesStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterDefaultPrivilegesStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } - -// .pg_query.TypeName type_name = 2 [json_name = "type_name"]; -inline bool CreateTransformStmt::_internal_has_type_name() const { - return this != internal_default_instance() && _impl_.type_name_ != nullptr; +inline const ::pg_query::Node& AlterDefaultPrivilegesStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDefaultPrivilegesStmt.options) + return _internal_options().Get(index); } -inline bool CreateTransformStmt::has_type_name() const { - return _internal_has_type_name(); +inline ::pg_query::Node* AlterDefaultPrivilegesStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterDefaultPrivilegesStmt.options) + return _add; } -inline void CreateTransformStmt::clear_type_name() { - if (GetArenaForAllocation() == nullptr && _impl_.type_name_ != nullptr) { - delete _impl_.type_name_; - } - _impl_.type_name_ = nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterDefaultPrivilegesStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterDefaultPrivilegesStmt.options) + return _internal_options(); } -inline const ::pg_query::TypeName& CreateTransformStmt::_internal_type_name() const { - const ::pg_query::TypeName* p = _impl_.type_name_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterDefaultPrivilegesStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline const ::pg_query::TypeName& CreateTransformStmt::type_name() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.type_name) - return _internal_type_name(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterDefaultPrivilegesStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} + +// .pg_query.GrantStmt action = 2 [json_name = "action"]; +inline bool AlterDefaultPrivilegesStmt::has_action() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.action_ != nullptr); + return value; +} +inline void AlterDefaultPrivilegesStmt::clear_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.action_ != nullptr) _impl_.action_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::GrantStmt& AlterDefaultPrivilegesStmt::_internal_action() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::GrantStmt* p = _impl_.action_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_GrantStmt_default_instance_); } -inline void CreateTransformStmt::unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.type_name_); +inline const ::pg_query::GrantStmt& AlterDefaultPrivilegesStmt::action() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDefaultPrivilegesStmt.action) + return _internal_action(); +} +inline void AlterDefaultPrivilegesStmt::unsafe_arena_set_allocated_action(::pg_query::GrantStmt* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.action_); } - _impl_.type_name_ = type_name; - if (type_name) { - + _impl_.action_ = reinterpret_cast<::pg_query::GrantStmt*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTransformStmt.type_name) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterDefaultPrivilegesStmt.action) } -inline ::pg_query::TypeName* CreateTransformStmt::release_type_name() { - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; +inline ::pg_query::GrantStmt* AlterDefaultPrivilegesStmt::release_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::GrantStmt* released = _impl_.action_; + _impl_.action_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* CreateTransformStmt::unsafe_arena_release_type_name() { - // @@protoc_insertion_point(field_release:pg_query.CreateTransformStmt.type_name) - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; +inline ::pg_query::GrantStmt* AlterDefaultPrivilegesStmt::unsafe_arena_release_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterDefaultPrivilegesStmt.action) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::GrantStmt* temp = _impl_.action_; + _impl_.action_ = nullptr; return temp; } -inline ::pg_query::TypeName* CreateTransformStmt::_internal_mutable_type_name() { - - if (_impl_.type_name_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.type_name_ = p; +inline ::pg_query::GrantStmt* AlterDefaultPrivilegesStmt::_internal_mutable_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.action_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::GrantStmt>(GetArena()); + _impl_.action_ = reinterpret_cast<::pg_query::GrantStmt*>(p); } - return _impl_.type_name_; + return _impl_.action_; } -inline ::pg_query::TypeName* CreateTransformStmt::mutable_type_name() { - ::pg_query::TypeName* _msg = _internal_mutable_type_name(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTransformStmt.type_name) +inline ::pg_query::GrantStmt* AlterDefaultPrivilegesStmt::mutable_action() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::GrantStmt* _msg = _internal_mutable_action(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterDefaultPrivilegesStmt.action) return _msg; } -inline void CreateTransformStmt::set_allocated_type_name(::pg_query::TypeName* type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterDefaultPrivilegesStmt::set_allocated_action(::pg_query::GrantStmt* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.type_name_; + delete reinterpret_cast<::pg_query::GrantStmt*>(_impl_.action_); } - if (type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(type_name); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::GrantStmt*>(value)->GetArena(); if (message_arena != submessage_arena) { - type_name = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, type_name, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.type_name_ = type_name; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTransformStmt.type_name) -} -// string lang = 3 [json_name = "lang"]; -inline void CreateTransformStmt::clear_lang() { - _impl_.lang_.ClearToEmpty(); -} -inline const std::string& CreateTransformStmt::lang() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.lang) - return _internal_lang(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CreateTransformStmt::set_lang(ArgT0&& arg0, ArgT... args) { - - _impl_.lang_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateTransformStmt.lang) -} -inline std::string* CreateTransformStmt::mutable_lang() { - std::string* _s = _internal_mutable_lang(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTransformStmt.lang) - return _s; -} -inline const std::string& CreateTransformStmt::_internal_lang() const { - return _impl_.lang_.Get(); -} -inline void CreateTransformStmt::_internal_set_lang(const std::string& value) { - - _impl_.lang_.Set(value, GetArenaForAllocation()); -} -inline std::string* CreateTransformStmt::_internal_mutable_lang() { - - return _impl_.lang_.Mutable(GetArenaForAllocation()); -} -inline std::string* CreateTransformStmt::release_lang() { - // @@protoc_insertion_point(field_release:pg_query.CreateTransformStmt.lang) - return _impl_.lang_.Release(); -} -inline void CreateTransformStmt::set_allocated_lang(std::string* lang) { - if (lang != nullptr) { - - } else { - - } - _impl_.lang_.SetAllocated(lang, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.lang_.IsDefault()) { - _impl_.lang_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTransformStmt.lang) + _impl_.action_ = reinterpret_cast<::pg_query::GrantStmt*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDefaultPrivilegesStmt.action) } -// .pg_query.ObjectWithArgs fromsql = 4 [json_name = "fromsql"]; -inline bool CreateTransformStmt::_internal_has_fromsql() const { - return this != internal_default_instance() && _impl_.fromsql_ != nullptr; -} -inline bool CreateTransformStmt::has_fromsql() const { - return _internal_has_fromsql(); +// ------------------------------------------------------------------- + +// CopyStmt + +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool CopyStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline void CreateTransformStmt::clear_fromsql() { - if (GetArenaForAllocation() == nullptr && _impl_.fromsql_ != nullptr) { - delete _impl_.fromsql_; - } - _impl_.fromsql_ = nullptr; +inline void CopyStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::ObjectWithArgs& CreateTransformStmt::_internal_fromsql() const { - const ::pg_query::ObjectWithArgs* p = _impl_.fromsql_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_ObjectWithArgs_default_instance_); +inline const ::pg_query::RangeVar& CopyStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::ObjectWithArgs& CreateTransformStmt::fromsql() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.fromsql) - return _internal_fromsql(); +inline const ::pg_query::RangeVar& CopyStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CopyStmt.relation) + return _internal_relation(); } -inline void CreateTransformStmt::unsafe_arena_set_allocated_fromsql( - ::pg_query::ObjectWithArgs* fromsql) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.fromsql_); +inline void CopyStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.fromsql_ = fromsql; - if (fromsql) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTransformStmt.fromsql) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CopyStmt.relation) } -inline ::pg_query::ObjectWithArgs* CreateTransformStmt::release_fromsql() { - - ::pg_query::ObjectWithArgs* temp = _impl_.fromsql_; - _impl_.fromsql_ = nullptr; +inline ::pg_query::RangeVar* CopyStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::ObjectWithArgs* CreateTransformStmt::unsafe_arena_release_fromsql() { - // @@protoc_insertion_point(field_release:pg_query.CreateTransformStmt.fromsql) - - ::pg_query::ObjectWithArgs* temp = _impl_.fromsql_; - _impl_.fromsql_ = nullptr; +inline ::pg_query::RangeVar* CopyStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CopyStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::ObjectWithArgs* CreateTransformStmt::_internal_mutable_fromsql() { - - if (_impl_.fromsql_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArenaForAllocation()); - _impl_.fromsql_ = p; +inline ::pg_query::RangeVar* CopyStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.fromsql_; + return _impl_.relation_; } -inline ::pg_query::ObjectWithArgs* CreateTransformStmt::mutable_fromsql() { - ::pg_query::ObjectWithArgs* _msg = _internal_mutable_fromsql(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTransformStmt.fromsql) +inline ::pg_query::RangeVar* CopyStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.relation) return _msg; } -inline void CreateTransformStmt::set_allocated_fromsql(::pg_query::ObjectWithArgs* fromsql) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CopyStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.fromsql_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (fromsql) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(fromsql); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - fromsql = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, fromsql, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.fromsql_ = fromsql; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTransformStmt.fromsql) -} -// .pg_query.ObjectWithArgs tosql = 5 [json_name = "tosql"]; -inline bool CreateTransformStmt::_internal_has_tosql() const { - return this != internal_default_instance() && _impl_.tosql_ != nullptr; + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CopyStmt.relation) } -inline bool CreateTransformStmt::has_tosql() const { - return _internal_has_tosql(); + +// .pg_query.Node query = 2 [json_name = "query"]; +inline bool CopyStmt::has_query() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.query_ != nullptr); + return value; } -inline void CreateTransformStmt::clear_tosql() { - if (GetArenaForAllocation() == nullptr && _impl_.tosql_ != nullptr) { - delete _impl_.tosql_; - } - _impl_.tosql_ = nullptr; +inline void CopyStmt::clear_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.query_ != nullptr) _impl_.query_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::ObjectWithArgs& CreateTransformStmt::_internal_tosql() const { - const ::pg_query::ObjectWithArgs* p = _impl_.tosql_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_ObjectWithArgs_default_instance_); +inline const ::pg_query::Node& CopyStmt::_internal_query() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.query_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::ObjectWithArgs& CreateTransformStmt::tosql() const { - // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.tosql) - return _internal_tosql(); +inline const ::pg_query::Node& CopyStmt::query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CopyStmt.query) + return _internal_query(); } -inline void CreateTransformStmt::unsafe_arena_set_allocated_tosql( - ::pg_query::ObjectWithArgs* tosql) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.tosql_); +inline void CopyStmt::unsafe_arena_set_allocated_query(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.query_); } - _impl_.tosql_ = tosql; - if (tosql) { - + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTransformStmt.tosql) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CopyStmt.query) } -inline ::pg_query::ObjectWithArgs* CreateTransformStmt::release_tosql() { - - ::pg_query::ObjectWithArgs* temp = _impl_.tosql_; - _impl_.tosql_ = nullptr; +inline ::pg_query::Node* CopyStmt::release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.query_; + _impl_.query_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::ObjectWithArgs* CreateTransformStmt::unsafe_arena_release_tosql() { - // @@protoc_insertion_point(field_release:pg_query.CreateTransformStmt.tosql) - - ::pg_query::ObjectWithArgs* temp = _impl_.tosql_; - _impl_.tosql_ = nullptr; +inline ::pg_query::Node* CopyStmt::unsafe_arena_release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CopyStmt.query) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.query_; + _impl_.query_ = nullptr; return temp; } -inline ::pg_query::ObjectWithArgs* CreateTransformStmt::_internal_mutable_tosql() { - - if (_impl_.tosql_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArenaForAllocation()); - _impl_.tosql_ = p; +inline ::pg_query::Node* CopyStmt::_internal_mutable_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.query_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.tosql_; + return _impl_.query_; } -inline ::pg_query::ObjectWithArgs* CreateTransformStmt::mutable_tosql() { - ::pg_query::ObjectWithArgs* _msg = _internal_mutable_tosql(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateTransformStmt.tosql) +inline ::pg_query::Node* CopyStmt::mutable_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_query(); + // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.query) return _msg; } -inline void CreateTransformStmt::set_allocated_tosql(::pg_query::ObjectWithArgs* tosql) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CopyStmt::set_allocated_query(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.tosql_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.query_); } - if (tosql) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(tosql); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - tosql = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, tosql, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.tosql_ = tosql; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTransformStmt.tosql) -} - -// ------------------------------------------------------------------- - -// CreateAmStmt -// string amname = 1 [json_name = "amname"]; -inline void CreateAmStmt::clear_amname() { - _impl_.amname_.ClearToEmpty(); -} -inline const std::string& CreateAmStmt::amname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateAmStmt.amname) - return _internal_amname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void CreateAmStmt::set_amname(ArgT0&& arg0, ArgT... args) { - - _impl_.amname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateAmStmt.amname) -} -inline std::string* CreateAmStmt::mutable_amname() { - std::string* _s = _internal_mutable_amname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateAmStmt.amname) - return _s; -} -inline const std::string& CreateAmStmt::_internal_amname() const { - return _impl_.amname_.Get(); -} -inline void CreateAmStmt::_internal_set_amname(const std::string& value) { - - _impl_.amname_.Set(value, GetArenaForAllocation()); -} -inline std::string* CreateAmStmt::_internal_mutable_amname() { - - return _impl_.amname_.Mutable(GetArenaForAllocation()); -} -inline std::string* CreateAmStmt::release_amname() { - // @@protoc_insertion_point(field_release:pg_query.CreateAmStmt.amname) - return _impl_.amname_.Release(); -} -inline void CreateAmStmt::set_allocated_amname(std::string* amname) { - if (amname != nullptr) { - - } else { - - } - _impl_.amname_.SetAllocated(amname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.amname_.IsDefault()) { - _impl_.amname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateAmStmt.amname) + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CopyStmt.query) } -// repeated .pg_query.Node handler_name = 2 [json_name = "handler_name"]; -inline int CreateAmStmt::_internal_handler_name_size() const { - return _impl_.handler_name_.size(); +// repeated .pg_query.Node attlist = 3 [json_name = "attlist"]; +inline int CopyStmt::_internal_attlist_size() const { + return _internal_attlist().size(); } -inline int CreateAmStmt::handler_name_size() const { - return _internal_handler_name_size(); +inline int CopyStmt::attlist_size() const { + return _internal_attlist_size(); } -inline void CreateAmStmt::clear_handler_name() { - _impl_.handler_name_.Clear(); +inline void CopyStmt::clear_attlist() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.attlist_.Clear(); } -inline ::pg_query::Node* CreateAmStmt::mutable_handler_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateAmStmt.handler_name) - return _impl_.handler_name_.Mutable(index); +inline ::pg_query::Node* CopyStmt::mutable_attlist(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.attlist) + return _internal_mutable_attlist()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateAmStmt::mutable_handler_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateAmStmt.handler_name) - return &_impl_.handler_name_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CopyStmt::mutable_attlist() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CopyStmt.attlist) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_attlist(); } -inline const ::pg_query::Node& CreateAmStmt::_internal_handler_name(int index) const { - return _impl_.handler_name_.Get(index); +inline const ::pg_query::Node& CopyStmt::attlist(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CopyStmt.attlist) + return _internal_attlist().Get(index); } -inline const ::pg_query::Node& CreateAmStmt::handler_name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateAmStmt.handler_name) - return _internal_handler_name(index); +inline ::pg_query::Node* CopyStmt::add_attlist() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_attlist()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CopyStmt.attlist) + return _add; } -inline ::pg_query::Node* CreateAmStmt::_internal_add_handler_name() { - return _impl_.handler_name_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CopyStmt::attlist() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CopyStmt.attlist) + return _internal_attlist(); } -inline ::pg_query::Node* CreateAmStmt::add_handler_name() { - ::pg_query::Node* _add = _internal_add_handler_name(); - // @@protoc_insertion_point(field_add:pg_query.CreateAmStmt.handler_name) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CopyStmt::_internal_attlist() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.attlist_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateAmStmt::handler_name() const { - // @@protoc_insertion_point(field_list:pg_query.CreateAmStmt.handler_name) - return _impl_.handler_name_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CopyStmt::_internal_mutable_attlist() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.attlist_; } -// string amtype = 3 [json_name = "amtype"]; -inline void CreateAmStmt::clear_amtype() { - _impl_.amtype_.ClearToEmpty(); +// bool is_from = 4 [json_name = "is_from"]; +inline void CopyStmt::clear_is_from() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_from_ = false; } -inline const std::string& CreateAmStmt::amtype() const { - // @@protoc_insertion_point(field_get:pg_query.CreateAmStmt.amtype) - return _internal_amtype(); +inline bool CopyStmt::is_from() const { + // @@protoc_insertion_point(field_get:pg_query.CopyStmt.is_from) + return _internal_is_from(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateAmStmt::set_amtype(ArgT0&& arg0, ArgT... args) { - - _impl_.amtype_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateAmStmt.amtype) +inline void CopyStmt::set_is_from(bool value) { + _internal_set_is_from(value); + // @@protoc_insertion_point(field_set:pg_query.CopyStmt.is_from) } -inline std::string* CreateAmStmt::mutable_amtype() { - std::string* _s = _internal_mutable_amtype(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateAmStmt.amtype) - return _s; +inline bool CopyStmt::_internal_is_from() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_from_; } -inline const std::string& CreateAmStmt::_internal_amtype() const { - return _impl_.amtype_.Get(); +inline void CopyStmt::_internal_set_is_from(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_from_ = value; } -inline void CreateAmStmt::_internal_set_amtype(const std::string& value) { - - _impl_.amtype_.Set(value, GetArenaForAllocation()); + +// bool is_program = 5 [json_name = "is_program"]; +inline void CopyStmt::clear_is_program() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_program_ = false; } -inline std::string* CreateAmStmt::_internal_mutable_amtype() { - - return _impl_.amtype_.Mutable(GetArenaForAllocation()); +inline bool CopyStmt::is_program() const { + // @@protoc_insertion_point(field_get:pg_query.CopyStmt.is_program) + return _internal_is_program(); } -inline std::string* CreateAmStmt::release_amtype() { - // @@protoc_insertion_point(field_release:pg_query.CreateAmStmt.amtype) - return _impl_.amtype_.Release(); +inline void CopyStmt::set_is_program(bool value) { + _internal_set_is_program(value); + // @@protoc_insertion_point(field_set:pg_query.CopyStmt.is_program) } -inline void CreateAmStmt::set_allocated_amtype(std::string* amtype) { - if (amtype != nullptr) { - - } else { - - } - _impl_.amtype_.SetAllocated(amtype, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.amtype_.IsDefault()) { - _impl_.amtype_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateAmStmt.amtype) +inline bool CopyStmt::_internal_is_program() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_program_; +} +inline void CopyStmt::_internal_set_is_program(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_program_ = value; } -// ------------------------------------------------------------------- - -// CreatePublicationStmt - -// string pubname = 1 [json_name = "pubname"]; -inline void CreatePublicationStmt::clear_pubname() { - _impl_.pubname_.ClearToEmpty(); +// string filename = 6 [json_name = "filename"]; +inline void CopyStmt::clear_filename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.filename_.ClearToEmpty(); } -inline const std::string& CreatePublicationStmt::pubname() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePublicationStmt.pubname) - return _internal_pubname(); +inline const std::string& CopyStmt::filename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CopyStmt.filename) + return _internal_filename(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreatePublicationStmt::set_pubname(ArgT0&& arg0, ArgT... args) { - - _impl_.pubname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreatePublicationStmt.pubname) +template +inline PROTOBUF_ALWAYS_INLINE void CopyStmt::set_filename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.filename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CopyStmt.filename) } -inline std::string* CreatePublicationStmt::mutable_pubname() { - std::string* _s = _internal_mutable_pubname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreatePublicationStmt.pubname) +inline std::string* CopyStmt::mutable_filename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_filename(); + // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.filename) return _s; } -inline const std::string& CreatePublicationStmt::_internal_pubname() const { - return _impl_.pubname_.Get(); +inline const std::string& CopyStmt::_internal_filename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.filename_.Get(); } -inline void CreatePublicationStmt::_internal_set_pubname(const std::string& value) { - - _impl_.pubname_.Set(value, GetArenaForAllocation()); +inline void CopyStmt::_internal_set_filename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.filename_.Set(value, GetArena()); } -inline std::string* CreatePublicationStmt::_internal_mutable_pubname() { - - return _impl_.pubname_.Mutable(GetArenaForAllocation()); +inline std::string* CopyStmt::_internal_mutable_filename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.filename_.Mutable( GetArena()); } -inline std::string* CreatePublicationStmt::release_pubname() { - // @@protoc_insertion_point(field_release:pg_query.CreatePublicationStmt.pubname) - return _impl_.pubname_.Release(); +inline std::string* CopyStmt::release_filename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CopyStmt.filename) + return _impl_.filename_.Release(); } -inline void CreatePublicationStmt::set_allocated_pubname(std::string* pubname) { - if (pubname != nullptr) { - - } else { - - } - _impl_.pubname_.SetAllocated(pubname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.pubname_.IsDefault()) { - _impl_.pubname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePublicationStmt.pubname) +inline void CopyStmt::set_allocated_filename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.filename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.filename_.IsDefault()) { + _impl_.filename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CopyStmt.filename) } -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int CreatePublicationStmt::_internal_options_size() const { - return _impl_.options_.size(); +// repeated .pg_query.Node options = 7 [json_name = "options"]; +inline int CopyStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int CreatePublicationStmt::options_size() const { +inline int CopyStmt::options_size() const { return _internal_options_size(); } -inline void CreatePublicationStmt::clear_options() { +inline void CopyStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.options_.Clear(); } -inline ::pg_query::Node* CreatePublicationStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreatePublicationStmt.options) - return _impl_.options_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreatePublicationStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePublicationStmt.options) - return &_impl_.options_; -} -inline const ::pg_query::Node& CreatePublicationStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::Node* CopyStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline const ::pg_query::Node& CreatePublicationStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreatePublicationStmt.options) - return _internal_options(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CopyStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CopyStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline ::pg_query::Node* CreatePublicationStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::pg_query::Node& CopyStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CopyStmt.options) + return _internal_options().Get(index); } -inline ::pg_query::Node* CreatePublicationStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreatePublicationStmt.options) +inline ::pg_query::Node* CopyStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CopyStmt.options) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreatePublicationStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreatePublicationStmt.options) - return _impl_.options_; -} - -// repeated .pg_query.Node pubobjects = 3 [json_name = "pubobjects"]; -inline int CreatePublicationStmt::_internal_pubobjects_size() const { - return _impl_.pubobjects_.size(); -} -inline int CreatePublicationStmt::pubobjects_size() const { - return _internal_pubobjects_size(); -} -inline void CreatePublicationStmt::clear_pubobjects() { - _impl_.pubobjects_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CopyStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CopyStmt.options) + return _internal_options(); } -inline ::pg_query::Node* CreatePublicationStmt::mutable_pubobjects(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreatePublicationStmt.pubobjects) - return _impl_.pubobjects_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CopyStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreatePublicationStmt::mutable_pubobjects() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePublicationStmt.pubobjects) - return &_impl_.pubobjects_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CopyStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -inline const ::pg_query::Node& CreatePublicationStmt::_internal_pubobjects(int index) const { - return _impl_.pubobjects_.Get(index); + +// .pg_query.Node where_clause = 8 [json_name = "whereClause"]; +inline bool CopyStmt::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; } -inline const ::pg_query::Node& CreatePublicationStmt::pubobjects(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreatePublicationStmt.pubobjects) - return _internal_pubobjects(index); +inline void CopyStmt::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline ::pg_query::Node* CreatePublicationStmt::_internal_add_pubobjects() { - return _impl_.pubobjects_.Add(); +inline const ::pg_query::Node& CopyStmt::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.where_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* CreatePublicationStmt::add_pubobjects() { - ::pg_query::Node* _add = _internal_add_pubobjects(); - // @@protoc_insertion_point(field_add:pg_query.CreatePublicationStmt.pubobjects) - return _add; +inline const ::pg_query::Node& CopyStmt::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CopyStmt.where_clause) + return _internal_where_clause(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreatePublicationStmt::pubobjects() const { - // @@protoc_insertion_point(field_list:pg_query.CreatePublicationStmt.pubobjects) - return _impl_.pubobjects_; +inline void CopyStmt::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); + } + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CopyStmt.where_clause) } +inline ::pg_query::Node* CopyStmt::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool for_all_tables = 4 [json_name = "for_all_tables"]; -inline void CreatePublicationStmt::clear_for_all_tables() { - _impl_.for_all_tables_ = false; + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool CreatePublicationStmt::_internal_for_all_tables() const { - return _impl_.for_all_tables_; +inline ::pg_query::Node* CopyStmt::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CopyStmt.where_clause) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; + return temp; } -inline bool CreatePublicationStmt::for_all_tables() const { - // @@protoc_insertion_point(field_get:pg_query.CreatePublicationStmt.for_all_tables) - return _internal_for_all_tables(); +inline ::pg_query::Node* CopyStmt::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.where_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.where_clause_; } -inline void CreatePublicationStmt::_internal_set_for_all_tables(bool value) { - - _impl_.for_all_tables_ = value; +inline ::pg_query::Node* CopyStmt::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_where_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.CopyStmt.where_clause) + return _msg; } -inline void CreatePublicationStmt::set_for_all_tables(bool value) { - _internal_set_for_all_tables(value); - // @@protoc_insertion_point(field_set:pg_query.CreatePublicationStmt.for_all_tables) +inline void CopyStmt::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CopyStmt.where_clause) } // ------------------------------------------------------------------- -// AlterPublicationStmt +// VariableSetStmt -// string pubname = 1 [json_name = "pubname"]; -inline void AlterPublicationStmt::clear_pubname() { - _impl_.pubname_.ClearToEmpty(); -} -inline const std::string& AlterPublicationStmt::pubname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.pubname) - return _internal_pubname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AlterPublicationStmt::set_pubname(ArgT0&& arg0, ArgT... args) { - - _impl_.pubname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterPublicationStmt.pubname) -} -inline std::string* AlterPublicationStmt::mutable_pubname() { - std::string* _s = _internal_mutable_pubname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterPublicationStmt.pubname) - return _s; -} -inline const std::string& AlterPublicationStmt::_internal_pubname() const { - return _impl_.pubname_.Get(); +// .pg_query.VariableSetKind kind = 1 [json_name = "kind"]; +inline void VariableSetStmt::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; } -inline void AlterPublicationStmt::_internal_set_pubname(const std::string& value) { - - _impl_.pubname_.Set(value, GetArenaForAllocation()); +inline ::pg_query::VariableSetKind VariableSetStmt::kind() const { + // @@protoc_insertion_point(field_get:pg_query.VariableSetStmt.kind) + return _internal_kind(); } -inline std::string* AlterPublicationStmt::_internal_mutable_pubname() { - - return _impl_.pubname_.Mutable(GetArenaForAllocation()); +inline void VariableSetStmt::set_kind(::pg_query::VariableSetKind value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.VariableSetStmt.kind) } -inline std::string* AlterPublicationStmt::release_pubname() { - // @@protoc_insertion_point(field_release:pg_query.AlterPublicationStmt.pubname) - return _impl_.pubname_.Release(); +inline ::pg_query::VariableSetKind VariableSetStmt::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::VariableSetKind>(_impl_.kind_); } -inline void AlterPublicationStmt::set_allocated_pubname(std::string* pubname) { - if (pubname != nullptr) { - - } else { - - } - _impl_.pubname_.SetAllocated(pubname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.pubname_.IsDefault()) { - _impl_.pubname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPublicationStmt.pubname) +inline void VariableSetStmt::_internal_set_kind(::pg_query::VariableSetKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; } -// repeated .pg_query.Node options = 2 [json_name = "options"]; -inline int AlterPublicationStmt::_internal_options_size() const { - return _impl_.options_.size(); -} -inline int AlterPublicationStmt::options_size() const { - return _internal_options_size(); +// string name = 2 [json_name = "name"]; +inline void VariableSetStmt::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline void AlterPublicationStmt::clear_options() { - _impl_.options_.Clear(); +inline const std::string& VariableSetStmt::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.VariableSetStmt.name) + return _internal_name(); } -inline ::pg_query::Node* AlterPublicationStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterPublicationStmt.options) - return _impl_.options_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void VariableSetStmt::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.VariableSetStmt.name) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterPublicationStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterPublicationStmt.options) - return &_impl_.options_; +inline std::string* VariableSetStmt::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.VariableSetStmt.name) + return _s; } -inline const ::pg_query::Node& AlterPublicationStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline const std::string& VariableSetStmt::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline const ::pg_query::Node& AlterPublicationStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.options) - return _internal_options(index); +inline void VariableSetStmt::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline ::pg_query::Node* AlterPublicationStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline std::string* VariableSetStmt::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline ::pg_query::Node* AlterPublicationStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterPublicationStmt.options) - return _add; +inline std::string* VariableSetStmt::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.VariableSetStmt.name) + return _impl_.name_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterPublicationStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterPublicationStmt.options) - return _impl_.options_; +inline void VariableSetStmt::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.VariableSetStmt.name) } -// repeated .pg_query.Node pubobjects = 3 [json_name = "pubobjects"]; -inline int AlterPublicationStmt::_internal_pubobjects_size() const { - return _impl_.pubobjects_.size(); -} -inline int AlterPublicationStmt::pubobjects_size() const { - return _internal_pubobjects_size(); -} -inline void AlterPublicationStmt::clear_pubobjects() { - _impl_.pubobjects_.Clear(); -} -inline ::pg_query::Node* AlterPublicationStmt::mutable_pubobjects(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterPublicationStmt.pubobjects) - return _impl_.pubobjects_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterPublicationStmt::mutable_pubobjects() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterPublicationStmt.pubobjects) - return &_impl_.pubobjects_; -} -inline const ::pg_query::Node& AlterPublicationStmt::_internal_pubobjects(int index) const { - return _impl_.pubobjects_.Get(index); -} -inline const ::pg_query::Node& AlterPublicationStmt::pubobjects(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.pubobjects) - return _internal_pubobjects(index); +// repeated .pg_query.Node args = 3 [json_name = "args"]; +inline int VariableSetStmt::_internal_args_size() const { + return _internal_args().size(); } -inline ::pg_query::Node* AlterPublicationStmt::_internal_add_pubobjects() { - return _impl_.pubobjects_.Add(); +inline int VariableSetStmt::args_size() const { + return _internal_args_size(); } -inline ::pg_query::Node* AlterPublicationStmt::add_pubobjects() { - ::pg_query::Node* _add = _internal_add_pubobjects(); - // @@protoc_insertion_point(field_add:pg_query.AlterPublicationStmt.pubobjects) - return _add; +inline void VariableSetStmt::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterPublicationStmt::pubobjects() const { - // @@protoc_insertion_point(field_list:pg_query.AlterPublicationStmt.pubobjects) - return _impl_.pubobjects_; +inline ::pg_query::Node* VariableSetStmt::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.VariableSetStmt.args) + return _internal_mutable_args()->Mutable(index); } - -// bool for_all_tables = 4 [json_name = "for_all_tables"]; -inline void AlterPublicationStmt::clear_for_all_tables() { - _impl_.for_all_tables_ = false; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* VariableSetStmt::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.VariableSetStmt.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } -inline bool AlterPublicationStmt::_internal_for_all_tables() const { - return _impl_.for_all_tables_; +inline const ::pg_query::Node& VariableSetStmt::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.VariableSetStmt.args) + return _internal_args().Get(index); } -inline bool AlterPublicationStmt::for_all_tables() const { - // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.for_all_tables) - return _internal_for_all_tables(); +inline ::pg_query::Node* VariableSetStmt::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.VariableSetStmt.args) + return _add; } -inline void AlterPublicationStmt::_internal_set_for_all_tables(bool value) { - - _impl_.for_all_tables_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& VariableSetStmt::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.VariableSetStmt.args) + return _internal_args(); } -inline void AlterPublicationStmt::set_for_all_tables(bool value) { - _internal_set_for_all_tables(value); - // @@protoc_insertion_point(field_set:pg_query.AlterPublicationStmt.for_all_tables) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +VariableSetStmt::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +VariableSetStmt::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// .pg_query.AlterPublicationAction action = 5 [json_name = "action"]; -inline void AlterPublicationStmt::clear_action() { - _impl_.action_ = 0; +// bool is_local = 4 [json_name = "is_local"]; +inline void VariableSetStmt::clear_is_local() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_local_ = false; } -inline ::pg_query::AlterPublicationAction AlterPublicationStmt::_internal_action() const { - return static_cast< ::pg_query::AlterPublicationAction >(_impl_.action_); +inline bool VariableSetStmt::is_local() const { + // @@protoc_insertion_point(field_get:pg_query.VariableSetStmt.is_local) + return _internal_is_local(); } -inline ::pg_query::AlterPublicationAction AlterPublicationStmt::action() const { - // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.action) - return _internal_action(); +inline void VariableSetStmt::set_is_local(bool value) { + _internal_set_is_local(value); + // @@protoc_insertion_point(field_set:pg_query.VariableSetStmt.is_local) } -inline void AlterPublicationStmt::_internal_set_action(::pg_query::AlterPublicationAction value) { - - _impl_.action_ = value; +inline bool VariableSetStmt::_internal_is_local() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_local_; } -inline void AlterPublicationStmt::set_action(::pg_query::AlterPublicationAction value) { - _internal_set_action(value); - // @@protoc_insertion_point(field_set:pg_query.AlterPublicationStmt.action) +inline void VariableSetStmt::_internal_set_is_local(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_local_ = value; } // ------------------------------------------------------------------- -// CreateSubscriptionStmt +// VariableShowStmt -// string subname = 1 [json_name = "subname"]; -inline void CreateSubscriptionStmt::clear_subname() { - _impl_.subname_.ClearToEmpty(); +// string name = 1 [json_name = "name"]; +inline void VariableShowStmt::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline const std::string& CreateSubscriptionStmt::subname() const { - // @@protoc_insertion_point(field_get:pg_query.CreateSubscriptionStmt.subname) - return _internal_subname(); +inline const std::string& VariableShowStmt::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.VariableShowStmt.name) + return _internal_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateSubscriptionStmt::set_subname(ArgT0&& arg0, ArgT... args) { - - _impl_.subname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateSubscriptionStmt.subname) +template +inline PROTOBUF_ALWAYS_INLINE void VariableShowStmt::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.VariableShowStmt.name) } -inline std::string* CreateSubscriptionStmt::mutable_subname() { - std::string* _s = _internal_mutable_subname(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateSubscriptionStmt.subname) +inline std::string* VariableShowStmt::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.VariableShowStmt.name) return _s; } -inline const std::string& CreateSubscriptionStmt::_internal_subname() const { - return _impl_.subname_.Get(); +inline const std::string& VariableShowStmt::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline void CreateSubscriptionStmt::_internal_set_subname(const std::string& value) { - - _impl_.subname_.Set(value, GetArenaForAllocation()); +inline void VariableShowStmt::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline std::string* CreateSubscriptionStmt::_internal_mutable_subname() { - - return _impl_.subname_.Mutable(GetArenaForAllocation()); +inline std::string* VariableShowStmt::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline std::string* CreateSubscriptionStmt::release_subname() { - // @@protoc_insertion_point(field_release:pg_query.CreateSubscriptionStmt.subname) - return _impl_.subname_.Release(); +inline std::string* VariableShowStmt::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.VariableShowStmt.name) + return _impl_.name_.Release(); } -inline void CreateSubscriptionStmt::set_allocated_subname(std::string* subname) { - if (subname != nullptr) { - - } else { - - } - _impl_.subname_.SetAllocated(subname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.subname_.IsDefault()) { - _impl_.subname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSubscriptionStmt.subname) +inline void VariableShowStmt::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.VariableShowStmt.name) } -// string conninfo = 2 [json_name = "conninfo"]; -inline void CreateSubscriptionStmt::clear_conninfo() { - _impl_.conninfo_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// CreateStmt + +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool CreateStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline const std::string& CreateSubscriptionStmt::conninfo() const { - // @@protoc_insertion_point(field_get:pg_query.CreateSubscriptionStmt.conninfo) - return _internal_conninfo(); +inline void CreateStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateSubscriptionStmt::set_conninfo(ArgT0&& arg0, ArgT... args) { - - _impl_.conninfo_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateSubscriptionStmt.conninfo) +inline const ::pg_query::RangeVar& CreateStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline std::string* CreateSubscriptionStmt::mutable_conninfo() { - std::string* _s = _internal_mutable_conninfo(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateSubscriptionStmt.conninfo) - return _s; +inline const ::pg_query::RangeVar& CreateStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.relation) + return _internal_relation(); } -inline const std::string& CreateSubscriptionStmt::_internal_conninfo() const { - return _impl_.conninfo_.Get(); +inline void CreateStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateStmt.relation) } -inline void CreateSubscriptionStmt::_internal_set_conninfo(const std::string& value) { - - _impl_.conninfo_.Set(value, GetArenaForAllocation()); +inline ::pg_query::RangeVar* CreateStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* CreateSubscriptionStmt::_internal_mutable_conninfo() { - - return _impl_.conninfo_.Mutable(GetArenaForAllocation()); +inline ::pg_query::RangeVar* CreateStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline std::string* CreateSubscriptionStmt::release_conninfo() { - // @@protoc_insertion_point(field_release:pg_query.CreateSubscriptionStmt.conninfo) - return _impl_.conninfo_.Release(); +inline ::pg_query::RangeVar* CreateStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; } -inline void CreateSubscriptionStmt::set_allocated_conninfo(std::string* conninfo) { - if (conninfo != nullptr) { - - } else { - +inline ::pg_query::RangeVar* CreateStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.relation) + return _msg; +} +inline void CreateStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - _impl_.conninfo_.SetAllocated(conninfo, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.conninfo_.IsDefault()) { - _impl_.conninfo_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSubscriptionStmt.conninfo) + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.relation) } -// repeated .pg_query.Node publication = 3 [json_name = "publication"]; -inline int CreateSubscriptionStmt::_internal_publication_size() const { - return _impl_.publication_.size(); +// repeated .pg_query.Node table_elts = 2 [json_name = "tableElts"]; +inline int CreateStmt::_internal_table_elts_size() const { + return _internal_table_elts().size(); } -inline int CreateSubscriptionStmt::publication_size() const { - return _internal_publication_size(); +inline int CreateStmt::table_elts_size() const { + return _internal_table_elts_size(); } -inline void CreateSubscriptionStmt::clear_publication() { - _impl_.publication_.Clear(); +inline void CreateStmt::clear_table_elts() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.table_elts_.Clear(); } -inline ::pg_query::Node* CreateSubscriptionStmt::mutable_publication(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateSubscriptionStmt.publication) - return _impl_.publication_.Mutable(index); +inline ::pg_query::Node* CreateStmt::mutable_table_elts(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.table_elts) + return _internal_mutable_table_elts()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateSubscriptionStmt::mutable_publication() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateSubscriptionStmt.publication) - return &_impl_.publication_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateStmt::mutable_table_elts() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStmt.table_elts) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_table_elts(); } -inline const ::pg_query::Node& CreateSubscriptionStmt::_internal_publication(int index) const { - return _impl_.publication_.Get(index); +inline const ::pg_query::Node& CreateStmt::table_elts(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.table_elts) + return _internal_table_elts().Get(index); } -inline const ::pg_query::Node& CreateSubscriptionStmt::publication(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateSubscriptionStmt.publication) - return _internal_publication(index); +inline ::pg_query::Node* CreateStmt::add_table_elts() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_table_elts()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateStmt.table_elts) + return _add; } -inline ::pg_query::Node* CreateSubscriptionStmt::_internal_add_publication() { - return _impl_.publication_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateStmt::table_elts() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateStmt.table_elts) + return _internal_table_elts(); } -inline ::pg_query::Node* CreateSubscriptionStmt::add_publication() { - ::pg_query::Node* _add = _internal_add_publication(); - // @@protoc_insertion_point(field_add:pg_query.CreateSubscriptionStmt.publication) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateStmt::_internal_table_elts() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.table_elts_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateSubscriptionStmt::publication() const { - // @@protoc_insertion_point(field_list:pg_query.CreateSubscriptionStmt.publication) - return _impl_.publication_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateStmt::_internal_mutable_table_elts() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.table_elts_; } -// repeated .pg_query.Node options = 4 [json_name = "options"]; -inline int CreateSubscriptionStmt::_internal_options_size() const { - return _impl_.options_.size(); +// repeated .pg_query.Node inh_relations = 3 [json_name = "inhRelations"]; +inline int CreateStmt::_internal_inh_relations_size() const { + return _internal_inh_relations().size(); } -inline int CreateSubscriptionStmt::options_size() const { - return _internal_options_size(); +inline int CreateStmt::inh_relations_size() const { + return _internal_inh_relations_size(); } -inline void CreateSubscriptionStmt::clear_options() { - _impl_.options_.Clear(); +inline void CreateStmt::clear_inh_relations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inh_relations_.Clear(); } -inline ::pg_query::Node* CreateSubscriptionStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateSubscriptionStmt.options) - return _impl_.options_.Mutable(index); +inline ::pg_query::Node* CreateStmt::mutable_inh_relations(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.inh_relations) + return _internal_mutable_inh_relations()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateSubscriptionStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateSubscriptionStmt.options) - return &_impl_.options_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateStmt::mutable_inh_relations() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStmt.inh_relations) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_inh_relations(); } -inline const ::pg_query::Node& CreateSubscriptionStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline const ::pg_query::Node& CreateStmt::inh_relations(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.inh_relations) + return _internal_inh_relations().Get(index); } -inline const ::pg_query::Node& CreateSubscriptionStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateSubscriptionStmt.options) - return _internal_options(index); +inline ::pg_query::Node* CreateStmt::add_inh_relations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_inh_relations()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateStmt.inh_relations) + return _add; } -inline ::pg_query::Node* CreateSubscriptionStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateStmt::inh_relations() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateStmt.inh_relations) + return _internal_inh_relations(); } -inline ::pg_query::Node* CreateSubscriptionStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.CreateSubscriptionStmt.options) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateStmt::_internal_inh_relations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inh_relations_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateSubscriptionStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.CreateSubscriptionStmt.options) - return _impl_.options_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateStmt::_internal_mutable_inh_relations() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.inh_relations_; } -// ------------------------------------------------------------------- - -// AlterSubscriptionStmt - -// .pg_query.AlterSubscriptionType kind = 1 [json_name = "kind"]; -inline void AlterSubscriptionStmt::clear_kind() { - _impl_.kind_ = 0; +// .pg_query.PartitionBoundSpec partbound = 4 [json_name = "partbound"]; +inline bool CreateStmt::has_partbound() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.partbound_ != nullptr); + return value; } -inline ::pg_query::AlterSubscriptionType AlterSubscriptionStmt::_internal_kind() const { - return static_cast< ::pg_query::AlterSubscriptionType >(_impl_.kind_); +inline void CreateStmt::clear_partbound() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.partbound_ != nullptr) _impl_.partbound_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::AlterSubscriptionType AlterSubscriptionStmt::kind() const { - // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.kind) - return _internal_kind(); +inline const ::pg_query::PartitionBoundSpec& CreateStmt::_internal_partbound() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::PartitionBoundSpec* p = _impl_.partbound_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_PartitionBoundSpec_default_instance_); } -inline void AlterSubscriptionStmt::_internal_set_kind(::pg_query::AlterSubscriptionType value) { - - _impl_.kind_ = value; +inline const ::pg_query::PartitionBoundSpec& CreateStmt::partbound() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.partbound) + return _internal_partbound(); } -inline void AlterSubscriptionStmt::set_kind(::pg_query::AlterSubscriptionType value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.AlterSubscriptionStmt.kind) +inline void CreateStmt::unsafe_arena_set_allocated_partbound(::pg_query::PartitionBoundSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.partbound_); + } + _impl_.partbound_ = reinterpret_cast<::pg_query::PartitionBoundSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateStmt.partbound) } +inline ::pg_query::PartitionBoundSpec* CreateStmt::release_partbound() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// string subname = 2 [json_name = "subname"]; -inline void AlterSubscriptionStmt::clear_subname() { - _impl_.subname_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::PartitionBoundSpec* released = _impl_.partbound_; + _impl_.partbound_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const std::string& AlterSubscriptionStmt::subname() const { - // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.subname) - return _internal_subname(); +inline ::pg_query::PartitionBoundSpec* CreateStmt::unsafe_arena_release_partbound() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateStmt.partbound) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::PartitionBoundSpec* temp = _impl_.partbound_; + _impl_.partbound_ = nullptr; + return temp; } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterSubscriptionStmt::set_subname(ArgT0&& arg0, ArgT... args) { - - _impl_.subname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterSubscriptionStmt.subname) +inline ::pg_query::PartitionBoundSpec* CreateStmt::_internal_mutable_partbound() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.partbound_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::PartitionBoundSpec>(GetArena()); + _impl_.partbound_ = reinterpret_cast<::pg_query::PartitionBoundSpec*>(p); + } + return _impl_.partbound_; } -inline std::string* AlterSubscriptionStmt::mutable_subname() { - std::string* _s = _internal_mutable_subname(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterSubscriptionStmt.subname) - return _s; +inline ::pg_query::PartitionBoundSpec* CreateStmt::mutable_partbound() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PartitionBoundSpec* _msg = _internal_mutable_partbound(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.partbound) + return _msg; } -inline const std::string& AlterSubscriptionStmt::_internal_subname() const { - return _impl_.subname_.Get(); +inline void CreateStmt::set_allocated_partbound(::pg_query::PartitionBoundSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::PartitionBoundSpec*>(_impl_.partbound_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::PartitionBoundSpec*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.partbound_ = reinterpret_cast<::pg_query::PartitionBoundSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.partbound) } -inline void AlterSubscriptionStmt::_internal_set_subname(const std::string& value) { - - _impl_.subname_.Set(value, GetArenaForAllocation()); + +// .pg_query.PartitionSpec partspec = 5 [json_name = "partspec"]; +inline bool CreateStmt::has_partspec() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.partspec_ != nullptr); + return value; } -inline std::string* AlterSubscriptionStmt::_internal_mutable_subname() { - - return _impl_.subname_.Mutable(GetArenaForAllocation()); +inline void CreateStmt::clear_partspec() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.partspec_ != nullptr) _impl_.partspec_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline std::string* AlterSubscriptionStmt::release_subname() { - // @@protoc_insertion_point(field_release:pg_query.AlterSubscriptionStmt.subname) - return _impl_.subname_.Release(); +inline const ::pg_query::PartitionSpec& CreateStmt::_internal_partspec() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::PartitionSpec* p = _impl_.partspec_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_PartitionSpec_default_instance_); +} +inline const ::pg_query::PartitionSpec& CreateStmt::partspec() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.partspec) + return _internal_partspec(); } -inline void AlterSubscriptionStmt::set_allocated_subname(std::string* subname) { - if (subname != nullptr) { - +inline void CreateStmt::unsafe_arena_set_allocated_partspec(::pg_query::PartitionSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.partspec_); + } + _impl_.partspec_ = reinterpret_cast<::pg_query::PartitionSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateStmt.partspec) +} +inline ::pg_query::PartitionSpec* CreateStmt::release_partspec() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::PartitionSpec* released = _impl_.partspec_; + _impl_.partspec_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } - _impl_.subname_.SetAllocated(subname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.subname_.IsDefault()) { - _impl_.subname_.Set("", GetArenaForAllocation()); +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterSubscriptionStmt.subname) +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::PartitionSpec* CreateStmt::unsafe_arena_release_partspec() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateStmt.partspec) -// string conninfo = 3 [json_name = "conninfo"]; -inline void AlterSubscriptionStmt::clear_conninfo() { - _impl_.conninfo_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::PartitionSpec* temp = _impl_.partspec_; + _impl_.partspec_ = nullptr; + return temp; } -inline const std::string& AlterSubscriptionStmt::conninfo() const { - // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.conninfo) - return _internal_conninfo(); +inline ::pg_query::PartitionSpec* CreateStmt::_internal_mutable_partspec() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.partspec_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::PartitionSpec>(GetArena()); + _impl_.partspec_ = reinterpret_cast<::pg_query::PartitionSpec*>(p); + } + return _impl_.partspec_; } -template -inline PROTOBUF_ALWAYS_INLINE -void AlterSubscriptionStmt::set_conninfo(ArgT0&& arg0, ArgT... args) { - - _impl_.conninfo_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AlterSubscriptionStmt.conninfo) +inline ::pg_query::PartitionSpec* CreateStmt::mutable_partspec() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PartitionSpec* _msg = _internal_mutable_partspec(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.partspec) + return _msg; } -inline std::string* AlterSubscriptionStmt::mutable_conninfo() { - std::string* _s = _internal_mutable_conninfo(); - // @@protoc_insertion_point(field_mutable:pg_query.AlterSubscriptionStmt.conninfo) - return _s; +inline void CreateStmt::set_allocated_partspec(::pg_query::PartitionSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::PartitionSpec*>(_impl_.partspec_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::PartitionSpec*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.partspec_ = reinterpret_cast<::pg_query::PartitionSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.partspec) } -inline const std::string& AlterSubscriptionStmt::_internal_conninfo() const { - return _impl_.conninfo_.Get(); + +// .pg_query.TypeName of_typename = 6 [json_name = "ofTypename"]; +inline bool CreateStmt::has_of_typename() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || _impl_.of_typename_ != nullptr); + return value; } -inline void AlterSubscriptionStmt::_internal_set_conninfo(const std::string& value) { - - _impl_.conninfo_.Set(value, GetArenaForAllocation()); +inline void CreateStmt::clear_of_typename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.of_typename_ != nullptr) _impl_.of_typename_->Clear(); + _impl_._has_bits_[0] &= ~0x00000008u; } -inline std::string* AlterSubscriptionStmt::_internal_mutable_conninfo() { - - return _impl_.conninfo_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::TypeName& CreateStmt::_internal_of_typename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.of_typename_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline std::string* AlterSubscriptionStmt::release_conninfo() { - // @@protoc_insertion_point(field_release:pg_query.AlterSubscriptionStmt.conninfo) - return _impl_.conninfo_.Release(); +inline const ::pg_query::TypeName& CreateStmt::of_typename() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.of_typename) + return _internal_of_typename(); } -inline void AlterSubscriptionStmt::set_allocated_conninfo(std::string* conninfo) { - if (conninfo != nullptr) { - +inline void CreateStmt::unsafe_arena_set_allocated_of_typename(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.of_typename_); + } + _impl_.of_typename_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; } else { - + _impl_._has_bits_[0] &= ~0x00000008u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateStmt.of_typename) +} +inline ::pg_query::TypeName* CreateStmt::release_of_typename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::TypeName* released = _impl_.of_typename_; + _impl_.of_typename_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } - _impl_.conninfo_.SetAllocated(conninfo, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.conninfo_.IsDefault()) { - _impl_.conninfo_.Set("", GetArenaForAllocation()); +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AlterSubscriptionStmt.conninfo) +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::TypeName* CreateStmt::unsafe_arena_release_of_typename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateStmt.of_typename) -// repeated .pg_query.Node publication = 4 [json_name = "publication"]; -inline int AlterSubscriptionStmt::_internal_publication_size() const { - return _impl_.publication_.size(); + _impl_._has_bits_[0] &= ~0x00000008u; + ::pg_query::TypeName* temp = _impl_.of_typename_; + _impl_.of_typename_ = nullptr; + return temp; } -inline int AlterSubscriptionStmt::publication_size() const { - return _internal_publication_size(); +inline ::pg_query::TypeName* CreateStmt::_internal_mutable_of_typename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000008u; + if (_impl_.of_typename_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.of_typename_ = reinterpret_cast<::pg_query::TypeName*>(p); + } + return _impl_.of_typename_; } -inline void AlterSubscriptionStmt::clear_publication() { - _impl_.publication_.Clear(); +inline ::pg_query::TypeName* CreateStmt::mutable_of_typename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_of_typename(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.of_typename) + return _msg; } -inline ::pg_query::Node* AlterSubscriptionStmt::mutable_publication(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterSubscriptionStmt.publication) - return _impl_.publication_.Mutable(index); +inline void CreateStmt::set_allocated_of_typename(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.of_typename_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } + + _impl_.of_typename_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.of_typename) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterSubscriptionStmt::mutable_publication() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterSubscriptionStmt.publication) - return &_impl_.publication_; + +// repeated .pg_query.Node constraints = 7 [json_name = "constraints"]; +inline int CreateStmt::_internal_constraints_size() const { + return _internal_constraints().size(); +} +inline int CreateStmt::constraints_size() const { + return _internal_constraints_size(); } -inline const ::pg_query::Node& AlterSubscriptionStmt::_internal_publication(int index) const { - return _impl_.publication_.Get(index); +inline void CreateStmt::clear_constraints() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.constraints_.Clear(); } -inline const ::pg_query::Node& AlterSubscriptionStmt::publication(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.publication) - return _internal_publication(index); +inline ::pg_query::Node* CreateStmt::mutable_constraints(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.constraints) + return _internal_mutable_constraints()->Mutable(index); } -inline ::pg_query::Node* AlterSubscriptionStmt::_internal_add_publication() { - return _impl_.publication_.Add(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateStmt::mutable_constraints() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStmt.constraints) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_constraints(); } -inline ::pg_query::Node* AlterSubscriptionStmt::add_publication() { - ::pg_query::Node* _add = _internal_add_publication(); - // @@protoc_insertion_point(field_add:pg_query.AlterSubscriptionStmt.publication) +inline const ::pg_query::Node& CreateStmt::constraints(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.constraints) + return _internal_constraints().Get(index); +} +inline ::pg_query::Node* CreateStmt::add_constraints() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_constraints()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateStmt.constraints) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterSubscriptionStmt::publication() const { - // @@protoc_insertion_point(field_list:pg_query.AlterSubscriptionStmt.publication) - return _impl_.publication_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateStmt::constraints() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateStmt.constraints) + return _internal_constraints(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateStmt::_internal_constraints() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.constraints_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateStmt::_internal_mutable_constraints() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.constraints_; } -// repeated .pg_query.Node options = 5 [json_name = "options"]; -inline int AlterSubscriptionStmt::_internal_options_size() const { - return _impl_.options_.size(); +// repeated .pg_query.Node options = 8 [json_name = "options"]; +inline int CreateStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int AlterSubscriptionStmt::options_size() const { +inline int CreateStmt::options_size() const { return _internal_options_size(); } -inline void AlterSubscriptionStmt::clear_options() { +inline void CreateStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); _impl_.options_.Clear(); } -inline ::pg_query::Node* AlterSubscriptionStmt::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterSubscriptionStmt.options) - return _impl_.options_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterSubscriptionStmt::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterSubscriptionStmt.options) - return &_impl_.options_; -} -inline const ::pg_query::Node& AlterSubscriptionStmt::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::Node* CreateStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline const ::pg_query::Node& AlterSubscriptionStmt::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.options) - return _internal_options(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline ::pg_query::Node* AlterSubscriptionStmt::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::pg_query::Node& CreateStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.options) + return _internal_options().Get(index); } -inline ::pg_query::Node* AlterSubscriptionStmt::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.AlterSubscriptionStmt.options) +inline ::pg_query::Node* CreateStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateStmt.options) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterSubscriptionStmt::options() const { - // @@protoc_insertion_point(field_list:pg_query.AlterSubscriptionStmt.options) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); return _impl_.options_; } +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} -// ------------------------------------------------------------------- - -// DropSubscriptionStmt +// .pg_query.OnCommitAction oncommit = 9 [json_name = "oncommit"]; +inline void CreateStmt::clear_oncommit() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.oncommit_ = 0; +} +inline ::pg_query::OnCommitAction CreateStmt::oncommit() const { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.oncommit) + return _internal_oncommit(); +} +inline void CreateStmt::set_oncommit(::pg_query::OnCommitAction value) { + _internal_set_oncommit(value); + // @@protoc_insertion_point(field_set:pg_query.CreateStmt.oncommit) +} +inline ::pg_query::OnCommitAction CreateStmt::_internal_oncommit() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::OnCommitAction>(_impl_.oncommit_); +} +inline void CreateStmt::_internal_set_oncommit(::pg_query::OnCommitAction value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.oncommit_ = value; +} -// string subname = 1 [json_name = "subname"]; -inline void DropSubscriptionStmt::clear_subname() { - _impl_.subname_.ClearToEmpty(); +// string tablespacename = 10 [json_name = "tablespacename"]; +inline void CreateStmt::clear_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tablespacename_.ClearToEmpty(); } -inline const std::string& DropSubscriptionStmt::subname() const { - // @@protoc_insertion_point(field_get:pg_query.DropSubscriptionStmt.subname) - return _internal_subname(); +inline const std::string& CreateStmt::tablespacename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.tablespacename) + return _internal_tablespacename(); } -template -inline PROTOBUF_ALWAYS_INLINE -void DropSubscriptionStmt::set_subname(ArgT0&& arg0, ArgT... args) { - - _impl_.subname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.DropSubscriptionStmt.subname) +template +inline PROTOBUF_ALWAYS_INLINE void CreateStmt::set_tablespacename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tablespacename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateStmt.tablespacename) } -inline std::string* DropSubscriptionStmt::mutable_subname() { - std::string* _s = _internal_mutable_subname(); - // @@protoc_insertion_point(field_mutable:pg_query.DropSubscriptionStmt.subname) +inline std::string* CreateStmt::mutable_tablespacename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_tablespacename(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.tablespacename) return _s; } -inline const std::string& DropSubscriptionStmt::_internal_subname() const { - return _impl_.subname_.Get(); +inline const std::string& CreateStmt::_internal_tablespacename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.tablespacename_.Get(); } -inline void DropSubscriptionStmt::_internal_set_subname(const std::string& value) { - - _impl_.subname_.Set(value, GetArenaForAllocation()); +inline void CreateStmt::_internal_set_tablespacename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tablespacename_.Set(value, GetArena()); } -inline std::string* DropSubscriptionStmt::_internal_mutable_subname() { - - return _impl_.subname_.Mutable(GetArenaForAllocation()); +inline std::string* CreateStmt::_internal_mutable_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.tablespacename_.Mutable( GetArena()); } -inline std::string* DropSubscriptionStmt::release_subname() { - // @@protoc_insertion_point(field_release:pg_query.DropSubscriptionStmt.subname) - return _impl_.subname_.Release(); +inline std::string* CreateStmt::release_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateStmt.tablespacename) + return _impl_.tablespacename_.Release(); } -inline void DropSubscriptionStmt::set_allocated_subname(std::string* subname) { - if (subname != nullptr) { - - } else { - - } - _impl_.subname_.SetAllocated(subname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.subname_.IsDefault()) { - _impl_.subname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.DropSubscriptionStmt.subname) +inline void CreateStmt::set_allocated_tablespacename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tablespacename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.tablespacename_.IsDefault()) { + _impl_.tablespacename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.tablespacename) } -// bool missing_ok = 2 [json_name = "missing_ok"]; -inline void DropSubscriptionStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; +// string access_method = 11 [json_name = "accessMethod"]; +inline void CreateStmt::clear_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.access_method_.ClearToEmpty(); } -inline bool DropSubscriptionStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline const std::string& CreateStmt::access_method() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.access_method) + return _internal_access_method(); } -inline bool DropSubscriptionStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.DropSubscriptionStmt.missing_ok) - return _internal_missing_ok(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateStmt::set_access_method(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.access_method_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateStmt.access_method) } -inline void DropSubscriptionStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline std::string* CreateStmt::mutable_access_method() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_access_method(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateStmt.access_method) + return _s; } -inline void DropSubscriptionStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.DropSubscriptionStmt.missing_ok) +inline const std::string& CreateStmt::_internal_access_method() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.access_method_.Get(); +} +inline void CreateStmt::_internal_set_access_method(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.access_method_.Set(value, GetArena()); +} +inline std::string* CreateStmt::_internal_mutable_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.access_method_.Mutable( GetArena()); +} +inline std::string* CreateStmt::release_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateStmt.access_method) + return _impl_.access_method_.Release(); +} +inline void CreateStmt::set_allocated_access_method(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.access_method_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.access_method_.IsDefault()) { + _impl_.access_method_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStmt.access_method) } -// .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; -inline void DropSubscriptionStmt::clear_behavior() { - _impl_.behavior_ = 0; +// bool if_not_exists = 12 [json_name = "if_not_exists"]; +inline void CreateStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; } -inline ::pg_query::DropBehavior DropSubscriptionStmt::_internal_behavior() const { - return static_cast< ::pg_query::DropBehavior >(_impl_.behavior_); +inline bool CreateStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.CreateStmt.if_not_exists) + return _internal_if_not_exists(); } -inline ::pg_query::DropBehavior DropSubscriptionStmt::behavior() const { - // @@protoc_insertion_point(field_get:pg_query.DropSubscriptionStmt.behavior) - return _internal_behavior(); +inline void CreateStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.CreateStmt.if_not_exists) } -inline void DropSubscriptionStmt::_internal_set_behavior(::pg_query::DropBehavior value) { - - _impl_.behavior_ = value; +inline bool CreateStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; } -inline void DropSubscriptionStmt::set_behavior(::pg_query::DropBehavior value) { - _internal_set_behavior(value); - // @@protoc_insertion_point(field_set:pg_query.DropSubscriptionStmt.behavior) +inline void CreateStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; } // ------------------------------------------------------------------- -// CreateStatsStmt +// Constraint -// repeated .pg_query.Node defnames = 1 [json_name = "defnames"]; -inline int CreateStatsStmt::_internal_defnames_size() const { - return _impl_.defnames_.size(); +// .pg_query.ConstrType contype = 1 [json_name = "contype"]; +inline void Constraint::clear_contype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.contype_ = 0; } -inline int CreateStatsStmt::defnames_size() const { - return _internal_defnames_size(); +inline ::pg_query::ConstrType Constraint::contype() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.contype) + return _internal_contype(); } -inline void CreateStatsStmt::clear_defnames() { - _impl_.defnames_.Clear(); +inline void Constraint::set_contype(::pg_query::ConstrType value) { + _internal_set_contype(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.contype) } -inline ::pg_query::Node* CreateStatsStmt::mutable_defnames(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.defnames) - return _impl_.defnames_.Mutable(index); +inline ::pg_query::ConstrType Constraint::_internal_contype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ConstrType>(_impl_.contype_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateStatsStmt::mutable_defnames() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStatsStmt.defnames) - return &_impl_.defnames_; +inline void Constraint::_internal_set_contype(::pg_query::ConstrType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.contype_ = value; +} + +// string conname = 2 [json_name = "conname"]; +inline void Constraint::clear_conname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conname_.ClearToEmpty(); } -inline const ::pg_query::Node& CreateStatsStmt::_internal_defnames(int index) const { - return _impl_.defnames_.Get(index); +inline const std::string& Constraint::conname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.conname) + return _internal_conname(); } -inline const ::pg_query::Node& CreateStatsStmt::defnames(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.defnames) - return _internal_defnames(index); +template +inline PROTOBUF_ALWAYS_INLINE void Constraint::set_conname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Constraint.conname) +} +inline std::string* Constraint::mutable_conname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_conname(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.conname) + return _s; } -inline ::pg_query::Node* CreateStatsStmt::_internal_add_defnames() { - return _impl_.defnames_.Add(); +inline const std::string& Constraint::_internal_conname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.conname_.Get(); } -inline ::pg_query::Node* CreateStatsStmt::add_defnames() { - ::pg_query::Node* _add = _internal_add_defnames(); - // @@protoc_insertion_point(field_add:pg_query.CreateStatsStmt.defnames) - return _add; +inline void Constraint::_internal_set_conname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conname_.Set(value, GetArena()); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateStatsStmt::defnames() const { - // @@protoc_insertion_point(field_list:pg_query.CreateStatsStmt.defnames) - return _impl_.defnames_; +inline std::string* Constraint::_internal_mutable_conname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.conname_.Mutable( GetArena()); +} +inline std::string* Constraint::release_conname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.conname) + return _impl_.conname_.Release(); +} +inline void Constraint::set_allocated_conname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.conname_.IsDefault()) { + _impl_.conname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.conname) } -// repeated .pg_query.Node stat_types = 2 [json_name = "stat_types"]; -inline int CreateStatsStmt::_internal_stat_types_size() const { - return _impl_.stat_types_.size(); +// bool deferrable = 3 [json_name = "deferrable"]; +inline void Constraint::clear_deferrable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.deferrable_ = false; } -inline int CreateStatsStmt::stat_types_size() const { - return _internal_stat_types_size(); +inline bool Constraint::deferrable() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.deferrable) + return _internal_deferrable(); } -inline void CreateStatsStmt::clear_stat_types() { - _impl_.stat_types_.Clear(); +inline void Constraint::set_deferrable(bool value) { + _internal_set_deferrable(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.deferrable) } -inline ::pg_query::Node* CreateStatsStmt::mutable_stat_types(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.stat_types) - return _impl_.stat_types_.Mutable(index); +inline bool Constraint::_internal_deferrable() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.deferrable_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateStatsStmt::mutable_stat_types() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStatsStmt.stat_types) - return &_impl_.stat_types_; +inline void Constraint::_internal_set_deferrable(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.deferrable_ = value; } -inline const ::pg_query::Node& CreateStatsStmt::_internal_stat_types(int index) const { - return _impl_.stat_types_.Get(index); + +// bool initdeferred = 4 [json_name = "initdeferred"]; +inline void Constraint::clear_initdeferred() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.initdeferred_ = false; } -inline const ::pg_query::Node& CreateStatsStmt::stat_types(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.stat_types) - return _internal_stat_types(index); +inline bool Constraint::initdeferred() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.initdeferred) + return _internal_initdeferred(); } -inline ::pg_query::Node* CreateStatsStmt::_internal_add_stat_types() { - return _impl_.stat_types_.Add(); +inline void Constraint::set_initdeferred(bool value) { + _internal_set_initdeferred(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.initdeferred) } -inline ::pg_query::Node* CreateStatsStmt::add_stat_types() { - ::pg_query::Node* _add = _internal_add_stat_types(); - // @@protoc_insertion_point(field_add:pg_query.CreateStatsStmt.stat_types) - return _add; +inline bool Constraint::_internal_initdeferred() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.initdeferred_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateStatsStmt::stat_types() const { - // @@protoc_insertion_point(field_list:pg_query.CreateStatsStmt.stat_types) - return _impl_.stat_types_; +inline void Constraint::_internal_set_initdeferred(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.initdeferred_ = value; } -// repeated .pg_query.Node exprs = 3 [json_name = "exprs"]; -inline int CreateStatsStmt::_internal_exprs_size() const { - return _impl_.exprs_.size(); +// int32 location = 5 [json_name = "location"]; +inline void Constraint::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; } -inline int CreateStatsStmt::exprs_size() const { - return _internal_exprs_size(); +inline ::int32_t Constraint::location() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.location) + return _internal_location(); } -inline void CreateStatsStmt::clear_exprs() { - _impl_.exprs_.Clear(); +inline void Constraint::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.location) } -inline ::pg_query::Node* CreateStatsStmt::mutable_exprs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.exprs) - return _impl_.exprs_.Mutable(index); +inline ::int32_t Constraint::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateStatsStmt::mutable_exprs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStatsStmt.exprs) - return &_impl_.exprs_; +inline void Constraint::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; } -inline const ::pg_query::Node& CreateStatsStmt::_internal_exprs(int index) const { - return _impl_.exprs_.Get(index); + +// bool is_no_inherit = 6 [json_name = "is_no_inherit"]; +inline void Constraint::clear_is_no_inherit() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_no_inherit_ = false; } -inline const ::pg_query::Node& CreateStatsStmt::exprs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.exprs) - return _internal_exprs(index); +inline bool Constraint::is_no_inherit() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.is_no_inherit) + return _internal_is_no_inherit(); } -inline ::pg_query::Node* CreateStatsStmt::_internal_add_exprs() { - return _impl_.exprs_.Add(); +inline void Constraint::set_is_no_inherit(bool value) { + _internal_set_is_no_inherit(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.is_no_inherit) } -inline ::pg_query::Node* CreateStatsStmt::add_exprs() { - ::pg_query::Node* _add = _internal_add_exprs(); - // @@protoc_insertion_point(field_add:pg_query.CreateStatsStmt.exprs) - return _add; +inline bool Constraint::_internal_is_no_inherit() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_no_inherit_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateStatsStmt::exprs() const { - // @@protoc_insertion_point(field_list:pg_query.CreateStatsStmt.exprs) - return _impl_.exprs_; +inline void Constraint::_internal_set_is_no_inherit(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_no_inherit_ = value; } -// repeated .pg_query.Node relations = 4 [json_name = "relations"]; -inline int CreateStatsStmt::_internal_relations_size() const { - return _impl_.relations_.size(); +// .pg_query.Node raw_expr = 7 [json_name = "raw_expr"]; +inline bool Constraint::has_raw_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.raw_expr_ != nullptr); + return value; } -inline int CreateStatsStmt::relations_size() const { - return _internal_relations_size(); +inline void Constraint::clear_raw_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.raw_expr_ != nullptr) _impl_.raw_expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void CreateStatsStmt::clear_relations() { - _impl_.relations_.Clear(); +inline const ::pg_query::Node& Constraint::_internal_raw_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.raw_expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* CreateStatsStmt::mutable_relations(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.relations) - return _impl_.relations_.Mutable(index); +inline const ::pg_query::Node& Constraint::raw_expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.raw_expr) + return _internal_raw_expr(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateStatsStmt::mutable_relations() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStatsStmt.relations) - return &_impl_.relations_; +inline void Constraint::unsafe_arena_set_allocated_raw_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.raw_expr_); + } + _impl_.raw_expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Constraint.raw_expr) } -inline const ::pg_query::Node& CreateStatsStmt::_internal_relations(int index) const { - return _impl_.relations_.Get(index); +inline ::pg_query::Node* Constraint::release_raw_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.raw_expr_; + _impl_.raw_expr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& CreateStatsStmt::relations(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.relations) - return _internal_relations(index); +inline ::pg_query::Node* Constraint::unsafe_arena_release_raw_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.raw_expr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.raw_expr_; + _impl_.raw_expr_ = nullptr; + return temp; } -inline ::pg_query::Node* CreateStatsStmt::_internal_add_relations() { - return _impl_.relations_.Add(); +inline ::pg_query::Node* Constraint::_internal_mutable_raw_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.raw_expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.raw_expr_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.raw_expr_; } -inline ::pg_query::Node* CreateStatsStmt::add_relations() { - ::pg_query::Node* _add = _internal_add_relations(); - // @@protoc_insertion_point(field_add:pg_query.CreateStatsStmt.relations) - return _add; +inline ::pg_query::Node* Constraint::mutable_raw_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_raw_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.raw_expr) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateStatsStmt::relations() const { - // @@protoc_insertion_point(field_list:pg_query.CreateStatsStmt.relations) - return _impl_.relations_; +inline void Constraint::set_allocated_raw_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.raw_expr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.raw_expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.raw_expr) } -// string stxcomment = 5 [json_name = "stxcomment"]; -inline void CreateStatsStmt::clear_stxcomment() { - _impl_.stxcomment_.ClearToEmpty(); +// string cooked_expr = 8 [json_name = "cooked_expr"]; +inline void Constraint::clear_cooked_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cooked_expr_.ClearToEmpty(); } -inline const std::string& CreateStatsStmt::stxcomment() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.stxcomment) - return _internal_stxcomment(); +inline const std::string& Constraint::cooked_expr() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.cooked_expr) + return _internal_cooked_expr(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CreateStatsStmt::set_stxcomment(ArgT0&& arg0, ArgT... args) { - - _impl_.stxcomment_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CreateStatsStmt.stxcomment) +template +inline PROTOBUF_ALWAYS_INLINE void Constraint::set_cooked_expr(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cooked_expr_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Constraint.cooked_expr) } -inline std::string* CreateStatsStmt::mutable_stxcomment() { - std::string* _s = _internal_mutable_stxcomment(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.stxcomment) +inline std::string* Constraint::mutable_cooked_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_cooked_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.cooked_expr) return _s; } -inline const std::string& CreateStatsStmt::_internal_stxcomment() const { - return _impl_.stxcomment_.Get(); +inline const std::string& Constraint::_internal_cooked_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cooked_expr_.Get(); } -inline void CreateStatsStmt::_internal_set_stxcomment(const std::string& value) { - - _impl_.stxcomment_.Set(value, GetArenaForAllocation()); +inline void Constraint::_internal_set_cooked_expr(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cooked_expr_.Set(value, GetArena()); } -inline std::string* CreateStatsStmt::_internal_mutable_stxcomment() { - - return _impl_.stxcomment_.Mutable(GetArenaForAllocation()); +inline std::string* Constraint::_internal_mutable_cooked_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.cooked_expr_.Mutable( GetArena()); } -inline std::string* CreateStatsStmt::release_stxcomment() { - // @@protoc_insertion_point(field_release:pg_query.CreateStatsStmt.stxcomment) - return _impl_.stxcomment_.Release(); +inline std::string* Constraint::release_cooked_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.cooked_expr) + return _impl_.cooked_expr_.Release(); } -inline void CreateStatsStmt::set_allocated_stxcomment(std::string* stxcomment) { - if (stxcomment != nullptr) { - - } else { - - } - _impl_.stxcomment_.SetAllocated(stxcomment, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.stxcomment_.IsDefault()) { - _impl_.stxcomment_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStatsStmt.stxcomment) +inline void Constraint::set_allocated_cooked_expr(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cooked_expr_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.cooked_expr_.IsDefault()) { + _impl_.cooked_expr_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.cooked_expr) } -// bool transformed = 6 [json_name = "transformed"]; -inline void CreateStatsStmt::clear_transformed() { - _impl_.transformed_ = false; +// string generated_when = 9 [json_name = "generated_when"]; +inline void Constraint::clear_generated_when() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.generated_when_.ClearToEmpty(); } -inline bool CreateStatsStmt::_internal_transformed() const { - return _impl_.transformed_; +inline const std::string& Constraint::generated_when() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.generated_when) + return _internal_generated_when(); } -inline bool CreateStatsStmt::transformed() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.transformed) - return _internal_transformed(); +template +inline PROTOBUF_ALWAYS_INLINE void Constraint::set_generated_when(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.generated_when_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Constraint.generated_when) } -inline void CreateStatsStmt::_internal_set_transformed(bool value) { - - _impl_.transformed_ = value; +inline std::string* Constraint::mutable_generated_when() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_generated_when(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.generated_when) + return _s; } -inline void CreateStatsStmt::set_transformed(bool value) { - _internal_set_transformed(value); - // @@protoc_insertion_point(field_set:pg_query.CreateStatsStmt.transformed) +inline const std::string& Constraint::_internal_generated_when() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.generated_when_.Get(); +} +inline void Constraint::_internal_set_generated_when(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.generated_when_.Set(value, GetArena()); +} +inline std::string* Constraint::_internal_mutable_generated_when() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.generated_when_.Mutable( GetArena()); +} +inline std::string* Constraint::release_generated_when() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.generated_when) + return _impl_.generated_when_.Release(); +} +inline void Constraint::set_allocated_generated_when(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.generated_when_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.generated_when_.IsDefault()) { + _impl_.generated_when_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.generated_when) } -// bool if_not_exists = 7 [json_name = "if_not_exists"]; -inline void CreateStatsStmt::clear_if_not_exists() { - _impl_.if_not_exists_ = false; +// bool nulls_not_distinct = 10 [json_name = "nulls_not_distinct"]; +inline void Constraint::clear_nulls_not_distinct() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.nulls_not_distinct_ = false; } -inline bool CreateStatsStmt::_internal_if_not_exists() const { - return _impl_.if_not_exists_; +inline bool Constraint::nulls_not_distinct() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.nulls_not_distinct) + return _internal_nulls_not_distinct(); } -inline bool CreateStatsStmt::if_not_exists() const { - // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.if_not_exists) - return _internal_if_not_exists(); +inline void Constraint::set_nulls_not_distinct(bool value) { + _internal_set_nulls_not_distinct(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.nulls_not_distinct) } -inline void CreateStatsStmt::_internal_set_if_not_exists(bool value) { - - _impl_.if_not_exists_ = value; +inline bool Constraint::_internal_nulls_not_distinct() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.nulls_not_distinct_; } -inline void CreateStatsStmt::set_if_not_exists(bool value) { - _internal_set_if_not_exists(value); - // @@protoc_insertion_point(field_set:pg_query.CreateStatsStmt.if_not_exists) +inline void Constraint::_internal_set_nulls_not_distinct(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.nulls_not_distinct_ = value; } -// ------------------------------------------------------------------- - -// AlterCollationStmt - -// repeated .pg_query.Node collname = 1 [json_name = "collname"]; -inline int AlterCollationStmt::_internal_collname_size() const { - return _impl_.collname_.size(); +// repeated .pg_query.Node keys = 11 [json_name = "keys"]; +inline int Constraint::_internal_keys_size() const { + return _internal_keys().size(); } -inline int AlterCollationStmt::collname_size() const { - return _internal_collname_size(); +inline int Constraint::keys_size() const { + return _internal_keys_size(); } -inline void AlterCollationStmt::clear_collname() { - _impl_.collname_.Clear(); +inline void Constraint::clear_keys() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.keys_.Clear(); } -inline ::pg_query::Node* AlterCollationStmt::mutable_collname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterCollationStmt.collname) - return _impl_.collname_.Mutable(index); +inline ::pg_query::Node* Constraint::mutable_keys(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.keys) + return _internal_mutable_keys()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterCollationStmt::mutable_collname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterCollationStmt.collname) - return &_impl_.collname_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Constraint::mutable_keys() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.keys) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_keys(); } -inline const ::pg_query::Node& AlterCollationStmt::_internal_collname(int index) const { - return _impl_.collname_.Get(index); +inline const ::pg_query::Node& Constraint::keys(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.keys) + return _internal_keys().Get(index); } -inline const ::pg_query::Node& AlterCollationStmt::collname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterCollationStmt.collname) - return _internal_collname(index); +inline ::pg_query::Node* Constraint::add_keys() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_keys()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Constraint.keys) + return _add; } -inline ::pg_query::Node* AlterCollationStmt::_internal_add_collname() { - return _impl_.collname_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Constraint::keys() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Constraint.keys) + return _internal_keys(); } -inline ::pg_query::Node* AlterCollationStmt::add_collname() { - ::pg_query::Node* _add = _internal_add_collname(); - // @@protoc_insertion_point(field_add:pg_query.AlterCollationStmt.collname) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Constraint::_internal_keys() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.keys_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterCollationStmt::collname() const { - // @@protoc_insertion_point(field_list:pg_query.AlterCollationStmt.collname) - return _impl_.collname_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Constraint::_internal_mutable_keys() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.keys_; } -// ------------------------------------------------------------------- - -// CallStmt - -// .pg_query.FuncCall funccall = 1 [json_name = "funccall"]; -inline bool CallStmt::_internal_has_funccall() const { - return this != internal_default_instance() && _impl_.funccall_ != nullptr; -} -inline bool CallStmt::has_funccall() const { - return _internal_has_funccall(); +// repeated .pg_query.Node including = 12 [json_name = "including"]; +inline int Constraint::_internal_including_size() const { + return _internal_including().size(); } -inline void CallStmt::clear_funccall() { - if (GetArenaForAllocation() == nullptr && _impl_.funccall_ != nullptr) { - delete _impl_.funccall_; - } - _impl_.funccall_ = nullptr; +inline int Constraint::including_size() const { + return _internal_including_size(); } -inline const ::pg_query::FuncCall& CallStmt::_internal_funccall() const { - const ::pg_query::FuncCall* p = _impl_.funccall_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_FuncCall_default_instance_); +inline void Constraint::clear_including() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.including_.Clear(); } -inline const ::pg_query::FuncCall& CallStmt::funccall() const { - // @@protoc_insertion_point(field_get:pg_query.CallStmt.funccall) - return _internal_funccall(); +inline ::pg_query::Node* Constraint::mutable_including(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.including) + return _internal_mutable_including()->Mutable(index); } -inline void CallStmt::unsafe_arena_set_allocated_funccall( - ::pg_query::FuncCall* funccall) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.funccall_); - } - _impl_.funccall_ = funccall; - if (funccall) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CallStmt.funccall) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Constraint::mutable_including() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.including) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_including(); } -inline ::pg_query::FuncCall* CallStmt::release_funccall() { - - ::pg_query::FuncCall* temp = _impl_.funccall_; - _impl_.funccall_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& Constraint::including(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.including) + return _internal_including().Get(index); } -inline ::pg_query::FuncCall* CallStmt::unsafe_arena_release_funccall() { - // @@protoc_insertion_point(field_release:pg_query.CallStmt.funccall) - - ::pg_query::FuncCall* temp = _impl_.funccall_; - _impl_.funccall_ = nullptr; - return temp; +inline ::pg_query::Node* Constraint::add_including() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_including()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Constraint.including) + return _add; } -inline ::pg_query::FuncCall* CallStmt::_internal_mutable_funccall() { - - if (_impl_.funccall_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::FuncCall>(GetArenaForAllocation()); - _impl_.funccall_ = p; - } - return _impl_.funccall_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Constraint::including() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Constraint.including) + return _internal_including(); } -inline ::pg_query::FuncCall* CallStmt::mutable_funccall() { - ::pg_query::FuncCall* _msg = _internal_mutable_funccall(); - // @@protoc_insertion_point(field_mutable:pg_query.CallStmt.funccall) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Constraint::_internal_including() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.including_; } -inline void CallStmt::set_allocated_funccall(::pg_query::FuncCall* funccall) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.funccall_; - } - if (funccall) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(funccall); - if (message_arena != submessage_arena) { - funccall = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, funccall, submessage_arena); - } - - } else { - - } - _impl_.funccall_ = funccall; - // @@protoc_insertion_point(field_set_allocated:pg_query.CallStmt.funccall) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Constraint::_internal_mutable_including() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.including_; } -// .pg_query.FuncExpr funcexpr = 2 [json_name = "funcexpr"]; -inline bool CallStmt::_internal_has_funcexpr() const { - return this != internal_default_instance() && _impl_.funcexpr_ != nullptr; -} -inline bool CallStmt::has_funcexpr() const { - return _internal_has_funcexpr(); +// repeated .pg_query.Node exclusions = 13 [json_name = "exclusions"]; +inline int Constraint::_internal_exclusions_size() const { + return _internal_exclusions().size(); } -inline void CallStmt::clear_funcexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.funcexpr_ != nullptr) { - delete _impl_.funcexpr_; - } - _impl_.funcexpr_ = nullptr; +inline int Constraint::exclusions_size() const { + return _internal_exclusions_size(); } -inline const ::pg_query::FuncExpr& CallStmt::_internal_funcexpr() const { - const ::pg_query::FuncExpr* p = _impl_.funcexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_FuncExpr_default_instance_); +inline void Constraint::clear_exclusions() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.exclusions_.Clear(); } -inline const ::pg_query::FuncExpr& CallStmt::funcexpr() const { - // @@protoc_insertion_point(field_get:pg_query.CallStmt.funcexpr) - return _internal_funcexpr(); +inline ::pg_query::Node* Constraint::mutable_exclusions(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.exclusions) + return _internal_mutable_exclusions()->Mutable(index); } -inline void CallStmt::unsafe_arena_set_allocated_funcexpr( - ::pg_query::FuncExpr* funcexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.funcexpr_); - } - _impl_.funcexpr_ = funcexpr; - if (funcexpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CallStmt.funcexpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Constraint::mutable_exclusions() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.exclusions) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_exclusions(); } -inline ::pg_query::FuncExpr* CallStmt::release_funcexpr() { - - ::pg_query::FuncExpr* temp = _impl_.funcexpr_; - _impl_.funcexpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& Constraint::exclusions(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.exclusions) + return _internal_exclusions().Get(index); } -inline ::pg_query::FuncExpr* CallStmt::unsafe_arena_release_funcexpr() { - // @@protoc_insertion_point(field_release:pg_query.CallStmt.funcexpr) - - ::pg_query::FuncExpr* temp = _impl_.funcexpr_; - _impl_.funcexpr_ = nullptr; - return temp; +inline ::pg_query::Node* Constraint::add_exclusions() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_exclusions()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Constraint.exclusions) + return _add; } -inline ::pg_query::FuncExpr* CallStmt::_internal_mutable_funcexpr() { - - if (_impl_.funcexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::FuncExpr>(GetArenaForAllocation()); - _impl_.funcexpr_ = p; - } - return _impl_.funcexpr_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Constraint::exclusions() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Constraint.exclusions) + return _internal_exclusions(); } -inline ::pg_query::FuncExpr* CallStmt::mutable_funcexpr() { - ::pg_query::FuncExpr* _msg = _internal_mutable_funcexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.CallStmt.funcexpr) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Constraint::_internal_exclusions() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.exclusions_; } -inline void CallStmt::set_allocated_funcexpr(::pg_query::FuncExpr* funcexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.funcexpr_; - } - if (funcexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(funcexpr); - if (message_arena != submessage_arena) { - funcexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, funcexpr, submessage_arena); - } - - } else { - - } - _impl_.funcexpr_ = funcexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.CallStmt.funcexpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Constraint::_internal_mutable_exclusions() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.exclusions_; } -// repeated .pg_query.Node outargs = 3 [json_name = "outargs"]; -inline int CallStmt::_internal_outargs_size() const { - return _impl_.outargs_.size(); +// repeated .pg_query.Node options = 14 [json_name = "options"]; +inline int Constraint::_internal_options_size() const { + return _internal_options().size(); } -inline int CallStmt::outargs_size() const { - return _internal_outargs_size(); +inline int Constraint::options_size() const { + return _internal_options_size(); } -inline void CallStmt::clear_outargs() { - _impl_.outargs_.Clear(); +inline void Constraint::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline ::pg_query::Node* CallStmt::mutable_outargs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CallStmt.outargs) - return _impl_.outargs_.Mutable(index); +inline ::pg_query::Node* Constraint::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.options) + return _internal_mutable_options()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CallStmt::mutable_outargs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CallStmt.outargs) - return &_impl_.outargs_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Constraint::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline const ::pg_query::Node& CallStmt::_internal_outargs(int index) const { - return _impl_.outargs_.Get(index); +inline const ::pg_query::Node& Constraint::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.options) + return _internal_options().Get(index); } -inline const ::pg_query::Node& CallStmt::outargs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CallStmt.outargs) - return _internal_outargs(index); +inline ::pg_query::Node* Constraint::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Constraint.options) + return _add; } -inline ::pg_query::Node* CallStmt::_internal_add_outargs() { - return _impl_.outargs_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Constraint::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Constraint.options) + return _internal_options(); } -inline ::pg_query::Node* CallStmt::add_outargs() { - ::pg_query::Node* _add = _internal_add_outargs(); - // @@protoc_insertion_point(field_add:pg_query.CallStmt.outargs) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Constraint::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CallStmt::outargs() const { - // @@protoc_insertion_point(field_list:pg_query.CallStmt.outargs) - return _impl_.outargs_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Constraint::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// ------------------------------------------------------------------- - -// AlterStatsStmt - -// repeated .pg_query.Node defnames = 1 [json_name = "defnames"]; -inline int AlterStatsStmt::_internal_defnames_size() const { - return _impl_.defnames_.size(); -} -inline int AlterStatsStmt::defnames_size() const { - return _internal_defnames_size(); +// string indexname = 15 [json_name = "indexname"]; +inline void Constraint::clear_indexname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indexname_.ClearToEmpty(); } -inline void AlterStatsStmt::clear_defnames() { - _impl_.defnames_.Clear(); +inline const std::string& Constraint::indexname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.indexname) + return _internal_indexname(); } -inline ::pg_query::Node* AlterStatsStmt::mutable_defnames(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AlterStatsStmt.defnames) - return _impl_.defnames_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void Constraint::set_indexname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indexname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Constraint.indexname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AlterStatsStmt::mutable_defnames() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AlterStatsStmt.defnames) - return &_impl_.defnames_; +inline std::string* Constraint::mutable_indexname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_indexname(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.indexname) + return _s; } -inline const ::pg_query::Node& AlterStatsStmt::_internal_defnames(int index) const { - return _impl_.defnames_.Get(index); +inline const std::string& Constraint::_internal_indexname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.indexname_.Get(); } -inline const ::pg_query::Node& AlterStatsStmt::defnames(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AlterStatsStmt.defnames) - return _internal_defnames(index); +inline void Constraint::_internal_set_indexname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indexname_.Set(value, GetArena()); } -inline ::pg_query::Node* AlterStatsStmt::_internal_add_defnames() { - return _impl_.defnames_.Add(); +inline std::string* Constraint::_internal_mutable_indexname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.indexname_.Mutable( GetArena()); } -inline ::pg_query::Node* AlterStatsStmt::add_defnames() { - ::pg_query::Node* _add = _internal_add_defnames(); - // @@protoc_insertion_point(field_add:pg_query.AlterStatsStmt.defnames) - return _add; +inline std::string* Constraint::release_indexname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.indexname) + return _impl_.indexname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AlterStatsStmt::defnames() const { - // @@protoc_insertion_point(field_list:pg_query.AlterStatsStmt.defnames) - return _impl_.defnames_; +inline void Constraint::set_allocated_indexname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indexname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.indexname_.IsDefault()) { + _impl_.indexname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.indexname) } -// int32 stxstattarget = 2 [json_name = "stxstattarget"]; -inline void AlterStatsStmt::clear_stxstattarget() { - _impl_.stxstattarget_ = 0; -} -inline int32_t AlterStatsStmt::_internal_stxstattarget() const { - return _impl_.stxstattarget_; +// string indexspace = 16 [json_name = "indexspace"]; +inline void Constraint::clear_indexspace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indexspace_.ClearToEmpty(); } -inline int32_t AlterStatsStmt::stxstattarget() const { - // @@protoc_insertion_point(field_get:pg_query.AlterStatsStmt.stxstattarget) - return _internal_stxstattarget(); +inline const std::string& Constraint::indexspace() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.indexspace) + return _internal_indexspace(); } -inline void AlterStatsStmt::_internal_set_stxstattarget(int32_t value) { - - _impl_.stxstattarget_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void Constraint::set_indexspace(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indexspace_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Constraint.indexspace) } -inline void AlterStatsStmt::set_stxstattarget(int32_t value) { - _internal_set_stxstattarget(value); - // @@protoc_insertion_point(field_set:pg_query.AlterStatsStmt.stxstattarget) +inline std::string* Constraint::mutable_indexspace() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_indexspace(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.indexspace) + return _s; } - -// bool missing_ok = 3 [json_name = "missing_ok"]; -inline void AlterStatsStmt::clear_missing_ok() { - _impl_.missing_ok_ = false; +inline const std::string& Constraint::_internal_indexspace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.indexspace_.Get(); } -inline bool AlterStatsStmt::_internal_missing_ok() const { - return _impl_.missing_ok_; +inline void Constraint::_internal_set_indexspace(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indexspace_.Set(value, GetArena()); } -inline bool AlterStatsStmt::missing_ok() const { - // @@protoc_insertion_point(field_get:pg_query.AlterStatsStmt.missing_ok) - return _internal_missing_ok(); +inline std::string* Constraint::_internal_mutable_indexspace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.indexspace_.Mutable( GetArena()); } -inline void AlterStatsStmt::_internal_set_missing_ok(bool value) { - - _impl_.missing_ok_ = value; +inline std::string* Constraint::release_indexspace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.indexspace) + return _impl_.indexspace_.Release(); } -inline void AlterStatsStmt::set_missing_ok(bool value) { - _internal_set_missing_ok(value); - // @@protoc_insertion_point(field_set:pg_query.AlterStatsStmt.missing_ok) +inline void Constraint::set_allocated_indexspace(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indexspace_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.indexspace_.IsDefault()) { + _impl_.indexspace_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.indexspace) } -// ------------------------------------------------------------------- - -// A_Expr - -// .pg_query.A_Expr_Kind kind = 1 [json_name = "kind"]; -inline void A_Expr::clear_kind() { - _impl_.kind_ = 0; +// bool reset_default_tblspc = 17 [json_name = "reset_default_tblspc"]; +inline void Constraint::clear_reset_default_tblspc() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.reset_default_tblspc_ = false; } -inline ::pg_query::A_Expr_Kind A_Expr::_internal_kind() const { - return static_cast< ::pg_query::A_Expr_Kind >(_impl_.kind_); +inline bool Constraint::reset_default_tblspc() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.reset_default_tblspc) + return _internal_reset_default_tblspc(); } -inline ::pg_query::A_Expr_Kind A_Expr::kind() const { - // @@protoc_insertion_point(field_get:pg_query.A_Expr.kind) - return _internal_kind(); +inline void Constraint::set_reset_default_tblspc(bool value) { + _internal_set_reset_default_tblspc(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.reset_default_tblspc) } -inline void A_Expr::_internal_set_kind(::pg_query::A_Expr_Kind value) { - - _impl_.kind_ = value; +inline bool Constraint::_internal_reset_default_tblspc() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.reset_default_tblspc_; } -inline void A_Expr::set_kind(::pg_query::A_Expr_Kind value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.A_Expr.kind) +inline void Constraint::_internal_set_reset_default_tblspc(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.reset_default_tblspc_ = value; } -// repeated .pg_query.Node name = 2 [json_name = "name"]; -inline int A_Expr::_internal_name_size() const { - return _impl_.name_.size(); -} -inline int A_Expr::name_size() const { - return _internal_name_size(); +// string access_method = 18 [json_name = "access_method"]; +inline void Constraint::clear_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.access_method_.ClearToEmpty(); } -inline void A_Expr::clear_name() { - _impl_.name_.Clear(); +inline const std::string& Constraint::access_method() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.access_method) + return _internal_access_method(); } -inline ::pg_query::Node* A_Expr::mutable_name(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.A_Expr.name) - return _impl_.name_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void Constraint::set_access_method(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.access_method_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Constraint.access_method) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -A_Expr::mutable_name() { - // @@protoc_insertion_point(field_mutable_list:pg_query.A_Expr.name) - return &_impl_.name_; +inline std::string* Constraint::mutable_access_method() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_access_method(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.access_method) + return _s; } -inline const ::pg_query::Node& A_Expr::_internal_name(int index) const { - return _impl_.name_.Get(index); +inline const std::string& Constraint::_internal_access_method() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.access_method_.Get(); } -inline const ::pg_query::Node& A_Expr::name(int index) const { - // @@protoc_insertion_point(field_get:pg_query.A_Expr.name) - return _internal_name(index); +inline void Constraint::_internal_set_access_method(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.access_method_.Set(value, GetArena()); } -inline ::pg_query::Node* A_Expr::_internal_add_name() { - return _impl_.name_.Add(); +inline std::string* Constraint::_internal_mutable_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.access_method_.Mutable( GetArena()); } -inline ::pg_query::Node* A_Expr::add_name() { - ::pg_query::Node* _add = _internal_add_name(); - // @@protoc_insertion_point(field_add:pg_query.A_Expr.name) - return _add; +inline std::string* Constraint::release_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.access_method) + return _impl_.access_method_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -A_Expr::name() const { - // @@protoc_insertion_point(field_list:pg_query.A_Expr.name) - return _impl_.name_; +inline void Constraint::set_allocated_access_method(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.access_method_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.access_method_.IsDefault()) { + _impl_.access_method_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.access_method) } -// .pg_query.Node lexpr = 3 [json_name = "lexpr"]; -inline bool A_Expr::_internal_has_lexpr() const { - return this != internal_default_instance() && _impl_.lexpr_ != nullptr; -} -inline bool A_Expr::has_lexpr() const { - return _internal_has_lexpr(); +// .pg_query.Node where_clause = 19 [json_name = "where_clause"]; +inline bool Constraint::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; } -inline void A_Expr::clear_lexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.lexpr_ != nullptr) { - delete _impl_.lexpr_; - } - _impl_.lexpr_ = nullptr; +inline void Constraint::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& A_Expr::_internal_lexpr() const { - const ::pg_query::Node* p = _impl_.lexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& Constraint::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.where_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& A_Expr::lexpr() const { - // @@protoc_insertion_point(field_get:pg_query.A_Expr.lexpr) - return _internal_lexpr(); +inline const ::pg_query::Node& Constraint::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.where_clause) + return _internal_where_clause(); } -inline void A_Expr::unsafe_arena_set_allocated_lexpr( - ::pg_query::Node* lexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.lexpr_); +inline void Constraint::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); } - _impl_.lexpr_ = lexpr; - if (lexpr) { - + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Expr.lexpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Constraint.where_clause) } -inline ::pg_query::Node* A_Expr::release_lexpr() { - - ::pg_query::Node* temp = _impl_.lexpr_; - _impl_.lexpr_ = nullptr; +inline ::pg_query::Node* Constraint::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* A_Expr::unsafe_arena_release_lexpr() { - // @@protoc_insertion_point(field_release:pg_query.A_Expr.lexpr) - - ::pg_query::Node* temp = _impl_.lexpr_; - _impl_.lexpr_ = nullptr; +inline ::pg_query::Node* Constraint::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.where_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; return temp; } -inline ::pg_query::Node* A_Expr::_internal_mutable_lexpr() { - - if (_impl_.lexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.lexpr_ = p; +inline ::pg_query::Node* Constraint::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.where_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.lexpr_; + return _impl_.where_clause_; } -inline ::pg_query::Node* A_Expr::mutable_lexpr() { - ::pg_query::Node* _msg = _internal_mutable_lexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Expr.lexpr) +inline ::pg_query::Node* Constraint::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_where_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.where_clause) return _msg; } -inline void A_Expr::set_allocated_lexpr(::pg_query::Node* lexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Constraint::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.lexpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); } - if (lexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(lexpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - lexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, lexpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.lexpr_ = lexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.A_Expr.lexpr) -} -// .pg_query.Node rexpr = 4 [json_name = "rexpr"]; -inline bool A_Expr::_internal_has_rexpr() const { - return this != internal_default_instance() && _impl_.rexpr_ != nullptr; + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.where_clause) } -inline bool A_Expr::has_rexpr() const { - return _internal_has_rexpr(); + +// .pg_query.RangeVar pktable = 20 [json_name = "pktable"]; +inline bool Constraint::has_pktable() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.pktable_ != nullptr); + return value; } -inline void A_Expr::clear_rexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.rexpr_ != nullptr) { - delete _impl_.rexpr_; - } - _impl_.rexpr_ = nullptr; +inline void Constraint::clear_pktable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.pktable_ != nullptr) _impl_.pktable_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline const ::pg_query::Node& A_Expr::_internal_rexpr() const { - const ::pg_query::Node* p = _impl_.rexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::RangeVar& Constraint::_internal_pktable() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.pktable_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::Node& A_Expr::rexpr() const { - // @@protoc_insertion_point(field_get:pg_query.A_Expr.rexpr) - return _internal_rexpr(); +inline const ::pg_query::RangeVar& Constraint::pktable() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.pktable) + return _internal_pktable(); } -inline void A_Expr::unsafe_arena_set_allocated_rexpr( - ::pg_query::Node* rexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.rexpr_); +inline void Constraint::unsafe_arena_set_allocated_pktable(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.pktable_); } - _impl_.rexpr_ = rexpr; - if (rexpr) { - + _impl_.pktable_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Expr.rexpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Constraint.pktable) } -inline ::pg_query::Node* A_Expr::release_rexpr() { - - ::pg_query::Node* temp = _impl_.rexpr_; - _impl_.rexpr_ = nullptr; +inline ::pg_query::RangeVar* Constraint::release_pktable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::RangeVar* released = _impl_.pktable_; + _impl_.pktable_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* A_Expr::unsafe_arena_release_rexpr() { - // @@protoc_insertion_point(field_release:pg_query.A_Expr.rexpr) - - ::pg_query::Node* temp = _impl_.rexpr_; - _impl_.rexpr_ = nullptr; +inline ::pg_query::RangeVar* Constraint::unsafe_arena_release_pktable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.pktable) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::RangeVar* temp = _impl_.pktable_; + _impl_.pktable_ = nullptr; return temp; } -inline ::pg_query::Node* A_Expr::_internal_mutable_rexpr() { - - if (_impl_.rexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.rexpr_ = p; +inline ::pg_query::RangeVar* Constraint::_internal_mutable_pktable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.pktable_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.pktable_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.rexpr_; + return _impl_.pktable_; } -inline ::pg_query::Node* A_Expr::mutable_rexpr() { - ::pg_query::Node* _msg = _internal_mutable_rexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Expr.rexpr) +inline ::pg_query::RangeVar* Constraint::mutable_pktable() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_pktable(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.pktable) return _msg; } -inline void A_Expr::set_allocated_rexpr(::pg_query::Node* rexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void Constraint::set_allocated_pktable(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.rexpr_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.pktable_); } - if (rexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(rexpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - rexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, rexpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.rexpr_ = rexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.A_Expr.rexpr) + + _impl_.pktable_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.pktable) } -// int32 location = 5 [json_name = "location"]; -inline void A_Expr::clear_location() { - _impl_.location_ = 0; +// repeated .pg_query.Node fk_attrs = 21 [json_name = "fk_attrs"]; +inline int Constraint::_internal_fk_attrs_size() const { + return _internal_fk_attrs().size(); } -inline int32_t A_Expr::_internal_location() const { - return _impl_.location_; +inline int Constraint::fk_attrs_size() const { + return _internal_fk_attrs_size(); } -inline int32_t A_Expr::location() const { - // @@protoc_insertion_point(field_get:pg_query.A_Expr.location) - return _internal_location(); +inline void Constraint::clear_fk_attrs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fk_attrs_.Clear(); } -inline void A_Expr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* Constraint::mutable_fk_attrs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_attrs) + return _internal_mutable_fk_attrs()->Mutable(index); } -inline void A_Expr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.A_Expr.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Constraint::mutable_fk_attrs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.fk_attrs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_fk_attrs(); } - -// ------------------------------------------------------------------- - -// ColumnRef - -// repeated .pg_query.Node fields = 1 [json_name = "fields"]; -inline int ColumnRef::_internal_fields_size() const { - return _impl_.fields_.size(); +inline const ::pg_query::Node& Constraint::fk_attrs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_attrs) + return _internal_fk_attrs().Get(index); } -inline int ColumnRef::fields_size() const { - return _internal_fields_size(); +inline ::pg_query::Node* Constraint::add_fk_attrs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_fk_attrs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Constraint.fk_attrs) + return _add; } -inline void ColumnRef::clear_fields() { - _impl_.fields_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Constraint::fk_attrs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Constraint.fk_attrs) + return _internal_fk_attrs(); } -inline ::pg_query::Node* ColumnRef::mutable_fields(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ColumnRef.fields) - return _impl_.fields_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Constraint::_internal_fk_attrs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fk_attrs_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ColumnRef::mutable_fields() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ColumnRef.fields) - return &_impl_.fields_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Constraint::_internal_mutable_fk_attrs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.fk_attrs_; } -inline const ::pg_query::Node& ColumnRef::_internal_fields(int index) const { - return _impl_.fields_.Get(index); + +// repeated .pg_query.Node pk_attrs = 22 [json_name = "pk_attrs"]; +inline int Constraint::_internal_pk_attrs_size() const { + return _internal_pk_attrs().size(); } -inline const ::pg_query::Node& ColumnRef::fields(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ColumnRef.fields) - return _internal_fields(index); +inline int Constraint::pk_attrs_size() const { + return _internal_pk_attrs_size(); } -inline ::pg_query::Node* ColumnRef::_internal_add_fields() { - return _impl_.fields_.Add(); +inline void Constraint::clear_pk_attrs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pk_attrs_.Clear(); } -inline ::pg_query::Node* ColumnRef::add_fields() { - ::pg_query::Node* _add = _internal_add_fields(); - // @@protoc_insertion_point(field_add:pg_query.ColumnRef.fields) +inline ::pg_query::Node* Constraint::mutable_pk_attrs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.pk_attrs) + return _internal_mutable_pk_attrs()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Constraint::mutable_pk_attrs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.pk_attrs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_pk_attrs(); +} +inline const ::pg_query::Node& Constraint::pk_attrs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.pk_attrs) + return _internal_pk_attrs().Get(index); +} +inline ::pg_query::Node* Constraint::add_pk_attrs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_pk_attrs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Constraint.pk_attrs) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ColumnRef::fields() const { - // @@protoc_insertion_point(field_list:pg_query.ColumnRef.fields) - return _impl_.fields_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Constraint::pk_attrs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Constraint.pk_attrs) + return _internal_pk_attrs(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Constraint::_internal_pk_attrs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.pk_attrs_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Constraint::_internal_mutable_pk_attrs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.pk_attrs_; } -// int32 location = 2 [json_name = "location"]; -inline void ColumnRef::clear_location() { - _impl_.location_ = 0; +// string fk_matchtype = 23 [json_name = "fk_matchtype"]; +inline void Constraint::clear_fk_matchtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fk_matchtype_.ClearToEmpty(); } -inline int32_t ColumnRef::_internal_location() const { - return _impl_.location_; +inline const std::string& Constraint::fk_matchtype() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_matchtype) + return _internal_fk_matchtype(); } -inline int32_t ColumnRef::location() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnRef.location) - return _internal_location(); +template +inline PROTOBUF_ALWAYS_INLINE void Constraint::set_fk_matchtype(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fk_matchtype_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Constraint.fk_matchtype) } -inline void ColumnRef::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline std::string* Constraint::mutable_fk_matchtype() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_fk_matchtype(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_matchtype) + return _s; } -inline void ColumnRef::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.ColumnRef.location) +inline const std::string& Constraint::_internal_fk_matchtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fk_matchtype_.Get(); +} +inline void Constraint::_internal_set_fk_matchtype(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fk_matchtype_.Set(value, GetArena()); +} +inline std::string* Constraint::_internal_mutable_fk_matchtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.fk_matchtype_.Mutable( GetArena()); +} +inline std::string* Constraint::release_fk_matchtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.fk_matchtype) + return _impl_.fk_matchtype_.Release(); +} +inline void Constraint::set_allocated_fk_matchtype(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fk_matchtype_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.fk_matchtype_.IsDefault()) { + _impl_.fk_matchtype_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.fk_matchtype) } -// ------------------------------------------------------------------- - -// ParamRef - -// int32 number = 1 [json_name = "number"]; -inline void ParamRef::clear_number() { - _impl_.number_ = 0; +// string fk_upd_action = 24 [json_name = "fk_upd_action"]; +inline void Constraint::clear_fk_upd_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fk_upd_action_.ClearToEmpty(); } -inline int32_t ParamRef::_internal_number() const { - return _impl_.number_; +inline const std::string& Constraint::fk_upd_action() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_upd_action) + return _internal_fk_upd_action(); } -inline int32_t ParamRef::number() const { - // @@protoc_insertion_point(field_get:pg_query.ParamRef.number) - return _internal_number(); +template +inline PROTOBUF_ALWAYS_INLINE void Constraint::set_fk_upd_action(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fk_upd_action_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Constraint.fk_upd_action) } -inline void ParamRef::_internal_set_number(int32_t value) { - - _impl_.number_ = value; +inline std::string* Constraint::mutable_fk_upd_action() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_fk_upd_action(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_upd_action) + return _s; } -inline void ParamRef::set_number(int32_t value) { - _internal_set_number(value); - // @@protoc_insertion_point(field_set:pg_query.ParamRef.number) +inline const std::string& Constraint::_internal_fk_upd_action() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fk_upd_action_.Get(); +} +inline void Constraint::_internal_set_fk_upd_action(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fk_upd_action_.Set(value, GetArena()); +} +inline std::string* Constraint::_internal_mutable_fk_upd_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.fk_upd_action_.Mutable( GetArena()); +} +inline std::string* Constraint::release_fk_upd_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.fk_upd_action) + return _impl_.fk_upd_action_.Release(); +} +inline void Constraint::set_allocated_fk_upd_action(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fk_upd_action_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.fk_upd_action_.IsDefault()) { + _impl_.fk_upd_action_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.fk_upd_action) } -// int32 location = 2 [json_name = "location"]; -inline void ParamRef::clear_location() { - _impl_.location_ = 0; +// string fk_del_action = 25 [json_name = "fk_del_action"]; +inline void Constraint::clear_fk_del_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fk_del_action_.ClearToEmpty(); } -inline int32_t ParamRef::_internal_location() const { - return _impl_.location_; +inline const std::string& Constraint::fk_del_action() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_del_action) + return _internal_fk_del_action(); } -inline int32_t ParamRef::location() const { - // @@protoc_insertion_point(field_get:pg_query.ParamRef.location) - return _internal_location(); +template +inline PROTOBUF_ALWAYS_INLINE void Constraint::set_fk_del_action(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fk_del_action_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.Constraint.fk_del_action) } -inline void ParamRef::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline std::string* Constraint::mutable_fk_del_action() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_fk_del_action(); + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_del_action) + return _s; } -inline void ParamRef::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.ParamRef.location) +inline const std::string& Constraint::_internal_fk_del_action() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fk_del_action_.Get(); } - -// ------------------------------------------------------------------- - -// FuncCall - -// repeated .pg_query.Node funcname = 1 [json_name = "funcname"]; -inline int FuncCall::_internal_funcname_size() const { - return _impl_.funcname_.size(); +inline void Constraint::_internal_set_fk_del_action(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fk_del_action_.Set(value, GetArena()); } -inline int FuncCall::funcname_size() const { - return _internal_funcname_size(); +inline std::string* Constraint::_internal_mutable_fk_del_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.fk_del_action_.Mutable( GetArena()); } -inline void FuncCall::clear_funcname() { - _impl_.funcname_.Clear(); +inline std::string* Constraint::release_fk_del_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.Constraint.fk_del_action) + return _impl_.fk_del_action_.Release(); } -inline ::pg_query::Node* FuncCall::mutable_funcname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.funcname) - return _impl_.funcname_.Mutable(index); +inline void Constraint::set_allocated_fk_del_action(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fk_del_action_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.fk_del_action_.IsDefault()) { + _impl_.fk_del_action_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.fk_del_action) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -FuncCall::mutable_funcname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.FuncCall.funcname) - return &_impl_.funcname_; + +// repeated .pg_query.Node fk_del_set_cols = 26 [json_name = "fk_del_set_cols"]; +inline int Constraint::_internal_fk_del_set_cols_size() const { + return _internal_fk_del_set_cols().size(); } -inline const ::pg_query::Node& FuncCall::_internal_funcname(int index) const { - return _impl_.funcname_.Get(index); +inline int Constraint::fk_del_set_cols_size() const { + return _internal_fk_del_set_cols_size(); } -inline const ::pg_query::Node& FuncCall::funcname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.funcname) - return _internal_funcname(index); +inline void Constraint::clear_fk_del_set_cols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fk_del_set_cols_.Clear(); } -inline ::pg_query::Node* FuncCall::_internal_add_funcname() { - return _impl_.funcname_.Add(); +inline ::pg_query::Node* Constraint::mutable_fk_del_set_cols(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_del_set_cols) + return _internal_mutable_fk_del_set_cols()->Mutable(index); } -inline ::pg_query::Node* FuncCall::add_funcname() { - ::pg_query::Node* _add = _internal_add_funcname(); - // @@protoc_insertion_point(field_add:pg_query.FuncCall.funcname) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Constraint::mutable_fk_del_set_cols() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.fk_del_set_cols) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_fk_del_set_cols(); +} +inline const ::pg_query::Node& Constraint::fk_del_set_cols(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_del_set_cols) + return _internal_fk_del_set_cols().Get(index); +} +inline ::pg_query::Node* Constraint::add_fk_del_set_cols() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_fk_del_set_cols()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Constraint.fk_del_set_cols) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -FuncCall::funcname() const { - // @@protoc_insertion_point(field_list:pg_query.FuncCall.funcname) - return _impl_.funcname_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Constraint::fk_del_set_cols() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Constraint.fk_del_set_cols) + return _internal_fk_del_set_cols(); } - -// repeated .pg_query.Node args = 2 [json_name = "args"]; -inline int FuncCall::_internal_args_size() const { - return _impl_.args_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Constraint::_internal_fk_del_set_cols() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fk_del_set_cols_; } -inline int FuncCall::args_size() const { - return _internal_args_size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Constraint::_internal_mutable_fk_del_set_cols() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.fk_del_set_cols_; } -inline void FuncCall::clear_args() { - _impl_.args_.Clear(); + +// repeated .pg_query.Node old_conpfeqop = 27 [json_name = "old_conpfeqop"]; +inline int Constraint::_internal_old_conpfeqop_size() const { + return _internal_old_conpfeqop().size(); } -inline ::pg_query::Node* FuncCall::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.args) - return _impl_.args_.Mutable(index); +inline int Constraint::old_conpfeqop_size() const { + return _internal_old_conpfeqop_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -FuncCall::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.FuncCall.args) - return &_impl_.args_; +inline void Constraint::clear_old_conpfeqop() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.old_conpfeqop_.Clear(); } -inline const ::pg_query::Node& FuncCall::_internal_args(int index) const { - return _impl_.args_.Get(index); +inline ::pg_query::Node* Constraint::mutable_old_conpfeqop(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.Constraint.old_conpfeqop) + return _internal_mutable_old_conpfeqop()->Mutable(index); } -inline const ::pg_query::Node& FuncCall::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.args) - return _internal_args(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* Constraint::mutable_old_conpfeqop() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.old_conpfeqop) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_old_conpfeqop(); } -inline ::pg_query::Node* FuncCall::_internal_add_args() { - return _impl_.args_.Add(); +inline const ::pg_query::Node& Constraint::old_conpfeqop(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.Constraint.old_conpfeqop) + return _internal_old_conpfeqop().Get(index); } -inline ::pg_query::Node* FuncCall::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.FuncCall.args) +inline ::pg_query::Node* Constraint::add_old_conpfeqop() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_old_conpfeqop()->Add(); + // @@protoc_insertion_point(field_add:pg_query.Constraint.old_conpfeqop) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -FuncCall::args() const { - // @@protoc_insertion_point(field_list:pg_query.FuncCall.args) - return _impl_.args_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& Constraint::old_conpfeqop() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.Constraint.old_conpfeqop) + return _internal_old_conpfeqop(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +Constraint::_internal_old_conpfeqop() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.old_conpfeqop_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +Constraint::_internal_mutable_old_conpfeqop() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.old_conpfeqop_; } -// repeated .pg_query.Node agg_order = 3 [json_name = "agg_order"]; -inline int FuncCall::_internal_agg_order_size() const { - return _impl_.agg_order_.size(); +// uint32 old_pktable_oid = 28 [json_name = "old_pktable_oid"]; +inline void Constraint::clear_old_pktable_oid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.old_pktable_oid_ = 0u; } -inline int FuncCall::agg_order_size() const { - return _internal_agg_order_size(); +inline ::uint32_t Constraint::old_pktable_oid() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.old_pktable_oid) + return _internal_old_pktable_oid(); } -inline void FuncCall::clear_agg_order() { - _impl_.agg_order_.Clear(); +inline void Constraint::set_old_pktable_oid(::uint32_t value) { + _internal_set_old_pktable_oid(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.old_pktable_oid) } -inline ::pg_query::Node* FuncCall::mutable_agg_order(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.agg_order) - return _impl_.agg_order_.Mutable(index); +inline ::uint32_t Constraint::_internal_old_pktable_oid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.old_pktable_oid_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -FuncCall::mutable_agg_order() { - // @@protoc_insertion_point(field_mutable_list:pg_query.FuncCall.agg_order) - return &_impl_.agg_order_; +inline void Constraint::_internal_set_old_pktable_oid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.old_pktable_oid_ = value; } -inline const ::pg_query::Node& FuncCall::_internal_agg_order(int index) const { - return _impl_.agg_order_.Get(index); + +// bool skip_validation = 29 [json_name = "skip_validation"]; +inline void Constraint::clear_skip_validation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.skip_validation_ = false; } -inline const ::pg_query::Node& FuncCall::agg_order(int index) const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_order) - return _internal_agg_order(index); +inline bool Constraint::skip_validation() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.skip_validation) + return _internal_skip_validation(); } -inline ::pg_query::Node* FuncCall::_internal_add_agg_order() { - return _impl_.agg_order_.Add(); +inline void Constraint::set_skip_validation(bool value) { + _internal_set_skip_validation(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.skip_validation) } -inline ::pg_query::Node* FuncCall::add_agg_order() { - ::pg_query::Node* _add = _internal_add_agg_order(); - // @@protoc_insertion_point(field_add:pg_query.FuncCall.agg_order) - return _add; +inline bool Constraint::_internal_skip_validation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.skip_validation_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -FuncCall::agg_order() const { - // @@protoc_insertion_point(field_list:pg_query.FuncCall.agg_order) - return _impl_.agg_order_; +inline void Constraint::_internal_set_skip_validation(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.skip_validation_ = value; } -// .pg_query.Node agg_filter = 4 [json_name = "agg_filter"]; -inline bool FuncCall::_internal_has_agg_filter() const { - return this != internal_default_instance() && _impl_.agg_filter_ != nullptr; +// bool initially_valid = 30 [json_name = "initially_valid"]; +inline void Constraint::clear_initially_valid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.initially_valid_ = false; } -inline bool FuncCall::has_agg_filter() const { - return _internal_has_agg_filter(); +inline bool Constraint::initially_valid() const { + // @@protoc_insertion_point(field_get:pg_query.Constraint.initially_valid) + return _internal_initially_valid(); } -inline void FuncCall::clear_agg_filter() { - if (GetArenaForAllocation() == nullptr && _impl_.agg_filter_ != nullptr) { - delete _impl_.agg_filter_; - } - _impl_.agg_filter_ = nullptr; +inline void Constraint::set_initially_valid(bool value) { + _internal_set_initially_valid(value); + // @@protoc_insertion_point(field_set:pg_query.Constraint.initially_valid) } -inline const ::pg_query::Node& FuncCall::_internal_agg_filter() const { - const ::pg_query::Node* p = _impl_.agg_filter_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline bool Constraint::_internal_initially_valid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.initially_valid_; } -inline const ::pg_query::Node& FuncCall::agg_filter() const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_filter) - return _internal_agg_filter(); +inline void Constraint::_internal_set_initially_valid(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.initially_valid_ = value; } -inline void FuncCall::unsafe_arena_set_allocated_agg_filter( - ::pg_query::Node* agg_filter) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.agg_filter_); - } - _impl_.agg_filter_ = agg_filter; - if (agg_filter) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FuncCall.agg_filter) + +// ------------------------------------------------------------------- + +// CreateTableSpaceStmt + +// string tablespacename = 1 [json_name = "tablespacename"]; +inline void CreateTableSpaceStmt::clear_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tablespacename_.ClearToEmpty(); } -inline ::pg_query::Node* FuncCall::release_agg_filter() { - - ::pg_query::Node* temp = _impl_.agg_filter_; - _impl_.agg_filter_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const std::string& CreateTableSpaceStmt::tablespacename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTableSpaceStmt.tablespacename) + return _internal_tablespacename(); } -inline ::pg_query::Node* FuncCall::unsafe_arena_release_agg_filter() { - // @@protoc_insertion_point(field_release:pg_query.FuncCall.agg_filter) - - ::pg_query::Node* temp = _impl_.agg_filter_; - _impl_.agg_filter_ = nullptr; - return temp; +template +inline PROTOBUF_ALWAYS_INLINE void CreateTableSpaceStmt::set_tablespacename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tablespacename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateTableSpaceStmt.tablespacename) } -inline ::pg_query::Node* FuncCall::_internal_mutable_agg_filter() { - - if (_impl_.agg_filter_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.agg_filter_ = p; - } - return _impl_.agg_filter_; +inline std::string* CreateTableSpaceStmt::mutable_tablespacename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_tablespacename(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTableSpaceStmt.tablespacename) + return _s; } -inline ::pg_query::Node* FuncCall::mutable_agg_filter() { - ::pg_query::Node* _msg = _internal_mutable_agg_filter(); - // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.agg_filter) - return _msg; +inline const std::string& CreateTableSpaceStmt::_internal_tablespacename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.tablespacename_.Get(); +} +inline void CreateTableSpaceStmt::_internal_set_tablespacename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tablespacename_.Set(value, GetArena()); +} +inline std::string* CreateTableSpaceStmt::_internal_mutable_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.tablespacename_.Mutable( GetArena()); } -inline void FuncCall::set_allocated_agg_filter(::pg_query::Node* agg_filter) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.agg_filter_; - } - if (agg_filter) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(agg_filter); - if (message_arena != submessage_arena) { - agg_filter = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, agg_filter, submessage_arena); - } - - } else { - - } - _impl_.agg_filter_ = agg_filter; - // @@protoc_insertion_point(field_set_allocated:pg_query.FuncCall.agg_filter) +inline std::string* CreateTableSpaceStmt::release_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTableSpaceStmt.tablespacename) + return _impl_.tablespacename_.Release(); } - -// .pg_query.WindowDef over = 5 [json_name = "over"]; -inline bool FuncCall::_internal_has_over() const { - return this != internal_default_instance() && _impl_.over_ != nullptr; +inline void CreateTableSpaceStmt::set_allocated_tablespacename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tablespacename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.tablespacename_.IsDefault()) { + _impl_.tablespacename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableSpaceStmt.tablespacename) } -inline bool FuncCall::has_over() const { - return _internal_has_over(); + +// .pg_query.RoleSpec owner = 2 [json_name = "owner"]; +inline bool CreateTableSpaceStmt::has_owner() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.owner_ != nullptr); + return value; } -inline void FuncCall::clear_over() { - if (GetArenaForAllocation() == nullptr && _impl_.over_ != nullptr) { - delete _impl_.over_; - } - _impl_.over_ = nullptr; +inline void CreateTableSpaceStmt::clear_owner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.owner_ != nullptr) _impl_.owner_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::WindowDef& FuncCall::_internal_over() const { - const ::pg_query::WindowDef* p = _impl_.over_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_WindowDef_default_instance_); +inline const ::pg_query::RoleSpec& CreateTableSpaceStmt::_internal_owner() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.owner_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); } -inline const ::pg_query::WindowDef& FuncCall::over() const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.over) - return _internal_over(); +inline const ::pg_query::RoleSpec& CreateTableSpaceStmt::owner() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTableSpaceStmt.owner) + return _internal_owner(); } -inline void FuncCall::unsafe_arena_set_allocated_over( - ::pg_query::WindowDef* over) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.over_); +inline void CreateTableSpaceStmt::unsafe_arena_set_allocated_owner(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.owner_); } - _impl_.over_ = over; - if (over) { - + _impl_.owner_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FuncCall.over) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTableSpaceStmt.owner) } -inline ::pg_query::WindowDef* FuncCall::release_over() { - - ::pg_query::WindowDef* temp = _impl_.over_; - _impl_.over_ = nullptr; +inline ::pg_query::RoleSpec* CreateTableSpaceStmt::release_owner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.owner_; + _impl_.owner_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::WindowDef* FuncCall::unsafe_arena_release_over() { - // @@protoc_insertion_point(field_release:pg_query.FuncCall.over) - - ::pg_query::WindowDef* temp = _impl_.over_; - _impl_.over_ = nullptr; +inline ::pg_query::RoleSpec* CreateTableSpaceStmt::unsafe_arena_release_owner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTableSpaceStmt.owner) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.owner_; + _impl_.owner_ = nullptr; return temp; } -inline ::pg_query::WindowDef* FuncCall::_internal_mutable_over() { - - if (_impl_.over_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::WindowDef>(GetArenaForAllocation()); - _impl_.over_ = p; +inline ::pg_query::RoleSpec* CreateTableSpaceStmt::_internal_mutable_owner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.owner_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.owner_ = reinterpret_cast<::pg_query::RoleSpec*>(p); } - return _impl_.over_; + return _impl_.owner_; } -inline ::pg_query::WindowDef* FuncCall::mutable_over() { - ::pg_query::WindowDef* _msg = _internal_mutable_over(); - // @@protoc_insertion_point(field_mutable:pg_query.FuncCall.over) +inline ::pg_query::RoleSpec* CreateTableSpaceStmt::mutable_owner() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_owner(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTableSpaceStmt.owner) return _msg; } -inline void FuncCall::set_allocated_over(::pg_query::WindowDef* over) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreateTableSpaceStmt::set_allocated_owner(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.over_; + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.owner_); } - if (over) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(over); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); if (message_arena != submessage_arena) { - over = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, over, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.over_ = over; - // @@protoc_insertion_point(field_set_allocated:pg_query.FuncCall.over) + + _impl_.owner_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableSpaceStmt.owner) } -// bool agg_within_group = 6 [json_name = "agg_within_group"]; -inline void FuncCall::clear_agg_within_group() { - _impl_.agg_within_group_ = false; +// string location = 3 [json_name = "location"]; +inline void CreateTableSpaceStmt::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_.ClearToEmpty(); } -inline bool FuncCall::_internal_agg_within_group() const { - return _impl_.agg_within_group_; +inline const std::string& CreateTableSpaceStmt::location() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTableSpaceStmt.location) + return _internal_location(); } -inline bool FuncCall::agg_within_group() const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_within_group) - return _internal_agg_within_group(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateTableSpaceStmt::set_location(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateTableSpaceStmt.location) } -inline void FuncCall::_internal_set_agg_within_group(bool value) { - - _impl_.agg_within_group_ = value; +inline std::string* CreateTableSpaceStmt::mutable_location() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_location(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTableSpaceStmt.location) + return _s; } -inline void FuncCall::set_agg_within_group(bool value) { - _internal_set_agg_within_group(value); - // @@protoc_insertion_point(field_set:pg_query.FuncCall.agg_within_group) +inline const std::string& CreateTableSpaceStmt::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_.Get(); +} +inline void CreateTableSpaceStmt::_internal_set_location(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_.Set(value, GetArena()); +} +inline std::string* CreateTableSpaceStmt::_internal_mutable_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.location_.Mutable( GetArena()); +} +inline std::string* CreateTableSpaceStmt::release_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTableSpaceStmt.location) + return _impl_.location_.Release(); +} +inline void CreateTableSpaceStmt::set_allocated_location(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.location_.IsDefault()) { + _impl_.location_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableSpaceStmt.location) } -// bool agg_star = 7 [json_name = "agg_star"]; -inline void FuncCall::clear_agg_star() { - _impl_.agg_star_ = false; +// repeated .pg_query.Node options = 4 [json_name = "options"]; +inline int CreateTableSpaceStmt::_internal_options_size() const { + return _internal_options().size(); } -inline bool FuncCall::_internal_agg_star() const { - return _impl_.agg_star_; +inline int CreateTableSpaceStmt::options_size() const { + return _internal_options_size(); } -inline bool FuncCall::agg_star() const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_star) - return _internal_agg_star(); +inline void CreateTableSpaceStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void FuncCall::_internal_set_agg_star(bool value) { - - _impl_.agg_star_ = value; +inline ::pg_query::Node* CreateTableSpaceStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateTableSpaceStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void FuncCall::set_agg_star(bool value) { - _internal_set_agg_star(value); - // @@protoc_insertion_point(field_set:pg_query.FuncCall.agg_star) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateTableSpaceStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTableSpaceStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } - -// bool agg_distinct = 8 [json_name = "agg_distinct"]; -inline void FuncCall::clear_agg_distinct() { - _impl_.agg_distinct_ = false; +inline const ::pg_query::Node& CreateTableSpaceStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTableSpaceStmt.options) + return _internal_options().Get(index); } -inline bool FuncCall::_internal_agg_distinct() const { - return _impl_.agg_distinct_; +inline ::pg_query::Node* CreateTableSpaceStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateTableSpaceStmt.options) + return _add; } -inline bool FuncCall::agg_distinct() const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.agg_distinct) - return _internal_agg_distinct(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateTableSpaceStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateTableSpaceStmt.options) + return _internal_options(); } -inline void FuncCall::_internal_set_agg_distinct(bool value) { - - _impl_.agg_distinct_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateTableSpaceStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline void FuncCall::set_agg_distinct(bool value) { - _internal_set_agg_distinct(value); - // @@protoc_insertion_point(field_set:pg_query.FuncCall.agg_distinct) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateTableSpaceStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// bool func_variadic = 9 [json_name = "func_variadic"]; -inline void FuncCall::clear_func_variadic() { - _impl_.func_variadic_ = false; +// ------------------------------------------------------------------- + +// DropTableSpaceStmt + +// string tablespacename = 1 [json_name = "tablespacename"]; +inline void DropTableSpaceStmt::clear_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tablespacename_.ClearToEmpty(); } -inline bool FuncCall::_internal_func_variadic() const { - return _impl_.func_variadic_; +inline const std::string& DropTableSpaceStmt::tablespacename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DropTableSpaceStmt.tablespacename) + return _internal_tablespacename(); } -inline bool FuncCall::func_variadic() const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.func_variadic) - return _internal_func_variadic(); +template +inline PROTOBUF_ALWAYS_INLINE void DropTableSpaceStmt::set_tablespacename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tablespacename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.DropTableSpaceStmt.tablespacename) } -inline void FuncCall::_internal_set_func_variadic(bool value) { - - _impl_.func_variadic_ = value; +inline std::string* DropTableSpaceStmt::mutable_tablespacename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_tablespacename(); + // @@protoc_insertion_point(field_mutable:pg_query.DropTableSpaceStmt.tablespacename) + return _s; } -inline void FuncCall::set_func_variadic(bool value) { - _internal_set_func_variadic(value); - // @@protoc_insertion_point(field_set:pg_query.FuncCall.func_variadic) +inline const std::string& DropTableSpaceStmt::_internal_tablespacename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.tablespacename_.Get(); +} +inline void DropTableSpaceStmt::_internal_set_tablespacename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tablespacename_.Set(value, GetArena()); +} +inline std::string* DropTableSpaceStmt::_internal_mutable_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.tablespacename_.Mutable( GetArena()); +} +inline std::string* DropTableSpaceStmt::release_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DropTableSpaceStmt.tablespacename) + return _impl_.tablespacename_.Release(); +} +inline void DropTableSpaceStmt::set_allocated_tablespacename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tablespacename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.tablespacename_.IsDefault()) { + _impl_.tablespacename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.DropTableSpaceStmt.tablespacename) } -// .pg_query.CoercionForm funcformat = 10 [json_name = "funcformat"]; -inline void FuncCall::clear_funcformat() { - _impl_.funcformat_ = 0; +// bool missing_ok = 2 [json_name = "missing_ok"]; +inline void DropTableSpaceStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline ::pg_query::CoercionForm FuncCall::_internal_funcformat() const { - return static_cast< ::pg_query::CoercionForm >(_impl_.funcformat_); +inline bool DropTableSpaceStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.DropTableSpaceStmt.missing_ok) + return _internal_missing_ok(); } -inline ::pg_query::CoercionForm FuncCall::funcformat() const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.funcformat) - return _internal_funcformat(); +inline void DropTableSpaceStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.DropTableSpaceStmt.missing_ok) } -inline void FuncCall::_internal_set_funcformat(::pg_query::CoercionForm value) { - - _impl_.funcformat_ = value; +inline bool DropTableSpaceStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline void FuncCall::set_funcformat(::pg_query::CoercionForm value) { - _internal_set_funcformat(value); - // @@protoc_insertion_point(field_set:pg_query.FuncCall.funcformat) +inline void DropTableSpaceStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } -// int32 location = 11 [json_name = "location"]; -inline void FuncCall::clear_location() { - _impl_.location_ = 0; +// ------------------------------------------------------------------- + +// AlterTableSpaceOptionsStmt + +// string tablespacename = 1 [json_name = "tablespacename"]; +inline void AlterTableSpaceOptionsStmt::clear_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tablespacename_.ClearToEmpty(); } -inline int32_t FuncCall::_internal_location() const { - return _impl_.location_; +inline const std::string& AlterTableSpaceOptionsStmt::tablespacename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableSpaceOptionsStmt.tablespacename) + return _internal_tablespacename(); } -inline int32_t FuncCall::location() const { - // @@protoc_insertion_point(field_get:pg_query.FuncCall.location) - return _internal_location(); +template +inline PROTOBUF_ALWAYS_INLINE void AlterTableSpaceOptionsStmt::set_tablespacename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tablespacename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterTableSpaceOptionsStmt.tablespacename) } -inline void FuncCall::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline std::string* AlterTableSpaceOptionsStmt::mutable_tablespacename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_tablespacename(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableSpaceOptionsStmt.tablespacename) + return _s; } -inline void FuncCall::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.FuncCall.location) +inline const std::string& AlterTableSpaceOptionsStmt::_internal_tablespacename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.tablespacename_.Get(); +} +inline void AlterTableSpaceOptionsStmt::_internal_set_tablespacename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tablespacename_.Set(value, GetArena()); +} +inline std::string* AlterTableSpaceOptionsStmt::_internal_mutable_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.tablespacename_.Mutable( GetArena()); +} +inline std::string* AlterTableSpaceOptionsStmt::release_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterTableSpaceOptionsStmt.tablespacename) + return _impl_.tablespacename_.Release(); +} +inline void AlterTableSpaceOptionsStmt::set_allocated_tablespacename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tablespacename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.tablespacename_.IsDefault()) { + _impl_.tablespacename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableSpaceOptionsStmt.tablespacename) } -// ------------------------------------------------------------------- +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int AlterTableSpaceOptionsStmt::_internal_options_size() const { + return _internal_options().size(); +} +inline int AlterTableSpaceOptionsStmt::options_size() const { + return _internal_options_size(); +} +inline void AlterTableSpaceOptionsStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); +} +inline ::pg_query::Node* AlterTableSpaceOptionsStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableSpaceOptionsStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTableSpaceOptionsStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTableSpaceOptionsStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& AlterTableSpaceOptionsStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableSpaceOptionsStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* AlterTableSpaceOptionsStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTableSpaceOptionsStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTableSpaceOptionsStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTableSpaceOptionsStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTableSpaceOptionsStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTableSpaceOptionsStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} -// A_Star +// bool is_reset = 3 [json_name = "isReset"]; +inline void AlterTableSpaceOptionsStmt::clear_is_reset() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_reset_ = false; +} +inline bool AlterTableSpaceOptionsStmt::is_reset() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableSpaceOptionsStmt.is_reset) + return _internal_is_reset(); +} +inline void AlterTableSpaceOptionsStmt::set_is_reset(bool value) { + _internal_set_is_reset(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableSpaceOptionsStmt.is_reset) +} +inline bool AlterTableSpaceOptionsStmt::_internal_is_reset() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_reset_; +} +inline void AlterTableSpaceOptionsStmt::_internal_set_is_reset(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_reset_ = value; +} // ------------------------------------------------------------------- -// A_Indices +// AlterTableMoveAllStmt -// bool is_slice = 1 [json_name = "is_slice"]; -inline void A_Indices::clear_is_slice() { - _impl_.is_slice_ = false; +// string orig_tablespacename = 1 [json_name = "orig_tablespacename"]; +inline void AlterTableMoveAllStmt::clear_orig_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.orig_tablespacename_.ClearToEmpty(); } -inline bool A_Indices::_internal_is_slice() const { - return _impl_.is_slice_; +inline const std::string& AlterTableMoveAllStmt::orig_tablespacename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.orig_tablespacename) + return _internal_orig_tablespacename(); } -inline bool A_Indices::is_slice() const { - // @@protoc_insertion_point(field_get:pg_query.A_Indices.is_slice) - return _internal_is_slice(); +template +inline PROTOBUF_ALWAYS_INLINE void AlterTableMoveAllStmt::set_orig_tablespacename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.orig_tablespacename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterTableMoveAllStmt.orig_tablespacename) } -inline void A_Indices::_internal_set_is_slice(bool value) { - - _impl_.is_slice_ = value; +inline std::string* AlterTableMoveAllStmt::mutable_orig_tablespacename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_orig_tablespacename(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableMoveAllStmt.orig_tablespacename) + return _s; } -inline void A_Indices::set_is_slice(bool value) { - _internal_set_is_slice(value); - // @@protoc_insertion_point(field_set:pg_query.A_Indices.is_slice) +inline const std::string& AlterTableMoveAllStmt::_internal_orig_tablespacename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.orig_tablespacename_.Get(); +} +inline void AlterTableMoveAllStmt::_internal_set_orig_tablespacename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.orig_tablespacename_.Set(value, GetArena()); +} +inline std::string* AlterTableMoveAllStmt::_internal_mutable_orig_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.orig_tablespacename_.Mutable( GetArena()); +} +inline std::string* AlterTableMoveAllStmt::release_orig_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterTableMoveAllStmt.orig_tablespacename) + return _impl_.orig_tablespacename_.Release(); +} +inline void AlterTableMoveAllStmt::set_allocated_orig_tablespacename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.orig_tablespacename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.orig_tablespacename_.IsDefault()) { + _impl_.orig_tablespacename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableMoveAllStmt.orig_tablespacename) } -// .pg_query.Node lidx = 2 [json_name = "lidx"]; -inline bool A_Indices::_internal_has_lidx() const { - return this != internal_default_instance() && _impl_.lidx_ != nullptr; +// .pg_query.ObjectType objtype = 2 [json_name = "objtype"]; +inline void AlterTableMoveAllStmt::clear_objtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objtype_ = 0; } -inline bool A_Indices::has_lidx() const { - return _internal_has_lidx(); +inline ::pg_query::ObjectType AlterTableMoveAllStmt::objtype() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.objtype) + return _internal_objtype(); } -inline void A_Indices::clear_lidx() { - if (GetArenaForAllocation() == nullptr && _impl_.lidx_ != nullptr) { - delete _impl_.lidx_; - } - _impl_.lidx_ = nullptr; +inline void AlterTableMoveAllStmt::set_objtype(::pg_query::ObjectType value) { + _internal_set_objtype(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableMoveAllStmt.objtype) } -inline const ::pg_query::Node& A_Indices::_internal_lidx() const { - const ::pg_query::Node* p = _impl_.lidx_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::ObjectType AlterTableMoveAllStmt::_internal_objtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.objtype_); } -inline const ::pg_query::Node& A_Indices::lidx() const { - // @@protoc_insertion_point(field_get:pg_query.A_Indices.lidx) - return _internal_lidx(); +inline void AlterTableMoveAllStmt::_internal_set_objtype(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.objtype_ = value; } -inline void A_Indices::unsafe_arena_set_allocated_lidx( - ::pg_query::Node* lidx) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.lidx_); - } - _impl_.lidx_ = lidx; - if (lidx) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Indices.lidx) + +// repeated .pg_query.Node roles = 3 [json_name = "roles"]; +inline int AlterTableMoveAllStmt::_internal_roles_size() const { + return _internal_roles().size(); } -inline ::pg_query::Node* A_Indices::release_lidx() { - - ::pg_query::Node* temp = _impl_.lidx_; - _impl_.lidx_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline int AlterTableMoveAllStmt::roles_size() const { + return _internal_roles_size(); } -inline ::pg_query::Node* A_Indices::unsafe_arena_release_lidx() { - // @@protoc_insertion_point(field_release:pg_query.A_Indices.lidx) - - ::pg_query::Node* temp = _impl_.lidx_; - _impl_.lidx_ = nullptr; - return temp; +inline void AlterTableMoveAllStmt::clear_roles() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.roles_.Clear(); } -inline ::pg_query::Node* A_Indices::_internal_mutable_lidx() { - - if (_impl_.lidx_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.lidx_ = p; - } - return _impl_.lidx_; +inline ::pg_query::Node* AlterTableMoveAllStmt::mutable_roles(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableMoveAllStmt.roles) + return _internal_mutable_roles()->Mutable(index); } -inline ::pg_query::Node* A_Indices::mutable_lidx() { - ::pg_query::Node* _msg = _internal_mutable_lidx(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Indices.lidx) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTableMoveAllStmt::mutable_roles() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTableMoveAllStmt.roles) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_roles(); } -inline void A_Indices::set_allocated_lidx(::pg_query::Node* lidx) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.lidx_; - } - if (lidx) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(lidx); - if (message_arena != submessage_arena) { - lidx = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, lidx, submessage_arena); - } - - } else { - - } - _impl_.lidx_ = lidx; - // @@protoc_insertion_point(field_set_allocated:pg_query.A_Indices.lidx) +inline const ::pg_query::Node& AlterTableMoveAllStmt::roles(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.roles) + return _internal_roles().Get(index); +} +inline ::pg_query::Node* AlterTableMoveAllStmt::add_roles() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_roles()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTableMoveAllStmt.roles) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTableMoveAllStmt::roles() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTableMoveAllStmt.roles) + return _internal_roles(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTableMoveAllStmt::_internal_roles() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.roles_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTableMoveAllStmt::_internal_mutable_roles() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.roles_; } -// .pg_query.Node uidx = 3 [json_name = "uidx"]; -inline bool A_Indices::_internal_has_uidx() const { - return this != internal_default_instance() && _impl_.uidx_ != nullptr; +// string new_tablespacename = 4 [json_name = "new_tablespacename"]; +inline void AlterTableMoveAllStmt::clear_new_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.new_tablespacename_.ClearToEmpty(); } -inline bool A_Indices::has_uidx() const { - return _internal_has_uidx(); +inline const std::string& AlterTableMoveAllStmt::new_tablespacename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.new_tablespacename) + return _internal_new_tablespacename(); } -inline void A_Indices::clear_uidx() { - if (GetArenaForAllocation() == nullptr && _impl_.uidx_ != nullptr) { - delete _impl_.uidx_; - } - _impl_.uidx_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void AlterTableMoveAllStmt::set_new_tablespacename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.new_tablespacename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterTableMoveAllStmt.new_tablespacename) } -inline const ::pg_query::Node& A_Indices::_internal_uidx() const { - const ::pg_query::Node* p = _impl_.uidx_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline std::string* AlterTableMoveAllStmt::mutable_new_tablespacename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_new_tablespacename(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterTableMoveAllStmt.new_tablespacename) + return _s; } -inline const ::pg_query::Node& A_Indices::uidx() const { - // @@protoc_insertion_point(field_get:pg_query.A_Indices.uidx) - return _internal_uidx(); +inline const std::string& AlterTableMoveAllStmt::_internal_new_tablespacename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.new_tablespacename_.Get(); } -inline void A_Indices::unsafe_arena_set_allocated_uidx( - ::pg_query::Node* uidx) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.uidx_); - } - _impl_.uidx_ = uidx; - if (uidx) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Indices.uidx) +inline void AlterTableMoveAllStmt::_internal_set_new_tablespacename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.new_tablespacename_.Set(value, GetArena()); } -inline ::pg_query::Node* A_Indices::release_uidx() { - - ::pg_query::Node* temp = _impl_.uidx_; - _impl_.uidx_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* AlterTableMoveAllStmt::_internal_mutable_new_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.new_tablespacename_.Mutable( GetArena()); } -inline ::pg_query::Node* A_Indices::unsafe_arena_release_uidx() { - // @@protoc_insertion_point(field_release:pg_query.A_Indices.uidx) - - ::pg_query::Node* temp = _impl_.uidx_; - _impl_.uidx_ = nullptr; - return temp; +inline std::string* AlterTableMoveAllStmt::release_new_tablespacename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterTableMoveAllStmt.new_tablespacename) + return _impl_.new_tablespacename_.Release(); } -inline ::pg_query::Node* A_Indices::_internal_mutable_uidx() { - - if (_impl_.uidx_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.uidx_ = p; - } - return _impl_.uidx_; +inline void AlterTableMoveAllStmt::set_allocated_new_tablespacename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.new_tablespacename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.new_tablespacename_.IsDefault()) { + _impl_.new_tablespacename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterTableMoveAllStmt.new_tablespacename) } -inline ::pg_query::Node* A_Indices::mutable_uidx() { - ::pg_query::Node* _msg = _internal_mutable_uidx(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Indices.uidx) - return _msg; + +// bool nowait = 5 [json_name = "nowait"]; +inline void AlterTableMoveAllStmt::clear_nowait() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.nowait_ = false; } -inline void A_Indices::set_allocated_uidx(::pg_query::Node* uidx) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.uidx_; - } - if (uidx) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(uidx); - if (message_arena != submessage_arena) { - uidx = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, uidx, submessage_arena); - } - - } else { - - } - _impl_.uidx_ = uidx; - // @@protoc_insertion_point(field_set_allocated:pg_query.A_Indices.uidx) +inline bool AlterTableMoveAllStmt::nowait() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTableMoveAllStmt.nowait) + return _internal_nowait(); +} +inline void AlterTableMoveAllStmt::set_nowait(bool value) { + _internal_set_nowait(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTableMoveAllStmt.nowait) +} +inline bool AlterTableMoveAllStmt::_internal_nowait() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.nowait_; +} +inline void AlterTableMoveAllStmt::_internal_set_nowait(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.nowait_ = value; } // ------------------------------------------------------------------- -// A_Indirection +// CreateExtensionStmt -// .pg_query.Node arg = 1 [json_name = "arg"]; -inline bool A_Indirection::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +// string extname = 1 [json_name = "extname"]; +inline void CreateExtensionStmt::clear_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.extname_.ClearToEmpty(); } -inline bool A_Indirection::has_arg() const { - return _internal_has_arg(); +inline const std::string& CreateExtensionStmt::extname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateExtensionStmt.extname) + return _internal_extname(); } -inline void A_Indirection::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void CreateExtensionStmt::set_extname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.extname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateExtensionStmt.extname) } -inline const ::pg_query::Node& A_Indirection::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline std::string* CreateExtensionStmt::mutable_extname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_extname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateExtensionStmt.extname) + return _s; } -inline const ::pg_query::Node& A_Indirection::arg() const { - // @@protoc_insertion_point(field_get:pg_query.A_Indirection.arg) - return _internal_arg(); +inline const std::string& CreateExtensionStmt::_internal_extname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.extname_.Get(); } -inline void A_Indirection::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.A_Indirection.arg) +inline void CreateExtensionStmt::_internal_set_extname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.extname_.Set(value, GetArena()); } -inline ::pg_query::Node* A_Indirection::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* CreateExtensionStmt::_internal_mutable_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.extname_.Mutable( GetArena()); } -inline ::pg_query::Node* A_Indirection::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.A_Indirection.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; +inline std::string* CreateExtensionStmt::release_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateExtensionStmt.extname) + return _impl_.extname_.Release(); +} +inline void CreateExtensionStmt::set_allocated_extname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.extname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.extname_.IsDefault()) { + _impl_.extname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateExtensionStmt.extname) +} + +// bool if_not_exists = 2 [json_name = "if_not_exists"]; +inline void CreateExtensionStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; +} +inline bool CreateExtensionStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.CreateExtensionStmt.if_not_exists) + return _internal_if_not_exists(); } -inline ::pg_query::Node* A_Indirection::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; +inline void CreateExtensionStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.CreateExtensionStmt.if_not_exists) } -inline ::pg_query::Node* A_Indirection::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.A_Indirection.arg) - return _msg; +inline bool CreateExtensionStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; } -inline void A_Indirection::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); - if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); - } - - } else { - - } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.A_Indirection.arg) +inline void CreateExtensionStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; } -// repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; -inline int A_Indirection::_internal_indirection_size() const { - return _impl_.indirection_.size(); +// repeated .pg_query.Node options = 3 [json_name = "options"]; +inline int CreateExtensionStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int A_Indirection::indirection_size() const { - return _internal_indirection_size(); +inline int CreateExtensionStmt::options_size() const { + return _internal_options_size(); } -inline void A_Indirection::clear_indirection() { - _impl_.indirection_.Clear(); +inline void CreateExtensionStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline ::pg_query::Node* A_Indirection::mutable_indirection(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.A_Indirection.indirection) - return _impl_.indirection_.Mutable(index); +inline ::pg_query::Node* CreateExtensionStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateExtensionStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -A_Indirection::mutable_indirection() { - // @@protoc_insertion_point(field_mutable_list:pg_query.A_Indirection.indirection) - return &_impl_.indirection_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateExtensionStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateExtensionStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline const ::pg_query::Node& A_Indirection::_internal_indirection(int index) const { - return _impl_.indirection_.Get(index); +inline const ::pg_query::Node& CreateExtensionStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateExtensionStmt.options) + return _internal_options().Get(index); } -inline const ::pg_query::Node& A_Indirection::indirection(int index) const { - // @@protoc_insertion_point(field_get:pg_query.A_Indirection.indirection) - return _internal_indirection(index); +inline ::pg_query::Node* CreateExtensionStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateExtensionStmt.options) + return _add; } -inline ::pg_query::Node* A_Indirection::_internal_add_indirection() { - return _impl_.indirection_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateExtensionStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateExtensionStmt.options) + return _internal_options(); } -inline ::pg_query::Node* A_Indirection::add_indirection() { - ::pg_query::Node* _add = _internal_add_indirection(); - // @@protoc_insertion_point(field_add:pg_query.A_Indirection.indirection) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateExtensionStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -A_Indirection::indirection() const { - // @@protoc_insertion_point(field_list:pg_query.A_Indirection.indirection) - return _impl_.indirection_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateExtensionStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } // ------------------------------------------------------------------- -// A_ArrayExpr +// AlterExtensionStmt -// repeated .pg_query.Node elements = 1 [json_name = "elements"]; -inline int A_ArrayExpr::_internal_elements_size() const { - return _impl_.elements_.size(); -} -inline int A_ArrayExpr::elements_size() const { - return _internal_elements_size(); +// string extname = 1 [json_name = "extname"]; +inline void AlterExtensionStmt::clear_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.extname_.ClearToEmpty(); } -inline void A_ArrayExpr::clear_elements() { - _impl_.elements_.Clear(); +inline const std::string& AlterExtensionStmt::extname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterExtensionStmt.extname) + return _internal_extname(); } -inline ::pg_query::Node* A_ArrayExpr::mutable_elements(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.A_ArrayExpr.elements) - return _impl_.elements_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void AlterExtensionStmt::set_extname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.extname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterExtensionStmt.extname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -A_ArrayExpr::mutable_elements() { - // @@protoc_insertion_point(field_mutable_list:pg_query.A_ArrayExpr.elements) - return &_impl_.elements_; +inline std::string* AlterExtensionStmt::mutable_extname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_extname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterExtensionStmt.extname) + return _s; } -inline const ::pg_query::Node& A_ArrayExpr::_internal_elements(int index) const { - return _impl_.elements_.Get(index); +inline const std::string& AlterExtensionStmt::_internal_extname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.extname_.Get(); } -inline const ::pg_query::Node& A_ArrayExpr::elements(int index) const { - // @@protoc_insertion_point(field_get:pg_query.A_ArrayExpr.elements) - return _internal_elements(index); +inline void AlterExtensionStmt::_internal_set_extname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.extname_.Set(value, GetArena()); } -inline ::pg_query::Node* A_ArrayExpr::_internal_add_elements() { - return _impl_.elements_.Add(); +inline std::string* AlterExtensionStmt::_internal_mutable_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.extname_.Mutable( GetArena()); } -inline ::pg_query::Node* A_ArrayExpr::add_elements() { - ::pg_query::Node* _add = _internal_add_elements(); - // @@protoc_insertion_point(field_add:pg_query.A_ArrayExpr.elements) - return _add; +inline std::string* AlterExtensionStmt::release_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterExtensionStmt.extname) + return _impl_.extname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -A_ArrayExpr::elements() const { - // @@protoc_insertion_point(field_list:pg_query.A_ArrayExpr.elements) - return _impl_.elements_; +inline void AlterExtensionStmt::set_allocated_extname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.extname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.extname_.IsDefault()) { + _impl_.extname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterExtensionStmt.extname) } -// int32 location = 2 [json_name = "location"]; -inline void A_ArrayExpr::clear_location() { - _impl_.location_ = 0; +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int AlterExtensionStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int32_t A_ArrayExpr::_internal_location() const { - return _impl_.location_; +inline int AlterExtensionStmt::options_size() const { + return _internal_options_size(); } -inline int32_t A_ArrayExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.A_ArrayExpr.location) - return _internal_location(); +inline void AlterExtensionStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void A_ArrayExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* AlterExtensionStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterExtensionStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void A_ArrayExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.A_ArrayExpr.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterExtensionStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterExtensionStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& AlterExtensionStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterExtensionStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* AlterExtensionStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterExtensionStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterExtensionStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterExtensionStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterExtensionStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterExtensionStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } // ------------------------------------------------------------------- -// ResTarget +// AlterExtensionContentsStmt -// string name = 1 [json_name = "name"]; -inline void ResTarget::clear_name() { - _impl_.name_.ClearToEmpty(); +// string extname = 1 [json_name = "extname"]; +inline void AlterExtensionContentsStmt::clear_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.extname_.ClearToEmpty(); } -inline const std::string& ResTarget::name() const { - // @@protoc_insertion_point(field_get:pg_query.ResTarget.name) - return _internal_name(); +inline const std::string& AlterExtensionContentsStmt::extname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterExtensionContentsStmt.extname) + return _internal_extname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ResTarget::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ResTarget.name) +template +inline PROTOBUF_ALWAYS_INLINE void AlterExtensionContentsStmt::set_extname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.extname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterExtensionContentsStmt.extname) } -inline std::string* ResTarget::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.ResTarget.name) +inline std::string* AlterExtensionContentsStmt::mutable_extname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_extname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterExtensionContentsStmt.extname) return _s; } -inline const std::string& ResTarget::_internal_name() const { - return _impl_.name_.Get(); +inline const std::string& AlterExtensionContentsStmt::_internal_extname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.extname_.Get(); } -inline void ResTarget::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void AlterExtensionContentsStmt::_internal_set_extname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.extname_.Set(value, GetArena()); } -inline std::string* ResTarget::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline std::string* AlterExtensionContentsStmt::_internal_mutable_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.extname_.Mutable( GetArena()); } -inline std::string* ResTarget::release_name() { - // @@protoc_insertion_point(field_release:pg_query.ResTarget.name) - return _impl_.name_.Release(); +inline std::string* AlterExtensionContentsStmt::release_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterExtensionContentsStmt.extname) + return _impl_.extname_.Release(); } -inline void ResTarget::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ResTarget.name) +inline void AlterExtensionContentsStmt::set_allocated_extname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.extname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.extname_.IsDefault()) { + _impl_.extname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterExtensionContentsStmt.extname) } -// repeated .pg_query.Node indirection = 2 [json_name = "indirection"]; -inline int ResTarget::_internal_indirection_size() const { - return _impl_.indirection_.size(); +// int32 action = 2 [json_name = "action"]; +inline void AlterExtensionContentsStmt::clear_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.action_ = 0; } -inline int ResTarget::indirection_size() const { - return _internal_indirection_size(); +inline ::int32_t AlterExtensionContentsStmt::action() const { + // @@protoc_insertion_point(field_get:pg_query.AlterExtensionContentsStmt.action) + return _internal_action(); } -inline void ResTarget::clear_indirection() { - _impl_.indirection_.Clear(); +inline void AlterExtensionContentsStmt::set_action(::int32_t value) { + _internal_set_action(value); + // @@protoc_insertion_point(field_set:pg_query.AlterExtensionContentsStmt.action) } -inline ::pg_query::Node* ResTarget::mutable_indirection(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ResTarget.indirection) - return _impl_.indirection_.Mutable(index); +inline ::int32_t AlterExtensionContentsStmt::_internal_action() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.action_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ResTarget::mutable_indirection() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ResTarget.indirection) - return &_impl_.indirection_; +inline void AlterExtensionContentsStmt::_internal_set_action(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.action_ = value; } -inline const ::pg_query::Node& ResTarget::_internal_indirection(int index) const { - return _impl_.indirection_.Get(index); + +// .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; +inline void AlterExtensionContentsStmt::clear_objtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objtype_ = 0; } -inline const ::pg_query::Node& ResTarget::indirection(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ResTarget.indirection) - return _internal_indirection(index); +inline ::pg_query::ObjectType AlterExtensionContentsStmt::objtype() const { + // @@protoc_insertion_point(field_get:pg_query.AlterExtensionContentsStmt.objtype) + return _internal_objtype(); } -inline ::pg_query::Node* ResTarget::_internal_add_indirection() { - return _impl_.indirection_.Add(); +inline void AlterExtensionContentsStmt::set_objtype(::pg_query::ObjectType value) { + _internal_set_objtype(value); + // @@protoc_insertion_point(field_set:pg_query.AlterExtensionContentsStmt.objtype) } -inline ::pg_query::Node* ResTarget::add_indirection() { - ::pg_query::Node* _add = _internal_add_indirection(); - // @@protoc_insertion_point(field_add:pg_query.ResTarget.indirection) - return _add; +inline ::pg_query::ObjectType AlterExtensionContentsStmt::_internal_objtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.objtype_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ResTarget::indirection() const { - // @@protoc_insertion_point(field_list:pg_query.ResTarget.indirection) - return _impl_.indirection_; +inline void AlterExtensionContentsStmt::_internal_set_objtype(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.objtype_ = value; } -// .pg_query.Node val = 3 [json_name = "val"]; -inline bool ResTarget::_internal_has_val() const { - return this != internal_default_instance() && _impl_.val_ != nullptr; -} -inline bool ResTarget::has_val() const { - return _internal_has_val(); +// .pg_query.Node object = 4 [json_name = "object"]; +inline bool AlterExtensionContentsStmt::has_object() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.object_ != nullptr); + return value; } -inline void ResTarget::clear_val() { - if (GetArenaForAllocation() == nullptr && _impl_.val_ != nullptr) { - delete _impl_.val_; - } - _impl_.val_ = nullptr; +inline void AlterExtensionContentsStmt::clear_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.object_ != nullptr) _impl_.object_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& ResTarget::_internal_val() const { - const ::pg_query::Node* p = _impl_.val_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& AlterExtensionContentsStmt::_internal_object() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.object_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& ResTarget::val() const { - // @@protoc_insertion_point(field_get:pg_query.ResTarget.val) - return _internal_val(); +inline const ::pg_query::Node& AlterExtensionContentsStmt::object() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterExtensionContentsStmt.object) + return _internal_object(); } -inline void ResTarget::unsafe_arena_set_allocated_val( - ::pg_query::Node* val) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.val_); +inline void AlterExtensionContentsStmt::unsafe_arena_set_allocated_object(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.object_); } - _impl_.val_ = val; - if (val) { - + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ResTarget.val) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterExtensionContentsStmt.object) } -inline ::pg_query::Node* ResTarget::release_val() { - - ::pg_query::Node* temp = _impl_.val_; - _impl_.val_ = nullptr; +inline ::pg_query::Node* AlterExtensionContentsStmt::release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.object_; + _impl_.object_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* ResTarget::unsafe_arena_release_val() { - // @@protoc_insertion_point(field_release:pg_query.ResTarget.val) - - ::pg_query::Node* temp = _impl_.val_; - _impl_.val_ = nullptr; +inline ::pg_query::Node* AlterExtensionContentsStmt::unsafe_arena_release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterExtensionContentsStmt.object) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.object_; + _impl_.object_ = nullptr; return temp; } -inline ::pg_query::Node* ResTarget::_internal_mutable_val() { - - if (_impl_.val_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.val_ = p; +inline ::pg_query::Node* AlterExtensionContentsStmt::_internal_mutable_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.object_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.val_; + return _impl_.object_; } -inline ::pg_query::Node* ResTarget::mutable_val() { - ::pg_query::Node* _msg = _internal_mutable_val(); - // @@protoc_insertion_point(field_mutable:pg_query.ResTarget.val) +inline ::pg_query::Node* AlterExtensionContentsStmt::mutable_object() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_object(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterExtensionContentsStmt.object) return _msg; } -inline void ResTarget::set_allocated_val(::pg_query::Node* val) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterExtensionContentsStmt::set_allocated_object(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.val_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.object_); } - if (val) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(val); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - val = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, val, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.val_ = val; - // @@protoc_insertion_point(field_set_allocated:pg_query.ResTarget.val) + + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterExtensionContentsStmt.object) } -// int32 location = 4 [json_name = "location"]; -inline void ResTarget::clear_location() { - _impl_.location_ = 0; +// ------------------------------------------------------------------- + +// CreateFdwStmt + +// string fdwname = 1 [json_name = "fdwname"]; +inline void CreateFdwStmt::clear_fdwname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fdwname_.ClearToEmpty(); } -inline int32_t ResTarget::_internal_location() const { - return _impl_.location_; +inline const std::string& CreateFdwStmt::fdwname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateFdwStmt.fdwname) + return _internal_fdwname(); } -inline int32_t ResTarget::location() const { - // @@protoc_insertion_point(field_get:pg_query.ResTarget.location) - return _internal_location(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateFdwStmt::set_fdwname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fdwname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateFdwStmt.fdwname) } -inline void ResTarget::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline std::string* CreateFdwStmt::mutable_fdwname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_fdwname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateFdwStmt.fdwname) + return _s; } -inline void ResTarget::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.ResTarget.location) +inline const std::string& CreateFdwStmt::_internal_fdwname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fdwname_.Get(); } - -// ------------------------------------------------------------------- - -// MultiAssignRef - -// .pg_query.Node source = 1 [json_name = "source"]; -inline bool MultiAssignRef::_internal_has_source() const { - return this != internal_default_instance() && _impl_.source_ != nullptr; +inline void CreateFdwStmt::_internal_set_fdwname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fdwname_.Set(value, GetArena()); } -inline bool MultiAssignRef::has_source() const { - return _internal_has_source(); +inline std::string* CreateFdwStmt::_internal_mutable_fdwname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.fdwname_.Mutable( GetArena()); } -inline void MultiAssignRef::clear_source() { - if (GetArenaForAllocation() == nullptr && _impl_.source_ != nullptr) { - delete _impl_.source_; - } - _impl_.source_ = nullptr; +inline std::string* CreateFdwStmt::release_fdwname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateFdwStmt.fdwname) + return _impl_.fdwname_.Release(); } -inline const ::pg_query::Node& MultiAssignRef::_internal_source() const { - const ::pg_query::Node* p = _impl_.source_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void CreateFdwStmt::set_allocated_fdwname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fdwname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.fdwname_.IsDefault()) { + _impl_.fdwname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateFdwStmt.fdwname) } -inline const ::pg_query::Node& MultiAssignRef::source() const { - // @@protoc_insertion_point(field_get:pg_query.MultiAssignRef.source) - return _internal_source(); + +// repeated .pg_query.Node func_options = 2 [json_name = "func_options"]; +inline int CreateFdwStmt::_internal_func_options_size() const { + return _internal_func_options().size(); } -inline void MultiAssignRef::unsafe_arena_set_allocated_source( - ::pg_query::Node* source) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.source_); - } - _impl_.source_ = source; - if (source) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MultiAssignRef.source) +inline int CreateFdwStmt::func_options_size() const { + return _internal_func_options_size(); } -inline ::pg_query::Node* MultiAssignRef::release_source() { - - ::pg_query::Node* temp = _impl_.source_; - _impl_.source_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline void CreateFdwStmt::clear_func_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.func_options_.Clear(); } -inline ::pg_query::Node* MultiAssignRef::unsafe_arena_release_source() { - // @@protoc_insertion_point(field_release:pg_query.MultiAssignRef.source) - - ::pg_query::Node* temp = _impl_.source_; - _impl_.source_ = nullptr; - return temp; +inline ::pg_query::Node* CreateFdwStmt::mutable_func_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateFdwStmt.func_options) + return _internal_mutable_func_options()->Mutable(index); } -inline ::pg_query::Node* MultiAssignRef::_internal_mutable_source() { - - if (_impl_.source_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.source_ = p; - } - return _impl_.source_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateFdwStmt::mutable_func_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFdwStmt.func_options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_func_options(); } -inline ::pg_query::Node* MultiAssignRef::mutable_source() { - ::pg_query::Node* _msg = _internal_mutable_source(); - // @@protoc_insertion_point(field_mutable:pg_query.MultiAssignRef.source) - return _msg; +inline const ::pg_query::Node& CreateFdwStmt::func_options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateFdwStmt.func_options) + return _internal_func_options().Get(index); } -inline void MultiAssignRef::set_allocated_source(::pg_query::Node* source) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.source_; - } - if (source) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(source); - if (message_arena != submessage_arena) { - source = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, source, submessage_arena); - } - - } else { - - } - _impl_.source_ = source; - // @@protoc_insertion_point(field_set_allocated:pg_query.MultiAssignRef.source) +inline ::pg_query::Node* CreateFdwStmt::add_func_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_func_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateFdwStmt.func_options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateFdwStmt::func_options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateFdwStmt.func_options) + return _internal_func_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateFdwStmt::_internal_func_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.func_options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateFdwStmt::_internal_mutable_func_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.func_options_; } -// int32 colno = 2 [json_name = "colno"]; -inline void MultiAssignRef::clear_colno() { - _impl_.colno_ = 0; +// repeated .pg_query.Node options = 3 [json_name = "options"]; +inline int CreateFdwStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int32_t MultiAssignRef::_internal_colno() const { - return _impl_.colno_; +inline int CreateFdwStmt::options_size() const { + return _internal_options_size(); } -inline int32_t MultiAssignRef::colno() const { - // @@protoc_insertion_point(field_get:pg_query.MultiAssignRef.colno) - return _internal_colno(); +inline void CreateFdwStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void MultiAssignRef::_internal_set_colno(int32_t value) { - - _impl_.colno_ = value; +inline ::pg_query::Node* CreateFdwStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateFdwStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void MultiAssignRef::set_colno(int32_t value) { - _internal_set_colno(value); - // @@protoc_insertion_point(field_set:pg_query.MultiAssignRef.colno) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateFdwStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFdwStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } - -// int32 ncolumns = 3 [json_name = "ncolumns"]; -inline void MultiAssignRef::clear_ncolumns() { - _impl_.ncolumns_ = 0; +inline const ::pg_query::Node& CreateFdwStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateFdwStmt.options) + return _internal_options().Get(index); } -inline int32_t MultiAssignRef::_internal_ncolumns() const { - return _impl_.ncolumns_; +inline ::pg_query::Node* CreateFdwStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateFdwStmt.options) + return _add; } -inline int32_t MultiAssignRef::ncolumns() const { - // @@protoc_insertion_point(field_get:pg_query.MultiAssignRef.ncolumns) - return _internal_ncolumns(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateFdwStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateFdwStmt.options) + return _internal_options(); } -inline void MultiAssignRef::_internal_set_ncolumns(int32_t value) { - - _impl_.ncolumns_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateFdwStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline void MultiAssignRef::set_ncolumns(int32_t value) { - _internal_set_ncolumns(value); - // @@protoc_insertion_point(field_set:pg_query.MultiAssignRef.ncolumns) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateFdwStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } // ------------------------------------------------------------------- -// TypeCast +// AlterFdwStmt -// .pg_query.Node arg = 1 [json_name = "arg"]; -inline bool TypeCast::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +// string fdwname = 1 [json_name = "fdwname"]; +inline void AlterFdwStmt::clear_fdwname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fdwname_.ClearToEmpty(); } -inline bool TypeCast::has_arg() const { - return _internal_has_arg(); +inline const std::string& AlterFdwStmt::fdwname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterFdwStmt.fdwname) + return _internal_fdwname(); } -inline void TypeCast::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void AlterFdwStmt::set_fdwname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fdwname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterFdwStmt.fdwname) } -inline const ::pg_query::Node& TypeCast::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline std::string* AlterFdwStmt::mutable_fdwname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_fdwname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterFdwStmt.fdwname) + return _s; } -inline const ::pg_query::Node& TypeCast::arg() const { - // @@protoc_insertion_point(field_get:pg_query.TypeCast.arg) - return _internal_arg(); +inline const std::string& AlterFdwStmt::_internal_fdwname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fdwname_.Get(); } -inline void TypeCast::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TypeCast.arg) +inline void AlterFdwStmt::_internal_set_fdwname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fdwname_.Set(value, GetArena()); } -inline ::pg_query::Node* TypeCast::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* AlterFdwStmt::_internal_mutable_fdwname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.fdwname_.Mutable( GetArena()); } -inline ::pg_query::Node* TypeCast::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.TypeCast.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; +inline std::string* AlterFdwStmt::release_fdwname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterFdwStmt.fdwname) + return _impl_.fdwname_.Release(); } -inline ::pg_query::Node* TypeCast::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; +inline void AlterFdwStmt::set_allocated_fdwname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fdwname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.fdwname_.IsDefault()) { + _impl_.fdwname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterFdwStmt.fdwname) } -inline ::pg_query::Node* TypeCast::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.TypeCast.arg) - return _msg; + +// repeated .pg_query.Node func_options = 2 [json_name = "func_options"]; +inline int AlterFdwStmt::_internal_func_options_size() const { + return _internal_func_options().size(); } -inline void TypeCast::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); - if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); - } - - } else { - - } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.TypeCast.arg) +inline int AlterFdwStmt::func_options_size() const { + return _internal_func_options_size(); +} +inline void AlterFdwStmt::clear_func_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.func_options_.Clear(); +} +inline ::pg_query::Node* AlterFdwStmt::mutable_func_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterFdwStmt.func_options) + return _internal_mutable_func_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterFdwStmt::mutable_func_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterFdwStmt.func_options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_func_options(); +} +inline const ::pg_query::Node& AlterFdwStmt::func_options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterFdwStmt.func_options) + return _internal_func_options().Get(index); +} +inline ::pg_query::Node* AlterFdwStmt::add_func_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_func_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterFdwStmt.func_options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterFdwStmt::func_options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterFdwStmt.func_options) + return _internal_func_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterFdwStmt::_internal_func_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.func_options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterFdwStmt::_internal_mutable_func_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.func_options_; } -// .pg_query.TypeName type_name = 2 [json_name = "typeName"]; -inline bool TypeCast::_internal_has_type_name() const { - return this != internal_default_instance() && _impl_.type_name_ != nullptr; +// repeated .pg_query.Node options = 3 [json_name = "options"]; +inline int AlterFdwStmt::_internal_options_size() const { + return _internal_options().size(); } -inline bool TypeCast::has_type_name() const { - return _internal_has_type_name(); +inline int AlterFdwStmt::options_size() const { + return _internal_options_size(); } -inline void TypeCast::clear_type_name() { - if (GetArenaForAllocation() == nullptr && _impl_.type_name_ != nullptr) { - delete _impl_.type_name_; - } - _impl_.type_name_ = nullptr; +inline void AlterFdwStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline const ::pg_query::TypeName& TypeCast::_internal_type_name() const { - const ::pg_query::TypeName* p = _impl_.type_name_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline ::pg_query::Node* AlterFdwStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterFdwStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterFdwStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterFdwStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& AlterFdwStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterFdwStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* AlterFdwStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterFdwStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterFdwStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterFdwStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterFdwStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterFdwStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} + +// ------------------------------------------------------------------- + +// CreateForeignServerStmt + +// string servername = 1 [json_name = "servername"]; +inline void CreateForeignServerStmt::clear_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.ClearToEmpty(); +} +inline const std::string& CreateForeignServerStmt::servername() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.servername) + return _internal_servername(); +} +template +inline PROTOBUF_ALWAYS_INLINE void CreateForeignServerStmt::set_servername(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.servername) +} +inline std::string* CreateForeignServerStmt::mutable_servername() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_servername(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.servername) + return _s; +} +inline const std::string& CreateForeignServerStmt::_internal_servername() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.servername_.Get(); +} +inline void CreateForeignServerStmt::_internal_set_servername(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(value, GetArena()); +} +inline std::string* CreateForeignServerStmt::_internal_mutable_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.servername_.Mutable( GetArena()); +} +inline std::string* CreateForeignServerStmt::release_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateForeignServerStmt.servername) + return _impl_.servername_.Release(); +} +inline void CreateForeignServerStmt::set_allocated_servername(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.servername_.IsDefault()) { + _impl_.servername_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignServerStmt.servername) +} + +// string servertype = 2 [json_name = "servertype"]; +inline void CreateForeignServerStmt::clear_servertype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servertype_.ClearToEmpty(); +} +inline const std::string& CreateForeignServerStmt::servertype() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.servertype) + return _internal_servertype(); } -inline const ::pg_query::TypeName& TypeCast::type_name() const { - // @@protoc_insertion_point(field_get:pg_query.TypeCast.type_name) - return _internal_type_name(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateForeignServerStmt::set_servertype(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servertype_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.servertype) } -inline void TypeCast::unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.type_name_); - } - _impl_.type_name_ = type_name; - if (type_name) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TypeCast.type_name) +inline std::string* CreateForeignServerStmt::mutable_servertype() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_servertype(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.servertype) + return _s; } -inline ::pg_query::TypeName* TypeCast::release_type_name() { - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const std::string& CreateForeignServerStmt::_internal_servertype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.servertype_.Get(); } -inline ::pg_query::TypeName* TypeCast::unsafe_arena_release_type_name() { - // @@protoc_insertion_point(field_release:pg_query.TypeCast.type_name) - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; - return temp; +inline void CreateForeignServerStmt::_internal_set_servertype(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servertype_.Set(value, GetArena()); } -inline ::pg_query::TypeName* TypeCast::_internal_mutable_type_name() { - - if (_impl_.type_name_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.type_name_ = p; - } - return _impl_.type_name_; +inline std::string* CreateForeignServerStmt::_internal_mutable_servertype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.servertype_.Mutable( GetArena()); } -inline ::pg_query::TypeName* TypeCast::mutable_type_name() { - ::pg_query::TypeName* _msg = _internal_mutable_type_name(); - // @@protoc_insertion_point(field_mutable:pg_query.TypeCast.type_name) - return _msg; +inline std::string* CreateForeignServerStmt::release_servertype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateForeignServerStmt.servertype) + return _impl_.servertype_.Release(); } -inline void TypeCast::set_allocated_type_name(::pg_query::TypeName* type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.type_name_; - } - if (type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(type_name); - if (message_arena != submessage_arena) { - type_name = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, type_name, submessage_arena); - } - - } else { - - } - _impl_.type_name_ = type_name; - // @@protoc_insertion_point(field_set_allocated:pg_query.TypeCast.type_name) +inline void CreateForeignServerStmt::set_allocated_servertype(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servertype_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.servertype_.IsDefault()) { + _impl_.servertype_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignServerStmt.servertype) } -// int32 location = 3 [json_name = "location"]; -inline void TypeCast::clear_location() { - _impl_.location_ = 0; +// string version = 3 [json_name = "version"]; +inline void CreateForeignServerStmt::clear_version() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.version_.ClearToEmpty(); } -inline int32_t TypeCast::_internal_location() const { - return _impl_.location_; +inline const std::string& CreateForeignServerStmt::version() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.version) + return _internal_version(); } -inline int32_t TypeCast::location() const { - // @@protoc_insertion_point(field_get:pg_query.TypeCast.location) - return _internal_location(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateForeignServerStmt::set_version(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.version_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.version) } -inline void TypeCast::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline std::string* CreateForeignServerStmt::mutable_version() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_version(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.version) + return _s; } -inline void TypeCast::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.TypeCast.location) +inline const std::string& CreateForeignServerStmt::_internal_version() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.version_.Get(); } - -// ------------------------------------------------------------------- - -// CollateClause - -// .pg_query.Node arg = 1 [json_name = "arg"]; -inline bool CollateClause::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +inline void CreateForeignServerStmt::_internal_set_version(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.version_.Set(value, GetArena()); } -inline bool CollateClause::has_arg() const { - return _internal_has_arg(); +inline std::string* CreateForeignServerStmt::_internal_mutable_version() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.version_.Mutable( GetArena()); } -inline void CollateClause::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline std::string* CreateForeignServerStmt::release_version() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateForeignServerStmt.version) + return _impl_.version_.Release(); } -inline const ::pg_query::Node& CollateClause::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void CreateForeignServerStmt::set_allocated_version(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.version_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.version_.IsDefault()) { + _impl_.version_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignServerStmt.version) } -inline const ::pg_query::Node& CollateClause::arg() const { - // @@protoc_insertion_point(field_get:pg_query.CollateClause.arg) - return _internal_arg(); + +// string fdwname = 4 [json_name = "fdwname"]; +inline void CreateForeignServerStmt::clear_fdwname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fdwname_.ClearToEmpty(); } -inline void CollateClause::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); - } - _impl_.arg_ = arg; - if (arg) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CollateClause.arg) +inline const std::string& CreateForeignServerStmt::fdwname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.fdwname) + return _internal_fdwname(); } -inline ::pg_query::Node* CollateClause::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +template +inline PROTOBUF_ALWAYS_INLINE void CreateForeignServerStmt::set_fdwname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fdwname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.fdwname) } -inline ::pg_query::Node* CollateClause::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.CollateClause.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; - return temp; +inline std::string* CreateForeignServerStmt::mutable_fdwname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_fdwname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.fdwname) + return _s; } -inline ::pg_query::Node* CollateClause::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; - } - return _impl_.arg_; +inline const std::string& CreateForeignServerStmt::_internal_fdwname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.fdwname_.Get(); } -inline ::pg_query::Node* CollateClause::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.CollateClause.arg) - return _msg; +inline void CreateForeignServerStmt::_internal_set_fdwname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.fdwname_.Set(value, GetArena()); } -inline void CollateClause::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.arg_; - } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); - if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); - } - - } else { - - } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.CollateClause.arg) +inline std::string* CreateForeignServerStmt::_internal_mutable_fdwname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.fdwname_.Mutable( GetArena()); +} +inline std::string* CreateForeignServerStmt::release_fdwname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateForeignServerStmt.fdwname) + return _impl_.fdwname_.Release(); +} +inline void CreateForeignServerStmt::set_allocated_fdwname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.fdwname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.fdwname_.IsDefault()) { + _impl_.fdwname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignServerStmt.fdwname) } -// repeated .pg_query.Node collname = 2 [json_name = "collname"]; -inline int CollateClause::_internal_collname_size() const { - return _impl_.collname_.size(); +// bool if_not_exists = 5 [json_name = "if_not_exists"]; +inline void CreateForeignServerStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; } -inline int CollateClause::collname_size() const { - return _internal_collname_size(); +inline bool CreateForeignServerStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.if_not_exists) + return _internal_if_not_exists(); } -inline void CollateClause::clear_collname() { - _impl_.collname_.Clear(); +inline void CreateForeignServerStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.CreateForeignServerStmt.if_not_exists) } -inline ::pg_query::Node* CollateClause::mutable_collname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CollateClause.collname) - return _impl_.collname_.Mutable(index); +inline bool CreateForeignServerStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CollateClause::mutable_collname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CollateClause.collname) - return &_impl_.collname_; +inline void CreateForeignServerStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; } -inline const ::pg_query::Node& CollateClause::_internal_collname(int index) const { - return _impl_.collname_.Get(index); + +// repeated .pg_query.Node options = 6 [json_name = "options"]; +inline int CreateForeignServerStmt::_internal_options_size() const { + return _internal_options().size(); } -inline const ::pg_query::Node& CollateClause::collname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CollateClause.collname) - return _internal_collname(index); +inline int CreateForeignServerStmt::options_size() const { + return _internal_options_size(); } -inline ::pg_query::Node* CollateClause::_internal_add_collname() { - return _impl_.collname_.Add(); +inline void CreateForeignServerStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline ::pg_query::Node* CollateClause::add_collname() { - ::pg_query::Node* _add = _internal_add_collname(); - // @@protoc_insertion_point(field_add:pg_query.CollateClause.collname) - return _add; +inline ::pg_query::Node* CreateForeignServerStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignServerStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CollateClause::collname() const { - // @@protoc_insertion_point(field_list:pg_query.CollateClause.collname) - return _impl_.collname_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateForeignServerStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateForeignServerStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } - -// int32 location = 3 [json_name = "location"]; -inline void CollateClause::clear_location() { - _impl_.location_ = 0; +inline const ::pg_query::Node& CreateForeignServerStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateForeignServerStmt.options) + return _internal_options().Get(index); } -inline int32_t CollateClause::_internal_location() const { - return _impl_.location_; +inline ::pg_query::Node* CreateForeignServerStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateForeignServerStmt.options) + return _add; } -inline int32_t CollateClause::location() const { - // @@protoc_insertion_point(field_get:pg_query.CollateClause.location) - return _internal_location(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateForeignServerStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateForeignServerStmt.options) + return _internal_options(); } -inline void CollateClause::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateForeignServerStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline void CollateClause::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CollateClause.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateForeignServerStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } // ------------------------------------------------------------------- -// SortBy +// AlterForeignServerStmt -// .pg_query.Node node = 1 [json_name = "node"]; -inline bool SortBy::_internal_has_node() const { - return this != internal_default_instance() && _impl_.node_ != nullptr; -} -inline bool SortBy::has_node() const { - return _internal_has_node(); -} -inline void SortBy::clear_node() { - if (GetArenaForAllocation() == nullptr && _impl_.node_ != nullptr) { - delete _impl_.node_; - } - _impl_.node_ = nullptr; +// string servername = 1 [json_name = "servername"]; +inline void AlterForeignServerStmt::clear_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.ClearToEmpty(); } -inline const ::pg_query::Node& SortBy::_internal_node() const { - const ::pg_query::Node* p = _impl_.node_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const std::string& AlterForeignServerStmt::servername() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterForeignServerStmt.servername) + return _internal_servername(); } -inline const ::pg_query::Node& SortBy::node() const { - // @@protoc_insertion_point(field_get:pg_query.SortBy.node) - return _internal_node(); +template +inline PROTOBUF_ALWAYS_INLINE void AlterForeignServerStmt::set_servername(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterForeignServerStmt.servername) } -inline void SortBy::unsafe_arena_set_allocated_node( - ::pg_query::Node* node) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.node_); - } - _impl_.node_ = node; - if (node) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SortBy.node) +inline std::string* AlterForeignServerStmt::mutable_servername() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_servername(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterForeignServerStmt.servername) + return _s; } -inline ::pg_query::Node* SortBy::release_node() { - - ::pg_query::Node* temp = _impl_.node_; - _impl_.node_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const std::string& AlterForeignServerStmt::_internal_servername() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.servername_.Get(); } -inline ::pg_query::Node* SortBy::unsafe_arena_release_node() { - // @@protoc_insertion_point(field_release:pg_query.SortBy.node) - - ::pg_query::Node* temp = _impl_.node_; - _impl_.node_ = nullptr; - return temp; +inline void AlterForeignServerStmt::_internal_set_servername(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(value, GetArena()); } -inline ::pg_query::Node* SortBy::_internal_mutable_node() { - - if (_impl_.node_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.node_ = p; - } - return _impl_.node_; +inline std::string* AlterForeignServerStmt::_internal_mutable_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.servername_.Mutable( GetArena()); } -inline ::pg_query::Node* SortBy::mutable_node() { - ::pg_query::Node* _msg = _internal_mutable_node(); - // @@protoc_insertion_point(field_mutable:pg_query.SortBy.node) - return _msg; +inline std::string* AlterForeignServerStmt::release_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterForeignServerStmt.servername) + return _impl_.servername_.Release(); } -inline void SortBy::set_allocated_node(::pg_query::Node* node) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.node_; - } - if (node) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(node); - if (message_arena != submessage_arena) { - node = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, node, submessage_arena); - } - - } else { - - } - _impl_.node_ = node; - // @@protoc_insertion_point(field_set_allocated:pg_query.SortBy.node) +inline void AlterForeignServerStmt::set_allocated_servername(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.servername_.IsDefault()) { + _impl_.servername_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterForeignServerStmt.servername) } -// .pg_query.SortByDir sortby_dir = 2 [json_name = "sortby_dir"]; -inline void SortBy::clear_sortby_dir() { - _impl_.sortby_dir_ = 0; -} -inline ::pg_query::SortByDir SortBy::_internal_sortby_dir() const { - return static_cast< ::pg_query::SortByDir >(_impl_.sortby_dir_); +// string version = 2 [json_name = "version"]; +inline void AlterForeignServerStmt::clear_version() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.version_.ClearToEmpty(); } -inline ::pg_query::SortByDir SortBy::sortby_dir() const { - // @@protoc_insertion_point(field_get:pg_query.SortBy.sortby_dir) - return _internal_sortby_dir(); +inline const std::string& AlterForeignServerStmt::version() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterForeignServerStmt.version) + return _internal_version(); } -inline void SortBy::_internal_set_sortby_dir(::pg_query::SortByDir value) { - - _impl_.sortby_dir_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void AlterForeignServerStmt::set_version(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.version_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterForeignServerStmt.version) } -inline void SortBy::set_sortby_dir(::pg_query::SortByDir value) { - _internal_set_sortby_dir(value); - // @@protoc_insertion_point(field_set:pg_query.SortBy.sortby_dir) +inline std::string* AlterForeignServerStmt::mutable_version() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_version(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterForeignServerStmt.version) + return _s; } - -// .pg_query.SortByNulls sortby_nulls = 3 [json_name = "sortby_nulls"]; -inline void SortBy::clear_sortby_nulls() { - _impl_.sortby_nulls_ = 0; +inline const std::string& AlterForeignServerStmt::_internal_version() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.version_.Get(); } -inline ::pg_query::SortByNulls SortBy::_internal_sortby_nulls() const { - return static_cast< ::pg_query::SortByNulls >(_impl_.sortby_nulls_); +inline void AlterForeignServerStmt::_internal_set_version(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.version_.Set(value, GetArena()); } -inline ::pg_query::SortByNulls SortBy::sortby_nulls() const { - // @@protoc_insertion_point(field_get:pg_query.SortBy.sortby_nulls) - return _internal_sortby_nulls(); +inline std::string* AlterForeignServerStmt::_internal_mutable_version() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.version_.Mutable( GetArena()); } -inline void SortBy::_internal_set_sortby_nulls(::pg_query::SortByNulls value) { - - _impl_.sortby_nulls_ = value; +inline std::string* AlterForeignServerStmt::release_version() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterForeignServerStmt.version) + return _impl_.version_.Release(); } -inline void SortBy::set_sortby_nulls(::pg_query::SortByNulls value) { - _internal_set_sortby_nulls(value); - // @@protoc_insertion_point(field_set:pg_query.SortBy.sortby_nulls) +inline void AlterForeignServerStmt::set_allocated_version(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.version_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.version_.IsDefault()) { + _impl_.version_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterForeignServerStmt.version) } -// repeated .pg_query.Node use_op = 4 [json_name = "useOp"]; -inline int SortBy::_internal_use_op_size() const { - return _impl_.use_op_.size(); +// repeated .pg_query.Node options = 3 [json_name = "options"]; +inline int AlterForeignServerStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int SortBy::use_op_size() const { - return _internal_use_op_size(); +inline int AlterForeignServerStmt::options_size() const { + return _internal_options_size(); } -inline void SortBy::clear_use_op() { - _impl_.use_op_.Clear(); +inline void AlterForeignServerStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline ::pg_query::Node* SortBy::mutable_use_op(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.SortBy.use_op) - return _impl_.use_op_.Mutable(index); +inline ::pg_query::Node* AlterForeignServerStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterForeignServerStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -SortBy::mutable_use_op() { - // @@protoc_insertion_point(field_mutable_list:pg_query.SortBy.use_op) - return &_impl_.use_op_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterForeignServerStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterForeignServerStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline const ::pg_query::Node& SortBy::_internal_use_op(int index) const { - return _impl_.use_op_.Get(index); +inline const ::pg_query::Node& AlterForeignServerStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterForeignServerStmt.options) + return _internal_options().Get(index); } -inline const ::pg_query::Node& SortBy::use_op(int index) const { - // @@protoc_insertion_point(field_get:pg_query.SortBy.use_op) - return _internal_use_op(index); +inline ::pg_query::Node* AlterForeignServerStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterForeignServerStmt.options) + return _add; } -inline ::pg_query::Node* SortBy::_internal_add_use_op() { - return _impl_.use_op_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterForeignServerStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterForeignServerStmt.options) + return _internal_options(); } -inline ::pg_query::Node* SortBy::add_use_op() { - ::pg_query::Node* _add = _internal_add_use_op(); - // @@protoc_insertion_point(field_add:pg_query.SortBy.use_op) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterForeignServerStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -SortBy::use_op() const { - // @@protoc_insertion_point(field_list:pg_query.SortBy.use_op) - return _impl_.use_op_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterForeignServerStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// int32 location = 5 [json_name = "location"]; -inline void SortBy::clear_location() { - _impl_.location_ = 0; +// bool has_version = 4 [json_name = "has_version"]; +inline void AlterForeignServerStmt::clear_has_version() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.has_version_ = false; } -inline int32_t SortBy::_internal_location() const { - return _impl_.location_; +inline bool AlterForeignServerStmt::has_version() const { + // @@protoc_insertion_point(field_get:pg_query.AlterForeignServerStmt.has_version) + return _internal_has_version(); } -inline int32_t SortBy::location() const { - // @@protoc_insertion_point(field_get:pg_query.SortBy.location) - return _internal_location(); +inline void AlterForeignServerStmt::set_has_version(bool value) { + _internal_set_has_version(value); + // @@protoc_insertion_point(field_set:pg_query.AlterForeignServerStmt.has_version) } -inline void SortBy::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline bool AlterForeignServerStmt::_internal_has_version() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.has_version_; } -inline void SortBy::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.SortBy.location) +inline void AlterForeignServerStmt::_internal_set_has_version(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.has_version_ = value; } // ------------------------------------------------------------------- -// WindowDef +// CreateForeignTableStmt -// string name = 1 [json_name = "name"]; -inline void WindowDef::clear_name() { - _impl_.name_.ClearToEmpty(); -} -inline const std::string& WindowDef::name() const { - // @@protoc_insertion_point(field_get:pg_query.WindowDef.name) - return _internal_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void WindowDef::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.WindowDef.name) -} -inline std::string* WindowDef::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.name) - return _s; -} -inline const std::string& WindowDef::_internal_name() const { - return _impl_.name_.Get(); +// .pg_query.CreateStmt base_stmt = 1 [json_name = "base"]; +inline bool CreateForeignTableStmt::has_base_stmt() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.base_stmt_ != nullptr); + return value; } -inline void WindowDef::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void CreateForeignTableStmt::clear_base_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.base_stmt_ != nullptr) _impl_.base_stmt_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* WindowDef::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::CreateStmt& CreateForeignTableStmt::_internal_base_stmt() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::CreateStmt* p = _impl_.base_stmt_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_CreateStmt_default_instance_); } -inline std::string* WindowDef::release_name() { - // @@protoc_insertion_point(field_release:pg_query.WindowDef.name) - return _impl_.name_.Release(); +inline const ::pg_query::CreateStmt& CreateForeignTableStmt::base_stmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateForeignTableStmt.base_stmt) + return _internal_base_stmt(); } -inline void WindowDef::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - +inline void CreateForeignTableStmt::unsafe_arena_set_allocated_base_stmt(::pg_query::CreateStmt* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.base_stmt_); } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); + _impl_.base_stmt_ = reinterpret_cast<::pg_query::CreateStmt*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowDef.name) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateForeignTableStmt.base_stmt) } +inline ::pg_query::CreateStmt* CreateForeignTableStmt::release_base_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// string refname = 2 [json_name = "refname"]; -inline void WindowDef::clear_refname() { - _impl_.refname_.ClearToEmpty(); -} -inline const std::string& WindowDef::refname() const { - // @@protoc_insertion_point(field_get:pg_query.WindowDef.refname) - return _internal_refname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void WindowDef::set_refname(ArgT0&& arg0, ArgT... args) { - - _impl_.refname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.WindowDef.refname) -} -inline std::string* WindowDef::mutable_refname() { - std::string* _s = _internal_mutable_refname(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.refname) - return _s; -} -inline const std::string& WindowDef::_internal_refname() const { - return _impl_.refname_.Get(); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::CreateStmt* released = _impl_.base_stmt_; + _impl_.base_stmt_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline void WindowDef::_internal_set_refname(const std::string& value) { - - _impl_.refname_.Set(value, GetArenaForAllocation()); +inline ::pg_query::CreateStmt* CreateForeignTableStmt::unsafe_arena_release_base_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateForeignTableStmt.base_stmt) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::CreateStmt* temp = _impl_.base_stmt_; + _impl_.base_stmt_ = nullptr; + return temp; } -inline std::string* WindowDef::_internal_mutable_refname() { - - return _impl_.refname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::CreateStmt* CreateForeignTableStmt::_internal_mutable_base_stmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.base_stmt_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::CreateStmt>(GetArena()); + _impl_.base_stmt_ = reinterpret_cast<::pg_query::CreateStmt*>(p); + } + return _impl_.base_stmt_; } -inline std::string* WindowDef::release_refname() { - // @@protoc_insertion_point(field_release:pg_query.WindowDef.refname) - return _impl_.refname_.Release(); +inline ::pg_query::CreateStmt* CreateForeignTableStmt::mutable_base_stmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CreateStmt* _msg = _internal_mutable_base_stmt(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignTableStmt.base_stmt) + return _msg; } -inline void WindowDef::set_allocated_refname(std::string* refname) { - if (refname != nullptr) { - - } else { - +inline void CreateForeignTableStmt::set_allocated_base_stmt(::pg_query::CreateStmt* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::CreateStmt*>(_impl_.base_stmt_); } - _impl_.refname_.SetAllocated(refname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.refname_.IsDefault()) { - _impl_.refname_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::CreateStmt*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowDef.refname) -} -// repeated .pg_query.Node partition_clause = 3 [json_name = "partitionClause"]; -inline int WindowDef::_internal_partition_clause_size() const { - return _impl_.partition_clause_.size(); + _impl_.base_stmt_ = reinterpret_cast<::pg_query::CreateStmt*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignTableStmt.base_stmt) } -inline int WindowDef::partition_clause_size() const { - return _internal_partition_clause_size(); + +// string servername = 2 [json_name = "servername"]; +inline void CreateForeignTableStmt::clear_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.ClearToEmpty(); } -inline void WindowDef::clear_partition_clause() { - _impl_.partition_clause_.Clear(); +inline const std::string& CreateForeignTableStmt::servername() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateForeignTableStmt.servername) + return _internal_servername(); } -inline ::pg_query::Node* WindowDef::mutable_partition_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.partition_clause) - return _impl_.partition_clause_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void CreateForeignTableStmt::set_servername(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateForeignTableStmt.servername) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -WindowDef::mutable_partition_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.WindowDef.partition_clause) - return &_impl_.partition_clause_; +inline std::string* CreateForeignTableStmt::mutable_servername() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_servername(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignTableStmt.servername) + return _s; } -inline const ::pg_query::Node& WindowDef::_internal_partition_clause(int index) const { - return _impl_.partition_clause_.Get(index); +inline const std::string& CreateForeignTableStmt::_internal_servername() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.servername_.Get(); } -inline const ::pg_query::Node& WindowDef::partition_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.WindowDef.partition_clause) - return _internal_partition_clause(index); +inline void CreateForeignTableStmt::_internal_set_servername(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(value, GetArena()); } -inline ::pg_query::Node* WindowDef::_internal_add_partition_clause() { - return _impl_.partition_clause_.Add(); +inline std::string* CreateForeignTableStmt::_internal_mutable_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.servername_.Mutable( GetArena()); } -inline ::pg_query::Node* WindowDef::add_partition_clause() { - ::pg_query::Node* _add = _internal_add_partition_clause(); - // @@protoc_insertion_point(field_add:pg_query.WindowDef.partition_clause) - return _add; +inline std::string* CreateForeignTableStmt::release_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateForeignTableStmt.servername) + return _impl_.servername_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -WindowDef::partition_clause() const { - // @@protoc_insertion_point(field_list:pg_query.WindowDef.partition_clause) - return _impl_.partition_clause_; +inline void CreateForeignTableStmt::set_allocated_servername(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.servername_.IsDefault()) { + _impl_.servername_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateForeignTableStmt.servername) } -// repeated .pg_query.Node order_clause = 4 [json_name = "orderClause"]; -inline int WindowDef::_internal_order_clause_size() const { - return _impl_.order_clause_.size(); -} -inline int WindowDef::order_clause_size() const { - return _internal_order_clause_size(); -} -inline void WindowDef::clear_order_clause() { - _impl_.order_clause_.Clear(); +// repeated .pg_query.Node options = 3 [json_name = "options"]; +inline int CreateForeignTableStmt::_internal_options_size() const { + return _internal_options().size(); } -inline ::pg_query::Node* WindowDef::mutable_order_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.order_clause) - return _impl_.order_clause_.Mutable(index); +inline int CreateForeignTableStmt::options_size() const { + return _internal_options_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -WindowDef::mutable_order_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.WindowDef.order_clause) - return &_impl_.order_clause_; +inline void CreateForeignTableStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline const ::pg_query::Node& WindowDef::_internal_order_clause(int index) const { - return _impl_.order_clause_.Get(index); +inline ::pg_query::Node* CreateForeignTableStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateForeignTableStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline const ::pg_query::Node& WindowDef::order_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.WindowDef.order_clause) - return _internal_order_clause(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateForeignTableStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateForeignTableStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline ::pg_query::Node* WindowDef::_internal_add_order_clause() { - return _impl_.order_clause_.Add(); +inline const ::pg_query::Node& CreateForeignTableStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateForeignTableStmt.options) + return _internal_options().Get(index); } -inline ::pg_query::Node* WindowDef::add_order_clause() { - ::pg_query::Node* _add = _internal_add_order_clause(); - // @@protoc_insertion_point(field_add:pg_query.WindowDef.order_clause) +inline ::pg_query::Node* CreateForeignTableStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateForeignTableStmt.options) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -WindowDef::order_clause() const { - // @@protoc_insertion_point(field_list:pg_query.WindowDef.order_clause) - return _impl_.order_clause_; -} - -// int32 frame_options = 5 [json_name = "frameOptions"]; -inline void WindowDef::clear_frame_options() { - _impl_.frame_options_ = 0; -} -inline int32_t WindowDef::_internal_frame_options() const { - return _impl_.frame_options_; -} -inline int32_t WindowDef::frame_options() const { - // @@protoc_insertion_point(field_get:pg_query.WindowDef.frame_options) - return _internal_frame_options(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateForeignTableStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateForeignTableStmt.options) + return _internal_options(); } -inline void WindowDef::_internal_set_frame_options(int32_t value) { - - _impl_.frame_options_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateForeignTableStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline void WindowDef::set_frame_options(int32_t value) { - _internal_set_frame_options(value); - // @@protoc_insertion_point(field_set:pg_query.WindowDef.frame_options) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateForeignTableStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// .pg_query.Node start_offset = 6 [json_name = "startOffset"]; -inline bool WindowDef::_internal_has_start_offset() const { - return this != internal_default_instance() && _impl_.start_offset_ != nullptr; -} -inline bool WindowDef::has_start_offset() const { - return _internal_has_start_offset(); +// ------------------------------------------------------------------- + +// CreateUserMappingStmt + +// .pg_query.RoleSpec user = 1 [json_name = "user"]; +inline bool CreateUserMappingStmt::has_user() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.user_ != nullptr); + return value; } -inline void WindowDef::clear_start_offset() { - if (GetArenaForAllocation() == nullptr && _impl_.start_offset_ != nullptr) { - delete _impl_.start_offset_; - } - _impl_.start_offset_ = nullptr; +inline void CreateUserMappingStmt::clear_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.user_ != nullptr) _impl_.user_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& WindowDef::_internal_start_offset() const { - const ::pg_query::Node* p = _impl_.start_offset_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::RoleSpec& CreateUserMappingStmt::_internal_user() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.user_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); } -inline const ::pg_query::Node& WindowDef::start_offset() const { - // @@protoc_insertion_point(field_get:pg_query.WindowDef.start_offset) - return _internal_start_offset(); +inline const ::pg_query::RoleSpec& CreateUserMappingStmt::user() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateUserMappingStmt.user) + return _internal_user(); } -inline void WindowDef::unsafe_arena_set_allocated_start_offset( - ::pg_query::Node* start_offset) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.start_offset_); +inline void CreateUserMappingStmt::unsafe_arena_set_allocated_user(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.user_); } - _impl_.start_offset_ = start_offset; - if (start_offset) { - + _impl_.user_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowDef.start_offset) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateUserMappingStmt.user) } -inline ::pg_query::Node* WindowDef::release_start_offset() { - - ::pg_query::Node* temp = _impl_.start_offset_; - _impl_.start_offset_ = nullptr; +inline ::pg_query::RoleSpec* CreateUserMappingStmt::release_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.user_; + _impl_.user_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* WindowDef::unsafe_arena_release_start_offset() { - // @@protoc_insertion_point(field_release:pg_query.WindowDef.start_offset) - - ::pg_query::Node* temp = _impl_.start_offset_; - _impl_.start_offset_ = nullptr; +inline ::pg_query::RoleSpec* CreateUserMappingStmt::unsafe_arena_release_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateUserMappingStmt.user) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.user_; + _impl_.user_ = nullptr; return temp; } -inline ::pg_query::Node* WindowDef::_internal_mutable_start_offset() { - - if (_impl_.start_offset_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.start_offset_ = p; +inline ::pg_query::RoleSpec* CreateUserMappingStmt::_internal_mutable_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.user_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.user_ = reinterpret_cast<::pg_query::RoleSpec*>(p); } - return _impl_.start_offset_; + return _impl_.user_; } -inline ::pg_query::Node* WindowDef::mutable_start_offset() { - ::pg_query::Node* _msg = _internal_mutable_start_offset(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.start_offset) +inline ::pg_query::RoleSpec* CreateUserMappingStmt::mutable_user() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_user(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateUserMappingStmt.user) return _msg; } -inline void WindowDef::set_allocated_start_offset(::pg_query::Node* start_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreateUserMappingStmt::set_allocated_user(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.start_offset_; + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.user_); } - if (start_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(start_offset); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); if (message_arena != submessage_arena) { - start_offset = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, start_offset, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.start_offset_ = start_offset; - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowDef.start_offset) + + _impl_.user_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateUserMappingStmt.user) } -// .pg_query.Node end_offset = 7 [json_name = "endOffset"]; -inline bool WindowDef::_internal_has_end_offset() const { - return this != internal_default_instance() && _impl_.end_offset_ != nullptr; +// string servername = 2 [json_name = "servername"]; +inline void CreateUserMappingStmt::clear_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.ClearToEmpty(); } -inline bool WindowDef::has_end_offset() const { - return _internal_has_end_offset(); +inline const std::string& CreateUserMappingStmt::servername() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateUserMappingStmt.servername) + return _internal_servername(); } -inline void WindowDef::clear_end_offset() { - if (GetArenaForAllocation() == nullptr && _impl_.end_offset_ != nullptr) { - delete _impl_.end_offset_; - } - _impl_.end_offset_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void CreateUserMappingStmt::set_servername(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateUserMappingStmt.servername) } -inline const ::pg_query::Node& WindowDef::_internal_end_offset() const { - const ::pg_query::Node* p = _impl_.end_offset_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline std::string* CreateUserMappingStmt::mutable_servername() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_servername(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateUserMappingStmt.servername) + return _s; } -inline const ::pg_query::Node& WindowDef::end_offset() const { - // @@protoc_insertion_point(field_get:pg_query.WindowDef.end_offset) - return _internal_end_offset(); +inline const std::string& CreateUserMappingStmt::_internal_servername() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.servername_.Get(); } -inline void WindowDef::unsafe_arena_set_allocated_end_offset( - ::pg_query::Node* end_offset) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.end_offset_); - } - _impl_.end_offset_ = end_offset; - if (end_offset) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowDef.end_offset) +inline void CreateUserMappingStmt::_internal_set_servername(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(value, GetArena()); } -inline ::pg_query::Node* WindowDef::release_end_offset() { - - ::pg_query::Node* temp = _impl_.end_offset_; - _impl_.end_offset_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* CreateUserMappingStmt::_internal_mutable_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.servername_.Mutable( GetArena()); } -inline ::pg_query::Node* WindowDef::unsafe_arena_release_end_offset() { - // @@protoc_insertion_point(field_release:pg_query.WindowDef.end_offset) - - ::pg_query::Node* temp = _impl_.end_offset_; - _impl_.end_offset_ = nullptr; - return temp; +inline std::string* CreateUserMappingStmt::release_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateUserMappingStmt.servername) + return _impl_.servername_.Release(); } -inline ::pg_query::Node* WindowDef::_internal_mutable_end_offset() { - - if (_impl_.end_offset_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.end_offset_ = p; - } - return _impl_.end_offset_; +inline void CreateUserMappingStmt::set_allocated_servername(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.servername_.IsDefault()) { + _impl_.servername_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateUserMappingStmt.servername) } -inline ::pg_query::Node* WindowDef::mutable_end_offset() { - ::pg_query::Node* _msg = _internal_mutable_end_offset(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowDef.end_offset) - return _msg; + +// bool if_not_exists = 3 [json_name = "if_not_exists"]; +inline void CreateUserMappingStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; } -inline void WindowDef::set_allocated_end_offset(::pg_query::Node* end_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.end_offset_; - } - if (end_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(end_offset); - if (message_arena != submessage_arena) { - end_offset = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, end_offset, submessage_arena); - } - - } else { - - } - _impl_.end_offset_ = end_offset; - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowDef.end_offset) +inline bool CreateUserMappingStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.CreateUserMappingStmt.if_not_exists) + return _internal_if_not_exists(); +} +inline void CreateUserMappingStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.CreateUserMappingStmt.if_not_exists) +} +inline bool CreateUserMappingStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; +} +inline void CreateUserMappingStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; } -// int32 location = 8 [json_name = "location"]; -inline void WindowDef::clear_location() { - _impl_.location_ = 0; +// repeated .pg_query.Node options = 4 [json_name = "options"]; +inline int CreateUserMappingStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int32_t WindowDef::_internal_location() const { - return _impl_.location_; +inline int CreateUserMappingStmt::options_size() const { + return _internal_options_size(); } -inline int32_t WindowDef::location() const { - // @@protoc_insertion_point(field_get:pg_query.WindowDef.location) - return _internal_location(); +inline void CreateUserMappingStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void WindowDef::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* CreateUserMappingStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateUserMappingStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void WindowDef::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.WindowDef.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateUserMappingStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateUserMappingStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } - -// ------------------------------------------------------------------- - -// RangeSubselect - -// bool lateral = 1 [json_name = "lateral"]; -inline void RangeSubselect::clear_lateral() { - _impl_.lateral_ = false; +inline const ::pg_query::Node& CreateUserMappingStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateUserMappingStmt.options) + return _internal_options().Get(index); } -inline bool RangeSubselect::_internal_lateral() const { - return _impl_.lateral_; +inline ::pg_query::Node* CreateUserMappingStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateUserMappingStmt.options) + return _add; } -inline bool RangeSubselect::lateral() const { - // @@protoc_insertion_point(field_get:pg_query.RangeSubselect.lateral) - return _internal_lateral(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateUserMappingStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateUserMappingStmt.options) + return _internal_options(); } -inline void RangeSubselect::_internal_set_lateral(bool value) { - - _impl_.lateral_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateUserMappingStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline void RangeSubselect::set_lateral(bool value) { - _internal_set_lateral(value); - // @@protoc_insertion_point(field_set:pg_query.RangeSubselect.lateral) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateUserMappingStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// .pg_query.Node subquery = 2 [json_name = "subquery"]; -inline bool RangeSubselect::_internal_has_subquery() const { - return this != internal_default_instance() && _impl_.subquery_ != nullptr; -} -inline bool RangeSubselect::has_subquery() const { - return _internal_has_subquery(); +// ------------------------------------------------------------------- + +// AlterUserMappingStmt + +// .pg_query.RoleSpec user = 1 [json_name = "user"]; +inline bool AlterUserMappingStmt::has_user() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.user_ != nullptr); + return value; } -inline void RangeSubselect::clear_subquery() { - if (GetArenaForAllocation() == nullptr && _impl_.subquery_ != nullptr) { - delete _impl_.subquery_; - } - _impl_.subquery_ = nullptr; +inline void AlterUserMappingStmt::clear_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.user_ != nullptr) _impl_.user_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& RangeSubselect::_internal_subquery() const { - const ::pg_query::Node* p = _impl_.subquery_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::RoleSpec& AlterUserMappingStmt::_internal_user() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.user_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); } -inline const ::pg_query::Node& RangeSubselect::subquery() const { - // @@protoc_insertion_point(field_get:pg_query.RangeSubselect.subquery) - return _internal_subquery(); +inline const ::pg_query::RoleSpec& AlterUserMappingStmt::user() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterUserMappingStmt.user) + return _internal_user(); } -inline void RangeSubselect::unsafe_arena_set_allocated_subquery( - ::pg_query::Node* subquery) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.subquery_); +inline void AlterUserMappingStmt::unsafe_arena_set_allocated_user(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.user_); } - _impl_.subquery_ = subquery; - if (subquery) { - + _impl_.user_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeSubselect.subquery) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterUserMappingStmt.user) } -inline ::pg_query::Node* RangeSubselect::release_subquery() { - - ::pg_query::Node* temp = _impl_.subquery_; - _impl_.subquery_ = nullptr; +inline ::pg_query::RoleSpec* AlterUserMappingStmt::release_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.user_; + _impl_.user_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* RangeSubselect::unsafe_arena_release_subquery() { - // @@protoc_insertion_point(field_release:pg_query.RangeSubselect.subquery) - - ::pg_query::Node* temp = _impl_.subquery_; - _impl_.subquery_ = nullptr; +inline ::pg_query::RoleSpec* AlterUserMappingStmt::unsafe_arena_release_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterUserMappingStmt.user) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.user_; + _impl_.user_ = nullptr; return temp; } -inline ::pg_query::Node* RangeSubselect::_internal_mutable_subquery() { - - if (_impl_.subquery_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.subquery_ = p; +inline ::pg_query::RoleSpec* AlterUserMappingStmt::_internal_mutable_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.user_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.user_ = reinterpret_cast<::pg_query::RoleSpec*>(p); } - return _impl_.subquery_; + return _impl_.user_; } -inline ::pg_query::Node* RangeSubselect::mutable_subquery() { - ::pg_query::Node* _msg = _internal_mutable_subquery(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeSubselect.subquery) +inline ::pg_query::RoleSpec* AlterUserMappingStmt::mutable_user() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_user(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterUserMappingStmt.user) return _msg; } -inline void RangeSubselect::set_allocated_subquery(::pg_query::Node* subquery) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterUserMappingStmt::set_allocated_user(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.subquery_; + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.user_); } - if (subquery) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(subquery); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); if (message_arena != submessage_arena) { - subquery = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, subquery, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.subquery_ = subquery; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeSubselect.subquery) + + _impl_.user_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterUserMappingStmt.user) } -// .pg_query.Alias alias = 3 [json_name = "alias"]; -inline bool RangeSubselect::_internal_has_alias() const { - return this != internal_default_instance() && _impl_.alias_ != nullptr; +// string servername = 2 [json_name = "servername"]; +inline void AlterUserMappingStmt::clear_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.ClearToEmpty(); } -inline bool RangeSubselect::has_alias() const { - return _internal_has_alias(); +inline const std::string& AlterUserMappingStmt::servername() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterUserMappingStmt.servername) + return _internal_servername(); } -inline void RangeSubselect::clear_alias() { - if (GetArenaForAllocation() == nullptr && _impl_.alias_ != nullptr) { - delete _impl_.alias_; - } - _impl_.alias_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void AlterUserMappingStmt::set_servername(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterUserMappingStmt.servername) } -inline const ::pg_query::Alias& RangeSubselect::_internal_alias() const { - const ::pg_query::Alias* p = _impl_.alias_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Alias_default_instance_); +inline std::string* AlterUserMappingStmt::mutable_servername() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_servername(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterUserMappingStmt.servername) + return _s; } -inline const ::pg_query::Alias& RangeSubselect::alias() const { - // @@protoc_insertion_point(field_get:pg_query.RangeSubselect.alias) - return _internal_alias(); +inline const std::string& AlterUserMappingStmt::_internal_servername() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.servername_.Get(); +} +inline void AlterUserMappingStmt::_internal_set_servername(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(value, GetArena()); +} +inline std::string* AlterUserMappingStmt::_internal_mutable_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.servername_.Mutable( GetArena()); +} +inline std::string* AlterUserMappingStmt::release_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterUserMappingStmt.servername) + return _impl_.servername_.Release(); +} +inline void AlterUserMappingStmt::set_allocated_servername(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.servername_.IsDefault()) { + _impl_.servername_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterUserMappingStmt.servername) +} + +// repeated .pg_query.Node options = 3 [json_name = "options"]; +inline int AlterUserMappingStmt::_internal_options_size() const { + return _internal_options().size(); +} +inline int AlterUserMappingStmt::options_size() const { + return _internal_options_size(); +} +inline void AlterUserMappingStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); +} +inline ::pg_query::Node* AlterUserMappingStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterUserMappingStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterUserMappingStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterUserMappingStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& AlterUserMappingStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterUserMappingStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* AlterUserMappingStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterUserMappingStmt.options) + return _add; } -inline void RangeSubselect::unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.alias_); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterUserMappingStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterUserMappingStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterUserMappingStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterUserMappingStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} + +// ------------------------------------------------------------------- + +// DropUserMappingStmt + +// .pg_query.RoleSpec user = 1 [json_name = "user"]; +inline bool DropUserMappingStmt::has_user() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.user_ != nullptr); + return value; +} +inline void DropUserMappingStmt::clear_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.user_ != nullptr) _impl_.user_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RoleSpec& DropUserMappingStmt::_internal_user() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.user_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); +} +inline const ::pg_query::RoleSpec& DropUserMappingStmt::user() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DropUserMappingStmt.user) + return _internal_user(); +} +inline void DropUserMappingStmt::unsafe_arena_set_allocated_user(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.user_); } - _impl_.alias_ = alias; - if (alias) { - + _impl_.user_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeSubselect.alias) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DropUserMappingStmt.user) } -inline ::pg_query::Alias* RangeSubselect::release_alias() { - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; +inline ::pg_query::RoleSpec* DropUserMappingStmt::release_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.user_; + _impl_.user_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Alias* RangeSubselect::unsafe_arena_release_alias() { - // @@protoc_insertion_point(field_release:pg_query.RangeSubselect.alias) - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; +inline ::pg_query::RoleSpec* DropUserMappingStmt::unsafe_arena_release_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DropUserMappingStmt.user) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.user_; + _impl_.user_ = nullptr; return temp; } -inline ::pg_query::Alias* RangeSubselect::_internal_mutable_alias() { - - if (_impl_.alias_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArenaForAllocation()); - _impl_.alias_ = p; +inline ::pg_query::RoleSpec* DropUserMappingStmt::_internal_mutable_user() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.user_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.user_ = reinterpret_cast<::pg_query::RoleSpec*>(p); } - return _impl_.alias_; + return _impl_.user_; } -inline ::pg_query::Alias* RangeSubselect::mutable_alias() { - ::pg_query::Alias* _msg = _internal_mutable_alias(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeSubselect.alias) +inline ::pg_query::RoleSpec* DropUserMappingStmt::mutable_user() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_user(); + // @@protoc_insertion_point(field_mutable:pg_query.DropUserMappingStmt.user) return _msg; } -inline void RangeSubselect::set_allocated_alias(::pg_query::Alias* alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void DropUserMappingStmt::set_allocated_user(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.alias_; + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.user_); } - if (alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(alias); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); if (message_arena != submessage_arena) { - alias = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, alias, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.alias_ = alias; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeSubselect.alias) -} - -// ------------------------------------------------------------------- - -// RangeFunction -// bool lateral = 1 [json_name = "lateral"]; -inline void RangeFunction::clear_lateral() { - _impl_.lateral_ = false; + _impl_.user_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.DropUserMappingStmt.user) } -inline bool RangeFunction::_internal_lateral() const { - return _impl_.lateral_; + +// string servername = 2 [json_name = "servername"]; +inline void DropUserMappingStmt::clear_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.ClearToEmpty(); } -inline bool RangeFunction::lateral() const { - // @@protoc_insertion_point(field_get:pg_query.RangeFunction.lateral) - return _internal_lateral(); +inline const std::string& DropUserMappingStmt::servername() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DropUserMappingStmt.servername) + return _internal_servername(); } -inline void RangeFunction::_internal_set_lateral(bool value) { - - _impl_.lateral_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void DropUserMappingStmt::set_servername(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.DropUserMappingStmt.servername) } -inline void RangeFunction::set_lateral(bool value) { - _internal_set_lateral(value); - // @@protoc_insertion_point(field_set:pg_query.RangeFunction.lateral) +inline std::string* DropUserMappingStmt::mutable_servername() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_servername(); + // @@protoc_insertion_point(field_mutable:pg_query.DropUserMappingStmt.servername) + return _s; } - -// bool ordinality = 2 [json_name = "ordinality"]; -inline void RangeFunction::clear_ordinality() { - _impl_.ordinality_ = false; +inline const std::string& DropUserMappingStmt::_internal_servername() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.servername_.Get(); } -inline bool RangeFunction::_internal_ordinality() const { - return _impl_.ordinality_; +inline void DropUserMappingStmt::_internal_set_servername(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.servername_.Set(value, GetArena()); } -inline bool RangeFunction::ordinality() const { - // @@protoc_insertion_point(field_get:pg_query.RangeFunction.ordinality) - return _internal_ordinality(); +inline std::string* DropUserMappingStmt::_internal_mutable_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.servername_.Mutable( GetArena()); } -inline void RangeFunction::_internal_set_ordinality(bool value) { - - _impl_.ordinality_ = value; +inline std::string* DropUserMappingStmt::release_servername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DropUserMappingStmt.servername) + return _impl_.servername_.Release(); } -inline void RangeFunction::set_ordinality(bool value) { - _internal_set_ordinality(value); - // @@protoc_insertion_point(field_set:pg_query.RangeFunction.ordinality) +inline void DropUserMappingStmt::set_allocated_servername(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.servername_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.servername_.IsDefault()) { + _impl_.servername_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.DropUserMappingStmt.servername) } -// bool is_rowsfrom = 3 [json_name = "is_rowsfrom"]; -inline void RangeFunction::clear_is_rowsfrom() { - _impl_.is_rowsfrom_ = false; +// bool missing_ok = 3 [json_name = "missing_ok"]; +inline void DropUserMappingStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline bool RangeFunction::_internal_is_rowsfrom() const { - return _impl_.is_rowsfrom_; +inline bool DropUserMappingStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.DropUserMappingStmt.missing_ok) + return _internal_missing_ok(); } -inline bool RangeFunction::is_rowsfrom() const { - // @@protoc_insertion_point(field_get:pg_query.RangeFunction.is_rowsfrom) - return _internal_is_rowsfrom(); +inline void DropUserMappingStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.DropUserMappingStmt.missing_ok) } -inline void RangeFunction::_internal_set_is_rowsfrom(bool value) { - - _impl_.is_rowsfrom_ = value; +inline bool DropUserMappingStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline void RangeFunction::set_is_rowsfrom(bool value) { - _internal_set_is_rowsfrom(value); - // @@protoc_insertion_point(field_set:pg_query.RangeFunction.is_rowsfrom) +inline void DropUserMappingStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } -// repeated .pg_query.Node functions = 4 [json_name = "functions"]; -inline int RangeFunction::_internal_functions_size() const { - return _impl_.functions_.size(); -} -inline int RangeFunction::functions_size() const { - return _internal_functions_size(); +// ------------------------------------------------------------------- + +// ImportForeignSchemaStmt + +// string server_name = 1 [json_name = "server_name"]; +inline void ImportForeignSchemaStmt::clear_server_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.server_name_.ClearToEmpty(); } -inline void RangeFunction::clear_functions() { - _impl_.functions_.Clear(); +inline const std::string& ImportForeignSchemaStmt::server_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.server_name) + return _internal_server_name(); } -inline ::pg_query::Node* RangeFunction::mutable_functions(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeFunction.functions) - return _impl_.functions_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void ImportForeignSchemaStmt::set_server_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.server_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ImportForeignSchemaStmt.server_name) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeFunction::mutable_functions() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeFunction.functions) - return &_impl_.functions_; +inline std::string* ImportForeignSchemaStmt::mutable_server_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_server_name(); + // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.server_name) + return _s; } -inline const ::pg_query::Node& RangeFunction::_internal_functions(int index) const { - return _impl_.functions_.Get(index); +inline const std::string& ImportForeignSchemaStmt::_internal_server_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.server_name_.Get(); } -inline const ::pg_query::Node& RangeFunction::functions(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeFunction.functions) - return _internal_functions(index); +inline void ImportForeignSchemaStmt::_internal_set_server_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.server_name_.Set(value, GetArena()); } -inline ::pg_query::Node* RangeFunction::_internal_add_functions() { - return _impl_.functions_.Add(); +inline std::string* ImportForeignSchemaStmt::_internal_mutable_server_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.server_name_.Mutable( GetArena()); } -inline ::pg_query::Node* RangeFunction::add_functions() { - ::pg_query::Node* _add = _internal_add_functions(); - // @@protoc_insertion_point(field_add:pg_query.RangeFunction.functions) - return _add; +inline std::string* ImportForeignSchemaStmt::release_server_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ImportForeignSchemaStmt.server_name) + return _impl_.server_name_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeFunction::functions() const { - // @@protoc_insertion_point(field_list:pg_query.RangeFunction.functions) - return _impl_.functions_; +inline void ImportForeignSchemaStmt::set_allocated_server_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.server_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.server_name_.IsDefault()) { + _impl_.server_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ImportForeignSchemaStmt.server_name) } -// .pg_query.Alias alias = 5 [json_name = "alias"]; -inline bool RangeFunction::_internal_has_alias() const { - return this != internal_default_instance() && _impl_.alias_ != nullptr; +// string remote_schema = 2 [json_name = "remote_schema"]; +inline void ImportForeignSchemaStmt::clear_remote_schema() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.remote_schema_.ClearToEmpty(); } -inline bool RangeFunction::has_alias() const { - return _internal_has_alias(); +inline const std::string& ImportForeignSchemaStmt::remote_schema() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.remote_schema) + return _internal_remote_schema(); } -inline void RangeFunction::clear_alias() { - if (GetArenaForAllocation() == nullptr && _impl_.alias_ != nullptr) { - delete _impl_.alias_; - } - _impl_.alias_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void ImportForeignSchemaStmt::set_remote_schema(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.remote_schema_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ImportForeignSchemaStmt.remote_schema) } -inline const ::pg_query::Alias& RangeFunction::_internal_alias() const { - const ::pg_query::Alias* p = _impl_.alias_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Alias_default_instance_); +inline std::string* ImportForeignSchemaStmt::mutable_remote_schema() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_remote_schema(); + // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.remote_schema) + return _s; } -inline const ::pg_query::Alias& RangeFunction::alias() const { - // @@protoc_insertion_point(field_get:pg_query.RangeFunction.alias) - return _internal_alias(); +inline const std::string& ImportForeignSchemaStmt::_internal_remote_schema() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.remote_schema_.Get(); } -inline void RangeFunction::unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.alias_); - } - _impl_.alias_ = alias; - if (alias) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeFunction.alias) +inline void ImportForeignSchemaStmt::_internal_set_remote_schema(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.remote_schema_.Set(value, GetArena()); } -inline ::pg_query::Alias* RangeFunction::release_alias() { - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* ImportForeignSchemaStmt::_internal_mutable_remote_schema() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.remote_schema_.Mutable( GetArena()); } -inline ::pg_query::Alias* RangeFunction::unsafe_arena_release_alias() { - // @@protoc_insertion_point(field_release:pg_query.RangeFunction.alias) - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; - return temp; +inline std::string* ImportForeignSchemaStmt::release_remote_schema() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ImportForeignSchemaStmt.remote_schema) + return _impl_.remote_schema_.Release(); } -inline ::pg_query::Alias* RangeFunction::_internal_mutable_alias() { - - if (_impl_.alias_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArenaForAllocation()); - _impl_.alias_ = p; - } - return _impl_.alias_; +inline void ImportForeignSchemaStmt::set_allocated_remote_schema(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.remote_schema_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.remote_schema_.IsDefault()) { + _impl_.remote_schema_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ImportForeignSchemaStmt.remote_schema) } -inline ::pg_query::Alias* RangeFunction::mutable_alias() { - ::pg_query::Alias* _msg = _internal_mutable_alias(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeFunction.alias) - return _msg; + +// string local_schema = 3 [json_name = "local_schema"]; +inline void ImportForeignSchemaStmt::clear_local_schema() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.local_schema_.ClearToEmpty(); } -inline void RangeFunction::set_allocated_alias(::pg_query::Alias* alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.alias_; - } - if (alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(alias); - if (message_arena != submessage_arena) { - alias = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, alias, submessage_arena); - } - - } else { - - } - _impl_.alias_ = alias; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeFunction.alias) +inline const std::string& ImportForeignSchemaStmt::local_schema() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.local_schema) + return _internal_local_schema(); } - -// repeated .pg_query.Node coldeflist = 6 [json_name = "coldeflist"]; -inline int RangeFunction::_internal_coldeflist_size() const { - return _impl_.coldeflist_.size(); +template +inline PROTOBUF_ALWAYS_INLINE void ImportForeignSchemaStmt::set_local_schema(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.local_schema_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ImportForeignSchemaStmt.local_schema) } -inline int RangeFunction::coldeflist_size() const { - return _internal_coldeflist_size(); +inline std::string* ImportForeignSchemaStmt::mutable_local_schema() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_local_schema(); + // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.local_schema) + return _s; } -inline void RangeFunction::clear_coldeflist() { - _impl_.coldeflist_.Clear(); +inline const std::string& ImportForeignSchemaStmt::_internal_local_schema() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.local_schema_.Get(); } -inline ::pg_query::Node* RangeFunction::mutable_coldeflist(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeFunction.coldeflist) - return _impl_.coldeflist_.Mutable(index); +inline void ImportForeignSchemaStmt::_internal_set_local_schema(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.local_schema_.Set(value, GetArena()); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeFunction::mutable_coldeflist() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeFunction.coldeflist) - return &_impl_.coldeflist_; +inline std::string* ImportForeignSchemaStmt::_internal_mutable_local_schema() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.local_schema_.Mutable( GetArena()); +} +inline std::string* ImportForeignSchemaStmt::release_local_schema() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ImportForeignSchemaStmt.local_schema) + return _impl_.local_schema_.Release(); +} +inline void ImportForeignSchemaStmt::set_allocated_local_schema(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.local_schema_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.local_schema_.IsDefault()) { + _impl_.local_schema_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ImportForeignSchemaStmt.local_schema) } -inline const ::pg_query::Node& RangeFunction::_internal_coldeflist(int index) const { - return _impl_.coldeflist_.Get(index); + +// .pg_query.ImportForeignSchemaType list_type = 4 [json_name = "list_type"]; +inline void ImportForeignSchemaStmt::clear_list_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.list_type_ = 0; } -inline const ::pg_query::Node& RangeFunction::coldeflist(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeFunction.coldeflist) - return _internal_coldeflist(index); +inline ::pg_query::ImportForeignSchemaType ImportForeignSchemaStmt::list_type() const { + // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.list_type) + return _internal_list_type(); } -inline ::pg_query::Node* RangeFunction::_internal_add_coldeflist() { - return _impl_.coldeflist_.Add(); +inline void ImportForeignSchemaStmt::set_list_type(::pg_query::ImportForeignSchemaType value) { + _internal_set_list_type(value); + // @@protoc_insertion_point(field_set:pg_query.ImportForeignSchemaStmt.list_type) } -inline ::pg_query::Node* RangeFunction::add_coldeflist() { - ::pg_query::Node* _add = _internal_add_coldeflist(); - // @@protoc_insertion_point(field_add:pg_query.RangeFunction.coldeflist) - return _add; +inline ::pg_query::ImportForeignSchemaType ImportForeignSchemaStmt::_internal_list_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ImportForeignSchemaType>(_impl_.list_type_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeFunction::coldeflist() const { - // @@protoc_insertion_point(field_list:pg_query.RangeFunction.coldeflist) - return _impl_.coldeflist_; +inline void ImportForeignSchemaStmt::_internal_set_list_type(::pg_query::ImportForeignSchemaType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.list_type_ = value; } -// ------------------------------------------------------------------- - -// RangeTableSample - -// .pg_query.Node relation = 1 [json_name = "relation"]; -inline bool RangeTableSample::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; -} -inline bool RangeTableSample::has_relation() const { - return _internal_has_relation(); +// repeated .pg_query.Node table_list = 5 [json_name = "table_list"]; +inline int ImportForeignSchemaStmt::_internal_table_list_size() const { + return _internal_table_list().size(); } -inline void RangeTableSample::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline int ImportForeignSchemaStmt::table_list_size() const { + return _internal_table_list_size(); } -inline const ::pg_query::Node& RangeTableSample::_internal_relation() const { - const ::pg_query::Node* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void ImportForeignSchemaStmt::clear_table_list() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.table_list_.Clear(); } -inline const ::pg_query::Node& RangeTableSample::relation() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.relation) - return _internal_relation(); +inline ::pg_query::Node* ImportForeignSchemaStmt::mutable_table_list(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.table_list) + return _internal_mutable_table_list()->Mutable(index); } -inline void RangeTableSample::unsafe_arena_set_allocated_relation( - ::pg_query::Node* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); - } - _impl_.relation_ = relation; - if (relation) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableSample.relation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ImportForeignSchemaStmt::mutable_table_list() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ImportForeignSchemaStmt.table_list) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_table_list(); } -inline ::pg_query::Node* RangeTableSample::release_relation() { - - ::pg_query::Node* temp = _impl_.relation_; - _impl_.relation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& ImportForeignSchemaStmt::table_list(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.table_list) + return _internal_table_list().Get(index); } -inline ::pg_query::Node* RangeTableSample::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.RangeTableSample.relation) - - ::pg_query::Node* temp = _impl_.relation_; - _impl_.relation_ = nullptr; - return temp; +inline ::pg_query::Node* ImportForeignSchemaStmt::add_table_list() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_table_list()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ImportForeignSchemaStmt.table_list) + return _add; } -inline ::pg_query::Node* RangeTableSample::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.relation_ = p; - } - return _impl_.relation_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ImportForeignSchemaStmt::table_list() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ImportForeignSchemaStmt.table_list) + return _internal_table_list(); } -inline ::pg_query::Node* RangeTableSample::mutable_relation() { - ::pg_query::Node* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableSample.relation) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ImportForeignSchemaStmt::_internal_table_list() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.table_list_; } -inline void RangeTableSample::set_allocated_relation(::pg_query::Node* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.relation_; - } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); - if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); - } - - } else { - - } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableSample.relation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ImportForeignSchemaStmt::_internal_mutable_table_list() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.table_list_; } -// repeated .pg_query.Node method = 2 [json_name = "method"]; -inline int RangeTableSample::_internal_method_size() const { - return _impl_.method_.size(); +// repeated .pg_query.Node options = 6 [json_name = "options"]; +inline int ImportForeignSchemaStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int RangeTableSample::method_size() const { - return _internal_method_size(); +inline int ImportForeignSchemaStmt::options_size() const { + return _internal_options_size(); } -inline void RangeTableSample::clear_method() { - _impl_.method_.Clear(); +inline void ImportForeignSchemaStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline ::pg_query::Node* RangeTableSample::mutable_method(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableSample.method) - return _impl_.method_.Mutable(index); +inline ::pg_query::Node* ImportForeignSchemaStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ImportForeignSchemaStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTableSample::mutable_method() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTableSample.method) - return &_impl_.method_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ImportForeignSchemaStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ImportForeignSchemaStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline const ::pg_query::Node& RangeTableSample::_internal_method(int index) const { - return _impl_.method_.Get(index); +inline const ::pg_query::Node& ImportForeignSchemaStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ImportForeignSchemaStmt.options) + return _internal_options().Get(index); } -inline const ::pg_query::Node& RangeTableSample::method(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.method) - return _internal_method(index); +inline ::pg_query::Node* ImportForeignSchemaStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ImportForeignSchemaStmt.options) + return _add; } -inline ::pg_query::Node* RangeTableSample::_internal_add_method() { - return _impl_.method_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ImportForeignSchemaStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ImportForeignSchemaStmt.options) + return _internal_options(); } -inline ::pg_query::Node* RangeTableSample::add_method() { - ::pg_query::Node* _add = _internal_add_method(); - // @@protoc_insertion_point(field_add:pg_query.RangeTableSample.method) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ImportForeignSchemaStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTableSample::method() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTableSample.method) - return _impl_.method_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ImportForeignSchemaStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// repeated .pg_query.Node args = 3 [json_name = "args"]; -inline int RangeTableSample::_internal_args_size() const { - return _impl_.args_.size(); -} -inline int RangeTableSample::args_size() const { - return _internal_args_size(); +// ------------------------------------------------------------------- + +// CreatePolicyStmt + +// string policy_name = 1 [json_name = "policy_name"]; +inline void CreatePolicyStmt::clear_policy_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.policy_name_.ClearToEmpty(); } -inline void RangeTableSample::clear_args() { - _impl_.args_.Clear(); +inline const std::string& CreatePolicyStmt::policy_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.policy_name) + return _internal_policy_name(); } -inline ::pg_query::Node* RangeTableSample::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableSample.args) - return _impl_.args_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void CreatePolicyStmt::set_policy_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.policy_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreatePolicyStmt.policy_name) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTableSample::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTableSample.args) - return &_impl_.args_; +inline std::string* CreatePolicyStmt::mutable_policy_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_policy_name(); + // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.policy_name) + return _s; } -inline const ::pg_query::Node& RangeTableSample::_internal_args(int index) const { - return _impl_.args_.Get(index); +inline const std::string& CreatePolicyStmt::_internal_policy_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.policy_name_.Get(); } -inline const ::pg_query::Node& RangeTableSample::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.args) - return _internal_args(index); +inline void CreatePolicyStmt::_internal_set_policy_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.policy_name_.Set(value, GetArena()); } -inline ::pg_query::Node* RangeTableSample::_internal_add_args() { - return _impl_.args_.Add(); +inline std::string* CreatePolicyStmt::_internal_mutable_policy_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.policy_name_.Mutable( GetArena()); } -inline ::pg_query::Node* RangeTableSample::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.RangeTableSample.args) - return _add; +inline std::string* CreatePolicyStmt::release_policy_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.policy_name) + return _impl_.policy_name_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTableSample::args() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTableSample.args) - return _impl_.args_; +inline void CreatePolicyStmt::set_allocated_policy_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.policy_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.policy_name_.IsDefault()) { + _impl_.policy_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.policy_name) } -// .pg_query.Node repeatable = 4 [json_name = "repeatable"]; -inline bool RangeTableSample::_internal_has_repeatable() const { - return this != internal_default_instance() && _impl_.repeatable_ != nullptr; -} -inline bool RangeTableSample::has_repeatable() const { - return _internal_has_repeatable(); +// .pg_query.RangeVar table = 2 [json_name = "table"]; +inline bool CreatePolicyStmt::has_table() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.table_ != nullptr); + return value; } -inline void RangeTableSample::clear_repeatable() { - if (GetArenaForAllocation() == nullptr && _impl_.repeatable_ != nullptr) { - delete _impl_.repeatable_; - } - _impl_.repeatable_ = nullptr; +inline void CreatePolicyStmt::clear_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.table_ != nullptr) _impl_.table_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& RangeTableSample::_internal_repeatable() const { - const ::pg_query::Node* p = _impl_.repeatable_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::RangeVar& CreatePolicyStmt::_internal_table() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.table_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::Node& RangeTableSample::repeatable() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.repeatable) - return _internal_repeatable(); +inline const ::pg_query::RangeVar& CreatePolicyStmt::table() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.table) + return _internal_table(); } -inline void RangeTableSample::unsafe_arena_set_allocated_repeatable( - ::pg_query::Node* repeatable) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.repeatable_); +inline void CreatePolicyStmt::unsafe_arena_set_allocated_table(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.table_); } - _impl_.repeatable_ = repeatable; - if (repeatable) { - + _impl_.table_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableSample.repeatable) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreatePolicyStmt.table) } -inline ::pg_query::Node* RangeTableSample::release_repeatable() { - - ::pg_query::Node* temp = _impl_.repeatable_; - _impl_.repeatable_ = nullptr; +inline ::pg_query::RangeVar* CreatePolicyStmt::release_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.table_; + _impl_.table_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* RangeTableSample::unsafe_arena_release_repeatable() { - // @@protoc_insertion_point(field_release:pg_query.RangeTableSample.repeatable) - - ::pg_query::Node* temp = _impl_.repeatable_; - _impl_.repeatable_ = nullptr; +inline ::pg_query::RangeVar* CreatePolicyStmt::unsafe_arena_release_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.table) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.table_; + _impl_.table_ = nullptr; return temp; } -inline ::pg_query::Node* RangeTableSample::_internal_mutable_repeatable() { - - if (_impl_.repeatable_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.repeatable_ = p; +inline ::pg_query::RangeVar* CreatePolicyStmt::_internal_mutable_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.table_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.table_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.repeatable_; + return _impl_.table_; } -inline ::pg_query::Node* RangeTableSample::mutable_repeatable() { - ::pg_query::Node* _msg = _internal_mutable_repeatable(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableSample.repeatable) +inline ::pg_query::RangeVar* CreatePolicyStmt::mutable_table() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_table(); + // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.table) return _msg; } -inline void RangeTableSample::set_allocated_repeatable(::pg_query::Node* repeatable) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreatePolicyStmt::set_allocated_table(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.repeatable_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.table_); } - if (repeatable) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(repeatable); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - repeatable = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, repeatable, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.repeatable_ = repeatable; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableSample.repeatable) + + _impl_.table_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.table) } -// int32 location = 5 [json_name = "location"]; -inline void RangeTableSample::clear_location() { - _impl_.location_ = 0; +// string cmd_name = 3 [json_name = "cmd_name"]; +inline void CreatePolicyStmt::clear_cmd_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cmd_name_.ClearToEmpty(); } -inline int32_t RangeTableSample::_internal_location() const { - return _impl_.location_; +inline const std::string& CreatePolicyStmt::cmd_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.cmd_name) + return _internal_cmd_name(); } -inline int32_t RangeTableSample::location() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableSample.location) - return _internal_location(); +template +inline PROTOBUF_ALWAYS_INLINE void CreatePolicyStmt::set_cmd_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cmd_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreatePolicyStmt.cmd_name) } -inline void RangeTableSample::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline std::string* CreatePolicyStmt::mutable_cmd_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_cmd_name(); + // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.cmd_name) + return _s; } -inline void RangeTableSample::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTableSample.location) +inline const std::string& CreatePolicyStmt::_internal_cmd_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cmd_name_.Get(); +} +inline void CreatePolicyStmt::_internal_set_cmd_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.cmd_name_.Set(value, GetArena()); +} +inline std::string* CreatePolicyStmt::_internal_mutable_cmd_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.cmd_name_.Mutable( GetArena()); +} +inline std::string* CreatePolicyStmt::release_cmd_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.cmd_name) + return _impl_.cmd_name_.Release(); +} +inline void CreatePolicyStmt::set_allocated_cmd_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cmd_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.cmd_name_.IsDefault()) { + _impl_.cmd_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.cmd_name) } -// ------------------------------------------------------------------- - -// RangeTableFunc - -// bool lateral = 1 [json_name = "lateral"]; -inline void RangeTableFunc::clear_lateral() { - _impl_.lateral_ = false; +// bool permissive = 4 [json_name = "permissive"]; +inline void CreatePolicyStmt::clear_permissive() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.permissive_ = false; } -inline bool RangeTableFunc::_internal_lateral() const { - return _impl_.lateral_; +inline bool CreatePolicyStmt::permissive() const { + // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.permissive) + return _internal_permissive(); } -inline bool RangeTableFunc::lateral() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.lateral) - return _internal_lateral(); +inline void CreatePolicyStmt::set_permissive(bool value) { + _internal_set_permissive(value); + // @@protoc_insertion_point(field_set:pg_query.CreatePolicyStmt.permissive) } -inline void RangeTableFunc::_internal_set_lateral(bool value) { - - _impl_.lateral_ = value; +inline bool CreatePolicyStmt::_internal_permissive() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.permissive_; } -inline void RangeTableFunc::set_lateral(bool value) { - _internal_set_lateral(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTableFunc.lateral) +inline void CreatePolicyStmt::_internal_set_permissive(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.permissive_ = value; } -// .pg_query.Node docexpr = 2 [json_name = "docexpr"]; -inline bool RangeTableFunc::_internal_has_docexpr() const { - return this != internal_default_instance() && _impl_.docexpr_ != nullptr; -} -inline bool RangeTableFunc::has_docexpr() const { - return _internal_has_docexpr(); +// repeated .pg_query.Node roles = 5 [json_name = "roles"]; +inline int CreatePolicyStmt::_internal_roles_size() const { + return _internal_roles().size(); } -inline void RangeTableFunc::clear_docexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.docexpr_ != nullptr) { - delete _impl_.docexpr_; - } - _impl_.docexpr_ = nullptr; +inline int CreatePolicyStmt::roles_size() const { + return _internal_roles_size(); } -inline const ::pg_query::Node& RangeTableFunc::_internal_docexpr() const { - const ::pg_query::Node* p = _impl_.docexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void CreatePolicyStmt::clear_roles() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.roles_.Clear(); } -inline const ::pg_query::Node& RangeTableFunc::docexpr() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.docexpr) - return _internal_docexpr(); +inline ::pg_query::Node* CreatePolicyStmt::mutable_roles(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.roles) + return _internal_mutable_roles()->Mutable(index); } -inline void RangeTableFunc::unsafe_arena_set_allocated_docexpr( - ::pg_query::Node* docexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.docexpr_); - } - _impl_.docexpr_ = docexpr; - if (docexpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFunc.docexpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreatePolicyStmt::mutable_roles() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePolicyStmt.roles) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_roles(); } -inline ::pg_query::Node* RangeTableFunc::release_docexpr() { - - ::pg_query::Node* temp = _impl_.docexpr_; - _impl_.docexpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& CreatePolicyStmt::roles(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.roles) + return _internal_roles().Get(index); } -inline ::pg_query::Node* RangeTableFunc::unsafe_arena_release_docexpr() { - // @@protoc_insertion_point(field_release:pg_query.RangeTableFunc.docexpr) - - ::pg_query::Node* temp = _impl_.docexpr_; - _impl_.docexpr_ = nullptr; - return temp; +inline ::pg_query::Node* CreatePolicyStmt::add_roles() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_roles()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreatePolicyStmt.roles) + return _add; } -inline ::pg_query::Node* RangeTableFunc::_internal_mutable_docexpr() { - - if (_impl_.docexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.docexpr_ = p; - } - return _impl_.docexpr_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreatePolicyStmt::roles() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreatePolicyStmt.roles) + return _internal_roles(); } -inline ::pg_query::Node* RangeTableFunc::mutable_docexpr() { - ::pg_query::Node* _msg = _internal_mutable_docexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.docexpr) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreatePolicyStmt::_internal_roles() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.roles_; } -inline void RangeTableFunc::set_allocated_docexpr(::pg_query::Node* docexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.docexpr_; - } - if (docexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(docexpr); - if (message_arena != submessage_arena) { - docexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, docexpr, submessage_arena); - } - - } else { - - } - _impl_.docexpr_ = docexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFunc.docexpr) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreatePolicyStmt::_internal_mutable_roles() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.roles_; } -// .pg_query.Node rowexpr = 3 [json_name = "rowexpr"]; -inline bool RangeTableFunc::_internal_has_rowexpr() const { - return this != internal_default_instance() && _impl_.rowexpr_ != nullptr; -} -inline bool RangeTableFunc::has_rowexpr() const { - return _internal_has_rowexpr(); +// .pg_query.Node qual = 6 [json_name = "qual"]; +inline bool CreatePolicyStmt::has_qual() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.qual_ != nullptr); + return value; } -inline void RangeTableFunc::clear_rowexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.rowexpr_ != nullptr) { - delete _impl_.rowexpr_; - } - _impl_.rowexpr_ = nullptr; +inline void CreatePolicyStmt::clear_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.qual_ != nullptr) _impl_.qual_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& RangeTableFunc::_internal_rowexpr() const { - const ::pg_query::Node* p = _impl_.rowexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& CreatePolicyStmt::_internal_qual() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.qual_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& RangeTableFunc::rowexpr() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.rowexpr) - return _internal_rowexpr(); +inline const ::pg_query::Node& CreatePolicyStmt::qual() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.qual) + return _internal_qual(); } -inline void RangeTableFunc::unsafe_arena_set_allocated_rowexpr( - ::pg_query::Node* rowexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.rowexpr_); +inline void CreatePolicyStmt::unsafe_arena_set_allocated_qual(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.qual_); } - _impl_.rowexpr_ = rowexpr; - if (rowexpr) { - + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFunc.rowexpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreatePolicyStmt.qual) } -inline ::pg_query::Node* RangeTableFunc::release_rowexpr() { - - ::pg_query::Node* temp = _impl_.rowexpr_; - _impl_.rowexpr_ = nullptr; +inline ::pg_query::Node* CreatePolicyStmt::release_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.qual_; + _impl_.qual_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* RangeTableFunc::unsafe_arena_release_rowexpr() { - // @@protoc_insertion_point(field_release:pg_query.RangeTableFunc.rowexpr) - - ::pg_query::Node* temp = _impl_.rowexpr_; - _impl_.rowexpr_ = nullptr; +inline ::pg_query::Node* CreatePolicyStmt::unsafe_arena_release_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.qual) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.qual_; + _impl_.qual_ = nullptr; return temp; } -inline ::pg_query::Node* RangeTableFunc::_internal_mutable_rowexpr() { - - if (_impl_.rowexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.rowexpr_ = p; +inline ::pg_query::Node* CreatePolicyStmt::_internal_mutable_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.qual_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.rowexpr_; + return _impl_.qual_; } -inline ::pg_query::Node* RangeTableFunc::mutable_rowexpr() { - ::pg_query::Node* _msg = _internal_mutable_rowexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.rowexpr) +inline ::pg_query::Node* CreatePolicyStmt::mutable_qual() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_qual(); + // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.qual) return _msg; } -inline void RangeTableFunc::set_allocated_rowexpr(::pg_query::Node* rowexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreatePolicyStmt::set_allocated_qual(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.rowexpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.qual_); } - if (rowexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(rowexpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - rowexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, rowexpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.rowexpr_ = rowexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFunc.rowexpr) -} - -// repeated .pg_query.Node namespaces = 4 [json_name = "namespaces"]; -inline int RangeTableFunc::_internal_namespaces_size() const { - return _impl_.namespaces_.size(); -} -inline int RangeTableFunc::namespaces_size() const { - return _internal_namespaces_size(); -} -inline void RangeTableFunc::clear_namespaces() { - _impl_.namespaces_.Clear(); -} -inline ::pg_query::Node* RangeTableFunc::mutable_namespaces(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.namespaces) - return _impl_.namespaces_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTableFunc::mutable_namespaces() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTableFunc.namespaces) - return &_impl_.namespaces_; -} -inline const ::pg_query::Node& RangeTableFunc::_internal_namespaces(int index) const { - return _impl_.namespaces_.Get(index); -} -inline const ::pg_query::Node& RangeTableFunc::namespaces(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.namespaces) - return _internal_namespaces(index); -} -inline ::pg_query::Node* RangeTableFunc::_internal_add_namespaces() { - return _impl_.namespaces_.Add(); -} -inline ::pg_query::Node* RangeTableFunc::add_namespaces() { - ::pg_query::Node* _add = _internal_add_namespaces(); - // @@protoc_insertion_point(field_add:pg_query.RangeTableFunc.namespaces) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTableFunc::namespaces() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTableFunc.namespaces) - return _impl_.namespaces_; -} -// repeated .pg_query.Node columns = 5 [json_name = "columns"]; -inline int RangeTableFunc::_internal_columns_size() const { - return _impl_.columns_.size(); -} -inline int RangeTableFunc::columns_size() const { - return _internal_columns_size(); -} -inline void RangeTableFunc::clear_columns() { - _impl_.columns_.Clear(); -} -inline ::pg_query::Node* RangeTableFunc::mutable_columns(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.columns) - return _impl_.columns_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTableFunc::mutable_columns() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTableFunc.columns) - return &_impl_.columns_; -} -inline const ::pg_query::Node& RangeTableFunc::_internal_columns(int index) const { - return _impl_.columns_.Get(index); -} -inline const ::pg_query::Node& RangeTableFunc::columns(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.columns) - return _internal_columns(index); -} -inline ::pg_query::Node* RangeTableFunc::_internal_add_columns() { - return _impl_.columns_.Add(); -} -inline ::pg_query::Node* RangeTableFunc::add_columns() { - ::pg_query::Node* _add = _internal_add_columns(); - // @@protoc_insertion_point(field_add:pg_query.RangeTableFunc.columns) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTableFunc::columns() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTableFunc.columns) - return _impl_.columns_; + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.qual) } -// .pg_query.Alias alias = 6 [json_name = "alias"]; -inline bool RangeTableFunc::_internal_has_alias() const { - return this != internal_default_instance() && _impl_.alias_ != nullptr; -} -inline bool RangeTableFunc::has_alias() const { - return _internal_has_alias(); +// .pg_query.Node with_check = 7 [json_name = "with_check"]; +inline bool CreatePolicyStmt::has_with_check() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.with_check_ != nullptr); + return value; } -inline void RangeTableFunc::clear_alias() { - if (GetArenaForAllocation() == nullptr && _impl_.alias_ != nullptr) { - delete _impl_.alias_; - } - _impl_.alias_ = nullptr; +inline void CreatePolicyStmt::clear_with_check() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.with_check_ != nullptr) _impl_.with_check_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline const ::pg_query::Alias& RangeTableFunc::_internal_alias() const { - const ::pg_query::Alias* p = _impl_.alias_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Alias_default_instance_); +inline const ::pg_query::Node& CreatePolicyStmt::_internal_with_check() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.with_check_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Alias& RangeTableFunc::alias() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.alias) - return _internal_alias(); +inline const ::pg_query::Node& CreatePolicyStmt::with_check() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePolicyStmt.with_check) + return _internal_with_check(); } -inline void RangeTableFunc::unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.alias_); +inline void CreatePolicyStmt::unsafe_arena_set_allocated_with_check(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.with_check_); } - _impl_.alias_ = alias; - if (alias) { - + _impl_.with_check_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFunc.alias) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreatePolicyStmt.with_check) } -inline ::pg_query::Alias* RangeTableFunc::release_alias() { - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; +inline ::pg_query::Node* CreatePolicyStmt::release_with_check() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.with_check_; + _impl_.with_check_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Alias* RangeTableFunc::unsafe_arena_release_alias() { - // @@protoc_insertion_point(field_release:pg_query.RangeTableFunc.alias) - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; +inline ::pg_query::Node* CreatePolicyStmt::unsafe_arena_release_with_check() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreatePolicyStmt.with_check) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.with_check_; + _impl_.with_check_ = nullptr; return temp; } -inline ::pg_query::Alias* RangeTableFunc::_internal_mutable_alias() { - - if (_impl_.alias_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArenaForAllocation()); - _impl_.alias_ = p; +inline ::pg_query::Node* CreatePolicyStmt::_internal_mutable_with_check() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.with_check_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.with_check_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.alias_; + return _impl_.with_check_; } -inline ::pg_query::Alias* RangeTableFunc::mutable_alias() { - ::pg_query::Alias* _msg = _internal_mutable_alias(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFunc.alias) +inline ::pg_query::Node* CreatePolicyStmt::mutable_with_check() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_with_check(); + // @@protoc_insertion_point(field_mutable:pg_query.CreatePolicyStmt.with_check) return _msg; } -inline void RangeTableFunc::set_allocated_alias(::pg_query::Alias* alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreatePolicyStmt::set_allocated_with_check(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.alias_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.with_check_); } - if (alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(alias); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - alias = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, alias, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.alias_ = alias; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFunc.alias) -} -// int32 location = 7 [json_name = "location"]; -inline void RangeTableFunc::clear_location() { - _impl_.location_ = 0; -} -inline int32_t RangeTableFunc::_internal_location() const { - return _impl_.location_; -} -inline int32_t RangeTableFunc::location() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFunc.location) - return _internal_location(); -} -inline void RangeTableFunc::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void RangeTableFunc::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTableFunc.location) + _impl_.with_check_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePolicyStmt.with_check) } // ------------------------------------------------------------------- -// RangeTableFuncCol +// AlterPolicyStmt -// string colname = 1 [json_name = "colname"]; -inline void RangeTableFuncCol::clear_colname() { - _impl_.colname_.ClearToEmpty(); +// string policy_name = 1 [json_name = "policy_name"]; +inline void AlterPolicyStmt::clear_policy_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.policy_name_.ClearToEmpty(); } -inline const std::string& RangeTableFuncCol::colname() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.colname) - return _internal_colname(); +inline const std::string& AlterPolicyStmt::policy_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.policy_name) + return _internal_policy_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void RangeTableFuncCol::set_colname(ArgT0&& arg0, ArgT... args) { - - _impl_.colname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RangeTableFuncCol.colname) +template +inline PROTOBUF_ALWAYS_INLINE void AlterPolicyStmt::set_policy_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.policy_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterPolicyStmt.policy_name) } -inline std::string* RangeTableFuncCol::mutable_colname() { - std::string* _s = _internal_mutable_colname(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFuncCol.colname) +inline std::string* AlterPolicyStmt::mutable_policy_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_policy_name(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.policy_name) return _s; } -inline const std::string& RangeTableFuncCol::_internal_colname() const { - return _impl_.colname_.Get(); +inline const std::string& AlterPolicyStmt::_internal_policy_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.policy_name_.Get(); } -inline void RangeTableFuncCol::_internal_set_colname(const std::string& value) { - - _impl_.colname_.Set(value, GetArenaForAllocation()); +inline void AlterPolicyStmt::_internal_set_policy_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.policy_name_.Set(value, GetArena()); } -inline std::string* RangeTableFuncCol::_internal_mutable_colname() { - - return _impl_.colname_.Mutable(GetArenaForAllocation()); +inline std::string* AlterPolicyStmt::_internal_mutable_policy_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.policy_name_.Mutable( GetArena()); } -inline std::string* RangeTableFuncCol::release_colname() { - // @@protoc_insertion_point(field_release:pg_query.RangeTableFuncCol.colname) - return _impl_.colname_.Release(); +inline std::string* AlterPolicyStmt::release_policy_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterPolicyStmt.policy_name) + return _impl_.policy_name_.Release(); } -inline void RangeTableFuncCol::set_allocated_colname(std::string* colname) { - if (colname != nullptr) { - - } else { - - } - _impl_.colname_.SetAllocated(colname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.colname_.IsDefault()) { - _impl_.colname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFuncCol.colname) +inline void AlterPolicyStmt::set_allocated_policy_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.policy_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.policy_name_.IsDefault()) { + _impl_.policy_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPolicyStmt.policy_name) } -// .pg_query.TypeName type_name = 2 [json_name = "typeName"]; -inline bool RangeTableFuncCol::_internal_has_type_name() const { - return this != internal_default_instance() && _impl_.type_name_ != nullptr; -} -inline bool RangeTableFuncCol::has_type_name() const { - return _internal_has_type_name(); -} -inline void RangeTableFuncCol::clear_type_name() { - if (GetArenaForAllocation() == nullptr && _impl_.type_name_ != nullptr) { - delete _impl_.type_name_; - } - _impl_.type_name_ = nullptr; +// .pg_query.RangeVar table = 2 [json_name = "table"]; +inline bool AlterPolicyStmt::has_table() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.table_ != nullptr); + return value; } -inline const ::pg_query::TypeName& RangeTableFuncCol::_internal_type_name() const { - const ::pg_query::TypeName* p = _impl_.type_name_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline void AlterPolicyStmt::clear_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.table_ != nullptr) _impl_.table_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::TypeName& RangeTableFuncCol::type_name() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.type_name) - return _internal_type_name(); +inline const ::pg_query::RangeVar& AlterPolicyStmt::_internal_table() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.table_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline void RangeTableFuncCol::unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.type_name_); +inline const ::pg_query::RangeVar& AlterPolicyStmt::table() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.table) + return _internal_table(); +} +inline void AlterPolicyStmt::unsafe_arena_set_allocated_table(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.table_); } - _impl_.type_name_ = type_name; - if (type_name) { - + _impl_.table_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFuncCol.type_name) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterPolicyStmt.table) } -inline ::pg_query::TypeName* RangeTableFuncCol::release_type_name() { - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; +inline ::pg_query::RangeVar* AlterPolicyStmt::release_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.table_; + _impl_.table_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* RangeTableFuncCol::unsafe_arena_release_type_name() { - // @@protoc_insertion_point(field_release:pg_query.RangeTableFuncCol.type_name) - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; +inline ::pg_query::RangeVar* AlterPolicyStmt::unsafe_arena_release_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterPolicyStmt.table) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.table_; + _impl_.table_ = nullptr; return temp; } -inline ::pg_query::TypeName* RangeTableFuncCol::_internal_mutable_type_name() { - - if (_impl_.type_name_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.type_name_ = p; +inline ::pg_query::RangeVar* AlterPolicyStmt::_internal_mutable_table() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.table_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.table_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.type_name_; + return _impl_.table_; } -inline ::pg_query::TypeName* RangeTableFuncCol::mutable_type_name() { - ::pg_query::TypeName* _msg = _internal_mutable_type_name(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFuncCol.type_name) +inline ::pg_query::RangeVar* AlterPolicyStmt::mutable_table() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_table(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.table) return _msg; } -inline void RangeTableFuncCol::set_allocated_type_name(::pg_query::TypeName* type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterPolicyStmt::set_allocated_table(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.type_name_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.table_); } - if (type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(type_name); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - type_name = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, type_name, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.type_name_ = type_name; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFuncCol.type_name) + + _impl_.table_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPolicyStmt.table) } -// bool for_ordinality = 3 [json_name = "for_ordinality"]; -inline void RangeTableFuncCol::clear_for_ordinality() { - _impl_.for_ordinality_ = false; +// repeated .pg_query.Node roles = 3 [json_name = "roles"]; +inline int AlterPolicyStmt::_internal_roles_size() const { + return _internal_roles().size(); } -inline bool RangeTableFuncCol::_internal_for_ordinality() const { - return _impl_.for_ordinality_; +inline int AlterPolicyStmt::roles_size() const { + return _internal_roles_size(); } -inline bool RangeTableFuncCol::for_ordinality() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.for_ordinality) - return _internal_for_ordinality(); +inline void AlterPolicyStmt::clear_roles() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.roles_.Clear(); } -inline void RangeTableFuncCol::_internal_set_for_ordinality(bool value) { - - _impl_.for_ordinality_ = value; +inline ::pg_query::Node* AlterPolicyStmt::mutable_roles(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.roles) + return _internal_mutable_roles()->Mutable(index); } -inline void RangeTableFuncCol::set_for_ordinality(bool value) { - _internal_set_for_ordinality(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTableFuncCol.for_ordinality) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterPolicyStmt::mutable_roles() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterPolicyStmt.roles) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_roles(); } - -// bool is_not_null = 4 [json_name = "is_not_null"]; -inline void RangeTableFuncCol::clear_is_not_null() { - _impl_.is_not_null_ = false; +inline const ::pg_query::Node& AlterPolicyStmt::roles(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.roles) + return _internal_roles().Get(index); } -inline bool RangeTableFuncCol::_internal_is_not_null() const { - return _impl_.is_not_null_; +inline ::pg_query::Node* AlterPolicyStmt::add_roles() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_roles()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterPolicyStmt.roles) + return _add; } -inline bool RangeTableFuncCol::is_not_null() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.is_not_null) - return _internal_is_not_null(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterPolicyStmt::roles() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterPolicyStmt.roles) + return _internal_roles(); } -inline void RangeTableFuncCol::_internal_set_is_not_null(bool value) { - - _impl_.is_not_null_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterPolicyStmt::_internal_roles() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.roles_; } -inline void RangeTableFuncCol::set_is_not_null(bool value) { - _internal_set_is_not_null(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTableFuncCol.is_not_null) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterPolicyStmt::_internal_mutable_roles() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.roles_; } -// .pg_query.Node colexpr = 5 [json_name = "colexpr"]; -inline bool RangeTableFuncCol::_internal_has_colexpr() const { - return this != internal_default_instance() && _impl_.colexpr_ != nullptr; -} -inline bool RangeTableFuncCol::has_colexpr() const { - return _internal_has_colexpr(); +// .pg_query.Node qual = 4 [json_name = "qual"]; +inline bool AlterPolicyStmt::has_qual() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.qual_ != nullptr); + return value; } -inline void RangeTableFuncCol::clear_colexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.colexpr_ != nullptr) { - delete _impl_.colexpr_; - } - _impl_.colexpr_ = nullptr; +inline void AlterPolicyStmt::clear_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.qual_ != nullptr) _impl_.qual_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& RangeTableFuncCol::_internal_colexpr() const { - const ::pg_query::Node* p = _impl_.colexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& AlterPolicyStmt::_internal_qual() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.qual_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& RangeTableFuncCol::colexpr() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.colexpr) - return _internal_colexpr(); +inline const ::pg_query::Node& AlterPolicyStmt::qual() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.qual) + return _internal_qual(); } -inline void RangeTableFuncCol::unsafe_arena_set_allocated_colexpr( - ::pg_query::Node* colexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.colexpr_); +inline void AlterPolicyStmt::unsafe_arena_set_allocated_qual(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.qual_); } - _impl_.colexpr_ = colexpr; - if (colexpr) { - + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFuncCol.colexpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterPolicyStmt.qual) } -inline ::pg_query::Node* RangeTableFuncCol::release_colexpr() { - - ::pg_query::Node* temp = _impl_.colexpr_; - _impl_.colexpr_ = nullptr; +inline ::pg_query::Node* AlterPolicyStmt::release_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.qual_; + _impl_.qual_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* RangeTableFuncCol::unsafe_arena_release_colexpr() { - // @@protoc_insertion_point(field_release:pg_query.RangeTableFuncCol.colexpr) - - ::pg_query::Node* temp = _impl_.colexpr_; - _impl_.colexpr_ = nullptr; +inline ::pg_query::Node* AlterPolicyStmt::unsafe_arena_release_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterPolicyStmt.qual) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.qual_; + _impl_.qual_ = nullptr; return temp; } -inline ::pg_query::Node* RangeTableFuncCol::_internal_mutable_colexpr() { - - if (_impl_.colexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.colexpr_ = p; +inline ::pg_query::Node* AlterPolicyStmt::_internal_mutable_qual() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.qual_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.colexpr_; + return _impl_.qual_; } -inline ::pg_query::Node* RangeTableFuncCol::mutable_colexpr() { - ::pg_query::Node* _msg = _internal_mutable_colexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFuncCol.colexpr) +inline ::pg_query::Node* AlterPolicyStmt::mutable_qual() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_qual(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.qual) return _msg; } -inline void RangeTableFuncCol::set_allocated_colexpr(::pg_query::Node* colexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterPolicyStmt::set_allocated_qual(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.colexpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.qual_); } - if (colexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(colexpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - colexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, colexpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.colexpr_ = colexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFuncCol.colexpr) -} -// .pg_query.Node coldefexpr = 6 [json_name = "coldefexpr"]; -inline bool RangeTableFuncCol::_internal_has_coldefexpr() const { - return this != internal_default_instance() && _impl_.coldefexpr_ != nullptr; + _impl_.qual_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPolicyStmt.qual) } -inline bool RangeTableFuncCol::has_coldefexpr() const { - return _internal_has_coldefexpr(); + +// .pg_query.Node with_check = 5 [json_name = "with_check"]; +inline bool AlterPolicyStmt::has_with_check() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.with_check_ != nullptr); + return value; } -inline void RangeTableFuncCol::clear_coldefexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.coldefexpr_ != nullptr) { - delete _impl_.coldefexpr_; - } - _impl_.coldefexpr_ = nullptr; +inline void AlterPolicyStmt::clear_with_check() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.with_check_ != nullptr) _impl_.with_check_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline const ::pg_query::Node& RangeTableFuncCol::_internal_coldefexpr() const { - const ::pg_query::Node* p = _impl_.coldefexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& AlterPolicyStmt::_internal_with_check() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.with_check_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& RangeTableFuncCol::coldefexpr() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.coldefexpr) - return _internal_coldefexpr(); +inline const ::pg_query::Node& AlterPolicyStmt::with_check() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterPolicyStmt.with_check) + return _internal_with_check(); } -inline void RangeTableFuncCol::unsafe_arena_set_allocated_coldefexpr( - ::pg_query::Node* coldefexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.coldefexpr_); +inline void AlterPolicyStmt::unsafe_arena_set_allocated_with_check(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.with_check_); } - _impl_.coldefexpr_ = coldefexpr; - if (coldefexpr) { - + _impl_.with_check_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTableFuncCol.coldefexpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterPolicyStmt.with_check) } -inline ::pg_query::Node* RangeTableFuncCol::release_coldefexpr() { - - ::pg_query::Node* temp = _impl_.coldefexpr_; - _impl_.coldefexpr_ = nullptr; +inline ::pg_query::Node* AlterPolicyStmt::release_with_check() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* released = _impl_.with_check_; + _impl_.with_check_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* RangeTableFuncCol::unsafe_arena_release_coldefexpr() { - // @@protoc_insertion_point(field_release:pg_query.RangeTableFuncCol.coldefexpr) - - ::pg_query::Node* temp = _impl_.coldefexpr_; - _impl_.coldefexpr_ = nullptr; +inline ::pg_query::Node* AlterPolicyStmt::unsafe_arena_release_with_check() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterPolicyStmt.with_check) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::Node* temp = _impl_.with_check_; + _impl_.with_check_ = nullptr; return temp; } -inline ::pg_query::Node* RangeTableFuncCol::_internal_mutable_coldefexpr() { - - if (_impl_.coldefexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.coldefexpr_ = p; +inline ::pg_query::Node* AlterPolicyStmt::_internal_mutable_with_check() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.with_check_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.with_check_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.coldefexpr_; + return _impl_.with_check_; } -inline ::pg_query::Node* RangeTableFuncCol::mutable_coldefexpr() { - ::pg_query::Node* _msg = _internal_mutable_coldefexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTableFuncCol.coldefexpr) +inline ::pg_query::Node* AlterPolicyStmt::mutable_with_check() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_with_check(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterPolicyStmt.with_check) return _msg; } -inline void RangeTableFuncCol::set_allocated_coldefexpr(::pg_query::Node* coldefexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterPolicyStmt::set_allocated_with_check(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.coldefexpr_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.with_check_); } - if (coldefexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(coldefexpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - coldefexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, coldefexpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.coldefexpr_ = coldefexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTableFuncCol.coldefexpr) + + _impl_.with_check_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPolicyStmt.with_check) } -// int32 location = 7 [json_name = "location"]; -inline void RangeTableFuncCol::clear_location() { - _impl_.location_ = 0; +// ------------------------------------------------------------------- + +// CreateAmStmt + +// string amname = 1 [json_name = "amname"]; +inline void CreateAmStmt::clear_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amname_.ClearToEmpty(); } -inline int32_t RangeTableFuncCol::_internal_location() const { - return _impl_.location_; +inline const std::string& CreateAmStmt::amname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateAmStmt.amname) + return _internal_amname(); } -inline int32_t RangeTableFuncCol::location() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTableFuncCol.location) - return _internal_location(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateAmStmt::set_amname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateAmStmt.amname) } -inline void RangeTableFuncCol::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline std::string* CreateAmStmt::mutable_amname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_amname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateAmStmt.amname) + return _s; } -inline void RangeTableFuncCol::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTableFuncCol.location) +inline const std::string& CreateAmStmt::_internal_amname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.amname_.Get(); +} +inline void CreateAmStmt::_internal_set_amname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amname_.Set(value, GetArena()); +} +inline std::string* CreateAmStmt::_internal_mutable_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.amname_.Mutable( GetArena()); +} +inline std::string* CreateAmStmt::release_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateAmStmt.amname) + return _impl_.amname_.Release(); +} +inline void CreateAmStmt::set_allocated_amname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.amname_.IsDefault()) { + _impl_.amname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateAmStmt.amname) +} + +// repeated .pg_query.Node handler_name = 2 [json_name = "handler_name"]; +inline int CreateAmStmt::_internal_handler_name_size() const { + return _internal_handler_name().size(); +} +inline int CreateAmStmt::handler_name_size() const { + return _internal_handler_name_size(); +} +inline void CreateAmStmt::clear_handler_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.handler_name_.Clear(); +} +inline ::pg_query::Node* CreateAmStmt::mutable_handler_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateAmStmt.handler_name) + return _internal_mutable_handler_name()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateAmStmt::mutable_handler_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateAmStmt.handler_name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_handler_name(); +} +inline const ::pg_query::Node& CreateAmStmt::handler_name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateAmStmt.handler_name) + return _internal_handler_name().Get(index); +} +inline ::pg_query::Node* CreateAmStmt::add_handler_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_handler_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateAmStmt.handler_name) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateAmStmt::handler_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateAmStmt.handler_name) + return _internal_handler_name(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateAmStmt::_internal_handler_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.handler_name_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateAmStmt::_internal_mutable_handler_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.handler_name_; +} + +// string amtype = 3 [json_name = "amtype"]; +inline void CreateAmStmt::clear_amtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amtype_.ClearToEmpty(); +} +inline const std::string& CreateAmStmt::amtype() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateAmStmt.amtype) + return _internal_amtype(); +} +template +inline PROTOBUF_ALWAYS_INLINE void CreateAmStmt::set_amtype(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amtype_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateAmStmt.amtype) +} +inline std::string* CreateAmStmt::mutable_amtype() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_amtype(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateAmStmt.amtype) + return _s; +} +inline const std::string& CreateAmStmt::_internal_amtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.amtype_.Get(); +} +inline void CreateAmStmt::_internal_set_amtype(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amtype_.Set(value, GetArena()); +} +inline std::string* CreateAmStmt::_internal_mutable_amtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.amtype_.Mutable( GetArena()); +} +inline std::string* CreateAmStmt::release_amtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateAmStmt.amtype) + return _impl_.amtype_.Release(); +} +inline void CreateAmStmt::set_allocated_amtype(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amtype_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.amtype_.IsDefault()) { + _impl_.amtype_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateAmStmt.amtype) } // ------------------------------------------------------------------- -// TypeName +// CreateTrigStmt -// repeated .pg_query.Node names = 1 [json_name = "names"]; -inline int TypeName::_internal_names_size() const { - return _impl_.names_.size(); +// bool replace = 1 [json_name = "replace"]; +inline void CreateTrigStmt::clear_replace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.replace_ = false; } -inline int TypeName::names_size() const { - return _internal_names_size(); +inline bool CreateTrigStmt::replace() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.replace) + return _internal_replace(); } -inline void TypeName::clear_names() { - _impl_.names_.Clear(); +inline void CreateTrigStmt::set_replace(bool value) { + _internal_set_replace(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.replace) } -inline ::pg_query::Node* TypeName::mutable_names(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TypeName.names) - return _impl_.names_.Mutable(index); +inline bool CreateTrigStmt::_internal_replace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.replace_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TypeName::mutable_names() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TypeName.names) - return &_impl_.names_; +inline void CreateTrigStmt::_internal_set_replace(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.replace_ = value; } -inline const ::pg_query::Node& TypeName::_internal_names(int index) const { - return _impl_.names_.Get(index); + +// bool isconstraint = 2 [json_name = "isconstraint"]; +inline void CreateTrigStmt::clear_isconstraint() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.isconstraint_ = false; } -inline const ::pg_query::Node& TypeName::names(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TypeName.names) - return _internal_names(index); +inline bool CreateTrigStmt::isconstraint() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.isconstraint) + return _internal_isconstraint(); } -inline ::pg_query::Node* TypeName::_internal_add_names() { - return _impl_.names_.Add(); +inline void CreateTrigStmt::set_isconstraint(bool value) { + _internal_set_isconstraint(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.isconstraint) } -inline ::pg_query::Node* TypeName::add_names() { - ::pg_query::Node* _add = _internal_add_names(); - // @@protoc_insertion_point(field_add:pg_query.TypeName.names) - return _add; +inline bool CreateTrigStmt::_internal_isconstraint() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.isconstraint_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TypeName::names() const { - // @@protoc_insertion_point(field_list:pg_query.TypeName.names) - return _impl_.names_; +inline void CreateTrigStmt::_internal_set_isconstraint(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.isconstraint_ = value; } -// uint32 type_oid = 2 [json_name = "typeOid"]; -inline void TypeName::clear_type_oid() { - _impl_.type_oid_ = 0u; +// string trigname = 3 [json_name = "trigname"]; +inline void CreateTrigStmt::clear_trigname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.trigname_.ClearToEmpty(); } -inline uint32_t TypeName::_internal_type_oid() const { - return _impl_.type_oid_; +inline const std::string& CreateTrigStmt::trigname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.trigname) + return _internal_trigname(); } -inline uint32_t TypeName::type_oid() const { - // @@protoc_insertion_point(field_get:pg_query.TypeName.type_oid) - return _internal_type_oid(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateTrigStmt::set_trigname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.trigname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.trigname) } -inline void TypeName::_internal_set_type_oid(uint32_t value) { - - _impl_.type_oid_ = value; +inline std::string* CreateTrigStmt::mutable_trigname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_trigname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.trigname) + return _s; } -inline void TypeName::set_type_oid(uint32_t value) { - _internal_set_type_oid(value); - // @@protoc_insertion_point(field_set:pg_query.TypeName.type_oid) +inline const std::string& CreateTrigStmt::_internal_trigname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.trigname_.Get(); +} +inline void CreateTrigStmt::_internal_set_trigname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.trigname_.Set(value, GetArena()); +} +inline std::string* CreateTrigStmt::_internal_mutable_trigname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.trigname_.Mutable( GetArena()); +} +inline std::string* CreateTrigStmt::release_trigname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTrigStmt.trigname) + return _impl_.trigname_.Release(); +} +inline void CreateTrigStmt::set_allocated_trigname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.trigname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.trigname_.IsDefault()) { + _impl_.trigname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTrigStmt.trigname) } -// bool setof = 3 [json_name = "setof"]; -inline void TypeName::clear_setof() { - _impl_.setof_ = false; +// .pg_query.RangeVar relation = 4 [json_name = "relation"]; +inline bool CreateTrigStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline bool TypeName::_internal_setof() const { - return _impl_.setof_; +inline void CreateTrigStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline bool TypeName::setof() const { - // @@protoc_insertion_point(field_get:pg_query.TypeName.setof) - return _internal_setof(); +inline const ::pg_query::RangeVar& CreateTrigStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline void TypeName::_internal_set_setof(bool value) { - - _impl_.setof_ = value; +inline const ::pg_query::RangeVar& CreateTrigStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.relation) + return _internal_relation(); } -inline void TypeName::set_setof(bool value) { - _internal_set_setof(value); - // @@protoc_insertion_point(field_set:pg_query.TypeName.setof) +inline void CreateTrigStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTrigStmt.relation) } +inline ::pg_query::RangeVar* CreateTrigStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool pct_type = 4 [json_name = "pct_type"]; -inline void TypeName::clear_pct_type() { - _impl_.pct_type_ = false; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool TypeName::_internal_pct_type() const { - return _impl_.pct_type_; +inline ::pg_query::RangeVar* CreateTrigStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTrigStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline bool TypeName::pct_type() const { - // @@protoc_insertion_point(field_get:pg_query.TypeName.pct_type) - return _internal_pct_type(); +inline ::pg_query::RangeVar* CreateTrigStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; } -inline void TypeName::_internal_set_pct_type(bool value) { - - _impl_.pct_type_ = value; +inline ::pg_query::RangeVar* CreateTrigStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.relation) + return _msg; } -inline void TypeName::set_pct_type(bool value) { - _internal_set_pct_type(value); - // @@protoc_insertion_point(field_set:pg_query.TypeName.pct_type) +inline void CreateTrigStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTrigStmt.relation) } -// repeated .pg_query.Node typmods = 5 [json_name = "typmods"]; -inline int TypeName::_internal_typmods_size() const { - return _impl_.typmods_.size(); +// repeated .pg_query.Node funcname = 5 [json_name = "funcname"]; +inline int CreateTrigStmt::_internal_funcname_size() const { + return _internal_funcname().size(); } -inline int TypeName::typmods_size() const { - return _internal_typmods_size(); +inline int CreateTrigStmt::funcname_size() const { + return _internal_funcname_size(); } -inline void TypeName::clear_typmods() { - _impl_.typmods_.Clear(); +inline void CreateTrigStmt::clear_funcname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcname_.Clear(); } -inline ::pg_query::Node* TypeName::mutable_typmods(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TypeName.typmods) - return _impl_.typmods_.Mutable(index); +inline ::pg_query::Node* CreateTrigStmt::mutable_funcname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.funcname) + return _internal_mutable_funcname()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TypeName::mutable_typmods() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TypeName.typmods) - return &_impl_.typmods_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateTrigStmt::mutable_funcname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTrigStmt.funcname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_funcname(); } -inline const ::pg_query::Node& TypeName::_internal_typmods(int index) const { - return _impl_.typmods_.Get(index); +inline const ::pg_query::Node& CreateTrigStmt::funcname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.funcname) + return _internal_funcname().Get(index); } -inline const ::pg_query::Node& TypeName::typmods(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TypeName.typmods) - return _internal_typmods(index); +inline ::pg_query::Node* CreateTrigStmt::add_funcname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_funcname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateTrigStmt.funcname) + return _add; } -inline ::pg_query::Node* TypeName::_internal_add_typmods() { - return _impl_.typmods_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateTrigStmt::funcname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateTrigStmt.funcname) + return _internal_funcname(); } -inline ::pg_query::Node* TypeName::add_typmods() { - ::pg_query::Node* _add = _internal_add_typmods(); - // @@protoc_insertion_point(field_add:pg_query.TypeName.typmods) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateTrigStmt::_internal_funcname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcname_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TypeName::typmods() const { - // @@protoc_insertion_point(field_list:pg_query.TypeName.typmods) - return _impl_.typmods_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateTrigStmt::_internal_mutable_funcname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.funcname_; } -// int32 typemod = 6 [json_name = "typemod"]; -inline void TypeName::clear_typemod() { - _impl_.typemod_ = 0; +// repeated .pg_query.Node args = 6 [json_name = "args"]; +inline int CreateTrigStmt::_internal_args_size() const { + return _internal_args().size(); } -inline int32_t TypeName::_internal_typemod() const { - return _impl_.typemod_; +inline int CreateTrigStmt::args_size() const { + return _internal_args_size(); } -inline int32_t TypeName::typemod() const { - // @@protoc_insertion_point(field_get:pg_query.TypeName.typemod) - return _internal_typemod(); +inline void CreateTrigStmt::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline void TypeName::_internal_set_typemod(int32_t value) { - - _impl_.typemod_ = value; +inline ::pg_query::Node* CreateTrigStmt::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.args) + return _internal_mutable_args()->Mutable(index); } -inline void TypeName::set_typemod(int32_t value) { - _internal_set_typemod(value); - // @@protoc_insertion_point(field_set:pg_query.TypeName.typemod) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateTrigStmt::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTrigStmt.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); +} +inline const ::pg_query::Node& CreateTrigStmt::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.args) + return _internal_args().Get(index); +} +inline ::pg_query::Node* CreateTrigStmt::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateTrigStmt.args) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateTrigStmt::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateTrigStmt.args) + return _internal_args(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateTrigStmt::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateTrigStmt::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// repeated .pg_query.Node array_bounds = 7 [json_name = "arrayBounds"]; -inline int TypeName::_internal_array_bounds_size() const { - return _impl_.array_bounds_.size(); +// bool row = 7 [json_name = "row"]; +inline void CreateTrigStmt::clear_row() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.row_ = false; } -inline int TypeName::array_bounds_size() const { - return _internal_array_bounds_size(); +inline bool CreateTrigStmt::row() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.row) + return _internal_row(); } -inline void TypeName::clear_array_bounds() { - _impl_.array_bounds_.Clear(); +inline void CreateTrigStmt::set_row(bool value) { + _internal_set_row(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.row) } -inline ::pg_query::Node* TypeName::mutable_array_bounds(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TypeName.array_bounds) - return _impl_.array_bounds_.Mutable(index); +inline bool CreateTrigStmt::_internal_row() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.row_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TypeName::mutable_array_bounds() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TypeName.array_bounds) - return &_impl_.array_bounds_; +inline void CreateTrigStmt::_internal_set_row(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.row_ = value; } -inline const ::pg_query::Node& TypeName::_internal_array_bounds(int index) const { - return _impl_.array_bounds_.Get(index); + +// int32 timing = 8 [json_name = "timing"]; +inline void CreateTrigStmt::clear_timing() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.timing_ = 0; } -inline const ::pg_query::Node& TypeName::array_bounds(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TypeName.array_bounds) - return _internal_array_bounds(index); +inline ::int32_t CreateTrigStmt::timing() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.timing) + return _internal_timing(); } -inline ::pg_query::Node* TypeName::_internal_add_array_bounds() { - return _impl_.array_bounds_.Add(); +inline void CreateTrigStmt::set_timing(::int32_t value) { + _internal_set_timing(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.timing) } -inline ::pg_query::Node* TypeName::add_array_bounds() { - ::pg_query::Node* _add = _internal_add_array_bounds(); - // @@protoc_insertion_point(field_add:pg_query.TypeName.array_bounds) - return _add; +inline ::int32_t CreateTrigStmt::_internal_timing() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.timing_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TypeName::array_bounds() const { - // @@protoc_insertion_point(field_list:pg_query.TypeName.array_bounds) - return _impl_.array_bounds_; +inline void CreateTrigStmt::_internal_set_timing(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.timing_ = value; } -// int32 location = 8 [json_name = "location"]; -inline void TypeName::clear_location() { - _impl_.location_ = 0; +// int32 events = 9 [json_name = "events"]; +inline void CreateTrigStmt::clear_events() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.events_ = 0; } -inline int32_t TypeName::_internal_location() const { - return _impl_.location_; +inline ::int32_t CreateTrigStmt::events() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.events) + return _internal_events(); } -inline int32_t TypeName::location() const { - // @@protoc_insertion_point(field_get:pg_query.TypeName.location) - return _internal_location(); +inline void CreateTrigStmt::set_events(::int32_t value) { + _internal_set_events(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.events) } -inline void TypeName::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::int32_t CreateTrigStmt::_internal_events() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.events_; } -inline void TypeName::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.TypeName.location) +inline void CreateTrigStmt::_internal_set_events(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.events_ = value; } -// ------------------------------------------------------------------- - -// ColumnDef - -// string colname = 1 [json_name = "colname"]; -inline void ColumnDef::clear_colname() { - _impl_.colname_.ClearToEmpty(); +// repeated .pg_query.Node columns = 10 [json_name = "columns"]; +inline int CreateTrigStmt::_internal_columns_size() const { + return _internal_columns().size(); } -inline const std::string& ColumnDef::colname() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.colname) - return _internal_colname(); +inline int CreateTrigStmt::columns_size() const { + return _internal_columns_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ColumnDef::set_colname(ArgT0&& arg0, ArgT... args) { - - _impl_.colname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.colname) +inline void CreateTrigStmt::clear_columns() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.columns_.Clear(); } -inline std::string* ColumnDef::mutable_colname() { - std::string* _s = _internal_mutable_colname(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.colname) - return _s; +inline ::pg_query::Node* CreateTrigStmt::mutable_columns(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.columns) + return _internal_mutable_columns()->Mutable(index); } -inline const std::string& ColumnDef::_internal_colname() const { - return _impl_.colname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateTrigStmt::mutable_columns() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTrigStmt.columns) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_columns(); } -inline void ColumnDef::_internal_set_colname(const std::string& value) { - - _impl_.colname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& CreateTrigStmt::columns(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.columns) + return _internal_columns().Get(index); } -inline std::string* ColumnDef::_internal_mutable_colname() { - - return _impl_.colname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CreateTrigStmt::add_columns() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_columns()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateTrigStmt.columns) + return _add; } -inline std::string* ColumnDef::release_colname() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.colname) - return _impl_.colname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateTrigStmt::columns() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateTrigStmt.columns) + return _internal_columns(); } -inline void ColumnDef::set_allocated_colname(std::string* colname) { - if (colname != nullptr) { - - } else { - - } - _impl_.colname_.SetAllocated(colname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.colname_.IsDefault()) { - _impl_.colname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.colname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateTrigStmt::_internal_columns() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.columns_; } - -// .pg_query.TypeName type_name = 2 [json_name = "typeName"]; -inline bool ColumnDef::_internal_has_type_name() const { - return this != internal_default_instance() && _impl_.type_name_ != nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateTrigStmt::_internal_mutable_columns() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.columns_; } -inline bool ColumnDef::has_type_name() const { - return _internal_has_type_name(); + +// .pg_query.Node when_clause = 11 [json_name = "whenClause"]; +inline bool CreateTrigStmt::has_when_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.when_clause_ != nullptr); + return value; } -inline void ColumnDef::clear_type_name() { - if (GetArenaForAllocation() == nullptr && _impl_.type_name_ != nullptr) { - delete _impl_.type_name_; - } - _impl_.type_name_ = nullptr; +inline void CreateTrigStmt::clear_when_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.when_clause_ != nullptr) _impl_.when_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::TypeName& ColumnDef::_internal_type_name() const { - const ::pg_query::TypeName* p = _impl_.type_name_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline const ::pg_query::Node& CreateTrigStmt::_internal_when_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.when_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::TypeName& ColumnDef::type_name() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.type_name) - return _internal_type_name(); +inline const ::pg_query::Node& CreateTrigStmt::when_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.when_clause) + return _internal_when_clause(); } -inline void ColumnDef::unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.type_name_); +inline void CreateTrigStmt::unsafe_arena_set_allocated_when_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.when_clause_); } - _impl_.type_name_ = type_name; - if (type_name) { - + _impl_.when_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.type_name) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTrigStmt.when_clause) } -inline ::pg_query::TypeName* ColumnDef::release_type_name() { - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; +inline ::pg_query::Node* CreateTrigStmt::release_when_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.when_clause_; + _impl_.when_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* ColumnDef::unsafe_arena_release_type_name() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.type_name) - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; +inline ::pg_query::Node* CreateTrigStmt::unsafe_arena_release_when_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTrigStmt.when_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.when_clause_; + _impl_.when_clause_ = nullptr; return temp; } -inline ::pg_query::TypeName* ColumnDef::_internal_mutable_type_name() { - - if (_impl_.type_name_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.type_name_ = p; +inline ::pg_query::Node* CreateTrigStmt::_internal_mutable_when_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.when_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.when_clause_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.type_name_; + return _impl_.when_clause_; } -inline ::pg_query::TypeName* ColumnDef::mutable_type_name() { - ::pg_query::TypeName* _msg = _internal_mutable_type_name(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.type_name) +inline ::pg_query::Node* CreateTrigStmt::mutable_when_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_when_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.when_clause) return _msg; } -inline void ColumnDef::set_allocated_type_name(::pg_query::TypeName* type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreateTrigStmt::set_allocated_when_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.type_name_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.when_clause_); } - if (type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(type_name); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - type_name = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, type_name, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.type_name_ = type_name; - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.type_name) + + _impl_.when_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTrigStmt.when_clause) } -// string compression = 3 [json_name = "compression"]; -inline void ColumnDef::clear_compression() { - _impl_.compression_.ClearToEmpty(); +// repeated .pg_query.Node transition_rels = 12 [json_name = "transitionRels"]; +inline int CreateTrigStmt::_internal_transition_rels_size() const { + return _internal_transition_rels().size(); } -inline const std::string& ColumnDef::compression() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.compression) - return _internal_compression(); +inline int CreateTrigStmt::transition_rels_size() const { + return _internal_transition_rels_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ColumnDef::set_compression(ArgT0&& arg0, ArgT... args) { - - _impl_.compression_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.compression) +inline void CreateTrigStmt::clear_transition_rels() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.transition_rels_.Clear(); } -inline std::string* ColumnDef::mutable_compression() { - std::string* _s = _internal_mutable_compression(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.compression) - return _s; +inline ::pg_query::Node* CreateTrigStmt::mutable_transition_rels(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.transition_rels) + return _internal_mutable_transition_rels()->Mutable(index); } -inline const std::string& ColumnDef::_internal_compression() const { - return _impl_.compression_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateTrigStmt::mutable_transition_rels() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateTrigStmt.transition_rels) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_transition_rels(); } -inline void ColumnDef::_internal_set_compression(const std::string& value) { - - _impl_.compression_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& CreateTrigStmt::transition_rels(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.transition_rels) + return _internal_transition_rels().Get(index); } -inline std::string* ColumnDef::_internal_mutable_compression() { - - return _impl_.compression_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CreateTrigStmt::add_transition_rels() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_transition_rels()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateTrigStmt.transition_rels) + return _add; } -inline std::string* ColumnDef::release_compression() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.compression) - return _impl_.compression_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateTrigStmt::transition_rels() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateTrigStmt.transition_rels) + return _internal_transition_rels(); } -inline void ColumnDef::set_allocated_compression(std::string* compression) { - if (compression != nullptr) { - - } else { - - } - _impl_.compression_.SetAllocated(compression, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.compression_.IsDefault()) { - _impl_.compression_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.compression) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateTrigStmt::_internal_transition_rels() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.transition_rels_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateTrigStmt::_internal_mutable_transition_rels() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.transition_rels_; } -// int32 inhcount = 4 [json_name = "inhcount"]; -inline void ColumnDef::clear_inhcount() { - _impl_.inhcount_ = 0; +// bool deferrable = 13 [json_name = "deferrable"]; +inline void CreateTrigStmt::clear_deferrable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.deferrable_ = false; } -inline int32_t ColumnDef::_internal_inhcount() const { - return _impl_.inhcount_; +inline bool CreateTrigStmt::deferrable() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.deferrable) + return _internal_deferrable(); } -inline int32_t ColumnDef::inhcount() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.inhcount) - return _internal_inhcount(); +inline void CreateTrigStmt::set_deferrable(bool value) { + _internal_set_deferrable(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.deferrable) } -inline void ColumnDef::_internal_set_inhcount(int32_t value) { - - _impl_.inhcount_ = value; +inline bool CreateTrigStmt::_internal_deferrable() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.deferrable_; } -inline void ColumnDef::set_inhcount(int32_t value) { - _internal_set_inhcount(value); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.inhcount) +inline void CreateTrigStmt::_internal_set_deferrable(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.deferrable_ = value; } -// bool is_local = 5 [json_name = "is_local"]; -inline void ColumnDef::clear_is_local() { - _impl_.is_local_ = false; +// bool initdeferred = 14 [json_name = "initdeferred"]; +inline void CreateTrigStmt::clear_initdeferred() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.initdeferred_ = false; } -inline bool ColumnDef::_internal_is_local() const { - return _impl_.is_local_; +inline bool CreateTrigStmt::initdeferred() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.initdeferred) + return _internal_initdeferred(); } -inline bool ColumnDef::is_local() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.is_local) - return _internal_is_local(); +inline void CreateTrigStmt::set_initdeferred(bool value) { + _internal_set_initdeferred(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTrigStmt.initdeferred) } -inline void ColumnDef::_internal_set_is_local(bool value) { - - _impl_.is_local_ = value; +inline bool CreateTrigStmt::_internal_initdeferred() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.initdeferred_; } -inline void ColumnDef::set_is_local(bool value) { - _internal_set_is_local(value); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.is_local) +inline void CreateTrigStmt::_internal_set_initdeferred(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.initdeferred_ = value; } -// bool is_not_null = 6 [json_name = "is_not_null"]; -inline void ColumnDef::clear_is_not_null() { - _impl_.is_not_null_ = false; +// .pg_query.RangeVar constrrel = 15 [json_name = "constrrel"]; +inline bool CreateTrigStmt::has_constrrel() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.constrrel_ != nullptr); + return value; } -inline bool ColumnDef::_internal_is_not_null() const { - return _impl_.is_not_null_; +inline void CreateTrigStmt::clear_constrrel() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.constrrel_ != nullptr) _impl_.constrrel_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline bool ColumnDef::is_not_null() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.is_not_null) - return _internal_is_not_null(); +inline const ::pg_query::RangeVar& CreateTrigStmt::_internal_constrrel() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.constrrel_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline void ColumnDef::_internal_set_is_not_null(bool value) { - - _impl_.is_not_null_ = value; +inline const ::pg_query::RangeVar& CreateTrigStmt::constrrel() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTrigStmt.constrrel) + return _internal_constrrel(); } -inline void ColumnDef::set_is_not_null(bool value) { - _internal_set_is_not_null(value); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.is_not_null) +inline void CreateTrigStmt::unsafe_arena_set_allocated_constrrel(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.constrrel_); + } + _impl_.constrrel_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTrigStmt.constrrel) } +inline ::pg_query::RangeVar* CreateTrigStmt::release_constrrel() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool is_from_type = 7 [json_name = "is_from_type"]; -inline void ColumnDef::clear_is_from_type() { - _impl_.is_from_type_ = false; + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::RangeVar* released = _impl_.constrrel_; + _impl_.constrrel_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool ColumnDef::_internal_is_from_type() const { - return _impl_.is_from_type_; +inline ::pg_query::RangeVar* CreateTrigStmt::unsafe_arena_release_constrrel() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTrigStmt.constrrel) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::RangeVar* temp = _impl_.constrrel_; + _impl_.constrrel_ = nullptr; + return temp; } -inline bool ColumnDef::is_from_type() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.is_from_type) - return _internal_is_from_type(); +inline ::pg_query::RangeVar* CreateTrigStmt::_internal_mutable_constrrel() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.constrrel_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.constrrel_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.constrrel_; } -inline void ColumnDef::_internal_set_is_from_type(bool value) { - - _impl_.is_from_type_ = value; +inline ::pg_query::RangeVar* CreateTrigStmt::mutable_constrrel() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_constrrel(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTrigStmt.constrrel) + return _msg; } -inline void ColumnDef::set_is_from_type(bool value) { - _internal_set_is_from_type(value); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.is_from_type) +inline void CreateTrigStmt::set_allocated_constrrel(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.constrrel_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.constrrel_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTrigStmt.constrrel) } -// string storage = 8 [json_name = "storage"]; -inline void ColumnDef::clear_storage() { - _impl_.storage_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// CreateEventTrigStmt + +// string trigname = 1 [json_name = "trigname"]; +inline void CreateEventTrigStmt::clear_trigname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.trigname_.ClearToEmpty(); } -inline const std::string& ColumnDef::storage() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.storage) - return _internal_storage(); +inline const std::string& CreateEventTrigStmt::trigname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateEventTrigStmt.trigname) + return _internal_trigname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ColumnDef::set_storage(ArgT0&& arg0, ArgT... args) { - - _impl_.storage_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.storage) +template +inline PROTOBUF_ALWAYS_INLINE void CreateEventTrigStmt::set_trigname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.trigname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateEventTrigStmt.trigname) } -inline std::string* ColumnDef::mutable_storage() { - std::string* _s = _internal_mutable_storage(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.storage) +inline std::string* CreateEventTrigStmt::mutable_trigname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_trigname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateEventTrigStmt.trigname) return _s; } -inline const std::string& ColumnDef::_internal_storage() const { - return _impl_.storage_.Get(); +inline const std::string& CreateEventTrigStmt::_internal_trigname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.trigname_.Get(); } -inline void ColumnDef::_internal_set_storage(const std::string& value) { - - _impl_.storage_.Set(value, GetArenaForAllocation()); +inline void CreateEventTrigStmt::_internal_set_trigname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.trigname_.Set(value, GetArena()); } -inline std::string* ColumnDef::_internal_mutable_storage() { - - return _impl_.storage_.Mutable(GetArenaForAllocation()); +inline std::string* CreateEventTrigStmt::_internal_mutable_trigname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.trigname_.Mutable( GetArena()); } -inline std::string* ColumnDef::release_storage() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.storage) - return _impl_.storage_.Release(); +inline std::string* CreateEventTrigStmt::release_trigname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateEventTrigStmt.trigname) + return _impl_.trigname_.Release(); } -inline void ColumnDef::set_allocated_storage(std::string* storage) { - if (storage != nullptr) { - - } else { - - } - _impl_.storage_.SetAllocated(storage, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.storage_.IsDefault()) { - _impl_.storage_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.storage) +inline void CreateEventTrigStmt::set_allocated_trigname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.trigname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.trigname_.IsDefault()) { + _impl_.trigname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateEventTrigStmt.trigname) } -// .pg_query.Node raw_default = 9 [json_name = "raw_default"]; -inline bool ColumnDef::_internal_has_raw_default() const { - return this != internal_default_instance() && _impl_.raw_default_ != nullptr; +// string eventname = 2 [json_name = "eventname"]; +inline void CreateEventTrigStmt::clear_eventname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.eventname_.ClearToEmpty(); } -inline bool ColumnDef::has_raw_default() const { - return _internal_has_raw_default(); +inline const std::string& CreateEventTrigStmt::eventname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateEventTrigStmt.eventname) + return _internal_eventname(); } -inline void ColumnDef::clear_raw_default() { - if (GetArenaForAllocation() == nullptr && _impl_.raw_default_ != nullptr) { - delete _impl_.raw_default_; - } - _impl_.raw_default_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void CreateEventTrigStmt::set_eventname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.eventname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateEventTrigStmt.eventname) } -inline const ::pg_query::Node& ColumnDef::_internal_raw_default() const { - const ::pg_query::Node* p = _impl_.raw_default_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline std::string* CreateEventTrigStmt::mutable_eventname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_eventname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateEventTrigStmt.eventname) + return _s; } -inline const ::pg_query::Node& ColumnDef::raw_default() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.raw_default) - return _internal_raw_default(); +inline const std::string& CreateEventTrigStmt::_internal_eventname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.eventname_.Get(); } -inline void ColumnDef::unsafe_arena_set_allocated_raw_default( - ::pg_query::Node* raw_default) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.raw_default_); - } - _impl_.raw_default_ = raw_default; - if (raw_default) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.raw_default) +inline void CreateEventTrigStmt::_internal_set_eventname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.eventname_.Set(value, GetArena()); } -inline ::pg_query::Node* ColumnDef::release_raw_default() { - - ::pg_query::Node* temp = _impl_.raw_default_; - _impl_.raw_default_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* CreateEventTrigStmt::_internal_mutable_eventname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.eventname_.Mutable( GetArena()); } -inline ::pg_query::Node* ColumnDef::unsafe_arena_release_raw_default() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.raw_default) - - ::pg_query::Node* temp = _impl_.raw_default_; - _impl_.raw_default_ = nullptr; - return temp; +inline std::string* CreateEventTrigStmt::release_eventname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateEventTrigStmt.eventname) + return _impl_.eventname_.Release(); } -inline ::pg_query::Node* ColumnDef::_internal_mutable_raw_default() { - - if (_impl_.raw_default_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.raw_default_ = p; - } - return _impl_.raw_default_; +inline void CreateEventTrigStmt::set_allocated_eventname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.eventname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.eventname_.IsDefault()) { + _impl_.eventname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateEventTrigStmt.eventname) } -inline ::pg_query::Node* ColumnDef::mutable_raw_default() { - ::pg_query::Node* _msg = _internal_mutable_raw_default(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.raw_default) - return _msg; + +// repeated .pg_query.Node whenclause = 3 [json_name = "whenclause"]; +inline int CreateEventTrigStmt::_internal_whenclause_size() const { + return _internal_whenclause().size(); } -inline void ColumnDef::set_allocated_raw_default(::pg_query::Node* raw_default) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.raw_default_; - } - if (raw_default) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(raw_default); - if (message_arena != submessage_arena) { - raw_default = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, raw_default, submessage_arena); - } - - } else { - - } - _impl_.raw_default_ = raw_default; - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.raw_default) +inline int CreateEventTrigStmt::whenclause_size() const { + return _internal_whenclause_size(); } - -// .pg_query.Node cooked_default = 10 [json_name = "cooked_default"]; -inline bool ColumnDef::_internal_has_cooked_default() const { - return this != internal_default_instance() && _impl_.cooked_default_ != nullptr; +inline void CreateEventTrigStmt::clear_whenclause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.whenclause_.Clear(); } -inline bool ColumnDef::has_cooked_default() const { - return _internal_has_cooked_default(); +inline ::pg_query::Node* CreateEventTrigStmt::mutable_whenclause(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateEventTrigStmt.whenclause) + return _internal_mutable_whenclause()->Mutable(index); } -inline void ColumnDef::clear_cooked_default() { - if (GetArenaForAllocation() == nullptr && _impl_.cooked_default_ != nullptr) { - delete _impl_.cooked_default_; - } - _impl_.cooked_default_ = nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateEventTrigStmt::mutable_whenclause() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateEventTrigStmt.whenclause) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_whenclause(); } -inline const ::pg_query::Node& ColumnDef::_internal_cooked_default() const { - const ::pg_query::Node* p = _impl_.cooked_default_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& CreateEventTrigStmt::whenclause(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateEventTrigStmt.whenclause) + return _internal_whenclause().Get(index); } -inline const ::pg_query::Node& ColumnDef::cooked_default() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.cooked_default) - return _internal_cooked_default(); +inline ::pg_query::Node* CreateEventTrigStmt::add_whenclause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_whenclause()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateEventTrigStmt.whenclause) + return _add; } -inline void ColumnDef::unsafe_arena_set_allocated_cooked_default( - ::pg_query::Node* cooked_default) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.cooked_default_); - } - _impl_.cooked_default_ = cooked_default; - if (cooked_default) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.cooked_default) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateEventTrigStmt::whenclause() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateEventTrigStmt.whenclause) + return _internal_whenclause(); } -inline ::pg_query::Node* ColumnDef::release_cooked_default() { - - ::pg_query::Node* temp = _impl_.cooked_default_; - _impl_.cooked_default_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateEventTrigStmt::_internal_whenclause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.whenclause_; } -inline ::pg_query::Node* ColumnDef::unsafe_arena_release_cooked_default() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.cooked_default) - - ::pg_query::Node* temp = _impl_.cooked_default_; - _impl_.cooked_default_ = nullptr; - return temp; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateEventTrigStmt::_internal_mutable_whenclause() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.whenclause_; } -inline ::pg_query::Node* ColumnDef::_internal_mutable_cooked_default() { - - if (_impl_.cooked_default_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.cooked_default_ = p; - } - return _impl_.cooked_default_; + +// repeated .pg_query.Node funcname = 4 [json_name = "funcname"]; +inline int CreateEventTrigStmt::_internal_funcname_size() const { + return _internal_funcname().size(); } -inline ::pg_query::Node* ColumnDef::mutable_cooked_default() { - ::pg_query::Node* _msg = _internal_mutable_cooked_default(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.cooked_default) - return _msg; +inline int CreateEventTrigStmt::funcname_size() const { + return _internal_funcname_size(); } -inline void ColumnDef::set_allocated_cooked_default(::pg_query::Node* cooked_default) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.cooked_default_; - } - if (cooked_default) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(cooked_default); - if (message_arena != submessage_arena) { - cooked_default = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, cooked_default, submessage_arena); - } - - } else { - - } - _impl_.cooked_default_ = cooked_default; - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.cooked_default) +inline void CreateEventTrigStmt::clear_funcname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcname_.Clear(); +} +inline ::pg_query::Node* CreateEventTrigStmt::mutable_funcname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateEventTrigStmt.funcname) + return _internal_mutable_funcname()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateEventTrigStmt::mutable_funcname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateEventTrigStmt.funcname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_funcname(); +} +inline const ::pg_query::Node& CreateEventTrigStmt::funcname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateEventTrigStmt.funcname) + return _internal_funcname().Get(index); +} +inline ::pg_query::Node* CreateEventTrigStmt::add_funcname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_funcname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateEventTrigStmt.funcname) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateEventTrigStmt::funcname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateEventTrigStmt.funcname) + return _internal_funcname(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateEventTrigStmt::_internal_funcname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcname_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateEventTrigStmt::_internal_mutable_funcname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.funcname_; } -// string identity = 11 [json_name = "identity"]; -inline void ColumnDef::clear_identity() { - _impl_.identity_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// AlterEventTrigStmt + +// string trigname = 1 [json_name = "trigname"]; +inline void AlterEventTrigStmt::clear_trigname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.trigname_.ClearToEmpty(); } -inline const std::string& ColumnDef::identity() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.identity) - return _internal_identity(); +inline const std::string& AlterEventTrigStmt::trigname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterEventTrigStmt.trigname) + return _internal_trigname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ColumnDef::set_identity(ArgT0&& arg0, ArgT... args) { - - _impl_.identity_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.identity) +template +inline PROTOBUF_ALWAYS_INLINE void AlterEventTrigStmt::set_trigname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.trigname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterEventTrigStmt.trigname) } -inline std::string* ColumnDef::mutable_identity() { - std::string* _s = _internal_mutable_identity(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.identity) +inline std::string* AlterEventTrigStmt::mutable_trigname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_trigname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterEventTrigStmt.trigname) return _s; } -inline const std::string& ColumnDef::_internal_identity() const { - return _impl_.identity_.Get(); +inline const std::string& AlterEventTrigStmt::_internal_trigname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.trigname_.Get(); } -inline void ColumnDef::_internal_set_identity(const std::string& value) { - - _impl_.identity_.Set(value, GetArenaForAllocation()); +inline void AlterEventTrigStmt::_internal_set_trigname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.trigname_.Set(value, GetArena()); } -inline std::string* ColumnDef::_internal_mutable_identity() { - - return _impl_.identity_.Mutable(GetArenaForAllocation()); +inline std::string* AlterEventTrigStmt::_internal_mutable_trigname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.trigname_.Mutable( GetArena()); } -inline std::string* ColumnDef::release_identity() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.identity) - return _impl_.identity_.Release(); +inline std::string* AlterEventTrigStmt::release_trigname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterEventTrigStmt.trigname) + return _impl_.trigname_.Release(); } -inline void ColumnDef::set_allocated_identity(std::string* identity) { - if (identity != nullptr) { - - } else { - - } - _impl_.identity_.SetAllocated(identity, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.identity_.IsDefault()) { - _impl_.identity_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.identity) +inline void AlterEventTrigStmt::set_allocated_trigname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.trigname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.trigname_.IsDefault()) { + _impl_.trigname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEventTrigStmt.trigname) } -// .pg_query.RangeVar identity_sequence = 12 [json_name = "identitySequence"]; -inline bool ColumnDef::_internal_has_identity_sequence() const { - return this != internal_default_instance() && _impl_.identity_sequence_ != nullptr; +// string tgenabled = 2 [json_name = "tgenabled"]; +inline void AlterEventTrigStmt::clear_tgenabled() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tgenabled_.ClearToEmpty(); } -inline bool ColumnDef::has_identity_sequence() const { - return _internal_has_identity_sequence(); +inline const std::string& AlterEventTrigStmt::tgenabled() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterEventTrigStmt.tgenabled) + return _internal_tgenabled(); } -inline void ColumnDef::clear_identity_sequence() { - if (GetArenaForAllocation() == nullptr && _impl_.identity_sequence_ != nullptr) { - delete _impl_.identity_sequence_; - } - _impl_.identity_sequence_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void AlterEventTrigStmt::set_tgenabled(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tgenabled_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterEventTrigStmt.tgenabled) } -inline const ::pg_query::RangeVar& ColumnDef::_internal_identity_sequence() const { - const ::pg_query::RangeVar* p = _impl_.identity_sequence_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline std::string* AlterEventTrigStmt::mutable_tgenabled() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_tgenabled(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterEventTrigStmt.tgenabled) + return _s; } -inline const ::pg_query::RangeVar& ColumnDef::identity_sequence() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.identity_sequence) - return _internal_identity_sequence(); +inline const std::string& AlterEventTrigStmt::_internal_tgenabled() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.tgenabled_.Get(); } -inline void ColumnDef::unsafe_arena_set_allocated_identity_sequence( - ::pg_query::RangeVar* identity_sequence) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.identity_sequence_); - } - _impl_.identity_sequence_ = identity_sequence; - if (identity_sequence) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.identity_sequence) +inline void AlterEventTrigStmt::_internal_set_tgenabled(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.tgenabled_.Set(value, GetArena()); } -inline ::pg_query::RangeVar* ColumnDef::release_identity_sequence() { - - ::pg_query::RangeVar* temp = _impl_.identity_sequence_; - _impl_.identity_sequence_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* AlterEventTrigStmt::_internal_mutable_tgenabled() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.tgenabled_.Mutable( GetArena()); } -inline ::pg_query::RangeVar* ColumnDef::unsafe_arena_release_identity_sequence() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.identity_sequence) - - ::pg_query::RangeVar* temp = _impl_.identity_sequence_; - _impl_.identity_sequence_ = nullptr; - return temp; +inline std::string* AlterEventTrigStmt::release_tgenabled() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterEventTrigStmt.tgenabled) + return _impl_.tgenabled_.Release(); } -inline ::pg_query::RangeVar* ColumnDef::_internal_mutable_identity_sequence() { - - if (_impl_.identity_sequence_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.identity_sequence_ = p; - } - return _impl_.identity_sequence_; +inline void AlterEventTrigStmt::set_allocated_tgenabled(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tgenabled_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.tgenabled_.IsDefault()) { + _impl_.tgenabled_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEventTrigStmt.tgenabled) } -inline ::pg_query::RangeVar* ColumnDef::mutable_identity_sequence() { - ::pg_query::RangeVar* _msg = _internal_mutable_identity_sequence(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.identity_sequence) - return _msg; + +// ------------------------------------------------------------------- + +// CreatePLangStmt + +// bool replace = 1 [json_name = "replace"]; +inline void CreatePLangStmt::clear_replace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.replace_ = false; +} +inline bool CreatePLangStmt::replace() const { + // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.replace) + return _internal_replace(); +} +inline void CreatePLangStmt::set_replace(bool value) { + _internal_set_replace(value); + // @@protoc_insertion_point(field_set:pg_query.CreatePLangStmt.replace) } -inline void ColumnDef::set_allocated_identity_sequence(::pg_query::RangeVar* identity_sequence) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.identity_sequence_; - } - if (identity_sequence) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(identity_sequence); - if (message_arena != submessage_arena) { - identity_sequence = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, identity_sequence, submessage_arena); - } - - } else { - - } - _impl_.identity_sequence_ = identity_sequence; - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.identity_sequence) +inline bool CreatePLangStmt::_internal_replace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.replace_; +} +inline void CreatePLangStmt::_internal_set_replace(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.replace_ = value; } -// string generated = 13 [json_name = "generated"]; -inline void ColumnDef::clear_generated() { - _impl_.generated_.ClearToEmpty(); +// string plname = 2 [json_name = "plname"]; +inline void CreatePLangStmt::clear_plname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.plname_.ClearToEmpty(); } -inline const std::string& ColumnDef::generated() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.generated) - return _internal_generated(); +inline const std::string& CreatePLangStmt::plname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.plname) + return _internal_plname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void ColumnDef::set_generated(ArgT0&& arg0, ArgT... args) { - - _impl_.generated_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.generated) +template +inline PROTOBUF_ALWAYS_INLINE void CreatePLangStmt::set_plname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.plname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreatePLangStmt.plname) } -inline std::string* ColumnDef::mutable_generated() { - std::string* _s = _internal_mutable_generated(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.generated) +inline std::string* CreatePLangStmt::mutable_plname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_plname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreatePLangStmt.plname) return _s; } -inline const std::string& ColumnDef::_internal_generated() const { - return _impl_.generated_.Get(); +inline const std::string& CreatePLangStmt::_internal_plname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.plname_.Get(); } -inline void ColumnDef::_internal_set_generated(const std::string& value) { - - _impl_.generated_.Set(value, GetArenaForAllocation()); +inline void CreatePLangStmt::_internal_set_plname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.plname_.Set(value, GetArena()); } -inline std::string* ColumnDef::_internal_mutable_generated() { - - return _impl_.generated_.Mutable(GetArenaForAllocation()); +inline std::string* CreatePLangStmt::_internal_mutable_plname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.plname_.Mutable( GetArena()); } -inline std::string* ColumnDef::release_generated() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.generated) - return _impl_.generated_.Release(); +inline std::string* CreatePLangStmt::release_plname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreatePLangStmt.plname) + return _impl_.plname_.Release(); } -inline void ColumnDef::set_allocated_generated(std::string* generated) { - if (generated != nullptr) { - - } else { - - } - _impl_.generated_.SetAllocated(generated, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.generated_.IsDefault()) { - _impl_.generated_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.generated) +inline void CreatePLangStmt::set_allocated_plname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.plname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.plname_.IsDefault()) { + _impl_.plname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePLangStmt.plname) } -// .pg_query.CollateClause coll_clause = 14 [json_name = "collClause"]; -inline bool ColumnDef::_internal_has_coll_clause() const { - return this != internal_default_instance() && _impl_.coll_clause_ != nullptr; -} -inline bool ColumnDef::has_coll_clause() const { - return _internal_has_coll_clause(); +// repeated .pg_query.Node plhandler = 3 [json_name = "plhandler"]; +inline int CreatePLangStmt::_internal_plhandler_size() const { + return _internal_plhandler().size(); } -inline void ColumnDef::clear_coll_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.coll_clause_ != nullptr) { - delete _impl_.coll_clause_; - } - _impl_.coll_clause_ = nullptr; +inline int CreatePLangStmt::plhandler_size() const { + return _internal_plhandler_size(); } -inline const ::pg_query::CollateClause& ColumnDef::_internal_coll_clause() const { - const ::pg_query::CollateClause* p = _impl_.coll_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_CollateClause_default_instance_); +inline void CreatePLangStmt::clear_plhandler() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.plhandler_.Clear(); } -inline const ::pg_query::CollateClause& ColumnDef::coll_clause() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.coll_clause) - return _internal_coll_clause(); +inline ::pg_query::Node* CreatePLangStmt::mutable_plhandler(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreatePLangStmt.plhandler) + return _internal_mutable_plhandler()->Mutable(index); } -inline void ColumnDef::unsafe_arena_set_allocated_coll_clause( - ::pg_query::CollateClause* coll_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.coll_clause_); - } - _impl_.coll_clause_ = coll_clause; - if (coll_clause) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ColumnDef.coll_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreatePLangStmt::mutable_plhandler() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePLangStmt.plhandler) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_plhandler(); } -inline ::pg_query::CollateClause* ColumnDef::release_coll_clause() { - - ::pg_query::CollateClause* temp = _impl_.coll_clause_; - _impl_.coll_clause_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& CreatePLangStmt::plhandler(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.plhandler) + return _internal_plhandler().Get(index); } -inline ::pg_query::CollateClause* ColumnDef::unsafe_arena_release_coll_clause() { - // @@protoc_insertion_point(field_release:pg_query.ColumnDef.coll_clause) - - ::pg_query::CollateClause* temp = _impl_.coll_clause_; - _impl_.coll_clause_ = nullptr; - return temp; +inline ::pg_query::Node* CreatePLangStmt::add_plhandler() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_plhandler()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreatePLangStmt.plhandler) + return _add; } -inline ::pg_query::CollateClause* ColumnDef::_internal_mutable_coll_clause() { - - if (_impl_.coll_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::CollateClause>(GetArenaForAllocation()); - _impl_.coll_clause_ = p; - } - return _impl_.coll_clause_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreatePLangStmt::plhandler() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreatePLangStmt.plhandler) + return _internal_plhandler(); } -inline ::pg_query::CollateClause* ColumnDef::mutable_coll_clause() { - ::pg_query::CollateClause* _msg = _internal_mutable_coll_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.coll_clause) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreatePLangStmt::_internal_plhandler() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.plhandler_; } -inline void ColumnDef::set_allocated_coll_clause(::pg_query::CollateClause* coll_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.coll_clause_; - } - if (coll_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(coll_clause); - if (message_arena != submessage_arena) { - coll_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, coll_clause, submessage_arena); - } - - } else { - - } - _impl_.coll_clause_ = coll_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.ColumnDef.coll_clause) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreatePLangStmt::_internal_mutable_plhandler() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.plhandler_; } -// uint32 coll_oid = 15 [json_name = "collOid"]; -inline void ColumnDef::clear_coll_oid() { - _impl_.coll_oid_ = 0u; +// repeated .pg_query.Node plinline = 4 [json_name = "plinline"]; +inline int CreatePLangStmt::_internal_plinline_size() const { + return _internal_plinline().size(); } -inline uint32_t ColumnDef::_internal_coll_oid() const { - return _impl_.coll_oid_; +inline int CreatePLangStmt::plinline_size() const { + return _internal_plinline_size(); } -inline uint32_t ColumnDef::coll_oid() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.coll_oid) - return _internal_coll_oid(); +inline void CreatePLangStmt::clear_plinline() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.plinline_.Clear(); } -inline void ColumnDef::_internal_set_coll_oid(uint32_t value) { - - _impl_.coll_oid_ = value; +inline ::pg_query::Node* CreatePLangStmt::mutable_plinline(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreatePLangStmt.plinline) + return _internal_mutable_plinline()->Mutable(index); } -inline void ColumnDef::set_coll_oid(uint32_t value) { - _internal_set_coll_oid(value); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.coll_oid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreatePLangStmt::mutable_plinline() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePLangStmt.plinline) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_plinline(); } - -// repeated .pg_query.Node constraints = 16 [json_name = "constraints"]; -inline int ColumnDef::_internal_constraints_size() const { - return _impl_.constraints_.size(); +inline const ::pg_query::Node& CreatePLangStmt::plinline(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.plinline) + return _internal_plinline().Get(index); } -inline int ColumnDef::constraints_size() const { - return _internal_constraints_size(); +inline ::pg_query::Node* CreatePLangStmt::add_plinline() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_plinline()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreatePLangStmt.plinline) + return _add; } -inline void ColumnDef::clear_constraints() { - _impl_.constraints_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreatePLangStmt::plinline() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreatePLangStmt.plinline) + return _internal_plinline(); } -inline ::pg_query::Node* ColumnDef::mutable_constraints(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.constraints) - return _impl_.constraints_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreatePLangStmt::_internal_plinline() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.plinline_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ColumnDef::mutable_constraints() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ColumnDef.constraints) - return &_impl_.constraints_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreatePLangStmt::_internal_mutable_plinline() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.plinline_; } -inline const ::pg_query::Node& ColumnDef::_internal_constraints(int index) const { - return _impl_.constraints_.Get(index); + +// repeated .pg_query.Node plvalidator = 5 [json_name = "plvalidator"]; +inline int CreatePLangStmt::_internal_plvalidator_size() const { + return _internal_plvalidator().size(); } -inline const ::pg_query::Node& ColumnDef::constraints(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.constraints) - return _internal_constraints(index); +inline int CreatePLangStmt::plvalidator_size() const { + return _internal_plvalidator_size(); } -inline ::pg_query::Node* ColumnDef::_internal_add_constraints() { - return _impl_.constraints_.Add(); +inline void CreatePLangStmt::clear_plvalidator() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.plvalidator_.Clear(); } -inline ::pg_query::Node* ColumnDef::add_constraints() { - ::pg_query::Node* _add = _internal_add_constraints(); - // @@protoc_insertion_point(field_add:pg_query.ColumnDef.constraints) - return _add; +inline ::pg_query::Node* CreatePLangStmt::mutable_plvalidator(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreatePLangStmt.plvalidator) + return _internal_mutable_plvalidator()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ColumnDef::constraints() const { - // @@protoc_insertion_point(field_list:pg_query.ColumnDef.constraints) - return _impl_.constraints_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreatePLangStmt::mutable_plvalidator() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePLangStmt.plvalidator) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_plvalidator(); } - -// repeated .pg_query.Node fdwoptions = 17 [json_name = "fdwoptions"]; -inline int ColumnDef::_internal_fdwoptions_size() const { - return _impl_.fdwoptions_.size(); +inline const ::pg_query::Node& CreatePLangStmt::plvalidator(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.plvalidator) + return _internal_plvalidator().Get(index); } -inline int ColumnDef::fdwoptions_size() const { - return _internal_fdwoptions_size(); +inline ::pg_query::Node* CreatePLangStmt::add_plvalidator() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_plvalidator()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreatePLangStmt.plvalidator) + return _add; } -inline void ColumnDef::clear_fdwoptions() { - _impl_.fdwoptions_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreatePLangStmt::plvalidator() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreatePLangStmt.plvalidator) + return _internal_plvalidator(); } -inline ::pg_query::Node* ColumnDef::mutable_fdwoptions(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ColumnDef.fdwoptions) - return _impl_.fdwoptions_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreatePLangStmt::_internal_plvalidator() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.plvalidator_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ColumnDef::mutable_fdwoptions() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ColumnDef.fdwoptions) - return &_impl_.fdwoptions_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreatePLangStmt::_internal_mutable_plvalidator() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.plvalidator_; } -inline const ::pg_query::Node& ColumnDef::_internal_fdwoptions(int index) const { - return _impl_.fdwoptions_.Get(index); + +// bool pltrusted = 6 [json_name = "pltrusted"]; +inline void CreatePLangStmt::clear_pltrusted() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pltrusted_ = false; } -inline const ::pg_query::Node& ColumnDef::fdwoptions(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.fdwoptions) - return _internal_fdwoptions(index); +inline bool CreatePLangStmt::pltrusted() const { + // @@protoc_insertion_point(field_get:pg_query.CreatePLangStmt.pltrusted) + return _internal_pltrusted(); } -inline ::pg_query::Node* ColumnDef::_internal_add_fdwoptions() { - return _impl_.fdwoptions_.Add(); +inline void CreatePLangStmt::set_pltrusted(bool value) { + _internal_set_pltrusted(value); + // @@protoc_insertion_point(field_set:pg_query.CreatePLangStmt.pltrusted) } -inline ::pg_query::Node* ColumnDef::add_fdwoptions() { - ::pg_query::Node* _add = _internal_add_fdwoptions(); - // @@protoc_insertion_point(field_add:pg_query.ColumnDef.fdwoptions) - return _add; +inline bool CreatePLangStmt::_internal_pltrusted() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.pltrusted_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ColumnDef::fdwoptions() const { - // @@protoc_insertion_point(field_list:pg_query.ColumnDef.fdwoptions) - return _impl_.fdwoptions_; +inline void CreatePLangStmt::_internal_set_pltrusted(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.pltrusted_ = value; } -// int32 location = 18 [json_name = "location"]; -inline void ColumnDef::clear_location() { - _impl_.location_ = 0; +// ------------------------------------------------------------------- + +// CreateRoleStmt + +// .pg_query.RoleStmtType stmt_type = 1 [json_name = "stmt_type"]; +inline void CreateRoleStmt::clear_stmt_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.stmt_type_ = 0; } -inline int32_t ColumnDef::_internal_location() const { - return _impl_.location_; +inline ::pg_query::RoleStmtType CreateRoleStmt::stmt_type() const { + // @@protoc_insertion_point(field_get:pg_query.CreateRoleStmt.stmt_type) + return _internal_stmt_type(); } -inline int32_t ColumnDef::location() const { - // @@protoc_insertion_point(field_get:pg_query.ColumnDef.location) - return _internal_location(); +inline void CreateRoleStmt::set_stmt_type(::pg_query::RoleStmtType value) { + _internal_set_stmt_type(value); + // @@protoc_insertion_point(field_set:pg_query.CreateRoleStmt.stmt_type) } -inline void ColumnDef::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::RoleStmtType CreateRoleStmt::_internal_stmt_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::RoleStmtType>(_impl_.stmt_type_); } -inline void ColumnDef::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.ColumnDef.location) +inline void CreateRoleStmt::_internal_set_stmt_type(::pg_query::RoleStmtType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.stmt_type_ = value; } -// ------------------------------------------------------------------- - -// IndexElem - -// string name = 1 [json_name = "name"]; -inline void IndexElem::clear_name() { - _impl_.name_.ClearToEmpty(); +// string role = 2 [json_name = "role"]; +inline void CreateRoleStmt::clear_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.role_.ClearToEmpty(); } -inline const std::string& IndexElem::name() const { - // @@protoc_insertion_point(field_get:pg_query.IndexElem.name) - return _internal_name(); +inline const std::string& CreateRoleStmt::role() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateRoleStmt.role) + return _internal_role(); } -template -inline PROTOBUF_ALWAYS_INLINE -void IndexElem::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.IndexElem.name) +template +inline PROTOBUF_ALWAYS_INLINE void CreateRoleStmt::set_role(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.role_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateRoleStmt.role) } -inline std::string* IndexElem::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.name) +inline std::string* CreateRoleStmt::mutable_role() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_role(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateRoleStmt.role) return _s; } -inline const std::string& IndexElem::_internal_name() const { - return _impl_.name_.Get(); +inline const std::string& CreateRoleStmt::_internal_role() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.role_.Get(); } -inline void IndexElem::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void CreateRoleStmt::_internal_set_role(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.role_.Set(value, GetArena()); } -inline std::string* IndexElem::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline std::string* CreateRoleStmt::_internal_mutable_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.role_.Mutable( GetArena()); } -inline std::string* IndexElem::release_name() { - // @@protoc_insertion_point(field_release:pg_query.IndexElem.name) - return _impl_.name_.Release(); +inline std::string* CreateRoleStmt::release_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateRoleStmt.role) + return _impl_.role_.Release(); } -inline void IndexElem::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.IndexElem.name) +inline void CreateRoleStmt::set_allocated_role(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.role_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.role_.IsDefault()) { + _impl_.role_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateRoleStmt.role) } -// .pg_query.Node expr = 2 [json_name = "expr"]; -inline bool IndexElem::_internal_has_expr() const { - return this != internal_default_instance() && _impl_.expr_ != nullptr; +// repeated .pg_query.Node options = 3 [json_name = "options"]; +inline int CreateRoleStmt::_internal_options_size() const { + return _internal_options().size(); } -inline bool IndexElem::has_expr() const { - return _internal_has_expr(); +inline int CreateRoleStmt::options_size() const { + return _internal_options_size(); } -inline void IndexElem::clear_expr() { - if (GetArenaForAllocation() == nullptr && _impl_.expr_ != nullptr) { - delete _impl_.expr_; - } - _impl_.expr_ = nullptr; +inline void CreateRoleStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline const ::pg_query::Node& IndexElem::_internal_expr() const { - const ::pg_query::Node* p = _impl_.expr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::Node* CreateRoleStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateRoleStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline const ::pg_query::Node& IndexElem::expr() const { - // @@protoc_insertion_point(field_get:pg_query.IndexElem.expr) - return _internal_expr(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateRoleStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateRoleStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& CreateRoleStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateRoleStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* CreateRoleStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateRoleStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateRoleStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateRoleStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateRoleStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateRoleStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} + +// ------------------------------------------------------------------- + +// AlterRoleStmt + +// .pg_query.RoleSpec role = 1 [json_name = "role"]; +inline bool AlterRoleStmt::has_role() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.role_ != nullptr); + return value; +} +inline void AlterRoleStmt::clear_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.role_ != nullptr) _impl_.role_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RoleSpec& AlterRoleStmt::_internal_role() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.role_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); } -inline void IndexElem::unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.expr_); +inline const ::pg_query::RoleSpec& AlterRoleStmt::role() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterRoleStmt.role) + return _internal_role(); +} +inline void AlterRoleStmt::unsafe_arena_set_allocated_role(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.role_); } - _impl_.expr_ = expr; - if (expr) { - + _impl_.role_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IndexElem.expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterRoleStmt.role) } -inline ::pg_query::Node* IndexElem::release_expr() { - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; +inline ::pg_query::RoleSpec* AlterRoleStmt::release_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.role_; + _impl_.role_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* IndexElem::unsafe_arena_release_expr() { - // @@protoc_insertion_point(field_release:pg_query.IndexElem.expr) - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; +inline ::pg_query::RoleSpec* AlterRoleStmt::unsafe_arena_release_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterRoleStmt.role) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.role_; + _impl_.role_ = nullptr; return temp; } -inline ::pg_query::Node* IndexElem::_internal_mutable_expr() { - - if (_impl_.expr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.expr_ = p; +inline ::pg_query::RoleSpec* AlterRoleStmt::_internal_mutable_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.role_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.role_ = reinterpret_cast<::pg_query::RoleSpec*>(p); } - return _impl_.expr_; + return _impl_.role_; } -inline ::pg_query::Node* IndexElem::mutable_expr() { - ::pg_query::Node* _msg = _internal_mutable_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.expr) +inline ::pg_query::RoleSpec* AlterRoleStmt::mutable_role() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_role(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleStmt.role) return _msg; } -inline void IndexElem::set_allocated_expr(::pg_query::Node* expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterRoleStmt::set_allocated_role(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.expr_; + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.role_); } - if (expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(expr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); if (message_arena != submessage_arena) { - expr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, expr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.expr_ = expr; - // @@protoc_insertion_point(field_set_allocated:pg_query.IndexElem.expr) -} -// string indexcolname = 3 [json_name = "indexcolname"]; -inline void IndexElem::clear_indexcolname() { - _impl_.indexcolname_.ClearToEmpty(); -} -inline const std::string& IndexElem::indexcolname() const { - // @@protoc_insertion_point(field_get:pg_query.IndexElem.indexcolname) - return _internal_indexcolname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void IndexElem::set_indexcolname(ArgT0&& arg0, ArgT... args) { - - _impl_.indexcolname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.IndexElem.indexcolname) -} -inline std::string* IndexElem::mutable_indexcolname() { - std::string* _s = _internal_mutable_indexcolname(); - // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.indexcolname) - return _s; -} -inline const std::string& IndexElem::_internal_indexcolname() const { - return _impl_.indexcolname_.Get(); -} -inline void IndexElem::_internal_set_indexcolname(const std::string& value) { - - _impl_.indexcolname_.Set(value, GetArenaForAllocation()); -} -inline std::string* IndexElem::_internal_mutable_indexcolname() { - - return _impl_.indexcolname_.Mutable(GetArenaForAllocation()); -} -inline std::string* IndexElem::release_indexcolname() { - // @@protoc_insertion_point(field_release:pg_query.IndexElem.indexcolname) - return _impl_.indexcolname_.Release(); -} -inline void IndexElem::set_allocated_indexcolname(std::string* indexcolname) { - if (indexcolname != nullptr) { - - } else { - - } - _impl_.indexcolname_.SetAllocated(indexcolname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.indexcolname_.IsDefault()) { - _impl_.indexcolname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.IndexElem.indexcolname) + _impl_.role_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterRoleStmt.role) } -// repeated .pg_query.Node collation = 4 [json_name = "collation"]; -inline int IndexElem::_internal_collation_size() const { - return _impl_.collation_.size(); -} -inline int IndexElem::collation_size() const { - return _internal_collation_size(); -} -inline void IndexElem::clear_collation() { - _impl_.collation_.Clear(); +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int AlterRoleStmt::_internal_options_size() const { + return _internal_options().size(); } -inline ::pg_query::Node* IndexElem::mutable_collation(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.collation) - return _impl_.collation_.Mutable(index); +inline int AlterRoleStmt::options_size() const { + return _internal_options_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IndexElem::mutable_collation() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IndexElem.collation) - return &_impl_.collation_; +inline void AlterRoleStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline const ::pg_query::Node& IndexElem::_internal_collation(int index) const { - return _impl_.collation_.Get(index); +inline ::pg_query::Node* AlterRoleStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline const ::pg_query::Node& IndexElem::collation(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IndexElem.collation) - return _internal_collation(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterRoleStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterRoleStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline ::pg_query::Node* IndexElem::_internal_add_collation() { - return _impl_.collation_.Add(); +inline const ::pg_query::Node& AlterRoleStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterRoleStmt.options) + return _internal_options().Get(index); } -inline ::pg_query::Node* IndexElem::add_collation() { - ::pg_query::Node* _add = _internal_add_collation(); - // @@protoc_insertion_point(field_add:pg_query.IndexElem.collation) +inline ::pg_query::Node* AlterRoleStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterRoleStmt.options) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IndexElem::collation() const { - // @@protoc_insertion_point(field_list:pg_query.IndexElem.collation) - return _impl_.collation_; -} - -// repeated .pg_query.Node opclass = 5 [json_name = "opclass"]; -inline int IndexElem::_internal_opclass_size() const { - return _impl_.opclass_.size(); -} -inline int IndexElem::opclass_size() const { - return _internal_opclass_size(); -} -inline void IndexElem::clear_opclass() { - _impl_.opclass_.Clear(); -} -inline ::pg_query::Node* IndexElem::mutable_opclass(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.opclass) - return _impl_.opclass_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IndexElem::mutable_opclass() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IndexElem.opclass) - return &_impl_.opclass_; -} -inline const ::pg_query::Node& IndexElem::_internal_opclass(int index) const { - return _impl_.opclass_.Get(index); -} -inline const ::pg_query::Node& IndexElem::opclass(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IndexElem.opclass) - return _internal_opclass(index); -} -inline ::pg_query::Node* IndexElem::_internal_add_opclass() { - return _impl_.opclass_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterRoleStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterRoleStmt.options) + return _internal_options(); } -inline ::pg_query::Node* IndexElem::add_opclass() { - ::pg_query::Node* _add = _internal_add_opclass(); - // @@protoc_insertion_point(field_add:pg_query.IndexElem.opclass) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterRoleStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IndexElem::opclass() const { - // @@protoc_insertion_point(field_list:pg_query.IndexElem.opclass) - return _impl_.opclass_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterRoleStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// repeated .pg_query.Node opclassopts = 6 [json_name = "opclassopts"]; -inline int IndexElem::_internal_opclassopts_size() const { - return _impl_.opclassopts_.size(); -} -inline int IndexElem::opclassopts_size() const { - return _internal_opclassopts_size(); -} -inline void IndexElem::clear_opclassopts() { - _impl_.opclassopts_.Clear(); -} -inline ::pg_query::Node* IndexElem::mutable_opclassopts(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.IndexElem.opclassopts) - return _impl_.opclassopts_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -IndexElem::mutable_opclassopts() { - // @@protoc_insertion_point(field_mutable_list:pg_query.IndexElem.opclassopts) - return &_impl_.opclassopts_; -} -inline const ::pg_query::Node& IndexElem::_internal_opclassopts(int index) const { - return _impl_.opclassopts_.Get(index); +// int32 action = 3 [json_name = "action"]; +inline void AlterRoleStmt::clear_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.action_ = 0; } -inline const ::pg_query::Node& IndexElem::opclassopts(int index) const { - // @@protoc_insertion_point(field_get:pg_query.IndexElem.opclassopts) - return _internal_opclassopts(index); +inline ::int32_t AlterRoleStmt::action() const { + // @@protoc_insertion_point(field_get:pg_query.AlterRoleStmt.action) + return _internal_action(); } -inline ::pg_query::Node* IndexElem::_internal_add_opclassopts() { - return _impl_.opclassopts_.Add(); +inline void AlterRoleStmt::set_action(::int32_t value) { + _internal_set_action(value); + // @@protoc_insertion_point(field_set:pg_query.AlterRoleStmt.action) } -inline ::pg_query::Node* IndexElem::add_opclassopts() { - ::pg_query::Node* _add = _internal_add_opclassopts(); - // @@protoc_insertion_point(field_add:pg_query.IndexElem.opclassopts) - return _add; +inline ::int32_t AlterRoleStmt::_internal_action() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.action_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -IndexElem::opclassopts() const { - // @@protoc_insertion_point(field_list:pg_query.IndexElem.opclassopts) - return _impl_.opclassopts_; +inline void AlterRoleStmt::_internal_set_action(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.action_ = value; } -// .pg_query.SortByDir ordering = 7 [json_name = "ordering"]; -inline void IndexElem::clear_ordering() { - _impl_.ordering_ = 0; +// ------------------------------------------------------------------- + +// AlterRoleSetStmt + +// .pg_query.RoleSpec role = 1 [json_name = "role"]; +inline bool AlterRoleSetStmt::has_role() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.role_ != nullptr); + return value; } -inline ::pg_query::SortByDir IndexElem::_internal_ordering() const { - return static_cast< ::pg_query::SortByDir >(_impl_.ordering_); +inline void AlterRoleSetStmt::clear_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.role_ != nullptr) _impl_.role_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::SortByDir IndexElem::ordering() const { - // @@protoc_insertion_point(field_get:pg_query.IndexElem.ordering) - return _internal_ordering(); +inline const ::pg_query::RoleSpec& AlterRoleSetStmt::_internal_role() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.role_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); } -inline void IndexElem::_internal_set_ordering(::pg_query::SortByDir value) { - - _impl_.ordering_ = value; +inline const ::pg_query::RoleSpec& AlterRoleSetStmt::role() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterRoleSetStmt.role) + return _internal_role(); } -inline void IndexElem::set_ordering(::pg_query::SortByDir value) { - _internal_set_ordering(value); - // @@protoc_insertion_point(field_set:pg_query.IndexElem.ordering) +inline void AlterRoleSetStmt::unsafe_arena_set_allocated_role(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.role_); + } + _impl_.role_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterRoleSetStmt.role) } +inline ::pg_query::RoleSpec* AlterRoleSetStmt::release_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// .pg_query.SortByNulls nulls_ordering = 8 [json_name = "nulls_ordering"]; -inline void IndexElem::clear_nulls_ordering() { - _impl_.nulls_ordering_ = 0; -} -inline ::pg_query::SortByNulls IndexElem::_internal_nulls_ordering() const { - return static_cast< ::pg_query::SortByNulls >(_impl_.nulls_ordering_); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.role_; + _impl_.role_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::SortByNulls IndexElem::nulls_ordering() const { - // @@protoc_insertion_point(field_get:pg_query.IndexElem.nulls_ordering) - return _internal_nulls_ordering(); +inline ::pg_query::RoleSpec* AlterRoleSetStmt::unsafe_arena_release_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterRoleSetStmt.role) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.role_; + _impl_.role_ = nullptr; + return temp; } -inline void IndexElem::_internal_set_nulls_ordering(::pg_query::SortByNulls value) { - - _impl_.nulls_ordering_ = value; +inline ::pg_query::RoleSpec* AlterRoleSetStmt::_internal_mutable_role() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.role_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.role_ = reinterpret_cast<::pg_query::RoleSpec*>(p); + } + return _impl_.role_; } -inline void IndexElem::set_nulls_ordering(::pg_query::SortByNulls value) { - _internal_set_nulls_ordering(value); - // @@protoc_insertion_point(field_set:pg_query.IndexElem.nulls_ordering) +inline ::pg_query::RoleSpec* AlterRoleSetStmt::mutable_role() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_role(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleSetStmt.role) + return _msg; } +inline void AlterRoleSetStmt::set_allocated_role(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.role_); + } -// ------------------------------------------------------------------- - -// StatsElem + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// string name = 1 [json_name = "name"]; -inline void StatsElem::clear_name() { - _impl_.name_.ClearToEmpty(); + _impl_.role_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterRoleSetStmt.role) } -inline const std::string& StatsElem::name() const { - // @@protoc_insertion_point(field_get:pg_query.StatsElem.name) - return _internal_name(); + +// string database = 2 [json_name = "database"]; +inline void AlterRoleSetStmt::clear_database() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.database_.ClearToEmpty(); } -template -inline PROTOBUF_ALWAYS_INLINE -void StatsElem::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.StatsElem.name) +inline const std::string& AlterRoleSetStmt::database() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterRoleSetStmt.database) + return _internal_database(); } -inline std::string* StatsElem::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.StatsElem.name) +template +inline PROTOBUF_ALWAYS_INLINE void AlterRoleSetStmt::set_database(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.database_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterRoleSetStmt.database) +} +inline std::string* AlterRoleSetStmt::mutable_database() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_database(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleSetStmt.database) return _s; } -inline const std::string& StatsElem::_internal_name() const { - return _impl_.name_.Get(); +inline const std::string& AlterRoleSetStmt::_internal_database() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.database_.Get(); } -inline void StatsElem::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void AlterRoleSetStmt::_internal_set_database(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.database_.Set(value, GetArena()); } -inline std::string* StatsElem::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline std::string* AlterRoleSetStmt::_internal_mutable_database() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.database_.Mutable( GetArena()); } -inline std::string* StatsElem::release_name() { - // @@protoc_insertion_point(field_release:pg_query.StatsElem.name) - return _impl_.name_.Release(); +inline std::string* AlterRoleSetStmt::release_database() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterRoleSetStmt.database) + return _impl_.database_.Release(); } -inline void StatsElem::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.StatsElem.name) +inline void AlterRoleSetStmt::set_allocated_database(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.database_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.database_.IsDefault()) { + _impl_.database_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterRoleSetStmt.database) } -// .pg_query.Node expr = 2 [json_name = "expr"]; -inline bool StatsElem::_internal_has_expr() const { - return this != internal_default_instance() && _impl_.expr_ != nullptr; -} -inline bool StatsElem::has_expr() const { - return _internal_has_expr(); +// .pg_query.VariableSetStmt setstmt = 3 [json_name = "setstmt"]; +inline bool AlterRoleSetStmt::has_setstmt() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.setstmt_ != nullptr); + return value; } -inline void StatsElem::clear_expr() { - if (GetArenaForAllocation() == nullptr && _impl_.expr_ != nullptr) { - delete _impl_.expr_; - } - _impl_.expr_ = nullptr; +inline void AlterRoleSetStmt::clear_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.setstmt_ != nullptr) _impl_.setstmt_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& StatsElem::_internal_expr() const { - const ::pg_query::Node* p = _impl_.expr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::VariableSetStmt& AlterRoleSetStmt::_internal_setstmt() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::VariableSetStmt* p = _impl_.setstmt_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_VariableSetStmt_default_instance_); } -inline const ::pg_query::Node& StatsElem::expr() const { - // @@protoc_insertion_point(field_get:pg_query.StatsElem.expr) - return _internal_expr(); +inline const ::pg_query::VariableSetStmt& AlterRoleSetStmt::setstmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterRoleSetStmt.setstmt) + return _internal_setstmt(); } -inline void StatsElem::unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.expr_); +inline void AlterRoleSetStmt::unsafe_arena_set_allocated_setstmt(::pg_query::VariableSetStmt* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.setstmt_); } - _impl_.expr_ = expr; - if (expr) { - + _impl_.setstmt_ = reinterpret_cast<::pg_query::VariableSetStmt*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.StatsElem.expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterRoleSetStmt.setstmt) } -inline ::pg_query::Node* StatsElem::release_expr() { - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; +inline ::pg_query::VariableSetStmt* AlterRoleSetStmt::release_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::VariableSetStmt* released = _impl_.setstmt_; + _impl_.setstmt_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* StatsElem::unsafe_arena_release_expr() { - // @@protoc_insertion_point(field_release:pg_query.StatsElem.expr) - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; +inline ::pg_query::VariableSetStmt* AlterRoleSetStmt::unsafe_arena_release_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterRoleSetStmt.setstmt) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::VariableSetStmt* temp = _impl_.setstmt_; + _impl_.setstmt_ = nullptr; return temp; } -inline ::pg_query::Node* StatsElem::_internal_mutable_expr() { - - if (_impl_.expr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.expr_ = p; +inline ::pg_query::VariableSetStmt* AlterRoleSetStmt::_internal_mutable_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.setstmt_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::VariableSetStmt>(GetArena()); + _impl_.setstmt_ = reinterpret_cast<::pg_query::VariableSetStmt*>(p); } - return _impl_.expr_; + return _impl_.setstmt_; } -inline ::pg_query::Node* StatsElem::mutable_expr() { - ::pg_query::Node* _msg = _internal_mutable_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.StatsElem.expr) +inline ::pg_query::VariableSetStmt* AlterRoleSetStmt::mutable_setstmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::VariableSetStmt* _msg = _internal_mutable_setstmt(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterRoleSetStmt.setstmt) return _msg; } -inline void StatsElem::set_allocated_expr(::pg_query::Node* expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterRoleSetStmt::set_allocated_setstmt(::pg_query::VariableSetStmt* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.expr_; + delete reinterpret_cast<::pg_query::VariableSetStmt*>(_impl_.setstmt_); } - if (expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(expr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::VariableSetStmt*>(value)->GetArena(); if (message_arena != submessage_arena) { - expr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, expr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.expr_ = expr; - // @@protoc_insertion_point(field_set_allocated:pg_query.StatsElem.expr) + + _impl_.setstmt_ = reinterpret_cast<::pg_query::VariableSetStmt*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterRoleSetStmt.setstmt) } // ------------------------------------------------------------------- -// Constraint +// DropRoleStmt -// .pg_query.ConstrType contype = 1 [json_name = "contype"]; -inline void Constraint::clear_contype() { - _impl_.contype_ = 0; +// repeated .pg_query.Node roles = 1 [json_name = "roles"]; +inline int DropRoleStmt::_internal_roles_size() const { + return _internal_roles().size(); } -inline ::pg_query::ConstrType Constraint::_internal_contype() const { - return static_cast< ::pg_query::ConstrType >(_impl_.contype_); +inline int DropRoleStmt::roles_size() const { + return _internal_roles_size(); } -inline ::pg_query::ConstrType Constraint::contype() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.contype) - return _internal_contype(); +inline void DropRoleStmt::clear_roles() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.roles_.Clear(); } -inline void Constraint::_internal_set_contype(::pg_query::ConstrType value) { - - _impl_.contype_ = value; +inline ::pg_query::Node* DropRoleStmt::mutable_roles(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DropRoleStmt.roles) + return _internal_mutable_roles()->Mutable(index); } -inline void Constraint::set_contype(::pg_query::ConstrType value) { - _internal_set_contype(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.contype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DropRoleStmt::mutable_roles() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DropRoleStmt.roles) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_roles(); +} +inline const ::pg_query::Node& DropRoleStmt::roles(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DropRoleStmt.roles) + return _internal_roles().Get(index); +} +inline ::pg_query::Node* DropRoleStmt::add_roles() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_roles()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DropRoleStmt.roles) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DropRoleStmt::roles() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DropRoleStmt.roles) + return _internal_roles(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DropRoleStmt::_internal_roles() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.roles_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DropRoleStmt::_internal_mutable_roles() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.roles_; } -// string conname = 2 [json_name = "conname"]; -inline void Constraint::clear_conname() { - _impl_.conname_.ClearToEmpty(); +// bool missing_ok = 2 [json_name = "missing_ok"]; +inline void DropRoleStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline const std::string& Constraint::conname() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.conname) - return _internal_conname(); +inline bool DropRoleStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.DropRoleStmt.missing_ok) + return _internal_missing_ok(); } -template -inline PROTOBUF_ALWAYS_INLINE -void Constraint::set_conname(ArgT0&& arg0, ArgT... args) { - - _impl_.conname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Constraint.conname) +inline void DropRoleStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.DropRoleStmt.missing_ok) } -inline std::string* Constraint::mutable_conname() { - std::string* _s = _internal_mutable_conname(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.conname) - return _s; +inline bool DropRoleStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline const std::string& Constraint::_internal_conname() const { - return _impl_.conname_.Get(); +inline void DropRoleStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } -inline void Constraint::_internal_set_conname(const std::string& value) { - - _impl_.conname_.Set(value, GetArenaForAllocation()); + +// ------------------------------------------------------------------- + +// CreateSeqStmt + +// .pg_query.RangeVar sequence = 1 [json_name = "sequence"]; +inline bool CreateSeqStmt::has_sequence() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.sequence_ != nullptr); + return value; } -inline std::string* Constraint::_internal_mutable_conname() { - - return _impl_.conname_.Mutable(GetArenaForAllocation()); +inline void CreateSeqStmt::clear_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.sequence_ != nullptr) _impl_.sequence_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* Constraint::release_conname() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.conname) - return _impl_.conname_.Release(); +inline const ::pg_query::RangeVar& CreateSeqStmt::_internal_sequence() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.sequence_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline void Constraint::set_allocated_conname(std::string* conname) { - if (conname != nullptr) { - - } else { - +inline const ::pg_query::RangeVar& CreateSeqStmt::sequence() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.sequence) + return _internal_sequence(); +} +inline void CreateSeqStmt::unsafe_arena_set_allocated_sequence(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.sequence_); } - _impl_.conname_.SetAllocated(conname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.conname_.IsDefault()) { - _impl_.conname_.Set("", GetArenaForAllocation()); + _impl_.sequence_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.conname) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateSeqStmt.sequence) } +inline ::pg_query::RangeVar* CreateSeqStmt::release_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool deferrable = 3 [json_name = "deferrable"]; -inline void Constraint::clear_deferrable() { - _impl_.deferrable_ = false; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.sequence_; + _impl_.sequence_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool Constraint::_internal_deferrable() const { - return _impl_.deferrable_; +inline ::pg_query::RangeVar* CreateSeqStmt::unsafe_arena_release_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateSeqStmt.sequence) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.sequence_; + _impl_.sequence_ = nullptr; + return temp; } -inline bool Constraint::deferrable() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.deferrable) - return _internal_deferrable(); +inline ::pg_query::RangeVar* CreateSeqStmt::_internal_mutable_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.sequence_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.sequence_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.sequence_; } -inline void Constraint::_internal_set_deferrable(bool value) { - - _impl_.deferrable_ = value; +inline ::pg_query::RangeVar* CreateSeqStmt::mutable_sequence() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_sequence(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateSeqStmt.sequence) + return _msg; } -inline void Constraint::set_deferrable(bool value) { - _internal_set_deferrable(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.deferrable) +inline void CreateSeqStmt::set_allocated_sequence(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.sequence_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.sequence_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSeqStmt.sequence) } -// bool initdeferred = 4 [json_name = "initdeferred"]; -inline void Constraint::clear_initdeferred() { - _impl_.initdeferred_ = false; +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int CreateSeqStmt::_internal_options_size() const { + return _internal_options().size(); } -inline bool Constraint::_internal_initdeferred() const { - return _impl_.initdeferred_; +inline int CreateSeqStmt::options_size() const { + return _internal_options_size(); } -inline bool Constraint::initdeferred() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.initdeferred) - return _internal_initdeferred(); +inline void CreateSeqStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void Constraint::_internal_set_initdeferred(bool value) { - - _impl_.initdeferred_ = value; +inline ::pg_query::Node* CreateSeqStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateSeqStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void Constraint::set_initdeferred(bool value) { - _internal_set_initdeferred(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.initdeferred) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateSeqStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateSeqStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& CreateSeqStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* CreateSeqStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateSeqStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateSeqStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateSeqStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateSeqStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateSeqStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// int32 location = 5 [json_name = "location"]; -inline void Constraint::clear_location() { - _impl_.location_ = 0; +// uint32 owner_id = 3 [json_name = "ownerId"]; +inline void CreateSeqStmt::clear_owner_id() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.owner_id_ = 0u; } -inline int32_t Constraint::_internal_location() const { - return _impl_.location_; +inline ::uint32_t CreateSeqStmt::owner_id() const { + // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.owner_id) + return _internal_owner_id(); } -inline int32_t Constraint::location() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.location) - return _internal_location(); +inline void CreateSeqStmt::set_owner_id(::uint32_t value) { + _internal_set_owner_id(value); + // @@protoc_insertion_point(field_set:pg_query.CreateSeqStmt.owner_id) } -inline void Constraint::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::uint32_t CreateSeqStmt::_internal_owner_id() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.owner_id_; } -inline void Constraint::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.location) +inline void CreateSeqStmt::_internal_set_owner_id(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.owner_id_ = value; } -// bool is_no_inherit = 6 [json_name = "is_no_inherit"]; -inline void Constraint::clear_is_no_inherit() { - _impl_.is_no_inherit_ = false; +// bool for_identity = 4 [json_name = "for_identity"]; +inline void CreateSeqStmt::clear_for_identity() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.for_identity_ = false; } -inline bool Constraint::_internal_is_no_inherit() const { - return _impl_.is_no_inherit_; +inline bool CreateSeqStmt::for_identity() const { + // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.for_identity) + return _internal_for_identity(); } -inline bool Constraint::is_no_inherit() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.is_no_inherit) - return _internal_is_no_inherit(); +inline void CreateSeqStmt::set_for_identity(bool value) { + _internal_set_for_identity(value); + // @@protoc_insertion_point(field_set:pg_query.CreateSeqStmt.for_identity) } -inline void Constraint::_internal_set_is_no_inherit(bool value) { - - _impl_.is_no_inherit_ = value; +inline bool CreateSeqStmt::_internal_for_identity() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.for_identity_; } -inline void Constraint::set_is_no_inherit(bool value) { - _internal_set_is_no_inherit(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.is_no_inherit) +inline void CreateSeqStmt::_internal_set_for_identity(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.for_identity_ = value; } -// .pg_query.Node raw_expr = 7 [json_name = "raw_expr"]; -inline bool Constraint::_internal_has_raw_expr() const { - return this != internal_default_instance() && _impl_.raw_expr_ != nullptr; +// bool if_not_exists = 5 [json_name = "if_not_exists"]; +inline void CreateSeqStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; } -inline bool Constraint::has_raw_expr() const { - return _internal_has_raw_expr(); +inline bool CreateSeqStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.CreateSeqStmt.if_not_exists) + return _internal_if_not_exists(); } -inline void Constraint::clear_raw_expr() { - if (GetArenaForAllocation() == nullptr && _impl_.raw_expr_ != nullptr) { - delete _impl_.raw_expr_; - } - _impl_.raw_expr_ = nullptr; +inline void CreateSeqStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.CreateSeqStmt.if_not_exists) } -inline const ::pg_query::Node& Constraint::_internal_raw_expr() const { - const ::pg_query::Node* p = _impl_.raw_expr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline bool CreateSeqStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; } -inline const ::pg_query::Node& Constraint::raw_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.raw_expr) - return _internal_raw_expr(); +inline void CreateSeqStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; +} + +// ------------------------------------------------------------------- + +// AlterSeqStmt + +// .pg_query.RangeVar sequence = 1 [json_name = "sequence"]; +inline bool AlterSeqStmt::has_sequence() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.sequence_ != nullptr); + return value; +} +inline void AlterSeqStmt::clear_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.sequence_ != nullptr) _impl_.sequence_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RangeVar& AlterSeqStmt::_internal_sequence() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.sequence_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline void Constraint::unsafe_arena_set_allocated_raw_expr( - ::pg_query::Node* raw_expr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.raw_expr_); +inline const ::pg_query::RangeVar& AlterSeqStmt::sequence() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterSeqStmt.sequence) + return _internal_sequence(); +} +inline void AlterSeqStmt::unsafe_arena_set_allocated_sequence(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.sequence_); } - _impl_.raw_expr_ = raw_expr; - if (raw_expr) { - + _impl_.sequence_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Constraint.raw_expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterSeqStmt.sequence) } -inline ::pg_query::Node* Constraint::release_raw_expr() { - - ::pg_query::Node* temp = _impl_.raw_expr_; - _impl_.raw_expr_ = nullptr; +inline ::pg_query::RangeVar* AlterSeqStmt::release_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.sequence_; + _impl_.sequence_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* Constraint::unsafe_arena_release_raw_expr() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.raw_expr) - - ::pg_query::Node* temp = _impl_.raw_expr_; - _impl_.raw_expr_ = nullptr; +inline ::pg_query::RangeVar* AlterSeqStmt::unsafe_arena_release_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterSeqStmt.sequence) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.sequence_; + _impl_.sequence_ = nullptr; return temp; } -inline ::pg_query::Node* Constraint::_internal_mutable_raw_expr() { - - if (_impl_.raw_expr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.raw_expr_ = p; +inline ::pg_query::RangeVar* AlterSeqStmt::_internal_mutable_sequence() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.sequence_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.sequence_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.raw_expr_; + return _impl_.sequence_; } -inline ::pg_query::Node* Constraint::mutable_raw_expr() { - ::pg_query::Node* _msg = _internal_mutable_raw_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.raw_expr) +inline ::pg_query::RangeVar* AlterSeqStmt::mutable_sequence() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_sequence(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterSeqStmt.sequence) return _msg; } -inline void Constraint::set_allocated_raw_expr(::pg_query::Node* raw_expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterSeqStmt::set_allocated_sequence(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.raw_expr_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.sequence_); } - if (raw_expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(raw_expr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - raw_expr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, raw_expr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.raw_expr_ = raw_expr; - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.raw_expr) -} -// string cooked_expr = 8 [json_name = "cooked_expr"]; -inline void Constraint::clear_cooked_expr() { - _impl_.cooked_expr_.ClearToEmpty(); -} -inline const std::string& Constraint::cooked_expr() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.cooked_expr) - return _internal_cooked_expr(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void Constraint::set_cooked_expr(ArgT0&& arg0, ArgT... args) { - - _impl_.cooked_expr_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Constraint.cooked_expr) -} -inline std::string* Constraint::mutable_cooked_expr() { - std::string* _s = _internal_mutable_cooked_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.cooked_expr) - return _s; -} -inline const std::string& Constraint::_internal_cooked_expr() const { - return _impl_.cooked_expr_.Get(); -} -inline void Constraint::_internal_set_cooked_expr(const std::string& value) { - - _impl_.cooked_expr_.Set(value, GetArenaForAllocation()); -} -inline std::string* Constraint::_internal_mutable_cooked_expr() { - - return _impl_.cooked_expr_.Mutable(GetArenaForAllocation()); -} -inline std::string* Constraint::release_cooked_expr() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.cooked_expr) - return _impl_.cooked_expr_.Release(); -} -inline void Constraint::set_allocated_cooked_expr(std::string* cooked_expr) { - if (cooked_expr != nullptr) { - - } else { - - } - _impl_.cooked_expr_.SetAllocated(cooked_expr, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.cooked_expr_.IsDefault()) { - _impl_.cooked_expr_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.cooked_expr) + _impl_.sequence_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterSeqStmt.sequence) } -// string generated_when = 9 [json_name = "generated_when"]; -inline void Constraint::clear_generated_when() { - _impl_.generated_when_.ClearToEmpty(); -} -inline const std::string& Constraint::generated_when() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.generated_when) - return _internal_generated_when(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void Constraint::set_generated_when(ArgT0&& arg0, ArgT... args) { - - _impl_.generated_when_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Constraint.generated_when) -} -inline std::string* Constraint::mutable_generated_when() { - std::string* _s = _internal_mutable_generated_when(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.generated_when) - return _s; -} -inline const std::string& Constraint::_internal_generated_when() const { - return _impl_.generated_when_.Get(); +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int AlterSeqStmt::_internal_options_size() const { + return _internal_options().size(); } -inline void Constraint::_internal_set_generated_when(const std::string& value) { - - _impl_.generated_when_.Set(value, GetArenaForAllocation()); +inline int AlterSeqStmt::options_size() const { + return _internal_options_size(); } -inline std::string* Constraint::_internal_mutable_generated_when() { - - return _impl_.generated_when_.Mutable(GetArenaForAllocation()); +inline void AlterSeqStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline std::string* Constraint::release_generated_when() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.generated_when) - return _impl_.generated_when_.Release(); +inline ::pg_query::Node* AlterSeqStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterSeqStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void Constraint::set_allocated_generated_when(std::string* generated_when) { - if (generated_when != nullptr) { - - } else { - - } - _impl_.generated_when_.SetAllocated(generated_when, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.generated_when_.IsDefault()) { - _impl_.generated_when_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.generated_when) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterSeqStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterSeqStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } - -// bool nulls_not_distinct = 10 [json_name = "nulls_not_distinct"]; -inline void Constraint::clear_nulls_not_distinct() { - _impl_.nulls_not_distinct_ = false; +inline const ::pg_query::Node& AlterSeqStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterSeqStmt.options) + return _internal_options().Get(index); } -inline bool Constraint::_internal_nulls_not_distinct() const { - return _impl_.nulls_not_distinct_; +inline ::pg_query::Node* AlterSeqStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterSeqStmt.options) + return _add; } -inline bool Constraint::nulls_not_distinct() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.nulls_not_distinct) - return _internal_nulls_not_distinct(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterSeqStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterSeqStmt.options) + return _internal_options(); } -inline void Constraint::_internal_set_nulls_not_distinct(bool value) { - - _impl_.nulls_not_distinct_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterSeqStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline void Constraint::set_nulls_not_distinct(bool value) { - _internal_set_nulls_not_distinct(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.nulls_not_distinct) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterSeqStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// repeated .pg_query.Node keys = 11 [json_name = "keys"]; -inline int Constraint::_internal_keys_size() const { - return _impl_.keys_.size(); +// bool for_identity = 3 [json_name = "for_identity"]; +inline void AlterSeqStmt::clear_for_identity() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.for_identity_ = false; } -inline int Constraint::keys_size() const { - return _internal_keys_size(); +inline bool AlterSeqStmt::for_identity() const { + // @@protoc_insertion_point(field_get:pg_query.AlterSeqStmt.for_identity) + return _internal_for_identity(); } -inline void Constraint::clear_keys() { - _impl_.keys_.Clear(); +inline void AlterSeqStmt::set_for_identity(bool value) { + _internal_set_for_identity(value); + // @@protoc_insertion_point(field_set:pg_query.AlterSeqStmt.for_identity) } -inline ::pg_query::Node* Constraint::mutable_keys(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.keys) - return _impl_.keys_.Mutable(index); +inline bool AlterSeqStmt::_internal_for_identity() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.for_identity_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Constraint::mutable_keys() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.keys) - return &_impl_.keys_; +inline void AlterSeqStmt::_internal_set_for_identity(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.for_identity_ = value; } -inline const ::pg_query::Node& Constraint::_internal_keys(int index) const { - return _impl_.keys_.Get(index); + +// bool missing_ok = 4 [json_name = "missing_ok"]; +inline void AlterSeqStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline const ::pg_query::Node& Constraint::keys(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.keys) - return _internal_keys(index); +inline bool AlterSeqStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.AlterSeqStmt.missing_ok) + return _internal_missing_ok(); } -inline ::pg_query::Node* Constraint::_internal_add_keys() { - return _impl_.keys_.Add(); +inline void AlterSeqStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.AlterSeqStmt.missing_ok) } -inline ::pg_query::Node* Constraint::add_keys() { - ::pg_query::Node* _add = _internal_add_keys(); - // @@protoc_insertion_point(field_add:pg_query.Constraint.keys) - return _add; +inline bool AlterSeqStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Constraint::keys() const { - // @@protoc_insertion_point(field_list:pg_query.Constraint.keys) - return _impl_.keys_; +inline void AlterSeqStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } -// repeated .pg_query.Node including = 12 [json_name = "including"]; -inline int Constraint::_internal_including_size() const { - return _impl_.including_.size(); -} -inline int Constraint::including_size() const { - return _internal_including_size(); -} -inline void Constraint::clear_including() { - _impl_.including_.Clear(); +// ------------------------------------------------------------------- + +// DefineStmt + +// .pg_query.ObjectType kind = 1 [json_name = "kind"]; +inline void DefineStmt::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; } -inline ::pg_query::Node* Constraint::mutable_including(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.including) - return _impl_.including_.Mutable(index); +inline ::pg_query::ObjectType DefineStmt::kind() const { + // @@protoc_insertion_point(field_get:pg_query.DefineStmt.kind) + return _internal_kind(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Constraint::mutable_including() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.including) - return &_impl_.including_; +inline void DefineStmt::set_kind(::pg_query::ObjectType value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.DefineStmt.kind) } -inline const ::pg_query::Node& Constraint::_internal_including(int index) const { - return _impl_.including_.Get(index); +inline ::pg_query::ObjectType DefineStmt::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.kind_); } -inline const ::pg_query::Node& Constraint::including(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.including) - return _internal_including(index); +inline void DefineStmt::_internal_set_kind(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; } -inline ::pg_query::Node* Constraint::_internal_add_including() { - return _impl_.including_.Add(); + +// bool oldstyle = 2 [json_name = "oldstyle"]; +inline void DefineStmt::clear_oldstyle() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.oldstyle_ = false; } -inline ::pg_query::Node* Constraint::add_including() { - ::pg_query::Node* _add = _internal_add_including(); - // @@protoc_insertion_point(field_add:pg_query.Constraint.including) - return _add; +inline bool DefineStmt::oldstyle() const { + // @@protoc_insertion_point(field_get:pg_query.DefineStmt.oldstyle) + return _internal_oldstyle(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Constraint::including() const { - // @@protoc_insertion_point(field_list:pg_query.Constraint.including) - return _impl_.including_; +inline void DefineStmt::set_oldstyle(bool value) { + _internal_set_oldstyle(value); + // @@protoc_insertion_point(field_set:pg_query.DefineStmt.oldstyle) } - -// repeated .pg_query.Node exclusions = 13 [json_name = "exclusions"]; -inline int Constraint::_internal_exclusions_size() const { - return _impl_.exclusions_.size(); +inline bool DefineStmt::_internal_oldstyle() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.oldstyle_; } -inline int Constraint::exclusions_size() const { - return _internal_exclusions_size(); +inline void DefineStmt::_internal_set_oldstyle(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.oldstyle_ = value; } -inline void Constraint::clear_exclusions() { - _impl_.exclusions_.Clear(); + +// repeated .pg_query.Node defnames = 3 [json_name = "defnames"]; +inline int DefineStmt::_internal_defnames_size() const { + return _internal_defnames().size(); } -inline ::pg_query::Node* Constraint::mutable_exclusions(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.exclusions) - return _impl_.exclusions_.Mutable(index); +inline int DefineStmt::defnames_size() const { + return _internal_defnames_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Constraint::mutable_exclusions() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.exclusions) - return &_impl_.exclusions_; +inline void DefineStmt::clear_defnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.defnames_.Clear(); } -inline const ::pg_query::Node& Constraint::_internal_exclusions(int index) const { - return _impl_.exclusions_.Get(index); +inline ::pg_query::Node* DefineStmt::mutable_defnames(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DefineStmt.defnames) + return _internal_mutable_defnames()->Mutable(index); } -inline const ::pg_query::Node& Constraint::exclusions(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.exclusions) - return _internal_exclusions(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DefineStmt::mutable_defnames() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DefineStmt.defnames) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_defnames(); } -inline ::pg_query::Node* Constraint::_internal_add_exclusions() { - return _impl_.exclusions_.Add(); +inline const ::pg_query::Node& DefineStmt::defnames(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DefineStmt.defnames) + return _internal_defnames().Get(index); } -inline ::pg_query::Node* Constraint::add_exclusions() { - ::pg_query::Node* _add = _internal_add_exclusions(); - // @@protoc_insertion_point(field_add:pg_query.Constraint.exclusions) +inline ::pg_query::Node* DefineStmt::add_defnames() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_defnames()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DefineStmt.defnames) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Constraint::exclusions() const { - // @@protoc_insertion_point(field_list:pg_query.Constraint.exclusions) - return _impl_.exclusions_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DefineStmt::defnames() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DefineStmt.defnames) + return _internal_defnames(); } - -// repeated .pg_query.Node options = 14 [json_name = "options"]; -inline int Constraint::_internal_options_size() const { - return _impl_.options_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DefineStmt::_internal_defnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.defnames_; } -inline int Constraint::options_size() const { - return _internal_options_size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DefineStmt::_internal_mutable_defnames() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.defnames_; } -inline void Constraint::clear_options() { - _impl_.options_.Clear(); + +// repeated .pg_query.Node args = 4 [json_name = "args"]; +inline int DefineStmt::_internal_args_size() const { + return _internal_args().size(); } -inline ::pg_query::Node* Constraint::mutable_options(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.options) - return _impl_.options_.Mutable(index); +inline int DefineStmt::args_size() const { + return _internal_args_size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Constraint::mutable_options() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.options) - return &_impl_.options_; +inline void DefineStmt::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline const ::pg_query::Node& Constraint::_internal_options(int index) const { - return _impl_.options_.Get(index); +inline ::pg_query::Node* DefineStmt::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DefineStmt.args) + return _internal_mutable_args()->Mutable(index); } -inline const ::pg_query::Node& Constraint::options(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.options) - return _internal_options(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DefineStmt::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DefineStmt.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } -inline ::pg_query::Node* Constraint::_internal_add_options() { - return _impl_.options_.Add(); +inline const ::pg_query::Node& DefineStmt::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DefineStmt.args) + return _internal_args().Get(index); } -inline ::pg_query::Node* Constraint::add_options() { - ::pg_query::Node* _add = _internal_add_options(); - // @@protoc_insertion_point(field_add:pg_query.Constraint.options) +inline ::pg_query::Node* DefineStmt::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DefineStmt.args) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Constraint::options() const { - // @@protoc_insertion_point(field_list:pg_query.Constraint.options) - return _impl_.options_; -} - -// string indexname = 15 [json_name = "indexname"]; -inline void Constraint::clear_indexname() { - _impl_.indexname_.ClearToEmpty(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DefineStmt::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DefineStmt.args) + return _internal_args(); } -inline const std::string& Constraint::indexname() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.indexname) - return _internal_indexname(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DefineStmt::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -template -inline PROTOBUF_ALWAYS_INLINE -void Constraint::set_indexname(ArgT0&& arg0, ArgT... args) { - - _impl_.indexname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Constraint.indexname) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DefineStmt::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -inline std::string* Constraint::mutable_indexname() { - std::string* _s = _internal_mutable_indexname(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.indexname) - return _s; + +// repeated .pg_query.Node definition = 5 [json_name = "definition"]; +inline int DefineStmt::_internal_definition_size() const { + return _internal_definition().size(); } -inline const std::string& Constraint::_internal_indexname() const { - return _impl_.indexname_.Get(); +inline int DefineStmt::definition_size() const { + return _internal_definition_size(); } -inline void Constraint::_internal_set_indexname(const std::string& value) { - - _impl_.indexname_.Set(value, GetArenaForAllocation()); +inline void DefineStmt::clear_definition() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.definition_.Clear(); } -inline std::string* Constraint::_internal_mutable_indexname() { - - return _impl_.indexname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* DefineStmt::mutable_definition(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DefineStmt.definition) + return _internal_mutable_definition()->Mutable(index); } -inline std::string* Constraint::release_indexname() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.indexname) - return _impl_.indexname_.Release(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DefineStmt::mutable_definition() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DefineStmt.definition) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_definition(); } -inline void Constraint::set_allocated_indexname(std::string* indexname) { - if (indexname != nullptr) { - - } else { - - } - _impl_.indexname_.SetAllocated(indexname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.indexname_.IsDefault()) { - _impl_.indexname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.indexname) +inline const ::pg_query::Node& DefineStmt::definition(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DefineStmt.definition) + return _internal_definition().Get(index); } - -// string indexspace = 16 [json_name = "indexspace"]; -inline void Constraint::clear_indexspace() { - _impl_.indexspace_.ClearToEmpty(); +inline ::pg_query::Node* DefineStmt::add_definition() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_definition()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DefineStmt.definition) + return _add; } -inline const std::string& Constraint::indexspace() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.indexspace) - return _internal_indexspace(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DefineStmt::definition() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DefineStmt.definition) + return _internal_definition(); } -template -inline PROTOBUF_ALWAYS_INLINE -void Constraint::set_indexspace(ArgT0&& arg0, ArgT... args) { - - _impl_.indexspace_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Constraint.indexspace) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DefineStmt::_internal_definition() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.definition_; } -inline std::string* Constraint::mutable_indexspace() { - std::string* _s = _internal_mutable_indexspace(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.indexspace) - return _s; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DefineStmt::_internal_mutable_definition() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.definition_; } -inline const std::string& Constraint::_internal_indexspace() const { - return _impl_.indexspace_.Get(); + +// bool if_not_exists = 6 [json_name = "if_not_exists"]; +inline void DefineStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; } -inline void Constraint::_internal_set_indexspace(const std::string& value) { - - _impl_.indexspace_.Set(value, GetArenaForAllocation()); +inline bool DefineStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.DefineStmt.if_not_exists) + return _internal_if_not_exists(); } -inline std::string* Constraint::_internal_mutable_indexspace() { - - return _impl_.indexspace_.Mutable(GetArenaForAllocation()); +inline void DefineStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.DefineStmt.if_not_exists) } -inline std::string* Constraint::release_indexspace() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.indexspace) - return _impl_.indexspace_.Release(); +inline bool DefineStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; } -inline void Constraint::set_allocated_indexspace(std::string* indexspace) { - if (indexspace != nullptr) { - - } else { - - } - _impl_.indexspace_.SetAllocated(indexspace, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.indexspace_.IsDefault()) { - _impl_.indexspace_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.indexspace) +inline void DefineStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; } -// bool reset_default_tblspc = 17 [json_name = "reset_default_tblspc"]; -inline void Constraint::clear_reset_default_tblspc() { - _impl_.reset_default_tblspc_ = false; +// bool replace = 7 [json_name = "replace"]; +inline void DefineStmt::clear_replace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.replace_ = false; } -inline bool Constraint::_internal_reset_default_tblspc() const { - return _impl_.reset_default_tblspc_; +inline bool DefineStmt::replace() const { + // @@protoc_insertion_point(field_get:pg_query.DefineStmt.replace) + return _internal_replace(); } -inline bool Constraint::reset_default_tblspc() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.reset_default_tblspc) - return _internal_reset_default_tblspc(); +inline void DefineStmt::set_replace(bool value) { + _internal_set_replace(value); + // @@protoc_insertion_point(field_set:pg_query.DefineStmt.replace) } -inline void Constraint::_internal_set_reset_default_tblspc(bool value) { - - _impl_.reset_default_tblspc_ = value; +inline bool DefineStmt::_internal_replace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.replace_; } -inline void Constraint::set_reset_default_tblspc(bool value) { - _internal_set_reset_default_tblspc(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.reset_default_tblspc) +inline void DefineStmt::_internal_set_replace(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.replace_ = value; } -// string access_method = 18 [json_name = "access_method"]; -inline void Constraint::clear_access_method() { - _impl_.access_method_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// CreateDomainStmt + +// repeated .pg_query.Node domainname = 1 [json_name = "domainname"]; +inline int CreateDomainStmt::_internal_domainname_size() const { + return _internal_domainname().size(); } -inline const std::string& Constraint::access_method() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.access_method) - return _internal_access_method(); +inline int CreateDomainStmt::domainname_size() const { + return _internal_domainname_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void Constraint::set_access_method(ArgT0&& arg0, ArgT... args) { - - _impl_.access_method_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Constraint.access_method) +inline void CreateDomainStmt::clear_domainname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.domainname_.Clear(); } -inline std::string* Constraint::mutable_access_method() { - std::string* _s = _internal_mutable_access_method(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.access_method) - return _s; +inline ::pg_query::Node* CreateDomainStmt::mutable_domainname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateDomainStmt.domainname) + return _internal_mutable_domainname()->Mutable(index); } -inline const std::string& Constraint::_internal_access_method() const { - return _impl_.access_method_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateDomainStmt::mutable_domainname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateDomainStmt.domainname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_domainname(); } -inline void Constraint::_internal_set_access_method(const std::string& value) { - - _impl_.access_method_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& CreateDomainStmt::domainname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateDomainStmt.domainname) + return _internal_domainname().Get(index); } -inline std::string* Constraint::_internal_mutable_access_method() { - - return _impl_.access_method_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CreateDomainStmt::add_domainname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_domainname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateDomainStmt.domainname) + return _add; } -inline std::string* Constraint::release_access_method() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.access_method) - return _impl_.access_method_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateDomainStmt::domainname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateDomainStmt.domainname) + return _internal_domainname(); } -inline void Constraint::set_allocated_access_method(std::string* access_method) { - if (access_method != nullptr) { - - } else { - - } - _impl_.access_method_.SetAllocated(access_method, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.access_method_.IsDefault()) { - _impl_.access_method_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.access_method) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateDomainStmt::_internal_domainname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.domainname_; } - -// .pg_query.Node where_clause = 19 [json_name = "where_clause"]; -inline bool Constraint::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateDomainStmt::_internal_mutable_domainname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.domainname_; } -inline bool Constraint::has_where_clause() const { - return _internal_has_where_clause(); + +// .pg_query.TypeName type_name = 2 [json_name = "typeName"]; +inline bool CreateDomainStmt::has_type_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.type_name_ != nullptr); + return value; } -inline void Constraint::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline void CreateDomainStmt::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.type_name_ != nullptr) _impl_.type_name_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& Constraint::_internal_where_clause() const { - const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::TypeName& CreateDomainStmt::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.type_name_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline const ::pg_query::Node& Constraint::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.where_clause) - return _internal_where_clause(); +inline const ::pg_query::TypeName& CreateDomainStmt::type_name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateDomainStmt.type_name) + return _internal_type_name(); } -inline void Constraint::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); +inline void CreateDomainStmt::unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.type_name_); } - _impl_.where_clause_ = where_clause; - if (where_clause) { - + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Constraint.where_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateDomainStmt.type_name) } -inline ::pg_query::Node* Constraint::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::TypeName* CreateDomainStmt::release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* released = _impl_.type_name_; + _impl_.type_name_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* Constraint::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.where_clause) - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::TypeName* CreateDomainStmt::unsafe_arena_release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateDomainStmt.type_name) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* temp = _impl_.type_name_; + _impl_.type_name_ = nullptr; return temp; } -inline ::pg_query::Node* Constraint::_internal_mutable_where_clause() { - - if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; +inline ::pg_query::TypeName* CreateDomainStmt::_internal_mutable_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.type_name_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(p); } - return _impl_.where_clause_; + return _impl_.type_name_; } -inline ::pg_query::Node* Constraint::mutable_where_clause() { - ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.where_clause) +inline ::pg_query::TypeName* CreateDomainStmt::mutable_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_type_name(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateDomainStmt.type_name) return _msg; } -inline void Constraint::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreateDomainStmt::set_allocated_type_name(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.where_clause_; + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.type_name_); } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.where_clause) -} -// .pg_query.RangeVar pktable = 20 [json_name = "pktable"]; -inline bool Constraint::_internal_has_pktable() const { - return this != internal_default_instance() && _impl_.pktable_ != nullptr; + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateDomainStmt.type_name) } -inline bool Constraint::has_pktable() const { - return _internal_has_pktable(); + +// .pg_query.CollateClause coll_clause = 3 [json_name = "collClause"]; +inline bool CreateDomainStmt::has_coll_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.coll_clause_ != nullptr); + return value; } -inline void Constraint::clear_pktable() { - if (GetArenaForAllocation() == nullptr && _impl_.pktable_ != nullptr) { - delete _impl_.pktable_; - } - _impl_.pktable_ = nullptr; +inline void CreateDomainStmt::clear_coll_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.coll_clause_ != nullptr) _impl_.coll_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::RangeVar& Constraint::_internal_pktable() const { - const ::pg_query::RangeVar* p = _impl_.pktable_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::pg_query::CollateClause& CreateDomainStmt::_internal_coll_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::CollateClause* p = _impl_.coll_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_CollateClause_default_instance_); } -inline const ::pg_query::RangeVar& Constraint::pktable() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.pktable) - return _internal_pktable(); +inline const ::pg_query::CollateClause& CreateDomainStmt::coll_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateDomainStmt.coll_clause) + return _internal_coll_clause(); } -inline void Constraint::unsafe_arena_set_allocated_pktable( - ::pg_query::RangeVar* pktable) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.pktable_); +inline void CreateDomainStmt::unsafe_arena_set_allocated_coll_clause(::pg_query::CollateClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.coll_clause_); } - _impl_.pktable_ = pktable; - if (pktable) { - + _impl_.coll_clause_ = reinterpret_cast<::pg_query::CollateClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.Constraint.pktable) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateDomainStmt.coll_clause) } -inline ::pg_query::RangeVar* Constraint::release_pktable() { - - ::pg_query::RangeVar* temp = _impl_.pktable_; - _impl_.pktable_ = nullptr; +inline ::pg_query::CollateClause* CreateDomainStmt::release_coll_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::CollateClause* released = _impl_.coll_clause_; + _impl_.coll_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* Constraint::unsafe_arena_release_pktable() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.pktable) - - ::pg_query::RangeVar* temp = _impl_.pktable_; - _impl_.pktable_ = nullptr; +inline ::pg_query::CollateClause* CreateDomainStmt::unsafe_arena_release_coll_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateDomainStmt.coll_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::CollateClause* temp = _impl_.coll_clause_; + _impl_.coll_clause_ = nullptr; return temp; } -inline ::pg_query::RangeVar* Constraint::_internal_mutable_pktable() { - - if (_impl_.pktable_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.pktable_ = p; +inline ::pg_query::CollateClause* CreateDomainStmt::_internal_mutable_coll_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.coll_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::CollateClause>(GetArena()); + _impl_.coll_clause_ = reinterpret_cast<::pg_query::CollateClause*>(p); } - return _impl_.pktable_; + return _impl_.coll_clause_; } -inline ::pg_query::RangeVar* Constraint::mutable_pktable() { - ::pg_query::RangeVar* _msg = _internal_mutable_pktable(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.pktable) +inline ::pg_query::CollateClause* CreateDomainStmt::mutable_coll_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::CollateClause* _msg = _internal_mutable_coll_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateDomainStmt.coll_clause) return _msg; } -inline void Constraint::set_allocated_pktable(::pg_query::RangeVar* pktable) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreateDomainStmt::set_allocated_coll_clause(::pg_query::CollateClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.pktable_; + delete reinterpret_cast<::pg_query::CollateClause*>(_impl_.coll_clause_); } - if (pktable) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(pktable); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::CollateClause*>(value)->GetArena(); if (message_arena != submessage_arena) { - pktable = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, pktable, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.pktable_ = pktable; - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.pktable) + + _impl_.coll_clause_ = reinterpret_cast<::pg_query::CollateClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateDomainStmt.coll_clause) } -// repeated .pg_query.Node fk_attrs = 21 [json_name = "fk_attrs"]; -inline int Constraint::_internal_fk_attrs_size() const { - return _impl_.fk_attrs_.size(); +// repeated .pg_query.Node constraints = 4 [json_name = "constraints"]; +inline int CreateDomainStmt::_internal_constraints_size() const { + return _internal_constraints().size(); } -inline int Constraint::fk_attrs_size() const { - return _internal_fk_attrs_size(); +inline int CreateDomainStmt::constraints_size() const { + return _internal_constraints_size(); } -inline void Constraint::clear_fk_attrs() { - _impl_.fk_attrs_.Clear(); +inline void CreateDomainStmt::clear_constraints() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.constraints_.Clear(); } -inline ::pg_query::Node* Constraint::mutable_fk_attrs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_attrs) - return _impl_.fk_attrs_.Mutable(index); +inline ::pg_query::Node* CreateDomainStmt::mutable_constraints(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateDomainStmt.constraints) + return _internal_mutable_constraints()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Constraint::mutable_fk_attrs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.fk_attrs) - return &_impl_.fk_attrs_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateDomainStmt::mutable_constraints() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateDomainStmt.constraints) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_constraints(); } -inline const ::pg_query::Node& Constraint::_internal_fk_attrs(int index) const { - return _impl_.fk_attrs_.Get(index); +inline const ::pg_query::Node& CreateDomainStmt::constraints(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateDomainStmt.constraints) + return _internal_constraints().Get(index); } -inline const ::pg_query::Node& Constraint::fk_attrs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_attrs) - return _internal_fk_attrs(index); +inline ::pg_query::Node* CreateDomainStmt::add_constraints() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_constraints()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateDomainStmt.constraints) + return _add; } -inline ::pg_query::Node* Constraint::_internal_add_fk_attrs() { - return _impl_.fk_attrs_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateDomainStmt::constraints() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateDomainStmt.constraints) + return _internal_constraints(); } -inline ::pg_query::Node* Constraint::add_fk_attrs() { - ::pg_query::Node* _add = _internal_add_fk_attrs(); - // @@protoc_insertion_point(field_add:pg_query.Constraint.fk_attrs) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateDomainStmt::_internal_constraints() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.constraints_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Constraint::fk_attrs() const { - // @@protoc_insertion_point(field_list:pg_query.Constraint.fk_attrs) - return _impl_.fk_attrs_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateDomainStmt::_internal_mutable_constraints() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.constraints_; } -// repeated .pg_query.Node pk_attrs = 22 [json_name = "pk_attrs"]; -inline int Constraint::_internal_pk_attrs_size() const { - return _impl_.pk_attrs_.size(); +// ------------------------------------------------------------------- + +// CreateOpClassStmt + +// repeated .pg_query.Node opclassname = 1 [json_name = "opclassname"]; +inline int CreateOpClassStmt::_internal_opclassname_size() const { + return _internal_opclassname().size(); } -inline int Constraint::pk_attrs_size() const { - return _internal_pk_attrs_size(); +inline int CreateOpClassStmt::opclassname_size() const { + return _internal_opclassname_size(); } -inline void Constraint::clear_pk_attrs() { - _impl_.pk_attrs_.Clear(); +inline void CreateOpClassStmt::clear_opclassname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opclassname_.Clear(); } -inline ::pg_query::Node* Constraint::mutable_pk_attrs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.pk_attrs) - return _impl_.pk_attrs_.Mutable(index); +inline ::pg_query::Node* CreateOpClassStmt::mutable_opclassname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.opclassname) + return _internal_mutable_opclassname()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Constraint::mutable_pk_attrs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.pk_attrs) - return &_impl_.pk_attrs_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateOpClassStmt::mutable_opclassname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassStmt.opclassname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opclassname(); } -inline const ::pg_query::Node& Constraint::_internal_pk_attrs(int index) const { - return _impl_.pk_attrs_.Get(index); +inline const ::pg_query::Node& CreateOpClassStmt::opclassname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.opclassname) + return _internal_opclassname().Get(index); } -inline const ::pg_query::Node& Constraint::pk_attrs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.pk_attrs) - return _internal_pk_attrs(index); +inline ::pg_query::Node* CreateOpClassStmt::add_opclassname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opclassname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateOpClassStmt.opclassname) + return _add; } -inline ::pg_query::Node* Constraint::_internal_add_pk_attrs() { - return _impl_.pk_attrs_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateOpClassStmt::opclassname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateOpClassStmt.opclassname) + return _internal_opclassname(); } -inline ::pg_query::Node* Constraint::add_pk_attrs() { - ::pg_query::Node* _add = _internal_add_pk_attrs(); - // @@protoc_insertion_point(field_add:pg_query.Constraint.pk_attrs) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateOpClassStmt::_internal_opclassname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opclassname_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Constraint::pk_attrs() const { - // @@protoc_insertion_point(field_list:pg_query.Constraint.pk_attrs) - return _impl_.pk_attrs_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateOpClassStmt::_internal_mutable_opclassname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opclassname_; } -// string fk_matchtype = 23 [json_name = "fk_matchtype"]; -inline void Constraint::clear_fk_matchtype() { - _impl_.fk_matchtype_.ClearToEmpty(); +// repeated .pg_query.Node opfamilyname = 2 [json_name = "opfamilyname"]; +inline int CreateOpClassStmt::_internal_opfamilyname_size() const { + return _internal_opfamilyname().size(); } -inline const std::string& Constraint::fk_matchtype() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_matchtype) - return _internal_fk_matchtype(); +inline int CreateOpClassStmt::opfamilyname_size() const { + return _internal_opfamilyname_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void Constraint::set_fk_matchtype(ArgT0&& arg0, ArgT... args) { - - _impl_.fk_matchtype_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Constraint.fk_matchtype) +inline void CreateOpClassStmt::clear_opfamilyname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opfamilyname_.Clear(); } -inline std::string* Constraint::mutable_fk_matchtype() { - std::string* _s = _internal_mutable_fk_matchtype(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_matchtype) - return _s; +inline ::pg_query::Node* CreateOpClassStmt::mutable_opfamilyname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.opfamilyname) + return _internal_mutable_opfamilyname()->Mutable(index); } -inline const std::string& Constraint::_internal_fk_matchtype() const { - return _impl_.fk_matchtype_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateOpClassStmt::mutable_opfamilyname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassStmt.opfamilyname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opfamilyname(); } -inline void Constraint::_internal_set_fk_matchtype(const std::string& value) { - - _impl_.fk_matchtype_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& CreateOpClassStmt::opfamilyname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.opfamilyname) + return _internal_opfamilyname().Get(index); } -inline std::string* Constraint::_internal_mutable_fk_matchtype() { - - return _impl_.fk_matchtype_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CreateOpClassStmt::add_opfamilyname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opfamilyname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateOpClassStmt.opfamilyname) + return _add; } -inline std::string* Constraint::release_fk_matchtype() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.fk_matchtype) - return _impl_.fk_matchtype_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateOpClassStmt::opfamilyname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateOpClassStmt.opfamilyname) + return _internal_opfamilyname(); } -inline void Constraint::set_allocated_fk_matchtype(std::string* fk_matchtype) { - if (fk_matchtype != nullptr) { - - } else { - - } - _impl_.fk_matchtype_.SetAllocated(fk_matchtype, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.fk_matchtype_.IsDefault()) { - _impl_.fk_matchtype_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.fk_matchtype) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateOpClassStmt::_internal_opfamilyname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opfamilyname_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateOpClassStmt::_internal_mutable_opfamilyname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opfamilyname_; } -// string fk_upd_action = 24 [json_name = "fk_upd_action"]; -inline void Constraint::clear_fk_upd_action() { - _impl_.fk_upd_action_.ClearToEmpty(); +// string amname = 3 [json_name = "amname"]; +inline void CreateOpClassStmt::clear_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amname_.ClearToEmpty(); } -inline const std::string& Constraint::fk_upd_action() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_upd_action) - return _internal_fk_upd_action(); +inline const std::string& CreateOpClassStmt::amname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.amname) + return _internal_amname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void Constraint::set_fk_upd_action(ArgT0&& arg0, ArgT... args) { - - _impl_.fk_upd_action_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Constraint.fk_upd_action) +template +inline PROTOBUF_ALWAYS_INLINE void CreateOpClassStmt::set_amname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateOpClassStmt.amname) } -inline std::string* Constraint::mutable_fk_upd_action() { - std::string* _s = _internal_mutable_fk_upd_action(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_upd_action) +inline std::string* CreateOpClassStmt::mutable_amname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_amname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.amname) return _s; } -inline const std::string& Constraint::_internal_fk_upd_action() const { - return _impl_.fk_upd_action_.Get(); +inline const std::string& CreateOpClassStmt::_internal_amname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.amname_.Get(); } -inline void Constraint::_internal_set_fk_upd_action(const std::string& value) { - - _impl_.fk_upd_action_.Set(value, GetArenaForAllocation()); +inline void CreateOpClassStmt::_internal_set_amname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amname_.Set(value, GetArena()); } -inline std::string* Constraint::_internal_mutable_fk_upd_action() { - - return _impl_.fk_upd_action_.Mutable(GetArenaForAllocation()); +inline std::string* CreateOpClassStmt::_internal_mutable_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.amname_.Mutable( GetArena()); } -inline std::string* Constraint::release_fk_upd_action() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.fk_upd_action) - return _impl_.fk_upd_action_.Release(); +inline std::string* CreateOpClassStmt::release_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateOpClassStmt.amname) + return _impl_.amname_.Release(); } -inline void Constraint::set_allocated_fk_upd_action(std::string* fk_upd_action) { - if (fk_upd_action != nullptr) { - - } else { - - } - _impl_.fk_upd_action_.SetAllocated(fk_upd_action, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.fk_upd_action_.IsDefault()) { - _impl_.fk_upd_action_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.fk_upd_action) +inline void CreateOpClassStmt::set_allocated_amname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.amname_.IsDefault()) { + _impl_.amname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpClassStmt.amname) } -// string fk_del_action = 25 [json_name = "fk_del_action"]; -inline void Constraint::clear_fk_del_action() { - _impl_.fk_del_action_.ClearToEmpty(); +// .pg_query.TypeName datatype = 4 [json_name = "datatype"]; +inline bool CreateOpClassStmt::has_datatype() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.datatype_ != nullptr); + return value; } -inline const std::string& Constraint::fk_del_action() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_del_action) - return _internal_fk_del_action(); +inline void CreateOpClassStmt::clear_datatype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.datatype_ != nullptr) _impl_.datatype_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -template -inline PROTOBUF_ALWAYS_INLINE -void Constraint::set_fk_del_action(ArgT0&& arg0, ArgT... args) { - - _impl_.fk_del_action_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.Constraint.fk_del_action) +inline const ::pg_query::TypeName& CreateOpClassStmt::_internal_datatype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.datatype_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline std::string* Constraint::mutable_fk_del_action() { - std::string* _s = _internal_mutable_fk_del_action(); - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_del_action) - return _s; +inline const ::pg_query::TypeName& CreateOpClassStmt::datatype() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.datatype) + return _internal_datatype(); } -inline const std::string& Constraint::_internal_fk_del_action() const { - return _impl_.fk_del_action_.Get(); +inline void CreateOpClassStmt::unsafe_arena_set_allocated_datatype(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.datatype_); + } + _impl_.datatype_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateOpClassStmt.datatype) } -inline void Constraint::_internal_set_fk_del_action(const std::string& value) { - - _impl_.fk_del_action_.Set(value, GetArenaForAllocation()); +inline ::pg_query::TypeName* CreateOpClassStmt::release_datatype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* released = _impl_.datatype_; + _impl_.datatype_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* Constraint::_internal_mutable_fk_del_action() { - - return _impl_.fk_del_action_.Mutable(GetArenaForAllocation()); +inline ::pg_query::TypeName* CreateOpClassStmt::unsafe_arena_release_datatype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateOpClassStmt.datatype) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* temp = _impl_.datatype_; + _impl_.datatype_ = nullptr; + return temp; } -inline std::string* Constraint::release_fk_del_action() { - // @@protoc_insertion_point(field_release:pg_query.Constraint.fk_del_action) - return _impl_.fk_del_action_.Release(); +inline ::pg_query::TypeName* CreateOpClassStmt::_internal_mutable_datatype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.datatype_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.datatype_ = reinterpret_cast<::pg_query::TypeName*>(p); + } + return _impl_.datatype_; } -inline void Constraint::set_allocated_fk_del_action(std::string* fk_del_action) { - if (fk_del_action != nullptr) { - - } else { - +inline ::pg_query::TypeName* CreateOpClassStmt::mutable_datatype() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_datatype(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.datatype) + return _msg; +} +inline void CreateOpClassStmt::set_allocated_datatype(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.datatype_); } - _impl_.fk_del_action_.SetAllocated(fk_del_action, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.fk_del_action_.IsDefault()) { - _impl_.fk_del_action_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.Constraint.fk_del_action) + + _impl_.datatype_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpClassStmt.datatype) } -// repeated .pg_query.Node fk_del_set_cols = 26 [json_name = "fk_del_set_cols"]; -inline int Constraint::_internal_fk_del_set_cols_size() const { - return _impl_.fk_del_set_cols_.size(); +// repeated .pg_query.Node items = 5 [json_name = "items"]; +inline int CreateOpClassStmt::_internal_items_size() const { + return _internal_items().size(); } -inline int Constraint::fk_del_set_cols_size() const { - return _internal_fk_del_set_cols_size(); +inline int CreateOpClassStmt::items_size() const { + return _internal_items_size(); } -inline void Constraint::clear_fk_del_set_cols() { - _impl_.fk_del_set_cols_.Clear(); +inline void CreateOpClassStmt::clear_items() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.items_.Clear(); } -inline ::pg_query::Node* Constraint::mutable_fk_del_set_cols(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.fk_del_set_cols) - return _impl_.fk_del_set_cols_.Mutable(index); +inline ::pg_query::Node* CreateOpClassStmt::mutable_items(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassStmt.items) + return _internal_mutable_items()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Constraint::mutable_fk_del_set_cols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.fk_del_set_cols) - return &_impl_.fk_del_set_cols_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateOpClassStmt::mutable_items() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassStmt.items) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_items(); } -inline const ::pg_query::Node& Constraint::_internal_fk_del_set_cols(int index) const { - return _impl_.fk_del_set_cols_.Get(index); +inline const ::pg_query::Node& CreateOpClassStmt::items(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.items) + return _internal_items().Get(index); } -inline const ::pg_query::Node& Constraint::fk_del_set_cols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.fk_del_set_cols) - return _internal_fk_del_set_cols(index); +inline ::pg_query::Node* CreateOpClassStmt::add_items() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_items()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateOpClassStmt.items) + return _add; } -inline ::pg_query::Node* Constraint::_internal_add_fk_del_set_cols() { - return _impl_.fk_del_set_cols_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateOpClassStmt::items() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateOpClassStmt.items) + return _internal_items(); } -inline ::pg_query::Node* Constraint::add_fk_del_set_cols() { - ::pg_query::Node* _add = _internal_add_fk_del_set_cols(); - // @@protoc_insertion_point(field_add:pg_query.Constraint.fk_del_set_cols) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateOpClassStmt::_internal_items() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.items_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Constraint::fk_del_set_cols() const { - // @@protoc_insertion_point(field_list:pg_query.Constraint.fk_del_set_cols) - return _impl_.fk_del_set_cols_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateOpClassStmt::_internal_mutable_items() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.items_; } -// repeated .pg_query.Node old_conpfeqop = 27 [json_name = "old_conpfeqop"]; -inline int Constraint::_internal_old_conpfeqop_size() const { - return _impl_.old_conpfeqop_.size(); -} -inline int Constraint::old_conpfeqop_size() const { - return _internal_old_conpfeqop_size(); +// bool is_default = 6 [json_name = "isDefault"]; +inline void CreateOpClassStmt::clear_is_default() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_default_ = false; } -inline void Constraint::clear_old_conpfeqop() { - _impl_.old_conpfeqop_.Clear(); +inline bool CreateOpClassStmt::is_default() const { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassStmt.is_default) + return _internal_is_default(); } -inline ::pg_query::Node* Constraint::mutable_old_conpfeqop(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.Constraint.old_conpfeqop) - return _impl_.old_conpfeqop_.Mutable(index); +inline void CreateOpClassStmt::set_is_default(bool value) { + _internal_set_is_default(value); + // @@protoc_insertion_point(field_set:pg_query.CreateOpClassStmt.is_default) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -Constraint::mutable_old_conpfeqop() { - // @@protoc_insertion_point(field_mutable_list:pg_query.Constraint.old_conpfeqop) - return &_impl_.old_conpfeqop_; +inline bool CreateOpClassStmt::_internal_is_default() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_default_; } -inline const ::pg_query::Node& Constraint::_internal_old_conpfeqop(int index) const { - return _impl_.old_conpfeqop_.Get(index); +inline void CreateOpClassStmt::_internal_set_is_default(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_default_ = value; } -inline const ::pg_query::Node& Constraint::old_conpfeqop(int index) const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.old_conpfeqop) - return _internal_old_conpfeqop(index); + +// ------------------------------------------------------------------- + +// CreateOpClassItem + +// int32 itemtype = 1 [json_name = "itemtype"]; +inline void CreateOpClassItem::clear_itemtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.itemtype_ = 0; } -inline ::pg_query::Node* Constraint::_internal_add_old_conpfeqop() { - return _impl_.old_conpfeqop_.Add(); +inline ::int32_t CreateOpClassItem::itemtype() const { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.itemtype) + return _internal_itemtype(); } -inline ::pg_query::Node* Constraint::add_old_conpfeqop() { - ::pg_query::Node* _add = _internal_add_old_conpfeqop(); - // @@protoc_insertion_point(field_add:pg_query.Constraint.old_conpfeqop) - return _add; +inline void CreateOpClassItem::set_itemtype(::int32_t value) { + _internal_set_itemtype(value); + // @@protoc_insertion_point(field_set:pg_query.CreateOpClassItem.itemtype) } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -Constraint::old_conpfeqop() const { - // @@protoc_insertion_point(field_list:pg_query.Constraint.old_conpfeqop) - return _impl_.old_conpfeqop_; +inline ::int32_t CreateOpClassItem::_internal_itemtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.itemtype_; +} +inline void CreateOpClassItem::_internal_set_itemtype(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.itemtype_ = value; } -// uint32 old_pktable_oid = 28 [json_name = "old_pktable_oid"]; -inline void Constraint::clear_old_pktable_oid() { - _impl_.old_pktable_oid_ = 0u; +// .pg_query.ObjectWithArgs name = 2 [json_name = "name"]; +inline bool CreateOpClassItem::has_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.name_ != nullptr); + return value; } -inline uint32_t Constraint::_internal_old_pktable_oid() const { - return _impl_.old_pktable_oid_; +inline void CreateOpClassItem::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.name_ != nullptr) _impl_.name_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline uint32_t Constraint::old_pktable_oid() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.old_pktable_oid) - return _internal_old_pktable_oid(); +inline const ::pg_query::ObjectWithArgs& CreateOpClassItem::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::ObjectWithArgs* p = _impl_.name_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_ObjectWithArgs_default_instance_); } -inline void Constraint::_internal_set_old_pktable_oid(uint32_t value) { - - _impl_.old_pktable_oid_ = value; +inline const ::pg_query::ObjectWithArgs& CreateOpClassItem::name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.name) + return _internal_name(); } -inline void Constraint::set_old_pktable_oid(uint32_t value) { - _internal_set_old_pktable_oid(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.old_pktable_oid) +inline void CreateOpClassItem::unsafe_arena_set_allocated_name(::pg_query::ObjectWithArgs* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.name_); + } + _impl_.name_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateOpClassItem.name) } +inline ::pg_query::ObjectWithArgs* CreateOpClassItem::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool skip_validation = 29 [json_name = "skip_validation"]; -inline void Constraint::clear_skip_validation() { - _impl_.skip_validation_ = false; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::ObjectWithArgs* released = _impl_.name_; + _impl_.name_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool Constraint::_internal_skip_validation() const { - return _impl_.skip_validation_; +inline ::pg_query::ObjectWithArgs* CreateOpClassItem::unsafe_arena_release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateOpClassItem.name) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::ObjectWithArgs* temp = _impl_.name_; + _impl_.name_ = nullptr; + return temp; } -inline bool Constraint::skip_validation() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.skip_validation) - return _internal_skip_validation(); +inline ::pg_query::ObjectWithArgs* CreateOpClassItem::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.name_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArena()); + _impl_.name_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(p); + } + return _impl_.name_; } -inline void Constraint::_internal_set_skip_validation(bool value) { - - _impl_.skip_validation_ = value; +inline ::pg_query::ObjectWithArgs* CreateOpClassItem::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ObjectWithArgs* _msg = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassItem.name) + return _msg; } -inline void Constraint::set_skip_validation(bool value) { - _internal_set_skip_validation(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.skip_validation) +inline void CreateOpClassItem::set_allocated_name(::pg_query::ObjectWithArgs* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::ObjectWithArgs*>(_impl_.name_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::ObjectWithArgs*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.name_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpClassItem.name) } -// bool initially_valid = 30 [json_name = "initially_valid"]; -inline void Constraint::clear_initially_valid() { - _impl_.initially_valid_ = false; +// int32 number = 3 [json_name = "number"]; +inline void CreateOpClassItem::clear_number() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.number_ = 0; } -inline bool Constraint::_internal_initially_valid() const { - return _impl_.initially_valid_; +inline ::int32_t CreateOpClassItem::number() const { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.number) + return _internal_number(); } -inline bool Constraint::initially_valid() const { - // @@protoc_insertion_point(field_get:pg_query.Constraint.initially_valid) - return _internal_initially_valid(); +inline void CreateOpClassItem::set_number(::int32_t value) { + _internal_set_number(value); + // @@protoc_insertion_point(field_set:pg_query.CreateOpClassItem.number) } -inline void Constraint::_internal_set_initially_valid(bool value) { - - _impl_.initially_valid_ = value; +inline ::int32_t CreateOpClassItem::_internal_number() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.number_; } -inline void Constraint::set_initially_valid(bool value) { - _internal_set_initially_valid(value); - // @@protoc_insertion_point(field_set:pg_query.Constraint.initially_valid) +inline void CreateOpClassItem::_internal_set_number(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.number_ = value; } -// ------------------------------------------------------------------- - -// DefElem - -// string defnamespace = 1 [json_name = "defnamespace"]; -inline void DefElem::clear_defnamespace() { - _impl_.defnamespace_.ClearToEmpty(); +// repeated .pg_query.Node order_family = 4 [json_name = "order_family"]; +inline int CreateOpClassItem::_internal_order_family_size() const { + return _internal_order_family().size(); } -inline const std::string& DefElem::defnamespace() const { - // @@protoc_insertion_point(field_get:pg_query.DefElem.defnamespace) - return _internal_defnamespace(); +inline int CreateOpClassItem::order_family_size() const { + return _internal_order_family_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void DefElem::set_defnamespace(ArgT0&& arg0, ArgT... args) { - - _impl_.defnamespace_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.DefElem.defnamespace) +inline void CreateOpClassItem::clear_order_family() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.order_family_.Clear(); } -inline std::string* DefElem::mutable_defnamespace() { - std::string* _s = _internal_mutable_defnamespace(); - // @@protoc_insertion_point(field_mutable:pg_query.DefElem.defnamespace) - return _s; +inline ::pg_query::Node* CreateOpClassItem::mutable_order_family(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassItem.order_family) + return _internal_mutable_order_family()->Mutable(index); } -inline const std::string& DefElem::_internal_defnamespace() const { - return _impl_.defnamespace_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateOpClassItem::mutable_order_family() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassItem.order_family) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_order_family(); } -inline void DefElem::_internal_set_defnamespace(const std::string& value) { - - _impl_.defnamespace_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& CreateOpClassItem::order_family(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.order_family) + return _internal_order_family().Get(index); } -inline std::string* DefElem::_internal_mutable_defnamespace() { - - return _impl_.defnamespace_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CreateOpClassItem::add_order_family() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_order_family()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateOpClassItem.order_family) + return _add; } -inline std::string* DefElem::release_defnamespace() { - // @@protoc_insertion_point(field_release:pg_query.DefElem.defnamespace) - return _impl_.defnamespace_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateOpClassItem::order_family() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateOpClassItem.order_family) + return _internal_order_family(); } -inline void DefElem::set_allocated_defnamespace(std::string* defnamespace) { - if (defnamespace != nullptr) { - - } else { - - } - _impl_.defnamespace_.SetAllocated(defnamespace, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.defnamespace_.IsDefault()) { - _impl_.defnamespace_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.DefElem.defnamespace) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateOpClassItem::_internal_order_family() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.order_family_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateOpClassItem::_internal_mutable_order_family() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.order_family_; } -// string defname = 2 [json_name = "defname"]; -inline void DefElem::clear_defname() { - _impl_.defname_.ClearToEmpty(); +// repeated .pg_query.Node class_args = 5 [json_name = "class_args"]; +inline int CreateOpClassItem::_internal_class_args_size() const { + return _internal_class_args().size(); } -inline const std::string& DefElem::defname() const { - // @@protoc_insertion_point(field_get:pg_query.DefElem.defname) - return _internal_defname(); +inline int CreateOpClassItem::class_args_size() const { + return _internal_class_args_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void DefElem::set_defname(ArgT0&& arg0, ArgT... args) { - - _impl_.defname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.DefElem.defname) +inline void CreateOpClassItem::clear_class_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.class_args_.Clear(); } -inline std::string* DefElem::mutable_defname() { - std::string* _s = _internal_mutable_defname(); - // @@protoc_insertion_point(field_mutable:pg_query.DefElem.defname) - return _s; +inline ::pg_query::Node* CreateOpClassItem::mutable_class_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassItem.class_args) + return _internal_mutable_class_args()->Mutable(index); } -inline const std::string& DefElem::_internal_defname() const { - return _impl_.defname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateOpClassItem::mutable_class_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassItem.class_args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_class_args(); } -inline void DefElem::_internal_set_defname(const std::string& value) { - - _impl_.defname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& CreateOpClassItem::class_args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.class_args) + return _internal_class_args().Get(index); } -inline std::string* DefElem::_internal_mutable_defname() { - - return _impl_.defname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CreateOpClassItem::add_class_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_class_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateOpClassItem.class_args) + return _add; } -inline std::string* DefElem::release_defname() { - // @@protoc_insertion_point(field_release:pg_query.DefElem.defname) - return _impl_.defname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateOpClassItem::class_args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateOpClassItem.class_args) + return _internal_class_args(); } -inline void DefElem::set_allocated_defname(std::string* defname) { - if (defname != nullptr) { - - } else { - - } - _impl_.defname_.SetAllocated(defname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.defname_.IsDefault()) { - _impl_.defname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.DefElem.defname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateOpClassItem::_internal_class_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.class_args_; } - -// .pg_query.Node arg = 3 [json_name = "arg"]; -inline bool DefElem::_internal_has_arg() const { - return this != internal_default_instance() && _impl_.arg_ != nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateOpClassItem::_internal_mutable_class_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.class_args_; } -inline bool DefElem::has_arg() const { - return _internal_has_arg(); + +// .pg_query.TypeName storedtype = 6 [json_name = "storedtype"]; +inline bool CreateOpClassItem::has_storedtype() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.storedtype_ != nullptr); + return value; } -inline void DefElem::clear_arg() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_ != nullptr) { - delete _impl_.arg_; - } - _impl_.arg_ = nullptr; +inline void CreateOpClassItem::clear_storedtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.storedtype_ != nullptr) _impl_.storedtype_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& DefElem::_internal_arg() const { - const ::pg_query::Node* p = _impl_.arg_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::TypeName& CreateOpClassItem::_internal_storedtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.storedtype_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline const ::pg_query::Node& DefElem::arg() const { - // @@protoc_insertion_point(field_get:pg_query.DefElem.arg) - return _internal_arg(); +inline const ::pg_query::TypeName& CreateOpClassItem::storedtype() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.storedtype) + return _internal_storedtype(); } -inline void DefElem::unsafe_arena_set_allocated_arg( - ::pg_query::Node* arg) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_); +inline void CreateOpClassItem::unsafe_arena_set_allocated_storedtype(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.storedtype_); } - _impl_.arg_ = arg; - if (arg) { - + _impl_.storedtype_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DefElem.arg) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateOpClassItem.storedtype) } -inline ::pg_query::Node* DefElem::release_arg() { - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; +inline ::pg_query::TypeName* CreateOpClassItem::release_storedtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::TypeName* released = _impl_.storedtype_; + _impl_.storedtype_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* DefElem::unsafe_arena_release_arg() { - // @@protoc_insertion_point(field_release:pg_query.DefElem.arg) - - ::pg_query::Node* temp = _impl_.arg_; - _impl_.arg_ = nullptr; +inline ::pg_query::TypeName* CreateOpClassItem::unsafe_arena_release_storedtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateOpClassItem.storedtype) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::TypeName* temp = _impl_.storedtype_; + _impl_.storedtype_ = nullptr; return temp; } -inline ::pg_query::Node* DefElem::_internal_mutable_arg() { - - if (_impl_.arg_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.arg_ = p; +inline ::pg_query::TypeName* CreateOpClassItem::_internal_mutable_storedtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.storedtype_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.storedtype_ = reinterpret_cast<::pg_query::TypeName*>(p); } - return _impl_.arg_; + return _impl_.storedtype_; } -inline ::pg_query::Node* DefElem::mutable_arg() { - ::pg_query::Node* _msg = _internal_mutable_arg(); - // @@protoc_insertion_point(field_mutable:pg_query.DefElem.arg) +inline ::pg_query::TypeName* CreateOpClassItem::mutable_storedtype() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_storedtype(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassItem.storedtype) return _msg; } -inline void DefElem::set_allocated_arg(::pg_query::Node* arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreateOpClassItem::set_allocated_storedtype(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.arg_; + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.storedtype_); } - if (arg) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); if (message_arena != submessage_arena) { - arg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.arg_ = arg; - // @@protoc_insertion_point(field_set_allocated:pg_query.DefElem.arg) + + _impl_.storedtype_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpClassItem.storedtype) } -// .pg_query.DefElemAction defaction = 4 [json_name = "defaction"]; -inline void DefElem::clear_defaction() { - _impl_.defaction_ = 0; +// ------------------------------------------------------------------- + +// CreateOpFamilyStmt + +// repeated .pg_query.Node opfamilyname = 1 [json_name = "opfamilyname"]; +inline int CreateOpFamilyStmt::_internal_opfamilyname_size() const { + return _internal_opfamilyname().size(); } -inline ::pg_query::DefElemAction DefElem::_internal_defaction() const { - return static_cast< ::pg_query::DefElemAction >(_impl_.defaction_); +inline int CreateOpFamilyStmt::opfamilyname_size() const { + return _internal_opfamilyname_size(); } -inline ::pg_query::DefElemAction DefElem::defaction() const { - // @@protoc_insertion_point(field_get:pg_query.DefElem.defaction) - return _internal_defaction(); +inline void CreateOpFamilyStmt::clear_opfamilyname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opfamilyname_.Clear(); } -inline void DefElem::_internal_set_defaction(::pg_query::DefElemAction value) { - - _impl_.defaction_ = value; +inline ::pg_query::Node* CreateOpFamilyStmt::mutable_opfamilyname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpFamilyStmt.opfamilyname) + return _internal_mutable_opfamilyname()->Mutable(index); } -inline void DefElem::set_defaction(::pg_query::DefElemAction value) { - _internal_set_defaction(value); - // @@protoc_insertion_point(field_set:pg_query.DefElem.defaction) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateOpFamilyStmt::mutable_opfamilyname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpFamilyStmt.opfamilyname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opfamilyname(); +} +inline const ::pg_query::Node& CreateOpFamilyStmt::opfamilyname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpFamilyStmt.opfamilyname) + return _internal_opfamilyname().Get(index); +} +inline ::pg_query::Node* CreateOpFamilyStmt::add_opfamilyname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opfamilyname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateOpFamilyStmt.opfamilyname) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateOpFamilyStmt::opfamilyname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateOpFamilyStmt.opfamilyname) + return _internal_opfamilyname(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateOpFamilyStmt::_internal_opfamilyname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opfamilyname_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateOpFamilyStmt::_internal_mutable_opfamilyname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opfamilyname_; } -// int32 location = 5 [json_name = "location"]; -inline void DefElem::clear_location() { - _impl_.location_ = 0; +// string amname = 2 [json_name = "amname"]; +inline void CreateOpFamilyStmt::clear_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amname_.ClearToEmpty(); } -inline int32_t DefElem::_internal_location() const { - return _impl_.location_; +inline const std::string& CreateOpFamilyStmt::amname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateOpFamilyStmt.amname) + return _internal_amname(); } -inline int32_t DefElem::location() const { - // @@protoc_insertion_point(field_get:pg_query.DefElem.location) - return _internal_location(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateOpFamilyStmt::set_amname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateOpFamilyStmt.amname) } -inline void DefElem::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline std::string* CreateOpFamilyStmt::mutable_amname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_amname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateOpFamilyStmt.amname) + return _s; } -inline void DefElem::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.DefElem.location) +inline const std::string& CreateOpFamilyStmt::_internal_amname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.amname_.Get(); +} +inline void CreateOpFamilyStmt::_internal_set_amname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amname_.Set(value, GetArena()); +} +inline std::string* CreateOpFamilyStmt::_internal_mutable_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.amname_.Mutable( GetArena()); +} +inline std::string* CreateOpFamilyStmt::release_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateOpFamilyStmt.amname) + return _impl_.amname_.Release(); +} +inline void CreateOpFamilyStmt::set_allocated_amname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.amname_.IsDefault()) { + _impl_.amname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpFamilyStmt.amname) } // ------------------------------------------------------------------- -// RangeTblEntry +// AlterOpFamilyStmt -// .pg_query.RTEKind rtekind = 1 [json_name = "rtekind"]; -inline void RangeTblEntry::clear_rtekind() { - _impl_.rtekind_ = 0; +// repeated .pg_query.Node opfamilyname = 1 [json_name = "opfamilyname"]; +inline int AlterOpFamilyStmt::_internal_opfamilyname_size() const { + return _internal_opfamilyname().size(); } -inline ::pg_query::RTEKind RangeTblEntry::_internal_rtekind() const { - return static_cast< ::pg_query::RTEKind >(_impl_.rtekind_); +inline int AlterOpFamilyStmt::opfamilyname_size() const { + return _internal_opfamilyname_size(); } -inline ::pg_query::RTEKind RangeTblEntry::rtekind() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.rtekind) - return _internal_rtekind(); +inline void AlterOpFamilyStmt::clear_opfamilyname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.opfamilyname_.Clear(); } -inline void RangeTblEntry::_internal_set_rtekind(::pg_query::RTEKind value) { - - _impl_.rtekind_ = value; +inline ::pg_query::Node* AlterOpFamilyStmt::mutable_opfamilyname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterOpFamilyStmt.opfamilyname) + return _internal_mutable_opfamilyname()->Mutable(index); } -inline void RangeTblEntry::set_rtekind(::pg_query::RTEKind value) { - _internal_set_rtekind(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.rtekind) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterOpFamilyStmt::mutable_opfamilyname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterOpFamilyStmt.opfamilyname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_opfamilyname(); } - -// uint32 relid = 2 [json_name = "relid"]; -inline void RangeTblEntry::clear_relid() { - _impl_.relid_ = 0u; +inline const ::pg_query::Node& AlterOpFamilyStmt::opfamilyname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterOpFamilyStmt.opfamilyname) + return _internal_opfamilyname().Get(index); } -inline uint32_t RangeTblEntry::_internal_relid() const { - return _impl_.relid_; +inline ::pg_query::Node* AlterOpFamilyStmt::add_opfamilyname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_opfamilyname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterOpFamilyStmt.opfamilyname) + return _add; } -inline uint32_t RangeTblEntry::relid() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.relid) - return _internal_relid(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterOpFamilyStmt::opfamilyname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterOpFamilyStmt.opfamilyname) + return _internal_opfamilyname(); } -inline void RangeTblEntry::_internal_set_relid(uint32_t value) { - - _impl_.relid_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterOpFamilyStmt::_internal_opfamilyname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.opfamilyname_; } -inline void RangeTblEntry::set_relid(uint32_t value) { - _internal_set_relid(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.relid) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterOpFamilyStmt::_internal_mutable_opfamilyname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.opfamilyname_; } -// string relkind = 3 [json_name = "relkind"]; -inline void RangeTblEntry::clear_relkind() { - _impl_.relkind_.ClearToEmpty(); +// string amname = 2 [json_name = "amname"]; +inline void AlterOpFamilyStmt::clear_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amname_.ClearToEmpty(); } -inline const std::string& RangeTblEntry::relkind() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.relkind) - return _internal_relkind(); +inline const std::string& AlterOpFamilyStmt::amname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterOpFamilyStmt.amname) + return _internal_amname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void RangeTblEntry::set_relkind(ArgT0&& arg0, ArgT... args) { - - _impl_.relkind_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.relkind) +template +inline PROTOBUF_ALWAYS_INLINE void AlterOpFamilyStmt::set_amname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterOpFamilyStmt.amname) } -inline std::string* RangeTblEntry::mutable_relkind() { - std::string* _s = _internal_mutable_relkind(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.relkind) +inline std::string* AlterOpFamilyStmt::mutable_amname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_amname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterOpFamilyStmt.amname) return _s; } -inline const std::string& RangeTblEntry::_internal_relkind() const { - return _impl_.relkind_.Get(); +inline const std::string& AlterOpFamilyStmt::_internal_amname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.amname_.Get(); } -inline void RangeTblEntry::_internal_set_relkind(const std::string& value) { - - _impl_.relkind_.Set(value, GetArenaForAllocation()); +inline void AlterOpFamilyStmt::_internal_set_amname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.amname_.Set(value, GetArena()); } -inline std::string* RangeTblEntry::_internal_mutable_relkind() { - - return _impl_.relkind_.Mutable(GetArenaForAllocation()); +inline std::string* AlterOpFamilyStmt::_internal_mutable_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.amname_.Mutable( GetArena()); } -inline std::string* RangeTblEntry::release_relkind() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.relkind) - return _impl_.relkind_.Release(); +inline std::string* AlterOpFamilyStmt::release_amname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterOpFamilyStmt.amname) + return _impl_.amname_.Release(); } -inline void RangeTblEntry::set_allocated_relkind(std::string* relkind) { - if (relkind != nullptr) { - - } else { - - } - _impl_.relkind_.SetAllocated(relkind, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.relkind_.IsDefault()) { - _impl_.relkind_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.relkind) +inline void AlterOpFamilyStmt::set_allocated_amname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.amname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.amname_.IsDefault()) { + _impl_.amname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOpFamilyStmt.amname) } -// int32 rellockmode = 4 [json_name = "rellockmode"]; -inline void RangeTblEntry::clear_rellockmode() { - _impl_.rellockmode_ = 0; +// bool is_drop = 3 [json_name = "isDrop"]; +inline void AlterOpFamilyStmt::clear_is_drop() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_drop_ = false; } -inline int32_t RangeTblEntry::_internal_rellockmode() const { - return _impl_.rellockmode_; +inline bool AlterOpFamilyStmt::is_drop() const { + // @@protoc_insertion_point(field_get:pg_query.AlterOpFamilyStmt.is_drop) + return _internal_is_drop(); } -inline int32_t RangeTblEntry::rellockmode() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.rellockmode) - return _internal_rellockmode(); +inline void AlterOpFamilyStmt::set_is_drop(bool value) { + _internal_set_is_drop(value); + // @@protoc_insertion_point(field_set:pg_query.AlterOpFamilyStmt.is_drop) } -inline void RangeTblEntry::_internal_set_rellockmode(int32_t value) { - - _impl_.rellockmode_ = value; +inline bool AlterOpFamilyStmt::_internal_is_drop() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_drop_; } -inline void RangeTblEntry::set_rellockmode(int32_t value) { - _internal_set_rellockmode(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.rellockmode) +inline void AlterOpFamilyStmt::_internal_set_is_drop(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_drop_ = value; } -// .pg_query.TableSampleClause tablesample = 5 [json_name = "tablesample"]; -inline bool RangeTblEntry::_internal_has_tablesample() const { - return this != internal_default_instance() && _impl_.tablesample_ != nullptr; -} -inline bool RangeTblEntry::has_tablesample() const { - return _internal_has_tablesample(); +// repeated .pg_query.Node items = 4 [json_name = "items"]; +inline int AlterOpFamilyStmt::_internal_items_size() const { + return _internal_items().size(); } -inline void RangeTblEntry::clear_tablesample() { - if (GetArenaForAllocation() == nullptr && _impl_.tablesample_ != nullptr) { - delete _impl_.tablesample_; - } - _impl_.tablesample_ = nullptr; +inline int AlterOpFamilyStmt::items_size() const { + return _internal_items_size(); } -inline const ::pg_query::TableSampleClause& RangeTblEntry::_internal_tablesample() const { - const ::pg_query::TableSampleClause* p = _impl_.tablesample_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TableSampleClause_default_instance_); +inline void AlterOpFamilyStmt::clear_items() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.items_.Clear(); } -inline const ::pg_query::TableSampleClause& RangeTblEntry::tablesample() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.tablesample) - return _internal_tablesample(); +inline ::pg_query::Node* AlterOpFamilyStmt::mutable_items(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterOpFamilyStmt.items) + return _internal_mutable_items()->Mutable(index); } -inline void RangeTblEntry::unsafe_arena_set_allocated_tablesample( - ::pg_query::TableSampleClause* tablesample) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.tablesample_); - } - _impl_.tablesample_ = tablesample; - if (tablesample) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.tablesample) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterOpFamilyStmt::mutable_items() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterOpFamilyStmt.items) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_items(); } -inline ::pg_query::TableSampleClause* RangeTblEntry::release_tablesample() { - - ::pg_query::TableSampleClause* temp = _impl_.tablesample_; - _impl_.tablesample_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& AlterOpFamilyStmt::items(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterOpFamilyStmt.items) + return _internal_items().Get(index); } -inline ::pg_query::TableSampleClause* RangeTblEntry::unsafe_arena_release_tablesample() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.tablesample) - - ::pg_query::TableSampleClause* temp = _impl_.tablesample_; - _impl_.tablesample_ = nullptr; - return temp; +inline ::pg_query::Node* AlterOpFamilyStmt::add_items() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_items()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterOpFamilyStmt.items) + return _add; } -inline ::pg_query::TableSampleClause* RangeTblEntry::_internal_mutable_tablesample() { - - if (_impl_.tablesample_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TableSampleClause>(GetArenaForAllocation()); - _impl_.tablesample_ = p; - } - return _impl_.tablesample_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterOpFamilyStmt::items() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterOpFamilyStmt.items) + return _internal_items(); } -inline ::pg_query::TableSampleClause* RangeTblEntry::mutable_tablesample() { - ::pg_query::TableSampleClause* _msg = _internal_mutable_tablesample(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.tablesample) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterOpFamilyStmt::_internal_items() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.items_; } -inline void RangeTblEntry::set_allocated_tablesample(::pg_query::TableSampleClause* tablesample) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.tablesample_; - } - if (tablesample) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(tablesample); - if (message_arena != submessage_arena) { - tablesample = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, tablesample, submessage_arena); - } - - } else { - - } - _impl_.tablesample_ = tablesample; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.tablesample) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterOpFamilyStmt::_internal_mutable_items() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.items_; } -// .pg_query.Query subquery = 6 [json_name = "subquery"]; -inline bool RangeTblEntry::_internal_has_subquery() const { - return this != internal_default_instance() && _impl_.subquery_ != nullptr; -} -inline bool RangeTblEntry::has_subquery() const { - return _internal_has_subquery(); -} -inline void RangeTblEntry::clear_subquery() { - if (GetArenaForAllocation() == nullptr && _impl_.subquery_ != nullptr) { - delete _impl_.subquery_; - } - _impl_.subquery_ = nullptr; -} -inline const ::pg_query::Query& RangeTblEntry::_internal_subquery() const { - const ::pg_query::Query* p = _impl_.subquery_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Query_default_instance_); -} -inline const ::pg_query::Query& RangeTblEntry::subquery() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.subquery) - return _internal_subquery(); -} -inline void RangeTblEntry::unsafe_arena_set_allocated_subquery( - ::pg_query::Query* subquery) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.subquery_); - } - _impl_.subquery_ = subquery; - if (subquery) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.subquery) -} -inline ::pg_query::Query* RangeTblEntry::release_subquery() { - - ::pg_query::Query* temp = _impl_.subquery_; - _impl_.subquery_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +// ------------------------------------------------------------------- + +// DropStmt + +// repeated .pg_query.Node objects = 1 [json_name = "objects"]; +inline int DropStmt::_internal_objects_size() const { + return _internal_objects().size(); } -inline ::pg_query::Query* RangeTblEntry::unsafe_arena_release_subquery() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.subquery) - - ::pg_query::Query* temp = _impl_.subquery_; - _impl_.subquery_ = nullptr; - return temp; +inline int DropStmt::objects_size() const { + return _internal_objects_size(); } -inline ::pg_query::Query* RangeTblEntry::_internal_mutable_subquery() { - - if (_impl_.subquery_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Query>(GetArenaForAllocation()); - _impl_.subquery_ = p; - } - return _impl_.subquery_; +inline void DropStmt::clear_objects() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objects_.Clear(); } -inline ::pg_query::Query* RangeTblEntry::mutable_subquery() { - ::pg_query::Query* _msg = _internal_mutable_subquery(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.subquery) - return _msg; +inline ::pg_query::Node* DropStmt::mutable_objects(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DropStmt.objects) + return _internal_mutable_objects()->Mutable(index); } -inline void RangeTblEntry::set_allocated_subquery(::pg_query::Query* subquery) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.subquery_; - } - if (subquery) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(subquery); - if (message_arena != submessage_arena) { - subquery = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, subquery, submessage_arena); - } - - } else { - - } - _impl_.subquery_ = subquery; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.subquery) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DropStmt::mutable_objects() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DropStmt.objects) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_objects(); } - -// bool security_barrier = 7 [json_name = "security_barrier"]; -inline void RangeTblEntry::clear_security_barrier() { - _impl_.security_barrier_ = false; +inline const ::pg_query::Node& DropStmt::objects(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DropStmt.objects) + return _internal_objects().Get(index); } -inline bool RangeTblEntry::_internal_security_barrier() const { - return _impl_.security_barrier_; +inline ::pg_query::Node* DropStmt::add_objects() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_objects()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DropStmt.objects) + return _add; } -inline bool RangeTblEntry::security_barrier() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.security_barrier) - return _internal_security_barrier(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DropStmt::objects() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DropStmt.objects) + return _internal_objects(); } -inline void RangeTblEntry::_internal_set_security_barrier(bool value) { - - _impl_.security_barrier_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DropStmt::_internal_objects() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.objects_; } -inline void RangeTblEntry::set_security_barrier(bool value) { - _internal_set_security_barrier(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.security_barrier) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DropStmt::_internal_mutable_objects() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.objects_; } -// .pg_query.JoinType jointype = 8 [json_name = "jointype"]; -inline void RangeTblEntry::clear_jointype() { - _impl_.jointype_ = 0; +// .pg_query.ObjectType remove_type = 2 [json_name = "removeType"]; +inline void DropStmt::clear_remove_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.remove_type_ = 0; } -inline ::pg_query::JoinType RangeTblEntry::_internal_jointype() const { - return static_cast< ::pg_query::JoinType >(_impl_.jointype_); +inline ::pg_query::ObjectType DropStmt::remove_type() const { + // @@protoc_insertion_point(field_get:pg_query.DropStmt.remove_type) + return _internal_remove_type(); } -inline ::pg_query::JoinType RangeTblEntry::jointype() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.jointype) - return _internal_jointype(); +inline void DropStmt::set_remove_type(::pg_query::ObjectType value) { + _internal_set_remove_type(value); + // @@protoc_insertion_point(field_set:pg_query.DropStmt.remove_type) } -inline void RangeTblEntry::_internal_set_jointype(::pg_query::JoinType value) { - - _impl_.jointype_ = value; +inline ::pg_query::ObjectType DropStmt::_internal_remove_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.remove_type_); } -inline void RangeTblEntry::set_jointype(::pg_query::JoinType value) { - _internal_set_jointype(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.jointype) +inline void DropStmt::_internal_set_remove_type(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.remove_type_ = value; } -// int32 joinmergedcols = 9 [json_name = "joinmergedcols"]; -inline void RangeTblEntry::clear_joinmergedcols() { - _impl_.joinmergedcols_ = 0; +// .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; +inline void DropStmt::clear_behavior() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.behavior_ = 0; } -inline int32_t RangeTblEntry::_internal_joinmergedcols() const { - return _impl_.joinmergedcols_; +inline ::pg_query::DropBehavior DropStmt::behavior() const { + // @@protoc_insertion_point(field_get:pg_query.DropStmt.behavior) + return _internal_behavior(); } -inline int32_t RangeTblEntry::joinmergedcols() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.joinmergedcols) - return _internal_joinmergedcols(); +inline void DropStmt::set_behavior(::pg_query::DropBehavior value) { + _internal_set_behavior(value); + // @@protoc_insertion_point(field_set:pg_query.DropStmt.behavior) } -inline void RangeTblEntry::_internal_set_joinmergedcols(int32_t value) { - - _impl_.joinmergedcols_ = value; +inline ::pg_query::DropBehavior DropStmt::_internal_behavior() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DropBehavior>(_impl_.behavior_); } -inline void RangeTblEntry::set_joinmergedcols(int32_t value) { - _internal_set_joinmergedcols(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.joinmergedcols) +inline void DropStmt::_internal_set_behavior(::pg_query::DropBehavior value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.behavior_ = value; } -// repeated .pg_query.Node joinaliasvars = 10 [json_name = "joinaliasvars"]; -inline int RangeTblEntry::_internal_joinaliasvars_size() const { - return _impl_.joinaliasvars_.size(); +// bool missing_ok = 4 [json_name = "missing_ok"]; +inline void DropStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline int RangeTblEntry::joinaliasvars_size() const { - return _internal_joinaliasvars_size(); +inline bool DropStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.DropStmt.missing_ok) + return _internal_missing_ok(); } -inline void RangeTblEntry::clear_joinaliasvars() { - _impl_.joinaliasvars_.Clear(); +inline void DropStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.DropStmt.missing_ok) } -inline ::pg_query::Node* RangeTblEntry::mutable_joinaliasvars(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.joinaliasvars) - return _impl_.joinaliasvars_.Mutable(index); +inline bool DropStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblEntry::mutable_joinaliasvars() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.joinaliasvars) - return &_impl_.joinaliasvars_; +inline void DropStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } -inline const ::pg_query::Node& RangeTblEntry::_internal_joinaliasvars(int index) const { - return _impl_.joinaliasvars_.Get(index); + +// bool concurrent = 5 [json_name = "concurrent"]; +inline void DropStmt::clear_concurrent() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.concurrent_ = false; } -inline const ::pg_query::Node& RangeTblEntry::joinaliasvars(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.joinaliasvars) - return _internal_joinaliasvars(index); +inline bool DropStmt::concurrent() const { + // @@protoc_insertion_point(field_get:pg_query.DropStmt.concurrent) + return _internal_concurrent(); } -inline ::pg_query::Node* RangeTblEntry::_internal_add_joinaliasvars() { - return _impl_.joinaliasvars_.Add(); +inline void DropStmt::set_concurrent(bool value) { + _internal_set_concurrent(value); + // @@protoc_insertion_point(field_set:pg_query.DropStmt.concurrent) } -inline ::pg_query::Node* RangeTblEntry::add_joinaliasvars() { - ::pg_query::Node* _add = _internal_add_joinaliasvars(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.joinaliasvars) - return _add; +inline bool DropStmt::_internal_concurrent() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.concurrent_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblEntry::joinaliasvars() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.joinaliasvars) - return _impl_.joinaliasvars_; +inline void DropStmt::_internal_set_concurrent(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.concurrent_ = value; } -// repeated .pg_query.Node joinleftcols = 11 [json_name = "joinleftcols"]; -inline int RangeTblEntry::_internal_joinleftcols_size() const { - return _impl_.joinleftcols_.size(); +// ------------------------------------------------------------------- + +// TruncateStmt + +// repeated .pg_query.Node relations = 1 [json_name = "relations"]; +inline int TruncateStmt::_internal_relations_size() const { + return _internal_relations().size(); } -inline int RangeTblEntry::joinleftcols_size() const { - return _internal_joinleftcols_size(); +inline int TruncateStmt::relations_size() const { + return _internal_relations_size(); } -inline void RangeTblEntry::clear_joinleftcols() { - _impl_.joinleftcols_.Clear(); +inline void TruncateStmt::clear_relations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relations_.Clear(); } -inline ::pg_query::Node* RangeTblEntry::mutable_joinleftcols(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.joinleftcols) - return _impl_.joinleftcols_.Mutable(index); +inline ::pg_query::Node* TruncateStmt::mutable_relations(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TruncateStmt.relations) + return _internal_mutable_relations()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblEntry::mutable_joinleftcols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.joinleftcols) - return &_impl_.joinleftcols_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TruncateStmt::mutable_relations() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TruncateStmt.relations) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_relations(); } -inline const ::pg_query::Node& RangeTblEntry::_internal_joinleftcols(int index) const { - return _impl_.joinleftcols_.Get(index); +inline const ::pg_query::Node& TruncateStmt::relations(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TruncateStmt.relations) + return _internal_relations().Get(index); } -inline const ::pg_query::Node& RangeTblEntry::joinleftcols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.joinleftcols) - return _internal_joinleftcols(index); +inline ::pg_query::Node* TruncateStmt::add_relations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_relations()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TruncateStmt.relations) + return _add; } -inline ::pg_query::Node* RangeTblEntry::_internal_add_joinleftcols() { - return _impl_.joinleftcols_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TruncateStmt::relations() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TruncateStmt.relations) + return _internal_relations(); } -inline ::pg_query::Node* RangeTblEntry::add_joinleftcols() { - ::pg_query::Node* _add = _internal_add_joinleftcols(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.joinleftcols) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TruncateStmt::_internal_relations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relations_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblEntry::joinleftcols() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.joinleftcols) - return _impl_.joinleftcols_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TruncateStmt::_internal_mutable_relations() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.relations_; } -// repeated .pg_query.Node joinrightcols = 12 [json_name = "joinrightcols"]; -inline int RangeTblEntry::_internal_joinrightcols_size() const { - return _impl_.joinrightcols_.size(); +// bool restart_seqs = 2 [json_name = "restart_seqs"]; +inline void TruncateStmt::clear_restart_seqs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.restart_seqs_ = false; } -inline int RangeTblEntry::joinrightcols_size() const { - return _internal_joinrightcols_size(); +inline bool TruncateStmt::restart_seqs() const { + // @@protoc_insertion_point(field_get:pg_query.TruncateStmt.restart_seqs) + return _internal_restart_seqs(); } -inline void RangeTblEntry::clear_joinrightcols() { - _impl_.joinrightcols_.Clear(); +inline void TruncateStmt::set_restart_seqs(bool value) { + _internal_set_restart_seqs(value); + // @@protoc_insertion_point(field_set:pg_query.TruncateStmt.restart_seqs) } -inline ::pg_query::Node* RangeTblEntry::mutable_joinrightcols(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.joinrightcols) - return _impl_.joinrightcols_.Mutable(index); +inline bool TruncateStmt::_internal_restart_seqs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.restart_seqs_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblEntry::mutable_joinrightcols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.joinrightcols) - return &_impl_.joinrightcols_; +inline void TruncateStmt::_internal_set_restart_seqs(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.restart_seqs_ = value; } -inline const ::pg_query::Node& RangeTblEntry::_internal_joinrightcols(int index) const { - return _impl_.joinrightcols_.Get(index); + +// .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; +inline void TruncateStmt::clear_behavior() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.behavior_ = 0; } -inline const ::pg_query::Node& RangeTblEntry::joinrightcols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.joinrightcols) - return _internal_joinrightcols(index); +inline ::pg_query::DropBehavior TruncateStmt::behavior() const { + // @@protoc_insertion_point(field_get:pg_query.TruncateStmt.behavior) + return _internal_behavior(); } -inline ::pg_query::Node* RangeTblEntry::_internal_add_joinrightcols() { - return _impl_.joinrightcols_.Add(); +inline void TruncateStmt::set_behavior(::pg_query::DropBehavior value) { + _internal_set_behavior(value); + // @@protoc_insertion_point(field_set:pg_query.TruncateStmt.behavior) } -inline ::pg_query::Node* RangeTblEntry::add_joinrightcols() { - ::pg_query::Node* _add = _internal_add_joinrightcols(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.joinrightcols) - return _add; +inline ::pg_query::DropBehavior TruncateStmt::_internal_behavior() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DropBehavior>(_impl_.behavior_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblEntry::joinrightcols() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.joinrightcols) - return _impl_.joinrightcols_; +inline void TruncateStmt::_internal_set_behavior(::pg_query::DropBehavior value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.behavior_ = value; } -// .pg_query.Alias join_using_alias = 13 [json_name = "join_using_alias"]; -inline bool RangeTblEntry::_internal_has_join_using_alias() const { - return this != internal_default_instance() && _impl_.join_using_alias_ != nullptr; +// ------------------------------------------------------------------- + +// CommentStmt + +// .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; +inline void CommentStmt::clear_objtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objtype_ = 0; } -inline bool RangeTblEntry::has_join_using_alias() const { - return _internal_has_join_using_alias(); +inline ::pg_query::ObjectType CommentStmt::objtype() const { + // @@protoc_insertion_point(field_get:pg_query.CommentStmt.objtype) + return _internal_objtype(); } -inline void RangeTblEntry::clear_join_using_alias() { - if (GetArenaForAllocation() == nullptr && _impl_.join_using_alias_ != nullptr) { - delete _impl_.join_using_alias_; - } - _impl_.join_using_alias_ = nullptr; +inline void CommentStmt::set_objtype(::pg_query::ObjectType value) { + _internal_set_objtype(value); + // @@protoc_insertion_point(field_set:pg_query.CommentStmt.objtype) } -inline const ::pg_query::Alias& RangeTblEntry::_internal_join_using_alias() const { - const ::pg_query::Alias* p = _impl_.join_using_alias_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Alias_default_instance_); +inline ::pg_query::ObjectType CommentStmt::_internal_objtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.objtype_); } -inline const ::pg_query::Alias& RangeTblEntry::join_using_alias() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.join_using_alias) - return _internal_join_using_alias(); +inline void CommentStmt::_internal_set_objtype(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.objtype_ = value; +} + +// .pg_query.Node object = 2 [json_name = "object"]; +inline bool CommentStmt::has_object() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.object_ != nullptr); + return value; +} +inline void CommentStmt::clear_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.object_ != nullptr) _impl_.object_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& CommentStmt::_internal_object() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.object_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& CommentStmt::object() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommentStmt.object) + return _internal_object(); } -inline void RangeTblEntry::unsafe_arena_set_allocated_join_using_alias( - ::pg_query::Alias* join_using_alias) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.join_using_alias_); +inline void CommentStmt::unsafe_arena_set_allocated_object(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.object_); } - _impl_.join_using_alias_ = join_using_alias; - if (join_using_alias) { - + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.join_using_alias) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CommentStmt.object) } -inline ::pg_query::Alias* RangeTblEntry::release_join_using_alias() { - - ::pg_query::Alias* temp = _impl_.join_using_alias_; - _impl_.join_using_alias_ = nullptr; +inline ::pg_query::Node* CommentStmt::release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.object_; + _impl_.object_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Alias* RangeTblEntry::unsafe_arena_release_join_using_alias() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.join_using_alias) - - ::pg_query::Alias* temp = _impl_.join_using_alias_; - _impl_.join_using_alias_ = nullptr; +inline ::pg_query::Node* CommentStmt::unsafe_arena_release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CommentStmt.object) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.object_; + _impl_.object_ = nullptr; return temp; } -inline ::pg_query::Alias* RangeTblEntry::_internal_mutable_join_using_alias() { - - if (_impl_.join_using_alias_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArenaForAllocation()); - _impl_.join_using_alias_ = p; +inline ::pg_query::Node* CommentStmt::_internal_mutable_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.object_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.join_using_alias_; + return _impl_.object_; } -inline ::pg_query::Alias* RangeTblEntry::mutable_join_using_alias() { - ::pg_query::Alias* _msg = _internal_mutable_join_using_alias(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.join_using_alias) +inline ::pg_query::Node* CommentStmt::mutable_object() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_object(); + // @@protoc_insertion_point(field_mutable:pg_query.CommentStmt.object) return _msg; } -inline void RangeTblEntry::set_allocated_join_using_alias(::pg_query::Alias* join_using_alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CommentStmt::set_allocated_object(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.join_using_alias_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.object_); } - if (join_using_alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(join_using_alias); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - join_using_alias = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, join_using_alias, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.join_using_alias_ = join_using_alias; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.join_using_alias) -} -// repeated .pg_query.Node functions = 14 [json_name = "functions"]; -inline int RangeTblEntry::_internal_functions_size() const { - return _impl_.functions_.size(); + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CommentStmt.object) } -inline int RangeTblEntry::functions_size() const { - return _internal_functions_size(); + +// string comment = 3 [json_name = "comment"]; +inline void CommentStmt::clear_comment() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.comment_.ClearToEmpty(); } -inline void RangeTblEntry::clear_functions() { - _impl_.functions_.Clear(); +inline const std::string& CommentStmt::comment() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CommentStmt.comment) + return _internal_comment(); } -inline ::pg_query::Node* RangeTblEntry::mutable_functions(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.functions) - return _impl_.functions_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void CommentStmt::set_comment(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.comment_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CommentStmt.comment) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblEntry::mutable_functions() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.functions) - return &_impl_.functions_; +inline std::string* CommentStmt::mutable_comment() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_comment(); + // @@protoc_insertion_point(field_mutable:pg_query.CommentStmt.comment) + return _s; } -inline const ::pg_query::Node& RangeTblEntry::_internal_functions(int index) const { - return _impl_.functions_.Get(index); +inline const std::string& CommentStmt::_internal_comment() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.comment_.Get(); } -inline const ::pg_query::Node& RangeTblEntry::functions(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.functions) - return _internal_functions(index); +inline void CommentStmt::_internal_set_comment(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.comment_.Set(value, GetArena()); } -inline ::pg_query::Node* RangeTblEntry::_internal_add_functions() { - return _impl_.functions_.Add(); +inline std::string* CommentStmt::_internal_mutable_comment() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.comment_.Mutable( GetArena()); } -inline ::pg_query::Node* RangeTblEntry::add_functions() { - ::pg_query::Node* _add = _internal_add_functions(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.functions) - return _add; +inline std::string* CommentStmt::release_comment() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CommentStmt.comment) + return _impl_.comment_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblEntry::functions() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.functions) - return _impl_.functions_; +inline void CommentStmt::set_allocated_comment(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.comment_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.comment_.IsDefault()) { + _impl_.comment_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CommentStmt.comment) } -// bool funcordinality = 15 [json_name = "funcordinality"]; -inline void RangeTblEntry::clear_funcordinality() { - _impl_.funcordinality_ = false; +// ------------------------------------------------------------------- + +// SecLabelStmt + +// .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; +inline void SecLabelStmt::clear_objtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objtype_ = 0; } -inline bool RangeTblEntry::_internal_funcordinality() const { - return _impl_.funcordinality_; +inline ::pg_query::ObjectType SecLabelStmt::objtype() const { + // @@protoc_insertion_point(field_get:pg_query.SecLabelStmt.objtype) + return _internal_objtype(); } -inline bool RangeTblEntry::funcordinality() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.funcordinality) - return _internal_funcordinality(); +inline void SecLabelStmt::set_objtype(::pg_query::ObjectType value) { + _internal_set_objtype(value); + // @@protoc_insertion_point(field_set:pg_query.SecLabelStmt.objtype) } -inline void RangeTblEntry::_internal_set_funcordinality(bool value) { - - _impl_.funcordinality_ = value; +inline ::pg_query::ObjectType SecLabelStmt::_internal_objtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.objtype_); } -inline void RangeTblEntry::set_funcordinality(bool value) { - _internal_set_funcordinality(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.funcordinality) +inline void SecLabelStmt::_internal_set_objtype(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.objtype_ = value; } -// .pg_query.TableFunc tablefunc = 16 [json_name = "tablefunc"]; -inline bool RangeTblEntry::_internal_has_tablefunc() const { - return this != internal_default_instance() && _impl_.tablefunc_ != nullptr; -} -inline bool RangeTblEntry::has_tablefunc() const { - return _internal_has_tablefunc(); +// .pg_query.Node object = 2 [json_name = "object"]; +inline bool SecLabelStmt::has_object() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.object_ != nullptr); + return value; } -inline void RangeTblEntry::clear_tablefunc() { - if (GetArenaForAllocation() == nullptr && _impl_.tablefunc_ != nullptr) { - delete _impl_.tablefunc_; - } - _impl_.tablefunc_ = nullptr; +inline void SecLabelStmt::clear_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.object_ != nullptr) _impl_.object_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::TableFunc& RangeTblEntry::_internal_tablefunc() const { - const ::pg_query::TableFunc* p = _impl_.tablefunc_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TableFunc_default_instance_); +inline const ::pg_query::Node& SecLabelStmt::_internal_object() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.object_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::TableFunc& RangeTblEntry::tablefunc() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.tablefunc) - return _internal_tablefunc(); +inline const ::pg_query::Node& SecLabelStmt::object() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SecLabelStmt.object) + return _internal_object(); } -inline void RangeTblEntry::unsafe_arena_set_allocated_tablefunc( - ::pg_query::TableFunc* tablefunc) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.tablefunc_); +inline void SecLabelStmt::unsafe_arena_set_allocated_object(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.object_); } - _impl_.tablefunc_ = tablefunc; - if (tablefunc) { - + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.tablefunc) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.SecLabelStmt.object) } -inline ::pg_query::TableFunc* RangeTblEntry::release_tablefunc() { - - ::pg_query::TableFunc* temp = _impl_.tablefunc_; - _impl_.tablefunc_ = nullptr; +inline ::pg_query::Node* SecLabelStmt::release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.object_; + _impl_.object_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TableFunc* RangeTblEntry::unsafe_arena_release_tablefunc() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.tablefunc) - - ::pg_query::TableFunc* temp = _impl_.tablefunc_; - _impl_.tablefunc_ = nullptr; +inline ::pg_query::Node* SecLabelStmt::unsafe_arena_release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SecLabelStmt.object) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.object_; + _impl_.object_ = nullptr; return temp; } -inline ::pg_query::TableFunc* RangeTblEntry::_internal_mutable_tablefunc() { - - if (_impl_.tablefunc_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TableFunc>(GetArenaForAllocation()); - _impl_.tablefunc_ = p; +inline ::pg_query::Node* SecLabelStmt::_internal_mutable_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.object_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.tablefunc_; + return _impl_.object_; } -inline ::pg_query::TableFunc* RangeTblEntry::mutable_tablefunc() { - ::pg_query::TableFunc* _msg = _internal_mutable_tablefunc(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.tablefunc) +inline ::pg_query::Node* SecLabelStmt::mutable_object() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_object(); + // @@protoc_insertion_point(field_mutable:pg_query.SecLabelStmt.object) return _msg; } -inline void RangeTblEntry::set_allocated_tablefunc(::pg_query::TableFunc* tablefunc) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void SecLabelStmt::set_allocated_object(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.tablefunc_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.object_); } - if (tablefunc) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(tablefunc); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - tablefunc = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, tablefunc, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.tablefunc_ = tablefunc; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.tablefunc) + + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.SecLabelStmt.object) } -// repeated .pg_query.Node values_lists = 17 [json_name = "values_lists"]; -inline int RangeTblEntry::_internal_values_lists_size() const { - return _impl_.values_lists_.size(); +// string provider = 3 [json_name = "provider"]; +inline void SecLabelStmt::clear_provider() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.provider_.ClearToEmpty(); } -inline int RangeTblEntry::values_lists_size() const { - return _internal_values_lists_size(); +inline const std::string& SecLabelStmt::provider() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SecLabelStmt.provider) + return _internal_provider(); } -inline void RangeTblEntry::clear_values_lists() { - _impl_.values_lists_.Clear(); +template +inline PROTOBUF_ALWAYS_INLINE void SecLabelStmt::set_provider(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.provider_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.SecLabelStmt.provider) } -inline ::pg_query::Node* RangeTblEntry::mutable_values_lists(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.values_lists) - return _impl_.values_lists_.Mutable(index); +inline std::string* SecLabelStmt::mutable_provider() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_provider(); + // @@protoc_insertion_point(field_mutable:pg_query.SecLabelStmt.provider) + return _s; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblEntry::mutable_values_lists() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.values_lists) - return &_impl_.values_lists_; +inline const std::string& SecLabelStmt::_internal_provider() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.provider_.Get(); } -inline const ::pg_query::Node& RangeTblEntry::_internal_values_lists(int index) const { - return _impl_.values_lists_.Get(index); +inline void SecLabelStmt::_internal_set_provider(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.provider_.Set(value, GetArena()); } -inline const ::pg_query::Node& RangeTblEntry::values_lists(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.values_lists) - return _internal_values_lists(index); +inline std::string* SecLabelStmt::_internal_mutable_provider() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.provider_.Mutable( GetArena()); } -inline ::pg_query::Node* RangeTblEntry::_internal_add_values_lists() { - return _impl_.values_lists_.Add(); +inline std::string* SecLabelStmt::release_provider() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SecLabelStmt.provider) + return _impl_.provider_.Release(); } -inline ::pg_query::Node* RangeTblEntry::add_values_lists() { - ::pg_query::Node* _add = _internal_add_values_lists(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.values_lists) - return _add; +inline void SecLabelStmt::set_allocated_provider(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.provider_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.provider_.IsDefault()) { + _impl_.provider_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.SecLabelStmt.provider) } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblEntry::values_lists() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.values_lists) - return _impl_.values_lists_; + +// string label = 4 [json_name = "label"]; +inline void SecLabelStmt::clear_label() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.label_.ClearToEmpty(); +} +inline const std::string& SecLabelStmt::label() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.SecLabelStmt.label) + return _internal_label(); +} +template +inline PROTOBUF_ALWAYS_INLINE void SecLabelStmt::set_label(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.label_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.SecLabelStmt.label) +} +inline std::string* SecLabelStmt::mutable_label() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_label(); + // @@protoc_insertion_point(field_mutable:pg_query.SecLabelStmt.label) + return _s; +} +inline const std::string& SecLabelStmt::_internal_label() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.label_.Get(); +} +inline void SecLabelStmt::_internal_set_label(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.label_.Set(value, GetArena()); +} +inline std::string* SecLabelStmt::_internal_mutable_label() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.label_.Mutable( GetArena()); +} +inline std::string* SecLabelStmt::release_label() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.SecLabelStmt.label) + return _impl_.label_.Release(); +} +inline void SecLabelStmt::set_allocated_label(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.label_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.label_.IsDefault()) { + _impl_.label_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.SecLabelStmt.label) } -// string ctename = 18 [json_name = "ctename"]; -inline void RangeTblEntry::clear_ctename() { - _impl_.ctename_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// DeclareCursorStmt + +// string portalname = 1 [json_name = "portalname"]; +inline void DeclareCursorStmt::clear_portalname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.portalname_.ClearToEmpty(); } -inline const std::string& RangeTblEntry::ctename() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.ctename) - return _internal_ctename(); +inline const std::string& DeclareCursorStmt::portalname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DeclareCursorStmt.portalname) + return _internal_portalname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void RangeTblEntry::set_ctename(ArgT0&& arg0, ArgT... args) { - - _impl_.ctename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.ctename) +template +inline PROTOBUF_ALWAYS_INLINE void DeclareCursorStmt::set_portalname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.portalname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.DeclareCursorStmt.portalname) } -inline std::string* RangeTblEntry::mutable_ctename() { - std::string* _s = _internal_mutable_ctename(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.ctename) +inline std::string* DeclareCursorStmt::mutable_portalname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_portalname(); + // @@protoc_insertion_point(field_mutable:pg_query.DeclareCursorStmt.portalname) return _s; } -inline const std::string& RangeTblEntry::_internal_ctename() const { - return _impl_.ctename_.Get(); +inline const std::string& DeclareCursorStmt::_internal_portalname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.portalname_.Get(); } -inline void RangeTblEntry::_internal_set_ctename(const std::string& value) { - - _impl_.ctename_.Set(value, GetArenaForAllocation()); +inline void DeclareCursorStmt::_internal_set_portalname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.portalname_.Set(value, GetArena()); } -inline std::string* RangeTblEntry::_internal_mutable_ctename() { - - return _impl_.ctename_.Mutable(GetArenaForAllocation()); +inline std::string* DeclareCursorStmt::_internal_mutable_portalname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.portalname_.Mutable( GetArena()); } -inline std::string* RangeTblEntry::release_ctename() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.ctename) - return _impl_.ctename_.Release(); +inline std::string* DeclareCursorStmt::release_portalname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DeclareCursorStmt.portalname) + return _impl_.portalname_.Release(); } -inline void RangeTblEntry::set_allocated_ctename(std::string* ctename) { - if (ctename != nullptr) { - - } else { - - } - _impl_.ctename_.SetAllocated(ctename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.ctename_.IsDefault()) { - _impl_.ctename_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.ctename) +inline void DeclareCursorStmt::set_allocated_portalname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.portalname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.portalname_.IsDefault()) { + _impl_.portalname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.DeclareCursorStmt.portalname) } -// uint32 ctelevelsup = 19 [json_name = "ctelevelsup"]; -inline void RangeTblEntry::clear_ctelevelsup() { - _impl_.ctelevelsup_ = 0u; +// int32 options = 2 [json_name = "options"]; +inline void DeclareCursorStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_ = 0; } -inline uint32_t RangeTblEntry::_internal_ctelevelsup() const { - return _impl_.ctelevelsup_; +inline ::int32_t DeclareCursorStmt::options() const { + // @@protoc_insertion_point(field_get:pg_query.DeclareCursorStmt.options) + return _internal_options(); } -inline uint32_t RangeTblEntry::ctelevelsup() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.ctelevelsup) - return _internal_ctelevelsup(); +inline void DeclareCursorStmt::set_options(::int32_t value) { + _internal_set_options(value); + // @@protoc_insertion_point(field_set:pg_query.DeclareCursorStmt.options) } -inline void RangeTblEntry::_internal_set_ctelevelsup(uint32_t value) { - - _impl_.ctelevelsup_ = value; +inline ::int32_t DeclareCursorStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline void RangeTblEntry::set_ctelevelsup(uint32_t value) { - _internal_set_ctelevelsup(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.ctelevelsup) +inline void DeclareCursorStmt::_internal_set_options(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.options_ = value; } -// bool self_reference = 20 [json_name = "self_reference"]; -inline void RangeTblEntry::clear_self_reference() { - _impl_.self_reference_ = false; +// .pg_query.Node query = 3 [json_name = "query"]; +inline bool DeclareCursorStmt::has_query() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.query_ != nullptr); + return value; } -inline bool RangeTblEntry::_internal_self_reference() const { - return _impl_.self_reference_; +inline void DeclareCursorStmt::clear_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.query_ != nullptr) _impl_.query_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline bool RangeTblEntry::self_reference() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.self_reference) - return _internal_self_reference(); +inline const ::pg_query::Node& DeclareCursorStmt::_internal_query() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.query_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void RangeTblEntry::_internal_set_self_reference(bool value) { - - _impl_.self_reference_ = value; +inline const ::pg_query::Node& DeclareCursorStmt::query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DeclareCursorStmt.query) + return _internal_query(); } -inline void RangeTblEntry::set_self_reference(bool value) { - _internal_set_self_reference(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.self_reference) +inline void DeclareCursorStmt::unsafe_arena_set_allocated_query(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.query_); + } + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.DeclareCursorStmt.query) +} +inline ::pg_query::Node* DeclareCursorStmt::release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.query_; + _impl_.query_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::Node* DeclareCursorStmt::unsafe_arena_release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DeclareCursorStmt.query) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.query_; + _impl_.query_ = nullptr; + return temp; +} +inline ::pg_query::Node* DeclareCursorStmt::_internal_mutable_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.query_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.query_; +} +inline ::pg_query::Node* DeclareCursorStmt::mutable_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_query(); + // @@protoc_insertion_point(field_mutable:pg_query.DeclareCursorStmt.query) + return _msg; } +inline void DeclareCursorStmt::set_allocated_query(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.query_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// repeated .pg_query.Node coltypes = 21 [json_name = "coltypes"]; -inline int RangeTblEntry::_internal_coltypes_size() const { - return _impl_.coltypes_.size(); + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.DeclareCursorStmt.query) } -inline int RangeTblEntry::coltypes_size() const { - return _internal_coltypes_size(); + +// ------------------------------------------------------------------- + +// ClosePortalStmt + +// string portalname = 1 [json_name = "portalname"]; +inline void ClosePortalStmt::clear_portalname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.portalname_.ClearToEmpty(); } -inline void RangeTblEntry::clear_coltypes() { - _impl_.coltypes_.Clear(); +inline const std::string& ClosePortalStmt::portalname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ClosePortalStmt.portalname) + return _internal_portalname(); } -inline ::pg_query::Node* RangeTblEntry::mutable_coltypes(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.coltypes) - return _impl_.coltypes_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void ClosePortalStmt::set_portalname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.portalname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ClosePortalStmt.portalname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblEntry::mutable_coltypes() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.coltypes) - return &_impl_.coltypes_; +inline std::string* ClosePortalStmt::mutable_portalname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_portalname(); + // @@protoc_insertion_point(field_mutable:pg_query.ClosePortalStmt.portalname) + return _s; } -inline const ::pg_query::Node& RangeTblEntry::_internal_coltypes(int index) const { - return _impl_.coltypes_.Get(index); +inline const std::string& ClosePortalStmt::_internal_portalname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.portalname_.Get(); } -inline const ::pg_query::Node& RangeTblEntry::coltypes(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.coltypes) - return _internal_coltypes(index); +inline void ClosePortalStmt::_internal_set_portalname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.portalname_.Set(value, GetArena()); } -inline ::pg_query::Node* RangeTblEntry::_internal_add_coltypes() { - return _impl_.coltypes_.Add(); +inline std::string* ClosePortalStmt::_internal_mutable_portalname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.portalname_.Mutable( GetArena()); } -inline ::pg_query::Node* RangeTblEntry::add_coltypes() { - ::pg_query::Node* _add = _internal_add_coltypes(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.coltypes) - return _add; +inline std::string* ClosePortalStmt::release_portalname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ClosePortalStmt.portalname) + return _impl_.portalname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblEntry::coltypes() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.coltypes) - return _impl_.coltypes_; +inline void ClosePortalStmt::set_allocated_portalname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.portalname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.portalname_.IsDefault()) { + _impl_.portalname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ClosePortalStmt.portalname) } -// repeated .pg_query.Node coltypmods = 22 [json_name = "coltypmods"]; -inline int RangeTblEntry::_internal_coltypmods_size() const { - return _impl_.coltypmods_.size(); +// ------------------------------------------------------------------- + +// FetchStmt + +// .pg_query.FetchDirection direction = 1 [json_name = "direction"]; +inline void FetchStmt::clear_direction() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.direction_ = 0; } -inline int RangeTblEntry::coltypmods_size() const { - return _internal_coltypmods_size(); +inline ::pg_query::FetchDirection FetchStmt::direction() const { + // @@protoc_insertion_point(field_get:pg_query.FetchStmt.direction) + return _internal_direction(); } -inline void RangeTblEntry::clear_coltypmods() { - _impl_.coltypmods_.Clear(); +inline void FetchStmt::set_direction(::pg_query::FetchDirection value) { + _internal_set_direction(value); + // @@protoc_insertion_point(field_set:pg_query.FetchStmt.direction) } -inline ::pg_query::Node* RangeTblEntry::mutable_coltypmods(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.coltypmods) - return _impl_.coltypmods_.Mutable(index); +inline ::pg_query::FetchDirection FetchStmt::_internal_direction() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::FetchDirection>(_impl_.direction_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblEntry::mutable_coltypmods() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.coltypmods) - return &_impl_.coltypmods_; +inline void FetchStmt::_internal_set_direction(::pg_query::FetchDirection value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.direction_ = value; } -inline const ::pg_query::Node& RangeTblEntry::_internal_coltypmods(int index) const { - return _impl_.coltypmods_.Get(index); + +// int64 how_many = 2 [json_name = "howMany"]; +inline void FetchStmt::clear_how_many() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.how_many_ = ::int64_t{0}; } -inline const ::pg_query::Node& RangeTblEntry::coltypmods(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.coltypmods) - return _internal_coltypmods(index); +inline ::int64_t FetchStmt::how_many() const { + // @@protoc_insertion_point(field_get:pg_query.FetchStmt.how_many) + return _internal_how_many(); } -inline ::pg_query::Node* RangeTblEntry::_internal_add_coltypmods() { - return _impl_.coltypmods_.Add(); +inline void FetchStmt::set_how_many(::int64_t value) { + _internal_set_how_many(value); + // @@protoc_insertion_point(field_set:pg_query.FetchStmt.how_many) } -inline ::pg_query::Node* RangeTblEntry::add_coltypmods() { - ::pg_query::Node* _add = _internal_add_coltypmods(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.coltypmods) - return _add; +inline ::int64_t FetchStmt::_internal_how_many() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.how_many_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblEntry::coltypmods() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.coltypmods) - return _impl_.coltypmods_; +inline void FetchStmt::_internal_set_how_many(::int64_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.how_many_ = value; } -// repeated .pg_query.Node colcollations = 23 [json_name = "colcollations"]; -inline int RangeTblEntry::_internal_colcollations_size() const { - return _impl_.colcollations_.size(); -} -inline int RangeTblEntry::colcollations_size() const { - return _internal_colcollations_size(); +// string portalname = 3 [json_name = "portalname"]; +inline void FetchStmt::clear_portalname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.portalname_.ClearToEmpty(); } -inline void RangeTblEntry::clear_colcollations() { - _impl_.colcollations_.Clear(); +inline const std::string& FetchStmt::portalname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FetchStmt.portalname) + return _internal_portalname(); } -inline ::pg_query::Node* RangeTblEntry::mutable_colcollations(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.colcollations) - return _impl_.colcollations_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void FetchStmt::set_portalname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.portalname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.FetchStmt.portalname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblEntry::mutable_colcollations() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.colcollations) - return &_impl_.colcollations_; +inline std::string* FetchStmt::mutable_portalname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_portalname(); + // @@protoc_insertion_point(field_mutable:pg_query.FetchStmt.portalname) + return _s; } -inline const ::pg_query::Node& RangeTblEntry::_internal_colcollations(int index) const { - return _impl_.colcollations_.Get(index); +inline const std::string& FetchStmt::_internal_portalname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.portalname_.Get(); } -inline const ::pg_query::Node& RangeTblEntry::colcollations(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.colcollations) - return _internal_colcollations(index); +inline void FetchStmt::_internal_set_portalname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.portalname_.Set(value, GetArena()); } -inline ::pg_query::Node* RangeTblEntry::_internal_add_colcollations() { - return _impl_.colcollations_.Add(); +inline std::string* FetchStmt::_internal_mutable_portalname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.portalname_.Mutable( GetArena()); } -inline ::pg_query::Node* RangeTblEntry::add_colcollations() { - ::pg_query::Node* _add = _internal_add_colcollations(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.colcollations) - return _add; +inline std::string* FetchStmt::release_portalname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FetchStmt.portalname) + return _impl_.portalname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblEntry::colcollations() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.colcollations) - return _impl_.colcollations_; +inline void FetchStmt::set_allocated_portalname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.portalname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.portalname_.IsDefault()) { + _impl_.portalname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.FetchStmt.portalname) } -// string enrname = 24 [json_name = "enrname"]; -inline void RangeTblEntry::clear_enrname() { - _impl_.enrname_.ClearToEmpty(); +// bool ismove = 4 [json_name = "ismove"]; +inline void FetchStmt::clear_ismove() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.ismove_ = false; } -inline const std::string& RangeTblEntry::enrname() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.enrname) - return _internal_enrname(); +inline bool FetchStmt::ismove() const { + // @@protoc_insertion_point(field_get:pg_query.FetchStmt.ismove) + return _internal_ismove(); } -template -inline PROTOBUF_ALWAYS_INLINE -void RangeTblEntry::set_enrname(ArgT0&& arg0, ArgT... args) { - - _impl_.enrname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.enrname) +inline void FetchStmt::set_ismove(bool value) { + _internal_set_ismove(value); + // @@protoc_insertion_point(field_set:pg_query.FetchStmt.ismove) } -inline std::string* RangeTblEntry::mutable_enrname() { - std::string* _s = _internal_mutable_enrname(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.enrname) - return _s; +inline bool FetchStmt::_internal_ismove() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.ismove_; } -inline const std::string& RangeTblEntry::_internal_enrname() const { - return _impl_.enrname_.Get(); +inline void FetchStmt::_internal_set_ismove(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.ismove_ = value; } -inline void RangeTblEntry::_internal_set_enrname(const std::string& value) { - - _impl_.enrname_.Set(value, GetArenaForAllocation()); + +// ------------------------------------------------------------------- + +// IndexStmt + +// string idxname = 1 [json_name = "idxname"]; +inline void IndexStmt::clear_idxname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.idxname_.ClearToEmpty(); } -inline std::string* RangeTblEntry::_internal_mutable_enrname() { - - return _impl_.enrname_.Mutable(GetArenaForAllocation()); +inline const std::string& IndexStmt::idxname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.idxname) + return _internal_idxname(); } -inline std::string* RangeTblEntry::release_enrname() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.enrname) - return _impl_.enrname_.Release(); +template +inline PROTOBUF_ALWAYS_INLINE void IndexStmt::set_idxname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.idxname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.idxname) } -inline void RangeTblEntry::set_allocated_enrname(std::string* enrname) { - if (enrname != nullptr) { - - } else { - - } - _impl_.enrname_.SetAllocated(enrname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.enrname_.IsDefault()) { - _impl_.enrname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.enrname) +inline std::string* IndexStmt::mutable_idxname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_idxname(); + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.idxname) + return _s; } - -// double enrtuples = 25 [json_name = "enrtuples"]; -inline void RangeTblEntry::clear_enrtuples() { - _impl_.enrtuples_ = 0; +inline const std::string& IndexStmt::_internal_idxname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.idxname_.Get(); } -inline double RangeTblEntry::_internal_enrtuples() const { - return _impl_.enrtuples_; +inline void IndexStmt::_internal_set_idxname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.idxname_.Set(value, GetArena()); } -inline double RangeTblEntry::enrtuples() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.enrtuples) - return _internal_enrtuples(); +inline std::string* IndexStmt::_internal_mutable_idxname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.idxname_.Mutable( GetArena()); } -inline void RangeTblEntry::_internal_set_enrtuples(double value) { - - _impl_.enrtuples_ = value; +inline std::string* IndexStmt::release_idxname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IndexStmt.idxname) + return _impl_.idxname_.Release(); } -inline void RangeTblEntry::set_enrtuples(double value) { - _internal_set_enrtuples(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.enrtuples) +inline void IndexStmt::set_allocated_idxname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.idxname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.idxname_.IsDefault()) { + _impl_.idxname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.idxname) } -// .pg_query.Alias alias = 26 [json_name = "alias"]; -inline bool RangeTblEntry::_internal_has_alias() const { - return this != internal_default_instance() && _impl_.alias_ != nullptr; -} -inline bool RangeTblEntry::has_alias() const { - return _internal_has_alias(); +// .pg_query.RangeVar relation = 2 [json_name = "relation"]; +inline bool IndexStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline void RangeTblEntry::clear_alias() { - if (GetArenaForAllocation() == nullptr && _impl_.alias_ != nullptr) { - delete _impl_.alias_; - } - _impl_.alias_ = nullptr; +inline void IndexStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Alias& RangeTblEntry::_internal_alias() const { - const ::pg_query::Alias* p = _impl_.alias_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Alias_default_instance_); +inline const ::pg_query::RangeVar& IndexStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::Alias& RangeTblEntry::alias() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.alias) - return _internal_alias(); +inline const ::pg_query::RangeVar& IndexStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.relation) + return _internal_relation(); } -inline void RangeTblEntry::unsafe_arena_set_allocated_alias( - ::pg_query::Alias* alias) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.alias_); +inline void IndexStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.alias_ = alias; - if (alias) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.alias) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IndexStmt.relation) } -inline ::pg_query::Alias* RangeTblEntry::release_alias() { - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; +inline ::pg_query::RangeVar* IndexStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Alias* RangeTblEntry::unsafe_arena_release_alias() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.alias) - - ::pg_query::Alias* temp = _impl_.alias_; - _impl_.alias_ = nullptr; +inline ::pg_query::RangeVar* IndexStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IndexStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::Alias* RangeTblEntry::_internal_mutable_alias() { - - if (_impl_.alias_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArenaForAllocation()); - _impl_.alias_ = p; +inline ::pg_query::RangeVar* IndexStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.alias_; + return _impl_.relation_; } -inline ::pg_query::Alias* RangeTblEntry::mutable_alias() { - ::pg_query::Alias* _msg = _internal_mutable_alias(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.alias) +inline ::pg_query::RangeVar* IndexStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.relation) return _msg; } -inline void RangeTblEntry::set_allocated_alias(::pg_query::Alias* alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void IndexStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.alias_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (alias) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(alias); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - alias = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, alias, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.alias_ = alias; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.alias) + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.relation) } -// .pg_query.Alias eref = 27 [json_name = "eref"]; -inline bool RangeTblEntry::_internal_has_eref() const { - return this != internal_default_instance() && _impl_.eref_ != nullptr; +// string access_method = 3 [json_name = "accessMethod"]; +inline void IndexStmt::clear_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.access_method_.ClearToEmpty(); } -inline bool RangeTblEntry::has_eref() const { - return _internal_has_eref(); +inline const std::string& IndexStmt::access_method() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.access_method) + return _internal_access_method(); } -inline void RangeTblEntry::clear_eref() { - if (GetArenaForAllocation() == nullptr && _impl_.eref_ != nullptr) { - delete _impl_.eref_; - } - _impl_.eref_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void IndexStmt::set_access_method(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.access_method_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.access_method) } -inline const ::pg_query::Alias& RangeTblEntry::_internal_eref() const { - const ::pg_query::Alias* p = _impl_.eref_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Alias_default_instance_); +inline std::string* IndexStmt::mutable_access_method() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_access_method(); + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.access_method) + return _s; } -inline const ::pg_query::Alias& RangeTblEntry::eref() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.eref) - return _internal_eref(); +inline const std::string& IndexStmt::_internal_access_method() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.access_method_.Get(); } -inline void RangeTblEntry::unsafe_arena_set_allocated_eref( - ::pg_query::Alias* eref) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.eref_); - } - _impl_.eref_ = eref; - if (eref) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblEntry.eref) +inline void IndexStmt::_internal_set_access_method(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.access_method_.Set(value, GetArena()); } -inline ::pg_query::Alias* RangeTblEntry::release_eref() { - - ::pg_query::Alias* temp = _impl_.eref_; - _impl_.eref_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* IndexStmt::_internal_mutable_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.access_method_.Mutable( GetArena()); } -inline ::pg_query::Alias* RangeTblEntry::unsafe_arena_release_eref() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblEntry.eref) - - ::pg_query::Alias* temp = _impl_.eref_; - _impl_.eref_ = nullptr; - return temp; +inline std::string* IndexStmt::release_access_method() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IndexStmt.access_method) + return _impl_.access_method_.Release(); } -inline ::pg_query::Alias* RangeTblEntry::_internal_mutable_eref() { - - if (_impl_.eref_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Alias>(GetArenaForAllocation()); - _impl_.eref_ = p; - } - return _impl_.eref_; +inline void IndexStmt::set_allocated_access_method(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.access_method_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.access_method_.IsDefault()) { + _impl_.access_method_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.access_method) } -inline ::pg_query::Alias* RangeTblEntry::mutable_eref() { - ::pg_query::Alias* _msg = _internal_mutable_eref(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.eref) - return _msg; + +// string table_space = 4 [json_name = "tableSpace"]; +inline void IndexStmt::clear_table_space() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.table_space_.ClearToEmpty(); } -inline void RangeTblEntry::set_allocated_eref(::pg_query::Alias* eref) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.eref_; - } - if (eref) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(eref); - if (message_arena != submessage_arena) { - eref = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, eref, submessage_arena); - } - - } else { - - } - _impl_.eref_ = eref; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblEntry.eref) +inline const std::string& IndexStmt::table_space() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.table_space) + return _internal_table_space(); } - -// bool lateral = 28 [json_name = "lateral"]; -inline void RangeTblEntry::clear_lateral() { - _impl_.lateral_ = false; +template +inline PROTOBUF_ALWAYS_INLINE void IndexStmt::set_table_space(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.table_space_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.table_space) } -inline bool RangeTblEntry::_internal_lateral() const { - return _impl_.lateral_; +inline std::string* IndexStmt::mutable_table_space() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_table_space(); + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.table_space) + return _s; } -inline bool RangeTblEntry::lateral() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.lateral) - return _internal_lateral(); +inline const std::string& IndexStmt::_internal_table_space() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.table_space_.Get(); } -inline void RangeTblEntry::_internal_set_lateral(bool value) { - - _impl_.lateral_ = value; +inline void IndexStmt::_internal_set_table_space(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.table_space_.Set(value, GetArena()); } -inline void RangeTblEntry::set_lateral(bool value) { - _internal_set_lateral(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.lateral) +inline std::string* IndexStmt::_internal_mutable_table_space() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.table_space_.Mutable( GetArena()); +} +inline std::string* IndexStmt::release_table_space() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IndexStmt.table_space) + return _impl_.table_space_.Release(); +} +inline void IndexStmt::set_allocated_table_space(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.table_space_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.table_space_.IsDefault()) { + _impl_.table_space_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.table_space) } -// bool inh = 29 [json_name = "inh"]; -inline void RangeTblEntry::clear_inh() { - _impl_.inh_ = false; +// repeated .pg_query.Node index_params = 5 [json_name = "indexParams"]; +inline int IndexStmt::_internal_index_params_size() const { + return _internal_index_params().size(); } -inline bool RangeTblEntry::_internal_inh() const { - return _impl_.inh_; +inline int IndexStmt::index_params_size() const { + return _internal_index_params_size(); } -inline bool RangeTblEntry::inh() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.inh) - return _internal_inh(); +inline void IndexStmt::clear_index_params() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.index_params_.Clear(); } -inline void RangeTblEntry::_internal_set_inh(bool value) { - - _impl_.inh_ = value; +inline ::pg_query::Node* IndexStmt::mutable_index_params(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.index_params) + return _internal_mutable_index_params()->Mutable(index); } -inline void RangeTblEntry::set_inh(bool value) { - _internal_set_inh(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.inh) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IndexStmt::mutable_index_params() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IndexStmt.index_params) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_index_params(); } - -// bool in_from_cl = 30 [json_name = "inFromCl"]; -inline void RangeTblEntry::clear_in_from_cl() { - _impl_.in_from_cl_ = false; +inline const ::pg_query::Node& IndexStmt::index_params(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.index_params) + return _internal_index_params().Get(index); } -inline bool RangeTblEntry::_internal_in_from_cl() const { - return _impl_.in_from_cl_; +inline ::pg_query::Node* IndexStmt::add_index_params() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_index_params()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IndexStmt.index_params) + return _add; } -inline bool RangeTblEntry::in_from_cl() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.in_from_cl) - return _internal_in_from_cl(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IndexStmt::index_params() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IndexStmt.index_params) + return _internal_index_params(); } -inline void RangeTblEntry::_internal_set_in_from_cl(bool value) { - - _impl_.in_from_cl_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IndexStmt::_internal_index_params() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.index_params_; } -inline void RangeTblEntry::set_in_from_cl(bool value) { - _internal_set_in_from_cl(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.in_from_cl) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IndexStmt::_internal_mutable_index_params() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.index_params_; } -// uint32 required_perms = 31 [json_name = "requiredPerms"]; -inline void RangeTblEntry::clear_required_perms() { - _impl_.required_perms_ = 0u; +// repeated .pg_query.Node index_including_params = 6 [json_name = "indexIncludingParams"]; +inline int IndexStmt::_internal_index_including_params_size() const { + return _internal_index_including_params().size(); } -inline uint32_t RangeTblEntry::_internal_required_perms() const { - return _impl_.required_perms_; +inline int IndexStmt::index_including_params_size() const { + return _internal_index_including_params_size(); } -inline uint32_t RangeTblEntry::required_perms() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.required_perms) - return _internal_required_perms(); +inline void IndexStmt::clear_index_including_params() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.index_including_params_.Clear(); } -inline void RangeTblEntry::_internal_set_required_perms(uint32_t value) { - - _impl_.required_perms_ = value; +inline ::pg_query::Node* IndexStmt::mutable_index_including_params(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.index_including_params) + return _internal_mutable_index_including_params()->Mutable(index); } -inline void RangeTblEntry::set_required_perms(uint32_t value) { - _internal_set_required_perms(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.required_perms) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IndexStmt::mutable_index_including_params() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IndexStmt.index_including_params) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_index_including_params(); } - -// uint32 check_as_user = 32 [json_name = "checkAsUser"]; -inline void RangeTblEntry::clear_check_as_user() { - _impl_.check_as_user_ = 0u; +inline const ::pg_query::Node& IndexStmt::index_including_params(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.index_including_params) + return _internal_index_including_params().Get(index); } -inline uint32_t RangeTblEntry::_internal_check_as_user() const { - return _impl_.check_as_user_; +inline ::pg_query::Node* IndexStmt::add_index_including_params() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_index_including_params()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IndexStmt.index_including_params) + return _add; } -inline uint32_t RangeTblEntry::check_as_user() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.check_as_user) - return _internal_check_as_user(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IndexStmt::index_including_params() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IndexStmt.index_including_params) + return _internal_index_including_params(); } -inline void RangeTblEntry::_internal_set_check_as_user(uint32_t value) { - - _impl_.check_as_user_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IndexStmt::_internal_index_including_params() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.index_including_params_; } -inline void RangeTblEntry::set_check_as_user(uint32_t value) { - _internal_set_check_as_user(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.check_as_user) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IndexStmt::_internal_mutable_index_including_params() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.index_including_params_; } -// repeated uint64 selected_cols = 33 [json_name = "selectedCols"]; -inline int RangeTblEntry::_internal_selected_cols_size() const { - return _impl_.selected_cols_.size(); +// repeated .pg_query.Node options = 7 [json_name = "options"]; +inline int IndexStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int RangeTblEntry::selected_cols_size() const { - return _internal_selected_cols_size(); +inline int IndexStmt::options_size() const { + return _internal_options_size(); } -inline void RangeTblEntry::clear_selected_cols() { - _impl_.selected_cols_.Clear(); +inline void IndexStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); +} +inline ::pg_query::Node* IndexStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline uint64_t RangeTblEntry::_internal_selected_cols(int index) const { - return _impl_.selected_cols_.Get(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IndexStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IndexStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline uint64_t RangeTblEntry::selected_cols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.selected_cols) - return _internal_selected_cols(index); +inline const ::pg_query::Node& IndexStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.options) + return _internal_options().Get(index); } -inline void RangeTblEntry::set_selected_cols(int index, uint64_t value) { - _impl_.selected_cols_.Set(index, value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.selected_cols) +inline ::pg_query::Node* IndexStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IndexStmt.options) + return _add; } -inline void RangeTblEntry::_internal_add_selected_cols(uint64_t value) { - _impl_.selected_cols_.Add(value); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IndexStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IndexStmt.options) + return _internal_options(); } -inline void RangeTblEntry::add_selected_cols(uint64_t value) { - _internal_add_selected_cols(value); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.selected_cols) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IndexStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblEntry::_internal_selected_cols() const { - return _impl_.selected_cols_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IndexStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblEntry::selected_cols() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.selected_cols) - return _internal_selected_cols(); + +// .pg_query.Node where_clause = 8 [json_name = "whereClause"]; +inline bool IndexStmt::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblEntry::_internal_mutable_selected_cols() { - return &_impl_.selected_cols_; +inline void IndexStmt::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblEntry::mutable_selected_cols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.selected_cols) - return _internal_mutable_selected_cols(); +inline const ::pg_query::Node& IndexStmt::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.where_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& IndexStmt::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.where_clause) + return _internal_where_clause(); +} +inline void IndexStmt::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); + } + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.IndexStmt.where_clause) } +inline ::pg_query::Node* IndexStmt::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// repeated uint64 inserted_cols = 34 [json_name = "insertedCols"]; -inline int RangeTblEntry::_internal_inserted_cols_size() const { - return _impl_.inserted_cols_.size(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int RangeTblEntry::inserted_cols_size() const { - return _internal_inserted_cols_size(); +inline ::pg_query::Node* IndexStmt::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IndexStmt.where_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; + return temp; } -inline void RangeTblEntry::clear_inserted_cols() { - _impl_.inserted_cols_.Clear(); +inline ::pg_query::Node* IndexStmt::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.where_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.where_clause_; } -inline uint64_t RangeTblEntry::_internal_inserted_cols(int index) const { - return _impl_.inserted_cols_.Get(index); +inline ::pg_query::Node* IndexStmt::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_where_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.where_clause) + return _msg; } -inline uint64_t RangeTblEntry::inserted_cols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.inserted_cols) - return _internal_inserted_cols(index); +inline void IndexStmt::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.where_clause) } -inline void RangeTblEntry::set_inserted_cols(int index, uint64_t value) { - _impl_.inserted_cols_.Set(index, value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.inserted_cols) + +// repeated .pg_query.Node exclude_op_names = 9 [json_name = "excludeOpNames"]; +inline int IndexStmt::_internal_exclude_op_names_size() const { + return _internal_exclude_op_names().size(); } -inline void RangeTblEntry::_internal_add_inserted_cols(uint64_t value) { - _impl_.inserted_cols_.Add(value); +inline int IndexStmt::exclude_op_names_size() const { + return _internal_exclude_op_names_size(); } -inline void RangeTblEntry::add_inserted_cols(uint64_t value) { - _internal_add_inserted_cols(value); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.inserted_cols) +inline void IndexStmt::clear_exclude_op_names() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.exclude_op_names_.Clear(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblEntry::_internal_inserted_cols() const { - return _impl_.inserted_cols_; +inline ::pg_query::Node* IndexStmt::mutable_exclude_op_names(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.exclude_op_names) + return _internal_mutable_exclude_op_names()->Mutable(index); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblEntry::inserted_cols() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.inserted_cols) - return _internal_inserted_cols(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* IndexStmt::mutable_exclude_op_names() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.IndexStmt.exclude_op_names) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_exclude_op_names(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblEntry::_internal_mutable_inserted_cols() { - return &_impl_.inserted_cols_; +inline const ::pg_query::Node& IndexStmt::exclude_op_names(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.exclude_op_names) + return _internal_exclude_op_names().Get(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblEntry::mutable_inserted_cols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.inserted_cols) - return _internal_mutable_inserted_cols(); +inline ::pg_query::Node* IndexStmt::add_exclude_op_names() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_exclude_op_names()->Add(); + // @@protoc_insertion_point(field_add:pg_query.IndexStmt.exclude_op_names) + return _add; } - -// repeated uint64 updated_cols = 35 [json_name = "updatedCols"]; -inline int RangeTblEntry::_internal_updated_cols_size() const { - return _impl_.updated_cols_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& IndexStmt::exclude_op_names() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.IndexStmt.exclude_op_names) + return _internal_exclude_op_names(); } -inline int RangeTblEntry::updated_cols_size() const { - return _internal_updated_cols_size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +IndexStmt::_internal_exclude_op_names() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.exclude_op_names_; } -inline void RangeTblEntry::clear_updated_cols() { - _impl_.updated_cols_.Clear(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +IndexStmt::_internal_mutable_exclude_op_names() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.exclude_op_names_; } -inline uint64_t RangeTblEntry::_internal_updated_cols(int index) const { - return _impl_.updated_cols_.Get(index); + +// string idxcomment = 10 [json_name = "idxcomment"]; +inline void IndexStmt::clear_idxcomment() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.idxcomment_.ClearToEmpty(); } -inline uint64_t RangeTblEntry::updated_cols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.updated_cols) - return _internal_updated_cols(index); +inline const std::string& IndexStmt::idxcomment() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.idxcomment) + return _internal_idxcomment(); } -inline void RangeTblEntry::set_updated_cols(int index, uint64_t value) { - _impl_.updated_cols_.Set(index, value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.updated_cols) +template +inline PROTOBUF_ALWAYS_INLINE void IndexStmt::set_idxcomment(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.idxcomment_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.idxcomment) } -inline void RangeTblEntry::_internal_add_updated_cols(uint64_t value) { - _impl_.updated_cols_.Add(value); +inline std::string* IndexStmt::mutable_idxcomment() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_idxcomment(); + // @@protoc_insertion_point(field_mutable:pg_query.IndexStmt.idxcomment) + return _s; } -inline void RangeTblEntry::add_updated_cols(uint64_t value) { - _internal_add_updated_cols(value); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.updated_cols) +inline const std::string& IndexStmt::_internal_idxcomment() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.idxcomment_.Get(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblEntry::_internal_updated_cols() const { - return _impl_.updated_cols_; +inline void IndexStmt::_internal_set_idxcomment(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.idxcomment_.Set(value, GetArena()); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblEntry::updated_cols() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.updated_cols) - return _internal_updated_cols(); +inline std::string* IndexStmt::_internal_mutable_idxcomment() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.idxcomment_.Mutable( GetArena()); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblEntry::_internal_mutable_updated_cols() { - return &_impl_.updated_cols_; +inline std::string* IndexStmt::release_idxcomment() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.IndexStmt.idxcomment) + return _impl_.idxcomment_.Release(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblEntry::mutable_updated_cols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.updated_cols) - return _internal_mutable_updated_cols(); +inline void IndexStmt::set_allocated_idxcomment(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.idxcomment_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.idxcomment_.IsDefault()) { + _impl_.idxcomment_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.IndexStmt.idxcomment) } -// repeated uint64 extra_updated_cols = 36 [json_name = "extraUpdatedCols"]; -inline int RangeTblEntry::_internal_extra_updated_cols_size() const { - return _impl_.extra_updated_cols_.size(); +// uint32 index_oid = 11 [json_name = "indexOid"]; +inline void IndexStmt::clear_index_oid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.index_oid_ = 0u; +} +inline ::uint32_t IndexStmt::index_oid() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.index_oid) + return _internal_index_oid(); +} +inline void IndexStmt::set_index_oid(::uint32_t value) { + _internal_set_index_oid(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.index_oid) +} +inline ::uint32_t IndexStmt::_internal_index_oid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.index_oid_; } -inline int RangeTblEntry::extra_updated_cols_size() const { - return _internal_extra_updated_cols_size(); +inline void IndexStmt::_internal_set_index_oid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.index_oid_ = value; } -inline void RangeTblEntry::clear_extra_updated_cols() { - _impl_.extra_updated_cols_.Clear(); + +// uint32 old_number = 12 [json_name = "oldNumber"]; +inline void IndexStmt::clear_old_number() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.old_number_ = 0u; } -inline uint64_t RangeTblEntry::_internal_extra_updated_cols(int index) const { - return _impl_.extra_updated_cols_.Get(index); +inline ::uint32_t IndexStmt::old_number() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.old_number) + return _internal_old_number(); } -inline uint64_t RangeTblEntry::extra_updated_cols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.extra_updated_cols) - return _internal_extra_updated_cols(index); +inline void IndexStmt::set_old_number(::uint32_t value) { + _internal_set_old_number(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.old_number) } -inline void RangeTblEntry::set_extra_updated_cols(int index, uint64_t value) { - _impl_.extra_updated_cols_.Set(index, value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblEntry.extra_updated_cols) +inline ::uint32_t IndexStmt::_internal_old_number() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.old_number_; } -inline void RangeTblEntry::_internal_add_extra_updated_cols(uint64_t value) { - _impl_.extra_updated_cols_.Add(value); +inline void IndexStmt::_internal_set_old_number(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.old_number_ = value; } -inline void RangeTblEntry::add_extra_updated_cols(uint64_t value) { - _internal_add_extra_updated_cols(value); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.extra_updated_cols) + +// uint32 old_create_subid = 13 [json_name = "oldCreateSubid"]; +inline void IndexStmt::clear_old_create_subid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.old_create_subid_ = 0u; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblEntry::_internal_extra_updated_cols() const { - return _impl_.extra_updated_cols_; +inline ::uint32_t IndexStmt::old_create_subid() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.old_create_subid) + return _internal_old_create_subid(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblEntry::extra_updated_cols() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.extra_updated_cols) - return _internal_extra_updated_cols(); +inline void IndexStmt::set_old_create_subid(::uint32_t value) { + _internal_set_old_create_subid(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.old_create_subid) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblEntry::_internal_mutable_extra_updated_cols() { - return &_impl_.extra_updated_cols_; +inline ::uint32_t IndexStmt::_internal_old_create_subid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.old_create_subid_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblEntry::mutable_extra_updated_cols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.extra_updated_cols) - return _internal_mutable_extra_updated_cols(); +inline void IndexStmt::_internal_set_old_create_subid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.old_create_subid_ = value; } -// repeated .pg_query.Node security_quals = 37 [json_name = "securityQuals"]; -inline int RangeTblEntry::_internal_security_quals_size() const { - return _impl_.security_quals_.size(); +// uint32 old_first_relfilelocator_subid = 14 [json_name = "oldFirstRelfilelocatorSubid"]; +inline void IndexStmt::clear_old_first_relfilelocator_subid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.old_first_relfilelocator_subid_ = 0u; } -inline int RangeTblEntry::security_quals_size() const { - return _internal_security_quals_size(); +inline ::uint32_t IndexStmt::old_first_relfilelocator_subid() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.old_first_relfilelocator_subid) + return _internal_old_first_relfilelocator_subid(); } -inline void RangeTblEntry::clear_security_quals() { - _impl_.security_quals_.Clear(); +inline void IndexStmt::set_old_first_relfilelocator_subid(::uint32_t value) { + _internal_set_old_first_relfilelocator_subid(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.old_first_relfilelocator_subid) } -inline ::pg_query::Node* RangeTblEntry::mutable_security_quals(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblEntry.security_quals) - return _impl_.security_quals_.Mutable(index); +inline ::uint32_t IndexStmt::_internal_old_first_relfilelocator_subid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.old_first_relfilelocator_subid_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblEntry::mutable_security_quals() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblEntry.security_quals) - return &_impl_.security_quals_; +inline void IndexStmt::_internal_set_old_first_relfilelocator_subid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.old_first_relfilelocator_subid_ = value; } -inline const ::pg_query::Node& RangeTblEntry::_internal_security_quals(int index) const { - return _impl_.security_quals_.Get(index); + +// bool unique = 15 [json_name = "unique"]; +inline void IndexStmt::clear_unique() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.unique_ = false; } -inline const ::pg_query::Node& RangeTblEntry::security_quals(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblEntry.security_quals) - return _internal_security_quals(index); +inline bool IndexStmt::unique() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.unique) + return _internal_unique(); } -inline ::pg_query::Node* RangeTblEntry::_internal_add_security_quals() { - return _impl_.security_quals_.Add(); +inline void IndexStmt::set_unique(bool value) { + _internal_set_unique(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.unique) } -inline ::pg_query::Node* RangeTblEntry::add_security_quals() { - ::pg_query::Node* _add = _internal_add_security_quals(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblEntry.security_quals) - return _add; +inline bool IndexStmt::_internal_unique() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.unique_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblEntry::security_quals() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblEntry.security_quals) - return _impl_.security_quals_; +inline void IndexStmt::_internal_set_unique(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.unique_ = value; } -// ------------------------------------------------------------------- - -// RangeTblFunction - -// .pg_query.Node funcexpr = 1 [json_name = "funcexpr"]; -inline bool RangeTblFunction::_internal_has_funcexpr() const { - return this != internal_default_instance() && _impl_.funcexpr_ != nullptr; -} -inline bool RangeTblFunction::has_funcexpr() const { - return _internal_has_funcexpr(); +// bool nulls_not_distinct = 16 [json_name = "nulls_not_distinct"]; +inline void IndexStmt::clear_nulls_not_distinct() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.nulls_not_distinct_ = false; } -inline void RangeTblFunction::clear_funcexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.funcexpr_ != nullptr) { - delete _impl_.funcexpr_; - } - _impl_.funcexpr_ = nullptr; +inline bool IndexStmt::nulls_not_distinct() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.nulls_not_distinct) + return _internal_nulls_not_distinct(); } -inline const ::pg_query::Node& RangeTblFunction::_internal_funcexpr() const { - const ::pg_query::Node* p = _impl_.funcexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void IndexStmt::set_nulls_not_distinct(bool value) { + _internal_set_nulls_not_distinct(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.nulls_not_distinct) } -inline const ::pg_query::Node& RangeTblFunction::funcexpr() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funcexpr) - return _internal_funcexpr(); +inline bool IndexStmt::_internal_nulls_not_distinct() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.nulls_not_distinct_; } -inline void RangeTblFunction::unsafe_arena_set_allocated_funcexpr( - ::pg_query::Node* funcexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.funcexpr_); - } - _impl_.funcexpr_ = funcexpr; - if (funcexpr) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RangeTblFunction.funcexpr) +inline void IndexStmt::_internal_set_nulls_not_distinct(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.nulls_not_distinct_ = value; } -inline ::pg_query::Node* RangeTblFunction::release_funcexpr() { - - ::pg_query::Node* temp = _impl_.funcexpr_; - _impl_.funcexpr_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// bool primary = 17 [json_name = "primary"]; +inline void IndexStmt::clear_primary() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.primary_ = false; } -inline ::pg_query::Node* RangeTblFunction::unsafe_arena_release_funcexpr() { - // @@protoc_insertion_point(field_release:pg_query.RangeTblFunction.funcexpr) - - ::pg_query::Node* temp = _impl_.funcexpr_; - _impl_.funcexpr_ = nullptr; - return temp; +inline bool IndexStmt::primary() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.primary) + return _internal_primary(); } -inline ::pg_query::Node* RangeTblFunction::_internal_mutable_funcexpr() { - - if (_impl_.funcexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.funcexpr_ = p; - } - return _impl_.funcexpr_; +inline void IndexStmt::set_primary(bool value) { + _internal_set_primary(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.primary) } -inline ::pg_query::Node* RangeTblFunction::mutable_funcexpr() { - ::pg_query::Node* _msg = _internal_mutable_funcexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funcexpr) - return _msg; +inline bool IndexStmt::_internal_primary() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.primary_; } -inline void RangeTblFunction::set_allocated_funcexpr(::pg_query::Node* funcexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.funcexpr_; - } - if (funcexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(funcexpr); - if (message_arena != submessage_arena) { - funcexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, funcexpr, submessage_arena); - } - - } else { - - } - _impl_.funcexpr_ = funcexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.RangeTblFunction.funcexpr) +inline void IndexStmt::_internal_set_primary(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.primary_ = value; } -// int32 funccolcount = 2 [json_name = "funccolcount"]; -inline void RangeTblFunction::clear_funccolcount() { - _impl_.funccolcount_ = 0; +// bool isconstraint = 18 [json_name = "isconstraint"]; +inline void IndexStmt::clear_isconstraint() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.isconstraint_ = false; } -inline int32_t RangeTblFunction::_internal_funccolcount() const { - return _impl_.funccolcount_; +inline bool IndexStmt::isconstraint() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.isconstraint) + return _internal_isconstraint(); } -inline int32_t RangeTblFunction::funccolcount() const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccolcount) - return _internal_funccolcount(); +inline void IndexStmt::set_isconstraint(bool value) { + _internal_set_isconstraint(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.isconstraint) } -inline void RangeTblFunction::_internal_set_funccolcount(int32_t value) { - - _impl_.funccolcount_ = value; +inline bool IndexStmt::_internal_isconstraint() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.isconstraint_; } -inline void RangeTblFunction::set_funccolcount(int32_t value) { - _internal_set_funccolcount(value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblFunction.funccolcount) +inline void IndexStmt::_internal_set_isconstraint(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.isconstraint_ = value; } -// repeated .pg_query.Node funccolnames = 3 [json_name = "funccolnames"]; -inline int RangeTblFunction::_internal_funccolnames_size() const { - return _impl_.funccolnames_.size(); +// bool deferrable = 19 [json_name = "deferrable"]; +inline void IndexStmt::clear_deferrable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.deferrable_ = false; } -inline int RangeTblFunction::funccolnames_size() const { - return _internal_funccolnames_size(); +inline bool IndexStmt::deferrable() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.deferrable) + return _internal_deferrable(); } -inline void RangeTblFunction::clear_funccolnames() { - _impl_.funccolnames_.Clear(); +inline void IndexStmt::set_deferrable(bool value) { + _internal_set_deferrable(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.deferrable) } -inline ::pg_query::Node* RangeTblFunction::mutable_funccolnames(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funccolnames) - return _impl_.funccolnames_.Mutable(index); +inline bool IndexStmt::_internal_deferrable() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.deferrable_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblFunction::mutable_funccolnames() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funccolnames) - return &_impl_.funccolnames_; +inline void IndexStmt::_internal_set_deferrable(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.deferrable_ = value; } -inline const ::pg_query::Node& RangeTblFunction::_internal_funccolnames(int index) const { - return _impl_.funccolnames_.Get(index); + +// bool initdeferred = 20 [json_name = "initdeferred"]; +inline void IndexStmt::clear_initdeferred() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.initdeferred_ = false; } -inline const ::pg_query::Node& RangeTblFunction::funccolnames(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccolnames) - return _internal_funccolnames(index); +inline bool IndexStmt::initdeferred() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.initdeferred) + return _internal_initdeferred(); } -inline ::pg_query::Node* RangeTblFunction::_internal_add_funccolnames() { - return _impl_.funccolnames_.Add(); +inline void IndexStmt::set_initdeferred(bool value) { + _internal_set_initdeferred(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.initdeferred) } -inline ::pg_query::Node* RangeTblFunction::add_funccolnames() { - ::pg_query::Node* _add = _internal_add_funccolnames(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funccolnames) - return _add; +inline bool IndexStmt::_internal_initdeferred() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.initdeferred_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblFunction::funccolnames() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funccolnames) - return _impl_.funccolnames_; +inline void IndexStmt::_internal_set_initdeferred(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.initdeferred_ = value; } -// repeated .pg_query.Node funccoltypes = 4 [json_name = "funccoltypes"]; -inline int RangeTblFunction::_internal_funccoltypes_size() const { - return _impl_.funccoltypes_.size(); +// bool transformed = 21 [json_name = "transformed"]; +inline void IndexStmt::clear_transformed() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.transformed_ = false; } -inline int RangeTblFunction::funccoltypes_size() const { - return _internal_funccoltypes_size(); +inline bool IndexStmt::transformed() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.transformed) + return _internal_transformed(); } -inline void RangeTblFunction::clear_funccoltypes() { - _impl_.funccoltypes_.Clear(); +inline void IndexStmt::set_transformed(bool value) { + _internal_set_transformed(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.transformed) } -inline ::pg_query::Node* RangeTblFunction::mutable_funccoltypes(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funccoltypes) - return _impl_.funccoltypes_.Mutable(index); +inline bool IndexStmt::_internal_transformed() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.transformed_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblFunction::mutable_funccoltypes() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funccoltypes) - return &_impl_.funccoltypes_; +inline void IndexStmt::_internal_set_transformed(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.transformed_ = value; } -inline const ::pg_query::Node& RangeTblFunction::_internal_funccoltypes(int index) const { - return _impl_.funccoltypes_.Get(index); + +// bool concurrent = 22 [json_name = "concurrent"]; +inline void IndexStmt::clear_concurrent() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.concurrent_ = false; } -inline const ::pg_query::Node& RangeTblFunction::funccoltypes(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccoltypes) - return _internal_funccoltypes(index); +inline bool IndexStmt::concurrent() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.concurrent) + return _internal_concurrent(); } -inline ::pg_query::Node* RangeTblFunction::_internal_add_funccoltypes() { - return _impl_.funccoltypes_.Add(); +inline void IndexStmt::set_concurrent(bool value) { + _internal_set_concurrent(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.concurrent) } -inline ::pg_query::Node* RangeTblFunction::add_funccoltypes() { - ::pg_query::Node* _add = _internal_add_funccoltypes(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funccoltypes) - return _add; +inline bool IndexStmt::_internal_concurrent() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.concurrent_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblFunction::funccoltypes() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funccoltypes) - return _impl_.funccoltypes_; +inline void IndexStmt::_internal_set_concurrent(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.concurrent_ = value; } -// repeated .pg_query.Node funccoltypmods = 5 [json_name = "funccoltypmods"]; -inline int RangeTblFunction::_internal_funccoltypmods_size() const { - return _impl_.funccoltypmods_.size(); +// bool if_not_exists = 23 [json_name = "if_not_exists"]; +inline void IndexStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; } -inline int RangeTblFunction::funccoltypmods_size() const { - return _internal_funccoltypmods_size(); +inline bool IndexStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.if_not_exists) + return _internal_if_not_exists(); } -inline void RangeTblFunction::clear_funccoltypmods() { - _impl_.funccoltypmods_.Clear(); +inline void IndexStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.if_not_exists) } -inline ::pg_query::Node* RangeTblFunction::mutable_funccoltypmods(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funccoltypmods) - return _impl_.funccoltypmods_.Mutable(index); +inline bool IndexStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblFunction::mutable_funccoltypmods() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funccoltypmods) - return &_impl_.funccoltypmods_; +inline void IndexStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; } -inline const ::pg_query::Node& RangeTblFunction::_internal_funccoltypmods(int index) const { - return _impl_.funccoltypmods_.Get(index); + +// bool reset_default_tblspc = 24 [json_name = "reset_default_tblspc"]; +inline void IndexStmt::clear_reset_default_tblspc() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.reset_default_tblspc_ = false; } -inline const ::pg_query::Node& RangeTblFunction::funccoltypmods(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccoltypmods) - return _internal_funccoltypmods(index); +inline bool IndexStmt::reset_default_tblspc() const { + // @@protoc_insertion_point(field_get:pg_query.IndexStmt.reset_default_tblspc) + return _internal_reset_default_tblspc(); } -inline ::pg_query::Node* RangeTblFunction::_internal_add_funccoltypmods() { - return _impl_.funccoltypmods_.Add(); +inline void IndexStmt::set_reset_default_tblspc(bool value) { + _internal_set_reset_default_tblspc(value); + // @@protoc_insertion_point(field_set:pg_query.IndexStmt.reset_default_tblspc) } -inline ::pg_query::Node* RangeTblFunction::add_funccoltypmods() { - ::pg_query::Node* _add = _internal_add_funccoltypmods(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funccoltypmods) - return _add; +inline bool IndexStmt::_internal_reset_default_tblspc() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.reset_default_tblspc_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblFunction::funccoltypmods() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funccoltypmods) - return _impl_.funccoltypmods_; +inline void IndexStmt::_internal_set_reset_default_tblspc(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.reset_default_tblspc_ = value; } -// repeated .pg_query.Node funccolcollations = 6 [json_name = "funccolcollations"]; -inline int RangeTblFunction::_internal_funccolcollations_size() const { - return _impl_.funccolcollations_.size(); +// ------------------------------------------------------------------- + +// CreateStatsStmt + +// repeated .pg_query.Node defnames = 1 [json_name = "defnames"]; +inline int CreateStatsStmt::_internal_defnames_size() const { + return _internal_defnames().size(); } -inline int RangeTblFunction::funccolcollations_size() const { - return _internal_funccolcollations_size(); +inline int CreateStatsStmt::defnames_size() const { + return _internal_defnames_size(); } -inline void RangeTblFunction::clear_funccolcollations() { - _impl_.funccolcollations_.Clear(); +inline void CreateStatsStmt::clear_defnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.defnames_.Clear(); } -inline ::pg_query::Node* RangeTblFunction::mutable_funccolcollations(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.RangeTblFunction.funccolcollations) - return _impl_.funccolcollations_.Mutable(index); +inline ::pg_query::Node* CreateStatsStmt::mutable_defnames(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.defnames) + return _internal_mutable_defnames()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -RangeTblFunction::mutable_funccolcollations() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funccolcollations) - return &_impl_.funccolcollations_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateStatsStmt::mutable_defnames() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStatsStmt.defnames) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_defnames(); } -inline const ::pg_query::Node& RangeTblFunction::_internal_funccolcollations(int index) const { - return _impl_.funccolcollations_.Get(index); +inline const ::pg_query::Node& CreateStatsStmt::defnames(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.defnames) + return _internal_defnames().Get(index); } -inline const ::pg_query::Node& RangeTblFunction::funccolcollations(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funccolcollations) - return _internal_funccolcollations(index); +inline ::pg_query::Node* CreateStatsStmt::add_defnames() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_defnames()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateStatsStmt.defnames) + return _add; } -inline ::pg_query::Node* RangeTblFunction::_internal_add_funccolcollations() { - return _impl_.funccolcollations_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateStatsStmt::defnames() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateStatsStmt.defnames) + return _internal_defnames(); } -inline ::pg_query::Node* RangeTblFunction::add_funccolcollations() { - ::pg_query::Node* _add = _internal_add_funccolcollations(); - // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funccolcollations) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateStatsStmt::_internal_defnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.defnames_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -RangeTblFunction::funccolcollations() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funccolcollations) - return _impl_.funccolcollations_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateStatsStmt::_internal_mutable_defnames() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.defnames_; } -// repeated uint64 funcparams = 7 [json_name = "funcparams"]; -inline int RangeTblFunction::_internal_funcparams_size() const { - return _impl_.funcparams_.size(); +// repeated .pg_query.Node stat_types = 2 [json_name = "stat_types"]; +inline int CreateStatsStmt::_internal_stat_types_size() const { + return _internal_stat_types().size(); } -inline int RangeTblFunction::funcparams_size() const { - return _internal_funcparams_size(); +inline int CreateStatsStmt::stat_types_size() const { + return _internal_stat_types_size(); } -inline void RangeTblFunction::clear_funcparams() { - _impl_.funcparams_.Clear(); +inline void CreateStatsStmt::clear_stat_types() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.stat_types_.Clear(); } -inline uint64_t RangeTblFunction::_internal_funcparams(int index) const { - return _impl_.funcparams_.Get(index); +inline ::pg_query::Node* CreateStatsStmt::mutable_stat_types(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.stat_types) + return _internal_mutable_stat_types()->Mutable(index); } -inline uint64_t RangeTblFunction::funcparams(int index) const { - // @@protoc_insertion_point(field_get:pg_query.RangeTblFunction.funcparams) - return _internal_funcparams(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateStatsStmt::mutable_stat_types() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStatsStmt.stat_types) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_stat_types(); } -inline void RangeTblFunction::set_funcparams(int index, uint64_t value) { - _impl_.funcparams_.Set(index, value); - // @@protoc_insertion_point(field_set:pg_query.RangeTblFunction.funcparams) +inline const ::pg_query::Node& CreateStatsStmt::stat_types(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.stat_types) + return _internal_stat_types().Get(index); } -inline void RangeTblFunction::_internal_add_funcparams(uint64_t value) { - _impl_.funcparams_.Add(value); +inline ::pg_query::Node* CreateStatsStmt::add_stat_types() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_stat_types()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateStatsStmt.stat_types) + return _add; } -inline void RangeTblFunction::add_funcparams(uint64_t value) { - _internal_add_funcparams(value); - // @@protoc_insertion_point(field_add:pg_query.RangeTblFunction.funcparams) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateStatsStmt::stat_types() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateStatsStmt.stat_types) + return _internal_stat_types(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblFunction::_internal_funcparams() const { - return _impl_.funcparams_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateStatsStmt::_internal_stat_types() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.stat_types_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >& -RangeTblFunction::funcparams() const { - // @@protoc_insertion_point(field_list:pg_query.RangeTblFunction.funcparams) - return _internal_funcparams(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateStatsStmt::_internal_mutable_stat_types() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.stat_types_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblFunction::_internal_mutable_funcparams() { - return &_impl_.funcparams_; + +// repeated .pg_query.Node exprs = 3 [json_name = "exprs"]; +inline int CreateStatsStmt::_internal_exprs_size() const { + return _internal_exprs().size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< uint64_t >* -RangeTblFunction::mutable_funcparams() { - // @@protoc_insertion_point(field_mutable_list:pg_query.RangeTblFunction.funcparams) - return _internal_mutable_funcparams(); +inline int CreateStatsStmt::exprs_size() const { + return _internal_exprs_size(); } - -// ------------------------------------------------------------------- - -// TableSampleClause - -// uint32 tsmhandler = 1 [json_name = "tsmhandler"]; -inline void TableSampleClause::clear_tsmhandler() { - _impl_.tsmhandler_ = 0u; +inline void CreateStatsStmt::clear_exprs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.exprs_.Clear(); } -inline uint32_t TableSampleClause::_internal_tsmhandler() const { - return _impl_.tsmhandler_; +inline ::pg_query::Node* CreateStatsStmt::mutable_exprs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.exprs) + return _internal_mutable_exprs()->Mutable(index); } -inline uint32_t TableSampleClause::tsmhandler() const { - // @@protoc_insertion_point(field_get:pg_query.TableSampleClause.tsmhandler) - return _internal_tsmhandler(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateStatsStmt::mutable_exprs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStatsStmt.exprs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_exprs(); } -inline void TableSampleClause::_internal_set_tsmhandler(uint32_t value) { - - _impl_.tsmhandler_ = value; +inline const ::pg_query::Node& CreateStatsStmt::exprs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.exprs) + return _internal_exprs().Get(index); } -inline void TableSampleClause::set_tsmhandler(uint32_t value) { - _internal_set_tsmhandler(value); - // @@protoc_insertion_point(field_set:pg_query.TableSampleClause.tsmhandler) +inline ::pg_query::Node* CreateStatsStmt::add_exprs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_exprs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateStatsStmt.exprs) + return _add; } - -// repeated .pg_query.Node args = 2 [json_name = "args"]; -inline int TableSampleClause::_internal_args_size() const { - return _impl_.args_.size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateStatsStmt::exprs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateStatsStmt.exprs) + return _internal_exprs(); } -inline int TableSampleClause::args_size() const { - return _internal_args_size(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateStatsStmt::_internal_exprs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.exprs_; } -inline void TableSampleClause::clear_args() { - _impl_.args_.Clear(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateStatsStmt::_internal_mutable_exprs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.exprs_; } -inline ::pg_query::Node* TableSampleClause::mutable_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.TableSampleClause.args) - return _impl_.args_.Mutable(index); + +// repeated .pg_query.Node relations = 4 [json_name = "relations"]; +inline int CreateStatsStmt::_internal_relations_size() const { + return _internal_relations().size(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -TableSampleClause::mutable_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.TableSampleClause.args) - return &_impl_.args_; +inline int CreateStatsStmt::relations_size() const { + return _internal_relations_size(); +} +inline void CreateStatsStmt::clear_relations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relations_.Clear(); } -inline const ::pg_query::Node& TableSampleClause::_internal_args(int index) const { - return _impl_.args_.Get(index); +inline ::pg_query::Node* CreateStatsStmt::mutable_relations(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.relations) + return _internal_mutable_relations()->Mutable(index); } -inline const ::pg_query::Node& TableSampleClause::args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.TableSampleClause.args) - return _internal_args(index); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateStatsStmt::mutable_relations() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateStatsStmt.relations) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_relations(); } -inline ::pg_query::Node* TableSampleClause::_internal_add_args() { - return _impl_.args_.Add(); +inline const ::pg_query::Node& CreateStatsStmt::relations(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.relations) + return _internal_relations().Get(index); } -inline ::pg_query::Node* TableSampleClause::add_args() { - ::pg_query::Node* _add = _internal_add_args(); - // @@protoc_insertion_point(field_add:pg_query.TableSampleClause.args) +inline ::pg_query::Node* CreateStatsStmt::add_relations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_relations()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateStatsStmt.relations) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -TableSampleClause::args() const { - // @@protoc_insertion_point(field_list:pg_query.TableSampleClause.args) - return _impl_.args_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateStatsStmt::relations() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateStatsStmt.relations) + return _internal_relations(); } - -// .pg_query.Node repeatable = 3 [json_name = "repeatable"]; -inline bool TableSampleClause::_internal_has_repeatable() const { - return this != internal_default_instance() && _impl_.repeatable_ != nullptr; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateStatsStmt::_internal_relations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relations_; } -inline bool TableSampleClause::has_repeatable() const { - return _internal_has_repeatable(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateStatsStmt::_internal_mutable_relations() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.relations_; } -inline void TableSampleClause::clear_repeatable() { - if (GetArenaForAllocation() == nullptr && _impl_.repeatable_ != nullptr) { - delete _impl_.repeatable_; - } - _impl_.repeatable_ = nullptr; + +// string stxcomment = 5 [json_name = "stxcomment"]; +inline void CreateStatsStmt::clear_stxcomment() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.stxcomment_.ClearToEmpty(); } -inline const ::pg_query::Node& TableSampleClause::_internal_repeatable() const { - const ::pg_query::Node* p = _impl_.repeatable_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const std::string& CreateStatsStmt::stxcomment() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.stxcomment) + return _internal_stxcomment(); } -inline const ::pg_query::Node& TableSampleClause::repeatable() const { - // @@protoc_insertion_point(field_get:pg_query.TableSampleClause.repeatable) - return _internal_repeatable(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateStatsStmt::set_stxcomment(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.stxcomment_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateStatsStmt.stxcomment) } -inline void TableSampleClause::unsafe_arena_set_allocated_repeatable( - ::pg_query::Node* repeatable) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.repeatable_); - } - _impl_.repeatable_ = repeatable; - if (repeatable) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TableSampleClause.repeatable) +inline std::string* CreateStatsStmt::mutable_stxcomment() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_stxcomment(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateStatsStmt.stxcomment) + return _s; } -inline ::pg_query::Node* TableSampleClause::release_repeatable() { - - ::pg_query::Node* temp = _impl_.repeatable_; - _impl_.repeatable_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const std::string& CreateStatsStmt::_internal_stxcomment() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.stxcomment_.Get(); } -inline ::pg_query::Node* TableSampleClause::unsafe_arena_release_repeatable() { - // @@protoc_insertion_point(field_release:pg_query.TableSampleClause.repeatable) - - ::pg_query::Node* temp = _impl_.repeatable_; - _impl_.repeatable_ = nullptr; - return temp; +inline void CreateStatsStmt::_internal_set_stxcomment(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.stxcomment_.Set(value, GetArena()); } -inline ::pg_query::Node* TableSampleClause::_internal_mutable_repeatable() { - - if (_impl_.repeatable_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.repeatable_ = p; - } - return _impl_.repeatable_; +inline std::string* CreateStatsStmt::_internal_mutable_stxcomment() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.stxcomment_.Mutable( GetArena()); } -inline ::pg_query::Node* TableSampleClause::mutable_repeatable() { - ::pg_query::Node* _msg = _internal_mutable_repeatable(); - // @@protoc_insertion_point(field_mutable:pg_query.TableSampleClause.repeatable) - return _msg; +inline std::string* CreateStatsStmt::release_stxcomment() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateStatsStmt.stxcomment) + return _impl_.stxcomment_.Release(); } -inline void TableSampleClause::set_allocated_repeatable(::pg_query::Node* repeatable) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.repeatable_; - } - if (repeatable) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(repeatable); - if (message_arena != submessage_arena) { - repeatable = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, repeatable, submessage_arena); - } - - } else { - - } - _impl_.repeatable_ = repeatable; - // @@protoc_insertion_point(field_set_allocated:pg_query.TableSampleClause.repeatable) +inline void CreateStatsStmt::set_allocated_stxcomment(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.stxcomment_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.stxcomment_.IsDefault()) { + _impl_.stxcomment_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateStatsStmt.stxcomment) } -// ------------------------------------------------------------------- - -// WithCheckOption - -// .pg_query.WCOKind kind = 1 [json_name = "kind"]; -inline void WithCheckOption::clear_kind() { - _impl_.kind_ = 0; +// bool transformed = 6 [json_name = "transformed"]; +inline void CreateStatsStmt::clear_transformed() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.transformed_ = false; } -inline ::pg_query::WCOKind WithCheckOption::_internal_kind() const { - return static_cast< ::pg_query::WCOKind >(_impl_.kind_); +inline bool CreateStatsStmt::transformed() const { + // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.transformed) + return _internal_transformed(); } -inline ::pg_query::WCOKind WithCheckOption::kind() const { - // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.kind) - return _internal_kind(); +inline void CreateStatsStmt::set_transformed(bool value) { + _internal_set_transformed(value); + // @@protoc_insertion_point(field_set:pg_query.CreateStatsStmt.transformed) } -inline void WithCheckOption::_internal_set_kind(::pg_query::WCOKind value) { - - _impl_.kind_ = value; +inline bool CreateStatsStmt::_internal_transformed() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.transformed_; } -inline void WithCheckOption::set_kind(::pg_query::WCOKind value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.WithCheckOption.kind) +inline void CreateStatsStmt::_internal_set_transformed(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.transformed_ = value; } -// string relname = 2 [json_name = "relname"]; -inline void WithCheckOption::clear_relname() { - _impl_.relname_.ClearToEmpty(); -} -inline const std::string& WithCheckOption::relname() const { - // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.relname) - return _internal_relname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void WithCheckOption::set_relname(ArgT0&& arg0, ArgT... args) { - - _impl_.relname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.WithCheckOption.relname) -} -inline std::string* WithCheckOption::mutable_relname() { - std::string* _s = _internal_mutable_relname(); - // @@protoc_insertion_point(field_mutable:pg_query.WithCheckOption.relname) - return _s; -} -inline const std::string& WithCheckOption::_internal_relname() const { - return _impl_.relname_.Get(); +// bool if_not_exists = 7 [json_name = "if_not_exists"]; +inline void CreateStatsStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; } -inline void WithCheckOption::_internal_set_relname(const std::string& value) { - - _impl_.relname_.Set(value, GetArenaForAllocation()); +inline bool CreateStatsStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.CreateStatsStmt.if_not_exists) + return _internal_if_not_exists(); } -inline std::string* WithCheckOption::_internal_mutable_relname() { - - return _impl_.relname_.Mutable(GetArenaForAllocation()); +inline void CreateStatsStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.CreateStatsStmt.if_not_exists) } -inline std::string* WithCheckOption::release_relname() { - // @@protoc_insertion_point(field_release:pg_query.WithCheckOption.relname) - return _impl_.relname_.Release(); +inline bool CreateStatsStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; } -inline void WithCheckOption::set_allocated_relname(std::string* relname) { - if (relname != nullptr) { - - } else { - - } - _impl_.relname_.SetAllocated(relname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.relname_.IsDefault()) { - _impl_.relname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.WithCheckOption.relname) +inline void CreateStatsStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; } -// string polname = 3 [json_name = "polname"]; -inline void WithCheckOption::clear_polname() { - _impl_.polname_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// StatsElem + +// string name = 1 [json_name = "name"]; +inline void StatsElem::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline const std::string& WithCheckOption::polname() const { - // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.polname) - return _internal_polname(); +inline const std::string& StatsElem::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.StatsElem.name) + return _internal_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void WithCheckOption::set_polname(ArgT0&& arg0, ArgT... args) { - - _impl_.polname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.WithCheckOption.polname) +template +inline PROTOBUF_ALWAYS_INLINE void StatsElem::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.StatsElem.name) } -inline std::string* WithCheckOption::mutable_polname() { - std::string* _s = _internal_mutable_polname(); - // @@protoc_insertion_point(field_mutable:pg_query.WithCheckOption.polname) +inline std::string* StatsElem::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.StatsElem.name) return _s; } -inline const std::string& WithCheckOption::_internal_polname() const { - return _impl_.polname_.Get(); +inline const std::string& StatsElem::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline void WithCheckOption::_internal_set_polname(const std::string& value) { - - _impl_.polname_.Set(value, GetArenaForAllocation()); +inline void StatsElem::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline std::string* WithCheckOption::_internal_mutable_polname() { - - return _impl_.polname_.Mutable(GetArenaForAllocation()); +inline std::string* StatsElem::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline std::string* WithCheckOption::release_polname() { - // @@protoc_insertion_point(field_release:pg_query.WithCheckOption.polname) - return _impl_.polname_.Release(); +inline std::string* StatsElem::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.StatsElem.name) + return _impl_.name_.Release(); } -inline void WithCheckOption::set_allocated_polname(std::string* polname) { - if (polname != nullptr) { - - } else { - - } - _impl_.polname_.SetAllocated(polname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.polname_.IsDefault()) { - _impl_.polname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.WithCheckOption.polname) +inline void StatsElem::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.StatsElem.name) } -// .pg_query.Node qual = 4 [json_name = "qual"]; -inline bool WithCheckOption::_internal_has_qual() const { - return this != internal_default_instance() && _impl_.qual_ != nullptr; -} -inline bool WithCheckOption::has_qual() const { - return _internal_has_qual(); +// .pg_query.Node expr = 2 [json_name = "expr"]; +inline bool StatsElem::has_expr() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.expr_ != nullptr); + return value; } -inline void WithCheckOption::clear_qual() { - if (GetArenaForAllocation() == nullptr && _impl_.qual_ != nullptr) { - delete _impl_.qual_; - } - _impl_.qual_ = nullptr; +inline void StatsElem::clear_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.expr_ != nullptr) _impl_.expr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& WithCheckOption::_internal_qual() const { - const ::pg_query::Node* p = _impl_.qual_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& StatsElem::_internal_expr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.expr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& WithCheckOption::qual() const { - // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.qual) - return _internal_qual(); +inline const ::pg_query::Node& StatsElem::expr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.StatsElem.expr) + return _internal_expr(); } -inline void WithCheckOption::unsafe_arena_set_allocated_qual( - ::pg_query::Node* qual) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.qual_); +inline void StatsElem::unsafe_arena_set_allocated_expr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.expr_); } - _impl_.qual_ = qual; - if (qual) { - + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WithCheckOption.qual) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.StatsElem.expr) } -inline ::pg_query::Node* WithCheckOption::release_qual() { - - ::pg_query::Node* temp = _impl_.qual_; - _impl_.qual_ = nullptr; +inline ::pg_query::Node* StatsElem::release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.expr_; + _impl_.expr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* WithCheckOption::unsafe_arena_release_qual() { - // @@protoc_insertion_point(field_release:pg_query.WithCheckOption.qual) - - ::pg_query::Node* temp = _impl_.qual_; - _impl_.qual_ = nullptr; +inline ::pg_query::Node* StatsElem::unsafe_arena_release_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.StatsElem.expr) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.expr_; + _impl_.expr_ = nullptr; return temp; } -inline ::pg_query::Node* WithCheckOption::_internal_mutable_qual() { - - if (_impl_.qual_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.qual_ = p; +inline ::pg_query::Node* StatsElem::_internal_mutable_expr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.expr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.qual_; + return _impl_.expr_; } -inline ::pg_query::Node* WithCheckOption::mutable_qual() { - ::pg_query::Node* _msg = _internal_mutable_qual(); - // @@protoc_insertion_point(field_mutable:pg_query.WithCheckOption.qual) +inline ::pg_query::Node* StatsElem::mutable_expr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_expr(); + // @@protoc_insertion_point(field_mutable:pg_query.StatsElem.expr) return _msg; } -inline void WithCheckOption::set_allocated_qual(::pg_query::Node* qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void StatsElem::set_allocated_expr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.qual_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.expr_); } - if (qual) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(qual); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - qual = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, qual, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.qual_ = qual; - // @@protoc_insertion_point(field_set_allocated:pg_query.WithCheckOption.qual) -} -// bool cascaded = 5 [json_name = "cascaded"]; -inline void WithCheckOption::clear_cascaded() { - _impl_.cascaded_ = false; -} -inline bool WithCheckOption::_internal_cascaded() const { - return _impl_.cascaded_; -} -inline bool WithCheckOption::cascaded() const { - // @@protoc_insertion_point(field_get:pg_query.WithCheckOption.cascaded) - return _internal_cascaded(); -} -inline void WithCheckOption::_internal_set_cascaded(bool value) { - - _impl_.cascaded_ = value; -} -inline void WithCheckOption::set_cascaded(bool value) { - _internal_set_cascaded(value); - // @@protoc_insertion_point(field_set:pg_query.WithCheckOption.cascaded) + _impl_.expr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.StatsElem.expr) } // ------------------------------------------------------------------- -// SortGroupClause +// AlterStatsStmt -// uint32 tle_sort_group_ref = 1 [json_name = "tleSortGroupRef"]; -inline void SortGroupClause::clear_tle_sort_group_ref() { - _impl_.tle_sort_group_ref_ = 0u; +// repeated .pg_query.Node defnames = 1 [json_name = "defnames"]; +inline int AlterStatsStmt::_internal_defnames_size() const { + return _internal_defnames().size(); } -inline uint32_t SortGroupClause::_internal_tle_sort_group_ref() const { - return _impl_.tle_sort_group_ref_; +inline int AlterStatsStmt::defnames_size() const { + return _internal_defnames_size(); } -inline uint32_t SortGroupClause::tle_sort_group_ref() const { - // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.tle_sort_group_ref) - return _internal_tle_sort_group_ref(); +inline void AlterStatsStmt::clear_defnames() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.defnames_.Clear(); } -inline void SortGroupClause::_internal_set_tle_sort_group_ref(uint32_t value) { - - _impl_.tle_sort_group_ref_ = value; +inline ::pg_query::Node* AlterStatsStmt::mutable_defnames(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterStatsStmt.defnames) + return _internal_mutable_defnames()->Mutable(index); } -inline void SortGroupClause::set_tle_sort_group_ref(uint32_t value) { - _internal_set_tle_sort_group_ref(value); - // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.tle_sort_group_ref) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterStatsStmt::mutable_defnames() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterStatsStmt.defnames) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_defnames(); } - -// uint32 eqop = 2 [json_name = "eqop"]; -inline void SortGroupClause::clear_eqop() { - _impl_.eqop_ = 0u; +inline const ::pg_query::Node& AlterStatsStmt::defnames(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterStatsStmt.defnames) + return _internal_defnames().Get(index); } -inline uint32_t SortGroupClause::_internal_eqop() const { - return _impl_.eqop_; +inline ::pg_query::Node* AlterStatsStmt::add_defnames() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_defnames()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterStatsStmt.defnames) + return _add; } -inline uint32_t SortGroupClause::eqop() const { - // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.eqop) - return _internal_eqop(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterStatsStmt::defnames() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterStatsStmt.defnames) + return _internal_defnames(); } -inline void SortGroupClause::_internal_set_eqop(uint32_t value) { - - _impl_.eqop_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterStatsStmt::_internal_defnames() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.defnames_; } -inline void SortGroupClause::set_eqop(uint32_t value) { - _internal_set_eqop(value); - // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.eqop) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterStatsStmt::_internal_mutable_defnames() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.defnames_; } -// uint32 sortop = 3 [json_name = "sortop"]; -inline void SortGroupClause::clear_sortop() { - _impl_.sortop_ = 0u; +// int32 stxstattarget = 2 [json_name = "stxstattarget"]; +inline void AlterStatsStmt::clear_stxstattarget() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.stxstattarget_ = 0; } -inline uint32_t SortGroupClause::_internal_sortop() const { - return _impl_.sortop_; +inline ::int32_t AlterStatsStmt::stxstattarget() const { + // @@protoc_insertion_point(field_get:pg_query.AlterStatsStmt.stxstattarget) + return _internal_stxstattarget(); } -inline uint32_t SortGroupClause::sortop() const { - // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.sortop) - return _internal_sortop(); +inline void AlterStatsStmt::set_stxstattarget(::int32_t value) { + _internal_set_stxstattarget(value); + // @@protoc_insertion_point(field_set:pg_query.AlterStatsStmt.stxstattarget) } -inline void SortGroupClause::_internal_set_sortop(uint32_t value) { - - _impl_.sortop_ = value; +inline ::int32_t AlterStatsStmt::_internal_stxstattarget() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.stxstattarget_; } -inline void SortGroupClause::set_sortop(uint32_t value) { - _internal_set_sortop(value); - // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.sortop) +inline void AlterStatsStmt::_internal_set_stxstattarget(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.stxstattarget_ = value; } -// bool nulls_first = 4 [json_name = "nulls_first"]; -inline void SortGroupClause::clear_nulls_first() { - _impl_.nulls_first_ = false; +// bool missing_ok = 3 [json_name = "missing_ok"]; +inline void AlterStatsStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline bool SortGroupClause::_internal_nulls_first() const { - return _impl_.nulls_first_; +inline bool AlterStatsStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.AlterStatsStmt.missing_ok) + return _internal_missing_ok(); } -inline bool SortGroupClause::nulls_first() const { - // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.nulls_first) - return _internal_nulls_first(); +inline void AlterStatsStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.AlterStatsStmt.missing_ok) } -inline void SortGroupClause::_internal_set_nulls_first(bool value) { - - _impl_.nulls_first_ = value; +inline bool AlterStatsStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline void SortGroupClause::set_nulls_first(bool value) { - _internal_set_nulls_first(value); - // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.nulls_first) +inline void AlterStatsStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } -// bool hashable = 5 [json_name = "hashable"]; -inline void SortGroupClause::clear_hashable() { - _impl_.hashable_ = false; +// ------------------------------------------------------------------- + +// CreateFunctionStmt + +// bool is_procedure = 1 [json_name = "is_procedure"]; +inline void CreateFunctionStmt::clear_is_procedure() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_procedure_ = false; } -inline bool SortGroupClause::_internal_hashable() const { - return _impl_.hashable_; +inline bool CreateFunctionStmt::is_procedure() const { + // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.is_procedure) + return _internal_is_procedure(); } -inline bool SortGroupClause::hashable() const { - // @@protoc_insertion_point(field_get:pg_query.SortGroupClause.hashable) - return _internal_hashable(); +inline void CreateFunctionStmt::set_is_procedure(bool value) { + _internal_set_is_procedure(value); + // @@protoc_insertion_point(field_set:pg_query.CreateFunctionStmt.is_procedure) } -inline void SortGroupClause::_internal_set_hashable(bool value) { - - _impl_.hashable_ = value; +inline bool CreateFunctionStmt::_internal_is_procedure() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_procedure_; } -inline void SortGroupClause::set_hashable(bool value) { - _internal_set_hashable(value); - // @@protoc_insertion_point(field_set:pg_query.SortGroupClause.hashable) +inline void CreateFunctionStmt::_internal_set_is_procedure(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_procedure_ = value; } -// ------------------------------------------------------------------- - -// GroupingSet - -// .pg_query.GroupingSetKind kind = 1 [json_name = "kind"]; -inline void GroupingSet::clear_kind() { - _impl_.kind_ = 0; +// bool replace = 2 [json_name = "replace"]; +inline void CreateFunctionStmt::clear_replace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.replace_ = false; } -inline ::pg_query::GroupingSetKind GroupingSet::_internal_kind() const { - return static_cast< ::pg_query::GroupingSetKind >(_impl_.kind_); +inline bool CreateFunctionStmt::replace() const { + // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.replace) + return _internal_replace(); } -inline ::pg_query::GroupingSetKind GroupingSet::kind() const { - // @@protoc_insertion_point(field_get:pg_query.GroupingSet.kind) - return _internal_kind(); +inline void CreateFunctionStmt::set_replace(bool value) { + _internal_set_replace(value); + // @@protoc_insertion_point(field_set:pg_query.CreateFunctionStmt.replace) } -inline void GroupingSet::_internal_set_kind(::pg_query::GroupingSetKind value) { - - _impl_.kind_ = value; +inline bool CreateFunctionStmt::_internal_replace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.replace_; } -inline void GroupingSet::set_kind(::pg_query::GroupingSetKind value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.GroupingSet.kind) +inline void CreateFunctionStmt::_internal_set_replace(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.replace_ = value; } -// repeated .pg_query.Node content = 2 [json_name = "content"]; -inline int GroupingSet::_internal_content_size() const { - return _impl_.content_.size(); +// repeated .pg_query.Node funcname = 3 [json_name = "funcname"]; +inline int CreateFunctionStmt::_internal_funcname_size() const { + return _internal_funcname().size(); } -inline int GroupingSet::content_size() const { - return _internal_content_size(); +inline int CreateFunctionStmt::funcname_size() const { + return _internal_funcname_size(); } -inline void GroupingSet::clear_content() { - _impl_.content_.Clear(); +inline void CreateFunctionStmt::clear_funcname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.funcname_.Clear(); } -inline ::pg_query::Node* GroupingSet::mutable_content(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.GroupingSet.content) - return _impl_.content_.Mutable(index); +inline ::pg_query::Node* CreateFunctionStmt::mutable_funcname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.funcname) + return _internal_mutable_funcname()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -GroupingSet::mutable_content() { - // @@protoc_insertion_point(field_mutable_list:pg_query.GroupingSet.content) - return &_impl_.content_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateFunctionStmt::mutable_funcname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFunctionStmt.funcname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_funcname(); } -inline const ::pg_query::Node& GroupingSet::_internal_content(int index) const { - return _impl_.content_.Get(index); +inline const ::pg_query::Node& CreateFunctionStmt::funcname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.funcname) + return _internal_funcname().Get(index); } -inline const ::pg_query::Node& GroupingSet::content(int index) const { - // @@protoc_insertion_point(field_get:pg_query.GroupingSet.content) - return _internal_content(index); +inline ::pg_query::Node* CreateFunctionStmt::add_funcname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_funcname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateFunctionStmt.funcname) + return _add; } -inline ::pg_query::Node* GroupingSet::_internal_add_content() { - return _impl_.content_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateFunctionStmt::funcname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateFunctionStmt.funcname) + return _internal_funcname(); } -inline ::pg_query::Node* GroupingSet::add_content() { - ::pg_query::Node* _add = _internal_add_content(); - // @@protoc_insertion_point(field_add:pg_query.GroupingSet.content) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateFunctionStmt::_internal_funcname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.funcname_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -GroupingSet::content() const { - // @@protoc_insertion_point(field_list:pg_query.GroupingSet.content) - return _impl_.content_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateFunctionStmt::_internal_mutable_funcname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.funcname_; } -// int32 location = 3 [json_name = "location"]; -inline void GroupingSet::clear_location() { - _impl_.location_ = 0; +// repeated .pg_query.Node parameters = 4 [json_name = "parameters"]; +inline int CreateFunctionStmt::_internal_parameters_size() const { + return _internal_parameters().size(); } -inline int32_t GroupingSet::_internal_location() const { - return _impl_.location_; +inline int CreateFunctionStmt::parameters_size() const { + return _internal_parameters_size(); } -inline int32_t GroupingSet::location() const { - // @@protoc_insertion_point(field_get:pg_query.GroupingSet.location) - return _internal_location(); +inline void CreateFunctionStmt::clear_parameters() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.parameters_.Clear(); } -inline void GroupingSet::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* CreateFunctionStmt::mutable_parameters(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.parameters) + return _internal_mutable_parameters()->Mutable(index); } -inline void GroupingSet::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.GroupingSet.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateFunctionStmt::mutable_parameters() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFunctionStmt.parameters) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_parameters(); } - -// ------------------------------------------------------------------- - -// WindowClause - -// string name = 1 [json_name = "name"]; -inline void WindowClause::clear_name() { - _impl_.name_.ClearToEmpty(); +inline const ::pg_query::Node& CreateFunctionStmt::parameters(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.parameters) + return _internal_parameters().Get(index); } -inline const std::string& WindowClause::name() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.name) - return _internal_name(); +inline ::pg_query::Node* CreateFunctionStmt::add_parameters() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_parameters()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateFunctionStmt.parameters) + return _add; } -template -inline PROTOBUF_ALWAYS_INLINE -void WindowClause::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.name) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateFunctionStmt::parameters() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateFunctionStmt.parameters) + return _internal_parameters(); } -inline std::string* WindowClause::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.name) - return _s; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateFunctionStmt::_internal_parameters() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.parameters_; } -inline const std::string& WindowClause::_internal_name() const { - return _impl_.name_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateFunctionStmt::_internal_mutable_parameters() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.parameters_; } -inline void WindowClause::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); + +// .pg_query.TypeName return_type = 5 [json_name = "returnType"]; +inline bool CreateFunctionStmt::has_return_type() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.return_type_ != nullptr); + return value; } -inline std::string* WindowClause::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline void CreateFunctionStmt::clear_return_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.return_type_ != nullptr) _impl_.return_type_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* WindowClause::release_name() { - // @@protoc_insertion_point(field_release:pg_query.WindowClause.name) - return _impl_.name_.Release(); +inline const ::pg_query::TypeName& CreateFunctionStmt::_internal_return_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.return_type_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); +} +inline const ::pg_query::TypeName& CreateFunctionStmt::return_type() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.return_type) + return _internal_return_type(); } -inline void WindowClause::set_allocated_name(std::string* name) { - if (name != nullptr) { - +inline void CreateFunctionStmt::unsafe_arena_set_allocated_return_type(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.return_type_); + } + _impl_.return_type_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateFunctionStmt.return_type) +} +inline ::pg_query::TypeName* CreateFunctionStmt::release_return_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* released = _impl_.return_type_; + _impl_.return_type_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowClause.name) +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::TypeName* CreateFunctionStmt::unsafe_arena_release_return_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateFunctionStmt.return_type) -// string refname = 2 [json_name = "refname"]; -inline void WindowClause::clear_refname() { - _impl_.refname_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* temp = _impl_.return_type_; + _impl_.return_type_ = nullptr; + return temp; } -inline const std::string& WindowClause::refname() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.refname) - return _internal_refname(); +inline ::pg_query::TypeName* CreateFunctionStmt::_internal_mutable_return_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.return_type_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.return_type_ = reinterpret_cast<::pg_query::TypeName*>(p); + } + return _impl_.return_type_; } -template -inline PROTOBUF_ALWAYS_INLINE -void WindowClause::set_refname(ArgT0&& arg0, ArgT... args) { - - _impl_.refname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.refname) +inline ::pg_query::TypeName* CreateFunctionStmt::mutable_return_type() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_return_type(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.return_type) + return _msg; } -inline std::string* WindowClause::mutable_refname() { - std::string* _s = _internal_mutable_refname(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.refname) - return _s; +inline void CreateFunctionStmt::set_allocated_return_type(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.return_type_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.return_type_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateFunctionStmt.return_type) } -inline const std::string& WindowClause::_internal_refname() const { - return _impl_.refname_.Get(); + +// repeated .pg_query.Node options = 6 [json_name = "options"]; +inline int CreateFunctionStmt::_internal_options_size() const { + return _internal_options().size(); } -inline void WindowClause::_internal_set_refname(const std::string& value) { - - _impl_.refname_.Set(value, GetArenaForAllocation()); +inline int CreateFunctionStmt::options_size() const { + return _internal_options_size(); } -inline std::string* WindowClause::_internal_mutable_refname() { - - return _impl_.refname_.Mutable(GetArenaForAllocation()); +inline void CreateFunctionStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline std::string* WindowClause::release_refname() { - // @@protoc_insertion_point(field_release:pg_query.WindowClause.refname) - return _impl_.refname_.Release(); +inline ::pg_query::Node* CreateFunctionStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateFunctionStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateFunctionStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& CreateFunctionStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* CreateFunctionStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateFunctionStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateFunctionStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateFunctionStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateFunctionStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateFunctionStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} + +// .pg_query.Node sql_body = 7 [json_name = "sql_body"]; +inline bool CreateFunctionStmt::has_sql_body() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.sql_body_ != nullptr); + return value; +} +inline void CreateFunctionStmt::clear_sql_body() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.sql_body_ != nullptr) _impl_.sql_body_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::Node& CreateFunctionStmt::_internal_sql_body() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.sql_body_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void WindowClause::set_allocated_refname(std::string* refname) { - if (refname != nullptr) { - +inline const ::pg_query::Node& CreateFunctionStmt::sql_body() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateFunctionStmt.sql_body) + return _internal_sql_body(); +} +inline void CreateFunctionStmt::unsafe_arena_set_allocated_sql_body(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.sql_body_); + } + _impl_.sql_body_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.refname_.SetAllocated(refname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.refname_.IsDefault()) { - _impl_.refname_.Set("", GetArenaForAllocation()); + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateFunctionStmt.sql_body) +} +inline ::pg_query::Node* CreateFunctionStmt::release_sql_body() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.sql_body_; + _impl_.sql_body_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowClause.refname) +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::Node* CreateFunctionStmt::unsafe_arena_release_sql_body() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateFunctionStmt.sql_body) -// repeated .pg_query.Node partition_clause = 3 [json_name = "partitionClause"]; -inline int WindowClause::_internal_partition_clause_size() const { - return _impl_.partition_clause_.size(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.sql_body_; + _impl_.sql_body_ = nullptr; + return temp; } -inline int WindowClause::partition_clause_size() const { - return _internal_partition_clause_size(); +inline ::pg_query::Node* CreateFunctionStmt::_internal_mutable_sql_body() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.sql_body_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.sql_body_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.sql_body_; } -inline void WindowClause::clear_partition_clause() { - _impl_.partition_clause_.Clear(); +inline ::pg_query::Node* CreateFunctionStmt::mutable_sql_body() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_sql_body(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateFunctionStmt.sql_body) + return _msg; } -inline ::pg_query::Node* WindowClause::mutable_partition_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.partition_clause) - return _impl_.partition_clause_.Mutable(index); +inline void CreateFunctionStmt::set_allocated_sql_body(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.sql_body_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.sql_body_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateFunctionStmt.sql_body) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -WindowClause::mutable_partition_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.WindowClause.partition_clause) - return &_impl_.partition_clause_; + +// ------------------------------------------------------------------- + +// FunctionParameter + +// string name = 1 [json_name = "name"]; +inline void FunctionParameter::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline const ::pg_query::Node& WindowClause::_internal_partition_clause(int index) const { - return _impl_.partition_clause_.Get(index); +inline const std::string& FunctionParameter::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FunctionParameter.name) + return _internal_name(); } -inline const ::pg_query::Node& WindowClause::partition_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.partition_clause) - return _internal_partition_clause(index); +template +inline PROTOBUF_ALWAYS_INLINE void FunctionParameter::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.FunctionParameter.name) } -inline ::pg_query::Node* WindowClause::_internal_add_partition_clause() { - return _impl_.partition_clause_.Add(); +inline std::string* FunctionParameter::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.FunctionParameter.name) + return _s; } -inline ::pg_query::Node* WindowClause::add_partition_clause() { - ::pg_query::Node* _add = _internal_add_partition_clause(); - // @@protoc_insertion_point(field_add:pg_query.WindowClause.partition_clause) - return _add; +inline const std::string& FunctionParameter::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -WindowClause::partition_clause() const { - // @@protoc_insertion_point(field_list:pg_query.WindowClause.partition_clause) - return _impl_.partition_clause_; +inline void FunctionParameter::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); +} +inline std::string* FunctionParameter::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* FunctionParameter::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FunctionParameter.name) + return _impl_.name_.Release(); +} +inline void FunctionParameter::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.FunctionParameter.name) } -// repeated .pg_query.Node order_clause = 4 [json_name = "orderClause"]; -inline int WindowClause::_internal_order_clause_size() const { - return _impl_.order_clause_.size(); +// .pg_query.TypeName arg_type = 2 [json_name = "argType"]; +inline bool FunctionParameter::has_arg_type() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.arg_type_ != nullptr); + return value; } -inline int WindowClause::order_clause_size() const { - return _internal_order_clause_size(); +inline void FunctionParameter::clear_arg_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.arg_type_ != nullptr) _impl_.arg_type_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void WindowClause::clear_order_clause() { - _impl_.order_clause_.Clear(); +inline const ::pg_query::TypeName& FunctionParameter::_internal_arg_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.arg_type_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline ::pg_query::Node* WindowClause::mutable_order_clause(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.order_clause) - return _impl_.order_clause_.Mutable(index); +inline const ::pg_query::TypeName& FunctionParameter::arg_type() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FunctionParameter.arg_type) + return _internal_arg_type(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -WindowClause::mutable_order_clause() { - // @@protoc_insertion_point(field_mutable_list:pg_query.WindowClause.order_clause) - return &_impl_.order_clause_; +inline void FunctionParameter::unsafe_arena_set_allocated_arg_type(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.arg_type_); + } + _impl_.arg_type_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FunctionParameter.arg_type) } -inline const ::pg_query::Node& WindowClause::_internal_order_clause(int index) const { - return _impl_.order_clause_.Get(index); +inline ::pg_query::TypeName* FunctionParameter::release_arg_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* released = _impl_.arg_type_; + _impl_.arg_type_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& WindowClause::order_clause(int index) const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.order_clause) - return _internal_order_clause(index); +inline ::pg_query::TypeName* FunctionParameter::unsafe_arena_release_arg_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FunctionParameter.arg_type) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* temp = _impl_.arg_type_; + _impl_.arg_type_ = nullptr; + return temp; } -inline ::pg_query::Node* WindowClause::_internal_add_order_clause() { - return _impl_.order_clause_.Add(); +inline ::pg_query::TypeName* FunctionParameter::_internal_mutable_arg_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.arg_type_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.arg_type_ = reinterpret_cast<::pg_query::TypeName*>(p); + } + return _impl_.arg_type_; } -inline ::pg_query::Node* WindowClause::add_order_clause() { - ::pg_query::Node* _add = _internal_add_order_clause(); - // @@protoc_insertion_point(field_add:pg_query.WindowClause.order_clause) - return _add; +inline ::pg_query::TypeName* FunctionParameter::mutable_arg_type() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_arg_type(); + // @@protoc_insertion_point(field_mutable:pg_query.FunctionParameter.arg_type) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -WindowClause::order_clause() const { - // @@protoc_insertion_point(field_list:pg_query.WindowClause.order_clause) - return _impl_.order_clause_; +inline void FunctionParameter::set_allocated_arg_type(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.arg_type_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.arg_type_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FunctionParameter.arg_type) } -// int32 frame_options = 5 [json_name = "frameOptions"]; -inline void WindowClause::clear_frame_options() { - _impl_.frame_options_ = 0; +// .pg_query.FunctionParameterMode mode = 3 [json_name = "mode"]; +inline void FunctionParameter::clear_mode() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.mode_ = 0; } -inline int32_t WindowClause::_internal_frame_options() const { - return _impl_.frame_options_; +inline ::pg_query::FunctionParameterMode FunctionParameter::mode() const { + // @@protoc_insertion_point(field_get:pg_query.FunctionParameter.mode) + return _internal_mode(); } -inline int32_t WindowClause::frame_options() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.frame_options) - return _internal_frame_options(); +inline void FunctionParameter::set_mode(::pg_query::FunctionParameterMode value) { + _internal_set_mode(value); + // @@protoc_insertion_point(field_set:pg_query.FunctionParameter.mode) } -inline void WindowClause::_internal_set_frame_options(int32_t value) { - - _impl_.frame_options_ = value; +inline ::pg_query::FunctionParameterMode FunctionParameter::_internal_mode() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::FunctionParameterMode>(_impl_.mode_); } -inline void WindowClause::set_frame_options(int32_t value) { - _internal_set_frame_options(value); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.frame_options) +inline void FunctionParameter::_internal_set_mode(::pg_query::FunctionParameterMode value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.mode_ = value; } -// .pg_query.Node start_offset = 6 [json_name = "startOffset"]; -inline bool WindowClause::_internal_has_start_offset() const { - return this != internal_default_instance() && _impl_.start_offset_ != nullptr; -} -inline bool WindowClause::has_start_offset() const { - return _internal_has_start_offset(); +// .pg_query.Node defexpr = 4 [json_name = "defexpr"]; +inline bool FunctionParameter::has_defexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.defexpr_ != nullptr); + return value; } -inline void WindowClause::clear_start_offset() { - if (GetArenaForAllocation() == nullptr && _impl_.start_offset_ != nullptr) { - delete _impl_.start_offset_; - } - _impl_.start_offset_ = nullptr; +inline void FunctionParameter::clear_defexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.defexpr_ != nullptr) _impl_.defexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& WindowClause::_internal_start_offset() const { - const ::pg_query::Node* p = _impl_.start_offset_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::Node& FunctionParameter::_internal_defexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.defexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& WindowClause::start_offset() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.start_offset) - return _internal_start_offset(); +inline const ::pg_query::Node& FunctionParameter::defexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.FunctionParameter.defexpr) + return _internal_defexpr(); } -inline void WindowClause::unsafe_arena_set_allocated_start_offset( - ::pg_query::Node* start_offset) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.start_offset_); +inline void FunctionParameter::unsafe_arena_set_allocated_defexpr(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.defexpr_); } - _impl_.start_offset_ = start_offset; - if (start_offset) { - + _impl_.defexpr_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowClause.start_offset) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FunctionParameter.defexpr) } -inline ::pg_query::Node* WindowClause::release_start_offset() { - - ::pg_query::Node* temp = _impl_.start_offset_; - _impl_.start_offset_ = nullptr; +inline ::pg_query::Node* FunctionParameter::release_defexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.defexpr_; + _impl_.defexpr_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* WindowClause::unsafe_arena_release_start_offset() { - // @@protoc_insertion_point(field_release:pg_query.WindowClause.start_offset) - - ::pg_query::Node* temp = _impl_.start_offset_; - _impl_.start_offset_ = nullptr; +inline ::pg_query::Node* FunctionParameter::unsafe_arena_release_defexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.FunctionParameter.defexpr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.defexpr_; + _impl_.defexpr_ = nullptr; return temp; } -inline ::pg_query::Node* WindowClause::_internal_mutable_start_offset() { - - if (_impl_.start_offset_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.start_offset_ = p; +inline ::pg_query::Node* FunctionParameter::_internal_mutable_defexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.defexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.defexpr_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.start_offset_; + return _impl_.defexpr_; } -inline ::pg_query::Node* WindowClause::mutable_start_offset() { - ::pg_query::Node* _msg = _internal_mutable_start_offset(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.start_offset) +inline ::pg_query::Node* FunctionParameter::mutable_defexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_defexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.FunctionParameter.defexpr) return _msg; } -inline void WindowClause::set_allocated_start_offset(::pg_query::Node* start_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void FunctionParameter::set_allocated_defexpr(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.start_offset_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.defexpr_); } - if (start_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(start_offset); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - start_offset = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, start_offset, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.start_offset_ = start_offset; - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowClause.start_offset) + + _impl_.defexpr_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.FunctionParameter.defexpr) } -// .pg_query.Node end_offset = 7 [json_name = "endOffset"]; -inline bool WindowClause::_internal_has_end_offset() const { - return this != internal_default_instance() && _impl_.end_offset_ != nullptr; +// ------------------------------------------------------------------- + +// AlterFunctionStmt + +// .pg_query.ObjectType objtype = 1 [json_name = "objtype"]; +inline void AlterFunctionStmt::clear_objtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objtype_ = 0; } -inline bool WindowClause::has_end_offset() const { - return _internal_has_end_offset(); +inline ::pg_query::ObjectType AlterFunctionStmt::objtype() const { + // @@protoc_insertion_point(field_get:pg_query.AlterFunctionStmt.objtype) + return _internal_objtype(); } -inline void WindowClause::clear_end_offset() { - if (GetArenaForAllocation() == nullptr && _impl_.end_offset_ != nullptr) { - delete _impl_.end_offset_; - } - _impl_.end_offset_ = nullptr; +inline void AlterFunctionStmt::set_objtype(::pg_query::ObjectType value) { + _internal_set_objtype(value); + // @@protoc_insertion_point(field_set:pg_query.AlterFunctionStmt.objtype) } -inline const ::pg_query::Node& WindowClause::_internal_end_offset() const { - const ::pg_query::Node* p = _impl_.end_offset_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline ::pg_query::ObjectType AlterFunctionStmt::_internal_objtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.objtype_); } -inline const ::pg_query::Node& WindowClause::end_offset() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.end_offset) - return _internal_end_offset(); +inline void AlterFunctionStmt::_internal_set_objtype(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.objtype_ = value; +} + +// .pg_query.ObjectWithArgs func = 2 [json_name = "func"]; +inline bool AlterFunctionStmt::has_func() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.func_ != nullptr); + return value; +} +inline void AlterFunctionStmt::clear_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.func_ != nullptr) _impl_.func_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::ObjectWithArgs& AlterFunctionStmt::_internal_func() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::ObjectWithArgs* p = _impl_.func_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_ObjectWithArgs_default_instance_); } -inline void WindowClause::unsafe_arena_set_allocated_end_offset( - ::pg_query::Node* end_offset) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.end_offset_); +inline const ::pg_query::ObjectWithArgs& AlterFunctionStmt::func() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterFunctionStmt.func) + return _internal_func(); +} +inline void AlterFunctionStmt::unsafe_arena_set_allocated_func(::pg_query::ObjectWithArgs* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.func_); } - _impl_.end_offset_ = end_offset; - if (end_offset) { - + _impl_.func_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.WindowClause.end_offset) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterFunctionStmt.func) } -inline ::pg_query::Node* WindowClause::release_end_offset() { - - ::pg_query::Node* temp = _impl_.end_offset_; - _impl_.end_offset_ = nullptr; +inline ::pg_query::ObjectWithArgs* AlterFunctionStmt::release_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::ObjectWithArgs* released = _impl_.func_; + _impl_.func_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* WindowClause::unsafe_arena_release_end_offset() { - // @@protoc_insertion_point(field_release:pg_query.WindowClause.end_offset) - - ::pg_query::Node* temp = _impl_.end_offset_; - _impl_.end_offset_ = nullptr; +inline ::pg_query::ObjectWithArgs* AlterFunctionStmt::unsafe_arena_release_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterFunctionStmt.func) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::ObjectWithArgs* temp = _impl_.func_; + _impl_.func_ = nullptr; return temp; } -inline ::pg_query::Node* WindowClause::_internal_mutable_end_offset() { - - if (_impl_.end_offset_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.end_offset_ = p; +inline ::pg_query::ObjectWithArgs* AlterFunctionStmt::_internal_mutable_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.func_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArena()); + _impl_.func_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(p); } - return _impl_.end_offset_; + return _impl_.func_; } -inline ::pg_query::Node* WindowClause::mutable_end_offset() { - ::pg_query::Node* _msg = _internal_mutable_end_offset(); - // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.end_offset) +inline ::pg_query::ObjectWithArgs* AlterFunctionStmt::mutable_func() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ObjectWithArgs* _msg = _internal_mutable_func(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterFunctionStmt.func) return _msg; } -inline void WindowClause::set_allocated_end_offset(::pg_query::Node* end_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterFunctionStmt::set_allocated_func(::pg_query::ObjectWithArgs* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.end_offset_; + delete reinterpret_cast<::pg_query::ObjectWithArgs*>(_impl_.func_); } - if (end_offset) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(end_offset); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::ObjectWithArgs*>(value)->GetArena(); if (message_arena != submessage_arena) { - end_offset = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, end_offset, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.end_offset_ = end_offset; - // @@protoc_insertion_point(field_set_allocated:pg_query.WindowClause.end_offset) + + _impl_.func_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterFunctionStmt.func) } -// repeated .pg_query.Node run_condition = 8 [json_name = "runCondition"]; -inline int WindowClause::_internal_run_condition_size() const { - return _impl_.run_condition_.size(); +// repeated .pg_query.Node actions = 3 [json_name = "actions"]; +inline int AlterFunctionStmt::_internal_actions_size() const { + return _internal_actions().size(); } -inline int WindowClause::run_condition_size() const { - return _internal_run_condition_size(); +inline int AlterFunctionStmt::actions_size() const { + return _internal_actions_size(); } -inline void WindowClause::clear_run_condition() { - _impl_.run_condition_.Clear(); +inline void AlterFunctionStmt::clear_actions() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.actions_.Clear(); } -inline ::pg_query::Node* WindowClause::mutable_run_condition(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.WindowClause.run_condition) - return _impl_.run_condition_.Mutable(index); +inline ::pg_query::Node* AlterFunctionStmt::mutable_actions(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterFunctionStmt.actions) + return _internal_mutable_actions()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -WindowClause::mutable_run_condition() { - // @@protoc_insertion_point(field_mutable_list:pg_query.WindowClause.run_condition) - return &_impl_.run_condition_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterFunctionStmt::mutable_actions() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterFunctionStmt.actions) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_actions(); } -inline const ::pg_query::Node& WindowClause::_internal_run_condition(int index) const { - return _impl_.run_condition_.Get(index); +inline const ::pg_query::Node& AlterFunctionStmt::actions(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterFunctionStmt.actions) + return _internal_actions().Get(index); } -inline const ::pg_query::Node& WindowClause::run_condition(int index) const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.run_condition) - return _internal_run_condition(index); +inline ::pg_query::Node* AlterFunctionStmt::add_actions() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_actions()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterFunctionStmt.actions) + return _add; } -inline ::pg_query::Node* WindowClause::_internal_add_run_condition() { - return _impl_.run_condition_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterFunctionStmt::actions() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterFunctionStmt.actions) + return _internal_actions(); } -inline ::pg_query::Node* WindowClause::add_run_condition() { - ::pg_query::Node* _add = _internal_add_run_condition(); - // @@protoc_insertion_point(field_add:pg_query.WindowClause.run_condition) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterFunctionStmt::_internal_actions() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.actions_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -WindowClause::run_condition() const { - // @@protoc_insertion_point(field_list:pg_query.WindowClause.run_condition) - return _impl_.run_condition_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterFunctionStmt::_internal_mutable_actions() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.actions_; } -// uint32 start_in_range_func = 9 [json_name = "startInRangeFunc"]; -inline void WindowClause::clear_start_in_range_func() { - _impl_.start_in_range_func_ = 0u; +// ------------------------------------------------------------------- + +// DoStmt + +// repeated .pg_query.Node args = 1 [json_name = "args"]; +inline int DoStmt::_internal_args_size() const { + return _internal_args().size(); } -inline uint32_t WindowClause::_internal_start_in_range_func() const { - return _impl_.start_in_range_func_; +inline int DoStmt::args_size() const { + return _internal_args_size(); } -inline uint32_t WindowClause::start_in_range_func() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.start_in_range_func) - return _internal_start_in_range_func(); +inline void DoStmt::clear_args() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.args_.Clear(); } -inline void WindowClause::_internal_set_start_in_range_func(uint32_t value) { - - _impl_.start_in_range_func_ = value; +inline ::pg_query::Node* DoStmt::mutable_args(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DoStmt.args) + return _internal_mutable_args()->Mutable(index); } -inline void WindowClause::set_start_in_range_func(uint32_t value) { - _internal_set_start_in_range_func(value); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.start_in_range_func) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DoStmt::mutable_args() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DoStmt.args) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_args(); } - -// uint32 end_in_range_func = 10 [json_name = "endInRangeFunc"]; -inline void WindowClause::clear_end_in_range_func() { - _impl_.end_in_range_func_ = 0u; +inline const ::pg_query::Node& DoStmt::args(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DoStmt.args) + return _internal_args().Get(index); } -inline uint32_t WindowClause::_internal_end_in_range_func() const { - return _impl_.end_in_range_func_; +inline ::pg_query::Node* DoStmt::add_args() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_args()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DoStmt.args) + return _add; } -inline uint32_t WindowClause::end_in_range_func() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.end_in_range_func) - return _internal_end_in_range_func(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DoStmt::args() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DoStmt.args) + return _internal_args(); } -inline void WindowClause::_internal_set_end_in_range_func(uint32_t value) { - - _impl_.end_in_range_func_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DoStmt::_internal_args() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.args_; } -inline void WindowClause::set_end_in_range_func(uint32_t value) { - _internal_set_end_in_range_func(value); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.end_in_range_func) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DoStmt::_internal_mutable_args() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.args_; } -// uint32 in_range_coll = 11 [json_name = "inRangeColl"]; -inline void WindowClause::clear_in_range_coll() { - _impl_.in_range_coll_ = 0u; -} -inline uint32_t WindowClause::_internal_in_range_coll() const { - return _impl_.in_range_coll_; +// ------------------------------------------------------------------- + +// InlineCodeBlock + +// string source_text = 1 [json_name = "source_text"]; +inline void InlineCodeBlock::clear_source_text() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.source_text_.ClearToEmpty(); } -inline uint32_t WindowClause::in_range_coll() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.in_range_coll) - return _internal_in_range_coll(); +inline const std::string& InlineCodeBlock::source_text() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.InlineCodeBlock.source_text) + return _internal_source_text(); } -inline void WindowClause::_internal_set_in_range_coll(uint32_t value) { - - _impl_.in_range_coll_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void InlineCodeBlock::set_source_text(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.source_text_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.InlineCodeBlock.source_text) } -inline void WindowClause::set_in_range_coll(uint32_t value) { - _internal_set_in_range_coll(value); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.in_range_coll) +inline std::string* InlineCodeBlock::mutable_source_text() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_source_text(); + // @@protoc_insertion_point(field_mutable:pg_query.InlineCodeBlock.source_text) + return _s; } - -// bool in_range_asc = 12 [json_name = "inRangeAsc"]; -inline void WindowClause::clear_in_range_asc() { - _impl_.in_range_asc_ = false; +inline const std::string& InlineCodeBlock::_internal_source_text() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.source_text_.Get(); } -inline bool WindowClause::_internal_in_range_asc() const { - return _impl_.in_range_asc_; +inline void InlineCodeBlock::_internal_set_source_text(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.source_text_.Set(value, GetArena()); } -inline bool WindowClause::in_range_asc() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.in_range_asc) - return _internal_in_range_asc(); +inline std::string* InlineCodeBlock::_internal_mutable_source_text() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.source_text_.Mutable( GetArena()); } -inline void WindowClause::_internal_set_in_range_asc(bool value) { - - _impl_.in_range_asc_ = value; +inline std::string* InlineCodeBlock::release_source_text() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.InlineCodeBlock.source_text) + return _impl_.source_text_.Release(); } -inline void WindowClause::set_in_range_asc(bool value) { - _internal_set_in_range_asc(value); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.in_range_asc) +inline void InlineCodeBlock::set_allocated_source_text(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.source_text_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.source_text_.IsDefault()) { + _impl_.source_text_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.InlineCodeBlock.source_text) } -// bool in_range_nulls_first = 13 [json_name = "inRangeNullsFirst"]; -inline void WindowClause::clear_in_range_nulls_first() { - _impl_.in_range_nulls_first_ = false; +// uint32 lang_oid = 2 [json_name = "langOid"]; +inline void InlineCodeBlock::clear_lang_oid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.lang_oid_ = 0u; } -inline bool WindowClause::_internal_in_range_nulls_first() const { - return _impl_.in_range_nulls_first_; +inline ::uint32_t InlineCodeBlock::lang_oid() const { + // @@protoc_insertion_point(field_get:pg_query.InlineCodeBlock.lang_oid) + return _internal_lang_oid(); } -inline bool WindowClause::in_range_nulls_first() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.in_range_nulls_first) - return _internal_in_range_nulls_first(); +inline void InlineCodeBlock::set_lang_oid(::uint32_t value) { + _internal_set_lang_oid(value); + // @@protoc_insertion_point(field_set:pg_query.InlineCodeBlock.lang_oid) } -inline void WindowClause::_internal_set_in_range_nulls_first(bool value) { - - _impl_.in_range_nulls_first_ = value; +inline ::uint32_t InlineCodeBlock::_internal_lang_oid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.lang_oid_; } -inline void WindowClause::set_in_range_nulls_first(bool value) { - _internal_set_in_range_nulls_first(value); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.in_range_nulls_first) +inline void InlineCodeBlock::_internal_set_lang_oid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.lang_oid_ = value; } -// uint32 winref = 14 [json_name = "winref"]; -inline void WindowClause::clear_winref() { - _impl_.winref_ = 0u; +// bool lang_is_trusted = 3 [json_name = "langIsTrusted"]; +inline void InlineCodeBlock::clear_lang_is_trusted() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.lang_is_trusted_ = false; } -inline uint32_t WindowClause::_internal_winref() const { - return _impl_.winref_; +inline bool InlineCodeBlock::lang_is_trusted() const { + // @@protoc_insertion_point(field_get:pg_query.InlineCodeBlock.lang_is_trusted) + return _internal_lang_is_trusted(); } -inline uint32_t WindowClause::winref() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.winref) - return _internal_winref(); +inline void InlineCodeBlock::set_lang_is_trusted(bool value) { + _internal_set_lang_is_trusted(value); + // @@protoc_insertion_point(field_set:pg_query.InlineCodeBlock.lang_is_trusted) } -inline void WindowClause::_internal_set_winref(uint32_t value) { - - _impl_.winref_ = value; +inline bool InlineCodeBlock::_internal_lang_is_trusted() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.lang_is_trusted_; } -inline void WindowClause::set_winref(uint32_t value) { - _internal_set_winref(value); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.winref) +inline void InlineCodeBlock::_internal_set_lang_is_trusted(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.lang_is_trusted_ = value; } -// bool copied_order = 15 [json_name = "copiedOrder"]; -inline void WindowClause::clear_copied_order() { - _impl_.copied_order_ = false; +// bool atomic = 4 [json_name = "atomic"]; +inline void InlineCodeBlock::clear_atomic() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.atomic_ = false; } -inline bool WindowClause::_internal_copied_order() const { - return _impl_.copied_order_; +inline bool InlineCodeBlock::atomic() const { + // @@protoc_insertion_point(field_get:pg_query.InlineCodeBlock.atomic) + return _internal_atomic(); } -inline bool WindowClause::copied_order() const { - // @@protoc_insertion_point(field_get:pg_query.WindowClause.copied_order) - return _internal_copied_order(); +inline void InlineCodeBlock::set_atomic(bool value) { + _internal_set_atomic(value); + // @@protoc_insertion_point(field_set:pg_query.InlineCodeBlock.atomic) } -inline void WindowClause::_internal_set_copied_order(bool value) { - - _impl_.copied_order_ = value; +inline bool InlineCodeBlock::_internal_atomic() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.atomic_; } -inline void WindowClause::set_copied_order(bool value) { - _internal_set_copied_order(value); - // @@protoc_insertion_point(field_set:pg_query.WindowClause.copied_order) +inline void InlineCodeBlock::_internal_set_atomic(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.atomic_ = value; } // ------------------------------------------------------------------- -// ObjectWithArgs +// CallStmt -// repeated .pg_query.Node objname = 1 [json_name = "objname"]; -inline int ObjectWithArgs::_internal_objname_size() const { - return _impl_.objname_.size(); +// .pg_query.FuncCall funccall = 1 [json_name = "funccall"]; +inline bool CallStmt::has_funccall() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.funccall_ != nullptr); + return value; } -inline int ObjectWithArgs::objname_size() const { - return _internal_objname_size(); +inline void CallStmt::clear_funccall() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.funccall_ != nullptr) _impl_.funccall_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void ObjectWithArgs::clear_objname() { - _impl_.objname_.Clear(); +inline const ::pg_query::FuncCall& CallStmt::_internal_funccall() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::FuncCall* p = _impl_.funccall_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_FuncCall_default_instance_); } -inline ::pg_query::Node* ObjectWithArgs::mutable_objname(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ObjectWithArgs.objname) - return _impl_.objname_.Mutable(index); +inline const ::pg_query::FuncCall& CallStmt::funccall() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CallStmt.funccall) + return _internal_funccall(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ObjectWithArgs::mutable_objname() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ObjectWithArgs.objname) - return &_impl_.objname_; +inline void CallStmt::unsafe_arena_set_allocated_funccall(::pg_query::FuncCall* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.funccall_); + } + _impl_.funccall_ = reinterpret_cast<::pg_query::FuncCall*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CallStmt.funccall) } -inline const ::pg_query::Node& ObjectWithArgs::_internal_objname(int index) const { - return _impl_.objname_.Get(index); +inline ::pg_query::FuncCall* CallStmt::release_funccall() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::FuncCall* released = _impl_.funccall_; + _impl_.funccall_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& ObjectWithArgs::objname(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ObjectWithArgs.objname) - return _internal_objname(index); +inline ::pg_query::FuncCall* CallStmt::unsafe_arena_release_funccall() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CallStmt.funccall) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::FuncCall* temp = _impl_.funccall_; + _impl_.funccall_ = nullptr; + return temp; } -inline ::pg_query::Node* ObjectWithArgs::_internal_add_objname() { - return _impl_.objname_.Add(); +inline ::pg_query::FuncCall* CallStmt::_internal_mutable_funccall() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.funccall_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::FuncCall>(GetArena()); + _impl_.funccall_ = reinterpret_cast<::pg_query::FuncCall*>(p); + } + return _impl_.funccall_; } -inline ::pg_query::Node* ObjectWithArgs::add_objname() { - ::pg_query::Node* _add = _internal_add_objname(); - // @@protoc_insertion_point(field_add:pg_query.ObjectWithArgs.objname) - return _add; +inline ::pg_query::FuncCall* CallStmt::mutable_funccall() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::FuncCall* _msg = _internal_mutable_funccall(); + // @@protoc_insertion_point(field_mutable:pg_query.CallStmt.funccall) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ObjectWithArgs::objname() const { - // @@protoc_insertion_point(field_list:pg_query.ObjectWithArgs.objname) - return _impl_.objname_; +inline void CallStmt::set_allocated_funccall(::pg_query::FuncCall* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::FuncCall*>(_impl_.funccall_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::FuncCall*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.funccall_ = reinterpret_cast<::pg_query::FuncCall*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CallStmt.funccall) } -// repeated .pg_query.Node objargs = 2 [json_name = "objargs"]; -inline int ObjectWithArgs::_internal_objargs_size() const { - return _impl_.objargs_.size(); +// .pg_query.FuncExpr funcexpr = 2 [json_name = "funcexpr"]; +inline bool CallStmt::has_funcexpr() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.funcexpr_ != nullptr); + return value; } -inline int ObjectWithArgs::objargs_size() const { - return _internal_objargs_size(); +inline void CallStmt::clear_funcexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.funcexpr_ != nullptr) _impl_.funcexpr_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline void ObjectWithArgs::clear_objargs() { - _impl_.objargs_.Clear(); +inline const ::pg_query::FuncExpr& CallStmt::_internal_funcexpr() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::FuncExpr* p = _impl_.funcexpr_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_FuncExpr_default_instance_); } -inline ::pg_query::Node* ObjectWithArgs::mutable_objargs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ObjectWithArgs.objargs) - return _impl_.objargs_.Mutable(index); +inline const ::pg_query::FuncExpr& CallStmt::funcexpr() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CallStmt.funcexpr) + return _internal_funcexpr(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ObjectWithArgs::mutable_objargs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ObjectWithArgs.objargs) - return &_impl_.objargs_; +inline void CallStmt::unsafe_arena_set_allocated_funcexpr(::pg_query::FuncExpr* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.funcexpr_); + } + _impl_.funcexpr_ = reinterpret_cast<::pg_query::FuncExpr*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CallStmt.funcexpr) } -inline const ::pg_query::Node& ObjectWithArgs::_internal_objargs(int index) const { - return _impl_.objargs_.Get(index); +inline ::pg_query::FuncExpr* CallStmt::release_funcexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::FuncExpr* released = _impl_.funcexpr_; + _impl_.funcexpr_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& ObjectWithArgs::objargs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ObjectWithArgs.objargs) - return _internal_objargs(index); +inline ::pg_query::FuncExpr* CallStmt::unsafe_arena_release_funcexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CallStmt.funcexpr) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::FuncExpr* temp = _impl_.funcexpr_; + _impl_.funcexpr_ = nullptr; + return temp; } -inline ::pg_query::Node* ObjectWithArgs::_internal_add_objargs() { - return _impl_.objargs_.Add(); +inline ::pg_query::FuncExpr* CallStmt::_internal_mutable_funcexpr() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.funcexpr_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::FuncExpr>(GetArena()); + _impl_.funcexpr_ = reinterpret_cast<::pg_query::FuncExpr*>(p); + } + return _impl_.funcexpr_; } -inline ::pg_query::Node* ObjectWithArgs::add_objargs() { - ::pg_query::Node* _add = _internal_add_objargs(); - // @@protoc_insertion_point(field_add:pg_query.ObjectWithArgs.objargs) - return _add; +inline ::pg_query::FuncExpr* CallStmt::mutable_funcexpr() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::FuncExpr* _msg = _internal_mutable_funcexpr(); + // @@protoc_insertion_point(field_mutable:pg_query.CallStmt.funcexpr) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ObjectWithArgs::objargs() const { - // @@protoc_insertion_point(field_list:pg_query.ObjectWithArgs.objargs) - return _impl_.objargs_; +inline void CallStmt::set_allocated_funcexpr(::pg_query::FuncExpr* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::FuncExpr*>(_impl_.funcexpr_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::FuncExpr*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.funcexpr_ = reinterpret_cast<::pg_query::FuncExpr*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CallStmt.funcexpr) } -// repeated .pg_query.Node objfuncargs = 3 [json_name = "objfuncargs"]; -inline int ObjectWithArgs::_internal_objfuncargs_size() const { - return _impl_.objfuncargs_.size(); +// repeated .pg_query.Node outargs = 3 [json_name = "outargs"]; +inline int CallStmt::_internal_outargs_size() const { + return _internal_outargs().size(); } -inline int ObjectWithArgs::objfuncargs_size() const { - return _internal_objfuncargs_size(); +inline int CallStmt::outargs_size() const { + return _internal_outargs_size(); } -inline void ObjectWithArgs::clear_objfuncargs() { - _impl_.objfuncargs_.Clear(); +inline void CallStmt::clear_outargs() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.outargs_.Clear(); } -inline ::pg_query::Node* ObjectWithArgs::mutable_objfuncargs(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.ObjectWithArgs.objfuncargs) - return _impl_.objfuncargs_.Mutable(index); +inline ::pg_query::Node* CallStmt::mutable_outargs(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CallStmt.outargs) + return _internal_mutable_outargs()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -ObjectWithArgs::mutable_objfuncargs() { - // @@protoc_insertion_point(field_mutable_list:pg_query.ObjectWithArgs.objfuncargs) - return &_impl_.objfuncargs_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CallStmt::mutable_outargs() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CallStmt.outargs) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_outargs(); } -inline const ::pg_query::Node& ObjectWithArgs::_internal_objfuncargs(int index) const { - return _impl_.objfuncargs_.Get(index); +inline const ::pg_query::Node& CallStmt::outargs(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CallStmt.outargs) + return _internal_outargs().Get(index); } -inline const ::pg_query::Node& ObjectWithArgs::objfuncargs(int index) const { - // @@protoc_insertion_point(field_get:pg_query.ObjectWithArgs.objfuncargs) - return _internal_objfuncargs(index); +inline ::pg_query::Node* CallStmt::add_outargs() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_outargs()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CallStmt.outargs) + return _add; } -inline ::pg_query::Node* ObjectWithArgs::_internal_add_objfuncargs() { - return _impl_.objfuncargs_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CallStmt::outargs() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CallStmt.outargs) + return _internal_outargs(); } -inline ::pg_query::Node* ObjectWithArgs::add_objfuncargs() { - ::pg_query::Node* _add = _internal_add_objfuncargs(); - // @@protoc_insertion_point(field_add:pg_query.ObjectWithArgs.objfuncargs) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CallStmt::_internal_outargs() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.outargs_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -ObjectWithArgs::objfuncargs() const { - // @@protoc_insertion_point(field_list:pg_query.ObjectWithArgs.objfuncargs) - return _impl_.objfuncargs_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CallStmt::_internal_mutable_outargs() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.outargs_; } -// bool args_unspecified = 4 [json_name = "args_unspecified"]; -inline void ObjectWithArgs::clear_args_unspecified() { - _impl_.args_unspecified_ = false; +// ------------------------------------------------------------------- + +// CallContext + +// bool atomic = 1 [json_name = "atomic"]; +inline void CallContext::clear_atomic() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.atomic_ = false; } -inline bool ObjectWithArgs::_internal_args_unspecified() const { - return _impl_.args_unspecified_; +inline bool CallContext::atomic() const { + // @@protoc_insertion_point(field_get:pg_query.CallContext.atomic) + return _internal_atomic(); } -inline bool ObjectWithArgs::args_unspecified() const { - // @@protoc_insertion_point(field_get:pg_query.ObjectWithArgs.args_unspecified) - return _internal_args_unspecified(); +inline void CallContext::set_atomic(bool value) { + _internal_set_atomic(value); + // @@protoc_insertion_point(field_set:pg_query.CallContext.atomic) } -inline void ObjectWithArgs::_internal_set_args_unspecified(bool value) { - - _impl_.args_unspecified_ = value; +inline bool CallContext::_internal_atomic() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.atomic_; } -inline void ObjectWithArgs::set_args_unspecified(bool value) { - _internal_set_args_unspecified(value); - // @@protoc_insertion_point(field_set:pg_query.ObjectWithArgs.args_unspecified) +inline void CallContext::_internal_set_atomic(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.atomic_ = value; } // ------------------------------------------------------------------- -// AccessPriv +// RenameStmt -// string priv_name = 1 [json_name = "priv_name"]; -inline void AccessPriv::clear_priv_name() { - _impl_.priv_name_.ClearToEmpty(); -} -inline const std::string& AccessPriv::priv_name() const { - // @@protoc_insertion_point(field_get:pg_query.AccessPriv.priv_name) - return _internal_priv_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void AccessPriv::set_priv_name(ArgT0&& arg0, ArgT... args) { - - _impl_.priv_name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.AccessPriv.priv_name) -} -inline std::string* AccessPriv::mutable_priv_name() { - std::string* _s = _internal_mutable_priv_name(); - // @@protoc_insertion_point(field_mutable:pg_query.AccessPriv.priv_name) - return _s; -} -inline const std::string& AccessPriv::_internal_priv_name() const { - return _impl_.priv_name_.Get(); +// .pg_query.ObjectType rename_type = 1 [json_name = "renameType"]; +inline void RenameStmt::clear_rename_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rename_type_ = 0; } -inline void AccessPriv::_internal_set_priv_name(const std::string& value) { - - _impl_.priv_name_.Set(value, GetArenaForAllocation()); +inline ::pg_query::ObjectType RenameStmt::rename_type() const { + // @@protoc_insertion_point(field_get:pg_query.RenameStmt.rename_type) + return _internal_rename_type(); } -inline std::string* AccessPriv::_internal_mutable_priv_name() { - - return _impl_.priv_name_.Mutable(GetArenaForAllocation()); +inline void RenameStmt::set_rename_type(::pg_query::ObjectType value) { + _internal_set_rename_type(value); + // @@protoc_insertion_point(field_set:pg_query.RenameStmt.rename_type) } -inline std::string* AccessPriv::release_priv_name() { - // @@protoc_insertion_point(field_release:pg_query.AccessPriv.priv_name) - return _impl_.priv_name_.Release(); +inline ::pg_query::ObjectType RenameStmt::_internal_rename_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.rename_type_); } -inline void AccessPriv::set_allocated_priv_name(std::string* priv_name) { - if (priv_name != nullptr) { - - } else { - - } - _impl_.priv_name_.SetAllocated(priv_name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.priv_name_.IsDefault()) { - _impl_.priv_name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.AccessPriv.priv_name) +inline void RenameStmt::_internal_set_rename_type(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rename_type_ = value; } -// repeated .pg_query.Node cols = 2 [json_name = "cols"]; -inline int AccessPriv::_internal_cols_size() const { - return _impl_.cols_.size(); +// .pg_query.ObjectType relation_type = 2 [json_name = "relationType"]; +inline void RenameStmt::clear_relation_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relation_type_ = 0; } -inline int AccessPriv::cols_size() const { - return _internal_cols_size(); +inline ::pg_query::ObjectType RenameStmt::relation_type() const { + // @@protoc_insertion_point(field_get:pg_query.RenameStmt.relation_type) + return _internal_relation_type(); } -inline void AccessPriv::clear_cols() { - _impl_.cols_.Clear(); +inline void RenameStmt::set_relation_type(::pg_query::ObjectType value) { + _internal_set_relation_type(value); + // @@protoc_insertion_point(field_set:pg_query.RenameStmt.relation_type) } -inline ::pg_query::Node* AccessPriv::mutable_cols(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.AccessPriv.cols) - return _impl_.cols_.Mutable(index); +inline ::pg_query::ObjectType RenameStmt::_internal_relation_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.relation_type_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -AccessPriv::mutable_cols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.AccessPriv.cols) - return &_impl_.cols_; +inline void RenameStmt::_internal_set_relation_type(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.relation_type_ = value; } -inline const ::pg_query::Node& AccessPriv::_internal_cols(int index) const { - return _impl_.cols_.Get(index); + +// .pg_query.RangeVar relation = 3 [json_name = "relation"]; +inline bool RenameStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline const ::pg_query::Node& AccessPriv::cols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.AccessPriv.cols) - return _internal_cols(index); +inline void RenameStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::pg_query::Node* AccessPriv::_internal_add_cols() { - return _impl_.cols_.Add(); +inline const ::pg_query::RangeVar& RenameStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline ::pg_query::Node* AccessPriv::add_cols() { - ::pg_query::Node* _add = _internal_add_cols(); - // @@protoc_insertion_point(field_add:pg_query.AccessPriv.cols) - return _add; +inline const ::pg_query::RangeVar& RenameStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RenameStmt.relation) + return _internal_relation(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -AccessPriv::cols() const { - // @@protoc_insertion_point(field_list:pg_query.AccessPriv.cols) - return _impl_.cols_; +inline void RenameStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RenameStmt.relation) } +inline ::pg_query::RangeVar* RenameStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- - -// CreateOpClassItem - -// int32 itemtype = 1 [json_name = "itemtype"]; -inline void CreateOpClassItem::clear_itemtype() { - _impl_.itemtype_ = 0; -} -inline int32_t CreateOpClassItem::_internal_itemtype() const { - return _impl_.itemtype_; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int32_t CreateOpClassItem::itemtype() const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.itemtype) - return _internal_itemtype(); +inline ::pg_query::RangeVar* RenameStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RenameStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline void CreateOpClassItem::_internal_set_itemtype(int32_t value) { - - _impl_.itemtype_ = value; +inline ::pg_query::RangeVar* RenameStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; } -inline void CreateOpClassItem::set_itemtype(int32_t value) { - _internal_set_itemtype(value); - // @@protoc_insertion_point(field_set:pg_query.CreateOpClassItem.itemtype) +inline ::pg_query::RangeVar* RenameStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.RenameStmt.relation) + return _msg; } +inline void RenameStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); + } -// .pg_query.ObjectWithArgs name = 2 [json_name = "name"]; -inline bool CreateOpClassItem::_internal_has_name() const { - return this != internal_default_instance() && _impl_.name_ != nullptr; + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RenameStmt.relation) } -inline bool CreateOpClassItem::has_name() const { - return _internal_has_name(); + +// .pg_query.Node object = 4 [json_name = "object"]; +inline bool RenameStmt::has_object() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.object_ != nullptr); + return value; } -inline void CreateOpClassItem::clear_name() { - if (GetArenaForAllocation() == nullptr && _impl_.name_ != nullptr) { - delete _impl_.name_; - } - _impl_.name_ = nullptr; +inline void RenameStmt::clear_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.object_ != nullptr) _impl_.object_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::ObjectWithArgs& CreateOpClassItem::_internal_name() const { - const ::pg_query::ObjectWithArgs* p = _impl_.name_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_ObjectWithArgs_default_instance_); +inline const ::pg_query::Node& RenameStmt::_internal_object() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.object_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::ObjectWithArgs& CreateOpClassItem::name() const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.name) - return _internal_name(); +inline const ::pg_query::Node& RenameStmt::object() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RenameStmt.object) + return _internal_object(); } -inline void CreateOpClassItem::unsafe_arena_set_allocated_name( - ::pg_query::ObjectWithArgs* name) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.name_); +inline void RenameStmt::unsafe_arena_set_allocated_object(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.object_); } - _impl_.name_ = name; - if (name) { - + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateOpClassItem.name) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RenameStmt.object) } -inline ::pg_query::ObjectWithArgs* CreateOpClassItem::release_name() { - - ::pg_query::ObjectWithArgs* temp = _impl_.name_; - _impl_.name_ = nullptr; +inline ::pg_query::Node* RenameStmt::release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.object_; + _impl_.object_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::ObjectWithArgs* CreateOpClassItem::unsafe_arena_release_name() { - // @@protoc_insertion_point(field_release:pg_query.CreateOpClassItem.name) - - ::pg_query::ObjectWithArgs* temp = _impl_.name_; - _impl_.name_ = nullptr; +inline ::pg_query::Node* RenameStmt::unsafe_arena_release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RenameStmt.object) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.object_; + _impl_.object_ = nullptr; return temp; } -inline ::pg_query::ObjectWithArgs* CreateOpClassItem::_internal_mutable_name() { - - if (_impl_.name_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArenaForAllocation()); - _impl_.name_ = p; +inline ::pg_query::Node* RenameStmt::_internal_mutable_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.object_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.name_; + return _impl_.object_; } -inline ::pg_query::ObjectWithArgs* CreateOpClassItem::mutable_name() { - ::pg_query::ObjectWithArgs* _msg = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassItem.name) +inline ::pg_query::Node* RenameStmt::mutable_object() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_object(); + // @@protoc_insertion_point(field_mutable:pg_query.RenameStmt.object) return _msg; } -inline void CreateOpClassItem::set_allocated_name(::pg_query::ObjectWithArgs* name) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RenameStmt::set_allocated_object(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.name_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.object_); } - if (name) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(name); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - name = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, name, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.name_ = name; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpClassItem.name) -} -// int32 number = 3 [json_name = "number"]; -inline void CreateOpClassItem::clear_number() { - _impl_.number_ = 0; -} -inline int32_t CreateOpClassItem::_internal_number() const { - return _impl_.number_; -} -inline int32_t CreateOpClassItem::number() const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.number) - return _internal_number(); -} -inline void CreateOpClassItem::_internal_set_number(int32_t value) { - - _impl_.number_ = value; -} -inline void CreateOpClassItem::set_number(int32_t value) { - _internal_set_number(value); - // @@protoc_insertion_point(field_set:pg_query.CreateOpClassItem.number) + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RenameStmt.object) } -// repeated .pg_query.Node order_family = 4 [json_name = "order_family"]; -inline int CreateOpClassItem::_internal_order_family_size() const { - return _impl_.order_family_.size(); -} -inline int CreateOpClassItem::order_family_size() const { - return _internal_order_family_size(); +// string subname = 5 [json_name = "subname"]; +inline void RenameStmt::clear_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subname_.ClearToEmpty(); } -inline void CreateOpClassItem::clear_order_family() { - _impl_.order_family_.Clear(); +inline const std::string& RenameStmt::subname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RenameStmt.subname) + return _internal_subname(); } -inline ::pg_query::Node* CreateOpClassItem::mutable_order_family(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassItem.order_family) - return _impl_.order_family_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void RenameStmt::set_subname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RenameStmt.subname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateOpClassItem::mutable_order_family() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassItem.order_family) - return &_impl_.order_family_; +inline std::string* RenameStmt::mutable_subname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_subname(); + // @@protoc_insertion_point(field_mutable:pg_query.RenameStmt.subname) + return _s; } -inline const ::pg_query::Node& CreateOpClassItem::_internal_order_family(int index) const { - return _impl_.order_family_.Get(index); +inline const std::string& RenameStmt::_internal_subname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.subname_.Get(); } -inline const ::pg_query::Node& CreateOpClassItem::order_family(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.order_family) - return _internal_order_family(index); +inline void RenameStmt::_internal_set_subname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subname_.Set(value, GetArena()); } -inline ::pg_query::Node* CreateOpClassItem::_internal_add_order_family() { - return _impl_.order_family_.Add(); +inline std::string* RenameStmt::_internal_mutable_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.subname_.Mutable( GetArena()); } -inline ::pg_query::Node* CreateOpClassItem::add_order_family() { - ::pg_query::Node* _add = _internal_add_order_family(); - // @@protoc_insertion_point(field_add:pg_query.CreateOpClassItem.order_family) - return _add; +inline std::string* RenameStmt::release_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RenameStmt.subname) + return _impl_.subname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateOpClassItem::order_family() const { - // @@protoc_insertion_point(field_list:pg_query.CreateOpClassItem.order_family) - return _impl_.order_family_; +inline void RenameStmt::set_allocated_subname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.subname_.IsDefault()) { + _impl_.subname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RenameStmt.subname) } -// repeated .pg_query.Node class_args = 5 [json_name = "class_args"]; -inline int CreateOpClassItem::_internal_class_args_size() const { - return _impl_.class_args_.size(); -} -inline int CreateOpClassItem::class_args_size() const { - return _internal_class_args_size(); +// string newname = 6 [json_name = "newname"]; +inline void RenameStmt::clear_newname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.newname_.ClearToEmpty(); } -inline void CreateOpClassItem::clear_class_args() { - _impl_.class_args_.Clear(); +inline const std::string& RenameStmt::newname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RenameStmt.newname) + return _internal_newname(); } -inline ::pg_query::Node* CreateOpClassItem::mutable_class_args(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassItem.class_args) - return _impl_.class_args_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void RenameStmt::set_newname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.newname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RenameStmt.newname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CreateOpClassItem::mutable_class_args() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CreateOpClassItem.class_args) - return &_impl_.class_args_; +inline std::string* RenameStmt::mutable_newname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_newname(); + // @@protoc_insertion_point(field_mutable:pg_query.RenameStmt.newname) + return _s; } -inline const ::pg_query::Node& CreateOpClassItem::_internal_class_args(int index) const { - return _impl_.class_args_.Get(index); +inline const std::string& RenameStmt::_internal_newname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.newname_.Get(); } -inline const ::pg_query::Node& CreateOpClassItem::class_args(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.class_args) - return _internal_class_args(index); +inline void RenameStmt::_internal_set_newname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.newname_.Set(value, GetArena()); } -inline ::pg_query::Node* CreateOpClassItem::_internal_add_class_args() { - return _impl_.class_args_.Add(); +inline std::string* RenameStmt::_internal_mutable_newname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.newname_.Mutable( GetArena()); } -inline ::pg_query::Node* CreateOpClassItem::add_class_args() { - ::pg_query::Node* _add = _internal_add_class_args(); - // @@protoc_insertion_point(field_add:pg_query.CreateOpClassItem.class_args) - return _add; +inline std::string* RenameStmt::release_newname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RenameStmt.newname) + return _impl_.newname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CreateOpClassItem::class_args() const { - // @@protoc_insertion_point(field_list:pg_query.CreateOpClassItem.class_args) - return _impl_.class_args_; +inline void RenameStmt::set_allocated_newname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.newname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.newname_.IsDefault()) { + _impl_.newname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RenameStmt.newname) } -// .pg_query.TypeName storedtype = 6 [json_name = "storedtype"]; -inline bool CreateOpClassItem::_internal_has_storedtype() const { - return this != internal_default_instance() && _impl_.storedtype_ != nullptr; -} -inline bool CreateOpClassItem::has_storedtype() const { - return _internal_has_storedtype(); +// .pg_query.DropBehavior behavior = 7 [json_name = "behavior"]; +inline void RenameStmt::clear_behavior() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.behavior_ = 0; } -inline void CreateOpClassItem::clear_storedtype() { - if (GetArenaForAllocation() == nullptr && _impl_.storedtype_ != nullptr) { - delete _impl_.storedtype_; - } - _impl_.storedtype_ = nullptr; +inline ::pg_query::DropBehavior RenameStmt::behavior() const { + // @@protoc_insertion_point(field_get:pg_query.RenameStmt.behavior) + return _internal_behavior(); } -inline const ::pg_query::TypeName& CreateOpClassItem::_internal_storedtype() const { - const ::pg_query::TypeName* p = _impl_.storedtype_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline void RenameStmt::set_behavior(::pg_query::DropBehavior value) { + _internal_set_behavior(value); + // @@protoc_insertion_point(field_set:pg_query.RenameStmt.behavior) } -inline const ::pg_query::TypeName& CreateOpClassItem::storedtype() const { - // @@protoc_insertion_point(field_get:pg_query.CreateOpClassItem.storedtype) - return _internal_storedtype(); +inline ::pg_query::DropBehavior RenameStmt::_internal_behavior() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DropBehavior>(_impl_.behavior_); } -inline void CreateOpClassItem::unsafe_arena_set_allocated_storedtype( - ::pg_query::TypeName* storedtype) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.storedtype_); - } - _impl_.storedtype_ = storedtype; - if (storedtype) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateOpClassItem.storedtype) +inline void RenameStmt::_internal_set_behavior(::pg_query::DropBehavior value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.behavior_ = value; } -inline ::pg_query::TypeName* CreateOpClassItem::release_storedtype() { - - ::pg_query::TypeName* temp = _impl_.storedtype_; - _impl_.storedtype_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// bool missing_ok = 8 [json_name = "missing_ok"]; +inline void RenameStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline ::pg_query::TypeName* CreateOpClassItem::unsafe_arena_release_storedtype() { - // @@protoc_insertion_point(field_release:pg_query.CreateOpClassItem.storedtype) - - ::pg_query::TypeName* temp = _impl_.storedtype_; - _impl_.storedtype_ = nullptr; - return temp; +inline bool RenameStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.RenameStmt.missing_ok) + return _internal_missing_ok(); } -inline ::pg_query::TypeName* CreateOpClassItem::_internal_mutable_storedtype() { - - if (_impl_.storedtype_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.storedtype_ = p; - } - return _impl_.storedtype_; +inline void RenameStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.RenameStmt.missing_ok) } -inline ::pg_query::TypeName* CreateOpClassItem::mutable_storedtype() { - ::pg_query::TypeName* _msg = _internal_mutable_storedtype(); - // @@protoc_insertion_point(field_mutable:pg_query.CreateOpClassItem.storedtype) - return _msg; +inline bool RenameStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline void CreateOpClassItem::set_allocated_storedtype(::pg_query::TypeName* storedtype) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.storedtype_; - } - if (storedtype) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(storedtype); - if (message_arena != submessage_arena) { - storedtype = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, storedtype, submessage_arena); - } - - } else { - - } - _impl_.storedtype_ = storedtype; - // @@protoc_insertion_point(field_set_allocated:pg_query.CreateOpClassItem.storedtype) +inline void RenameStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } // ------------------------------------------------------------------- -// TableLikeClause +// AlterObjectDependsStmt -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool TableLikeClause::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; +// .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; +inline void AlterObjectDependsStmt::clear_object_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.object_type_ = 0; } -inline bool TableLikeClause::has_relation() const { - return _internal_has_relation(); +inline ::pg_query::ObjectType AlterObjectDependsStmt::object_type() const { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.object_type) + return _internal_object_type(); } -inline void TableLikeClause::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void AlterObjectDependsStmt::set_object_type(::pg_query::ObjectType value) { + _internal_set_object_type(value); + // @@protoc_insertion_point(field_set:pg_query.AlterObjectDependsStmt.object_type) } -inline const ::pg_query::RangeVar& TableLikeClause::_internal_relation() const { +inline ::pg_query::ObjectType AlterObjectDependsStmt::_internal_object_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.object_type_); +} +inline void AlterObjectDependsStmt::_internal_set_object_type(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.object_type_ = value; +} + +// .pg_query.RangeVar relation = 2 [json_name = "relation"]; +inline bool AlterObjectDependsStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; +} +inline void AlterObjectDependsStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RangeVar& AlterObjectDependsStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::RangeVar& TableLikeClause::relation() const { - // @@protoc_insertion_point(field_get:pg_query.TableLikeClause.relation) +inline const ::pg_query::RangeVar& AlterObjectDependsStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.relation) return _internal_relation(); } -inline void TableLikeClause::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void AlterObjectDependsStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.TableLikeClause.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectDependsStmt.relation) } -inline ::pg_query::RangeVar* TableLikeClause::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; +inline ::pg_query::RangeVar* AlterObjectDependsStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* TableLikeClause::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.TableLikeClause.relation) - +inline ::pg_query::RangeVar* AlterObjectDependsStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterObjectDependsStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::RangeVar* temp = _impl_.relation_; _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::RangeVar* TableLikeClause::_internal_mutable_relation() { - +inline ::pg_query::RangeVar* AlterObjectDependsStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } return _impl_.relation_; } -inline ::pg_query::RangeVar* TableLikeClause::mutable_relation() { +inline ::pg_query::RangeVar* AlterObjectDependsStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.TableLikeClause.relation) + // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectDependsStmt.relation) return _msg; } -inline void TableLikeClause::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterObjectDependsStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.TableLikeClause.relation) -} -// uint32 options = 2 [json_name = "options"]; -inline void TableLikeClause::clear_options() { - _impl_.options_ = 0u; -} -inline uint32_t TableLikeClause::_internal_options() const { - return _impl_.options_; -} -inline uint32_t TableLikeClause::options() const { - // @@protoc_insertion_point(field_get:pg_query.TableLikeClause.options) - return _internal_options(); -} -inline void TableLikeClause::_internal_set_options(uint32_t value) { - - _impl_.options_ = value; -} -inline void TableLikeClause::set_options(uint32_t value) { - _internal_set_options(value); - // @@protoc_insertion_point(field_set:pg_query.TableLikeClause.options) + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectDependsStmt.relation) } -// uint32 relation_oid = 3 [json_name = "relationOid"]; -inline void TableLikeClause::clear_relation_oid() { - _impl_.relation_oid_ = 0u; +// .pg_query.Node object = 3 [json_name = "object"]; +inline bool AlterObjectDependsStmt::has_object() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.object_ != nullptr); + return value; } -inline uint32_t TableLikeClause::_internal_relation_oid() const { - return _impl_.relation_oid_; +inline void AlterObjectDependsStmt::clear_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.object_ != nullptr) _impl_.object_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline uint32_t TableLikeClause::relation_oid() const { - // @@protoc_insertion_point(field_get:pg_query.TableLikeClause.relation_oid) - return _internal_relation_oid(); +inline const ::pg_query::Node& AlterObjectDependsStmt::_internal_object() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.object_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void TableLikeClause::_internal_set_relation_oid(uint32_t value) { - - _impl_.relation_oid_ = value; +inline const ::pg_query::Node& AlterObjectDependsStmt::object() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.object) + return _internal_object(); } -inline void TableLikeClause::set_relation_oid(uint32_t value) { - _internal_set_relation_oid(value); - // @@protoc_insertion_point(field_set:pg_query.TableLikeClause.relation_oid) +inline void AlterObjectDependsStmt::unsafe_arena_set_allocated_object(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.object_); + } + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectDependsStmt.object) } +inline ::pg_query::Node* AlterObjectDependsStmt::release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- - -// FunctionParameter - -// string name = 1 [json_name = "name"]; -inline void FunctionParameter::clear_name() { - _impl_.name_.ClearToEmpty(); -} -inline const std::string& FunctionParameter::name() const { - // @@protoc_insertion_point(field_get:pg_query.FunctionParameter.name) - return _internal_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void FunctionParameter::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.FunctionParameter.name) -} -inline std::string* FunctionParameter::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.FunctionParameter.name) - return _s; -} -inline const std::string& FunctionParameter::_internal_name() const { - return _impl_.name_.Get(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.object_; + _impl_.object_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline void FunctionParameter::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline ::pg_query::Node* AlterObjectDependsStmt::unsafe_arena_release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterObjectDependsStmt.object) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.object_; + _impl_.object_ = nullptr; + return temp; } -inline std::string* FunctionParameter::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* AlterObjectDependsStmt::_internal_mutable_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.object_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.object_; } -inline std::string* FunctionParameter::release_name() { - // @@protoc_insertion_point(field_release:pg_query.FunctionParameter.name) - return _impl_.name_.Release(); +inline ::pg_query::Node* AlterObjectDependsStmt::mutable_object() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_object(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectDependsStmt.object) + return _msg; } -inline void FunctionParameter::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - +inline void AlterObjectDependsStmt::set_allocated_object(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.object_); } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.FunctionParameter.name) -} -// .pg_query.TypeName arg_type = 2 [json_name = "argType"]; -inline bool FunctionParameter::_internal_has_arg_type() const { - return this != internal_default_instance() && _impl_.arg_type_ != nullptr; + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectDependsStmt.object) } -inline bool FunctionParameter::has_arg_type() const { - return _internal_has_arg_type(); + +// .pg_query.String extname = 4 [json_name = "extname"]; +inline bool AlterObjectDependsStmt::has_extname() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.extname_ != nullptr); + return value; } -inline void FunctionParameter::clear_arg_type() { - if (GetArenaForAllocation() == nullptr && _impl_.arg_type_ != nullptr) { - delete _impl_.arg_type_; - } - _impl_.arg_type_ = nullptr; +inline void AlterObjectDependsStmt::clear_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.extname_ != nullptr) _impl_.extname_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline const ::pg_query::TypeName& FunctionParameter::_internal_arg_type() const { - const ::pg_query::TypeName* p = _impl_.arg_type_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline const ::pg_query::String& AlterObjectDependsStmt::_internal_extname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::String* p = _impl_.extname_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_String_default_instance_); } -inline const ::pg_query::TypeName& FunctionParameter::arg_type() const { - // @@protoc_insertion_point(field_get:pg_query.FunctionParameter.arg_type) - return _internal_arg_type(); +inline const ::pg_query::String& AlterObjectDependsStmt::extname() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.extname) + return _internal_extname(); } -inline void FunctionParameter::unsafe_arena_set_allocated_arg_type( - ::pg_query::TypeName* arg_type) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.arg_type_); +inline void AlterObjectDependsStmt::unsafe_arena_set_allocated_extname(::pg_query::String* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.extname_); } - _impl_.arg_type_ = arg_type; - if (arg_type) { - + _impl_.extname_ = reinterpret_cast<::pg_query::String*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FunctionParameter.arg_type) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectDependsStmt.extname) } -inline ::pg_query::TypeName* FunctionParameter::release_arg_type() { - - ::pg_query::TypeName* temp = _impl_.arg_type_; - _impl_.arg_type_ = nullptr; +inline ::pg_query::String* AlterObjectDependsStmt::release_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::String* released = _impl_.extname_; + _impl_.extname_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* FunctionParameter::unsafe_arena_release_arg_type() { - // @@protoc_insertion_point(field_release:pg_query.FunctionParameter.arg_type) - - ::pg_query::TypeName* temp = _impl_.arg_type_; - _impl_.arg_type_ = nullptr; +inline ::pg_query::String* AlterObjectDependsStmt::unsafe_arena_release_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterObjectDependsStmt.extname) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::String* temp = _impl_.extname_; + _impl_.extname_ = nullptr; return temp; } -inline ::pg_query::TypeName* FunctionParameter::_internal_mutable_arg_type() { - - if (_impl_.arg_type_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.arg_type_ = p; +inline ::pg_query::String* AlterObjectDependsStmt::_internal_mutable_extname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.extname_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::String>(GetArena()); + _impl_.extname_ = reinterpret_cast<::pg_query::String*>(p); } - return _impl_.arg_type_; + return _impl_.extname_; } -inline ::pg_query::TypeName* FunctionParameter::mutable_arg_type() { - ::pg_query::TypeName* _msg = _internal_mutable_arg_type(); - // @@protoc_insertion_point(field_mutable:pg_query.FunctionParameter.arg_type) +inline ::pg_query::String* AlterObjectDependsStmt::mutable_extname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::String* _msg = _internal_mutable_extname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectDependsStmt.extname) return _msg; } -inline void FunctionParameter::set_allocated_arg_type(::pg_query::TypeName* arg_type) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterObjectDependsStmt::set_allocated_extname(::pg_query::String* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.arg_type_; + delete reinterpret_cast<::pg_query::String*>(_impl_.extname_); } - if (arg_type) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(arg_type); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::String*>(value)->GetArena(); if (message_arena != submessage_arena) { - arg_type = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, arg_type, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000004u; } else { - + _impl_._has_bits_[0] &= ~0x00000004u; } - _impl_.arg_type_ = arg_type; - // @@protoc_insertion_point(field_set_allocated:pg_query.FunctionParameter.arg_type) + + _impl_.extname_ = reinterpret_cast<::pg_query::String*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectDependsStmt.extname) } -// .pg_query.FunctionParameterMode mode = 3 [json_name = "mode"]; -inline void FunctionParameter::clear_mode() { - _impl_.mode_ = 0; +// bool remove = 5 [json_name = "remove"]; +inline void AlterObjectDependsStmt::clear_remove() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.remove_ = false; } -inline ::pg_query::FunctionParameterMode FunctionParameter::_internal_mode() const { - return static_cast< ::pg_query::FunctionParameterMode >(_impl_.mode_); +inline bool AlterObjectDependsStmt::remove() const { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectDependsStmt.remove) + return _internal_remove(); } -inline ::pg_query::FunctionParameterMode FunctionParameter::mode() const { - // @@protoc_insertion_point(field_get:pg_query.FunctionParameter.mode) - return _internal_mode(); +inline void AlterObjectDependsStmt::set_remove(bool value) { + _internal_set_remove(value); + // @@protoc_insertion_point(field_set:pg_query.AlterObjectDependsStmt.remove) } -inline void FunctionParameter::_internal_set_mode(::pg_query::FunctionParameterMode value) { - - _impl_.mode_ = value; +inline bool AlterObjectDependsStmt::_internal_remove() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.remove_; } -inline void FunctionParameter::set_mode(::pg_query::FunctionParameterMode value) { - _internal_set_mode(value); - // @@protoc_insertion_point(field_set:pg_query.FunctionParameter.mode) +inline void AlterObjectDependsStmt::_internal_set_remove(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.remove_ = value; } -// .pg_query.Node defexpr = 4 [json_name = "defexpr"]; -inline bool FunctionParameter::_internal_has_defexpr() const { - return this != internal_default_instance() && _impl_.defexpr_ != nullptr; +// ------------------------------------------------------------------- + +// AlterObjectSchemaStmt + +// .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; +inline void AlterObjectSchemaStmt::clear_object_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.object_type_ = 0; } -inline bool FunctionParameter::has_defexpr() const { - return _internal_has_defexpr(); +inline ::pg_query::ObjectType AlterObjectSchemaStmt::object_type() const { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.object_type) + return _internal_object_type(); } -inline void FunctionParameter::clear_defexpr() { - if (GetArenaForAllocation() == nullptr && _impl_.defexpr_ != nullptr) { - delete _impl_.defexpr_; - } - _impl_.defexpr_ = nullptr; +inline void AlterObjectSchemaStmt::set_object_type(::pg_query::ObjectType value) { + _internal_set_object_type(value); + // @@protoc_insertion_point(field_set:pg_query.AlterObjectSchemaStmt.object_type) +} +inline ::pg_query::ObjectType AlterObjectSchemaStmt::_internal_object_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.object_type_); +} +inline void AlterObjectSchemaStmt::_internal_set_object_type(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.object_type_ = value; +} + +// .pg_query.RangeVar relation = 2 [json_name = "relation"]; +inline bool AlterObjectSchemaStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline const ::pg_query::Node& FunctionParameter::_internal_defexpr() const { - const ::pg_query::Node* p = _impl_.defexpr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void AlterObjectSchemaStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& FunctionParameter::defexpr() const { - // @@protoc_insertion_point(field_get:pg_query.FunctionParameter.defexpr) - return _internal_defexpr(); +inline const ::pg_query::RangeVar& AlterObjectSchemaStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline void FunctionParameter::unsafe_arena_set_allocated_defexpr( - ::pg_query::Node* defexpr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.defexpr_); +inline const ::pg_query::RangeVar& AlterObjectSchemaStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.relation) + return _internal_relation(); +} +inline void AlterObjectSchemaStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.defexpr_ = defexpr; - if (defexpr) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.FunctionParameter.defexpr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectSchemaStmt.relation) } -inline ::pg_query::Node* FunctionParameter::release_defexpr() { - - ::pg_query::Node* temp = _impl_.defexpr_; - _impl_.defexpr_ = nullptr; +inline ::pg_query::RangeVar* AlterObjectSchemaStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* FunctionParameter::unsafe_arena_release_defexpr() { - // @@protoc_insertion_point(field_release:pg_query.FunctionParameter.defexpr) - - ::pg_query::Node* temp = _impl_.defexpr_; - _impl_.defexpr_ = nullptr; +inline ::pg_query::RangeVar* AlterObjectSchemaStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterObjectSchemaStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::Node* FunctionParameter::_internal_mutable_defexpr() { - - if (_impl_.defexpr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.defexpr_ = p; +inline ::pg_query::RangeVar* AlterObjectSchemaStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.defexpr_; + return _impl_.relation_; } -inline ::pg_query::Node* FunctionParameter::mutable_defexpr() { - ::pg_query::Node* _msg = _internal_mutable_defexpr(); - // @@protoc_insertion_point(field_mutable:pg_query.FunctionParameter.defexpr) +inline ::pg_query::RangeVar* AlterObjectSchemaStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectSchemaStmt.relation) return _msg; } -inline void FunctionParameter::set_allocated_defexpr(::pg_query::Node* defexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterObjectSchemaStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.defexpr_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (defexpr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(defexpr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - defexpr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, defexpr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.defexpr_ = defexpr; - // @@protoc_insertion_point(field_set_allocated:pg_query.FunctionParameter.defexpr) -} - -// ------------------------------------------------------------------- - -// LockingClause -// repeated .pg_query.Node locked_rels = 1 [json_name = "lockedRels"]; -inline int LockingClause::_internal_locked_rels_size() const { - return _impl_.locked_rels_.size(); -} -inline int LockingClause::locked_rels_size() const { - return _internal_locked_rels_size(); -} -inline void LockingClause::clear_locked_rels() { - _impl_.locked_rels_.Clear(); -} -inline ::pg_query::Node* LockingClause::mutable_locked_rels(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.LockingClause.locked_rels) - return _impl_.locked_rels_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -LockingClause::mutable_locked_rels() { - // @@protoc_insertion_point(field_mutable_list:pg_query.LockingClause.locked_rels) - return &_impl_.locked_rels_; -} -inline const ::pg_query::Node& LockingClause::_internal_locked_rels(int index) const { - return _impl_.locked_rels_.Get(index); -} -inline const ::pg_query::Node& LockingClause::locked_rels(int index) const { - // @@protoc_insertion_point(field_get:pg_query.LockingClause.locked_rels) - return _internal_locked_rels(index); -} -inline ::pg_query::Node* LockingClause::_internal_add_locked_rels() { - return _impl_.locked_rels_.Add(); -} -inline ::pg_query::Node* LockingClause::add_locked_rels() { - ::pg_query::Node* _add = _internal_add_locked_rels(); - // @@protoc_insertion_point(field_add:pg_query.LockingClause.locked_rels) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -LockingClause::locked_rels() const { - // @@protoc_insertion_point(field_list:pg_query.LockingClause.locked_rels) - return _impl_.locked_rels_; + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectSchemaStmt.relation) } -// .pg_query.LockClauseStrength strength = 2 [json_name = "strength"]; -inline void LockingClause::clear_strength() { - _impl_.strength_ = 0; +// .pg_query.Node object = 3 [json_name = "object"]; +inline bool AlterObjectSchemaStmt::has_object() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.object_ != nullptr); + return value; } -inline ::pg_query::LockClauseStrength LockingClause::_internal_strength() const { - return static_cast< ::pg_query::LockClauseStrength >(_impl_.strength_); +inline void AlterObjectSchemaStmt::clear_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.object_ != nullptr) _impl_.object_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::LockClauseStrength LockingClause::strength() const { - // @@protoc_insertion_point(field_get:pg_query.LockingClause.strength) - return _internal_strength(); +inline const ::pg_query::Node& AlterObjectSchemaStmt::_internal_object() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.object_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline void LockingClause::_internal_set_strength(::pg_query::LockClauseStrength value) { - - _impl_.strength_ = value; +inline const ::pg_query::Node& AlterObjectSchemaStmt::object() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.object) + return _internal_object(); } -inline void LockingClause::set_strength(::pg_query::LockClauseStrength value) { - _internal_set_strength(value); - // @@protoc_insertion_point(field_set:pg_query.LockingClause.strength) +inline void AlterObjectSchemaStmt::unsafe_arena_set_allocated_object(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.object_); + } + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterObjectSchemaStmt.object) } +inline ::pg_query::Node* AlterObjectSchemaStmt::release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// .pg_query.LockWaitPolicy wait_policy = 3 [json_name = "waitPolicy"]; -inline void LockingClause::clear_wait_policy() { - _impl_.wait_policy_ = 0; -} -inline ::pg_query::LockWaitPolicy LockingClause::_internal_wait_policy() const { - return static_cast< ::pg_query::LockWaitPolicy >(_impl_.wait_policy_); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.object_; + _impl_.object_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::LockWaitPolicy LockingClause::wait_policy() const { - // @@protoc_insertion_point(field_get:pg_query.LockingClause.wait_policy) - return _internal_wait_policy(); +inline ::pg_query::Node* AlterObjectSchemaStmt::unsafe_arena_release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterObjectSchemaStmt.object) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.object_; + _impl_.object_ = nullptr; + return temp; } -inline void LockingClause::_internal_set_wait_policy(::pg_query::LockWaitPolicy value) { - - _impl_.wait_policy_ = value; +inline ::pg_query::Node* AlterObjectSchemaStmt::_internal_mutable_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.object_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.object_; } -inline void LockingClause::set_wait_policy(::pg_query::LockWaitPolicy value) { - _internal_set_wait_policy(value); - // @@protoc_insertion_point(field_set:pg_query.LockingClause.wait_policy) +inline ::pg_query::Node* AlterObjectSchemaStmt::mutable_object() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_object(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectSchemaStmt.object) + return _msg; } +inline void AlterObjectSchemaStmt::set_allocated_object(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.object_); + } -// ------------------------------------------------------------------- - -// RowMarkClause + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } -// uint32 rti = 1 [json_name = "rti"]; -inline void RowMarkClause::clear_rti() { - _impl_.rti_ = 0u; -} -inline uint32_t RowMarkClause::_internal_rti() const { - return _impl_.rti_; -} -inline uint32_t RowMarkClause::rti() const { - // @@protoc_insertion_point(field_get:pg_query.RowMarkClause.rti) - return _internal_rti(); -} -inline void RowMarkClause::_internal_set_rti(uint32_t value) { - - _impl_.rti_ = value; -} -inline void RowMarkClause::set_rti(uint32_t value) { - _internal_set_rti(value); - // @@protoc_insertion_point(field_set:pg_query.RowMarkClause.rti) + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectSchemaStmt.object) } -// .pg_query.LockClauseStrength strength = 2 [json_name = "strength"]; -inline void RowMarkClause::clear_strength() { - _impl_.strength_ = 0; -} -inline ::pg_query::LockClauseStrength RowMarkClause::_internal_strength() const { - return static_cast< ::pg_query::LockClauseStrength >(_impl_.strength_); +// string newschema = 4 [json_name = "newschema"]; +inline void AlterObjectSchemaStmt::clear_newschema() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.newschema_.ClearToEmpty(); } -inline ::pg_query::LockClauseStrength RowMarkClause::strength() const { - // @@protoc_insertion_point(field_get:pg_query.RowMarkClause.strength) - return _internal_strength(); +inline const std::string& AlterObjectSchemaStmt::newschema() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.newschema) + return _internal_newschema(); } -inline void RowMarkClause::_internal_set_strength(::pg_query::LockClauseStrength value) { - - _impl_.strength_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void AlterObjectSchemaStmt::set_newschema(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.newschema_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterObjectSchemaStmt.newschema) } -inline void RowMarkClause::set_strength(::pg_query::LockClauseStrength value) { - _internal_set_strength(value); - // @@protoc_insertion_point(field_set:pg_query.RowMarkClause.strength) +inline std::string* AlterObjectSchemaStmt::mutable_newschema() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_newschema(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterObjectSchemaStmt.newschema) + return _s; } - -// .pg_query.LockWaitPolicy wait_policy = 3 [json_name = "waitPolicy"]; -inline void RowMarkClause::clear_wait_policy() { - _impl_.wait_policy_ = 0; +inline const std::string& AlterObjectSchemaStmt::_internal_newschema() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.newschema_.Get(); } -inline ::pg_query::LockWaitPolicy RowMarkClause::_internal_wait_policy() const { - return static_cast< ::pg_query::LockWaitPolicy >(_impl_.wait_policy_); +inline void AlterObjectSchemaStmt::_internal_set_newschema(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.newschema_.Set(value, GetArena()); } -inline ::pg_query::LockWaitPolicy RowMarkClause::wait_policy() const { - // @@protoc_insertion_point(field_get:pg_query.RowMarkClause.wait_policy) - return _internal_wait_policy(); +inline std::string* AlterObjectSchemaStmt::_internal_mutable_newschema() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.newschema_.Mutable( GetArena()); } -inline void RowMarkClause::_internal_set_wait_policy(::pg_query::LockWaitPolicy value) { - - _impl_.wait_policy_ = value; +inline std::string* AlterObjectSchemaStmt::release_newschema() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterObjectSchemaStmt.newschema) + return _impl_.newschema_.Release(); } -inline void RowMarkClause::set_wait_policy(::pg_query::LockWaitPolicy value) { - _internal_set_wait_policy(value); - // @@protoc_insertion_point(field_set:pg_query.RowMarkClause.wait_policy) +inline void AlterObjectSchemaStmt::set_allocated_newschema(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.newschema_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.newschema_.IsDefault()) { + _impl_.newschema_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterObjectSchemaStmt.newschema) } -// bool pushed_down = 4 [json_name = "pushedDown"]; -inline void RowMarkClause::clear_pushed_down() { - _impl_.pushed_down_ = false; +// bool missing_ok = 5 [json_name = "missing_ok"]; +inline void AlterObjectSchemaStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline bool RowMarkClause::_internal_pushed_down() const { - return _impl_.pushed_down_; +inline bool AlterObjectSchemaStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.AlterObjectSchemaStmt.missing_ok) + return _internal_missing_ok(); } -inline bool RowMarkClause::pushed_down() const { - // @@protoc_insertion_point(field_get:pg_query.RowMarkClause.pushed_down) - return _internal_pushed_down(); +inline void AlterObjectSchemaStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.AlterObjectSchemaStmt.missing_ok) } -inline void RowMarkClause::_internal_set_pushed_down(bool value) { - - _impl_.pushed_down_ = value; +inline bool AlterObjectSchemaStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline void RowMarkClause::set_pushed_down(bool value) { - _internal_set_pushed_down(value); - // @@protoc_insertion_point(field_set:pg_query.RowMarkClause.pushed_down) +inline void AlterObjectSchemaStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } // ------------------------------------------------------------------- -// XmlSerialize +// AlterOwnerStmt -// .pg_query.XmlOptionType xmloption = 1 [json_name = "xmloption"]; -inline void XmlSerialize::clear_xmloption() { - _impl_.xmloption_ = 0; +// .pg_query.ObjectType object_type = 1 [json_name = "objectType"]; +inline void AlterOwnerStmt::clear_object_type() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.object_type_ = 0; } -inline ::pg_query::XmlOptionType XmlSerialize::_internal_xmloption() const { - return static_cast< ::pg_query::XmlOptionType >(_impl_.xmloption_); +inline ::pg_query::ObjectType AlterOwnerStmt::object_type() const { + // @@protoc_insertion_point(field_get:pg_query.AlterOwnerStmt.object_type) + return _internal_object_type(); } -inline ::pg_query::XmlOptionType XmlSerialize::xmloption() const { - // @@protoc_insertion_point(field_get:pg_query.XmlSerialize.xmloption) - return _internal_xmloption(); +inline void AlterOwnerStmt::set_object_type(::pg_query::ObjectType value) { + _internal_set_object_type(value); + // @@protoc_insertion_point(field_set:pg_query.AlterOwnerStmt.object_type) } -inline void XmlSerialize::_internal_set_xmloption(::pg_query::XmlOptionType value) { - - _impl_.xmloption_ = value; +inline ::pg_query::ObjectType AlterOwnerStmt::_internal_object_type() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.object_type_); } -inline void XmlSerialize::set_xmloption(::pg_query::XmlOptionType value) { - _internal_set_xmloption(value); - // @@protoc_insertion_point(field_set:pg_query.XmlSerialize.xmloption) +inline void AlterOwnerStmt::_internal_set_object_type(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.object_type_ = value; } -// .pg_query.Node expr = 2 [json_name = "expr"]; -inline bool XmlSerialize::_internal_has_expr() const { - return this != internal_default_instance() && _impl_.expr_ != nullptr; -} -inline bool XmlSerialize::has_expr() const { - return _internal_has_expr(); +// .pg_query.RangeVar relation = 2 [json_name = "relation"]; +inline bool AlterOwnerStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline void XmlSerialize::clear_expr() { - if (GetArenaForAllocation() == nullptr && _impl_.expr_ != nullptr) { - delete _impl_.expr_; - } - _impl_.expr_ = nullptr; +inline void AlterOwnerStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& XmlSerialize::_internal_expr() const { - const ::pg_query::Node* p = _impl_.expr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::RangeVar& AlterOwnerStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::Node& XmlSerialize::expr() const { - // @@protoc_insertion_point(field_get:pg_query.XmlSerialize.expr) - return _internal_expr(); +inline const ::pg_query::RangeVar& AlterOwnerStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterOwnerStmt.relation) + return _internal_relation(); } -inline void XmlSerialize::unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.expr_); +inline void AlterOwnerStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.expr_ = expr; - if (expr) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.XmlSerialize.expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterOwnerStmt.relation) } -inline ::pg_query::Node* XmlSerialize::release_expr() { - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; +inline ::pg_query::RangeVar* AlterOwnerStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* XmlSerialize::unsafe_arena_release_expr() { - // @@protoc_insertion_point(field_release:pg_query.XmlSerialize.expr) - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; +inline ::pg_query::RangeVar* AlterOwnerStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterOwnerStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::Node* XmlSerialize::_internal_mutable_expr() { - - if (_impl_.expr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.expr_ = p; +inline ::pg_query::RangeVar* AlterOwnerStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.expr_; + return _impl_.relation_; } -inline ::pg_query::Node* XmlSerialize::mutable_expr() { - ::pg_query::Node* _msg = _internal_mutable_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.XmlSerialize.expr) +inline ::pg_query::RangeVar* AlterOwnerStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterOwnerStmt.relation) return _msg; } -inline void XmlSerialize::set_allocated_expr(::pg_query::Node* expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterOwnerStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.expr_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(expr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - expr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, expr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.expr_ = expr; - // @@protoc_insertion_point(field_set_allocated:pg_query.XmlSerialize.expr) -} -// .pg_query.TypeName type_name = 3 [json_name = "typeName"]; -inline bool XmlSerialize::_internal_has_type_name() const { - return this != internal_default_instance() && _impl_.type_name_ != nullptr; + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOwnerStmt.relation) } -inline bool XmlSerialize::has_type_name() const { - return _internal_has_type_name(); + +// .pg_query.Node object = 3 [json_name = "object"]; +inline bool AlterOwnerStmt::has_object() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.object_ != nullptr); + return value; } -inline void XmlSerialize::clear_type_name() { - if (GetArenaForAllocation() == nullptr && _impl_.type_name_ != nullptr) { - delete _impl_.type_name_; - } - _impl_.type_name_ = nullptr; +inline void AlterOwnerStmt::clear_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.object_ != nullptr) _impl_.object_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::TypeName& XmlSerialize::_internal_type_name() const { - const ::pg_query::TypeName* p = _impl_.type_name_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_TypeName_default_instance_); +inline const ::pg_query::Node& AlterOwnerStmt::_internal_object() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.object_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::TypeName& XmlSerialize::type_name() const { - // @@protoc_insertion_point(field_get:pg_query.XmlSerialize.type_name) - return _internal_type_name(); +inline const ::pg_query::Node& AlterOwnerStmt::object() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterOwnerStmt.object) + return _internal_object(); } -inline void XmlSerialize::unsafe_arena_set_allocated_type_name( - ::pg_query::TypeName* type_name) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.type_name_); +inline void AlterOwnerStmt::unsafe_arena_set_allocated_object(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.object_); } - _impl_.type_name_ = type_name; - if (type_name) { - + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.XmlSerialize.type_name) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterOwnerStmt.object) } -inline ::pg_query::TypeName* XmlSerialize::release_type_name() { - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; +inline ::pg_query::Node* AlterOwnerStmt::release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.object_; + _impl_.object_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::TypeName* XmlSerialize::unsafe_arena_release_type_name() { - // @@protoc_insertion_point(field_release:pg_query.XmlSerialize.type_name) - - ::pg_query::TypeName* temp = _impl_.type_name_; - _impl_.type_name_ = nullptr; +inline ::pg_query::Node* AlterOwnerStmt::unsafe_arena_release_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterOwnerStmt.object) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.object_; + _impl_.object_ = nullptr; return temp; } -inline ::pg_query::TypeName* XmlSerialize::_internal_mutable_type_name() { - - if (_impl_.type_name_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArenaForAllocation()); - _impl_.type_name_ = p; +inline ::pg_query::Node* AlterOwnerStmt::_internal_mutable_object() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.object_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.type_name_; + return _impl_.object_; } -inline ::pg_query::TypeName* XmlSerialize::mutable_type_name() { - ::pg_query::TypeName* _msg = _internal_mutable_type_name(); - // @@protoc_insertion_point(field_mutable:pg_query.XmlSerialize.type_name) +inline ::pg_query::Node* AlterOwnerStmt::mutable_object() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_object(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterOwnerStmt.object) return _msg; } -inline void XmlSerialize::set_allocated_type_name(::pg_query::TypeName* type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterOwnerStmt::set_allocated_object(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.type_name_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.object_); } - if (type_name) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(type_name); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - type_name = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, type_name, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.type_name_ = type_name; - // @@protoc_insertion_point(field_set_allocated:pg_query.XmlSerialize.type_name) -} -// int32 location = 4 [json_name = "location"]; -inline void XmlSerialize::clear_location() { - _impl_.location_ = 0; -} -inline int32_t XmlSerialize::_internal_location() const { - return _impl_.location_; -} -inline int32_t XmlSerialize::location() const { - // @@protoc_insertion_point(field_get:pg_query.XmlSerialize.location) - return _internal_location(); -} -inline void XmlSerialize::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void XmlSerialize::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.XmlSerialize.location) + _impl_.object_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOwnerStmt.object) } -// ------------------------------------------------------------------- - -// WithClause - -// repeated .pg_query.Node ctes = 1 [json_name = "ctes"]; -inline int WithClause::_internal_ctes_size() const { - return _impl_.ctes_.size(); -} -inline int WithClause::ctes_size() const { - return _internal_ctes_size(); -} -inline void WithClause::clear_ctes() { - _impl_.ctes_.Clear(); -} -inline ::pg_query::Node* WithClause::mutable_ctes(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.WithClause.ctes) - return _impl_.ctes_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -WithClause::mutable_ctes() { - // @@protoc_insertion_point(field_mutable_list:pg_query.WithClause.ctes) - return &_impl_.ctes_; -} -inline const ::pg_query::Node& WithClause::_internal_ctes(int index) const { - return _impl_.ctes_.Get(index); +// .pg_query.RoleSpec newowner = 4 [json_name = "newowner"]; +inline bool AlterOwnerStmt::has_newowner() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.newowner_ != nullptr); + return value; } -inline const ::pg_query::Node& WithClause::ctes(int index) const { - // @@protoc_insertion_point(field_get:pg_query.WithClause.ctes) - return _internal_ctes(index); +inline void AlterOwnerStmt::clear_newowner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.newowner_ != nullptr) _impl_.newowner_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline ::pg_query::Node* WithClause::_internal_add_ctes() { - return _impl_.ctes_.Add(); +inline const ::pg_query::RoleSpec& AlterOwnerStmt::_internal_newowner() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.newowner_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); } -inline ::pg_query::Node* WithClause::add_ctes() { - ::pg_query::Node* _add = _internal_add_ctes(); - // @@protoc_insertion_point(field_add:pg_query.WithClause.ctes) - return _add; +inline const ::pg_query::RoleSpec& AlterOwnerStmt::newowner() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterOwnerStmt.newowner) + return _internal_newowner(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -WithClause::ctes() const { - // @@protoc_insertion_point(field_list:pg_query.WithClause.ctes) - return _impl_.ctes_; +inline void AlterOwnerStmt::unsafe_arena_set_allocated_newowner(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.newowner_); + } + _impl_.newowner_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterOwnerStmt.newowner) } +inline ::pg_query::RoleSpec* AlterOwnerStmt::release_newowner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool recursive = 2 [json_name = "recursive"]; -inline void WithClause::clear_recursive() { - _impl_.recursive_ = false; -} -inline bool WithClause::_internal_recursive() const { - return _impl_.recursive_; -} -inline bool WithClause::recursive() const { - // @@protoc_insertion_point(field_get:pg_query.WithClause.recursive) - return _internal_recursive(); -} -inline void WithClause::_internal_set_recursive(bool value) { - - _impl_.recursive_ = value; -} -inline void WithClause::set_recursive(bool value) { - _internal_set_recursive(value); - // @@protoc_insertion_point(field_set:pg_query.WithClause.recursive) + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::RoleSpec* released = _impl_.newowner_; + _impl_.newowner_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } +inline ::pg_query::RoleSpec* AlterOwnerStmt::unsafe_arena_release_newowner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterOwnerStmt.newowner) -// int32 location = 3 [json_name = "location"]; -inline void WithClause::clear_location() { - _impl_.location_ = 0; -} -inline int32_t WithClause::_internal_location() const { - return _impl_.location_; + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::RoleSpec* temp = _impl_.newowner_; + _impl_.newowner_ = nullptr; + return temp; } -inline int32_t WithClause::location() const { - // @@protoc_insertion_point(field_get:pg_query.WithClause.location) - return _internal_location(); +inline ::pg_query::RoleSpec* AlterOwnerStmt::_internal_mutable_newowner() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.newowner_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.newowner_ = reinterpret_cast<::pg_query::RoleSpec*>(p); + } + return _impl_.newowner_; } -inline void WithClause::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::RoleSpec* AlterOwnerStmt::mutable_newowner() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_newowner(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterOwnerStmt.newowner) + return _msg; } -inline void WithClause::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.WithClause.location) +inline void AlterOwnerStmt::set_allocated_newowner(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.newowner_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.newowner_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOwnerStmt.newowner) } // ------------------------------------------------------------------- -// InferClause - -// repeated .pg_query.Node index_elems = 1 [json_name = "indexElems"]; -inline int InferClause::_internal_index_elems_size() const { - return _impl_.index_elems_.size(); -} -inline int InferClause::index_elems_size() const { - return _internal_index_elems_size(); -} -inline void InferClause::clear_index_elems() { - _impl_.index_elems_.Clear(); -} -inline ::pg_query::Node* InferClause::mutable_index_elems(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.InferClause.index_elems) - return _impl_.index_elems_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -InferClause::mutable_index_elems() { - // @@protoc_insertion_point(field_mutable_list:pg_query.InferClause.index_elems) - return &_impl_.index_elems_; -} -inline const ::pg_query::Node& InferClause::_internal_index_elems(int index) const { - return _impl_.index_elems_.Get(index); -} -inline const ::pg_query::Node& InferClause::index_elems(int index) const { - // @@protoc_insertion_point(field_get:pg_query.InferClause.index_elems) - return _internal_index_elems(index); -} -inline ::pg_query::Node* InferClause::_internal_add_index_elems() { - return _impl_.index_elems_.Add(); -} -inline ::pg_query::Node* InferClause::add_index_elems() { - ::pg_query::Node* _add = _internal_add_index_elems(); - // @@protoc_insertion_point(field_add:pg_query.InferClause.index_elems) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -InferClause::index_elems() const { - // @@protoc_insertion_point(field_list:pg_query.InferClause.index_elems) - return _impl_.index_elems_; -} +// AlterOperatorStmt -// .pg_query.Node where_clause = 2 [json_name = "whereClause"]; -inline bool InferClause::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; -} -inline bool InferClause::has_where_clause() const { - return _internal_has_where_clause(); +// .pg_query.ObjectWithArgs opername = 1 [json_name = "opername"]; +inline bool AlterOperatorStmt::has_opername() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.opername_ != nullptr); + return value; } -inline void InferClause::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline void AlterOperatorStmt::clear_opername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.opername_ != nullptr) _impl_.opername_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& InferClause::_internal_where_clause() const { - const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::ObjectWithArgs& AlterOperatorStmt::_internal_opername() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::ObjectWithArgs* p = _impl_.opername_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_ObjectWithArgs_default_instance_); } -inline const ::pg_query::Node& InferClause::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.InferClause.where_clause) - return _internal_where_clause(); +inline const ::pg_query::ObjectWithArgs& AlterOperatorStmt::opername() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterOperatorStmt.opername) + return _internal_opername(); } -inline void InferClause::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); +inline void AlterOperatorStmt::unsafe_arena_set_allocated_opername(::pg_query::ObjectWithArgs* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.opername_); } - _impl_.where_clause_ = where_clause; - if (where_clause) { - + _impl_.opername_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.InferClause.where_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterOperatorStmt.opername) } -inline ::pg_query::Node* InferClause::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::ObjectWithArgs* AlterOperatorStmt::release_opername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::ObjectWithArgs* released = _impl_.opername_; + _impl_.opername_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* InferClause::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.InferClause.where_clause) - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::ObjectWithArgs* AlterOperatorStmt::unsafe_arena_release_opername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterOperatorStmt.opername) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::ObjectWithArgs* temp = _impl_.opername_; + _impl_.opername_ = nullptr; return temp; } -inline ::pg_query::Node* InferClause::_internal_mutable_where_clause() { - - if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; +inline ::pg_query::ObjectWithArgs* AlterOperatorStmt::_internal_mutable_opername() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.opername_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArena()); + _impl_.opername_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(p); } - return _impl_.where_clause_; + return _impl_.opername_; } -inline ::pg_query::Node* InferClause::mutable_where_clause() { - ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.InferClause.where_clause) +inline ::pg_query::ObjectWithArgs* AlterOperatorStmt::mutable_opername() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ObjectWithArgs* _msg = _internal_mutable_opername(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterOperatorStmt.opername) return _msg; } -inline void InferClause::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void AlterOperatorStmt::set_allocated_opername(::pg_query::ObjectWithArgs* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.where_clause_; + delete reinterpret_cast<::pg_query::ObjectWithArgs*>(_impl_.opername_); } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::ObjectWithArgs*>(value)->GetArena(); if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.InferClause.where_clause) + + _impl_.opername_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterOperatorStmt.opername) } -// string conname = 3 [json_name = "conname"]; -inline void InferClause::clear_conname() { - _impl_.conname_.ClearToEmpty(); +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int AlterOperatorStmt::_internal_options_size() const { + return _internal_options().size(); } -inline const std::string& InferClause::conname() const { - // @@protoc_insertion_point(field_get:pg_query.InferClause.conname) - return _internal_conname(); +inline int AlterOperatorStmt::options_size() const { + return _internal_options_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void InferClause::set_conname(ArgT0&& arg0, ArgT... args) { - - _impl_.conname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.InferClause.conname) +inline void AlterOperatorStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline std::string* InferClause::mutable_conname() { - std::string* _s = _internal_mutable_conname(); - // @@protoc_insertion_point(field_mutable:pg_query.InferClause.conname) - return _s; +inline ::pg_query::Node* AlterOperatorStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterOperatorStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline const std::string& InferClause::_internal_conname() const { - return _impl_.conname_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterOperatorStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterOperatorStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline void InferClause::_internal_set_conname(const std::string& value) { - - _impl_.conname_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& AlterOperatorStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterOperatorStmt.options) + return _internal_options().Get(index); } -inline std::string* InferClause::_internal_mutable_conname() { - - return _impl_.conname_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* AlterOperatorStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterOperatorStmt.options) + return _add; } -inline std::string* InferClause::release_conname() { - // @@protoc_insertion_point(field_release:pg_query.InferClause.conname) - return _impl_.conname_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterOperatorStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterOperatorStmt.options) + return _internal_options(); } -inline void InferClause::set_allocated_conname(std::string* conname) { - if (conname != nullptr) { - - } else { - - } - _impl_.conname_.SetAllocated(conname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.conname_.IsDefault()) { - _impl_.conname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.InferClause.conname) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterOperatorStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterOperatorStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// int32 location = 4 [json_name = "location"]; -inline void InferClause::clear_location() { - _impl_.location_ = 0; +// ------------------------------------------------------------------- + +// AlterTypeStmt + +// repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; +inline int AlterTypeStmt::_internal_type_name_size() const { + return _internal_type_name().size(); } -inline int32_t InferClause::_internal_location() const { - return _impl_.location_; +inline int AlterTypeStmt::type_name_size() const { + return _internal_type_name_size(); } -inline int32_t InferClause::location() const { - // @@protoc_insertion_point(field_get:pg_query.InferClause.location) - return _internal_location(); +inline void AlterTypeStmt::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_name_.Clear(); } -inline void InferClause::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* AlterTypeStmt::mutable_type_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTypeStmt.type_name) + return _internal_mutable_type_name()->Mutable(index); } -inline void InferClause::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.InferClause.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTypeStmt::mutable_type_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTypeStmt.type_name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_type_name(); } - -// ------------------------------------------------------------------- - -// OnConflictClause - -// .pg_query.OnConflictAction action = 1 [json_name = "action"]; -inline void OnConflictClause::clear_action() { - _impl_.action_ = 0; +inline const ::pg_query::Node& AlterTypeStmt::type_name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTypeStmt.type_name) + return _internal_type_name().Get(index); } -inline ::pg_query::OnConflictAction OnConflictClause::_internal_action() const { - return static_cast< ::pg_query::OnConflictAction >(_impl_.action_); +inline ::pg_query::Node* AlterTypeStmt::add_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_type_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTypeStmt.type_name) + return _add; } -inline ::pg_query::OnConflictAction OnConflictClause::action() const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.action) - return _internal_action(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTypeStmt::type_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTypeStmt.type_name) + return _internal_type_name(); } -inline void OnConflictClause::_internal_set_action(::pg_query::OnConflictAction value) { - - _impl_.action_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTypeStmt::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_name_; } -inline void OnConflictClause::set_action(::pg_query::OnConflictAction value) { - _internal_set_action(value); - // @@protoc_insertion_point(field_set:pg_query.OnConflictClause.action) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTypeStmt::_internal_mutable_type_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.type_name_; } -// .pg_query.InferClause infer = 2 [json_name = "infer"]; -inline bool OnConflictClause::_internal_has_infer() const { - return this != internal_default_instance() && _impl_.infer_ != nullptr; +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int AlterTypeStmt::_internal_options_size() const { + return _internal_options().size(); } -inline bool OnConflictClause::has_infer() const { - return _internal_has_infer(); +inline int AlterTypeStmt::options_size() const { + return _internal_options_size(); } -inline void OnConflictClause::clear_infer() { - if (GetArenaForAllocation() == nullptr && _impl_.infer_ != nullptr) { - delete _impl_.infer_; - } - _impl_.infer_ = nullptr; +inline void AlterTypeStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline const ::pg_query::InferClause& OnConflictClause::_internal_infer() const { - const ::pg_query::InferClause* p = _impl_.infer_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_InferClause_default_instance_); +inline ::pg_query::Node* AlterTypeStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTypeStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline const ::pg_query::InferClause& OnConflictClause::infer() const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.infer) - return _internal_infer(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTypeStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTypeStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& AlterTypeStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTypeStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* AlterTypeStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTypeStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTypeStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTypeStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTypeStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTypeStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} + +// ------------------------------------------------------------------- + +// RuleStmt + +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool RuleStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline void OnConflictClause::unsafe_arena_set_allocated_infer( - ::pg_query::InferClause* infer) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.infer_); +inline void RuleStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RangeVar& RuleStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); +} +inline const ::pg_query::RangeVar& RuleStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RuleStmt.relation) + return _internal_relation(); +} +inline void RuleStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.infer_ = infer; - if (infer) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OnConflictClause.infer) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RuleStmt.relation) } -inline ::pg_query::InferClause* OnConflictClause::release_infer() { - - ::pg_query::InferClause* temp = _impl_.infer_; - _impl_.infer_ = nullptr; +inline ::pg_query::RangeVar* RuleStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::InferClause* OnConflictClause::unsafe_arena_release_infer() { - // @@protoc_insertion_point(field_release:pg_query.OnConflictClause.infer) - - ::pg_query::InferClause* temp = _impl_.infer_; - _impl_.infer_ = nullptr; +inline ::pg_query::RangeVar* RuleStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RuleStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::InferClause* OnConflictClause::_internal_mutable_infer() { - - if (_impl_.infer_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::InferClause>(GetArenaForAllocation()); - _impl_.infer_ = p; +inline ::pg_query::RangeVar* RuleStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.infer_; + return _impl_.relation_; } -inline ::pg_query::InferClause* OnConflictClause::mutable_infer() { - ::pg_query::InferClause* _msg = _internal_mutable_infer(); - // @@protoc_insertion_point(field_mutable:pg_query.OnConflictClause.infer) +inline ::pg_query::RangeVar* RuleStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.RuleStmt.relation) return _msg; } -inline void OnConflictClause::set_allocated_infer(::pg_query::InferClause* infer) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RuleStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.infer_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (infer) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(infer); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - infer = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, infer, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.infer_ = infer; - // @@protoc_insertion_point(field_set_allocated:pg_query.OnConflictClause.infer) -} -// repeated .pg_query.Node target_list = 3 [json_name = "targetList"]; -inline int OnConflictClause::_internal_target_list_size() const { - return _impl_.target_list_.size(); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RuleStmt.relation) } -inline int OnConflictClause::target_list_size() const { - return _internal_target_list_size(); + +// string rulename = 2 [json_name = "rulename"]; +inline void RuleStmt::clear_rulename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rulename_.ClearToEmpty(); } -inline void OnConflictClause::clear_target_list() { - _impl_.target_list_.Clear(); +inline const std::string& RuleStmt::rulename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RuleStmt.rulename) + return _internal_rulename(); } -inline ::pg_query::Node* OnConflictClause::mutable_target_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.OnConflictClause.target_list) - return _impl_.target_list_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void RuleStmt::set_rulename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rulename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.RuleStmt.rulename) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -OnConflictClause::mutable_target_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.OnConflictClause.target_list) - return &_impl_.target_list_; +inline std::string* RuleStmt::mutable_rulename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_rulename(); + // @@protoc_insertion_point(field_mutable:pg_query.RuleStmt.rulename) + return _s; } -inline const ::pg_query::Node& OnConflictClause::_internal_target_list(int index) const { - return _impl_.target_list_.Get(index); +inline const std::string& RuleStmt::_internal_rulename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rulename_.Get(); } -inline const ::pg_query::Node& OnConflictClause::target_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.target_list) - return _internal_target_list(index); +inline void RuleStmt::_internal_set_rulename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.rulename_.Set(value, GetArena()); } -inline ::pg_query::Node* OnConflictClause::_internal_add_target_list() { - return _impl_.target_list_.Add(); +inline std::string* RuleStmt::_internal_mutable_rulename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.rulename_.Mutable( GetArena()); } -inline ::pg_query::Node* OnConflictClause::add_target_list() { - ::pg_query::Node* _add = _internal_add_target_list(); - // @@protoc_insertion_point(field_add:pg_query.OnConflictClause.target_list) - return _add; +inline std::string* RuleStmt::release_rulename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RuleStmt.rulename) + return _impl_.rulename_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -OnConflictClause::target_list() const { - // @@protoc_insertion_point(field_list:pg_query.OnConflictClause.target_list) - return _impl_.target_list_; +inline void RuleStmt::set_allocated_rulename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rulename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.rulename_.IsDefault()) { + _impl_.rulename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.RuleStmt.rulename) } -// .pg_query.Node where_clause = 4 [json_name = "whereClause"]; -inline bool OnConflictClause::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; -} -inline bool OnConflictClause::has_where_clause() const { - return _internal_has_where_clause(); +// .pg_query.Node where_clause = 3 [json_name = "whereClause"]; +inline bool RuleStmt::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; } -inline void OnConflictClause::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline void RuleStmt::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline const ::pg_query::Node& OnConflictClause::_internal_where_clause() const { +inline const ::pg_query::Node& RuleStmt::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline const ::pg_query::Node& OnConflictClause::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.where_clause) +inline const ::pg_query::Node& RuleStmt::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RuleStmt.where_clause) return _internal_where_clause(); } -inline void OnConflictClause::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); +inline void RuleStmt::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); } - _impl_.where_clause_ = where_clause; - if (where_clause) { - + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.OnConflictClause.where_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RuleStmt.where_clause) } -inline ::pg_query::Node* OnConflictClause::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; +inline ::pg_query::Node* RuleStmt::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.where_clause_; _impl_.where_clause_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* OnConflictClause::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.OnConflictClause.where_clause) - +inline ::pg_query::Node* RuleStmt::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RuleStmt.where_clause) + + _impl_._has_bits_[0] &= ~0x00000002u; ::pg_query::Node* temp = _impl_.where_clause_; _impl_.where_clause_ = nullptr; return temp; } -inline ::pg_query::Node* OnConflictClause::_internal_mutable_where_clause() { - +inline ::pg_query::Node* RuleStmt::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); } return _impl_.where_clause_; } -inline ::pg_query::Node* OnConflictClause::mutable_where_clause() { +inline ::pg_query::Node* RuleStmt::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.OnConflictClause.where_clause) + // @@protoc_insertion_point(field_mutable:pg_query.RuleStmt.where_clause) return _msg; } -inline void OnConflictClause::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RuleStmt::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.where_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.OnConflictClause.where_clause) + + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RuleStmt.where_clause) } -// int32 location = 5 [json_name = "location"]; -inline void OnConflictClause::clear_location() { - _impl_.location_ = 0; +// .pg_query.CmdType event = 4 [json_name = "event"]; +inline void RuleStmt::clear_event() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.event_ = 0; } -inline int32_t OnConflictClause::_internal_location() const { - return _impl_.location_; +inline ::pg_query::CmdType RuleStmt::event() const { + // @@protoc_insertion_point(field_get:pg_query.RuleStmt.event) + return _internal_event(); } -inline int32_t OnConflictClause::location() const { - // @@protoc_insertion_point(field_get:pg_query.OnConflictClause.location) - return _internal_location(); +inline void RuleStmt::set_event(::pg_query::CmdType value) { + _internal_set_event(value); + // @@protoc_insertion_point(field_set:pg_query.RuleStmt.event) } -inline void OnConflictClause::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::CmdType RuleStmt::_internal_event() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CmdType>(_impl_.event_); } -inline void OnConflictClause::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.OnConflictClause.location) +inline void RuleStmt::_internal_set_event(::pg_query::CmdType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.event_ = value; } -// ------------------------------------------------------------------- +// bool instead = 5 [json_name = "instead"]; +inline void RuleStmt::clear_instead() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.instead_ = false; +} +inline bool RuleStmt::instead() const { + // @@protoc_insertion_point(field_get:pg_query.RuleStmt.instead) + return _internal_instead(); +} +inline void RuleStmt::set_instead(bool value) { + _internal_set_instead(value); + // @@protoc_insertion_point(field_set:pg_query.RuleStmt.instead) +} +inline bool RuleStmt::_internal_instead() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.instead_; +} +inline void RuleStmt::_internal_set_instead(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.instead_ = value; +} -// CTESearchClause +// repeated .pg_query.Node actions = 6 [json_name = "actions"]; +inline int RuleStmt::_internal_actions_size() const { + return _internal_actions().size(); +} +inline int RuleStmt::actions_size() const { + return _internal_actions_size(); +} +inline void RuleStmt::clear_actions() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.actions_.Clear(); +} +inline ::pg_query::Node* RuleStmt::mutable_actions(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.RuleStmt.actions) + return _internal_mutable_actions()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* RuleStmt::mutable_actions() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.RuleStmt.actions) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_actions(); +} +inline const ::pg_query::Node& RuleStmt::actions(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RuleStmt.actions) + return _internal_actions().Get(index); +} +inline ::pg_query::Node* RuleStmt::add_actions() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_actions()->Add(); + // @@protoc_insertion_point(field_add:pg_query.RuleStmt.actions) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& RuleStmt::actions() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.RuleStmt.actions) + return _internal_actions(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +RuleStmt::_internal_actions() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.actions_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +RuleStmt::_internal_mutable_actions() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.actions_; +} -// repeated .pg_query.Node search_col_list = 1 [json_name = "search_col_list"]; -inline int CTESearchClause::_internal_search_col_list_size() const { - return _impl_.search_col_list_.size(); +// bool replace = 7 [json_name = "replace"]; +inline void RuleStmt::clear_replace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.replace_ = false; } -inline int CTESearchClause::search_col_list_size() const { - return _internal_search_col_list_size(); +inline bool RuleStmt::replace() const { + // @@protoc_insertion_point(field_get:pg_query.RuleStmt.replace) + return _internal_replace(); } -inline void CTESearchClause::clear_search_col_list() { - _impl_.search_col_list_.Clear(); +inline void RuleStmt::set_replace(bool value) { + _internal_set_replace(value); + // @@protoc_insertion_point(field_set:pg_query.RuleStmt.replace) } -inline ::pg_query::Node* CTESearchClause::mutable_search_col_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CTESearchClause.search_col_list) - return _impl_.search_col_list_.Mutable(index); +inline bool RuleStmt::_internal_replace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.replace_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CTESearchClause::mutable_search_col_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CTESearchClause.search_col_list) - return &_impl_.search_col_list_; +inline void RuleStmt::_internal_set_replace(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.replace_ = value; } -inline const ::pg_query::Node& CTESearchClause::_internal_search_col_list(int index) const { - return _impl_.search_col_list_.Get(index); + +// ------------------------------------------------------------------- + +// NotifyStmt + +// string conditionname = 1 [json_name = "conditionname"]; +inline void NotifyStmt::clear_conditionname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conditionname_.ClearToEmpty(); } -inline const ::pg_query::Node& CTESearchClause::search_col_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CTESearchClause.search_col_list) - return _internal_search_col_list(index); +inline const std::string& NotifyStmt::conditionname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NotifyStmt.conditionname) + return _internal_conditionname(); } -inline ::pg_query::Node* CTESearchClause::_internal_add_search_col_list() { - return _impl_.search_col_list_.Add(); +template +inline PROTOBUF_ALWAYS_INLINE void NotifyStmt::set_conditionname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conditionname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.NotifyStmt.conditionname) } -inline ::pg_query::Node* CTESearchClause::add_search_col_list() { - ::pg_query::Node* _add = _internal_add_search_col_list(); - // @@protoc_insertion_point(field_add:pg_query.CTESearchClause.search_col_list) - return _add; +inline std::string* NotifyStmt::mutable_conditionname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_conditionname(); + // @@protoc_insertion_point(field_mutable:pg_query.NotifyStmt.conditionname) + return _s; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CTESearchClause::search_col_list() const { - // @@protoc_insertion_point(field_list:pg_query.CTESearchClause.search_col_list) - return _impl_.search_col_list_; +inline const std::string& NotifyStmt::_internal_conditionname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.conditionname_.Get(); +} +inline void NotifyStmt::_internal_set_conditionname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conditionname_.Set(value, GetArena()); +} +inline std::string* NotifyStmt::_internal_mutable_conditionname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.conditionname_.Mutable( GetArena()); +} +inline std::string* NotifyStmt::release_conditionname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.NotifyStmt.conditionname) + return _impl_.conditionname_.Release(); +} +inline void NotifyStmt::set_allocated_conditionname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conditionname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.conditionname_.IsDefault()) { + _impl_.conditionname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.NotifyStmt.conditionname) } -// bool search_breadth_first = 2 [json_name = "search_breadth_first"]; -inline void CTESearchClause::clear_search_breadth_first() { - _impl_.search_breadth_first_ = false; +// string payload = 2 [json_name = "payload"]; +inline void NotifyStmt::clear_payload() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.payload_.ClearToEmpty(); } -inline bool CTESearchClause::_internal_search_breadth_first() const { - return _impl_.search_breadth_first_; +inline const std::string& NotifyStmt::payload() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.NotifyStmt.payload) + return _internal_payload(); } -inline bool CTESearchClause::search_breadth_first() const { - // @@protoc_insertion_point(field_get:pg_query.CTESearchClause.search_breadth_first) - return _internal_search_breadth_first(); +template +inline PROTOBUF_ALWAYS_INLINE void NotifyStmt::set_payload(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.payload_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.NotifyStmt.payload) } -inline void CTESearchClause::_internal_set_search_breadth_first(bool value) { - - _impl_.search_breadth_first_ = value; +inline std::string* NotifyStmt::mutable_payload() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_payload(); + // @@protoc_insertion_point(field_mutable:pg_query.NotifyStmt.payload) + return _s; } -inline void CTESearchClause::set_search_breadth_first(bool value) { - _internal_set_search_breadth_first(value); - // @@protoc_insertion_point(field_set:pg_query.CTESearchClause.search_breadth_first) +inline const std::string& NotifyStmt::_internal_payload() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.payload_.Get(); +} +inline void NotifyStmt::_internal_set_payload(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.payload_.Set(value, GetArena()); +} +inline std::string* NotifyStmt::_internal_mutable_payload() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.payload_.Mutable( GetArena()); +} +inline std::string* NotifyStmt::release_payload() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.NotifyStmt.payload) + return _impl_.payload_.Release(); +} +inline void NotifyStmt::set_allocated_payload(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.payload_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.payload_.IsDefault()) { + _impl_.payload_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.NotifyStmt.payload) } -// string search_seq_column = 3 [json_name = "search_seq_column"]; -inline void CTESearchClause::clear_search_seq_column() { - _impl_.search_seq_column_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// ListenStmt + +// string conditionname = 1 [json_name = "conditionname"]; +inline void ListenStmt::clear_conditionname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conditionname_.ClearToEmpty(); } -inline const std::string& CTESearchClause::search_seq_column() const { - // @@protoc_insertion_point(field_get:pg_query.CTESearchClause.search_seq_column) - return _internal_search_seq_column(); +inline const std::string& ListenStmt::conditionname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ListenStmt.conditionname) + return _internal_conditionname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CTESearchClause::set_search_seq_column(ArgT0&& arg0, ArgT... args) { - - _impl_.search_seq_column_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CTESearchClause.search_seq_column) +template +inline PROTOBUF_ALWAYS_INLINE void ListenStmt::set_conditionname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conditionname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ListenStmt.conditionname) } -inline std::string* CTESearchClause::mutable_search_seq_column() { - std::string* _s = _internal_mutable_search_seq_column(); - // @@protoc_insertion_point(field_mutable:pg_query.CTESearchClause.search_seq_column) +inline std::string* ListenStmt::mutable_conditionname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_conditionname(); + // @@protoc_insertion_point(field_mutable:pg_query.ListenStmt.conditionname) return _s; } -inline const std::string& CTESearchClause::_internal_search_seq_column() const { - return _impl_.search_seq_column_.Get(); +inline const std::string& ListenStmt::_internal_conditionname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.conditionname_.Get(); } -inline void CTESearchClause::_internal_set_search_seq_column(const std::string& value) { - - _impl_.search_seq_column_.Set(value, GetArenaForAllocation()); +inline void ListenStmt::_internal_set_conditionname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conditionname_.Set(value, GetArena()); } -inline std::string* CTESearchClause::_internal_mutable_search_seq_column() { - - return _impl_.search_seq_column_.Mutable(GetArenaForAllocation()); +inline std::string* ListenStmt::_internal_mutable_conditionname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.conditionname_.Mutable( GetArena()); } -inline std::string* CTESearchClause::release_search_seq_column() { - // @@protoc_insertion_point(field_release:pg_query.CTESearchClause.search_seq_column) - return _impl_.search_seq_column_.Release(); +inline std::string* ListenStmt::release_conditionname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ListenStmt.conditionname) + return _impl_.conditionname_.Release(); } -inline void CTESearchClause::set_allocated_search_seq_column(std::string* search_seq_column) { - if (search_seq_column != nullptr) { - - } else { - - } - _impl_.search_seq_column_.SetAllocated(search_seq_column, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.search_seq_column_.IsDefault()) { - _impl_.search_seq_column_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CTESearchClause.search_seq_column) +inline void ListenStmt::set_allocated_conditionname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conditionname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.conditionname_.IsDefault()) { + _impl_.conditionname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ListenStmt.conditionname) } -// int32 location = 4 [json_name = "location"]; -inline void CTESearchClause::clear_location() { - _impl_.location_ = 0; +// ------------------------------------------------------------------- + +// UnlistenStmt + +// string conditionname = 1 [json_name = "conditionname"]; +inline void UnlistenStmt::clear_conditionname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conditionname_.ClearToEmpty(); } -inline int32_t CTESearchClause::_internal_location() const { - return _impl_.location_; +inline const std::string& UnlistenStmt::conditionname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.UnlistenStmt.conditionname) + return _internal_conditionname(); } -inline int32_t CTESearchClause::location() const { - // @@protoc_insertion_point(field_get:pg_query.CTESearchClause.location) - return _internal_location(); +template +inline PROTOBUF_ALWAYS_INLINE void UnlistenStmt::set_conditionname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conditionname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.UnlistenStmt.conditionname) } -inline void CTESearchClause::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline std::string* UnlistenStmt::mutable_conditionname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_conditionname(); + // @@protoc_insertion_point(field_mutable:pg_query.UnlistenStmt.conditionname) + return _s; } -inline void CTESearchClause::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CTESearchClause.location) +inline const std::string& UnlistenStmt::_internal_conditionname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.conditionname_.Get(); +} +inline void UnlistenStmt::_internal_set_conditionname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conditionname_.Set(value, GetArena()); +} +inline std::string* UnlistenStmt::_internal_mutable_conditionname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.conditionname_.Mutable( GetArena()); +} +inline std::string* UnlistenStmt::release_conditionname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.UnlistenStmt.conditionname) + return _impl_.conditionname_.Release(); +} +inline void UnlistenStmt::set_allocated_conditionname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conditionname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.conditionname_.IsDefault()) { + _impl_.conditionname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.UnlistenStmt.conditionname) } // ------------------------------------------------------------------- -// CTECycleClause +// TransactionStmt -// repeated .pg_query.Node cycle_col_list = 1 [json_name = "cycle_col_list"]; -inline int CTECycleClause::_internal_cycle_col_list_size() const { - return _impl_.cycle_col_list_.size(); +// .pg_query.TransactionStmtKind kind = 1 [json_name = "kind"]; +inline void TransactionStmt::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; } -inline int CTECycleClause::cycle_col_list_size() const { - return _internal_cycle_col_list_size(); +inline ::pg_query::TransactionStmtKind TransactionStmt::kind() const { + // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.kind) + return _internal_kind(); +} +inline void TransactionStmt::set_kind(::pg_query::TransactionStmtKind value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.TransactionStmt.kind) +} +inline ::pg_query::TransactionStmtKind TransactionStmt::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::TransactionStmtKind>(_impl_.kind_); +} +inline void TransactionStmt::_internal_set_kind(::pg_query::TransactionStmtKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; +} + +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int TransactionStmt::_internal_options_size() const { + return _internal_options().size(); +} +inline int TransactionStmt::options_size() const { + return _internal_options_size(); +} +inline void TransactionStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); +} +inline ::pg_query::Node* TransactionStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.TransactionStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* TransactionStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.TransactionStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& TransactionStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* TransactionStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.TransactionStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& TransactionStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.TransactionStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +TransactionStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +TransactionStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} + +// string savepoint_name = 3 [json_name = "savepoint_name"]; +inline void TransactionStmt::clear_savepoint_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.savepoint_name_.ClearToEmpty(); } -inline void CTECycleClause::clear_cycle_col_list() { - _impl_.cycle_col_list_.Clear(); +inline const std::string& TransactionStmt::savepoint_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.savepoint_name) + return _internal_savepoint_name(); } -inline ::pg_query::Node* CTECycleClause::mutable_cycle_col_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_col_list) - return _impl_.cycle_col_list_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void TransactionStmt::set_savepoint_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.savepoint_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.TransactionStmt.savepoint_name) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CTECycleClause::mutable_cycle_col_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CTECycleClause.cycle_col_list) - return &_impl_.cycle_col_list_; +inline std::string* TransactionStmt::mutable_savepoint_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_savepoint_name(); + // @@protoc_insertion_point(field_mutable:pg_query.TransactionStmt.savepoint_name) + return _s; } -inline const ::pg_query::Node& CTECycleClause::_internal_cycle_col_list(int index) const { - return _impl_.cycle_col_list_.Get(index); +inline const std::string& TransactionStmt::_internal_savepoint_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.savepoint_name_.Get(); } -inline const ::pg_query::Node& CTECycleClause::cycle_col_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_col_list) - return _internal_cycle_col_list(index); +inline void TransactionStmt::_internal_set_savepoint_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.savepoint_name_.Set(value, GetArena()); } -inline ::pg_query::Node* CTECycleClause::_internal_add_cycle_col_list() { - return _impl_.cycle_col_list_.Add(); +inline std::string* TransactionStmt::_internal_mutable_savepoint_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.savepoint_name_.Mutable( GetArena()); } -inline ::pg_query::Node* CTECycleClause::add_cycle_col_list() { - ::pg_query::Node* _add = _internal_add_cycle_col_list(); - // @@protoc_insertion_point(field_add:pg_query.CTECycleClause.cycle_col_list) - return _add; +inline std::string* TransactionStmt::release_savepoint_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TransactionStmt.savepoint_name) + return _impl_.savepoint_name_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CTECycleClause::cycle_col_list() const { - // @@protoc_insertion_point(field_list:pg_query.CTECycleClause.cycle_col_list) - return _impl_.cycle_col_list_; +inline void TransactionStmt::set_allocated_savepoint_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.savepoint_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.savepoint_name_.IsDefault()) { + _impl_.savepoint_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.TransactionStmt.savepoint_name) } -// string cycle_mark_column = 2 [json_name = "cycle_mark_column"]; -inline void CTECycleClause::clear_cycle_mark_column() { - _impl_.cycle_mark_column_.ClearToEmpty(); +// string gid = 4 [json_name = "gid"]; +inline void TransactionStmt::clear_gid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.gid_.ClearToEmpty(); } -inline const std::string& CTECycleClause::cycle_mark_column() const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_column) - return _internal_cycle_mark_column(); +inline const std::string& TransactionStmt::gid() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.gid) + return _internal_gid(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CTECycleClause::set_cycle_mark_column(ArgT0&& arg0, ArgT... args) { - - _impl_.cycle_mark_column_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_column) +template +inline PROTOBUF_ALWAYS_INLINE void TransactionStmt::set_gid(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.gid_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.TransactionStmt.gid) } -inline std::string* CTECycleClause::mutable_cycle_mark_column() { - std::string* _s = _internal_mutable_cycle_mark_column(); - // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_mark_column) +inline std::string* TransactionStmt::mutable_gid() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_gid(); + // @@protoc_insertion_point(field_mutable:pg_query.TransactionStmt.gid) return _s; } -inline const std::string& CTECycleClause::_internal_cycle_mark_column() const { - return _impl_.cycle_mark_column_.Get(); +inline const std::string& TransactionStmt::_internal_gid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.gid_.Get(); } -inline void CTECycleClause::_internal_set_cycle_mark_column(const std::string& value) { - - _impl_.cycle_mark_column_.Set(value, GetArenaForAllocation()); +inline void TransactionStmt::_internal_set_gid(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.gid_.Set(value, GetArena()); } -inline std::string* CTECycleClause::_internal_mutable_cycle_mark_column() { - - return _impl_.cycle_mark_column_.Mutable(GetArenaForAllocation()); +inline std::string* TransactionStmt::_internal_mutable_gid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.gid_.Mutable( GetArena()); } -inline std::string* CTECycleClause::release_cycle_mark_column() { - // @@protoc_insertion_point(field_release:pg_query.CTECycleClause.cycle_mark_column) - return _impl_.cycle_mark_column_.Release(); +inline std::string* TransactionStmt::release_gid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.TransactionStmt.gid) + return _impl_.gid_.Release(); } -inline void CTECycleClause::set_allocated_cycle_mark_column(std::string* cycle_mark_column) { - if (cycle_mark_column != nullptr) { - - } else { - - } - _impl_.cycle_mark_column_.SetAllocated(cycle_mark_column, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.cycle_mark_column_.IsDefault()) { - _impl_.cycle_mark_column_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CTECycleClause.cycle_mark_column) +inline void TransactionStmt::set_allocated_gid(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.gid_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.gid_.IsDefault()) { + _impl_.gid_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.TransactionStmt.gid) } -// .pg_query.Node cycle_mark_value = 3 [json_name = "cycle_mark_value"]; -inline bool CTECycleClause::_internal_has_cycle_mark_value() const { - return this != internal_default_instance() && _impl_.cycle_mark_value_ != nullptr; +// bool chain = 5 [json_name = "chain"]; +inline void TransactionStmt::clear_chain() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.chain_ = false; } -inline bool CTECycleClause::has_cycle_mark_value() const { - return _internal_has_cycle_mark_value(); +inline bool TransactionStmt::chain() const { + // @@protoc_insertion_point(field_get:pg_query.TransactionStmt.chain) + return _internal_chain(); } -inline void CTECycleClause::clear_cycle_mark_value() { - if (GetArenaForAllocation() == nullptr && _impl_.cycle_mark_value_ != nullptr) { - delete _impl_.cycle_mark_value_; - } - _impl_.cycle_mark_value_ = nullptr; +inline void TransactionStmt::set_chain(bool value) { + _internal_set_chain(value); + // @@protoc_insertion_point(field_set:pg_query.TransactionStmt.chain) } -inline const ::pg_query::Node& CTECycleClause::_internal_cycle_mark_value() const { - const ::pg_query::Node* p = _impl_.cycle_mark_value_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline bool TransactionStmt::_internal_chain() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.chain_; } -inline const ::pg_query::Node& CTECycleClause::cycle_mark_value() const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_value) - return _internal_cycle_mark_value(); +inline void TransactionStmt::_internal_set_chain(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.chain_ = value; +} + +// ------------------------------------------------------------------- + +// CompositeTypeStmt + +// .pg_query.RangeVar typevar = 1 [json_name = "typevar"]; +inline bool CompositeTypeStmt::has_typevar() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.typevar_ != nullptr); + return value; +} +inline void CompositeTypeStmt::clear_typevar() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.typevar_ != nullptr) _impl_.typevar_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RangeVar& CompositeTypeStmt::_internal_typevar() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.typevar_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); +} +inline const ::pg_query::RangeVar& CompositeTypeStmt::typevar() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CompositeTypeStmt.typevar) + return _internal_typevar(); } -inline void CTECycleClause::unsafe_arena_set_allocated_cycle_mark_value( - ::pg_query::Node* cycle_mark_value) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.cycle_mark_value_); +inline void CompositeTypeStmt::unsafe_arena_set_allocated_typevar(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.typevar_); } - _impl_.cycle_mark_value_ = cycle_mark_value; - if (cycle_mark_value) { - + _impl_.typevar_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CTECycleClause.cycle_mark_value) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CompositeTypeStmt.typevar) } -inline ::pg_query::Node* CTECycleClause::release_cycle_mark_value() { - - ::pg_query::Node* temp = _impl_.cycle_mark_value_; - _impl_.cycle_mark_value_ = nullptr; +inline ::pg_query::RangeVar* CompositeTypeStmt::release_typevar() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.typevar_; + _impl_.typevar_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* CTECycleClause::unsafe_arena_release_cycle_mark_value() { - // @@protoc_insertion_point(field_release:pg_query.CTECycleClause.cycle_mark_value) - - ::pg_query::Node* temp = _impl_.cycle_mark_value_; - _impl_.cycle_mark_value_ = nullptr; +inline ::pg_query::RangeVar* CompositeTypeStmt::unsafe_arena_release_typevar() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CompositeTypeStmt.typevar) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.typevar_; + _impl_.typevar_ = nullptr; return temp; } -inline ::pg_query::Node* CTECycleClause::_internal_mutable_cycle_mark_value() { - - if (_impl_.cycle_mark_value_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.cycle_mark_value_ = p; +inline ::pg_query::RangeVar* CompositeTypeStmt::_internal_mutable_typevar() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.typevar_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.typevar_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.cycle_mark_value_; + return _impl_.typevar_; } -inline ::pg_query::Node* CTECycleClause::mutable_cycle_mark_value() { - ::pg_query::Node* _msg = _internal_mutable_cycle_mark_value(); - // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_mark_value) +inline ::pg_query::RangeVar* CompositeTypeStmt::mutable_typevar() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_typevar(); + // @@protoc_insertion_point(field_mutable:pg_query.CompositeTypeStmt.typevar) return _msg; } -inline void CTECycleClause::set_allocated_cycle_mark_value(::pg_query::Node* cycle_mark_value) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CompositeTypeStmt::set_allocated_typevar(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.cycle_mark_value_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.typevar_); } - if (cycle_mark_value) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(cycle_mark_value); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - cycle_mark_value = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, cycle_mark_value, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.cycle_mark_value_ = cycle_mark_value; - // @@protoc_insertion_point(field_set_allocated:pg_query.CTECycleClause.cycle_mark_value) -} -// .pg_query.Node cycle_mark_default = 4 [json_name = "cycle_mark_default"]; -inline bool CTECycleClause::_internal_has_cycle_mark_default() const { - return this != internal_default_instance() && _impl_.cycle_mark_default_ != nullptr; + _impl_.typevar_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CompositeTypeStmt.typevar) } -inline bool CTECycleClause::has_cycle_mark_default() const { - return _internal_has_cycle_mark_default(); + +// repeated .pg_query.Node coldeflist = 2 [json_name = "coldeflist"]; +inline int CompositeTypeStmt::_internal_coldeflist_size() const { + return _internal_coldeflist().size(); } -inline void CTECycleClause::clear_cycle_mark_default() { - if (GetArenaForAllocation() == nullptr && _impl_.cycle_mark_default_ != nullptr) { - delete _impl_.cycle_mark_default_; - } - _impl_.cycle_mark_default_ = nullptr; +inline int CompositeTypeStmt::coldeflist_size() const { + return _internal_coldeflist_size(); } -inline const ::pg_query::Node& CTECycleClause::_internal_cycle_mark_default() const { - const ::pg_query::Node* p = _impl_.cycle_mark_default_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void CompositeTypeStmt::clear_coldeflist() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.coldeflist_.Clear(); } -inline const ::pg_query::Node& CTECycleClause::cycle_mark_default() const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_default) - return _internal_cycle_mark_default(); +inline ::pg_query::Node* CompositeTypeStmt::mutable_coldeflist(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CompositeTypeStmt.coldeflist) + return _internal_mutable_coldeflist()->Mutable(index); } -inline void CTECycleClause::unsafe_arena_set_allocated_cycle_mark_default( - ::pg_query::Node* cycle_mark_default) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.cycle_mark_default_); - } - _impl_.cycle_mark_default_ = cycle_mark_default; - if (cycle_mark_default) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CTECycleClause.cycle_mark_default) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CompositeTypeStmt::mutable_coldeflist() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CompositeTypeStmt.coldeflist) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_coldeflist(); } -inline ::pg_query::Node* CTECycleClause::release_cycle_mark_default() { - - ::pg_query::Node* temp = _impl_.cycle_mark_default_; - _impl_.cycle_mark_default_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& CompositeTypeStmt::coldeflist(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CompositeTypeStmt.coldeflist) + return _internal_coldeflist().Get(index); } -inline ::pg_query::Node* CTECycleClause::unsafe_arena_release_cycle_mark_default() { - // @@protoc_insertion_point(field_release:pg_query.CTECycleClause.cycle_mark_default) - - ::pg_query::Node* temp = _impl_.cycle_mark_default_; - _impl_.cycle_mark_default_ = nullptr; - return temp; +inline ::pg_query::Node* CompositeTypeStmt::add_coldeflist() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_coldeflist()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CompositeTypeStmt.coldeflist) + return _add; } -inline ::pg_query::Node* CTECycleClause::_internal_mutable_cycle_mark_default() { - - if (_impl_.cycle_mark_default_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.cycle_mark_default_ = p; - } - return _impl_.cycle_mark_default_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CompositeTypeStmt::coldeflist() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CompositeTypeStmt.coldeflist) + return _internal_coldeflist(); } -inline ::pg_query::Node* CTECycleClause::mutable_cycle_mark_default() { - ::pg_query::Node* _msg = _internal_mutable_cycle_mark_default(); - // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_mark_default) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CompositeTypeStmt::_internal_coldeflist() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.coldeflist_; } -inline void CTECycleClause::set_allocated_cycle_mark_default(::pg_query::Node* cycle_mark_default) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.cycle_mark_default_; - } - if (cycle_mark_default) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(cycle_mark_default); - if (message_arena != submessage_arena) { - cycle_mark_default = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, cycle_mark_default, submessage_arena); - } - - } else { - - } - _impl_.cycle_mark_default_ = cycle_mark_default; - // @@protoc_insertion_point(field_set_allocated:pg_query.CTECycleClause.cycle_mark_default) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CompositeTypeStmt::_internal_mutable_coldeflist() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.coldeflist_; } -// string cycle_path_column = 5 [json_name = "cycle_path_column"]; -inline void CTECycleClause::clear_cycle_path_column() { - _impl_.cycle_path_column_.ClearToEmpty(); +// ------------------------------------------------------------------- + +// CreateEnumStmt + +// repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; +inline int CreateEnumStmt::_internal_type_name_size() const { + return _internal_type_name().size(); } -inline const std::string& CTECycleClause::cycle_path_column() const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_path_column) - return _internal_cycle_path_column(); +inline int CreateEnumStmt::type_name_size() const { + return _internal_type_name_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CTECycleClause::set_cycle_path_column(ArgT0&& arg0, ArgT... args) { - - _impl_.cycle_path_column_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_path_column) +inline void CreateEnumStmt::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_name_.Clear(); } -inline std::string* CTECycleClause::mutable_cycle_path_column() { - std::string* _s = _internal_mutable_cycle_path_column(); - // @@protoc_insertion_point(field_mutable:pg_query.CTECycleClause.cycle_path_column) - return _s; +inline ::pg_query::Node* CreateEnumStmt::mutable_type_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateEnumStmt.type_name) + return _internal_mutable_type_name()->Mutable(index); } -inline const std::string& CTECycleClause::_internal_cycle_path_column() const { - return _impl_.cycle_path_column_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateEnumStmt::mutable_type_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateEnumStmt.type_name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_type_name(); } -inline void CTECycleClause::_internal_set_cycle_path_column(const std::string& value) { - - _impl_.cycle_path_column_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& CreateEnumStmt::type_name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateEnumStmt.type_name) + return _internal_type_name().Get(index); } -inline std::string* CTECycleClause::_internal_mutable_cycle_path_column() { - - return _impl_.cycle_path_column_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* CreateEnumStmt::add_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_type_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateEnumStmt.type_name) + return _add; } -inline std::string* CTECycleClause::release_cycle_path_column() { - // @@protoc_insertion_point(field_release:pg_query.CTECycleClause.cycle_path_column) - return _impl_.cycle_path_column_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateEnumStmt::type_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateEnumStmt.type_name) + return _internal_type_name(); } -inline void CTECycleClause::set_allocated_cycle_path_column(std::string* cycle_path_column) { - if (cycle_path_column != nullptr) { - - } else { - - } - _impl_.cycle_path_column_.SetAllocated(cycle_path_column, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.cycle_path_column_.IsDefault()) { - _impl_.cycle_path_column_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CTECycleClause.cycle_path_column) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateEnumStmt::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_name_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateEnumStmt::_internal_mutable_type_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.type_name_; } -// int32 location = 6 [json_name = "location"]; -inline void CTECycleClause::clear_location() { - _impl_.location_ = 0; +// repeated .pg_query.Node vals = 2 [json_name = "vals"]; +inline int CreateEnumStmt::_internal_vals_size() const { + return _internal_vals().size(); } -inline int32_t CTECycleClause::_internal_location() const { - return _impl_.location_; +inline int CreateEnumStmt::vals_size() const { + return _internal_vals_size(); } -inline int32_t CTECycleClause::location() const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.location) - return _internal_location(); +inline void CreateEnumStmt::clear_vals() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.vals_.Clear(); } -inline void CTECycleClause::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::Node* CreateEnumStmt::mutable_vals(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateEnumStmt.vals) + return _internal_mutable_vals()->Mutable(index); } -inline void CTECycleClause::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.location) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateEnumStmt::mutable_vals() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateEnumStmt.vals) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_vals(); } - -// uint32 cycle_mark_type = 7 [json_name = "cycle_mark_type"]; -inline void CTECycleClause::clear_cycle_mark_type() { - _impl_.cycle_mark_type_ = 0u; +inline const ::pg_query::Node& CreateEnumStmt::vals(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateEnumStmt.vals) + return _internal_vals().Get(index); } -inline uint32_t CTECycleClause::_internal_cycle_mark_type() const { - return _impl_.cycle_mark_type_; +inline ::pg_query::Node* CreateEnumStmt::add_vals() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_vals()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateEnumStmt.vals) + return _add; } -inline uint32_t CTECycleClause::cycle_mark_type() const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_type) - return _internal_cycle_mark_type(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateEnumStmt::vals() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateEnumStmt.vals) + return _internal_vals(); } -inline void CTECycleClause::_internal_set_cycle_mark_type(uint32_t value) { - - _impl_.cycle_mark_type_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateEnumStmt::_internal_vals() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.vals_; } -inline void CTECycleClause::set_cycle_mark_type(uint32_t value) { - _internal_set_cycle_mark_type(value); - // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_type) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateEnumStmt::_internal_mutable_vals() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.vals_; } -// int32 cycle_mark_typmod = 8 [json_name = "cycle_mark_typmod"]; -inline void CTECycleClause::clear_cycle_mark_typmod() { - _impl_.cycle_mark_typmod_ = 0; +// ------------------------------------------------------------------- + +// CreateRangeStmt + +// repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; +inline int CreateRangeStmt::_internal_type_name_size() const { + return _internal_type_name().size(); } -inline int32_t CTECycleClause::_internal_cycle_mark_typmod() const { - return _impl_.cycle_mark_typmod_; +inline int CreateRangeStmt::type_name_size() const { + return _internal_type_name_size(); } -inline int32_t CTECycleClause::cycle_mark_typmod() const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_typmod) - return _internal_cycle_mark_typmod(); +inline void CreateRangeStmt::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_name_.Clear(); } -inline void CTECycleClause::_internal_set_cycle_mark_typmod(int32_t value) { - - _impl_.cycle_mark_typmod_ = value; +inline ::pg_query::Node* CreateRangeStmt::mutable_type_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateRangeStmt.type_name) + return _internal_mutable_type_name()->Mutable(index); } -inline void CTECycleClause::set_cycle_mark_typmod(int32_t value) { - _internal_set_cycle_mark_typmod(value); - // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_typmod) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateRangeStmt::mutable_type_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateRangeStmt.type_name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_type_name(); } - -// uint32 cycle_mark_collation = 9 [json_name = "cycle_mark_collation"]; -inline void CTECycleClause::clear_cycle_mark_collation() { - _impl_.cycle_mark_collation_ = 0u; +inline const ::pg_query::Node& CreateRangeStmt::type_name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateRangeStmt.type_name) + return _internal_type_name().Get(index); } -inline uint32_t CTECycleClause::_internal_cycle_mark_collation() const { - return _impl_.cycle_mark_collation_; +inline ::pg_query::Node* CreateRangeStmt::add_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_type_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateRangeStmt.type_name) + return _add; } -inline uint32_t CTECycleClause::cycle_mark_collation() const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_collation) - return _internal_cycle_mark_collation(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateRangeStmt::type_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateRangeStmt.type_name) + return _internal_type_name(); } -inline void CTECycleClause::_internal_set_cycle_mark_collation(uint32_t value) { - - _impl_.cycle_mark_collation_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateRangeStmt::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_name_; } -inline void CTECycleClause::set_cycle_mark_collation(uint32_t value) { - _internal_set_cycle_mark_collation(value); - // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_collation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateRangeStmt::_internal_mutable_type_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.type_name_; } -// uint32 cycle_mark_neop = 10 [json_name = "cycle_mark_neop"]; -inline void CTECycleClause::clear_cycle_mark_neop() { - _impl_.cycle_mark_neop_ = 0u; +// repeated .pg_query.Node params = 2 [json_name = "params"]; +inline int CreateRangeStmt::_internal_params_size() const { + return _internal_params().size(); } -inline uint32_t CTECycleClause::_internal_cycle_mark_neop() const { - return _impl_.cycle_mark_neop_; +inline int CreateRangeStmt::params_size() const { + return _internal_params_size(); } -inline uint32_t CTECycleClause::cycle_mark_neop() const { - // @@protoc_insertion_point(field_get:pg_query.CTECycleClause.cycle_mark_neop) - return _internal_cycle_mark_neop(); +inline void CreateRangeStmt::clear_params() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.params_.Clear(); } -inline void CTECycleClause::_internal_set_cycle_mark_neop(uint32_t value) { - - _impl_.cycle_mark_neop_ = value; +inline ::pg_query::Node* CreateRangeStmt::mutable_params(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateRangeStmt.params) + return _internal_mutable_params()->Mutable(index); } -inline void CTECycleClause::set_cycle_mark_neop(uint32_t value) { - _internal_set_cycle_mark_neop(value); - // @@protoc_insertion_point(field_set:pg_query.CTECycleClause.cycle_mark_neop) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateRangeStmt::mutable_params() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateRangeStmt.params) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_params(); +} +inline const ::pg_query::Node& CreateRangeStmt::params(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateRangeStmt.params) + return _internal_params().Get(index); +} +inline ::pg_query::Node* CreateRangeStmt::add_params() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_params()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateRangeStmt.params) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateRangeStmt::params() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateRangeStmt.params) + return _internal_params(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateRangeStmt::_internal_params() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.params_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateRangeStmt::_internal_mutable_params() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.params_; } // ------------------------------------------------------------------- -// CommonTableExpr +// AlterEnumStmt -// string ctename = 1 [json_name = "ctename"]; -inline void CommonTableExpr::clear_ctename() { - _impl_.ctename_.ClearToEmpty(); +// repeated .pg_query.Node type_name = 1 [json_name = "typeName"]; +inline int AlterEnumStmt::_internal_type_name_size() const { + return _internal_type_name().size(); } -inline const std::string& CommonTableExpr::ctename() const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctename) - return _internal_ctename(); +inline int AlterEnumStmt::type_name_size() const { + return _internal_type_name_size(); } -template -inline PROTOBUF_ALWAYS_INLINE -void CommonTableExpr::set_ctename(ArgT0&& arg0, ArgT... args) { - - _impl_.ctename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.ctename) +inline void AlterEnumStmt::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.type_name_.Clear(); } -inline std::string* CommonTableExpr::mutable_ctename() { - std::string* _s = _internal_mutable_ctename(); - // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctename) - return _s; +inline ::pg_query::Node* AlterEnumStmt::mutable_type_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterEnumStmt.type_name) + return _internal_mutable_type_name()->Mutable(index); } -inline const std::string& CommonTableExpr::_internal_ctename() const { - return _impl_.ctename_.Get(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterEnumStmt::mutable_type_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterEnumStmt.type_name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_type_name(); } -inline void CommonTableExpr::_internal_set_ctename(const std::string& value) { - - _impl_.ctename_.Set(value, GetArenaForAllocation()); +inline const ::pg_query::Node& AlterEnumStmt::type_name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.type_name) + return _internal_type_name().Get(index); } -inline std::string* CommonTableExpr::_internal_mutable_ctename() { - - return _impl_.ctename_.Mutable(GetArenaForAllocation()); +inline ::pg_query::Node* AlterEnumStmt::add_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_type_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterEnumStmt.type_name) + return _add; } -inline std::string* CommonTableExpr::release_ctename() { - // @@protoc_insertion_point(field_release:pg_query.CommonTableExpr.ctename) - return _impl_.ctename_.Release(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterEnumStmt::type_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterEnumStmt.type_name) + return _internal_type_name(); } -inline void CommonTableExpr::set_allocated_ctename(std::string* ctename) { - if (ctename != nullptr) { - - } else { - - } - _impl_.ctename_.SetAllocated(ctename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.ctename_.IsDefault()) { - _impl_.ctename_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.CommonTableExpr.ctename) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterEnumStmt::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.type_name_; } - -// repeated .pg_query.Node aliascolnames = 2 [json_name = "aliascolnames"]; -inline int CommonTableExpr::_internal_aliascolnames_size() const { - return _impl_.aliascolnames_.size(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterEnumStmt::_internal_mutable_type_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.type_name_; } -inline int CommonTableExpr::aliascolnames_size() const { - return _internal_aliascolnames_size(); + +// string old_val = 2 [json_name = "oldVal"]; +inline void AlterEnumStmt::clear_old_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.old_val_.ClearToEmpty(); } -inline void CommonTableExpr::clear_aliascolnames() { - _impl_.aliascolnames_.Clear(); +inline const std::string& AlterEnumStmt::old_val() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.old_val) + return _internal_old_val(); } -inline ::pg_query::Node* CommonTableExpr::mutable_aliascolnames(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.aliascolnames) - return _impl_.aliascolnames_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void AlterEnumStmt::set_old_val(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.old_val_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.old_val) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CommonTableExpr::mutable_aliascolnames() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.aliascolnames) - return &_impl_.aliascolnames_; +inline std::string* AlterEnumStmt::mutable_old_val() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_old_val(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterEnumStmt.old_val) + return _s; } -inline const ::pg_query::Node& CommonTableExpr::_internal_aliascolnames(int index) const { - return _impl_.aliascolnames_.Get(index); +inline const std::string& AlterEnumStmt::_internal_old_val() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.old_val_.Get(); } -inline const ::pg_query::Node& CommonTableExpr::aliascolnames(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.aliascolnames) - return _internal_aliascolnames(index); +inline void AlterEnumStmt::_internal_set_old_val(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.old_val_.Set(value, GetArena()); } -inline ::pg_query::Node* CommonTableExpr::_internal_add_aliascolnames() { - return _impl_.aliascolnames_.Add(); +inline std::string* AlterEnumStmt::_internal_mutable_old_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.old_val_.Mutable( GetArena()); } -inline ::pg_query::Node* CommonTableExpr::add_aliascolnames() { - ::pg_query::Node* _add = _internal_add_aliascolnames(); - // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.aliascolnames) - return _add; +inline std::string* AlterEnumStmt::release_old_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterEnumStmt.old_val) + return _impl_.old_val_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CommonTableExpr::aliascolnames() const { - // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.aliascolnames) - return _impl_.aliascolnames_; +inline void AlterEnumStmt::set_allocated_old_val(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.old_val_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.old_val_.IsDefault()) { + _impl_.old_val_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEnumStmt.old_val) } -// .pg_query.CTEMaterialize ctematerialized = 3 [json_name = "ctematerialized"]; -inline void CommonTableExpr::clear_ctematerialized() { - _impl_.ctematerialized_ = 0; +// string new_val = 3 [json_name = "newVal"]; +inline void AlterEnumStmt::clear_new_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.new_val_.ClearToEmpty(); } -inline ::pg_query::CTEMaterialize CommonTableExpr::_internal_ctematerialized() const { - return static_cast< ::pg_query::CTEMaterialize >(_impl_.ctematerialized_); +inline const std::string& AlterEnumStmt::new_val() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.new_val) + return _internal_new_val(); } -inline ::pg_query::CTEMaterialize CommonTableExpr::ctematerialized() const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctematerialized) - return _internal_ctematerialized(); +template +inline PROTOBUF_ALWAYS_INLINE void AlterEnumStmt::set_new_val(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.new_val_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.new_val) } -inline void CommonTableExpr::_internal_set_ctematerialized(::pg_query::CTEMaterialize value) { - - _impl_.ctematerialized_ = value; +inline std::string* AlterEnumStmt::mutable_new_val() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_new_val(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterEnumStmt.new_val) + return _s; } -inline void CommonTableExpr::set_ctematerialized(::pg_query::CTEMaterialize value) { - _internal_set_ctematerialized(value); - // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.ctematerialized) +inline const std::string& AlterEnumStmt::_internal_new_val() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.new_val_.Get(); +} +inline void AlterEnumStmt::_internal_set_new_val(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.new_val_.Set(value, GetArena()); +} +inline std::string* AlterEnumStmt::_internal_mutable_new_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.new_val_.Mutable( GetArena()); +} +inline std::string* AlterEnumStmt::release_new_val() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterEnumStmt.new_val) + return _impl_.new_val_.Release(); +} +inline void AlterEnumStmt::set_allocated_new_val(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.new_val_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.new_val_.IsDefault()) { + _impl_.new_val_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEnumStmt.new_val) } -// .pg_query.Node ctequery = 4 [json_name = "ctequery"]; -inline bool CommonTableExpr::_internal_has_ctequery() const { - return this != internal_default_instance() && _impl_.ctequery_ != nullptr; +// string new_val_neighbor = 4 [json_name = "newValNeighbor"]; +inline void AlterEnumStmt::clear_new_val_neighbor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.new_val_neighbor_.ClearToEmpty(); } -inline bool CommonTableExpr::has_ctequery() const { - return _internal_has_ctequery(); +inline const std::string& AlterEnumStmt::new_val_neighbor() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.new_val_neighbor) + return _internal_new_val_neighbor(); } -inline void CommonTableExpr::clear_ctequery() { - if (GetArenaForAllocation() == nullptr && _impl_.ctequery_ != nullptr) { - delete _impl_.ctequery_; - } - _impl_.ctequery_ = nullptr; +template +inline PROTOBUF_ALWAYS_INLINE void AlterEnumStmt::set_new_val_neighbor(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.new_val_neighbor_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.new_val_neighbor) } -inline const ::pg_query::Node& CommonTableExpr::_internal_ctequery() const { - const ::pg_query::Node* p = _impl_.ctequery_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline std::string* AlterEnumStmt::mutable_new_val_neighbor() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_new_val_neighbor(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterEnumStmt.new_val_neighbor) + return _s; } -inline const ::pg_query::Node& CommonTableExpr::ctequery() const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctequery) - return _internal_ctequery(); +inline const std::string& AlterEnumStmt::_internal_new_val_neighbor() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.new_val_neighbor_.Get(); } -inline void CommonTableExpr::unsafe_arena_set_allocated_ctequery( - ::pg_query::Node* ctequery) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.ctequery_); - } - _impl_.ctequery_ = ctequery; - if (ctequery) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CommonTableExpr.ctequery) +inline void AlterEnumStmt::_internal_set_new_val_neighbor(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.new_val_neighbor_.Set(value, GetArena()); } -inline ::pg_query::Node* CommonTableExpr::release_ctequery() { - - ::pg_query::Node* temp = _impl_.ctequery_; - _impl_.ctequery_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline std::string* AlterEnumStmt::_internal_mutable_new_val_neighbor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.new_val_neighbor_.Mutable( GetArena()); } -inline ::pg_query::Node* CommonTableExpr::unsafe_arena_release_ctequery() { - // @@protoc_insertion_point(field_release:pg_query.CommonTableExpr.ctequery) - - ::pg_query::Node* temp = _impl_.ctequery_; - _impl_.ctequery_ = nullptr; - return temp; +inline std::string* AlterEnumStmt::release_new_val_neighbor() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterEnumStmt.new_val_neighbor) + return _impl_.new_val_neighbor_.Release(); } -inline ::pg_query::Node* CommonTableExpr::_internal_mutable_ctequery() { - - if (_impl_.ctequery_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.ctequery_ = p; - } - return _impl_.ctequery_; +inline void AlterEnumStmt::set_allocated_new_val_neighbor(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.new_val_neighbor_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.new_val_neighbor_.IsDefault()) { + _impl_.new_val_neighbor_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterEnumStmt.new_val_neighbor) } -inline ::pg_query::Node* CommonTableExpr::mutable_ctequery() { - ::pg_query::Node* _msg = _internal_mutable_ctequery(); - // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctequery) - return _msg; + +// bool new_val_is_after = 5 [json_name = "newValIsAfter"]; +inline void AlterEnumStmt::clear_new_val_is_after() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.new_val_is_after_ = false; } -inline void CommonTableExpr::set_allocated_ctequery(::pg_query::Node* ctequery) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.ctequery_; - } - if (ctequery) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(ctequery); - if (message_arena != submessage_arena) { - ctequery = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, ctequery, submessage_arena); - } - - } else { - - } - _impl_.ctequery_ = ctequery; - // @@protoc_insertion_point(field_set_allocated:pg_query.CommonTableExpr.ctequery) +inline bool AlterEnumStmt::new_val_is_after() const { + // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.new_val_is_after) + return _internal_new_val_is_after(); +} +inline void AlterEnumStmt::set_new_val_is_after(bool value) { + _internal_set_new_val_is_after(value); + // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.new_val_is_after) +} +inline bool AlterEnumStmt::_internal_new_val_is_after() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.new_val_is_after_; +} +inline void AlterEnumStmt::_internal_set_new_val_is_after(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.new_val_is_after_ = value; +} + +// bool skip_if_new_val_exists = 6 [json_name = "skipIfNewValExists"]; +inline void AlterEnumStmt::clear_skip_if_new_val_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.skip_if_new_val_exists_ = false; +} +inline bool AlterEnumStmt::skip_if_new_val_exists() const { + // @@protoc_insertion_point(field_get:pg_query.AlterEnumStmt.skip_if_new_val_exists) + return _internal_skip_if_new_val_exists(); +} +inline void AlterEnumStmt::set_skip_if_new_val_exists(bool value) { + _internal_set_skip_if_new_val_exists(value); + // @@protoc_insertion_point(field_set:pg_query.AlterEnumStmt.skip_if_new_val_exists) } - -// .pg_query.CTESearchClause search_clause = 5 [json_name = "search_clause"]; -inline bool CommonTableExpr::_internal_has_search_clause() const { - return this != internal_default_instance() && _impl_.search_clause_ != nullptr; +inline bool AlterEnumStmt::_internal_skip_if_new_val_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.skip_if_new_val_exists_; } -inline bool CommonTableExpr::has_search_clause() const { - return _internal_has_search_clause(); +inline void AlterEnumStmt::_internal_set_skip_if_new_val_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.skip_if_new_val_exists_ = value; } -inline void CommonTableExpr::clear_search_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.search_clause_ != nullptr) { - delete _impl_.search_clause_; - } - _impl_.search_clause_ = nullptr; + +// ------------------------------------------------------------------- + +// ViewStmt + +// .pg_query.RangeVar view = 1 [json_name = "view"]; +inline bool ViewStmt::has_view() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.view_ != nullptr); + return value; } -inline const ::pg_query::CTESearchClause& CommonTableExpr::_internal_search_clause() const { - const ::pg_query::CTESearchClause* p = _impl_.search_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_CTESearchClause_default_instance_); +inline void ViewStmt::clear_view() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.view_ != nullptr) _impl_.view_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::CTESearchClause& CommonTableExpr::search_clause() const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.search_clause) - return _internal_search_clause(); +inline const ::pg_query::RangeVar& ViewStmt::_internal_view() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.view_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline void CommonTableExpr::unsafe_arena_set_allocated_search_clause( - ::pg_query::CTESearchClause* search_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.search_clause_); +inline const ::pg_query::RangeVar& ViewStmt::view() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ViewStmt.view) + return _internal_view(); +} +inline void ViewStmt::unsafe_arena_set_allocated_view(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.view_); } - _impl_.search_clause_ = search_clause; - if (search_clause) { - + _impl_.view_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CommonTableExpr.search_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ViewStmt.view) } -inline ::pg_query::CTESearchClause* CommonTableExpr::release_search_clause() { - - ::pg_query::CTESearchClause* temp = _impl_.search_clause_; - _impl_.search_clause_ = nullptr; +inline ::pg_query::RangeVar* ViewStmt::release_view() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.view_; + _impl_.view_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::CTESearchClause* CommonTableExpr::unsafe_arena_release_search_clause() { - // @@protoc_insertion_point(field_release:pg_query.CommonTableExpr.search_clause) - - ::pg_query::CTESearchClause* temp = _impl_.search_clause_; - _impl_.search_clause_ = nullptr; +inline ::pg_query::RangeVar* ViewStmt::unsafe_arena_release_view() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ViewStmt.view) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.view_; + _impl_.view_ = nullptr; return temp; } -inline ::pg_query::CTESearchClause* CommonTableExpr::_internal_mutable_search_clause() { - - if (_impl_.search_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::CTESearchClause>(GetArenaForAllocation()); - _impl_.search_clause_ = p; +inline ::pg_query::RangeVar* ViewStmt::_internal_mutable_view() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.view_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.view_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.search_clause_; + return _impl_.view_; } -inline ::pg_query::CTESearchClause* CommonTableExpr::mutable_search_clause() { - ::pg_query::CTESearchClause* _msg = _internal_mutable_search_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.search_clause) +inline ::pg_query::RangeVar* ViewStmt::mutable_view() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_view(); + // @@protoc_insertion_point(field_mutable:pg_query.ViewStmt.view) return _msg; } -inline void CommonTableExpr::set_allocated_search_clause(::pg_query::CTESearchClause* search_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ViewStmt::set_allocated_view(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.search_clause_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.view_); } - if (search_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(search_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - search_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, search_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.search_clause_ = search_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.CommonTableExpr.search_clause) + + _impl_.view_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ViewStmt.view) } -// .pg_query.CTECycleClause cycle_clause = 6 [json_name = "cycle_clause"]; -inline bool CommonTableExpr::_internal_has_cycle_clause() const { - return this != internal_default_instance() && _impl_.cycle_clause_ != nullptr; +// repeated .pg_query.Node aliases = 2 [json_name = "aliases"]; +inline int ViewStmt::_internal_aliases_size() const { + return _internal_aliases().size(); } -inline bool CommonTableExpr::has_cycle_clause() const { - return _internal_has_cycle_clause(); +inline int ViewStmt::aliases_size() const { + return _internal_aliases_size(); } -inline void CommonTableExpr::clear_cycle_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.cycle_clause_ != nullptr) { - delete _impl_.cycle_clause_; - } - _impl_.cycle_clause_ = nullptr; +inline void ViewStmt::clear_aliases() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.aliases_.Clear(); } -inline const ::pg_query::CTECycleClause& CommonTableExpr::_internal_cycle_clause() const { - const ::pg_query::CTECycleClause* p = _impl_.cycle_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_CTECycleClause_default_instance_); +inline ::pg_query::Node* ViewStmt::mutable_aliases(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ViewStmt.aliases) + return _internal_mutable_aliases()->Mutable(index); } -inline const ::pg_query::CTECycleClause& CommonTableExpr::cycle_clause() const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.cycle_clause) - return _internal_cycle_clause(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ViewStmt::mutable_aliases() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ViewStmt.aliases) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_aliases(); +} +inline const ::pg_query::Node& ViewStmt::aliases(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ViewStmt.aliases) + return _internal_aliases().Get(index); +} +inline ::pg_query::Node* ViewStmt::add_aliases() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_aliases()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ViewStmt.aliases) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ViewStmt::aliases() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ViewStmt.aliases) + return _internal_aliases(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ViewStmt::_internal_aliases() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.aliases_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ViewStmt::_internal_mutable_aliases() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.aliases_; +} + +// .pg_query.Node query = 3 [json_name = "query"]; +inline bool ViewStmt::has_query() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.query_ != nullptr); + return value; +} +inline void ViewStmt::clear_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.query_ != nullptr) _impl_.query_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::Node& ViewStmt::_internal_query() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.query_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& ViewStmt::query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ViewStmt.query) + return _internal_query(); } -inline void CommonTableExpr::unsafe_arena_set_allocated_cycle_clause( - ::pg_query::CTECycleClause* cycle_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.cycle_clause_); +inline void ViewStmt::unsafe_arena_set_allocated_query(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.query_); } - _impl_.cycle_clause_ = cycle_clause; - if (cycle_clause) { - + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CommonTableExpr.cycle_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ViewStmt.query) } -inline ::pg_query::CTECycleClause* CommonTableExpr::release_cycle_clause() { - - ::pg_query::CTECycleClause* temp = _impl_.cycle_clause_; - _impl_.cycle_clause_ = nullptr; +inline ::pg_query::Node* ViewStmt::release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.query_; + _impl_.query_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::CTECycleClause* CommonTableExpr::unsafe_arena_release_cycle_clause() { - // @@protoc_insertion_point(field_release:pg_query.CommonTableExpr.cycle_clause) - - ::pg_query::CTECycleClause* temp = _impl_.cycle_clause_; - _impl_.cycle_clause_ = nullptr; +inline ::pg_query::Node* ViewStmt::unsafe_arena_release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ViewStmt.query) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.query_; + _impl_.query_ = nullptr; return temp; } -inline ::pg_query::CTECycleClause* CommonTableExpr::_internal_mutable_cycle_clause() { - - if (_impl_.cycle_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::CTECycleClause>(GetArenaForAllocation()); - _impl_.cycle_clause_ = p; +inline ::pg_query::Node* ViewStmt::_internal_mutable_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.query_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(p); } - return _impl_.cycle_clause_; + return _impl_.query_; } -inline ::pg_query::CTECycleClause* CommonTableExpr::mutable_cycle_clause() { - ::pg_query::CTECycleClause* _msg = _internal_mutable_cycle_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.cycle_clause) +inline ::pg_query::Node* ViewStmt::mutable_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_query(); + // @@protoc_insertion_point(field_mutable:pg_query.ViewStmt.query) return _msg; } -inline void CommonTableExpr::set_allocated_cycle_clause(::pg_query::CTECycleClause* cycle_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ViewStmt::set_allocated_query(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.cycle_clause_; + delete reinterpret_cast<::pg_query::Node*>(_impl_.query_); } - if (cycle_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(cycle_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); if (message_arena != submessage_arena) { - cycle_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, cycle_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000002u; } else { - + _impl_._has_bits_[0] &= ~0x00000002u; } - _impl_.cycle_clause_ = cycle_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.CommonTableExpr.cycle_clause) -} -// int32 location = 7 [json_name = "location"]; -inline void CommonTableExpr::clear_location() { - _impl_.location_ = 0; -} -inline int32_t CommonTableExpr::_internal_location() const { - return _impl_.location_; -} -inline int32_t CommonTableExpr::location() const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.location) - return _internal_location(); -} -inline void CommonTableExpr::_internal_set_location(int32_t value) { - - _impl_.location_ = value; -} -inline void CommonTableExpr::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.location) + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ViewStmt.query) } -// bool cterecursive = 8 [json_name = "cterecursive"]; -inline void CommonTableExpr::clear_cterecursive() { - _impl_.cterecursive_ = false; +// bool replace = 4 [json_name = "replace"]; +inline void ViewStmt::clear_replace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.replace_ = false; } -inline bool CommonTableExpr::_internal_cterecursive() const { - return _impl_.cterecursive_; +inline bool ViewStmt::replace() const { + // @@protoc_insertion_point(field_get:pg_query.ViewStmt.replace) + return _internal_replace(); } -inline bool CommonTableExpr::cterecursive() const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.cterecursive) - return _internal_cterecursive(); +inline void ViewStmt::set_replace(bool value) { + _internal_set_replace(value); + // @@protoc_insertion_point(field_set:pg_query.ViewStmt.replace) } -inline void CommonTableExpr::_internal_set_cterecursive(bool value) { - - _impl_.cterecursive_ = value; +inline bool ViewStmt::_internal_replace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.replace_; } -inline void CommonTableExpr::set_cterecursive(bool value) { - _internal_set_cterecursive(value); - // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.cterecursive) +inline void ViewStmt::_internal_set_replace(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.replace_ = value; } -// int32 cterefcount = 9 [json_name = "cterefcount"]; -inline void CommonTableExpr::clear_cterefcount() { - _impl_.cterefcount_ = 0; +// repeated .pg_query.Node options = 5 [json_name = "options"]; +inline int ViewStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int32_t CommonTableExpr::_internal_cterefcount() const { - return _impl_.cterefcount_; +inline int ViewStmt::options_size() const { + return _internal_options_size(); } -inline int32_t CommonTableExpr::cterefcount() const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.cterefcount) - return _internal_cterefcount(); +inline void ViewStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void CommonTableExpr::_internal_set_cterefcount(int32_t value) { - - _impl_.cterefcount_ = value; +inline ::pg_query::Node* ViewStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ViewStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void CommonTableExpr::set_cterefcount(int32_t value) { - _internal_set_cterefcount(value); - // @@protoc_insertion_point(field_set:pg_query.CommonTableExpr.cterefcount) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ViewStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ViewStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } - -// repeated .pg_query.Node ctecolnames = 10 [json_name = "ctecolnames"]; -inline int CommonTableExpr::_internal_ctecolnames_size() const { - return _impl_.ctecolnames_.size(); +inline const ::pg_query::Node& ViewStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ViewStmt.options) + return _internal_options().Get(index); } -inline int CommonTableExpr::ctecolnames_size() const { - return _internal_ctecolnames_size(); +inline ::pg_query::Node* ViewStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ViewStmt.options) + return _add; } -inline void CommonTableExpr::clear_ctecolnames() { - _impl_.ctecolnames_.Clear(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ViewStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ViewStmt.options) + return _internal_options(); } -inline ::pg_query::Node* CommonTableExpr::mutable_ctecolnames(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctecolnames) - return _impl_.ctecolnames_.Mutable(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ViewStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CommonTableExpr::mutable_ctecolnames() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.ctecolnames) - return &_impl_.ctecolnames_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ViewStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -inline const ::pg_query::Node& CommonTableExpr::_internal_ctecolnames(int index) const { - return _impl_.ctecolnames_.Get(index); + +// .pg_query.ViewCheckOption with_check_option = 6 [json_name = "withCheckOption"]; +inline void ViewStmt::clear_with_check_option() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.with_check_option_ = 0; } -inline const ::pg_query::Node& CommonTableExpr::ctecolnames(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctecolnames) - return _internal_ctecolnames(index); +inline ::pg_query::ViewCheckOption ViewStmt::with_check_option() const { + // @@protoc_insertion_point(field_get:pg_query.ViewStmt.with_check_option) + return _internal_with_check_option(); } -inline ::pg_query::Node* CommonTableExpr::_internal_add_ctecolnames() { - return _impl_.ctecolnames_.Add(); +inline void ViewStmt::set_with_check_option(::pg_query::ViewCheckOption value) { + _internal_set_with_check_option(value); + // @@protoc_insertion_point(field_set:pg_query.ViewStmt.with_check_option) } -inline ::pg_query::Node* CommonTableExpr::add_ctecolnames() { - ::pg_query::Node* _add = _internal_add_ctecolnames(); - // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.ctecolnames) - return _add; +inline ::pg_query::ViewCheckOption ViewStmt::_internal_with_check_option() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ViewCheckOption>(_impl_.with_check_option_); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CommonTableExpr::ctecolnames() const { - // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.ctecolnames) - return _impl_.ctecolnames_; +inline void ViewStmt::_internal_set_with_check_option(::pg_query::ViewCheckOption value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.with_check_option_ = value; } -// repeated .pg_query.Node ctecoltypes = 11 [json_name = "ctecoltypes"]; -inline int CommonTableExpr::_internal_ctecoltypes_size() const { - return _impl_.ctecoltypes_.size(); -} -inline int CommonTableExpr::ctecoltypes_size() const { - return _internal_ctecoltypes_size(); +// ------------------------------------------------------------------- + +// LoadStmt + +// string filename = 1 [json_name = "filename"]; +inline void LoadStmt::clear_filename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.filename_.ClearToEmpty(); } -inline void CommonTableExpr::clear_ctecoltypes() { - _impl_.ctecoltypes_.Clear(); +inline const std::string& LoadStmt::filename() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.LoadStmt.filename) + return _internal_filename(); } -inline ::pg_query::Node* CommonTableExpr::mutable_ctecoltypes(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctecoltypes) - return _impl_.ctecoltypes_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void LoadStmt::set_filename(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.filename_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.LoadStmt.filename) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CommonTableExpr::mutable_ctecoltypes() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.ctecoltypes) - return &_impl_.ctecoltypes_; +inline std::string* LoadStmt::mutable_filename() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_filename(); + // @@protoc_insertion_point(field_mutable:pg_query.LoadStmt.filename) + return _s; } -inline const ::pg_query::Node& CommonTableExpr::_internal_ctecoltypes(int index) const { - return _impl_.ctecoltypes_.Get(index); +inline const std::string& LoadStmt::_internal_filename() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.filename_.Get(); } -inline const ::pg_query::Node& CommonTableExpr::ctecoltypes(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctecoltypes) - return _internal_ctecoltypes(index); +inline void LoadStmt::_internal_set_filename(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.filename_.Set(value, GetArena()); } -inline ::pg_query::Node* CommonTableExpr::_internal_add_ctecoltypes() { - return _impl_.ctecoltypes_.Add(); +inline std::string* LoadStmt::_internal_mutable_filename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.filename_.Mutable( GetArena()); } -inline ::pg_query::Node* CommonTableExpr::add_ctecoltypes() { - ::pg_query::Node* _add = _internal_add_ctecoltypes(); - // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.ctecoltypes) - return _add; +inline std::string* LoadStmt::release_filename() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.LoadStmt.filename) + return _impl_.filename_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CommonTableExpr::ctecoltypes() const { - // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.ctecoltypes) - return _impl_.ctecoltypes_; +inline void LoadStmt::set_allocated_filename(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.filename_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.filename_.IsDefault()) { + _impl_.filename_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.LoadStmt.filename) } -// repeated .pg_query.Node ctecoltypmods = 12 [json_name = "ctecoltypmods"]; -inline int CommonTableExpr::_internal_ctecoltypmods_size() const { - return _impl_.ctecoltypmods_.size(); -} -inline int CommonTableExpr::ctecoltypmods_size() const { - return _internal_ctecoltypmods_size(); +// ------------------------------------------------------------------- + +// CreatedbStmt + +// string dbname = 1 [json_name = "dbname"]; +inline void CreatedbStmt::clear_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.ClearToEmpty(); } -inline void CommonTableExpr::clear_ctecoltypmods() { - _impl_.ctecoltypmods_.Clear(); +inline const std::string& CreatedbStmt::dbname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatedbStmt.dbname) + return _internal_dbname(); } -inline ::pg_query::Node* CommonTableExpr::mutable_ctecoltypmods(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctecoltypmods) - return _impl_.ctecoltypmods_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void CreatedbStmt::set_dbname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreatedbStmt.dbname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CommonTableExpr::mutable_ctecoltypmods() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.ctecoltypmods) - return &_impl_.ctecoltypmods_; +inline std::string* CreatedbStmt::mutable_dbname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_dbname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreatedbStmt.dbname) + return _s; } -inline const ::pg_query::Node& CommonTableExpr::_internal_ctecoltypmods(int index) const { - return _impl_.ctecoltypmods_.Get(index); +inline const std::string& CreatedbStmt::_internal_dbname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.dbname_.Get(); } -inline const ::pg_query::Node& CommonTableExpr::ctecoltypmods(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctecoltypmods) - return _internal_ctecoltypmods(index); +inline void CreatedbStmt::_internal_set_dbname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(value, GetArena()); } -inline ::pg_query::Node* CommonTableExpr::_internal_add_ctecoltypmods() { - return _impl_.ctecoltypmods_.Add(); +inline std::string* CreatedbStmt::_internal_mutable_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.dbname_.Mutable( GetArena()); } -inline ::pg_query::Node* CommonTableExpr::add_ctecoltypmods() { - ::pg_query::Node* _add = _internal_add_ctecoltypmods(); - // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.ctecoltypmods) - return _add; +inline std::string* CreatedbStmt::release_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreatedbStmt.dbname) + return _impl_.dbname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CommonTableExpr::ctecoltypmods() const { - // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.ctecoltypmods) - return _impl_.ctecoltypmods_; +inline void CreatedbStmt::set_allocated_dbname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.dbname_.IsDefault()) { + _impl_.dbname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreatedbStmt.dbname) } -// repeated .pg_query.Node ctecolcollations = 13 [json_name = "ctecolcollations"]; -inline int CommonTableExpr::_internal_ctecolcollations_size() const { - return _impl_.ctecolcollations_.size(); +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int CreatedbStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int CommonTableExpr::ctecolcollations_size() const { - return _internal_ctecolcollations_size(); +inline int CreatedbStmt::options_size() const { + return _internal_options_size(); } -inline void CommonTableExpr::clear_ctecolcollations() { - _impl_.ctecolcollations_.Clear(); +inline void CreatedbStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline ::pg_query::Node* CommonTableExpr::mutable_ctecolcollations(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.CommonTableExpr.ctecolcollations) - return _impl_.ctecolcollations_.Mutable(index); +inline ::pg_query::Node* CreatedbStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreatedbStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -CommonTableExpr::mutable_ctecolcollations() { - // @@protoc_insertion_point(field_mutable_list:pg_query.CommonTableExpr.ctecolcollations) - return &_impl_.ctecolcollations_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreatedbStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreatedbStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline const ::pg_query::Node& CommonTableExpr::_internal_ctecolcollations(int index) const { - return _impl_.ctecolcollations_.Get(index); +inline const ::pg_query::Node& CreatedbStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatedbStmt.options) + return _internal_options().Get(index); } -inline const ::pg_query::Node& CommonTableExpr::ctecolcollations(int index) const { - // @@protoc_insertion_point(field_get:pg_query.CommonTableExpr.ctecolcollations) - return _internal_ctecolcollations(index); +inline ::pg_query::Node* CreatedbStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreatedbStmt.options) + return _add; } -inline ::pg_query::Node* CommonTableExpr::_internal_add_ctecolcollations() { - return _impl_.ctecolcollations_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreatedbStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreatedbStmt.options) + return _internal_options(); } -inline ::pg_query::Node* CommonTableExpr::add_ctecolcollations() { - ::pg_query::Node* _add = _internal_add_ctecolcollations(); - // @@protoc_insertion_point(field_add:pg_query.CommonTableExpr.ctecolcollations) - return _add; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreatedbStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -CommonTableExpr::ctecolcollations() const { - // @@protoc_insertion_point(field_list:pg_query.CommonTableExpr.ctecolcollations) - return _impl_.ctecolcollations_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreatedbStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } // ------------------------------------------------------------------- -// MergeWhenClause - -// bool matched = 1 [json_name = "matched"]; -inline void MergeWhenClause::clear_matched() { - _impl_.matched_ = false; -} -inline bool MergeWhenClause::_internal_matched() const { - return _impl_.matched_; -} -inline bool MergeWhenClause::matched() const { - // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.matched) - return _internal_matched(); -} -inline void MergeWhenClause::_internal_set_matched(bool value) { - - _impl_.matched_ = value; -} -inline void MergeWhenClause::set_matched(bool value) { - _internal_set_matched(value); - // @@protoc_insertion_point(field_set:pg_query.MergeWhenClause.matched) -} +// AlterDatabaseStmt -// .pg_query.CmdType command_type = 2 [json_name = "commandType"]; -inline void MergeWhenClause::clear_command_type() { - _impl_.command_type_ = 0; -} -inline ::pg_query::CmdType MergeWhenClause::_internal_command_type() const { - return static_cast< ::pg_query::CmdType >(_impl_.command_type_); +// string dbname = 1 [json_name = "dbname"]; +inline void AlterDatabaseStmt::clear_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.ClearToEmpty(); } -inline ::pg_query::CmdType MergeWhenClause::command_type() const { - // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.command_type) - return _internal_command_type(); +inline const std::string& AlterDatabaseStmt::dbname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseStmt.dbname) + return _internal_dbname(); } -inline void MergeWhenClause::_internal_set_command_type(::pg_query::CmdType value) { - - _impl_.command_type_ = value; +template +inline PROTOBUF_ALWAYS_INLINE void AlterDatabaseStmt::set_dbname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterDatabaseStmt.dbname) } -inline void MergeWhenClause::set_command_type(::pg_query::CmdType value) { - _internal_set_command_type(value); - // @@protoc_insertion_point(field_set:pg_query.MergeWhenClause.command_type) +inline std::string* AlterDatabaseStmt::mutable_dbname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_dbname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseStmt.dbname) + return _s; } - -// .pg_query.OverridingKind override = 3 [json_name = "override"]; -inline void MergeWhenClause::clear_override() { - _impl_.override_ = 0; +inline const std::string& AlterDatabaseStmt::_internal_dbname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.dbname_.Get(); } -inline ::pg_query::OverridingKind MergeWhenClause::_internal_override() const { - return static_cast< ::pg_query::OverridingKind >(_impl_.override_); +inline void AlterDatabaseStmt::_internal_set_dbname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(value, GetArena()); } -inline ::pg_query::OverridingKind MergeWhenClause::override() const { - // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.override) - return _internal_override(); +inline std::string* AlterDatabaseStmt::_internal_mutable_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.dbname_.Mutable( GetArena()); } -inline void MergeWhenClause::_internal_set_override(::pg_query::OverridingKind value) { - - _impl_.override_ = value; +inline std::string* AlterDatabaseStmt::release_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterDatabaseStmt.dbname) + return _impl_.dbname_.Release(); } -inline void MergeWhenClause::set_override(::pg_query::OverridingKind value) { - _internal_set_override(value); - // @@protoc_insertion_point(field_set:pg_query.MergeWhenClause.override) +inline void AlterDatabaseStmt::set_allocated_dbname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.dbname_.IsDefault()) { + _impl_.dbname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDatabaseStmt.dbname) } -// .pg_query.Node condition = 4 [json_name = "condition"]; -inline bool MergeWhenClause::_internal_has_condition() const { - return this != internal_default_instance() && _impl_.condition_ != nullptr; -} -inline bool MergeWhenClause::has_condition() const { - return _internal_has_condition(); +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int AlterDatabaseStmt::_internal_options_size() const { + return _internal_options().size(); } -inline void MergeWhenClause::clear_condition() { - if (GetArenaForAllocation() == nullptr && _impl_.condition_ != nullptr) { - delete _impl_.condition_; - } - _impl_.condition_ = nullptr; +inline int AlterDatabaseStmt::options_size() const { + return _internal_options_size(); } -inline const ::pg_query::Node& MergeWhenClause::_internal_condition() const { - const ::pg_query::Node* p = _impl_.condition_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline void AlterDatabaseStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline const ::pg_query::Node& MergeWhenClause::condition() const { - // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.condition) - return _internal_condition(); +inline ::pg_query::Node* AlterDatabaseStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void MergeWhenClause::unsafe_arena_set_allocated_condition( - ::pg_query::Node* condition) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.condition_); - } - _impl_.condition_ = condition; - if (condition) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.MergeWhenClause.condition) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterDatabaseStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterDatabaseStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } -inline ::pg_query::Node* MergeWhenClause::release_condition() { - - ::pg_query::Node* temp = _impl_.condition_; - _impl_.condition_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& AlterDatabaseStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseStmt.options) + return _internal_options().Get(index); } -inline ::pg_query::Node* MergeWhenClause::unsafe_arena_release_condition() { - // @@protoc_insertion_point(field_release:pg_query.MergeWhenClause.condition) - - ::pg_query::Node* temp = _impl_.condition_; - _impl_.condition_ = nullptr; - return temp; +inline ::pg_query::Node* AlterDatabaseStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterDatabaseStmt.options) + return _add; } -inline ::pg_query::Node* MergeWhenClause::_internal_mutable_condition() { - - if (_impl_.condition_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.condition_ = p; - } - return _impl_.condition_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterDatabaseStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterDatabaseStmt.options) + return _internal_options(); } -inline ::pg_query::Node* MergeWhenClause::mutable_condition() { - ::pg_query::Node* _msg = _internal_mutable_condition(); - // @@protoc_insertion_point(field_mutable:pg_query.MergeWhenClause.condition) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterDatabaseStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline void MergeWhenClause::set_allocated_condition(::pg_query::Node* condition) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.condition_; - } - if (condition) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(condition); - if (message_arena != submessage_arena) { - condition = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, condition, submessage_arena); - } - - } else { - - } - _impl_.condition_ = condition; - // @@protoc_insertion_point(field_set_allocated:pg_query.MergeWhenClause.condition) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterDatabaseStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// repeated .pg_query.Node target_list = 5 [json_name = "targetList"]; -inline int MergeWhenClause::_internal_target_list_size() const { - return _impl_.target_list_.size(); -} -inline int MergeWhenClause::target_list_size() const { - return _internal_target_list_size(); -} -inline void MergeWhenClause::clear_target_list() { - _impl_.target_list_.Clear(); -} -inline ::pg_query::Node* MergeWhenClause::mutable_target_list(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.MergeWhenClause.target_list) - return _impl_.target_list_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -MergeWhenClause::mutable_target_list() { - // @@protoc_insertion_point(field_mutable_list:pg_query.MergeWhenClause.target_list) - return &_impl_.target_list_; -} -inline const ::pg_query::Node& MergeWhenClause::_internal_target_list(int index) const { - return _impl_.target_list_.Get(index); -} -inline const ::pg_query::Node& MergeWhenClause::target_list(int index) const { - // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.target_list) - return _internal_target_list(index); -} -inline ::pg_query::Node* MergeWhenClause::_internal_add_target_list() { - return _impl_.target_list_.Add(); -} -inline ::pg_query::Node* MergeWhenClause::add_target_list() { - ::pg_query::Node* _add = _internal_add_target_list(); - // @@protoc_insertion_point(field_add:pg_query.MergeWhenClause.target_list) - return _add; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -MergeWhenClause::target_list() const { - // @@protoc_insertion_point(field_list:pg_query.MergeWhenClause.target_list) - return _impl_.target_list_; -} +// ------------------------------------------------------------------- -// repeated .pg_query.Node values = 6 [json_name = "values"]; -inline int MergeWhenClause::_internal_values_size() const { - return _impl_.values_.size(); -} -inline int MergeWhenClause::values_size() const { - return _internal_values_size(); +// AlterDatabaseRefreshCollStmt + +// string dbname = 1 [json_name = "dbname"]; +inline void AlterDatabaseRefreshCollStmt::clear_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.ClearToEmpty(); } -inline void MergeWhenClause::clear_values() { - _impl_.values_.Clear(); +inline const std::string& AlterDatabaseRefreshCollStmt::dbname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseRefreshCollStmt.dbname) + return _internal_dbname(); } -inline ::pg_query::Node* MergeWhenClause::mutable_values(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.MergeWhenClause.values) - return _impl_.values_.Mutable(index); +template +inline PROTOBUF_ALWAYS_INLINE void AlterDatabaseRefreshCollStmt::set_dbname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterDatabaseRefreshCollStmt.dbname) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -MergeWhenClause::mutable_values() { - // @@protoc_insertion_point(field_mutable_list:pg_query.MergeWhenClause.values) - return &_impl_.values_; +inline std::string* AlterDatabaseRefreshCollStmt::mutable_dbname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_dbname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseRefreshCollStmt.dbname) + return _s; } -inline const ::pg_query::Node& MergeWhenClause::_internal_values(int index) const { - return _impl_.values_.Get(index); +inline const std::string& AlterDatabaseRefreshCollStmt::_internal_dbname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.dbname_.Get(); } -inline const ::pg_query::Node& MergeWhenClause::values(int index) const { - // @@protoc_insertion_point(field_get:pg_query.MergeWhenClause.values) - return _internal_values(index); +inline void AlterDatabaseRefreshCollStmt::_internal_set_dbname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(value, GetArena()); } -inline ::pg_query::Node* MergeWhenClause::_internal_add_values() { - return _impl_.values_.Add(); +inline std::string* AlterDatabaseRefreshCollStmt::_internal_mutable_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.dbname_.Mutable( GetArena()); } -inline ::pg_query::Node* MergeWhenClause::add_values() { - ::pg_query::Node* _add = _internal_add_values(); - // @@protoc_insertion_point(field_add:pg_query.MergeWhenClause.values) - return _add; +inline std::string* AlterDatabaseRefreshCollStmt::release_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterDatabaseRefreshCollStmt.dbname) + return _impl_.dbname_.Release(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -MergeWhenClause::values() const { - // @@protoc_insertion_point(field_list:pg_query.MergeWhenClause.values) - return _impl_.values_; +inline void AlterDatabaseRefreshCollStmt::set_allocated_dbname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.dbname_.IsDefault()) { + _impl_.dbname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDatabaseRefreshCollStmt.dbname) } // ------------------------------------------------------------------- -// RoleSpec +// AlterDatabaseSetStmt -// .pg_query.RoleSpecType roletype = 1 [json_name = "roletype"]; -inline void RoleSpec::clear_roletype() { - _impl_.roletype_ = 0; +// string dbname = 1 [json_name = "dbname"]; +inline void AlterDatabaseSetStmt::clear_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.ClearToEmpty(); } -inline ::pg_query::RoleSpecType RoleSpec::_internal_roletype() const { - return static_cast< ::pg_query::RoleSpecType >(_impl_.roletype_); +inline const std::string& AlterDatabaseSetStmt::dbname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseSetStmt.dbname) + return _internal_dbname(); } -inline ::pg_query::RoleSpecType RoleSpec::roletype() const { - // @@protoc_insertion_point(field_get:pg_query.RoleSpec.roletype) - return _internal_roletype(); +template +inline PROTOBUF_ALWAYS_INLINE void AlterDatabaseSetStmt::set_dbname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterDatabaseSetStmt.dbname) } -inline void RoleSpec::_internal_set_roletype(::pg_query::RoleSpecType value) { - - _impl_.roletype_ = value; +inline std::string* AlterDatabaseSetStmt::mutable_dbname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_dbname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseSetStmt.dbname) + return _s; } -inline void RoleSpec::set_roletype(::pg_query::RoleSpecType value) { - _internal_set_roletype(value); - // @@protoc_insertion_point(field_set:pg_query.RoleSpec.roletype) +inline const std::string& AlterDatabaseSetStmt::_internal_dbname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.dbname_.Get(); } - -// string rolename = 2 [json_name = "rolename"]; -inline void RoleSpec::clear_rolename() { - _impl_.rolename_.ClearToEmpty(); +inline void AlterDatabaseSetStmt::_internal_set_dbname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(value, GetArena()); } -inline const std::string& RoleSpec::rolename() const { - // @@protoc_insertion_point(field_get:pg_query.RoleSpec.rolename) - return _internal_rolename(); +inline std::string* AlterDatabaseSetStmt::_internal_mutable_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.dbname_.Mutable( GetArena()); } -template -inline PROTOBUF_ALWAYS_INLINE -void RoleSpec::set_rolename(ArgT0&& arg0, ArgT... args) { - - _impl_.rolename_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.RoleSpec.rolename) +inline std::string* AlterDatabaseSetStmt::release_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterDatabaseSetStmt.dbname) + return _impl_.dbname_.Release(); } -inline std::string* RoleSpec::mutable_rolename() { - std::string* _s = _internal_mutable_rolename(); - // @@protoc_insertion_point(field_mutable:pg_query.RoleSpec.rolename) - return _s; +inline void AlterDatabaseSetStmt::set_allocated_dbname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.dbname_.IsDefault()) { + _impl_.dbname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDatabaseSetStmt.dbname) } -inline const std::string& RoleSpec::_internal_rolename() const { - return _impl_.rolename_.Get(); + +// .pg_query.VariableSetStmt setstmt = 2 [json_name = "setstmt"]; +inline bool AlterDatabaseSetStmt::has_setstmt() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.setstmt_ != nullptr); + return value; } -inline void RoleSpec::_internal_set_rolename(const std::string& value) { - - _impl_.rolename_.Set(value, GetArenaForAllocation()); +inline void AlterDatabaseSetStmt::clear_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.setstmt_ != nullptr) _impl_.setstmt_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* RoleSpec::_internal_mutable_rolename() { - - return _impl_.rolename_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::VariableSetStmt& AlterDatabaseSetStmt::_internal_setstmt() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::VariableSetStmt* p = _impl_.setstmt_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_VariableSetStmt_default_instance_); } -inline std::string* RoleSpec::release_rolename() { - // @@protoc_insertion_point(field_release:pg_query.RoleSpec.rolename) - return _impl_.rolename_.Release(); +inline const ::pg_query::VariableSetStmt& AlterDatabaseSetStmt::setstmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterDatabaseSetStmt.setstmt) + return _internal_setstmt(); } -inline void RoleSpec::set_allocated_rolename(std::string* rolename) { - if (rolename != nullptr) { - - } else { - +inline void AlterDatabaseSetStmt::unsafe_arena_set_allocated_setstmt(::pg_query::VariableSetStmt* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.setstmt_); } - _impl_.rolename_.SetAllocated(rolename, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.rolename_.IsDefault()) { - _impl_.rolename_.Set("", GetArenaForAllocation()); + _impl_.setstmt_ = reinterpret_cast<::pg_query::VariableSetStmt*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.RoleSpec.rolename) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterDatabaseSetStmt.setstmt) } +inline ::pg_query::VariableSetStmt* AlterDatabaseSetStmt::release_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// int32 location = 3 [json_name = "location"]; -inline void RoleSpec::clear_location() { - _impl_.location_ = 0; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::VariableSetStmt* released = _impl_.setstmt_; + _impl_.setstmt_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline int32_t RoleSpec::_internal_location() const { - return _impl_.location_; +inline ::pg_query::VariableSetStmt* AlterDatabaseSetStmt::unsafe_arena_release_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterDatabaseSetStmt.setstmt) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::VariableSetStmt* temp = _impl_.setstmt_; + _impl_.setstmt_ = nullptr; + return temp; } -inline int32_t RoleSpec::location() const { - // @@protoc_insertion_point(field_get:pg_query.RoleSpec.location) - return _internal_location(); +inline ::pg_query::VariableSetStmt* AlterDatabaseSetStmt::_internal_mutable_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.setstmt_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::VariableSetStmt>(GetArena()); + _impl_.setstmt_ = reinterpret_cast<::pg_query::VariableSetStmt*>(p); + } + return _impl_.setstmt_; } -inline void RoleSpec::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::VariableSetStmt* AlterDatabaseSetStmt::mutable_setstmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::VariableSetStmt* _msg = _internal_mutable_setstmt(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterDatabaseSetStmt.setstmt) + return _msg; } -inline void RoleSpec::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.RoleSpec.location) +inline void AlterDatabaseSetStmt::set_allocated_setstmt(::pg_query::VariableSetStmt* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::VariableSetStmt*>(_impl_.setstmt_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::VariableSetStmt*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.setstmt_ = reinterpret_cast<::pg_query::VariableSetStmt*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterDatabaseSetStmt.setstmt) } // ------------------------------------------------------------------- -// TriggerTransition +// DropdbStmt -// string name = 1 [json_name = "name"]; -inline void TriggerTransition::clear_name() { - _impl_.name_.ClearToEmpty(); +// string dbname = 1 [json_name = "dbname"]; +inline void DropdbStmt::clear_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.ClearToEmpty(); } -inline const std::string& TriggerTransition::name() const { - // @@protoc_insertion_point(field_get:pg_query.TriggerTransition.name) - return _internal_name(); +inline const std::string& DropdbStmt::dbname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DropdbStmt.dbname) + return _internal_dbname(); } -template -inline PROTOBUF_ALWAYS_INLINE -void TriggerTransition::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.TriggerTransition.name) +template +inline PROTOBUF_ALWAYS_INLINE void DropdbStmt::set_dbname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.DropdbStmt.dbname) } -inline std::string* TriggerTransition::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.TriggerTransition.name) +inline std::string* DropdbStmt::mutable_dbname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_dbname(); + // @@protoc_insertion_point(field_mutable:pg_query.DropdbStmt.dbname) return _s; } -inline const std::string& TriggerTransition::_internal_name() const { - return _impl_.name_.Get(); +inline const std::string& DropdbStmt::_internal_dbname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.dbname_.Get(); } -inline void TriggerTransition::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void DropdbStmt::_internal_set_dbname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.dbname_.Set(value, GetArena()); } -inline std::string* TriggerTransition::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline std::string* DropdbStmt::_internal_mutable_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.dbname_.Mutable( GetArena()); } -inline std::string* TriggerTransition::release_name() { - // @@protoc_insertion_point(field_release:pg_query.TriggerTransition.name) - return _impl_.name_.Release(); +inline std::string* DropdbStmt::release_dbname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DropdbStmt.dbname) + return _impl_.dbname_.Release(); } -inline void TriggerTransition::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.TriggerTransition.name) +inline void DropdbStmt::set_allocated_dbname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dbname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.dbname_.IsDefault()) { + _impl_.dbname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.DropdbStmt.dbname) } -// bool is_new = 2 [json_name = "isNew"]; -inline void TriggerTransition::clear_is_new() { - _impl_.is_new_ = false; +// bool missing_ok = 2 [json_name = "missing_ok"]; +inline void DropdbStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; } -inline bool TriggerTransition::_internal_is_new() const { - return _impl_.is_new_; +inline bool DropdbStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.DropdbStmt.missing_ok) + return _internal_missing_ok(); } -inline bool TriggerTransition::is_new() const { - // @@protoc_insertion_point(field_get:pg_query.TriggerTransition.is_new) - return _internal_is_new(); +inline void DropdbStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.DropdbStmt.missing_ok) } -inline void TriggerTransition::_internal_set_is_new(bool value) { - - _impl_.is_new_ = value; +inline bool DropdbStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; } -inline void TriggerTransition::set_is_new(bool value) { - _internal_set_is_new(value); - // @@protoc_insertion_point(field_set:pg_query.TriggerTransition.is_new) +inline void DropdbStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; } -// bool is_table = 3 [json_name = "isTable"]; -inline void TriggerTransition::clear_is_table() { - _impl_.is_table_ = false; +// repeated .pg_query.Node options = 3 [json_name = "options"]; +inline int DropdbStmt::_internal_options_size() const { + return _internal_options().size(); } -inline bool TriggerTransition::_internal_is_table() const { - return _impl_.is_table_; +inline int DropdbStmt::options_size() const { + return _internal_options_size(); } -inline bool TriggerTransition::is_table() const { - // @@protoc_insertion_point(field_get:pg_query.TriggerTransition.is_table) - return _internal_is_table(); +inline void DropdbStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void TriggerTransition::_internal_set_is_table(bool value) { - - _impl_.is_table_ = value; +inline ::pg_query::Node* DropdbStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DropdbStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void TriggerTransition::set_is_table(bool value) { - _internal_set_is_table(value); - // @@protoc_insertion_point(field_set:pg_query.TriggerTransition.is_table) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DropdbStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DropdbStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& DropdbStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DropdbStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* DropdbStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DropdbStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DropdbStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DropdbStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DropdbStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DropdbStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } // ------------------------------------------------------------------- -// PartitionElem +// AlterSystemStmt -// string name = 1 [json_name = "name"]; -inline void PartitionElem::clear_name() { - _impl_.name_.ClearToEmpty(); +// .pg_query.VariableSetStmt setstmt = 1 [json_name = "setstmt"]; +inline bool AlterSystemStmt::has_setstmt() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.setstmt_ != nullptr); + return value; } -inline const std::string& PartitionElem::name() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionElem.name) - return _internal_name(); +inline void AlterSystemStmt::clear_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.setstmt_ != nullptr) _impl_.setstmt_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -template -inline PROTOBUF_ALWAYS_INLINE -void PartitionElem::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.PartitionElem.name) +inline const ::pg_query::VariableSetStmt& AlterSystemStmt::_internal_setstmt() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::VariableSetStmt* p = _impl_.setstmt_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_VariableSetStmt_default_instance_); } -inline std::string* PartitionElem::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.PartitionElem.name) - return _s; +inline const ::pg_query::VariableSetStmt& AlterSystemStmt::setstmt() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterSystemStmt.setstmt) + return _internal_setstmt(); } -inline const std::string& PartitionElem::_internal_name() const { - return _impl_.name_.Get(); +inline void AlterSystemStmt::unsafe_arena_set_allocated_setstmt(::pg_query::VariableSetStmt* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.setstmt_); + } + _impl_.setstmt_ = reinterpret_cast<::pg_query::VariableSetStmt*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.AlterSystemStmt.setstmt) } -inline void PartitionElem::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline ::pg_query::VariableSetStmt* AlterSystemStmt::release_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::VariableSetStmt* released = _impl_.setstmt_; + _impl_.setstmt_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* PartitionElem::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline ::pg_query::VariableSetStmt* AlterSystemStmt::unsafe_arena_release_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterSystemStmt.setstmt) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::VariableSetStmt* temp = _impl_.setstmt_; + _impl_.setstmt_ = nullptr; + return temp; } -inline std::string* PartitionElem::release_name() { - // @@protoc_insertion_point(field_release:pg_query.PartitionElem.name) - return _impl_.name_.Release(); +inline ::pg_query::VariableSetStmt* AlterSystemStmt::_internal_mutable_setstmt() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.setstmt_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::VariableSetStmt>(GetArena()); + _impl_.setstmt_ = reinterpret_cast<::pg_query::VariableSetStmt*>(p); + } + return _impl_.setstmt_; } -inline void PartitionElem::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - +inline ::pg_query::VariableSetStmt* AlterSystemStmt::mutable_setstmt() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::VariableSetStmt* _msg = _internal_mutable_setstmt(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterSystemStmt.setstmt) + return _msg; +} +inline void AlterSystemStmt::set_allocated_setstmt(::pg_query::VariableSetStmt* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::VariableSetStmt*>(_impl_.setstmt_); } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::VariableSetStmt*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionElem.name) -} -// .pg_query.Node expr = 2 [json_name = "expr"]; -inline bool PartitionElem::_internal_has_expr() const { - return this != internal_default_instance() && _impl_.expr_ != nullptr; + _impl_.setstmt_ = reinterpret_cast<::pg_query::VariableSetStmt*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterSystemStmt.setstmt) } -inline bool PartitionElem::has_expr() const { - return _internal_has_expr(); + +// ------------------------------------------------------------------- + +// ClusterStmt + +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool ClusterStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline void PartitionElem::clear_expr() { - if (GetArenaForAllocation() == nullptr && _impl_.expr_ != nullptr) { - delete _impl_.expr_; - } - _impl_.expr_ = nullptr; +inline void ClusterStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& PartitionElem::_internal_expr() const { - const ::pg_query::Node* p = _impl_.expr_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::RangeVar& ClusterStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::Node& PartitionElem::expr() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionElem.expr) - return _internal_expr(); +inline const ::pg_query::RangeVar& ClusterStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ClusterStmt.relation) + return _internal_relation(); } -inline void PartitionElem::unsafe_arena_set_allocated_expr( - ::pg_query::Node* expr) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.expr_); +inline void ClusterStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.expr_ = expr; - if (expr) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PartitionElem.expr) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ClusterStmt.relation) } -inline ::pg_query::Node* PartitionElem::release_expr() { - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; +inline ::pg_query::RangeVar* ClusterStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* PartitionElem::unsafe_arena_release_expr() { - // @@protoc_insertion_point(field_release:pg_query.PartitionElem.expr) - - ::pg_query::Node* temp = _impl_.expr_; - _impl_.expr_ = nullptr; +inline ::pg_query::RangeVar* ClusterStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ClusterStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::Node* PartitionElem::_internal_mutable_expr() { - - if (_impl_.expr_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.expr_ = p; +inline ::pg_query::RangeVar* ClusterStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.expr_; + return _impl_.relation_; } -inline ::pg_query::Node* PartitionElem::mutable_expr() { - ::pg_query::Node* _msg = _internal_mutable_expr(); - // @@protoc_insertion_point(field_mutable:pg_query.PartitionElem.expr) +inline ::pg_query::RangeVar* ClusterStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.ClusterStmt.relation) return _msg; } -inline void PartitionElem::set_allocated_expr(::pg_query::Node* expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ClusterStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.expr_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (expr) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(expr); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - expr = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, expr, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.expr_ = expr; - // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionElem.expr) + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ClusterStmt.relation) } -// repeated .pg_query.Node collation = 3 [json_name = "collation"]; -inline int PartitionElem::_internal_collation_size() const { - return _impl_.collation_.size(); +// string indexname = 2 [json_name = "indexname"]; +inline void ClusterStmt::clear_indexname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indexname_.ClearToEmpty(); } -inline int PartitionElem::collation_size() const { - return _internal_collation_size(); +inline const std::string& ClusterStmt::indexname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ClusterStmt.indexname) + return _internal_indexname(); } -inline void PartitionElem::clear_collation() { - _impl_.collation_.Clear(); +template +inline PROTOBUF_ALWAYS_INLINE void ClusterStmt::set_indexname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indexname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ClusterStmt.indexname) } -inline ::pg_query::Node* PartitionElem::mutable_collation(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.PartitionElem.collation) - return _impl_.collation_.Mutable(index); +inline std::string* ClusterStmt::mutable_indexname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_indexname(); + // @@protoc_insertion_point(field_mutable:pg_query.ClusterStmt.indexname) + return _s; } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -PartitionElem::mutable_collation() { - // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionElem.collation) - return &_impl_.collation_; +inline const std::string& ClusterStmt::_internal_indexname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.indexname_.Get(); } -inline const ::pg_query::Node& PartitionElem::_internal_collation(int index) const { - return _impl_.collation_.Get(index); +inline void ClusterStmt::_internal_set_indexname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.indexname_.Set(value, GetArena()); } -inline const ::pg_query::Node& PartitionElem::collation(int index) const { - // @@protoc_insertion_point(field_get:pg_query.PartitionElem.collation) - return _internal_collation(index); +inline std::string* ClusterStmt::_internal_mutable_indexname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.indexname_.Mutable( GetArena()); } -inline ::pg_query::Node* PartitionElem::_internal_add_collation() { - return _impl_.collation_.Add(); +inline std::string* ClusterStmt::release_indexname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ClusterStmt.indexname) + return _impl_.indexname_.Release(); } -inline ::pg_query::Node* PartitionElem::add_collation() { - ::pg_query::Node* _add = _internal_add_collation(); - // @@protoc_insertion_point(field_add:pg_query.PartitionElem.collation) +inline void ClusterStmt::set_allocated_indexname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.indexname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.indexname_.IsDefault()) { + _impl_.indexname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ClusterStmt.indexname) +} + +// repeated .pg_query.Node params = 3 [json_name = "params"]; +inline int ClusterStmt::_internal_params_size() const { + return _internal_params().size(); +} +inline int ClusterStmt::params_size() const { + return _internal_params_size(); +} +inline void ClusterStmt::clear_params() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.params_.Clear(); +} +inline ::pg_query::Node* ClusterStmt::mutable_params(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ClusterStmt.params) + return _internal_mutable_params()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ClusterStmt::mutable_params() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ClusterStmt.params) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_params(); +} +inline const ::pg_query::Node& ClusterStmt::params(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ClusterStmt.params) + return _internal_params().Get(index); +} +inline ::pg_query::Node* ClusterStmt::add_params() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_params()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ClusterStmt.params) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -PartitionElem::collation() const { - // @@protoc_insertion_point(field_list:pg_query.PartitionElem.collation) - return _impl_.collation_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ClusterStmt::params() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ClusterStmt.params) + return _internal_params(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ClusterStmt::_internal_params() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.params_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ClusterStmt::_internal_mutable_params() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.params_; } -// repeated .pg_query.Node opclass = 4 [json_name = "opclass"]; -inline int PartitionElem::_internal_opclass_size() const { - return _impl_.opclass_.size(); +// ------------------------------------------------------------------- + +// VacuumStmt + +// repeated .pg_query.Node options = 1 [json_name = "options"]; +inline int VacuumStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int PartitionElem::opclass_size() const { - return _internal_opclass_size(); +inline int VacuumStmt::options_size() const { + return _internal_options_size(); } -inline void PartitionElem::clear_opclass() { - _impl_.opclass_.Clear(); +inline void VacuumStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline ::pg_query::Node* PartitionElem::mutable_opclass(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.PartitionElem.opclass) - return _impl_.opclass_.Mutable(index); +inline ::pg_query::Node* VacuumStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.VacuumStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -PartitionElem::mutable_opclass() { - // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionElem.opclass) - return &_impl_.opclass_; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* VacuumStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.VacuumStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& VacuumStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.VacuumStmt.options) + return _internal_options().Get(index); } -inline const ::pg_query::Node& PartitionElem::_internal_opclass(int index) const { - return _impl_.opclass_.Get(index); +inline ::pg_query::Node* VacuumStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.VacuumStmt.options) + return _add; } -inline const ::pg_query::Node& PartitionElem::opclass(int index) const { - // @@protoc_insertion_point(field_get:pg_query.PartitionElem.opclass) - return _internal_opclass(index); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& VacuumStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.VacuumStmt.options) + return _internal_options(); } -inline ::pg_query::Node* PartitionElem::_internal_add_opclass() { - return _impl_.opclass_.Add(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +VacuumStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline ::pg_query::Node* PartitionElem::add_opclass() { - ::pg_query::Node* _add = _internal_add_opclass(); - // @@protoc_insertion_point(field_add:pg_query.PartitionElem.opclass) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +VacuumStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} + +// repeated .pg_query.Node rels = 2 [json_name = "rels"]; +inline int VacuumStmt::_internal_rels_size() const { + return _internal_rels().size(); +} +inline int VacuumStmt::rels_size() const { + return _internal_rels_size(); +} +inline void VacuumStmt::clear_rels() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.rels_.Clear(); +} +inline ::pg_query::Node* VacuumStmt::mutable_rels(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.VacuumStmt.rels) + return _internal_mutable_rels()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* VacuumStmt::mutable_rels() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.VacuumStmt.rels) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_rels(); +} +inline const ::pg_query::Node& VacuumStmt::rels(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.VacuumStmt.rels) + return _internal_rels().Get(index); +} +inline ::pg_query::Node* VacuumStmt::add_rels() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_rels()->Add(); + // @@protoc_insertion_point(field_add:pg_query.VacuumStmt.rels) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -PartitionElem::opclass() const { - // @@protoc_insertion_point(field_list:pg_query.PartitionElem.opclass) - return _impl_.opclass_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& VacuumStmt::rels() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.VacuumStmt.rels) + return _internal_rels(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +VacuumStmt::_internal_rels() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.rels_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +VacuumStmt::_internal_mutable_rels() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.rels_; } -// int32 location = 5 [json_name = "location"]; -inline void PartitionElem::clear_location() { - _impl_.location_ = 0; +// bool is_vacuumcmd = 3 [json_name = "is_vacuumcmd"]; +inline void VacuumStmt::clear_is_vacuumcmd() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_vacuumcmd_ = false; } -inline int32_t PartitionElem::_internal_location() const { - return _impl_.location_; +inline bool VacuumStmt::is_vacuumcmd() const { + // @@protoc_insertion_point(field_get:pg_query.VacuumStmt.is_vacuumcmd) + return _internal_is_vacuumcmd(); } -inline int32_t PartitionElem::location() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionElem.location) - return _internal_location(); +inline void VacuumStmt::set_is_vacuumcmd(bool value) { + _internal_set_is_vacuumcmd(value); + // @@protoc_insertion_point(field_set:pg_query.VacuumStmt.is_vacuumcmd) } -inline void PartitionElem::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline bool VacuumStmt::_internal_is_vacuumcmd() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_vacuumcmd_; } -inline void PartitionElem::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.PartitionElem.location) +inline void VacuumStmt::_internal_set_is_vacuumcmd(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_vacuumcmd_ = value; } // ------------------------------------------------------------------- -// PartitionSpec +// VacuumRelation -// string strategy = 1 [json_name = "strategy"]; -inline void PartitionSpec::clear_strategy() { - _impl_.strategy_.ClearToEmpty(); +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool VacuumRelation::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; } -inline const std::string& PartitionSpec::strategy() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionSpec.strategy) - return _internal_strategy(); +inline void VacuumRelation::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -template -inline PROTOBUF_ALWAYS_INLINE -void PartitionSpec::set_strategy(ArgT0&& arg0, ArgT... args) { - - _impl_.strategy_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.PartitionSpec.strategy) +inline const ::pg_query::RangeVar& VacuumRelation::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline std::string* PartitionSpec::mutable_strategy() { - std::string* _s = _internal_mutable_strategy(); - // @@protoc_insertion_point(field_mutable:pg_query.PartitionSpec.strategy) - return _s; +inline const ::pg_query::RangeVar& VacuumRelation::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.VacuumRelation.relation) + return _internal_relation(); } -inline const std::string& PartitionSpec::_internal_strategy() const { - return _impl_.strategy_.Get(); +inline void VacuumRelation::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.VacuumRelation.relation) } -inline void PartitionSpec::_internal_set_strategy(const std::string& value) { - - _impl_.strategy_.Set(value, GetArenaForAllocation()); +inline ::pg_query::RangeVar* VacuumRelation::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline std::string* PartitionSpec::_internal_mutable_strategy() { - - return _impl_.strategy_.Mutable(GetArenaForAllocation()); +inline ::pg_query::RangeVar* VacuumRelation::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.VacuumRelation.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; } -inline std::string* PartitionSpec::release_strategy() { - // @@protoc_insertion_point(field_release:pg_query.PartitionSpec.strategy) - return _impl_.strategy_.Release(); +inline ::pg_query::RangeVar* VacuumRelation::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; } -inline void PartitionSpec::set_allocated_strategy(std::string* strategy) { - if (strategy != nullptr) { - - } else { - +inline ::pg_query::RangeVar* VacuumRelation::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.VacuumRelation.relation) + return _msg; +} +inline void VacuumRelation::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - _impl_.strategy_.SetAllocated(strategy, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.strategy_.IsDefault()) { - _impl_.strategy_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionSpec.strategy) -} -// repeated .pg_query.Node part_params = 2 [json_name = "partParams"]; -inline int PartitionSpec::_internal_part_params_size() const { - return _impl_.part_params_.size(); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.VacuumRelation.relation) } -inline int PartitionSpec::part_params_size() const { - return _internal_part_params_size(); + +// uint32 oid = 2 [json_name = "oid"]; +inline void VacuumRelation::clear_oid() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.oid_ = 0u; } -inline void PartitionSpec::clear_part_params() { - _impl_.part_params_.Clear(); +inline ::uint32_t VacuumRelation::oid() const { + // @@protoc_insertion_point(field_get:pg_query.VacuumRelation.oid) + return _internal_oid(); } -inline ::pg_query::Node* PartitionSpec::mutable_part_params(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.PartitionSpec.part_params) - return _impl_.part_params_.Mutable(index); +inline void VacuumRelation::set_oid(::uint32_t value) { + _internal_set_oid(value); + // @@protoc_insertion_point(field_set:pg_query.VacuumRelation.oid) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -PartitionSpec::mutable_part_params() { - // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionSpec.part_params) - return &_impl_.part_params_; +inline ::uint32_t VacuumRelation::_internal_oid() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.oid_; } -inline const ::pg_query::Node& PartitionSpec::_internal_part_params(int index) const { - return _impl_.part_params_.Get(index); +inline void VacuumRelation::_internal_set_oid(::uint32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.oid_ = value; } -inline const ::pg_query::Node& PartitionSpec::part_params(int index) const { - // @@protoc_insertion_point(field_get:pg_query.PartitionSpec.part_params) - return _internal_part_params(index); + +// repeated .pg_query.Node va_cols = 3 [json_name = "va_cols"]; +inline int VacuumRelation::_internal_va_cols_size() const { + return _internal_va_cols().size(); } -inline ::pg_query::Node* PartitionSpec::_internal_add_part_params() { - return _impl_.part_params_.Add(); +inline int VacuumRelation::va_cols_size() const { + return _internal_va_cols_size(); } -inline ::pg_query::Node* PartitionSpec::add_part_params() { - ::pg_query::Node* _add = _internal_add_part_params(); - // @@protoc_insertion_point(field_add:pg_query.PartitionSpec.part_params) - return _add; +inline void VacuumRelation::clear_va_cols() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.va_cols_.Clear(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -PartitionSpec::part_params() const { - // @@protoc_insertion_point(field_list:pg_query.PartitionSpec.part_params) - return _impl_.part_params_; +inline ::pg_query::Node* VacuumRelation::mutable_va_cols(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.VacuumRelation.va_cols) + return _internal_mutable_va_cols()->Mutable(index); } - -// int32 location = 3 [json_name = "location"]; -inline void PartitionSpec::clear_location() { - _impl_.location_ = 0; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* VacuumRelation::mutable_va_cols() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.VacuumRelation.va_cols) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_va_cols(); } -inline int32_t PartitionSpec::_internal_location() const { - return _impl_.location_; +inline const ::pg_query::Node& VacuumRelation::va_cols(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.VacuumRelation.va_cols) + return _internal_va_cols().Get(index); } -inline int32_t PartitionSpec::location() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionSpec.location) - return _internal_location(); +inline ::pg_query::Node* VacuumRelation::add_va_cols() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_va_cols()->Add(); + // @@protoc_insertion_point(field_add:pg_query.VacuumRelation.va_cols) + return _add; } -inline void PartitionSpec::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& VacuumRelation::va_cols() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.VacuumRelation.va_cols) + return _internal_va_cols(); } -inline void PartitionSpec::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.PartitionSpec.location) +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +VacuumRelation::_internal_va_cols() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.va_cols_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +VacuumRelation::_internal_mutable_va_cols() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.va_cols_; } // ------------------------------------------------------------------- -// PartitionBoundSpec +// ExplainStmt -// string strategy = 1 [json_name = "strategy"]; -inline void PartitionBoundSpec::clear_strategy() { - _impl_.strategy_.ClearToEmpty(); -} -inline const std::string& PartitionBoundSpec::strategy() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.strategy) - return _internal_strategy(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void PartitionBoundSpec::set_strategy(ArgT0&& arg0, ArgT... args) { - - _impl_.strategy_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.strategy) -} -inline std::string* PartitionBoundSpec::mutable_strategy() { - std::string* _s = _internal_mutable_strategy(); - // @@protoc_insertion_point(field_mutable:pg_query.PartitionBoundSpec.strategy) - return _s; -} -inline const std::string& PartitionBoundSpec::_internal_strategy() const { - return _impl_.strategy_.Get(); +// .pg_query.Node query = 1 [json_name = "query"]; +inline bool ExplainStmt::has_query() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.query_ != nullptr); + return value; } -inline void PartitionBoundSpec::_internal_set_strategy(const std::string& value) { - - _impl_.strategy_.Set(value, GetArenaForAllocation()); +inline void ExplainStmt::clear_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.query_ != nullptr) _impl_.query_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline std::string* PartitionBoundSpec::_internal_mutable_strategy() { - - return _impl_.strategy_.Mutable(GetArenaForAllocation()); +inline const ::pg_query::Node& ExplainStmt::_internal_query() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.query_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline std::string* PartitionBoundSpec::release_strategy() { - // @@protoc_insertion_point(field_release:pg_query.PartitionBoundSpec.strategy) - return _impl_.strategy_.Release(); +inline const ::pg_query::Node& ExplainStmt::query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ExplainStmt.query) + return _internal_query(); } -inline void PartitionBoundSpec::set_allocated_strategy(std::string* strategy) { - if (strategy != nullptr) { - - } else { - +inline void ExplainStmt::unsafe_arena_set_allocated_query(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.query_); } - _impl_.strategy_.SetAllocated(strategy, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.strategy_.IsDefault()) { - _impl_.strategy_.Set("", GetArenaForAllocation()); + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionBoundSpec.strategy) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ExplainStmt.query) } +inline ::pg_query::Node* ExplainStmt::release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool is_default = 2 [json_name = "is_default"]; -inline void PartitionBoundSpec::clear_is_default() { - _impl_.is_default_ = false; + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.query_; + _impl_.query_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool PartitionBoundSpec::_internal_is_default() const { - return _impl_.is_default_; +inline ::pg_query::Node* ExplainStmt::unsafe_arena_release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ExplainStmt.query) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.query_; + _impl_.query_ = nullptr; + return temp; } -inline bool PartitionBoundSpec::is_default() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.is_default) - return _internal_is_default(); +inline ::pg_query::Node* ExplainStmt::_internal_mutable_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.query_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.query_; } -inline void PartitionBoundSpec::_internal_set_is_default(bool value) { - - _impl_.is_default_ = value; +inline ::pg_query::Node* ExplainStmt::mutable_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_query(); + // @@protoc_insertion_point(field_mutable:pg_query.ExplainStmt.query) + return _msg; } -inline void PartitionBoundSpec::set_is_default(bool value) { - _internal_set_is_default(value); - // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.is_default) +inline void ExplainStmt::set_allocated_query(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.query_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ExplainStmt.query) } -// int32 modulus = 3 [json_name = "modulus"]; -inline void PartitionBoundSpec::clear_modulus() { - _impl_.modulus_ = 0; +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int ExplainStmt::_internal_options_size() const { + return _internal_options().size(); } -inline int32_t PartitionBoundSpec::_internal_modulus() const { - return _impl_.modulus_; +inline int ExplainStmt::options_size() const { + return _internal_options_size(); } -inline int32_t PartitionBoundSpec::modulus() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.modulus) - return _internal_modulus(); +inline void ExplainStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); } -inline void PartitionBoundSpec::_internal_set_modulus(int32_t value) { - - _impl_.modulus_ = value; +inline ::pg_query::Node* ExplainStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ExplainStmt.options) + return _internal_mutable_options()->Mutable(index); } -inline void PartitionBoundSpec::set_modulus(int32_t value) { - _internal_set_modulus(value); - // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.modulus) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ExplainStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ExplainStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); } - -// int32 remainder = 4 [json_name = "remainder"]; -inline void PartitionBoundSpec::clear_remainder() { - _impl_.remainder_ = 0; +inline const ::pg_query::Node& ExplainStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ExplainStmt.options) + return _internal_options().Get(index); } -inline int32_t PartitionBoundSpec::_internal_remainder() const { - return _impl_.remainder_; +inline ::pg_query::Node* ExplainStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ExplainStmt.options) + return _add; } -inline int32_t PartitionBoundSpec::remainder() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.remainder) - return _internal_remainder(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ExplainStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ExplainStmt.options) + return _internal_options(); } -inline void PartitionBoundSpec::_internal_set_remainder(int32_t value) { - - _impl_.remainder_ = value; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ExplainStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; } -inline void PartitionBoundSpec::set_remainder(int32_t value) { - _internal_set_remainder(value); - // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.remainder) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ExplainStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; } -// repeated .pg_query.Node listdatums = 5 [json_name = "listdatums"]; -inline int PartitionBoundSpec::_internal_listdatums_size() const { - return _impl_.listdatums_.size(); +// ------------------------------------------------------------------- + +// CreateTableAsStmt + +// .pg_query.Node query = 1 [json_name = "query"]; +inline bool CreateTableAsStmt::has_query() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.query_ != nullptr); + return value; } -inline int PartitionBoundSpec::listdatums_size() const { - return _internal_listdatums_size(); +inline void CreateTableAsStmt::clear_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.query_ != nullptr) _impl_.query_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline void PartitionBoundSpec::clear_listdatums() { - _impl_.listdatums_.Clear(); +inline const ::pg_query::Node& CreateTableAsStmt::_internal_query() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.query_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); } -inline ::pg_query::Node* PartitionBoundSpec::mutable_listdatums(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.PartitionBoundSpec.listdatums) - return _impl_.listdatums_.Mutable(index); +inline const ::pg_query::Node& CreateTableAsStmt::query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.query) + return _internal_query(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -PartitionBoundSpec::mutable_listdatums() { - // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionBoundSpec.listdatums) - return &_impl_.listdatums_; +inline void CreateTableAsStmt::unsafe_arena_set_allocated_query(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.query_); + } + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTableAsStmt.query) } -inline const ::pg_query::Node& PartitionBoundSpec::_internal_listdatums(int index) const { - return _impl_.listdatums_.Get(index); +inline ::pg_query::Node* CreateTableAsStmt::release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.query_; + _impl_.query_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& PartitionBoundSpec::listdatums(int index) const { - // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.listdatums) - return _internal_listdatums(index); +inline ::pg_query::Node* CreateTableAsStmt::unsafe_arena_release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTableAsStmt.query) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.query_; + _impl_.query_ = nullptr; + return temp; } -inline ::pg_query::Node* PartitionBoundSpec::_internal_add_listdatums() { - return _impl_.listdatums_.Add(); +inline ::pg_query::Node* CreateTableAsStmt::_internal_mutable_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.query_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.query_; } -inline ::pg_query::Node* PartitionBoundSpec::add_listdatums() { - ::pg_query::Node* _add = _internal_add_listdatums(); - // @@protoc_insertion_point(field_add:pg_query.PartitionBoundSpec.listdatums) - return _add; +inline ::pg_query::Node* CreateTableAsStmt::mutable_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_query(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTableAsStmt.query) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -PartitionBoundSpec::listdatums() const { - // @@protoc_insertion_point(field_list:pg_query.PartitionBoundSpec.listdatums) - return _impl_.listdatums_; +inline void CreateTableAsStmt::set_allocated_query(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.query_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableAsStmt.query) } -// repeated .pg_query.Node lowerdatums = 6 [json_name = "lowerdatums"]; -inline int PartitionBoundSpec::_internal_lowerdatums_size() const { - return _impl_.lowerdatums_.size(); +// .pg_query.IntoClause into = 2 [json_name = "into"]; +inline bool CreateTableAsStmt::has_into() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.into_ != nullptr); + return value; } -inline int PartitionBoundSpec::lowerdatums_size() const { - return _internal_lowerdatums_size(); +inline void CreateTableAsStmt::clear_into() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.into_ != nullptr) _impl_.into_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline void PartitionBoundSpec::clear_lowerdatums() { - _impl_.lowerdatums_.Clear(); +inline const ::pg_query::IntoClause& CreateTableAsStmt::_internal_into() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::IntoClause* p = _impl_.into_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_IntoClause_default_instance_); } -inline ::pg_query::Node* PartitionBoundSpec::mutable_lowerdatums(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.PartitionBoundSpec.lowerdatums) - return _impl_.lowerdatums_.Mutable(index); +inline const ::pg_query::IntoClause& CreateTableAsStmt::into() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.into) + return _internal_into(); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -PartitionBoundSpec::mutable_lowerdatums() { - // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionBoundSpec.lowerdatums) - return &_impl_.lowerdatums_; +inline void CreateTableAsStmt::unsafe_arena_set_allocated_into(::pg_query::IntoClause* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.into_); + } + _impl_.into_ = reinterpret_cast<::pg_query::IntoClause*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTableAsStmt.into) } -inline const ::pg_query::Node& PartitionBoundSpec::_internal_lowerdatums(int index) const { - return _impl_.lowerdatums_.Get(index); +inline ::pg_query::IntoClause* CreateTableAsStmt::release_into() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::IntoClause* released = _impl_.into_; + _impl_.into_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline const ::pg_query::Node& PartitionBoundSpec::lowerdatums(int index) const { - // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.lowerdatums) - return _internal_lowerdatums(index); +inline ::pg_query::IntoClause* CreateTableAsStmt::unsafe_arena_release_into() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTableAsStmt.into) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::IntoClause* temp = _impl_.into_; + _impl_.into_ = nullptr; + return temp; } -inline ::pg_query::Node* PartitionBoundSpec::_internal_add_lowerdatums() { - return _impl_.lowerdatums_.Add(); +inline ::pg_query::IntoClause* CreateTableAsStmt::_internal_mutable_into() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.into_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::IntoClause>(GetArena()); + _impl_.into_ = reinterpret_cast<::pg_query::IntoClause*>(p); + } + return _impl_.into_; } -inline ::pg_query::Node* PartitionBoundSpec::add_lowerdatums() { - ::pg_query::Node* _add = _internal_add_lowerdatums(); - // @@protoc_insertion_point(field_add:pg_query.PartitionBoundSpec.lowerdatums) - return _add; +inline ::pg_query::IntoClause* CreateTableAsStmt::mutable_into() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::IntoClause* _msg = _internal_mutable_into(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTableAsStmt.into) + return _msg; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -PartitionBoundSpec::lowerdatums() const { - // @@protoc_insertion_point(field_list:pg_query.PartitionBoundSpec.lowerdatums) - return _impl_.lowerdatums_; +inline void CreateTableAsStmt::set_allocated_into(::pg_query::IntoClause* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::IntoClause*>(_impl_.into_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::IntoClause*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + + _impl_.into_ = reinterpret_cast<::pg_query::IntoClause*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTableAsStmt.into) } -// repeated .pg_query.Node upperdatums = 7 [json_name = "upperdatums"]; -inline int PartitionBoundSpec::_internal_upperdatums_size() const { - return _impl_.upperdatums_.size(); +// .pg_query.ObjectType objtype = 3 [json_name = "objtype"]; +inline void CreateTableAsStmt::clear_objtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.objtype_ = 0; } -inline int PartitionBoundSpec::upperdatums_size() const { - return _internal_upperdatums_size(); +inline ::pg_query::ObjectType CreateTableAsStmt::objtype() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.objtype) + return _internal_objtype(); } -inline void PartitionBoundSpec::clear_upperdatums() { - _impl_.upperdatums_.Clear(); +inline void CreateTableAsStmt::set_objtype(::pg_query::ObjectType value) { + _internal_set_objtype(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTableAsStmt.objtype) } -inline ::pg_query::Node* PartitionBoundSpec::mutable_upperdatums(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.PartitionBoundSpec.upperdatums) - return _impl_.upperdatums_.Mutable(index); +inline ::pg_query::ObjectType CreateTableAsStmt::_internal_objtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ObjectType>(_impl_.objtype_); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -PartitionBoundSpec::mutable_upperdatums() { - // @@protoc_insertion_point(field_mutable_list:pg_query.PartitionBoundSpec.upperdatums) - return &_impl_.upperdatums_; +inline void CreateTableAsStmt::_internal_set_objtype(::pg_query::ObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.objtype_ = value; } -inline const ::pg_query::Node& PartitionBoundSpec::_internal_upperdatums(int index) const { - return _impl_.upperdatums_.Get(index); + +// bool is_select_into = 4 [json_name = "is_select_into"]; +inline void CreateTableAsStmt::clear_is_select_into() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.is_select_into_ = false; } -inline const ::pg_query::Node& PartitionBoundSpec::upperdatums(int index) const { - // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.upperdatums) - return _internal_upperdatums(index); +inline bool CreateTableAsStmt::is_select_into() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.is_select_into) + return _internal_is_select_into(); } -inline ::pg_query::Node* PartitionBoundSpec::_internal_add_upperdatums() { - return _impl_.upperdatums_.Add(); +inline void CreateTableAsStmt::set_is_select_into(bool value) { + _internal_set_is_select_into(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTableAsStmt.is_select_into) } -inline ::pg_query::Node* PartitionBoundSpec::add_upperdatums() { - ::pg_query::Node* _add = _internal_add_upperdatums(); - // @@protoc_insertion_point(field_add:pg_query.PartitionBoundSpec.upperdatums) - return _add; +inline bool CreateTableAsStmt::_internal_is_select_into() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.is_select_into_; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -PartitionBoundSpec::upperdatums() const { - // @@protoc_insertion_point(field_list:pg_query.PartitionBoundSpec.upperdatums) - return _impl_.upperdatums_; +inline void CreateTableAsStmt::_internal_set_is_select_into(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.is_select_into_ = value; } -// int32 location = 8 [json_name = "location"]; -inline void PartitionBoundSpec::clear_location() { - _impl_.location_ = 0; +// bool if_not_exists = 5 [json_name = "if_not_exists"]; +inline void CreateTableAsStmt::clear_if_not_exists() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.if_not_exists_ = false; } -inline int32_t PartitionBoundSpec::_internal_location() const { - return _impl_.location_; +inline bool CreateTableAsStmt::if_not_exists() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTableAsStmt.if_not_exists) + return _internal_if_not_exists(); } -inline int32_t PartitionBoundSpec::location() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionBoundSpec.location) - return _internal_location(); +inline void CreateTableAsStmt::set_if_not_exists(bool value) { + _internal_set_if_not_exists(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTableAsStmt.if_not_exists) } -inline void PartitionBoundSpec::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline bool CreateTableAsStmt::_internal_if_not_exists() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.if_not_exists_; } -inline void PartitionBoundSpec::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.PartitionBoundSpec.location) +inline void CreateTableAsStmt::_internal_set_if_not_exists(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.if_not_exists_ = value; } // ------------------------------------------------------------------- -// PartitionRangeDatum +// RefreshMatViewStmt -// .pg_query.PartitionRangeDatumKind kind = 1 [json_name = "kind"]; -inline void PartitionRangeDatum::clear_kind() { - _impl_.kind_ = 0; +// bool concurrent = 1 [json_name = "concurrent"]; +inline void RefreshMatViewStmt::clear_concurrent() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.concurrent_ = false; } -inline ::pg_query::PartitionRangeDatumKind PartitionRangeDatum::_internal_kind() const { - return static_cast< ::pg_query::PartitionRangeDatumKind >(_impl_.kind_); +inline bool RefreshMatViewStmt::concurrent() const { + // @@protoc_insertion_point(field_get:pg_query.RefreshMatViewStmt.concurrent) + return _internal_concurrent(); } -inline ::pg_query::PartitionRangeDatumKind PartitionRangeDatum::kind() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionRangeDatum.kind) - return _internal_kind(); +inline void RefreshMatViewStmt::set_concurrent(bool value) { + _internal_set_concurrent(value); + // @@protoc_insertion_point(field_set:pg_query.RefreshMatViewStmt.concurrent) } -inline void PartitionRangeDatum::_internal_set_kind(::pg_query::PartitionRangeDatumKind value) { - - _impl_.kind_ = value; +inline bool RefreshMatViewStmt::_internal_concurrent() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.concurrent_; } -inline void PartitionRangeDatum::set_kind(::pg_query::PartitionRangeDatumKind value) { - _internal_set_kind(value); - // @@protoc_insertion_point(field_set:pg_query.PartitionRangeDatum.kind) +inline void RefreshMatViewStmt::_internal_set_concurrent(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.concurrent_ = value; } -// .pg_query.Node value = 2 [json_name = "value"]; -inline bool PartitionRangeDatum::_internal_has_value() const { - return this != internal_default_instance() && _impl_.value_ != nullptr; +// bool skip_data = 2 [json_name = "skipData"]; +inline void RefreshMatViewStmt::clear_skip_data() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.skip_data_ = false; } -inline bool PartitionRangeDatum::has_value() const { - return _internal_has_value(); +inline bool RefreshMatViewStmt::skip_data() const { + // @@protoc_insertion_point(field_get:pg_query.RefreshMatViewStmt.skip_data) + return _internal_skip_data(); } -inline void PartitionRangeDatum::clear_value() { - if (GetArenaForAllocation() == nullptr && _impl_.value_ != nullptr) { - delete _impl_.value_; - } - _impl_.value_ = nullptr; +inline void RefreshMatViewStmt::set_skip_data(bool value) { + _internal_set_skip_data(value); + // @@protoc_insertion_point(field_set:pg_query.RefreshMatViewStmt.skip_data) } -inline const ::pg_query::Node& PartitionRangeDatum::_internal_value() const { - const ::pg_query::Node* p = _impl_.value_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline bool RefreshMatViewStmt::_internal_skip_data() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.skip_data_; } -inline const ::pg_query::Node& PartitionRangeDatum::value() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionRangeDatum.value) - return _internal_value(); +inline void RefreshMatViewStmt::_internal_set_skip_data(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.skip_data_ = value; +} + +// .pg_query.RangeVar relation = 3 [json_name = "relation"]; +inline bool RefreshMatViewStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; +} +inline void RefreshMatViewStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RangeVar& RefreshMatViewStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); +} +inline const ::pg_query::RangeVar& RefreshMatViewStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.RefreshMatViewStmt.relation) + return _internal_relation(); } -inline void PartitionRangeDatum::unsafe_arena_set_allocated_value( - ::pg_query::Node* value) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.value_); +inline void RefreshMatViewStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.value_ = value; - if (value) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PartitionRangeDatum.value) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.RefreshMatViewStmt.relation) } -inline ::pg_query::Node* PartitionRangeDatum::release_value() { - - ::pg_query::Node* temp = _impl_.value_; - _impl_.value_ = nullptr; +inline ::pg_query::RangeVar* RefreshMatViewStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* PartitionRangeDatum::unsafe_arena_release_value() { - // @@protoc_insertion_point(field_release:pg_query.PartitionRangeDatum.value) - - ::pg_query::Node* temp = _impl_.value_; - _impl_.value_ = nullptr; +inline ::pg_query::RangeVar* RefreshMatViewStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.RefreshMatViewStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::Node* PartitionRangeDatum::_internal_mutable_value() { - - if (_impl_.value_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.value_ = p; +inline ::pg_query::RangeVar* RefreshMatViewStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } - return _impl_.value_; + return _impl_.relation_; } -inline ::pg_query::Node* PartitionRangeDatum::mutable_value() { - ::pg_query::Node* _msg = _internal_mutable_value(); - // @@protoc_insertion_point(field_mutable:pg_query.PartitionRangeDatum.value) +inline ::pg_query::RangeVar* RefreshMatViewStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.RefreshMatViewStmt.relation) return _msg; } -inline void PartitionRangeDatum::set_allocated_value(::pg_query::Node* value) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void RefreshMatViewStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.value_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (value) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(value); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - value = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, value, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.value_ = value; - // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionRangeDatum.value) + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.RefreshMatViewStmt.relation) } -// int32 location = 3 [json_name = "location"]; -inline void PartitionRangeDatum::clear_location() { - _impl_.location_ = 0; +// ------------------------------------------------------------------- + +// CheckPointStmt + +// ------------------------------------------------------------------- + +// DiscardStmt + +// .pg_query.DiscardMode target = 1 [json_name = "target"]; +inline void DiscardStmt::clear_target() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.target_ = 0; } -inline int32_t PartitionRangeDatum::_internal_location() const { - return _impl_.location_; +inline ::pg_query::DiscardMode DiscardStmt::target() const { + // @@protoc_insertion_point(field_get:pg_query.DiscardStmt.target) + return _internal_target(); } -inline int32_t PartitionRangeDatum::location() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionRangeDatum.location) - return _internal_location(); +inline void DiscardStmt::set_target(::pg_query::DiscardMode value) { + _internal_set_target(value); + // @@protoc_insertion_point(field_set:pg_query.DiscardStmt.target) } -inline void PartitionRangeDatum::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline ::pg_query::DiscardMode DiscardStmt::_internal_target() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DiscardMode>(_impl_.target_); } -inline void PartitionRangeDatum::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.PartitionRangeDatum.location) +inline void DiscardStmt::_internal_set_target(::pg_query::DiscardMode value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.target_ = value; } // ------------------------------------------------------------------- -// PartitionCmd +// LockStmt -// .pg_query.RangeVar name = 1 [json_name = "name"]; -inline bool PartitionCmd::_internal_has_name() const { - return this != internal_default_instance() && _impl_.name_ != nullptr; +// repeated .pg_query.Node relations = 1 [json_name = "relations"]; +inline int LockStmt::_internal_relations_size() const { + return _internal_relations().size(); } -inline bool PartitionCmd::has_name() const { - return _internal_has_name(); +inline int LockStmt::relations_size() const { + return _internal_relations_size(); } -inline void PartitionCmd::clear_name() { - if (GetArenaForAllocation() == nullptr && _impl_.name_ != nullptr) { - delete _impl_.name_; - } - _impl_.name_ = nullptr; +inline void LockStmt::clear_relations() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.relations_.Clear(); } -inline const ::pg_query::RangeVar& PartitionCmd::_internal_name() const { - const ::pg_query::RangeVar* p = _impl_.name_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline ::pg_query::Node* LockStmt::mutable_relations(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.LockStmt.relations) + return _internal_mutable_relations()->Mutable(index); } -inline const ::pg_query::RangeVar& PartitionCmd::name() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionCmd.name) - return _internal_name(); +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* LockStmt::mutable_relations() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.LockStmt.relations) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_relations(); } -inline void PartitionCmd::unsafe_arena_set_allocated_name( - ::pg_query::RangeVar* name) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.name_); - } - _impl_.name_ = name; - if (name) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PartitionCmd.name) +inline const ::pg_query::Node& LockStmt::relations(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.LockStmt.relations) + return _internal_relations().Get(index); } -inline ::pg_query::RangeVar* PartitionCmd::release_name() { - - ::pg_query::RangeVar* temp = _impl_.name_; - _impl_.name_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline ::pg_query::Node* LockStmt::add_relations() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_relations()->Add(); + // @@protoc_insertion_point(field_add:pg_query.LockStmt.relations) + return _add; } -inline ::pg_query::RangeVar* PartitionCmd::unsafe_arena_release_name() { - // @@protoc_insertion_point(field_release:pg_query.PartitionCmd.name) - - ::pg_query::RangeVar* temp = _impl_.name_; - _impl_.name_ = nullptr; - return temp; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& LockStmt::relations() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.LockStmt.relations) + return _internal_relations(); } -inline ::pg_query::RangeVar* PartitionCmd::_internal_mutable_name() { - - if (_impl_.name_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.name_ = p; - } - return _impl_.name_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +LockStmt::_internal_relations() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.relations_; } -inline ::pg_query::RangeVar* PartitionCmd::mutable_name() { - ::pg_query::RangeVar* _msg = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.PartitionCmd.name) - return _msg; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +LockStmt::_internal_mutable_relations() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.relations_; } -inline void PartitionCmd::set_allocated_name(::pg_query::RangeVar* name) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.name_; - } - if (name) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(name); - if (message_arena != submessage_arena) { - name = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, name, submessage_arena); - } - - } else { - - } - _impl_.name_ = name; - // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionCmd.name) + +// int32 mode = 2 [json_name = "mode"]; +inline void LockStmt::clear_mode() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.mode_ = 0; +} +inline ::int32_t LockStmt::mode() const { + // @@protoc_insertion_point(field_get:pg_query.LockStmt.mode) + return _internal_mode(); +} +inline void LockStmt::set_mode(::int32_t value) { + _internal_set_mode(value); + // @@protoc_insertion_point(field_set:pg_query.LockStmt.mode) +} +inline ::int32_t LockStmt::_internal_mode() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.mode_; +} +inline void LockStmt::_internal_set_mode(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.mode_ = value; +} + +// bool nowait = 3 [json_name = "nowait"]; +inline void LockStmt::clear_nowait() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.nowait_ = false; +} +inline bool LockStmt::nowait() const { + // @@protoc_insertion_point(field_get:pg_query.LockStmt.nowait) + return _internal_nowait(); +} +inline void LockStmt::set_nowait(bool value) { + _internal_set_nowait(value); + // @@protoc_insertion_point(field_set:pg_query.LockStmt.nowait) +} +inline bool LockStmt::_internal_nowait() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.nowait_; +} +inline void LockStmt::_internal_set_nowait(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.nowait_ = value; } -// .pg_query.PartitionBoundSpec bound = 2 [json_name = "bound"]; -inline bool PartitionCmd::_internal_has_bound() const { - return this != internal_default_instance() && _impl_.bound_ != nullptr; -} -inline bool PartitionCmd::has_bound() const { - return _internal_has_bound(); +// ------------------------------------------------------------------- + +// ConstraintsSetStmt + +// repeated .pg_query.Node constraints = 1 [json_name = "constraints"]; +inline int ConstraintsSetStmt::_internal_constraints_size() const { + return _internal_constraints().size(); } -inline void PartitionCmd::clear_bound() { - if (GetArenaForAllocation() == nullptr && _impl_.bound_ != nullptr) { - delete _impl_.bound_; - } - _impl_.bound_ = nullptr; +inline int ConstraintsSetStmt::constraints_size() const { + return _internal_constraints_size(); } -inline const ::pg_query::PartitionBoundSpec& PartitionCmd::_internal_bound() const { - const ::pg_query::PartitionBoundSpec* p = _impl_.bound_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_PartitionBoundSpec_default_instance_); +inline void ConstraintsSetStmt::clear_constraints() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.constraints_.Clear(); } -inline const ::pg_query::PartitionBoundSpec& PartitionCmd::bound() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionCmd.bound) - return _internal_bound(); +inline ::pg_query::Node* ConstraintsSetStmt::mutable_constraints(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ConstraintsSetStmt.constraints) + return _internal_mutable_constraints()->Mutable(index); } -inline void PartitionCmd::unsafe_arena_set_allocated_bound( - ::pg_query::PartitionBoundSpec* bound) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.bound_); - } - _impl_.bound_ = bound; - if (bound) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PartitionCmd.bound) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ConstraintsSetStmt::mutable_constraints() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ConstraintsSetStmt.constraints) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_constraints(); } -inline ::pg_query::PartitionBoundSpec* PartitionCmd::release_bound() { - - ::pg_query::PartitionBoundSpec* temp = _impl_.bound_; - _impl_.bound_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const ::pg_query::Node& ConstraintsSetStmt::constraints(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ConstraintsSetStmt.constraints) + return _internal_constraints().Get(index); } -inline ::pg_query::PartitionBoundSpec* PartitionCmd::unsafe_arena_release_bound() { - // @@protoc_insertion_point(field_release:pg_query.PartitionCmd.bound) - - ::pg_query::PartitionBoundSpec* temp = _impl_.bound_; - _impl_.bound_ = nullptr; - return temp; +inline ::pg_query::Node* ConstraintsSetStmt::add_constraints() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_constraints()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ConstraintsSetStmt.constraints) + return _add; } -inline ::pg_query::PartitionBoundSpec* PartitionCmd::_internal_mutable_bound() { - - if (_impl_.bound_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::PartitionBoundSpec>(GetArenaForAllocation()); - _impl_.bound_ = p; - } - return _impl_.bound_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ConstraintsSetStmt::constraints() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ConstraintsSetStmt.constraints) + return _internal_constraints(); } -inline ::pg_query::PartitionBoundSpec* PartitionCmd::mutable_bound() { - ::pg_query::PartitionBoundSpec* _msg = _internal_mutable_bound(); - // @@protoc_insertion_point(field_mutable:pg_query.PartitionCmd.bound) - return _msg; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ConstraintsSetStmt::_internal_constraints() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.constraints_; } -inline void PartitionCmd::set_allocated_bound(::pg_query::PartitionBoundSpec* bound) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.bound_; - } - if (bound) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(bound); - if (message_arena != submessage_arena) { - bound = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, bound, submessage_arena); - } - - } else { - - } - _impl_.bound_ = bound; - // @@protoc_insertion_point(field_set_allocated:pg_query.PartitionCmd.bound) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ConstraintsSetStmt::_internal_mutable_constraints() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.constraints_; } -// bool concurrent = 3 [json_name = "concurrent"]; -inline void PartitionCmd::clear_concurrent() { - _impl_.concurrent_ = false; +// bool deferred = 2 [json_name = "deferred"]; +inline void ConstraintsSetStmt::clear_deferred() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.deferred_ = false; } -inline bool PartitionCmd::_internal_concurrent() const { - return _impl_.concurrent_; +inline bool ConstraintsSetStmt::deferred() const { + // @@protoc_insertion_point(field_get:pg_query.ConstraintsSetStmt.deferred) + return _internal_deferred(); } -inline bool PartitionCmd::concurrent() const { - // @@protoc_insertion_point(field_get:pg_query.PartitionCmd.concurrent) - return _internal_concurrent(); +inline void ConstraintsSetStmt::set_deferred(bool value) { + _internal_set_deferred(value); + // @@protoc_insertion_point(field_set:pg_query.ConstraintsSetStmt.deferred) } -inline void PartitionCmd::_internal_set_concurrent(bool value) { - - _impl_.concurrent_ = value; +inline bool ConstraintsSetStmt::_internal_deferred() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.deferred_; } -inline void PartitionCmd::set_concurrent(bool value) { - _internal_set_concurrent(value); - // @@protoc_insertion_point(field_set:pg_query.PartitionCmd.concurrent) +inline void ConstraintsSetStmt::_internal_set_deferred(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.deferred_ = value; } // ------------------------------------------------------------------- -// VacuumRelation +// ReindexStmt -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool VacuumRelation::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; +// .pg_query.ReindexObjectType kind = 1 [json_name = "kind"]; +inline void ReindexStmt::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; } -inline bool VacuumRelation::has_relation() const { - return _internal_has_relation(); +inline ::pg_query::ReindexObjectType ReindexStmt::kind() const { + // @@protoc_insertion_point(field_get:pg_query.ReindexStmt.kind) + return _internal_kind(); } -inline void VacuumRelation::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline void ReindexStmt::set_kind(::pg_query::ReindexObjectType value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.ReindexStmt.kind) } -inline const ::pg_query::RangeVar& VacuumRelation::_internal_relation() const { +inline ::pg_query::ReindexObjectType ReindexStmt::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::ReindexObjectType>(_impl_.kind_); +} +inline void ReindexStmt::_internal_set_kind(::pg_query::ReindexObjectType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; +} + +// .pg_query.RangeVar relation = 2 [json_name = "relation"]; +inline bool ReindexStmt::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; +} +inline void ReindexStmt::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RangeVar& ReindexStmt::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); } -inline const ::pg_query::RangeVar& VacuumRelation::relation() const { - // @@protoc_insertion_point(field_get:pg_query.VacuumRelation.relation) +inline const ::pg_query::RangeVar& ReindexStmt::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ReindexStmt.relation) return _internal_relation(); } -inline void VacuumRelation::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); +inline void ReindexStmt::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); } - _impl_.relation_ = relation; - if (relation) { - + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.VacuumRelation.relation) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ReindexStmt.relation) } -inline ::pg_query::RangeVar* VacuumRelation::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; +inline ::pg_query::RangeVar* ReindexStmt::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; _impl_.relation_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::RangeVar* VacuumRelation::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.VacuumRelation.relation) - +inline ::pg_query::RangeVar* ReindexStmt::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ReindexStmt.relation) + + _impl_._has_bits_[0] &= ~0x00000001u; ::pg_query::RangeVar* temp = _impl_.relation_; _impl_.relation_ = nullptr; return temp; } -inline ::pg_query::RangeVar* VacuumRelation::_internal_mutable_relation() { - +inline ::pg_query::RangeVar* ReindexStmt::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); } return _impl_.relation_; } -inline ::pg_query::RangeVar* VacuumRelation::mutable_relation() { +inline ::pg_query::RangeVar* ReindexStmt::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.VacuumRelation.relation) + // @@protoc_insertion_point(field_mutable:pg_query.ReindexStmt.relation) return _msg; } -inline void VacuumRelation::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void ReindexStmt::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.relation_; + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.VacuumRelation.relation) + + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ReindexStmt.relation) } -// uint32 oid = 2 [json_name = "oid"]; -inline void VacuumRelation::clear_oid() { - _impl_.oid_ = 0u; +// string name = 3 [json_name = "name"]; +inline void ReindexStmt::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); } -inline uint32_t VacuumRelation::_internal_oid() const { - return _impl_.oid_; +inline const std::string& ReindexStmt::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ReindexStmt.name) + return _internal_name(); } -inline uint32_t VacuumRelation::oid() const { - // @@protoc_insertion_point(field_get:pg_query.VacuumRelation.oid) - return _internal_oid(); +template +inline PROTOBUF_ALWAYS_INLINE void ReindexStmt::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ReindexStmt.name) } -inline void VacuumRelation::_internal_set_oid(uint32_t value) { - - _impl_.oid_ = value; +inline std::string* ReindexStmt::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.ReindexStmt.name) + return _s; } -inline void VacuumRelation::set_oid(uint32_t value) { - _internal_set_oid(value); - // @@protoc_insertion_point(field_set:pg_query.VacuumRelation.oid) +inline const std::string& ReindexStmt::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); } - -// repeated .pg_query.Node va_cols = 3 [json_name = "va_cols"]; -inline int VacuumRelation::_internal_va_cols_size() const { - return _impl_.va_cols_.size(); +inline void ReindexStmt::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); } -inline int VacuumRelation::va_cols_size() const { - return _internal_va_cols_size(); +inline std::string* ReindexStmt::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); } -inline void VacuumRelation::clear_va_cols() { - _impl_.va_cols_.Clear(); +inline std::string* ReindexStmt::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ReindexStmt.name) + return _impl_.name_.Release(); } -inline ::pg_query::Node* VacuumRelation::mutable_va_cols(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.VacuumRelation.va_cols) - return _impl_.va_cols_.Mutable(index); +inline void ReindexStmt::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ReindexStmt.name) } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -VacuumRelation::mutable_va_cols() { - // @@protoc_insertion_point(field_mutable_list:pg_query.VacuumRelation.va_cols) - return &_impl_.va_cols_; + +// repeated .pg_query.Node params = 4 [json_name = "params"]; +inline int ReindexStmt::_internal_params_size() const { + return _internal_params().size(); } -inline const ::pg_query::Node& VacuumRelation::_internal_va_cols(int index) const { - return _impl_.va_cols_.Get(index); +inline int ReindexStmt::params_size() const { + return _internal_params_size(); } -inline const ::pg_query::Node& VacuumRelation::va_cols(int index) const { - // @@protoc_insertion_point(field_get:pg_query.VacuumRelation.va_cols) - return _internal_va_cols(index); +inline void ReindexStmt::clear_params() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.params_.Clear(); } -inline ::pg_query::Node* VacuumRelation::_internal_add_va_cols() { - return _impl_.va_cols_.Add(); +inline ::pg_query::Node* ReindexStmt::mutable_params(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ReindexStmt.params) + return _internal_mutable_params()->Mutable(index); } -inline ::pg_query::Node* VacuumRelation::add_va_cols() { - ::pg_query::Node* _add = _internal_add_va_cols(); - // @@protoc_insertion_point(field_add:pg_query.VacuumRelation.va_cols) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ReindexStmt::mutable_params() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ReindexStmt.params) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_params(); +} +inline const ::pg_query::Node& ReindexStmt::params(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ReindexStmt.params) + return _internal_params().Get(index); +} +inline ::pg_query::Node* ReindexStmt::add_params() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_params()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ReindexStmt.params) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -VacuumRelation::va_cols() const { - // @@protoc_insertion_point(field_list:pg_query.VacuumRelation.va_cols) - return _impl_.va_cols_; +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ReindexStmt::params() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ReindexStmt.params) + return _internal_params(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ReindexStmt::_internal_params() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.params_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ReindexStmt::_internal_mutable_params() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.params_; } // ------------------------------------------------------------------- -// PublicationObjSpec +// CreateConversionStmt -// .pg_query.PublicationObjSpecType pubobjtype = 1 [json_name = "pubobjtype"]; -inline void PublicationObjSpec::clear_pubobjtype() { - _impl_.pubobjtype_ = 0; +// repeated .pg_query.Node conversion_name = 1 [json_name = "conversion_name"]; +inline int CreateConversionStmt::_internal_conversion_name_size() const { + return _internal_conversion_name().size(); } -inline ::pg_query::PublicationObjSpecType PublicationObjSpec::_internal_pubobjtype() const { - return static_cast< ::pg_query::PublicationObjSpecType >(_impl_.pubobjtype_); +inline int CreateConversionStmt::conversion_name_size() const { + return _internal_conversion_name_size(); } -inline ::pg_query::PublicationObjSpecType PublicationObjSpec::pubobjtype() const { - // @@protoc_insertion_point(field_get:pg_query.PublicationObjSpec.pubobjtype) - return _internal_pubobjtype(); +inline void CreateConversionStmt::clear_conversion_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conversion_name_.Clear(); } -inline void PublicationObjSpec::_internal_set_pubobjtype(::pg_query::PublicationObjSpecType value) { - - _impl_.pubobjtype_ = value; +inline ::pg_query::Node* CreateConversionStmt::mutable_conversion_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateConversionStmt.conversion_name) + return _internal_mutable_conversion_name()->Mutable(index); } -inline void PublicationObjSpec::set_pubobjtype(::pg_query::PublicationObjSpecType value) { - _internal_set_pubobjtype(value); - // @@protoc_insertion_point(field_set:pg_query.PublicationObjSpec.pubobjtype) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateConversionStmt::mutable_conversion_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateConversionStmt.conversion_name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_conversion_name(); +} +inline const ::pg_query::Node& CreateConversionStmt::conversion_name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.conversion_name) + return _internal_conversion_name().Get(index); +} +inline ::pg_query::Node* CreateConversionStmt::add_conversion_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_conversion_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateConversionStmt.conversion_name) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateConversionStmt::conversion_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateConversionStmt.conversion_name) + return _internal_conversion_name(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateConversionStmt::_internal_conversion_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.conversion_name_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateConversionStmt::_internal_mutable_conversion_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.conversion_name_; } -// string name = 2 [json_name = "name"]; -inline void PublicationObjSpec::clear_name() { - _impl_.name_.ClearToEmpty(); +// string for_encoding_name = 2 [json_name = "for_encoding_name"]; +inline void CreateConversionStmt::clear_for_encoding_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.for_encoding_name_.ClearToEmpty(); } -inline const std::string& PublicationObjSpec::name() const { - // @@protoc_insertion_point(field_get:pg_query.PublicationObjSpec.name) - return _internal_name(); +inline const std::string& CreateConversionStmt::for_encoding_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.for_encoding_name) + return _internal_for_encoding_name(); } -template -inline PROTOBUF_ALWAYS_INLINE -void PublicationObjSpec::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.PublicationObjSpec.name) +template +inline PROTOBUF_ALWAYS_INLINE void CreateConversionStmt::set_for_encoding_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.for_encoding_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateConversionStmt.for_encoding_name) } -inline std::string* PublicationObjSpec::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:pg_query.PublicationObjSpec.name) +inline std::string* CreateConversionStmt::mutable_for_encoding_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_for_encoding_name(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateConversionStmt.for_encoding_name) return _s; } -inline const std::string& PublicationObjSpec::_internal_name() const { - return _impl_.name_.Get(); +inline const std::string& CreateConversionStmt::_internal_for_encoding_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.for_encoding_name_.Get(); } -inline void PublicationObjSpec::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); +inline void CreateConversionStmt::_internal_set_for_encoding_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.for_encoding_name_.Set(value, GetArena()); } -inline std::string* PublicationObjSpec::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); +inline std::string* CreateConversionStmt::_internal_mutable_for_encoding_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.for_encoding_name_.Mutable( GetArena()); } -inline std::string* PublicationObjSpec::release_name() { - // @@protoc_insertion_point(field_release:pg_query.PublicationObjSpec.name) - return _impl_.name_.Release(); +inline std::string* CreateConversionStmt::release_for_encoding_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateConversionStmt.for_encoding_name) + return _impl_.for_encoding_name_.Release(); } -inline void PublicationObjSpec::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.PublicationObjSpec.name) +inline void CreateConversionStmt::set_allocated_for_encoding_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.for_encoding_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.for_encoding_name_.IsDefault()) { + _impl_.for_encoding_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateConversionStmt.for_encoding_name) } -// .pg_query.PublicationTable pubtable = 3 [json_name = "pubtable"]; -inline bool PublicationObjSpec::_internal_has_pubtable() const { - return this != internal_default_instance() && _impl_.pubtable_ != nullptr; -} -inline bool PublicationObjSpec::has_pubtable() const { - return _internal_has_pubtable(); -} -inline void PublicationObjSpec::clear_pubtable() { - if (GetArenaForAllocation() == nullptr && _impl_.pubtable_ != nullptr) { - delete _impl_.pubtable_; - } - _impl_.pubtable_ = nullptr; +// string to_encoding_name = 3 [json_name = "to_encoding_name"]; +inline void CreateConversionStmt::clear_to_encoding_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.to_encoding_name_.ClearToEmpty(); } -inline const ::pg_query::PublicationTable& PublicationObjSpec::_internal_pubtable() const { - const ::pg_query::PublicationTable* p = _impl_.pubtable_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_PublicationTable_default_instance_); +inline const std::string& CreateConversionStmt::to_encoding_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.to_encoding_name) + return _internal_to_encoding_name(); } -inline const ::pg_query::PublicationTable& PublicationObjSpec::pubtable() const { - // @@protoc_insertion_point(field_get:pg_query.PublicationObjSpec.pubtable) - return _internal_pubtable(); +template +inline PROTOBUF_ALWAYS_INLINE void CreateConversionStmt::set_to_encoding_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.to_encoding_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateConversionStmt.to_encoding_name) } -inline void PublicationObjSpec::unsafe_arena_set_allocated_pubtable( - ::pg_query::PublicationTable* pubtable) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.pubtable_); - } - _impl_.pubtable_ = pubtable; - if (pubtable) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PublicationObjSpec.pubtable) +inline std::string* CreateConversionStmt::mutable_to_encoding_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_to_encoding_name(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateConversionStmt.to_encoding_name) + return _s; } -inline ::pg_query::PublicationTable* PublicationObjSpec::release_pubtable() { - - ::pg_query::PublicationTable* temp = _impl_.pubtable_; - _impl_.pubtable_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; +inline const std::string& CreateConversionStmt::_internal_to_encoding_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.to_encoding_name_.Get(); } -inline ::pg_query::PublicationTable* PublicationObjSpec::unsafe_arena_release_pubtable() { - // @@protoc_insertion_point(field_release:pg_query.PublicationObjSpec.pubtable) - - ::pg_query::PublicationTable* temp = _impl_.pubtable_; - _impl_.pubtable_ = nullptr; - return temp; +inline void CreateConversionStmt::_internal_set_to_encoding_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.to_encoding_name_.Set(value, GetArena()); } -inline ::pg_query::PublicationTable* PublicationObjSpec::_internal_mutable_pubtable() { - - if (_impl_.pubtable_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::PublicationTable>(GetArenaForAllocation()); - _impl_.pubtable_ = p; - } - return _impl_.pubtable_; +inline std::string* CreateConversionStmt::_internal_mutable_to_encoding_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.to_encoding_name_.Mutable( GetArena()); } -inline ::pg_query::PublicationTable* PublicationObjSpec::mutable_pubtable() { - ::pg_query::PublicationTable* _msg = _internal_mutable_pubtable(); - // @@protoc_insertion_point(field_mutable:pg_query.PublicationObjSpec.pubtable) - return _msg; +inline std::string* CreateConversionStmt::release_to_encoding_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateConversionStmt.to_encoding_name) + return _impl_.to_encoding_name_.Release(); } -inline void PublicationObjSpec::set_allocated_pubtable(::pg_query::PublicationTable* pubtable) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.pubtable_; - } - if (pubtable) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(pubtable); - if (message_arena != submessage_arena) { - pubtable = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, pubtable, submessage_arena); - } - - } else { - - } - _impl_.pubtable_ = pubtable; - // @@protoc_insertion_point(field_set_allocated:pg_query.PublicationObjSpec.pubtable) +inline void CreateConversionStmt::set_allocated_to_encoding_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.to_encoding_name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.to_encoding_name_.IsDefault()) { + _impl_.to_encoding_name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateConversionStmt.to_encoding_name) } -// int32 location = 4 [json_name = "location"]; -inline void PublicationObjSpec::clear_location() { - _impl_.location_ = 0; -} -inline int32_t PublicationObjSpec::_internal_location() const { - return _impl_.location_; +// repeated .pg_query.Node func_name = 4 [json_name = "func_name"]; +inline int CreateConversionStmt::_internal_func_name_size() const { + return _internal_func_name().size(); } -inline int32_t PublicationObjSpec::location() const { - // @@protoc_insertion_point(field_get:pg_query.PublicationObjSpec.location) - return _internal_location(); +inline int CreateConversionStmt::func_name_size() const { + return _internal_func_name_size(); } -inline void PublicationObjSpec::_internal_set_location(int32_t value) { - - _impl_.location_ = value; +inline void CreateConversionStmt::clear_func_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.func_name_.Clear(); } -inline void PublicationObjSpec::set_location(int32_t value) { - _internal_set_location(value); - // @@protoc_insertion_point(field_set:pg_query.PublicationObjSpec.location) +inline ::pg_query::Node* CreateConversionStmt::mutable_func_name(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateConversionStmt.func_name) + return _internal_mutable_func_name()->Mutable(index); } - -// ------------------------------------------------------------------- - -// PublicationTable - -// .pg_query.RangeVar relation = 1 [json_name = "relation"]; -inline bool PublicationTable::_internal_has_relation() const { - return this != internal_default_instance() && _impl_.relation_ != nullptr; +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateConversionStmt::mutable_func_name() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateConversionStmt.func_name) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_func_name(); } -inline bool PublicationTable::has_relation() const { - return _internal_has_relation(); +inline const ::pg_query::Node& CreateConversionStmt::func_name(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.func_name) + return _internal_func_name().Get(index); } -inline void PublicationTable::clear_relation() { - if (GetArenaForAllocation() == nullptr && _impl_.relation_ != nullptr) { - delete _impl_.relation_; - } - _impl_.relation_ = nullptr; +inline ::pg_query::Node* CreateConversionStmt::add_func_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_func_name()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateConversionStmt.func_name) + return _add; } -inline const ::pg_query::RangeVar& PublicationTable::_internal_relation() const { - const ::pg_query::RangeVar* p = _impl_.relation_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_RangeVar_default_instance_); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateConversionStmt::func_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateConversionStmt.func_name) + return _internal_func_name(); } -inline const ::pg_query::RangeVar& PublicationTable::relation() const { - // @@protoc_insertion_point(field_get:pg_query.PublicationTable.relation) - return _internal_relation(); +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateConversionStmt::_internal_func_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.func_name_; } -inline void PublicationTable::unsafe_arena_set_allocated_relation( - ::pg_query::RangeVar* relation) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.relation_); - } - _impl_.relation_ = relation; - if (relation) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PublicationTable.relation) +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateConversionStmt::_internal_mutable_func_name() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.func_name_; } -inline ::pg_query::RangeVar* PublicationTable::release_relation() { - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + +// bool def = 5 [json_name = "def"]; +inline void CreateConversionStmt::clear_def() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.def_ = false; } -inline ::pg_query::RangeVar* PublicationTable::unsafe_arena_release_relation() { - // @@protoc_insertion_point(field_release:pg_query.PublicationTable.relation) - - ::pg_query::RangeVar* temp = _impl_.relation_; - _impl_.relation_ = nullptr; - return temp; +inline bool CreateConversionStmt::def() const { + // @@protoc_insertion_point(field_get:pg_query.CreateConversionStmt.def) + return _internal_def(); } -inline ::pg_query::RangeVar* PublicationTable::_internal_mutable_relation() { - - if (_impl_.relation_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArenaForAllocation()); - _impl_.relation_ = p; - } - return _impl_.relation_; +inline void CreateConversionStmt::set_def(bool value) { + _internal_set_def(value); + // @@protoc_insertion_point(field_set:pg_query.CreateConversionStmt.def) } -inline ::pg_query::RangeVar* PublicationTable::mutable_relation() { - ::pg_query::RangeVar* _msg = _internal_mutable_relation(); - // @@protoc_insertion_point(field_mutable:pg_query.PublicationTable.relation) - return _msg; +inline bool CreateConversionStmt::_internal_def() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.def_; } -inline void PublicationTable::set_allocated_relation(::pg_query::RangeVar* relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.relation_; - } - if (relation) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(relation); - if (message_arena != submessage_arena) { - relation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, relation, submessage_arena); - } - - } else { - - } - _impl_.relation_ = relation; - // @@protoc_insertion_point(field_set_allocated:pg_query.PublicationTable.relation) +inline void CreateConversionStmt::_internal_set_def(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.def_ = value; } -// .pg_query.Node where_clause = 2 [json_name = "whereClause"]; -inline bool PublicationTable::_internal_has_where_clause() const { - return this != internal_default_instance() && _impl_.where_clause_ != nullptr; -} -inline bool PublicationTable::has_where_clause() const { - return _internal_has_where_clause(); +// ------------------------------------------------------------------- + +// CreateCastStmt + +// .pg_query.TypeName sourcetype = 1 [json_name = "sourcetype"]; +inline bool CreateCastStmt::has_sourcetype() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.sourcetype_ != nullptr); + return value; } -inline void PublicationTable::clear_where_clause() { - if (GetArenaForAllocation() == nullptr && _impl_.where_clause_ != nullptr) { - delete _impl_.where_clause_; - } - _impl_.where_clause_ = nullptr; +inline void CreateCastStmt::clear_sourcetype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.sourcetype_ != nullptr) _impl_.sourcetype_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline const ::pg_query::Node& PublicationTable::_internal_where_clause() const { - const ::pg_query::Node* p = _impl_.where_clause_; - return p != nullptr ? *p : reinterpret_cast( - ::pg_query::_Node_default_instance_); +inline const ::pg_query::TypeName& CreateCastStmt::_internal_sourcetype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.sourcetype_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline const ::pg_query::Node& PublicationTable::where_clause() const { - // @@protoc_insertion_point(field_get:pg_query.PublicationTable.where_clause) - return _internal_where_clause(); +inline const ::pg_query::TypeName& CreateCastStmt::sourcetype() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.sourcetype) + return _internal_sourcetype(); } -inline void PublicationTable::unsafe_arena_set_allocated_where_clause( - ::pg_query::Node* where_clause) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.where_clause_); +inline void CreateCastStmt::unsafe_arena_set_allocated_sourcetype(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.sourcetype_); } - _impl_.where_clause_ = where_clause; - if (where_clause) { - + _impl_.sourcetype_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PublicationTable.where_clause) + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateCastStmt.sourcetype) } -inline ::pg_query::Node* PublicationTable::release_where_clause() { - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::TypeName* CreateCastStmt::release_sourcetype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* released = _impl_.sourcetype_; + _impl_.sourcetype_ = nullptr; #ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); } #endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; + return released; } -inline ::pg_query::Node* PublicationTable::unsafe_arena_release_where_clause() { - // @@protoc_insertion_point(field_release:pg_query.PublicationTable.where_clause) - - ::pg_query::Node* temp = _impl_.where_clause_; - _impl_.where_clause_ = nullptr; +inline ::pg_query::TypeName* CreateCastStmt::unsafe_arena_release_sourcetype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateCastStmt.sourcetype) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* temp = _impl_.sourcetype_; + _impl_.sourcetype_ = nullptr; return temp; } -inline ::pg_query::Node* PublicationTable::_internal_mutable_where_clause() { - - if (_impl_.where_clause_ == nullptr) { - auto* p = CreateMaybeMessage<::pg_query::Node>(GetArenaForAllocation()); - _impl_.where_clause_ = p; +inline ::pg_query::TypeName* CreateCastStmt::_internal_mutable_sourcetype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.sourcetype_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.sourcetype_ = reinterpret_cast<::pg_query::TypeName*>(p); } - return _impl_.where_clause_; + return _impl_.sourcetype_; } -inline ::pg_query::Node* PublicationTable::mutable_where_clause() { - ::pg_query::Node* _msg = _internal_mutable_where_clause(); - // @@protoc_insertion_point(field_mutable:pg_query.PublicationTable.where_clause) +inline ::pg_query::TypeName* CreateCastStmt::mutable_sourcetype() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_sourcetype(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateCastStmt.sourcetype) return _msg; } -inline void PublicationTable::set_allocated_where_clause(::pg_query::Node* where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); +inline void CreateCastStmt::set_allocated_sourcetype(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); if (message_arena == nullptr) { - delete _impl_.where_clause_; + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.sourcetype_); } - if (where_clause) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(where_clause); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); if (message_arena != submessage_arena) { - where_clause = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, where_clause, submessage_arena); + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); } - + _impl_._has_bits_[0] |= 0x00000001u; } else { - + _impl_._has_bits_[0] &= ~0x00000001u; } - _impl_.where_clause_ = where_clause; - // @@protoc_insertion_point(field_set_allocated:pg_query.PublicationTable.where_clause) -} -// repeated .pg_query.Node columns = 3 [json_name = "columns"]; -inline int PublicationTable::_internal_columns_size() const { - return _impl_.columns_.size(); -} -inline int PublicationTable::columns_size() const { - return _internal_columns_size(); -} -inline void PublicationTable::clear_columns() { - _impl_.columns_.Clear(); -} -inline ::pg_query::Node* PublicationTable::mutable_columns(int index) { - // @@protoc_insertion_point(field_mutable:pg_query.PublicationTable.columns) - return _impl_.columns_.Mutable(index); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >* -PublicationTable::mutable_columns() { - // @@protoc_insertion_point(field_mutable_list:pg_query.PublicationTable.columns) - return &_impl_.columns_; + _impl_.sourcetype_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateCastStmt.sourcetype) } -inline const ::pg_query::Node& PublicationTable::_internal_columns(int index) const { - return _impl_.columns_.Get(index); + +// .pg_query.TypeName targettype = 2 [json_name = "targettype"]; +inline bool CreateCastStmt::has_targettype() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.targettype_ != nullptr); + return value; } -inline const ::pg_query::Node& PublicationTable::columns(int index) const { - // @@protoc_insertion_point(field_get:pg_query.PublicationTable.columns) - return _internal_columns(index); +inline void CreateCastStmt::clear_targettype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.targettype_ != nullptr) _impl_.targettype_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; } -inline ::pg_query::Node* PublicationTable::_internal_add_columns() { - return _impl_.columns_.Add(); +inline const ::pg_query::TypeName& CreateCastStmt::_internal_targettype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.targettype_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline ::pg_query::Node* PublicationTable::add_columns() { - ::pg_query::Node* _add = _internal_add_columns(); - // @@protoc_insertion_point(field_add:pg_query.PublicationTable.columns) - return _add; +inline const ::pg_query::TypeName& CreateCastStmt::targettype() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.targettype) + return _internal_targettype(); } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::pg_query::Node >& -PublicationTable::columns() const { - // @@protoc_insertion_point(field_list:pg_query.PublicationTable.columns) - return _impl_.columns_; +inline void CreateCastStmt::unsafe_arena_set_allocated_targettype(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.targettype_); + } + _impl_.targettype_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateCastStmt.targettype) } +inline ::pg_query::TypeName* CreateCastStmt::release_targettype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- - -// InlineCodeBlock - -// string source_text = 1 [json_name = "source_text"]; -inline void InlineCodeBlock::clear_source_text() { - _impl_.source_text_.ClearToEmpty(); -} -inline const std::string& InlineCodeBlock::source_text() const { - // @@protoc_insertion_point(field_get:pg_query.InlineCodeBlock.source_text) - return _internal_source_text(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void InlineCodeBlock::set_source_text(ArgT0&& arg0, ArgT... args) { - - _impl_.source_text_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:pg_query.InlineCodeBlock.source_text) -} -inline std::string* InlineCodeBlock::mutable_source_text() { - std::string* _s = _internal_mutable_source_text(); - // @@protoc_insertion_point(field_mutable:pg_query.InlineCodeBlock.source_text) - return _s; -} -inline const std::string& InlineCodeBlock::_internal_source_text() const { - return _impl_.source_text_.Get(); + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::TypeName* released = _impl_.targettype_; + _impl_.targettype_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline void InlineCodeBlock::_internal_set_source_text(const std::string& value) { - - _impl_.source_text_.Set(value, GetArenaForAllocation()); +inline ::pg_query::TypeName* CreateCastStmt::unsafe_arena_release_targettype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateCastStmt.targettype) + + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::TypeName* temp = _impl_.targettype_; + _impl_.targettype_ = nullptr; + return temp; } -inline std::string* InlineCodeBlock::_internal_mutable_source_text() { - - return _impl_.source_text_.Mutable(GetArenaForAllocation()); +inline ::pg_query::TypeName* CreateCastStmt::_internal_mutable_targettype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.targettype_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.targettype_ = reinterpret_cast<::pg_query::TypeName*>(p); + } + return _impl_.targettype_; } -inline std::string* InlineCodeBlock::release_source_text() { - // @@protoc_insertion_point(field_release:pg_query.InlineCodeBlock.source_text) - return _impl_.source_text_.Release(); +inline ::pg_query::TypeName* CreateCastStmt::mutable_targettype() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_targettype(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateCastStmt.targettype) + return _msg; } -inline void InlineCodeBlock::set_allocated_source_text(std::string* source_text) { - if (source_text != nullptr) { - - } else { - +inline void CreateCastStmt::set_allocated_targettype(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.targettype_); } - _impl_.source_text_.SetAllocated(source_text, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.source_text_.IsDefault()) { - _impl_.source_text_.Set("", GetArenaForAllocation()); + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:pg_query.InlineCodeBlock.source_text) + + _impl_.targettype_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateCastStmt.targettype) } -// uint32 lang_oid = 2 [json_name = "langOid"]; -inline void InlineCodeBlock::clear_lang_oid() { - _impl_.lang_oid_ = 0u; +// .pg_query.ObjectWithArgs func = 3 [json_name = "func"]; +inline bool CreateCastStmt::has_func() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.func_ != nullptr); + return value; } -inline uint32_t InlineCodeBlock::_internal_lang_oid() const { - return _impl_.lang_oid_; +inline void CreateCastStmt::clear_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.func_ != nullptr) _impl_.func_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; } -inline uint32_t InlineCodeBlock::lang_oid() const { - // @@protoc_insertion_point(field_get:pg_query.InlineCodeBlock.lang_oid) - return _internal_lang_oid(); +inline const ::pg_query::ObjectWithArgs& CreateCastStmt::_internal_func() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::ObjectWithArgs* p = _impl_.func_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_ObjectWithArgs_default_instance_); } -inline void InlineCodeBlock::_internal_set_lang_oid(uint32_t value) { - - _impl_.lang_oid_ = value; +inline const ::pg_query::ObjectWithArgs& CreateCastStmt::func() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.func) + return _internal_func(); } -inline void InlineCodeBlock::set_lang_oid(uint32_t value) { - _internal_set_lang_oid(value); - // @@protoc_insertion_point(field_set:pg_query.InlineCodeBlock.lang_oid) +inline void CreateCastStmt::unsafe_arena_set_allocated_func(::pg_query::ObjectWithArgs* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.func_); + } + _impl_.func_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateCastStmt.func) } +inline ::pg_query::ObjectWithArgs* CreateCastStmt::release_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// bool lang_is_trusted = 3 [json_name = "langIsTrusted"]; -inline void InlineCodeBlock::clear_lang_is_trusted() { - _impl_.lang_is_trusted_ = false; + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::ObjectWithArgs* released = _impl_.func_; + _impl_.func_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline bool InlineCodeBlock::_internal_lang_is_trusted() const { - return _impl_.lang_is_trusted_; +inline ::pg_query::ObjectWithArgs* CreateCastStmt::unsafe_arena_release_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateCastStmt.func) + + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::ObjectWithArgs* temp = _impl_.func_; + _impl_.func_ = nullptr; + return temp; } -inline bool InlineCodeBlock::lang_is_trusted() const { - // @@protoc_insertion_point(field_get:pg_query.InlineCodeBlock.lang_is_trusted) - return _internal_lang_is_trusted(); +inline ::pg_query::ObjectWithArgs* CreateCastStmt::_internal_mutable_func() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.func_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArena()); + _impl_.func_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(p); + } + return _impl_.func_; } -inline void InlineCodeBlock::_internal_set_lang_is_trusted(bool value) { - - _impl_.lang_is_trusted_ = value; +inline ::pg_query::ObjectWithArgs* CreateCastStmt::mutable_func() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ObjectWithArgs* _msg = _internal_mutable_func(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateCastStmt.func) + return _msg; } -inline void InlineCodeBlock::set_lang_is_trusted(bool value) { - _internal_set_lang_is_trusted(value); - // @@protoc_insertion_point(field_set:pg_query.InlineCodeBlock.lang_is_trusted) +inline void CreateCastStmt::set_allocated_func(::pg_query::ObjectWithArgs* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::ObjectWithArgs*>(_impl_.func_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::ObjectWithArgs*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + + _impl_.func_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateCastStmt.func) } -// bool atomic = 4 [json_name = "atomic"]; -inline void InlineCodeBlock::clear_atomic() { - _impl_.atomic_ = false; +// .pg_query.CoercionContext context = 4 [json_name = "context"]; +inline void CreateCastStmt::clear_context() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.context_ = 0; } -inline bool InlineCodeBlock::_internal_atomic() const { - return _impl_.atomic_; +inline ::pg_query::CoercionContext CreateCastStmt::context() const { + // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.context) + return _internal_context(); } -inline bool InlineCodeBlock::atomic() const { - // @@protoc_insertion_point(field_get:pg_query.InlineCodeBlock.atomic) - return _internal_atomic(); +inline void CreateCastStmt::set_context(::pg_query::CoercionContext value) { + _internal_set_context(value); + // @@protoc_insertion_point(field_set:pg_query.CreateCastStmt.context) } -inline void InlineCodeBlock::_internal_set_atomic(bool value) { - - _impl_.atomic_ = value; +inline ::pg_query::CoercionContext CreateCastStmt::_internal_context() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::CoercionContext>(_impl_.context_); } -inline void InlineCodeBlock::set_atomic(bool value) { - _internal_set_atomic(value); - // @@protoc_insertion_point(field_set:pg_query.InlineCodeBlock.atomic) +inline void CreateCastStmt::_internal_set_context(::pg_query::CoercionContext value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.context_ = value; } -// ------------------------------------------------------------------- - -// CallContext - -// bool atomic = 1 [json_name = "atomic"]; -inline void CallContext::clear_atomic() { - _impl_.atomic_ = false; +// bool inout = 5 [json_name = "inout"]; +inline void CreateCastStmt::clear_inout() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.inout_ = false; } -inline bool CallContext::_internal_atomic() const { - return _impl_.atomic_; +inline bool CreateCastStmt::inout() const { + // @@protoc_insertion_point(field_get:pg_query.CreateCastStmt.inout) + return _internal_inout(); } -inline bool CallContext::atomic() const { - // @@protoc_insertion_point(field_get:pg_query.CallContext.atomic) - return _internal_atomic(); +inline void CreateCastStmt::set_inout(bool value) { + _internal_set_inout(value); + // @@protoc_insertion_point(field_set:pg_query.CreateCastStmt.inout) } -inline void CallContext::_internal_set_atomic(bool value) { - - _impl_.atomic_ = value; +inline bool CreateCastStmt::_internal_inout() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.inout_; } -inline void CallContext::set_atomic(bool value) { - _internal_set_atomic(value); - // @@protoc_insertion_point(field_set:pg_query.CallContext.atomic) +inline void CreateCastStmt::_internal_set_inout(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.inout_ = value; } // ------------------------------------------------------------------- -// ScanToken +// CreateTransformStmt -// int32 start = 1; -inline void ScanToken::clear_start() { - _impl_.start_ = 0; +// bool replace = 1 [json_name = "replace"]; +inline void CreateTransformStmt::clear_replace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.replace_ = false; } -inline int32_t ScanToken::_internal_start() const { - return _impl_.start_; +inline bool CreateTransformStmt::replace() const { + // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.replace) + return _internal_replace(); } -inline int32_t ScanToken::start() const { - // @@protoc_insertion_point(field_get:pg_query.ScanToken.start) - return _internal_start(); +inline void CreateTransformStmt::set_replace(bool value) { + _internal_set_replace(value); + // @@protoc_insertion_point(field_set:pg_query.CreateTransformStmt.replace) } -inline void ScanToken::_internal_set_start(int32_t value) { - - _impl_.start_ = value; +inline bool CreateTransformStmt::_internal_replace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.replace_; } -inline void ScanToken::set_start(int32_t value) { - _internal_set_start(value); - // @@protoc_insertion_point(field_set:pg_query.ScanToken.start) +inline void CreateTransformStmt::_internal_set_replace(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.replace_ = value; } -// int32 end = 2; -inline void ScanToken::clear_end() { - _impl_.end_ = 0; +// .pg_query.TypeName type_name = 2 [json_name = "type_name"]; +inline bool CreateTransformStmt::has_type_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.type_name_ != nullptr); + return value; } -inline int32_t ScanToken::_internal_end() const { - return _impl_.end_; +inline void CreateTransformStmt::clear_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.type_name_ != nullptr) _impl_.type_name_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; } -inline int32_t ScanToken::end() const { - // @@protoc_insertion_point(field_get:pg_query.ScanToken.end) - return _internal_end(); +inline const ::pg_query::TypeName& CreateTransformStmt::_internal_type_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::TypeName* p = _impl_.type_name_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_TypeName_default_instance_); } -inline void ScanToken::_internal_set_end(int32_t value) { - - _impl_.end_ = value; +inline const ::pg_query::TypeName& CreateTransformStmt::type_name() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.type_name) + return _internal_type_name(); } -inline void ScanToken::set_end(int32_t value) { - _internal_set_end(value); - // @@protoc_insertion_point(field_set:pg_query.ScanToken.end) +inline void CreateTransformStmt::unsafe_arena_set_allocated_type_name(::pg_query::TypeName* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.type_name_); + } + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTransformStmt.type_name) } +inline ::pg_query::TypeName* CreateTransformStmt::release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// .pg_query.Token token = 4; -inline void ScanToken::clear_token() { - _impl_.token_ = 0; -} -inline ::pg_query::Token ScanToken::_internal_token() const { - return static_cast< ::pg_query::Token >(_impl_.token_); + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* released = _impl_.type_name_; + _impl_.type_name_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; } -inline ::pg_query::Token ScanToken::token() const { - // @@protoc_insertion_point(field_get:pg_query.ScanToken.token) - return _internal_token(); +inline ::pg_query::TypeName* CreateTransformStmt::unsafe_arena_release_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTransformStmt.type_name) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::TypeName* temp = _impl_.type_name_; + _impl_.type_name_ = nullptr; + return temp; } -inline void ScanToken::_internal_set_token(::pg_query::Token value) { - - _impl_.token_ = value; +inline ::pg_query::TypeName* CreateTransformStmt::_internal_mutable_type_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.type_name_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::TypeName>(GetArena()); + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(p); + } + return _impl_.type_name_; } -inline void ScanToken::set_token(::pg_query::Token value) { - _internal_set_token(value); - // @@protoc_insertion_point(field_set:pg_query.ScanToken.token) +inline ::pg_query::TypeName* CreateTransformStmt::mutable_type_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::TypeName* _msg = _internal_mutable_type_name(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTransformStmt.type_name) + return _msg; } +inline void CreateTransformStmt::set_allocated_type_name(::pg_query::TypeName* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::TypeName*>(_impl_.type_name_); + } -// .pg_query.KeywordKind keyword_kind = 5; -inline void ScanToken::clear_keyword_kind() { - _impl_.keyword_kind_ = 0; -} -inline ::pg_query::KeywordKind ScanToken::_internal_keyword_kind() const { - return static_cast< ::pg_query::KeywordKind >(_impl_.keyword_kind_); + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::TypeName*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.type_name_ = reinterpret_cast<::pg_query::TypeName*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTransformStmt.type_name) } -inline ::pg_query::KeywordKind ScanToken::keyword_kind() const { - // @@protoc_insertion_point(field_get:pg_query.ScanToken.keyword_kind) - return _internal_keyword_kind(); + +// string lang = 3 [json_name = "lang"]; +inline void CreateTransformStmt::clear_lang() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.lang_.ClearToEmpty(); } -inline void ScanToken::_internal_set_keyword_kind(::pg_query::KeywordKind value) { - - _impl_.keyword_kind_ = value; +inline const std::string& CreateTransformStmt::lang() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.lang) + return _internal_lang(); } -inline void ScanToken::set_keyword_kind(::pg_query::KeywordKind value) { - _internal_set_keyword_kind(value); - // @@protoc_insertion_point(field_set:pg_query.ScanToken.keyword_kind) +template +inline PROTOBUF_ALWAYS_INLINE void CreateTransformStmt::set_lang(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.lang_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateTransformStmt.lang) +} +inline std::string* CreateTransformStmt::mutable_lang() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_lang(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTransformStmt.lang) + return _s; +} +inline const std::string& CreateTransformStmt::_internal_lang() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.lang_.Get(); +} +inline void CreateTransformStmt::_internal_set_lang(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.lang_.Set(value, GetArena()); +} +inline std::string* CreateTransformStmt::_internal_mutable_lang() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.lang_.Mutable( GetArena()); +} +inline std::string* CreateTransformStmt::release_lang() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTransformStmt.lang) + return _impl_.lang_.Release(); +} +inline void CreateTransformStmt::set_allocated_lang(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.lang_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.lang_.IsDefault()) { + _impl_.lang_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTransformStmt.lang) } -#ifdef __GNUC__ - #pragma GCC diagnostic pop -#endif // __GNUC__ -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- +// .pg_query.ObjectWithArgs fromsql = 4 [json_name = "fromsql"]; +inline bool CreateTransformStmt::has_fromsql() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.fromsql_ != nullptr); + return value; +} +inline void CreateTransformStmt::clear_fromsql() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.fromsql_ != nullptr) _impl_.fromsql_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::ObjectWithArgs& CreateTransformStmt::_internal_fromsql() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::ObjectWithArgs* p = _impl_.fromsql_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_ObjectWithArgs_default_instance_); +} +inline const ::pg_query::ObjectWithArgs& CreateTransformStmt::fromsql() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.fromsql) + return _internal_fromsql(); +} +inline void CreateTransformStmt::unsafe_arena_set_allocated_fromsql(::pg_query::ObjectWithArgs* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.fromsql_); + } + _impl_.fromsql_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTransformStmt.fromsql) +} +inline ::pg_query::ObjectWithArgs* CreateTransformStmt::release_fromsql() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::ObjectWithArgs* released = _impl_.fromsql_; + _impl_.fromsql_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::ObjectWithArgs* CreateTransformStmt::unsafe_arena_release_fromsql() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTransformStmt.fromsql) -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::ObjectWithArgs* temp = _impl_.fromsql_; + _impl_.fromsql_ = nullptr; + return temp; +} +inline ::pg_query::ObjectWithArgs* CreateTransformStmt::_internal_mutable_fromsql() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.fromsql_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArena()); + _impl_.fromsql_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(p); + } + return _impl_.fromsql_; +} +inline ::pg_query::ObjectWithArgs* CreateTransformStmt::mutable_fromsql() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ObjectWithArgs* _msg = _internal_mutable_fromsql(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTransformStmt.fromsql) + return _msg; +} +inline void CreateTransformStmt::set_allocated_fromsql(::pg_query::ObjectWithArgs* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::ObjectWithArgs*>(_impl_.fromsql_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::ObjectWithArgs*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } -// ------------------------------------------------------------------- + _impl_.fromsql_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTransformStmt.fromsql) +} -// ------------------------------------------------------------------- +// .pg_query.ObjectWithArgs tosql = 5 [json_name = "tosql"]; +inline bool CreateTransformStmt::has_tosql() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + PROTOBUF_ASSUME(!value || _impl_.tosql_ != nullptr); + return value; +} +inline void CreateTransformStmt::clear_tosql() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.tosql_ != nullptr) _impl_.tosql_->Clear(); + _impl_._has_bits_[0] &= ~0x00000004u; +} +inline const ::pg_query::ObjectWithArgs& CreateTransformStmt::_internal_tosql() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::ObjectWithArgs* p = _impl_.tosql_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_ObjectWithArgs_default_instance_); +} +inline const ::pg_query::ObjectWithArgs& CreateTransformStmt::tosql() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateTransformStmt.tosql) + return _internal_tosql(); +} +inline void CreateTransformStmt::unsafe_arena_set_allocated_tosql(::pg_query::ObjectWithArgs* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.tosql_); + } + _impl_.tosql_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.CreateTransformStmt.tosql) +} +inline ::pg_query::ObjectWithArgs* CreateTransformStmt::release_tosql() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::ObjectWithArgs* released = _impl_.tosql_; + _impl_.tosql_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::ObjectWithArgs* CreateTransformStmt::unsafe_arena_release_tosql() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateTransformStmt.tosql) -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000004u; + ::pg_query::ObjectWithArgs* temp = _impl_.tosql_; + _impl_.tosql_ = nullptr; + return temp; +} +inline ::pg_query::ObjectWithArgs* CreateTransformStmt::_internal_mutable_tosql() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000004u; + if (_impl_.tosql_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::ObjectWithArgs>(GetArena()); + _impl_.tosql_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(p); + } + return _impl_.tosql_; +} +inline ::pg_query::ObjectWithArgs* CreateTransformStmt::mutable_tosql() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::ObjectWithArgs* _msg = _internal_mutable_tosql(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateTransformStmt.tosql) + return _msg; +} +inline void CreateTransformStmt::set_allocated_tosql(::pg_query::ObjectWithArgs* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::ObjectWithArgs*>(_impl_.tosql_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::ObjectWithArgs*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } -// ------------------------------------------------------------------- + _impl_.tosql_ = reinterpret_cast<::pg_query::ObjectWithArgs*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateTransformStmt.tosql) +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// PrepareStmt -// ------------------------------------------------------------------- +// string name = 1 [json_name = "name"]; +inline void PrepareStmt::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); +} +inline const std::string& PrepareStmt::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PrepareStmt.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE void PrepareStmt::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.PrepareStmt.name) +} +inline std::string* PrepareStmt::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.PrepareStmt.name) + return _s; +} +inline const std::string& PrepareStmt::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); +} +inline void PrepareStmt::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); +} +inline std::string* PrepareStmt::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* PrepareStmt::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PrepareStmt.name) + return _impl_.name_.Release(); +} +inline void PrepareStmt::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.PrepareStmt.name) +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node argtypes = 2 [json_name = "argtypes"]; +inline int PrepareStmt::_internal_argtypes_size() const { + return _internal_argtypes().size(); +} +inline int PrepareStmt::argtypes_size() const { + return _internal_argtypes_size(); +} +inline void PrepareStmt::clear_argtypes() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.argtypes_.Clear(); +} +inline ::pg_query::Node* PrepareStmt::mutable_argtypes(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.PrepareStmt.argtypes) + return _internal_mutable_argtypes()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* PrepareStmt::mutable_argtypes() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.PrepareStmt.argtypes) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_argtypes(); +} +inline const ::pg_query::Node& PrepareStmt::argtypes(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PrepareStmt.argtypes) + return _internal_argtypes().Get(index); +} +inline ::pg_query::Node* PrepareStmt::add_argtypes() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_argtypes()->Add(); + // @@protoc_insertion_point(field_add:pg_query.PrepareStmt.argtypes) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& PrepareStmt::argtypes() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.PrepareStmt.argtypes) + return _internal_argtypes(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +PrepareStmt::_internal_argtypes() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.argtypes_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +PrepareStmt::_internal_mutable_argtypes() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.argtypes_; +} -// ------------------------------------------------------------------- +// .pg_query.Node query = 3 [json_name = "query"]; +inline bool PrepareStmt::has_query() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.query_ != nullptr); + return value; +} +inline void PrepareStmt::clear_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.query_ != nullptr) _impl_.query_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::Node& PrepareStmt::_internal_query() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.query_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& PrepareStmt::query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PrepareStmt.query) + return _internal_query(); +} +inline void PrepareStmt::unsafe_arena_set_allocated_query(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.query_); + } + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PrepareStmt.query) +} +inline ::pg_query::Node* PrepareStmt::release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* released = _impl_.query_; + _impl_.query_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::Node* PrepareStmt::unsafe_arena_release_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PrepareStmt.query) -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::Node* temp = _impl_.query_; + _impl_.query_ = nullptr; + return temp; +} +inline ::pg_query::Node* PrepareStmt::_internal_mutable_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.query_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.query_; +} +inline ::pg_query::Node* PrepareStmt::mutable_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_query(); + // @@protoc_insertion_point(field_mutable:pg_query.PrepareStmt.query) + return _msg; +} +inline void PrepareStmt::set_allocated_query(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.query_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// ------------------------------------------------------------------- + _impl_.query_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.PrepareStmt.query) +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// ExecuteStmt -// ------------------------------------------------------------------- +// string name = 1 [json_name = "name"]; +inline void ExecuteStmt::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); +} +inline const std::string& ExecuteStmt::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ExecuteStmt.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE void ExecuteStmt::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.ExecuteStmt.name) +} +inline std::string* ExecuteStmt::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.ExecuteStmt.name) + return _s; +} +inline const std::string& ExecuteStmt::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); +} +inline void ExecuteStmt::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); +} +inline std::string* ExecuteStmt::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* ExecuteStmt::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ExecuteStmt.name) + return _impl_.name_.Release(); +} +inline void ExecuteStmt::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.ExecuteStmt.name) +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node params = 2 [json_name = "params"]; +inline int ExecuteStmt::_internal_params_size() const { + return _internal_params().size(); +} +inline int ExecuteStmt::params_size() const { + return _internal_params_size(); +} +inline void ExecuteStmt::clear_params() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.params_.Clear(); +} +inline ::pg_query::Node* ExecuteStmt::mutable_params(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ExecuteStmt.params) + return _internal_mutable_params()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ExecuteStmt::mutable_params() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ExecuteStmt.params) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_params(); +} +inline const ::pg_query::Node& ExecuteStmt::params(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ExecuteStmt.params) + return _internal_params().Get(index); +} +inline ::pg_query::Node* ExecuteStmt::add_params() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_params()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ExecuteStmt.params) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ExecuteStmt::params() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ExecuteStmt.params) + return _internal_params(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ExecuteStmt::_internal_params() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.params_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ExecuteStmt::_internal_mutable_params() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.params_; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// DeallocateStmt -// ------------------------------------------------------------------- +// string name = 1 [json_name = "name"]; +inline void DeallocateStmt::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); +} +inline const std::string& DeallocateStmt::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DeallocateStmt.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE void DeallocateStmt::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.DeallocateStmt.name) +} +inline std::string* DeallocateStmt::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.DeallocateStmt.name) + return _s; +} +inline const std::string& DeallocateStmt::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); +} +inline void DeallocateStmt::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); +} +inline std::string* DeallocateStmt::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* DeallocateStmt::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DeallocateStmt.name) + return _impl_.name_.Release(); +} +inline void DeallocateStmt::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.DeallocateStmt.name) +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// DropOwnedStmt -// ------------------------------------------------------------------- +// repeated .pg_query.Node roles = 1 [json_name = "roles"]; +inline int DropOwnedStmt::_internal_roles_size() const { + return _internal_roles().size(); +} +inline int DropOwnedStmt::roles_size() const { + return _internal_roles_size(); +} +inline void DropOwnedStmt::clear_roles() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.roles_.Clear(); +} +inline ::pg_query::Node* DropOwnedStmt::mutable_roles(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.DropOwnedStmt.roles) + return _internal_mutable_roles()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* DropOwnedStmt::mutable_roles() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.DropOwnedStmt.roles) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_roles(); +} +inline const ::pg_query::Node& DropOwnedStmt::roles(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DropOwnedStmt.roles) + return _internal_roles().Get(index); +} +inline ::pg_query::Node* DropOwnedStmt::add_roles() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_roles()->Add(); + // @@protoc_insertion_point(field_add:pg_query.DropOwnedStmt.roles) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& DropOwnedStmt::roles() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.DropOwnedStmt.roles) + return _internal_roles(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +DropOwnedStmt::_internal_roles() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.roles_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +DropOwnedStmt::_internal_mutable_roles() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.roles_; +} -// ------------------------------------------------------------------- +// .pg_query.DropBehavior behavior = 2 [json_name = "behavior"]; +inline void DropOwnedStmt::clear_behavior() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.behavior_ = 0; +} +inline ::pg_query::DropBehavior DropOwnedStmt::behavior() const { + // @@protoc_insertion_point(field_get:pg_query.DropOwnedStmt.behavior) + return _internal_behavior(); +} +inline void DropOwnedStmt::set_behavior(::pg_query::DropBehavior value) { + _internal_set_behavior(value); + // @@protoc_insertion_point(field_set:pg_query.DropOwnedStmt.behavior) +} +inline ::pg_query::DropBehavior DropOwnedStmt::_internal_behavior() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DropBehavior>(_impl_.behavior_); +} +inline void DropOwnedStmt::_internal_set_behavior(::pg_query::DropBehavior value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.behavior_ = value; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// ReassignOwnedStmt -// ------------------------------------------------------------------- +// repeated .pg_query.Node roles = 1 [json_name = "roles"]; +inline int ReassignOwnedStmt::_internal_roles_size() const { + return _internal_roles().size(); +} +inline int ReassignOwnedStmt::roles_size() const { + return _internal_roles_size(); +} +inline void ReassignOwnedStmt::clear_roles() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.roles_.Clear(); +} +inline ::pg_query::Node* ReassignOwnedStmt::mutable_roles(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.ReassignOwnedStmt.roles) + return _internal_mutable_roles()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* ReassignOwnedStmt::mutable_roles() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.ReassignOwnedStmt.roles) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_roles(); +} +inline const ::pg_query::Node& ReassignOwnedStmt::roles(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ReassignOwnedStmt.roles) + return _internal_roles().Get(index); +} +inline ::pg_query::Node* ReassignOwnedStmt::add_roles() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_roles()->Add(); + // @@protoc_insertion_point(field_add:pg_query.ReassignOwnedStmt.roles) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& ReassignOwnedStmt::roles() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.ReassignOwnedStmt.roles) + return _internal_roles(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +ReassignOwnedStmt::_internal_roles() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.roles_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +ReassignOwnedStmt::_internal_mutable_roles() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.roles_; +} -// ------------------------------------------------------------------- +// .pg_query.RoleSpec newrole = 2 [json_name = "newrole"]; +inline bool ReassignOwnedStmt::has_newrole() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.newrole_ != nullptr); + return value; +} +inline void ReassignOwnedStmt::clear_newrole() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.newrole_ != nullptr) _impl_.newrole_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RoleSpec& ReassignOwnedStmt::_internal_newrole() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RoleSpec* p = _impl_.newrole_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RoleSpec_default_instance_); +} +inline const ::pg_query::RoleSpec& ReassignOwnedStmt::newrole() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.ReassignOwnedStmt.newrole) + return _internal_newrole(); +} +inline void ReassignOwnedStmt::unsafe_arena_set_allocated_newrole(::pg_query::RoleSpec* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.newrole_); + } + _impl_.newrole_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.ReassignOwnedStmt.newrole) +} +inline ::pg_query::RoleSpec* ReassignOwnedStmt::release_newrole() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* released = _impl_.newrole_; + _impl_.newrole_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::RoleSpec* ReassignOwnedStmt::unsafe_arena_release_newrole() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.ReassignOwnedStmt.newrole) -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RoleSpec* temp = _impl_.newrole_; + _impl_.newrole_ = nullptr; + return temp; +} +inline ::pg_query::RoleSpec* ReassignOwnedStmt::_internal_mutable_newrole() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.newrole_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RoleSpec>(GetArena()); + _impl_.newrole_ = reinterpret_cast<::pg_query::RoleSpec*>(p); + } + return _impl_.newrole_; +} +inline ::pg_query::RoleSpec* ReassignOwnedStmt::mutable_newrole() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RoleSpec* _msg = _internal_mutable_newrole(); + // @@protoc_insertion_point(field_mutable:pg_query.ReassignOwnedStmt.newrole) + return _msg; +} +inline void ReassignOwnedStmt::set_allocated_newrole(::pg_query::RoleSpec* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RoleSpec*>(_impl_.newrole_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RoleSpec*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// ------------------------------------------------------------------- + _impl_.newrole_ = reinterpret_cast<::pg_query::RoleSpec*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.ReassignOwnedStmt.newrole) +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// AlterTSDictionaryStmt -// ------------------------------------------------------------------- +// repeated .pg_query.Node dictname = 1 [json_name = "dictname"]; +inline int AlterTSDictionaryStmt::_internal_dictname_size() const { + return _internal_dictname().size(); +} +inline int AlterTSDictionaryStmt::dictname_size() const { + return _internal_dictname_size(); +} +inline void AlterTSDictionaryStmt::clear_dictname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dictname_.Clear(); +} +inline ::pg_query::Node* AlterTSDictionaryStmt::mutable_dictname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTSDictionaryStmt.dictname) + return _internal_mutable_dictname()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTSDictionaryStmt::mutable_dictname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSDictionaryStmt.dictname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_dictname(); +} +inline const ::pg_query::Node& AlterTSDictionaryStmt::dictname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTSDictionaryStmt.dictname) + return _internal_dictname().Get(index); +} +inline ::pg_query::Node* AlterTSDictionaryStmt::add_dictname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_dictname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTSDictionaryStmt.dictname) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTSDictionaryStmt::dictname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTSDictionaryStmt.dictname) + return _internal_dictname(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTSDictionaryStmt::_internal_dictname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.dictname_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTSDictionaryStmt::_internal_mutable_dictname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.dictname_; +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int AlterTSDictionaryStmt::_internal_options_size() const { + return _internal_options().size(); +} +inline int AlterTSDictionaryStmt::options_size() const { + return _internal_options_size(); +} +inline void AlterTSDictionaryStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); +} +inline ::pg_query::Node* AlterTSDictionaryStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTSDictionaryStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTSDictionaryStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSDictionaryStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& AlterTSDictionaryStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTSDictionaryStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* AlterTSDictionaryStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTSDictionaryStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTSDictionaryStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTSDictionaryStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTSDictionaryStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTSDictionaryStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// AlterTSConfigurationStmt -// ------------------------------------------------------------------- +// .pg_query.AlterTSConfigType kind = 1 [json_name = "kind"]; +inline void AlterTSConfigurationStmt::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; +} +inline ::pg_query::AlterTSConfigType AlterTSConfigurationStmt::kind() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.kind) + return _internal_kind(); +} +inline void AlterTSConfigurationStmt::set_kind(::pg_query::AlterTSConfigType value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTSConfigurationStmt.kind) +} +inline ::pg_query::AlterTSConfigType AlterTSConfigurationStmt::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::AlterTSConfigType>(_impl_.kind_); +} +inline void AlterTSConfigurationStmt::_internal_set_kind(::pg_query::AlterTSConfigType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node cfgname = 2 [json_name = "cfgname"]; +inline int AlterTSConfigurationStmt::_internal_cfgname_size() const { + return _internal_cfgname().size(); +} +inline int AlterTSConfigurationStmt::cfgname_size() const { + return _internal_cfgname_size(); +} +inline void AlterTSConfigurationStmt::clear_cfgname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.cfgname_.Clear(); +} +inline ::pg_query::Node* AlterTSConfigurationStmt::mutable_cfgname(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTSConfigurationStmt.cfgname) + return _internal_mutable_cfgname()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTSConfigurationStmt::mutable_cfgname() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSConfigurationStmt.cfgname) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_cfgname(); +} +inline const ::pg_query::Node& AlterTSConfigurationStmt::cfgname(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.cfgname) + return _internal_cfgname().Get(index); +} +inline ::pg_query::Node* AlterTSConfigurationStmt::add_cfgname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_cfgname()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTSConfigurationStmt.cfgname) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTSConfigurationStmt::cfgname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTSConfigurationStmt.cfgname) + return _internal_cfgname(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTSConfigurationStmt::_internal_cfgname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.cfgname_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTSConfigurationStmt::_internal_mutable_cfgname() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.cfgname_; +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node tokentype = 3 [json_name = "tokentype"]; +inline int AlterTSConfigurationStmt::_internal_tokentype_size() const { + return _internal_tokentype().size(); +} +inline int AlterTSConfigurationStmt::tokentype_size() const { + return _internal_tokentype_size(); +} +inline void AlterTSConfigurationStmt::clear_tokentype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.tokentype_.Clear(); +} +inline ::pg_query::Node* AlterTSConfigurationStmt::mutable_tokentype(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTSConfigurationStmt.tokentype) + return _internal_mutable_tokentype()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTSConfigurationStmt::mutable_tokentype() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSConfigurationStmt.tokentype) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_tokentype(); +} +inline const ::pg_query::Node& AlterTSConfigurationStmt::tokentype(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.tokentype) + return _internal_tokentype().Get(index); +} +inline ::pg_query::Node* AlterTSConfigurationStmt::add_tokentype() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_tokentype()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTSConfigurationStmt.tokentype) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTSConfigurationStmt::tokentype() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTSConfigurationStmt.tokentype) + return _internal_tokentype(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTSConfigurationStmt::_internal_tokentype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.tokentype_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTSConfigurationStmt::_internal_mutable_tokentype() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.tokentype_; +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node dicts = 4 [json_name = "dicts"]; +inline int AlterTSConfigurationStmt::_internal_dicts_size() const { + return _internal_dicts().size(); +} +inline int AlterTSConfigurationStmt::dicts_size() const { + return _internal_dicts_size(); +} +inline void AlterTSConfigurationStmt::clear_dicts() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.dicts_.Clear(); +} +inline ::pg_query::Node* AlterTSConfigurationStmt::mutable_dicts(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterTSConfigurationStmt.dicts) + return _internal_mutable_dicts()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterTSConfigurationStmt::mutable_dicts() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterTSConfigurationStmt.dicts) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_dicts(); +} +inline const ::pg_query::Node& AlterTSConfigurationStmt::dicts(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.dicts) + return _internal_dicts().Get(index); +} +inline ::pg_query::Node* AlterTSConfigurationStmt::add_dicts() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_dicts()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterTSConfigurationStmt.dicts) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterTSConfigurationStmt::dicts() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterTSConfigurationStmt.dicts) + return _internal_dicts(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterTSConfigurationStmt::_internal_dicts() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.dicts_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterTSConfigurationStmt::_internal_mutable_dicts() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.dicts_; +} -// ------------------------------------------------------------------- +// bool override = 5 [json_name = "override"]; +inline void AlterTSConfigurationStmt::clear_override() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.override_ = false; +} +inline bool AlterTSConfigurationStmt::override() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.override) + return _internal_override(); +} +inline void AlterTSConfigurationStmt::set_override(bool value) { + _internal_set_override(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTSConfigurationStmt.override) +} +inline bool AlterTSConfigurationStmt::_internal_override() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.override_; +} +inline void AlterTSConfigurationStmt::_internal_set_override(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.override_ = value; +} -// ------------------------------------------------------------------- +// bool replace = 6 [json_name = "replace"]; +inline void AlterTSConfigurationStmt::clear_replace() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.replace_ = false; +} +inline bool AlterTSConfigurationStmt::replace() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.replace) + return _internal_replace(); +} +inline void AlterTSConfigurationStmt::set_replace(bool value) { + _internal_set_replace(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTSConfigurationStmt.replace) +} +inline bool AlterTSConfigurationStmt::_internal_replace() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.replace_; +} +inline void AlterTSConfigurationStmt::_internal_set_replace(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.replace_ = value; +} -// ------------------------------------------------------------------- +// bool missing_ok = 7 [json_name = "missing_ok"]; +inline void AlterTSConfigurationStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; +} +inline bool AlterTSConfigurationStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.AlterTSConfigurationStmt.missing_ok) + return _internal_missing_ok(); +} +inline void AlterTSConfigurationStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.AlterTSConfigurationStmt.missing_ok) +} +inline bool AlterTSConfigurationStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; +} +inline void AlterTSConfigurationStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// PublicationTable -// ------------------------------------------------------------------- +// .pg_query.RangeVar relation = 1 [json_name = "relation"]; +inline bool PublicationTable::has_relation() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.relation_ != nullptr); + return value; +} +inline void PublicationTable::clear_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.relation_ != nullptr) _impl_.relation_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::RangeVar& PublicationTable::_internal_relation() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::RangeVar* p = _impl_.relation_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_RangeVar_default_instance_); +} +inline const ::pg_query::RangeVar& PublicationTable::relation() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PublicationTable.relation) + return _internal_relation(); +} +inline void PublicationTable::unsafe_arena_set_allocated_relation(::pg_query::RangeVar* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.relation_); + } + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PublicationTable.relation) +} +inline ::pg_query::RangeVar* PublicationTable::release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* released = _impl_.relation_; + _impl_.relation_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::RangeVar* PublicationTable::unsafe_arena_release_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PublicationTable.relation) -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::RangeVar* temp = _impl_.relation_; + _impl_.relation_ = nullptr; + return temp; +} +inline ::pg_query::RangeVar* PublicationTable::_internal_mutable_relation() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.relation_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::RangeVar>(GetArena()); + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(p); + } + return _impl_.relation_; +} +inline ::pg_query::RangeVar* PublicationTable::mutable_relation() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::RangeVar* _msg = _internal_mutable_relation(); + // @@protoc_insertion_point(field_mutable:pg_query.PublicationTable.relation) + return _msg; +} +inline void PublicationTable::set_allocated_relation(::pg_query::RangeVar* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::RangeVar*>(_impl_.relation_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::RangeVar*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// ------------------------------------------------------------------- + _impl_.relation_ = reinterpret_cast<::pg_query::RangeVar*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.PublicationTable.relation) +} -// ------------------------------------------------------------------- +// .pg_query.Node where_clause = 2 [json_name = "whereClause"]; +inline bool PublicationTable::has_where_clause() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || _impl_.where_clause_ != nullptr); + return value; +} +inline void PublicationTable::clear_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.where_clause_ != nullptr) _impl_.where_clause_->Clear(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const ::pg_query::Node& PublicationTable::_internal_where_clause() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::Node* p = _impl_.where_clause_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_Node_default_instance_); +} +inline const ::pg_query::Node& PublicationTable::where_clause() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PublicationTable.where_clause) + return _internal_where_clause(); +} +inline void PublicationTable::unsafe_arena_set_allocated_where_clause(::pg_query::Node* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.where_clause_); + } + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PublicationTable.where_clause) +} +inline ::pg_query::Node* PublicationTable::release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* released = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::Node* PublicationTable::unsafe_arena_release_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PublicationTable.where_clause) -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000002u; + ::pg_query::Node* temp = _impl_.where_clause_; + _impl_.where_clause_ = nullptr; + return temp; +} +inline ::pg_query::Node* PublicationTable::_internal_mutable_where_clause() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000002u; + if (_impl_.where_clause_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::Node>(GetArena()); + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(p); + } + return _impl_.where_clause_; +} +inline ::pg_query::Node* PublicationTable::mutable_where_clause() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::Node* _msg = _internal_mutable_where_clause(); + // @@protoc_insertion_point(field_mutable:pg_query.PublicationTable.where_clause) + return _msg; +} +inline void PublicationTable::set_allocated_where_clause(::pg_query::Node* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::Node*>(_impl_.where_clause_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::Node*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } -// ------------------------------------------------------------------- + _impl_.where_clause_ = reinterpret_cast<::pg_query::Node*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.PublicationTable.where_clause) +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node columns = 3 [json_name = "columns"]; +inline int PublicationTable::_internal_columns_size() const { + return _internal_columns().size(); +} +inline int PublicationTable::columns_size() const { + return _internal_columns_size(); +} +inline void PublicationTable::clear_columns() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.columns_.Clear(); +} +inline ::pg_query::Node* PublicationTable::mutable_columns(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.PublicationTable.columns) + return _internal_mutable_columns()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* PublicationTable::mutable_columns() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.PublicationTable.columns) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_columns(); +} +inline const ::pg_query::Node& PublicationTable::columns(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PublicationTable.columns) + return _internal_columns().Get(index); +} +inline ::pg_query::Node* PublicationTable::add_columns() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_columns()->Add(); + // @@protoc_insertion_point(field_add:pg_query.PublicationTable.columns) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& PublicationTable::columns() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.PublicationTable.columns) + return _internal_columns(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +PublicationTable::_internal_columns() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.columns_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +PublicationTable::_internal_mutable_columns() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.columns_; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// PublicationObjSpec -// ------------------------------------------------------------------- +// .pg_query.PublicationObjSpecType pubobjtype = 1 [json_name = "pubobjtype"]; +inline void PublicationObjSpec::clear_pubobjtype() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pubobjtype_ = 0; +} +inline ::pg_query::PublicationObjSpecType PublicationObjSpec::pubobjtype() const { + // @@protoc_insertion_point(field_get:pg_query.PublicationObjSpec.pubobjtype) + return _internal_pubobjtype(); +} +inline void PublicationObjSpec::set_pubobjtype(::pg_query::PublicationObjSpecType value) { + _internal_set_pubobjtype(value); + // @@protoc_insertion_point(field_set:pg_query.PublicationObjSpec.pubobjtype) +} +inline ::pg_query::PublicationObjSpecType PublicationObjSpec::_internal_pubobjtype() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::PublicationObjSpecType>(_impl_.pubobjtype_); +} +inline void PublicationObjSpec::_internal_set_pubobjtype(::pg_query::PublicationObjSpecType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.pubobjtype_ = value; +} -// ------------------------------------------------------------------- +// string name = 2 [json_name = "name"]; +inline void PublicationObjSpec::clear_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.ClearToEmpty(); +} +inline const std::string& PublicationObjSpec::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PublicationObjSpec.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE void PublicationObjSpec::set_name(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.PublicationObjSpec.name) +} +inline std::string* PublicationObjSpec::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:pg_query.PublicationObjSpec.name) + return _s; +} +inline const std::string& PublicationObjSpec::_internal_name() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.name_.Get(); +} +inline void PublicationObjSpec::_internal_set_name(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.name_.Set(value, GetArena()); +} +inline std::string* PublicationObjSpec::_internal_mutable_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* PublicationObjSpec::release_name() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PublicationObjSpec.name) + return _impl_.name_.Release(); +} +inline void PublicationObjSpec::set_allocated_name(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.name_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.PublicationObjSpec.name) +} -// ------------------------------------------------------------------- +// .pg_query.PublicationTable pubtable = 3 [json_name = "pubtable"]; +inline bool PublicationObjSpec::has_pubtable() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.pubtable_ != nullptr); + return value; +} +inline void PublicationObjSpec::clear_pubtable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (_impl_.pubtable_ != nullptr) _impl_.pubtable_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::pg_query::PublicationTable& PublicationObjSpec::_internal_pubtable() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + const ::pg_query::PublicationTable* p = _impl_.pubtable_; + return p != nullptr ? *p : reinterpret_cast(::pg_query::_PublicationTable_default_instance_); +} +inline const ::pg_query::PublicationTable& PublicationObjSpec::pubtable() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.PublicationObjSpec.pubtable) + return _internal_pubtable(); +} +inline void PublicationObjSpec::unsafe_arena_set_allocated_pubtable(::pg_query::PublicationTable* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.pubtable_); + } + _impl_.pubtable_ = reinterpret_cast<::pg_query::PublicationTable*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:pg_query.PublicationObjSpec.pubtable) +} +inline ::pg_query::PublicationTable* PublicationObjSpec::release_pubtable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::PublicationTable* released = _impl_.pubtable_; + _impl_.pubtable_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return released; +} +inline ::pg_query::PublicationTable* PublicationObjSpec::unsafe_arena_release_pubtable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.PublicationObjSpec.pubtable) -// ------------------------------------------------------------------- + _impl_._has_bits_[0] &= ~0x00000001u; + ::pg_query::PublicationTable* temp = _impl_.pubtable_; + _impl_.pubtable_ = nullptr; + return temp; +} +inline ::pg_query::PublicationTable* PublicationObjSpec::_internal_mutable_pubtable() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_._has_bits_[0] |= 0x00000001u; + if (_impl_.pubtable_ == nullptr) { + auto* p = CreateMaybeMessage<::pg_query::PublicationTable>(GetArena()); + _impl_.pubtable_ = reinterpret_cast<::pg_query::PublicationTable*>(p); + } + return _impl_.pubtable_; +} +inline ::pg_query::PublicationTable* PublicationObjSpec::mutable_pubtable() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::pg_query::PublicationTable* _msg = _internal_mutable_pubtable(); + // @@protoc_insertion_point(field_mutable:pg_query.PublicationObjSpec.pubtable) + return _msg; +} +inline void PublicationObjSpec::set_allocated_pubtable(::pg_query::PublicationTable* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (message_arena == nullptr) { + delete reinterpret_cast<::pg_query::PublicationTable*>(_impl_.pubtable_); + } -// ------------------------------------------------------------------- + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::pg_query::PublicationTable*>(value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } -// ------------------------------------------------------------------- + _impl_.pubtable_ = reinterpret_cast<::pg_query::PublicationTable*>(value); + // @@protoc_insertion_point(field_set_allocated:pg_query.PublicationObjSpec.pubtable) +} -// ------------------------------------------------------------------- +// int32 location = 4 [json_name = "location"]; +inline void PublicationObjSpec::clear_location() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.location_ = 0; +} +inline ::int32_t PublicationObjSpec::location() const { + // @@protoc_insertion_point(field_get:pg_query.PublicationObjSpec.location) + return _internal_location(); +} +inline void PublicationObjSpec::set_location(::int32_t value) { + _internal_set_location(value); + // @@protoc_insertion_point(field_set:pg_query.PublicationObjSpec.location) +} +inline ::int32_t PublicationObjSpec::_internal_location() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.location_; +} +inline void PublicationObjSpec::_internal_set_location(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.location_ = value; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// CreatePublicationStmt -// ------------------------------------------------------------------- +// string pubname = 1 [json_name = "pubname"]; +inline void CreatePublicationStmt::clear_pubname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pubname_.ClearToEmpty(); +} +inline const std::string& CreatePublicationStmt::pubname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePublicationStmt.pubname) + return _internal_pubname(); +} +template +inline PROTOBUF_ALWAYS_INLINE void CreatePublicationStmt::set_pubname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.pubname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreatePublicationStmt.pubname) +} +inline std::string* CreatePublicationStmt::mutable_pubname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_pubname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreatePublicationStmt.pubname) + return _s; +} +inline const std::string& CreatePublicationStmt::_internal_pubname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.pubname_.Get(); +} +inline void CreatePublicationStmt::_internal_set_pubname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.pubname_.Set(value, GetArena()); +} +inline std::string* CreatePublicationStmt::_internal_mutable_pubname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.pubname_.Mutable( GetArena()); +} +inline std::string* CreatePublicationStmt::release_pubname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreatePublicationStmt.pubname) + return _impl_.pubname_.Release(); +} +inline void CreatePublicationStmt::set_allocated_pubname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pubname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.pubname_.IsDefault()) { + _impl_.pubname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreatePublicationStmt.pubname) +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int CreatePublicationStmt::_internal_options_size() const { + return _internal_options().size(); +} +inline int CreatePublicationStmt::options_size() const { + return _internal_options_size(); +} +inline void CreatePublicationStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); +} +inline ::pg_query::Node* CreatePublicationStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreatePublicationStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreatePublicationStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePublicationStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& CreatePublicationStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePublicationStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* CreatePublicationStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreatePublicationStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreatePublicationStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreatePublicationStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreatePublicationStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreatePublicationStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node pubobjects = 3 [json_name = "pubobjects"]; +inline int CreatePublicationStmt::_internal_pubobjects_size() const { + return _internal_pubobjects().size(); +} +inline int CreatePublicationStmt::pubobjects_size() const { + return _internal_pubobjects_size(); +} +inline void CreatePublicationStmt::clear_pubobjects() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pubobjects_.Clear(); +} +inline ::pg_query::Node* CreatePublicationStmt::mutable_pubobjects(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreatePublicationStmt.pubobjects) + return _internal_mutable_pubobjects()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreatePublicationStmt::mutable_pubobjects() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreatePublicationStmt.pubobjects) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_pubobjects(); +} +inline const ::pg_query::Node& CreatePublicationStmt::pubobjects(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreatePublicationStmt.pubobjects) + return _internal_pubobjects().Get(index); +} +inline ::pg_query::Node* CreatePublicationStmt::add_pubobjects() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_pubobjects()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreatePublicationStmt.pubobjects) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreatePublicationStmt::pubobjects() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreatePublicationStmt.pubobjects) + return _internal_pubobjects(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreatePublicationStmt::_internal_pubobjects() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.pubobjects_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreatePublicationStmt::_internal_mutable_pubobjects() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.pubobjects_; +} -// ------------------------------------------------------------------- +// bool for_all_tables = 4 [json_name = "for_all_tables"]; +inline void CreatePublicationStmt::clear_for_all_tables() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.for_all_tables_ = false; +} +inline bool CreatePublicationStmt::for_all_tables() const { + // @@protoc_insertion_point(field_get:pg_query.CreatePublicationStmt.for_all_tables) + return _internal_for_all_tables(); +} +inline void CreatePublicationStmt::set_for_all_tables(bool value) { + _internal_set_for_all_tables(value); + // @@protoc_insertion_point(field_set:pg_query.CreatePublicationStmt.for_all_tables) +} +inline bool CreatePublicationStmt::_internal_for_all_tables() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.for_all_tables_; +} +inline void CreatePublicationStmt::_internal_set_for_all_tables(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.for_all_tables_ = value; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// AlterPublicationStmt -// ------------------------------------------------------------------- +// string pubname = 1 [json_name = "pubname"]; +inline void AlterPublicationStmt::clear_pubname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pubname_.ClearToEmpty(); +} +inline const std::string& AlterPublicationStmt::pubname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.pubname) + return _internal_pubname(); +} +template +inline PROTOBUF_ALWAYS_INLINE void AlterPublicationStmt::set_pubname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.pubname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterPublicationStmt.pubname) +} +inline std::string* AlterPublicationStmt::mutable_pubname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_pubname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterPublicationStmt.pubname) + return _s; +} +inline const std::string& AlterPublicationStmt::_internal_pubname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.pubname_.Get(); +} +inline void AlterPublicationStmt::_internal_set_pubname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.pubname_.Set(value, GetArena()); +} +inline std::string* AlterPublicationStmt::_internal_mutable_pubname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.pubname_.Mutable( GetArena()); +} +inline std::string* AlterPublicationStmt::release_pubname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterPublicationStmt.pubname) + return _impl_.pubname_.Release(); +} +inline void AlterPublicationStmt::set_allocated_pubname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pubname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.pubname_.IsDefault()) { + _impl_.pubname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterPublicationStmt.pubname) +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node options = 2 [json_name = "options"]; +inline int AlterPublicationStmt::_internal_options_size() const { + return _internal_options().size(); +} +inline int AlterPublicationStmt::options_size() const { + return _internal_options_size(); +} +inline void AlterPublicationStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); +} +inline ::pg_query::Node* AlterPublicationStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterPublicationStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterPublicationStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterPublicationStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& AlterPublicationStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* AlterPublicationStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterPublicationStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterPublicationStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterPublicationStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterPublicationStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterPublicationStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node pubobjects = 3 [json_name = "pubobjects"]; +inline int AlterPublicationStmt::_internal_pubobjects_size() const { + return _internal_pubobjects().size(); +} +inline int AlterPublicationStmt::pubobjects_size() const { + return _internal_pubobjects_size(); +} +inline void AlterPublicationStmt::clear_pubobjects() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.pubobjects_.Clear(); +} +inline ::pg_query::Node* AlterPublicationStmt::mutable_pubobjects(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterPublicationStmt.pubobjects) + return _internal_mutable_pubobjects()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterPublicationStmt::mutable_pubobjects() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterPublicationStmt.pubobjects) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_pubobjects(); +} +inline const ::pg_query::Node& AlterPublicationStmt::pubobjects(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.pubobjects) + return _internal_pubobjects().Get(index); +} +inline ::pg_query::Node* AlterPublicationStmt::add_pubobjects() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_pubobjects()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterPublicationStmt.pubobjects) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterPublicationStmt::pubobjects() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterPublicationStmt.pubobjects) + return _internal_pubobjects(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterPublicationStmt::_internal_pubobjects() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.pubobjects_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterPublicationStmt::_internal_mutable_pubobjects() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.pubobjects_; +} -// ------------------------------------------------------------------- +// bool for_all_tables = 4 [json_name = "for_all_tables"]; +inline void AlterPublicationStmt::clear_for_all_tables() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.for_all_tables_ = false; +} +inline bool AlterPublicationStmt::for_all_tables() const { + // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.for_all_tables) + return _internal_for_all_tables(); +} +inline void AlterPublicationStmt::set_for_all_tables(bool value) { + _internal_set_for_all_tables(value); + // @@protoc_insertion_point(field_set:pg_query.AlterPublicationStmt.for_all_tables) +} +inline bool AlterPublicationStmt::_internal_for_all_tables() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.for_all_tables_; +} +inline void AlterPublicationStmt::_internal_set_for_all_tables(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.for_all_tables_ = value; +} -// ------------------------------------------------------------------- +// .pg_query.AlterPublicationAction action = 5 [json_name = "action"]; +inline void AlterPublicationStmt::clear_action() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.action_ = 0; +} +inline ::pg_query::AlterPublicationAction AlterPublicationStmt::action() const { + // @@protoc_insertion_point(field_get:pg_query.AlterPublicationStmt.action) + return _internal_action(); +} +inline void AlterPublicationStmt::set_action(::pg_query::AlterPublicationAction value) { + _internal_set_action(value); + // @@protoc_insertion_point(field_set:pg_query.AlterPublicationStmt.action) +} +inline ::pg_query::AlterPublicationAction AlterPublicationStmt::_internal_action() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::AlterPublicationAction>(_impl_.action_); +} +inline void AlterPublicationStmt::_internal_set_action(::pg_query::AlterPublicationAction value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.action_ = value; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// CreateSubscriptionStmt -// ------------------------------------------------------------------- +// string subname = 1 [json_name = "subname"]; +inline void CreateSubscriptionStmt::clear_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subname_.ClearToEmpty(); +} +inline const std::string& CreateSubscriptionStmt::subname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateSubscriptionStmt.subname) + return _internal_subname(); +} +template +inline PROTOBUF_ALWAYS_INLINE void CreateSubscriptionStmt::set_subname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateSubscriptionStmt.subname) +} +inline std::string* CreateSubscriptionStmt::mutable_subname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_subname(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateSubscriptionStmt.subname) + return _s; +} +inline const std::string& CreateSubscriptionStmt::_internal_subname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.subname_.Get(); +} +inline void CreateSubscriptionStmt::_internal_set_subname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subname_.Set(value, GetArena()); +} +inline std::string* CreateSubscriptionStmt::_internal_mutable_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.subname_.Mutable( GetArena()); +} +inline std::string* CreateSubscriptionStmt::release_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateSubscriptionStmt.subname) + return _impl_.subname_.Release(); +} +inline void CreateSubscriptionStmt::set_allocated_subname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.subname_.IsDefault()) { + _impl_.subname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSubscriptionStmt.subname) +} -// ------------------------------------------------------------------- +// string conninfo = 2 [json_name = "conninfo"]; +inline void CreateSubscriptionStmt::clear_conninfo() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conninfo_.ClearToEmpty(); +} +inline const std::string& CreateSubscriptionStmt::conninfo() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateSubscriptionStmt.conninfo) + return _internal_conninfo(); +} +template +inline PROTOBUF_ALWAYS_INLINE void CreateSubscriptionStmt::set_conninfo(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conninfo_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.CreateSubscriptionStmt.conninfo) +} +inline std::string* CreateSubscriptionStmt::mutable_conninfo() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_conninfo(); + // @@protoc_insertion_point(field_mutable:pg_query.CreateSubscriptionStmt.conninfo) + return _s; +} +inline const std::string& CreateSubscriptionStmt::_internal_conninfo() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.conninfo_.Get(); +} +inline void CreateSubscriptionStmt::_internal_set_conninfo(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conninfo_.Set(value, GetArena()); +} +inline std::string* CreateSubscriptionStmt::_internal_mutable_conninfo() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.conninfo_.Mutable( GetArena()); +} +inline std::string* CreateSubscriptionStmt::release_conninfo() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.CreateSubscriptionStmt.conninfo) + return _impl_.conninfo_.Release(); +} +inline void CreateSubscriptionStmt::set_allocated_conninfo(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conninfo_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.conninfo_.IsDefault()) { + _impl_.conninfo_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.CreateSubscriptionStmt.conninfo) +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node publication = 3 [json_name = "publication"]; +inline int CreateSubscriptionStmt::_internal_publication_size() const { + return _internal_publication().size(); +} +inline int CreateSubscriptionStmt::publication_size() const { + return _internal_publication_size(); +} +inline void CreateSubscriptionStmt::clear_publication() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.publication_.Clear(); +} +inline ::pg_query::Node* CreateSubscriptionStmt::mutable_publication(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateSubscriptionStmt.publication) + return _internal_mutable_publication()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateSubscriptionStmt::mutable_publication() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateSubscriptionStmt.publication) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_publication(); +} +inline const ::pg_query::Node& CreateSubscriptionStmt::publication(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateSubscriptionStmt.publication) + return _internal_publication().Get(index); +} +inline ::pg_query::Node* CreateSubscriptionStmt::add_publication() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_publication()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateSubscriptionStmt.publication) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateSubscriptionStmt::publication() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateSubscriptionStmt.publication) + return _internal_publication(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateSubscriptionStmt::_internal_publication() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.publication_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateSubscriptionStmt::_internal_mutable_publication() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.publication_; +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node options = 4 [json_name = "options"]; +inline int CreateSubscriptionStmt::_internal_options_size() const { + return _internal_options().size(); +} +inline int CreateSubscriptionStmt::options_size() const { + return _internal_options_size(); +} +inline void CreateSubscriptionStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); +} +inline ::pg_query::Node* CreateSubscriptionStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.CreateSubscriptionStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* CreateSubscriptionStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.CreateSubscriptionStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& CreateSubscriptionStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.CreateSubscriptionStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* CreateSubscriptionStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.CreateSubscriptionStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& CreateSubscriptionStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.CreateSubscriptionStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +CreateSubscriptionStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +CreateSubscriptionStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// AlterSubscriptionStmt -// ------------------------------------------------------------------- +// .pg_query.AlterSubscriptionType kind = 1 [json_name = "kind"]; +inline void AlterSubscriptionStmt::clear_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.kind_ = 0; +} +inline ::pg_query::AlterSubscriptionType AlterSubscriptionStmt::kind() const { + // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.kind) + return _internal_kind(); +} +inline void AlterSubscriptionStmt::set_kind(::pg_query::AlterSubscriptionType value) { + _internal_set_kind(value); + // @@protoc_insertion_point(field_set:pg_query.AlterSubscriptionStmt.kind) +} +inline ::pg_query::AlterSubscriptionType AlterSubscriptionStmt::_internal_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::AlterSubscriptionType>(_impl_.kind_); +} +inline void AlterSubscriptionStmt::_internal_set_kind(::pg_query::AlterSubscriptionType value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.kind_ = value; +} -// ------------------------------------------------------------------- +// string subname = 2 [json_name = "subname"]; +inline void AlterSubscriptionStmt::clear_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subname_.ClearToEmpty(); +} +inline const std::string& AlterSubscriptionStmt::subname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.subname) + return _internal_subname(); +} +template +inline PROTOBUF_ALWAYS_INLINE void AlterSubscriptionStmt::set_subname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterSubscriptionStmt.subname) +} +inline std::string* AlterSubscriptionStmt::mutable_subname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_subname(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterSubscriptionStmt.subname) + return _s; +} +inline const std::string& AlterSubscriptionStmt::_internal_subname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.subname_.Get(); +} +inline void AlterSubscriptionStmt::_internal_set_subname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subname_.Set(value, GetArena()); +} +inline std::string* AlterSubscriptionStmt::_internal_mutable_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.subname_.Mutable( GetArena()); +} +inline std::string* AlterSubscriptionStmt::release_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterSubscriptionStmt.subname) + return _impl_.subname_.Release(); +} +inline void AlterSubscriptionStmt::set_allocated_subname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.subname_.IsDefault()) { + _impl_.subname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterSubscriptionStmt.subname) +} -// ------------------------------------------------------------------- +// string conninfo = 3 [json_name = "conninfo"]; +inline void AlterSubscriptionStmt::clear_conninfo() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conninfo_.ClearToEmpty(); +} +inline const std::string& AlterSubscriptionStmt::conninfo() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.conninfo) + return _internal_conninfo(); +} +template +inline PROTOBUF_ALWAYS_INLINE void AlterSubscriptionStmt::set_conninfo(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conninfo_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.AlterSubscriptionStmt.conninfo) +} +inline std::string* AlterSubscriptionStmt::mutable_conninfo() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_conninfo(); + // @@protoc_insertion_point(field_mutable:pg_query.AlterSubscriptionStmt.conninfo) + return _s; +} +inline const std::string& AlterSubscriptionStmt::_internal_conninfo() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.conninfo_.Get(); +} +inline void AlterSubscriptionStmt::_internal_set_conninfo(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.conninfo_.Set(value, GetArena()); +} +inline std::string* AlterSubscriptionStmt::_internal_mutable_conninfo() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.conninfo_.Mutable( GetArena()); +} +inline std::string* AlterSubscriptionStmt::release_conninfo() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.AlterSubscriptionStmt.conninfo) + return _impl_.conninfo_.Release(); +} +inline void AlterSubscriptionStmt::set_allocated_conninfo(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.conninfo_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.conninfo_.IsDefault()) { + _impl_.conninfo_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.AlterSubscriptionStmt.conninfo) +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node publication = 4 [json_name = "publication"]; +inline int AlterSubscriptionStmt::_internal_publication_size() const { + return _internal_publication().size(); +} +inline int AlterSubscriptionStmt::publication_size() const { + return _internal_publication_size(); +} +inline void AlterSubscriptionStmt::clear_publication() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.publication_.Clear(); +} +inline ::pg_query::Node* AlterSubscriptionStmt::mutable_publication(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterSubscriptionStmt.publication) + return _internal_mutable_publication()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterSubscriptionStmt::mutable_publication() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterSubscriptionStmt.publication) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_publication(); +} +inline const ::pg_query::Node& AlterSubscriptionStmt::publication(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.publication) + return _internal_publication().Get(index); +} +inline ::pg_query::Node* AlterSubscriptionStmt::add_publication() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_publication()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterSubscriptionStmt.publication) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterSubscriptionStmt::publication() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterSubscriptionStmt.publication) + return _internal_publication(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterSubscriptionStmt::_internal_publication() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.publication_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterSubscriptionStmt::_internal_mutable_publication() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.publication_; +} -// ------------------------------------------------------------------- +// repeated .pg_query.Node options = 5 [json_name = "options"]; +inline int AlterSubscriptionStmt::_internal_options_size() const { + return _internal_options().size(); +} +inline int AlterSubscriptionStmt::options_size() const { + return _internal_options_size(); +} +inline void AlterSubscriptionStmt::clear_options() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.options_.Clear(); +} +inline ::pg_query::Node* AlterSubscriptionStmt::mutable_options(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:pg_query.AlterSubscriptionStmt.options) + return _internal_mutable_options()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* AlterSubscriptionStmt::mutable_options() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:pg_query.AlterSubscriptionStmt.options) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + return _internal_mutable_options(); +} +inline const ::pg_query::Node& AlterSubscriptionStmt::options(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.AlterSubscriptionStmt.options) + return _internal_options().Get(index); +} +inline ::pg_query::Node* AlterSubscriptionStmt::add_options() ABSL_ATTRIBUTE_LIFETIME_BOUND { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::pg_query::Node* _add = _internal_mutable_options()->Add(); + // @@protoc_insertion_point(field_add:pg_query.AlterSubscriptionStmt.options) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& AlterSubscriptionStmt::options() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:pg_query.AlterSubscriptionStmt.options) + return _internal_options(); +} +inline const ::google::protobuf::RepeatedPtrField<::pg_query::Node>& +AlterSubscriptionStmt::_internal_options() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.options_; +} +inline ::google::protobuf::RepeatedPtrField<::pg_query::Node>* +AlterSubscriptionStmt::_internal_mutable_options() { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return &_impl_.options_; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// DropSubscriptionStmt -// ------------------------------------------------------------------- +// string subname = 1 [json_name = "subname"]; +inline void DropSubscriptionStmt::clear_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subname_.ClearToEmpty(); +} +inline const std::string& DropSubscriptionStmt::subname() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:pg_query.DropSubscriptionStmt.subname) + return _internal_subname(); +} +template +inline PROTOBUF_ALWAYS_INLINE void DropSubscriptionStmt::set_subname(Arg_&& arg, + Args_... args) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subname_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:pg_query.DropSubscriptionStmt.subname) +} +inline std::string* DropSubscriptionStmt::mutable_subname() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_subname(); + // @@protoc_insertion_point(field_mutable:pg_query.DropSubscriptionStmt.subname) + return _s; +} +inline const std::string& DropSubscriptionStmt::_internal_subname() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.subname_.Get(); +} +inline void DropSubscriptionStmt::_internal_set_subname(const std::string& value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.subname_.Set(value, GetArena()); +} +inline std::string* DropSubscriptionStmt::_internal_mutable_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + return _impl_.subname_.Mutable( GetArena()); +} +inline std::string* DropSubscriptionStmt::release_subname() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + // @@protoc_insertion_point(field_release:pg_query.DropSubscriptionStmt.subname) + return _impl_.subname_.Release(); +} +inline void DropSubscriptionStmt::set_allocated_subname(std::string* value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.subname_.SetAllocated(value, GetArena()); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.subname_.IsDefault()) { + _impl_.subname_.Set("", GetArena()); + } + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:pg_query.DropSubscriptionStmt.subname) +} -// ------------------------------------------------------------------- +// bool missing_ok = 2 [json_name = "missing_ok"]; +inline void DropSubscriptionStmt::clear_missing_ok() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.missing_ok_ = false; +} +inline bool DropSubscriptionStmt::missing_ok() const { + // @@protoc_insertion_point(field_get:pg_query.DropSubscriptionStmt.missing_ok) + return _internal_missing_ok(); +} +inline void DropSubscriptionStmt::set_missing_ok(bool value) { + _internal_set_missing_ok(value); + // @@protoc_insertion_point(field_set:pg_query.DropSubscriptionStmt.missing_ok) +} +inline bool DropSubscriptionStmt::_internal_missing_ok() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.missing_ok_; +} +inline void DropSubscriptionStmt::_internal_set_missing_ok(bool value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.missing_ok_ = value; +} -// ------------------------------------------------------------------- +// .pg_query.DropBehavior behavior = 3 [json_name = "behavior"]; +inline void DropSubscriptionStmt::clear_behavior() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.behavior_ = 0; +} +inline ::pg_query::DropBehavior DropSubscriptionStmt::behavior() const { + // @@protoc_insertion_point(field_get:pg_query.DropSubscriptionStmt.behavior) + return _internal_behavior(); +} +inline void DropSubscriptionStmt::set_behavior(::pg_query::DropBehavior value) { + _internal_set_behavior(value); + // @@protoc_insertion_point(field_set:pg_query.DropSubscriptionStmt.behavior) +} +inline ::pg_query::DropBehavior DropSubscriptionStmt::_internal_behavior() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::DropBehavior>(_impl_.behavior_); +} +inline void DropSubscriptionStmt::_internal_set_behavior(::pg_query::DropBehavior value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.behavior_ = value; +} // ------------------------------------------------------------------- -// ------------------------------------------------------------------- +// ScanToken -// ------------------------------------------------------------------- +// int32 start = 1; +inline void ScanToken::clear_start() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.start_ = 0; +} +inline ::int32_t ScanToken::start() const { + // @@protoc_insertion_point(field_get:pg_query.ScanToken.start) + return _internal_start(); +} +inline void ScanToken::set_start(::int32_t value) { + _internal_set_start(value); + // @@protoc_insertion_point(field_set:pg_query.ScanToken.start) +} +inline ::int32_t ScanToken::_internal_start() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.start_; +} +inline void ScanToken::_internal_set_start(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.start_ = value; +} -// ------------------------------------------------------------------- +// int32 end = 2; +inline void ScanToken::clear_end() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.end_ = 0; +} +inline ::int32_t ScanToken::end() const { + // @@protoc_insertion_point(field_get:pg_query.ScanToken.end) + return _internal_end(); +} +inline void ScanToken::set_end(::int32_t value) { + _internal_set_end(value); + // @@protoc_insertion_point(field_set:pg_query.ScanToken.end) +} +inline ::int32_t ScanToken::_internal_end() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return _impl_.end_; +} +inline void ScanToken::_internal_set_end(::int32_t value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.end_ = value; +} -// ------------------------------------------------------------------- +// .pg_query.Token token = 4; +inline void ScanToken::clear_token() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.token_ = 0; +} +inline ::pg_query::Token ScanToken::token() const { + // @@protoc_insertion_point(field_get:pg_query.ScanToken.token) + return _internal_token(); +} +inline void ScanToken::set_token(::pg_query::Token value) { + _internal_set_token(value); + // @@protoc_insertion_point(field_set:pg_query.ScanToken.token) +} +inline ::pg_query::Token ScanToken::_internal_token() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::Token>(_impl_.token_); +} +inline void ScanToken::_internal_set_token(::pg_query::Token value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.token_ = value; +} -// ------------------------------------------------------------------- +// .pg_query.KeywordKind keyword_kind = 5; +inline void ScanToken::clear_keyword_kind() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + _impl_.keyword_kind_ = 0; +} +inline ::pg_query::KeywordKind ScanToken::keyword_kind() const { + // @@protoc_insertion_point(field_get:pg_query.ScanToken.keyword_kind) + return _internal_keyword_kind(); +} +inline void ScanToken::set_keyword_kind(::pg_query::KeywordKind value) { + _internal_set_keyword_kind(value); + // @@protoc_insertion_point(field_set:pg_query.ScanToken.keyword_kind) +} +inline ::pg_query::KeywordKind ScanToken::_internal_keyword_kind() const { + PROTOBUF_TSAN_READ(&_impl_._tsan_detect_race); + return static_cast<::pg_query::KeywordKind>(_impl_.keyword_kind_); +} +inline void ScanToken::_internal_set_keyword_kind(::pg_query::KeywordKind value) { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ; + _impl_.keyword_kind_ = value; +} +#ifdef __GNUC__ +#pragma GCC diagnostic pop +#endif // __GNUC__ // @@protoc_insertion_point(namespace_scope) - } // namespace pg_query -PROTOBUF_NAMESPACE_OPEN -template <> struct is_proto_enum< ::pg_query::OverridingKind> : ::std::true_type {}; +namespace google { +namespace protobuf { + +template <> +struct is_proto_enum<::pg_query::OverridingKind> : std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::OverridingKind>() { +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::OverridingKind>() { return ::pg_query::OverridingKind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::QuerySource> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::QuerySource>() { +struct is_proto_enum<::pg_query::QuerySource> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::QuerySource>() { return ::pg_query::QuerySource_descriptor(); } -template <> struct is_proto_enum< ::pg_query::SortByDir> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::SortByDir>() { +struct is_proto_enum<::pg_query::SortByDir> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::SortByDir>() { return ::pg_query::SortByDir_descriptor(); } -template <> struct is_proto_enum< ::pg_query::SortByNulls> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::SortByNulls>() { +struct is_proto_enum<::pg_query::SortByNulls> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::SortByNulls>() { return ::pg_query::SortByNulls_descriptor(); } -template <> struct is_proto_enum< ::pg_query::SetQuantifier> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::SetQuantifier>() { +struct is_proto_enum<::pg_query::SetQuantifier> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::SetQuantifier>() { return ::pg_query::SetQuantifier_descriptor(); } -template <> struct is_proto_enum< ::pg_query::A_Expr_Kind> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::A_Expr_Kind>() { +struct is_proto_enum<::pg_query::A_Expr_Kind> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::A_Expr_Kind>() { return ::pg_query::A_Expr_Kind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::RoleSpecType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::RoleSpecType>() { +struct is_proto_enum<::pg_query::RoleSpecType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::RoleSpecType>() { return ::pg_query::RoleSpecType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::TableLikeOption> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::TableLikeOption>() { +struct is_proto_enum<::pg_query::TableLikeOption> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::TableLikeOption>() { return ::pg_query::TableLikeOption_descriptor(); } -template <> struct is_proto_enum< ::pg_query::DefElemAction> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::DefElemAction>() { +struct is_proto_enum<::pg_query::DefElemAction> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::DefElemAction>() { return ::pg_query::DefElemAction_descriptor(); } -template <> struct is_proto_enum< ::pg_query::PartitionRangeDatumKind> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::PartitionRangeDatumKind>() { +struct is_proto_enum<::pg_query::PartitionStrategy> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::PartitionStrategy>() { + return ::pg_query::PartitionStrategy_descriptor(); +} +template <> +struct is_proto_enum<::pg_query::PartitionRangeDatumKind> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::PartitionRangeDatumKind>() { return ::pg_query::PartitionRangeDatumKind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::RTEKind> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::RTEKind>() { +struct is_proto_enum<::pg_query::RTEKind> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::RTEKind>() { return ::pg_query::RTEKind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::WCOKind> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::WCOKind>() { +struct is_proto_enum<::pg_query::WCOKind> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::WCOKind>() { return ::pg_query::WCOKind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::GroupingSetKind> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::GroupingSetKind>() { +struct is_proto_enum<::pg_query::GroupingSetKind> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::GroupingSetKind>() { return ::pg_query::GroupingSetKind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::CTEMaterialize> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::CTEMaterialize>() { +struct is_proto_enum<::pg_query::CTEMaterialize> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::CTEMaterialize>() { return ::pg_query::CTEMaterialize_descriptor(); } -template <> struct is_proto_enum< ::pg_query::SetOperation> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::SetOperation>() { +struct is_proto_enum<::pg_query::SetOperation> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::SetOperation>() { return ::pg_query::SetOperation_descriptor(); } -template <> struct is_proto_enum< ::pg_query::ObjectType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::ObjectType>() { +struct is_proto_enum<::pg_query::ObjectType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::ObjectType>() { return ::pg_query::ObjectType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::DropBehavior> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::DropBehavior>() { +struct is_proto_enum<::pg_query::DropBehavior> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::DropBehavior>() { return ::pg_query::DropBehavior_descriptor(); } -template <> struct is_proto_enum< ::pg_query::AlterTableType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::AlterTableType>() { +struct is_proto_enum<::pg_query::AlterTableType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::AlterTableType>() { return ::pg_query::AlterTableType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::GrantTargetType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::GrantTargetType>() { +struct is_proto_enum<::pg_query::GrantTargetType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::GrantTargetType>() { return ::pg_query::GrantTargetType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::VariableSetKind> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::VariableSetKind>() { +struct is_proto_enum<::pg_query::VariableSetKind> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::VariableSetKind>() { return ::pg_query::VariableSetKind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::ConstrType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::ConstrType>() { +struct is_proto_enum<::pg_query::ConstrType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::ConstrType>() { return ::pg_query::ConstrType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::ImportForeignSchemaType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::ImportForeignSchemaType>() { +struct is_proto_enum<::pg_query::ImportForeignSchemaType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::ImportForeignSchemaType>() { return ::pg_query::ImportForeignSchemaType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::RoleStmtType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::RoleStmtType>() { +struct is_proto_enum<::pg_query::RoleStmtType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::RoleStmtType>() { return ::pg_query::RoleStmtType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::FetchDirection> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::FetchDirection>() { +struct is_proto_enum<::pg_query::FetchDirection> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::FetchDirection>() { return ::pg_query::FetchDirection_descriptor(); } -template <> struct is_proto_enum< ::pg_query::FunctionParameterMode> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::FunctionParameterMode>() { +struct is_proto_enum<::pg_query::FunctionParameterMode> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::FunctionParameterMode>() { return ::pg_query::FunctionParameterMode_descriptor(); } -template <> struct is_proto_enum< ::pg_query::TransactionStmtKind> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::TransactionStmtKind>() { +struct is_proto_enum<::pg_query::TransactionStmtKind> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::TransactionStmtKind>() { return ::pg_query::TransactionStmtKind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::ViewCheckOption> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::ViewCheckOption>() { +struct is_proto_enum<::pg_query::ViewCheckOption> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::ViewCheckOption>() { return ::pg_query::ViewCheckOption_descriptor(); } -template <> struct is_proto_enum< ::pg_query::DiscardMode> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::DiscardMode>() { +struct is_proto_enum<::pg_query::DiscardMode> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::DiscardMode>() { return ::pg_query::DiscardMode_descriptor(); } -template <> struct is_proto_enum< ::pg_query::ReindexObjectType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::ReindexObjectType>() { +struct is_proto_enum<::pg_query::ReindexObjectType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::ReindexObjectType>() { return ::pg_query::ReindexObjectType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::AlterTSConfigType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::AlterTSConfigType>() { +struct is_proto_enum<::pg_query::AlterTSConfigType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::AlterTSConfigType>() { return ::pg_query::AlterTSConfigType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::PublicationObjSpecType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::PublicationObjSpecType>() { +struct is_proto_enum<::pg_query::PublicationObjSpecType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::PublicationObjSpecType>() { return ::pg_query::PublicationObjSpecType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::AlterPublicationAction> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::AlterPublicationAction>() { +struct is_proto_enum<::pg_query::AlterPublicationAction> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::AlterPublicationAction>() { return ::pg_query::AlterPublicationAction_descriptor(); } -template <> struct is_proto_enum< ::pg_query::AlterSubscriptionType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::AlterSubscriptionType>() { +struct is_proto_enum<::pg_query::AlterSubscriptionType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::AlterSubscriptionType>() { return ::pg_query::AlterSubscriptionType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::OnCommitAction> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::OnCommitAction>() { +struct is_proto_enum<::pg_query::OnCommitAction> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::OnCommitAction>() { return ::pg_query::OnCommitAction_descriptor(); } -template <> struct is_proto_enum< ::pg_query::ParamKind> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::ParamKind>() { +struct is_proto_enum<::pg_query::ParamKind> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::ParamKind>() { return ::pg_query::ParamKind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::CoercionContext> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::CoercionContext>() { +struct is_proto_enum<::pg_query::CoercionContext> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::CoercionContext>() { return ::pg_query::CoercionContext_descriptor(); } -template <> struct is_proto_enum< ::pg_query::CoercionForm> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::CoercionForm>() { +struct is_proto_enum<::pg_query::CoercionForm> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::CoercionForm>() { return ::pg_query::CoercionForm_descriptor(); } -template <> struct is_proto_enum< ::pg_query::BoolExprType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::BoolExprType>() { +struct is_proto_enum<::pg_query::BoolExprType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::BoolExprType>() { return ::pg_query::BoolExprType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::SubLinkType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::SubLinkType>() { +struct is_proto_enum<::pg_query::SubLinkType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::SubLinkType>() { return ::pg_query::SubLinkType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::RowCompareType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::RowCompareType>() { +struct is_proto_enum<::pg_query::RowCompareType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::RowCompareType>() { return ::pg_query::RowCompareType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::MinMaxOp> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::MinMaxOp>() { +struct is_proto_enum<::pg_query::MinMaxOp> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::MinMaxOp>() { return ::pg_query::MinMaxOp_descriptor(); } -template <> struct is_proto_enum< ::pg_query::SQLValueFunctionOp> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::SQLValueFunctionOp>() { +struct is_proto_enum<::pg_query::SQLValueFunctionOp> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::SQLValueFunctionOp>() { return ::pg_query::SQLValueFunctionOp_descriptor(); } -template <> struct is_proto_enum< ::pg_query::XmlExprOp> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::XmlExprOp>() { +struct is_proto_enum<::pg_query::XmlExprOp> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::XmlExprOp>() { return ::pg_query::XmlExprOp_descriptor(); } -template <> struct is_proto_enum< ::pg_query::XmlOptionType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::XmlOptionType>() { +struct is_proto_enum<::pg_query::XmlOptionType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::XmlOptionType>() { return ::pg_query::XmlOptionType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::NullTestType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::NullTestType>() { +struct is_proto_enum<::pg_query::JsonEncoding> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::JsonEncoding>() { + return ::pg_query::JsonEncoding_descriptor(); +} +template <> +struct is_proto_enum<::pg_query::JsonFormatType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::JsonFormatType>() { + return ::pg_query::JsonFormatType_descriptor(); +} +template <> +struct is_proto_enum<::pg_query::JsonConstructorType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::JsonConstructorType>() { + return ::pg_query::JsonConstructorType_descriptor(); +} +template <> +struct is_proto_enum<::pg_query::JsonValueType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::JsonValueType>() { + return ::pg_query::JsonValueType_descriptor(); +} +template <> +struct is_proto_enum<::pg_query::NullTestType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::NullTestType>() { return ::pg_query::NullTestType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::BoolTestType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::BoolTestType>() { +struct is_proto_enum<::pg_query::BoolTestType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::BoolTestType>() { return ::pg_query::BoolTestType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::CmdType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::CmdType>() { +struct is_proto_enum<::pg_query::CmdType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::CmdType>() { return ::pg_query::CmdType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::JoinType> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::JoinType>() { +struct is_proto_enum<::pg_query::JoinType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::JoinType>() { return ::pg_query::JoinType_descriptor(); } -template <> struct is_proto_enum< ::pg_query::AggStrategy> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::AggStrategy>() { +struct is_proto_enum<::pg_query::AggStrategy> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::AggStrategy>() { return ::pg_query::AggStrategy_descriptor(); } -template <> struct is_proto_enum< ::pg_query::AggSplit> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::AggSplit>() { +struct is_proto_enum<::pg_query::AggSplit> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::AggSplit>() { return ::pg_query::AggSplit_descriptor(); } -template <> struct is_proto_enum< ::pg_query::SetOpCmd> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::SetOpCmd>() { +struct is_proto_enum<::pg_query::SetOpCmd> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::SetOpCmd>() { return ::pg_query::SetOpCmd_descriptor(); } -template <> struct is_proto_enum< ::pg_query::SetOpStrategy> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::SetOpStrategy>() { +struct is_proto_enum<::pg_query::SetOpStrategy> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::SetOpStrategy>() { return ::pg_query::SetOpStrategy_descriptor(); } -template <> struct is_proto_enum< ::pg_query::OnConflictAction> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::OnConflictAction>() { +struct is_proto_enum<::pg_query::OnConflictAction> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::OnConflictAction>() { return ::pg_query::OnConflictAction_descriptor(); } -template <> struct is_proto_enum< ::pg_query::LimitOption> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::LimitOption>() { +struct is_proto_enum<::pg_query::LimitOption> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::LimitOption>() { return ::pg_query::LimitOption_descriptor(); } -template <> struct is_proto_enum< ::pg_query::LockClauseStrength> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::LockClauseStrength>() { +struct is_proto_enum<::pg_query::LockClauseStrength> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::LockClauseStrength>() { return ::pg_query::LockClauseStrength_descriptor(); } -template <> struct is_proto_enum< ::pg_query::LockWaitPolicy> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::LockWaitPolicy>() { +struct is_proto_enum<::pg_query::LockWaitPolicy> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::LockWaitPolicy>() { return ::pg_query::LockWaitPolicy_descriptor(); } -template <> struct is_proto_enum< ::pg_query::LockTupleMode> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::LockTupleMode>() { +struct is_proto_enum<::pg_query::LockTupleMode> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::LockTupleMode>() { return ::pg_query::LockTupleMode_descriptor(); } -template <> struct is_proto_enum< ::pg_query::KeywordKind> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::KeywordKind>() { +struct is_proto_enum<::pg_query::KeywordKind> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::KeywordKind>() { return ::pg_query::KeywordKind_descriptor(); } -template <> struct is_proto_enum< ::pg_query::Token> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::pg_query::Token>() { +struct is_proto_enum<::pg_query::Token> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::pg_query::Token>() { return ::pg_query::Token_descriptor(); } -PROTOBUF_NAMESPACE_CLOSE +} // namespace protobuf +} // namespace google // @@protoc_insertion_point(global_scope) -#include -#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_protobuf_2fpg_5fquery_2eproto +#include "google/protobuf/port_undef.inc" + +#endif // GOOGLE_PROTOBUF_INCLUDED_protobuf_2fpg_5fquery_2eproto_2epb_2eh diff --git a/parser/include/regex/regex.h b/parser/include/regex/regex.h index 0455ae80..d0811372 100644 --- a/parser/include/regex/regex.h +++ b/parser/include/regex/regex.h @@ -156,7 +156,6 @@ typedef struct #define REG_BADOPT 18 /* invalid embedded option */ #define REG_ETOOBIG 19 /* regular expression is too complex */ #define REG_ECOLORS 20 /* too many colors */ -#define REG_CANCEL 21 /* operation cancelled */ /* two specials for debugging and testing */ #define REG_ATOI 101 /* convert error-code name to number */ #define REG_ITOA 102 /* convert error-code number to name */ @@ -171,11 +170,15 @@ typedef struct */ /* regcomp.c */ -extern int pg_regcomp(regex_t *, const pg_wchar *, size_t, int, Oid); -extern int pg_regexec(regex_t *, const pg_wchar *, size_t, size_t, rm_detail_t *, size_t, regmatch_t[], int); -extern int pg_regprefix(regex_t *, pg_wchar **, size_t *); -extern void pg_regfree(regex_t *); -extern size_t pg_regerror(int, const regex_t *, char *, size_t); +extern int pg_regcomp(regex_t *re, const pg_wchar *string, size_t len, + int flags, Oid collation); +extern int pg_regexec(regex_t *re, const pg_wchar *string, size_t len, + size_t search_start, rm_detail_t *details, + size_t nmatch, regmatch_t pmatch[], int flags); +extern int pg_regprefix(regex_t *re, pg_wchar **string, size_t *slength); +extern void pg_regfree(regex_t *re); +extern size_t pg_regerror(int errcode, const regex_t *preg, char *errbuf, + size_t errbuf_size); /* regexp.c */ extern regex_t *RE_compile_and_cache(text *text_re, int cflags, Oid collation); diff --git a/parser/include/replication/logicallauncher.h b/parser/include/replication/logicallauncher.h index f1e2821e..a07c9cb3 100644 --- a/parser/include/replication/logicallauncher.h +++ b/parser/include/replication/logicallauncher.h @@ -3,7 +3,7 @@ * logicallauncher.h * Exports for logical replication launcher. * - * Portions Copyright (c) 2016-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2016-2023, PostgreSQL Global Development Group * * src/include/replication/logicallauncher.h * @@ -14,6 +14,7 @@ extern PGDLLIMPORT int max_logical_replication_workers; extern PGDLLIMPORT int max_sync_workers_per_subscription; +extern PGDLLIMPORT int max_parallel_apply_workers_per_subscription; extern void ApplyLauncherRegister(void); extern void ApplyLauncherMain(Datum main_arg); @@ -21,9 +22,13 @@ extern void ApplyLauncherMain(Datum main_arg); extern Size ApplyLauncherShmemSize(void); extern void ApplyLauncherShmemInit(void); +extern void ApplyLauncherForgetWorkerStartTime(Oid subid); + extern void ApplyLauncherWakeupAtCommit(void); extern void AtEOXact_ApplyLauncher(bool isCommit); extern bool IsLogicalLauncher(void); +extern pid_t GetLeaderApplyWorkerPid(pid_t pid); + #endif /* LOGICALLAUNCHER_H */ diff --git a/parser/include/replication/logicalproto.h b/parser/include/replication/logicalproto.h index a771ab8f..c5be981e 100644 --- a/parser/include/replication/logicalproto.h +++ b/parser/include/replication/logicalproto.h @@ -3,7 +3,7 @@ * logicalproto.h * logical replication protocol * - * Copyright (c) 2015-2022, PostgreSQL Global Development Group + * Copyright (c) 2015-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/include/replication/logicalproto.h @@ -32,12 +32,17 @@ * * LOGICALREP_PROTO_TWOPHASE_VERSION_NUM is the minimum protocol version with * support for two-phase commit decoding (at prepare time). Introduced in PG15. + * + * LOGICALREP_PROTO_STREAM_PARALLEL_VERSION_NUM is the minimum protocol version + * where we support applying large streaming transactions in parallel. + * Introduced in PG16. */ #define LOGICALREP_PROTO_MIN_VERSION_NUM 1 #define LOGICALREP_PROTO_VERSION_NUM 1 #define LOGICALREP_PROTO_STREAM_VERSION_NUM 2 #define LOGICALREP_PROTO_TWOPHASE_VERSION_NUM 3 -#define LOGICALREP_PROTO_MAX_VERSION_NUM LOGICALREP_PROTO_TWOPHASE_VERSION_NUM +#define LOGICALREP_PROTO_STREAM_PARALLEL_VERSION_NUM 4 +#define LOGICALREP_PROTO_MAX_VERSION_NUM LOGICALREP_PROTO_STREAM_PARALLEL_VERSION_NUM /* * Logical message types @@ -175,6 +180,17 @@ typedef struct LogicalRepRollbackPreparedTxnData char gid[GIDSIZE]; } LogicalRepRollbackPreparedTxnData; +/* + * Transaction protocol information for stream abort. + */ +typedef struct LogicalRepStreamAbortData +{ + TransactionId xid; + TransactionId subxid; + XLogRecPtr abort_lsn; + TimestampTz abort_time; +} LogicalRepStreamAbortData; + extern void logicalrep_write_begin(StringInfo out, ReorderBufferTXN *txn); extern void logicalrep_read_begin(StringInfo in, LogicalRepBeginData *begin_data); @@ -219,8 +235,8 @@ extern LogicalRepRelId logicalrep_read_update(StringInfo in, bool *has_oldtuple, LogicalRepTupleData *oldtup, LogicalRepTupleData *newtup); extern void logicalrep_write_delete(StringInfo out, TransactionId xid, - Relation rel, TupleTableSlot *oldtuple, - bool binary); + Relation rel, TupleTableSlot *oldslot, + bool binary, Bitmapset *columns); extern LogicalRepRelId logicalrep_read_delete(StringInfo in, LogicalRepTupleData *oldtup); extern void logicalrep_write_truncate(StringInfo out, TransactionId xid, @@ -235,7 +251,7 @@ extern void logicalrep_write_rel(StringInfo out, TransactionId xid, extern LogicalRepRelation *logicalrep_read_rel(StringInfo in); extern void logicalrep_write_typ(StringInfo out, TransactionId xid, Oid typoid); -extern void logicalrep_read_typ(StringInfo out, LogicalRepTyp *ltyp); +extern void logicalrep_read_typ(StringInfo in, LogicalRepTyp *ltyp); extern void logicalrep_write_stream_start(StringInfo out, TransactionId xid, bool first_segment); extern TransactionId logicalrep_read_stream_start(StringInfo in, @@ -243,12 +259,16 @@ extern TransactionId logicalrep_read_stream_start(StringInfo in, extern void logicalrep_write_stream_stop(StringInfo out); extern void logicalrep_write_stream_commit(StringInfo out, ReorderBufferTXN *txn, XLogRecPtr commit_lsn); -extern TransactionId logicalrep_read_stream_commit(StringInfo out, +extern TransactionId logicalrep_read_stream_commit(StringInfo in, LogicalRepCommitData *commit_data); extern void logicalrep_write_stream_abort(StringInfo out, TransactionId xid, - TransactionId subxid); -extern void logicalrep_read_stream_abort(StringInfo in, TransactionId *xid, - TransactionId *subxid); -extern char *logicalrep_message_type(LogicalRepMsgType action); + TransactionId subxid, + XLogRecPtr abort_lsn, + TimestampTz abort_time, + bool write_abort_info); +extern void logicalrep_read_stream_abort(StringInfo in, + LogicalRepStreamAbortData *abort_data, + bool read_abort_info); +extern const char *logicalrep_message_type(LogicalRepMsgType action); #endif /* LOGICAL_PROTO_H */ diff --git a/parser/include/replication/logicalworker.h b/parser/include/replication/logicalworker.h index cd1b6e8a..39588da7 100644 --- a/parser/include/replication/logicalworker.h +++ b/parser/include/replication/logicalworker.h @@ -3,7 +3,7 @@ * logicalworker.h * Exports for logical replication workers. * - * Portions Copyright (c) 2016-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2016-2023, PostgreSQL Global Development Group * * src/include/replication/logicalworker.h * @@ -12,8 +12,21 @@ #ifndef LOGICALWORKER_H #define LOGICALWORKER_H +#include + +extern PGDLLIMPORT volatile sig_atomic_t ParallelApplyMessagePending; + extern void ApplyWorkerMain(Datum main_arg); +extern void ParallelApplyWorkerMain(Datum main_arg); extern bool IsLogicalWorker(void); +extern bool IsLogicalParallelApplyWorker(void); + +extern void HandleParallelApplyMessageInterrupt(void); +extern void HandleParallelApplyMessages(void); + +extern void LogicalRepWorkersWakeupAtCommit(Oid subid); + +extern void AtEOXact_LogicalRepWorkers(bool isCommit); #endif /* LOGICALWORKER_H */ diff --git a/parser/include/replication/origin.h b/parser/include/replication/origin.h index 2d1b5e5c..53135109 100644 --- a/parser/include/replication/origin.h +++ b/parser/include/replication/origin.h @@ -2,7 +2,7 @@ * origin.h * Exports from replication/logical/origin.c * - * Copyright (c) 2013-2022, PostgreSQL Global Development Group + * Copyright (c) 2013-2023, PostgreSQL Global Development Group * * src/include/replication/origin.h *------------------------------------------------------------------------- @@ -38,8 +38,8 @@ extern PGDLLIMPORT XLogRecPtr replorigin_session_origin_lsn; extern PGDLLIMPORT TimestampTz replorigin_session_origin_timestamp; /* API for querying & manipulating replication origins */ -extern RepOriginId replorigin_by_name(const char *name, bool missing_ok); -extern RepOriginId replorigin_create(const char *name); +extern RepOriginId replorigin_by_name(const char *roname, bool missing_ok); +extern RepOriginId replorigin_create(const char *roname); extern void replorigin_drop_by_name(const char *name, bool missing_ok, bool nowait); extern bool replorigin_by_oid(RepOriginId roident, bool missing_ok, char **roname); @@ -53,7 +53,7 @@ extern XLogRecPtr replorigin_get_progress(RepOriginId node, bool flush); extern void replorigin_session_advance(XLogRecPtr remote_commit, XLogRecPtr local_commit); -extern void replorigin_session_setup(RepOriginId node); +extern void replorigin_session_setup(RepOriginId node, int acquired_by); extern void replorigin_session_reset(void); extern XLogRecPtr replorigin_session_get_progress(bool flush); diff --git a/parser/include/replication/reorderbuffer.h b/parser/include/replication/reorderbuffer.h index 4a01f877..3cb03168 100644 --- a/parser/include/replication/reorderbuffer.h +++ b/parser/include/replication/reorderbuffer.h @@ -2,7 +2,7 @@ * reorderbuffer.h * PostgreSQL logical replay/reorder buffer management. * - * Copyright (c) 2012-2022, PostgreSQL Global Development Group + * Copyright (c) 2012-2023, PostgreSQL Global Development Group * * src/include/replication/reorderbuffer.h */ @@ -17,7 +17,16 @@ #include "utils/snapshot.h" #include "utils/timestamp.h" +/* GUC variables */ extern PGDLLIMPORT int logical_decoding_work_mem; +extern PGDLLIMPORT int debug_logical_replication_streaming; + +/* possible values for debug_logical_replication_streaming */ +typedef enum +{ + DEBUG_LOGICAL_REP_STREAMING_BUFFERED, + DEBUG_LOGICAL_REP_STREAMING_IMMEDIATE +} DebugLogicalRepStreamingMode; /* an individual tuple, stored in one chunk of memory */ typedef struct ReorderBufferTupleBuf @@ -99,7 +108,7 @@ typedef struct ReorderBufferChange struct { /* relation that has been changed */ - RelFileNode relnode; + RelFileLocator rlocator; /* no previously reassembled toast chunks are necessary anymore */ bool clear_toast_afterwards; @@ -145,7 +154,7 @@ typedef struct ReorderBufferChange */ struct { - RelFileNode node; + RelFileLocator locator; ItemPointerData tid; CommandId cmin; CommandId cmax; @@ -168,14 +177,15 @@ typedef struct ReorderBufferChange } ReorderBufferChange; /* ReorderBufferTXN txn_flags */ -#define RBTXN_HAS_CATALOG_CHANGES 0x0001 -#define RBTXN_IS_SUBXACT 0x0002 -#define RBTXN_IS_SERIALIZED 0x0004 -#define RBTXN_IS_SERIALIZED_CLEAR 0x0008 -#define RBTXN_IS_STREAMED 0x0010 -#define RBTXN_HAS_PARTIAL_CHANGE 0x0020 -#define RBTXN_PREPARE 0x0040 -#define RBTXN_SKIPPED_PREPARE 0x0080 +#define RBTXN_HAS_CATALOG_CHANGES 0x0001 +#define RBTXN_IS_SUBXACT 0x0002 +#define RBTXN_IS_SERIALIZED 0x0004 +#define RBTXN_IS_SERIALIZED_CLEAR 0x0008 +#define RBTXN_IS_STREAMED 0x0010 +#define RBTXN_HAS_PARTIAL_CHANGE 0x0020 +#define RBTXN_PREPARE 0x0040 +#define RBTXN_SKIPPED_PREPARE 0x0080 +#define RBTXN_HAS_STREAMABLE_CHANGE 0x0100 /* Does the transaction have catalog changes? */ #define rbtxn_has_catalog_changes(txn) \ @@ -207,6 +217,12 @@ typedef struct ReorderBufferChange ((txn)->txn_flags & RBTXN_HAS_PARTIAL_CHANGE) != 0 \ ) +/* Does this transaction contain streamable changes? */ +#define rbtxn_has_streamable_change(txn) \ +( \ + ((txn)->txn_flags & RBTXN_HAS_STREAMABLE_CHANGE) != 0 \ +) + /* * Has this transaction been streamed to downstream? * @@ -233,6 +249,24 @@ typedef struct ReorderBufferChange ((txn)->txn_flags & RBTXN_SKIPPED_PREPARE) != 0 \ ) +/* Is this a top-level transaction? */ +#define rbtxn_is_toptxn(txn) \ +( \ + (txn)->toptxn == NULL \ +) + +/* Is this a subtransaction? */ +#define rbtxn_is_subtxn(txn) \ +( \ + (txn)->toptxn != NULL \ +) + +/* Get the top-level transaction of this (sub)transaction. */ +#define rbtxn_get_toptxn(txn) \ +( \ + rbtxn_is_subtxn(txn) ? (txn)->toptxn : (txn) \ +) + typedef struct ReorderBufferTXN { /* See above */ @@ -262,7 +296,7 @@ typedef struct ReorderBufferTXN * aborted. This can be a * * plain commit record * * plain commit record, of a parent transaction - * * prepared tansaction + * * prepared transaction * * prepared transaction commit * * plain abort record * * prepared transaction abort @@ -301,6 +335,7 @@ typedef struct ReorderBufferTXN { TimestampTz commit_time; TimestampTz prepare_time; + TimestampTz abort_time; } xact_time; /* @@ -380,6 +415,11 @@ typedef struct ReorderBufferTXN */ dlist_node node; + /* + * A node in the list of catalog modifying transactions + */ + dlist_node catchange_node; + /* * Size of this transaction (changes currently in memory, in bytes). */ @@ -504,6 +544,12 @@ typedef void (*ReorderBufferStreamTruncateCB) ( Relation relations[], ReorderBufferChange *change); +/* update progress txn callback signature */ +typedef void (*ReorderBufferUpdateProgressTxnCB) ( + ReorderBuffer *rb, + ReorderBufferTXN *txn, + XLogRecPtr lsn); + struct ReorderBuffer { /* @@ -526,6 +572,11 @@ struct ReorderBuffer */ dlist_head txns_by_base_snapshot_lsn; + /* + * Transactions and subtransactions that have modified system catalogs. + */ + dclist_head catchange_txns; + /* * one-entry sized cache for by_txn. Very frequently the same txn gets * looked up over and over again. @@ -562,6 +613,12 @@ struct ReorderBuffer ReorderBufferStreamMessageCB stream_message; ReorderBufferStreamTruncateCB stream_truncate; + /* + * Callback to be called when updating progress during sending data of a + * transaction (and its subtransactions) to the output plugin. + */ + ReorderBufferUpdateProgressTxnCB update_progress_txn; + /* * Pointer that will be passed untouched to the callbacks. */ @@ -619,23 +676,27 @@ struct ReorderBuffer extern ReorderBuffer *ReorderBufferAllocate(void); -extern void ReorderBufferFree(ReorderBuffer *); +extern void ReorderBufferFree(ReorderBuffer *rb); -extern ReorderBufferTupleBuf *ReorderBufferGetTupleBuf(ReorderBuffer *, Size tuple_len); -extern void ReorderBufferReturnTupleBuf(ReorderBuffer *, ReorderBufferTupleBuf *tuple); -extern ReorderBufferChange *ReorderBufferGetChange(ReorderBuffer *); -extern void ReorderBufferReturnChange(ReorderBuffer *, ReorderBufferChange *, bool); +extern ReorderBufferTupleBuf *ReorderBufferGetTupleBuf(ReorderBuffer *rb, + Size tuple_len); +extern void ReorderBufferReturnTupleBuf(ReorderBuffer *rb, + ReorderBufferTupleBuf *tuple); +extern ReorderBufferChange *ReorderBufferGetChange(ReorderBuffer *rb); +extern void ReorderBufferReturnChange(ReorderBuffer *rb, + ReorderBufferChange *change, bool upd_mem); -extern Oid *ReorderBufferGetRelids(ReorderBuffer *, int nrelids); -extern void ReorderBufferReturnRelids(ReorderBuffer *, Oid *relids); +extern Oid *ReorderBufferGetRelids(ReorderBuffer *rb, int nrelids); +extern void ReorderBufferReturnRelids(ReorderBuffer *rb, Oid *relids); -extern void ReorderBufferQueueChange(ReorderBuffer *, TransactionId, - XLogRecPtr lsn, ReorderBufferChange *, +extern void ReorderBufferQueueChange(ReorderBuffer *rb, TransactionId xid, + XLogRecPtr lsn, ReorderBufferChange *change, bool toast_insert); -extern void ReorderBufferQueueMessage(ReorderBuffer *, TransactionId, Snapshot snapshot, XLogRecPtr lsn, +extern void ReorderBufferQueueMessage(ReorderBuffer *rb, TransactionId xid, + Snapshot snap, XLogRecPtr lsn, bool transactional, const char *prefix, Size message_size, const char *message); -extern void ReorderBufferCommit(ReorderBuffer *, TransactionId, +extern void ReorderBufferCommit(ReorderBuffer *rb, TransactionId xid, XLogRecPtr commit_lsn, XLogRecPtr end_lsn, TimestampTz commit_time, RepOriginId origin_id, XLogRecPtr origin_lsn); extern void ReorderBufferFinishPrepared(ReorderBuffer *rb, TransactionId xid, @@ -644,30 +705,36 @@ extern void ReorderBufferFinishPrepared(ReorderBuffer *rb, TransactionId xid, TimestampTz commit_time, RepOriginId origin_id, XLogRecPtr origin_lsn, char *gid, bool is_commit); -extern void ReorderBufferAssignChild(ReorderBuffer *, TransactionId, TransactionId, XLogRecPtr commit_lsn); -extern void ReorderBufferCommitChild(ReorderBuffer *, TransactionId, TransactionId, - XLogRecPtr commit_lsn, XLogRecPtr end_lsn); -extern void ReorderBufferAbort(ReorderBuffer *, TransactionId, XLogRecPtr lsn); -extern void ReorderBufferAbortOld(ReorderBuffer *, TransactionId xid); -extern void ReorderBufferForget(ReorderBuffer *, TransactionId, XLogRecPtr lsn); -extern void ReorderBufferInvalidate(ReorderBuffer *, TransactionId, XLogRecPtr lsn); - -extern void ReorderBufferSetBaseSnapshot(ReorderBuffer *, TransactionId, XLogRecPtr lsn, struct SnapshotData *snap); -extern void ReorderBufferAddSnapshot(ReorderBuffer *, TransactionId, XLogRecPtr lsn, struct SnapshotData *snap); -extern void ReorderBufferAddNewCommandId(ReorderBuffer *, TransactionId, XLogRecPtr lsn, - CommandId cid); -extern void ReorderBufferAddNewTupleCids(ReorderBuffer *, TransactionId, XLogRecPtr lsn, - RelFileNode node, ItemPointerData pt, +extern void ReorderBufferAssignChild(ReorderBuffer *rb, TransactionId xid, + TransactionId subxid, XLogRecPtr lsn); +extern void ReorderBufferCommitChild(ReorderBuffer *rb, TransactionId xid, + TransactionId subxid, XLogRecPtr commit_lsn, + XLogRecPtr end_lsn); +extern void ReorderBufferAbort(ReorderBuffer *rb, TransactionId xid, XLogRecPtr lsn, + TimestampTz abort_time); +extern void ReorderBufferAbortOld(ReorderBuffer *rb, TransactionId oldestRunningXid); +extern void ReorderBufferForget(ReorderBuffer *rb, TransactionId xid, XLogRecPtr lsn); +extern void ReorderBufferInvalidate(ReorderBuffer *rb, TransactionId xid, XLogRecPtr lsn); + +extern void ReorderBufferSetBaseSnapshot(ReorderBuffer *rb, TransactionId xid, + XLogRecPtr lsn, Snapshot snap); +extern void ReorderBufferAddSnapshot(ReorderBuffer *rb, TransactionId xid, + XLogRecPtr lsn, Snapshot snap); +extern void ReorderBufferAddNewCommandId(ReorderBuffer *rb, TransactionId xid, + XLogRecPtr lsn, CommandId cid); +extern void ReorderBufferAddNewTupleCids(ReorderBuffer *rb, TransactionId xid, + XLogRecPtr lsn, RelFileLocator locator, + ItemPointerData tid, CommandId cmin, CommandId cmax, CommandId combocid); -extern void ReorderBufferAddInvalidations(ReorderBuffer *, TransactionId, XLogRecPtr lsn, +extern void ReorderBufferAddInvalidations(ReorderBuffer *rb, TransactionId xid, XLogRecPtr lsn, Size nmsgs, SharedInvalidationMessage *msgs); -extern void ReorderBufferImmediateInvalidation(ReorderBuffer *, uint32 ninvalidations, +extern void ReorderBufferImmediateInvalidation(ReorderBuffer *rb, uint32 ninvalidations, SharedInvalidationMessage *invalidations); -extern void ReorderBufferProcessXid(ReorderBuffer *, TransactionId xid, XLogRecPtr lsn); +extern void ReorderBufferProcessXid(ReorderBuffer *rb, TransactionId xid, XLogRecPtr lsn); -extern void ReorderBufferXidSetCatalogChanges(ReorderBuffer *, TransactionId xid, XLogRecPtr lsn); -extern bool ReorderBufferXidHasCatalogChanges(ReorderBuffer *, TransactionId xid); -extern bool ReorderBufferXidHasBaseSnapshot(ReorderBuffer *, TransactionId xid); +extern void ReorderBufferXidSetCatalogChanges(ReorderBuffer *rb, TransactionId xid, XLogRecPtr lsn); +extern bool ReorderBufferXidHasCatalogChanges(ReorderBuffer *rb, TransactionId xid); +extern bool ReorderBufferXidHasBaseSnapshot(ReorderBuffer *rb, TransactionId xid); extern bool ReorderBufferRememberPrepareInfo(ReorderBuffer *rb, TransactionId xid, XLogRecPtr prepare_lsn, XLogRecPtr end_lsn, @@ -675,10 +742,11 @@ extern bool ReorderBufferRememberPrepareInfo(ReorderBuffer *rb, TransactionId xi RepOriginId origin_id, XLogRecPtr origin_lsn); extern void ReorderBufferSkipPrepare(ReorderBuffer *rb, TransactionId xid); extern void ReorderBufferPrepare(ReorderBuffer *rb, TransactionId xid, char *gid); -extern ReorderBufferTXN *ReorderBufferGetOldestTXN(ReorderBuffer *); +extern ReorderBufferTXN *ReorderBufferGetOldestTXN(ReorderBuffer *rb); extern TransactionId ReorderBufferGetOldestXmin(ReorderBuffer *rb); +extern TransactionId *ReorderBufferGetCatalogChangesXacts(ReorderBuffer *rb); -extern void ReorderBufferSetRestartPoint(ReorderBuffer *, XLogRecPtr ptr); +extern void ReorderBufferSetRestartPoint(ReorderBuffer *rb, XLogRecPtr ptr); extern void StartupReorderBuffer(void); diff --git a/parser/include/replication/slot.h b/parser/include/replication/slot.h index deba2c4e..a8a89dc7 100644 --- a/parser/include/replication/slot.h +++ b/parser/include/replication/slot.h @@ -2,7 +2,7 @@ * slot.h * Replication slot management. * - * Copyright (c) 2012-2022, PostgreSQL Global Development Group + * Copyright (c) 2012-2023, PostgreSQL Global Development Group * *------------------------------------------------------------------------- */ @@ -37,6 +37,21 @@ typedef enum ReplicationSlotPersistency RS_TEMPORARY } ReplicationSlotPersistency; +/* + * Slots can be invalidated, e.g. due to max_slot_wal_keep_size. If so, the + * 'invalidated' field is set to a value other than _NONE. + */ +typedef enum ReplicationSlotInvalidationCause +{ + RS_INVAL_NONE, + /* required WAL has been removed */ + RS_INVAL_WAL_REMOVED, + /* required rows have been removed */ + RS_INVAL_HORIZON, + /* wal_level insufficient for slot */ + RS_INVAL_WAL_LEVEL, +} ReplicationSlotInvalidationCause; + /* * On-Disk data of a replication slot, preserved across restarts. */ @@ -72,8 +87,8 @@ typedef struct ReplicationSlotPersistentData /* oldest LSN that might be required by this replication slot */ XLogRecPtr restart_lsn; - /* restart_lsn is copied here when the slot is invalidated */ - XLogRecPtr invalidated_at; + /* RS_INVAL_NONE if valid, or the reason for having been invalidated */ + ReplicationSlotInvalidationCause invalidated; /* * Oldest LSN that the client has acked receipt for. This is used as the @@ -195,7 +210,8 @@ extern void ReplicationSlotsShmemInit(void); /* management of individual slots */ extern void ReplicationSlotCreate(const char *name, bool db_specific, - ReplicationSlotPersistency p, bool two_phase); + ReplicationSlotPersistency persistency, + bool two_phase); extern void ReplicationSlotPersist(void); extern void ReplicationSlotDrop(const char *name, bool nowait); @@ -214,11 +230,14 @@ extern void ReplicationSlotsComputeRequiredLSN(void); extern XLogRecPtr ReplicationSlotsComputeLogicalRestartLSN(void); extern bool ReplicationSlotsCountDBSlots(Oid dboid, int *nslots, int *nactive); extern void ReplicationSlotsDropDBSlots(Oid dboid); -extern bool InvalidateObsoleteReplicationSlots(XLogSegNo oldestSegno); +extern bool InvalidateObsoleteReplicationSlots(ReplicationSlotInvalidationCause cause, + XLogSegNo oldestSegno, + Oid dboid, + TransactionId snapshotConflictHorizon); extern ReplicationSlot *SearchNamedReplicationSlot(const char *name, bool need_lock); extern int ReplicationSlotIndex(ReplicationSlot *slot); extern bool ReplicationSlotName(int index, Name name); -extern void ReplicationSlotNameForTablesync(Oid suboid, Oid relid, char *syncslotname, int szslot); +extern void ReplicationSlotNameForTablesync(Oid suboid, Oid relid, char *syncslotname, Size szslot); extern void ReplicationSlotDropAtPubNode(WalReceiverConn *wrconn, char *slotname, bool missing_ok); extern void StartupReplicationSlots(void); diff --git a/parser/include/replication/syncrep.h b/parser/include/replication/syncrep.h index 4d7c90b9..0aec4cb1 100644 --- a/parser/include/replication/syncrep.h +++ b/parser/include/replication/syncrep.h @@ -3,7 +3,7 @@ * syncrep.h * Exports from replication/syncrep.c. * - * Portions Copyright (c) 2010-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2010-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/include/replication/syncrep.h @@ -14,7 +14,6 @@ #define _SYNCREP_H #include "access/xlogdefs.h" -#include "utils/guc.h" #define SyncRepRequested() \ (max_wal_senders > 0 && synchronous_commit > SYNCHRONOUS_COMMIT_LOCAL_FLUSH) @@ -97,11 +96,6 @@ extern int SyncRepGetCandidateStandbys(SyncRepStandbyData **standbys); /* called by checkpointer */ extern void SyncRepUpdateSyncStandbysDefined(void); -/* GUC infrastructure */ -extern bool check_synchronous_standby_names(char **newval, void **extra, GucSource source); -extern void assign_synchronous_standby_names(const char *newval, void *extra); -extern void assign_synchronous_commit(int newval, void *extra); - /* * Internal functions for parsing synchronous_standby_names grammar, * in syncrep_gram.y and syncrep_scanner.l @@ -109,7 +103,7 @@ extern void assign_synchronous_commit(int newval, void *extra); extern int syncrep_yyparse(void); extern int syncrep_yylex(void); extern void syncrep_yyerror(const char *str); -extern void syncrep_scanner_init(const char *query_string); +extern void syncrep_scanner_init(const char *str); extern void syncrep_scanner_finish(void); #endif /* _SYNCREP_H */ diff --git a/parser/include/replication/walreceiver.h b/parser/include/replication/walreceiver.h index 81184aa9..281626fa 100644 --- a/parser/include/replication/walreceiver.h +++ b/parser/include/replication/walreceiver.h @@ -3,7 +3,7 @@ * walreceiver.h * Exports from replication/walreceiverfuncs.c. * - * Portions Copyright (c) 2010-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2010-2023, PostgreSQL Global Development Group * * src/include/replication/walreceiver.h * @@ -12,9 +12,11 @@ #ifndef _WALRECEIVER_H #define _WALRECEIVER_H +#include +#include + #include "access/xlog.h" #include "access/xlogdefs.h" -#include "getaddrinfo.h" /* for NI_MAXHOST */ #include "pgtime.h" #include "port/atomics.h" #include "replication/logicalproto.h" @@ -180,9 +182,11 @@ typedef struct uint32 proto_version; /* Logical protocol version */ List *publication_names; /* String list of publications */ bool binary; /* Ask publisher to use binary */ - bool streaming; /* Streaming of large transactions */ + char *streaming_str; /* Streaming of large transactions */ bool twophase; /* Streaming of two-phase transactions at * prepare time */ + char *origin; /* Only publish data originating from the + * specified origin */ } logical; } proto; } WalRcvStreamOptions; @@ -235,6 +239,7 @@ typedef struct WalRcvExecResult */ typedef WalReceiverConn *(*walrcv_connect_fn) (const char *conninfo, bool logical, + bool must_use_password, const char *appname, char **err); @@ -243,7 +248,8 @@ typedef WalReceiverConn *(*walrcv_connect_fn) (const char *conninfo, * * Parse and validate the connection string given as of 'conninfo'. */ -typedef void (*walrcv_check_conninfo_fn) (const char *conninfo); +typedef void (*walrcv_check_conninfo_fn) (const char *conninfo, + bool must_use_password); /* * walrcv_get_conninfo_fn @@ -401,10 +407,10 @@ typedef struct WalReceiverFunctionsType extern PGDLLIMPORT WalReceiverFunctionsType *WalReceiverFunctions; -#define walrcv_connect(conninfo, logical, appname, err) \ - WalReceiverFunctions->walrcv_connect(conninfo, logical, appname, err) -#define walrcv_check_conninfo(conninfo) \ - WalReceiverFunctions->walrcv_check_conninfo(conninfo) +#define walrcv_connect(conninfo, logical, must_use_password, appname, err) \ + WalReceiverFunctions->walrcv_connect(conninfo, logical, must_use_password, appname, err) +#define walrcv_check_conninfo(conninfo, must_use_password) \ + WalReceiverFunctions->walrcv_check_conninfo(conninfo, must_use_password) #define walrcv_get_conninfo(conn) \ WalReceiverFunctions->walrcv_get_conninfo(conn) #define walrcv_get_senderinfo(conn, sender_host, sender_port) \ @@ -453,6 +459,7 @@ walrcv_clear_result(WalRcvExecResult *walres) /* prototypes for functions in walreceiver.c */ extern void WalReceiverMain(void) pg_attribute_noreturn(); extern void ProcessWalRcvInterrupts(void); +extern void WalRcvForceReply(void); /* prototypes for functions in walreceiverfuncs.c */ extern Size WalRcvShmemSize(void); @@ -467,6 +474,5 @@ extern XLogRecPtr GetWalRcvFlushRecPtr(XLogRecPtr *latestChunkStart, TimeLineID extern XLogRecPtr GetWalRcvWriteRecPtr(void); extern int GetReplicationApplyDelay(void); extern int GetReplicationTransferLatency(void); -extern void WalRcvForceReply(void); #endif /* _WALRECEIVER_H */ diff --git a/parser/include/replication/walsender.h b/parser/include/replication/walsender.h index d99a21b0..9df7e50f 100644 --- a/parser/include/replication/walsender.h +++ b/parser/include/replication/walsender.h @@ -3,7 +3,7 @@ * walsender.h * Exports from replication/walsender.c. * - * Portions Copyright (c) 2010-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2010-2023, PostgreSQL Global Development Group * * src/include/replication/walsender.h * @@ -36,13 +36,13 @@ extern PGDLLIMPORT int wal_sender_timeout; extern PGDLLIMPORT bool log_replication_commands; extern void InitWalSender(void); -extern bool exec_replication_command(const char *query_string); +extern bool exec_replication_command(const char *cmd_string); extern void WalSndErrorCleanup(void); extern void WalSndResourceCleanup(bool isCommit); extern void WalSndSignals(void); extern Size WalSndShmemSize(void); extern void WalSndShmemInit(void); -extern void WalSndWakeup(void); +extern void WalSndWakeup(bool physical, bool logical); extern void WalSndInitStopping(void); extern void WalSndWaitStopping(void); extern void HandleWalSndInitStopping(void); @@ -60,15 +60,15 @@ extern void WalSndRqstFileReload(void); /* * wakeup walsenders if there is work to be done */ -#define WalSndWakeupProcessRequests() \ - do \ - { \ - if (wake_wal_senders) \ - { \ - wake_wal_senders = false; \ - if (max_wal_senders > 0) \ - WalSndWakeup(); \ - } \ - } while (0) +static inline void +WalSndWakeupProcessRequests(bool physical, bool logical) +{ + if (wake_wal_senders) + { + wake_wal_senders = false; + if (max_wal_senders > 0) + WalSndWakeup(physical, logical); + } +} #endif /* _WALSENDER_H */ diff --git a/parser/include/rewrite/prs2lock.h b/parser/include/rewrite/prs2lock.h index 6d984839..f94bdfd2 100644 --- a/parser/include/rewrite/prs2lock.h +++ b/parser/include/rewrite/prs2lock.h @@ -3,7 +3,7 @@ * prs2lock.h * data structures for POSTGRES Rule System II (rewrite rules only) * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/rewrite/prs2lock.h diff --git a/parser/include/rewrite/rewriteHandler.h b/parser/include/rewrite/rewriteHandler.h index 90ecf109..b71e20b0 100644 --- a/parser/include/rewrite/rewriteHandler.h +++ b/parser/include/rewrite/rewriteHandler.h @@ -4,7 +4,7 @@ * External interface to query rewriter. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/rewrite/rewriteHandler.h @@ -24,9 +24,6 @@ extern void AcquireRewriteLocks(Query *parsetree, extern Node *build_column_default(Relation rel, int attrno); -extern void fill_extraUpdatedCols(RangeTblEntry *target_rte, - Relation target_relation); - extern Query *get_view_query(Relation view); extern const char *view_query_is_auto_updatable(Query *viewquery, bool check_cols); diff --git a/parser/include/rewrite/rewriteManip.h b/parser/include/rewrite/rewriteManip.h index 98b9b3a2..365061ff 100644 --- a/parser/include/rewrite/rewriteManip.h +++ b/parser/include/rewrite/rewriteManip.h @@ -4,7 +4,7 @@ * Querytree manipulation subroutines for query rewriter. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/rewrite/rewriteManip.h @@ -41,8 +41,10 @@ typedef enum ReplaceVarsNoMatchOption } ReplaceVarsNoMatchOption; +extern void CombineRangeTables(List **dst_rtable, List **dst_perminfos, + List *src_rtable, List *src_perminfos); extern void OffsetVarNodes(Node *node, int offset, int sublevels_up); -extern void ChangeVarNodes(Node *node, int old_varno, int new_varno, +extern void ChangeVarNodes(Node *node, int rt_index, int new_index, int sublevels_up); extern void IncrementVarSublevelsUp(Node *node, int delta_sublevels_up, int min_sublevels_up); @@ -63,6 +65,13 @@ extern bool contain_windowfuncs(Node *node); extern int locate_windowfunc(Node *node); extern bool checkExprHasSubLink(Node *node); +extern Node *add_nulling_relids(Node *node, + const Bitmapset *target_relids, + const Bitmapset *added_relids); +extern Node *remove_nulling_relids(Node *node, + const Bitmapset *removable_relids, + const Bitmapset *except_relids); + extern Node *replace_rte_variables(Node *node, int target_varno, int sublevels_up, replace_rte_variables_callback callback, diff --git a/parser/include/rewrite/rewriteSupport.h b/parser/include/rewrite/rewriteSupport.h index 226ff66f..e5dc367e 100644 --- a/parser/include/rewrite/rewriteSupport.h +++ b/parser/include/rewrite/rewriteSupport.h @@ -4,7 +4,7 @@ * * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/rewrite/rewriteSupport.h diff --git a/parser/include/src_backend_nodes_copyfuncs.funcs.c b/parser/include/src_backend_nodes_copyfuncs.funcs.c new file mode 100644 index 00000000..2a5b27e6 --- /dev/null +++ b/parser/include/src_backend_nodes_copyfuncs.funcs.c @@ -0,0 +1,5321 @@ +/*-------------------------------------------------------------------- + * Symbols referenced in this file: + * - _copyAlias + * - _copyRangeVar + * - _copyTableFunc + * - _copyIntoClause + * - _copyVar + * - _copyParam + * - _copyAggref + * - _copyGroupingFunc + * - _copyWindowFunc + * - _copySubscriptingRef + * - _copyFuncExpr + * - _copyNamedArgExpr + * - _copyOpExpr + * - _copyDistinctExpr + * - _copyNullIfExpr + * - _copyScalarArrayOpExpr + * - _copyBoolExpr + * - _copySubLink + * - _copySubPlan + * - _copyAlternativeSubPlan + * - _copyFieldSelect + * - _copyFieldStore + * - _copyRelabelType + * - _copyCoerceViaIO + * - _copyArrayCoerceExpr + * - _copyConvertRowtypeExpr + * - _copyCollateExpr + * - _copyCaseExpr + * - _copyCaseWhen + * - _copyCaseTestExpr + * - _copyArrayExpr + * - _copyRowExpr + * - _copyRowCompareExpr + * - _copyCoalesceExpr + * - _copyMinMaxExpr + * - _copySQLValueFunction + * - _copyXmlExpr + * - _copyJsonFormat + * - _copyJsonReturning + * - _copyJsonValueExpr + * - _copyJsonConstructorExpr + * - _copyJsonIsPredicate + * - _copyNullTest + * - _copyBooleanTest + * - _copyCoerceToDomain + * - _copyCoerceToDomainValue + * - _copySetToDefault + * - _copyCurrentOfExpr + * - _copyNextValueExpr + * - _copyInferenceElem + * - _copyTargetEntry + * - _copyRangeTblRef + * - _copyJoinExpr + * - _copyFromExpr + * - _copyOnConflictExpr + * - _copyQuery + * - _copyTypeName + * - _copyColumnRef + * - _copyParamRef + * - _copyA_Expr + * - _copyTypeCast + * - _copyCollateClause + * - _copyRoleSpec + * - _copyFuncCall + * - _copyA_Star + * - _copyA_Indices + * - _copyA_Indirection + * - _copyA_ArrayExpr + * - _copyResTarget + * - _copyMultiAssignRef + * - _copySortBy + * - _copyWindowDef + * - _copyRangeSubselect + * - _copyRangeFunction + * - _copyRangeTableFunc + * - _copyRangeTableFuncCol + * - _copyRangeTableSample + * - _copyColumnDef + * - _copyTableLikeClause + * - _copyIndexElem + * - _copyDefElem + * - _copyLockingClause + * - _copyXmlSerialize + * - _copyPartitionElem + * - _copyPartitionSpec + * - _copyPartitionBoundSpec + * - _copyPartitionRangeDatum + * - _copyPartitionCmd + * - _copyRangeTblEntry + * - _copyRTEPermissionInfo + * - _copyRangeTblFunction + * - _copyTableSampleClause + * - _copyWithCheckOption + * - _copySortGroupClause + * - _copyGroupingSet + * - _copyWindowClause + * - _copyRowMarkClause + * - _copyWithClause + * - _copyInferClause + * - _copyOnConflictClause + * - _copyCTESearchClause + * - _copyCTECycleClause + * - _copyCommonTableExpr + * - _copyMergeWhenClause + * - _copyMergeAction + * - _copyTriggerTransition + * - _copyJsonOutput + * - _copyJsonKeyValue + * - _copyJsonObjectConstructor + * - _copyJsonArrayConstructor + * - _copyJsonArrayQueryConstructor + * - _copyJsonAggConstructor + * - _copyJsonObjectAgg + * - _copyJsonArrayAgg + * - _copyRawStmt + * - _copyInsertStmt + * - _copyDeleteStmt + * - _copyUpdateStmt + * - _copyMergeStmt + * - _copySelectStmt + * - _copySetOperationStmt + * - _copyReturnStmt + * - _copyPLAssignStmt + * - _copyCreateSchemaStmt + * - _copyAlterTableStmt + * - _copyReplicaIdentityStmt + * - _copyAlterTableCmd + * - _copyAlterCollationStmt + * - _copyAlterDomainStmt + * - _copyGrantStmt + * - _copyObjectWithArgs + * - _copyAccessPriv + * - _copyGrantRoleStmt + * - _copyAlterDefaultPrivilegesStmt + * - _copyCopyStmt + * - _copyVariableSetStmt + * - _copyVariableShowStmt + * - _copyCreateStmt + * - _copyConstraint + * - _copyCreateTableSpaceStmt + * - _copyDropTableSpaceStmt + * - _copyAlterTableSpaceOptionsStmt + * - _copyAlterTableMoveAllStmt + * - _copyCreateExtensionStmt + * - _copyAlterExtensionStmt + * - _copyAlterExtensionContentsStmt + * - _copyCreateFdwStmt + * - _copyAlterFdwStmt + * - _copyCreateForeignServerStmt + * - _copyAlterForeignServerStmt + * - _copyCreateForeignTableStmt + * - _copyCreateUserMappingStmt + * - _copyAlterUserMappingStmt + * - _copyDropUserMappingStmt + * - _copyImportForeignSchemaStmt + * - _copyCreatePolicyStmt + * - _copyAlterPolicyStmt + * - _copyCreateAmStmt + * - _copyCreateTrigStmt + * - _copyCreateEventTrigStmt + * - _copyAlterEventTrigStmt + * - _copyCreatePLangStmt + * - _copyCreateRoleStmt + * - _copyAlterRoleStmt + * - _copyAlterRoleSetStmt + * - _copyDropRoleStmt + * - _copyCreateSeqStmt + * - _copyAlterSeqStmt + * - _copyDefineStmt + * - _copyCreateDomainStmt + * - _copyCreateOpClassStmt + * - _copyCreateOpClassItem + * - _copyCreateOpFamilyStmt + * - _copyAlterOpFamilyStmt + * - _copyDropStmt + * - _copyTruncateStmt + * - _copyCommentStmt + * - _copySecLabelStmt + * - _copyDeclareCursorStmt + * - _copyClosePortalStmt + * - _copyFetchStmt + * - _copyIndexStmt + * - _copyCreateStatsStmt + * - _copyStatsElem + * - _copyAlterStatsStmt + * - _copyCreateFunctionStmt + * - _copyFunctionParameter + * - _copyAlterFunctionStmt + * - _copyDoStmt + * - _copyCallStmt + * - _copyRenameStmt + * - _copyAlterObjectDependsStmt + * - _copyAlterObjectSchemaStmt + * - _copyAlterOwnerStmt + * - _copyAlterOperatorStmt + * - _copyAlterTypeStmt + * - _copyRuleStmt + * - _copyNotifyStmt + * - _copyListenStmt + * - _copyUnlistenStmt + * - _copyTransactionStmt + * - _copyCompositeTypeStmt + * - _copyCreateEnumStmt + * - _copyCreateRangeStmt + * - _copyAlterEnumStmt + * - _copyViewStmt + * - _copyLoadStmt + * - _copyCreatedbStmt + * - _copyAlterDatabaseStmt + * - _copyAlterDatabaseRefreshCollStmt + * - _copyAlterDatabaseSetStmt + * - _copyDropdbStmt + * - _copyAlterSystemStmt + * - _copyClusterStmt + * - _copyVacuumStmt + * - _copyVacuumRelation + * - _copyExplainStmt + * - _copyCreateTableAsStmt + * - _copyRefreshMatViewStmt + * - _copyCheckPointStmt + * - _copyDiscardStmt + * - _copyLockStmt + * - _copyConstraintsSetStmt + * - _copyReindexStmt + * - _copyCreateConversionStmt + * - _copyCreateCastStmt + * - _copyCreateTransformStmt + * - _copyPrepareStmt + * - _copyExecuteStmt + * - _copyDeallocateStmt + * - _copyDropOwnedStmt + * - _copyReassignOwnedStmt + * - _copyAlterTSDictionaryStmt + * - _copyAlterTSConfigurationStmt + * - _copyPublicationTable + * - _copyPublicationObjSpec + * - _copyCreatePublicationStmt + * - _copyAlterPublicationStmt + * - _copyCreateSubscriptionStmt + * - _copyAlterSubscriptionStmt + * - _copyDropSubscriptionStmt + * - _copyPathKey + * - _copyRestrictInfo + * - _copyPlaceHolderVar + * - _copySpecialJoinInfo + * - _copyAppendRelInfo + * - _copyPlaceHolderInfo + * - _copyPlannedStmt + * - _copyResult + * - _copyProjectSet + * - _copyModifyTable + * - _copyAppend + * - _copyMergeAppend + * - _copyRecursiveUnion + * - _copyBitmapAnd + * - _copyBitmapOr + * - _copySeqScan + * - _copySampleScan + * - _copyIndexScan + * - _copyIndexOnlyScan + * - _copyBitmapIndexScan + * - _copyBitmapHeapScan + * - _copyTidScan + * - _copyTidRangeScan + * - _copySubqueryScan + * - _copyFunctionScan + * - _copyValuesScan + * - _copyTableFuncScan + * - _copyCteScan + * - _copyNamedTuplestoreScan + * - _copyWorkTableScan + * - _copyForeignScan + * - _copyCustomScan + * - _copyNestLoop + * - _copyNestLoopParam + * - _copyMergeJoin + * - _copyHashJoin + * - _copyMaterial + * - _copyMemoize + * - _copySort + * - _copyIncrementalSort + * - _copyGroup + * - _copyAgg + * - _copyWindowAgg + * - _copyUnique + * - _copyGather + * - _copyGatherMerge + * - _copyHash + * - _copySetOp + * - _copyLockRows + * - _copyLimit + * - _copyPlanRowMark + * - _copyPartitionPruneInfo + * - _copyPartitionedRelPruneInfo + * - _copyPartitionPruneStepOp + * - _copyPartitionPruneStepCombine + * - _copyPlanInvalItem + * - _copyInteger + * - _copyFloat + * - _copyBoolean + * - _copyString + * - _copyBitString + * - _copyForeignKeyCacheInfo + *-------------------------------------------------------------------- + */ + +/*------------------------------------------------------------------------- + * + * copyfuncs.funcs.c + * Generated node infrastructure code + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/nodes/gen_node_support.pl + * + *------------------------------------------------------------------------- + */ +#include "access/amapi.h" +#include "access/sdir.h" +#include "access/tableam.h" +#include "access/tsmapi.h" +#include "commands/event_trigger.h" +#include "commands/trigger.h" +#include "executor/tuptable.h" +#include "foreign/fdwapi.h" +#include "nodes/bitmapset.h" +#include "nodes/execnodes.h" +#include "nodes/extensible.h" +#include "nodes/lockoptions.h" +#include "nodes/miscnodes.h" +#include "nodes/nodes.h" +#include "nodes/parsenodes.h" +#include "nodes/pathnodes.h" +#include "nodes/plannodes.h" +#include "nodes/primnodes.h" +#include "nodes/replnodes.h" +#include "nodes/supportnodes.h" +#include "nodes/value.h" +#include "utils/rel.h" + +static Alias * +_copyAlias(const Alias *from) +{ + Alias *newnode = makeNode(Alias); + + COPY_STRING_FIELD(aliasname); + COPY_NODE_FIELD(colnames); + + return newnode; +} + +static RangeVar * +_copyRangeVar(const RangeVar *from) +{ + RangeVar *newnode = makeNode(RangeVar); + + COPY_STRING_FIELD(catalogname); + COPY_STRING_FIELD(schemaname); + COPY_STRING_FIELD(relname); + COPY_SCALAR_FIELD(inh); + COPY_SCALAR_FIELD(relpersistence); + COPY_NODE_FIELD(alias); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static TableFunc * +_copyTableFunc(const TableFunc *from) +{ + TableFunc *newnode = makeNode(TableFunc); + + COPY_NODE_FIELD(ns_uris); + COPY_NODE_FIELD(ns_names); + COPY_NODE_FIELD(docexpr); + COPY_NODE_FIELD(rowexpr); + COPY_NODE_FIELD(colnames); + COPY_NODE_FIELD(coltypes); + COPY_NODE_FIELD(coltypmods); + COPY_NODE_FIELD(colcollations); + COPY_NODE_FIELD(colexprs); + COPY_NODE_FIELD(coldefexprs); + COPY_BITMAPSET_FIELD(notnulls); + COPY_SCALAR_FIELD(ordinalitycol); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static IntoClause * +_copyIntoClause(const IntoClause *from) +{ + IntoClause *newnode = makeNode(IntoClause); + + COPY_NODE_FIELD(rel); + COPY_NODE_FIELD(colNames); + COPY_STRING_FIELD(accessMethod); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(onCommit); + COPY_STRING_FIELD(tableSpaceName); + COPY_NODE_FIELD(viewQuery); + COPY_SCALAR_FIELD(skipData); + + return newnode; +} + +static Var * +_copyVar(const Var *from) +{ + Var *newnode = makeNode(Var); + + COPY_SCALAR_FIELD(varno); + COPY_SCALAR_FIELD(varattno); + COPY_SCALAR_FIELD(vartype); + COPY_SCALAR_FIELD(vartypmod); + COPY_SCALAR_FIELD(varcollid); + COPY_BITMAPSET_FIELD(varnullingrels); + COPY_SCALAR_FIELD(varlevelsup); + COPY_SCALAR_FIELD(varnosyn); + COPY_SCALAR_FIELD(varattnosyn); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static Param * +_copyParam(const Param *from) +{ + Param *newnode = makeNode(Param); + + COPY_SCALAR_FIELD(paramkind); + COPY_SCALAR_FIELD(paramid); + COPY_SCALAR_FIELD(paramtype); + COPY_SCALAR_FIELD(paramtypmod); + COPY_SCALAR_FIELD(paramcollid); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static Aggref * +_copyAggref(const Aggref *from) +{ + Aggref *newnode = makeNode(Aggref); + + COPY_SCALAR_FIELD(aggfnoid); + COPY_SCALAR_FIELD(aggtype); + COPY_SCALAR_FIELD(aggcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_SCALAR_FIELD(aggtranstype); + COPY_NODE_FIELD(aggargtypes); + COPY_NODE_FIELD(aggdirectargs); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(aggorder); + COPY_NODE_FIELD(aggdistinct); + COPY_NODE_FIELD(aggfilter); + COPY_SCALAR_FIELD(aggstar); + COPY_SCALAR_FIELD(aggvariadic); + COPY_SCALAR_FIELD(aggkind); + COPY_SCALAR_FIELD(aggpresorted); + COPY_SCALAR_FIELD(agglevelsup); + COPY_SCALAR_FIELD(aggsplit); + COPY_SCALAR_FIELD(aggno); + COPY_SCALAR_FIELD(aggtransno); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static GroupingFunc * +_copyGroupingFunc(const GroupingFunc *from) +{ + GroupingFunc *newnode = makeNode(GroupingFunc); + + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(refs); + COPY_NODE_FIELD(cols); + COPY_SCALAR_FIELD(agglevelsup); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static WindowFunc * +_copyWindowFunc(const WindowFunc *from) +{ + WindowFunc *newnode = makeNode(WindowFunc); + + COPY_SCALAR_FIELD(winfnoid); + COPY_SCALAR_FIELD(wintype); + COPY_SCALAR_FIELD(wincollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(aggfilter); + COPY_SCALAR_FIELD(winref); + COPY_SCALAR_FIELD(winstar); + COPY_SCALAR_FIELD(winagg); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SubscriptingRef * +_copySubscriptingRef(const SubscriptingRef *from) +{ + SubscriptingRef *newnode = makeNode(SubscriptingRef); + + COPY_SCALAR_FIELD(refcontainertype); + COPY_SCALAR_FIELD(refelemtype); + COPY_SCALAR_FIELD(refrestype); + COPY_SCALAR_FIELD(reftypmod); + COPY_SCALAR_FIELD(refcollid); + COPY_NODE_FIELD(refupperindexpr); + COPY_NODE_FIELD(reflowerindexpr); + COPY_NODE_FIELD(refexpr); + COPY_NODE_FIELD(refassgnexpr); + + return newnode; +} + +static FuncExpr * +_copyFuncExpr(const FuncExpr *from) +{ + FuncExpr *newnode = makeNode(FuncExpr); + + COPY_SCALAR_FIELD(funcid); + COPY_SCALAR_FIELD(funcresulttype); + COPY_SCALAR_FIELD(funcretset); + COPY_SCALAR_FIELD(funcvariadic); + COPY_SCALAR_FIELD(funcformat); + COPY_SCALAR_FIELD(funccollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static NamedArgExpr * +_copyNamedArgExpr(const NamedArgExpr *from) +{ + NamedArgExpr *newnode = makeNode(NamedArgExpr); + + COPY_NODE_FIELD(arg); + COPY_STRING_FIELD(name); + COPY_SCALAR_FIELD(argnumber); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static OpExpr * +_copyOpExpr(const OpExpr *from) +{ + OpExpr *newnode = makeNode(OpExpr); + + COPY_SCALAR_FIELD(opno); + COPY_SCALAR_FIELD(opfuncid); + COPY_SCALAR_FIELD(opresulttype); + COPY_SCALAR_FIELD(opretset); + COPY_SCALAR_FIELD(opcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static DistinctExpr * +_copyDistinctExpr(const DistinctExpr *from) +{ + DistinctExpr *newnode = makeNode(DistinctExpr); + + COPY_SCALAR_FIELD(opno); + COPY_SCALAR_FIELD(opfuncid); + COPY_SCALAR_FIELD(opresulttype); + COPY_SCALAR_FIELD(opretset); + COPY_SCALAR_FIELD(opcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static NullIfExpr * +_copyNullIfExpr(const NullIfExpr *from) +{ + NullIfExpr *newnode = makeNode(NullIfExpr); + + COPY_SCALAR_FIELD(opno); + COPY_SCALAR_FIELD(opfuncid); + COPY_SCALAR_FIELD(opresulttype); + COPY_SCALAR_FIELD(opretset); + COPY_SCALAR_FIELD(opcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ScalarArrayOpExpr * +_copyScalarArrayOpExpr(const ScalarArrayOpExpr *from) +{ + ScalarArrayOpExpr *newnode = makeNode(ScalarArrayOpExpr); + + COPY_SCALAR_FIELD(opno); + COPY_SCALAR_FIELD(opfuncid); + COPY_SCALAR_FIELD(hashfuncid); + COPY_SCALAR_FIELD(negfuncid); + COPY_SCALAR_FIELD(useOr); + COPY_SCALAR_FIELD(inputcollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static BoolExpr * +_copyBoolExpr(const BoolExpr *from) +{ + BoolExpr *newnode = makeNode(BoolExpr); + + COPY_SCALAR_FIELD(boolop); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SubLink * +_copySubLink(const SubLink *from) +{ + SubLink *newnode = makeNode(SubLink); + + COPY_SCALAR_FIELD(subLinkType); + COPY_SCALAR_FIELD(subLinkId); + COPY_NODE_FIELD(testexpr); + COPY_NODE_FIELD(operName); + COPY_NODE_FIELD(subselect); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SubPlan * +_copySubPlan(const SubPlan *from) +{ + SubPlan *newnode = makeNode(SubPlan); + + COPY_SCALAR_FIELD(subLinkType); + COPY_NODE_FIELD(testexpr); + COPY_NODE_FIELD(paramIds); + COPY_SCALAR_FIELD(plan_id); + COPY_STRING_FIELD(plan_name); + COPY_SCALAR_FIELD(firstColType); + COPY_SCALAR_FIELD(firstColTypmod); + COPY_SCALAR_FIELD(firstColCollation); + COPY_SCALAR_FIELD(useHashTable); + COPY_SCALAR_FIELD(unknownEqFalse); + COPY_SCALAR_FIELD(parallel_safe); + COPY_NODE_FIELD(setParam); + COPY_NODE_FIELD(parParam); + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(startup_cost); + COPY_SCALAR_FIELD(per_call_cost); + + return newnode; +} + +static AlternativeSubPlan * +_copyAlternativeSubPlan(const AlternativeSubPlan *from) +{ + AlternativeSubPlan *newnode = makeNode(AlternativeSubPlan); + + COPY_NODE_FIELD(subplans); + + return newnode; +} + +static FieldSelect * +_copyFieldSelect(const FieldSelect *from) +{ + FieldSelect *newnode = makeNode(FieldSelect); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(fieldnum); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resulttypmod); + COPY_SCALAR_FIELD(resultcollid); + + return newnode; +} + +static FieldStore * +_copyFieldStore(const FieldStore *from) +{ + FieldStore *newnode = makeNode(FieldStore); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(newvals); + COPY_NODE_FIELD(fieldnums); + COPY_SCALAR_FIELD(resulttype); + + return newnode; +} + +static RelabelType * +_copyRelabelType(const RelabelType *from) +{ + RelabelType *newnode = makeNode(RelabelType); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resulttypmod); + COPY_SCALAR_FIELD(resultcollid); + COPY_SCALAR_FIELD(relabelformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CoerceViaIO * +_copyCoerceViaIO(const CoerceViaIO *from) +{ + CoerceViaIO *newnode = makeNode(CoerceViaIO); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resultcollid); + COPY_SCALAR_FIELD(coerceformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ArrayCoerceExpr * +_copyArrayCoerceExpr(const ArrayCoerceExpr *from) +{ + ArrayCoerceExpr *newnode = makeNode(ArrayCoerceExpr); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(elemexpr); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resulttypmod); + COPY_SCALAR_FIELD(resultcollid); + COPY_SCALAR_FIELD(coerceformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ConvertRowtypeExpr * +_copyConvertRowtypeExpr(const ConvertRowtypeExpr *from) +{ + ConvertRowtypeExpr *newnode = makeNode(ConvertRowtypeExpr); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(convertformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CollateExpr * +_copyCollateExpr(const CollateExpr *from) +{ + CollateExpr *newnode = makeNode(CollateExpr); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(collOid); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CaseExpr * +_copyCaseExpr(const CaseExpr *from) +{ + CaseExpr *newnode = makeNode(CaseExpr); + + COPY_SCALAR_FIELD(casetype); + COPY_SCALAR_FIELD(casecollid); + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(defresult); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CaseWhen * +_copyCaseWhen(const CaseWhen *from) +{ + CaseWhen *newnode = makeNode(CaseWhen); + + COPY_NODE_FIELD(expr); + COPY_NODE_FIELD(result); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CaseTestExpr * +_copyCaseTestExpr(const CaseTestExpr *from) +{ + CaseTestExpr *newnode = makeNode(CaseTestExpr); + + COPY_SCALAR_FIELD(typeId); + COPY_SCALAR_FIELD(typeMod); + COPY_SCALAR_FIELD(collation); + + return newnode; +} + +static ArrayExpr * +_copyArrayExpr(const ArrayExpr *from) +{ + ArrayExpr *newnode = makeNode(ArrayExpr); + + COPY_SCALAR_FIELD(array_typeid); + COPY_SCALAR_FIELD(array_collid); + COPY_SCALAR_FIELD(element_typeid); + COPY_NODE_FIELD(elements); + COPY_SCALAR_FIELD(multidims); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RowExpr * +_copyRowExpr(const RowExpr *from) +{ + RowExpr *newnode = makeNode(RowExpr); + + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(row_typeid); + COPY_SCALAR_FIELD(row_format); + COPY_NODE_FIELD(colnames); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RowCompareExpr * +_copyRowCompareExpr(const RowCompareExpr *from) +{ + RowCompareExpr *newnode = makeNode(RowCompareExpr); + + COPY_SCALAR_FIELD(rctype); + COPY_NODE_FIELD(opnos); + COPY_NODE_FIELD(opfamilies); + COPY_NODE_FIELD(inputcollids); + COPY_NODE_FIELD(largs); + COPY_NODE_FIELD(rargs); + + return newnode; +} + +static CoalesceExpr * +_copyCoalesceExpr(const CoalesceExpr *from) +{ + CoalesceExpr *newnode = makeNode(CoalesceExpr); + + COPY_SCALAR_FIELD(coalescetype); + COPY_SCALAR_FIELD(coalescecollid); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static MinMaxExpr * +_copyMinMaxExpr(const MinMaxExpr *from) +{ + MinMaxExpr *newnode = makeNode(MinMaxExpr); + + COPY_SCALAR_FIELD(minmaxtype); + COPY_SCALAR_FIELD(minmaxcollid); + COPY_SCALAR_FIELD(inputcollid); + COPY_SCALAR_FIELD(op); + COPY_NODE_FIELD(args); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SQLValueFunction * +_copySQLValueFunction(const SQLValueFunction *from) +{ + SQLValueFunction *newnode = makeNode(SQLValueFunction); + + COPY_SCALAR_FIELD(op); + COPY_SCALAR_FIELD(type); + COPY_SCALAR_FIELD(typmod); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static XmlExpr * +_copyXmlExpr(const XmlExpr *from) +{ + XmlExpr *newnode = makeNode(XmlExpr); + + COPY_SCALAR_FIELD(op); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(named_args); + COPY_NODE_FIELD(arg_names); + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(xmloption); + COPY_SCALAR_FIELD(indent); + COPY_SCALAR_FIELD(type); + COPY_SCALAR_FIELD(typmod); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonFormat * +_copyJsonFormat(const JsonFormat *from) +{ + JsonFormat *newnode = makeNode(JsonFormat); + + COPY_SCALAR_FIELD(format_type); + COPY_SCALAR_FIELD(encoding); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonReturning * +_copyJsonReturning(const JsonReturning *from) +{ + JsonReturning *newnode = makeNode(JsonReturning); + + COPY_NODE_FIELD(format); + COPY_SCALAR_FIELD(typid); + COPY_SCALAR_FIELD(typmod); + + return newnode; +} + +static JsonValueExpr * +_copyJsonValueExpr(const JsonValueExpr *from) +{ + JsonValueExpr *newnode = makeNode(JsonValueExpr); + + COPY_NODE_FIELD(raw_expr); + COPY_NODE_FIELD(formatted_expr); + COPY_NODE_FIELD(format); + + return newnode; +} + +static JsonConstructorExpr * +_copyJsonConstructorExpr(const JsonConstructorExpr *from) +{ + JsonConstructorExpr *newnode = makeNode(JsonConstructorExpr); + + COPY_SCALAR_FIELD(type); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(func); + COPY_NODE_FIELD(coercion); + COPY_NODE_FIELD(returning); + COPY_SCALAR_FIELD(absent_on_null); + COPY_SCALAR_FIELD(unique); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonIsPredicate * +_copyJsonIsPredicate(const JsonIsPredicate *from) +{ + JsonIsPredicate *newnode = makeNode(JsonIsPredicate); + + COPY_NODE_FIELD(expr); + COPY_NODE_FIELD(format); + COPY_SCALAR_FIELD(item_type); + COPY_SCALAR_FIELD(unique_keys); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static NullTest * +_copyNullTest(const NullTest *from) +{ + NullTest *newnode = makeNode(NullTest); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(nulltesttype); + COPY_SCALAR_FIELD(argisrow); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static BooleanTest * +_copyBooleanTest(const BooleanTest *from) +{ + BooleanTest *newnode = makeNode(BooleanTest); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(booltesttype); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CoerceToDomain * +_copyCoerceToDomain(const CoerceToDomain *from) +{ + CoerceToDomain *newnode = makeNode(CoerceToDomain); + + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(resulttype); + COPY_SCALAR_FIELD(resulttypmod); + COPY_SCALAR_FIELD(resultcollid); + COPY_SCALAR_FIELD(coercionformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CoerceToDomainValue * +_copyCoerceToDomainValue(const CoerceToDomainValue *from) +{ + CoerceToDomainValue *newnode = makeNode(CoerceToDomainValue); + + COPY_SCALAR_FIELD(typeId); + COPY_SCALAR_FIELD(typeMod); + COPY_SCALAR_FIELD(collation); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static SetToDefault * +_copySetToDefault(const SetToDefault *from) +{ + SetToDefault *newnode = makeNode(SetToDefault); + + COPY_SCALAR_FIELD(typeId); + COPY_SCALAR_FIELD(typeMod); + COPY_SCALAR_FIELD(collation); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CurrentOfExpr * +_copyCurrentOfExpr(const CurrentOfExpr *from) +{ + CurrentOfExpr *newnode = makeNode(CurrentOfExpr); + + COPY_SCALAR_FIELD(cvarno); + COPY_STRING_FIELD(cursor_name); + COPY_SCALAR_FIELD(cursor_param); + + return newnode; +} + +static NextValueExpr * +_copyNextValueExpr(const NextValueExpr *from) +{ + NextValueExpr *newnode = makeNode(NextValueExpr); + + COPY_SCALAR_FIELD(seqid); + COPY_SCALAR_FIELD(typeId); + + return newnode; +} + +static InferenceElem * +_copyInferenceElem(const InferenceElem *from) +{ + InferenceElem *newnode = makeNode(InferenceElem); + + COPY_NODE_FIELD(expr); + COPY_SCALAR_FIELD(infercollid); + COPY_SCALAR_FIELD(inferopclass); + + return newnode; +} + +static TargetEntry * +_copyTargetEntry(const TargetEntry *from) +{ + TargetEntry *newnode = makeNode(TargetEntry); + + COPY_NODE_FIELD(expr); + COPY_SCALAR_FIELD(resno); + COPY_STRING_FIELD(resname); + COPY_SCALAR_FIELD(ressortgroupref); + COPY_SCALAR_FIELD(resorigtbl); + COPY_SCALAR_FIELD(resorigcol); + COPY_SCALAR_FIELD(resjunk); + + return newnode; +} + +static RangeTblRef * +_copyRangeTblRef(const RangeTblRef *from) +{ + RangeTblRef *newnode = makeNode(RangeTblRef); + + COPY_SCALAR_FIELD(rtindex); + + return newnode; +} + +static JoinExpr * +_copyJoinExpr(const JoinExpr *from) +{ + JoinExpr *newnode = makeNode(JoinExpr); + + COPY_SCALAR_FIELD(jointype); + COPY_SCALAR_FIELD(isNatural); + COPY_NODE_FIELD(larg); + COPY_NODE_FIELD(rarg); + COPY_NODE_FIELD(usingClause); + COPY_NODE_FIELD(join_using_alias); + COPY_NODE_FIELD(quals); + COPY_NODE_FIELD(alias); + COPY_SCALAR_FIELD(rtindex); + + return newnode; +} + +static FromExpr * +_copyFromExpr(const FromExpr *from) +{ + FromExpr *newnode = makeNode(FromExpr); + + COPY_NODE_FIELD(fromlist); + COPY_NODE_FIELD(quals); + + return newnode; +} + +static OnConflictExpr * +_copyOnConflictExpr(const OnConflictExpr *from) +{ + OnConflictExpr *newnode = makeNode(OnConflictExpr); + + COPY_SCALAR_FIELD(action); + COPY_NODE_FIELD(arbiterElems); + COPY_NODE_FIELD(arbiterWhere); + COPY_SCALAR_FIELD(constraint); + COPY_NODE_FIELD(onConflictSet); + COPY_NODE_FIELD(onConflictWhere); + COPY_SCALAR_FIELD(exclRelIndex); + COPY_NODE_FIELD(exclRelTlist); + + return newnode; +} + +static Query * +_copyQuery(const Query *from) +{ + Query *newnode = makeNode(Query); + + COPY_SCALAR_FIELD(commandType); + COPY_SCALAR_FIELD(querySource); + COPY_SCALAR_FIELD(queryId); + COPY_SCALAR_FIELD(canSetTag); + COPY_NODE_FIELD(utilityStmt); + COPY_SCALAR_FIELD(resultRelation); + COPY_SCALAR_FIELD(hasAggs); + COPY_SCALAR_FIELD(hasWindowFuncs); + COPY_SCALAR_FIELD(hasTargetSRFs); + COPY_SCALAR_FIELD(hasSubLinks); + COPY_SCALAR_FIELD(hasDistinctOn); + COPY_SCALAR_FIELD(hasRecursive); + COPY_SCALAR_FIELD(hasModifyingCTE); + COPY_SCALAR_FIELD(hasForUpdate); + COPY_SCALAR_FIELD(hasRowSecurity); + COPY_SCALAR_FIELD(isReturn); + COPY_NODE_FIELD(cteList); + COPY_NODE_FIELD(rtable); + COPY_NODE_FIELD(rteperminfos); + COPY_NODE_FIELD(jointree); + COPY_NODE_FIELD(mergeActionList); + COPY_SCALAR_FIELD(mergeUseOuterJoin); + COPY_NODE_FIELD(targetList); + COPY_SCALAR_FIELD(override); + COPY_NODE_FIELD(onConflict); + COPY_NODE_FIELD(returningList); + COPY_NODE_FIELD(groupClause); + COPY_SCALAR_FIELD(groupDistinct); + COPY_NODE_FIELD(groupingSets); + COPY_NODE_FIELD(havingQual); + COPY_NODE_FIELD(windowClause); + COPY_NODE_FIELD(distinctClause); + COPY_NODE_FIELD(sortClause); + COPY_NODE_FIELD(limitOffset); + COPY_NODE_FIELD(limitCount); + COPY_SCALAR_FIELD(limitOption); + COPY_NODE_FIELD(rowMarks); + COPY_NODE_FIELD(setOperations); + COPY_NODE_FIELD(constraintDeps); + COPY_NODE_FIELD(withCheckOptions); + COPY_LOCATION_FIELD(stmt_location); + COPY_SCALAR_FIELD(stmt_len); + + return newnode; +} + +static TypeName * +_copyTypeName(const TypeName *from) +{ + TypeName *newnode = makeNode(TypeName); + + COPY_NODE_FIELD(names); + COPY_SCALAR_FIELD(typeOid); + COPY_SCALAR_FIELD(setof); + COPY_SCALAR_FIELD(pct_type); + COPY_NODE_FIELD(typmods); + COPY_SCALAR_FIELD(typemod); + COPY_NODE_FIELD(arrayBounds); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ColumnRef * +_copyColumnRef(const ColumnRef *from) +{ + ColumnRef *newnode = makeNode(ColumnRef); + + COPY_NODE_FIELD(fields); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ParamRef * +_copyParamRef(const ParamRef *from) +{ + ParamRef *newnode = makeNode(ParamRef); + + COPY_SCALAR_FIELD(number); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static A_Expr * +_copyA_Expr(const A_Expr *from) +{ + A_Expr *newnode = makeNode(A_Expr); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(name); + COPY_NODE_FIELD(lexpr); + COPY_NODE_FIELD(rexpr); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static TypeCast * +_copyTypeCast(const TypeCast *from) +{ + TypeCast *newnode = makeNode(TypeCast); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(typeName); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CollateClause * +_copyCollateClause(const CollateClause *from) +{ + CollateClause *newnode = makeNode(CollateClause); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(collname); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RoleSpec * +_copyRoleSpec(const RoleSpec *from) +{ + RoleSpec *newnode = makeNode(RoleSpec); + + COPY_SCALAR_FIELD(roletype); + COPY_STRING_FIELD(rolename); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static FuncCall * +_copyFuncCall(const FuncCall *from) +{ + FuncCall *newnode = makeNode(FuncCall); + + COPY_NODE_FIELD(funcname); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(agg_order); + COPY_NODE_FIELD(agg_filter); + COPY_NODE_FIELD(over); + COPY_SCALAR_FIELD(agg_within_group); + COPY_SCALAR_FIELD(agg_star); + COPY_SCALAR_FIELD(agg_distinct); + COPY_SCALAR_FIELD(func_variadic); + COPY_SCALAR_FIELD(funcformat); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static A_Star * +_copyA_Star(const A_Star *from) +{ + A_Star *newnode = makeNode(A_Star); + + + return newnode; +} + +static A_Indices * +_copyA_Indices(const A_Indices *from) +{ + A_Indices *newnode = makeNode(A_Indices); + + COPY_SCALAR_FIELD(is_slice); + COPY_NODE_FIELD(lidx); + COPY_NODE_FIELD(uidx); + + return newnode; +} + +static A_Indirection * +_copyA_Indirection(const A_Indirection *from) +{ + A_Indirection *newnode = makeNode(A_Indirection); + + COPY_NODE_FIELD(arg); + COPY_NODE_FIELD(indirection); + + return newnode; +} + +static A_ArrayExpr * +_copyA_ArrayExpr(const A_ArrayExpr *from) +{ + A_ArrayExpr *newnode = makeNode(A_ArrayExpr); + + COPY_NODE_FIELD(elements); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ResTarget * +_copyResTarget(const ResTarget *from) +{ + ResTarget *newnode = makeNode(ResTarget); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(indirection); + COPY_NODE_FIELD(val); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static MultiAssignRef * +_copyMultiAssignRef(const MultiAssignRef *from) +{ + MultiAssignRef *newnode = makeNode(MultiAssignRef); + + COPY_NODE_FIELD(source); + COPY_SCALAR_FIELD(colno); + COPY_SCALAR_FIELD(ncolumns); + + return newnode; +} + +static SortBy * +_copySortBy(const SortBy *from) +{ + SortBy *newnode = makeNode(SortBy); + + COPY_NODE_FIELD(node); + COPY_SCALAR_FIELD(sortby_dir); + COPY_SCALAR_FIELD(sortby_nulls); + COPY_NODE_FIELD(useOp); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static WindowDef * +_copyWindowDef(const WindowDef *from) +{ + WindowDef *newnode = makeNode(WindowDef); + + COPY_STRING_FIELD(name); + COPY_STRING_FIELD(refname); + COPY_NODE_FIELD(partitionClause); + COPY_NODE_FIELD(orderClause); + COPY_SCALAR_FIELD(frameOptions); + COPY_NODE_FIELD(startOffset); + COPY_NODE_FIELD(endOffset); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RangeSubselect * +_copyRangeSubselect(const RangeSubselect *from) +{ + RangeSubselect *newnode = makeNode(RangeSubselect); + + COPY_SCALAR_FIELD(lateral); + COPY_NODE_FIELD(subquery); + COPY_NODE_FIELD(alias); + + return newnode; +} + +static RangeFunction * +_copyRangeFunction(const RangeFunction *from) +{ + RangeFunction *newnode = makeNode(RangeFunction); + + COPY_SCALAR_FIELD(lateral); + COPY_SCALAR_FIELD(ordinality); + COPY_SCALAR_FIELD(is_rowsfrom); + COPY_NODE_FIELD(functions); + COPY_NODE_FIELD(alias); + COPY_NODE_FIELD(coldeflist); + + return newnode; +} + +static RangeTableFunc * +_copyRangeTableFunc(const RangeTableFunc *from) +{ + RangeTableFunc *newnode = makeNode(RangeTableFunc); + + COPY_SCALAR_FIELD(lateral); + COPY_NODE_FIELD(docexpr); + COPY_NODE_FIELD(rowexpr); + COPY_NODE_FIELD(namespaces); + COPY_NODE_FIELD(columns); + COPY_NODE_FIELD(alias); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RangeTableFuncCol * +_copyRangeTableFuncCol(const RangeTableFuncCol *from) +{ + RangeTableFuncCol *newnode = makeNode(RangeTableFuncCol); + + COPY_STRING_FIELD(colname); + COPY_NODE_FIELD(typeName); + COPY_SCALAR_FIELD(for_ordinality); + COPY_SCALAR_FIELD(is_not_null); + COPY_NODE_FIELD(colexpr); + COPY_NODE_FIELD(coldefexpr); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static RangeTableSample * +_copyRangeTableSample(const RangeTableSample *from) +{ + RangeTableSample *newnode = makeNode(RangeTableSample); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(method); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(repeatable); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static ColumnDef * +_copyColumnDef(const ColumnDef *from) +{ + ColumnDef *newnode = makeNode(ColumnDef); + + COPY_STRING_FIELD(colname); + COPY_NODE_FIELD(typeName); + COPY_STRING_FIELD(compression); + COPY_SCALAR_FIELD(inhcount); + COPY_SCALAR_FIELD(is_local); + COPY_SCALAR_FIELD(is_not_null); + COPY_SCALAR_FIELD(is_from_type); + COPY_SCALAR_FIELD(storage); + COPY_STRING_FIELD(storage_name); + COPY_NODE_FIELD(raw_default); + COPY_NODE_FIELD(cooked_default); + COPY_SCALAR_FIELD(identity); + COPY_NODE_FIELD(identitySequence); + COPY_SCALAR_FIELD(generated); + COPY_NODE_FIELD(collClause); + COPY_SCALAR_FIELD(collOid); + COPY_NODE_FIELD(constraints); + COPY_NODE_FIELD(fdwoptions); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static TableLikeClause * +_copyTableLikeClause(const TableLikeClause *from) +{ + TableLikeClause *newnode = makeNode(TableLikeClause); + + COPY_NODE_FIELD(relation); + COPY_SCALAR_FIELD(options); + COPY_SCALAR_FIELD(relationOid); + + return newnode; +} + +static IndexElem * +_copyIndexElem(const IndexElem *from) +{ + IndexElem *newnode = makeNode(IndexElem); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(expr); + COPY_STRING_FIELD(indexcolname); + COPY_NODE_FIELD(collation); + COPY_NODE_FIELD(opclass); + COPY_NODE_FIELD(opclassopts); + COPY_SCALAR_FIELD(ordering); + COPY_SCALAR_FIELD(nulls_ordering); + + return newnode; +} + +static DefElem * +_copyDefElem(const DefElem *from) +{ + DefElem *newnode = makeNode(DefElem); + + COPY_STRING_FIELD(defnamespace); + COPY_STRING_FIELD(defname); + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(defaction); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static LockingClause * +_copyLockingClause(const LockingClause *from) +{ + LockingClause *newnode = makeNode(LockingClause); + + COPY_NODE_FIELD(lockedRels); + COPY_SCALAR_FIELD(strength); + COPY_SCALAR_FIELD(waitPolicy); + + return newnode; +} + +static XmlSerialize * +_copyXmlSerialize(const XmlSerialize *from) +{ + XmlSerialize *newnode = makeNode(XmlSerialize); + + COPY_SCALAR_FIELD(xmloption); + COPY_NODE_FIELD(expr); + COPY_NODE_FIELD(typeName); + COPY_SCALAR_FIELD(indent); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionElem * +_copyPartitionElem(const PartitionElem *from) +{ + PartitionElem *newnode = makeNode(PartitionElem); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(expr); + COPY_NODE_FIELD(collation); + COPY_NODE_FIELD(opclass); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionSpec * +_copyPartitionSpec(const PartitionSpec *from) +{ + PartitionSpec *newnode = makeNode(PartitionSpec); + + COPY_SCALAR_FIELD(strategy); + COPY_NODE_FIELD(partParams); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionBoundSpec * +_copyPartitionBoundSpec(const PartitionBoundSpec *from) +{ + PartitionBoundSpec *newnode = makeNode(PartitionBoundSpec); + + COPY_SCALAR_FIELD(strategy); + COPY_SCALAR_FIELD(is_default); + COPY_SCALAR_FIELD(modulus); + COPY_SCALAR_FIELD(remainder); + COPY_NODE_FIELD(listdatums); + COPY_NODE_FIELD(lowerdatums); + COPY_NODE_FIELD(upperdatums); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionRangeDatum * +_copyPartitionRangeDatum(const PartitionRangeDatum *from) +{ + PartitionRangeDatum *newnode = makeNode(PartitionRangeDatum); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(value); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static PartitionCmd * +_copyPartitionCmd(const PartitionCmd *from) +{ + PartitionCmd *newnode = makeNode(PartitionCmd); + + COPY_NODE_FIELD(name); + COPY_NODE_FIELD(bound); + COPY_SCALAR_FIELD(concurrent); + + return newnode; +} + +static RangeTblEntry * +_copyRangeTblEntry(const RangeTblEntry *from) +{ + RangeTblEntry *newnode = makeNode(RangeTblEntry); + + COPY_SCALAR_FIELD(rtekind); + COPY_SCALAR_FIELD(relid); + COPY_SCALAR_FIELD(relkind); + COPY_SCALAR_FIELD(rellockmode); + COPY_NODE_FIELD(tablesample); + COPY_SCALAR_FIELD(perminfoindex); + COPY_NODE_FIELD(subquery); + COPY_SCALAR_FIELD(security_barrier); + COPY_SCALAR_FIELD(jointype); + COPY_SCALAR_FIELD(joinmergedcols); + COPY_NODE_FIELD(joinaliasvars); + COPY_NODE_FIELD(joinleftcols); + COPY_NODE_FIELD(joinrightcols); + COPY_NODE_FIELD(join_using_alias); + COPY_NODE_FIELD(functions); + COPY_SCALAR_FIELD(funcordinality); + COPY_NODE_FIELD(tablefunc); + COPY_NODE_FIELD(values_lists); + COPY_STRING_FIELD(ctename); + COPY_SCALAR_FIELD(ctelevelsup); + COPY_SCALAR_FIELD(self_reference); + COPY_NODE_FIELD(coltypes); + COPY_NODE_FIELD(coltypmods); + COPY_NODE_FIELD(colcollations); + COPY_STRING_FIELD(enrname); + COPY_SCALAR_FIELD(enrtuples); + COPY_NODE_FIELD(alias); + COPY_NODE_FIELD(eref); + COPY_SCALAR_FIELD(lateral); + COPY_SCALAR_FIELD(inh); + COPY_SCALAR_FIELD(inFromCl); + COPY_NODE_FIELD(securityQuals); + + return newnode; +} + +static RTEPermissionInfo * +_copyRTEPermissionInfo(const RTEPermissionInfo *from) +{ + RTEPermissionInfo *newnode = makeNode(RTEPermissionInfo); + + COPY_SCALAR_FIELD(relid); + COPY_SCALAR_FIELD(inh); + COPY_SCALAR_FIELD(requiredPerms); + COPY_SCALAR_FIELD(checkAsUser); + COPY_BITMAPSET_FIELD(selectedCols); + COPY_BITMAPSET_FIELD(insertedCols); + COPY_BITMAPSET_FIELD(updatedCols); + + return newnode; +} + +static RangeTblFunction * +_copyRangeTblFunction(const RangeTblFunction *from) +{ + RangeTblFunction *newnode = makeNode(RangeTblFunction); + + COPY_NODE_FIELD(funcexpr); + COPY_SCALAR_FIELD(funccolcount); + COPY_NODE_FIELD(funccolnames); + COPY_NODE_FIELD(funccoltypes); + COPY_NODE_FIELD(funccoltypmods); + COPY_NODE_FIELD(funccolcollations); + COPY_BITMAPSET_FIELD(funcparams); + + return newnode; +} + +static TableSampleClause * +_copyTableSampleClause(const TableSampleClause *from) +{ + TableSampleClause *newnode = makeNode(TableSampleClause); + + COPY_SCALAR_FIELD(tsmhandler); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(repeatable); + + return newnode; +} + +static WithCheckOption * +_copyWithCheckOption(const WithCheckOption *from) +{ + WithCheckOption *newnode = makeNode(WithCheckOption); + + COPY_SCALAR_FIELD(kind); + COPY_STRING_FIELD(relname); + COPY_STRING_FIELD(polname); + COPY_NODE_FIELD(qual); + COPY_SCALAR_FIELD(cascaded); + + return newnode; +} + +static SortGroupClause * +_copySortGroupClause(const SortGroupClause *from) +{ + SortGroupClause *newnode = makeNode(SortGroupClause); + + COPY_SCALAR_FIELD(tleSortGroupRef); + COPY_SCALAR_FIELD(eqop); + COPY_SCALAR_FIELD(sortop); + COPY_SCALAR_FIELD(nulls_first); + COPY_SCALAR_FIELD(hashable); + + return newnode; +} + +static GroupingSet * +_copyGroupingSet(const GroupingSet *from) +{ + GroupingSet *newnode = makeNode(GroupingSet); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(content); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static WindowClause * +_copyWindowClause(const WindowClause *from) +{ + WindowClause *newnode = makeNode(WindowClause); + + COPY_STRING_FIELD(name); + COPY_STRING_FIELD(refname); + COPY_NODE_FIELD(partitionClause); + COPY_NODE_FIELD(orderClause); + COPY_SCALAR_FIELD(frameOptions); + COPY_NODE_FIELD(startOffset); + COPY_NODE_FIELD(endOffset); + COPY_NODE_FIELD(runCondition); + COPY_SCALAR_FIELD(startInRangeFunc); + COPY_SCALAR_FIELD(endInRangeFunc); + COPY_SCALAR_FIELD(inRangeColl); + COPY_SCALAR_FIELD(inRangeAsc); + COPY_SCALAR_FIELD(inRangeNullsFirst); + COPY_SCALAR_FIELD(winref); + COPY_SCALAR_FIELD(copiedOrder); + + return newnode; +} + +static RowMarkClause * +_copyRowMarkClause(const RowMarkClause *from) +{ + RowMarkClause *newnode = makeNode(RowMarkClause); + + COPY_SCALAR_FIELD(rti); + COPY_SCALAR_FIELD(strength); + COPY_SCALAR_FIELD(waitPolicy); + COPY_SCALAR_FIELD(pushedDown); + + return newnode; +} + +static WithClause * +_copyWithClause(const WithClause *from) +{ + WithClause *newnode = makeNode(WithClause); + + COPY_NODE_FIELD(ctes); + COPY_SCALAR_FIELD(recursive); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static InferClause * +_copyInferClause(const InferClause *from) +{ + InferClause *newnode = makeNode(InferClause); + + COPY_NODE_FIELD(indexElems); + COPY_NODE_FIELD(whereClause); + COPY_STRING_FIELD(conname); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static OnConflictClause * +_copyOnConflictClause(const OnConflictClause *from) +{ + OnConflictClause *newnode = makeNode(OnConflictClause); + + COPY_SCALAR_FIELD(action); + COPY_NODE_FIELD(infer); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(whereClause); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CTESearchClause * +_copyCTESearchClause(const CTESearchClause *from) +{ + CTESearchClause *newnode = makeNode(CTESearchClause); + + COPY_NODE_FIELD(search_col_list); + COPY_SCALAR_FIELD(search_breadth_first); + COPY_STRING_FIELD(search_seq_column); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CTECycleClause * +_copyCTECycleClause(const CTECycleClause *from) +{ + CTECycleClause *newnode = makeNode(CTECycleClause); + + COPY_NODE_FIELD(cycle_col_list); + COPY_STRING_FIELD(cycle_mark_column); + COPY_NODE_FIELD(cycle_mark_value); + COPY_NODE_FIELD(cycle_mark_default); + COPY_STRING_FIELD(cycle_path_column); + COPY_LOCATION_FIELD(location); + COPY_SCALAR_FIELD(cycle_mark_type); + COPY_SCALAR_FIELD(cycle_mark_typmod); + COPY_SCALAR_FIELD(cycle_mark_collation); + COPY_SCALAR_FIELD(cycle_mark_neop); + + return newnode; +} + +static CommonTableExpr * +_copyCommonTableExpr(const CommonTableExpr *from) +{ + CommonTableExpr *newnode = makeNode(CommonTableExpr); + + COPY_STRING_FIELD(ctename); + COPY_NODE_FIELD(aliascolnames); + COPY_SCALAR_FIELD(ctematerialized); + COPY_NODE_FIELD(ctequery); + COPY_NODE_FIELD(search_clause); + COPY_NODE_FIELD(cycle_clause); + COPY_LOCATION_FIELD(location); + COPY_SCALAR_FIELD(cterecursive); + COPY_SCALAR_FIELD(cterefcount); + COPY_NODE_FIELD(ctecolnames); + COPY_NODE_FIELD(ctecoltypes); + COPY_NODE_FIELD(ctecoltypmods); + COPY_NODE_FIELD(ctecolcollations); + + return newnode; +} + +static MergeWhenClause * +_copyMergeWhenClause(const MergeWhenClause *from) +{ + MergeWhenClause *newnode = makeNode(MergeWhenClause); + + COPY_SCALAR_FIELD(matched); + COPY_SCALAR_FIELD(commandType); + COPY_SCALAR_FIELD(override); + COPY_NODE_FIELD(condition); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(values); + + return newnode; +} + +static MergeAction * +_copyMergeAction(const MergeAction *from) +{ + MergeAction *newnode = makeNode(MergeAction); + + COPY_SCALAR_FIELD(matched); + COPY_SCALAR_FIELD(commandType); + COPY_SCALAR_FIELD(override); + COPY_NODE_FIELD(qual); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(updateColnos); + + return newnode; +} + +static TriggerTransition * +_copyTriggerTransition(const TriggerTransition *from) +{ + TriggerTransition *newnode = makeNode(TriggerTransition); + + COPY_STRING_FIELD(name); + COPY_SCALAR_FIELD(isNew); + COPY_SCALAR_FIELD(isTable); + + return newnode; +} + +static JsonOutput * +_copyJsonOutput(const JsonOutput *from) +{ + JsonOutput *newnode = makeNode(JsonOutput); + + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(returning); + + return newnode; +} + +static JsonKeyValue * +_copyJsonKeyValue(const JsonKeyValue *from) +{ + JsonKeyValue *newnode = makeNode(JsonKeyValue); + + COPY_NODE_FIELD(key); + COPY_NODE_FIELD(value); + + return newnode; +} + +static JsonObjectConstructor * +_copyJsonObjectConstructor(const JsonObjectConstructor *from) +{ + JsonObjectConstructor *newnode = makeNode(JsonObjectConstructor); + + COPY_NODE_FIELD(exprs); + COPY_NODE_FIELD(output); + COPY_SCALAR_FIELD(absent_on_null); + COPY_SCALAR_FIELD(unique); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonArrayConstructor * +_copyJsonArrayConstructor(const JsonArrayConstructor *from) +{ + JsonArrayConstructor *newnode = makeNode(JsonArrayConstructor); + + COPY_NODE_FIELD(exprs); + COPY_NODE_FIELD(output); + COPY_SCALAR_FIELD(absent_on_null); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonArrayQueryConstructor * +_copyJsonArrayQueryConstructor(const JsonArrayQueryConstructor *from) +{ + JsonArrayQueryConstructor *newnode = makeNode(JsonArrayQueryConstructor); + + COPY_NODE_FIELD(query); + COPY_NODE_FIELD(output); + COPY_NODE_FIELD(format); + COPY_SCALAR_FIELD(absent_on_null); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonAggConstructor * +_copyJsonAggConstructor(const JsonAggConstructor *from) +{ + JsonAggConstructor *newnode = makeNode(JsonAggConstructor); + + COPY_NODE_FIELD(output); + COPY_NODE_FIELD(agg_filter); + COPY_NODE_FIELD(agg_order); + COPY_NODE_FIELD(over); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static JsonObjectAgg * +_copyJsonObjectAgg(const JsonObjectAgg *from) +{ + JsonObjectAgg *newnode = makeNode(JsonObjectAgg); + + COPY_NODE_FIELD(constructor); + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(absent_on_null); + COPY_SCALAR_FIELD(unique); + + return newnode; +} + +static JsonArrayAgg * +_copyJsonArrayAgg(const JsonArrayAgg *from) +{ + JsonArrayAgg *newnode = makeNode(JsonArrayAgg); + + COPY_NODE_FIELD(constructor); + COPY_NODE_FIELD(arg); + COPY_SCALAR_FIELD(absent_on_null); + + return newnode; +} + +static RawStmt * +_copyRawStmt(const RawStmt *from) +{ + RawStmt *newnode = makeNode(RawStmt); + + COPY_NODE_FIELD(stmt); + COPY_LOCATION_FIELD(stmt_location); + COPY_SCALAR_FIELD(stmt_len); + + return newnode; +} + +static InsertStmt * +_copyInsertStmt(const InsertStmt *from) +{ + InsertStmt *newnode = makeNode(InsertStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(cols); + COPY_NODE_FIELD(selectStmt); + COPY_NODE_FIELD(onConflictClause); + COPY_NODE_FIELD(returningList); + COPY_NODE_FIELD(withClause); + COPY_SCALAR_FIELD(override); + + return newnode; +} + +static DeleteStmt * +_copyDeleteStmt(const DeleteStmt *from) +{ + DeleteStmt *newnode = makeNode(DeleteStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(usingClause); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(returningList); + COPY_NODE_FIELD(withClause); + + return newnode; +} + +static UpdateStmt * +_copyUpdateStmt(const UpdateStmt *from) +{ + UpdateStmt *newnode = makeNode(UpdateStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(fromClause); + COPY_NODE_FIELD(returningList); + COPY_NODE_FIELD(withClause); + + return newnode; +} + +static MergeStmt * +_copyMergeStmt(const MergeStmt *from) +{ + MergeStmt *newnode = makeNode(MergeStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(sourceRelation); + COPY_NODE_FIELD(joinCondition); + COPY_NODE_FIELD(mergeWhenClauses); + COPY_NODE_FIELD(withClause); + + return newnode; +} + +static SelectStmt * +_copySelectStmt(const SelectStmt *from) +{ + SelectStmt *newnode = makeNode(SelectStmt); + + COPY_NODE_FIELD(distinctClause); + COPY_NODE_FIELD(intoClause); + COPY_NODE_FIELD(targetList); + COPY_NODE_FIELD(fromClause); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(groupClause); + COPY_SCALAR_FIELD(groupDistinct); + COPY_NODE_FIELD(havingClause); + COPY_NODE_FIELD(windowClause); + COPY_NODE_FIELD(valuesLists); + COPY_NODE_FIELD(sortClause); + COPY_NODE_FIELD(limitOffset); + COPY_NODE_FIELD(limitCount); + COPY_SCALAR_FIELD(limitOption); + COPY_NODE_FIELD(lockingClause); + COPY_NODE_FIELD(withClause); + COPY_SCALAR_FIELD(op); + COPY_SCALAR_FIELD(all); + COPY_NODE_FIELD(larg); + COPY_NODE_FIELD(rarg); + + return newnode; +} + +static SetOperationStmt * +_copySetOperationStmt(const SetOperationStmt *from) +{ + SetOperationStmt *newnode = makeNode(SetOperationStmt); + + COPY_SCALAR_FIELD(op); + COPY_SCALAR_FIELD(all); + COPY_NODE_FIELD(larg); + COPY_NODE_FIELD(rarg); + COPY_NODE_FIELD(colTypes); + COPY_NODE_FIELD(colTypmods); + COPY_NODE_FIELD(colCollations); + COPY_NODE_FIELD(groupClauses); + + return newnode; +} + +static ReturnStmt * +_copyReturnStmt(const ReturnStmt *from) +{ + ReturnStmt *newnode = makeNode(ReturnStmt); + + COPY_NODE_FIELD(returnval); + + return newnode; +} + +static PLAssignStmt * +_copyPLAssignStmt(const PLAssignStmt *from) +{ + PLAssignStmt *newnode = makeNode(PLAssignStmt); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(indirection); + COPY_SCALAR_FIELD(nnames); + COPY_NODE_FIELD(val); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CreateSchemaStmt * +_copyCreateSchemaStmt(const CreateSchemaStmt *from) +{ + CreateSchemaStmt *newnode = makeNode(CreateSchemaStmt); + + COPY_STRING_FIELD(schemaname); + COPY_NODE_FIELD(authrole); + COPY_NODE_FIELD(schemaElts); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static AlterTableStmt * +_copyAlterTableStmt(const AlterTableStmt *from) +{ + AlterTableStmt *newnode = makeNode(AlterTableStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(cmds); + COPY_SCALAR_FIELD(objtype); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static ReplicaIdentityStmt * +_copyReplicaIdentityStmt(const ReplicaIdentityStmt *from) +{ + ReplicaIdentityStmt *newnode = makeNode(ReplicaIdentityStmt); + + COPY_SCALAR_FIELD(identity_type); + COPY_STRING_FIELD(name); + + return newnode; +} + +static AlterTableCmd * +_copyAlterTableCmd(const AlterTableCmd *from) +{ + AlterTableCmd *newnode = makeNode(AlterTableCmd); + + COPY_SCALAR_FIELD(subtype); + COPY_STRING_FIELD(name); + COPY_SCALAR_FIELD(num); + COPY_NODE_FIELD(newowner); + COPY_NODE_FIELD(def); + COPY_SCALAR_FIELD(behavior); + COPY_SCALAR_FIELD(missing_ok); + COPY_SCALAR_FIELD(recurse); + + return newnode; +} + +static AlterCollationStmt * +_copyAlterCollationStmt(const AlterCollationStmt *from) +{ + AlterCollationStmt *newnode = makeNode(AlterCollationStmt); + + COPY_NODE_FIELD(collname); + + return newnode; +} + +static AlterDomainStmt * +_copyAlterDomainStmt(const AlterDomainStmt *from) +{ + AlterDomainStmt *newnode = makeNode(AlterDomainStmt); + + COPY_SCALAR_FIELD(subtype); + COPY_NODE_FIELD(typeName); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(def); + COPY_SCALAR_FIELD(behavior); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static GrantStmt * +_copyGrantStmt(const GrantStmt *from) +{ + GrantStmt *newnode = makeNode(GrantStmt); + + COPY_SCALAR_FIELD(is_grant); + COPY_SCALAR_FIELD(targtype); + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(objects); + COPY_NODE_FIELD(privileges); + COPY_NODE_FIELD(grantees); + COPY_SCALAR_FIELD(grant_option); + COPY_NODE_FIELD(grantor); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static ObjectWithArgs * +_copyObjectWithArgs(const ObjectWithArgs *from) +{ + ObjectWithArgs *newnode = makeNode(ObjectWithArgs); + + COPY_NODE_FIELD(objname); + COPY_NODE_FIELD(objargs); + COPY_NODE_FIELD(objfuncargs); + COPY_SCALAR_FIELD(args_unspecified); + + return newnode; +} + +static AccessPriv * +_copyAccessPriv(const AccessPriv *from) +{ + AccessPriv *newnode = makeNode(AccessPriv); + + COPY_STRING_FIELD(priv_name); + COPY_NODE_FIELD(cols); + + return newnode; +} + +static GrantRoleStmt * +_copyGrantRoleStmt(const GrantRoleStmt *from) +{ + GrantRoleStmt *newnode = makeNode(GrantRoleStmt); + + COPY_NODE_FIELD(granted_roles); + COPY_NODE_FIELD(grantee_roles); + COPY_SCALAR_FIELD(is_grant); + COPY_NODE_FIELD(opt); + COPY_NODE_FIELD(grantor); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static AlterDefaultPrivilegesStmt * +_copyAlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt *from) +{ + AlterDefaultPrivilegesStmt *newnode = makeNode(AlterDefaultPrivilegesStmt); + + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(action); + + return newnode; +} + +static CopyStmt * +_copyCopyStmt(const CopyStmt *from) +{ + CopyStmt *newnode = makeNode(CopyStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(query); + COPY_NODE_FIELD(attlist); + COPY_SCALAR_FIELD(is_from); + COPY_SCALAR_FIELD(is_program); + COPY_STRING_FIELD(filename); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(whereClause); + + return newnode; +} + +static VariableSetStmt * +_copyVariableSetStmt(const VariableSetStmt *from) +{ + VariableSetStmt *newnode = makeNode(VariableSetStmt); + + COPY_SCALAR_FIELD(kind); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(is_local); + + return newnode; +} + +static VariableShowStmt * +_copyVariableShowStmt(const VariableShowStmt *from) +{ + VariableShowStmt *newnode = makeNode(VariableShowStmt); + + COPY_STRING_FIELD(name); + + return newnode; +} + +static CreateStmt * +_copyCreateStmt(const CreateStmt *from) +{ + CreateStmt *newnode = makeNode(CreateStmt); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(tableElts); + COPY_NODE_FIELD(inhRelations); + COPY_NODE_FIELD(partbound); + COPY_NODE_FIELD(partspec); + COPY_NODE_FIELD(ofTypename); + COPY_NODE_FIELD(constraints); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(oncommit); + COPY_STRING_FIELD(tablespacename); + COPY_STRING_FIELD(accessMethod); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static Constraint * +_copyConstraint(const Constraint *from) +{ + Constraint *newnode = makeNode(Constraint); + + COPY_SCALAR_FIELD(contype); + COPY_STRING_FIELD(conname); + COPY_SCALAR_FIELD(deferrable); + COPY_SCALAR_FIELD(initdeferred); + COPY_LOCATION_FIELD(location); + COPY_SCALAR_FIELD(is_no_inherit); + COPY_NODE_FIELD(raw_expr); + COPY_STRING_FIELD(cooked_expr); + COPY_SCALAR_FIELD(generated_when); + COPY_SCALAR_FIELD(nulls_not_distinct); + COPY_NODE_FIELD(keys); + COPY_NODE_FIELD(including); + COPY_NODE_FIELD(exclusions); + COPY_NODE_FIELD(options); + COPY_STRING_FIELD(indexname); + COPY_STRING_FIELD(indexspace); + COPY_SCALAR_FIELD(reset_default_tblspc); + COPY_STRING_FIELD(access_method); + COPY_NODE_FIELD(where_clause); + COPY_NODE_FIELD(pktable); + COPY_NODE_FIELD(fk_attrs); + COPY_NODE_FIELD(pk_attrs); + COPY_SCALAR_FIELD(fk_matchtype); + COPY_SCALAR_FIELD(fk_upd_action); + COPY_SCALAR_FIELD(fk_del_action); + COPY_NODE_FIELD(fk_del_set_cols); + COPY_NODE_FIELD(old_conpfeqop); + COPY_SCALAR_FIELD(old_pktable_oid); + COPY_SCALAR_FIELD(skip_validation); + COPY_SCALAR_FIELD(initially_valid); + + return newnode; +} + +static CreateTableSpaceStmt * +_copyCreateTableSpaceStmt(const CreateTableSpaceStmt *from) +{ + CreateTableSpaceStmt *newnode = makeNode(CreateTableSpaceStmt); + + COPY_STRING_FIELD(tablespacename); + COPY_NODE_FIELD(owner); + COPY_STRING_FIELD(location); + COPY_NODE_FIELD(options); + + return newnode; +} + +static DropTableSpaceStmt * +_copyDropTableSpaceStmt(const DropTableSpaceStmt *from) +{ + DropTableSpaceStmt *newnode = makeNode(DropTableSpaceStmt); + + COPY_STRING_FIELD(tablespacename); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static AlterTableSpaceOptionsStmt * +_copyAlterTableSpaceOptionsStmt(const AlterTableSpaceOptionsStmt *from) +{ + AlterTableSpaceOptionsStmt *newnode = makeNode(AlterTableSpaceOptionsStmt); + + COPY_STRING_FIELD(tablespacename); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(isReset); + + return newnode; +} + +static AlterTableMoveAllStmt * +_copyAlterTableMoveAllStmt(const AlterTableMoveAllStmt *from) +{ + AlterTableMoveAllStmt *newnode = makeNode(AlterTableMoveAllStmt); + + COPY_STRING_FIELD(orig_tablespacename); + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(roles); + COPY_STRING_FIELD(new_tablespacename); + COPY_SCALAR_FIELD(nowait); + + return newnode; +} + +static CreateExtensionStmt * +_copyCreateExtensionStmt(const CreateExtensionStmt *from) +{ + CreateExtensionStmt *newnode = makeNode(CreateExtensionStmt); + + COPY_STRING_FIELD(extname); + COPY_SCALAR_FIELD(if_not_exists); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterExtensionStmt * +_copyAlterExtensionStmt(const AlterExtensionStmt *from) +{ + AlterExtensionStmt *newnode = makeNode(AlterExtensionStmt); + + COPY_STRING_FIELD(extname); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterExtensionContentsStmt * +_copyAlterExtensionContentsStmt(const AlterExtensionContentsStmt *from) +{ + AlterExtensionContentsStmt *newnode = makeNode(AlterExtensionContentsStmt); + + COPY_STRING_FIELD(extname); + COPY_SCALAR_FIELD(action); + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(object); + + return newnode; +} + +static CreateFdwStmt * +_copyCreateFdwStmt(const CreateFdwStmt *from) +{ + CreateFdwStmt *newnode = makeNode(CreateFdwStmt); + + COPY_STRING_FIELD(fdwname); + COPY_NODE_FIELD(func_options); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterFdwStmt * +_copyAlterFdwStmt(const AlterFdwStmt *from) +{ + AlterFdwStmt *newnode = makeNode(AlterFdwStmt); + + COPY_STRING_FIELD(fdwname); + COPY_NODE_FIELD(func_options); + COPY_NODE_FIELD(options); + + return newnode; +} + +static CreateForeignServerStmt * +_copyCreateForeignServerStmt(const CreateForeignServerStmt *from) +{ + CreateForeignServerStmt *newnode = makeNode(CreateForeignServerStmt); + + COPY_STRING_FIELD(servername); + COPY_STRING_FIELD(servertype); + COPY_STRING_FIELD(version); + COPY_STRING_FIELD(fdwname); + COPY_SCALAR_FIELD(if_not_exists); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterForeignServerStmt * +_copyAlterForeignServerStmt(const AlterForeignServerStmt *from) +{ + AlterForeignServerStmt *newnode = makeNode(AlterForeignServerStmt); + + COPY_STRING_FIELD(servername); + COPY_STRING_FIELD(version); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(has_version); + + return newnode; +} + +static CreateForeignTableStmt * +_copyCreateForeignTableStmt(const CreateForeignTableStmt *from) +{ + CreateForeignTableStmt *newnode = makeNode(CreateForeignTableStmt); + + COPY_NODE_FIELD(base.relation); + COPY_NODE_FIELD(base.tableElts); + COPY_NODE_FIELD(base.inhRelations); + COPY_NODE_FIELD(base.partbound); + COPY_NODE_FIELD(base.partspec); + COPY_NODE_FIELD(base.ofTypename); + COPY_NODE_FIELD(base.constraints); + COPY_NODE_FIELD(base.options); + COPY_SCALAR_FIELD(base.oncommit); + COPY_STRING_FIELD(base.tablespacename); + COPY_STRING_FIELD(base.accessMethod); + COPY_SCALAR_FIELD(base.if_not_exists); + COPY_STRING_FIELD(servername); + COPY_NODE_FIELD(options); + + return newnode; +} + +static CreateUserMappingStmt * +_copyCreateUserMappingStmt(const CreateUserMappingStmt *from) +{ + CreateUserMappingStmt *newnode = makeNode(CreateUserMappingStmt); + + COPY_NODE_FIELD(user); + COPY_STRING_FIELD(servername); + COPY_SCALAR_FIELD(if_not_exists); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterUserMappingStmt * +_copyAlterUserMappingStmt(const AlterUserMappingStmt *from) +{ + AlterUserMappingStmt *newnode = makeNode(AlterUserMappingStmt); + + COPY_NODE_FIELD(user); + COPY_STRING_FIELD(servername); + COPY_NODE_FIELD(options); + + return newnode; +} + +static DropUserMappingStmt * +_copyDropUserMappingStmt(const DropUserMappingStmt *from) +{ + DropUserMappingStmt *newnode = makeNode(DropUserMappingStmt); + + COPY_NODE_FIELD(user); + COPY_STRING_FIELD(servername); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static ImportForeignSchemaStmt * +_copyImportForeignSchemaStmt(const ImportForeignSchemaStmt *from) +{ + ImportForeignSchemaStmt *newnode = makeNode(ImportForeignSchemaStmt); + + COPY_STRING_FIELD(server_name); + COPY_STRING_FIELD(remote_schema); + COPY_STRING_FIELD(local_schema); + COPY_SCALAR_FIELD(list_type); + COPY_NODE_FIELD(table_list); + COPY_NODE_FIELD(options); + + return newnode; +} + +static CreatePolicyStmt * +_copyCreatePolicyStmt(const CreatePolicyStmt *from) +{ + CreatePolicyStmt *newnode = makeNode(CreatePolicyStmt); + + COPY_STRING_FIELD(policy_name); + COPY_NODE_FIELD(table); + COPY_STRING_FIELD(cmd_name); + COPY_SCALAR_FIELD(permissive); + COPY_NODE_FIELD(roles); + COPY_NODE_FIELD(qual); + COPY_NODE_FIELD(with_check); + + return newnode; +} + +static AlterPolicyStmt * +_copyAlterPolicyStmt(const AlterPolicyStmt *from) +{ + AlterPolicyStmt *newnode = makeNode(AlterPolicyStmt); + + COPY_STRING_FIELD(policy_name); + COPY_NODE_FIELD(table); + COPY_NODE_FIELD(roles); + COPY_NODE_FIELD(qual); + COPY_NODE_FIELD(with_check); + + return newnode; +} + +static CreateAmStmt * +_copyCreateAmStmt(const CreateAmStmt *from) +{ + CreateAmStmt *newnode = makeNode(CreateAmStmt); + + COPY_STRING_FIELD(amname); + COPY_NODE_FIELD(handler_name); + COPY_SCALAR_FIELD(amtype); + + return newnode; +} + +static CreateTrigStmt * +_copyCreateTrigStmt(const CreateTrigStmt *from) +{ + CreateTrigStmt *newnode = makeNode(CreateTrigStmt); + + COPY_SCALAR_FIELD(replace); + COPY_SCALAR_FIELD(isconstraint); + COPY_STRING_FIELD(trigname); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(funcname); + COPY_NODE_FIELD(args); + COPY_SCALAR_FIELD(row); + COPY_SCALAR_FIELD(timing); + COPY_SCALAR_FIELD(events); + COPY_NODE_FIELD(columns); + COPY_NODE_FIELD(whenClause); + COPY_NODE_FIELD(transitionRels); + COPY_SCALAR_FIELD(deferrable); + COPY_SCALAR_FIELD(initdeferred); + COPY_NODE_FIELD(constrrel); + + return newnode; +} + +static CreateEventTrigStmt * +_copyCreateEventTrigStmt(const CreateEventTrigStmt *from) +{ + CreateEventTrigStmt *newnode = makeNode(CreateEventTrigStmt); + + COPY_STRING_FIELD(trigname); + COPY_STRING_FIELD(eventname); + COPY_NODE_FIELD(whenclause); + COPY_NODE_FIELD(funcname); + + return newnode; +} + +static AlterEventTrigStmt * +_copyAlterEventTrigStmt(const AlterEventTrigStmt *from) +{ + AlterEventTrigStmt *newnode = makeNode(AlterEventTrigStmt); + + COPY_STRING_FIELD(trigname); + COPY_SCALAR_FIELD(tgenabled); + + return newnode; +} + +static CreatePLangStmt * +_copyCreatePLangStmt(const CreatePLangStmt *from) +{ + CreatePLangStmt *newnode = makeNode(CreatePLangStmt); + + COPY_SCALAR_FIELD(replace); + COPY_STRING_FIELD(plname); + COPY_NODE_FIELD(plhandler); + COPY_NODE_FIELD(plinline); + COPY_NODE_FIELD(plvalidator); + COPY_SCALAR_FIELD(pltrusted); + + return newnode; +} + +static CreateRoleStmt * +_copyCreateRoleStmt(const CreateRoleStmt *from) +{ + CreateRoleStmt *newnode = makeNode(CreateRoleStmt); + + COPY_SCALAR_FIELD(stmt_type); + COPY_STRING_FIELD(role); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterRoleStmt * +_copyAlterRoleStmt(const AlterRoleStmt *from) +{ + AlterRoleStmt *newnode = makeNode(AlterRoleStmt); + + COPY_NODE_FIELD(role); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(action); + + return newnode; +} + +static AlterRoleSetStmt * +_copyAlterRoleSetStmt(const AlterRoleSetStmt *from) +{ + AlterRoleSetStmt *newnode = makeNode(AlterRoleSetStmt); + + COPY_NODE_FIELD(role); + COPY_STRING_FIELD(database); + COPY_NODE_FIELD(setstmt); + + return newnode; +} + +static DropRoleStmt * +_copyDropRoleStmt(const DropRoleStmt *from) +{ + DropRoleStmt *newnode = makeNode(DropRoleStmt); + + COPY_NODE_FIELD(roles); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static CreateSeqStmt * +_copyCreateSeqStmt(const CreateSeqStmt *from) +{ + CreateSeqStmt *newnode = makeNode(CreateSeqStmt); + + COPY_NODE_FIELD(sequence); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(ownerId); + COPY_SCALAR_FIELD(for_identity); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static AlterSeqStmt * +_copyAlterSeqStmt(const AlterSeqStmt *from) +{ + AlterSeqStmt *newnode = makeNode(AlterSeqStmt); + + COPY_NODE_FIELD(sequence); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(for_identity); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static DefineStmt * +_copyDefineStmt(const DefineStmt *from) +{ + DefineStmt *newnode = makeNode(DefineStmt); + + COPY_SCALAR_FIELD(kind); + COPY_SCALAR_FIELD(oldstyle); + COPY_NODE_FIELD(defnames); + COPY_NODE_FIELD(args); + COPY_NODE_FIELD(definition); + COPY_SCALAR_FIELD(if_not_exists); + COPY_SCALAR_FIELD(replace); + + return newnode; +} + +static CreateDomainStmt * +_copyCreateDomainStmt(const CreateDomainStmt *from) +{ + CreateDomainStmt *newnode = makeNode(CreateDomainStmt); + + COPY_NODE_FIELD(domainname); + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(collClause); + COPY_NODE_FIELD(constraints); + + return newnode; +} + +static CreateOpClassStmt * +_copyCreateOpClassStmt(const CreateOpClassStmt *from) +{ + CreateOpClassStmt *newnode = makeNode(CreateOpClassStmt); + + COPY_NODE_FIELD(opclassname); + COPY_NODE_FIELD(opfamilyname); + COPY_STRING_FIELD(amname); + COPY_NODE_FIELD(datatype); + COPY_NODE_FIELD(items); + COPY_SCALAR_FIELD(isDefault); + + return newnode; +} + +static CreateOpClassItem * +_copyCreateOpClassItem(const CreateOpClassItem *from) +{ + CreateOpClassItem *newnode = makeNode(CreateOpClassItem); + + COPY_SCALAR_FIELD(itemtype); + COPY_NODE_FIELD(name); + COPY_SCALAR_FIELD(number); + COPY_NODE_FIELD(order_family); + COPY_NODE_FIELD(class_args); + COPY_NODE_FIELD(storedtype); + + return newnode; +} + +static CreateOpFamilyStmt * +_copyCreateOpFamilyStmt(const CreateOpFamilyStmt *from) +{ + CreateOpFamilyStmt *newnode = makeNode(CreateOpFamilyStmt); + + COPY_NODE_FIELD(opfamilyname); + COPY_STRING_FIELD(amname); + + return newnode; +} + +static AlterOpFamilyStmt * +_copyAlterOpFamilyStmt(const AlterOpFamilyStmt *from) +{ + AlterOpFamilyStmt *newnode = makeNode(AlterOpFamilyStmt); + + COPY_NODE_FIELD(opfamilyname); + COPY_STRING_FIELD(amname); + COPY_SCALAR_FIELD(isDrop); + COPY_NODE_FIELD(items); + + return newnode; +} + +static DropStmt * +_copyDropStmt(const DropStmt *from) +{ + DropStmt *newnode = makeNode(DropStmt); + + COPY_NODE_FIELD(objects); + COPY_SCALAR_FIELD(removeType); + COPY_SCALAR_FIELD(behavior); + COPY_SCALAR_FIELD(missing_ok); + COPY_SCALAR_FIELD(concurrent); + + return newnode; +} + +static TruncateStmt * +_copyTruncateStmt(const TruncateStmt *from) +{ + TruncateStmt *newnode = makeNode(TruncateStmt); + + COPY_NODE_FIELD(relations); + COPY_SCALAR_FIELD(restart_seqs); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static CommentStmt * +_copyCommentStmt(const CommentStmt *from) +{ + CommentStmt *newnode = makeNode(CommentStmt); + + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(object); + COPY_STRING_FIELD(comment); + + return newnode; +} + +static SecLabelStmt * +_copySecLabelStmt(const SecLabelStmt *from) +{ + SecLabelStmt *newnode = makeNode(SecLabelStmt); + + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(object); + COPY_STRING_FIELD(provider); + COPY_STRING_FIELD(label); + + return newnode; +} + +static DeclareCursorStmt * +_copyDeclareCursorStmt(const DeclareCursorStmt *from) +{ + DeclareCursorStmt *newnode = makeNode(DeclareCursorStmt); + + COPY_STRING_FIELD(portalname); + COPY_SCALAR_FIELD(options); + COPY_NODE_FIELD(query); + + return newnode; +} + +static ClosePortalStmt * +_copyClosePortalStmt(const ClosePortalStmt *from) +{ + ClosePortalStmt *newnode = makeNode(ClosePortalStmt); + + COPY_STRING_FIELD(portalname); + + return newnode; +} + +static FetchStmt * +_copyFetchStmt(const FetchStmt *from) +{ + FetchStmt *newnode = makeNode(FetchStmt); + + COPY_SCALAR_FIELD(direction); + COPY_SCALAR_FIELD(howMany); + COPY_STRING_FIELD(portalname); + COPY_SCALAR_FIELD(ismove); + + return newnode; +} + +static IndexStmt * +_copyIndexStmt(const IndexStmt *from) +{ + IndexStmt *newnode = makeNode(IndexStmt); + + COPY_STRING_FIELD(idxname); + COPY_NODE_FIELD(relation); + COPY_STRING_FIELD(accessMethod); + COPY_STRING_FIELD(tableSpace); + COPY_NODE_FIELD(indexParams); + COPY_NODE_FIELD(indexIncludingParams); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(excludeOpNames); + COPY_STRING_FIELD(idxcomment); + COPY_SCALAR_FIELD(indexOid); + COPY_SCALAR_FIELD(oldNumber); + COPY_SCALAR_FIELD(oldCreateSubid); + COPY_SCALAR_FIELD(oldFirstRelfilelocatorSubid); + COPY_SCALAR_FIELD(unique); + COPY_SCALAR_FIELD(nulls_not_distinct); + COPY_SCALAR_FIELD(primary); + COPY_SCALAR_FIELD(isconstraint); + COPY_SCALAR_FIELD(deferrable); + COPY_SCALAR_FIELD(initdeferred); + COPY_SCALAR_FIELD(transformed); + COPY_SCALAR_FIELD(concurrent); + COPY_SCALAR_FIELD(if_not_exists); + COPY_SCALAR_FIELD(reset_default_tblspc); + + return newnode; +} + +static CreateStatsStmt * +_copyCreateStatsStmt(const CreateStatsStmt *from) +{ + CreateStatsStmt *newnode = makeNode(CreateStatsStmt); + + COPY_NODE_FIELD(defnames); + COPY_NODE_FIELD(stat_types); + COPY_NODE_FIELD(exprs); + COPY_NODE_FIELD(relations); + COPY_STRING_FIELD(stxcomment); + COPY_SCALAR_FIELD(transformed); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static StatsElem * +_copyStatsElem(const StatsElem *from) +{ + StatsElem *newnode = makeNode(StatsElem); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(expr); + + return newnode; +} + +static AlterStatsStmt * +_copyAlterStatsStmt(const AlterStatsStmt *from) +{ + AlterStatsStmt *newnode = makeNode(AlterStatsStmt); + + COPY_NODE_FIELD(defnames); + COPY_SCALAR_FIELD(stxstattarget); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static CreateFunctionStmt * +_copyCreateFunctionStmt(const CreateFunctionStmt *from) +{ + CreateFunctionStmt *newnode = makeNode(CreateFunctionStmt); + + COPY_SCALAR_FIELD(is_procedure); + COPY_SCALAR_FIELD(replace); + COPY_NODE_FIELD(funcname); + COPY_NODE_FIELD(parameters); + COPY_NODE_FIELD(returnType); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(sql_body); + + return newnode; +} + +static FunctionParameter * +_copyFunctionParameter(const FunctionParameter *from) +{ + FunctionParameter *newnode = makeNode(FunctionParameter); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(argType); + COPY_SCALAR_FIELD(mode); + COPY_NODE_FIELD(defexpr); + + return newnode; +} + +static AlterFunctionStmt * +_copyAlterFunctionStmt(const AlterFunctionStmt *from) +{ + AlterFunctionStmt *newnode = makeNode(AlterFunctionStmt); + + COPY_SCALAR_FIELD(objtype); + COPY_NODE_FIELD(func); + COPY_NODE_FIELD(actions); + + return newnode; +} + +static DoStmt * +_copyDoStmt(const DoStmt *from) +{ + DoStmt *newnode = makeNode(DoStmt); + + COPY_NODE_FIELD(args); + + return newnode; +} + +static CallStmt * +_copyCallStmt(const CallStmt *from) +{ + CallStmt *newnode = makeNode(CallStmt); + + COPY_NODE_FIELD(funccall); + COPY_NODE_FIELD(funcexpr); + COPY_NODE_FIELD(outargs); + + return newnode; +} + +static RenameStmt * +_copyRenameStmt(const RenameStmt *from) +{ + RenameStmt *newnode = makeNode(RenameStmt); + + COPY_SCALAR_FIELD(renameType); + COPY_SCALAR_FIELD(relationType); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(object); + COPY_STRING_FIELD(subname); + COPY_STRING_FIELD(newname); + COPY_SCALAR_FIELD(behavior); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static AlterObjectDependsStmt * +_copyAlterObjectDependsStmt(const AlterObjectDependsStmt *from) +{ + AlterObjectDependsStmt *newnode = makeNode(AlterObjectDependsStmt); + + COPY_SCALAR_FIELD(objectType); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(object); + COPY_NODE_FIELD(extname); + COPY_SCALAR_FIELD(remove); + + return newnode; +} + +static AlterObjectSchemaStmt * +_copyAlterObjectSchemaStmt(const AlterObjectSchemaStmt *from) +{ + AlterObjectSchemaStmt *newnode = makeNode(AlterObjectSchemaStmt); + + COPY_SCALAR_FIELD(objectType); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(object); + COPY_STRING_FIELD(newschema); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static AlterOwnerStmt * +_copyAlterOwnerStmt(const AlterOwnerStmt *from) +{ + AlterOwnerStmt *newnode = makeNode(AlterOwnerStmt); + + COPY_SCALAR_FIELD(objectType); + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(object); + COPY_NODE_FIELD(newowner); + + return newnode; +} + +static AlterOperatorStmt * +_copyAlterOperatorStmt(const AlterOperatorStmt *from) +{ + AlterOperatorStmt *newnode = makeNode(AlterOperatorStmt); + + COPY_NODE_FIELD(opername); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterTypeStmt * +_copyAlterTypeStmt(const AlterTypeStmt *from) +{ + AlterTypeStmt *newnode = makeNode(AlterTypeStmt); + + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(options); + + return newnode; +} + +static RuleStmt * +_copyRuleStmt(const RuleStmt *from) +{ + RuleStmt *newnode = makeNode(RuleStmt); + + COPY_NODE_FIELD(relation); + COPY_STRING_FIELD(rulename); + COPY_NODE_FIELD(whereClause); + COPY_SCALAR_FIELD(event); + COPY_SCALAR_FIELD(instead); + COPY_NODE_FIELD(actions); + COPY_SCALAR_FIELD(replace); + + return newnode; +} + +static NotifyStmt * +_copyNotifyStmt(const NotifyStmt *from) +{ + NotifyStmt *newnode = makeNode(NotifyStmt); + + COPY_STRING_FIELD(conditionname); + COPY_STRING_FIELD(payload); + + return newnode; +} + +static ListenStmt * +_copyListenStmt(const ListenStmt *from) +{ + ListenStmt *newnode = makeNode(ListenStmt); + + COPY_STRING_FIELD(conditionname); + + return newnode; +} + +static UnlistenStmt * +_copyUnlistenStmt(const UnlistenStmt *from) +{ + UnlistenStmt *newnode = makeNode(UnlistenStmt); + + COPY_STRING_FIELD(conditionname); + + return newnode; +} + +static TransactionStmt * +_copyTransactionStmt(const TransactionStmt *from) +{ + TransactionStmt *newnode = makeNode(TransactionStmt); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(options); + COPY_STRING_FIELD(savepoint_name); + COPY_STRING_FIELD(gid); + COPY_SCALAR_FIELD(chain); + + return newnode; +} + +static CompositeTypeStmt * +_copyCompositeTypeStmt(const CompositeTypeStmt *from) +{ + CompositeTypeStmt *newnode = makeNode(CompositeTypeStmt); + + COPY_NODE_FIELD(typevar); + COPY_NODE_FIELD(coldeflist); + + return newnode; +} + +static CreateEnumStmt * +_copyCreateEnumStmt(const CreateEnumStmt *from) +{ + CreateEnumStmt *newnode = makeNode(CreateEnumStmt); + + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(vals); + + return newnode; +} + +static CreateRangeStmt * +_copyCreateRangeStmt(const CreateRangeStmt *from) +{ + CreateRangeStmt *newnode = makeNode(CreateRangeStmt); + + COPY_NODE_FIELD(typeName); + COPY_NODE_FIELD(params); + + return newnode; +} + +static AlterEnumStmt * +_copyAlterEnumStmt(const AlterEnumStmt *from) +{ + AlterEnumStmt *newnode = makeNode(AlterEnumStmt); + + COPY_NODE_FIELD(typeName); + COPY_STRING_FIELD(oldVal); + COPY_STRING_FIELD(newVal); + COPY_STRING_FIELD(newValNeighbor); + COPY_SCALAR_FIELD(newValIsAfter); + COPY_SCALAR_FIELD(skipIfNewValExists); + + return newnode; +} + +static ViewStmt * +_copyViewStmt(const ViewStmt *from) +{ + ViewStmt *newnode = makeNode(ViewStmt); + + COPY_NODE_FIELD(view); + COPY_NODE_FIELD(aliases); + COPY_NODE_FIELD(query); + COPY_SCALAR_FIELD(replace); + COPY_NODE_FIELD(options); + COPY_SCALAR_FIELD(withCheckOption); + + return newnode; +} + +static LoadStmt * +_copyLoadStmt(const LoadStmt *from) +{ + LoadStmt *newnode = makeNode(LoadStmt); + + COPY_STRING_FIELD(filename); + + return newnode; +} + +static CreatedbStmt * +_copyCreatedbStmt(const CreatedbStmt *from) +{ + CreatedbStmt *newnode = makeNode(CreatedbStmt); + + COPY_STRING_FIELD(dbname); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterDatabaseStmt * +_copyAlterDatabaseStmt(const AlterDatabaseStmt *from) +{ + AlterDatabaseStmt *newnode = makeNode(AlterDatabaseStmt); + + COPY_STRING_FIELD(dbname); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterDatabaseRefreshCollStmt * +_copyAlterDatabaseRefreshCollStmt(const AlterDatabaseRefreshCollStmt *from) +{ + AlterDatabaseRefreshCollStmt *newnode = makeNode(AlterDatabaseRefreshCollStmt); + + COPY_STRING_FIELD(dbname); + + return newnode; +} + +static AlterDatabaseSetStmt * +_copyAlterDatabaseSetStmt(const AlterDatabaseSetStmt *from) +{ + AlterDatabaseSetStmt *newnode = makeNode(AlterDatabaseSetStmt); + + COPY_STRING_FIELD(dbname); + COPY_NODE_FIELD(setstmt); + + return newnode; +} + +static DropdbStmt * +_copyDropdbStmt(const DropdbStmt *from) +{ + DropdbStmt *newnode = makeNode(DropdbStmt); + + COPY_STRING_FIELD(dbname); + COPY_SCALAR_FIELD(missing_ok); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterSystemStmt * +_copyAlterSystemStmt(const AlterSystemStmt *from) +{ + AlterSystemStmt *newnode = makeNode(AlterSystemStmt); + + COPY_NODE_FIELD(setstmt); + + return newnode; +} + +static ClusterStmt * +_copyClusterStmt(const ClusterStmt *from) +{ + ClusterStmt *newnode = makeNode(ClusterStmt); + + COPY_NODE_FIELD(relation); + COPY_STRING_FIELD(indexname); + COPY_NODE_FIELD(params); + + return newnode; +} + +static VacuumStmt * +_copyVacuumStmt(const VacuumStmt *from) +{ + VacuumStmt *newnode = makeNode(VacuumStmt); + + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(rels); + COPY_SCALAR_FIELD(is_vacuumcmd); + + return newnode; +} + +static VacuumRelation * +_copyVacuumRelation(const VacuumRelation *from) +{ + VacuumRelation *newnode = makeNode(VacuumRelation); + + COPY_NODE_FIELD(relation); + COPY_SCALAR_FIELD(oid); + COPY_NODE_FIELD(va_cols); + + return newnode; +} + +static ExplainStmt * +_copyExplainStmt(const ExplainStmt *from) +{ + ExplainStmt *newnode = makeNode(ExplainStmt); + + COPY_NODE_FIELD(query); + COPY_NODE_FIELD(options); + + return newnode; +} + +static CreateTableAsStmt * +_copyCreateTableAsStmt(const CreateTableAsStmt *from) +{ + CreateTableAsStmt *newnode = makeNode(CreateTableAsStmt); + + COPY_NODE_FIELD(query); + COPY_NODE_FIELD(into); + COPY_SCALAR_FIELD(objtype); + COPY_SCALAR_FIELD(is_select_into); + COPY_SCALAR_FIELD(if_not_exists); + + return newnode; +} + +static RefreshMatViewStmt * +_copyRefreshMatViewStmt(const RefreshMatViewStmt *from) +{ + RefreshMatViewStmt *newnode = makeNode(RefreshMatViewStmt); + + COPY_SCALAR_FIELD(concurrent); + COPY_SCALAR_FIELD(skipData); + COPY_NODE_FIELD(relation); + + return newnode; +} + +static CheckPointStmt * +_copyCheckPointStmt(const CheckPointStmt *from) +{ + CheckPointStmt *newnode = makeNode(CheckPointStmt); + + + return newnode; +} + +static DiscardStmt * +_copyDiscardStmt(const DiscardStmt *from) +{ + DiscardStmt *newnode = makeNode(DiscardStmt); + + COPY_SCALAR_FIELD(target); + + return newnode; +} + +static LockStmt * +_copyLockStmt(const LockStmt *from) +{ + LockStmt *newnode = makeNode(LockStmt); + + COPY_NODE_FIELD(relations); + COPY_SCALAR_FIELD(mode); + COPY_SCALAR_FIELD(nowait); + + return newnode; +} + +static ConstraintsSetStmt * +_copyConstraintsSetStmt(const ConstraintsSetStmt *from) +{ + ConstraintsSetStmt *newnode = makeNode(ConstraintsSetStmt); + + COPY_NODE_FIELD(constraints); + COPY_SCALAR_FIELD(deferred); + + return newnode; +} + +static ReindexStmt * +_copyReindexStmt(const ReindexStmt *from) +{ + ReindexStmt *newnode = makeNode(ReindexStmt); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(relation); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(params); + + return newnode; +} + +static CreateConversionStmt * +_copyCreateConversionStmt(const CreateConversionStmt *from) +{ + CreateConversionStmt *newnode = makeNode(CreateConversionStmt); + + COPY_NODE_FIELD(conversion_name); + COPY_STRING_FIELD(for_encoding_name); + COPY_STRING_FIELD(to_encoding_name); + COPY_NODE_FIELD(func_name); + COPY_SCALAR_FIELD(def); + + return newnode; +} + +static CreateCastStmt * +_copyCreateCastStmt(const CreateCastStmt *from) +{ + CreateCastStmt *newnode = makeNode(CreateCastStmt); + + COPY_NODE_FIELD(sourcetype); + COPY_NODE_FIELD(targettype); + COPY_NODE_FIELD(func); + COPY_SCALAR_FIELD(context); + COPY_SCALAR_FIELD(inout); + + return newnode; +} + +static CreateTransformStmt * +_copyCreateTransformStmt(const CreateTransformStmt *from) +{ + CreateTransformStmt *newnode = makeNode(CreateTransformStmt); + + COPY_SCALAR_FIELD(replace); + COPY_NODE_FIELD(type_name); + COPY_STRING_FIELD(lang); + COPY_NODE_FIELD(fromsql); + COPY_NODE_FIELD(tosql); + + return newnode; +} + +static PrepareStmt * +_copyPrepareStmt(const PrepareStmt *from) +{ + PrepareStmt *newnode = makeNode(PrepareStmt); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(argtypes); + COPY_NODE_FIELD(query); + + return newnode; +} + +static ExecuteStmt * +_copyExecuteStmt(const ExecuteStmt *from) +{ + ExecuteStmt *newnode = makeNode(ExecuteStmt); + + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(params); + + return newnode; +} + +static DeallocateStmt * +_copyDeallocateStmt(const DeallocateStmt *from) +{ + DeallocateStmt *newnode = makeNode(DeallocateStmt); + + COPY_STRING_FIELD(name); + + return newnode; +} + +static DropOwnedStmt * +_copyDropOwnedStmt(const DropOwnedStmt *from) +{ + DropOwnedStmt *newnode = makeNode(DropOwnedStmt); + + COPY_NODE_FIELD(roles); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static ReassignOwnedStmt * +_copyReassignOwnedStmt(const ReassignOwnedStmt *from) +{ + ReassignOwnedStmt *newnode = makeNode(ReassignOwnedStmt); + + COPY_NODE_FIELD(roles); + COPY_NODE_FIELD(newrole); + + return newnode; +} + +static AlterTSDictionaryStmt * +_copyAlterTSDictionaryStmt(const AlterTSDictionaryStmt *from) +{ + AlterTSDictionaryStmt *newnode = makeNode(AlterTSDictionaryStmt); + + COPY_NODE_FIELD(dictname); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterTSConfigurationStmt * +_copyAlterTSConfigurationStmt(const AlterTSConfigurationStmt *from) +{ + AlterTSConfigurationStmt *newnode = makeNode(AlterTSConfigurationStmt); + + COPY_SCALAR_FIELD(kind); + COPY_NODE_FIELD(cfgname); + COPY_NODE_FIELD(tokentype); + COPY_NODE_FIELD(dicts); + COPY_SCALAR_FIELD(override); + COPY_SCALAR_FIELD(replace); + COPY_SCALAR_FIELD(missing_ok); + + return newnode; +} + +static PublicationTable * +_copyPublicationTable(const PublicationTable *from) +{ + PublicationTable *newnode = makeNode(PublicationTable); + + COPY_NODE_FIELD(relation); + COPY_NODE_FIELD(whereClause); + COPY_NODE_FIELD(columns); + + return newnode; +} + +static PublicationObjSpec * +_copyPublicationObjSpec(const PublicationObjSpec *from) +{ + PublicationObjSpec *newnode = makeNode(PublicationObjSpec); + + COPY_SCALAR_FIELD(pubobjtype); + COPY_STRING_FIELD(name); + COPY_NODE_FIELD(pubtable); + COPY_LOCATION_FIELD(location); + + return newnode; +} + +static CreatePublicationStmt * +_copyCreatePublicationStmt(const CreatePublicationStmt *from) +{ + CreatePublicationStmt *newnode = makeNode(CreatePublicationStmt); + + COPY_STRING_FIELD(pubname); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(pubobjects); + COPY_SCALAR_FIELD(for_all_tables); + + return newnode; +} + +static AlterPublicationStmt * +_copyAlterPublicationStmt(const AlterPublicationStmt *from) +{ + AlterPublicationStmt *newnode = makeNode(AlterPublicationStmt); + + COPY_STRING_FIELD(pubname); + COPY_NODE_FIELD(options); + COPY_NODE_FIELD(pubobjects); + COPY_SCALAR_FIELD(for_all_tables); + COPY_SCALAR_FIELD(action); + + return newnode; +} + +static CreateSubscriptionStmt * +_copyCreateSubscriptionStmt(const CreateSubscriptionStmt *from) +{ + CreateSubscriptionStmt *newnode = makeNode(CreateSubscriptionStmt); + + COPY_STRING_FIELD(subname); + COPY_STRING_FIELD(conninfo); + COPY_NODE_FIELD(publication); + COPY_NODE_FIELD(options); + + return newnode; +} + +static AlterSubscriptionStmt * +_copyAlterSubscriptionStmt(const AlterSubscriptionStmt *from) +{ + AlterSubscriptionStmt *newnode = makeNode(AlterSubscriptionStmt); + + COPY_SCALAR_FIELD(kind); + COPY_STRING_FIELD(subname); + COPY_STRING_FIELD(conninfo); + COPY_NODE_FIELD(publication); + COPY_NODE_FIELD(options); + + return newnode; +} + +static DropSubscriptionStmt * +_copyDropSubscriptionStmt(const DropSubscriptionStmt *from) +{ + DropSubscriptionStmt *newnode = makeNode(DropSubscriptionStmt); + + COPY_STRING_FIELD(subname); + COPY_SCALAR_FIELD(missing_ok); + COPY_SCALAR_FIELD(behavior); + + return newnode; +} + +static PathKey * +_copyPathKey(const PathKey *from) +{ + PathKey *newnode = makeNode(PathKey); + + COPY_SCALAR_FIELD(pk_eclass); + COPY_SCALAR_FIELD(pk_opfamily); + COPY_SCALAR_FIELD(pk_strategy); + COPY_SCALAR_FIELD(pk_nulls_first); + + return newnode; +} + +static RestrictInfo * +_copyRestrictInfo(const RestrictInfo *from) +{ + RestrictInfo *newnode = makeNode(RestrictInfo); + + COPY_NODE_FIELD(clause); + COPY_SCALAR_FIELD(is_pushed_down); + COPY_SCALAR_FIELD(can_join); + COPY_SCALAR_FIELD(pseudoconstant); + COPY_SCALAR_FIELD(has_clone); + COPY_SCALAR_FIELD(is_clone); + COPY_SCALAR_FIELD(leakproof); + COPY_SCALAR_FIELD(has_volatile); + COPY_SCALAR_FIELD(security_level); + COPY_SCALAR_FIELD(num_base_rels); + COPY_BITMAPSET_FIELD(clause_relids); + COPY_BITMAPSET_FIELD(required_relids); + COPY_BITMAPSET_FIELD(incompatible_relids); + COPY_BITMAPSET_FIELD(outer_relids); + COPY_BITMAPSET_FIELD(left_relids); + COPY_BITMAPSET_FIELD(right_relids); + COPY_NODE_FIELD(orclause); + COPY_SCALAR_FIELD(rinfo_serial); + COPY_SCALAR_FIELD(parent_ec); + COPY_SCALAR_FIELD(eval_cost); + COPY_SCALAR_FIELD(norm_selec); + COPY_SCALAR_FIELD(outer_selec); + COPY_NODE_FIELD(mergeopfamilies); + COPY_SCALAR_FIELD(left_ec); + COPY_SCALAR_FIELD(right_ec); + COPY_SCALAR_FIELD(left_em); + COPY_SCALAR_FIELD(right_em); + newnode->scansel_cache = NIL; + COPY_SCALAR_FIELD(outer_is_left); + COPY_SCALAR_FIELD(hashjoinoperator); + COPY_SCALAR_FIELD(left_bucketsize); + COPY_SCALAR_FIELD(right_bucketsize); + COPY_SCALAR_FIELD(left_mcvfreq); + COPY_SCALAR_FIELD(right_mcvfreq); + COPY_SCALAR_FIELD(left_hasheqoperator); + COPY_SCALAR_FIELD(right_hasheqoperator); + + return newnode; +} + +static PlaceHolderVar * +_copyPlaceHolderVar(const PlaceHolderVar *from) +{ + PlaceHolderVar *newnode = makeNode(PlaceHolderVar); + + COPY_NODE_FIELD(phexpr); + COPY_BITMAPSET_FIELD(phrels); + COPY_BITMAPSET_FIELD(phnullingrels); + COPY_SCALAR_FIELD(phid); + COPY_SCALAR_FIELD(phlevelsup); + + return newnode; +} + +static SpecialJoinInfo * +_copySpecialJoinInfo(const SpecialJoinInfo *from) +{ + SpecialJoinInfo *newnode = makeNode(SpecialJoinInfo); + + COPY_BITMAPSET_FIELD(min_lefthand); + COPY_BITMAPSET_FIELD(min_righthand); + COPY_BITMAPSET_FIELD(syn_lefthand); + COPY_BITMAPSET_FIELD(syn_righthand); + COPY_SCALAR_FIELD(jointype); + COPY_SCALAR_FIELD(ojrelid); + COPY_BITMAPSET_FIELD(commute_above_l); + COPY_BITMAPSET_FIELD(commute_above_r); + COPY_BITMAPSET_FIELD(commute_below_l); + COPY_BITMAPSET_FIELD(commute_below_r); + COPY_SCALAR_FIELD(lhs_strict); + COPY_SCALAR_FIELD(semi_can_btree); + COPY_SCALAR_FIELD(semi_can_hash); + COPY_NODE_FIELD(semi_operators); + COPY_NODE_FIELD(semi_rhs_exprs); + + return newnode; +} + +static AppendRelInfo * +_copyAppendRelInfo(const AppendRelInfo *from) +{ + AppendRelInfo *newnode = makeNode(AppendRelInfo); + + COPY_SCALAR_FIELD(parent_relid); + COPY_SCALAR_FIELD(child_relid); + COPY_SCALAR_FIELD(parent_reltype); + COPY_SCALAR_FIELD(child_reltype); + COPY_NODE_FIELD(translated_vars); + COPY_SCALAR_FIELD(num_child_cols); + COPY_POINTER_FIELD(parent_colnos, from->num_child_cols * sizeof(AttrNumber)); + COPY_SCALAR_FIELD(parent_reloid); + + return newnode; +} + +static PlaceHolderInfo * +_copyPlaceHolderInfo(const PlaceHolderInfo *from) +{ + PlaceHolderInfo *newnode = makeNode(PlaceHolderInfo); + + COPY_SCALAR_FIELD(phid); + COPY_NODE_FIELD(ph_var); + COPY_BITMAPSET_FIELD(ph_eval_at); + COPY_BITMAPSET_FIELD(ph_lateral); + COPY_BITMAPSET_FIELD(ph_needed); + COPY_SCALAR_FIELD(ph_width); + + return newnode; +} + +static PlannedStmt * +_copyPlannedStmt(const PlannedStmt *from) +{ + PlannedStmt *newnode = makeNode(PlannedStmt); + + COPY_SCALAR_FIELD(commandType); + COPY_SCALAR_FIELD(queryId); + COPY_SCALAR_FIELD(hasReturning); + COPY_SCALAR_FIELD(hasModifyingCTE); + COPY_SCALAR_FIELD(canSetTag); + COPY_SCALAR_FIELD(transientPlan); + COPY_SCALAR_FIELD(dependsOnRole); + COPY_SCALAR_FIELD(parallelModeNeeded); + COPY_SCALAR_FIELD(jitFlags); + COPY_NODE_FIELD(planTree); + COPY_NODE_FIELD(rtable); + COPY_NODE_FIELD(permInfos); + COPY_NODE_FIELD(resultRelations); + COPY_NODE_FIELD(appendRelations); + COPY_NODE_FIELD(subplans); + COPY_BITMAPSET_FIELD(rewindPlanIDs); + COPY_NODE_FIELD(rowMarks); + COPY_NODE_FIELD(relationOids); + COPY_NODE_FIELD(invalItems); + COPY_NODE_FIELD(paramExecTypes); + COPY_NODE_FIELD(utilityStmt); + COPY_LOCATION_FIELD(stmt_location); + COPY_SCALAR_FIELD(stmt_len); + + return newnode; +} + +static Result * +_copyResult(const Result *from) +{ + Result *newnode = makeNode(Result); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(resconstantqual); + + return newnode; +} + +static ProjectSet * +_copyProjectSet(const ProjectSet *from) +{ + ProjectSet *newnode = makeNode(ProjectSet); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + + return newnode; +} + +static ModifyTable * +_copyModifyTable(const ModifyTable *from) +{ + ModifyTable *newnode = makeNode(ModifyTable); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(operation); + COPY_SCALAR_FIELD(canSetTag); + COPY_SCALAR_FIELD(nominalRelation); + COPY_SCALAR_FIELD(rootRelation); + COPY_SCALAR_FIELD(partColsUpdated); + COPY_NODE_FIELD(resultRelations); + COPY_NODE_FIELD(updateColnosLists); + COPY_NODE_FIELD(withCheckOptionLists); + COPY_NODE_FIELD(returningLists); + COPY_NODE_FIELD(fdwPrivLists); + COPY_BITMAPSET_FIELD(fdwDirectModifyPlans); + COPY_NODE_FIELD(rowMarks); + COPY_SCALAR_FIELD(epqParam); + COPY_SCALAR_FIELD(onConflictAction); + COPY_NODE_FIELD(arbiterIndexes); + COPY_NODE_FIELD(onConflictSet); + COPY_NODE_FIELD(onConflictCols); + COPY_NODE_FIELD(onConflictWhere); + COPY_SCALAR_FIELD(exclRelRTI); + COPY_NODE_FIELD(exclRelTlist); + COPY_NODE_FIELD(mergeActionLists); + + return newnode; +} + +static Append * +_copyAppend(const Append *from) +{ + Append *newnode = makeNode(Append); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_BITMAPSET_FIELD(apprelids); + COPY_NODE_FIELD(appendplans); + COPY_SCALAR_FIELD(nasyncplans); + COPY_SCALAR_FIELD(first_partial_plan); + COPY_NODE_FIELD(part_prune_info); + + return newnode; +} + +static MergeAppend * +_copyMergeAppend(const MergeAppend *from) +{ + MergeAppend *newnode = makeNode(MergeAppend); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_BITMAPSET_FIELD(apprelids); + COPY_NODE_FIELD(mergeplans); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(sortColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(sortOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(collations, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(nullsFirst, from->numCols * sizeof(bool)); + COPY_NODE_FIELD(part_prune_info); + + return newnode; +} + +static RecursiveUnion * +_copyRecursiveUnion(const RecursiveUnion *from) +{ + RecursiveUnion *newnode = makeNode(RecursiveUnion); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(wtParam); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(dupColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(dupOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(dupCollations, from->numCols * sizeof(Oid)); + COPY_SCALAR_FIELD(numGroups); + + return newnode; +} + +static BitmapAnd * +_copyBitmapAnd(const BitmapAnd *from) +{ + BitmapAnd *newnode = makeNode(BitmapAnd); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(bitmapplans); + + return newnode; +} + +static BitmapOr * +_copyBitmapOr(const BitmapOr *from) +{ + BitmapOr *newnode = makeNode(BitmapOr); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(isshared); + COPY_NODE_FIELD(bitmapplans); + + return newnode; +} + +static SeqScan * +_copySeqScan(const SeqScan *from) +{ + SeqScan *newnode = makeNode(SeqScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + + return newnode; +} + +static SampleScan * +_copySampleScan(const SampleScan *from) +{ + SampleScan *newnode = makeNode(SampleScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(tablesample); + + return newnode; +} + +static IndexScan * +_copyIndexScan(const IndexScan *from) +{ + IndexScan *newnode = makeNode(IndexScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(indexid); + COPY_NODE_FIELD(indexqual); + COPY_NODE_FIELD(indexqualorig); + COPY_NODE_FIELD(indexorderby); + COPY_NODE_FIELD(indexorderbyorig); + COPY_NODE_FIELD(indexorderbyops); + COPY_SCALAR_FIELD(indexorderdir); + + return newnode; +} + +static IndexOnlyScan * +_copyIndexOnlyScan(const IndexOnlyScan *from) +{ + IndexOnlyScan *newnode = makeNode(IndexOnlyScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(indexid); + COPY_NODE_FIELD(indexqual); + COPY_NODE_FIELD(recheckqual); + COPY_NODE_FIELD(indexorderby); + COPY_NODE_FIELD(indextlist); + COPY_SCALAR_FIELD(indexorderdir); + + return newnode; +} + +static BitmapIndexScan * +_copyBitmapIndexScan(const BitmapIndexScan *from) +{ + BitmapIndexScan *newnode = makeNode(BitmapIndexScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(indexid); + COPY_SCALAR_FIELD(isshared); + COPY_NODE_FIELD(indexqual); + COPY_NODE_FIELD(indexqualorig); + + return newnode; +} + +static BitmapHeapScan * +_copyBitmapHeapScan(const BitmapHeapScan *from) +{ + BitmapHeapScan *newnode = makeNode(BitmapHeapScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(bitmapqualorig); + + return newnode; +} + +static TidScan * +_copyTidScan(const TidScan *from) +{ + TidScan *newnode = makeNode(TidScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(tidquals); + + return newnode; +} + +static TidRangeScan * +_copyTidRangeScan(const TidRangeScan *from) +{ + TidRangeScan *newnode = makeNode(TidRangeScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(tidrangequals); + + return newnode; +} + +static SubqueryScan * +_copySubqueryScan(const SubqueryScan *from) +{ + SubqueryScan *newnode = makeNode(SubqueryScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(subplan); + COPY_SCALAR_FIELD(scanstatus); + + return newnode; +} + +static FunctionScan * +_copyFunctionScan(const FunctionScan *from) +{ + FunctionScan *newnode = makeNode(FunctionScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(functions); + COPY_SCALAR_FIELD(funcordinality); + + return newnode; +} + +static ValuesScan * +_copyValuesScan(const ValuesScan *from) +{ + ValuesScan *newnode = makeNode(ValuesScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(values_lists); + + return newnode; +} + +static TableFuncScan * +_copyTableFuncScan(const TableFuncScan *from) +{ + TableFuncScan *newnode = makeNode(TableFuncScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_NODE_FIELD(tablefunc); + + return newnode; +} + +static CteScan * +_copyCteScan(const CteScan *from) +{ + CteScan *newnode = makeNode(CteScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(ctePlanId); + COPY_SCALAR_FIELD(cteParam); + + return newnode; +} + +static NamedTuplestoreScan * +_copyNamedTuplestoreScan(const NamedTuplestoreScan *from) +{ + NamedTuplestoreScan *newnode = makeNode(NamedTuplestoreScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_STRING_FIELD(enrname); + + return newnode; +} + +static WorkTableScan * +_copyWorkTableScan(const WorkTableScan *from) +{ + WorkTableScan *newnode = makeNode(WorkTableScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(wtParam); + + return newnode; +} + +static ForeignScan * +_copyForeignScan(const ForeignScan *from) +{ + ForeignScan *newnode = makeNode(ForeignScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(operation); + COPY_SCALAR_FIELD(resultRelation); + COPY_SCALAR_FIELD(checkAsUser); + COPY_SCALAR_FIELD(fs_server); + COPY_NODE_FIELD(fdw_exprs); + COPY_NODE_FIELD(fdw_private); + COPY_NODE_FIELD(fdw_scan_tlist); + COPY_NODE_FIELD(fdw_recheck_quals); + COPY_BITMAPSET_FIELD(fs_relids); + COPY_BITMAPSET_FIELD(fs_base_relids); + COPY_SCALAR_FIELD(fsSystemCol); + + return newnode; +} + +static CustomScan * +_copyCustomScan(const CustomScan *from) +{ + CustomScan *newnode = makeNode(CustomScan); + + COPY_SCALAR_FIELD(scan.plan.startup_cost); + COPY_SCALAR_FIELD(scan.plan.total_cost); + COPY_SCALAR_FIELD(scan.plan.plan_rows); + COPY_SCALAR_FIELD(scan.plan.plan_width); + COPY_SCALAR_FIELD(scan.plan.parallel_aware); + COPY_SCALAR_FIELD(scan.plan.parallel_safe); + COPY_SCALAR_FIELD(scan.plan.async_capable); + COPY_SCALAR_FIELD(scan.plan.plan_node_id); + COPY_NODE_FIELD(scan.plan.targetlist); + COPY_NODE_FIELD(scan.plan.qual); + COPY_NODE_FIELD(scan.plan.lefttree); + COPY_NODE_FIELD(scan.plan.righttree); + COPY_NODE_FIELD(scan.plan.initPlan); + COPY_BITMAPSET_FIELD(scan.plan.extParam); + COPY_BITMAPSET_FIELD(scan.plan.allParam); + COPY_SCALAR_FIELD(scan.scanrelid); + COPY_SCALAR_FIELD(flags); + COPY_NODE_FIELD(custom_plans); + COPY_NODE_FIELD(custom_exprs); + COPY_NODE_FIELD(custom_private); + COPY_NODE_FIELD(custom_scan_tlist); + COPY_BITMAPSET_FIELD(custom_relids); + COPY_SCALAR_FIELD(methods); + + return newnode; +} + +static NestLoop * +_copyNestLoop(const NestLoop *from) +{ + NestLoop *newnode = makeNode(NestLoop); + + COPY_SCALAR_FIELD(join.plan.startup_cost); + COPY_SCALAR_FIELD(join.plan.total_cost); + COPY_SCALAR_FIELD(join.plan.plan_rows); + COPY_SCALAR_FIELD(join.plan.plan_width); + COPY_SCALAR_FIELD(join.plan.parallel_aware); + COPY_SCALAR_FIELD(join.plan.parallel_safe); + COPY_SCALAR_FIELD(join.plan.async_capable); + COPY_SCALAR_FIELD(join.plan.plan_node_id); + COPY_NODE_FIELD(join.plan.targetlist); + COPY_NODE_FIELD(join.plan.qual); + COPY_NODE_FIELD(join.plan.lefttree); + COPY_NODE_FIELD(join.plan.righttree); + COPY_NODE_FIELD(join.plan.initPlan); + COPY_BITMAPSET_FIELD(join.plan.extParam); + COPY_BITMAPSET_FIELD(join.plan.allParam); + COPY_SCALAR_FIELD(join.jointype); + COPY_SCALAR_FIELD(join.inner_unique); + COPY_NODE_FIELD(join.joinqual); + COPY_NODE_FIELD(nestParams); + + return newnode; +} + +static NestLoopParam * +_copyNestLoopParam(const NestLoopParam *from) +{ + NestLoopParam *newnode = makeNode(NestLoopParam); + + COPY_SCALAR_FIELD(paramno); + COPY_NODE_FIELD(paramval); + + return newnode; +} + +static MergeJoin * +_copyMergeJoin(const MergeJoin *from) +{ + MergeJoin *newnode = makeNode(MergeJoin); + + COPY_SCALAR_FIELD(join.plan.startup_cost); + COPY_SCALAR_FIELD(join.plan.total_cost); + COPY_SCALAR_FIELD(join.plan.plan_rows); + COPY_SCALAR_FIELD(join.plan.plan_width); + COPY_SCALAR_FIELD(join.plan.parallel_aware); + COPY_SCALAR_FIELD(join.plan.parallel_safe); + COPY_SCALAR_FIELD(join.plan.async_capable); + COPY_SCALAR_FIELD(join.plan.plan_node_id); + COPY_NODE_FIELD(join.plan.targetlist); + COPY_NODE_FIELD(join.plan.qual); + COPY_NODE_FIELD(join.plan.lefttree); + COPY_NODE_FIELD(join.plan.righttree); + COPY_NODE_FIELD(join.plan.initPlan); + COPY_BITMAPSET_FIELD(join.plan.extParam); + COPY_BITMAPSET_FIELD(join.plan.allParam); + COPY_SCALAR_FIELD(join.jointype); + COPY_SCALAR_FIELD(join.inner_unique); + COPY_NODE_FIELD(join.joinqual); + COPY_SCALAR_FIELD(skip_mark_restore); + COPY_NODE_FIELD(mergeclauses); + COPY_POINTER_FIELD(mergeFamilies, list_length(from->mergeclauses) * sizeof(Oid)); + COPY_POINTER_FIELD(mergeCollations, list_length(from->mergeclauses) * sizeof(Oid)); + COPY_POINTER_FIELD(mergeStrategies, list_length(from->mergeclauses) * sizeof(int)); + COPY_POINTER_FIELD(mergeNullsFirst, list_length(from->mergeclauses) * sizeof(bool)); + + return newnode; +} + +static HashJoin * +_copyHashJoin(const HashJoin *from) +{ + HashJoin *newnode = makeNode(HashJoin); + + COPY_SCALAR_FIELD(join.plan.startup_cost); + COPY_SCALAR_FIELD(join.plan.total_cost); + COPY_SCALAR_FIELD(join.plan.plan_rows); + COPY_SCALAR_FIELD(join.plan.plan_width); + COPY_SCALAR_FIELD(join.plan.parallel_aware); + COPY_SCALAR_FIELD(join.plan.parallel_safe); + COPY_SCALAR_FIELD(join.plan.async_capable); + COPY_SCALAR_FIELD(join.plan.plan_node_id); + COPY_NODE_FIELD(join.plan.targetlist); + COPY_NODE_FIELD(join.plan.qual); + COPY_NODE_FIELD(join.plan.lefttree); + COPY_NODE_FIELD(join.plan.righttree); + COPY_NODE_FIELD(join.plan.initPlan); + COPY_BITMAPSET_FIELD(join.plan.extParam); + COPY_BITMAPSET_FIELD(join.plan.allParam); + COPY_SCALAR_FIELD(join.jointype); + COPY_SCALAR_FIELD(join.inner_unique); + COPY_NODE_FIELD(join.joinqual); + COPY_NODE_FIELD(hashclauses); + COPY_NODE_FIELD(hashoperators); + COPY_NODE_FIELD(hashcollations); + COPY_NODE_FIELD(hashkeys); + + return newnode; +} + +static Material * +_copyMaterial(const Material *from) +{ + Material *newnode = makeNode(Material); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + + return newnode; +} + +static Memoize * +_copyMemoize(const Memoize *from) +{ + Memoize *newnode = makeNode(Memoize); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(numKeys); + COPY_POINTER_FIELD(hashOperators, from->numKeys * sizeof(Oid)); + COPY_POINTER_FIELD(collations, from->numKeys * sizeof(Oid)); + COPY_NODE_FIELD(param_exprs); + COPY_SCALAR_FIELD(singlerow); + COPY_SCALAR_FIELD(binary_mode); + COPY_SCALAR_FIELD(est_entries); + COPY_BITMAPSET_FIELD(keyparamids); + + return newnode; +} + +static Sort * +_copySort(const Sort *from) +{ + Sort *newnode = makeNode(Sort); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(sortColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(sortOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(collations, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(nullsFirst, from->numCols * sizeof(bool)); + + return newnode; +} + +static IncrementalSort * +_copyIncrementalSort(const IncrementalSort *from) +{ + IncrementalSort *newnode = makeNode(IncrementalSort); + + COPY_SCALAR_FIELD(sort.plan.startup_cost); + COPY_SCALAR_FIELD(sort.plan.total_cost); + COPY_SCALAR_FIELD(sort.plan.plan_rows); + COPY_SCALAR_FIELD(sort.plan.plan_width); + COPY_SCALAR_FIELD(sort.plan.parallel_aware); + COPY_SCALAR_FIELD(sort.plan.parallel_safe); + COPY_SCALAR_FIELD(sort.plan.async_capable); + COPY_SCALAR_FIELD(sort.plan.plan_node_id); + COPY_NODE_FIELD(sort.plan.targetlist); + COPY_NODE_FIELD(sort.plan.qual); + COPY_NODE_FIELD(sort.plan.lefttree); + COPY_NODE_FIELD(sort.plan.righttree); + COPY_NODE_FIELD(sort.plan.initPlan); + COPY_BITMAPSET_FIELD(sort.plan.extParam); + COPY_BITMAPSET_FIELD(sort.plan.allParam); + COPY_SCALAR_FIELD(sort.numCols); + COPY_POINTER_FIELD(sort.sortColIdx, from->sort.numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(sort.sortOperators, from->sort.numCols * sizeof(Oid)); + COPY_POINTER_FIELD(sort.collations, from->sort.numCols * sizeof(Oid)); + COPY_POINTER_FIELD(sort.nullsFirst, from->sort.numCols * sizeof(bool)); + COPY_SCALAR_FIELD(nPresortedCols); + + return newnode; +} + +static Group * +_copyGroup(const Group *from) +{ + Group *newnode = makeNode(Group); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(grpColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(grpOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(grpCollations, from->numCols * sizeof(Oid)); + + return newnode; +} + +static Agg * +_copyAgg(const Agg *from) +{ + Agg *newnode = makeNode(Agg); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(aggstrategy); + COPY_SCALAR_FIELD(aggsplit); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(grpColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(grpOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(grpCollations, from->numCols * sizeof(Oid)); + COPY_SCALAR_FIELD(numGroups); + COPY_SCALAR_FIELD(transitionSpace); + COPY_BITMAPSET_FIELD(aggParams); + COPY_NODE_FIELD(groupingSets); + COPY_NODE_FIELD(chain); + + return newnode; +} + +static WindowAgg * +_copyWindowAgg(const WindowAgg *from) +{ + WindowAgg *newnode = makeNode(WindowAgg); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(winref); + COPY_SCALAR_FIELD(partNumCols); + COPY_POINTER_FIELD(partColIdx, from->partNumCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(partOperators, from->partNumCols * sizeof(Oid)); + COPY_POINTER_FIELD(partCollations, from->partNumCols * sizeof(Oid)); + COPY_SCALAR_FIELD(ordNumCols); + COPY_POINTER_FIELD(ordColIdx, from->ordNumCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(ordOperators, from->ordNumCols * sizeof(Oid)); + COPY_POINTER_FIELD(ordCollations, from->ordNumCols * sizeof(Oid)); + COPY_SCALAR_FIELD(frameOptions); + COPY_NODE_FIELD(startOffset); + COPY_NODE_FIELD(endOffset); + COPY_NODE_FIELD(runCondition); + COPY_NODE_FIELD(runConditionOrig); + COPY_SCALAR_FIELD(startInRangeFunc); + COPY_SCALAR_FIELD(endInRangeFunc); + COPY_SCALAR_FIELD(inRangeColl); + COPY_SCALAR_FIELD(inRangeAsc); + COPY_SCALAR_FIELD(inRangeNullsFirst); + COPY_SCALAR_FIELD(topWindow); + + return newnode; +} + +static Unique * +_copyUnique(const Unique *from) +{ + Unique *newnode = makeNode(Unique); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(uniqColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(uniqOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(uniqCollations, from->numCols * sizeof(Oid)); + + return newnode; +} + +static Gather * +_copyGather(const Gather *from) +{ + Gather *newnode = makeNode(Gather); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(num_workers); + COPY_SCALAR_FIELD(rescan_param); + COPY_SCALAR_FIELD(single_copy); + COPY_SCALAR_FIELD(invisible); + COPY_BITMAPSET_FIELD(initParam); + + return newnode; +} + +static GatherMerge * +_copyGatherMerge(const GatherMerge *from) +{ + GatherMerge *newnode = makeNode(GatherMerge); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(num_workers); + COPY_SCALAR_FIELD(rescan_param); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(sortColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(sortOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(collations, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(nullsFirst, from->numCols * sizeof(bool)); + COPY_BITMAPSET_FIELD(initParam); + + return newnode; +} + +static Hash * +_copyHash(const Hash *from) +{ + Hash *newnode = makeNode(Hash); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(hashkeys); + COPY_SCALAR_FIELD(skewTable); + COPY_SCALAR_FIELD(skewColumn); + COPY_SCALAR_FIELD(skewInherit); + COPY_SCALAR_FIELD(rows_total); + + return newnode; +} + +static SetOp * +_copySetOp(const SetOp *from) +{ + SetOp *newnode = makeNode(SetOp); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_SCALAR_FIELD(cmd); + COPY_SCALAR_FIELD(strategy); + COPY_SCALAR_FIELD(numCols); + COPY_POINTER_FIELD(dupColIdx, from->numCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(dupOperators, from->numCols * sizeof(Oid)); + COPY_POINTER_FIELD(dupCollations, from->numCols * sizeof(Oid)); + COPY_SCALAR_FIELD(flagColIdx); + COPY_SCALAR_FIELD(firstFlag); + COPY_SCALAR_FIELD(numGroups); + + return newnode; +} + +static LockRows * +_copyLockRows(const LockRows *from) +{ + LockRows *newnode = makeNode(LockRows); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(rowMarks); + COPY_SCALAR_FIELD(epqParam); + + return newnode; +} + +static Limit * +_copyLimit(const Limit *from) +{ + Limit *newnode = makeNode(Limit); + + COPY_SCALAR_FIELD(plan.startup_cost); + COPY_SCALAR_FIELD(plan.total_cost); + COPY_SCALAR_FIELD(plan.plan_rows); + COPY_SCALAR_FIELD(plan.plan_width); + COPY_SCALAR_FIELD(plan.parallel_aware); + COPY_SCALAR_FIELD(plan.parallel_safe); + COPY_SCALAR_FIELD(plan.async_capable); + COPY_SCALAR_FIELD(plan.plan_node_id); + COPY_NODE_FIELD(plan.targetlist); + COPY_NODE_FIELD(plan.qual); + COPY_NODE_FIELD(plan.lefttree); + COPY_NODE_FIELD(plan.righttree); + COPY_NODE_FIELD(plan.initPlan); + COPY_BITMAPSET_FIELD(plan.extParam); + COPY_BITMAPSET_FIELD(plan.allParam); + COPY_NODE_FIELD(limitOffset); + COPY_NODE_FIELD(limitCount); + COPY_SCALAR_FIELD(limitOption); + COPY_SCALAR_FIELD(uniqNumCols); + COPY_POINTER_FIELD(uniqColIdx, from->uniqNumCols * sizeof(AttrNumber)); + COPY_POINTER_FIELD(uniqOperators, from->uniqNumCols * sizeof(Oid)); + COPY_POINTER_FIELD(uniqCollations, from->uniqNumCols * sizeof(Oid)); + + return newnode; +} + +static PlanRowMark * +_copyPlanRowMark(const PlanRowMark *from) +{ + PlanRowMark *newnode = makeNode(PlanRowMark); + + COPY_SCALAR_FIELD(rti); + COPY_SCALAR_FIELD(prti); + COPY_SCALAR_FIELD(rowmarkId); + COPY_SCALAR_FIELD(markType); + COPY_SCALAR_FIELD(allMarkTypes); + COPY_SCALAR_FIELD(strength); + COPY_SCALAR_FIELD(waitPolicy); + COPY_SCALAR_FIELD(isParent); + + return newnode; +} + +static PartitionPruneInfo * +_copyPartitionPruneInfo(const PartitionPruneInfo *from) +{ + PartitionPruneInfo *newnode = makeNode(PartitionPruneInfo); + + COPY_NODE_FIELD(prune_infos); + COPY_BITMAPSET_FIELD(other_subplans); + + return newnode; +} + +static PartitionedRelPruneInfo * +_copyPartitionedRelPruneInfo(const PartitionedRelPruneInfo *from) +{ + PartitionedRelPruneInfo *newnode = makeNode(PartitionedRelPruneInfo); + + COPY_SCALAR_FIELD(rtindex); + COPY_BITMAPSET_FIELD(present_parts); + COPY_SCALAR_FIELD(nparts); + COPY_POINTER_FIELD(subplan_map, from->nparts * sizeof(int)); + COPY_POINTER_FIELD(subpart_map, from->nparts * sizeof(int)); + COPY_POINTER_FIELD(relid_map, from->nparts * sizeof(Oid)); + COPY_NODE_FIELD(initial_pruning_steps); + COPY_NODE_FIELD(exec_pruning_steps); + COPY_BITMAPSET_FIELD(execparamids); + + return newnode; +} + +static PartitionPruneStepOp * +_copyPartitionPruneStepOp(const PartitionPruneStepOp *from) +{ + PartitionPruneStepOp *newnode = makeNode(PartitionPruneStepOp); + + COPY_SCALAR_FIELD(step.step_id); + COPY_SCALAR_FIELD(opstrategy); + COPY_NODE_FIELD(exprs); + COPY_NODE_FIELD(cmpfns); + COPY_BITMAPSET_FIELD(nullkeys); + + return newnode; +} + +static PartitionPruneStepCombine * +_copyPartitionPruneStepCombine(const PartitionPruneStepCombine *from) +{ + PartitionPruneStepCombine *newnode = makeNode(PartitionPruneStepCombine); + + COPY_SCALAR_FIELD(step.step_id); + COPY_SCALAR_FIELD(combineOp); + COPY_NODE_FIELD(source_stepids); + + return newnode; +} + +static PlanInvalItem * +_copyPlanInvalItem(const PlanInvalItem *from) +{ + PlanInvalItem *newnode = makeNode(PlanInvalItem); + + COPY_SCALAR_FIELD(cacheId); + COPY_SCALAR_FIELD(hashValue); + + return newnode; +} + +static Integer * +_copyInteger(const Integer *from) +{ + Integer *newnode = makeNode(Integer); + + COPY_SCALAR_FIELD(ival); + + return newnode; +} + +static Float * +_copyFloat(const Float *from) +{ + Float *newnode = makeNode(Float); + + COPY_STRING_FIELD(fval); + + return newnode; +} + +static Boolean * +_copyBoolean(const Boolean *from) +{ + Boolean *newnode = makeNode(Boolean); + + COPY_SCALAR_FIELD(boolval); + + return newnode; +} + +static String * +_copyString(const String *from) +{ + String *newnode = makeNode(String); + + COPY_STRING_FIELD(sval); + + return newnode; +} + +static BitString * +_copyBitString(const BitString *from) +{ + BitString *newnode = makeNode(BitString); + + COPY_STRING_FIELD(bsval); + + return newnode; +} + +static ForeignKeyCacheInfo * +_copyForeignKeyCacheInfo(const ForeignKeyCacheInfo *from) +{ + ForeignKeyCacheInfo *newnode = makeNode(ForeignKeyCacheInfo); + + COPY_SCALAR_FIELD(conoid); + COPY_SCALAR_FIELD(conrelid); + COPY_SCALAR_FIELD(confrelid); + COPY_SCALAR_FIELD(nkeys); + COPY_ARRAY_FIELD(conkey); + COPY_ARRAY_FIELD(confkey); + COPY_ARRAY_FIELD(conpfeqop); + + return newnode; +} diff --git a/parser/include/src_backend_nodes_equalfuncs.funcs.c b/parser/include/src_backend_nodes_equalfuncs.funcs.c new file mode 100644 index 00000000..f0fdb85f --- /dev/null +++ b/parser/include/src_backend_nodes_equalfuncs.funcs.c @@ -0,0 +1,3354 @@ +/*-------------------------------------------------------------------- + * Symbols referenced in this file: + * - _equalAlias + * - _equalRangeVar + * - _equalTableFunc + * - _equalIntoClause + * - _equalVar + * - _equalParam + * - _equalAggref + * - _equalGroupingFunc + * - _equalWindowFunc + * - _equalSubscriptingRef + * - _equalFuncExpr + * - _equalNamedArgExpr + * - _equalOpExpr + * - _equalDistinctExpr + * - _equalNullIfExpr + * - _equalScalarArrayOpExpr + * - _equalBoolExpr + * - _equalSubLink + * - _equalSubPlan + * - _equalAlternativeSubPlan + * - _equalFieldSelect + * - _equalFieldStore + * - _equalRelabelType + * - _equalCoerceViaIO + * - _equalArrayCoerceExpr + * - _equalConvertRowtypeExpr + * - _equalCollateExpr + * - _equalCaseExpr + * - _equalCaseWhen + * - _equalCaseTestExpr + * - _equalArrayExpr + * - _equalRowExpr + * - _equalRowCompareExpr + * - _equalCoalesceExpr + * - _equalMinMaxExpr + * - _equalSQLValueFunction + * - _equalXmlExpr + * - _equalJsonFormat + * - _equalJsonReturning + * - _equalJsonValueExpr + * - _equalJsonConstructorExpr + * - _equalJsonIsPredicate + * - _equalNullTest + * - _equalBooleanTest + * - _equalCoerceToDomain + * - _equalCoerceToDomainValue + * - _equalSetToDefault + * - _equalCurrentOfExpr + * - _equalNextValueExpr + * - _equalInferenceElem + * - _equalTargetEntry + * - _equalRangeTblRef + * - _equalJoinExpr + * - _equalFromExpr + * - _equalOnConflictExpr + * - _equalQuery + * - _equalTypeName + * - _equalColumnRef + * - _equalParamRef + * - _equalA_Expr + * - _equalTypeCast + * - _equalCollateClause + * - _equalRoleSpec + * - _equalFuncCall + * - _equalA_Star + * - _equalA_Indices + * - _equalA_Indirection + * - _equalA_ArrayExpr + * - _equalResTarget + * - _equalMultiAssignRef + * - _equalSortBy + * - _equalWindowDef + * - _equalRangeSubselect + * - _equalRangeFunction + * - _equalRangeTableFunc + * - _equalRangeTableFuncCol + * - _equalRangeTableSample + * - _equalColumnDef + * - _equalTableLikeClause + * - _equalIndexElem + * - _equalDefElem + * - _equalLockingClause + * - _equalXmlSerialize + * - _equalPartitionElem + * - _equalPartitionSpec + * - _equalPartitionBoundSpec + * - _equalPartitionRangeDatum + * - _equalPartitionCmd + * - _equalRangeTblEntry + * - _equalRTEPermissionInfo + * - _equalRangeTblFunction + * - _equalTableSampleClause + * - _equalWithCheckOption + * - _equalSortGroupClause + * - _equalGroupingSet + * - _equalWindowClause + * - _equalRowMarkClause + * - _equalWithClause + * - _equalInferClause + * - _equalOnConflictClause + * - _equalCTESearchClause + * - _equalCTECycleClause + * - _equalCommonTableExpr + * - _equalMergeWhenClause + * - _equalMergeAction + * - _equalTriggerTransition + * - _equalJsonOutput + * - _equalJsonKeyValue + * - _equalJsonObjectConstructor + * - _equalJsonArrayConstructor + * - _equalJsonArrayQueryConstructor + * - _equalJsonAggConstructor + * - _equalJsonObjectAgg + * - _equalJsonArrayAgg + * - _equalRawStmt + * - _equalInsertStmt + * - _equalDeleteStmt + * - _equalUpdateStmt + * - _equalMergeStmt + * - _equalSelectStmt + * - _equalSetOperationStmt + * - _equalReturnStmt + * - _equalPLAssignStmt + * - _equalCreateSchemaStmt + * - _equalAlterTableStmt + * - _equalReplicaIdentityStmt + * - _equalAlterTableCmd + * - _equalAlterCollationStmt + * - _equalAlterDomainStmt + * - _equalGrantStmt + * - _equalObjectWithArgs + * - _equalAccessPriv + * - _equalGrantRoleStmt + * - _equalAlterDefaultPrivilegesStmt + * - _equalCopyStmt + * - _equalVariableSetStmt + * - _equalVariableShowStmt + * - _equalCreateStmt + * - _equalConstraint + * - _equalCreateTableSpaceStmt + * - _equalDropTableSpaceStmt + * - _equalAlterTableSpaceOptionsStmt + * - _equalAlterTableMoveAllStmt + * - _equalCreateExtensionStmt + * - _equalAlterExtensionStmt + * - _equalAlterExtensionContentsStmt + * - _equalCreateFdwStmt + * - _equalAlterFdwStmt + * - _equalCreateForeignServerStmt + * - _equalAlterForeignServerStmt + * - _equalCreateForeignTableStmt + * - _equalCreateUserMappingStmt + * - _equalAlterUserMappingStmt + * - _equalDropUserMappingStmt + * - _equalImportForeignSchemaStmt + * - _equalCreatePolicyStmt + * - _equalAlterPolicyStmt + * - _equalCreateAmStmt + * - _equalCreateTrigStmt + * - _equalCreateEventTrigStmt + * - _equalAlterEventTrigStmt + * - _equalCreatePLangStmt + * - _equalCreateRoleStmt + * - _equalAlterRoleStmt + * - _equalAlterRoleSetStmt + * - _equalDropRoleStmt + * - _equalCreateSeqStmt + * - _equalAlterSeqStmt + * - _equalDefineStmt + * - _equalCreateDomainStmt + * - _equalCreateOpClassStmt + * - _equalCreateOpClassItem + * - _equalCreateOpFamilyStmt + * - _equalAlterOpFamilyStmt + * - _equalDropStmt + * - _equalTruncateStmt + * - _equalCommentStmt + * - _equalSecLabelStmt + * - _equalDeclareCursorStmt + * - _equalClosePortalStmt + * - _equalFetchStmt + * - _equalIndexStmt + * - _equalCreateStatsStmt + * - _equalStatsElem + * - _equalAlterStatsStmt + * - _equalCreateFunctionStmt + * - _equalFunctionParameter + * - _equalAlterFunctionStmt + * - _equalDoStmt + * - _equalCallStmt + * - _equalRenameStmt + * - _equalAlterObjectDependsStmt + * - _equalAlterObjectSchemaStmt + * - _equalAlterOwnerStmt + * - _equalAlterOperatorStmt + * - _equalAlterTypeStmt + * - _equalRuleStmt + * - _equalNotifyStmt + * - _equalListenStmt + * - _equalUnlistenStmt + * - _equalTransactionStmt + * - _equalCompositeTypeStmt + * - _equalCreateEnumStmt + * - _equalCreateRangeStmt + * - _equalAlterEnumStmt + * - _equalViewStmt + * - _equalLoadStmt + * - _equalCreatedbStmt + * - _equalAlterDatabaseStmt + * - _equalAlterDatabaseRefreshCollStmt + * - _equalAlterDatabaseSetStmt + * - _equalDropdbStmt + * - _equalAlterSystemStmt + * - _equalClusterStmt + * - _equalVacuumStmt + * - _equalVacuumRelation + * - _equalExplainStmt + * - _equalCreateTableAsStmt + * - _equalRefreshMatViewStmt + * - _equalCheckPointStmt + * - _equalDiscardStmt + * - _equalLockStmt + * - _equalConstraintsSetStmt + * - _equalReindexStmt + * - _equalCreateConversionStmt + * - _equalCreateCastStmt + * - _equalCreateTransformStmt + * - _equalPrepareStmt + * - _equalExecuteStmt + * - _equalDeallocateStmt + * - _equalDropOwnedStmt + * - _equalReassignOwnedStmt + * - _equalAlterTSDictionaryStmt + * - _equalAlterTSConfigurationStmt + * - _equalPublicationTable + * - _equalPublicationObjSpec + * - _equalCreatePublicationStmt + * - _equalAlterPublicationStmt + * - _equalCreateSubscriptionStmt + * - _equalAlterSubscriptionStmt + * - _equalDropSubscriptionStmt + * - _equalPathKey + * - _equalRestrictInfo + * - _equalPlaceHolderVar + * - _equalSpecialJoinInfo + * - _equalAppendRelInfo + * - _equalPlaceHolderInfo + * - _equalInteger + * - _equalFloat + * - _equalBoolean + * - _equalString + * - _equalBitString + *-------------------------------------------------------------------- + */ + +/*------------------------------------------------------------------------- + * + * equalfuncs.funcs.c + * Generated node infrastructure code + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * NOTES + * ****************************** + * *** DO NOT EDIT THIS FILE! *** + * ****************************** + * + * It has been GENERATED by src/backend/nodes/gen_node_support.pl + * + *------------------------------------------------------------------------- + */ +#include "access/amapi.h" +#include "access/sdir.h" +#include "access/tableam.h" +#include "access/tsmapi.h" +#include "commands/event_trigger.h" +#include "commands/trigger.h" +#include "executor/tuptable.h" +#include "foreign/fdwapi.h" +#include "nodes/bitmapset.h" +#include "nodes/execnodes.h" +#include "nodes/extensible.h" +#include "nodes/lockoptions.h" +#include "nodes/miscnodes.h" +#include "nodes/nodes.h" +#include "nodes/parsenodes.h" +#include "nodes/pathnodes.h" +#include "nodes/plannodes.h" +#include "nodes/primnodes.h" +#include "nodes/replnodes.h" +#include "nodes/supportnodes.h" +#include "nodes/value.h" +#include "utils/rel.h" + +static bool +_equalAlias(const Alias *a, const Alias *b) +{ + COMPARE_STRING_FIELD(aliasname); + COMPARE_NODE_FIELD(colnames); + + return true; +} + +static bool +_equalRangeVar(const RangeVar *a, const RangeVar *b) +{ + COMPARE_STRING_FIELD(catalogname); + COMPARE_STRING_FIELD(schemaname); + COMPARE_STRING_FIELD(relname); + COMPARE_SCALAR_FIELD(inh); + COMPARE_SCALAR_FIELD(relpersistence); + COMPARE_NODE_FIELD(alias); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalTableFunc(const TableFunc *a, const TableFunc *b) +{ + COMPARE_NODE_FIELD(ns_uris); + COMPARE_NODE_FIELD(ns_names); + COMPARE_NODE_FIELD(docexpr); + COMPARE_NODE_FIELD(rowexpr); + COMPARE_NODE_FIELD(colnames); + COMPARE_NODE_FIELD(coltypes); + COMPARE_NODE_FIELD(coltypmods); + COMPARE_NODE_FIELD(colcollations); + COMPARE_NODE_FIELD(colexprs); + COMPARE_NODE_FIELD(coldefexprs); + COMPARE_BITMAPSET_FIELD(notnulls); + COMPARE_SCALAR_FIELD(ordinalitycol); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalIntoClause(const IntoClause *a, const IntoClause *b) +{ + COMPARE_NODE_FIELD(rel); + COMPARE_NODE_FIELD(colNames); + COMPARE_STRING_FIELD(accessMethod); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(onCommit); + COMPARE_STRING_FIELD(tableSpaceName); + COMPARE_NODE_FIELD(viewQuery); + COMPARE_SCALAR_FIELD(skipData); + + return true; +} + +static bool +_equalVar(const Var *a, const Var *b) +{ + COMPARE_SCALAR_FIELD(varno); + COMPARE_SCALAR_FIELD(varattno); + COMPARE_SCALAR_FIELD(vartype); + COMPARE_SCALAR_FIELD(vartypmod); + COMPARE_SCALAR_FIELD(varcollid); + COMPARE_BITMAPSET_FIELD(varnullingrels); + COMPARE_SCALAR_FIELD(varlevelsup); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalParam(const Param *a, const Param *b) +{ + COMPARE_SCALAR_FIELD(paramkind); + COMPARE_SCALAR_FIELD(paramid); + COMPARE_SCALAR_FIELD(paramtype); + COMPARE_SCALAR_FIELD(paramtypmod); + COMPARE_SCALAR_FIELD(paramcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalAggref(const Aggref *a, const Aggref *b) +{ + COMPARE_SCALAR_FIELD(aggfnoid); + COMPARE_SCALAR_FIELD(aggtype); + COMPARE_SCALAR_FIELD(aggcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(aggargtypes); + COMPARE_NODE_FIELD(aggdirectargs); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(aggorder); + COMPARE_NODE_FIELD(aggdistinct); + COMPARE_NODE_FIELD(aggfilter); + COMPARE_SCALAR_FIELD(aggstar); + COMPARE_SCALAR_FIELD(aggvariadic); + COMPARE_SCALAR_FIELD(aggkind); + COMPARE_SCALAR_FIELD(agglevelsup); + COMPARE_SCALAR_FIELD(aggsplit); + COMPARE_SCALAR_FIELD(aggno); + COMPARE_SCALAR_FIELD(aggtransno); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalGroupingFunc(const GroupingFunc *a, const GroupingFunc *b) +{ + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(agglevelsup); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalWindowFunc(const WindowFunc *a, const WindowFunc *b) +{ + COMPARE_SCALAR_FIELD(winfnoid); + COMPARE_SCALAR_FIELD(wintype); + COMPARE_SCALAR_FIELD(wincollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(aggfilter); + COMPARE_SCALAR_FIELD(winref); + COMPARE_SCALAR_FIELD(winstar); + COMPARE_SCALAR_FIELD(winagg); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSubscriptingRef(const SubscriptingRef *a, const SubscriptingRef *b) +{ + COMPARE_SCALAR_FIELD(refcontainertype); + COMPARE_SCALAR_FIELD(refelemtype); + COMPARE_SCALAR_FIELD(refrestype); + COMPARE_SCALAR_FIELD(reftypmod); + COMPARE_SCALAR_FIELD(refcollid); + COMPARE_NODE_FIELD(refupperindexpr); + COMPARE_NODE_FIELD(reflowerindexpr); + COMPARE_NODE_FIELD(refexpr); + COMPARE_NODE_FIELD(refassgnexpr); + + return true; +} + +static bool +_equalFuncExpr(const FuncExpr *a, const FuncExpr *b) +{ + COMPARE_SCALAR_FIELD(funcid); + COMPARE_SCALAR_FIELD(funcresulttype); + COMPARE_SCALAR_FIELD(funcretset); + COMPARE_SCALAR_FIELD(funcvariadic); + COMPARE_SCALAR_FIELD(funccollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalNamedArgExpr(const NamedArgExpr *a, const NamedArgExpr *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_STRING_FIELD(name); + COMPARE_SCALAR_FIELD(argnumber); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalOpExpr(const OpExpr *a, const OpExpr *b) +{ + COMPARE_SCALAR_FIELD(opno); + if (a->opfuncid != b->opfuncid && a->opfuncid != 0 && b->opfuncid != 0) + return false; + COMPARE_SCALAR_FIELD(opresulttype); + COMPARE_SCALAR_FIELD(opretset); + COMPARE_SCALAR_FIELD(opcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalDistinctExpr(const DistinctExpr *a, const DistinctExpr *b) +{ + COMPARE_SCALAR_FIELD(opno); + if (a->opfuncid != b->opfuncid && a->opfuncid != 0 && b->opfuncid != 0) + return false; + COMPARE_SCALAR_FIELD(opresulttype); + COMPARE_SCALAR_FIELD(opretset); + COMPARE_SCALAR_FIELD(opcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalNullIfExpr(const NullIfExpr *a, const NullIfExpr *b) +{ + COMPARE_SCALAR_FIELD(opno); + if (a->opfuncid != b->opfuncid && a->opfuncid != 0 && b->opfuncid != 0) + return false; + COMPARE_SCALAR_FIELD(opresulttype); + COMPARE_SCALAR_FIELD(opretset); + COMPARE_SCALAR_FIELD(opcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalScalarArrayOpExpr(const ScalarArrayOpExpr *a, const ScalarArrayOpExpr *b) +{ + COMPARE_SCALAR_FIELD(opno); + if (a->opfuncid != b->opfuncid && a->opfuncid != 0 && b->opfuncid != 0) + return false; + if (a->hashfuncid != b->hashfuncid && a->hashfuncid != 0 && b->hashfuncid != 0) + return false; + if (a->negfuncid != b->negfuncid && a->negfuncid != 0 && b->negfuncid != 0) + return false; + COMPARE_SCALAR_FIELD(useOr); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalBoolExpr(const BoolExpr *a, const BoolExpr *b) +{ + COMPARE_SCALAR_FIELD(boolop); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSubLink(const SubLink *a, const SubLink *b) +{ + COMPARE_SCALAR_FIELD(subLinkType); + COMPARE_SCALAR_FIELD(subLinkId); + COMPARE_NODE_FIELD(testexpr); + COMPARE_NODE_FIELD(operName); + COMPARE_NODE_FIELD(subselect); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSubPlan(const SubPlan *a, const SubPlan *b) +{ + COMPARE_SCALAR_FIELD(subLinkType); + COMPARE_NODE_FIELD(testexpr); + COMPARE_NODE_FIELD(paramIds); + COMPARE_SCALAR_FIELD(plan_id); + COMPARE_STRING_FIELD(plan_name); + COMPARE_SCALAR_FIELD(firstColType); + COMPARE_SCALAR_FIELD(firstColTypmod); + COMPARE_SCALAR_FIELD(firstColCollation); + COMPARE_SCALAR_FIELD(useHashTable); + COMPARE_SCALAR_FIELD(unknownEqFalse); + COMPARE_SCALAR_FIELD(parallel_safe); + COMPARE_NODE_FIELD(setParam); + COMPARE_NODE_FIELD(parParam); + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(startup_cost); + COMPARE_SCALAR_FIELD(per_call_cost); + + return true; +} + +static bool +_equalAlternativeSubPlan(const AlternativeSubPlan *a, const AlternativeSubPlan *b) +{ + COMPARE_NODE_FIELD(subplans); + + return true; +} + +static bool +_equalFieldSelect(const FieldSelect *a, const FieldSelect *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(fieldnum); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resulttypmod); + COMPARE_SCALAR_FIELD(resultcollid); + + return true; +} + +static bool +_equalFieldStore(const FieldStore *a, const FieldStore *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(newvals); + COMPARE_NODE_FIELD(fieldnums); + COMPARE_SCALAR_FIELD(resulttype); + + return true; +} + +static bool +_equalRelabelType(const RelabelType *a, const RelabelType *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resulttypmod); + COMPARE_SCALAR_FIELD(resultcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCoerceViaIO(const CoerceViaIO *a, const CoerceViaIO *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resultcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalArrayCoerceExpr(const ArrayCoerceExpr *a, const ArrayCoerceExpr *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(elemexpr); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resulttypmod); + COMPARE_SCALAR_FIELD(resultcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalConvertRowtypeExpr(const ConvertRowtypeExpr *a, const ConvertRowtypeExpr *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCollateExpr(const CollateExpr *a, const CollateExpr *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(collOid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCaseExpr(const CaseExpr *a, const CaseExpr *b) +{ + COMPARE_SCALAR_FIELD(casetype); + COMPARE_SCALAR_FIELD(casecollid); + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(defresult); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCaseWhen(const CaseWhen *a, const CaseWhen *b) +{ + COMPARE_NODE_FIELD(expr); + COMPARE_NODE_FIELD(result); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCaseTestExpr(const CaseTestExpr *a, const CaseTestExpr *b) +{ + COMPARE_SCALAR_FIELD(typeId); + COMPARE_SCALAR_FIELD(typeMod); + COMPARE_SCALAR_FIELD(collation); + + return true; +} + +static bool +_equalArrayExpr(const ArrayExpr *a, const ArrayExpr *b) +{ + COMPARE_SCALAR_FIELD(array_typeid); + COMPARE_SCALAR_FIELD(array_collid); + COMPARE_SCALAR_FIELD(element_typeid); + COMPARE_NODE_FIELD(elements); + COMPARE_SCALAR_FIELD(multidims); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRowExpr(const RowExpr *a, const RowExpr *b) +{ + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(row_typeid); + COMPARE_NODE_FIELD(colnames); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRowCompareExpr(const RowCompareExpr *a, const RowCompareExpr *b) +{ + COMPARE_SCALAR_FIELD(rctype); + COMPARE_NODE_FIELD(opnos); + COMPARE_NODE_FIELD(opfamilies); + COMPARE_NODE_FIELD(inputcollids); + COMPARE_NODE_FIELD(largs); + COMPARE_NODE_FIELD(rargs); + + return true; +} + +static bool +_equalCoalesceExpr(const CoalesceExpr *a, const CoalesceExpr *b) +{ + COMPARE_SCALAR_FIELD(coalescetype); + COMPARE_SCALAR_FIELD(coalescecollid); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalMinMaxExpr(const MinMaxExpr *a, const MinMaxExpr *b) +{ + COMPARE_SCALAR_FIELD(minmaxtype); + COMPARE_SCALAR_FIELD(minmaxcollid); + COMPARE_SCALAR_FIELD(inputcollid); + COMPARE_SCALAR_FIELD(op); + COMPARE_NODE_FIELD(args); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSQLValueFunction(const SQLValueFunction *a, const SQLValueFunction *b) +{ + COMPARE_SCALAR_FIELD(op); + COMPARE_SCALAR_FIELD(type); + COMPARE_SCALAR_FIELD(typmod); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalXmlExpr(const XmlExpr *a, const XmlExpr *b) +{ + COMPARE_SCALAR_FIELD(op); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(named_args); + COMPARE_NODE_FIELD(arg_names); + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(xmloption); + COMPARE_SCALAR_FIELD(indent); + COMPARE_SCALAR_FIELD(type); + COMPARE_SCALAR_FIELD(typmod); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonFormat(const JsonFormat *a, const JsonFormat *b) +{ + COMPARE_SCALAR_FIELD(format_type); + COMPARE_SCALAR_FIELD(encoding); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonReturning(const JsonReturning *a, const JsonReturning *b) +{ + COMPARE_NODE_FIELD(format); + COMPARE_SCALAR_FIELD(typid); + COMPARE_SCALAR_FIELD(typmod); + + return true; +} + +static bool +_equalJsonValueExpr(const JsonValueExpr *a, const JsonValueExpr *b) +{ + COMPARE_NODE_FIELD(raw_expr); + COMPARE_NODE_FIELD(formatted_expr); + COMPARE_NODE_FIELD(format); + + return true; +} + +static bool +_equalJsonConstructorExpr(const JsonConstructorExpr *a, const JsonConstructorExpr *b) +{ + COMPARE_SCALAR_FIELD(type); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(func); + COMPARE_NODE_FIELD(coercion); + COMPARE_NODE_FIELD(returning); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_SCALAR_FIELD(unique); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonIsPredicate(const JsonIsPredicate *a, const JsonIsPredicate *b) +{ + COMPARE_NODE_FIELD(expr); + COMPARE_NODE_FIELD(format); + COMPARE_SCALAR_FIELD(item_type); + COMPARE_SCALAR_FIELD(unique_keys); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalNullTest(const NullTest *a, const NullTest *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(nulltesttype); + COMPARE_SCALAR_FIELD(argisrow); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalBooleanTest(const BooleanTest *a, const BooleanTest *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(booltesttype); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCoerceToDomain(const CoerceToDomain *a, const CoerceToDomain *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(resulttype); + COMPARE_SCALAR_FIELD(resulttypmod); + COMPARE_SCALAR_FIELD(resultcollid); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCoerceToDomainValue(const CoerceToDomainValue *a, const CoerceToDomainValue *b) +{ + COMPARE_SCALAR_FIELD(typeId); + COMPARE_SCALAR_FIELD(typeMod); + COMPARE_SCALAR_FIELD(collation); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalSetToDefault(const SetToDefault *a, const SetToDefault *b) +{ + COMPARE_SCALAR_FIELD(typeId); + COMPARE_SCALAR_FIELD(typeMod); + COMPARE_SCALAR_FIELD(collation); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCurrentOfExpr(const CurrentOfExpr *a, const CurrentOfExpr *b) +{ + COMPARE_SCALAR_FIELD(cvarno); + COMPARE_STRING_FIELD(cursor_name); + COMPARE_SCALAR_FIELD(cursor_param); + + return true; +} + +static bool +_equalNextValueExpr(const NextValueExpr *a, const NextValueExpr *b) +{ + COMPARE_SCALAR_FIELD(seqid); + COMPARE_SCALAR_FIELD(typeId); + + return true; +} + +static bool +_equalInferenceElem(const InferenceElem *a, const InferenceElem *b) +{ + COMPARE_NODE_FIELD(expr); + COMPARE_SCALAR_FIELD(infercollid); + COMPARE_SCALAR_FIELD(inferopclass); + + return true; +} + +static bool +_equalTargetEntry(const TargetEntry *a, const TargetEntry *b) +{ + COMPARE_NODE_FIELD(expr); + COMPARE_SCALAR_FIELD(resno); + COMPARE_STRING_FIELD(resname); + COMPARE_SCALAR_FIELD(ressortgroupref); + COMPARE_SCALAR_FIELD(resorigtbl); + COMPARE_SCALAR_FIELD(resorigcol); + COMPARE_SCALAR_FIELD(resjunk); + + return true; +} + +static bool +_equalRangeTblRef(const RangeTblRef *a, const RangeTblRef *b) +{ + COMPARE_SCALAR_FIELD(rtindex); + + return true; +} + +static bool +_equalJoinExpr(const JoinExpr *a, const JoinExpr *b) +{ + COMPARE_SCALAR_FIELD(jointype); + COMPARE_SCALAR_FIELD(isNatural); + COMPARE_NODE_FIELD(larg); + COMPARE_NODE_FIELD(rarg); + COMPARE_NODE_FIELD(usingClause); + COMPARE_NODE_FIELD(join_using_alias); + COMPARE_NODE_FIELD(quals); + COMPARE_NODE_FIELD(alias); + COMPARE_SCALAR_FIELD(rtindex); + + return true; +} + +static bool +_equalFromExpr(const FromExpr *a, const FromExpr *b) +{ + COMPARE_NODE_FIELD(fromlist); + COMPARE_NODE_FIELD(quals); + + return true; +} + +static bool +_equalOnConflictExpr(const OnConflictExpr *a, const OnConflictExpr *b) +{ + COMPARE_SCALAR_FIELD(action); + COMPARE_NODE_FIELD(arbiterElems); + COMPARE_NODE_FIELD(arbiterWhere); + COMPARE_SCALAR_FIELD(constraint); + COMPARE_NODE_FIELD(onConflictSet); + COMPARE_NODE_FIELD(onConflictWhere); + COMPARE_SCALAR_FIELD(exclRelIndex); + COMPARE_NODE_FIELD(exclRelTlist); + + return true; +} + +static bool +_equalQuery(const Query *a, const Query *b) +{ + COMPARE_SCALAR_FIELD(commandType); + COMPARE_SCALAR_FIELD(querySource); + COMPARE_SCALAR_FIELD(canSetTag); + COMPARE_NODE_FIELD(utilityStmt); + COMPARE_SCALAR_FIELD(resultRelation); + COMPARE_SCALAR_FIELD(hasAggs); + COMPARE_SCALAR_FIELD(hasWindowFuncs); + COMPARE_SCALAR_FIELD(hasTargetSRFs); + COMPARE_SCALAR_FIELD(hasSubLinks); + COMPARE_SCALAR_FIELD(hasDistinctOn); + COMPARE_SCALAR_FIELD(hasRecursive); + COMPARE_SCALAR_FIELD(hasModifyingCTE); + COMPARE_SCALAR_FIELD(hasForUpdate); + COMPARE_SCALAR_FIELD(hasRowSecurity); + COMPARE_SCALAR_FIELD(isReturn); + COMPARE_NODE_FIELD(cteList); + COMPARE_NODE_FIELD(rtable); + COMPARE_NODE_FIELD(rteperminfos); + COMPARE_NODE_FIELD(jointree); + COMPARE_NODE_FIELD(mergeActionList); + COMPARE_SCALAR_FIELD(mergeUseOuterJoin); + COMPARE_NODE_FIELD(targetList); + COMPARE_SCALAR_FIELD(override); + COMPARE_NODE_FIELD(onConflict); + COMPARE_NODE_FIELD(returningList); + COMPARE_NODE_FIELD(groupClause); + COMPARE_SCALAR_FIELD(groupDistinct); + COMPARE_NODE_FIELD(groupingSets); + COMPARE_NODE_FIELD(havingQual); + COMPARE_NODE_FIELD(windowClause); + COMPARE_NODE_FIELD(distinctClause); + COMPARE_NODE_FIELD(sortClause); + COMPARE_NODE_FIELD(limitOffset); + COMPARE_NODE_FIELD(limitCount); + COMPARE_SCALAR_FIELD(limitOption); + COMPARE_NODE_FIELD(rowMarks); + COMPARE_NODE_FIELD(setOperations); + COMPARE_NODE_FIELD(constraintDeps); + COMPARE_NODE_FIELD(withCheckOptions); + COMPARE_LOCATION_FIELD(stmt_location); + COMPARE_SCALAR_FIELD(stmt_len); + + return true; +} + +static bool +_equalTypeName(const TypeName *a, const TypeName *b) +{ + COMPARE_NODE_FIELD(names); + COMPARE_SCALAR_FIELD(typeOid); + COMPARE_SCALAR_FIELD(setof); + COMPARE_SCALAR_FIELD(pct_type); + COMPARE_NODE_FIELD(typmods); + COMPARE_SCALAR_FIELD(typemod); + COMPARE_NODE_FIELD(arrayBounds); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalColumnRef(const ColumnRef *a, const ColumnRef *b) +{ + COMPARE_NODE_FIELD(fields); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalParamRef(const ParamRef *a, const ParamRef *b) +{ + COMPARE_SCALAR_FIELD(number); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalA_Expr(const A_Expr *a, const A_Expr *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(name); + COMPARE_NODE_FIELD(lexpr); + COMPARE_NODE_FIELD(rexpr); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalTypeCast(const TypeCast *a, const TypeCast *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(typeName); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCollateClause(const CollateClause *a, const CollateClause *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(collname); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRoleSpec(const RoleSpec *a, const RoleSpec *b) +{ + COMPARE_SCALAR_FIELD(roletype); + COMPARE_STRING_FIELD(rolename); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalFuncCall(const FuncCall *a, const FuncCall *b) +{ + COMPARE_NODE_FIELD(funcname); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(agg_order); + COMPARE_NODE_FIELD(agg_filter); + COMPARE_NODE_FIELD(over); + COMPARE_SCALAR_FIELD(agg_within_group); + COMPARE_SCALAR_FIELD(agg_star); + COMPARE_SCALAR_FIELD(agg_distinct); + COMPARE_SCALAR_FIELD(func_variadic); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalA_Star(const A_Star *a, const A_Star *b) +{ + + return true; +} + +static bool +_equalA_Indices(const A_Indices *a, const A_Indices *b) +{ + COMPARE_SCALAR_FIELD(is_slice); + COMPARE_NODE_FIELD(lidx); + COMPARE_NODE_FIELD(uidx); + + return true; +} + +static bool +_equalA_Indirection(const A_Indirection *a, const A_Indirection *b) +{ + COMPARE_NODE_FIELD(arg); + COMPARE_NODE_FIELD(indirection); + + return true; +} + +static bool +_equalA_ArrayExpr(const A_ArrayExpr *a, const A_ArrayExpr *b) +{ + COMPARE_NODE_FIELD(elements); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalResTarget(const ResTarget *a, const ResTarget *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(indirection); + COMPARE_NODE_FIELD(val); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalMultiAssignRef(const MultiAssignRef *a, const MultiAssignRef *b) +{ + COMPARE_NODE_FIELD(source); + COMPARE_SCALAR_FIELD(colno); + COMPARE_SCALAR_FIELD(ncolumns); + + return true; +} + +static bool +_equalSortBy(const SortBy *a, const SortBy *b) +{ + COMPARE_NODE_FIELD(node); + COMPARE_SCALAR_FIELD(sortby_dir); + COMPARE_SCALAR_FIELD(sortby_nulls); + COMPARE_NODE_FIELD(useOp); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalWindowDef(const WindowDef *a, const WindowDef *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_STRING_FIELD(refname); + COMPARE_NODE_FIELD(partitionClause); + COMPARE_NODE_FIELD(orderClause); + COMPARE_SCALAR_FIELD(frameOptions); + COMPARE_NODE_FIELD(startOffset); + COMPARE_NODE_FIELD(endOffset); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRangeSubselect(const RangeSubselect *a, const RangeSubselect *b) +{ + COMPARE_SCALAR_FIELD(lateral); + COMPARE_NODE_FIELD(subquery); + COMPARE_NODE_FIELD(alias); + + return true; +} + +static bool +_equalRangeFunction(const RangeFunction *a, const RangeFunction *b) +{ + COMPARE_SCALAR_FIELD(lateral); + COMPARE_SCALAR_FIELD(ordinality); + COMPARE_SCALAR_FIELD(is_rowsfrom); + COMPARE_NODE_FIELD(functions); + COMPARE_NODE_FIELD(alias); + COMPARE_NODE_FIELD(coldeflist); + + return true; +} + +static bool +_equalRangeTableFunc(const RangeTableFunc *a, const RangeTableFunc *b) +{ + COMPARE_SCALAR_FIELD(lateral); + COMPARE_NODE_FIELD(docexpr); + COMPARE_NODE_FIELD(rowexpr); + COMPARE_NODE_FIELD(namespaces); + COMPARE_NODE_FIELD(columns); + COMPARE_NODE_FIELD(alias); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRangeTableFuncCol(const RangeTableFuncCol *a, const RangeTableFuncCol *b) +{ + COMPARE_STRING_FIELD(colname); + COMPARE_NODE_FIELD(typeName); + COMPARE_SCALAR_FIELD(for_ordinality); + COMPARE_SCALAR_FIELD(is_not_null); + COMPARE_NODE_FIELD(colexpr); + COMPARE_NODE_FIELD(coldefexpr); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalRangeTableSample(const RangeTableSample *a, const RangeTableSample *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(method); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(repeatable); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalColumnDef(const ColumnDef *a, const ColumnDef *b) +{ + COMPARE_STRING_FIELD(colname); + COMPARE_NODE_FIELD(typeName); + COMPARE_STRING_FIELD(compression); + COMPARE_SCALAR_FIELD(inhcount); + COMPARE_SCALAR_FIELD(is_local); + COMPARE_SCALAR_FIELD(is_not_null); + COMPARE_SCALAR_FIELD(is_from_type); + COMPARE_SCALAR_FIELD(storage); + COMPARE_STRING_FIELD(storage_name); + COMPARE_NODE_FIELD(raw_default); + COMPARE_NODE_FIELD(cooked_default); + COMPARE_SCALAR_FIELD(identity); + COMPARE_NODE_FIELD(identitySequence); + COMPARE_SCALAR_FIELD(generated); + COMPARE_NODE_FIELD(collClause); + COMPARE_SCALAR_FIELD(collOid); + COMPARE_NODE_FIELD(constraints); + COMPARE_NODE_FIELD(fdwoptions); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalTableLikeClause(const TableLikeClause *a, const TableLikeClause *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_SCALAR_FIELD(options); + COMPARE_SCALAR_FIELD(relationOid); + + return true; +} + +static bool +_equalIndexElem(const IndexElem *a, const IndexElem *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(expr); + COMPARE_STRING_FIELD(indexcolname); + COMPARE_NODE_FIELD(collation); + COMPARE_NODE_FIELD(opclass); + COMPARE_NODE_FIELD(opclassopts); + COMPARE_SCALAR_FIELD(ordering); + COMPARE_SCALAR_FIELD(nulls_ordering); + + return true; +} + +static bool +_equalDefElem(const DefElem *a, const DefElem *b) +{ + COMPARE_STRING_FIELD(defnamespace); + COMPARE_STRING_FIELD(defname); + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(defaction); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalLockingClause(const LockingClause *a, const LockingClause *b) +{ + COMPARE_NODE_FIELD(lockedRels); + COMPARE_SCALAR_FIELD(strength); + COMPARE_SCALAR_FIELD(waitPolicy); + + return true; +} + +static bool +_equalXmlSerialize(const XmlSerialize *a, const XmlSerialize *b) +{ + COMPARE_SCALAR_FIELD(xmloption); + COMPARE_NODE_FIELD(expr); + COMPARE_NODE_FIELD(typeName); + COMPARE_SCALAR_FIELD(indent); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionElem(const PartitionElem *a, const PartitionElem *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(expr); + COMPARE_NODE_FIELD(collation); + COMPARE_NODE_FIELD(opclass); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionSpec(const PartitionSpec *a, const PartitionSpec *b) +{ + COMPARE_SCALAR_FIELD(strategy); + COMPARE_NODE_FIELD(partParams); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionBoundSpec(const PartitionBoundSpec *a, const PartitionBoundSpec *b) +{ + COMPARE_SCALAR_FIELD(strategy); + COMPARE_SCALAR_FIELD(is_default); + COMPARE_SCALAR_FIELD(modulus); + COMPARE_SCALAR_FIELD(remainder); + COMPARE_NODE_FIELD(listdatums); + COMPARE_NODE_FIELD(lowerdatums); + COMPARE_NODE_FIELD(upperdatums); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionRangeDatum(const PartitionRangeDatum *a, const PartitionRangeDatum *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(value); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalPartitionCmd(const PartitionCmd *a, const PartitionCmd *b) +{ + COMPARE_NODE_FIELD(name); + COMPARE_NODE_FIELD(bound); + COMPARE_SCALAR_FIELD(concurrent); + + return true; +} + +static bool +_equalRangeTblEntry(const RangeTblEntry *a, const RangeTblEntry *b) +{ + COMPARE_SCALAR_FIELD(rtekind); + COMPARE_SCALAR_FIELD(relid); + COMPARE_SCALAR_FIELD(relkind); + COMPARE_SCALAR_FIELD(rellockmode); + COMPARE_NODE_FIELD(tablesample); + COMPARE_SCALAR_FIELD(perminfoindex); + COMPARE_NODE_FIELD(subquery); + COMPARE_SCALAR_FIELD(security_barrier); + COMPARE_SCALAR_FIELD(jointype); + COMPARE_SCALAR_FIELD(joinmergedcols); + COMPARE_NODE_FIELD(joinaliasvars); + COMPARE_NODE_FIELD(joinleftcols); + COMPARE_NODE_FIELD(joinrightcols); + COMPARE_NODE_FIELD(join_using_alias); + COMPARE_NODE_FIELD(functions); + COMPARE_SCALAR_FIELD(funcordinality); + COMPARE_NODE_FIELD(tablefunc); + COMPARE_NODE_FIELD(values_lists); + COMPARE_STRING_FIELD(ctename); + COMPARE_SCALAR_FIELD(ctelevelsup); + COMPARE_SCALAR_FIELD(self_reference); + COMPARE_NODE_FIELD(coltypes); + COMPARE_NODE_FIELD(coltypmods); + COMPARE_NODE_FIELD(colcollations); + COMPARE_STRING_FIELD(enrname); + COMPARE_SCALAR_FIELD(enrtuples); + COMPARE_NODE_FIELD(alias); + COMPARE_NODE_FIELD(eref); + COMPARE_SCALAR_FIELD(lateral); + COMPARE_SCALAR_FIELD(inh); + COMPARE_SCALAR_FIELD(inFromCl); + COMPARE_NODE_FIELD(securityQuals); + + return true; +} + +static bool +_equalRTEPermissionInfo(const RTEPermissionInfo *a, const RTEPermissionInfo *b) +{ + COMPARE_SCALAR_FIELD(relid); + COMPARE_SCALAR_FIELD(inh); + COMPARE_SCALAR_FIELD(requiredPerms); + COMPARE_SCALAR_FIELD(checkAsUser); + COMPARE_BITMAPSET_FIELD(selectedCols); + COMPARE_BITMAPSET_FIELD(insertedCols); + COMPARE_BITMAPSET_FIELD(updatedCols); + + return true; +} + +static bool +_equalRangeTblFunction(const RangeTblFunction *a, const RangeTblFunction *b) +{ + COMPARE_NODE_FIELD(funcexpr); + COMPARE_SCALAR_FIELD(funccolcount); + COMPARE_NODE_FIELD(funccolnames); + COMPARE_NODE_FIELD(funccoltypes); + COMPARE_NODE_FIELD(funccoltypmods); + COMPARE_NODE_FIELD(funccolcollations); + COMPARE_BITMAPSET_FIELD(funcparams); + + return true; +} + +static bool +_equalTableSampleClause(const TableSampleClause *a, const TableSampleClause *b) +{ + COMPARE_SCALAR_FIELD(tsmhandler); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(repeatable); + + return true; +} + +static bool +_equalWithCheckOption(const WithCheckOption *a, const WithCheckOption *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_STRING_FIELD(relname); + COMPARE_STRING_FIELD(polname); + COMPARE_NODE_FIELD(qual); + COMPARE_SCALAR_FIELD(cascaded); + + return true; +} + +static bool +_equalSortGroupClause(const SortGroupClause *a, const SortGroupClause *b) +{ + COMPARE_SCALAR_FIELD(tleSortGroupRef); + COMPARE_SCALAR_FIELD(eqop); + COMPARE_SCALAR_FIELD(sortop); + COMPARE_SCALAR_FIELD(nulls_first); + COMPARE_SCALAR_FIELD(hashable); + + return true; +} + +static bool +_equalGroupingSet(const GroupingSet *a, const GroupingSet *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(content); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalWindowClause(const WindowClause *a, const WindowClause *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_STRING_FIELD(refname); + COMPARE_NODE_FIELD(partitionClause); + COMPARE_NODE_FIELD(orderClause); + COMPARE_SCALAR_FIELD(frameOptions); + COMPARE_NODE_FIELD(startOffset); + COMPARE_NODE_FIELD(endOffset); + COMPARE_NODE_FIELD(runCondition); + COMPARE_SCALAR_FIELD(startInRangeFunc); + COMPARE_SCALAR_FIELD(endInRangeFunc); + COMPARE_SCALAR_FIELD(inRangeColl); + COMPARE_SCALAR_FIELD(inRangeAsc); + COMPARE_SCALAR_FIELD(inRangeNullsFirst); + COMPARE_SCALAR_FIELD(winref); + COMPARE_SCALAR_FIELD(copiedOrder); + + return true; +} + +static bool +_equalRowMarkClause(const RowMarkClause *a, const RowMarkClause *b) +{ + COMPARE_SCALAR_FIELD(rti); + COMPARE_SCALAR_FIELD(strength); + COMPARE_SCALAR_FIELD(waitPolicy); + COMPARE_SCALAR_FIELD(pushedDown); + + return true; +} + +static bool +_equalWithClause(const WithClause *a, const WithClause *b) +{ + COMPARE_NODE_FIELD(ctes); + COMPARE_SCALAR_FIELD(recursive); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalInferClause(const InferClause *a, const InferClause *b) +{ + COMPARE_NODE_FIELD(indexElems); + COMPARE_NODE_FIELD(whereClause); + COMPARE_STRING_FIELD(conname); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalOnConflictClause(const OnConflictClause *a, const OnConflictClause *b) +{ + COMPARE_SCALAR_FIELD(action); + COMPARE_NODE_FIELD(infer); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(whereClause); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCTESearchClause(const CTESearchClause *a, const CTESearchClause *b) +{ + COMPARE_NODE_FIELD(search_col_list); + COMPARE_SCALAR_FIELD(search_breadth_first); + COMPARE_STRING_FIELD(search_seq_column); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCTECycleClause(const CTECycleClause *a, const CTECycleClause *b) +{ + COMPARE_NODE_FIELD(cycle_col_list); + COMPARE_STRING_FIELD(cycle_mark_column); + COMPARE_NODE_FIELD(cycle_mark_value); + COMPARE_NODE_FIELD(cycle_mark_default); + COMPARE_STRING_FIELD(cycle_path_column); + COMPARE_LOCATION_FIELD(location); + COMPARE_SCALAR_FIELD(cycle_mark_type); + COMPARE_SCALAR_FIELD(cycle_mark_typmod); + COMPARE_SCALAR_FIELD(cycle_mark_collation); + COMPARE_SCALAR_FIELD(cycle_mark_neop); + + return true; +} + +static bool +_equalCommonTableExpr(const CommonTableExpr *a, const CommonTableExpr *b) +{ + COMPARE_STRING_FIELD(ctename); + COMPARE_NODE_FIELD(aliascolnames); + COMPARE_SCALAR_FIELD(ctematerialized); + COMPARE_NODE_FIELD(ctequery); + COMPARE_NODE_FIELD(search_clause); + COMPARE_NODE_FIELD(cycle_clause); + COMPARE_LOCATION_FIELD(location); + COMPARE_SCALAR_FIELD(cterecursive); + COMPARE_SCALAR_FIELD(cterefcount); + COMPARE_NODE_FIELD(ctecolnames); + COMPARE_NODE_FIELD(ctecoltypes); + COMPARE_NODE_FIELD(ctecoltypmods); + COMPARE_NODE_FIELD(ctecolcollations); + + return true; +} + +static bool +_equalMergeWhenClause(const MergeWhenClause *a, const MergeWhenClause *b) +{ + COMPARE_SCALAR_FIELD(matched); + COMPARE_SCALAR_FIELD(commandType); + COMPARE_SCALAR_FIELD(override); + COMPARE_NODE_FIELD(condition); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(values); + + return true; +} + +static bool +_equalMergeAction(const MergeAction *a, const MergeAction *b) +{ + COMPARE_SCALAR_FIELD(matched); + COMPARE_SCALAR_FIELD(commandType); + COMPARE_SCALAR_FIELD(override); + COMPARE_NODE_FIELD(qual); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(updateColnos); + + return true; +} + +static bool +_equalTriggerTransition(const TriggerTransition *a, const TriggerTransition *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_SCALAR_FIELD(isNew); + COMPARE_SCALAR_FIELD(isTable); + + return true; +} + +static bool +_equalJsonOutput(const JsonOutput *a, const JsonOutput *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(returning); + + return true; +} + +static bool +_equalJsonKeyValue(const JsonKeyValue *a, const JsonKeyValue *b) +{ + COMPARE_NODE_FIELD(key); + COMPARE_NODE_FIELD(value); + + return true; +} + +static bool +_equalJsonObjectConstructor(const JsonObjectConstructor *a, const JsonObjectConstructor *b) +{ + COMPARE_NODE_FIELD(exprs); + COMPARE_NODE_FIELD(output); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_SCALAR_FIELD(unique); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonArrayConstructor(const JsonArrayConstructor *a, const JsonArrayConstructor *b) +{ + COMPARE_NODE_FIELD(exprs); + COMPARE_NODE_FIELD(output); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonArrayQueryConstructor(const JsonArrayQueryConstructor *a, const JsonArrayQueryConstructor *b) +{ + COMPARE_NODE_FIELD(query); + COMPARE_NODE_FIELD(output); + COMPARE_NODE_FIELD(format); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonAggConstructor(const JsonAggConstructor *a, const JsonAggConstructor *b) +{ + COMPARE_NODE_FIELD(output); + COMPARE_NODE_FIELD(agg_filter); + COMPARE_NODE_FIELD(agg_order); + COMPARE_NODE_FIELD(over); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalJsonObjectAgg(const JsonObjectAgg *a, const JsonObjectAgg *b) +{ + COMPARE_NODE_FIELD(constructor); + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(absent_on_null); + COMPARE_SCALAR_FIELD(unique); + + return true; +} + +static bool +_equalJsonArrayAgg(const JsonArrayAgg *a, const JsonArrayAgg *b) +{ + COMPARE_NODE_FIELD(constructor); + COMPARE_NODE_FIELD(arg); + COMPARE_SCALAR_FIELD(absent_on_null); + + return true; +} + +static bool +_equalRawStmt(const RawStmt *a, const RawStmt *b) +{ + COMPARE_NODE_FIELD(stmt); + COMPARE_LOCATION_FIELD(stmt_location); + COMPARE_SCALAR_FIELD(stmt_len); + + return true; +} + +static bool +_equalInsertStmt(const InsertStmt *a, const InsertStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(cols); + COMPARE_NODE_FIELD(selectStmt); + COMPARE_NODE_FIELD(onConflictClause); + COMPARE_NODE_FIELD(returningList); + COMPARE_NODE_FIELD(withClause); + COMPARE_SCALAR_FIELD(override); + + return true; +} + +static bool +_equalDeleteStmt(const DeleteStmt *a, const DeleteStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(usingClause); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(returningList); + COMPARE_NODE_FIELD(withClause); + + return true; +} + +static bool +_equalUpdateStmt(const UpdateStmt *a, const UpdateStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(fromClause); + COMPARE_NODE_FIELD(returningList); + COMPARE_NODE_FIELD(withClause); + + return true; +} + +static bool +_equalMergeStmt(const MergeStmt *a, const MergeStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(sourceRelation); + COMPARE_NODE_FIELD(joinCondition); + COMPARE_NODE_FIELD(mergeWhenClauses); + COMPARE_NODE_FIELD(withClause); + + return true; +} + +static bool +_equalSelectStmt(const SelectStmt *a, const SelectStmt *b) +{ + COMPARE_NODE_FIELD(distinctClause); + COMPARE_NODE_FIELD(intoClause); + COMPARE_NODE_FIELD(targetList); + COMPARE_NODE_FIELD(fromClause); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(groupClause); + COMPARE_SCALAR_FIELD(groupDistinct); + COMPARE_NODE_FIELD(havingClause); + COMPARE_NODE_FIELD(windowClause); + COMPARE_NODE_FIELD(valuesLists); + COMPARE_NODE_FIELD(sortClause); + COMPARE_NODE_FIELD(limitOffset); + COMPARE_NODE_FIELD(limitCount); + COMPARE_SCALAR_FIELD(limitOption); + COMPARE_NODE_FIELD(lockingClause); + COMPARE_NODE_FIELD(withClause); + COMPARE_SCALAR_FIELD(op); + COMPARE_SCALAR_FIELD(all); + COMPARE_NODE_FIELD(larg); + COMPARE_NODE_FIELD(rarg); + + return true; +} + +static bool +_equalSetOperationStmt(const SetOperationStmt *a, const SetOperationStmt *b) +{ + COMPARE_SCALAR_FIELD(op); + COMPARE_SCALAR_FIELD(all); + COMPARE_NODE_FIELD(larg); + COMPARE_NODE_FIELD(rarg); + COMPARE_NODE_FIELD(colTypes); + COMPARE_NODE_FIELD(colTypmods); + COMPARE_NODE_FIELD(colCollations); + COMPARE_NODE_FIELD(groupClauses); + + return true; +} + +static bool +_equalReturnStmt(const ReturnStmt *a, const ReturnStmt *b) +{ + COMPARE_NODE_FIELD(returnval); + + return true; +} + +static bool +_equalPLAssignStmt(const PLAssignStmt *a, const PLAssignStmt *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(indirection); + COMPARE_SCALAR_FIELD(nnames); + COMPARE_NODE_FIELD(val); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCreateSchemaStmt(const CreateSchemaStmt *a, const CreateSchemaStmt *b) +{ + COMPARE_STRING_FIELD(schemaname); + COMPARE_NODE_FIELD(authrole); + COMPARE_NODE_FIELD(schemaElts); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalAlterTableStmt(const AlterTableStmt *a, const AlterTableStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(cmds); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalReplicaIdentityStmt(const ReplicaIdentityStmt *a, const ReplicaIdentityStmt *b) +{ + COMPARE_SCALAR_FIELD(identity_type); + COMPARE_STRING_FIELD(name); + + return true; +} + +static bool +_equalAlterTableCmd(const AlterTableCmd *a, const AlterTableCmd *b) +{ + COMPARE_SCALAR_FIELD(subtype); + COMPARE_STRING_FIELD(name); + COMPARE_SCALAR_FIELD(num); + COMPARE_NODE_FIELD(newowner); + COMPARE_NODE_FIELD(def); + COMPARE_SCALAR_FIELD(behavior); + COMPARE_SCALAR_FIELD(missing_ok); + COMPARE_SCALAR_FIELD(recurse); + + return true; +} + +static bool +_equalAlterCollationStmt(const AlterCollationStmt *a, const AlterCollationStmt *b) +{ + COMPARE_NODE_FIELD(collname); + + return true; +} + +static bool +_equalAlterDomainStmt(const AlterDomainStmt *a, const AlterDomainStmt *b) +{ + COMPARE_SCALAR_FIELD(subtype); + COMPARE_NODE_FIELD(typeName); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(def); + COMPARE_SCALAR_FIELD(behavior); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalGrantStmt(const GrantStmt *a, const GrantStmt *b) +{ + COMPARE_SCALAR_FIELD(is_grant); + COMPARE_SCALAR_FIELD(targtype); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(objects); + COMPARE_NODE_FIELD(privileges); + COMPARE_NODE_FIELD(grantees); + COMPARE_SCALAR_FIELD(grant_option); + COMPARE_NODE_FIELD(grantor); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalObjectWithArgs(const ObjectWithArgs *a, const ObjectWithArgs *b) +{ + COMPARE_NODE_FIELD(objname); + COMPARE_NODE_FIELD(objargs); + COMPARE_NODE_FIELD(objfuncargs); + COMPARE_SCALAR_FIELD(args_unspecified); + + return true; +} + +static bool +_equalAccessPriv(const AccessPriv *a, const AccessPriv *b) +{ + COMPARE_STRING_FIELD(priv_name); + COMPARE_NODE_FIELD(cols); + + return true; +} + +static bool +_equalGrantRoleStmt(const GrantRoleStmt *a, const GrantRoleStmt *b) +{ + COMPARE_NODE_FIELD(granted_roles); + COMPARE_NODE_FIELD(grantee_roles); + COMPARE_SCALAR_FIELD(is_grant); + COMPARE_NODE_FIELD(opt); + COMPARE_NODE_FIELD(grantor); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalAlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt *a, const AlterDefaultPrivilegesStmt *b) +{ + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(action); + + return true; +} + +static bool +_equalCopyStmt(const CopyStmt *a, const CopyStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(query); + COMPARE_NODE_FIELD(attlist); + COMPARE_SCALAR_FIELD(is_from); + COMPARE_SCALAR_FIELD(is_program); + COMPARE_STRING_FIELD(filename); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(whereClause); + + return true; +} + +static bool +_equalVariableSetStmt(const VariableSetStmt *a, const VariableSetStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(is_local); + + return true; +} + +static bool +_equalVariableShowStmt(const VariableShowStmt *a, const VariableShowStmt *b) +{ + COMPARE_STRING_FIELD(name); + + return true; +} + +static bool +_equalCreateStmt(const CreateStmt *a, const CreateStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(tableElts); + COMPARE_NODE_FIELD(inhRelations); + COMPARE_NODE_FIELD(partbound); + COMPARE_NODE_FIELD(partspec); + COMPARE_NODE_FIELD(ofTypename); + COMPARE_NODE_FIELD(constraints); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(oncommit); + COMPARE_STRING_FIELD(tablespacename); + COMPARE_STRING_FIELD(accessMethod); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalConstraint(const Constraint *a, const Constraint *b) +{ + COMPARE_SCALAR_FIELD(contype); + COMPARE_STRING_FIELD(conname); + COMPARE_SCALAR_FIELD(deferrable); + COMPARE_SCALAR_FIELD(initdeferred); + COMPARE_LOCATION_FIELD(location); + COMPARE_SCALAR_FIELD(is_no_inherit); + COMPARE_NODE_FIELD(raw_expr); + COMPARE_STRING_FIELD(cooked_expr); + COMPARE_SCALAR_FIELD(generated_when); + COMPARE_SCALAR_FIELD(nulls_not_distinct); + COMPARE_NODE_FIELD(keys); + COMPARE_NODE_FIELD(including); + COMPARE_NODE_FIELD(exclusions); + COMPARE_NODE_FIELD(options); + COMPARE_STRING_FIELD(indexname); + COMPARE_STRING_FIELD(indexspace); + COMPARE_SCALAR_FIELD(reset_default_tblspc); + COMPARE_STRING_FIELD(access_method); + COMPARE_NODE_FIELD(where_clause); + COMPARE_NODE_FIELD(pktable); + COMPARE_NODE_FIELD(fk_attrs); + COMPARE_NODE_FIELD(pk_attrs); + COMPARE_SCALAR_FIELD(fk_matchtype); + COMPARE_SCALAR_FIELD(fk_upd_action); + COMPARE_SCALAR_FIELD(fk_del_action); + COMPARE_NODE_FIELD(fk_del_set_cols); + COMPARE_NODE_FIELD(old_conpfeqop); + COMPARE_SCALAR_FIELD(old_pktable_oid); + COMPARE_SCALAR_FIELD(skip_validation); + COMPARE_SCALAR_FIELD(initially_valid); + + return true; +} + +static bool +_equalCreateTableSpaceStmt(const CreateTableSpaceStmt *a, const CreateTableSpaceStmt *b) +{ + COMPARE_STRING_FIELD(tablespacename); + COMPARE_NODE_FIELD(owner); + COMPARE_STRING_FIELD(location); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalDropTableSpaceStmt(const DropTableSpaceStmt *a, const DropTableSpaceStmt *b) +{ + COMPARE_STRING_FIELD(tablespacename); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalAlterTableSpaceOptionsStmt(const AlterTableSpaceOptionsStmt *a, const AlterTableSpaceOptionsStmt *b) +{ + COMPARE_STRING_FIELD(tablespacename); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(isReset); + + return true; +} + +static bool +_equalAlterTableMoveAllStmt(const AlterTableMoveAllStmt *a, const AlterTableMoveAllStmt *b) +{ + COMPARE_STRING_FIELD(orig_tablespacename); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(roles); + COMPARE_STRING_FIELD(new_tablespacename); + COMPARE_SCALAR_FIELD(nowait); + + return true; +} + +static bool +_equalCreateExtensionStmt(const CreateExtensionStmt *a, const CreateExtensionStmt *b) +{ + COMPARE_STRING_FIELD(extname); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterExtensionStmt(const AlterExtensionStmt *a, const AlterExtensionStmt *b) +{ + COMPARE_STRING_FIELD(extname); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterExtensionContentsStmt(const AlterExtensionContentsStmt *a, const AlterExtensionContentsStmt *b) +{ + COMPARE_STRING_FIELD(extname); + COMPARE_SCALAR_FIELD(action); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(object); + + return true; +} + +static bool +_equalCreateFdwStmt(const CreateFdwStmt *a, const CreateFdwStmt *b) +{ + COMPARE_STRING_FIELD(fdwname); + COMPARE_NODE_FIELD(func_options); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterFdwStmt(const AlterFdwStmt *a, const AlterFdwStmt *b) +{ + COMPARE_STRING_FIELD(fdwname); + COMPARE_NODE_FIELD(func_options); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalCreateForeignServerStmt(const CreateForeignServerStmt *a, const CreateForeignServerStmt *b) +{ + COMPARE_STRING_FIELD(servername); + COMPARE_STRING_FIELD(servertype); + COMPARE_STRING_FIELD(version); + COMPARE_STRING_FIELD(fdwname); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterForeignServerStmt(const AlterForeignServerStmt *a, const AlterForeignServerStmt *b) +{ + COMPARE_STRING_FIELD(servername); + COMPARE_STRING_FIELD(version); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(has_version); + + return true; +} + +static bool +_equalCreateForeignTableStmt(const CreateForeignTableStmt *a, const CreateForeignTableStmt *b) +{ + COMPARE_NODE_FIELD(base.relation); + COMPARE_NODE_FIELD(base.tableElts); + COMPARE_NODE_FIELD(base.inhRelations); + COMPARE_NODE_FIELD(base.partbound); + COMPARE_NODE_FIELD(base.partspec); + COMPARE_NODE_FIELD(base.ofTypename); + COMPARE_NODE_FIELD(base.constraints); + COMPARE_NODE_FIELD(base.options); + COMPARE_SCALAR_FIELD(base.oncommit); + COMPARE_STRING_FIELD(base.tablespacename); + COMPARE_STRING_FIELD(base.accessMethod); + COMPARE_SCALAR_FIELD(base.if_not_exists); + COMPARE_STRING_FIELD(servername); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalCreateUserMappingStmt(const CreateUserMappingStmt *a, const CreateUserMappingStmt *b) +{ + COMPARE_NODE_FIELD(user); + COMPARE_STRING_FIELD(servername); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterUserMappingStmt(const AlterUserMappingStmt *a, const AlterUserMappingStmt *b) +{ + COMPARE_NODE_FIELD(user); + COMPARE_STRING_FIELD(servername); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalDropUserMappingStmt(const DropUserMappingStmt *a, const DropUserMappingStmt *b) +{ + COMPARE_NODE_FIELD(user); + COMPARE_STRING_FIELD(servername); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalImportForeignSchemaStmt(const ImportForeignSchemaStmt *a, const ImportForeignSchemaStmt *b) +{ + COMPARE_STRING_FIELD(server_name); + COMPARE_STRING_FIELD(remote_schema); + COMPARE_STRING_FIELD(local_schema); + COMPARE_SCALAR_FIELD(list_type); + COMPARE_NODE_FIELD(table_list); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalCreatePolicyStmt(const CreatePolicyStmt *a, const CreatePolicyStmt *b) +{ + COMPARE_STRING_FIELD(policy_name); + COMPARE_NODE_FIELD(table); + COMPARE_STRING_FIELD(cmd_name); + COMPARE_SCALAR_FIELD(permissive); + COMPARE_NODE_FIELD(roles); + COMPARE_NODE_FIELD(qual); + COMPARE_NODE_FIELD(with_check); + + return true; +} + +static bool +_equalAlterPolicyStmt(const AlterPolicyStmt *a, const AlterPolicyStmt *b) +{ + COMPARE_STRING_FIELD(policy_name); + COMPARE_NODE_FIELD(table); + COMPARE_NODE_FIELD(roles); + COMPARE_NODE_FIELD(qual); + COMPARE_NODE_FIELD(with_check); + + return true; +} + +static bool +_equalCreateAmStmt(const CreateAmStmt *a, const CreateAmStmt *b) +{ + COMPARE_STRING_FIELD(amname); + COMPARE_NODE_FIELD(handler_name); + COMPARE_SCALAR_FIELD(amtype); + + return true; +} + +static bool +_equalCreateTrigStmt(const CreateTrigStmt *a, const CreateTrigStmt *b) +{ + COMPARE_SCALAR_FIELD(replace); + COMPARE_SCALAR_FIELD(isconstraint); + COMPARE_STRING_FIELD(trigname); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(funcname); + COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(row); + COMPARE_SCALAR_FIELD(timing); + COMPARE_SCALAR_FIELD(events); + COMPARE_NODE_FIELD(columns); + COMPARE_NODE_FIELD(whenClause); + COMPARE_NODE_FIELD(transitionRels); + COMPARE_SCALAR_FIELD(deferrable); + COMPARE_SCALAR_FIELD(initdeferred); + COMPARE_NODE_FIELD(constrrel); + + return true; +} + +static bool +_equalCreateEventTrigStmt(const CreateEventTrigStmt *a, const CreateEventTrigStmt *b) +{ + COMPARE_STRING_FIELD(trigname); + COMPARE_STRING_FIELD(eventname); + COMPARE_NODE_FIELD(whenclause); + COMPARE_NODE_FIELD(funcname); + + return true; +} + +static bool +_equalAlterEventTrigStmt(const AlterEventTrigStmt *a, const AlterEventTrigStmt *b) +{ + COMPARE_STRING_FIELD(trigname); + COMPARE_SCALAR_FIELD(tgenabled); + + return true; +} + +static bool +_equalCreatePLangStmt(const CreatePLangStmt *a, const CreatePLangStmt *b) +{ + COMPARE_SCALAR_FIELD(replace); + COMPARE_STRING_FIELD(plname); + COMPARE_NODE_FIELD(plhandler); + COMPARE_NODE_FIELD(plinline); + COMPARE_NODE_FIELD(plvalidator); + COMPARE_SCALAR_FIELD(pltrusted); + + return true; +} + +static bool +_equalCreateRoleStmt(const CreateRoleStmt *a, const CreateRoleStmt *b) +{ + COMPARE_SCALAR_FIELD(stmt_type); + COMPARE_STRING_FIELD(role); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterRoleStmt(const AlterRoleStmt *a, const AlterRoleStmt *b) +{ + COMPARE_NODE_FIELD(role); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(action); + + return true; +} + +static bool +_equalAlterRoleSetStmt(const AlterRoleSetStmt *a, const AlterRoleSetStmt *b) +{ + COMPARE_NODE_FIELD(role); + COMPARE_STRING_FIELD(database); + COMPARE_NODE_FIELD(setstmt); + + return true; +} + +static bool +_equalDropRoleStmt(const DropRoleStmt *a, const DropRoleStmt *b) +{ + COMPARE_NODE_FIELD(roles); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalCreateSeqStmt(const CreateSeqStmt *a, const CreateSeqStmt *b) +{ + COMPARE_NODE_FIELD(sequence); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(ownerId); + COMPARE_SCALAR_FIELD(for_identity); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalAlterSeqStmt(const AlterSeqStmt *a, const AlterSeqStmt *b) +{ + COMPARE_NODE_FIELD(sequence); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(for_identity); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalDefineStmt(const DefineStmt *a, const DefineStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_SCALAR_FIELD(oldstyle); + COMPARE_NODE_FIELD(defnames); + COMPARE_NODE_FIELD(args); + COMPARE_NODE_FIELD(definition); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_SCALAR_FIELD(replace); + + return true; +} + +static bool +_equalCreateDomainStmt(const CreateDomainStmt *a, const CreateDomainStmt *b) +{ + COMPARE_NODE_FIELD(domainname); + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(collClause); + COMPARE_NODE_FIELD(constraints); + + return true; +} + +static bool +_equalCreateOpClassStmt(const CreateOpClassStmt *a, const CreateOpClassStmt *b) +{ + COMPARE_NODE_FIELD(opclassname); + COMPARE_NODE_FIELD(opfamilyname); + COMPARE_STRING_FIELD(amname); + COMPARE_NODE_FIELD(datatype); + COMPARE_NODE_FIELD(items); + COMPARE_SCALAR_FIELD(isDefault); + + return true; +} + +static bool +_equalCreateOpClassItem(const CreateOpClassItem *a, const CreateOpClassItem *b) +{ + COMPARE_SCALAR_FIELD(itemtype); + COMPARE_NODE_FIELD(name); + COMPARE_SCALAR_FIELD(number); + COMPARE_NODE_FIELD(order_family); + COMPARE_NODE_FIELD(class_args); + COMPARE_NODE_FIELD(storedtype); + + return true; +} + +static bool +_equalCreateOpFamilyStmt(const CreateOpFamilyStmt *a, const CreateOpFamilyStmt *b) +{ + COMPARE_NODE_FIELD(opfamilyname); + COMPARE_STRING_FIELD(amname); + + return true; +} + +static bool +_equalAlterOpFamilyStmt(const AlterOpFamilyStmt *a, const AlterOpFamilyStmt *b) +{ + COMPARE_NODE_FIELD(opfamilyname); + COMPARE_STRING_FIELD(amname); + COMPARE_SCALAR_FIELD(isDrop); + COMPARE_NODE_FIELD(items); + + return true; +} + +static bool +_equalDropStmt(const DropStmt *a, const DropStmt *b) +{ + COMPARE_NODE_FIELD(objects); + COMPARE_SCALAR_FIELD(removeType); + COMPARE_SCALAR_FIELD(behavior); + COMPARE_SCALAR_FIELD(missing_ok); + COMPARE_SCALAR_FIELD(concurrent); + + return true; +} + +static bool +_equalTruncateStmt(const TruncateStmt *a, const TruncateStmt *b) +{ + COMPARE_NODE_FIELD(relations); + COMPARE_SCALAR_FIELD(restart_seqs); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalCommentStmt(const CommentStmt *a, const CommentStmt *b) +{ + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(object); + COMPARE_STRING_FIELD(comment); + + return true; +} + +static bool +_equalSecLabelStmt(const SecLabelStmt *a, const SecLabelStmt *b) +{ + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(object); + COMPARE_STRING_FIELD(provider); + COMPARE_STRING_FIELD(label); + + return true; +} + +static bool +_equalDeclareCursorStmt(const DeclareCursorStmt *a, const DeclareCursorStmt *b) +{ + COMPARE_STRING_FIELD(portalname); + COMPARE_SCALAR_FIELD(options); + COMPARE_NODE_FIELD(query); + + return true; +} + +static bool +_equalClosePortalStmt(const ClosePortalStmt *a, const ClosePortalStmt *b) +{ + COMPARE_STRING_FIELD(portalname); + + return true; +} + +static bool +_equalFetchStmt(const FetchStmt *a, const FetchStmt *b) +{ + COMPARE_SCALAR_FIELD(direction); + COMPARE_SCALAR_FIELD(howMany); + COMPARE_STRING_FIELD(portalname); + COMPARE_SCALAR_FIELD(ismove); + + return true; +} + +static bool +_equalIndexStmt(const IndexStmt *a, const IndexStmt *b) +{ + COMPARE_STRING_FIELD(idxname); + COMPARE_NODE_FIELD(relation); + COMPARE_STRING_FIELD(accessMethod); + COMPARE_STRING_FIELD(tableSpace); + COMPARE_NODE_FIELD(indexParams); + COMPARE_NODE_FIELD(indexIncludingParams); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(excludeOpNames); + COMPARE_STRING_FIELD(idxcomment); + COMPARE_SCALAR_FIELD(indexOid); + COMPARE_SCALAR_FIELD(oldNumber); + COMPARE_SCALAR_FIELD(oldCreateSubid); + COMPARE_SCALAR_FIELD(oldFirstRelfilelocatorSubid); + COMPARE_SCALAR_FIELD(unique); + COMPARE_SCALAR_FIELD(nulls_not_distinct); + COMPARE_SCALAR_FIELD(primary); + COMPARE_SCALAR_FIELD(isconstraint); + COMPARE_SCALAR_FIELD(deferrable); + COMPARE_SCALAR_FIELD(initdeferred); + COMPARE_SCALAR_FIELD(transformed); + COMPARE_SCALAR_FIELD(concurrent); + COMPARE_SCALAR_FIELD(if_not_exists); + COMPARE_SCALAR_FIELD(reset_default_tblspc); + + return true; +} + +static bool +_equalCreateStatsStmt(const CreateStatsStmt *a, const CreateStatsStmt *b) +{ + COMPARE_NODE_FIELD(defnames); + COMPARE_NODE_FIELD(stat_types); + COMPARE_NODE_FIELD(exprs); + COMPARE_NODE_FIELD(relations); + COMPARE_STRING_FIELD(stxcomment); + COMPARE_SCALAR_FIELD(transformed); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalStatsElem(const StatsElem *a, const StatsElem *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(expr); + + return true; +} + +static bool +_equalAlterStatsStmt(const AlterStatsStmt *a, const AlterStatsStmt *b) +{ + COMPARE_NODE_FIELD(defnames); + COMPARE_SCALAR_FIELD(stxstattarget); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalCreateFunctionStmt(const CreateFunctionStmt *a, const CreateFunctionStmt *b) +{ + COMPARE_SCALAR_FIELD(is_procedure); + COMPARE_SCALAR_FIELD(replace); + COMPARE_NODE_FIELD(funcname); + COMPARE_NODE_FIELD(parameters); + COMPARE_NODE_FIELD(returnType); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(sql_body); + + return true; +} + +static bool +_equalFunctionParameter(const FunctionParameter *a, const FunctionParameter *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(argType); + COMPARE_SCALAR_FIELD(mode); + COMPARE_NODE_FIELD(defexpr); + + return true; +} + +static bool +_equalAlterFunctionStmt(const AlterFunctionStmt *a, const AlterFunctionStmt *b) +{ + COMPARE_SCALAR_FIELD(objtype); + COMPARE_NODE_FIELD(func); + COMPARE_NODE_FIELD(actions); + + return true; +} + +static bool +_equalDoStmt(const DoStmt *a, const DoStmt *b) +{ + COMPARE_NODE_FIELD(args); + + return true; +} + +static bool +_equalCallStmt(const CallStmt *a, const CallStmt *b) +{ + COMPARE_NODE_FIELD(funccall); + COMPARE_NODE_FIELD(funcexpr); + COMPARE_NODE_FIELD(outargs); + + return true; +} + +static bool +_equalRenameStmt(const RenameStmt *a, const RenameStmt *b) +{ + COMPARE_SCALAR_FIELD(renameType); + COMPARE_SCALAR_FIELD(relationType); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(object); + COMPARE_STRING_FIELD(subname); + COMPARE_STRING_FIELD(newname); + COMPARE_SCALAR_FIELD(behavior); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalAlterObjectDependsStmt(const AlterObjectDependsStmt *a, const AlterObjectDependsStmt *b) +{ + COMPARE_SCALAR_FIELD(objectType); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(object); + COMPARE_NODE_FIELD(extname); + COMPARE_SCALAR_FIELD(remove); + + return true; +} + +static bool +_equalAlterObjectSchemaStmt(const AlterObjectSchemaStmt *a, const AlterObjectSchemaStmt *b) +{ + COMPARE_SCALAR_FIELD(objectType); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(object); + COMPARE_STRING_FIELD(newschema); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalAlterOwnerStmt(const AlterOwnerStmt *a, const AlterOwnerStmt *b) +{ + COMPARE_SCALAR_FIELD(objectType); + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(object); + COMPARE_NODE_FIELD(newowner); + + return true; +} + +static bool +_equalAlterOperatorStmt(const AlterOperatorStmt *a, const AlterOperatorStmt *b) +{ + COMPARE_NODE_FIELD(opername); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterTypeStmt(const AlterTypeStmt *a, const AlterTypeStmt *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalRuleStmt(const RuleStmt *a, const RuleStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_STRING_FIELD(rulename); + COMPARE_NODE_FIELD(whereClause); + COMPARE_SCALAR_FIELD(event); + COMPARE_SCALAR_FIELD(instead); + COMPARE_NODE_FIELD(actions); + COMPARE_SCALAR_FIELD(replace); + + return true; +} + +static bool +_equalNotifyStmt(const NotifyStmt *a, const NotifyStmt *b) +{ + COMPARE_STRING_FIELD(conditionname); + COMPARE_STRING_FIELD(payload); + + return true; +} + +static bool +_equalListenStmt(const ListenStmt *a, const ListenStmt *b) +{ + COMPARE_STRING_FIELD(conditionname); + + return true; +} + +static bool +_equalUnlistenStmt(const UnlistenStmt *a, const UnlistenStmt *b) +{ + COMPARE_STRING_FIELD(conditionname); + + return true; +} + +static bool +_equalTransactionStmt(const TransactionStmt *a, const TransactionStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(options); + COMPARE_STRING_FIELD(savepoint_name); + COMPARE_STRING_FIELD(gid); + COMPARE_SCALAR_FIELD(chain); + + return true; +} + +static bool +_equalCompositeTypeStmt(const CompositeTypeStmt *a, const CompositeTypeStmt *b) +{ + COMPARE_NODE_FIELD(typevar); + COMPARE_NODE_FIELD(coldeflist); + + return true; +} + +static bool +_equalCreateEnumStmt(const CreateEnumStmt *a, const CreateEnumStmt *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(vals); + + return true; +} + +static bool +_equalCreateRangeStmt(const CreateRangeStmt *a, const CreateRangeStmt *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_NODE_FIELD(params); + + return true; +} + +static bool +_equalAlterEnumStmt(const AlterEnumStmt *a, const AlterEnumStmt *b) +{ + COMPARE_NODE_FIELD(typeName); + COMPARE_STRING_FIELD(oldVal); + COMPARE_STRING_FIELD(newVal); + COMPARE_STRING_FIELD(newValNeighbor); + COMPARE_SCALAR_FIELD(newValIsAfter); + COMPARE_SCALAR_FIELD(skipIfNewValExists); + + return true; +} + +static bool +_equalViewStmt(const ViewStmt *a, const ViewStmt *b) +{ + COMPARE_NODE_FIELD(view); + COMPARE_NODE_FIELD(aliases); + COMPARE_NODE_FIELD(query); + COMPARE_SCALAR_FIELD(replace); + COMPARE_NODE_FIELD(options); + COMPARE_SCALAR_FIELD(withCheckOption); + + return true; +} + +static bool +_equalLoadStmt(const LoadStmt *a, const LoadStmt *b) +{ + COMPARE_STRING_FIELD(filename); + + return true; +} + +static bool +_equalCreatedbStmt(const CreatedbStmt *a, const CreatedbStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterDatabaseStmt(const AlterDatabaseStmt *a, const AlterDatabaseStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterDatabaseRefreshCollStmt(const AlterDatabaseRefreshCollStmt *a, const AlterDatabaseRefreshCollStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + + return true; +} + +static bool +_equalAlterDatabaseSetStmt(const AlterDatabaseSetStmt *a, const AlterDatabaseSetStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + COMPARE_NODE_FIELD(setstmt); + + return true; +} + +static bool +_equalDropdbStmt(const DropdbStmt *a, const DropdbStmt *b) +{ + COMPARE_STRING_FIELD(dbname); + COMPARE_SCALAR_FIELD(missing_ok); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterSystemStmt(const AlterSystemStmt *a, const AlterSystemStmt *b) +{ + COMPARE_NODE_FIELD(setstmt); + + return true; +} + +static bool +_equalClusterStmt(const ClusterStmt *a, const ClusterStmt *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_STRING_FIELD(indexname); + COMPARE_NODE_FIELD(params); + + return true; +} + +static bool +_equalVacuumStmt(const VacuumStmt *a, const VacuumStmt *b) +{ + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(rels); + COMPARE_SCALAR_FIELD(is_vacuumcmd); + + return true; +} + +static bool +_equalVacuumRelation(const VacuumRelation *a, const VacuumRelation *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_SCALAR_FIELD(oid); + COMPARE_NODE_FIELD(va_cols); + + return true; +} + +static bool +_equalExplainStmt(const ExplainStmt *a, const ExplainStmt *b) +{ + COMPARE_NODE_FIELD(query); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalCreateTableAsStmt(const CreateTableAsStmt *a, const CreateTableAsStmt *b) +{ + COMPARE_NODE_FIELD(query); + COMPARE_NODE_FIELD(into); + COMPARE_SCALAR_FIELD(objtype); + COMPARE_SCALAR_FIELD(is_select_into); + COMPARE_SCALAR_FIELD(if_not_exists); + + return true; +} + +static bool +_equalRefreshMatViewStmt(const RefreshMatViewStmt *a, const RefreshMatViewStmt *b) +{ + COMPARE_SCALAR_FIELD(concurrent); + COMPARE_SCALAR_FIELD(skipData); + COMPARE_NODE_FIELD(relation); + + return true; +} + +static bool +_equalCheckPointStmt(const CheckPointStmt *a, const CheckPointStmt *b) +{ + + return true; +} + +static bool +_equalDiscardStmt(const DiscardStmt *a, const DiscardStmt *b) +{ + COMPARE_SCALAR_FIELD(target); + + return true; +} + +static bool +_equalLockStmt(const LockStmt *a, const LockStmt *b) +{ + COMPARE_NODE_FIELD(relations); + COMPARE_SCALAR_FIELD(mode); + COMPARE_SCALAR_FIELD(nowait); + + return true; +} + +static bool +_equalConstraintsSetStmt(const ConstraintsSetStmt *a, const ConstraintsSetStmt *b) +{ + COMPARE_NODE_FIELD(constraints); + COMPARE_SCALAR_FIELD(deferred); + + return true; +} + +static bool +_equalReindexStmt(const ReindexStmt *a, const ReindexStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(relation); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(params); + + return true; +} + +static bool +_equalCreateConversionStmt(const CreateConversionStmt *a, const CreateConversionStmt *b) +{ + COMPARE_NODE_FIELD(conversion_name); + COMPARE_STRING_FIELD(for_encoding_name); + COMPARE_STRING_FIELD(to_encoding_name); + COMPARE_NODE_FIELD(func_name); + COMPARE_SCALAR_FIELD(def); + + return true; +} + +static bool +_equalCreateCastStmt(const CreateCastStmt *a, const CreateCastStmt *b) +{ + COMPARE_NODE_FIELD(sourcetype); + COMPARE_NODE_FIELD(targettype); + COMPARE_NODE_FIELD(func); + COMPARE_SCALAR_FIELD(context); + COMPARE_SCALAR_FIELD(inout); + + return true; +} + +static bool +_equalCreateTransformStmt(const CreateTransformStmt *a, const CreateTransformStmt *b) +{ + COMPARE_SCALAR_FIELD(replace); + COMPARE_NODE_FIELD(type_name); + COMPARE_STRING_FIELD(lang); + COMPARE_NODE_FIELD(fromsql); + COMPARE_NODE_FIELD(tosql); + + return true; +} + +static bool +_equalPrepareStmt(const PrepareStmt *a, const PrepareStmt *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(argtypes); + COMPARE_NODE_FIELD(query); + + return true; +} + +static bool +_equalExecuteStmt(const ExecuteStmt *a, const ExecuteStmt *b) +{ + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(params); + + return true; +} + +static bool +_equalDeallocateStmt(const DeallocateStmt *a, const DeallocateStmt *b) +{ + COMPARE_STRING_FIELD(name); + + return true; +} + +static bool +_equalDropOwnedStmt(const DropOwnedStmt *a, const DropOwnedStmt *b) +{ + COMPARE_NODE_FIELD(roles); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalReassignOwnedStmt(const ReassignOwnedStmt *a, const ReassignOwnedStmt *b) +{ + COMPARE_NODE_FIELD(roles); + COMPARE_NODE_FIELD(newrole); + + return true; +} + +static bool +_equalAlterTSDictionaryStmt(const AlterTSDictionaryStmt *a, const AlterTSDictionaryStmt *b) +{ + COMPARE_NODE_FIELD(dictname); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterTSConfigurationStmt(const AlterTSConfigurationStmt *a, const AlterTSConfigurationStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_NODE_FIELD(cfgname); + COMPARE_NODE_FIELD(tokentype); + COMPARE_NODE_FIELD(dicts); + COMPARE_SCALAR_FIELD(override); + COMPARE_SCALAR_FIELD(replace); + COMPARE_SCALAR_FIELD(missing_ok); + + return true; +} + +static bool +_equalPublicationTable(const PublicationTable *a, const PublicationTable *b) +{ + COMPARE_NODE_FIELD(relation); + COMPARE_NODE_FIELD(whereClause); + COMPARE_NODE_FIELD(columns); + + return true; +} + +static bool +_equalPublicationObjSpec(const PublicationObjSpec *a, const PublicationObjSpec *b) +{ + COMPARE_SCALAR_FIELD(pubobjtype); + COMPARE_STRING_FIELD(name); + COMPARE_NODE_FIELD(pubtable); + COMPARE_LOCATION_FIELD(location); + + return true; +} + +static bool +_equalCreatePublicationStmt(const CreatePublicationStmt *a, const CreatePublicationStmt *b) +{ + COMPARE_STRING_FIELD(pubname); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(pubobjects); + COMPARE_SCALAR_FIELD(for_all_tables); + + return true; +} + +static bool +_equalAlterPublicationStmt(const AlterPublicationStmt *a, const AlterPublicationStmt *b) +{ + COMPARE_STRING_FIELD(pubname); + COMPARE_NODE_FIELD(options); + COMPARE_NODE_FIELD(pubobjects); + COMPARE_SCALAR_FIELD(for_all_tables); + COMPARE_SCALAR_FIELD(action); + + return true; +} + +static bool +_equalCreateSubscriptionStmt(const CreateSubscriptionStmt *a, const CreateSubscriptionStmt *b) +{ + COMPARE_STRING_FIELD(subname); + COMPARE_STRING_FIELD(conninfo); + COMPARE_NODE_FIELD(publication); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalAlterSubscriptionStmt(const AlterSubscriptionStmt *a, const AlterSubscriptionStmt *b) +{ + COMPARE_SCALAR_FIELD(kind); + COMPARE_STRING_FIELD(subname); + COMPARE_STRING_FIELD(conninfo); + COMPARE_NODE_FIELD(publication); + COMPARE_NODE_FIELD(options); + + return true; +} + +static bool +_equalDropSubscriptionStmt(const DropSubscriptionStmt *a, const DropSubscriptionStmt *b) +{ + COMPARE_STRING_FIELD(subname); + COMPARE_SCALAR_FIELD(missing_ok); + COMPARE_SCALAR_FIELD(behavior); + + return true; +} + +static bool +_equalPathKey(const PathKey *a, const PathKey *b) +{ + COMPARE_SCALAR_FIELD(pk_eclass); + COMPARE_SCALAR_FIELD(pk_opfamily); + COMPARE_SCALAR_FIELD(pk_strategy); + COMPARE_SCALAR_FIELD(pk_nulls_first); + + return true; +} + +static bool +_equalRestrictInfo(const RestrictInfo *a, const RestrictInfo *b) +{ + COMPARE_NODE_FIELD(clause); + COMPARE_SCALAR_FIELD(is_pushed_down); + COMPARE_SCALAR_FIELD(has_clone); + COMPARE_SCALAR_FIELD(is_clone); + COMPARE_SCALAR_FIELD(security_level); + COMPARE_BITMAPSET_FIELD(required_relids); + COMPARE_BITMAPSET_FIELD(incompatible_relids); + COMPARE_BITMAPSET_FIELD(outer_relids); + COMPARE_SCALAR_FIELD(rinfo_serial); + + return true; +} + +static bool +_equalPlaceHolderVar(const PlaceHolderVar *a, const PlaceHolderVar *b) +{ + COMPARE_BITMAPSET_FIELD(phnullingrels); + COMPARE_SCALAR_FIELD(phid); + COMPARE_SCALAR_FIELD(phlevelsup); + + return true; +} + +static bool +_equalSpecialJoinInfo(const SpecialJoinInfo *a, const SpecialJoinInfo *b) +{ + COMPARE_BITMAPSET_FIELD(min_lefthand); + COMPARE_BITMAPSET_FIELD(min_righthand); + COMPARE_BITMAPSET_FIELD(syn_lefthand); + COMPARE_BITMAPSET_FIELD(syn_righthand); + COMPARE_SCALAR_FIELD(jointype); + COMPARE_SCALAR_FIELD(ojrelid); + COMPARE_BITMAPSET_FIELD(commute_above_l); + COMPARE_BITMAPSET_FIELD(commute_above_r); + COMPARE_BITMAPSET_FIELD(commute_below_l); + COMPARE_BITMAPSET_FIELD(commute_below_r); + COMPARE_SCALAR_FIELD(lhs_strict); + COMPARE_SCALAR_FIELD(semi_can_btree); + COMPARE_SCALAR_FIELD(semi_can_hash); + COMPARE_NODE_FIELD(semi_operators); + COMPARE_NODE_FIELD(semi_rhs_exprs); + + return true; +} + +static bool +_equalAppendRelInfo(const AppendRelInfo *a, const AppendRelInfo *b) +{ + COMPARE_SCALAR_FIELD(parent_relid); + COMPARE_SCALAR_FIELD(child_relid); + COMPARE_SCALAR_FIELD(parent_reltype); + COMPARE_SCALAR_FIELD(child_reltype); + COMPARE_NODE_FIELD(translated_vars); + COMPARE_SCALAR_FIELD(num_child_cols); + COMPARE_POINTER_FIELD(parent_colnos, a->num_child_cols * sizeof(AttrNumber)); + COMPARE_SCALAR_FIELD(parent_reloid); + + return true; +} + +static bool +_equalPlaceHolderInfo(const PlaceHolderInfo *a, const PlaceHolderInfo *b) +{ + COMPARE_SCALAR_FIELD(phid); + COMPARE_NODE_FIELD(ph_var); + COMPARE_BITMAPSET_FIELD(ph_eval_at); + COMPARE_BITMAPSET_FIELD(ph_lateral); + COMPARE_BITMAPSET_FIELD(ph_needed); + COMPARE_SCALAR_FIELD(ph_width); + + return true; +} + +static bool +_equalInteger(const Integer *a, const Integer *b) +{ + COMPARE_SCALAR_FIELD(ival); + + return true; +} + +static bool +_equalFloat(const Float *a, const Float *b) +{ + COMPARE_STRING_FIELD(fval); + + return true; +} + +static bool +_equalBoolean(const Boolean *a, const Boolean *b) +{ + COMPARE_SCALAR_FIELD(boolval); + + return true; +} + +static bool +_equalString(const String *a, const String *b) +{ + COMPARE_STRING_FIELD(sval); + + return true; +} + +static bool +_equalBitString(const BitString *a, const BitString *b) +{ + COMPARE_STRING_FIELD(bsval); + + return true; +} diff --git a/parser/include/storage/backendid.h b/parser/include/storage/backendid.h index 93d5b508..1e90b602 100644 --- a/parser/include/storage/backendid.h +++ b/parser/include/storage/backendid.h @@ -4,7 +4,7 @@ * POSTGRES backend id communication definitions * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/backendid.h diff --git a/parser/include/storage/block.h b/parser/include/storage/block.h index d756e3fd..31a036df 100644 --- a/parser/include/storage/block.h +++ b/parser/include/storage/block.h @@ -4,7 +4,7 @@ * POSTGRES disk block definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/block.h @@ -59,7 +59,7 @@ typedef struct BlockIdData typedef BlockIdData *BlockId; /* block identifier */ /* ---------------- - * support macros + * support functions * ---------------- */ @@ -67,49 +67,42 @@ typedef BlockIdData *BlockId; /* block identifier */ * BlockNumberIsValid * True iff blockNumber is valid. */ -#define BlockNumberIsValid(blockNumber) \ - ((BlockNumber) (blockNumber) != InvalidBlockNumber) - -/* - * BlockIdIsValid - * True iff the block identifier is valid. - */ -#define BlockIdIsValid(blockId) \ - PointerIsValid(blockId) +static inline bool +BlockNumberIsValid(BlockNumber blockNumber) +{ + return blockNumber != InvalidBlockNumber; +} /* * BlockIdSet * Sets a block identifier to the specified value. */ -#define BlockIdSet(blockId, blockNumber) \ -( \ - (blockId)->bi_hi = (blockNumber) >> 16, \ - (blockId)->bi_lo = (blockNumber) & 0xffff \ -) - -/* - * BlockIdCopy - * Copy a block identifier. - */ -#define BlockIdCopy(toBlockId, fromBlockId) \ -( \ - (toBlockId)->bi_hi = (fromBlockId)->bi_hi, \ - (toBlockId)->bi_lo = (fromBlockId)->bi_lo \ -) +static inline void +BlockIdSet(BlockIdData *blockId, BlockNumber blockNumber) +{ + blockId->bi_hi = blockNumber >> 16; + blockId->bi_lo = blockNumber & 0xffff; +} /* * BlockIdEquals * Check for block number equality. */ -#define BlockIdEquals(blockId1, blockId2) \ - ((blockId1)->bi_hi == (blockId2)->bi_hi && \ - (blockId1)->bi_lo == (blockId2)->bi_lo) +static inline bool +BlockIdEquals(const BlockIdData *blockId1, const BlockIdData *blockId2) +{ + return (blockId1->bi_hi == blockId2->bi_hi && + blockId1->bi_lo == blockId2->bi_lo); +} /* * BlockIdGetBlockNumber * Retrieve the block number from a block identifier. */ -#define BlockIdGetBlockNumber(blockId) \ - ((((BlockNumber) (blockId)->bi_hi) << 16) | ((BlockNumber) (blockId)->bi_lo)) +static inline BlockNumber +BlockIdGetBlockNumber(const BlockIdData *blockId) +{ + return (((BlockNumber) blockId->bi_hi) << 16) | ((BlockNumber) blockId->bi_lo); +} #endif /* BLOCK_H */ diff --git a/parser/include/storage/buf.h b/parser/include/storage/buf.h index aec01ca0..6520d9ae 100644 --- a/parser/include/storage/buf.h +++ b/parser/include/storage/buf.h @@ -4,7 +4,7 @@ * Basic buffer manager data types. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/buf.h diff --git a/parser/include/storage/bufmgr.h b/parser/include/storage/bufmgr.h index 58391406..b379c76e 100644 --- a/parser/include/storage/bufmgr.h +++ b/parser/include/storage/bufmgr.h @@ -4,7 +4,7 @@ * POSTGRES buffer manager definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/bufmgr.h @@ -17,13 +17,18 @@ #include "storage/block.h" #include "storage/buf.h" #include "storage/bufpage.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" #include "utils/relcache.h" #include "utils/snapmgr.h" typedef void *Block; -/* Possible arguments for GetAccessStrategy() */ +/* + * Possible arguments for GetAccessStrategy(). + * + * If adding a new BufferAccessStrategyType, also add a new IOContext so + * IO statistics using this strategy are tracked. + */ typedef enum BufferAccessStrategyType { BAS_NORMAL, /* Normal random access */ @@ -55,6 +60,53 @@ typedef struct PrefetchBufferResult bool initiated_io; /* If true, a miss resulting in async I/O */ } PrefetchBufferResult; +/* + * Flags influencing the behaviour of ExtendBufferedRel* + */ +typedef enum ExtendBufferedFlags +{ + /* + * Don't acquire extension lock. This is safe only if the relation isn't + * shared, an access exclusive lock is held or if this is the startup + * process. + */ + EB_SKIP_EXTENSION_LOCK = (1 << 0), + + /* Is this extension part of recovery? */ + EB_PERFORMING_RECOVERY = (1 << 1), + + /* + * Should the fork be created if it does not currently exist? This likely + * only ever makes sense for relation forks. + */ + EB_CREATE_FORK_IF_NEEDED = (1 << 2), + + /* Should the first (possibly only) return buffer be returned locked? */ + EB_LOCK_FIRST = (1 << 3), + + /* Should the smgr size cache be cleared? */ + EB_CLEAR_SIZE_CACHE = (1 << 4), + + /* internal flags follow */ + EB_LOCK_TARGET = (1 << 5), +} ExtendBufferedFlags; + +/* + * Some functions identify relations either by relation or smgr + + * relpersistence. Used via the BMR_REL()/BMR_SMGR() macros below. This + * allows us to use the same function for both recovery and normal operation. + */ +typedef struct BufferManagerRelation +{ + Relation rel; + struct SMgrRelationData *smgr; + char relpersistence; +} BufferManagerRelation; + +#define BMR_REL(p_rel) ((BufferManagerRelation){.rel = p_rel}) +#define BMR_SMGR(p_smgr, p_relpersistence) ((BufferManagerRelation){.smgr = p_smgr, .relpersistence = p_relpersistence}) + + /* forward declared, to avoid having to expose buf_internals.h here */ struct WritebackContext; @@ -69,6 +121,15 @@ extern PGDLLIMPORT bool zero_damaged_pages; extern PGDLLIMPORT int bgwriter_lru_maxpages; extern PGDLLIMPORT double bgwriter_lru_multiplier; extern PGDLLIMPORT bool track_io_timing; + +/* only applicable when prefetching is available */ +#ifdef USE_PREFETCH +#define DEFAULT_EFFECTIVE_IO_CONCURRENCY 1 +#define DEFAULT_MAINTENANCE_IO_CONCURRENCY 10 +#else +#define DEFAULT_EFFECTIVE_IO_CONCURRENCY 0 +#define DEFAULT_MAINTENANCE_IO_CONCURRENCY 0 +#endif extern PGDLLIMPORT int effective_io_concurrency; extern PGDLLIMPORT int maintenance_io_concurrency; @@ -97,76 +158,6 @@ extern PGDLLIMPORT int32 *LocalRefCount; #define BUFFER_LOCK_SHARE 1 #define BUFFER_LOCK_EXCLUSIVE 2 -/* - * These routines are beaten on quite heavily, hence the macroization. - */ - -/* - * BufferIsValid - * True iff the given buffer number is valid (either as a shared - * or local buffer). - * - * Note: For a long time this was defined the same as BufferIsPinned, - * that is it would say False if you didn't hold a pin on the buffer. - * I believe this was bogus and served only to mask logic errors. - * Code should always know whether it has a buffer reference, - * independently of the pin state. - * - * Note: For a further long time this was not quite the inverse of the - * BufferIsInvalid() macro, in that it also did sanity checks to verify - * that the buffer number was in range. Most likely, this macro was - * originally intended only to be used in assertions, but its use has - * since expanded quite a bit, and the overhead of making those checks - * even in non-assert-enabled builds can be significant. Thus, we've - * now demoted the range checks to assertions within the macro itself. - */ -#define BufferIsValid(bufnum) \ -( \ - AssertMacro((bufnum) <= NBuffers && (bufnum) >= -NLocBuffer), \ - (bufnum) != InvalidBuffer \ -) - -/* - * BufferGetBlock - * Returns a reference to a disk page image associated with a buffer. - * - * Note: - * Assumes buffer is valid. - */ -#define BufferGetBlock(buffer) \ -( \ - AssertMacro(BufferIsValid(buffer)), \ - BufferIsLocal(buffer) ? \ - LocalBufferBlockPointers[-(buffer) - 1] \ - : \ - (Block) (BufferBlocks + ((Size) ((buffer) - 1)) * BLCKSZ) \ -) - -/* - * BufferGetPageSize - * Returns the page size within a buffer. - * - * Notes: - * Assumes buffer is valid. - * - * The buffer can be a raw disk block and need not contain a valid - * (formatted) disk page. - */ -/* XXX should dig out of buffer descriptor */ -#define BufferGetPageSize(buffer) \ -( \ - AssertMacro(BufferIsValid(buffer)), \ - (Size)BLCKSZ \ -) - -/* - * BufferGetPage - * Returns the page associated with a buffer. - * - * When this is called as part of a scan, there may be a need for a nearby - * call to TestForOldSnapshot(). See the definition of that for details. - */ -#define BufferGetPage(buffer) ((Page)BufferGetBlock(buffer)) /* * prototypes for functions in bufmgr.c @@ -176,13 +167,13 @@ extern PrefetchBufferResult PrefetchSharedBuffer(struct SMgrRelationData *smgr_r BlockNumber blockNum); extern PrefetchBufferResult PrefetchBuffer(Relation reln, ForkNumber forkNum, BlockNumber blockNum); -extern bool ReadRecentBuffer(RelFileNode rnode, ForkNumber forkNum, +extern bool ReadRecentBuffer(RelFileLocator rlocator, ForkNumber forkNum, BlockNumber blockNum, Buffer recent_buffer); extern Buffer ReadBuffer(Relation reln, BlockNumber blockNum); extern Buffer ReadBufferExtended(Relation reln, ForkNumber forkNum, BlockNumber blockNum, ReadBufferMode mode, BufferAccessStrategy strategy); -extern Buffer ReadBufferWithoutRelcache(RelFileNode rnode, +extern Buffer ReadBufferWithoutRelcache(RelFileLocator rlocator, ForkNumber forkNum, BlockNumber blockNum, ReadBufferMode mode, BufferAccessStrategy strategy, bool permanent); @@ -190,10 +181,28 @@ extern void ReleaseBuffer(Buffer buffer); extern void UnlockReleaseBuffer(Buffer buffer); extern void MarkBufferDirty(Buffer buffer); extern void IncrBufferRefCount(Buffer buffer); +extern void CheckBufferIsPinnedOnce(Buffer buffer); extern Buffer ReleaseAndReadBuffer(Buffer buffer, Relation relation, BlockNumber blockNum); -extern void InitBufferPool(void); +extern Buffer ExtendBufferedRel(BufferManagerRelation bmr, + ForkNumber forkNum, + BufferAccessStrategy strategy, + uint32 flags); +extern BlockNumber ExtendBufferedRelBy(BufferManagerRelation bmr, + ForkNumber fork, + BufferAccessStrategy strategy, + uint32 flags, + uint32 extend_by, + Buffer *buffers, + uint32 *extended_by); +extern Buffer ExtendBufferedRelTo(BufferManagerRelation bmr, + ForkNumber fork, + BufferAccessStrategy strategy, + uint32 flags, + BlockNumber extend_to, + ReadBufferMode mode); + extern void InitBufferPoolAccess(void); extern void AtEOXact_Buffers(bool isCommit); extern void PrintBufferLeakWarning(Buffer buffer); @@ -204,13 +213,15 @@ extern BlockNumber RelationGetNumberOfBlocksInFork(Relation relation, extern void FlushOneBuffer(Buffer buffer); extern void FlushRelationBuffers(Relation rel); extern void FlushRelationsAllBuffers(struct SMgrRelationData **smgrs, int nrels); -extern void CreateAndCopyRelationData(RelFileNode src_rnode, - RelFileNode dst_rnode, +extern void CreateAndCopyRelationData(RelFileLocator src_rlocator, + RelFileLocator dst_rlocator, bool permanent); extern void FlushDatabaseBuffers(Oid dbid); -extern void DropRelFileNodeBuffers(struct SMgrRelationData *smgr_reln, ForkNumber *forkNum, - int nforks, BlockNumber *firstDelBlock); -extern void DropRelFileNodesAllBuffers(struct SMgrRelationData **smgr_reln, int nnodes); +extern void DropRelationBuffers(struct SMgrRelationData *smgr_reln, + ForkNumber *forkNum, + int nforks, BlockNumber *firstDelBlock); +extern void DropRelationsAllBuffers(struct SMgrRelationData **smgr_reln, + int nlocators); extern void DropDatabaseBuffers(Oid dbid); #define RelationGetNumberOfBlocks(reln) \ @@ -222,8 +233,7 @@ extern XLogRecPtr BufferGetLSNAtomic(Buffer buffer); #ifdef NOT_USED extern void PrintPinnedBufs(void); #endif -extern Size BufferShmemSize(void); -extern void BufferGetTag(Buffer buffer, RelFileNode *rnode, +extern void BufferGetTag(Buffer buffer, RelFileLocator *rlocator, ForkNumber *forknum, BlockNumber *blknum); extern void MarkBufferDirtyHint(Buffer buffer, bool buffer_std); @@ -236,17 +246,26 @@ extern bool ConditionalLockBufferForCleanup(Buffer buffer); extern bool IsBufferCleanupOK(Buffer buffer); extern bool HoldingBufferPinThatDelaysRecovery(void); -extern void AbortBufferIO(void); +extern void AbortBufferIO(Buffer buffer); -extern void BufmgrCommit(void); extern bool BgBufferSync(struct WritebackContext *wb_context); -extern void AtProcExit_LocalBuffers(void); - extern void TestForOldSnapshot_impl(Snapshot snapshot, Relation relation); +/* in buf_init.c */ +extern void InitBufferPool(void); +extern Size BufferShmemSize(void); + +/* in localbuf.c */ +extern void AtProcExit_LocalBuffers(void); + /* in freelist.c */ + extern BufferAccessStrategy GetAccessStrategy(BufferAccessStrategyType btype); +extern BufferAccessStrategy GetAccessStrategyWithSize(BufferAccessStrategyType btype, + int ring_size_kb); +extern int GetAccessStrategyBufferCount(BufferAccessStrategy strategy); + extern void FreeAccessStrategy(BufferAccessStrategy strategy); @@ -261,6 +280,83 @@ extern void FreeAccessStrategy(BufferAccessStrategy strategy); #ifndef FRONTEND +/* + * BufferIsValid + * True iff the given buffer number is valid (either as a shared + * or local buffer). + * + * Note: For a long time this was defined the same as BufferIsPinned, + * that is it would say False if you didn't hold a pin on the buffer. + * I believe this was bogus and served only to mask logic errors. + * Code should always know whether it has a buffer reference, + * independently of the pin state. + * + * Note: For a further long time this was not quite the inverse of the + * BufferIsInvalid() macro, in that it also did sanity checks to verify + * that the buffer number was in range. Most likely, this macro was + * originally intended only to be used in assertions, but its use has + * since expanded quite a bit, and the overhead of making those checks + * even in non-assert-enabled builds can be significant. Thus, we've + * now demoted the range checks to assertions within the macro itself. + */ +static inline bool +BufferIsValid(Buffer bufnum) +{ + Assert(bufnum <= NBuffers); + Assert(bufnum >= -NLocBuffer); + + return bufnum != InvalidBuffer; +} + +/* + * BufferGetBlock + * Returns a reference to a disk page image associated with a buffer. + * + * Note: + * Assumes buffer is valid. + */ +static inline Block +BufferGetBlock(Buffer buffer) +{ + Assert(BufferIsValid(buffer)); + + if (BufferIsLocal(buffer)) + return LocalBufferBlockPointers[-buffer - 1]; + else + return (Block) (BufferBlocks + ((Size) (buffer - 1)) * BLCKSZ); +} + +/* + * BufferGetPageSize + * Returns the page size within a buffer. + * + * Notes: + * Assumes buffer is valid. + * + * The buffer can be a raw disk block and need not contain a valid + * (formatted) disk page. + */ +/* XXX should dig out of buffer descriptor */ +static inline Size +BufferGetPageSize(Buffer buffer) +{ + AssertMacro(BufferIsValid(buffer)); + return (Size) BLCKSZ; +} + +/* + * BufferGetPage + * Returns the page associated with a buffer. + * + * When this is called as part of a scan, there may be a need for a nearby + * call to TestForOldSnapshot(). See the definition of that for details. + */ +static inline Page +BufferGetPage(Buffer buffer) +{ + return (Page) BufferGetBlock(buffer); +} + /* * Check whether the given snapshot is too old to have safely read the given * page from the given table. If so, throw a "snapshot too old" error. diff --git a/parser/include/storage/bufpage.h b/parser/include/storage/bufpage.h index e9f253f2..424ecba0 100644 --- a/parser/include/storage/bufpage.h +++ b/parser/include/storage/bufpage.h @@ -4,7 +4,7 @@ * Standard POSTGRES buffer page definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/bufpage.h @@ -97,8 +97,12 @@ typedef struct uint32 xrecoff; /* low bits */ } PageXLogRecPtr; -#define PageXLogRecPtrGet(val) \ - ((uint64) (val).xlogid << 32 | (val).xrecoff) +static inline XLogRecPtr +PageXLogRecPtrGet(PageXLogRecPtr val) +{ + return (uint64) val.xlogid << 32 | val.xrecoff; +} + #define PageXLogRecPtrSet(ptr, lsn) \ ((ptr).xlogid = (uint32) ((lsn) >> 32), (ptr).xrecoff = (uint32) (lsn)) @@ -200,16 +204,10 @@ typedef PageHeaderData *PageHeader; #define PG_DATA_CHECKSUM_VERSION 1 /* ---------------------------------------------------------------- - * page support macros + * page support functions * ---------------------------------------------------------------- */ -/* - * PageIsValid - * True iff page is valid. - */ -#define PageIsValid(page) PointerIsValid(page) - /* * line pointer(s) do not count as part of header */ @@ -219,21 +217,31 @@ typedef PageHeaderData *PageHeader; * PageIsEmpty * returns true iff no itemid has been allocated on the page */ -#define PageIsEmpty(page) \ - (((PageHeader) (page))->pd_lower <= SizeOfPageHeaderData) +static inline bool +PageIsEmpty(Page page) +{ + return ((PageHeader) page)->pd_lower <= SizeOfPageHeaderData; +} /* * PageIsNew * returns true iff page has not been initialized (by PageInit) */ -#define PageIsNew(page) (((PageHeader) (page))->pd_upper == 0) +static inline bool +PageIsNew(Page page) +{ + return ((PageHeader) page)->pd_upper == 0; +} /* * PageGetItemId * Returns an item identifier of a page. */ -#define PageGetItemId(page, offsetNumber) \ - ((ItemId) (&((PageHeader) (page))->pd_linp[(offsetNumber) - 1])) +static inline ItemId +PageGetItemId(Page page, OffsetNumber offsetNumber) +{ + return &((PageHeader) page)->pd_linp[offsetNumber - 1]; +} /* * PageGetContents @@ -243,20 +251,17 @@ typedef PageHeaderData *PageHeader; * Now it is. Beware of old code that might think the offset to the contents * is just SizeOfPageHeaderData rather than MAXALIGN(SizeOfPageHeaderData). */ -#define PageGetContents(page) \ - ((char *) (page) + MAXALIGN(SizeOfPageHeaderData)) +static inline char * +PageGetContents(Page page) +{ + return (char *) page + MAXALIGN(SizeOfPageHeaderData); +} /* ---------------- - * macros to access page size info + * functions to access page size info * ---------------- */ -/* - * PageSizeIsValid - * True iff the page size is valid. - */ -#define PageSizeIsValid(pageSize) ((pageSize) == BLCKSZ) - /* * PageGetPageSize * Returns the page size of a page. @@ -265,15 +270,21 @@ typedef PageHeaderData *PageHeader; * BufferGetPageSize, which can be called on an unformatted page). * however, it can be called on a page that is not stored in a buffer. */ -#define PageGetPageSize(page) \ - ((Size) (((PageHeader) (page))->pd_pagesize_version & (uint16) 0xFF00)) +static inline Size +PageGetPageSize(Page page) +{ + return (Size) (((PageHeader) page)->pd_pagesize_version & (uint16) 0xFF00); +} /* * PageGetPageLayoutVersion * Returns the page layout version of a page. */ -#define PageGetPageLayoutVersion(page) \ - (((PageHeader) (page))->pd_pagesize_version & 0x00FF) +static inline uint8 +PageGetPageLayoutVersion(Page page) +{ + return (((PageHeader) page)->pd_pagesize_version & 0x00FF); +} /* * PageSetPageSizeAndVersion @@ -282,52 +293,52 @@ typedef PageHeaderData *PageHeader; * We could support setting these two values separately, but there's * no real need for it at the moment. */ -#define PageSetPageSizeAndVersion(page, size, version) \ -( \ - AssertMacro(((size) & 0xFF00) == (size)), \ - AssertMacro(((version) & 0x00FF) == (version)), \ - ((PageHeader) (page))->pd_pagesize_version = (size) | (version) \ -) +static inline void +PageSetPageSizeAndVersion(Page page, Size size, uint8 version) +{ + Assert((size & 0xFF00) == size); + Assert((version & 0x00FF) == version); + + ((PageHeader) page)->pd_pagesize_version = size | version; +} /* ---------------- - * page special data macros + * page special data functions * ---------------- */ /* * PageGetSpecialSize * Returns size of special space on a page. */ -#define PageGetSpecialSize(page) \ - ((uint16) (PageGetPageSize(page) - ((PageHeader)(page))->pd_special)) +static inline uint16 +PageGetSpecialSize(Page page) +{ + return (PageGetPageSize(page) - ((PageHeader) page)->pd_special); +} /* * Using assertions, validate that the page special pointer is OK. * * This is intended to catch use of the pointer before page initialization. - * It is implemented as a function due to the limitations of the MSVC - * compiler, which choked on doing all these tests within another macro. We - * return true so that AssertMacro() can be used while still getting the - * specifics from the macro failure within this function. */ -static inline bool +static inline void PageValidateSpecialPointer(Page page) { - Assert(PageIsValid(page)); - Assert(((PageHeader) (page))->pd_special <= BLCKSZ); - Assert(((PageHeader) (page))->pd_special >= SizeOfPageHeaderData); - - return true; + Assert(page); + Assert(((PageHeader) page)->pd_special <= BLCKSZ); + Assert(((PageHeader) page)->pd_special >= SizeOfPageHeaderData); } /* * PageGetSpecialPointer * Returns pointer to special space on a page. */ -#define PageGetSpecialPointer(page) \ -( \ - AssertMacro(PageValidateSpecialPointer(page)), \ - (char *) ((char *) (page) + ((PageHeader) (page))->pd_special) \ -) +static inline char * +PageGetSpecialPointer(Page page) +{ + PageValidateSpecialPointer(page); + return (char *) page + ((PageHeader) page)->pd_special; +} /* * PageGetItem @@ -337,12 +348,14 @@ PageValidateSpecialPointer(Page page) * This does not change the status of any of the resources passed. * The semantics may change in the future. */ -#define PageGetItem(page, itemId) \ -( \ - AssertMacro(PageIsValid(page)), \ - AssertMacro(ItemIdHasStorage(itemId)), \ - (Item)(((char *)(page)) + ItemIdGetOffset(itemId)) \ -) +static inline Item +PageGetItem(Page page, ItemId itemId) +{ + Assert(page); + Assert(ItemIdHasStorage(itemId)); + + return (Item) (((char *) page) + ItemIdGetOffset(itemId)); +} /* * PageGetMaxOffsetNumber @@ -351,44 +364,84 @@ PageValidateSpecialPointer(Page page) * of items on the page. * * NOTE: if the page is not initialized (pd_lower == 0), we must - * return zero to ensure sane behavior. Accept double evaluation - * of the argument so that we can ensure this. + * return zero to ensure sane behavior. */ -#define PageGetMaxOffsetNumber(page) \ - (((PageHeader) (page))->pd_lower <= SizeOfPageHeaderData ? 0 : \ - ((((PageHeader) (page))->pd_lower - SizeOfPageHeaderData) \ - / sizeof(ItemIdData))) +static inline OffsetNumber +PageGetMaxOffsetNumber(Page page) +{ + PageHeader pageheader = (PageHeader) page; + + if (pageheader->pd_lower <= SizeOfPageHeaderData) + return 0; + else + return (pageheader->pd_lower - SizeOfPageHeaderData) / sizeof(ItemIdData); +} /* - * Additional macros for access to page headers. (Beware multiple evaluation - * of the arguments!) + * Additional functions for access to page headers. */ -#define PageGetLSN(page) \ - PageXLogRecPtrGet(((PageHeader) (page))->pd_lsn) -#define PageSetLSN(page, lsn) \ - PageXLogRecPtrSet(((PageHeader) (page))->pd_lsn, lsn) - -#define PageHasFreeLinePointers(page) \ - (((PageHeader) (page))->pd_flags & PD_HAS_FREE_LINES) -#define PageSetHasFreeLinePointers(page) \ - (((PageHeader) (page))->pd_flags |= PD_HAS_FREE_LINES) -#define PageClearHasFreeLinePointers(page) \ - (((PageHeader) (page))->pd_flags &= ~PD_HAS_FREE_LINES) - -#define PageIsFull(page) \ - (((PageHeader) (page))->pd_flags & PD_PAGE_FULL) -#define PageSetFull(page) \ - (((PageHeader) (page))->pd_flags |= PD_PAGE_FULL) -#define PageClearFull(page) \ - (((PageHeader) (page))->pd_flags &= ~PD_PAGE_FULL) - -#define PageIsAllVisible(page) \ - (((PageHeader) (page))->pd_flags & PD_ALL_VISIBLE) -#define PageSetAllVisible(page) \ - (((PageHeader) (page))->pd_flags |= PD_ALL_VISIBLE) -#define PageClearAllVisible(page) \ - (((PageHeader) (page))->pd_flags &= ~PD_ALL_VISIBLE) +static inline XLogRecPtr +PageGetLSN(Page page) +{ + return PageXLogRecPtrGet(((PageHeader) page)->pd_lsn); +} +static inline void +PageSetLSN(Page page, XLogRecPtr lsn) +{ + PageXLogRecPtrSet(((PageHeader) page)->pd_lsn, lsn); +} + +static inline bool +PageHasFreeLinePointers(Page page) +{ + return ((PageHeader) page)->pd_flags & PD_HAS_FREE_LINES; +} +static inline void +PageSetHasFreeLinePointers(Page page) +{ + ((PageHeader) page)->pd_flags |= PD_HAS_FREE_LINES; +} +static inline void +PageClearHasFreeLinePointers(Page page) +{ + ((PageHeader) page)->pd_flags &= ~PD_HAS_FREE_LINES; +} + +static inline bool +PageIsFull(Page page) +{ + return ((PageHeader) page)->pd_flags & PD_PAGE_FULL; +} +static inline void +PageSetFull(Page page) +{ + ((PageHeader) page)->pd_flags |= PD_PAGE_FULL; +} +static inline void +PageClearFull(Page page) +{ + ((PageHeader) page)->pd_flags &= ~PD_PAGE_FULL; +} +static inline bool +PageIsAllVisible(Page page) +{ + return ((PageHeader) page)->pd_flags & PD_ALL_VISIBLE; +} +static inline void +PageSetAllVisible(Page page) +{ + ((PageHeader) page)->pd_flags |= PD_ALL_VISIBLE; +} +static inline void +PageClearAllVisible(Page page) +{ + ((PageHeader) page)->pd_flags &= ~PD_ALL_VISIBLE; +} + +/* + * These two require "access/transam.h", so left as macros. + */ #define PageSetPrunable(page, xid) \ do { \ Assert(TransactionIdIsNormal(xid)); \ @@ -446,9 +499,9 @@ extern Size PageGetFreeSpace(Page page); extern Size PageGetFreeSpaceForMultipleTuples(Page page, int ntups); extern Size PageGetExactFreeSpace(Page page); extern Size PageGetHeapFreeSpace(Page page); -extern void PageIndexTupleDelete(Page page, OffsetNumber offset); +extern void PageIndexTupleDelete(Page page, OffsetNumber offnum); extern void PageIndexMultiDelete(Page page, OffsetNumber *itemnos, int nitems); -extern void PageIndexTupleDeleteNoCompact(Page page, OffsetNumber offset); +extern void PageIndexTupleDeleteNoCompact(Page page, OffsetNumber offnum); extern bool PageIndexTupleOverwrite(Page page, OffsetNumber offnum, Item newtup, Size newsize); extern char *PageSetChecksumCopy(Page page, BlockNumber blkno); diff --git a/parser/include/storage/condition_variable.h b/parser/include/storage/condition_variable.h index e89175eb..e218cb2c 100644 --- a/parser/include/storage/condition_variable.h +++ b/parser/include/storage/condition_variable.h @@ -12,7 +12,7 @@ * can be canceled prior to the fulfillment of the condition) and do not * use pointers internally (so that they are safe to use within DSMs). * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/condition_variable.h @@ -56,7 +56,7 @@ extern void ConditionVariableInit(ConditionVariable *cv); extern void ConditionVariableSleep(ConditionVariable *cv, uint32 wait_event_info); extern bool ConditionVariableTimedSleep(ConditionVariable *cv, long timeout, uint32 wait_event_info); -extern void ConditionVariableCancelSleep(void); +extern bool ConditionVariableCancelSleep(void); /* * Optionally, ConditionVariablePrepareToSleep can be called before entering diff --git a/parser/include/storage/dsm.h b/parser/include/storage/dsm.h index 4dd6af23..858bbf61 100644 --- a/parser/include/storage/dsm.h +++ b/parser/include/storage/dsm.h @@ -3,7 +3,7 @@ * dsm.h * manage dynamic shared memory segments * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/dsm.h @@ -19,9 +19,6 @@ typedef struct dsm_segment dsm_segment; #define DSM_CREATE_NULL_IF_MAXSEGMENTS 0x0001 -/* A sentinel value for an invalid DSM handle. */ -#define DSM_HANDLE_INVALID 0 - /* Startup and shutdown functions. */ struct PGShmemHeader; /* avoid including pg_shmem.h */ extern void dsm_cleanup_using_control_segment(dsm_handle old_control_handle); @@ -45,8 +42,8 @@ extern void dsm_detach(dsm_segment *seg); extern void dsm_pin_mapping(dsm_segment *seg); extern void dsm_unpin_mapping(dsm_segment *seg); extern void dsm_pin_segment(dsm_segment *seg); -extern void dsm_unpin_segment(dsm_handle h); -extern dsm_segment *dsm_find_mapping(dsm_handle h); +extern void dsm_unpin_segment(dsm_handle handle); +extern dsm_segment *dsm_find_mapping(dsm_handle handle); /* Informational functions. */ extern void *dsm_segment_address(dsm_segment *seg); diff --git a/parser/include/storage/dsm_impl.h b/parser/include/storage/dsm_impl.h index c51584dc..daf07bd1 100644 --- a/parser/include/storage/dsm_impl.h +++ b/parser/include/storage/dsm_impl.h @@ -3,7 +3,7 @@ * dsm_impl.h * low-level dynamic shared memory primitives * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/dsm_impl.h @@ -54,6 +54,9 @@ extern PGDLLIMPORT int min_dynamic_shared_memory; /* A "name" for a dynamic shared memory segment. */ typedef uint32 dsm_handle; +/* Sentinel value to use for invalid DSM handles. */ +#define DSM_HANDLE_INVALID ((dsm_handle) 0) + /* All the shared-memory operations we know about. */ typedef enum { diff --git a/parser/include/storage/fd.h b/parser/include/storage/fd.h index 69549b00..6791a406 100644 --- a/parser/include/storage/fd.h +++ b/parser/include/storage/fd.h @@ -4,7 +4,7 @@ * Virtual file descriptor definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/fd.h @@ -44,6 +44,7 @@ #define FD_H #include +#include typedef enum RecoveryInitSyncMethod { @@ -51,15 +52,19 @@ typedef enum RecoveryInitSyncMethod RECOVERY_INIT_SYNC_METHOD_SYNCFS } RecoveryInitSyncMethod; -struct iovec; /* avoid including port/pg_iovec.h here */ - typedef int File; +#define IO_DIRECT_DATA 0x01 +#define IO_DIRECT_WAL 0x02 +#define IO_DIRECT_WAL_INIT 0x04 + + /* GUC parameter */ extern PGDLLIMPORT int max_files_per_process; extern PGDLLIMPORT bool data_sync_retry; extern PGDLLIMPORT int recovery_init_sync_method; +extern PGDLLIMPORT int io_direct_flags; /* * This is private to fd.c, but exported for save/restore_backend_variables() @@ -84,9 +89,10 @@ extern PGDLLIMPORT int max_safe_fds; * to the appropriate Windows flag in src/port/open.c. We simulate it with * fcntl(F_NOCACHE) on macOS inside fd.c's open() wrapper. We use the name * PG_O_DIRECT rather than defining O_DIRECT in that case (probably not a good - * idea on a Unix). + * idea on a Unix). We can only use it if the compiler will correctly align + * PGIOAlignedBlock for us, though. */ -#if defined(O_DIRECT) +#if defined(O_DIRECT) && defined(pg_attribute_aligned) #define PG_O_DIRECT O_DIRECT #elif defined(F_NOCACHE) #define PG_O_DIRECT 0x80000000 @@ -104,10 +110,13 @@ extern File PathNameOpenFile(const char *fileName, int fileFlags); extern File PathNameOpenFilePerm(const char *fileName, int fileFlags, mode_t fileMode); extern File OpenTemporaryFile(bool interXact); extern void FileClose(File file); -extern int FilePrefetch(File file, off_t offset, int amount, uint32 wait_event_info); -extern int FileRead(File file, char *buffer, int amount, off_t offset, uint32 wait_event_info); -extern int FileWrite(File file, char *buffer, int amount, off_t offset, uint32 wait_event_info); +extern int FilePrefetch(File file, off_t offset, off_t amount, uint32 wait_event_info); +extern int FileRead(File file, void *buffer, size_t amount, off_t offset, uint32 wait_event_info); +extern int FileWrite(File file, const void *buffer, size_t amount, off_t offset, uint32 wait_event_info); extern int FileSync(File file, uint32 wait_event_info); +extern int FileZero(File file, off_t offset, off_t amount, uint32 wait_event_info); +extern int FileFallocate(File file, off_t offset, off_t amount, uint32 wait_event_info); + extern off_t FileSize(File file); extern int FileTruncate(File file, off_t offset, uint32 wait_event_info); extern void FileWriteback(File file, off_t offset, off_t nbytes, uint32 wait_event_info); @@ -117,11 +126,11 @@ extern int FileGetRawFlags(File file); extern mode_t FileGetRawMode(File file); /* Operations used for sharing named temporary files */ -extern File PathNameCreateTemporaryFile(const char *name, bool error_on_failure); +extern File PathNameCreateTemporaryFile(const char *path, bool error_on_failure); extern File PathNameOpenTemporaryFile(const char *path, int mode); -extern bool PathNameDeleteTemporaryFile(const char *name, bool error_on_failure); -extern void PathNameCreateTemporaryDir(const char *base, const char *name); -extern void PathNameDeleteTemporaryDir(const char *name); +extern bool PathNameDeleteTemporaryFile(const char *path, bool error_on_failure); +extern void PathNameCreateTemporaryDir(const char *basedir, const char *directory); +extern void PathNameDeleteTemporaryDir(const char *dirname); extern void TempTablespacePath(char *path, Oid tablespace); /* Operations that allow use of regular stdio --- USE WITH CAUTION */ @@ -177,17 +186,12 @@ extern int pg_fsync(int fd); extern int pg_fsync_no_writethrough(int fd); extern int pg_fsync_writethrough(int fd); extern int pg_fdatasync(int fd); -extern void pg_flush_data(int fd, off_t offset, off_t amount); -extern ssize_t pg_pwritev_with_retry(int fd, - const struct iovec *iov, - int iovcnt, - off_t offset); +extern void pg_flush_data(int fd, off_t offset, off_t nbytes); extern int pg_truncate(const char *path, off_t length); extern void fsync_fname(const char *fname, bool isdir); extern int fsync_fname_ext(const char *fname, bool isdir, bool ignore_perm, int elevel); -extern int durable_rename(const char *oldfile, const char *newfile, int loglevel); -extern int durable_unlink(const char *fname, int loglevel); -extern int durable_rename_excl(const char *oldfile, const char *newfile, int loglevel); +extern int durable_rename(const char *oldfile, const char *newfile, int elevel); +extern int durable_unlink(const char *fname, int elevel); extern void SyncDataDirectory(void); extern int data_sync_elevel(int elevel); diff --git a/parser/include/storage/fileset.h b/parser/include/storage/fileset.h index ad378847..9aa6581d 100644 --- a/parser/include/storage/fileset.h +++ b/parser/include/storage/fileset.h @@ -3,7 +3,7 @@ * fileset.h * Management of named temporary files. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/fileset.h diff --git a/parser/include/storage/ipc.h b/parser/include/storage/ipc.h index 43843618..53714afd 100644 --- a/parser/include/storage/ipc.h +++ b/parser/include/storage/ipc.h @@ -8,7 +8,7 @@ * exit-time cleanup for either a postmaster or a backend. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/ipc.h diff --git a/parser/include/storage/item.h b/parser/include/storage/item.h index 6f3eaebc..56d59a70 100644 --- a/parser/include/storage/item.h +++ b/parser/include/storage/item.h @@ -4,7 +4,7 @@ * POSTGRES disk item definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/item.h diff --git a/parser/include/storage/itemid.h b/parser/include/storage/itemid.h index e33637ff..e5cfb8c3 100644 --- a/parser/include/storage/itemid.h +++ b/parser/include/storage/itemid.h @@ -4,7 +4,7 @@ * Standard POSTGRES buffer page item identifier/line pointer definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/itemid.h diff --git a/parser/include/storage/itemptr.h b/parser/include/storage/itemptr.h index 81947bc6..fafefa14 100644 --- a/parser/include/storage/itemptr.h +++ b/parser/include/storage/itemptr.h @@ -4,7 +4,7 @@ * POSTGRES disk item pointer definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/itemptr.h @@ -71,7 +71,7 @@ typedef ItemPointerData *ItemPointer; /* ---------------- - * support macros + * support functions * ---------------- */ @@ -79,77 +79,87 @@ typedef ItemPointerData *ItemPointer; * ItemPointerIsValid * True iff the disk item pointer is not NULL. */ -#define ItemPointerIsValid(pointer) \ - ((bool) (PointerIsValid(pointer) && ((pointer)->ip_posid != 0))) +static inline bool +ItemPointerIsValid(const ItemPointerData *pointer) +{ + return PointerIsValid(pointer) && pointer->ip_posid != 0; +} /* * ItemPointerGetBlockNumberNoCheck * Returns the block number of a disk item pointer. */ -#define ItemPointerGetBlockNumberNoCheck(pointer) \ -( \ - BlockIdGetBlockNumber(&(pointer)->ip_blkid) \ -) +static inline BlockNumber +ItemPointerGetBlockNumberNoCheck(const ItemPointerData *pointer) +{ + return BlockIdGetBlockNumber(&pointer->ip_blkid); +} /* * ItemPointerGetBlockNumber * As above, but verifies that the item pointer looks valid. */ -#define ItemPointerGetBlockNumber(pointer) \ -( \ - AssertMacro(ItemPointerIsValid(pointer)), \ - ItemPointerGetBlockNumberNoCheck(pointer) \ -) +static inline BlockNumber +ItemPointerGetBlockNumber(const ItemPointerData *pointer) +{ + Assert(ItemPointerIsValid(pointer)); + return ItemPointerGetBlockNumberNoCheck(pointer); +} /* * ItemPointerGetOffsetNumberNoCheck * Returns the offset number of a disk item pointer. */ -#define ItemPointerGetOffsetNumberNoCheck(pointer) \ -( \ - (pointer)->ip_posid \ -) +static inline OffsetNumber +ItemPointerGetOffsetNumberNoCheck(const ItemPointerData *pointer) +{ + return pointer->ip_posid; +} /* * ItemPointerGetOffsetNumber * As above, but verifies that the item pointer looks valid. */ -#define ItemPointerGetOffsetNumber(pointer) \ -( \ - AssertMacro(ItemPointerIsValid(pointer)), \ - ItemPointerGetOffsetNumberNoCheck(pointer) \ -) +static inline OffsetNumber +ItemPointerGetOffsetNumber(const ItemPointerData *pointer) +{ + Assert(ItemPointerIsValid(pointer)); + return ItemPointerGetOffsetNumberNoCheck(pointer); +} /* * ItemPointerSet * Sets a disk item pointer to the specified block and offset. */ -#define ItemPointerSet(pointer, blockNumber, offNum) \ -( \ - AssertMacro(PointerIsValid(pointer)), \ - BlockIdSet(&((pointer)->ip_blkid), blockNumber), \ - (pointer)->ip_posid = offNum \ -) +static inline void +ItemPointerSet(ItemPointerData *pointer, BlockNumber blockNumber, OffsetNumber offNum) +{ + Assert(PointerIsValid(pointer)); + BlockIdSet(&pointer->ip_blkid, blockNumber); + pointer->ip_posid = offNum; +} /* * ItemPointerSetBlockNumber * Sets a disk item pointer to the specified block. */ -#define ItemPointerSetBlockNumber(pointer, blockNumber) \ -( \ - AssertMacro(PointerIsValid(pointer)), \ - BlockIdSet(&((pointer)->ip_blkid), blockNumber) \ -) +static inline void +ItemPointerSetBlockNumber(ItemPointerData *pointer, BlockNumber blockNumber) +{ + Assert(PointerIsValid(pointer)); + BlockIdSet(&pointer->ip_blkid, blockNumber); +} /* * ItemPointerSetOffsetNumber * Sets a disk item pointer to the specified offset. */ -#define ItemPointerSetOffsetNumber(pointer, offsetNumber) \ -( \ - AssertMacro(PointerIsValid(pointer)), \ - (pointer)->ip_posid = (offsetNumber) \ -) +static inline void +ItemPointerSetOffsetNumber(ItemPointerData *pointer, OffsetNumber offsetNumber) +{ + Assert(PointerIsValid(pointer)); + pointer->ip_posid = offsetNumber; +} /* * ItemPointerCopy @@ -158,42 +168,49 @@ typedef ItemPointerData *ItemPointer; * Should there ever be padding in an ItemPointer this would need to be handled * differently as it's used as hash key. */ -#define ItemPointerCopy(fromPointer, toPointer) \ -( \ - AssertMacro(PointerIsValid(toPointer)), \ - AssertMacro(PointerIsValid(fromPointer)), \ - *(toPointer) = *(fromPointer) \ -) +static inline void +ItemPointerCopy(const ItemPointerData *fromPointer, ItemPointerData *toPointer) +{ + Assert(PointerIsValid(toPointer)); + Assert(PointerIsValid(fromPointer)); + *toPointer = *fromPointer; +} /* * ItemPointerSetInvalid * Sets a disk item pointer to be invalid. */ -#define ItemPointerSetInvalid(pointer) \ -( \ - AssertMacro(PointerIsValid(pointer)), \ - BlockIdSet(&((pointer)->ip_blkid), InvalidBlockNumber), \ - (pointer)->ip_posid = InvalidOffsetNumber \ -) +static inline void +ItemPointerSetInvalid(ItemPointerData *pointer) +{ + Assert(PointerIsValid(pointer)); + BlockIdSet(&pointer->ip_blkid, InvalidBlockNumber); + pointer->ip_posid = InvalidOffsetNumber; +} /* * ItemPointerIndicatesMovedPartitions * True iff the block number indicates the tuple has moved to another * partition. */ -#define ItemPointerIndicatesMovedPartitions(pointer) \ -( \ - ItemPointerGetOffsetNumber(pointer) == MovedPartitionsOffsetNumber && \ - ItemPointerGetBlockNumberNoCheck(pointer) == MovedPartitionsBlockNumber \ -) +static inline bool +ItemPointerIndicatesMovedPartitions(const ItemPointerData *pointer) +{ + return + ItemPointerGetOffsetNumber(pointer) == MovedPartitionsOffsetNumber && + ItemPointerGetBlockNumberNoCheck(pointer) == MovedPartitionsBlockNumber; +} /* * ItemPointerSetMovedPartitions * Indicate that the item referenced by the itempointer has moved into a * different partition. */ -#define ItemPointerSetMovedPartitions(pointer) \ - ItemPointerSet((pointer), MovedPartitionsBlockNumber, MovedPartitionsOffsetNumber) +static inline void +ItemPointerSetMovedPartitions(ItemPointerData *pointer) +{ + ItemPointerSet(pointer, MovedPartitionsBlockNumber, MovedPartitionsOffsetNumber); +} /* ---------------- * externs @@ -205,4 +222,24 @@ extern int32 ItemPointerCompare(ItemPointer arg1, ItemPointer arg2); extern void ItemPointerInc(ItemPointer pointer); extern void ItemPointerDec(ItemPointer pointer); +/* ---------------- + * Datum conversion functions + * ---------------- + */ + +static inline ItemPointer +DatumGetItemPointer(Datum X) +{ + return (ItemPointer) DatumGetPointer(X); +} + +static inline Datum +ItemPointerGetDatum(const ItemPointerData *X) +{ + return PointerGetDatum(X); +} + +#define PG_GETARG_ITEMPOINTER(n) DatumGetItemPointer(PG_GETARG_DATUM(n)) +#define PG_RETURN_ITEMPOINTER(x) return ItemPointerGetDatum(x) + #endif /* ITEMPTR_H */ diff --git a/parser/include/storage/large_object.h b/parser/include/storage/large_object.h index b826a7dc..db521f23 100644 --- a/parser/include/storage/large_object.h +++ b/parser/include/storage/large_object.h @@ -5,7 +5,7 @@ * zillions of large objects (internal, external, jaquith, inversion). * Now we only support inversion. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/large_object.h diff --git a/parser/include/storage/latch.h b/parser/include/storage/latch.h index 68ab740f..99cc4787 100644 --- a/parser/include/storage/latch.h +++ b/parser/include/storage/latch.h @@ -90,7 +90,7 @@ * efficient than using WaitLatch or WaitLatchOrSocket. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/latch.h @@ -135,9 +135,16 @@ typedef struct Latch #define WL_SOCKET_CONNECTED WL_SOCKET_WRITEABLE #endif #define WL_SOCKET_CLOSED (1 << 7) +#ifdef WIN32 +#define WL_SOCKET_ACCEPT (1 << 8) +#else +/* avoid having to deal with case on platforms not requiring it */ +#define WL_SOCKET_ACCEPT WL_SOCKET_READABLE +#endif #define WL_SOCKET_MASK (WL_SOCKET_READABLE | \ WL_SOCKET_WRITEABLE | \ WL_SOCKET_CONNECTED | \ + WL_SOCKET_ACCEPT | \ WL_SOCKET_CLOSED) typedef struct WaitEvent @@ -168,6 +175,7 @@ extern void ShutdownLatchSupport(void); extern WaitEventSet *CreateWaitEventSet(MemoryContext context, int nevents); extern void FreeWaitEventSet(WaitEventSet *set); +extern void FreeWaitEventSetAfterFork(WaitEventSet *set); extern int AddWaitEventToSet(WaitEventSet *set, uint32 events, pgsocket fd, Latch *latch, void *user_data); extern void ModifyWaitEvent(WaitEventSet *set, int pos, uint32 events, Latch *latch); diff --git a/parser/include/storage/lmgr.h b/parser/include/storage/lmgr.h index be1d2c99..4ee91e3c 100644 --- a/parser/include/storage/lmgr.h +++ b/parser/include/storage/lmgr.h @@ -4,7 +4,7 @@ * POSTGRES lock manager definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/lmgr.h @@ -107,6 +107,11 @@ extern void LockSharedObjectForSession(Oid classid, Oid objid, uint16 objsubid, extern void UnlockSharedObjectForSession(Oid classid, Oid objid, uint16 objsubid, LOCKMODE lockmode); +extern void LockApplyTransactionForSession(Oid suboid, TransactionId xid, uint16 objid, + LOCKMODE lockmode); +extern void UnlockApplyTransactionForSession(Oid suboid, TransactionId xid, uint16 objid, + LOCKMODE lockmode); + /* Describe a locktag for error messages */ extern void DescribeLockTag(StringInfo buf, const LOCKTAG *tag); diff --git a/parser/include/storage/lock.h b/parser/include/storage/lock.h index e4e1495b..8575bea2 100644 --- a/parser/include/storage/lock.h +++ b/parser/include/storage/lock.h @@ -4,7 +4,7 @@ * POSTGRES low-level lock mechanism * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/lock.h @@ -18,6 +18,7 @@ #error "lock.h may not be included from frontend code" #endif +#include "lib/ilist.h" #include "storage/backendid.h" #include "storage/lockdefs.h" #include "storage/lwlock.h" @@ -27,12 +28,6 @@ /* struct PGPROC is declared in proc.h, but must forward-reference it */ typedef struct PGPROC PGPROC; -typedef struct PROC_QUEUE -{ - SHM_QUEUE links; /* head of list of PGPROC objects */ - int size; /* number of entries in list */ -} PROC_QUEUE; - /* GUC variables */ extern PGDLLIMPORT int max_locks_per_xact; @@ -149,10 +144,12 @@ typedef enum LockTagType LOCKTAG_SPECULATIVE_TOKEN, /* speculative insertion Xid and token */ LOCKTAG_OBJECT, /* non-relation database object */ LOCKTAG_USERLOCK, /* reserved for old contrib/userlock code */ - LOCKTAG_ADVISORY /* advisory user locks */ + LOCKTAG_ADVISORY, /* advisory user locks */ + LOCKTAG_APPLY_TRANSACTION /* transaction being applied on a logical + * replication subscriber */ } LockTagType; -#define LOCKTAG_LAST_TYPE LOCKTAG_ADVISORY +#define LOCKTAG_LAST_TYPE LOCKTAG_APPLY_TRANSACTION extern PGDLLIMPORT const char *const LockTagTypeNames[]; @@ -278,6 +275,17 @@ typedef struct LOCKTAG (locktag).locktag_type = LOCKTAG_ADVISORY, \ (locktag).locktag_lockmethodid = USER_LOCKMETHOD) +/* + * ID info for a remote transaction on a logical replication subscriber is: DB + * OID + SUBSCRIPTION OID + TRANSACTION ID + OBJID + */ +#define SET_LOCKTAG_APPLY_TRANSACTION(locktag,dboid,suboid,xid,objid) \ + ((locktag).locktag_field1 = (dboid), \ + (locktag).locktag_field2 = (suboid), \ + (locktag).locktag_field3 = (xid), \ + (locktag).locktag_field4 = (objid), \ + (locktag).locktag_type = LOCKTAG_APPLY_TRANSACTION, \ + (locktag).locktag_lockmethodid = DEFAULT_LOCKMETHOD) /* * Per-locked-object lock information: @@ -305,8 +313,8 @@ typedef struct LOCK /* data */ LOCKMASK grantMask; /* bitmask for lock types already granted */ LOCKMASK waitMask; /* bitmask for lock types awaited */ - SHM_QUEUE procLocks; /* list of PROCLOCK objects assoc. with lock */ - PROC_QUEUE waitProcs; /* list of PGPROC objects waiting on lock */ + dlist_head procLocks; /* list of PROCLOCK objects assoc. with lock */ + dclist_head waitProcs; /* list of PGPROC objects waiting on lock */ int requested[MAX_LOCKMODES]; /* counts of requested locks */ int nRequested; /* total of requested[] array */ int granted[MAX_LOCKMODES]; /* counts of granted locks */ @@ -367,8 +375,8 @@ typedef struct PROCLOCK PGPROC *groupLeader; /* proc's lock group leader, or proc itself */ LOCKMASK holdMask; /* bitmask for lock types currently held */ LOCKMASK releaseMask; /* bitmask for lock types to be released */ - SHM_QUEUE lockLink; /* list link in LOCK's list of proclocks */ - SHM_QUEUE procLink; /* list link in PGPROC's list of proclocks */ + dlist_node lockLink; /* list link in LOCK's list of proclocks */ + dlist_node procLink; /* list link in PGPROC's list of proclocks */ } PROCLOCK; #define PROCLOCK_LOCKMETHOD(proclock) \ diff --git a/parser/include/storage/lockdefs.h b/parser/include/storage/lockdefs.h index 350ddd4d..e25216e0 100644 --- a/parser/include/storage/lockdefs.h +++ b/parser/include/storage/lockdefs.h @@ -7,7 +7,7 @@ * contains definition that have to (indirectly) be available when included by * FRONTEND code. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/lockdefs.h @@ -36,8 +36,8 @@ typedef int LOCKMODE; #define AccessShareLock 1 /* SELECT */ #define RowShareLock 2 /* SELECT FOR UPDATE/FOR SHARE */ #define RowExclusiveLock 3 /* INSERT, UPDATE, DELETE */ -#define ShareUpdateExclusiveLock 4 /* VACUUM (non-FULL),ANALYZE, CREATE INDEX - * CONCURRENTLY */ +#define ShareUpdateExclusiveLock 4 /* VACUUM (non-FULL), ANALYZE, CREATE + * INDEX CONCURRENTLY */ #define ShareLock 5 /* CREATE INDEX (WITHOUT CONCURRENTLY) */ #define ShareRowExclusiveLock 6 /* like EXCLUSIVE MODE, but allows ROW * SHARE */ diff --git a/parser/include/storage/lwlock.h b/parser/include/storage/lwlock.h index e03d317e..34169e58 100644 --- a/parser/include/storage/lwlock.h +++ b/parser/include/storage/lwlock.h @@ -4,7 +4,7 @@ * Lightweight lock manager * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/lwlock.h @@ -23,6 +23,15 @@ struct PGPROC; +/* what state of the wait process is a backend in */ +typedef enum LWLockWaitState +{ + LW_WS_NOT_WAITING, /* not currently waiting / woken up */ + LW_WS_WAITING, /* currently waiting */ + LW_WS_PENDING_WAKEUP, /* removed from waitlist, but not yet + * signalled */ +} LWLockWaitState; + /* * Code outside of lwlock.c should not manipulate the contents of this * structure directly, but we have to declare it here to allow LWLocks to be @@ -51,6 +60,9 @@ typedef struct LWLock */ #define LWLOCK_PADDED_SIZE PG_CACHE_LINE_SIZE +StaticAssertDecl(sizeof(LWLock) <= LWLOCK_PADDED_SIZE, + "Miscalculated LWLock padding"); + /* LWLock, padded to a full cache line size */ typedef union LWLockPadded { @@ -124,7 +136,7 @@ extern bool LWLockAnyHeldByMe(LWLock *lock, int nlocks, size_t stride); extern bool LWLockHeldByMeInMode(LWLock *lock, LWLockMode mode); extern bool LWLockWaitForVar(LWLock *lock, uint64 *valptr, uint64 oldval, uint64 *newval); -extern void LWLockUpdateVar(LWLock *lock, uint64 *valptr, uint64 value); +extern void LWLockUpdateVar(LWLock *lock, uint64 *valptr, uint64 val); extern Size LWLockShmemSize(void); extern void CreateLWLocks(void); @@ -193,6 +205,8 @@ typedef enum BuiltinTrancheIds LWTRANCHE_PGSTATS_DSA, LWTRANCHE_PGSTATS_HASH, LWTRANCHE_PGSTATS_DATA, + LWTRANCHE_LAUNCHER_DSA, + LWTRANCHE_LAUNCHER_HASH, LWTRANCHE_FIRST_USER_DEFINED } BuiltinTrancheIds; diff --git a/parser/include/storage/off.h b/parser/include/storage/off.h index e6573aca..35403080 100644 --- a/parser/include/storage/off.h +++ b/parser/include/storage/off.h @@ -4,7 +4,7 @@ * POSTGRES disk "offset" definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/off.h diff --git a/parser/include/storage/pg_sema.h b/parser/include/storage/pg_sema.h index 5ca941ae..3bf03420 100644 --- a/parser/include/storage/pg_sema.h +++ b/parser/include/storage/pg_sema.h @@ -10,7 +10,7 @@ * be provided by each port. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/pg_sema.h diff --git a/parser/include/storage/pg_shmem.h b/parser/include/storage/pg_shmem.h index da5962ed..4dd05f15 100644 --- a/parser/include/storage/pg_shmem.h +++ b/parser/include/storage/pg_shmem.h @@ -14,7 +14,7 @@ * only one ID number. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/pg_shmem.h diff --git a/parser/include/storage/pmsignal.h b/parser/include/storage/pmsignal.h index 58f4ddf4..92dc7646 100644 --- a/parser/include/storage/pmsignal.h +++ b/parser/include/storage/pmsignal.h @@ -4,7 +4,7 @@ * routines for signaling between the postmaster and its child processes * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/pmsignal.h diff --git a/parser/include/storage/predicate.h b/parser/include/storage/predicate.h index 8dfcb394..cd48afa1 100644 --- a/parser/include/storage/predicate.h +++ b/parser/include/storage/predicate.h @@ -4,7 +4,7 @@ * POSTGRES public predicate locking definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/predicate.h @@ -58,7 +58,7 @@ extern void RegisterPredicateLockingXid(TransactionId xid); extern void PredicateLockRelation(Relation relation, Snapshot snapshot); extern void PredicateLockPage(Relation relation, BlockNumber blkno, Snapshot snapshot); extern void PredicateLockTID(Relation relation, ItemPointer tid, Snapshot snapshot, - TransactionId insert_xid); + TransactionId tuple_xid); extern void PredicateLockPageSplit(Relation relation, BlockNumber oldblkno, BlockNumber newblkno); extern void PredicateLockPageCombine(Relation relation, BlockNumber oldblkno, BlockNumber newblkno); extern void TransferPredicateLocksToHeapRelation(Relation relation); diff --git a/parser/include/storage/proc.h b/parser/include/storage/proc.h index 2579e619..ef74f326 100644 --- a/parser/include/storage/proc.h +++ b/parser/include/storage/proc.h @@ -4,7 +4,7 @@ * per-process shared memory data structures * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/proc.h @@ -32,6 +32,8 @@ * If none of the caches have overflowed, we can assume that an XID that's not * listed anywhere in the PGPROC array is not a running transaction. Else we * have to look at pg_subtrans. + * + * See src/test/isolation/specs/subxid-overflow.spec if you change this. */ #define PGPROC_MAX_CACHED_SUBXIDS 64 /* XXX guessed-at value */ @@ -89,7 +91,7 @@ struct XidCache #define INVALID_PGPROCNO PG_INT32_MAX /* - * Flags for PGPROC.delayChkpt + * Flags for PGPROC.delayChkptFlags * * These flags can be used to delay the start or completion of a checkpoint * for short periods. A flag is in effect if the corresponding bit is set in @@ -116,7 +118,7 @@ struct XidCache * to phase 3. This is useful if we are performing a WAL-logged operation that * might invalidate buffers, such as relation truncation. In this case, we need * to ensure that any buffers which were invalidated and thus not flushed by - * the checkpoint are actaully destroyed on disk. Replay can cope with a file + * the checkpoint are actually destroyed on disk. Replay can cope with a file * or block that doesn't exist, but not with a block that has the wrong * contents. */ @@ -147,7 +149,7 @@ typedef enum * but its myProcLocks[] lists are valid. * * We allow many fields of this struct to be accessed without locks, such as - * delayChkpt and isBackgroundWorker. However, keep in mind that writing + * delayChkptFlags and isBackgroundWorker. However, keep in mind that writing * mirrored ones (see below) requires holding ProcArrayLock or XidGenLock in * at least shared mode, so that pgxactoff does not change concurrently. * @@ -165,8 +167,8 @@ typedef enum struct PGPROC { /* proc->links MUST BE FIRST IN STRUCT (see ProcSleep,ProcWakeup,etc) */ - SHM_QUEUE links; /* list link if process is in a list */ - PGPROC **procgloballist; /* procglobal list that owns this PGPROC */ + dlist_node links; /* list link if process is in a list */ + dlist_head *procgloballist; /* procglobal list that owns this PGPROC */ PGSemaphore sem; /* ONE semaphore to sleep on */ ProcWaitStatus waitStatus; @@ -191,7 +193,11 @@ struct PGPROC int pgxactoff; /* offset into various ProcGlobal->arrays with * data mirrored from this PGPROC */ - int pgprocno; + + int pgprocno; /* Number of this PGPROC in + * ProcGlobal->allProcs array. This is set + * once by InitProcGlobal(). + * ProcGlobal->allProcs[n].pgprocno == n */ /* These fields are zero while a backend is still starting up: */ BackendId backendId; /* This backend's backend ID (if assigned) */ @@ -211,7 +217,7 @@ struct PGPROC bool recoveryConflictPending; /* Info about LWLock the process is currently waiting for, if any. */ - bool lwWaiting; /* true if waiting for an LW lock */ + uint8 lwWaiting; /* see LWLockWaitState */ uint8 lwWaitMode; /* lwlock mode being waited for */ proclist_node lwWaitLink; /* position in LW lock wait list */ @@ -242,14 +248,14 @@ struct PGPROC */ XLogRecPtr waitLSN; /* waiting for this LSN or higher */ int syncRepState; /* wait state for sync rep */ - SHM_QUEUE syncRepLinks; /* list link if process is in syncrep queue */ + dlist_node syncRepLinks; /* list link if process is in syncrep queue */ /* * All PROCLOCK objects for locks held or awaited by this backend are * linked into one of these lists, according to the partition number of * their lock. */ - SHM_QUEUE myProcLocks[NUM_LOCK_PARTITIONS]; + dlist_head myProcLocks[NUM_LOCK_PARTITIONS]; XidCacheStatus subxidStatus; /* mirrored with * ProcGlobal->subxidStates[i] */ @@ -379,13 +385,13 @@ typedef struct PROC_HDR /* Length of allProcs array */ uint32 allProcCount; /* Head of list of free PGPROC structures */ - PGPROC *freeProcs; + dlist_head freeProcs; /* Head of list of autovacuum's free PGPROC structures */ - PGPROC *autovacFreeProcs; + dlist_head autovacFreeProcs; /* Head of list of bgworker free PGPROC structures */ - PGPROC *bgworkerFreeProcs; + dlist_head bgworkerFreeProcs; /* Head of list of walsender free PGPROC structures */ - PGPROC *walsenderFreeProcs; + dlist_head walsenderFreeProcs; /* First pgproc waiting for group XID clear */ pg_atomic_uint32 procArrayGroupFirst; /* First pgproc waiting for group transaction status update */ @@ -439,12 +445,11 @@ extern void InitAuxiliaryProcess(void); extern void SetStartupBufferPinWaitBufId(int bufid); extern int GetStartupBufferPinWaitBufId(void); -extern bool HaveNFreeProcs(int n); +extern bool HaveNFreeProcs(int n, int *nfree); extern void ProcReleaseLocks(bool isCommit); -extern void ProcQueueInit(PROC_QUEUE *queue); extern ProcWaitStatus ProcSleep(LOCALLOCK *locallock, LockMethod lockMethodTable); -extern PGPROC *ProcWakeup(PGPROC *proc, ProcWaitStatus waitStatus); +extern void ProcWakeup(PGPROC *proc, ProcWaitStatus waitStatus); extern void ProcLockWakeup(LockMethod lockMethodTable, LOCK *lock); extern void CheckDeadLockAlert(void); extern bool IsWaitingForLock(void); diff --git a/parser/include/storage/procarray.h b/parser/include/storage/procarray.h index 1b2cfac5..d8cae3ce 100644 --- a/parser/include/storage/procarray.h +++ b/parser/include/storage/procarray.h @@ -4,7 +4,7 @@ * POSTGRES process array definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/procarray.h @@ -39,6 +39,7 @@ extern void ExpireTreeKnownAssignedTransactionIds(TransactionId xid, TransactionId max_xid); extern void ExpireAllKnownAssignedTransactionIds(void); extern void ExpireOldKnownAssignedTransactionIds(TransactionId xid); +extern void KnownAssignedTransactionIdsIdleMaintenance(void); extern int GetMaxSnapshotXidCount(void); extern int GetMaxSnapshotSubxidCount(void); @@ -57,7 +58,7 @@ extern TransactionId GetOldestNonRemovableTransactionId(Relation rel); extern TransactionId GetOldestTransactionIdConsideredRunning(void); extern TransactionId GetOldestActiveTransactionId(void); extern TransactionId GetOldestSafeDecodingTransactionId(bool catalogOnly); -extern void GetReplicationHorizons(TransactionId *slot_xmin, TransactionId *catalog_xmin); +extern void GetReplicationHorizons(TransactionId *xmin, TransactionId *catalog_xmin); extern VirtualTransactionId *GetVirtualXIDsDelayingChkpt(int *nvxids, int type); extern bool HaveVirtualXIDsDelayingChkpt(VirtualTransactionId *vxids, diff --git a/parser/include/storage/proclist_types.h b/parser/include/storage/proclist_types.h index 52326794..526c3ea6 100644 --- a/parser/include/storage/proclist_types.h +++ b/parser/include/storage/proclist_types.h @@ -5,7 +5,7 @@ * * See proclist.h for functions that operate on these types. * - * Portions Copyright (c) 2016-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2016-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/include/storage/proclist_types.h diff --git a/parser/include/storage/procsignal.h b/parser/include/storage/procsignal.h index ee636900..2f52100b 100644 --- a/parser/include/storage/procsignal.h +++ b/parser/include/storage/procsignal.h @@ -4,7 +4,7 @@ * Routines for interprocess signaling * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/procsignal.h @@ -35,12 +35,14 @@ typedef enum PROCSIG_WALSND_INIT_STOPPING, /* ask walsenders to prepare for shutdown */ PROCSIG_BARRIER, /* global barrier interrupt */ PROCSIG_LOG_MEMORY_CONTEXT, /* ask backend to log the memory contexts */ + PROCSIG_PARALLEL_APPLY_MESSAGE, /* Message from parallel apply workers */ /* Recovery conflict reasons */ PROCSIG_RECOVERY_CONFLICT_DATABASE, PROCSIG_RECOVERY_CONFLICT_TABLESPACE, PROCSIG_RECOVERY_CONFLICT_LOCK, PROCSIG_RECOVERY_CONFLICT_SNAPSHOT, + PROCSIG_RECOVERY_CONFLICT_LOGICALSLOT, PROCSIG_RECOVERY_CONFLICT_BUFFERPIN, PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK, diff --git a/parser/include/storage/relfilelocator.h b/parser/include/storage/relfilelocator.h new file mode 100644 index 00000000..61cf0169 --- /dev/null +++ b/parser/include/storage/relfilelocator.h @@ -0,0 +1,99 @@ +/*------------------------------------------------------------------------- + * + * relfilelocator.h + * Physical access information for relations. + * + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/storage/relfilelocator.h + * + *------------------------------------------------------------------------- + */ +#ifndef RELFILELOCATOR_H +#define RELFILELOCATOR_H + +#include "common/relpath.h" +#include "storage/backendid.h" + +/* + * RelFileLocator must provide all that we need to know to physically access + * a relation, with the exception of the backend ID, which can be provided + * separately. Note, however, that a "physical" relation is comprised of + * multiple files on the filesystem, as each fork is stored as a separate + * file, and each fork can be divided into multiple segments. See md.c. + * + * spcOid identifies the tablespace of the relation. It corresponds to + * pg_tablespace.oid. + * + * dbOid identifies the database of the relation. It is zero for + * "shared" relations (those common to all databases of a cluster). + * Nonzero dbOid values correspond to pg_database.oid. + * + * relNumber identifies the specific relation. relNumber corresponds to + * pg_class.relfilenode (NOT pg_class.oid, because we need to be able + * to assign new physical files to relations in some situations). + * Notice that relNumber is only unique within a database in a particular + * tablespace. + * + * Note: spcOid must be GLOBALTABLESPACE_OID if and only if dbOid is + * zero. We support shared relations only in the "global" tablespace. + * + * Note: in pg_class we allow reltablespace == 0 to denote that the + * relation is stored in its database's "default" tablespace (as + * identified by pg_database.dattablespace). However this shorthand + * is NOT allowed in RelFileLocator structs --- the real tablespace ID + * must be supplied when setting spcOid. + * + * Note: in pg_class, relfilenode can be zero to denote that the relation + * is a "mapped" relation, whose current true filenode number is available + * from relmapper.c. Again, this case is NOT allowed in RelFileLocators. + * + * Note: various places use RelFileLocator in hashtable keys. Therefore, + * there *must not* be any unused padding bytes in this struct. That + * should be safe as long as all the fields are of type Oid. + */ +typedef struct RelFileLocator +{ + Oid spcOid; /* tablespace */ + Oid dbOid; /* database */ + RelFileNumber relNumber; /* relation */ +} RelFileLocator; + +/* + * Augmenting a relfilelocator with the backend ID provides all the information + * we need to locate the physical storage. The backend ID is InvalidBackendId + * for regular relations (those accessible to more than one backend), or the + * owning backend's ID for backend-local relations. Backend-local relations + * are always transient and removed in case of a database crash; they are + * never WAL-logged or fsync'd. + */ +typedef struct RelFileLocatorBackend +{ + RelFileLocator locator; + BackendId backend; +} RelFileLocatorBackend; + +#define RelFileLocatorBackendIsTemp(rlocator) \ + ((rlocator).backend != InvalidBackendId) + +/* + * Note: RelFileLocatorEquals and RelFileLocatorBackendEquals compare relNumber + * first since that is most likely to be different in two unequal + * RelFileLocators. It is probably redundant to compare spcOid if the other + * fields are found equal, but do it anyway to be sure. Likewise for checking + * the backend ID in RelFileLocatorBackendEquals. + */ +#define RelFileLocatorEquals(locator1, locator2) \ + ((locator1).relNumber == (locator2).relNumber && \ + (locator1).dbOid == (locator2).dbOid && \ + (locator1).spcOid == (locator2).spcOid) + +#define RelFileLocatorBackendEquals(locator1, locator2) \ + ((locator1).locator.relNumber == (locator2).locator.relNumber && \ + (locator1).locator.dbOid == (locator2).locator.dbOid && \ + (locator1).backend == (locator2).backend && \ + (locator1).locator.spcOid == (locator2).locator.spcOid) + +#endif /* RELFILELOCATOR_H */ diff --git a/parser/include/storage/relfilenode.h b/parser/include/storage/relfilenode.h deleted file mode 100644 index 4fdc606c..00000000 --- a/parser/include/storage/relfilenode.h +++ /dev/null @@ -1,99 +0,0 @@ -/*------------------------------------------------------------------------- - * - * relfilenode.h - * Physical access information for relations. - * - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * src/include/storage/relfilenode.h - * - *------------------------------------------------------------------------- - */ -#ifndef RELFILENODE_H -#define RELFILENODE_H - -#include "common/relpath.h" -#include "storage/backendid.h" - -/* - * RelFileNode must provide all that we need to know to physically access - * a relation, with the exception of the backend ID, which can be provided - * separately. Note, however, that a "physical" relation is comprised of - * multiple files on the filesystem, as each fork is stored as a separate - * file, and each fork can be divided into multiple segments. See md.c. - * - * spcNode identifies the tablespace of the relation. It corresponds to - * pg_tablespace.oid. - * - * dbNode identifies the database of the relation. It is zero for - * "shared" relations (those common to all databases of a cluster). - * Nonzero dbNode values correspond to pg_database.oid. - * - * relNode identifies the specific relation. relNode corresponds to - * pg_class.relfilenode (NOT pg_class.oid, because we need to be able - * to assign new physical files to relations in some situations). - * Notice that relNode is only unique within a database in a particular - * tablespace. - * - * Note: spcNode must be GLOBALTABLESPACE_OID if and only if dbNode is - * zero. We support shared relations only in the "global" tablespace. - * - * Note: in pg_class we allow reltablespace == 0 to denote that the - * relation is stored in its database's "default" tablespace (as - * identified by pg_database.dattablespace). However this shorthand - * is NOT allowed in RelFileNode structs --- the real tablespace ID - * must be supplied when setting spcNode. - * - * Note: in pg_class, relfilenode can be zero to denote that the relation - * is a "mapped" relation, whose current true filenode number is available - * from relmapper.c. Again, this case is NOT allowed in RelFileNodes. - * - * Note: various places use RelFileNode in hashtable keys. Therefore, - * there *must not* be any unused padding bytes in this struct. That - * should be safe as long as all the fields are of type Oid. - */ -typedef struct RelFileNode -{ - Oid spcNode; /* tablespace */ - Oid dbNode; /* database */ - Oid relNode; /* relation */ -} RelFileNode; - -/* - * Augmenting a relfilenode with the backend ID provides all the information - * we need to locate the physical storage. The backend ID is InvalidBackendId - * for regular relations (those accessible to more than one backend), or the - * owning backend's ID for backend-local relations. Backend-local relations - * are always transient and removed in case of a database crash; they are - * never WAL-logged or fsync'd. - */ -typedef struct RelFileNodeBackend -{ - RelFileNode node; - BackendId backend; -} RelFileNodeBackend; - -#define RelFileNodeBackendIsTemp(rnode) \ - ((rnode).backend != InvalidBackendId) - -/* - * Note: RelFileNodeEquals and RelFileNodeBackendEquals compare relNode first - * since that is most likely to be different in two unequal RelFileNodes. It - * is probably redundant to compare spcNode if the other fields are found equal, - * but do it anyway to be sure. Likewise for checking the backend ID in - * RelFileNodeBackendEquals. - */ -#define RelFileNodeEquals(node1, node2) \ - ((node1).relNode == (node2).relNode && \ - (node1).dbNode == (node2).dbNode && \ - (node1).spcNode == (node2).spcNode) - -#define RelFileNodeBackendEquals(node1, node2) \ - ((node1).node.relNode == (node2).node.relNode && \ - (node1).node.dbNode == (node2).node.dbNode && \ - (node1).backend == (node2).backend && \ - (node1).node.spcNode == (node2).node.spcNode) - -#endif /* RELFILENODE_H */ diff --git a/parser/include/storage/s_lock.h b/parser/include/storage/s_lock.h index 4d3ffc76..c9fa84cc 100644 --- a/parser/include/storage/s_lock.h +++ b/parser/include/storage/s_lock.h @@ -86,7 +86,7 @@ * when using the SysV semaphore code. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/s_lock.h @@ -142,7 +142,7 @@ typedef unsigned char slock_t; static __inline__ int tas(volatile slock_t *lock) { - register slock_t _res = 1; + slock_t _res = 1; /* * Use a non-locking test before asserting the bus lock. Note that the @@ -223,7 +223,7 @@ typedef unsigned char slock_t; static __inline__ int tas(volatile slock_t *lock) { - register slock_t _res = 1; + slock_t _res = 1; __asm__ __volatile__( " lock \n" @@ -250,78 +250,13 @@ spin_delay(void) #endif /* __x86_64__ */ -#if defined(__ia64__) || defined(__ia64) -/* - * Intel Itanium, gcc or Intel's compiler. - * - * Itanium has weak memory ordering, but we rely on the compiler to enforce - * strict ordering of accesses to volatile data. In particular, while the - * xchg instruction implicitly acts as a memory barrier with 'acquire' - * semantics, we do not have an explicit memory fence instruction in the - * S_UNLOCK macro. We use a regular assignment to clear the spinlock, and - * trust that the compiler marks the generated store instruction with the - * ".rel" opcode. - * - * Testing shows that assumption to hold on gcc, although I could not find - * any explicit statement on that in the gcc manual. In Intel's compiler, - * the -m[no-]serialize-volatile option controls that, and testing shows that - * it is enabled by default. - * - * While icc accepts gcc asm blocks on x86[_64], this is not true on ia64 - * (at least not in icc versions before 12.x). So we have to carry a separate - * compiler-intrinsic-based implementation for it. - */ -#define HAS_TEST_AND_SET - -typedef unsigned int slock_t; - -#define TAS(lock) tas(lock) - -/* On IA64, it's a win to use a non-locking test before the xchg proper */ -#define TAS_SPIN(lock) (*(lock) ? 1 : TAS(lock)) - -#ifndef __INTEL_COMPILER - -static __inline__ int -tas(volatile slock_t *lock) -{ - long int ret; - - __asm__ __volatile__( - " xchg4 %0=%1,%2 \n" -: "=r"(ret), "+m"(*lock) -: "r"(1) -: "memory"); - return (int) ret; -} - -#else /* __INTEL_COMPILER */ - -static __inline__ int -tas(volatile slock_t *lock) -{ - int ret; - - ret = _InterlockedExchange(lock,1); /* this is a xchg asm macro */ - - return ret; -} - -/* icc can't use the regular gcc S_UNLOCK() macro either in this case */ -#define S_UNLOCK(lock) \ - do { __memory_barrier(); *(lock) = 0; } while (0) - -#endif /* __INTEL_COMPILER */ -#endif /* __ia64__ || __ia64 */ - - /* * On ARM and ARM64, we use __sync_lock_test_and_set(int *, int) if available. * * We use the int-width variant of the builtin because it works on more chips * than other widths. */ -#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) +#if defined(__arm__) || defined(__arm) || defined(__aarch64__) #ifdef HAVE_GCC__SYNC_INT32_TAS #define HAS_TEST_AND_SET @@ -342,7 +277,7 @@ tas(volatile slock_t *lock) * high-core-count ARM64 processors. It seems mostly a wash for smaller gear, * and ISB doesn't exist at all on pre-v7 ARM chips. */ -#if defined(__aarch64__) || defined(__aarch64) +#if defined(__aarch64__) #define SPIN_DELAY() spin_delay() @@ -353,9 +288,9 @@ spin_delay(void) " isb; \n"); } -#endif /* __aarch64__ || __aarch64 */ +#endif /* __aarch64__ */ #endif /* HAVE_GCC__SYNC_INT32_TAS */ -#endif /* __arm__ || __arm || __aarch64__ || __aarch64 */ +#endif /* __arm__ || __arm || __aarch64__ */ /* S/390 and S/390x Linux (32- and 64-bit zSeries) */ @@ -386,7 +321,7 @@ tas(volatile slock_t *lock) /* * Solaris has always run sparc processors in TSO (total store) mode, but * linux didn't use to and the *BSDs still don't. So, be careful about - * acquire/release semantics. The CPU will treat superfluous membars as + * acquire/release semantics. The CPU will treat superfluous members as * NOPs, so it's just code space. */ #define HAS_TEST_AND_SET @@ -398,7 +333,7 @@ typedef unsigned char slock_t; static __inline__ int tas(volatile slock_t *lock) { - register slock_t _res; + slock_t _res; /* * See comment in src/backend/port/tas/sunstudio_sparc.s for why this @@ -477,7 +412,8 @@ typedef unsigned int slock_t; * * NOTE: per the Enhanced PowerPC Architecture manual, v1.0 dated 7-May-2002, * an isync is a sufficient synchronization barrier after a lwarx/stwcx loop. - * On newer machines, we can use lwsync instead for better performance. + * But if the spinlock is in ordinary memory, we can use lwsync instead for + * better performance. * * Ordinarily, we'd code the branches here using GNU-style local symbols, that * is "1f" referencing "1:" and so on. But some people run gcc on AIX with @@ -492,23 +428,15 @@ tas(volatile slock_t *lock) int _res; __asm__ __volatile__( -#ifdef USE_PPC_LWARX_MUTEX_HINT " lwarx %0,0,%3,1 \n" -#else -" lwarx %0,0,%3 \n" -#endif " cmpwi %0,0 \n" " bne $+16 \n" /* branch to li %1,1 */ " addi %0,%0,1 \n" " stwcx. %0,0,%3 \n" -" beq $+12 \n" /* branch to lwsync/isync */ +" beq $+12 \n" /* branch to lwsync */ " li %1,1 \n" " b $+12 \n" /* branch to end of asm sequence */ -#ifdef USE_PPC_LWSYNC " lwsync \n" -#else -" isync \n" -#endif " li %1,0 \n" : "=&b"(_t), "=r"(_res), "+m"(*lock) @@ -519,107 +447,18 @@ tas(volatile slock_t *lock) /* * PowerPC S_UNLOCK is almost standard but requires a "sync" instruction. - * On newer machines, we can use lwsync instead for better performance. + * But we can use lwsync instead for better performance. */ -#ifdef USE_PPC_LWSYNC #define S_UNLOCK(lock) \ do \ { \ __asm__ __volatile__ (" lwsync \n" ::: "memory"); \ *((volatile slock_t *) (lock)) = 0; \ } while (0) -#else -#define S_UNLOCK(lock) \ -do \ -{ \ - __asm__ __volatile__ (" sync \n" ::: "memory"); \ - *((volatile slock_t *) (lock)) = 0; \ -} while (0) -#endif /* USE_PPC_LWSYNC */ #endif /* powerpc */ -/* Linux Motorola 68k */ -#if (defined(__mc68000__) || defined(__m68k__)) && defined(__linux__) -#define HAS_TEST_AND_SET - -typedef unsigned char slock_t; - -#define TAS(lock) tas(lock) - -static __inline__ int -tas(volatile slock_t *lock) -{ - register int rv; - - __asm__ __volatile__( - " clrl %0 \n" - " tas %1 \n" - " sne %0 \n" -: "=d"(rv), "+m"(*lock) -: /* no inputs */ -: "memory", "cc"); - return rv; -} - -#endif /* (__mc68000__ || __m68k__) && __linux__ */ - - -/* Motorola 88k */ -#if defined(__m88k__) -#define HAS_TEST_AND_SET - -typedef unsigned int slock_t; - -#define TAS(lock) tas(lock) - -static __inline__ int -tas(volatile slock_t *lock) -{ - register slock_t _res = 1; - - __asm__ __volatile__( - " xmem %0, %2, %%r0 \n" -: "+r"(_res), "+m"(*lock) -: "r"(lock) -: "memory"); - return (int) _res; -} - -#endif /* __m88k__ */ - - -/* - * VAXen -- even multiprocessor ones - * (thanks to Tom Ivar Helbekkmo) - */ -#if defined(__vax__) -#define HAS_TEST_AND_SET - -typedef unsigned char slock_t; - -#define TAS(lock) tas(lock) - -static __inline__ int -tas(volatile slock_t *lock) -{ - register int _res; - - __asm__ __volatile__( - " movl $1, %0 \n" - " bbssi $0, (%2), 1f \n" - " clrl %0 \n" - "1: \n" -: "=&r"(_res), "+m"(*lock) -: "r"(lock) -: "memory"); - return _res; -} - -#endif /* __vax__ */ - - #if defined(__mips__) && !defined(__sgi) /* non-SGI MIPS */ #define HAS_TEST_AND_SET @@ -649,9 +488,9 @@ typedef unsigned int slock_t; static __inline__ int tas(volatile slock_t *lock) { - register volatile slock_t *_l = lock; - register int _res; - register int _tmp; + volatile slock_t *_l = lock; + int _res; + int _tmp; __asm__ __volatile__( " .set push \n" @@ -691,56 +530,70 @@ do \ #endif /* __mips__ && !__sgi */ -#if defined(__m32r__) && defined(HAVE_SYS_TAS_H) /* Renesas' M32R */ -#define HAS_TEST_AND_SET - -#include - -typedef int slock_t; - -#define TAS(lock) tas(lock) - -#endif /* __m32r__ */ - - -#if defined(__sh__) /* Renesas' SuperH */ +#if defined(__hppa) || defined(__hppa__) /* HP PA-RISC */ +/* + * HP's PA-RISC + * + * Because LDCWX requires a 16-byte-aligned address, we declare slock_t as a + * 16-byte struct. The active word in the struct is whichever has the aligned + * address; the other three words just sit at -1. + */ #define HAS_TEST_AND_SET -typedef unsigned char slock_t; +typedef struct +{ + int sema[4]; +} slock_t; -#define TAS(lock) tas(lock) +#define TAS_ACTIVE_WORD(lock) ((volatile int *) (((uintptr_t) (lock) + 15) & ~15)) static __inline__ int tas(volatile slock_t *lock) { - register int _res; + volatile int *lockword = TAS_ACTIVE_WORD(lock); + int lockval; /* - * This asm is coded as if %0 could be any register, but actually SuperH - * restricts the target of xor-immediate to be R0. That's handled by - * the "z" constraint on _res. + * The LDCWX instruction atomically clears the target word and + * returns the previous value. Hence, if the instruction returns + * 0, someone else has already acquired the lock before we tested + * it (i.e., we have failed). + * + * Notice that this means that we actually clear the word to set + * the lock and set the word to clear the lock. This is the + * opposite behavior from the SPARC LDSTUB instruction. For some + * reason everything that H-P does is rather baroque... + * + * For details about the LDCWX instruction, see the "Precision + * Architecture and Instruction Reference Manual" (09740-90014 of June + * 1987), p. 5-38. */ __asm__ __volatile__( - " tas.b @%2 \n" - " movt %0 \n" - " xor #1,%0 \n" -: "=z"(_res), "+m"(*lock) -: "r"(lock) -: "memory", "t"); - return _res; + " ldcwx 0(0,%2),%0 \n" +: "=r"(lockval), "+m"(*lockword) +: "r"(lockword) +: "memory"); + return (lockval == 0); } -#endif /* __sh__ */ - - -/* These live in s_lock.c, but only for gcc */ +#define S_UNLOCK(lock) \ + do { \ + __asm__ __volatile__("" : : : "memory"); \ + *TAS_ACTIVE_WORD(lock) = -1; \ + } while (0) +#define S_INIT_LOCK(lock) \ + do { \ + volatile slock_t *lock_ = (lock); \ + lock_->sema[0] = -1; \ + lock_->sema[1] = -1; \ + lock_->sema[2] = -1; \ + lock_->sema[3] = -1; \ + } while (0) -#if defined(__m68k__) && !defined(__linux__) /* non-Linux Motorola 68k */ -#define HAS_TEST_AND_SET +#define S_LOCK_FREE(lock) (*TAS_ACTIVE_WORD(lock) != 0) -typedef unsigned char slock_t; -#endif +#endif /* __hppa || __hppa__ */ /* @@ -805,7 +658,6 @@ tas(volatile slock_t *lock) #endif /* defined(__GNUC__) || defined(__INTEL_COMPILER) */ - /* * --------------------------------------------------------------------- * Platforms that use non-gcc inline assembly: @@ -814,101 +666,6 @@ tas(volatile slock_t *lock) #if !defined(HAS_TEST_AND_SET) /* We didn't trigger above, let's try here */ - -#if defined(__hppa) || defined(__hppa__) /* HP PA-RISC, GCC and HP compilers */ -/* - * HP's PA-RISC - * - * See src/backend/port/hpux/tas.c.template for details about LDCWX. Because - * LDCWX requires a 16-byte-aligned address, we declare slock_t as a 16-byte - * struct. The active word in the struct is whichever has the aligned address; - * the other three words just sit at -1. - * - * When using gcc, we can inline the required assembly code. - */ -#define HAS_TEST_AND_SET - -typedef struct -{ - int sema[4]; -} slock_t; - -#define TAS_ACTIVE_WORD(lock) ((volatile int *) (((uintptr_t) (lock) + 15) & ~15)) - -#if defined(__GNUC__) - -static __inline__ int -tas(volatile slock_t *lock) -{ - volatile int *lockword = TAS_ACTIVE_WORD(lock); - register int lockval; - - __asm__ __volatile__( - " ldcwx 0(0,%2),%0 \n" -: "=r"(lockval), "+m"(*lockword) -: "r"(lockword) -: "memory"); - return (lockval == 0); -} - -/* - * The hppa implementation doesn't follow the rules of this files and provides - * a gcc specific implementation outside of the above defined(__GNUC__). It - * does so to avoid duplication between the HP compiler and gcc. So undefine - * the generic fallback S_UNLOCK from above. - */ -#ifdef S_UNLOCK -#undef S_UNLOCK -#endif -#define S_UNLOCK(lock) \ - do { \ - __asm__ __volatile__("" : : : "memory"); \ - *TAS_ACTIVE_WORD(lock) = -1; \ - } while (0) - -#endif /* __GNUC__ */ - -#define S_INIT_LOCK(lock) \ - do { \ - volatile slock_t *lock_ = (lock); \ - lock_->sema[0] = -1; \ - lock_->sema[1] = -1; \ - lock_->sema[2] = -1; \ - lock_->sema[3] = -1; \ - } while (0) - -#define S_LOCK_FREE(lock) (*TAS_ACTIVE_WORD(lock) != 0) - -#endif /* __hppa || __hppa__ */ - - -#if defined(__hpux) && defined(__ia64) && !defined(__GNUC__) -/* - * HP-UX on Itanium, non-gcc/icc compiler - * - * We assume that the compiler enforces strict ordering of loads/stores on - * volatile data (see comments on the gcc-version earlier in this file). - * Note that this assumption does *not* hold if you use the - * +Ovolatile=__unordered option on the HP-UX compiler, so don't do that. - * - * See also Implementing Spinlocks on the Intel Itanium Architecture and - * PA-RISC, by Tor Ekqvist and David Graves, for more information. As of - * this writing, version 1.0 of the manual is available at: - * http://h21007.www2.hp.com/portal/download/files/unprot/itanium/spinlocks.pdf - */ -#define HAS_TEST_AND_SET - -typedef unsigned int slock_t; - -#include -#define TAS(lock) _Asm_xchg(_SZ_W, lock, 1, _LDHINT_NONE) -/* On IA64, it's a win to use a non-locking test before the xchg proper */ -#define TAS_SPIN(lock) (*(lock) ? 1 : TAS(lock)) -#define S_UNLOCK(lock) \ - do { _Asm_mf(); (*(lock)) = 0; } while (0) - -#endif /* HPUX on IA64, non gcc/icc */ - #if defined(_AIX) /* AIX */ /* * AIX (POWER) @@ -1016,7 +773,7 @@ extern int tas_sema(volatile slock_t *lock); #if !defined(S_LOCK) #define S_LOCK(lock) \ - (TAS(lock) ? s_lock((lock), __FILE__, __LINE__, PG_FUNCNAME_MACRO) : 0) + (TAS(lock) ? s_lock((lock), __FILE__, __LINE__, __func__) : 0) #endif /* S_LOCK */ #if !defined(S_LOCK_FREE) @@ -1103,7 +860,7 @@ init_spin_delay(SpinDelayStatus *status, status->func = func; } -#define init_local_spin_delay(status) init_spin_delay(status, __FILE__, __LINE__, PG_FUNCNAME_MACRO) +#define init_local_spin_delay(status) init_spin_delay(status, __FILE__, __LINE__, __func__) extern void perform_spin_delay(SpinDelayStatus *status); extern void finish_spin_delay(SpinDelayStatus *status); diff --git a/parser/include/storage/sharedfileset.h b/parser/include/storage/sharedfileset.h index b1cde36d..aa6f97f8 100644 --- a/parser/include/storage/sharedfileset.h +++ b/parser/include/storage/sharedfileset.h @@ -4,7 +4,7 @@ * Shared temporary file management. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/sharedfileset.h diff --git a/parser/include/storage/shm_mq.h b/parser/include/storage/shm_mq.h index b6fe6872..2e04e418 100644 --- a/parser/include/storage/shm_mq.h +++ b/parser/include/storage/shm_mq.h @@ -3,7 +3,7 @@ * shm_mq.h * single-reader, single-writer shared memory message queue * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/shm_mq.h diff --git a/parser/include/storage/shm_toc.h b/parser/include/storage/shm_toc.h index 153a57cf..7a2f8e99 100644 --- a/parser/include/storage/shm_toc.h +++ b/parser/include/storage/shm_toc.h @@ -12,7 +12,7 @@ * other data structure within the segment and only put the pointer to * the data structure itself in the table of contents. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/shm_toc.h diff --git a/parser/include/storage/shmem.h b/parser/include/storage/shmem.h index de9e7c6e..0e1fb200 100644 --- a/parser/include/storage/shmem.h +++ b/parser/include/storage/shmem.h @@ -11,7 +11,7 @@ * at the same address. This means shared memory pointers can be passed * around directly between different processes. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/shmem.h @@ -24,13 +24,6 @@ #include "utils/hsearch.h" -/* shmqueue.c */ -typedef struct SHM_QUEUE -{ - struct SHM_QUEUE *prev; - struct SHM_QUEUE *next; -} SHM_QUEUE; - /* shmem.c */ extern void InitShmemAccess(void *seghdr); extern void InitShmemAllocation(void); @@ -63,19 +56,4 @@ typedef struct Size allocated_size; /* # bytes actually allocated */ } ShmemIndexEnt; -/* - * prototypes for functions in shmqueue.c - */ -extern void SHMQueueInit(SHM_QUEUE *queue); -extern void SHMQueueElemInit(SHM_QUEUE *queue); -extern void SHMQueueDelete(SHM_QUEUE *queue); -extern void SHMQueueInsertBefore(SHM_QUEUE *queue, SHM_QUEUE *elem); -extern void SHMQueueInsertAfter(SHM_QUEUE *queue, SHM_QUEUE *elem); -extern Pointer SHMQueueNext(const SHM_QUEUE *queue, const SHM_QUEUE *curElem, - Size linkOffset); -extern Pointer SHMQueuePrev(const SHM_QUEUE *queue, const SHM_QUEUE *curElem, - Size linkOffset); -extern bool SHMQueueEmpty(const SHM_QUEUE *queue); -extern bool SHMQueueIsDetached(const SHM_QUEUE *queue); - #endif /* SHMEM_H */ diff --git a/parser/include/storage/sinval.h b/parser/include/storage/sinval.h index e7cd4565..0721e4d2 100644 --- a/parser/include/storage/sinval.h +++ b/parser/include/storage/sinval.h @@ -4,7 +4,7 @@ * POSTGRES shared cache invalidation communication definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/sinval.h @@ -16,7 +16,7 @@ #include -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" /* * We support several types of shared-invalidation messages: @@ -90,7 +90,7 @@ typedef struct int8 id; /* type field --- must be first */ int8 backend_hi; /* high bits of backend ID, if temprel */ uint16 backend_lo; /* low bits of backend ID, if temprel */ - RelFileNode rnode; /* spcNode, dbNode, relNode */ + RelFileLocator rlocator; /* spcOid, dbOid, relNumber */ } SharedInvalSmgrMsg; #define SHAREDINVALRELMAP_ID (-4) diff --git a/parser/include/storage/sinvaladt.h b/parser/include/storage/sinvaladt.h index 91e24189..db38819b 100644 --- a/parser/include/storage/sinvaladt.h +++ b/parser/include/storage/sinvaladt.h @@ -12,7 +12,7 @@ * The struct type SharedInvalidationMessage, defining the contents of * a single message, is defined in sinval.h. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/sinvaladt.h @@ -32,7 +32,9 @@ extern Size SInvalShmemSize(void); extern void CreateSharedInvalidationState(void); extern void SharedInvalBackendInit(bool sendOnly); extern PGPROC *BackendIdGetProc(int backendID); -extern void BackendIdGetTransactionIds(int backendID, TransactionId *xid, TransactionId *xmin); +extern void BackendIdGetTransactionIds(int backendID, TransactionId *xid, + TransactionId *xmin, int *nsubxid, + bool *overflowed); extern void SIInsertDataEntries(const SharedInvalidationMessage *data, int n); extern int SIGetDataEntries(SharedInvalidationMessage *data, int datasize); diff --git a/parser/include/storage/smgr.h b/parser/include/storage/smgr.h index 6b63c60f..a9a179aa 100644 --- a/parser/include/storage/smgr.h +++ b/parser/include/storage/smgr.h @@ -4,7 +4,7 @@ * storage manager switch public interface declarations. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/smgr.h @@ -16,7 +16,7 @@ #include "lib/ilist.h" #include "storage/block.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" /* * smgr.c maintains a table of SMgrRelation objects, which are essentially @@ -38,8 +38,8 @@ */ typedef struct SMgrRelationData { - /* rnode is the hashtable lookup key, so it must be first! */ - RelFileNodeBackend smgr_rnode; /* relation physical identifier */ + /* rlocator is the hashtable lookup key, so it must be first! */ + RelFileLocatorBackend smgr_rlocator; /* relation physical identifier */ /* pointer to owning pointer, or NULL if none */ struct SMgrRelationData **smgr_owner; @@ -75,29 +75,31 @@ typedef struct SMgrRelationData typedef SMgrRelationData *SMgrRelation; #define SmgrIsTemp(smgr) \ - RelFileNodeBackendIsTemp((smgr)->smgr_rnode) + RelFileLocatorBackendIsTemp((smgr)->smgr_rlocator) extern void smgrinit(void); -extern SMgrRelation smgropen(RelFileNode rnode, BackendId backend); +extern SMgrRelation smgropen(RelFileLocator rlocator, BackendId backend); extern bool smgrexists(SMgrRelation reln, ForkNumber forknum); extern void smgrsetowner(SMgrRelation *owner, SMgrRelation reln); extern void smgrclearowner(SMgrRelation *owner, SMgrRelation reln); extern void smgrclose(SMgrRelation reln); extern void smgrcloseall(void); -extern void smgrclosenode(RelFileNodeBackend rnode); +extern void smgrcloserellocator(RelFileLocatorBackend rlocator); extern void smgrrelease(SMgrRelation reln); extern void smgrreleaseall(void); extern void smgrcreate(SMgrRelation reln, ForkNumber forknum, bool isRedo); extern void smgrdosyncall(SMgrRelation *rels, int nrels); extern void smgrdounlinkall(SMgrRelation *rels, int nrels, bool isRedo); extern void smgrextend(SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, char *buffer, bool skipFsync); + BlockNumber blocknum, const void *buffer, bool skipFsync); +extern void smgrzeroextend(SMgrRelation reln, ForkNumber forknum, + BlockNumber blocknum, int nblocks, bool skipFsync); extern bool smgrprefetch(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum); extern void smgrread(SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, char *buffer); + BlockNumber blocknum, void *buffer); extern void smgrwrite(SMgrRelation reln, ForkNumber forknum, - BlockNumber blocknum, char *buffer, bool skipFsync); + BlockNumber blocknum, const void *buffer, bool skipFsync); extern void smgrwriteback(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, BlockNumber nblocks); extern BlockNumber smgrnblocks(SMgrRelation reln, ForkNumber forknum); diff --git a/parser/include/storage/spin.h b/parser/include/storage/spin.h index 7031f1d2..5d809cc9 100644 --- a/parser/include/storage/spin.h +++ b/parser/include/storage/spin.h @@ -41,7 +41,7 @@ * be again. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/spin.h diff --git a/parser/include/storage/standby.h b/parser/include/storage/standby.h index 6a776326..e8f50569 100644 --- a/parser/include/storage/standby.h +++ b/parser/include/storage/standby.h @@ -4,7 +4,7 @@ * Definitions for hot standby mode. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/standby.h @@ -17,11 +17,10 @@ #include "datatype/timestamp.h" #include "storage/lock.h" #include "storage/procsignal.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" #include "storage/standbydefs.h" /* User-settable GUC parameters */ -extern PGDLLIMPORT int vacuum_defer_cleanup_age; extern PGDLLIMPORT int max_standby_archive_delay; extern PGDLLIMPORT int max_standby_streaming_delay; extern PGDLLIMPORT bool log_recovery_conflict_waits; @@ -29,10 +28,12 @@ extern PGDLLIMPORT bool log_recovery_conflict_waits; extern void InitRecoveryTransactionEnvironment(void); extern void ShutdownRecoveryTransactionEnvironment(void); -extern void ResolveRecoveryConflictWithSnapshot(TransactionId latestRemovedXid, - RelFileNode node); -extern void ResolveRecoveryConflictWithSnapshotFullXid(FullTransactionId latestRemovedFullXid, - RelFileNode node); +extern void ResolveRecoveryConflictWithSnapshot(TransactionId snapshotConflictHorizon, + bool isCatalogRel, + RelFileLocator locator); +extern void ResolveRecoveryConflictWithSnapshotFullXid(FullTransactionId snapshotConflictHorizon, + bool isCatalogRel, + RelFileLocator locator); extern void ResolveRecoveryConflictWithTablespace(Oid tsid); extern void ResolveRecoveryConflictWithDatabase(Oid dbid); @@ -43,7 +44,7 @@ extern void StandbyDeadLockHandler(void); extern void StandbyTimeoutHandler(void); extern void StandbyLockTimeoutHandler(void); extern void LogRecoveryConflict(ProcSignalReason reason, TimestampTz wait_start, - TimestampTz cur_ts, VirtualTransactionId *wait_list, + TimestampTz now, VirtualTransactionId *wait_list, bool still_waiting); /* diff --git a/parser/include/storage/standbydefs.h b/parser/include/storage/standbydefs.h index c0234b6c..188e3486 100644 --- a/parser/include/storage/standbydefs.h +++ b/parser/include/storage/standbydefs.h @@ -4,7 +4,7 @@ * Frontend exposed definitions for hot standby mode. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/standbydefs.h diff --git a/parser/include/storage/sync.h b/parser/include/storage/sync.h index 9737e1eb..cfbcfa67 100644 --- a/parser/include/storage/sync.h +++ b/parser/include/storage/sync.h @@ -3,7 +3,7 @@ * sync.h * File synchronization management code. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/storage/sync.h @@ -13,7 +13,7 @@ #ifndef SYNC_H #define SYNC_H -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" /* * Type of sync request. These are used to manage the set of pending @@ -51,7 +51,7 @@ typedef struct FileTag { int16 handler; /* SyncRequestHandler value, saving space */ int16 forknum; /* ForkNumber, saving space */ - RelFileNode rnode; + RelFileLocator rlocator; uint32 segno; } FileTag; diff --git a/parser/include/tcop/cmdtag.h b/parser/include/tcop/cmdtag.h index b9e8992a..1e7514dc 100644 --- a/parser/include/tcop/cmdtag.h +++ b/parser/include/tcop/cmdtag.h @@ -3,7 +3,7 @@ * cmdtag.h * Declarations for commandtag names and enumeration. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/tcop/cmdtag.h @@ -13,6 +13,8 @@ #ifndef CMDTAG_H #define CMDTAG_H +/* buffer size required for command completion tags */ +#define COMPLETION_TAG_BUFSIZE 64 #define PG_CMDTAG(tag, name, evtrgok, rwrok, rowcnt) \ tag, @@ -50,9 +52,12 @@ CopyQueryCompletion(QueryCompletion *dst, const QueryCompletion *src) extern void InitializeQueryCompletion(QueryCompletion *qc); extern const char *GetCommandTagName(CommandTag commandTag); +extern const char *GetCommandTagNameAndLen(CommandTag commandTag, Size *len); extern bool command_tag_display_rowcount(CommandTag commandTag); extern bool command_tag_event_trigger_ok(CommandTag commandTag); extern bool command_tag_table_rewrite_ok(CommandTag commandTag); -extern CommandTag GetCommandTagEnum(const char *tagname); +extern CommandTag GetCommandTagEnum(const char *commandname); +extern Size BuildQueryCompletionString(char *buff, const QueryCompletion *qc, + bool nameonly); #endif /* CMDTAG_H */ diff --git a/parser/include/tcop/cmdtaglist.h b/parser/include/tcop/cmdtaglist.h index 9e94f44c..e738ac1c 100644 --- a/parser/include/tcop/cmdtaglist.h +++ b/parser/include/tcop/cmdtaglist.h @@ -8,7 +8,7 @@ * determined by the PG_CMDTAG macro, which is not defined in this file; * it can be defined by the caller for special purposes. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/tcop/cmdtaglist.h diff --git a/parser/include/tcop/deparse_utility.h b/parser/include/tcop/deparse_utility.h index 94de13d9..b585810b 100644 --- a/parser/include/tcop/deparse_utility.h +++ b/parser/include/tcop/deparse_utility.h @@ -2,7 +2,7 @@ * * deparse_utility.h * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/tcop/deparse_utility.h diff --git a/parser/include/tcop/dest.h b/parser/include/tcop/dest.h index 3c3eabae..a7d86e7a 100644 --- a/parser/include/tcop/dest.h +++ b/parser/include/tcop/dest.h @@ -57,7 +57,7 @@ * calls in portal and cursor manipulations. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/tcop/dest.h @@ -71,8 +71,6 @@ #include "tcop/cmdtag.h" -/* buffer size to use for command completion tags */ -#define COMPLETION_TAG_BUFSIZE 64 /* ---------------- diff --git a/parser/include/tcop/fastpath.h b/parser/include/tcop/fastpath.h index cb15a16a..9d57f79d 100644 --- a/parser/include/tcop/fastpath.h +++ b/parser/include/tcop/fastpath.h @@ -3,7 +3,7 @@ * fastpath.h * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/tcop/fastpath.h diff --git a/parser/include/tcop/pquery.h b/parser/include/tcop/pquery.h index f9a6882e..a5e65b98 100644 --- a/parser/include/tcop/pquery.h +++ b/parser/include/tcop/pquery.h @@ -4,7 +4,7 @@ * prototypes for pquery.c. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/tcop/pquery.h diff --git a/parser/include/tcop/tcopprot.h b/parser/include/tcop/tcopprot.h index 84ca54db..7c4670eb 100644 --- a/parser/include/tcop/tcopprot.h +++ b/parser/include/tcop/tcopprot.h @@ -4,7 +4,7 @@ * prototypes for postgres.c. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/tcop/tcopprot.h @@ -66,9 +66,6 @@ extern List *pg_plan_queries(List *querytrees, const char *query_string, int cursorOptions, ParamListInfo boundParams); -extern bool check_max_stack_depth(int *newval, void **extra, GucSource source); -extern void assign_max_stack_depth(int newval, void *extra); - extern void die(SIGNAL_ARGS); extern void quickdie(SIGNAL_ARGS) pg_attribute_noreturn(); extern void StatementCancelHandler(SIGNAL_ARGS); diff --git a/parser/include/tcop/utility.h b/parser/include/tcop/utility.h index f9daf5b7..59e64aea 100644 --- a/parser/include/tcop/utility.h +++ b/parser/include/tcop/utility.h @@ -4,7 +4,7 @@ * prototypes for utility.c. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/tcop/utility.h diff --git a/parser/include/tsearch/ts_cache.h b/parser/include/tsearch/ts_cache.h index 5e4a49ea..d432bd0a 100644 --- a/parser/include/tsearch/ts_cache.h +++ b/parser/include/tsearch/ts_cache.h @@ -3,7 +3,7 @@ * ts_cache.h * Tsearch related object caches. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/tsearch/ts_cache.h @@ -13,7 +13,7 @@ #ifndef TS_CACHE_H #define TS_CACHE_H -#include "utils/guc.h" +#include "fmgr.h" /* @@ -92,7 +92,5 @@ extern TSDictionaryCacheEntry *lookup_ts_dictionary_cache(Oid dictId); extern TSConfigCacheEntry *lookup_ts_config_cache(Oid cfgId); extern Oid getTSCurrentConfig(bool emitError); -extern bool check_TSCurrentConfig(char **newval, void **extra, GucSource source); -extern void assign_TSCurrentConfig(const char *newval, void *extra); #endif /* TS_CACHE_H */ diff --git a/parser/include/utils/acl.h b/parser/include/utils/acl.h index 48f7d72a..aba1afa9 100644 --- a/parser/include/utils/acl.h +++ b/parser/include/utils/acl.h @@ -4,7 +4,7 @@ * Definition of (and support for) access control list data structures. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/acl.h @@ -59,33 +59,33 @@ typedef struct AclItem } AclItem; /* - * The upper 16 bits of the ai_privs field of an AclItem are the grant option - * bits, and the lower 16 bits are the actual privileges. We use "rights" + * The upper 32 bits of the ai_privs field of an AclItem are the grant option + * bits, and the lower 32 bits are the actual privileges. We use "rights" * to mean the combined grant option and privilege bits fields. */ -#define ACLITEM_GET_PRIVS(item) ((item).ai_privs & 0xFFFF) -#define ACLITEM_GET_GOPTIONS(item) (((item).ai_privs >> 16) & 0xFFFF) +#define ACLITEM_GET_PRIVS(item) ((item).ai_privs & 0xFFFFFFFF) +#define ACLITEM_GET_GOPTIONS(item) (((item).ai_privs >> 32) & 0xFFFFFFFF) #define ACLITEM_GET_RIGHTS(item) ((item).ai_privs) -#define ACL_GRANT_OPTION_FOR(privs) (((AclMode) (privs) & 0xFFFF) << 16) -#define ACL_OPTION_TO_PRIVS(privs) (((AclMode) (privs) >> 16) & 0xFFFF) +#define ACL_GRANT_OPTION_FOR(privs) (((AclMode) (privs) & 0xFFFFFFFF) << 32) +#define ACL_OPTION_TO_PRIVS(privs) (((AclMode) (privs) >> 32) & 0xFFFFFFFF) #define ACLITEM_SET_PRIVS(item,privs) \ - ((item).ai_privs = ((item).ai_privs & ~((AclMode) 0xFFFF)) | \ - ((AclMode) (privs) & 0xFFFF)) + ((item).ai_privs = ((item).ai_privs & ~((AclMode) 0xFFFFFFFF)) | \ + ((AclMode) (privs) & 0xFFFFFFFF)) #define ACLITEM_SET_GOPTIONS(item,goptions) \ - ((item).ai_privs = ((item).ai_privs & ~(((AclMode) 0xFFFF) << 16)) | \ - (((AclMode) (goptions) & 0xFFFF) << 16)) + ((item).ai_privs = ((item).ai_privs & ~(((AclMode) 0xFFFFFFFF) << 32)) | \ + (((AclMode) (goptions) & 0xFFFFFFFF) << 32)) #define ACLITEM_SET_RIGHTS(item,rights) \ ((item).ai_privs = (AclMode) (rights)) #define ACLITEM_SET_PRIVS_GOPTIONS(item,privs,goptions) \ - ((item).ai_privs = ((AclMode) (privs) & 0xFFFF) | \ - (((AclMode) (goptions) & 0xFFFF) << 16)) + ((item).ai_privs = ((AclMode) (privs) & 0xFFFFFFFF) | \ + (((AclMode) (goptions) & 0xFFFFFFFF) << 32)) -#define ACLITEM_ALL_PRIV_BITS ((AclMode) 0xFFFF) -#define ACLITEM_ALL_GOPTION_BITS ((AclMode) 0xFFFF << 16) +#define ACLITEM_ALL_PRIV_BITS ((AclMode) 0xFFFFFFFF) +#define ACLITEM_ALL_GOPTION_BITS ((AclMode) 0xFFFFFFFF << 32) /* * Definitions for convenient access to Acl (array of AclItem). @@ -209,12 +209,14 @@ extern AclMode aclmask(const Acl *acl, Oid roleid, Oid ownerId, extern int aclmembers(const Acl *acl, Oid **roleids); extern bool has_privs_of_role(Oid member, Oid role); +extern bool member_can_set_role(Oid member, Oid role); +extern void check_can_set_role(Oid member, Oid role); extern bool is_member_of_role(Oid member, Oid role); extern bool is_member_of_role_nosuper(Oid member, Oid role); extern bool is_admin_of_role(Oid member, Oid role); -extern void check_is_member_of_role(Oid member, Oid role); -extern Oid get_role_oid(const char *rolename, bool missing_ok); -extern Oid get_role_oid_or_public(const char *rolename); +extern Oid select_best_admin(Oid member, Oid role); +extern Oid get_role_oid(const char *rolname, bool missing_ok); +extern Oid get_role_oid_or_public(const char *rolname); extern Oid get_rolespec_oid(const RoleSpec *role, bool missing_ok); extern void check_rolespec_name(const RoleSpec *role, const char *detail_msg); extern HeapTuple get_rolespec_tuple(const RoleSpec *role); @@ -234,39 +236,13 @@ extern void ExecAlterDefaultPrivilegesStmt(ParseState *pstate, AlterDefaultPrivi extern void RemoveRoleFromObjectACL(Oid roleid, Oid classid, Oid objid); -extern AclMode pg_attribute_aclmask(Oid table_oid, AttrNumber attnum, - Oid roleid, AclMode mask, AclMaskHow how); -extern AclMode pg_attribute_aclmask_ext(Oid table_oid, AttrNumber attnum, - Oid roleid, AclMode mask, - AclMaskHow how, bool *is_missing); extern AclMode pg_class_aclmask(Oid table_oid, Oid roleid, AclMode mask, AclMaskHow how); -extern AclMode pg_class_aclmask_ext(Oid table_oid, Oid roleid, - AclMode mask, AclMaskHow how, - bool *is_missing); -extern AclMode pg_database_aclmask(Oid db_oid, Oid roleid, - AclMode mask, AclMaskHow how); -extern AclMode pg_parameter_aclmask(const char *name, Oid roleid, - AclMode mask, AclMaskHow how); -extern AclMode pg_parameter_acl_aclmask(Oid acl_oid, Oid roleid, - AclMode mask, AclMaskHow how); -extern AclMode pg_proc_aclmask(Oid proc_oid, Oid roleid, - AclMode mask, AclMaskHow how); -extern AclMode pg_language_aclmask(Oid lang_oid, Oid roleid, - AclMode mask, AclMaskHow how); -extern AclMode pg_largeobject_aclmask_snapshot(Oid lobj_oid, Oid roleid, - AclMode mask, AclMaskHow how, Snapshot snapshot); -extern AclMode pg_namespace_aclmask(Oid nsp_oid, Oid roleid, - AclMode mask, AclMaskHow how); -extern AclMode pg_tablespace_aclmask(Oid spc_oid, Oid roleid, - AclMode mask, AclMaskHow how); -extern AclMode pg_foreign_data_wrapper_aclmask(Oid fdw_oid, Oid roleid, - AclMode mask, AclMaskHow how); -extern AclMode pg_foreign_server_aclmask(Oid srv_oid, Oid roleid, - AclMode mask, AclMaskHow how); -extern AclMode pg_type_aclmask(Oid type_oid, Oid roleid, - AclMode mask, AclMaskHow how); +/* generic function */ +extern AclResult object_aclcheck(Oid classid, Oid objectid, Oid roleid, AclMode mode); + +/* special cases */ extern AclResult pg_attribute_aclcheck(Oid table_oid, AttrNumber attnum, Oid roleid, AclMode mode); extern AclResult pg_attribute_aclcheck_ext(Oid table_oid, AttrNumber attnum, @@ -277,20 +253,10 @@ extern AclResult pg_attribute_aclcheck_all(Oid table_oid, Oid roleid, extern AclResult pg_class_aclcheck(Oid table_oid, Oid roleid, AclMode mode); extern AclResult pg_class_aclcheck_ext(Oid table_oid, Oid roleid, AclMode mode, bool *is_missing); -extern AclResult pg_database_aclcheck(Oid db_oid, Oid roleid, AclMode mode); extern AclResult pg_parameter_aclcheck(const char *name, Oid roleid, AclMode mode); -extern AclResult pg_parameter_acl_aclcheck(Oid acl_oid, Oid roleid, - AclMode mode); -extern AclResult pg_proc_aclcheck(Oid proc_oid, Oid roleid, AclMode mode); -extern AclResult pg_language_aclcheck(Oid lang_oid, Oid roleid, AclMode mode); -extern AclResult pg_largeobject_aclcheck_snapshot(Oid lang_oid, Oid roleid, +extern AclResult pg_largeobject_aclcheck_snapshot(Oid lobj_oid, Oid roleid, AclMode mode, Snapshot snapshot); -extern AclResult pg_namespace_aclcheck(Oid nsp_oid, Oid roleid, AclMode mode); -extern AclResult pg_tablespace_aclcheck(Oid spc_oid, Oid roleid, AclMode mode); -extern AclResult pg_foreign_data_wrapper_aclcheck(Oid fdw_oid, Oid roleid, AclMode mode); -extern AclResult pg_foreign_server_aclcheck(Oid srv_oid, Oid roleid, AclMode mode); -extern AclResult pg_type_aclcheck(Oid type_oid, Oid roleid, AclMode mode); extern void aclcheck_error(AclResult aclerr, ObjectType objtype, const char *objectname); @@ -305,28 +271,7 @@ extern void removeExtObjInitPriv(Oid objoid, Oid classoid); /* ownercheck routines just return true (owner) or false (not) */ -extern bool pg_class_ownercheck(Oid class_oid, Oid roleid); -extern bool pg_type_ownercheck(Oid type_oid, Oid roleid); -extern bool pg_oper_ownercheck(Oid oper_oid, Oid roleid); -extern bool pg_proc_ownercheck(Oid proc_oid, Oid roleid); -extern bool pg_language_ownercheck(Oid lan_oid, Oid roleid); -extern bool pg_largeobject_ownercheck(Oid lobj_oid, Oid roleid); -extern bool pg_namespace_ownercheck(Oid nsp_oid, Oid roleid); -extern bool pg_tablespace_ownercheck(Oid spc_oid, Oid roleid); -extern bool pg_opclass_ownercheck(Oid opc_oid, Oid roleid); -extern bool pg_opfamily_ownercheck(Oid opf_oid, Oid roleid); -extern bool pg_database_ownercheck(Oid db_oid, Oid roleid); -extern bool pg_collation_ownercheck(Oid coll_oid, Oid roleid); -extern bool pg_conversion_ownercheck(Oid conv_oid, Oid roleid); -extern bool pg_ts_dict_ownercheck(Oid dict_oid, Oid roleid); -extern bool pg_ts_config_ownercheck(Oid cfg_oid, Oid roleid); -extern bool pg_foreign_data_wrapper_ownercheck(Oid srv_oid, Oid roleid); -extern bool pg_foreign_server_ownercheck(Oid srv_oid, Oid roleid); -extern bool pg_event_trigger_ownercheck(Oid et_oid, Oid roleid); -extern bool pg_extension_ownercheck(Oid ext_oid, Oid roleid); -extern bool pg_publication_ownercheck(Oid pub_oid, Oid roleid); -extern bool pg_subscription_ownercheck(Oid sub_oid, Oid roleid); -extern bool pg_statistics_object_ownercheck(Oid stat_oid, Oid roleid); +extern bool object_ownercheck(Oid classid, Oid objectid, Oid roleid); extern bool has_createrole_privilege(Oid roleid); extern bool has_bypassrls_privilege(Oid roleid); diff --git a/parser/include/utils/aclchk_internal.h b/parser/include/utils/aclchk_internal.h index 361284d8..55af624f 100644 --- a/parser/include/utils/aclchk_internal.h +++ b/parser/include/utils/aclchk_internal.h @@ -2,7 +2,7 @@ * * aclchk_internal.h * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/aclchk_internal.h diff --git a/parser/include/utils/array.h b/parser/include/utils/array.h index 656c766a..e6c8d88d 100644 --- a/parser/include/utils/array.h +++ b/parser/include/utils/array.h @@ -51,7 +51,7 @@ * arrays holding the elements. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/array.h @@ -74,6 +74,13 @@ struct ExprContext; */ #define MAXDIM 6 +/* + * Maximum number of elements in an array. We limit this to at most about a + * quarter billion elements, so that it's not necessary to check for overflow + * in quite so many places --- for instance when palloc'ing Datum arrays. + */ +#define MaxArraySize ((Size) (MaxAllocSize / sizeof(Datum))) + /* * Arrays are varlena objects, so must meet the varlena convention that * the first int32 of the object contains the total object size in bytes. @@ -387,6 +394,7 @@ extern void array_bitmap_copy(bits8 *destbitmap, int destoffset, extern ArrayType *construct_array(Datum *elems, int nelems, Oid elmtype, int elmlen, bool elmbyval, char elmalign); +extern ArrayType *construct_array_builtin(Datum *elems, int nelems, Oid elmtype); extern ArrayType *construct_md_array(Datum *elems, bool *nulls, int ndims, @@ -401,10 +409,16 @@ extern void deconstruct_array(ArrayType *array, Oid elmtype, int elmlen, bool elmbyval, char elmalign, Datum **elemsp, bool **nullsp, int *nelemsp); +extern void deconstruct_array_builtin(ArrayType *array, + Oid elmtype, + Datum **elemsp, bool **nullsp, int *nelemsp); extern bool array_contains_nulls(ArrayType *array); extern ArrayBuildState *initArrayResult(Oid element_type, MemoryContext rcontext, bool subcontext); +extern ArrayBuildState *initArrayResultWithSize(Oid element_type, + MemoryContext rcontext, + bool subcontext, int initsize); extern ArrayBuildState *accumArrayResult(ArrayBuildState *astate, Datum dvalue, bool disnull, Oid element_type, @@ -443,7 +457,11 @@ extern void array_free_iterator(ArrayIterator iterator); extern int ArrayGetOffset(int n, const int *dim, const int *lb, const int *indx); extern int ArrayGetOffset0(int n, const int *tup, const int *scale); extern int ArrayGetNItems(int ndim, const int *dims); +extern int ArrayGetNItemsSafe(int ndim, const int *dims, + struct Node *escontext); extern void ArrayCheckBounds(int ndim, const int *dims, const int *lb); +extern bool ArrayCheckBoundsSafe(int ndim, const int *dims, const int *lb, + struct Node *escontext); extern void mda_get_range(int n, int *span, const int *st, const int *endp); extern void mda_get_prod(int n, const int *range, int *prod); extern void mda_get_offset_values(int n, int *dist, const int *prod, const int *span); diff --git a/parser/include/utils/backend_progress.h b/parser/include/utils/backend_progress.h index 47bf8029..a84752ad 100644 --- a/parser/include/utils/backend_progress.h +++ b/parser/include/utils/backend_progress.h @@ -6,7 +6,7 @@ * backend's command progress counters, without ascribing meaning to the * individual fields. See commands/progress.h and system_views.sql for that. * - * Copyright (c) 2001-2022, PostgreSQL Global Development Group + * Copyright (c) 2001-2023, PostgreSQL Global Development Group * * src/include/utils/backend_progress.h * ---------- @@ -36,6 +36,7 @@ typedef enum ProgressCommandType extern void pgstat_progress_start_command(ProgressCommandType cmdtype, Oid relid); extern void pgstat_progress_update_param(int index, int64 val); +extern void pgstat_progress_incr_param(int index, int64 incr); extern void pgstat_progress_update_multi_param(int nparam, const int *index, const int64 *val); extern void pgstat_progress_end_command(void); diff --git a/parser/include/utils/backend_status.h b/parser/include/utils/backend_status.h index 7403bca2..d51c840d 100644 --- a/parser/include/utils/backend_status.h +++ b/parser/include/utils/backend_status.h @@ -2,7 +2,7 @@ * backend_status.h * Definitions related to backend status reporting * - * Copyright (c) 2001-2022, PostgreSQL Global Development Group + * Copyright (c) 2001-2023, PostgreSQL Global Development Group * * src/include/utils/backend_status.h * ---------- @@ -13,6 +13,7 @@ #include "datatype/timestamp.h" #include "libpq/pqcomm.h" #include "miscadmin.h" /* for BackendType */ +#include "storage/backendid.h" #include "utils/backend_progress.h" @@ -76,6 +77,7 @@ typedef struct PgBackendGSSStatus char gss_princ[NAMEDATALEN]; /* GSSAPI Principal used to auth */ bool gss_auth; /* If GSSAPI authentication was used */ bool gss_enc; /* If encryption is being used */ + bool gss_delegation; /* If credentials delegated */ } PgBackendGSSStatus; @@ -247,6 +249,13 @@ typedef struct LocalPgBackendStatus */ PgBackendStatus backendStatus; + /* + * The backend ID. For auxiliary processes, this will be set to a value + * greater than MaxBackends (since auxiliary processes do not have proper + * backend IDs). + */ + BackendId backend_id; + /* * The xid of the current transaction if available, InvalidTransactionId * if not. @@ -258,6 +267,17 @@ typedef struct LocalPgBackendStatus * not. */ TransactionId backend_xmin; + + /* + * Number of cached subtransactions in the current session. + */ + int backend_subxact_count; + + /* + * The number of subtransactions in the current session which exceeded the + * cached subtransaction limit. + */ + bool backend_subxact_overflowed; } LocalPgBackendStatus; @@ -313,8 +333,9 @@ extern uint64 pgstat_get_my_query_id(void); * ---------- */ extern int pgstat_fetch_stat_numbackends(void); -extern PgBackendStatus *pgstat_fetch_stat_beentry(int beid); -extern LocalPgBackendStatus *pgstat_fetch_stat_local_beentry(int beid); +extern PgBackendStatus *pgstat_get_beentry_by_backend_id(BackendId beid); +extern LocalPgBackendStatus *pgstat_get_local_beentry_by_backend_id(BackendId beid); +extern LocalPgBackendStatus *pgstat_get_local_beentry_by_index(int idx); extern char *pgstat_clip_activity(const char *raw_activity); diff --git a/parser/include/utils/builtins.h b/parser/include/utils/builtins.h index 24d16e8f..1c665691 100644 --- a/parser/include/utils/builtins.h +++ b/parser/include/utils/builtins.h @@ -4,7 +4,7 @@ * Declarations for operations on built-in types. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/builtins.h @@ -34,6 +34,8 @@ extern int errdomainconstraint(Oid datatypeOid, const char *conname); /* encode.c */ extern uint64 hex_encode(const char *src, size_t len, char *dst); extern uint64 hex_decode(const char *src, size_t len, char *dst); +extern uint64 hex_decode_safe(const char *src, size_t len, char *dst, + Node *escontext); /* int.c */ extern int2vector *buildint2vector(const int16 *int2s, int n); @@ -44,13 +46,20 @@ extern int namestrcmp(Name name, const char *str); /* numutils.c */ extern int16 pg_strtoint16(const char *s); +extern int16 pg_strtoint16_safe(const char *s, Node *escontext); extern int32 pg_strtoint32(const char *s); +extern int32 pg_strtoint32_safe(const char *s, Node *escontext); extern int64 pg_strtoint64(const char *s); +extern int64 pg_strtoint64_safe(const char *s, Node *escontext); +extern uint32 uint32in_subr(const char *s, char **endloc, + const char *typname, Node *escontext); +extern uint64 uint64in_subr(const char *s, char **endloc, + const char *typname, Node *escontext); extern int pg_itoa(int16 i, char *a); -extern int pg_ultoa_n(uint32 l, char *a); -extern int pg_ulltoa_n(uint64 l, char *a); -extern int pg_ltoa(int32 l, char *a); -extern int pg_lltoa(int64 ll, char *a); +extern int pg_ultoa_n(uint32 value, char *a); +extern int pg_ulltoa_n(uint64 value, char *a); +extern int pg_ltoa(int32 value, char *a); +extern int pg_lltoa(int64 value, char *a); extern char *pg_ultostr_zeropad(char *str, uint32 value, int32 minwidth); extern char *pg_ultostr(char *str, uint32 value); diff --git a/parser/include/utils/bytea.h b/parser/include/utils/bytea.h index c3c9e547..166dd036 100644 --- a/parser/include/utils/bytea.h +++ b/parser/include/utils/bytea.h @@ -4,7 +4,7 @@ * Declarations for BYTEA data type support. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/bytea.h diff --git a/parser/include/utils/catcache.h b/parser/include/utils/catcache.h index d81e6fab..af0b3418 100644 --- a/parser/include/utils/catcache.h +++ b/parser/include/utils/catcache.h @@ -10,7 +10,7 @@ * guarantee that there can only be one matching row for a key combination. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/catcache.h diff --git a/parser/include/utils/date.h b/parser/include/utils/date.h index 91ae2425..97e1a021 100644 --- a/parser/include/utils/date.h +++ b/parser/include/utils/date.h @@ -4,7 +4,7 @@ * Definitions for the SQL "date" and "time" types. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/date.h @@ -42,21 +42,49 @@ typedef struct #define DATE_IS_NOEND(j) ((j) == DATEVAL_NOEND) #define DATE_NOT_FINITE(j) (DATE_IS_NOBEGIN(j) || DATE_IS_NOEND(j)) +#define MAX_TIME_PRECISION 6 + /* - * Macros for fmgr-callable functions. + * Functions for fmgr-callable functions. * * For TimeADT, we make use of the same support routines as for int64. * Therefore TimeADT is pass-by-reference if and only if int64 is! */ -#define MAX_TIME_PRECISION 6 +static inline DateADT +DatumGetDateADT(Datum X) +{ + return (DateADT) DatumGetInt32(X); +} + +static inline TimeADT +DatumGetTimeADT(Datum X) +{ + return (TimeADT) DatumGetInt64(X); +} -#define DatumGetDateADT(X) ((DateADT) DatumGetInt32(X)) -#define DatumGetTimeADT(X) ((TimeADT) DatumGetInt64(X)) -#define DatumGetTimeTzADTP(X) ((TimeTzADT *) DatumGetPointer(X)) +static inline TimeTzADT * +DatumGetTimeTzADTP(Datum X) +{ + return (TimeTzADT *) DatumGetPointer(X); +} + +static inline Datum +DateADTGetDatum(DateADT X) +{ + return Int32GetDatum(X); +} -#define DateADTGetDatum(X) Int32GetDatum(X) -#define TimeADTGetDatum(X) Int64GetDatum(X) -#define TimeTzADTPGetDatum(X) PointerGetDatum(X) +static inline Datum +TimeADTGetDatum(TimeADT X) +{ + return Int64GetDatum(X); +} + +static inline Datum +TimeTzADTPGetDatum(const TimeTzADT *X) +{ + return PointerGetDatum(X); +} #define PG_GETARG_DATEADT(n) DatumGetDateADT(PG_GETARG_DATUM(n)) #define PG_GETARG_TIMEADT(n) DatumGetTimeADT(PG_GETARG_DATUM(n)) diff --git a/parser/include/utils/datetime.h b/parser/include/utils/datetime.h index 4527e825..a871e322 100644 --- a/parser/include/utils/datetime.h +++ b/parser/include/utils/datetime.h @@ -6,7 +6,7 @@ * including date, and time. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/datetime.h @@ -16,7 +16,6 @@ #ifndef DATETIME_H #define DATETIME_H -#include "nodes/nodes.h" #include "utils/timestamp.h" /* this struct is declared in utils/tzparser.h: */ @@ -276,13 +275,30 @@ extern PGDLLIMPORT const int day_tab[2][13]; * Datetime input parsing routines (ParseDateTime, DecodeDateTime, etc) * return zero or a positive value on success. On failure, they return * one of these negative code values. DateTimeParseError may be used to - * produce a correct ereport. + * produce a suitable error report. For some of these codes, + * DateTimeParseError requires additional information, which is carried + * in struct DateTimeErrorExtra. */ #define DTERR_BAD_FORMAT (-1) #define DTERR_FIELD_OVERFLOW (-2) #define DTERR_MD_FIELD_OVERFLOW (-3) /* triggers hint about DateStyle */ #define DTERR_INTERVAL_OVERFLOW (-4) #define DTERR_TZDISP_OVERFLOW (-5) +#define DTERR_BAD_TIMEZONE (-6) +#define DTERR_BAD_ZONE_ABBREV (-7) + +typedef struct DateTimeErrorExtra +{ + /* Needed for DTERR_BAD_TIMEZONE and DTERR_BAD_ZONE_ABBREV: */ + const char *dtee_timezone; /* incorrect time zone name */ + /* Needed for DTERR_BAD_ZONE_ABBREV: */ + const char *dtee_abbrev; /* relevant time zone abbreviation */ +} DateTimeErrorExtra; + +/* Result codes for DecodeTimezoneName() */ +#define TZNAME_FIXED_OFFSET 0 +#define TZNAME_DYNTZ 1 +#define TZNAME_ZONE 2 extern void GetCurrentDateTime(struct pg_tm *tm); @@ -293,20 +309,21 @@ extern int date2j(int year, int month, int day); extern int ParseDateTime(const char *timestr, char *workbuf, size_t buflen, char **field, int *ftype, int maxfields, int *numfields); -extern int DecodeDateTime(char **field, int *ftype, - int nf, int *dtype, - struct pg_tm *tm, fsec_t *fsec, int *tzp); -extern int DecodeTimezone(char *str, int *tzp); -extern int DecodeTimeOnly(char **field, int *ftype, - int nf, int *dtype, - struct pg_tm *tm, fsec_t *fsec, int *tzp); +extern int DecodeDateTime(char **field, int *ftype, int nf, + int *dtype, struct pg_tm *tm, fsec_t *fsec, int *tzp, + DateTimeErrorExtra *extra); +extern int DecodeTimezone(const char *str, int *tzp); +extern int DecodeTimeOnly(char **field, int *ftype, int nf, + int *dtype, struct pg_tm *tm, fsec_t *fsec, int *tzp, + DateTimeErrorExtra *extra); extern int DecodeInterval(char **field, int *ftype, int nf, int range, int *dtype, struct pg_itm_in *itm_in); extern int DecodeISO8601Interval(char *str, int *dtype, struct pg_itm_in *itm_in); -extern void DateTimeParseError(int dterr, const char *str, - const char *datatype) pg_attribute_noreturn(); +extern void DateTimeParseError(int dterr, DateTimeErrorExtra *extra, + const char *str, const char *datatype, + struct Node *escontext); extern int DetermineTimeZoneOffset(struct pg_tm *tm, pg_tz *tzp); extern int DetermineTimeZoneAbbrevOffset(struct pg_tm *tm, const char *abbr, pg_tz *tzp); @@ -322,14 +339,18 @@ extern void EncodeSpecialTimestamp(Timestamp dt, char *str); extern int ValidateDate(int fmask, bool isjulian, bool is2digits, bool bc, struct pg_tm *tm); -extern int DecodeTimezoneAbbrev(int field, char *lowtoken, - int *offset, pg_tz **tz); -extern int DecodeSpecial(int field, char *lowtoken, int *val); -extern int DecodeUnits(int field, char *lowtoken, int *val); +extern int DecodeTimezoneAbbrev(int field, const char *lowtoken, + int *ftype, int *offset, pg_tz **tz, + DateTimeErrorExtra *extra); +extern int DecodeSpecial(int field, const char *lowtoken, int *val); +extern int DecodeUnits(int field, const char *lowtoken, int *val); + +extern int DecodeTimezoneName(const char *tzname, int *offset, pg_tz **tz); +extern pg_tz *DecodeTimezoneNameToTz(const char *tzname); -extern int j2day(int jd); +extern int j2day(int date); -extern Node *TemporalSimplify(int32 max_precis, Node *node); +extern struct Node *TemporalSimplify(int32 max_precis, struct Node *node); extern bool CheckDateTokenTables(void); @@ -337,8 +358,7 @@ extern TimeZoneAbbrevTable *ConvertTimeZoneAbbrevs(struct tzEntry *abbrevs, int n); extern void InstallTimeZoneAbbrevs(TimeZoneAbbrevTable *tbl); -extern void AdjustTimestampForTypmod(Timestamp *time, int32 typmod); -extern bool AdjustTimestampForTypmodError(Timestamp *time, int32 typmod, - bool *error); +extern bool AdjustTimestampForTypmod(Timestamp *time, int32 typmod, + struct Node *escontext); #endif /* DATETIME_H */ diff --git a/parser/include/utils/datum.h b/parser/include/utils/datum.h index d7de961f..70a47f33 100644 --- a/parser/include/utils/datum.h +++ b/parser/include/utils/datum.h @@ -8,7 +8,7 @@ * of the Datum. (We do it this way because in most situations the caller * can look up the info just once and use it for many per-datum operations.) * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/datum.h diff --git a/parser/include/utils/dsa.h b/parser/include/utils/dsa.h index 405606fe..3ce4ee30 100644 --- a/parser/include/utils/dsa.h +++ b/parser/include/utils/dsa.h @@ -3,7 +3,7 @@ * dsa.h * Dynamic shared memory areas. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -99,6 +99,10 @@ typedef pg_atomic_uint64 dsa_pointer_atomic; */ typedef dsm_handle dsa_handle; +/* Sentinel value to use for invalid dsa_handles. */ +#define DSA_HANDLE_INVALID ((dsa_handle) DSM_HANDLE_INVALID) + + extern dsa_area *dsa_create(int tranche_id); extern dsa_area *dsa_create_in_place(void *place, size_t size, int tranche_id, dsm_segment *segment); diff --git a/parser/include/utils/dynahash.h b/parser/include/utils/dynahash.h deleted file mode 100644 index 4564fb24..00000000 --- a/parser/include/utils/dynahash.h +++ /dev/null @@ -1,20 +0,0 @@ -/*------------------------------------------------------------------------- - * - * dynahash.h - * POSTGRES dynahash.h file definitions - * - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * IDENTIFICATION - * src/include/utils/dynahash.h - * - *------------------------------------------------------------------------- - */ -#ifndef DYNAHASH_H -#define DYNAHASH_H - -extern int my_log2(long num); - -#endif /* DYNAHASH_H */ diff --git a/parser/include/utils/elog.h b/parser/include/utils/elog.h index 9cfad3d5..6acc2c25 100644 --- a/parser/include/utils/elog.h +++ b/parser/include/utils/elog.h @@ -4,7 +4,7 @@ * POSTGRES error reporting/logging definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/elog.h @@ -16,6 +16,12 @@ #include +#include "lib/stringinfo.h" + +/* We cannot include nodes.h yet, so forward-declare struct Node */ +struct Node; + + /* Error level codes */ #define DEBUG5 10 /* Debugging messages, in categories of * decreasing detail. */ @@ -83,7 +89,7 @@ */ #if defined(errno) && defined(__linux__) #define pg_prevent_errno_in_scope() int __errno_location pg_attribute_unused() -#elif defined(errno) && (defined(__darwin__) || defined(__freebsd__)) +#elif defined(errno) && (defined(__darwin__) || defined(__FreeBSD__)) #define pg_prevent_errno_in_scope() int __error pg_attribute_unused() #else #define pg_prevent_errno_in_scope() @@ -138,7 +144,7 @@ if (__builtin_constant_p(elevel) && (elevel) >= ERROR ? \ errstart_cold(elevel, domain) : \ errstart(elevel, domain)) \ - __VA_ARGS__, errfinish(__FILE__, __LINE__, PG_FUNCNAME_MACRO); \ + __VA_ARGS__, errfinish(__FILE__, __LINE__, __func__); \ if (__builtin_constant_p(elevel) && (elevel) >= ERROR) \ pg_unreachable(); \ } while(0) @@ -148,7 +154,7 @@ const int elevel_ = (elevel); \ pg_prevent_errno_in_scope(); \ if (errstart(elevel_, domain)) \ - __VA_ARGS__, errfinish(__FILE__, __LINE__, PG_FUNCNAME_MACRO); \ + __VA_ARGS__, errfinish(__FILE__, __LINE__, __func__); \ if (elevel_ >= ERROR) \ pg_unreachable(); \ } while(0) @@ -233,6 +239,63 @@ extern int getinternalerrposition(void); ereport(elevel, errmsg_internal(__VA_ARGS__)) +/*---------- + * Support for reporting "soft" errors that don't require a full transaction + * abort to clean up. This is to be used in this way: + * errsave(context, + * errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), + * errmsg("invalid input syntax for type %s: \"%s\"", + * "boolean", in_str), + * ... other errxxx() fields as needed ...); + * + * "context" is a node pointer or NULL, and the remaining auxiliary calls + * provide the same error details as in ereport(). If context is not a + * pointer to an ErrorSaveContext node, then errsave(context, ...) + * behaves identically to ereport(ERROR, ...). If context is a pointer + * to an ErrorSaveContext node, then the information provided by the + * auxiliary calls is stored in the context node and control returns + * normally. The caller of errsave() must then do any required cleanup + * and return control back to its caller. That caller must check the + * ErrorSaveContext node to see whether an error occurred before + * it can trust the function's result to be meaningful. + * + * errsave_domain() allows a message domain to be specified; it is + * precisely analogous to ereport_domain(). + *---------- + */ +#define errsave_domain(context, domain, ...) \ + do { \ + struct Node *context_ = (context); \ + pg_prevent_errno_in_scope(); \ + if (errsave_start(context_, domain)) \ + __VA_ARGS__, errsave_finish(context_, __FILE__, __LINE__, __func__); \ + } while(0) + +#define errsave(context, ...) \ + errsave_domain(context, TEXTDOMAIN, __VA_ARGS__) + +/* + * "ereturn(context, dummy_value, ...);" is exactly the same as + * "errsave(context, ...); return dummy_value;". This saves a bit + * of typing in the common case where a function has no cleanup + * actions to take after reporting a soft error. "dummy_value" + * can be empty if the function returns void. + */ +#define ereturn_domain(context, dummy_value, domain, ...) \ + do { \ + errsave_domain(context, domain, __VA_ARGS__); \ + return dummy_value; \ + } while(0) + +#define ereturn(context, dummy_value, ...) \ + ereturn_domain(context, dummy_value, TEXTDOMAIN, __VA_ARGS__) + +extern bool errsave_start(struct Node *context, const char *domain); +extern void errsave_finish(struct Node *context, + const char *filename, int lineno, + const char *funcname); + + /* Support for constructing error strings separately from ereport() calls */ extern void pre_format_elog_string(int errnumber, const char *domain); @@ -308,39 +371,47 @@ extern PGDLLIMPORT __thread ErrorContextCallback *error_context_stack; * pedantry; we have seen bugs from compilers improperly optimizing code * away when such a variable was not marked. Beware that gcc's -Wclobbered * warnings are just about entirely useless for catching such oversights. + * + * Each of these macros accepts an optional argument which can be specified + * to apply a suffix to the variables declared within the macros. This suffix + * can be used to avoid the compiler emitting warnings about shadowed + * variables when compiling with -Wshadow in situations where nested PG_TRY() + * statements are required. The optional suffix may contain any character + * that's allowed in a variable name. The suffix, if specified, must be the + * same within each component macro of the given PG_TRY() statement. *---------- */ -#define PG_TRY() \ +#define PG_TRY(...) \ do { \ - sigjmp_buf *_save_exception_stack = PG_exception_stack; \ - ErrorContextCallback *_save_context_stack = error_context_stack; \ - sigjmp_buf _local_sigjmp_buf; \ - bool _do_rethrow = false; \ - if (sigsetjmp(_local_sigjmp_buf, 0) == 0) \ + sigjmp_buf *_save_exception_stack##__VA_ARGS__ = PG_exception_stack; \ + ErrorContextCallback *_save_context_stack##__VA_ARGS__ = error_context_stack; \ + sigjmp_buf _local_sigjmp_buf##__VA_ARGS__; \ + bool _do_rethrow##__VA_ARGS__ = false; \ + if (sigsetjmp(_local_sigjmp_buf##__VA_ARGS__, 0) == 0) \ { \ - PG_exception_stack = &_local_sigjmp_buf + PG_exception_stack = &_local_sigjmp_buf##__VA_ARGS__ -#define PG_CATCH() \ +#define PG_CATCH(...) \ } \ else \ { \ - PG_exception_stack = _save_exception_stack; \ - error_context_stack = _save_context_stack + PG_exception_stack = _save_exception_stack##__VA_ARGS__; \ + error_context_stack = _save_context_stack##__VA_ARGS__ -#define PG_FINALLY() \ +#define PG_FINALLY(...) \ } \ else \ - _do_rethrow = true; \ + _do_rethrow##__VA_ARGS__ = true; \ { \ - PG_exception_stack = _save_exception_stack; \ - error_context_stack = _save_context_stack + PG_exception_stack = _save_exception_stack##__VA_ARGS__; \ + error_context_stack = _save_context_stack##__VA_ARGS__ -#define PG_END_TRY() \ +#define PG_END_TRY(...) \ } \ - if (_do_rethrow) \ + if (_do_rethrow##__VA_ARGS__) \ PG_RE_THROW(); \ - PG_exception_stack = _save_exception_stack; \ - error_context_stack = _save_context_stack; \ + PG_exception_stack = _save_exception_stack##__VA_ARGS__; \ + error_context_stack = _save_context_stack##__VA_ARGS__; \ } while (0) /* @@ -439,6 +510,8 @@ extern PGDLLIMPORT bool syslog_split_messages; #define LOG_DESTINATION_JSONLOG 16 /* Other exported functions */ +extern void log_status_format(StringInfo buf, const char *format, + ErrorData *edata); extern void DebugFileOpen(void); extern char *unpack_sql_state(int sql_state); extern bool in_error_recursion_trouble(void); @@ -456,10 +529,6 @@ extern void write_pipe_chunks(char *data, int len, int dest); extern void write_csvlog(ErrorData *edata); extern void write_jsonlog(ErrorData *edata); -#ifdef HAVE_SYSLOG -extern void set_syslog_parameters(const char *ident, int facility); -#endif - /* * Write errors to stderr (or by equal means when stderr is * not available). Used before ereport/elog can be used @@ -467,4 +536,10 @@ extern void set_syslog_parameters(const char *ident, int facility); */ extern void write_stderr(const char *fmt,...) pg_attribute_printf(1, 2); +/* + * Write a message to STDERR using only async-signal-safe functions. This can + * be used to safely emit a message from a signal handler. + */ +extern void write_stderr_signal_safe(const char *fmt); + #endif /* ELOG_H */ diff --git a/parser/include/utils/expandeddatum.h b/parser/include/utils/expandeddatum.h index ffdb0c45..a77bb7e7 100644 --- a/parser/include/utils/expandeddatum.h +++ b/parser/include/utils/expandeddatum.h @@ -34,7 +34,7 @@ * value if they fail partway through. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/expandeddatum.h @@ -44,6 +44,8 @@ #ifndef EXPANDEDDATUM_H #define EXPANDEDDATUM_H +#include "varatt.h" + /* Size of an EXTERNAL datum that contains a pointer to an expanded object */ #define EXPANDED_POINTER_SIZE (VARHDRSZ_EXTERNAL + sizeof(varatt_expanded)) @@ -133,8 +135,17 @@ struct ExpandedObjectHeader * (More of these might be worth inlining later.) */ -#define EOHPGetRWDatum(eohptr) PointerGetDatum((eohptr)->eoh_rw_ptr) -#define EOHPGetRODatum(eohptr) PointerGetDatum((eohptr)->eoh_ro_ptr) +static inline Datum +EOHPGetRWDatum(const struct ExpandedObjectHeader *eohptr) +{ + return PointerGetDatum(eohptr->eoh_rw_ptr); +} + +static inline Datum +EOHPGetRODatum(const struct ExpandedObjectHeader *eohptr) +{ + return PointerGetDatum(eohptr->eoh_ro_ptr); +} /* Does the Datum represent a writable expanded object? */ #define DatumIsReadWriteExpandedObject(d, isnull, typlen) \ diff --git a/parser/include/utils/expandedrecord.h b/parser/include/utils/expandedrecord.h index be60e2ce..7e7c114b 100644 --- a/parser/include/utils/expandedrecord.h +++ b/parser/include/utils/expandedrecord.h @@ -3,7 +3,7 @@ * expandedrecord.h * Declarations for composite expanded objects. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/expandedrecord.h @@ -138,10 +138,20 @@ typedef struct ExpandedRecordHeader MemoryContextCallback er_mcb; } ExpandedRecordHeader; -/* fmgr macros for expanded record objects */ +/* fmgr functions and macros for expanded record objects */ +static inline Datum +ExpandedRecordGetDatum(const ExpandedRecordHeader *erh) +{ + return EOHPGetRWDatum(&erh->hdr); +} + +static inline Datum +ExpandedRecordGetRODatum(const ExpandedRecordHeader *erh) +{ + return EOHPGetRODatum(&erh->hdr); +} + #define PG_GETARG_EXPANDED_RECORD(n) DatumGetExpandedRecord(PG_GETARG_DATUM(n)) -#define ExpandedRecordGetDatum(erh) EOHPGetRWDatum(&(erh)->hdr) -#define ExpandedRecordGetRODatum(erh) EOHPGetRODatum(&(erh)->hdr) #define PG_RETURN_EXPANDED_RECORD(x) PG_RETURN_DATUM(ExpandedRecordGetDatum(x)) /* assorted other macros */ diff --git a/parser/include/utils/float.h b/parser/include/utils/float.h index 4bf0e3ac..7529899d 100644 --- a/parser/include/utils/float.h +++ b/parser/include/utils/float.h @@ -3,7 +3,7 @@ * float.h * Definitions for the built-in floating-point types * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -17,8 +17,8 @@ #include +/* X/Open (XSI) requires to provide M_PI, but core POSIX does not */ #ifndef M_PI -/* From my RH5.2 gcc math.h file - thomas 2000-04-03 */ #define M_PI 3.14159265358979323846 #endif @@ -42,10 +42,11 @@ extern void float_underflow_error(void) pg_attribute_noreturn(); extern void float_zero_divide_error(void) pg_attribute_noreturn(); extern int is_infinite(float8 val); extern float8 float8in_internal(char *num, char **endptr_p, - const char *type_name, const char *orig_string); -extern float8 float8in_internal_opt_error(char *num, char **endptr_p, - const char *type_name, const char *orig_string, - bool *have_error); + const char *type_name, const char *orig_string, + struct Node *escontext); +extern float4 float4in_internal(char *num, char **endptr_p, + const char *type_name, const char *orig_string, + struct Node *escontext); extern char *float8out_internal(float8 num); extern int float4_cmp_internal(float4 a, float4 b); extern int float8_cmp_internal(float8 a, float8 b); diff --git a/parser/include/utils/fmgroids.h b/parser/include/utils/fmgroids.h index 4cbc374b..b96a24bb 100644 --- a/parser/include/utils/fmgroids.h +++ b/parser/include/utils/fmgroids.h @@ -6,7 +6,7 @@ * These macros can be used to avoid a catalog lookup when a specific * fmgr-callable function needs to be referenced. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -3169,6 +3169,7 @@ #define F_PG_SHOW_REPLICATION_ORIGIN_STATUS 6014 #define F_JSONB_SUBSCRIPT_HANDLER 6098 #define F_PG_LSN 6103 +#define F_PG_STAT_GET_BACKEND_SUBXACT 6107 #define F_PG_STAT_GET_SUBSCRIPTION 6118 #define F_PG_GET_PUBLICATION_TABLES 6119 #define F_PG_GET_REPLICA_IDENTITY_INDEX 6120 @@ -3218,6 +3219,22 @@ #define F_HAS_PARAMETER_PRIVILEGE_NAME_TEXT_TEXT 6205 #define F_HAS_PARAMETER_PRIVILEGE_OID_TEXT_TEXT 6206 #define F_HAS_PARAMETER_PRIVILEGE_TEXT_TEXT 6207 +#define F_PG_READ_FILE_TEXT_BOOL 6208 +#define F_PG_READ_BINARY_FILE_TEXT_BOOL 6209 +#define F_PG_INPUT_IS_VALID 6210 +#define F_PG_INPUT_ERROR_INFO 6211 +#define F_RANDOM_NORMAL 6212 +#define F_PG_SPLIT_WALFILE_NAME 6213 +#define F_PG_STAT_GET_IO 6214 +#define F_ARRAY_SHUFFLE 6215 +#define F_ARRAY_SAMPLE 6216 +#define F_PG_STAT_GET_TUPLES_NEWPAGE_UPDATED 6217 +#define F_PG_STAT_GET_XACT_TUPLES_NEWPAGE_UPDATED 6218 +#define F_ERF 6219 +#define F_ERFC 6220 +#define F_DATE_ADD_TIMESTAMPTZ_INTERVAL 6221 +#define F_DATE_ADD_TIMESTAMPTZ_INTERVAL_TEXT 6222 +#define F_DATE_SUBTRACT_TIMESTAMPTZ_INTERVAL 6223 #define F_PG_GET_WAL_RESOURCE_MANAGERS 6224 #define F_MULTIRANGE_AGG_TRANSFN 6225 #define F_MULTIRANGE_AGG_FINALFN 6226 @@ -3257,5 +3274,41 @@ #define F_PG_LS_LOGICALSNAPDIR 6270 #define F_PG_LS_LOGICALMAPDIR 6271 #define F_PG_LS_REPLSLOTDIR 6272 +#define F_DATE_SUBTRACT_TIMESTAMPTZ_INTERVAL_TEXT 6273 +#define F_GENERATE_SERIES_TIMESTAMPTZ_TIMESTAMPTZ_INTERVAL_TEXT 6274 +#define F_JSON_AGG_STRICT_TRANSFN 6275 +#define F_JSON_AGG_STRICT 6276 +#define F_JSON_OBJECT_AGG_STRICT_TRANSFN 6277 +#define F_JSON_OBJECT_AGG_UNIQUE_TRANSFN 6278 +#define F_JSON_OBJECT_AGG_UNIQUE_STRICT_TRANSFN 6279 +#define F_JSON_OBJECT_AGG_STRICT 6280 +#define F_JSON_OBJECT_AGG_UNIQUE 6281 +#define F_JSON_OBJECT_AGG_UNIQUE_STRICT 6282 +#define F_JSONB_AGG_STRICT_TRANSFN 6283 +#define F_JSONB_AGG_STRICT 6284 +#define F_JSONB_OBJECT_AGG_STRICT_TRANSFN 6285 +#define F_JSONB_OBJECT_AGG_UNIQUE_TRANSFN 6286 +#define F_JSONB_OBJECT_AGG_UNIQUE_STRICT_TRANSFN 6287 +#define F_JSONB_OBJECT_AGG_STRICT 6288 +#define F_JSONB_OBJECT_AGG_UNIQUE 6289 +#define F_JSONB_OBJECT_AGG_UNIQUE_STRICT 6290 +#define F_ANY_VALUE 6291 +#define F_ANY_VALUE_TRANSFN 6292 +#define F_ARRAY_AGG_COMBINE 6293 +#define F_ARRAY_AGG_SERIALIZE 6294 +#define F_ARRAY_AGG_DESERIALIZE 6295 +#define F_ARRAY_AGG_ARRAY_COMBINE 6296 +#define F_ARRAY_AGG_ARRAY_SERIALIZE 6297 +#define F_ARRAY_AGG_ARRAY_DESERIALIZE 6298 +#define F_STRING_AGG_COMBINE 6299 +#define F_STRING_AGG_SERIALIZE 6300 +#define F_STRING_AGG_DESERIALIZE 6301 +#define F_PG_LOG_STANDBY_SNAPSHOT 6305 +#define F_WINDOW_PERCENT_RANK_SUPPORT 6306 +#define F_WINDOW_CUME_DIST_SUPPORT 6307 +#define F_WINDOW_NTILE_SUPPORT 6308 +#define F_PG_STAT_GET_DB_CONFLICT_LOGICALSLOT 6309 +#define F_PG_STAT_GET_LASTSCAN 6310 +#define F_SYSTEM_USER 6311 #endif /* FMGROIDS_H */ diff --git a/parser/include/utils/fmgrprotos.h b/parser/include/utils/fmgrprotos.h index 151e8dda..d5054fea 100644 --- a/parser/include/utils/fmgrprotos.h +++ b/parser/include/utils/fmgrprotos.h @@ -3,7 +3,7 @@ * fmgrprotos.h * Prototypes for built-in functions. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -1939,9 +1939,9 @@ extern Datum numeric_sortsupport(PG_FUNCTION_ARGS); extern Datum gist_poly_distance(PG_FUNCTION_ARGS); extern Datum dist_cpoint(PG_FUNCTION_ARGS); extern Datum dist_polyp(PG_FUNCTION_ARGS); -extern Datum pg_read_file_v2(PG_FUNCTION_ARGS); +extern Datum pg_read_file_off_len_missing(PG_FUNCTION_ARGS); extern Datum show_config_by_name_missing_ok(PG_FUNCTION_ARGS); -extern Datum pg_read_binary_file(PG_FUNCTION_ARGS); +extern Datum pg_read_binary_file_off_len_missing(PG_FUNCTION_ARGS); extern Datum pg_notification_queue_usage(PG_FUNCTION_ARGS); extern Datum pg_ls_dir(PG_FUNCTION_ARGS); extern Datum row_security_active(PG_FUNCTION_ARGS); @@ -2745,6 +2745,7 @@ extern Datum pg_replication_origin_progress(PG_FUNCTION_ARGS); extern Datum pg_show_replication_origin_status(PG_FUNCTION_ARGS); extern Datum jsonb_subscript_handler(PG_FUNCTION_ARGS); extern Datum numeric_pg_lsn(PG_FUNCTION_ARGS); +extern Datum pg_stat_get_backend_subxact(PG_FUNCTION_ARGS); extern Datum pg_stat_get_subscription(PG_FUNCTION_ARGS); extern Datum pg_get_publication_tables(PG_FUNCTION_ARGS); extern Datum pg_get_replica_identity_index(PG_FUNCTION_ARGS); @@ -2788,6 +2789,20 @@ extern Datum extract_interval(PG_FUNCTION_ARGS); extern Datum has_parameter_privilege_name_name(PG_FUNCTION_ARGS); extern Datum has_parameter_privilege_id_name(PG_FUNCTION_ARGS); extern Datum has_parameter_privilege_name(PG_FUNCTION_ARGS); +extern Datum pg_read_file_all_missing(PG_FUNCTION_ARGS); +extern Datum pg_read_binary_file_all_missing(PG_FUNCTION_ARGS); +extern Datum pg_input_is_valid(PG_FUNCTION_ARGS); +extern Datum pg_input_error_info(PG_FUNCTION_ARGS); +extern Datum drandom_normal(PG_FUNCTION_ARGS); +extern Datum pg_split_walfile_name(PG_FUNCTION_ARGS); +extern Datum pg_stat_get_io(PG_FUNCTION_ARGS); +extern Datum array_shuffle(PG_FUNCTION_ARGS); +extern Datum array_sample(PG_FUNCTION_ARGS); +extern Datum pg_stat_get_tuples_newpage_updated(PG_FUNCTION_ARGS); +extern Datum pg_stat_get_xact_tuples_newpage_updated(PG_FUNCTION_ARGS); +extern Datum derf(PG_FUNCTION_ARGS); +extern Datum derfc(PG_FUNCTION_ARGS); +extern Datum timestamptz_pl_interval_at_zone(PG_FUNCTION_ARGS); extern Datum pg_get_wal_resource_managers(PG_FUNCTION_ARGS); extern Datum multirange_agg_transfn(PG_FUNCTION_ARGS); extern Datum pg_stat_have_stats(PG_FUNCTION_ARGS); @@ -2825,5 +2840,32 @@ extern Datum regexp_substr(PG_FUNCTION_ARGS); extern Datum pg_ls_logicalsnapdir(PG_FUNCTION_ARGS); extern Datum pg_ls_logicalmapdir(PG_FUNCTION_ARGS); extern Datum pg_ls_replslotdir(PG_FUNCTION_ARGS); +extern Datum timestamptz_mi_interval_at_zone(PG_FUNCTION_ARGS); +extern Datum generate_series_timestamptz_at_zone(PG_FUNCTION_ARGS); +extern Datum json_agg_strict_transfn(PG_FUNCTION_ARGS); +extern Datum json_object_agg_strict_transfn(PG_FUNCTION_ARGS); +extern Datum json_object_agg_unique_transfn(PG_FUNCTION_ARGS); +extern Datum json_object_agg_unique_strict_transfn(PG_FUNCTION_ARGS); +extern Datum jsonb_agg_strict_transfn(PG_FUNCTION_ARGS); +extern Datum jsonb_object_agg_strict_transfn(PG_FUNCTION_ARGS); +extern Datum jsonb_object_agg_unique_transfn(PG_FUNCTION_ARGS); +extern Datum jsonb_object_agg_unique_strict_transfn(PG_FUNCTION_ARGS); +extern Datum any_value_transfn(PG_FUNCTION_ARGS); +extern Datum array_agg_combine(PG_FUNCTION_ARGS); +extern Datum array_agg_serialize(PG_FUNCTION_ARGS); +extern Datum array_agg_deserialize(PG_FUNCTION_ARGS); +extern Datum array_agg_array_combine(PG_FUNCTION_ARGS); +extern Datum array_agg_array_serialize(PG_FUNCTION_ARGS); +extern Datum array_agg_array_deserialize(PG_FUNCTION_ARGS); +extern Datum string_agg_combine(PG_FUNCTION_ARGS); +extern Datum string_agg_serialize(PG_FUNCTION_ARGS); +extern Datum string_agg_deserialize(PG_FUNCTION_ARGS); +extern Datum pg_log_standby_snapshot(PG_FUNCTION_ARGS); +extern Datum window_percent_rank_support(PG_FUNCTION_ARGS); +extern Datum window_cume_dist_support(PG_FUNCTION_ARGS); +extern Datum window_ntile_support(PG_FUNCTION_ARGS); +extern Datum pg_stat_get_db_conflict_logicalslot(PG_FUNCTION_ARGS); +extern Datum pg_stat_get_lastscan(PG_FUNCTION_ARGS); +extern Datum system_user(PG_FUNCTION_ARGS); #endif /* FMGRPROTOS_H */ diff --git a/parser/include/utils/fmgrtab.h b/parser/include/utils/fmgrtab.h index 0a599376..838ffe3b 100644 --- a/parser/include/utils/fmgrtab.h +++ b/parser/include/utils/fmgrtab.h @@ -3,7 +3,7 @@ * fmgrtab.h * The function manager's table of internal functions. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/fmgrtab.h diff --git a/parser/include/utils/guc.h b/parser/include/utils/guc.h index 1bec4c23..2355fc2d 100644 --- a/parser/include/utils/guc.h +++ b/parser/include/utils/guc.h @@ -1,10 +1,9 @@ /*-------------------------------------------------------------------- * guc.h * - * External declarations pertaining to backend/utils/misc/guc.c and - * backend/utils/misc/guc-file.l + * External declarations pertaining to Grand Unified Configuration. * - * Copyright (c) 2000-2022, PostgreSQL Global Development Group + * Copyright (c) 2000-2023, PostgreSQL Global Development Group * Written by Peter Eisentraut . * * src/include/utils/guc.h @@ -203,46 +202,42 @@ typedef enum #define GUC_QUALIFIER_SEPARATOR '.' /* - * bit values in "flags" of a GUC variable + * Bit values in "flags" of a GUC variable. Note that these don't appear + * on disk, so we can reassign their values freely. */ -#define GUC_LIST_INPUT 0x0001 /* input can be list format */ -#define GUC_LIST_QUOTE 0x0002 /* double-quote list elements */ -#define GUC_NO_SHOW_ALL 0x0004 /* exclude from SHOW ALL */ -#define GUC_NO_RESET_ALL 0x0008 /* exclude from RESET ALL */ -#define GUC_REPORT 0x0010 /* auto-report changes to client */ -#define GUC_NOT_IN_SAMPLE 0x0020 /* not in postgresql.conf.sample */ -#define GUC_DISALLOW_IN_FILE 0x0040 /* can't set in postgresql.conf */ -#define GUC_CUSTOM_PLACEHOLDER 0x0080 /* placeholder for custom variable */ -#define GUC_SUPERUSER_ONLY 0x0100 /* show only to superusers */ -#define GUC_IS_NAME 0x0200 /* limit string to NAMEDATALEN-1 */ -#define GUC_NOT_WHILE_SEC_REST 0x0400 /* can't set if security restricted */ -#define GUC_DISALLOW_IN_AUTO_FILE 0x0800 /* can't set in - * PG_AUTOCONF_FILENAME */ - -#define GUC_UNIT_KB 0x1000 /* value is in kilobytes */ -#define GUC_UNIT_BLOCKS 0x2000 /* value is in blocks */ -#define GUC_UNIT_XBLOCKS 0x3000 /* value is in xlog blocks */ -#define GUC_UNIT_MB 0x4000 /* value is in megabytes */ -#define GUC_UNIT_BYTE 0x8000 /* value is in bytes */ -#define GUC_UNIT_MEMORY 0xF000 /* mask for size-related units */ - -#define GUC_UNIT_MS 0x10000 /* value is in milliseconds */ -#define GUC_UNIT_S 0x20000 /* value is in seconds */ -#define GUC_UNIT_MIN 0x30000 /* value is in minutes */ -#define GUC_UNIT_TIME 0xF0000 /* mask for time-related units */ - -#define GUC_EXPLAIN 0x100000 /* include in explain */ - -/* - * GUC_RUNTIME_COMPUTED is intended for runtime-computed GUCs that are only - * available via 'postgres -C' if the server is not running. - */ -#define GUC_RUNTIME_COMPUTED 0x200000 - -#define GUC_UNIT (GUC_UNIT_MEMORY | GUC_UNIT_TIME) - - -/* GUC vars that are actually declared in guc.c, rather than elsewhere */ +#define GUC_LIST_INPUT 0x000001 /* input can be list format */ +#define GUC_LIST_QUOTE 0x000002 /* double-quote list elements */ +#define GUC_NO_SHOW_ALL 0x000004 /* exclude from SHOW ALL */ +#define GUC_NO_RESET 0x000008 /* disallow RESET and SAVE */ +#define GUC_NO_RESET_ALL 0x000010 /* exclude from RESET ALL */ +#define GUC_EXPLAIN 0x000020 /* include in EXPLAIN */ +#define GUC_REPORT 0x000040 /* auto-report changes to client */ +#define GUC_NOT_IN_SAMPLE 0x000080 /* not in postgresql.conf.sample */ +#define GUC_DISALLOW_IN_FILE 0x000100 /* can't set in postgresql.conf */ +#define GUC_CUSTOM_PLACEHOLDER 0x000200 /* placeholder for custom variable */ +#define GUC_SUPERUSER_ONLY 0x000400 /* show only to superusers */ +#define GUC_IS_NAME 0x000800 /* limit string to NAMEDATALEN-1 */ +#define GUC_NOT_WHILE_SEC_REST 0x001000 /* can't set if security restricted */ +#define GUC_DISALLOW_IN_AUTO_FILE \ + 0x002000 /* can't set in PG_AUTOCONF_FILENAME */ +#define GUC_RUNTIME_COMPUTED 0x004000 /* delay processing in 'postgres -C' */ + +#define GUC_UNIT_KB 0x01000000 /* value is in kilobytes */ +#define GUC_UNIT_BLOCKS 0x02000000 /* value is in blocks */ +#define GUC_UNIT_XBLOCKS 0x03000000 /* value is in xlog blocks */ +#define GUC_UNIT_MB 0x04000000 /* value is in megabytes */ +#define GUC_UNIT_BYTE 0x05000000 /* value is in bytes */ +#define GUC_UNIT_MEMORY 0x0F000000 /* mask for size-related units */ + +#define GUC_UNIT_MS 0x10000000 /* value is in milliseconds */ +#define GUC_UNIT_S 0x20000000 /* value is in seconds */ +#define GUC_UNIT_MIN 0x30000000 /* value is in minutes */ +#define GUC_UNIT_TIME 0x70000000 /* mask for time-related units */ + +#define GUC_UNIT (GUC_UNIT_MEMORY | GUC_UNIT_TIME) + + +/* GUC vars that are actually defined in guc_tables.c, rather than elsewhere */ extern PGDLLIMPORT bool Debug_print_plan; extern PGDLLIMPORT bool Debug_print_parse; extern PGDLLIMPORT bool Debug_print_rewritten; @@ -269,7 +264,6 @@ extern PGDLLIMPORT int log_temp_files; extern PGDLLIMPORT double log_statement_sample_rate; extern PGDLLIMPORT double log_xact_sample_rate; extern PGDLLIMPORT __thread char *backtrace_functions; -extern PGDLLIMPORT __thread char *backtrace_symbol_list; extern PGDLLIMPORT int temp_file_limit; @@ -307,7 +301,7 @@ extern void DefineCustomBoolVariable(const char *name, int flags, GucBoolCheckHook check_hook, GucBoolAssignHook assign_hook, - GucShowHook show_hook); + GucShowHook show_hook) pg_attribute_nonnull(1, 4); extern void DefineCustomIntVariable(const char *name, const char *short_desc, @@ -320,7 +314,7 @@ extern void DefineCustomIntVariable(const char *name, int flags, GucIntCheckHook check_hook, GucIntAssignHook assign_hook, - GucShowHook show_hook); + GucShowHook show_hook) pg_attribute_nonnull(1, 4); extern void DefineCustomRealVariable(const char *name, const char *short_desc, @@ -333,7 +327,7 @@ extern void DefineCustomRealVariable(const char *name, int flags, GucRealCheckHook check_hook, GucRealAssignHook assign_hook, - GucShowHook show_hook); + GucShowHook show_hook) pg_attribute_nonnull(1, 4); extern void DefineCustomStringVariable(const char *name, const char *short_desc, @@ -344,7 +338,7 @@ extern void DefineCustomStringVariable(const char *name, int flags, GucStringCheckHook check_hook, GucStringAssignHook assign_hook, - GucShowHook show_hook); + GucShowHook show_hook) pg_attribute_nonnull(1, 4); extern void DefineCustomEnumVariable(const char *name, const char *short_desc, @@ -356,7 +350,7 @@ extern void DefineCustomEnumVariable(const char *name, int flags, GucEnumCheckHook check_hook, GucEnumAssignHook assign_hook, - GucShowHook show_hook); + GucShowHook show_hook) pg_attribute_nonnull(1, 4); extern void MarkGUCPrefixReserved(const char *className); @@ -371,7 +365,6 @@ extern void ProcessConfigFile(GucContext context); extern char *convert_GUC_name_for_parameter_acl(const char *name); extern bool check_GUC_name_for_parameter_acl(const char *name); extern void InitializeGUCOptions(void); -extern void InitializeWalConsistencyChecking(void); extern bool SelectConfigFiles(const char *userDoption, const char *progname); extern void ResetAllOptions(void); extern void AtStart_GUC(void); @@ -380,6 +373,7 @@ extern void AtEOXact_GUC(bool isCommit, int nestLevel); extern void BeginReportingGUCOptions(void); extern void ReportChangedGUCOptions(void); extern void ParseLongOption(const char *string, char **name, char **value); +extern const char *get_config_unit_name(int flags); extern bool parse_int(const char *value, int *result, int flags, const char **hintmsg); extern bool parse_real(const char *value, double *result, int flags, @@ -396,15 +390,6 @@ extern int set_config_option_ext(const char *name, const char *value, extern void AlterSystemSetConfigFile(AlterSystemStmt *altersysstmt); extern char *GetConfigOptionByName(const char *name, const char **varname, bool missing_ok); -extern void GetConfigOptionByNum(int varnum, const char **values, bool *noshow); -extern int GetNumConfigOptions(void); - -extern void SetPGVariable(const char *name, List *args, bool is_local); -extern void GetPGVariable(const char *name, DestReceiver *dest); -extern TupleDesc GetPGVariableResultDesc(const char *name); - -extern void ExecSetVariableStmt(VariableSetStmt *stmt, bool isTopLevel); -extern char *ExtractSetVariableArgs(VariableSetStmt *stmt); extern void ProcessGUCArray(ArrayType *array, GucContext context, GucSource source, GucAction action); @@ -412,6 +397,11 @@ extern ArrayType *GUCArrayAdd(ArrayType *array, const char *name, const char *va extern ArrayType *GUCArrayDelete(ArrayType *array, const char *name); extern ArrayType *GUCArrayReset(ArrayType *array); +extern void *guc_malloc(int elevel, size_t size); +extern pg_nodiscard void *guc_realloc(int elevel, void *old, size_t size); +extern char *guc_strdup(int elevel, const char *src); +extern void guc_free(void *ptr); + #ifdef EXEC_BACKEND extern void write_nondefault_variables(GucContext context); extern void read_nondefault_variables(void); @@ -422,6 +412,13 @@ extern Size EstimateGUCStateSpace(void); extern void SerializeGUCState(Size maxsize, char *start_address); extern void RestoreGUCState(void *gucstate); +/* Functions exported by guc_funcs.c */ +extern void ExecSetVariableStmt(VariableSetStmt *stmt, bool isTopLevel); +extern char *ExtractSetVariableArgs(VariableSetStmt *stmt); +extern void SetPGVariable(const char *name, List *args, bool is_local); +extern void GetPGVariable(const char *name, DestReceiver *dest); +extern TupleDesc GetPGVariableResultDesc(const char *name); + /* Support for messages reported from GUC check hooks */ extern PGDLLIMPORT char *GUC_check_errmsg_string; @@ -442,28 +439,4 @@ extern void GUC_check_errcode(int sqlerrcode); pre_format_elog_string(errno, TEXTDOMAIN), \ GUC_check_errhint_string = format_elog_string - -/* - * The following functions are not in guc.c, but are declared here to avoid - * having to include guc.h in some widely used headers that it really doesn't - * belong in. - */ - -/* in commands/tablespace.c */ -extern bool check_default_tablespace(char **newval, void **extra, GucSource source); -extern bool check_temp_tablespaces(char **newval, void **extra, GucSource source); -extern void assign_temp_tablespaces(const char *newval, void *extra); - -/* in catalog/namespace.c */ -extern bool check_search_path(char **newval, void **extra, GucSource source); -extern void assign_search_path(const char *newval, void *extra); - -/* in access/transam/xlog.c */ -extern bool check_wal_buffers(int *newval, void **extra, GucSource source); -extern void assign_xlog_sync_method(int new_sync_method, void *extra); - -/* in access/transam/xlogprefetcher.c */ -extern bool check_recovery_prefetch(int *new_value, void **extra, GucSource source); -extern void assign_recovery_prefetch(int new_value, void *extra); - #endif /* GUC_H */ diff --git a/parser/include/utils/guc_hooks.h b/parser/include/utils/guc_hooks.h new file mode 100644 index 00000000..952293a1 --- /dev/null +++ b/parser/include/utils/guc_hooks.h @@ -0,0 +1,163 @@ +/*------------------------------------------------------------------------- + * + * guc_hooks.h + * Declarations of per-variable callback functions used by GUC. + * + * These functions are scattered throughout the system, but we + * declare them all here to avoid having to propagate guc.h into + * a lot of unrelated header files. + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * + * src/include/utils/guc_hooks.h + * + *------------------------------------------------------------------------- + */ +#ifndef GUC_HOOKS_H +#define GUC_HOOKS_H 1 + +#include "utils/guc.h" + +/* + * See guc.h for the typedefs that these hook functions should match + * (GucBoolCheckHook and so on). + * + * Please keep the declarations in order by GUC variable name. + */ + +extern bool check_application_name(char **newval, void **extra, + GucSource source); +extern void assign_application_name(const char *newval, void *extra); +extern const char *show_archive_command(void); +extern bool check_autovacuum_max_workers(int *newval, void **extra, + GucSource source); +extern bool check_autovacuum_work_mem(int *newval, void **extra, + GucSource source); +extern bool check_vacuum_buffer_usage_limit(int *newval, void **extra, + GucSource source); +extern bool check_backtrace_functions(char **newval, void **extra, + GucSource source); +extern void assign_backtrace_functions(const char *newval, void *extra); +extern bool check_bonjour(bool *newval, void **extra, GucSource source); +extern bool check_canonical_path(char **newval, void **extra, GucSource source); +extern void assign_checkpoint_completion_target(double newval, void *extra); +extern bool check_client_connection_check_interval(int *newval, void **extra, + GucSource source); +extern bool check_client_encoding(char **newval, void **extra, GucSource source); +extern void assign_client_encoding(const char *newval, void *extra); +extern bool check_cluster_name(char **newval, void **extra, GucSource source); +extern const char *show_data_directory_mode(void); +extern bool check_datestyle(char **newval, void **extra, GucSource source); +extern void assign_datestyle(const char *newval, void *extra); +extern bool check_debug_io_direct(char **newval, void **extra, GucSource source); +extern void assign_debug_io_direct(const char *newval, void *extra); +extern bool check_default_table_access_method(char **newval, void **extra, + GucSource source); +extern bool check_default_tablespace(char **newval, void **extra, + GucSource source); +extern bool check_default_text_search_config(char **newval, void **extra, GucSource source); +extern void assign_default_text_search_config(const char *newval, void *extra); +extern bool check_default_with_oids(bool *newval, void **extra, + GucSource source); +extern bool check_effective_io_concurrency(int *newval, void **extra, + GucSource source); +extern bool check_huge_page_size(int *newval, void **extra, GucSource source); +extern const char *show_in_hot_standby(void); +extern bool check_locale_messages(char **newval, void **extra, GucSource source); +extern void assign_locale_messages(const char *newval, void *extra); +extern bool check_locale_monetary(char **newval, void **extra, GucSource source); +extern void assign_locale_monetary(const char *newval, void *extra); +extern bool check_locale_numeric(char **newval, void **extra, GucSource source); +extern void assign_locale_numeric(const char *newval, void *extra); +extern bool check_locale_time(char **newval, void **extra, GucSource source); +extern void assign_locale_time(const char *newval, void *extra); +extern bool check_log_destination(char **newval, void **extra, + GucSource source); +extern void assign_log_destination(const char *newval, void *extra); +extern const char *show_log_file_mode(void); +extern bool check_log_stats(bool *newval, void **extra, GucSource source); +extern bool check_log_timezone(char **newval, void **extra, GucSource source); +extern void assign_log_timezone(const char *newval, void *extra); +extern const char *show_log_timezone(void); +extern bool check_maintenance_io_concurrency(int *newval, void **extra, + GucSource source); +extern void assign_maintenance_io_concurrency(int newval, void *extra); +extern bool check_max_connections(int *newval, void **extra, GucSource source); +extern bool check_max_wal_senders(int *newval, void **extra, GucSource source); +extern void assign_max_wal_size(int newval, void *extra); +extern bool check_max_worker_processes(int *newval, void **extra, + GucSource source); +extern bool check_max_stack_depth(int *newval, void **extra, GucSource source); +extern void assign_max_stack_depth(int newval, void *extra); +extern bool check_primary_slot_name(char **newval, void **extra, + GucSource source); +extern bool check_random_seed(double *newval, void **extra, GucSource source); +extern void assign_random_seed(double newval, void *extra); +extern const char *show_random_seed(void); +extern bool check_recovery_prefetch(int *new_value, void **extra, + GucSource source); +extern void assign_recovery_prefetch(int new_value, void *extra); +extern bool check_recovery_target(char **newval, void **extra, + GucSource source); +extern void assign_recovery_target(const char *newval, void *extra); +extern bool check_recovery_target_lsn(char **newval, void **extra, + GucSource source); +extern void assign_recovery_target_lsn(const char *newval, void *extra); +extern bool check_recovery_target_name(char **newval, void **extra, + GucSource source); +extern void assign_recovery_target_name(const char *newval, void *extra); +extern bool check_recovery_target_time(char **newval, void **extra, + GucSource source); +extern void assign_recovery_target_time(const char *newval, void *extra); +extern bool check_recovery_target_timeline(char **newval, void **extra, + GucSource source); +extern void assign_recovery_target_timeline(const char *newval, void *extra); +extern bool check_recovery_target_xid(char **newval, void **extra, + GucSource source); +extern void assign_recovery_target_xid(const char *newval, void *extra); +extern bool check_role(char **newval, void **extra, GucSource source); +extern void assign_role(const char *newval, void *extra); +extern const char *show_role(void); +extern bool check_search_path(char **newval, void **extra, GucSource source); +extern void assign_search_path(const char *newval, void *extra); +extern bool check_session_authorization(char **newval, void **extra, GucSource source); +extern void assign_session_authorization(const char *newval, void *extra); +extern void assign_session_replication_role(int newval, void *extra); +extern void assign_stats_fetch_consistency(int newval, void *extra); +extern bool check_ssl(bool *newval, void **extra, GucSource source); +extern bool check_stage_log_stats(bool *newval, void **extra, GucSource source); +extern bool check_synchronous_standby_names(char **newval, void **extra, + GucSource source); +extern void assign_synchronous_standby_names(const char *newval, void *extra); +extern void assign_synchronous_commit(int newval, void *extra); +extern void assign_syslog_facility(int newval, void *extra); +extern void assign_syslog_ident(const char *newval, void *extra); +extern void assign_tcp_keepalives_count(int newval, void *extra); +extern const char *show_tcp_keepalives_count(void); +extern void assign_tcp_keepalives_idle(int newval, void *extra); +extern const char *show_tcp_keepalives_idle(void); +extern void assign_tcp_keepalives_interval(int newval, void *extra); +extern const char *show_tcp_keepalives_interval(void); +extern void assign_tcp_user_timeout(int newval, void *extra); +extern const char *show_tcp_user_timeout(void); +extern bool check_temp_buffers(int *newval, void **extra, GucSource source); +extern bool check_temp_tablespaces(char **newval, void **extra, + GucSource source); +extern void assign_temp_tablespaces(const char *newval, void *extra); +extern bool check_timezone(char **newval, void **extra, GucSource source); +extern void assign_timezone(const char *newval, void *extra); +extern const char *show_timezone(void); +extern bool check_timezone_abbreviations(char **newval, void **extra, + GucSource source); +extern void assign_timezone_abbreviations(const char *newval, void *extra); +extern bool check_transaction_deferrable(bool *newval, void **extra, GucSource source); +extern bool check_transaction_isolation(int *newval, void **extra, GucSource source); +extern bool check_transaction_read_only(bool *newval, void **extra, GucSource source); +extern const char *show_unix_socket_permissions(void); +extern bool check_wal_buffers(int *newval, void **extra, GucSource source); +extern bool check_wal_consistency_checking(char **newval, void **extra, + GucSource source); +extern void assign_wal_consistency_checking(const char *newval, void *extra); +extern void assign_xlog_sync_method(int new_sync_method, void *extra); + +#endif /* GUC_HOOKS_H */ diff --git a/parser/include/utils/guc_tables.h b/parser/include/utils/guc_tables.h index 067d82ad..ab880cae 100644 --- a/parser/include/utils/guc_tables.h +++ b/parser/include/utils/guc_tables.h @@ -5,7 +5,7 @@ * * See src/backend/utils/misc/README for design notes. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * * src/include/utils/guc_tables.h * @@ -14,6 +14,7 @@ #ifndef GUC_TABLES_H #define GUC_TABLES_H 1 +#include "lib/ilist.h" #include "utils/guc.h" /* @@ -56,6 +57,7 @@ enum config_group UNGROUPED, /* use for options not shown in pg_settings */ FILE_LOCATIONS, CONN_AUTH_SETTINGS, + CONN_AUTH_TCP, CONN_AUTH_AUTH, CONN_AUTH_SSL, RESOURCES_MEM, @@ -137,6 +139,11 @@ typedef struct guc_stack * if the value came from an internal source or the config file. Similarly * for reset_srole (which is usually BOOTSTRAP_SUPERUSERID, but not always). * + * Variables that are currently of active interest for maintenance + * operations are linked into various lists using the xxx_link fields. + * The link fields are unused/garbage in variables not currently having + * the specified properties. + * * Note that sourcefile/sourceline are kept here, and not pushed into stacked * values, although in principle they belong with some stacked value if the * active value is session- or transaction-local. This is to avoid bloating @@ -162,6 +169,12 @@ struct config_generic Oid reset_srole; /* role that set the reset value */ GucStack *stack; /* stacked prior values */ void *extra; /* "extra" pointer for current actual value */ + dlist_node nondef_link; /* list link for variables that have source + * different from PGC_S_DEFAULT */ + slist_node stack_link; /* list link for variables that have non-NULL + * stack */ + slist_node report_link; /* list link for variables that have the + * GUC_NEEDS_REPORT bit set in status */ char *last_reported; /* if variable is GUC_REPORT, value last sent * to client (NULL if not yet sent) */ char *sourcefile; /* file current setting is from (NULL if not @@ -227,6 +240,16 @@ struct config_real void *reset_extra; }; +/* + * A note about string GUCs: the boot_val is allowed to be NULL, which leads + * to the reset_val and the actual variable value (*variable) also being NULL. + * However, there is no way to set a NULL value subsequently using + * set_config_option or any other GUC API. Also, GUC APIs such as SHOW will + * display a NULL value as an empty string. Callers that choose to use a NULL + * boot_val should overwrite the setting later in startup, or else be careful + * that NULL doesn't have semantics that are visibly different from an empty + * string. + */ struct config_string { struct config_generic gen; @@ -262,8 +285,28 @@ extern PGDLLIMPORT const char *const config_type_names[]; extern PGDLLIMPORT const char *const GucContext_Names[]; extern PGDLLIMPORT const char *const GucSource_Names[]; +/* data arrays defining all the built-in GUC variables */ +extern PGDLLIMPORT struct config_bool ConfigureNamesBool[]; +extern PGDLLIMPORT struct config_int ConfigureNamesInt[]; +extern PGDLLIMPORT struct config_real ConfigureNamesReal[]; +extern PGDLLIMPORT struct config_string ConfigureNamesString[]; +extern PGDLLIMPORT struct config_enum ConfigureNamesEnum[]; + +/* lookup GUC variables, returning config_generic pointers */ +extern struct config_generic *find_option(const char *name, + bool create_placeholders, + bool skip_errors, + int elevel); +extern struct config_generic **get_explain_guc_options(int *num); + +/* get string value of variable */ +extern char *ShowGUCOption(struct config_generic *record, bool use_units); + +/* get whether or not the GUC variable is visible to current user */ +extern bool ConfigOptionIsVisible(struct config_generic *conf); + /* get the current set of variables */ -extern struct config_generic **get_guc_variables(void); +extern struct config_generic **get_guc_variables(int *num_vars); extern void build_guc_variables(void); @@ -271,6 +314,9 @@ extern void build_guc_variables(void); extern const char *config_enum_lookup_by_value(struct config_enum *record, int val); extern bool config_enum_lookup_by_name(struct config_enum *record, const char *value, int *retval); -extern struct config_generic **get_explain_guc_options(int *num); +extern char *config_enum_get_options(struct config_enum *record, + const char *prefix, + const char *suffix, + const char *separator); #endif /* GUC_TABLES_H */ diff --git a/parser/include/utils/hsearch.h b/parser/include/utils/hsearch.h index 854c3312..bc3d5efa 100644 --- a/parser/include/utils/hsearch.h +++ b/parser/include/utils/hsearch.h @@ -4,7 +4,7 @@ * exported definitions for utils/hash/dynahash.c; see notes therein * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/hsearch.h diff --git a/parser/include/utils/inval.h b/parser/include/utils/inval.h index 0e0323b9..14b4eac0 100644 --- a/parser/include/utils/inval.h +++ b/parser/include/utils/inval.h @@ -4,7 +4,7 @@ * POSTGRES cache invalidation dispatcher definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/inval.h @@ -15,7 +15,7 @@ #define INVAL_H #include "access/htup.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" #include "utils/relcache.h" extern PGDLLIMPORT int debug_discard_caches; @@ -48,7 +48,7 @@ extern void CacheInvalidateRelcacheByTuple(HeapTuple classTuple); extern void CacheInvalidateRelcacheByRelid(Oid relid); -extern void CacheInvalidateSmgr(RelFileNodeBackend rnode); +extern void CacheInvalidateSmgr(RelFileLocatorBackend rlocator); extern void CacheInvalidateRelmap(Oid databaseId); diff --git a/parser/include/utils/logtape.h b/parser/include/utils/logtape.h new file mode 100644 index 00000000..5420a24a --- /dev/null +++ b/parser/include/utils/logtape.h @@ -0,0 +1,77 @@ +/*------------------------------------------------------------------------- + * + * logtape.h + * Management of "logical tapes" within temporary files. + * + * See logtape.c for explanations. + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/utils/logtape.h + * + *------------------------------------------------------------------------- + */ + +#ifndef LOGTAPE_H +#define LOGTAPE_H + +#include "storage/sharedfileset.h" + +/* + * LogicalTapeSet and LogicalTape are opaque types whose details are not + * known outside logtape.c. + */ +typedef struct LogicalTapeSet LogicalTapeSet; +typedef struct LogicalTape LogicalTape; + + +/* + * The approach tuplesort.c takes to parallel external sorts is that workers, + * whose state is almost the same as independent serial sorts, are made to + * produce a final materialized tape of sorted output in all cases. This is + * frozen, just like any case requiring a final materialized tape. However, + * there is one difference, which is that freezing will also export an + * underlying shared fileset BufFile for sharing. Freezing produces TapeShare + * metadata for the worker when this happens, which is passed along through + * shared memory to leader. + * + * The leader process can then pass an array of TapeShare metadata (one per + * worker participant) to LogicalTapeSetCreate(), alongside a handle to a + * shared fileset, which is sufficient to construct a new logical tapeset that + * consists of each of the tapes materialized by workers. + * + * Note that while logtape.c does create an empty leader tape at the end of the + * tapeset in the leader case, it can never be written to due to a restriction + * in the shared buffile infrastructure. + */ +typedef struct TapeShare +{ + /* + * Currently, all the leader process needs is the location of the + * materialized tape's first block. + */ + long firstblocknumber; +} TapeShare; + +/* + * prototypes for functions in logtape.c + */ + +extern LogicalTapeSet *LogicalTapeSetCreate(bool preallocate, + SharedFileSet *fileset, int worker); +extern void LogicalTapeClose(LogicalTape *lt); +extern void LogicalTapeSetClose(LogicalTapeSet *lts); +extern LogicalTape *LogicalTapeCreate(LogicalTapeSet *lts); +extern LogicalTape *LogicalTapeImport(LogicalTapeSet *lts, int worker, TapeShare *shared); +extern void LogicalTapeSetForgetFreeSpace(LogicalTapeSet *lts); +extern size_t LogicalTapeRead(LogicalTape *lt, void *ptr, size_t size); +extern void LogicalTapeWrite(LogicalTape *lt, const void *ptr, size_t size); +extern void LogicalTapeRewindForRead(LogicalTape *lt, size_t buffer_size); +extern void LogicalTapeFreeze(LogicalTape *lt, TapeShare *share); +extern size_t LogicalTapeBackspace(LogicalTape *lt, size_t size); +extern void LogicalTapeSeek(LogicalTape *lt, long blocknum, int offset); +extern void LogicalTapeTell(LogicalTape *lt, long *blocknum, int *offset); +extern long LogicalTapeSetBlocks(LogicalTapeSet *lts); + +#endif /* LOGTAPE_H */ diff --git a/parser/include/utils/lsyscache.h b/parser/include/utils/lsyscache.h index b8dd27d4..4f5418b9 100644 --- a/parser/include/utils/lsyscache.h +++ b/parser/include/utils/lsyscache.h @@ -3,7 +3,7 @@ * lsyscache.h * Convenience routines for common queries in the system catalog cache. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/lsyscache.h @@ -198,6 +198,10 @@ extern Oid get_index_column_opclass(Oid index_oid, int attno); extern bool get_index_isreplident(Oid index_oid); extern bool get_index_isvalid(Oid index_oid); extern bool get_index_isclustered(Oid index_oid); +extern Oid get_publication_oid(const char *pubname, bool missing_ok); +extern char *get_publication_name(Oid pubid, bool missing_ok); +extern Oid get_subscription_oid(const char *subname, bool missing_ok); +extern char *get_subscription_name(Oid subid, bool missing_ok); #define type_is_array(typid) (get_element_type(typid) != InvalidOid) /* type_is_array_domain accepts both plain arrays and domains over arrays */ diff --git a/parser/include/utils/memdebug.h b/parser/include/utils/memdebug.h index 6876e0ac..804ed1fb 100644 --- a/parser/include/utils/memdebug.h +++ b/parser/include/utils/memdebug.h @@ -7,7 +7,7 @@ * empty definitions for Valgrind client request macros we use. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/memdebug.h diff --git a/parser/include/utils/memutils.h b/parser/include/utils/memutils.h index 87882b21..01275a1e 100644 --- a/parser/include/utils/memutils.h +++ b/parser/include/utils/memutils.h @@ -7,7 +7,7 @@ * of the API of the memory management subsystem. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/memutils.h @@ -41,8 +41,11 @@ #define AllocSizeIsValid(size) ((Size) (size) <= MaxAllocSize) +/* Must be less than SIZE_MAX */ #define MaxAllocHugeSize (SIZE_MAX / 2) +#define InvalidAllocSize SIZE_MAX + #define AllocHugeSizeIsValid(size) ((Size) (size) <= MaxAllocHugeSize) @@ -79,6 +82,7 @@ extern void MemoryContextDeleteChildren(MemoryContext context); extern void MemoryContextSetIdentifier(MemoryContext context, const char *id); extern void MemoryContextSetParent(MemoryContext context, MemoryContext new_parent); +extern MemoryContext GetMemoryChunkContext(void *pointer); extern Size GetMemoryChunkSpace(void *pointer); extern MemoryContext MemoryContextGetParent(MemoryContext context); extern bool MemoryContextIsEmpty(MemoryContext context); @@ -92,59 +96,11 @@ extern void MemoryContextAllowInCriticalSection(MemoryContext context, #ifdef MEMORY_CONTEXT_CHECKING extern void MemoryContextCheck(MemoryContext context); #endif -extern bool MemoryContextContains(MemoryContext context, void *pointer); /* Handy macro for copying and assigning context ID ... but note double eval */ #define MemoryContextCopyAndSetIdentifier(cxt, id) \ MemoryContextSetIdentifier(cxt, MemoryContextStrdup(cxt, id)) -/* - * GetMemoryChunkContext - * Given a currently-allocated chunk, determine the context - * it belongs to. - * - * All chunks allocated by any memory context manager are required to be - * preceded by the corresponding MemoryContext stored, without padding, in the - * preceding sizeof(void*) bytes. A currently-allocated chunk must contain a - * backpointer to its owning context. The backpointer is used by pfree() and - * repalloc() to find the context to call. - */ -#ifndef FRONTEND -static inline MemoryContext -GetMemoryChunkContext(void *pointer) -{ - MemoryContext context; - - /* - * Try to detect bogus pointers handed to us, poorly though we can. - * Presumably, a pointer that isn't MAXALIGNED isn't pointing at an - * allocated chunk. - */ - Assert(pointer != NULL); - Assert(pointer == (void *) MAXALIGN(pointer)); - - /* - * OK, it's probably safe to look at the context. - */ - context = *(MemoryContext *) (((char *) pointer) - sizeof(void *)); - - AssertArg(MemoryContextIsValid(context)); - - return context; -} -#endif - -/* - * This routine handles the context-type-independent part of memory - * context creation. It's intended to be called from context-type- - * specific creation routines, and noplace else. - */ -extern void MemoryContextCreate(MemoryContext node, - NodeTag tag, - const MemoryContextMethods *methods, - MemoryContext parent, - const char *name); - extern void HandleLogMemoryContextInterrupt(void); extern void ProcessLogMemoryContextInterrupt(void); diff --git a/parser/include/utils/memutils_internal.h b/parser/include/utils/memutils_internal.h new file mode 100644 index 00000000..2d107bbf --- /dev/null +++ b/parser/include/utils/memutils_internal.h @@ -0,0 +1,136 @@ +/*------------------------------------------------------------------------- + * + * memutils_internal.h + * This file contains declarations for memory allocation utility + * functions for internal use. + * + * + * Portions Copyright (c) 2022-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/utils/memutils_internal.h + * + *------------------------------------------------------------------------- + */ + +#ifndef MEMUTILS_INTERNAL_H +#define MEMUTILS_INTERNAL_H + +#include "utils/memutils.h" + +/* These functions implement the MemoryContext API for AllocSet context. */ +extern void *AllocSetAlloc(MemoryContext context, Size size); +extern void AllocSetFree(void *pointer); +extern void *AllocSetRealloc(void *pointer, Size size); +extern void AllocSetReset(MemoryContext context); +extern void AllocSetDelete(MemoryContext context); +extern MemoryContext AllocSetGetChunkContext(void *pointer); +extern Size AllocSetGetChunkSpace(void *pointer); +extern bool AllocSetIsEmpty(MemoryContext context); +extern void AllocSetStats(MemoryContext context, + MemoryStatsPrintFunc printfunc, void *passthru, + MemoryContextCounters *totals, + bool print_to_stderr); +#ifdef MEMORY_CONTEXT_CHECKING +extern void AllocSetCheck(MemoryContext context); +#endif + +/* These functions implement the MemoryContext API for Generation context. */ +extern void *GenerationAlloc(MemoryContext context, Size size); +extern void GenerationFree(void *pointer); +extern void *GenerationRealloc(void *pointer, Size size); +extern void GenerationReset(MemoryContext context); +extern void GenerationDelete(MemoryContext context); +extern MemoryContext GenerationGetChunkContext(void *pointer); +extern Size GenerationGetChunkSpace(void *pointer); +extern bool GenerationIsEmpty(MemoryContext context); +extern void GenerationStats(MemoryContext context, + MemoryStatsPrintFunc printfunc, void *passthru, + MemoryContextCounters *totals, + bool print_to_stderr); +#ifdef MEMORY_CONTEXT_CHECKING +extern void GenerationCheck(MemoryContext context); +#endif + + +/* These functions implement the MemoryContext API for Slab context. */ +extern void *SlabAlloc(MemoryContext context, Size size); +extern void SlabFree(void *pointer); +extern void *SlabRealloc(void *pointer, Size size); +extern void SlabReset(MemoryContext context); +extern void SlabDelete(MemoryContext context); +extern MemoryContext SlabGetChunkContext(void *pointer); +extern Size SlabGetChunkSpace(void *pointer); +extern bool SlabIsEmpty(MemoryContext context); +extern void SlabStats(MemoryContext context, + MemoryStatsPrintFunc printfunc, void *passthru, + MemoryContextCounters *totals, + bool print_to_stderr); +#ifdef MEMORY_CONTEXT_CHECKING +extern void SlabCheck(MemoryContext context); +#endif + +/* + * These functions support the implementation of palloc_aligned() and are not + * part of a fully-fledged MemoryContext type. + */ +extern void AlignedAllocFree(void *pointer); +extern void *AlignedAllocRealloc(void *pointer, Size size); +extern MemoryContext AlignedAllocGetChunkContext(void *pointer); +extern Size AlignedAllocGetChunkSpace(void *pointer); + +/* + * How many extra bytes do we need to request in order to ensure that we can + * align a pointer to 'alignto'. Since palloc'd pointers are already aligned + * to MAXIMUM_ALIGNOF we can subtract that amount. We also need to make sure + * there is enough space for the redirection MemoryChunk. + */ +#define PallocAlignedExtraBytes(alignto) \ + ((alignto) + (sizeof(MemoryChunk) - MAXIMUM_ALIGNOF)) + +/* + * MemoryContextMethodID + * A unique identifier for each MemoryContext implementation which + * indicates the index into the mcxt_methods[] array. See mcxt.c. + * + * For robust error detection, ensure that MemoryContextMethodID has a value + * for each possible bit-pattern of MEMORY_CONTEXT_METHODID_MASK, and make + * dummy entries for unused IDs in the mcxt_methods[] array. We also try + * to avoid using bit-patterns as valid IDs if they are likely to occur in + * garbage data, or if they could falsely match on chunks that are really from + * malloc not palloc. (We can't tell that for most malloc implementations, + * but it happens that glibc stores flag bits in the same place where we put + * the MemoryContextMethodID, so the possible values are predictable for it.) + */ +typedef enum MemoryContextMethodID +{ + MCTX_UNUSED1_ID, /* 000 occurs in never-used memory */ + MCTX_UNUSED2_ID, /* glibc malloc'd chunks usually match 001 */ + MCTX_UNUSED3_ID, /* glibc malloc'd chunks > 128kB match 010 */ + MCTX_ASET_ID, + MCTX_GENERATION_ID, + MCTX_SLAB_ID, + MCTX_ALIGNED_REDIRECT_ID, + MCTX_UNUSED4_ID /* 111 occurs in wipe_mem'd memory */ +} MemoryContextMethodID; + +/* + * The number of bits that 8-byte memory chunk headers can use to encode the + * MemoryContextMethodID. + */ +#define MEMORY_CONTEXT_METHODID_BITS 3 +#define MEMORY_CONTEXT_METHODID_MASK \ + ((((uint64) 1) << MEMORY_CONTEXT_METHODID_BITS) - 1) + +/* + * This routine handles the context-type-independent part of memory + * context creation. It's intended to be called from context-type- + * specific creation routines, and noplace else. + */ +extern void MemoryContextCreate(MemoryContext node, + NodeTag tag, + MemoryContextMethodID method_id, + MemoryContext parent, + const char *name); + +#endif /* MEMUTILS_INTERNAL_H */ diff --git a/parser/include/utils/memutils_memorychunk.h b/parser/include/utils/memutils_memorychunk.h new file mode 100644 index 00000000..ffa91131 --- /dev/null +++ b/parser/include/utils/memutils_memorychunk.h @@ -0,0 +1,237 @@ +/*------------------------------------------------------------------------- + * + * memutils_memorychunk.h + * Here we define a struct named MemoryChunk which implementations of + * MemoryContexts may use as a header for chunks of memory they allocate. + * + * MemoryChunk provides a lightweight header that a MemoryContext can use to + * store a reference back to the block which the given chunk is allocated on + * and also an additional 30-bits to store another value such as the size of + * the allocated chunk. + * + * Although MemoryChunks are used by each of our MemoryContexts, future + * implementations may choose to implement their own method for storing chunk + * headers. The only requirement is that the header ends with an 8-byte value + * which the least significant 3-bits of are set to the MemoryContextMethodID + * of the given context. + * + * By default, a MemoryChunk is 8 bytes in size, however, when + * MEMORY_CONTEXT_CHECKING is defined the header becomes 16 bytes in size due + * to the additional requested_size field. The MemoryContext may use this + * field for whatever they wish, but it is intended to be used for additional + * checks which are only done in MEMORY_CONTEXT_CHECKING builds. + * + * The MemoryChunk contains a uint64 field named 'hdrmask'. This field is + * used to encode 4 separate pieces of information. Starting with the least + * significant bits of 'hdrmask', the bit space is reserved as follows: + * + * 1. 3-bits to indicate the MemoryContextMethodID as defined by + * MEMORY_CONTEXT_METHODID_MASK + * 2. 1-bit to denote an "external" chunk (see below) + * 3. 30-bits reserved for the MemoryContext to use for anything it + * requires. Most MemoryContext likely want to store the size of the + * chunk here. + * 4. 30-bits for the number of bytes that must be subtracted from the chunk + * to obtain the address of the block that the chunk is stored on. + * + * In some cases, for example when memory allocations become large, it's + * possible fields 3 and 4 above are not large enough to store the values + * required for the chunk. In this case, the MemoryContext can choose to mark + * the chunk as "external" by calling the MemoryChunkSetHdrMaskExternal() + * function. When this is done, fields 3 and 4 are unavailable for use by the + * MemoryContext and it's up to the MemoryContext itself to devise its own + * method for getting the reference to the block. + * + * Interface: + * + * MemoryChunkSetHdrMask: + * Used to set up a non-external MemoryChunk. + * + * MemoryChunkSetHdrMaskExternal: + * Used to set up an externally managed MemoryChunk. + * + * MemoryChunkIsExternal: + * Determine if the given MemoryChunk is externally managed, i.e. + * MemoryChunkSetHdrMaskExternal() was called on the chunk. + * + * MemoryChunkGetValue: + * For non-external chunks, return the stored 30-bit value as it was set + * in the call to MemoryChunkSetHdrMask(). + * + * MemoryChunkGetBlock: + * For non-external chunks, return a pointer to the block as it was set + * in the call to MemoryChunkSetHdrMask(). + * + * Also exports: + * MEMORYCHUNK_MAX_VALUE + * MEMORYCHUNK_MAX_BLOCKOFFSET + * PointerGetMemoryChunk + * MemoryChunkGetPointer + * + * Portions Copyright (c) 2022-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * src/include/utils/memutils_memorychunk.h + * + *------------------------------------------------------------------------- + */ + +#ifndef MEMUTILS_MEMORYCHUNK_H +#define MEMUTILS_MEMORYCHUNK_H + +#include "utils/memutils_internal.h" + + /* + * The maximum allowed value that MemoryContexts can store in the value + * field. Must be 1 less than a power of 2. + */ +#define MEMORYCHUNK_MAX_VALUE UINT64CONST(0x3FFFFFFF) + +/* + * The maximum distance in bytes that a MemoryChunk can be offset from the + * block that is storing the chunk. Must be 1 less than a power of 2. + */ +#define MEMORYCHUNK_MAX_BLOCKOFFSET UINT64CONST(0x3FFFFFFF) + +/* define the least significant base-0 bit of each portion of the hdrmask */ +#define MEMORYCHUNK_EXTERNAL_BASEBIT MEMORY_CONTEXT_METHODID_BITS +#define MEMORYCHUNK_VALUE_BASEBIT (MEMORYCHUNK_EXTERNAL_BASEBIT + 1) +#define MEMORYCHUNK_BLOCKOFFSET_BASEBIT (MEMORYCHUNK_VALUE_BASEBIT + 30) + +/* + * A magic number for storing in the free bits of an external chunk. This + * must mask out the bits used for storing the MemoryContextMethodID and the + * external bit. + */ +#define MEMORYCHUNK_MAGIC (UINT64CONST(0xB1A8DB858EB6EFBA) >> \ + MEMORYCHUNK_VALUE_BASEBIT << \ + MEMORYCHUNK_VALUE_BASEBIT) + +typedef struct MemoryChunk +{ +#ifdef MEMORY_CONTEXT_CHECKING + Size requested_size; +#endif + + /* bitfield for storing details about the chunk */ + uint64 hdrmask; /* must be last */ +} MemoryChunk; + +/* Get the MemoryChunk from the pointer */ +#define PointerGetMemoryChunk(p) \ + ((MemoryChunk *) ((char *) (p) - sizeof(MemoryChunk))) +/* Get the pointer from the MemoryChunk */ +#define MemoryChunkGetPointer(c) \ + ((void *) ((char *) (c) + sizeof(MemoryChunk))) + +/* private macros for making the inline functions below more simple */ +#define HdrMaskIsExternal(hdrmask) \ + ((hdrmask) & (((uint64) 1) << MEMORYCHUNK_EXTERNAL_BASEBIT)) +#define HdrMaskGetValue(hdrmask) \ + (((hdrmask) >> MEMORYCHUNK_VALUE_BASEBIT) & MEMORYCHUNK_MAX_VALUE) + +/* + * We should have used up all the bits here, so the compiler is likely to + * optimize out the & MEMORYCHUNK_MAX_BLOCKOFFSET. + */ +#define HdrMaskBlockOffset(hdrmask) \ + (((hdrmask) >> MEMORYCHUNK_BLOCKOFFSET_BASEBIT) & MEMORYCHUNK_MAX_BLOCKOFFSET) + +/* For external chunks only, check the magic number matches */ +#define HdrMaskCheckMagic(hdrmask) \ + (MEMORYCHUNK_MAGIC == \ + ((hdrmask) >> MEMORYCHUNK_VALUE_BASEBIT << MEMORYCHUNK_VALUE_BASEBIT)) +/* + * MemoryChunkSetHdrMask + * Store the given 'block', 'chunk_size' and 'methodid' in the given + * MemoryChunk. + * + * The number of bytes between 'block' and 'chunk' must be <= + * MEMORYCHUNK_MAX_BLOCKOFFSET. + * 'value' must be <= MEMORYCHUNK_MAX_VALUE. + */ +static inline void +MemoryChunkSetHdrMask(MemoryChunk *chunk, void *block, + Size value, MemoryContextMethodID methodid) +{ + Size blockoffset = (char *) chunk - (char *) block; + + Assert((char *) chunk >= (char *) block); + Assert(blockoffset <= MEMORYCHUNK_MAX_BLOCKOFFSET); + Assert(value <= MEMORYCHUNK_MAX_VALUE); + Assert((int) methodid <= MEMORY_CONTEXT_METHODID_MASK); + + chunk->hdrmask = (((uint64) blockoffset) << MEMORYCHUNK_BLOCKOFFSET_BASEBIT) | + (((uint64) value) << MEMORYCHUNK_VALUE_BASEBIT) | + methodid; +} + +/* + * MemoryChunkSetHdrMaskExternal + * Set 'chunk' as an externally managed chunk. Here we only record the + * MemoryContextMethodID and set the external chunk bit. + */ +static inline void +MemoryChunkSetHdrMaskExternal(MemoryChunk *chunk, + MemoryContextMethodID methodid) +{ + Assert((int) methodid <= MEMORY_CONTEXT_METHODID_MASK); + + chunk->hdrmask = MEMORYCHUNK_MAGIC | (((uint64) 1) << MEMORYCHUNK_EXTERNAL_BASEBIT) | + methodid; +} + +/* + * MemoryChunkIsExternal + * Return true if 'chunk' is marked as external. + */ +static inline bool +MemoryChunkIsExternal(MemoryChunk *chunk) +{ + /* + * External chunks should always store MEMORYCHUNK_MAGIC in the upper + * portion of the hdrmask, check that nothing has stomped on that. + */ + Assert(!HdrMaskIsExternal(chunk->hdrmask) || + HdrMaskCheckMagic(chunk->hdrmask)); + + return HdrMaskIsExternal(chunk->hdrmask); +} + +/* + * MemoryChunkGetValue + * For non-external chunks, returns the value field as it was set in + * MemoryChunkSetHdrMask. + */ +static inline Size +MemoryChunkGetValue(MemoryChunk *chunk) +{ + Assert(!HdrMaskIsExternal(chunk->hdrmask)); + + return HdrMaskGetValue(chunk->hdrmask); +} + +/* + * MemoryChunkGetBlock + * For non-external chunks, returns the pointer to the block as was set + * in MemoryChunkSetHdrMask. + */ +static inline void * +MemoryChunkGetBlock(MemoryChunk *chunk) +{ + Assert(!HdrMaskIsExternal(chunk->hdrmask)); + + return (void *) ((char *) chunk - HdrMaskBlockOffset(chunk->hdrmask)); +} + +/* cleanup all internal definitions */ +#undef MEMORYCHUNK_EXTERNAL_BASEBIT +#undef MEMORYCHUNK_VALUE_BASEBIT +#undef MEMORYCHUNK_BLOCKOFFSET_BASEBIT +#undef MEMORYCHUNK_MAGIC +#undef HdrMaskIsExternal +#undef HdrMaskGetValue +#undef HdrMaskBlockOffset +#undef HdrMaskCheckMagic + +#endif /* MEMUTILS_MEMORYCHUNK_H */ diff --git a/parser/include/utils/numeric.h b/parser/include/utils/numeric.h index 3caa74df..08e4f8c2 100644 --- a/parser/include/utils/numeric.h +++ b/parser/include/utils/numeric.h @@ -5,7 +5,7 @@ * * Original coding 1998, Jan Wieck. Heavily revised 2003, Tom Lane. * - * Copyright (c) 1998-2022, PostgreSQL Global Development Group + * Copyright (c) 1998-2023, PostgreSQL Global Development Group * * src/include/utils/numeric.h * @@ -56,9 +56,24 @@ typedef struct NumericData *Numeric; * fmgr interface macros */ -#define DatumGetNumeric(X) ((Numeric) PG_DETOAST_DATUM(X)) -#define DatumGetNumericCopy(X) ((Numeric) PG_DETOAST_DATUM_COPY(X)) -#define NumericGetDatum(X) PointerGetDatum(X) +static inline Numeric +DatumGetNumeric(Datum X) +{ + return (Numeric) PG_DETOAST_DATUM(X); +} + +static inline Numeric +DatumGetNumericCopy(Datum X) +{ + return (Numeric) PG_DETOAST_DATUM_COPY(X); +} + +static inline Datum +NumericGetDatum(Numeric X) +{ + return PointerGetDatum(X); +} + #define PG_GETARG_NUMERIC(n) DatumGetNumeric(PG_GETARG_DATUM(n)) #define PG_GETARG_NUMERIC_COPY(n) DatumGetNumericCopy(PG_GETARG_DATUM(n)) #define PG_RETURN_NUMERIC(x) return NumericGetDatum(x) @@ -85,6 +100,6 @@ extern Numeric numeric_div_opt_error(Numeric num1, Numeric num2, bool *have_error); extern Numeric numeric_mod_opt_error(Numeric num1, Numeric num2, bool *have_error); -extern int32 numeric_int4_opt_error(Numeric num, bool *error); +extern int32 numeric_int4_opt_error(Numeric num, bool *have_error); #endif /* _PG_NUMERIC_H_ */ diff --git a/parser/include/utils/palloc.h b/parser/include/utils/palloc.h index c39d395c..90a7684d 100644 --- a/parser/include/utils/palloc.h +++ b/parser/include/utils/palloc.h @@ -18,7 +18,7 @@ * everything that should be freed. See utils/mmgr/README for more info. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/palloc.h @@ -73,11 +73,17 @@ extern void *MemoryContextAllocZero(MemoryContext context, Size size); extern void *MemoryContextAllocZeroAligned(MemoryContext context, Size size); extern void *MemoryContextAllocExtended(MemoryContext context, Size size, int flags); +extern void *MemoryContextAllocAligned(MemoryContext context, + Size size, Size alignto, int flags); extern void *palloc(Size size); extern void *palloc0(Size size); extern void *palloc_extended(Size size, int flags); +extern void *palloc_aligned(Size size, Size alignto, int flags); extern pg_nodiscard void *repalloc(void *pointer, Size size); +extern pg_nodiscard void *repalloc_extended(void *pointer, + Size size, int flags); +extern pg_nodiscard void *repalloc0(void *pointer, Size oldsize, Size size); extern void pfree(void *pointer); /* @@ -101,6 +107,7 @@ extern void pfree(void *pointer); * objects of type "type" */ #define repalloc_array(pointer, type, count) ((type *) repalloc(pointer, sizeof(type) * (count))) +#define repalloc0_array(pointer, type, oldcount, count) ((type *) repalloc0(pointer, sizeof(type) * (oldcount), sizeof(type) * (count))) /* * The result of palloc() is always word-aligned, so we can skip testing diff --git a/parser/include/utils/partcache.h b/parser/include/utils/partcache.h index 3394e1fc..eb9bc4b0 100644 --- a/parser/include/utils/partcache.h +++ b/parser/include/utils/partcache.h @@ -2,7 +2,7 @@ * * partcache.h * - * Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Copyright (c) 1996-2023, PostgreSQL Global Development Group * * src/include/utils/partcache.h * @@ -13,6 +13,7 @@ #include "access/attnum.h" #include "fmgr.h" +#include "nodes/parsenodes.h" #include "nodes/pg_list.h" #include "nodes/primnodes.h" #include "partitioning/partdefs.h" @@ -23,7 +24,7 @@ */ typedef struct PartitionKeyData { - char strategy; /* partitioning strategy */ + PartitionStrategy strategy; /* partitioning strategy */ int16 partnatts; /* number of columns in the partition key */ AttrNumber *partattrs; /* attribute numbers of columns in the * partition key or 0 if it's an expr */ diff --git a/parser/include/utils/pg_locale.h b/parser/include/utils/pg_locale.h index e7385fae..e2a72435 100644 --- a/parser/include/utils/pg_locale.h +++ b/parser/include/utils/pg_locale.h @@ -4,7 +4,7 @@ * * src/include/utils/pg_locale.h * - * Copyright (c) 2002-2022, PostgreSQL Global Development Group + * Copyright (c) 2002-2023, PostgreSQL Global Development Group * *----------------------------------------------------------------------- */ @@ -19,8 +19,6 @@ #include #endif -#include "utils/guc.h" - #ifdef USE_ICU /* * ucol_strcollUTF8() was introduced in ICU 50, but it is buggy before ICU 53. @@ -42,6 +40,7 @@ extern PGDLLIMPORT char *locale_messages; extern PGDLLIMPORT char *locale_monetary; extern PGDLLIMPORT char *locale_numeric; extern PGDLLIMPORT char *locale_time; +extern PGDLLIMPORT int icu_validation_level; /* lc_time localization cache */ extern PGDLLIMPORT char *localized_abbrev_days[]; @@ -49,19 +48,11 @@ extern PGDLLIMPORT char *localized_full_days[]; extern PGDLLIMPORT char *localized_abbrev_months[]; extern PGDLLIMPORT char *localized_full_months[]; - -extern bool check_locale_messages(char **newval, void **extra, GucSource source); -extern void assign_locale_messages(const char *newval, void *extra); -extern bool check_locale_monetary(char **newval, void **extra, GucSource source); -extern void assign_locale_monetary(const char *newval, void *extra); -extern bool check_locale_numeric(char **newval, void **extra, GucSource source); -extern void assign_locale_numeric(const char *newval, void *extra); -extern bool check_locale_time(char **newval, void **extra, GucSource source); -extern void assign_locale_time(const char *newval, void *extra); +/* is the databases's LC_CTYPE the C locale? */ +extern PGDLLIMPORT bool database_ctype_is_c; extern bool check_locale(int category, const char *locale, char **canonname); extern char *pg_perm_setlocale(int category, const char *locale); -extern void check_strxfrm_bug(void); extern bool lc_collate_is_c(Oid collation); extern bool lc_ctype_is_c(Oid collation); @@ -106,17 +97,34 @@ typedef struct pg_locale_struct *pg_locale_t; extern PGDLLIMPORT struct pg_locale_struct default_locale; extern void make_icu_collator(const char *iculocstr, + const char *icurules, struct pg_locale_struct *resultp); +extern bool pg_locale_deterministic(pg_locale_t locale); extern pg_locale_t pg_newlocale_from_collation(Oid collid); extern char *get_collation_actual_version(char collprovider, const char *collcollate); +extern int pg_strcoll(const char *arg1, const char *arg2, pg_locale_t locale); +extern int pg_strncoll(const char *arg1, size_t len1, + const char *arg2, size_t len2, pg_locale_t locale); +extern bool pg_strxfrm_enabled(pg_locale_t locale); +extern size_t pg_strxfrm(char *dest, const char *src, size_t destsize, + pg_locale_t locale); +extern size_t pg_strnxfrm(char *dest, size_t destsize, const char *src, + size_t srclen, pg_locale_t locale); +extern bool pg_strxfrm_prefix_enabled(pg_locale_t locale); +extern size_t pg_strxfrm_prefix(char *dest, const char *src, size_t destsize, + pg_locale_t locale); +extern size_t pg_strnxfrm_prefix(char *dest, size_t destsize, const char *src, + size_t srclen, pg_locale_t locale); + +extern void icu_validate_locale(const char *loc_str); +extern char *icu_language_tag(const char *loc_str, int elevel); #ifdef USE_ICU extern int32_t icu_to_uchar(UChar **buff_uchar, const char *buff, size_t nbytes); extern int32_t icu_from_uchar(char **result, const UChar *buff_uchar, int32_t len_uchar); #endif -extern void check_icu_locale(const char *icu_locale); /* These functions convert from/to libc's wchar_t, *not* pg_wchar_t */ extern size_t wchar2char(char *to, const wchar_t *from, size_t tolen, diff --git a/parser/include/utils/pg_lsn.h b/parser/include/utils/pg_lsn.h deleted file mode 100644 index 7b708f10..00000000 --- a/parser/include/utils/pg_lsn.h +++ /dev/null @@ -1,29 +0,0 @@ -/*------------------------------------------------------------------------- - * - * pg_lsn.h - * Declarations for operations on log sequence numbers (LSNs) of - * PostgreSQL. - * - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * src/include/utils/pg_lsn.h - * - *------------------------------------------------------------------------- - */ -#ifndef PG_LSN_H -#define PG_LSN_H - -#include "access/xlogdefs.h" -#include "fmgr.h" - -#define DatumGetLSN(X) ((XLogRecPtr) DatumGetInt64(X)) -#define LSNGetDatum(X) (Int64GetDatum((int64) (X))) - -#define PG_GETARG_LSN(n) DatumGetLSN(PG_GETARG_DATUM(n)) -#define PG_RETURN_LSN(x) return LSNGetDatum(x) - -extern XLogRecPtr pg_lsn_in_internal(const char *str, bool *have_error); - -#endif /* PG_LSN_H */ diff --git a/parser/include/utils/pgstat_internal.h b/parser/include/utils/pgstat_internal.h index 4b65dfef..60fbf939 100644 --- a/parser/include/utils/pgstat_internal.h +++ b/parser/include/utils/pgstat_internal.h @@ -5,7 +5,7 @@ * only be needed by files implementing statistics support (rather than ones * reporting / querying stats). * - * Copyright (c) 2001-2022, PostgreSQL Global Development Group + * Copyright (c) 2001-2023, PostgreSQL Global Development Group * * src/include/utils/pgstat_internal.h * ---------- @@ -102,7 +102,7 @@ typedef struct PgStatShared_HashEntry } PgStatShared_HashEntry; /* - * Common header struct for PgStatShm_Stat*Entry. + * Common header struct for PgStatShared_*. */ typedef struct PgStatShared_Common { @@ -162,8 +162,7 @@ typedef struct PgStat_SubXactStatus * if the transaction commits/aborts. To handle replicas and crashes, * stats drops are included in commit / abort records. */ - dlist_head pending_drops; - int pending_drops_count; + dclist_head pending_drops; /* * Tuple insertion/deletion counts for an open transaction can't be @@ -330,6 +329,17 @@ typedef struct PgStatShared_Checkpointer PgStat_CheckpointerStats reset_offset; } PgStatShared_Checkpointer; +/* Shared-memory ready PgStat_IO */ +typedef struct PgStatShared_IO +{ + /* + * locks[i] protects stats.stats[i]. locks[0] also protects + * stats.stat_reset_timestamp. + */ + LWLock locks[BACKEND_NUM_TYPES]; + PgStat_IO stats; +} PgStatShared_IO; + typedef struct PgStatShared_SLRU { /* lock protects ->stats */ @@ -420,6 +430,7 @@ typedef struct PgStat_ShmemControl PgStatShared_Archiver archiver; PgStatShared_BgWriter bgwriter; PgStatShared_Checkpointer checkpointer; + PgStatShared_IO io; PgStatShared_SLRU slru; PgStatShared_Wal wal; } PgStat_ShmemControl; @@ -443,6 +454,8 @@ typedef struct PgStat_Snapshot PgStat_CheckpointerStats checkpointer; + PgStat_IO io; + PgStat_SLRUStats slru[SLRU_NUM_ELEMENTS]; PgStat_WalStats wal; @@ -550,6 +563,15 @@ extern void pgstat_database_reset_timestamp_cb(PgStatShared_Common *header, Time extern bool pgstat_function_flush_cb(PgStat_EntryRef *entry_ref, bool nowait); +/* + * Functions in pgstat_io.c + */ + +extern bool pgstat_flush_io(bool nowait); +extern void pgstat_io_reset_all_cb(TimestampTz ts); +extern void pgstat_io_snapshot_cb(void); + + /* * Functions in pgstat_relation.c */ @@ -580,7 +602,7 @@ extern void pgstat_attach_shmem(void); extern void pgstat_detach_shmem(void); extern PgStat_EntryRef *pgstat_get_entry_ref(PgStat_Kind kind, Oid dboid, Oid objoid, - bool create, bool *found); + bool create, bool *created_entry); extern bool pgstat_lock_entry(PgStat_EntryRef *entry_ref, bool nowait); extern bool pgstat_lock_entry_shared(PgStat_EntryRef *entry_ref, bool nowait); extern void pgstat_unlock_entry(PgStat_EntryRef *entry_ref); @@ -627,6 +649,7 @@ extern void pgstat_wal_snapshot_cb(void); extern bool pgstat_subscription_flush_cb(PgStat_EntryRef *entry_ref, bool nowait); extern void pgstat_subscription_reset_timestamp_cb(PgStatShared_Common *header, TimestampTz ts); + /* * Functions in pgstat_xact.c */ @@ -643,6 +666,13 @@ extern void pgstat_create_transactional(PgStat_Kind kind, Oid dboid, Oid objoid) extern PGDLLIMPORT PgStat_LocalState pgStatLocal; +/* + * Variables in pgstat_io.c + */ + +extern PGDLLIMPORT bool have_iostats; + + /* * Variables in pgstat_slru.c */ @@ -739,7 +769,7 @@ pgstat_copy_changecounted_stats(void *dst, void *src, size_t len, static inline int pgstat_cmp_hash_key(const void *a, const void *b, size_t size, void *arg) { - AssertArg(size == sizeof(PgStat_HashKey) && arg == NULL); + Assert(size == sizeof(PgStat_HashKey) && arg == NULL); return memcmp(a, b, sizeof(PgStat_HashKey)); } @@ -749,7 +779,7 @@ pgstat_hash_hash_key(const void *d, size_t size, void *arg) const PgStat_HashKey *key = (PgStat_HashKey *) d; uint32 hash; - AssertArg(size == sizeof(PgStat_HashKey) && arg == NULL); + Assert(size == sizeof(PgStat_HashKey) && arg == NULL); hash = murmurhash32(key->kind); hash = hash_combine(hash, murmurhash32(key->dboid)); diff --git a/parser/include/utils/pidfile.h b/parser/include/utils/pidfile.h index 14bfba42..1393a534 100644 --- a/parser/include/utils/pidfile.h +++ b/parser/include/utils/pidfile.h @@ -3,7 +3,7 @@ * pidfile.h * Declarations describing the data directory lock file (postmaster.pid) * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/pidfile.h diff --git a/parser/include/utils/plancache.h b/parser/include/utils/plancache.h index 0499635f..a443181d 100644 --- a/parser/include/utils/plancache.h +++ b/parser/include/utils/plancache.h @@ -5,7 +5,7 @@ * * See plancache.c for comments. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/plancache.h diff --git a/parser/include/utils/portal.h b/parser/include/utils/portal.h index aeddbdaf..aa08b1e0 100644 --- a/parser/include/utils/portal.h +++ b/parser/include/utils/portal.h @@ -36,7 +36,7 @@ * to look like NO SCROLL cursors. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/portal.h diff --git a/parser/include/utils/probes.h b/parser/include/utils/probes.h index 54316d06..f600a965 100644 --- a/parser/include/utils/probes.h +++ b/parser/include/utils/probes.h @@ -50,14 +50,18 @@ #define TRACE_POSTGRESQL_SORT_START_ENABLED() (0) #define TRACE_POSTGRESQL_SORT_DONE(INT1, INT2) do {} while (0) #define TRACE_POSTGRESQL_SORT_DONE_ENABLED() (0) -#define TRACE_POSTGRESQL_BUFFER_READ_START(INT1, INT2, INT3, INT4, INT5, INT6, INT7) do {} while (0) +#define TRACE_POSTGRESQL_BUFFER_READ_START(INT1, INT2, INT3, INT4, INT5, INT6) do {} while (0) #define TRACE_POSTGRESQL_BUFFER_READ_START_ENABLED() (0) -#define TRACE_POSTGRESQL_BUFFER_READ_DONE(INT1, INT2, INT3, INT4, INT5, INT6, INT7, INT8) do {} while (0) +#define TRACE_POSTGRESQL_BUFFER_READ_DONE(INT1, INT2, INT3, INT4, INT5, INT6, INT7) do {} while (0) #define TRACE_POSTGRESQL_BUFFER_READ_DONE_ENABLED() (0) #define TRACE_POSTGRESQL_BUFFER_FLUSH_START(INT1, INT2, INT3, INT4, INT5) do {} while (0) #define TRACE_POSTGRESQL_BUFFER_FLUSH_START_ENABLED() (0) #define TRACE_POSTGRESQL_BUFFER_FLUSH_DONE(INT1, INT2, INT3, INT4, INT5) do {} while (0) #define TRACE_POSTGRESQL_BUFFER_FLUSH_DONE_ENABLED() (0) +#define TRACE_POSTGRESQL_BUFFER_EXTEND_START(INT1, INT2, INT3, INT4, INT5, INT6) do {} while (0) +#define TRACE_POSTGRESQL_BUFFER_EXTEND_START_ENABLED() (0) +#define TRACE_POSTGRESQL_BUFFER_EXTEND_DONE(INT1, INT2, INT3, INT4, INT5, INT6, INT7) do {} while (0) +#define TRACE_POSTGRESQL_BUFFER_EXTEND_DONE_ENABLED() (0) #define TRACE_POSTGRESQL_BUFFER_CHECKPOINT_START(INT1) do {} while (0) #define TRACE_POSTGRESQL_BUFFER_CHECKPOINT_START_ENABLED() (0) #define TRACE_POSTGRESQL_BUFFER_CHECKPOINT_SYNC_START() do {} while (0) @@ -70,10 +74,6 @@ #define TRACE_POSTGRESQL_BUFFER_SYNC_WRITTEN_ENABLED() (0) #define TRACE_POSTGRESQL_BUFFER_SYNC_DONE(INT1, INT2, INT3) do {} while (0) #define TRACE_POSTGRESQL_BUFFER_SYNC_DONE_ENABLED() (0) -#define TRACE_POSTGRESQL_BUFFER_WRITE_DIRTY_START(INT1, INT2, INT3, INT4, INT5) do {} while (0) -#define TRACE_POSTGRESQL_BUFFER_WRITE_DIRTY_START_ENABLED() (0) -#define TRACE_POSTGRESQL_BUFFER_WRITE_DIRTY_DONE(INT1, INT2, INT3, INT4, INT5) do {} while (0) -#define TRACE_POSTGRESQL_BUFFER_WRITE_DIRTY_DONE_ENABLED() (0) #define TRACE_POSTGRESQL_DEADLOCK_FOUND() do {} while (0) #define TRACE_POSTGRESQL_DEADLOCK_FOUND_ENABLED() (0) #define TRACE_POSTGRESQL_CHECKPOINT_START(INT1) do {} while (0) diff --git a/parser/include/utils/ps_status.h b/parser/include/utils/ps_status.h index bba46359..ff5a2b2b 100644 --- a/parser/include/utils/ps_status.h +++ b/parser/include/utils/ps_status.h @@ -12,13 +12,35 @@ #ifndef PS_STATUS_H #define PS_STATUS_H +/* disabled on Windows as the performance overhead can be significant */ +#ifdef WIN32 +#define DEFAULT_UPDATE_PROCESS_TITLE false +#else +#define DEFAULT_UPDATE_PROCESS_TITLE true +#endif + extern PGDLLIMPORT bool update_process_title; extern char **save_ps_display_args(int argc, char **argv); extern void init_ps_display(const char *fixed_part); -extern void set_ps_display(const char *activity); +extern void set_ps_display_suffix(const char *suffix); + +extern void set_ps_display_remove_suffix(void); + +extern void set_ps_display_with_len(const char *activity, size_t len); + +/* + * set_ps_display + * inlined to allow strlen to be evaluated during compilation when + * passing string constants. + */ +static inline void +set_ps_display(const char *activity) +{ + set_ps_display_with_len(activity, strlen(activity)); +} extern const char *get_ps_display(int *displen); diff --git a/parser/include/utils/queryenvironment.h b/parser/include/utils/queryenvironment.h index 23a16a91..532219ad 100644 --- a/parser/include/utils/queryenvironment.h +++ b/parser/include/utils/queryenvironment.h @@ -4,7 +4,7 @@ * Access to functions to mutate the query environment and retrieve the * actual data related to entries (if any). * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/queryenvironment.h diff --git a/parser/include/utils/regproc.h b/parser/include/utils/regproc.h index a36ceba7..a1f7c6b0 100644 --- a/parser/include/utils/regproc.h +++ b/parser/include/utils/regproc.h @@ -3,7 +3,7 @@ * regproc.h * Functions for the built-in types regproc, regclass, regtype, etc. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/regproc.h @@ -25,10 +25,10 @@ extern char *format_procedure_extended(Oid procedure_oid, bits16 flags); #define FORMAT_OPERATOR_FORCE_QUALIFY 0x02 /* force qualification */ extern char *format_operator_extended(Oid operator_oid, bits16 flags); -extern List *stringToQualifiedNameList(const char *string); +extern List *stringToQualifiedNameList(const char *string, Node *escontext); extern char *format_procedure(Oid procedure_oid); extern char *format_procedure_qualified(Oid procedure_oid); -extern void format_procedure_parts(Oid operator_oid, List **objnames, +extern void format_procedure_parts(Oid procedure_oid, List **objnames, List **objargs, bool missing_ok); extern char *format_operator(Oid operator_oid); diff --git a/parser/include/utils/rel.h b/parser/include/utils/rel.h index 1896a9a0..1426a353 100644 --- a/parser/include/utils/rel.h +++ b/parser/include/utils/rel.h @@ -4,7 +4,7 @@ * POSTGRES relation descriptor (a/k/a relcache entry) definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/rel.h @@ -16,6 +16,7 @@ #include "access/tupdesc.h" #include "access/xlog.h" +#include "catalog/catalog.h" #include "catalog/pg_class.h" #include "catalog/pg_index.h" #include "catalog/pg_publication.h" @@ -23,7 +24,7 @@ #include "partitioning/partdefs.h" #include "rewrite/prs2lock.h" #include "storage/block.h" -#include "storage/relfilenode.h" +#include "storage/relfilelocator.h" #include "storage/smgr.h" #include "utils/relcache.h" #include "utils/reltrigger.h" @@ -53,7 +54,7 @@ typedef LockInfoData *LockInfo; typedef struct RelationData { - RelFileNode rd_node; /* relation physical identifier */ + RelFileLocator rd_locator; /* relation physical identifier */ SMgrRelation rd_smgr; /* cached file handle, or NULL */ int rd_refcnt; /* reference count */ BackendId rd_backend; /* owning backend id, if temporary relation */ @@ -66,44 +67,45 @@ typedef struct RelationData /*---------- * rd_createSubid is the ID of the highest subtransaction the rel has - * survived into or zero if the rel or its rd_node was created before the - * current top transaction. (IndexStmt.oldNode leads to the case of a new - * rel with an old rd_node.) rd_firstRelfilenodeSubid is the ID of the - * highest subtransaction an rd_node change has survived into or zero if - * rd_node matches the value it had at the start of the current top + * survived into or zero if the rel or its storage was created before the + * current top transaction. (IndexStmt.oldNumber leads to the case of a new + * rel with an old rd_locator.) rd_firstRelfilelocatorSubid is the ID of the + * highest subtransaction an rd_locator change has survived into or zero if + * rd_locator matches the value it had at the start of the current top * transaction. (Rolling back the subtransaction that - * rd_firstRelfilenodeSubid denotes would restore rd_node to the value it + * rd_firstRelfilelocatorSubid denotes would restore rd_locator to the value it * had at the start of the current top transaction. Rolling back any * lower subtransaction would not.) Their accuracy is critical to * RelationNeedsWAL(). * - * rd_newRelfilenodeSubid is the ID of the highest subtransaction the - * most-recent relfilenode change has survived into or zero if not changed + * rd_newRelfilelocatorSubid is the ID of the highest subtransaction the + * most-recent relfilenumber change has survived into or zero if not changed * in the current transaction (or we have forgotten changing it). This * field is accurate when non-zero, but it can be zero when a relation has - * multiple new relfilenodes within a single transaction, with one of them + * multiple new relfilenumbers within a single transaction, with one of them * occurring in a subsequently aborted subtransaction, e.g. * BEGIN; * TRUNCATE t; * SAVEPOINT save; * TRUNCATE t; * ROLLBACK TO save; - * -- rd_newRelfilenodeSubid is now forgotten + * -- rd_newRelfilelocatorSubid is now forgotten * * If every rd_*Subid field is zero, they are read-only outside - * relcache.c. Files that trigger rd_node changes by updating + * relcache.c. Files that trigger rd_locator changes by updating * pg_class.reltablespace and/or pg_class.relfilenode call - * RelationAssumeNewRelfilenode() to update rd_*Subid. + * RelationAssumeNewRelfilelocator() to update rd_*Subid. * * rd_droppedSubid is the ID of the highest subtransaction that a drop of * the rel has survived into. In entries visible outside relcache.c, this * is always zero. */ SubTransactionId rd_createSubid; /* rel was created in current xact */ - SubTransactionId rd_newRelfilenodeSubid; /* highest subxact changing - * rd_node to current value */ - SubTransactionId rd_firstRelfilenodeSubid; /* highest subxact changing - * rd_node to any value */ + SubTransactionId rd_newRelfilelocatorSubid; /* highest subxact changing + * rd_locator to current value */ + SubTransactionId rd_firstRelfilelocatorSubid; /* highest subxact + * changing rd_locator to + * any value */ SubTransactionId rd_droppedSubid; /* dropped with another Subid set */ Form_pg_class rd_rel; /* RELATION tuple */ @@ -155,10 +157,12 @@ typedef struct RelationData List *rd_statlist; /* list of OIDs of extended stats */ /* data managed by RelationGetIndexAttrBitmap: */ - Bitmapset *rd_indexattr; /* identifies columns used in indexes */ + bool rd_attrsvalid; /* are bitmaps of attrs valid? */ Bitmapset *rd_keyattr; /* cols that can be ref'd by foreign keys */ Bitmapset *rd_pkattr; /* cols included in primary key */ Bitmapset *rd_idattr; /* included in replica identity index */ + Bitmapset *rd_hotblockingattr; /* cols blocking HOT update */ + Bitmapset *rd_summarizedattr; /* cols indexed by summarizing indexes */ PublicationDesc *rd_pubdesc; /* publication descriptor, or NULL */ @@ -267,15 +271,27 @@ typedef struct RelationData */ typedef struct ForeignKeyCacheInfo { + pg_node_attr(no_equal, no_read, no_query_jumble) + NodeTag type; - Oid conoid; /* oid of the constraint itself */ - Oid conrelid; /* relation constrained by the foreign key */ - Oid confrelid; /* relation referenced by the foreign key */ - int nkeys; /* number of columns in the foreign key */ - /* these arrays each have nkeys valid entries: */ - AttrNumber conkey[INDEX_MAX_KEYS]; /* cols in referencing table */ - AttrNumber confkey[INDEX_MAX_KEYS]; /* cols in referenced table */ - Oid conpfeqop[INDEX_MAX_KEYS]; /* PK = FK operator OIDs */ + /* oid of the constraint itself */ + Oid conoid; + /* relation constrained by the foreign key */ + Oid conrelid; + /* relation referenced by the foreign key */ + Oid confrelid; + /* number of columns in the foreign key */ + int nkeys; + + /* + * these arrays each have nkeys valid entries: + */ + /* cols in referencing table */ + AttrNumber conkey[INDEX_MAX_KEYS] pg_node_attr(array_size(nkeys)); + /* cols in referenced table */ + AttrNumber confkey[INDEX_MAX_KEYS] pg_node_attr(array_size(nkeys)); + /* PK = FK operator OIDs */ + Oid conpfeqop[INDEX_MAX_KEYS] pg_node_attr(array_size(nkeys)); } ForeignKeyCacheInfo; @@ -531,13 +547,14 @@ typedef struct ViewOptions /* * RelationIsMapped - * True if the relation uses the relfilenode map. Note multiple eval + * True if the relation uses the relfilenumber map. Note multiple eval * of argument! */ #define RelationIsMapped(relation) \ (RELKIND_HAS_STORAGE((relation)->rd_rel->relkind) && \ - ((relation)->rd_rel->relfilenode == InvalidOid)) + ((relation)->rd_rel->relfilenode == InvalidRelFileNumber)) +#ifndef FRONTEND /* * RelationGetSmgr * Returns smgr file handle for a relation, opening it if needed. @@ -555,24 +572,24 @@ static inline SMgrRelation RelationGetSmgr(Relation rel) { if (unlikely(rel->rd_smgr == NULL)) - smgrsetowner(&(rel->rd_smgr), smgropen(rel->rd_node, rel->rd_backend)); + smgrsetowner(&(rel->rd_smgr), smgropen(rel->rd_locator, rel->rd_backend)); return rel->rd_smgr; } /* * RelationCloseSmgr * Close the relation at the smgr level, if not already done. - * - * Note: smgrclose should unhook from owner pointer, hence the Assert. */ -#define RelationCloseSmgr(relation) \ - do { \ - if ((relation)->rd_smgr != NULL) \ - { \ - smgrclose((relation)->rd_smgr); \ - Assert((relation)->rd_smgr == NULL); \ - } \ - } while (0) +static inline void +RelationCloseSmgr(Relation relation) +{ + if (relation->rd_smgr != NULL) + smgrclose(relation->rd_smgr); + + /* smgrclose should unhook from owner pointer */ + Assert(relation->rd_smgr == NULL); +} +#endif /* !FRONTEND */ /* * RelationGetTargetBlock @@ -607,12 +624,12 @@ RelationGetSmgr(Relation rel) * * Returns false if wal_level = minimal and this relation is created or * truncated in the current transaction. See "Skipping WAL for New - * RelFileNode" in src/backend/access/transam/README. + * RelFileLocator" in src/backend/access/transam/README. */ #define RelationNeedsWAL(relation) \ (RelationIsPermanent(relation) && (XLogIsNeeded() || \ (relation->rd_createSubid == InvalidSubTransactionId && \ - relation->rd_firstRelfilenodeSubid == InvalidSubTransactionId))) + relation->rd_firstRelfilelocatorSubid == InvalidSubTransactionId))) /* * RelationUsesLocalBuffers diff --git a/parser/include/utils/relcache.h b/parser/include/utils/relcache.h index c93d8654..38524641 100644 --- a/parser/include/utils/relcache.h +++ b/parser/include/utils/relcache.h @@ -4,7 +4,7 @@ * Relation descriptor cache definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/relcache.h @@ -15,6 +15,7 @@ #define RELCACHE_H #include "access/tupdesc.h" +#include "common/relpath.h" #include "nodes/bitmapset.h" @@ -50,15 +51,19 @@ extern Oid RelationGetReplicaIndex(Relation relation); extern List *RelationGetIndexExpressions(Relation relation); extern List *RelationGetDummyIndexExpressions(Relation relation); extern List *RelationGetIndexPredicate(Relation relation); -extern Datum *RelationGetIndexRawAttOptions(Relation relation); +extern Datum *RelationGetIndexRawAttOptions(Relation indexrel); extern bytea **RelationGetIndexAttOptions(Relation relation, bool copy); +/* + * Which set of columns to return by RelationGetIndexAttrBitmap. + */ typedef enum IndexAttrBitmapKind { - INDEX_ATTR_BITMAP_ALL, INDEX_ATTR_BITMAP_KEY, INDEX_ATTR_BITMAP_PRIMARY_KEY, - INDEX_ATTR_BITMAP_IDENTITY_KEY + INDEX_ATTR_BITMAP_IDENTITY_KEY, + INDEX_ATTR_BITMAP_HOT_BLOCKING, + INDEX_ATTR_BITMAP_SUMMARIZED } IndexAttrBitmapKind; extern Bitmapset *RelationGetIndexAttrBitmap(Relation relation, @@ -103,7 +108,7 @@ extern Relation RelationBuildLocalRelation(const char *relname, TupleDesc tupDesc, Oid relid, Oid accessmtd, - Oid relfilenode, + RelFileNumber relfilenumber, Oid reltablespace, bool shared_relation, bool mapped_relation, @@ -111,10 +116,10 @@ extern Relation RelationBuildLocalRelation(const char *relname, char relkind); /* - * Routines to manage assignment of new relfilenode to a relation + * Routines to manage assignment of new relfilenumber to a relation */ -extern void RelationSetNewRelfilenode(Relation relation, char persistence); -extern void RelationAssumeNewRelfilenode(Relation relation); +extern void RelationSetNewRelfilenumber(Relation relation, char persistence); +extern void RelationAssumeNewRelfilelocator(Relation relation); /* * Routines for flushing/rebuilding relcache entries in various scenarios diff --git a/parser/include/utils/reltrigger.h b/parser/include/utils/reltrigger.h index 9bac164a..df9a2fb6 100644 --- a/parser/include/utils/reltrigger.h +++ b/parser/include/utils/reltrigger.h @@ -4,7 +4,7 @@ * POSTGRES relation trigger definitions. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/reltrigger.h diff --git a/parser/include/utils/resowner.h b/parser/include/utils/resowner.h index 4aff7015..cd070b60 100644 --- a/parser/include/utils/resowner.h +++ b/parser/include/utils/resowner.h @@ -9,7 +9,7 @@ * See utils/resowner/README for more info. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/resowner.h diff --git a/parser/include/utils/rls.h b/parser/include/utils/rls.h deleted file mode 100644 index 75259cc1..00000000 --- a/parser/include/utils/rls.h +++ /dev/null @@ -1,50 +0,0 @@ -/*------------------------------------------------------------------------- - * - * rls.h - * Header file for Row Level Security (RLS) utility commands to be used - * with the rowsecurity feature. - * - * Copyright (c) 2007-2022, PostgreSQL Global Development Group - * - * src/include/utils/rls.h - * - *------------------------------------------------------------------------- - */ -#ifndef RLS_H -#define RLS_H - -/* GUC variable */ -extern PGDLLIMPORT bool row_security; - -/* - * Used by callers of check_enable_rls. - * - * RLS could be completely disabled on the tables involved in the query, - * which is the simple case, or it may depend on the current environment - * (the role which is running the query or the value of the row_security - * GUC), or it might be simply enabled as usual. - * - * If RLS isn't on the table involved then RLS_NONE is returned to indicate - * that we don't need to worry about invalidating the query plan for RLS - * reasons. If RLS is on the table, but we are bypassing it for now, then - * we return RLS_NONE_ENV to indicate that, if the environment changes, - * we need to invalidate and replan. Finally, if RLS should be turned on - * for the query, then we return RLS_ENABLED, which means we also need to - * invalidate if the environment changes. - * - * Note that RLS_ENABLED will also be returned if noError is true - * (indicating that the caller simply want to know if RLS should be applied - * for this user but doesn't want an error thrown if it is; this is used - * by other error cases where we're just trying to decide if data from the - * table should be passed back to the user or not). - */ -enum CheckEnableRlsResult -{ - RLS_NONE, - RLS_NONE_ENV, - RLS_ENABLED -}; - -extern int check_enable_rls(Oid relid, Oid checkAsUser, bool noError); - -#endif /* RLS_H */ diff --git a/parser/include/utils/ruleutils.h b/parser/include/utils/ruleutils.h index 7d489718..b006d9d4 100644 --- a/parser/include/utils/ruleutils.h +++ b/parser/include/utils/ruleutils.h @@ -3,7 +3,7 @@ * ruleutils.h * Declarations for ruleutils.c * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/ruleutils.h @@ -20,9 +20,14 @@ struct Plan; /* avoid including plannodes.h here */ struct PlannedStmt; +/* Flags for pg_get_indexdef_columns_extended() */ +#define RULE_INDEXDEF_PRETTY 0x01 +#define RULE_INDEXDEF_KEYS_ONLY 0x02 /* ignore included attributes */ extern char *pg_get_indexdef_string(Oid indexrelid); extern char *pg_get_indexdef_columns(Oid indexrelid, bool pretty); +extern char *pg_get_indexdef_columns_extended(Oid indexrelid, + bits16 flags); extern char *pg_get_querydef(Query *query, bool pretty); extern char *pg_get_partkeydef_columns(Oid relid, bool pretty); diff --git a/parser/include/utils/sharedtuplestore.h b/parser/include/utils/sharedtuplestore.h index 79be13d5..c7075ad0 100644 --- a/parser/include/utils/sharedtuplestore.h +++ b/parser/include/utils/sharedtuplestore.h @@ -3,7 +3,7 @@ * sharedtuplestore.h * Simple mechanism for sharing tuples between backends. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/sharedtuplestore.h diff --git a/parser/include/utils/snapmgr.h b/parser/include/utils/snapmgr.h index 67b217b1..980d37a1 100644 --- a/parser/include/utils/snapmgr.h +++ b/parser/include/utils/snapmgr.h @@ -3,7 +3,7 @@ * snapmgr.h * POSTGRES snapshot manager * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/snapmgr.h @@ -97,11 +97,13 @@ extern PGDLLIMPORT SnapshotData CatalogSnapshotData; ((snapshot)->snapshot_type == SNAPSHOT_MVCC || \ (snapshot)->snapshot_type == SNAPSHOT_HISTORIC_MVCC) +#ifndef FRONTEND static inline bool OldSnapshotThresholdActive(void) { return old_snapshot_threshold >= 0; } +#endif extern Snapshot GetTransactionSnapshot(void); extern Snapshot GetLatestSnapshot(void); @@ -167,7 +169,7 @@ extern bool XidInMVCCSnapshot(TransactionId xid, Snapshot snapshot); /* Support for catalog timetravel for logical decoding */ struct HTAB; extern struct HTAB *HistoricSnapshotGetTupleCids(void); -extern void SetupHistoricSnapshot(Snapshot snapshot_now, struct HTAB *tuplecids); +extern void SetupHistoricSnapshot(Snapshot historic_snapshot, struct HTAB *tuplecids); extern void TeardownHistoricSnapshot(bool is_error); extern bool HistoricSnapshotActive(void); diff --git a/parser/include/utils/snapshot.h b/parser/include/utils/snapshot.h index 4e96f1af..583a667a 100644 --- a/parser/include/utils/snapshot.h +++ b/parser/include/utils/snapshot.h @@ -3,7 +3,7 @@ * snapshot.h * POSTGRES snapshot definition * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/snapshot.h diff --git a/parser/include/utils/sortsupport.h b/parser/include/utils/sortsupport.h index 8c36cf8d..475ed1d5 100644 --- a/parser/include/utils/sortsupport.h +++ b/parser/include/utils/sortsupport.h @@ -42,7 +42,7 @@ * function for such cases, but probably not any other acceleration method. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/sortsupport.h @@ -372,7 +372,7 @@ ApplySortAbbrevFullComparator(Datum datum1, bool isNull1, /* * Datum comparison functions that we have specialized sort routines for. - * Datatypes that install these as their comparator or abbrevated comparator + * Datatypes that install these as their comparator or abbreviated comparator * are eligible for faster sorting. */ extern int ssup_datum_unsigned_cmp(Datum x, Datum y, SortSupport ssup); diff --git a/parser/include/utils/syscache.h b/parser/include/utils/syscache.h index 4463ea66..67ea6e49 100644 --- a/parser/include/utils/syscache.h +++ b/parser/include/utils/syscache.h @@ -6,7 +6,7 @@ * See also lsyscache.h, which provides convenience routines for * common cache-lookup operations. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/syscache.h @@ -157,6 +157,9 @@ extern HeapTuple SearchSysCacheCopyAttNum(Oid relid, int16 attnum); extern Datum SysCacheGetAttr(int cacheId, HeapTuple tup, AttrNumber attributeNumber, bool *isNull); +extern Datum SysCacheGetAttrNotNull(int cacheId, HeapTuple tup, + AttrNumber attributeNumber); + extern uint32 GetSysCacheHashValue(int cacheId, Datum key1, Datum key2, Datum key3, Datum key4); diff --git a/parser/include/utils/timeout.h b/parser/include/utils/timeout.h index c068986d..e561a1cd 100644 --- a/parser/include/utils/timeout.h +++ b/parser/include/utils/timeout.h @@ -4,7 +4,7 @@ * Routines to multiplex SIGALRM interrupts for multiple timeout reasons. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/timeout.h diff --git a/parser/include/utils/timestamp.h b/parser/include/utils/timestamp.h index edf3a973..c4dd96c8 100644 --- a/parser/include/utils/timestamp.h +++ b/parser/include/utils/timestamp.h @@ -3,7 +3,7 @@ * timestamp.h * Definitions for the SQL "timestamp" and "interval" types. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/timestamp.h @@ -19,18 +19,46 @@ /* - * Macros for fmgr-callable functions. + * Functions for fmgr-callable functions. * * For Timestamp, we make use of the same support routines as for int64. * Therefore Timestamp is pass-by-reference if and only if int64 is! */ -#define DatumGetTimestamp(X) ((Timestamp) DatumGetInt64(X)) -#define DatumGetTimestampTz(X) ((TimestampTz) DatumGetInt64(X)) -#define DatumGetIntervalP(X) ((Interval *) DatumGetPointer(X)) - -#define TimestampGetDatum(X) Int64GetDatum(X) -#define TimestampTzGetDatum(X) Int64GetDatum(X) -#define IntervalPGetDatum(X) PointerGetDatum(X) +static inline Timestamp +DatumGetTimestamp(Datum X) +{ + return (Timestamp) DatumGetInt64(X); +} + +static inline TimestampTz +DatumGetTimestampTz(Datum X) +{ + return (TimestampTz) DatumGetInt64(X); +} + +static inline Interval * +DatumGetIntervalP(Datum X) +{ + return (Interval *) DatumGetPointer(X); +} + +static inline Datum +TimestampGetDatum(Timestamp X) +{ + return Int64GetDatum(X); +} + +static inline Datum +TimestampTzGetDatum(TimestampTz X) +{ + return Int64GetDatum(X); +} + +static inline Datum +IntervalPGetDatum(const Interval *X) +{ + return PointerGetDatum(X); +} #define PG_GETARG_TIMESTAMP(n) DatumGetTimestamp(PG_GETARG_DATUM(n)) #define PG_GETARG_TIMESTAMPTZ(n) DatumGetTimestampTz(PG_GETARG_DATUM(n)) @@ -53,7 +81,9 @@ #define INTERVAL_PRECISION(t) ((t) & INTERVAL_PRECISION_MASK) #define INTERVAL_RANGE(t) (((t) >> 16) & INTERVAL_RANGE_MASK) +/* Macros for doing timestamp arithmetic without assuming timestamp's units */ #define TimestampTzPlusMilliseconds(tz,ms) ((tz) + ((ms) * (int64) 1000)) +#define TimestampTzPlusSeconds(tz,s) ((tz) + ((s) * (int64) 1000000)) /* Set at postmaster start */ @@ -83,10 +113,10 @@ extern pg_time_t timestamptz_to_time_t(TimestampTz t); extern const char *timestamptz_to_str(TimestampTz t); -extern int tm2timestamp(struct pg_tm *tm, fsec_t fsec, int *tzp, Timestamp *dt); +extern int tm2timestamp(struct pg_tm *tm, fsec_t fsec, int *tzp, Timestamp *result); extern int timestamp2tm(Timestamp dt, int *tzp, struct pg_tm *tm, fsec_t *fsec, const char **tzn, pg_tz *attimezone); -extern void dt2time(Timestamp dt, int *hour, int *min, int *sec, fsec_t *fsec); +extern void dt2time(Timestamp jd, int *hour, int *min, int *sec, fsec_t *fsec); extern void interval2itm(Interval span, struct pg_itm *itm); extern int itm2interval(struct pg_itm *itm, Interval *span); diff --git a/parser/include/utils/tuplesort.h b/parser/include/utils/tuplesort.h index a2eaeabe..af057b63 100644 --- a/parser/include/utils/tuplesort.h +++ b/parser/include/utils/tuplesort.h @@ -11,7 +11,7 @@ * algorithm. Parallel sorts use a variant of this external sort * algorithm, and are typically only used for large amounts of data. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/tuplesort.h @@ -24,7 +24,9 @@ #include "access/itup.h" #include "executor/tuptable.h" #include "storage/dsm.h" +#include "utils/logtape.h" #include "utils/relcache.h" +#include "utils/sortsupport.h" /* @@ -102,6 +104,148 @@ typedef struct TuplesortInstrumentation int64 spaceUsed; /* space consumption, in kB */ } TuplesortInstrumentation; +/* + * The objects we actually sort are SortTuple structs. These contain + * a pointer to the tuple proper (might be a MinimalTuple or IndexTuple), + * which is a separate palloc chunk --- we assume it is just one chunk and + * can be freed by a simple pfree() (except during merge, when we use a + * simple slab allocator). SortTuples also contain the tuple's first key + * column in Datum/nullflag format, and a source/input tape number that + * tracks which tape each heap element/slot belongs to during merging. + * + * Storing the first key column lets us save heap_getattr or index_getattr + * calls during tuple comparisons. We could extract and save all the key + * columns not just the first, but this would increase code complexity and + * overhead, and wouldn't actually save any comparison cycles in the common + * case where the first key determines the comparison result. Note that + * for a pass-by-reference datatype, datum1 points into the "tuple" storage. + * + * There is one special case: when the sort support infrastructure provides an + * "abbreviated key" representation, where the key is (typically) a pass by + * value proxy for a pass by reference type. In this case, the abbreviated key + * is stored in datum1 in place of the actual first key column. + * + * When sorting single Datums, the data value is represented directly by + * datum1/isnull1 for pass by value types (or null values). If the datatype is + * pass-by-reference and isnull1 is false, then "tuple" points to a separately + * palloc'd data value, otherwise "tuple" is NULL. The value of datum1 is then + * either the same pointer as "tuple", or is an abbreviated key value as + * described above. Accordingly, "tuple" is always used in preference to + * datum1 as the authoritative value for pass-by-reference cases. + */ +typedef struct +{ + void *tuple; /* the tuple itself */ + Datum datum1; /* value of first key column */ + bool isnull1; /* is first key column NULL? */ + int srctape; /* source tape number */ +} SortTuple; + +typedef int (*SortTupleComparator) (const SortTuple *a, const SortTuple *b, + Tuplesortstate *state); + +/* + * The public part of a Tuple sort operation state. This data structure + * contains the definition of sort-variant-specific interface methods and + * the part of Tuple sort operation state required by their implementations. + */ +typedef struct +{ + /* + * These function pointers decouple the routines that must know what kind + * of tuple we are sorting from the routines that don't need to know it. + * They are set up by the tuplesort_begin_xxx routines. + * + * Function to compare two tuples; result is per qsort() convention, ie: + * <0, 0, >0 according as ab. The API must match + * qsort_arg_comparator. + */ + SortTupleComparator comparetup; + + /* + * Alter datum1 representation in the SortTuple's array back from the + * abbreviated key to the first column value. + */ + void (*removeabbrev) (Tuplesortstate *state, SortTuple *stups, + int count); + + /* + * Function to write a stored tuple onto tape. The representation of the + * tuple on tape need not be the same as it is in memory. + */ + void (*writetup) (Tuplesortstate *state, LogicalTape *tape, + SortTuple *stup); + + /* + * Function to read a stored tuple from tape back into memory. 'len' is + * the already-read length of the stored tuple. The tuple is allocated + * from the slab memory arena, or is palloc'd, see + * tuplesort_readtup_alloc(). + */ + void (*readtup) (Tuplesortstate *state, SortTuple *stup, + LogicalTape *tape, unsigned int len); + + /* + * Function to do some specific release of resources for the sort variant. + * In particular, this function should free everything stored in the "arg" + * field, which wouldn't be cleared on reset of the Tuple sort memory + * contexts. This can be NULL if nothing specific needs to be done. + */ + void (*freestate) (Tuplesortstate *state); + + /* + * The subsequent fields are used in the implementations of the functions + * above. + */ + MemoryContext maincontext; /* memory context for tuple sort metadata that + * persists across multiple batches */ + MemoryContext sortcontext; /* memory context holding most sort data */ + MemoryContext tuplecontext; /* sub-context of sortcontext for tuple data */ + + /* + * Whether SortTuple's datum1 and isnull1 members are maintained by the + * above routines. If not, some sort specializations are disabled. + */ + bool haveDatum1; + + /* + * The sortKeys variable is used by every case other than the hash index + * case; it is set by tuplesort_begin_xxx. tupDesc is only used by the + * MinimalTuple and CLUSTER routines, though. + */ + int nKeys; /* number of columns in sort key */ + SortSupport sortKeys; /* array of length nKeys */ + + /* + * This variable is shared by the single-key MinimalTuple case and the + * Datum case (which both use qsort_ssup()). Otherwise, it's NULL. The + * presence of a value in this field is also checked by various sort + * specialization functions as an optimization when comparing the leading + * key in a tiebreak situation to determine if there are any subsequent + * keys to sort on. + */ + SortSupport onlyKey; + + int sortopt; /* Bitmask of flags used to setup sort */ + + bool tuples; /* Can SortTuple.tuple ever be set? */ + + void *arg; /* Specific information for the sort variant */ +} TuplesortPublic; + +/* Sort parallel code from state for sort__start probes */ +#define PARALLEL_SORT(coordinate) (coordinate == NULL || \ + (coordinate)->sharedsort == NULL ? 0 : \ + (coordinate)->isWorker ? 1 : 2) + +#define TuplesortstateGetPublic(state) ((TuplesortPublic *) state) + +/* When using this macro, beware of double evaluation of len */ +#define LogicalTapeReadExact(tape, ptr, len) \ + do { \ + if (LogicalTapeRead(tape, ptr, len) != (size_t) (len)) \ + elog(ERROR, "unexpected end of data"); \ + } while(0) /* * We provide multiple interfaces to what is essentially the same code, @@ -205,6 +349,49 @@ typedef struct TuplesortInstrumentation * generated (typically, caller uses a parallel heap scan). */ + +extern Tuplesortstate *tuplesort_begin_common(int workMem, + SortCoordinate coordinate, + int sortopt); +extern void tuplesort_set_bound(Tuplesortstate *state, int64 bound); +extern bool tuplesort_used_bound(Tuplesortstate *state); +extern void tuplesort_puttuple_common(Tuplesortstate *state, + SortTuple *tuple, bool useAbbrev); +extern void tuplesort_performsort(Tuplesortstate *state); +extern bool tuplesort_gettuple_common(Tuplesortstate *state, bool forward, + SortTuple *stup); +extern bool tuplesort_skiptuples(Tuplesortstate *state, int64 ntuples, + bool forward); +extern void tuplesort_end(Tuplesortstate *state); +extern void tuplesort_reset(Tuplesortstate *state); + +extern void tuplesort_get_stats(Tuplesortstate *state, + TuplesortInstrumentation *stats); +extern const char *tuplesort_method_name(TuplesortMethod m); +extern const char *tuplesort_space_type_name(TuplesortSpaceType t); + +extern int tuplesort_merge_order(int64 allowedMem); + +extern Size tuplesort_estimate_shared(int nWorkers); +extern void tuplesort_initialize_shared(Sharedsort *shared, int nWorkers, + dsm_segment *seg); +extern void tuplesort_attach_shared(Sharedsort *shared, dsm_segment *seg); + +/* + * These routines may only be called if TUPLESORT_RANDOMACCESS was specified + * during tuplesort_begin_*. Additionally backwards scan in gettuple/getdatum + * also require TUPLESORT_RANDOMACCESS. Note that parallel sorts do not + * support random access. + */ +extern void tuplesort_rescan(Tuplesortstate *state); +extern void tuplesort_markpos(Tuplesortstate *state); +extern void tuplesort_restorepos(Tuplesortstate *state); + +extern void *tuplesort_readtup_alloc(Tuplesortstate *state, Size tuplen); + + +/* tuplesortvariants.c */ + extern Tuplesortstate *tuplesort_begin_heap(TupleDesc tupDesc, int nkeys, AttrNumber *attNums, Oid *sortOperators, Oid *sortCollations, @@ -238,9 +425,6 @@ extern Tuplesortstate *tuplesort_begin_datum(Oid datumType, int workMem, SortCoordinate coordinate, int sortopt); -extern void tuplesort_set_bound(Tuplesortstate *state, int64 bound); -extern bool tuplesort_used_bound(Tuplesortstate *state); - extern void tuplesort_puttupleslot(Tuplesortstate *state, TupleTableSlot *slot); extern void tuplesort_putheaptuple(Tuplesortstate *state, HeapTuple tup); @@ -250,42 +434,12 @@ extern void tuplesort_putindextuplevalues(Tuplesortstate *state, extern void tuplesort_putdatum(Tuplesortstate *state, Datum val, bool isNull); -extern void tuplesort_performsort(Tuplesortstate *state); - extern bool tuplesort_gettupleslot(Tuplesortstate *state, bool forward, bool copy, TupleTableSlot *slot, Datum *abbrev); extern HeapTuple tuplesort_getheaptuple(Tuplesortstate *state, bool forward); extern IndexTuple tuplesort_getindextuple(Tuplesortstate *state, bool forward); -extern bool tuplesort_getdatum(Tuplesortstate *state, bool forward, +extern bool tuplesort_getdatum(Tuplesortstate *state, bool forward, bool copy, Datum *val, bool *isNull, Datum *abbrev); -extern bool tuplesort_skiptuples(Tuplesortstate *state, int64 ntuples, - bool forward); - -extern void tuplesort_end(Tuplesortstate *state); - -extern void tuplesort_reset(Tuplesortstate *state); - -extern void tuplesort_get_stats(Tuplesortstate *state, - TuplesortInstrumentation *stats); -extern const char *tuplesort_method_name(TuplesortMethod m); -extern const char *tuplesort_space_type_name(TuplesortSpaceType t); - -extern int tuplesort_merge_order(int64 allowedMem); - -extern Size tuplesort_estimate_shared(int nworkers); -extern void tuplesort_initialize_shared(Sharedsort *shared, int nWorkers, - dsm_segment *seg); -extern void tuplesort_attach_shared(Sharedsort *shared, dsm_segment *seg); - -/* - * These routines may only be called if TUPLESORT_RANDOMACCESS was specified - * during tuplesort_begin_*. Additionally backwards scan in gettuple/getdatum - * also require TUPLESORT_RANDOMACCESS. Note that parallel sorts do not - * support random access. - */ -extern void tuplesort_rescan(Tuplesortstate *state); -extern void tuplesort_markpos(Tuplesortstate *state); -extern void tuplesort_restorepos(Tuplesortstate *state); #endif /* TUPLESORT_H */ diff --git a/parser/include/utils/tuplestore.h b/parser/include/utils/tuplestore.h index 01716fb4..36424b80 100644 --- a/parser/include/utils/tuplestore.h +++ b/parser/include/utils/tuplestore.h @@ -21,7 +21,7 @@ * Also, we have changed the API to return tuples in TupleTableSlots, * so that there is a check to prevent attempted access to system columns. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/tuplestore.h diff --git a/parser/include/utils/typcache.h b/parser/include/utils/typcache.h index 431ad7f1..95f3a9ee 100644 --- a/parser/include/utils/typcache.h +++ b/parser/include/utils/typcache.h @@ -6,7 +6,7 @@ * The type cache exists to speed lookup of certain information about data * types that is not directly available from a type's pg_type row. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/typcache.h diff --git a/parser/include/utils/tzparser.h b/parser/include/utils/tzparser.h deleted file mode 100644 index 015b1773..00000000 --- a/parser/include/utils/tzparser.h +++ /dev/null @@ -1,39 +0,0 @@ -/*------------------------------------------------------------------------- - * - * tzparser.h - * Timezone offset file parsing definitions. - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * src/include/utils/tzparser.h - * - *------------------------------------------------------------------------- - */ -#ifndef TZPARSER_H -#define TZPARSER_H - -#include "utils/datetime.h" - -/* - * The result of parsing a timezone configuration file is an array of - * these structs, in order by abbrev. We export this because datetime.c - * needs it. - */ -typedef struct tzEntry -{ - /* the actual data */ - char *abbrev; /* TZ abbreviation (downcased) */ - char *zone; /* zone name if dynamic abbrev, else NULL */ - /* for a dynamic abbreviation, offset/is_dst are not used */ - int offset; /* offset in seconds from UTC */ - bool is_dst; /* true if a DST abbreviation */ - /* source information (for error messages) */ - int lineno; - const char *filename; -} tzEntry; - - -extern TimeZoneAbbrevTable *load_tzoffsets(const char *filename); - -#endif /* TZPARSER_H */ diff --git a/parser/include/utils/varlena.h b/parser/include/utils/varlena.h index c45208a2..77f5b247 100644 --- a/parser/include/utils/varlena.h +++ b/parser/include/utils/varlena.h @@ -3,7 +3,7 @@ * varlena.h * Functions for the variable-length built-in types. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/varlena.h @@ -38,4 +38,16 @@ extern text *replace_text_regexp(text *src_text, text *pattern_text, int cflags, Oid collation, int search_start, int n); +typedef struct ClosestMatchState +{ + const char *source; + int min_d; + int max_d; + const char *match; +} ClosestMatchState; + +extern void initClosestMatch(ClosestMatchState *state, const char *source, int max_d); +extern void updateClosestMatch(ClosestMatchState *state, const char *candidate); +extern const char *getClosestMatch(ClosestMatchState *state); + #endif diff --git a/parser/include/utils/wait_event.h b/parser/include/utils/wait_event.h index b578e2ec..518d3b0a 100644 --- a/parser/include/utils/wait_event.h +++ b/parser/include/utils/wait_event.h @@ -2,7 +2,7 @@ * wait_event.h * Definitions related to wait event reporting * - * Copyright (c) 2001-2022, PostgreSQL Global Development Group + * Copyright (c) 2001-2023, PostgreSQL Global Development Group * * src/include/utils/wait_event.h * ---------- @@ -42,6 +42,7 @@ typedef enum WAIT_EVENT_CHECKPOINTER_MAIN, WAIT_EVENT_LOGICAL_APPLY_MAIN, WAIT_EVENT_LOGICAL_LAUNCHER_MAIN, + WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN, WAIT_EVENT_RECOVERY_WAL_STREAM, WAIT_EVENT_SYSLOGGER_MAIN, WAIT_EVENT_WAL_RECEIVER_MAIN, @@ -97,14 +98,16 @@ typedef enum WAIT_EVENT_HASH_BUILD_ELECT, WAIT_EVENT_HASH_BUILD_HASH_INNER, WAIT_EVENT_HASH_BUILD_HASH_OUTER, - WAIT_EVENT_HASH_GROW_BATCHES_ALLOCATE, WAIT_EVENT_HASH_GROW_BATCHES_DECIDE, WAIT_EVENT_HASH_GROW_BATCHES_ELECT, WAIT_EVENT_HASH_GROW_BATCHES_FINISH, + WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE, WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION, - WAIT_EVENT_HASH_GROW_BUCKETS_ALLOCATE, WAIT_EVENT_HASH_GROW_BUCKETS_ELECT, + WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE, WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT, + WAIT_EVENT_LOGICAL_APPLY_SEND_DATA, + WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE, WAIT_EVENT_LOGICAL_SYNC_DATA, WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE, WAIT_EVENT_MQ_INTERNAL, @@ -145,6 +148,7 @@ typedef enum WAIT_EVENT_RECOVERY_APPLY_DELAY, WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL, WAIT_EVENT_REGISTER_SYNC_REQUEST, + WAIT_EVENT_SPIN_DELAY, WAIT_EVENT_VACUUM_DELAY, WAIT_EVENT_VACUUM_TRUNCATE } WaitEventTimeout; @@ -178,6 +182,7 @@ typedef enum WAIT_EVENT_DATA_FILE_SYNC, WAIT_EVENT_DATA_FILE_TRUNCATE, WAIT_EVENT_DATA_FILE_WRITE, + WAIT_EVENT_DSM_ALLOCATE, WAIT_EVENT_DSM_FILL_ZERO_WRITE, WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ, WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC, @@ -193,7 +198,7 @@ typedef enum WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE, WAIT_EVENT_LOGICAL_REWRITE_WRITE, WAIT_EVENT_RELATION_MAP_READ, - WAIT_EVENT_RELATION_MAP_SYNC, + WAIT_EVENT_RELATION_MAP_REPLACE, WAIT_EVENT_RELATION_MAP_WRITE, WAIT_EVENT_REORDER_BUFFER_READ, WAIT_EVENT_REORDER_BUFFER_WRITE, diff --git a/parser/include/utils/xml.h b/parser/include/utils/xml.h index 6620a626..224f6d75 100644 --- a/parser/include/utils/xml.h +++ b/parser/include/utils/xml.h @@ -4,7 +4,7 @@ * Declarations for XML data type support. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/xml.h @@ -47,8 +47,17 @@ typedef enum /* struct PgXmlErrorContext is private to xml.c */ typedef struct PgXmlErrorContext PgXmlErrorContext; -#define DatumGetXmlP(X) ((xmltype *) PG_DETOAST_DATUM(X)) -#define XmlPGetDatum(X) PointerGetDatum(X) +static inline xmltype * +DatumGetXmlP(Datum X) +{ + return (xmltype *) PG_DETOAST_DATUM(X); +} + +static inline Datum +XmlPGetDatum(const xmltype *X) +{ + return PointerGetDatum(X); +} #define PG_GETARG_XML_P(n) DatumGetXmlP(PG_GETARG_DATUM(n)) #define PG_RETURN_XML_P(x) PG_RETURN_POINTER(x) @@ -64,11 +73,12 @@ extern xmltype *xmlconcat(List *args); extern xmltype *xmlelement(XmlExpr *xexpr, Datum *named_argvalue, bool *named_argnull, Datum *argvalue, bool *argnull); -extern xmltype *xmlparse(text *data, XmlOptionType xmloption, bool preserve_whitespace); +extern xmltype *xmlparse(text *data, XmlOptionType xmloption_arg, bool preserve_whitespace); extern xmltype *xmlpi(const char *target, text *arg, bool arg_is_null, bool *result_is_null); extern xmltype *xmlroot(xmltype *data, text *version, int standalone); extern bool xml_is_document(xmltype *arg); -extern text *xmltotext_with_xmloption(xmltype *data, XmlOptionType xmloption_arg); +extern text *xmltotext_with_options(xmltype *data, XmlOptionType xmloption_arg, + bool indent); extern char *escape_xml(const char *str); extern char *map_sql_identifier_to_xml_name(const char *ident, bool fully_escaped, bool escape_period); diff --git a/parser/include/varatt.h b/parser/include/varatt.h new file mode 100644 index 00000000..e3487052 --- /dev/null +++ b/parser/include/varatt.h @@ -0,0 +1,358 @@ +/*------------------------------------------------------------------------- + * + * varatt.h + * variable-length datatypes (TOAST support) + * + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1995, Regents of the University of California + * + * src/include/varatt.h + * + *------------------------------------------------------------------------- + */ + +#ifndef VARATT_H +#define VARATT_H + +/* + * struct varatt_external is a traditional "TOAST pointer", that is, the + * information needed to fetch a Datum stored out-of-line in a TOAST table. + * The data is compressed if and only if the external size stored in + * va_extinfo is less than va_rawsize - VARHDRSZ. + * + * This struct must not contain any padding, because we sometimes compare + * these pointers using memcmp. + * + * Note that this information is stored unaligned within actual tuples, so + * you need to memcpy from the tuple into a local struct variable before + * you can look at these fields! (The reason we use memcmp is to avoid + * having to do that just to detect equality of two TOAST pointers...) + */ +typedef struct varatt_external +{ + int32 va_rawsize; /* Original data size (includes header) */ + uint32 va_extinfo; /* External saved size (without header) and + * compression method */ + Oid va_valueid; /* Unique ID of value within TOAST table */ + Oid va_toastrelid; /* RelID of TOAST table containing it */ +} varatt_external; + +/* + * These macros define the "saved size" portion of va_extinfo. Its remaining + * two high-order bits identify the compression method. + */ +#define VARLENA_EXTSIZE_BITS 30 +#define VARLENA_EXTSIZE_MASK ((1U << VARLENA_EXTSIZE_BITS) - 1) + +/* + * struct varatt_indirect is a "TOAST pointer" representing an out-of-line + * Datum that's stored in memory, not in an external toast relation. + * The creator of such a Datum is entirely responsible that the referenced + * storage survives for as long as referencing pointer Datums can exist. + * + * Note that just as for struct varatt_external, this struct is stored + * unaligned within any containing tuple. + */ +typedef struct varatt_indirect +{ + struct varlena *pointer; /* Pointer to in-memory varlena */ +} varatt_indirect; + +/* + * struct varatt_expanded is a "TOAST pointer" representing an out-of-line + * Datum that is stored in memory, in some type-specific, not necessarily + * physically contiguous format that is convenient for computation not + * storage. APIs for this, in particular the definition of struct + * ExpandedObjectHeader, are in src/include/utils/expandeddatum.h. + * + * Note that just as for struct varatt_external, this struct is stored + * unaligned within any containing tuple. + */ +typedef struct ExpandedObjectHeader ExpandedObjectHeader; + +typedef struct varatt_expanded +{ + ExpandedObjectHeader *eohptr; +} varatt_expanded; + +/* + * Type tag for the various sorts of "TOAST pointer" datums. The peculiar + * value for VARTAG_ONDISK comes from a requirement for on-disk compatibility + * with a previous notion that the tag field was the pointer datum's length. + */ +typedef enum vartag_external +{ + VARTAG_INDIRECT = 1, + VARTAG_EXPANDED_RO = 2, + VARTAG_EXPANDED_RW = 3, + VARTAG_ONDISK = 18 +} vartag_external; + +/* this test relies on the specific tag values above */ +#define VARTAG_IS_EXPANDED(tag) \ + (((tag) & ~1) == VARTAG_EXPANDED_RO) + +#define VARTAG_SIZE(tag) \ + ((tag) == VARTAG_INDIRECT ? sizeof(varatt_indirect) : \ + VARTAG_IS_EXPANDED(tag) ? sizeof(varatt_expanded) : \ + (tag) == VARTAG_ONDISK ? sizeof(varatt_external) : \ + (AssertMacro(false), 0)) + +/* + * These structs describe the header of a varlena object that may have been + * TOASTed. Generally, don't reference these structs directly, but use the + * macros below. + * + * We use separate structs for the aligned and unaligned cases because the + * compiler might otherwise think it could generate code that assumes + * alignment while touching fields of a 1-byte-header varlena. + */ +typedef union +{ + struct /* Normal varlena (4-byte length) */ + { + uint32 va_header; + char va_data[FLEXIBLE_ARRAY_MEMBER]; + } va_4byte; + struct /* Compressed-in-line format */ + { + uint32 va_header; + uint32 va_tcinfo; /* Original data size (excludes header) and + * compression method; see va_extinfo */ + char va_data[FLEXIBLE_ARRAY_MEMBER]; /* Compressed data */ + } va_compressed; +} varattrib_4b; + +typedef struct +{ + uint8 va_header; + char va_data[FLEXIBLE_ARRAY_MEMBER]; /* Data begins here */ +} varattrib_1b; + +/* TOAST pointers are a subset of varattrib_1b with an identifying tag byte */ +typedef struct +{ + uint8 va_header; /* Always 0x80 or 0x01 */ + uint8 va_tag; /* Type of datum */ + char va_data[FLEXIBLE_ARRAY_MEMBER]; /* Type-specific data */ +} varattrib_1b_e; + +/* + * Bit layouts for varlena headers on big-endian machines: + * + * 00xxxxxx 4-byte length word, aligned, uncompressed data (up to 1G) + * 01xxxxxx 4-byte length word, aligned, *compressed* data (up to 1G) + * 10000000 1-byte length word, unaligned, TOAST pointer + * 1xxxxxxx 1-byte length word, unaligned, uncompressed data (up to 126b) + * + * Bit layouts for varlena headers on little-endian machines: + * + * xxxxxx00 4-byte length word, aligned, uncompressed data (up to 1G) + * xxxxxx10 4-byte length word, aligned, *compressed* data (up to 1G) + * 00000001 1-byte length word, unaligned, TOAST pointer + * xxxxxxx1 1-byte length word, unaligned, uncompressed data (up to 126b) + * + * The "xxx" bits are the length field (which includes itself in all cases). + * In the big-endian case we mask to extract the length, in the little-endian + * case we shift. Note that in both cases the flag bits are in the physically + * first byte. Also, it is not possible for a 1-byte length word to be zero; + * this lets us disambiguate alignment padding bytes from the start of an + * unaligned datum. (We now *require* pad bytes to be filled with zero!) + * + * In TOAST pointers the va_tag field (see varattrib_1b_e) is used to discern + * the specific type and length of the pointer datum. + */ + +/* + * Endian-dependent macros. These are considered internal --- use the + * external macros below instead of using these directly. + * + * Note: IS_1B is true for external toast records but VARSIZE_1B will return 0 + * for such records. Hence you should usually check for IS_EXTERNAL before + * checking for IS_1B. + */ + +#ifdef WORDS_BIGENDIAN + +#define VARATT_IS_4B(PTR) \ + ((((varattrib_1b *) (PTR))->va_header & 0x80) == 0x00) +#define VARATT_IS_4B_U(PTR) \ + ((((varattrib_1b *) (PTR))->va_header & 0xC0) == 0x00) +#define VARATT_IS_4B_C(PTR) \ + ((((varattrib_1b *) (PTR))->va_header & 0xC0) == 0x40) +#define VARATT_IS_1B(PTR) \ + ((((varattrib_1b *) (PTR))->va_header & 0x80) == 0x80) +#define VARATT_IS_1B_E(PTR) \ + ((((varattrib_1b *) (PTR))->va_header) == 0x80) +#define VARATT_NOT_PAD_BYTE(PTR) \ + (*((uint8 *) (PTR)) != 0) + +/* VARSIZE_4B() should only be used on known-aligned data */ +#define VARSIZE_4B(PTR) \ + (((varattrib_4b *) (PTR))->va_4byte.va_header & 0x3FFFFFFF) +#define VARSIZE_1B(PTR) \ + (((varattrib_1b *) (PTR))->va_header & 0x7F) +#define VARTAG_1B_E(PTR) \ + (((varattrib_1b_e *) (PTR))->va_tag) + +#define SET_VARSIZE_4B(PTR,len) \ + (((varattrib_4b *) (PTR))->va_4byte.va_header = (len) & 0x3FFFFFFF) +#define SET_VARSIZE_4B_C(PTR,len) \ + (((varattrib_4b *) (PTR))->va_4byte.va_header = ((len) & 0x3FFFFFFF) | 0x40000000) +#define SET_VARSIZE_1B(PTR,len) \ + (((varattrib_1b *) (PTR))->va_header = (len) | 0x80) +#define SET_VARTAG_1B_E(PTR,tag) \ + (((varattrib_1b_e *) (PTR))->va_header = 0x80, \ + ((varattrib_1b_e *) (PTR))->va_tag = (tag)) + +#else /* !WORDS_BIGENDIAN */ + +#define VARATT_IS_4B(PTR) \ + ((((varattrib_1b *) (PTR))->va_header & 0x01) == 0x00) +#define VARATT_IS_4B_U(PTR) \ + ((((varattrib_1b *) (PTR))->va_header & 0x03) == 0x00) +#define VARATT_IS_4B_C(PTR) \ + ((((varattrib_1b *) (PTR))->va_header & 0x03) == 0x02) +#define VARATT_IS_1B(PTR) \ + ((((varattrib_1b *) (PTR))->va_header & 0x01) == 0x01) +#define VARATT_IS_1B_E(PTR) \ + ((((varattrib_1b *) (PTR))->va_header) == 0x01) +#define VARATT_NOT_PAD_BYTE(PTR) \ + (*((uint8 *) (PTR)) != 0) + +/* VARSIZE_4B() should only be used on known-aligned data */ +#define VARSIZE_4B(PTR) \ + ((((varattrib_4b *) (PTR))->va_4byte.va_header >> 2) & 0x3FFFFFFF) +#define VARSIZE_1B(PTR) \ + ((((varattrib_1b *) (PTR))->va_header >> 1) & 0x7F) +#define VARTAG_1B_E(PTR) \ + (((varattrib_1b_e *) (PTR))->va_tag) + +#define SET_VARSIZE_4B(PTR,len) \ + (((varattrib_4b *) (PTR))->va_4byte.va_header = (((uint32) (len)) << 2)) +#define SET_VARSIZE_4B_C(PTR,len) \ + (((varattrib_4b *) (PTR))->va_4byte.va_header = (((uint32) (len)) << 2) | 0x02) +#define SET_VARSIZE_1B(PTR,len) \ + (((varattrib_1b *) (PTR))->va_header = (((uint8) (len)) << 1) | 0x01) +#define SET_VARTAG_1B_E(PTR,tag) \ + (((varattrib_1b_e *) (PTR))->va_header = 0x01, \ + ((varattrib_1b_e *) (PTR))->va_tag = (tag)) + +#endif /* WORDS_BIGENDIAN */ + +#define VARDATA_4B(PTR) (((varattrib_4b *) (PTR))->va_4byte.va_data) +#define VARDATA_4B_C(PTR) (((varattrib_4b *) (PTR))->va_compressed.va_data) +#define VARDATA_1B(PTR) (((varattrib_1b *) (PTR))->va_data) +#define VARDATA_1B_E(PTR) (((varattrib_1b_e *) (PTR))->va_data) + +/* + * Externally visible TOAST macros begin here. + */ + +#define VARHDRSZ_EXTERNAL offsetof(varattrib_1b_e, va_data) +#define VARHDRSZ_COMPRESSED offsetof(varattrib_4b, va_compressed.va_data) +#define VARHDRSZ_SHORT offsetof(varattrib_1b, va_data) + +#define VARATT_SHORT_MAX 0x7F +#define VARATT_CAN_MAKE_SHORT(PTR) \ + (VARATT_IS_4B_U(PTR) && \ + (VARSIZE(PTR) - VARHDRSZ + VARHDRSZ_SHORT) <= VARATT_SHORT_MAX) +#define VARATT_CONVERTED_SHORT_SIZE(PTR) \ + (VARSIZE(PTR) - VARHDRSZ + VARHDRSZ_SHORT) + +/* + * In consumers oblivious to data alignment, call PG_DETOAST_DATUM_PACKED(), + * VARDATA_ANY(), VARSIZE_ANY() and VARSIZE_ANY_EXHDR(). Elsewhere, call + * PG_DETOAST_DATUM(), VARDATA() and VARSIZE(). Directly fetching an int16, + * int32 or wider field in the struct representing the datum layout requires + * aligned data. memcpy() is alignment-oblivious, as are most operations on + * datatypes, such as text, whose layout struct contains only char fields. + * + * Code assembling a new datum should call VARDATA() and SET_VARSIZE(). + * (Datums begin life untoasted.) + * + * Other macros here should usually be used only by tuple assembly/disassembly + * code and code that specifically wants to work with still-toasted Datums. + */ +#define VARDATA(PTR) VARDATA_4B(PTR) +#define VARSIZE(PTR) VARSIZE_4B(PTR) + +#define VARSIZE_SHORT(PTR) VARSIZE_1B(PTR) +#define VARDATA_SHORT(PTR) VARDATA_1B(PTR) + +#define VARTAG_EXTERNAL(PTR) VARTAG_1B_E(PTR) +#define VARSIZE_EXTERNAL(PTR) (VARHDRSZ_EXTERNAL + VARTAG_SIZE(VARTAG_EXTERNAL(PTR))) +#define VARDATA_EXTERNAL(PTR) VARDATA_1B_E(PTR) + +#define VARATT_IS_COMPRESSED(PTR) VARATT_IS_4B_C(PTR) +#define VARATT_IS_EXTERNAL(PTR) VARATT_IS_1B_E(PTR) +#define VARATT_IS_EXTERNAL_ONDISK(PTR) \ + (VARATT_IS_EXTERNAL(PTR) && VARTAG_EXTERNAL(PTR) == VARTAG_ONDISK) +#define VARATT_IS_EXTERNAL_INDIRECT(PTR) \ + (VARATT_IS_EXTERNAL(PTR) && VARTAG_EXTERNAL(PTR) == VARTAG_INDIRECT) +#define VARATT_IS_EXTERNAL_EXPANDED_RO(PTR) \ + (VARATT_IS_EXTERNAL(PTR) && VARTAG_EXTERNAL(PTR) == VARTAG_EXPANDED_RO) +#define VARATT_IS_EXTERNAL_EXPANDED_RW(PTR) \ + (VARATT_IS_EXTERNAL(PTR) && VARTAG_EXTERNAL(PTR) == VARTAG_EXPANDED_RW) +#define VARATT_IS_EXTERNAL_EXPANDED(PTR) \ + (VARATT_IS_EXTERNAL(PTR) && VARTAG_IS_EXPANDED(VARTAG_EXTERNAL(PTR))) +#define VARATT_IS_EXTERNAL_NON_EXPANDED(PTR) \ + (VARATT_IS_EXTERNAL(PTR) && !VARTAG_IS_EXPANDED(VARTAG_EXTERNAL(PTR))) +#define VARATT_IS_SHORT(PTR) VARATT_IS_1B(PTR) +#define VARATT_IS_EXTENDED(PTR) (!VARATT_IS_4B_U(PTR)) + +#define SET_VARSIZE(PTR, len) SET_VARSIZE_4B(PTR, len) +#define SET_VARSIZE_SHORT(PTR, len) SET_VARSIZE_1B(PTR, len) +#define SET_VARSIZE_COMPRESSED(PTR, len) SET_VARSIZE_4B_C(PTR, len) + +#define SET_VARTAG_EXTERNAL(PTR, tag) SET_VARTAG_1B_E(PTR, tag) + +#define VARSIZE_ANY(PTR) \ + (VARATT_IS_1B_E(PTR) ? VARSIZE_EXTERNAL(PTR) : \ + (VARATT_IS_1B(PTR) ? VARSIZE_1B(PTR) : \ + VARSIZE_4B(PTR))) + +/* Size of a varlena data, excluding header */ +#define VARSIZE_ANY_EXHDR(PTR) \ + (VARATT_IS_1B_E(PTR) ? VARSIZE_EXTERNAL(PTR)-VARHDRSZ_EXTERNAL : \ + (VARATT_IS_1B(PTR) ? VARSIZE_1B(PTR)-VARHDRSZ_SHORT : \ + VARSIZE_4B(PTR)-VARHDRSZ)) + +/* caution: this will not work on an external or compressed-in-line Datum */ +/* caution: this will return a possibly unaligned pointer */ +#define VARDATA_ANY(PTR) \ + (VARATT_IS_1B(PTR) ? VARDATA_1B(PTR) : VARDATA_4B(PTR)) + +/* Decompressed size and compression method of a compressed-in-line Datum */ +#define VARDATA_COMPRESSED_GET_EXTSIZE(PTR) \ + (((varattrib_4b *) (PTR))->va_compressed.va_tcinfo & VARLENA_EXTSIZE_MASK) +#define VARDATA_COMPRESSED_GET_COMPRESS_METHOD(PTR) \ + (((varattrib_4b *) (PTR))->va_compressed.va_tcinfo >> VARLENA_EXTSIZE_BITS) + +/* Same for external Datums; but note argument is a struct varatt_external */ +#define VARATT_EXTERNAL_GET_EXTSIZE(toast_pointer) \ + ((toast_pointer).va_extinfo & VARLENA_EXTSIZE_MASK) +#define VARATT_EXTERNAL_GET_COMPRESS_METHOD(toast_pointer) \ + ((toast_pointer).va_extinfo >> VARLENA_EXTSIZE_BITS) + +#define VARATT_EXTERNAL_SET_SIZE_AND_COMPRESS_METHOD(toast_pointer, len, cm) \ + do { \ + Assert((cm) == TOAST_PGLZ_COMPRESSION_ID || \ + (cm) == TOAST_LZ4_COMPRESSION_ID); \ + ((toast_pointer).va_extinfo = \ + (len) | ((uint32) (cm) << VARLENA_EXTSIZE_BITS)); \ + } while (0) + +/* + * Testing whether an externally-stored value is compressed now requires + * comparing size stored in va_extinfo (the actual length of the external data) + * to rawsize (the original uncompressed datum's size). The latter includes + * VARHDRSZ overhead, the former doesn't. We never use compression unless it + * actually saves space, so we expect either equality or less-than. + */ +#define VARATT_EXTERNAL_IS_COMPRESSED(toast_pointer) \ + (VARATT_EXTERNAL_GET_EXTSIZE(toast_pointer) < \ + (toast_pointer).va_rawsize - VARHDRSZ) + +#endif diff --git a/parser/parser.go b/parser/parser.go index 8ebd85ad..99e67fa5 100644 --- a/parser/parser.go +++ b/parser/parser.go @@ -1,14 +1,7 @@ package parser /* - * Note on CFLAGS below: - * - * -Wno-deprecated-non-prototype avoids warnings on Clang 15.0+, this can be removed in Postgres 16: - * https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=1c27d16e6e5c1f463bbe1e9ece88dda811235165 - */ - -/* -#cgo CFLAGS: -Iinclude -g -fstack-protector -std=gnu99 -Wno-deprecated-non-prototype -Wno-unknown-warning-option +#cgo CFLAGS: -Iinclude -g -fstack-protector -std=gnu99 -Wno-unknown-warning-option #cgo LDFLAGS: #include "pg_query.h" #include "xxhash.h" diff --git a/parser/pg_query.c b/parser/pg_query.c index e0069e80..e49b874b 100644 --- a/parser/pg_query.c +++ b/parser/pg_query.c @@ -29,7 +29,7 @@ void pg_query_init(void) void pg_query_free_top_memory_context(MemoryContext context) { - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); /* * After this, no memory contexts are valid anymore, so ensure that diff --git a/parser/pg_query.pb-c.c b/parser/pg_query.pb-c.c index b54ae9ad..4fab2fcf 100644 --- a/parser/pg_query.pb-c.c +++ b/parser/pg_query.pb-c.c @@ -682,6 +682,51 @@ void pg_query__table_func__free_unpacked assert(message->base.descriptor == &pg_query__table_func__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } +void pg_query__into_clause__init + (PgQuery__IntoClause *message) +{ + static const PgQuery__IntoClause init_value = PG_QUERY__INTO_CLAUSE__INIT; + *message = init_value; +} +size_t pg_query__into_clause__get_packed_size + (const PgQuery__IntoClause *message) +{ + assert(message->base.descriptor == &pg_query__into_clause__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__into_clause__pack + (const PgQuery__IntoClause *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__into_clause__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__into_clause__pack_to_buffer + (const PgQuery__IntoClause *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__into_clause__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__IntoClause * + pg_query__into_clause__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__IntoClause *) + protobuf_c_message_unpack (&pg_query__into_clause__descriptor, + allocator, len, data); +} +void pg_query__into_clause__free_unpacked + (PgQuery__IntoClause *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__into_clause__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} void pg_query__var__init (PgQuery__Var *message) { @@ -2167,6 +2212,231 @@ void pg_query__xml_expr__free_unpacked assert(message->base.descriptor == &pg_query__xml_expr__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } +void pg_query__json_format__init + (PgQuery__JsonFormat *message) +{ + static const PgQuery__JsonFormat init_value = PG_QUERY__JSON_FORMAT__INIT; + *message = init_value; +} +size_t pg_query__json_format__get_packed_size + (const PgQuery__JsonFormat *message) +{ + assert(message->base.descriptor == &pg_query__json_format__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__json_format__pack + (const PgQuery__JsonFormat *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__json_format__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__json_format__pack_to_buffer + (const PgQuery__JsonFormat *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__json_format__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__JsonFormat * + pg_query__json_format__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__JsonFormat *) + protobuf_c_message_unpack (&pg_query__json_format__descriptor, + allocator, len, data); +} +void pg_query__json_format__free_unpacked + (PgQuery__JsonFormat *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__json_format__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__json_returning__init + (PgQuery__JsonReturning *message) +{ + static const PgQuery__JsonReturning init_value = PG_QUERY__JSON_RETURNING__INIT; + *message = init_value; +} +size_t pg_query__json_returning__get_packed_size + (const PgQuery__JsonReturning *message) +{ + assert(message->base.descriptor == &pg_query__json_returning__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__json_returning__pack + (const PgQuery__JsonReturning *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__json_returning__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__json_returning__pack_to_buffer + (const PgQuery__JsonReturning *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__json_returning__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__JsonReturning * + pg_query__json_returning__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__JsonReturning *) + protobuf_c_message_unpack (&pg_query__json_returning__descriptor, + allocator, len, data); +} +void pg_query__json_returning__free_unpacked + (PgQuery__JsonReturning *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__json_returning__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__json_value_expr__init + (PgQuery__JsonValueExpr *message) +{ + static const PgQuery__JsonValueExpr init_value = PG_QUERY__JSON_VALUE_EXPR__INIT; + *message = init_value; +} +size_t pg_query__json_value_expr__get_packed_size + (const PgQuery__JsonValueExpr *message) +{ + assert(message->base.descriptor == &pg_query__json_value_expr__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__json_value_expr__pack + (const PgQuery__JsonValueExpr *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__json_value_expr__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__json_value_expr__pack_to_buffer + (const PgQuery__JsonValueExpr *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__json_value_expr__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__JsonValueExpr * + pg_query__json_value_expr__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__JsonValueExpr *) + protobuf_c_message_unpack (&pg_query__json_value_expr__descriptor, + allocator, len, data); +} +void pg_query__json_value_expr__free_unpacked + (PgQuery__JsonValueExpr *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__json_value_expr__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__json_constructor_expr__init + (PgQuery__JsonConstructorExpr *message) +{ + static const PgQuery__JsonConstructorExpr init_value = PG_QUERY__JSON_CONSTRUCTOR_EXPR__INIT; + *message = init_value; +} +size_t pg_query__json_constructor_expr__get_packed_size + (const PgQuery__JsonConstructorExpr *message) +{ + assert(message->base.descriptor == &pg_query__json_constructor_expr__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__json_constructor_expr__pack + (const PgQuery__JsonConstructorExpr *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__json_constructor_expr__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__json_constructor_expr__pack_to_buffer + (const PgQuery__JsonConstructorExpr *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__json_constructor_expr__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__JsonConstructorExpr * + pg_query__json_constructor_expr__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__JsonConstructorExpr *) + protobuf_c_message_unpack (&pg_query__json_constructor_expr__descriptor, + allocator, len, data); +} +void pg_query__json_constructor_expr__free_unpacked + (PgQuery__JsonConstructorExpr *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__json_constructor_expr__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__json_is_predicate__init + (PgQuery__JsonIsPredicate *message) +{ + static const PgQuery__JsonIsPredicate init_value = PG_QUERY__JSON_IS_PREDICATE__INIT; + *message = init_value; +} +size_t pg_query__json_is_predicate__get_packed_size + (const PgQuery__JsonIsPredicate *message) +{ + assert(message->base.descriptor == &pg_query__json_is_predicate__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__json_is_predicate__pack + (const PgQuery__JsonIsPredicate *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__json_is_predicate__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__json_is_predicate__pack_to_buffer + (const PgQuery__JsonIsPredicate *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__json_is_predicate__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__JsonIsPredicate * + pg_query__json_is_predicate__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__JsonIsPredicate *) + protobuf_c_message_unpack (&pg_query__json_is_predicate__descriptor, + allocator, len, data); +} +void pg_query__json_is_predicate__free_unpacked + (PgQuery__JsonIsPredicate *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__json_is_predicate__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} void pg_query__null_test__init (PgQuery__NullTest *message) { @@ -2752,141 +3022,6 @@ void pg_query__on_conflict_expr__free_unpacked assert(message->base.descriptor == &pg_query__on_conflict_expr__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__into_clause__init - (PgQuery__IntoClause *message) -{ - static const PgQuery__IntoClause init_value = PG_QUERY__INTO_CLAUSE__INIT; - *message = init_value; -} -size_t pg_query__into_clause__get_packed_size - (const PgQuery__IntoClause *message) -{ - assert(message->base.descriptor == &pg_query__into_clause__descriptor); - return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); -} -size_t pg_query__into_clause__pack - (const PgQuery__IntoClause *message, - uint8_t *out) -{ - assert(message->base.descriptor == &pg_query__into_clause__descriptor); - return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); -} -size_t pg_query__into_clause__pack_to_buffer - (const PgQuery__IntoClause *message, - ProtobufCBuffer *buffer) -{ - assert(message->base.descriptor == &pg_query__into_clause__descriptor); - return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); -} -PgQuery__IntoClause * - pg_query__into_clause__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data) -{ - return (PgQuery__IntoClause *) - protobuf_c_message_unpack (&pg_query__into_clause__descriptor, - allocator, len, data); -} -void pg_query__into_clause__free_unpacked - (PgQuery__IntoClause *message, - ProtobufCAllocator *allocator) -{ - if(!message) - return; - assert(message->base.descriptor == &pg_query__into_clause__descriptor); - protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); -} -void pg_query__merge_action__init - (PgQuery__MergeAction *message) -{ - static const PgQuery__MergeAction init_value = PG_QUERY__MERGE_ACTION__INIT; - *message = init_value; -} -size_t pg_query__merge_action__get_packed_size - (const PgQuery__MergeAction *message) -{ - assert(message->base.descriptor == &pg_query__merge_action__descriptor); - return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); -} -size_t pg_query__merge_action__pack - (const PgQuery__MergeAction *message, - uint8_t *out) -{ - assert(message->base.descriptor == &pg_query__merge_action__descriptor); - return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); -} -size_t pg_query__merge_action__pack_to_buffer - (const PgQuery__MergeAction *message, - ProtobufCBuffer *buffer) -{ - assert(message->base.descriptor == &pg_query__merge_action__descriptor); - return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); -} -PgQuery__MergeAction * - pg_query__merge_action__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data) -{ - return (PgQuery__MergeAction *) - protobuf_c_message_unpack (&pg_query__merge_action__descriptor, - allocator, len, data); -} -void pg_query__merge_action__free_unpacked - (PgQuery__MergeAction *message, - ProtobufCAllocator *allocator) -{ - if(!message) - return; - assert(message->base.descriptor == &pg_query__merge_action__descriptor); - protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); -} -void pg_query__raw_stmt__init - (PgQuery__RawStmt *message) -{ - static const PgQuery__RawStmt init_value = PG_QUERY__RAW_STMT__INIT; - *message = init_value; -} -size_t pg_query__raw_stmt__get_packed_size - (const PgQuery__RawStmt *message) -{ - assert(message->base.descriptor == &pg_query__raw_stmt__descriptor); - return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); -} -size_t pg_query__raw_stmt__pack - (const PgQuery__RawStmt *message, - uint8_t *out) -{ - assert(message->base.descriptor == &pg_query__raw_stmt__descriptor); - return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); -} -size_t pg_query__raw_stmt__pack_to_buffer - (const PgQuery__RawStmt *message, - ProtobufCBuffer *buffer) -{ - assert(message->base.descriptor == &pg_query__raw_stmt__descriptor); - return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); -} -PgQuery__RawStmt * - pg_query__raw_stmt__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data) -{ - return (PgQuery__RawStmt *) - protobuf_c_message_unpack (&pg_query__raw_stmt__descriptor, - allocator, len, data); -} -void pg_query__raw_stmt__free_unpacked - (PgQuery__RawStmt *message, - ProtobufCAllocator *allocator) -{ - if(!message) - return; - assert(message->base.descriptor == &pg_query__raw_stmt__descriptor); - protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); -} void pg_query__query__init (PgQuery__Query *message) { @@ -2932,4234 +3067,4234 @@ void pg_query__query__free_unpacked assert(message->base.descriptor == &pg_query__query__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__insert_stmt__init - (PgQuery__InsertStmt *message) +void pg_query__type_name__init + (PgQuery__TypeName *message) { - static const PgQuery__InsertStmt init_value = PG_QUERY__INSERT_STMT__INIT; + static const PgQuery__TypeName init_value = PG_QUERY__TYPE_NAME__INIT; *message = init_value; } -size_t pg_query__insert_stmt__get_packed_size - (const PgQuery__InsertStmt *message) +size_t pg_query__type_name__get_packed_size + (const PgQuery__TypeName *message) { - assert(message->base.descriptor == &pg_query__insert_stmt__descriptor); + assert(message->base.descriptor == &pg_query__type_name__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__insert_stmt__pack - (const PgQuery__InsertStmt *message, +size_t pg_query__type_name__pack + (const PgQuery__TypeName *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__insert_stmt__descriptor); + assert(message->base.descriptor == &pg_query__type_name__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__insert_stmt__pack_to_buffer - (const PgQuery__InsertStmt *message, +size_t pg_query__type_name__pack_to_buffer + (const PgQuery__TypeName *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__insert_stmt__descriptor); + assert(message->base.descriptor == &pg_query__type_name__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__InsertStmt * - pg_query__insert_stmt__unpack +PgQuery__TypeName * + pg_query__type_name__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__InsertStmt *) - protobuf_c_message_unpack (&pg_query__insert_stmt__descriptor, + return (PgQuery__TypeName *) + protobuf_c_message_unpack (&pg_query__type_name__descriptor, allocator, len, data); } -void pg_query__insert_stmt__free_unpacked - (PgQuery__InsertStmt *message, +void pg_query__type_name__free_unpacked + (PgQuery__TypeName *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__insert_stmt__descriptor); + assert(message->base.descriptor == &pg_query__type_name__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__delete_stmt__init - (PgQuery__DeleteStmt *message) +void pg_query__column_ref__init + (PgQuery__ColumnRef *message) { - static const PgQuery__DeleteStmt init_value = PG_QUERY__DELETE_STMT__INIT; + static const PgQuery__ColumnRef init_value = PG_QUERY__COLUMN_REF__INIT; *message = init_value; } -size_t pg_query__delete_stmt__get_packed_size - (const PgQuery__DeleteStmt *message) +size_t pg_query__column_ref__get_packed_size + (const PgQuery__ColumnRef *message) { - assert(message->base.descriptor == &pg_query__delete_stmt__descriptor); + assert(message->base.descriptor == &pg_query__column_ref__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__delete_stmt__pack - (const PgQuery__DeleteStmt *message, +size_t pg_query__column_ref__pack + (const PgQuery__ColumnRef *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__delete_stmt__descriptor); + assert(message->base.descriptor == &pg_query__column_ref__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__delete_stmt__pack_to_buffer - (const PgQuery__DeleteStmt *message, +size_t pg_query__column_ref__pack_to_buffer + (const PgQuery__ColumnRef *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__delete_stmt__descriptor); + assert(message->base.descriptor == &pg_query__column_ref__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DeleteStmt * - pg_query__delete_stmt__unpack +PgQuery__ColumnRef * + pg_query__column_ref__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DeleteStmt *) - protobuf_c_message_unpack (&pg_query__delete_stmt__descriptor, + return (PgQuery__ColumnRef *) + protobuf_c_message_unpack (&pg_query__column_ref__descriptor, allocator, len, data); } -void pg_query__delete_stmt__free_unpacked - (PgQuery__DeleteStmt *message, +void pg_query__column_ref__free_unpacked + (PgQuery__ColumnRef *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__delete_stmt__descriptor); + assert(message->base.descriptor == &pg_query__column_ref__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__update_stmt__init - (PgQuery__UpdateStmt *message) +void pg_query__param_ref__init + (PgQuery__ParamRef *message) { - static const PgQuery__UpdateStmt init_value = PG_QUERY__UPDATE_STMT__INIT; + static const PgQuery__ParamRef init_value = PG_QUERY__PARAM_REF__INIT; *message = init_value; } -size_t pg_query__update_stmt__get_packed_size - (const PgQuery__UpdateStmt *message) +size_t pg_query__param_ref__get_packed_size + (const PgQuery__ParamRef *message) { - assert(message->base.descriptor == &pg_query__update_stmt__descriptor); + assert(message->base.descriptor == &pg_query__param_ref__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__update_stmt__pack - (const PgQuery__UpdateStmt *message, +size_t pg_query__param_ref__pack + (const PgQuery__ParamRef *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__update_stmt__descriptor); + assert(message->base.descriptor == &pg_query__param_ref__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__update_stmt__pack_to_buffer - (const PgQuery__UpdateStmt *message, +size_t pg_query__param_ref__pack_to_buffer + (const PgQuery__ParamRef *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__update_stmt__descriptor); + assert(message->base.descriptor == &pg_query__param_ref__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__UpdateStmt * - pg_query__update_stmt__unpack +PgQuery__ParamRef * + pg_query__param_ref__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__UpdateStmt *) - protobuf_c_message_unpack (&pg_query__update_stmt__descriptor, + return (PgQuery__ParamRef *) + protobuf_c_message_unpack (&pg_query__param_ref__descriptor, allocator, len, data); } -void pg_query__update_stmt__free_unpacked - (PgQuery__UpdateStmt *message, +void pg_query__param_ref__free_unpacked + (PgQuery__ParamRef *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__update_stmt__descriptor); + assert(message->base.descriptor == &pg_query__param_ref__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__merge_stmt__init - (PgQuery__MergeStmt *message) +void pg_query__a__expr__init + (PgQuery__AExpr *message) { - static const PgQuery__MergeStmt init_value = PG_QUERY__MERGE_STMT__INIT; + static const PgQuery__AExpr init_value = PG_QUERY__A__EXPR__INIT; *message = init_value; } -size_t pg_query__merge_stmt__get_packed_size - (const PgQuery__MergeStmt *message) +size_t pg_query__a__expr__get_packed_size + (const PgQuery__AExpr *message) { - assert(message->base.descriptor == &pg_query__merge_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__expr__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__merge_stmt__pack - (const PgQuery__MergeStmt *message, +size_t pg_query__a__expr__pack + (const PgQuery__AExpr *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__merge_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__expr__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__merge_stmt__pack_to_buffer - (const PgQuery__MergeStmt *message, +size_t pg_query__a__expr__pack_to_buffer + (const PgQuery__AExpr *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__merge_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__expr__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__MergeStmt * - pg_query__merge_stmt__unpack +PgQuery__AExpr * + pg_query__a__expr__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__MergeStmt *) - protobuf_c_message_unpack (&pg_query__merge_stmt__descriptor, + return (PgQuery__AExpr *) + protobuf_c_message_unpack (&pg_query__a__expr__descriptor, allocator, len, data); } -void pg_query__merge_stmt__free_unpacked - (PgQuery__MergeStmt *message, +void pg_query__a__expr__free_unpacked + (PgQuery__AExpr *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__merge_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__expr__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__select_stmt__init - (PgQuery__SelectStmt *message) +void pg_query__type_cast__init + (PgQuery__TypeCast *message) { - static const PgQuery__SelectStmt init_value = PG_QUERY__SELECT_STMT__INIT; + static const PgQuery__TypeCast init_value = PG_QUERY__TYPE_CAST__INIT; *message = init_value; } -size_t pg_query__select_stmt__get_packed_size - (const PgQuery__SelectStmt *message) +size_t pg_query__type_cast__get_packed_size + (const PgQuery__TypeCast *message) { - assert(message->base.descriptor == &pg_query__select_stmt__descriptor); + assert(message->base.descriptor == &pg_query__type_cast__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__select_stmt__pack - (const PgQuery__SelectStmt *message, +size_t pg_query__type_cast__pack + (const PgQuery__TypeCast *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__select_stmt__descriptor); + assert(message->base.descriptor == &pg_query__type_cast__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__select_stmt__pack_to_buffer - (const PgQuery__SelectStmt *message, +size_t pg_query__type_cast__pack_to_buffer + (const PgQuery__TypeCast *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__select_stmt__descriptor); + assert(message->base.descriptor == &pg_query__type_cast__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__SelectStmt * - pg_query__select_stmt__unpack +PgQuery__TypeCast * + pg_query__type_cast__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__SelectStmt *) - protobuf_c_message_unpack (&pg_query__select_stmt__descriptor, + return (PgQuery__TypeCast *) + protobuf_c_message_unpack (&pg_query__type_cast__descriptor, allocator, len, data); } -void pg_query__select_stmt__free_unpacked - (PgQuery__SelectStmt *message, +void pg_query__type_cast__free_unpacked + (PgQuery__TypeCast *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__select_stmt__descriptor); + assert(message->base.descriptor == &pg_query__type_cast__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__return_stmt__init - (PgQuery__ReturnStmt *message) +void pg_query__collate_clause__init + (PgQuery__CollateClause *message) { - static const PgQuery__ReturnStmt init_value = PG_QUERY__RETURN_STMT__INIT; + static const PgQuery__CollateClause init_value = PG_QUERY__COLLATE_CLAUSE__INIT; *message = init_value; } -size_t pg_query__return_stmt__get_packed_size - (const PgQuery__ReturnStmt *message) +size_t pg_query__collate_clause__get_packed_size + (const PgQuery__CollateClause *message) { - assert(message->base.descriptor == &pg_query__return_stmt__descriptor); + assert(message->base.descriptor == &pg_query__collate_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__return_stmt__pack - (const PgQuery__ReturnStmt *message, +size_t pg_query__collate_clause__pack + (const PgQuery__CollateClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__return_stmt__descriptor); + assert(message->base.descriptor == &pg_query__collate_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__return_stmt__pack_to_buffer - (const PgQuery__ReturnStmt *message, +size_t pg_query__collate_clause__pack_to_buffer + (const PgQuery__CollateClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__return_stmt__descriptor); + assert(message->base.descriptor == &pg_query__collate_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ReturnStmt * - pg_query__return_stmt__unpack +PgQuery__CollateClause * + pg_query__collate_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ReturnStmt *) - protobuf_c_message_unpack (&pg_query__return_stmt__descriptor, + return (PgQuery__CollateClause *) + protobuf_c_message_unpack (&pg_query__collate_clause__descriptor, allocator, len, data); } -void pg_query__return_stmt__free_unpacked - (PgQuery__ReturnStmt *message, +void pg_query__collate_clause__free_unpacked + (PgQuery__CollateClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__return_stmt__descriptor); + assert(message->base.descriptor == &pg_query__collate_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__plassign_stmt__init - (PgQuery__PLAssignStmt *message) +void pg_query__role_spec__init + (PgQuery__RoleSpec *message) { - static const PgQuery__PLAssignStmt init_value = PG_QUERY__PLASSIGN_STMT__INIT; + static const PgQuery__RoleSpec init_value = PG_QUERY__ROLE_SPEC__INIT; *message = init_value; } -size_t pg_query__plassign_stmt__get_packed_size - (const PgQuery__PLAssignStmt *message) +size_t pg_query__role_spec__get_packed_size + (const PgQuery__RoleSpec *message) { - assert(message->base.descriptor == &pg_query__plassign_stmt__descriptor); + assert(message->base.descriptor == &pg_query__role_spec__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__plassign_stmt__pack - (const PgQuery__PLAssignStmt *message, +size_t pg_query__role_spec__pack + (const PgQuery__RoleSpec *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__plassign_stmt__descriptor); + assert(message->base.descriptor == &pg_query__role_spec__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__plassign_stmt__pack_to_buffer - (const PgQuery__PLAssignStmt *message, +size_t pg_query__role_spec__pack_to_buffer + (const PgQuery__RoleSpec *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__plassign_stmt__descriptor); + assert(message->base.descriptor == &pg_query__role_spec__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__PLAssignStmt * - pg_query__plassign_stmt__unpack +PgQuery__RoleSpec * + pg_query__role_spec__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__PLAssignStmt *) - protobuf_c_message_unpack (&pg_query__plassign_stmt__descriptor, + return (PgQuery__RoleSpec *) + protobuf_c_message_unpack (&pg_query__role_spec__descriptor, allocator, len, data); } -void pg_query__plassign_stmt__free_unpacked - (PgQuery__PLAssignStmt *message, +void pg_query__role_spec__free_unpacked + (PgQuery__RoleSpec *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__plassign_stmt__descriptor); + assert(message->base.descriptor == &pg_query__role_spec__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_table_stmt__init - (PgQuery__AlterTableStmt *message) +void pg_query__func_call__init + (PgQuery__FuncCall *message) { - static const PgQuery__AlterTableStmt init_value = PG_QUERY__ALTER_TABLE_STMT__INIT; + static const PgQuery__FuncCall init_value = PG_QUERY__FUNC_CALL__INIT; *message = init_value; } -size_t pg_query__alter_table_stmt__get_packed_size - (const PgQuery__AlterTableStmt *message) +size_t pg_query__func_call__get_packed_size + (const PgQuery__FuncCall *message) { - assert(message->base.descriptor == &pg_query__alter_table_stmt__descriptor); + assert(message->base.descriptor == &pg_query__func_call__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_table_stmt__pack - (const PgQuery__AlterTableStmt *message, +size_t pg_query__func_call__pack + (const PgQuery__FuncCall *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_table_stmt__descriptor); + assert(message->base.descriptor == &pg_query__func_call__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_table_stmt__pack_to_buffer - (const PgQuery__AlterTableStmt *message, +size_t pg_query__func_call__pack_to_buffer + (const PgQuery__FuncCall *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_table_stmt__descriptor); + assert(message->base.descriptor == &pg_query__func_call__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterTableStmt * - pg_query__alter_table_stmt__unpack +PgQuery__FuncCall * + pg_query__func_call__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterTableStmt *) - protobuf_c_message_unpack (&pg_query__alter_table_stmt__descriptor, + return (PgQuery__FuncCall *) + protobuf_c_message_unpack (&pg_query__func_call__descriptor, allocator, len, data); } -void pg_query__alter_table_stmt__free_unpacked - (PgQuery__AlterTableStmt *message, +void pg_query__func_call__free_unpacked + (PgQuery__FuncCall *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_table_stmt__descriptor); + assert(message->base.descriptor == &pg_query__func_call__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_table_cmd__init - (PgQuery__AlterTableCmd *message) +void pg_query__a__star__init + (PgQuery__AStar *message) { - static const PgQuery__AlterTableCmd init_value = PG_QUERY__ALTER_TABLE_CMD__INIT; + static const PgQuery__AStar init_value = PG_QUERY__A__STAR__INIT; *message = init_value; } -size_t pg_query__alter_table_cmd__get_packed_size - (const PgQuery__AlterTableCmd *message) +size_t pg_query__a__star__get_packed_size + (const PgQuery__AStar *message) { - assert(message->base.descriptor == &pg_query__alter_table_cmd__descriptor); + assert(message->base.descriptor == &pg_query__a__star__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_table_cmd__pack - (const PgQuery__AlterTableCmd *message, +size_t pg_query__a__star__pack + (const PgQuery__AStar *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_table_cmd__descriptor); + assert(message->base.descriptor == &pg_query__a__star__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_table_cmd__pack_to_buffer - (const PgQuery__AlterTableCmd *message, +size_t pg_query__a__star__pack_to_buffer + (const PgQuery__AStar *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_table_cmd__descriptor); + assert(message->base.descriptor == &pg_query__a__star__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterTableCmd * - pg_query__alter_table_cmd__unpack +PgQuery__AStar * + pg_query__a__star__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterTableCmd *) - protobuf_c_message_unpack (&pg_query__alter_table_cmd__descriptor, + return (PgQuery__AStar *) + protobuf_c_message_unpack (&pg_query__a__star__descriptor, allocator, len, data); } -void pg_query__alter_table_cmd__free_unpacked - (PgQuery__AlterTableCmd *message, +void pg_query__a__star__free_unpacked + (PgQuery__AStar *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_table_cmd__descriptor); + assert(message->base.descriptor == &pg_query__a__star__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_domain_stmt__init - (PgQuery__AlterDomainStmt *message) +void pg_query__a__indices__init + (PgQuery__AIndices *message) { - static const PgQuery__AlterDomainStmt init_value = PG_QUERY__ALTER_DOMAIN_STMT__INIT; + static const PgQuery__AIndices init_value = PG_QUERY__A__INDICES__INIT; *message = init_value; } -size_t pg_query__alter_domain_stmt__get_packed_size - (const PgQuery__AlterDomainStmt *message) +size_t pg_query__a__indices__get_packed_size + (const PgQuery__AIndices *message) { - assert(message->base.descriptor == &pg_query__alter_domain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__indices__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_domain_stmt__pack - (const PgQuery__AlterDomainStmt *message, +size_t pg_query__a__indices__pack + (const PgQuery__AIndices *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_domain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__indices__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_domain_stmt__pack_to_buffer - (const PgQuery__AlterDomainStmt *message, +size_t pg_query__a__indices__pack_to_buffer + (const PgQuery__AIndices *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_domain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__indices__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterDomainStmt * - pg_query__alter_domain_stmt__unpack +PgQuery__AIndices * + pg_query__a__indices__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterDomainStmt *) - protobuf_c_message_unpack (&pg_query__alter_domain_stmt__descriptor, + return (PgQuery__AIndices *) + protobuf_c_message_unpack (&pg_query__a__indices__descriptor, allocator, len, data); } -void pg_query__alter_domain_stmt__free_unpacked - (PgQuery__AlterDomainStmt *message, +void pg_query__a__indices__free_unpacked + (PgQuery__AIndices *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_domain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__indices__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__set_operation_stmt__init - (PgQuery__SetOperationStmt *message) +void pg_query__a__indirection__init + (PgQuery__AIndirection *message) { - static const PgQuery__SetOperationStmt init_value = PG_QUERY__SET_OPERATION_STMT__INIT; + static const PgQuery__AIndirection init_value = PG_QUERY__A__INDIRECTION__INIT; *message = init_value; } -size_t pg_query__set_operation_stmt__get_packed_size - (const PgQuery__SetOperationStmt *message) +size_t pg_query__a__indirection__get_packed_size + (const PgQuery__AIndirection *message) { - assert(message->base.descriptor == &pg_query__set_operation_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__indirection__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__set_operation_stmt__pack - (const PgQuery__SetOperationStmt *message, +size_t pg_query__a__indirection__pack + (const PgQuery__AIndirection *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__set_operation_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__indirection__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__set_operation_stmt__pack_to_buffer - (const PgQuery__SetOperationStmt *message, +size_t pg_query__a__indirection__pack_to_buffer + (const PgQuery__AIndirection *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__set_operation_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__indirection__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__SetOperationStmt * - pg_query__set_operation_stmt__unpack +PgQuery__AIndirection * + pg_query__a__indirection__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__SetOperationStmt *) - protobuf_c_message_unpack (&pg_query__set_operation_stmt__descriptor, + return (PgQuery__AIndirection *) + protobuf_c_message_unpack (&pg_query__a__indirection__descriptor, allocator, len, data); } -void pg_query__set_operation_stmt__free_unpacked - (PgQuery__SetOperationStmt *message, +void pg_query__a__indirection__free_unpacked + (PgQuery__AIndirection *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__set_operation_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__indirection__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__grant_stmt__init - (PgQuery__GrantStmt *message) +void pg_query__a__array_expr__init + (PgQuery__AArrayExpr *message) { - static const PgQuery__GrantStmt init_value = PG_QUERY__GRANT_STMT__INIT; + static const PgQuery__AArrayExpr init_value = PG_QUERY__A__ARRAY_EXPR__INIT; *message = init_value; } -size_t pg_query__grant_stmt__get_packed_size - (const PgQuery__GrantStmt *message) +size_t pg_query__a__array_expr__get_packed_size + (const PgQuery__AArrayExpr *message) { - assert(message->base.descriptor == &pg_query__grant_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__array_expr__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__grant_stmt__pack - (const PgQuery__GrantStmt *message, +size_t pg_query__a__array_expr__pack + (const PgQuery__AArrayExpr *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__grant_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__array_expr__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__grant_stmt__pack_to_buffer - (const PgQuery__GrantStmt *message, +size_t pg_query__a__array_expr__pack_to_buffer + (const PgQuery__AArrayExpr *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__grant_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__array_expr__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__GrantStmt * - pg_query__grant_stmt__unpack +PgQuery__AArrayExpr * + pg_query__a__array_expr__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__GrantStmt *) - protobuf_c_message_unpack (&pg_query__grant_stmt__descriptor, + return (PgQuery__AArrayExpr *) + protobuf_c_message_unpack (&pg_query__a__array_expr__descriptor, allocator, len, data); } -void pg_query__grant_stmt__free_unpacked - (PgQuery__GrantStmt *message, +void pg_query__a__array_expr__free_unpacked + (PgQuery__AArrayExpr *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__grant_stmt__descriptor); + assert(message->base.descriptor == &pg_query__a__array_expr__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__grant_role_stmt__init - (PgQuery__GrantRoleStmt *message) +void pg_query__res_target__init + (PgQuery__ResTarget *message) { - static const PgQuery__GrantRoleStmt init_value = PG_QUERY__GRANT_ROLE_STMT__INIT; + static const PgQuery__ResTarget init_value = PG_QUERY__RES_TARGET__INIT; *message = init_value; } -size_t pg_query__grant_role_stmt__get_packed_size - (const PgQuery__GrantRoleStmt *message) +size_t pg_query__res_target__get_packed_size + (const PgQuery__ResTarget *message) { - assert(message->base.descriptor == &pg_query__grant_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__res_target__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__grant_role_stmt__pack - (const PgQuery__GrantRoleStmt *message, +size_t pg_query__res_target__pack + (const PgQuery__ResTarget *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__grant_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__res_target__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__grant_role_stmt__pack_to_buffer - (const PgQuery__GrantRoleStmt *message, +size_t pg_query__res_target__pack_to_buffer + (const PgQuery__ResTarget *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__grant_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__res_target__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__GrantRoleStmt * - pg_query__grant_role_stmt__unpack +PgQuery__ResTarget * + pg_query__res_target__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__GrantRoleStmt *) - protobuf_c_message_unpack (&pg_query__grant_role_stmt__descriptor, + return (PgQuery__ResTarget *) + protobuf_c_message_unpack (&pg_query__res_target__descriptor, allocator, len, data); } -void pg_query__grant_role_stmt__free_unpacked - (PgQuery__GrantRoleStmt *message, +void pg_query__res_target__free_unpacked + (PgQuery__ResTarget *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__grant_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__res_target__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_default_privileges_stmt__init - (PgQuery__AlterDefaultPrivilegesStmt *message) +void pg_query__multi_assign_ref__init + (PgQuery__MultiAssignRef *message) { - static const PgQuery__AlterDefaultPrivilegesStmt init_value = PG_QUERY__ALTER_DEFAULT_PRIVILEGES_STMT__INIT; + static const PgQuery__MultiAssignRef init_value = PG_QUERY__MULTI_ASSIGN_REF__INIT; *message = init_value; } -size_t pg_query__alter_default_privileges_stmt__get_packed_size - (const PgQuery__AlterDefaultPrivilegesStmt *message) +size_t pg_query__multi_assign_ref__get_packed_size + (const PgQuery__MultiAssignRef *message) { - assert(message->base.descriptor == &pg_query__alter_default_privileges_stmt__descriptor); + assert(message->base.descriptor == &pg_query__multi_assign_ref__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_default_privileges_stmt__pack - (const PgQuery__AlterDefaultPrivilegesStmt *message, +size_t pg_query__multi_assign_ref__pack + (const PgQuery__MultiAssignRef *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_default_privileges_stmt__descriptor); + assert(message->base.descriptor == &pg_query__multi_assign_ref__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_default_privileges_stmt__pack_to_buffer - (const PgQuery__AlterDefaultPrivilegesStmt *message, +size_t pg_query__multi_assign_ref__pack_to_buffer + (const PgQuery__MultiAssignRef *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_default_privileges_stmt__descriptor); + assert(message->base.descriptor == &pg_query__multi_assign_ref__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterDefaultPrivilegesStmt * - pg_query__alter_default_privileges_stmt__unpack +PgQuery__MultiAssignRef * + pg_query__multi_assign_ref__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterDefaultPrivilegesStmt *) - protobuf_c_message_unpack (&pg_query__alter_default_privileges_stmt__descriptor, + return (PgQuery__MultiAssignRef *) + protobuf_c_message_unpack (&pg_query__multi_assign_ref__descriptor, allocator, len, data); } -void pg_query__alter_default_privileges_stmt__free_unpacked - (PgQuery__AlterDefaultPrivilegesStmt *message, +void pg_query__multi_assign_ref__free_unpacked + (PgQuery__MultiAssignRef *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_default_privileges_stmt__descriptor); + assert(message->base.descriptor == &pg_query__multi_assign_ref__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__close_portal_stmt__init - (PgQuery__ClosePortalStmt *message) +void pg_query__sort_by__init + (PgQuery__SortBy *message) { - static const PgQuery__ClosePortalStmt init_value = PG_QUERY__CLOSE_PORTAL_STMT__INIT; + static const PgQuery__SortBy init_value = PG_QUERY__SORT_BY__INIT; *message = init_value; } -size_t pg_query__close_portal_stmt__get_packed_size - (const PgQuery__ClosePortalStmt *message) +size_t pg_query__sort_by__get_packed_size + (const PgQuery__SortBy *message) { - assert(message->base.descriptor == &pg_query__close_portal_stmt__descriptor); + assert(message->base.descriptor == &pg_query__sort_by__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__close_portal_stmt__pack - (const PgQuery__ClosePortalStmt *message, +size_t pg_query__sort_by__pack + (const PgQuery__SortBy *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__close_portal_stmt__descriptor); + assert(message->base.descriptor == &pg_query__sort_by__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__close_portal_stmt__pack_to_buffer - (const PgQuery__ClosePortalStmt *message, +size_t pg_query__sort_by__pack_to_buffer + (const PgQuery__SortBy *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__close_portal_stmt__descriptor); + assert(message->base.descriptor == &pg_query__sort_by__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ClosePortalStmt * - pg_query__close_portal_stmt__unpack +PgQuery__SortBy * + pg_query__sort_by__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ClosePortalStmt *) - protobuf_c_message_unpack (&pg_query__close_portal_stmt__descriptor, + return (PgQuery__SortBy *) + protobuf_c_message_unpack (&pg_query__sort_by__descriptor, allocator, len, data); } -void pg_query__close_portal_stmt__free_unpacked - (PgQuery__ClosePortalStmt *message, +void pg_query__sort_by__free_unpacked + (PgQuery__SortBy *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__close_portal_stmt__descriptor); + assert(message->base.descriptor == &pg_query__sort_by__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__cluster_stmt__init - (PgQuery__ClusterStmt *message) +void pg_query__window_def__init + (PgQuery__WindowDef *message) { - static const PgQuery__ClusterStmt init_value = PG_QUERY__CLUSTER_STMT__INIT; + static const PgQuery__WindowDef init_value = PG_QUERY__WINDOW_DEF__INIT; *message = init_value; } -size_t pg_query__cluster_stmt__get_packed_size - (const PgQuery__ClusterStmt *message) +size_t pg_query__window_def__get_packed_size + (const PgQuery__WindowDef *message) { - assert(message->base.descriptor == &pg_query__cluster_stmt__descriptor); + assert(message->base.descriptor == &pg_query__window_def__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__cluster_stmt__pack - (const PgQuery__ClusterStmt *message, +size_t pg_query__window_def__pack + (const PgQuery__WindowDef *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__cluster_stmt__descriptor); + assert(message->base.descriptor == &pg_query__window_def__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__cluster_stmt__pack_to_buffer - (const PgQuery__ClusterStmt *message, +size_t pg_query__window_def__pack_to_buffer + (const PgQuery__WindowDef *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__cluster_stmt__descriptor); + assert(message->base.descriptor == &pg_query__window_def__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ClusterStmt * - pg_query__cluster_stmt__unpack +PgQuery__WindowDef * + pg_query__window_def__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ClusterStmt *) - protobuf_c_message_unpack (&pg_query__cluster_stmt__descriptor, + return (PgQuery__WindowDef *) + protobuf_c_message_unpack (&pg_query__window_def__descriptor, allocator, len, data); } -void pg_query__cluster_stmt__free_unpacked - (PgQuery__ClusterStmt *message, +void pg_query__window_def__free_unpacked + (PgQuery__WindowDef *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__cluster_stmt__descriptor); + assert(message->base.descriptor == &pg_query__window_def__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__copy_stmt__init - (PgQuery__CopyStmt *message) +void pg_query__range_subselect__init + (PgQuery__RangeSubselect *message) { - static const PgQuery__CopyStmt init_value = PG_QUERY__COPY_STMT__INIT; + static const PgQuery__RangeSubselect init_value = PG_QUERY__RANGE_SUBSELECT__INIT; *message = init_value; } -size_t pg_query__copy_stmt__get_packed_size - (const PgQuery__CopyStmt *message) +size_t pg_query__range_subselect__get_packed_size + (const PgQuery__RangeSubselect *message) { - assert(message->base.descriptor == &pg_query__copy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_subselect__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__copy_stmt__pack - (const PgQuery__CopyStmt *message, +size_t pg_query__range_subselect__pack + (const PgQuery__RangeSubselect *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__copy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_subselect__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__copy_stmt__pack_to_buffer - (const PgQuery__CopyStmt *message, +size_t pg_query__range_subselect__pack_to_buffer + (const PgQuery__RangeSubselect *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__copy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_subselect__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CopyStmt * - pg_query__copy_stmt__unpack +PgQuery__RangeSubselect * + pg_query__range_subselect__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CopyStmt *) - protobuf_c_message_unpack (&pg_query__copy_stmt__descriptor, + return (PgQuery__RangeSubselect *) + protobuf_c_message_unpack (&pg_query__range_subselect__descriptor, allocator, len, data); } -void pg_query__copy_stmt__free_unpacked - (PgQuery__CopyStmt *message, +void pg_query__range_subselect__free_unpacked + (PgQuery__RangeSubselect *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__copy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_subselect__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_stmt__init - (PgQuery__CreateStmt *message) +void pg_query__range_function__init + (PgQuery__RangeFunction *message) { - static const PgQuery__CreateStmt init_value = PG_QUERY__CREATE_STMT__INIT; + static const PgQuery__RangeFunction init_value = PG_QUERY__RANGE_FUNCTION__INIT; *message = init_value; } -size_t pg_query__create_stmt__get_packed_size - (const PgQuery__CreateStmt *message) +size_t pg_query__range_function__get_packed_size + (const PgQuery__RangeFunction *message) { - assert(message->base.descriptor == &pg_query__create_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_function__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_stmt__pack - (const PgQuery__CreateStmt *message, +size_t pg_query__range_function__pack + (const PgQuery__RangeFunction *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_function__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_stmt__pack_to_buffer - (const PgQuery__CreateStmt *message, +size_t pg_query__range_function__pack_to_buffer + (const PgQuery__RangeFunction *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_function__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateStmt * - pg_query__create_stmt__unpack +PgQuery__RangeFunction * + pg_query__range_function__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateStmt *) - protobuf_c_message_unpack (&pg_query__create_stmt__descriptor, + return (PgQuery__RangeFunction *) + protobuf_c_message_unpack (&pg_query__range_function__descriptor, allocator, len, data); } -void pg_query__create_stmt__free_unpacked - (PgQuery__CreateStmt *message, +void pg_query__range_function__free_unpacked + (PgQuery__RangeFunction *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_function__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__define_stmt__init - (PgQuery__DefineStmt *message) +void pg_query__range_table_func__init + (PgQuery__RangeTableFunc *message) { - static const PgQuery__DefineStmt init_value = PG_QUERY__DEFINE_STMT__INIT; + static const PgQuery__RangeTableFunc init_value = PG_QUERY__RANGE_TABLE_FUNC__INIT; *message = init_value; } -size_t pg_query__define_stmt__get_packed_size - (const PgQuery__DefineStmt *message) +size_t pg_query__range_table_func__get_packed_size + (const PgQuery__RangeTableFunc *message) { - assert(message->base.descriptor == &pg_query__define_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_func__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__define_stmt__pack - (const PgQuery__DefineStmt *message, +size_t pg_query__range_table_func__pack + (const PgQuery__RangeTableFunc *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__define_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_func__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__define_stmt__pack_to_buffer - (const PgQuery__DefineStmt *message, +size_t pg_query__range_table_func__pack_to_buffer + (const PgQuery__RangeTableFunc *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__define_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_func__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DefineStmt * - pg_query__define_stmt__unpack +PgQuery__RangeTableFunc * + pg_query__range_table_func__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DefineStmt *) - protobuf_c_message_unpack (&pg_query__define_stmt__descriptor, + return (PgQuery__RangeTableFunc *) + protobuf_c_message_unpack (&pg_query__range_table_func__descriptor, allocator, len, data); } -void pg_query__define_stmt__free_unpacked - (PgQuery__DefineStmt *message, +void pg_query__range_table_func__free_unpacked + (PgQuery__RangeTableFunc *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__define_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_func__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__drop_stmt__init - (PgQuery__DropStmt *message) +void pg_query__range_table_func_col__init + (PgQuery__RangeTableFuncCol *message) { - static const PgQuery__DropStmt init_value = PG_QUERY__DROP_STMT__INIT; + static const PgQuery__RangeTableFuncCol init_value = PG_QUERY__RANGE_TABLE_FUNC_COL__INIT; *message = init_value; } -size_t pg_query__drop_stmt__get_packed_size - (const PgQuery__DropStmt *message) +size_t pg_query__range_table_func_col__get_packed_size + (const PgQuery__RangeTableFuncCol *message) { - assert(message->base.descriptor == &pg_query__drop_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_func_col__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__drop_stmt__pack - (const PgQuery__DropStmt *message, +size_t pg_query__range_table_func_col__pack + (const PgQuery__RangeTableFuncCol *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__drop_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_func_col__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__drop_stmt__pack_to_buffer - (const PgQuery__DropStmt *message, +size_t pg_query__range_table_func_col__pack_to_buffer + (const PgQuery__RangeTableFuncCol *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__drop_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_func_col__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DropStmt * - pg_query__drop_stmt__unpack +PgQuery__RangeTableFuncCol * + pg_query__range_table_func_col__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DropStmt *) - protobuf_c_message_unpack (&pg_query__drop_stmt__descriptor, + return (PgQuery__RangeTableFuncCol *) + protobuf_c_message_unpack (&pg_query__range_table_func_col__descriptor, allocator, len, data); } -void pg_query__drop_stmt__free_unpacked - (PgQuery__DropStmt *message, +void pg_query__range_table_func_col__free_unpacked + (PgQuery__RangeTableFuncCol *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__drop_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_func_col__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__truncate_stmt__init - (PgQuery__TruncateStmt *message) +void pg_query__range_table_sample__init + (PgQuery__RangeTableSample *message) { - static const PgQuery__TruncateStmt init_value = PG_QUERY__TRUNCATE_STMT__INIT; + static const PgQuery__RangeTableSample init_value = PG_QUERY__RANGE_TABLE_SAMPLE__INIT; *message = init_value; } -size_t pg_query__truncate_stmt__get_packed_size - (const PgQuery__TruncateStmt *message) +size_t pg_query__range_table_sample__get_packed_size + (const PgQuery__RangeTableSample *message) { - assert(message->base.descriptor == &pg_query__truncate_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_sample__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__truncate_stmt__pack - (const PgQuery__TruncateStmt *message, +size_t pg_query__range_table_sample__pack + (const PgQuery__RangeTableSample *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__truncate_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_sample__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__truncate_stmt__pack_to_buffer - (const PgQuery__TruncateStmt *message, +size_t pg_query__range_table_sample__pack_to_buffer + (const PgQuery__RangeTableSample *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__truncate_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_sample__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__TruncateStmt * - pg_query__truncate_stmt__unpack +PgQuery__RangeTableSample * + pg_query__range_table_sample__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__TruncateStmt *) - protobuf_c_message_unpack (&pg_query__truncate_stmt__descriptor, + return (PgQuery__RangeTableSample *) + protobuf_c_message_unpack (&pg_query__range_table_sample__descriptor, allocator, len, data); } -void pg_query__truncate_stmt__free_unpacked - (PgQuery__TruncateStmt *message, +void pg_query__range_table_sample__free_unpacked + (PgQuery__RangeTableSample *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__truncate_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_table_sample__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__comment_stmt__init - (PgQuery__CommentStmt *message) +void pg_query__column_def__init + (PgQuery__ColumnDef *message) { - static const PgQuery__CommentStmt init_value = PG_QUERY__COMMENT_STMT__INIT; + static const PgQuery__ColumnDef init_value = PG_QUERY__COLUMN_DEF__INIT; *message = init_value; } -size_t pg_query__comment_stmt__get_packed_size - (const PgQuery__CommentStmt *message) +size_t pg_query__column_def__get_packed_size + (const PgQuery__ColumnDef *message) { - assert(message->base.descriptor == &pg_query__comment_stmt__descriptor); + assert(message->base.descriptor == &pg_query__column_def__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__comment_stmt__pack - (const PgQuery__CommentStmt *message, +size_t pg_query__column_def__pack + (const PgQuery__ColumnDef *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__comment_stmt__descriptor); + assert(message->base.descriptor == &pg_query__column_def__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__comment_stmt__pack_to_buffer - (const PgQuery__CommentStmt *message, +size_t pg_query__column_def__pack_to_buffer + (const PgQuery__ColumnDef *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__comment_stmt__descriptor); + assert(message->base.descriptor == &pg_query__column_def__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CommentStmt * - pg_query__comment_stmt__unpack +PgQuery__ColumnDef * + pg_query__column_def__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CommentStmt *) - protobuf_c_message_unpack (&pg_query__comment_stmt__descriptor, + return (PgQuery__ColumnDef *) + protobuf_c_message_unpack (&pg_query__column_def__descriptor, allocator, len, data); } -void pg_query__comment_stmt__free_unpacked - (PgQuery__CommentStmt *message, +void pg_query__column_def__free_unpacked + (PgQuery__ColumnDef *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__comment_stmt__descriptor); + assert(message->base.descriptor == &pg_query__column_def__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__fetch_stmt__init - (PgQuery__FetchStmt *message) +void pg_query__table_like_clause__init + (PgQuery__TableLikeClause *message) { - static const PgQuery__FetchStmt init_value = PG_QUERY__FETCH_STMT__INIT; + static const PgQuery__TableLikeClause init_value = PG_QUERY__TABLE_LIKE_CLAUSE__INIT; *message = init_value; } -size_t pg_query__fetch_stmt__get_packed_size - (const PgQuery__FetchStmt *message) +size_t pg_query__table_like_clause__get_packed_size + (const PgQuery__TableLikeClause *message) { - assert(message->base.descriptor == &pg_query__fetch_stmt__descriptor); + assert(message->base.descriptor == &pg_query__table_like_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__fetch_stmt__pack - (const PgQuery__FetchStmt *message, +size_t pg_query__table_like_clause__pack + (const PgQuery__TableLikeClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__fetch_stmt__descriptor); + assert(message->base.descriptor == &pg_query__table_like_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__fetch_stmt__pack_to_buffer - (const PgQuery__FetchStmt *message, +size_t pg_query__table_like_clause__pack_to_buffer + (const PgQuery__TableLikeClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__fetch_stmt__descriptor); + assert(message->base.descriptor == &pg_query__table_like_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__FetchStmt * - pg_query__fetch_stmt__unpack +PgQuery__TableLikeClause * + pg_query__table_like_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__FetchStmt *) - protobuf_c_message_unpack (&pg_query__fetch_stmt__descriptor, + return (PgQuery__TableLikeClause *) + protobuf_c_message_unpack (&pg_query__table_like_clause__descriptor, allocator, len, data); } -void pg_query__fetch_stmt__free_unpacked - (PgQuery__FetchStmt *message, +void pg_query__table_like_clause__free_unpacked + (PgQuery__TableLikeClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__fetch_stmt__descriptor); + assert(message->base.descriptor == &pg_query__table_like_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__index_stmt__init - (PgQuery__IndexStmt *message) +void pg_query__index_elem__init + (PgQuery__IndexElem *message) { - static const PgQuery__IndexStmt init_value = PG_QUERY__INDEX_STMT__INIT; + static const PgQuery__IndexElem init_value = PG_QUERY__INDEX_ELEM__INIT; *message = init_value; } -size_t pg_query__index_stmt__get_packed_size - (const PgQuery__IndexStmt *message) +size_t pg_query__index_elem__get_packed_size + (const PgQuery__IndexElem *message) { - assert(message->base.descriptor == &pg_query__index_stmt__descriptor); + assert(message->base.descriptor == &pg_query__index_elem__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__index_stmt__pack - (const PgQuery__IndexStmt *message, +size_t pg_query__index_elem__pack + (const PgQuery__IndexElem *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__index_stmt__descriptor); + assert(message->base.descriptor == &pg_query__index_elem__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__index_stmt__pack_to_buffer - (const PgQuery__IndexStmt *message, +size_t pg_query__index_elem__pack_to_buffer + (const PgQuery__IndexElem *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__index_stmt__descriptor); + assert(message->base.descriptor == &pg_query__index_elem__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__IndexStmt * - pg_query__index_stmt__unpack +PgQuery__IndexElem * + pg_query__index_elem__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__IndexStmt *) - protobuf_c_message_unpack (&pg_query__index_stmt__descriptor, + return (PgQuery__IndexElem *) + protobuf_c_message_unpack (&pg_query__index_elem__descriptor, allocator, len, data); } -void pg_query__index_stmt__free_unpacked - (PgQuery__IndexStmt *message, +void pg_query__index_elem__free_unpacked + (PgQuery__IndexElem *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__index_stmt__descriptor); + assert(message->base.descriptor == &pg_query__index_elem__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_function_stmt__init - (PgQuery__CreateFunctionStmt *message) +void pg_query__def_elem__init + (PgQuery__DefElem *message) { - static const PgQuery__CreateFunctionStmt init_value = PG_QUERY__CREATE_FUNCTION_STMT__INIT; + static const PgQuery__DefElem init_value = PG_QUERY__DEF_ELEM__INIT; *message = init_value; } -size_t pg_query__create_function_stmt__get_packed_size - (const PgQuery__CreateFunctionStmt *message) +size_t pg_query__def_elem__get_packed_size + (const PgQuery__DefElem *message) { - assert(message->base.descriptor == &pg_query__create_function_stmt__descriptor); + assert(message->base.descriptor == &pg_query__def_elem__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_function_stmt__pack - (const PgQuery__CreateFunctionStmt *message, +size_t pg_query__def_elem__pack + (const PgQuery__DefElem *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_function_stmt__descriptor); + assert(message->base.descriptor == &pg_query__def_elem__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_function_stmt__pack_to_buffer - (const PgQuery__CreateFunctionStmt *message, +size_t pg_query__def_elem__pack_to_buffer + (const PgQuery__DefElem *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_function_stmt__descriptor); + assert(message->base.descriptor == &pg_query__def_elem__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateFunctionStmt * - pg_query__create_function_stmt__unpack +PgQuery__DefElem * + pg_query__def_elem__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateFunctionStmt *) - protobuf_c_message_unpack (&pg_query__create_function_stmt__descriptor, + return (PgQuery__DefElem *) + protobuf_c_message_unpack (&pg_query__def_elem__descriptor, allocator, len, data); } -void pg_query__create_function_stmt__free_unpacked - (PgQuery__CreateFunctionStmt *message, +void pg_query__def_elem__free_unpacked + (PgQuery__DefElem *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_function_stmt__descriptor); + assert(message->base.descriptor == &pg_query__def_elem__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_function_stmt__init - (PgQuery__AlterFunctionStmt *message) +void pg_query__locking_clause__init + (PgQuery__LockingClause *message) { - static const PgQuery__AlterFunctionStmt init_value = PG_QUERY__ALTER_FUNCTION_STMT__INIT; + static const PgQuery__LockingClause init_value = PG_QUERY__LOCKING_CLAUSE__INIT; *message = init_value; } -size_t pg_query__alter_function_stmt__get_packed_size - (const PgQuery__AlterFunctionStmt *message) +size_t pg_query__locking_clause__get_packed_size + (const PgQuery__LockingClause *message) { - assert(message->base.descriptor == &pg_query__alter_function_stmt__descriptor); + assert(message->base.descriptor == &pg_query__locking_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_function_stmt__pack - (const PgQuery__AlterFunctionStmt *message, +size_t pg_query__locking_clause__pack + (const PgQuery__LockingClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_function_stmt__descriptor); + assert(message->base.descriptor == &pg_query__locking_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_function_stmt__pack_to_buffer - (const PgQuery__AlterFunctionStmt *message, +size_t pg_query__locking_clause__pack_to_buffer + (const PgQuery__LockingClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_function_stmt__descriptor); + assert(message->base.descriptor == &pg_query__locking_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterFunctionStmt * - pg_query__alter_function_stmt__unpack +PgQuery__LockingClause * + pg_query__locking_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterFunctionStmt *) - protobuf_c_message_unpack (&pg_query__alter_function_stmt__descriptor, + return (PgQuery__LockingClause *) + protobuf_c_message_unpack (&pg_query__locking_clause__descriptor, allocator, len, data); } -void pg_query__alter_function_stmt__free_unpacked - (PgQuery__AlterFunctionStmt *message, +void pg_query__locking_clause__free_unpacked + (PgQuery__LockingClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_function_stmt__descriptor); + assert(message->base.descriptor == &pg_query__locking_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__do_stmt__init - (PgQuery__DoStmt *message) +void pg_query__xml_serialize__init + (PgQuery__XmlSerialize *message) { - static const PgQuery__DoStmt init_value = PG_QUERY__DO_STMT__INIT; + static const PgQuery__XmlSerialize init_value = PG_QUERY__XML_SERIALIZE__INIT; *message = init_value; } -size_t pg_query__do_stmt__get_packed_size - (const PgQuery__DoStmt *message) +size_t pg_query__xml_serialize__get_packed_size + (const PgQuery__XmlSerialize *message) { - assert(message->base.descriptor == &pg_query__do_stmt__descriptor); + assert(message->base.descriptor == &pg_query__xml_serialize__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__do_stmt__pack - (const PgQuery__DoStmt *message, +size_t pg_query__xml_serialize__pack + (const PgQuery__XmlSerialize *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__do_stmt__descriptor); + assert(message->base.descriptor == &pg_query__xml_serialize__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__do_stmt__pack_to_buffer - (const PgQuery__DoStmt *message, +size_t pg_query__xml_serialize__pack_to_buffer + (const PgQuery__XmlSerialize *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__do_stmt__descriptor); + assert(message->base.descriptor == &pg_query__xml_serialize__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DoStmt * - pg_query__do_stmt__unpack +PgQuery__XmlSerialize * + pg_query__xml_serialize__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DoStmt *) - protobuf_c_message_unpack (&pg_query__do_stmt__descriptor, + return (PgQuery__XmlSerialize *) + protobuf_c_message_unpack (&pg_query__xml_serialize__descriptor, allocator, len, data); } -void pg_query__do_stmt__free_unpacked - (PgQuery__DoStmt *message, +void pg_query__xml_serialize__free_unpacked + (PgQuery__XmlSerialize *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__do_stmt__descriptor); + assert(message->base.descriptor == &pg_query__xml_serialize__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__rename_stmt__init - (PgQuery__RenameStmt *message) +void pg_query__partition_elem__init + (PgQuery__PartitionElem *message) { - static const PgQuery__RenameStmt init_value = PG_QUERY__RENAME_STMT__INIT; + static const PgQuery__PartitionElem init_value = PG_QUERY__PARTITION_ELEM__INIT; *message = init_value; } -size_t pg_query__rename_stmt__get_packed_size - (const PgQuery__RenameStmt *message) +size_t pg_query__partition_elem__get_packed_size + (const PgQuery__PartitionElem *message) { - assert(message->base.descriptor == &pg_query__rename_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_elem__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__rename_stmt__pack - (const PgQuery__RenameStmt *message, +size_t pg_query__partition_elem__pack + (const PgQuery__PartitionElem *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__rename_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_elem__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__rename_stmt__pack_to_buffer - (const PgQuery__RenameStmt *message, +size_t pg_query__partition_elem__pack_to_buffer + (const PgQuery__PartitionElem *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__rename_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_elem__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RenameStmt * - pg_query__rename_stmt__unpack +PgQuery__PartitionElem * + pg_query__partition_elem__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RenameStmt *) - protobuf_c_message_unpack (&pg_query__rename_stmt__descriptor, + return (PgQuery__PartitionElem *) + protobuf_c_message_unpack (&pg_query__partition_elem__descriptor, allocator, len, data); } -void pg_query__rename_stmt__free_unpacked - (PgQuery__RenameStmt *message, +void pg_query__partition_elem__free_unpacked + (PgQuery__PartitionElem *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__rename_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_elem__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__rule_stmt__init - (PgQuery__RuleStmt *message) +void pg_query__partition_spec__init + (PgQuery__PartitionSpec *message) { - static const PgQuery__RuleStmt init_value = PG_QUERY__RULE_STMT__INIT; + static const PgQuery__PartitionSpec init_value = PG_QUERY__PARTITION_SPEC__INIT; *message = init_value; } -size_t pg_query__rule_stmt__get_packed_size - (const PgQuery__RuleStmt *message) +size_t pg_query__partition_spec__get_packed_size + (const PgQuery__PartitionSpec *message) { - assert(message->base.descriptor == &pg_query__rule_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_spec__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__rule_stmt__pack - (const PgQuery__RuleStmt *message, +size_t pg_query__partition_spec__pack + (const PgQuery__PartitionSpec *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__rule_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_spec__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__rule_stmt__pack_to_buffer - (const PgQuery__RuleStmt *message, +size_t pg_query__partition_spec__pack_to_buffer + (const PgQuery__PartitionSpec *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__rule_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_spec__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RuleStmt * - pg_query__rule_stmt__unpack +PgQuery__PartitionSpec * + pg_query__partition_spec__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RuleStmt *) - protobuf_c_message_unpack (&pg_query__rule_stmt__descriptor, + return (PgQuery__PartitionSpec *) + protobuf_c_message_unpack (&pg_query__partition_spec__descriptor, allocator, len, data); } -void pg_query__rule_stmt__free_unpacked - (PgQuery__RuleStmt *message, +void pg_query__partition_spec__free_unpacked + (PgQuery__PartitionSpec *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__rule_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_spec__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__notify_stmt__init - (PgQuery__NotifyStmt *message) +void pg_query__partition_bound_spec__init + (PgQuery__PartitionBoundSpec *message) { - static const PgQuery__NotifyStmt init_value = PG_QUERY__NOTIFY_STMT__INIT; + static const PgQuery__PartitionBoundSpec init_value = PG_QUERY__PARTITION_BOUND_SPEC__INIT; *message = init_value; } -size_t pg_query__notify_stmt__get_packed_size - (const PgQuery__NotifyStmt *message) +size_t pg_query__partition_bound_spec__get_packed_size + (const PgQuery__PartitionBoundSpec *message) { - assert(message->base.descriptor == &pg_query__notify_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_bound_spec__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__notify_stmt__pack - (const PgQuery__NotifyStmt *message, +size_t pg_query__partition_bound_spec__pack + (const PgQuery__PartitionBoundSpec *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__notify_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_bound_spec__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__notify_stmt__pack_to_buffer - (const PgQuery__NotifyStmt *message, +size_t pg_query__partition_bound_spec__pack_to_buffer + (const PgQuery__PartitionBoundSpec *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__notify_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_bound_spec__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__NotifyStmt * - pg_query__notify_stmt__unpack +PgQuery__PartitionBoundSpec * + pg_query__partition_bound_spec__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__NotifyStmt *) - protobuf_c_message_unpack (&pg_query__notify_stmt__descriptor, + return (PgQuery__PartitionBoundSpec *) + protobuf_c_message_unpack (&pg_query__partition_bound_spec__descriptor, allocator, len, data); } -void pg_query__notify_stmt__free_unpacked - (PgQuery__NotifyStmt *message, +void pg_query__partition_bound_spec__free_unpacked + (PgQuery__PartitionBoundSpec *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__notify_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_bound_spec__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__listen_stmt__init - (PgQuery__ListenStmt *message) +void pg_query__partition_range_datum__init + (PgQuery__PartitionRangeDatum *message) { - static const PgQuery__ListenStmt init_value = PG_QUERY__LISTEN_STMT__INIT; + static const PgQuery__PartitionRangeDatum init_value = PG_QUERY__PARTITION_RANGE_DATUM__INIT; *message = init_value; } -size_t pg_query__listen_stmt__get_packed_size - (const PgQuery__ListenStmt *message) +size_t pg_query__partition_range_datum__get_packed_size + (const PgQuery__PartitionRangeDatum *message) { - assert(message->base.descriptor == &pg_query__listen_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_range_datum__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__listen_stmt__pack - (const PgQuery__ListenStmt *message, +size_t pg_query__partition_range_datum__pack + (const PgQuery__PartitionRangeDatum *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__listen_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_range_datum__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__listen_stmt__pack_to_buffer - (const PgQuery__ListenStmt *message, +size_t pg_query__partition_range_datum__pack_to_buffer + (const PgQuery__PartitionRangeDatum *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__listen_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_range_datum__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ListenStmt * - pg_query__listen_stmt__unpack +PgQuery__PartitionRangeDatum * + pg_query__partition_range_datum__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ListenStmt *) - protobuf_c_message_unpack (&pg_query__listen_stmt__descriptor, + return (PgQuery__PartitionRangeDatum *) + protobuf_c_message_unpack (&pg_query__partition_range_datum__descriptor, allocator, len, data); } -void pg_query__listen_stmt__free_unpacked - (PgQuery__ListenStmt *message, +void pg_query__partition_range_datum__free_unpacked + (PgQuery__PartitionRangeDatum *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__listen_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_range_datum__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__unlisten_stmt__init - (PgQuery__UnlistenStmt *message) +void pg_query__partition_cmd__init + (PgQuery__PartitionCmd *message) { - static const PgQuery__UnlistenStmt init_value = PG_QUERY__UNLISTEN_STMT__INIT; + static const PgQuery__PartitionCmd init_value = PG_QUERY__PARTITION_CMD__INIT; *message = init_value; } -size_t pg_query__unlisten_stmt__get_packed_size - (const PgQuery__UnlistenStmt *message) +size_t pg_query__partition_cmd__get_packed_size + (const PgQuery__PartitionCmd *message) { - assert(message->base.descriptor == &pg_query__unlisten_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_cmd__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__unlisten_stmt__pack - (const PgQuery__UnlistenStmt *message, +size_t pg_query__partition_cmd__pack + (const PgQuery__PartitionCmd *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__unlisten_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_cmd__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__unlisten_stmt__pack_to_buffer - (const PgQuery__UnlistenStmt *message, +size_t pg_query__partition_cmd__pack_to_buffer + (const PgQuery__PartitionCmd *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__unlisten_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_cmd__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__UnlistenStmt * - pg_query__unlisten_stmt__unpack +PgQuery__PartitionCmd * + pg_query__partition_cmd__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__UnlistenStmt *) - protobuf_c_message_unpack (&pg_query__unlisten_stmt__descriptor, + return (PgQuery__PartitionCmd *) + protobuf_c_message_unpack (&pg_query__partition_cmd__descriptor, allocator, len, data); } -void pg_query__unlisten_stmt__free_unpacked - (PgQuery__UnlistenStmt *message, +void pg_query__partition_cmd__free_unpacked + (PgQuery__PartitionCmd *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__unlisten_stmt__descriptor); + assert(message->base.descriptor == &pg_query__partition_cmd__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__transaction_stmt__init - (PgQuery__TransactionStmt *message) +void pg_query__range_tbl_entry__init + (PgQuery__RangeTblEntry *message) { - static const PgQuery__TransactionStmt init_value = PG_QUERY__TRANSACTION_STMT__INIT; + static const PgQuery__RangeTblEntry init_value = PG_QUERY__RANGE_TBL_ENTRY__INIT; *message = init_value; } -size_t pg_query__transaction_stmt__get_packed_size - (const PgQuery__TransactionStmt *message) +size_t pg_query__range_tbl_entry__get_packed_size + (const PgQuery__RangeTblEntry *message) { - assert(message->base.descriptor == &pg_query__transaction_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_tbl_entry__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__transaction_stmt__pack - (const PgQuery__TransactionStmt *message, +size_t pg_query__range_tbl_entry__pack + (const PgQuery__RangeTblEntry *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__transaction_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_tbl_entry__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__transaction_stmt__pack_to_buffer - (const PgQuery__TransactionStmt *message, +size_t pg_query__range_tbl_entry__pack_to_buffer + (const PgQuery__RangeTblEntry *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__transaction_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_tbl_entry__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__TransactionStmt * - pg_query__transaction_stmt__unpack +PgQuery__RangeTblEntry * + pg_query__range_tbl_entry__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__TransactionStmt *) - protobuf_c_message_unpack (&pg_query__transaction_stmt__descriptor, + return (PgQuery__RangeTblEntry *) + protobuf_c_message_unpack (&pg_query__range_tbl_entry__descriptor, allocator, len, data); } -void pg_query__transaction_stmt__free_unpacked - (PgQuery__TransactionStmt *message, +void pg_query__range_tbl_entry__free_unpacked + (PgQuery__RangeTblEntry *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__transaction_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_tbl_entry__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__view_stmt__init - (PgQuery__ViewStmt *message) +void pg_query__rtepermission_info__init + (PgQuery__RTEPermissionInfo *message) { - static const PgQuery__ViewStmt init_value = PG_QUERY__VIEW_STMT__INIT; + static const PgQuery__RTEPermissionInfo init_value = PG_QUERY__RTEPERMISSION_INFO__INIT; *message = init_value; } -size_t pg_query__view_stmt__get_packed_size - (const PgQuery__ViewStmt *message) +size_t pg_query__rtepermission_info__get_packed_size + (const PgQuery__RTEPermissionInfo *message) { - assert(message->base.descriptor == &pg_query__view_stmt__descriptor); + assert(message->base.descriptor == &pg_query__rtepermission_info__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__view_stmt__pack - (const PgQuery__ViewStmt *message, +size_t pg_query__rtepermission_info__pack + (const PgQuery__RTEPermissionInfo *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__view_stmt__descriptor); + assert(message->base.descriptor == &pg_query__rtepermission_info__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__view_stmt__pack_to_buffer - (const PgQuery__ViewStmt *message, +size_t pg_query__rtepermission_info__pack_to_buffer + (const PgQuery__RTEPermissionInfo *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__view_stmt__descriptor); + assert(message->base.descriptor == &pg_query__rtepermission_info__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ViewStmt * - pg_query__view_stmt__unpack +PgQuery__RTEPermissionInfo * + pg_query__rtepermission_info__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ViewStmt *) - protobuf_c_message_unpack (&pg_query__view_stmt__descriptor, + return (PgQuery__RTEPermissionInfo *) + protobuf_c_message_unpack (&pg_query__rtepermission_info__descriptor, allocator, len, data); } -void pg_query__view_stmt__free_unpacked - (PgQuery__ViewStmt *message, +void pg_query__rtepermission_info__free_unpacked + (PgQuery__RTEPermissionInfo *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__view_stmt__descriptor); + assert(message->base.descriptor == &pg_query__rtepermission_info__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__load_stmt__init - (PgQuery__LoadStmt *message) +void pg_query__range_tbl_function__init + (PgQuery__RangeTblFunction *message) { - static const PgQuery__LoadStmt init_value = PG_QUERY__LOAD_STMT__INIT; + static const PgQuery__RangeTblFunction init_value = PG_QUERY__RANGE_TBL_FUNCTION__INIT; *message = init_value; } -size_t pg_query__load_stmt__get_packed_size - (const PgQuery__LoadStmt *message) +size_t pg_query__range_tbl_function__get_packed_size + (const PgQuery__RangeTblFunction *message) { - assert(message->base.descriptor == &pg_query__load_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_tbl_function__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__load_stmt__pack - (const PgQuery__LoadStmt *message, +size_t pg_query__range_tbl_function__pack + (const PgQuery__RangeTblFunction *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__load_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_tbl_function__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__load_stmt__pack_to_buffer - (const PgQuery__LoadStmt *message, +size_t pg_query__range_tbl_function__pack_to_buffer + (const PgQuery__RangeTblFunction *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__load_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_tbl_function__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__LoadStmt * - pg_query__load_stmt__unpack +PgQuery__RangeTblFunction * + pg_query__range_tbl_function__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__LoadStmt *) - protobuf_c_message_unpack (&pg_query__load_stmt__descriptor, + return (PgQuery__RangeTblFunction *) + protobuf_c_message_unpack (&pg_query__range_tbl_function__descriptor, allocator, len, data); } -void pg_query__load_stmt__free_unpacked - (PgQuery__LoadStmt *message, +void pg_query__range_tbl_function__free_unpacked + (PgQuery__RangeTblFunction *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__load_stmt__descriptor); + assert(message->base.descriptor == &pg_query__range_tbl_function__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_domain_stmt__init - (PgQuery__CreateDomainStmt *message) +void pg_query__table_sample_clause__init + (PgQuery__TableSampleClause *message) { - static const PgQuery__CreateDomainStmt init_value = PG_QUERY__CREATE_DOMAIN_STMT__INIT; + static const PgQuery__TableSampleClause init_value = PG_QUERY__TABLE_SAMPLE_CLAUSE__INIT; *message = init_value; } -size_t pg_query__create_domain_stmt__get_packed_size - (const PgQuery__CreateDomainStmt *message) +size_t pg_query__table_sample_clause__get_packed_size + (const PgQuery__TableSampleClause *message) { - assert(message->base.descriptor == &pg_query__create_domain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__table_sample_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_domain_stmt__pack - (const PgQuery__CreateDomainStmt *message, +size_t pg_query__table_sample_clause__pack + (const PgQuery__TableSampleClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_domain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__table_sample_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_domain_stmt__pack_to_buffer - (const PgQuery__CreateDomainStmt *message, +size_t pg_query__table_sample_clause__pack_to_buffer + (const PgQuery__TableSampleClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_domain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__table_sample_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateDomainStmt * - pg_query__create_domain_stmt__unpack +PgQuery__TableSampleClause * + pg_query__table_sample_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateDomainStmt *) - protobuf_c_message_unpack (&pg_query__create_domain_stmt__descriptor, + return (PgQuery__TableSampleClause *) + protobuf_c_message_unpack (&pg_query__table_sample_clause__descriptor, allocator, len, data); } -void pg_query__create_domain_stmt__free_unpacked - (PgQuery__CreateDomainStmt *message, +void pg_query__table_sample_clause__free_unpacked + (PgQuery__TableSampleClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_domain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__table_sample_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__createdb_stmt__init - (PgQuery__CreatedbStmt *message) +void pg_query__with_check_option__init + (PgQuery__WithCheckOption *message) { - static const PgQuery__CreatedbStmt init_value = PG_QUERY__CREATEDB_STMT__INIT; + static const PgQuery__WithCheckOption init_value = PG_QUERY__WITH_CHECK_OPTION__INIT; *message = init_value; } -size_t pg_query__createdb_stmt__get_packed_size - (const PgQuery__CreatedbStmt *message) +size_t pg_query__with_check_option__get_packed_size + (const PgQuery__WithCheckOption *message) { - assert(message->base.descriptor == &pg_query__createdb_stmt__descriptor); + assert(message->base.descriptor == &pg_query__with_check_option__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__createdb_stmt__pack - (const PgQuery__CreatedbStmt *message, +size_t pg_query__with_check_option__pack + (const PgQuery__WithCheckOption *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__createdb_stmt__descriptor); + assert(message->base.descriptor == &pg_query__with_check_option__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__createdb_stmt__pack_to_buffer - (const PgQuery__CreatedbStmt *message, +size_t pg_query__with_check_option__pack_to_buffer + (const PgQuery__WithCheckOption *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__createdb_stmt__descriptor); + assert(message->base.descriptor == &pg_query__with_check_option__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreatedbStmt * - pg_query__createdb_stmt__unpack +PgQuery__WithCheckOption * + pg_query__with_check_option__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreatedbStmt *) - protobuf_c_message_unpack (&pg_query__createdb_stmt__descriptor, + return (PgQuery__WithCheckOption *) + protobuf_c_message_unpack (&pg_query__with_check_option__descriptor, allocator, len, data); } -void pg_query__createdb_stmt__free_unpacked - (PgQuery__CreatedbStmt *message, +void pg_query__with_check_option__free_unpacked + (PgQuery__WithCheckOption *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__createdb_stmt__descriptor); + assert(message->base.descriptor == &pg_query__with_check_option__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__dropdb_stmt__init - (PgQuery__DropdbStmt *message) +void pg_query__sort_group_clause__init + (PgQuery__SortGroupClause *message) { - static const PgQuery__DropdbStmt init_value = PG_QUERY__DROPDB_STMT__INIT; + static const PgQuery__SortGroupClause init_value = PG_QUERY__SORT_GROUP_CLAUSE__INIT; *message = init_value; } -size_t pg_query__dropdb_stmt__get_packed_size - (const PgQuery__DropdbStmt *message) +size_t pg_query__sort_group_clause__get_packed_size + (const PgQuery__SortGroupClause *message) { - assert(message->base.descriptor == &pg_query__dropdb_stmt__descriptor); + assert(message->base.descriptor == &pg_query__sort_group_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__dropdb_stmt__pack - (const PgQuery__DropdbStmt *message, +size_t pg_query__sort_group_clause__pack + (const PgQuery__SortGroupClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__dropdb_stmt__descriptor); + assert(message->base.descriptor == &pg_query__sort_group_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__dropdb_stmt__pack_to_buffer - (const PgQuery__DropdbStmt *message, +size_t pg_query__sort_group_clause__pack_to_buffer + (const PgQuery__SortGroupClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__dropdb_stmt__descriptor); + assert(message->base.descriptor == &pg_query__sort_group_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DropdbStmt * - pg_query__dropdb_stmt__unpack +PgQuery__SortGroupClause * + pg_query__sort_group_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DropdbStmt *) - protobuf_c_message_unpack (&pg_query__dropdb_stmt__descriptor, + return (PgQuery__SortGroupClause *) + protobuf_c_message_unpack (&pg_query__sort_group_clause__descriptor, allocator, len, data); } -void pg_query__dropdb_stmt__free_unpacked - (PgQuery__DropdbStmt *message, +void pg_query__sort_group_clause__free_unpacked + (PgQuery__SortGroupClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__dropdb_stmt__descriptor); + assert(message->base.descriptor == &pg_query__sort_group_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__vacuum_stmt__init - (PgQuery__VacuumStmt *message) +void pg_query__grouping_set__init + (PgQuery__GroupingSet *message) { - static const PgQuery__VacuumStmt init_value = PG_QUERY__VACUUM_STMT__INIT; + static const PgQuery__GroupingSet init_value = PG_QUERY__GROUPING_SET__INIT; *message = init_value; } -size_t pg_query__vacuum_stmt__get_packed_size - (const PgQuery__VacuumStmt *message) +size_t pg_query__grouping_set__get_packed_size + (const PgQuery__GroupingSet *message) { - assert(message->base.descriptor == &pg_query__vacuum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grouping_set__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__vacuum_stmt__pack - (const PgQuery__VacuumStmt *message, +size_t pg_query__grouping_set__pack + (const PgQuery__GroupingSet *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__vacuum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grouping_set__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__vacuum_stmt__pack_to_buffer - (const PgQuery__VacuumStmt *message, +size_t pg_query__grouping_set__pack_to_buffer + (const PgQuery__GroupingSet *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__vacuum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grouping_set__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__VacuumStmt * - pg_query__vacuum_stmt__unpack +PgQuery__GroupingSet * + pg_query__grouping_set__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__VacuumStmt *) - protobuf_c_message_unpack (&pg_query__vacuum_stmt__descriptor, + return (PgQuery__GroupingSet *) + protobuf_c_message_unpack (&pg_query__grouping_set__descriptor, allocator, len, data); } -void pg_query__vacuum_stmt__free_unpacked - (PgQuery__VacuumStmt *message, +void pg_query__grouping_set__free_unpacked + (PgQuery__GroupingSet *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__vacuum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grouping_set__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__explain_stmt__init - (PgQuery__ExplainStmt *message) +void pg_query__window_clause__init + (PgQuery__WindowClause *message) { - static const PgQuery__ExplainStmt init_value = PG_QUERY__EXPLAIN_STMT__INIT; + static const PgQuery__WindowClause init_value = PG_QUERY__WINDOW_CLAUSE__INIT; *message = init_value; } -size_t pg_query__explain_stmt__get_packed_size - (const PgQuery__ExplainStmt *message) +size_t pg_query__window_clause__get_packed_size + (const PgQuery__WindowClause *message) { - assert(message->base.descriptor == &pg_query__explain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__window_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__explain_stmt__pack - (const PgQuery__ExplainStmt *message, +size_t pg_query__window_clause__pack + (const PgQuery__WindowClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__explain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__window_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__explain_stmt__pack_to_buffer - (const PgQuery__ExplainStmt *message, +size_t pg_query__window_clause__pack_to_buffer + (const PgQuery__WindowClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__explain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__window_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ExplainStmt * - pg_query__explain_stmt__unpack +PgQuery__WindowClause * + pg_query__window_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ExplainStmt *) - protobuf_c_message_unpack (&pg_query__explain_stmt__descriptor, + return (PgQuery__WindowClause *) + protobuf_c_message_unpack (&pg_query__window_clause__descriptor, allocator, len, data); } -void pg_query__explain_stmt__free_unpacked - (PgQuery__ExplainStmt *message, +void pg_query__window_clause__free_unpacked + (PgQuery__WindowClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__explain_stmt__descriptor); + assert(message->base.descriptor == &pg_query__window_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_table_as_stmt__init - (PgQuery__CreateTableAsStmt *message) +void pg_query__row_mark_clause__init + (PgQuery__RowMarkClause *message) { - static const PgQuery__CreateTableAsStmt init_value = PG_QUERY__CREATE_TABLE_AS_STMT__INIT; + static const PgQuery__RowMarkClause init_value = PG_QUERY__ROW_MARK_CLAUSE__INIT; *message = init_value; } -size_t pg_query__create_table_as_stmt__get_packed_size - (const PgQuery__CreateTableAsStmt *message) +size_t pg_query__row_mark_clause__get_packed_size + (const PgQuery__RowMarkClause *message) { - assert(message->base.descriptor == &pg_query__create_table_as_stmt__descriptor); + assert(message->base.descriptor == &pg_query__row_mark_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_table_as_stmt__pack - (const PgQuery__CreateTableAsStmt *message, +size_t pg_query__row_mark_clause__pack + (const PgQuery__RowMarkClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_table_as_stmt__descriptor); + assert(message->base.descriptor == &pg_query__row_mark_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_table_as_stmt__pack_to_buffer - (const PgQuery__CreateTableAsStmt *message, +size_t pg_query__row_mark_clause__pack_to_buffer + (const PgQuery__RowMarkClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_table_as_stmt__descriptor); + assert(message->base.descriptor == &pg_query__row_mark_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateTableAsStmt * - pg_query__create_table_as_stmt__unpack +PgQuery__RowMarkClause * + pg_query__row_mark_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateTableAsStmt *) - protobuf_c_message_unpack (&pg_query__create_table_as_stmt__descriptor, + return (PgQuery__RowMarkClause *) + protobuf_c_message_unpack (&pg_query__row_mark_clause__descriptor, allocator, len, data); } -void pg_query__create_table_as_stmt__free_unpacked - (PgQuery__CreateTableAsStmt *message, - ProtobufCAllocator *allocator) +void pg_query__row_mark_clause__free_unpacked + (PgQuery__RowMarkClause *message, + ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_table_as_stmt__descriptor); + assert(message->base.descriptor == &pg_query__row_mark_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_seq_stmt__init - (PgQuery__CreateSeqStmt *message) +void pg_query__with_clause__init + (PgQuery__WithClause *message) { - static const PgQuery__CreateSeqStmt init_value = PG_QUERY__CREATE_SEQ_STMT__INIT; + static const PgQuery__WithClause init_value = PG_QUERY__WITH_CLAUSE__INIT; *message = init_value; } -size_t pg_query__create_seq_stmt__get_packed_size - (const PgQuery__CreateSeqStmt *message) +size_t pg_query__with_clause__get_packed_size + (const PgQuery__WithClause *message) { - assert(message->base.descriptor == &pg_query__create_seq_stmt__descriptor); + assert(message->base.descriptor == &pg_query__with_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_seq_stmt__pack - (const PgQuery__CreateSeqStmt *message, +size_t pg_query__with_clause__pack + (const PgQuery__WithClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_seq_stmt__descriptor); + assert(message->base.descriptor == &pg_query__with_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_seq_stmt__pack_to_buffer - (const PgQuery__CreateSeqStmt *message, +size_t pg_query__with_clause__pack_to_buffer + (const PgQuery__WithClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_seq_stmt__descriptor); + assert(message->base.descriptor == &pg_query__with_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateSeqStmt * - pg_query__create_seq_stmt__unpack +PgQuery__WithClause * + pg_query__with_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateSeqStmt *) - protobuf_c_message_unpack (&pg_query__create_seq_stmt__descriptor, + return (PgQuery__WithClause *) + protobuf_c_message_unpack (&pg_query__with_clause__descriptor, allocator, len, data); } -void pg_query__create_seq_stmt__free_unpacked - (PgQuery__CreateSeqStmt *message, +void pg_query__with_clause__free_unpacked + (PgQuery__WithClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_seq_stmt__descriptor); + assert(message->base.descriptor == &pg_query__with_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_seq_stmt__init - (PgQuery__AlterSeqStmt *message) +void pg_query__infer_clause__init + (PgQuery__InferClause *message) { - static const PgQuery__AlterSeqStmt init_value = PG_QUERY__ALTER_SEQ_STMT__INIT; + static const PgQuery__InferClause init_value = PG_QUERY__INFER_CLAUSE__INIT; *message = init_value; } -size_t pg_query__alter_seq_stmt__get_packed_size - (const PgQuery__AlterSeqStmt *message) +size_t pg_query__infer_clause__get_packed_size + (const PgQuery__InferClause *message) { - assert(message->base.descriptor == &pg_query__alter_seq_stmt__descriptor); + assert(message->base.descriptor == &pg_query__infer_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_seq_stmt__pack - (const PgQuery__AlterSeqStmt *message, +size_t pg_query__infer_clause__pack + (const PgQuery__InferClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_seq_stmt__descriptor); + assert(message->base.descriptor == &pg_query__infer_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_seq_stmt__pack_to_buffer - (const PgQuery__AlterSeqStmt *message, +size_t pg_query__infer_clause__pack_to_buffer + (const PgQuery__InferClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_seq_stmt__descriptor); + assert(message->base.descriptor == &pg_query__infer_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterSeqStmt * - pg_query__alter_seq_stmt__unpack +PgQuery__InferClause * + pg_query__infer_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterSeqStmt *) - protobuf_c_message_unpack (&pg_query__alter_seq_stmt__descriptor, + return (PgQuery__InferClause *) + protobuf_c_message_unpack (&pg_query__infer_clause__descriptor, allocator, len, data); } -void pg_query__alter_seq_stmt__free_unpacked - (PgQuery__AlterSeqStmt *message, +void pg_query__infer_clause__free_unpacked + (PgQuery__InferClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_seq_stmt__descriptor); + assert(message->base.descriptor == &pg_query__infer_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__variable_set_stmt__init - (PgQuery__VariableSetStmt *message) +void pg_query__on_conflict_clause__init + (PgQuery__OnConflictClause *message) { - static const PgQuery__VariableSetStmt init_value = PG_QUERY__VARIABLE_SET_STMT__INIT; + static const PgQuery__OnConflictClause init_value = PG_QUERY__ON_CONFLICT_CLAUSE__INIT; *message = init_value; } -size_t pg_query__variable_set_stmt__get_packed_size - (const PgQuery__VariableSetStmt *message) +size_t pg_query__on_conflict_clause__get_packed_size + (const PgQuery__OnConflictClause *message) { - assert(message->base.descriptor == &pg_query__variable_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__on_conflict_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__variable_set_stmt__pack - (const PgQuery__VariableSetStmt *message, +size_t pg_query__on_conflict_clause__pack + (const PgQuery__OnConflictClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__variable_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__on_conflict_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__variable_set_stmt__pack_to_buffer - (const PgQuery__VariableSetStmt *message, +size_t pg_query__on_conflict_clause__pack_to_buffer + (const PgQuery__OnConflictClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__variable_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__on_conflict_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__VariableSetStmt * - pg_query__variable_set_stmt__unpack +PgQuery__OnConflictClause * + pg_query__on_conflict_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__VariableSetStmt *) - protobuf_c_message_unpack (&pg_query__variable_set_stmt__descriptor, + return (PgQuery__OnConflictClause *) + protobuf_c_message_unpack (&pg_query__on_conflict_clause__descriptor, allocator, len, data); } -void pg_query__variable_set_stmt__free_unpacked - (PgQuery__VariableSetStmt *message, +void pg_query__on_conflict_clause__free_unpacked + (PgQuery__OnConflictClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__variable_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__on_conflict_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__variable_show_stmt__init - (PgQuery__VariableShowStmt *message) +void pg_query__ctesearch_clause__init + (PgQuery__CTESearchClause *message) { - static const PgQuery__VariableShowStmt init_value = PG_QUERY__VARIABLE_SHOW_STMT__INIT; + static const PgQuery__CTESearchClause init_value = PG_QUERY__CTESEARCH_CLAUSE__INIT; *message = init_value; } -size_t pg_query__variable_show_stmt__get_packed_size - (const PgQuery__VariableShowStmt *message) +size_t pg_query__ctesearch_clause__get_packed_size + (const PgQuery__CTESearchClause *message) { - assert(message->base.descriptor == &pg_query__variable_show_stmt__descriptor); + assert(message->base.descriptor == &pg_query__ctesearch_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__variable_show_stmt__pack - (const PgQuery__VariableShowStmt *message, +size_t pg_query__ctesearch_clause__pack + (const PgQuery__CTESearchClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__variable_show_stmt__descriptor); + assert(message->base.descriptor == &pg_query__ctesearch_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__variable_show_stmt__pack_to_buffer - (const PgQuery__VariableShowStmt *message, +size_t pg_query__ctesearch_clause__pack_to_buffer + (const PgQuery__CTESearchClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__variable_show_stmt__descriptor); + assert(message->base.descriptor == &pg_query__ctesearch_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__VariableShowStmt * - pg_query__variable_show_stmt__unpack +PgQuery__CTESearchClause * + pg_query__ctesearch_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__VariableShowStmt *) - protobuf_c_message_unpack (&pg_query__variable_show_stmt__descriptor, + return (PgQuery__CTESearchClause *) + protobuf_c_message_unpack (&pg_query__ctesearch_clause__descriptor, allocator, len, data); } -void pg_query__variable_show_stmt__free_unpacked - (PgQuery__VariableShowStmt *message, +void pg_query__ctesearch_clause__free_unpacked + (PgQuery__CTESearchClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__variable_show_stmt__descriptor); + assert(message->base.descriptor == &pg_query__ctesearch_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__discard_stmt__init - (PgQuery__DiscardStmt *message) +void pg_query__ctecycle_clause__init + (PgQuery__CTECycleClause *message) { - static const PgQuery__DiscardStmt init_value = PG_QUERY__DISCARD_STMT__INIT; + static const PgQuery__CTECycleClause init_value = PG_QUERY__CTECYCLE_CLAUSE__INIT; *message = init_value; } -size_t pg_query__discard_stmt__get_packed_size - (const PgQuery__DiscardStmt *message) +size_t pg_query__ctecycle_clause__get_packed_size + (const PgQuery__CTECycleClause *message) { - assert(message->base.descriptor == &pg_query__discard_stmt__descriptor); + assert(message->base.descriptor == &pg_query__ctecycle_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__discard_stmt__pack - (const PgQuery__DiscardStmt *message, +size_t pg_query__ctecycle_clause__pack + (const PgQuery__CTECycleClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__discard_stmt__descriptor); + assert(message->base.descriptor == &pg_query__ctecycle_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__discard_stmt__pack_to_buffer - (const PgQuery__DiscardStmt *message, +size_t pg_query__ctecycle_clause__pack_to_buffer + (const PgQuery__CTECycleClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__discard_stmt__descriptor); + assert(message->base.descriptor == &pg_query__ctecycle_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DiscardStmt * - pg_query__discard_stmt__unpack +PgQuery__CTECycleClause * + pg_query__ctecycle_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DiscardStmt *) - protobuf_c_message_unpack (&pg_query__discard_stmt__descriptor, + return (PgQuery__CTECycleClause *) + protobuf_c_message_unpack (&pg_query__ctecycle_clause__descriptor, allocator, len, data); } -void pg_query__discard_stmt__free_unpacked - (PgQuery__DiscardStmt *message, +void pg_query__ctecycle_clause__free_unpacked + (PgQuery__CTECycleClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__discard_stmt__descriptor); + assert(message->base.descriptor == &pg_query__ctecycle_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_trig_stmt__init - (PgQuery__CreateTrigStmt *message) +void pg_query__common_table_expr__init + (PgQuery__CommonTableExpr *message) { - static const PgQuery__CreateTrigStmt init_value = PG_QUERY__CREATE_TRIG_STMT__INIT; + static const PgQuery__CommonTableExpr init_value = PG_QUERY__COMMON_TABLE_EXPR__INIT; *message = init_value; } -size_t pg_query__create_trig_stmt__get_packed_size - (const PgQuery__CreateTrigStmt *message) +size_t pg_query__common_table_expr__get_packed_size + (const PgQuery__CommonTableExpr *message) { - assert(message->base.descriptor == &pg_query__create_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__common_table_expr__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_trig_stmt__pack - (const PgQuery__CreateTrigStmt *message, +size_t pg_query__common_table_expr__pack + (const PgQuery__CommonTableExpr *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__common_table_expr__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_trig_stmt__pack_to_buffer - (const PgQuery__CreateTrigStmt *message, +size_t pg_query__common_table_expr__pack_to_buffer + (const PgQuery__CommonTableExpr *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__common_table_expr__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateTrigStmt * - pg_query__create_trig_stmt__unpack +PgQuery__CommonTableExpr * + pg_query__common_table_expr__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateTrigStmt *) - protobuf_c_message_unpack (&pg_query__create_trig_stmt__descriptor, + return (PgQuery__CommonTableExpr *) + protobuf_c_message_unpack (&pg_query__common_table_expr__descriptor, allocator, len, data); } -void pg_query__create_trig_stmt__free_unpacked - (PgQuery__CreateTrigStmt *message, +void pg_query__common_table_expr__free_unpacked + (PgQuery__CommonTableExpr *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__common_table_expr__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_plang_stmt__init - (PgQuery__CreatePLangStmt *message) +void pg_query__merge_when_clause__init + (PgQuery__MergeWhenClause *message) { - static const PgQuery__CreatePLangStmt init_value = PG_QUERY__CREATE_PLANG_STMT__INIT; + static const PgQuery__MergeWhenClause init_value = PG_QUERY__MERGE_WHEN_CLAUSE__INIT; *message = init_value; } -size_t pg_query__create_plang_stmt__get_packed_size - (const PgQuery__CreatePLangStmt *message) +size_t pg_query__merge_when_clause__get_packed_size + (const PgQuery__MergeWhenClause *message) { - assert(message->base.descriptor == &pg_query__create_plang_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_when_clause__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_plang_stmt__pack - (const PgQuery__CreatePLangStmt *message, +size_t pg_query__merge_when_clause__pack + (const PgQuery__MergeWhenClause *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_plang_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_when_clause__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_plang_stmt__pack_to_buffer - (const PgQuery__CreatePLangStmt *message, +size_t pg_query__merge_when_clause__pack_to_buffer + (const PgQuery__MergeWhenClause *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_plang_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_when_clause__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreatePLangStmt * - pg_query__create_plang_stmt__unpack +PgQuery__MergeWhenClause * + pg_query__merge_when_clause__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreatePLangStmt *) - protobuf_c_message_unpack (&pg_query__create_plang_stmt__descriptor, + return (PgQuery__MergeWhenClause *) + protobuf_c_message_unpack (&pg_query__merge_when_clause__descriptor, allocator, len, data); } -void pg_query__create_plang_stmt__free_unpacked - (PgQuery__CreatePLangStmt *message, +void pg_query__merge_when_clause__free_unpacked + (PgQuery__MergeWhenClause *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_plang_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_when_clause__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_role_stmt__init - (PgQuery__CreateRoleStmt *message) +void pg_query__merge_action__init + (PgQuery__MergeAction *message) { - static const PgQuery__CreateRoleStmt init_value = PG_QUERY__CREATE_ROLE_STMT__INIT; + static const PgQuery__MergeAction init_value = PG_QUERY__MERGE_ACTION__INIT; *message = init_value; } -size_t pg_query__create_role_stmt__get_packed_size - (const PgQuery__CreateRoleStmt *message) +size_t pg_query__merge_action__get_packed_size + (const PgQuery__MergeAction *message) { - assert(message->base.descriptor == &pg_query__create_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_action__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_role_stmt__pack - (const PgQuery__CreateRoleStmt *message, +size_t pg_query__merge_action__pack + (const PgQuery__MergeAction *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_action__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_role_stmt__pack_to_buffer - (const PgQuery__CreateRoleStmt *message, +size_t pg_query__merge_action__pack_to_buffer + (const PgQuery__MergeAction *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_action__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateRoleStmt * - pg_query__create_role_stmt__unpack +PgQuery__MergeAction * + pg_query__merge_action__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateRoleStmt *) - protobuf_c_message_unpack (&pg_query__create_role_stmt__descriptor, + return (PgQuery__MergeAction *) + protobuf_c_message_unpack (&pg_query__merge_action__descriptor, allocator, len, data); } -void pg_query__create_role_stmt__free_unpacked - (PgQuery__CreateRoleStmt *message, +void pg_query__merge_action__free_unpacked + (PgQuery__MergeAction *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_action__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_role_stmt__init - (PgQuery__AlterRoleStmt *message) +void pg_query__trigger_transition__init + (PgQuery__TriggerTransition *message) { - static const PgQuery__AlterRoleStmt init_value = PG_QUERY__ALTER_ROLE_STMT__INIT; + static const PgQuery__TriggerTransition init_value = PG_QUERY__TRIGGER_TRANSITION__INIT; *message = init_value; } -size_t pg_query__alter_role_stmt__get_packed_size - (const PgQuery__AlterRoleStmt *message) +size_t pg_query__trigger_transition__get_packed_size + (const PgQuery__TriggerTransition *message) { - assert(message->base.descriptor == &pg_query__alter_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__trigger_transition__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_role_stmt__pack - (const PgQuery__AlterRoleStmt *message, +size_t pg_query__trigger_transition__pack + (const PgQuery__TriggerTransition *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__trigger_transition__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_role_stmt__pack_to_buffer - (const PgQuery__AlterRoleStmt *message, +size_t pg_query__trigger_transition__pack_to_buffer + (const PgQuery__TriggerTransition *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__trigger_transition__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterRoleStmt * - pg_query__alter_role_stmt__unpack +PgQuery__TriggerTransition * + pg_query__trigger_transition__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterRoleStmt *) - protobuf_c_message_unpack (&pg_query__alter_role_stmt__descriptor, + return (PgQuery__TriggerTransition *) + protobuf_c_message_unpack (&pg_query__trigger_transition__descriptor, allocator, len, data); } -void pg_query__alter_role_stmt__free_unpacked - (PgQuery__AlterRoleStmt *message, +void pg_query__trigger_transition__free_unpacked + (PgQuery__TriggerTransition *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__trigger_transition__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__drop_role_stmt__init - (PgQuery__DropRoleStmt *message) +void pg_query__json_output__init + (PgQuery__JsonOutput *message) { - static const PgQuery__DropRoleStmt init_value = PG_QUERY__DROP_ROLE_STMT__INIT; + static const PgQuery__JsonOutput init_value = PG_QUERY__JSON_OUTPUT__INIT; *message = init_value; } -size_t pg_query__drop_role_stmt__get_packed_size - (const PgQuery__DropRoleStmt *message) +size_t pg_query__json_output__get_packed_size + (const PgQuery__JsonOutput *message) { - assert(message->base.descriptor == &pg_query__drop_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_output__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__drop_role_stmt__pack - (const PgQuery__DropRoleStmt *message, +size_t pg_query__json_output__pack + (const PgQuery__JsonOutput *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__drop_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_output__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__drop_role_stmt__pack_to_buffer - (const PgQuery__DropRoleStmt *message, +size_t pg_query__json_output__pack_to_buffer + (const PgQuery__JsonOutput *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__drop_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_output__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DropRoleStmt * - pg_query__drop_role_stmt__unpack +PgQuery__JsonOutput * + pg_query__json_output__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DropRoleStmt *) - protobuf_c_message_unpack (&pg_query__drop_role_stmt__descriptor, + return (PgQuery__JsonOutput *) + protobuf_c_message_unpack (&pg_query__json_output__descriptor, allocator, len, data); } -void pg_query__drop_role_stmt__free_unpacked - (PgQuery__DropRoleStmt *message, +void pg_query__json_output__free_unpacked + (PgQuery__JsonOutput *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__drop_role_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_output__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__lock_stmt__init - (PgQuery__LockStmt *message) +void pg_query__json_key_value__init + (PgQuery__JsonKeyValue *message) { - static const PgQuery__LockStmt init_value = PG_QUERY__LOCK_STMT__INIT; + static const PgQuery__JsonKeyValue init_value = PG_QUERY__JSON_KEY_VALUE__INIT; *message = init_value; } -size_t pg_query__lock_stmt__get_packed_size - (const PgQuery__LockStmt *message) +size_t pg_query__json_key_value__get_packed_size + (const PgQuery__JsonKeyValue *message) { - assert(message->base.descriptor == &pg_query__lock_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_key_value__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__lock_stmt__pack - (const PgQuery__LockStmt *message, +size_t pg_query__json_key_value__pack + (const PgQuery__JsonKeyValue *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__lock_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_key_value__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__lock_stmt__pack_to_buffer - (const PgQuery__LockStmt *message, +size_t pg_query__json_key_value__pack_to_buffer + (const PgQuery__JsonKeyValue *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__lock_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_key_value__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__LockStmt * - pg_query__lock_stmt__unpack +PgQuery__JsonKeyValue * + pg_query__json_key_value__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__LockStmt *) - protobuf_c_message_unpack (&pg_query__lock_stmt__descriptor, + return (PgQuery__JsonKeyValue *) + protobuf_c_message_unpack (&pg_query__json_key_value__descriptor, allocator, len, data); } -void pg_query__lock_stmt__free_unpacked - (PgQuery__LockStmt *message, +void pg_query__json_key_value__free_unpacked + (PgQuery__JsonKeyValue *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__lock_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_key_value__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__constraints_set_stmt__init - (PgQuery__ConstraintsSetStmt *message) +void pg_query__json_object_constructor__init + (PgQuery__JsonObjectConstructor *message) { - static const PgQuery__ConstraintsSetStmt init_value = PG_QUERY__CONSTRAINTS_SET_STMT__INIT; + static const PgQuery__JsonObjectConstructor init_value = PG_QUERY__JSON_OBJECT_CONSTRUCTOR__INIT; *message = init_value; } -size_t pg_query__constraints_set_stmt__get_packed_size - (const PgQuery__ConstraintsSetStmt *message) +size_t pg_query__json_object_constructor__get_packed_size + (const PgQuery__JsonObjectConstructor *message) { - assert(message->base.descriptor == &pg_query__constraints_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_object_constructor__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__constraints_set_stmt__pack - (const PgQuery__ConstraintsSetStmt *message, +size_t pg_query__json_object_constructor__pack + (const PgQuery__JsonObjectConstructor *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__constraints_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_object_constructor__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__constraints_set_stmt__pack_to_buffer - (const PgQuery__ConstraintsSetStmt *message, +size_t pg_query__json_object_constructor__pack_to_buffer + (const PgQuery__JsonObjectConstructor *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__constraints_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_object_constructor__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ConstraintsSetStmt * - pg_query__constraints_set_stmt__unpack +PgQuery__JsonObjectConstructor * + pg_query__json_object_constructor__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ConstraintsSetStmt *) - protobuf_c_message_unpack (&pg_query__constraints_set_stmt__descriptor, + return (PgQuery__JsonObjectConstructor *) + protobuf_c_message_unpack (&pg_query__json_object_constructor__descriptor, allocator, len, data); } -void pg_query__constraints_set_stmt__free_unpacked - (PgQuery__ConstraintsSetStmt *message, +void pg_query__json_object_constructor__free_unpacked + (PgQuery__JsonObjectConstructor *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__constraints_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_object_constructor__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__reindex_stmt__init - (PgQuery__ReindexStmt *message) +void pg_query__json_array_constructor__init + (PgQuery__JsonArrayConstructor *message) { - static const PgQuery__ReindexStmt init_value = PG_QUERY__REINDEX_STMT__INIT; + static const PgQuery__JsonArrayConstructor init_value = PG_QUERY__JSON_ARRAY_CONSTRUCTOR__INIT; *message = init_value; } -size_t pg_query__reindex_stmt__get_packed_size - (const PgQuery__ReindexStmt *message) +size_t pg_query__json_array_constructor__get_packed_size + (const PgQuery__JsonArrayConstructor *message) { - assert(message->base.descriptor == &pg_query__reindex_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_constructor__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__reindex_stmt__pack - (const PgQuery__ReindexStmt *message, +size_t pg_query__json_array_constructor__pack + (const PgQuery__JsonArrayConstructor *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__reindex_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_constructor__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__reindex_stmt__pack_to_buffer - (const PgQuery__ReindexStmt *message, +size_t pg_query__json_array_constructor__pack_to_buffer + (const PgQuery__JsonArrayConstructor *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__reindex_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_constructor__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ReindexStmt * - pg_query__reindex_stmt__unpack +PgQuery__JsonArrayConstructor * + pg_query__json_array_constructor__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ReindexStmt *) - protobuf_c_message_unpack (&pg_query__reindex_stmt__descriptor, + return (PgQuery__JsonArrayConstructor *) + protobuf_c_message_unpack (&pg_query__json_array_constructor__descriptor, allocator, len, data); } -void pg_query__reindex_stmt__free_unpacked - (PgQuery__ReindexStmt *message, +void pg_query__json_array_constructor__free_unpacked + (PgQuery__JsonArrayConstructor *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__reindex_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_constructor__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__check_point_stmt__init - (PgQuery__CheckPointStmt *message) +void pg_query__json_array_query_constructor__init + (PgQuery__JsonArrayQueryConstructor *message) { - static const PgQuery__CheckPointStmt init_value = PG_QUERY__CHECK_POINT_STMT__INIT; + static const PgQuery__JsonArrayQueryConstructor init_value = PG_QUERY__JSON_ARRAY_QUERY_CONSTRUCTOR__INIT; *message = init_value; } -size_t pg_query__check_point_stmt__get_packed_size - (const PgQuery__CheckPointStmt *message) +size_t pg_query__json_array_query_constructor__get_packed_size + (const PgQuery__JsonArrayQueryConstructor *message) { - assert(message->base.descriptor == &pg_query__check_point_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_query_constructor__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__check_point_stmt__pack - (const PgQuery__CheckPointStmt *message, +size_t pg_query__json_array_query_constructor__pack + (const PgQuery__JsonArrayQueryConstructor *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__check_point_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_query_constructor__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__check_point_stmt__pack_to_buffer - (const PgQuery__CheckPointStmt *message, +size_t pg_query__json_array_query_constructor__pack_to_buffer + (const PgQuery__JsonArrayQueryConstructor *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__check_point_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_query_constructor__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CheckPointStmt * - pg_query__check_point_stmt__unpack +PgQuery__JsonArrayQueryConstructor * + pg_query__json_array_query_constructor__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CheckPointStmt *) - protobuf_c_message_unpack (&pg_query__check_point_stmt__descriptor, + return (PgQuery__JsonArrayQueryConstructor *) + protobuf_c_message_unpack (&pg_query__json_array_query_constructor__descriptor, allocator, len, data); } -void pg_query__check_point_stmt__free_unpacked - (PgQuery__CheckPointStmt *message, +void pg_query__json_array_query_constructor__free_unpacked + (PgQuery__JsonArrayQueryConstructor *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__check_point_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_query_constructor__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_schema_stmt__init - (PgQuery__CreateSchemaStmt *message) +void pg_query__json_agg_constructor__init + (PgQuery__JsonAggConstructor *message) { - static const PgQuery__CreateSchemaStmt init_value = PG_QUERY__CREATE_SCHEMA_STMT__INIT; + static const PgQuery__JsonAggConstructor init_value = PG_QUERY__JSON_AGG_CONSTRUCTOR__INIT; *message = init_value; } -size_t pg_query__create_schema_stmt__get_packed_size - (const PgQuery__CreateSchemaStmt *message) +size_t pg_query__json_agg_constructor__get_packed_size + (const PgQuery__JsonAggConstructor *message) { - assert(message->base.descriptor == &pg_query__create_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_agg_constructor__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_schema_stmt__pack - (const PgQuery__CreateSchemaStmt *message, +size_t pg_query__json_agg_constructor__pack + (const PgQuery__JsonAggConstructor *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_agg_constructor__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_schema_stmt__pack_to_buffer - (const PgQuery__CreateSchemaStmt *message, +size_t pg_query__json_agg_constructor__pack_to_buffer + (const PgQuery__JsonAggConstructor *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_agg_constructor__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateSchemaStmt * - pg_query__create_schema_stmt__unpack +PgQuery__JsonAggConstructor * + pg_query__json_agg_constructor__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateSchemaStmt *) - protobuf_c_message_unpack (&pg_query__create_schema_stmt__descriptor, + return (PgQuery__JsonAggConstructor *) + protobuf_c_message_unpack (&pg_query__json_agg_constructor__descriptor, allocator, len, data); } -void pg_query__create_schema_stmt__free_unpacked - (PgQuery__CreateSchemaStmt *message, +void pg_query__json_agg_constructor__free_unpacked + (PgQuery__JsonAggConstructor *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_agg_constructor__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_database_stmt__init - (PgQuery__AlterDatabaseStmt *message) +void pg_query__json_object_agg__init + (PgQuery__JsonObjectAgg *message) { - static const PgQuery__AlterDatabaseStmt init_value = PG_QUERY__ALTER_DATABASE_STMT__INIT; + static const PgQuery__JsonObjectAgg init_value = PG_QUERY__JSON_OBJECT_AGG__INIT; *message = init_value; } -size_t pg_query__alter_database_stmt__get_packed_size - (const PgQuery__AlterDatabaseStmt *message) +size_t pg_query__json_object_agg__get_packed_size + (const PgQuery__JsonObjectAgg *message) { - assert(message->base.descriptor == &pg_query__alter_database_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_object_agg__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_database_stmt__pack - (const PgQuery__AlterDatabaseStmt *message, +size_t pg_query__json_object_agg__pack + (const PgQuery__JsonObjectAgg *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_database_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_object_agg__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_database_stmt__pack_to_buffer - (const PgQuery__AlterDatabaseStmt *message, +size_t pg_query__json_object_agg__pack_to_buffer + (const PgQuery__JsonObjectAgg *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_database_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_object_agg__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterDatabaseStmt * - pg_query__alter_database_stmt__unpack +PgQuery__JsonObjectAgg * + pg_query__json_object_agg__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterDatabaseStmt *) - protobuf_c_message_unpack (&pg_query__alter_database_stmt__descriptor, + return (PgQuery__JsonObjectAgg *) + protobuf_c_message_unpack (&pg_query__json_object_agg__descriptor, allocator, len, data); } -void pg_query__alter_database_stmt__free_unpacked - (PgQuery__AlterDatabaseStmt *message, +void pg_query__json_object_agg__free_unpacked + (PgQuery__JsonObjectAgg *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_database_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_object_agg__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_database_refresh_coll_stmt__init - (PgQuery__AlterDatabaseRefreshCollStmt *message) +void pg_query__json_array_agg__init + (PgQuery__JsonArrayAgg *message) { - static const PgQuery__AlterDatabaseRefreshCollStmt init_value = PG_QUERY__ALTER_DATABASE_REFRESH_COLL_STMT__INIT; + static const PgQuery__JsonArrayAgg init_value = PG_QUERY__JSON_ARRAY_AGG__INIT; *message = init_value; } -size_t pg_query__alter_database_refresh_coll_stmt__get_packed_size - (const PgQuery__AlterDatabaseRefreshCollStmt *message) +size_t pg_query__json_array_agg__get_packed_size + (const PgQuery__JsonArrayAgg *message) { - assert(message->base.descriptor == &pg_query__alter_database_refresh_coll_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_agg__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_database_refresh_coll_stmt__pack - (const PgQuery__AlterDatabaseRefreshCollStmt *message, +size_t pg_query__json_array_agg__pack + (const PgQuery__JsonArrayAgg *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_database_refresh_coll_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_agg__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_database_refresh_coll_stmt__pack_to_buffer - (const PgQuery__AlterDatabaseRefreshCollStmt *message, +size_t pg_query__json_array_agg__pack_to_buffer + (const PgQuery__JsonArrayAgg *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_database_refresh_coll_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_agg__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterDatabaseRefreshCollStmt * - pg_query__alter_database_refresh_coll_stmt__unpack +PgQuery__JsonArrayAgg * + pg_query__json_array_agg__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterDatabaseRefreshCollStmt *) - protobuf_c_message_unpack (&pg_query__alter_database_refresh_coll_stmt__descriptor, + return (PgQuery__JsonArrayAgg *) + protobuf_c_message_unpack (&pg_query__json_array_agg__descriptor, allocator, len, data); } -void pg_query__alter_database_refresh_coll_stmt__free_unpacked - (PgQuery__AlterDatabaseRefreshCollStmt *message, +void pg_query__json_array_agg__free_unpacked + (PgQuery__JsonArrayAgg *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_database_refresh_coll_stmt__descriptor); + assert(message->base.descriptor == &pg_query__json_array_agg__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_database_set_stmt__init - (PgQuery__AlterDatabaseSetStmt *message) +void pg_query__raw_stmt__init + (PgQuery__RawStmt *message) { - static const PgQuery__AlterDatabaseSetStmt init_value = PG_QUERY__ALTER_DATABASE_SET_STMT__INIT; + static const PgQuery__RawStmt init_value = PG_QUERY__RAW_STMT__INIT; *message = init_value; } -size_t pg_query__alter_database_set_stmt__get_packed_size - (const PgQuery__AlterDatabaseSetStmt *message) +size_t pg_query__raw_stmt__get_packed_size + (const PgQuery__RawStmt *message) { - assert(message->base.descriptor == &pg_query__alter_database_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__raw_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_database_set_stmt__pack - (const PgQuery__AlterDatabaseSetStmt *message, +size_t pg_query__raw_stmt__pack + (const PgQuery__RawStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_database_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__raw_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_database_set_stmt__pack_to_buffer - (const PgQuery__AlterDatabaseSetStmt *message, +size_t pg_query__raw_stmt__pack_to_buffer + (const PgQuery__RawStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_database_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__raw_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterDatabaseSetStmt * - pg_query__alter_database_set_stmt__unpack +PgQuery__RawStmt * + pg_query__raw_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterDatabaseSetStmt *) - protobuf_c_message_unpack (&pg_query__alter_database_set_stmt__descriptor, + return (PgQuery__RawStmt *) + protobuf_c_message_unpack (&pg_query__raw_stmt__descriptor, allocator, len, data); } -void pg_query__alter_database_set_stmt__free_unpacked - (PgQuery__AlterDatabaseSetStmt *message, +void pg_query__raw_stmt__free_unpacked + (PgQuery__RawStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_database_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__raw_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_role_set_stmt__init - (PgQuery__AlterRoleSetStmt *message) +void pg_query__insert_stmt__init + (PgQuery__InsertStmt *message) { - static const PgQuery__AlterRoleSetStmt init_value = PG_QUERY__ALTER_ROLE_SET_STMT__INIT; + static const PgQuery__InsertStmt init_value = PG_QUERY__INSERT_STMT__INIT; *message = init_value; } -size_t pg_query__alter_role_set_stmt__get_packed_size - (const PgQuery__AlterRoleSetStmt *message) +size_t pg_query__insert_stmt__get_packed_size + (const PgQuery__InsertStmt *message) { - assert(message->base.descriptor == &pg_query__alter_role_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__insert_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_role_set_stmt__pack - (const PgQuery__AlterRoleSetStmt *message, +size_t pg_query__insert_stmt__pack + (const PgQuery__InsertStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_role_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__insert_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_role_set_stmt__pack_to_buffer - (const PgQuery__AlterRoleSetStmt *message, +size_t pg_query__insert_stmt__pack_to_buffer + (const PgQuery__InsertStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_role_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__insert_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterRoleSetStmt * - pg_query__alter_role_set_stmt__unpack +PgQuery__InsertStmt * + pg_query__insert_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterRoleSetStmt *) - protobuf_c_message_unpack (&pg_query__alter_role_set_stmt__descriptor, + return (PgQuery__InsertStmt *) + protobuf_c_message_unpack (&pg_query__insert_stmt__descriptor, allocator, len, data); } -void pg_query__alter_role_set_stmt__free_unpacked - (PgQuery__AlterRoleSetStmt *message, +void pg_query__insert_stmt__free_unpacked + (PgQuery__InsertStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_role_set_stmt__descriptor); + assert(message->base.descriptor == &pg_query__insert_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_conversion_stmt__init - (PgQuery__CreateConversionStmt *message) +void pg_query__delete_stmt__init + (PgQuery__DeleteStmt *message) { - static const PgQuery__CreateConversionStmt init_value = PG_QUERY__CREATE_CONVERSION_STMT__INIT; + static const PgQuery__DeleteStmt init_value = PG_QUERY__DELETE_STMT__INIT; *message = init_value; } -size_t pg_query__create_conversion_stmt__get_packed_size - (const PgQuery__CreateConversionStmt *message) +size_t pg_query__delete_stmt__get_packed_size + (const PgQuery__DeleteStmt *message) { - assert(message->base.descriptor == &pg_query__create_conversion_stmt__descriptor); + assert(message->base.descriptor == &pg_query__delete_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_conversion_stmt__pack - (const PgQuery__CreateConversionStmt *message, +size_t pg_query__delete_stmt__pack + (const PgQuery__DeleteStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_conversion_stmt__descriptor); + assert(message->base.descriptor == &pg_query__delete_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_conversion_stmt__pack_to_buffer - (const PgQuery__CreateConversionStmt *message, +size_t pg_query__delete_stmt__pack_to_buffer + (const PgQuery__DeleteStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_conversion_stmt__descriptor); + assert(message->base.descriptor == &pg_query__delete_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateConversionStmt * - pg_query__create_conversion_stmt__unpack +PgQuery__DeleteStmt * + pg_query__delete_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateConversionStmt *) - protobuf_c_message_unpack (&pg_query__create_conversion_stmt__descriptor, + return (PgQuery__DeleteStmt *) + protobuf_c_message_unpack (&pg_query__delete_stmt__descriptor, allocator, len, data); } -void pg_query__create_conversion_stmt__free_unpacked - (PgQuery__CreateConversionStmt *message, +void pg_query__delete_stmt__free_unpacked + (PgQuery__DeleteStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_conversion_stmt__descriptor); + assert(message->base.descriptor == &pg_query__delete_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_cast_stmt__init - (PgQuery__CreateCastStmt *message) +void pg_query__update_stmt__init + (PgQuery__UpdateStmt *message) { - static const PgQuery__CreateCastStmt init_value = PG_QUERY__CREATE_CAST_STMT__INIT; + static const PgQuery__UpdateStmt init_value = PG_QUERY__UPDATE_STMT__INIT; *message = init_value; } -size_t pg_query__create_cast_stmt__get_packed_size - (const PgQuery__CreateCastStmt *message) +size_t pg_query__update_stmt__get_packed_size + (const PgQuery__UpdateStmt *message) { - assert(message->base.descriptor == &pg_query__create_cast_stmt__descriptor); + assert(message->base.descriptor == &pg_query__update_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_cast_stmt__pack - (const PgQuery__CreateCastStmt *message, +size_t pg_query__update_stmt__pack + (const PgQuery__UpdateStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_cast_stmt__descriptor); + assert(message->base.descriptor == &pg_query__update_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_cast_stmt__pack_to_buffer - (const PgQuery__CreateCastStmt *message, +size_t pg_query__update_stmt__pack_to_buffer + (const PgQuery__UpdateStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_cast_stmt__descriptor); + assert(message->base.descriptor == &pg_query__update_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateCastStmt * - pg_query__create_cast_stmt__unpack +PgQuery__UpdateStmt * + pg_query__update_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateCastStmt *) - protobuf_c_message_unpack (&pg_query__create_cast_stmt__descriptor, + return (PgQuery__UpdateStmt *) + protobuf_c_message_unpack (&pg_query__update_stmt__descriptor, allocator, len, data); } -void pg_query__create_cast_stmt__free_unpacked - (PgQuery__CreateCastStmt *message, +void pg_query__update_stmt__free_unpacked + (PgQuery__UpdateStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_cast_stmt__descriptor); + assert(message->base.descriptor == &pg_query__update_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_op_class_stmt__init - (PgQuery__CreateOpClassStmt *message) +void pg_query__merge_stmt__init + (PgQuery__MergeStmt *message) { - static const PgQuery__CreateOpClassStmt init_value = PG_QUERY__CREATE_OP_CLASS_STMT__INIT; + static const PgQuery__MergeStmt init_value = PG_QUERY__MERGE_STMT__INIT; *message = init_value; } -size_t pg_query__create_op_class_stmt__get_packed_size - (const PgQuery__CreateOpClassStmt *message) +size_t pg_query__merge_stmt__get_packed_size + (const PgQuery__MergeStmt *message) { - assert(message->base.descriptor == &pg_query__create_op_class_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_op_class_stmt__pack - (const PgQuery__CreateOpClassStmt *message, +size_t pg_query__merge_stmt__pack + (const PgQuery__MergeStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_op_class_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_op_class_stmt__pack_to_buffer - (const PgQuery__CreateOpClassStmt *message, +size_t pg_query__merge_stmt__pack_to_buffer + (const PgQuery__MergeStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_op_class_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateOpClassStmt * - pg_query__create_op_class_stmt__unpack +PgQuery__MergeStmt * + pg_query__merge_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateOpClassStmt *) - protobuf_c_message_unpack (&pg_query__create_op_class_stmt__descriptor, + return (PgQuery__MergeStmt *) + protobuf_c_message_unpack (&pg_query__merge_stmt__descriptor, allocator, len, data); } -void pg_query__create_op_class_stmt__free_unpacked - (PgQuery__CreateOpClassStmt *message, +void pg_query__merge_stmt__free_unpacked + (PgQuery__MergeStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_op_class_stmt__descriptor); + assert(message->base.descriptor == &pg_query__merge_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_op_family_stmt__init - (PgQuery__CreateOpFamilyStmt *message) +void pg_query__select_stmt__init + (PgQuery__SelectStmt *message) { - static const PgQuery__CreateOpFamilyStmt init_value = PG_QUERY__CREATE_OP_FAMILY_STMT__INIT; + static const PgQuery__SelectStmt init_value = PG_QUERY__SELECT_STMT__INIT; *message = init_value; } -size_t pg_query__create_op_family_stmt__get_packed_size - (const PgQuery__CreateOpFamilyStmt *message) +size_t pg_query__select_stmt__get_packed_size + (const PgQuery__SelectStmt *message) { - assert(message->base.descriptor == &pg_query__create_op_family_stmt__descriptor); + assert(message->base.descriptor == &pg_query__select_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_op_family_stmt__pack - (const PgQuery__CreateOpFamilyStmt *message, +size_t pg_query__select_stmt__pack + (const PgQuery__SelectStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_op_family_stmt__descriptor); + assert(message->base.descriptor == &pg_query__select_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_op_family_stmt__pack_to_buffer - (const PgQuery__CreateOpFamilyStmt *message, +size_t pg_query__select_stmt__pack_to_buffer + (const PgQuery__SelectStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_op_family_stmt__descriptor); + assert(message->base.descriptor == &pg_query__select_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateOpFamilyStmt * - pg_query__create_op_family_stmt__unpack +PgQuery__SelectStmt * + pg_query__select_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateOpFamilyStmt *) - protobuf_c_message_unpack (&pg_query__create_op_family_stmt__descriptor, + return (PgQuery__SelectStmt *) + protobuf_c_message_unpack (&pg_query__select_stmt__descriptor, allocator, len, data); } -void pg_query__create_op_family_stmt__free_unpacked - (PgQuery__CreateOpFamilyStmt *message, +void pg_query__select_stmt__free_unpacked + (PgQuery__SelectStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_op_family_stmt__descriptor); + assert(message->base.descriptor == &pg_query__select_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_op_family_stmt__init - (PgQuery__AlterOpFamilyStmt *message) +void pg_query__set_operation_stmt__init + (PgQuery__SetOperationStmt *message) { - static const PgQuery__AlterOpFamilyStmt init_value = PG_QUERY__ALTER_OP_FAMILY_STMT__INIT; + static const PgQuery__SetOperationStmt init_value = PG_QUERY__SET_OPERATION_STMT__INIT; *message = init_value; } -size_t pg_query__alter_op_family_stmt__get_packed_size - (const PgQuery__AlterOpFamilyStmt *message) +size_t pg_query__set_operation_stmt__get_packed_size + (const PgQuery__SetOperationStmt *message) { - assert(message->base.descriptor == &pg_query__alter_op_family_stmt__descriptor); + assert(message->base.descriptor == &pg_query__set_operation_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_op_family_stmt__pack - (const PgQuery__AlterOpFamilyStmt *message, +size_t pg_query__set_operation_stmt__pack + (const PgQuery__SetOperationStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_op_family_stmt__descriptor); + assert(message->base.descriptor == &pg_query__set_operation_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_op_family_stmt__pack_to_buffer - (const PgQuery__AlterOpFamilyStmt *message, +size_t pg_query__set_operation_stmt__pack_to_buffer + (const PgQuery__SetOperationStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_op_family_stmt__descriptor); + assert(message->base.descriptor == &pg_query__set_operation_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterOpFamilyStmt * - pg_query__alter_op_family_stmt__unpack +PgQuery__SetOperationStmt * + pg_query__set_operation_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterOpFamilyStmt *) - protobuf_c_message_unpack (&pg_query__alter_op_family_stmt__descriptor, + return (PgQuery__SetOperationStmt *) + protobuf_c_message_unpack (&pg_query__set_operation_stmt__descriptor, allocator, len, data); } -void pg_query__alter_op_family_stmt__free_unpacked - (PgQuery__AlterOpFamilyStmt *message, +void pg_query__set_operation_stmt__free_unpacked + (PgQuery__SetOperationStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_op_family_stmt__descriptor); + assert(message->base.descriptor == &pg_query__set_operation_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__prepare_stmt__init - (PgQuery__PrepareStmt *message) +void pg_query__return_stmt__init + (PgQuery__ReturnStmt *message) { - static const PgQuery__PrepareStmt init_value = PG_QUERY__PREPARE_STMT__INIT; + static const PgQuery__ReturnStmt init_value = PG_QUERY__RETURN_STMT__INIT; *message = init_value; } -size_t pg_query__prepare_stmt__get_packed_size - (const PgQuery__PrepareStmt *message) +size_t pg_query__return_stmt__get_packed_size + (const PgQuery__ReturnStmt *message) { - assert(message->base.descriptor == &pg_query__prepare_stmt__descriptor); + assert(message->base.descriptor == &pg_query__return_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__prepare_stmt__pack - (const PgQuery__PrepareStmt *message, +size_t pg_query__return_stmt__pack + (const PgQuery__ReturnStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__prepare_stmt__descriptor); + assert(message->base.descriptor == &pg_query__return_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__prepare_stmt__pack_to_buffer - (const PgQuery__PrepareStmt *message, +size_t pg_query__return_stmt__pack_to_buffer + (const PgQuery__ReturnStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__prepare_stmt__descriptor); + assert(message->base.descriptor == &pg_query__return_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__PrepareStmt * - pg_query__prepare_stmt__unpack +PgQuery__ReturnStmt * + pg_query__return_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__PrepareStmt *) - protobuf_c_message_unpack (&pg_query__prepare_stmt__descriptor, + return (PgQuery__ReturnStmt *) + protobuf_c_message_unpack (&pg_query__return_stmt__descriptor, allocator, len, data); } -void pg_query__prepare_stmt__free_unpacked - (PgQuery__PrepareStmt *message, +void pg_query__return_stmt__free_unpacked + (PgQuery__ReturnStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__prepare_stmt__descriptor); + assert(message->base.descriptor == &pg_query__return_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__execute_stmt__init - (PgQuery__ExecuteStmt *message) +void pg_query__plassign_stmt__init + (PgQuery__PLAssignStmt *message) { - static const PgQuery__ExecuteStmt init_value = PG_QUERY__EXECUTE_STMT__INIT; + static const PgQuery__PLAssignStmt init_value = PG_QUERY__PLASSIGN_STMT__INIT; *message = init_value; } -size_t pg_query__execute_stmt__get_packed_size - (const PgQuery__ExecuteStmt *message) +size_t pg_query__plassign_stmt__get_packed_size + (const PgQuery__PLAssignStmt *message) { - assert(message->base.descriptor == &pg_query__execute_stmt__descriptor); + assert(message->base.descriptor == &pg_query__plassign_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__execute_stmt__pack - (const PgQuery__ExecuteStmt *message, +size_t pg_query__plassign_stmt__pack + (const PgQuery__PLAssignStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__execute_stmt__descriptor); + assert(message->base.descriptor == &pg_query__plassign_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__execute_stmt__pack_to_buffer - (const PgQuery__ExecuteStmt *message, +size_t pg_query__plassign_stmt__pack_to_buffer + (const PgQuery__PLAssignStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__execute_stmt__descriptor); + assert(message->base.descriptor == &pg_query__plassign_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ExecuteStmt * - pg_query__execute_stmt__unpack +PgQuery__PLAssignStmt * + pg_query__plassign_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ExecuteStmt *) - protobuf_c_message_unpack (&pg_query__execute_stmt__descriptor, + return (PgQuery__PLAssignStmt *) + protobuf_c_message_unpack (&pg_query__plassign_stmt__descriptor, allocator, len, data); } -void pg_query__execute_stmt__free_unpacked - (PgQuery__ExecuteStmt *message, +void pg_query__plassign_stmt__free_unpacked + (PgQuery__PLAssignStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__execute_stmt__descriptor); + assert(message->base.descriptor == &pg_query__plassign_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__deallocate_stmt__init - (PgQuery__DeallocateStmt *message) +void pg_query__create_schema_stmt__init + (PgQuery__CreateSchemaStmt *message) { - static const PgQuery__DeallocateStmt init_value = PG_QUERY__DEALLOCATE_STMT__INIT; + static const PgQuery__CreateSchemaStmt init_value = PG_QUERY__CREATE_SCHEMA_STMT__INIT; *message = init_value; } -size_t pg_query__deallocate_stmt__get_packed_size - (const PgQuery__DeallocateStmt *message) +size_t pg_query__create_schema_stmt__get_packed_size + (const PgQuery__CreateSchemaStmt *message) { - assert(message->base.descriptor == &pg_query__deallocate_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_schema_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__deallocate_stmt__pack - (const PgQuery__DeallocateStmt *message, +size_t pg_query__create_schema_stmt__pack + (const PgQuery__CreateSchemaStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__deallocate_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_schema_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__deallocate_stmt__pack_to_buffer - (const PgQuery__DeallocateStmt *message, +size_t pg_query__create_schema_stmt__pack_to_buffer + (const PgQuery__CreateSchemaStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__deallocate_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_schema_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DeallocateStmt * - pg_query__deallocate_stmt__unpack +PgQuery__CreateSchemaStmt * + pg_query__create_schema_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DeallocateStmt *) - protobuf_c_message_unpack (&pg_query__deallocate_stmt__descriptor, + return (PgQuery__CreateSchemaStmt *) + protobuf_c_message_unpack (&pg_query__create_schema_stmt__descriptor, allocator, len, data); } -void pg_query__deallocate_stmt__free_unpacked - (PgQuery__DeallocateStmt *message, +void pg_query__create_schema_stmt__free_unpacked + (PgQuery__CreateSchemaStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__deallocate_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_schema_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__declare_cursor_stmt__init - (PgQuery__DeclareCursorStmt *message) +void pg_query__alter_table_stmt__init + (PgQuery__AlterTableStmt *message) { - static const PgQuery__DeclareCursorStmt init_value = PG_QUERY__DECLARE_CURSOR_STMT__INIT; + static const PgQuery__AlterTableStmt init_value = PG_QUERY__ALTER_TABLE_STMT__INIT; *message = init_value; } -size_t pg_query__declare_cursor_stmt__get_packed_size - (const PgQuery__DeclareCursorStmt *message) +size_t pg_query__alter_table_stmt__get_packed_size + (const PgQuery__AlterTableStmt *message) { - assert(message->base.descriptor == &pg_query__declare_cursor_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__declare_cursor_stmt__pack - (const PgQuery__DeclareCursorStmt *message, +size_t pg_query__alter_table_stmt__pack + (const PgQuery__AlterTableStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__declare_cursor_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__declare_cursor_stmt__pack_to_buffer - (const PgQuery__DeclareCursorStmt *message, +size_t pg_query__alter_table_stmt__pack_to_buffer + (const PgQuery__AlterTableStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__declare_cursor_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DeclareCursorStmt * - pg_query__declare_cursor_stmt__unpack +PgQuery__AlterTableStmt * + pg_query__alter_table_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DeclareCursorStmt *) - protobuf_c_message_unpack (&pg_query__declare_cursor_stmt__descriptor, + return (PgQuery__AlterTableStmt *) + protobuf_c_message_unpack (&pg_query__alter_table_stmt__descriptor, allocator, len, data); } -void pg_query__declare_cursor_stmt__free_unpacked - (PgQuery__DeclareCursorStmt *message, +void pg_query__alter_table_stmt__free_unpacked + (PgQuery__AlterTableStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__declare_cursor_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_table_space_stmt__init - (PgQuery__CreateTableSpaceStmt *message) +void pg_query__replica_identity_stmt__init + (PgQuery__ReplicaIdentityStmt *message) { - static const PgQuery__CreateTableSpaceStmt init_value = PG_QUERY__CREATE_TABLE_SPACE_STMT__INIT; + static const PgQuery__ReplicaIdentityStmt init_value = PG_QUERY__REPLICA_IDENTITY_STMT__INIT; *message = init_value; } -size_t pg_query__create_table_space_stmt__get_packed_size - (const PgQuery__CreateTableSpaceStmt *message) +size_t pg_query__replica_identity_stmt__get_packed_size + (const PgQuery__ReplicaIdentityStmt *message) { - assert(message->base.descriptor == &pg_query__create_table_space_stmt__descriptor); + assert(message->base.descriptor == &pg_query__replica_identity_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_table_space_stmt__pack - (const PgQuery__CreateTableSpaceStmt *message, +size_t pg_query__replica_identity_stmt__pack + (const PgQuery__ReplicaIdentityStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_table_space_stmt__descriptor); + assert(message->base.descriptor == &pg_query__replica_identity_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_table_space_stmt__pack_to_buffer - (const PgQuery__CreateTableSpaceStmt *message, +size_t pg_query__replica_identity_stmt__pack_to_buffer + (const PgQuery__ReplicaIdentityStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_table_space_stmt__descriptor); + assert(message->base.descriptor == &pg_query__replica_identity_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateTableSpaceStmt * - pg_query__create_table_space_stmt__unpack +PgQuery__ReplicaIdentityStmt * + pg_query__replica_identity_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateTableSpaceStmt *) - protobuf_c_message_unpack (&pg_query__create_table_space_stmt__descriptor, + return (PgQuery__ReplicaIdentityStmt *) + protobuf_c_message_unpack (&pg_query__replica_identity_stmt__descriptor, allocator, len, data); } -void pg_query__create_table_space_stmt__free_unpacked - (PgQuery__CreateTableSpaceStmt *message, +void pg_query__replica_identity_stmt__free_unpacked + (PgQuery__ReplicaIdentityStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_table_space_stmt__descriptor); + assert(message->base.descriptor == &pg_query__replica_identity_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__drop_table_space_stmt__init - (PgQuery__DropTableSpaceStmt *message) +void pg_query__alter_table_cmd__init + (PgQuery__AlterTableCmd *message) { - static const PgQuery__DropTableSpaceStmt init_value = PG_QUERY__DROP_TABLE_SPACE_STMT__INIT; + static const PgQuery__AlterTableCmd init_value = PG_QUERY__ALTER_TABLE_CMD__INIT; *message = init_value; } -size_t pg_query__drop_table_space_stmt__get_packed_size - (const PgQuery__DropTableSpaceStmt *message) +size_t pg_query__alter_table_cmd__get_packed_size + (const PgQuery__AlterTableCmd *message) { - assert(message->base.descriptor == &pg_query__drop_table_space_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_cmd__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__drop_table_space_stmt__pack - (const PgQuery__DropTableSpaceStmt *message, +size_t pg_query__alter_table_cmd__pack + (const PgQuery__AlterTableCmd *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__drop_table_space_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_cmd__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__drop_table_space_stmt__pack_to_buffer - (const PgQuery__DropTableSpaceStmt *message, +size_t pg_query__alter_table_cmd__pack_to_buffer + (const PgQuery__AlterTableCmd *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__drop_table_space_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_cmd__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DropTableSpaceStmt * - pg_query__drop_table_space_stmt__unpack +PgQuery__AlterTableCmd * + pg_query__alter_table_cmd__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DropTableSpaceStmt *) - protobuf_c_message_unpack (&pg_query__drop_table_space_stmt__descriptor, + return (PgQuery__AlterTableCmd *) + protobuf_c_message_unpack (&pg_query__alter_table_cmd__descriptor, allocator, len, data); } -void pg_query__drop_table_space_stmt__free_unpacked - (PgQuery__DropTableSpaceStmt *message, +void pg_query__alter_table_cmd__free_unpacked + (PgQuery__AlterTableCmd *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__drop_table_space_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_cmd__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_object_depends_stmt__init - (PgQuery__AlterObjectDependsStmt *message) +void pg_query__alter_collation_stmt__init + (PgQuery__AlterCollationStmt *message) { - static const PgQuery__AlterObjectDependsStmt init_value = PG_QUERY__ALTER_OBJECT_DEPENDS_STMT__INIT; + static const PgQuery__AlterCollationStmt init_value = PG_QUERY__ALTER_COLLATION_STMT__INIT; *message = init_value; } -size_t pg_query__alter_object_depends_stmt__get_packed_size - (const PgQuery__AlterObjectDependsStmt *message) +size_t pg_query__alter_collation_stmt__get_packed_size + (const PgQuery__AlterCollationStmt *message) { - assert(message->base.descriptor == &pg_query__alter_object_depends_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_collation_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_object_depends_stmt__pack - (const PgQuery__AlterObjectDependsStmt *message, +size_t pg_query__alter_collation_stmt__pack + (const PgQuery__AlterCollationStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_object_depends_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_collation_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_object_depends_stmt__pack_to_buffer - (const PgQuery__AlterObjectDependsStmt *message, +size_t pg_query__alter_collation_stmt__pack_to_buffer + (const PgQuery__AlterCollationStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_object_depends_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_collation_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterObjectDependsStmt * - pg_query__alter_object_depends_stmt__unpack +PgQuery__AlterCollationStmt * + pg_query__alter_collation_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterObjectDependsStmt *) - protobuf_c_message_unpack (&pg_query__alter_object_depends_stmt__descriptor, - allocator, len, data); + return (PgQuery__AlterCollationStmt *) + protobuf_c_message_unpack (&pg_query__alter_collation_stmt__descriptor, + allocator, len, data); } -void pg_query__alter_object_depends_stmt__free_unpacked - (PgQuery__AlterObjectDependsStmt *message, +void pg_query__alter_collation_stmt__free_unpacked + (PgQuery__AlterCollationStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_object_depends_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_collation_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_object_schema_stmt__init - (PgQuery__AlterObjectSchemaStmt *message) +void pg_query__alter_domain_stmt__init + (PgQuery__AlterDomainStmt *message) { - static const PgQuery__AlterObjectSchemaStmt init_value = PG_QUERY__ALTER_OBJECT_SCHEMA_STMT__INIT; + static const PgQuery__AlterDomainStmt init_value = PG_QUERY__ALTER_DOMAIN_STMT__INIT; *message = init_value; } -size_t pg_query__alter_object_schema_stmt__get_packed_size - (const PgQuery__AlterObjectSchemaStmt *message) +size_t pg_query__alter_domain_stmt__get_packed_size + (const PgQuery__AlterDomainStmt *message) { - assert(message->base.descriptor == &pg_query__alter_object_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_domain_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_object_schema_stmt__pack - (const PgQuery__AlterObjectSchemaStmt *message, +size_t pg_query__alter_domain_stmt__pack + (const PgQuery__AlterDomainStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_object_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_domain_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_object_schema_stmt__pack_to_buffer - (const PgQuery__AlterObjectSchemaStmt *message, +size_t pg_query__alter_domain_stmt__pack_to_buffer + (const PgQuery__AlterDomainStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_object_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_domain_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterObjectSchemaStmt * - pg_query__alter_object_schema_stmt__unpack +PgQuery__AlterDomainStmt * + pg_query__alter_domain_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterObjectSchemaStmt *) - protobuf_c_message_unpack (&pg_query__alter_object_schema_stmt__descriptor, + return (PgQuery__AlterDomainStmt *) + protobuf_c_message_unpack (&pg_query__alter_domain_stmt__descriptor, allocator, len, data); } -void pg_query__alter_object_schema_stmt__free_unpacked - (PgQuery__AlterObjectSchemaStmt *message, +void pg_query__alter_domain_stmt__free_unpacked + (PgQuery__AlterDomainStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_object_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_domain_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_owner_stmt__init - (PgQuery__AlterOwnerStmt *message) +void pg_query__grant_stmt__init + (PgQuery__GrantStmt *message) { - static const PgQuery__AlterOwnerStmt init_value = PG_QUERY__ALTER_OWNER_STMT__INIT; + static const PgQuery__GrantStmt init_value = PG_QUERY__GRANT_STMT__INIT; *message = init_value; } -size_t pg_query__alter_owner_stmt__get_packed_size - (const PgQuery__AlterOwnerStmt *message) +size_t pg_query__grant_stmt__get_packed_size + (const PgQuery__GrantStmt *message) { - assert(message->base.descriptor == &pg_query__alter_owner_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grant_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_owner_stmt__pack - (const PgQuery__AlterOwnerStmt *message, +size_t pg_query__grant_stmt__pack + (const PgQuery__GrantStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_owner_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grant_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_owner_stmt__pack_to_buffer - (const PgQuery__AlterOwnerStmt *message, +size_t pg_query__grant_stmt__pack_to_buffer + (const PgQuery__GrantStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_owner_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grant_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterOwnerStmt * - pg_query__alter_owner_stmt__unpack +PgQuery__GrantStmt * + pg_query__grant_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterOwnerStmt *) - protobuf_c_message_unpack (&pg_query__alter_owner_stmt__descriptor, + return (PgQuery__GrantStmt *) + protobuf_c_message_unpack (&pg_query__grant_stmt__descriptor, allocator, len, data); } -void pg_query__alter_owner_stmt__free_unpacked - (PgQuery__AlterOwnerStmt *message, +void pg_query__grant_stmt__free_unpacked + (PgQuery__GrantStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_owner_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grant_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_operator_stmt__init - (PgQuery__AlterOperatorStmt *message) +void pg_query__object_with_args__init + (PgQuery__ObjectWithArgs *message) { - static const PgQuery__AlterOperatorStmt init_value = PG_QUERY__ALTER_OPERATOR_STMT__INIT; + static const PgQuery__ObjectWithArgs init_value = PG_QUERY__OBJECT_WITH_ARGS__INIT; *message = init_value; } -size_t pg_query__alter_operator_stmt__get_packed_size - (const PgQuery__AlterOperatorStmt *message) +size_t pg_query__object_with_args__get_packed_size + (const PgQuery__ObjectWithArgs *message) { - assert(message->base.descriptor == &pg_query__alter_operator_stmt__descriptor); + assert(message->base.descriptor == &pg_query__object_with_args__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_operator_stmt__pack - (const PgQuery__AlterOperatorStmt *message, +size_t pg_query__object_with_args__pack + (const PgQuery__ObjectWithArgs *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_operator_stmt__descriptor); + assert(message->base.descriptor == &pg_query__object_with_args__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_operator_stmt__pack_to_buffer - (const PgQuery__AlterOperatorStmt *message, +size_t pg_query__object_with_args__pack_to_buffer + (const PgQuery__ObjectWithArgs *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_operator_stmt__descriptor); + assert(message->base.descriptor == &pg_query__object_with_args__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterOperatorStmt * - pg_query__alter_operator_stmt__unpack +PgQuery__ObjectWithArgs * + pg_query__object_with_args__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterOperatorStmt *) - protobuf_c_message_unpack (&pg_query__alter_operator_stmt__descriptor, + return (PgQuery__ObjectWithArgs *) + protobuf_c_message_unpack (&pg_query__object_with_args__descriptor, allocator, len, data); } -void pg_query__alter_operator_stmt__free_unpacked - (PgQuery__AlterOperatorStmt *message, +void pg_query__object_with_args__free_unpacked + (PgQuery__ObjectWithArgs *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_operator_stmt__descriptor); + assert(message->base.descriptor == &pg_query__object_with_args__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_type_stmt__init - (PgQuery__AlterTypeStmt *message) +void pg_query__access_priv__init + (PgQuery__AccessPriv *message) { - static const PgQuery__AlterTypeStmt init_value = PG_QUERY__ALTER_TYPE_STMT__INIT; + static const PgQuery__AccessPriv init_value = PG_QUERY__ACCESS_PRIV__INIT; *message = init_value; } -size_t pg_query__alter_type_stmt__get_packed_size - (const PgQuery__AlterTypeStmt *message) +size_t pg_query__access_priv__get_packed_size + (const PgQuery__AccessPriv *message) { - assert(message->base.descriptor == &pg_query__alter_type_stmt__descriptor); + assert(message->base.descriptor == &pg_query__access_priv__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_type_stmt__pack - (const PgQuery__AlterTypeStmt *message, +size_t pg_query__access_priv__pack + (const PgQuery__AccessPriv *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_type_stmt__descriptor); + assert(message->base.descriptor == &pg_query__access_priv__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_type_stmt__pack_to_buffer - (const PgQuery__AlterTypeStmt *message, +size_t pg_query__access_priv__pack_to_buffer + (const PgQuery__AccessPriv *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_type_stmt__descriptor); + assert(message->base.descriptor == &pg_query__access_priv__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterTypeStmt * - pg_query__alter_type_stmt__unpack +PgQuery__AccessPriv * + pg_query__access_priv__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterTypeStmt *) - protobuf_c_message_unpack (&pg_query__alter_type_stmt__descriptor, + return (PgQuery__AccessPriv *) + protobuf_c_message_unpack (&pg_query__access_priv__descriptor, allocator, len, data); } -void pg_query__alter_type_stmt__free_unpacked - (PgQuery__AlterTypeStmt *message, +void pg_query__access_priv__free_unpacked + (PgQuery__AccessPriv *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_type_stmt__descriptor); + assert(message->base.descriptor == &pg_query__access_priv__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__drop_owned_stmt__init - (PgQuery__DropOwnedStmt *message) +void pg_query__grant_role_stmt__init + (PgQuery__GrantRoleStmt *message) { - static const PgQuery__DropOwnedStmt init_value = PG_QUERY__DROP_OWNED_STMT__INIT; + static const PgQuery__GrantRoleStmt init_value = PG_QUERY__GRANT_ROLE_STMT__INIT; *message = init_value; } -size_t pg_query__drop_owned_stmt__get_packed_size - (const PgQuery__DropOwnedStmt *message) +size_t pg_query__grant_role_stmt__get_packed_size + (const PgQuery__GrantRoleStmt *message) { - assert(message->base.descriptor == &pg_query__drop_owned_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grant_role_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__drop_owned_stmt__pack - (const PgQuery__DropOwnedStmt *message, +size_t pg_query__grant_role_stmt__pack + (const PgQuery__GrantRoleStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__drop_owned_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grant_role_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__drop_owned_stmt__pack_to_buffer - (const PgQuery__DropOwnedStmt *message, +size_t pg_query__grant_role_stmt__pack_to_buffer + (const PgQuery__GrantRoleStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__drop_owned_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grant_role_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DropOwnedStmt * - pg_query__drop_owned_stmt__unpack +PgQuery__GrantRoleStmt * + pg_query__grant_role_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DropOwnedStmt *) - protobuf_c_message_unpack (&pg_query__drop_owned_stmt__descriptor, + return (PgQuery__GrantRoleStmt *) + protobuf_c_message_unpack (&pg_query__grant_role_stmt__descriptor, allocator, len, data); } -void pg_query__drop_owned_stmt__free_unpacked - (PgQuery__DropOwnedStmt *message, +void pg_query__grant_role_stmt__free_unpacked + (PgQuery__GrantRoleStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__drop_owned_stmt__descriptor); + assert(message->base.descriptor == &pg_query__grant_role_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__reassign_owned_stmt__init - (PgQuery__ReassignOwnedStmt *message) +void pg_query__alter_default_privileges_stmt__init + (PgQuery__AlterDefaultPrivilegesStmt *message) { - static const PgQuery__ReassignOwnedStmt init_value = PG_QUERY__REASSIGN_OWNED_STMT__INIT; + static const PgQuery__AlterDefaultPrivilegesStmt init_value = PG_QUERY__ALTER_DEFAULT_PRIVILEGES_STMT__INIT; *message = init_value; } -size_t pg_query__reassign_owned_stmt__get_packed_size - (const PgQuery__ReassignOwnedStmt *message) +size_t pg_query__alter_default_privileges_stmt__get_packed_size + (const PgQuery__AlterDefaultPrivilegesStmt *message) { - assert(message->base.descriptor == &pg_query__reassign_owned_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_default_privileges_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__reassign_owned_stmt__pack - (const PgQuery__ReassignOwnedStmt *message, +size_t pg_query__alter_default_privileges_stmt__pack + (const PgQuery__AlterDefaultPrivilegesStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__reassign_owned_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_default_privileges_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__reassign_owned_stmt__pack_to_buffer - (const PgQuery__ReassignOwnedStmt *message, +size_t pg_query__alter_default_privileges_stmt__pack_to_buffer + (const PgQuery__AlterDefaultPrivilegesStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__reassign_owned_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_default_privileges_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ReassignOwnedStmt * - pg_query__reassign_owned_stmt__unpack +PgQuery__AlterDefaultPrivilegesStmt * + pg_query__alter_default_privileges_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ReassignOwnedStmt *) - protobuf_c_message_unpack (&pg_query__reassign_owned_stmt__descriptor, + return (PgQuery__AlterDefaultPrivilegesStmt *) + protobuf_c_message_unpack (&pg_query__alter_default_privileges_stmt__descriptor, allocator, len, data); } -void pg_query__reassign_owned_stmt__free_unpacked - (PgQuery__ReassignOwnedStmt *message, +void pg_query__alter_default_privileges_stmt__free_unpacked + (PgQuery__AlterDefaultPrivilegesStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__reassign_owned_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_default_privileges_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__composite_type_stmt__init - (PgQuery__CompositeTypeStmt *message) +void pg_query__copy_stmt__init + (PgQuery__CopyStmt *message) { - static const PgQuery__CompositeTypeStmt init_value = PG_QUERY__COMPOSITE_TYPE_STMT__INIT; + static const PgQuery__CopyStmt init_value = PG_QUERY__COPY_STMT__INIT; *message = init_value; } -size_t pg_query__composite_type_stmt__get_packed_size - (const PgQuery__CompositeTypeStmt *message) +size_t pg_query__copy_stmt__get_packed_size + (const PgQuery__CopyStmt *message) { - assert(message->base.descriptor == &pg_query__composite_type_stmt__descriptor); + assert(message->base.descriptor == &pg_query__copy_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__composite_type_stmt__pack - (const PgQuery__CompositeTypeStmt *message, +size_t pg_query__copy_stmt__pack + (const PgQuery__CopyStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__composite_type_stmt__descriptor); + assert(message->base.descriptor == &pg_query__copy_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__composite_type_stmt__pack_to_buffer - (const PgQuery__CompositeTypeStmt *message, +size_t pg_query__copy_stmt__pack_to_buffer + (const PgQuery__CopyStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__composite_type_stmt__descriptor); + assert(message->base.descriptor == &pg_query__copy_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CompositeTypeStmt * - pg_query__composite_type_stmt__unpack +PgQuery__CopyStmt * + pg_query__copy_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CompositeTypeStmt *) - protobuf_c_message_unpack (&pg_query__composite_type_stmt__descriptor, + return (PgQuery__CopyStmt *) + protobuf_c_message_unpack (&pg_query__copy_stmt__descriptor, allocator, len, data); } -void pg_query__composite_type_stmt__free_unpacked - (PgQuery__CompositeTypeStmt *message, +void pg_query__copy_stmt__free_unpacked + (PgQuery__CopyStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__composite_type_stmt__descriptor); + assert(message->base.descriptor == &pg_query__copy_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_enum_stmt__init - (PgQuery__CreateEnumStmt *message) +void pg_query__variable_set_stmt__init + (PgQuery__VariableSetStmt *message) { - static const PgQuery__CreateEnumStmt init_value = PG_QUERY__CREATE_ENUM_STMT__INIT; + static const PgQuery__VariableSetStmt init_value = PG_QUERY__VARIABLE_SET_STMT__INIT; *message = init_value; } -size_t pg_query__create_enum_stmt__get_packed_size - (const PgQuery__CreateEnumStmt *message) +size_t pg_query__variable_set_stmt__get_packed_size + (const PgQuery__VariableSetStmt *message) { - assert(message->base.descriptor == &pg_query__create_enum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__variable_set_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_enum_stmt__pack - (const PgQuery__CreateEnumStmt *message, +size_t pg_query__variable_set_stmt__pack + (const PgQuery__VariableSetStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_enum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__variable_set_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_enum_stmt__pack_to_buffer - (const PgQuery__CreateEnumStmt *message, +size_t pg_query__variable_set_stmt__pack_to_buffer + (const PgQuery__VariableSetStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_enum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__variable_set_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateEnumStmt * - pg_query__create_enum_stmt__unpack +PgQuery__VariableSetStmt * + pg_query__variable_set_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateEnumStmt *) - protobuf_c_message_unpack (&pg_query__create_enum_stmt__descriptor, + return (PgQuery__VariableSetStmt *) + protobuf_c_message_unpack (&pg_query__variable_set_stmt__descriptor, allocator, len, data); } -void pg_query__create_enum_stmt__free_unpacked - (PgQuery__CreateEnumStmt *message, +void pg_query__variable_set_stmt__free_unpacked + (PgQuery__VariableSetStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_enum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__variable_set_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_range_stmt__init - (PgQuery__CreateRangeStmt *message) +void pg_query__variable_show_stmt__init + (PgQuery__VariableShowStmt *message) { - static const PgQuery__CreateRangeStmt init_value = PG_QUERY__CREATE_RANGE_STMT__INIT; + static const PgQuery__VariableShowStmt init_value = PG_QUERY__VARIABLE_SHOW_STMT__INIT; *message = init_value; } -size_t pg_query__create_range_stmt__get_packed_size - (const PgQuery__CreateRangeStmt *message) +size_t pg_query__variable_show_stmt__get_packed_size + (const PgQuery__VariableShowStmt *message) { - assert(message->base.descriptor == &pg_query__create_range_stmt__descriptor); + assert(message->base.descriptor == &pg_query__variable_show_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_range_stmt__pack - (const PgQuery__CreateRangeStmt *message, +size_t pg_query__variable_show_stmt__pack + (const PgQuery__VariableShowStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_range_stmt__descriptor); + assert(message->base.descriptor == &pg_query__variable_show_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_range_stmt__pack_to_buffer - (const PgQuery__CreateRangeStmt *message, +size_t pg_query__variable_show_stmt__pack_to_buffer + (const PgQuery__VariableShowStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_range_stmt__descriptor); + assert(message->base.descriptor == &pg_query__variable_show_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateRangeStmt * - pg_query__create_range_stmt__unpack +PgQuery__VariableShowStmt * + pg_query__variable_show_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateRangeStmt *) - protobuf_c_message_unpack (&pg_query__create_range_stmt__descriptor, + return (PgQuery__VariableShowStmt *) + protobuf_c_message_unpack (&pg_query__variable_show_stmt__descriptor, allocator, len, data); } -void pg_query__create_range_stmt__free_unpacked - (PgQuery__CreateRangeStmt *message, +void pg_query__variable_show_stmt__free_unpacked + (PgQuery__VariableShowStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_range_stmt__descriptor); + assert(message->base.descriptor == &pg_query__variable_show_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_enum_stmt__init - (PgQuery__AlterEnumStmt *message) +void pg_query__create_stmt__init + (PgQuery__CreateStmt *message) { - static const PgQuery__AlterEnumStmt init_value = PG_QUERY__ALTER_ENUM_STMT__INIT; + static const PgQuery__CreateStmt init_value = PG_QUERY__CREATE_STMT__INIT; *message = init_value; } -size_t pg_query__alter_enum_stmt__get_packed_size - (const PgQuery__AlterEnumStmt *message) +size_t pg_query__create_stmt__get_packed_size + (const PgQuery__CreateStmt *message) { - assert(message->base.descriptor == &pg_query__alter_enum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_enum_stmt__pack - (const PgQuery__AlterEnumStmt *message, +size_t pg_query__create_stmt__pack + (const PgQuery__CreateStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_enum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_enum_stmt__pack_to_buffer - (const PgQuery__AlterEnumStmt *message, +size_t pg_query__create_stmt__pack_to_buffer + (const PgQuery__CreateStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_enum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterEnumStmt * - pg_query__alter_enum_stmt__unpack +PgQuery__CreateStmt * + pg_query__create_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterEnumStmt *) - protobuf_c_message_unpack (&pg_query__alter_enum_stmt__descriptor, + return (PgQuery__CreateStmt *) + protobuf_c_message_unpack (&pg_query__create_stmt__descriptor, allocator, len, data); } -void pg_query__alter_enum_stmt__free_unpacked - (PgQuery__AlterEnumStmt *message, +void pg_query__create_stmt__free_unpacked + (PgQuery__CreateStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_enum_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_tsdictionary_stmt__init - (PgQuery__AlterTSDictionaryStmt *message) +void pg_query__constraint__init + (PgQuery__Constraint *message) { - static const PgQuery__AlterTSDictionaryStmt init_value = PG_QUERY__ALTER_TSDICTIONARY_STMT__INIT; + static const PgQuery__Constraint init_value = PG_QUERY__CONSTRAINT__INIT; *message = init_value; } -size_t pg_query__alter_tsdictionary_stmt__get_packed_size - (const PgQuery__AlterTSDictionaryStmt *message) +size_t pg_query__constraint__get_packed_size + (const PgQuery__Constraint *message) { - assert(message->base.descriptor == &pg_query__alter_tsdictionary_stmt__descriptor); + assert(message->base.descriptor == &pg_query__constraint__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_tsdictionary_stmt__pack - (const PgQuery__AlterTSDictionaryStmt *message, +size_t pg_query__constraint__pack + (const PgQuery__Constraint *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_tsdictionary_stmt__descriptor); + assert(message->base.descriptor == &pg_query__constraint__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_tsdictionary_stmt__pack_to_buffer - (const PgQuery__AlterTSDictionaryStmt *message, +size_t pg_query__constraint__pack_to_buffer + (const PgQuery__Constraint *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_tsdictionary_stmt__descriptor); + assert(message->base.descriptor == &pg_query__constraint__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterTSDictionaryStmt * - pg_query__alter_tsdictionary_stmt__unpack +PgQuery__Constraint * + pg_query__constraint__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterTSDictionaryStmt *) - protobuf_c_message_unpack (&pg_query__alter_tsdictionary_stmt__descriptor, + return (PgQuery__Constraint *) + protobuf_c_message_unpack (&pg_query__constraint__descriptor, allocator, len, data); } -void pg_query__alter_tsdictionary_stmt__free_unpacked - (PgQuery__AlterTSDictionaryStmt *message, +void pg_query__constraint__free_unpacked + (PgQuery__Constraint *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_tsdictionary_stmt__descriptor); + assert(message->base.descriptor == &pg_query__constraint__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_tsconfiguration_stmt__init - (PgQuery__AlterTSConfigurationStmt *message) +void pg_query__create_table_space_stmt__init + (PgQuery__CreateTableSpaceStmt *message) { - static const PgQuery__AlterTSConfigurationStmt init_value = PG_QUERY__ALTER_TSCONFIGURATION_STMT__INIT; + static const PgQuery__CreateTableSpaceStmt init_value = PG_QUERY__CREATE_TABLE_SPACE_STMT__INIT; *message = init_value; } -size_t pg_query__alter_tsconfiguration_stmt__get_packed_size - (const PgQuery__AlterTSConfigurationStmt *message) +size_t pg_query__create_table_space_stmt__get_packed_size + (const PgQuery__CreateTableSpaceStmt *message) { - assert(message->base.descriptor == &pg_query__alter_tsconfiguration_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_table_space_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_tsconfiguration_stmt__pack - (const PgQuery__AlterTSConfigurationStmt *message, +size_t pg_query__create_table_space_stmt__pack + (const PgQuery__CreateTableSpaceStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_tsconfiguration_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_table_space_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_tsconfiguration_stmt__pack_to_buffer - (const PgQuery__AlterTSConfigurationStmt *message, +size_t pg_query__create_table_space_stmt__pack_to_buffer + (const PgQuery__CreateTableSpaceStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_tsconfiguration_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_table_space_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterTSConfigurationStmt * - pg_query__alter_tsconfiguration_stmt__unpack +PgQuery__CreateTableSpaceStmt * + pg_query__create_table_space_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterTSConfigurationStmt *) - protobuf_c_message_unpack (&pg_query__alter_tsconfiguration_stmt__descriptor, + return (PgQuery__CreateTableSpaceStmt *) + protobuf_c_message_unpack (&pg_query__create_table_space_stmt__descriptor, allocator, len, data); } -void pg_query__alter_tsconfiguration_stmt__free_unpacked - (PgQuery__AlterTSConfigurationStmt *message, +void pg_query__create_table_space_stmt__free_unpacked + (PgQuery__CreateTableSpaceStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_tsconfiguration_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_table_space_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_fdw_stmt__init - (PgQuery__CreateFdwStmt *message) +void pg_query__drop_table_space_stmt__init + (PgQuery__DropTableSpaceStmt *message) { - static const PgQuery__CreateFdwStmt init_value = PG_QUERY__CREATE_FDW_STMT__INIT; + static const PgQuery__DropTableSpaceStmt init_value = PG_QUERY__DROP_TABLE_SPACE_STMT__INIT; *message = init_value; } -size_t pg_query__create_fdw_stmt__get_packed_size - (const PgQuery__CreateFdwStmt *message) +size_t pg_query__drop_table_space_stmt__get_packed_size + (const PgQuery__DropTableSpaceStmt *message) { - assert(message->base.descriptor == &pg_query__create_fdw_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_table_space_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_fdw_stmt__pack - (const PgQuery__CreateFdwStmt *message, +size_t pg_query__drop_table_space_stmt__pack + (const PgQuery__DropTableSpaceStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_fdw_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_table_space_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_fdw_stmt__pack_to_buffer - (const PgQuery__CreateFdwStmt *message, +size_t pg_query__drop_table_space_stmt__pack_to_buffer + (const PgQuery__DropTableSpaceStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_fdw_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_table_space_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateFdwStmt * - pg_query__create_fdw_stmt__unpack +PgQuery__DropTableSpaceStmt * + pg_query__drop_table_space_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateFdwStmt *) - protobuf_c_message_unpack (&pg_query__create_fdw_stmt__descriptor, + return (PgQuery__DropTableSpaceStmt *) + protobuf_c_message_unpack (&pg_query__drop_table_space_stmt__descriptor, allocator, len, data); } -void pg_query__create_fdw_stmt__free_unpacked - (PgQuery__CreateFdwStmt *message, +void pg_query__drop_table_space_stmt__free_unpacked + (PgQuery__DropTableSpaceStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_fdw_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_table_space_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_fdw_stmt__init - (PgQuery__AlterFdwStmt *message) +void pg_query__alter_table_space_options_stmt__init + (PgQuery__AlterTableSpaceOptionsStmt *message) { - static const PgQuery__AlterFdwStmt init_value = PG_QUERY__ALTER_FDW_STMT__INIT; + static const PgQuery__AlterTableSpaceOptionsStmt init_value = PG_QUERY__ALTER_TABLE_SPACE_OPTIONS_STMT__INIT; *message = init_value; } -size_t pg_query__alter_fdw_stmt__get_packed_size - (const PgQuery__AlterFdwStmt *message) -{ - assert(message->base.descriptor == &pg_query__alter_fdw_stmt__descriptor); +size_t pg_query__alter_table_space_options_stmt__get_packed_size + (const PgQuery__AlterTableSpaceOptionsStmt *message) +{ + assert(message->base.descriptor == &pg_query__alter_table_space_options_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_fdw_stmt__pack - (const PgQuery__AlterFdwStmt *message, +size_t pg_query__alter_table_space_options_stmt__pack + (const PgQuery__AlterTableSpaceOptionsStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_fdw_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_space_options_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_fdw_stmt__pack_to_buffer - (const PgQuery__AlterFdwStmt *message, +size_t pg_query__alter_table_space_options_stmt__pack_to_buffer + (const PgQuery__AlterTableSpaceOptionsStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_fdw_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_space_options_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterFdwStmt * - pg_query__alter_fdw_stmt__unpack +PgQuery__AlterTableSpaceOptionsStmt * + pg_query__alter_table_space_options_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterFdwStmt *) - protobuf_c_message_unpack (&pg_query__alter_fdw_stmt__descriptor, + return (PgQuery__AlterTableSpaceOptionsStmt *) + protobuf_c_message_unpack (&pg_query__alter_table_space_options_stmt__descriptor, allocator, len, data); } -void pg_query__alter_fdw_stmt__free_unpacked - (PgQuery__AlterFdwStmt *message, +void pg_query__alter_table_space_options_stmt__free_unpacked + (PgQuery__AlterTableSpaceOptionsStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_fdw_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_space_options_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_foreign_server_stmt__init - (PgQuery__CreateForeignServerStmt *message) +void pg_query__alter_table_move_all_stmt__init + (PgQuery__AlterTableMoveAllStmt *message) { - static const PgQuery__CreateForeignServerStmt init_value = PG_QUERY__CREATE_FOREIGN_SERVER_STMT__INIT; + static const PgQuery__AlterTableMoveAllStmt init_value = PG_QUERY__ALTER_TABLE_MOVE_ALL_STMT__INIT; *message = init_value; } -size_t pg_query__create_foreign_server_stmt__get_packed_size - (const PgQuery__CreateForeignServerStmt *message) +size_t pg_query__alter_table_move_all_stmt__get_packed_size + (const PgQuery__AlterTableMoveAllStmt *message) { - assert(message->base.descriptor == &pg_query__create_foreign_server_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_move_all_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_foreign_server_stmt__pack - (const PgQuery__CreateForeignServerStmt *message, +size_t pg_query__alter_table_move_all_stmt__pack + (const PgQuery__AlterTableMoveAllStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_foreign_server_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_move_all_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_foreign_server_stmt__pack_to_buffer - (const PgQuery__CreateForeignServerStmt *message, +size_t pg_query__alter_table_move_all_stmt__pack_to_buffer + (const PgQuery__AlterTableMoveAllStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_foreign_server_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_move_all_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateForeignServerStmt * - pg_query__create_foreign_server_stmt__unpack +PgQuery__AlterTableMoveAllStmt * + pg_query__alter_table_move_all_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateForeignServerStmt *) - protobuf_c_message_unpack (&pg_query__create_foreign_server_stmt__descriptor, + return (PgQuery__AlterTableMoveAllStmt *) + protobuf_c_message_unpack (&pg_query__alter_table_move_all_stmt__descriptor, allocator, len, data); } -void pg_query__create_foreign_server_stmt__free_unpacked - (PgQuery__CreateForeignServerStmt *message, +void pg_query__alter_table_move_all_stmt__free_unpacked + (PgQuery__AlterTableMoveAllStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_foreign_server_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_table_move_all_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_foreign_server_stmt__init - (PgQuery__AlterForeignServerStmt *message) +void pg_query__create_extension_stmt__init + (PgQuery__CreateExtensionStmt *message) { - static const PgQuery__AlterForeignServerStmt init_value = PG_QUERY__ALTER_FOREIGN_SERVER_STMT__INIT; + static const PgQuery__CreateExtensionStmt init_value = PG_QUERY__CREATE_EXTENSION_STMT__INIT; *message = init_value; } -size_t pg_query__alter_foreign_server_stmt__get_packed_size - (const PgQuery__AlterForeignServerStmt *message) +size_t pg_query__create_extension_stmt__get_packed_size + (const PgQuery__CreateExtensionStmt *message) { - assert(message->base.descriptor == &pg_query__alter_foreign_server_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_extension_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_foreign_server_stmt__pack - (const PgQuery__AlterForeignServerStmt *message, +size_t pg_query__create_extension_stmt__pack + (const PgQuery__CreateExtensionStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_foreign_server_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_extension_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_foreign_server_stmt__pack_to_buffer - (const PgQuery__AlterForeignServerStmt *message, +size_t pg_query__create_extension_stmt__pack_to_buffer + (const PgQuery__CreateExtensionStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_foreign_server_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_extension_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterForeignServerStmt * - pg_query__alter_foreign_server_stmt__unpack +PgQuery__CreateExtensionStmt * + pg_query__create_extension_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterForeignServerStmt *) - protobuf_c_message_unpack (&pg_query__alter_foreign_server_stmt__descriptor, + return (PgQuery__CreateExtensionStmt *) + protobuf_c_message_unpack (&pg_query__create_extension_stmt__descriptor, allocator, len, data); } -void pg_query__alter_foreign_server_stmt__free_unpacked - (PgQuery__AlterForeignServerStmt *message, +void pg_query__create_extension_stmt__free_unpacked + (PgQuery__CreateExtensionStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_foreign_server_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_extension_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_user_mapping_stmt__init - (PgQuery__CreateUserMappingStmt *message) +void pg_query__alter_extension_stmt__init + (PgQuery__AlterExtensionStmt *message) { - static const PgQuery__CreateUserMappingStmt init_value = PG_QUERY__CREATE_USER_MAPPING_STMT__INIT; + static const PgQuery__AlterExtensionStmt init_value = PG_QUERY__ALTER_EXTENSION_STMT__INIT; *message = init_value; } -size_t pg_query__create_user_mapping_stmt__get_packed_size - (const PgQuery__CreateUserMappingStmt *message) +size_t pg_query__alter_extension_stmt__get_packed_size + (const PgQuery__AlterExtensionStmt *message) { - assert(message->base.descriptor == &pg_query__create_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_extension_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_user_mapping_stmt__pack - (const PgQuery__CreateUserMappingStmt *message, +size_t pg_query__alter_extension_stmt__pack + (const PgQuery__AlterExtensionStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_extension_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_user_mapping_stmt__pack_to_buffer - (const PgQuery__CreateUserMappingStmt *message, +size_t pg_query__alter_extension_stmt__pack_to_buffer + (const PgQuery__AlterExtensionStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_extension_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateUserMappingStmt * - pg_query__create_user_mapping_stmt__unpack +PgQuery__AlterExtensionStmt * + pg_query__alter_extension_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateUserMappingStmt *) - protobuf_c_message_unpack (&pg_query__create_user_mapping_stmt__descriptor, + return (PgQuery__AlterExtensionStmt *) + protobuf_c_message_unpack (&pg_query__alter_extension_stmt__descriptor, allocator, len, data); } -void pg_query__create_user_mapping_stmt__free_unpacked - (PgQuery__CreateUserMappingStmt *message, +void pg_query__alter_extension_stmt__free_unpacked + (PgQuery__AlterExtensionStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_extension_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_user_mapping_stmt__init - (PgQuery__AlterUserMappingStmt *message) +void pg_query__alter_extension_contents_stmt__init + (PgQuery__AlterExtensionContentsStmt *message) { - static const PgQuery__AlterUserMappingStmt init_value = PG_QUERY__ALTER_USER_MAPPING_STMT__INIT; + static const PgQuery__AlterExtensionContentsStmt init_value = PG_QUERY__ALTER_EXTENSION_CONTENTS_STMT__INIT; *message = init_value; } -size_t pg_query__alter_user_mapping_stmt__get_packed_size - (const PgQuery__AlterUserMappingStmt *message) +size_t pg_query__alter_extension_contents_stmt__get_packed_size + (const PgQuery__AlterExtensionContentsStmt *message) { - assert(message->base.descriptor == &pg_query__alter_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_extension_contents_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_user_mapping_stmt__pack - (const PgQuery__AlterUserMappingStmt *message, +size_t pg_query__alter_extension_contents_stmt__pack + (const PgQuery__AlterExtensionContentsStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_extension_contents_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_user_mapping_stmt__pack_to_buffer - (const PgQuery__AlterUserMappingStmt *message, +size_t pg_query__alter_extension_contents_stmt__pack_to_buffer + (const PgQuery__AlterExtensionContentsStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_extension_contents_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterUserMappingStmt * - pg_query__alter_user_mapping_stmt__unpack +PgQuery__AlterExtensionContentsStmt * + pg_query__alter_extension_contents_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterUserMappingStmt *) - protobuf_c_message_unpack (&pg_query__alter_user_mapping_stmt__descriptor, + return (PgQuery__AlterExtensionContentsStmt *) + protobuf_c_message_unpack (&pg_query__alter_extension_contents_stmt__descriptor, allocator, len, data); } -void pg_query__alter_user_mapping_stmt__free_unpacked - (PgQuery__AlterUserMappingStmt *message, +void pg_query__alter_extension_contents_stmt__free_unpacked + (PgQuery__AlterExtensionContentsStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_extension_contents_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__drop_user_mapping_stmt__init - (PgQuery__DropUserMappingStmt *message) +void pg_query__create_fdw_stmt__init + (PgQuery__CreateFdwStmt *message) { - static const PgQuery__DropUserMappingStmt init_value = PG_QUERY__DROP_USER_MAPPING_STMT__INIT; + static const PgQuery__CreateFdwStmt init_value = PG_QUERY__CREATE_FDW_STMT__INIT; *message = init_value; } -size_t pg_query__drop_user_mapping_stmt__get_packed_size - (const PgQuery__DropUserMappingStmt *message) +size_t pg_query__create_fdw_stmt__get_packed_size + (const PgQuery__CreateFdwStmt *message) { - assert(message->base.descriptor == &pg_query__drop_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_fdw_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__drop_user_mapping_stmt__pack - (const PgQuery__DropUserMappingStmt *message, +size_t pg_query__create_fdw_stmt__pack + (const PgQuery__CreateFdwStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__drop_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_fdw_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__drop_user_mapping_stmt__pack_to_buffer - (const PgQuery__DropUserMappingStmt *message, +size_t pg_query__create_fdw_stmt__pack_to_buffer + (const PgQuery__CreateFdwStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__drop_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_fdw_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DropUserMappingStmt * - pg_query__drop_user_mapping_stmt__unpack +PgQuery__CreateFdwStmt * + pg_query__create_fdw_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DropUserMappingStmt *) - protobuf_c_message_unpack (&pg_query__drop_user_mapping_stmt__descriptor, + return (PgQuery__CreateFdwStmt *) + protobuf_c_message_unpack (&pg_query__create_fdw_stmt__descriptor, allocator, len, data); } -void pg_query__drop_user_mapping_stmt__free_unpacked - (PgQuery__DropUserMappingStmt *message, +void pg_query__create_fdw_stmt__free_unpacked + (PgQuery__CreateFdwStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__drop_user_mapping_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_fdw_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_table_space_options_stmt__init - (PgQuery__AlterTableSpaceOptionsStmt *message) +void pg_query__alter_fdw_stmt__init + (PgQuery__AlterFdwStmt *message) { - static const PgQuery__AlterTableSpaceOptionsStmt init_value = PG_QUERY__ALTER_TABLE_SPACE_OPTIONS_STMT__INIT; + static const PgQuery__AlterFdwStmt init_value = PG_QUERY__ALTER_FDW_STMT__INIT; *message = init_value; } -size_t pg_query__alter_table_space_options_stmt__get_packed_size - (const PgQuery__AlterTableSpaceOptionsStmt *message) +size_t pg_query__alter_fdw_stmt__get_packed_size + (const PgQuery__AlterFdwStmt *message) { - assert(message->base.descriptor == &pg_query__alter_table_space_options_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_fdw_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_table_space_options_stmt__pack - (const PgQuery__AlterTableSpaceOptionsStmt *message, +size_t pg_query__alter_fdw_stmt__pack + (const PgQuery__AlterFdwStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_table_space_options_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_fdw_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_table_space_options_stmt__pack_to_buffer - (const PgQuery__AlterTableSpaceOptionsStmt *message, +size_t pg_query__alter_fdw_stmt__pack_to_buffer + (const PgQuery__AlterFdwStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_table_space_options_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_fdw_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterTableSpaceOptionsStmt * - pg_query__alter_table_space_options_stmt__unpack +PgQuery__AlterFdwStmt * + pg_query__alter_fdw_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterTableSpaceOptionsStmt *) - protobuf_c_message_unpack (&pg_query__alter_table_space_options_stmt__descriptor, + return (PgQuery__AlterFdwStmt *) + protobuf_c_message_unpack (&pg_query__alter_fdw_stmt__descriptor, allocator, len, data); } -void pg_query__alter_table_space_options_stmt__free_unpacked - (PgQuery__AlterTableSpaceOptionsStmt *message, +void pg_query__alter_fdw_stmt__free_unpacked + (PgQuery__AlterFdwStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_table_space_options_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_fdw_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_table_move_all_stmt__init - (PgQuery__AlterTableMoveAllStmt *message) +void pg_query__create_foreign_server_stmt__init + (PgQuery__CreateForeignServerStmt *message) { - static const PgQuery__AlterTableMoveAllStmt init_value = PG_QUERY__ALTER_TABLE_MOVE_ALL_STMT__INIT; + static const PgQuery__CreateForeignServerStmt init_value = PG_QUERY__CREATE_FOREIGN_SERVER_STMT__INIT; *message = init_value; } -size_t pg_query__alter_table_move_all_stmt__get_packed_size - (const PgQuery__AlterTableMoveAllStmt *message) +size_t pg_query__create_foreign_server_stmt__get_packed_size + (const PgQuery__CreateForeignServerStmt *message) { - assert(message->base.descriptor == &pg_query__alter_table_move_all_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_foreign_server_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_table_move_all_stmt__pack - (const PgQuery__AlterTableMoveAllStmt *message, +size_t pg_query__create_foreign_server_stmt__pack + (const PgQuery__CreateForeignServerStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_table_move_all_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_foreign_server_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_table_move_all_stmt__pack_to_buffer - (const PgQuery__AlterTableMoveAllStmt *message, +size_t pg_query__create_foreign_server_stmt__pack_to_buffer + (const PgQuery__CreateForeignServerStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_table_move_all_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_foreign_server_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterTableMoveAllStmt * - pg_query__alter_table_move_all_stmt__unpack +PgQuery__CreateForeignServerStmt * + pg_query__create_foreign_server_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterTableMoveAllStmt *) - protobuf_c_message_unpack (&pg_query__alter_table_move_all_stmt__descriptor, + return (PgQuery__CreateForeignServerStmt *) + protobuf_c_message_unpack (&pg_query__create_foreign_server_stmt__descriptor, allocator, len, data); } -void pg_query__alter_table_move_all_stmt__free_unpacked - (PgQuery__AlterTableMoveAllStmt *message, +void pg_query__create_foreign_server_stmt__free_unpacked + (PgQuery__CreateForeignServerStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_table_move_all_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_foreign_server_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__sec_label_stmt__init - (PgQuery__SecLabelStmt *message) +void pg_query__alter_foreign_server_stmt__init + (PgQuery__AlterForeignServerStmt *message) { - static const PgQuery__SecLabelStmt init_value = PG_QUERY__SEC_LABEL_STMT__INIT; + static const PgQuery__AlterForeignServerStmt init_value = PG_QUERY__ALTER_FOREIGN_SERVER_STMT__INIT; *message = init_value; } -size_t pg_query__sec_label_stmt__get_packed_size - (const PgQuery__SecLabelStmt *message) +size_t pg_query__alter_foreign_server_stmt__get_packed_size + (const PgQuery__AlterForeignServerStmt *message) { - assert(message->base.descriptor == &pg_query__sec_label_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_foreign_server_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__sec_label_stmt__pack - (const PgQuery__SecLabelStmt *message, +size_t pg_query__alter_foreign_server_stmt__pack + (const PgQuery__AlterForeignServerStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__sec_label_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_foreign_server_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__sec_label_stmt__pack_to_buffer - (const PgQuery__SecLabelStmt *message, +size_t pg_query__alter_foreign_server_stmt__pack_to_buffer + (const PgQuery__AlterForeignServerStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__sec_label_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_foreign_server_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__SecLabelStmt * - pg_query__sec_label_stmt__unpack +PgQuery__AlterForeignServerStmt * + pg_query__alter_foreign_server_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__SecLabelStmt *) - protobuf_c_message_unpack (&pg_query__sec_label_stmt__descriptor, + return (PgQuery__AlterForeignServerStmt *) + protobuf_c_message_unpack (&pg_query__alter_foreign_server_stmt__descriptor, allocator, len, data); } -void pg_query__sec_label_stmt__free_unpacked - (PgQuery__SecLabelStmt *message, +void pg_query__alter_foreign_server_stmt__free_unpacked + (PgQuery__AlterForeignServerStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__sec_label_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_foreign_server_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } void pg_query__create_foreign_table_stmt__init @@ -7207,7290 +7342,9242 @@ void pg_query__create_foreign_table_stmt__free_unpacked assert(message->base.descriptor == &pg_query__create_foreign_table_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__import_foreign_schema_stmt__init - (PgQuery__ImportForeignSchemaStmt *message) +void pg_query__create_user_mapping_stmt__init + (PgQuery__CreateUserMappingStmt *message) { - static const PgQuery__ImportForeignSchemaStmt init_value = PG_QUERY__IMPORT_FOREIGN_SCHEMA_STMT__INIT; + static const PgQuery__CreateUserMappingStmt init_value = PG_QUERY__CREATE_USER_MAPPING_STMT__INIT; *message = init_value; } -size_t pg_query__import_foreign_schema_stmt__get_packed_size - (const PgQuery__ImportForeignSchemaStmt *message) +size_t pg_query__create_user_mapping_stmt__get_packed_size + (const PgQuery__CreateUserMappingStmt *message) { - assert(message->base.descriptor == &pg_query__import_foreign_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_user_mapping_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__import_foreign_schema_stmt__pack - (const PgQuery__ImportForeignSchemaStmt *message, +size_t pg_query__create_user_mapping_stmt__pack + (const PgQuery__CreateUserMappingStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__import_foreign_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_user_mapping_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__import_foreign_schema_stmt__pack_to_buffer - (const PgQuery__ImportForeignSchemaStmt *message, +size_t pg_query__create_user_mapping_stmt__pack_to_buffer + (const PgQuery__CreateUserMappingStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__import_foreign_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_user_mapping_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ImportForeignSchemaStmt * - pg_query__import_foreign_schema_stmt__unpack +PgQuery__CreateUserMappingStmt * + pg_query__create_user_mapping_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ImportForeignSchemaStmt *) - protobuf_c_message_unpack (&pg_query__import_foreign_schema_stmt__descriptor, + return (PgQuery__CreateUserMappingStmt *) + protobuf_c_message_unpack (&pg_query__create_user_mapping_stmt__descriptor, allocator, len, data); } -void pg_query__import_foreign_schema_stmt__free_unpacked - (PgQuery__ImportForeignSchemaStmt *message, +void pg_query__create_user_mapping_stmt__free_unpacked + (PgQuery__CreateUserMappingStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__import_foreign_schema_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_user_mapping_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_extension_stmt__init - (PgQuery__CreateExtensionStmt *message) +void pg_query__alter_user_mapping_stmt__init + (PgQuery__AlterUserMappingStmt *message) { - static const PgQuery__CreateExtensionStmt init_value = PG_QUERY__CREATE_EXTENSION_STMT__INIT; + static const PgQuery__AlterUserMappingStmt init_value = PG_QUERY__ALTER_USER_MAPPING_STMT__INIT; *message = init_value; } -size_t pg_query__create_extension_stmt__get_packed_size - (const PgQuery__CreateExtensionStmt *message) +size_t pg_query__alter_user_mapping_stmt__get_packed_size + (const PgQuery__AlterUserMappingStmt *message) { - assert(message->base.descriptor == &pg_query__create_extension_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_user_mapping_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_extension_stmt__pack - (const PgQuery__CreateExtensionStmt *message, +size_t pg_query__alter_user_mapping_stmt__pack + (const PgQuery__AlterUserMappingStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_extension_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_user_mapping_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_extension_stmt__pack_to_buffer - (const PgQuery__CreateExtensionStmt *message, +size_t pg_query__alter_user_mapping_stmt__pack_to_buffer + (const PgQuery__AlterUserMappingStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_extension_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_user_mapping_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateExtensionStmt * - pg_query__create_extension_stmt__unpack +PgQuery__AlterUserMappingStmt * + pg_query__alter_user_mapping_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateExtensionStmt *) - protobuf_c_message_unpack (&pg_query__create_extension_stmt__descriptor, + return (PgQuery__AlterUserMappingStmt *) + protobuf_c_message_unpack (&pg_query__alter_user_mapping_stmt__descriptor, allocator, len, data); } -void pg_query__create_extension_stmt__free_unpacked - (PgQuery__CreateExtensionStmt *message, +void pg_query__alter_user_mapping_stmt__free_unpacked + (PgQuery__AlterUserMappingStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_extension_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_user_mapping_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_extension_stmt__init - (PgQuery__AlterExtensionStmt *message) +void pg_query__drop_user_mapping_stmt__init + (PgQuery__DropUserMappingStmt *message) { - static const PgQuery__AlterExtensionStmt init_value = PG_QUERY__ALTER_EXTENSION_STMT__INIT; + static const PgQuery__DropUserMappingStmt init_value = PG_QUERY__DROP_USER_MAPPING_STMT__INIT; *message = init_value; } -size_t pg_query__alter_extension_stmt__get_packed_size - (const PgQuery__AlterExtensionStmt *message) +size_t pg_query__drop_user_mapping_stmt__get_packed_size + (const PgQuery__DropUserMappingStmt *message) { - assert(message->base.descriptor == &pg_query__alter_extension_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_user_mapping_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_extension_stmt__pack - (const PgQuery__AlterExtensionStmt *message, +size_t pg_query__drop_user_mapping_stmt__pack + (const PgQuery__DropUserMappingStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_extension_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_user_mapping_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_extension_stmt__pack_to_buffer - (const PgQuery__AlterExtensionStmt *message, +size_t pg_query__drop_user_mapping_stmt__pack_to_buffer + (const PgQuery__DropUserMappingStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_extension_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_user_mapping_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterExtensionStmt * - pg_query__alter_extension_stmt__unpack +PgQuery__DropUserMappingStmt * + pg_query__drop_user_mapping_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterExtensionStmt *) - protobuf_c_message_unpack (&pg_query__alter_extension_stmt__descriptor, + return (PgQuery__DropUserMappingStmt *) + protobuf_c_message_unpack (&pg_query__drop_user_mapping_stmt__descriptor, allocator, len, data); } -void pg_query__alter_extension_stmt__free_unpacked - (PgQuery__AlterExtensionStmt *message, +void pg_query__drop_user_mapping_stmt__free_unpacked + (PgQuery__DropUserMappingStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_extension_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_user_mapping_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_extension_contents_stmt__init - (PgQuery__AlterExtensionContentsStmt *message) +void pg_query__import_foreign_schema_stmt__init + (PgQuery__ImportForeignSchemaStmt *message) { - static const PgQuery__AlterExtensionContentsStmt init_value = PG_QUERY__ALTER_EXTENSION_CONTENTS_STMT__INIT; + static const PgQuery__ImportForeignSchemaStmt init_value = PG_QUERY__IMPORT_FOREIGN_SCHEMA_STMT__INIT; *message = init_value; } -size_t pg_query__alter_extension_contents_stmt__get_packed_size - (const PgQuery__AlterExtensionContentsStmt *message) +size_t pg_query__import_foreign_schema_stmt__get_packed_size + (const PgQuery__ImportForeignSchemaStmt *message) { - assert(message->base.descriptor == &pg_query__alter_extension_contents_stmt__descriptor); + assert(message->base.descriptor == &pg_query__import_foreign_schema_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_extension_contents_stmt__pack - (const PgQuery__AlterExtensionContentsStmt *message, +size_t pg_query__import_foreign_schema_stmt__pack + (const PgQuery__ImportForeignSchemaStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_extension_contents_stmt__descriptor); + assert(message->base.descriptor == &pg_query__import_foreign_schema_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_extension_contents_stmt__pack_to_buffer - (const PgQuery__AlterExtensionContentsStmt *message, +size_t pg_query__import_foreign_schema_stmt__pack_to_buffer + (const PgQuery__ImportForeignSchemaStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_extension_contents_stmt__descriptor); + assert(message->base.descriptor == &pg_query__import_foreign_schema_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterExtensionContentsStmt * - pg_query__alter_extension_contents_stmt__unpack +PgQuery__ImportForeignSchemaStmt * + pg_query__import_foreign_schema_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterExtensionContentsStmt *) - protobuf_c_message_unpack (&pg_query__alter_extension_contents_stmt__descriptor, + return (PgQuery__ImportForeignSchemaStmt *) + protobuf_c_message_unpack (&pg_query__import_foreign_schema_stmt__descriptor, allocator, len, data); } -void pg_query__alter_extension_contents_stmt__free_unpacked - (PgQuery__AlterExtensionContentsStmt *message, +void pg_query__import_foreign_schema_stmt__free_unpacked + (PgQuery__ImportForeignSchemaStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_extension_contents_stmt__descriptor); + assert(message->base.descriptor == &pg_query__import_foreign_schema_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_event_trig_stmt__init - (PgQuery__CreateEventTrigStmt *message) +void pg_query__create_policy_stmt__init + (PgQuery__CreatePolicyStmt *message) { - static const PgQuery__CreateEventTrigStmt init_value = PG_QUERY__CREATE_EVENT_TRIG_STMT__INIT; + static const PgQuery__CreatePolicyStmt init_value = PG_QUERY__CREATE_POLICY_STMT__INIT; *message = init_value; } -size_t pg_query__create_event_trig_stmt__get_packed_size - (const PgQuery__CreateEventTrigStmt *message) +size_t pg_query__create_policy_stmt__get_packed_size + (const PgQuery__CreatePolicyStmt *message) { - assert(message->base.descriptor == &pg_query__create_event_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_policy_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_event_trig_stmt__pack - (const PgQuery__CreateEventTrigStmt *message, +size_t pg_query__create_policy_stmt__pack + (const PgQuery__CreatePolicyStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_event_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_policy_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_event_trig_stmt__pack_to_buffer - (const PgQuery__CreateEventTrigStmt *message, +size_t pg_query__create_policy_stmt__pack_to_buffer + (const PgQuery__CreatePolicyStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_event_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_policy_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateEventTrigStmt * - pg_query__create_event_trig_stmt__unpack +PgQuery__CreatePolicyStmt * + pg_query__create_policy_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateEventTrigStmt *) - protobuf_c_message_unpack (&pg_query__create_event_trig_stmt__descriptor, + return (PgQuery__CreatePolicyStmt *) + protobuf_c_message_unpack (&pg_query__create_policy_stmt__descriptor, allocator, len, data); } -void pg_query__create_event_trig_stmt__free_unpacked - (PgQuery__CreateEventTrigStmt *message, +void pg_query__create_policy_stmt__free_unpacked + (PgQuery__CreatePolicyStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_event_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_policy_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_event_trig_stmt__init - (PgQuery__AlterEventTrigStmt *message) +void pg_query__alter_policy_stmt__init + (PgQuery__AlterPolicyStmt *message) { - static const PgQuery__AlterEventTrigStmt init_value = PG_QUERY__ALTER_EVENT_TRIG_STMT__INIT; + static const PgQuery__AlterPolicyStmt init_value = PG_QUERY__ALTER_POLICY_STMT__INIT; *message = init_value; } -size_t pg_query__alter_event_trig_stmt__get_packed_size - (const PgQuery__AlterEventTrigStmt *message) +size_t pg_query__alter_policy_stmt__get_packed_size + (const PgQuery__AlterPolicyStmt *message) { - assert(message->base.descriptor == &pg_query__alter_event_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_policy_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_event_trig_stmt__pack - (const PgQuery__AlterEventTrigStmt *message, +size_t pg_query__alter_policy_stmt__pack + (const PgQuery__AlterPolicyStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_event_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_policy_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_event_trig_stmt__pack_to_buffer - (const PgQuery__AlterEventTrigStmt *message, +size_t pg_query__alter_policy_stmt__pack_to_buffer + (const PgQuery__AlterPolicyStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_event_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_policy_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterEventTrigStmt * - pg_query__alter_event_trig_stmt__unpack +PgQuery__AlterPolicyStmt * + pg_query__alter_policy_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterEventTrigStmt *) - protobuf_c_message_unpack (&pg_query__alter_event_trig_stmt__descriptor, + return (PgQuery__AlterPolicyStmt *) + protobuf_c_message_unpack (&pg_query__alter_policy_stmt__descriptor, allocator, len, data); } -void pg_query__alter_event_trig_stmt__free_unpacked - (PgQuery__AlterEventTrigStmt *message, +void pg_query__alter_policy_stmt__free_unpacked + (PgQuery__AlterPolicyStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_event_trig_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_policy_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__refresh_mat_view_stmt__init - (PgQuery__RefreshMatViewStmt *message) +void pg_query__create_am_stmt__init + (PgQuery__CreateAmStmt *message) { - static const PgQuery__RefreshMatViewStmt init_value = PG_QUERY__REFRESH_MAT_VIEW_STMT__INIT; + static const PgQuery__CreateAmStmt init_value = PG_QUERY__CREATE_AM_STMT__INIT; *message = init_value; } -size_t pg_query__refresh_mat_view_stmt__get_packed_size - (const PgQuery__RefreshMatViewStmt *message) +size_t pg_query__create_am_stmt__get_packed_size + (const PgQuery__CreateAmStmt *message) { - assert(message->base.descriptor == &pg_query__refresh_mat_view_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_am_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__refresh_mat_view_stmt__pack - (const PgQuery__RefreshMatViewStmt *message, +size_t pg_query__create_am_stmt__pack + (const PgQuery__CreateAmStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__refresh_mat_view_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_am_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__refresh_mat_view_stmt__pack_to_buffer - (const PgQuery__RefreshMatViewStmt *message, +size_t pg_query__create_am_stmt__pack_to_buffer + (const PgQuery__CreateAmStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__refresh_mat_view_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_am_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RefreshMatViewStmt * - pg_query__refresh_mat_view_stmt__unpack +PgQuery__CreateAmStmt * + pg_query__create_am_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RefreshMatViewStmt *) - protobuf_c_message_unpack (&pg_query__refresh_mat_view_stmt__descriptor, + return (PgQuery__CreateAmStmt *) + protobuf_c_message_unpack (&pg_query__create_am_stmt__descriptor, allocator, len, data); } -void pg_query__refresh_mat_view_stmt__free_unpacked - (PgQuery__RefreshMatViewStmt *message, +void pg_query__create_am_stmt__free_unpacked + (PgQuery__CreateAmStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__refresh_mat_view_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_am_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__replica_identity_stmt__init - (PgQuery__ReplicaIdentityStmt *message) +void pg_query__create_trig_stmt__init + (PgQuery__CreateTrigStmt *message) { - static const PgQuery__ReplicaIdentityStmt init_value = PG_QUERY__REPLICA_IDENTITY_STMT__INIT; + static const PgQuery__CreateTrigStmt init_value = PG_QUERY__CREATE_TRIG_STMT__INIT; *message = init_value; } -size_t pg_query__replica_identity_stmt__get_packed_size - (const PgQuery__ReplicaIdentityStmt *message) +size_t pg_query__create_trig_stmt__get_packed_size + (const PgQuery__CreateTrigStmt *message) { - assert(message->base.descriptor == &pg_query__replica_identity_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_trig_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__replica_identity_stmt__pack - (const PgQuery__ReplicaIdentityStmt *message, +size_t pg_query__create_trig_stmt__pack + (const PgQuery__CreateTrigStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__replica_identity_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_trig_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__replica_identity_stmt__pack_to_buffer - (const PgQuery__ReplicaIdentityStmt *message, +size_t pg_query__create_trig_stmt__pack_to_buffer + (const PgQuery__CreateTrigStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__replica_identity_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_trig_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ReplicaIdentityStmt * - pg_query__replica_identity_stmt__unpack +PgQuery__CreateTrigStmt * + pg_query__create_trig_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ReplicaIdentityStmt *) - protobuf_c_message_unpack (&pg_query__replica_identity_stmt__descriptor, + return (PgQuery__CreateTrigStmt *) + protobuf_c_message_unpack (&pg_query__create_trig_stmt__descriptor, allocator, len, data); } -void pg_query__replica_identity_stmt__free_unpacked - (PgQuery__ReplicaIdentityStmt *message, +void pg_query__create_trig_stmt__free_unpacked + (PgQuery__CreateTrigStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__replica_identity_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_trig_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_system_stmt__init - (PgQuery__AlterSystemStmt *message) +void pg_query__create_event_trig_stmt__init + (PgQuery__CreateEventTrigStmt *message) { - static const PgQuery__AlterSystemStmt init_value = PG_QUERY__ALTER_SYSTEM_STMT__INIT; + static const PgQuery__CreateEventTrigStmt init_value = PG_QUERY__CREATE_EVENT_TRIG_STMT__INIT; *message = init_value; } -size_t pg_query__alter_system_stmt__get_packed_size - (const PgQuery__AlterSystemStmt *message) +size_t pg_query__create_event_trig_stmt__get_packed_size + (const PgQuery__CreateEventTrigStmt *message) { - assert(message->base.descriptor == &pg_query__alter_system_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_event_trig_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_system_stmt__pack - (const PgQuery__AlterSystemStmt *message, +size_t pg_query__create_event_trig_stmt__pack + (const PgQuery__CreateEventTrigStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_system_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_event_trig_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_system_stmt__pack_to_buffer - (const PgQuery__AlterSystemStmt *message, +size_t pg_query__create_event_trig_stmt__pack_to_buffer + (const PgQuery__CreateEventTrigStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_system_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_event_trig_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterSystemStmt * - pg_query__alter_system_stmt__unpack +PgQuery__CreateEventTrigStmt * + pg_query__create_event_trig_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterSystemStmt *) - protobuf_c_message_unpack (&pg_query__alter_system_stmt__descriptor, + return (PgQuery__CreateEventTrigStmt *) + protobuf_c_message_unpack (&pg_query__create_event_trig_stmt__descriptor, allocator, len, data); } -void pg_query__alter_system_stmt__free_unpacked - (PgQuery__AlterSystemStmt *message, +void pg_query__create_event_trig_stmt__free_unpacked + (PgQuery__CreateEventTrigStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_system_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_event_trig_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_policy_stmt__init - (PgQuery__CreatePolicyStmt *message) +void pg_query__alter_event_trig_stmt__init + (PgQuery__AlterEventTrigStmt *message) { - static const PgQuery__CreatePolicyStmt init_value = PG_QUERY__CREATE_POLICY_STMT__INIT; + static const PgQuery__AlterEventTrigStmt init_value = PG_QUERY__ALTER_EVENT_TRIG_STMT__INIT; *message = init_value; } -size_t pg_query__create_policy_stmt__get_packed_size - (const PgQuery__CreatePolicyStmt *message) +size_t pg_query__alter_event_trig_stmt__get_packed_size + (const PgQuery__AlterEventTrigStmt *message) { - assert(message->base.descriptor == &pg_query__create_policy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_event_trig_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_policy_stmt__pack - (const PgQuery__CreatePolicyStmt *message, +size_t pg_query__alter_event_trig_stmt__pack + (const PgQuery__AlterEventTrigStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_policy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_event_trig_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_policy_stmt__pack_to_buffer - (const PgQuery__CreatePolicyStmt *message, +size_t pg_query__alter_event_trig_stmt__pack_to_buffer + (const PgQuery__AlterEventTrigStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_policy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_event_trig_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreatePolicyStmt * - pg_query__create_policy_stmt__unpack +PgQuery__AlterEventTrigStmt * + pg_query__alter_event_trig_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreatePolicyStmt *) - protobuf_c_message_unpack (&pg_query__create_policy_stmt__descriptor, + return (PgQuery__AlterEventTrigStmt *) + protobuf_c_message_unpack (&pg_query__alter_event_trig_stmt__descriptor, allocator, len, data); } -void pg_query__create_policy_stmt__free_unpacked - (PgQuery__CreatePolicyStmt *message, +void pg_query__alter_event_trig_stmt__free_unpacked + (PgQuery__AlterEventTrigStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_policy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_event_trig_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_policy_stmt__init - (PgQuery__AlterPolicyStmt *message) +void pg_query__create_plang_stmt__init + (PgQuery__CreatePLangStmt *message) { - static const PgQuery__AlterPolicyStmt init_value = PG_QUERY__ALTER_POLICY_STMT__INIT; + static const PgQuery__CreatePLangStmt init_value = PG_QUERY__CREATE_PLANG_STMT__INIT; *message = init_value; } -size_t pg_query__alter_policy_stmt__get_packed_size - (const PgQuery__AlterPolicyStmt *message) +size_t pg_query__create_plang_stmt__get_packed_size + (const PgQuery__CreatePLangStmt *message) { - assert(message->base.descriptor == &pg_query__alter_policy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_plang_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_policy_stmt__pack - (const PgQuery__AlterPolicyStmt *message, +size_t pg_query__create_plang_stmt__pack + (const PgQuery__CreatePLangStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_policy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_plang_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_policy_stmt__pack_to_buffer - (const PgQuery__AlterPolicyStmt *message, +size_t pg_query__create_plang_stmt__pack_to_buffer + (const PgQuery__CreatePLangStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_policy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_plang_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterPolicyStmt * - pg_query__alter_policy_stmt__unpack +PgQuery__CreatePLangStmt * + pg_query__create_plang_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterPolicyStmt *) - protobuf_c_message_unpack (&pg_query__alter_policy_stmt__descriptor, + return (PgQuery__CreatePLangStmt *) + protobuf_c_message_unpack (&pg_query__create_plang_stmt__descriptor, allocator, len, data); } -void pg_query__alter_policy_stmt__free_unpacked - (PgQuery__AlterPolicyStmt *message, +void pg_query__create_plang_stmt__free_unpacked + (PgQuery__CreatePLangStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_policy_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_plang_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_transform_stmt__init - (PgQuery__CreateTransformStmt *message) +void pg_query__create_role_stmt__init + (PgQuery__CreateRoleStmt *message) { - static const PgQuery__CreateTransformStmt init_value = PG_QUERY__CREATE_TRANSFORM_STMT__INIT; + static const PgQuery__CreateRoleStmt init_value = PG_QUERY__CREATE_ROLE_STMT__INIT; *message = init_value; } -size_t pg_query__create_transform_stmt__get_packed_size - (const PgQuery__CreateTransformStmt *message) +size_t pg_query__create_role_stmt__get_packed_size + (const PgQuery__CreateRoleStmt *message) { - assert(message->base.descriptor == &pg_query__create_transform_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_role_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_transform_stmt__pack - (const PgQuery__CreateTransformStmt *message, +size_t pg_query__create_role_stmt__pack + (const PgQuery__CreateRoleStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_transform_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_role_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_transform_stmt__pack_to_buffer - (const PgQuery__CreateTransformStmt *message, +size_t pg_query__create_role_stmt__pack_to_buffer + (const PgQuery__CreateRoleStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_transform_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_role_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateTransformStmt * - pg_query__create_transform_stmt__unpack +PgQuery__CreateRoleStmt * + pg_query__create_role_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateTransformStmt *) - protobuf_c_message_unpack (&pg_query__create_transform_stmt__descriptor, + return (PgQuery__CreateRoleStmt *) + protobuf_c_message_unpack (&pg_query__create_role_stmt__descriptor, allocator, len, data); } -void pg_query__create_transform_stmt__free_unpacked - (PgQuery__CreateTransformStmt *message, +void pg_query__create_role_stmt__free_unpacked + (PgQuery__CreateRoleStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_transform_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_role_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_am_stmt__init - (PgQuery__CreateAmStmt *message) +void pg_query__alter_role_stmt__init + (PgQuery__AlterRoleStmt *message) { - static const PgQuery__CreateAmStmt init_value = PG_QUERY__CREATE_AM_STMT__INIT; + static const PgQuery__AlterRoleStmt init_value = PG_QUERY__ALTER_ROLE_STMT__INIT; *message = init_value; } -size_t pg_query__create_am_stmt__get_packed_size - (const PgQuery__CreateAmStmt *message) +size_t pg_query__alter_role_stmt__get_packed_size + (const PgQuery__AlterRoleStmt *message) { - assert(message->base.descriptor == &pg_query__create_am_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_role_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_am_stmt__pack - (const PgQuery__CreateAmStmt *message, +size_t pg_query__alter_role_stmt__pack + (const PgQuery__AlterRoleStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_am_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_role_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_am_stmt__pack_to_buffer - (const PgQuery__CreateAmStmt *message, +size_t pg_query__alter_role_stmt__pack_to_buffer + (const PgQuery__AlterRoleStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_am_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_role_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateAmStmt * - pg_query__create_am_stmt__unpack +PgQuery__AlterRoleStmt * + pg_query__alter_role_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateAmStmt *) - protobuf_c_message_unpack (&pg_query__create_am_stmt__descriptor, + return (PgQuery__AlterRoleStmt *) + protobuf_c_message_unpack (&pg_query__alter_role_stmt__descriptor, allocator, len, data); } -void pg_query__create_am_stmt__free_unpacked - (PgQuery__CreateAmStmt *message, +void pg_query__alter_role_stmt__free_unpacked + (PgQuery__AlterRoleStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_am_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_role_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_publication_stmt__init - (PgQuery__CreatePublicationStmt *message) +void pg_query__alter_role_set_stmt__init + (PgQuery__AlterRoleSetStmt *message) { - static const PgQuery__CreatePublicationStmt init_value = PG_QUERY__CREATE_PUBLICATION_STMT__INIT; + static const PgQuery__AlterRoleSetStmt init_value = PG_QUERY__ALTER_ROLE_SET_STMT__INIT; *message = init_value; } -size_t pg_query__create_publication_stmt__get_packed_size - (const PgQuery__CreatePublicationStmt *message) +size_t pg_query__alter_role_set_stmt__get_packed_size + (const PgQuery__AlterRoleSetStmt *message) { - assert(message->base.descriptor == &pg_query__create_publication_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_role_set_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_publication_stmt__pack - (const PgQuery__CreatePublicationStmt *message, +size_t pg_query__alter_role_set_stmt__pack + (const PgQuery__AlterRoleSetStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_publication_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_role_set_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_publication_stmt__pack_to_buffer - (const PgQuery__CreatePublicationStmt *message, +size_t pg_query__alter_role_set_stmt__pack_to_buffer + (const PgQuery__AlterRoleSetStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_publication_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_role_set_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreatePublicationStmt * - pg_query__create_publication_stmt__unpack +PgQuery__AlterRoleSetStmt * + pg_query__alter_role_set_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreatePublicationStmt *) - protobuf_c_message_unpack (&pg_query__create_publication_stmt__descriptor, + return (PgQuery__AlterRoleSetStmt *) + protobuf_c_message_unpack (&pg_query__alter_role_set_stmt__descriptor, allocator, len, data); } -void pg_query__create_publication_stmt__free_unpacked - (PgQuery__CreatePublicationStmt *message, +void pg_query__alter_role_set_stmt__free_unpacked + (PgQuery__AlterRoleSetStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_publication_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_role_set_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_publication_stmt__init - (PgQuery__AlterPublicationStmt *message) +void pg_query__drop_role_stmt__init + (PgQuery__DropRoleStmt *message) { - static const PgQuery__AlterPublicationStmt init_value = PG_QUERY__ALTER_PUBLICATION_STMT__INIT; + static const PgQuery__DropRoleStmt init_value = PG_QUERY__DROP_ROLE_STMT__INIT; *message = init_value; } -size_t pg_query__alter_publication_stmt__get_packed_size - (const PgQuery__AlterPublicationStmt *message) +size_t pg_query__drop_role_stmt__get_packed_size + (const PgQuery__DropRoleStmt *message) { - assert(message->base.descriptor == &pg_query__alter_publication_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_role_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_publication_stmt__pack - (const PgQuery__AlterPublicationStmt *message, +size_t pg_query__drop_role_stmt__pack + (const PgQuery__DropRoleStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_publication_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_role_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_publication_stmt__pack_to_buffer - (const PgQuery__AlterPublicationStmt *message, +size_t pg_query__drop_role_stmt__pack_to_buffer + (const PgQuery__DropRoleStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_publication_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_role_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterPublicationStmt * - pg_query__alter_publication_stmt__unpack +PgQuery__DropRoleStmt * + pg_query__drop_role_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterPublicationStmt *) - protobuf_c_message_unpack (&pg_query__alter_publication_stmt__descriptor, + return (PgQuery__DropRoleStmt *) + protobuf_c_message_unpack (&pg_query__drop_role_stmt__descriptor, allocator, len, data); } -void pg_query__alter_publication_stmt__free_unpacked - (PgQuery__AlterPublicationStmt *message, +void pg_query__drop_role_stmt__free_unpacked + (PgQuery__DropRoleStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_publication_stmt__descriptor); + assert(message->base.descriptor == &pg_query__drop_role_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_subscription_stmt__init - (PgQuery__CreateSubscriptionStmt *message) +void pg_query__create_seq_stmt__init + (PgQuery__CreateSeqStmt *message) { - static const PgQuery__CreateSubscriptionStmt init_value = PG_QUERY__CREATE_SUBSCRIPTION_STMT__INIT; + static const PgQuery__CreateSeqStmt init_value = PG_QUERY__CREATE_SEQ_STMT__INIT; *message = init_value; } -size_t pg_query__create_subscription_stmt__get_packed_size - (const PgQuery__CreateSubscriptionStmt *message) +size_t pg_query__create_seq_stmt__get_packed_size + (const PgQuery__CreateSeqStmt *message) { - assert(message->base.descriptor == &pg_query__create_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_seq_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_subscription_stmt__pack - (const PgQuery__CreateSubscriptionStmt *message, +size_t pg_query__create_seq_stmt__pack + (const PgQuery__CreateSeqStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_seq_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_subscription_stmt__pack_to_buffer - (const PgQuery__CreateSubscriptionStmt *message, +size_t pg_query__create_seq_stmt__pack_to_buffer + (const PgQuery__CreateSeqStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_seq_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateSubscriptionStmt * - pg_query__create_subscription_stmt__unpack +PgQuery__CreateSeqStmt * + pg_query__create_seq_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateSubscriptionStmt *) - protobuf_c_message_unpack (&pg_query__create_subscription_stmt__descriptor, + return (PgQuery__CreateSeqStmt *) + protobuf_c_message_unpack (&pg_query__create_seq_stmt__descriptor, allocator, len, data); } -void pg_query__create_subscription_stmt__free_unpacked - (PgQuery__CreateSubscriptionStmt *message, +void pg_query__create_seq_stmt__free_unpacked + (PgQuery__CreateSeqStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_seq_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_subscription_stmt__init - (PgQuery__AlterSubscriptionStmt *message) +void pg_query__alter_seq_stmt__init + (PgQuery__AlterSeqStmt *message) { - static const PgQuery__AlterSubscriptionStmt init_value = PG_QUERY__ALTER_SUBSCRIPTION_STMT__INIT; + static const PgQuery__AlterSeqStmt init_value = PG_QUERY__ALTER_SEQ_STMT__INIT; *message = init_value; } -size_t pg_query__alter_subscription_stmt__get_packed_size - (const PgQuery__AlterSubscriptionStmt *message) +size_t pg_query__alter_seq_stmt__get_packed_size + (const PgQuery__AlterSeqStmt *message) { - assert(message->base.descriptor == &pg_query__alter_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_seq_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_subscription_stmt__pack - (const PgQuery__AlterSubscriptionStmt *message, +size_t pg_query__alter_seq_stmt__pack + (const PgQuery__AlterSeqStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_seq_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_subscription_stmt__pack_to_buffer - (const PgQuery__AlterSubscriptionStmt *message, +size_t pg_query__alter_seq_stmt__pack_to_buffer + (const PgQuery__AlterSeqStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_seq_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterSubscriptionStmt * - pg_query__alter_subscription_stmt__unpack +PgQuery__AlterSeqStmt * + pg_query__alter_seq_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterSubscriptionStmt *) - protobuf_c_message_unpack (&pg_query__alter_subscription_stmt__descriptor, + return (PgQuery__AlterSeqStmt *) + protobuf_c_message_unpack (&pg_query__alter_seq_stmt__descriptor, allocator, len, data); } -void pg_query__alter_subscription_stmt__free_unpacked - (PgQuery__AlterSubscriptionStmt *message, +void pg_query__alter_seq_stmt__free_unpacked + (PgQuery__AlterSeqStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__alter_seq_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__drop_subscription_stmt__init - (PgQuery__DropSubscriptionStmt *message) +void pg_query__define_stmt__init + (PgQuery__DefineStmt *message) { - static const PgQuery__DropSubscriptionStmt init_value = PG_QUERY__DROP_SUBSCRIPTION_STMT__INIT; + static const PgQuery__DefineStmt init_value = PG_QUERY__DEFINE_STMT__INIT; *message = init_value; } -size_t pg_query__drop_subscription_stmt__get_packed_size - (const PgQuery__DropSubscriptionStmt *message) +size_t pg_query__define_stmt__get_packed_size + (const PgQuery__DefineStmt *message) { - assert(message->base.descriptor == &pg_query__drop_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__define_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__drop_subscription_stmt__pack - (const PgQuery__DropSubscriptionStmt *message, +size_t pg_query__define_stmt__pack + (const PgQuery__DefineStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__drop_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__define_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__drop_subscription_stmt__pack_to_buffer - (const PgQuery__DropSubscriptionStmt *message, +size_t pg_query__define_stmt__pack_to_buffer + (const PgQuery__DefineStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__drop_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__define_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DropSubscriptionStmt * - pg_query__drop_subscription_stmt__unpack +PgQuery__DefineStmt * + pg_query__define_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DropSubscriptionStmt *) - protobuf_c_message_unpack (&pg_query__drop_subscription_stmt__descriptor, + return (PgQuery__DefineStmt *) + protobuf_c_message_unpack (&pg_query__define_stmt__descriptor, allocator, len, data); } -void pg_query__drop_subscription_stmt__free_unpacked - (PgQuery__DropSubscriptionStmt *message, +void pg_query__define_stmt__free_unpacked + (PgQuery__DefineStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__drop_subscription_stmt__descriptor); + assert(message->base.descriptor == &pg_query__define_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_stats_stmt__init - (PgQuery__CreateStatsStmt *message) +void pg_query__create_domain_stmt__init + (PgQuery__CreateDomainStmt *message) { - static const PgQuery__CreateStatsStmt init_value = PG_QUERY__CREATE_STATS_STMT__INIT; + static const PgQuery__CreateDomainStmt init_value = PG_QUERY__CREATE_DOMAIN_STMT__INIT; *message = init_value; } -size_t pg_query__create_stats_stmt__get_packed_size - (const PgQuery__CreateStatsStmt *message) +size_t pg_query__create_domain_stmt__get_packed_size + (const PgQuery__CreateDomainStmt *message) { - assert(message->base.descriptor == &pg_query__create_stats_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_domain_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_stats_stmt__pack - (const PgQuery__CreateStatsStmt *message, +size_t pg_query__create_domain_stmt__pack + (const PgQuery__CreateDomainStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_stats_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_domain_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_stats_stmt__pack_to_buffer - (const PgQuery__CreateStatsStmt *message, +size_t pg_query__create_domain_stmt__pack_to_buffer + (const PgQuery__CreateDomainStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_stats_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_domain_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateStatsStmt * - pg_query__create_stats_stmt__unpack +PgQuery__CreateDomainStmt * + pg_query__create_domain_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateStatsStmt *) - protobuf_c_message_unpack (&pg_query__create_stats_stmt__descriptor, + return (PgQuery__CreateDomainStmt *) + protobuf_c_message_unpack (&pg_query__create_domain_stmt__descriptor, allocator, len, data); } -void pg_query__create_stats_stmt__free_unpacked - (PgQuery__CreateStatsStmt *message, +void pg_query__create_domain_stmt__free_unpacked + (PgQuery__CreateDomainStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_stats_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_domain_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_collation_stmt__init - (PgQuery__AlterCollationStmt *message) +void pg_query__create_op_class_stmt__init + (PgQuery__CreateOpClassStmt *message) { - static const PgQuery__AlterCollationStmt init_value = PG_QUERY__ALTER_COLLATION_STMT__INIT; + static const PgQuery__CreateOpClassStmt init_value = PG_QUERY__CREATE_OP_CLASS_STMT__INIT; *message = init_value; } -size_t pg_query__alter_collation_stmt__get_packed_size - (const PgQuery__AlterCollationStmt *message) +size_t pg_query__create_op_class_stmt__get_packed_size + (const PgQuery__CreateOpClassStmt *message) { - assert(message->base.descriptor == &pg_query__alter_collation_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_class_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_collation_stmt__pack - (const PgQuery__AlterCollationStmt *message, +size_t pg_query__create_op_class_stmt__pack + (const PgQuery__CreateOpClassStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_collation_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_class_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_collation_stmt__pack_to_buffer - (const PgQuery__AlterCollationStmt *message, +size_t pg_query__create_op_class_stmt__pack_to_buffer + (const PgQuery__CreateOpClassStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_collation_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_class_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterCollationStmt * - pg_query__alter_collation_stmt__unpack +PgQuery__CreateOpClassStmt * + pg_query__create_op_class_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterCollationStmt *) - protobuf_c_message_unpack (&pg_query__alter_collation_stmt__descriptor, + return (PgQuery__CreateOpClassStmt *) + protobuf_c_message_unpack (&pg_query__create_op_class_stmt__descriptor, allocator, len, data); } -void pg_query__alter_collation_stmt__free_unpacked - (PgQuery__AlterCollationStmt *message, +void pg_query__create_op_class_stmt__free_unpacked + (PgQuery__CreateOpClassStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_collation_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_class_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__call_stmt__init - (PgQuery__CallStmt *message) +void pg_query__create_op_class_item__init + (PgQuery__CreateOpClassItem *message) { - static const PgQuery__CallStmt init_value = PG_QUERY__CALL_STMT__INIT; + static const PgQuery__CreateOpClassItem init_value = PG_QUERY__CREATE_OP_CLASS_ITEM__INIT; *message = init_value; } -size_t pg_query__call_stmt__get_packed_size - (const PgQuery__CallStmt *message) +size_t pg_query__create_op_class_item__get_packed_size + (const PgQuery__CreateOpClassItem *message) { - assert(message->base.descriptor == &pg_query__call_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_class_item__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__call_stmt__pack - (const PgQuery__CallStmt *message, +size_t pg_query__create_op_class_item__pack + (const PgQuery__CreateOpClassItem *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__call_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_class_item__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__call_stmt__pack_to_buffer - (const PgQuery__CallStmt *message, +size_t pg_query__create_op_class_item__pack_to_buffer + (const PgQuery__CreateOpClassItem *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__call_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_class_item__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CallStmt * - pg_query__call_stmt__unpack +PgQuery__CreateOpClassItem * + pg_query__create_op_class_item__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CallStmt *) - protobuf_c_message_unpack (&pg_query__call_stmt__descriptor, + return (PgQuery__CreateOpClassItem *) + protobuf_c_message_unpack (&pg_query__create_op_class_item__descriptor, allocator, len, data); } -void pg_query__call_stmt__free_unpacked - (PgQuery__CallStmt *message, +void pg_query__create_op_class_item__free_unpacked + (PgQuery__CreateOpClassItem *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__call_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_class_item__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__alter_stats_stmt__init - (PgQuery__AlterStatsStmt *message) +void pg_query__create_op_family_stmt__init + (PgQuery__CreateOpFamilyStmt *message) { - static const PgQuery__AlterStatsStmt init_value = PG_QUERY__ALTER_STATS_STMT__INIT; + static const PgQuery__CreateOpFamilyStmt init_value = PG_QUERY__CREATE_OP_FAMILY_STMT__INIT; *message = init_value; } -size_t pg_query__alter_stats_stmt__get_packed_size - (const PgQuery__AlterStatsStmt *message) +size_t pg_query__create_op_family_stmt__get_packed_size + (const PgQuery__CreateOpFamilyStmt *message) { - assert(message->base.descriptor == &pg_query__alter_stats_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_family_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__alter_stats_stmt__pack - (const PgQuery__AlterStatsStmt *message, +size_t pg_query__create_op_family_stmt__pack + (const PgQuery__CreateOpFamilyStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__alter_stats_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_family_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__alter_stats_stmt__pack_to_buffer - (const PgQuery__AlterStatsStmt *message, +size_t pg_query__create_op_family_stmt__pack_to_buffer + (const PgQuery__CreateOpFamilyStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__alter_stats_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_family_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AlterStatsStmt * - pg_query__alter_stats_stmt__unpack +PgQuery__CreateOpFamilyStmt * + pg_query__create_op_family_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AlterStatsStmt *) - protobuf_c_message_unpack (&pg_query__alter_stats_stmt__descriptor, + return (PgQuery__CreateOpFamilyStmt *) + protobuf_c_message_unpack (&pg_query__create_op_family_stmt__descriptor, allocator, len, data); } -void pg_query__alter_stats_stmt__free_unpacked - (PgQuery__AlterStatsStmt *message, +void pg_query__create_op_family_stmt__free_unpacked + (PgQuery__CreateOpFamilyStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__alter_stats_stmt__descriptor); + assert(message->base.descriptor == &pg_query__create_op_family_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__a__expr__init - (PgQuery__AExpr *message) +void pg_query__alter_op_family_stmt__init + (PgQuery__AlterOpFamilyStmt *message) { - static const PgQuery__AExpr init_value = PG_QUERY__A__EXPR__INIT; + static const PgQuery__AlterOpFamilyStmt init_value = PG_QUERY__ALTER_OP_FAMILY_STMT__INIT; *message = init_value; } -size_t pg_query__a__expr__get_packed_size - (const PgQuery__AExpr *message) +size_t pg_query__alter_op_family_stmt__get_packed_size + (const PgQuery__AlterOpFamilyStmt *message) { - assert(message->base.descriptor == &pg_query__a__expr__descriptor); + assert(message->base.descriptor == &pg_query__alter_op_family_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__a__expr__pack - (const PgQuery__AExpr *message, +size_t pg_query__alter_op_family_stmt__pack + (const PgQuery__AlterOpFamilyStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__a__expr__descriptor); + assert(message->base.descriptor == &pg_query__alter_op_family_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__a__expr__pack_to_buffer - (const PgQuery__AExpr *message, +size_t pg_query__alter_op_family_stmt__pack_to_buffer + (const PgQuery__AlterOpFamilyStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__a__expr__descriptor); + assert(message->base.descriptor == &pg_query__alter_op_family_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AExpr * - pg_query__a__expr__unpack +PgQuery__AlterOpFamilyStmt * + pg_query__alter_op_family_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AExpr *) - protobuf_c_message_unpack (&pg_query__a__expr__descriptor, + return (PgQuery__AlterOpFamilyStmt *) + protobuf_c_message_unpack (&pg_query__alter_op_family_stmt__descriptor, allocator, len, data); } -void pg_query__a__expr__free_unpacked - (PgQuery__AExpr *message, +void pg_query__alter_op_family_stmt__free_unpacked + (PgQuery__AlterOpFamilyStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__a__expr__descriptor); + assert(message->base.descriptor == &pg_query__alter_op_family_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__column_ref__init - (PgQuery__ColumnRef *message) +void pg_query__drop_stmt__init + (PgQuery__DropStmt *message) { - static const PgQuery__ColumnRef init_value = PG_QUERY__COLUMN_REF__INIT; + static const PgQuery__DropStmt init_value = PG_QUERY__DROP_STMT__INIT; *message = init_value; } -size_t pg_query__column_ref__get_packed_size - (const PgQuery__ColumnRef *message) +size_t pg_query__drop_stmt__get_packed_size + (const PgQuery__DropStmt *message) { - assert(message->base.descriptor == &pg_query__column_ref__descriptor); + assert(message->base.descriptor == &pg_query__drop_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__column_ref__pack - (const PgQuery__ColumnRef *message, +size_t pg_query__drop_stmt__pack + (const PgQuery__DropStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__column_ref__descriptor); + assert(message->base.descriptor == &pg_query__drop_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__column_ref__pack_to_buffer - (const PgQuery__ColumnRef *message, +size_t pg_query__drop_stmt__pack_to_buffer + (const PgQuery__DropStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__column_ref__descriptor); + assert(message->base.descriptor == &pg_query__drop_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ColumnRef * - pg_query__column_ref__unpack +PgQuery__DropStmt * + pg_query__drop_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ColumnRef *) - protobuf_c_message_unpack (&pg_query__column_ref__descriptor, + return (PgQuery__DropStmt *) + protobuf_c_message_unpack (&pg_query__drop_stmt__descriptor, allocator, len, data); } -void pg_query__column_ref__free_unpacked - (PgQuery__ColumnRef *message, +void pg_query__drop_stmt__free_unpacked + (PgQuery__DropStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__column_ref__descriptor); + assert(message->base.descriptor == &pg_query__drop_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__param_ref__init - (PgQuery__ParamRef *message) +void pg_query__truncate_stmt__init + (PgQuery__TruncateStmt *message) { - static const PgQuery__ParamRef init_value = PG_QUERY__PARAM_REF__INIT; + static const PgQuery__TruncateStmt init_value = PG_QUERY__TRUNCATE_STMT__INIT; *message = init_value; } -size_t pg_query__param_ref__get_packed_size - (const PgQuery__ParamRef *message) +size_t pg_query__truncate_stmt__get_packed_size + (const PgQuery__TruncateStmt *message) { - assert(message->base.descriptor == &pg_query__param_ref__descriptor); + assert(message->base.descriptor == &pg_query__truncate_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__param_ref__pack - (const PgQuery__ParamRef *message, +size_t pg_query__truncate_stmt__pack + (const PgQuery__TruncateStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__param_ref__descriptor); + assert(message->base.descriptor == &pg_query__truncate_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__param_ref__pack_to_buffer - (const PgQuery__ParamRef *message, +size_t pg_query__truncate_stmt__pack_to_buffer + (const PgQuery__TruncateStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__param_ref__descriptor); + assert(message->base.descriptor == &pg_query__truncate_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ParamRef * - pg_query__param_ref__unpack +PgQuery__TruncateStmt * + pg_query__truncate_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ParamRef *) - protobuf_c_message_unpack (&pg_query__param_ref__descriptor, + return (PgQuery__TruncateStmt *) + protobuf_c_message_unpack (&pg_query__truncate_stmt__descriptor, allocator, len, data); } -void pg_query__param_ref__free_unpacked - (PgQuery__ParamRef *message, +void pg_query__truncate_stmt__free_unpacked + (PgQuery__TruncateStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__param_ref__descriptor); + assert(message->base.descriptor == &pg_query__truncate_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__func_call__init - (PgQuery__FuncCall *message) +void pg_query__comment_stmt__init + (PgQuery__CommentStmt *message) { - static const PgQuery__FuncCall init_value = PG_QUERY__FUNC_CALL__INIT; + static const PgQuery__CommentStmt init_value = PG_QUERY__COMMENT_STMT__INIT; *message = init_value; } -size_t pg_query__func_call__get_packed_size - (const PgQuery__FuncCall *message) +size_t pg_query__comment_stmt__get_packed_size + (const PgQuery__CommentStmt *message) { - assert(message->base.descriptor == &pg_query__func_call__descriptor); + assert(message->base.descriptor == &pg_query__comment_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__func_call__pack - (const PgQuery__FuncCall *message, +size_t pg_query__comment_stmt__pack + (const PgQuery__CommentStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__func_call__descriptor); + assert(message->base.descriptor == &pg_query__comment_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__func_call__pack_to_buffer - (const PgQuery__FuncCall *message, +size_t pg_query__comment_stmt__pack_to_buffer + (const PgQuery__CommentStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__func_call__descriptor); + assert(message->base.descriptor == &pg_query__comment_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__FuncCall * - pg_query__func_call__unpack +PgQuery__CommentStmt * + pg_query__comment_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__FuncCall *) - protobuf_c_message_unpack (&pg_query__func_call__descriptor, + return (PgQuery__CommentStmt *) + protobuf_c_message_unpack (&pg_query__comment_stmt__descriptor, allocator, len, data); } -void pg_query__func_call__free_unpacked - (PgQuery__FuncCall *message, +void pg_query__comment_stmt__free_unpacked + (PgQuery__CommentStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__func_call__descriptor); + assert(message->base.descriptor == &pg_query__comment_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__a__star__init - (PgQuery__AStar *message) +void pg_query__sec_label_stmt__init + (PgQuery__SecLabelStmt *message) { - static const PgQuery__AStar init_value = PG_QUERY__A__STAR__INIT; + static const PgQuery__SecLabelStmt init_value = PG_QUERY__SEC_LABEL_STMT__INIT; *message = init_value; } -size_t pg_query__a__star__get_packed_size - (const PgQuery__AStar *message) +size_t pg_query__sec_label_stmt__get_packed_size + (const PgQuery__SecLabelStmt *message) { - assert(message->base.descriptor == &pg_query__a__star__descriptor); + assert(message->base.descriptor == &pg_query__sec_label_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__a__star__pack - (const PgQuery__AStar *message, +size_t pg_query__sec_label_stmt__pack + (const PgQuery__SecLabelStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__a__star__descriptor); + assert(message->base.descriptor == &pg_query__sec_label_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__a__star__pack_to_buffer - (const PgQuery__AStar *message, +size_t pg_query__sec_label_stmt__pack_to_buffer + (const PgQuery__SecLabelStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__a__star__descriptor); + assert(message->base.descriptor == &pg_query__sec_label_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AStar * - pg_query__a__star__unpack +PgQuery__SecLabelStmt * + pg_query__sec_label_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AStar *) - protobuf_c_message_unpack (&pg_query__a__star__descriptor, + return (PgQuery__SecLabelStmt *) + protobuf_c_message_unpack (&pg_query__sec_label_stmt__descriptor, allocator, len, data); } -void pg_query__a__star__free_unpacked - (PgQuery__AStar *message, +void pg_query__sec_label_stmt__free_unpacked + (PgQuery__SecLabelStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__a__star__descriptor); + assert(message->base.descriptor == &pg_query__sec_label_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__a__indices__init - (PgQuery__AIndices *message) +void pg_query__declare_cursor_stmt__init + (PgQuery__DeclareCursorStmt *message) { - static const PgQuery__AIndices init_value = PG_QUERY__A__INDICES__INIT; + static const PgQuery__DeclareCursorStmt init_value = PG_QUERY__DECLARE_CURSOR_STMT__INIT; *message = init_value; } -size_t pg_query__a__indices__get_packed_size - (const PgQuery__AIndices *message) +size_t pg_query__declare_cursor_stmt__get_packed_size + (const PgQuery__DeclareCursorStmt *message) { - assert(message->base.descriptor == &pg_query__a__indices__descriptor); + assert(message->base.descriptor == &pg_query__declare_cursor_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__a__indices__pack - (const PgQuery__AIndices *message, +size_t pg_query__declare_cursor_stmt__pack + (const PgQuery__DeclareCursorStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__a__indices__descriptor); + assert(message->base.descriptor == &pg_query__declare_cursor_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__a__indices__pack_to_buffer - (const PgQuery__AIndices *message, +size_t pg_query__declare_cursor_stmt__pack_to_buffer + (const PgQuery__DeclareCursorStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__a__indices__descriptor); + assert(message->base.descriptor == &pg_query__declare_cursor_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AIndices * - pg_query__a__indices__unpack +PgQuery__DeclareCursorStmt * + pg_query__declare_cursor_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AIndices *) - protobuf_c_message_unpack (&pg_query__a__indices__descriptor, + return (PgQuery__DeclareCursorStmt *) + protobuf_c_message_unpack (&pg_query__declare_cursor_stmt__descriptor, allocator, len, data); } -void pg_query__a__indices__free_unpacked - (PgQuery__AIndices *message, +void pg_query__declare_cursor_stmt__free_unpacked + (PgQuery__DeclareCursorStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__a__indices__descriptor); + assert(message->base.descriptor == &pg_query__declare_cursor_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__a__indirection__init - (PgQuery__AIndirection *message) +void pg_query__close_portal_stmt__init + (PgQuery__ClosePortalStmt *message) { - static const PgQuery__AIndirection init_value = PG_QUERY__A__INDIRECTION__INIT; + static const PgQuery__ClosePortalStmt init_value = PG_QUERY__CLOSE_PORTAL_STMT__INIT; *message = init_value; } -size_t pg_query__a__indirection__get_packed_size - (const PgQuery__AIndirection *message) +size_t pg_query__close_portal_stmt__get_packed_size + (const PgQuery__ClosePortalStmt *message) { - assert(message->base.descriptor == &pg_query__a__indirection__descriptor); + assert(message->base.descriptor == &pg_query__close_portal_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__a__indirection__pack - (const PgQuery__AIndirection *message, +size_t pg_query__close_portal_stmt__pack + (const PgQuery__ClosePortalStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__a__indirection__descriptor); + assert(message->base.descriptor == &pg_query__close_portal_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__a__indirection__pack_to_buffer - (const PgQuery__AIndirection *message, +size_t pg_query__close_portal_stmt__pack_to_buffer + (const PgQuery__ClosePortalStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__a__indirection__descriptor); + assert(message->base.descriptor == &pg_query__close_portal_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AIndirection * - pg_query__a__indirection__unpack +PgQuery__ClosePortalStmt * + pg_query__close_portal_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AIndirection *) - protobuf_c_message_unpack (&pg_query__a__indirection__descriptor, + return (PgQuery__ClosePortalStmt *) + protobuf_c_message_unpack (&pg_query__close_portal_stmt__descriptor, allocator, len, data); } -void pg_query__a__indirection__free_unpacked - (PgQuery__AIndirection *message, +void pg_query__close_portal_stmt__free_unpacked + (PgQuery__ClosePortalStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__a__indirection__descriptor); + assert(message->base.descriptor == &pg_query__close_portal_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__a__array_expr__init - (PgQuery__AArrayExpr *message) +void pg_query__fetch_stmt__init + (PgQuery__FetchStmt *message) { - static const PgQuery__AArrayExpr init_value = PG_QUERY__A__ARRAY_EXPR__INIT; + static const PgQuery__FetchStmt init_value = PG_QUERY__FETCH_STMT__INIT; *message = init_value; } -size_t pg_query__a__array_expr__get_packed_size - (const PgQuery__AArrayExpr *message) +size_t pg_query__fetch_stmt__get_packed_size + (const PgQuery__FetchStmt *message) { - assert(message->base.descriptor == &pg_query__a__array_expr__descriptor); + assert(message->base.descriptor == &pg_query__fetch_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__a__array_expr__pack - (const PgQuery__AArrayExpr *message, +size_t pg_query__fetch_stmt__pack + (const PgQuery__FetchStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__a__array_expr__descriptor); + assert(message->base.descriptor == &pg_query__fetch_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__a__array_expr__pack_to_buffer - (const PgQuery__AArrayExpr *message, +size_t pg_query__fetch_stmt__pack_to_buffer + (const PgQuery__FetchStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__a__array_expr__descriptor); + assert(message->base.descriptor == &pg_query__fetch_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AArrayExpr * - pg_query__a__array_expr__unpack +PgQuery__FetchStmt * + pg_query__fetch_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AArrayExpr *) - protobuf_c_message_unpack (&pg_query__a__array_expr__descriptor, + return (PgQuery__FetchStmt *) + protobuf_c_message_unpack (&pg_query__fetch_stmt__descriptor, allocator, len, data); } -void pg_query__a__array_expr__free_unpacked - (PgQuery__AArrayExpr *message, +void pg_query__fetch_stmt__free_unpacked + (PgQuery__FetchStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__a__array_expr__descriptor); + assert(message->base.descriptor == &pg_query__fetch_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__res_target__init - (PgQuery__ResTarget *message) +void pg_query__index_stmt__init + (PgQuery__IndexStmt *message) { - static const PgQuery__ResTarget init_value = PG_QUERY__RES_TARGET__INIT; + static const PgQuery__IndexStmt init_value = PG_QUERY__INDEX_STMT__INIT; *message = init_value; } -size_t pg_query__res_target__get_packed_size - (const PgQuery__ResTarget *message) +size_t pg_query__index_stmt__get_packed_size + (const PgQuery__IndexStmt *message) { - assert(message->base.descriptor == &pg_query__res_target__descriptor); + assert(message->base.descriptor == &pg_query__index_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__res_target__pack - (const PgQuery__ResTarget *message, +size_t pg_query__index_stmt__pack + (const PgQuery__IndexStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__res_target__descriptor); + assert(message->base.descriptor == &pg_query__index_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__res_target__pack_to_buffer - (const PgQuery__ResTarget *message, +size_t pg_query__index_stmt__pack_to_buffer + (const PgQuery__IndexStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__res_target__descriptor); + assert(message->base.descriptor == &pg_query__index_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ResTarget * - pg_query__res_target__unpack +PgQuery__IndexStmt * + pg_query__index_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ResTarget *) - protobuf_c_message_unpack (&pg_query__res_target__descriptor, + return (PgQuery__IndexStmt *) + protobuf_c_message_unpack (&pg_query__index_stmt__descriptor, allocator, len, data); } -void pg_query__res_target__free_unpacked - (PgQuery__ResTarget *message, +void pg_query__index_stmt__free_unpacked + (PgQuery__IndexStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__res_target__descriptor); + assert(message->base.descriptor == &pg_query__index_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__multi_assign_ref__init - (PgQuery__MultiAssignRef *message) +void pg_query__create_stats_stmt__init + (PgQuery__CreateStatsStmt *message) { - static const PgQuery__MultiAssignRef init_value = PG_QUERY__MULTI_ASSIGN_REF__INIT; + static const PgQuery__CreateStatsStmt init_value = PG_QUERY__CREATE_STATS_STMT__INIT; *message = init_value; } -size_t pg_query__multi_assign_ref__get_packed_size - (const PgQuery__MultiAssignRef *message) +size_t pg_query__create_stats_stmt__get_packed_size + (const PgQuery__CreateStatsStmt *message) { - assert(message->base.descriptor == &pg_query__multi_assign_ref__descriptor); + assert(message->base.descriptor == &pg_query__create_stats_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__multi_assign_ref__pack - (const PgQuery__MultiAssignRef *message, +size_t pg_query__create_stats_stmt__pack + (const PgQuery__CreateStatsStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__multi_assign_ref__descriptor); + assert(message->base.descriptor == &pg_query__create_stats_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__multi_assign_ref__pack_to_buffer - (const PgQuery__MultiAssignRef *message, +size_t pg_query__create_stats_stmt__pack_to_buffer + (const PgQuery__CreateStatsStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__multi_assign_ref__descriptor); + assert(message->base.descriptor == &pg_query__create_stats_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__MultiAssignRef * - pg_query__multi_assign_ref__unpack +PgQuery__CreateStatsStmt * + pg_query__create_stats_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__MultiAssignRef *) - protobuf_c_message_unpack (&pg_query__multi_assign_ref__descriptor, + return (PgQuery__CreateStatsStmt *) + protobuf_c_message_unpack (&pg_query__create_stats_stmt__descriptor, allocator, len, data); } -void pg_query__multi_assign_ref__free_unpacked - (PgQuery__MultiAssignRef *message, +void pg_query__create_stats_stmt__free_unpacked + (PgQuery__CreateStatsStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__multi_assign_ref__descriptor); + assert(message->base.descriptor == &pg_query__create_stats_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__type_cast__init - (PgQuery__TypeCast *message) +void pg_query__stats_elem__init + (PgQuery__StatsElem *message) { - static const PgQuery__TypeCast init_value = PG_QUERY__TYPE_CAST__INIT; + static const PgQuery__StatsElem init_value = PG_QUERY__STATS_ELEM__INIT; *message = init_value; } -size_t pg_query__type_cast__get_packed_size - (const PgQuery__TypeCast *message) +size_t pg_query__stats_elem__get_packed_size + (const PgQuery__StatsElem *message) { - assert(message->base.descriptor == &pg_query__type_cast__descriptor); + assert(message->base.descriptor == &pg_query__stats_elem__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__type_cast__pack - (const PgQuery__TypeCast *message, +size_t pg_query__stats_elem__pack + (const PgQuery__StatsElem *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__type_cast__descriptor); + assert(message->base.descriptor == &pg_query__stats_elem__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__type_cast__pack_to_buffer - (const PgQuery__TypeCast *message, +size_t pg_query__stats_elem__pack_to_buffer + (const PgQuery__StatsElem *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__type_cast__descriptor); + assert(message->base.descriptor == &pg_query__stats_elem__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__TypeCast * - pg_query__type_cast__unpack +PgQuery__StatsElem * + pg_query__stats_elem__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__TypeCast *) - protobuf_c_message_unpack (&pg_query__type_cast__descriptor, + return (PgQuery__StatsElem *) + protobuf_c_message_unpack (&pg_query__stats_elem__descriptor, allocator, len, data); } -void pg_query__type_cast__free_unpacked - (PgQuery__TypeCast *message, +void pg_query__stats_elem__free_unpacked + (PgQuery__StatsElem *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__type_cast__descriptor); + assert(message->base.descriptor == &pg_query__stats_elem__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__collate_clause__init - (PgQuery__CollateClause *message) +void pg_query__alter_stats_stmt__init + (PgQuery__AlterStatsStmt *message) { - static const PgQuery__CollateClause init_value = PG_QUERY__COLLATE_CLAUSE__INIT; + static const PgQuery__AlterStatsStmt init_value = PG_QUERY__ALTER_STATS_STMT__INIT; *message = init_value; } -size_t pg_query__collate_clause__get_packed_size - (const PgQuery__CollateClause *message) +size_t pg_query__alter_stats_stmt__get_packed_size + (const PgQuery__AlterStatsStmt *message) { - assert(message->base.descriptor == &pg_query__collate_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_stats_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__collate_clause__pack - (const PgQuery__CollateClause *message, +size_t pg_query__alter_stats_stmt__pack + (const PgQuery__AlterStatsStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__collate_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_stats_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__collate_clause__pack_to_buffer - (const PgQuery__CollateClause *message, +size_t pg_query__alter_stats_stmt__pack_to_buffer + (const PgQuery__AlterStatsStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__collate_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_stats_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CollateClause * - pg_query__collate_clause__unpack +PgQuery__AlterStatsStmt * + pg_query__alter_stats_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CollateClause *) - protobuf_c_message_unpack (&pg_query__collate_clause__descriptor, + return (PgQuery__AlterStatsStmt *) + protobuf_c_message_unpack (&pg_query__alter_stats_stmt__descriptor, allocator, len, data); } -void pg_query__collate_clause__free_unpacked - (PgQuery__CollateClause *message, +void pg_query__alter_stats_stmt__free_unpacked + (PgQuery__AlterStatsStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__collate_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_stats_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__sort_by__init - (PgQuery__SortBy *message) +void pg_query__create_function_stmt__init + (PgQuery__CreateFunctionStmt *message) { - static const PgQuery__SortBy init_value = PG_QUERY__SORT_BY__INIT; + static const PgQuery__CreateFunctionStmt init_value = PG_QUERY__CREATE_FUNCTION_STMT__INIT; *message = init_value; } -size_t pg_query__sort_by__get_packed_size - (const PgQuery__SortBy *message) +size_t pg_query__create_function_stmt__get_packed_size + (const PgQuery__CreateFunctionStmt *message) { - assert(message->base.descriptor == &pg_query__sort_by__descriptor); + assert(message->base.descriptor == &pg_query__create_function_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__sort_by__pack - (const PgQuery__SortBy *message, +size_t pg_query__create_function_stmt__pack + (const PgQuery__CreateFunctionStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__sort_by__descriptor); + assert(message->base.descriptor == &pg_query__create_function_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__sort_by__pack_to_buffer - (const PgQuery__SortBy *message, +size_t pg_query__create_function_stmt__pack_to_buffer + (const PgQuery__CreateFunctionStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__sort_by__descriptor); + assert(message->base.descriptor == &pg_query__create_function_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__SortBy * - pg_query__sort_by__unpack +PgQuery__CreateFunctionStmt * + pg_query__create_function_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__SortBy *) - protobuf_c_message_unpack (&pg_query__sort_by__descriptor, + return (PgQuery__CreateFunctionStmt *) + protobuf_c_message_unpack (&pg_query__create_function_stmt__descriptor, allocator, len, data); } -void pg_query__sort_by__free_unpacked - (PgQuery__SortBy *message, +void pg_query__create_function_stmt__free_unpacked + (PgQuery__CreateFunctionStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__sort_by__descriptor); + assert(message->base.descriptor == &pg_query__create_function_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__window_def__init - (PgQuery__WindowDef *message) +void pg_query__function_parameter__init + (PgQuery__FunctionParameter *message) { - static const PgQuery__WindowDef init_value = PG_QUERY__WINDOW_DEF__INIT; + static const PgQuery__FunctionParameter init_value = PG_QUERY__FUNCTION_PARAMETER__INIT; *message = init_value; } -size_t pg_query__window_def__get_packed_size - (const PgQuery__WindowDef *message) +size_t pg_query__function_parameter__get_packed_size + (const PgQuery__FunctionParameter *message) { - assert(message->base.descriptor == &pg_query__window_def__descriptor); + assert(message->base.descriptor == &pg_query__function_parameter__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__window_def__pack - (const PgQuery__WindowDef *message, +size_t pg_query__function_parameter__pack + (const PgQuery__FunctionParameter *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__window_def__descriptor); + assert(message->base.descriptor == &pg_query__function_parameter__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__window_def__pack_to_buffer - (const PgQuery__WindowDef *message, +size_t pg_query__function_parameter__pack_to_buffer + (const PgQuery__FunctionParameter *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__window_def__descriptor); + assert(message->base.descriptor == &pg_query__function_parameter__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__WindowDef * - pg_query__window_def__unpack +PgQuery__FunctionParameter * + pg_query__function_parameter__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__WindowDef *) - protobuf_c_message_unpack (&pg_query__window_def__descriptor, + return (PgQuery__FunctionParameter *) + protobuf_c_message_unpack (&pg_query__function_parameter__descriptor, allocator, len, data); } -void pg_query__window_def__free_unpacked - (PgQuery__WindowDef *message, +void pg_query__function_parameter__free_unpacked + (PgQuery__FunctionParameter *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__window_def__descriptor); + assert(message->base.descriptor == &pg_query__function_parameter__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__range_subselect__init - (PgQuery__RangeSubselect *message) +void pg_query__alter_function_stmt__init + (PgQuery__AlterFunctionStmt *message) { - static const PgQuery__RangeSubselect init_value = PG_QUERY__RANGE_SUBSELECT__INIT; + static const PgQuery__AlterFunctionStmt init_value = PG_QUERY__ALTER_FUNCTION_STMT__INIT; *message = init_value; } -size_t pg_query__range_subselect__get_packed_size - (const PgQuery__RangeSubselect *message) +size_t pg_query__alter_function_stmt__get_packed_size + (const PgQuery__AlterFunctionStmt *message) { - assert(message->base.descriptor == &pg_query__range_subselect__descriptor); + assert(message->base.descriptor == &pg_query__alter_function_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__range_subselect__pack - (const PgQuery__RangeSubselect *message, +size_t pg_query__alter_function_stmt__pack + (const PgQuery__AlterFunctionStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__range_subselect__descriptor); + assert(message->base.descriptor == &pg_query__alter_function_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__range_subselect__pack_to_buffer - (const PgQuery__RangeSubselect *message, +size_t pg_query__alter_function_stmt__pack_to_buffer + (const PgQuery__AlterFunctionStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__range_subselect__descriptor); + assert(message->base.descriptor == &pg_query__alter_function_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RangeSubselect * - pg_query__range_subselect__unpack +PgQuery__AlterFunctionStmt * + pg_query__alter_function_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RangeSubselect *) - protobuf_c_message_unpack (&pg_query__range_subselect__descriptor, + return (PgQuery__AlterFunctionStmt *) + protobuf_c_message_unpack (&pg_query__alter_function_stmt__descriptor, allocator, len, data); } -void pg_query__range_subselect__free_unpacked - (PgQuery__RangeSubselect *message, +void pg_query__alter_function_stmt__free_unpacked + (PgQuery__AlterFunctionStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__range_subselect__descriptor); + assert(message->base.descriptor == &pg_query__alter_function_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__range_function__init - (PgQuery__RangeFunction *message) +void pg_query__do_stmt__init + (PgQuery__DoStmt *message) { - static const PgQuery__RangeFunction init_value = PG_QUERY__RANGE_FUNCTION__INIT; + static const PgQuery__DoStmt init_value = PG_QUERY__DO_STMT__INIT; *message = init_value; } -size_t pg_query__range_function__get_packed_size - (const PgQuery__RangeFunction *message) +size_t pg_query__do_stmt__get_packed_size + (const PgQuery__DoStmt *message) { - assert(message->base.descriptor == &pg_query__range_function__descriptor); + assert(message->base.descriptor == &pg_query__do_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__range_function__pack - (const PgQuery__RangeFunction *message, +size_t pg_query__do_stmt__pack + (const PgQuery__DoStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__range_function__descriptor); + assert(message->base.descriptor == &pg_query__do_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__range_function__pack_to_buffer - (const PgQuery__RangeFunction *message, +size_t pg_query__do_stmt__pack_to_buffer + (const PgQuery__DoStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__range_function__descriptor); + assert(message->base.descriptor == &pg_query__do_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RangeFunction * - pg_query__range_function__unpack +PgQuery__DoStmt * + pg_query__do_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RangeFunction *) - protobuf_c_message_unpack (&pg_query__range_function__descriptor, + return (PgQuery__DoStmt *) + protobuf_c_message_unpack (&pg_query__do_stmt__descriptor, allocator, len, data); } -void pg_query__range_function__free_unpacked - (PgQuery__RangeFunction *message, +void pg_query__do_stmt__free_unpacked + (PgQuery__DoStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__range_function__descriptor); + assert(message->base.descriptor == &pg_query__do_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__range_table_sample__init - (PgQuery__RangeTableSample *message) +void pg_query__inline_code_block__init + (PgQuery__InlineCodeBlock *message) { - static const PgQuery__RangeTableSample init_value = PG_QUERY__RANGE_TABLE_SAMPLE__INIT; + static const PgQuery__InlineCodeBlock init_value = PG_QUERY__INLINE_CODE_BLOCK__INIT; *message = init_value; } -size_t pg_query__range_table_sample__get_packed_size - (const PgQuery__RangeTableSample *message) +size_t pg_query__inline_code_block__get_packed_size + (const PgQuery__InlineCodeBlock *message) { - assert(message->base.descriptor == &pg_query__range_table_sample__descriptor); + assert(message->base.descriptor == &pg_query__inline_code_block__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__range_table_sample__pack - (const PgQuery__RangeTableSample *message, +size_t pg_query__inline_code_block__pack + (const PgQuery__InlineCodeBlock *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__range_table_sample__descriptor); + assert(message->base.descriptor == &pg_query__inline_code_block__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__range_table_sample__pack_to_buffer - (const PgQuery__RangeTableSample *message, +size_t pg_query__inline_code_block__pack_to_buffer + (const PgQuery__InlineCodeBlock *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__range_table_sample__descriptor); + assert(message->base.descriptor == &pg_query__inline_code_block__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RangeTableSample * - pg_query__range_table_sample__unpack +PgQuery__InlineCodeBlock * + pg_query__inline_code_block__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RangeTableSample *) - protobuf_c_message_unpack (&pg_query__range_table_sample__descriptor, + return (PgQuery__InlineCodeBlock *) + protobuf_c_message_unpack (&pg_query__inline_code_block__descriptor, allocator, len, data); } -void pg_query__range_table_sample__free_unpacked - (PgQuery__RangeTableSample *message, +void pg_query__inline_code_block__free_unpacked + (PgQuery__InlineCodeBlock *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__range_table_sample__descriptor); + assert(message->base.descriptor == &pg_query__inline_code_block__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__range_table_func__init - (PgQuery__RangeTableFunc *message) +void pg_query__call_stmt__init + (PgQuery__CallStmt *message) { - static const PgQuery__RangeTableFunc init_value = PG_QUERY__RANGE_TABLE_FUNC__INIT; + static const PgQuery__CallStmt init_value = PG_QUERY__CALL_STMT__INIT; *message = init_value; } -size_t pg_query__range_table_func__get_packed_size - (const PgQuery__RangeTableFunc *message) +size_t pg_query__call_stmt__get_packed_size + (const PgQuery__CallStmt *message) { - assert(message->base.descriptor == &pg_query__range_table_func__descriptor); + assert(message->base.descriptor == &pg_query__call_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__range_table_func__pack - (const PgQuery__RangeTableFunc *message, +size_t pg_query__call_stmt__pack + (const PgQuery__CallStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__range_table_func__descriptor); + assert(message->base.descriptor == &pg_query__call_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__range_table_func__pack_to_buffer - (const PgQuery__RangeTableFunc *message, +size_t pg_query__call_stmt__pack_to_buffer + (const PgQuery__CallStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__range_table_func__descriptor); + assert(message->base.descriptor == &pg_query__call_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RangeTableFunc * - pg_query__range_table_func__unpack +PgQuery__CallStmt * + pg_query__call_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RangeTableFunc *) - protobuf_c_message_unpack (&pg_query__range_table_func__descriptor, + return (PgQuery__CallStmt *) + protobuf_c_message_unpack (&pg_query__call_stmt__descriptor, allocator, len, data); } -void pg_query__range_table_func__free_unpacked - (PgQuery__RangeTableFunc *message, +void pg_query__call_stmt__free_unpacked + (PgQuery__CallStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__range_table_func__descriptor); + assert(message->base.descriptor == &pg_query__call_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__range_table_func_col__init - (PgQuery__RangeTableFuncCol *message) +void pg_query__call_context__init + (PgQuery__CallContext *message) { - static const PgQuery__RangeTableFuncCol init_value = PG_QUERY__RANGE_TABLE_FUNC_COL__INIT; + static const PgQuery__CallContext init_value = PG_QUERY__CALL_CONTEXT__INIT; *message = init_value; } -size_t pg_query__range_table_func_col__get_packed_size - (const PgQuery__RangeTableFuncCol *message) +size_t pg_query__call_context__get_packed_size + (const PgQuery__CallContext *message) { - assert(message->base.descriptor == &pg_query__range_table_func_col__descriptor); + assert(message->base.descriptor == &pg_query__call_context__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__range_table_func_col__pack - (const PgQuery__RangeTableFuncCol *message, +size_t pg_query__call_context__pack + (const PgQuery__CallContext *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__range_table_func_col__descriptor); + assert(message->base.descriptor == &pg_query__call_context__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__range_table_func_col__pack_to_buffer - (const PgQuery__RangeTableFuncCol *message, +size_t pg_query__call_context__pack_to_buffer + (const PgQuery__CallContext *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__range_table_func_col__descriptor); + assert(message->base.descriptor == &pg_query__call_context__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RangeTableFuncCol * - pg_query__range_table_func_col__unpack +PgQuery__CallContext * + pg_query__call_context__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RangeTableFuncCol *) - protobuf_c_message_unpack (&pg_query__range_table_func_col__descriptor, + return (PgQuery__CallContext *) + protobuf_c_message_unpack (&pg_query__call_context__descriptor, allocator, len, data); } -void pg_query__range_table_func_col__free_unpacked - (PgQuery__RangeTableFuncCol *message, +void pg_query__call_context__free_unpacked + (PgQuery__CallContext *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__range_table_func_col__descriptor); + assert(message->base.descriptor == &pg_query__call_context__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__type_name__init - (PgQuery__TypeName *message) +void pg_query__rename_stmt__init + (PgQuery__RenameStmt *message) { - static const PgQuery__TypeName init_value = PG_QUERY__TYPE_NAME__INIT; + static const PgQuery__RenameStmt init_value = PG_QUERY__RENAME_STMT__INIT; *message = init_value; } -size_t pg_query__type_name__get_packed_size - (const PgQuery__TypeName *message) +size_t pg_query__rename_stmt__get_packed_size + (const PgQuery__RenameStmt *message) { - assert(message->base.descriptor == &pg_query__type_name__descriptor); + assert(message->base.descriptor == &pg_query__rename_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__type_name__pack - (const PgQuery__TypeName *message, +size_t pg_query__rename_stmt__pack + (const PgQuery__RenameStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__type_name__descriptor); + assert(message->base.descriptor == &pg_query__rename_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__type_name__pack_to_buffer - (const PgQuery__TypeName *message, +size_t pg_query__rename_stmt__pack_to_buffer + (const PgQuery__RenameStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__type_name__descriptor); + assert(message->base.descriptor == &pg_query__rename_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__TypeName * - pg_query__type_name__unpack +PgQuery__RenameStmt * + pg_query__rename_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__TypeName *) - protobuf_c_message_unpack (&pg_query__type_name__descriptor, + return (PgQuery__RenameStmt *) + protobuf_c_message_unpack (&pg_query__rename_stmt__descriptor, allocator, len, data); } -void pg_query__type_name__free_unpacked - (PgQuery__TypeName *message, +void pg_query__rename_stmt__free_unpacked + (PgQuery__RenameStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__type_name__descriptor); + assert(message->base.descriptor == &pg_query__rename_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__column_def__init - (PgQuery__ColumnDef *message) +void pg_query__alter_object_depends_stmt__init + (PgQuery__AlterObjectDependsStmt *message) { - static const PgQuery__ColumnDef init_value = PG_QUERY__COLUMN_DEF__INIT; + static const PgQuery__AlterObjectDependsStmt init_value = PG_QUERY__ALTER_OBJECT_DEPENDS_STMT__INIT; *message = init_value; } -size_t pg_query__column_def__get_packed_size - (const PgQuery__ColumnDef *message) +size_t pg_query__alter_object_depends_stmt__get_packed_size + (const PgQuery__AlterObjectDependsStmt *message) { - assert(message->base.descriptor == &pg_query__column_def__descriptor); + assert(message->base.descriptor == &pg_query__alter_object_depends_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__column_def__pack - (const PgQuery__ColumnDef *message, +size_t pg_query__alter_object_depends_stmt__pack + (const PgQuery__AlterObjectDependsStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__column_def__descriptor); + assert(message->base.descriptor == &pg_query__alter_object_depends_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__column_def__pack_to_buffer - (const PgQuery__ColumnDef *message, +size_t pg_query__alter_object_depends_stmt__pack_to_buffer + (const PgQuery__AlterObjectDependsStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__column_def__descriptor); + assert(message->base.descriptor == &pg_query__alter_object_depends_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ColumnDef * - pg_query__column_def__unpack +PgQuery__AlterObjectDependsStmt * + pg_query__alter_object_depends_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ColumnDef *) - protobuf_c_message_unpack (&pg_query__column_def__descriptor, + return (PgQuery__AlterObjectDependsStmt *) + protobuf_c_message_unpack (&pg_query__alter_object_depends_stmt__descriptor, allocator, len, data); } -void pg_query__column_def__free_unpacked - (PgQuery__ColumnDef *message, +void pg_query__alter_object_depends_stmt__free_unpacked + (PgQuery__AlterObjectDependsStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__column_def__descriptor); + assert(message->base.descriptor == &pg_query__alter_object_depends_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__index_elem__init - (PgQuery__IndexElem *message) +void pg_query__alter_object_schema_stmt__init + (PgQuery__AlterObjectSchemaStmt *message) { - static const PgQuery__IndexElem init_value = PG_QUERY__INDEX_ELEM__INIT; + static const PgQuery__AlterObjectSchemaStmt init_value = PG_QUERY__ALTER_OBJECT_SCHEMA_STMT__INIT; *message = init_value; } -size_t pg_query__index_elem__get_packed_size - (const PgQuery__IndexElem *message) +size_t pg_query__alter_object_schema_stmt__get_packed_size + (const PgQuery__AlterObjectSchemaStmt *message) { - assert(message->base.descriptor == &pg_query__index_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_object_schema_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__index_elem__pack - (const PgQuery__IndexElem *message, +size_t pg_query__alter_object_schema_stmt__pack + (const PgQuery__AlterObjectSchemaStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__index_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_object_schema_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__index_elem__pack_to_buffer - (const PgQuery__IndexElem *message, +size_t pg_query__alter_object_schema_stmt__pack_to_buffer + (const PgQuery__AlterObjectSchemaStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__index_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_object_schema_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__IndexElem * - pg_query__index_elem__unpack +PgQuery__AlterObjectSchemaStmt * + pg_query__alter_object_schema_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__IndexElem *) - protobuf_c_message_unpack (&pg_query__index_elem__descriptor, + return (PgQuery__AlterObjectSchemaStmt *) + protobuf_c_message_unpack (&pg_query__alter_object_schema_stmt__descriptor, allocator, len, data); } -void pg_query__index_elem__free_unpacked - (PgQuery__IndexElem *message, +void pg_query__alter_object_schema_stmt__free_unpacked + (PgQuery__AlterObjectSchemaStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__index_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_object_schema_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__stats_elem__init - (PgQuery__StatsElem *message) +void pg_query__alter_owner_stmt__init + (PgQuery__AlterOwnerStmt *message) { - static const PgQuery__StatsElem init_value = PG_QUERY__STATS_ELEM__INIT; + static const PgQuery__AlterOwnerStmt init_value = PG_QUERY__ALTER_OWNER_STMT__INIT; *message = init_value; } -size_t pg_query__stats_elem__get_packed_size - (const PgQuery__StatsElem *message) +size_t pg_query__alter_owner_stmt__get_packed_size + (const PgQuery__AlterOwnerStmt *message) { - assert(message->base.descriptor == &pg_query__stats_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_owner_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__stats_elem__pack - (const PgQuery__StatsElem *message, +size_t pg_query__alter_owner_stmt__pack + (const PgQuery__AlterOwnerStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__stats_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_owner_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__stats_elem__pack_to_buffer - (const PgQuery__StatsElem *message, +size_t pg_query__alter_owner_stmt__pack_to_buffer + (const PgQuery__AlterOwnerStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__stats_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_owner_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__StatsElem * - pg_query__stats_elem__unpack +PgQuery__AlterOwnerStmt * + pg_query__alter_owner_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__StatsElem *) - protobuf_c_message_unpack (&pg_query__stats_elem__descriptor, + return (PgQuery__AlterOwnerStmt *) + protobuf_c_message_unpack (&pg_query__alter_owner_stmt__descriptor, allocator, len, data); } -void pg_query__stats_elem__free_unpacked - (PgQuery__StatsElem *message, +void pg_query__alter_owner_stmt__free_unpacked + (PgQuery__AlterOwnerStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__stats_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_owner_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__constraint__init - (PgQuery__Constraint *message) -{ - static const PgQuery__Constraint init_value = PG_QUERY__CONSTRAINT__INIT; +void pg_query__alter_operator_stmt__init + (PgQuery__AlterOperatorStmt *message) +{ + static const PgQuery__AlterOperatorStmt init_value = PG_QUERY__ALTER_OPERATOR_STMT__INIT; *message = init_value; } -size_t pg_query__constraint__get_packed_size - (const PgQuery__Constraint *message) +size_t pg_query__alter_operator_stmt__get_packed_size + (const PgQuery__AlterOperatorStmt *message) { - assert(message->base.descriptor == &pg_query__constraint__descriptor); + assert(message->base.descriptor == &pg_query__alter_operator_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__constraint__pack - (const PgQuery__Constraint *message, +size_t pg_query__alter_operator_stmt__pack + (const PgQuery__AlterOperatorStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__constraint__descriptor); + assert(message->base.descriptor == &pg_query__alter_operator_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__constraint__pack_to_buffer - (const PgQuery__Constraint *message, +size_t pg_query__alter_operator_stmt__pack_to_buffer + (const PgQuery__AlterOperatorStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__constraint__descriptor); + assert(message->base.descriptor == &pg_query__alter_operator_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__Constraint * - pg_query__constraint__unpack +PgQuery__AlterOperatorStmt * + pg_query__alter_operator_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__Constraint *) - protobuf_c_message_unpack (&pg_query__constraint__descriptor, + return (PgQuery__AlterOperatorStmt *) + protobuf_c_message_unpack (&pg_query__alter_operator_stmt__descriptor, allocator, len, data); } -void pg_query__constraint__free_unpacked - (PgQuery__Constraint *message, +void pg_query__alter_operator_stmt__free_unpacked + (PgQuery__AlterOperatorStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__constraint__descriptor); + assert(message->base.descriptor == &pg_query__alter_operator_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__def_elem__init - (PgQuery__DefElem *message) +void pg_query__alter_type_stmt__init + (PgQuery__AlterTypeStmt *message) { - static const PgQuery__DefElem init_value = PG_QUERY__DEF_ELEM__INIT; + static const PgQuery__AlterTypeStmt init_value = PG_QUERY__ALTER_TYPE_STMT__INIT; *message = init_value; } -size_t pg_query__def_elem__get_packed_size - (const PgQuery__DefElem *message) +size_t pg_query__alter_type_stmt__get_packed_size + (const PgQuery__AlterTypeStmt *message) { - assert(message->base.descriptor == &pg_query__def_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_type_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__def_elem__pack - (const PgQuery__DefElem *message, +size_t pg_query__alter_type_stmt__pack + (const PgQuery__AlterTypeStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__def_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_type_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__def_elem__pack_to_buffer - (const PgQuery__DefElem *message, +size_t pg_query__alter_type_stmt__pack_to_buffer + (const PgQuery__AlterTypeStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__def_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_type_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__DefElem * - pg_query__def_elem__unpack +PgQuery__AlterTypeStmt * + pg_query__alter_type_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__DefElem *) - protobuf_c_message_unpack (&pg_query__def_elem__descriptor, + return (PgQuery__AlterTypeStmt *) + protobuf_c_message_unpack (&pg_query__alter_type_stmt__descriptor, allocator, len, data); } -void pg_query__def_elem__free_unpacked - (PgQuery__DefElem *message, +void pg_query__alter_type_stmt__free_unpacked + (PgQuery__AlterTypeStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__def_elem__descriptor); + assert(message->base.descriptor == &pg_query__alter_type_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__range_tbl_entry__init - (PgQuery__RangeTblEntry *message) +void pg_query__rule_stmt__init + (PgQuery__RuleStmt *message) { - static const PgQuery__RangeTblEntry init_value = PG_QUERY__RANGE_TBL_ENTRY__INIT; + static const PgQuery__RuleStmt init_value = PG_QUERY__RULE_STMT__INIT; *message = init_value; } -size_t pg_query__range_tbl_entry__get_packed_size - (const PgQuery__RangeTblEntry *message) +size_t pg_query__rule_stmt__get_packed_size + (const PgQuery__RuleStmt *message) { - assert(message->base.descriptor == &pg_query__range_tbl_entry__descriptor); + assert(message->base.descriptor == &pg_query__rule_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__range_tbl_entry__pack - (const PgQuery__RangeTblEntry *message, +size_t pg_query__rule_stmt__pack + (const PgQuery__RuleStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__range_tbl_entry__descriptor); + assert(message->base.descriptor == &pg_query__rule_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__range_tbl_entry__pack_to_buffer - (const PgQuery__RangeTblEntry *message, +size_t pg_query__rule_stmt__pack_to_buffer + (const PgQuery__RuleStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__range_tbl_entry__descriptor); + assert(message->base.descriptor == &pg_query__rule_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RangeTblEntry * - pg_query__range_tbl_entry__unpack +PgQuery__RuleStmt * + pg_query__rule_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RangeTblEntry *) - protobuf_c_message_unpack (&pg_query__range_tbl_entry__descriptor, + return (PgQuery__RuleStmt *) + protobuf_c_message_unpack (&pg_query__rule_stmt__descriptor, allocator, len, data); } -void pg_query__range_tbl_entry__free_unpacked - (PgQuery__RangeTblEntry *message, +void pg_query__rule_stmt__free_unpacked + (PgQuery__RuleStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__range_tbl_entry__descriptor); + assert(message->base.descriptor == &pg_query__rule_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__range_tbl_function__init - (PgQuery__RangeTblFunction *message) +void pg_query__notify_stmt__init + (PgQuery__NotifyStmt *message) { - static const PgQuery__RangeTblFunction init_value = PG_QUERY__RANGE_TBL_FUNCTION__INIT; + static const PgQuery__NotifyStmt init_value = PG_QUERY__NOTIFY_STMT__INIT; *message = init_value; } -size_t pg_query__range_tbl_function__get_packed_size - (const PgQuery__RangeTblFunction *message) +size_t pg_query__notify_stmt__get_packed_size + (const PgQuery__NotifyStmt *message) { - assert(message->base.descriptor == &pg_query__range_tbl_function__descriptor); + assert(message->base.descriptor == &pg_query__notify_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__range_tbl_function__pack - (const PgQuery__RangeTblFunction *message, +size_t pg_query__notify_stmt__pack + (const PgQuery__NotifyStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__range_tbl_function__descriptor); + assert(message->base.descriptor == &pg_query__notify_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__range_tbl_function__pack_to_buffer - (const PgQuery__RangeTblFunction *message, +size_t pg_query__notify_stmt__pack_to_buffer + (const PgQuery__NotifyStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__range_tbl_function__descriptor); + assert(message->base.descriptor == &pg_query__notify_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RangeTblFunction * - pg_query__range_tbl_function__unpack +PgQuery__NotifyStmt * + pg_query__notify_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RangeTblFunction *) - protobuf_c_message_unpack (&pg_query__range_tbl_function__descriptor, + return (PgQuery__NotifyStmt *) + protobuf_c_message_unpack (&pg_query__notify_stmt__descriptor, allocator, len, data); } -void pg_query__range_tbl_function__free_unpacked - (PgQuery__RangeTblFunction *message, +void pg_query__notify_stmt__free_unpacked + (PgQuery__NotifyStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__range_tbl_function__descriptor); + assert(message->base.descriptor == &pg_query__notify_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__table_sample_clause__init - (PgQuery__TableSampleClause *message) +void pg_query__listen_stmt__init + (PgQuery__ListenStmt *message) { - static const PgQuery__TableSampleClause init_value = PG_QUERY__TABLE_SAMPLE_CLAUSE__INIT; + static const PgQuery__ListenStmt init_value = PG_QUERY__LISTEN_STMT__INIT; *message = init_value; } -size_t pg_query__table_sample_clause__get_packed_size - (const PgQuery__TableSampleClause *message) +size_t pg_query__listen_stmt__get_packed_size + (const PgQuery__ListenStmt *message) { - assert(message->base.descriptor == &pg_query__table_sample_clause__descriptor); + assert(message->base.descriptor == &pg_query__listen_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__table_sample_clause__pack - (const PgQuery__TableSampleClause *message, +size_t pg_query__listen_stmt__pack + (const PgQuery__ListenStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__table_sample_clause__descriptor); + assert(message->base.descriptor == &pg_query__listen_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__table_sample_clause__pack_to_buffer - (const PgQuery__TableSampleClause *message, +size_t pg_query__listen_stmt__pack_to_buffer + (const PgQuery__ListenStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__table_sample_clause__descriptor); + assert(message->base.descriptor == &pg_query__listen_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__TableSampleClause * - pg_query__table_sample_clause__unpack +PgQuery__ListenStmt * + pg_query__listen_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__TableSampleClause *) - protobuf_c_message_unpack (&pg_query__table_sample_clause__descriptor, + return (PgQuery__ListenStmt *) + protobuf_c_message_unpack (&pg_query__listen_stmt__descriptor, allocator, len, data); } -void pg_query__table_sample_clause__free_unpacked - (PgQuery__TableSampleClause *message, +void pg_query__listen_stmt__free_unpacked + (PgQuery__ListenStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__table_sample_clause__descriptor); + assert(message->base.descriptor == &pg_query__listen_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__with_check_option__init - (PgQuery__WithCheckOption *message) +void pg_query__unlisten_stmt__init + (PgQuery__UnlistenStmt *message) { - static const PgQuery__WithCheckOption init_value = PG_QUERY__WITH_CHECK_OPTION__INIT; + static const PgQuery__UnlistenStmt init_value = PG_QUERY__UNLISTEN_STMT__INIT; *message = init_value; } -size_t pg_query__with_check_option__get_packed_size - (const PgQuery__WithCheckOption *message) +size_t pg_query__unlisten_stmt__get_packed_size + (const PgQuery__UnlistenStmt *message) { - assert(message->base.descriptor == &pg_query__with_check_option__descriptor); + assert(message->base.descriptor == &pg_query__unlisten_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__with_check_option__pack - (const PgQuery__WithCheckOption *message, +size_t pg_query__unlisten_stmt__pack + (const PgQuery__UnlistenStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__with_check_option__descriptor); + assert(message->base.descriptor == &pg_query__unlisten_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__with_check_option__pack_to_buffer - (const PgQuery__WithCheckOption *message, +size_t pg_query__unlisten_stmt__pack_to_buffer + (const PgQuery__UnlistenStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__with_check_option__descriptor); + assert(message->base.descriptor == &pg_query__unlisten_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__WithCheckOption * - pg_query__with_check_option__unpack +PgQuery__UnlistenStmt * + pg_query__unlisten_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__WithCheckOption *) - protobuf_c_message_unpack (&pg_query__with_check_option__descriptor, + return (PgQuery__UnlistenStmt *) + protobuf_c_message_unpack (&pg_query__unlisten_stmt__descriptor, allocator, len, data); } -void pg_query__with_check_option__free_unpacked - (PgQuery__WithCheckOption *message, +void pg_query__unlisten_stmt__free_unpacked + (PgQuery__UnlistenStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__with_check_option__descriptor); + assert(message->base.descriptor == &pg_query__unlisten_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__sort_group_clause__init - (PgQuery__SortGroupClause *message) +void pg_query__transaction_stmt__init + (PgQuery__TransactionStmt *message) { - static const PgQuery__SortGroupClause init_value = PG_QUERY__SORT_GROUP_CLAUSE__INIT; + static const PgQuery__TransactionStmt init_value = PG_QUERY__TRANSACTION_STMT__INIT; *message = init_value; } -size_t pg_query__sort_group_clause__get_packed_size - (const PgQuery__SortGroupClause *message) +size_t pg_query__transaction_stmt__get_packed_size + (const PgQuery__TransactionStmt *message) { - assert(message->base.descriptor == &pg_query__sort_group_clause__descriptor); + assert(message->base.descriptor == &pg_query__transaction_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__sort_group_clause__pack - (const PgQuery__SortGroupClause *message, +size_t pg_query__transaction_stmt__pack + (const PgQuery__TransactionStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__sort_group_clause__descriptor); + assert(message->base.descriptor == &pg_query__transaction_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__sort_group_clause__pack_to_buffer - (const PgQuery__SortGroupClause *message, +size_t pg_query__transaction_stmt__pack_to_buffer + (const PgQuery__TransactionStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__sort_group_clause__descriptor); + assert(message->base.descriptor == &pg_query__transaction_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__SortGroupClause * - pg_query__sort_group_clause__unpack +PgQuery__TransactionStmt * + pg_query__transaction_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__SortGroupClause *) - protobuf_c_message_unpack (&pg_query__sort_group_clause__descriptor, + return (PgQuery__TransactionStmt *) + protobuf_c_message_unpack (&pg_query__transaction_stmt__descriptor, allocator, len, data); } -void pg_query__sort_group_clause__free_unpacked - (PgQuery__SortGroupClause *message, +void pg_query__transaction_stmt__free_unpacked + (PgQuery__TransactionStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__sort_group_clause__descriptor); + assert(message->base.descriptor == &pg_query__transaction_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__grouping_set__init - (PgQuery__GroupingSet *message) +void pg_query__composite_type_stmt__init + (PgQuery__CompositeTypeStmt *message) { - static const PgQuery__GroupingSet init_value = PG_QUERY__GROUPING_SET__INIT; + static const PgQuery__CompositeTypeStmt init_value = PG_QUERY__COMPOSITE_TYPE_STMT__INIT; *message = init_value; } -size_t pg_query__grouping_set__get_packed_size - (const PgQuery__GroupingSet *message) +size_t pg_query__composite_type_stmt__get_packed_size + (const PgQuery__CompositeTypeStmt *message) { - assert(message->base.descriptor == &pg_query__grouping_set__descriptor); + assert(message->base.descriptor == &pg_query__composite_type_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__grouping_set__pack - (const PgQuery__GroupingSet *message, +size_t pg_query__composite_type_stmt__pack + (const PgQuery__CompositeTypeStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__grouping_set__descriptor); + assert(message->base.descriptor == &pg_query__composite_type_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__grouping_set__pack_to_buffer - (const PgQuery__GroupingSet *message, +size_t pg_query__composite_type_stmt__pack_to_buffer + (const PgQuery__CompositeTypeStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__grouping_set__descriptor); + assert(message->base.descriptor == &pg_query__composite_type_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__GroupingSet * - pg_query__grouping_set__unpack +PgQuery__CompositeTypeStmt * + pg_query__composite_type_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__GroupingSet *) - protobuf_c_message_unpack (&pg_query__grouping_set__descriptor, + return (PgQuery__CompositeTypeStmt *) + protobuf_c_message_unpack (&pg_query__composite_type_stmt__descriptor, allocator, len, data); } -void pg_query__grouping_set__free_unpacked - (PgQuery__GroupingSet *message, +void pg_query__composite_type_stmt__free_unpacked + (PgQuery__CompositeTypeStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__grouping_set__descriptor); + assert(message->base.descriptor == &pg_query__composite_type_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__window_clause__init - (PgQuery__WindowClause *message) +void pg_query__create_enum_stmt__init + (PgQuery__CreateEnumStmt *message) { - static const PgQuery__WindowClause init_value = PG_QUERY__WINDOW_CLAUSE__INIT; + static const PgQuery__CreateEnumStmt init_value = PG_QUERY__CREATE_ENUM_STMT__INIT; *message = init_value; } -size_t pg_query__window_clause__get_packed_size - (const PgQuery__WindowClause *message) +size_t pg_query__create_enum_stmt__get_packed_size + (const PgQuery__CreateEnumStmt *message) { - assert(message->base.descriptor == &pg_query__window_clause__descriptor); + assert(message->base.descriptor == &pg_query__create_enum_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__window_clause__pack - (const PgQuery__WindowClause *message, +size_t pg_query__create_enum_stmt__pack + (const PgQuery__CreateEnumStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__window_clause__descriptor); + assert(message->base.descriptor == &pg_query__create_enum_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__window_clause__pack_to_buffer - (const PgQuery__WindowClause *message, +size_t pg_query__create_enum_stmt__pack_to_buffer + (const PgQuery__CreateEnumStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__window_clause__descriptor); + assert(message->base.descriptor == &pg_query__create_enum_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__WindowClause * - pg_query__window_clause__unpack +PgQuery__CreateEnumStmt * + pg_query__create_enum_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__WindowClause *) - protobuf_c_message_unpack (&pg_query__window_clause__descriptor, + return (PgQuery__CreateEnumStmt *) + protobuf_c_message_unpack (&pg_query__create_enum_stmt__descriptor, allocator, len, data); } -void pg_query__window_clause__free_unpacked - (PgQuery__WindowClause *message, +void pg_query__create_enum_stmt__free_unpacked + (PgQuery__CreateEnumStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__window_clause__descriptor); + assert(message->base.descriptor == &pg_query__create_enum_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__object_with_args__init - (PgQuery__ObjectWithArgs *message) +void pg_query__create_range_stmt__init + (PgQuery__CreateRangeStmt *message) { - static const PgQuery__ObjectWithArgs init_value = PG_QUERY__OBJECT_WITH_ARGS__INIT; + static const PgQuery__CreateRangeStmt init_value = PG_QUERY__CREATE_RANGE_STMT__INIT; *message = init_value; } -size_t pg_query__object_with_args__get_packed_size - (const PgQuery__ObjectWithArgs *message) +size_t pg_query__create_range_stmt__get_packed_size + (const PgQuery__CreateRangeStmt *message) { - assert(message->base.descriptor == &pg_query__object_with_args__descriptor); + assert(message->base.descriptor == &pg_query__create_range_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__object_with_args__pack - (const PgQuery__ObjectWithArgs *message, +size_t pg_query__create_range_stmt__pack + (const PgQuery__CreateRangeStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__object_with_args__descriptor); + assert(message->base.descriptor == &pg_query__create_range_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__object_with_args__pack_to_buffer - (const PgQuery__ObjectWithArgs *message, +size_t pg_query__create_range_stmt__pack_to_buffer + (const PgQuery__CreateRangeStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__object_with_args__descriptor); + assert(message->base.descriptor == &pg_query__create_range_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ObjectWithArgs * - pg_query__object_with_args__unpack +PgQuery__CreateRangeStmt * + pg_query__create_range_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ObjectWithArgs *) - protobuf_c_message_unpack (&pg_query__object_with_args__descriptor, + return (PgQuery__CreateRangeStmt *) + protobuf_c_message_unpack (&pg_query__create_range_stmt__descriptor, allocator, len, data); } -void pg_query__object_with_args__free_unpacked - (PgQuery__ObjectWithArgs *message, +void pg_query__create_range_stmt__free_unpacked + (PgQuery__CreateRangeStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__object_with_args__descriptor); + assert(message->base.descriptor == &pg_query__create_range_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__access_priv__init - (PgQuery__AccessPriv *message) +void pg_query__alter_enum_stmt__init + (PgQuery__AlterEnumStmt *message) { - static const PgQuery__AccessPriv init_value = PG_QUERY__ACCESS_PRIV__INIT; + static const PgQuery__AlterEnumStmt init_value = PG_QUERY__ALTER_ENUM_STMT__INIT; *message = init_value; } -size_t pg_query__access_priv__get_packed_size - (const PgQuery__AccessPriv *message) +size_t pg_query__alter_enum_stmt__get_packed_size + (const PgQuery__AlterEnumStmt *message) { - assert(message->base.descriptor == &pg_query__access_priv__descriptor); + assert(message->base.descriptor == &pg_query__alter_enum_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__access_priv__pack - (const PgQuery__AccessPriv *message, +size_t pg_query__alter_enum_stmt__pack + (const PgQuery__AlterEnumStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__access_priv__descriptor); + assert(message->base.descriptor == &pg_query__alter_enum_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__access_priv__pack_to_buffer - (const PgQuery__AccessPriv *message, +size_t pg_query__alter_enum_stmt__pack_to_buffer + (const PgQuery__AlterEnumStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__access_priv__descriptor); + assert(message->base.descriptor == &pg_query__alter_enum_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__AccessPriv * - pg_query__access_priv__unpack +PgQuery__AlterEnumStmt * + pg_query__alter_enum_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__AccessPriv *) - protobuf_c_message_unpack (&pg_query__access_priv__descriptor, + return (PgQuery__AlterEnumStmt *) + protobuf_c_message_unpack (&pg_query__alter_enum_stmt__descriptor, allocator, len, data); } -void pg_query__access_priv__free_unpacked - (PgQuery__AccessPriv *message, +void pg_query__alter_enum_stmt__free_unpacked + (PgQuery__AlterEnumStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__access_priv__descriptor); + assert(message->base.descriptor == &pg_query__alter_enum_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__create_op_class_item__init - (PgQuery__CreateOpClassItem *message) +void pg_query__view_stmt__init + (PgQuery__ViewStmt *message) { - static const PgQuery__CreateOpClassItem init_value = PG_QUERY__CREATE_OP_CLASS_ITEM__INIT; + static const PgQuery__ViewStmt init_value = PG_QUERY__VIEW_STMT__INIT; *message = init_value; } -size_t pg_query__create_op_class_item__get_packed_size - (const PgQuery__CreateOpClassItem *message) +size_t pg_query__view_stmt__get_packed_size + (const PgQuery__ViewStmt *message) { - assert(message->base.descriptor == &pg_query__create_op_class_item__descriptor); + assert(message->base.descriptor == &pg_query__view_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__create_op_class_item__pack - (const PgQuery__CreateOpClassItem *message, +size_t pg_query__view_stmt__pack + (const PgQuery__ViewStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__create_op_class_item__descriptor); + assert(message->base.descriptor == &pg_query__view_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__create_op_class_item__pack_to_buffer - (const PgQuery__CreateOpClassItem *message, +size_t pg_query__view_stmt__pack_to_buffer + (const PgQuery__ViewStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__create_op_class_item__descriptor); + assert(message->base.descriptor == &pg_query__view_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CreateOpClassItem * - pg_query__create_op_class_item__unpack +PgQuery__ViewStmt * + pg_query__view_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CreateOpClassItem *) - protobuf_c_message_unpack (&pg_query__create_op_class_item__descriptor, + return (PgQuery__ViewStmt *) + protobuf_c_message_unpack (&pg_query__view_stmt__descriptor, allocator, len, data); } -void pg_query__create_op_class_item__free_unpacked - (PgQuery__CreateOpClassItem *message, +void pg_query__view_stmt__free_unpacked + (PgQuery__ViewStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__create_op_class_item__descriptor); + assert(message->base.descriptor == &pg_query__view_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__table_like_clause__init - (PgQuery__TableLikeClause *message) +void pg_query__load_stmt__init + (PgQuery__LoadStmt *message) { - static const PgQuery__TableLikeClause init_value = PG_QUERY__TABLE_LIKE_CLAUSE__INIT; + static const PgQuery__LoadStmt init_value = PG_QUERY__LOAD_STMT__INIT; *message = init_value; } -size_t pg_query__table_like_clause__get_packed_size - (const PgQuery__TableLikeClause *message) +size_t pg_query__load_stmt__get_packed_size + (const PgQuery__LoadStmt *message) { - assert(message->base.descriptor == &pg_query__table_like_clause__descriptor); + assert(message->base.descriptor == &pg_query__load_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__table_like_clause__pack - (const PgQuery__TableLikeClause *message, +size_t pg_query__load_stmt__pack + (const PgQuery__LoadStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__table_like_clause__descriptor); + assert(message->base.descriptor == &pg_query__load_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__table_like_clause__pack_to_buffer - (const PgQuery__TableLikeClause *message, +size_t pg_query__load_stmt__pack_to_buffer + (const PgQuery__LoadStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__table_like_clause__descriptor); + assert(message->base.descriptor == &pg_query__load_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__TableLikeClause * - pg_query__table_like_clause__unpack +PgQuery__LoadStmt * + pg_query__load_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__TableLikeClause *) - protobuf_c_message_unpack (&pg_query__table_like_clause__descriptor, + return (PgQuery__LoadStmt *) + protobuf_c_message_unpack (&pg_query__load_stmt__descriptor, allocator, len, data); } -void pg_query__table_like_clause__free_unpacked - (PgQuery__TableLikeClause *message, +void pg_query__load_stmt__free_unpacked + (PgQuery__LoadStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__table_like_clause__descriptor); + assert(message->base.descriptor == &pg_query__load_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__function_parameter__init - (PgQuery__FunctionParameter *message) +void pg_query__createdb_stmt__init + (PgQuery__CreatedbStmt *message) { - static const PgQuery__FunctionParameter init_value = PG_QUERY__FUNCTION_PARAMETER__INIT; + static const PgQuery__CreatedbStmt init_value = PG_QUERY__CREATEDB_STMT__INIT; *message = init_value; } -size_t pg_query__function_parameter__get_packed_size - (const PgQuery__FunctionParameter *message) +size_t pg_query__createdb_stmt__get_packed_size + (const PgQuery__CreatedbStmt *message) { - assert(message->base.descriptor == &pg_query__function_parameter__descriptor); + assert(message->base.descriptor == &pg_query__createdb_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__function_parameter__pack - (const PgQuery__FunctionParameter *message, +size_t pg_query__createdb_stmt__pack + (const PgQuery__CreatedbStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__function_parameter__descriptor); + assert(message->base.descriptor == &pg_query__createdb_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__function_parameter__pack_to_buffer - (const PgQuery__FunctionParameter *message, +size_t pg_query__createdb_stmt__pack_to_buffer + (const PgQuery__CreatedbStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__function_parameter__descriptor); + assert(message->base.descriptor == &pg_query__createdb_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__FunctionParameter * - pg_query__function_parameter__unpack +PgQuery__CreatedbStmt * + pg_query__createdb_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__FunctionParameter *) - protobuf_c_message_unpack (&pg_query__function_parameter__descriptor, + return (PgQuery__CreatedbStmt *) + protobuf_c_message_unpack (&pg_query__createdb_stmt__descriptor, allocator, len, data); } -void pg_query__function_parameter__free_unpacked - (PgQuery__FunctionParameter *message, +void pg_query__createdb_stmt__free_unpacked + (PgQuery__CreatedbStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__function_parameter__descriptor); + assert(message->base.descriptor == &pg_query__createdb_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__locking_clause__init - (PgQuery__LockingClause *message) +void pg_query__alter_database_stmt__init + (PgQuery__AlterDatabaseStmt *message) { - static const PgQuery__LockingClause init_value = PG_QUERY__LOCKING_CLAUSE__INIT; + static const PgQuery__AlterDatabaseStmt init_value = PG_QUERY__ALTER_DATABASE_STMT__INIT; *message = init_value; } -size_t pg_query__locking_clause__get_packed_size - (const PgQuery__LockingClause *message) +size_t pg_query__alter_database_stmt__get_packed_size + (const PgQuery__AlterDatabaseStmt *message) { - assert(message->base.descriptor == &pg_query__locking_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__locking_clause__pack - (const PgQuery__LockingClause *message, +size_t pg_query__alter_database_stmt__pack + (const PgQuery__AlterDatabaseStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__locking_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__locking_clause__pack_to_buffer - (const PgQuery__LockingClause *message, +size_t pg_query__alter_database_stmt__pack_to_buffer + (const PgQuery__AlterDatabaseStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__locking_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__LockingClause * - pg_query__locking_clause__unpack +PgQuery__AlterDatabaseStmt * + pg_query__alter_database_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__LockingClause *) - protobuf_c_message_unpack (&pg_query__locking_clause__descriptor, + return (PgQuery__AlterDatabaseStmt *) + protobuf_c_message_unpack (&pg_query__alter_database_stmt__descriptor, allocator, len, data); } -void pg_query__locking_clause__free_unpacked - (PgQuery__LockingClause *message, +void pg_query__alter_database_stmt__free_unpacked + (PgQuery__AlterDatabaseStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__locking_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__row_mark_clause__init - (PgQuery__RowMarkClause *message) +void pg_query__alter_database_refresh_coll_stmt__init + (PgQuery__AlterDatabaseRefreshCollStmt *message) { - static const PgQuery__RowMarkClause init_value = PG_QUERY__ROW_MARK_CLAUSE__INIT; + static const PgQuery__AlterDatabaseRefreshCollStmt init_value = PG_QUERY__ALTER_DATABASE_REFRESH_COLL_STMT__INIT; *message = init_value; } -size_t pg_query__row_mark_clause__get_packed_size - (const PgQuery__RowMarkClause *message) +size_t pg_query__alter_database_refresh_coll_stmt__get_packed_size + (const PgQuery__AlterDatabaseRefreshCollStmt *message) { - assert(message->base.descriptor == &pg_query__row_mark_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_refresh_coll_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__row_mark_clause__pack - (const PgQuery__RowMarkClause *message, +size_t pg_query__alter_database_refresh_coll_stmt__pack + (const PgQuery__AlterDatabaseRefreshCollStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__row_mark_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_refresh_coll_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__row_mark_clause__pack_to_buffer - (const PgQuery__RowMarkClause *message, +size_t pg_query__alter_database_refresh_coll_stmt__pack_to_buffer + (const PgQuery__AlterDatabaseRefreshCollStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__row_mark_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_refresh_coll_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RowMarkClause * - pg_query__row_mark_clause__unpack +PgQuery__AlterDatabaseRefreshCollStmt * + pg_query__alter_database_refresh_coll_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RowMarkClause *) - protobuf_c_message_unpack (&pg_query__row_mark_clause__descriptor, + return (PgQuery__AlterDatabaseRefreshCollStmt *) + protobuf_c_message_unpack (&pg_query__alter_database_refresh_coll_stmt__descriptor, allocator, len, data); } -void pg_query__row_mark_clause__free_unpacked - (PgQuery__RowMarkClause *message, +void pg_query__alter_database_refresh_coll_stmt__free_unpacked + (PgQuery__AlterDatabaseRefreshCollStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__row_mark_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_refresh_coll_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__xml_serialize__init - (PgQuery__XmlSerialize *message) +void pg_query__alter_database_set_stmt__init + (PgQuery__AlterDatabaseSetStmt *message) { - static const PgQuery__XmlSerialize init_value = PG_QUERY__XML_SERIALIZE__INIT; + static const PgQuery__AlterDatabaseSetStmt init_value = PG_QUERY__ALTER_DATABASE_SET_STMT__INIT; *message = init_value; } -size_t pg_query__xml_serialize__get_packed_size - (const PgQuery__XmlSerialize *message) +size_t pg_query__alter_database_set_stmt__get_packed_size + (const PgQuery__AlterDatabaseSetStmt *message) { - assert(message->base.descriptor == &pg_query__xml_serialize__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_set_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__xml_serialize__pack - (const PgQuery__XmlSerialize *message, +size_t pg_query__alter_database_set_stmt__pack + (const PgQuery__AlterDatabaseSetStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__xml_serialize__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_set_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__xml_serialize__pack_to_buffer - (const PgQuery__XmlSerialize *message, +size_t pg_query__alter_database_set_stmt__pack_to_buffer + (const PgQuery__AlterDatabaseSetStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__xml_serialize__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_set_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__XmlSerialize * - pg_query__xml_serialize__unpack +PgQuery__AlterDatabaseSetStmt * + pg_query__alter_database_set_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__XmlSerialize *) - protobuf_c_message_unpack (&pg_query__xml_serialize__descriptor, + return (PgQuery__AlterDatabaseSetStmt *) + protobuf_c_message_unpack (&pg_query__alter_database_set_stmt__descriptor, allocator, len, data); } -void pg_query__xml_serialize__free_unpacked - (PgQuery__XmlSerialize *message, +void pg_query__alter_database_set_stmt__free_unpacked + (PgQuery__AlterDatabaseSetStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__xml_serialize__descriptor); + assert(message->base.descriptor == &pg_query__alter_database_set_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__with_clause__init - (PgQuery__WithClause *message) +void pg_query__dropdb_stmt__init + (PgQuery__DropdbStmt *message) { - static const PgQuery__WithClause init_value = PG_QUERY__WITH_CLAUSE__INIT; + static const PgQuery__DropdbStmt init_value = PG_QUERY__DROPDB_STMT__INIT; *message = init_value; } -size_t pg_query__with_clause__get_packed_size - (const PgQuery__WithClause *message) +size_t pg_query__dropdb_stmt__get_packed_size + (const PgQuery__DropdbStmt *message) { - assert(message->base.descriptor == &pg_query__with_clause__descriptor); + assert(message->base.descriptor == &pg_query__dropdb_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__with_clause__pack - (const PgQuery__WithClause *message, +size_t pg_query__dropdb_stmt__pack + (const PgQuery__DropdbStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__with_clause__descriptor); + assert(message->base.descriptor == &pg_query__dropdb_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__with_clause__pack_to_buffer - (const PgQuery__WithClause *message, +size_t pg_query__dropdb_stmt__pack_to_buffer + (const PgQuery__DropdbStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__with_clause__descriptor); + assert(message->base.descriptor == &pg_query__dropdb_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__WithClause * - pg_query__with_clause__unpack +PgQuery__DropdbStmt * + pg_query__dropdb_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__WithClause *) - protobuf_c_message_unpack (&pg_query__with_clause__descriptor, + return (PgQuery__DropdbStmt *) + protobuf_c_message_unpack (&pg_query__dropdb_stmt__descriptor, allocator, len, data); } -void pg_query__with_clause__free_unpacked - (PgQuery__WithClause *message, +void pg_query__dropdb_stmt__free_unpacked + (PgQuery__DropdbStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__with_clause__descriptor); + assert(message->base.descriptor == &pg_query__dropdb_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__infer_clause__init - (PgQuery__InferClause *message) +void pg_query__alter_system_stmt__init + (PgQuery__AlterSystemStmt *message) { - static const PgQuery__InferClause init_value = PG_QUERY__INFER_CLAUSE__INIT; + static const PgQuery__AlterSystemStmt init_value = PG_QUERY__ALTER_SYSTEM_STMT__INIT; *message = init_value; } -size_t pg_query__infer_clause__get_packed_size - (const PgQuery__InferClause *message) +size_t pg_query__alter_system_stmt__get_packed_size + (const PgQuery__AlterSystemStmt *message) { - assert(message->base.descriptor == &pg_query__infer_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_system_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__infer_clause__pack - (const PgQuery__InferClause *message, +size_t pg_query__alter_system_stmt__pack + (const PgQuery__AlterSystemStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__infer_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_system_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__infer_clause__pack_to_buffer - (const PgQuery__InferClause *message, +size_t pg_query__alter_system_stmt__pack_to_buffer + (const PgQuery__AlterSystemStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__infer_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_system_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__InferClause * - pg_query__infer_clause__unpack +PgQuery__AlterSystemStmt * + pg_query__alter_system_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__InferClause *) - protobuf_c_message_unpack (&pg_query__infer_clause__descriptor, + return (PgQuery__AlterSystemStmt *) + protobuf_c_message_unpack (&pg_query__alter_system_stmt__descriptor, allocator, len, data); } -void pg_query__infer_clause__free_unpacked - (PgQuery__InferClause *message, +void pg_query__alter_system_stmt__free_unpacked + (PgQuery__AlterSystemStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__infer_clause__descriptor); + assert(message->base.descriptor == &pg_query__alter_system_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__on_conflict_clause__init - (PgQuery__OnConflictClause *message) +void pg_query__cluster_stmt__init + (PgQuery__ClusterStmt *message) { - static const PgQuery__OnConflictClause init_value = PG_QUERY__ON_CONFLICT_CLAUSE__INIT; + static const PgQuery__ClusterStmt init_value = PG_QUERY__CLUSTER_STMT__INIT; *message = init_value; } -size_t pg_query__on_conflict_clause__get_packed_size - (const PgQuery__OnConflictClause *message) +size_t pg_query__cluster_stmt__get_packed_size + (const PgQuery__ClusterStmt *message) { - assert(message->base.descriptor == &pg_query__on_conflict_clause__descriptor); + assert(message->base.descriptor == &pg_query__cluster_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__on_conflict_clause__pack - (const PgQuery__OnConflictClause *message, +size_t pg_query__cluster_stmt__pack + (const PgQuery__ClusterStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__on_conflict_clause__descriptor); + assert(message->base.descriptor == &pg_query__cluster_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__on_conflict_clause__pack_to_buffer - (const PgQuery__OnConflictClause *message, +size_t pg_query__cluster_stmt__pack_to_buffer + (const PgQuery__ClusterStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__on_conflict_clause__descriptor); + assert(message->base.descriptor == &pg_query__cluster_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__OnConflictClause * - pg_query__on_conflict_clause__unpack +PgQuery__ClusterStmt * + pg_query__cluster_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__OnConflictClause *) - protobuf_c_message_unpack (&pg_query__on_conflict_clause__descriptor, + return (PgQuery__ClusterStmt *) + protobuf_c_message_unpack (&pg_query__cluster_stmt__descriptor, allocator, len, data); } -void pg_query__on_conflict_clause__free_unpacked - (PgQuery__OnConflictClause *message, +void pg_query__cluster_stmt__free_unpacked + (PgQuery__ClusterStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__on_conflict_clause__descriptor); + assert(message->base.descriptor == &pg_query__cluster_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__ctesearch_clause__init - (PgQuery__CTESearchClause *message) +void pg_query__vacuum_stmt__init + (PgQuery__VacuumStmt *message) { - static const PgQuery__CTESearchClause init_value = PG_QUERY__CTESEARCH_CLAUSE__INIT; + static const PgQuery__VacuumStmt init_value = PG_QUERY__VACUUM_STMT__INIT; *message = init_value; } -size_t pg_query__ctesearch_clause__get_packed_size - (const PgQuery__CTESearchClause *message) +size_t pg_query__vacuum_stmt__get_packed_size + (const PgQuery__VacuumStmt *message) { - assert(message->base.descriptor == &pg_query__ctesearch_clause__descriptor); + assert(message->base.descriptor == &pg_query__vacuum_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__ctesearch_clause__pack - (const PgQuery__CTESearchClause *message, +size_t pg_query__vacuum_stmt__pack + (const PgQuery__VacuumStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__ctesearch_clause__descriptor); + assert(message->base.descriptor == &pg_query__vacuum_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__ctesearch_clause__pack_to_buffer - (const PgQuery__CTESearchClause *message, +size_t pg_query__vacuum_stmt__pack_to_buffer + (const PgQuery__VacuumStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__ctesearch_clause__descriptor); + assert(message->base.descriptor == &pg_query__vacuum_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CTESearchClause * - pg_query__ctesearch_clause__unpack +PgQuery__VacuumStmt * + pg_query__vacuum_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CTESearchClause *) - protobuf_c_message_unpack (&pg_query__ctesearch_clause__descriptor, + return (PgQuery__VacuumStmt *) + protobuf_c_message_unpack (&pg_query__vacuum_stmt__descriptor, allocator, len, data); } -void pg_query__ctesearch_clause__free_unpacked - (PgQuery__CTESearchClause *message, +void pg_query__vacuum_stmt__free_unpacked + (PgQuery__VacuumStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__ctesearch_clause__descriptor); + assert(message->base.descriptor == &pg_query__vacuum_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__ctecycle_clause__init - (PgQuery__CTECycleClause *message) +void pg_query__vacuum_relation__init + (PgQuery__VacuumRelation *message) { - static const PgQuery__CTECycleClause init_value = PG_QUERY__CTECYCLE_CLAUSE__INIT; + static const PgQuery__VacuumRelation init_value = PG_QUERY__VACUUM_RELATION__INIT; *message = init_value; } -size_t pg_query__ctecycle_clause__get_packed_size - (const PgQuery__CTECycleClause *message) +size_t pg_query__vacuum_relation__get_packed_size + (const PgQuery__VacuumRelation *message) { - assert(message->base.descriptor == &pg_query__ctecycle_clause__descriptor); + assert(message->base.descriptor == &pg_query__vacuum_relation__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__ctecycle_clause__pack - (const PgQuery__CTECycleClause *message, +size_t pg_query__vacuum_relation__pack + (const PgQuery__VacuumRelation *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__ctecycle_clause__descriptor); + assert(message->base.descriptor == &pg_query__vacuum_relation__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__ctecycle_clause__pack_to_buffer - (const PgQuery__CTECycleClause *message, +size_t pg_query__vacuum_relation__pack_to_buffer + (const PgQuery__VacuumRelation *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__ctecycle_clause__descriptor); + assert(message->base.descriptor == &pg_query__vacuum_relation__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CTECycleClause * - pg_query__ctecycle_clause__unpack +PgQuery__VacuumRelation * + pg_query__vacuum_relation__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CTECycleClause *) - protobuf_c_message_unpack (&pg_query__ctecycle_clause__descriptor, + return (PgQuery__VacuumRelation *) + protobuf_c_message_unpack (&pg_query__vacuum_relation__descriptor, allocator, len, data); } -void pg_query__ctecycle_clause__free_unpacked - (PgQuery__CTECycleClause *message, +void pg_query__vacuum_relation__free_unpacked + (PgQuery__VacuumRelation *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__ctecycle_clause__descriptor); + assert(message->base.descriptor == &pg_query__vacuum_relation__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__common_table_expr__init - (PgQuery__CommonTableExpr *message) +void pg_query__explain_stmt__init + (PgQuery__ExplainStmt *message) { - static const PgQuery__CommonTableExpr init_value = PG_QUERY__COMMON_TABLE_EXPR__INIT; + static const PgQuery__ExplainStmt init_value = PG_QUERY__EXPLAIN_STMT__INIT; *message = init_value; } -size_t pg_query__common_table_expr__get_packed_size - (const PgQuery__CommonTableExpr *message) +size_t pg_query__explain_stmt__get_packed_size + (const PgQuery__ExplainStmt *message) { - assert(message->base.descriptor == &pg_query__common_table_expr__descriptor); + assert(message->base.descriptor == &pg_query__explain_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__common_table_expr__pack - (const PgQuery__CommonTableExpr *message, +size_t pg_query__explain_stmt__pack + (const PgQuery__ExplainStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__common_table_expr__descriptor); + assert(message->base.descriptor == &pg_query__explain_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__common_table_expr__pack_to_buffer - (const PgQuery__CommonTableExpr *message, +size_t pg_query__explain_stmt__pack_to_buffer + (const PgQuery__ExplainStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__common_table_expr__descriptor); + assert(message->base.descriptor == &pg_query__explain_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CommonTableExpr * - pg_query__common_table_expr__unpack +PgQuery__ExplainStmt * + pg_query__explain_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CommonTableExpr *) - protobuf_c_message_unpack (&pg_query__common_table_expr__descriptor, + return (PgQuery__ExplainStmt *) + protobuf_c_message_unpack (&pg_query__explain_stmt__descriptor, allocator, len, data); } -void pg_query__common_table_expr__free_unpacked - (PgQuery__CommonTableExpr *message, +void pg_query__explain_stmt__free_unpacked + (PgQuery__ExplainStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__common_table_expr__descriptor); + assert(message->base.descriptor == &pg_query__explain_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__merge_when_clause__init - (PgQuery__MergeWhenClause *message) +void pg_query__create_table_as_stmt__init + (PgQuery__CreateTableAsStmt *message) { - static const PgQuery__MergeWhenClause init_value = PG_QUERY__MERGE_WHEN_CLAUSE__INIT; + static const PgQuery__CreateTableAsStmt init_value = PG_QUERY__CREATE_TABLE_AS_STMT__INIT; *message = init_value; } -size_t pg_query__merge_when_clause__get_packed_size - (const PgQuery__MergeWhenClause *message) +size_t pg_query__create_table_as_stmt__get_packed_size + (const PgQuery__CreateTableAsStmt *message) { - assert(message->base.descriptor == &pg_query__merge_when_clause__descriptor); + assert(message->base.descriptor == &pg_query__create_table_as_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__merge_when_clause__pack - (const PgQuery__MergeWhenClause *message, +size_t pg_query__create_table_as_stmt__pack + (const PgQuery__CreateTableAsStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__merge_when_clause__descriptor); + assert(message->base.descriptor == &pg_query__create_table_as_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__merge_when_clause__pack_to_buffer - (const PgQuery__MergeWhenClause *message, +size_t pg_query__create_table_as_stmt__pack_to_buffer + (const PgQuery__CreateTableAsStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__merge_when_clause__descriptor); + assert(message->base.descriptor == &pg_query__create_table_as_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__MergeWhenClause * - pg_query__merge_when_clause__unpack +PgQuery__CreateTableAsStmt * + pg_query__create_table_as_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__MergeWhenClause *) - protobuf_c_message_unpack (&pg_query__merge_when_clause__descriptor, + return (PgQuery__CreateTableAsStmt *) + protobuf_c_message_unpack (&pg_query__create_table_as_stmt__descriptor, allocator, len, data); } -void pg_query__merge_when_clause__free_unpacked - (PgQuery__MergeWhenClause *message, +void pg_query__create_table_as_stmt__free_unpacked + (PgQuery__CreateTableAsStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__merge_when_clause__descriptor); + assert(message->base.descriptor == &pg_query__create_table_as_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__role_spec__init - (PgQuery__RoleSpec *message) +void pg_query__refresh_mat_view_stmt__init + (PgQuery__RefreshMatViewStmt *message) { - static const PgQuery__RoleSpec init_value = PG_QUERY__ROLE_SPEC__INIT; + static const PgQuery__RefreshMatViewStmt init_value = PG_QUERY__REFRESH_MAT_VIEW_STMT__INIT; *message = init_value; } -size_t pg_query__role_spec__get_packed_size - (const PgQuery__RoleSpec *message) +size_t pg_query__refresh_mat_view_stmt__get_packed_size + (const PgQuery__RefreshMatViewStmt *message) { - assert(message->base.descriptor == &pg_query__role_spec__descriptor); + assert(message->base.descriptor == &pg_query__refresh_mat_view_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__role_spec__pack - (const PgQuery__RoleSpec *message, +size_t pg_query__refresh_mat_view_stmt__pack + (const PgQuery__RefreshMatViewStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__role_spec__descriptor); + assert(message->base.descriptor == &pg_query__refresh_mat_view_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__role_spec__pack_to_buffer - (const PgQuery__RoleSpec *message, +size_t pg_query__refresh_mat_view_stmt__pack_to_buffer + (const PgQuery__RefreshMatViewStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__role_spec__descriptor); + assert(message->base.descriptor == &pg_query__refresh_mat_view_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__RoleSpec * - pg_query__role_spec__unpack +PgQuery__RefreshMatViewStmt * + pg_query__refresh_mat_view_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__RoleSpec *) - protobuf_c_message_unpack (&pg_query__role_spec__descriptor, + return (PgQuery__RefreshMatViewStmt *) + protobuf_c_message_unpack (&pg_query__refresh_mat_view_stmt__descriptor, allocator, len, data); } -void pg_query__role_spec__free_unpacked - (PgQuery__RoleSpec *message, +void pg_query__refresh_mat_view_stmt__free_unpacked + (PgQuery__RefreshMatViewStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__role_spec__descriptor); + assert(message->base.descriptor == &pg_query__refresh_mat_view_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__trigger_transition__init - (PgQuery__TriggerTransition *message) +void pg_query__check_point_stmt__init + (PgQuery__CheckPointStmt *message) { - static const PgQuery__TriggerTransition init_value = PG_QUERY__TRIGGER_TRANSITION__INIT; + static const PgQuery__CheckPointStmt init_value = PG_QUERY__CHECK_POINT_STMT__INIT; *message = init_value; } -size_t pg_query__trigger_transition__get_packed_size - (const PgQuery__TriggerTransition *message) +size_t pg_query__check_point_stmt__get_packed_size + (const PgQuery__CheckPointStmt *message) { - assert(message->base.descriptor == &pg_query__trigger_transition__descriptor); + assert(message->base.descriptor == &pg_query__check_point_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__trigger_transition__pack - (const PgQuery__TriggerTransition *message, +size_t pg_query__check_point_stmt__pack + (const PgQuery__CheckPointStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__trigger_transition__descriptor); + assert(message->base.descriptor == &pg_query__check_point_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__trigger_transition__pack_to_buffer - (const PgQuery__TriggerTransition *message, +size_t pg_query__check_point_stmt__pack_to_buffer + (const PgQuery__CheckPointStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__trigger_transition__descriptor); + assert(message->base.descriptor == &pg_query__check_point_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__TriggerTransition * - pg_query__trigger_transition__unpack +PgQuery__CheckPointStmt * + pg_query__check_point_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__TriggerTransition *) - protobuf_c_message_unpack (&pg_query__trigger_transition__descriptor, + return (PgQuery__CheckPointStmt *) + protobuf_c_message_unpack (&pg_query__check_point_stmt__descriptor, allocator, len, data); } -void pg_query__trigger_transition__free_unpacked - (PgQuery__TriggerTransition *message, +void pg_query__check_point_stmt__free_unpacked + (PgQuery__CheckPointStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__trigger_transition__descriptor); + assert(message->base.descriptor == &pg_query__check_point_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__partition_elem__init - (PgQuery__PartitionElem *message) +void pg_query__discard_stmt__init + (PgQuery__DiscardStmt *message) { - static const PgQuery__PartitionElem init_value = PG_QUERY__PARTITION_ELEM__INIT; + static const PgQuery__DiscardStmt init_value = PG_QUERY__DISCARD_STMT__INIT; *message = init_value; } -size_t pg_query__partition_elem__get_packed_size - (const PgQuery__PartitionElem *message) +size_t pg_query__discard_stmt__get_packed_size + (const PgQuery__DiscardStmt *message) { - assert(message->base.descriptor == &pg_query__partition_elem__descriptor); + assert(message->base.descriptor == &pg_query__discard_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__partition_elem__pack - (const PgQuery__PartitionElem *message, +size_t pg_query__discard_stmt__pack + (const PgQuery__DiscardStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__partition_elem__descriptor); + assert(message->base.descriptor == &pg_query__discard_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__partition_elem__pack_to_buffer - (const PgQuery__PartitionElem *message, +size_t pg_query__discard_stmt__pack_to_buffer + (const PgQuery__DiscardStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__partition_elem__descriptor); + assert(message->base.descriptor == &pg_query__discard_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__PartitionElem * - pg_query__partition_elem__unpack +PgQuery__DiscardStmt * + pg_query__discard_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__PartitionElem *) - protobuf_c_message_unpack (&pg_query__partition_elem__descriptor, + return (PgQuery__DiscardStmt *) + protobuf_c_message_unpack (&pg_query__discard_stmt__descriptor, allocator, len, data); } -void pg_query__partition_elem__free_unpacked - (PgQuery__PartitionElem *message, +void pg_query__discard_stmt__free_unpacked + (PgQuery__DiscardStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__partition_elem__descriptor); + assert(message->base.descriptor == &pg_query__discard_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__partition_spec__init - (PgQuery__PartitionSpec *message) +void pg_query__lock_stmt__init + (PgQuery__LockStmt *message) { - static const PgQuery__PartitionSpec init_value = PG_QUERY__PARTITION_SPEC__INIT; + static const PgQuery__LockStmt init_value = PG_QUERY__LOCK_STMT__INIT; *message = init_value; } -size_t pg_query__partition_spec__get_packed_size - (const PgQuery__PartitionSpec *message) +size_t pg_query__lock_stmt__get_packed_size + (const PgQuery__LockStmt *message) { - assert(message->base.descriptor == &pg_query__partition_spec__descriptor); + assert(message->base.descriptor == &pg_query__lock_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__partition_spec__pack - (const PgQuery__PartitionSpec *message, +size_t pg_query__lock_stmt__pack + (const PgQuery__LockStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__partition_spec__descriptor); + assert(message->base.descriptor == &pg_query__lock_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__partition_spec__pack_to_buffer - (const PgQuery__PartitionSpec *message, +size_t pg_query__lock_stmt__pack_to_buffer + (const PgQuery__LockStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__partition_spec__descriptor); + assert(message->base.descriptor == &pg_query__lock_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__PartitionSpec * - pg_query__partition_spec__unpack +PgQuery__LockStmt * + pg_query__lock_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__PartitionSpec *) - protobuf_c_message_unpack (&pg_query__partition_spec__descriptor, + return (PgQuery__LockStmt *) + protobuf_c_message_unpack (&pg_query__lock_stmt__descriptor, allocator, len, data); } -void pg_query__partition_spec__free_unpacked - (PgQuery__PartitionSpec *message, +void pg_query__lock_stmt__free_unpacked + (PgQuery__LockStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__partition_spec__descriptor); + assert(message->base.descriptor == &pg_query__lock_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__partition_bound_spec__init - (PgQuery__PartitionBoundSpec *message) +void pg_query__constraints_set_stmt__init + (PgQuery__ConstraintsSetStmt *message) { - static const PgQuery__PartitionBoundSpec init_value = PG_QUERY__PARTITION_BOUND_SPEC__INIT; + static const PgQuery__ConstraintsSetStmt init_value = PG_QUERY__CONSTRAINTS_SET_STMT__INIT; *message = init_value; } -size_t pg_query__partition_bound_spec__get_packed_size - (const PgQuery__PartitionBoundSpec *message) +size_t pg_query__constraints_set_stmt__get_packed_size + (const PgQuery__ConstraintsSetStmt *message) { - assert(message->base.descriptor == &pg_query__partition_bound_spec__descriptor); + assert(message->base.descriptor == &pg_query__constraints_set_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__partition_bound_spec__pack - (const PgQuery__PartitionBoundSpec *message, +size_t pg_query__constraints_set_stmt__pack + (const PgQuery__ConstraintsSetStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__partition_bound_spec__descriptor); + assert(message->base.descriptor == &pg_query__constraints_set_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__partition_bound_spec__pack_to_buffer - (const PgQuery__PartitionBoundSpec *message, +size_t pg_query__constraints_set_stmt__pack_to_buffer + (const PgQuery__ConstraintsSetStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__partition_bound_spec__descriptor); + assert(message->base.descriptor == &pg_query__constraints_set_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__PartitionBoundSpec * - pg_query__partition_bound_spec__unpack +PgQuery__ConstraintsSetStmt * + pg_query__constraints_set_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__PartitionBoundSpec *) - protobuf_c_message_unpack (&pg_query__partition_bound_spec__descriptor, + return (PgQuery__ConstraintsSetStmt *) + protobuf_c_message_unpack (&pg_query__constraints_set_stmt__descriptor, allocator, len, data); } -void pg_query__partition_bound_spec__free_unpacked - (PgQuery__PartitionBoundSpec *message, +void pg_query__constraints_set_stmt__free_unpacked + (PgQuery__ConstraintsSetStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__partition_bound_spec__descriptor); + assert(message->base.descriptor == &pg_query__constraints_set_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__partition_range_datum__init - (PgQuery__PartitionRangeDatum *message) +void pg_query__reindex_stmt__init + (PgQuery__ReindexStmt *message) { - static const PgQuery__PartitionRangeDatum init_value = PG_QUERY__PARTITION_RANGE_DATUM__INIT; + static const PgQuery__ReindexStmt init_value = PG_QUERY__REINDEX_STMT__INIT; *message = init_value; } -size_t pg_query__partition_range_datum__get_packed_size - (const PgQuery__PartitionRangeDatum *message) +size_t pg_query__reindex_stmt__get_packed_size + (const PgQuery__ReindexStmt *message) { - assert(message->base.descriptor == &pg_query__partition_range_datum__descriptor); + assert(message->base.descriptor == &pg_query__reindex_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__partition_range_datum__pack - (const PgQuery__PartitionRangeDatum *message, +size_t pg_query__reindex_stmt__pack + (const PgQuery__ReindexStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__partition_range_datum__descriptor); + assert(message->base.descriptor == &pg_query__reindex_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__partition_range_datum__pack_to_buffer - (const PgQuery__PartitionRangeDatum *message, +size_t pg_query__reindex_stmt__pack_to_buffer + (const PgQuery__ReindexStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__partition_range_datum__descriptor); + assert(message->base.descriptor == &pg_query__reindex_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__PartitionRangeDatum * - pg_query__partition_range_datum__unpack +PgQuery__ReindexStmt * + pg_query__reindex_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__PartitionRangeDatum *) - protobuf_c_message_unpack (&pg_query__partition_range_datum__descriptor, + return (PgQuery__ReindexStmt *) + protobuf_c_message_unpack (&pg_query__reindex_stmt__descriptor, allocator, len, data); } -void pg_query__partition_range_datum__free_unpacked - (PgQuery__PartitionRangeDatum *message, +void pg_query__reindex_stmt__free_unpacked + (PgQuery__ReindexStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__partition_range_datum__descriptor); + assert(message->base.descriptor == &pg_query__reindex_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__partition_cmd__init - (PgQuery__PartitionCmd *message) +void pg_query__create_conversion_stmt__init + (PgQuery__CreateConversionStmt *message) { - static const PgQuery__PartitionCmd init_value = PG_QUERY__PARTITION_CMD__INIT; + static const PgQuery__CreateConversionStmt init_value = PG_QUERY__CREATE_CONVERSION_STMT__INIT; *message = init_value; } -size_t pg_query__partition_cmd__get_packed_size - (const PgQuery__PartitionCmd *message) +size_t pg_query__create_conversion_stmt__get_packed_size + (const PgQuery__CreateConversionStmt *message) { - assert(message->base.descriptor == &pg_query__partition_cmd__descriptor); + assert(message->base.descriptor == &pg_query__create_conversion_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__partition_cmd__pack - (const PgQuery__PartitionCmd *message, +size_t pg_query__create_conversion_stmt__pack + (const PgQuery__CreateConversionStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__partition_cmd__descriptor); + assert(message->base.descriptor == &pg_query__create_conversion_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__partition_cmd__pack_to_buffer - (const PgQuery__PartitionCmd *message, +size_t pg_query__create_conversion_stmt__pack_to_buffer + (const PgQuery__CreateConversionStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__partition_cmd__descriptor); + assert(message->base.descriptor == &pg_query__create_conversion_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__PartitionCmd * - pg_query__partition_cmd__unpack +PgQuery__CreateConversionStmt * + pg_query__create_conversion_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__PartitionCmd *) - protobuf_c_message_unpack (&pg_query__partition_cmd__descriptor, + return (PgQuery__CreateConversionStmt *) + protobuf_c_message_unpack (&pg_query__create_conversion_stmt__descriptor, allocator, len, data); } -void pg_query__partition_cmd__free_unpacked - (PgQuery__PartitionCmd *message, +void pg_query__create_conversion_stmt__free_unpacked + (PgQuery__CreateConversionStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__partition_cmd__descriptor); + assert(message->base.descriptor == &pg_query__create_conversion_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__vacuum_relation__init - (PgQuery__VacuumRelation *message) +void pg_query__create_cast_stmt__init + (PgQuery__CreateCastStmt *message) { - static const PgQuery__VacuumRelation init_value = PG_QUERY__VACUUM_RELATION__INIT; + static const PgQuery__CreateCastStmt init_value = PG_QUERY__CREATE_CAST_STMT__INIT; *message = init_value; } -size_t pg_query__vacuum_relation__get_packed_size - (const PgQuery__VacuumRelation *message) +size_t pg_query__create_cast_stmt__get_packed_size + (const PgQuery__CreateCastStmt *message) { - assert(message->base.descriptor == &pg_query__vacuum_relation__descriptor); + assert(message->base.descriptor == &pg_query__create_cast_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__vacuum_relation__pack - (const PgQuery__VacuumRelation *message, +size_t pg_query__create_cast_stmt__pack + (const PgQuery__CreateCastStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__vacuum_relation__descriptor); + assert(message->base.descriptor == &pg_query__create_cast_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__vacuum_relation__pack_to_buffer - (const PgQuery__VacuumRelation *message, +size_t pg_query__create_cast_stmt__pack_to_buffer + (const PgQuery__CreateCastStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__vacuum_relation__descriptor); + assert(message->base.descriptor == &pg_query__create_cast_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__VacuumRelation * - pg_query__vacuum_relation__unpack +PgQuery__CreateCastStmt * + pg_query__create_cast_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__VacuumRelation *) - protobuf_c_message_unpack (&pg_query__vacuum_relation__descriptor, + return (PgQuery__CreateCastStmt *) + protobuf_c_message_unpack (&pg_query__create_cast_stmt__descriptor, allocator, len, data); } -void pg_query__vacuum_relation__free_unpacked - (PgQuery__VacuumRelation *message, +void pg_query__create_cast_stmt__free_unpacked + (PgQuery__CreateCastStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__vacuum_relation__descriptor); + assert(message->base.descriptor == &pg_query__create_cast_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__publication_obj_spec__init - (PgQuery__PublicationObjSpec *message) +void pg_query__create_transform_stmt__init + (PgQuery__CreateTransformStmt *message) { - static const PgQuery__PublicationObjSpec init_value = PG_QUERY__PUBLICATION_OBJ_SPEC__INIT; + static const PgQuery__CreateTransformStmt init_value = PG_QUERY__CREATE_TRANSFORM_STMT__INIT; *message = init_value; } -size_t pg_query__publication_obj_spec__get_packed_size - (const PgQuery__PublicationObjSpec *message) +size_t pg_query__create_transform_stmt__get_packed_size + (const PgQuery__CreateTransformStmt *message) { - assert(message->base.descriptor == &pg_query__publication_obj_spec__descriptor); + assert(message->base.descriptor == &pg_query__create_transform_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__publication_obj_spec__pack - (const PgQuery__PublicationObjSpec *message, +size_t pg_query__create_transform_stmt__pack + (const PgQuery__CreateTransformStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__publication_obj_spec__descriptor); + assert(message->base.descriptor == &pg_query__create_transform_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__publication_obj_spec__pack_to_buffer - (const PgQuery__PublicationObjSpec *message, +size_t pg_query__create_transform_stmt__pack_to_buffer + (const PgQuery__CreateTransformStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__publication_obj_spec__descriptor); + assert(message->base.descriptor == &pg_query__create_transform_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__PublicationObjSpec * - pg_query__publication_obj_spec__unpack +PgQuery__CreateTransformStmt * + pg_query__create_transform_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__PublicationObjSpec *) - protobuf_c_message_unpack (&pg_query__publication_obj_spec__descriptor, + return (PgQuery__CreateTransformStmt *) + protobuf_c_message_unpack (&pg_query__create_transform_stmt__descriptor, allocator, len, data); } -void pg_query__publication_obj_spec__free_unpacked - (PgQuery__PublicationObjSpec *message, +void pg_query__create_transform_stmt__free_unpacked + (PgQuery__CreateTransformStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__publication_obj_spec__descriptor); + assert(message->base.descriptor == &pg_query__create_transform_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__publication_table__init - (PgQuery__PublicationTable *message) +void pg_query__prepare_stmt__init + (PgQuery__PrepareStmt *message) { - static const PgQuery__PublicationTable init_value = PG_QUERY__PUBLICATION_TABLE__INIT; + static const PgQuery__PrepareStmt init_value = PG_QUERY__PREPARE_STMT__INIT; *message = init_value; } -size_t pg_query__publication_table__get_packed_size - (const PgQuery__PublicationTable *message) +size_t pg_query__prepare_stmt__get_packed_size + (const PgQuery__PrepareStmt *message) { - assert(message->base.descriptor == &pg_query__publication_table__descriptor); + assert(message->base.descriptor == &pg_query__prepare_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__publication_table__pack - (const PgQuery__PublicationTable *message, +size_t pg_query__prepare_stmt__pack + (const PgQuery__PrepareStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__publication_table__descriptor); + assert(message->base.descriptor == &pg_query__prepare_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__publication_table__pack_to_buffer - (const PgQuery__PublicationTable *message, +size_t pg_query__prepare_stmt__pack_to_buffer + (const PgQuery__PrepareStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__publication_table__descriptor); + assert(message->base.descriptor == &pg_query__prepare_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__PublicationTable * - pg_query__publication_table__unpack +PgQuery__PrepareStmt * + pg_query__prepare_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__PublicationTable *) - protobuf_c_message_unpack (&pg_query__publication_table__descriptor, + return (PgQuery__PrepareStmt *) + protobuf_c_message_unpack (&pg_query__prepare_stmt__descriptor, allocator, len, data); } -void pg_query__publication_table__free_unpacked - (PgQuery__PublicationTable *message, +void pg_query__prepare_stmt__free_unpacked + (PgQuery__PrepareStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__publication_table__descriptor); + assert(message->base.descriptor == &pg_query__prepare_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__inline_code_block__init - (PgQuery__InlineCodeBlock *message) +void pg_query__execute_stmt__init + (PgQuery__ExecuteStmt *message) { - static const PgQuery__InlineCodeBlock init_value = PG_QUERY__INLINE_CODE_BLOCK__INIT; + static const PgQuery__ExecuteStmt init_value = PG_QUERY__EXECUTE_STMT__INIT; *message = init_value; } -size_t pg_query__inline_code_block__get_packed_size - (const PgQuery__InlineCodeBlock *message) +size_t pg_query__execute_stmt__get_packed_size + (const PgQuery__ExecuteStmt *message) { - assert(message->base.descriptor == &pg_query__inline_code_block__descriptor); + assert(message->base.descriptor == &pg_query__execute_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__inline_code_block__pack - (const PgQuery__InlineCodeBlock *message, +size_t pg_query__execute_stmt__pack + (const PgQuery__ExecuteStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__inline_code_block__descriptor); + assert(message->base.descriptor == &pg_query__execute_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__inline_code_block__pack_to_buffer - (const PgQuery__InlineCodeBlock *message, +size_t pg_query__execute_stmt__pack_to_buffer + (const PgQuery__ExecuteStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__inline_code_block__descriptor); + assert(message->base.descriptor == &pg_query__execute_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__InlineCodeBlock * - pg_query__inline_code_block__unpack +PgQuery__ExecuteStmt * + pg_query__execute_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__InlineCodeBlock *) - protobuf_c_message_unpack (&pg_query__inline_code_block__descriptor, + return (PgQuery__ExecuteStmt *) + protobuf_c_message_unpack (&pg_query__execute_stmt__descriptor, allocator, len, data); } -void pg_query__inline_code_block__free_unpacked - (PgQuery__InlineCodeBlock *message, +void pg_query__execute_stmt__free_unpacked + (PgQuery__ExecuteStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__inline_code_block__descriptor); + assert(message->base.descriptor == &pg_query__execute_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__call_context__init - (PgQuery__CallContext *message) +void pg_query__deallocate_stmt__init + (PgQuery__DeallocateStmt *message) { - static const PgQuery__CallContext init_value = PG_QUERY__CALL_CONTEXT__INIT; + static const PgQuery__DeallocateStmt init_value = PG_QUERY__DEALLOCATE_STMT__INIT; *message = init_value; } -size_t pg_query__call_context__get_packed_size - (const PgQuery__CallContext *message) +size_t pg_query__deallocate_stmt__get_packed_size + (const PgQuery__DeallocateStmt *message) { - assert(message->base.descriptor == &pg_query__call_context__descriptor); + assert(message->base.descriptor == &pg_query__deallocate_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__call_context__pack - (const PgQuery__CallContext *message, +size_t pg_query__deallocate_stmt__pack + (const PgQuery__DeallocateStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__call_context__descriptor); + assert(message->base.descriptor == &pg_query__deallocate_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__call_context__pack_to_buffer - (const PgQuery__CallContext *message, +size_t pg_query__deallocate_stmt__pack_to_buffer + (const PgQuery__DeallocateStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__call_context__descriptor); + assert(message->base.descriptor == &pg_query__deallocate_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__CallContext * - pg_query__call_context__unpack +PgQuery__DeallocateStmt * + pg_query__deallocate_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__CallContext *) - protobuf_c_message_unpack (&pg_query__call_context__descriptor, + return (PgQuery__DeallocateStmt *) + protobuf_c_message_unpack (&pg_query__deallocate_stmt__descriptor, allocator, len, data); } -void pg_query__call_context__free_unpacked - (PgQuery__CallContext *message, +void pg_query__deallocate_stmt__free_unpacked + (PgQuery__DeallocateStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__call_context__descriptor); + assert(message->base.descriptor == &pg_query__deallocate_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -void pg_query__scan_token__init - (PgQuery__ScanToken *message) +void pg_query__drop_owned_stmt__init + (PgQuery__DropOwnedStmt *message) { - static const PgQuery__ScanToken init_value = PG_QUERY__SCAN_TOKEN__INIT; + static const PgQuery__DropOwnedStmt init_value = PG_QUERY__DROP_OWNED_STMT__INIT; *message = init_value; } -size_t pg_query__scan_token__get_packed_size - (const PgQuery__ScanToken *message) +size_t pg_query__drop_owned_stmt__get_packed_size + (const PgQuery__DropOwnedStmt *message) { - assert(message->base.descriptor == &pg_query__scan_token__descriptor); + assert(message->base.descriptor == &pg_query__drop_owned_stmt__descriptor); return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); } -size_t pg_query__scan_token__pack - (const PgQuery__ScanToken *message, +size_t pg_query__drop_owned_stmt__pack + (const PgQuery__DropOwnedStmt *message, uint8_t *out) { - assert(message->base.descriptor == &pg_query__scan_token__descriptor); + assert(message->base.descriptor == &pg_query__drop_owned_stmt__descriptor); return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); } -size_t pg_query__scan_token__pack_to_buffer - (const PgQuery__ScanToken *message, +size_t pg_query__drop_owned_stmt__pack_to_buffer + (const PgQuery__DropOwnedStmt *message, ProtobufCBuffer *buffer) { - assert(message->base.descriptor == &pg_query__scan_token__descriptor); + assert(message->base.descriptor == &pg_query__drop_owned_stmt__descriptor); return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); } -PgQuery__ScanToken * - pg_query__scan_token__unpack +PgQuery__DropOwnedStmt * + pg_query__drop_owned_stmt__unpack (ProtobufCAllocator *allocator, size_t len, const uint8_t *data) { - return (PgQuery__ScanToken *) - protobuf_c_message_unpack (&pg_query__scan_token__descriptor, + return (PgQuery__DropOwnedStmt *) + protobuf_c_message_unpack (&pg_query__drop_owned_stmt__descriptor, allocator, len, data); } -void pg_query__scan_token__free_unpacked - (PgQuery__ScanToken *message, +void pg_query__drop_owned_stmt__free_unpacked + (PgQuery__DropOwnedStmt *message, ProtobufCAllocator *allocator) { if(!message) return; - assert(message->base.descriptor == &pg_query__scan_token__descriptor); + assert(message->base.descriptor == &pg_query__drop_owned_stmt__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -static const ProtobufCFieldDescriptor pg_query__parse_result__field_descriptors[2] = -{ - { - "version", - 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__ParseResult, version), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "stmts", - 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ParseResult, n_stmts), - offsetof(PgQuery__ParseResult, stmts), - &pg_query__raw_stmt__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__parse_result__field_indices_by_name[] = { - 1, /* field[1] = stmts */ - 0, /* field[0] = version */ -}; -static const ProtobufCIntRange pg_query__parse_result__number_ranges[1 + 1] = +void pg_query__reassign_owned_stmt__init + (PgQuery__ReassignOwnedStmt *message) { - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__parse_result__descriptor = + static const PgQuery__ReassignOwnedStmt init_value = PG_QUERY__REASSIGN_OWNED_STMT__INIT; + *message = init_value; +} +size_t pg_query__reassign_owned_stmt__get_packed_size + (const PgQuery__ReassignOwnedStmt *message) { - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ParseResult", - "ParseResult", - "PgQuery__ParseResult", - "pg_query", - sizeof(PgQuery__ParseResult), - 2, - pg_query__parse_result__field_descriptors, - pg_query__parse_result__field_indices_by_name, - 1, pg_query__parse_result__number_ranges, - (ProtobufCMessageInit) pg_query__parse_result__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__scan_result__field_descriptors[2] = + assert(message->base.descriptor == &pg_query__reassign_owned_stmt__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__reassign_owned_stmt__pack + (const PgQuery__ReassignOwnedStmt *message, + uint8_t *out) { - { - "version", - 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__ScanResult, version), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "tokens", - 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ScanResult, n_tokens), - offsetof(PgQuery__ScanResult, tokens), - &pg_query__scan_token__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__scan_result__field_indices_by_name[] = { - 1, /* field[1] = tokens */ - 0, /* field[0] = version */ -}; -static const ProtobufCIntRange pg_query__scan_result__number_ranges[1 + 1] = + assert(message->base.descriptor == &pg_query__reassign_owned_stmt__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__reassign_owned_stmt__pack_to_buffer + (const PgQuery__ReassignOwnedStmt *message, + ProtobufCBuffer *buffer) { - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__scan_result__descriptor = + assert(message->base.descriptor == &pg_query__reassign_owned_stmt__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__ReassignOwnedStmt * + pg_query__reassign_owned_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) { - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ScanResult", - "ScanResult", - "PgQuery__ScanResult", - "pg_query", - sizeof(PgQuery__ScanResult), - 2, - pg_query__scan_result__field_descriptors, - pg_query__scan_result__field_indices_by_name, - 1, pg_query__scan_result__number_ranges, - (ProtobufCMessageInit) pg_query__scan_result__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__node__field_descriptors[238] = + return (PgQuery__ReassignOwnedStmt *) + protobuf_c_message_unpack (&pg_query__reassign_owned_stmt__descriptor, + allocator, len, data); +} +void pg_query__reassign_owned_stmt__free_unpacked + (PgQuery__ReassignOwnedStmt *message, + ProtobufCAllocator *allocator) { + if(!message) + return; + assert(message->base.descriptor == &pg_query__reassign_owned_stmt__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__alter_tsdictionary_stmt__init + (PgQuery__AlterTSDictionaryStmt *message) +{ + static const PgQuery__AlterTSDictionaryStmt init_value = PG_QUERY__ALTER_TSDICTIONARY_STMT__INIT; + *message = init_value; +} +size_t pg_query__alter_tsdictionary_stmt__get_packed_size + (const PgQuery__AlterTSDictionaryStmt *message) +{ + assert(message->base.descriptor == &pg_query__alter_tsdictionary_stmt__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__alter_tsdictionary_stmt__pack + (const PgQuery__AlterTSDictionaryStmt *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__alter_tsdictionary_stmt__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__alter_tsdictionary_stmt__pack_to_buffer + (const PgQuery__AlterTSDictionaryStmt *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__alter_tsdictionary_stmt__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__AlterTSDictionaryStmt * + pg_query__alter_tsdictionary_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__AlterTSDictionaryStmt *) + protobuf_c_message_unpack (&pg_query__alter_tsdictionary_stmt__descriptor, + allocator, len, data); +} +void pg_query__alter_tsdictionary_stmt__free_unpacked + (PgQuery__AlterTSDictionaryStmt *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__alter_tsdictionary_stmt__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__alter_tsconfiguration_stmt__init + (PgQuery__AlterTSConfigurationStmt *message) +{ + static const PgQuery__AlterTSConfigurationStmt init_value = PG_QUERY__ALTER_TSCONFIGURATION_STMT__INIT; + *message = init_value; +} +size_t pg_query__alter_tsconfiguration_stmt__get_packed_size + (const PgQuery__AlterTSConfigurationStmt *message) +{ + assert(message->base.descriptor == &pg_query__alter_tsconfiguration_stmt__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__alter_tsconfiguration_stmt__pack + (const PgQuery__AlterTSConfigurationStmt *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__alter_tsconfiguration_stmt__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__alter_tsconfiguration_stmt__pack_to_buffer + (const PgQuery__AlterTSConfigurationStmt *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__alter_tsconfiguration_stmt__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__AlterTSConfigurationStmt * + pg_query__alter_tsconfiguration_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__AlterTSConfigurationStmt *) + protobuf_c_message_unpack (&pg_query__alter_tsconfiguration_stmt__descriptor, + allocator, len, data); +} +void pg_query__alter_tsconfiguration_stmt__free_unpacked + (PgQuery__AlterTSConfigurationStmt *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__alter_tsconfiguration_stmt__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__publication_table__init + (PgQuery__PublicationTable *message) +{ + static const PgQuery__PublicationTable init_value = PG_QUERY__PUBLICATION_TABLE__INIT; + *message = init_value; +} +size_t pg_query__publication_table__get_packed_size + (const PgQuery__PublicationTable *message) +{ + assert(message->base.descriptor == &pg_query__publication_table__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__publication_table__pack + (const PgQuery__PublicationTable *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__publication_table__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__publication_table__pack_to_buffer + (const PgQuery__PublicationTable *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__publication_table__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__PublicationTable * + pg_query__publication_table__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__PublicationTable *) + protobuf_c_message_unpack (&pg_query__publication_table__descriptor, + allocator, len, data); +} +void pg_query__publication_table__free_unpacked + (PgQuery__PublicationTable *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__publication_table__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__publication_obj_spec__init + (PgQuery__PublicationObjSpec *message) +{ + static const PgQuery__PublicationObjSpec init_value = PG_QUERY__PUBLICATION_OBJ_SPEC__INIT; + *message = init_value; +} +size_t pg_query__publication_obj_spec__get_packed_size + (const PgQuery__PublicationObjSpec *message) +{ + assert(message->base.descriptor == &pg_query__publication_obj_spec__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__publication_obj_spec__pack + (const PgQuery__PublicationObjSpec *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__publication_obj_spec__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__publication_obj_spec__pack_to_buffer + (const PgQuery__PublicationObjSpec *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__publication_obj_spec__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__PublicationObjSpec * + pg_query__publication_obj_spec__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__PublicationObjSpec *) + protobuf_c_message_unpack (&pg_query__publication_obj_spec__descriptor, + allocator, len, data); +} +void pg_query__publication_obj_spec__free_unpacked + (PgQuery__PublicationObjSpec *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__publication_obj_spec__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__create_publication_stmt__init + (PgQuery__CreatePublicationStmt *message) +{ + static const PgQuery__CreatePublicationStmt init_value = PG_QUERY__CREATE_PUBLICATION_STMT__INIT; + *message = init_value; +} +size_t pg_query__create_publication_stmt__get_packed_size + (const PgQuery__CreatePublicationStmt *message) +{ + assert(message->base.descriptor == &pg_query__create_publication_stmt__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__create_publication_stmt__pack + (const PgQuery__CreatePublicationStmt *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__create_publication_stmt__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__create_publication_stmt__pack_to_buffer + (const PgQuery__CreatePublicationStmt *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__create_publication_stmt__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__CreatePublicationStmt * + pg_query__create_publication_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__CreatePublicationStmt *) + protobuf_c_message_unpack (&pg_query__create_publication_stmt__descriptor, + allocator, len, data); +} +void pg_query__create_publication_stmt__free_unpacked + (PgQuery__CreatePublicationStmt *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__create_publication_stmt__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__alter_publication_stmt__init + (PgQuery__AlterPublicationStmt *message) +{ + static const PgQuery__AlterPublicationStmt init_value = PG_QUERY__ALTER_PUBLICATION_STMT__INIT; + *message = init_value; +} +size_t pg_query__alter_publication_stmt__get_packed_size + (const PgQuery__AlterPublicationStmt *message) +{ + assert(message->base.descriptor == &pg_query__alter_publication_stmt__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__alter_publication_stmt__pack + (const PgQuery__AlterPublicationStmt *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__alter_publication_stmt__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__alter_publication_stmt__pack_to_buffer + (const PgQuery__AlterPublicationStmt *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__alter_publication_stmt__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__AlterPublicationStmt * + pg_query__alter_publication_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__AlterPublicationStmt *) + protobuf_c_message_unpack (&pg_query__alter_publication_stmt__descriptor, + allocator, len, data); +} +void pg_query__alter_publication_stmt__free_unpacked + (PgQuery__AlterPublicationStmt *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__alter_publication_stmt__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__create_subscription_stmt__init + (PgQuery__CreateSubscriptionStmt *message) +{ + static const PgQuery__CreateSubscriptionStmt init_value = PG_QUERY__CREATE_SUBSCRIPTION_STMT__INIT; + *message = init_value; +} +size_t pg_query__create_subscription_stmt__get_packed_size + (const PgQuery__CreateSubscriptionStmt *message) +{ + assert(message->base.descriptor == &pg_query__create_subscription_stmt__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__create_subscription_stmt__pack + (const PgQuery__CreateSubscriptionStmt *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__create_subscription_stmt__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__create_subscription_stmt__pack_to_buffer + (const PgQuery__CreateSubscriptionStmt *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__create_subscription_stmt__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__CreateSubscriptionStmt * + pg_query__create_subscription_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__CreateSubscriptionStmt *) + protobuf_c_message_unpack (&pg_query__create_subscription_stmt__descriptor, + allocator, len, data); +} +void pg_query__create_subscription_stmt__free_unpacked + (PgQuery__CreateSubscriptionStmt *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__create_subscription_stmt__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__alter_subscription_stmt__init + (PgQuery__AlterSubscriptionStmt *message) +{ + static const PgQuery__AlterSubscriptionStmt init_value = PG_QUERY__ALTER_SUBSCRIPTION_STMT__INIT; + *message = init_value; +} +size_t pg_query__alter_subscription_stmt__get_packed_size + (const PgQuery__AlterSubscriptionStmt *message) +{ + assert(message->base.descriptor == &pg_query__alter_subscription_stmt__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__alter_subscription_stmt__pack + (const PgQuery__AlterSubscriptionStmt *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__alter_subscription_stmt__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__alter_subscription_stmt__pack_to_buffer + (const PgQuery__AlterSubscriptionStmt *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__alter_subscription_stmt__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__AlterSubscriptionStmt * + pg_query__alter_subscription_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__AlterSubscriptionStmt *) + protobuf_c_message_unpack (&pg_query__alter_subscription_stmt__descriptor, + allocator, len, data); +} +void pg_query__alter_subscription_stmt__free_unpacked + (PgQuery__AlterSubscriptionStmt *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__alter_subscription_stmt__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__drop_subscription_stmt__init + (PgQuery__DropSubscriptionStmt *message) +{ + static const PgQuery__DropSubscriptionStmt init_value = PG_QUERY__DROP_SUBSCRIPTION_STMT__INIT; + *message = init_value; +} +size_t pg_query__drop_subscription_stmt__get_packed_size + (const PgQuery__DropSubscriptionStmt *message) +{ + assert(message->base.descriptor == &pg_query__drop_subscription_stmt__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__drop_subscription_stmt__pack + (const PgQuery__DropSubscriptionStmt *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__drop_subscription_stmt__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__drop_subscription_stmt__pack_to_buffer + (const PgQuery__DropSubscriptionStmt *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__drop_subscription_stmt__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__DropSubscriptionStmt * + pg_query__drop_subscription_stmt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__DropSubscriptionStmt *) + protobuf_c_message_unpack (&pg_query__drop_subscription_stmt__descriptor, + allocator, len, data); +} +void pg_query__drop_subscription_stmt__free_unpacked + (PgQuery__DropSubscriptionStmt *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__drop_subscription_stmt__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void pg_query__scan_token__init + (PgQuery__ScanToken *message) +{ + static const PgQuery__ScanToken init_value = PG_QUERY__SCAN_TOKEN__INIT; + *message = init_value; +} +size_t pg_query__scan_token__get_packed_size + (const PgQuery__ScanToken *message) +{ + assert(message->base.descriptor == &pg_query__scan_token__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t pg_query__scan_token__pack + (const PgQuery__ScanToken *message, + uint8_t *out) +{ + assert(message->base.descriptor == &pg_query__scan_token__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t pg_query__scan_token__pack_to_buffer + (const PgQuery__ScanToken *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &pg_query__scan_token__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +PgQuery__ScanToken * + pg_query__scan_token__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (PgQuery__ScanToken *) + protobuf_c_message_unpack (&pg_query__scan_token__descriptor, + allocator, len, data); +} +void pg_query__scan_token__free_unpacked + (PgQuery__ScanToken *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &pg_query__scan_token__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +static const ProtobufCFieldDescriptor pg_query__parse_result__field_descriptors[2] = +{ + { + "version", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__ParseResult, version), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "stmts", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ParseResult, n_stmts), + offsetof(PgQuery__ParseResult, stmts), + &pg_query__raw_stmt__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__parse_result__field_indices_by_name[] = { + 1, /* field[1] = stmts */ + 0, /* field[0] = version */ +}; +static const ProtobufCIntRange pg_query__parse_result__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__parse_result__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.ParseResult", + "ParseResult", + "PgQuery__ParseResult", + "pg_query", + sizeof(PgQuery__ParseResult), + 2, + pg_query__parse_result__field_descriptors, + pg_query__parse_result__field_indices_by_name, + 1, pg_query__parse_result__number_ranges, + (ProtobufCMessageInit) pg_query__parse_result__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__scan_result__field_descriptors[2] = +{ + { + "version", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__ScanResult, version), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "tokens", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ScanResult, n_tokens), + offsetof(PgQuery__ScanResult, tokens), + &pg_query__scan_token__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__scan_result__field_indices_by_name[] = { + 1, /* field[1] = tokens */ + 0, /* field[0] = version */ +}; +static const ProtobufCIntRange pg_query__scan_result__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__scan_result__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.ScanResult", + "ScanResult", + "PgQuery__ScanResult", + "pg_query", + sizeof(PgQuery__ScanResult), + 2, + pg_query__scan_result__field_descriptors, + pg_query__scan_result__field_indices_by_name, + 1, pg_query__scan_result__number_ranges, + (ProtobufCMessageInit) pg_query__scan_result__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__node__field_descriptors[252] = +{ + { + "alias", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, alias), + &pg_query__alias__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "range_var", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, range_var), + &pg_query__range_var__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "table_func", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, table_func), + &pg_query__table_func__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "into_clause", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, into_clause), + &pg_query__into_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "var", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, var), + &pg_query__var__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "param", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, param), + &pg_query__param__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "aggref", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, aggref), + &pg_query__aggref__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "grouping_func", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, grouping_func), + &pg_query__grouping_func__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "window_func", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, window_func), + &pg_query__window_func__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "subscripting_ref", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, subscripting_ref), + &pg_query__subscripting_ref__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "func_expr", + 11, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, func_expr), + &pg_query__func_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "named_arg_expr", + 12, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, named_arg_expr), + &pg_query__named_arg_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "op_expr", + 13, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, op_expr), + &pg_query__op_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "distinct_expr", + 14, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, distinct_expr), + &pg_query__distinct_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "null_if_expr", + 15, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, null_if_expr), + &pg_query__null_if_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "scalar_array_op_expr", + 16, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, scalar_array_op_expr), + &pg_query__scalar_array_op_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bool_expr", + 17, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, bool_expr), + &pg_query__bool_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sub_link", + 18, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, sub_link), + &pg_query__sub_link__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sub_plan", + 19, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, sub_plan), + &pg_query__sub_plan__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "alternative_sub_plan", + 20, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, alternative_sub_plan), + &pg_query__alternative_sub_plan__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "field_select", + 21, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, field_select), + &pg_query__field_select__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "field_store", + 22, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, field_store), + &pg_query__field_store__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "relabel_type", + 23, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, relabel_type), + &pg_query__relabel_type__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "coerce_via_io", + 24, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, coerce_via_io), + &pg_query__coerce_via_io__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "array_coerce_expr", + 25, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, array_coerce_expr), + &pg_query__array_coerce_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "convert_rowtype_expr", + 26, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, convert_rowtype_expr), + &pg_query__convert_rowtype_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "collate_expr", + 27, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, collate_expr), + &pg_query__collate_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "case_expr", + 28, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, case_expr), + &pg_query__case_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "case_when", + 29, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, case_when), + &pg_query__case_when__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "case_test_expr", + 30, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, case_test_expr), + &pg_query__case_test_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "array_expr", + 31, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, array_expr), + &pg_query__array_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "row_expr", + 32, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, row_expr), + &pg_query__row_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "row_compare_expr", + 33, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, row_compare_expr), + &pg_query__row_compare_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "coalesce_expr", + 34, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, coalesce_expr), + &pg_query__coalesce_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "min_max_expr", + 35, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, min_max_expr), + &pg_query__min_max_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sqlvalue_function", + 36, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, sqlvalue_function), + &pg_query__sqlvalue_function__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "xml_expr", + 37, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, xml_expr), + &pg_query__xml_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_format", + 38, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_format), + &pg_query__json_format__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_returning", + 39, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_returning), + &pg_query__json_returning__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_value_expr", + 40, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_value_expr), + &pg_query__json_value_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_constructor_expr", + 41, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_constructor_expr), + &pg_query__json_constructor_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_is_predicate", + 42, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_is_predicate), + &pg_query__json_is_predicate__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "null_test", + 43, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, null_test), + &pg_query__null_test__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "boolean_test", + 44, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, boolean_test), + &pg_query__boolean_test__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "coerce_to_domain", + 45, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, coerce_to_domain), + &pg_query__coerce_to_domain__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "coerce_to_domain_value", + 46, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, coerce_to_domain_value), + &pg_query__coerce_to_domain_value__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set_to_default", + 47, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, set_to_default), + &pg_query__set_to_default__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "current_of_expr", + 48, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, current_of_expr), + &pg_query__current_of_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "next_value_expr", + 49, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, next_value_expr), + &pg_query__next_value_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "inference_elem", + 50, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, inference_elem), + &pg_query__inference_elem__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "target_entry", + 51, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, target_entry), + &pg_query__target_entry__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "range_tbl_ref", + 52, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, range_tbl_ref), + &pg_query__range_tbl_ref__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "join_expr", + 53, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, join_expr), + &pg_query__join_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "from_expr", + 54, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, from_expr), + &pg_query__from_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "on_conflict_expr", + 55, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, on_conflict_expr), + &pg_query__on_conflict_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "query", + 56, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, query), + &pg_query__query__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "type_name", + 57, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, type_name), + &pg_query__type_name__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "column_ref", + 58, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, column_ref), + &pg_query__column_ref__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "param_ref", + 59, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, param_ref), + &pg_query__param_ref__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, { - "alias", - 1, + "a_expr", + 60, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alias), - &pg_query__alias__descriptor, + offsetof(PgQuery__Node, a_expr), + &pg_query__a__expr__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "range_var", - 2, + "type_cast", + 61, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, range_var), - &pg_query__range_var__descriptor, + offsetof(PgQuery__Node, type_cast), + &pg_query__type_cast__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "table_func", - 3, + "collate_clause", + 62, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, table_func), - &pg_query__table_func__descriptor, + offsetof(PgQuery__Node, collate_clause), + &pg_query__collate_clause__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "var", - 4, + "role_spec", + 63, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, var), - &pg_query__var__descriptor, + offsetof(PgQuery__Node, role_spec), + &pg_query__role_spec__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "param", - 5, + "func_call", + 64, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, param), - &pg_query__param__descriptor, + offsetof(PgQuery__Node, func_call), + &pg_query__func_call__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggref", - 6, + "a_star", + 65, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, aggref), - &pg_query__aggref__descriptor, + offsetof(PgQuery__Node, a_star), + &pg_query__a__star__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "grouping_func", - 7, + "a_indices", + 66, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, grouping_func), - &pg_query__grouping_func__descriptor, + offsetof(PgQuery__Node, a_indices), + &pg_query__a__indices__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "window_func", - 8, + "a_indirection", + 67, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, window_func), - &pg_query__window_func__descriptor, + offsetof(PgQuery__Node, a_indirection), + &pg_query__a__indirection__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "subscripting_ref", - 9, + "a_array_expr", + 68, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, subscripting_ref), - &pg_query__subscripting_ref__descriptor, + offsetof(PgQuery__Node, a_array_expr), + &pg_query__a__array_expr__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "func_expr", - 10, + "res_target", + 69, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, func_expr), - &pg_query__func_expr__descriptor, + offsetof(PgQuery__Node, res_target), + &pg_query__res_target__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "named_arg_expr", - 11, + "multi_assign_ref", + 70, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, named_arg_expr), - &pg_query__named_arg_expr__descriptor, + offsetof(PgQuery__Node, multi_assign_ref), + &pg_query__multi_assign_ref__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "op_expr", - 12, + "sort_by", + 71, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, op_expr), - &pg_query__op_expr__descriptor, + offsetof(PgQuery__Node, sort_by), + &pg_query__sort_by__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "distinct_expr", - 13, + "window_def", + 72, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, distinct_expr), - &pg_query__distinct_expr__descriptor, + offsetof(PgQuery__Node, window_def), + &pg_query__window_def__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "null_if_expr", - 14, + "range_subselect", + 73, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, null_if_expr), - &pg_query__null_if_expr__descriptor, + offsetof(PgQuery__Node, range_subselect), + &pg_query__range_subselect__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "scalar_array_op_expr", - 15, + "range_function", + 74, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, scalar_array_op_expr), - &pg_query__scalar_array_op_expr__descriptor, + offsetof(PgQuery__Node, range_function), + &pg_query__range_function__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "bool_expr", - 16, + "range_table_func", + 75, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, bool_expr), - &pg_query__bool_expr__descriptor, + offsetof(PgQuery__Node, range_table_func), + &pg_query__range_table_func__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sub_link", - 17, + "range_table_func_col", + 76, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, sub_link), - &pg_query__sub_link__descriptor, + offsetof(PgQuery__Node, range_table_func_col), + &pg_query__range_table_func_col__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sub_plan", - 18, + "range_table_sample", + 77, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, sub_plan), - &pg_query__sub_plan__descriptor, + offsetof(PgQuery__Node, range_table_sample), + &pg_query__range_table_sample__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alternative_sub_plan", - 19, + "column_def", + 78, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alternative_sub_plan), - &pg_query__alternative_sub_plan__descriptor, + offsetof(PgQuery__Node, column_def), + &pg_query__column_def__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "field_select", - 20, + "table_like_clause", + 79, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, field_select), - &pg_query__field_select__descriptor, + offsetof(PgQuery__Node, table_like_clause), + &pg_query__table_like_clause__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "field_store", - 21, + "index_elem", + 80, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, field_store), - &pg_query__field_store__descriptor, + offsetof(PgQuery__Node, index_elem), + &pg_query__index_elem__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relabel_type", - 22, + "def_elem", + 81, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, relabel_type), - &pg_query__relabel_type__descriptor, + offsetof(PgQuery__Node, def_elem), + &pg_query__def_elem__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coerce_via_io", - 23, + "locking_clause", + 82, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, coerce_via_io), - &pg_query__coerce_via_io__descriptor, + offsetof(PgQuery__Node, locking_clause), + &pg_query__locking_clause__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "array_coerce_expr", - 24, + "xml_serialize", + 83, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, array_coerce_expr), - &pg_query__array_coerce_expr__descriptor, + offsetof(PgQuery__Node, xml_serialize), + &pg_query__xml_serialize__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "convert_rowtype_expr", - 25, + "partition_elem", + 84, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, partition_elem), + &pg_query__partition_elem__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "partition_spec", + 85, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, partition_spec), + &pg_query__partition_spec__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "partition_bound_spec", + 86, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, partition_bound_spec), + &pg_query__partition_bound_spec__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "partition_range_datum", + 87, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, partition_range_datum), + &pg_query__partition_range_datum__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "partition_cmd", + 88, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, partition_cmd), + &pg_query__partition_cmd__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "range_tbl_entry", + 89, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, range_tbl_entry), + &pg_query__range_tbl_entry__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rtepermission_info", + 90, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, rtepermission_info), + &pg_query__rtepermission_info__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "range_tbl_function", + 91, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, range_tbl_function), + &pg_query__range_tbl_function__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "table_sample_clause", + 92, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, table_sample_clause), + &pg_query__table_sample_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "with_check_option", + 93, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, with_check_option), + &pg_query__with_check_option__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sort_group_clause", + 94, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, sort_group_clause), + &pg_query__sort_group_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "grouping_set", + 95, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, grouping_set), + &pg_query__grouping_set__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "window_clause", + 96, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, window_clause), + &pg_query__window_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "row_mark_clause", + 97, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, row_mark_clause), + &pg_query__row_mark_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "with_clause", + 98, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, with_clause), + &pg_query__with_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "infer_clause", + 99, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, infer_clause), + &pg_query__infer_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "on_conflict_clause", + 100, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, on_conflict_clause), + &pg_query__on_conflict_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ctesearch_clause", + 101, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, ctesearch_clause), + &pg_query__ctesearch_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ctecycle_clause", + 102, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, ctecycle_clause), + &pg_query__ctecycle_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "common_table_expr", + 103, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, common_table_expr), + &pg_query__common_table_expr__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "merge_when_clause", + 104, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, merge_when_clause), + &pg_query__merge_when_clause__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "merge_action", + 105, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, merge_action), + &pg_query__merge_action__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "trigger_transition", + 106, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, trigger_transition), + &pg_query__trigger_transition__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_output", + 107, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_output), + &pg_query__json_output__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_key_value", + 108, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_key_value), + &pg_query__json_key_value__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_object_constructor", + 109, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_object_constructor), + &pg_query__json_object_constructor__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_array_constructor", + 110, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_array_constructor), + &pg_query__json_array_constructor__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_array_query_constructor", + 111, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_array_query_constructor), + &pg_query__json_array_query_constructor__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_agg_constructor", + 112, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_agg_constructor), + &pg_query__json_agg_constructor__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_object_agg", + 113, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_object_agg), + &pg_query__json_object_agg__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "json_array_agg", + 114, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Node, node_case), + offsetof(PgQuery__Node, json_array_agg), + &pg_query__json_array_agg__descriptor, + NULL, + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "raw_stmt", + 115, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, convert_rowtype_expr), - &pg_query__convert_rowtype_expr__descriptor, + offsetof(PgQuery__Node, raw_stmt), + &pg_query__raw_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "collate_expr", - 26, + "insert_stmt", + 116, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, collate_expr), - &pg_query__collate_expr__descriptor, + offsetof(PgQuery__Node, insert_stmt), + &pg_query__insert_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "case_expr", - 27, + "delete_stmt", + 117, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, case_expr), - &pg_query__case_expr__descriptor, + offsetof(PgQuery__Node, delete_stmt), + &pg_query__delete_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "case_when", - 28, + "update_stmt", + 118, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, case_when), - &pg_query__case_when__descriptor, + offsetof(PgQuery__Node, update_stmt), + &pg_query__update_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "case_test_expr", - 29, + "merge_stmt", + 119, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, case_test_expr), - &pg_query__case_test_expr__descriptor, + offsetof(PgQuery__Node, merge_stmt), + &pg_query__merge_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "array_expr", - 30, + "select_stmt", + 120, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, array_expr), - &pg_query__array_expr__descriptor, + offsetof(PgQuery__Node, select_stmt), + &pg_query__select_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "row_expr", - 31, + "set_operation_stmt", + 121, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, row_expr), - &pg_query__row_expr__descriptor, + offsetof(PgQuery__Node, set_operation_stmt), + &pg_query__set_operation_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "row_compare_expr", - 32, + "return_stmt", + 122, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, row_compare_expr), - &pg_query__row_compare_expr__descriptor, + offsetof(PgQuery__Node, return_stmt), + &pg_query__return_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coalesce_expr", - 33, + "plassign_stmt", + 123, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, coalesce_expr), - &pg_query__coalesce_expr__descriptor, + offsetof(PgQuery__Node, plassign_stmt), + &pg_query__plassign_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "min_max_expr", - 34, + "create_schema_stmt", + 124, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, min_max_expr), - &pg_query__min_max_expr__descriptor, + offsetof(PgQuery__Node, create_schema_stmt), + &pg_query__create_schema_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sqlvalue_function", - 35, + "alter_table_stmt", + 125, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, sqlvalue_function), - &pg_query__sqlvalue_function__descriptor, + offsetof(PgQuery__Node, alter_table_stmt), + &pg_query__alter_table_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "xml_expr", - 36, + "replica_identity_stmt", + 126, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, xml_expr), - &pg_query__xml_expr__descriptor, + offsetof(PgQuery__Node, replica_identity_stmt), + &pg_query__replica_identity_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "null_test", - 37, + "alter_table_cmd", + 127, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, null_test), - &pg_query__null_test__descriptor, + offsetof(PgQuery__Node, alter_table_cmd), + &pg_query__alter_table_cmd__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "boolean_test", - 38, + "alter_collation_stmt", + 128, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, boolean_test), - &pg_query__boolean_test__descriptor, + offsetof(PgQuery__Node, alter_collation_stmt), + &pg_query__alter_collation_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coerce_to_domain", - 39, + "alter_domain_stmt", + 129, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, coerce_to_domain), - &pg_query__coerce_to_domain__descriptor, + offsetof(PgQuery__Node, alter_domain_stmt), + &pg_query__alter_domain_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coerce_to_domain_value", - 40, + "grant_stmt", + 130, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, coerce_to_domain_value), - &pg_query__coerce_to_domain_value__descriptor, + offsetof(PgQuery__Node, grant_stmt), + &pg_query__grant_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "set_to_default", - 41, + "object_with_args", + 131, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, set_to_default), - &pg_query__set_to_default__descriptor, + offsetof(PgQuery__Node, object_with_args), + &pg_query__object_with_args__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "current_of_expr", - 42, + "access_priv", + 132, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, current_of_expr), - &pg_query__current_of_expr__descriptor, + offsetof(PgQuery__Node, access_priv), + &pg_query__access_priv__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "next_value_expr", - 43, + "grant_role_stmt", + 133, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, next_value_expr), - &pg_query__next_value_expr__descriptor, + offsetof(PgQuery__Node, grant_role_stmt), + &pg_query__grant_role_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inference_elem", - 44, + "alter_default_privileges_stmt", + 134, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, inference_elem), - &pg_query__inference_elem__descriptor, + offsetof(PgQuery__Node, alter_default_privileges_stmt), + &pg_query__alter_default_privileges_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "target_entry", - 45, + "copy_stmt", + 135, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, target_entry), - &pg_query__target_entry__descriptor, + offsetof(PgQuery__Node, copy_stmt), + &pg_query__copy_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "range_tbl_ref", - 46, + "variable_set_stmt", + 136, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, range_tbl_ref), - &pg_query__range_tbl_ref__descriptor, + offsetof(PgQuery__Node, variable_set_stmt), + &pg_query__variable_set_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "join_expr", - 47, + "variable_show_stmt", + 137, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, join_expr), - &pg_query__join_expr__descriptor, + offsetof(PgQuery__Node, variable_show_stmt), + &pg_query__variable_show_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "from_expr", - 48, + "create_stmt", + 138, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, from_expr), - &pg_query__from_expr__descriptor, + offsetof(PgQuery__Node, create_stmt), + &pg_query__create_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "on_conflict_expr", - 49, + "constraint", + 139, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, on_conflict_expr), - &pg_query__on_conflict_expr__descriptor, + offsetof(PgQuery__Node, constraint), + &pg_query__constraint__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "into_clause", - 50, + "create_table_space_stmt", + 140, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, into_clause), - &pg_query__into_clause__descriptor, + offsetof(PgQuery__Node, create_table_space_stmt), + &pg_query__create_table_space_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "merge_action", - 51, + "drop_table_space_stmt", + 141, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, merge_action), - &pg_query__merge_action__descriptor, + offsetof(PgQuery__Node, drop_table_space_stmt), + &pg_query__drop_table_space_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "raw_stmt", - 52, + "alter_table_space_options_stmt", + 142, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, raw_stmt), - &pg_query__raw_stmt__descriptor, + offsetof(PgQuery__Node, alter_table_space_options_stmt), + &pg_query__alter_table_space_options_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "query", - 53, + "alter_table_move_all_stmt", + 143, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, query), - &pg_query__query__descriptor, + offsetof(PgQuery__Node, alter_table_move_all_stmt), + &pg_query__alter_table_move_all_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "insert_stmt", - 54, + "create_extension_stmt", + 144, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, insert_stmt), - &pg_query__insert_stmt__descriptor, + offsetof(PgQuery__Node, create_extension_stmt), + &pg_query__create_extension_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "delete_stmt", - 55, + "alter_extension_stmt", + 145, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, delete_stmt), - &pg_query__delete_stmt__descriptor, + offsetof(PgQuery__Node, alter_extension_stmt), + &pg_query__alter_extension_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "update_stmt", - 56, + "alter_extension_contents_stmt", + 146, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, update_stmt), - &pg_query__update_stmt__descriptor, + offsetof(PgQuery__Node, alter_extension_contents_stmt), + &pg_query__alter_extension_contents_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "merge_stmt", - 57, + "create_fdw_stmt", + 147, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, merge_stmt), - &pg_query__merge_stmt__descriptor, + offsetof(PgQuery__Node, create_fdw_stmt), + &pg_query__create_fdw_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "select_stmt", - 58, + "alter_fdw_stmt", + 148, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, select_stmt), - &pg_query__select_stmt__descriptor, + offsetof(PgQuery__Node, alter_fdw_stmt), + &pg_query__alter_fdw_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "return_stmt", - 59, + "create_foreign_server_stmt", + 149, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, return_stmt), - &pg_query__return_stmt__descriptor, + offsetof(PgQuery__Node, create_foreign_server_stmt), + &pg_query__create_foreign_server_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "plassign_stmt", - 60, + "alter_foreign_server_stmt", + 150, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, plassign_stmt), - &pg_query__plassign_stmt__descriptor, + offsetof(PgQuery__Node, alter_foreign_server_stmt), + &pg_query__alter_foreign_server_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_table_stmt", - 61, + "create_foreign_table_stmt", + 151, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_table_stmt), - &pg_query__alter_table_stmt__descriptor, + offsetof(PgQuery__Node, create_foreign_table_stmt), + &pg_query__create_foreign_table_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_table_cmd", - 62, + "create_user_mapping_stmt", + 152, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_table_cmd), - &pg_query__alter_table_cmd__descriptor, + offsetof(PgQuery__Node, create_user_mapping_stmt), + &pg_query__create_user_mapping_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_domain_stmt", - 63, + "alter_user_mapping_stmt", + 153, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_domain_stmt), - &pg_query__alter_domain_stmt__descriptor, + offsetof(PgQuery__Node, alter_user_mapping_stmt), + &pg_query__alter_user_mapping_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "set_operation_stmt", - 64, + "drop_user_mapping_stmt", + 154, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, set_operation_stmt), - &pg_query__set_operation_stmt__descriptor, + offsetof(PgQuery__Node, drop_user_mapping_stmt), + &pg_query__drop_user_mapping_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "grant_stmt", - 65, + "import_foreign_schema_stmt", + 155, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, grant_stmt), - &pg_query__grant_stmt__descriptor, + offsetof(PgQuery__Node, import_foreign_schema_stmt), + &pg_query__import_foreign_schema_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "grant_role_stmt", - 66, + "create_policy_stmt", + 156, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, grant_role_stmt), - &pg_query__grant_role_stmt__descriptor, + offsetof(PgQuery__Node, create_policy_stmt), + &pg_query__create_policy_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_default_privileges_stmt", - 67, + "alter_policy_stmt", + 157, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_default_privileges_stmt), - &pg_query__alter_default_privileges_stmt__descriptor, + offsetof(PgQuery__Node, alter_policy_stmt), + &pg_query__alter_policy_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "close_portal_stmt", - 68, + "create_am_stmt", + 158, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, close_portal_stmt), - &pg_query__close_portal_stmt__descriptor, + offsetof(PgQuery__Node, create_am_stmt), + &pg_query__create_am_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cluster_stmt", - 69, + "create_trig_stmt", + 159, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, cluster_stmt), - &pg_query__cluster_stmt__descriptor, + offsetof(PgQuery__Node, create_trig_stmt), + &pg_query__create_trig_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "copy_stmt", - 70, + "create_event_trig_stmt", + 160, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, copy_stmt), - &pg_query__copy_stmt__descriptor, + offsetof(PgQuery__Node, create_event_trig_stmt), + &pg_query__create_event_trig_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_stmt", - 71, + "alter_event_trig_stmt", + 161, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_stmt), - &pg_query__create_stmt__descriptor, + offsetof(PgQuery__Node, alter_event_trig_stmt), + &pg_query__alter_event_trig_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "define_stmt", - 72, + "create_plang_stmt", + 162, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, define_stmt), - &pg_query__define_stmt__descriptor, + offsetof(PgQuery__Node, create_plang_stmt), + &pg_query__create_plang_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "drop_stmt", - 73, + "create_role_stmt", + 163, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, drop_stmt), - &pg_query__drop_stmt__descriptor, + offsetof(PgQuery__Node, create_role_stmt), + &pg_query__create_role_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "truncate_stmt", - 74, + "alter_role_stmt", + 164, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, truncate_stmt), - &pg_query__truncate_stmt__descriptor, + offsetof(PgQuery__Node, alter_role_stmt), + &pg_query__alter_role_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "comment_stmt", - 75, + "alter_role_set_stmt", + 165, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, comment_stmt), - &pg_query__comment_stmt__descriptor, + offsetof(PgQuery__Node, alter_role_set_stmt), + &pg_query__alter_role_set_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "fetch_stmt", - 76, + "drop_role_stmt", + 166, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, fetch_stmt), - &pg_query__fetch_stmt__descriptor, + offsetof(PgQuery__Node, drop_role_stmt), + &pg_query__drop_role_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "index_stmt", - 77, + "create_seq_stmt", + 167, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, index_stmt), - &pg_query__index_stmt__descriptor, + offsetof(PgQuery__Node, create_seq_stmt), + &pg_query__create_seq_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_function_stmt", - 78, + "alter_seq_stmt", + 168, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_function_stmt), - &pg_query__create_function_stmt__descriptor, + offsetof(PgQuery__Node, alter_seq_stmt), + &pg_query__alter_seq_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_function_stmt", - 79, + "define_stmt", + 169, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_function_stmt), - &pg_query__alter_function_stmt__descriptor, + offsetof(PgQuery__Node, define_stmt), + &pg_query__define_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "do_stmt", - 80, + "create_domain_stmt", + 170, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, do_stmt), - &pg_query__do_stmt__descriptor, + offsetof(PgQuery__Node, create_domain_stmt), + &pg_query__create_domain_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rename_stmt", - 81, + "create_op_class_stmt", + 171, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, rename_stmt), - &pg_query__rename_stmt__descriptor, + offsetof(PgQuery__Node, create_op_class_stmt), + &pg_query__create_op_class_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rule_stmt", - 82, + "create_op_class_item", + 172, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, rule_stmt), - &pg_query__rule_stmt__descriptor, + offsetof(PgQuery__Node, create_op_class_item), + &pg_query__create_op_class_item__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "notify_stmt", - 83, + "create_op_family_stmt", + 173, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, notify_stmt), - &pg_query__notify_stmt__descriptor, + offsetof(PgQuery__Node, create_op_family_stmt), + &pg_query__create_op_family_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "listen_stmt", - 84, + "alter_op_family_stmt", + 174, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, listen_stmt), - &pg_query__listen_stmt__descriptor, + offsetof(PgQuery__Node, alter_op_family_stmt), + &pg_query__alter_op_family_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "unlisten_stmt", - 85, + "drop_stmt", + 175, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, unlisten_stmt), - &pg_query__unlisten_stmt__descriptor, + offsetof(PgQuery__Node, drop_stmt), + &pg_query__drop_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "transaction_stmt", - 86, + "truncate_stmt", + 176, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, transaction_stmt), - &pg_query__transaction_stmt__descriptor, + offsetof(PgQuery__Node, truncate_stmt), + &pg_query__truncate_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "view_stmt", - 87, + "comment_stmt", + 177, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, view_stmt), - &pg_query__view_stmt__descriptor, + offsetof(PgQuery__Node, comment_stmt), + &pg_query__comment_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "load_stmt", - 88, + "sec_label_stmt", + 178, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, load_stmt), - &pg_query__load_stmt__descriptor, + offsetof(PgQuery__Node, sec_label_stmt), + &pg_query__sec_label_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "create_domain_stmt", - 89, + { + "declare_cursor_stmt", + 179, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_domain_stmt), - &pg_query__create_domain_stmt__descriptor, + offsetof(PgQuery__Node, declare_cursor_stmt), + &pg_query__declare_cursor_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "createdb_stmt", - 90, + "close_portal_stmt", + 180, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, createdb_stmt), - &pg_query__createdb_stmt__descriptor, + offsetof(PgQuery__Node, close_portal_stmt), + &pg_query__close_portal_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "dropdb_stmt", - 91, + "fetch_stmt", + 181, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, dropdb_stmt), - &pg_query__dropdb_stmt__descriptor, + offsetof(PgQuery__Node, fetch_stmt), + &pg_query__fetch_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "vacuum_stmt", - 92, + "index_stmt", + 182, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, vacuum_stmt), - &pg_query__vacuum_stmt__descriptor, + offsetof(PgQuery__Node, index_stmt), + &pg_query__index_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "explain_stmt", - 93, + "create_stats_stmt", + 183, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, explain_stmt), - &pg_query__explain_stmt__descriptor, + offsetof(PgQuery__Node, create_stats_stmt), + &pg_query__create_stats_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_table_as_stmt", - 94, + "stats_elem", + 184, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_table_as_stmt), - &pg_query__create_table_as_stmt__descriptor, + offsetof(PgQuery__Node, stats_elem), + &pg_query__stats_elem__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_seq_stmt", - 95, + "alter_stats_stmt", + 185, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_seq_stmt), - &pg_query__create_seq_stmt__descriptor, + offsetof(PgQuery__Node, alter_stats_stmt), + &pg_query__alter_stats_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_seq_stmt", - 96, + "create_function_stmt", + 186, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_seq_stmt), - &pg_query__alter_seq_stmt__descriptor, + offsetof(PgQuery__Node, create_function_stmt), + &pg_query__create_function_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "variable_set_stmt", - 97, + "function_parameter", + 187, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, variable_set_stmt), - &pg_query__variable_set_stmt__descriptor, + offsetof(PgQuery__Node, function_parameter), + &pg_query__function_parameter__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "variable_show_stmt", - 98, + "alter_function_stmt", + 188, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, variable_show_stmt), - &pg_query__variable_show_stmt__descriptor, + offsetof(PgQuery__Node, alter_function_stmt), + &pg_query__alter_function_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "discard_stmt", - 99, + "do_stmt", + 189, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, discard_stmt), - &pg_query__discard_stmt__descriptor, + offsetof(PgQuery__Node, do_stmt), + &pg_query__do_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_trig_stmt", - 100, + "inline_code_block", + 190, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_trig_stmt), - &pg_query__create_trig_stmt__descriptor, + offsetof(PgQuery__Node, inline_code_block), + &pg_query__inline_code_block__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_plang_stmt", - 101, + "call_stmt", + 191, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_plang_stmt), - &pg_query__create_plang_stmt__descriptor, + offsetof(PgQuery__Node, call_stmt), + &pg_query__call_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_role_stmt", - 102, + "call_context", + 192, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_role_stmt), - &pg_query__create_role_stmt__descriptor, + offsetof(PgQuery__Node, call_context), + &pg_query__call_context__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_role_stmt", - 103, + "rename_stmt", + 193, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_role_stmt), - &pg_query__alter_role_stmt__descriptor, + offsetof(PgQuery__Node, rename_stmt), + &pg_query__rename_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "drop_role_stmt", - 104, + "alter_object_depends_stmt", + 194, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, drop_role_stmt), - &pg_query__drop_role_stmt__descriptor, + offsetof(PgQuery__Node, alter_object_depends_stmt), + &pg_query__alter_object_depends_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "lock_stmt", - 105, + "alter_object_schema_stmt", + 195, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, lock_stmt), - &pg_query__lock_stmt__descriptor, + offsetof(PgQuery__Node, alter_object_schema_stmt), + &pg_query__alter_object_schema_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "constraints_set_stmt", - 106, + "alter_owner_stmt", + 196, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, constraints_set_stmt), - &pg_query__constraints_set_stmt__descriptor, + offsetof(PgQuery__Node, alter_owner_stmt), + &pg_query__alter_owner_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "reindex_stmt", - 107, + "alter_operator_stmt", + 197, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, reindex_stmt), - &pg_query__reindex_stmt__descriptor, + offsetof(PgQuery__Node, alter_operator_stmt), + &pg_query__alter_operator_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "check_point_stmt", - 108, + "alter_type_stmt", + 198, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, check_point_stmt), - &pg_query__check_point_stmt__descriptor, + offsetof(PgQuery__Node, alter_type_stmt), + &pg_query__alter_type_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_schema_stmt", - 109, + "rule_stmt", + 199, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_schema_stmt), - &pg_query__create_schema_stmt__descriptor, + offsetof(PgQuery__Node, rule_stmt), + &pg_query__rule_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_database_stmt", - 110, + "notify_stmt", + 200, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_database_stmt), - &pg_query__alter_database_stmt__descriptor, + offsetof(PgQuery__Node, notify_stmt), + &pg_query__notify_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_database_refresh_coll_stmt", - 111, + "listen_stmt", + 201, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_database_refresh_coll_stmt), - &pg_query__alter_database_refresh_coll_stmt__descriptor, + offsetof(PgQuery__Node, listen_stmt), + &pg_query__listen_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_database_set_stmt", - 112, + "unlisten_stmt", + 202, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_database_set_stmt), - &pg_query__alter_database_set_stmt__descriptor, + offsetof(PgQuery__Node, unlisten_stmt), + &pg_query__unlisten_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_role_set_stmt", - 113, + "transaction_stmt", + 203, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_role_set_stmt), - &pg_query__alter_role_set_stmt__descriptor, + offsetof(PgQuery__Node, transaction_stmt), + &pg_query__transaction_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_conversion_stmt", - 114, + "composite_type_stmt", + 204, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_conversion_stmt), - &pg_query__create_conversion_stmt__descriptor, + offsetof(PgQuery__Node, composite_type_stmt), + &pg_query__composite_type_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_cast_stmt", - 115, + "create_enum_stmt", + 205, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_cast_stmt), - &pg_query__create_cast_stmt__descriptor, + offsetof(PgQuery__Node, create_enum_stmt), + &pg_query__create_enum_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_op_class_stmt", - 116, + "create_range_stmt", + 206, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_op_class_stmt), - &pg_query__create_op_class_stmt__descriptor, + offsetof(PgQuery__Node, create_range_stmt), + &pg_query__create_range_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_op_family_stmt", - 117, + "alter_enum_stmt", + 207, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_op_family_stmt), - &pg_query__create_op_family_stmt__descriptor, + offsetof(PgQuery__Node, alter_enum_stmt), + &pg_query__alter_enum_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_op_family_stmt", - 118, + "view_stmt", + 208, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_op_family_stmt), - &pg_query__alter_op_family_stmt__descriptor, + offsetof(PgQuery__Node, view_stmt), + &pg_query__view_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "prepare_stmt", - 119, + "load_stmt", + 209, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, prepare_stmt), - &pg_query__prepare_stmt__descriptor, + offsetof(PgQuery__Node, load_stmt), + &pg_query__load_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "execute_stmt", - 120, + "createdb_stmt", + 210, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, execute_stmt), - &pg_query__execute_stmt__descriptor, + offsetof(PgQuery__Node, createdb_stmt), + &pg_query__createdb_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "deallocate_stmt", - 121, + "alter_database_stmt", + 211, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, deallocate_stmt), - &pg_query__deallocate_stmt__descriptor, + offsetof(PgQuery__Node, alter_database_stmt), + &pg_query__alter_database_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "declare_cursor_stmt", - 122, + "alter_database_refresh_coll_stmt", + 212, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, declare_cursor_stmt), - &pg_query__declare_cursor_stmt__descriptor, + offsetof(PgQuery__Node, alter_database_refresh_coll_stmt), + &pg_query__alter_database_refresh_coll_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_table_space_stmt", - 123, + "alter_database_set_stmt", + 213, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_table_space_stmt), - &pg_query__create_table_space_stmt__descriptor, + offsetof(PgQuery__Node, alter_database_set_stmt), + &pg_query__alter_database_set_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "drop_table_space_stmt", - 124, + "dropdb_stmt", + 214, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, drop_table_space_stmt), - &pg_query__drop_table_space_stmt__descriptor, + offsetof(PgQuery__Node, dropdb_stmt), + &pg_query__dropdb_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_object_depends_stmt", - 125, + "alter_system_stmt", + 215, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_object_depends_stmt), - &pg_query__alter_object_depends_stmt__descriptor, + offsetof(PgQuery__Node, alter_system_stmt), + &pg_query__alter_system_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_object_schema_stmt", - 126, + "cluster_stmt", + 216, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_object_schema_stmt), - &pg_query__alter_object_schema_stmt__descriptor, + offsetof(PgQuery__Node, cluster_stmt), + &pg_query__cluster_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_owner_stmt", - 127, + "vacuum_stmt", + 217, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_owner_stmt), - &pg_query__alter_owner_stmt__descriptor, + offsetof(PgQuery__Node, vacuum_stmt), + &pg_query__vacuum_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_operator_stmt", - 128, + "vacuum_relation", + 218, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_operator_stmt), - &pg_query__alter_operator_stmt__descriptor, + offsetof(PgQuery__Node, vacuum_relation), + &pg_query__vacuum_relation__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_type_stmt", - 129, + "explain_stmt", + 219, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_type_stmt), - &pg_query__alter_type_stmt__descriptor, + offsetof(PgQuery__Node, explain_stmt), + &pg_query__explain_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "drop_owned_stmt", - 130, + "create_table_as_stmt", + 220, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, drop_owned_stmt), - &pg_query__drop_owned_stmt__descriptor, + offsetof(PgQuery__Node, create_table_as_stmt), + &pg_query__create_table_as_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "reassign_owned_stmt", - 131, + "refresh_mat_view_stmt", + 221, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, reassign_owned_stmt), - &pg_query__reassign_owned_stmt__descriptor, + offsetof(PgQuery__Node, refresh_mat_view_stmt), + &pg_query__refresh_mat_view_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "composite_type_stmt", - 132, + "check_point_stmt", + 222, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, composite_type_stmt), - &pg_query__composite_type_stmt__descriptor, + offsetof(PgQuery__Node, check_point_stmt), + &pg_query__check_point_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_enum_stmt", - 133, + "discard_stmt", + 223, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_enum_stmt), - &pg_query__create_enum_stmt__descriptor, + offsetof(PgQuery__Node, discard_stmt), + &pg_query__discard_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_range_stmt", - 134, + "lock_stmt", + 224, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_range_stmt), - &pg_query__create_range_stmt__descriptor, + offsetof(PgQuery__Node, lock_stmt), + &pg_query__lock_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_enum_stmt", - 135, + "constraints_set_stmt", + 225, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_enum_stmt), - &pg_query__alter_enum_stmt__descriptor, + offsetof(PgQuery__Node, constraints_set_stmt), + &pg_query__constraints_set_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_tsdictionary_stmt", - 136, + "reindex_stmt", + 226, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_tsdictionary_stmt), - &pg_query__alter_tsdictionary_stmt__descriptor, + offsetof(PgQuery__Node, reindex_stmt), + &pg_query__reindex_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_tsconfiguration_stmt", - 137, + "create_conversion_stmt", + 227, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_tsconfiguration_stmt), - &pg_query__alter_tsconfiguration_stmt__descriptor, + offsetof(PgQuery__Node, create_conversion_stmt), + &pg_query__create_conversion_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_fdw_stmt", - 138, + "create_cast_stmt", + 228, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_fdw_stmt), - &pg_query__create_fdw_stmt__descriptor, + offsetof(PgQuery__Node, create_cast_stmt), + &pg_query__create_cast_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_fdw_stmt", - 139, + "create_transform_stmt", + 229, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_fdw_stmt), - &pg_query__alter_fdw_stmt__descriptor, + offsetof(PgQuery__Node, create_transform_stmt), + &pg_query__create_transform_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_foreign_server_stmt", - 140, + "prepare_stmt", + 230, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_foreign_server_stmt), - &pg_query__create_foreign_server_stmt__descriptor, + offsetof(PgQuery__Node, prepare_stmt), + &pg_query__prepare_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_foreign_server_stmt", - 141, + "execute_stmt", + 231, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_foreign_server_stmt), - &pg_query__alter_foreign_server_stmt__descriptor, + offsetof(PgQuery__Node, execute_stmt), + &pg_query__execute_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_user_mapping_stmt", - 142, + "deallocate_stmt", + 232, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_user_mapping_stmt), - &pg_query__create_user_mapping_stmt__descriptor, + offsetof(PgQuery__Node, deallocate_stmt), + &pg_query__deallocate_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_user_mapping_stmt", - 143, + "drop_owned_stmt", + 233, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_user_mapping_stmt), - &pg_query__alter_user_mapping_stmt__descriptor, + offsetof(PgQuery__Node, drop_owned_stmt), + &pg_query__drop_owned_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "drop_user_mapping_stmt", - 144, + "reassign_owned_stmt", + 234, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, drop_user_mapping_stmt), - &pg_query__drop_user_mapping_stmt__descriptor, + offsetof(PgQuery__Node, reassign_owned_stmt), + &pg_query__reassign_owned_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_table_space_options_stmt", - 145, + "alter_tsdictionary_stmt", + 235, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_table_space_options_stmt), - &pg_query__alter_table_space_options_stmt__descriptor, + offsetof(PgQuery__Node, alter_tsdictionary_stmt), + &pg_query__alter_tsdictionary_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_table_move_all_stmt", - 146, + "alter_tsconfiguration_stmt", + 236, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_table_move_all_stmt), - &pg_query__alter_table_move_all_stmt__descriptor, + offsetof(PgQuery__Node, alter_tsconfiguration_stmt), + &pg_query__alter_tsconfiguration_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sec_label_stmt", - 147, + "publication_table", + 237, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, sec_label_stmt), - &pg_query__sec_label_stmt__descriptor, + offsetof(PgQuery__Node, publication_table), + &pg_query__publication_table__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_foreign_table_stmt", - 148, + "publication_obj_spec", + 238, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_foreign_table_stmt), - &pg_query__create_foreign_table_stmt__descriptor, + offsetof(PgQuery__Node, publication_obj_spec), + &pg_query__publication_obj_spec__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "import_foreign_schema_stmt", - 149, + "create_publication_stmt", + 239, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, import_foreign_schema_stmt), - &pg_query__import_foreign_schema_stmt__descriptor, + offsetof(PgQuery__Node, create_publication_stmt), + &pg_query__create_publication_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_extension_stmt", - 150, + "alter_publication_stmt", + 240, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_extension_stmt), - &pg_query__create_extension_stmt__descriptor, + offsetof(PgQuery__Node, alter_publication_stmt), + &pg_query__alter_publication_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_extension_stmt", - 151, + "create_subscription_stmt", + 241, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_extension_stmt), - &pg_query__alter_extension_stmt__descriptor, + offsetof(PgQuery__Node, create_subscription_stmt), + &pg_query__create_subscription_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_extension_contents_stmt", - 152, + "alter_subscription_stmt", + 242, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_extension_contents_stmt), - &pg_query__alter_extension_contents_stmt__descriptor, + offsetof(PgQuery__Node, alter_subscription_stmt), + &pg_query__alter_subscription_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_event_trig_stmt", - 153, + "drop_subscription_stmt", + 243, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_event_trig_stmt), - &pg_query__create_event_trig_stmt__descriptor, + offsetof(PgQuery__Node, drop_subscription_stmt), + &pg_query__drop_subscription_stmt__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_event_trig_stmt", - 154, + "integer", + 244, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_event_trig_stmt), - &pg_query__alter_event_trig_stmt__descriptor, + offsetof(PgQuery__Node, integer), + &pg_query__integer__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refresh_mat_view_stmt", - 155, + "float", + 245, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, refresh_mat_view_stmt), - &pg_query__refresh_mat_view_stmt__descriptor, + offsetof(PgQuery__Node, float_), + &pg_query__float__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "replica_identity_stmt", - 156, + "boolean", + 246, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, replica_identity_stmt), - &pg_query__replica_identity_stmt__descriptor, + offsetof(PgQuery__Node, boolean), + &pg_query__boolean__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_system_stmt", - 157, + "string", + 247, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_system_stmt), - &pg_query__alter_system_stmt__descriptor, + offsetof(PgQuery__Node, string), + &pg_query__string__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_policy_stmt", - 158, + "bit_string", + 248, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_policy_stmt), - &pg_query__create_policy_stmt__descriptor, + offsetof(PgQuery__Node, bit_string), + &pg_query__bit_string__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alter_policy_stmt", - 159, + "list", + 249, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_policy_stmt), - &pg_query__alter_policy_stmt__descriptor, + offsetof(PgQuery__Node, list), + &pg_query__list__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_transform_stmt", - 160, + "int_list", + 250, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_transform_stmt), - &pg_query__create_transform_stmt__descriptor, + offsetof(PgQuery__Node, int_list), + &pg_query__int_list__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_am_stmt", - 161, + "oid_list", + 251, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_am_stmt), - &pg_query__create_am_stmt__descriptor, + offsetof(PgQuery__Node, oid_list), + &pg_query__oid_list__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_publication_stmt", - 162, + "a_const", + 252, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_publication_stmt), - &pg_query__create_publication_stmt__descriptor, + offsetof(PgQuery__Node, a_const), + &pg_query__a__const__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__node__field_indices_by_name[] = { + 67, /* field[67] = a_array_expr */ + 251, /* field[251] = a_const */ + 59, /* field[59] = a_expr */ + 65, /* field[65] = a_indices */ + 66, /* field[66] = a_indirection */ + 64, /* field[64] = a_star */ + 131, /* field[131] = access_priv */ + 6, /* field[6] = aggref */ + 0, /* field[0] = alias */ + 127, /* field[127] = alter_collation_stmt */ + 211, /* field[211] = alter_database_refresh_coll_stmt */ + 212, /* field[212] = alter_database_set_stmt */ + 210, /* field[210] = alter_database_stmt */ + 133, /* field[133] = alter_default_privileges_stmt */ + 128, /* field[128] = alter_domain_stmt */ + 206, /* field[206] = alter_enum_stmt */ + 160, /* field[160] = alter_event_trig_stmt */ + 145, /* field[145] = alter_extension_contents_stmt */ + 144, /* field[144] = alter_extension_stmt */ + 147, /* field[147] = alter_fdw_stmt */ + 149, /* field[149] = alter_foreign_server_stmt */ + 187, /* field[187] = alter_function_stmt */ + 193, /* field[193] = alter_object_depends_stmt */ + 194, /* field[194] = alter_object_schema_stmt */ + 173, /* field[173] = alter_op_family_stmt */ + 196, /* field[196] = alter_operator_stmt */ + 195, /* field[195] = alter_owner_stmt */ + 156, /* field[156] = alter_policy_stmt */ + 239, /* field[239] = alter_publication_stmt */ + 164, /* field[164] = alter_role_set_stmt */ + 163, /* field[163] = alter_role_stmt */ + 167, /* field[167] = alter_seq_stmt */ + 184, /* field[184] = alter_stats_stmt */ + 241, /* field[241] = alter_subscription_stmt */ + 214, /* field[214] = alter_system_stmt */ + 126, /* field[126] = alter_table_cmd */ + 142, /* field[142] = alter_table_move_all_stmt */ + 141, /* field[141] = alter_table_space_options_stmt */ + 124, /* field[124] = alter_table_stmt */ + 235, /* field[235] = alter_tsconfiguration_stmt */ + 234, /* field[234] = alter_tsdictionary_stmt */ + 197, /* field[197] = alter_type_stmt */ + 152, /* field[152] = alter_user_mapping_stmt */ + 19, /* field[19] = alternative_sub_plan */ + 24, /* field[24] = array_coerce_expr */ + 30, /* field[30] = array_expr */ + 247, /* field[247] = bit_string */ + 16, /* field[16] = bool_expr */ + 245, /* field[245] = boolean */ + 43, /* field[43] = boolean_test */ + 191, /* field[191] = call_context */ + 190, /* field[190] = call_stmt */ + 27, /* field[27] = case_expr */ + 29, /* field[29] = case_test_expr */ + 28, /* field[28] = case_when */ + 221, /* field[221] = check_point_stmt */ + 179, /* field[179] = close_portal_stmt */ + 215, /* field[215] = cluster_stmt */ + 33, /* field[33] = coalesce_expr */ + 44, /* field[44] = coerce_to_domain */ + 45, /* field[45] = coerce_to_domain_value */ + 23, /* field[23] = coerce_via_io */ + 61, /* field[61] = collate_clause */ + 26, /* field[26] = collate_expr */ + 77, /* field[77] = column_def */ + 57, /* field[57] = column_ref */ + 176, /* field[176] = comment_stmt */ + 102, /* field[102] = common_table_expr */ + 203, /* field[203] = composite_type_stmt */ + 138, /* field[138] = constraint */ + 224, /* field[224] = constraints_set_stmt */ + 25, /* field[25] = convert_rowtype_expr */ + 134, /* field[134] = copy_stmt */ + 157, /* field[157] = create_am_stmt */ + 227, /* field[227] = create_cast_stmt */ + 226, /* field[226] = create_conversion_stmt */ + 169, /* field[169] = create_domain_stmt */ + 204, /* field[204] = create_enum_stmt */ + 159, /* field[159] = create_event_trig_stmt */ + 143, /* field[143] = create_extension_stmt */ + 146, /* field[146] = create_fdw_stmt */ + 148, /* field[148] = create_foreign_server_stmt */ + 150, /* field[150] = create_foreign_table_stmt */ + 185, /* field[185] = create_function_stmt */ + 171, /* field[171] = create_op_class_item */ + 170, /* field[170] = create_op_class_stmt */ + 172, /* field[172] = create_op_family_stmt */ + 161, /* field[161] = create_plang_stmt */ + 155, /* field[155] = create_policy_stmt */ + 238, /* field[238] = create_publication_stmt */ + 205, /* field[205] = create_range_stmt */ + 162, /* field[162] = create_role_stmt */ + 123, /* field[123] = create_schema_stmt */ + 166, /* field[166] = create_seq_stmt */ + 182, /* field[182] = create_stats_stmt */ + 137, /* field[137] = create_stmt */ + 240, /* field[240] = create_subscription_stmt */ + 219, /* field[219] = create_table_as_stmt */ + 139, /* field[139] = create_table_space_stmt */ + 228, /* field[228] = create_transform_stmt */ + 158, /* field[158] = create_trig_stmt */ + 151, /* field[151] = create_user_mapping_stmt */ + 209, /* field[209] = createdb_stmt */ + 101, /* field[101] = ctecycle_clause */ + 100, /* field[100] = ctesearch_clause */ + 47, /* field[47] = current_of_expr */ + 231, /* field[231] = deallocate_stmt */ + 178, /* field[178] = declare_cursor_stmt */ + 80, /* field[80] = def_elem */ + 168, /* field[168] = define_stmt */ + 116, /* field[116] = delete_stmt */ + 222, /* field[222] = discard_stmt */ + 13, /* field[13] = distinct_expr */ + 188, /* field[188] = do_stmt */ + 232, /* field[232] = drop_owned_stmt */ + 165, /* field[165] = drop_role_stmt */ + 174, /* field[174] = drop_stmt */ + 242, /* field[242] = drop_subscription_stmt */ + 140, /* field[140] = drop_table_space_stmt */ + 153, /* field[153] = drop_user_mapping_stmt */ + 213, /* field[213] = dropdb_stmt */ + 230, /* field[230] = execute_stmt */ + 218, /* field[218] = explain_stmt */ + 180, /* field[180] = fetch_stmt */ + 20, /* field[20] = field_select */ + 21, /* field[21] = field_store */ + 244, /* field[244] = float */ + 53, /* field[53] = from_expr */ + 63, /* field[63] = func_call */ + 10, /* field[10] = func_expr */ + 186, /* field[186] = function_parameter */ + 132, /* field[132] = grant_role_stmt */ + 129, /* field[129] = grant_stmt */ + 7, /* field[7] = grouping_func */ + 94, /* field[94] = grouping_set */ + 154, /* field[154] = import_foreign_schema_stmt */ + 79, /* field[79] = index_elem */ + 181, /* field[181] = index_stmt */ + 98, /* field[98] = infer_clause */ + 49, /* field[49] = inference_elem */ + 189, /* field[189] = inline_code_block */ + 115, /* field[115] = insert_stmt */ + 249, /* field[249] = int_list */ + 243, /* field[243] = integer */ + 3, /* field[3] = into_clause */ + 52, /* field[52] = join_expr */ + 111, /* field[111] = json_agg_constructor */ + 113, /* field[113] = json_array_agg */ + 109, /* field[109] = json_array_constructor */ + 110, /* field[110] = json_array_query_constructor */ + 40, /* field[40] = json_constructor_expr */ + 37, /* field[37] = json_format */ + 41, /* field[41] = json_is_predicate */ + 107, /* field[107] = json_key_value */ + 112, /* field[112] = json_object_agg */ + 108, /* field[108] = json_object_constructor */ + 106, /* field[106] = json_output */ + 38, /* field[38] = json_returning */ + 39, /* field[39] = json_value_expr */ + 248, /* field[248] = list */ + 200, /* field[200] = listen_stmt */ + 208, /* field[208] = load_stmt */ + 223, /* field[223] = lock_stmt */ + 81, /* field[81] = locking_clause */ + 104, /* field[104] = merge_action */ + 118, /* field[118] = merge_stmt */ + 103, /* field[103] = merge_when_clause */ + 34, /* field[34] = min_max_expr */ + 69, /* field[69] = multi_assign_ref */ + 11, /* field[11] = named_arg_expr */ + 48, /* field[48] = next_value_expr */ + 199, /* field[199] = notify_stmt */ + 14, /* field[14] = null_if_expr */ + 42, /* field[42] = null_test */ + 130, /* field[130] = object_with_args */ + 250, /* field[250] = oid_list */ + 99, /* field[99] = on_conflict_clause */ + 54, /* field[54] = on_conflict_expr */ + 12, /* field[12] = op_expr */ + 5, /* field[5] = param */ + 58, /* field[58] = param_ref */ + 85, /* field[85] = partition_bound_spec */ + 87, /* field[87] = partition_cmd */ + 83, /* field[83] = partition_elem */ + 86, /* field[86] = partition_range_datum */ + 84, /* field[84] = partition_spec */ + 122, /* field[122] = plassign_stmt */ + 229, /* field[229] = prepare_stmt */ + 237, /* field[237] = publication_obj_spec */ + 236, /* field[236] = publication_table */ + 55, /* field[55] = query */ + 73, /* field[73] = range_function */ + 72, /* field[72] = range_subselect */ + 74, /* field[74] = range_table_func */ + 75, /* field[75] = range_table_func_col */ + 76, /* field[76] = range_table_sample */ + 88, /* field[88] = range_tbl_entry */ + 90, /* field[90] = range_tbl_function */ + 51, /* field[51] = range_tbl_ref */ + 1, /* field[1] = range_var */ + 114, /* field[114] = raw_stmt */ + 233, /* field[233] = reassign_owned_stmt */ + 220, /* field[220] = refresh_mat_view_stmt */ + 225, /* field[225] = reindex_stmt */ + 22, /* field[22] = relabel_type */ + 192, /* field[192] = rename_stmt */ + 125, /* field[125] = replica_identity_stmt */ + 68, /* field[68] = res_target */ + 121, /* field[121] = return_stmt */ + 62, /* field[62] = role_spec */ + 32, /* field[32] = row_compare_expr */ + 31, /* field[31] = row_expr */ + 96, /* field[96] = row_mark_clause */ + 89, /* field[89] = rtepermission_info */ + 198, /* field[198] = rule_stmt */ + 15, /* field[15] = scalar_array_op_expr */ + 177, /* field[177] = sec_label_stmt */ + 119, /* field[119] = select_stmt */ + 120, /* field[120] = set_operation_stmt */ + 46, /* field[46] = set_to_default */ + 70, /* field[70] = sort_by */ + 93, /* field[93] = sort_group_clause */ + 35, /* field[35] = sqlvalue_function */ + 183, /* field[183] = stats_elem */ + 246, /* field[246] = string */ + 17, /* field[17] = sub_link */ + 18, /* field[18] = sub_plan */ + 9, /* field[9] = subscripting_ref */ + 2, /* field[2] = table_func */ + 78, /* field[78] = table_like_clause */ + 91, /* field[91] = table_sample_clause */ + 50, /* field[50] = target_entry */ + 202, /* field[202] = transaction_stmt */ + 105, /* field[105] = trigger_transition */ + 175, /* field[175] = truncate_stmt */ + 60, /* field[60] = type_cast */ + 56, /* field[56] = type_name */ + 201, /* field[201] = unlisten_stmt */ + 117, /* field[117] = update_stmt */ + 217, /* field[217] = vacuum_relation */ + 216, /* field[216] = vacuum_stmt */ + 4, /* field[4] = var */ + 135, /* field[135] = variable_set_stmt */ + 136, /* field[136] = variable_show_stmt */ + 207, /* field[207] = view_stmt */ + 95, /* field[95] = window_clause */ + 71, /* field[71] = window_def */ + 8, /* field[8] = window_func */ + 92, /* field[92] = with_check_option */ + 97, /* field[97] = with_clause */ + 36, /* field[36] = xml_expr */ + 82, /* field[82] = xml_serialize */ +}; +static const ProtobufCIntRange pg_query__node__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 252 } +}; +const ProtobufCMessageDescriptor pg_query__node__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.Node", + "Node", + "PgQuery__Node", + "pg_query", + sizeof(PgQuery__Node), + 252, + pg_query__node__field_descriptors, + pg_query__node__field_indices_by_name, + 1, pg_query__node__number_ranges, + (ProtobufCMessageInit) pg_query__node__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__integer__field_descriptors[1] = +{ { - "alter_publication_stmt", - 163, + "ival", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_publication_stmt), - &pg_query__alter_publication_stmt__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Integer, ival), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__integer__field_indices_by_name[] = { + 0, /* field[0] = ival */ +}; +static const ProtobufCIntRange pg_query__integer__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__integer__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.Integer", + "Integer", + "PgQuery__Integer", + "pg_query", + sizeof(PgQuery__Integer), + 1, + pg_query__integer__field_descriptors, + pg_query__integer__field_indices_by_name, + 1, pg_query__integer__number_ranges, + (ProtobufCMessageInit) pg_query__integer__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__float__field_descriptors[1] = +{ { - "create_subscription_stmt", - 164, + "fval", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_subscription_stmt), - &pg_query__create_subscription_stmt__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__Float, fval), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__float__field_indices_by_name[] = { + 0, /* field[0] = fval */ +}; +static const ProtobufCIntRange pg_query__float__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__float__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.Float", + "Float", + "PgQuery__Float", + "pg_query", + sizeof(PgQuery__Float), + 1, + pg_query__float__field_descriptors, + pg_query__float__field_indices_by_name, + 1, pg_query__float__number_ranges, + (ProtobufCMessageInit) pg_query__float__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__boolean__field_descriptors[1] = +{ { - "alter_subscription_stmt", - 165, + "boolval", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_subscription_stmt), - &pg_query__alter_subscription_stmt__descriptor, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__Boolean, boolval), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__boolean__field_indices_by_name[] = { + 0, /* field[0] = boolval */ +}; +static const ProtobufCIntRange pg_query__boolean__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__boolean__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.Boolean", + "Boolean", + "PgQuery__Boolean", + "pg_query", + sizeof(PgQuery__Boolean), + 1, + pg_query__boolean__field_descriptors, + pg_query__boolean__field_indices_by_name, + 1, pg_query__boolean__number_ranges, + (ProtobufCMessageInit) pg_query__boolean__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__string__field_descriptors[1] = +{ { - "drop_subscription_stmt", - 166, + "sval", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, drop_subscription_stmt), - &pg_query__drop_subscription_stmt__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__String, sval), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__string__field_indices_by_name[] = { + 0, /* field[0] = sval */ +}; +static const ProtobufCIntRange pg_query__string__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__string__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.String", + "String", + "PgQuery__String", + "pg_query", + sizeof(PgQuery__String), + 1, + pg_query__string__field_descriptors, + pg_query__string__field_indices_by_name, + 1, pg_query__string__number_ranges, + (ProtobufCMessageInit) pg_query__string__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__bit_string__field_descriptors[1] = +{ { - "create_stats_stmt", - 167, + "bsval", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_stats_stmt), - &pg_query__create_stats_stmt__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__BitString, bsval), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__bit_string__field_indices_by_name[] = { + 0, /* field[0] = bsval */ +}; +static const ProtobufCIntRange pg_query__bit_string__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__bit_string__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.BitString", + "BitString", + "PgQuery__BitString", + "pg_query", + sizeof(PgQuery__BitString), + 1, + pg_query__bit_string__field_descriptors, + pg_query__bit_string__field_indices_by_name, + 1, pg_query__bit_string__number_ranges, + (ProtobufCMessageInit) pg_query__bit_string__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__list__field_descriptors[1] = +{ { - "alter_collation_stmt", - 168, - PROTOBUF_C_LABEL_NONE, + "items", + 1, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_collation_stmt), - &pg_query__alter_collation_stmt__descriptor, + offsetof(PgQuery__List, n_items), + offsetof(PgQuery__List, items), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__list__field_indices_by_name[] = { + 0, /* field[0] = items */ +}; +static const ProtobufCIntRange pg_query__list__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__list__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.List", + "List", + "PgQuery__List", + "pg_query", + sizeof(PgQuery__List), + 1, + pg_query__list__field_descriptors, + pg_query__list__field_indices_by_name, + 1, pg_query__list__number_ranges, + (ProtobufCMessageInit) pg_query__list__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__oid_list__field_descriptors[1] = +{ { - "call_stmt", - 169, - PROTOBUF_C_LABEL_NONE, + "items", + 1, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, call_stmt), - &pg_query__call_stmt__descriptor, + offsetof(PgQuery__OidList, n_items), + offsetof(PgQuery__OidList, items), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__oid_list__field_indices_by_name[] = { + 0, /* field[0] = items */ +}; +static const ProtobufCIntRange pg_query__oid_list__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__oid_list__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.OidList", + "OidList", + "PgQuery__OidList", + "pg_query", + sizeof(PgQuery__OidList), + 1, + pg_query__oid_list__field_descriptors, + pg_query__oid_list__field_indices_by_name, + 1, pg_query__oid_list__number_ranges, + (ProtobufCMessageInit) pg_query__oid_list__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__int_list__field_descriptors[1] = +{ { - "alter_stats_stmt", - 170, - PROTOBUF_C_LABEL_NONE, + "items", + 1, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, alter_stats_stmt), - &pg_query__alter_stats_stmt__descriptor, + offsetof(PgQuery__IntList, n_items), + offsetof(PgQuery__IntList, items), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__int_list__field_indices_by_name[] = { + 0, /* field[0] = items */ +}; +static const ProtobufCIntRange pg_query__int_list__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__int_list__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.IntList", + "IntList", + "PgQuery__IntList", + "pg_query", + sizeof(PgQuery__IntList), + 1, + pg_query__int_list__field_descriptors, + pg_query__int_list__field_indices_by_name, + 1, pg_query__int_list__number_ranges, + (ProtobufCMessageInit) pg_query__int_list__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__a__const__field_descriptors[7] = +{ { - "a_expr", - 171, + "ival", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, a_expr), - &pg_query__a__expr__descriptor, + offsetof(PgQuery__AConst, val_case), + offsetof(PgQuery__AConst, ival), + &pg_query__integer__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "column_ref", - 172, + "fval", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, column_ref), - &pg_query__column_ref__descriptor, + offsetof(PgQuery__AConst, val_case), + offsetof(PgQuery__AConst, fval), + &pg_query__float__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "param_ref", - 173, + "boolval", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, param_ref), - &pg_query__param_ref__descriptor, + offsetof(PgQuery__AConst, val_case), + offsetof(PgQuery__AConst, boolval), + &pg_query__boolean__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "func_call", - 174, + "sval", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, func_call), - &pg_query__func_call__descriptor, + offsetof(PgQuery__AConst, val_case), + offsetof(PgQuery__AConst, sval), + &pg_query__string__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "a_star", - 175, + "bsval", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, a_star), - &pg_query__a__star__descriptor, + offsetof(PgQuery__AConst, val_case), + offsetof(PgQuery__AConst, bsval), + &pg_query__bit_string__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "a_indices", - 176, + "isnull", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, a_indices), - &pg_query__a__indices__descriptor, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__AConst, isnull), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "a_indirection", - 177, + "location", + 11, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, a_indirection), - &pg_query__a__indirection__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__AConst, location), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__a__const__field_indices_by_name[] = { + 2, /* field[2] = boolval */ + 4, /* field[4] = bsval */ + 1, /* field[1] = fval */ + 5, /* field[5] = isnull */ + 0, /* field[0] = ival */ + 6, /* field[6] = location */ + 3, /* field[3] = sval */ +}; +static const ProtobufCIntRange pg_query__a__const__number_ranges[2 + 1] = +{ + { 1, 0 }, + { 10, 5 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__a__const__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.A_Const", + "AConst", + "PgQuery__AConst", + "pg_query", + sizeof(PgQuery__AConst), + 7, + pg_query__a__const__field_descriptors, + pg_query__a__const__field_indices_by_name, + 2, pg_query__a__const__number_ranges, + (ProtobufCMessageInit) pg_query__a__const__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__alias__field_descriptors[2] = +{ { - "a_array_expr", - 178, + "aliasname", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, a_array_expr), - &pg_query__a__array_expr__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__Alias, aliasname), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "res_target", - 179, - PROTOBUF_C_LABEL_NONE, + "colnames", + 2, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, res_target), - &pg_query__res_target__descriptor, + offsetof(PgQuery__Alias, n_colnames), + offsetof(PgQuery__Alias, colnames), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__alias__field_indices_by_name[] = { + 0, /* field[0] = aliasname */ + 1, /* field[1] = colnames */ +}; +static const ProtobufCIntRange pg_query__alias__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__alias__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.Alias", + "Alias", + "PgQuery__Alias", + "pg_query", + sizeof(PgQuery__Alias), + 2, + pg_query__alias__field_descriptors, + pg_query__alias__field_indices_by_name, + 1, pg_query__alias__number_ranges, + (ProtobufCMessageInit) pg_query__alias__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__range_var__field_descriptors[7] = +{ { - "multi_assign_ref", - 180, + "catalogname", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, multi_assign_ref), - &pg_query__multi_assign_ref__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeVar, catalogname), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_cast", - 181, + "schemaname", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, type_cast), - &pg_query__type_cast__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeVar, schemaname), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "collate_clause", - 182, + "relname", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, collate_clause), - &pg_query__collate_clause__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeVar, relname), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sort_by", - 183, + "inh", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, sort_by), - &pg_query__sort_by__descriptor, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeVar, inh), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "window_def", - 184, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, window_def), - &pg_query__window_def__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "range_subselect", - 185, + "relpersistence", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, range_subselect), - &pg_query__range_subselect__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeVar, relpersistence), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "range_function", - 186, + "alias", + 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, range_function), - &pg_query__range_function__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeVar, alias), + &pg_query__alias__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "range_table_sample", - 187, + "location", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, range_table_sample), - &pg_query__range_table_sample__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeVar, location), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__range_var__field_indices_by_name[] = { + 5, /* field[5] = alias */ + 0, /* field[0] = catalogname */ + 3, /* field[3] = inh */ + 6, /* field[6] = location */ + 2, /* field[2] = relname */ + 4, /* field[4] = relpersistence */ + 1, /* field[1] = schemaname */ +}; +static const ProtobufCIntRange pg_query__range_var__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__range_var__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.RangeVar", + "RangeVar", + "PgQuery__RangeVar", + "pg_query", + sizeof(PgQuery__RangeVar), + 7, + pg_query__range_var__field_descriptors, + pg_query__range_var__field_indices_by_name, + 1, pg_query__range_var__number_ranges, + (ProtobufCMessageInit) pg_query__range_var__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__table_func__field_descriptors[13] = +{ { - "range_table_func", - 188, - PROTOBUF_C_LABEL_NONE, + "ns_uris", + 1, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, range_table_func), - &pg_query__range_table_func__descriptor, + offsetof(PgQuery__TableFunc, n_ns_uris), + offsetof(PgQuery__TableFunc, ns_uris), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "range_table_func_col", - 189, - PROTOBUF_C_LABEL_NONE, + "ns_names", + 2, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, range_table_func_col), - &pg_query__range_table_func_col__descriptor, + offsetof(PgQuery__TableFunc, n_ns_names), + offsetof(PgQuery__TableFunc, ns_names), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_name", - 190, + "docexpr", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, type_name), - &pg_query__type_name__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__TableFunc, docexpr), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "column_def", - 191, + "rowexpr", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, column_def), - &pg_query__column_def__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__TableFunc, rowexpr), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "index_elem", - 192, - PROTOBUF_C_LABEL_NONE, + "colnames", + 5, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, index_elem), - &pg_query__index_elem__descriptor, + offsetof(PgQuery__TableFunc, n_colnames), + offsetof(PgQuery__TableFunc, colnames), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "stats_elem", - 193, - PROTOBUF_C_LABEL_NONE, + "coltypes", + 6, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, stats_elem), - &pg_query__stats_elem__descriptor, + offsetof(PgQuery__TableFunc, n_coltypes), + offsetof(PgQuery__TableFunc, coltypes), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "constraint", - 194, - PROTOBUF_C_LABEL_NONE, + "coltypmods", + 7, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, constraint), - &pg_query__constraint__descriptor, + offsetof(PgQuery__TableFunc, n_coltypmods), + offsetof(PgQuery__TableFunc, coltypmods), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "def_elem", - 195, - PROTOBUF_C_LABEL_NONE, + "colcollations", + 8, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, def_elem), - &pg_query__def_elem__descriptor, + offsetof(PgQuery__TableFunc, n_colcollations), + offsetof(PgQuery__TableFunc, colcollations), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "range_tbl_entry", - 196, - PROTOBUF_C_LABEL_NONE, + "colexprs", + 9, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, range_tbl_entry), - &pg_query__range_tbl_entry__descriptor, + offsetof(PgQuery__TableFunc, n_colexprs), + offsetof(PgQuery__TableFunc, colexprs), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "range_tbl_function", - 197, - PROTOBUF_C_LABEL_NONE, + "coldefexprs", + 10, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, range_tbl_function), - &pg_query__range_tbl_function__descriptor, + offsetof(PgQuery__TableFunc, n_coldefexprs), + offsetof(PgQuery__TableFunc, coldefexprs), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "table_sample_clause", - 198, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, table_sample_clause), - &pg_query__table_sample_clause__descriptor, + "notnulls", + 11, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_UINT64, + offsetof(PgQuery__TableFunc, n_notnulls), + offsetof(PgQuery__TableFunc, notnulls), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_check_option", - 199, + "ordinalitycol", + 12, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, with_check_option), - &pg_query__with_check_option__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__TableFunc, ordinalitycol), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sort_group_clause", - 200, + "location", + 13, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, sort_group_clause), - &pg_query__sort_group_clause__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__TableFunc, location), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__table_func__field_indices_by_name[] = { + 7, /* field[7] = colcollations */ + 9, /* field[9] = coldefexprs */ + 8, /* field[8] = colexprs */ + 4, /* field[4] = colnames */ + 5, /* field[5] = coltypes */ + 6, /* field[6] = coltypmods */ + 2, /* field[2] = docexpr */ + 12, /* field[12] = location */ + 10, /* field[10] = notnulls */ + 1, /* field[1] = ns_names */ + 0, /* field[0] = ns_uris */ + 11, /* field[11] = ordinalitycol */ + 3, /* field[3] = rowexpr */ +}; +static const ProtobufCIntRange pg_query__table_func__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 13 } +}; +const ProtobufCMessageDescriptor pg_query__table_func__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.TableFunc", + "TableFunc", + "PgQuery__TableFunc", + "pg_query", + sizeof(PgQuery__TableFunc), + 13, + pg_query__table_func__field_descriptors, + pg_query__table_func__field_indices_by_name, + 1, pg_query__table_func__number_ranges, + (ProtobufCMessageInit) pg_query__table_func__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__into_clause__field_descriptors[8] = +{ { - "grouping_set", - 201, + "rel", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, grouping_set), - &pg_query__grouping_set__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__IntoClause, rel), + &pg_query__range_var__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "window_clause", - 202, - PROTOBUF_C_LABEL_NONE, + "col_names", + 2, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, window_clause), - &pg_query__window_clause__descriptor, + offsetof(PgQuery__IntoClause, n_col_names), + offsetof(PgQuery__IntoClause, col_names), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "object_with_args", - 203, + "access_method", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, object_with_args), - &pg_query__object_with_args__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__IntoClause, access_method), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "access_priv", - 204, - PROTOBUF_C_LABEL_NONE, + "options", + 4, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, access_priv), - &pg_query__access_priv__descriptor, + offsetof(PgQuery__IntoClause, n_options), + offsetof(PgQuery__IntoClause, options), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "create_op_class_item", - 205, + "on_commit", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, create_op_class_item), - &pg_query__create_op_class_item__descriptor, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__IntoClause, on_commit), + &pg_query__on_commit_action__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "table_like_clause", - 206, + "table_space_name", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, table_like_clause), - &pg_query__table_like_clause__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__IntoClause, table_space_name), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "function_parameter", - 207, + "view_query", + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, function_parameter), - &pg_query__function_parameter__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__IntoClause, view_query), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "locking_clause", - 208, + "skip_data", + 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, locking_clause), - &pg_query__locking_clause__descriptor, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__IntoClause, skip_data), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__into_clause__field_indices_by_name[] = { + 2, /* field[2] = access_method */ + 1, /* field[1] = col_names */ + 4, /* field[4] = on_commit */ + 3, /* field[3] = options */ + 0, /* field[0] = rel */ + 7, /* field[7] = skip_data */ + 5, /* field[5] = table_space_name */ + 6, /* field[6] = view_query */ +}; +static const ProtobufCIntRange pg_query__into_clause__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 8 } +}; +const ProtobufCMessageDescriptor pg_query__into_clause__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.IntoClause", + "IntoClause", + "PgQuery__IntoClause", + "pg_query", + sizeof(PgQuery__IntoClause), + 8, + pg_query__into_clause__field_descriptors, + pg_query__into_clause__field_indices_by_name, + 1, pg_query__into_clause__number_ranges, + (ProtobufCMessageInit) pg_query__into_clause__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__var__field_descriptors[9] = +{ { - "row_mark_clause", - 209, + "xpr", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, row_mark_clause), - &pg_query__row_mark_clause__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__Var, xpr), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "xml_serialize", - 210, + "varno", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, xml_serialize), - &pg_query__xml_serialize__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Var, varno), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_clause", - 211, + "varattno", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, with_clause), - &pg_query__with_clause__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Var, varattno), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "infer_clause", - 212, + "vartype", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, infer_clause), - &pg_query__infer_clause__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Var, vartype), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "on_conflict_clause", - 213, + "vartypmod", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, on_conflict_clause), - &pg_query__on_conflict_clause__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Var, vartypmod), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ctesearch_clause", - 214, + "varcollid", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, ctesearch_clause), - &pg_query__ctesearch_clause__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Var, varcollid), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ctecycle_clause", - 215, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, ctecycle_clause), - &pg_query__ctecycle_clause__descriptor, + "varnullingrels", + 7, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_UINT64, + offsetof(PgQuery__Var, n_varnullingrels), + offsetof(PgQuery__Var, varnullingrels), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "common_table_expr", - 216, + "varlevelsup", + 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, common_table_expr), - &pg_query__common_table_expr__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Var, varlevelsup), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "merge_when_clause", - 217, + "location", + 9, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, merge_when_clause), - &pg_query__merge_when_clause__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Var, location), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__var__field_indices_by_name[] = { + 8, /* field[8] = location */ + 2, /* field[2] = varattno */ + 5, /* field[5] = varcollid */ + 7, /* field[7] = varlevelsup */ + 1, /* field[1] = varno */ + 6, /* field[6] = varnullingrels */ + 3, /* field[3] = vartype */ + 4, /* field[4] = vartypmod */ + 0, /* field[0] = xpr */ +}; +static const ProtobufCIntRange pg_query__var__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 9 } +}; +const ProtobufCMessageDescriptor pg_query__var__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.Var", + "Var", + "PgQuery__Var", + "pg_query", + sizeof(PgQuery__Var), + 9, + pg_query__var__field_descriptors, + pg_query__var__field_indices_by_name, + 1, pg_query__var__number_ranges, + (ProtobufCMessageInit) pg_query__var__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__param__field_descriptors[7] = +{ { - "role_spec", - 218, + "xpr", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, role_spec), - &pg_query__role_spec__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__Param, xpr), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "trigger_transition", - 219, + "paramkind", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, trigger_transition), - &pg_query__trigger_transition__descriptor, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__Param, paramkind), + &pg_query__param_kind__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "partition_elem", - 220, + "paramid", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, partition_elem), - &pg_query__partition_elem__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Param, paramid), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "partition_spec", - 221, + "paramtype", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, partition_spec), - &pg_query__partition_spec__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Param, paramtype), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "partition_bound_spec", - 222, + "paramtypmod", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, partition_bound_spec), - &pg_query__partition_bound_spec__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Param, paramtypmod), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "partition_range_datum", - 223, + "paramcollid", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, partition_range_datum), - &pg_query__partition_range_datum__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Param, paramcollid), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "partition_cmd", - 224, + "location", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, partition_cmd), - &pg_query__partition_cmd__descriptor, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Param, location), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__param__field_indices_by_name[] = { + 6, /* field[6] = location */ + 5, /* field[5] = paramcollid */ + 2, /* field[2] = paramid */ + 1, /* field[1] = paramkind */ + 3, /* field[3] = paramtype */ + 4, /* field[4] = paramtypmod */ + 0, /* field[0] = xpr */ +}; +static const ProtobufCIntRange pg_query__param__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__param__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.Param", + "Param", + "PgQuery__Param", + "pg_query", + sizeof(PgQuery__Param), + 7, + pg_query__param__field_descriptors, + pg_query__param__field_indices_by_name, + 1, pg_query__param__number_ranges, + (ProtobufCMessageInit) pg_query__param__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__aggref__field_descriptors[19] = +{ { - "vacuum_relation", - 225, + "xpr", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, vacuum_relation), - &pg_query__vacuum_relation__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__Aggref, xpr), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "publication_obj_spec", - 226, + "aggfnoid", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, publication_obj_spec), - &pg_query__publication_obj_spec__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Aggref, aggfnoid), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "publication_table", - 227, + "aggtype", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, publication_table), - &pg_query__publication_table__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Aggref, aggtype), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inline_code_block", - 228, + "aggcollid", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, inline_code_block), - &pg_query__inline_code_block__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Aggref, aggcollid), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "call_context", - 229, + "inputcollid", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, call_context), - &pg_query__call_context__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Aggref, inputcollid), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "integer", - 230, - PROTOBUF_C_LABEL_NONE, + "aggargtypes", + 6, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, integer), - &pg_query__integer__descriptor, + offsetof(PgQuery__Aggref, n_aggargtypes), + offsetof(PgQuery__Aggref, aggargtypes), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "float", - 231, - PROTOBUF_C_LABEL_NONE, + "aggdirectargs", + 7, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, float_), - &pg_query__float__descriptor, + offsetof(PgQuery__Aggref, n_aggdirectargs), + offsetof(PgQuery__Aggref, aggdirectargs), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "boolean", - 232, - PROTOBUF_C_LABEL_NONE, + "args", + 8, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, boolean), - &pg_query__boolean__descriptor, + offsetof(PgQuery__Aggref, n_args), + offsetof(PgQuery__Aggref, args), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "string", - 233, - PROTOBUF_C_LABEL_NONE, + "aggorder", + 9, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, string), - &pg_query__string__descriptor, + offsetof(PgQuery__Aggref, n_aggorder), + offsetof(PgQuery__Aggref, aggorder), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "bit_string", - 234, - PROTOBUF_C_LABEL_NONE, + "aggdistinct", + 10, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, bit_string), - &pg_query__bit_string__descriptor, + offsetof(PgQuery__Aggref, n_aggdistinct), + offsetof(PgQuery__Aggref, aggdistinct), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "list", - 235, + "aggfilter", + 11, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, list), - &pg_query__list__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__Aggref, aggfilter), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "int_list", - 236, + "aggstar", + 12, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, int_list), - &pg_query__int_list__descriptor, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__Aggref, aggstar), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "oid_list", - 237, + "aggvariadic", + 13, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, oid_list), - &pg_query__oid_list__descriptor, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__Aggref, aggvariadic), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "a_const", - 238, + "aggkind", + 14, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Node, node_case), - offsetof(PgQuery__Node, a_const), - &pg_query__a__const__descriptor, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__Aggref, aggkind), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__node__field_indices_by_name[] = { - 177, /* field[177] = a_array_expr */ - 237, /* field[237] = a_const */ - 170, /* field[170] = a_expr */ - 175, /* field[175] = a_indices */ - 176, /* field[176] = a_indirection */ - 174, /* field[174] = a_star */ - 203, /* field[203] = access_priv */ - 5, /* field[5] = aggref */ - 0, /* field[0] = alias */ - 167, /* field[167] = alter_collation_stmt */ - 110, /* field[110] = alter_database_refresh_coll_stmt */ - 111, /* field[111] = alter_database_set_stmt */ - 109, /* field[109] = alter_database_stmt */ - 66, /* field[66] = alter_default_privileges_stmt */ - 62, /* field[62] = alter_domain_stmt */ - 134, /* field[134] = alter_enum_stmt */ - 153, /* field[153] = alter_event_trig_stmt */ - 151, /* field[151] = alter_extension_contents_stmt */ - 150, /* field[150] = alter_extension_stmt */ - 138, /* field[138] = alter_fdw_stmt */ - 140, /* field[140] = alter_foreign_server_stmt */ - 78, /* field[78] = alter_function_stmt */ - 124, /* field[124] = alter_object_depends_stmt */ - 125, /* field[125] = alter_object_schema_stmt */ - 117, /* field[117] = alter_op_family_stmt */ - 127, /* field[127] = alter_operator_stmt */ - 126, /* field[126] = alter_owner_stmt */ - 158, /* field[158] = alter_policy_stmt */ - 162, /* field[162] = alter_publication_stmt */ - 112, /* field[112] = alter_role_set_stmt */ - 102, /* field[102] = alter_role_stmt */ - 95, /* field[95] = alter_seq_stmt */ - 169, /* field[169] = alter_stats_stmt */ - 164, /* field[164] = alter_subscription_stmt */ - 156, /* field[156] = alter_system_stmt */ - 61, /* field[61] = alter_table_cmd */ - 145, /* field[145] = alter_table_move_all_stmt */ - 144, /* field[144] = alter_table_space_options_stmt */ - 60, /* field[60] = alter_table_stmt */ - 136, /* field[136] = alter_tsconfiguration_stmt */ - 135, /* field[135] = alter_tsdictionary_stmt */ - 128, /* field[128] = alter_type_stmt */ - 142, /* field[142] = alter_user_mapping_stmt */ - 18, /* field[18] = alternative_sub_plan */ - 23, /* field[23] = array_coerce_expr */ - 29, /* field[29] = array_expr */ - 233, /* field[233] = bit_string */ - 15, /* field[15] = bool_expr */ - 231, /* field[231] = boolean */ - 37, /* field[37] = boolean_test */ - 228, /* field[228] = call_context */ - 168, /* field[168] = call_stmt */ - 26, /* field[26] = case_expr */ - 28, /* field[28] = case_test_expr */ - 27, /* field[27] = case_when */ - 107, /* field[107] = check_point_stmt */ - 67, /* field[67] = close_portal_stmt */ - 68, /* field[68] = cluster_stmt */ - 32, /* field[32] = coalesce_expr */ - 38, /* field[38] = coerce_to_domain */ - 39, /* field[39] = coerce_to_domain_value */ - 22, /* field[22] = coerce_via_io */ - 181, /* field[181] = collate_clause */ - 25, /* field[25] = collate_expr */ - 190, /* field[190] = column_def */ - 171, /* field[171] = column_ref */ - 74, /* field[74] = comment_stmt */ - 215, /* field[215] = common_table_expr */ - 131, /* field[131] = composite_type_stmt */ - 193, /* field[193] = constraint */ - 105, /* field[105] = constraints_set_stmt */ - 24, /* field[24] = convert_rowtype_expr */ - 69, /* field[69] = copy_stmt */ - 160, /* field[160] = create_am_stmt */ - 114, /* field[114] = create_cast_stmt */ - 113, /* field[113] = create_conversion_stmt */ - 88, /* field[88] = create_domain_stmt */ - 132, /* field[132] = create_enum_stmt */ - 152, /* field[152] = create_event_trig_stmt */ - 149, /* field[149] = create_extension_stmt */ - 137, /* field[137] = create_fdw_stmt */ - 139, /* field[139] = create_foreign_server_stmt */ - 147, /* field[147] = create_foreign_table_stmt */ - 77, /* field[77] = create_function_stmt */ - 204, /* field[204] = create_op_class_item */ - 115, /* field[115] = create_op_class_stmt */ - 116, /* field[116] = create_op_family_stmt */ - 100, /* field[100] = create_plang_stmt */ - 157, /* field[157] = create_policy_stmt */ - 161, /* field[161] = create_publication_stmt */ - 133, /* field[133] = create_range_stmt */ - 101, /* field[101] = create_role_stmt */ - 108, /* field[108] = create_schema_stmt */ - 94, /* field[94] = create_seq_stmt */ - 166, /* field[166] = create_stats_stmt */ - 70, /* field[70] = create_stmt */ - 163, /* field[163] = create_subscription_stmt */ - 93, /* field[93] = create_table_as_stmt */ - 122, /* field[122] = create_table_space_stmt */ - 159, /* field[159] = create_transform_stmt */ - 99, /* field[99] = create_trig_stmt */ - 141, /* field[141] = create_user_mapping_stmt */ - 89, /* field[89] = createdb_stmt */ - 214, /* field[214] = ctecycle_clause */ - 213, /* field[213] = ctesearch_clause */ - 41, /* field[41] = current_of_expr */ - 120, /* field[120] = deallocate_stmt */ - 121, /* field[121] = declare_cursor_stmt */ - 194, /* field[194] = def_elem */ - 71, /* field[71] = define_stmt */ - 54, /* field[54] = delete_stmt */ - 98, /* field[98] = discard_stmt */ - 12, /* field[12] = distinct_expr */ - 79, /* field[79] = do_stmt */ - 129, /* field[129] = drop_owned_stmt */ - 103, /* field[103] = drop_role_stmt */ - 72, /* field[72] = drop_stmt */ - 165, /* field[165] = drop_subscription_stmt */ - 123, /* field[123] = drop_table_space_stmt */ - 143, /* field[143] = drop_user_mapping_stmt */ - 90, /* field[90] = dropdb_stmt */ - 119, /* field[119] = execute_stmt */ - 92, /* field[92] = explain_stmt */ - 75, /* field[75] = fetch_stmt */ - 19, /* field[19] = field_select */ - 20, /* field[20] = field_store */ - 230, /* field[230] = float */ - 47, /* field[47] = from_expr */ - 173, /* field[173] = func_call */ - 9, /* field[9] = func_expr */ - 206, /* field[206] = function_parameter */ - 65, /* field[65] = grant_role_stmt */ - 64, /* field[64] = grant_stmt */ - 6, /* field[6] = grouping_func */ - 200, /* field[200] = grouping_set */ - 148, /* field[148] = import_foreign_schema_stmt */ - 191, /* field[191] = index_elem */ - 76, /* field[76] = index_stmt */ - 211, /* field[211] = infer_clause */ - 43, /* field[43] = inference_elem */ - 227, /* field[227] = inline_code_block */ - 53, /* field[53] = insert_stmt */ - 235, /* field[235] = int_list */ - 229, /* field[229] = integer */ - 49, /* field[49] = into_clause */ - 46, /* field[46] = join_expr */ - 234, /* field[234] = list */ - 83, /* field[83] = listen_stmt */ - 87, /* field[87] = load_stmt */ - 104, /* field[104] = lock_stmt */ - 207, /* field[207] = locking_clause */ - 50, /* field[50] = merge_action */ - 56, /* field[56] = merge_stmt */ - 216, /* field[216] = merge_when_clause */ - 33, /* field[33] = min_max_expr */ - 179, /* field[179] = multi_assign_ref */ - 10, /* field[10] = named_arg_expr */ - 42, /* field[42] = next_value_expr */ - 82, /* field[82] = notify_stmt */ - 13, /* field[13] = null_if_expr */ - 36, /* field[36] = null_test */ - 202, /* field[202] = object_with_args */ - 236, /* field[236] = oid_list */ - 212, /* field[212] = on_conflict_clause */ - 48, /* field[48] = on_conflict_expr */ - 11, /* field[11] = op_expr */ - 4, /* field[4] = param */ - 172, /* field[172] = param_ref */ - 221, /* field[221] = partition_bound_spec */ - 223, /* field[223] = partition_cmd */ - 219, /* field[219] = partition_elem */ - 222, /* field[222] = partition_range_datum */ - 220, /* field[220] = partition_spec */ - 59, /* field[59] = plassign_stmt */ - 118, /* field[118] = prepare_stmt */ - 225, /* field[225] = publication_obj_spec */ - 226, /* field[226] = publication_table */ - 52, /* field[52] = query */ - 185, /* field[185] = range_function */ - 184, /* field[184] = range_subselect */ - 187, /* field[187] = range_table_func */ - 188, /* field[188] = range_table_func_col */ - 186, /* field[186] = range_table_sample */ - 195, /* field[195] = range_tbl_entry */ - 196, /* field[196] = range_tbl_function */ - 45, /* field[45] = range_tbl_ref */ - 1, /* field[1] = range_var */ - 51, /* field[51] = raw_stmt */ - 130, /* field[130] = reassign_owned_stmt */ - 154, /* field[154] = refresh_mat_view_stmt */ - 106, /* field[106] = reindex_stmt */ - 21, /* field[21] = relabel_type */ - 80, /* field[80] = rename_stmt */ - 155, /* field[155] = replica_identity_stmt */ - 178, /* field[178] = res_target */ - 58, /* field[58] = return_stmt */ - 217, /* field[217] = role_spec */ - 31, /* field[31] = row_compare_expr */ - 30, /* field[30] = row_expr */ - 208, /* field[208] = row_mark_clause */ - 81, /* field[81] = rule_stmt */ - 14, /* field[14] = scalar_array_op_expr */ - 146, /* field[146] = sec_label_stmt */ - 57, /* field[57] = select_stmt */ - 63, /* field[63] = set_operation_stmt */ - 40, /* field[40] = set_to_default */ - 182, /* field[182] = sort_by */ - 199, /* field[199] = sort_group_clause */ - 34, /* field[34] = sqlvalue_function */ - 192, /* field[192] = stats_elem */ - 232, /* field[232] = string */ - 16, /* field[16] = sub_link */ - 17, /* field[17] = sub_plan */ - 8, /* field[8] = subscripting_ref */ - 2, /* field[2] = table_func */ - 205, /* field[205] = table_like_clause */ - 197, /* field[197] = table_sample_clause */ - 44, /* field[44] = target_entry */ - 85, /* field[85] = transaction_stmt */ - 218, /* field[218] = trigger_transition */ - 73, /* field[73] = truncate_stmt */ - 180, /* field[180] = type_cast */ - 189, /* field[189] = type_name */ - 84, /* field[84] = unlisten_stmt */ - 55, /* field[55] = update_stmt */ - 224, /* field[224] = vacuum_relation */ - 91, /* field[91] = vacuum_stmt */ - 3, /* field[3] = var */ - 96, /* field[96] = variable_set_stmt */ - 97, /* field[97] = variable_show_stmt */ - 86, /* field[86] = view_stmt */ - 201, /* field[201] = window_clause */ - 183, /* field[183] = window_def */ - 7, /* field[7] = window_func */ - 198, /* field[198] = with_check_option */ - 210, /* field[210] = with_clause */ - 35, /* field[35] = xml_expr */ - 209, /* field[209] = xml_serialize */ -}; -static const ProtobufCIntRange pg_query__node__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 238 } -}; -const ProtobufCMessageDescriptor pg_query__node__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Node", - "Node", - "PgQuery__Node", - "pg_query", - sizeof(PgQuery__Node), - 238, - pg_query__node__field_descriptors, - pg_query__node__field_indices_by_name, - 1, pg_query__node__number_ranges, - (ProtobufCMessageInit) pg_query__node__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__integer__field_descriptors[1] = -{ { - "ival", - 1, + "agglevelsup", + 15, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Integer, ival), + offsetof(PgQuery__Aggref, agglevelsup), NULL, NULL, 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__integer__field_indices_by_name[] = { - 0, /* field[0] = ival */ -}; -static const ProtobufCIntRange pg_query__integer__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 1 } -}; -const ProtobufCMessageDescriptor pg_query__integer__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Integer", - "Integer", - "PgQuery__Integer", - "pg_query", - sizeof(PgQuery__Integer), - 1, - pg_query__integer__field_descriptors, - pg_query__integer__field_indices_by_name, - 1, pg_query__integer__number_ranges, - (ProtobufCMessageInit) pg_query__integer__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__float__field_descriptors[1] = -{ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, { - "fval", - 1, + "aggsplit", + 16, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__Float, fval), + offsetof(PgQuery__Aggref, aggsplit), + &pg_query__agg_split__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__float__field_indices_by_name[] = { - 0, /* field[0] = fval */ -}; -static const ProtobufCIntRange pg_query__float__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 1 } -}; -const ProtobufCMessageDescriptor pg_query__float__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Float", - "Float", - "PgQuery__Float", - "pg_query", - sizeof(PgQuery__Float), - 1, - pg_query__float__field_descriptors, - pg_query__float__field_indices_by_name, - 1, pg_query__float__number_ranges, - (ProtobufCMessageInit) pg_query__float__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__boolean__field_descriptors[1] = -{ { - "boolval", - 1, + "aggno", + 17, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Boolean, boolval), + offsetof(PgQuery__Aggref, aggno), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__boolean__field_indices_by_name[] = { - 0, /* field[0] = boolval */ -}; -static const ProtobufCIntRange pg_query__boolean__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 1 } -}; -const ProtobufCMessageDescriptor pg_query__boolean__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Boolean", - "Boolean", - "PgQuery__Boolean", - "pg_query", - sizeof(PgQuery__Boolean), - 1, - pg_query__boolean__field_descriptors, - pg_query__boolean__field_indices_by_name, - 1, pg_query__boolean__number_ranges, - (ProtobufCMessageInit) pg_query__boolean__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__string__field_descriptors[1] = -{ { - "sval", - 1, + "aggtransno", + 18, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__String, sval), + offsetof(PgQuery__Aggref, aggtransno), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__string__field_indices_by_name[] = { - 0, /* field[0] = sval */ -}; -static const ProtobufCIntRange pg_query__string__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 1 } -}; -const ProtobufCMessageDescriptor pg_query__string__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.String", - "String", - "PgQuery__String", - "pg_query", - sizeof(PgQuery__String), - 1, - pg_query__string__field_descriptors, - pg_query__string__field_indices_by_name, - 1, pg_query__string__number_ranges, - (ProtobufCMessageInit) pg_query__string__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__bit_string__field_descriptors[1] = -{ { - "bsval", - 1, + "location", + 19, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__BitString, bsval), + offsetof(PgQuery__Aggref, location), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__bit_string__field_indices_by_name[] = { - 0, /* field[0] = bsval */ +static const unsigned pg_query__aggref__field_indices_by_name[] = { + 5, /* field[5] = aggargtypes */ + 3, /* field[3] = aggcollid */ + 6, /* field[6] = aggdirectargs */ + 9, /* field[9] = aggdistinct */ + 10, /* field[10] = aggfilter */ + 1, /* field[1] = aggfnoid */ + 13, /* field[13] = aggkind */ + 14, /* field[14] = agglevelsup */ + 16, /* field[16] = aggno */ + 8, /* field[8] = aggorder */ + 15, /* field[15] = aggsplit */ + 11, /* field[11] = aggstar */ + 17, /* field[17] = aggtransno */ + 2, /* field[2] = aggtype */ + 12, /* field[12] = aggvariadic */ + 7, /* field[7] = args */ + 4, /* field[4] = inputcollid */ + 18, /* field[18] = location */ + 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__bit_string__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__aggref__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 19 } }; -const ProtobufCMessageDescriptor pg_query__bit_string__descriptor = +const ProtobufCMessageDescriptor pg_query__aggref__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.BitString", - "BitString", - "PgQuery__BitString", + "pg_query.Aggref", + "Aggref", + "PgQuery__Aggref", "pg_query", - sizeof(PgQuery__BitString), - 1, - pg_query__bit_string__field_descriptors, - pg_query__bit_string__field_indices_by_name, - 1, pg_query__bit_string__number_ranges, - (ProtobufCMessageInit) pg_query__bit_string__init, + sizeof(PgQuery__Aggref), + 19, + pg_query__aggref__field_descriptors, + pg_query__aggref__field_indices_by_name, + 1, pg_query__aggref__number_ranges, + (ProtobufCMessageInit) pg_query__aggref__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__list__field_descriptors[1] = +static const ProtobufCFieldDescriptor pg_query__grouping_func__field_descriptors[5] = { { - "items", + "xpr", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__List, n_items), - offsetof(PgQuery__List, items), + 0, /* quantifier_offset */ + offsetof(PgQuery__GroupingFunc, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__list__field_indices_by_name[] = { - 0, /* field[0] = items */ -}; -static const ProtobufCIntRange pg_query__list__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 1 } -}; -const ProtobufCMessageDescriptor pg_query__list__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.List", - "List", - "PgQuery__List", - "pg_query", - sizeof(PgQuery__List), - 1, - pg_query__list__field_descriptors, - pg_query__list__field_indices_by_name, - 1, pg_query__list__number_ranges, - (ProtobufCMessageInit) pg_query__list__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__oid_list__field_descriptors[1] = -{ { - "items", - 1, + "args", + 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__OidList, n_items), - offsetof(PgQuery__OidList, items), + offsetof(PgQuery__GroupingFunc, n_args), + offsetof(PgQuery__GroupingFunc, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__oid_list__field_indices_by_name[] = { - 0, /* field[0] = items */ -}; -static const ProtobufCIntRange pg_query__oid_list__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 1 } -}; -const ProtobufCMessageDescriptor pg_query__oid_list__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.OidList", - "OidList", - "PgQuery__OidList", - "pg_query", - sizeof(PgQuery__OidList), - 1, - pg_query__oid_list__field_descriptors, - pg_query__oid_list__field_indices_by_name, - 1, pg_query__oid_list__number_ranges, - (ProtobufCMessageInit) pg_query__oid_list__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__int_list__field_descriptors[1] = -{ { - "items", - 1, + "refs", + 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IntList, n_items), - offsetof(PgQuery__IntList, items), + offsetof(PgQuery__GroupingFunc, n_refs), + offsetof(PgQuery__GroupingFunc, refs), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, + { + "agglevelsup", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__GroupingFunc, agglevelsup), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "location", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__GroupingFunc, location), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, }; -static const unsigned pg_query__int_list__field_indices_by_name[] = { - 0, /* field[0] = items */ +static const unsigned pg_query__grouping_func__field_indices_by_name[] = { + 3, /* field[3] = agglevelsup */ + 1, /* field[1] = args */ + 4, /* field[4] = location */ + 2, /* field[2] = refs */ + 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__int_list__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__grouping_func__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__int_list__descriptor = +const ProtobufCMessageDescriptor pg_query__grouping_func__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.IntList", - "IntList", - "PgQuery__IntList", + "pg_query.GroupingFunc", + "GroupingFunc", + "PgQuery__GroupingFunc", "pg_query", - sizeof(PgQuery__IntList), - 1, - pg_query__int_list__field_descriptors, - pg_query__int_list__field_indices_by_name, - 1, pg_query__int_list__number_ranges, - (ProtobufCMessageInit) pg_query__int_list__init, + sizeof(PgQuery__GroupingFunc), + 5, + pg_query__grouping_func__field_descriptors, + pg_query__grouping_func__field_indices_by_name, + 1, pg_query__grouping_func__number_ranges, + (ProtobufCMessageInit) pg_query__grouping_func__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__a__const__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__window_func__field_descriptors[11] = { { - "ival", + "xpr", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AConst, val_case), - offsetof(PgQuery__AConst, ival), - &pg_query__integer__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowFunc, xpr), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "fval", + "winfnoid", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AConst, val_case), - offsetof(PgQuery__AConst, fval), - &pg_query__float__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowFunc, winfnoid), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "boolval", + "wintype", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AConst, val_case), - offsetof(PgQuery__AConst, boolval), - &pg_query__boolean__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowFunc, wintype), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + NULL, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sval", + "wincollid", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AConst, val_case), - offsetof(PgQuery__AConst, sval), - &pg_query__string__descriptor, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowFunc, wincollid), + NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "bsval", + "inputcollid", 5, PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowFunc, inputcollid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "args", + 6, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AConst, val_case), - offsetof(PgQuery__AConst, bsval), - &pg_query__bit_string__descriptor, + offsetof(PgQuery__WindowFunc, n_args), + offsetof(PgQuery__WindowFunc, args), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "isnull", + "aggfilter", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowFunc, aggfilter), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "winref", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowFunc, winref), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "winstar", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowFunc, winstar), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "winagg", 10, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AConst, isnull), + offsetof(PgQuery__WindowFunc, winagg), NULL, NULL, 0, /* flags */ @@ -14502,351 +16589,401 @@ static const ProtobufCFieldDescriptor pg_query__a__const__field_descriptors[7] = PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__AConst, location), + offsetof(PgQuery__WindowFunc, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__a__const__field_indices_by_name[] = { - 2, /* field[2] = boolval */ - 4, /* field[4] = bsval */ - 1, /* field[1] = fval */ - 5, /* field[5] = isnull */ - 0, /* field[0] = ival */ - 6, /* field[6] = location */ - 3, /* field[3] = sval */ +static const unsigned pg_query__window_func__field_indices_by_name[] = { + 6, /* field[6] = aggfilter */ + 5, /* field[5] = args */ + 4, /* field[4] = inputcollid */ + 10, /* field[10] = location */ + 9, /* field[9] = winagg */ + 3, /* field[3] = wincollid */ + 1, /* field[1] = winfnoid */ + 7, /* field[7] = winref */ + 8, /* field[8] = winstar */ + 2, /* field[2] = wintype */ + 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__a__const__number_ranges[2 + 1] = +static const ProtobufCIntRange pg_query__window_func__number_ranges[1 + 1] = { { 1, 0 }, - { 10, 5 }, - { 0, 7 } + { 0, 11 } }; -const ProtobufCMessageDescriptor pg_query__a__const__descriptor = +const ProtobufCMessageDescriptor pg_query__window_func__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.A_Const", - "AConst", - "PgQuery__AConst", + "pg_query.WindowFunc", + "WindowFunc", + "PgQuery__WindowFunc", "pg_query", - sizeof(PgQuery__AConst), - 7, - pg_query__a__const__field_descriptors, - pg_query__a__const__field_indices_by_name, - 2, pg_query__a__const__number_ranges, - (ProtobufCMessageInit) pg_query__a__const__init, + sizeof(PgQuery__WindowFunc), + 11, + pg_query__window_func__field_descriptors, + pg_query__window_func__field_indices_by_name, + 1, pg_query__window_func__number_ranges, + (ProtobufCMessageInit) pg_query__window_func__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alias__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__subscripting_ref__field_descriptors[10] = { { - "aliasname", + "xpr", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Alias, aliasname), + offsetof(PgQuery__SubscriptingRef, xpr), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "colnames", + "refcontainertype", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Alias, n_colnames), - offsetof(PgQuery__Alias, colnames), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__SubscriptingRef, refcontainertype), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alias__field_indices_by_name[] = { - 0, /* field[0] = aliasname */ - 1, /* field[1] = colnames */ -}; -static const ProtobufCIntRange pg_query__alias__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__alias__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Alias", - "Alias", - "PgQuery__Alias", - "pg_query", - sizeof(PgQuery__Alias), - 2, - pg_query__alias__field_descriptors, - pg_query__alias__field_indices_by_name, - 1, pg_query__alias__number_ranges, - (ProtobufCMessageInit) pg_query__alias__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__range_var__field_descriptors[7] = -{ { - "catalogname", - 1, + "refelemtype", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeVar, catalogname), + offsetof(PgQuery__SubscriptingRef, refelemtype), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "schemaname", - 2, + "refrestype", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeVar, schemaname), + offsetof(PgQuery__SubscriptingRef, refrestype), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relname", - 3, + "reftypmod", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeVar, relname), + offsetof(PgQuery__SubscriptingRef, reftypmod), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inh", - 4, + "refcollid", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeVar, inh), + offsetof(PgQuery__SubscriptingRef, refcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relpersistence", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeVar, relpersistence), + "refupperindexpr", + 7, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__SubscriptingRef, n_refupperindexpr), + offsetof(PgQuery__SubscriptingRef, refupperindexpr), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alias", - 6, + "reflowerindexpr", + 8, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__SubscriptingRef, n_reflowerindexpr), + offsetof(PgQuery__SubscriptingRef, reflowerindexpr), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "refexpr", + 9, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeVar, alias), - &pg_query__alias__descriptor, + offsetof(PgQuery__SubscriptingRef, refexpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 7, + "refassgnexpr", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeVar, location), - NULL, + offsetof(PgQuery__SubscriptingRef, refassgnexpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__range_var__field_indices_by_name[] = { - 5, /* field[5] = alias */ - 0, /* field[0] = catalogname */ - 3, /* field[3] = inh */ - 6, /* field[6] = location */ - 2, /* field[2] = relname */ - 4, /* field[4] = relpersistence */ - 1, /* field[1] = schemaname */ +static const unsigned pg_query__subscripting_ref__field_indices_by_name[] = { + 9, /* field[9] = refassgnexpr */ + 5, /* field[5] = refcollid */ + 1, /* field[1] = refcontainertype */ + 2, /* field[2] = refelemtype */ + 8, /* field[8] = refexpr */ + 7, /* field[7] = reflowerindexpr */ + 3, /* field[3] = refrestype */ + 4, /* field[4] = reftypmod */ + 6, /* field[6] = refupperindexpr */ + 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__range_var__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__subscripting_ref__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 10 } }; -const ProtobufCMessageDescriptor pg_query__range_var__descriptor = +const ProtobufCMessageDescriptor pg_query__subscripting_ref__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RangeVar", - "RangeVar", - "PgQuery__RangeVar", + "pg_query.SubscriptingRef", + "SubscriptingRef", + "PgQuery__SubscriptingRef", "pg_query", - sizeof(PgQuery__RangeVar), - 7, - pg_query__range_var__field_descriptors, - pg_query__range_var__field_indices_by_name, - 1, pg_query__range_var__number_ranges, - (ProtobufCMessageInit) pg_query__range_var__init, + sizeof(PgQuery__SubscriptingRef), + 10, + pg_query__subscripting_ref__field_descriptors, + pg_query__subscripting_ref__field_indices_by_name, + 1, pg_query__subscripting_ref__number_ranges, + (ProtobufCMessageInit) pg_query__subscripting_ref__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__table_func__field_descriptors[13] = +static const ProtobufCFieldDescriptor pg_query__func_expr__field_descriptors[10] = { { - "ns_uris", + "xpr", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TableFunc, n_ns_uris), - offsetof(PgQuery__TableFunc, ns_uris), + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ns_names", + "funcid", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TableFunc, n_ns_names), - offsetof(PgQuery__TableFunc, ns_names), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncExpr, funcid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "docexpr", + "funcresulttype", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__TableFunc, docexpr), - &pg_query__node__descriptor, + offsetof(PgQuery__FuncExpr, funcresulttype), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rowexpr", + "funcretset", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TableFunc, rowexpr), - &pg_query__node__descriptor, + offsetof(PgQuery__FuncExpr, funcretset), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "colnames", + "funcvariadic", 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TableFunc, n_colnames), - offsetof(PgQuery__TableFunc, colnames), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncExpr, funcvariadic), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coltypes", + "funcformat", 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TableFunc, n_coltypes), - offsetof(PgQuery__TableFunc, coltypes), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncExpr, funcformat), + &pg_query__coercion_form__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coltypmods", + "funccollid", 7, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TableFunc, n_coltypmods), - offsetof(PgQuery__TableFunc, coltypmods), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncExpr, funccollid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "colcollations", + "inputcollid", 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TableFunc, n_colcollations), - offsetof(PgQuery__TableFunc, colcollations), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncExpr, inputcollid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "colexprs", + "args", 9, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TableFunc, n_colexprs), - offsetof(PgQuery__TableFunc, colexprs), + offsetof(PgQuery__FuncExpr, n_args), + offsetof(PgQuery__FuncExpr, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coldefexprs", + "location", 10, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncExpr, location), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__func_expr__field_indices_by_name[] = { + 8, /* field[8] = args */ + 6, /* field[6] = funccollid */ + 5, /* field[5] = funcformat */ + 1, /* field[1] = funcid */ + 2, /* field[2] = funcresulttype */ + 3, /* field[3] = funcretset */ + 4, /* field[4] = funcvariadic */ + 7, /* field[7] = inputcollid */ + 9, /* field[9] = location */ + 0, /* field[0] = xpr */ +}; +static const ProtobufCIntRange pg_query__func_expr__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 10 } +}; +const ProtobufCMessageDescriptor pg_query__func_expr__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.FuncExpr", + "FuncExpr", + "PgQuery__FuncExpr", + "pg_query", + sizeof(PgQuery__FuncExpr), + 10, + pg_query__func_expr__field_descriptors, + pg_query__func_expr__field_indices_by_name, + 1, pg_query__func_expr__number_ranges, + (ProtobufCMessageInit) pg_query__func_expr__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__named_arg_expr__field_descriptors[5] = +{ + { + "xpr", + 1, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TableFunc, n_coldefexprs), - offsetof(PgQuery__TableFunc, coldefexprs), + 0, /* quantifier_offset */ + offsetof(PgQuery__NamedArgExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "notnulls", - 11, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_UINT64, - offsetof(PgQuery__TableFunc, n_notnulls), - offsetof(PgQuery__TableFunc, notnulls), + "arg", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__NamedArgExpr, arg), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "name", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__NamedArgExpr, name), NULL, - 0 | PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ + &protobuf_c_empty_string, + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ordinalitycol", - 12, + "argnumber", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__TableFunc, ordinalitycol), + offsetof(PgQuery__NamedArgExpr, argnumber), NULL, NULL, 0, /* flags */ @@ -14854,53 +16991,45 @@ static const ProtobufCFieldDescriptor pg_query__table_func__field_descriptors[13 }, { "location", - 13, + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__TableFunc, location), + offsetof(PgQuery__NamedArgExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__table_func__field_indices_by_name[] = { - 7, /* field[7] = colcollations */ - 9, /* field[9] = coldefexprs */ - 8, /* field[8] = colexprs */ - 4, /* field[4] = colnames */ - 5, /* field[5] = coltypes */ - 6, /* field[6] = coltypmods */ - 2, /* field[2] = docexpr */ - 12, /* field[12] = location */ - 10, /* field[10] = notnulls */ - 1, /* field[1] = ns_names */ - 0, /* field[0] = ns_uris */ - 11, /* field[11] = ordinalitycol */ - 3, /* field[3] = rowexpr */ +static const unsigned pg_query__named_arg_expr__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 3, /* field[3] = argnumber */ + 4, /* field[4] = location */ + 2, /* field[2] = name */ + 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__table_func__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__named_arg_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 13 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__table_func__descriptor = +const ProtobufCMessageDescriptor pg_query__named_arg_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.TableFunc", - "TableFunc", - "PgQuery__TableFunc", + "pg_query.NamedArgExpr", + "NamedArgExpr", + "PgQuery__NamedArgExpr", "pg_query", - sizeof(PgQuery__TableFunc), - 13, - pg_query__table_func__field_descriptors, - pg_query__table_func__field_indices_by_name, - 1, pg_query__table_func__number_ranges, - (ProtobufCMessageInit) pg_query__table_func__init, + sizeof(PgQuery__NamedArgExpr), + 5, + pg_query__named_arg_expr__field_descriptors, + pg_query__named_arg_expr__field_indices_by_name, + 1, pg_query__named_arg_expr__number_ranges, + (ProtobufCMessageInit) pg_query__named_arg_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__var__field_descriptors[10] = +static const ProtobufCFieldDescriptor pg_query__op_expr__field_descriptors[8] = { { "xpr", @@ -14908,154 +17037,128 @@ static const ProtobufCFieldDescriptor pg_query__var__field_descriptors[10] = PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Var, xpr), + offsetof(PgQuery__OpExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "varno", + "opno", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Var, varno), + offsetof(PgQuery__OpExpr, opno), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "varattno", + "opresulttype", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Var, varattno), + offsetof(PgQuery__OpExpr, opresulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "vartype", + "opretset", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Var, vartype), + offsetof(PgQuery__OpExpr, opretset), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "vartypmod", + "opcollid", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Var, vartypmod), + offsetof(PgQuery__OpExpr, opcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "varcollid", + "inputcollid", 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Var, varcollid), + offsetof(PgQuery__OpExpr, inputcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "varlevelsup", + "args", 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__Var, varlevelsup), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "varnosyn", - 8, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__Var, varnosyn), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "varattnosyn", - 9, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__Var, varattnosyn), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__OpExpr, n_args), + offsetof(PgQuery__OpExpr, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 10, + 8, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Var, location), + offsetof(PgQuery__OpExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__var__field_indices_by_name[] = { - 9, /* field[9] = location */ - 2, /* field[2] = varattno */ - 8, /* field[8] = varattnosyn */ - 5, /* field[5] = varcollid */ - 6, /* field[6] = varlevelsup */ - 1, /* field[1] = varno */ - 7, /* field[7] = varnosyn */ - 3, /* field[3] = vartype */ - 4, /* field[4] = vartypmod */ +static const unsigned pg_query__op_expr__field_indices_by_name[] = { + 6, /* field[6] = args */ + 5, /* field[5] = inputcollid */ + 7, /* field[7] = location */ + 4, /* field[4] = opcollid */ + 1, /* field[1] = opno */ + 2, /* field[2] = opresulttype */ + 3, /* field[3] = opretset */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__var__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__op_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 10 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__var__descriptor = +const ProtobufCMessageDescriptor pg_query__op_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Var", - "Var", - "PgQuery__Var", + "pg_query.OpExpr", + "OpExpr", + "PgQuery__OpExpr", "pg_query", - sizeof(PgQuery__Var), - 10, - pg_query__var__field_descriptors, - pg_query__var__field_indices_by_name, - 1, pg_query__var__number_ranges, - (ProtobufCMessageInit) pg_query__var__init, + sizeof(PgQuery__OpExpr), + 8, + pg_query__op_expr__field_descriptors, + pg_query__op_expr__field_indices_by_name, + 1, pg_query__op_expr__number_ranges, + (ProtobufCMessageInit) pg_query__op_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__param__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__distinct_expr__field_descriptors[8] = { { "xpr", @@ -15063,115 +17166,128 @@ static const ProtobufCFieldDescriptor pg_query__param__field_descriptors[7] = PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Param, xpr), + offsetof(PgQuery__DistinctExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "paramkind", + "opno", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Param, paramkind), - &pg_query__param_kind__descriptor, + offsetof(PgQuery__DistinctExpr, opno), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "paramid", + "opresulttype", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Param, paramid), + offsetof(PgQuery__DistinctExpr, opresulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "paramtype", + "opretset", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Param, paramtype), + offsetof(PgQuery__DistinctExpr, opretset), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "paramtypmod", + "opcollid", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Param, paramtypmod), + offsetof(PgQuery__DistinctExpr, opcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "paramcollid", + "inputcollid", 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Param, paramcollid), + offsetof(PgQuery__DistinctExpr, inputcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "args", 7, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__DistinctExpr, n_args), + offsetof(PgQuery__DistinctExpr, args), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "location", + 8, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Param, location), + offsetof(PgQuery__DistinctExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__param__field_indices_by_name[] = { - 6, /* field[6] = location */ - 5, /* field[5] = paramcollid */ - 2, /* field[2] = paramid */ - 1, /* field[1] = paramkind */ - 3, /* field[3] = paramtype */ - 4, /* field[4] = paramtypmod */ +static const unsigned pg_query__distinct_expr__field_indices_by_name[] = { + 6, /* field[6] = args */ + 5, /* field[5] = inputcollid */ + 7, /* field[7] = location */ + 4, /* field[4] = opcollid */ + 1, /* field[1] = opno */ + 2, /* field[2] = opresulttype */ + 3, /* field[3] = opretset */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__param__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__distinct_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__param__descriptor = +const ProtobufCMessageDescriptor pg_query__distinct_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Param", - "Param", - "PgQuery__Param", + "pg_query.DistinctExpr", + "DistinctExpr", + "PgQuery__DistinctExpr", "pg_query", - sizeof(PgQuery__Param), - 7, - pg_query__param__field_descriptors, - pg_query__param__field_indices_by_name, - 1, pg_query__param__number_ranges, - (ProtobufCMessageInit) pg_query__param__init, + sizeof(PgQuery__DistinctExpr), + 8, + pg_query__distinct_expr__field_descriptors, + pg_query__distinct_expr__field_indices_by_name, + 1, pg_query__distinct_expr__number_ranges, + (ProtobufCMessageInit) pg_query__distinct_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__aggref__field_descriptors[20] = +static const ProtobufCFieldDescriptor pg_query__null_if_expr__field_descriptors[8] = { { "xpr", @@ -15179,284 +17295,231 @@ static const ProtobufCFieldDescriptor pg_query__aggref__field_descriptors[20] = PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, xpr), + offsetof(PgQuery__NullIfExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggfnoid", + "opno", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggfnoid), + offsetof(PgQuery__NullIfExpr, opno), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggtype", + "opresulttype", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggtype), + offsetof(PgQuery__NullIfExpr, opresulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggcollid", + "opretset", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggcollid), + offsetof(PgQuery__NullIfExpr, opretset), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inputcollid", + "opcollid", 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, inputcollid), + offsetof(PgQuery__NullIfExpr, opcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggtranstype", + "inputcollid", 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggtranstype), + offsetof(PgQuery__NullIfExpr, inputcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggargtypes", + "args", 7, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Aggref, n_aggargtypes), - offsetof(PgQuery__Aggref, aggargtypes), + offsetof(PgQuery__NullIfExpr, n_args), + offsetof(PgQuery__NullIfExpr, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggdirectargs", + "location", 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Aggref, n_aggdirectargs), - offsetof(PgQuery__Aggref, aggdirectargs), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 9, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Aggref, n_args), - offsetof(PgQuery__Aggref, args), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "aggorder", - 10, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Aggref, n_aggorder), - offsetof(PgQuery__Aggref, aggorder), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__NullIfExpr, location), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "aggdistinct", - 11, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Aggref, n_aggdistinct), - offsetof(PgQuery__Aggref, aggdistinct), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__null_if_expr__field_indices_by_name[] = { + 6, /* field[6] = args */ + 5, /* field[5] = inputcollid */ + 7, /* field[7] = location */ + 4, /* field[4] = opcollid */ + 1, /* field[1] = opno */ + 2, /* field[2] = opresulttype */ + 3, /* field[3] = opretset */ + 0, /* field[0] = xpr */ +}; +static const ProtobufCIntRange pg_query__null_if_expr__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 8 } +}; +const ProtobufCMessageDescriptor pg_query__null_if_expr__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.NullIfExpr", + "NullIfExpr", + "PgQuery__NullIfExpr", + "pg_query", + sizeof(PgQuery__NullIfExpr), + 8, + pg_query__null_if_expr__field_descriptors, + pg_query__null_if_expr__field_indices_by_name, + 1, pg_query__null_if_expr__number_ranges, + (ProtobufCMessageInit) pg_query__null_if_expr__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__scalar_array_op_expr__field_descriptors[6] = +{ { - "aggfilter", - 12, + "xpr", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggfilter), + offsetof(PgQuery__ScalarArrayOpExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggstar", - 13, + "opno", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggstar), + offsetof(PgQuery__ScalarArrayOpExpr, opno), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggvariadic", - 14, + "use_or", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggvariadic), - NULL, + offsetof(PgQuery__ScalarArrayOpExpr, use_or), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "aggkind", - 15, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggkind), NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "agglevelsup", - 16, + "inputcollid", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, agglevelsup), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "aggsplit", - 17, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggsplit), - &pg_query__agg_split__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "aggno", - 18, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggno), + offsetof(PgQuery__ScalarArrayOpExpr, inputcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggtransno", - 19, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, aggtransno), - NULL, + "args", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ScalarArrayOpExpr, n_args), + offsetof(PgQuery__ScalarArrayOpExpr, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 20, + 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Aggref, location), + offsetof(PgQuery__ScalarArrayOpExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__aggref__field_indices_by_name[] = { - 6, /* field[6] = aggargtypes */ - 3, /* field[3] = aggcollid */ - 7, /* field[7] = aggdirectargs */ - 10, /* field[10] = aggdistinct */ - 11, /* field[11] = aggfilter */ - 1, /* field[1] = aggfnoid */ - 14, /* field[14] = aggkind */ - 15, /* field[15] = agglevelsup */ - 17, /* field[17] = aggno */ - 9, /* field[9] = aggorder */ - 16, /* field[16] = aggsplit */ - 12, /* field[12] = aggstar */ - 18, /* field[18] = aggtransno */ - 5, /* field[5] = aggtranstype */ - 2, /* field[2] = aggtype */ - 13, /* field[13] = aggvariadic */ - 8, /* field[8] = args */ - 4, /* field[4] = inputcollid */ - 19, /* field[19] = location */ +static const unsigned pg_query__scalar_array_op_expr__field_indices_by_name[] = { + 4, /* field[4] = args */ + 3, /* field[3] = inputcollid */ + 5, /* field[5] = location */ + 1, /* field[1] = opno */ + 2, /* field[2] = use_or */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__aggref__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__scalar_array_op_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 20 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__aggref__descriptor = +const ProtobufCMessageDescriptor pg_query__scalar_array_op_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Aggref", - "Aggref", - "PgQuery__Aggref", + "pg_query.ScalarArrayOpExpr", + "ScalarArrayOpExpr", + "PgQuery__ScalarArrayOpExpr", "pg_query", - sizeof(PgQuery__Aggref), - 20, - pg_query__aggref__field_descriptors, - pg_query__aggref__field_indices_by_name, - 1, pg_query__aggref__number_ranges, - (ProtobufCMessageInit) pg_query__aggref__init, + sizeof(PgQuery__ScalarArrayOpExpr), + 6, + pg_query__scalar_array_op_expr__field_descriptors, + pg_query__scalar_array_op_expr__field_indices_by_name, + 1, pg_query__scalar_array_op_expr__number_ranges, + (ProtobufCMessageInit) pg_query__scalar_array_op_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__grouping_func__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__bool_expr__field_descriptors[4] = { { "xpr", @@ -15464,102 +17527,76 @@ static const ProtobufCFieldDescriptor pg_query__grouping_func__field_descriptors PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__GroupingFunc, xpr), + offsetof(PgQuery__BoolExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", + "boolop", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__GroupingFunc, n_args), - offsetof(PgQuery__GroupingFunc, args), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__BoolExpr, boolop), + &pg_query__bool_expr_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refs", + "args", 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__GroupingFunc, n_refs), - offsetof(PgQuery__GroupingFunc, refs), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "cols", - 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__GroupingFunc, n_cols), - offsetof(PgQuery__GroupingFunc, cols), + offsetof(PgQuery__BoolExpr, n_args), + offsetof(PgQuery__BoolExpr, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "agglevelsup", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__GroupingFunc, agglevelsup), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, { "location", - 6, + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__GroupingFunc, location), + offsetof(PgQuery__BoolExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__grouping_func__field_indices_by_name[] = { - 4, /* field[4] = agglevelsup */ - 1, /* field[1] = args */ - 3, /* field[3] = cols */ - 5, /* field[5] = location */ - 2, /* field[2] = refs */ +static const unsigned pg_query__bool_expr__field_indices_by_name[] = { + 2, /* field[2] = args */ + 1, /* field[1] = boolop */ + 3, /* field[3] = location */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__grouping_func__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__bool_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__grouping_func__descriptor = +const ProtobufCMessageDescriptor pg_query__bool_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.GroupingFunc", - "GroupingFunc", - "PgQuery__GroupingFunc", + "pg_query.BoolExpr", + "BoolExpr", + "PgQuery__BoolExpr", "pg_query", - sizeof(PgQuery__GroupingFunc), - 6, - pg_query__grouping_func__field_descriptors, - pg_query__grouping_func__field_indices_by_name, - 1, pg_query__grouping_func__number_ranges, - (ProtobufCMessageInit) pg_query__grouping_func__init, + sizeof(PgQuery__BoolExpr), + 4, + pg_query__bool_expr__field_descriptors, + pg_query__bool_expr__field_indices_by_name, + 1, pg_query__bool_expr__number_ranges, + (ProtobufCMessageInit) pg_query__bool_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__window_func__field_descriptors[11] = +static const ProtobufCFieldDescriptor pg_query__sub_link__field_descriptors[7] = { { "xpr", @@ -15567,322 +17604,361 @@ static const ProtobufCFieldDescriptor pg_query__window_func__field_descriptors[1 PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, xpr), + offsetof(PgQuery__SubLink, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "winfnoid", + "sub_link_type", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, winfnoid), - NULL, + offsetof(PgQuery__SubLink, sub_link_type), + &pg_query__sub_link_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "wintype", + "sub_link_id", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, wintype), + offsetof(PgQuery__SubLink, sub_link_id), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "wincollid", + "testexpr", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, wincollid), - NULL, + offsetof(PgQuery__SubLink, testexpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inputcollid", + "oper_name", 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, inputcollid), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__SubLink, n_oper_name), + offsetof(PgQuery__SubLink, oper_name), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", + "subselect", 6, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__WindowFunc, n_args), - offsetof(PgQuery__WindowFunc, args), + 0, /* quantifier_offset */ + offsetof(PgQuery__SubLink, subselect), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aggfilter", + "location", 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, aggfilter), - &pg_query__node__descriptor, + offsetof(PgQuery__SubLink, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__sub_link__field_indices_by_name[] = { + 6, /* field[6] = location */ + 4, /* field[4] = oper_name */ + 2, /* field[2] = sub_link_id */ + 1, /* field[1] = sub_link_type */ + 5, /* field[5] = subselect */ + 3, /* field[3] = testexpr */ + 0, /* field[0] = xpr */ +}; +static const ProtobufCIntRange pg_query__sub_link__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__sub_link__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.SubLink", + "SubLink", + "PgQuery__SubLink", + "pg_query", + sizeof(PgQuery__SubLink), + 7, + pg_query__sub_link__field_descriptors, + pg_query__sub_link__field_indices_by_name, + 1, pg_query__sub_link__number_ranges, + (ProtobufCMessageInit) pg_query__sub_link__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__sub_plan__field_descriptors[17] = +{ { - "winref", - 8, + "xpr", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, winref), - NULL, + offsetof(PgQuery__SubPlan, xpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "winstar", - 9, + "sub_link_type", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, winstar), - NULL, + offsetof(PgQuery__SubPlan, sub_link_type), + &pg_query__sub_link_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "winagg", - 10, + "testexpr", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, winagg), + offsetof(PgQuery__SubPlan, testexpr), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "param_ids", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__SubPlan, n_param_ids), + offsetof(PgQuery__SubPlan, param_ids), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 11, + "plan_id", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowFunc, location), + offsetof(PgQuery__SubPlan, plan_id), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__window_func__field_indices_by_name[] = { - 6, /* field[6] = aggfilter */ - 5, /* field[5] = args */ - 4, /* field[4] = inputcollid */ - 10, /* field[10] = location */ - 9, /* field[9] = winagg */ - 3, /* field[3] = wincollid */ - 1, /* field[1] = winfnoid */ - 7, /* field[7] = winref */ - 8, /* field[8] = winstar */ - 2, /* field[2] = wintype */ - 0, /* field[0] = xpr */ -}; -static const ProtobufCIntRange pg_query__window_func__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 11 } -}; -const ProtobufCMessageDescriptor pg_query__window_func__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.WindowFunc", - "WindowFunc", - "PgQuery__WindowFunc", - "pg_query", - sizeof(PgQuery__WindowFunc), - 11, - pg_query__window_func__field_descriptors, - pg_query__window_func__field_indices_by_name, - 1, pg_query__window_func__number_ranges, - (ProtobufCMessageInit) pg_query__window_func__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__subscripting_ref__field_descriptors[10] = -{ { - "xpr", - 1, + "plan_name", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__SubscriptingRef, xpr), - &pg_query__node__descriptor, + offsetof(PgQuery__SubPlan, plan_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refcontainertype", - 2, + "first_col_type", + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SubscriptingRef, refcontainertype), + offsetof(PgQuery__SubPlan, first_col_type), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refelemtype", - 3, + "first_col_typmod", + 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SubscriptingRef, refelemtype), + offsetof(PgQuery__SubPlan, first_col_typmod), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refrestype", - 4, + "first_col_collation", + 9, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SubscriptingRef, refrestype), + offsetof(PgQuery__SubPlan, first_col_collation), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "reftypmod", - 5, + "use_hash_table", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__SubscriptingRef, reftypmod), + offsetof(PgQuery__SubPlan, use_hash_table), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refcollid", - 6, + "unknown_eq_false", + 11, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__SubscriptingRef, refcollid), + offsetof(PgQuery__SubPlan, unknown_eq_false), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "parallel_safe", + 12, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__SubPlan, parallel_safe), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refupperindexpr", - 7, + "set_param", + 13, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SubscriptingRef, n_refupperindexpr), - offsetof(PgQuery__SubscriptingRef, refupperindexpr), + offsetof(PgQuery__SubPlan, n_set_param), + offsetof(PgQuery__SubPlan, set_param), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "reflowerindexpr", - 8, + "par_param", + 14, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SubscriptingRef, n_reflowerindexpr), - offsetof(PgQuery__SubscriptingRef, reflowerindexpr), + offsetof(PgQuery__SubPlan, n_par_param), + offsetof(PgQuery__SubPlan, par_param), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refexpr", - 9, - PROTOBUF_C_LABEL_NONE, + "args", + 15, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubscriptingRef, refexpr), + offsetof(PgQuery__SubPlan, n_args), + offsetof(PgQuery__SubPlan, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refassgnexpr", - 10, + "startup_cost", + 16, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_DOUBLE, 0, /* quantifier_offset */ - offsetof(PgQuery__SubscriptingRef, refassgnexpr), - &pg_query__node__descriptor, + offsetof(PgQuery__SubPlan, startup_cost), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "per_call_cost", + 17, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_DOUBLE, + 0, /* quantifier_offset */ + offsetof(PgQuery__SubPlan, per_call_cost), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__subscripting_ref__field_indices_by_name[] = { - 9, /* field[9] = refassgnexpr */ - 5, /* field[5] = refcollid */ - 1, /* field[1] = refcontainertype */ - 2, /* field[2] = refelemtype */ - 8, /* field[8] = refexpr */ - 7, /* field[7] = reflowerindexpr */ - 3, /* field[3] = refrestype */ - 4, /* field[4] = reftypmod */ - 6, /* field[6] = refupperindexpr */ +static const unsigned pg_query__sub_plan__field_indices_by_name[] = { + 14, /* field[14] = args */ + 8, /* field[8] = first_col_collation */ + 6, /* field[6] = first_col_type */ + 7, /* field[7] = first_col_typmod */ + 13, /* field[13] = par_param */ + 11, /* field[11] = parallel_safe */ + 3, /* field[3] = param_ids */ + 16, /* field[16] = per_call_cost */ + 4, /* field[4] = plan_id */ + 5, /* field[5] = plan_name */ + 12, /* field[12] = set_param */ + 15, /* field[15] = startup_cost */ + 1, /* field[1] = sub_link_type */ + 2, /* field[2] = testexpr */ + 10, /* field[10] = unknown_eq_false */ + 9, /* field[9] = use_hash_table */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__subscripting_ref__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__sub_plan__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 10 } + { 0, 17 } }; -const ProtobufCMessageDescriptor pg_query__subscripting_ref__descriptor = +const ProtobufCMessageDescriptor pg_query__sub_plan__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SubscriptingRef", - "SubscriptingRef", - "PgQuery__SubscriptingRef", + "pg_query.SubPlan", + "SubPlan", + "PgQuery__SubPlan", "pg_query", - sizeof(PgQuery__SubscriptingRef), - 10, - pg_query__subscripting_ref__field_descriptors, - pg_query__subscripting_ref__field_indices_by_name, - 1, pg_query__subscripting_ref__number_ranges, - (ProtobufCMessageInit) pg_query__subscripting_ref__init, + sizeof(PgQuery__SubPlan), + 17, + pg_query__sub_plan__field_descriptors, + pg_query__sub_plan__field_indices_by_name, + 1, pg_query__sub_plan__number_ranges, + (ProtobufCMessageInit) pg_query__sub_plan__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__func_expr__field_descriptors[10] = +static const ProtobufCFieldDescriptor pg_query__alternative_sub_plan__field_descriptors[2] = { { "xpr", @@ -15890,154 +17966,153 @@ static const ProtobufCFieldDescriptor pg_query__func_expr__field_descriptors[10] PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncExpr, xpr), + offsetof(PgQuery__AlternativeSubPlan, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funcid", + "subplans", 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__FuncExpr, funcid), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlternativeSubPlan, n_subplans), + offsetof(PgQuery__AlternativeSubPlan, subplans), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__alternative_sub_plan__field_indices_by_name[] = { + 1, /* field[1] = subplans */ + 0, /* field[0] = xpr */ +}; +static const ProtobufCIntRange pg_query__alternative_sub_plan__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__alternative_sub_plan__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlternativeSubPlan", + "AlternativeSubPlan", + "PgQuery__AlternativeSubPlan", + "pg_query", + sizeof(PgQuery__AlternativeSubPlan), + 2, + pg_query__alternative_sub_plan__field_descriptors, + pg_query__alternative_sub_plan__field_indices_by_name, + 1, pg_query__alternative_sub_plan__number_ranges, + (ProtobufCMessageInit) pg_query__alternative_sub_plan__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__field_select__field_descriptors[6] = +{ { - "funcresulttype", - 3, + "xpr", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncExpr, funcresulttype), - NULL, + offsetof(PgQuery__FieldSelect, xpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funcretset", - 4, + "arg", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncExpr, funcretset), - NULL, + offsetof(PgQuery__FieldSelect, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funcvariadic", - 5, + "fieldnum", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncExpr, funcvariadic), - NULL, + offsetof(PgQuery__FieldSelect, fieldnum), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "funcformat", - 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__FuncExpr, funcformat), - &pg_query__coercion_form__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funccollid", - 7, + "resulttype", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncExpr, funccollid), + offsetof(PgQuery__FieldSelect, resulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inputcollid", - 8, + "resulttypmod", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncExpr, inputcollid), - NULL, + offsetof(PgQuery__FieldSelect, resulttypmod), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 9, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__FuncExpr, n_args), - offsetof(PgQuery__FuncExpr, args), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 10, + "resultcollid", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncExpr, location), + offsetof(PgQuery__FieldSelect, resultcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__func_expr__field_indices_by_name[] = { - 8, /* field[8] = args */ - 6, /* field[6] = funccollid */ - 5, /* field[5] = funcformat */ - 1, /* field[1] = funcid */ - 2, /* field[2] = funcresulttype */ - 3, /* field[3] = funcretset */ - 4, /* field[4] = funcvariadic */ - 7, /* field[7] = inputcollid */ - 9, /* field[9] = location */ +static const unsigned pg_query__field_select__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 2, /* field[2] = fieldnum */ + 5, /* field[5] = resultcollid */ + 3, /* field[3] = resulttype */ + 4, /* field[4] = resulttypmod */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__func_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__field_select__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 10 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__func_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__field_select__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.FuncExpr", - "FuncExpr", - "PgQuery__FuncExpr", + "pg_query.FieldSelect", + "FieldSelect", + "PgQuery__FieldSelect", "pg_query", - sizeof(PgQuery__FuncExpr), - 10, - pg_query__func_expr__field_descriptors, - pg_query__func_expr__field_indices_by_name, - 1, pg_query__func_expr__number_ranges, - (ProtobufCMessageInit) pg_query__func_expr__init, + sizeof(PgQuery__FieldSelect), + 6, + pg_query__field_select__field_descriptors, + pg_query__field_select__field_indices_by_name, + 1, pg_query__field_select__number_ranges, + (ProtobufCMessageInit) pg_query__field_select__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__named_arg_expr__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__field_store__field_descriptors[5] = { { "xpr", @@ -16045,7 +18120,7 @@ static const ProtobufCFieldDescriptor pg_query__named_arg_expr__field_descriptor PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__NamedArgExpr, xpr), + offsetof(PgQuery__FieldStore, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ @@ -16057,77 +18132,77 @@ static const ProtobufCFieldDescriptor pg_query__named_arg_expr__field_descriptor PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__NamedArgExpr, arg), + offsetof(PgQuery__FieldStore, arg), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "name", + "newvals", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__NamedArgExpr, name), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__FieldStore, n_newvals), + offsetof(PgQuery__FieldStore, newvals), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "argnumber", + "fieldnums", 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__NamedArgExpr, argnumber), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__FieldStore, n_fieldnums), + offsetof(PgQuery__FieldStore, fieldnums), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "resulttype", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__NamedArgExpr, location), + offsetof(PgQuery__FieldStore, resulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__named_arg_expr__field_indices_by_name[] = { +static const unsigned pg_query__field_store__field_indices_by_name[] = { 1, /* field[1] = arg */ - 3, /* field[3] = argnumber */ - 4, /* field[4] = location */ - 2, /* field[2] = name */ + 3, /* field[3] = fieldnums */ + 2, /* field[2] = newvals */ + 4, /* field[4] = resulttype */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__named_arg_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__field_store__number_ranges[1 + 1] = { { 1, 0 }, { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__named_arg_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__field_store__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.NamedArgExpr", - "NamedArgExpr", - "PgQuery__NamedArgExpr", + "pg_query.FieldStore", + "FieldStore", + "PgQuery__FieldStore", "pg_query", - sizeof(PgQuery__NamedArgExpr), + sizeof(PgQuery__FieldStore), 5, - pg_query__named_arg_expr__field_descriptors, - pg_query__named_arg_expr__field_indices_by_name, - 1, pg_query__named_arg_expr__number_ranges, - (ProtobufCMessageInit) pg_query__named_arg_expr__init, + pg_query__field_store__field_descriptors, + pg_query__field_store__field_indices_by_name, + 1, pg_query__field_store__number_ranges, + (ProtobufCMessageInit) pg_query__field_store__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__op_expr__field_descriptors[9] = +static const ProtobufCFieldDescriptor pg_query__relabel_type__field_descriptors[7] = { { "xpr", @@ -16135,141 +18210,115 @@ static const ProtobufCFieldDescriptor pg_query__op_expr__field_descriptors[9] = PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__OpExpr, xpr), + offsetof(PgQuery__RelabelType, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opno", + "arg", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__OpExpr, opno), - NULL, + offsetof(PgQuery__RelabelType, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opfuncid", + "resulttype", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__OpExpr, opfuncid), + offsetof(PgQuery__RelabelType, resulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opresulttype", + "resulttypmod", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__OpExpr, opresulttype), + offsetof(PgQuery__RelabelType, resulttypmod), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opretset", + "resultcollid", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__OpExpr, opretset), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "opcollid", - 6, - PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__OpExpr, opcollid), + offsetof(PgQuery__RelabelType, resultcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inputcollid", - 7, + "relabelformat", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__OpExpr, inputcollid), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__OpExpr, n_args), - offsetof(PgQuery__OpExpr, args), - &pg_query__node__descriptor, + offsetof(PgQuery__RelabelType, relabelformat), + &pg_query__coercion_form__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 9, + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__OpExpr, location), + offsetof(PgQuery__RelabelType, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__op_expr__field_indices_by_name[] = { - 7, /* field[7] = args */ - 6, /* field[6] = inputcollid */ - 8, /* field[8] = location */ - 5, /* field[5] = opcollid */ - 2, /* field[2] = opfuncid */ - 1, /* field[1] = opno */ - 3, /* field[3] = opresulttype */ - 4, /* field[4] = opretset */ +static const unsigned pg_query__relabel_type__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 6, /* field[6] = location */ + 5, /* field[5] = relabelformat */ + 4, /* field[4] = resultcollid */ + 2, /* field[2] = resulttype */ + 3, /* field[3] = resulttypmod */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__op_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__relabel_type__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 9 } + { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__op_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__relabel_type__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.OpExpr", - "OpExpr", - "PgQuery__OpExpr", + "pg_query.RelabelType", + "RelabelType", + "PgQuery__RelabelType", "pg_query", - sizeof(PgQuery__OpExpr), - 9, - pg_query__op_expr__field_descriptors, - pg_query__op_expr__field_indices_by_name, - 1, pg_query__op_expr__number_ranges, - (ProtobufCMessageInit) pg_query__op_expr__init, + sizeof(PgQuery__RelabelType), + 7, + pg_query__relabel_type__field_descriptors, + pg_query__relabel_type__field_indices_by_name, + 1, pg_query__relabel_type__number_ranges, + (ProtobufCMessageInit) pg_query__relabel_type__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__distinct_expr__field_descriptors[9] = +static const ProtobufCFieldDescriptor pg_query__coerce_via_io__field_descriptors[6] = { { "xpr", @@ -16277,141 +18326,102 @@ static const ProtobufCFieldDescriptor pg_query__distinct_expr__field_descriptors PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__DistinctExpr, xpr), + offsetof(PgQuery__CoerceViaIO, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opno", + "arg", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__DistinctExpr, opno), - NULL, + offsetof(PgQuery__CoerceViaIO, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opfuncid", + "resulttype", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__DistinctExpr, opfuncid), + offsetof(PgQuery__CoerceViaIO, resulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opresulttype", + "resultcollid", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__DistinctExpr, opresulttype), + offsetof(PgQuery__CoerceViaIO, resultcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opretset", + "coerceformat", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__DistinctExpr, opretset), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "opcollid", - 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__DistinctExpr, opcollid), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "inputcollid", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__DistinctExpr, inputcollid), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DistinctExpr, n_args), - offsetof(PgQuery__DistinctExpr, args), - &pg_query__node__descriptor, + offsetof(PgQuery__CoerceViaIO, coerceformat), + &pg_query__coercion_form__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 9, + 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__DistinctExpr, location), + offsetof(PgQuery__CoerceViaIO, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__distinct_expr__field_indices_by_name[] = { - 7, /* field[7] = args */ - 6, /* field[6] = inputcollid */ - 8, /* field[8] = location */ - 5, /* field[5] = opcollid */ - 2, /* field[2] = opfuncid */ - 1, /* field[1] = opno */ - 3, /* field[3] = opresulttype */ - 4, /* field[4] = opretset */ +static const unsigned pg_query__coerce_via_io__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 4, /* field[4] = coerceformat */ + 5, /* field[5] = location */ + 3, /* field[3] = resultcollid */ + 2, /* field[2] = resulttype */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__distinct_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__coerce_via_io__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 9 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__distinct_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__coerce_via_io__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DistinctExpr", - "DistinctExpr", - "PgQuery__DistinctExpr", + "pg_query.CoerceViaIO", + "CoerceViaIO", + "PgQuery__CoerceViaIO", "pg_query", - sizeof(PgQuery__DistinctExpr), - 9, - pg_query__distinct_expr__field_descriptors, - pg_query__distinct_expr__field_indices_by_name, - 1, pg_query__distinct_expr__number_ranges, - (ProtobufCMessageInit) pg_query__distinct_expr__init, + sizeof(PgQuery__CoerceViaIO), + 6, + pg_query__coerce_via_io__field_descriptors, + pg_query__coerce_via_io__field_indices_by_name, + 1, pg_query__coerce_via_io__number_ranges, + (ProtobufCMessageInit) pg_query__coerce_via_io__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__null_if_expr__field_descriptors[9] = +static const ProtobufCFieldDescriptor pg_query__array_coerce_expr__field_descriptors[8] = { { "xpr", @@ -16419,141 +18429,128 @@ static const ProtobufCFieldDescriptor pg_query__null_if_expr__field_descriptors[ PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__NullIfExpr, xpr), + offsetof(PgQuery__ArrayCoerceExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opno", + "arg", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__NullIfExpr, opno), - NULL, + offsetof(PgQuery__ArrayCoerceExpr, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opfuncid", + "elemexpr", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__NullIfExpr, opfuncid), - NULL, + offsetof(PgQuery__ArrayCoerceExpr, elemexpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opresulttype", + "resulttype", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__NullIfExpr, opresulttype), + offsetof(PgQuery__ArrayCoerceExpr, resulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opretset", + "resulttypmod", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__NullIfExpr, opretset), + offsetof(PgQuery__ArrayCoerceExpr, resulttypmod), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opcollid", + "resultcollid", 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__NullIfExpr, opcollid), + offsetof(PgQuery__ArrayCoerceExpr, resultcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inputcollid", + "coerceformat", 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__NullIfExpr, inputcollid), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__NullIfExpr, n_args), - offsetof(PgQuery__NullIfExpr, args), - &pg_query__node__descriptor, + offsetof(PgQuery__ArrayCoerceExpr, coerceformat), + &pg_query__coercion_form__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 9, + 8, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__NullIfExpr, location), + offsetof(PgQuery__ArrayCoerceExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__null_if_expr__field_indices_by_name[] = { - 7, /* field[7] = args */ - 6, /* field[6] = inputcollid */ - 8, /* field[8] = location */ - 5, /* field[5] = opcollid */ - 2, /* field[2] = opfuncid */ - 1, /* field[1] = opno */ - 3, /* field[3] = opresulttype */ - 4, /* field[4] = opretset */ +static const unsigned pg_query__array_coerce_expr__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 6, /* field[6] = coerceformat */ + 2, /* field[2] = elemexpr */ + 7, /* field[7] = location */ + 5, /* field[5] = resultcollid */ + 3, /* field[3] = resulttype */ + 4, /* field[4] = resulttypmod */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__null_if_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__array_coerce_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 9 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__null_if_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__array_coerce_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.NullIfExpr", - "NullIfExpr", - "PgQuery__NullIfExpr", + "pg_query.ArrayCoerceExpr", + "ArrayCoerceExpr", + "PgQuery__ArrayCoerceExpr", "pg_query", - sizeof(PgQuery__NullIfExpr), - 9, - pg_query__null_if_expr__field_descriptors, - pg_query__null_if_expr__field_indices_by_name, - 1, pg_query__null_if_expr__number_ranges, - (ProtobufCMessageInit) pg_query__null_if_expr__init, + sizeof(PgQuery__ArrayCoerceExpr), + 8, + pg_query__array_coerce_expr__field_descriptors, + pg_query__array_coerce_expr__field_indices_by_name, + 1, pg_query__array_coerce_expr__number_ranges, + (ProtobufCMessageInit) pg_query__array_coerce_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__scalar_array_op_expr__field_descriptors[9] = +static const ProtobufCFieldDescriptor pg_query__convert_rowtype_expr__field_descriptors[5] = { { "xpr", @@ -16561,141 +18558,89 @@ static const ProtobufCFieldDescriptor pg_query__scalar_array_op_expr__field_desc PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ScalarArrayOpExpr, xpr), + offsetof(PgQuery__ConvertRowtypeExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opno", + "arg", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ScalarArrayOpExpr, opno), - NULL, + offsetof(PgQuery__ConvertRowtypeExpr, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opfuncid", + "resulttype", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ScalarArrayOpExpr, opfuncid), + offsetof(PgQuery__ConvertRowtypeExpr, resulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "hashfuncid", + "convertformat", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__ScalarArrayOpExpr, hashfuncid), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "negfuncid", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__ScalarArrayOpExpr, negfuncid), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "use_or", - 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__ScalarArrayOpExpr, use_or), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "inputcollid", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ScalarArrayOpExpr, inputcollid), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ScalarArrayOpExpr, n_args), - offsetof(PgQuery__ScalarArrayOpExpr, args), - &pg_query__node__descriptor, + offsetof(PgQuery__ConvertRowtypeExpr, convertformat), + &pg_query__coercion_form__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 9, + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ScalarArrayOpExpr, location), + offsetof(PgQuery__ConvertRowtypeExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__scalar_array_op_expr__field_indices_by_name[] = { - 7, /* field[7] = args */ - 3, /* field[3] = hashfuncid */ - 6, /* field[6] = inputcollid */ - 8, /* field[8] = location */ - 4, /* field[4] = negfuncid */ - 2, /* field[2] = opfuncid */ - 1, /* field[1] = opno */ - 5, /* field[5] = use_or */ +static const unsigned pg_query__convert_rowtype_expr__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 3, /* field[3] = convertformat */ + 4, /* field[4] = location */ + 2, /* field[2] = resulttype */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__scalar_array_op_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__convert_rowtype_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 9 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__scalar_array_op_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__convert_rowtype_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ScalarArrayOpExpr", - "ScalarArrayOpExpr", - "PgQuery__ScalarArrayOpExpr", + "pg_query.ConvertRowtypeExpr", + "ConvertRowtypeExpr", + "PgQuery__ConvertRowtypeExpr", "pg_query", - sizeof(PgQuery__ScalarArrayOpExpr), - 9, - pg_query__scalar_array_op_expr__field_descriptors, - pg_query__scalar_array_op_expr__field_indices_by_name, - 1, pg_query__scalar_array_op_expr__number_ranges, - (ProtobufCMessageInit) pg_query__scalar_array_op_expr__init, + sizeof(PgQuery__ConvertRowtypeExpr), + 5, + pg_query__convert_rowtype_expr__field_descriptors, + pg_query__convert_rowtype_expr__field_indices_by_name, + 1, pg_query__convert_rowtype_expr__number_ranges, + (ProtobufCMessageInit) pg_query__convert_rowtype_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__bool_expr__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__collate_expr__field_descriptors[4] = { { "xpr", @@ -16703,32 +18648,32 @@ static const ProtobufCFieldDescriptor pg_query__bool_expr__field_descriptors[4] PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__BoolExpr, xpr), + offsetof(PgQuery__CollateExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "boolop", + "arg", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__BoolExpr, boolop), - &pg_query__bool_expr_type__descriptor, + offsetof(PgQuery__CollateExpr, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", + "coll_oid", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__BoolExpr, n_args), - offsetof(PgQuery__BoolExpr, args), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__CollateExpr, coll_oid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ @@ -16739,40 +18684,40 @@ static const ProtobufCFieldDescriptor pg_query__bool_expr__field_descriptors[4] PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__BoolExpr, location), + offsetof(PgQuery__CollateExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__bool_expr__field_indices_by_name[] = { - 2, /* field[2] = args */ - 1, /* field[1] = boolop */ +static const unsigned pg_query__collate_expr__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 2, /* field[2] = coll_oid */ 3, /* field[3] = location */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__bool_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__collate_expr__number_ranges[1 + 1] = { { 1, 0 }, { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__bool_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__collate_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.BoolExpr", - "BoolExpr", - "PgQuery__BoolExpr", + "pg_query.CollateExpr", + "CollateExpr", + "PgQuery__CollateExpr", "pg_query", - sizeof(PgQuery__BoolExpr), + sizeof(PgQuery__CollateExpr), 4, - pg_query__bool_expr__field_descriptors, - pg_query__bool_expr__field_indices_by_name, - 1, pg_query__bool_expr__number_ranges, - (ProtobufCMessageInit) pg_query__bool_expr__init, + pg_query__collate_expr__field_descriptors, + pg_query__collate_expr__field_indices_by_name, + 1, pg_query__collate_expr__number_ranges, + (ProtobufCMessageInit) pg_query__collate_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__sub_link__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__case_expr__field_descriptors[7] = { { "xpr", @@ -16780,67 +18725,67 @@ static const ProtobufCFieldDescriptor pg_query__sub_link__field_descriptors[7] = PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SubLink, xpr), + offsetof(PgQuery__CaseExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sub_link_type", + "casetype", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SubLink, sub_link_type), - &pg_query__sub_link_type__descriptor, + offsetof(PgQuery__CaseExpr, casetype), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sub_link_id", + "casecollid", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SubLink, sub_link_id), + offsetof(PgQuery__CaseExpr, casecollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "testexpr", + "arg", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SubLink, testexpr), + offsetof(PgQuery__CaseExpr, arg), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "oper_name", + "args", 5, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SubLink, n_oper_name), - offsetof(PgQuery__SubLink, oper_name), + offsetof(PgQuery__CaseExpr, n_args), + offsetof(PgQuery__CaseExpr, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "subselect", + "defresult", 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SubLink, subselect), + offsetof(PgQuery__CaseExpr, defresult), &pg_query__node__descriptor, NULL, 0, /* flags */ @@ -16852,43 +18797,43 @@ static const ProtobufCFieldDescriptor pg_query__sub_link__field_descriptors[7] = PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SubLink, location), + offsetof(PgQuery__CaseExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__sub_link__field_indices_by_name[] = { +static const unsigned pg_query__case_expr__field_indices_by_name[] = { + 3, /* field[3] = arg */ + 4, /* field[4] = args */ + 2, /* field[2] = casecollid */ + 1, /* field[1] = casetype */ + 5, /* field[5] = defresult */ 6, /* field[6] = location */ - 4, /* field[4] = oper_name */ - 2, /* field[2] = sub_link_id */ - 1, /* field[1] = sub_link_type */ - 5, /* field[5] = subselect */ - 3, /* field[3] = testexpr */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__sub_link__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__case_expr__number_ranges[1 + 1] = { { 1, 0 }, { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__sub_link__descriptor = +const ProtobufCMessageDescriptor pg_query__case_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SubLink", - "SubLink", - "PgQuery__SubLink", + "pg_query.CaseExpr", + "CaseExpr", + "PgQuery__CaseExpr", "pg_query", - sizeof(PgQuery__SubLink), + sizeof(PgQuery__CaseExpr), 7, - pg_query__sub_link__field_descriptors, - pg_query__sub_link__field_indices_by_name, - 1, pg_query__sub_link__number_ranges, - (ProtobufCMessageInit) pg_query__sub_link__init, + pg_query__case_expr__field_descriptors, + pg_query__case_expr__field_indices_by_name, + 1, pg_query__case_expr__number_ranges, + (ProtobufCMessageInit) pg_query__case_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__sub_plan__field_descriptors[17] = +static const ProtobufCFieldDescriptor pg_query__case_when__field_descriptors[4] = { { "xpr", @@ -16896,245 +18841,76 @@ static const ProtobufCFieldDescriptor pg_query__sub_plan__field_descriptors[17] PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, xpr), + offsetof(PgQuery__CaseWhen, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sub_link_type", + "expr", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, sub_link_type), - &pg_query__sub_link_type__descriptor, + offsetof(PgQuery__CaseWhen, expr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "testexpr", + "result", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, testexpr), + offsetof(PgQuery__CaseWhen, result), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "param_ids", + "location", 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SubPlan, n_param_ids), - offsetof(PgQuery__SubPlan, param_ids), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "plan_id", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, plan_id), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "plan_name", - 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, plan_name), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "first_col_type", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, first_col_type), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "first_col_typmod", - 8, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, first_col_typmod), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "first_col_collation", - 9, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, first_col_collation), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "use_hash_table", - 10, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, use_hash_table), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "unknown_eq_false", - 11, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, unknown_eq_false), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "parallel_safe", - 12, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, parallel_safe), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "set_param", - 13, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SubPlan, n_set_param), - offsetof(PgQuery__SubPlan, set_param), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "par_param", - 14, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SubPlan, n_par_param), - offsetof(PgQuery__SubPlan, par_param), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 15, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SubPlan, n_args), - offsetof(PgQuery__SubPlan, args), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "startup_cost", - 16, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_DOUBLE, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, startup_cost), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "per_call_cost", - 17, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_DOUBLE, - 0, /* quantifier_offset */ - offsetof(PgQuery__SubPlan, per_call_cost), + offsetof(PgQuery__CaseWhen, location), NULL, NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__sub_plan__field_indices_by_name[] = { - 14, /* field[14] = args */ - 8, /* field[8] = first_col_collation */ - 6, /* field[6] = first_col_type */ - 7, /* field[7] = first_col_typmod */ - 13, /* field[13] = par_param */ - 11, /* field[11] = parallel_safe */ - 3, /* field[3] = param_ids */ - 16, /* field[16] = per_call_cost */ - 4, /* field[4] = plan_id */ - 5, /* field[5] = plan_name */ - 12, /* field[12] = set_param */ - 15, /* field[15] = startup_cost */ - 1, /* field[1] = sub_link_type */ - 2, /* field[2] = testexpr */ - 10, /* field[10] = unknown_eq_false */ - 9, /* field[9] = use_hash_table */ + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__case_when__field_indices_by_name[] = { + 1, /* field[1] = expr */ + 3, /* field[3] = location */ + 2, /* field[2] = result */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__sub_plan__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__case_when__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 17 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__sub_plan__descriptor = +const ProtobufCMessageDescriptor pg_query__case_when__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SubPlan", - "SubPlan", - "PgQuery__SubPlan", + "pg_query.CaseWhen", + "CaseWhen", + "PgQuery__CaseWhen", "pg_query", - sizeof(PgQuery__SubPlan), - 17, - pg_query__sub_plan__field_descriptors, - pg_query__sub_plan__field_indices_by_name, - 1, pg_query__sub_plan__number_ranges, - (ProtobufCMessageInit) pg_query__sub_plan__init, + sizeof(PgQuery__CaseWhen), + 4, + pg_query__case_when__field_descriptors, + pg_query__case_when__field_indices_by_name, + 1, pg_query__case_when__number_ranges, + (ProtobufCMessageInit) pg_query__case_when__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alternative_sub_plan__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__case_test_expr__field_descriptors[4] = { { "xpr", @@ -17142,50 +18918,76 @@ static const ProtobufCFieldDescriptor pg_query__alternative_sub_plan__field_desc PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlternativeSubPlan, xpr), + offsetof(PgQuery__CaseTestExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "subplans", + "type_id", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlternativeSubPlan, n_subplans), - offsetof(PgQuery__AlternativeSubPlan, subplans), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__CaseTestExpr, type_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "type_mod", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__CaseTestExpr, type_mod), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "collation", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__CaseTestExpr, collation), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alternative_sub_plan__field_indices_by_name[] = { - 1, /* field[1] = subplans */ +static const unsigned pg_query__case_test_expr__field_indices_by_name[] = { + 3, /* field[3] = collation */ + 1, /* field[1] = type_id */ + 2, /* field[2] = type_mod */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__alternative_sub_plan__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__case_test_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__alternative_sub_plan__descriptor = +const ProtobufCMessageDescriptor pg_query__case_test_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlternativeSubPlan", - "AlternativeSubPlan", - "PgQuery__AlternativeSubPlan", + "pg_query.CaseTestExpr", + "CaseTestExpr", + "PgQuery__CaseTestExpr", "pg_query", - sizeof(PgQuery__AlternativeSubPlan), - 2, - pg_query__alternative_sub_plan__field_descriptors, - pg_query__alternative_sub_plan__field_indices_by_name, - 1, pg_query__alternative_sub_plan__number_ranges, - (ProtobufCMessageInit) pg_query__alternative_sub_plan__init, + sizeof(PgQuery__CaseTestExpr), + 4, + pg_query__case_test_expr__field_descriptors, + pg_query__case_test_expr__field_indices_by_name, + 1, pg_query__case_test_expr__number_ranges, + (ProtobufCMessageInit) pg_query__case_test_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__field_select__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__array_expr__field_descriptors[7] = { { "xpr", @@ -17193,102 +18995,115 @@ static const ProtobufCFieldDescriptor pg_query__field_select__field_descriptors[ PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__FieldSelect, xpr), + offsetof(PgQuery__ArrayExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "array_typeid", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FieldSelect, arg), - &pg_query__node__descriptor, + offsetof(PgQuery__ArrayExpr, array_typeid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "fieldnum", + "array_collid", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FieldSelect, fieldnum), + offsetof(PgQuery__ArrayExpr, array_collid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resulttype", + "element_typeid", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FieldSelect, resulttype), + offsetof(PgQuery__ArrayExpr, element_typeid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resulttypmod", + "elements", 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ArrayExpr, n_elements), + offsetof(PgQuery__ArrayExpr, elements), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "multidims", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__FieldSelect, resulttypmod), + offsetof(PgQuery__ArrayExpr, multidims), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resultcollid", - 6, + "location", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FieldSelect, resultcollid), + offsetof(PgQuery__ArrayExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__field_select__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 2, /* field[2] = fieldnum */ - 5, /* field[5] = resultcollid */ - 3, /* field[3] = resulttype */ - 4, /* field[4] = resulttypmod */ +static const unsigned pg_query__array_expr__field_indices_by_name[] = { + 2, /* field[2] = array_collid */ + 1, /* field[1] = array_typeid */ + 3, /* field[3] = element_typeid */ + 4, /* field[4] = elements */ + 6, /* field[6] = location */ + 5, /* field[5] = multidims */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__field_select__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__array_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__field_select__descriptor = +const ProtobufCMessageDescriptor pg_query__array_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.FieldSelect", - "FieldSelect", - "PgQuery__FieldSelect", + "pg_query.ArrayExpr", + "ArrayExpr", + "PgQuery__ArrayExpr", "pg_query", - sizeof(PgQuery__FieldSelect), - 6, - pg_query__field_select__field_descriptors, - pg_query__field_select__field_indices_by_name, - 1, pg_query__field_select__number_ranges, - (ProtobufCMessageInit) pg_query__field_select__init, + sizeof(PgQuery__ArrayExpr), + 7, + pg_query__array_expr__field_descriptors, + pg_query__array_expr__field_indices_by_name, + 1, pg_query__array_expr__number_ranges, + (ProtobufCMessageInit) pg_query__array_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__field_store__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__row_expr__field_descriptors[6] = { { "xpr", @@ -17296,89 +19111,102 @@ static const ProtobufCFieldDescriptor pg_query__field_store__field_descriptors[5 PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__FieldStore, xpr), + offsetof(PgQuery__RowExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "args", 2, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__FieldStore, arg), + offsetof(PgQuery__RowExpr, n_args), + offsetof(PgQuery__RowExpr, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "newvals", + "row_typeid", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__FieldStore, n_newvals), - offsetof(PgQuery__FieldStore, newvals), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__RowExpr, row_typeid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "fieldnums", + "row_format", 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__RowExpr, row_format), + &pg_query__coercion_form__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "colnames", + 5, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__FieldStore, n_fieldnums), - offsetof(PgQuery__FieldStore, fieldnums), + offsetof(PgQuery__RowExpr, n_colnames), + offsetof(PgQuery__RowExpr, colnames), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resulttype", - 5, + "location", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FieldStore, resulttype), + offsetof(PgQuery__RowExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__field_store__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 3, /* field[3] = fieldnums */ - 2, /* field[2] = newvals */ - 4, /* field[4] = resulttype */ +static const unsigned pg_query__row_expr__field_indices_by_name[] = { + 1, /* field[1] = args */ + 4, /* field[4] = colnames */ + 5, /* field[5] = location */ + 3, /* field[3] = row_format */ + 2, /* field[2] = row_typeid */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__field_store__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__row_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__field_store__descriptor = +const ProtobufCMessageDescriptor pg_query__row_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.FieldStore", - "FieldStore", - "PgQuery__FieldStore", + "pg_query.RowExpr", + "RowExpr", + "PgQuery__RowExpr", "pg_query", - sizeof(PgQuery__FieldStore), - 5, - pg_query__field_store__field_descriptors, - pg_query__field_store__field_indices_by_name, - 1, pg_query__field_store__number_ranges, - (ProtobufCMessageInit) pg_query__field_store__init, + sizeof(PgQuery__RowExpr), + 6, + pg_query__row_expr__field_descriptors, + pg_query__row_expr__field_indices_by_name, + 1, pg_query__row_expr__number_ranges, + (ProtobufCMessageInit) pg_query__row_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__relabel_type__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__row_compare_expr__field_descriptors[7] = { { "xpr", @@ -17386,115 +19214,115 @@ static const ProtobufCFieldDescriptor pg_query__relabel_type__field_descriptors[ PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RelabelType, xpr), + offsetof(PgQuery__RowCompareExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "rctype", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__RelabelType, arg), - &pg_query__node__descriptor, + offsetof(PgQuery__RowCompareExpr, rctype), + &pg_query__row_compare_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resulttype", + "opnos", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RelabelType, resulttype), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RowCompareExpr, n_opnos), + offsetof(PgQuery__RowCompareExpr, opnos), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resulttypmod", + "opfamilies", 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RelabelType, resulttypmod), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RowCompareExpr, n_opfamilies), + offsetof(PgQuery__RowCompareExpr, opfamilies), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resultcollid", + "inputcollids", 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RelabelType, resultcollid), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RowCompareExpr, n_inputcollids), + offsetof(PgQuery__RowCompareExpr, inputcollids), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relabelformat", + "largs", 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__RelabelType, relabelformat), - &pg_query__coercion_form__descriptor, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RowCompareExpr, n_largs), + offsetof(PgQuery__RowCompareExpr, largs), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "rargs", 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RelabelType, location), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RowCompareExpr, n_rargs), + offsetof(PgQuery__RowCompareExpr, rargs), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__relabel_type__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 6, /* field[6] = location */ - 5, /* field[5] = relabelformat */ - 4, /* field[4] = resultcollid */ - 2, /* field[2] = resulttype */ - 3, /* field[3] = resulttypmod */ +static const unsigned pg_query__row_compare_expr__field_indices_by_name[] = { + 4, /* field[4] = inputcollids */ + 5, /* field[5] = largs */ + 3, /* field[3] = opfamilies */ + 2, /* field[2] = opnos */ + 6, /* field[6] = rargs */ + 1, /* field[1] = rctype */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__relabel_type__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__row_compare_expr__number_ranges[1 + 1] = { { 1, 0 }, { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__relabel_type__descriptor = +const ProtobufCMessageDescriptor pg_query__row_compare_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RelabelType", - "RelabelType", - "PgQuery__RelabelType", + "pg_query.RowCompareExpr", + "RowCompareExpr", + "PgQuery__RowCompareExpr", "pg_query", - sizeof(PgQuery__RelabelType), + sizeof(PgQuery__RowCompareExpr), 7, - pg_query__relabel_type__field_descriptors, - pg_query__relabel_type__field_indices_by_name, - 1, pg_query__relabel_type__number_ranges, - (ProtobufCMessageInit) pg_query__relabel_type__init, + pg_query__row_compare_expr__field_descriptors, + pg_query__row_compare_expr__field_indices_by_name, + 1, pg_query__row_compare_expr__number_ranges, + (ProtobufCMessageInit) pg_query__row_compare_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__coerce_via_io__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__coalesce_expr__field_descriptors[5] = { { "xpr", @@ -17502,102 +19330,89 @@ static const ProtobufCFieldDescriptor pg_query__coerce_via_io__field_descriptors PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceViaIO, xpr), + offsetof(PgQuery__CoalesceExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "coalescetype", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceViaIO, arg), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "resulttype", - 3, - PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceViaIO, resulttype), + offsetof(PgQuery__CoalesceExpr, coalescetype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resultcollid", - 4, + "coalescecollid", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceViaIO, resultcollid), + offsetof(PgQuery__CoalesceExpr, coalescecollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coerceformat", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceViaIO, coerceformat), - &pg_query__coercion_form__descriptor, + "args", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CoalesceExpr, n_args), + offsetof(PgQuery__CoalesceExpr, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 6, + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceViaIO, location), + offsetof(PgQuery__CoalesceExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__coerce_via_io__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 4, /* field[4] = coerceformat */ - 5, /* field[5] = location */ - 3, /* field[3] = resultcollid */ - 2, /* field[2] = resulttype */ +static const unsigned pg_query__coalesce_expr__field_indices_by_name[] = { + 3, /* field[3] = args */ + 2, /* field[2] = coalescecollid */ + 1, /* field[1] = coalescetype */ + 4, /* field[4] = location */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__coerce_via_io__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__coalesce_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__coerce_via_io__descriptor = +const ProtobufCMessageDescriptor pg_query__coalesce_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CoerceViaIO", - "CoerceViaIO", - "PgQuery__CoerceViaIO", + "pg_query.CoalesceExpr", + "CoalesceExpr", + "PgQuery__CoalesceExpr", "pg_query", - sizeof(PgQuery__CoerceViaIO), - 6, - pg_query__coerce_via_io__field_descriptors, - pg_query__coerce_via_io__field_indices_by_name, - 1, pg_query__coerce_via_io__number_ranges, - (ProtobufCMessageInit) pg_query__coerce_via_io__init, + sizeof(PgQuery__CoalesceExpr), + 5, + pg_query__coalesce_expr__field_descriptors, + pg_query__coalesce_expr__field_indices_by_name, + 1, pg_query__coalesce_expr__number_ranges, + (ProtobufCMessageInit) pg_query__coalesce_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__array_coerce_expr__field_descriptors[8] = +static const ProtobufCFieldDescriptor pg_query__min_max_expr__field_descriptors[7] = { { "xpr", @@ -17605,128 +19420,115 @@ static const ProtobufCFieldDescriptor pg_query__array_coerce_expr__field_descrip PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayCoerceExpr, xpr), + offsetof(PgQuery__MinMaxExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "minmaxtype", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayCoerceExpr, arg), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "elemexpr", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayCoerceExpr, elemexpr), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "resulttype", - 4, - PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayCoerceExpr, resulttype), + offsetof(PgQuery__MinMaxExpr, minmaxtype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resulttypmod", - 5, + "minmaxcollid", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayCoerceExpr, resulttypmod), + offsetof(PgQuery__MinMaxExpr, minmaxcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resultcollid", - 6, + "inputcollid", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayCoerceExpr, resultcollid), + offsetof(PgQuery__MinMaxExpr, inputcollid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coerceformat", - 7, + "op", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayCoerceExpr, coerceformat), - &pg_query__coercion_form__descriptor, + offsetof(PgQuery__MinMaxExpr, op), + &pg_query__min_max_op__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "args", + 6, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__MinMaxExpr, n_args), + offsetof(PgQuery__MinMaxExpr, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 8, + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayCoerceExpr, location), + offsetof(PgQuery__MinMaxExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__array_coerce_expr__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 6, /* field[6] = coerceformat */ - 2, /* field[2] = elemexpr */ - 7, /* field[7] = location */ - 5, /* field[5] = resultcollid */ - 3, /* field[3] = resulttype */ - 4, /* field[4] = resulttypmod */ +static const unsigned pg_query__min_max_expr__field_indices_by_name[] = { + 5, /* field[5] = args */ + 3, /* field[3] = inputcollid */ + 6, /* field[6] = location */ + 2, /* field[2] = minmaxcollid */ + 1, /* field[1] = minmaxtype */ + 4, /* field[4] = op */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__array_coerce_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__min_max_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 8 } + { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__array_coerce_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__min_max_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ArrayCoerceExpr", - "ArrayCoerceExpr", - "PgQuery__ArrayCoerceExpr", + "pg_query.MinMaxExpr", + "MinMaxExpr", + "PgQuery__MinMaxExpr", "pg_query", - sizeof(PgQuery__ArrayCoerceExpr), - 8, - pg_query__array_coerce_expr__field_descriptors, - pg_query__array_coerce_expr__field_indices_by_name, - 1, pg_query__array_coerce_expr__number_ranges, - (ProtobufCMessageInit) pg_query__array_coerce_expr__init, + sizeof(PgQuery__MinMaxExpr), + 7, + pg_query__min_max_expr__field_descriptors, + pg_query__min_max_expr__field_indices_by_name, + 1, pg_query__min_max_expr__number_ranges, + (ProtobufCMessageInit) pg_query__min_max_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__convert_rowtype_expr__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__sqlvalue_function__field_descriptors[5] = { { "xpr", @@ -17734,44 +19536,44 @@ static const ProtobufCFieldDescriptor pg_query__convert_rowtype_expr__field_desc PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ConvertRowtypeExpr, xpr), + offsetof(PgQuery__SQLValueFunction, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "op", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ConvertRowtypeExpr, arg), - &pg_query__node__descriptor, + offsetof(PgQuery__SQLValueFunction, op), + &pg_query__sqlvalue_function_op__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resulttype", + "type", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ConvertRowtypeExpr, resulttype), + offsetof(PgQuery__SQLValueFunction, type), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "convertformat", + "typmod", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ConvertRowtypeExpr, convertformat), - &pg_query__coercion_form__descriptor, + offsetof(PgQuery__SQLValueFunction, typmod), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ @@ -17782,41 +19584,41 @@ static const ProtobufCFieldDescriptor pg_query__convert_rowtype_expr__field_desc PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ConvertRowtypeExpr, location), + offsetof(PgQuery__SQLValueFunction, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__convert_rowtype_expr__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 3, /* field[3] = convertformat */ +static const unsigned pg_query__sqlvalue_function__field_indices_by_name[] = { 4, /* field[4] = location */ - 2, /* field[2] = resulttype */ + 1, /* field[1] = op */ + 2, /* field[2] = type */ + 3, /* field[3] = typmod */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__convert_rowtype_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__sqlvalue_function__number_ranges[1 + 1] = { { 1, 0 }, { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__convert_rowtype_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__sqlvalue_function__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ConvertRowtypeExpr", - "ConvertRowtypeExpr", - "PgQuery__ConvertRowtypeExpr", + "pg_query.SQLValueFunction", + "SQLValueFunction", + "PgQuery__SQLValueFunction", "pg_query", - sizeof(PgQuery__ConvertRowtypeExpr), + sizeof(PgQuery__SQLValueFunction), 5, - pg_query__convert_rowtype_expr__field_descriptors, - pg_query__convert_rowtype_expr__field_indices_by_name, - 1, pg_query__convert_rowtype_expr__number_ranges, - (ProtobufCMessageInit) pg_query__convert_rowtype_expr__init, + pg_query__sqlvalue_function__field_descriptors, + pg_query__sqlvalue_function__field_indices_by_name, + 1, pg_query__sqlvalue_function__number_ranges, + (ProtobufCMessageInit) pg_query__sqlvalue_function__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__collate_expr__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__xml_expr__field_descriptors[11] = { { "xpr", @@ -17824,346 +19626,359 @@ static const ProtobufCFieldDescriptor pg_query__collate_expr__field_descriptors[ PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CollateExpr, xpr), + offsetof(PgQuery__XmlExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "op", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CollateExpr, arg), - &pg_query__node__descriptor, + offsetof(PgQuery__XmlExpr, op), + &pg_query__xml_expr_op__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coll_oid", + "name", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CollateExpr, coll_oid), - NULL, + offsetof(PgQuery__XmlExpr, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "named_args", 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__CollateExpr, location), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__XmlExpr, n_named_args), + offsetof(PgQuery__XmlExpr, named_args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__collate_expr__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 2, /* field[2] = coll_oid */ - 3, /* field[3] = location */ - 0, /* field[0] = xpr */ -}; -static const ProtobufCIntRange pg_query__collate_expr__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 4 } -}; -const ProtobufCMessageDescriptor pg_query__collate_expr__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CollateExpr", - "CollateExpr", - "PgQuery__CollateExpr", - "pg_query", - sizeof(PgQuery__CollateExpr), - 4, - pg_query__collate_expr__field_descriptors, - pg_query__collate_expr__field_indices_by_name, - 1, pg_query__collate_expr__number_ranges, - (ProtobufCMessageInit) pg_query__collate_expr__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__case_expr__field_descriptors[7] = -{ { - "xpr", - 1, - PROTOBUF_C_LABEL_NONE, + "arg_names", + 5, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CaseExpr, xpr), + offsetof(PgQuery__XmlExpr, n_arg_names), + offsetof(PgQuery__XmlExpr, arg_names), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "casetype", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__CaseExpr, casetype), - NULL, + "args", + 6, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__XmlExpr, n_args), + offsetof(PgQuery__XmlExpr, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "casecollid", - 3, + "xmloption", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseExpr, casecollid), - NULL, + offsetof(PgQuery__XmlExpr, xmloption), + &pg_query__xml_option_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", - 4, + "indent", + 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseExpr, arg), - &pg_query__node__descriptor, + offsetof(PgQuery__XmlExpr, indent), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", - 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CaseExpr, n_args), - offsetof(PgQuery__CaseExpr, args), - &pg_query__node__descriptor, + "type", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__XmlExpr, type), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "defresult", - 6, + "typmod", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseExpr, defresult), - &pg_query__node__descriptor, + offsetof(PgQuery__XmlExpr, typmod), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 7, + 11, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseExpr, location), + offsetof(PgQuery__XmlExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__case_expr__field_indices_by_name[] = { - 3, /* field[3] = arg */ - 4, /* field[4] = args */ - 2, /* field[2] = casecollid */ - 1, /* field[1] = casetype */ - 5, /* field[5] = defresult */ - 6, /* field[6] = location */ +static const unsigned pg_query__xml_expr__field_indices_by_name[] = { + 4, /* field[4] = arg_names */ + 5, /* field[5] = args */ + 7, /* field[7] = indent */ + 10, /* field[10] = location */ + 2, /* field[2] = name */ + 3, /* field[3] = named_args */ + 1, /* field[1] = op */ + 8, /* field[8] = type */ + 9, /* field[9] = typmod */ + 6, /* field[6] = xmloption */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__case_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__xml_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 11 } }; -const ProtobufCMessageDescriptor pg_query__case_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__xml_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CaseExpr", - "CaseExpr", - "PgQuery__CaseExpr", + "pg_query.XmlExpr", + "XmlExpr", + "PgQuery__XmlExpr", "pg_query", - sizeof(PgQuery__CaseExpr), - 7, - pg_query__case_expr__field_descriptors, - pg_query__case_expr__field_indices_by_name, - 1, pg_query__case_expr__number_ranges, - (ProtobufCMessageInit) pg_query__case_expr__init, + sizeof(PgQuery__XmlExpr), + 11, + pg_query__xml_expr__field_descriptors, + pg_query__xml_expr__field_indices_by_name, + 1, pg_query__xml_expr__number_ranges, + (ProtobufCMessageInit) pg_query__xml_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__case_when__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__json_format__field_descriptors[3] = { { - "xpr", + "format_type", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseWhen, xpr), - &pg_query__node__descriptor, + offsetof(PgQuery__JsonFormat, format_type), + &pg_query__json_format_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "expr", + "encoding", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CaseWhen, expr), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "result", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseWhen, result), - &pg_query__node__descriptor, + offsetof(PgQuery__JsonFormat, encoding), + &pg_query__json_encoding__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 4, + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseWhen, location), + offsetof(PgQuery__JsonFormat, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__case_when__field_indices_by_name[] = { - 1, /* field[1] = expr */ - 3, /* field[3] = location */ - 2, /* field[2] = result */ - 0, /* field[0] = xpr */ +static const unsigned pg_query__json_format__field_indices_by_name[] = { + 1, /* field[1] = encoding */ + 0, /* field[0] = format_type */ + 2, /* field[2] = location */ }; -static const ProtobufCIntRange pg_query__case_when__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_format__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__case_when__descriptor = +const ProtobufCMessageDescriptor pg_query__json_format__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CaseWhen", - "CaseWhen", - "PgQuery__CaseWhen", + "pg_query.JsonFormat", + "JsonFormat", + "PgQuery__JsonFormat", "pg_query", - sizeof(PgQuery__CaseWhen), - 4, - pg_query__case_when__field_descriptors, - pg_query__case_when__field_indices_by_name, - 1, pg_query__case_when__number_ranges, - (ProtobufCMessageInit) pg_query__case_when__init, + sizeof(PgQuery__JsonFormat), + 3, + pg_query__json_format__field_descriptors, + pg_query__json_format__field_indices_by_name, + 1, pg_query__json_format__number_ranges, + (ProtobufCMessageInit) pg_query__json_format__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__case_test_expr__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__json_returning__field_descriptors[3] = { { - "xpr", + "format", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseTestExpr, xpr), - &pg_query__node__descriptor, + offsetof(PgQuery__JsonReturning, format), + &pg_query__json_format__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_id", + "typid", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseTestExpr, type_id), + offsetof(PgQuery__JsonReturning, typid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_mod", + "typmod", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseTestExpr, type_mod), + offsetof(PgQuery__JsonReturning, typmod), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__json_returning__field_indices_by_name[] = { + 0, /* field[0] = format */ + 1, /* field[1] = typid */ + 2, /* field[2] = typmod */ +}; +static const ProtobufCIntRange pg_query__json_returning__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__json_returning__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.JsonReturning", + "JsonReturning", + "PgQuery__JsonReturning", + "pg_query", + sizeof(PgQuery__JsonReturning), + 3, + pg_query__json_returning__field_descriptors, + pg_query__json_returning__field_indices_by_name, + 1, pg_query__json_returning__number_ranges, + (ProtobufCMessageInit) pg_query__json_returning__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__json_value_expr__field_descriptors[3] = +{ { - "collation", - 4, + "raw_expr", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CaseTestExpr, collation), + offsetof(PgQuery__JsonValueExpr, raw_expr), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "formatted_expr", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonValueExpr, formatted_expr), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "format", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonValueExpr, format), + &pg_query__json_format__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__case_test_expr__field_indices_by_name[] = { - 3, /* field[3] = collation */ - 1, /* field[1] = type_id */ - 2, /* field[2] = type_mod */ - 0, /* field[0] = xpr */ +static const unsigned pg_query__json_value_expr__field_indices_by_name[] = { + 2, /* field[2] = format */ + 1, /* field[1] = formatted_expr */ + 0, /* field[0] = raw_expr */ }; -static const ProtobufCIntRange pg_query__case_test_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_value_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__case_test_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__json_value_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CaseTestExpr", - "CaseTestExpr", - "PgQuery__CaseTestExpr", + "pg_query.JsonValueExpr", + "JsonValueExpr", + "PgQuery__JsonValueExpr", "pg_query", - sizeof(PgQuery__CaseTestExpr), - 4, - pg_query__case_test_expr__field_descriptors, - pg_query__case_test_expr__field_indices_by_name, - 1, pg_query__case_test_expr__number_ranges, - (ProtobufCMessageInit) pg_query__case_test_expr__init, + sizeof(PgQuery__JsonValueExpr), + 3, + pg_query__json_value_expr__field_descriptors, + pg_query__json_value_expr__field_indices_by_name, + 1, pg_query__json_value_expr__number_ranges, + (ProtobufCMessageInit) pg_query__json_value_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__array_expr__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__json_constructor_expr__field_descriptors[9] = { { "xpr", @@ -18171,67 +19986,91 @@ static const ProtobufCFieldDescriptor pg_query__array_expr__field_descriptors[7] PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayExpr, xpr), + offsetof(PgQuery__JsonConstructorExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "array_typeid", + "type", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayExpr, array_typeid), - NULL, + offsetof(PgQuery__JsonConstructorExpr, type), + &pg_query__json_constructor_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "array_collid", + "args", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayExpr, array_collid), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__JsonConstructorExpr, n_args), + offsetof(PgQuery__JsonConstructorExpr, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "element_typeid", + "func", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayExpr, element_typeid), - NULL, + offsetof(PgQuery__JsonConstructorExpr, func), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "elements", + "coercion", 5, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ArrayExpr, n_elements), - offsetof(PgQuery__ArrayExpr, elements), + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonConstructorExpr, coercion), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "multidims", + "returning", 6, PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonConstructorExpr, returning), + &pg_query__json_returning__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "absent_on_null", + 7, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayExpr, multidims), + offsetof(PgQuery__JsonConstructorExpr, absent_on_null), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "unique", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonConstructorExpr, unique), NULL, NULL, 0, /* flags */ @@ -18239,150 +20078,139 @@ static const ProtobufCFieldDescriptor pg_query__array_expr__field_descriptors[7] }, { "location", - 7, + 9, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ArrayExpr, location), + offsetof(PgQuery__JsonConstructorExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__array_expr__field_indices_by_name[] = { - 2, /* field[2] = array_collid */ - 1, /* field[1] = array_typeid */ - 3, /* field[3] = element_typeid */ - 4, /* field[4] = elements */ - 6, /* field[6] = location */ - 5, /* field[5] = multidims */ +static const unsigned pg_query__json_constructor_expr__field_indices_by_name[] = { + 6, /* field[6] = absent_on_null */ + 2, /* field[2] = args */ + 4, /* field[4] = coercion */ + 3, /* field[3] = func */ + 8, /* field[8] = location */ + 5, /* field[5] = returning */ + 1, /* field[1] = type */ + 7, /* field[7] = unique */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__array_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_constructor_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 9 } }; -const ProtobufCMessageDescriptor pg_query__array_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__json_constructor_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ArrayExpr", - "ArrayExpr", - "PgQuery__ArrayExpr", + "pg_query.JsonConstructorExpr", + "JsonConstructorExpr", + "PgQuery__JsonConstructorExpr", "pg_query", - sizeof(PgQuery__ArrayExpr), - 7, - pg_query__array_expr__field_descriptors, - pg_query__array_expr__field_indices_by_name, - 1, pg_query__array_expr__number_ranges, - (ProtobufCMessageInit) pg_query__array_expr__init, + sizeof(PgQuery__JsonConstructorExpr), + 9, + pg_query__json_constructor_expr__field_descriptors, + pg_query__json_constructor_expr__field_indices_by_name, + 1, pg_query__json_constructor_expr__number_ranges, + (ProtobufCMessageInit) pg_query__json_constructor_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__row_expr__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__json_is_predicate__field_descriptors[5] = { { - "xpr", + "expr", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RowExpr, xpr), + offsetof(PgQuery__JsonIsPredicate, expr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", + "format", 2, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RowExpr, n_args), - offsetof(PgQuery__RowExpr, args), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonIsPredicate, format), + &pg_query__json_format__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "row_typeid", + "item_type", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__RowExpr, row_typeid), - NULL, + offsetof(PgQuery__JsonIsPredicate, item_type), + &pg_query__json_value_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "row_format", + "unique_keys", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RowExpr, row_format), - &pg_query__coercion_form__descriptor, + offsetof(PgQuery__JsonIsPredicate, unique_keys), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "colnames", - 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RowExpr, n_colnames), - offsetof(PgQuery__RowExpr, colnames), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 6, + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RowExpr, location), + offsetof(PgQuery__JsonIsPredicate, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__row_expr__field_indices_by_name[] = { - 1, /* field[1] = args */ - 4, /* field[4] = colnames */ - 5, /* field[5] = location */ - 3, /* field[3] = row_format */ - 2, /* field[2] = row_typeid */ - 0, /* field[0] = xpr */ +static const unsigned pg_query__json_is_predicate__field_indices_by_name[] = { + 0, /* field[0] = expr */ + 1, /* field[1] = format */ + 2, /* field[2] = item_type */ + 4, /* field[4] = location */ + 3, /* field[3] = unique_keys */ }; -static const ProtobufCIntRange pg_query__row_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_is_predicate__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__row_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__json_is_predicate__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RowExpr", - "RowExpr", - "PgQuery__RowExpr", + "pg_query.JsonIsPredicate", + "JsonIsPredicate", + "PgQuery__JsonIsPredicate", "pg_query", - sizeof(PgQuery__RowExpr), - 6, - pg_query__row_expr__field_descriptors, - pg_query__row_expr__field_indices_by_name, - 1, pg_query__row_expr__number_ranges, - (ProtobufCMessageInit) pg_query__row_expr__init, + sizeof(PgQuery__JsonIsPredicate), + 5, + pg_query__json_is_predicate__field_descriptors, + pg_query__json_is_predicate__field_indices_by_name, + 1, pg_query__json_is_predicate__number_ranges, + (ProtobufCMessageInit) pg_query__json_is_predicate__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__row_compare_expr__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__null_test__field_descriptors[5] = { { "xpr", @@ -18390,115 +20218,89 @@ static const ProtobufCFieldDescriptor pg_query__row_compare_expr__field_descript PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RowCompareExpr, xpr), + offsetof(PgQuery__NullTest, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rctype", + "arg", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RowCompareExpr, rctype), - &pg_query__row_compare_type__descriptor, + offsetof(PgQuery__NullTest, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opnos", + "nulltesttype", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RowCompareExpr, n_opnos), - offsetof(PgQuery__RowCompareExpr, opnos), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__NullTest, nulltesttype), + &pg_query__null_test_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opfamilies", + "argisrow", 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RowCompareExpr, n_opfamilies), - offsetof(PgQuery__RowCompareExpr, opfamilies), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__NullTest, argisrow), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "inputcollids", - 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RowCompareExpr, n_inputcollids), - offsetof(PgQuery__RowCompareExpr, inputcollids), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "largs", - 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RowCompareExpr, n_largs), - offsetof(PgQuery__RowCompareExpr, largs), - &pg_query__node__descriptor, + "location", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__NullTest, location), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "rargs", - 7, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RowCompareExpr, n_rargs), - offsetof(PgQuery__RowCompareExpr, rargs), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__row_compare_expr__field_indices_by_name[] = { - 4, /* field[4] = inputcollids */ - 5, /* field[5] = largs */ - 3, /* field[3] = opfamilies */ - 2, /* field[2] = opnos */ - 6, /* field[6] = rargs */ - 1, /* field[1] = rctype */ +static const unsigned pg_query__null_test__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 3, /* field[3] = argisrow */ + 4, /* field[4] = location */ + 2, /* field[2] = nulltesttype */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__row_compare_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__null_test__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__row_compare_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__null_test__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RowCompareExpr", - "RowCompareExpr", - "PgQuery__RowCompareExpr", + "pg_query.NullTest", + "NullTest", + "PgQuery__NullTest", "pg_query", - sizeof(PgQuery__RowCompareExpr), - 7, - pg_query__row_compare_expr__field_descriptors, - pg_query__row_compare_expr__field_indices_by_name, - 1, pg_query__row_compare_expr__number_ranges, - (ProtobufCMessageInit) pg_query__row_compare_expr__init, + sizeof(PgQuery__NullTest), + 5, + pg_query__null_test__field_descriptors, + pg_query__null_test__field_indices_by_name, + 1, pg_query__null_test__number_ranges, + (ProtobufCMessageInit) pg_query__null_test__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__coalesce_expr__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__boolean_test__field_descriptors[4] = { { "xpr", @@ -18506,89 +20308,76 @@ static const ProtobufCFieldDescriptor pg_query__coalesce_expr__field_descriptors PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CoalesceExpr, xpr), + offsetof(PgQuery__BooleanTest, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coalescetype", + "arg", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CoalesceExpr, coalescetype), - NULL, + offsetof(PgQuery__BooleanTest, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coalescecollid", + "booltesttype", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CoalesceExpr, coalescecollid), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CoalesceExpr, n_args), - offsetof(PgQuery__CoalesceExpr, args), - &pg_query__node__descriptor, + offsetof(PgQuery__BooleanTest, booltesttype), + &pg_query__bool_test_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "location", - 5, + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CoalesceExpr, location), + offsetof(PgQuery__BooleanTest, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__coalesce_expr__field_indices_by_name[] = { - 3, /* field[3] = args */ - 2, /* field[2] = coalescecollid */ - 1, /* field[1] = coalescetype */ - 4, /* field[4] = location */ +static const unsigned pg_query__boolean_test__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 2, /* field[2] = booltesttype */ + 3, /* field[3] = location */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__coalesce_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__boolean_test__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__coalesce_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__boolean_test__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CoalesceExpr", - "CoalesceExpr", - "PgQuery__CoalesceExpr", + "pg_query.BooleanTest", + "BooleanTest", + "PgQuery__BooleanTest", "pg_query", - sizeof(PgQuery__CoalesceExpr), - 5, - pg_query__coalesce_expr__field_descriptors, - pg_query__coalesce_expr__field_indices_by_name, - 1, pg_query__coalesce_expr__number_ranges, - (ProtobufCMessageInit) pg_query__coalesce_expr__init, + sizeof(PgQuery__BooleanTest), + 4, + pg_query__boolean_test__field_descriptors, + pg_query__boolean_test__field_indices_by_name, + 1, pg_query__boolean_test__number_ranges, + (ProtobufCMessageInit) pg_query__boolean_test__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__min_max_expr__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__coerce_to_domain__field_descriptors[7] = { { "xpr", @@ -18596,68 +20385,68 @@ static const ProtobufCFieldDescriptor pg_query__min_max_expr__field_descriptors[ PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__MinMaxExpr, xpr), + offsetof(PgQuery__CoerceToDomain, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "minmaxtype", + "arg", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__MinMaxExpr, minmaxtype), - NULL, + offsetof(PgQuery__CoerceToDomain, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "minmaxcollid", + "resulttype", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__MinMaxExpr, minmaxcollid), + offsetof(PgQuery__CoerceToDomain, resulttype), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inputcollid", + "resulttypmod", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__MinMaxExpr, inputcollid), + offsetof(PgQuery__CoerceToDomain, resulttypmod), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "op", + "resultcollid", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__MinMaxExpr, op), - &pg_query__min_max_op__descriptor, + offsetof(PgQuery__CoerceToDomain, resultcollid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", + "coercionformat", 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__MinMaxExpr, n_args), - offsetof(PgQuery__MinMaxExpr, args), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__CoerceToDomain, coercionformat), + &pg_query__coercion_form__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ @@ -18668,43 +20457,43 @@ static const ProtobufCFieldDescriptor pg_query__min_max_expr__field_descriptors[ PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__MinMaxExpr, location), + offsetof(PgQuery__CoerceToDomain, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__min_max_expr__field_indices_by_name[] = { - 5, /* field[5] = args */ - 3, /* field[3] = inputcollid */ +static const unsigned pg_query__coerce_to_domain__field_indices_by_name[] = { + 1, /* field[1] = arg */ + 5, /* field[5] = coercionformat */ 6, /* field[6] = location */ - 2, /* field[2] = minmaxcollid */ - 1, /* field[1] = minmaxtype */ - 4, /* field[4] = op */ + 4, /* field[4] = resultcollid */ + 2, /* field[2] = resulttype */ + 3, /* field[3] = resulttypmod */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__min_max_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__coerce_to_domain__number_ranges[1 + 1] = { { 1, 0 }, { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__min_max_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__coerce_to_domain__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.MinMaxExpr", - "MinMaxExpr", - "PgQuery__MinMaxExpr", + "pg_query.CoerceToDomain", + "CoerceToDomain", + "PgQuery__CoerceToDomain", "pg_query", - sizeof(PgQuery__MinMaxExpr), + sizeof(PgQuery__CoerceToDomain), 7, - pg_query__min_max_expr__field_descriptors, - pg_query__min_max_expr__field_indices_by_name, - 1, pg_query__min_max_expr__number_ranges, - (ProtobufCMessageInit) pg_query__min_max_expr__init, + pg_query__coerce_to_domain__field_descriptors, + pg_query__coerce_to_domain__field_indices_by_name, + 1, pg_query__coerce_to_domain__number_ranges, + (ProtobufCMessageInit) pg_query__coerce_to_domain__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__sqlvalue_function__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__coerce_to_domain_value__field_descriptors[5] = { { "xpr", @@ -18712,43 +20501,43 @@ static const ProtobufCFieldDescriptor pg_query__sqlvalue_function__field_descrip PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SQLValueFunction, xpr), + offsetof(PgQuery__CoerceToDomainValue, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "op", + "type_id", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SQLValueFunction, op), - &pg_query__sqlvalue_function_op__descriptor, + offsetof(PgQuery__CoerceToDomainValue, type_id), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type", + "type_mod", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SQLValueFunction, type), + offsetof(PgQuery__CoerceToDomainValue, type_mod), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "typmod", + "collation", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SQLValueFunction, typmod), + offsetof(PgQuery__CoerceToDomainValue, collation), NULL, NULL, 0, /* flags */ @@ -18760,41 +20549,41 @@ static const ProtobufCFieldDescriptor pg_query__sqlvalue_function__field_descrip PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SQLValueFunction, location), + offsetof(PgQuery__CoerceToDomainValue, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__sqlvalue_function__field_indices_by_name[] = { +static const unsigned pg_query__coerce_to_domain_value__field_indices_by_name[] = { + 3, /* field[3] = collation */ 4, /* field[4] = location */ - 1, /* field[1] = op */ - 2, /* field[2] = type */ - 3, /* field[3] = typmod */ + 1, /* field[1] = type_id */ + 2, /* field[2] = type_mod */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__sqlvalue_function__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__coerce_to_domain_value__number_ranges[1 + 1] = { { 1, 0 }, { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__sqlvalue_function__descriptor = +const ProtobufCMessageDescriptor pg_query__coerce_to_domain_value__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SQLValueFunction", - "SQLValueFunction", - "PgQuery__SQLValueFunction", + "pg_query.CoerceToDomainValue", + "CoerceToDomainValue", + "PgQuery__CoerceToDomainValue", "pg_query", - sizeof(PgQuery__SQLValueFunction), + sizeof(PgQuery__CoerceToDomainValue), 5, - pg_query__sqlvalue_function__field_descriptors, - pg_query__sqlvalue_function__field_indices_by_name, - 1, pg_query__sqlvalue_function__number_ranges, - (ProtobufCMessageInit) pg_query__sqlvalue_function__init, + pg_query__coerce_to_domain_value__field_descriptors, + pg_query__coerce_to_domain_value__field_indices_by_name, + 1, pg_query__coerce_to_domain_value__number_ranges, + (ProtobufCMessageInit) pg_query__coerce_to_domain_value__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__xml_expr__field_descriptors[10] = +static const ProtobufCFieldDescriptor pg_query__set_to_default__field_descriptors[5] = { { "xpr", @@ -18802,154 +20591,166 @@ static const ProtobufCFieldDescriptor pg_query__xml_expr__field_descriptors[10] PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__XmlExpr, xpr), + offsetof(PgQuery__SetToDefault, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "op", + "type_id", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__XmlExpr, op), - &pg_query__xml_expr_op__descriptor, + offsetof(PgQuery__SetToDefault, type_id), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "name", + "type_mod", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__XmlExpr, name), + offsetof(PgQuery__SetToDefault, type_mod), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "named_args", + "collation", 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__XmlExpr, n_named_args), - offsetof(PgQuery__XmlExpr, named_args), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__SetToDefault, collation), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg_names", + "location", 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__XmlExpr, n_arg_names), - offsetof(PgQuery__XmlExpr, arg_names), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__SetToDefault, location), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__XmlExpr, n_args), - offsetof(PgQuery__XmlExpr, args), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__set_to_default__field_indices_by_name[] = { + 3, /* field[3] = collation */ + 4, /* field[4] = location */ + 1, /* field[1] = type_id */ + 2, /* field[2] = type_mod */ + 0, /* field[0] = xpr */ +}; +static const ProtobufCIntRange pg_query__set_to_default__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor pg_query__set_to_default__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.SetToDefault", + "SetToDefault", + "PgQuery__SetToDefault", + "pg_query", + sizeof(PgQuery__SetToDefault), + 5, + pg_query__set_to_default__field_descriptors, + pg_query__set_to_default__field_indices_by_name, + 1, pg_query__set_to_default__number_ranges, + (ProtobufCMessageInit) pg_query__set_to_default__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__current_of_expr__field_descriptors[4] = +{ { - "xmloption", - 7, + "xpr", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__XmlExpr, xmloption), - &pg_query__xml_option_type__descriptor, + offsetof(PgQuery__CurrentOfExpr, xpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type", - 8, + "cvarno", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__XmlExpr, type), + offsetof(PgQuery__CurrentOfExpr, cvarno), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "typmod", - 9, + "cursor_name", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__XmlExpr, typmod), - NULL, + offsetof(PgQuery__CurrentOfExpr, cursor_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 10, + "cursor_param", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__XmlExpr, location), + offsetof(PgQuery__CurrentOfExpr, cursor_param), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__xml_expr__field_indices_by_name[] = { - 4, /* field[4] = arg_names */ - 5, /* field[5] = args */ - 9, /* field[9] = location */ - 2, /* field[2] = name */ - 3, /* field[3] = named_args */ - 1, /* field[1] = op */ - 7, /* field[7] = type */ - 8, /* field[8] = typmod */ - 6, /* field[6] = xmloption */ +static const unsigned pg_query__current_of_expr__field_indices_by_name[] = { + 2, /* field[2] = cursor_name */ + 3, /* field[3] = cursor_param */ + 1, /* field[1] = cvarno */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__xml_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__current_of_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 10 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__xml_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__current_of_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.XmlExpr", - "XmlExpr", - "PgQuery__XmlExpr", + "pg_query.CurrentOfExpr", + "CurrentOfExpr", + "PgQuery__CurrentOfExpr", "pg_query", - sizeof(PgQuery__XmlExpr), - 10, - pg_query__xml_expr__field_descriptors, - pg_query__xml_expr__field_indices_by_name, - 1, pg_query__xml_expr__number_ranges, - (ProtobufCMessageInit) pg_query__xml_expr__init, + sizeof(PgQuery__CurrentOfExpr), + 4, + pg_query__current_of_expr__field_descriptors, + pg_query__current_of_expr__field_indices_by_name, + 1, pg_query__current_of_expr__number_ranges, + (ProtobufCMessageInit) pg_query__current_of_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__null_test__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__next_value_expr__field_descriptors[3] = { { "xpr", @@ -18957,89 +20758,63 @@ static const ProtobufCFieldDescriptor pg_query__null_test__field_descriptors[5] PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__NullTest, xpr), + offsetof(PgQuery__NextValueExpr, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "seqid", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__NullTest, arg), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "nulltesttype", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__NullTest, nulltesttype), - &pg_query__null_test_type__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "argisrow", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__NullTest, argisrow), + offsetof(PgQuery__NextValueExpr, seqid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 5, + "type_id", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__NullTest, location), + offsetof(PgQuery__NextValueExpr, type_id), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__null_test__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 3, /* field[3] = argisrow */ - 4, /* field[4] = location */ - 2, /* field[2] = nulltesttype */ +static const unsigned pg_query__next_value_expr__field_indices_by_name[] = { + 1, /* field[1] = seqid */ + 2, /* field[2] = type_id */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__null_test__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__next_value_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__null_test__descriptor = +const ProtobufCMessageDescriptor pg_query__next_value_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.NullTest", - "NullTest", - "PgQuery__NullTest", + "pg_query.NextValueExpr", + "NextValueExpr", + "PgQuery__NextValueExpr", "pg_query", - sizeof(PgQuery__NullTest), - 5, - pg_query__null_test__field_descriptors, - pg_query__null_test__field_indices_by_name, - 1, pg_query__null_test__number_ranges, - (ProtobufCMessageInit) pg_query__null_test__init, + sizeof(PgQuery__NextValueExpr), + 3, + pg_query__next_value_expr__field_descriptors, + pg_query__next_value_expr__field_indices_by_name, + 1, pg_query__next_value_expr__number_ranges, + (ProtobufCMessageInit) pg_query__next_value_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__boolean_test__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__inference_elem__field_descriptors[4] = { { "xpr", @@ -19047,76 +20822,76 @@ static const ProtobufCFieldDescriptor pg_query__boolean_test__field_descriptors[ PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__BooleanTest, xpr), + offsetof(PgQuery__InferenceElem, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "expr", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__BooleanTest, arg), + offsetof(PgQuery__InferenceElem, expr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "booltesttype", + "infercollid", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__BooleanTest, booltesttype), - &pg_query__bool_test_type__descriptor, + offsetof(PgQuery__InferenceElem, infercollid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "inferopclass", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__BooleanTest, location), + offsetof(PgQuery__InferenceElem, inferopclass), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__boolean_test__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 2, /* field[2] = booltesttype */ - 3, /* field[3] = location */ +static const unsigned pg_query__inference_elem__field_indices_by_name[] = { + 1, /* field[1] = expr */ + 2, /* field[2] = infercollid */ + 3, /* field[3] = inferopclass */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__boolean_test__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__inference_elem__number_ranges[1 + 1] = { { 1, 0 }, { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__boolean_test__descriptor = +const ProtobufCMessageDescriptor pg_query__inference_elem__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.BooleanTest", - "BooleanTest", - "PgQuery__BooleanTest", + "pg_query.InferenceElem", + "InferenceElem", + "PgQuery__InferenceElem", "pg_query", - sizeof(PgQuery__BooleanTest), + sizeof(PgQuery__InferenceElem), 4, - pg_query__boolean_test__field_descriptors, - pg_query__boolean_test__field_indices_by_name, - 1, pg_query__boolean_test__number_ranges, - (ProtobufCMessageInit) pg_query__boolean_test__init, + pg_query__inference_elem__field_descriptors, + pg_query__inference_elem__field_indices_by_name, + 1, pg_query__inference_elem__number_ranges, + (ProtobufCMessageInit) pg_query__inference_elem__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__coerce_to_domain__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__target_entry__field_descriptors[8] = { { "xpr", @@ -19124,2610 +20899,2715 @@ static const ProtobufCFieldDescriptor pg_query__coerce_to_domain__field_descript PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomain, xpr), + offsetof(PgQuery__TargetEntry, xpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", + "expr", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomain, arg), + offsetof(PgQuery__TargetEntry, expr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resulttype", + "resno", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomain, resulttype), + offsetof(PgQuery__TargetEntry, resno), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resulttypmod", + "resname", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomain, resulttypmod), - NULL, + offsetof(PgQuery__TargetEntry, resname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resultcollid", + "ressortgroupref", 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomain, resultcollid), + offsetof(PgQuery__TargetEntry, ressortgroupref), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coercionformat", + "resorigtbl", 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomain, coercionformat), - &pg_query__coercion_form__descriptor, + offsetof(PgQuery__TargetEntry, resorigtbl), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "resorigcol", 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomain, location), + offsetof(PgQuery__TargetEntry, resorigcol), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resjunk", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__TargetEntry, resjunk), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__coerce_to_domain__field_indices_by_name[] = { - 1, /* field[1] = arg */ - 5, /* field[5] = coercionformat */ - 6, /* field[6] = location */ - 4, /* field[4] = resultcollid */ - 2, /* field[2] = resulttype */ - 3, /* field[3] = resulttypmod */ +static const unsigned pg_query__target_entry__field_indices_by_name[] = { + 1, /* field[1] = expr */ + 7, /* field[7] = resjunk */ + 3, /* field[3] = resname */ + 2, /* field[2] = resno */ + 6, /* field[6] = resorigcol */ + 5, /* field[5] = resorigtbl */ + 4, /* field[4] = ressortgroupref */ 0, /* field[0] = xpr */ }; -static const ProtobufCIntRange pg_query__coerce_to_domain__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__target_entry__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__coerce_to_domain__descriptor = +const ProtobufCMessageDescriptor pg_query__target_entry__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CoerceToDomain", - "CoerceToDomain", - "PgQuery__CoerceToDomain", + "pg_query.TargetEntry", + "TargetEntry", + "PgQuery__TargetEntry", "pg_query", - sizeof(PgQuery__CoerceToDomain), - 7, - pg_query__coerce_to_domain__field_descriptors, - pg_query__coerce_to_domain__field_indices_by_name, - 1, pg_query__coerce_to_domain__number_ranges, - (ProtobufCMessageInit) pg_query__coerce_to_domain__init, + sizeof(PgQuery__TargetEntry), + 8, + pg_query__target_entry__field_descriptors, + pg_query__target_entry__field_indices_by_name, + 1, pg_query__target_entry__number_ranges, + (ProtobufCMessageInit) pg_query__target_entry__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__coerce_to_domain_value__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__range_tbl_ref__field_descriptors[1] = { { - "xpr", + "rtindex", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomainValue, xpr), - &pg_query__node__descriptor, + offsetof(PgQuery__RangeTblRef, rtindex), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__range_tbl_ref__field_indices_by_name[] = { + 0, /* field[0] = rtindex */ +}; +static const ProtobufCIntRange pg_query__range_tbl_ref__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__range_tbl_ref__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.RangeTblRef", + "RangeTblRef", + "PgQuery__RangeTblRef", + "pg_query", + sizeof(PgQuery__RangeTblRef), + 1, + pg_query__range_tbl_ref__field_descriptors, + pg_query__range_tbl_ref__field_indices_by_name, + 1, pg_query__range_tbl_ref__number_ranges, + (ProtobufCMessageInit) pg_query__range_tbl_ref__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__join_expr__field_descriptors[9] = +{ + { + "jointype", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__JoinExpr, jointype), + &pg_query__join_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_id", + "is_natural", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomainValue, type_id), + offsetof(PgQuery__JoinExpr, is_natural), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_mod", + "larg", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomainValue, type_mod), - NULL, + offsetof(PgQuery__JoinExpr, larg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "collation", + "rarg", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomainValue, collation), - NULL, + offsetof(PgQuery__JoinExpr, rarg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "using_clause", 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__JoinExpr, n_using_clause), + offsetof(PgQuery__JoinExpr, using_clause), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "join_using_alias", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CoerceToDomainValue, location), - NULL, + offsetof(PgQuery__JoinExpr, join_using_alias), + &pg_query__alias__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__coerce_to_domain_value__field_indices_by_name[] = { - 3, /* field[3] = collation */ - 4, /* field[4] = location */ - 1, /* field[1] = type_id */ - 2, /* field[2] = type_mod */ - 0, /* field[0] = xpr */ -}; -static const ProtobufCIntRange pg_query__coerce_to_domain_value__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 5 } -}; -const ProtobufCMessageDescriptor pg_query__coerce_to_domain_value__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CoerceToDomainValue", - "CoerceToDomainValue", - "PgQuery__CoerceToDomainValue", - "pg_query", - sizeof(PgQuery__CoerceToDomainValue), - 5, - pg_query__coerce_to_domain_value__field_descriptors, - pg_query__coerce_to_domain_value__field_indices_by_name, - 1, pg_query__coerce_to_domain_value__number_ranges, - (ProtobufCMessageInit) pg_query__coerce_to_domain_value__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__set_to_default__field_descriptors[5] = -{ { - "xpr", - 1, + "quals", + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SetToDefault, xpr), + offsetof(PgQuery__JoinExpr, quals), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_id", - 2, + "alias", + 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SetToDefault, type_id), - NULL, + offsetof(PgQuery__JoinExpr, alias), + &pg_query__alias__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_mod", - 3, + "rtindex", + 9, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SetToDefault, type_mod), + offsetof(PgQuery__JoinExpr, rtindex), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__join_expr__field_indices_by_name[] = { + 7, /* field[7] = alias */ + 1, /* field[1] = is_natural */ + 5, /* field[5] = join_using_alias */ + 0, /* field[0] = jointype */ + 2, /* field[2] = larg */ + 6, /* field[6] = quals */ + 3, /* field[3] = rarg */ + 8, /* field[8] = rtindex */ + 4, /* field[4] = using_clause */ +}; +static const ProtobufCIntRange pg_query__join_expr__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 9 } +}; +const ProtobufCMessageDescriptor pg_query__join_expr__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.JoinExpr", + "JoinExpr", + "PgQuery__JoinExpr", + "pg_query", + sizeof(PgQuery__JoinExpr), + 9, + pg_query__join_expr__field_descriptors, + pg_query__join_expr__field_indices_by_name, + 1, pg_query__join_expr__number_ranges, + (ProtobufCMessageInit) pg_query__join_expr__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__from_expr__field_descriptors[2] = +{ { - "collation", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__SetToDefault, collation), - NULL, + "fromlist", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__FromExpr, n_fromlist), + offsetof(PgQuery__FromExpr, fromlist), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 5, + "quals", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SetToDefault, location), - NULL, + offsetof(PgQuery__FromExpr, quals), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__set_to_default__field_indices_by_name[] = { - 3, /* field[3] = collation */ - 4, /* field[4] = location */ - 1, /* field[1] = type_id */ - 2, /* field[2] = type_mod */ - 0, /* field[0] = xpr */ +static const unsigned pg_query__from_expr__field_indices_by_name[] = { + 0, /* field[0] = fromlist */ + 1, /* field[1] = quals */ }; -static const ProtobufCIntRange pg_query__set_to_default__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__from_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__set_to_default__descriptor = +const ProtobufCMessageDescriptor pg_query__from_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SetToDefault", - "SetToDefault", - "PgQuery__SetToDefault", + "pg_query.FromExpr", + "FromExpr", + "PgQuery__FromExpr", "pg_query", - sizeof(PgQuery__SetToDefault), - 5, - pg_query__set_to_default__field_descriptors, - pg_query__set_to_default__field_indices_by_name, - 1, pg_query__set_to_default__number_ranges, - (ProtobufCMessageInit) pg_query__set_to_default__init, + sizeof(PgQuery__FromExpr), + 2, + pg_query__from_expr__field_descriptors, + pg_query__from_expr__field_indices_by_name, + 1, pg_query__from_expr__number_ranges, + (ProtobufCMessageInit) pg_query__from_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__current_of_expr__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__on_conflict_expr__field_descriptors[8] = { { - "xpr", + "action", 1, PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__OnConflictExpr, action), + &pg_query__on_conflict_action__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "arbiter_elems", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__OnConflictExpr, n_arbiter_elems), + offsetof(PgQuery__OnConflictExpr, arbiter_elems), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "arbiter_where", + 3, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CurrentOfExpr, xpr), + offsetof(PgQuery__OnConflictExpr, arbiter_where), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cvarno", - 2, + "constraint", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CurrentOfExpr, cvarno), + offsetof(PgQuery__OnConflictExpr, constraint), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cursor_name", - 3, + "on_conflict_set", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__OnConflictExpr, n_on_conflict_set), + offsetof(PgQuery__OnConflictExpr, on_conflict_set), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "on_conflict_where", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CurrentOfExpr, cursor_name), + offsetof(PgQuery__OnConflictExpr, on_conflict_where), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cursor_param", - 4, + "excl_rel_index", + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CurrentOfExpr, cursor_param), + offsetof(PgQuery__OnConflictExpr, excl_rel_index), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, + { + "excl_rel_tlist", + 8, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__OnConflictExpr, n_excl_rel_tlist), + offsetof(PgQuery__OnConflictExpr, excl_rel_tlist), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, }; -static const unsigned pg_query__current_of_expr__field_indices_by_name[] = { - 2, /* field[2] = cursor_name */ - 3, /* field[3] = cursor_param */ - 1, /* field[1] = cvarno */ - 0, /* field[0] = xpr */ +static const unsigned pg_query__on_conflict_expr__field_indices_by_name[] = { + 0, /* field[0] = action */ + 1, /* field[1] = arbiter_elems */ + 2, /* field[2] = arbiter_where */ + 3, /* field[3] = constraint */ + 6, /* field[6] = excl_rel_index */ + 7, /* field[7] = excl_rel_tlist */ + 4, /* field[4] = on_conflict_set */ + 5, /* field[5] = on_conflict_where */ }; -static const ProtobufCIntRange pg_query__current_of_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__on_conflict_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__current_of_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__on_conflict_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CurrentOfExpr", - "CurrentOfExpr", - "PgQuery__CurrentOfExpr", - "pg_query", - sizeof(PgQuery__CurrentOfExpr), - 4, - pg_query__current_of_expr__field_descriptors, - pg_query__current_of_expr__field_indices_by_name, - 1, pg_query__current_of_expr__number_ranges, - (ProtobufCMessageInit) pg_query__current_of_expr__init, + "pg_query.OnConflictExpr", + "OnConflictExpr", + "PgQuery__OnConflictExpr", + "pg_query", + sizeof(PgQuery__OnConflictExpr), + 8, + pg_query__on_conflict_expr__field_descriptors, + pg_query__on_conflict_expr__field_indices_by_name, + 1, pg_query__on_conflict_expr__number_ranges, + (ProtobufCMessageInit) pg_query__on_conflict_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__next_value_expr__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__query__field_descriptors[41] = { { - "xpr", + "command_type", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__NextValueExpr, xpr), - &pg_query__node__descriptor, + offsetof(PgQuery__Query, command_type), + &pg_query__cmd_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "seqid", + "query_source", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__NextValueExpr, seqid), - NULL, + offsetof(PgQuery__Query, query_source), + &pg_query__query_source__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_id", + "can_set_tag", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__NextValueExpr, type_id), + offsetof(PgQuery__Query, can_set_tag), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__next_value_expr__field_indices_by_name[] = { - 1, /* field[1] = seqid */ - 2, /* field[2] = type_id */ - 0, /* field[0] = xpr */ -}; -static const ProtobufCIntRange pg_query__next_value_expr__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__next_value_expr__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.NextValueExpr", - "NextValueExpr", - "PgQuery__NextValueExpr", - "pg_query", - sizeof(PgQuery__NextValueExpr), - 3, - pg_query__next_value_expr__field_descriptors, - pg_query__next_value_expr__field_indices_by_name, - 1, pg_query__next_value_expr__number_ranges, - (ProtobufCMessageInit) pg_query__next_value_expr__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__inference_elem__field_descriptors[4] = -{ { - "xpr", - 1, + "utility_stmt", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__InferenceElem, xpr), + offsetof(PgQuery__Query, utility_stmt), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "expr", - 2, + "result_relation", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__InferenceElem, expr), - &pg_query__node__descriptor, + offsetof(PgQuery__Query, result_relation), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "infercollid", - 3, + "has_aggs", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__InferenceElem, infercollid), + offsetof(PgQuery__Query, has_aggs), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inferopclass", - 4, + "has_window_funcs", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__InferenceElem, inferopclass), + offsetof(PgQuery__Query, has_window_funcs), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__inference_elem__field_indices_by_name[] = { - 1, /* field[1] = expr */ - 2, /* field[2] = infercollid */ - 3, /* field[3] = inferopclass */ - 0, /* field[0] = xpr */ -}; -static const ProtobufCIntRange pg_query__inference_elem__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 4 } -}; -const ProtobufCMessageDescriptor pg_query__inference_elem__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.InferenceElem", - "InferenceElem", - "PgQuery__InferenceElem", - "pg_query", - sizeof(PgQuery__InferenceElem), - 4, - pg_query__inference_elem__field_descriptors, - pg_query__inference_elem__field_indices_by_name, - 1, pg_query__inference_elem__number_ranges, - (ProtobufCMessageInit) pg_query__inference_elem__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__target_entry__field_descriptors[8] = -{ { - "xpr", - 1, + "has_target_srfs", + 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TargetEntry, xpr), - &pg_query__node__descriptor, + offsetof(PgQuery__Query, has_target_srfs), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "expr", - 2, + "has_sub_links", + 9, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TargetEntry, expr), - &pg_query__node__descriptor, + offsetof(PgQuery__Query, has_sub_links), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resno", - 3, + "has_distinct_on", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TargetEntry, resno), + offsetof(PgQuery__Query, has_distinct_on), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resname", - 4, + "has_recursive", + 11, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TargetEntry, resname), + offsetof(PgQuery__Query, has_recursive), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ressortgroupref", - 5, + "has_modifying_cte", + 12, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TargetEntry, ressortgroupref), + offsetof(PgQuery__Query, has_modifying_cte), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resorigtbl", - 6, + "has_for_update", + 13, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TargetEntry, resorigtbl), + offsetof(PgQuery__Query, has_for_update), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resorigcol", - 7, + "has_row_security", + 14, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TargetEntry, resorigcol), + offsetof(PgQuery__Query, has_row_security), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "resjunk", - 8, + "is_return", + 15, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TargetEntry, resjunk), + offsetof(PgQuery__Query, is_return), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__target_entry__field_indices_by_name[] = { - 1, /* field[1] = expr */ - 7, /* field[7] = resjunk */ - 3, /* field[3] = resname */ - 2, /* field[2] = resno */ - 6, /* field[6] = resorigcol */ - 5, /* field[5] = resorigtbl */ - 4, /* field[4] = ressortgroupref */ - 0, /* field[0] = xpr */ -}; -static const ProtobufCIntRange pg_query__target_entry__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 8 } -}; -const ProtobufCMessageDescriptor pg_query__target_entry__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.TargetEntry", - "TargetEntry", - "PgQuery__TargetEntry", - "pg_query", - sizeof(PgQuery__TargetEntry), - 8, - pg_query__target_entry__field_descriptors, - pg_query__target_entry__field_indices_by_name, - 1, pg_query__target_entry__number_ranges, - (ProtobufCMessageInit) pg_query__target_entry__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__range_tbl_ref__field_descriptors[1] = -{ { - "rtindex", - 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblRef, rtindex), + "cte_list", + 16, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Query, n_cte_list), + offsetof(PgQuery__Query, cte_list), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rtable", + 17, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Query, n_rtable), + offsetof(PgQuery__Query, rtable), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__range_tbl_ref__field_indices_by_name[] = { - 0, /* field[0] = rtindex */ -}; -static const ProtobufCIntRange pg_query__range_tbl_ref__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 1 } -}; -const ProtobufCMessageDescriptor pg_query__range_tbl_ref__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RangeTblRef", - "RangeTblRef", - "PgQuery__RangeTblRef", - "pg_query", - sizeof(PgQuery__RangeTblRef), - 1, - pg_query__range_tbl_ref__field_descriptors, - pg_query__range_tbl_ref__field_indices_by_name, - 1, pg_query__range_tbl_ref__number_ranges, - (ProtobufCMessageInit) pg_query__range_tbl_ref__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__join_expr__field_descriptors[9] = -{ { - "jointype", - 1, + "rteperminfos", + 18, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Query, n_rteperminfos), + offsetof(PgQuery__Query, rteperminfos), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "jointree", + 19, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__JoinExpr, jointype), - &pg_query__join_type__descriptor, + offsetof(PgQuery__Query, jointree), + &pg_query__from_expr__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_natural", - 2, + "merge_action_list", + 20, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Query, n_merge_action_list), + offsetof(PgQuery__Query, merge_action_list), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "merge_use_outer_join", + 21, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__JoinExpr, is_natural), + offsetof(PgQuery__Query, merge_use_outer_join), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "larg", - 3, - PROTOBUF_C_LABEL_NONE, + "target_list", + 22, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__JoinExpr, larg), + offsetof(PgQuery__Query, n_target_list), + offsetof(PgQuery__Query, target_list), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rarg", - 4, + "override", + 23, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__Query, override), + &pg_query__overriding_kind__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "on_conflict", + 24, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__JoinExpr, rarg), + offsetof(PgQuery__Query, on_conflict), + &pg_query__on_conflict_expr__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "returning_list", + 25, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Query, n_returning_list), + offsetof(PgQuery__Query, returning_list), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "using_clause", - 5, + "group_clause", + 26, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__JoinExpr, n_using_clause), - offsetof(PgQuery__JoinExpr, using_clause), + offsetof(PgQuery__Query, n_group_clause), + offsetof(PgQuery__Query, group_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "join_using_alias", - 6, + "group_distinct", + 27, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__JoinExpr, join_using_alias), - &pg_query__alias__descriptor, + offsetof(PgQuery__Query, group_distinct), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "quals", - 7, - PROTOBUF_C_LABEL_NONE, + "grouping_sets", + 28, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__JoinExpr, quals), + offsetof(PgQuery__Query, n_grouping_sets), + offsetof(PgQuery__Query, grouping_sets), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alias", - 8, + "having_qual", + 29, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__JoinExpr, alias), - &pg_query__alias__descriptor, + offsetof(PgQuery__Query, having_qual), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rtindex", - 9, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__JoinExpr, rtindex), - NULL, + "window_clause", + 30, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Query, n_window_clause), + offsetof(PgQuery__Query, window_clause), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__join_expr__field_indices_by_name[] = { - 7, /* field[7] = alias */ - 1, /* field[1] = is_natural */ - 5, /* field[5] = join_using_alias */ - 0, /* field[0] = jointype */ - 2, /* field[2] = larg */ - 6, /* field[6] = quals */ - 3, /* field[3] = rarg */ - 8, /* field[8] = rtindex */ - 4, /* field[4] = using_clause */ -}; -static const ProtobufCIntRange pg_query__join_expr__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 9 } -}; -const ProtobufCMessageDescriptor pg_query__join_expr__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.JoinExpr", - "JoinExpr", - "PgQuery__JoinExpr", - "pg_query", - sizeof(PgQuery__JoinExpr), - 9, - pg_query__join_expr__field_descriptors, - pg_query__join_expr__field_indices_by_name, - 1, pg_query__join_expr__number_ranges, - (ProtobufCMessageInit) pg_query__join_expr__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__from_expr__field_descriptors[2] = -{ { - "fromlist", - 1, + "distinct_clause", + 31, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__FromExpr, n_fromlist), - offsetof(PgQuery__FromExpr, fromlist), + offsetof(PgQuery__Query, n_distinct_clause), + offsetof(PgQuery__Query, distinct_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "quals", - 2, - PROTOBUF_C_LABEL_NONE, + "sort_clause", + 32, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__FromExpr, quals), + offsetof(PgQuery__Query, n_sort_clause), + offsetof(PgQuery__Query, sort_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__from_expr__field_indices_by_name[] = { - 0, /* field[0] = fromlist */ - 1, /* field[1] = quals */ -}; -static const ProtobufCIntRange pg_query__from_expr__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__from_expr__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.FromExpr", - "FromExpr", - "PgQuery__FromExpr", - "pg_query", - sizeof(PgQuery__FromExpr), - 2, - pg_query__from_expr__field_descriptors, - pg_query__from_expr__field_indices_by_name, - 1, pg_query__from_expr__number_ranges, - (ProtobufCMessageInit) pg_query__from_expr__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__on_conflict_expr__field_descriptors[8] = -{ { - "action", - 1, + "limit_offset", + 33, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__OnConflictExpr, action), - &pg_query__on_conflict_action__descriptor, + offsetof(PgQuery__Query, limit_offset), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arbiter_elems", - 2, - PROTOBUF_C_LABEL_REPEATED, + "limit_count", + 34, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__OnConflictExpr, n_arbiter_elems), - offsetof(PgQuery__OnConflictExpr, arbiter_elems), + 0, /* quantifier_offset */ + offsetof(PgQuery__Query, limit_count), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arbiter_where", - 3, + "limit_option", + 35, PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__Query, limit_option), + &pg_query__limit_option__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "row_marks", + 36, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__OnConflictExpr, arbiter_where), + offsetof(PgQuery__Query, n_row_marks), + offsetof(PgQuery__Query, row_marks), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "constraint", - 4, + "set_operations", + 37, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__OnConflictExpr, constraint), - NULL, + offsetof(PgQuery__Query, set_operations), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "on_conflict_set", - 5, + "constraint_deps", + 38, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__OnConflictExpr, n_on_conflict_set), - offsetof(PgQuery__OnConflictExpr, on_conflict_set), + offsetof(PgQuery__Query, n_constraint_deps), + offsetof(PgQuery__Query, constraint_deps), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "on_conflict_where", - 6, - PROTOBUF_C_LABEL_NONE, + "with_check_options", + 39, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__OnConflictExpr, on_conflict_where), + offsetof(PgQuery__Query, n_with_check_options), + offsetof(PgQuery__Query, with_check_options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "excl_rel_index", - 7, + "stmt_location", + 40, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__OnConflictExpr, excl_rel_index), + offsetof(PgQuery__Query, stmt_location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "excl_rel_tlist", - 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__OnConflictExpr, n_excl_rel_tlist), - offsetof(PgQuery__OnConflictExpr, excl_rel_tlist), - &pg_query__node__descriptor, + "stmt_len", + 41, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__Query, stmt_len), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__on_conflict_expr__field_indices_by_name[] = { - 0, /* field[0] = action */ - 1, /* field[1] = arbiter_elems */ - 2, /* field[2] = arbiter_where */ - 3, /* field[3] = constraint */ - 6, /* field[6] = excl_rel_index */ - 7, /* field[7] = excl_rel_tlist */ - 4, /* field[4] = on_conflict_set */ - 5, /* field[5] = on_conflict_where */ +static const unsigned pg_query__query__field_indices_by_name[] = { + 2, /* field[2] = can_set_tag */ + 0, /* field[0] = command_type */ + 37, /* field[37] = constraint_deps */ + 15, /* field[15] = cte_list */ + 30, /* field[30] = distinct_clause */ + 25, /* field[25] = group_clause */ + 26, /* field[26] = group_distinct */ + 27, /* field[27] = grouping_sets */ + 5, /* field[5] = has_aggs */ + 9, /* field[9] = has_distinct_on */ + 12, /* field[12] = has_for_update */ + 11, /* field[11] = has_modifying_cte */ + 10, /* field[10] = has_recursive */ + 13, /* field[13] = has_row_security */ + 8, /* field[8] = has_sub_links */ + 7, /* field[7] = has_target_srfs */ + 6, /* field[6] = has_window_funcs */ + 28, /* field[28] = having_qual */ + 14, /* field[14] = is_return */ + 18, /* field[18] = jointree */ + 33, /* field[33] = limit_count */ + 32, /* field[32] = limit_offset */ + 34, /* field[34] = limit_option */ + 19, /* field[19] = merge_action_list */ + 20, /* field[20] = merge_use_outer_join */ + 23, /* field[23] = on_conflict */ + 22, /* field[22] = override */ + 1, /* field[1] = query_source */ + 4, /* field[4] = result_relation */ + 24, /* field[24] = returning_list */ + 35, /* field[35] = row_marks */ + 16, /* field[16] = rtable */ + 17, /* field[17] = rteperminfos */ + 36, /* field[36] = set_operations */ + 31, /* field[31] = sort_clause */ + 40, /* field[40] = stmt_len */ + 39, /* field[39] = stmt_location */ + 21, /* field[21] = target_list */ + 3, /* field[3] = utility_stmt */ + 29, /* field[29] = window_clause */ + 38, /* field[38] = with_check_options */ }; -static const ProtobufCIntRange pg_query__on_conflict_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__query__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 8 } + { 0, 41 } }; -const ProtobufCMessageDescriptor pg_query__on_conflict_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__query__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.OnConflictExpr", - "OnConflictExpr", - "PgQuery__OnConflictExpr", + "pg_query.Query", + "Query", + "PgQuery__Query", "pg_query", - sizeof(PgQuery__OnConflictExpr), - 8, - pg_query__on_conflict_expr__field_descriptors, - pg_query__on_conflict_expr__field_indices_by_name, - 1, pg_query__on_conflict_expr__number_ranges, - (ProtobufCMessageInit) pg_query__on_conflict_expr__init, + sizeof(PgQuery__Query), + 41, + pg_query__query__field_descriptors, + pg_query__query__field_indices_by_name, + 1, pg_query__query__number_ranges, + (ProtobufCMessageInit) pg_query__query__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__into_clause__field_descriptors[8] = +static const ProtobufCFieldDescriptor pg_query__type_name__field_descriptors[8] = { { - "rel", + "names", 1, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__IntoClause, rel), - &pg_query__range_var__descriptor, + offsetof(PgQuery__TypeName, n_names), + offsetof(PgQuery__TypeName, names), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "col_names", + "type_oid", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IntoClause, n_col_names), - offsetof(PgQuery__IntoClause, col_names), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__TypeName, type_oid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "access_method", + "setof", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__IntoClause, access_method), + offsetof(PgQuery__TypeName, setof), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "pct_type", 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IntoClause, n_options), - offsetof(PgQuery__IntoClause, options), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__TypeName, pct_type), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "on_commit", + "typmods", 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__IntoClause, on_commit), - &pg_query__on_commit_action__descriptor, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__TypeName, n_typmods), + offsetof(PgQuery__TypeName, typmods), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "table_space_name", + "typemod", 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__IntoClause, table_space_name), + offsetof(PgQuery__TypeName, typemod), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "view_query", + "array_bounds", 7, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__IntoClause, view_query), + offsetof(PgQuery__TypeName, n_array_bounds), + offsetof(PgQuery__TypeName, array_bounds), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "skip_data", + "location", 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__IntoClause, skip_data), + offsetof(PgQuery__TypeName, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__into_clause__field_indices_by_name[] = { - 2, /* field[2] = access_method */ - 1, /* field[1] = col_names */ - 4, /* field[4] = on_commit */ - 3, /* field[3] = options */ - 0, /* field[0] = rel */ - 7, /* field[7] = skip_data */ - 5, /* field[5] = table_space_name */ - 6, /* field[6] = view_query */ +static const unsigned pg_query__type_name__field_indices_by_name[] = { + 6, /* field[6] = array_bounds */ + 7, /* field[7] = location */ + 0, /* field[0] = names */ + 3, /* field[3] = pct_type */ + 2, /* field[2] = setof */ + 1, /* field[1] = type_oid */ + 5, /* field[5] = typemod */ + 4, /* field[4] = typmods */ }; -static const ProtobufCIntRange pg_query__into_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__type_name__number_ranges[1 + 1] = { { 1, 0 }, { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__into_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__type_name__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.IntoClause", - "IntoClause", - "PgQuery__IntoClause", + "pg_query.TypeName", + "TypeName", + "PgQuery__TypeName", "pg_query", - sizeof(PgQuery__IntoClause), + sizeof(PgQuery__TypeName), 8, - pg_query__into_clause__field_descriptors, - pg_query__into_clause__field_indices_by_name, - 1, pg_query__into_clause__number_ranges, - (ProtobufCMessageInit) pg_query__into_clause__init, + pg_query__type_name__field_descriptors, + pg_query__type_name__field_indices_by_name, + 1, pg_query__type_name__number_ranges, + (ProtobufCMessageInit) pg_query__type_name__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__merge_action__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__column_ref__field_descriptors[2] = { { - "matched", + "fields", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__MergeAction, matched), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ColumnRef, n_fields), + offsetof(PgQuery__ColumnRef, fields), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "command_type", + "location", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__MergeAction, command_type), - &pg_query__cmd_type__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "override", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__MergeAction, override), - &pg_query__overriding_kind__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "qual", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__MergeAction, qual), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "target_list", - 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__MergeAction, n_target_list), - offsetof(PgQuery__MergeAction, target_list), - &pg_query__node__descriptor, + offsetof(PgQuery__ColumnRef, location), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "update_colnos", - 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__MergeAction, n_update_colnos), - offsetof(PgQuery__MergeAction, update_colnos), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__merge_action__field_indices_by_name[] = { - 1, /* field[1] = command_type */ - 0, /* field[0] = matched */ - 2, /* field[2] = override */ - 3, /* field[3] = qual */ - 4, /* field[4] = target_list */ - 5, /* field[5] = update_colnos */ +static const unsigned pg_query__column_ref__field_indices_by_name[] = { + 0, /* field[0] = fields */ + 1, /* field[1] = location */ }; -static const ProtobufCIntRange pg_query__merge_action__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__column_ref__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__merge_action__descriptor = +const ProtobufCMessageDescriptor pg_query__column_ref__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.MergeAction", - "MergeAction", - "PgQuery__MergeAction", + "pg_query.ColumnRef", + "ColumnRef", + "PgQuery__ColumnRef", "pg_query", - sizeof(PgQuery__MergeAction), - 6, - pg_query__merge_action__field_descriptors, - pg_query__merge_action__field_indices_by_name, - 1, pg_query__merge_action__number_ranges, - (ProtobufCMessageInit) pg_query__merge_action__init, + sizeof(PgQuery__ColumnRef), + 2, + pg_query__column_ref__field_descriptors, + pg_query__column_ref__field_indices_by_name, + 1, pg_query__column_ref__number_ranges, + (ProtobufCMessageInit) pg_query__column_ref__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__raw_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__param_ref__field_descriptors[2] = { { - "stmt", + "number", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RawStmt, stmt), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "stmt_location", - 2, - PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RawStmt, stmt_location), + offsetof(PgQuery__ParamRef, number), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "stmt_len", - 3, + "location", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RawStmt, stmt_len), + offsetof(PgQuery__ParamRef, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__raw_stmt__field_indices_by_name[] = { - 0, /* field[0] = stmt */ - 2, /* field[2] = stmt_len */ - 1, /* field[1] = stmt_location */ +static const unsigned pg_query__param_ref__field_indices_by_name[] = { + 1, /* field[1] = location */ + 0, /* field[0] = number */ }; -static const ProtobufCIntRange pg_query__raw_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__param_ref__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__raw_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__param_ref__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RawStmt", - "RawStmt", - "PgQuery__RawStmt", + "pg_query.ParamRef", + "ParamRef", + "PgQuery__ParamRef", "pg_query", - sizeof(PgQuery__RawStmt), - 3, - pg_query__raw_stmt__field_descriptors, - pg_query__raw_stmt__field_indices_by_name, - 1, pg_query__raw_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__raw_stmt__init, + sizeof(PgQuery__ParamRef), + 2, + pg_query__param_ref__field_descriptors, + pg_query__param_ref__field_indices_by_name, + 1, pg_query__param_ref__number_ranges, + (ProtobufCMessageInit) pg_query__param_ref__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__query__field_descriptors[40] = +static const ProtobufCFieldDescriptor pg_query__a__expr__field_descriptors[5] = { { - "command_type", + "kind", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, command_type), - &pg_query__cmd_type__descriptor, + offsetof(PgQuery__AExpr, kind), + &pg_query__a__expr__kind__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "query_source", + "name", 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, query_source), - &pg_query__query_source__descriptor, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AExpr, n_name), + offsetof(PgQuery__AExpr, name), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "can_set_tag", + "lexpr", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, can_set_tag), - NULL, + offsetof(PgQuery__AExpr, lexpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "utility_stmt", + "rexpr", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, utility_stmt), + offsetof(PgQuery__AExpr, rexpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "result_relation", + "location", 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, result_relation), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "has_aggs", - 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, has_aggs), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "has_window_funcs", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, has_window_funcs), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "has_target_srfs", - 8, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, has_target_srfs), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "has_sub_links", - 9, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, has_sub_links), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "has_distinct_on", - 10, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, has_distinct_on), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "has_recursive", - 11, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, has_recursive), + offsetof(PgQuery__AExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__a__expr__field_indices_by_name[] = { + 0, /* field[0] = kind */ + 2, /* field[2] = lexpr */ + 4, /* field[4] = location */ + 1, /* field[1] = name */ + 3, /* field[3] = rexpr */ +}; +static const ProtobufCIntRange pg_query__a__expr__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor pg_query__a__expr__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.A_Expr", + "AExpr", + "PgQuery__AExpr", + "pg_query", + sizeof(PgQuery__AExpr), + 5, + pg_query__a__expr__field_descriptors, + pg_query__a__expr__field_indices_by_name, + 1, pg_query__a__expr__number_ranges, + (ProtobufCMessageInit) pg_query__a__expr__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__type_cast__field_descriptors[3] = +{ { - "has_modifying_cte", - 12, + "arg", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, has_modifying_cte), - NULL, + offsetof(PgQuery__TypeCast, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "has_for_update", - 13, + "type_name", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, has_for_update), - NULL, + offsetof(PgQuery__TypeCast, type_name), + &pg_query__type_name__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "has_row_security", - 14, + "location", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, has_row_security), + offsetof(PgQuery__TypeCast, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__type_cast__field_indices_by_name[] = { + 0, /* field[0] = arg */ + 2, /* field[2] = location */ + 1, /* field[1] = type_name */ +}; +static const ProtobufCIntRange pg_query__type_cast__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__type_cast__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.TypeCast", + "TypeCast", + "PgQuery__TypeCast", + "pg_query", + sizeof(PgQuery__TypeCast), + 3, + pg_query__type_cast__field_descriptors, + pg_query__type_cast__field_indices_by_name, + 1, pg_query__type_cast__number_ranges, + (ProtobufCMessageInit) pg_query__type_cast__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__collate_clause__field_descriptors[3] = +{ { - "is_return", - 15, + "arg", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, is_return), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "cte_list", - 16, - PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_cte_list), - offsetof(PgQuery__Query, cte_list), + 0, /* quantifier_offset */ + offsetof(PgQuery__CollateClause, arg), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rtable", - 17, + "collname", + 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_rtable), - offsetof(PgQuery__Query, rtable), + offsetof(PgQuery__CollateClause, n_collname), + offsetof(PgQuery__CollateClause, collname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "jointree", - 18, + "location", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, jointree), - &pg_query__from_expr__descriptor, + offsetof(PgQuery__CollateClause, location), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "merge_action_list", - 19, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_merge_action_list), - offsetof(PgQuery__Query, merge_action_list), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__collate_clause__field_indices_by_name[] = { + 0, /* field[0] = arg */ + 1, /* field[1] = collname */ + 2, /* field[2] = location */ +}; +static const ProtobufCIntRange pg_query__collate_clause__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__collate_clause__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.CollateClause", + "CollateClause", + "PgQuery__CollateClause", + "pg_query", + sizeof(PgQuery__CollateClause), + 3, + pg_query__collate_clause__field_descriptors, + pg_query__collate_clause__field_indices_by_name, + 1, pg_query__collate_clause__number_ranges, + (ProtobufCMessageInit) pg_query__collate_clause__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__role_spec__field_descriptors[3] = +{ { - "merge_use_outer_join", - 20, + "roletype", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, merge_use_outer_join), - NULL, + offsetof(PgQuery__RoleSpec, roletype), + &pg_query__role_spec_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "target_list", - 21, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_target_list), - offsetof(PgQuery__Query, target_list), - &pg_query__node__descriptor, + "rolename", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__RoleSpec, rolename), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "override", - 22, + "location", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, override), - &pg_query__overriding_kind__descriptor, + offsetof(PgQuery__RoleSpec, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__role_spec__field_indices_by_name[] = { + 2, /* field[2] = location */ + 1, /* field[1] = rolename */ + 0, /* field[0] = roletype */ +}; +static const ProtobufCIntRange pg_query__role_spec__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__role_spec__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.RoleSpec", + "RoleSpec", + "PgQuery__RoleSpec", + "pg_query", + sizeof(PgQuery__RoleSpec), + 3, + pg_query__role_spec__field_descriptors, + pg_query__role_spec__field_indices_by_name, + 1, pg_query__role_spec__number_ranges, + (ProtobufCMessageInit) pg_query__role_spec__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__func_call__field_descriptors[11] = +{ { - "on_conflict", - 23, - PROTOBUF_C_LABEL_NONE, + "funcname", + 1, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, on_conflict), - &pg_query__on_conflict_expr__descriptor, + offsetof(PgQuery__FuncCall, n_funcname), + offsetof(PgQuery__FuncCall, funcname), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "returning_list", - 24, + "args", + 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_returning_list), - offsetof(PgQuery__Query, returning_list), + offsetof(PgQuery__FuncCall, n_args), + offsetof(PgQuery__FuncCall, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "group_clause", - 25, + "agg_order", + 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_group_clause), - offsetof(PgQuery__Query, group_clause), + offsetof(PgQuery__FuncCall, n_agg_order), + offsetof(PgQuery__FuncCall, agg_order), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "group_distinct", - 26, + "agg_filter", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, group_distinct), - NULL, + offsetof(PgQuery__FuncCall, agg_filter), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "grouping_sets", - 27, - PROTOBUF_C_LABEL_REPEATED, + "over", + 5, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_grouping_sets), - offsetof(PgQuery__Query, grouping_sets), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncCall, over), + &pg_query__window_def__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "having_qual", - 28, + "agg_within_group", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, having_qual), - &pg_query__node__descriptor, + offsetof(PgQuery__FuncCall, agg_within_group), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "window_clause", - 29, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_window_clause), - offsetof(PgQuery__Query, window_clause), - &pg_query__node__descriptor, + "agg_star", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncCall, agg_star), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "distinct_clause", - 30, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_distinct_clause), - offsetof(PgQuery__Query, distinct_clause), - &pg_query__node__descriptor, + "agg_distinct", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncCall, agg_distinct), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sort_clause", - 31, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_sort_clause), - offsetof(PgQuery__Query, sort_clause), - &pg_query__node__descriptor, + "func_variadic", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__FuncCall, func_variadic), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "limit_offset", - 32, + "funcformat", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, limit_offset), - &pg_query__node__descriptor, + offsetof(PgQuery__FuncCall, funcformat), + &pg_query__coercion_form__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "limit_count", - 33, + "location", + 11, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, limit_count), - &pg_query__node__descriptor, + offsetof(PgQuery__FuncCall, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__func_call__field_indices_by_name[] = { + 7, /* field[7] = agg_distinct */ + 3, /* field[3] = agg_filter */ + 2, /* field[2] = agg_order */ + 6, /* field[6] = agg_star */ + 5, /* field[5] = agg_within_group */ + 1, /* field[1] = args */ + 8, /* field[8] = func_variadic */ + 9, /* field[9] = funcformat */ + 0, /* field[0] = funcname */ + 10, /* field[10] = location */ + 4, /* field[4] = over */ +}; +static const ProtobufCIntRange pg_query__func_call__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 11 } +}; +const ProtobufCMessageDescriptor pg_query__func_call__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.FuncCall", + "FuncCall", + "PgQuery__FuncCall", + "pg_query", + sizeof(PgQuery__FuncCall), + 11, + pg_query__func_call__field_descriptors, + pg_query__func_call__field_indices_by_name, + 1, pg_query__func_call__number_ranges, + (ProtobufCMessageInit) pg_query__func_call__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define pg_query__a__star__field_descriptors NULL +#define pg_query__a__star__field_indices_by_name NULL +#define pg_query__a__star__number_ranges NULL +const ProtobufCMessageDescriptor pg_query__a__star__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.A_Star", + "AStar", + "PgQuery__AStar", + "pg_query", + sizeof(PgQuery__AStar), + 0, + pg_query__a__star__field_descriptors, + pg_query__a__star__field_indices_by_name, + 0, pg_query__a__star__number_ranges, + (ProtobufCMessageInit) pg_query__a__star__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__a__indices__field_descriptors[3] = +{ { - "limit_option", - 34, + "is_slice", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, limit_option), - &pg_query__limit_option__descriptor, + offsetof(PgQuery__AIndices, is_slice), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "row_marks", - 35, - PROTOBUF_C_LABEL_REPEATED, + "lidx", + 2, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_row_marks), - offsetof(PgQuery__Query, row_marks), + 0, /* quantifier_offset */ + offsetof(PgQuery__AIndices, lidx), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "set_operations", - 36, + "uidx", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, set_operations), + offsetof(PgQuery__AIndices, uidx), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__a__indices__field_indices_by_name[] = { + 0, /* field[0] = is_slice */ + 1, /* field[1] = lidx */ + 2, /* field[2] = uidx */ +}; +static const ProtobufCIntRange pg_query__a__indices__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__a__indices__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.A_Indices", + "AIndices", + "PgQuery__AIndices", + "pg_query", + sizeof(PgQuery__AIndices), + 3, + pg_query__a__indices__field_descriptors, + pg_query__a__indices__field_indices_by_name, + 1, pg_query__a__indices__number_ranges, + (ProtobufCMessageInit) pg_query__a__indices__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__a__indirection__field_descriptors[2] = +{ { - "constraint_deps", - 37, - PROTOBUF_C_LABEL_REPEATED, + "arg", + 1, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_constraint_deps), - offsetof(PgQuery__Query, constraint_deps), + 0, /* quantifier_offset */ + offsetof(PgQuery__AIndirection, arg), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_check_options", - 38, + "indirection", + 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Query, n_with_check_options), - offsetof(PgQuery__Query, with_check_options), + offsetof(PgQuery__AIndirection, n_indirection), + offsetof(PgQuery__AIndirection, indirection), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__a__indirection__field_indices_by_name[] = { + 0, /* field[0] = arg */ + 1, /* field[1] = indirection */ +}; +static const ProtobufCIntRange pg_query__a__indirection__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__a__indirection__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.A_Indirection", + "AIndirection", + "PgQuery__AIndirection", + "pg_query", + sizeof(PgQuery__AIndirection), + 2, + pg_query__a__indirection__field_descriptors, + pg_query__a__indirection__field_indices_by_name, + 1, pg_query__a__indirection__number_ranges, + (ProtobufCMessageInit) pg_query__a__indirection__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__a__array_expr__field_descriptors[2] = +{ { - "stmt_location", - 39, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__Query, stmt_location), - NULL, + "elements", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AArrayExpr, n_elements), + offsetof(PgQuery__AArrayExpr, elements), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "stmt_len", - 40, + "location", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Query, stmt_len), + offsetof(PgQuery__AArrayExpr, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__query__field_indices_by_name[] = { - 2, /* field[2] = can_set_tag */ - 0, /* field[0] = command_type */ - 36, /* field[36] = constraint_deps */ - 15, /* field[15] = cte_list */ - 29, /* field[29] = distinct_clause */ - 24, /* field[24] = group_clause */ - 25, /* field[25] = group_distinct */ - 26, /* field[26] = grouping_sets */ - 5, /* field[5] = has_aggs */ - 9, /* field[9] = has_distinct_on */ - 12, /* field[12] = has_for_update */ - 11, /* field[11] = has_modifying_cte */ - 10, /* field[10] = has_recursive */ - 13, /* field[13] = has_row_security */ - 8, /* field[8] = has_sub_links */ - 7, /* field[7] = has_target_srfs */ - 6, /* field[6] = has_window_funcs */ - 27, /* field[27] = having_qual */ - 14, /* field[14] = is_return */ - 17, /* field[17] = jointree */ - 32, /* field[32] = limit_count */ - 31, /* field[31] = limit_offset */ - 33, /* field[33] = limit_option */ - 18, /* field[18] = merge_action_list */ - 19, /* field[19] = merge_use_outer_join */ - 22, /* field[22] = on_conflict */ - 21, /* field[21] = override */ - 1, /* field[1] = query_source */ - 4, /* field[4] = result_relation */ - 23, /* field[23] = returning_list */ - 34, /* field[34] = row_marks */ - 16, /* field[16] = rtable */ - 35, /* field[35] = set_operations */ - 30, /* field[30] = sort_clause */ - 39, /* field[39] = stmt_len */ - 38, /* field[38] = stmt_location */ - 20, /* field[20] = target_list */ - 3, /* field[3] = utility_stmt */ - 28, /* field[28] = window_clause */ - 37, /* field[37] = with_check_options */ +static const unsigned pg_query__a__array_expr__field_indices_by_name[] = { + 0, /* field[0] = elements */ + 1, /* field[1] = location */ }; -static const ProtobufCIntRange pg_query__query__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__a__array_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 40 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__query__descriptor = +const ProtobufCMessageDescriptor pg_query__a__array_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Query", - "Query", - "PgQuery__Query", + "pg_query.A_ArrayExpr", + "AArrayExpr", + "PgQuery__AArrayExpr", "pg_query", - sizeof(PgQuery__Query), - 40, - pg_query__query__field_descriptors, - pg_query__query__field_indices_by_name, - 1, pg_query__query__number_ranges, - (ProtobufCMessageInit) pg_query__query__init, + sizeof(PgQuery__AArrayExpr), + 2, + pg_query__a__array_expr__field_descriptors, + pg_query__a__array_expr__field_indices_by_name, + 1, pg_query__a__array_expr__number_ranges, + (ProtobufCMessageInit) pg_query__a__array_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__insert_stmt__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__res_target__field_descriptors[4] = { { - "relation", + "name", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__InsertStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__ResTarget, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cols", + "indirection", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__InsertStmt, n_cols), - offsetof(PgQuery__InsertStmt, cols), + offsetof(PgQuery__ResTarget, n_indirection), + offsetof(PgQuery__ResTarget, indirection), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "select_stmt", + "val", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__InsertStmt, select_stmt), + offsetof(PgQuery__ResTarget, val), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "on_conflict_clause", + "location", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__InsertStmt, on_conflict_clause), - &pg_query__on_conflict_clause__descriptor, + offsetof(PgQuery__ResTarget, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__res_target__field_indices_by_name[] = { + 1, /* field[1] = indirection */ + 3, /* field[3] = location */ + 0, /* field[0] = name */ + 2, /* field[2] = val */ +}; +static const ProtobufCIntRange pg_query__res_target__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor pg_query__res_target__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.ResTarget", + "ResTarget", + "PgQuery__ResTarget", + "pg_query", + sizeof(PgQuery__ResTarget), + 4, + pg_query__res_target__field_descriptors, + pg_query__res_target__field_indices_by_name, + 1, pg_query__res_target__number_ranges, + (ProtobufCMessageInit) pg_query__res_target__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__multi_assign_ref__field_descriptors[3] = +{ { - "returning_list", - 5, - PROTOBUF_C_LABEL_REPEATED, + "source", + 1, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__InsertStmt, n_returning_list), - offsetof(PgQuery__InsertStmt, returning_list), + 0, /* quantifier_offset */ + offsetof(PgQuery__MultiAssignRef, source), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_clause", - 6, + "colno", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__InsertStmt, with_clause), - &pg_query__with_clause__descriptor, + offsetof(PgQuery__MultiAssignRef, colno), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "override", - 7, + "ncolumns", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__InsertStmt, override), - &pg_query__overriding_kind__descriptor, + offsetof(PgQuery__MultiAssignRef, ncolumns), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__insert_stmt__field_indices_by_name[] = { - 1, /* field[1] = cols */ - 3, /* field[3] = on_conflict_clause */ - 6, /* field[6] = override */ - 0, /* field[0] = relation */ - 4, /* field[4] = returning_list */ - 2, /* field[2] = select_stmt */ - 5, /* field[5] = with_clause */ +static const unsigned pg_query__multi_assign_ref__field_indices_by_name[] = { + 1, /* field[1] = colno */ + 2, /* field[2] = ncolumns */ + 0, /* field[0] = source */ }; -static const ProtobufCIntRange pg_query__insert_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__multi_assign_ref__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__insert_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__multi_assign_ref__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.InsertStmt", - "InsertStmt", - "PgQuery__InsertStmt", + "pg_query.MultiAssignRef", + "MultiAssignRef", + "PgQuery__MultiAssignRef", "pg_query", - sizeof(PgQuery__InsertStmt), - 7, - pg_query__insert_stmt__field_descriptors, - pg_query__insert_stmt__field_indices_by_name, - 1, pg_query__insert_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__insert_stmt__init, + sizeof(PgQuery__MultiAssignRef), + 3, + pg_query__multi_assign_ref__field_descriptors, + pg_query__multi_assign_ref__field_indices_by_name, + 1, pg_query__multi_assign_ref__number_ranges, + (ProtobufCMessageInit) pg_query__multi_assign_ref__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__delete_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__sort_by__field_descriptors[5] = { { - "relation", + "node", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__DeleteStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__SortBy, node), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "using_clause", + "sortby_dir", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DeleteStmt, n_using_clause), - offsetof(PgQuery__DeleteStmt, using_clause), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__SortBy, sortby_dir), + &pg_query__sort_by_dir__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "where_clause", + "sortby_nulls", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__DeleteStmt, where_clause), - &pg_query__node__descriptor, + offsetof(PgQuery__SortBy, sortby_nulls), + &pg_query__sort_by_nulls__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "returning_list", + "use_op", 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DeleteStmt, n_returning_list), - offsetof(PgQuery__DeleteStmt, returning_list), + offsetof(PgQuery__SortBy, n_use_op), + offsetof(PgQuery__SortBy, use_op), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_clause", + "location", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__DeleteStmt, with_clause), - &pg_query__with_clause__descriptor, + offsetof(PgQuery__SortBy, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__delete_stmt__field_indices_by_name[] = { - 0, /* field[0] = relation */ - 3, /* field[3] = returning_list */ - 1, /* field[1] = using_clause */ - 2, /* field[2] = where_clause */ - 4, /* field[4] = with_clause */ +static const unsigned pg_query__sort_by__field_indices_by_name[] = { + 4, /* field[4] = location */ + 0, /* field[0] = node */ + 1, /* field[1] = sortby_dir */ + 2, /* field[2] = sortby_nulls */ + 3, /* field[3] = use_op */ }; -static const ProtobufCIntRange pg_query__delete_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__sort_by__number_ranges[1 + 1] = { { 1, 0 }, { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__delete_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__sort_by__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DeleteStmt", - "DeleteStmt", - "PgQuery__DeleteStmt", + "pg_query.SortBy", + "SortBy", + "PgQuery__SortBy", "pg_query", - sizeof(PgQuery__DeleteStmt), + sizeof(PgQuery__SortBy), 5, - pg_query__delete_stmt__field_descriptors, - pg_query__delete_stmt__field_indices_by_name, - 1, pg_query__delete_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__delete_stmt__init, + pg_query__sort_by__field_descriptors, + pg_query__sort_by__field_indices_by_name, + 1, pg_query__sort_by__number_ranges, + (ProtobufCMessageInit) pg_query__sort_by__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__update_stmt__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__window_def__field_descriptors[8] = { { - "relation", + "name", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__UpdateStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__WindowDef, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "target_list", + "refname", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__UpdateStmt, n_target_list), - offsetof(PgQuery__UpdateStmt, target_list), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowDef, refname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "where_clause", + "partition_clause", 3, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__UpdateStmt, where_clause), + offsetof(PgQuery__WindowDef, n_partition_clause), + offsetof(PgQuery__WindowDef, partition_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "from_clause", + "order_clause", 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__UpdateStmt, n_from_clause), - offsetof(PgQuery__UpdateStmt, from_clause), + offsetof(PgQuery__WindowDef, n_order_clause), + offsetof(PgQuery__WindowDef, order_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "returning_list", + "frame_options", 5, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowDef, frame_options), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "start_offset", + 6, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__UpdateStmt, n_returning_list), - offsetof(PgQuery__UpdateStmt, returning_list), + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowDef, start_offset), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_clause", - 6, + "end_offset", + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__UpdateStmt, with_clause), - &pg_query__with_clause__descriptor, + offsetof(PgQuery__WindowDef, end_offset), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "location", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowDef, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__update_stmt__field_indices_by_name[] = { - 3, /* field[3] = from_clause */ - 0, /* field[0] = relation */ - 4, /* field[4] = returning_list */ - 1, /* field[1] = target_list */ - 2, /* field[2] = where_clause */ - 5, /* field[5] = with_clause */ +static const unsigned pg_query__window_def__field_indices_by_name[] = { + 6, /* field[6] = end_offset */ + 4, /* field[4] = frame_options */ + 7, /* field[7] = location */ + 0, /* field[0] = name */ + 3, /* field[3] = order_clause */ + 2, /* field[2] = partition_clause */ + 1, /* field[1] = refname */ + 5, /* field[5] = start_offset */ }; -static const ProtobufCIntRange pg_query__update_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__window_def__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__update_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__window_def__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.UpdateStmt", - "UpdateStmt", - "PgQuery__UpdateStmt", + "pg_query.WindowDef", + "WindowDef", + "PgQuery__WindowDef", "pg_query", - sizeof(PgQuery__UpdateStmt), - 6, - pg_query__update_stmt__field_descriptors, - pg_query__update_stmt__field_indices_by_name, - 1, pg_query__update_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__update_stmt__init, + sizeof(PgQuery__WindowDef), + 8, + pg_query__window_def__field_descriptors, + pg_query__window_def__field_indices_by_name, + 1, pg_query__window_def__number_ranges, + (ProtobufCMessageInit) pg_query__window_def__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__merge_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__range_subselect__field_descriptors[3] = { { - "relation", + "lateral", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__MergeStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__RangeSubselect, lateral), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "source_relation", + "subquery", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__MergeStmt, source_relation), + offsetof(PgQuery__RangeSubselect, subquery), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "join_condition", + "alias", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__MergeStmt, join_condition), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "merge_when_clauses", - 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__MergeStmt, n_merge_when_clauses), - offsetof(PgQuery__MergeStmt, merge_when_clauses), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "with_clause", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__MergeStmt, with_clause), - &pg_query__with_clause__descriptor, + offsetof(PgQuery__RangeSubselect, alias), + &pg_query__alias__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__merge_stmt__field_indices_by_name[] = { - 2, /* field[2] = join_condition */ - 3, /* field[3] = merge_when_clauses */ - 0, /* field[0] = relation */ - 1, /* field[1] = source_relation */ - 4, /* field[4] = with_clause */ +static const unsigned pg_query__range_subselect__field_indices_by_name[] = { + 2, /* field[2] = alias */ + 0, /* field[0] = lateral */ + 1, /* field[1] = subquery */ }; -static const ProtobufCIntRange pg_query__merge_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__range_subselect__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__merge_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__range_subselect__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.MergeStmt", - "MergeStmt", - "PgQuery__MergeStmt", + "pg_query.RangeSubselect", + "RangeSubselect", + "PgQuery__RangeSubselect", "pg_query", - sizeof(PgQuery__MergeStmt), - 5, - pg_query__merge_stmt__field_descriptors, - pg_query__merge_stmt__field_indices_by_name, - 1, pg_query__merge_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__merge_stmt__init, + sizeof(PgQuery__RangeSubselect), + 3, + pg_query__range_subselect__field_descriptors, + pg_query__range_subselect__field_indices_by_name, + 1, pg_query__range_subselect__number_ranges, + (ProtobufCMessageInit) pg_query__range_subselect__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__select_stmt__field_descriptors[20] = +static const ProtobufCFieldDescriptor pg_query__range_function__field_descriptors[6] = { { - "distinct_clause", + "lateral", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SelectStmt, n_distinct_clause), - offsetof(PgQuery__SelectStmt, distinct_clause), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeFunction, lateral), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "into_clause", + "ordinality", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, into_clause), - &pg_query__into_clause__descriptor, + offsetof(PgQuery__RangeFunction, ordinality), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "target_list", + "is_rowsfrom", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SelectStmt, n_target_list), - offsetof(PgQuery__SelectStmt, target_list), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeFunction, is_rowsfrom), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "from_clause", + "functions", 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SelectStmt, n_from_clause), - offsetof(PgQuery__SelectStmt, from_clause), + offsetof(PgQuery__RangeFunction, n_functions), + offsetof(PgQuery__RangeFunction, functions), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "where_clause", + "alias", 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, where_clause), - &pg_query__node__descriptor, + offsetof(PgQuery__RangeFunction, alias), + &pg_query__alias__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "group_clause", + "coldeflist", 6, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SelectStmt, n_group_clause), - offsetof(PgQuery__SelectStmt, group_clause), + offsetof(PgQuery__RangeFunction, n_coldeflist), + offsetof(PgQuery__RangeFunction, coldeflist), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__range_function__field_indices_by_name[] = { + 4, /* field[4] = alias */ + 5, /* field[5] = coldeflist */ + 3, /* field[3] = functions */ + 2, /* field[2] = is_rowsfrom */ + 0, /* field[0] = lateral */ + 1, /* field[1] = ordinality */ +}; +static const ProtobufCIntRange pg_query__range_function__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 6 } +}; +const ProtobufCMessageDescriptor pg_query__range_function__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.RangeFunction", + "RangeFunction", + "PgQuery__RangeFunction", + "pg_query", + sizeof(PgQuery__RangeFunction), + 6, + pg_query__range_function__field_descriptors, + pg_query__range_function__field_indices_by_name, + 1, pg_query__range_function__number_ranges, + (ProtobufCMessageInit) pg_query__range_function__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__range_table_func__field_descriptors[7] = +{ { - "group_distinct", - 7, + "lateral", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, group_distinct), - NULL, + offsetof(PgQuery__RangeTableFunc, lateral), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "having_clause", - 8, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, having_clause), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "window_clause", - 9, - PROTOBUF_C_LABEL_REPEATED, + "docexpr", + 2, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SelectStmt, n_window_clause), - offsetof(PgQuery__SelectStmt, window_clause), + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeTableFunc, docexpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "values_lists", - 10, - PROTOBUF_C_LABEL_REPEATED, + "rowexpr", + 3, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SelectStmt, n_values_lists), - offsetof(PgQuery__SelectStmt, values_lists), + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeTableFunc, rowexpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sort_clause", - 11, + "namespaces", + 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SelectStmt, n_sort_clause), - offsetof(PgQuery__SelectStmt, sort_clause), + offsetof(PgQuery__RangeTableFunc, n_namespaces), + offsetof(PgQuery__RangeTableFunc, namespaces), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "limit_offset", - 12, - PROTOBUF_C_LABEL_NONE, + "columns", + 5, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, limit_offset), + offsetof(PgQuery__RangeTableFunc, n_columns), + offsetof(PgQuery__RangeTableFunc, columns), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "limit_count", - 13, + "alias", + 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, limit_count), - &pg_query__node__descriptor, + offsetof(PgQuery__RangeTableFunc, alias), + &pg_query__alias__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "limit_option", - 14, + "location", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, limit_option), - &pg_query__limit_option__descriptor, + offsetof(PgQuery__RangeTableFunc, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__range_table_func__field_indices_by_name[] = { + 5, /* field[5] = alias */ + 4, /* field[4] = columns */ + 1, /* field[1] = docexpr */ + 0, /* field[0] = lateral */ + 6, /* field[6] = location */ + 3, /* field[3] = namespaces */ + 2, /* field[2] = rowexpr */ +}; +static const ProtobufCIntRange pg_query__range_table_func__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__range_table_func__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.RangeTableFunc", + "RangeTableFunc", + "PgQuery__RangeTableFunc", + "pg_query", + sizeof(PgQuery__RangeTableFunc), + 7, + pg_query__range_table_func__field_descriptors, + pg_query__range_table_func__field_indices_by_name, + 1, pg_query__range_table_func__number_ranges, + (ProtobufCMessageInit) pg_query__range_table_func__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__range_table_func_col__field_descriptors[7] = +{ { - "locking_clause", - 15, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SelectStmt, n_locking_clause), - offsetof(PgQuery__SelectStmt, locking_clause), - &pg_query__node__descriptor, + "colname", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeTableFuncCol, colname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_clause", - 16, + "type_name", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, with_clause), - &pg_query__with_clause__descriptor, + offsetof(PgQuery__RangeTableFuncCol, type_name), + &pg_query__type_name__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "op", - 17, + "for_ordinality", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, op), - &pg_query__set_operation__descriptor, + offsetof(PgQuery__RangeTableFuncCol, for_ordinality), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "all", - 18, + "is_not_null", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, all), + offsetof(PgQuery__RangeTableFuncCol, is_not_null), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "larg", - 19, + "colexpr", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, larg), - &pg_query__select_stmt__descriptor, + offsetof(PgQuery__RangeTableFuncCol, colexpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rarg", - 20, + "coldefexpr", + 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SelectStmt, rarg), - &pg_query__select_stmt__descriptor, + offsetof(PgQuery__RangeTableFuncCol, coldefexpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__select_stmt__field_indices_by_name[] = { - 17, /* field[17] = all */ - 0, /* field[0] = distinct_clause */ - 3, /* field[3] = from_clause */ - 5, /* field[5] = group_clause */ - 6, /* field[6] = group_distinct */ - 7, /* field[7] = having_clause */ - 1, /* field[1] = into_clause */ - 18, /* field[18] = larg */ - 12, /* field[12] = limit_count */ - 11, /* field[11] = limit_offset */ - 13, /* field[13] = limit_option */ - 14, /* field[14] = locking_clause */ - 16, /* field[16] = op */ - 19, /* field[19] = rarg */ - 10, /* field[10] = sort_clause */ - 2, /* field[2] = target_list */ - 9, /* field[9] = values_lists */ - 4, /* field[4] = where_clause */ - 8, /* field[8] = window_clause */ - 15, /* field[15] = with_clause */ -}; -static const ProtobufCIntRange pg_query__select_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 20 } -}; -const ProtobufCMessageDescriptor pg_query__select_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SelectStmt", - "SelectStmt", - "PgQuery__SelectStmt", - "pg_query", - sizeof(PgQuery__SelectStmt), - 20, - pg_query__select_stmt__field_descriptors, - pg_query__select_stmt__field_indices_by_name, - 1, pg_query__select_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__select_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__return_stmt__field_descriptors[1] = -{ { - "returnval", - 1, + "location", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ReturnStmt, returnval), - &pg_query__node__descriptor, + offsetof(PgQuery__RangeTableFuncCol, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__return_stmt__field_indices_by_name[] = { - 0, /* field[0] = returnval */ +static const unsigned pg_query__range_table_func_col__field_indices_by_name[] = { + 5, /* field[5] = coldefexpr */ + 4, /* field[4] = colexpr */ + 0, /* field[0] = colname */ + 2, /* field[2] = for_ordinality */ + 3, /* field[3] = is_not_null */ + 6, /* field[6] = location */ + 1, /* field[1] = type_name */ }; -static const ProtobufCIntRange pg_query__return_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__range_table_func_col__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__return_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__range_table_func_col__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ReturnStmt", - "ReturnStmt", - "PgQuery__ReturnStmt", + "pg_query.RangeTableFuncCol", + "RangeTableFuncCol", + "PgQuery__RangeTableFuncCol", "pg_query", - sizeof(PgQuery__ReturnStmt), - 1, - pg_query__return_stmt__field_descriptors, - pg_query__return_stmt__field_indices_by_name, - 1, pg_query__return_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__return_stmt__init, + sizeof(PgQuery__RangeTableFuncCol), + 7, + pg_query__range_table_func_col__field_descriptors, + pg_query__range_table_func_col__field_indices_by_name, + 1, pg_query__range_table_func_col__number_ranges, + (ProtobufCMessageInit) pg_query__range_table_func_col__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__plassign_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__range_table_sample__field_descriptors[5] = { { - "name", + "relation", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__PLAssignStmt, name), + offsetof(PgQuery__RangeTableSample, relation), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "indirection", + "method", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__PLAssignStmt, n_indirection), - offsetof(PgQuery__PLAssignStmt, indirection), + offsetof(PgQuery__RangeTableSample, n_method), + offsetof(PgQuery__RangeTableSample, method), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "nnames", + "args", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__PLAssignStmt, nnames), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RangeTableSample, n_args), + offsetof(PgQuery__RangeTableSample, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "val", + "repeatable", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__PLAssignStmt, val), - &pg_query__select_stmt__descriptor, + offsetof(PgQuery__RangeTableSample, repeatable), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ @@ -21738,5589 +23618,5377 @@ static const ProtobufCFieldDescriptor pg_query__plassign_stmt__field_descriptors PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__PLAssignStmt, location), + offsetof(PgQuery__RangeTableSample, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__plassign_stmt__field_indices_by_name[] = { - 1, /* field[1] = indirection */ +static const unsigned pg_query__range_table_sample__field_indices_by_name[] = { + 2, /* field[2] = args */ 4, /* field[4] = location */ - 0, /* field[0] = name */ - 2, /* field[2] = nnames */ - 3, /* field[3] = val */ + 1, /* field[1] = method */ + 0, /* field[0] = relation */ + 3, /* field[3] = repeatable */ }; -static const ProtobufCIntRange pg_query__plassign_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__range_table_sample__number_ranges[1 + 1] = { { 1, 0 }, { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__plassign_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__range_table_sample__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.PLAssignStmt", - "PLAssignStmt", - "PgQuery__PLAssignStmt", + "pg_query.RangeTableSample", + "RangeTableSample", + "PgQuery__RangeTableSample", "pg_query", - sizeof(PgQuery__PLAssignStmt), + sizeof(PgQuery__RangeTableSample), 5, - pg_query__plassign_stmt__field_descriptors, - pg_query__plassign_stmt__field_indices_by_name, - 1, pg_query__plassign_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__plassign_stmt__init, + pg_query__range_table_sample__field_descriptors, + pg_query__range_table_sample__field_indices_by_name, + 1, pg_query__range_table_sample__number_ranges, + (ProtobufCMessageInit) pg_query__range_table_sample__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_table_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__column_def__field_descriptors[19] = { { - "relation", + "colname", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__ColumnDef, colname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cmds", + "type_name", 2, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTableStmt, n_cmds), - offsetof(PgQuery__AlterTableStmt, cmds), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__ColumnDef, type_name), + &pg_query__type_name__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "objtype", + "compression", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableStmt, objtype), - &pg_query__object_type__descriptor, + offsetof(PgQuery__ColumnDef, compression), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", + "inhcount", 4, PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__ColumnDef, inhcount), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "is_local", + 5, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableStmt, missing_ok), + offsetof(PgQuery__ColumnDef, is_local), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alter_table_stmt__field_indices_by_name[] = { - 1, /* field[1] = cmds */ - 3, /* field[3] = missing_ok */ - 2, /* field[2] = objtype */ - 0, /* field[0] = relation */ -}; -static const ProtobufCIntRange pg_query__alter_table_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 4 } -}; -const ProtobufCMessageDescriptor pg_query__alter_table_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterTableStmt", - "AlterTableStmt", - "PgQuery__AlterTableStmt", - "pg_query", - sizeof(PgQuery__AlterTableStmt), - 4, - pg_query__alter_table_stmt__field_descriptors, - pg_query__alter_table_stmt__field_indices_by_name, - 1, pg_query__alter_table_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_table_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_table_cmd__field_descriptors[8] = -{ { - "subtype", - 1, + "is_not_null", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableCmd, subtype), - &pg_query__alter_table_type__descriptor, + offsetof(PgQuery__ColumnDef, is_not_null), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "name", - 2, + "is_from_type", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__ColumnDef, is_from_type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "storage", + 8, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableCmd, name), + offsetof(PgQuery__ColumnDef, storage), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "num", - 3, + "storage_name", + 9, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableCmd, num), - NULL, + offsetof(PgQuery__ColumnDef, storage_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "newowner", - 4, + "raw_default", + 10, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableCmd, newowner), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__ColumnDef, raw_default), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "def", - 5, + "cooked_default", + 11, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableCmd, def), + offsetof(PgQuery__ColumnDef, cooked_default), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "behavior", - 6, + "identity", + 12, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableCmd, behavior), - &pg_query__drop_behavior__descriptor, + offsetof(PgQuery__ColumnDef, identity), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", - 7, + "identity_sequence", + 13, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableCmd, missing_ok), - NULL, + offsetof(PgQuery__ColumnDef, identity_sequence), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "recurse", - 8, + "generated", + 14, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableCmd, recurse), + offsetof(PgQuery__ColumnDef, generated), NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "coll_clause", + 15, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__ColumnDef, coll_clause), + &pg_query__collate_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alter_table_cmd__field_indices_by_name[] = { - 5, /* field[5] = behavior */ - 4, /* field[4] = def */ - 6, /* field[6] = missing_ok */ - 1, /* field[1] = name */ - 3, /* field[3] = newowner */ - 2, /* field[2] = num */ - 7, /* field[7] = recurse */ - 0, /* field[0] = subtype */ -}; -static const ProtobufCIntRange pg_query__alter_table_cmd__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 8 } -}; -const ProtobufCMessageDescriptor pg_query__alter_table_cmd__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterTableCmd", - "AlterTableCmd", - "PgQuery__AlterTableCmd", - "pg_query", - sizeof(PgQuery__AlterTableCmd), - 8, - pg_query__alter_table_cmd__field_descriptors, - pg_query__alter_table_cmd__field_indices_by_name, - 1, pg_query__alter_table_cmd__number_ranges, - (ProtobufCMessageInit) pg_query__alter_table_cmd__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_domain_stmt__field_descriptors[6] = -{ { - "subtype", - 1, + "coll_oid", + 16, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDomainStmt, subtype), + offsetof(PgQuery__ColumnDef, coll_oid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "constraints", + 17, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ColumnDef, n_constraints), + offsetof(PgQuery__ColumnDef, constraints), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_name", - 2, + "fdwoptions", + 18, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterDomainStmt, n_type_name), - offsetof(PgQuery__AlterDomainStmt, type_name), + offsetof(PgQuery__ColumnDef, n_fdwoptions), + offsetof(PgQuery__ColumnDef, fdwoptions), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "name", - 3, + "location", + 19, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDomainStmt, name), + offsetof(PgQuery__ColumnDef, location), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__column_def__field_indices_by_name[] = { + 14, /* field[14] = coll_clause */ + 15, /* field[15] = coll_oid */ + 0, /* field[0] = colname */ + 2, /* field[2] = compression */ + 16, /* field[16] = constraints */ + 10, /* field[10] = cooked_default */ + 17, /* field[17] = fdwoptions */ + 13, /* field[13] = generated */ + 11, /* field[11] = identity */ + 12, /* field[12] = identity_sequence */ + 3, /* field[3] = inhcount */ + 6, /* field[6] = is_from_type */ + 4, /* field[4] = is_local */ + 5, /* field[5] = is_not_null */ + 18, /* field[18] = location */ + 9, /* field[9] = raw_default */ + 7, /* field[7] = storage */ + 8, /* field[8] = storage_name */ + 1, /* field[1] = type_name */ +}; +static const ProtobufCIntRange pg_query__column_def__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 19 } +}; +const ProtobufCMessageDescriptor pg_query__column_def__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.ColumnDef", + "ColumnDef", + "PgQuery__ColumnDef", + "pg_query", + sizeof(PgQuery__ColumnDef), + 19, + pg_query__column_def__field_descriptors, + pg_query__column_def__field_indices_by_name, + 1, pg_query__column_def__number_ranges, + (ProtobufCMessageInit) pg_query__column_def__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__table_like_clause__field_descriptors[3] = +{ { - "def", - 4, + "relation", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDomainStmt, def), - &pg_query__node__descriptor, + offsetof(PgQuery__TableLikeClause, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "behavior", - 5, + "options", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDomainStmt, behavior), - &pg_query__drop_behavior__descriptor, + offsetof(PgQuery__TableLikeClause, options), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", - 6, + "relation_oid", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDomainStmt, missing_ok), + offsetof(PgQuery__TableLikeClause, relation_oid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_domain_stmt__field_indices_by_name[] = { - 4, /* field[4] = behavior */ - 3, /* field[3] = def */ - 5, /* field[5] = missing_ok */ - 2, /* field[2] = name */ - 0, /* field[0] = subtype */ - 1, /* field[1] = type_name */ +static const unsigned pg_query__table_like_clause__field_indices_by_name[] = { + 1, /* field[1] = options */ + 0, /* field[0] = relation */ + 2, /* field[2] = relation_oid */ }; -static const ProtobufCIntRange pg_query__alter_domain_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__table_like_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__alter_domain_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__table_like_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterDomainStmt", - "AlterDomainStmt", - "PgQuery__AlterDomainStmt", + "pg_query.TableLikeClause", + "TableLikeClause", + "PgQuery__TableLikeClause", "pg_query", - sizeof(PgQuery__AlterDomainStmt), - 6, - pg_query__alter_domain_stmt__field_descriptors, - pg_query__alter_domain_stmt__field_indices_by_name, - 1, pg_query__alter_domain_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_domain_stmt__init, + sizeof(PgQuery__TableLikeClause), + 3, + pg_query__table_like_clause__field_descriptors, + pg_query__table_like_clause__field_indices_by_name, + 1, pg_query__table_like_clause__number_ranges, + (ProtobufCMessageInit) pg_query__table_like_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__set_operation_stmt__field_descriptors[8] = +static const ProtobufCFieldDescriptor pg_query__index_elem__field_descriptors[8] = { { - "op", + "name", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__SetOperationStmt, op), - &pg_query__set_operation__descriptor, + offsetof(PgQuery__IndexElem, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "all", + "expr", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SetOperationStmt, all), - NULL, + offsetof(PgQuery__IndexElem, expr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "larg", + "indexcolname", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__SetOperationStmt, larg), - &pg_query__node__descriptor, + offsetof(PgQuery__IndexElem, indexcolname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rarg", + "collation", 4, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__SetOperationStmt, rarg), + offsetof(PgQuery__IndexElem, n_collation), + offsetof(PgQuery__IndexElem, collation), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "col_types", + "opclass", 5, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SetOperationStmt, n_col_types), - offsetof(PgQuery__SetOperationStmt, col_types), + offsetof(PgQuery__IndexElem, n_opclass), + offsetof(PgQuery__IndexElem, opclass), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "col_typmods", + "opclassopts", 6, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SetOperationStmt, n_col_typmods), - offsetof(PgQuery__SetOperationStmt, col_typmods), + offsetof(PgQuery__IndexElem, n_opclassopts), + offsetof(PgQuery__IndexElem, opclassopts), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "col_collations", + "ordering", 7, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SetOperationStmt, n_col_collations), - offsetof(PgQuery__SetOperationStmt, col_collations), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__IndexElem, ordering), + &pg_query__sort_by_dir__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "group_clauses", + "nulls_ordering", 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SetOperationStmt, n_group_clauses), - offsetof(PgQuery__SetOperationStmt, group_clauses), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__IndexElem, nulls_ordering), + &pg_query__sort_by_nulls__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__set_operation_stmt__field_indices_by_name[] = { - 1, /* field[1] = all */ - 6, /* field[6] = col_collations */ - 4, /* field[4] = col_types */ - 5, /* field[5] = col_typmods */ - 7, /* field[7] = group_clauses */ - 2, /* field[2] = larg */ - 0, /* field[0] = op */ - 3, /* field[3] = rarg */ +static const unsigned pg_query__index_elem__field_indices_by_name[] = { + 3, /* field[3] = collation */ + 1, /* field[1] = expr */ + 2, /* field[2] = indexcolname */ + 0, /* field[0] = name */ + 7, /* field[7] = nulls_ordering */ + 4, /* field[4] = opclass */ + 5, /* field[5] = opclassopts */ + 6, /* field[6] = ordering */ }; -static const ProtobufCIntRange pg_query__set_operation_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__index_elem__number_ranges[1 + 1] = { { 1, 0 }, { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__set_operation_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__index_elem__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SetOperationStmt", - "SetOperationStmt", - "PgQuery__SetOperationStmt", + "pg_query.IndexElem", + "IndexElem", + "PgQuery__IndexElem", "pg_query", - sizeof(PgQuery__SetOperationStmt), + sizeof(PgQuery__IndexElem), 8, - pg_query__set_operation_stmt__field_descriptors, - pg_query__set_operation_stmt__field_indices_by_name, - 1, pg_query__set_operation_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__set_operation_stmt__init, + pg_query__index_elem__field_descriptors, + pg_query__index_elem__field_indices_by_name, + 1, pg_query__index_elem__number_ranges, + (ProtobufCMessageInit) pg_query__index_elem__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__grant_stmt__field_descriptors[9] = +static const ProtobufCFieldDescriptor pg_query__def_elem__field_descriptors[5] = { { - "is_grant", + "defnamespace", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__GrantStmt, is_grant), - NULL, + offsetof(PgQuery__DefElem, defnamespace), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "targtype", + "defname", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__GrantStmt, targtype), - &pg_query__grant_target_type__descriptor, + offsetof(PgQuery__DefElem, defname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "objtype", + "arg", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__GrantStmt, objtype), - &pg_query__object_type__descriptor, + offsetof(PgQuery__DefElem, arg), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "objects", + "defaction", 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__GrantStmt, n_objects), - offsetof(PgQuery__GrantStmt, objects), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__DefElem, defaction), + &pg_query__def_elem_action__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "privileges", + "location", 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__GrantStmt, n_privileges), - offsetof(PgQuery__GrantStmt, privileges), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__DefElem, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__def_elem__field_indices_by_name[] = { + 2, /* field[2] = arg */ + 3, /* field[3] = defaction */ + 1, /* field[1] = defname */ + 0, /* field[0] = defnamespace */ + 4, /* field[4] = location */ +}; +static const ProtobufCIntRange pg_query__def_elem__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor pg_query__def_elem__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.DefElem", + "DefElem", + "PgQuery__DefElem", + "pg_query", + sizeof(PgQuery__DefElem), + 5, + pg_query__def_elem__field_descriptors, + pg_query__def_elem__field_indices_by_name, + 1, pg_query__def_elem__number_ranges, + (ProtobufCMessageInit) pg_query__def_elem__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__locking_clause__field_descriptors[3] = +{ { - "grantees", - 6, + "locked_rels", + 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__GrantStmt, n_grantees), - offsetof(PgQuery__GrantStmt, grantees), + offsetof(PgQuery__LockingClause, n_locked_rels), + offsetof(PgQuery__LockingClause, locked_rels), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "grant_option", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__GrantStmt, grant_option), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "grantor", - 8, + "strength", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__GrantStmt, grantor), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__LockingClause, strength), + &pg_query__lock_clause_strength__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "behavior", - 9, + "wait_policy", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__GrantStmt, behavior), - &pg_query__drop_behavior__descriptor, + offsetof(PgQuery__LockingClause, wait_policy), + &pg_query__lock_wait_policy__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__grant_stmt__field_indices_by_name[] = { - 8, /* field[8] = behavior */ - 6, /* field[6] = grant_option */ - 5, /* field[5] = grantees */ - 7, /* field[7] = grantor */ - 0, /* field[0] = is_grant */ - 3, /* field[3] = objects */ - 2, /* field[2] = objtype */ - 4, /* field[4] = privileges */ - 1, /* field[1] = targtype */ +static const unsigned pg_query__locking_clause__field_indices_by_name[] = { + 0, /* field[0] = locked_rels */ + 1, /* field[1] = strength */ + 2, /* field[2] = wait_policy */ }; -static const ProtobufCIntRange pg_query__grant_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__locking_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 9 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__grant_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__locking_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.GrantStmt", - "GrantStmt", - "PgQuery__GrantStmt", + "pg_query.LockingClause", + "LockingClause", + "PgQuery__LockingClause", "pg_query", - sizeof(PgQuery__GrantStmt), - 9, - pg_query__grant_stmt__field_descriptors, - pg_query__grant_stmt__field_indices_by_name, - 1, pg_query__grant_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__grant_stmt__init, + sizeof(PgQuery__LockingClause), + 3, + pg_query__locking_clause__field_descriptors, + pg_query__locking_clause__field_indices_by_name, + 1, pg_query__locking_clause__number_ranges, + (ProtobufCMessageInit) pg_query__locking_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__grant_role_stmt__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__xml_serialize__field_descriptors[5] = { { - "granted_roles", + "xmloption", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__GrantRoleStmt, n_granted_roles), - offsetof(PgQuery__GrantRoleStmt, granted_roles), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__XmlSerialize, xmloption), + &pg_query__xml_option_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "grantee_roles", + "expr", 2, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__GrantRoleStmt, n_grantee_roles), - offsetof(PgQuery__GrantRoleStmt, grantee_roles), + 0, /* quantifier_offset */ + offsetof(PgQuery__XmlSerialize, expr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_grant", + "type_name", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__GrantRoleStmt, is_grant), - NULL, + offsetof(PgQuery__XmlSerialize, type_name), + &pg_query__type_name__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "admin_opt", + "indent", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__GrantRoleStmt, admin_opt), + offsetof(PgQuery__XmlSerialize, indent), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "grantor", + "location", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__GrantRoleStmt, grantor), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__XmlSerialize, location), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "behavior", - 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__GrantRoleStmt, behavior), - &pg_query__drop_behavior__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__grant_role_stmt__field_indices_by_name[] = { - 3, /* field[3] = admin_opt */ - 5, /* field[5] = behavior */ - 0, /* field[0] = granted_roles */ - 1, /* field[1] = grantee_roles */ - 4, /* field[4] = grantor */ - 2, /* field[2] = is_grant */ +static const unsigned pg_query__xml_serialize__field_indices_by_name[] = { + 1, /* field[1] = expr */ + 3, /* field[3] = indent */ + 4, /* field[4] = location */ + 2, /* field[2] = type_name */ + 0, /* field[0] = xmloption */ }; -static const ProtobufCIntRange pg_query__grant_role_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__xml_serialize__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__grant_role_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__xml_serialize__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.GrantRoleStmt", - "GrantRoleStmt", - "PgQuery__GrantRoleStmt", + "pg_query.XmlSerialize", + "XmlSerialize", + "PgQuery__XmlSerialize", "pg_query", - sizeof(PgQuery__GrantRoleStmt), - 6, - pg_query__grant_role_stmt__field_descriptors, - pg_query__grant_role_stmt__field_indices_by_name, - 1, pg_query__grant_role_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__grant_role_stmt__init, + sizeof(PgQuery__XmlSerialize), + 5, + pg_query__xml_serialize__field_descriptors, + pg_query__xml_serialize__field_indices_by_name, + 1, pg_query__xml_serialize__number_ranges, + (ProtobufCMessageInit) pg_query__xml_serialize__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_default_privileges_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__partition_elem__field_descriptors[5] = { { - "options", + "name", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterDefaultPrivilegesStmt, n_options), - offsetof(PgQuery__AlterDefaultPrivilegesStmt, options), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__PartitionElem, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "action", + "expr", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDefaultPrivilegesStmt, action), - &pg_query__grant_stmt__descriptor, + offsetof(PgQuery__PartitionElem, expr), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "collation", + 3, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__PartitionElem, n_collation), + offsetof(PgQuery__PartitionElem, collation), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alter_default_privileges_stmt__field_indices_by_name[] = { - 1, /* field[1] = action */ - 0, /* field[0] = options */ -}; -static const ProtobufCIntRange pg_query__alter_default_privileges_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__alter_default_privileges_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterDefaultPrivilegesStmt", - "AlterDefaultPrivilegesStmt", - "PgQuery__AlterDefaultPrivilegesStmt", - "pg_query", - sizeof(PgQuery__AlterDefaultPrivilegesStmt), - 2, - pg_query__alter_default_privileges_stmt__field_descriptors, - pg_query__alter_default_privileges_stmt__field_indices_by_name, - 1, pg_query__alter_default_privileges_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_default_privileges_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__close_portal_stmt__field_descriptors[1] = -{ { - "portalname", - 1, + "opclass", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__PartitionElem, n_opclass), + offsetof(PgQuery__PartitionElem, opclass), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "location", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ClosePortalStmt, portalname), + offsetof(PgQuery__PartitionElem, location), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__close_portal_stmt__field_indices_by_name[] = { - 0, /* field[0] = portalname */ +static const unsigned pg_query__partition_elem__field_indices_by_name[] = { + 2, /* field[2] = collation */ + 1, /* field[1] = expr */ + 4, /* field[4] = location */ + 0, /* field[0] = name */ + 3, /* field[3] = opclass */ }; -static const ProtobufCIntRange pg_query__close_portal_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__partition_elem__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__close_portal_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__partition_elem__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ClosePortalStmt", - "ClosePortalStmt", - "PgQuery__ClosePortalStmt", + "pg_query.PartitionElem", + "PartitionElem", + "PgQuery__PartitionElem", "pg_query", - sizeof(PgQuery__ClosePortalStmt), - 1, - pg_query__close_portal_stmt__field_descriptors, - pg_query__close_portal_stmt__field_indices_by_name, - 1, pg_query__close_portal_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__close_portal_stmt__init, + sizeof(PgQuery__PartitionElem), + 5, + pg_query__partition_elem__field_descriptors, + pg_query__partition_elem__field_indices_by_name, + 1, pg_query__partition_elem__number_ranges, + (ProtobufCMessageInit) pg_query__partition_elem__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__cluster_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__partition_spec__field_descriptors[3] = { { - "relation", + "strategy", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ClusterStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__PartitionSpec, strategy), + &pg_query__partition_strategy__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "indexname", + "part_params", 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__ClusterStmt, indexname), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__PartitionSpec, n_part_params), + offsetof(PgQuery__PartitionSpec, part_params), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "params", + "location", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ClusterStmt, n_params), - offsetof(PgQuery__ClusterStmt, params), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__PartitionSpec, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__cluster_stmt__field_indices_by_name[] = { - 1, /* field[1] = indexname */ - 2, /* field[2] = params */ - 0, /* field[0] = relation */ +static const unsigned pg_query__partition_spec__field_indices_by_name[] = { + 2, /* field[2] = location */ + 1, /* field[1] = part_params */ + 0, /* field[0] = strategy */ }; -static const ProtobufCIntRange pg_query__cluster_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__partition_spec__number_ranges[1 + 1] = { { 1, 0 }, { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__cluster_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__partition_spec__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ClusterStmt", - "ClusterStmt", - "PgQuery__ClusterStmt", + "pg_query.PartitionSpec", + "PartitionSpec", + "PgQuery__PartitionSpec", "pg_query", - sizeof(PgQuery__ClusterStmt), + sizeof(PgQuery__PartitionSpec), 3, - pg_query__cluster_stmt__field_descriptors, - pg_query__cluster_stmt__field_indices_by_name, - 1, pg_query__cluster_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__cluster_stmt__init, + pg_query__partition_spec__field_descriptors, + pg_query__partition_spec__field_indices_by_name, + 1, pg_query__partition_spec__number_ranges, + (ProtobufCMessageInit) pg_query__partition_spec__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__copy_stmt__field_descriptors[8] = +static const ProtobufCFieldDescriptor pg_query__partition_bound_spec__field_descriptors[8] = { { - "relation", + "strategy", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CopyStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__PartitionBoundSpec, strategy), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "query", + "is_default", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CopyStmt, query), - &pg_query__node__descriptor, + offsetof(PgQuery__PartitionBoundSpec, is_default), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "attlist", + "modulus", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CopyStmt, n_attlist), - offsetof(PgQuery__CopyStmt, attlist), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__PartitionBoundSpec, modulus), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_from", + "remainder", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CopyStmt, is_from), + offsetof(PgQuery__PartitionBoundSpec, remainder), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_program", + "listdatums", 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__CopyStmt, is_program), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__PartitionBoundSpec, n_listdatums), + offsetof(PgQuery__PartitionBoundSpec, listdatums), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "filename", + "lowerdatums", 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CopyStmt, filename), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__PartitionBoundSpec, n_lowerdatums), + offsetof(PgQuery__PartitionBoundSpec, lowerdatums), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "upperdatums", 7, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CopyStmt, n_options), - offsetof(PgQuery__CopyStmt, options), + offsetof(PgQuery__PartitionBoundSpec, n_upperdatums), + offsetof(PgQuery__PartitionBoundSpec, upperdatums), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "where_clause", + "location", 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CopyStmt, where_clause), - &pg_query__node__descriptor, + offsetof(PgQuery__PartitionBoundSpec, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__copy_stmt__field_indices_by_name[] = { - 2, /* field[2] = attlist */ - 5, /* field[5] = filename */ - 3, /* field[3] = is_from */ - 4, /* field[4] = is_program */ - 6, /* field[6] = options */ - 1, /* field[1] = query */ - 0, /* field[0] = relation */ - 7, /* field[7] = where_clause */ +static const unsigned pg_query__partition_bound_spec__field_indices_by_name[] = { + 1, /* field[1] = is_default */ + 4, /* field[4] = listdatums */ + 7, /* field[7] = location */ + 5, /* field[5] = lowerdatums */ + 2, /* field[2] = modulus */ + 3, /* field[3] = remainder */ + 0, /* field[0] = strategy */ + 6, /* field[6] = upperdatums */ }; -static const ProtobufCIntRange pg_query__copy_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__partition_bound_spec__number_ranges[1 + 1] = { { 1, 0 }, { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__copy_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__partition_bound_spec__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CopyStmt", - "CopyStmt", - "PgQuery__CopyStmt", + "pg_query.PartitionBoundSpec", + "PartitionBoundSpec", + "PgQuery__PartitionBoundSpec", "pg_query", - sizeof(PgQuery__CopyStmt), + sizeof(PgQuery__PartitionBoundSpec), 8, - pg_query__copy_stmt__field_descriptors, - pg_query__copy_stmt__field_indices_by_name, - 1, pg_query__copy_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__copy_stmt__init, + pg_query__partition_bound_spec__field_descriptors, + pg_query__partition_bound_spec__field_indices_by_name, + 1, pg_query__partition_bound_spec__number_ranges, + (ProtobufCMessageInit) pg_query__partition_bound_spec__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_stmt__field_descriptors[12] = +static const ProtobufCFieldDescriptor pg_query__partition_range_datum__field_descriptors[3] = { { - "relation", + "kind", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__PartitionRangeDatum, kind), + &pg_query__partition_range_datum_kind__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "table_elts", + "value", 2, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateStmt, n_table_elts), - offsetof(PgQuery__CreateStmt, table_elts), + 0, /* quantifier_offset */ + offsetof(PgQuery__PartitionRangeDatum, value), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inh_relations", + "location", 3, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__PartitionRangeDatum, location), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__partition_range_datum__field_indices_by_name[] = { + 0, /* field[0] = kind */ + 2, /* field[2] = location */ + 1, /* field[1] = value */ +}; +static const ProtobufCIntRange pg_query__partition_range_datum__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__partition_range_datum__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.PartitionRangeDatum", + "PartitionRangeDatum", + "PgQuery__PartitionRangeDatum", + "pg_query", + sizeof(PgQuery__PartitionRangeDatum), + 3, + pg_query__partition_range_datum__field_descriptors, + pg_query__partition_range_datum__field_indices_by_name, + 1, pg_query__partition_range_datum__number_ranges, + (ProtobufCMessageInit) pg_query__partition_range_datum__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__partition_cmd__field_descriptors[3] = +{ + { + "name", + 1, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateStmt, n_inh_relations), - offsetof(PgQuery__CreateStmt, inh_relations), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__PartitionCmd, name), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "partbound", - 4, + "bound", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStmt, partbound), + offsetof(PgQuery__PartitionCmd, bound), &pg_query__partition_bound_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "partspec", - 5, + "concurrent", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStmt, partspec), - &pg_query__partition_spec__descriptor, + offsetof(PgQuery__PartitionCmd, concurrent), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__partition_cmd__field_indices_by_name[] = { + 1, /* field[1] = bound */ + 2, /* field[2] = concurrent */ + 0, /* field[0] = name */ +}; +static const ProtobufCIntRange pg_query__partition_cmd__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__partition_cmd__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.PartitionCmd", + "PartitionCmd", + "PgQuery__PartitionCmd", + "pg_query", + sizeof(PgQuery__PartitionCmd), + 3, + pg_query__partition_cmd__field_descriptors, + pg_query__partition_cmd__field_indices_by_name, + 1, pg_query__partition_cmd__number_ranges, + (ProtobufCMessageInit) pg_query__partition_cmd__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__range_tbl_entry__field_descriptors[32] = +{ { - "of_typename", - 6, + "rtekind", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStmt, of_typename), - &pg_query__type_name__descriptor, + offsetof(PgQuery__RangeTblEntry, rtekind), + &pg_query__rtekind__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "constraints", - 7, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateStmt, n_constraints), - offsetof(PgQuery__CreateStmt, constraints), - &pg_query__node__descriptor, + "relid", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeTblEntry, relid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateStmt, n_options), - offsetof(PgQuery__CreateStmt, options), - &pg_query__node__descriptor, + "relkind", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeTblEntry, relkind), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "oncommit", - 9, + "rellockmode", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStmt, oncommit), - &pg_query__on_commit_action__descriptor, + offsetof(PgQuery__RangeTblEntry, rellockmode), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "tablespacename", - 10, + "tablesample", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStmt, tablespacename), + offsetof(PgQuery__RangeTblEntry, tablesample), + &pg_query__table_sample_clause__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "access_method", - 11, + "perminfoindex", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStmt, access_method), + offsetof(PgQuery__RangeTblEntry, perminfoindex), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", - 12, + "subquery", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeTblEntry, subquery), + &pg_query__query__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "security_barrier", + 8, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStmt, if_not_exists), + offsetof(PgQuery__RangeTblEntry, security_barrier), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_stmt__field_indices_by_name[] = { - 10, /* field[10] = access_method */ - 6, /* field[6] = constraints */ - 11, /* field[11] = if_not_exists */ - 2, /* field[2] = inh_relations */ - 5, /* field[5] = of_typename */ - 8, /* field[8] = oncommit */ - 7, /* field[7] = options */ - 3, /* field[3] = partbound */ - 4, /* field[4] = partspec */ - 0, /* field[0] = relation */ - 1, /* field[1] = table_elts */ - 9, /* field[9] = tablespacename */ -}; -static const ProtobufCIntRange pg_query__create_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 12 } -}; -const ProtobufCMessageDescriptor pg_query__create_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateStmt", - "CreateStmt", - "PgQuery__CreateStmt", - "pg_query", - sizeof(PgQuery__CreateStmt), - 12, - pg_query__create_stmt__field_descriptors, - pg_query__create_stmt__field_indices_by_name, - 1, pg_query__create_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__define_stmt__field_descriptors[7] = -{ { - "kind", - 1, + "jointype", + 9, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__DefineStmt, kind), - &pg_query__object_type__descriptor, + offsetof(PgQuery__RangeTblEntry, jointype), + &pg_query__join_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "oldstyle", - 2, + "joinmergedcols", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__DefineStmt, oldstyle), + offsetof(PgQuery__RangeTblEntry, joinmergedcols), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "defnames", - 3, + "joinaliasvars", + 11, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DefineStmt, n_defnames), - offsetof(PgQuery__DefineStmt, defnames), + offsetof(PgQuery__RangeTblEntry, n_joinaliasvars), + offsetof(PgQuery__RangeTblEntry, joinaliasvars), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", - 4, + "joinleftcols", + 12, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RangeTblEntry, n_joinleftcols), + offsetof(PgQuery__RangeTblEntry, joinleftcols), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "joinrightcols", + 13, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DefineStmt, n_args), - offsetof(PgQuery__DefineStmt, args), - &pg_query__node__descriptor, + offsetof(PgQuery__RangeTblEntry, n_joinrightcols), + offsetof(PgQuery__RangeTblEntry, joinrightcols), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "join_using_alias", + 14, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__RangeTblEntry, join_using_alias), + &pg_query__alias__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "definition", - 5, + "functions", + 15, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DefineStmt, n_definition), - offsetof(PgQuery__DefineStmt, definition), + offsetof(PgQuery__RangeTblEntry, n_functions), + offsetof(PgQuery__RangeTblEntry, functions), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", - 6, + "funcordinality", + 16, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DefineStmt, if_not_exists), + offsetof(PgQuery__RangeTblEntry, funcordinality), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "replace", - 7, + "tablefunc", + 17, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__DefineStmt, replace), - NULL, + offsetof(PgQuery__RangeTblEntry, tablefunc), + &pg_query__table_func__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__define_stmt__field_indices_by_name[] = { - 3, /* field[3] = args */ - 4, /* field[4] = definition */ - 2, /* field[2] = defnames */ - 5, /* field[5] = if_not_exists */ - 0, /* field[0] = kind */ - 1, /* field[1] = oldstyle */ - 6, /* field[6] = replace */ -}; -static const ProtobufCIntRange pg_query__define_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 7 } -}; -const ProtobufCMessageDescriptor pg_query__define_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DefineStmt", - "DefineStmt", - "PgQuery__DefineStmt", - "pg_query", - sizeof(PgQuery__DefineStmt), - 7, - pg_query__define_stmt__field_descriptors, - pg_query__define_stmt__field_indices_by_name, - 1, pg_query__define_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__define_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__drop_stmt__field_descriptors[5] = -{ { - "objects", - 1, + "values_lists", + 18, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DropStmt, n_objects), - offsetof(PgQuery__DropStmt, objects), + offsetof(PgQuery__RangeTblEntry, n_values_lists), + offsetof(PgQuery__RangeTblEntry, values_lists), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "remove_type", - 2, + "ctename", + 19, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__DropStmt, remove_type), - &pg_query__object_type__descriptor, + offsetof(PgQuery__RangeTblEntry, ctename), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "behavior", - 3, + "ctelevelsup", + 20, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__DropStmt, behavior), - &pg_query__drop_behavior__descriptor, + offsetof(PgQuery__RangeTblEntry, ctelevelsup), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", - 4, + "self_reference", + 21, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DropStmt, missing_ok), + offsetof(PgQuery__RangeTblEntry, self_reference), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "concurrent", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__DropStmt, concurrent), - NULL, + "coltypes", + 22, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RangeTblEntry, n_coltypes), + offsetof(PgQuery__RangeTblEntry, coltypes), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__drop_stmt__field_indices_by_name[] = { - 2, /* field[2] = behavior */ - 4, /* field[4] = concurrent */ - 3, /* field[3] = missing_ok */ - 0, /* field[0] = objects */ - 1, /* field[1] = remove_type */ -}; -static const ProtobufCIntRange pg_query__drop_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 5 } -}; -const ProtobufCMessageDescriptor pg_query__drop_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DropStmt", - "DropStmt", - "PgQuery__DropStmt", - "pg_query", - sizeof(PgQuery__DropStmt), - 5, - pg_query__drop_stmt__field_descriptors, - pg_query__drop_stmt__field_indices_by_name, - 1, pg_query__drop_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__drop_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__truncate_stmt__field_descriptors[3] = -{ { - "relations", - 1, + "coltypmods", + 23, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TruncateStmt, n_relations), - offsetof(PgQuery__TruncateStmt, relations), + offsetof(PgQuery__RangeTblEntry, n_coltypmods), + offsetof(PgQuery__RangeTblEntry, coltypmods), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "restart_seqs", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__TruncateStmt, restart_seqs), - NULL, + "colcollations", + 24, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RangeTblEntry, n_colcollations), + offsetof(PgQuery__RangeTblEntry, colcollations), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "behavior", - 3, + "enrname", + 25, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__TruncateStmt, behavior), - &pg_query__drop_behavior__descriptor, + offsetof(PgQuery__RangeTblEntry, enrname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__truncate_stmt__field_indices_by_name[] = { - 2, /* field[2] = behavior */ - 0, /* field[0] = relations */ - 1, /* field[1] = restart_seqs */ -}; -static const ProtobufCIntRange pg_query__truncate_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__truncate_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.TruncateStmt", - "TruncateStmt", - "PgQuery__TruncateStmt", - "pg_query", - sizeof(PgQuery__TruncateStmt), - 3, - pg_query__truncate_stmt__field_descriptors, - pg_query__truncate_stmt__field_indices_by_name, - 1, pg_query__truncate_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__truncate_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__comment_stmt__field_descriptors[3] = -{ { - "objtype", - 1, + "enrtuples", + 26, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_DOUBLE, 0, /* quantifier_offset */ - offsetof(PgQuery__CommentStmt, objtype), - &pg_query__object_type__descriptor, + offsetof(PgQuery__RangeTblEntry, enrtuples), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "object", - 2, + "alias", + 27, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CommentStmt, object), - &pg_query__node__descriptor, + offsetof(PgQuery__RangeTblEntry, alias), + &pg_query__alias__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "comment", - 3, + "eref", + 28, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CommentStmt, comment), + offsetof(PgQuery__RangeTblEntry, eref), + &pg_query__alias__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__comment_stmt__field_indices_by_name[] = { - 2, /* field[2] = comment */ - 1, /* field[1] = object */ - 0, /* field[0] = objtype */ -}; -static const ProtobufCIntRange pg_query__comment_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__comment_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CommentStmt", - "CommentStmt", - "PgQuery__CommentStmt", - "pg_query", - sizeof(PgQuery__CommentStmt), - 3, - pg_query__comment_stmt__field_descriptors, - pg_query__comment_stmt__field_indices_by_name, - 1, pg_query__comment_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__comment_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__fetch_stmt__field_descriptors[4] = -{ { - "direction", - 1, + "lateral", + 29, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__FetchStmt, direction), - &pg_query__fetch_direction__descriptor, + offsetof(PgQuery__RangeTblEntry, lateral), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "how_many", - 2, + "inh", + 30, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT64, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__FetchStmt, how_many), + offsetof(PgQuery__RangeTblEntry, inh), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "portalname", - 3, + "in_from_cl", + 31, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__FetchStmt, portalname), + offsetof(PgQuery__RangeTblEntry, in_from_cl), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ismove", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__FetchStmt, ismove), - NULL, + "security_quals", + 32, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RangeTblEntry, n_security_quals), + offsetof(PgQuery__RangeTblEntry, security_quals), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__fetch_stmt__field_indices_by_name[] = { - 0, /* field[0] = direction */ - 1, /* field[1] = how_many */ - 3, /* field[3] = ismove */ - 2, /* field[2] = portalname */ +static const unsigned pg_query__range_tbl_entry__field_indices_by_name[] = { + 26, /* field[26] = alias */ + 23, /* field[23] = colcollations */ + 21, /* field[21] = coltypes */ + 22, /* field[22] = coltypmods */ + 19, /* field[19] = ctelevelsup */ + 18, /* field[18] = ctename */ + 24, /* field[24] = enrname */ + 25, /* field[25] = enrtuples */ + 27, /* field[27] = eref */ + 15, /* field[15] = funcordinality */ + 14, /* field[14] = functions */ + 30, /* field[30] = in_from_cl */ + 29, /* field[29] = inh */ + 13, /* field[13] = join_using_alias */ + 10, /* field[10] = joinaliasvars */ + 11, /* field[11] = joinleftcols */ + 9, /* field[9] = joinmergedcols */ + 12, /* field[12] = joinrightcols */ + 8, /* field[8] = jointype */ + 28, /* field[28] = lateral */ + 5, /* field[5] = perminfoindex */ + 1, /* field[1] = relid */ + 2, /* field[2] = relkind */ + 3, /* field[3] = rellockmode */ + 0, /* field[0] = rtekind */ + 7, /* field[7] = security_barrier */ + 31, /* field[31] = security_quals */ + 20, /* field[20] = self_reference */ + 6, /* field[6] = subquery */ + 16, /* field[16] = tablefunc */ + 4, /* field[4] = tablesample */ + 17, /* field[17] = values_lists */ }; -static const ProtobufCIntRange pg_query__fetch_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__range_tbl_entry__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 32 } }; -const ProtobufCMessageDescriptor pg_query__fetch_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__range_tbl_entry__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.FetchStmt", - "FetchStmt", - "PgQuery__FetchStmt", + "pg_query.RangeTblEntry", + "RangeTblEntry", + "PgQuery__RangeTblEntry", "pg_query", - sizeof(PgQuery__FetchStmt), - 4, - pg_query__fetch_stmt__field_descriptors, - pg_query__fetch_stmt__field_indices_by_name, - 1, pg_query__fetch_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__fetch_stmt__init, + sizeof(PgQuery__RangeTblEntry), + 32, + pg_query__range_tbl_entry__field_descriptors, + pg_query__range_tbl_entry__field_indices_by_name, + 1, pg_query__range_tbl_entry__number_ranges, + (ProtobufCMessageInit) pg_query__range_tbl_entry__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__index_stmt__field_descriptors[24] = +static const ProtobufCFieldDescriptor pg_query__rtepermission_info__field_descriptors[7] = { { - "idxname", + "relid", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, idxname), + offsetof(PgQuery__RTEPermissionInfo, relid), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relation", + "inh", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__RTEPermissionInfo, inh), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "access_method", + "required_perms", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT64, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, access_method), + offsetof(PgQuery__RTEPermissionInfo, required_perms), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "table_space", + "check_as_user", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, table_space), + offsetof(PgQuery__RTEPermissionInfo, check_as_user), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "index_params", + "selected_cols", 5, PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IndexStmt, n_index_params), - offsetof(PgQuery__IndexStmt, index_params), - &pg_query__node__descriptor, + PROTOBUF_C_TYPE_UINT64, + offsetof(PgQuery__RTEPermissionInfo, n_selected_cols), + offsetof(PgQuery__RTEPermissionInfo, selected_cols), NULL, - 0, /* flags */ + NULL, + PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "index_including_params", + "inserted_cols", 6, PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IndexStmt, n_index_including_params), - offsetof(PgQuery__IndexStmt, index_including_params), - &pg_query__node__descriptor, + PROTOBUF_C_TYPE_UINT64, + offsetof(PgQuery__RTEPermissionInfo, n_inserted_cols), + offsetof(PgQuery__RTEPermissionInfo, inserted_cols), NULL, - 0, /* flags */ + NULL, + PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "updated_cols", 7, PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IndexStmt, n_options), - offsetof(PgQuery__IndexStmt, options), - &pg_query__node__descriptor, + PROTOBUF_C_TYPE_UINT64, + offsetof(PgQuery__RTEPermissionInfo, n_updated_cols), + offsetof(PgQuery__RTEPermissionInfo, updated_cols), NULL, - 0, /* flags */ + NULL, + PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__rtepermission_info__field_indices_by_name[] = { + 3, /* field[3] = check_as_user */ + 1, /* field[1] = inh */ + 5, /* field[5] = inserted_cols */ + 0, /* field[0] = relid */ + 2, /* field[2] = required_perms */ + 4, /* field[4] = selected_cols */ + 6, /* field[6] = updated_cols */ +}; +static const ProtobufCIntRange pg_query__rtepermission_info__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__rtepermission_info__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.RTEPermissionInfo", + "RTEPermissionInfo", + "PgQuery__RTEPermissionInfo", + "pg_query", + sizeof(PgQuery__RTEPermissionInfo), + 7, + pg_query__rtepermission_info__field_descriptors, + pg_query__rtepermission_info__field_indices_by_name, + 1, pg_query__rtepermission_info__number_ranges, + (ProtobufCMessageInit) pg_query__rtepermission_info__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__range_tbl_function__field_descriptors[7] = +{ { - "where_clause", - 8, + "funcexpr", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, where_clause), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "exclude_op_names", - 9, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IndexStmt, n_exclude_op_names), - offsetof(PgQuery__IndexStmt, exclude_op_names), + offsetof(PgQuery__RangeTblFunction, funcexpr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "idxcomment", - 10, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, idxcomment), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "index_oid", - 11, + "funccolcount", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, index_oid), + offsetof(PgQuery__RangeTblFunction, funccolcount), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "old_node", - 12, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, old_node), - NULL, + "funccolnames", + 3, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RangeTblFunction, n_funccolnames), + offsetof(PgQuery__RangeTblFunction, funccolnames), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "old_create_subid", - 13, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, old_create_subid), - NULL, + "funccoltypes", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RangeTblFunction, n_funccoltypes), + offsetof(PgQuery__RangeTblFunction, funccoltypes), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "old_first_relfilenode_subid", - 14, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, old_first_relfilenode_subid), - NULL, + "funccoltypmods", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RangeTblFunction, n_funccoltypmods), + offsetof(PgQuery__RangeTblFunction, funccoltypmods), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "unique", - 15, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, unique), - NULL, + "funccolcollations", + 6, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__RangeTblFunction, n_funccolcollations), + offsetof(PgQuery__RangeTblFunction, funccolcollations), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "nulls_not_distinct", - 16, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, nulls_not_distinct), + "funcparams", + 7, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_UINT64, + offsetof(PgQuery__RangeTblFunction, n_funcparams), + offsetof(PgQuery__RangeTblFunction, funcparams), NULL, NULL, - 0, /* flags */ + PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__range_tbl_function__field_indices_by_name[] = { + 5, /* field[5] = funccolcollations */ + 1, /* field[1] = funccolcount */ + 2, /* field[2] = funccolnames */ + 3, /* field[3] = funccoltypes */ + 4, /* field[4] = funccoltypmods */ + 0, /* field[0] = funcexpr */ + 6, /* field[6] = funcparams */ +}; +static const ProtobufCIntRange pg_query__range_tbl_function__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__range_tbl_function__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.RangeTblFunction", + "RangeTblFunction", + "PgQuery__RangeTblFunction", + "pg_query", + sizeof(PgQuery__RangeTblFunction), + 7, + pg_query__range_tbl_function__field_descriptors, + pg_query__range_tbl_function__field_indices_by_name, + 1, pg_query__range_tbl_function__number_ranges, + (ProtobufCMessageInit) pg_query__range_tbl_function__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__table_sample_clause__field_descriptors[3] = +{ { - "primary", - 17, + "tsmhandler", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, primary), + offsetof(PgQuery__TableSampleClause, tsmhandler), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "isconstraint", - 18, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, isconstraint), - NULL, + "args", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__TableSampleClause, n_args), + offsetof(PgQuery__TableSampleClause, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "deferrable", - 19, + "repeatable", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, deferrable), - NULL, + offsetof(PgQuery__TableSampleClause, repeatable), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__table_sample_clause__field_indices_by_name[] = { + 1, /* field[1] = args */ + 2, /* field[2] = repeatable */ + 0, /* field[0] = tsmhandler */ +}; +static const ProtobufCIntRange pg_query__table_sample_clause__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__table_sample_clause__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.TableSampleClause", + "TableSampleClause", + "PgQuery__TableSampleClause", + "pg_query", + sizeof(PgQuery__TableSampleClause), + 3, + pg_query__table_sample_clause__field_descriptors, + pg_query__table_sample_clause__field_indices_by_name, + 1, pg_query__table_sample_clause__number_ranges, + (ProtobufCMessageInit) pg_query__table_sample_clause__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__with_check_option__field_descriptors[5] = +{ { - "initdeferred", - 20, + "kind", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, initdeferred), - NULL, + offsetof(PgQuery__WithCheckOption, kind), + &pg_query__wcokind__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "transformed", - 21, + "relname", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, transformed), - NULL, + offsetof(PgQuery__WithCheckOption, relname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "concurrent", - 22, + "polname", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, concurrent), - NULL, + offsetof(PgQuery__WithCheckOption, polname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", - 23, + "qual", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, if_not_exists), - NULL, + offsetof(PgQuery__WithCheckOption, qual), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "reset_default_tblspc", - 24, + "cascaded", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexStmt, reset_default_tblspc), + offsetof(PgQuery__WithCheckOption, cascaded), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__index_stmt__field_indices_by_name[] = { - 2, /* field[2] = access_method */ - 21, /* field[21] = concurrent */ - 18, /* field[18] = deferrable */ - 8, /* field[8] = exclude_op_names */ - 9, /* field[9] = idxcomment */ - 0, /* field[0] = idxname */ - 22, /* field[22] = if_not_exists */ - 5, /* field[5] = index_including_params */ - 10, /* field[10] = index_oid */ - 4, /* field[4] = index_params */ - 19, /* field[19] = initdeferred */ - 17, /* field[17] = isconstraint */ - 15, /* field[15] = nulls_not_distinct */ - 12, /* field[12] = old_create_subid */ - 13, /* field[13] = old_first_relfilenode_subid */ - 11, /* field[11] = old_node */ - 6, /* field[6] = options */ - 16, /* field[16] = primary */ - 1, /* field[1] = relation */ - 23, /* field[23] = reset_default_tblspc */ - 3, /* field[3] = table_space */ - 20, /* field[20] = transformed */ - 14, /* field[14] = unique */ - 7, /* field[7] = where_clause */ +static const unsigned pg_query__with_check_option__field_indices_by_name[] = { + 4, /* field[4] = cascaded */ + 0, /* field[0] = kind */ + 2, /* field[2] = polname */ + 3, /* field[3] = qual */ + 1, /* field[1] = relname */ }; -static const ProtobufCIntRange pg_query__index_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__with_check_option__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 24 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__index_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__with_check_option__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.IndexStmt", - "IndexStmt", - "PgQuery__IndexStmt", + "pg_query.WithCheckOption", + "WithCheckOption", + "PgQuery__WithCheckOption", "pg_query", - sizeof(PgQuery__IndexStmt), - 24, - pg_query__index_stmt__field_descriptors, - pg_query__index_stmt__field_indices_by_name, - 1, pg_query__index_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__index_stmt__init, + sizeof(PgQuery__WithCheckOption), + 5, + pg_query__with_check_option__field_descriptors, + pg_query__with_check_option__field_indices_by_name, + 1, pg_query__with_check_option__number_ranges, + (ProtobufCMessageInit) pg_query__with_check_option__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_function_stmt__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__sort_group_clause__field_descriptors[5] = { { - "is_procedure", + "tle_sort_group_ref", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateFunctionStmt, is_procedure), + offsetof(PgQuery__SortGroupClause, tle_sort_group_ref), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "replace", + "eqop", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateFunctionStmt, replace), + offsetof(PgQuery__SortGroupClause, eqop), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funcname", + "sortop", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateFunctionStmt, n_funcname), - offsetof(PgQuery__CreateFunctionStmt, funcname), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__SortGroupClause, sortop), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "parameters", - 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateFunctionStmt, n_parameters), - offsetof(PgQuery__CreateFunctionStmt, parameters), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "return_type", - 5, + "nulls_first", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateFunctionStmt, return_type), - &pg_query__type_name__descriptor, + offsetof(PgQuery__SortGroupClause, nulls_first), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "options", - 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateFunctionStmt, n_options), - offsetof(PgQuery__CreateFunctionStmt, options), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sql_body", - 7, + "hashable", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateFunctionStmt, sql_body), - &pg_query__node__descriptor, + offsetof(PgQuery__SortGroupClause, hashable), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_function_stmt__field_indices_by_name[] = { - 2, /* field[2] = funcname */ - 0, /* field[0] = is_procedure */ - 5, /* field[5] = options */ - 3, /* field[3] = parameters */ - 1, /* field[1] = replace */ - 4, /* field[4] = return_type */ - 6, /* field[6] = sql_body */ +static const unsigned pg_query__sort_group_clause__field_indices_by_name[] = { + 1, /* field[1] = eqop */ + 4, /* field[4] = hashable */ + 3, /* field[3] = nulls_first */ + 2, /* field[2] = sortop */ + 0, /* field[0] = tle_sort_group_ref */ }; -static const ProtobufCIntRange pg_query__create_function_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__sort_group_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__create_function_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__sort_group_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateFunctionStmt", - "CreateFunctionStmt", - "PgQuery__CreateFunctionStmt", + "pg_query.SortGroupClause", + "SortGroupClause", + "PgQuery__SortGroupClause", "pg_query", - sizeof(PgQuery__CreateFunctionStmt), - 7, - pg_query__create_function_stmt__field_descriptors, - pg_query__create_function_stmt__field_indices_by_name, - 1, pg_query__create_function_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_function_stmt__init, + sizeof(PgQuery__SortGroupClause), + 5, + pg_query__sort_group_clause__field_descriptors, + pg_query__sort_group_clause__field_indices_by_name, + 1, pg_query__sort_group_clause__number_ranges, + (ProtobufCMessageInit) pg_query__sort_group_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_function_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__grouping_set__field_descriptors[3] = { { - "objtype", + "kind", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterFunctionStmt, objtype), - &pg_query__object_type__descriptor, + offsetof(PgQuery__GroupingSet, kind), + &pg_query__grouping_set_kind__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "func", + "content", 2, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterFunctionStmt, func), - &pg_query__object_with_args__descriptor, + offsetof(PgQuery__GroupingSet, n_content), + offsetof(PgQuery__GroupingSet, content), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "actions", + "location", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterFunctionStmt, n_actions), - offsetof(PgQuery__AlterFunctionStmt, actions), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__GroupingSet, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_function_stmt__field_indices_by_name[] = { - 2, /* field[2] = actions */ - 1, /* field[1] = func */ - 0, /* field[0] = objtype */ +static const unsigned pg_query__grouping_set__field_indices_by_name[] = { + 1, /* field[1] = content */ + 0, /* field[0] = kind */ + 2, /* field[2] = location */ }; -static const ProtobufCIntRange pg_query__alter_function_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__grouping_set__number_ranges[1 + 1] = { { 1, 0 }, { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__alter_function_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__grouping_set__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterFunctionStmt", - "AlterFunctionStmt", - "PgQuery__AlterFunctionStmt", + "pg_query.GroupingSet", + "GroupingSet", + "PgQuery__GroupingSet", "pg_query", - sizeof(PgQuery__AlterFunctionStmt), + sizeof(PgQuery__GroupingSet), 3, - pg_query__alter_function_stmt__field_descriptors, - pg_query__alter_function_stmt__field_indices_by_name, - 1, pg_query__alter_function_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_function_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__do_stmt__field_descriptors[1] = -{ - { - "args", - 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DoStmt, n_args), - offsetof(PgQuery__DoStmt, args), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__do_stmt__field_indices_by_name[] = { - 0, /* field[0] = args */ -}; -static const ProtobufCIntRange pg_query__do_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 1 } -}; -const ProtobufCMessageDescriptor pg_query__do_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DoStmt", - "DoStmt", - "PgQuery__DoStmt", - "pg_query", - sizeof(PgQuery__DoStmt), - 1, - pg_query__do_stmt__field_descriptors, - pg_query__do_stmt__field_indices_by_name, - 1, pg_query__do_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__do_stmt__init, + pg_query__grouping_set__field_descriptors, + pg_query__grouping_set__field_indices_by_name, + 1, pg_query__grouping_set__number_ranges, + (ProtobufCMessageInit) pg_query__grouping_set__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__rename_stmt__field_descriptors[8] = +static const ProtobufCFieldDescriptor pg_query__window_clause__field_descriptors[15] = { { - "rename_type", + "name", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RenameStmt, rename_type), - &pg_query__object_type__descriptor, + offsetof(PgQuery__WindowClause, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relation_type", + "refname", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RenameStmt, relation_type), - &pg_query__object_type__descriptor, + offsetof(PgQuery__WindowClause, refname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relation", + "partition_clause", 3, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RenameStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__WindowClause, n_partition_clause), + offsetof(PgQuery__WindowClause, partition_clause), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "object", + "order_clause", 4, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RenameStmt, object), + offsetof(PgQuery__WindowClause, n_order_clause), + offsetof(PgQuery__WindowClause, order_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "subname", + "frame_options", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RenameStmt, subname), + offsetof(PgQuery__WindowClause, frame_options), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "newname", + "start_offset", 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RenameStmt, newname), + offsetof(PgQuery__WindowClause, start_offset), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "behavior", + "end_offset", 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RenameStmt, behavior), - &pg_query__drop_behavior__descriptor, + offsetof(PgQuery__WindowClause, end_offset), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", + "run_condition", 8, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__RenameStmt, missing_ok), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__WindowClause, n_run_condition), + offsetof(PgQuery__WindowClause, run_condition), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__rename_stmt__field_indices_by_name[] = { - 6, /* field[6] = behavior */ - 7, /* field[7] = missing_ok */ - 5, /* field[5] = newname */ - 3, /* field[3] = object */ - 2, /* field[2] = relation */ - 1, /* field[1] = relation_type */ - 0, /* field[0] = rename_type */ - 4, /* field[4] = subname */ -}; -static const ProtobufCIntRange pg_query__rename_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 8 } -}; -const ProtobufCMessageDescriptor pg_query__rename_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RenameStmt", - "RenameStmt", - "PgQuery__RenameStmt", - "pg_query", - sizeof(PgQuery__RenameStmt), - 8, - pg_query__rename_stmt__field_descriptors, - pg_query__rename_stmt__field_indices_by_name, - 1, pg_query__rename_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__rename_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__rule_stmt__field_descriptors[7] = -{ { - "relation", - 1, + "start_in_range_func", + 9, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RuleStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__WindowClause, start_in_range_func), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rulename", - 2, + "end_in_range_func", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RuleStmt, rulename), + offsetof(PgQuery__WindowClause, end_in_range_func), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "where_clause", - 3, + "in_range_coll", + 11, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RuleStmt, where_clause), - &pg_query__node__descriptor, + offsetof(PgQuery__WindowClause, in_range_coll), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "event", - 4, + "in_range_asc", + 12, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RuleStmt, event), - &pg_query__cmd_type__descriptor, + offsetof(PgQuery__WindowClause, in_range_asc), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "instead", - 5, + "in_range_nulls_first", + 13, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RuleStmt, instead), + offsetof(PgQuery__WindowClause, in_range_nulls_first), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "actions", - 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RuleStmt, n_actions), - offsetof(PgQuery__RuleStmt, actions), - &pg_query__node__descriptor, + "winref", + 14, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__WindowClause, winref), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "replace", - 7, + "copied_order", + 15, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RuleStmt, replace), + offsetof(PgQuery__WindowClause, copied_order), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__rule_stmt__field_indices_by_name[] = { - 5, /* field[5] = actions */ - 3, /* field[3] = event */ - 4, /* field[4] = instead */ - 0, /* field[0] = relation */ - 6, /* field[6] = replace */ - 1, /* field[1] = rulename */ - 2, /* field[2] = where_clause */ +static const unsigned pg_query__window_clause__field_indices_by_name[] = { + 14, /* field[14] = copied_order */ + 9, /* field[9] = end_in_range_func */ + 6, /* field[6] = end_offset */ + 4, /* field[4] = frame_options */ + 11, /* field[11] = in_range_asc */ + 10, /* field[10] = in_range_coll */ + 12, /* field[12] = in_range_nulls_first */ + 0, /* field[0] = name */ + 3, /* field[3] = order_clause */ + 2, /* field[2] = partition_clause */ + 1, /* field[1] = refname */ + 7, /* field[7] = run_condition */ + 8, /* field[8] = start_in_range_func */ + 5, /* field[5] = start_offset */ + 13, /* field[13] = winref */ }; -static const ProtobufCIntRange pg_query__rule_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__window_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 15 } }; -const ProtobufCMessageDescriptor pg_query__rule_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__window_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RuleStmt", - "RuleStmt", - "PgQuery__RuleStmt", + "pg_query.WindowClause", + "WindowClause", + "PgQuery__WindowClause", "pg_query", - sizeof(PgQuery__RuleStmt), - 7, - pg_query__rule_stmt__field_descriptors, - pg_query__rule_stmt__field_indices_by_name, - 1, pg_query__rule_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__rule_stmt__init, + sizeof(PgQuery__WindowClause), + 15, + pg_query__window_clause__field_descriptors, + pg_query__window_clause__field_indices_by_name, + 1, pg_query__window_clause__number_ranges, + (ProtobufCMessageInit) pg_query__window_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__notify_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__row_mark_clause__field_descriptors[4] = { { - "conditionname", + "rti", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__NotifyStmt, conditionname), + offsetof(PgQuery__RowMarkClause, rti), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "payload", + "strength", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__NotifyStmt, payload), + offsetof(PgQuery__RowMarkClause, strength), + &pg_query__lock_clause_strength__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__notify_stmt__field_indices_by_name[] = { - 0, /* field[0] = conditionname */ - 1, /* field[1] = payload */ -}; -static const ProtobufCIntRange pg_query__notify_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__notify_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.NotifyStmt", - "NotifyStmt", - "PgQuery__NotifyStmt", - "pg_query", - sizeof(PgQuery__NotifyStmt), - 2, - pg_query__notify_stmt__field_descriptors, - pg_query__notify_stmt__field_indices_by_name, - 1, pg_query__notify_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__notify_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__listen_stmt__field_descriptors[1] = -{ { - "conditionname", - 1, + "wait_policy", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ListenStmt, conditionname), + offsetof(PgQuery__RowMarkClause, wait_policy), + &pg_query__lock_wait_policy__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pushed_down", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__RowMarkClause, pushed_down), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__listen_stmt__field_indices_by_name[] = { - 0, /* field[0] = conditionname */ +static const unsigned pg_query__row_mark_clause__field_indices_by_name[] = { + 3, /* field[3] = pushed_down */ + 0, /* field[0] = rti */ + 1, /* field[1] = strength */ + 2, /* field[2] = wait_policy */ }; -static const ProtobufCIntRange pg_query__listen_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__row_mark_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__listen_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__row_mark_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ListenStmt", - "ListenStmt", - "PgQuery__ListenStmt", + "pg_query.RowMarkClause", + "RowMarkClause", + "PgQuery__RowMarkClause", "pg_query", - sizeof(PgQuery__ListenStmt), - 1, - pg_query__listen_stmt__field_descriptors, - pg_query__listen_stmt__field_indices_by_name, - 1, pg_query__listen_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__listen_stmt__init, + sizeof(PgQuery__RowMarkClause), + 4, + pg_query__row_mark_clause__field_descriptors, + pg_query__row_mark_clause__field_indices_by_name, + 1, pg_query__row_mark_clause__number_ranges, + (ProtobufCMessageInit) pg_query__row_mark_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__unlisten_stmt__field_descriptors[1] = +static const ProtobufCFieldDescriptor pg_query__with_clause__field_descriptors[3] = { { - "conditionname", + "ctes", 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__WithClause, n_ctes), + offsetof(PgQuery__WithClause, ctes), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "recursive", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__UnlistenStmt, conditionname), + offsetof(PgQuery__WithClause, recursive), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "location", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__WithClause, location), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__unlisten_stmt__field_indices_by_name[] = { - 0, /* field[0] = conditionname */ +static const unsigned pg_query__with_clause__field_indices_by_name[] = { + 0, /* field[0] = ctes */ + 2, /* field[2] = location */ + 1, /* field[1] = recursive */ }; -static const ProtobufCIntRange pg_query__unlisten_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__with_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__unlisten_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__with_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.UnlistenStmt", - "UnlistenStmt", - "PgQuery__UnlistenStmt", + "pg_query.WithClause", + "WithClause", + "PgQuery__WithClause", "pg_query", - sizeof(PgQuery__UnlistenStmt), - 1, - pg_query__unlisten_stmt__field_descriptors, - pg_query__unlisten_stmt__field_indices_by_name, - 1, pg_query__unlisten_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__unlisten_stmt__init, + sizeof(PgQuery__WithClause), + 3, + pg_query__with_clause__field_descriptors, + pg_query__with_clause__field_indices_by_name, + 1, pg_query__with_clause__number_ranges, + (ProtobufCMessageInit) pg_query__with_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__transaction_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__infer_clause__field_descriptors[4] = { { - "kind", + "index_elems", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__TransactionStmt, kind), - &pg_query__transaction_stmt_kind__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "options", - 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TransactionStmt, n_options), - offsetof(PgQuery__TransactionStmt, options), + offsetof(PgQuery__InferClause, n_index_elems), + offsetof(PgQuery__InferClause, index_elems), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "savepoint_name", - 3, + "where_clause", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__TransactionStmt, savepoint_name), + offsetof(PgQuery__InferClause, where_clause), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "gid", - 4, + "conname", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__TransactionStmt, gid), + offsetof(PgQuery__InferClause, conname), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "chain", - 5, + "location", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__TransactionStmt, chain), + offsetof(PgQuery__InferClause, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__transaction_stmt__field_indices_by_name[] = { - 4, /* field[4] = chain */ - 3, /* field[3] = gid */ - 0, /* field[0] = kind */ - 1, /* field[1] = options */ - 2, /* field[2] = savepoint_name */ +static const unsigned pg_query__infer_clause__field_indices_by_name[] = { + 2, /* field[2] = conname */ + 0, /* field[0] = index_elems */ + 3, /* field[3] = location */ + 1, /* field[1] = where_clause */ }; -static const ProtobufCIntRange pg_query__transaction_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__infer_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__transaction_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__infer_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.TransactionStmt", - "TransactionStmt", - "PgQuery__TransactionStmt", + "pg_query.InferClause", + "InferClause", + "PgQuery__InferClause", "pg_query", - sizeof(PgQuery__TransactionStmt), - 5, - pg_query__transaction_stmt__field_descriptors, - pg_query__transaction_stmt__field_indices_by_name, - 1, pg_query__transaction_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__transaction_stmt__init, + sizeof(PgQuery__InferClause), + 4, + pg_query__infer_clause__field_descriptors, + pg_query__infer_clause__field_indices_by_name, + 1, pg_query__infer_clause__number_ranges, + (ProtobufCMessageInit) pg_query__infer_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__view_stmt__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__on_conflict_clause__field_descriptors[5] = { { - "view", + "action", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ViewStmt, view), - &pg_query__range_var__descriptor, + offsetof(PgQuery__OnConflictClause, action), + &pg_query__on_conflict_action__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "aliases", + "infer", 2, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ViewStmt, n_aliases), - offsetof(PgQuery__ViewStmt, aliases), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__OnConflictClause, infer), + &pg_query__infer_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "query", + "target_list", 3, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__ViewStmt, query), + offsetof(PgQuery__OnConflictClause, n_target_list), + offsetof(PgQuery__OnConflictClause, target_list), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "replace", + "where_clause", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__ViewStmt, replace), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "options", - 5, - PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ViewStmt, n_options), - offsetof(PgQuery__ViewStmt, options), + 0, /* quantifier_offset */ + offsetof(PgQuery__OnConflictClause, where_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_check_option", - 6, + "location", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ViewStmt, with_check_option), - &pg_query__view_check_option__descriptor, + offsetof(PgQuery__OnConflictClause, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__view_stmt__field_indices_by_name[] = { - 1, /* field[1] = aliases */ - 4, /* field[4] = options */ - 2, /* field[2] = query */ - 3, /* field[3] = replace */ - 0, /* field[0] = view */ - 5, /* field[5] = with_check_option */ +static const unsigned pg_query__on_conflict_clause__field_indices_by_name[] = { + 0, /* field[0] = action */ + 1, /* field[1] = infer */ + 4, /* field[4] = location */ + 2, /* field[2] = target_list */ + 3, /* field[3] = where_clause */ }; -static const ProtobufCIntRange pg_query__view_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__on_conflict_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__view_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__on_conflict_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ViewStmt", - "ViewStmt", - "PgQuery__ViewStmt", + "pg_query.OnConflictClause", + "OnConflictClause", + "PgQuery__OnConflictClause", "pg_query", - sizeof(PgQuery__ViewStmt), - 6, - pg_query__view_stmt__field_descriptors, - pg_query__view_stmt__field_indices_by_name, - 1, pg_query__view_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__view_stmt__init, + sizeof(PgQuery__OnConflictClause), + 5, + pg_query__on_conflict_clause__field_descriptors, + pg_query__on_conflict_clause__field_indices_by_name, + 1, pg_query__on_conflict_clause__number_ranges, + (ProtobufCMessageInit) pg_query__on_conflict_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__load_stmt__field_descriptors[1] = +static const ProtobufCFieldDescriptor pg_query__ctesearch_clause__field_descriptors[4] = { { - "filename", + "search_col_list", 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CTESearchClause, n_search_col_list), + offsetof(PgQuery__CTESearchClause, search_col_list), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "search_breadth_first", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__CTESearchClause, search_breadth_first), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "search_seq_column", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__LoadStmt, filename), + offsetof(PgQuery__CTESearchClause, search_seq_column), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, + { + "location", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__CTESearchClause, location), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, }; -static const unsigned pg_query__load_stmt__field_indices_by_name[] = { - 0, /* field[0] = filename */ +static const unsigned pg_query__ctesearch_clause__field_indices_by_name[] = { + 3, /* field[3] = location */ + 1, /* field[1] = search_breadth_first */ + 0, /* field[0] = search_col_list */ + 2, /* field[2] = search_seq_column */ }; -static const ProtobufCIntRange pg_query__load_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__ctesearch_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__load_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__ctesearch_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.LoadStmt", - "LoadStmt", - "PgQuery__LoadStmt", + "pg_query.CTESearchClause", + "CTESearchClause", + "PgQuery__CTESearchClause", "pg_query", - sizeof(PgQuery__LoadStmt), - 1, - pg_query__load_stmt__field_descriptors, - pg_query__load_stmt__field_indices_by_name, - 1, pg_query__load_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__load_stmt__init, + sizeof(PgQuery__CTESearchClause), + 4, + pg_query__ctesearch_clause__field_descriptors, + pg_query__ctesearch_clause__field_indices_by_name, + 1, pg_query__ctesearch_clause__number_ranges, + (ProtobufCMessageInit) pg_query__ctesearch_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_domain_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__ctecycle_clause__field_descriptors[10] = { { - "domainname", + "cycle_col_list", 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateDomainStmt, n_domainname), - offsetof(PgQuery__CreateDomainStmt, domainname), + offsetof(PgQuery__CTECycleClause, n_cycle_col_list), + offsetof(PgQuery__CTECycleClause, cycle_col_list), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_name", + "cycle_mark_column", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateDomainStmt, type_name), - &pg_query__type_name__descriptor, + offsetof(PgQuery__CTECycleClause, cycle_mark_column), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coll_clause", + "cycle_mark_value", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateDomainStmt, coll_clause), - &pg_query__collate_clause__descriptor, + offsetof(PgQuery__CTECycleClause, cycle_mark_value), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "constraints", + "cycle_mark_default", 4, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateDomainStmt, n_constraints), - offsetof(PgQuery__CreateDomainStmt, constraints), + 0, /* quantifier_offset */ + offsetof(PgQuery__CTECycleClause, cycle_mark_default), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_domain_stmt__field_indices_by_name[] = { - 2, /* field[2] = coll_clause */ - 3, /* field[3] = constraints */ - 0, /* field[0] = domainname */ - 1, /* field[1] = type_name */ -}; -static const ProtobufCIntRange pg_query__create_domain_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 4 } -}; -const ProtobufCMessageDescriptor pg_query__create_domain_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateDomainStmt", - "CreateDomainStmt", - "PgQuery__CreateDomainStmt", - "pg_query", - sizeof(PgQuery__CreateDomainStmt), - 4, - pg_query__create_domain_stmt__field_descriptors, - pg_query__create_domain_stmt__field_indices_by_name, - 1, pg_query__create_domain_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_domain_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__createdb_stmt__field_descriptors[2] = -{ { - "dbname", - 1, + "cycle_path_column", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatedbStmt, dbname), + offsetof(PgQuery__CTECycleClause, cycle_path_column), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreatedbStmt, n_options), - offsetof(PgQuery__CreatedbStmt, options), - &pg_query__node__descriptor, + "location", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__CTECycleClause, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__createdb_stmt__field_indices_by_name[] = { - 0, /* field[0] = dbname */ - 1, /* field[1] = options */ -}; -static const ProtobufCIntRange pg_query__createdb_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__createdb_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreatedbStmt", - "CreatedbStmt", - "PgQuery__CreatedbStmt", - "pg_query", - sizeof(PgQuery__CreatedbStmt), - 2, - pg_query__createdb_stmt__field_descriptors, - pg_query__createdb_stmt__field_indices_by_name, - 1, pg_query__createdb_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__createdb_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__dropdb_stmt__field_descriptors[3] = -{ { - "dbname", - 1, + "cycle_mark_type", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__DropdbStmt, dbname), + offsetof(PgQuery__CTECycleClause, cycle_mark_type), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", - 2, + "cycle_mark_typmod", + 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__DropdbStmt, missing_ok), + offsetof(PgQuery__CTECycleClause, cycle_mark_typmod), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DropdbStmt, n_options), - offsetof(PgQuery__DropdbStmt, options), - &pg_query__node__descriptor, + "cycle_mark_collation", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__CTECycleClause, cycle_mark_collation), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "cycle_mark_neop", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__CTECycleClause, cycle_mark_neop), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__dropdb_stmt__field_indices_by_name[] = { - 0, /* field[0] = dbname */ - 1, /* field[1] = missing_ok */ - 2, /* field[2] = options */ +static const unsigned pg_query__ctecycle_clause__field_indices_by_name[] = { + 0, /* field[0] = cycle_col_list */ + 8, /* field[8] = cycle_mark_collation */ + 1, /* field[1] = cycle_mark_column */ + 3, /* field[3] = cycle_mark_default */ + 9, /* field[9] = cycle_mark_neop */ + 6, /* field[6] = cycle_mark_type */ + 7, /* field[7] = cycle_mark_typmod */ + 2, /* field[2] = cycle_mark_value */ + 4, /* field[4] = cycle_path_column */ + 5, /* field[5] = location */ }; -static const ProtobufCIntRange pg_query__dropdb_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__ctecycle_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 10 } }; -const ProtobufCMessageDescriptor pg_query__dropdb_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__ctecycle_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DropdbStmt", - "DropdbStmt", - "PgQuery__DropdbStmt", + "pg_query.CTECycleClause", + "CTECycleClause", + "PgQuery__CTECycleClause", "pg_query", - sizeof(PgQuery__DropdbStmt), - 3, - pg_query__dropdb_stmt__field_descriptors, - pg_query__dropdb_stmt__field_indices_by_name, - 1, pg_query__dropdb_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__dropdb_stmt__init, + sizeof(PgQuery__CTECycleClause), + 10, + pg_query__ctecycle_clause__field_descriptors, + pg_query__ctecycle_clause__field_indices_by_name, + 1, pg_query__ctecycle_clause__number_ranges, + (ProtobufCMessageInit) pg_query__ctecycle_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__vacuum_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__common_table_expr__field_descriptors[13] = { { - "options", + "ctename", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__VacuumStmt, n_options), - offsetof(PgQuery__VacuumStmt, options), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CommonTableExpr, ctename), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rels", + "aliascolnames", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__VacuumStmt, n_rels), - offsetof(PgQuery__VacuumStmt, rels), + offsetof(PgQuery__CommonTableExpr, n_aliascolnames), + offsetof(PgQuery__CommonTableExpr, aliascolnames), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_vacuumcmd", + "ctematerialized", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__VacuumStmt, is_vacuumcmd), - NULL, + offsetof(PgQuery__CommonTableExpr, ctematerialized), + &pg_query__ctematerialize__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__vacuum_stmt__field_indices_by_name[] = { - 2, /* field[2] = is_vacuumcmd */ - 0, /* field[0] = options */ - 1, /* field[1] = rels */ -}; -static const ProtobufCIntRange pg_query__vacuum_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__vacuum_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.VacuumStmt", - "VacuumStmt", - "PgQuery__VacuumStmt", - "pg_query", - sizeof(PgQuery__VacuumStmt), - 3, - pg_query__vacuum_stmt__field_descriptors, - pg_query__vacuum_stmt__field_indices_by_name, - 1, pg_query__vacuum_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__vacuum_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__explain_stmt__field_descriptors[2] = -{ { - "query", - 1, + "ctequery", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ExplainStmt, query), + offsetof(PgQuery__CommonTableExpr, ctequery), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 2, - PROTOBUF_C_LABEL_REPEATED, + "search_clause", + 5, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ExplainStmt, n_options), - offsetof(PgQuery__ExplainStmt, options), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__CommonTableExpr, search_clause), + &pg_query__ctesearch_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__explain_stmt__field_indices_by_name[] = { - 1, /* field[1] = options */ - 0, /* field[0] = query */ -}; -static const ProtobufCIntRange pg_query__explain_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__explain_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ExplainStmt", - "ExplainStmt", - "PgQuery__ExplainStmt", - "pg_query", - sizeof(PgQuery__ExplainStmt), - 2, - pg_query__explain_stmt__field_descriptors, - pg_query__explain_stmt__field_indices_by_name, - 1, pg_query__explain_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__explain_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_table_as_stmt__field_descriptors[5] = -{ { - "query", - 1, + "cycle_clause", + 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTableAsStmt, query), - &pg_query__node__descriptor, + offsetof(PgQuery__CommonTableExpr, cycle_clause), + &pg_query__ctecycle_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "into", - 2, + "location", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTableAsStmt, into), - &pg_query__into_clause__descriptor, + offsetof(PgQuery__CommonTableExpr, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "objtype", - 3, + "cterecursive", + 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTableAsStmt, objtype), - &pg_query__object_type__descriptor, + offsetof(PgQuery__CommonTableExpr, cterecursive), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_select_into", - 4, + "cterefcount", + 9, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTableAsStmt, is_select_into), + offsetof(PgQuery__CommonTableExpr, cterefcount), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTableAsStmt, if_not_exists), + "ctecolnames", + 10, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CommonTableExpr, n_ctecolnames), + offsetof(PgQuery__CommonTableExpr, ctecolnames), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ctecoltypes", + 11, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CommonTableExpr, n_ctecoltypes), + offsetof(PgQuery__CommonTableExpr, ctecoltypes), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ctecoltypmods", + 12, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CommonTableExpr, n_ctecoltypmods), + offsetof(PgQuery__CommonTableExpr, ctecoltypmods), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ctecolcollations", + 13, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CommonTableExpr, n_ctecolcollations), + offsetof(PgQuery__CommonTableExpr, ctecolcollations), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_table_as_stmt__field_indices_by_name[] = { - 4, /* field[4] = if_not_exists */ - 1, /* field[1] = into */ - 3, /* field[3] = is_select_into */ - 2, /* field[2] = objtype */ - 0, /* field[0] = query */ +static const unsigned pg_query__common_table_expr__field_indices_by_name[] = { + 1, /* field[1] = aliascolnames */ + 12, /* field[12] = ctecolcollations */ + 9, /* field[9] = ctecolnames */ + 10, /* field[10] = ctecoltypes */ + 11, /* field[11] = ctecoltypmods */ + 2, /* field[2] = ctematerialized */ + 0, /* field[0] = ctename */ + 3, /* field[3] = ctequery */ + 7, /* field[7] = cterecursive */ + 8, /* field[8] = cterefcount */ + 5, /* field[5] = cycle_clause */ + 6, /* field[6] = location */ + 4, /* field[4] = search_clause */ }; -static const ProtobufCIntRange pg_query__create_table_as_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__common_table_expr__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 13 } }; -const ProtobufCMessageDescriptor pg_query__create_table_as_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__common_table_expr__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateTableAsStmt", - "CreateTableAsStmt", - "PgQuery__CreateTableAsStmt", + "pg_query.CommonTableExpr", + "CommonTableExpr", + "PgQuery__CommonTableExpr", "pg_query", - sizeof(PgQuery__CreateTableAsStmt), - 5, - pg_query__create_table_as_stmt__field_descriptors, - pg_query__create_table_as_stmt__field_indices_by_name, - 1, pg_query__create_table_as_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_table_as_stmt__init, + sizeof(PgQuery__CommonTableExpr), + 13, + pg_query__common_table_expr__field_descriptors, + pg_query__common_table_expr__field_indices_by_name, + 1, pg_query__common_table_expr__number_ranges, + (ProtobufCMessageInit) pg_query__common_table_expr__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_seq_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__merge_when_clause__field_descriptors[6] = { { - "sequence", + "matched", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateSeqStmt, sequence), - &pg_query__range_var__descriptor, + offsetof(PgQuery__MergeWhenClause, matched), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "command_type", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateSeqStmt, n_options), - offsetof(PgQuery__CreateSeqStmt, options), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__MergeWhenClause, command_type), + &pg_query__cmd_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "owner_id", + "override", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateSeqStmt, owner_id), - NULL, + offsetof(PgQuery__MergeWhenClause, override), + &pg_query__overriding_kind__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "for_identity", + "condition", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateSeqStmt, for_identity), - NULL, + offsetof(PgQuery__MergeWhenClause, condition), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", + "target_list", 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateSeqStmt, if_not_exists), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__MergeWhenClause, n_target_list), + offsetof(PgQuery__MergeWhenClause, target_list), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "values", + 6, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__MergeWhenClause, n_values), + offsetof(PgQuery__MergeWhenClause, values), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_seq_stmt__field_indices_by_name[] = { - 3, /* field[3] = for_identity */ - 4, /* field[4] = if_not_exists */ - 1, /* field[1] = options */ - 2, /* field[2] = owner_id */ - 0, /* field[0] = sequence */ +static const unsigned pg_query__merge_when_clause__field_indices_by_name[] = { + 1, /* field[1] = command_type */ + 3, /* field[3] = condition */ + 0, /* field[0] = matched */ + 2, /* field[2] = override */ + 4, /* field[4] = target_list */ + 5, /* field[5] = values */ }; -static const ProtobufCIntRange pg_query__create_seq_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__merge_when_clause__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__create_seq_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__merge_when_clause__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateSeqStmt", - "CreateSeqStmt", - "PgQuery__CreateSeqStmt", + "pg_query.MergeWhenClause", + "MergeWhenClause", + "PgQuery__MergeWhenClause", "pg_query", - sizeof(PgQuery__CreateSeqStmt), - 5, - pg_query__create_seq_stmt__field_descriptors, - pg_query__create_seq_stmt__field_indices_by_name, - 1, pg_query__create_seq_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_seq_stmt__init, + sizeof(PgQuery__MergeWhenClause), + 6, + pg_query__merge_when_clause__field_descriptors, + pg_query__merge_when_clause__field_indices_by_name, + 1, pg_query__merge_when_clause__number_ranges, + (ProtobufCMessageInit) pg_query__merge_when_clause__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_seq_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__merge_action__field_descriptors[6] = { { - "sequence", + "matched", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterSeqStmt, sequence), - &pg_query__range_var__descriptor, + offsetof(PgQuery__MergeAction, matched), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "command_type", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterSeqStmt, n_options), - offsetof(PgQuery__AlterSeqStmt, options), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__MergeAction, command_type), + &pg_query__cmd_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "for_identity", + "override", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterSeqStmt, for_identity), - NULL, + offsetof(PgQuery__MergeAction, override), + &pg_query__overriding_kind__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", + "qual", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterSeqStmt, missing_ok), + offsetof(PgQuery__MergeAction, qual), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "target_list", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__MergeAction, n_target_list), + offsetof(PgQuery__MergeAction, target_list), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "update_colnos", + 6, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__MergeAction, n_update_colnos), + offsetof(PgQuery__MergeAction, update_colnos), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_seq_stmt__field_indices_by_name[] = { - 2, /* field[2] = for_identity */ - 3, /* field[3] = missing_ok */ - 1, /* field[1] = options */ - 0, /* field[0] = sequence */ +static const unsigned pg_query__merge_action__field_indices_by_name[] = { + 1, /* field[1] = command_type */ + 0, /* field[0] = matched */ + 2, /* field[2] = override */ + 3, /* field[3] = qual */ + 4, /* field[4] = target_list */ + 5, /* field[5] = update_colnos */ }; -static const ProtobufCIntRange pg_query__alter_seq_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__merge_action__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__alter_seq_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__merge_action__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterSeqStmt", - "AlterSeqStmt", - "PgQuery__AlterSeqStmt", + "pg_query.MergeAction", + "MergeAction", + "PgQuery__MergeAction", "pg_query", - sizeof(PgQuery__AlterSeqStmt), - 4, - pg_query__alter_seq_stmt__field_descriptors, - pg_query__alter_seq_stmt__field_indices_by_name, - 1, pg_query__alter_seq_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_seq_stmt__init, + sizeof(PgQuery__MergeAction), + 6, + pg_query__merge_action__field_descriptors, + pg_query__merge_action__field_indices_by_name, + 1, pg_query__merge_action__number_ranges, + (ProtobufCMessageInit) pg_query__merge_action__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__variable_set_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__trigger_transition__field_descriptors[3] = { { - "kind", + "name", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__VariableSetStmt, kind), - &pg_query__variable_set_kind__descriptor, + offsetof(PgQuery__TriggerTransition, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "name", + "is_new", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__VariableSetStmt, name), + offsetof(PgQuery__TriggerTransition, is_new), NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__VariableSetStmt, n_args), - offsetof(PgQuery__VariableSetStmt, args), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_local", - 4, + "is_table", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__VariableSetStmt, is_local), + offsetof(PgQuery__TriggerTransition, is_table), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__variable_set_stmt__field_indices_by_name[] = { - 2, /* field[2] = args */ - 3, /* field[3] = is_local */ - 0, /* field[0] = kind */ - 1, /* field[1] = name */ +static const unsigned pg_query__trigger_transition__field_indices_by_name[] = { + 1, /* field[1] = is_new */ + 2, /* field[2] = is_table */ + 0, /* field[0] = name */ }; -static const ProtobufCIntRange pg_query__variable_set_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__trigger_transition__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__variable_set_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__trigger_transition__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.VariableSetStmt", - "VariableSetStmt", - "PgQuery__VariableSetStmt", + "pg_query.TriggerTransition", + "TriggerTransition", + "PgQuery__TriggerTransition", "pg_query", - sizeof(PgQuery__VariableSetStmt), - 4, - pg_query__variable_set_stmt__field_descriptors, - pg_query__variable_set_stmt__field_indices_by_name, - 1, pg_query__variable_set_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__variable_set_stmt__init, + sizeof(PgQuery__TriggerTransition), + 3, + pg_query__trigger_transition__field_descriptors, + pg_query__trigger_transition__field_indices_by_name, + 1, pg_query__trigger_transition__number_ranges, + (ProtobufCMessageInit) pg_query__trigger_transition__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__variable_show_stmt__field_descriptors[1] = +static const ProtobufCFieldDescriptor pg_query__json_output__field_descriptors[2] = { { - "name", + "type_name", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__VariableShowStmt, name), + offsetof(PgQuery__JsonOutput, type_name), + &pg_query__type_name__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__variable_show_stmt__field_indices_by_name[] = { - 0, /* field[0] = name */ -}; -static const ProtobufCIntRange pg_query__variable_show_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 1 } -}; -const ProtobufCMessageDescriptor pg_query__variable_show_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.VariableShowStmt", - "VariableShowStmt", - "PgQuery__VariableShowStmt", - "pg_query", - sizeof(PgQuery__VariableShowStmt), - 1, - pg_query__variable_show_stmt__field_descriptors, - pg_query__variable_show_stmt__field_indices_by_name, - 1, pg_query__variable_show_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__variable_show_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__discard_stmt__field_descriptors[1] = -{ { - "target", - 1, + "returning", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__DiscardStmt, target), - &pg_query__discard_mode__descriptor, + offsetof(PgQuery__JsonOutput, returning), + &pg_query__json_returning__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__discard_stmt__field_indices_by_name[] = { - 0, /* field[0] = target */ +static const unsigned pg_query__json_output__field_indices_by_name[] = { + 1, /* field[1] = returning */ + 0, /* field[0] = type_name */ }; -static const ProtobufCIntRange pg_query__discard_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_output__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__discard_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__json_output__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DiscardStmt", - "DiscardStmt", - "PgQuery__DiscardStmt", + "pg_query.JsonOutput", + "JsonOutput", + "PgQuery__JsonOutput", "pg_query", - sizeof(PgQuery__DiscardStmt), - 1, - pg_query__discard_stmt__field_descriptors, - pg_query__discard_stmt__field_indices_by_name, - 1, pg_query__discard_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__discard_stmt__init, + sizeof(PgQuery__JsonOutput), + 2, + pg_query__json_output__field_descriptors, + pg_query__json_output__field_indices_by_name, + 1, pg_query__json_output__number_ranges, + (ProtobufCMessageInit) pg_query__json_output__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_trig_stmt__field_descriptors[15] = +static const ProtobufCFieldDescriptor pg_query__json_key_value__field_descriptors[2] = { { - "replace", + "key", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, replace), - NULL, + offsetof(PgQuery__JsonKeyValue, key), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "isconstraint", + "value", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, isconstraint), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "trigname", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, trigname), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "relation", - 4, - PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__JsonKeyValue, value), + &pg_query__json_value_expr__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__json_key_value__field_indices_by_name[] = { + 0, /* field[0] = key */ + 1, /* field[1] = value */ +}; +static const ProtobufCIntRange pg_query__json_key_value__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__json_key_value__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.JsonKeyValue", + "JsonKeyValue", + "PgQuery__JsonKeyValue", + "pg_query", + sizeof(PgQuery__JsonKeyValue), + 2, + pg_query__json_key_value__field_descriptors, + pg_query__json_key_value__field_indices_by_name, + 1, pg_query__json_key_value__number_ranges, + (ProtobufCMessageInit) pg_query__json_key_value__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__json_object_constructor__field_descriptors[5] = +{ { - "funcname", - 5, + "exprs", + 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateTrigStmt, n_funcname), - offsetof(PgQuery__CreateTrigStmt, funcname), + offsetof(PgQuery__JsonObjectConstructor, n_exprs), + offsetof(PgQuery__JsonObjectConstructor, exprs), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", - 6, - PROTOBUF_C_LABEL_REPEATED, + "output", + 2, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateTrigStmt, n_args), - offsetof(PgQuery__CreateTrigStmt, args), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonObjectConstructor, output), + &pg_query__json_output__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "row", - 7, + "absent_on_null", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, row), + offsetof(PgQuery__JsonObjectConstructor, absent_on_null), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "timing", - 8, + "unique", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, timing), + offsetof(PgQuery__JsonObjectConstructor, unique), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "events", - 9, + "location", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, events), + offsetof(PgQuery__JsonObjectConstructor, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__json_object_constructor__field_indices_by_name[] = { + 2, /* field[2] = absent_on_null */ + 0, /* field[0] = exprs */ + 4, /* field[4] = location */ + 1, /* field[1] = output */ + 3, /* field[3] = unique */ +}; +static const ProtobufCIntRange pg_query__json_object_constructor__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor pg_query__json_object_constructor__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.JsonObjectConstructor", + "JsonObjectConstructor", + "PgQuery__JsonObjectConstructor", + "pg_query", + sizeof(PgQuery__JsonObjectConstructor), + 5, + pg_query__json_object_constructor__field_descriptors, + pg_query__json_object_constructor__field_indices_by_name, + 1, pg_query__json_object_constructor__number_ranges, + (ProtobufCMessageInit) pg_query__json_object_constructor__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__json_array_constructor__field_descriptors[4] = +{ { - "columns", - 10, + "exprs", + 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateTrigStmt, n_columns), - offsetof(PgQuery__CreateTrigStmt, columns), + offsetof(PgQuery__JsonArrayConstructor, n_exprs), + offsetof(PgQuery__JsonArrayConstructor, exprs), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "when_clause", - 11, + "output", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, when_clause), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "transition_rels", - 12, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateTrigStmt, n_transition_rels), - offsetof(PgQuery__CreateTrigStmt, transition_rels), - &pg_query__node__descriptor, + offsetof(PgQuery__JsonArrayConstructor, output), + &pg_query__json_output__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "deferrable", - 13, + "absent_on_null", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, deferrable), + offsetof(PgQuery__JsonArrayConstructor, absent_on_null), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "initdeferred", - 14, + "location", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, initdeferred), - NULL, + offsetof(PgQuery__JsonArrayConstructor, location), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "constrrel", - 15, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTrigStmt, constrrel), - &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_trig_stmt__field_indices_by_name[] = { - 5, /* field[5] = args */ - 9, /* field[9] = columns */ - 14, /* field[14] = constrrel */ - 12, /* field[12] = deferrable */ - 8, /* field[8] = events */ - 4, /* field[4] = funcname */ - 13, /* field[13] = initdeferred */ - 1, /* field[1] = isconstraint */ - 3, /* field[3] = relation */ - 0, /* field[0] = replace */ - 6, /* field[6] = row */ - 7, /* field[7] = timing */ - 11, /* field[11] = transition_rels */ - 2, /* field[2] = trigname */ - 10, /* field[10] = when_clause */ +static const unsigned pg_query__json_array_constructor__field_indices_by_name[] = { + 2, /* field[2] = absent_on_null */ + 0, /* field[0] = exprs */ + 3, /* field[3] = location */ + 1, /* field[1] = output */ }; -static const ProtobufCIntRange pg_query__create_trig_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_array_constructor__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 15 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__create_trig_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__json_array_constructor__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateTrigStmt", - "CreateTrigStmt", - "PgQuery__CreateTrigStmt", + "pg_query.JsonArrayConstructor", + "JsonArrayConstructor", + "PgQuery__JsonArrayConstructor", "pg_query", - sizeof(PgQuery__CreateTrigStmt), - 15, - pg_query__create_trig_stmt__field_descriptors, - pg_query__create_trig_stmt__field_indices_by_name, - 1, pg_query__create_trig_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_trig_stmt__init, + sizeof(PgQuery__JsonArrayConstructor), + 4, + pg_query__json_array_constructor__field_descriptors, + pg_query__json_array_constructor__field_indices_by_name, + 1, pg_query__json_array_constructor__number_ranges, + (ProtobufCMessageInit) pg_query__json_array_constructor__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_plang_stmt__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__json_array_query_constructor__field_descriptors[5] = { { - "replace", + "query", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePLangStmt, replace), - NULL, + offsetof(PgQuery__JsonArrayQueryConstructor, query), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "plname", + "output", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePLangStmt, plname), + offsetof(PgQuery__JsonArrayQueryConstructor, output), + &pg_query__json_output__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "plhandler", + "format", 3, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreatePLangStmt, n_plhandler), - offsetof(PgQuery__CreatePLangStmt, plhandler), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonArrayQueryConstructor, format), + &pg_query__json_format__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "plinline", + "absent_on_null", 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreatePLangStmt, n_plinline), - offsetof(PgQuery__CreatePLangStmt, plinline), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonArrayQueryConstructor, absent_on_null), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "plvalidator", - 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreatePLangStmt, n_plvalidator), - offsetof(PgQuery__CreatePLangStmt, plvalidator), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "pltrusted", - 6, + "location", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePLangStmt, pltrusted), + offsetof(PgQuery__JsonArrayQueryConstructor, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_plang_stmt__field_indices_by_name[] = { - 2, /* field[2] = plhandler */ - 3, /* field[3] = plinline */ - 1, /* field[1] = plname */ - 5, /* field[5] = pltrusted */ - 4, /* field[4] = plvalidator */ - 0, /* field[0] = replace */ +static const unsigned pg_query__json_array_query_constructor__field_indices_by_name[] = { + 3, /* field[3] = absent_on_null */ + 2, /* field[2] = format */ + 4, /* field[4] = location */ + 1, /* field[1] = output */ + 0, /* field[0] = query */ }; -static const ProtobufCIntRange pg_query__create_plang_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_array_query_constructor__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__create_plang_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__json_array_query_constructor__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreatePLangStmt", - "CreatePLangStmt", - "PgQuery__CreatePLangStmt", + "pg_query.JsonArrayQueryConstructor", + "JsonArrayQueryConstructor", + "PgQuery__JsonArrayQueryConstructor", "pg_query", - sizeof(PgQuery__CreatePLangStmt), - 6, - pg_query__create_plang_stmt__field_descriptors, - pg_query__create_plang_stmt__field_indices_by_name, - 1, pg_query__create_plang_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_plang_stmt__init, + sizeof(PgQuery__JsonArrayQueryConstructor), + 5, + pg_query__json_array_query_constructor__field_descriptors, + pg_query__json_array_query_constructor__field_indices_by_name, + 1, pg_query__json_array_query_constructor__number_ranges, + (ProtobufCMessageInit) pg_query__json_array_query_constructor__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_role_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__json_agg_constructor__field_descriptors[5] = { { - "stmt_type", + "output", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateRoleStmt, stmt_type), - &pg_query__role_stmt_type__descriptor, + offsetof(PgQuery__JsonAggConstructor, output), + &pg_query__json_output__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "role", + "agg_filter", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateRoleStmt, role), + offsetof(PgQuery__JsonAggConstructor, agg_filter), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "agg_order", 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateRoleStmt, n_options), - offsetof(PgQuery__CreateRoleStmt, options), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__create_role_stmt__field_indices_by_name[] = { - 2, /* field[2] = options */ - 1, /* field[1] = role */ - 0, /* field[0] = stmt_type */ -}; -static const ProtobufCIntRange pg_query__create_role_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__create_role_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateRoleStmt", - "CreateRoleStmt", - "PgQuery__CreateRoleStmt", - "pg_query", - sizeof(PgQuery__CreateRoleStmt), - 3, - pg_query__create_role_stmt__field_descriptors, - pg_query__create_role_stmt__field_indices_by_name, - 1, pg_query__create_role_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_role_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_role_stmt__field_descriptors[3] = -{ - { - "role", - 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterRoleStmt, role), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__JsonAggConstructor, n_agg_order), + offsetof(PgQuery__JsonAggConstructor, agg_order), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 2, - PROTOBUF_C_LABEL_REPEATED, + "over", + 4, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterRoleStmt, n_options), - offsetof(PgQuery__AlterRoleStmt, options), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonAggConstructor, over), + &pg_query__window_def__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "action", - 3, + "location", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterRoleStmt, action), + offsetof(PgQuery__JsonAggConstructor, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_role_stmt__field_indices_by_name[] = { - 2, /* field[2] = action */ - 1, /* field[1] = options */ - 0, /* field[0] = role */ +static const unsigned pg_query__json_agg_constructor__field_indices_by_name[] = { + 1, /* field[1] = agg_filter */ + 2, /* field[2] = agg_order */ + 4, /* field[4] = location */ + 0, /* field[0] = output */ + 3, /* field[3] = over */ }; -static const ProtobufCIntRange pg_query__alter_role_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_agg_constructor__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__alter_role_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__json_agg_constructor__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterRoleStmt", - "AlterRoleStmt", - "PgQuery__AlterRoleStmt", + "pg_query.JsonAggConstructor", + "JsonAggConstructor", + "PgQuery__JsonAggConstructor", "pg_query", - sizeof(PgQuery__AlterRoleStmt), - 3, - pg_query__alter_role_stmt__field_descriptors, - pg_query__alter_role_stmt__field_indices_by_name, - 1, pg_query__alter_role_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_role_stmt__init, + sizeof(PgQuery__JsonAggConstructor), + 5, + pg_query__json_agg_constructor__field_descriptors, + pg_query__json_agg_constructor__field_indices_by_name, + 1, pg_query__json_agg_constructor__number_ranges, + (ProtobufCMessageInit) pg_query__json_agg_constructor__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__drop_role_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__json_object_agg__field_descriptors[4] = { { - "roles", + "constructor", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DropRoleStmt, n_roles), - offsetof(PgQuery__DropRoleStmt, roles), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonObjectAgg, constructor), + &pg_query__json_agg_constructor__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", + "arg", 2, PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonObjectAgg, arg), + &pg_query__json_key_value__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "absent_on_null", + 3, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DropRoleStmt, missing_ok), + offsetof(PgQuery__JsonObjectAgg, absent_on_null), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "unique", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonObjectAgg, unique), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__drop_role_stmt__field_indices_by_name[] = { - 1, /* field[1] = missing_ok */ - 0, /* field[0] = roles */ +static const unsigned pg_query__json_object_agg__field_indices_by_name[] = { + 2, /* field[2] = absent_on_null */ + 1, /* field[1] = arg */ + 0, /* field[0] = constructor */ + 3, /* field[3] = unique */ }; -static const ProtobufCIntRange pg_query__drop_role_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_object_agg__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__drop_role_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__json_object_agg__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DropRoleStmt", - "DropRoleStmt", - "PgQuery__DropRoleStmt", + "pg_query.JsonObjectAgg", + "JsonObjectAgg", + "PgQuery__JsonObjectAgg", "pg_query", - sizeof(PgQuery__DropRoleStmt), - 2, - pg_query__drop_role_stmt__field_descriptors, - pg_query__drop_role_stmt__field_indices_by_name, - 1, pg_query__drop_role_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__drop_role_stmt__init, + sizeof(PgQuery__JsonObjectAgg), + 4, + pg_query__json_object_agg__field_descriptors, + pg_query__json_object_agg__field_indices_by_name, + 1, pg_query__json_object_agg__number_ranges, + (ProtobufCMessageInit) pg_query__json_object_agg__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__lock_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__json_array_agg__field_descriptors[3] = { { - "relations", + "constructor", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__LockStmt, n_relations), - offsetof(PgQuery__LockStmt, relations), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__JsonArrayAgg, constructor), + &pg_query__json_agg_constructor__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "mode", + "arg", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__LockStmt, mode), - NULL, + offsetof(PgQuery__JsonArrayAgg, arg), + &pg_query__json_value_expr__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "nowait", + "absent_on_null", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__LockStmt, nowait), + offsetof(PgQuery__JsonArrayAgg, absent_on_null), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__lock_stmt__field_indices_by_name[] = { - 1, /* field[1] = mode */ - 2, /* field[2] = nowait */ - 0, /* field[0] = relations */ +static const unsigned pg_query__json_array_agg__field_indices_by_name[] = { + 2, /* field[2] = absent_on_null */ + 1, /* field[1] = arg */ + 0, /* field[0] = constructor */ }; -static const ProtobufCIntRange pg_query__lock_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__json_array_agg__number_ranges[1 + 1] = { { 1, 0 }, { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__lock_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__json_array_agg__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.LockStmt", - "LockStmt", - "PgQuery__LockStmt", + "pg_query.JsonArrayAgg", + "JsonArrayAgg", + "PgQuery__JsonArrayAgg", "pg_query", - sizeof(PgQuery__LockStmt), + sizeof(PgQuery__JsonArrayAgg), 3, - pg_query__lock_stmt__field_descriptors, - pg_query__lock_stmt__field_indices_by_name, - 1, pg_query__lock_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__lock_stmt__init, + pg_query__json_array_agg__field_descriptors, + pg_query__json_array_agg__field_indices_by_name, + 1, pg_query__json_array_agg__number_ranges, + (ProtobufCMessageInit) pg_query__json_array_agg__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__constraints_set_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__raw_stmt__field_descriptors[3] = { { - "constraints", + "stmt", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ConstraintsSetStmt, n_constraints), - offsetof(PgQuery__ConstraintsSetStmt, constraints), + 0, /* quantifier_offset */ + offsetof(PgQuery__RawStmt, stmt), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "deferred", + "stmt_location", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__ConstraintsSetStmt, deferred), + offsetof(PgQuery__RawStmt, stmt_location), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "stmt_len", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__RawStmt, stmt_len), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__constraints_set_stmt__field_indices_by_name[] = { - 0, /* field[0] = constraints */ - 1, /* field[1] = deferred */ +static const unsigned pg_query__raw_stmt__field_indices_by_name[] = { + 0, /* field[0] = stmt */ + 2, /* field[2] = stmt_len */ + 1, /* field[1] = stmt_location */ }; -static const ProtobufCIntRange pg_query__constraints_set_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__raw_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__constraints_set_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__raw_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ConstraintsSetStmt", - "ConstraintsSetStmt", - "PgQuery__ConstraintsSetStmt", + "pg_query.RawStmt", + "RawStmt", + "PgQuery__RawStmt", "pg_query", - sizeof(PgQuery__ConstraintsSetStmt), - 2, - pg_query__constraints_set_stmt__field_descriptors, - pg_query__constraints_set_stmt__field_indices_by_name, - 1, pg_query__constraints_set_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__constraints_set_stmt__init, + sizeof(PgQuery__RawStmt), + 3, + pg_query__raw_stmt__field_descriptors, + pg_query__raw_stmt__field_indices_by_name, + 1, pg_query__raw_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__raw_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__reindex_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__insert_stmt__field_descriptors[7] = { { - "kind", + "relation", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ReindexStmt, kind), - &pg_query__reindex_object_type__descriptor, + offsetof(PgQuery__InsertStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relation", + "cols", 2, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__ReindexStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__InsertStmt, n_cols), + offsetof(PgQuery__InsertStmt, cols), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "name", + "select_stmt", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__ReindexStmt, name), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "params", - 4, - PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ReindexStmt, n_params), - offsetof(PgQuery__ReindexStmt, params), + 0, /* quantifier_offset */ + offsetof(PgQuery__InsertStmt, select_stmt), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__reindex_stmt__field_indices_by_name[] = { - 0, /* field[0] = kind */ - 2, /* field[2] = name */ - 3, /* field[3] = params */ - 1, /* field[1] = relation */ -}; -static const ProtobufCIntRange pg_query__reindex_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 4 } -}; -const ProtobufCMessageDescriptor pg_query__reindex_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ReindexStmt", - "ReindexStmt", - "PgQuery__ReindexStmt", - "pg_query", - sizeof(PgQuery__ReindexStmt), - 4, - pg_query__reindex_stmt__field_descriptors, - pg_query__reindex_stmt__field_indices_by_name, - 1, pg_query__reindex_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__reindex_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -#define pg_query__check_point_stmt__field_descriptors NULL -#define pg_query__check_point_stmt__field_indices_by_name NULL -#define pg_query__check_point_stmt__number_ranges NULL -const ProtobufCMessageDescriptor pg_query__check_point_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CheckPointStmt", - "CheckPointStmt", - "PgQuery__CheckPointStmt", - "pg_query", - sizeof(PgQuery__CheckPointStmt), - 0, - pg_query__check_point_stmt__field_descriptors, - pg_query__check_point_stmt__field_indices_by_name, - 0, pg_query__check_point_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__check_point_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_schema_stmt__field_descriptors[4] = -{ { - "schemaname", - 1, + "on_conflict_clause", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateSchemaStmt, schemaname), + offsetof(PgQuery__InsertStmt, on_conflict_clause), + &pg_query__on_conflict_clause__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "authrole", - 2, - PROTOBUF_C_LABEL_NONE, + "returning_list", + 5, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateSchemaStmt, authrole), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__InsertStmt, n_returning_list), + offsetof(PgQuery__InsertStmt, returning_list), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "schema_elts", - 3, - PROTOBUF_C_LABEL_REPEATED, + "with_clause", + 6, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateSchemaStmt, n_schema_elts), - offsetof(PgQuery__CreateSchemaStmt, schema_elts), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__InsertStmt, with_clause), + &pg_query__with_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", - 4, + "override", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateSchemaStmt, if_not_exists), - NULL, + offsetof(PgQuery__InsertStmt, override), + &pg_query__overriding_kind__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_schema_stmt__field_indices_by_name[] = { - 1, /* field[1] = authrole */ - 3, /* field[3] = if_not_exists */ - 2, /* field[2] = schema_elts */ - 0, /* field[0] = schemaname */ +static const unsigned pg_query__insert_stmt__field_indices_by_name[] = { + 1, /* field[1] = cols */ + 3, /* field[3] = on_conflict_clause */ + 6, /* field[6] = override */ + 0, /* field[0] = relation */ + 4, /* field[4] = returning_list */ + 2, /* field[2] = select_stmt */ + 5, /* field[5] = with_clause */ }; -static const ProtobufCIntRange pg_query__create_schema_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__insert_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__create_schema_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__insert_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateSchemaStmt", - "CreateSchemaStmt", - "PgQuery__CreateSchemaStmt", + "pg_query.InsertStmt", + "InsertStmt", + "PgQuery__InsertStmt", "pg_query", - sizeof(PgQuery__CreateSchemaStmt), - 4, - pg_query__create_schema_stmt__field_descriptors, - pg_query__create_schema_stmt__field_indices_by_name, - 1, pg_query__create_schema_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_schema_stmt__init, + sizeof(PgQuery__InsertStmt), + 7, + pg_query__insert_stmt__field_descriptors, + pg_query__insert_stmt__field_indices_by_name, + 1, pg_query__insert_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__insert_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_database_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__delete_stmt__field_descriptors[5] = { { - "dbname", + "relation", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDatabaseStmt, dbname), + offsetof(PgQuery__DeleteStmt, relation), + &pg_query__range_var__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "using_clause", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterDatabaseStmt, n_options), - offsetof(PgQuery__AlterDatabaseStmt, options), + offsetof(PgQuery__DeleteStmt, n_using_clause), + offsetof(PgQuery__DeleteStmt, using_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alter_database_stmt__field_indices_by_name[] = { - 0, /* field[0] = dbname */ - 1, /* field[1] = options */ -}; -static const ProtobufCIntRange pg_query__alter_database_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__alter_database_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterDatabaseStmt", - "AlterDatabaseStmt", - "PgQuery__AlterDatabaseStmt", - "pg_query", - sizeof(PgQuery__AlterDatabaseStmt), - 2, - pg_query__alter_database_stmt__field_descriptors, - pg_query__alter_database_stmt__field_indices_by_name, - 1, pg_query__alter_database_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_database_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_database_refresh_coll_stmt__field_descriptors[1] = -{ { - "dbname", - 1, + "where_clause", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDatabaseRefreshCollStmt, dbname), + offsetof(PgQuery__DeleteStmt, where_clause), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "returning_list", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__DeleteStmt, n_returning_list), + offsetof(PgQuery__DeleteStmt, returning_list), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "with_clause", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__DeleteStmt, with_clause), + &pg_query__with_clause__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_database_refresh_coll_stmt__field_indices_by_name[] = { - 0, /* field[0] = dbname */ +static const unsigned pg_query__delete_stmt__field_indices_by_name[] = { + 0, /* field[0] = relation */ + 3, /* field[3] = returning_list */ + 1, /* field[1] = using_clause */ + 2, /* field[2] = where_clause */ + 4, /* field[4] = with_clause */ }; -static const ProtobufCIntRange pg_query__alter_database_refresh_coll_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__delete_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__alter_database_refresh_coll_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__delete_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterDatabaseRefreshCollStmt", - "AlterDatabaseRefreshCollStmt", - "PgQuery__AlterDatabaseRefreshCollStmt", + "pg_query.DeleteStmt", + "DeleteStmt", + "PgQuery__DeleteStmt", "pg_query", - sizeof(PgQuery__AlterDatabaseRefreshCollStmt), - 1, - pg_query__alter_database_refresh_coll_stmt__field_descriptors, - pg_query__alter_database_refresh_coll_stmt__field_indices_by_name, - 1, pg_query__alter_database_refresh_coll_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_database_refresh_coll_stmt__init, + sizeof(PgQuery__DeleteStmt), + 5, + pg_query__delete_stmt__field_descriptors, + pg_query__delete_stmt__field_indices_by_name, + 1, pg_query__delete_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__delete_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_database_set_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__update_stmt__field_descriptors[6] = { { - "dbname", + "relation", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDatabaseSetStmt, dbname), + offsetof(PgQuery__UpdateStmt, relation), + &pg_query__range_var__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "setstmt", + "target_list", 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__UpdateStmt, n_target_list), + offsetof(PgQuery__UpdateStmt, target_list), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "where_clause", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterDatabaseSetStmt, setstmt), - &pg_query__variable_set_stmt__descriptor, + offsetof(PgQuery__UpdateStmt, where_clause), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alter_database_set_stmt__field_indices_by_name[] = { - 0, /* field[0] = dbname */ - 1, /* field[1] = setstmt */ -}; -static const ProtobufCIntRange pg_query__alter_database_set_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__alter_database_set_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterDatabaseSetStmt", - "AlterDatabaseSetStmt", - "PgQuery__AlterDatabaseSetStmt", - "pg_query", - sizeof(PgQuery__AlterDatabaseSetStmt), - 2, - pg_query__alter_database_set_stmt__field_descriptors, - pg_query__alter_database_set_stmt__field_indices_by_name, - 1, pg_query__alter_database_set_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_database_set_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_role_set_stmt__field_descriptors[3] = -{ { - "role", - 1, - PROTOBUF_C_LABEL_NONE, + "from_clause", + 4, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterRoleSetStmt, role), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__UpdateStmt, n_from_clause), + offsetof(PgQuery__UpdateStmt, from_clause), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "database", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterRoleSetStmt, database), + "returning_list", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__UpdateStmt, n_returning_list), + offsetof(PgQuery__UpdateStmt, returning_list), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "setstmt", - 3, + "with_clause", + 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterRoleSetStmt, setstmt), - &pg_query__variable_set_stmt__descriptor, + offsetof(PgQuery__UpdateStmt, with_clause), + &pg_query__with_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_role_set_stmt__field_indices_by_name[] = { - 1, /* field[1] = database */ - 0, /* field[0] = role */ - 2, /* field[2] = setstmt */ +static const unsigned pg_query__update_stmt__field_indices_by_name[] = { + 3, /* field[3] = from_clause */ + 0, /* field[0] = relation */ + 4, /* field[4] = returning_list */ + 1, /* field[1] = target_list */ + 2, /* field[2] = where_clause */ + 5, /* field[5] = with_clause */ }; -static const ProtobufCIntRange pg_query__alter_role_set_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__update_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__alter_role_set_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__update_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterRoleSetStmt", - "AlterRoleSetStmt", - "PgQuery__AlterRoleSetStmt", + "pg_query.UpdateStmt", + "UpdateStmt", + "PgQuery__UpdateStmt", "pg_query", - sizeof(PgQuery__AlterRoleSetStmt), - 3, - pg_query__alter_role_set_stmt__field_descriptors, - pg_query__alter_role_set_stmt__field_indices_by_name, - 1, pg_query__alter_role_set_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_role_set_stmt__init, + sizeof(PgQuery__UpdateStmt), + 6, + pg_query__update_stmt__field_descriptors, + pg_query__update_stmt__field_indices_by_name, + 1, pg_query__update_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__update_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_conversion_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__merge_stmt__field_descriptors[5] = { { - "conversion_name", + "relation", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateConversionStmt, n_conversion_name), - offsetof(PgQuery__CreateConversionStmt, conversion_name), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__MergeStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "for_encoding_name", + "source_relation", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateConversionStmt, for_encoding_name), + offsetof(PgQuery__MergeStmt, source_relation), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "to_encoding_name", + "join_condition", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateConversionStmt, to_encoding_name), + offsetof(PgQuery__MergeStmt, join_condition), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "func_name", + "merge_when_clauses", 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateConversionStmt, n_func_name), - offsetof(PgQuery__CreateConversionStmt, func_name), + offsetof(PgQuery__MergeStmt, n_merge_when_clauses), + offsetof(PgQuery__MergeStmt, merge_when_clauses), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "def", + "with_clause", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateConversionStmt, def), - NULL, + offsetof(PgQuery__MergeStmt, with_clause), + &pg_query__with_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_conversion_stmt__field_indices_by_name[] = { - 0, /* field[0] = conversion_name */ - 4, /* field[4] = def */ - 1, /* field[1] = for_encoding_name */ - 3, /* field[3] = func_name */ - 2, /* field[2] = to_encoding_name */ +static const unsigned pg_query__merge_stmt__field_indices_by_name[] = { + 2, /* field[2] = join_condition */ + 3, /* field[3] = merge_when_clauses */ + 0, /* field[0] = relation */ + 1, /* field[1] = source_relation */ + 4, /* field[4] = with_clause */ }; -static const ProtobufCIntRange pg_query__create_conversion_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__merge_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__create_conversion_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__merge_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateConversionStmt", - "CreateConversionStmt", - "PgQuery__CreateConversionStmt", + "pg_query.MergeStmt", + "MergeStmt", + "PgQuery__MergeStmt", "pg_query", - sizeof(PgQuery__CreateConversionStmt), + sizeof(PgQuery__MergeStmt), 5, - pg_query__create_conversion_stmt__field_descriptors, - pg_query__create_conversion_stmt__field_indices_by_name, - 1, pg_query__create_conversion_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_conversion_stmt__init, + pg_query__merge_stmt__field_descriptors, + pg_query__merge_stmt__field_indices_by_name, + 1, pg_query__merge_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__merge_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_cast_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__select_stmt__field_descriptors[20] = { { - "sourcetype", + "distinct_clause", 1, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateCastStmt, sourcetype), - &pg_query__type_name__descriptor, + offsetof(PgQuery__SelectStmt, n_distinct_clause), + offsetof(PgQuery__SelectStmt, distinct_clause), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "targettype", + "into_clause", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateCastStmt, targettype), - &pg_query__type_name__descriptor, + offsetof(PgQuery__SelectStmt, into_clause), + &pg_query__into_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "func", + "target_list", 3, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateCastStmt, func), - &pg_query__object_with_args__descriptor, + offsetof(PgQuery__SelectStmt, n_target_list), + offsetof(PgQuery__SelectStmt, target_list), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "context", + "from_clause", 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__SelectStmt, n_from_clause), + offsetof(PgQuery__SelectStmt, from_clause), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "where_clause", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateCastStmt, context), - &pg_query__coercion_context__descriptor, + offsetof(PgQuery__SelectStmt, where_clause), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inout", - 5, + "group_clause", + 6, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__SelectStmt, n_group_clause), + offsetof(PgQuery__SelectStmt, group_clause), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "group_distinct", + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateCastStmt, inout), + offsetof(PgQuery__SelectStmt, group_distinct), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_cast_stmt__field_indices_by_name[] = { - 3, /* field[3] = context */ - 2, /* field[2] = func */ - 4, /* field[4] = inout */ - 0, /* field[0] = sourcetype */ - 1, /* field[1] = targettype */ -}; -static const ProtobufCIntRange pg_query__create_cast_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 5 } -}; -const ProtobufCMessageDescriptor pg_query__create_cast_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateCastStmt", - "CreateCastStmt", - "PgQuery__CreateCastStmt", - "pg_query", - sizeof(PgQuery__CreateCastStmt), - 5, - pg_query__create_cast_stmt__field_descriptors, - pg_query__create_cast_stmt__field_indices_by_name, - 1, pg_query__create_cast_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_cast_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_op_class_stmt__field_descriptors[6] = -{ { - "opclassname", - 1, + "having_clause", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__SelectStmt, having_clause), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "window_clause", + 9, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateOpClassStmt, n_opclassname), - offsetof(PgQuery__CreateOpClassStmt, opclassname), + offsetof(PgQuery__SelectStmt, n_window_clause), + offsetof(PgQuery__SelectStmt, window_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opfamilyname", - 2, + "values_lists", + 10, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateOpClassStmt, n_opfamilyname), - offsetof(PgQuery__CreateOpClassStmt, opfamilyname), + offsetof(PgQuery__SelectStmt, n_values_lists), + offsetof(PgQuery__SelectStmt, values_lists), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "amname", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateOpClassStmt, amname), + "sort_clause", + 11, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__SelectStmt, n_sort_clause), + offsetof(PgQuery__SelectStmt, sort_clause), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "datatype", - 4, + "limit_offset", + 12, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateOpClassStmt, datatype), - &pg_query__type_name__descriptor, + offsetof(PgQuery__SelectStmt, limit_offset), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "items", - 5, - PROTOBUF_C_LABEL_REPEATED, + "limit_count", + 13, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateOpClassStmt, n_items), - offsetof(PgQuery__CreateOpClassStmt, items), + 0, /* quantifier_offset */ + offsetof(PgQuery__SelectStmt, limit_count), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_default", - 6, + "limit_option", + 14, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateOpClassStmt, is_default), - NULL, + offsetof(PgQuery__SelectStmt, limit_option), + &pg_query__limit_option__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_op_class_stmt__field_indices_by_name[] = { - 2, /* field[2] = amname */ - 3, /* field[3] = datatype */ - 5, /* field[5] = is_default */ - 4, /* field[4] = items */ - 0, /* field[0] = opclassname */ - 1, /* field[1] = opfamilyname */ -}; -static const ProtobufCIntRange pg_query__create_op_class_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 6 } -}; -const ProtobufCMessageDescriptor pg_query__create_op_class_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateOpClassStmt", - "CreateOpClassStmt", - "PgQuery__CreateOpClassStmt", - "pg_query", - sizeof(PgQuery__CreateOpClassStmt), - 6, - pg_query__create_op_class_stmt__field_descriptors, - pg_query__create_op_class_stmt__field_indices_by_name, - 1, pg_query__create_op_class_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_op_class_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_op_family_stmt__field_descriptors[2] = -{ { - "opfamilyname", - 1, + "locking_clause", + 15, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateOpFamilyStmt, n_opfamilyname), - offsetof(PgQuery__CreateOpFamilyStmt, opfamilyname), + offsetof(PgQuery__SelectStmt, n_locking_clause), + offsetof(PgQuery__SelectStmt, locking_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "amname", - 2, + "with_clause", + 16, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateOpFamilyStmt, amname), + offsetof(PgQuery__SelectStmt, with_clause), + &pg_query__with_clause__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_op_family_stmt__field_indices_by_name[] = { - 1, /* field[1] = amname */ - 0, /* field[0] = opfamilyname */ -}; -static const ProtobufCIntRange pg_query__create_op_family_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__create_op_family_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateOpFamilyStmt", - "CreateOpFamilyStmt", - "PgQuery__CreateOpFamilyStmt", - "pg_query", - sizeof(PgQuery__CreateOpFamilyStmt), - 2, - pg_query__create_op_family_stmt__field_descriptors, - pg_query__create_op_family_stmt__field_indices_by_name, - 1, pg_query__create_op_family_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_op_family_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_op_family_stmt__field_descriptors[4] = -{ { - "opfamilyname", - 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterOpFamilyStmt, n_opfamilyname), - offsetof(PgQuery__AlterOpFamilyStmt, opfamilyname), - &pg_query__node__descriptor, + "op", + 17, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__SelectStmt, op), + &pg_query__set_operation__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "amname", - 2, + "all", + 18, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterOpFamilyStmt, amname), + offsetof(PgQuery__SelectStmt, all), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_drop", - 3, + "larg", + 19, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterOpFamilyStmt, is_drop), - NULL, + offsetof(PgQuery__SelectStmt, larg), + &pg_query__select_stmt__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "items", - 4, - PROTOBUF_C_LABEL_REPEATED, + "rarg", + 20, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterOpFamilyStmt, n_items), - offsetof(PgQuery__AlterOpFamilyStmt, items), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__SelectStmt, rarg), + &pg_query__select_stmt__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_op_family_stmt__field_indices_by_name[] = { - 1, /* field[1] = amname */ - 2, /* field[2] = is_drop */ - 3, /* field[3] = items */ - 0, /* field[0] = opfamilyname */ +static const unsigned pg_query__select_stmt__field_indices_by_name[] = { + 17, /* field[17] = all */ + 0, /* field[0] = distinct_clause */ + 3, /* field[3] = from_clause */ + 5, /* field[5] = group_clause */ + 6, /* field[6] = group_distinct */ + 7, /* field[7] = having_clause */ + 1, /* field[1] = into_clause */ + 18, /* field[18] = larg */ + 12, /* field[12] = limit_count */ + 11, /* field[11] = limit_offset */ + 13, /* field[13] = limit_option */ + 14, /* field[14] = locking_clause */ + 16, /* field[16] = op */ + 19, /* field[19] = rarg */ + 10, /* field[10] = sort_clause */ + 2, /* field[2] = target_list */ + 9, /* field[9] = values_lists */ + 4, /* field[4] = where_clause */ + 8, /* field[8] = window_clause */ + 15, /* field[15] = with_clause */ }; -static const ProtobufCIntRange pg_query__alter_op_family_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__select_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 20 } }; -const ProtobufCMessageDescriptor pg_query__alter_op_family_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__select_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterOpFamilyStmt", - "AlterOpFamilyStmt", - "PgQuery__AlterOpFamilyStmt", + "pg_query.SelectStmt", + "SelectStmt", + "PgQuery__SelectStmt", "pg_query", - sizeof(PgQuery__AlterOpFamilyStmt), - 4, - pg_query__alter_op_family_stmt__field_descriptors, - pg_query__alter_op_family_stmt__field_indices_by_name, - 1, pg_query__alter_op_family_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_op_family_stmt__init, + sizeof(PgQuery__SelectStmt), + 20, + pg_query__select_stmt__field_descriptors, + pg_query__select_stmt__field_indices_by_name, + 1, pg_query__select_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__select_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__prepare_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__set_operation_stmt__field_descriptors[8] = { { - "name", + "op", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__SetOperationStmt, op), + &pg_query__set_operation__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "all", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__SetOperationStmt, all), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "larg", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__SetOperationStmt, larg), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rarg", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__PrepareStmt, name), + offsetof(PgQuery__SetOperationStmt, rarg), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "argtypes", - 2, + "col_types", + 5, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__PrepareStmt, n_argtypes), - offsetof(PgQuery__PrepareStmt, argtypes), + offsetof(PgQuery__SetOperationStmt, n_col_types), + offsetof(PgQuery__SetOperationStmt, col_types), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "query", - 3, - PROTOBUF_C_LABEL_NONE, + "col_typmods", + 6, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__PrepareStmt, query), + offsetof(PgQuery__SetOperationStmt, n_col_typmods), + offsetof(PgQuery__SetOperationStmt, col_typmods), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__prepare_stmt__field_indices_by_name[] = { - 1, /* field[1] = argtypes */ - 0, /* field[0] = name */ - 2, /* field[2] = query */ -}; -static const ProtobufCIntRange pg_query__prepare_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__prepare_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.PrepareStmt", - "PrepareStmt", - "PgQuery__PrepareStmt", - "pg_query", - sizeof(PgQuery__PrepareStmt), - 3, - pg_query__prepare_stmt__field_descriptors, - pg_query__prepare_stmt__field_indices_by_name, - 1, pg_query__prepare_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__prepare_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__execute_stmt__field_descriptors[2] = -{ { - "name", - 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__ExecuteStmt, name), + "col_collations", + 7, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__SetOperationStmt, n_col_collations), + offsetof(PgQuery__SetOperationStmt, col_collations), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "params", - 2, + "group_clauses", + 8, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ExecuteStmt, n_params), - offsetof(PgQuery__ExecuteStmt, params), + offsetof(PgQuery__SetOperationStmt, n_group_clauses), + offsetof(PgQuery__SetOperationStmt, group_clauses), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__execute_stmt__field_indices_by_name[] = { - 0, /* field[0] = name */ - 1, /* field[1] = params */ +static const unsigned pg_query__set_operation_stmt__field_indices_by_name[] = { + 1, /* field[1] = all */ + 6, /* field[6] = col_collations */ + 4, /* field[4] = col_types */ + 5, /* field[5] = col_typmods */ + 7, /* field[7] = group_clauses */ + 2, /* field[2] = larg */ + 0, /* field[0] = op */ + 3, /* field[3] = rarg */ }; -static const ProtobufCIntRange pg_query__execute_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__set_operation_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__execute_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__set_operation_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ExecuteStmt", - "ExecuteStmt", - "PgQuery__ExecuteStmt", + "pg_query.SetOperationStmt", + "SetOperationStmt", + "PgQuery__SetOperationStmt", "pg_query", - sizeof(PgQuery__ExecuteStmt), - 2, - pg_query__execute_stmt__field_descriptors, - pg_query__execute_stmt__field_indices_by_name, - 1, pg_query__execute_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__execute_stmt__init, + sizeof(PgQuery__SetOperationStmt), + 8, + pg_query__set_operation_stmt__field_descriptors, + pg_query__set_operation_stmt__field_indices_by_name, + 1, pg_query__set_operation_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__set_operation_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__deallocate_stmt__field_descriptors[1] = +static const ProtobufCFieldDescriptor pg_query__return_stmt__field_descriptors[1] = { { - "name", + "returnval", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__DeallocateStmt, name), + offsetof(PgQuery__ReturnStmt, returnval), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__deallocate_stmt__field_indices_by_name[] = { - 0, /* field[0] = name */ +static const unsigned pg_query__return_stmt__field_indices_by_name[] = { + 0, /* field[0] = returnval */ }; -static const ProtobufCIntRange pg_query__deallocate_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__return_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 1 } }; -const ProtobufCMessageDescriptor pg_query__deallocate_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__return_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DeallocateStmt", - "DeallocateStmt", - "PgQuery__DeallocateStmt", + "pg_query.ReturnStmt", + "ReturnStmt", + "PgQuery__ReturnStmt", "pg_query", - sizeof(PgQuery__DeallocateStmt), + sizeof(PgQuery__ReturnStmt), 1, - pg_query__deallocate_stmt__field_descriptors, - pg_query__deallocate_stmt__field_indices_by_name, - 1, pg_query__deallocate_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__deallocate_stmt__init, + pg_query__return_stmt__field_descriptors, + pg_query__return_stmt__field_indices_by_name, + 1, pg_query__return_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__return_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__declare_cursor_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__plassign_stmt__field_descriptors[5] = { { - "portalname", + "name", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__DeclareCursorStmt, portalname), + offsetof(PgQuery__PLAssignStmt, name), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "indirection", 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__PLAssignStmt, n_indirection), + offsetof(PgQuery__PLAssignStmt, indirection), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "nnames", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__DeclareCursorStmt, options), + offsetof(PgQuery__PLAssignStmt, nnames), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "query", - 3, + "val", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__DeclareCursorStmt, query), - &pg_query__node__descriptor, + offsetof(PgQuery__PLAssignStmt, val), + &pg_query__select_stmt__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "location", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__PLAssignStmt, location), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__declare_cursor_stmt__field_indices_by_name[] = { - 1, /* field[1] = options */ - 0, /* field[0] = portalname */ - 2, /* field[2] = query */ +static const unsigned pg_query__plassign_stmt__field_indices_by_name[] = { + 1, /* field[1] = indirection */ + 4, /* field[4] = location */ + 0, /* field[0] = name */ + 2, /* field[2] = nnames */ + 3, /* field[3] = val */ }; -static const ProtobufCIntRange pg_query__declare_cursor_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__plassign_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__declare_cursor_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__plassign_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DeclareCursorStmt", - "DeclareCursorStmt", - "PgQuery__DeclareCursorStmt", + "pg_query.PLAssignStmt", + "PLAssignStmt", + "PgQuery__PLAssignStmt", "pg_query", - sizeof(PgQuery__DeclareCursorStmt), - 3, - pg_query__declare_cursor_stmt__field_descriptors, - pg_query__declare_cursor_stmt__field_indices_by_name, - 1, pg_query__declare_cursor_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__declare_cursor_stmt__init, + sizeof(PgQuery__PLAssignStmt), + 5, + pg_query__plassign_stmt__field_descriptors, + pg_query__plassign_stmt__field_indices_by_name, + 1, pg_query__plassign_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__plassign_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_table_space_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__create_schema_stmt__field_descriptors[4] = { { - "tablespacename", + "schemaname", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTableSpaceStmt, tablespacename), + offsetof(PgQuery__CreateSchemaStmt, schemaname), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "owner", + "authrole", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTableSpaceStmt, owner), + offsetof(PgQuery__CreateSchemaStmt, authrole), &pg_query__role_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "schema_elts", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTableSpaceStmt, location), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "options", - 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateTableSpaceStmt, n_options), - offsetof(PgQuery__CreateTableSpaceStmt, options), + offsetof(PgQuery__CreateSchemaStmt, n_schema_elts), + offsetof(PgQuery__CreateSchemaStmt, schema_elts), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_table_space_stmt__field_indices_by_name[] = { - 2, /* field[2] = location */ - 3, /* field[3] = options */ - 1, /* field[1] = owner */ - 0, /* field[0] = tablespacename */ -}; -static const ProtobufCIntRange pg_query__create_table_space_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 4 } -}; -const ProtobufCMessageDescriptor pg_query__create_table_space_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateTableSpaceStmt", - "CreateTableSpaceStmt", - "PgQuery__CreateTableSpaceStmt", - "pg_query", - sizeof(PgQuery__CreateTableSpaceStmt), - 4, - pg_query__create_table_space_stmt__field_descriptors, - pg_query__create_table_space_stmt__field_indices_by_name, - 1, pg_query__create_table_space_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_table_space_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__drop_table_space_stmt__field_descriptors[2] = -{ - { - "tablespacename", - 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__DropTableSpaceStmt, tablespacename), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, { - "missing_ok", - 2, + "if_not_exists", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DropTableSpaceStmt, missing_ok), + offsetof(PgQuery__CreateSchemaStmt, if_not_exists), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__drop_table_space_stmt__field_indices_by_name[] = { - 1, /* field[1] = missing_ok */ - 0, /* field[0] = tablespacename */ +static const unsigned pg_query__create_schema_stmt__field_indices_by_name[] = { + 1, /* field[1] = authrole */ + 3, /* field[3] = if_not_exists */ + 2, /* field[2] = schema_elts */ + 0, /* field[0] = schemaname */ }; -static const ProtobufCIntRange pg_query__drop_table_space_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_schema_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__drop_table_space_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__create_schema_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DropTableSpaceStmt", - "DropTableSpaceStmt", - "PgQuery__DropTableSpaceStmt", + "pg_query.CreateSchemaStmt", + "CreateSchemaStmt", + "PgQuery__CreateSchemaStmt", "pg_query", - sizeof(PgQuery__DropTableSpaceStmt), - 2, - pg_query__drop_table_space_stmt__field_descriptors, - pg_query__drop_table_space_stmt__field_indices_by_name, - 1, pg_query__drop_table_space_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__drop_table_space_stmt__init, + sizeof(PgQuery__CreateSchemaStmt), + 4, + pg_query__create_schema_stmt__field_descriptors, + pg_query__create_schema_stmt__field_indices_by_name, + 1, pg_query__create_schema_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_schema_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_object_depends_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__alter_table_stmt__field_descriptors[4] = { - { - "object_type", - 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectDependsStmt, object_type), - &pg_query__object_type__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, { "relation", - 2, + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectDependsStmt, relation), + offsetof(PgQuery__AlterTableStmt, relation), &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "object", - 3, - PROTOBUF_C_LABEL_NONE, + "cmds", + 2, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectDependsStmt, object), + offsetof(PgQuery__AlterTableStmt, n_cmds), + offsetof(PgQuery__AlterTableStmt, cmds), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "extname", - 4, + "objtype", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectDependsStmt, extname), - &pg_query__string__descriptor, + offsetof(PgQuery__AlterTableStmt, objtype), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "remove", - 5, + "missing_ok", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectDependsStmt, remove), + offsetof(PgQuery__AlterTableStmt, missing_ok), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_object_depends_stmt__field_indices_by_name[] = { - 3, /* field[3] = extname */ - 2, /* field[2] = object */ - 0, /* field[0] = object_type */ - 1, /* field[1] = relation */ - 4, /* field[4] = remove */ +static const unsigned pg_query__alter_table_stmt__field_indices_by_name[] = { + 1, /* field[1] = cmds */ + 3, /* field[3] = missing_ok */ + 2, /* field[2] = objtype */ + 0, /* field[0] = relation */ }; -static const ProtobufCIntRange pg_query__alter_object_depends_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_table_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__alter_object_depends_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_table_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterObjectDependsStmt", - "AlterObjectDependsStmt", - "PgQuery__AlterObjectDependsStmt", + "pg_query.AlterTableStmt", + "AlterTableStmt", + "PgQuery__AlterTableStmt", "pg_query", - sizeof(PgQuery__AlterObjectDependsStmt), - 5, - pg_query__alter_object_depends_stmt__field_descriptors, - pg_query__alter_object_depends_stmt__field_indices_by_name, - 1, pg_query__alter_object_depends_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_object_depends_stmt__init, + sizeof(PgQuery__AlterTableStmt), + 4, + pg_query__alter_table_stmt__field_descriptors, + pg_query__alter_table_stmt__field_indices_by_name, + 1, pg_query__alter_table_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_table_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_object_schema_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__replica_identity_stmt__field_descriptors[2] = { { - "object_type", + "identity_type", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectSchemaStmt, object_type), - &pg_query__object_type__descriptor, + offsetof(PgQuery__ReplicaIdentityStmt, identity_type), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relation", + "name", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectSchemaStmt, relation), - &pg_query__range_var__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "object", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectSchemaStmt, object), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "newschema", - 4, - PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectSchemaStmt, newschema), + offsetof(PgQuery__ReplicaIdentityStmt, name), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "missing_ok", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterObjectSchemaStmt, missing_ok), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, }; -static const unsigned pg_query__alter_object_schema_stmt__field_indices_by_name[] = { - 4, /* field[4] = missing_ok */ - 3, /* field[3] = newschema */ - 2, /* field[2] = object */ - 0, /* field[0] = object_type */ - 1, /* field[1] = relation */ +static const unsigned pg_query__replica_identity_stmt__field_indices_by_name[] = { + 0, /* field[0] = identity_type */ + 1, /* field[1] = name */ }; -static const ProtobufCIntRange pg_query__alter_object_schema_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__replica_identity_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__alter_object_schema_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__replica_identity_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterObjectSchemaStmt", - "AlterObjectSchemaStmt", - "PgQuery__AlterObjectSchemaStmt", + "pg_query.ReplicaIdentityStmt", + "ReplicaIdentityStmt", + "PgQuery__ReplicaIdentityStmt", "pg_query", - sizeof(PgQuery__AlterObjectSchemaStmt), - 5, - pg_query__alter_object_schema_stmt__field_descriptors, - pg_query__alter_object_schema_stmt__field_indices_by_name, - 1, pg_query__alter_object_schema_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_object_schema_stmt__init, + sizeof(PgQuery__ReplicaIdentityStmt), + 2, + pg_query__replica_identity_stmt__field_descriptors, + pg_query__replica_identity_stmt__field_indices_by_name, + 1, pg_query__replica_identity_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__replica_identity_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_owner_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__alter_table_cmd__field_descriptors[8] = { { - "object_type", - 1, + "subtype", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterTableCmd, subtype), + &pg_query__alter_table_type__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "name", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterTableCmd, name), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "num", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterOwnerStmt, object_type), - &pg_query__object_type__descriptor, + offsetof(PgQuery__AlterTableCmd, num), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relation", - 2, + "newowner", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterOwnerStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__AlterTableCmd, newowner), + &pg_query__role_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "object", - 3, + "def", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterOwnerStmt, object), + offsetof(PgQuery__AlterTableCmd, def), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "newowner", - 4, + "behavior", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterOwnerStmt, newowner), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__AlterTableCmd, behavior), + &pg_query__drop_behavior__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "missing_ok", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterTableCmd, missing_ok), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "recurse", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterTableCmd, recurse), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_owner_stmt__field_indices_by_name[] = { +static const unsigned pg_query__alter_table_cmd__field_indices_by_name[] = { + 5, /* field[5] = behavior */ + 4, /* field[4] = def */ + 6, /* field[6] = missing_ok */ + 1, /* field[1] = name */ 3, /* field[3] = newowner */ - 2, /* field[2] = object */ - 0, /* field[0] = object_type */ - 1, /* field[1] = relation */ + 2, /* field[2] = num */ + 7, /* field[7] = recurse */ + 0, /* field[0] = subtype */ }; -static const ProtobufCIntRange pg_query__alter_owner_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_table_cmd__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__alter_owner_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_table_cmd__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterOwnerStmt", - "AlterOwnerStmt", - "PgQuery__AlterOwnerStmt", + "pg_query.AlterTableCmd", + "AlterTableCmd", + "PgQuery__AlterTableCmd", "pg_query", - sizeof(PgQuery__AlterOwnerStmt), - 4, - pg_query__alter_owner_stmt__field_descriptors, - pg_query__alter_owner_stmt__field_indices_by_name, - 1, pg_query__alter_owner_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_owner_stmt__init, + sizeof(PgQuery__AlterTableCmd), + 8, + pg_query__alter_table_cmd__field_descriptors, + pg_query__alter_table_cmd__field_indices_by_name, + 1, pg_query__alter_table_cmd__number_ranges, + (ProtobufCMessageInit) pg_query__alter_table_cmd__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_operator_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__alter_collation_stmt__field_descriptors[1] = { { - "opername", + "collname", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterOperatorStmt, opername), - &pg_query__object_with_args__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "options", - 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterOperatorStmt, n_options), - offsetof(PgQuery__AlterOperatorStmt, options), + offsetof(PgQuery__AlterCollationStmt, n_collname), + offsetof(PgQuery__AlterCollationStmt, collname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_operator_stmt__field_indices_by_name[] = { - 0, /* field[0] = opername */ - 1, /* field[1] = options */ +static const unsigned pg_query__alter_collation_stmt__field_indices_by_name[] = { + 0, /* field[0] = collname */ }; -static const ProtobufCIntRange pg_query__alter_operator_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_collation_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 1 } }; -const ProtobufCMessageDescriptor pg_query__alter_operator_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_collation_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterOperatorStmt", - "AlterOperatorStmt", - "PgQuery__AlterOperatorStmt", + "pg_query.AlterCollationStmt", + "AlterCollationStmt", + "PgQuery__AlterCollationStmt", "pg_query", - sizeof(PgQuery__AlterOperatorStmt), - 2, - pg_query__alter_operator_stmt__field_descriptors, - pg_query__alter_operator_stmt__field_indices_by_name, - 1, pg_query__alter_operator_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_operator_stmt__init, + sizeof(PgQuery__AlterCollationStmt), + 1, + pg_query__alter_collation_stmt__field_descriptors, + pg_query__alter_collation_stmt__field_indices_by_name, + 1, pg_query__alter_collation_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_collation_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_type_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__alter_domain_stmt__field_descriptors[6] = { { - "type_name", + "subtype", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTypeStmt, n_type_name), - offsetof(PgQuery__AlterTypeStmt, type_name), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterDomainStmt, subtype), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "type_name", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTypeStmt, n_options), - offsetof(PgQuery__AlterTypeStmt, options), + offsetof(PgQuery__AlterDomainStmt, n_type_name), + offsetof(PgQuery__AlterDomainStmt, type_name), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alter_type_stmt__field_indices_by_name[] = { - 1, /* field[1] = options */ - 0, /* field[0] = type_name */ -}; -static const ProtobufCIntRange pg_query__alter_type_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__alter_type_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterTypeStmt", - "AlterTypeStmt", - "PgQuery__AlterTypeStmt", - "pg_query", - sizeof(PgQuery__AlterTypeStmt), - 2, - pg_query__alter_type_stmt__field_descriptors, - pg_query__alter_type_stmt__field_indices_by_name, - 1, pg_query__alter_type_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_type_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__drop_owned_stmt__field_descriptors[2] = -{ { - "roles", - 1, - PROTOBUF_C_LABEL_REPEATED, + "name", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterDomainStmt, name), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "def", + 4, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__DropOwnedStmt, n_roles), - offsetof(PgQuery__DropOwnedStmt, roles), + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterDomainStmt, def), &pg_query__node__descriptor, NULL, 0, /* flags */ @@ -27328,2460 +28996,2201 @@ static const ProtobufCFieldDescriptor pg_query__drop_owned_stmt__field_descripto }, { "behavior", - 2, + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__DropOwnedStmt, behavior), + offsetof(PgQuery__AlterDomainStmt, behavior), &pg_query__drop_behavior__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, + { + "missing_ok", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterDomainStmt, missing_ok), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, }; -static const unsigned pg_query__drop_owned_stmt__field_indices_by_name[] = { - 1, /* field[1] = behavior */ - 0, /* field[0] = roles */ +static const unsigned pg_query__alter_domain_stmt__field_indices_by_name[] = { + 4, /* field[4] = behavior */ + 3, /* field[3] = def */ + 5, /* field[5] = missing_ok */ + 2, /* field[2] = name */ + 0, /* field[0] = subtype */ + 1, /* field[1] = type_name */ }; -static const ProtobufCIntRange pg_query__drop_owned_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_domain_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__drop_owned_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_domain_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DropOwnedStmt", - "DropOwnedStmt", - "PgQuery__DropOwnedStmt", + "pg_query.AlterDomainStmt", + "AlterDomainStmt", + "PgQuery__AlterDomainStmt", "pg_query", - sizeof(PgQuery__DropOwnedStmt), - 2, - pg_query__drop_owned_stmt__field_descriptors, - pg_query__drop_owned_stmt__field_indices_by_name, - 1, pg_query__drop_owned_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__drop_owned_stmt__init, + sizeof(PgQuery__AlterDomainStmt), + 6, + pg_query__alter_domain_stmt__field_descriptors, + pg_query__alter_domain_stmt__field_indices_by_name, + 1, pg_query__alter_domain_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_domain_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__reassign_owned_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__grant_stmt__field_descriptors[9] = { { - "roles", + "is_grant", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ReassignOwnedStmt, n_roles), - offsetof(PgQuery__ReassignOwnedStmt, roles), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__GrantStmt, is_grant), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "newrole", + "targtype", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ReassignOwnedStmt, newrole), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__GrantStmt, targtype), + &pg_query__grant_target_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__reassign_owned_stmt__field_indices_by_name[] = { - 1, /* field[1] = newrole */ - 0, /* field[0] = roles */ -}; -static const ProtobufCIntRange pg_query__reassign_owned_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__reassign_owned_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ReassignOwnedStmt", - "ReassignOwnedStmt", - "PgQuery__ReassignOwnedStmt", - "pg_query", - sizeof(PgQuery__ReassignOwnedStmt), - 2, - pg_query__reassign_owned_stmt__field_descriptors, - pg_query__reassign_owned_stmt__field_indices_by_name, - 1, pg_query__reassign_owned_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__reassign_owned_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__composite_type_stmt__field_descriptors[2] = -{ { - "typevar", - 1, + "objtype", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CompositeTypeStmt, typevar), - &pg_query__range_var__descriptor, + offsetof(PgQuery__GrantStmt, objtype), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coldeflist", - 2, + "objects", + 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CompositeTypeStmt, n_coldeflist), - offsetof(PgQuery__CompositeTypeStmt, coldeflist), + offsetof(PgQuery__GrantStmt, n_objects), + offsetof(PgQuery__GrantStmt, objects), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__composite_type_stmt__field_indices_by_name[] = { - 1, /* field[1] = coldeflist */ - 0, /* field[0] = typevar */ -}; -static const ProtobufCIntRange pg_query__composite_type_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__composite_type_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CompositeTypeStmt", - "CompositeTypeStmt", - "PgQuery__CompositeTypeStmt", - "pg_query", - sizeof(PgQuery__CompositeTypeStmt), - 2, - pg_query__composite_type_stmt__field_descriptors, - pg_query__composite_type_stmt__field_indices_by_name, - 1, pg_query__composite_type_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__composite_type_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_enum_stmt__field_descriptors[2] = -{ { - "type_name", - 1, + "privileges", + 5, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateEnumStmt, n_type_name), - offsetof(PgQuery__CreateEnumStmt, type_name), + offsetof(PgQuery__GrantStmt, n_privileges), + offsetof(PgQuery__GrantStmt, privileges), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "vals", - 2, + "grantees", + 6, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateEnumStmt, n_vals), - offsetof(PgQuery__CreateEnumStmt, vals), + offsetof(PgQuery__GrantStmt, n_grantees), + offsetof(PgQuery__GrantStmt, grantees), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_enum_stmt__field_indices_by_name[] = { - 0, /* field[0] = type_name */ - 1, /* field[1] = vals */ -}; -static const ProtobufCIntRange pg_query__create_enum_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__create_enum_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateEnumStmt", - "CreateEnumStmt", - "PgQuery__CreateEnumStmt", - "pg_query", - sizeof(PgQuery__CreateEnumStmt), - 2, - pg_query__create_enum_stmt__field_descriptors, - pg_query__create_enum_stmt__field_indices_by_name, - 1, pg_query__create_enum_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_enum_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_range_stmt__field_descriptors[2] = -{ { - "type_name", - 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateRangeStmt, n_type_name), - offsetof(PgQuery__CreateRangeStmt, type_name), - &pg_query__node__descriptor, + "grant_option", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__GrantStmt, grant_option), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "params", - 2, - PROTOBUF_C_LABEL_REPEATED, + "grantor", + 8, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateRangeStmt, n_params), - offsetof(PgQuery__CreateRangeStmt, params), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__GrantStmt, grantor), + &pg_query__role_spec__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "behavior", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__GrantStmt, behavior), + &pg_query__drop_behavior__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_range_stmt__field_indices_by_name[] = { - 1, /* field[1] = params */ - 0, /* field[0] = type_name */ +static const unsigned pg_query__grant_stmt__field_indices_by_name[] = { + 8, /* field[8] = behavior */ + 6, /* field[6] = grant_option */ + 5, /* field[5] = grantees */ + 7, /* field[7] = grantor */ + 0, /* field[0] = is_grant */ + 3, /* field[3] = objects */ + 2, /* field[2] = objtype */ + 4, /* field[4] = privileges */ + 1, /* field[1] = targtype */ }; -static const ProtobufCIntRange pg_query__create_range_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__grant_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 9 } }; -const ProtobufCMessageDescriptor pg_query__create_range_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__grant_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateRangeStmt", - "CreateRangeStmt", - "PgQuery__CreateRangeStmt", + "pg_query.GrantStmt", + "GrantStmt", + "PgQuery__GrantStmt", "pg_query", - sizeof(PgQuery__CreateRangeStmt), - 2, - pg_query__create_range_stmt__field_descriptors, - pg_query__create_range_stmt__field_indices_by_name, - 1, pg_query__create_range_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_range_stmt__init, + sizeof(PgQuery__GrantStmt), + 9, + pg_query__grant_stmt__field_descriptors, + pg_query__grant_stmt__field_indices_by_name, + 1, pg_query__grant_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__grant_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_enum_stmt__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__object_with_args__field_descriptors[4] = { { - "type_name", + "objname", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterEnumStmt, n_type_name), - offsetof(PgQuery__AlterEnumStmt, type_name), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "old_val", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterEnumStmt, old_val), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "new_val", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterEnumStmt, new_val), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ObjectWithArgs, n_objname), + offsetof(PgQuery__ObjectWithArgs, objname), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "new_val_neighbor", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterEnumStmt, new_val_neighbor), + "objargs", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ObjectWithArgs, n_objargs), + offsetof(PgQuery__ObjectWithArgs, objargs), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "new_val_is_after", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterEnumStmt, new_val_is_after), - NULL, + "objfuncargs", + 3, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ObjectWithArgs, n_objfuncargs), + offsetof(PgQuery__ObjectWithArgs, objfuncargs), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "skip_if_new_val_exists", - 6, + "args_unspecified", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterEnumStmt, skip_if_new_val_exists), + offsetof(PgQuery__ObjectWithArgs, args_unspecified), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_enum_stmt__field_indices_by_name[] = { - 2, /* field[2] = new_val */ - 4, /* field[4] = new_val_is_after */ - 3, /* field[3] = new_val_neighbor */ - 1, /* field[1] = old_val */ - 5, /* field[5] = skip_if_new_val_exists */ - 0, /* field[0] = type_name */ +static const unsigned pg_query__object_with_args__field_indices_by_name[] = { + 3, /* field[3] = args_unspecified */ + 1, /* field[1] = objargs */ + 2, /* field[2] = objfuncargs */ + 0, /* field[0] = objname */ }; -static const ProtobufCIntRange pg_query__alter_enum_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__object_with_args__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__alter_enum_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__object_with_args__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterEnumStmt", - "AlterEnumStmt", - "PgQuery__AlterEnumStmt", + "pg_query.ObjectWithArgs", + "ObjectWithArgs", + "PgQuery__ObjectWithArgs", "pg_query", - sizeof(PgQuery__AlterEnumStmt), - 6, - pg_query__alter_enum_stmt__field_descriptors, - pg_query__alter_enum_stmt__field_indices_by_name, - 1, pg_query__alter_enum_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_enum_stmt__init, + sizeof(PgQuery__ObjectWithArgs), + 4, + pg_query__object_with_args__field_descriptors, + pg_query__object_with_args__field_indices_by_name, + 1, pg_query__object_with_args__number_ranges, + (ProtobufCMessageInit) pg_query__object_with_args__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_tsdictionary_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__access_priv__field_descriptors[2] = { { - "dictname", + "priv_name", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTSDictionaryStmt, n_dictname), - offsetof(PgQuery__AlterTSDictionaryStmt, dictname), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__AccessPriv, priv_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "cols", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTSDictionaryStmt, n_options), - offsetof(PgQuery__AlterTSDictionaryStmt, options), + offsetof(PgQuery__AccessPriv, n_cols), + offsetof(PgQuery__AccessPriv, cols), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_tsdictionary_stmt__field_indices_by_name[] = { - 0, /* field[0] = dictname */ - 1, /* field[1] = options */ +static const unsigned pg_query__access_priv__field_indices_by_name[] = { + 1, /* field[1] = cols */ + 0, /* field[0] = priv_name */ }; -static const ProtobufCIntRange pg_query__alter_tsdictionary_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__access_priv__number_ranges[1 + 1] = { { 1, 0 }, { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__alter_tsdictionary_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__access_priv__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterTSDictionaryStmt", - "AlterTSDictionaryStmt", - "PgQuery__AlterTSDictionaryStmt", + "pg_query.AccessPriv", + "AccessPriv", + "PgQuery__AccessPriv", "pg_query", - sizeof(PgQuery__AlterTSDictionaryStmt), + sizeof(PgQuery__AccessPriv), 2, - pg_query__alter_tsdictionary_stmt__field_descriptors, - pg_query__alter_tsdictionary_stmt__field_indices_by_name, - 1, pg_query__alter_tsdictionary_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_tsdictionary_stmt__init, + pg_query__access_priv__field_descriptors, + pg_query__access_priv__field_indices_by_name, + 1, pg_query__access_priv__number_ranges, + (ProtobufCMessageInit) pg_query__access_priv__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_tsconfiguration_stmt__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__grant_role_stmt__field_descriptors[6] = { { - "kind", + "granted_roles", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTSConfigurationStmt, kind), - &pg_query__alter_tsconfig_type__descriptor, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__GrantRoleStmt, n_granted_roles), + offsetof(PgQuery__GrantRoleStmt, granted_roles), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cfgname", + "grantee_roles", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTSConfigurationStmt, n_cfgname), - offsetof(PgQuery__AlterTSConfigurationStmt, cfgname), + offsetof(PgQuery__GrantRoleStmt, n_grantee_roles), + offsetof(PgQuery__GrantRoleStmt, grantee_roles), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "tokentype", + "is_grant", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTSConfigurationStmt, n_tokentype), - offsetof(PgQuery__AlterTSConfigurationStmt, tokentype), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__GrantRoleStmt, is_grant), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "dicts", + "opt", 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTSConfigurationStmt, n_dicts), - offsetof(PgQuery__AlterTSConfigurationStmt, dicts), + offsetof(PgQuery__GrantRoleStmt, n_opt), + offsetof(PgQuery__GrantRoleStmt, opt), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "override", + "grantor", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTSConfigurationStmt, override), - NULL, + offsetof(PgQuery__GrantRoleStmt, grantor), + &pg_query__role_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "replace", + "behavior", 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTSConfigurationStmt, replace), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "missing_ok", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTSConfigurationStmt, missing_ok), - NULL, + offsetof(PgQuery__GrantRoleStmt, behavior), + &pg_query__drop_behavior__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_tsconfiguration_stmt__field_indices_by_name[] = { - 1, /* field[1] = cfgname */ - 3, /* field[3] = dicts */ - 0, /* field[0] = kind */ - 6, /* field[6] = missing_ok */ - 4, /* field[4] = override */ - 5, /* field[5] = replace */ - 2, /* field[2] = tokentype */ +static const unsigned pg_query__grant_role_stmt__field_indices_by_name[] = { + 5, /* field[5] = behavior */ + 0, /* field[0] = granted_roles */ + 1, /* field[1] = grantee_roles */ + 4, /* field[4] = grantor */ + 2, /* field[2] = is_grant */ + 3, /* field[3] = opt */ }; -static const ProtobufCIntRange pg_query__alter_tsconfiguration_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__grant_role_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__alter_tsconfiguration_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__grant_role_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterTSConfigurationStmt", - "AlterTSConfigurationStmt", - "PgQuery__AlterTSConfigurationStmt", + "pg_query.GrantRoleStmt", + "GrantRoleStmt", + "PgQuery__GrantRoleStmt", "pg_query", - sizeof(PgQuery__AlterTSConfigurationStmt), - 7, - pg_query__alter_tsconfiguration_stmt__field_descriptors, - pg_query__alter_tsconfiguration_stmt__field_indices_by_name, - 1, pg_query__alter_tsconfiguration_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_tsconfiguration_stmt__init, + sizeof(PgQuery__GrantRoleStmt), + 6, + pg_query__grant_role_stmt__field_descriptors, + pg_query__grant_role_stmt__field_indices_by_name, + 1, pg_query__grant_role_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__grant_role_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_fdw_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__alter_default_privileges_stmt__field_descriptors[2] = { { - "fdwname", + "options", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateFdwStmt, fdwname), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "func_options", - 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateFdwStmt, n_func_options), - offsetof(PgQuery__CreateFdwStmt, func_options), + offsetof(PgQuery__AlterDefaultPrivilegesStmt, n_options), + offsetof(PgQuery__AlterDefaultPrivilegesStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 3, - PROTOBUF_C_LABEL_REPEATED, + "action", + 2, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateFdwStmt, n_options), - offsetof(PgQuery__CreateFdwStmt, options), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterDefaultPrivilegesStmt, action), + &pg_query__grant_stmt__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_fdw_stmt__field_indices_by_name[] = { - 0, /* field[0] = fdwname */ - 1, /* field[1] = func_options */ - 2, /* field[2] = options */ +static const unsigned pg_query__alter_default_privileges_stmt__field_indices_by_name[] = { + 1, /* field[1] = action */ + 0, /* field[0] = options */ }; -static const ProtobufCIntRange pg_query__create_fdw_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_default_privileges_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__create_fdw_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_default_privileges_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateFdwStmt", - "CreateFdwStmt", - "PgQuery__CreateFdwStmt", + "pg_query.AlterDefaultPrivilegesStmt", + "AlterDefaultPrivilegesStmt", + "PgQuery__AlterDefaultPrivilegesStmt", "pg_query", - sizeof(PgQuery__CreateFdwStmt), - 3, - pg_query__create_fdw_stmt__field_descriptors, - pg_query__create_fdw_stmt__field_indices_by_name, - 1, pg_query__create_fdw_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_fdw_stmt__init, + sizeof(PgQuery__AlterDefaultPrivilegesStmt), + 2, + pg_query__alter_default_privileges_stmt__field_descriptors, + pg_query__alter_default_privileges_stmt__field_indices_by_name, + 1, pg_query__alter_default_privileges_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_default_privileges_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_fdw_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__copy_stmt__field_descriptors[8] = { { - "fdwname", + "relation", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterFdwStmt, fdwname), + offsetof(PgQuery__CopyStmt, relation), + &pg_query__range_var__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "func_options", + "query", 2, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterFdwStmt, n_func_options), - offsetof(PgQuery__AlterFdwStmt, func_options), + 0, /* quantifier_offset */ + offsetof(PgQuery__CopyStmt, query), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "attlist", 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterFdwStmt, n_options), - offsetof(PgQuery__AlterFdwStmt, options), + offsetof(PgQuery__CopyStmt, n_attlist), + offsetof(PgQuery__CopyStmt, attlist), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alter_fdw_stmt__field_indices_by_name[] = { - 0, /* field[0] = fdwname */ - 1, /* field[1] = func_options */ - 2, /* field[2] = options */ -}; -static const ProtobufCIntRange pg_query__alter_fdw_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__alter_fdw_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterFdwStmt", - "AlterFdwStmt", - "PgQuery__AlterFdwStmt", - "pg_query", - sizeof(PgQuery__AlterFdwStmt), - 3, - pg_query__alter_fdw_stmt__field_descriptors, - pg_query__alter_fdw_stmt__field_indices_by_name, - 1, pg_query__alter_fdw_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_fdw_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_foreign_server_stmt__field_descriptors[6] = -{ { - "servername", - 1, + "is_from", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateForeignServerStmt, servername), + offsetof(PgQuery__CopyStmt, is_from), NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "servertype", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateForeignServerStmt, servertype), NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "version", - 3, + "is_program", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateForeignServerStmt, version), + offsetof(PgQuery__CopyStmt, is_program), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "fdwname", - 4, + "filename", + 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateForeignServerStmt, fdwname), + offsetof(PgQuery__CopyStmt, filename), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateForeignServerStmt, if_not_exists), - NULL, + "options", + 7, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CopyStmt, n_options), + offsetof(PgQuery__CopyStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 6, - PROTOBUF_C_LABEL_REPEATED, + "where_clause", + 8, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateForeignServerStmt, n_options), - offsetof(PgQuery__CreateForeignServerStmt, options), + 0, /* quantifier_offset */ + offsetof(PgQuery__CopyStmt, where_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_foreign_server_stmt__field_indices_by_name[] = { - 3, /* field[3] = fdwname */ - 4, /* field[4] = if_not_exists */ - 5, /* field[5] = options */ - 0, /* field[0] = servername */ - 1, /* field[1] = servertype */ - 2, /* field[2] = version */ +static const unsigned pg_query__copy_stmt__field_indices_by_name[] = { + 2, /* field[2] = attlist */ + 5, /* field[5] = filename */ + 3, /* field[3] = is_from */ + 4, /* field[4] = is_program */ + 6, /* field[6] = options */ + 1, /* field[1] = query */ + 0, /* field[0] = relation */ + 7, /* field[7] = where_clause */ }; -static const ProtobufCIntRange pg_query__create_foreign_server_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__copy_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__create_foreign_server_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__copy_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateForeignServerStmt", - "CreateForeignServerStmt", - "PgQuery__CreateForeignServerStmt", + "pg_query.CopyStmt", + "CopyStmt", + "PgQuery__CopyStmt", "pg_query", - sizeof(PgQuery__CreateForeignServerStmt), - 6, - pg_query__create_foreign_server_stmt__field_descriptors, - pg_query__create_foreign_server_stmt__field_indices_by_name, - 1, pg_query__create_foreign_server_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_foreign_server_stmt__init, + sizeof(PgQuery__CopyStmt), + 8, + pg_query__copy_stmt__field_descriptors, + pg_query__copy_stmt__field_indices_by_name, + 1, pg_query__copy_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__copy_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_foreign_server_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__variable_set_stmt__field_descriptors[4] = { { - "servername", + "kind", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterForeignServerStmt, servername), + offsetof(PgQuery__VariableSetStmt, kind), + &pg_query__variable_set_kind__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "version", + "name", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterForeignServerStmt, version), + offsetof(PgQuery__VariableSetStmt, name), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "args", 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterForeignServerStmt, n_options), - offsetof(PgQuery__AlterForeignServerStmt, options), + offsetof(PgQuery__VariableSetStmt, n_args), + offsetof(PgQuery__VariableSetStmt, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "has_version", + "is_local", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterForeignServerStmt, has_version), + offsetof(PgQuery__VariableSetStmt, is_local), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_foreign_server_stmt__field_indices_by_name[] = { - 3, /* field[3] = has_version */ - 2, /* field[2] = options */ - 0, /* field[0] = servername */ - 1, /* field[1] = version */ +static const unsigned pg_query__variable_set_stmt__field_indices_by_name[] = { + 2, /* field[2] = args */ + 3, /* field[3] = is_local */ + 0, /* field[0] = kind */ + 1, /* field[1] = name */ }; -static const ProtobufCIntRange pg_query__alter_foreign_server_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__variable_set_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor pg_query__variable_set_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.VariableSetStmt", + "VariableSetStmt", + "PgQuery__VariableSetStmt", + "pg_query", + sizeof(PgQuery__VariableSetStmt), + 4, + pg_query__variable_set_stmt__field_descriptors, + pg_query__variable_set_stmt__field_indices_by_name, + 1, pg_query__variable_set_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__variable_set_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__variable_show_stmt__field_descriptors[1] = +{ + { + "name", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__VariableShowStmt, name), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__variable_show_stmt__field_indices_by_name[] = { + 0, /* field[0] = name */ +}; +static const ProtobufCIntRange pg_query__variable_show_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 1 } }; -const ProtobufCMessageDescriptor pg_query__alter_foreign_server_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__variable_show_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterForeignServerStmt", - "AlterForeignServerStmt", - "PgQuery__AlterForeignServerStmt", + "pg_query.VariableShowStmt", + "VariableShowStmt", + "PgQuery__VariableShowStmt", "pg_query", - sizeof(PgQuery__AlterForeignServerStmt), - 4, - pg_query__alter_foreign_server_stmt__field_descriptors, - pg_query__alter_foreign_server_stmt__field_indices_by_name, - 1, pg_query__alter_foreign_server_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_foreign_server_stmt__init, + sizeof(PgQuery__VariableShowStmt), + 1, + pg_query__variable_show_stmt__field_descriptors, + pg_query__variable_show_stmt__field_indices_by_name, + 1, pg_query__variable_show_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__variable_show_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_user_mapping_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__create_stmt__field_descriptors[12] = { { - "user", + "relation", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateUserMappingStmt, user), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__CreateStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "servername", + "table_elts", 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateUserMappingStmt, servername), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateStmt, n_table_elts), + offsetof(PgQuery__CreateStmt, table_elts), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", + "inh_relations", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateUserMappingStmt, if_not_exists), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateStmt, n_inh_relations), + offsetof(PgQuery__CreateStmt, inh_relations), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "partbound", 4, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateUserMappingStmt, n_options), - offsetof(PgQuery__CreateUserMappingStmt, options), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateStmt, partbound), + &pg_query__partition_bound_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_user_mapping_stmt__field_indices_by_name[] = { - 2, /* field[2] = if_not_exists */ - 3, /* field[3] = options */ - 1, /* field[1] = servername */ - 0, /* field[0] = user */ -}; -static const ProtobufCIntRange pg_query__create_user_mapping_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 4 } -}; -const ProtobufCMessageDescriptor pg_query__create_user_mapping_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateUserMappingStmt", - "CreateUserMappingStmt", - "PgQuery__CreateUserMappingStmt", - "pg_query", - sizeof(PgQuery__CreateUserMappingStmt), - 4, - pg_query__create_user_mapping_stmt__field_descriptors, - pg_query__create_user_mapping_stmt__field_indices_by_name, - 1, pg_query__create_user_mapping_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_user_mapping_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_user_mapping_stmt__field_descriptors[3] = -{ { - "user", - 1, + "partspec", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterUserMappingStmt, user), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__CreateStmt, partspec), + &pg_query__partition_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "servername", - 2, + "of_typename", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterUserMappingStmt, servername), + offsetof(PgQuery__CreateStmt, of_typename), + &pg_query__type_name__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 3, + "constraints", + 7, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterUserMappingStmt, n_options), - offsetof(PgQuery__AlterUserMappingStmt, options), + offsetof(PgQuery__CreateStmt, n_constraints), + offsetof(PgQuery__CreateStmt, constraints), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alter_user_mapping_stmt__field_indices_by_name[] = { - 2, /* field[2] = options */ - 1, /* field[1] = servername */ - 0, /* field[0] = user */ -}; -static const ProtobufCIntRange pg_query__alter_user_mapping_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__alter_user_mapping_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterUserMappingStmt", - "AlterUserMappingStmt", - "PgQuery__AlterUserMappingStmt", - "pg_query", - sizeof(PgQuery__AlterUserMappingStmt), - 3, - pg_query__alter_user_mapping_stmt__field_descriptors, - pg_query__alter_user_mapping_stmt__field_indices_by_name, - 1, pg_query__alter_user_mapping_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_user_mapping_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__drop_user_mapping_stmt__field_descriptors[3] = -{ { - "user", - 1, - PROTOBUF_C_LABEL_NONE, + "options", + 8, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__DropUserMappingStmt, user), - &pg_query__role_spec__descriptor, + offsetof(PgQuery__CreateStmt, n_options), + offsetof(PgQuery__CreateStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "servername", - 2, + "oncommit", + 9, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__DropUserMappingStmt, servername), + offsetof(PgQuery__CreateStmt, oncommit), + &pg_query__on_commit_action__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", - 3, + "tablespacename", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__DropUserMappingStmt, missing_ok), - NULL, + offsetof(PgQuery__CreateStmt, tablespacename), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__drop_user_mapping_stmt__field_indices_by_name[] = { - 2, /* field[2] = missing_ok */ - 1, /* field[1] = servername */ - 0, /* field[0] = user */ -}; -static const ProtobufCIntRange pg_query__drop_user_mapping_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__drop_user_mapping_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DropUserMappingStmt", - "DropUserMappingStmt", - "PgQuery__DropUserMappingStmt", - "pg_query", - sizeof(PgQuery__DropUserMappingStmt), - 3, - pg_query__drop_user_mapping_stmt__field_descriptors, - pg_query__drop_user_mapping_stmt__field_indices_by_name, - 1, pg_query__drop_user_mapping_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__drop_user_mapping_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_table_space_options_stmt__field_descriptors[3] = -{ { - "tablespacename", - 1, + "access_method", + 11, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableSpaceOptionsStmt, tablespacename), + offsetof(PgQuery__CreateStmt, access_method), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTableSpaceOptionsStmt, n_options), - offsetof(PgQuery__AlterTableSpaceOptionsStmt, options), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "is_reset", - 3, + "if_not_exists", + 12, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableSpaceOptionsStmt, is_reset), + offsetof(PgQuery__CreateStmt, if_not_exists), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_table_space_options_stmt__field_indices_by_name[] = { - 2, /* field[2] = is_reset */ - 1, /* field[1] = options */ - 0, /* field[0] = tablespacename */ +static const unsigned pg_query__create_stmt__field_indices_by_name[] = { + 10, /* field[10] = access_method */ + 6, /* field[6] = constraints */ + 11, /* field[11] = if_not_exists */ + 2, /* field[2] = inh_relations */ + 5, /* field[5] = of_typename */ + 8, /* field[8] = oncommit */ + 7, /* field[7] = options */ + 3, /* field[3] = partbound */ + 4, /* field[4] = partspec */ + 0, /* field[0] = relation */ + 1, /* field[1] = table_elts */ + 9, /* field[9] = tablespacename */ }; -static const ProtobufCIntRange pg_query__alter_table_space_options_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 12 } }; -const ProtobufCMessageDescriptor pg_query__alter_table_space_options_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__create_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterTableSpaceOptionsStmt", - "AlterTableSpaceOptionsStmt", - "PgQuery__AlterTableSpaceOptionsStmt", + "pg_query.CreateStmt", + "CreateStmt", + "PgQuery__CreateStmt", "pg_query", - sizeof(PgQuery__AlterTableSpaceOptionsStmt), - 3, - pg_query__alter_table_space_options_stmt__field_descriptors, - pg_query__alter_table_space_options_stmt__field_indices_by_name, - 1, pg_query__alter_table_space_options_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_table_space_options_stmt__init, + sizeof(PgQuery__CreateStmt), + 12, + pg_query__create_stmt__field_descriptors, + pg_query__create_stmt__field_indices_by_name, + 1, pg_query__create_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_table_move_all_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__constraint__field_descriptors[30] = { { - "orig_tablespacename", + "contype", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableMoveAllStmt, orig_tablespacename), + offsetof(PgQuery__Constraint, contype), + &pg_query__constr_type__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "objtype", + "conname", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableMoveAllStmt, objtype), - &pg_query__object_type__descriptor, + offsetof(PgQuery__Constraint, conname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "roles", + "deferrable", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterTableMoveAllStmt, n_roles), - offsetof(PgQuery__AlterTableMoveAllStmt, roles), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__Constraint, deferrable), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "new_tablespacename", + "initdeferred", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableMoveAllStmt, new_tablespacename), + offsetof(PgQuery__Constraint, initdeferred), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "nowait", + "location", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterTableMoveAllStmt, nowait), + offsetof(PgQuery__Constraint, location), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__alter_table_move_all_stmt__field_indices_by_name[] = { - 3, /* field[3] = new_tablespacename */ - 4, /* field[4] = nowait */ - 1, /* field[1] = objtype */ - 0, /* field[0] = orig_tablespacename */ - 2, /* field[2] = roles */ -}; -static const ProtobufCIntRange pg_query__alter_table_move_all_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 5 } -}; -const ProtobufCMessageDescriptor pg_query__alter_table_move_all_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterTableMoveAllStmt", - "AlterTableMoveAllStmt", - "PgQuery__AlterTableMoveAllStmt", - "pg_query", - sizeof(PgQuery__AlterTableMoveAllStmt), - 5, - pg_query__alter_table_move_all_stmt__field_descriptors, - pg_query__alter_table_move_all_stmt__field_indices_by_name, - 1, pg_query__alter_table_move_all_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_table_move_all_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__sec_label_stmt__field_descriptors[4] = -{ { - "objtype", - 1, + "is_no_inherit", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__SecLabelStmt, objtype), - &pg_query__object_type__descriptor, + offsetof(PgQuery__Constraint, is_no_inherit), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "object", - 2, + "raw_expr", + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SecLabelStmt, object), + offsetof(PgQuery__Constraint, raw_expr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "provider", - 3, + "cooked_expr", + 8, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__SecLabelStmt, provider), + offsetof(PgQuery__Constraint, cooked_expr), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "label", - 4, + "generated_when", + 9, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__SecLabelStmt, label), + offsetof(PgQuery__Constraint, generated_when), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__sec_label_stmt__field_indices_by_name[] = { - 3, /* field[3] = label */ - 1, /* field[1] = object */ - 0, /* field[0] = objtype */ - 2, /* field[2] = provider */ -}; -static const ProtobufCIntRange pg_query__sec_label_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 4 } -}; -const ProtobufCMessageDescriptor pg_query__sec_label_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SecLabelStmt", - "SecLabelStmt", - "PgQuery__SecLabelStmt", - "pg_query", - sizeof(PgQuery__SecLabelStmt), - 4, - pg_query__sec_label_stmt__field_descriptors, - pg_query__sec_label_stmt__field_indices_by_name, - 1, pg_query__sec_label_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__sec_label_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_foreign_table_stmt__field_descriptors[3] = -{ { - "base_stmt", - 1, + "nulls_not_distinct", + 10, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateForeignTableStmt, base_stmt), - &pg_query__create_stmt__descriptor, + offsetof(PgQuery__Constraint, nulls_not_distinct), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "servername", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateForeignTableStmt, servername), + "keys", + 11, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Constraint, n_keys), + offsetof(PgQuery__Constraint, keys), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "including", + 12, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Constraint, n_including), + offsetof(PgQuery__Constraint, including), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "exclusions", + 13, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Constraint, n_exclusions), + offsetof(PgQuery__Constraint, exclusions), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { "options", - 3, + 14, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateForeignTableStmt, n_options), - offsetof(PgQuery__CreateForeignTableStmt, options), + offsetof(PgQuery__Constraint, n_options), + offsetof(PgQuery__Constraint, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_foreign_table_stmt__field_indices_by_name[] = { - 0, /* field[0] = base_stmt */ - 2, /* field[2] = options */ - 1, /* field[1] = servername */ -}; -static const ProtobufCIntRange pg_query__create_foreign_table_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__create_foreign_table_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateForeignTableStmt", - "CreateForeignTableStmt", - "PgQuery__CreateForeignTableStmt", - "pg_query", - sizeof(PgQuery__CreateForeignTableStmt), - 3, - pg_query__create_foreign_table_stmt__field_descriptors, - pg_query__create_foreign_table_stmt__field_indices_by_name, - 1, pg_query__create_foreign_table_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_foreign_table_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__import_foreign_schema_stmt__field_descriptors[6] = -{ { - "server_name", - 1, + "indexname", + 15, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__Constraint, indexname), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "indexspace", + 16, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__Constraint, indexspace), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reset_default_tblspc", + 17, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__ImportForeignSchemaStmt, server_name), + offsetof(PgQuery__Constraint, reset_default_tblspc), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "remote_schema", - 2, + "access_method", + 18, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__ImportForeignSchemaStmt, remote_schema), + offsetof(PgQuery__Constraint, access_method), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "local_schema", - 3, + "where_clause", + 19, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ImportForeignSchemaStmt, local_schema), + offsetof(PgQuery__Constraint, where_clause), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "list_type", - 4, + "pktable", + 20, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ImportForeignSchemaStmt, list_type), - &pg_query__import_foreign_schema_type__descriptor, + offsetof(PgQuery__Constraint, pktable), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "table_list", - 5, + "fk_attrs", + 21, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ImportForeignSchemaStmt, n_table_list), - offsetof(PgQuery__ImportForeignSchemaStmt, table_list), + offsetof(PgQuery__Constraint, n_fk_attrs), + offsetof(PgQuery__Constraint, fk_attrs), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 6, + "pk_attrs", + 22, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ImportForeignSchemaStmt, n_options), - offsetof(PgQuery__ImportForeignSchemaStmt, options), + offsetof(PgQuery__Constraint, n_pk_attrs), + offsetof(PgQuery__Constraint, pk_attrs), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__import_foreign_schema_stmt__field_indices_by_name[] = { - 3, /* field[3] = list_type */ - 2, /* field[2] = local_schema */ - 5, /* field[5] = options */ - 1, /* field[1] = remote_schema */ - 0, /* field[0] = server_name */ - 4, /* field[4] = table_list */ -}; -static const ProtobufCIntRange pg_query__import_foreign_schema_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 6 } -}; -const ProtobufCMessageDescriptor pg_query__import_foreign_schema_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ImportForeignSchemaStmt", - "ImportForeignSchemaStmt", - "PgQuery__ImportForeignSchemaStmt", - "pg_query", - sizeof(PgQuery__ImportForeignSchemaStmt), - 6, - pg_query__import_foreign_schema_stmt__field_descriptors, - pg_query__import_foreign_schema_stmt__field_indices_by_name, - 1, pg_query__import_foreign_schema_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__import_foreign_schema_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_extension_stmt__field_descriptors[3] = -{ { - "extname", - 1, + "fk_matchtype", + 23, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateExtensionStmt, extname), + offsetof(PgQuery__Constraint, fk_matchtype), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", - 2, + "fk_upd_action", + 24, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateExtensionStmt, if_not_exists), + offsetof(PgQuery__Constraint, fk_upd_action), NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "fk_del_action", + 25, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__Constraint, fk_del_action), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 3, + "fk_del_set_cols", + 26, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateExtensionStmt, n_options), - offsetof(PgQuery__CreateExtensionStmt, options), + offsetof(PgQuery__Constraint, n_fk_del_set_cols), + offsetof(PgQuery__Constraint, fk_del_set_cols), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_extension_stmt__field_indices_by_name[] = { - 0, /* field[0] = extname */ - 1, /* field[1] = if_not_exists */ - 2, /* field[2] = options */ -}; -static const ProtobufCIntRange pg_query__create_extension_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__create_extension_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateExtensionStmt", - "CreateExtensionStmt", - "PgQuery__CreateExtensionStmt", - "pg_query", - sizeof(PgQuery__CreateExtensionStmt), - 3, - pg_query__create_extension_stmt__field_descriptors, - pg_query__create_extension_stmt__field_indices_by_name, - 1, pg_query__create_extension_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_extension_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_extension_stmt__field_descriptors[2] = -{ { - "extname", - 1, + "old_conpfeqop", + 27, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__Constraint, n_old_conpfeqop), + offsetof(PgQuery__Constraint, old_conpfeqop), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "old_pktable_oid", + 28, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterExtensionStmt, extname), + offsetof(PgQuery__Constraint, old_pktable_oid), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterExtensionStmt, n_options), - offsetof(PgQuery__AlterExtensionStmt, options), - &pg_query__node__descriptor, + "skip_validation", + 29, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__Constraint, skip_validation), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "initially_valid", + 30, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__Constraint, initially_valid), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_extension_stmt__field_indices_by_name[] = { - 0, /* field[0] = extname */ - 1, /* field[1] = options */ +static const unsigned pg_query__constraint__field_indices_by_name[] = { + 17, /* field[17] = access_method */ + 1, /* field[1] = conname */ + 0, /* field[0] = contype */ + 7, /* field[7] = cooked_expr */ + 2, /* field[2] = deferrable */ + 12, /* field[12] = exclusions */ + 20, /* field[20] = fk_attrs */ + 24, /* field[24] = fk_del_action */ + 25, /* field[25] = fk_del_set_cols */ + 22, /* field[22] = fk_matchtype */ + 23, /* field[23] = fk_upd_action */ + 8, /* field[8] = generated_when */ + 11, /* field[11] = including */ + 14, /* field[14] = indexname */ + 15, /* field[15] = indexspace */ + 3, /* field[3] = initdeferred */ + 29, /* field[29] = initially_valid */ + 5, /* field[5] = is_no_inherit */ + 10, /* field[10] = keys */ + 4, /* field[4] = location */ + 9, /* field[9] = nulls_not_distinct */ + 26, /* field[26] = old_conpfeqop */ + 27, /* field[27] = old_pktable_oid */ + 13, /* field[13] = options */ + 21, /* field[21] = pk_attrs */ + 19, /* field[19] = pktable */ + 6, /* field[6] = raw_expr */ + 16, /* field[16] = reset_default_tblspc */ + 28, /* field[28] = skip_validation */ + 18, /* field[18] = where_clause */ }; -static const ProtobufCIntRange pg_query__alter_extension_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__constraint__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 30 } }; -const ProtobufCMessageDescriptor pg_query__alter_extension_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__constraint__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterExtensionStmt", - "AlterExtensionStmt", - "PgQuery__AlterExtensionStmt", + "pg_query.Constraint", + "Constraint", + "PgQuery__Constraint", "pg_query", - sizeof(PgQuery__AlterExtensionStmt), - 2, - pg_query__alter_extension_stmt__field_descriptors, - pg_query__alter_extension_stmt__field_indices_by_name, - 1, pg_query__alter_extension_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_extension_stmt__init, + sizeof(PgQuery__Constraint), + 30, + pg_query__constraint__field_descriptors, + pg_query__constraint__field_indices_by_name, + 1, pg_query__constraint__number_ranges, + (ProtobufCMessageInit) pg_query__constraint__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_extension_contents_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__create_table_space_stmt__field_descriptors[4] = { { - "extname", + "tablespacename", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterExtensionContentsStmt, extname), + offsetof(PgQuery__CreateTableSpaceStmt, tablespacename), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "action", + "owner", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterExtensionContentsStmt, action), - NULL, + offsetof(PgQuery__CreateTableSpaceStmt, owner), + &pg_query__role_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "objtype", + "location", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterExtensionContentsStmt, objtype), - &pg_query__object_type__descriptor, + offsetof(PgQuery__CreateTableSpaceStmt, location), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "object", + "options", 4, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterExtensionContentsStmt, object), + offsetof(PgQuery__CreateTableSpaceStmt, n_options), + offsetof(PgQuery__CreateTableSpaceStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_extension_contents_stmt__field_indices_by_name[] = { - 1, /* field[1] = action */ - 0, /* field[0] = extname */ - 3, /* field[3] = object */ - 2, /* field[2] = objtype */ +static const unsigned pg_query__create_table_space_stmt__field_indices_by_name[] = { + 2, /* field[2] = location */ + 3, /* field[3] = options */ + 1, /* field[1] = owner */ + 0, /* field[0] = tablespacename */ }; -static const ProtobufCIntRange pg_query__alter_extension_contents_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_table_space_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__alter_extension_contents_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__create_table_space_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterExtensionContentsStmt", - "AlterExtensionContentsStmt", - "PgQuery__AlterExtensionContentsStmt", + "pg_query.CreateTableSpaceStmt", + "CreateTableSpaceStmt", + "PgQuery__CreateTableSpaceStmt", "pg_query", - sizeof(PgQuery__AlterExtensionContentsStmt), + sizeof(PgQuery__CreateTableSpaceStmt), 4, - pg_query__alter_extension_contents_stmt__field_descriptors, - pg_query__alter_extension_contents_stmt__field_indices_by_name, - 1, pg_query__alter_extension_contents_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_extension_contents_stmt__init, + pg_query__create_table_space_stmt__field_descriptors, + pg_query__create_table_space_stmt__field_indices_by_name, + 1, pg_query__create_table_space_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_table_space_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_event_trig_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__drop_table_space_stmt__field_descriptors[2] = { { - "trigname", + "tablespacename", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateEventTrigStmt, trigname), + offsetof(PgQuery__DropTableSpaceStmt, tablespacename), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "eventname", + "missing_ok", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateEventTrigStmt, eventname), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "whenclause", - 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateEventTrigStmt, n_whenclause), - offsetof(PgQuery__CreateEventTrigStmt, whenclause), - &pg_query__node__descriptor, + offsetof(PgQuery__DropTableSpaceStmt, missing_ok), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "funcname", - 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateEventTrigStmt, n_funcname), - offsetof(PgQuery__CreateEventTrigStmt, funcname), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_event_trig_stmt__field_indices_by_name[] = { - 1, /* field[1] = eventname */ - 3, /* field[3] = funcname */ - 0, /* field[0] = trigname */ - 2, /* field[2] = whenclause */ +static const unsigned pg_query__drop_table_space_stmt__field_indices_by_name[] = { + 1, /* field[1] = missing_ok */ + 0, /* field[0] = tablespacename */ }; -static const ProtobufCIntRange pg_query__create_event_trig_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__drop_table_space_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__create_event_trig_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__drop_table_space_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateEventTrigStmt", - "CreateEventTrigStmt", - "PgQuery__CreateEventTrigStmt", + "pg_query.DropTableSpaceStmt", + "DropTableSpaceStmt", + "PgQuery__DropTableSpaceStmt", "pg_query", - sizeof(PgQuery__CreateEventTrigStmt), - 4, - pg_query__create_event_trig_stmt__field_descriptors, - pg_query__create_event_trig_stmt__field_indices_by_name, - 1, pg_query__create_event_trig_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_event_trig_stmt__init, + sizeof(PgQuery__DropTableSpaceStmt), + 2, + pg_query__drop_table_space_stmt__field_descriptors, + pg_query__drop_table_space_stmt__field_indices_by_name, + 1, pg_query__drop_table_space_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__drop_table_space_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_event_trig_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__alter_table_space_options_stmt__field_descriptors[3] = { { - "trigname", + "tablespacename", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterEventTrigStmt, trigname), + offsetof(PgQuery__AlterTableSpaceOptionsStmt, tablespacename), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "tgenabled", + "options", 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterTableSpaceOptionsStmt, n_options), + offsetof(PgQuery__AlterTableSpaceOptionsStmt, options), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "is_reset", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterEventTrigStmt, tgenabled), + offsetof(PgQuery__AlterTableSpaceOptionsStmt, is_reset), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_event_trig_stmt__field_indices_by_name[] = { - 1, /* field[1] = tgenabled */ - 0, /* field[0] = trigname */ +static const unsigned pg_query__alter_table_space_options_stmt__field_indices_by_name[] = { + 2, /* field[2] = is_reset */ + 1, /* field[1] = options */ + 0, /* field[0] = tablespacename */ }; -static const ProtobufCIntRange pg_query__alter_event_trig_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_table_space_options_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__alter_event_trig_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_table_space_options_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterEventTrigStmt", - "AlterEventTrigStmt", - "PgQuery__AlterEventTrigStmt", + "pg_query.AlterTableSpaceOptionsStmt", + "AlterTableSpaceOptionsStmt", + "PgQuery__AlterTableSpaceOptionsStmt", "pg_query", - sizeof(PgQuery__AlterEventTrigStmt), - 2, - pg_query__alter_event_trig_stmt__field_descriptors, - pg_query__alter_event_trig_stmt__field_indices_by_name, - 1, pg_query__alter_event_trig_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_event_trig_stmt__init, + sizeof(PgQuery__AlterTableSpaceOptionsStmt), + 3, + pg_query__alter_table_space_options_stmt__field_descriptors, + pg_query__alter_table_space_options_stmt__field_indices_by_name, + 1, pg_query__alter_table_space_options_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_table_space_options_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__refresh_mat_view_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__alter_table_move_all_stmt__field_descriptors[5] = { { - "concurrent", + "orig_tablespacename", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RefreshMatViewStmt, concurrent), - NULL, + offsetof(PgQuery__AlterTableMoveAllStmt, orig_tablespacename), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "skip_data", + "objtype", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__RefreshMatViewStmt, skip_data), - NULL, + offsetof(PgQuery__AlterTableMoveAllStmt, objtype), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relation", + "roles", 3, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterTableMoveAllStmt, n_roles), + offsetof(PgQuery__AlterTableMoveAllStmt, roles), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "new_tablespacename", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RefreshMatViewStmt, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__AlterTableMoveAllStmt, new_tablespacename), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "nowait", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterTableMoveAllStmt, nowait), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__refresh_mat_view_stmt__field_indices_by_name[] = { - 0, /* field[0] = concurrent */ - 2, /* field[2] = relation */ - 1, /* field[1] = skip_data */ +static const unsigned pg_query__alter_table_move_all_stmt__field_indices_by_name[] = { + 3, /* field[3] = new_tablespacename */ + 4, /* field[4] = nowait */ + 1, /* field[1] = objtype */ + 0, /* field[0] = orig_tablespacename */ + 2, /* field[2] = roles */ }; -static const ProtobufCIntRange pg_query__refresh_mat_view_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_table_move_all_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__refresh_mat_view_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_table_move_all_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RefreshMatViewStmt", - "RefreshMatViewStmt", - "PgQuery__RefreshMatViewStmt", + "pg_query.AlterTableMoveAllStmt", + "AlterTableMoveAllStmt", + "PgQuery__AlterTableMoveAllStmt", "pg_query", - sizeof(PgQuery__RefreshMatViewStmt), - 3, - pg_query__refresh_mat_view_stmt__field_descriptors, - pg_query__refresh_mat_view_stmt__field_indices_by_name, - 1, pg_query__refresh_mat_view_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__refresh_mat_view_stmt__init, + sizeof(PgQuery__AlterTableMoveAllStmt), + 5, + pg_query__alter_table_move_all_stmt__field_descriptors, + pg_query__alter_table_move_all_stmt__field_indices_by_name, + 1, pg_query__alter_table_move_all_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_table_move_all_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__replica_identity_stmt__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__create_extension_stmt__field_descriptors[3] = { { - "identity_type", + "extname", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__ReplicaIdentityStmt, identity_type), + offsetof(PgQuery__CreateExtensionStmt, extname), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "name", + "if_not_exists", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__ReplicaIdentityStmt, name), + offsetof(PgQuery__CreateExtensionStmt, if_not_exists), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "options", + 3, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateExtensionStmt, n_options), + offsetof(PgQuery__CreateExtensionStmt, options), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__replica_identity_stmt__field_indices_by_name[] = { - 0, /* field[0] = identity_type */ - 1, /* field[1] = name */ +static const unsigned pg_query__create_extension_stmt__field_indices_by_name[] = { + 0, /* field[0] = extname */ + 1, /* field[1] = if_not_exists */ + 2, /* field[2] = options */ }; -static const ProtobufCIntRange pg_query__replica_identity_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_extension_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__replica_identity_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__create_extension_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ReplicaIdentityStmt", - "ReplicaIdentityStmt", - "PgQuery__ReplicaIdentityStmt", + "pg_query.CreateExtensionStmt", + "CreateExtensionStmt", + "PgQuery__CreateExtensionStmt", "pg_query", - sizeof(PgQuery__ReplicaIdentityStmt), - 2, - pg_query__replica_identity_stmt__field_descriptors, - pg_query__replica_identity_stmt__field_indices_by_name, - 1, pg_query__replica_identity_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__replica_identity_stmt__init, + sizeof(PgQuery__CreateExtensionStmt), + 3, + pg_query__create_extension_stmt__field_descriptors, + pg_query__create_extension_stmt__field_indices_by_name, + 1, pg_query__create_extension_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_extension_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_system_stmt__field_descriptors[1] = +static const ProtobufCFieldDescriptor pg_query__alter_extension_stmt__field_descriptors[2] = { { - "setstmt", + "extname", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterSystemStmt, setstmt), - &pg_query__variable_set_stmt__descriptor, + offsetof(PgQuery__AlterExtensionStmt, extname), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "options", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterExtensionStmt, n_options), + offsetof(PgQuery__AlterExtensionStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_system_stmt__field_indices_by_name[] = { - 0, /* field[0] = setstmt */ +static const unsigned pg_query__alter_extension_stmt__field_indices_by_name[] = { + 0, /* field[0] = extname */ + 1, /* field[1] = options */ }; -static const ProtobufCIntRange pg_query__alter_system_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_extension_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__alter_system_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_extension_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterSystemStmt", - "AlterSystemStmt", - "PgQuery__AlterSystemStmt", + "pg_query.AlterExtensionStmt", + "AlterExtensionStmt", + "PgQuery__AlterExtensionStmt", "pg_query", - sizeof(PgQuery__AlterSystemStmt), - 1, - pg_query__alter_system_stmt__field_descriptors, - pg_query__alter_system_stmt__field_indices_by_name, - 1, pg_query__alter_system_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_system_stmt__init, + sizeof(PgQuery__AlterExtensionStmt), + 2, + pg_query__alter_extension_stmt__field_descriptors, + pg_query__alter_extension_stmt__field_indices_by_name, + 1, pg_query__alter_extension_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_extension_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_policy_stmt__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__alter_extension_contents_stmt__field_descriptors[4] = { { - "policy_name", + "extname", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePolicyStmt, policy_name), + offsetof(PgQuery__AlterExtensionContentsStmt, extname), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "table", + "action", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePolicyStmt, table), - &pg_query__range_var__descriptor, + offsetof(PgQuery__AlterExtensionContentsStmt, action), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cmd_name", + "objtype", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePolicyStmt, cmd_name), + offsetof(PgQuery__AlterExtensionContentsStmt, objtype), + &pg_query__object_type__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "permissive", + "object", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePolicyStmt, permissive), - NULL, + offsetof(PgQuery__AlterExtensionContentsStmt, object), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__alter_extension_contents_stmt__field_indices_by_name[] = { + 1, /* field[1] = action */ + 0, /* field[0] = extname */ + 3, /* field[3] = object */ + 2, /* field[2] = objtype */ +}; +static const ProtobufCIntRange pg_query__alter_extension_contents_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor pg_query__alter_extension_contents_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlterExtensionContentsStmt", + "AlterExtensionContentsStmt", + "PgQuery__AlterExtensionContentsStmt", + "pg_query", + sizeof(PgQuery__AlterExtensionContentsStmt), + 4, + pg_query__alter_extension_contents_stmt__field_descriptors, + pg_query__alter_extension_contents_stmt__field_indices_by_name, + 1, pg_query__alter_extension_contents_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_extension_contents_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__create_fdw_stmt__field_descriptors[3] = +{ { - "roles", - 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreatePolicyStmt, n_roles), - offsetof(PgQuery__CreatePolicyStmt, roles), - &pg_query__node__descriptor, + "fdwname", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateFdwStmt, fdwname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "qual", - 6, - PROTOBUF_C_LABEL_NONE, + "func_options", + 2, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePolicyStmt, qual), + offsetof(PgQuery__CreateFdwStmt, n_func_options), + offsetof(PgQuery__CreateFdwStmt, func_options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_check", - 7, - PROTOBUF_C_LABEL_NONE, + "options", + 3, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePolicyStmt, with_check), + offsetof(PgQuery__CreateFdwStmt, n_options), + offsetof(PgQuery__CreateFdwStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_policy_stmt__field_indices_by_name[] = { - 2, /* field[2] = cmd_name */ - 3, /* field[3] = permissive */ - 0, /* field[0] = policy_name */ - 5, /* field[5] = qual */ - 4, /* field[4] = roles */ - 1, /* field[1] = table */ - 6, /* field[6] = with_check */ +static const unsigned pg_query__create_fdw_stmt__field_indices_by_name[] = { + 0, /* field[0] = fdwname */ + 1, /* field[1] = func_options */ + 2, /* field[2] = options */ }; -static const ProtobufCIntRange pg_query__create_policy_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_fdw_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__create_policy_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__create_fdw_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreatePolicyStmt", - "CreatePolicyStmt", - "PgQuery__CreatePolicyStmt", + "pg_query.CreateFdwStmt", + "CreateFdwStmt", + "PgQuery__CreateFdwStmt", "pg_query", - sizeof(PgQuery__CreatePolicyStmt), - 7, - pg_query__create_policy_stmt__field_descriptors, - pg_query__create_policy_stmt__field_indices_by_name, - 1, pg_query__create_policy_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_policy_stmt__init, + sizeof(PgQuery__CreateFdwStmt), + 3, + pg_query__create_fdw_stmt__field_descriptors, + pg_query__create_fdw_stmt__field_indices_by_name, + 1, pg_query__create_fdw_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_fdw_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_policy_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__alter_fdw_stmt__field_descriptors[3] = { { - "policy_name", + "fdwname", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterPolicyStmt, policy_name), + offsetof(PgQuery__AlterFdwStmt, fdwname), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "table", + "func_options", 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterPolicyStmt, table), - &pg_query__range_var__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "roles", - 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterPolicyStmt, n_roles), - offsetof(PgQuery__AlterPolicyStmt, roles), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "qual", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterPolicyStmt, qual), + offsetof(PgQuery__AlterFdwStmt, n_func_options), + offsetof(PgQuery__AlterFdwStmt, func_options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "with_check", - 5, - PROTOBUF_C_LABEL_NONE, + "options", + 3, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterPolicyStmt, with_check), + offsetof(PgQuery__AlterFdwStmt, n_options), + offsetof(PgQuery__AlterFdwStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_policy_stmt__field_indices_by_name[] = { - 0, /* field[0] = policy_name */ - 3, /* field[3] = qual */ - 2, /* field[2] = roles */ - 1, /* field[1] = table */ - 4, /* field[4] = with_check */ +static const unsigned pg_query__alter_fdw_stmt__field_indices_by_name[] = { + 0, /* field[0] = fdwname */ + 1, /* field[1] = func_options */ + 2, /* field[2] = options */ }; -static const ProtobufCIntRange pg_query__alter_policy_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_fdw_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__alter_policy_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_fdw_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterPolicyStmt", - "AlterPolicyStmt", - "PgQuery__AlterPolicyStmt", + "pg_query.AlterFdwStmt", + "AlterFdwStmt", + "PgQuery__AlterFdwStmt", "pg_query", - sizeof(PgQuery__AlterPolicyStmt), - 5, - pg_query__alter_policy_stmt__field_descriptors, - pg_query__alter_policy_stmt__field_indices_by_name, - 1, pg_query__alter_policy_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_policy_stmt__init, + sizeof(PgQuery__AlterFdwStmt), + 3, + pg_query__alter_fdw_stmt__field_descriptors, + pg_query__alter_fdw_stmt__field_indices_by_name, + 1, pg_query__alter_fdw_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_fdw_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_transform_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__create_foreign_server_stmt__field_descriptors[6] = { { - "replace", + "servername", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTransformStmt, replace), - NULL, + offsetof(PgQuery__CreateForeignServerStmt, servername), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_name", + "servertype", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTransformStmt, type_name), - &pg_query__type_name__descriptor, + offsetof(PgQuery__CreateForeignServerStmt, servertype), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "lang", + "version", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTransformStmt, lang), + offsetof(PgQuery__CreateForeignServerStmt, version), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "fromsql", + "fdwname", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTransformStmt, fromsql), - &pg_query__object_with_args__descriptor, + offsetof(PgQuery__CreateForeignServerStmt, fdwname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "tosql", + "if_not_exists", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateTransformStmt, tosql), - &pg_query__object_with_args__descriptor, + offsetof(PgQuery__CreateForeignServerStmt, if_not_exists), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__create_transform_stmt__field_indices_by_name[] = { - 3, /* field[3] = fromsql */ - 2, /* field[2] = lang */ - 0, /* field[0] = replace */ - 4, /* field[4] = tosql */ - 1, /* field[1] = type_name */ -}; -static const ProtobufCIntRange pg_query__create_transform_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 5 } -}; -const ProtobufCMessageDescriptor pg_query__create_transform_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateTransformStmt", - "CreateTransformStmt", - "PgQuery__CreateTransformStmt", - "pg_query", - sizeof(PgQuery__CreateTransformStmt), - 5, - pg_query__create_transform_stmt__field_descriptors, - pg_query__create_transform_stmt__field_indices_by_name, - 1, pg_query__create_transform_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_transform_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__create_am_stmt__field_descriptors[3] = -{ - { - "amname", - 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateAmStmt, amname), NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "handler_name", - 2, + "options", + 6, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateAmStmt, n_handler_name), - offsetof(PgQuery__CreateAmStmt, handler_name), + offsetof(PgQuery__CreateForeignServerStmt, n_options), + offsetof(PgQuery__CreateForeignServerStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "amtype", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateAmStmt, amtype), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, }; -static const unsigned pg_query__create_am_stmt__field_indices_by_name[] = { - 0, /* field[0] = amname */ - 2, /* field[2] = amtype */ - 1, /* field[1] = handler_name */ +static const unsigned pg_query__create_foreign_server_stmt__field_indices_by_name[] = { + 3, /* field[3] = fdwname */ + 4, /* field[4] = if_not_exists */ + 5, /* field[5] = options */ + 0, /* field[0] = servername */ + 1, /* field[1] = servertype */ + 2, /* field[2] = version */ }; -static const ProtobufCIntRange pg_query__create_am_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_foreign_server_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__create_am_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__create_foreign_server_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateAmStmt", - "CreateAmStmt", - "PgQuery__CreateAmStmt", + "pg_query.CreateForeignServerStmt", + "CreateForeignServerStmt", + "PgQuery__CreateForeignServerStmt", "pg_query", - sizeof(PgQuery__CreateAmStmt), - 3, - pg_query__create_am_stmt__field_descriptors, - pg_query__create_am_stmt__field_indices_by_name, - 1, pg_query__create_am_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_am_stmt__init, + sizeof(PgQuery__CreateForeignServerStmt), + 6, + pg_query__create_foreign_server_stmt__field_descriptors, + pg_query__create_foreign_server_stmt__field_indices_by_name, + 1, pg_query__create_foreign_server_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_foreign_server_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_publication_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__alter_foreign_server_stmt__field_descriptors[4] = { { - "pubname", + "servername", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePublicationStmt, pubname), + offsetof(PgQuery__AlterForeignServerStmt, servername), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "version", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreatePublicationStmt, n_options), - offsetof(PgQuery__CreatePublicationStmt, options), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterForeignServerStmt, version), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "pubobjects", + "options", 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreatePublicationStmt, n_pubobjects), - offsetof(PgQuery__CreatePublicationStmt, pubobjects), + offsetof(PgQuery__AlterForeignServerStmt, n_options), + offsetof(PgQuery__AlterForeignServerStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "for_all_tables", + "has_version", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreatePublicationStmt, for_all_tables), + offsetof(PgQuery__AlterForeignServerStmt, has_version), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_publication_stmt__field_indices_by_name[] = { - 3, /* field[3] = for_all_tables */ - 1, /* field[1] = options */ - 0, /* field[0] = pubname */ - 2, /* field[2] = pubobjects */ +static const unsigned pg_query__alter_foreign_server_stmt__field_indices_by_name[] = { + 3, /* field[3] = has_version */ + 2, /* field[2] = options */ + 0, /* field[0] = servername */ + 1, /* field[1] = version */ }; -static const ProtobufCIntRange pg_query__create_publication_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_foreign_server_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__create_publication_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_foreign_server_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreatePublicationStmt", - "CreatePublicationStmt", - "PgQuery__CreatePublicationStmt", + "pg_query.AlterForeignServerStmt", + "AlterForeignServerStmt", + "PgQuery__AlterForeignServerStmt", "pg_query", - sizeof(PgQuery__CreatePublicationStmt), + sizeof(PgQuery__AlterForeignServerStmt), 4, - pg_query__create_publication_stmt__field_descriptors, - pg_query__create_publication_stmt__field_indices_by_name, - 1, pg_query__create_publication_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_publication_stmt__init, + pg_query__alter_foreign_server_stmt__field_descriptors, + pg_query__alter_foreign_server_stmt__field_indices_by_name, + 1, pg_query__alter_foreign_server_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_foreign_server_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_publication_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__create_foreign_table_stmt__field_descriptors[3] = { { - "pubname", + "base_stmt", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterPublicationStmt, pubname), + offsetof(PgQuery__CreateForeignTableStmt, base_stmt), + &pg_query__create_stmt__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "servername", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterPublicationStmt, n_options), - offsetof(PgQuery__AlterPublicationStmt, options), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateForeignTableStmt, servername), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "pubobjects", + "options", 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterPublicationStmt, n_pubobjects), - offsetof(PgQuery__AlterPublicationStmt, pubobjects), + offsetof(PgQuery__CreateForeignTableStmt, n_options), + offsetof(PgQuery__CreateForeignTableStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "for_all_tables", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterPublicationStmt, for_all_tables), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "action", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterPublicationStmt, action), - &pg_query__alter_publication_action__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, }; -static const unsigned pg_query__alter_publication_stmt__field_indices_by_name[] = { - 4, /* field[4] = action */ - 3, /* field[3] = for_all_tables */ - 1, /* field[1] = options */ - 0, /* field[0] = pubname */ - 2, /* field[2] = pubobjects */ +static const unsigned pg_query__create_foreign_table_stmt__field_indices_by_name[] = { + 0, /* field[0] = base_stmt */ + 2, /* field[2] = options */ + 1, /* field[1] = servername */ }; -static const ProtobufCIntRange pg_query__alter_publication_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_foreign_table_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__alter_publication_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__create_foreign_table_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterPublicationStmt", - "AlterPublicationStmt", - "PgQuery__AlterPublicationStmt", + "pg_query.CreateForeignTableStmt", + "CreateForeignTableStmt", + "PgQuery__CreateForeignTableStmt", "pg_query", - sizeof(PgQuery__AlterPublicationStmt), - 5, - pg_query__alter_publication_stmt__field_descriptors, - pg_query__alter_publication_stmt__field_indices_by_name, - 1, pg_query__alter_publication_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_publication_stmt__init, + sizeof(PgQuery__CreateForeignTableStmt), + 3, + pg_query__create_foreign_table_stmt__field_descriptors, + pg_query__create_foreign_table_stmt__field_indices_by_name, + 1, pg_query__create_foreign_table_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_foreign_table_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_subscription_stmt__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__create_user_mapping_stmt__field_descriptors[4] = { { - "subname", + "user", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateSubscriptionStmt, subname), + offsetof(PgQuery__CreateUserMappingStmt, user), + &pg_query__role_spec__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "conninfo", + "servername", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateSubscriptionStmt, conninfo), + offsetof(PgQuery__CreateUserMappingStmt, servername), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "publication", + "if_not_exists", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateSubscriptionStmt, n_publication), - offsetof(PgQuery__CreateSubscriptionStmt, publication), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateUserMappingStmt, if_not_exists), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ @@ -29791,5982 +31200,6178 @@ static const ProtobufCFieldDescriptor pg_query__create_subscription_stmt__field_ 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateSubscriptionStmt, n_options), - offsetof(PgQuery__CreateSubscriptionStmt, options), + offsetof(PgQuery__CreateUserMappingStmt, n_options), + offsetof(PgQuery__CreateUserMappingStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_subscription_stmt__field_indices_by_name[] = { - 1, /* field[1] = conninfo */ +static const unsigned pg_query__create_user_mapping_stmt__field_indices_by_name[] = { + 2, /* field[2] = if_not_exists */ 3, /* field[3] = options */ - 2, /* field[2] = publication */ - 0, /* field[0] = subname */ + 1, /* field[1] = servername */ + 0, /* field[0] = user */ }; -static const ProtobufCIntRange pg_query__create_subscription_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_user_mapping_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__create_subscription_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__create_user_mapping_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateSubscriptionStmt", - "CreateSubscriptionStmt", - "PgQuery__CreateSubscriptionStmt", + "pg_query.CreateUserMappingStmt", + "CreateUserMappingStmt", + "PgQuery__CreateUserMappingStmt", "pg_query", - sizeof(PgQuery__CreateSubscriptionStmt), + sizeof(PgQuery__CreateUserMappingStmt), 4, - pg_query__create_subscription_stmt__field_descriptors, - pg_query__create_subscription_stmt__field_indices_by_name, - 1, pg_query__create_subscription_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_subscription_stmt__init, + pg_query__create_user_mapping_stmt__field_descriptors, + pg_query__create_user_mapping_stmt__field_indices_by_name, + 1, pg_query__create_user_mapping_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_user_mapping_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__alter_subscription_stmt__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__alter_user_mapping_stmt__field_descriptors[3] = { { - "kind", + "user", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterSubscriptionStmt, kind), - &pg_query__alter_subscription_type__descriptor, + offsetof(PgQuery__AlterUserMappingStmt, user), + &pg_query__role_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "subname", + "servername", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterSubscriptionStmt, subname), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "conninfo", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__AlterSubscriptionStmt, conninfo), + offsetof(PgQuery__AlterUserMappingStmt, servername), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "publication", - 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterSubscriptionStmt, n_publication), - offsetof(PgQuery__AlterSubscriptionStmt, publication), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, { "options", - 5, + 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterSubscriptionStmt, n_options), - offsetof(PgQuery__AlterSubscriptionStmt, options), + offsetof(PgQuery__AlterUserMappingStmt, n_options), + offsetof(PgQuery__AlterUserMappingStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_subscription_stmt__field_indices_by_name[] = { - 2, /* field[2] = conninfo */ - 0, /* field[0] = kind */ - 4, /* field[4] = options */ - 3, /* field[3] = publication */ - 1, /* field[1] = subname */ +static const unsigned pg_query__alter_user_mapping_stmt__field_indices_by_name[] = { + 2, /* field[2] = options */ + 1, /* field[1] = servername */ + 0, /* field[0] = user */ }; -static const ProtobufCIntRange pg_query__alter_subscription_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_user_mapping_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__alter_subscription_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_user_mapping_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterSubscriptionStmt", - "AlterSubscriptionStmt", - "PgQuery__AlterSubscriptionStmt", + "pg_query.AlterUserMappingStmt", + "AlterUserMappingStmt", + "PgQuery__AlterUserMappingStmt", "pg_query", - sizeof(PgQuery__AlterSubscriptionStmt), - 5, - pg_query__alter_subscription_stmt__field_descriptors, - pg_query__alter_subscription_stmt__field_indices_by_name, - 1, pg_query__alter_subscription_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_subscription_stmt__init, + sizeof(PgQuery__AlterUserMappingStmt), + 3, + pg_query__alter_user_mapping_stmt__field_descriptors, + pg_query__alter_user_mapping_stmt__field_indices_by_name, + 1, pg_query__alter_user_mapping_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_user_mapping_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__drop_subscription_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__drop_user_mapping_stmt__field_descriptors[3] = { { - "subname", + "user", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__DropSubscriptionStmt, subname), + offsetof(PgQuery__DropUserMappingStmt, user), + &pg_query__role_spec__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", + "servername", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__DropSubscriptionStmt, missing_ok), - NULL, + offsetof(PgQuery__DropUserMappingStmt, servername), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "behavior", + "missing_ok", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DropSubscriptionStmt, behavior), - &pg_query__drop_behavior__descriptor, + offsetof(PgQuery__DropUserMappingStmt, missing_ok), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__drop_subscription_stmt__field_indices_by_name[] = { - 2, /* field[2] = behavior */ - 1, /* field[1] = missing_ok */ - 0, /* field[0] = subname */ +static const unsigned pg_query__drop_user_mapping_stmt__field_indices_by_name[] = { + 2, /* field[2] = missing_ok */ + 1, /* field[1] = servername */ + 0, /* field[0] = user */ }; -static const ProtobufCIntRange pg_query__drop_subscription_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__drop_user_mapping_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__drop_subscription_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__drop_user_mapping_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DropSubscriptionStmt", - "DropSubscriptionStmt", - "PgQuery__DropSubscriptionStmt", + "pg_query.DropUserMappingStmt", + "DropUserMappingStmt", + "PgQuery__DropUserMappingStmt", "pg_query", - sizeof(PgQuery__DropSubscriptionStmt), + sizeof(PgQuery__DropUserMappingStmt), 3, - pg_query__drop_subscription_stmt__field_descriptors, - pg_query__drop_subscription_stmt__field_indices_by_name, - 1, pg_query__drop_subscription_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__drop_subscription_stmt__init, + pg_query__drop_user_mapping_stmt__field_descriptors, + pg_query__drop_user_mapping_stmt__field_indices_by_name, + 1, pg_query__drop_user_mapping_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__drop_user_mapping_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_stats_stmt__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__import_foreign_schema_stmt__field_descriptors[6] = { { - "defnames", + "server_name", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateStatsStmt, n_defnames), - offsetof(PgQuery__CreateStatsStmt, defnames), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__ImportForeignSchemaStmt, server_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "stat_types", + "remote_schema", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateStatsStmt, n_stat_types), - offsetof(PgQuery__CreateStatsStmt, stat_types), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__ImportForeignSchemaStmt, remote_schema), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "exprs", + "local_schema", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateStatsStmt, n_exprs), - offsetof(PgQuery__CreateStatsStmt, exprs), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "relations", - 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateStatsStmt, n_relations), - offsetof(PgQuery__CreateStatsStmt, relations), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "stxcomment", - 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStatsStmt, stxcomment), + offsetof(PgQuery__ImportForeignSchemaStmt, local_schema), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "transformed", - 6, + "list_type", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStatsStmt, transformed), - NULL, + offsetof(PgQuery__ImportForeignSchemaStmt, list_type), + &pg_query__import_foreign_schema_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "if_not_exists", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateStatsStmt, if_not_exists), - NULL, + "table_list", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ImportForeignSchemaStmt, n_table_list), + offsetof(PgQuery__ImportForeignSchemaStmt, table_list), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__create_stats_stmt__field_indices_by_name[] = { - 0, /* field[0] = defnames */ - 2, /* field[2] = exprs */ - 6, /* field[6] = if_not_exists */ - 3, /* field[3] = relations */ - 1, /* field[1] = stat_types */ - 4, /* field[4] = stxcomment */ - 5, /* field[5] = transformed */ -}; -static const ProtobufCIntRange pg_query__create_stats_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 7 } -}; -const ProtobufCMessageDescriptor pg_query__create_stats_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateStatsStmt", - "CreateStatsStmt", - "PgQuery__CreateStatsStmt", - "pg_query", - sizeof(PgQuery__CreateStatsStmt), - 7, - pg_query__create_stats_stmt__field_descriptors, - pg_query__create_stats_stmt__field_indices_by_name, - 1, pg_query__create_stats_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__create_stats_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_collation_stmt__field_descriptors[1] = -{ { - "collname", - 1, + "options", + 6, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterCollationStmt, n_collname), - offsetof(PgQuery__AlterCollationStmt, collname), + offsetof(PgQuery__ImportForeignSchemaStmt, n_options), + offsetof(PgQuery__ImportForeignSchemaStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_collation_stmt__field_indices_by_name[] = { - 0, /* field[0] = collname */ +static const unsigned pg_query__import_foreign_schema_stmt__field_indices_by_name[] = { + 3, /* field[3] = list_type */ + 2, /* field[2] = local_schema */ + 5, /* field[5] = options */ + 1, /* field[1] = remote_schema */ + 0, /* field[0] = server_name */ + 4, /* field[4] = table_list */ }; -static const ProtobufCIntRange pg_query__alter_collation_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__import_foreign_schema_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__alter_collation_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__import_foreign_schema_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterCollationStmt", - "AlterCollationStmt", - "PgQuery__AlterCollationStmt", + "pg_query.ImportForeignSchemaStmt", + "ImportForeignSchemaStmt", + "PgQuery__ImportForeignSchemaStmt", "pg_query", - sizeof(PgQuery__AlterCollationStmt), - 1, - pg_query__alter_collation_stmt__field_descriptors, - pg_query__alter_collation_stmt__field_indices_by_name, - 1, pg_query__alter_collation_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_collation_stmt__init, + sizeof(PgQuery__ImportForeignSchemaStmt), + 6, + pg_query__import_foreign_schema_stmt__field_descriptors, + pg_query__import_foreign_schema_stmt__field_indices_by_name, + 1, pg_query__import_foreign_schema_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__import_foreign_schema_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__call_stmt__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__create_policy_stmt__field_descriptors[7] = { { - "funccall", + "policy_name", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CallStmt, funccall), - &pg_query__func_call__descriptor, + offsetof(PgQuery__CreatePolicyStmt, policy_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funcexpr", + "table", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CallStmt, funcexpr), - &pg_query__func_expr__descriptor, + offsetof(PgQuery__CreatePolicyStmt, table), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "outargs", + "cmd_name", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CallStmt, n_outargs), - offsetof(PgQuery__CallStmt, outargs), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreatePolicyStmt, cmd_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__call_stmt__field_indices_by_name[] = { - 0, /* field[0] = funccall */ - 1, /* field[1] = funcexpr */ - 2, /* field[2] = outargs */ -}; -static const ProtobufCIntRange pg_query__call_stmt__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__call_stmt__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CallStmt", - "CallStmt", - "PgQuery__CallStmt", - "pg_query", - sizeof(PgQuery__CallStmt), - 3, - pg_query__call_stmt__field_descriptors, - pg_query__call_stmt__field_indices_by_name, - 1, pg_query__call_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__call_stmt__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__alter_stats_stmt__field_descriptors[3] = -{ { - "defnames", - 1, + "permissive", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreatePolicyStmt, permissive), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "roles", + 5, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AlterStatsStmt, n_defnames), - offsetof(PgQuery__AlterStatsStmt, defnames), + offsetof(PgQuery__CreatePolicyStmt, n_roles), + offsetof(PgQuery__CreatePolicyStmt, roles), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "stxstattarget", - 2, + "qual", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterStatsStmt, stxstattarget), - NULL, + offsetof(PgQuery__CreatePolicyStmt, qual), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "missing_ok", - 3, + "with_check", + 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AlterStatsStmt, missing_ok), - NULL, + offsetof(PgQuery__CreatePolicyStmt, with_check), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__alter_stats_stmt__field_indices_by_name[] = { - 0, /* field[0] = defnames */ - 2, /* field[2] = missing_ok */ - 1, /* field[1] = stxstattarget */ +static const unsigned pg_query__create_policy_stmt__field_indices_by_name[] = { + 2, /* field[2] = cmd_name */ + 3, /* field[3] = permissive */ + 0, /* field[0] = policy_name */ + 5, /* field[5] = qual */ + 4, /* field[4] = roles */ + 1, /* field[1] = table */ + 6, /* field[6] = with_check */ }; -static const ProtobufCIntRange pg_query__alter_stats_stmt__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_policy_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__alter_stats_stmt__descriptor = +const ProtobufCMessageDescriptor pg_query__create_policy_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AlterStatsStmt", - "AlterStatsStmt", - "PgQuery__AlterStatsStmt", + "pg_query.CreatePolicyStmt", + "CreatePolicyStmt", + "PgQuery__CreatePolicyStmt", "pg_query", - sizeof(PgQuery__AlterStatsStmt), - 3, - pg_query__alter_stats_stmt__field_descriptors, - pg_query__alter_stats_stmt__field_indices_by_name, - 1, pg_query__alter_stats_stmt__number_ranges, - (ProtobufCMessageInit) pg_query__alter_stats_stmt__init, + sizeof(PgQuery__CreatePolicyStmt), + 7, + pg_query__create_policy_stmt__field_descriptors, + pg_query__create_policy_stmt__field_indices_by_name, + 1, pg_query__create_policy_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_policy_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__a__expr__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__alter_policy_stmt__field_descriptors[5] = { { - "kind", + "policy_name", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AExpr, kind), - &pg_query__a__expr__kind__descriptor, + offsetof(PgQuery__AlterPolicyStmt, policy_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "name", + "table", 2, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AExpr, n_name), - offsetof(PgQuery__AExpr, name), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterPolicyStmt, table), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "lexpr", + "roles", 3, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__AExpr, lexpr), + offsetof(PgQuery__AlterPolicyStmt, n_roles), + offsetof(PgQuery__AlterPolicyStmt, roles), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rexpr", + "qual", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AExpr, rexpr), + offsetof(PgQuery__AlterPolicyStmt, qual), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "with_check", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AExpr, location), - NULL, + offsetof(PgQuery__AlterPolicyStmt, with_check), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__a__expr__field_indices_by_name[] = { - 0, /* field[0] = kind */ - 2, /* field[2] = lexpr */ - 4, /* field[4] = location */ - 1, /* field[1] = name */ - 3, /* field[3] = rexpr */ +static const unsigned pg_query__alter_policy_stmt__field_indices_by_name[] = { + 0, /* field[0] = policy_name */ + 3, /* field[3] = qual */ + 2, /* field[2] = roles */ + 1, /* field[1] = table */ + 4, /* field[4] = with_check */ }; -static const ProtobufCIntRange pg_query__a__expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_policy_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__a__expr__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_policy_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.A_Expr", - "AExpr", - "PgQuery__AExpr", + "pg_query.AlterPolicyStmt", + "AlterPolicyStmt", + "PgQuery__AlterPolicyStmt", "pg_query", - sizeof(PgQuery__AExpr), + sizeof(PgQuery__AlterPolicyStmt), 5, - pg_query__a__expr__field_descriptors, - pg_query__a__expr__field_indices_by_name, - 1, pg_query__a__expr__number_ranges, - (ProtobufCMessageInit) pg_query__a__expr__init, + pg_query__alter_policy_stmt__field_descriptors, + pg_query__alter_policy_stmt__field_indices_by_name, + 1, pg_query__alter_policy_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_policy_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__column_ref__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__create_am_stmt__field_descriptors[3] = { { - "fields", + "amname", 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateAmStmt, amname), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "handler_name", + 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ColumnRef, n_fields), - offsetof(PgQuery__ColumnRef, fields), + offsetof(PgQuery__CreateAmStmt, n_handler_name), + offsetof(PgQuery__CreateAmStmt, handler_name), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 2, + "amtype", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnRef, location), - NULL, + offsetof(PgQuery__CreateAmStmt, amtype), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__column_ref__field_indices_by_name[] = { - 0, /* field[0] = fields */ - 1, /* field[1] = location */ +static const unsigned pg_query__create_am_stmt__field_indices_by_name[] = { + 0, /* field[0] = amname */ + 2, /* field[2] = amtype */ + 1, /* field[1] = handler_name */ }; -static const ProtobufCIntRange pg_query__column_ref__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_am_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__column_ref__descriptor = +const ProtobufCMessageDescriptor pg_query__create_am_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ColumnRef", - "ColumnRef", - "PgQuery__ColumnRef", + "pg_query.CreateAmStmt", + "CreateAmStmt", + "PgQuery__CreateAmStmt", "pg_query", - sizeof(PgQuery__ColumnRef), - 2, - pg_query__column_ref__field_descriptors, - pg_query__column_ref__field_indices_by_name, - 1, pg_query__column_ref__number_ranges, - (ProtobufCMessageInit) pg_query__column_ref__init, + sizeof(PgQuery__CreateAmStmt), + 3, + pg_query__create_am_stmt__field_descriptors, + pg_query__create_am_stmt__field_indices_by_name, + 1, pg_query__create_am_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_am_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__param_ref__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__create_trig_stmt__field_descriptors[15] = { { - "number", + "replace", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__ParamRef, number), + offsetof(PgQuery__CreateTrigStmt, replace), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "isconstraint", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__ParamRef, location), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__param_ref__field_indices_by_name[] = { - 1, /* field[1] = location */ - 0, /* field[0] = number */ -}; -static const ProtobufCIntRange pg_query__param_ref__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor pg_query__param_ref__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ParamRef", - "ParamRef", - "PgQuery__ParamRef", - "pg_query", - sizeof(PgQuery__ParamRef), - 2, - pg_query__param_ref__field_descriptors, - pg_query__param_ref__field_indices_by_name, - 1, pg_query__param_ref__number_ranges, - (ProtobufCMessageInit) pg_query__param_ref__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__func_call__field_descriptors[11] = -{ - { - "funcname", - 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__FuncCall, n_funcname), - offsetof(PgQuery__FuncCall, funcname), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateTrigStmt, isconstraint), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "args", - 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__FuncCall, n_args), - offsetof(PgQuery__FuncCall, args), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "agg_order", + "trigname", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__FuncCall, n_agg_order), - offsetof(PgQuery__FuncCall, agg_order), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateTrigStmt, trigname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "agg_filter", + "relation", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncCall, agg_filter), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateTrigStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "over", + "funcname", 5, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__FuncCall, over), - &pg_query__window_def__descriptor, + offsetof(PgQuery__CreateTrigStmt, n_funcname), + offsetof(PgQuery__CreateTrigStmt, funcname), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "agg_within_group", + "args", 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__FuncCall, agg_within_group), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateTrigStmt, n_args), + offsetof(PgQuery__CreateTrigStmt, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "agg_star", + "row", 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncCall, agg_star), + offsetof(PgQuery__CreateTrigStmt, row), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "agg_distinct", + "timing", 8, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncCall, agg_distinct), + offsetof(PgQuery__CreateTrigStmt, timing), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "func_variadic", + "events", 9, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncCall, func_variadic), + offsetof(PgQuery__CreateTrigStmt, events), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funcformat", + "columns", 10, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__FuncCall, funcformat), - &pg_query__coercion_form__descriptor, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateTrigStmt, n_columns), + offsetof(PgQuery__CreateTrigStmt, columns), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "when_clause", 11, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__FuncCall, location), + offsetof(PgQuery__CreateTrigStmt, when_clause), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "transition_rels", + 12, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateTrigStmt, n_transition_rels), + offsetof(PgQuery__CreateTrigStmt, transition_rels), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__func_call__field_indices_by_name[] = { - 7, /* field[7] = agg_distinct */ - 3, /* field[3] = agg_filter */ - 2, /* field[2] = agg_order */ - 6, /* field[6] = agg_star */ - 5, /* field[5] = agg_within_group */ - 1, /* field[1] = args */ - 8, /* field[8] = func_variadic */ - 9, /* field[9] = funcformat */ - 0, /* field[0] = funcname */ - 10, /* field[10] = location */ - 4, /* field[4] = over */ -}; -static const ProtobufCIntRange pg_query__func_call__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 11 } -}; -const ProtobufCMessageDescriptor pg_query__func_call__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.FuncCall", - "FuncCall", - "PgQuery__FuncCall", - "pg_query", - sizeof(PgQuery__FuncCall), - 11, - pg_query__func_call__field_descriptors, - pg_query__func_call__field_indices_by_name, - 1, pg_query__func_call__number_ranges, - (ProtobufCMessageInit) pg_query__func_call__init, - NULL,NULL,NULL /* reserved[123] */ -}; -#define pg_query__a__star__field_descriptors NULL -#define pg_query__a__star__field_indices_by_name NULL -#define pg_query__a__star__number_ranges NULL -const ProtobufCMessageDescriptor pg_query__a__star__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.A_Star", - "AStar", - "PgQuery__AStar", - "pg_query", - sizeof(PgQuery__AStar), - 0, - pg_query__a__star__field_descriptors, - pg_query__a__star__field_indices_by_name, - 0, pg_query__a__star__number_ranges, - (ProtobufCMessageInit) pg_query__a__star__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__a__indices__field_descriptors[3] = -{ { - "is_slice", - 1, + "deferrable", + 13, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AIndices, is_slice), + offsetof(PgQuery__CreateTrigStmt, deferrable), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "lidx", - 2, + "initdeferred", + 14, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__AIndices, lidx), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateTrigStmt, initdeferred), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "uidx", - 3, + "constrrel", + 15, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__AIndices, uidx), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateTrigStmt, constrrel), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__a__indices__field_indices_by_name[] = { - 0, /* field[0] = is_slice */ - 1, /* field[1] = lidx */ - 2, /* field[2] = uidx */ +static const unsigned pg_query__create_trig_stmt__field_indices_by_name[] = { + 5, /* field[5] = args */ + 9, /* field[9] = columns */ + 14, /* field[14] = constrrel */ + 12, /* field[12] = deferrable */ + 8, /* field[8] = events */ + 4, /* field[4] = funcname */ + 13, /* field[13] = initdeferred */ + 1, /* field[1] = isconstraint */ + 3, /* field[3] = relation */ + 0, /* field[0] = replace */ + 6, /* field[6] = row */ + 7, /* field[7] = timing */ + 11, /* field[11] = transition_rels */ + 2, /* field[2] = trigname */ + 10, /* field[10] = when_clause */ }; -static const ProtobufCIntRange pg_query__a__indices__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_trig_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 15 } }; -const ProtobufCMessageDescriptor pg_query__a__indices__descriptor = +const ProtobufCMessageDescriptor pg_query__create_trig_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.A_Indices", - "AIndices", - "PgQuery__AIndices", + "pg_query.CreateTrigStmt", + "CreateTrigStmt", + "PgQuery__CreateTrigStmt", "pg_query", - sizeof(PgQuery__AIndices), - 3, - pg_query__a__indices__field_descriptors, - pg_query__a__indices__field_indices_by_name, - 1, pg_query__a__indices__number_ranges, - (ProtobufCMessageInit) pg_query__a__indices__init, + sizeof(PgQuery__CreateTrigStmt), + 15, + pg_query__create_trig_stmt__field_descriptors, + pg_query__create_trig_stmt__field_indices_by_name, + 1, pg_query__create_trig_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_trig_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__a__indirection__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__create_event_trig_stmt__field_descriptors[4] = { { - "arg", + "trigname", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AIndirection, arg), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateEventTrigStmt, trigname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "indirection", + "eventname", 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateEventTrigStmt, eventname), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "whenclause", + 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AIndirection, n_indirection), - offsetof(PgQuery__AIndirection, indirection), + offsetof(PgQuery__CreateEventTrigStmt, n_whenclause), + offsetof(PgQuery__CreateEventTrigStmt, whenclause), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "funcname", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateEventTrigStmt, n_funcname), + offsetof(PgQuery__CreateEventTrigStmt, funcname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__a__indirection__field_indices_by_name[] = { - 0, /* field[0] = arg */ - 1, /* field[1] = indirection */ +static const unsigned pg_query__create_event_trig_stmt__field_indices_by_name[] = { + 1, /* field[1] = eventname */ + 3, /* field[3] = funcname */ + 0, /* field[0] = trigname */ + 2, /* field[2] = whenclause */ }; -static const ProtobufCIntRange pg_query__a__indirection__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_event_trig_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__a__indirection__descriptor = +const ProtobufCMessageDescriptor pg_query__create_event_trig_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.A_Indirection", - "AIndirection", - "PgQuery__AIndirection", + "pg_query.CreateEventTrigStmt", + "CreateEventTrigStmt", + "PgQuery__CreateEventTrigStmt", "pg_query", - sizeof(PgQuery__AIndirection), - 2, - pg_query__a__indirection__field_descriptors, - pg_query__a__indirection__field_indices_by_name, - 1, pg_query__a__indirection__number_ranges, - (ProtobufCMessageInit) pg_query__a__indirection__init, + sizeof(PgQuery__CreateEventTrigStmt), + 4, + pg_query__create_event_trig_stmt__field_descriptors, + pg_query__create_event_trig_stmt__field_indices_by_name, + 1, pg_query__create_event_trig_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_event_trig_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__a__array_expr__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__alter_event_trig_stmt__field_descriptors[2] = { { - "elements", + "trigname", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AArrayExpr, n_elements), - offsetof(PgQuery__AArrayExpr, elements), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterEventTrigStmt, trigname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "tgenabled", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__AArrayExpr, location), - NULL, + offsetof(PgQuery__AlterEventTrigStmt, tgenabled), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__a__array_expr__field_indices_by_name[] = { - 0, /* field[0] = elements */ - 1, /* field[1] = location */ +static const unsigned pg_query__alter_event_trig_stmt__field_indices_by_name[] = { + 1, /* field[1] = tgenabled */ + 0, /* field[0] = trigname */ }; -static const ProtobufCIntRange pg_query__a__array_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_event_trig_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__a__array_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_event_trig_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.A_ArrayExpr", - "AArrayExpr", - "PgQuery__AArrayExpr", + "pg_query.AlterEventTrigStmt", + "AlterEventTrigStmt", + "PgQuery__AlterEventTrigStmt", "pg_query", - sizeof(PgQuery__AArrayExpr), + sizeof(PgQuery__AlterEventTrigStmt), 2, - pg_query__a__array_expr__field_descriptors, - pg_query__a__array_expr__field_indices_by_name, - 1, pg_query__a__array_expr__number_ranges, - (ProtobufCMessageInit) pg_query__a__array_expr__init, + pg_query__alter_event_trig_stmt__field_descriptors, + pg_query__alter_event_trig_stmt__field_indices_by_name, + 1, pg_query__alter_event_trig_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_event_trig_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__res_target__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__create_plang_stmt__field_descriptors[6] = { { - "name", + "replace", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__ResTarget, name), + offsetof(PgQuery__CreatePLangStmt, replace), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "indirection", + "plname", 2, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ResTarget, n_indirection), - offsetof(PgQuery__ResTarget, indirection), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreatePLangStmt, plname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "val", + "plhandler", 3, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__ResTarget, val), + offsetof(PgQuery__CreatePLangStmt, n_plhandler), + offsetof(PgQuery__CreatePLangStmt, plhandler), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "plinline", 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__ResTarget, location), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__res_target__field_indices_by_name[] = { - 1, /* field[1] = indirection */ - 3, /* field[3] = location */ - 0, /* field[0] = name */ - 2, /* field[2] = val */ -}; -static const ProtobufCIntRange pg_query__res_target__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 4 } -}; -const ProtobufCMessageDescriptor pg_query__res_target__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ResTarget", - "ResTarget", - "PgQuery__ResTarget", - "pg_query", - sizeof(PgQuery__ResTarget), - 4, - pg_query__res_target__field_descriptors, - pg_query__res_target__field_indices_by_name, - 1, pg_query__res_target__number_ranges, - (ProtobufCMessageInit) pg_query__res_target__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__multi_assign_ref__field_descriptors[3] = -{ - { - "source", - 1, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__MultiAssignRef, source), + offsetof(PgQuery__CreatePLangStmt, n_plinline), + offsetof(PgQuery__CreatePLangStmt, plinline), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "colno", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__MultiAssignRef, colno), - NULL, + "plvalidator", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreatePLangStmt, n_plvalidator), + offsetof(PgQuery__CreatePLangStmt, plvalidator), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ncolumns", - 3, + "pltrusted", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__MultiAssignRef, ncolumns), + offsetof(PgQuery__CreatePLangStmt, pltrusted), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__multi_assign_ref__field_indices_by_name[] = { - 1, /* field[1] = colno */ - 2, /* field[2] = ncolumns */ - 0, /* field[0] = source */ +static const unsigned pg_query__create_plang_stmt__field_indices_by_name[] = { + 2, /* field[2] = plhandler */ + 3, /* field[3] = plinline */ + 1, /* field[1] = plname */ + 5, /* field[5] = pltrusted */ + 4, /* field[4] = plvalidator */ + 0, /* field[0] = replace */ }; -static const ProtobufCIntRange pg_query__multi_assign_ref__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_plang_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__multi_assign_ref__descriptor = +const ProtobufCMessageDescriptor pg_query__create_plang_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.MultiAssignRef", - "MultiAssignRef", - "PgQuery__MultiAssignRef", + "pg_query.CreatePLangStmt", + "CreatePLangStmt", + "PgQuery__CreatePLangStmt", "pg_query", - sizeof(PgQuery__MultiAssignRef), - 3, - pg_query__multi_assign_ref__field_descriptors, - pg_query__multi_assign_ref__field_indices_by_name, - 1, pg_query__multi_assign_ref__number_ranges, - (ProtobufCMessageInit) pg_query__multi_assign_ref__init, + sizeof(PgQuery__CreatePLangStmt), + 6, + pg_query__create_plang_stmt__field_descriptors, + pg_query__create_plang_stmt__field_indices_by_name, + 1, pg_query__create_plang_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_plang_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__type_cast__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__create_role_stmt__field_descriptors[3] = { { - "arg", + "stmt_type", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__TypeCast, arg), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateRoleStmt, stmt_type), + &pg_query__role_stmt_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_name", + "role", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__TypeCast, type_name), - &pg_query__type_name__descriptor, + offsetof(PgQuery__CreateRoleStmt, role), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "options", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__TypeCast, location), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateRoleStmt, n_options), + offsetof(PgQuery__CreateRoleStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__type_cast__field_indices_by_name[] = { - 0, /* field[0] = arg */ - 2, /* field[2] = location */ - 1, /* field[1] = type_name */ +static const unsigned pg_query__create_role_stmt__field_indices_by_name[] = { + 2, /* field[2] = options */ + 1, /* field[1] = role */ + 0, /* field[0] = stmt_type */ }; -static const ProtobufCIntRange pg_query__type_cast__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_role_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__type_cast__descriptor = +const ProtobufCMessageDescriptor pg_query__create_role_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.TypeCast", - "TypeCast", - "PgQuery__TypeCast", + "pg_query.CreateRoleStmt", + "CreateRoleStmt", + "PgQuery__CreateRoleStmt", "pg_query", - sizeof(PgQuery__TypeCast), + sizeof(PgQuery__CreateRoleStmt), 3, - pg_query__type_cast__field_descriptors, - pg_query__type_cast__field_indices_by_name, - 1, pg_query__type_cast__number_ranges, - (ProtobufCMessageInit) pg_query__type_cast__init, + pg_query__create_role_stmt__field_descriptors, + pg_query__create_role_stmt__field_indices_by_name, + 1, pg_query__create_role_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_role_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__collate_clause__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__alter_role_stmt__field_descriptors[3] = { { - "arg", + "role", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CollateClause, arg), - &pg_query__node__descriptor, + offsetof(PgQuery__AlterRoleStmt, role), + &pg_query__role_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "collname", + "options", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CollateClause, n_collname), - offsetof(PgQuery__CollateClause, collname), + offsetof(PgQuery__AlterRoleStmt, n_options), + offsetof(PgQuery__AlterRoleStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "action", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CollateClause, location), + offsetof(PgQuery__AlterRoleStmt, action), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__collate_clause__field_indices_by_name[] = { - 0, /* field[0] = arg */ - 1, /* field[1] = collname */ - 2, /* field[2] = location */ +static const unsigned pg_query__alter_role_stmt__field_indices_by_name[] = { + 2, /* field[2] = action */ + 1, /* field[1] = options */ + 0, /* field[0] = role */ }; -static const ProtobufCIntRange pg_query__collate_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_role_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__collate_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_role_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CollateClause", - "CollateClause", - "PgQuery__CollateClause", + "pg_query.AlterRoleStmt", + "AlterRoleStmt", + "PgQuery__AlterRoleStmt", "pg_query", - sizeof(PgQuery__CollateClause), + sizeof(PgQuery__AlterRoleStmt), 3, - pg_query__collate_clause__field_descriptors, - pg_query__collate_clause__field_indices_by_name, - 1, pg_query__collate_clause__number_ranges, - (ProtobufCMessageInit) pg_query__collate_clause__init, + pg_query__alter_role_stmt__field_descriptors, + pg_query__alter_role_stmt__field_indices_by_name, + 1, pg_query__alter_role_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_role_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__sort_by__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__alter_role_set_stmt__field_descriptors[3] = { { - "node", + "role", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SortBy, node), - &pg_query__node__descriptor, + offsetof(PgQuery__AlterRoleSetStmt, role), + &pg_query__role_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sortby_dir", + "database", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__SortBy, sortby_dir), - &pg_query__sort_by_dir__descriptor, + offsetof(PgQuery__AlterRoleSetStmt, database), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sortby_nulls", + "setstmt", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SortBy, sortby_nulls), - &pg_query__sort_by_nulls__descriptor, + offsetof(PgQuery__AlterRoleSetStmt, setstmt), + &pg_query__variable_set_stmt__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__alter_role_set_stmt__field_indices_by_name[] = { + 1, /* field[1] = database */ + 0, /* field[0] = role */ + 2, /* field[2] = setstmt */ +}; +static const ProtobufCIntRange pg_query__alter_role_set_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__alter_role_set_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlterRoleSetStmt", + "AlterRoleSetStmt", + "PgQuery__AlterRoleSetStmt", + "pg_query", + sizeof(PgQuery__AlterRoleSetStmt), + 3, + pg_query__alter_role_set_stmt__field_descriptors, + pg_query__alter_role_set_stmt__field_indices_by_name, + 1, pg_query__alter_role_set_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_role_set_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__drop_role_stmt__field_descriptors[2] = +{ { - "use_op", - 4, + "roles", + 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__SortBy, n_use_op), - offsetof(PgQuery__SortBy, use_op), + offsetof(PgQuery__DropRoleStmt, n_roles), + offsetof(PgQuery__DropRoleStmt, roles), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 5, + "missing_ok", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__SortBy, location), + offsetof(PgQuery__DropRoleStmt, missing_ok), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__sort_by__field_indices_by_name[] = { - 4, /* field[4] = location */ - 0, /* field[0] = node */ - 1, /* field[1] = sortby_dir */ - 2, /* field[2] = sortby_nulls */ - 3, /* field[3] = use_op */ +static const unsigned pg_query__drop_role_stmt__field_indices_by_name[] = { + 1, /* field[1] = missing_ok */ + 0, /* field[0] = roles */ }; -static const ProtobufCIntRange pg_query__sort_by__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__drop_role_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__sort_by__descriptor = +const ProtobufCMessageDescriptor pg_query__drop_role_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SortBy", - "SortBy", - "PgQuery__SortBy", + "pg_query.DropRoleStmt", + "DropRoleStmt", + "PgQuery__DropRoleStmt", "pg_query", - sizeof(PgQuery__SortBy), - 5, - pg_query__sort_by__field_descriptors, - pg_query__sort_by__field_indices_by_name, - 1, pg_query__sort_by__number_ranges, - (ProtobufCMessageInit) pg_query__sort_by__init, + sizeof(PgQuery__DropRoleStmt), + 2, + pg_query__drop_role_stmt__field_descriptors, + pg_query__drop_role_stmt__field_indices_by_name, + 1, pg_query__drop_role_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__drop_role_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__window_def__field_descriptors[8] = +static const ProtobufCFieldDescriptor pg_query__create_seq_stmt__field_descriptors[5] = { { - "name", + "sequence", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowDef, name), + offsetof(PgQuery__CreateSeqStmt, sequence), + &pg_query__range_var__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refname", + "options", 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__WindowDef, refname), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "partition_clause", - 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__WindowDef, n_partition_clause), - offsetof(PgQuery__WindowDef, partition_clause), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "order_clause", - 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__WindowDef, n_order_clause), - offsetof(PgQuery__WindowDef, order_clause), + offsetof(PgQuery__CreateSeqStmt, n_options), + offsetof(PgQuery__CreateSeqStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "frame_options", - 5, + "owner_id", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowDef, frame_options), + offsetof(PgQuery__CreateSeqStmt, owner_id), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "start_offset", - 6, + "for_identity", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowDef, start_offset), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateSeqStmt, for_identity), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "end_offset", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__WindowDef, end_offset), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 8, + "if_not_exists", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowDef, location), + offsetof(PgQuery__CreateSeqStmt, if_not_exists), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__window_def__field_indices_by_name[] = { - 6, /* field[6] = end_offset */ - 4, /* field[4] = frame_options */ - 7, /* field[7] = location */ - 0, /* field[0] = name */ - 3, /* field[3] = order_clause */ - 2, /* field[2] = partition_clause */ - 1, /* field[1] = refname */ - 5, /* field[5] = start_offset */ +static const unsigned pg_query__create_seq_stmt__field_indices_by_name[] = { + 3, /* field[3] = for_identity */ + 4, /* field[4] = if_not_exists */ + 1, /* field[1] = options */ + 2, /* field[2] = owner_id */ + 0, /* field[0] = sequence */ }; -static const ProtobufCIntRange pg_query__window_def__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_seq_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 8 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__window_def__descriptor = +const ProtobufCMessageDescriptor pg_query__create_seq_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.WindowDef", - "WindowDef", - "PgQuery__WindowDef", + "pg_query.CreateSeqStmt", + "CreateSeqStmt", + "PgQuery__CreateSeqStmt", "pg_query", - sizeof(PgQuery__WindowDef), - 8, - pg_query__window_def__field_descriptors, - pg_query__window_def__field_indices_by_name, - 1, pg_query__window_def__number_ranges, - (ProtobufCMessageInit) pg_query__window_def__init, + sizeof(PgQuery__CreateSeqStmt), + 5, + pg_query__create_seq_stmt__field_descriptors, + pg_query__create_seq_stmt__field_indices_by_name, + 1, pg_query__create_seq_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_seq_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__range_subselect__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__alter_seq_stmt__field_descriptors[4] = { { - "lateral", + "sequence", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeSubselect, lateral), - NULL, + offsetof(PgQuery__AlterSeqStmt, sequence), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "subquery", + "options", 2, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeSubselect, subquery), + offsetof(PgQuery__AlterSeqStmt, n_options), + offsetof(PgQuery__AlterSeqStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alias", + "for_identity", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeSubselect, alias), - &pg_query__alias__descriptor, + offsetof(PgQuery__AlterSeqStmt, for_identity), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "missing_ok", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterSeqStmt, missing_ok), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__range_subselect__field_indices_by_name[] = { - 2, /* field[2] = alias */ - 0, /* field[0] = lateral */ - 1, /* field[1] = subquery */ +static const unsigned pg_query__alter_seq_stmt__field_indices_by_name[] = { + 2, /* field[2] = for_identity */ + 3, /* field[3] = missing_ok */ + 1, /* field[1] = options */ + 0, /* field[0] = sequence */ }; -static const ProtobufCIntRange pg_query__range_subselect__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_seq_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__range_subselect__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_seq_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RangeSubselect", - "RangeSubselect", - "PgQuery__RangeSubselect", + "pg_query.AlterSeqStmt", + "AlterSeqStmt", + "PgQuery__AlterSeqStmt", "pg_query", - sizeof(PgQuery__RangeSubselect), - 3, - pg_query__range_subselect__field_descriptors, - pg_query__range_subselect__field_indices_by_name, - 1, pg_query__range_subselect__number_ranges, - (ProtobufCMessageInit) pg_query__range_subselect__init, + sizeof(PgQuery__AlterSeqStmt), + 4, + pg_query__alter_seq_stmt__field_descriptors, + pg_query__alter_seq_stmt__field_indices_by_name, + 1, pg_query__alter_seq_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_seq_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__range_function__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__define_stmt__field_descriptors[7] = { { - "lateral", + "kind", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeFunction, lateral), - NULL, + offsetof(PgQuery__DefineStmt, kind), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ordinality", + "oldstyle", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeFunction, ordinality), + offsetof(PgQuery__DefineStmt, oldstyle), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_rowsfrom", + "defnames", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeFunction, is_rowsfrom), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__DefineStmt, n_defnames), + offsetof(PgQuery__DefineStmt, defnames), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "functions", + "args", 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeFunction, n_functions), - offsetof(PgQuery__RangeFunction, functions), + offsetof(PgQuery__DefineStmt, n_args), + offsetof(PgQuery__DefineStmt, args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alias", + "definition", 5, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeFunction, alias), - &pg_query__alias__descriptor, + offsetof(PgQuery__DefineStmt, n_definition), + offsetof(PgQuery__DefineStmt, definition), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coldeflist", + "if_not_exists", 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeFunction, n_coldeflist), - offsetof(PgQuery__RangeFunction, coldeflist), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__DefineStmt, if_not_exists), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "replace", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__DefineStmt, replace), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__range_function__field_indices_by_name[] = { - 4, /* field[4] = alias */ - 5, /* field[5] = coldeflist */ - 3, /* field[3] = functions */ - 2, /* field[2] = is_rowsfrom */ - 0, /* field[0] = lateral */ - 1, /* field[1] = ordinality */ +static const unsigned pg_query__define_stmt__field_indices_by_name[] = { + 3, /* field[3] = args */ + 4, /* field[4] = definition */ + 2, /* field[2] = defnames */ + 5, /* field[5] = if_not_exists */ + 0, /* field[0] = kind */ + 1, /* field[1] = oldstyle */ + 6, /* field[6] = replace */ }; -static const ProtobufCIntRange pg_query__range_function__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__define_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__range_function__descriptor = +const ProtobufCMessageDescriptor pg_query__define_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RangeFunction", - "RangeFunction", - "PgQuery__RangeFunction", + "pg_query.DefineStmt", + "DefineStmt", + "PgQuery__DefineStmt", "pg_query", - sizeof(PgQuery__RangeFunction), - 6, - pg_query__range_function__field_descriptors, - pg_query__range_function__field_indices_by_name, - 1, pg_query__range_function__number_ranges, - (ProtobufCMessageInit) pg_query__range_function__init, + sizeof(PgQuery__DefineStmt), + 7, + pg_query__define_stmt__field_descriptors, + pg_query__define_stmt__field_indices_by_name, + 1, pg_query__define_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__define_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__range_table_sample__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__create_domain_stmt__field_descriptors[4] = { { - "relation", + "domainname", 1, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableSample, relation), + offsetof(PgQuery__CreateDomainStmt, n_domainname), + offsetof(PgQuery__CreateDomainStmt, domainname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "method", + "type_name", 2, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTableSample, n_method), - offsetof(PgQuery__RangeTableSample, method), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateDomainStmt, type_name), + &pg_query__type_name__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", + "coll_clause", 3, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTableSample, n_args), - offsetof(PgQuery__RangeTableSample, args), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateDomainStmt, coll_clause), + &pg_query__collate_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "repeatable", + "constraints", 4, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableSample, repeatable), + offsetof(PgQuery__CreateDomainStmt, n_constraints), + offsetof(PgQuery__CreateDomainStmt, constraints), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "location", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableSample, location), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, }; -static const unsigned pg_query__range_table_sample__field_indices_by_name[] = { - 2, /* field[2] = args */ - 4, /* field[4] = location */ - 1, /* field[1] = method */ - 0, /* field[0] = relation */ - 3, /* field[3] = repeatable */ +static const unsigned pg_query__create_domain_stmt__field_indices_by_name[] = { + 2, /* field[2] = coll_clause */ + 3, /* field[3] = constraints */ + 0, /* field[0] = domainname */ + 1, /* field[1] = type_name */ }; -static const ProtobufCIntRange pg_query__range_table_sample__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_domain_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__range_table_sample__descriptor = +const ProtobufCMessageDescriptor pg_query__create_domain_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RangeTableSample", - "RangeTableSample", - "PgQuery__RangeTableSample", + "pg_query.CreateDomainStmt", + "CreateDomainStmt", + "PgQuery__CreateDomainStmt", "pg_query", - sizeof(PgQuery__RangeTableSample), - 5, - pg_query__range_table_sample__field_descriptors, - pg_query__range_table_sample__field_indices_by_name, - 1, pg_query__range_table_sample__number_ranges, - (ProtobufCMessageInit) pg_query__range_table_sample__init, + sizeof(PgQuery__CreateDomainStmt), + 4, + pg_query__create_domain_stmt__field_descriptors, + pg_query__create_domain_stmt__field_indices_by_name, + 1, pg_query__create_domain_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_domain_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__range_table_func__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__create_op_class_stmt__field_descriptors[6] = { { - "lateral", + "opclassname", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFunc, lateral), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateOpClassStmt, n_opclassname), + offsetof(PgQuery__CreateOpClassStmt, opclassname), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "docexpr", + "opfamilyname", 2, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFunc, docexpr), + offsetof(PgQuery__CreateOpClassStmt, n_opfamilyname), + offsetof(PgQuery__CreateOpClassStmt, opfamilyname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rowexpr", + "amname", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFunc, rowexpr), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateOpClassStmt, amname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "namespaces", + "datatype", 4, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTableFunc, n_namespaces), - offsetof(PgQuery__RangeTableFunc, namespaces), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateOpClassStmt, datatype), + &pg_query__type_name__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "columns", + "items", 5, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTableFunc, n_columns), - offsetof(PgQuery__RangeTableFunc, columns), + offsetof(PgQuery__CreateOpClassStmt, n_items), + offsetof(PgQuery__CreateOpClassStmt, items), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alias", + "is_default", 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFunc, alias), - &pg_query__alias__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "location", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFunc, location), + offsetof(PgQuery__CreateOpClassStmt, is_default), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__range_table_func__field_indices_by_name[] = { - 5, /* field[5] = alias */ - 4, /* field[4] = columns */ - 1, /* field[1] = docexpr */ - 0, /* field[0] = lateral */ - 6, /* field[6] = location */ - 3, /* field[3] = namespaces */ - 2, /* field[2] = rowexpr */ +static const unsigned pg_query__create_op_class_stmt__field_indices_by_name[] = { + 2, /* field[2] = amname */ + 3, /* field[3] = datatype */ + 5, /* field[5] = is_default */ + 4, /* field[4] = items */ + 0, /* field[0] = opclassname */ + 1, /* field[1] = opfamilyname */ }; -static const ProtobufCIntRange pg_query__range_table_func__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_op_class_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__range_table_func__descriptor = +const ProtobufCMessageDescriptor pg_query__create_op_class_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RangeTableFunc", - "RangeTableFunc", - "PgQuery__RangeTableFunc", + "pg_query.CreateOpClassStmt", + "CreateOpClassStmt", + "PgQuery__CreateOpClassStmt", "pg_query", - sizeof(PgQuery__RangeTableFunc), - 7, - pg_query__range_table_func__field_descriptors, - pg_query__range_table_func__field_indices_by_name, - 1, pg_query__range_table_func__number_ranges, - (ProtobufCMessageInit) pg_query__range_table_func__init, + sizeof(PgQuery__CreateOpClassStmt), + 6, + pg_query__create_op_class_stmt__field_descriptors, + pg_query__create_op_class_stmt__field_indices_by_name, + 1, pg_query__create_op_class_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_op_class_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__range_table_func_col__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__create_op_class_item__field_descriptors[6] = { { - "colname", + "itemtype", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFuncCol, colname), + offsetof(PgQuery__CreateOpClassItem, itemtype), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_name", + "name", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFuncCol, type_name), - &pg_query__type_name__descriptor, + offsetof(PgQuery__CreateOpClassItem, name), + &pg_query__object_with_args__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "for_ordinality", + "number", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFuncCol, for_ordinality), + offsetof(PgQuery__CreateOpClassItem, number), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_not_null", + "order_family", 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFuncCol, is_not_null), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateOpClassItem, n_order_family), + offsetof(PgQuery__CreateOpClassItem, order_family), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "colexpr", + "class_args", 5, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFuncCol, colexpr), + offsetof(PgQuery__CreateOpClassItem, n_class_args), + offsetof(PgQuery__CreateOpClassItem, class_args), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coldefexpr", + "storedtype", 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFuncCol, coldefexpr), + offsetof(PgQuery__CreateOpClassItem, storedtype), + &pg_query__type_name__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__create_op_class_item__field_indices_by_name[] = { + 4, /* field[4] = class_args */ + 0, /* field[0] = itemtype */ + 1, /* field[1] = name */ + 2, /* field[2] = number */ + 3, /* field[3] = order_family */ + 5, /* field[5] = storedtype */ +}; +static const ProtobufCIntRange pg_query__create_op_class_item__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 6 } +}; +const ProtobufCMessageDescriptor pg_query__create_op_class_item__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.CreateOpClassItem", + "CreateOpClassItem", + "PgQuery__CreateOpClassItem", + "pg_query", + sizeof(PgQuery__CreateOpClassItem), + 6, + pg_query__create_op_class_item__field_descriptors, + pg_query__create_op_class_item__field_indices_by_name, + 1, pg_query__create_op_class_item__number_ranges, + (ProtobufCMessageInit) pg_query__create_op_class_item__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__create_op_family_stmt__field_descriptors[2] = +{ + { + "opfamilyname", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateOpFamilyStmt, n_opfamilyname), + offsetof(PgQuery__CreateOpFamilyStmt, opfamilyname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 7, + "amname", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTableFuncCol, location), - NULL, + offsetof(PgQuery__CreateOpFamilyStmt, amname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__range_table_func_col__field_indices_by_name[] = { - 5, /* field[5] = coldefexpr */ - 4, /* field[4] = colexpr */ - 0, /* field[0] = colname */ - 2, /* field[2] = for_ordinality */ - 3, /* field[3] = is_not_null */ - 6, /* field[6] = location */ - 1, /* field[1] = type_name */ +static const unsigned pg_query__create_op_family_stmt__field_indices_by_name[] = { + 1, /* field[1] = amname */ + 0, /* field[0] = opfamilyname */ }; -static const ProtobufCIntRange pg_query__range_table_func_col__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_op_family_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__range_table_func_col__descriptor = +const ProtobufCMessageDescriptor pg_query__create_op_family_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RangeTableFuncCol", - "RangeTableFuncCol", - "PgQuery__RangeTableFuncCol", + "pg_query.CreateOpFamilyStmt", + "CreateOpFamilyStmt", + "PgQuery__CreateOpFamilyStmt", "pg_query", - sizeof(PgQuery__RangeTableFuncCol), - 7, - pg_query__range_table_func_col__field_descriptors, - pg_query__range_table_func_col__field_indices_by_name, - 1, pg_query__range_table_func_col__number_ranges, - (ProtobufCMessageInit) pg_query__range_table_func_col__init, + sizeof(PgQuery__CreateOpFamilyStmt), + 2, + pg_query__create_op_family_stmt__field_descriptors, + pg_query__create_op_family_stmt__field_indices_by_name, + 1, pg_query__create_op_family_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_op_family_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__type_name__field_descriptors[8] = +static const ProtobufCFieldDescriptor pg_query__alter_op_family_stmt__field_descriptors[4] = { { - "names", + "opfamilyname", 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TypeName, n_names), - offsetof(PgQuery__TypeName, names), + offsetof(PgQuery__AlterOpFamilyStmt, n_opfamilyname), + offsetof(PgQuery__AlterOpFamilyStmt, opfamilyname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_oid", + "amname", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__TypeName, type_oid), - NULL, + offsetof(PgQuery__AlterOpFamilyStmt, amname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "setof", + "is_drop", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TypeName, setof), + offsetof(PgQuery__AlterOpFamilyStmt, is_drop), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "pct_type", + "items", 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__TypeName, pct_type), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "typmods", - 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TypeName, n_typmods), - offsetof(PgQuery__TypeName, typmods), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "typemod", - 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__TypeName, typemod), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "array_bounds", - 7, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TypeName, n_array_bounds), - offsetof(PgQuery__TypeName, array_bounds), + offsetof(PgQuery__AlterOpFamilyStmt, n_items), + offsetof(PgQuery__AlterOpFamilyStmt, items), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "location", - 8, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__TypeName, location), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, }; -static const unsigned pg_query__type_name__field_indices_by_name[] = { - 6, /* field[6] = array_bounds */ - 7, /* field[7] = location */ - 0, /* field[0] = names */ - 3, /* field[3] = pct_type */ - 2, /* field[2] = setof */ - 1, /* field[1] = type_oid */ - 5, /* field[5] = typemod */ - 4, /* field[4] = typmods */ +static const unsigned pg_query__alter_op_family_stmt__field_indices_by_name[] = { + 1, /* field[1] = amname */ + 2, /* field[2] = is_drop */ + 3, /* field[3] = items */ + 0, /* field[0] = opfamilyname */ }; -static const ProtobufCIntRange pg_query__type_name__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_op_family_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 8 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__type_name__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_op_family_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.TypeName", - "TypeName", - "PgQuery__TypeName", + "pg_query.AlterOpFamilyStmt", + "AlterOpFamilyStmt", + "PgQuery__AlterOpFamilyStmt", "pg_query", - sizeof(PgQuery__TypeName), - 8, - pg_query__type_name__field_descriptors, - pg_query__type_name__field_indices_by_name, - 1, pg_query__type_name__number_ranges, - (ProtobufCMessageInit) pg_query__type_name__init, + sizeof(PgQuery__AlterOpFamilyStmt), + 4, + pg_query__alter_op_family_stmt__field_descriptors, + pg_query__alter_op_family_stmt__field_indices_by_name, + 1, pg_query__alter_op_family_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_op_family_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__column_def__field_descriptors[18] = +static const ProtobufCFieldDescriptor pg_query__drop_stmt__field_descriptors[5] = { { - "colname", + "objects", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, colname), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__DropStmt, n_objects), + offsetof(PgQuery__DropStmt, objects), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "type_name", + "remove_type", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, type_name), - &pg_query__type_name__descriptor, + offsetof(PgQuery__DropStmt, remove_type), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "compression", + "behavior", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, compression), + offsetof(PgQuery__DropStmt, behavior), + &pg_query__drop_behavior__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inhcount", + "missing_ok", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, inhcount), + offsetof(PgQuery__DropStmt, missing_ok), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_local", + "concurrent", 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, is_local), + offsetof(PgQuery__DropStmt, concurrent), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__drop_stmt__field_indices_by_name[] = { + 2, /* field[2] = behavior */ + 4, /* field[4] = concurrent */ + 3, /* field[3] = missing_ok */ + 0, /* field[0] = objects */ + 1, /* field[1] = remove_type */ +}; +static const ProtobufCIntRange pg_query__drop_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor pg_query__drop_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.DropStmt", + "DropStmt", + "PgQuery__DropStmt", + "pg_query", + sizeof(PgQuery__DropStmt), + 5, + pg_query__drop_stmt__field_descriptors, + pg_query__drop_stmt__field_indices_by_name, + 1, pg_query__drop_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__drop_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__truncate_stmt__field_descriptors[3] = +{ { - "is_not_null", - 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, is_not_null), - NULL, + "relations", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__TruncateStmt, n_relations), + offsetof(PgQuery__TruncateStmt, relations), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_from_type", - 7, + "restart_seqs", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, is_from_type), + offsetof(PgQuery__TruncateStmt, restart_seqs), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "storage", - 8, + "behavior", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, storage), + offsetof(PgQuery__TruncateStmt, behavior), + &pg_query__drop_behavior__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__truncate_stmt__field_indices_by_name[] = { + 2, /* field[2] = behavior */ + 0, /* field[0] = relations */ + 1, /* field[1] = restart_seqs */ +}; +static const ProtobufCIntRange pg_query__truncate_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__truncate_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.TruncateStmt", + "TruncateStmt", + "PgQuery__TruncateStmt", + "pg_query", + sizeof(PgQuery__TruncateStmt), + 3, + pg_query__truncate_stmt__field_descriptors, + pg_query__truncate_stmt__field_indices_by_name, + 1, pg_query__truncate_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__truncate_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__comment_stmt__field_descriptors[3] = +{ { - "raw_default", - 9, + "objtype", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, raw_default), - &pg_query__node__descriptor, + offsetof(PgQuery__CommentStmt, objtype), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cooked_default", - 10, + "object", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, cooked_default), + offsetof(PgQuery__CommentStmt, object), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "identity", - 11, + "comment", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, identity), + offsetof(PgQuery__CommentStmt, comment), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__comment_stmt__field_indices_by_name[] = { + 2, /* field[2] = comment */ + 1, /* field[1] = object */ + 0, /* field[0] = objtype */ +}; +static const ProtobufCIntRange pg_query__comment_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__comment_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.CommentStmt", + "CommentStmt", + "PgQuery__CommentStmt", + "pg_query", + sizeof(PgQuery__CommentStmt), + 3, + pg_query__comment_stmt__field_descriptors, + pg_query__comment_stmt__field_indices_by_name, + 1, pg_query__comment_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__comment_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__sec_label_stmt__field_descriptors[4] = +{ { - "identity_sequence", - 12, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, identity_sequence), - &pg_query__range_var__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "generated", - 13, + "objtype", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, generated), + offsetof(PgQuery__SecLabelStmt, objtype), + &pg_query__object_type__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coll_clause", - 14, + "object", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, coll_clause), - &pg_query__collate_clause__descriptor, + offsetof(PgQuery__SecLabelStmt, object), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coll_oid", - 15, + "provider", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, coll_oid), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "constraints", - 16, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ColumnDef, n_constraints), - offsetof(PgQuery__ColumnDef, constraints), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "fdwoptions", - 17, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ColumnDef, n_fdwoptions), - offsetof(PgQuery__ColumnDef, fdwoptions), - &pg_query__node__descriptor, + offsetof(PgQuery__SecLabelStmt, provider), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 18, + "label", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__ColumnDef, location), - NULL, + offsetof(PgQuery__SecLabelStmt, label), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__column_def__field_indices_by_name[] = { - 13, /* field[13] = coll_clause */ - 14, /* field[14] = coll_oid */ - 0, /* field[0] = colname */ - 2, /* field[2] = compression */ - 15, /* field[15] = constraints */ - 9, /* field[9] = cooked_default */ - 16, /* field[16] = fdwoptions */ - 12, /* field[12] = generated */ - 10, /* field[10] = identity */ - 11, /* field[11] = identity_sequence */ - 3, /* field[3] = inhcount */ - 6, /* field[6] = is_from_type */ - 4, /* field[4] = is_local */ - 5, /* field[5] = is_not_null */ - 17, /* field[17] = location */ - 8, /* field[8] = raw_default */ - 7, /* field[7] = storage */ - 1, /* field[1] = type_name */ +static const unsigned pg_query__sec_label_stmt__field_indices_by_name[] = { + 3, /* field[3] = label */ + 1, /* field[1] = object */ + 0, /* field[0] = objtype */ + 2, /* field[2] = provider */ }; -static const ProtobufCIntRange pg_query__column_def__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__sec_label_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 18 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__column_def__descriptor = +const ProtobufCMessageDescriptor pg_query__sec_label_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ColumnDef", - "ColumnDef", - "PgQuery__ColumnDef", + "pg_query.SecLabelStmt", + "SecLabelStmt", + "PgQuery__SecLabelStmt", "pg_query", - sizeof(PgQuery__ColumnDef), - 18, - pg_query__column_def__field_descriptors, - pg_query__column_def__field_indices_by_name, - 1, pg_query__column_def__number_ranges, - (ProtobufCMessageInit) pg_query__column_def__init, + sizeof(PgQuery__SecLabelStmt), + 4, + pg_query__sec_label_stmt__field_descriptors, + pg_query__sec_label_stmt__field_indices_by_name, + 1, pg_query__sec_label_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__sec_label_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__index_elem__field_descriptors[8] = +static const ProtobufCFieldDescriptor pg_query__declare_cursor_stmt__field_descriptors[3] = { { - "name", + "portalname", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexElem, name), + offsetof(PgQuery__DeclareCursorStmt, portalname), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "expr", + "options", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexElem, expr), - &pg_query__node__descriptor, + offsetof(PgQuery__DeclareCursorStmt, options), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "indexcolname", + "query", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__IndexElem, indexcolname), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "collation", - 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IndexElem, n_collation), - offsetof(PgQuery__IndexElem, collation), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "opclass", - 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IndexElem, n_opclass), - offsetof(PgQuery__IndexElem, opclass), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "opclassopts", - 6, - PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__IndexElem, n_opclassopts), - offsetof(PgQuery__IndexElem, opclassopts), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "ordering", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__IndexElem, ordering), - &pg_query__sort_by_dir__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "nulls_ordering", - 8, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__IndexElem, nulls_ordering), - &pg_query__sort_by_nulls__descriptor, + offsetof(PgQuery__DeclareCursorStmt, query), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__index_elem__field_indices_by_name[] = { - 3, /* field[3] = collation */ - 1, /* field[1] = expr */ - 2, /* field[2] = indexcolname */ - 0, /* field[0] = name */ - 7, /* field[7] = nulls_ordering */ - 4, /* field[4] = opclass */ - 5, /* field[5] = opclassopts */ - 6, /* field[6] = ordering */ +static const unsigned pg_query__declare_cursor_stmt__field_indices_by_name[] = { + 1, /* field[1] = options */ + 0, /* field[0] = portalname */ + 2, /* field[2] = query */ }; -static const ProtobufCIntRange pg_query__index_elem__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__declare_cursor_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 8 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__index_elem__descriptor = +const ProtobufCMessageDescriptor pg_query__declare_cursor_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.IndexElem", - "IndexElem", - "PgQuery__IndexElem", + "pg_query.DeclareCursorStmt", + "DeclareCursorStmt", + "PgQuery__DeclareCursorStmt", "pg_query", - sizeof(PgQuery__IndexElem), - 8, - pg_query__index_elem__field_descriptors, - pg_query__index_elem__field_indices_by_name, - 1, pg_query__index_elem__number_ranges, - (ProtobufCMessageInit) pg_query__index_elem__init, + sizeof(PgQuery__DeclareCursorStmt), + 3, + pg_query__declare_cursor_stmt__field_descriptors, + pg_query__declare_cursor_stmt__field_indices_by_name, + 1, pg_query__declare_cursor_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__declare_cursor_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__stats_elem__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__close_portal_stmt__field_descriptors[1] = { { - "name", + "portalname", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__StatsElem, name), + offsetof(PgQuery__ClosePortalStmt, portalname), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "expr", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__StatsElem, expr), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, }; -static const unsigned pg_query__stats_elem__field_indices_by_name[] = { - 1, /* field[1] = expr */ - 0, /* field[0] = name */ +static const unsigned pg_query__close_portal_stmt__field_indices_by_name[] = { + 0, /* field[0] = portalname */ }; -static const ProtobufCIntRange pg_query__stats_elem__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__close_portal_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 1 } }; -const ProtobufCMessageDescriptor pg_query__stats_elem__descriptor = +const ProtobufCMessageDescriptor pg_query__close_portal_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.StatsElem", - "StatsElem", - "PgQuery__StatsElem", + "pg_query.ClosePortalStmt", + "ClosePortalStmt", + "PgQuery__ClosePortalStmt", "pg_query", - sizeof(PgQuery__StatsElem), - 2, - pg_query__stats_elem__field_descriptors, - pg_query__stats_elem__field_indices_by_name, - 1, pg_query__stats_elem__number_ranges, - (ProtobufCMessageInit) pg_query__stats_elem__init, + sizeof(PgQuery__ClosePortalStmt), + 1, + pg_query__close_portal_stmt__field_descriptors, + pg_query__close_portal_stmt__field_indices_by_name, + 1, pg_query__close_portal_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__close_portal_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__constraint__field_descriptors[30] = +static const ProtobufCFieldDescriptor pg_query__fetch_stmt__field_descriptors[4] = { { - "contype", + "direction", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, contype), - &pg_query__constr_type__descriptor, + offsetof(PgQuery__FetchStmt, direction), + &pg_query__fetch_direction__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "conname", + "how_many", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_INT64, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, conname), + offsetof(PgQuery__FetchStmt, how_many), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "deferrable", + "portalname", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, deferrable), - NULL, + offsetof(PgQuery__FetchStmt, portalname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "initdeferred", + "ismove", 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, initdeferred), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "location", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, location), + offsetof(PgQuery__FetchStmt, ismove), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__fetch_stmt__field_indices_by_name[] = { + 0, /* field[0] = direction */ + 1, /* field[1] = how_many */ + 3, /* field[3] = ismove */ + 2, /* field[2] = portalname */ +}; +static const ProtobufCIntRange pg_query__fetch_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor pg_query__fetch_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.FetchStmt", + "FetchStmt", + "PgQuery__FetchStmt", + "pg_query", + sizeof(PgQuery__FetchStmt), + 4, + pg_query__fetch_stmt__field_descriptors, + pg_query__fetch_stmt__field_indices_by_name, + 1, pg_query__fetch_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__fetch_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__index_stmt__field_descriptors[24] = +{ { - "is_no_inherit", - 6, + "idxname", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, is_no_inherit), - NULL, + offsetof(PgQuery__IndexStmt, idxname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "raw_expr", - 7, + "relation", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, raw_expr), - &pg_query__node__descriptor, + offsetof(PgQuery__IndexStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cooked_expr", - 8, + "access_method", + 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, cooked_expr), + offsetof(PgQuery__IndexStmt, access_method), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "generated_when", - 9, + "table_space", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, generated_when), + offsetof(PgQuery__IndexStmt, table_space), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "nulls_not_distinct", - 10, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, nulls_not_distinct), - NULL, + "index_params", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__IndexStmt, n_index_params), + offsetof(PgQuery__IndexStmt, index_params), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "keys", - 11, + "index_including_params", + 6, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Constraint, n_keys), - offsetof(PgQuery__Constraint, keys), + offsetof(PgQuery__IndexStmt, n_index_including_params), + offsetof(PgQuery__IndexStmt, index_including_params), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "including", - 12, + "options", + 7, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Constraint, n_including), - offsetof(PgQuery__Constraint, including), + offsetof(PgQuery__IndexStmt, n_options), + offsetof(PgQuery__IndexStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "exclusions", - 13, - PROTOBUF_C_LABEL_REPEATED, + "where_clause", + 8, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Constraint, n_exclusions), - offsetof(PgQuery__Constraint, exclusions), + 0, /* quantifier_offset */ + offsetof(PgQuery__IndexStmt, where_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", - 14, + "exclude_op_names", + 9, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Constraint, n_options), - offsetof(PgQuery__Constraint, options), + offsetof(PgQuery__IndexStmt, n_exclude_op_names), + offsetof(PgQuery__IndexStmt, exclude_op_names), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "indexname", - 15, + "idxcomment", + 10, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, indexname), + offsetof(PgQuery__IndexStmt, idxcomment), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "indexspace", - 16, + "index_oid", + 11, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, indexspace), + offsetof(PgQuery__IndexStmt, index_oid), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "reset_default_tblspc", - 17, + "old_number", + 12, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, reset_default_tblspc), + offsetof(PgQuery__IndexStmt, old_number), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "access_method", - 18, + "old_create_subid", + 13, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, access_method), + offsetof(PgQuery__IndexStmt, old_create_subid), NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "where_clause", - 19, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, where_clause), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "pktable", - 20, + "old_first_relfilelocator_subid", + 14, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, pktable), - &pg_query__range_var__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "fk_attrs", - 21, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Constraint, n_fk_attrs), - offsetof(PgQuery__Constraint, fk_attrs), - &pg_query__node__descriptor, + offsetof(PgQuery__IndexStmt, old_first_relfilelocator_subid), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "pk_attrs", - 22, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Constraint, n_pk_attrs), - offsetof(PgQuery__Constraint, pk_attrs), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "fk_matchtype", - 23, + "unique", + 15, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, fk_matchtype), + offsetof(PgQuery__IndexStmt, unique), NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "fk_upd_action", - 24, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, fk_upd_action), NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "fk_del_action", - 25, + "nulls_not_distinct", + 16, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, fk_del_action), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "fk_del_set_cols", - 26, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Constraint, n_fk_del_set_cols), - offsetof(PgQuery__Constraint, fk_del_set_cols), - &pg_query__node__descriptor, + offsetof(PgQuery__IndexStmt, nulls_not_distinct), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "old_conpfeqop", - 27, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__Constraint, n_old_conpfeqop), - offsetof(PgQuery__Constraint, old_conpfeqop), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "old_pktable_oid", - 28, + "primary", + 17, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, old_pktable_oid), + offsetof(PgQuery__IndexStmt, primary), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "skip_validation", - 29, + "isconstraint", + 18, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, skip_validation), + offsetof(PgQuery__IndexStmt, isconstraint), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "initially_valid", - 30, + "deferrable", + 19, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__Constraint, initially_valid), + offsetof(PgQuery__IndexStmt, deferrable), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__constraint__field_indices_by_name[] = { - 17, /* field[17] = access_method */ - 1, /* field[1] = conname */ - 0, /* field[0] = contype */ - 7, /* field[7] = cooked_expr */ - 2, /* field[2] = deferrable */ - 12, /* field[12] = exclusions */ - 20, /* field[20] = fk_attrs */ - 24, /* field[24] = fk_del_action */ - 25, /* field[25] = fk_del_set_cols */ - 22, /* field[22] = fk_matchtype */ - 23, /* field[23] = fk_upd_action */ - 8, /* field[8] = generated_when */ - 11, /* field[11] = including */ - 14, /* field[14] = indexname */ - 15, /* field[15] = indexspace */ - 3, /* field[3] = initdeferred */ - 29, /* field[29] = initially_valid */ - 5, /* field[5] = is_no_inherit */ - 10, /* field[10] = keys */ - 4, /* field[4] = location */ - 9, /* field[9] = nulls_not_distinct */ - 26, /* field[26] = old_conpfeqop */ - 27, /* field[27] = old_pktable_oid */ - 13, /* field[13] = options */ - 21, /* field[21] = pk_attrs */ - 19, /* field[19] = pktable */ - 6, /* field[6] = raw_expr */ - 16, /* field[16] = reset_default_tblspc */ - 28, /* field[28] = skip_validation */ - 18, /* field[18] = where_clause */ -}; -static const ProtobufCIntRange pg_query__constraint__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 30 } -}; -const ProtobufCMessageDescriptor pg_query__constraint__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.Constraint", - "Constraint", - "PgQuery__Constraint", - "pg_query", - sizeof(PgQuery__Constraint), - 30, - pg_query__constraint__field_descriptors, - pg_query__constraint__field_indices_by_name, - 1, pg_query__constraint__number_ranges, - (ProtobufCMessageInit) pg_query__constraint__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__def_elem__field_descriptors[5] = -{ { - "defnamespace", - 1, + "initdeferred", + 20, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DefElem, defnamespace), + offsetof(PgQuery__IndexStmt, initdeferred), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "defname", - 2, + "transformed", + 21, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DefElem, defname), + offsetof(PgQuery__IndexStmt, transformed), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg", - 3, + "concurrent", + 22, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DefElem, arg), - &pg_query__node__descriptor, + offsetof(PgQuery__IndexStmt, concurrent), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "defaction", - 4, + "if_not_exists", + 23, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DefElem, defaction), - &pg_query__def_elem_action__descriptor, + offsetof(PgQuery__IndexStmt, if_not_exists), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 5, + "reset_default_tblspc", + 24, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__DefElem, location), + offsetof(PgQuery__IndexStmt, reset_default_tblspc), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__def_elem__field_indices_by_name[] = { - 2, /* field[2] = arg */ - 3, /* field[3] = defaction */ - 1, /* field[1] = defname */ - 0, /* field[0] = defnamespace */ - 4, /* field[4] = location */ +static const unsigned pg_query__index_stmt__field_indices_by_name[] = { + 2, /* field[2] = access_method */ + 21, /* field[21] = concurrent */ + 18, /* field[18] = deferrable */ + 8, /* field[8] = exclude_op_names */ + 9, /* field[9] = idxcomment */ + 0, /* field[0] = idxname */ + 22, /* field[22] = if_not_exists */ + 5, /* field[5] = index_including_params */ + 10, /* field[10] = index_oid */ + 4, /* field[4] = index_params */ + 19, /* field[19] = initdeferred */ + 17, /* field[17] = isconstraint */ + 15, /* field[15] = nulls_not_distinct */ + 12, /* field[12] = old_create_subid */ + 13, /* field[13] = old_first_relfilelocator_subid */ + 11, /* field[11] = old_number */ + 6, /* field[6] = options */ + 16, /* field[16] = primary */ + 1, /* field[1] = relation */ + 23, /* field[23] = reset_default_tblspc */ + 3, /* field[3] = table_space */ + 20, /* field[20] = transformed */ + 14, /* field[14] = unique */ + 7, /* field[7] = where_clause */ }; -static const ProtobufCIntRange pg_query__def_elem__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__index_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 24 } }; -const ProtobufCMessageDescriptor pg_query__def_elem__descriptor = +const ProtobufCMessageDescriptor pg_query__index_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.DefElem", - "DefElem", - "PgQuery__DefElem", + "pg_query.IndexStmt", + "IndexStmt", + "PgQuery__IndexStmt", "pg_query", - sizeof(PgQuery__DefElem), - 5, - pg_query__def_elem__field_descriptors, - pg_query__def_elem__field_indices_by_name, - 1, pg_query__def_elem__number_ranges, - (ProtobufCMessageInit) pg_query__def_elem__init, + sizeof(PgQuery__IndexStmt), + 24, + pg_query__index_stmt__field_descriptors, + pg_query__index_stmt__field_indices_by_name, + 1, pg_query__index_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__index_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__range_tbl_entry__field_descriptors[37] = +static const ProtobufCFieldDescriptor pg_query__create_stats_stmt__field_descriptors[7] = { { - "rtekind", + "defnames", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, rtekind), - &pg_query__rtekind__descriptor, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateStatsStmt, n_defnames), + offsetof(PgQuery__CreateStatsStmt, defnames), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "relid", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, relid), - NULL, + }, + { + "stat_types", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateStatsStmt, n_stat_types), + offsetof(PgQuery__CreateStatsStmt, stat_types), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relkind", + "exprs", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, relkind), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateStatsStmt, n_exprs), + offsetof(PgQuery__CreateStatsStmt, exprs), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rellockmode", + "relations", 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, rellockmode), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateStatsStmt, n_relations), + offsetof(PgQuery__CreateStatsStmt, relations), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "tablesample", + "stxcomment", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, tablesample), - &pg_query__table_sample_clause__descriptor, + offsetof(PgQuery__CreateStatsStmt, stxcomment), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "subquery", + "transformed", 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, subquery), - &pg_query__query__descriptor, + offsetof(PgQuery__CreateStatsStmt, transformed), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "security_barrier", + "if_not_exists", 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, security_barrier), + offsetof(PgQuery__CreateStatsStmt, if_not_exists), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__create_stats_stmt__field_indices_by_name[] = { + 0, /* field[0] = defnames */ + 2, /* field[2] = exprs */ + 6, /* field[6] = if_not_exists */ + 3, /* field[3] = relations */ + 1, /* field[1] = stat_types */ + 4, /* field[4] = stxcomment */ + 5, /* field[5] = transformed */ +}; +static const ProtobufCIntRange pg_query__create_stats_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__create_stats_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.CreateStatsStmt", + "CreateStatsStmt", + "PgQuery__CreateStatsStmt", + "pg_query", + sizeof(PgQuery__CreateStatsStmt), + 7, + pg_query__create_stats_stmt__field_descriptors, + pg_query__create_stats_stmt__field_indices_by_name, + 1, pg_query__create_stats_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_stats_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__stats_elem__field_descriptors[2] = +{ { - "jointype", - 8, + "name", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, jointype), - &pg_query__join_type__descriptor, + offsetof(PgQuery__StatsElem, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "joinmergedcols", - 9, + "expr", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, joinmergedcols), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "joinaliasvars", - 10, - PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblEntry, n_joinaliasvars), - offsetof(PgQuery__RangeTblEntry, joinaliasvars), + 0, /* quantifier_offset */ + offsetof(PgQuery__StatsElem, expr), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__stats_elem__field_indices_by_name[] = { + 1, /* field[1] = expr */ + 0, /* field[0] = name */ +}; +static const ProtobufCIntRange pg_query__stats_elem__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__stats_elem__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.StatsElem", + "StatsElem", + "PgQuery__StatsElem", + "pg_query", + sizeof(PgQuery__StatsElem), + 2, + pg_query__stats_elem__field_descriptors, + pg_query__stats_elem__field_indices_by_name, + 1, pg_query__stats_elem__number_ranges, + (ProtobufCMessageInit) pg_query__stats_elem__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__alter_stats_stmt__field_descriptors[3] = +{ { - "joinleftcols", - 11, + "defnames", + 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblEntry, n_joinleftcols), - offsetof(PgQuery__RangeTblEntry, joinleftcols), + offsetof(PgQuery__AlterStatsStmt, n_defnames), + offsetof(PgQuery__AlterStatsStmt, defnames), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "joinrightcols", - 12, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblEntry, n_joinrightcols), - offsetof(PgQuery__RangeTblEntry, joinrightcols), - &pg_query__node__descriptor, + "stxstattarget", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterStatsStmt, stxstattarget), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "join_using_alias", - 13, + "missing_ok", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, join_using_alias), - &pg_query__alias__descriptor, + offsetof(PgQuery__AlterStatsStmt, missing_ok), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "functions", - 14, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblEntry, n_functions), - offsetof(PgQuery__RangeTblEntry, functions), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__alter_stats_stmt__field_indices_by_name[] = { + 0, /* field[0] = defnames */ + 2, /* field[2] = missing_ok */ + 1, /* field[1] = stxstattarget */ +}; +static const ProtobufCIntRange pg_query__alter_stats_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__alter_stats_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlterStatsStmt", + "AlterStatsStmt", + "PgQuery__AlterStatsStmt", + "pg_query", + sizeof(PgQuery__AlterStatsStmt), + 3, + pg_query__alter_stats_stmt__field_descriptors, + pg_query__alter_stats_stmt__field_indices_by_name, + 1, pg_query__alter_stats_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_stats_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__create_function_stmt__field_descriptors[7] = +{ { - "funcordinality", - 15, + "is_procedure", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, funcordinality), + offsetof(PgQuery__CreateFunctionStmt, is_procedure), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "tablefunc", - 16, + "replace", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, tablefunc), - &pg_query__table_func__descriptor, + offsetof(PgQuery__CreateFunctionStmt, replace), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "values_lists", - 17, + "funcname", + 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblEntry, n_values_lists), - offsetof(PgQuery__RangeTblEntry, values_lists), + offsetof(PgQuery__CreateFunctionStmt, n_funcname), + offsetof(PgQuery__CreateFunctionStmt, funcname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ctename", - 18, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, ctename), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "ctelevelsup", - 19, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, ctelevelsup), - NULL, + "parameters", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateFunctionStmt, n_parameters), + offsetof(PgQuery__CreateFunctionStmt, parameters), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "self_reference", - 20, + "return_type", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, self_reference), - NULL, + offsetof(PgQuery__CreateFunctionStmt, return_type), + &pg_query__type_name__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coltypes", - 21, + "options", + 6, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblEntry, n_coltypes), - offsetof(PgQuery__RangeTblEntry, coltypes), + offsetof(PgQuery__CreateFunctionStmt, n_options), + offsetof(PgQuery__CreateFunctionStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "coltypmods", - 22, - PROTOBUF_C_LABEL_REPEATED, + "sql_body", + 7, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblEntry, n_coltypmods), - offsetof(PgQuery__RangeTblEntry, coltypmods), + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateFunctionStmt, sql_body), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__create_function_stmt__field_indices_by_name[] = { + 2, /* field[2] = funcname */ + 0, /* field[0] = is_procedure */ + 5, /* field[5] = options */ + 3, /* field[3] = parameters */ + 1, /* field[1] = replace */ + 4, /* field[4] = return_type */ + 6, /* field[6] = sql_body */ +}; +static const ProtobufCIntRange pg_query__create_function_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__create_function_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.CreateFunctionStmt", + "CreateFunctionStmt", + "PgQuery__CreateFunctionStmt", + "pg_query", + sizeof(PgQuery__CreateFunctionStmt), + 7, + pg_query__create_function_stmt__field_descriptors, + pg_query__create_function_stmt__field_indices_by_name, + 1, pg_query__create_function_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_function_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__function_parameter__field_descriptors[4] = +{ { - "colcollations", - 23, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblEntry, n_colcollations), - offsetof(PgQuery__RangeTblEntry, colcollations), - &pg_query__node__descriptor, + "name", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__FunctionParameter, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "enrname", - 24, + "arg_type", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, enrname), + offsetof(PgQuery__FunctionParameter, arg_type), + &pg_query__type_name__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "enrtuples", - 25, + "mode", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_DOUBLE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, enrtuples), - NULL, + offsetof(PgQuery__FunctionParameter, mode), + &pg_query__function_parameter_mode__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "alias", - 26, + "defexpr", + 4, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, alias), - &pg_query__alias__descriptor, + offsetof(PgQuery__FunctionParameter, defexpr), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__function_parameter__field_indices_by_name[] = { + 1, /* field[1] = arg_type */ + 3, /* field[3] = defexpr */ + 2, /* field[2] = mode */ + 0, /* field[0] = name */ +}; +static const ProtobufCIntRange pg_query__function_parameter__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor pg_query__function_parameter__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.FunctionParameter", + "FunctionParameter", + "PgQuery__FunctionParameter", + "pg_query", + sizeof(PgQuery__FunctionParameter), + 4, + pg_query__function_parameter__field_descriptors, + pg_query__function_parameter__field_indices_by_name, + 1, pg_query__function_parameter__number_ranges, + (ProtobufCMessageInit) pg_query__function_parameter__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__alter_function_stmt__field_descriptors[3] = +{ { - "eref", - 27, + "objtype", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, eref), - &pg_query__alias__descriptor, + offsetof(PgQuery__AlterFunctionStmt, objtype), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "lateral", - 28, + "func", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, lateral), - NULL, + offsetof(PgQuery__AlterFunctionStmt, func), + &pg_query__object_with_args__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "inh", - 29, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, inh), + "actions", + 3, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterFunctionStmt, n_actions), + offsetof(PgQuery__AlterFunctionStmt, actions), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__alter_function_stmt__field_indices_by_name[] = { + 2, /* field[2] = actions */ + 1, /* field[1] = func */ + 0, /* field[0] = objtype */ +}; +static const ProtobufCIntRange pg_query__alter_function_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__alter_function_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlterFunctionStmt", + "AlterFunctionStmt", + "PgQuery__AlterFunctionStmt", + "pg_query", + sizeof(PgQuery__AlterFunctionStmt), + 3, + pg_query__alter_function_stmt__field_descriptors, + pg_query__alter_function_stmt__field_indices_by_name, + 1, pg_query__alter_function_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_function_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__do_stmt__field_descriptors[1] = +{ + { + "args", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__DoStmt, n_args), + offsetof(PgQuery__DoStmt, args), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__do_stmt__field_indices_by_name[] = { + 0, /* field[0] = args */ +}; +static const ProtobufCIntRange pg_query__do_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__do_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.DoStmt", + "DoStmt", + "PgQuery__DoStmt", + "pg_query", + sizeof(PgQuery__DoStmt), + 1, + pg_query__do_stmt__field_descriptors, + pg_query__do_stmt__field_indices_by_name, + 1, pg_query__do_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__do_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__inline_code_block__field_descriptors[4] = +{ { - "in_from_cl", - 30, + "source_text", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, in_from_cl), - NULL, + offsetof(PgQuery__InlineCodeBlock, source_text), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "required_perms", - 31, + "lang_oid", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, required_perms), + offsetof(PgQuery__InlineCodeBlock, lang_oid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "check_as_user", - 32, + "lang_is_trusted", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblEntry, check_as_user), + offsetof(PgQuery__InlineCodeBlock, lang_is_trusted), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "selected_cols", - 33, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_UINT64, - offsetof(PgQuery__RangeTblEntry, n_selected_cols), - offsetof(PgQuery__RangeTblEntry, selected_cols), + "atomic", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__InlineCodeBlock, atomic), NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__inline_code_block__field_indices_by_name[] = { + 3, /* field[3] = atomic */ + 2, /* field[2] = lang_is_trusted */ + 1, /* field[1] = lang_oid */ + 0, /* field[0] = source_text */ +}; +static const ProtobufCIntRange pg_query__inline_code_block__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor pg_query__inline_code_block__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.InlineCodeBlock", + "InlineCodeBlock", + "PgQuery__InlineCodeBlock", + "pg_query", + sizeof(PgQuery__InlineCodeBlock), + 4, + pg_query__inline_code_block__field_descriptors, + pg_query__inline_code_block__field_indices_by_name, + 1, pg_query__inline_code_block__number_ranges, + (ProtobufCMessageInit) pg_query__inline_code_block__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__call_stmt__field_descriptors[3] = +{ { - "inserted_cols", - 34, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_UINT64, - offsetof(PgQuery__RangeTblEntry, n_inserted_cols), - offsetof(PgQuery__RangeTblEntry, inserted_cols), - NULL, + "funccall", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__CallStmt, funccall), + &pg_query__func_call__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "updated_cols", - 35, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_UINT64, - offsetof(PgQuery__RangeTblEntry, n_updated_cols), - offsetof(PgQuery__RangeTblEntry, updated_cols), - NULL, + "funcexpr", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__CallStmt, funcexpr), + &pg_query__func_expr__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "extra_updated_cols", - 36, + "outargs", + 3, PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_UINT64, - offsetof(PgQuery__RangeTblEntry, n_extra_updated_cols), - offsetof(PgQuery__RangeTblEntry, extra_updated_cols), - NULL, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CallStmt, n_outargs), + offsetof(PgQuery__CallStmt, outargs), + &pg_query__node__descriptor, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__call_stmt__field_indices_by_name[] = { + 0, /* field[0] = funccall */ + 1, /* field[1] = funcexpr */ + 2, /* field[2] = outargs */ +}; +static const ProtobufCIntRange pg_query__call_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__call_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.CallStmt", + "CallStmt", + "PgQuery__CallStmt", + "pg_query", + sizeof(PgQuery__CallStmt), + 3, + pg_query__call_stmt__field_descriptors, + pg_query__call_stmt__field_indices_by_name, + 1, pg_query__call_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__call_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__call_context__field_descriptors[1] = +{ { - "security_quals", - 37, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblEntry, n_security_quals), - offsetof(PgQuery__RangeTblEntry, security_quals), - &pg_query__node__descriptor, + "atomic", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__CallContext, atomic), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__range_tbl_entry__field_indices_by_name[] = { - 25, /* field[25] = alias */ - 31, /* field[31] = check_as_user */ - 22, /* field[22] = colcollations */ - 20, /* field[20] = coltypes */ - 21, /* field[21] = coltypmods */ - 18, /* field[18] = ctelevelsup */ - 17, /* field[17] = ctename */ - 23, /* field[23] = enrname */ - 24, /* field[24] = enrtuples */ - 26, /* field[26] = eref */ - 35, /* field[35] = extra_updated_cols */ - 14, /* field[14] = funcordinality */ - 13, /* field[13] = functions */ - 29, /* field[29] = in_from_cl */ - 28, /* field[28] = inh */ - 33, /* field[33] = inserted_cols */ - 12, /* field[12] = join_using_alias */ - 9, /* field[9] = joinaliasvars */ - 10, /* field[10] = joinleftcols */ - 8, /* field[8] = joinmergedcols */ - 11, /* field[11] = joinrightcols */ - 7, /* field[7] = jointype */ - 27, /* field[27] = lateral */ - 1, /* field[1] = relid */ - 2, /* field[2] = relkind */ - 3, /* field[3] = rellockmode */ - 30, /* field[30] = required_perms */ - 0, /* field[0] = rtekind */ - 6, /* field[6] = security_barrier */ - 36, /* field[36] = security_quals */ - 32, /* field[32] = selected_cols */ - 19, /* field[19] = self_reference */ - 5, /* field[5] = subquery */ - 15, /* field[15] = tablefunc */ - 4, /* field[4] = tablesample */ - 34, /* field[34] = updated_cols */ - 16, /* field[16] = values_lists */ +static const unsigned pg_query__call_context__field_indices_by_name[] = { + 0, /* field[0] = atomic */ }; -static const ProtobufCIntRange pg_query__range_tbl_entry__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__call_context__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 37 } + { 0, 1 } }; -const ProtobufCMessageDescriptor pg_query__range_tbl_entry__descriptor = +const ProtobufCMessageDescriptor pg_query__call_context__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RangeTblEntry", - "RangeTblEntry", - "PgQuery__RangeTblEntry", + "pg_query.CallContext", + "CallContext", + "PgQuery__CallContext", "pg_query", - sizeof(PgQuery__RangeTblEntry), - 37, - pg_query__range_tbl_entry__field_descriptors, - pg_query__range_tbl_entry__field_indices_by_name, - 1, pg_query__range_tbl_entry__number_ranges, - (ProtobufCMessageInit) pg_query__range_tbl_entry__init, + sizeof(PgQuery__CallContext), + 1, + pg_query__call_context__field_descriptors, + pg_query__call_context__field_indices_by_name, + 1, pg_query__call_context__number_ranges, + (ProtobufCMessageInit) pg_query__call_context__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__range_tbl_function__field_descriptors[7] = +static const ProtobufCFieldDescriptor pg_query__rename_stmt__field_descriptors[8] = { { - "funcexpr", + "rename_type", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblFunction, funcexpr), - &pg_query__node__descriptor, + offsetof(PgQuery__RenameStmt, rename_type), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funccolcount", + "relation_type", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__RangeTblFunction, funccolcount), - NULL, + offsetof(PgQuery__RenameStmt, relation_type), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funccolnames", + "relation", 3, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblFunction, n_funccolnames), - offsetof(PgQuery__RangeTblFunction, funccolnames), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__RenameStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funccoltypes", + "object", 4, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblFunction, n_funccoltypes), - offsetof(PgQuery__RangeTblFunction, funccoltypes), + 0, /* quantifier_offset */ + offsetof(PgQuery__RenameStmt, object), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funccoltypmods", + "subname", 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblFunction, n_funccoltypmods), - offsetof(PgQuery__RangeTblFunction, funccoltypmods), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__RenameStmt, subname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funccolcollations", + "newname", 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__RangeTblFunction, n_funccolcollations), - offsetof(PgQuery__RangeTblFunction, funccolcollations), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__RenameStmt, newname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "funcparams", + "behavior", 7, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_UINT64, - offsetof(PgQuery__RangeTblFunction, n_funcparams), - offsetof(PgQuery__RangeTblFunction, funcparams), + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__RenameStmt, behavior), + &pg_query__drop_behavior__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "missing_ok", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__RenameStmt, missing_ok), NULL, NULL, - 0 | PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ + 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__range_tbl_function__field_indices_by_name[] = { - 5, /* field[5] = funccolcollations */ - 1, /* field[1] = funccolcount */ - 2, /* field[2] = funccolnames */ - 3, /* field[3] = funccoltypes */ - 4, /* field[4] = funccoltypmods */ - 0, /* field[0] = funcexpr */ - 6, /* field[6] = funcparams */ +static const unsigned pg_query__rename_stmt__field_indices_by_name[] = { + 6, /* field[6] = behavior */ + 7, /* field[7] = missing_ok */ + 5, /* field[5] = newname */ + 3, /* field[3] = object */ + 2, /* field[2] = relation */ + 1, /* field[1] = relation_type */ + 0, /* field[0] = rename_type */ + 4, /* field[4] = subname */ }; -static const ProtobufCIntRange pg_query__range_tbl_function__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__rename_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 7 } + { 0, 8 } }; -const ProtobufCMessageDescriptor pg_query__range_tbl_function__descriptor = +const ProtobufCMessageDescriptor pg_query__rename_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RangeTblFunction", - "RangeTblFunction", - "PgQuery__RangeTblFunction", + "pg_query.RenameStmt", + "RenameStmt", + "PgQuery__RenameStmt", "pg_query", - sizeof(PgQuery__RangeTblFunction), - 7, - pg_query__range_tbl_function__field_descriptors, - pg_query__range_tbl_function__field_indices_by_name, - 1, pg_query__range_tbl_function__number_ranges, - (ProtobufCMessageInit) pg_query__range_tbl_function__init, + sizeof(PgQuery__RenameStmt), + 8, + pg_query__rename_stmt__field_descriptors, + pg_query__rename_stmt__field_indices_by_name, + 1, pg_query__rename_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__rename_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__table_sample_clause__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__alter_object_depends_stmt__field_descriptors[5] = { { - "tsmhandler", + "object_type", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__TableSampleClause, tsmhandler), - NULL, + offsetof(PgQuery__AlterObjectDependsStmt, object_type), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args", + "relation", 2, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__TableSampleClause, n_args), - offsetof(PgQuery__TableSampleClause, args), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterObjectDependsStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "repeatable", + "object", 3, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__TableSampleClause, repeatable), + offsetof(PgQuery__AlterObjectDependsStmt, object), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, + { + "extname", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterObjectDependsStmt, extname), + &pg_query__string__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "remove", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterObjectDependsStmt, remove), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, }; -static const unsigned pg_query__table_sample_clause__field_indices_by_name[] = { - 1, /* field[1] = args */ - 2, /* field[2] = repeatable */ - 0, /* field[0] = tsmhandler */ +static const unsigned pg_query__alter_object_depends_stmt__field_indices_by_name[] = { + 3, /* field[3] = extname */ + 2, /* field[2] = object */ + 0, /* field[0] = object_type */ + 1, /* field[1] = relation */ + 4, /* field[4] = remove */ }; -static const ProtobufCIntRange pg_query__table_sample_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_object_depends_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__table_sample_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_object_depends_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.TableSampleClause", - "TableSampleClause", - "PgQuery__TableSampleClause", + "pg_query.AlterObjectDependsStmt", + "AlterObjectDependsStmt", + "PgQuery__AlterObjectDependsStmt", "pg_query", - sizeof(PgQuery__TableSampleClause), - 3, - pg_query__table_sample_clause__field_descriptors, - pg_query__table_sample_clause__field_indices_by_name, - 1, pg_query__table_sample_clause__number_ranges, - (ProtobufCMessageInit) pg_query__table_sample_clause__init, + sizeof(PgQuery__AlterObjectDependsStmt), + 5, + pg_query__alter_object_depends_stmt__field_descriptors, + pg_query__alter_object_depends_stmt__field_indices_by_name, + 1, pg_query__alter_object_depends_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_object_depends_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__with_check_option__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__alter_object_schema_stmt__field_descriptors[5] = { { - "kind", + "object_type", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__WithCheckOption, kind), - &pg_query__wcokind__descriptor, + offsetof(PgQuery__AlterObjectSchemaStmt, object_type), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relname", + "relation", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__WithCheckOption, relname), + offsetof(PgQuery__AlterObjectSchemaStmt, relation), + &pg_query__range_var__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "polname", + "object", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__WithCheckOption, polname), + offsetof(PgQuery__AlterObjectSchemaStmt, object), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "qual", + "newschema", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__WithCheckOption, qual), - &pg_query__node__descriptor, + offsetof(PgQuery__AlterObjectSchemaStmt, newschema), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cascaded", + "missing_ok", 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__WithCheckOption, cascaded), + offsetof(PgQuery__AlterObjectSchemaStmt, missing_ok), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__with_check_option__field_indices_by_name[] = { - 4, /* field[4] = cascaded */ - 0, /* field[0] = kind */ - 2, /* field[2] = polname */ - 3, /* field[3] = qual */ - 1, /* field[1] = relname */ +static const unsigned pg_query__alter_object_schema_stmt__field_indices_by_name[] = { + 4, /* field[4] = missing_ok */ + 3, /* field[3] = newschema */ + 2, /* field[2] = object */ + 0, /* field[0] = object_type */ + 1, /* field[1] = relation */ }; -static const ProtobufCIntRange pg_query__with_check_option__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_object_schema_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__with_check_option__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_object_schema_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.WithCheckOption", - "WithCheckOption", - "PgQuery__WithCheckOption", + "pg_query.AlterObjectSchemaStmt", + "AlterObjectSchemaStmt", + "PgQuery__AlterObjectSchemaStmt", "pg_query", - sizeof(PgQuery__WithCheckOption), + sizeof(PgQuery__AlterObjectSchemaStmt), 5, - pg_query__with_check_option__field_descriptors, - pg_query__with_check_option__field_indices_by_name, - 1, pg_query__with_check_option__number_ranges, - (ProtobufCMessageInit) pg_query__with_check_option__init, + pg_query__alter_object_schema_stmt__field_descriptors, + pg_query__alter_object_schema_stmt__field_indices_by_name, + 1, pg_query__alter_object_schema_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_object_schema_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__sort_group_clause__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__alter_owner_stmt__field_descriptors[4] = { { - "tle_sort_group_ref", + "object_type", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__SortGroupClause, tle_sort_group_ref), - NULL, + offsetof(PgQuery__AlterOwnerStmt, object_type), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "eqop", + "relation", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SortGroupClause, eqop), - NULL, + offsetof(PgQuery__AlterOwnerStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "sortop", + "object", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SortGroupClause, sortop), - NULL, + offsetof(PgQuery__AlterOwnerStmt, object), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "nulls_first", + "newowner", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SortGroupClause, nulls_first), - NULL, + offsetof(PgQuery__AlterOwnerStmt, newowner), + &pg_query__role_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__alter_owner_stmt__field_indices_by_name[] = { + 3, /* field[3] = newowner */ + 2, /* field[2] = object */ + 0, /* field[0] = object_type */ + 1, /* field[1] = relation */ +}; +static const ProtobufCIntRange pg_query__alter_owner_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor pg_query__alter_owner_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlterOwnerStmt", + "AlterOwnerStmt", + "PgQuery__AlterOwnerStmt", + "pg_query", + sizeof(PgQuery__AlterOwnerStmt), + 4, + pg_query__alter_owner_stmt__field_descriptors, + pg_query__alter_owner_stmt__field_indices_by_name, + 1, pg_query__alter_owner_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_owner_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__alter_operator_stmt__field_descriptors[2] = +{ { - "hashable", - 5, + "opername", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__SortGroupClause, hashable), + offsetof(PgQuery__AlterOperatorStmt, opername), + &pg_query__object_with_args__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "options", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterOperatorStmt, n_options), + offsetof(PgQuery__AlterOperatorStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__sort_group_clause__field_indices_by_name[] = { - 1, /* field[1] = eqop */ - 4, /* field[4] = hashable */ - 3, /* field[3] = nulls_first */ - 2, /* field[2] = sortop */ - 0, /* field[0] = tle_sort_group_ref */ +static const unsigned pg_query__alter_operator_stmt__field_indices_by_name[] = { + 0, /* field[0] = opername */ + 1, /* field[1] = options */ }; -static const ProtobufCIntRange pg_query__sort_group_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_operator_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__sort_group_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_operator_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.SortGroupClause", - "SortGroupClause", - "PgQuery__SortGroupClause", + "pg_query.AlterOperatorStmt", + "AlterOperatorStmt", + "PgQuery__AlterOperatorStmt", "pg_query", - sizeof(PgQuery__SortGroupClause), - 5, - pg_query__sort_group_clause__field_descriptors, - pg_query__sort_group_clause__field_indices_by_name, - 1, pg_query__sort_group_clause__number_ranges, - (ProtobufCMessageInit) pg_query__sort_group_clause__init, + sizeof(PgQuery__AlterOperatorStmt), + 2, + pg_query__alter_operator_stmt__field_descriptors, + pg_query__alter_operator_stmt__field_indices_by_name, + 1, pg_query__alter_operator_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_operator_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__grouping_set__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__alter_type_stmt__field_descriptors[2] = { { - "kind", + "type_name", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__GroupingSet, kind), - &pg_query__grouping_set_kind__descriptor, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterTypeStmt, n_type_name), + offsetof(PgQuery__AlterTypeStmt, type_name), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "content", + "options", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__GroupingSet, n_content), - offsetof(PgQuery__GroupingSet, content), + offsetof(PgQuery__AlterTypeStmt, n_options), + offsetof(PgQuery__AlterTypeStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "location", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__GroupingSet, location), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, }; -static const unsigned pg_query__grouping_set__field_indices_by_name[] = { - 1, /* field[1] = content */ - 0, /* field[0] = kind */ - 2, /* field[2] = location */ +static const unsigned pg_query__alter_type_stmt__field_indices_by_name[] = { + 1, /* field[1] = options */ + 0, /* field[0] = type_name */ }; -static const ProtobufCIntRange pg_query__grouping_set__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_type_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__grouping_set__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_type_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.GroupingSet", - "GroupingSet", - "PgQuery__GroupingSet", + "pg_query.AlterTypeStmt", + "AlterTypeStmt", + "PgQuery__AlterTypeStmt", "pg_query", - sizeof(PgQuery__GroupingSet), - 3, - pg_query__grouping_set__field_descriptors, - pg_query__grouping_set__field_indices_by_name, - 1, pg_query__grouping_set__number_ranges, - (ProtobufCMessageInit) pg_query__grouping_set__init, + sizeof(PgQuery__AlterTypeStmt), + 2, + pg_query__alter_type_stmt__field_descriptors, + pg_query__alter_type_stmt__field_indices_by_name, + 1, pg_query__alter_type_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_type_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__window_clause__field_descriptors[15] = +static const ProtobufCFieldDescriptor pg_query__rule_stmt__field_descriptors[7] = { { - "name", + "relation", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, name), + offsetof(PgQuery__RuleStmt, relation), + &pg_query__range_var__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "refname", + "rulename", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, refname), + offsetof(PgQuery__RuleStmt, rulename), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "partition_clause", + "where_clause", 3, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__WindowClause, n_partition_clause), - offsetof(PgQuery__WindowClause, partition_clause), + 0, /* quantifier_offset */ + offsetof(PgQuery__RuleStmt, where_clause), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "order_clause", + "event", 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__WindowClause, n_order_clause), - offsetof(PgQuery__WindowClause, order_clause), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__RuleStmt, event), + &pg_query__cmd_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "frame_options", + "instead", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, frame_options), + offsetof(PgQuery__RuleStmt, instead), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "start_offset", + "actions", 6, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, start_offset), + offsetof(PgQuery__RuleStmt, n_actions), + offsetof(PgQuery__RuleStmt, actions), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "end_offset", + "replace", 7, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, end_offset), - &pg_query__node__descriptor, + offsetof(PgQuery__RuleStmt, replace), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__rule_stmt__field_indices_by_name[] = { + 5, /* field[5] = actions */ + 3, /* field[3] = event */ + 4, /* field[4] = instead */ + 0, /* field[0] = relation */ + 6, /* field[6] = replace */ + 1, /* field[1] = rulename */ + 2, /* field[2] = where_clause */ +}; +static const ProtobufCIntRange pg_query__rule_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor pg_query__rule_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.RuleStmt", + "RuleStmt", + "PgQuery__RuleStmt", + "pg_query", + sizeof(PgQuery__RuleStmt), + 7, + pg_query__rule_stmt__field_descriptors, + pg_query__rule_stmt__field_indices_by_name, + 1, pg_query__rule_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__rule_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__notify_stmt__field_descriptors[2] = +{ { - "run_condition", - 8, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__WindowClause, n_run_condition), - offsetof(PgQuery__WindowClause, run_condition), - &pg_query__node__descriptor, + "conditionname", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__NotifyStmt, conditionname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "start_in_range_func", - 9, + "payload", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, start_in_range_func), - NULL, + offsetof(PgQuery__NotifyStmt, payload), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__notify_stmt__field_indices_by_name[] = { + 0, /* field[0] = conditionname */ + 1, /* field[1] = payload */ +}; +static const ProtobufCIntRange pg_query__notify_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__notify_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.NotifyStmt", + "NotifyStmt", + "PgQuery__NotifyStmt", + "pg_query", + sizeof(PgQuery__NotifyStmt), + 2, + pg_query__notify_stmt__field_descriptors, + pg_query__notify_stmt__field_indices_by_name, + 1, pg_query__notify_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__notify_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__listen_stmt__field_descriptors[1] = +{ { - "end_in_range_func", - 10, + "conditionname", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, end_in_range_func), - NULL, + offsetof(PgQuery__ListenStmt, conditionname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__listen_stmt__field_indices_by_name[] = { + 0, /* field[0] = conditionname */ +}; +static const ProtobufCIntRange pg_query__listen_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__listen_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.ListenStmt", + "ListenStmt", + "PgQuery__ListenStmt", + "pg_query", + sizeof(PgQuery__ListenStmt), + 1, + pg_query__listen_stmt__field_descriptors, + pg_query__listen_stmt__field_indices_by_name, + 1, pg_query__listen_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__listen_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__unlisten_stmt__field_descriptors[1] = +{ { - "in_range_coll", - 11, + "conditionname", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, in_range_coll), - NULL, + offsetof(PgQuery__UnlistenStmt, conditionname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__unlisten_stmt__field_indices_by_name[] = { + 0, /* field[0] = conditionname */ +}; +static const ProtobufCIntRange pg_query__unlisten_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__unlisten_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.UnlistenStmt", + "UnlistenStmt", + "PgQuery__UnlistenStmt", + "pg_query", + sizeof(PgQuery__UnlistenStmt), + 1, + pg_query__unlisten_stmt__field_descriptors, + pg_query__unlisten_stmt__field_indices_by_name, + 1, pg_query__unlisten_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__unlisten_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__transaction_stmt__field_descriptors[5] = +{ { - "in_range_asc", - 12, + "kind", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, in_range_asc), + offsetof(PgQuery__TransactionStmt, kind), + &pg_query__transaction_stmt_kind__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "options", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__TransactionStmt, n_options), + offsetof(PgQuery__TransactionStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "in_range_nulls_first", - 13, + "savepoint_name", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, in_range_nulls_first), - NULL, + offsetof(PgQuery__TransactionStmt, savepoint_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "winref", - 14, + "gid", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, winref), - NULL, + offsetof(PgQuery__TransactionStmt, gid), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "copied_order", - 15, + "chain", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__WindowClause, copied_order), + offsetof(PgQuery__TransactionStmt, chain), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__window_clause__field_indices_by_name[] = { - 14, /* field[14] = copied_order */ - 9, /* field[9] = end_in_range_func */ - 6, /* field[6] = end_offset */ - 4, /* field[4] = frame_options */ - 11, /* field[11] = in_range_asc */ - 10, /* field[10] = in_range_coll */ - 12, /* field[12] = in_range_nulls_first */ - 0, /* field[0] = name */ - 3, /* field[3] = order_clause */ - 2, /* field[2] = partition_clause */ - 1, /* field[1] = refname */ - 7, /* field[7] = run_condition */ - 8, /* field[8] = start_in_range_func */ - 5, /* field[5] = start_offset */ - 13, /* field[13] = winref */ +static const unsigned pg_query__transaction_stmt__field_indices_by_name[] = { + 4, /* field[4] = chain */ + 3, /* field[3] = gid */ + 0, /* field[0] = kind */ + 1, /* field[1] = options */ + 2, /* field[2] = savepoint_name */ }; -static const ProtobufCIntRange pg_query__window_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__transaction_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 15 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__window_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__transaction_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.WindowClause", - "WindowClause", - "PgQuery__WindowClause", + "pg_query.TransactionStmt", + "TransactionStmt", + "PgQuery__TransactionStmt", "pg_query", - sizeof(PgQuery__WindowClause), - 15, - pg_query__window_clause__field_descriptors, - pg_query__window_clause__field_indices_by_name, - 1, pg_query__window_clause__number_ranges, - (ProtobufCMessageInit) pg_query__window_clause__init, + sizeof(PgQuery__TransactionStmt), + 5, + pg_query__transaction_stmt__field_descriptors, + pg_query__transaction_stmt__field_indices_by_name, + 1, pg_query__transaction_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__transaction_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__object_with_args__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__composite_type_stmt__field_descriptors[2] = { { - "objname", + "typevar", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ObjectWithArgs, n_objname), - offsetof(PgQuery__ObjectWithArgs, objname), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__CompositeTypeStmt, typevar), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "objargs", + "coldeflist", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ObjectWithArgs, n_objargs), - offsetof(PgQuery__ObjectWithArgs, objargs), + offsetof(PgQuery__CompositeTypeStmt, n_coldeflist), + offsetof(PgQuery__CompositeTypeStmt, coldeflist), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__composite_type_stmt__field_indices_by_name[] = { + 1, /* field[1] = coldeflist */ + 0, /* field[0] = typevar */ +}; +static const ProtobufCIntRange pg_query__composite_type_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__composite_type_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.CompositeTypeStmt", + "CompositeTypeStmt", + "PgQuery__CompositeTypeStmt", + "pg_query", + sizeof(PgQuery__CompositeTypeStmt), + 2, + pg_query__composite_type_stmt__field_descriptors, + pg_query__composite_type_stmt__field_indices_by_name, + 1, pg_query__composite_type_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__composite_type_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__create_enum_stmt__field_descriptors[2] = +{ { - "objfuncargs", - 3, + "type_name", + 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__ObjectWithArgs, n_objfuncargs), - offsetof(PgQuery__ObjectWithArgs, objfuncargs), + offsetof(PgQuery__CreateEnumStmt, n_type_name), + offsetof(PgQuery__CreateEnumStmt, type_name), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "args_unspecified", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__ObjectWithArgs, args_unspecified), - NULL, + "vals", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateEnumStmt, n_vals), + offsetof(PgQuery__CreateEnumStmt, vals), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__object_with_args__field_indices_by_name[] = { - 3, /* field[3] = args_unspecified */ - 1, /* field[1] = objargs */ - 2, /* field[2] = objfuncargs */ - 0, /* field[0] = objname */ +static const unsigned pg_query__create_enum_stmt__field_indices_by_name[] = { + 0, /* field[0] = type_name */ + 1, /* field[1] = vals */ }; -static const ProtobufCIntRange pg_query__object_with_args__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_enum_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__object_with_args__descriptor = +const ProtobufCMessageDescriptor pg_query__create_enum_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.ObjectWithArgs", - "ObjectWithArgs", - "PgQuery__ObjectWithArgs", + "pg_query.CreateEnumStmt", + "CreateEnumStmt", + "PgQuery__CreateEnumStmt", "pg_query", - sizeof(PgQuery__ObjectWithArgs), - 4, - pg_query__object_with_args__field_descriptors, - pg_query__object_with_args__field_indices_by_name, - 1, pg_query__object_with_args__number_ranges, - (ProtobufCMessageInit) pg_query__object_with_args__init, + sizeof(PgQuery__CreateEnumStmt), + 2, + pg_query__create_enum_stmt__field_descriptors, + pg_query__create_enum_stmt__field_indices_by_name, + 1, pg_query__create_enum_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_enum_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__access_priv__field_descriptors[2] = +static const ProtobufCFieldDescriptor pg_query__create_range_stmt__field_descriptors[2] = { { - "priv_name", + "type_name", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__AccessPriv, priv_name), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateRangeStmt, n_type_name), + offsetof(PgQuery__CreateRangeStmt, type_name), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cols", + "params", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__AccessPriv, n_cols), - offsetof(PgQuery__AccessPriv, cols), + offsetof(PgQuery__CreateRangeStmt, n_params), + offsetof(PgQuery__CreateRangeStmt, params), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__access_priv__field_indices_by_name[] = { - 1, /* field[1] = cols */ - 0, /* field[0] = priv_name */ +static const unsigned pg_query__create_range_stmt__field_indices_by_name[] = { + 1, /* field[1] = params */ + 0, /* field[0] = type_name */ }; -static const ProtobufCIntRange pg_query__access_priv__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_range_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__access_priv__descriptor = +const ProtobufCMessageDescriptor pg_query__create_range_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.AccessPriv", - "AccessPriv", - "PgQuery__AccessPriv", + "pg_query.CreateRangeStmt", + "CreateRangeStmt", + "PgQuery__CreateRangeStmt", "pg_query", - sizeof(PgQuery__AccessPriv), + sizeof(PgQuery__CreateRangeStmt), 2, - pg_query__access_priv__field_descriptors, - pg_query__access_priv__field_indices_by_name, - 1, pg_query__access_priv__number_ranges, - (ProtobufCMessageInit) pg_query__access_priv__init, + pg_query__create_range_stmt__field_descriptors, + pg_query__create_range_stmt__field_indices_by_name, + 1, pg_query__create_range_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_range_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__create_op_class_item__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__alter_enum_stmt__field_descriptors[6] = { { - "itemtype", + "type_name", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__CreateOpClassItem, itemtype), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterEnumStmt, n_type_name), + offsetof(PgQuery__AlterEnumStmt, type_name), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "name", + "old_val", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateOpClassItem, name), - &pg_query__object_with_args__descriptor, + offsetof(PgQuery__AlterEnumStmt, old_val), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "number", + "new_val", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateOpClassItem, number), - NULL, + offsetof(PgQuery__AlterEnumStmt, new_val), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "order_family", + "new_val_neighbor", 4, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateOpClassItem, n_order_family), - offsetof(PgQuery__CreateOpClassItem, order_family), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterEnumStmt, new_val_neighbor), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "class_args", + "new_val_is_after", 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CreateOpClassItem, n_class_args), - offsetof(PgQuery__CreateOpClassItem, class_args), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterEnumStmt, new_val_is_after), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "storedtype", + "skip_if_new_val_exists", 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CreateOpClassItem, storedtype), - &pg_query__type_name__descriptor, + offsetof(PgQuery__AlterEnumStmt, skip_if_new_val_exists), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__create_op_class_item__field_indices_by_name[] = { - 4, /* field[4] = class_args */ - 0, /* field[0] = itemtype */ - 1, /* field[1] = name */ - 2, /* field[2] = number */ - 3, /* field[3] = order_family */ - 5, /* field[5] = storedtype */ +static const unsigned pg_query__alter_enum_stmt__field_indices_by_name[] = { + 2, /* field[2] = new_val */ + 4, /* field[4] = new_val_is_after */ + 3, /* field[3] = new_val_neighbor */ + 1, /* field[1] = old_val */ + 5, /* field[5] = skip_if_new_val_exists */ + 0, /* field[0] = type_name */ }; -static const ProtobufCIntRange pg_query__create_op_class_item__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_enum_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 6 } }; -const ProtobufCMessageDescriptor pg_query__create_op_class_item__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_enum_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CreateOpClassItem", - "CreateOpClassItem", - "PgQuery__CreateOpClassItem", + "pg_query.AlterEnumStmt", + "AlterEnumStmt", + "PgQuery__AlterEnumStmt", "pg_query", - sizeof(PgQuery__CreateOpClassItem), + sizeof(PgQuery__AlterEnumStmt), 6, - pg_query__create_op_class_item__field_descriptors, - pg_query__create_op_class_item__field_indices_by_name, - 1, pg_query__create_op_class_item__number_ranges, - (ProtobufCMessageInit) pg_query__create_op_class_item__init, + pg_query__alter_enum_stmt__field_descriptors, + pg_query__alter_enum_stmt__field_indices_by_name, + 1, pg_query__alter_enum_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_enum_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__table_like_clause__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__view_stmt__field_descriptors[6] = { { - "relation", + "view", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__TableLikeClause, relation), + offsetof(PgQuery__ViewStmt, view), &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "options", + "aliases", 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__TableLikeClause, options), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ViewStmt, n_aliases), + offsetof(PgQuery__ViewStmt, aliases), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "relation_oid", + "query", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__TableLikeClause, relation_oid), - NULL, + offsetof(PgQuery__ViewStmt, query), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__table_like_clause__field_indices_by_name[] = { - 1, /* field[1] = options */ - 0, /* field[0] = relation */ - 2, /* field[2] = relation_oid */ -}; -static const ProtobufCIntRange pg_query__table_like_clause__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__table_like_clause__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.TableLikeClause", - "TableLikeClause", - "PgQuery__TableLikeClause", - "pg_query", - sizeof(PgQuery__TableLikeClause), - 3, - pg_query__table_like_clause__field_descriptors, - pg_query__table_like_clause__field_indices_by_name, - 1, pg_query__table_like_clause__number_ranges, - (ProtobufCMessageInit) pg_query__table_like_clause__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__function_parameter__field_descriptors[4] = -{ { - "name", - 1, + "replace", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__FunctionParameter, name), + offsetof(PgQuery__ViewStmt, replace), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "arg_type", - 2, - PROTOBUF_C_LABEL_NONE, + "options", + 5, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__FunctionParameter, arg_type), - &pg_query__type_name__descriptor, + offsetof(PgQuery__ViewStmt, n_options), + offsetof(PgQuery__ViewStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "mode", - 3, + "with_check_option", + 6, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__FunctionParameter, mode), - &pg_query__function_parameter_mode__descriptor, + offsetof(PgQuery__ViewStmt, with_check_option), + &pg_query__view_check_option__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__view_stmt__field_indices_by_name[] = { + 1, /* field[1] = aliases */ + 4, /* field[4] = options */ + 2, /* field[2] = query */ + 3, /* field[3] = replace */ + 0, /* field[0] = view */ + 5, /* field[5] = with_check_option */ +}; +static const ProtobufCIntRange pg_query__view_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 6 } +}; +const ProtobufCMessageDescriptor pg_query__view_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.ViewStmt", + "ViewStmt", + "PgQuery__ViewStmt", + "pg_query", + sizeof(PgQuery__ViewStmt), + 6, + pg_query__view_stmt__field_descriptors, + pg_query__view_stmt__field_indices_by_name, + 1, pg_query__view_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__view_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__load_stmt__field_descriptors[1] = +{ { - "defexpr", - 4, + "filename", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__FunctionParameter, defexpr), - &pg_query__node__descriptor, + offsetof(PgQuery__LoadStmt, filename), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__function_parameter__field_indices_by_name[] = { - 1, /* field[1] = arg_type */ - 3, /* field[3] = defexpr */ - 2, /* field[2] = mode */ - 0, /* field[0] = name */ +static const unsigned pg_query__load_stmt__field_indices_by_name[] = { + 0, /* field[0] = filename */ }; -static const ProtobufCIntRange pg_query__function_parameter__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__load_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 1 } }; -const ProtobufCMessageDescriptor pg_query__function_parameter__descriptor = +const ProtobufCMessageDescriptor pg_query__load_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.FunctionParameter", - "FunctionParameter", - "PgQuery__FunctionParameter", + "pg_query.LoadStmt", + "LoadStmt", + "PgQuery__LoadStmt", "pg_query", - sizeof(PgQuery__FunctionParameter), - 4, - pg_query__function_parameter__field_descriptors, - pg_query__function_parameter__field_indices_by_name, - 1, pg_query__function_parameter__number_ranges, - (ProtobufCMessageInit) pg_query__function_parameter__init, + sizeof(PgQuery__LoadStmt), + 1, + pg_query__load_stmt__field_descriptors, + pg_query__load_stmt__field_indices_by_name, + 1, pg_query__load_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__load_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__locking_clause__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__createdb_stmt__field_descriptors[2] = { { - "locked_rels", + "dbname", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__LockingClause, n_locked_rels), - offsetof(PgQuery__LockingClause, locked_rels), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "strength", - 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__LockingClause, strength), - &pg_query__lock_clause_strength__descriptor, + offsetof(PgQuery__CreatedbStmt, dbname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "wait_policy", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__LockingClause, wait_policy), - &pg_query__lock_wait_policy__descriptor, + "options", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreatedbStmt, n_options), + offsetof(PgQuery__CreatedbStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__locking_clause__field_indices_by_name[] = { - 0, /* field[0] = locked_rels */ - 1, /* field[1] = strength */ - 2, /* field[2] = wait_policy */ +static const unsigned pg_query__createdb_stmt__field_indices_by_name[] = { + 0, /* field[0] = dbname */ + 1, /* field[1] = options */ }; -static const ProtobufCIntRange pg_query__locking_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__createdb_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__locking_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__createdb_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.LockingClause", - "LockingClause", - "PgQuery__LockingClause", + "pg_query.CreatedbStmt", + "CreatedbStmt", + "PgQuery__CreatedbStmt", "pg_query", - sizeof(PgQuery__LockingClause), - 3, - pg_query__locking_clause__field_descriptors, - pg_query__locking_clause__field_indices_by_name, - 1, pg_query__locking_clause__number_ranges, - (ProtobufCMessageInit) pg_query__locking_clause__init, + sizeof(PgQuery__CreatedbStmt), + 2, + pg_query__createdb_stmt__field_descriptors, + pg_query__createdb_stmt__field_indices_by_name, + 1, pg_query__createdb_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__createdb_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__row_mark_clause__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__alter_database_stmt__field_descriptors[2] = { { - "rti", + "dbname", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RowMarkClause, rti), - NULL, + offsetof(PgQuery__AlterDatabaseStmt, dbname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "strength", + "options", 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__RowMarkClause, strength), - &pg_query__lock_clause_strength__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "wait_policy", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__RowMarkClause, wait_policy), - &pg_query__lock_wait_policy__descriptor, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterDatabaseStmt, n_options), + offsetof(PgQuery__AlterDatabaseStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__alter_database_stmt__field_indices_by_name[] = { + 0, /* field[0] = dbname */ + 1, /* field[1] = options */ +}; +static const ProtobufCIntRange pg_query__alter_database_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__alter_database_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlterDatabaseStmt", + "AlterDatabaseStmt", + "PgQuery__AlterDatabaseStmt", + "pg_query", + sizeof(PgQuery__AlterDatabaseStmt), + 2, + pg_query__alter_database_stmt__field_descriptors, + pg_query__alter_database_stmt__field_indices_by_name, + 1, pg_query__alter_database_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_database_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__alter_database_refresh_coll_stmt__field_descriptors[1] = +{ { - "pushed_down", - 4, + "dbname", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__RowMarkClause, pushed_down), - NULL, + offsetof(PgQuery__AlterDatabaseRefreshCollStmt, dbname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__row_mark_clause__field_indices_by_name[] = { - 3, /* field[3] = pushed_down */ - 0, /* field[0] = rti */ - 1, /* field[1] = strength */ - 2, /* field[2] = wait_policy */ +static const unsigned pg_query__alter_database_refresh_coll_stmt__field_indices_by_name[] = { + 0, /* field[0] = dbname */ }; -static const ProtobufCIntRange pg_query__row_mark_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_database_refresh_coll_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 1 } }; -const ProtobufCMessageDescriptor pg_query__row_mark_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_database_refresh_coll_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RowMarkClause", - "RowMarkClause", - "PgQuery__RowMarkClause", + "pg_query.AlterDatabaseRefreshCollStmt", + "AlterDatabaseRefreshCollStmt", + "PgQuery__AlterDatabaseRefreshCollStmt", "pg_query", - sizeof(PgQuery__RowMarkClause), - 4, - pg_query__row_mark_clause__field_descriptors, - pg_query__row_mark_clause__field_indices_by_name, - 1, pg_query__row_mark_clause__number_ranges, - (ProtobufCMessageInit) pg_query__row_mark_clause__init, + sizeof(PgQuery__AlterDatabaseRefreshCollStmt), + 1, + pg_query__alter_database_refresh_coll_stmt__field_descriptors, + pg_query__alter_database_refresh_coll_stmt__field_indices_by_name, + 1, pg_query__alter_database_refresh_coll_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_database_refresh_coll_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__xml_serialize__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__alter_database_set_stmt__field_descriptors[2] = { { - "xmloption", + "dbname", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__XmlSerialize, xmloption), - &pg_query__xml_option_type__descriptor, + offsetof(PgQuery__AlterDatabaseSetStmt, dbname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "expr", + "setstmt", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__XmlSerialize, expr), - &pg_query__node__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "type_name", - 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__XmlSerialize, type_name), - &pg_query__type_name__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "location", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__XmlSerialize, location), - NULL, + offsetof(PgQuery__AlterDatabaseSetStmt, setstmt), + &pg_query__variable_set_stmt__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__xml_serialize__field_indices_by_name[] = { - 1, /* field[1] = expr */ - 3, /* field[3] = location */ - 2, /* field[2] = type_name */ - 0, /* field[0] = xmloption */ +static const unsigned pg_query__alter_database_set_stmt__field_indices_by_name[] = { + 0, /* field[0] = dbname */ + 1, /* field[1] = setstmt */ }; -static const ProtobufCIntRange pg_query__xml_serialize__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_database_set_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__xml_serialize__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_database_set_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.XmlSerialize", - "XmlSerialize", - "PgQuery__XmlSerialize", - "pg_query", - sizeof(PgQuery__XmlSerialize), - 4, - pg_query__xml_serialize__field_descriptors, - pg_query__xml_serialize__field_indices_by_name, - 1, pg_query__xml_serialize__number_ranges, - (ProtobufCMessageInit) pg_query__xml_serialize__init, + "pg_query.AlterDatabaseSetStmt", + "AlterDatabaseSetStmt", + "PgQuery__AlterDatabaseSetStmt", + "pg_query", + sizeof(PgQuery__AlterDatabaseSetStmt), + 2, + pg_query__alter_database_set_stmt__field_descriptors, + pg_query__alter_database_set_stmt__field_indices_by_name, + 1, pg_query__alter_database_set_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_database_set_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__with_clause__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__dropdb_stmt__field_descriptors[3] = { { - "ctes", + "dbname", 1, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__WithClause, n_ctes), - offsetof(PgQuery__WithClause, ctes), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__DropdbStmt, dbname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "recursive", + "missing_ok", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__WithClause, recursive), + offsetof(PgQuery__DropdbStmt, missing_ok), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "options", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__WithClause, location), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__DropdbStmt, n_options), + offsetof(PgQuery__DropdbStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__with_clause__field_indices_by_name[] = { - 0, /* field[0] = ctes */ - 2, /* field[2] = location */ - 1, /* field[1] = recursive */ +static const unsigned pg_query__dropdb_stmt__field_indices_by_name[] = { + 0, /* field[0] = dbname */ + 1, /* field[1] = missing_ok */ + 2, /* field[2] = options */ }; -static const ProtobufCIntRange pg_query__with_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__dropdb_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__with_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__dropdb_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.WithClause", - "WithClause", - "PgQuery__WithClause", + "pg_query.DropdbStmt", + "DropdbStmt", + "PgQuery__DropdbStmt", "pg_query", - sizeof(PgQuery__WithClause), + sizeof(PgQuery__DropdbStmt), 3, - pg_query__with_clause__field_descriptors, - pg_query__with_clause__field_indices_by_name, - 1, pg_query__with_clause__number_ranges, - (ProtobufCMessageInit) pg_query__with_clause__init, + pg_query__dropdb_stmt__field_descriptors, + pg_query__dropdb_stmt__field_indices_by_name, + 1, pg_query__dropdb_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__dropdb_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__infer_clause__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__alter_system_stmt__field_descriptors[1] = { { - "index_elems", + "setstmt", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__InferClause, n_index_elems), - offsetof(PgQuery__InferClause, index_elems), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterSystemStmt, setstmt), + &pg_query__variable_set_stmt__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__alter_system_stmt__field_indices_by_name[] = { + 0, /* field[0] = setstmt */ +}; +static const ProtobufCIntRange pg_query__alter_system_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__alter_system_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlterSystemStmt", + "AlterSystemStmt", + "PgQuery__AlterSystemStmt", + "pg_query", + sizeof(PgQuery__AlterSystemStmt), + 1, + pg_query__alter_system_stmt__field_descriptors, + pg_query__alter_system_stmt__field_indices_by_name, + 1, pg_query__alter_system_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_system_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__cluster_stmt__field_descriptors[3] = +{ { - "where_clause", - 2, + "relation", + 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__InferClause, where_clause), - &pg_query__node__descriptor, + offsetof(PgQuery__ClusterStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "conname", - 3, + "indexname", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__InferClause, conname), + offsetof(PgQuery__ClusterStmt, indexname), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__InferClause, location), - NULL, + "params", + 3, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ClusterStmt, n_params), + offsetof(PgQuery__ClusterStmt, params), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__infer_clause__field_indices_by_name[] = { - 2, /* field[2] = conname */ - 0, /* field[0] = index_elems */ - 3, /* field[3] = location */ - 1, /* field[1] = where_clause */ +static const unsigned pg_query__cluster_stmt__field_indices_by_name[] = { + 1, /* field[1] = indexname */ + 2, /* field[2] = params */ + 0, /* field[0] = relation */ }; -static const ProtobufCIntRange pg_query__infer_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__cluster_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__infer_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__cluster_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.InferClause", - "InferClause", - "PgQuery__InferClause", + "pg_query.ClusterStmt", + "ClusterStmt", + "PgQuery__ClusterStmt", "pg_query", - sizeof(PgQuery__InferClause), - 4, - pg_query__infer_clause__field_descriptors, - pg_query__infer_clause__field_indices_by_name, - 1, pg_query__infer_clause__number_ranges, - (ProtobufCMessageInit) pg_query__infer_clause__init, + sizeof(PgQuery__ClusterStmt), + 3, + pg_query__cluster_stmt__field_descriptors, + pg_query__cluster_stmt__field_indices_by_name, + 1, pg_query__cluster_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__cluster_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__on_conflict_clause__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__vacuum_stmt__field_descriptors[3] = { { - "action", + "options", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, - 0, /* quantifier_offset */ - offsetof(PgQuery__OnConflictClause, action), - &pg_query__on_conflict_action__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "infer", - 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__OnConflictClause, infer), - &pg_query__infer_clause__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "target_list", - 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__OnConflictClause, n_target_list), - offsetof(PgQuery__OnConflictClause, target_list), + offsetof(PgQuery__VacuumStmt, n_options), + offsetof(PgQuery__VacuumStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "where_clause", - 4, - PROTOBUF_C_LABEL_NONE, + "rels", + 2, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__OnConflictClause, where_clause), + offsetof(PgQuery__VacuumStmt, n_rels), + offsetof(PgQuery__VacuumStmt, rels), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 5, + "is_vacuumcmd", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__OnConflictClause, location), + offsetof(PgQuery__VacuumStmt, is_vacuumcmd), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__on_conflict_clause__field_indices_by_name[] = { - 0, /* field[0] = action */ - 1, /* field[1] = infer */ - 4, /* field[4] = location */ - 2, /* field[2] = target_list */ - 3, /* field[3] = where_clause */ +static const unsigned pg_query__vacuum_stmt__field_indices_by_name[] = { + 2, /* field[2] = is_vacuumcmd */ + 0, /* field[0] = options */ + 1, /* field[1] = rels */ }; -static const ProtobufCIntRange pg_query__on_conflict_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__vacuum_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__on_conflict_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__vacuum_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.OnConflictClause", - "OnConflictClause", - "PgQuery__OnConflictClause", + "pg_query.VacuumStmt", + "VacuumStmt", + "PgQuery__VacuumStmt", "pg_query", - sizeof(PgQuery__OnConflictClause), - 5, - pg_query__on_conflict_clause__field_descriptors, - pg_query__on_conflict_clause__field_indices_by_name, - 1, pg_query__on_conflict_clause__number_ranges, - (ProtobufCMessageInit) pg_query__on_conflict_clause__init, + sizeof(PgQuery__VacuumStmt), + 3, + pg_query__vacuum_stmt__field_descriptors, + pg_query__vacuum_stmt__field_indices_by_name, + 1, pg_query__vacuum_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__vacuum_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__ctesearch_clause__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__vacuum_relation__field_descriptors[3] = { { - "search_col_list", + "relation", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CTESearchClause, n_search_col_list), - offsetof(PgQuery__CTESearchClause, search_col_list), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__VacuumRelation, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "search_breadth_first", + "oid", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_UINT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CTESearchClause, search_breadth_first), + offsetof(PgQuery__VacuumRelation, oid), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "search_seq_column", + "va_cols", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CTESearchClause, search_seq_column), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__VacuumRelation, n_va_cols), + offsetof(PgQuery__VacuumRelation, va_cols), + &pg_query__node__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__vacuum_relation__field_indices_by_name[] = { + 1, /* field[1] = oid */ + 0, /* field[0] = relation */ + 2, /* field[2] = va_cols */ +}; +static const ProtobufCIntRange pg_query__vacuum_relation__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__vacuum_relation__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.VacuumRelation", + "VacuumRelation", + "PgQuery__VacuumRelation", + "pg_query", + sizeof(PgQuery__VacuumRelation), + 3, + pg_query__vacuum_relation__field_descriptors, + pg_query__vacuum_relation__field_indices_by_name, + 1, pg_query__vacuum_relation__number_ranges, + (ProtobufCMessageInit) pg_query__vacuum_relation__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__explain_stmt__field_descriptors[2] = +{ { - "location", - 4, + "query", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CTESearchClause, location), + offsetof(PgQuery__ExplainStmt, query), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "options", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ExplainStmt, n_options), + offsetof(PgQuery__ExplainStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__ctesearch_clause__field_indices_by_name[] = { - 3, /* field[3] = location */ - 1, /* field[1] = search_breadth_first */ - 0, /* field[0] = search_col_list */ - 2, /* field[2] = search_seq_column */ +static const unsigned pg_query__explain_stmt__field_indices_by_name[] = { + 1, /* field[1] = options */ + 0, /* field[0] = query */ }; -static const ProtobufCIntRange pg_query__ctesearch_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__explain_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 4 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__ctesearch_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__explain_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CTESearchClause", - "CTESearchClause", - "PgQuery__CTESearchClause", + "pg_query.ExplainStmt", + "ExplainStmt", + "PgQuery__ExplainStmt", "pg_query", - sizeof(PgQuery__CTESearchClause), - 4, - pg_query__ctesearch_clause__field_descriptors, - pg_query__ctesearch_clause__field_indices_by_name, - 1, pg_query__ctesearch_clause__number_ranges, - (ProtobufCMessageInit) pg_query__ctesearch_clause__init, + sizeof(PgQuery__ExplainStmt), + 2, + pg_query__explain_stmt__field_descriptors, + pg_query__explain_stmt__field_indices_by_name, + 1, pg_query__explain_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__explain_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__ctecycle_clause__field_descriptors[10] = +static const ProtobufCFieldDescriptor pg_query__create_table_as_stmt__field_descriptors[5] = { { - "cycle_col_list", + "query", 1, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CTECycleClause, n_cycle_col_list), - offsetof(PgQuery__CTECycleClause, cycle_col_list), + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateTableAsStmt, query), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cycle_mark_column", + "into", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CTECycleClause, cycle_mark_column), + offsetof(PgQuery__CreateTableAsStmt, into), + &pg_query__into_clause__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cycle_mark_value", + "objtype", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CTECycleClause, cycle_mark_value), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateTableAsStmt, objtype), + &pg_query__object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cycle_mark_default", + "is_select_into", 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CTECycleClause, cycle_mark_default), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateTableAsStmt, is_select_into), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "cycle_path_column", - 5, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CTECycleClause, cycle_path_column), NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 6, + "if_not_exists", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CTECycleClause, location), + offsetof(PgQuery__CreateTableAsStmt, if_not_exists), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__create_table_as_stmt__field_indices_by_name[] = { + 4, /* field[4] = if_not_exists */ + 1, /* field[1] = into */ + 3, /* field[3] = is_select_into */ + 2, /* field[2] = objtype */ + 0, /* field[0] = query */ +}; +static const ProtobufCIntRange pg_query__create_table_as_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor pg_query__create_table_as_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.CreateTableAsStmt", + "CreateTableAsStmt", + "PgQuery__CreateTableAsStmt", + "pg_query", + sizeof(PgQuery__CreateTableAsStmt), + 5, + pg_query__create_table_as_stmt__field_descriptors, + pg_query__create_table_as_stmt__field_indices_by_name, + 1, pg_query__create_table_as_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_table_as_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__refresh_mat_view_stmt__field_descriptors[3] = +{ { - "cycle_mark_type", - 7, + "concurrent", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CTECycleClause, cycle_mark_type), + offsetof(PgQuery__RefreshMatViewStmt, concurrent), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cycle_mark_typmod", - 8, + "skip_data", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CTECycleClause, cycle_mark_typmod), + offsetof(PgQuery__RefreshMatViewStmt, skip_data), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cycle_mark_collation", - 9, + "relation", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__CTECycleClause, cycle_mark_collation), - NULL, + offsetof(PgQuery__RefreshMatViewStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__refresh_mat_view_stmt__field_indices_by_name[] = { + 0, /* field[0] = concurrent */ + 2, /* field[2] = relation */ + 1, /* field[1] = skip_data */ +}; +static const ProtobufCIntRange pg_query__refresh_mat_view_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__refresh_mat_view_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.RefreshMatViewStmt", + "RefreshMatViewStmt", + "PgQuery__RefreshMatViewStmt", + "pg_query", + sizeof(PgQuery__RefreshMatViewStmt), + 3, + pg_query__refresh_mat_view_stmt__field_descriptors, + pg_query__refresh_mat_view_stmt__field_indices_by_name, + 1, pg_query__refresh_mat_view_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__refresh_mat_view_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define pg_query__check_point_stmt__field_descriptors NULL +#define pg_query__check_point_stmt__field_indices_by_name NULL +#define pg_query__check_point_stmt__number_ranges NULL +const ProtobufCMessageDescriptor pg_query__check_point_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.CheckPointStmt", + "CheckPointStmt", + "PgQuery__CheckPointStmt", + "pg_query", + sizeof(PgQuery__CheckPointStmt), + 0, + pg_query__check_point_stmt__field_descriptors, + pg_query__check_point_stmt__field_indices_by_name, + 0, pg_query__check_point_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__check_point_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__discard_stmt__field_descriptors[1] = +{ { - "cycle_mark_neop", - 10, + "target", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CTECycleClause, cycle_mark_neop), - NULL, + offsetof(PgQuery__DiscardStmt, target), + &pg_query__discard_mode__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__ctecycle_clause__field_indices_by_name[] = { - 0, /* field[0] = cycle_col_list */ - 8, /* field[8] = cycle_mark_collation */ - 1, /* field[1] = cycle_mark_column */ - 3, /* field[3] = cycle_mark_default */ - 9, /* field[9] = cycle_mark_neop */ - 6, /* field[6] = cycle_mark_type */ - 7, /* field[7] = cycle_mark_typmod */ - 2, /* field[2] = cycle_mark_value */ - 4, /* field[4] = cycle_path_column */ - 5, /* field[5] = location */ +static const unsigned pg_query__discard_stmt__field_indices_by_name[] = { + 0, /* field[0] = target */ }; -static const ProtobufCIntRange pg_query__ctecycle_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__discard_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 10 } + { 0, 1 } }; -const ProtobufCMessageDescriptor pg_query__ctecycle_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__discard_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CTECycleClause", - "CTECycleClause", - "PgQuery__CTECycleClause", + "pg_query.DiscardStmt", + "DiscardStmt", + "PgQuery__DiscardStmt", "pg_query", - sizeof(PgQuery__CTECycleClause), - 10, - pg_query__ctecycle_clause__field_descriptors, - pg_query__ctecycle_clause__field_indices_by_name, - 1, pg_query__ctecycle_clause__number_ranges, - (ProtobufCMessageInit) pg_query__ctecycle_clause__init, + sizeof(PgQuery__DiscardStmt), + 1, + pg_query__discard_stmt__field_descriptors, + pg_query__discard_stmt__field_indices_by_name, + 1, pg_query__discard_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__discard_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__common_table_expr__field_descriptors[13] = +static const ProtobufCFieldDescriptor pg_query__lock_stmt__field_descriptors[3] = { { - "ctename", + "relations", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, - 0, /* quantifier_offset */ - offsetof(PgQuery__CommonTableExpr, ctename), - NULL, - &protobuf_c_empty_string, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "aliascolnames", - 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CommonTableExpr, n_aliascolnames), - offsetof(PgQuery__CommonTableExpr, aliascolnames), + offsetof(PgQuery__LockStmt, n_relations), + offsetof(PgQuery__LockStmt, relations), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ctematerialized", - 3, + "mode", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_INT32, 0, /* quantifier_offset */ - offsetof(PgQuery__CommonTableExpr, ctematerialized), - &pg_query__ctematerialize__descriptor, + offsetof(PgQuery__LockStmt, mode), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "ctequery", - 4, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CommonTableExpr, ctequery), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "search_clause", - 5, + "nowait", + 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CommonTableExpr, search_clause), - &pg_query__ctesearch_clause__descriptor, + offsetof(PgQuery__LockStmt, nowait), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "cycle_clause", - 6, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__CommonTableExpr, cycle_clause), - &pg_query__ctecycle_clause__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__lock_stmt__field_indices_by_name[] = { + 1, /* field[1] = mode */ + 2, /* field[2] = nowait */ + 0, /* field[0] = relations */ +}; +static const ProtobufCIntRange pg_query__lock_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor pg_query__lock_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.LockStmt", + "LockStmt", + "PgQuery__LockStmt", + "pg_query", + sizeof(PgQuery__LockStmt), + 3, + pg_query__lock_stmt__field_descriptors, + pg_query__lock_stmt__field_indices_by_name, + 1, pg_query__lock_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__lock_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__constraints_set_stmt__field_descriptors[2] = +{ { - "location", - 7, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__CommonTableExpr, location), - NULL, + "constraints", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ConstraintsSetStmt, n_constraints), + offsetof(PgQuery__ConstraintsSetStmt, constraints), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "cterecursive", - 8, + "deferred", + 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CommonTableExpr, cterecursive), + offsetof(PgQuery__ConstraintsSetStmt, deferred), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__constraints_set_stmt__field_indices_by_name[] = { + 0, /* field[0] = constraints */ + 1, /* field[1] = deferred */ +}; +static const ProtobufCIntRange pg_query__constraints_set_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__constraints_set_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.ConstraintsSetStmt", + "ConstraintsSetStmt", + "PgQuery__ConstraintsSetStmt", + "pg_query", + sizeof(PgQuery__ConstraintsSetStmt), + 2, + pg_query__constraints_set_stmt__field_descriptors, + pg_query__constraints_set_stmt__field_indices_by_name, + 1, pg_query__constraints_set_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__constraints_set_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__reindex_stmt__field_descriptors[4] = +{ { - "cterefcount", - 9, + "kind", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__CommonTableExpr, cterefcount), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "ctecolnames", - 10, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CommonTableExpr, n_ctecolnames), - offsetof(PgQuery__CommonTableExpr, ctecolnames), - &pg_query__node__descriptor, + offsetof(PgQuery__ReindexStmt, kind), + &pg_query__reindex_object_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ctecoltypes", - 11, - PROTOBUF_C_LABEL_REPEATED, + "relation", + 2, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CommonTableExpr, n_ctecoltypes), - offsetof(PgQuery__CommonTableExpr, ctecoltypes), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__ReindexStmt, relation), + &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ctecoltypmods", - 12, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CommonTableExpr, n_ctecoltypmods), - offsetof(PgQuery__CommonTableExpr, ctecoltypmods), - &pg_query__node__descriptor, + "name", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__ReindexStmt, name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "ctecolcollations", - 13, + "params", + 4, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__CommonTableExpr, n_ctecolcollations), - offsetof(PgQuery__CommonTableExpr, ctecolcollations), + offsetof(PgQuery__ReindexStmt, n_params), + offsetof(PgQuery__ReindexStmt, params), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__common_table_expr__field_indices_by_name[] = { - 1, /* field[1] = aliascolnames */ - 12, /* field[12] = ctecolcollations */ - 9, /* field[9] = ctecolnames */ - 10, /* field[10] = ctecoltypes */ - 11, /* field[11] = ctecoltypmods */ - 2, /* field[2] = ctematerialized */ - 0, /* field[0] = ctename */ - 3, /* field[3] = ctequery */ - 7, /* field[7] = cterecursive */ - 8, /* field[8] = cterefcount */ - 5, /* field[5] = cycle_clause */ - 6, /* field[6] = location */ - 4, /* field[4] = search_clause */ +static const unsigned pg_query__reindex_stmt__field_indices_by_name[] = { + 0, /* field[0] = kind */ + 2, /* field[2] = name */ + 3, /* field[3] = params */ + 1, /* field[1] = relation */ }; -static const ProtobufCIntRange pg_query__common_table_expr__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__reindex_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 13 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__common_table_expr__descriptor = +const ProtobufCMessageDescriptor pg_query__reindex_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CommonTableExpr", - "CommonTableExpr", - "PgQuery__CommonTableExpr", + "pg_query.ReindexStmt", + "ReindexStmt", + "PgQuery__ReindexStmt", "pg_query", - sizeof(PgQuery__CommonTableExpr), - 13, - pg_query__common_table_expr__field_descriptors, - pg_query__common_table_expr__field_indices_by_name, - 1, pg_query__common_table_expr__number_ranges, - (ProtobufCMessageInit) pg_query__common_table_expr__init, + sizeof(PgQuery__ReindexStmt), + 4, + pg_query__reindex_stmt__field_descriptors, + pg_query__reindex_stmt__field_indices_by_name, + 1, pg_query__reindex_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__reindex_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__merge_when_clause__field_descriptors[6] = +static const ProtobufCFieldDescriptor pg_query__create_conversion_stmt__field_descriptors[5] = { { - "matched", + "conversion_name", 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__MergeWhenClause, matched), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateConversionStmt, n_conversion_name), + offsetof(PgQuery__CreateConversionStmt, conversion_name), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "command_type", + "for_encoding_name", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__MergeWhenClause, command_type), - &pg_query__cmd_type__descriptor, + offsetof(PgQuery__CreateConversionStmt, for_encoding_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "override", + "to_encoding_name", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__MergeWhenClause, override), - &pg_query__overriding_kind__descriptor, + offsetof(PgQuery__CreateConversionStmt, to_encoding_name), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "condition", + "func_name", 4, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__MergeWhenClause, condition), + offsetof(PgQuery__CreateConversionStmt, n_func_name), + offsetof(PgQuery__CreateConversionStmt, func_name), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "target_list", + "def", 5, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__MergeWhenClause, n_target_list), - offsetof(PgQuery__MergeWhenClause, target_list), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateConversionStmt, def), NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "values", - 6, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__MergeWhenClause, n_values), - offsetof(PgQuery__MergeWhenClause, values), - &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__merge_when_clause__field_indices_by_name[] = { - 1, /* field[1] = command_type */ - 3, /* field[3] = condition */ - 0, /* field[0] = matched */ - 2, /* field[2] = override */ - 4, /* field[4] = target_list */ - 5, /* field[5] = values */ +static const unsigned pg_query__create_conversion_stmt__field_indices_by_name[] = { + 0, /* field[0] = conversion_name */ + 4, /* field[4] = def */ + 1, /* field[1] = for_encoding_name */ + 3, /* field[3] = func_name */ + 2, /* field[2] = to_encoding_name */ }; -static const ProtobufCIntRange pg_query__merge_when_clause__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_conversion_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 6 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__merge_when_clause__descriptor = +const ProtobufCMessageDescriptor pg_query__create_conversion_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.MergeWhenClause", - "MergeWhenClause", - "PgQuery__MergeWhenClause", + "pg_query.CreateConversionStmt", + "CreateConversionStmt", + "PgQuery__CreateConversionStmt", "pg_query", - sizeof(PgQuery__MergeWhenClause), - 6, - pg_query__merge_when_clause__field_descriptors, - pg_query__merge_when_clause__field_indices_by_name, - 1, pg_query__merge_when_clause__number_ranges, - (ProtobufCMessageInit) pg_query__merge_when_clause__init, + sizeof(PgQuery__CreateConversionStmt), + 5, + pg_query__create_conversion_stmt__field_descriptors, + pg_query__create_conversion_stmt__field_indices_by_name, + 1, pg_query__create_conversion_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_conversion_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__role_spec__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__create_cast_stmt__field_descriptors[5] = { { - "roletype", + "sourcetype", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_ENUM, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RoleSpec, roletype), - &pg_query__role_spec_type__descriptor, + offsetof(PgQuery__CreateCastStmt, sourcetype), + &pg_query__type_name__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "rolename", + "targettype", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__RoleSpec, rolename), + offsetof(PgQuery__CreateCastStmt, targettype), + &pg_query__type_name__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "func", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__RoleSpec, location), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned pg_query__role_spec__field_indices_by_name[] = { - 2, /* field[2] = location */ - 1, /* field[1] = rolename */ - 0, /* field[0] = roletype */ -}; -static const ProtobufCIntRange pg_query__role_spec__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__role_spec__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.RoleSpec", - "RoleSpec", - "PgQuery__RoleSpec", - "pg_query", - sizeof(PgQuery__RoleSpec), - 3, - pg_query__role_spec__field_descriptors, - pg_query__role_spec__field_indices_by_name, - 1, pg_query__role_spec__number_ranges, - (ProtobufCMessageInit) pg_query__role_spec__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__trigger_transition__field_descriptors[3] = -{ - { - "name", - 1, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__TriggerTransition, name), + offsetof(PgQuery__CreateCastStmt, func), + &pg_query__object_with_args__descriptor, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_new", - 2, + "context", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__TriggerTransition, is_new), - NULL, + offsetof(PgQuery__CreateCastStmt, context), + &pg_query__coercion_context__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_table", - 3, + "inout", + 5, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__TriggerTransition, is_table), + offsetof(PgQuery__CreateCastStmt, inout), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__trigger_transition__field_indices_by_name[] = { - 1, /* field[1] = is_new */ - 2, /* field[2] = is_table */ - 0, /* field[0] = name */ +static const unsigned pg_query__create_cast_stmt__field_indices_by_name[] = { + 3, /* field[3] = context */ + 2, /* field[2] = func */ + 4, /* field[4] = inout */ + 0, /* field[0] = sourcetype */ + 1, /* field[1] = targettype */ }; -static const ProtobufCIntRange pg_query__trigger_transition__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_cast_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__trigger_transition__descriptor = +const ProtobufCMessageDescriptor pg_query__create_cast_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.TriggerTransition", - "TriggerTransition", - "PgQuery__TriggerTransition", + "pg_query.CreateCastStmt", + "CreateCastStmt", + "PgQuery__CreateCastStmt", "pg_query", - sizeof(PgQuery__TriggerTransition), - 3, - pg_query__trigger_transition__field_descriptors, - pg_query__trigger_transition__field_indices_by_name, - 1, pg_query__trigger_transition__number_ranges, - (ProtobufCMessageInit) pg_query__trigger_transition__init, + sizeof(PgQuery__CreateCastStmt), + 5, + pg_query__create_cast_stmt__field_descriptors, + pg_query__create_cast_stmt__field_indices_by_name, + 1, pg_query__create_cast_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_cast_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__partition_elem__field_descriptors[5] = +static const ProtobufCFieldDescriptor pg_query__create_transform_stmt__field_descriptors[5] = { { - "name", + "replace", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_STRING, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionElem, name), + offsetof(PgQuery__CreateTransformStmt, replace), + NULL, NULL, - &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "expr", + "type_name", 2, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionElem, expr), - &pg_query__node__descriptor, + offsetof(PgQuery__CreateTransformStmt, type_name), + &pg_query__type_name__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "collation", + "lang", 3, - PROTOBUF_C_LABEL_REPEATED, - PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__PartitionElem, n_collation), - offsetof(PgQuery__PartitionElem, collation), - &pg_query__node__descriptor, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateTransformStmt, lang), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "opclass", + "fromsql", 4, - PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__PartitionElem, n_opclass), - offsetof(PgQuery__PartitionElem, opclass), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateTransformStmt, fromsql), + &pg_query__object_with_args__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "tosql", 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionElem, location), - NULL, + offsetof(PgQuery__CreateTransformStmt, tosql), + &pg_query__object_with_args__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__partition_elem__field_indices_by_name[] = { - 2, /* field[2] = collation */ - 1, /* field[1] = expr */ - 4, /* field[4] = location */ - 0, /* field[0] = name */ - 3, /* field[3] = opclass */ +static const unsigned pg_query__create_transform_stmt__field_indices_by_name[] = { + 3, /* field[3] = fromsql */ + 2, /* field[2] = lang */ + 0, /* field[0] = replace */ + 4, /* field[4] = tosql */ + 1, /* field[1] = type_name */ }; -static const ProtobufCIntRange pg_query__partition_elem__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_transform_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 5 } }; -const ProtobufCMessageDescriptor pg_query__partition_elem__descriptor = +const ProtobufCMessageDescriptor pg_query__create_transform_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.PartitionElem", - "PartitionElem", - "PgQuery__PartitionElem", + "pg_query.CreateTransformStmt", + "CreateTransformStmt", + "PgQuery__CreateTransformStmt", "pg_query", - sizeof(PgQuery__PartitionElem), + sizeof(PgQuery__CreateTransformStmt), 5, - pg_query__partition_elem__field_descriptors, - pg_query__partition_elem__field_indices_by_name, - 1, pg_query__partition_elem__number_ranges, - (ProtobufCMessageInit) pg_query__partition_elem__init, + pg_query__create_transform_stmt__field_descriptors, + pg_query__create_transform_stmt__field_indices_by_name, + 1, pg_query__create_transform_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_transform_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__partition_spec__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__prepare_stmt__field_descriptors[3] = { { - "strategy", + "name", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionSpec, strategy), + offsetof(PgQuery__PrepareStmt, name), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "part_params", + "argtypes", 2, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__PartitionSpec, n_part_params), - offsetof(PgQuery__PartitionSpec, part_params), + offsetof(PgQuery__PrepareStmt, n_argtypes), + offsetof(PgQuery__PrepareStmt, argtypes), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "query", 3, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionSpec, location), - NULL, + offsetof(PgQuery__PrepareStmt, query), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__partition_spec__field_indices_by_name[] = { - 2, /* field[2] = location */ - 1, /* field[1] = part_params */ - 0, /* field[0] = strategy */ +static const unsigned pg_query__prepare_stmt__field_indices_by_name[] = { + 1, /* field[1] = argtypes */ + 0, /* field[0] = name */ + 2, /* field[2] = query */ }; -static const ProtobufCIntRange pg_query__partition_spec__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__prepare_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__partition_spec__descriptor = +const ProtobufCMessageDescriptor pg_query__prepare_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.PartitionSpec", - "PartitionSpec", - "PgQuery__PartitionSpec", + "pg_query.PrepareStmt", + "PrepareStmt", + "PgQuery__PrepareStmt", "pg_query", - sizeof(PgQuery__PartitionSpec), + sizeof(PgQuery__PrepareStmt), 3, - pg_query__partition_spec__field_descriptors, - pg_query__partition_spec__field_indices_by_name, - 1, pg_query__partition_spec__number_ranges, - (ProtobufCMessageInit) pg_query__partition_spec__init, + pg_query__prepare_stmt__field_descriptors, + pg_query__prepare_stmt__field_indices_by_name, + 1, pg_query__prepare_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__prepare_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__partition_bound_spec__field_descriptors[8] = +static const ProtobufCFieldDescriptor pg_query__execute_stmt__field_descriptors[2] = { { - "strategy", + "name", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionBoundSpec, strategy), + offsetof(PgQuery__ExecuteStmt, name), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "is_default", + "params", 2, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, - 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionBoundSpec, is_default), - NULL, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__ExecuteStmt, n_params), + offsetof(PgQuery__ExecuteStmt, params), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__execute_stmt__field_indices_by_name[] = { + 0, /* field[0] = name */ + 1, /* field[1] = params */ +}; +static const ProtobufCIntRange pg_query__execute_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__execute_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.ExecuteStmt", + "ExecuteStmt", + "PgQuery__ExecuteStmt", + "pg_query", + sizeof(PgQuery__ExecuteStmt), + 2, + pg_query__execute_stmt__field_descriptors, + pg_query__execute_stmt__field_indices_by_name, + 1, pg_query__execute_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__execute_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__deallocate_stmt__field_descriptors[1] = +{ { - "modulus", - 3, + "name", + 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionBoundSpec, modulus), + offsetof(PgQuery__DeallocateStmt, name), NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__deallocate_stmt__field_indices_by_name[] = { + 0, /* field[0] = name */ +}; +static const ProtobufCIntRange pg_query__deallocate_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor pg_query__deallocate_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.DeallocateStmt", + "DeallocateStmt", + "PgQuery__DeallocateStmt", + "pg_query", + sizeof(PgQuery__DeallocateStmt), + 1, + pg_query__deallocate_stmt__field_descriptors, + pg_query__deallocate_stmt__field_indices_by_name, + 1, pg_query__deallocate_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__deallocate_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__drop_owned_stmt__field_descriptors[2] = +{ + { + "roles", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__DropOwnedStmt, n_roles), + offsetof(PgQuery__DropOwnedStmt, roles), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "remainder", - 4, + "behavior", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionBoundSpec, remainder), - NULL, + offsetof(PgQuery__DropOwnedStmt, behavior), + &pg_query__drop_behavior__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__drop_owned_stmt__field_indices_by_name[] = { + 1, /* field[1] = behavior */ + 0, /* field[0] = roles */ +}; +static const ProtobufCIntRange pg_query__drop_owned_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__drop_owned_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.DropOwnedStmt", + "DropOwnedStmt", + "PgQuery__DropOwnedStmt", + "pg_query", + sizeof(PgQuery__DropOwnedStmt), + 2, + pg_query__drop_owned_stmt__field_descriptors, + pg_query__drop_owned_stmt__field_indices_by_name, + 1, pg_query__drop_owned_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__drop_owned_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__reassign_owned_stmt__field_descriptors[2] = +{ { - "listdatums", - 5, + "roles", + 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__PartitionBoundSpec, n_listdatums), - offsetof(PgQuery__PartitionBoundSpec, listdatums), + offsetof(PgQuery__ReassignOwnedStmt, n_roles), + offsetof(PgQuery__ReassignOwnedStmt, roles), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "lowerdatums", - 6, - PROTOBUF_C_LABEL_REPEATED, + "newrole", + 2, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__PartitionBoundSpec, n_lowerdatums), - offsetof(PgQuery__PartitionBoundSpec, lowerdatums), - &pg_query__node__descriptor, + 0, /* quantifier_offset */ + offsetof(PgQuery__ReassignOwnedStmt, newrole), + &pg_query__role_spec__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, +}; +static const unsigned pg_query__reassign_owned_stmt__field_indices_by_name[] = { + 1, /* field[1] = newrole */ + 0, /* field[0] = roles */ +}; +static const ProtobufCIntRange pg_query__reassign_owned_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor pg_query__reassign_owned_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.ReassignOwnedStmt", + "ReassignOwnedStmt", + "PgQuery__ReassignOwnedStmt", + "pg_query", + sizeof(PgQuery__ReassignOwnedStmt), + 2, + pg_query__reassign_owned_stmt__field_descriptors, + pg_query__reassign_owned_stmt__field_indices_by_name, + 1, pg_query__reassign_owned_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__reassign_owned_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__alter_tsdictionary_stmt__field_descriptors[2] = +{ { - "upperdatums", - 7, + "dictname", + 1, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__PartitionBoundSpec, n_upperdatums), - offsetof(PgQuery__PartitionBoundSpec, upperdatums), + offsetof(PgQuery__AlterTSDictionaryStmt, n_dictname), + offsetof(PgQuery__AlterTSDictionaryStmt, dictname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", - 8, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionBoundSpec, location), - NULL, + "options", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterTSDictionaryStmt, n_options), + offsetof(PgQuery__AlterTSDictionaryStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__partition_bound_spec__field_indices_by_name[] = { - 1, /* field[1] = is_default */ - 4, /* field[4] = listdatums */ - 7, /* field[7] = location */ - 5, /* field[5] = lowerdatums */ - 2, /* field[2] = modulus */ - 3, /* field[3] = remainder */ - 0, /* field[0] = strategy */ - 6, /* field[6] = upperdatums */ +static const unsigned pg_query__alter_tsdictionary_stmt__field_indices_by_name[] = { + 0, /* field[0] = dictname */ + 1, /* field[1] = options */ }; -static const ProtobufCIntRange pg_query__partition_bound_spec__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_tsdictionary_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 8 } + { 0, 2 } }; -const ProtobufCMessageDescriptor pg_query__partition_bound_spec__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_tsdictionary_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.PartitionBoundSpec", - "PartitionBoundSpec", - "PgQuery__PartitionBoundSpec", + "pg_query.AlterTSDictionaryStmt", + "AlterTSDictionaryStmt", + "PgQuery__AlterTSDictionaryStmt", "pg_query", - sizeof(PgQuery__PartitionBoundSpec), - 8, - pg_query__partition_bound_spec__field_descriptors, - pg_query__partition_bound_spec__field_indices_by_name, - 1, pg_query__partition_bound_spec__number_ranges, - (ProtobufCMessageInit) pg_query__partition_bound_spec__init, + sizeof(PgQuery__AlterTSDictionaryStmt), + 2, + pg_query__alter_tsdictionary_stmt__field_descriptors, + pg_query__alter_tsdictionary_stmt__field_indices_by_name, + 1, pg_query__alter_tsdictionary_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_tsdictionary_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__partition_range_datum__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__alter_tsconfiguration_stmt__field_descriptors[7] = { { "kind", @@ -35774,127 +37379,115 @@ static const ProtobufCFieldDescriptor pg_query__partition_range_datum__field_des PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionRangeDatum, kind), - &pg_query__partition_range_datum_kind__descriptor, + offsetof(PgQuery__AlterTSConfigurationStmt, kind), + &pg_query__alter_tsconfig_type__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "value", + "cfgname", 2, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionRangeDatum, value), + offsetof(PgQuery__AlterTSConfigurationStmt, n_cfgname), + offsetof(PgQuery__AlterTSConfigurationStmt, cfgname), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "location", + "tokentype", 3, - PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_INT32, - 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionRangeDatum, location), + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterTSConfigurationStmt, n_tokentype), + offsetof(PgQuery__AlterTSConfigurationStmt, tokentype), + &pg_query__node__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dicts", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterTSConfigurationStmt, n_dicts), + offsetof(PgQuery__AlterTSConfigurationStmt, dicts), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, -}; -static const unsigned pg_query__partition_range_datum__field_indices_by_name[] = { - 0, /* field[0] = kind */ - 2, /* field[2] = location */ - 1, /* field[1] = value */ -}; -static const ProtobufCIntRange pg_query__partition_range_datum__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 3 } -}; -const ProtobufCMessageDescriptor pg_query__partition_range_datum__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.PartitionRangeDatum", - "PartitionRangeDatum", - "PgQuery__PartitionRangeDatum", - "pg_query", - sizeof(PgQuery__PartitionRangeDatum), - 3, - pg_query__partition_range_datum__field_descriptors, - pg_query__partition_range_datum__field_indices_by_name, - 1, pg_query__partition_range_datum__number_ranges, - (ProtobufCMessageInit) pg_query__partition_range_datum__init, - NULL,NULL,NULL /* reserved[123] */ -}; -static const ProtobufCFieldDescriptor pg_query__partition_cmd__field_descriptors[3] = -{ { - "name", - 1, + "override", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionCmd, name), - &pg_query__range_var__descriptor, + offsetof(PgQuery__AlterTSConfigurationStmt, override), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "bound", - 2, + "replace", + 6, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionCmd, bound), - &pg_query__partition_bound_spec__descriptor, + offsetof(PgQuery__AlterTSConfigurationStmt, replace), + NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "concurrent", - 3, + "missing_ok", + 7, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__PartitionCmd, concurrent), + offsetof(PgQuery__AlterTSConfigurationStmt, missing_ok), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__partition_cmd__field_indices_by_name[] = { - 1, /* field[1] = bound */ - 2, /* field[2] = concurrent */ - 0, /* field[0] = name */ +static const unsigned pg_query__alter_tsconfiguration_stmt__field_indices_by_name[] = { + 1, /* field[1] = cfgname */ + 3, /* field[3] = dicts */ + 0, /* field[0] = kind */ + 6, /* field[6] = missing_ok */ + 4, /* field[4] = override */ + 5, /* field[5] = replace */ + 2, /* field[2] = tokentype */ }; -static const ProtobufCIntRange pg_query__partition_cmd__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__alter_tsconfiguration_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 7 } }; -const ProtobufCMessageDescriptor pg_query__partition_cmd__descriptor = +const ProtobufCMessageDescriptor pg_query__alter_tsconfiguration_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.PartitionCmd", - "PartitionCmd", - "PgQuery__PartitionCmd", + "pg_query.AlterTSConfigurationStmt", + "AlterTSConfigurationStmt", + "PgQuery__AlterTSConfigurationStmt", "pg_query", - sizeof(PgQuery__PartitionCmd), - 3, - pg_query__partition_cmd__field_descriptors, - pg_query__partition_cmd__field_indices_by_name, - 1, pg_query__partition_cmd__number_ranges, - (ProtobufCMessageInit) pg_query__partition_cmd__init, + sizeof(PgQuery__AlterTSConfigurationStmt), + 7, + pg_query__alter_tsconfiguration_stmt__field_descriptors, + pg_query__alter_tsconfiguration_stmt__field_indices_by_name, + 1, pg_query__alter_tsconfiguration_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_tsconfiguration_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__vacuum_relation__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__publication_table__field_descriptors[3] = { { "relation", @@ -35902,60 +37495,60 @@ static const ProtobufCFieldDescriptor pg_query__vacuum_relation__field_descripto PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__VacuumRelation, relation), + offsetof(PgQuery__PublicationTable, relation), &pg_query__range_var__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "oid", + "where_clause", 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_MESSAGE, 0, /* quantifier_offset */ - offsetof(PgQuery__VacuumRelation, oid), - NULL, + offsetof(PgQuery__PublicationTable, where_clause), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "va_cols", + "columns", 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__VacuumRelation, n_va_cols), - offsetof(PgQuery__VacuumRelation, va_cols), + offsetof(PgQuery__PublicationTable, n_columns), + offsetof(PgQuery__PublicationTable, columns), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__vacuum_relation__field_indices_by_name[] = { - 1, /* field[1] = oid */ +static const unsigned pg_query__publication_table__field_indices_by_name[] = { + 2, /* field[2] = columns */ 0, /* field[0] = relation */ - 2, /* field[2] = va_cols */ + 1, /* field[1] = where_clause */ }; -static const ProtobufCIntRange pg_query__vacuum_relation__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__publication_table__number_ranges[1 + 1] = { { 1, 0 }, { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__vacuum_relation__descriptor = +const ProtobufCMessageDescriptor pg_query__publication_table__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.VacuumRelation", - "VacuumRelation", - "PgQuery__VacuumRelation", + "pg_query.PublicationTable", + "PublicationTable", + "PgQuery__PublicationTable", "pg_query", - sizeof(PgQuery__VacuumRelation), + sizeof(PgQuery__PublicationTable), 3, - pg_query__vacuum_relation__field_descriptors, - pg_query__vacuum_relation__field_indices_by_name, - 1, pg_query__vacuum_relation__number_ranges, - (ProtobufCMessageInit) pg_query__vacuum_relation__init, + pg_query__publication_table__field_descriptors, + pg_query__publication_table__field_indices_by_name, + 1, pg_query__publication_table__number_ranges, + (ProtobufCMessageInit) pg_query__publication_table__init, NULL,NULL,NULL /* reserved[123] */ }; static const ProtobufCFieldDescriptor pg_query__publication_obj_spec__field_descriptors[4] = @@ -36035,183 +37628,402 @@ const ProtobufCMessageDescriptor pg_query__publication_obj_spec__descriptor = (ProtobufCMessageInit) pg_query__publication_obj_spec__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__publication_table__field_descriptors[3] = +static const ProtobufCFieldDescriptor pg_query__create_publication_stmt__field_descriptors[4] = { { - "relation", + "pubname", 1, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_MESSAGE, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__PublicationTable, relation), - &pg_query__range_var__descriptor, + offsetof(PgQuery__CreatePublicationStmt, pubname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "where_clause", + "options", 2, - PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(PgQuery__PublicationTable, where_clause), + offsetof(PgQuery__CreatePublicationStmt, n_options), + offsetof(PgQuery__CreatePublicationStmt, options), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "columns", + "pubobjects", 3, PROTOBUF_C_LABEL_REPEATED, PROTOBUF_C_TYPE_MESSAGE, - offsetof(PgQuery__PublicationTable, n_columns), - offsetof(PgQuery__PublicationTable, columns), + offsetof(PgQuery__CreatePublicationStmt, n_pubobjects), + offsetof(PgQuery__CreatePublicationStmt, pubobjects), &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, + { + "for_all_tables", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreatePublicationStmt, for_all_tables), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, }; -static const unsigned pg_query__publication_table__field_indices_by_name[] = { - 2, /* field[2] = columns */ - 0, /* field[0] = relation */ - 1, /* field[1] = where_clause */ +static const unsigned pg_query__create_publication_stmt__field_indices_by_name[] = { + 3, /* field[3] = for_all_tables */ + 1, /* field[1] = options */ + 0, /* field[0] = pubname */ + 2, /* field[2] = pubobjects */ }; -static const ProtobufCIntRange pg_query__publication_table__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_publication_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 3 } + { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__publication_table__descriptor = +const ProtobufCMessageDescriptor pg_query__create_publication_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.PublicationTable", - "PublicationTable", - "PgQuery__PublicationTable", + "pg_query.CreatePublicationStmt", + "CreatePublicationStmt", + "PgQuery__CreatePublicationStmt", "pg_query", - sizeof(PgQuery__PublicationTable), - 3, - pg_query__publication_table__field_descriptors, - pg_query__publication_table__field_indices_by_name, - 1, pg_query__publication_table__number_ranges, - (ProtobufCMessageInit) pg_query__publication_table__init, + sizeof(PgQuery__CreatePublicationStmt), + 4, + pg_query__create_publication_stmt__field_descriptors, + pg_query__create_publication_stmt__field_indices_by_name, + 1, pg_query__create_publication_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_publication_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__inline_code_block__field_descriptors[4] = +static const ProtobufCFieldDescriptor pg_query__alter_publication_stmt__field_descriptors[5] = { { - "source_text", + "pubname", 1, PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__InlineCodeBlock, source_text), + offsetof(PgQuery__AlterPublicationStmt, pubname), NULL, &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "lang_oid", + "options", 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterPublicationStmt, n_options), + offsetof(PgQuery__AlterPublicationStmt, options), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pubobjects", + 3, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterPublicationStmt, n_pubobjects), + offsetof(PgQuery__AlterPublicationStmt, pubobjects), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "for_all_tables", + 4, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__InlineCodeBlock, lang_oid), + offsetof(PgQuery__AlterPublicationStmt, for_all_tables), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "lang_is_trusted", - 3, + "action", + 5, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_ENUM, 0, /* quantifier_offset */ - offsetof(PgQuery__InlineCodeBlock, lang_is_trusted), + offsetof(PgQuery__AlterPublicationStmt, action), + &pg_query__alter_publication_action__descriptor, NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__alter_publication_stmt__field_indices_by_name[] = { + 4, /* field[4] = action */ + 3, /* field[3] = for_all_tables */ + 1, /* field[1] = options */ + 0, /* field[0] = pubname */ + 2, /* field[2] = pubobjects */ +}; +static const ProtobufCIntRange pg_query__alter_publication_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor pg_query__alter_publication_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlterPublicationStmt", + "AlterPublicationStmt", + "PgQuery__AlterPublicationStmt", + "pg_query", + sizeof(PgQuery__AlterPublicationStmt), + 5, + pg_query__alter_publication_stmt__field_descriptors, + pg_query__alter_publication_stmt__field_indices_by_name, + 1, pg_query__alter_publication_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_publication_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__create_subscription_stmt__field_descriptors[4] = +{ + { + "subname", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__CreateSubscriptionStmt, subname), NULL, + &protobuf_c_empty_string, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, { - "atomic", - 4, + "conninfo", + 2, PROTOBUF_C_LABEL_NONE, - PROTOBUF_C_TYPE_BOOL, + PROTOBUF_C_TYPE_STRING, 0, /* quantifier_offset */ - offsetof(PgQuery__InlineCodeBlock, atomic), + offsetof(PgQuery__CreateSubscriptionStmt, conninfo), NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "publication", + 3, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateSubscriptionStmt, n_publication), + offsetof(PgQuery__CreateSubscriptionStmt, publication), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "options", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__CreateSubscriptionStmt, n_options), + offsetof(PgQuery__CreateSubscriptionStmt, options), + &pg_query__node__descriptor, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, }; -static const unsigned pg_query__inline_code_block__field_indices_by_name[] = { - 3, /* field[3] = atomic */ - 2, /* field[2] = lang_is_trusted */ - 1, /* field[1] = lang_oid */ - 0, /* field[0] = source_text */ +static const unsigned pg_query__create_subscription_stmt__field_indices_by_name[] = { + 1, /* field[1] = conninfo */ + 3, /* field[3] = options */ + 2, /* field[2] = publication */ + 0, /* field[0] = subname */ }; -static const ProtobufCIntRange pg_query__inline_code_block__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__create_subscription_stmt__number_ranges[1 + 1] = { { 1, 0 }, { 0, 4 } }; -const ProtobufCMessageDescriptor pg_query__inline_code_block__descriptor = +const ProtobufCMessageDescriptor pg_query__create_subscription_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.InlineCodeBlock", - "InlineCodeBlock", - "PgQuery__InlineCodeBlock", + "pg_query.CreateSubscriptionStmt", + "CreateSubscriptionStmt", + "PgQuery__CreateSubscriptionStmt", "pg_query", - sizeof(PgQuery__InlineCodeBlock), + sizeof(PgQuery__CreateSubscriptionStmt), 4, - pg_query__inline_code_block__field_descriptors, - pg_query__inline_code_block__field_indices_by_name, - 1, pg_query__inline_code_block__number_ranges, - (ProtobufCMessageInit) pg_query__inline_code_block__init, + pg_query__create_subscription_stmt__field_descriptors, + pg_query__create_subscription_stmt__field_indices_by_name, + 1, pg_query__create_subscription_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__create_subscription_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; -static const ProtobufCFieldDescriptor pg_query__call_context__field_descriptors[1] = +static const ProtobufCFieldDescriptor pg_query__alter_subscription_stmt__field_descriptors[5] = { { - "atomic", + "kind", 1, PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterSubscriptionStmt, kind), + &pg_query__alter_subscription_type__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "subname", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterSubscriptionStmt, subname), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "conninfo", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__AlterSubscriptionStmt, conninfo), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "publication", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterSubscriptionStmt, n_publication), + offsetof(PgQuery__AlterSubscriptionStmt, publication), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "options", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(PgQuery__AlterSubscriptionStmt, n_options), + offsetof(PgQuery__AlterSubscriptionStmt, options), + &pg_query__node__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned pg_query__alter_subscription_stmt__field_indices_by_name[] = { + 2, /* field[2] = conninfo */ + 0, /* field[0] = kind */ + 4, /* field[4] = options */ + 3, /* field[3] = publication */ + 1, /* field[1] = subname */ +}; +static const ProtobufCIntRange pg_query__alter_subscription_stmt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor pg_query__alter_subscription_stmt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "pg_query.AlterSubscriptionStmt", + "AlterSubscriptionStmt", + "PgQuery__AlterSubscriptionStmt", + "pg_query", + sizeof(PgQuery__AlterSubscriptionStmt), + 5, + pg_query__alter_subscription_stmt__field_descriptors, + pg_query__alter_subscription_stmt__field_indices_by_name, + 1, pg_query__alter_subscription_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__alter_subscription_stmt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor pg_query__drop_subscription_stmt__field_descriptors[3] = +{ + { + "subname", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(PgQuery__DropSubscriptionStmt, subname), + NULL, + &protobuf_c_empty_string, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "missing_ok", + 2, + PROTOBUF_C_LABEL_NONE, PROTOBUF_C_TYPE_BOOL, 0, /* quantifier_offset */ - offsetof(PgQuery__CallContext, atomic), + offsetof(PgQuery__DropSubscriptionStmt, missing_ok), NULL, NULL, 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, + { + "behavior", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(PgQuery__DropSubscriptionStmt, behavior), + &pg_query__drop_behavior__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, }; -static const unsigned pg_query__call_context__field_indices_by_name[] = { - 0, /* field[0] = atomic */ +static const unsigned pg_query__drop_subscription_stmt__field_indices_by_name[] = { + 2, /* field[2] = behavior */ + 1, /* field[1] = missing_ok */ + 0, /* field[0] = subname */ }; -static const ProtobufCIntRange pg_query__call_context__number_ranges[1 + 1] = +static const ProtobufCIntRange pg_query__drop_subscription_stmt__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 1 } + { 0, 3 } }; -const ProtobufCMessageDescriptor pg_query__call_context__descriptor = +const ProtobufCMessageDescriptor pg_query__drop_subscription_stmt__descriptor = { PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "pg_query.CallContext", - "CallContext", - "PgQuery__CallContext", + "pg_query.DropSubscriptionStmt", + "DropSubscriptionStmt", + "PgQuery__DropSubscriptionStmt", "pg_query", - sizeof(PgQuery__CallContext), - 1, - pg_query__call_context__field_descriptors, - pg_query__call_context__field_indices_by_name, - 1, pg_query__call_context__number_ranges, - (ProtobufCMessageInit) pg_query__call_context__init, + sizeof(PgQuery__DropSubscriptionStmt), + 3, + pg_query__drop_subscription_stmt__field_descriptors, + pg_query__drop_subscription_stmt__field_indices_by_name, + 1, pg_query__drop_subscription_stmt__number_ranges, + (ProtobufCMessageInit) pg_query__drop_subscription_stmt__init, NULL,NULL,NULL /* reserved[123] */ }; static const ProtobufCFieldDescriptor pg_query__scan_token__field_descriptors[4] = @@ -36628,6 +38440,38 @@ const ProtobufCEnumDescriptor pg_query__def_elem_action__descriptor = pg_query__def_elem_action__value_ranges, NULL,NULL,NULL,NULL /* reserved[1234] */ }; +static const ProtobufCEnumValue pg_query__partition_strategy__enum_values_by_number[4] = +{ + { "PARTITION_STRATEGY_UNDEFINED", "PG_QUERY__PARTITION_STRATEGY__PARTITION_STRATEGY_UNDEFINED", 0 }, + { "PARTITION_STRATEGY_LIST", "PG_QUERY__PARTITION_STRATEGY__PARTITION_STRATEGY_LIST", 1 }, + { "PARTITION_STRATEGY_RANGE", "PG_QUERY__PARTITION_STRATEGY__PARTITION_STRATEGY_RANGE", 2 }, + { "PARTITION_STRATEGY_HASH", "PG_QUERY__PARTITION_STRATEGY__PARTITION_STRATEGY_HASH", 3 }, +}; +static const ProtobufCIntRange pg_query__partition_strategy__value_ranges[] = { +{0, 0},{0, 4} +}; +static const ProtobufCEnumValueIndex pg_query__partition_strategy__enum_values_by_name[4] = +{ + { "PARTITION_STRATEGY_HASH", 3 }, + { "PARTITION_STRATEGY_LIST", 1 }, + { "PARTITION_STRATEGY_RANGE", 2 }, + { "PARTITION_STRATEGY_UNDEFINED", 0 }, +}; +const ProtobufCEnumDescriptor pg_query__partition_strategy__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "pg_query.PartitionStrategy", + "PartitionStrategy", + "PgQuery__PartitionStrategy", + "pg_query", + 4, + pg_query__partition_strategy__enum_values_by_number, + 4, + pg_query__partition_strategy__enum_values_by_name, + 1, + pg_query__partition_strategy__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; static const ProtobufCEnumValue pg_query__partition_range_datum_kind__enum_values_by_number[4] = { { "PARTITION_RANGE_DATUM_KIND_UNDEFINED", "PG_QUERY__PARTITION_RANGE_DATUM_KIND__PARTITION_RANGE_DATUM_KIND_UNDEFINED", 0 }, @@ -37004,158 +38848,148 @@ const ProtobufCEnumDescriptor pg_query__drop_behavior__descriptor = pg_query__drop_behavior__value_ranges, NULL,NULL,NULL,NULL /* reserved[1234] */ }; -static const ProtobufCEnumValue pg_query__alter_table_type__enum_values_by_number[72] = +static const ProtobufCEnumValue pg_query__alter_table_type__enum_values_by_number[67] = { { "ALTER_TABLE_TYPE_UNDEFINED", "PG_QUERY__ALTER_TABLE_TYPE__ALTER_TABLE_TYPE_UNDEFINED", 0 }, { "AT_AddColumn", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddColumn", 1 }, - { "AT_AddColumnRecurse", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddColumnRecurse", 2 }, - { "AT_AddColumnToView", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddColumnToView", 3 }, - { "AT_ColumnDefault", "PG_QUERY__ALTER_TABLE_TYPE__AT_ColumnDefault", 4 }, - { "AT_CookedColumnDefault", "PG_QUERY__ALTER_TABLE_TYPE__AT_CookedColumnDefault", 5 }, - { "AT_DropNotNull", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropNotNull", 6 }, - { "AT_SetNotNull", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetNotNull", 7 }, - { "AT_DropExpression", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropExpression", 8 }, - { "AT_CheckNotNull", "PG_QUERY__ALTER_TABLE_TYPE__AT_CheckNotNull", 9 }, - { "AT_SetStatistics", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetStatistics", 10 }, - { "AT_SetOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetOptions", 11 }, - { "AT_ResetOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_ResetOptions", 12 }, - { "AT_SetStorage", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetStorage", 13 }, - { "AT_SetCompression", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetCompression", 14 }, - { "AT_DropColumn", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropColumn", 15 }, - { "AT_DropColumnRecurse", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropColumnRecurse", 16 }, - { "AT_AddIndex", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddIndex", 17 }, - { "AT_ReAddIndex", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddIndex", 18 }, - { "AT_AddConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddConstraint", 19 }, - { "AT_AddConstraintRecurse", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddConstraintRecurse", 20 }, - { "AT_ReAddConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddConstraint", 21 }, - { "AT_ReAddDomainConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddDomainConstraint", 22 }, - { "AT_AlterConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_AlterConstraint", 23 }, - { "AT_ValidateConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_ValidateConstraint", 24 }, - { "AT_ValidateConstraintRecurse", "PG_QUERY__ALTER_TABLE_TYPE__AT_ValidateConstraintRecurse", 25 }, - { "AT_AddIndexConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddIndexConstraint", 26 }, - { "AT_DropConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropConstraint", 27 }, - { "AT_DropConstraintRecurse", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropConstraintRecurse", 28 }, - { "AT_ReAddComment", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddComment", 29 }, - { "AT_AlterColumnType", "PG_QUERY__ALTER_TABLE_TYPE__AT_AlterColumnType", 30 }, - { "AT_AlterColumnGenericOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_AlterColumnGenericOptions", 31 }, - { "AT_ChangeOwner", "PG_QUERY__ALTER_TABLE_TYPE__AT_ChangeOwner", 32 }, - { "AT_ClusterOn", "PG_QUERY__ALTER_TABLE_TYPE__AT_ClusterOn", 33 }, - { "AT_DropCluster", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropCluster", 34 }, - { "AT_SetLogged", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetLogged", 35 }, - { "AT_SetUnLogged", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetUnLogged", 36 }, - { "AT_DropOids", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropOids", 37 }, - { "AT_SetAccessMethod", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetAccessMethod", 38 }, - { "AT_SetTableSpace", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetTableSpace", 39 }, - { "AT_SetRelOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetRelOptions", 40 }, - { "AT_ResetRelOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_ResetRelOptions", 41 }, - { "AT_ReplaceRelOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReplaceRelOptions", 42 }, - { "AT_EnableTrig", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrig", 43 }, - { "AT_EnableAlwaysTrig", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableAlwaysTrig", 44 }, - { "AT_EnableReplicaTrig", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableReplicaTrig", 45 }, - { "AT_DisableTrig", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrig", 46 }, - { "AT_EnableTrigAll", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrigAll", 47 }, - { "AT_DisableTrigAll", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrigAll", 48 }, - { "AT_EnableTrigUser", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrigUser", 49 }, - { "AT_DisableTrigUser", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrigUser", 50 }, - { "AT_EnableRule", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableRule", 51 }, - { "AT_EnableAlwaysRule", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableAlwaysRule", 52 }, - { "AT_EnableReplicaRule", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableReplicaRule", 53 }, - { "AT_DisableRule", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableRule", 54 }, - { "AT_AddInherit", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddInherit", 55 }, - { "AT_DropInherit", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropInherit", 56 }, - { "AT_AddOf", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddOf", 57 }, - { "AT_DropOf", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropOf", 58 }, - { "AT_ReplicaIdentity", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReplicaIdentity", 59 }, - { "AT_EnableRowSecurity", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableRowSecurity", 60 }, - { "AT_DisableRowSecurity", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableRowSecurity", 61 }, - { "AT_ForceRowSecurity", "PG_QUERY__ALTER_TABLE_TYPE__AT_ForceRowSecurity", 62 }, - { "AT_NoForceRowSecurity", "PG_QUERY__ALTER_TABLE_TYPE__AT_NoForceRowSecurity", 63 }, - { "AT_GenericOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_GenericOptions", 64 }, - { "AT_AttachPartition", "PG_QUERY__ALTER_TABLE_TYPE__AT_AttachPartition", 65 }, - { "AT_DetachPartition", "PG_QUERY__ALTER_TABLE_TYPE__AT_DetachPartition", 66 }, - { "AT_DetachPartitionFinalize", "PG_QUERY__ALTER_TABLE_TYPE__AT_DetachPartitionFinalize", 67 }, - { "AT_AddIdentity", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddIdentity", 68 }, - { "AT_SetIdentity", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetIdentity", 69 }, - { "AT_DropIdentity", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropIdentity", 70 }, - { "AT_ReAddStatistics", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddStatistics", 71 }, + { "AT_AddColumnToView", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddColumnToView", 2 }, + { "AT_ColumnDefault", "PG_QUERY__ALTER_TABLE_TYPE__AT_ColumnDefault", 3 }, + { "AT_CookedColumnDefault", "PG_QUERY__ALTER_TABLE_TYPE__AT_CookedColumnDefault", 4 }, + { "AT_DropNotNull", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropNotNull", 5 }, + { "AT_SetNotNull", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetNotNull", 6 }, + { "AT_DropExpression", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropExpression", 7 }, + { "AT_CheckNotNull", "PG_QUERY__ALTER_TABLE_TYPE__AT_CheckNotNull", 8 }, + { "AT_SetStatistics", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetStatistics", 9 }, + { "AT_SetOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetOptions", 10 }, + { "AT_ResetOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_ResetOptions", 11 }, + { "AT_SetStorage", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetStorage", 12 }, + { "AT_SetCompression", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetCompression", 13 }, + { "AT_DropColumn", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropColumn", 14 }, + { "AT_AddIndex", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddIndex", 15 }, + { "AT_ReAddIndex", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddIndex", 16 }, + { "AT_AddConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddConstraint", 17 }, + { "AT_ReAddConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddConstraint", 18 }, + { "AT_ReAddDomainConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddDomainConstraint", 19 }, + { "AT_AlterConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_AlterConstraint", 20 }, + { "AT_ValidateConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_ValidateConstraint", 21 }, + { "AT_AddIndexConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddIndexConstraint", 22 }, + { "AT_DropConstraint", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropConstraint", 23 }, + { "AT_ReAddComment", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddComment", 24 }, + { "AT_AlterColumnType", "PG_QUERY__ALTER_TABLE_TYPE__AT_AlterColumnType", 25 }, + { "AT_AlterColumnGenericOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_AlterColumnGenericOptions", 26 }, + { "AT_ChangeOwner", "PG_QUERY__ALTER_TABLE_TYPE__AT_ChangeOwner", 27 }, + { "AT_ClusterOn", "PG_QUERY__ALTER_TABLE_TYPE__AT_ClusterOn", 28 }, + { "AT_DropCluster", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropCluster", 29 }, + { "AT_SetLogged", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetLogged", 30 }, + { "AT_SetUnLogged", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetUnLogged", 31 }, + { "AT_DropOids", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropOids", 32 }, + { "AT_SetAccessMethod", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetAccessMethod", 33 }, + { "AT_SetTableSpace", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetTableSpace", 34 }, + { "AT_SetRelOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetRelOptions", 35 }, + { "AT_ResetRelOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_ResetRelOptions", 36 }, + { "AT_ReplaceRelOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReplaceRelOptions", 37 }, + { "AT_EnableTrig", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrig", 38 }, + { "AT_EnableAlwaysTrig", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableAlwaysTrig", 39 }, + { "AT_EnableReplicaTrig", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableReplicaTrig", 40 }, + { "AT_DisableTrig", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrig", 41 }, + { "AT_EnableTrigAll", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrigAll", 42 }, + { "AT_DisableTrigAll", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrigAll", 43 }, + { "AT_EnableTrigUser", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableTrigUser", 44 }, + { "AT_DisableTrigUser", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableTrigUser", 45 }, + { "AT_EnableRule", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableRule", 46 }, + { "AT_EnableAlwaysRule", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableAlwaysRule", 47 }, + { "AT_EnableReplicaRule", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableReplicaRule", 48 }, + { "AT_DisableRule", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableRule", 49 }, + { "AT_AddInherit", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddInherit", 50 }, + { "AT_DropInherit", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropInherit", 51 }, + { "AT_AddOf", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddOf", 52 }, + { "AT_DropOf", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropOf", 53 }, + { "AT_ReplicaIdentity", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReplicaIdentity", 54 }, + { "AT_EnableRowSecurity", "PG_QUERY__ALTER_TABLE_TYPE__AT_EnableRowSecurity", 55 }, + { "AT_DisableRowSecurity", "PG_QUERY__ALTER_TABLE_TYPE__AT_DisableRowSecurity", 56 }, + { "AT_ForceRowSecurity", "PG_QUERY__ALTER_TABLE_TYPE__AT_ForceRowSecurity", 57 }, + { "AT_NoForceRowSecurity", "PG_QUERY__ALTER_TABLE_TYPE__AT_NoForceRowSecurity", 58 }, + { "AT_GenericOptions", "PG_QUERY__ALTER_TABLE_TYPE__AT_GenericOptions", 59 }, + { "AT_AttachPartition", "PG_QUERY__ALTER_TABLE_TYPE__AT_AttachPartition", 60 }, + { "AT_DetachPartition", "PG_QUERY__ALTER_TABLE_TYPE__AT_DetachPartition", 61 }, + { "AT_DetachPartitionFinalize", "PG_QUERY__ALTER_TABLE_TYPE__AT_DetachPartitionFinalize", 62 }, + { "AT_AddIdentity", "PG_QUERY__ALTER_TABLE_TYPE__AT_AddIdentity", 63 }, + { "AT_SetIdentity", "PG_QUERY__ALTER_TABLE_TYPE__AT_SetIdentity", 64 }, + { "AT_DropIdentity", "PG_QUERY__ALTER_TABLE_TYPE__AT_DropIdentity", 65 }, + { "AT_ReAddStatistics", "PG_QUERY__ALTER_TABLE_TYPE__AT_ReAddStatistics", 66 }, }; static const ProtobufCIntRange pg_query__alter_table_type__value_ranges[] = { -{0, 0},{0, 72} +{0, 0},{0, 67} }; -static const ProtobufCEnumValueIndex pg_query__alter_table_type__enum_values_by_name[72] = +static const ProtobufCEnumValueIndex pg_query__alter_table_type__enum_values_by_name[67] = { { "ALTER_TABLE_TYPE_UNDEFINED", 0 }, { "AT_AddColumn", 1 }, - { "AT_AddColumnRecurse", 2 }, - { "AT_AddColumnToView", 3 }, - { "AT_AddConstraint", 19 }, - { "AT_AddConstraintRecurse", 20 }, - { "AT_AddIdentity", 68 }, - { "AT_AddIndex", 17 }, - { "AT_AddIndexConstraint", 26 }, - { "AT_AddInherit", 55 }, - { "AT_AddOf", 57 }, - { "AT_AlterColumnGenericOptions", 31 }, - { "AT_AlterColumnType", 30 }, - { "AT_AlterConstraint", 23 }, - { "AT_AttachPartition", 65 }, - { "AT_ChangeOwner", 32 }, - { "AT_CheckNotNull", 9 }, - { "AT_ClusterOn", 33 }, - { "AT_ColumnDefault", 4 }, - { "AT_CookedColumnDefault", 5 }, - { "AT_DetachPartition", 66 }, - { "AT_DetachPartitionFinalize", 67 }, - { "AT_DisableRowSecurity", 61 }, - { "AT_DisableRule", 54 }, - { "AT_DisableTrig", 46 }, - { "AT_DisableTrigAll", 48 }, - { "AT_DisableTrigUser", 50 }, - { "AT_DropCluster", 34 }, - { "AT_DropColumn", 15 }, - { "AT_DropColumnRecurse", 16 }, - { "AT_DropConstraint", 27 }, - { "AT_DropConstraintRecurse", 28 }, - { "AT_DropExpression", 8 }, - { "AT_DropIdentity", 70 }, - { "AT_DropInherit", 56 }, - { "AT_DropNotNull", 6 }, - { "AT_DropOf", 58 }, - { "AT_DropOids", 37 }, - { "AT_EnableAlwaysRule", 52 }, - { "AT_EnableAlwaysTrig", 44 }, - { "AT_EnableReplicaRule", 53 }, - { "AT_EnableReplicaTrig", 45 }, - { "AT_EnableRowSecurity", 60 }, - { "AT_EnableRule", 51 }, - { "AT_EnableTrig", 43 }, - { "AT_EnableTrigAll", 47 }, - { "AT_EnableTrigUser", 49 }, - { "AT_ForceRowSecurity", 62 }, - { "AT_GenericOptions", 64 }, - { "AT_NoForceRowSecurity", 63 }, - { "AT_ReAddComment", 29 }, - { "AT_ReAddConstraint", 21 }, - { "AT_ReAddDomainConstraint", 22 }, - { "AT_ReAddIndex", 18 }, - { "AT_ReAddStatistics", 71 }, - { "AT_ReplaceRelOptions", 42 }, - { "AT_ReplicaIdentity", 59 }, - { "AT_ResetOptions", 12 }, - { "AT_ResetRelOptions", 41 }, - { "AT_SetAccessMethod", 38 }, - { "AT_SetCompression", 14 }, - { "AT_SetIdentity", 69 }, - { "AT_SetLogged", 35 }, - { "AT_SetNotNull", 7 }, - { "AT_SetOptions", 11 }, - { "AT_SetRelOptions", 40 }, - { "AT_SetStatistics", 10 }, - { "AT_SetStorage", 13 }, - { "AT_SetTableSpace", 39 }, - { "AT_SetUnLogged", 36 }, - { "AT_ValidateConstraint", 24 }, - { "AT_ValidateConstraintRecurse", 25 }, + { "AT_AddColumnToView", 2 }, + { "AT_AddConstraint", 17 }, + { "AT_AddIdentity", 63 }, + { "AT_AddIndex", 15 }, + { "AT_AddIndexConstraint", 22 }, + { "AT_AddInherit", 50 }, + { "AT_AddOf", 52 }, + { "AT_AlterColumnGenericOptions", 26 }, + { "AT_AlterColumnType", 25 }, + { "AT_AlterConstraint", 20 }, + { "AT_AttachPartition", 60 }, + { "AT_ChangeOwner", 27 }, + { "AT_CheckNotNull", 8 }, + { "AT_ClusterOn", 28 }, + { "AT_ColumnDefault", 3 }, + { "AT_CookedColumnDefault", 4 }, + { "AT_DetachPartition", 61 }, + { "AT_DetachPartitionFinalize", 62 }, + { "AT_DisableRowSecurity", 56 }, + { "AT_DisableRule", 49 }, + { "AT_DisableTrig", 41 }, + { "AT_DisableTrigAll", 43 }, + { "AT_DisableTrigUser", 45 }, + { "AT_DropCluster", 29 }, + { "AT_DropColumn", 14 }, + { "AT_DropConstraint", 23 }, + { "AT_DropExpression", 7 }, + { "AT_DropIdentity", 65 }, + { "AT_DropInherit", 51 }, + { "AT_DropNotNull", 5 }, + { "AT_DropOf", 53 }, + { "AT_DropOids", 32 }, + { "AT_EnableAlwaysRule", 47 }, + { "AT_EnableAlwaysTrig", 39 }, + { "AT_EnableReplicaRule", 48 }, + { "AT_EnableReplicaTrig", 40 }, + { "AT_EnableRowSecurity", 55 }, + { "AT_EnableRule", 46 }, + { "AT_EnableTrig", 38 }, + { "AT_EnableTrigAll", 42 }, + { "AT_EnableTrigUser", 44 }, + { "AT_ForceRowSecurity", 57 }, + { "AT_GenericOptions", 59 }, + { "AT_NoForceRowSecurity", 58 }, + { "AT_ReAddComment", 24 }, + { "AT_ReAddConstraint", 18 }, + { "AT_ReAddDomainConstraint", 19 }, + { "AT_ReAddIndex", 16 }, + { "AT_ReAddStatistics", 66 }, + { "AT_ReplaceRelOptions", 37 }, + { "AT_ReplicaIdentity", 54 }, + { "AT_ResetOptions", 11 }, + { "AT_ResetRelOptions", 36 }, + { "AT_SetAccessMethod", 33 }, + { "AT_SetCompression", 13 }, + { "AT_SetIdentity", 64 }, + { "AT_SetLogged", 30 }, + { "AT_SetNotNull", 6 }, + { "AT_SetOptions", 10 }, + { "AT_SetRelOptions", 35 }, + { "AT_SetStatistics", 9 }, + { "AT_SetStorage", 12 }, + { "AT_SetTableSpace", 34 }, + { "AT_SetUnLogged", 31 }, + { "AT_ValidateConstraint", 21 }, }; const ProtobufCEnumDescriptor pg_query__alter_table_type__descriptor = { @@ -37164,9 +38998,9 @@ const ProtobufCEnumDescriptor pg_query__alter_table_type__descriptor = "AlterTableType", "PgQuery__AlterTableType", "pg_query", - 72, + 67, pg_query__alter_table_type__enum_values_by_number, - 72, + 67, pg_query__alter_table_type__enum_values_by_name, 1, pg_query__alter_table_type__value_ranges, @@ -38130,6 +39964,140 @@ const ProtobufCEnumDescriptor pg_query__xml_option_type__descriptor = pg_query__xml_option_type__value_ranges, NULL,NULL,NULL,NULL /* reserved[1234] */ }; +static const ProtobufCEnumValue pg_query__json_encoding__enum_values_by_number[5] = +{ + { "JSON_ENCODING_UNDEFINED", "PG_QUERY__JSON_ENCODING__JSON_ENCODING_UNDEFINED", 0 }, + { "JS_ENC_DEFAULT", "PG_QUERY__JSON_ENCODING__JS_ENC_DEFAULT", 1 }, + { "JS_ENC_UTF8", "PG_QUERY__JSON_ENCODING__JS_ENC_UTF8", 2 }, + { "JS_ENC_UTF16", "PG_QUERY__JSON_ENCODING__JS_ENC_UTF16", 3 }, + { "JS_ENC_UTF32", "PG_QUERY__JSON_ENCODING__JS_ENC_UTF32", 4 }, +}; +static const ProtobufCIntRange pg_query__json_encoding__value_ranges[] = { +{0, 0},{0, 5} +}; +static const ProtobufCEnumValueIndex pg_query__json_encoding__enum_values_by_name[5] = +{ + { "JSON_ENCODING_UNDEFINED", 0 }, + { "JS_ENC_DEFAULT", 1 }, + { "JS_ENC_UTF16", 3 }, + { "JS_ENC_UTF32", 4 }, + { "JS_ENC_UTF8", 2 }, +}; +const ProtobufCEnumDescriptor pg_query__json_encoding__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "pg_query.JsonEncoding", + "JsonEncoding", + "PgQuery__JsonEncoding", + "pg_query", + 5, + pg_query__json_encoding__enum_values_by_number, + 5, + pg_query__json_encoding__enum_values_by_name, + 1, + pg_query__json_encoding__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue pg_query__json_format_type__enum_values_by_number[4] = +{ + { "JSON_FORMAT_TYPE_UNDEFINED", "PG_QUERY__JSON_FORMAT_TYPE__JSON_FORMAT_TYPE_UNDEFINED", 0 }, + { "JS_FORMAT_DEFAULT", "PG_QUERY__JSON_FORMAT_TYPE__JS_FORMAT_DEFAULT", 1 }, + { "JS_FORMAT_JSON", "PG_QUERY__JSON_FORMAT_TYPE__JS_FORMAT_JSON", 2 }, + { "JS_FORMAT_JSONB", "PG_QUERY__JSON_FORMAT_TYPE__JS_FORMAT_JSONB", 3 }, +}; +static const ProtobufCIntRange pg_query__json_format_type__value_ranges[] = { +{0, 0},{0, 4} +}; +static const ProtobufCEnumValueIndex pg_query__json_format_type__enum_values_by_name[4] = +{ + { "JSON_FORMAT_TYPE_UNDEFINED", 0 }, + { "JS_FORMAT_DEFAULT", 1 }, + { "JS_FORMAT_JSON", 2 }, + { "JS_FORMAT_JSONB", 3 }, +}; +const ProtobufCEnumDescriptor pg_query__json_format_type__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "pg_query.JsonFormatType", + "JsonFormatType", + "PgQuery__JsonFormatType", + "pg_query", + 4, + pg_query__json_format_type__enum_values_by_number, + 4, + pg_query__json_format_type__enum_values_by_name, + 1, + pg_query__json_format_type__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue pg_query__json_constructor_type__enum_values_by_number[5] = +{ + { "JSON_CONSTRUCTOR_TYPE_UNDEFINED", "PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSON_CONSTRUCTOR_TYPE_UNDEFINED", 0 }, + { "JSCTOR_JSON_OBJECT", "PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSCTOR_JSON_OBJECT", 1 }, + { "JSCTOR_JSON_ARRAY", "PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSCTOR_JSON_ARRAY", 2 }, + { "JSCTOR_JSON_OBJECTAGG", "PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSCTOR_JSON_OBJECTAGG", 3 }, + { "JSCTOR_JSON_ARRAYAGG", "PG_QUERY__JSON_CONSTRUCTOR_TYPE__JSCTOR_JSON_ARRAYAGG", 4 }, +}; +static const ProtobufCIntRange pg_query__json_constructor_type__value_ranges[] = { +{0, 0},{0, 5} +}; +static const ProtobufCEnumValueIndex pg_query__json_constructor_type__enum_values_by_name[5] = +{ + { "JSCTOR_JSON_ARRAY", 2 }, + { "JSCTOR_JSON_ARRAYAGG", 4 }, + { "JSCTOR_JSON_OBJECT", 1 }, + { "JSCTOR_JSON_OBJECTAGG", 3 }, + { "JSON_CONSTRUCTOR_TYPE_UNDEFINED", 0 }, +}; +const ProtobufCEnumDescriptor pg_query__json_constructor_type__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "pg_query.JsonConstructorType", + "JsonConstructorType", + "PgQuery__JsonConstructorType", + "pg_query", + 5, + pg_query__json_constructor_type__enum_values_by_number, + 5, + pg_query__json_constructor_type__enum_values_by_name, + 1, + pg_query__json_constructor_type__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue pg_query__json_value_type__enum_values_by_number[5] = +{ + { "JSON_VALUE_TYPE_UNDEFINED", "PG_QUERY__JSON_VALUE_TYPE__JSON_VALUE_TYPE_UNDEFINED", 0 }, + { "JS_TYPE_ANY", "PG_QUERY__JSON_VALUE_TYPE__JS_TYPE_ANY", 1 }, + { "JS_TYPE_OBJECT", "PG_QUERY__JSON_VALUE_TYPE__JS_TYPE_OBJECT", 2 }, + { "JS_TYPE_ARRAY", "PG_QUERY__JSON_VALUE_TYPE__JS_TYPE_ARRAY", 3 }, + { "JS_TYPE_SCALAR", "PG_QUERY__JSON_VALUE_TYPE__JS_TYPE_SCALAR", 4 }, +}; +static const ProtobufCIntRange pg_query__json_value_type__value_ranges[] = { +{0, 0},{0, 5} +}; +static const ProtobufCEnumValueIndex pg_query__json_value_type__enum_values_by_name[5] = +{ + { "JSON_VALUE_TYPE_UNDEFINED", 0 }, + { "JS_TYPE_ANY", 1 }, + { "JS_TYPE_ARRAY", 3 }, + { "JS_TYPE_OBJECT", 2 }, + { "JS_TYPE_SCALAR", 4 }, +}; +const ProtobufCEnumDescriptor pg_query__json_value_type__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "pg_query.JsonValueType", + "JsonValueType", + "PgQuery__JsonValueType", + "pg_query", + 5, + pg_query__json_value_type__enum_values_by_number, + 5, + pg_query__json_value_type__enum_values_by_name, + 1, + pg_query__json_value_type__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; static const ProtobufCEnumValue pg_query__null_test_type__enum_values_by_number[3] = { { "NULL_TEST_TYPE_UNDEFINED", "PG_QUERY__NULL_TEST_TYPE__NULL_TEST_TYPE_UNDEFINED", 0 }, @@ -38240,7 +40208,7 @@ const ProtobufCEnumDescriptor pg_query__cmd_type__descriptor = pg_query__cmd_type__value_ranges, NULL,NULL,NULL,NULL /* reserved[1234] */ }; -static const ProtobufCEnumValue pg_query__join_type__enum_values_by_number[9] = +static const ProtobufCEnumValue pg_query__join_type__enum_values_by_number[10] = { { "JOIN_TYPE_UNDEFINED", "PG_QUERY__JOIN_TYPE__JOIN_TYPE_UNDEFINED", 0 }, { "JOIN_INNER", "PG_QUERY__JOIN_TYPE__JOIN_INNER", 1 }, @@ -38249,23 +40217,25 @@ static const ProtobufCEnumValue pg_query__join_type__enum_values_by_number[9] = { "JOIN_RIGHT", "PG_QUERY__JOIN_TYPE__JOIN_RIGHT", 4 }, { "JOIN_SEMI", "PG_QUERY__JOIN_TYPE__JOIN_SEMI", 5 }, { "JOIN_ANTI", "PG_QUERY__JOIN_TYPE__JOIN_ANTI", 6 }, - { "JOIN_UNIQUE_OUTER", "PG_QUERY__JOIN_TYPE__JOIN_UNIQUE_OUTER", 7 }, - { "JOIN_UNIQUE_INNER", "PG_QUERY__JOIN_TYPE__JOIN_UNIQUE_INNER", 8 }, + { "JOIN_RIGHT_ANTI", "PG_QUERY__JOIN_TYPE__JOIN_RIGHT_ANTI", 7 }, + { "JOIN_UNIQUE_OUTER", "PG_QUERY__JOIN_TYPE__JOIN_UNIQUE_OUTER", 8 }, + { "JOIN_UNIQUE_INNER", "PG_QUERY__JOIN_TYPE__JOIN_UNIQUE_INNER", 9 }, }; static const ProtobufCIntRange pg_query__join_type__value_ranges[] = { -{0, 0},{0, 9} +{0, 0},{0, 10} }; -static const ProtobufCEnumValueIndex pg_query__join_type__enum_values_by_name[9] = +static const ProtobufCEnumValueIndex pg_query__join_type__enum_values_by_name[10] = { { "JOIN_ANTI", 6 }, { "JOIN_FULL", 3 }, { "JOIN_INNER", 1 }, { "JOIN_LEFT", 2 }, { "JOIN_RIGHT", 4 }, + { "JOIN_RIGHT_ANTI", 7 }, { "JOIN_SEMI", 5 }, { "JOIN_TYPE_UNDEFINED", 0 }, - { "JOIN_UNIQUE_INNER", 8 }, - { "JOIN_UNIQUE_OUTER", 7 }, + { "JOIN_UNIQUE_INNER", 9 }, + { "JOIN_UNIQUE_OUTER", 8 }, }; const ProtobufCEnumDescriptor pg_query__join_type__descriptor = { @@ -38274,9 +40244,9 @@ const ProtobufCEnumDescriptor pg_query__join_type__descriptor = "JoinType", "PgQuery__JoinType", "pg_query", - 9, + 10, pg_query__join_type__enum_values_by_number, - 9, + 10, pg_query__join_type__enum_values_by_name, 1, pg_query__join_type__value_ranges, @@ -38612,9 +40582,10 @@ const ProtobufCEnumDescriptor pg_query__keyword_kind__descriptor = pg_query__keyword_kind__value_ranges, NULL,NULL,NULL,NULL /* reserved[1234] */ }; -static const ProtobufCEnumValue pg_query__token__enum_values_by_number[508] = +static const ProtobufCEnumValue pg_query__token__enum_values_by_number[522] = { { "NUL", "PG_QUERY__TOKEN__NUL", 0 }, + { "ASCII_36", "PG_QUERY__TOKEN__ASCII_36", 36 }, { "ASCII_37", "PG_QUERY__TOKEN__ASCII_37", 37 }, { "ASCII_40", "PG_QUERY__TOKEN__ASCII_40", 40 }, { "ASCII_41", "PG_QUERY__TOKEN__ASCII_41", 41 }, @@ -38654,988 +40625,1015 @@ static const ProtobufCEnumValue pg_query__token__enum_values_by_number[508] = { "SQL_COMMENT", "PG_QUERY__TOKEN__SQL_COMMENT", 275 }, { "C_COMMENT", "PG_QUERY__TOKEN__C_COMMENT", 276 }, { "ABORT_P", "PG_QUERY__TOKEN__ABORT_P", 277 }, - { "ABSOLUTE_P", "PG_QUERY__TOKEN__ABSOLUTE_P", 278 }, - { "ACCESS", "PG_QUERY__TOKEN__ACCESS", 279 }, - { "ACTION", "PG_QUERY__TOKEN__ACTION", 280 }, - { "ADD_P", "PG_QUERY__TOKEN__ADD_P", 281 }, - { "ADMIN", "PG_QUERY__TOKEN__ADMIN", 282 }, - { "AFTER", "PG_QUERY__TOKEN__AFTER", 283 }, - { "AGGREGATE", "PG_QUERY__TOKEN__AGGREGATE", 284 }, - { "ALL", "PG_QUERY__TOKEN__ALL", 285 }, - { "ALSO", "PG_QUERY__TOKEN__ALSO", 286 }, - { "ALTER", "PG_QUERY__TOKEN__ALTER", 287 }, - { "ALWAYS", "PG_QUERY__TOKEN__ALWAYS", 288 }, - { "ANALYSE", "PG_QUERY__TOKEN__ANALYSE", 289 }, - { "ANALYZE", "PG_QUERY__TOKEN__ANALYZE", 290 }, - { "AND", "PG_QUERY__TOKEN__AND", 291 }, - { "ANY", "PG_QUERY__TOKEN__ANY", 292 }, - { "ARRAY", "PG_QUERY__TOKEN__ARRAY", 293 }, - { "AS", "PG_QUERY__TOKEN__AS", 294 }, - { "ASC", "PG_QUERY__TOKEN__ASC", 295 }, - { "ASENSITIVE", "PG_QUERY__TOKEN__ASENSITIVE", 296 }, - { "ASSERTION", "PG_QUERY__TOKEN__ASSERTION", 297 }, - { "ASSIGNMENT", "PG_QUERY__TOKEN__ASSIGNMENT", 298 }, - { "ASYMMETRIC", "PG_QUERY__TOKEN__ASYMMETRIC", 299 }, - { "ATOMIC", "PG_QUERY__TOKEN__ATOMIC", 300 }, - { "AT", "PG_QUERY__TOKEN__AT", 301 }, - { "ATTACH", "PG_QUERY__TOKEN__ATTACH", 302 }, - { "ATTRIBUTE", "PG_QUERY__TOKEN__ATTRIBUTE", 303 }, - { "AUTHORIZATION", "PG_QUERY__TOKEN__AUTHORIZATION", 304 }, - { "BACKWARD", "PG_QUERY__TOKEN__BACKWARD", 305 }, - { "BEFORE", "PG_QUERY__TOKEN__BEFORE", 306 }, - { "BEGIN_P", "PG_QUERY__TOKEN__BEGIN_P", 307 }, - { "BETWEEN", "PG_QUERY__TOKEN__BETWEEN", 308 }, - { "BIGINT", "PG_QUERY__TOKEN__BIGINT", 309 }, - { "BINARY", "PG_QUERY__TOKEN__BINARY", 310 }, - { "BIT", "PG_QUERY__TOKEN__BIT", 311 }, - { "BOOLEAN_P", "PG_QUERY__TOKEN__BOOLEAN_P", 312 }, - { "BOTH", "PG_QUERY__TOKEN__BOTH", 313 }, - { "BREADTH", "PG_QUERY__TOKEN__BREADTH", 314 }, - { "BY", "PG_QUERY__TOKEN__BY", 315 }, - { "CACHE", "PG_QUERY__TOKEN__CACHE", 316 }, - { "CALL", "PG_QUERY__TOKEN__CALL", 317 }, - { "CALLED", "PG_QUERY__TOKEN__CALLED", 318 }, - { "CASCADE", "PG_QUERY__TOKEN__CASCADE", 319 }, - { "CASCADED", "PG_QUERY__TOKEN__CASCADED", 320 }, - { "CASE", "PG_QUERY__TOKEN__CASE", 321 }, - { "CAST", "PG_QUERY__TOKEN__CAST", 322 }, - { "CATALOG_P", "PG_QUERY__TOKEN__CATALOG_P", 323 }, - { "CHAIN", "PG_QUERY__TOKEN__CHAIN", 324 }, - { "CHAR_P", "PG_QUERY__TOKEN__CHAR_P", 325 }, - { "CHARACTER", "PG_QUERY__TOKEN__CHARACTER", 326 }, - { "CHARACTERISTICS", "PG_QUERY__TOKEN__CHARACTERISTICS", 327 }, - { "CHECK", "PG_QUERY__TOKEN__CHECK", 328 }, - { "CHECKPOINT", "PG_QUERY__TOKEN__CHECKPOINT", 329 }, - { "CLASS", "PG_QUERY__TOKEN__CLASS", 330 }, - { "CLOSE", "PG_QUERY__TOKEN__CLOSE", 331 }, - { "CLUSTER", "PG_QUERY__TOKEN__CLUSTER", 332 }, - { "COALESCE", "PG_QUERY__TOKEN__COALESCE", 333 }, - { "COLLATE", "PG_QUERY__TOKEN__COLLATE", 334 }, - { "COLLATION", "PG_QUERY__TOKEN__COLLATION", 335 }, - { "COLUMN", "PG_QUERY__TOKEN__COLUMN", 336 }, - { "COLUMNS", "PG_QUERY__TOKEN__COLUMNS", 337 }, - { "COMMENT", "PG_QUERY__TOKEN__COMMENT", 338 }, - { "COMMENTS", "PG_QUERY__TOKEN__COMMENTS", 339 }, - { "COMMIT", "PG_QUERY__TOKEN__COMMIT", 340 }, - { "COMMITTED", "PG_QUERY__TOKEN__COMMITTED", 341 }, - { "COMPRESSION", "PG_QUERY__TOKEN__COMPRESSION", 342 }, - { "CONCURRENTLY", "PG_QUERY__TOKEN__CONCURRENTLY", 343 }, - { "CONFIGURATION", "PG_QUERY__TOKEN__CONFIGURATION", 344 }, - { "CONFLICT", "PG_QUERY__TOKEN__CONFLICT", 345 }, - { "CONNECTION", "PG_QUERY__TOKEN__CONNECTION", 346 }, - { "CONSTRAINT", "PG_QUERY__TOKEN__CONSTRAINT", 347 }, - { "CONSTRAINTS", "PG_QUERY__TOKEN__CONSTRAINTS", 348 }, - { "CONTENT_P", "PG_QUERY__TOKEN__CONTENT_P", 349 }, - { "CONTINUE_P", "PG_QUERY__TOKEN__CONTINUE_P", 350 }, - { "CONVERSION_P", "PG_QUERY__TOKEN__CONVERSION_P", 351 }, - { "COPY", "PG_QUERY__TOKEN__COPY", 352 }, - { "COST", "PG_QUERY__TOKEN__COST", 353 }, - { "CREATE", "PG_QUERY__TOKEN__CREATE", 354 }, - { "CROSS", "PG_QUERY__TOKEN__CROSS", 355 }, - { "CSV", "PG_QUERY__TOKEN__CSV", 356 }, - { "CUBE", "PG_QUERY__TOKEN__CUBE", 357 }, - { "CURRENT_P", "PG_QUERY__TOKEN__CURRENT_P", 358 }, - { "CURRENT_CATALOG", "PG_QUERY__TOKEN__CURRENT_CATALOG", 359 }, - { "CURRENT_DATE", "PG_QUERY__TOKEN__CURRENT_DATE", 360 }, - { "CURRENT_ROLE", "PG_QUERY__TOKEN__CURRENT_ROLE", 361 }, - { "CURRENT_SCHEMA", "PG_QUERY__TOKEN__CURRENT_SCHEMA", 362 }, - { "CURRENT_TIME", "PG_QUERY__TOKEN__CURRENT_TIME", 363 }, - { "CURRENT_TIMESTAMP", "PG_QUERY__TOKEN__CURRENT_TIMESTAMP", 364 }, - { "CURRENT_USER", "PG_QUERY__TOKEN__CURRENT_USER", 365 }, - { "CURSOR", "PG_QUERY__TOKEN__CURSOR", 366 }, - { "CYCLE", "PG_QUERY__TOKEN__CYCLE", 367 }, - { "DATA_P", "PG_QUERY__TOKEN__DATA_P", 368 }, - { "DATABASE", "PG_QUERY__TOKEN__DATABASE", 369 }, - { "DAY_P", "PG_QUERY__TOKEN__DAY_P", 370 }, - { "DEALLOCATE", "PG_QUERY__TOKEN__DEALLOCATE", 371 }, - { "DEC", "PG_QUERY__TOKEN__DEC", 372 }, - { "DECIMAL_P", "PG_QUERY__TOKEN__DECIMAL_P", 373 }, - { "DECLARE", "PG_QUERY__TOKEN__DECLARE", 374 }, - { "DEFAULT", "PG_QUERY__TOKEN__DEFAULT", 375 }, - { "DEFAULTS", "PG_QUERY__TOKEN__DEFAULTS", 376 }, - { "DEFERRABLE", "PG_QUERY__TOKEN__DEFERRABLE", 377 }, - { "DEFERRED", "PG_QUERY__TOKEN__DEFERRED", 378 }, - { "DEFINER", "PG_QUERY__TOKEN__DEFINER", 379 }, - { "DELETE_P", "PG_QUERY__TOKEN__DELETE_P", 380 }, - { "DELIMITER", "PG_QUERY__TOKEN__DELIMITER", 381 }, - { "DELIMITERS", "PG_QUERY__TOKEN__DELIMITERS", 382 }, - { "DEPENDS", "PG_QUERY__TOKEN__DEPENDS", 383 }, - { "DEPTH", "PG_QUERY__TOKEN__DEPTH", 384 }, - { "DESC", "PG_QUERY__TOKEN__DESC", 385 }, - { "DETACH", "PG_QUERY__TOKEN__DETACH", 386 }, - { "DICTIONARY", "PG_QUERY__TOKEN__DICTIONARY", 387 }, - { "DISABLE_P", "PG_QUERY__TOKEN__DISABLE_P", 388 }, - { "DISCARD", "PG_QUERY__TOKEN__DISCARD", 389 }, - { "DISTINCT", "PG_QUERY__TOKEN__DISTINCT", 390 }, - { "DO", "PG_QUERY__TOKEN__DO", 391 }, - { "DOCUMENT_P", "PG_QUERY__TOKEN__DOCUMENT_P", 392 }, - { "DOMAIN_P", "PG_QUERY__TOKEN__DOMAIN_P", 393 }, - { "DOUBLE_P", "PG_QUERY__TOKEN__DOUBLE_P", 394 }, - { "DROP", "PG_QUERY__TOKEN__DROP", 395 }, - { "EACH", "PG_QUERY__TOKEN__EACH", 396 }, - { "ELSE", "PG_QUERY__TOKEN__ELSE", 397 }, - { "ENABLE_P", "PG_QUERY__TOKEN__ENABLE_P", 398 }, - { "ENCODING", "PG_QUERY__TOKEN__ENCODING", 399 }, - { "ENCRYPTED", "PG_QUERY__TOKEN__ENCRYPTED", 400 }, - { "END_P", "PG_QUERY__TOKEN__END_P", 401 }, - { "ENUM_P", "PG_QUERY__TOKEN__ENUM_P", 402 }, - { "ESCAPE", "PG_QUERY__TOKEN__ESCAPE", 403 }, - { "EVENT", "PG_QUERY__TOKEN__EVENT", 404 }, - { "EXCEPT", "PG_QUERY__TOKEN__EXCEPT", 405 }, - { "EXCLUDE", "PG_QUERY__TOKEN__EXCLUDE", 406 }, - { "EXCLUDING", "PG_QUERY__TOKEN__EXCLUDING", 407 }, - { "EXCLUSIVE", "PG_QUERY__TOKEN__EXCLUSIVE", 408 }, - { "EXECUTE", "PG_QUERY__TOKEN__EXECUTE", 409 }, - { "EXISTS", "PG_QUERY__TOKEN__EXISTS", 410 }, - { "EXPLAIN", "PG_QUERY__TOKEN__EXPLAIN", 411 }, - { "EXPRESSION", "PG_QUERY__TOKEN__EXPRESSION", 412 }, - { "EXTENSION", "PG_QUERY__TOKEN__EXTENSION", 413 }, - { "EXTERNAL", "PG_QUERY__TOKEN__EXTERNAL", 414 }, - { "EXTRACT", "PG_QUERY__TOKEN__EXTRACT", 415 }, - { "FALSE_P", "PG_QUERY__TOKEN__FALSE_P", 416 }, - { "FAMILY", "PG_QUERY__TOKEN__FAMILY", 417 }, - { "FETCH", "PG_QUERY__TOKEN__FETCH", 418 }, - { "FILTER", "PG_QUERY__TOKEN__FILTER", 419 }, - { "FINALIZE", "PG_QUERY__TOKEN__FINALIZE", 420 }, - { "FIRST_P", "PG_QUERY__TOKEN__FIRST_P", 421 }, - { "FLOAT_P", "PG_QUERY__TOKEN__FLOAT_P", 422 }, - { "FOLLOWING", "PG_QUERY__TOKEN__FOLLOWING", 423 }, - { "FOR", "PG_QUERY__TOKEN__FOR", 424 }, - { "FORCE", "PG_QUERY__TOKEN__FORCE", 425 }, - { "FOREIGN", "PG_QUERY__TOKEN__FOREIGN", 426 }, - { "FORWARD", "PG_QUERY__TOKEN__FORWARD", 427 }, - { "FREEZE", "PG_QUERY__TOKEN__FREEZE", 428 }, - { "FROM", "PG_QUERY__TOKEN__FROM", 429 }, - { "FULL", "PG_QUERY__TOKEN__FULL", 430 }, - { "FUNCTION", "PG_QUERY__TOKEN__FUNCTION", 431 }, - { "FUNCTIONS", "PG_QUERY__TOKEN__FUNCTIONS", 432 }, - { "GENERATED", "PG_QUERY__TOKEN__GENERATED", 433 }, - { "GLOBAL", "PG_QUERY__TOKEN__GLOBAL", 434 }, - { "GRANT", "PG_QUERY__TOKEN__GRANT", 435 }, - { "GRANTED", "PG_QUERY__TOKEN__GRANTED", 436 }, - { "GREATEST", "PG_QUERY__TOKEN__GREATEST", 437 }, - { "GROUP_P", "PG_QUERY__TOKEN__GROUP_P", 438 }, - { "GROUPING", "PG_QUERY__TOKEN__GROUPING", 439 }, - { "GROUPS", "PG_QUERY__TOKEN__GROUPS", 440 }, - { "HANDLER", "PG_QUERY__TOKEN__HANDLER", 441 }, - { "HAVING", "PG_QUERY__TOKEN__HAVING", 442 }, - { "HEADER_P", "PG_QUERY__TOKEN__HEADER_P", 443 }, - { "HOLD", "PG_QUERY__TOKEN__HOLD", 444 }, - { "HOUR_P", "PG_QUERY__TOKEN__HOUR_P", 445 }, - { "IDENTITY_P", "PG_QUERY__TOKEN__IDENTITY_P", 446 }, - { "IF_P", "PG_QUERY__TOKEN__IF_P", 447 }, - { "ILIKE", "PG_QUERY__TOKEN__ILIKE", 448 }, - { "IMMEDIATE", "PG_QUERY__TOKEN__IMMEDIATE", 449 }, - { "IMMUTABLE", "PG_QUERY__TOKEN__IMMUTABLE", 450 }, - { "IMPLICIT_P", "PG_QUERY__TOKEN__IMPLICIT_P", 451 }, - { "IMPORT_P", "PG_QUERY__TOKEN__IMPORT_P", 452 }, - { "IN_P", "PG_QUERY__TOKEN__IN_P", 453 }, - { "INCLUDE", "PG_QUERY__TOKEN__INCLUDE", 454 }, - { "INCLUDING", "PG_QUERY__TOKEN__INCLUDING", 455 }, - { "INCREMENT", "PG_QUERY__TOKEN__INCREMENT", 456 }, - { "INDEX", "PG_QUERY__TOKEN__INDEX", 457 }, - { "INDEXES", "PG_QUERY__TOKEN__INDEXES", 458 }, - { "INHERIT", "PG_QUERY__TOKEN__INHERIT", 459 }, - { "INHERITS", "PG_QUERY__TOKEN__INHERITS", 460 }, - { "INITIALLY", "PG_QUERY__TOKEN__INITIALLY", 461 }, - { "INLINE_P", "PG_QUERY__TOKEN__INLINE_P", 462 }, - { "INNER_P", "PG_QUERY__TOKEN__INNER_P", 463 }, - { "INOUT", "PG_QUERY__TOKEN__INOUT", 464 }, - { "INPUT_P", "PG_QUERY__TOKEN__INPUT_P", 465 }, - { "INSENSITIVE", "PG_QUERY__TOKEN__INSENSITIVE", 466 }, - { "INSERT", "PG_QUERY__TOKEN__INSERT", 467 }, - { "INSTEAD", "PG_QUERY__TOKEN__INSTEAD", 468 }, - { "INT_P", "PG_QUERY__TOKEN__INT_P", 469 }, - { "INTEGER", "PG_QUERY__TOKEN__INTEGER", 470 }, - { "INTERSECT", "PG_QUERY__TOKEN__INTERSECT", 471 }, - { "INTERVAL", "PG_QUERY__TOKEN__INTERVAL", 472 }, - { "INTO", "PG_QUERY__TOKEN__INTO", 473 }, - { "INVOKER", "PG_QUERY__TOKEN__INVOKER", 474 }, - { "IS", "PG_QUERY__TOKEN__IS", 475 }, - { "ISNULL", "PG_QUERY__TOKEN__ISNULL", 476 }, - { "ISOLATION", "PG_QUERY__TOKEN__ISOLATION", 477 }, - { "JOIN", "PG_QUERY__TOKEN__JOIN", 478 }, - { "KEY", "PG_QUERY__TOKEN__KEY", 479 }, - { "LABEL", "PG_QUERY__TOKEN__LABEL", 480 }, - { "LANGUAGE", "PG_QUERY__TOKEN__LANGUAGE", 481 }, - { "LARGE_P", "PG_QUERY__TOKEN__LARGE_P", 482 }, - { "LAST_P", "PG_QUERY__TOKEN__LAST_P", 483 }, - { "LATERAL_P", "PG_QUERY__TOKEN__LATERAL_P", 484 }, - { "LEADING", "PG_QUERY__TOKEN__LEADING", 485 }, - { "LEAKPROOF", "PG_QUERY__TOKEN__LEAKPROOF", 486 }, - { "LEAST", "PG_QUERY__TOKEN__LEAST", 487 }, - { "LEFT", "PG_QUERY__TOKEN__LEFT", 488 }, - { "LEVEL", "PG_QUERY__TOKEN__LEVEL", 489 }, - { "LIKE", "PG_QUERY__TOKEN__LIKE", 490 }, - { "LIMIT", "PG_QUERY__TOKEN__LIMIT", 491 }, - { "LISTEN", "PG_QUERY__TOKEN__LISTEN", 492 }, - { "LOAD", "PG_QUERY__TOKEN__LOAD", 493 }, - { "LOCAL", "PG_QUERY__TOKEN__LOCAL", 494 }, - { "LOCALTIME", "PG_QUERY__TOKEN__LOCALTIME", 495 }, - { "LOCALTIMESTAMP", "PG_QUERY__TOKEN__LOCALTIMESTAMP", 496 }, - { "LOCATION", "PG_QUERY__TOKEN__LOCATION", 497 }, - { "LOCK_P", "PG_QUERY__TOKEN__LOCK_P", 498 }, - { "LOCKED", "PG_QUERY__TOKEN__LOCKED", 499 }, - { "LOGGED", "PG_QUERY__TOKEN__LOGGED", 500 }, - { "MAPPING", "PG_QUERY__TOKEN__MAPPING", 501 }, - { "MATCH", "PG_QUERY__TOKEN__MATCH", 502 }, - { "MATCHED", "PG_QUERY__TOKEN__MATCHED", 503 }, - { "MATERIALIZED", "PG_QUERY__TOKEN__MATERIALIZED", 504 }, - { "MAXVALUE", "PG_QUERY__TOKEN__MAXVALUE", 505 }, - { "MERGE", "PG_QUERY__TOKEN__MERGE", 506 }, - { "METHOD", "PG_QUERY__TOKEN__METHOD", 507 }, - { "MINUTE_P", "PG_QUERY__TOKEN__MINUTE_P", 508 }, - { "MINVALUE", "PG_QUERY__TOKEN__MINVALUE", 509 }, - { "MODE", "PG_QUERY__TOKEN__MODE", 510 }, - { "MONTH_P", "PG_QUERY__TOKEN__MONTH_P", 511 }, - { "MOVE", "PG_QUERY__TOKEN__MOVE", 512 }, - { "NAME_P", "PG_QUERY__TOKEN__NAME_P", 513 }, - { "NAMES", "PG_QUERY__TOKEN__NAMES", 514 }, - { "NATIONAL", "PG_QUERY__TOKEN__NATIONAL", 515 }, - { "NATURAL", "PG_QUERY__TOKEN__NATURAL", 516 }, - { "NCHAR", "PG_QUERY__TOKEN__NCHAR", 517 }, - { "NEW", "PG_QUERY__TOKEN__NEW", 518 }, - { "NEXT", "PG_QUERY__TOKEN__NEXT", 519 }, - { "NFC", "PG_QUERY__TOKEN__NFC", 520 }, - { "NFD", "PG_QUERY__TOKEN__NFD", 521 }, - { "NFKC", "PG_QUERY__TOKEN__NFKC", 522 }, - { "NFKD", "PG_QUERY__TOKEN__NFKD", 523 }, - { "NO", "PG_QUERY__TOKEN__NO", 524 }, - { "NONE", "PG_QUERY__TOKEN__NONE", 525 }, - { "NORMALIZE", "PG_QUERY__TOKEN__NORMALIZE", 526 }, - { "NORMALIZED", "PG_QUERY__TOKEN__NORMALIZED", 527 }, - { "NOT", "PG_QUERY__TOKEN__NOT", 528 }, - { "NOTHING", "PG_QUERY__TOKEN__NOTHING", 529 }, - { "NOTIFY", "PG_QUERY__TOKEN__NOTIFY", 530 }, - { "NOTNULL", "PG_QUERY__TOKEN__NOTNULL", 531 }, - { "NOWAIT", "PG_QUERY__TOKEN__NOWAIT", 532 }, - { "NULL_P", "PG_QUERY__TOKEN__NULL_P", 533 }, - { "NULLIF", "PG_QUERY__TOKEN__NULLIF", 534 }, - { "NULLS_P", "PG_QUERY__TOKEN__NULLS_P", 535 }, - { "NUMERIC", "PG_QUERY__TOKEN__NUMERIC", 536 }, - { "OBJECT_P", "PG_QUERY__TOKEN__OBJECT_P", 537 }, - { "OF", "PG_QUERY__TOKEN__OF", 538 }, - { "OFF", "PG_QUERY__TOKEN__OFF", 539 }, - { "OFFSET", "PG_QUERY__TOKEN__OFFSET", 540 }, - { "OIDS", "PG_QUERY__TOKEN__OIDS", 541 }, - { "OLD", "PG_QUERY__TOKEN__OLD", 542 }, - { "ON", "PG_QUERY__TOKEN__ON", 543 }, - { "ONLY", "PG_QUERY__TOKEN__ONLY", 544 }, - { "OPERATOR", "PG_QUERY__TOKEN__OPERATOR", 545 }, - { "OPTION", "PG_QUERY__TOKEN__OPTION", 546 }, - { "OPTIONS", "PG_QUERY__TOKEN__OPTIONS", 547 }, - { "OR", "PG_QUERY__TOKEN__OR", 548 }, - { "ORDER", "PG_QUERY__TOKEN__ORDER", 549 }, - { "ORDINALITY", "PG_QUERY__TOKEN__ORDINALITY", 550 }, - { "OTHERS", "PG_QUERY__TOKEN__OTHERS", 551 }, - { "OUT_P", "PG_QUERY__TOKEN__OUT_P", 552 }, - { "OUTER_P", "PG_QUERY__TOKEN__OUTER_P", 553 }, - { "OVER", "PG_QUERY__TOKEN__OVER", 554 }, - { "OVERLAPS", "PG_QUERY__TOKEN__OVERLAPS", 555 }, - { "OVERLAY", "PG_QUERY__TOKEN__OVERLAY", 556 }, - { "OVERRIDING", "PG_QUERY__TOKEN__OVERRIDING", 557 }, - { "OWNED", "PG_QUERY__TOKEN__OWNED", 558 }, - { "OWNER", "PG_QUERY__TOKEN__OWNER", 559 }, - { "PARALLEL", "PG_QUERY__TOKEN__PARALLEL", 560 }, - { "PARAMETER", "PG_QUERY__TOKEN__PARAMETER", 561 }, - { "PARSER", "PG_QUERY__TOKEN__PARSER", 562 }, - { "PARTIAL", "PG_QUERY__TOKEN__PARTIAL", 563 }, - { "PARTITION", "PG_QUERY__TOKEN__PARTITION", 564 }, - { "PASSING", "PG_QUERY__TOKEN__PASSING", 565 }, - { "PASSWORD", "PG_QUERY__TOKEN__PASSWORD", 566 }, - { "PLACING", "PG_QUERY__TOKEN__PLACING", 567 }, - { "PLANS", "PG_QUERY__TOKEN__PLANS", 568 }, - { "POLICY", "PG_QUERY__TOKEN__POLICY", 569 }, - { "POSITION", "PG_QUERY__TOKEN__POSITION", 570 }, - { "PRECEDING", "PG_QUERY__TOKEN__PRECEDING", 571 }, - { "PRECISION", "PG_QUERY__TOKEN__PRECISION", 572 }, - { "PRESERVE", "PG_QUERY__TOKEN__PRESERVE", 573 }, - { "PREPARE", "PG_QUERY__TOKEN__PREPARE", 574 }, - { "PREPARED", "PG_QUERY__TOKEN__PREPARED", 575 }, - { "PRIMARY", "PG_QUERY__TOKEN__PRIMARY", 576 }, - { "PRIOR", "PG_QUERY__TOKEN__PRIOR", 577 }, - { "PRIVILEGES", "PG_QUERY__TOKEN__PRIVILEGES", 578 }, - { "PROCEDURAL", "PG_QUERY__TOKEN__PROCEDURAL", 579 }, - { "PROCEDURE", "PG_QUERY__TOKEN__PROCEDURE", 580 }, - { "PROCEDURES", "PG_QUERY__TOKEN__PROCEDURES", 581 }, - { "PROGRAM", "PG_QUERY__TOKEN__PROGRAM", 582 }, - { "PUBLICATION", "PG_QUERY__TOKEN__PUBLICATION", 583 }, - { "QUOTE", "PG_QUERY__TOKEN__QUOTE", 584 }, - { "RANGE", "PG_QUERY__TOKEN__RANGE", 585 }, - { "READ", "PG_QUERY__TOKEN__READ", 586 }, - { "REAL", "PG_QUERY__TOKEN__REAL", 587 }, - { "REASSIGN", "PG_QUERY__TOKEN__REASSIGN", 588 }, - { "RECHECK", "PG_QUERY__TOKEN__RECHECK", 589 }, - { "RECURSIVE", "PG_QUERY__TOKEN__RECURSIVE", 590 }, - { "REF_P", "PG_QUERY__TOKEN__REF_P", 591 }, - { "REFERENCES", "PG_QUERY__TOKEN__REFERENCES", 592 }, - { "REFERENCING", "PG_QUERY__TOKEN__REFERENCING", 593 }, - { "REFRESH", "PG_QUERY__TOKEN__REFRESH", 594 }, - { "REINDEX", "PG_QUERY__TOKEN__REINDEX", 595 }, - { "RELATIVE_P", "PG_QUERY__TOKEN__RELATIVE_P", 596 }, - { "RELEASE", "PG_QUERY__TOKEN__RELEASE", 597 }, - { "RENAME", "PG_QUERY__TOKEN__RENAME", 598 }, - { "REPEATABLE", "PG_QUERY__TOKEN__REPEATABLE", 599 }, - { "REPLACE", "PG_QUERY__TOKEN__REPLACE", 600 }, - { "REPLICA", "PG_QUERY__TOKEN__REPLICA", 601 }, - { "RESET", "PG_QUERY__TOKEN__RESET", 602 }, - { "RESTART", "PG_QUERY__TOKEN__RESTART", 603 }, - { "RESTRICT", "PG_QUERY__TOKEN__RESTRICT", 604 }, - { "RETURN", "PG_QUERY__TOKEN__RETURN", 605 }, - { "RETURNING", "PG_QUERY__TOKEN__RETURNING", 606 }, - { "RETURNS", "PG_QUERY__TOKEN__RETURNS", 607 }, - { "REVOKE", "PG_QUERY__TOKEN__REVOKE", 608 }, - { "RIGHT", "PG_QUERY__TOKEN__RIGHT", 609 }, - { "ROLE", "PG_QUERY__TOKEN__ROLE", 610 }, - { "ROLLBACK", "PG_QUERY__TOKEN__ROLLBACK", 611 }, - { "ROLLUP", "PG_QUERY__TOKEN__ROLLUP", 612 }, - { "ROUTINE", "PG_QUERY__TOKEN__ROUTINE", 613 }, - { "ROUTINES", "PG_QUERY__TOKEN__ROUTINES", 614 }, - { "ROW", "PG_QUERY__TOKEN__ROW", 615 }, - { "ROWS", "PG_QUERY__TOKEN__ROWS", 616 }, - { "RULE", "PG_QUERY__TOKEN__RULE", 617 }, - { "SAVEPOINT", "PG_QUERY__TOKEN__SAVEPOINT", 618 }, - { "SCHEMA", "PG_QUERY__TOKEN__SCHEMA", 619 }, - { "SCHEMAS", "PG_QUERY__TOKEN__SCHEMAS", 620 }, - { "SCROLL", "PG_QUERY__TOKEN__SCROLL", 621 }, - { "SEARCH", "PG_QUERY__TOKEN__SEARCH", 622 }, - { "SECOND_P", "PG_QUERY__TOKEN__SECOND_P", 623 }, - { "SECURITY", "PG_QUERY__TOKEN__SECURITY", 624 }, - { "SELECT", "PG_QUERY__TOKEN__SELECT", 625 }, - { "SEQUENCE", "PG_QUERY__TOKEN__SEQUENCE", 626 }, - { "SEQUENCES", "PG_QUERY__TOKEN__SEQUENCES", 627 }, - { "SERIALIZABLE", "PG_QUERY__TOKEN__SERIALIZABLE", 628 }, - { "SERVER", "PG_QUERY__TOKEN__SERVER", 629 }, - { "SESSION", "PG_QUERY__TOKEN__SESSION", 630 }, - { "SESSION_USER", "PG_QUERY__TOKEN__SESSION_USER", 631 }, - { "SET", "PG_QUERY__TOKEN__SET", 632 }, - { "SETS", "PG_QUERY__TOKEN__SETS", 633 }, - { "SETOF", "PG_QUERY__TOKEN__SETOF", 634 }, - { "SHARE", "PG_QUERY__TOKEN__SHARE", 635 }, - { "SHOW", "PG_QUERY__TOKEN__SHOW", 636 }, - { "SIMILAR", "PG_QUERY__TOKEN__SIMILAR", 637 }, - { "SIMPLE", "PG_QUERY__TOKEN__SIMPLE", 638 }, - { "SKIP", "PG_QUERY__TOKEN__SKIP", 639 }, - { "SMALLINT", "PG_QUERY__TOKEN__SMALLINT", 640 }, - { "SNAPSHOT", "PG_QUERY__TOKEN__SNAPSHOT", 641 }, - { "SOME", "PG_QUERY__TOKEN__SOME", 642 }, - { "SQL_P", "PG_QUERY__TOKEN__SQL_P", 643 }, - { "STABLE", "PG_QUERY__TOKEN__STABLE", 644 }, - { "STANDALONE_P", "PG_QUERY__TOKEN__STANDALONE_P", 645 }, - { "START", "PG_QUERY__TOKEN__START", 646 }, - { "STATEMENT", "PG_QUERY__TOKEN__STATEMENT", 647 }, - { "STATISTICS", "PG_QUERY__TOKEN__STATISTICS", 648 }, - { "STDIN", "PG_QUERY__TOKEN__STDIN", 649 }, - { "STDOUT", "PG_QUERY__TOKEN__STDOUT", 650 }, - { "STORAGE", "PG_QUERY__TOKEN__STORAGE", 651 }, - { "STORED", "PG_QUERY__TOKEN__STORED", 652 }, - { "STRICT_P", "PG_QUERY__TOKEN__STRICT_P", 653 }, - { "STRIP_P", "PG_QUERY__TOKEN__STRIP_P", 654 }, - { "SUBSCRIPTION", "PG_QUERY__TOKEN__SUBSCRIPTION", 655 }, - { "SUBSTRING", "PG_QUERY__TOKEN__SUBSTRING", 656 }, - { "SUPPORT", "PG_QUERY__TOKEN__SUPPORT", 657 }, - { "SYMMETRIC", "PG_QUERY__TOKEN__SYMMETRIC", 658 }, - { "SYSID", "PG_QUERY__TOKEN__SYSID", 659 }, - { "SYSTEM_P", "PG_QUERY__TOKEN__SYSTEM_P", 660 }, - { "TABLE", "PG_QUERY__TOKEN__TABLE", 661 }, - { "TABLES", "PG_QUERY__TOKEN__TABLES", 662 }, - { "TABLESAMPLE", "PG_QUERY__TOKEN__TABLESAMPLE", 663 }, - { "TABLESPACE", "PG_QUERY__TOKEN__TABLESPACE", 664 }, - { "TEMP", "PG_QUERY__TOKEN__TEMP", 665 }, - { "TEMPLATE", "PG_QUERY__TOKEN__TEMPLATE", 666 }, - { "TEMPORARY", "PG_QUERY__TOKEN__TEMPORARY", 667 }, - { "TEXT_P", "PG_QUERY__TOKEN__TEXT_P", 668 }, - { "THEN", "PG_QUERY__TOKEN__THEN", 669 }, - { "TIES", "PG_QUERY__TOKEN__TIES", 670 }, - { "TIME", "PG_QUERY__TOKEN__TIME", 671 }, - { "TIMESTAMP", "PG_QUERY__TOKEN__TIMESTAMP", 672 }, - { "TO", "PG_QUERY__TOKEN__TO", 673 }, - { "TRAILING", "PG_QUERY__TOKEN__TRAILING", 674 }, - { "TRANSACTION", "PG_QUERY__TOKEN__TRANSACTION", 675 }, - { "TRANSFORM", "PG_QUERY__TOKEN__TRANSFORM", 676 }, - { "TREAT", "PG_QUERY__TOKEN__TREAT", 677 }, - { "TRIGGER", "PG_QUERY__TOKEN__TRIGGER", 678 }, - { "TRIM", "PG_QUERY__TOKEN__TRIM", 679 }, - { "TRUE_P", "PG_QUERY__TOKEN__TRUE_P", 680 }, - { "TRUNCATE", "PG_QUERY__TOKEN__TRUNCATE", 681 }, - { "TRUSTED", "PG_QUERY__TOKEN__TRUSTED", 682 }, - { "TYPE_P", "PG_QUERY__TOKEN__TYPE_P", 683 }, - { "TYPES_P", "PG_QUERY__TOKEN__TYPES_P", 684 }, - { "UESCAPE", "PG_QUERY__TOKEN__UESCAPE", 685 }, - { "UNBOUNDED", "PG_QUERY__TOKEN__UNBOUNDED", 686 }, - { "UNCOMMITTED", "PG_QUERY__TOKEN__UNCOMMITTED", 687 }, - { "UNENCRYPTED", "PG_QUERY__TOKEN__UNENCRYPTED", 688 }, - { "UNION", "PG_QUERY__TOKEN__UNION", 689 }, - { "UNIQUE", "PG_QUERY__TOKEN__UNIQUE", 690 }, - { "UNKNOWN", "PG_QUERY__TOKEN__UNKNOWN", 691 }, - { "UNLISTEN", "PG_QUERY__TOKEN__UNLISTEN", 692 }, - { "UNLOGGED", "PG_QUERY__TOKEN__UNLOGGED", 693 }, - { "UNTIL", "PG_QUERY__TOKEN__UNTIL", 694 }, - { "UPDATE", "PG_QUERY__TOKEN__UPDATE", 695 }, - { "USER", "PG_QUERY__TOKEN__USER", 696 }, - { "USING", "PG_QUERY__TOKEN__USING", 697 }, - { "VACUUM", "PG_QUERY__TOKEN__VACUUM", 698 }, - { "VALID", "PG_QUERY__TOKEN__VALID", 699 }, - { "VALIDATE", "PG_QUERY__TOKEN__VALIDATE", 700 }, - { "VALIDATOR", "PG_QUERY__TOKEN__VALIDATOR", 701 }, - { "VALUE_P", "PG_QUERY__TOKEN__VALUE_P", 702 }, - { "VALUES", "PG_QUERY__TOKEN__VALUES", 703 }, - { "VARCHAR", "PG_QUERY__TOKEN__VARCHAR", 704 }, - { "VARIADIC", "PG_QUERY__TOKEN__VARIADIC", 705 }, - { "VARYING", "PG_QUERY__TOKEN__VARYING", 706 }, - { "VERBOSE", "PG_QUERY__TOKEN__VERBOSE", 707 }, - { "VERSION_P", "PG_QUERY__TOKEN__VERSION_P", 708 }, - { "VIEW", "PG_QUERY__TOKEN__VIEW", 709 }, - { "VIEWS", "PG_QUERY__TOKEN__VIEWS", 710 }, - { "VOLATILE", "PG_QUERY__TOKEN__VOLATILE", 711 }, - { "WHEN", "PG_QUERY__TOKEN__WHEN", 712 }, - { "WHERE", "PG_QUERY__TOKEN__WHERE", 713 }, - { "WHITESPACE_P", "PG_QUERY__TOKEN__WHITESPACE_P", 714 }, - { "WINDOW", "PG_QUERY__TOKEN__WINDOW", 715 }, - { "WITH", "PG_QUERY__TOKEN__WITH", 716 }, - { "WITHIN", "PG_QUERY__TOKEN__WITHIN", 717 }, - { "WITHOUT", "PG_QUERY__TOKEN__WITHOUT", 718 }, - { "WORK", "PG_QUERY__TOKEN__WORK", 719 }, - { "WRAPPER", "PG_QUERY__TOKEN__WRAPPER", 720 }, - { "WRITE", "PG_QUERY__TOKEN__WRITE", 721 }, - { "XML_P", "PG_QUERY__TOKEN__XML_P", 722 }, - { "XMLATTRIBUTES", "PG_QUERY__TOKEN__XMLATTRIBUTES", 723 }, - { "XMLCONCAT", "PG_QUERY__TOKEN__XMLCONCAT", 724 }, - { "XMLELEMENT", "PG_QUERY__TOKEN__XMLELEMENT", 725 }, - { "XMLEXISTS", "PG_QUERY__TOKEN__XMLEXISTS", 726 }, - { "XMLFOREST", "PG_QUERY__TOKEN__XMLFOREST", 727 }, - { "XMLNAMESPACES", "PG_QUERY__TOKEN__XMLNAMESPACES", 728 }, - { "XMLPARSE", "PG_QUERY__TOKEN__XMLPARSE", 729 }, - { "XMLPI", "PG_QUERY__TOKEN__XMLPI", 730 }, - { "XMLROOT", "PG_QUERY__TOKEN__XMLROOT", 731 }, - { "XMLSERIALIZE", "PG_QUERY__TOKEN__XMLSERIALIZE", 732 }, - { "XMLTABLE", "PG_QUERY__TOKEN__XMLTABLE", 733 }, - { "YEAR_P", "PG_QUERY__TOKEN__YEAR_P", 734 }, - { "YES_P", "PG_QUERY__TOKEN__YES_P", 735 }, - { "ZONE", "PG_QUERY__TOKEN__ZONE", 736 }, - { "NOT_LA", "PG_QUERY__TOKEN__NOT_LA", 737 }, - { "NULLS_LA", "PG_QUERY__TOKEN__NULLS_LA", 738 }, - { "WITH_LA", "PG_QUERY__TOKEN__WITH_LA", 739 }, - { "MODE_TYPE_NAME", "PG_QUERY__TOKEN__MODE_TYPE_NAME", 740 }, - { "MODE_PLPGSQL_EXPR", "PG_QUERY__TOKEN__MODE_PLPGSQL_EXPR", 741 }, - { "MODE_PLPGSQL_ASSIGN1", "PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN1", 742 }, - { "MODE_PLPGSQL_ASSIGN2", "PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN2", 743 }, - { "MODE_PLPGSQL_ASSIGN3", "PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN3", 744 }, - { "UMINUS", "PG_QUERY__TOKEN__UMINUS", 745 }, + { "ABSENT", "PG_QUERY__TOKEN__ABSENT", 278 }, + { "ABSOLUTE_P", "PG_QUERY__TOKEN__ABSOLUTE_P", 279 }, + { "ACCESS", "PG_QUERY__TOKEN__ACCESS", 280 }, + { "ACTION", "PG_QUERY__TOKEN__ACTION", 281 }, + { "ADD_P", "PG_QUERY__TOKEN__ADD_P", 282 }, + { "ADMIN", "PG_QUERY__TOKEN__ADMIN", 283 }, + { "AFTER", "PG_QUERY__TOKEN__AFTER", 284 }, + { "AGGREGATE", "PG_QUERY__TOKEN__AGGREGATE", 285 }, + { "ALL", "PG_QUERY__TOKEN__ALL", 286 }, + { "ALSO", "PG_QUERY__TOKEN__ALSO", 287 }, + { "ALTER", "PG_QUERY__TOKEN__ALTER", 288 }, + { "ALWAYS", "PG_QUERY__TOKEN__ALWAYS", 289 }, + { "ANALYSE", "PG_QUERY__TOKEN__ANALYSE", 290 }, + { "ANALYZE", "PG_QUERY__TOKEN__ANALYZE", 291 }, + { "AND", "PG_QUERY__TOKEN__AND", 292 }, + { "ANY", "PG_QUERY__TOKEN__ANY", 293 }, + { "ARRAY", "PG_QUERY__TOKEN__ARRAY", 294 }, + { "AS", "PG_QUERY__TOKEN__AS", 295 }, + { "ASC", "PG_QUERY__TOKEN__ASC", 296 }, + { "ASENSITIVE", "PG_QUERY__TOKEN__ASENSITIVE", 297 }, + { "ASSERTION", "PG_QUERY__TOKEN__ASSERTION", 298 }, + { "ASSIGNMENT", "PG_QUERY__TOKEN__ASSIGNMENT", 299 }, + { "ASYMMETRIC", "PG_QUERY__TOKEN__ASYMMETRIC", 300 }, + { "ATOMIC", "PG_QUERY__TOKEN__ATOMIC", 301 }, + { "AT", "PG_QUERY__TOKEN__AT", 302 }, + { "ATTACH", "PG_QUERY__TOKEN__ATTACH", 303 }, + { "ATTRIBUTE", "PG_QUERY__TOKEN__ATTRIBUTE", 304 }, + { "AUTHORIZATION", "PG_QUERY__TOKEN__AUTHORIZATION", 305 }, + { "BACKWARD", "PG_QUERY__TOKEN__BACKWARD", 306 }, + { "BEFORE", "PG_QUERY__TOKEN__BEFORE", 307 }, + { "BEGIN_P", "PG_QUERY__TOKEN__BEGIN_P", 308 }, + { "BETWEEN", "PG_QUERY__TOKEN__BETWEEN", 309 }, + { "BIGINT", "PG_QUERY__TOKEN__BIGINT", 310 }, + { "BINARY", "PG_QUERY__TOKEN__BINARY", 311 }, + { "BIT", "PG_QUERY__TOKEN__BIT", 312 }, + { "BOOLEAN_P", "PG_QUERY__TOKEN__BOOLEAN_P", 313 }, + { "BOTH", "PG_QUERY__TOKEN__BOTH", 314 }, + { "BREADTH", "PG_QUERY__TOKEN__BREADTH", 315 }, + { "BY", "PG_QUERY__TOKEN__BY", 316 }, + { "CACHE", "PG_QUERY__TOKEN__CACHE", 317 }, + { "CALL", "PG_QUERY__TOKEN__CALL", 318 }, + { "CALLED", "PG_QUERY__TOKEN__CALLED", 319 }, + { "CASCADE", "PG_QUERY__TOKEN__CASCADE", 320 }, + { "CASCADED", "PG_QUERY__TOKEN__CASCADED", 321 }, + { "CASE", "PG_QUERY__TOKEN__CASE", 322 }, + { "CAST", "PG_QUERY__TOKEN__CAST", 323 }, + { "CATALOG_P", "PG_QUERY__TOKEN__CATALOG_P", 324 }, + { "CHAIN", "PG_QUERY__TOKEN__CHAIN", 325 }, + { "CHAR_P", "PG_QUERY__TOKEN__CHAR_P", 326 }, + { "CHARACTER", "PG_QUERY__TOKEN__CHARACTER", 327 }, + { "CHARACTERISTICS", "PG_QUERY__TOKEN__CHARACTERISTICS", 328 }, + { "CHECK", "PG_QUERY__TOKEN__CHECK", 329 }, + { "CHECKPOINT", "PG_QUERY__TOKEN__CHECKPOINT", 330 }, + { "CLASS", "PG_QUERY__TOKEN__CLASS", 331 }, + { "CLOSE", "PG_QUERY__TOKEN__CLOSE", 332 }, + { "CLUSTER", "PG_QUERY__TOKEN__CLUSTER", 333 }, + { "COALESCE", "PG_QUERY__TOKEN__COALESCE", 334 }, + { "COLLATE", "PG_QUERY__TOKEN__COLLATE", 335 }, + { "COLLATION", "PG_QUERY__TOKEN__COLLATION", 336 }, + { "COLUMN", "PG_QUERY__TOKEN__COLUMN", 337 }, + { "COLUMNS", "PG_QUERY__TOKEN__COLUMNS", 338 }, + { "COMMENT", "PG_QUERY__TOKEN__COMMENT", 339 }, + { "COMMENTS", "PG_QUERY__TOKEN__COMMENTS", 340 }, + { "COMMIT", "PG_QUERY__TOKEN__COMMIT", 341 }, + { "COMMITTED", "PG_QUERY__TOKEN__COMMITTED", 342 }, + { "COMPRESSION", "PG_QUERY__TOKEN__COMPRESSION", 343 }, + { "CONCURRENTLY", "PG_QUERY__TOKEN__CONCURRENTLY", 344 }, + { "CONFIGURATION", "PG_QUERY__TOKEN__CONFIGURATION", 345 }, + { "CONFLICT", "PG_QUERY__TOKEN__CONFLICT", 346 }, + { "CONNECTION", "PG_QUERY__TOKEN__CONNECTION", 347 }, + { "CONSTRAINT", "PG_QUERY__TOKEN__CONSTRAINT", 348 }, + { "CONSTRAINTS", "PG_QUERY__TOKEN__CONSTRAINTS", 349 }, + { "CONTENT_P", "PG_QUERY__TOKEN__CONTENT_P", 350 }, + { "CONTINUE_P", "PG_QUERY__TOKEN__CONTINUE_P", 351 }, + { "CONVERSION_P", "PG_QUERY__TOKEN__CONVERSION_P", 352 }, + { "COPY", "PG_QUERY__TOKEN__COPY", 353 }, + { "COST", "PG_QUERY__TOKEN__COST", 354 }, + { "CREATE", "PG_QUERY__TOKEN__CREATE", 355 }, + { "CROSS", "PG_QUERY__TOKEN__CROSS", 356 }, + { "CSV", "PG_QUERY__TOKEN__CSV", 357 }, + { "CUBE", "PG_QUERY__TOKEN__CUBE", 358 }, + { "CURRENT_P", "PG_QUERY__TOKEN__CURRENT_P", 359 }, + { "CURRENT_CATALOG", "PG_QUERY__TOKEN__CURRENT_CATALOG", 360 }, + { "CURRENT_DATE", "PG_QUERY__TOKEN__CURRENT_DATE", 361 }, + { "CURRENT_ROLE", "PG_QUERY__TOKEN__CURRENT_ROLE", 362 }, + { "CURRENT_SCHEMA", "PG_QUERY__TOKEN__CURRENT_SCHEMA", 363 }, + { "CURRENT_TIME", "PG_QUERY__TOKEN__CURRENT_TIME", 364 }, + { "CURRENT_TIMESTAMP", "PG_QUERY__TOKEN__CURRENT_TIMESTAMP", 365 }, + { "CURRENT_USER", "PG_QUERY__TOKEN__CURRENT_USER", 366 }, + { "CURSOR", "PG_QUERY__TOKEN__CURSOR", 367 }, + { "CYCLE", "PG_QUERY__TOKEN__CYCLE", 368 }, + { "DATA_P", "PG_QUERY__TOKEN__DATA_P", 369 }, + { "DATABASE", "PG_QUERY__TOKEN__DATABASE", 370 }, + { "DAY_P", "PG_QUERY__TOKEN__DAY_P", 371 }, + { "DEALLOCATE", "PG_QUERY__TOKEN__DEALLOCATE", 372 }, + { "DEC", "PG_QUERY__TOKEN__DEC", 373 }, + { "DECIMAL_P", "PG_QUERY__TOKEN__DECIMAL_P", 374 }, + { "DECLARE", "PG_QUERY__TOKEN__DECLARE", 375 }, + { "DEFAULT", "PG_QUERY__TOKEN__DEFAULT", 376 }, + { "DEFAULTS", "PG_QUERY__TOKEN__DEFAULTS", 377 }, + { "DEFERRABLE", "PG_QUERY__TOKEN__DEFERRABLE", 378 }, + { "DEFERRED", "PG_QUERY__TOKEN__DEFERRED", 379 }, + { "DEFINER", "PG_QUERY__TOKEN__DEFINER", 380 }, + { "DELETE_P", "PG_QUERY__TOKEN__DELETE_P", 381 }, + { "DELIMITER", "PG_QUERY__TOKEN__DELIMITER", 382 }, + { "DELIMITERS", "PG_QUERY__TOKEN__DELIMITERS", 383 }, + { "DEPENDS", "PG_QUERY__TOKEN__DEPENDS", 384 }, + { "DEPTH", "PG_QUERY__TOKEN__DEPTH", 385 }, + { "DESC", "PG_QUERY__TOKEN__DESC", 386 }, + { "DETACH", "PG_QUERY__TOKEN__DETACH", 387 }, + { "DICTIONARY", "PG_QUERY__TOKEN__DICTIONARY", 388 }, + { "DISABLE_P", "PG_QUERY__TOKEN__DISABLE_P", 389 }, + { "DISCARD", "PG_QUERY__TOKEN__DISCARD", 390 }, + { "DISTINCT", "PG_QUERY__TOKEN__DISTINCT", 391 }, + { "DO", "PG_QUERY__TOKEN__DO", 392 }, + { "DOCUMENT_P", "PG_QUERY__TOKEN__DOCUMENT_P", 393 }, + { "DOMAIN_P", "PG_QUERY__TOKEN__DOMAIN_P", 394 }, + { "DOUBLE_P", "PG_QUERY__TOKEN__DOUBLE_P", 395 }, + { "DROP", "PG_QUERY__TOKEN__DROP", 396 }, + { "EACH", "PG_QUERY__TOKEN__EACH", 397 }, + { "ELSE", "PG_QUERY__TOKEN__ELSE", 398 }, + { "ENABLE_P", "PG_QUERY__TOKEN__ENABLE_P", 399 }, + { "ENCODING", "PG_QUERY__TOKEN__ENCODING", 400 }, + { "ENCRYPTED", "PG_QUERY__TOKEN__ENCRYPTED", 401 }, + { "END_P", "PG_QUERY__TOKEN__END_P", 402 }, + { "ENUM_P", "PG_QUERY__TOKEN__ENUM_P", 403 }, + { "ESCAPE", "PG_QUERY__TOKEN__ESCAPE", 404 }, + { "EVENT", "PG_QUERY__TOKEN__EVENT", 405 }, + { "EXCEPT", "PG_QUERY__TOKEN__EXCEPT", 406 }, + { "EXCLUDE", "PG_QUERY__TOKEN__EXCLUDE", 407 }, + { "EXCLUDING", "PG_QUERY__TOKEN__EXCLUDING", 408 }, + { "EXCLUSIVE", "PG_QUERY__TOKEN__EXCLUSIVE", 409 }, + { "EXECUTE", "PG_QUERY__TOKEN__EXECUTE", 410 }, + { "EXISTS", "PG_QUERY__TOKEN__EXISTS", 411 }, + { "EXPLAIN", "PG_QUERY__TOKEN__EXPLAIN", 412 }, + { "EXPRESSION", "PG_QUERY__TOKEN__EXPRESSION", 413 }, + { "EXTENSION", "PG_QUERY__TOKEN__EXTENSION", 414 }, + { "EXTERNAL", "PG_QUERY__TOKEN__EXTERNAL", 415 }, + { "EXTRACT", "PG_QUERY__TOKEN__EXTRACT", 416 }, + { "FALSE_P", "PG_QUERY__TOKEN__FALSE_P", 417 }, + { "FAMILY", "PG_QUERY__TOKEN__FAMILY", 418 }, + { "FETCH", "PG_QUERY__TOKEN__FETCH", 419 }, + { "FILTER", "PG_QUERY__TOKEN__FILTER", 420 }, + { "FINALIZE", "PG_QUERY__TOKEN__FINALIZE", 421 }, + { "FIRST_P", "PG_QUERY__TOKEN__FIRST_P", 422 }, + { "FLOAT_P", "PG_QUERY__TOKEN__FLOAT_P", 423 }, + { "FOLLOWING", "PG_QUERY__TOKEN__FOLLOWING", 424 }, + { "FOR", "PG_QUERY__TOKEN__FOR", 425 }, + { "FORCE", "PG_QUERY__TOKEN__FORCE", 426 }, + { "FOREIGN", "PG_QUERY__TOKEN__FOREIGN", 427 }, + { "FORMAT", "PG_QUERY__TOKEN__FORMAT", 428 }, + { "FORWARD", "PG_QUERY__TOKEN__FORWARD", 429 }, + { "FREEZE", "PG_QUERY__TOKEN__FREEZE", 430 }, + { "FROM", "PG_QUERY__TOKEN__FROM", 431 }, + { "FULL", "PG_QUERY__TOKEN__FULL", 432 }, + { "FUNCTION", "PG_QUERY__TOKEN__FUNCTION", 433 }, + { "FUNCTIONS", "PG_QUERY__TOKEN__FUNCTIONS", 434 }, + { "GENERATED", "PG_QUERY__TOKEN__GENERATED", 435 }, + { "GLOBAL", "PG_QUERY__TOKEN__GLOBAL", 436 }, + { "GRANT", "PG_QUERY__TOKEN__GRANT", 437 }, + { "GRANTED", "PG_QUERY__TOKEN__GRANTED", 438 }, + { "GREATEST", "PG_QUERY__TOKEN__GREATEST", 439 }, + { "GROUP_P", "PG_QUERY__TOKEN__GROUP_P", 440 }, + { "GROUPING", "PG_QUERY__TOKEN__GROUPING", 441 }, + { "GROUPS", "PG_QUERY__TOKEN__GROUPS", 442 }, + { "HANDLER", "PG_QUERY__TOKEN__HANDLER", 443 }, + { "HAVING", "PG_QUERY__TOKEN__HAVING", 444 }, + { "HEADER_P", "PG_QUERY__TOKEN__HEADER_P", 445 }, + { "HOLD", "PG_QUERY__TOKEN__HOLD", 446 }, + { "HOUR_P", "PG_QUERY__TOKEN__HOUR_P", 447 }, + { "IDENTITY_P", "PG_QUERY__TOKEN__IDENTITY_P", 448 }, + { "IF_P", "PG_QUERY__TOKEN__IF_P", 449 }, + { "ILIKE", "PG_QUERY__TOKEN__ILIKE", 450 }, + { "IMMEDIATE", "PG_QUERY__TOKEN__IMMEDIATE", 451 }, + { "IMMUTABLE", "PG_QUERY__TOKEN__IMMUTABLE", 452 }, + { "IMPLICIT_P", "PG_QUERY__TOKEN__IMPLICIT_P", 453 }, + { "IMPORT_P", "PG_QUERY__TOKEN__IMPORT_P", 454 }, + { "IN_P", "PG_QUERY__TOKEN__IN_P", 455 }, + { "INCLUDE", "PG_QUERY__TOKEN__INCLUDE", 456 }, + { "INCLUDING", "PG_QUERY__TOKEN__INCLUDING", 457 }, + { "INCREMENT", "PG_QUERY__TOKEN__INCREMENT", 458 }, + { "INDENT", "PG_QUERY__TOKEN__INDENT", 459 }, + { "INDEX", "PG_QUERY__TOKEN__INDEX", 460 }, + { "INDEXES", "PG_QUERY__TOKEN__INDEXES", 461 }, + { "INHERIT", "PG_QUERY__TOKEN__INHERIT", 462 }, + { "INHERITS", "PG_QUERY__TOKEN__INHERITS", 463 }, + { "INITIALLY", "PG_QUERY__TOKEN__INITIALLY", 464 }, + { "INLINE_P", "PG_QUERY__TOKEN__INLINE_P", 465 }, + { "INNER_P", "PG_QUERY__TOKEN__INNER_P", 466 }, + { "INOUT", "PG_QUERY__TOKEN__INOUT", 467 }, + { "INPUT_P", "PG_QUERY__TOKEN__INPUT_P", 468 }, + { "INSENSITIVE", "PG_QUERY__TOKEN__INSENSITIVE", 469 }, + { "INSERT", "PG_QUERY__TOKEN__INSERT", 470 }, + { "INSTEAD", "PG_QUERY__TOKEN__INSTEAD", 471 }, + { "INT_P", "PG_QUERY__TOKEN__INT_P", 472 }, + { "INTEGER", "PG_QUERY__TOKEN__INTEGER", 473 }, + { "INTERSECT", "PG_QUERY__TOKEN__INTERSECT", 474 }, + { "INTERVAL", "PG_QUERY__TOKEN__INTERVAL", 475 }, + { "INTO", "PG_QUERY__TOKEN__INTO", 476 }, + { "INVOKER", "PG_QUERY__TOKEN__INVOKER", 477 }, + { "IS", "PG_QUERY__TOKEN__IS", 478 }, + { "ISNULL", "PG_QUERY__TOKEN__ISNULL", 479 }, + { "ISOLATION", "PG_QUERY__TOKEN__ISOLATION", 480 }, + { "JOIN", "PG_QUERY__TOKEN__JOIN", 481 }, + { "JSON", "PG_QUERY__TOKEN__JSON", 482 }, + { "JSON_ARRAY", "PG_QUERY__TOKEN__JSON_ARRAY", 483 }, + { "JSON_ARRAYAGG", "PG_QUERY__TOKEN__JSON_ARRAYAGG", 484 }, + { "JSON_OBJECT", "PG_QUERY__TOKEN__JSON_OBJECT", 485 }, + { "JSON_OBJECTAGG", "PG_QUERY__TOKEN__JSON_OBJECTAGG", 486 }, + { "KEY", "PG_QUERY__TOKEN__KEY", 487 }, + { "KEYS", "PG_QUERY__TOKEN__KEYS", 488 }, + { "LABEL", "PG_QUERY__TOKEN__LABEL", 489 }, + { "LANGUAGE", "PG_QUERY__TOKEN__LANGUAGE", 490 }, + { "LARGE_P", "PG_QUERY__TOKEN__LARGE_P", 491 }, + { "LAST_P", "PG_QUERY__TOKEN__LAST_P", 492 }, + { "LATERAL_P", "PG_QUERY__TOKEN__LATERAL_P", 493 }, + { "LEADING", "PG_QUERY__TOKEN__LEADING", 494 }, + { "LEAKPROOF", "PG_QUERY__TOKEN__LEAKPROOF", 495 }, + { "LEAST", "PG_QUERY__TOKEN__LEAST", 496 }, + { "LEFT", "PG_QUERY__TOKEN__LEFT", 497 }, + { "LEVEL", "PG_QUERY__TOKEN__LEVEL", 498 }, + { "LIKE", "PG_QUERY__TOKEN__LIKE", 499 }, + { "LIMIT", "PG_QUERY__TOKEN__LIMIT", 500 }, + { "LISTEN", "PG_QUERY__TOKEN__LISTEN", 501 }, + { "LOAD", "PG_QUERY__TOKEN__LOAD", 502 }, + { "LOCAL", "PG_QUERY__TOKEN__LOCAL", 503 }, + { "LOCALTIME", "PG_QUERY__TOKEN__LOCALTIME", 504 }, + { "LOCALTIMESTAMP", "PG_QUERY__TOKEN__LOCALTIMESTAMP", 505 }, + { "LOCATION", "PG_QUERY__TOKEN__LOCATION", 506 }, + { "LOCK_P", "PG_QUERY__TOKEN__LOCK_P", 507 }, + { "LOCKED", "PG_QUERY__TOKEN__LOCKED", 508 }, + { "LOGGED", "PG_QUERY__TOKEN__LOGGED", 509 }, + { "MAPPING", "PG_QUERY__TOKEN__MAPPING", 510 }, + { "MATCH", "PG_QUERY__TOKEN__MATCH", 511 }, + { "MATCHED", "PG_QUERY__TOKEN__MATCHED", 512 }, + { "MATERIALIZED", "PG_QUERY__TOKEN__MATERIALIZED", 513 }, + { "MAXVALUE", "PG_QUERY__TOKEN__MAXVALUE", 514 }, + { "MERGE", "PG_QUERY__TOKEN__MERGE", 515 }, + { "METHOD", "PG_QUERY__TOKEN__METHOD", 516 }, + { "MINUTE_P", "PG_QUERY__TOKEN__MINUTE_P", 517 }, + { "MINVALUE", "PG_QUERY__TOKEN__MINVALUE", 518 }, + { "MODE", "PG_QUERY__TOKEN__MODE", 519 }, + { "MONTH_P", "PG_QUERY__TOKEN__MONTH_P", 520 }, + { "MOVE", "PG_QUERY__TOKEN__MOVE", 521 }, + { "NAME_P", "PG_QUERY__TOKEN__NAME_P", 522 }, + { "NAMES", "PG_QUERY__TOKEN__NAMES", 523 }, + { "NATIONAL", "PG_QUERY__TOKEN__NATIONAL", 524 }, + { "NATURAL", "PG_QUERY__TOKEN__NATURAL", 525 }, + { "NCHAR", "PG_QUERY__TOKEN__NCHAR", 526 }, + { "NEW", "PG_QUERY__TOKEN__NEW", 527 }, + { "NEXT", "PG_QUERY__TOKEN__NEXT", 528 }, + { "NFC", "PG_QUERY__TOKEN__NFC", 529 }, + { "NFD", "PG_QUERY__TOKEN__NFD", 530 }, + { "NFKC", "PG_QUERY__TOKEN__NFKC", 531 }, + { "NFKD", "PG_QUERY__TOKEN__NFKD", 532 }, + { "NO", "PG_QUERY__TOKEN__NO", 533 }, + { "NONE", "PG_QUERY__TOKEN__NONE", 534 }, + { "NORMALIZE", "PG_QUERY__TOKEN__NORMALIZE", 535 }, + { "NORMALIZED", "PG_QUERY__TOKEN__NORMALIZED", 536 }, + { "NOT", "PG_QUERY__TOKEN__NOT", 537 }, + { "NOTHING", "PG_QUERY__TOKEN__NOTHING", 538 }, + { "NOTIFY", "PG_QUERY__TOKEN__NOTIFY", 539 }, + { "NOTNULL", "PG_QUERY__TOKEN__NOTNULL", 540 }, + { "NOWAIT", "PG_QUERY__TOKEN__NOWAIT", 541 }, + { "NULL_P", "PG_QUERY__TOKEN__NULL_P", 542 }, + { "NULLIF", "PG_QUERY__TOKEN__NULLIF", 543 }, + { "NULLS_P", "PG_QUERY__TOKEN__NULLS_P", 544 }, + { "NUMERIC", "PG_QUERY__TOKEN__NUMERIC", 545 }, + { "OBJECT_P", "PG_QUERY__TOKEN__OBJECT_P", 546 }, + { "OF", "PG_QUERY__TOKEN__OF", 547 }, + { "OFF", "PG_QUERY__TOKEN__OFF", 548 }, + { "OFFSET", "PG_QUERY__TOKEN__OFFSET", 549 }, + { "OIDS", "PG_QUERY__TOKEN__OIDS", 550 }, + { "OLD", "PG_QUERY__TOKEN__OLD", 551 }, + { "ON", "PG_QUERY__TOKEN__ON", 552 }, + { "ONLY", "PG_QUERY__TOKEN__ONLY", 553 }, + { "OPERATOR", "PG_QUERY__TOKEN__OPERATOR", 554 }, + { "OPTION", "PG_QUERY__TOKEN__OPTION", 555 }, + { "OPTIONS", "PG_QUERY__TOKEN__OPTIONS", 556 }, + { "OR", "PG_QUERY__TOKEN__OR", 557 }, + { "ORDER", "PG_QUERY__TOKEN__ORDER", 558 }, + { "ORDINALITY", "PG_QUERY__TOKEN__ORDINALITY", 559 }, + { "OTHERS", "PG_QUERY__TOKEN__OTHERS", 560 }, + { "OUT_P", "PG_QUERY__TOKEN__OUT_P", 561 }, + { "OUTER_P", "PG_QUERY__TOKEN__OUTER_P", 562 }, + { "OVER", "PG_QUERY__TOKEN__OVER", 563 }, + { "OVERLAPS", "PG_QUERY__TOKEN__OVERLAPS", 564 }, + { "OVERLAY", "PG_QUERY__TOKEN__OVERLAY", 565 }, + { "OVERRIDING", "PG_QUERY__TOKEN__OVERRIDING", 566 }, + { "OWNED", "PG_QUERY__TOKEN__OWNED", 567 }, + { "OWNER", "PG_QUERY__TOKEN__OWNER", 568 }, + { "PARALLEL", "PG_QUERY__TOKEN__PARALLEL", 569 }, + { "PARAMETER", "PG_QUERY__TOKEN__PARAMETER", 570 }, + { "PARSER", "PG_QUERY__TOKEN__PARSER", 571 }, + { "PARTIAL", "PG_QUERY__TOKEN__PARTIAL", 572 }, + { "PARTITION", "PG_QUERY__TOKEN__PARTITION", 573 }, + { "PASSING", "PG_QUERY__TOKEN__PASSING", 574 }, + { "PASSWORD", "PG_QUERY__TOKEN__PASSWORD", 575 }, + { "PLACING", "PG_QUERY__TOKEN__PLACING", 576 }, + { "PLANS", "PG_QUERY__TOKEN__PLANS", 577 }, + { "POLICY", "PG_QUERY__TOKEN__POLICY", 578 }, + { "POSITION", "PG_QUERY__TOKEN__POSITION", 579 }, + { "PRECEDING", "PG_QUERY__TOKEN__PRECEDING", 580 }, + { "PRECISION", "PG_QUERY__TOKEN__PRECISION", 581 }, + { "PRESERVE", "PG_QUERY__TOKEN__PRESERVE", 582 }, + { "PREPARE", "PG_QUERY__TOKEN__PREPARE", 583 }, + { "PREPARED", "PG_QUERY__TOKEN__PREPARED", 584 }, + { "PRIMARY", "PG_QUERY__TOKEN__PRIMARY", 585 }, + { "PRIOR", "PG_QUERY__TOKEN__PRIOR", 586 }, + { "PRIVILEGES", "PG_QUERY__TOKEN__PRIVILEGES", 587 }, + { "PROCEDURAL", "PG_QUERY__TOKEN__PROCEDURAL", 588 }, + { "PROCEDURE", "PG_QUERY__TOKEN__PROCEDURE", 589 }, + { "PROCEDURES", "PG_QUERY__TOKEN__PROCEDURES", 590 }, + { "PROGRAM", "PG_QUERY__TOKEN__PROGRAM", 591 }, + { "PUBLICATION", "PG_QUERY__TOKEN__PUBLICATION", 592 }, + { "QUOTE", "PG_QUERY__TOKEN__QUOTE", 593 }, + { "RANGE", "PG_QUERY__TOKEN__RANGE", 594 }, + { "READ", "PG_QUERY__TOKEN__READ", 595 }, + { "REAL", "PG_QUERY__TOKEN__REAL", 596 }, + { "REASSIGN", "PG_QUERY__TOKEN__REASSIGN", 597 }, + { "RECHECK", "PG_QUERY__TOKEN__RECHECK", 598 }, + { "RECURSIVE", "PG_QUERY__TOKEN__RECURSIVE", 599 }, + { "REF_P", "PG_QUERY__TOKEN__REF_P", 600 }, + { "REFERENCES", "PG_QUERY__TOKEN__REFERENCES", 601 }, + { "REFERENCING", "PG_QUERY__TOKEN__REFERENCING", 602 }, + { "REFRESH", "PG_QUERY__TOKEN__REFRESH", 603 }, + { "REINDEX", "PG_QUERY__TOKEN__REINDEX", 604 }, + { "RELATIVE_P", "PG_QUERY__TOKEN__RELATIVE_P", 605 }, + { "RELEASE", "PG_QUERY__TOKEN__RELEASE", 606 }, + { "RENAME", "PG_QUERY__TOKEN__RENAME", 607 }, + { "REPEATABLE", "PG_QUERY__TOKEN__REPEATABLE", 608 }, + { "REPLACE", "PG_QUERY__TOKEN__REPLACE", 609 }, + { "REPLICA", "PG_QUERY__TOKEN__REPLICA", 610 }, + { "RESET", "PG_QUERY__TOKEN__RESET", 611 }, + { "RESTART", "PG_QUERY__TOKEN__RESTART", 612 }, + { "RESTRICT", "PG_QUERY__TOKEN__RESTRICT", 613 }, + { "RETURN", "PG_QUERY__TOKEN__RETURN", 614 }, + { "RETURNING", "PG_QUERY__TOKEN__RETURNING", 615 }, + { "RETURNS", "PG_QUERY__TOKEN__RETURNS", 616 }, + { "REVOKE", "PG_QUERY__TOKEN__REVOKE", 617 }, + { "RIGHT", "PG_QUERY__TOKEN__RIGHT", 618 }, + { "ROLE", "PG_QUERY__TOKEN__ROLE", 619 }, + { "ROLLBACK", "PG_QUERY__TOKEN__ROLLBACK", 620 }, + { "ROLLUP", "PG_QUERY__TOKEN__ROLLUP", 621 }, + { "ROUTINE", "PG_QUERY__TOKEN__ROUTINE", 622 }, + { "ROUTINES", "PG_QUERY__TOKEN__ROUTINES", 623 }, + { "ROW", "PG_QUERY__TOKEN__ROW", 624 }, + { "ROWS", "PG_QUERY__TOKEN__ROWS", 625 }, + { "RULE", "PG_QUERY__TOKEN__RULE", 626 }, + { "SAVEPOINT", "PG_QUERY__TOKEN__SAVEPOINT", 627 }, + { "SCALAR", "PG_QUERY__TOKEN__SCALAR", 628 }, + { "SCHEMA", "PG_QUERY__TOKEN__SCHEMA", 629 }, + { "SCHEMAS", "PG_QUERY__TOKEN__SCHEMAS", 630 }, + { "SCROLL", "PG_QUERY__TOKEN__SCROLL", 631 }, + { "SEARCH", "PG_QUERY__TOKEN__SEARCH", 632 }, + { "SECOND_P", "PG_QUERY__TOKEN__SECOND_P", 633 }, + { "SECURITY", "PG_QUERY__TOKEN__SECURITY", 634 }, + { "SELECT", "PG_QUERY__TOKEN__SELECT", 635 }, + { "SEQUENCE", "PG_QUERY__TOKEN__SEQUENCE", 636 }, + { "SEQUENCES", "PG_QUERY__TOKEN__SEQUENCES", 637 }, + { "SERIALIZABLE", "PG_QUERY__TOKEN__SERIALIZABLE", 638 }, + { "SERVER", "PG_QUERY__TOKEN__SERVER", 639 }, + { "SESSION", "PG_QUERY__TOKEN__SESSION", 640 }, + { "SESSION_USER", "PG_QUERY__TOKEN__SESSION_USER", 641 }, + { "SET", "PG_QUERY__TOKEN__SET", 642 }, + { "SETS", "PG_QUERY__TOKEN__SETS", 643 }, + { "SETOF", "PG_QUERY__TOKEN__SETOF", 644 }, + { "SHARE", "PG_QUERY__TOKEN__SHARE", 645 }, + { "SHOW", "PG_QUERY__TOKEN__SHOW", 646 }, + { "SIMILAR", "PG_QUERY__TOKEN__SIMILAR", 647 }, + { "SIMPLE", "PG_QUERY__TOKEN__SIMPLE", 648 }, + { "SKIP", "PG_QUERY__TOKEN__SKIP", 649 }, + { "SMALLINT", "PG_QUERY__TOKEN__SMALLINT", 650 }, + { "SNAPSHOT", "PG_QUERY__TOKEN__SNAPSHOT", 651 }, + { "SOME", "PG_QUERY__TOKEN__SOME", 652 }, + { "SQL_P", "PG_QUERY__TOKEN__SQL_P", 653 }, + { "STABLE", "PG_QUERY__TOKEN__STABLE", 654 }, + { "STANDALONE_P", "PG_QUERY__TOKEN__STANDALONE_P", 655 }, + { "START", "PG_QUERY__TOKEN__START", 656 }, + { "STATEMENT", "PG_QUERY__TOKEN__STATEMENT", 657 }, + { "STATISTICS", "PG_QUERY__TOKEN__STATISTICS", 658 }, + { "STDIN", "PG_QUERY__TOKEN__STDIN", 659 }, + { "STDOUT", "PG_QUERY__TOKEN__STDOUT", 660 }, + { "STORAGE", "PG_QUERY__TOKEN__STORAGE", 661 }, + { "STORED", "PG_QUERY__TOKEN__STORED", 662 }, + { "STRICT_P", "PG_QUERY__TOKEN__STRICT_P", 663 }, + { "STRIP_P", "PG_QUERY__TOKEN__STRIP_P", 664 }, + { "SUBSCRIPTION", "PG_QUERY__TOKEN__SUBSCRIPTION", 665 }, + { "SUBSTRING", "PG_QUERY__TOKEN__SUBSTRING", 666 }, + { "SUPPORT", "PG_QUERY__TOKEN__SUPPORT", 667 }, + { "SYMMETRIC", "PG_QUERY__TOKEN__SYMMETRIC", 668 }, + { "SYSID", "PG_QUERY__TOKEN__SYSID", 669 }, + { "SYSTEM_P", "PG_QUERY__TOKEN__SYSTEM_P", 670 }, + { "SYSTEM_USER", "PG_QUERY__TOKEN__SYSTEM_USER", 671 }, + { "TABLE", "PG_QUERY__TOKEN__TABLE", 672 }, + { "TABLES", "PG_QUERY__TOKEN__TABLES", 673 }, + { "TABLESAMPLE", "PG_QUERY__TOKEN__TABLESAMPLE", 674 }, + { "TABLESPACE", "PG_QUERY__TOKEN__TABLESPACE", 675 }, + { "TEMP", "PG_QUERY__TOKEN__TEMP", 676 }, + { "TEMPLATE", "PG_QUERY__TOKEN__TEMPLATE", 677 }, + { "TEMPORARY", "PG_QUERY__TOKEN__TEMPORARY", 678 }, + { "TEXT_P", "PG_QUERY__TOKEN__TEXT_P", 679 }, + { "THEN", "PG_QUERY__TOKEN__THEN", 680 }, + { "TIES", "PG_QUERY__TOKEN__TIES", 681 }, + { "TIME", "PG_QUERY__TOKEN__TIME", 682 }, + { "TIMESTAMP", "PG_QUERY__TOKEN__TIMESTAMP", 683 }, + { "TO", "PG_QUERY__TOKEN__TO", 684 }, + { "TRAILING", "PG_QUERY__TOKEN__TRAILING", 685 }, + { "TRANSACTION", "PG_QUERY__TOKEN__TRANSACTION", 686 }, + { "TRANSFORM", "PG_QUERY__TOKEN__TRANSFORM", 687 }, + { "TREAT", "PG_QUERY__TOKEN__TREAT", 688 }, + { "TRIGGER", "PG_QUERY__TOKEN__TRIGGER", 689 }, + { "TRIM", "PG_QUERY__TOKEN__TRIM", 690 }, + { "TRUE_P", "PG_QUERY__TOKEN__TRUE_P", 691 }, + { "TRUNCATE", "PG_QUERY__TOKEN__TRUNCATE", 692 }, + { "TRUSTED", "PG_QUERY__TOKEN__TRUSTED", 693 }, + { "TYPE_P", "PG_QUERY__TOKEN__TYPE_P", 694 }, + { "TYPES_P", "PG_QUERY__TOKEN__TYPES_P", 695 }, + { "UESCAPE", "PG_QUERY__TOKEN__UESCAPE", 696 }, + { "UNBOUNDED", "PG_QUERY__TOKEN__UNBOUNDED", 697 }, + { "UNCOMMITTED", "PG_QUERY__TOKEN__UNCOMMITTED", 698 }, + { "UNENCRYPTED", "PG_QUERY__TOKEN__UNENCRYPTED", 699 }, + { "UNION", "PG_QUERY__TOKEN__UNION", 700 }, + { "UNIQUE", "PG_QUERY__TOKEN__UNIQUE", 701 }, + { "UNKNOWN", "PG_QUERY__TOKEN__UNKNOWN", 702 }, + { "UNLISTEN", "PG_QUERY__TOKEN__UNLISTEN", 703 }, + { "UNLOGGED", "PG_QUERY__TOKEN__UNLOGGED", 704 }, + { "UNTIL", "PG_QUERY__TOKEN__UNTIL", 705 }, + { "UPDATE", "PG_QUERY__TOKEN__UPDATE", 706 }, + { "USER", "PG_QUERY__TOKEN__USER", 707 }, + { "USING", "PG_QUERY__TOKEN__USING", 708 }, + { "VACUUM", "PG_QUERY__TOKEN__VACUUM", 709 }, + { "VALID", "PG_QUERY__TOKEN__VALID", 710 }, + { "VALIDATE", "PG_QUERY__TOKEN__VALIDATE", 711 }, + { "VALIDATOR", "PG_QUERY__TOKEN__VALIDATOR", 712 }, + { "VALUE_P", "PG_QUERY__TOKEN__VALUE_P", 713 }, + { "VALUES", "PG_QUERY__TOKEN__VALUES", 714 }, + { "VARCHAR", "PG_QUERY__TOKEN__VARCHAR", 715 }, + { "VARIADIC", "PG_QUERY__TOKEN__VARIADIC", 716 }, + { "VARYING", "PG_QUERY__TOKEN__VARYING", 717 }, + { "VERBOSE", "PG_QUERY__TOKEN__VERBOSE", 718 }, + { "VERSION_P", "PG_QUERY__TOKEN__VERSION_P", 719 }, + { "VIEW", "PG_QUERY__TOKEN__VIEW", 720 }, + { "VIEWS", "PG_QUERY__TOKEN__VIEWS", 721 }, + { "VOLATILE", "PG_QUERY__TOKEN__VOLATILE", 722 }, + { "WHEN", "PG_QUERY__TOKEN__WHEN", 723 }, + { "WHERE", "PG_QUERY__TOKEN__WHERE", 724 }, + { "WHITESPACE_P", "PG_QUERY__TOKEN__WHITESPACE_P", 725 }, + { "WINDOW", "PG_QUERY__TOKEN__WINDOW", 726 }, + { "WITH", "PG_QUERY__TOKEN__WITH", 727 }, + { "WITHIN", "PG_QUERY__TOKEN__WITHIN", 728 }, + { "WITHOUT", "PG_QUERY__TOKEN__WITHOUT", 729 }, + { "WORK", "PG_QUERY__TOKEN__WORK", 730 }, + { "WRAPPER", "PG_QUERY__TOKEN__WRAPPER", 731 }, + { "WRITE", "PG_QUERY__TOKEN__WRITE", 732 }, + { "XML_P", "PG_QUERY__TOKEN__XML_P", 733 }, + { "XMLATTRIBUTES", "PG_QUERY__TOKEN__XMLATTRIBUTES", 734 }, + { "XMLCONCAT", "PG_QUERY__TOKEN__XMLCONCAT", 735 }, + { "XMLELEMENT", "PG_QUERY__TOKEN__XMLELEMENT", 736 }, + { "XMLEXISTS", "PG_QUERY__TOKEN__XMLEXISTS", 737 }, + { "XMLFOREST", "PG_QUERY__TOKEN__XMLFOREST", 738 }, + { "XMLNAMESPACES", "PG_QUERY__TOKEN__XMLNAMESPACES", 739 }, + { "XMLPARSE", "PG_QUERY__TOKEN__XMLPARSE", 740 }, + { "XMLPI", "PG_QUERY__TOKEN__XMLPI", 741 }, + { "XMLROOT", "PG_QUERY__TOKEN__XMLROOT", 742 }, + { "XMLSERIALIZE", "PG_QUERY__TOKEN__XMLSERIALIZE", 743 }, + { "XMLTABLE", "PG_QUERY__TOKEN__XMLTABLE", 744 }, + { "YEAR_P", "PG_QUERY__TOKEN__YEAR_P", 745 }, + { "YES_P", "PG_QUERY__TOKEN__YES_P", 746 }, + { "ZONE", "PG_QUERY__TOKEN__ZONE", 747 }, + { "FORMAT_LA", "PG_QUERY__TOKEN__FORMAT_LA", 748 }, + { "NOT_LA", "PG_QUERY__TOKEN__NOT_LA", 749 }, + { "NULLS_LA", "PG_QUERY__TOKEN__NULLS_LA", 750 }, + { "WITH_LA", "PG_QUERY__TOKEN__WITH_LA", 751 }, + { "WITHOUT_LA", "PG_QUERY__TOKEN__WITHOUT_LA", 752 }, + { "MODE_TYPE_NAME", "PG_QUERY__TOKEN__MODE_TYPE_NAME", 753 }, + { "MODE_PLPGSQL_EXPR", "PG_QUERY__TOKEN__MODE_PLPGSQL_EXPR", 754 }, + { "MODE_PLPGSQL_ASSIGN1", "PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN1", 755 }, + { "MODE_PLPGSQL_ASSIGN2", "PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN2", 756 }, + { "MODE_PLPGSQL_ASSIGN3", "PG_QUERY__TOKEN__MODE_PLPGSQL_ASSIGN3", 757 }, + { "UMINUS", "PG_QUERY__TOKEN__UMINUS", 758 }, }; static const ProtobufCIntRange pg_query__token__value_ranges[] = { -{0, 0},{37, 1},{40, 2},{58, 10},{91, 16},{258, 20},{0, 508} -}; -static const ProtobufCEnumValueIndex pg_query__token__enum_values_by_name[508] = -{ - { "ABORT_P", 39 }, - { "ABSOLUTE_P", 40 }, - { "ACCESS", 41 }, - { "ACTION", 42 }, - { "ADD_P", 43 }, - { "ADMIN", 44 }, - { "AFTER", 45 }, - { "AGGREGATE", 46 }, - { "ALL", 47 }, - { "ALSO", 48 }, - { "ALTER", 49 }, - { "ALWAYS", 50 }, - { "ANALYSE", 51 }, - { "ANALYZE", 52 }, - { "AND", 53 }, - { "ANY", 54 }, - { "ARRAY", 55 }, - { "AS", 56 }, - { "ASC", 57 }, - { "ASCII_37", 1 }, - { "ASCII_40", 2 }, - { "ASCII_41", 3 }, - { "ASCII_42", 4 }, - { "ASCII_43", 5 }, - { "ASCII_44", 6 }, - { "ASCII_45", 7 }, - { "ASCII_46", 8 }, - { "ASCII_47", 9 }, - { "ASCII_58", 10 }, - { "ASCII_59", 11 }, - { "ASCII_60", 12 }, - { "ASCII_61", 13 }, - { "ASCII_62", 14 }, - { "ASCII_63", 15 }, - { "ASCII_91", 16 }, - { "ASCII_92", 17 }, - { "ASCII_93", 18 }, - { "ASCII_94", 19 }, - { "ASENSITIVE", 58 }, - { "ASSERTION", 59 }, - { "ASSIGNMENT", 60 }, - { "ASYMMETRIC", 61 }, - { "AT", 63 }, - { "ATOMIC", 62 }, - { "ATTACH", 64 }, - { "ATTRIBUTE", 65 }, - { "AUTHORIZATION", 66 }, - { "BACKWARD", 67 }, - { "BCONST", 25 }, - { "BEFORE", 68 }, - { "BEGIN_P", 69 }, - { "BETWEEN", 70 }, - { "BIGINT", 71 }, - { "BINARY", 72 }, - { "BIT", 73 }, - { "BOOLEAN_P", 74 }, - { "BOTH", 75 }, - { "BREADTH", 76 }, - { "BY", 77 }, - { "CACHE", 78 }, - { "CALL", 79 }, - { "CALLED", 80 }, - { "CASCADE", 81 }, - { "CASCADED", 82 }, - { "CASE", 83 }, - { "CAST", 84 }, - { "CATALOG_P", 85 }, - { "CHAIN", 86 }, - { "CHARACTER", 88 }, - { "CHARACTERISTICS", 89 }, - { "CHAR_P", 87 }, - { "CHECK", 90 }, - { "CHECKPOINT", 91 }, - { "CLASS", 92 }, - { "CLOSE", 93 }, - { "CLUSTER", 94 }, - { "COALESCE", 95 }, - { "COLLATE", 96 }, - { "COLLATION", 97 }, - { "COLON_EQUALS", 32 }, - { "COLUMN", 98 }, - { "COLUMNS", 99 }, - { "COMMENT", 100 }, - { "COMMENTS", 101 }, - { "COMMIT", 102 }, - { "COMMITTED", 103 }, - { "COMPRESSION", 104 }, - { "CONCURRENTLY", 105 }, - { "CONFIGURATION", 106 }, - { "CONFLICT", 107 }, - { "CONNECTION", 108 }, - { "CONSTRAINT", 109 }, - { "CONSTRAINTS", 110 }, - { "CONTENT_P", 111 }, - { "CONTINUE_P", 112 }, - { "CONVERSION_P", 113 }, - { "COPY", 114 }, - { "COST", 115 }, - { "CREATE", 116 }, - { "CROSS", 117 }, - { "CSV", 118 }, - { "CUBE", 119 }, - { "CURRENT_CATALOG", 121 }, - { "CURRENT_DATE", 122 }, - { "CURRENT_P", 120 }, - { "CURRENT_ROLE", 123 }, - { "CURRENT_SCHEMA", 124 }, - { "CURRENT_TIME", 125 }, - { "CURRENT_TIMESTAMP", 126 }, - { "CURRENT_USER", 127 }, - { "CURSOR", 128 }, - { "CYCLE", 129 }, - { "C_COMMENT", 38 }, - { "DATABASE", 131 }, - { "DATA_P", 130 }, - { "DAY_P", 132 }, - { "DEALLOCATE", 133 }, - { "DEC", 134 }, - { "DECIMAL_P", 135 }, - { "DECLARE", 136 }, - { "DEFAULT", 137 }, - { "DEFAULTS", 138 }, - { "DEFERRABLE", 139 }, - { "DEFERRED", 140 }, - { "DEFINER", 141 }, - { "DELETE_P", 142 }, - { "DELIMITER", 143 }, - { "DELIMITERS", 144 }, - { "DEPENDS", 145 }, - { "DEPTH", 146 }, - { "DESC", 147 }, - { "DETACH", 148 }, - { "DICTIONARY", 149 }, - { "DISABLE_P", 150 }, - { "DISCARD", 151 }, - { "DISTINCT", 152 }, - { "DO", 153 }, - { "DOCUMENT_P", 154 }, - { "DOMAIN_P", 155 }, - { "DOT_DOT", 31 }, - { "DOUBLE_P", 156 }, - { "DROP", 157 }, - { "EACH", 158 }, - { "ELSE", 159 }, - { "ENABLE_P", 160 }, - { "ENCODING", 161 }, - { "ENCRYPTED", 162 }, - { "END_P", 163 }, - { "ENUM_P", 164 }, - { "EQUALS_GREATER", 33 }, - { "ESCAPE", 165 }, - { "EVENT", 166 }, - { "EXCEPT", 167 }, - { "EXCLUDE", 168 }, - { "EXCLUDING", 169 }, - { "EXCLUSIVE", 170 }, - { "EXECUTE", 171 }, - { "EXISTS", 172 }, - { "EXPLAIN", 173 }, - { "EXPRESSION", 174 }, - { "EXTENSION", 175 }, - { "EXTERNAL", 176 }, - { "EXTRACT", 177 }, - { "FALSE_P", 178 }, - { "FAMILY", 179 }, - { "FCONST", 22 }, - { "FETCH", 180 }, - { "FILTER", 181 }, - { "FINALIZE", 182 }, - { "FIRST_P", 183 }, - { "FLOAT_P", 184 }, - { "FOLLOWING", 185 }, - { "FOR", 186 }, - { "FORCE", 187 }, - { "FOREIGN", 188 }, - { "FORWARD", 189 }, - { "FREEZE", 190 }, - { "FROM", 191 }, - { "FULL", 192 }, - { "FUNCTION", 193 }, - { "FUNCTIONS", 194 }, - { "GENERATED", 195 }, - { "GLOBAL", 196 }, - { "GRANT", 197 }, - { "GRANTED", 198 }, - { "GREATER_EQUALS", 35 }, - { "GREATEST", 199 }, - { "GROUPING", 201 }, - { "GROUPS", 202 }, - { "GROUP_P", 200 }, - { "HANDLER", 203 }, - { "HAVING", 204 }, - { "HEADER_P", 205 }, - { "HOLD", 206 }, - { "HOUR_P", 207 }, - { "ICONST", 28 }, - { "IDENT", 20 }, - { "IDENTITY_P", 208 }, - { "IF_P", 209 }, - { "ILIKE", 210 }, - { "IMMEDIATE", 211 }, - { "IMMUTABLE", 212 }, - { "IMPLICIT_P", 213 }, - { "IMPORT_P", 214 }, - { "INCLUDE", 216 }, - { "INCLUDING", 217 }, - { "INCREMENT", 218 }, - { "INDEX", 219 }, - { "INDEXES", 220 }, - { "INHERIT", 221 }, - { "INHERITS", 222 }, - { "INITIALLY", 223 }, - { "INLINE_P", 224 }, - { "INNER_P", 225 }, - { "INOUT", 226 }, - { "INPUT_P", 227 }, - { "INSENSITIVE", 228 }, - { "INSERT", 229 }, - { "INSTEAD", 230 }, - { "INTEGER", 232 }, - { "INTERSECT", 233 }, - { "INTERVAL", 234 }, - { "INTO", 235 }, - { "INT_P", 231 }, - { "INVOKER", 236 }, - { "IN_P", 215 }, - { "IS", 237 }, - { "ISNULL", 238 }, - { "ISOLATION", 239 }, - { "JOIN", 240 }, - { "KEY", 241 }, - { "LABEL", 242 }, - { "LANGUAGE", 243 }, - { "LARGE_P", 244 }, - { "LAST_P", 245 }, - { "LATERAL_P", 246 }, - { "LEADING", 247 }, - { "LEAKPROOF", 248 }, - { "LEAST", 249 }, - { "LEFT", 250 }, - { "LESS_EQUALS", 34 }, - { "LEVEL", 251 }, - { "LIKE", 252 }, - { "LIMIT", 253 }, - { "LISTEN", 254 }, - { "LOAD", 255 }, - { "LOCAL", 256 }, - { "LOCALTIME", 257 }, - { "LOCALTIMESTAMP", 258 }, - { "LOCATION", 259 }, - { "LOCKED", 261 }, - { "LOCK_P", 260 }, - { "LOGGED", 262 }, - { "MAPPING", 263 }, - { "MATCH", 264 }, - { "MATCHED", 265 }, - { "MATERIALIZED", 266 }, - { "MAXVALUE", 267 }, - { "MERGE", 268 }, - { "METHOD", 269 }, - { "MINUTE_P", 270 }, - { "MINVALUE", 271 }, - { "MODE", 272 }, - { "MODE_PLPGSQL_ASSIGN1", 504 }, - { "MODE_PLPGSQL_ASSIGN2", 505 }, - { "MODE_PLPGSQL_ASSIGN3", 506 }, - { "MODE_PLPGSQL_EXPR", 503 }, - { "MODE_TYPE_NAME", 502 }, - { "MONTH_P", 273 }, - { "MOVE", 274 }, - { "NAMES", 276 }, - { "NAME_P", 275 }, - { "NATIONAL", 277 }, - { "NATURAL", 278 }, - { "NCHAR", 279 }, - { "NEW", 280 }, - { "NEXT", 281 }, - { "NFC", 282 }, - { "NFD", 283 }, - { "NFKC", 284 }, - { "NFKD", 285 }, - { "NO", 286 }, - { "NONE", 287 }, - { "NORMALIZE", 288 }, - { "NORMALIZED", 289 }, - { "NOT", 290 }, - { "NOTHING", 291 }, - { "NOTIFY", 292 }, - { "NOTNULL", 293 }, - { "NOT_EQUALS", 36 }, - { "NOT_LA", 499 }, - { "NOWAIT", 294 }, +{0, 0},{36, 1},{40, 3},{58, 11},{91, 17},{258, 21},{0, 522} +}; +static const ProtobufCEnumValueIndex pg_query__token__enum_values_by_name[522] = +{ + { "ABORT_P", 40 }, + { "ABSENT", 41 }, + { "ABSOLUTE_P", 42 }, + { "ACCESS", 43 }, + { "ACTION", 44 }, + { "ADD_P", 45 }, + { "ADMIN", 46 }, + { "AFTER", 47 }, + { "AGGREGATE", 48 }, + { "ALL", 49 }, + { "ALSO", 50 }, + { "ALTER", 51 }, + { "ALWAYS", 52 }, + { "ANALYSE", 53 }, + { "ANALYZE", 54 }, + { "AND", 55 }, + { "ANY", 56 }, + { "ARRAY", 57 }, + { "AS", 58 }, + { "ASC", 59 }, + { "ASCII_36", 1 }, + { "ASCII_37", 2 }, + { "ASCII_40", 3 }, + { "ASCII_41", 4 }, + { "ASCII_42", 5 }, + { "ASCII_43", 6 }, + { "ASCII_44", 7 }, + { "ASCII_45", 8 }, + { "ASCII_46", 9 }, + { "ASCII_47", 10 }, + { "ASCII_58", 11 }, + { "ASCII_59", 12 }, + { "ASCII_60", 13 }, + { "ASCII_61", 14 }, + { "ASCII_62", 15 }, + { "ASCII_63", 16 }, + { "ASCII_91", 17 }, + { "ASCII_92", 18 }, + { "ASCII_93", 19 }, + { "ASCII_94", 20 }, + { "ASENSITIVE", 60 }, + { "ASSERTION", 61 }, + { "ASSIGNMENT", 62 }, + { "ASYMMETRIC", 63 }, + { "AT", 65 }, + { "ATOMIC", 64 }, + { "ATTACH", 66 }, + { "ATTRIBUTE", 67 }, + { "AUTHORIZATION", 68 }, + { "BACKWARD", 69 }, + { "BCONST", 26 }, + { "BEFORE", 70 }, + { "BEGIN_P", 71 }, + { "BETWEEN", 72 }, + { "BIGINT", 73 }, + { "BINARY", 74 }, + { "BIT", 75 }, + { "BOOLEAN_P", 76 }, + { "BOTH", 77 }, + { "BREADTH", 78 }, + { "BY", 79 }, + { "CACHE", 80 }, + { "CALL", 81 }, + { "CALLED", 82 }, + { "CASCADE", 83 }, + { "CASCADED", 84 }, + { "CASE", 85 }, + { "CAST", 86 }, + { "CATALOG_P", 87 }, + { "CHAIN", 88 }, + { "CHARACTER", 90 }, + { "CHARACTERISTICS", 91 }, + { "CHAR_P", 89 }, + { "CHECK", 92 }, + { "CHECKPOINT", 93 }, + { "CLASS", 94 }, + { "CLOSE", 95 }, + { "CLUSTER", 96 }, + { "COALESCE", 97 }, + { "COLLATE", 98 }, + { "COLLATION", 99 }, + { "COLON_EQUALS", 33 }, + { "COLUMN", 100 }, + { "COLUMNS", 101 }, + { "COMMENT", 102 }, + { "COMMENTS", 103 }, + { "COMMIT", 104 }, + { "COMMITTED", 105 }, + { "COMPRESSION", 106 }, + { "CONCURRENTLY", 107 }, + { "CONFIGURATION", 108 }, + { "CONFLICT", 109 }, + { "CONNECTION", 110 }, + { "CONSTRAINT", 111 }, + { "CONSTRAINTS", 112 }, + { "CONTENT_P", 113 }, + { "CONTINUE_P", 114 }, + { "CONVERSION_P", 115 }, + { "COPY", 116 }, + { "COST", 117 }, + { "CREATE", 118 }, + { "CROSS", 119 }, + { "CSV", 120 }, + { "CUBE", 121 }, + { "CURRENT_CATALOG", 123 }, + { "CURRENT_DATE", 124 }, + { "CURRENT_P", 122 }, + { "CURRENT_ROLE", 125 }, + { "CURRENT_SCHEMA", 126 }, + { "CURRENT_TIME", 127 }, + { "CURRENT_TIMESTAMP", 128 }, + { "CURRENT_USER", 129 }, + { "CURSOR", 130 }, + { "CYCLE", 131 }, + { "C_COMMENT", 39 }, + { "DATABASE", 133 }, + { "DATA_P", 132 }, + { "DAY_P", 134 }, + { "DEALLOCATE", 135 }, + { "DEC", 136 }, + { "DECIMAL_P", 137 }, + { "DECLARE", 138 }, + { "DEFAULT", 139 }, + { "DEFAULTS", 140 }, + { "DEFERRABLE", 141 }, + { "DEFERRED", 142 }, + { "DEFINER", 143 }, + { "DELETE_P", 144 }, + { "DELIMITER", 145 }, + { "DELIMITERS", 146 }, + { "DEPENDS", 147 }, + { "DEPTH", 148 }, + { "DESC", 149 }, + { "DETACH", 150 }, + { "DICTIONARY", 151 }, + { "DISABLE_P", 152 }, + { "DISCARD", 153 }, + { "DISTINCT", 154 }, + { "DO", 155 }, + { "DOCUMENT_P", 156 }, + { "DOMAIN_P", 157 }, + { "DOT_DOT", 32 }, + { "DOUBLE_P", 158 }, + { "DROP", 159 }, + { "EACH", 160 }, + { "ELSE", 161 }, + { "ENABLE_P", 162 }, + { "ENCODING", 163 }, + { "ENCRYPTED", 164 }, + { "END_P", 165 }, + { "ENUM_P", 166 }, + { "EQUALS_GREATER", 34 }, + { "ESCAPE", 167 }, + { "EVENT", 168 }, + { "EXCEPT", 169 }, + { "EXCLUDE", 170 }, + { "EXCLUDING", 171 }, + { "EXCLUSIVE", 172 }, + { "EXECUTE", 173 }, + { "EXISTS", 174 }, + { "EXPLAIN", 175 }, + { "EXPRESSION", 176 }, + { "EXTENSION", 177 }, + { "EXTERNAL", 178 }, + { "EXTRACT", 179 }, + { "FALSE_P", 180 }, + { "FAMILY", 181 }, + { "FCONST", 23 }, + { "FETCH", 182 }, + { "FILTER", 183 }, + { "FINALIZE", 184 }, + { "FIRST_P", 185 }, + { "FLOAT_P", 186 }, + { "FOLLOWING", 187 }, + { "FOR", 188 }, + { "FORCE", 189 }, + { "FOREIGN", 190 }, + { "FORMAT", 191 }, + { "FORMAT_LA", 511 }, + { "FORWARD", 192 }, + { "FREEZE", 193 }, + { "FROM", 194 }, + { "FULL", 195 }, + { "FUNCTION", 196 }, + { "FUNCTIONS", 197 }, + { "GENERATED", 198 }, + { "GLOBAL", 199 }, + { "GRANT", 200 }, + { "GRANTED", 201 }, + { "GREATER_EQUALS", 36 }, + { "GREATEST", 202 }, + { "GROUPING", 204 }, + { "GROUPS", 205 }, + { "GROUP_P", 203 }, + { "HANDLER", 206 }, + { "HAVING", 207 }, + { "HEADER_P", 208 }, + { "HOLD", 209 }, + { "HOUR_P", 210 }, + { "ICONST", 29 }, + { "IDENT", 21 }, + { "IDENTITY_P", 211 }, + { "IF_P", 212 }, + { "ILIKE", 213 }, + { "IMMEDIATE", 214 }, + { "IMMUTABLE", 215 }, + { "IMPLICIT_P", 216 }, + { "IMPORT_P", 217 }, + { "INCLUDE", 219 }, + { "INCLUDING", 220 }, + { "INCREMENT", 221 }, + { "INDENT", 222 }, + { "INDEX", 223 }, + { "INDEXES", 224 }, + { "INHERIT", 225 }, + { "INHERITS", 226 }, + { "INITIALLY", 227 }, + { "INLINE_P", 228 }, + { "INNER_P", 229 }, + { "INOUT", 230 }, + { "INPUT_P", 231 }, + { "INSENSITIVE", 232 }, + { "INSERT", 233 }, + { "INSTEAD", 234 }, + { "INTEGER", 236 }, + { "INTERSECT", 237 }, + { "INTERVAL", 238 }, + { "INTO", 239 }, + { "INT_P", 235 }, + { "INVOKER", 240 }, + { "IN_P", 218 }, + { "IS", 241 }, + { "ISNULL", 242 }, + { "ISOLATION", 243 }, + { "JOIN", 244 }, + { "JSON", 245 }, + { "JSON_ARRAY", 246 }, + { "JSON_ARRAYAGG", 247 }, + { "JSON_OBJECT", 248 }, + { "JSON_OBJECTAGG", 249 }, + { "KEY", 250 }, + { "KEYS", 251 }, + { "LABEL", 252 }, + { "LANGUAGE", 253 }, + { "LARGE_P", 254 }, + { "LAST_P", 255 }, + { "LATERAL_P", 256 }, + { "LEADING", 257 }, + { "LEAKPROOF", 258 }, + { "LEAST", 259 }, + { "LEFT", 260 }, + { "LESS_EQUALS", 35 }, + { "LEVEL", 261 }, + { "LIKE", 262 }, + { "LIMIT", 263 }, + { "LISTEN", 264 }, + { "LOAD", 265 }, + { "LOCAL", 266 }, + { "LOCALTIME", 267 }, + { "LOCALTIMESTAMP", 268 }, + { "LOCATION", 269 }, + { "LOCKED", 271 }, + { "LOCK_P", 270 }, + { "LOGGED", 272 }, + { "MAPPING", 273 }, + { "MATCH", 274 }, + { "MATCHED", 275 }, + { "MATERIALIZED", 276 }, + { "MAXVALUE", 277 }, + { "MERGE", 278 }, + { "METHOD", 279 }, + { "MINUTE_P", 280 }, + { "MINVALUE", 281 }, + { "MODE", 282 }, + { "MODE_PLPGSQL_ASSIGN1", 518 }, + { "MODE_PLPGSQL_ASSIGN2", 519 }, + { "MODE_PLPGSQL_ASSIGN3", 520 }, + { "MODE_PLPGSQL_EXPR", 517 }, + { "MODE_TYPE_NAME", 516 }, + { "MONTH_P", 283 }, + { "MOVE", 284 }, + { "NAMES", 286 }, + { "NAME_P", 285 }, + { "NATIONAL", 287 }, + { "NATURAL", 288 }, + { "NCHAR", 289 }, + { "NEW", 290 }, + { "NEXT", 291 }, + { "NFC", 292 }, + { "NFD", 293 }, + { "NFKC", 294 }, + { "NFKD", 295 }, + { "NO", 296 }, + { "NONE", 297 }, + { "NORMALIZE", 298 }, + { "NORMALIZED", 299 }, + { "NOT", 300 }, + { "NOTHING", 301 }, + { "NOTIFY", 302 }, + { "NOTNULL", 303 }, + { "NOT_EQUALS", 37 }, + { "NOT_LA", 512 }, + { "NOWAIT", 304 }, { "NUL", 0 }, - { "NULLIF", 296 }, - { "NULLS_LA", 500 }, - { "NULLS_P", 297 }, - { "NULL_P", 295 }, - { "NUMERIC", 298 }, - { "OBJECT_P", 299 }, - { "OF", 300 }, - { "OFF", 301 }, - { "OFFSET", 302 }, - { "OIDS", 303 }, - { "OLD", 304 }, - { "ON", 305 }, - { "ONLY", 306 }, - { "OPERATOR", 307 }, - { "OPTION", 308 }, - { "OPTIONS", 309 }, - { "OR", 310 }, - { "ORDER", 311 }, - { "ORDINALITY", 312 }, - { "OTHERS", 313 }, - { "OUTER_P", 315 }, - { "OUT_P", 314 }, - { "OVER", 316 }, - { "OVERLAPS", 317 }, - { "OVERLAY", 318 }, - { "OVERRIDING", 319 }, - { "OWNED", 320 }, - { "OWNER", 321 }, - { "Op", 27 }, - { "PARALLEL", 322 }, - { "PARAM", 29 }, - { "PARAMETER", 323 }, - { "PARSER", 324 }, - { "PARTIAL", 325 }, - { "PARTITION", 326 }, - { "PASSING", 327 }, - { "PASSWORD", 328 }, - { "PLACING", 329 }, - { "PLANS", 330 }, - { "POLICY", 331 }, - { "POSITION", 332 }, - { "PRECEDING", 333 }, - { "PRECISION", 334 }, - { "PREPARE", 336 }, - { "PREPARED", 337 }, - { "PRESERVE", 335 }, - { "PRIMARY", 338 }, - { "PRIOR", 339 }, - { "PRIVILEGES", 340 }, - { "PROCEDURAL", 341 }, - { "PROCEDURE", 342 }, - { "PROCEDURES", 343 }, - { "PROGRAM", 344 }, - { "PUBLICATION", 345 }, - { "QUOTE", 346 }, - { "RANGE", 347 }, - { "READ", 348 }, - { "REAL", 349 }, - { "REASSIGN", 350 }, - { "RECHECK", 351 }, - { "RECURSIVE", 352 }, - { "REFERENCES", 354 }, - { "REFERENCING", 355 }, - { "REFRESH", 356 }, - { "REF_P", 353 }, - { "REINDEX", 357 }, - { "RELATIVE_P", 358 }, - { "RELEASE", 359 }, - { "RENAME", 360 }, - { "REPEATABLE", 361 }, - { "REPLACE", 362 }, - { "REPLICA", 363 }, - { "RESET", 364 }, - { "RESTART", 365 }, - { "RESTRICT", 366 }, - { "RETURN", 367 }, - { "RETURNING", 368 }, - { "RETURNS", 369 }, - { "REVOKE", 370 }, - { "RIGHT", 371 }, - { "ROLE", 372 }, - { "ROLLBACK", 373 }, - { "ROLLUP", 374 }, - { "ROUTINE", 375 }, - { "ROUTINES", 376 }, - { "ROW", 377 }, - { "ROWS", 378 }, - { "RULE", 379 }, - { "SAVEPOINT", 380 }, - { "SCHEMA", 381 }, - { "SCHEMAS", 382 }, - { "SCONST", 23 }, - { "SCROLL", 383 }, - { "SEARCH", 384 }, - { "SECOND_P", 385 }, - { "SECURITY", 386 }, - { "SELECT", 387 }, - { "SEQUENCE", 388 }, - { "SEQUENCES", 389 }, - { "SERIALIZABLE", 390 }, - { "SERVER", 391 }, - { "SESSION", 392 }, - { "SESSION_USER", 393 }, - { "SET", 394 }, - { "SETOF", 396 }, - { "SETS", 395 }, - { "SHARE", 397 }, - { "SHOW", 398 }, - { "SIMILAR", 399 }, - { "SIMPLE", 400 }, - { "SKIP", 401 }, - { "SMALLINT", 402 }, - { "SNAPSHOT", 403 }, - { "SOME", 404 }, - { "SQL_COMMENT", 37 }, - { "SQL_P", 405 }, - { "STABLE", 406 }, - { "STANDALONE_P", 407 }, - { "START", 408 }, - { "STATEMENT", 409 }, - { "STATISTICS", 410 }, - { "STDIN", 411 }, - { "STDOUT", 412 }, - { "STORAGE", 413 }, - { "STORED", 414 }, - { "STRICT_P", 415 }, - { "STRIP_P", 416 }, - { "SUBSCRIPTION", 417 }, - { "SUBSTRING", 418 }, - { "SUPPORT", 419 }, - { "SYMMETRIC", 420 }, - { "SYSID", 421 }, - { "SYSTEM_P", 422 }, - { "TABLE", 423 }, - { "TABLES", 424 }, - { "TABLESAMPLE", 425 }, - { "TABLESPACE", 426 }, - { "TEMP", 427 }, - { "TEMPLATE", 428 }, - { "TEMPORARY", 429 }, - { "TEXT_P", 430 }, - { "THEN", 431 }, - { "TIES", 432 }, - { "TIME", 433 }, - { "TIMESTAMP", 434 }, - { "TO", 435 }, - { "TRAILING", 436 }, - { "TRANSACTION", 437 }, - { "TRANSFORM", 438 }, - { "TREAT", 439 }, - { "TRIGGER", 440 }, - { "TRIM", 441 }, - { "TRUE_P", 442 }, - { "TRUNCATE", 443 }, - { "TRUSTED", 444 }, - { "TYPECAST", 30 }, - { "TYPES_P", 446 }, - { "TYPE_P", 445 }, - { "UESCAPE", 447 }, - { "UIDENT", 21 }, - { "UMINUS", 507 }, - { "UNBOUNDED", 448 }, - { "UNCOMMITTED", 449 }, - { "UNENCRYPTED", 450 }, - { "UNION", 451 }, - { "UNIQUE", 452 }, - { "UNKNOWN", 453 }, - { "UNLISTEN", 454 }, - { "UNLOGGED", 455 }, - { "UNTIL", 456 }, - { "UPDATE", 457 }, - { "USCONST", 24 }, - { "USER", 458 }, - { "USING", 459 }, - { "VACUUM", 460 }, - { "VALID", 461 }, - { "VALIDATE", 462 }, - { "VALIDATOR", 463 }, - { "VALUES", 465 }, - { "VALUE_P", 464 }, - { "VARCHAR", 466 }, - { "VARIADIC", 467 }, - { "VARYING", 468 }, - { "VERBOSE", 469 }, - { "VERSION_P", 470 }, - { "VIEW", 471 }, - { "VIEWS", 472 }, - { "VOLATILE", 473 }, - { "WHEN", 474 }, - { "WHERE", 475 }, - { "WHITESPACE_P", 476 }, - { "WINDOW", 477 }, - { "WITH", 478 }, - { "WITHIN", 479 }, - { "WITHOUT", 480 }, - { "WITH_LA", 501 }, - { "WORK", 481 }, - { "WRAPPER", 482 }, - { "WRITE", 483 }, - { "XCONST", 26 }, - { "XMLATTRIBUTES", 485 }, - { "XMLCONCAT", 486 }, - { "XMLELEMENT", 487 }, - { "XMLEXISTS", 488 }, - { "XMLFOREST", 489 }, - { "XMLNAMESPACES", 490 }, - { "XMLPARSE", 491 }, - { "XMLPI", 492 }, - { "XMLROOT", 493 }, - { "XMLSERIALIZE", 494 }, - { "XMLTABLE", 495 }, - { "XML_P", 484 }, - { "YEAR_P", 496 }, - { "YES_P", 497 }, - { "ZONE", 498 }, + { "NULLIF", 306 }, + { "NULLS_LA", 513 }, + { "NULLS_P", 307 }, + { "NULL_P", 305 }, + { "NUMERIC", 308 }, + { "OBJECT_P", 309 }, + { "OF", 310 }, + { "OFF", 311 }, + { "OFFSET", 312 }, + { "OIDS", 313 }, + { "OLD", 314 }, + { "ON", 315 }, + { "ONLY", 316 }, + { "OPERATOR", 317 }, + { "OPTION", 318 }, + { "OPTIONS", 319 }, + { "OR", 320 }, + { "ORDER", 321 }, + { "ORDINALITY", 322 }, + { "OTHERS", 323 }, + { "OUTER_P", 325 }, + { "OUT_P", 324 }, + { "OVER", 326 }, + { "OVERLAPS", 327 }, + { "OVERLAY", 328 }, + { "OVERRIDING", 329 }, + { "OWNED", 330 }, + { "OWNER", 331 }, + { "Op", 28 }, + { "PARALLEL", 332 }, + { "PARAM", 30 }, + { "PARAMETER", 333 }, + { "PARSER", 334 }, + { "PARTIAL", 335 }, + { "PARTITION", 336 }, + { "PASSING", 337 }, + { "PASSWORD", 338 }, + { "PLACING", 339 }, + { "PLANS", 340 }, + { "POLICY", 341 }, + { "POSITION", 342 }, + { "PRECEDING", 343 }, + { "PRECISION", 344 }, + { "PREPARE", 346 }, + { "PREPARED", 347 }, + { "PRESERVE", 345 }, + { "PRIMARY", 348 }, + { "PRIOR", 349 }, + { "PRIVILEGES", 350 }, + { "PROCEDURAL", 351 }, + { "PROCEDURE", 352 }, + { "PROCEDURES", 353 }, + { "PROGRAM", 354 }, + { "PUBLICATION", 355 }, + { "QUOTE", 356 }, + { "RANGE", 357 }, + { "READ", 358 }, + { "REAL", 359 }, + { "REASSIGN", 360 }, + { "RECHECK", 361 }, + { "RECURSIVE", 362 }, + { "REFERENCES", 364 }, + { "REFERENCING", 365 }, + { "REFRESH", 366 }, + { "REF_P", 363 }, + { "REINDEX", 367 }, + { "RELATIVE_P", 368 }, + { "RELEASE", 369 }, + { "RENAME", 370 }, + { "REPEATABLE", 371 }, + { "REPLACE", 372 }, + { "REPLICA", 373 }, + { "RESET", 374 }, + { "RESTART", 375 }, + { "RESTRICT", 376 }, + { "RETURN", 377 }, + { "RETURNING", 378 }, + { "RETURNS", 379 }, + { "REVOKE", 380 }, + { "RIGHT", 381 }, + { "ROLE", 382 }, + { "ROLLBACK", 383 }, + { "ROLLUP", 384 }, + { "ROUTINE", 385 }, + { "ROUTINES", 386 }, + { "ROW", 387 }, + { "ROWS", 388 }, + { "RULE", 389 }, + { "SAVEPOINT", 390 }, + { "SCALAR", 391 }, + { "SCHEMA", 392 }, + { "SCHEMAS", 393 }, + { "SCONST", 24 }, + { "SCROLL", 394 }, + { "SEARCH", 395 }, + { "SECOND_P", 396 }, + { "SECURITY", 397 }, + { "SELECT", 398 }, + { "SEQUENCE", 399 }, + { "SEQUENCES", 400 }, + { "SERIALIZABLE", 401 }, + { "SERVER", 402 }, + { "SESSION", 403 }, + { "SESSION_USER", 404 }, + { "SET", 405 }, + { "SETOF", 407 }, + { "SETS", 406 }, + { "SHARE", 408 }, + { "SHOW", 409 }, + { "SIMILAR", 410 }, + { "SIMPLE", 411 }, + { "SKIP", 412 }, + { "SMALLINT", 413 }, + { "SNAPSHOT", 414 }, + { "SOME", 415 }, + { "SQL_COMMENT", 38 }, + { "SQL_P", 416 }, + { "STABLE", 417 }, + { "STANDALONE_P", 418 }, + { "START", 419 }, + { "STATEMENT", 420 }, + { "STATISTICS", 421 }, + { "STDIN", 422 }, + { "STDOUT", 423 }, + { "STORAGE", 424 }, + { "STORED", 425 }, + { "STRICT_P", 426 }, + { "STRIP_P", 427 }, + { "SUBSCRIPTION", 428 }, + { "SUBSTRING", 429 }, + { "SUPPORT", 430 }, + { "SYMMETRIC", 431 }, + { "SYSID", 432 }, + { "SYSTEM_P", 433 }, + { "SYSTEM_USER", 434 }, + { "TABLE", 435 }, + { "TABLES", 436 }, + { "TABLESAMPLE", 437 }, + { "TABLESPACE", 438 }, + { "TEMP", 439 }, + { "TEMPLATE", 440 }, + { "TEMPORARY", 441 }, + { "TEXT_P", 442 }, + { "THEN", 443 }, + { "TIES", 444 }, + { "TIME", 445 }, + { "TIMESTAMP", 446 }, + { "TO", 447 }, + { "TRAILING", 448 }, + { "TRANSACTION", 449 }, + { "TRANSFORM", 450 }, + { "TREAT", 451 }, + { "TRIGGER", 452 }, + { "TRIM", 453 }, + { "TRUE_P", 454 }, + { "TRUNCATE", 455 }, + { "TRUSTED", 456 }, + { "TYPECAST", 31 }, + { "TYPES_P", 458 }, + { "TYPE_P", 457 }, + { "UESCAPE", 459 }, + { "UIDENT", 22 }, + { "UMINUS", 521 }, + { "UNBOUNDED", 460 }, + { "UNCOMMITTED", 461 }, + { "UNENCRYPTED", 462 }, + { "UNION", 463 }, + { "UNIQUE", 464 }, + { "UNKNOWN", 465 }, + { "UNLISTEN", 466 }, + { "UNLOGGED", 467 }, + { "UNTIL", 468 }, + { "UPDATE", 469 }, + { "USCONST", 25 }, + { "USER", 470 }, + { "USING", 471 }, + { "VACUUM", 472 }, + { "VALID", 473 }, + { "VALIDATE", 474 }, + { "VALIDATOR", 475 }, + { "VALUES", 477 }, + { "VALUE_P", 476 }, + { "VARCHAR", 478 }, + { "VARIADIC", 479 }, + { "VARYING", 480 }, + { "VERBOSE", 481 }, + { "VERSION_P", 482 }, + { "VIEW", 483 }, + { "VIEWS", 484 }, + { "VOLATILE", 485 }, + { "WHEN", 486 }, + { "WHERE", 487 }, + { "WHITESPACE_P", 488 }, + { "WINDOW", 489 }, + { "WITH", 490 }, + { "WITHIN", 491 }, + { "WITHOUT", 492 }, + { "WITHOUT_LA", 515 }, + { "WITH_LA", 514 }, + { "WORK", 493 }, + { "WRAPPER", 494 }, + { "WRITE", 495 }, + { "XCONST", 27 }, + { "XMLATTRIBUTES", 497 }, + { "XMLCONCAT", 498 }, + { "XMLELEMENT", 499 }, + { "XMLEXISTS", 500 }, + { "XMLFOREST", 501 }, + { "XMLNAMESPACES", 502 }, + { "XMLPARSE", 503 }, + { "XMLPI", 504 }, + { "XMLROOT", 505 }, + { "XMLSERIALIZE", 506 }, + { "XMLTABLE", 507 }, + { "XML_P", 496 }, + { "YEAR_P", 508 }, + { "YES_P", 509 }, + { "ZONE", 510 }, }; const ProtobufCEnumDescriptor pg_query__token__descriptor = { @@ -39644,9 +41642,9 @@ const ProtobufCEnumDescriptor pg_query__token__descriptor = "Token", "PgQuery__Token", "pg_query", - 508, + 522, pg_query__token__enum_values_by_number, - 508, + 522, pg_query__token__enum_values_by_name, 6, pg_query__token__value_ranges, diff --git a/parser/pg_query_fingerprint.c b/parser/pg_query_fingerprint.c index 58de58ef..a8fcd0cd 100644 --- a/parser/pg_query_fingerprint.c +++ b/parser/pg_query_fingerprint.c @@ -326,7 +326,7 @@ uint64_t pg_query_fingerprint_node(const void *node) return result; } -PgQueryFingerprintResult pg_query_fingerprint_with_opts(const char* input, bool printTokens) +PgQueryFingerprintResult pg_query_fingerprint_with_opts(const char* input, int parser_options, bool printTokens) { MemoryContext ctx = NULL; PgQueryInternalParsetreeAndError parsetree_and_error; @@ -334,7 +334,7 @@ PgQueryFingerprintResult pg_query_fingerprint_with_opts(const char* input, bool ctx = pg_query_enter_memory_context(); - parsetree_and_error = pg_query_raw_parse(input); + parsetree_and_error = pg_query_raw_parse(input, parser_options); // These are all malloc-ed and will survive exiting the memory context, the caller is responsible to free them now result.stderr_buffer = parsetree_and_error.stderr_buffer; @@ -386,7 +386,12 @@ PgQueryFingerprintResult pg_query_fingerprint_with_opts(const char* input, bool PgQueryFingerprintResult pg_query_fingerprint(const char* input) { - return pg_query_fingerprint_with_opts(input, false); + return pg_query_fingerprint_with_opts(input, PG_QUERY_PARSE_DEFAULT, false); +} + +PgQueryFingerprintResult pg_query_fingerprint_opts(const char* input, int parser_options) +{ + return pg_query_fingerprint_with_opts(input, parser_options, false); } void pg_query_free_fingerprint_result(PgQueryFingerprintResult result) diff --git a/parser/pg_query_fingerprint.h b/parser/pg_query_fingerprint.h index 7c2b0cd8..10c3a13c 100644 --- a/parser/pg_query_fingerprint.h +++ b/parser/pg_query_fingerprint.h @@ -3,7 +3,7 @@ #include -extern PgQueryFingerprintResult pg_query_fingerprint_with_opts(const char* input, bool printTokens); +extern PgQueryFingerprintResult pg_query_fingerprint_with_opts(const char* input, int parser_options, bool printTokens); extern uint64_t pg_query_fingerprint_node(const void * node); diff --git a/parser/pg_query_internal.h b/parser/pg_query_internal.h index af119b2f..aacba633 100644 --- a/parser/pg_query_internal.h +++ b/parser/pg_query_internal.h @@ -14,7 +14,7 @@ typedef struct { PgQueryError* error; } PgQueryInternalParsetreeAndError; -PgQueryInternalParsetreeAndError pg_query_raw_parse(const char* input); +PgQueryInternalParsetreeAndError pg_query_raw_parse(const char* input, int parser_options); void pg_query_free_error(PgQueryError *error); diff --git a/parser/pg_query_json_plpgsql.c b/parser/pg_query_json_plpgsql.c index 14f4d47f..69c77b6b 100644 --- a/parser/pg_query_json_plpgsql.c +++ b/parser/pg_query_json_plpgsql.c @@ -626,6 +626,7 @@ dump_expr(StringInfo out, PLpgSQL_expr *node) WRITE_NODE_TYPE("PLpgSQL_expr"); WRITE_STRING_FIELD(query, query, query); + WRITE_ENUM_FIELD(parseMode, parseMode, parseMode); } static void diff --git a/parser/pg_query_normalize.c b/parser/pg_query_normalize.c index a03220a2..bc15b01e 100644 --- a/parser/pg_query_normalize.c +++ b/parser/pg_query_normalize.c @@ -417,7 +417,7 @@ static bool const_record_walker(Node *node, pgssConstLocations *jstate) record_matching_string(jstate, ((CreateSubscriptionStmt *) node)->conninfo); break; case T_AlterSubscriptionStmt: - record_matching_string(jstate, ((CreateSubscriptionStmt *) node)->conninfo); + record_matching_string(jstate, ((AlterSubscriptionStmt *) node)->conninfo); break; case T_CreateUserMappingStmt: return const_record_walker((Node *) ((CreateUserMappingStmt *) node)->options, jstate); diff --git a/parser/pg_query_outfuncs_protobuf.c b/parser/pg_query_outfuncs_protobuf.c index b8204077..10dd35f0 100644 --- a/parser/pg_query_outfuncs_protobuf.c +++ b/parser/pg_query_outfuncs_protobuf.c @@ -57,11 +57,11 @@ #define WRITE_BITMAPSET_FIELD(outname, outname_json, fldname) \ if (!bms_is_empty(node->fldname)) \ { \ - int x = 0; \ + int x = -1; \ int i = 0; \ out->n_##outname = bms_num_members(node->fldname); \ out->outname = palloc(sizeof(PgQuery__Node*) * out->n_##outname); \ - while ((x = bms_first_member(node->fldname)) >= 0) \ + while ((x = bms_next_member(node->fldname, x)) >= 0) \ out->outname[i++] = x; \ } diff --git a/parser/pg_query_parse.c b/parser/pg_query_parse.c index 6e52bd34..5307c0c0 100644 --- a/parser/pg_query_parse.c +++ b/parser/pg_query_parse.c @@ -9,7 +9,7 @@ #include #include -PgQueryInternalParsetreeAndError pg_query_raw_parse(const char* input) +PgQueryInternalParsetreeAndError pg_query_raw_parse(const char* input, int parser_options) { PgQueryInternalParsetreeAndError result = {0}; MemoryContext parse_context = CurrentMemoryContext; @@ -42,7 +42,39 @@ PgQueryInternalParsetreeAndError pg_query_raw_parse(const char* input) PG_TRY(); { - result.tree = raw_parser(input, RAW_PARSE_DEFAULT); + RawParseMode rawParseMode = RAW_PARSE_DEFAULT; + switch (parser_options & PG_QUERY_PARSE_MODE_BITMASK) + { + case PG_QUERY_PARSE_TYPE_NAME: + rawParseMode = RAW_PARSE_TYPE_NAME; + break; + case PG_QUERY_PARSE_PLPGSQL_EXPR: + rawParseMode = RAW_PARSE_PLPGSQL_EXPR; + break; + case PG_QUERY_PARSE_PLPGSQL_ASSIGN1: + rawParseMode = RAW_PARSE_PLPGSQL_ASSIGN1; + break; + case PG_QUERY_PARSE_PLPGSQL_ASSIGN2: + rawParseMode = RAW_PARSE_PLPGSQL_ASSIGN2; + break; + case PG_QUERY_PARSE_PLPGSQL_ASSIGN3: + rawParseMode = RAW_PARSE_PLPGSQL_ASSIGN3; + break; + } + + if ((parser_options & PG_QUERY_DISABLE_BACKSLASH_QUOTE) == PG_QUERY_DISABLE_BACKSLASH_QUOTE) { + backslash_quote = BACKSLASH_QUOTE_OFF; + } else { + backslash_quote = BACKSLASH_QUOTE_SAFE_ENCODING; + } + standard_conforming_strings = !((parser_options & PG_QUERY_DISABLE_STANDARD_CONFORMING_STRINGS) == PG_QUERY_DISABLE_STANDARD_CONFORMING_STRINGS); + escape_string_warning = !((parser_options & PG_QUERY_DISABLE_ESCAPE_STRING_WARNING) == PG_QUERY_DISABLE_ESCAPE_STRING_WARNING); + + result.tree = raw_parser(input, rawParseMode); + + backslash_quote = BACKSLASH_QUOTE_SAFE_ENCODING; + standard_conforming_strings = true; + escape_string_warning = true; #ifndef DEBUG // Save stderr for result @@ -84,6 +116,11 @@ PgQueryInternalParsetreeAndError pg_query_raw_parse(const char* input) } PgQueryParseResult pg_query_parse(const char* input) +{ + return pg_query_parse_opts(input, PG_QUERY_PARSE_DEFAULT); +} + +PgQueryParseResult pg_query_parse_opts(const char* input, int parser_options) { MemoryContext ctx = NULL; PgQueryInternalParsetreeAndError parsetree_and_error; @@ -92,7 +129,7 @@ PgQueryParseResult pg_query_parse(const char* input) ctx = pg_query_enter_memory_context(); - parsetree_and_error = pg_query_raw_parse(input); + parsetree_and_error = pg_query_raw_parse(input, parser_options); // These are all malloc-ed and will survive exiting the memory context, the caller is responsible to free them now result.stderr_buffer = parsetree_and_error.stderr_buffer; @@ -108,6 +145,11 @@ PgQueryParseResult pg_query_parse(const char* input) } PgQueryProtobufParseResult pg_query_parse_protobuf(const char* input) +{ + return pg_query_parse_protobuf_opts(input, PG_QUERY_PARSE_DEFAULT); +} + +PgQueryProtobufParseResult pg_query_parse_protobuf_opts(const char* input, int parser_options) { MemoryContext ctx = NULL; PgQueryInternalParsetreeAndError parsetree_and_error; @@ -115,7 +157,7 @@ PgQueryProtobufParseResult pg_query_parse_protobuf(const char* input) ctx = pg_query_enter_memory_context(); - parsetree_and_error = pg_query_raw_parse(input); + parsetree_and_error = pg_query_raw_parse(input, parser_options); // These are all malloc-ed and will survive exiting the memory context, the caller is responsible to free them now result.stderr_buffer = parsetree_and_error.stderr_buffer; diff --git a/parser/pg_query_parse_plpgsql.c b/parser/pg_query_parse_plpgsql.c index 8f37a20d..fc7845b0 100644 --- a/parser/pg_query_parse_plpgsql.c +++ b/parser/pg_query_parse_plpgsql.c @@ -449,7 +449,7 @@ PgQueryPlpgsqlParseResult pg_query_parse_plpgsql(const char* input) ctx = pg_query_enter_memory_context(); - parse_result = pg_query_raw_parse(input); + parse_result = pg_query_raw_parse(input, PG_QUERY_PARSE_DEFAULT); result.error = parse_result.error; if (result.error != NULL) { pg_query_exit_memory_context(ctx); diff --git a/parser/pg_query_scan.c b/parser/pg_query_scan.c index 558991ea..0a53d4f7 100644 --- a/parser/pg_query_scan.c +++ b/parser/pg_query_scan.c @@ -1,7 +1,7 @@ #include "pg_query.h" #include "pg_query_internal.h" -#include "parser/gramparse.h" +#include "gramparse.h" #include "lib/stringinfo.h" #include "protobuf/pg_query.pb-c.h" diff --git a/parser/pg_query_split.c b/parser/pg_query_split.c index 5870d022..b34b0f38 100644 --- a/parser/pg_query_split.c +++ b/parser/pg_query_split.c @@ -1,7 +1,7 @@ #include "pg_query.h" #include "pg_query_internal.h" -#include "parser/gramparse.h" +#include "gramparse.h" #include "lib/stringinfo.h" #include @@ -170,7 +170,7 @@ PgQuerySplitResult pg_query_split_with_parser(const char* input) ctx = pg_query_enter_memory_context(); - parsetree_and_error = pg_query_raw_parse(input); + parsetree_and_error = pg_query_raw_parse(input, PG_QUERY_PARSE_DEFAULT); // These are all malloc-ed and will survive exiting the memory context, the caller is responsible to free them now result.stderr_buffer = parsetree_and_error.stderr_buffer; diff --git a/parser/postgres_deparse.c b/parser/postgres_deparse.c index e4cac50c..e076c95e 100644 --- a/parser/postgres_deparse.c +++ b/parser/postgres_deparse.c @@ -29,6 +29,7 @@ typedef enum DeparseNodeContext { DEPARSE_NODE_CONTEXT_CREATE_TYPE, DEPARSE_NODE_CONTEXT_ALTER_TYPE, DEPARSE_NODE_CONTEXT_SET_STATEMENT, + DEPARSE_NODE_CONTEXT_FUNC_EXPR, // Identifier vs constant context DEPARSE_NODE_CONTEXT_IDENTIFIER, DEPARSE_NODE_CONTEXT_CONSTANT @@ -189,13 +190,18 @@ static void deparseFuncCall(StringInfo str, FuncCall *func_call); static void deparseMinMaxExpr(StringInfo str, MinMaxExpr *min_max_expr); static void deparseXmlExpr(StringInfo str, XmlExpr* xml_expr); static void deparseXmlSerialize(StringInfo str, XmlSerialize *xml_serialize); +static void deparseJsonIsPredicate(StringInfo str, JsonIsPredicate *json_is_predicate); +static void deparseJsonObjectAgg(StringInfo str, JsonObjectAgg *json_object_agg); +static void deparseJsonArrayAgg(StringInfo str, JsonArrayAgg *json_array_agg); +static void deparseJsonObjectConstructor(StringInfo str, JsonObjectConstructor *json_object_constructor); +static void deparseJsonArrayConstructor(StringInfo str, JsonArrayConstructor *json_array_constructor); +static void deparseJsonArrayQueryConstructor(StringInfo str, JsonArrayQueryConstructor *json_array_query_constructor); static void deparseConstraint(StringInfo str, Constraint *constraint); static void deparseSchemaStmt(StringInfo str, Node *node); static void deparseExecuteStmt(StringInfo str, ExecuteStmt *execute_stmt); static void deparseTriggerTransition(StringInfo str, TriggerTransition *trigger_transition); static void deparseCreateOpClassItem(StringInfo str, CreateOpClassItem *create_op_class_item); static void deparseAConst(StringInfo str, A_Const *a_const); -static void deparseCurrentOfExpr(StringInfo str, CurrentOfExpr *current_of_expr); static void deparseGroupingFunc(StringInfo str, GroupingFunc *grouping_func); static void deparsePreparableStmt(StringInfo str, Node *node); @@ -245,89 +251,144 @@ static void deparseAnyNameSkipLast(StringInfo str, List *parts) } } -// "a_expr" / "b_expr" in gram.y -static void deparseExpr(StringInfo str, Node *node) +// "func_expr" in gram.y +static void deparseFuncExpr(StringInfo str, Node *node) { - if (node == NULL) - return; switch (nodeTag(node)) { case T_FuncCall: deparseFuncCall(str, castNode(FuncCall, node)); break; - case T_XmlExpr: - deparseXmlExpr(str, castNode(XmlExpr, node)); - break; - case T_TypeCast: - deparseTypeCast(str, castNode(TypeCast, node), DEPARSE_NODE_CONTEXT_NONE); - break; - case T_A_Const: - deparseAConst(str, castNode(A_Const, node)); - break; - case T_ColumnRef: - deparseColumnRef(str, castNode(ColumnRef, node)); - break; - case T_A_Expr: - deparseAExpr(str, castNode(A_Expr, node), DEPARSE_NODE_CONTEXT_NONE); + case T_SQLValueFunction: + deparseSQLValueFunction(str, castNode(SQLValueFunction, node)); break; - case T_CaseExpr: - deparseCaseExpr(str, castNode(CaseExpr, node)); + case T_MinMaxExpr: + deparseMinMaxExpr(str, castNode(MinMaxExpr, node)); break; - case T_A_ArrayExpr: - deparseAArrayExpr(str, castNode(A_ArrayExpr, node)); + case T_CoalesceExpr: + deparseCoalesceExpr(str, castNode(CoalesceExpr, node)); break; - case T_NullTest: - deparseNullTest(str, castNode(NullTest, node)); + case T_XmlExpr: + deparseXmlExpr(str, castNode(XmlExpr, node)); break; case T_XmlSerialize: deparseXmlSerialize(str, castNode(XmlSerialize, node)); break; - case T_ParamRef: - deparseParamRef(str, castNode(ParamRef, node)); + case T_JsonObjectAgg: + deparseJsonObjectAgg(str, castNode(JsonObjectAgg, node)); break; - case T_BoolExpr: - deparseBoolExpr(str, castNode(BoolExpr, node)); + case T_JsonArrayAgg: + deparseJsonArrayAgg(str, castNode(JsonArrayAgg, node)); break; - case T_SubLink: - deparseSubLink(str, castNode(SubLink, node)); + case T_JsonObjectConstructor: + deparseJsonObjectConstructor(str, castNode(JsonObjectConstructor, node)); break; - case T_RowExpr: - deparseRowExpr(str, castNode(RowExpr, node)); + case T_JsonArrayConstructor: + deparseJsonArrayConstructor(str, castNode(JsonArrayConstructor, node)); break; - case T_CoalesceExpr: - deparseCoalesceExpr(str, castNode(CoalesceExpr, node)); + case T_JsonArrayQueryConstructor: + deparseJsonArrayQueryConstructor(str, castNode(JsonArrayQueryConstructor, node)); break; - case T_SetToDefault: - deparseSetToDefault(str, castNode(SetToDefault, node)); + default: + elog(ERROR, "deparse: unpermitted node type in func_expr: %d", + (int) nodeTag(node)); break; + } +} + +static void deparseCExpr(StringInfo str, Node *node); + +// "a_expr" in gram.y +static void deparseExpr(StringInfo str, Node *node) +{ + if (node == NULL) + return; + switch (nodeTag(node)) + { + case T_ColumnRef: + case T_A_Const: + case T_ParamRef: case T_A_Indirection: - deparseAIndirection(str, castNode(A_Indirection, node)); + case T_CaseExpr: + case T_SubLink: + case T_A_ArrayExpr: + case T_RowExpr: + case T_GroupingFunc: + deparseCExpr(str, node); + break; + case T_TypeCast: + deparseTypeCast(str, castNode(TypeCast, node), DEPARSE_NODE_CONTEXT_NONE); break; case T_CollateClause: deparseCollateClause(str, castNode(CollateClause, node)); break; - case T_CurrentOfExpr: - deparseCurrentOfExpr(str, castNode(CurrentOfExpr, node)); + case T_A_Expr: + deparseAExpr(str, castNode(A_Expr, node), DEPARSE_NODE_CONTEXT_NONE); break; - case T_SQLValueFunction: - deparseSQLValueFunction(str, castNode(SQLValueFunction, node)); + case T_BoolExpr: + deparseBoolExpr(str, castNode(BoolExpr, node)); break; - case T_MinMaxExpr: - deparseMinMaxExpr(str, castNode(MinMaxExpr, node)); + case T_NullTest: + deparseNullTest(str, castNode(NullTest, node)); break; case T_BooleanTest: deparseBooleanTest(str, castNode(BooleanTest, node)); break; - case T_GroupingFunc: - deparseGroupingFunc(str, castNode(GroupingFunc, node)); + case T_JsonIsPredicate: + deparseJsonIsPredicate(str, castNode(JsonIsPredicate, node)); + break; + case T_SetToDefault: + deparseSetToDefault(str, castNode(SetToDefault, node)); + break; + case T_FuncCall: + case T_SQLValueFunction: + case T_MinMaxExpr: + case T_CoalesceExpr: + case T_XmlExpr: + case T_XmlSerialize: + case T_JsonObjectAgg: + case T_JsonArrayAgg: + case T_JsonObjectConstructor: + case T_JsonArrayConstructor: + case T_JsonArrayQueryConstructor: + deparseFuncExpr(str, node); break; default: - elog(ERROR, "deparse: unpermitted node type in a_expr/b_expr: %d", + // Note that this is also the fallthrough for deparseBExpr and deparseCExpr + elog(ERROR, "deparse: unpermitted node type in a_expr/b_expr/c_expr: %d", (int) nodeTag(node)); break; } } +// "b_expr" in gram.y +static void deparseBExpr(StringInfo str, Node *node) +{ + if (IsA(node, XmlExpr)) { + deparseXmlExpr(str, castNode(XmlExpr, node)); + return; + } + + if (IsA(node, A_Expr)) { + A_Expr *a_expr = castNode(A_Expr, node); + // Other kinds are handled by "c_expr", with parens added around them + if (a_expr->kind == AEXPR_OP || a_expr->kind == AEXPR_DISTINCT || a_expr->kind == AEXPR_NOT_DISTINCT) { + deparseAExpr(str, a_expr, DEPARSE_NODE_CONTEXT_NONE); + return; + } + } + + if (IsA(node, BoolExpr)) { + BoolExpr *bool_expr = castNode(BoolExpr, node); + if (bool_expr->boolop == NOT_EXPR) { + deparseBoolExpr(str, bool_expr); + return; + } + } + + deparseCExpr(str, node); +} + // "c_expr" in gram.y static void deparseCExpr(StringInfo str, Node *node) { @@ -339,14 +400,6 @@ static void deparseCExpr(StringInfo str, Node *node) case T_A_Const: deparseAConst(str, castNode(A_Const, node)); break; - case T_TypeCast: - deparseTypeCast(str, castNode(TypeCast, node), DEPARSE_NODE_CONTEXT_NONE); - break; - case T_A_Expr: - appendStringInfoChar(str, '('); - deparseAExpr(str, castNode(A_Expr, node), DEPARSE_NODE_CONTEXT_NONE); - appendStringInfoChar(str, ')'); - break; case T_ParamRef: deparseParamRef(str, castNode(ParamRef, node)); break; @@ -356,9 +409,6 @@ static void deparseCExpr(StringInfo str, Node *node) case T_CaseExpr: deparseCaseExpr(str, castNode(CaseExpr, node)); break; - case T_FuncCall: - deparseFuncCall(str, castNode(FuncCall, node)); - break; case T_SubLink: deparseSubLink(str, castNode(SubLink, node)); break; @@ -371,9 +421,23 @@ static void deparseCExpr(StringInfo str, Node *node) case T_GroupingFunc: deparseGroupingFunc(str, castNode(GroupingFunc, node)); break; + case T_FuncCall: + case T_SQLValueFunction: + case T_MinMaxExpr: + case T_CoalesceExpr: + case T_XmlExpr: + case T_XmlSerialize: + case T_JsonObjectAgg: + case T_JsonArrayAgg: + case T_JsonObjectConstructor: + case T_JsonArrayConstructor: + case T_JsonArrayQueryConstructor: + deparseFuncExpr(str, node); + break; default: - elog(ERROR, "deparse: unpermitted node type in c_expr: %d", - (int) nodeTag(node)); + appendStringInfoChar(str, '('); + deparseExpr(str, node); + appendStringInfoChar(str, ')'); break; } } @@ -1634,6 +1698,27 @@ static void deparseWhereClause(StringInfo str, Node *node) } } +// "where_or_current_clause" in gram.y +// +// Note this method adds a trailing space if a value is output +static void deparseWhereOrCurrentClause(StringInfo str, Node *node) +{ + if (node == NULL) + return; + + appendStringInfoString(str, "WHERE "); + + if (IsA(node, CurrentOfExpr)) { + CurrentOfExpr *current_of_expr = castNode(CurrentOfExpr, node); + appendStringInfoString(str, "CURRENT OF "); + appendStringInfoString(str, quote_identifier(current_of_expr->cursor_name)); + } else { + deparseExpr(str, node); + } + + appendStringInfoChar(str, ' '); +} + // "group_by_list" in gram.y static void deparseGroupByList(StringInfo str, List *l) { @@ -1685,7 +1770,7 @@ static void deparseNameList(StringInfo str, List *l) } } -// "opt_sort_clause" in gram.y +// "opt_sort_clause" and "json_array_aggregate_order_by_clause_opt" in gram.y // // Note this method adds a trailing space if a value is output static void deparseOptSortClause(StringInfo str, List *l) @@ -1782,7 +1867,7 @@ static void deparseFuncExprWindowless(StringInfo str, Node* node) deparseSQLValueFunction(str, castNode(SQLValueFunction, node)); break; case T_TypeCast: - deparseTypeCast(str, castNode(TypeCast, node), DEPARSE_NODE_CONTEXT_NONE); + deparseTypeCast(str, castNode(TypeCast, node), DEPARSE_NODE_CONTEXT_FUNC_EXPR); break; case T_CoalesceExpr: deparseCoalesceExpr(str, castNode(CoalesceExpr, node)); @@ -1826,14 +1911,15 @@ static void deparseIndexElem(StringInfo str, IndexElem* index_elem) { switch (nodeTag(index_elem->expr)) { - case T_FuncCall: - case T_SQLValueFunction: - case T_TypeCast: - case T_CoalesceExpr: - case T_MinMaxExpr: - case T_XmlExpr: - case T_XmlSerialize: + // Simple function calls can be written without wrapping parens + case T_FuncCall: // func_application + case T_SQLValueFunction: // func_expr_common_subexpr + case T_CoalesceExpr: // func_expr_common_subexpr + case T_MinMaxExpr: // func_expr_common_subexpr + case T_XmlExpr: // func_expr_common_subexpr + case T_XmlSerialize: // func_expr_common_subexpr deparseFuncExprWindowless(str, index_elem->expr); + appendStringInfoString(str, " "); break; default: appendStringInfoChar(str, '('); @@ -2465,9 +2551,9 @@ static void deparseFuncCall(StringInfo str, FuncCall *func_call) * Note that the first and second arguments are switched in this format */ appendStringInfoString(str, "POSITION("); - deparseExpr(str, lsecond(func_call->args)); + deparseBExpr(str, lsecond(func_call->args)); appendStringInfoString(str, " IN "); - deparseExpr(str, linitial(func_call->args)); + deparseBExpr(str, linitial(func_call->args)); appendStringInfoChar(str, ')'); return; } else if (func_call->funcformat == COERCE_SQL_SYNTAX && @@ -2582,7 +2668,18 @@ static void deparseFuncCall(StringInfo str, FuncCall *func_call) * keyword parameter style when its called as a keyword, not as a regular function (i.e. pg_catalog.timezone) * Note that the arguments are swapped in this case */ - deparseExpr(str, lsecond(func_call->args)); + Expr* e = lsecond(func_call->args); + + if (IsA(e, A_Expr)) { + appendStringInfoChar(str, '('); + } + + deparseExpr(str, (Node*) e); + + if (IsA(e, A_Expr)) { + appendStringInfoChar(str, ')'); + } + appendStringInfoString(str, " AT TIME ZONE "); deparseExpr(str, linitial(func_call->args)); return; @@ -2641,6 +2738,13 @@ static void deparseFuncCall(StringInfo str, FuncCall *func_call) deparseExpr(str, lsecond(func_call->args)); appendStringInfoChar(str, ')'); return; + } else if (func_call->funcformat == COERCE_SQL_SYNTAX && + list_length(func_call->funcname) == 2 && + strcmp(strVal(linitial(func_call->funcname)), "pg_catalog") == 0 && + strcmp(strVal(lsecond(func_call->funcname)), "system_user") == 0) + { + appendStringInfoString(str, "SYSTEM_USER"); + return; } deparseFuncName(str, func_call->funcname); @@ -2879,8 +2983,8 @@ static void deparseAExpr(StringInfo str, A_Expr* a_expr, DeparseNodeContext cont ListCell *lc; char *name; - bool need_lexpr_parens = a_expr->lexpr != NULL && (IsA(a_expr->lexpr, BoolExpr) || IsA(a_expr->lexpr, NullTest) || IsA(a_expr->lexpr, A_Expr)); - bool need_rexpr_parens = a_expr->rexpr != NULL && (IsA(a_expr->rexpr, BoolExpr) || IsA(a_expr->rexpr, NullTest) || IsA(a_expr->rexpr, A_Expr)); + bool need_lexpr_parens = a_expr->lexpr != NULL && (IsA(a_expr->lexpr, BoolExpr) || IsA(a_expr->lexpr, BooleanTest) || IsA(a_expr->lexpr, NullTest) || IsA(a_expr->lexpr, A_Expr)); + bool need_rexpr_parens = a_expr->rexpr != NULL && (IsA(a_expr->rexpr, BoolExpr) || IsA(a_expr->rexpr, BooleanTest) || IsA(a_expr->rexpr, NullTest) || IsA(a_expr->rexpr, A_Expr)); switch (a_expr->kind) { case AEXPR_OP: /* normal operator */ @@ -3300,6 +3404,7 @@ static void deparseJoinExpr(StringInfo str, JoinExpr *join_expr) break; case JOIN_SEMI: case JOIN_ANTI: + case JOIN_RIGHT_ANTI: case JOIN_UNIQUE_OUTER: case JOIN_UNIQUE_INNER: // Only used by the planner/executor, not seen in parser output @@ -3545,7 +3650,7 @@ static void deparseTypeCast(StringInfo str, TypeCast *type_cast, DeparseNodeCont Assert(type_cast->typeName != NULL); - if (IsA(type_cast->arg, A_Expr)) + if (IsA(type_cast->arg, A_Expr) || context == DEPARSE_NODE_CONTEXT_FUNC_EXPR) { appendStringInfoString(str, "CAST("); deparseExpr(str, type_cast->arg); @@ -3950,7 +4055,16 @@ static void deparseMinMaxExpr(StringInfo str, MinMaxExpr *min_max_expr) static void deparseBooleanTest(StringInfo str, BooleanTest *boolean_test) { + bool need_parens = IsA(boolean_test->arg, BoolExpr); + + if (need_parens) + appendStringInfoChar(str, '('); + deparseExpr(str, (Node *) boolean_test->arg); + + if (need_parens) + appendStringInfoChar(str, ')'); + switch (boolean_test->booltesttype) { case IS_TRUE: @@ -3992,6 +4106,13 @@ static void deparseColumnDef(StringInfo str, ColumnDef *column_def) appendStringInfoChar(str, ' '); } + if (column_def->storage_name) + { + appendStringInfoString(str, "STORAGE "); + appendStringInfoString(str, column_def->storage_name); + appendStringInfoChar(str, ' '); + } + if (column_def->raw_default != NULL) { appendStringInfoString(str, "USING "); @@ -3999,6 +4120,13 @@ static void deparseColumnDef(StringInfo str, ColumnDef *column_def) appendStringInfoChar(str, ' '); } + if (column_def->compression != NULL) + { + appendStringInfoString(str, "COMPRESSION "); + appendStringInfoString(str, column_def->compression); + appendStringInfoChar(str, ' '); + } + if (column_def->fdwoptions != NULL) { deparseCreateGenericOptions(str, column_def->fdwoptions); @@ -4173,7 +4301,7 @@ static void deparseUpdateStmt(StringInfo str, UpdateStmt *update_stmt) } deparseFromClause(str, update_stmt->fromClause); - deparseWhereClause(str, update_stmt->whereClause); + deparseWhereOrCurrentClause(str, update_stmt->whereClause); if (list_length(update_stmt->returningList) > 0) { @@ -4287,7 +4415,7 @@ static void deparseDeleteStmt(StringInfo str, DeleteStmt *delete_stmt) appendStringInfoChar(str, ' '); } - deparseWhereClause(str, delete_stmt->whereClause); + deparseWhereOrCurrentClause(str, delete_stmt->whereClause); if (list_length(delete_stmt->returningList) > 0) { @@ -4502,6 +4630,8 @@ static void deparseTableLikeClause(StringInfo str, TableLikeClause *table_like_c { if (table_like_clause->options & CREATE_TABLE_LIKE_COMMENTS) appendStringInfoString(str, "INCLUDING COMMENTS "); + if (table_like_clause->options & CREATE_TABLE_LIKE_COMPRESSION) + appendStringInfoString(str, "INCLUDING COMPRESSION "); if (table_like_clause->options & CREATE_TABLE_LIKE_CONSTRAINTS) appendStringInfoString(str, "INCLUDING CONSTRAINTS "); if (table_like_clause->options & CREATE_TABLE_LIKE_DEFAULTS) @@ -4609,7 +4739,7 @@ static void deparseConstraint(StringInfo str, Constraint *constraint) break; case CONSTR_DEFAULT: appendStringInfoString(str, "DEFAULT "); - deparseExpr(str, constraint->raw_expr); + deparseBExpr(str, constraint->raw_expr); break; case CONSTR_IDENTITY: appendStringInfoString(str, "GENERATED "); @@ -4643,6 +4773,8 @@ static void deparseConstraint(StringInfo str, Constraint *constraint) break; case CONSTR_UNIQUE: appendStringInfoString(str, "UNIQUE "); + if (constraint->nulls_not_distinct) + appendStringInfoString(str, "NULLS NOT DISTINCT "); break; case CONSTR_EXCLUSION: appendStringInfoString(str, "EXCLUDE "); @@ -5108,7 +5240,19 @@ static void deparsePartitionSpec(StringInfo str, PartitionSpec *partition_spec) ListCell *lc; appendStringInfoString(str, "PARTITION BY "); - appendStringInfoString(str, partition_spec->strategy); + + switch (partition_spec->strategy) + { + case PARTITION_STRATEGY_LIST: + appendStringInfoString(str, "LIST"); + break; + case PARTITION_STRATEGY_HASH: + appendStringInfoString(str, "HASH"); + break; + case PARTITION_STRATEGY_RANGE: + appendStringInfoString(str, "RANGE"); + break; + } appendStringInfoChar(str, '('); foreach(lc, partition_spec->partParams) @@ -6157,9 +6301,6 @@ static void deparseAlterTableCmd(StringInfo str, AlterTableCmd *alter_table_cmd, else appendStringInfoString(str, "ADD COLUMN "); break; - case AT_AddColumnRecurse: /* internal to commands/tablecmds.c */ - Assert(false); - break; case AT_AddColumnToView: /* implicitly via CREATE OR REPLACE VIEW */ // Not present in raw parser output Assert(false); @@ -6218,9 +6359,6 @@ static void deparseAlterTableCmd(StringInfo str, AlterTableCmd *alter_table_cmd, else appendStringInfoString(str, "DROP "); break; - case AT_DropColumnRecurse: /* internal to commands/tablecmds.c */ - Assert(false); - break; case AT_AddIndex: /* add index */ appendStringInfoString(str, "ADD INDEX "); break; @@ -6230,9 +6368,6 @@ static void deparseAlterTableCmd(StringInfo str, AlterTableCmd *alter_table_cmd, case AT_AddConstraint: /* add constraint */ appendStringInfoString(str, "ADD "); break; - case AT_AddConstraintRecurse: /* internal to commands/tablecmds.c */ - Assert(false); - break; case AT_ReAddConstraint: /* internal to commands/tablecmds.c */ Assert(false); break; @@ -6245,9 +6380,6 @@ static void deparseAlterTableCmd(StringInfo str, AlterTableCmd *alter_table_cmd, case AT_ValidateConstraint: /* validate constraint */ appendStringInfoString(str, "VALIDATE CONSTRAINT "); break; - case AT_ValidateConstraintRecurse: /* internal to commands/tablecmds.c */ - Assert(false); - break; case AT_AddIndexConstraint: /* add constraint using existing index */ // Not present in raw parser output Assert(false); @@ -6255,9 +6387,6 @@ static void deparseAlterTableCmd(StringInfo str, AlterTableCmd *alter_table_cmd, case AT_DropConstraint: /* drop constraint */ appendStringInfoString(str, "DROP CONSTRAINT "); break; - case AT_DropConstraintRecurse: /* internal to commands/tablecmds.c */ - Assert(false); - break; case AT_ReAddComment: /* internal to commands/tablecmds.c */ case AT_ReAddStatistics: /* internal to commands/tablecmds.c */ Assert(false); @@ -6321,7 +6450,7 @@ static void deparseAlterTableCmd(StringInfo str, AlterTableCmd *alter_table_cmd, appendStringInfoString(str, "DISABLE TRIGGER "); break; case AT_EnableTrigAll: /* ENABLE TRIGGER ALL */ - appendStringInfoString(str, "ENABLE TRIGGER "); + appendStringInfoString(str, "ENABLE TRIGGER ALL "); break; case AT_DisableTrigAll: /* DISABLE TRIGGER ALL */ appendStringInfoString(str, "DISABLE TRIGGER ALL "); @@ -7325,6 +7454,8 @@ static void deparseCopyStmt(StringInfo str, CopyStmt *copy_stmt) appendStringInfoString(str, "BINARY"); else if (strcmp(format, "csv") == 0) appendStringInfoString(str, "CSV"); + else if (strcmp(format, "text") == 0) + appendStringInfoString(str, "TEXT"); else Assert(false); } @@ -7954,8 +8085,20 @@ static void deparseGrantRoleStmt(StringInfo str, GrantRoleStmt *grant_role_stmt) else appendStringInfoString(str, "REVOKE "); - if (!grant_role_stmt->is_grant && grant_role_stmt->admin_opt) - appendStringInfoString(str, "ADMIN OPTION FOR "); + if (!grant_role_stmt->is_grant && list_length(grant_role_stmt->opt)) { + DefElem *defelem = castNode(DefElem, linitial(grant_role_stmt->opt)); + Assert(!castNode(Boolean, defelem->arg)->boolval); + + if (strcmp("admin", defelem->defname) == 0) { + appendStringInfoString(str, "ADMIN "); + } else if (strcmp("inherit", defelem->defname) == 0) { + appendStringInfoString(str, "INHERIT "); + } else if (strcmp("set", defelem->defname) == 0) { + appendStringInfoString(str, "SET "); + } + + appendStringInfoString(str, "OPTION FOR "); + } foreach(lc, grant_role_stmt->granted_roles) { @@ -7973,8 +8116,31 @@ static void deparseGrantRoleStmt(StringInfo str, GrantRoleStmt *grant_role_stmt) deparseRoleList(str, grant_role_stmt->grantee_roles); appendStringInfoChar(str, ' '); - if (grant_role_stmt->is_grant && grant_role_stmt->admin_opt) - appendStringInfoString(str, "WITH ADMIN OPTION "); + if (grant_role_stmt->is_grant) { + if (list_length(grant_role_stmt->opt) > 0) { + appendStringInfoString(str, "WITH "); + } + + foreach(lc, grant_role_stmt->opt) { + DefElem *defelem = castNode(DefElem, lfirst(lc)); + if (strcmp("admin", defelem->defname) == 0) { + appendStringInfoString(str, "ADMIN "); + appendStringInfoString(str, castNode(Boolean, defelem->arg)->boolval ? "OPTION" : "FALSE"); + } else if (strcmp("inherit", defelem->defname) == 0) { + appendStringInfoString(str, "INHERIT "); + appendStringInfoString(str, castNode(Boolean, defelem->arg)->boolval ? "OPTION" : "FALSE"); + } else if (strcmp("set", defelem->defname) == 0) { + appendStringInfoString(str, "SET "); + appendStringInfoString(str, castNode(Boolean, defelem->arg)->boolval ? "OPTION" : "FALSE"); + } + + if (lnext(grant_role_stmt->opt, lc)) { + appendStringInfoChar(str, ','); + } + + appendStringInfoChar(str, ' '); + } + } if (grant_role_stmt->grantor) { @@ -7982,6 +8148,10 @@ static void deparseGrantRoleStmt(StringInfo str, GrantRoleStmt *grant_role_stmt) deparseRoleSpec(str, castNode(RoleSpec, grant_role_stmt->grantor)); } + if (grant_role_stmt->behavior == DROP_CASCADE) { + appendStringInfoString(str, "CASCADE "); + } + removeTrailingSpace(str); } @@ -9795,12 +9965,6 @@ static void deparseClosePortalStmt(StringInfo str, ClosePortalStmt *close_portal } } -static void deparseCurrentOfExpr(StringInfo str, CurrentOfExpr *current_of_expr) -{ - appendStringInfoString(str, "CURRENT OF "); - appendStringInfoString(str, quote_identifier(current_of_expr->cursor_name)); -} - static void deparseCreateTrigStmt(StringInfo str, CreateTrigStmt *create_trig_stmt) { ListCell *lc; @@ -10105,9 +10269,243 @@ static void deparseXmlSerialize(StringInfo str, XmlSerialize *xml_serialize) deparseExpr(str, xml_serialize->expr); appendStringInfoString(str, " AS "); deparseTypeName(str, xml_serialize->typeName); + + if (xml_serialize->indent) { + appendStringInfoString(str, " INDENT"); + } + appendStringInfoString(str, ")"); } +static void deparseJsonFormat(StringInfo str, JsonFormat *json_format) +{ + if (json_format == NULL || json_format->format_type == JS_FORMAT_DEFAULT) + return; + + appendStringInfoString(str, "FORMAT JSON "); + + switch (json_format->encoding) + { + case JS_ENC_UTF8: + appendStringInfoString(str, "ENCODING utf8 "); + break; + case JS_ENC_UTF16: + appendStringInfoString(str, "ENCODING utf16 "); + break; + case JS_ENC_UTF32: + appendStringInfoString(str, "ENCODING utf32 "); + break; + case JS_ENC_DEFAULT: + // no encoding specified + break; + } +} + +static void deparseJsonIsPredicate(StringInfo str, JsonIsPredicate *j) +{ + deparseExpr(str, j->expr); + appendStringInfoChar(str, ' '); + + deparseJsonFormat(str, castNode(JsonFormat, j->format)); + + appendStringInfoString(str, "IS "); + + switch (j->item_type) + { + case JS_TYPE_ANY: + appendStringInfoString(str, "JSON "); + break; + case JS_TYPE_ARRAY: + appendStringInfoString(str, "JSON ARRAY "); + break; + case JS_TYPE_OBJECT: + appendStringInfoString(str, "JSON OBJECT "); + break; + case JS_TYPE_SCALAR: + appendStringInfoString(str, "JSON SCALAR "); + break; + } + + if (j->unique_keys) + appendStringInfoString(str, "WITH UNIQUE "); + + removeTrailingSpace(str); +} + +// "json_value_expr" in gram.y +static void deparseJsonValueExpr(StringInfo str, JsonValueExpr *json_value_expr) +{ + deparseExpr(str, (Node *) json_value_expr->raw_expr); + appendStringInfoChar(str, ' '); + deparseJsonFormat(str, json_value_expr->format); +} + +// "json_value_expr_list" in gram.y +static void deparseJsonValueExprList(StringInfo str, List *exprs) +{ + ListCell *lc; + foreach(lc, exprs) + { + deparseJsonValueExpr(str, lfirst(lc)); + removeTrailingSpace(str); + if (lnext(exprs, lc)) + appendStringInfoString(str, ", "); + } + appendStringInfoChar(str, ' '); +} + +// "json_name_and_value" in gram.y +static void deparseJsonKeyValue(StringInfo str, JsonKeyValue *json_key_value) +{ + deparseExpr(str, (Node *) json_key_value->key); + appendStringInfoString(str, ": "); + deparseJsonValueExpr(str, json_key_value->value); +} + +// "json_name_and_value_list" in gram.y +static void deparseJsonKeyValueList(StringInfo str, List *exprs) +{ + ListCell *lc; + foreach(lc, exprs) + { + deparseJsonKeyValue(str, lfirst(lc)); + removeTrailingSpace(str); + if (lnext(exprs, lc)) + appendStringInfoString(str, ", "); + } + appendStringInfoChar(str, ' '); +} + +static void deparseJsonOutput(StringInfo str, JsonOutput *json_output) +{ + if (json_output == NULL) + return; + + Assert(json_output->returning != NULL); + + appendStringInfoString(str, "RETURNING "); + deparseTypeName(str, json_output->typeName); + appendStringInfoChar(str, ' '); + deparseJsonFormat(str, json_output->returning->format); +} + +static void deparseJsonObjectAgg(StringInfo str, JsonObjectAgg *json_object_agg) +{ + Assert(json_object_agg->constructor != NULL); + + appendStringInfoString(str, "JSON_OBJECTAGG("); + deparseJsonKeyValue(str, json_object_agg->arg); + + if (json_object_agg->absent_on_null) + appendStringInfoString(str, "ABSENT ON NULL "); + + if (json_object_agg->unique) + appendStringInfoString(str, "WITH UNIQUE "); + + deparseJsonOutput(str, json_object_agg->constructor->output); + + removeTrailingSpace(str); + appendStringInfoString(str, ") "); + + if (json_object_agg->constructor->agg_filter) + { + appendStringInfoString(str, "FILTER (WHERE "); + deparseExpr(str, json_object_agg->constructor->agg_filter); + appendStringInfoString(str, ") "); + } + + if (json_object_agg->constructor->over) + { + struct WindowDef *over = json_object_agg->constructor->over; + appendStringInfoString(str, "OVER "); + if (over->name) + appendStringInfoString(str, over->name); + else + deparseWindowDef(str, over); + } + + removeTrailingSpace(str); +} + +static void deparseJsonArrayAgg(StringInfo str, JsonArrayAgg *json_array_agg) +{ + Assert(json_array_agg->constructor != NULL); + + appendStringInfoString(str, "JSON_ARRAYAGG("); + deparseJsonValueExpr(str, json_array_agg->arg); + deparseOptSortClause(str, json_array_agg->constructor->agg_order); + + if (!json_array_agg->absent_on_null) + appendStringInfoString(str, "NULL ON NULL "); + + deparseJsonOutput(str, json_array_agg->constructor->output); + + removeTrailingSpace(str); + appendStringInfoString(str, ") "); + + if (json_array_agg->constructor->agg_filter) + { + appendStringInfoString(str, "FILTER (WHERE "); + deparseExpr(str, json_array_agg->constructor->agg_filter); + appendStringInfoString(str, ") "); + } + + if (json_array_agg->constructor->over) + { + struct WindowDef *over = json_array_agg->constructor->over; + appendStringInfoString(str, "OVER "); + if (over->name) + appendStringInfoString(str, over->name); + else + deparseWindowDef(str, over); + } + + removeTrailingSpace(str); +} + +static void deparseJsonObjectConstructor(StringInfo str, JsonObjectConstructor *json_object_constructor) +{ + appendStringInfoString(str, "JSON_OBJECT("); + deparseJsonKeyValueList(str, json_object_constructor->exprs); + + if (json_object_constructor->absent_on_null) + appendStringInfoString(str, "ABSENT ON NULL "); + + if (json_object_constructor->unique) + appendStringInfoString(str, "WITH UNIQUE "); + + deparseJsonOutput(str, json_object_constructor->output); + + removeTrailingSpace(str); + appendStringInfoChar(str, ')'); +} + +static void deparseJsonArrayConstructor(StringInfo str, JsonArrayConstructor *json_array_constructor) +{ + appendStringInfoString(str, "JSON_ARRAY("); + deparseJsonValueExprList(str, json_array_constructor->exprs); + + if (!json_array_constructor->absent_on_null) + appendStringInfoString(str, "NULL ON NULL "); + + deparseJsonOutput(str, json_array_constructor->output); + + removeTrailingSpace(str); + appendStringInfoChar(str, ')'); +} + +static void deparseJsonArrayQueryConstructor(StringInfo str, JsonArrayQueryConstructor *json_array_query_constructor) +{ + appendStringInfoString(str, "JSON_ARRAY("); + + deparseSelectStmt(str, castNode(SelectStmt, json_array_query_constructor->query)); + deparseJsonFormat(str, json_array_query_constructor->format); + deparseJsonOutput(str, json_array_query_constructor->output); + + removeTrailingSpace(str); + appendStringInfoChar(str, ')'); +} + static void deparseGroupingFunc(StringInfo str, GroupingFunc *grouping_func) { appendStringInfoString(str, "GROUPING("); diff --git a/parser/src_backend_catalog_namespace.c b/parser/src_backend_catalog_namespace.c index 9d6e7533..8f652a32 100644 --- a/parser/src_backend_catalog_namespace.c +++ b/parser/src_backend_catalog_namespace.c @@ -16,7 +16,7 @@ * and implementing search-path-controlled searches. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -35,6 +35,7 @@ #include "catalog/pg_authid.h" #include "catalog/pg_collation.h" #include "catalog/pg_conversion.h" +#include "catalog/pg_database.h" #include "catalog/pg_namespace.h" #include "catalog/pg_opclass.h" #include "catalog/pg_operator.h" @@ -58,7 +59,7 @@ #include "utils/acl.h" #include "utils/builtins.h" #include "utils/catcache.h" -#include "utils/guc.h" +#include "utils/guc_hooks.h" #include "utils/inval.h" #include "utils/lsyscache.h" #include "utils/memutils.h" @@ -869,6 +870,10 @@ NameListToString(List *names) /* * PushOverrideSearchPath - temporarily override the search path * + * Do not use this function; almost any usage introduces a security + * vulnerability. It exists for the benefit of legacy code running in + * non-security-sensitive environments. + * * We allow nested overrides, hence the push/pop terminology. The GUC * search_path variable is ignored while an override is active. * diff --git a/parser/src_backend_catalog_pg_proc.c b/parser/src_backend_catalog_pg_proc.c index b2f8df0b..ecc5c06e 100644 --- a/parser/src_backend_catalog_pg_proc.c +++ b/parser/src_backend_catalog_pg_proc.c @@ -9,7 +9,7 @@ * pg_proc.c * routines to support manipulation of the pg_proc relation * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_backend_commands_define.c b/parser/src_backend_commands_define.c index 57e41831..4f0ea4f0 100644 --- a/parser/src_backend_commands_define.c +++ b/parser/src_backend_commands_define.c @@ -10,7 +10,7 @@ * Support routines for various kinds of object creation. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_backend_nodes_bitmapset.c b/parser/src_backend_nodes_bitmapset.c index b6c861a8..8c5147af 100644 --- a/parser/src_backend_nodes_bitmapset.c +++ b/parser/src_backend_nodes_bitmapset.c @@ -2,8 +2,6 @@ * Symbols referenced in this file: * - bms_copy * - bms_equal - * - bms_is_empty - * - bms_first_member * - bms_free * - bms_next_member * - bms_num_members @@ -17,13 +15,11 @@ * * A bitmap set can represent any set of nonnegative integers, although * it is mainly intended for sets where the maximum value is not large, - * say at most a few hundred. By convention, a NULL pointer is always - * accepted by all operations to represent the empty set. (But beware - * that this is not the only representation of the empty set. Use - * bms_is_empty() in preference to testing for NULL.) + * say at most a few hundred. By convention, we always represent the + * empty set by a NULL pointer. * * - * Copyright (c) 2003-2022, PostgreSQL Global Development Group + * Copyright (c) 2003-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/backend/nodes/bitmapset.c @@ -78,6 +74,8 @@ #error "invalid BITS_PER_BITMAPWORD" #endif +static bool bms_is_empty_internal(const Bitmapset *a); + /* * bms_copy - make a palloc'd copy of a bitmapset @@ -116,10 +114,10 @@ bms_equal(const Bitmapset *a, const Bitmapset *b) { if (b == NULL) return true; - return bms_is_empty(b); + return false; } else if (b == NULL) - return bms_is_empty(a); + return false; /* Identify shorter and longer input */ if (a->nwords <= b->nwords) { @@ -290,28 +288,13 @@ bms_num_members(const Bitmapset *a) /* - * bms_is_empty - is a set empty? + * bms_is_empty_internal - is a set empty? * - * This is even faster than bms_membership(). + * This is now used only locally, to detect cases where a function has + * computed an empty set that we must now get rid of. Hence, we can + * assume the input isn't NULL. */ -bool -bms_is_empty(const Bitmapset *a) -{ - int nwords; - int wordnum; - - if (a == NULL) - return true; - nwords = a->nwords; - for (wordnum = 0; wordnum < nwords; wordnum++) - { - bitmapword w = a->words[wordnum]; - if (w != 0) - return false; - } - return true; -} /* @@ -370,48 +353,6 @@ bms_is_empty(const Bitmapset *a) */ -/* - * bms_first_member - find and remove first member of a set - * - * Returns -1 if set is empty. NB: set is destructively modified! - * - * This is intended as support for iterating through the members of a set. - * The typical pattern is - * - * while ((x = bms_first_member(inputset)) >= 0) - * process member x; - * - * CAUTION: this destroys the content of "inputset". If the set must - * not be modified, use bms_next_member instead. - */ -int -bms_first_member(Bitmapset *a) -{ - int nwords; - int wordnum; - - if (a == NULL) - return -1; - nwords = a->nwords; - for (wordnum = 0; wordnum < nwords; wordnum++) - { - bitmapword w = a->words[wordnum]; - - if (w != 0) - { - int result; - - w = RIGHTMOST_ONE(w); - a->words[wordnum] &= ~w; - - result = wordnum * BITS_PER_BITMAPWORD; - result += bmw_rightmost_one_pos(w); - return result; - } - } - return -1; -} - /* * bms_next_member - find next member of a set * diff --git a/parser/src_backend_nodes_copyfuncs.c b/parser/src_backend_nodes_copyfuncs.c index 9ee90c65..91e60af7 100644 --- a/parser/src_backend_nodes_copyfuncs.c +++ b/parser/src_backend_nodes_copyfuncs.c @@ -1,305 +1,10 @@ /*-------------------------------------------------------------------- * Symbols referenced in this file: * - copyObjectImpl - * - _copyPlannedStmt - * - _copyPlan - * - CopyPlanFields - * - _copyResult - * - _copyProjectSet - * - _copyModifyTable - * - _copyAppend - * - _copyMergeAppend - * - _copyRecursiveUnion - * - _copyBitmapAnd - * - _copyBitmapOr - * - _copyScan - * - CopyScanFields - * - _copyGather - * - _copyGatherMerge - * - _copySeqScan - * - _copySampleScan - * - _copyIndexScan - * - _copyIndexOnlyScan - * - _copyBitmapIndexScan - * - _copyBitmapHeapScan - * - _copyTidScan - * - _copyTidRangeScan - * - _copySubqueryScan - * - _copyFunctionScan - * - _copyTableFuncScan - * - _copyValuesScan - * - _copyCteScan - * - _copyNamedTuplestoreScan - * - _copyWorkTableScan - * - _copyForeignScan - * - _copyCustomScan - * - _copyJoin - * - CopyJoinFields - * - _copyNestLoop - * - _copyMergeJoin - * - _copyHashJoin - * - _copyMaterial - * - _copyMemoize - * - _copySort - * - CopySortFields - * - _copyIncrementalSort - * - _copyGroup - * - _copyAgg - * - _copyWindowAgg - * - _copyUnique - * - _copyHash - * - _copySetOp - * - _copyLockRows - * - _copyLimit - * - _copyNestLoopParam - * - _copyPlanRowMark - * - _copyPartitionPruneInfo - * - _copyPartitionedRelPruneInfo - * - _copyPartitionPruneStepOp - * - _copyPartitionPruneStepCombine - * - _copyPlanInvalItem - * - _copyAlias - * - _copyRangeVar - * - _copyTableFunc - * - _copyIntoClause - * - _copyVar * - _copyConst - * - _copyParam - * - _copyAggref - * - _copyGroupingFunc - * - _copyWindowFunc - * - _copySubscriptingRef - * - _copyFuncExpr - * - _copyNamedArgExpr - * - _copyOpExpr - * - _copyDistinctExpr - * - _copyNullIfExpr - * - _copyScalarArrayOpExpr - * - _copyBoolExpr - * - _copySubLink - * - _copySubPlan - * - _copyAlternativeSubPlan - * - _copyFieldSelect - * - _copyFieldStore - * - _copyRelabelType - * - _copyCoerceViaIO - * - _copyArrayCoerceExpr - * - _copyConvertRowtypeExpr - * - _copyCollateExpr - * - _copyCaseExpr - * - _copyCaseWhen - * - _copyCaseTestExpr - * - _copyArrayExpr - * - _copyRowExpr - * - _copyRowCompareExpr - * - _copyCoalesceExpr - * - _copyMinMaxExpr - * - _copySQLValueFunction - * - _copyXmlExpr - * - _copyNullTest - * - _copyBooleanTest - * - _copyCoerceToDomain - * - _copyCoerceToDomainValue - * - _copySetToDefault - * - _copyCurrentOfExpr - * - _copyNextValueExpr - * - _copyInferenceElem - * - _copyTargetEntry - * - _copyRangeTblRef - * - _copyJoinExpr - * - _copyFromExpr - * - _copyOnConflictExpr - * - _copyPathKey - * - _copyRestrictInfo - * - _copyPlaceHolderVar - * - _copySpecialJoinInfo - * - _copyAppendRelInfo - * - _copyPlaceHolderInfo - * - _copyInteger - * - _copyFloat - * - _copyBoolean - * - _copyString - * - _copyBitString - * - _copyExtensibleNode - * - _copyQuery - * - _copyRawStmt - * - _copyInsertStmt - * - _copyDeleteStmt - * - _copyUpdateStmt - * - _copyMergeStmt - * - _copySelectStmt - * - _copySetOperationStmt - * - _copyReturnStmt - * - _copyPLAssignStmt - * - _copyAlterTableStmt - * - _copyAlterTableCmd - * - _copyAlterCollationStmt - * - _copyAlterDomainStmt - * - _copyGrantStmt - * - _copyGrantRoleStmt - * - _copyAlterDefaultPrivilegesStmt - * - _copyDeclareCursorStmt - * - _copyClosePortalStmt - * - _copyCallStmt - * - _copyClusterStmt - * - _copyCopyStmt - * - _copyCreateStmt - * - CopyCreateStmtFields - * - _copyTableLikeClause - * - _copyDefineStmt - * - _copyDropStmt - * - _copyTruncateStmt - * - _copyCommentStmt - * - _copySecLabelStmt - * - _copyFetchStmt - * - _copyIndexStmt - * - _copyCreateStatsStmt - * - _copyAlterStatsStmt - * - _copyCreateFunctionStmt - * - _copyFunctionParameter - * - _copyAlterFunctionStmt - * - _copyDoStmt - * - _copyRenameStmt - * - _copyAlterObjectDependsStmt - * - _copyAlterObjectSchemaStmt - * - _copyAlterOwnerStmt - * - _copyAlterOperatorStmt - * - _copyAlterTypeStmt - * - _copyRuleStmt - * - _copyNotifyStmt - * - _copyListenStmt - * - _copyUnlistenStmt - * - _copyTransactionStmt - * - _copyCompositeTypeStmt - * - _copyCreateEnumStmt - * - _copyCreateRangeStmt - * - _copyAlterEnumStmt - * - _copyViewStmt - * - _copyLoadStmt - * - _copyCreateDomainStmt - * - _copyCreateOpClassStmt - * - _copyCreateOpClassItem - * - _copyCreateOpFamilyStmt - * - _copyAlterOpFamilyStmt - * - _copyCreatedbStmt - * - _copyAlterDatabaseStmt - * - _copyAlterDatabaseRefreshCollStmt - * - _copyAlterDatabaseSetStmt - * - _copyDropdbStmt - * - _copyVacuumStmt - * - _copyVacuumRelation - * - _copyExplainStmt - * - _copyCreateTableAsStmt - * - _copyRefreshMatViewStmt - * - _copyReplicaIdentityStmt - * - _copyAlterSystemStmt - * - _copyCreateSeqStmt - * - _copyAlterSeqStmt - * - _copyVariableSetStmt - * - _copyVariableShowStmt - * - _copyDiscardStmt - * - _copyCreateTableSpaceStmt - * - _copyDropTableSpaceStmt - * - _copyAlterTableSpaceOptionsStmt - * - _copyAlterTableMoveAllStmt - * - _copyCreateExtensionStmt - * - _copyAlterExtensionStmt - * - _copyAlterExtensionContentsStmt - * - _copyCreateFdwStmt - * - _copyAlterFdwStmt - * - _copyCreateForeignServerStmt - * - _copyAlterForeignServerStmt - * - _copyCreateUserMappingStmt - * - _copyAlterUserMappingStmt - * - _copyDropUserMappingStmt - * - _copyCreateForeignTableStmt - * - _copyImportForeignSchemaStmt - * - _copyCreateTransformStmt - * - _copyCreateAmStmt - * - _copyCreateTrigStmt - * - _copyCreateEventTrigStmt - * - _copyAlterEventTrigStmt - * - _copyCreatePLangStmt - * - _copyCreateRoleStmt - * - _copyAlterRoleStmt - * - _copyAlterRoleSetStmt - * - _copyDropRoleStmt - * - _copyLockStmt - * - _copyConstraintsSetStmt - * - _copyReindexStmt - * - _copyCreateSchemaStmt - * - _copyCreateConversionStmt - * - _copyCreateCastStmt - * - _copyPrepareStmt - * - _copyExecuteStmt - * - _copyDeallocateStmt - * - _copyDropOwnedStmt - * - _copyReassignOwnedStmt - * - _copyAlterTSDictionaryStmt - * - _copyAlterTSConfigurationStmt - * - _copyCreatePolicyStmt - * - _copyAlterPolicyStmt - * - _copyCreatePublicationStmt - * - _copyAlterPublicationStmt - * - _copyCreateSubscriptionStmt - * - _copyAlterSubscriptionStmt - * - _copyDropSubscriptionStmt - * - _copyA_Expr - * - _copyColumnRef - * - _copyParamRef * - _copyA_Const - * - _copyFuncCall - * - _copyA_Star - * - _copyA_Indices - * - _copyA_Indirection - * - _copyA_ArrayExpr - * - _copyResTarget - * - _copyMultiAssignRef - * - _copyTypeCast - * - _copyCollateClause - * - _copySortBy - * - _copyWindowDef - * - _copyRangeSubselect - * - _copyRangeFunction - * - _copyRangeTableSample - * - _copyRangeTableFunc - * - _copyRangeTableFuncCol - * - _copyTypeName - * - _copyIndexElem - * - _copyStatsElem - * - _copyColumnDef - * - _copyConstraint - * - _copyDefElem - * - _copyLockingClause - * - _copyRangeTblEntry - * - _copyRangeTblFunction - * - _copyTableSampleClause - * - _copyWithCheckOption - * - _copySortGroupClause - * - _copyGroupingSet - * - _copyWindowClause - * - _copyRowMarkClause - * - _copyWithClause - * - _copyInferClause - * - _copyOnConflictClause - * - _copyCTESearchClause - * - _copyCTECycleClause - * - _copyCommonTableExpr - * - _copyMergeWhenClause - * - _copyMergeAction - * - _copyObjectWithArgs - * - _copyAccessPriv - * - _copyXmlSerialize - * - _copyRoleSpec - * - _copyTriggerTransition - * - _copyPartitionElem - * - _copyPartitionSpec - * - _copyPartitionBoundSpec - * - _copyPartitionRangeDatum - * - _copyPartitionCmd - * - _copyPublicationObject - * - _copyPublicationTable - * - _copyForeignKeyCacheInfo + * - _copyBitmapset + * - _copyExtensibleNode *-------------------------------------------------------------------- */ @@ -308,15 +13,8 @@ * copyfuncs.c * Copy functions for Postgres tree nodes. * - * NOTE: we currently support copying all node types found in parse and - * plan trees. We do not support copying executor state trees; there - * is no need for that, and no point in maintaining all the code that - * would be needed. We also do not support copying Path trees, mainly - * because the circular linkages between RelOptInfo and Path nodes can't - * be handled easily in a simple depth-first traversal. * - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -328,11 +26,7 @@ #include "postgres.h" #include "miscadmin.h" -#include "nodes/extensible.h" -#include "nodes/pathnodes.h" -#include "nodes/plannodes.h" #include "utils/datum.h" -#include "utils/rel.h" /* @@ -378,5946 +72,146 @@ (newnode->fldname = from->fldname) -/* **************************************************************** - * plannodes.h copy functions - * **************************************************************** - */ - -/* - * _copyPlannedStmt - */ -static PlannedStmt * -_copyPlannedStmt(const PlannedStmt *from) -{ - PlannedStmt *newnode = makeNode(PlannedStmt); - - COPY_SCALAR_FIELD(commandType); - COPY_SCALAR_FIELD(queryId); - COPY_SCALAR_FIELD(hasReturning); - COPY_SCALAR_FIELD(hasModifyingCTE); - COPY_SCALAR_FIELD(canSetTag); - COPY_SCALAR_FIELD(transientPlan); - COPY_SCALAR_FIELD(dependsOnRole); - COPY_SCALAR_FIELD(parallelModeNeeded); - COPY_SCALAR_FIELD(jitFlags); - COPY_NODE_FIELD(planTree); - COPY_NODE_FIELD(rtable); - COPY_NODE_FIELD(resultRelations); - COPY_NODE_FIELD(appendRelations); - COPY_NODE_FIELD(subplans); - COPY_BITMAPSET_FIELD(rewindPlanIDs); - COPY_NODE_FIELD(rowMarks); - COPY_NODE_FIELD(relationOids); - COPY_NODE_FIELD(invalItems); - COPY_NODE_FIELD(paramExecTypes); - COPY_NODE_FIELD(utilityStmt); - COPY_LOCATION_FIELD(stmt_location); - COPY_SCALAR_FIELD(stmt_len); - - return newnode; -} - -/* - * CopyPlanFields - * - * This function copies the fields of the Plan node. It is used by - * all the copy functions for classes which inherit from Plan. - */ -static void -CopyPlanFields(const Plan *from, Plan *newnode) -{ - COPY_SCALAR_FIELD(startup_cost); - COPY_SCALAR_FIELD(total_cost); - COPY_SCALAR_FIELD(plan_rows); - COPY_SCALAR_FIELD(plan_width); - COPY_SCALAR_FIELD(parallel_aware); - COPY_SCALAR_FIELD(parallel_safe); - COPY_SCALAR_FIELD(async_capable); - COPY_SCALAR_FIELD(plan_node_id); - COPY_NODE_FIELD(targetlist); - COPY_NODE_FIELD(qual); - COPY_NODE_FIELD(lefttree); - COPY_NODE_FIELD(righttree); - COPY_NODE_FIELD(initPlan); - COPY_BITMAPSET_FIELD(extParam); - COPY_BITMAPSET_FIELD(allParam); -} - -/* - * _copyPlan - */ -static Plan * -_copyPlan(const Plan *from) -{ - Plan *newnode = makeNode(Plan); - - /* - * copy node superclass fields - */ - CopyPlanFields(from, newnode); - - return newnode; -} - - -/* - * _copyResult - */ -static Result * -_copyResult(const Result *from) -{ - Result *newnode = makeNode(Result); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(resconstantqual); - - return newnode; -} - -/* - * _copyProjectSet - */ -static ProjectSet * -_copyProjectSet(const ProjectSet *from) -{ - ProjectSet *newnode = makeNode(ProjectSet); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - return newnode; -} - -/* - * _copyModifyTable - */ -static ModifyTable * -_copyModifyTable(const ModifyTable *from) -{ - ModifyTable *newnode = makeNode(ModifyTable); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(operation); - COPY_SCALAR_FIELD(canSetTag); - COPY_SCALAR_FIELD(nominalRelation); - COPY_SCALAR_FIELD(rootRelation); - COPY_SCALAR_FIELD(partColsUpdated); - COPY_NODE_FIELD(resultRelations); - COPY_NODE_FIELD(updateColnosLists); - COPY_NODE_FIELD(withCheckOptionLists); - COPY_NODE_FIELD(returningLists); - COPY_NODE_FIELD(fdwPrivLists); - COPY_BITMAPSET_FIELD(fdwDirectModifyPlans); - COPY_NODE_FIELD(rowMarks); - COPY_SCALAR_FIELD(epqParam); - COPY_SCALAR_FIELD(onConflictAction); - COPY_NODE_FIELD(arbiterIndexes); - COPY_NODE_FIELD(onConflictSet); - COPY_NODE_FIELD(onConflictCols); - COPY_NODE_FIELD(onConflictWhere); - COPY_SCALAR_FIELD(exclRelRTI); - COPY_NODE_FIELD(exclRelTlist); - COPY_NODE_FIELD(mergeActionLists); +#include "copyfuncs.funcs.c" - return newnode; -} /* - * _copyAppend + * Support functions for nodes with custom_copy_equal attribute */ -static Append * -_copyAppend(const Append *from) -{ - Append *newnode = makeNode(Append); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_BITMAPSET_FIELD(apprelids); - COPY_NODE_FIELD(appendplans); - COPY_SCALAR_FIELD(nasyncplans); - COPY_SCALAR_FIELD(first_partial_plan); - COPY_NODE_FIELD(part_prune_info); - - return newnode; -} -/* - * _copyMergeAppend - */ -static MergeAppend * -_copyMergeAppend(const MergeAppend *from) +static Const * +_copyConst(const Const *from) { - MergeAppend *newnode = makeNode(MergeAppend); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_BITMAPSET_FIELD(apprelids); - COPY_NODE_FIELD(mergeplans); - COPY_SCALAR_FIELD(numCols); - COPY_POINTER_FIELD(sortColIdx, from->numCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(sortOperators, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(collations, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(nullsFirst, from->numCols * sizeof(bool)); - COPY_NODE_FIELD(part_prune_info); - - return newnode; -} + Const *newnode = makeNode(Const); -/* - * _copyRecursiveUnion - */ -static RecursiveUnion * -_copyRecursiveUnion(const RecursiveUnion *from) -{ - RecursiveUnion *newnode = makeNode(RecursiveUnion); + COPY_SCALAR_FIELD(consttype); + COPY_SCALAR_FIELD(consttypmod); + COPY_SCALAR_FIELD(constcollid); + COPY_SCALAR_FIELD(constlen); - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); + if (from->constbyval || from->constisnull) + { + /* + * passed by value so just copy the datum. Also, don't try to copy + * struct when value is null! + */ + newnode->constvalue = from->constvalue; + } + else + { + /* + * passed by reference. We need a palloc'd copy. + */ + newnode->constvalue = datumCopy(from->constvalue, + from->constbyval, + from->constlen); + } - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(wtParam); - COPY_SCALAR_FIELD(numCols); - COPY_POINTER_FIELD(dupColIdx, from->numCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(dupOperators, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(dupCollations, from->numCols * sizeof(Oid)); - COPY_SCALAR_FIELD(numGroups); + COPY_SCALAR_FIELD(constisnull); + COPY_SCALAR_FIELD(constbyval); + COPY_LOCATION_FIELD(location); return newnode; } -/* - * _copyBitmapAnd - */ -static BitmapAnd * -_copyBitmapAnd(const BitmapAnd *from) +static A_Const * +_copyA_Const(const A_Const *from) { - BitmapAnd *newnode = makeNode(BitmapAnd); + A_Const *newnode = makeNode(A_Const); - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); + COPY_SCALAR_FIELD(isnull); + if (!from->isnull) + { + /* This part must duplicate other _copy*() functions. */ + COPY_SCALAR_FIELD(val.node.type); + switch (nodeTag(&from->val)) + { + case T_Integer: + COPY_SCALAR_FIELD(val.ival.ival); + break; + case T_Float: + COPY_STRING_FIELD(val.fval.fval); + break; + case T_Boolean: + COPY_SCALAR_FIELD(val.boolval.boolval); + break; + case T_String: + COPY_STRING_FIELD(val.sval.sval); + break; + case T_BitString: + COPY_STRING_FIELD(val.bsval.bsval); + break; + default: + elog(ERROR, "unrecognized node type: %d", + (int) nodeTag(&from->val)); + break; + } + } - /* - * copy remainder of node - */ - COPY_NODE_FIELD(bitmapplans); + COPY_LOCATION_FIELD(location); return newnode; } -/* - * _copyBitmapOr - */ -static BitmapOr * -_copyBitmapOr(const BitmapOr *from) +static ExtensibleNode * +_copyExtensibleNode(const ExtensibleNode *from) { - BitmapOr *newnode = makeNode(BitmapOr); + ExtensibleNode *newnode; + const ExtensibleNodeMethods *methods; - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); + methods = GetExtensibleNodeMethods(from->extnodename, false); + newnode = (ExtensibleNode *) newNode(methods->node_size, + T_ExtensibleNode); + COPY_STRING_FIELD(extnodename); - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(isshared); - COPY_NODE_FIELD(bitmapplans); + /* copy the private fields */ + methods->nodeCopy(newnode, from); return newnode; } -/* - * _copyGather - */ -static Gather * -_copyGather(const Gather *from) +static Bitmapset * +_copyBitmapset(const Bitmapset *from) { - Gather *newnode = makeNode(Gather); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(num_workers); - COPY_SCALAR_FIELD(rescan_param); - COPY_SCALAR_FIELD(single_copy); - COPY_SCALAR_FIELD(invisible); - COPY_BITMAPSET_FIELD(initParam); - - return newnode; + return bms_copy(from); } -/* - * _copyGatherMerge - */ -static GatherMerge * -_copyGatherMerge(const GatherMerge *from) -{ - GatherMerge *newnode = makeNode(GatherMerge); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(num_workers); - COPY_SCALAR_FIELD(rescan_param); - COPY_SCALAR_FIELD(numCols); - COPY_POINTER_FIELD(sortColIdx, from->numCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(sortOperators, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(collations, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(nullsFirst, from->numCols * sizeof(bool)); - COPY_BITMAPSET_FIELD(initParam); - - return newnode; -} /* - * CopyScanFields + * copyObjectImpl -- implementation of copyObject(); see nodes/nodes.h * - * This function copies the fields of the Scan node. It is used by - * all the copy functions for classes which inherit from Scan. - */ -static void -CopyScanFields(const Scan *from, Scan *newnode) -{ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - COPY_SCALAR_FIELD(scanrelid); -} - -/* - * _copyScan - */ -static Scan * -_copyScan(const Scan *from) -{ - Scan *newnode = makeNode(Scan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - return newnode; -} - -/* - * _copySeqScan - */ -static SeqScan * -_copySeqScan(const SeqScan *from) -{ - SeqScan *newnode = makeNode(SeqScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - return newnode; -} - -/* - * _copySampleScan - */ -static SampleScan * -_copySampleScan(const SampleScan *from) -{ - SampleScan *newnode = makeNode(SampleScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(tablesample); - - return newnode; -} - -/* - * _copyIndexScan - */ -static IndexScan * -_copyIndexScan(const IndexScan *from) -{ - IndexScan *newnode = makeNode(IndexScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(indexid); - COPY_NODE_FIELD(indexqual); - COPY_NODE_FIELD(indexqualorig); - COPY_NODE_FIELD(indexorderby); - COPY_NODE_FIELD(indexorderbyorig); - COPY_NODE_FIELD(indexorderbyops); - COPY_SCALAR_FIELD(indexorderdir); - - return newnode; -} - -/* - * _copyIndexOnlyScan - */ -static IndexOnlyScan * -_copyIndexOnlyScan(const IndexOnlyScan *from) -{ - IndexOnlyScan *newnode = makeNode(IndexOnlyScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(indexid); - COPY_NODE_FIELD(indexqual); - COPY_NODE_FIELD(recheckqual); - COPY_NODE_FIELD(indexorderby); - COPY_NODE_FIELD(indextlist); - COPY_SCALAR_FIELD(indexorderdir); - - return newnode; -} - -/* - * _copyBitmapIndexScan - */ -static BitmapIndexScan * -_copyBitmapIndexScan(const BitmapIndexScan *from) -{ - BitmapIndexScan *newnode = makeNode(BitmapIndexScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(indexid); - COPY_SCALAR_FIELD(isshared); - COPY_NODE_FIELD(indexqual); - COPY_NODE_FIELD(indexqualorig); - - return newnode; -} - -/* - * _copyBitmapHeapScan - */ -static BitmapHeapScan * -_copyBitmapHeapScan(const BitmapHeapScan *from) -{ - BitmapHeapScan *newnode = makeNode(BitmapHeapScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(bitmapqualorig); - - return newnode; -} - -/* - * _copyTidScan - */ -static TidScan * -_copyTidScan(const TidScan *from) -{ - TidScan *newnode = makeNode(TidScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(tidquals); - - return newnode; -} - -/* - * _copyTidRangeScan + * Create a copy of a Node tree or list. This is a "deep" copy: all + * substructure is copied too, recursively. */ -static TidRangeScan * -_copyTidRangeScan(const TidRangeScan *from) +void * +copyObjectImpl(const void *from) { - TidRangeScan *newnode = makeNode(TidRangeScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(tidrangequals); - - return newnode; -} + void *retval; -/* - * _copySubqueryScan - */ -static SubqueryScan * -_copySubqueryScan(const SubqueryScan *from) -{ - SubqueryScan *newnode = makeNode(SubqueryScan); + if (from == NULL) + return NULL; - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); + /* Guard against stack overflow due to overly complex expressions */ + check_stack_depth(); - /* - * copy remainder of node - */ - COPY_NODE_FIELD(subplan); - COPY_SCALAR_FIELD(scanstatus); + switch (nodeTag(from)) + { +#include "copyfuncs.switch.c" - return newnode; -} - -/* - * _copyFunctionScan - */ -static FunctionScan * -_copyFunctionScan(const FunctionScan *from) -{ - FunctionScan *newnode = makeNode(FunctionScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(functions); - COPY_SCALAR_FIELD(funcordinality); - - return newnode; -} - -/* - * _copyTableFuncScan - */ -static TableFuncScan * -_copyTableFuncScan(const TableFuncScan *from) -{ - TableFuncScan *newnode = makeNode(TableFuncScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(tablefunc); - - return newnode; -} - -/* - * _copyValuesScan - */ -static ValuesScan * -_copyValuesScan(const ValuesScan *from) -{ - ValuesScan *newnode = makeNode(ValuesScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(values_lists); - - return newnode; -} - -/* - * _copyCteScan - */ -static CteScan * -_copyCteScan(const CteScan *from) -{ - CteScan *newnode = makeNode(CteScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(ctePlanId); - COPY_SCALAR_FIELD(cteParam); - - return newnode; -} - -/* - * _copyNamedTuplestoreScan - */ -static NamedTuplestoreScan * -_copyNamedTuplestoreScan(const NamedTuplestoreScan *from) -{ - NamedTuplestoreScan *newnode = makeNode(NamedTuplestoreScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_STRING_FIELD(enrname); - - return newnode; -} - -/* - * _copyWorkTableScan - */ -static WorkTableScan * -_copyWorkTableScan(const WorkTableScan *from) -{ - WorkTableScan *newnode = makeNode(WorkTableScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(wtParam); - - return newnode; -} - -/* - * _copyForeignScan - */ -static ForeignScan * -_copyForeignScan(const ForeignScan *from) -{ - ForeignScan *newnode = makeNode(ForeignScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(operation); - COPY_SCALAR_FIELD(resultRelation); - COPY_SCALAR_FIELD(fs_server); - COPY_NODE_FIELD(fdw_exprs); - COPY_NODE_FIELD(fdw_private); - COPY_NODE_FIELD(fdw_scan_tlist); - COPY_NODE_FIELD(fdw_recheck_quals); - COPY_BITMAPSET_FIELD(fs_relids); - COPY_SCALAR_FIELD(fsSystemCol); - - return newnode; -} - -/* - * _copyCustomScan - */ -static CustomScan * -_copyCustomScan(const CustomScan *from) -{ - CustomScan *newnode = makeNode(CustomScan); - - /* - * copy node superclass fields - */ - CopyScanFields((const Scan *) from, (Scan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(flags); - COPY_NODE_FIELD(custom_plans); - COPY_NODE_FIELD(custom_exprs); - COPY_NODE_FIELD(custom_private); - COPY_NODE_FIELD(custom_scan_tlist); - COPY_BITMAPSET_FIELD(custom_relids); - - /* - * NOTE: The method field of CustomScan is required to be a pointer to a - * static table of callback functions. So we don't copy the table itself, - * just reference the original one. - */ - COPY_SCALAR_FIELD(methods); - - return newnode; -} - -/* - * CopyJoinFields - * - * This function copies the fields of the Join node. It is used by - * all the copy functions for classes which inherit from Join. - */ -static void -CopyJoinFields(const Join *from, Join *newnode) -{ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - COPY_SCALAR_FIELD(jointype); - COPY_SCALAR_FIELD(inner_unique); - COPY_NODE_FIELD(joinqual); -} - - -/* - * _copyJoin - */ -static Join * -_copyJoin(const Join *from) -{ - Join *newnode = makeNode(Join); - - /* - * copy node superclass fields - */ - CopyJoinFields(from, newnode); - - return newnode; -} - - -/* - * _copyNestLoop - */ -static NestLoop * -_copyNestLoop(const NestLoop *from) -{ - NestLoop *newnode = makeNode(NestLoop); - - /* - * copy node superclass fields - */ - CopyJoinFields((const Join *) from, (Join *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(nestParams); - - return newnode; -} - - -/* - * _copyMergeJoin - */ -static MergeJoin * -_copyMergeJoin(const MergeJoin *from) -{ - MergeJoin *newnode = makeNode(MergeJoin); - int numCols; - - /* - * copy node superclass fields - */ - CopyJoinFields((const Join *) from, (Join *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(skip_mark_restore); - COPY_NODE_FIELD(mergeclauses); - numCols = list_length(from->mergeclauses); - COPY_POINTER_FIELD(mergeFamilies, numCols * sizeof(Oid)); - COPY_POINTER_FIELD(mergeCollations, numCols * sizeof(Oid)); - COPY_POINTER_FIELD(mergeStrategies, numCols * sizeof(int)); - COPY_POINTER_FIELD(mergeNullsFirst, numCols * sizeof(bool)); - - return newnode; -} - -/* - * _copyHashJoin - */ -static HashJoin * -_copyHashJoin(const HashJoin *from) -{ - HashJoin *newnode = makeNode(HashJoin); - - /* - * copy node superclass fields - */ - CopyJoinFields((const Join *) from, (Join *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(hashclauses); - COPY_NODE_FIELD(hashoperators); - COPY_NODE_FIELD(hashcollations); - COPY_NODE_FIELD(hashkeys); - - return newnode; -} - - -/* - * _copyMaterial - */ -static Material * -_copyMaterial(const Material *from) -{ - Material *newnode = makeNode(Material); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - return newnode; -} - - -/* - * _copyMemoize - */ -static Memoize * -_copyMemoize(const Memoize *from) -{ - Memoize *newnode = makeNode(Memoize); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(numKeys); - COPY_POINTER_FIELD(hashOperators, sizeof(Oid) * from->numKeys); - COPY_POINTER_FIELD(collations, sizeof(Oid) * from->numKeys); - COPY_NODE_FIELD(param_exprs); - COPY_SCALAR_FIELD(singlerow); - COPY_SCALAR_FIELD(binary_mode); - COPY_SCALAR_FIELD(est_entries); - COPY_BITMAPSET_FIELD(keyparamids); - - return newnode; -} - - -/* - * CopySortFields - * - * This function copies the fields of the Sort node. It is used by - * all the copy functions for classes which inherit from Sort. - */ -static void -CopySortFields(const Sort *from, Sort *newnode) -{ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - COPY_SCALAR_FIELD(numCols); - COPY_POINTER_FIELD(sortColIdx, from->numCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(sortOperators, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(collations, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(nullsFirst, from->numCols * sizeof(bool)); -} - -/* - * _copySort - */ -static Sort * -_copySort(const Sort *from) -{ - Sort *newnode = makeNode(Sort); - - /* - * copy node superclass fields - */ - CopySortFields(from, newnode); - - return newnode; -} - - -/* - * _copyIncrementalSort - */ -static IncrementalSort * -_copyIncrementalSort(const IncrementalSort *from) -{ - IncrementalSort *newnode = makeNode(IncrementalSort); - - /* - * copy node superclass fields - */ - CopySortFields((const Sort *) from, (Sort *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(nPresortedCols); - - return newnode; -} - - -/* - * _copyGroup - */ -static Group * -_copyGroup(const Group *from) -{ - Group *newnode = makeNode(Group); - - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - COPY_SCALAR_FIELD(numCols); - COPY_POINTER_FIELD(grpColIdx, from->numCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(grpOperators, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(grpCollations, from->numCols * sizeof(Oid)); - - return newnode; -} - -/* - * _copyAgg - */ -static Agg * -_copyAgg(const Agg *from) -{ - Agg *newnode = makeNode(Agg); - - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - COPY_SCALAR_FIELD(aggstrategy); - COPY_SCALAR_FIELD(aggsplit); - COPY_SCALAR_FIELD(numCols); - COPY_POINTER_FIELD(grpColIdx, from->numCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(grpOperators, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(grpCollations, from->numCols * sizeof(Oid)); - COPY_SCALAR_FIELD(numGroups); - COPY_SCALAR_FIELD(transitionSpace); - COPY_BITMAPSET_FIELD(aggParams); - COPY_NODE_FIELD(groupingSets); - COPY_NODE_FIELD(chain); - - return newnode; -} - -/* - * _copyWindowAgg - */ -static WindowAgg * -_copyWindowAgg(const WindowAgg *from) -{ - WindowAgg *newnode = makeNode(WindowAgg); - - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - COPY_SCALAR_FIELD(winref); - COPY_SCALAR_FIELD(partNumCols); - COPY_POINTER_FIELD(partColIdx, from->partNumCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(partOperators, from->partNumCols * sizeof(Oid)); - COPY_POINTER_FIELD(partCollations, from->partNumCols * sizeof(Oid)); - COPY_SCALAR_FIELD(ordNumCols); - COPY_POINTER_FIELD(ordColIdx, from->ordNumCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(ordOperators, from->ordNumCols * sizeof(Oid)); - COPY_POINTER_FIELD(ordCollations, from->ordNumCols * sizeof(Oid)); - COPY_SCALAR_FIELD(frameOptions); - COPY_NODE_FIELD(startOffset); - COPY_NODE_FIELD(endOffset); - COPY_NODE_FIELD(runCondition); - COPY_NODE_FIELD(runConditionOrig); - COPY_SCALAR_FIELD(startInRangeFunc); - COPY_SCALAR_FIELD(endInRangeFunc); - COPY_SCALAR_FIELD(inRangeColl); - COPY_SCALAR_FIELD(inRangeAsc); - COPY_SCALAR_FIELD(inRangeNullsFirst); - COPY_SCALAR_FIELD(topWindow); - - return newnode; -} - -/* - * _copyUnique - */ -static Unique * -_copyUnique(const Unique *from) -{ - Unique *newnode = makeNode(Unique); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(numCols); - COPY_POINTER_FIELD(uniqColIdx, from->numCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(uniqOperators, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(uniqCollations, from->numCols * sizeof(Oid)); - - return newnode; -} - -/* - * _copyHash - */ -static Hash * -_copyHash(const Hash *from) -{ - Hash *newnode = makeNode(Hash); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(hashkeys); - COPY_SCALAR_FIELD(skewTable); - COPY_SCALAR_FIELD(skewColumn); - COPY_SCALAR_FIELD(skewInherit); - COPY_SCALAR_FIELD(rows_total); - - return newnode; -} - -/* - * _copySetOp - */ -static SetOp * -_copySetOp(const SetOp *from) -{ - SetOp *newnode = makeNode(SetOp); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_SCALAR_FIELD(cmd); - COPY_SCALAR_FIELD(strategy); - COPY_SCALAR_FIELD(numCols); - COPY_POINTER_FIELD(dupColIdx, from->numCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(dupOperators, from->numCols * sizeof(Oid)); - COPY_POINTER_FIELD(dupCollations, from->numCols * sizeof(Oid)); - COPY_SCALAR_FIELD(flagColIdx); - COPY_SCALAR_FIELD(firstFlag); - COPY_SCALAR_FIELD(numGroups); - - return newnode; -} - -/* - * _copyLockRows - */ -static LockRows * -_copyLockRows(const LockRows *from) -{ - LockRows *newnode = makeNode(LockRows); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(rowMarks); - COPY_SCALAR_FIELD(epqParam); - - return newnode; -} - -/* - * _copyLimit - */ -static Limit * -_copyLimit(const Limit *from) -{ - Limit *newnode = makeNode(Limit); - - /* - * copy node superclass fields - */ - CopyPlanFields((const Plan *) from, (Plan *) newnode); - - /* - * copy remainder of node - */ - COPY_NODE_FIELD(limitOffset); - COPY_NODE_FIELD(limitCount); - COPY_SCALAR_FIELD(limitOption); - COPY_SCALAR_FIELD(uniqNumCols); - COPY_POINTER_FIELD(uniqColIdx, from->uniqNumCols * sizeof(AttrNumber)); - COPY_POINTER_FIELD(uniqOperators, from->uniqNumCols * sizeof(Oid)); - COPY_POINTER_FIELD(uniqCollations, from->uniqNumCols * sizeof(Oid)); - - return newnode; -} - -/* - * _copyNestLoopParam - */ -static NestLoopParam * -_copyNestLoopParam(const NestLoopParam *from) -{ - NestLoopParam *newnode = makeNode(NestLoopParam); - - COPY_SCALAR_FIELD(paramno); - COPY_NODE_FIELD(paramval); - - return newnode; -} - -/* - * _copyPlanRowMark - */ -static PlanRowMark * -_copyPlanRowMark(const PlanRowMark *from) -{ - PlanRowMark *newnode = makeNode(PlanRowMark); - - COPY_SCALAR_FIELD(rti); - COPY_SCALAR_FIELD(prti); - COPY_SCALAR_FIELD(rowmarkId); - COPY_SCALAR_FIELD(markType); - COPY_SCALAR_FIELD(allMarkTypes); - COPY_SCALAR_FIELD(strength); - COPY_SCALAR_FIELD(waitPolicy); - COPY_SCALAR_FIELD(isParent); - - return newnode; -} - -static PartitionPruneInfo * -_copyPartitionPruneInfo(const PartitionPruneInfo *from) -{ - PartitionPruneInfo *newnode = makeNode(PartitionPruneInfo); - - COPY_NODE_FIELD(prune_infos); - COPY_BITMAPSET_FIELD(other_subplans); - - return newnode; -} - -static PartitionedRelPruneInfo * -_copyPartitionedRelPruneInfo(const PartitionedRelPruneInfo *from) -{ - PartitionedRelPruneInfo *newnode = makeNode(PartitionedRelPruneInfo); - - COPY_SCALAR_FIELD(rtindex); - COPY_BITMAPSET_FIELD(present_parts); - COPY_SCALAR_FIELD(nparts); - COPY_POINTER_FIELD(subplan_map, from->nparts * sizeof(int)); - COPY_POINTER_FIELD(subpart_map, from->nparts * sizeof(int)); - COPY_POINTER_FIELD(relid_map, from->nparts * sizeof(Oid)); - COPY_NODE_FIELD(initial_pruning_steps); - COPY_NODE_FIELD(exec_pruning_steps); - COPY_BITMAPSET_FIELD(execparamids); - - return newnode; -} - -/* - * _copyPartitionPruneStepOp - */ -static PartitionPruneStepOp * -_copyPartitionPruneStepOp(const PartitionPruneStepOp *from) -{ - PartitionPruneStepOp *newnode = makeNode(PartitionPruneStepOp); - - COPY_SCALAR_FIELD(step.step_id); - COPY_SCALAR_FIELD(opstrategy); - COPY_NODE_FIELD(exprs); - COPY_NODE_FIELD(cmpfns); - COPY_BITMAPSET_FIELD(nullkeys); - - return newnode; -} - -/* - * _copyPartitionPruneStepCombine - */ -static PartitionPruneStepCombine * -_copyPartitionPruneStepCombine(const PartitionPruneStepCombine *from) -{ - PartitionPruneStepCombine *newnode = makeNode(PartitionPruneStepCombine); - - COPY_SCALAR_FIELD(step.step_id); - COPY_SCALAR_FIELD(combineOp); - COPY_NODE_FIELD(source_stepids); - - return newnode; -} - -/* - * _copyPlanInvalItem - */ -static PlanInvalItem * -_copyPlanInvalItem(const PlanInvalItem *from) -{ - PlanInvalItem *newnode = makeNode(PlanInvalItem); - - COPY_SCALAR_FIELD(cacheId); - COPY_SCALAR_FIELD(hashValue); - - return newnode; -} - -/* **************************************************************** - * primnodes.h copy functions - * **************************************************************** - */ - -/* - * _copyAlias - */ -static Alias * -_copyAlias(const Alias *from) -{ - Alias *newnode = makeNode(Alias); - - COPY_STRING_FIELD(aliasname); - COPY_NODE_FIELD(colnames); - - return newnode; -} - -/* - * _copyRangeVar - */ -static RangeVar * -_copyRangeVar(const RangeVar *from) -{ - RangeVar *newnode = makeNode(RangeVar); - - COPY_STRING_FIELD(catalogname); - COPY_STRING_FIELD(schemaname); - COPY_STRING_FIELD(relname); - COPY_SCALAR_FIELD(inh); - COPY_SCALAR_FIELD(relpersistence); - COPY_NODE_FIELD(alias); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyTableFunc - */ -static TableFunc * -_copyTableFunc(const TableFunc *from) -{ - TableFunc *newnode = makeNode(TableFunc); - - COPY_NODE_FIELD(ns_uris); - COPY_NODE_FIELD(ns_names); - COPY_NODE_FIELD(docexpr); - COPY_NODE_FIELD(rowexpr); - COPY_NODE_FIELD(colnames); - COPY_NODE_FIELD(coltypes); - COPY_NODE_FIELD(coltypmods); - COPY_NODE_FIELD(colcollations); - COPY_NODE_FIELD(colexprs); - COPY_NODE_FIELD(coldefexprs); - COPY_BITMAPSET_FIELD(notnulls); - COPY_SCALAR_FIELD(ordinalitycol); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyIntoClause - */ -static IntoClause * -_copyIntoClause(const IntoClause *from) -{ - IntoClause *newnode = makeNode(IntoClause); - - COPY_NODE_FIELD(rel); - COPY_NODE_FIELD(colNames); - COPY_STRING_FIELD(accessMethod); - COPY_NODE_FIELD(options); - COPY_SCALAR_FIELD(onCommit); - COPY_STRING_FIELD(tableSpaceName); - COPY_NODE_FIELD(viewQuery); - COPY_SCALAR_FIELD(skipData); - - return newnode; -} - -/* - * We don't need a _copyExpr because Expr is an abstract supertype which - * should never actually get instantiated. Also, since it has no common - * fields except NodeTag, there's no need for a helper routine to factor - * out copying the common fields... - */ - -/* - * _copyVar - */ -static Var * -_copyVar(const Var *from) -{ - Var *newnode = makeNode(Var); - - COPY_SCALAR_FIELD(varno); - COPY_SCALAR_FIELD(varattno); - COPY_SCALAR_FIELD(vartype); - COPY_SCALAR_FIELD(vartypmod); - COPY_SCALAR_FIELD(varcollid); - COPY_SCALAR_FIELD(varlevelsup); - COPY_SCALAR_FIELD(varnosyn); - COPY_SCALAR_FIELD(varattnosyn); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyConst - */ -static Const * -_copyConst(const Const *from) -{ - Const *newnode = makeNode(Const); - - COPY_SCALAR_FIELD(consttype); - COPY_SCALAR_FIELD(consttypmod); - COPY_SCALAR_FIELD(constcollid); - COPY_SCALAR_FIELD(constlen); - - if (from->constbyval || from->constisnull) - { - /* - * passed by value so just copy the datum. Also, don't try to copy - * struct when value is null! - */ - newnode->constvalue = from->constvalue; - } - else - { - /* - * passed by reference. We need a palloc'd copy. - */ - newnode->constvalue = datumCopy(from->constvalue, - from->constbyval, - from->constlen); - } - - COPY_SCALAR_FIELD(constisnull); - COPY_SCALAR_FIELD(constbyval); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyParam - */ -static Param * -_copyParam(const Param *from) -{ - Param *newnode = makeNode(Param); - - COPY_SCALAR_FIELD(paramkind); - COPY_SCALAR_FIELD(paramid); - COPY_SCALAR_FIELD(paramtype); - COPY_SCALAR_FIELD(paramtypmod); - COPY_SCALAR_FIELD(paramcollid); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyAggref - */ -static Aggref * -_copyAggref(const Aggref *from) -{ - Aggref *newnode = makeNode(Aggref); - - COPY_SCALAR_FIELD(aggfnoid); - COPY_SCALAR_FIELD(aggtype); - COPY_SCALAR_FIELD(aggcollid); - COPY_SCALAR_FIELD(inputcollid); - COPY_SCALAR_FIELD(aggtranstype); - COPY_NODE_FIELD(aggargtypes); - COPY_NODE_FIELD(aggdirectargs); - COPY_NODE_FIELD(args); - COPY_NODE_FIELD(aggorder); - COPY_NODE_FIELD(aggdistinct); - COPY_NODE_FIELD(aggfilter); - COPY_SCALAR_FIELD(aggstar); - COPY_SCALAR_FIELD(aggvariadic); - COPY_SCALAR_FIELD(aggkind); - COPY_SCALAR_FIELD(agglevelsup); - COPY_SCALAR_FIELD(aggsplit); - COPY_SCALAR_FIELD(aggno); - COPY_SCALAR_FIELD(aggtransno); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyGroupingFunc - */ -static GroupingFunc * -_copyGroupingFunc(const GroupingFunc *from) -{ - GroupingFunc *newnode = makeNode(GroupingFunc); - - COPY_NODE_FIELD(args); - COPY_NODE_FIELD(refs); - COPY_NODE_FIELD(cols); - COPY_SCALAR_FIELD(agglevelsup); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyWindowFunc - */ -static WindowFunc * -_copyWindowFunc(const WindowFunc *from) -{ - WindowFunc *newnode = makeNode(WindowFunc); - - COPY_SCALAR_FIELD(winfnoid); - COPY_SCALAR_FIELD(wintype); - COPY_SCALAR_FIELD(wincollid); - COPY_SCALAR_FIELD(inputcollid); - COPY_NODE_FIELD(args); - COPY_NODE_FIELD(aggfilter); - COPY_SCALAR_FIELD(winref); - COPY_SCALAR_FIELD(winstar); - COPY_SCALAR_FIELD(winagg); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copySubscriptingRef - */ -static SubscriptingRef * -_copySubscriptingRef(const SubscriptingRef *from) -{ - SubscriptingRef *newnode = makeNode(SubscriptingRef); - - COPY_SCALAR_FIELD(refcontainertype); - COPY_SCALAR_FIELD(refelemtype); - COPY_SCALAR_FIELD(refrestype); - COPY_SCALAR_FIELD(reftypmod); - COPY_SCALAR_FIELD(refcollid); - COPY_NODE_FIELD(refupperindexpr); - COPY_NODE_FIELD(reflowerindexpr); - COPY_NODE_FIELD(refexpr); - COPY_NODE_FIELD(refassgnexpr); - - return newnode; -} - -/* - * _copyFuncExpr - */ -static FuncExpr * -_copyFuncExpr(const FuncExpr *from) -{ - FuncExpr *newnode = makeNode(FuncExpr); - - COPY_SCALAR_FIELD(funcid); - COPY_SCALAR_FIELD(funcresulttype); - COPY_SCALAR_FIELD(funcretset); - COPY_SCALAR_FIELD(funcvariadic); - COPY_SCALAR_FIELD(funcformat); - COPY_SCALAR_FIELD(funccollid); - COPY_SCALAR_FIELD(inputcollid); - COPY_NODE_FIELD(args); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyNamedArgExpr * - */ -static NamedArgExpr * -_copyNamedArgExpr(const NamedArgExpr *from) -{ - NamedArgExpr *newnode = makeNode(NamedArgExpr); - - COPY_NODE_FIELD(arg); - COPY_STRING_FIELD(name); - COPY_SCALAR_FIELD(argnumber); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyOpExpr - */ -static OpExpr * -_copyOpExpr(const OpExpr *from) -{ - OpExpr *newnode = makeNode(OpExpr); - - COPY_SCALAR_FIELD(opno); - COPY_SCALAR_FIELD(opfuncid); - COPY_SCALAR_FIELD(opresulttype); - COPY_SCALAR_FIELD(opretset); - COPY_SCALAR_FIELD(opcollid); - COPY_SCALAR_FIELD(inputcollid); - COPY_NODE_FIELD(args); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyDistinctExpr (same as OpExpr) - */ -static DistinctExpr * -_copyDistinctExpr(const DistinctExpr *from) -{ - DistinctExpr *newnode = makeNode(DistinctExpr); - - COPY_SCALAR_FIELD(opno); - COPY_SCALAR_FIELD(opfuncid); - COPY_SCALAR_FIELD(opresulttype); - COPY_SCALAR_FIELD(opretset); - COPY_SCALAR_FIELD(opcollid); - COPY_SCALAR_FIELD(inputcollid); - COPY_NODE_FIELD(args); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyNullIfExpr (same as OpExpr) - */ -static NullIfExpr * -_copyNullIfExpr(const NullIfExpr *from) -{ - NullIfExpr *newnode = makeNode(NullIfExpr); - - COPY_SCALAR_FIELD(opno); - COPY_SCALAR_FIELD(opfuncid); - COPY_SCALAR_FIELD(opresulttype); - COPY_SCALAR_FIELD(opretset); - COPY_SCALAR_FIELD(opcollid); - COPY_SCALAR_FIELD(inputcollid); - COPY_NODE_FIELD(args); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyScalarArrayOpExpr - */ -static ScalarArrayOpExpr * -_copyScalarArrayOpExpr(const ScalarArrayOpExpr *from) -{ - ScalarArrayOpExpr *newnode = makeNode(ScalarArrayOpExpr); - - COPY_SCALAR_FIELD(opno); - COPY_SCALAR_FIELD(opfuncid); - COPY_SCALAR_FIELD(hashfuncid); - COPY_SCALAR_FIELD(negfuncid); - COPY_SCALAR_FIELD(useOr); - COPY_SCALAR_FIELD(inputcollid); - COPY_NODE_FIELD(args); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyBoolExpr - */ -static BoolExpr * -_copyBoolExpr(const BoolExpr *from) -{ - BoolExpr *newnode = makeNode(BoolExpr); - - COPY_SCALAR_FIELD(boolop); - COPY_NODE_FIELD(args); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copySubLink - */ -static SubLink * -_copySubLink(const SubLink *from) -{ - SubLink *newnode = makeNode(SubLink); - - COPY_SCALAR_FIELD(subLinkType); - COPY_SCALAR_FIELD(subLinkId); - COPY_NODE_FIELD(testexpr); - COPY_NODE_FIELD(operName); - COPY_NODE_FIELD(subselect); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copySubPlan - */ -static SubPlan * -_copySubPlan(const SubPlan *from) -{ - SubPlan *newnode = makeNode(SubPlan); - - COPY_SCALAR_FIELD(subLinkType); - COPY_NODE_FIELD(testexpr); - COPY_NODE_FIELD(paramIds); - COPY_SCALAR_FIELD(plan_id); - COPY_STRING_FIELD(plan_name); - COPY_SCALAR_FIELD(firstColType); - COPY_SCALAR_FIELD(firstColTypmod); - COPY_SCALAR_FIELD(firstColCollation); - COPY_SCALAR_FIELD(useHashTable); - COPY_SCALAR_FIELD(unknownEqFalse); - COPY_SCALAR_FIELD(parallel_safe); - COPY_NODE_FIELD(setParam); - COPY_NODE_FIELD(parParam); - COPY_NODE_FIELD(args); - COPY_SCALAR_FIELD(startup_cost); - COPY_SCALAR_FIELD(per_call_cost); - - return newnode; -} - -/* - * _copyAlternativeSubPlan - */ -static AlternativeSubPlan * -_copyAlternativeSubPlan(const AlternativeSubPlan *from) -{ - AlternativeSubPlan *newnode = makeNode(AlternativeSubPlan); - - COPY_NODE_FIELD(subplans); - - return newnode; -} - -/* - * _copyFieldSelect - */ -static FieldSelect * -_copyFieldSelect(const FieldSelect *from) -{ - FieldSelect *newnode = makeNode(FieldSelect); - - COPY_NODE_FIELD(arg); - COPY_SCALAR_FIELD(fieldnum); - COPY_SCALAR_FIELD(resulttype); - COPY_SCALAR_FIELD(resulttypmod); - COPY_SCALAR_FIELD(resultcollid); - - return newnode; -} - -/* - * _copyFieldStore - */ -static FieldStore * -_copyFieldStore(const FieldStore *from) -{ - FieldStore *newnode = makeNode(FieldStore); - - COPY_NODE_FIELD(arg); - COPY_NODE_FIELD(newvals); - COPY_NODE_FIELD(fieldnums); - COPY_SCALAR_FIELD(resulttype); - - return newnode; -} - -/* - * _copyRelabelType - */ -static RelabelType * -_copyRelabelType(const RelabelType *from) -{ - RelabelType *newnode = makeNode(RelabelType); - - COPY_NODE_FIELD(arg); - COPY_SCALAR_FIELD(resulttype); - COPY_SCALAR_FIELD(resulttypmod); - COPY_SCALAR_FIELD(resultcollid); - COPY_SCALAR_FIELD(relabelformat); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyCoerceViaIO - */ -static CoerceViaIO * -_copyCoerceViaIO(const CoerceViaIO *from) -{ - CoerceViaIO *newnode = makeNode(CoerceViaIO); - - COPY_NODE_FIELD(arg); - COPY_SCALAR_FIELD(resulttype); - COPY_SCALAR_FIELD(resultcollid); - COPY_SCALAR_FIELD(coerceformat); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyArrayCoerceExpr - */ -static ArrayCoerceExpr * -_copyArrayCoerceExpr(const ArrayCoerceExpr *from) -{ - ArrayCoerceExpr *newnode = makeNode(ArrayCoerceExpr); - - COPY_NODE_FIELD(arg); - COPY_NODE_FIELD(elemexpr); - COPY_SCALAR_FIELD(resulttype); - COPY_SCALAR_FIELD(resulttypmod); - COPY_SCALAR_FIELD(resultcollid); - COPY_SCALAR_FIELD(coerceformat); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyConvertRowtypeExpr - */ -static ConvertRowtypeExpr * -_copyConvertRowtypeExpr(const ConvertRowtypeExpr *from) -{ - ConvertRowtypeExpr *newnode = makeNode(ConvertRowtypeExpr); - - COPY_NODE_FIELD(arg); - COPY_SCALAR_FIELD(resulttype); - COPY_SCALAR_FIELD(convertformat); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyCollateExpr - */ -static CollateExpr * -_copyCollateExpr(const CollateExpr *from) -{ - CollateExpr *newnode = makeNode(CollateExpr); - - COPY_NODE_FIELD(arg); - COPY_SCALAR_FIELD(collOid); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyCaseExpr - */ -static CaseExpr * -_copyCaseExpr(const CaseExpr *from) -{ - CaseExpr *newnode = makeNode(CaseExpr); - - COPY_SCALAR_FIELD(casetype); - COPY_SCALAR_FIELD(casecollid); - COPY_NODE_FIELD(arg); - COPY_NODE_FIELD(args); - COPY_NODE_FIELD(defresult); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyCaseWhen - */ -static CaseWhen * -_copyCaseWhen(const CaseWhen *from) -{ - CaseWhen *newnode = makeNode(CaseWhen); - - COPY_NODE_FIELD(expr); - COPY_NODE_FIELD(result); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyCaseTestExpr - */ -static CaseTestExpr * -_copyCaseTestExpr(const CaseTestExpr *from) -{ - CaseTestExpr *newnode = makeNode(CaseTestExpr); - - COPY_SCALAR_FIELD(typeId); - COPY_SCALAR_FIELD(typeMod); - COPY_SCALAR_FIELD(collation); - - return newnode; -} - -/* - * _copyArrayExpr - */ -static ArrayExpr * -_copyArrayExpr(const ArrayExpr *from) -{ - ArrayExpr *newnode = makeNode(ArrayExpr); - - COPY_SCALAR_FIELD(array_typeid); - COPY_SCALAR_FIELD(array_collid); - COPY_SCALAR_FIELD(element_typeid); - COPY_NODE_FIELD(elements); - COPY_SCALAR_FIELD(multidims); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyRowExpr - */ -static RowExpr * -_copyRowExpr(const RowExpr *from) -{ - RowExpr *newnode = makeNode(RowExpr); - - COPY_NODE_FIELD(args); - COPY_SCALAR_FIELD(row_typeid); - COPY_SCALAR_FIELD(row_format); - COPY_NODE_FIELD(colnames); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyRowCompareExpr - */ -static RowCompareExpr * -_copyRowCompareExpr(const RowCompareExpr *from) -{ - RowCompareExpr *newnode = makeNode(RowCompareExpr); - - COPY_SCALAR_FIELD(rctype); - COPY_NODE_FIELD(opnos); - COPY_NODE_FIELD(opfamilies); - COPY_NODE_FIELD(inputcollids); - COPY_NODE_FIELD(largs); - COPY_NODE_FIELD(rargs); - - return newnode; -} - -/* - * _copyCoalesceExpr - */ -static CoalesceExpr * -_copyCoalesceExpr(const CoalesceExpr *from) -{ - CoalesceExpr *newnode = makeNode(CoalesceExpr); - - COPY_SCALAR_FIELD(coalescetype); - COPY_SCALAR_FIELD(coalescecollid); - COPY_NODE_FIELD(args); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyMinMaxExpr - */ -static MinMaxExpr * -_copyMinMaxExpr(const MinMaxExpr *from) -{ - MinMaxExpr *newnode = makeNode(MinMaxExpr); - - COPY_SCALAR_FIELD(minmaxtype); - COPY_SCALAR_FIELD(minmaxcollid); - COPY_SCALAR_FIELD(inputcollid); - COPY_SCALAR_FIELD(op); - COPY_NODE_FIELD(args); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copySQLValueFunction - */ -static SQLValueFunction * -_copySQLValueFunction(const SQLValueFunction *from) -{ - SQLValueFunction *newnode = makeNode(SQLValueFunction); - - COPY_SCALAR_FIELD(op); - COPY_SCALAR_FIELD(type); - COPY_SCALAR_FIELD(typmod); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyXmlExpr - */ -static XmlExpr * -_copyXmlExpr(const XmlExpr *from) -{ - XmlExpr *newnode = makeNode(XmlExpr); - - COPY_SCALAR_FIELD(op); - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(named_args); - COPY_NODE_FIELD(arg_names); - COPY_NODE_FIELD(args); - COPY_SCALAR_FIELD(xmloption); - COPY_SCALAR_FIELD(type); - COPY_SCALAR_FIELD(typmod); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyNullTest - */ -static NullTest * -_copyNullTest(const NullTest *from) -{ - NullTest *newnode = makeNode(NullTest); - - COPY_NODE_FIELD(arg); - COPY_SCALAR_FIELD(nulltesttype); - COPY_SCALAR_FIELD(argisrow); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyBooleanTest - */ -static BooleanTest * -_copyBooleanTest(const BooleanTest *from) -{ - BooleanTest *newnode = makeNode(BooleanTest); - - COPY_NODE_FIELD(arg); - COPY_SCALAR_FIELD(booltesttype); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyCoerceToDomain - */ -static CoerceToDomain * -_copyCoerceToDomain(const CoerceToDomain *from) -{ - CoerceToDomain *newnode = makeNode(CoerceToDomain); - - COPY_NODE_FIELD(arg); - COPY_SCALAR_FIELD(resulttype); - COPY_SCALAR_FIELD(resulttypmod); - COPY_SCALAR_FIELD(resultcollid); - COPY_SCALAR_FIELD(coercionformat); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyCoerceToDomainValue - */ -static CoerceToDomainValue * -_copyCoerceToDomainValue(const CoerceToDomainValue *from) -{ - CoerceToDomainValue *newnode = makeNode(CoerceToDomainValue); - - COPY_SCALAR_FIELD(typeId); - COPY_SCALAR_FIELD(typeMod); - COPY_SCALAR_FIELD(collation); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copySetToDefault - */ -static SetToDefault * -_copySetToDefault(const SetToDefault *from) -{ - SetToDefault *newnode = makeNode(SetToDefault); - - COPY_SCALAR_FIELD(typeId); - COPY_SCALAR_FIELD(typeMod); - COPY_SCALAR_FIELD(collation); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -/* - * _copyCurrentOfExpr - */ -static CurrentOfExpr * -_copyCurrentOfExpr(const CurrentOfExpr *from) -{ - CurrentOfExpr *newnode = makeNode(CurrentOfExpr); - - COPY_SCALAR_FIELD(cvarno); - COPY_STRING_FIELD(cursor_name); - COPY_SCALAR_FIELD(cursor_param); - - return newnode; -} - - /* - * _copyNextValueExpr - */ -static NextValueExpr * -_copyNextValueExpr(const NextValueExpr *from) -{ - NextValueExpr *newnode = makeNode(NextValueExpr); - - COPY_SCALAR_FIELD(seqid); - COPY_SCALAR_FIELD(typeId); - - return newnode; -} - -/* - * _copyInferenceElem - */ -static InferenceElem * -_copyInferenceElem(const InferenceElem *from) -{ - InferenceElem *newnode = makeNode(InferenceElem); - - COPY_NODE_FIELD(expr); - COPY_SCALAR_FIELD(infercollid); - COPY_SCALAR_FIELD(inferopclass); - - return newnode; -} - -/* - * _copyTargetEntry - */ -static TargetEntry * -_copyTargetEntry(const TargetEntry *from) -{ - TargetEntry *newnode = makeNode(TargetEntry); - - COPY_NODE_FIELD(expr); - COPY_SCALAR_FIELD(resno); - COPY_STRING_FIELD(resname); - COPY_SCALAR_FIELD(ressortgroupref); - COPY_SCALAR_FIELD(resorigtbl); - COPY_SCALAR_FIELD(resorigcol); - COPY_SCALAR_FIELD(resjunk); - - return newnode; -} - -/* - * _copyRangeTblRef - */ -static RangeTblRef * -_copyRangeTblRef(const RangeTblRef *from) -{ - RangeTblRef *newnode = makeNode(RangeTblRef); - - COPY_SCALAR_FIELD(rtindex); - - return newnode; -} - -/* - * _copyJoinExpr - */ -static JoinExpr * -_copyJoinExpr(const JoinExpr *from) -{ - JoinExpr *newnode = makeNode(JoinExpr); - - COPY_SCALAR_FIELD(jointype); - COPY_SCALAR_FIELD(isNatural); - COPY_NODE_FIELD(larg); - COPY_NODE_FIELD(rarg); - COPY_NODE_FIELD(usingClause); - COPY_NODE_FIELD(join_using_alias); - COPY_NODE_FIELD(quals); - COPY_NODE_FIELD(alias); - COPY_SCALAR_FIELD(rtindex); - - return newnode; -} - -/* - * _copyFromExpr - */ -static FromExpr * -_copyFromExpr(const FromExpr *from) -{ - FromExpr *newnode = makeNode(FromExpr); - - COPY_NODE_FIELD(fromlist); - COPY_NODE_FIELD(quals); - - return newnode; -} - -/* - * _copyOnConflictExpr - */ -static OnConflictExpr * -_copyOnConflictExpr(const OnConflictExpr *from) -{ - OnConflictExpr *newnode = makeNode(OnConflictExpr); - - COPY_SCALAR_FIELD(action); - COPY_NODE_FIELD(arbiterElems); - COPY_NODE_FIELD(arbiterWhere); - COPY_SCALAR_FIELD(constraint); - COPY_NODE_FIELD(onConflictSet); - COPY_NODE_FIELD(onConflictWhere); - COPY_SCALAR_FIELD(exclRelIndex); - COPY_NODE_FIELD(exclRelTlist); - - return newnode; -} - -/* **************************************************************** - * pathnodes.h copy functions - * - * We don't support copying RelOptInfo, IndexOptInfo, or Path nodes. - * There are some subsidiary structs that are useful to copy, though. - * **************************************************************** - */ - -/* - * _copyPathKey - */ -static PathKey * -_copyPathKey(const PathKey *from) -{ - PathKey *newnode = makeNode(PathKey); - - /* EquivalenceClasses are never moved, so just shallow-copy the pointer */ - COPY_SCALAR_FIELD(pk_eclass); - COPY_SCALAR_FIELD(pk_opfamily); - COPY_SCALAR_FIELD(pk_strategy); - COPY_SCALAR_FIELD(pk_nulls_first); - - return newnode; -} - -/* - * _copyRestrictInfo - */ -static RestrictInfo * -_copyRestrictInfo(const RestrictInfo *from) -{ - RestrictInfo *newnode = makeNode(RestrictInfo); - - COPY_NODE_FIELD(clause); - COPY_SCALAR_FIELD(is_pushed_down); - COPY_SCALAR_FIELD(outerjoin_delayed); - COPY_SCALAR_FIELD(can_join); - COPY_SCALAR_FIELD(pseudoconstant); - COPY_SCALAR_FIELD(leakproof); - COPY_SCALAR_FIELD(has_volatile); - COPY_SCALAR_FIELD(security_level); - COPY_BITMAPSET_FIELD(clause_relids); - COPY_BITMAPSET_FIELD(required_relids); - COPY_BITMAPSET_FIELD(outer_relids); - COPY_BITMAPSET_FIELD(nullable_relids); - COPY_BITMAPSET_FIELD(left_relids); - COPY_BITMAPSET_FIELD(right_relids); - COPY_NODE_FIELD(orclause); - /* EquivalenceClasses are never copied, so shallow-copy the pointers */ - COPY_SCALAR_FIELD(parent_ec); - COPY_SCALAR_FIELD(eval_cost); - COPY_SCALAR_FIELD(norm_selec); - COPY_SCALAR_FIELD(outer_selec); - COPY_NODE_FIELD(mergeopfamilies); - /* EquivalenceClasses are never copied, so shallow-copy the pointers */ - COPY_SCALAR_FIELD(left_ec); - COPY_SCALAR_FIELD(right_ec); - COPY_SCALAR_FIELD(left_em); - COPY_SCALAR_FIELD(right_em); - /* MergeScanSelCache isn't a Node, so hard to copy; just reset cache */ - newnode->scansel_cache = NIL; - COPY_SCALAR_FIELD(outer_is_left); - COPY_SCALAR_FIELD(hashjoinoperator); - COPY_SCALAR_FIELD(left_bucketsize); - COPY_SCALAR_FIELD(right_bucketsize); - COPY_SCALAR_FIELD(left_mcvfreq); - COPY_SCALAR_FIELD(right_mcvfreq); - COPY_SCALAR_FIELD(left_hasheqoperator); - COPY_SCALAR_FIELD(right_hasheqoperator); - - return newnode; -} - -/* - * _copyPlaceHolderVar - */ -static PlaceHolderVar * -_copyPlaceHolderVar(const PlaceHolderVar *from) -{ - PlaceHolderVar *newnode = makeNode(PlaceHolderVar); - - COPY_NODE_FIELD(phexpr); - COPY_BITMAPSET_FIELD(phrels); - COPY_SCALAR_FIELD(phid); - COPY_SCALAR_FIELD(phlevelsup); - - return newnode; -} - -/* - * _copySpecialJoinInfo - */ -static SpecialJoinInfo * -_copySpecialJoinInfo(const SpecialJoinInfo *from) -{ - SpecialJoinInfo *newnode = makeNode(SpecialJoinInfo); - - COPY_BITMAPSET_FIELD(min_lefthand); - COPY_BITMAPSET_FIELD(min_righthand); - COPY_BITMAPSET_FIELD(syn_lefthand); - COPY_BITMAPSET_FIELD(syn_righthand); - COPY_SCALAR_FIELD(jointype); - COPY_SCALAR_FIELD(lhs_strict); - COPY_SCALAR_FIELD(delay_upper_joins); - COPY_SCALAR_FIELD(semi_can_btree); - COPY_SCALAR_FIELD(semi_can_hash); - COPY_NODE_FIELD(semi_operators); - COPY_NODE_FIELD(semi_rhs_exprs); - - return newnode; -} - -/* - * _copyAppendRelInfo - */ -static AppendRelInfo * -_copyAppendRelInfo(const AppendRelInfo *from) -{ - AppendRelInfo *newnode = makeNode(AppendRelInfo); - - COPY_SCALAR_FIELD(parent_relid); - COPY_SCALAR_FIELD(child_relid); - COPY_SCALAR_FIELD(parent_reltype); - COPY_SCALAR_FIELD(child_reltype); - COPY_NODE_FIELD(translated_vars); - COPY_SCALAR_FIELD(num_child_cols); - COPY_POINTER_FIELD(parent_colnos, from->num_child_cols * sizeof(AttrNumber)); - COPY_SCALAR_FIELD(parent_reloid); - - return newnode; -} - -/* - * _copyPlaceHolderInfo - */ -static PlaceHolderInfo * -_copyPlaceHolderInfo(const PlaceHolderInfo *from) -{ - PlaceHolderInfo *newnode = makeNode(PlaceHolderInfo); - - COPY_SCALAR_FIELD(phid); - COPY_NODE_FIELD(ph_var); - COPY_BITMAPSET_FIELD(ph_eval_at); - COPY_BITMAPSET_FIELD(ph_lateral); - COPY_BITMAPSET_FIELD(ph_needed); - COPY_SCALAR_FIELD(ph_width); - - return newnode; -} - -/* **************************************************************** - * parsenodes.h copy functions - * **************************************************************** - */ - -static RangeTblEntry * -_copyRangeTblEntry(const RangeTblEntry *from) -{ - RangeTblEntry *newnode = makeNode(RangeTblEntry); - - COPY_SCALAR_FIELD(rtekind); - COPY_SCALAR_FIELD(relid); - COPY_SCALAR_FIELD(relkind); - COPY_SCALAR_FIELD(rellockmode); - COPY_NODE_FIELD(tablesample); - COPY_NODE_FIELD(subquery); - COPY_SCALAR_FIELD(security_barrier); - COPY_SCALAR_FIELD(jointype); - COPY_SCALAR_FIELD(joinmergedcols); - COPY_NODE_FIELD(joinaliasvars); - COPY_NODE_FIELD(joinleftcols); - COPY_NODE_FIELD(joinrightcols); - COPY_NODE_FIELD(join_using_alias); - COPY_NODE_FIELD(functions); - COPY_SCALAR_FIELD(funcordinality); - COPY_NODE_FIELD(tablefunc); - COPY_NODE_FIELD(values_lists); - COPY_STRING_FIELD(ctename); - COPY_SCALAR_FIELD(ctelevelsup); - COPY_SCALAR_FIELD(self_reference); - COPY_NODE_FIELD(coltypes); - COPY_NODE_FIELD(coltypmods); - COPY_NODE_FIELD(colcollations); - COPY_STRING_FIELD(enrname); - COPY_SCALAR_FIELD(enrtuples); - COPY_NODE_FIELD(alias); - COPY_NODE_FIELD(eref); - COPY_SCALAR_FIELD(lateral); - COPY_SCALAR_FIELD(inh); - COPY_SCALAR_FIELD(inFromCl); - COPY_SCALAR_FIELD(requiredPerms); - COPY_SCALAR_FIELD(checkAsUser); - COPY_BITMAPSET_FIELD(selectedCols); - COPY_BITMAPSET_FIELD(insertedCols); - COPY_BITMAPSET_FIELD(updatedCols); - COPY_BITMAPSET_FIELD(extraUpdatedCols); - COPY_NODE_FIELD(securityQuals); - - return newnode; -} - -static RangeTblFunction * -_copyRangeTblFunction(const RangeTblFunction *from) -{ - RangeTblFunction *newnode = makeNode(RangeTblFunction); - - COPY_NODE_FIELD(funcexpr); - COPY_SCALAR_FIELD(funccolcount); - COPY_NODE_FIELD(funccolnames); - COPY_NODE_FIELD(funccoltypes); - COPY_NODE_FIELD(funccoltypmods); - COPY_NODE_FIELD(funccolcollations); - COPY_BITMAPSET_FIELD(funcparams); - - return newnode; -} - -static TableSampleClause * -_copyTableSampleClause(const TableSampleClause *from) -{ - TableSampleClause *newnode = makeNode(TableSampleClause); - - COPY_SCALAR_FIELD(tsmhandler); - COPY_NODE_FIELD(args); - COPY_NODE_FIELD(repeatable); - - return newnode; -} - -static WithCheckOption * -_copyWithCheckOption(const WithCheckOption *from) -{ - WithCheckOption *newnode = makeNode(WithCheckOption); - - COPY_SCALAR_FIELD(kind); - COPY_STRING_FIELD(relname); - COPY_STRING_FIELD(polname); - COPY_NODE_FIELD(qual); - COPY_SCALAR_FIELD(cascaded); - - return newnode; -} - -static SortGroupClause * -_copySortGroupClause(const SortGroupClause *from) -{ - SortGroupClause *newnode = makeNode(SortGroupClause); - - COPY_SCALAR_FIELD(tleSortGroupRef); - COPY_SCALAR_FIELD(eqop); - COPY_SCALAR_FIELD(sortop); - COPY_SCALAR_FIELD(nulls_first); - COPY_SCALAR_FIELD(hashable); - - return newnode; -} - -static GroupingSet * -_copyGroupingSet(const GroupingSet *from) -{ - GroupingSet *newnode = makeNode(GroupingSet); - - COPY_SCALAR_FIELD(kind); - COPY_NODE_FIELD(content); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static WindowClause * -_copyWindowClause(const WindowClause *from) -{ - WindowClause *newnode = makeNode(WindowClause); - - COPY_STRING_FIELD(name); - COPY_STRING_FIELD(refname); - COPY_NODE_FIELD(partitionClause); - COPY_NODE_FIELD(orderClause); - COPY_SCALAR_FIELD(frameOptions); - COPY_NODE_FIELD(startOffset); - COPY_NODE_FIELD(endOffset); - COPY_NODE_FIELD(runCondition); - COPY_SCALAR_FIELD(startInRangeFunc); - COPY_SCALAR_FIELD(endInRangeFunc); - COPY_SCALAR_FIELD(inRangeColl); - COPY_SCALAR_FIELD(inRangeAsc); - COPY_SCALAR_FIELD(inRangeNullsFirst); - COPY_SCALAR_FIELD(winref); - COPY_SCALAR_FIELD(copiedOrder); - - return newnode; -} - -static RowMarkClause * -_copyRowMarkClause(const RowMarkClause *from) -{ - RowMarkClause *newnode = makeNode(RowMarkClause); - - COPY_SCALAR_FIELD(rti); - COPY_SCALAR_FIELD(strength); - COPY_SCALAR_FIELD(waitPolicy); - COPY_SCALAR_FIELD(pushedDown); - - return newnode; -} - -static WithClause * -_copyWithClause(const WithClause *from) -{ - WithClause *newnode = makeNode(WithClause); - - COPY_NODE_FIELD(ctes); - COPY_SCALAR_FIELD(recursive); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static InferClause * -_copyInferClause(const InferClause *from) -{ - InferClause *newnode = makeNode(InferClause); - - COPY_NODE_FIELD(indexElems); - COPY_NODE_FIELD(whereClause); - COPY_STRING_FIELD(conname); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static OnConflictClause * -_copyOnConflictClause(const OnConflictClause *from) -{ - OnConflictClause *newnode = makeNode(OnConflictClause); - - COPY_SCALAR_FIELD(action); - COPY_NODE_FIELD(infer); - COPY_NODE_FIELD(targetList); - COPY_NODE_FIELD(whereClause); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static CTESearchClause * -_copyCTESearchClause(const CTESearchClause *from) -{ - CTESearchClause *newnode = makeNode(CTESearchClause); - - COPY_NODE_FIELD(search_col_list); - COPY_SCALAR_FIELD(search_breadth_first); - COPY_STRING_FIELD(search_seq_column); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static CTECycleClause * -_copyCTECycleClause(const CTECycleClause *from) -{ - CTECycleClause *newnode = makeNode(CTECycleClause); - - COPY_NODE_FIELD(cycle_col_list); - COPY_STRING_FIELD(cycle_mark_column); - COPY_NODE_FIELD(cycle_mark_value); - COPY_NODE_FIELD(cycle_mark_default); - COPY_STRING_FIELD(cycle_path_column); - COPY_LOCATION_FIELD(location); - COPY_SCALAR_FIELD(cycle_mark_type); - COPY_SCALAR_FIELD(cycle_mark_typmod); - COPY_SCALAR_FIELD(cycle_mark_collation); - COPY_SCALAR_FIELD(cycle_mark_neop); - - return newnode; -} - -static CommonTableExpr * -_copyCommonTableExpr(const CommonTableExpr *from) -{ - CommonTableExpr *newnode = makeNode(CommonTableExpr); - - COPY_STRING_FIELD(ctename); - COPY_NODE_FIELD(aliascolnames); - COPY_SCALAR_FIELD(ctematerialized); - COPY_NODE_FIELD(ctequery); - COPY_NODE_FIELD(search_clause); - COPY_NODE_FIELD(cycle_clause); - COPY_LOCATION_FIELD(location); - COPY_SCALAR_FIELD(cterecursive); - COPY_SCALAR_FIELD(cterefcount); - COPY_NODE_FIELD(ctecolnames); - COPY_NODE_FIELD(ctecoltypes); - COPY_NODE_FIELD(ctecoltypmods); - COPY_NODE_FIELD(ctecolcollations); - - return newnode; -} - -static MergeWhenClause * -_copyMergeWhenClause(const MergeWhenClause *from) -{ - MergeWhenClause *newnode = makeNode(MergeWhenClause); - - COPY_SCALAR_FIELD(matched); - COPY_SCALAR_FIELD(commandType); - COPY_SCALAR_FIELD(override); - COPY_NODE_FIELD(condition); - COPY_NODE_FIELD(targetList); - COPY_NODE_FIELD(values); - return newnode; -} - -static MergeAction * -_copyMergeAction(const MergeAction *from) -{ - MergeAction *newnode = makeNode(MergeAction); - - COPY_SCALAR_FIELD(matched); - COPY_SCALAR_FIELD(commandType); - COPY_SCALAR_FIELD(override); - COPY_NODE_FIELD(qual); - COPY_NODE_FIELD(targetList); - COPY_NODE_FIELD(updateColnos); - - return newnode; -} - -static A_Expr * -_copyA_Expr(const A_Expr *from) -{ - A_Expr *newnode = makeNode(A_Expr); - - COPY_SCALAR_FIELD(kind); - COPY_NODE_FIELD(name); - COPY_NODE_FIELD(lexpr); - COPY_NODE_FIELD(rexpr); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static ColumnRef * -_copyColumnRef(const ColumnRef *from) -{ - ColumnRef *newnode = makeNode(ColumnRef); - - COPY_NODE_FIELD(fields); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static ParamRef * -_copyParamRef(const ParamRef *from) -{ - ParamRef *newnode = makeNode(ParamRef); - - COPY_SCALAR_FIELD(number); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static A_Const * -_copyA_Const(const A_Const *from) -{ - A_Const *newnode = makeNode(A_Const); - - COPY_SCALAR_FIELD(isnull); - if (!from->isnull) - { - /* This part must duplicate other _copy*() functions. */ - COPY_SCALAR_FIELD(val.node.type); - switch (nodeTag(&from->val)) - { - case T_Integer: - COPY_SCALAR_FIELD(val.ival.ival); - break; - case T_Float: - COPY_STRING_FIELD(val.fval.fval); - break; - case T_Boolean: - COPY_SCALAR_FIELD(val.boolval.boolval); - break; - case T_String: - COPY_STRING_FIELD(val.sval.sval); - break; - case T_BitString: - COPY_STRING_FIELD(val.bsval.bsval); - break; - default: - elog(ERROR, "unrecognized node type: %d", - (int) nodeTag(&from->val)); - break; - } - } - - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static FuncCall * -_copyFuncCall(const FuncCall *from) -{ - FuncCall *newnode = makeNode(FuncCall); - - COPY_NODE_FIELD(funcname); - COPY_NODE_FIELD(args); - COPY_NODE_FIELD(agg_order); - COPY_NODE_FIELD(agg_filter); - COPY_NODE_FIELD(over); - COPY_SCALAR_FIELD(agg_within_group); - COPY_SCALAR_FIELD(agg_star); - COPY_SCALAR_FIELD(agg_distinct); - COPY_SCALAR_FIELD(func_variadic); - COPY_SCALAR_FIELD(funcformat); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static A_Star * -_copyA_Star(const A_Star *from) -{ - A_Star *newnode = makeNode(A_Star); - - return newnode; -} - -static A_Indices * -_copyA_Indices(const A_Indices *from) -{ - A_Indices *newnode = makeNode(A_Indices); - - COPY_SCALAR_FIELD(is_slice); - COPY_NODE_FIELD(lidx); - COPY_NODE_FIELD(uidx); - - return newnode; -} - -static A_Indirection * -_copyA_Indirection(const A_Indirection *from) -{ - A_Indirection *newnode = makeNode(A_Indirection); - - COPY_NODE_FIELD(arg); - COPY_NODE_FIELD(indirection); - - return newnode; -} - -static A_ArrayExpr * -_copyA_ArrayExpr(const A_ArrayExpr *from) -{ - A_ArrayExpr *newnode = makeNode(A_ArrayExpr); - - COPY_NODE_FIELD(elements); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static ResTarget * -_copyResTarget(const ResTarget *from) -{ - ResTarget *newnode = makeNode(ResTarget); - - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(indirection); - COPY_NODE_FIELD(val); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static MultiAssignRef * -_copyMultiAssignRef(const MultiAssignRef *from) -{ - MultiAssignRef *newnode = makeNode(MultiAssignRef); - - COPY_NODE_FIELD(source); - COPY_SCALAR_FIELD(colno); - COPY_SCALAR_FIELD(ncolumns); - - return newnode; -} - -static TypeName * -_copyTypeName(const TypeName *from) -{ - TypeName *newnode = makeNode(TypeName); - - COPY_NODE_FIELD(names); - COPY_SCALAR_FIELD(typeOid); - COPY_SCALAR_FIELD(setof); - COPY_SCALAR_FIELD(pct_type); - COPY_NODE_FIELD(typmods); - COPY_SCALAR_FIELD(typemod); - COPY_NODE_FIELD(arrayBounds); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static SortBy * -_copySortBy(const SortBy *from) -{ - SortBy *newnode = makeNode(SortBy); - - COPY_NODE_FIELD(node); - COPY_SCALAR_FIELD(sortby_dir); - COPY_SCALAR_FIELD(sortby_nulls); - COPY_NODE_FIELD(useOp); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static WindowDef * -_copyWindowDef(const WindowDef *from) -{ - WindowDef *newnode = makeNode(WindowDef); - - COPY_STRING_FIELD(name); - COPY_STRING_FIELD(refname); - COPY_NODE_FIELD(partitionClause); - COPY_NODE_FIELD(orderClause); - COPY_SCALAR_FIELD(frameOptions); - COPY_NODE_FIELD(startOffset); - COPY_NODE_FIELD(endOffset); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static RangeSubselect * -_copyRangeSubselect(const RangeSubselect *from) -{ - RangeSubselect *newnode = makeNode(RangeSubselect); - - COPY_SCALAR_FIELD(lateral); - COPY_NODE_FIELD(subquery); - COPY_NODE_FIELD(alias); - - return newnode; -} - -static RangeFunction * -_copyRangeFunction(const RangeFunction *from) -{ - RangeFunction *newnode = makeNode(RangeFunction); - - COPY_SCALAR_FIELD(lateral); - COPY_SCALAR_FIELD(ordinality); - COPY_SCALAR_FIELD(is_rowsfrom); - COPY_NODE_FIELD(functions); - COPY_NODE_FIELD(alias); - COPY_NODE_FIELD(coldeflist); - - return newnode; -} - -static RangeTableSample * -_copyRangeTableSample(const RangeTableSample *from) -{ - RangeTableSample *newnode = makeNode(RangeTableSample); - - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(method); - COPY_NODE_FIELD(args); - COPY_NODE_FIELD(repeatable); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static RangeTableFunc * -_copyRangeTableFunc(const RangeTableFunc *from) -{ - RangeTableFunc *newnode = makeNode(RangeTableFunc); - - COPY_SCALAR_FIELD(lateral); - COPY_NODE_FIELD(docexpr); - COPY_NODE_FIELD(rowexpr); - COPY_NODE_FIELD(namespaces); - COPY_NODE_FIELD(columns); - COPY_NODE_FIELD(alias); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static RangeTableFuncCol * -_copyRangeTableFuncCol(const RangeTableFuncCol *from) -{ - RangeTableFuncCol *newnode = makeNode(RangeTableFuncCol); - - COPY_STRING_FIELD(colname); - COPY_NODE_FIELD(typeName); - COPY_SCALAR_FIELD(for_ordinality); - COPY_SCALAR_FIELD(is_not_null); - COPY_NODE_FIELD(colexpr); - COPY_NODE_FIELD(coldefexpr); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static TypeCast * -_copyTypeCast(const TypeCast *from) -{ - TypeCast *newnode = makeNode(TypeCast); - - COPY_NODE_FIELD(arg); - COPY_NODE_FIELD(typeName); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static CollateClause * -_copyCollateClause(const CollateClause *from) -{ - CollateClause *newnode = makeNode(CollateClause); - - COPY_NODE_FIELD(arg); - COPY_NODE_FIELD(collname); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static IndexElem * -_copyIndexElem(const IndexElem *from) -{ - IndexElem *newnode = makeNode(IndexElem); - - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(expr); - COPY_STRING_FIELD(indexcolname); - COPY_NODE_FIELD(collation); - COPY_NODE_FIELD(opclass); - COPY_NODE_FIELD(opclassopts); - COPY_SCALAR_FIELD(ordering); - COPY_SCALAR_FIELD(nulls_ordering); - - return newnode; -} - -static StatsElem * -_copyStatsElem(const StatsElem *from) -{ - StatsElem *newnode = makeNode(StatsElem); - - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(expr); - - return newnode; -} - -static ColumnDef * -_copyColumnDef(const ColumnDef *from) -{ - ColumnDef *newnode = makeNode(ColumnDef); - - COPY_STRING_FIELD(colname); - COPY_NODE_FIELD(typeName); - COPY_STRING_FIELD(compression); - COPY_SCALAR_FIELD(inhcount); - COPY_SCALAR_FIELD(is_local); - COPY_SCALAR_FIELD(is_not_null); - COPY_SCALAR_FIELD(is_from_type); - COPY_SCALAR_FIELD(storage); - COPY_NODE_FIELD(raw_default); - COPY_NODE_FIELD(cooked_default); - COPY_SCALAR_FIELD(identity); - COPY_NODE_FIELD(identitySequence); - COPY_SCALAR_FIELD(generated); - COPY_NODE_FIELD(collClause); - COPY_SCALAR_FIELD(collOid); - COPY_NODE_FIELD(constraints); - COPY_NODE_FIELD(fdwoptions); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static Constraint * -_copyConstraint(const Constraint *from) -{ - Constraint *newnode = makeNode(Constraint); - - COPY_SCALAR_FIELD(contype); - COPY_STRING_FIELD(conname); - COPY_SCALAR_FIELD(deferrable); - COPY_SCALAR_FIELD(initdeferred); - COPY_LOCATION_FIELD(location); - COPY_SCALAR_FIELD(is_no_inherit); - COPY_NODE_FIELD(raw_expr); - COPY_STRING_FIELD(cooked_expr); - COPY_SCALAR_FIELD(generated_when); - COPY_SCALAR_FIELD(nulls_not_distinct); - COPY_NODE_FIELD(keys); - COPY_NODE_FIELD(including); - COPY_NODE_FIELD(exclusions); - COPY_NODE_FIELD(options); - COPY_STRING_FIELD(indexname); - COPY_STRING_FIELD(indexspace); - COPY_SCALAR_FIELD(reset_default_tblspc); - COPY_STRING_FIELD(access_method); - COPY_NODE_FIELD(where_clause); - COPY_NODE_FIELD(pktable); - COPY_NODE_FIELD(fk_attrs); - COPY_NODE_FIELD(pk_attrs); - COPY_SCALAR_FIELD(fk_matchtype); - COPY_SCALAR_FIELD(fk_upd_action); - COPY_SCALAR_FIELD(fk_del_action); - COPY_NODE_FIELD(fk_del_set_cols); - COPY_NODE_FIELD(old_conpfeqop); - COPY_SCALAR_FIELD(old_pktable_oid); - COPY_SCALAR_FIELD(skip_validation); - COPY_SCALAR_FIELD(initially_valid); - - return newnode; -} - -static DefElem * -_copyDefElem(const DefElem *from) -{ - DefElem *newnode = makeNode(DefElem); - - COPY_STRING_FIELD(defnamespace); - COPY_STRING_FIELD(defname); - COPY_NODE_FIELD(arg); - COPY_SCALAR_FIELD(defaction); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static LockingClause * -_copyLockingClause(const LockingClause *from) -{ - LockingClause *newnode = makeNode(LockingClause); - - COPY_NODE_FIELD(lockedRels); - COPY_SCALAR_FIELD(strength); - COPY_SCALAR_FIELD(waitPolicy); - - return newnode; -} - -static XmlSerialize * -_copyXmlSerialize(const XmlSerialize *from) -{ - XmlSerialize *newnode = makeNode(XmlSerialize); - - COPY_SCALAR_FIELD(xmloption); - COPY_NODE_FIELD(expr); - COPY_NODE_FIELD(typeName); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static RoleSpec * -_copyRoleSpec(const RoleSpec *from) -{ - RoleSpec *newnode = makeNode(RoleSpec); - - COPY_SCALAR_FIELD(roletype); - COPY_STRING_FIELD(rolename); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static TriggerTransition * -_copyTriggerTransition(const TriggerTransition *from) -{ - TriggerTransition *newnode = makeNode(TriggerTransition); - - COPY_STRING_FIELD(name); - COPY_SCALAR_FIELD(isNew); - COPY_SCALAR_FIELD(isTable); - - return newnode; -} - -static Query * -_copyQuery(const Query *from) -{ - Query *newnode = makeNode(Query); - - COPY_SCALAR_FIELD(commandType); - COPY_SCALAR_FIELD(querySource); - COPY_SCALAR_FIELD(queryId); - COPY_SCALAR_FIELD(canSetTag); - COPY_NODE_FIELD(utilityStmt); - COPY_SCALAR_FIELD(resultRelation); - COPY_SCALAR_FIELD(hasAggs); - COPY_SCALAR_FIELD(hasWindowFuncs); - COPY_SCALAR_FIELD(hasTargetSRFs); - COPY_SCALAR_FIELD(hasSubLinks); - COPY_SCALAR_FIELD(hasDistinctOn); - COPY_SCALAR_FIELD(hasRecursive); - COPY_SCALAR_FIELD(hasModifyingCTE); - COPY_SCALAR_FIELD(hasForUpdate); - COPY_SCALAR_FIELD(hasRowSecurity); - COPY_SCALAR_FIELD(isReturn); - COPY_NODE_FIELD(cteList); - COPY_NODE_FIELD(rtable); - COPY_NODE_FIELD(jointree); - COPY_NODE_FIELD(targetList); - COPY_SCALAR_FIELD(override); - COPY_NODE_FIELD(onConflict); - COPY_NODE_FIELD(returningList); - COPY_NODE_FIELD(groupClause); - COPY_SCALAR_FIELD(groupDistinct); - COPY_NODE_FIELD(groupingSets); - COPY_NODE_FIELD(havingQual); - COPY_NODE_FIELD(windowClause); - COPY_NODE_FIELD(distinctClause); - COPY_NODE_FIELD(sortClause); - COPY_NODE_FIELD(limitOffset); - COPY_NODE_FIELD(limitCount); - COPY_SCALAR_FIELD(limitOption); - COPY_NODE_FIELD(rowMarks); - COPY_NODE_FIELD(setOperations); - COPY_NODE_FIELD(constraintDeps); - COPY_NODE_FIELD(withCheckOptions); - COPY_NODE_FIELD(mergeActionList); - COPY_SCALAR_FIELD(mergeUseOuterJoin); - COPY_LOCATION_FIELD(stmt_location); - COPY_SCALAR_FIELD(stmt_len); - - return newnode; -} - -static RawStmt * -_copyRawStmt(const RawStmt *from) -{ - RawStmt *newnode = makeNode(RawStmt); - - COPY_NODE_FIELD(stmt); - COPY_LOCATION_FIELD(stmt_location); - COPY_SCALAR_FIELD(stmt_len); - - return newnode; -} - -static InsertStmt * -_copyInsertStmt(const InsertStmt *from) -{ - InsertStmt *newnode = makeNode(InsertStmt); - - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(cols); - COPY_NODE_FIELD(selectStmt); - COPY_NODE_FIELD(onConflictClause); - COPY_NODE_FIELD(returningList); - COPY_NODE_FIELD(withClause); - COPY_SCALAR_FIELD(override); - - return newnode; -} - -static DeleteStmt * -_copyDeleteStmt(const DeleteStmt *from) -{ - DeleteStmt *newnode = makeNode(DeleteStmt); - - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(usingClause); - COPY_NODE_FIELD(whereClause); - COPY_NODE_FIELD(returningList); - COPY_NODE_FIELD(withClause); - - return newnode; -} - -static UpdateStmt * -_copyUpdateStmt(const UpdateStmt *from) -{ - UpdateStmt *newnode = makeNode(UpdateStmt); - - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(targetList); - COPY_NODE_FIELD(whereClause); - COPY_NODE_FIELD(fromClause); - COPY_NODE_FIELD(returningList); - COPY_NODE_FIELD(withClause); - - return newnode; -} - -static MergeStmt * -_copyMergeStmt(const MergeStmt *from) -{ - MergeStmt *newnode = makeNode(MergeStmt); - - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(sourceRelation); - COPY_NODE_FIELD(joinCondition); - COPY_NODE_FIELD(mergeWhenClauses); - COPY_NODE_FIELD(withClause); - - return newnode; -} - -static SelectStmt * -_copySelectStmt(const SelectStmt *from) -{ - SelectStmt *newnode = makeNode(SelectStmt); - - COPY_NODE_FIELD(distinctClause); - COPY_NODE_FIELD(intoClause); - COPY_NODE_FIELD(targetList); - COPY_NODE_FIELD(fromClause); - COPY_NODE_FIELD(whereClause); - COPY_NODE_FIELD(groupClause); - COPY_SCALAR_FIELD(groupDistinct); - COPY_NODE_FIELD(havingClause); - COPY_NODE_FIELD(windowClause); - COPY_NODE_FIELD(valuesLists); - COPY_NODE_FIELD(sortClause); - COPY_NODE_FIELD(limitOffset); - COPY_NODE_FIELD(limitCount); - COPY_SCALAR_FIELD(limitOption); - COPY_NODE_FIELD(lockingClause); - COPY_NODE_FIELD(withClause); - COPY_SCALAR_FIELD(op); - COPY_SCALAR_FIELD(all); - COPY_NODE_FIELD(larg); - COPY_NODE_FIELD(rarg); - - return newnode; -} - -static SetOperationStmt * -_copySetOperationStmt(const SetOperationStmt *from) -{ - SetOperationStmt *newnode = makeNode(SetOperationStmt); - - COPY_SCALAR_FIELD(op); - COPY_SCALAR_FIELD(all); - COPY_NODE_FIELD(larg); - COPY_NODE_FIELD(rarg); - COPY_NODE_FIELD(colTypes); - COPY_NODE_FIELD(colTypmods); - COPY_NODE_FIELD(colCollations); - COPY_NODE_FIELD(groupClauses); - - return newnode; -} - -static ReturnStmt * -_copyReturnStmt(const ReturnStmt *from) -{ - ReturnStmt *newnode = makeNode(ReturnStmt); - - COPY_NODE_FIELD(returnval); - - return newnode; -} - -static PLAssignStmt * -_copyPLAssignStmt(const PLAssignStmt *from) -{ - PLAssignStmt *newnode = makeNode(PLAssignStmt); - - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(indirection); - COPY_SCALAR_FIELD(nnames); - COPY_NODE_FIELD(val); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static AlterTableStmt * -_copyAlterTableStmt(const AlterTableStmt *from) -{ - AlterTableStmt *newnode = makeNode(AlterTableStmt); - - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(cmds); - COPY_SCALAR_FIELD(objtype); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static AlterTableCmd * -_copyAlterTableCmd(const AlterTableCmd *from) -{ - AlterTableCmd *newnode = makeNode(AlterTableCmd); - - COPY_SCALAR_FIELD(subtype); - COPY_STRING_FIELD(name); - COPY_SCALAR_FIELD(num); - COPY_NODE_FIELD(newowner); - COPY_NODE_FIELD(def); - COPY_SCALAR_FIELD(behavior); - COPY_SCALAR_FIELD(missing_ok); - COPY_SCALAR_FIELD(recurse); - - return newnode; -} - -static AlterCollationStmt * -_copyAlterCollationStmt(const AlterCollationStmt *from) -{ - AlterCollationStmt *newnode = makeNode(AlterCollationStmt); - - COPY_NODE_FIELD(collname); - - return newnode; -} - -static AlterDomainStmt * -_copyAlterDomainStmt(const AlterDomainStmt *from) -{ - AlterDomainStmt *newnode = makeNode(AlterDomainStmt); - - COPY_SCALAR_FIELD(subtype); - COPY_NODE_FIELD(typeName); - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(def); - COPY_SCALAR_FIELD(behavior); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static GrantStmt * -_copyGrantStmt(const GrantStmt *from) -{ - GrantStmt *newnode = makeNode(GrantStmt); - - COPY_SCALAR_FIELD(is_grant); - COPY_SCALAR_FIELD(targtype); - COPY_SCALAR_FIELD(objtype); - COPY_NODE_FIELD(objects); - COPY_NODE_FIELD(privileges); - COPY_NODE_FIELD(grantees); - COPY_SCALAR_FIELD(grant_option); - COPY_NODE_FIELD(grantor); - COPY_SCALAR_FIELD(behavior); - - return newnode; -} - -static ObjectWithArgs * -_copyObjectWithArgs(const ObjectWithArgs *from) -{ - ObjectWithArgs *newnode = makeNode(ObjectWithArgs); - - COPY_NODE_FIELD(objname); - COPY_NODE_FIELD(objargs); - COPY_NODE_FIELD(objfuncargs); - COPY_SCALAR_FIELD(args_unspecified); - - return newnode; -} - -static AccessPriv * -_copyAccessPriv(const AccessPriv *from) -{ - AccessPriv *newnode = makeNode(AccessPriv); - - COPY_STRING_FIELD(priv_name); - COPY_NODE_FIELD(cols); - - return newnode; -} - -static GrantRoleStmt * -_copyGrantRoleStmt(const GrantRoleStmt *from) -{ - GrantRoleStmt *newnode = makeNode(GrantRoleStmt); - - COPY_NODE_FIELD(granted_roles); - COPY_NODE_FIELD(grantee_roles); - COPY_SCALAR_FIELD(is_grant); - COPY_SCALAR_FIELD(admin_opt); - COPY_NODE_FIELD(grantor); - COPY_SCALAR_FIELD(behavior); - - return newnode; -} - -static AlterDefaultPrivilegesStmt * -_copyAlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt *from) -{ - AlterDefaultPrivilegesStmt *newnode = makeNode(AlterDefaultPrivilegesStmt); - - COPY_NODE_FIELD(options); - COPY_NODE_FIELD(action); - - return newnode; -} - -static DeclareCursorStmt * -_copyDeclareCursorStmt(const DeclareCursorStmt *from) -{ - DeclareCursorStmt *newnode = makeNode(DeclareCursorStmt); - - COPY_STRING_FIELD(portalname); - COPY_SCALAR_FIELD(options); - COPY_NODE_FIELD(query); - - return newnode; -} - -static ClosePortalStmt * -_copyClosePortalStmt(const ClosePortalStmt *from) -{ - ClosePortalStmt *newnode = makeNode(ClosePortalStmt); - - COPY_STRING_FIELD(portalname); - - return newnode; -} - -static CallStmt * -_copyCallStmt(const CallStmt *from) -{ - CallStmt *newnode = makeNode(CallStmt); - - COPY_NODE_FIELD(funccall); - COPY_NODE_FIELD(funcexpr); - COPY_NODE_FIELD(outargs); - - return newnode; -} - -static ClusterStmt * -_copyClusterStmt(const ClusterStmt *from) -{ - ClusterStmt *newnode = makeNode(ClusterStmt); - - COPY_NODE_FIELD(relation); - COPY_STRING_FIELD(indexname); - COPY_NODE_FIELD(params); - - return newnode; -} - -static CopyStmt * -_copyCopyStmt(const CopyStmt *from) -{ - CopyStmt *newnode = makeNode(CopyStmt); - - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(query); - COPY_NODE_FIELD(attlist); - COPY_SCALAR_FIELD(is_from); - COPY_SCALAR_FIELD(is_program); - COPY_STRING_FIELD(filename); - COPY_NODE_FIELD(options); - COPY_NODE_FIELD(whereClause); - - return newnode; -} - -/* - * CopyCreateStmtFields - * - * This function copies the fields of the CreateStmt node. It is used by - * copy functions for classes which inherit from CreateStmt. - */ -static void -CopyCreateStmtFields(const CreateStmt *from, CreateStmt *newnode) -{ - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(tableElts); - COPY_NODE_FIELD(inhRelations); - COPY_NODE_FIELD(partspec); - COPY_NODE_FIELD(partbound); - COPY_NODE_FIELD(ofTypename); - COPY_NODE_FIELD(constraints); - COPY_NODE_FIELD(options); - COPY_SCALAR_FIELD(oncommit); - COPY_STRING_FIELD(tablespacename); - COPY_STRING_FIELD(accessMethod); - COPY_SCALAR_FIELD(if_not_exists); -} - -static CreateStmt * -_copyCreateStmt(const CreateStmt *from) -{ - CreateStmt *newnode = makeNode(CreateStmt); - - CopyCreateStmtFields(from, newnode); - - return newnode; -} - -static TableLikeClause * -_copyTableLikeClause(const TableLikeClause *from) -{ - TableLikeClause *newnode = makeNode(TableLikeClause); - - COPY_NODE_FIELD(relation); - COPY_SCALAR_FIELD(options); - COPY_SCALAR_FIELD(relationOid); - - return newnode; -} - -static DefineStmt * -_copyDefineStmt(const DefineStmt *from) -{ - DefineStmt *newnode = makeNode(DefineStmt); - - COPY_SCALAR_FIELD(kind); - COPY_SCALAR_FIELD(oldstyle); - COPY_NODE_FIELD(defnames); - COPY_NODE_FIELD(args); - COPY_NODE_FIELD(definition); - COPY_SCALAR_FIELD(if_not_exists); - COPY_SCALAR_FIELD(replace); - - return newnode; -} - -static DropStmt * -_copyDropStmt(const DropStmt *from) -{ - DropStmt *newnode = makeNode(DropStmt); - - COPY_NODE_FIELD(objects); - COPY_SCALAR_FIELD(removeType); - COPY_SCALAR_FIELD(behavior); - COPY_SCALAR_FIELD(missing_ok); - COPY_SCALAR_FIELD(concurrent); - - return newnode; -} - -static TruncateStmt * -_copyTruncateStmt(const TruncateStmt *from) -{ - TruncateStmt *newnode = makeNode(TruncateStmt); - - COPY_NODE_FIELD(relations); - COPY_SCALAR_FIELD(restart_seqs); - COPY_SCALAR_FIELD(behavior); - - return newnode; -} - -static CommentStmt * -_copyCommentStmt(const CommentStmt *from) -{ - CommentStmt *newnode = makeNode(CommentStmt); - - COPY_SCALAR_FIELD(objtype); - COPY_NODE_FIELD(object); - COPY_STRING_FIELD(comment); - - return newnode; -} - -static SecLabelStmt * -_copySecLabelStmt(const SecLabelStmt *from) -{ - SecLabelStmt *newnode = makeNode(SecLabelStmt); - - COPY_SCALAR_FIELD(objtype); - COPY_NODE_FIELD(object); - COPY_STRING_FIELD(provider); - COPY_STRING_FIELD(label); - - return newnode; -} - -static FetchStmt * -_copyFetchStmt(const FetchStmt *from) -{ - FetchStmt *newnode = makeNode(FetchStmt); - - COPY_SCALAR_FIELD(direction); - COPY_SCALAR_FIELD(howMany); - COPY_STRING_FIELD(portalname); - COPY_SCALAR_FIELD(ismove); - - return newnode; -} - -static IndexStmt * -_copyIndexStmt(const IndexStmt *from) -{ - IndexStmt *newnode = makeNode(IndexStmt); - - COPY_STRING_FIELD(idxname); - COPY_NODE_FIELD(relation); - COPY_STRING_FIELD(accessMethod); - COPY_STRING_FIELD(tableSpace); - COPY_NODE_FIELD(indexParams); - COPY_NODE_FIELD(indexIncludingParams); - COPY_NODE_FIELD(options); - COPY_NODE_FIELD(whereClause); - COPY_NODE_FIELD(excludeOpNames); - COPY_STRING_FIELD(idxcomment); - COPY_SCALAR_FIELD(indexOid); - COPY_SCALAR_FIELD(oldNode); - COPY_SCALAR_FIELD(oldCreateSubid); - COPY_SCALAR_FIELD(oldFirstRelfilenodeSubid); - COPY_SCALAR_FIELD(unique); - COPY_SCALAR_FIELD(nulls_not_distinct); - COPY_SCALAR_FIELD(primary); - COPY_SCALAR_FIELD(isconstraint); - COPY_SCALAR_FIELD(deferrable); - COPY_SCALAR_FIELD(initdeferred); - COPY_SCALAR_FIELD(transformed); - COPY_SCALAR_FIELD(concurrent); - COPY_SCALAR_FIELD(if_not_exists); - COPY_SCALAR_FIELD(reset_default_tblspc); - - return newnode; -} - -static CreateStatsStmt * -_copyCreateStatsStmt(const CreateStatsStmt *from) -{ - CreateStatsStmt *newnode = makeNode(CreateStatsStmt); - - COPY_NODE_FIELD(defnames); - COPY_NODE_FIELD(stat_types); - COPY_NODE_FIELD(exprs); - COPY_NODE_FIELD(relations); - COPY_STRING_FIELD(stxcomment); - COPY_SCALAR_FIELD(transformed); - COPY_SCALAR_FIELD(if_not_exists); - - return newnode; -} - -static AlterStatsStmt * -_copyAlterStatsStmt(const AlterStatsStmt *from) -{ - AlterStatsStmt *newnode = makeNode(AlterStatsStmt); - - COPY_NODE_FIELD(defnames); - COPY_SCALAR_FIELD(stxstattarget); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static CreateFunctionStmt * -_copyCreateFunctionStmt(const CreateFunctionStmt *from) -{ - CreateFunctionStmt *newnode = makeNode(CreateFunctionStmt); - - COPY_SCALAR_FIELD(is_procedure); - COPY_SCALAR_FIELD(replace); - COPY_NODE_FIELD(funcname); - COPY_NODE_FIELD(parameters); - COPY_NODE_FIELD(returnType); - COPY_NODE_FIELD(options); - COPY_NODE_FIELD(sql_body); - - return newnode; -} - -static FunctionParameter * -_copyFunctionParameter(const FunctionParameter *from) -{ - FunctionParameter *newnode = makeNode(FunctionParameter); - - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(argType); - COPY_SCALAR_FIELD(mode); - COPY_NODE_FIELD(defexpr); - - return newnode; -} - -static AlterFunctionStmt * -_copyAlterFunctionStmt(const AlterFunctionStmt *from) -{ - AlterFunctionStmt *newnode = makeNode(AlterFunctionStmt); - - COPY_SCALAR_FIELD(objtype); - COPY_NODE_FIELD(func); - COPY_NODE_FIELD(actions); - - return newnode; -} - -static DoStmt * -_copyDoStmt(const DoStmt *from) -{ - DoStmt *newnode = makeNode(DoStmt); - - COPY_NODE_FIELD(args); - - return newnode; -} - -static RenameStmt * -_copyRenameStmt(const RenameStmt *from) -{ - RenameStmt *newnode = makeNode(RenameStmt); - - COPY_SCALAR_FIELD(renameType); - COPY_SCALAR_FIELD(relationType); - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(object); - COPY_STRING_FIELD(subname); - COPY_STRING_FIELD(newname); - COPY_SCALAR_FIELD(behavior); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static AlterObjectDependsStmt * -_copyAlterObjectDependsStmt(const AlterObjectDependsStmt *from) -{ - AlterObjectDependsStmt *newnode = makeNode(AlterObjectDependsStmt); - - COPY_SCALAR_FIELD(objectType); - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(object); - COPY_NODE_FIELD(extname); - COPY_SCALAR_FIELD(remove); - - return newnode; -} - -static AlterObjectSchemaStmt * -_copyAlterObjectSchemaStmt(const AlterObjectSchemaStmt *from) -{ - AlterObjectSchemaStmt *newnode = makeNode(AlterObjectSchemaStmt); - - COPY_SCALAR_FIELD(objectType); - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(object); - COPY_STRING_FIELD(newschema); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static AlterOwnerStmt * -_copyAlterOwnerStmt(const AlterOwnerStmt *from) -{ - AlterOwnerStmt *newnode = makeNode(AlterOwnerStmt); - - COPY_SCALAR_FIELD(objectType); - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(object); - COPY_NODE_FIELD(newowner); - - return newnode; -} - -static AlterOperatorStmt * -_copyAlterOperatorStmt(const AlterOperatorStmt *from) -{ - AlterOperatorStmt *newnode = makeNode(AlterOperatorStmt); - - COPY_NODE_FIELD(opername); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterTypeStmt * -_copyAlterTypeStmt(const AlterTypeStmt *from) -{ - AlterTypeStmt *newnode = makeNode(AlterTypeStmt); - - COPY_NODE_FIELD(typeName); - COPY_NODE_FIELD(options); - - return newnode; -} - -static RuleStmt * -_copyRuleStmt(const RuleStmt *from) -{ - RuleStmt *newnode = makeNode(RuleStmt); - - COPY_NODE_FIELD(relation); - COPY_STRING_FIELD(rulename); - COPY_NODE_FIELD(whereClause); - COPY_SCALAR_FIELD(event); - COPY_SCALAR_FIELD(instead); - COPY_NODE_FIELD(actions); - COPY_SCALAR_FIELD(replace); - - return newnode; -} - -static NotifyStmt * -_copyNotifyStmt(const NotifyStmt *from) -{ - NotifyStmt *newnode = makeNode(NotifyStmt); - - COPY_STRING_FIELD(conditionname); - COPY_STRING_FIELD(payload); - - return newnode; -} - -static ListenStmt * -_copyListenStmt(const ListenStmt *from) -{ - ListenStmt *newnode = makeNode(ListenStmt); - - COPY_STRING_FIELD(conditionname); - - return newnode; -} - -static UnlistenStmt * -_copyUnlistenStmt(const UnlistenStmt *from) -{ - UnlistenStmt *newnode = makeNode(UnlistenStmt); - - COPY_STRING_FIELD(conditionname); - - return newnode; -} - -static TransactionStmt * -_copyTransactionStmt(const TransactionStmt *from) -{ - TransactionStmt *newnode = makeNode(TransactionStmt); - - COPY_SCALAR_FIELD(kind); - COPY_NODE_FIELD(options); - COPY_STRING_FIELD(savepoint_name); - COPY_STRING_FIELD(gid); - COPY_SCALAR_FIELD(chain); - - return newnode; -} - -static CompositeTypeStmt * -_copyCompositeTypeStmt(const CompositeTypeStmt *from) -{ - CompositeTypeStmt *newnode = makeNode(CompositeTypeStmt); - - COPY_NODE_FIELD(typevar); - COPY_NODE_FIELD(coldeflist); - - return newnode; -} - -static CreateEnumStmt * -_copyCreateEnumStmt(const CreateEnumStmt *from) -{ - CreateEnumStmt *newnode = makeNode(CreateEnumStmt); - - COPY_NODE_FIELD(typeName); - COPY_NODE_FIELD(vals); - - return newnode; -} - -static CreateRangeStmt * -_copyCreateRangeStmt(const CreateRangeStmt *from) -{ - CreateRangeStmt *newnode = makeNode(CreateRangeStmt); - - COPY_NODE_FIELD(typeName); - COPY_NODE_FIELD(params); - - return newnode; -} - -static AlterEnumStmt * -_copyAlterEnumStmt(const AlterEnumStmt *from) -{ - AlterEnumStmt *newnode = makeNode(AlterEnumStmt); - - COPY_NODE_FIELD(typeName); - COPY_STRING_FIELD(oldVal); - COPY_STRING_FIELD(newVal); - COPY_STRING_FIELD(newValNeighbor); - COPY_SCALAR_FIELD(newValIsAfter); - COPY_SCALAR_FIELD(skipIfNewValExists); - - return newnode; -} - -static ViewStmt * -_copyViewStmt(const ViewStmt *from) -{ - ViewStmt *newnode = makeNode(ViewStmt); - - COPY_NODE_FIELD(view); - COPY_NODE_FIELD(aliases); - COPY_NODE_FIELD(query); - COPY_SCALAR_FIELD(replace); - COPY_NODE_FIELD(options); - COPY_SCALAR_FIELD(withCheckOption); - - return newnode; -} - -static LoadStmt * -_copyLoadStmt(const LoadStmt *from) -{ - LoadStmt *newnode = makeNode(LoadStmt); - - COPY_STRING_FIELD(filename); - - return newnode; -} - -static CreateDomainStmt * -_copyCreateDomainStmt(const CreateDomainStmt *from) -{ - CreateDomainStmt *newnode = makeNode(CreateDomainStmt); - - COPY_NODE_FIELD(domainname); - COPY_NODE_FIELD(typeName); - COPY_NODE_FIELD(collClause); - COPY_NODE_FIELD(constraints); - - return newnode; -} - -static CreateOpClassStmt * -_copyCreateOpClassStmt(const CreateOpClassStmt *from) -{ - CreateOpClassStmt *newnode = makeNode(CreateOpClassStmt); - - COPY_NODE_FIELD(opclassname); - COPY_NODE_FIELD(opfamilyname); - COPY_STRING_FIELD(amname); - COPY_NODE_FIELD(datatype); - COPY_NODE_FIELD(items); - COPY_SCALAR_FIELD(isDefault); - - return newnode; -} - -static CreateOpClassItem * -_copyCreateOpClassItem(const CreateOpClassItem *from) -{ - CreateOpClassItem *newnode = makeNode(CreateOpClassItem); - - COPY_SCALAR_FIELD(itemtype); - COPY_NODE_FIELD(name); - COPY_SCALAR_FIELD(number); - COPY_NODE_FIELD(order_family); - COPY_NODE_FIELD(class_args); - COPY_NODE_FIELD(storedtype); - - return newnode; -} - -static CreateOpFamilyStmt * -_copyCreateOpFamilyStmt(const CreateOpFamilyStmt *from) -{ - CreateOpFamilyStmt *newnode = makeNode(CreateOpFamilyStmt); - - COPY_NODE_FIELD(opfamilyname); - COPY_STRING_FIELD(amname); - - return newnode; -} - -static AlterOpFamilyStmt * -_copyAlterOpFamilyStmt(const AlterOpFamilyStmt *from) -{ - AlterOpFamilyStmt *newnode = makeNode(AlterOpFamilyStmt); - - COPY_NODE_FIELD(opfamilyname); - COPY_STRING_FIELD(amname); - COPY_SCALAR_FIELD(isDrop); - COPY_NODE_FIELD(items); - - return newnode; -} - -static CreatedbStmt * -_copyCreatedbStmt(const CreatedbStmt *from) -{ - CreatedbStmt *newnode = makeNode(CreatedbStmt); - - COPY_STRING_FIELD(dbname); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterDatabaseStmt * -_copyAlterDatabaseStmt(const AlterDatabaseStmt *from) -{ - AlterDatabaseStmt *newnode = makeNode(AlterDatabaseStmt); - - COPY_STRING_FIELD(dbname); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterDatabaseRefreshCollStmt * -_copyAlterDatabaseRefreshCollStmt(const AlterDatabaseRefreshCollStmt *from) -{ - AlterDatabaseRefreshCollStmt *newnode = makeNode(AlterDatabaseRefreshCollStmt); - - COPY_STRING_FIELD(dbname); - - return newnode; -} - -static AlterDatabaseSetStmt * -_copyAlterDatabaseSetStmt(const AlterDatabaseSetStmt *from) -{ - AlterDatabaseSetStmt *newnode = makeNode(AlterDatabaseSetStmt); - - COPY_STRING_FIELD(dbname); - COPY_NODE_FIELD(setstmt); - - return newnode; -} - -static DropdbStmt * -_copyDropdbStmt(const DropdbStmt *from) -{ - DropdbStmt *newnode = makeNode(DropdbStmt); - - COPY_STRING_FIELD(dbname); - COPY_SCALAR_FIELD(missing_ok); - COPY_NODE_FIELD(options); - - return newnode; -} - -static VacuumStmt * -_copyVacuumStmt(const VacuumStmt *from) -{ - VacuumStmt *newnode = makeNode(VacuumStmt); - - COPY_NODE_FIELD(options); - COPY_NODE_FIELD(rels); - COPY_SCALAR_FIELD(is_vacuumcmd); - - return newnode; -} - -static VacuumRelation * -_copyVacuumRelation(const VacuumRelation *from) -{ - VacuumRelation *newnode = makeNode(VacuumRelation); - - COPY_NODE_FIELD(relation); - COPY_SCALAR_FIELD(oid); - COPY_NODE_FIELD(va_cols); - - return newnode; -} - -static ExplainStmt * -_copyExplainStmt(const ExplainStmt *from) -{ - ExplainStmt *newnode = makeNode(ExplainStmt); - - COPY_NODE_FIELD(query); - COPY_NODE_FIELD(options); - - return newnode; -} - -static CreateTableAsStmt * -_copyCreateTableAsStmt(const CreateTableAsStmt *from) -{ - CreateTableAsStmt *newnode = makeNode(CreateTableAsStmt); - - COPY_NODE_FIELD(query); - COPY_NODE_FIELD(into); - COPY_SCALAR_FIELD(objtype); - COPY_SCALAR_FIELD(is_select_into); - COPY_SCALAR_FIELD(if_not_exists); - - return newnode; -} - -static RefreshMatViewStmt * -_copyRefreshMatViewStmt(const RefreshMatViewStmt *from) -{ - RefreshMatViewStmt *newnode = makeNode(RefreshMatViewStmt); - - COPY_SCALAR_FIELD(concurrent); - COPY_SCALAR_FIELD(skipData); - COPY_NODE_FIELD(relation); - - return newnode; -} - -static ReplicaIdentityStmt * -_copyReplicaIdentityStmt(const ReplicaIdentityStmt *from) -{ - ReplicaIdentityStmt *newnode = makeNode(ReplicaIdentityStmt); - - COPY_SCALAR_FIELD(identity_type); - COPY_STRING_FIELD(name); - - return newnode; -} - -static AlterSystemStmt * -_copyAlterSystemStmt(const AlterSystemStmt *from) -{ - AlterSystemStmt *newnode = makeNode(AlterSystemStmt); - - COPY_NODE_FIELD(setstmt); - - return newnode; -} - -static CreateSeqStmt * -_copyCreateSeqStmt(const CreateSeqStmt *from) -{ - CreateSeqStmt *newnode = makeNode(CreateSeqStmt); - - COPY_NODE_FIELD(sequence); - COPY_NODE_FIELD(options); - COPY_SCALAR_FIELD(ownerId); - COPY_SCALAR_FIELD(for_identity); - COPY_SCALAR_FIELD(if_not_exists); - - return newnode; -} - -static AlterSeqStmt * -_copyAlterSeqStmt(const AlterSeqStmt *from) -{ - AlterSeqStmt *newnode = makeNode(AlterSeqStmt); - - COPY_NODE_FIELD(sequence); - COPY_NODE_FIELD(options); - COPY_SCALAR_FIELD(for_identity); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static VariableSetStmt * -_copyVariableSetStmt(const VariableSetStmt *from) -{ - VariableSetStmt *newnode = makeNode(VariableSetStmt); - - COPY_SCALAR_FIELD(kind); - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(args); - COPY_SCALAR_FIELD(is_local); - - return newnode; -} - -static VariableShowStmt * -_copyVariableShowStmt(const VariableShowStmt *from) -{ - VariableShowStmt *newnode = makeNode(VariableShowStmt); - - COPY_STRING_FIELD(name); - - return newnode; -} - -static DiscardStmt * -_copyDiscardStmt(const DiscardStmt *from) -{ - DiscardStmt *newnode = makeNode(DiscardStmt); - - COPY_SCALAR_FIELD(target); - - return newnode; -} - -static CreateTableSpaceStmt * -_copyCreateTableSpaceStmt(const CreateTableSpaceStmt *from) -{ - CreateTableSpaceStmt *newnode = makeNode(CreateTableSpaceStmt); - - COPY_STRING_FIELD(tablespacename); - COPY_NODE_FIELD(owner); - COPY_STRING_FIELD(location); - COPY_NODE_FIELD(options); - - return newnode; -} - -static DropTableSpaceStmt * -_copyDropTableSpaceStmt(const DropTableSpaceStmt *from) -{ - DropTableSpaceStmt *newnode = makeNode(DropTableSpaceStmt); - - COPY_STRING_FIELD(tablespacename); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static AlterTableSpaceOptionsStmt * -_copyAlterTableSpaceOptionsStmt(const AlterTableSpaceOptionsStmt *from) -{ - AlterTableSpaceOptionsStmt *newnode = makeNode(AlterTableSpaceOptionsStmt); - - COPY_STRING_FIELD(tablespacename); - COPY_NODE_FIELD(options); - COPY_SCALAR_FIELD(isReset); - - return newnode; -} - -static AlterTableMoveAllStmt * -_copyAlterTableMoveAllStmt(const AlterTableMoveAllStmt *from) -{ - AlterTableMoveAllStmt *newnode = makeNode(AlterTableMoveAllStmt); - - COPY_STRING_FIELD(orig_tablespacename); - COPY_SCALAR_FIELD(objtype); - COPY_NODE_FIELD(roles); - COPY_STRING_FIELD(new_tablespacename); - COPY_SCALAR_FIELD(nowait); - - return newnode; -} - -static CreateExtensionStmt * -_copyCreateExtensionStmt(const CreateExtensionStmt *from) -{ - CreateExtensionStmt *newnode = makeNode(CreateExtensionStmt); - - COPY_STRING_FIELD(extname); - COPY_SCALAR_FIELD(if_not_exists); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterExtensionStmt * -_copyAlterExtensionStmt(const AlterExtensionStmt *from) -{ - AlterExtensionStmt *newnode = makeNode(AlterExtensionStmt); - - COPY_STRING_FIELD(extname); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterExtensionContentsStmt * -_copyAlterExtensionContentsStmt(const AlterExtensionContentsStmt *from) -{ - AlterExtensionContentsStmt *newnode = makeNode(AlterExtensionContentsStmt); - - COPY_STRING_FIELD(extname); - COPY_SCALAR_FIELD(action); - COPY_SCALAR_FIELD(objtype); - COPY_NODE_FIELD(object); - - return newnode; -} - -static CreateFdwStmt * -_copyCreateFdwStmt(const CreateFdwStmt *from) -{ - CreateFdwStmt *newnode = makeNode(CreateFdwStmt); - - COPY_STRING_FIELD(fdwname); - COPY_NODE_FIELD(func_options); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterFdwStmt * -_copyAlterFdwStmt(const AlterFdwStmt *from) -{ - AlterFdwStmt *newnode = makeNode(AlterFdwStmt); - - COPY_STRING_FIELD(fdwname); - COPY_NODE_FIELD(func_options); - COPY_NODE_FIELD(options); - - return newnode; -} - -static CreateForeignServerStmt * -_copyCreateForeignServerStmt(const CreateForeignServerStmt *from) -{ - CreateForeignServerStmt *newnode = makeNode(CreateForeignServerStmt); - - COPY_STRING_FIELD(servername); - COPY_STRING_FIELD(servertype); - COPY_STRING_FIELD(version); - COPY_STRING_FIELD(fdwname); - COPY_SCALAR_FIELD(if_not_exists); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterForeignServerStmt * -_copyAlterForeignServerStmt(const AlterForeignServerStmt *from) -{ - AlterForeignServerStmt *newnode = makeNode(AlterForeignServerStmt); - - COPY_STRING_FIELD(servername); - COPY_STRING_FIELD(version); - COPY_NODE_FIELD(options); - COPY_SCALAR_FIELD(has_version); - - return newnode; -} - -static CreateUserMappingStmt * -_copyCreateUserMappingStmt(const CreateUserMappingStmt *from) -{ - CreateUserMappingStmt *newnode = makeNode(CreateUserMappingStmt); - - COPY_NODE_FIELD(user); - COPY_STRING_FIELD(servername); - COPY_SCALAR_FIELD(if_not_exists); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterUserMappingStmt * -_copyAlterUserMappingStmt(const AlterUserMappingStmt *from) -{ - AlterUserMappingStmt *newnode = makeNode(AlterUserMappingStmt); - - COPY_NODE_FIELD(user); - COPY_STRING_FIELD(servername); - COPY_NODE_FIELD(options); - - return newnode; -} - -static DropUserMappingStmt * -_copyDropUserMappingStmt(const DropUserMappingStmt *from) -{ - DropUserMappingStmt *newnode = makeNode(DropUserMappingStmt); - - COPY_NODE_FIELD(user); - COPY_STRING_FIELD(servername); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static CreateForeignTableStmt * -_copyCreateForeignTableStmt(const CreateForeignTableStmt *from) -{ - CreateForeignTableStmt *newnode = makeNode(CreateForeignTableStmt); - - CopyCreateStmtFields((const CreateStmt *) from, (CreateStmt *) newnode); - - COPY_STRING_FIELD(servername); - COPY_NODE_FIELD(options); - - return newnode; -} - -static ImportForeignSchemaStmt * -_copyImportForeignSchemaStmt(const ImportForeignSchemaStmt *from) -{ - ImportForeignSchemaStmt *newnode = makeNode(ImportForeignSchemaStmt); - - COPY_STRING_FIELD(server_name); - COPY_STRING_FIELD(remote_schema); - COPY_STRING_FIELD(local_schema); - COPY_SCALAR_FIELD(list_type); - COPY_NODE_FIELD(table_list); - COPY_NODE_FIELD(options); - - return newnode; -} - -static CreateTransformStmt * -_copyCreateTransformStmt(const CreateTransformStmt *from) -{ - CreateTransformStmt *newnode = makeNode(CreateTransformStmt); - - COPY_SCALAR_FIELD(replace); - COPY_NODE_FIELD(type_name); - COPY_STRING_FIELD(lang); - COPY_NODE_FIELD(fromsql); - COPY_NODE_FIELD(tosql); - - return newnode; -} - -static CreateAmStmt * -_copyCreateAmStmt(const CreateAmStmt *from) -{ - CreateAmStmt *newnode = makeNode(CreateAmStmt); - - COPY_STRING_FIELD(amname); - COPY_NODE_FIELD(handler_name); - COPY_SCALAR_FIELD(amtype); - - return newnode; -} - -static CreateTrigStmt * -_copyCreateTrigStmt(const CreateTrigStmt *from) -{ - CreateTrigStmt *newnode = makeNode(CreateTrigStmt); - - COPY_SCALAR_FIELD(replace); - COPY_SCALAR_FIELD(isconstraint); - COPY_STRING_FIELD(trigname); - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(funcname); - COPY_NODE_FIELD(args); - COPY_SCALAR_FIELD(row); - COPY_SCALAR_FIELD(timing); - COPY_SCALAR_FIELD(events); - COPY_NODE_FIELD(columns); - COPY_NODE_FIELD(whenClause); - COPY_NODE_FIELD(transitionRels); - COPY_SCALAR_FIELD(deferrable); - COPY_SCALAR_FIELD(initdeferred); - COPY_NODE_FIELD(constrrel); - - return newnode; -} - -static CreateEventTrigStmt * -_copyCreateEventTrigStmt(const CreateEventTrigStmt *from) -{ - CreateEventTrigStmt *newnode = makeNode(CreateEventTrigStmt); - - COPY_STRING_FIELD(trigname); - COPY_STRING_FIELD(eventname); - COPY_NODE_FIELD(whenclause); - COPY_NODE_FIELD(funcname); - - return newnode; -} - -static AlterEventTrigStmt * -_copyAlterEventTrigStmt(const AlterEventTrigStmt *from) -{ - AlterEventTrigStmt *newnode = makeNode(AlterEventTrigStmt); - - COPY_STRING_FIELD(trigname); - COPY_SCALAR_FIELD(tgenabled); - - return newnode; -} - -static CreatePLangStmt * -_copyCreatePLangStmt(const CreatePLangStmt *from) -{ - CreatePLangStmt *newnode = makeNode(CreatePLangStmt); - - COPY_SCALAR_FIELD(replace); - COPY_STRING_FIELD(plname); - COPY_NODE_FIELD(plhandler); - COPY_NODE_FIELD(plinline); - COPY_NODE_FIELD(plvalidator); - COPY_SCALAR_FIELD(pltrusted); - - return newnode; -} - -static CreateRoleStmt * -_copyCreateRoleStmt(const CreateRoleStmt *from) -{ - CreateRoleStmt *newnode = makeNode(CreateRoleStmt); - - COPY_SCALAR_FIELD(stmt_type); - COPY_STRING_FIELD(role); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterRoleStmt * -_copyAlterRoleStmt(const AlterRoleStmt *from) -{ - AlterRoleStmt *newnode = makeNode(AlterRoleStmt); - - COPY_NODE_FIELD(role); - COPY_NODE_FIELD(options); - COPY_SCALAR_FIELD(action); - - return newnode; -} - -static AlterRoleSetStmt * -_copyAlterRoleSetStmt(const AlterRoleSetStmt *from) -{ - AlterRoleSetStmt *newnode = makeNode(AlterRoleSetStmt); - - COPY_NODE_FIELD(role); - COPY_STRING_FIELD(database); - COPY_NODE_FIELD(setstmt); - - return newnode; -} - -static DropRoleStmt * -_copyDropRoleStmt(const DropRoleStmt *from) -{ - DropRoleStmt *newnode = makeNode(DropRoleStmt); - - COPY_NODE_FIELD(roles); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static LockStmt * -_copyLockStmt(const LockStmt *from) -{ - LockStmt *newnode = makeNode(LockStmt); - - COPY_NODE_FIELD(relations); - COPY_SCALAR_FIELD(mode); - COPY_SCALAR_FIELD(nowait); - - return newnode; -} - -static ConstraintsSetStmt * -_copyConstraintsSetStmt(const ConstraintsSetStmt *from) -{ - ConstraintsSetStmt *newnode = makeNode(ConstraintsSetStmt); - - COPY_NODE_FIELD(constraints); - COPY_SCALAR_FIELD(deferred); - - return newnode; -} - -static ReindexStmt * -_copyReindexStmt(const ReindexStmt *from) -{ - ReindexStmt *newnode = makeNode(ReindexStmt); - - COPY_SCALAR_FIELD(kind); - COPY_NODE_FIELD(relation); - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(params); - - return newnode; -} - -static CreateSchemaStmt * -_copyCreateSchemaStmt(const CreateSchemaStmt *from) -{ - CreateSchemaStmt *newnode = makeNode(CreateSchemaStmt); - - COPY_STRING_FIELD(schemaname); - COPY_NODE_FIELD(authrole); - COPY_NODE_FIELD(schemaElts); - COPY_SCALAR_FIELD(if_not_exists); - - return newnode; -} - -static CreateConversionStmt * -_copyCreateConversionStmt(const CreateConversionStmt *from) -{ - CreateConversionStmt *newnode = makeNode(CreateConversionStmt); - - COPY_NODE_FIELD(conversion_name); - COPY_STRING_FIELD(for_encoding_name); - COPY_STRING_FIELD(to_encoding_name); - COPY_NODE_FIELD(func_name); - COPY_SCALAR_FIELD(def); - - return newnode; -} - -static CreateCastStmt * -_copyCreateCastStmt(const CreateCastStmt *from) -{ - CreateCastStmt *newnode = makeNode(CreateCastStmt); - - COPY_NODE_FIELD(sourcetype); - COPY_NODE_FIELD(targettype); - COPY_NODE_FIELD(func); - COPY_SCALAR_FIELD(context); - COPY_SCALAR_FIELD(inout); - - return newnode; -} - -static PrepareStmt * -_copyPrepareStmt(const PrepareStmt *from) -{ - PrepareStmt *newnode = makeNode(PrepareStmt); - - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(argtypes); - COPY_NODE_FIELD(query); - - return newnode; -} - -static ExecuteStmt * -_copyExecuteStmt(const ExecuteStmt *from) -{ - ExecuteStmt *newnode = makeNode(ExecuteStmt); - - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(params); - - return newnode; -} - -static DeallocateStmt * -_copyDeallocateStmt(const DeallocateStmt *from) -{ - DeallocateStmt *newnode = makeNode(DeallocateStmt); - - COPY_STRING_FIELD(name); - - return newnode; -} - -static DropOwnedStmt * -_copyDropOwnedStmt(const DropOwnedStmt *from) -{ - DropOwnedStmt *newnode = makeNode(DropOwnedStmt); - - COPY_NODE_FIELD(roles); - COPY_SCALAR_FIELD(behavior); - - return newnode; -} - -static ReassignOwnedStmt * -_copyReassignOwnedStmt(const ReassignOwnedStmt *from) -{ - ReassignOwnedStmt *newnode = makeNode(ReassignOwnedStmt); - - COPY_NODE_FIELD(roles); - COPY_NODE_FIELD(newrole); - - return newnode; -} - -static AlterTSDictionaryStmt * -_copyAlterTSDictionaryStmt(const AlterTSDictionaryStmt *from) -{ - AlterTSDictionaryStmt *newnode = makeNode(AlterTSDictionaryStmt); - - COPY_NODE_FIELD(dictname); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterTSConfigurationStmt * -_copyAlterTSConfigurationStmt(const AlterTSConfigurationStmt *from) -{ - AlterTSConfigurationStmt *newnode = makeNode(AlterTSConfigurationStmt); - - COPY_SCALAR_FIELD(kind); - COPY_NODE_FIELD(cfgname); - COPY_NODE_FIELD(tokentype); - COPY_NODE_FIELD(dicts); - COPY_SCALAR_FIELD(override); - COPY_SCALAR_FIELD(replace); - COPY_SCALAR_FIELD(missing_ok); - - return newnode; -} - -static CreatePolicyStmt * -_copyCreatePolicyStmt(const CreatePolicyStmt *from) -{ - CreatePolicyStmt *newnode = makeNode(CreatePolicyStmt); - - COPY_STRING_FIELD(policy_name); - COPY_NODE_FIELD(table); - COPY_STRING_FIELD(cmd_name); - COPY_SCALAR_FIELD(permissive); - COPY_NODE_FIELD(roles); - COPY_NODE_FIELD(qual); - COPY_NODE_FIELD(with_check); - - return newnode; -} - -static AlterPolicyStmt * -_copyAlterPolicyStmt(const AlterPolicyStmt *from) -{ - AlterPolicyStmt *newnode = makeNode(AlterPolicyStmt); - - COPY_STRING_FIELD(policy_name); - COPY_NODE_FIELD(table); - COPY_NODE_FIELD(roles); - COPY_NODE_FIELD(qual); - COPY_NODE_FIELD(with_check); - - return newnode; -} - -static PartitionElem * -_copyPartitionElem(const PartitionElem *from) -{ - PartitionElem *newnode = makeNode(PartitionElem); - - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(expr); - COPY_NODE_FIELD(collation); - COPY_NODE_FIELD(opclass); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static PartitionSpec * -_copyPartitionSpec(const PartitionSpec *from) -{ - PartitionSpec *newnode = makeNode(PartitionSpec); - - COPY_STRING_FIELD(strategy); - COPY_NODE_FIELD(partParams); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static PartitionBoundSpec * -_copyPartitionBoundSpec(const PartitionBoundSpec *from) -{ - PartitionBoundSpec *newnode = makeNode(PartitionBoundSpec); - - COPY_SCALAR_FIELD(strategy); - COPY_SCALAR_FIELD(is_default); - COPY_SCALAR_FIELD(modulus); - COPY_SCALAR_FIELD(remainder); - COPY_NODE_FIELD(listdatums); - COPY_NODE_FIELD(lowerdatums); - COPY_NODE_FIELD(upperdatums); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static PartitionRangeDatum * -_copyPartitionRangeDatum(const PartitionRangeDatum *from) -{ - PartitionRangeDatum *newnode = makeNode(PartitionRangeDatum); - - COPY_SCALAR_FIELD(kind); - COPY_NODE_FIELD(value); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static PartitionCmd * -_copyPartitionCmd(const PartitionCmd *from) -{ - PartitionCmd *newnode = makeNode(PartitionCmd); - - COPY_NODE_FIELD(name); - COPY_NODE_FIELD(bound); - COPY_SCALAR_FIELD(concurrent); - - return newnode; -} - -static PublicationObjSpec * -_copyPublicationObject(const PublicationObjSpec *from) -{ - PublicationObjSpec *newnode = makeNode(PublicationObjSpec); - - COPY_SCALAR_FIELD(pubobjtype); - COPY_STRING_FIELD(name); - COPY_NODE_FIELD(pubtable); - COPY_LOCATION_FIELD(location); - - return newnode; -} - -static PublicationTable * -_copyPublicationTable(const PublicationTable *from) -{ - PublicationTable *newnode = makeNode(PublicationTable); - - COPY_NODE_FIELD(relation); - COPY_NODE_FIELD(whereClause); - COPY_NODE_FIELD(columns); - - return newnode; -} - -static CreatePublicationStmt * -_copyCreatePublicationStmt(const CreatePublicationStmt *from) -{ - CreatePublicationStmt *newnode = makeNode(CreatePublicationStmt); - - COPY_STRING_FIELD(pubname); - COPY_NODE_FIELD(options); - COPY_NODE_FIELD(pubobjects); - COPY_SCALAR_FIELD(for_all_tables); - - return newnode; -} - -static AlterPublicationStmt * -_copyAlterPublicationStmt(const AlterPublicationStmt *from) -{ - AlterPublicationStmt *newnode = makeNode(AlterPublicationStmt); - - COPY_STRING_FIELD(pubname); - COPY_NODE_FIELD(options); - COPY_NODE_FIELD(pubobjects); - COPY_SCALAR_FIELD(for_all_tables); - COPY_SCALAR_FIELD(action); - - return newnode; -} - -static CreateSubscriptionStmt * -_copyCreateSubscriptionStmt(const CreateSubscriptionStmt *from) -{ - CreateSubscriptionStmt *newnode = makeNode(CreateSubscriptionStmt); - - COPY_STRING_FIELD(subname); - COPY_STRING_FIELD(conninfo); - COPY_NODE_FIELD(publication); - COPY_NODE_FIELD(options); - - return newnode; -} - -static AlterSubscriptionStmt * -_copyAlterSubscriptionStmt(const AlterSubscriptionStmt *from) -{ - AlterSubscriptionStmt *newnode = makeNode(AlterSubscriptionStmt); - - COPY_SCALAR_FIELD(kind); - COPY_STRING_FIELD(subname); - COPY_STRING_FIELD(conninfo); - COPY_NODE_FIELD(publication); - COPY_NODE_FIELD(options); - - return newnode; -} - -static DropSubscriptionStmt * -_copyDropSubscriptionStmt(const DropSubscriptionStmt *from) -{ - DropSubscriptionStmt *newnode = makeNode(DropSubscriptionStmt); - - COPY_STRING_FIELD(subname); - COPY_SCALAR_FIELD(missing_ok); - COPY_SCALAR_FIELD(behavior); - - return newnode; -} - -/* **************************************************************** - * extensible.h copy functions - * **************************************************************** - */ -static ExtensibleNode * -_copyExtensibleNode(const ExtensibleNode *from) -{ - ExtensibleNode *newnode; - const ExtensibleNodeMethods *methods; - - methods = GetExtensibleNodeMethods(from->extnodename, false); - newnode = (ExtensibleNode *) newNode(methods->node_size, - T_ExtensibleNode); - COPY_STRING_FIELD(extnodename); - - /* copy the private fields */ - methods->nodeCopy(newnode, from); - - return newnode; -} - -/* **************************************************************** - * value.h copy functions - * **************************************************************** - */ -static Integer * -_copyInteger(const Integer *from) -{ - Integer *newnode = makeNode(Integer); - - COPY_SCALAR_FIELD(ival); - - return newnode; -} - -static Float * -_copyFloat(const Float *from) -{ - Float *newnode = makeNode(Float); - - COPY_STRING_FIELD(fval); - - return newnode; -} - -static Boolean * -_copyBoolean(const Boolean *from) -{ - Boolean *newnode = makeNode(Boolean); - - COPY_SCALAR_FIELD(boolval); - - return newnode; -} - -static String * -_copyString(const String *from) -{ - String *newnode = makeNode(String); - - COPY_STRING_FIELD(sval); - - return newnode; -} - -static BitString * -_copyBitString(const BitString *from) -{ - BitString *newnode = makeNode(BitString); - - COPY_STRING_FIELD(bsval); - - return newnode; -} - - -static ForeignKeyCacheInfo * -_copyForeignKeyCacheInfo(const ForeignKeyCacheInfo *from) -{ - ForeignKeyCacheInfo *newnode = makeNode(ForeignKeyCacheInfo); - - COPY_SCALAR_FIELD(conoid); - COPY_SCALAR_FIELD(conrelid); - COPY_SCALAR_FIELD(confrelid); - COPY_SCALAR_FIELD(nkeys); - COPY_ARRAY_FIELD(conkey); - COPY_ARRAY_FIELD(confkey); - COPY_ARRAY_FIELD(conpfeqop); - - return newnode; -} - -/* - * copyObjectImpl -- implementation of copyObject(); see nodes/nodes.h - * - * Create a copy of a Node tree or list. This is a "deep" copy: all - * substructure is copied too, recursively. - */ -void * -copyObjectImpl(const void *from) -{ - void *retval; - - if (from == NULL) - return NULL; - - /* Guard against stack overflow due to overly complex expressions */ - check_stack_depth(); - - switch (nodeTag(from)) - { - /* - * PLAN NODES - */ - case T_PlannedStmt: - retval = _copyPlannedStmt(from); - break; - case T_Plan: - retval = _copyPlan(from); - break; - case T_Result: - retval = _copyResult(from); - break; - case T_ProjectSet: - retval = _copyProjectSet(from); - break; - case T_ModifyTable: - retval = _copyModifyTable(from); - break; - case T_Append: - retval = _copyAppend(from); - break; - case T_MergeAppend: - retval = _copyMergeAppend(from); - break; - case T_RecursiveUnion: - retval = _copyRecursiveUnion(from); - break; - case T_BitmapAnd: - retval = _copyBitmapAnd(from); - break; - case T_BitmapOr: - retval = _copyBitmapOr(from); - break; - case T_Scan: - retval = _copyScan(from); - break; - case T_Gather: - retval = _copyGather(from); - break; - case T_GatherMerge: - retval = _copyGatherMerge(from); - break; - case T_SeqScan: - retval = _copySeqScan(from); - break; - case T_SampleScan: - retval = _copySampleScan(from); - break; - case T_IndexScan: - retval = _copyIndexScan(from); - break; - case T_IndexOnlyScan: - retval = _copyIndexOnlyScan(from); - break; - case T_BitmapIndexScan: - retval = _copyBitmapIndexScan(from); - break; - case T_BitmapHeapScan: - retval = _copyBitmapHeapScan(from); - break; - case T_TidScan: - retval = _copyTidScan(from); - break; - case T_TidRangeScan: - retval = _copyTidRangeScan(from); - break; - case T_SubqueryScan: - retval = _copySubqueryScan(from); - break; - case T_FunctionScan: - retval = _copyFunctionScan(from); - break; - case T_TableFuncScan: - retval = _copyTableFuncScan(from); - break; - case T_ValuesScan: - retval = _copyValuesScan(from); - break; - case T_CteScan: - retval = _copyCteScan(from); - break; - case T_NamedTuplestoreScan: - retval = _copyNamedTuplestoreScan(from); - break; - case T_WorkTableScan: - retval = _copyWorkTableScan(from); - break; - case T_ForeignScan: - retval = _copyForeignScan(from); - break; - case T_CustomScan: - retval = _copyCustomScan(from); - break; - case T_Join: - retval = _copyJoin(from); - break; - case T_NestLoop: - retval = _copyNestLoop(from); - break; - case T_MergeJoin: - retval = _copyMergeJoin(from); - break; - case T_HashJoin: - retval = _copyHashJoin(from); - break; - case T_Material: - retval = _copyMaterial(from); - break; - case T_Memoize: - retval = _copyMemoize(from); - break; - case T_Sort: - retval = _copySort(from); - break; - case T_IncrementalSort: - retval = _copyIncrementalSort(from); - break; - case T_Group: - retval = _copyGroup(from); - break; - case T_Agg: - retval = _copyAgg(from); - break; - case T_WindowAgg: - retval = _copyWindowAgg(from); - break; - case T_Unique: - retval = _copyUnique(from); - break; - case T_Hash: - retval = _copyHash(from); - break; - case T_SetOp: - retval = _copySetOp(from); - break; - case T_LockRows: - retval = _copyLockRows(from); - break; - case T_Limit: - retval = _copyLimit(from); - break; - case T_NestLoopParam: - retval = _copyNestLoopParam(from); - break; - case T_PlanRowMark: - retval = _copyPlanRowMark(from); - break; - case T_PartitionPruneInfo: - retval = _copyPartitionPruneInfo(from); - break; - case T_PartitionedRelPruneInfo: - retval = _copyPartitionedRelPruneInfo(from); - break; - case T_PartitionPruneStepOp: - retval = _copyPartitionPruneStepOp(from); - break; - case T_PartitionPruneStepCombine: - retval = _copyPartitionPruneStepCombine(from); - break; - case T_PlanInvalItem: - retval = _copyPlanInvalItem(from); - break; - - /* - * PRIMITIVE NODES - */ - case T_Alias: - retval = _copyAlias(from); - break; - case T_RangeVar: - retval = _copyRangeVar(from); - break; - case T_TableFunc: - retval = _copyTableFunc(from); - break; - case T_IntoClause: - retval = _copyIntoClause(from); - break; - case T_Var: - retval = _copyVar(from); - break; - case T_Const: - retval = _copyConst(from); - break; - case T_Param: - retval = _copyParam(from); - break; - case T_Aggref: - retval = _copyAggref(from); - break; - case T_GroupingFunc: - retval = _copyGroupingFunc(from); - break; - case T_WindowFunc: - retval = _copyWindowFunc(from); - break; - case T_SubscriptingRef: - retval = _copySubscriptingRef(from); - break; - case T_FuncExpr: - retval = _copyFuncExpr(from); - break; - case T_NamedArgExpr: - retval = _copyNamedArgExpr(from); - break; - case T_OpExpr: - retval = _copyOpExpr(from); - break; - case T_DistinctExpr: - retval = _copyDistinctExpr(from); - break; - case T_NullIfExpr: - retval = _copyNullIfExpr(from); - break; - case T_ScalarArrayOpExpr: - retval = _copyScalarArrayOpExpr(from); - break; - case T_BoolExpr: - retval = _copyBoolExpr(from); - break; - case T_SubLink: - retval = _copySubLink(from); - break; - case T_SubPlan: - retval = _copySubPlan(from); - break; - case T_AlternativeSubPlan: - retval = _copyAlternativeSubPlan(from); - break; - case T_FieldSelect: - retval = _copyFieldSelect(from); - break; - case T_FieldStore: - retval = _copyFieldStore(from); - break; - case T_RelabelType: - retval = _copyRelabelType(from); - break; - case T_CoerceViaIO: - retval = _copyCoerceViaIO(from); - break; - case T_ArrayCoerceExpr: - retval = _copyArrayCoerceExpr(from); - break; - case T_ConvertRowtypeExpr: - retval = _copyConvertRowtypeExpr(from); - break; - case T_CollateExpr: - retval = _copyCollateExpr(from); - break; - case T_CaseExpr: - retval = _copyCaseExpr(from); - break; - case T_CaseWhen: - retval = _copyCaseWhen(from); - break; - case T_CaseTestExpr: - retval = _copyCaseTestExpr(from); - break; - case T_ArrayExpr: - retval = _copyArrayExpr(from); - break; - case T_RowExpr: - retval = _copyRowExpr(from); - break; - case T_RowCompareExpr: - retval = _copyRowCompareExpr(from); - break; - case T_CoalesceExpr: - retval = _copyCoalesceExpr(from); - break; - case T_MinMaxExpr: - retval = _copyMinMaxExpr(from); - break; - case T_SQLValueFunction: - retval = _copySQLValueFunction(from); - break; - case T_XmlExpr: - retval = _copyXmlExpr(from); - break; - case T_NullTest: - retval = _copyNullTest(from); - break; - case T_BooleanTest: - retval = _copyBooleanTest(from); - break; - case T_CoerceToDomain: - retval = _copyCoerceToDomain(from); - break; - case T_CoerceToDomainValue: - retval = _copyCoerceToDomainValue(from); - break; - case T_SetToDefault: - retval = _copySetToDefault(from); - break; - case T_CurrentOfExpr: - retval = _copyCurrentOfExpr(from); - break; - case T_NextValueExpr: - retval = _copyNextValueExpr(from); - break; - case T_InferenceElem: - retval = _copyInferenceElem(from); - break; - case T_TargetEntry: - retval = _copyTargetEntry(from); - break; - case T_RangeTblRef: - retval = _copyRangeTblRef(from); - break; - case T_JoinExpr: - retval = _copyJoinExpr(from); - break; - case T_FromExpr: - retval = _copyFromExpr(from); - break; - case T_OnConflictExpr: - retval = _copyOnConflictExpr(from); - break; - - /* - * RELATION NODES - */ - case T_PathKey: - retval = _copyPathKey(from); - break; - case T_RestrictInfo: - retval = _copyRestrictInfo(from); - break; - case T_PlaceHolderVar: - retval = _copyPlaceHolderVar(from); - break; - case T_SpecialJoinInfo: - retval = _copySpecialJoinInfo(from); - break; - case T_AppendRelInfo: - retval = _copyAppendRelInfo(from); - break; - case T_PlaceHolderInfo: - retval = _copyPlaceHolderInfo(from); - break; - - /* - * VALUE NODES - */ - case T_Integer: - retval = _copyInteger(from); - break; - case T_Float: - retval = _copyFloat(from); - break; - case T_Boolean: - retval = _copyBoolean(from); - break; - case T_String: - retval = _copyString(from); - break; - case T_BitString: - retval = _copyBitString(from); - break; - - /* - * LIST NODES - */ - case T_List: - retval = list_copy_deep(from); - break; + case T_List: + retval = list_copy_deep(from); + break; /* - * Lists of integers and OIDs don't need to be deep-copied, so we - * perform a shallow copy via list_copy() + * Lists of integers, OIDs and XIDs don't need to be deep-copied, + * so we perform a shallow copy via list_copy() */ case T_IntList: case T_OidList: + case T_XidList: retval = list_copy(from); break; - /* - * EXTENSIBLE NODES - */ - case T_ExtensibleNode: - retval = _copyExtensibleNode(from); - break; - - /* - * PARSE NODES - */ - case T_Query: - retval = _copyQuery(from); - break; - case T_RawStmt: - retval = _copyRawStmt(from); - break; - case T_InsertStmt: - retval = _copyInsertStmt(from); - break; - case T_DeleteStmt: - retval = _copyDeleteStmt(from); - break; - case T_UpdateStmt: - retval = _copyUpdateStmt(from); - break; - case T_MergeStmt: - retval = _copyMergeStmt(from); - break; - case T_SelectStmt: - retval = _copySelectStmt(from); - break; - case T_SetOperationStmt: - retval = _copySetOperationStmt(from); - break; - case T_ReturnStmt: - retval = _copyReturnStmt(from); - break; - case T_PLAssignStmt: - retval = _copyPLAssignStmt(from); - break; - case T_AlterTableStmt: - retval = _copyAlterTableStmt(from); - break; - case T_AlterTableCmd: - retval = _copyAlterTableCmd(from); - break; - case T_AlterCollationStmt: - retval = _copyAlterCollationStmt(from); - break; - case T_AlterDomainStmt: - retval = _copyAlterDomainStmt(from); - break; - case T_GrantStmt: - retval = _copyGrantStmt(from); - break; - case T_GrantRoleStmt: - retval = _copyGrantRoleStmt(from); - break; - case T_AlterDefaultPrivilegesStmt: - retval = _copyAlterDefaultPrivilegesStmt(from); - break; - case T_DeclareCursorStmt: - retval = _copyDeclareCursorStmt(from); - break; - case T_ClosePortalStmt: - retval = _copyClosePortalStmt(from); - break; - case T_CallStmt: - retval = _copyCallStmt(from); - break; - case T_ClusterStmt: - retval = _copyClusterStmt(from); - break; - case T_CopyStmt: - retval = _copyCopyStmt(from); - break; - case T_CreateStmt: - retval = _copyCreateStmt(from); - break; - case T_TableLikeClause: - retval = _copyTableLikeClause(from); - break; - case T_DefineStmt: - retval = _copyDefineStmt(from); - break; - case T_DropStmt: - retval = _copyDropStmt(from); - break; - case T_TruncateStmt: - retval = _copyTruncateStmt(from); - break; - case T_CommentStmt: - retval = _copyCommentStmt(from); - break; - case T_SecLabelStmt: - retval = _copySecLabelStmt(from); - break; - case T_FetchStmt: - retval = _copyFetchStmt(from); - break; - case T_IndexStmt: - retval = _copyIndexStmt(from); - break; - case T_CreateStatsStmt: - retval = _copyCreateStatsStmt(from); - break; - case T_AlterStatsStmt: - retval = _copyAlterStatsStmt(from); - break; - case T_CreateFunctionStmt: - retval = _copyCreateFunctionStmt(from); - break; - case T_FunctionParameter: - retval = _copyFunctionParameter(from); - break; - case T_AlterFunctionStmt: - retval = _copyAlterFunctionStmt(from); - break; - case T_DoStmt: - retval = _copyDoStmt(from); - break; - case T_RenameStmt: - retval = _copyRenameStmt(from); - break; - case T_AlterObjectDependsStmt: - retval = _copyAlterObjectDependsStmt(from); - break; - case T_AlterObjectSchemaStmt: - retval = _copyAlterObjectSchemaStmt(from); - break; - case T_AlterOwnerStmt: - retval = _copyAlterOwnerStmt(from); - break; - case T_AlterOperatorStmt: - retval = _copyAlterOperatorStmt(from); - break; - case T_AlterTypeStmt: - retval = _copyAlterTypeStmt(from); - break; - case T_RuleStmt: - retval = _copyRuleStmt(from); - break; - case T_NotifyStmt: - retval = _copyNotifyStmt(from); - break; - case T_ListenStmt: - retval = _copyListenStmt(from); - break; - case T_UnlistenStmt: - retval = _copyUnlistenStmt(from); - break; - case T_TransactionStmt: - retval = _copyTransactionStmt(from); - break; - case T_CompositeTypeStmt: - retval = _copyCompositeTypeStmt(from); - break; - case T_CreateEnumStmt: - retval = _copyCreateEnumStmt(from); - break; - case T_CreateRangeStmt: - retval = _copyCreateRangeStmt(from); - break; - case T_AlterEnumStmt: - retval = _copyAlterEnumStmt(from); - break; - case T_ViewStmt: - retval = _copyViewStmt(from); - break; - case T_LoadStmt: - retval = _copyLoadStmt(from); - break; - case T_CreateDomainStmt: - retval = _copyCreateDomainStmt(from); - break; - case T_CreateOpClassStmt: - retval = _copyCreateOpClassStmt(from); - break; - case T_CreateOpClassItem: - retval = _copyCreateOpClassItem(from); - break; - case T_CreateOpFamilyStmt: - retval = _copyCreateOpFamilyStmt(from); - break; - case T_AlterOpFamilyStmt: - retval = _copyAlterOpFamilyStmt(from); - break; - case T_CreatedbStmt: - retval = _copyCreatedbStmt(from); - break; - case T_AlterDatabaseStmt: - retval = _copyAlterDatabaseStmt(from); - break; - case T_AlterDatabaseRefreshCollStmt: - retval = _copyAlterDatabaseRefreshCollStmt(from); - break; - case T_AlterDatabaseSetStmt: - retval = _copyAlterDatabaseSetStmt(from); - break; - case T_DropdbStmt: - retval = _copyDropdbStmt(from); - break; - case T_VacuumStmt: - retval = _copyVacuumStmt(from); - break; - case T_VacuumRelation: - retval = _copyVacuumRelation(from); - break; - case T_ExplainStmt: - retval = _copyExplainStmt(from); - break; - case T_CreateTableAsStmt: - retval = _copyCreateTableAsStmt(from); - break; - case T_RefreshMatViewStmt: - retval = _copyRefreshMatViewStmt(from); - break; - case T_ReplicaIdentityStmt: - retval = _copyReplicaIdentityStmt(from); - break; - case T_AlterSystemStmt: - retval = _copyAlterSystemStmt(from); - break; - case T_CreateSeqStmt: - retval = _copyCreateSeqStmt(from); - break; - case T_AlterSeqStmt: - retval = _copyAlterSeqStmt(from); - break; - case T_VariableSetStmt: - retval = _copyVariableSetStmt(from); - break; - case T_VariableShowStmt: - retval = _copyVariableShowStmt(from); - break; - case T_DiscardStmt: - retval = _copyDiscardStmt(from); - break; - case T_CreateTableSpaceStmt: - retval = _copyCreateTableSpaceStmt(from); - break; - case T_DropTableSpaceStmt: - retval = _copyDropTableSpaceStmt(from); - break; - case T_AlterTableSpaceOptionsStmt: - retval = _copyAlterTableSpaceOptionsStmt(from); - break; - case T_AlterTableMoveAllStmt: - retval = _copyAlterTableMoveAllStmt(from); - break; - case T_CreateExtensionStmt: - retval = _copyCreateExtensionStmt(from); - break; - case T_AlterExtensionStmt: - retval = _copyAlterExtensionStmt(from); - break; - case T_AlterExtensionContentsStmt: - retval = _copyAlterExtensionContentsStmt(from); - break; - case T_CreateFdwStmt: - retval = _copyCreateFdwStmt(from); - break; - case T_AlterFdwStmt: - retval = _copyAlterFdwStmt(from); - break; - case T_CreateForeignServerStmt: - retval = _copyCreateForeignServerStmt(from); - break; - case T_AlterForeignServerStmt: - retval = _copyAlterForeignServerStmt(from); - break; - case T_CreateUserMappingStmt: - retval = _copyCreateUserMappingStmt(from); - break; - case T_AlterUserMappingStmt: - retval = _copyAlterUserMappingStmt(from); - break; - case T_DropUserMappingStmt: - retval = _copyDropUserMappingStmt(from); - break; - case T_CreateForeignTableStmt: - retval = _copyCreateForeignTableStmt(from); - break; - case T_ImportForeignSchemaStmt: - retval = _copyImportForeignSchemaStmt(from); - break; - case T_CreateTransformStmt: - retval = _copyCreateTransformStmt(from); - break; - case T_CreateAmStmt: - retval = _copyCreateAmStmt(from); - break; - case T_CreateTrigStmt: - retval = _copyCreateTrigStmt(from); - break; - case T_CreateEventTrigStmt: - retval = _copyCreateEventTrigStmt(from); - break; - case T_AlterEventTrigStmt: - retval = _copyAlterEventTrigStmt(from); - break; - case T_CreatePLangStmt: - retval = _copyCreatePLangStmt(from); - break; - case T_CreateRoleStmt: - retval = _copyCreateRoleStmt(from); - break; - case T_AlterRoleStmt: - retval = _copyAlterRoleStmt(from); - break; - case T_AlterRoleSetStmt: - retval = _copyAlterRoleSetStmt(from); - break; - case T_DropRoleStmt: - retval = _copyDropRoleStmt(from); - break; - case T_LockStmt: - retval = _copyLockStmt(from); - break; - case T_ConstraintsSetStmt: - retval = _copyConstraintsSetStmt(from); - break; - case T_ReindexStmt: - retval = _copyReindexStmt(from); - break; - case T_CheckPointStmt: - retval = (void *) makeNode(CheckPointStmt); - break; - case T_CreateSchemaStmt: - retval = _copyCreateSchemaStmt(from); - break; - case T_CreateConversionStmt: - retval = _copyCreateConversionStmt(from); - break; - case T_CreateCastStmt: - retval = _copyCreateCastStmt(from); - break; - case T_PrepareStmt: - retval = _copyPrepareStmt(from); - break; - case T_ExecuteStmt: - retval = _copyExecuteStmt(from); - break; - case T_DeallocateStmt: - retval = _copyDeallocateStmt(from); - break; - case T_DropOwnedStmt: - retval = _copyDropOwnedStmt(from); - break; - case T_ReassignOwnedStmt: - retval = _copyReassignOwnedStmt(from); - break; - case T_AlterTSDictionaryStmt: - retval = _copyAlterTSDictionaryStmt(from); - break; - case T_AlterTSConfigurationStmt: - retval = _copyAlterTSConfigurationStmt(from); - break; - case T_CreatePolicyStmt: - retval = _copyCreatePolicyStmt(from); - break; - case T_AlterPolicyStmt: - retval = _copyAlterPolicyStmt(from); - break; - case T_CreatePublicationStmt: - retval = _copyCreatePublicationStmt(from); - break; - case T_AlterPublicationStmt: - retval = _copyAlterPublicationStmt(from); - break; - case T_CreateSubscriptionStmt: - retval = _copyCreateSubscriptionStmt(from); - break; - case T_AlterSubscriptionStmt: - retval = _copyAlterSubscriptionStmt(from); - break; - case T_DropSubscriptionStmt: - retval = _copyDropSubscriptionStmt(from); - break; - case T_A_Expr: - retval = _copyA_Expr(from); - break; - case T_ColumnRef: - retval = _copyColumnRef(from); - break; - case T_ParamRef: - retval = _copyParamRef(from); - break; - case T_A_Const: - retval = _copyA_Const(from); - break; - case T_FuncCall: - retval = _copyFuncCall(from); - break; - case T_A_Star: - retval = _copyA_Star(from); - break; - case T_A_Indices: - retval = _copyA_Indices(from); - break; - case T_A_Indirection: - retval = _copyA_Indirection(from); - break; - case T_A_ArrayExpr: - retval = _copyA_ArrayExpr(from); - break; - case T_ResTarget: - retval = _copyResTarget(from); - break; - case T_MultiAssignRef: - retval = _copyMultiAssignRef(from); - break; - case T_TypeCast: - retval = _copyTypeCast(from); - break; - case T_CollateClause: - retval = _copyCollateClause(from); - break; - case T_SortBy: - retval = _copySortBy(from); - break; - case T_WindowDef: - retval = _copyWindowDef(from); - break; - case T_RangeSubselect: - retval = _copyRangeSubselect(from); - break; - case T_RangeFunction: - retval = _copyRangeFunction(from); - break; - case T_RangeTableSample: - retval = _copyRangeTableSample(from); - break; - case T_RangeTableFunc: - retval = _copyRangeTableFunc(from); - break; - case T_RangeTableFuncCol: - retval = _copyRangeTableFuncCol(from); - break; - case T_TypeName: - retval = _copyTypeName(from); - break; - case T_IndexElem: - retval = _copyIndexElem(from); - break; - case T_StatsElem: - retval = _copyStatsElem(from); - break; - case T_ColumnDef: - retval = _copyColumnDef(from); - break; - case T_Constraint: - retval = _copyConstraint(from); - break; - case T_DefElem: - retval = _copyDefElem(from); - break; - case T_LockingClause: - retval = _copyLockingClause(from); - break; - case T_RangeTblEntry: - retval = _copyRangeTblEntry(from); - break; - case T_RangeTblFunction: - retval = _copyRangeTblFunction(from); - break; - case T_TableSampleClause: - retval = _copyTableSampleClause(from); - break; - case T_WithCheckOption: - retval = _copyWithCheckOption(from); - break; - case T_SortGroupClause: - retval = _copySortGroupClause(from); - break; - case T_GroupingSet: - retval = _copyGroupingSet(from); - break; - case T_WindowClause: - retval = _copyWindowClause(from); - break; - case T_RowMarkClause: - retval = _copyRowMarkClause(from); - break; - case T_WithClause: - retval = _copyWithClause(from); - break; - case T_InferClause: - retval = _copyInferClause(from); - break; - case T_OnConflictClause: - retval = _copyOnConflictClause(from); - break; - case T_CTESearchClause: - retval = _copyCTESearchClause(from); - break; - case T_CTECycleClause: - retval = _copyCTECycleClause(from); - break; - case T_CommonTableExpr: - retval = _copyCommonTableExpr(from); - break; - case T_MergeWhenClause: - retval = _copyMergeWhenClause(from); - break; - case T_MergeAction: - retval = _copyMergeAction(from); - break; - case T_ObjectWithArgs: - retval = _copyObjectWithArgs(from); - break; - case T_AccessPriv: - retval = _copyAccessPriv(from); - break; - case T_XmlSerialize: - retval = _copyXmlSerialize(from); - break; - case T_RoleSpec: - retval = _copyRoleSpec(from); - break; - case T_TriggerTransition: - retval = _copyTriggerTransition(from); - break; - case T_PartitionElem: - retval = _copyPartitionElem(from); - break; - case T_PartitionSpec: - retval = _copyPartitionSpec(from); - break; - case T_PartitionBoundSpec: - retval = _copyPartitionBoundSpec(from); - break; - case T_PartitionRangeDatum: - retval = _copyPartitionRangeDatum(from); - break; - case T_PartitionCmd: - retval = _copyPartitionCmd(from); - break; - case T_PublicationObjSpec: - retval = _copyPublicationObject(from); - break; - case T_PublicationTable: - retval = _copyPublicationTable(from); - break; - - /* - * MISCELLANEOUS NODES - */ - case T_ForeignKeyCacheInfo: - retval = _copyForeignKeyCacheInfo(from); - break; - default: elog(ERROR, "unrecognized node type: %d", (int) nodeTag(from)); retval = 0; /* keep compiler quiet */ diff --git a/parser/src_backend_nodes_equalfuncs.c b/parser/src_backend_nodes_equalfuncs.c index f387ad12..e8a10f98 100644 --- a/parser/src_backend_nodes_equalfuncs.c +++ b/parser/src_backend_nodes_equalfuncs.c @@ -1,247 +1,11 @@ /*-------------------------------------------------------------------- * Symbols referenced in this file: * - equal - * - _equalAlias - * - _equalRangeVar - * - _equalTableFunc - * - _equalIntoClause - * - _equalVar * - _equalConst - * - _equalParam - * - _equalAggref - * - _equalGroupingFunc - * - _equalWindowFunc - * - _equalSubscriptingRef - * - _equalFuncExpr - * - _equalNamedArgExpr - * - _equalOpExpr - * - _equalDistinctExpr - * - _equalNullIfExpr - * - _equalScalarArrayOpExpr - * - _equalBoolExpr - * - _equalSubLink - * - _equalSubPlan - * - _equalAlternativeSubPlan - * - _equalFieldSelect - * - _equalFieldStore - * - _equalRelabelType - * - _equalCoerceViaIO - * - _equalArrayCoerceExpr - * - _equalConvertRowtypeExpr - * - _equalCollateExpr - * - _equalCaseExpr - * - _equalCaseWhen - * - _equalCaseTestExpr - * - _equalArrayExpr - * - _equalRowExpr - * - _equalRowCompareExpr - * - _equalCoalesceExpr - * - _equalMinMaxExpr - * - _equalSQLValueFunction - * - _equalXmlExpr - * - _equalNullTest - * - _equalBooleanTest - * - _equalCoerceToDomain - * - _equalCoerceToDomainValue - * - _equalSetToDefault - * - _equalCurrentOfExpr - * - _equalNextValueExpr - * - _equalInferenceElem - * - _equalTargetEntry - * - _equalRangeTblRef - * - _equalFromExpr - * - _equalOnConflictExpr - * - _equalJoinExpr - * - _equalPathKey - * - _equalRestrictInfo - * - _equalPlaceHolderVar - * - _equalSpecialJoinInfo - * - _equalAppendRelInfo - * - _equalPlaceHolderInfo - * - _equalList - * - _equalInteger - * - _equalFloat - * - _equalBoolean - * - _equalString - * - _equalBitString - * - _equalExtensibleNode - * - _equalQuery - * - _equalRawStmt - * - _equalInsertStmt - * - _equalDeleteStmt - * - _equalUpdateStmt - * - _equalMergeStmt - * - _equalSelectStmt - * - _equalSetOperationStmt - * - _equalReturnStmt - * - _equalPLAssignStmt - * - _equalAlterTableStmt - * - _equalAlterTableCmd - * - _equalAlterCollationStmt - * - _equalAlterDomainStmt - * - _equalGrantStmt - * - _equalGrantRoleStmt - * - _equalAlterDefaultPrivilegesStmt - * - _equalDeclareCursorStmt - * - _equalClosePortalStmt - * - _equalCallStmt - * - _equalClusterStmt - * - _equalCopyStmt - * - _equalCreateStmt - * - _equalTableLikeClause - * - _equalDefineStmt - * - _equalDropStmt - * - _equalTruncateStmt - * - _equalCommentStmt - * - _equalSecLabelStmt - * - _equalFetchStmt - * - _equalIndexStmt - * - _equalCreateStatsStmt - * - _equalAlterStatsStmt - * - _equalCreateFunctionStmt - * - _equalFunctionParameter - * - _equalAlterFunctionStmt - * - _equalDoStmt - * - _equalRenameStmt - * - _equalAlterObjectDependsStmt - * - _equalAlterObjectSchemaStmt - * - _equalAlterOwnerStmt - * - _equalAlterOperatorStmt - * - _equalAlterTypeStmt - * - _equalRuleStmt - * - _equalNotifyStmt - * - _equalListenStmt - * - _equalUnlistenStmt - * - _equalTransactionStmt - * - _equalCompositeTypeStmt - * - _equalCreateEnumStmt - * - _equalCreateRangeStmt - * - _equalAlterEnumStmt - * - _equalViewStmt - * - _equalLoadStmt - * - _equalCreateDomainStmt - * - _equalCreateOpClassStmt - * - _equalCreateOpClassItem - * - _equalCreateOpFamilyStmt - * - _equalAlterOpFamilyStmt - * - _equalCreatedbStmt - * - _equalAlterDatabaseStmt - * - _equalAlterDatabaseRefreshCollStmt - * - _equalAlterDatabaseSetStmt - * - _equalDropdbStmt - * - _equalVacuumStmt - * - _equalVacuumRelation - * - _equalExplainStmt - * - _equalCreateTableAsStmt - * - _equalRefreshMatViewStmt - * - _equalReplicaIdentityStmt - * - _equalAlterSystemStmt - * - _equalCreateSeqStmt - * - _equalAlterSeqStmt - * - _equalVariableSetStmt - * - _equalVariableShowStmt - * - _equalDiscardStmt - * - _equalCreateTableSpaceStmt - * - _equalDropTableSpaceStmt - * - _equalAlterTableSpaceOptionsStmt - * - _equalAlterTableMoveAllStmt - * - _equalCreateExtensionStmt - * - _equalAlterExtensionStmt - * - _equalAlterExtensionContentsStmt - * - _equalCreateFdwStmt - * - _equalAlterFdwStmt - * - _equalCreateForeignServerStmt - * - _equalAlterForeignServerStmt - * - _equalCreateUserMappingStmt - * - _equalAlterUserMappingStmt - * - _equalDropUserMappingStmt - * - _equalCreateForeignTableStmt - * - _equalImportForeignSchemaStmt - * - _equalCreateTransformStmt - * - _equalCreateAmStmt - * - _equalCreateTrigStmt - * - _equalCreateEventTrigStmt - * - _equalAlterEventTrigStmt - * - _equalCreatePLangStmt - * - _equalCreateRoleStmt - * - _equalAlterRoleStmt - * - _equalAlterRoleSetStmt - * - _equalDropRoleStmt - * - _equalLockStmt - * - _equalConstraintsSetStmt - * - _equalReindexStmt - * - _equalCreateSchemaStmt - * - _equalCreateConversionStmt - * - _equalCreateCastStmt - * - _equalPrepareStmt - * - _equalExecuteStmt - * - _equalDeallocateStmt - * - _equalDropOwnedStmt - * - _equalReassignOwnedStmt - * - _equalAlterTSDictionaryStmt - * - _equalAlterTSConfigurationStmt - * - _equalCreatePolicyStmt - * - _equalAlterPolicyStmt - * - _equalCreatePublicationStmt - * - _equalAlterPublicationStmt - * - _equalCreateSubscriptionStmt - * - _equalAlterSubscriptionStmt - * - _equalDropSubscriptionStmt - * - _equalA_Expr - * - _equalColumnRef - * - _equalParamRef * - _equalA_Const - * - _equalFuncCall - * - _equalA_Star - * - _equalA_Indices - * - _equalA_Indirection - * - _equalA_ArrayExpr - * - _equalResTarget - * - _equalMultiAssignRef - * - _equalTypeCast - * - _equalCollateClause - * - _equalSortBy - * - _equalWindowDef - * - _equalRangeSubselect - * - _equalRangeFunction - * - _equalRangeTableSample - * - _equalRangeTableFunc - * - _equalRangeTableFuncCol - * - _equalTypeName - * - _equalIndexElem - * - _equalStatsElem - * - _equalColumnDef - * - _equalConstraint - * - _equalDefElem - * - _equalLockingClause - * - _equalRangeTblEntry - * - _equalRangeTblFunction - * - _equalTableSampleClause - * - _equalWithCheckOption - * - _equalSortGroupClause - * - _equalGroupingSet - * - _equalWindowClause - * - _equalRowMarkClause - * - _equalWithClause - * - _equalInferClause - * - _equalOnConflictClause - * - _equalCTESearchClause - * - _equalCTECycleClause - * - _equalCommonTableExpr - * - _equalMergeWhenClause - * - _equalMergeAction - * - _equalObjectWithArgs - * - _equalAccessPriv - * - _equalXmlSerialize - * - _equalRoleSpec - * - _equalTriggerTransition - * - _equalPartitionElem - * - _equalPartitionSpec - * - _equalPartitionBoundSpec - * - _equalPartitionRangeDatum - * - _equalPartitionCmd - * - _equalPublicationObject - * - _equalPublicationTable + * - _equalBitmapset + * - _equalExtensibleNode + * - _equalList *-------------------------------------------------------------------- */ @@ -250,22 +14,12 @@ * equalfuncs.c * Equality functions to compare node trees. * - * NOTE: we currently support comparing all node types found in parse - * trees. We do not support comparing executor state trees; there - * is no need for that, and no point in maintaining all the code that - * would be needed. We also do not support comparing Path trees, mainly - * because the circular linkages between RelOptInfo and Path nodes can't - * be handled easily in a simple depth-first traversal. - * - * Currently, in fact, equal() doesn't know how to compare Plan trees - * either. This might need to be fixed someday. - * * NOTE: it is intentional that parse location fields (in nodes that have * one) are not compared. This is because we want, for example, a variable * "x" to be considered equal() to another reference to "x" in the query. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -277,8 +31,6 @@ #include "postgres.h" #include "miscadmin.h" -#include "nodes/extensible.h" -#include "nodes/pathnodes.h" #include "utils/datum.h" @@ -344,95 +96,13 @@ ((void) 0) -/* - * Stuff from primnodes.h - */ - -static bool -_equalAlias(const Alias *a, const Alias *b) -{ - COMPARE_STRING_FIELD(aliasname); - COMPARE_NODE_FIELD(colnames); - - return true; -} - -static bool -_equalRangeVar(const RangeVar *a, const RangeVar *b) -{ - COMPARE_STRING_FIELD(catalogname); - COMPARE_STRING_FIELD(schemaname); - COMPARE_STRING_FIELD(relname); - COMPARE_SCALAR_FIELD(inh); - COMPARE_SCALAR_FIELD(relpersistence); - COMPARE_NODE_FIELD(alias); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalTableFunc(const TableFunc *a, const TableFunc *b) -{ - COMPARE_NODE_FIELD(ns_uris); - COMPARE_NODE_FIELD(ns_names); - COMPARE_NODE_FIELD(docexpr); - COMPARE_NODE_FIELD(rowexpr); - COMPARE_NODE_FIELD(colnames); - COMPARE_NODE_FIELD(coltypes); - COMPARE_NODE_FIELD(coltypmods); - COMPARE_NODE_FIELD(colcollations); - COMPARE_NODE_FIELD(colexprs); - COMPARE_NODE_FIELD(coldefexprs); - COMPARE_BITMAPSET_FIELD(notnulls); - COMPARE_SCALAR_FIELD(ordinalitycol); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalIntoClause(const IntoClause *a, const IntoClause *b) -{ - COMPARE_NODE_FIELD(rel); - COMPARE_NODE_FIELD(colNames); - COMPARE_STRING_FIELD(accessMethod); - COMPARE_NODE_FIELD(options); - COMPARE_SCALAR_FIELD(onCommit); - COMPARE_STRING_FIELD(tableSpaceName); - COMPARE_NODE_FIELD(viewQuery); - COMPARE_SCALAR_FIELD(skipData); +#include "equalfuncs.funcs.c" - return true; -} /* - * We don't need an _equalExpr because Expr is an abstract supertype which - * should never actually get instantiated. Also, since it has no common - * fields except NodeTag, there's no need for a helper routine to factor - * out comparing the common fields... + * Support functions for nodes with custom_copy_equal attribute */ -static bool -_equalVar(const Var *a, const Var *b) -{ - COMPARE_SCALAR_FIELD(varno); - COMPARE_SCALAR_FIELD(varattno); - COMPARE_SCALAR_FIELD(vartype); - COMPARE_SCALAR_FIELD(vartypmod); - COMPARE_SCALAR_FIELD(varcollid); - COMPARE_SCALAR_FIELD(varlevelsup); - - /* - * varnosyn/varattnosyn are intentionally ignored here, because Vars with - * different syntactic identifiers are semantically the same as long as - * their varno/varattno match. - */ - COMPARE_LOCATION_FIELD(location); - - return true; -} - static bool _equalConst(const Const *a, const Const *b) { @@ -455,3788 +125,145 @@ _equalConst(const Const *a, const Const *b) } static bool -_equalParam(const Param *a, const Param *b) -{ - COMPARE_SCALAR_FIELD(paramkind); - COMPARE_SCALAR_FIELD(paramid); - COMPARE_SCALAR_FIELD(paramtype); - COMPARE_SCALAR_FIELD(paramtypmod); - COMPARE_SCALAR_FIELD(paramcollid); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalAggref(const Aggref *a, const Aggref *b) -{ - COMPARE_SCALAR_FIELD(aggfnoid); - COMPARE_SCALAR_FIELD(aggtype); - COMPARE_SCALAR_FIELD(aggcollid); - COMPARE_SCALAR_FIELD(inputcollid); - /* ignore aggtranstype since it might not be set yet */ - COMPARE_NODE_FIELD(aggargtypes); - COMPARE_NODE_FIELD(aggdirectargs); - COMPARE_NODE_FIELD(args); - COMPARE_NODE_FIELD(aggorder); - COMPARE_NODE_FIELD(aggdistinct); - COMPARE_NODE_FIELD(aggfilter); - COMPARE_SCALAR_FIELD(aggstar); - COMPARE_SCALAR_FIELD(aggvariadic); - COMPARE_SCALAR_FIELD(aggkind); - COMPARE_SCALAR_FIELD(agglevelsup); - COMPARE_SCALAR_FIELD(aggsplit); - COMPARE_SCALAR_FIELD(aggno); - COMPARE_SCALAR_FIELD(aggtransno); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalGroupingFunc(const GroupingFunc *a, const GroupingFunc *b) +_equalExtensibleNode(const ExtensibleNode *a, const ExtensibleNode *b) { - COMPARE_NODE_FIELD(args); - - /* - * We must not compare the refs or cols field - */ - - COMPARE_SCALAR_FIELD(agglevelsup); - COMPARE_LOCATION_FIELD(location); - - return true; -} + const ExtensibleNodeMethods *methods; -static bool -_equalWindowFunc(const WindowFunc *a, const WindowFunc *b) -{ - COMPARE_SCALAR_FIELD(winfnoid); - COMPARE_SCALAR_FIELD(wintype); - COMPARE_SCALAR_FIELD(wincollid); - COMPARE_SCALAR_FIELD(inputcollid); - COMPARE_NODE_FIELD(args); - COMPARE_NODE_FIELD(aggfilter); - COMPARE_SCALAR_FIELD(winref); - COMPARE_SCALAR_FIELD(winstar); - COMPARE_SCALAR_FIELD(winagg); - COMPARE_LOCATION_FIELD(location); + COMPARE_STRING_FIELD(extnodename); - return true; -} + /* At this point, we know extnodename is the same for both nodes. */ + methods = GetExtensibleNodeMethods(a->extnodename, false); -static bool -_equalSubscriptingRef(const SubscriptingRef *a, const SubscriptingRef *b) -{ - COMPARE_SCALAR_FIELD(refcontainertype); - COMPARE_SCALAR_FIELD(refelemtype); - COMPARE_SCALAR_FIELD(refrestype); - COMPARE_SCALAR_FIELD(reftypmod); - COMPARE_SCALAR_FIELD(refcollid); - COMPARE_NODE_FIELD(refupperindexpr); - COMPARE_NODE_FIELD(reflowerindexpr); - COMPARE_NODE_FIELD(refexpr); - COMPARE_NODE_FIELD(refassgnexpr); + /* compare the private fields */ + if (!methods->nodeEqual(a, b)) + return false; return true; } static bool -_equalFuncExpr(const FuncExpr *a, const FuncExpr *b) +_equalA_Const(const A_Const *a, const A_Const *b) { - COMPARE_SCALAR_FIELD(funcid); - COMPARE_SCALAR_FIELD(funcresulttype); - COMPARE_SCALAR_FIELD(funcretset); - COMPARE_SCALAR_FIELD(funcvariadic); - COMPARE_COERCIONFORM_FIELD(funcformat); - COMPARE_SCALAR_FIELD(funccollid); - COMPARE_SCALAR_FIELD(inputcollid); - COMPARE_NODE_FIELD(args); + COMPARE_SCALAR_FIELD(isnull); + /* Hack for in-line val field. Also val is not valid if isnull is true */ + if (!a->isnull && + !equal(&a->val, &b->val)) + return false; COMPARE_LOCATION_FIELD(location); return true; } static bool -_equalNamedArgExpr(const NamedArgExpr *a, const NamedArgExpr *b) +_equalBitmapset(const Bitmapset *a, const Bitmapset *b) { - COMPARE_NODE_FIELD(arg); - COMPARE_STRING_FIELD(name); - COMPARE_SCALAR_FIELD(argnumber); - COMPARE_LOCATION_FIELD(location); - - return true; + return bms_equal(a, b); } +/* + * Lists are handled specially + */ static bool -_equalOpExpr(const OpExpr *a, const OpExpr *b) +_equalList(const List *a, const List *b) { - COMPARE_SCALAR_FIELD(opno); + const ListCell *item_a; + const ListCell *item_b; /* - * Special-case opfuncid: it is allowable for it to differ if one node - * contains zero and the other doesn't. This just means that the one node - * isn't as far along in the parse/plan pipeline and hasn't had the - * opfuncid cache filled yet. + * Try to reject by simple scalar checks before grovelling through all the + * list elements... */ - if (a->opfuncid != b->opfuncid && - a->opfuncid != 0 && - b->opfuncid != 0) - return false; - - COMPARE_SCALAR_FIELD(opresulttype); - COMPARE_SCALAR_FIELD(opretset); - COMPARE_SCALAR_FIELD(opcollid); - COMPARE_SCALAR_FIELD(inputcollid); - COMPARE_NODE_FIELD(args); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalDistinctExpr(const DistinctExpr *a, const DistinctExpr *b) -{ - COMPARE_SCALAR_FIELD(opno); + COMPARE_SCALAR_FIELD(type); + COMPARE_SCALAR_FIELD(length); /* - * Special-case opfuncid: it is allowable for it to differ if one node - * contains zero and the other doesn't. This just means that the one node - * isn't as far along in the parse/plan pipeline and hasn't had the - * opfuncid cache filled yet. + * We place the switch outside the loop for the sake of efficiency; this + * may not be worth doing... */ - if (a->opfuncid != b->opfuncid && - a->opfuncid != 0 && - b->opfuncid != 0) - return false; - - COMPARE_SCALAR_FIELD(opresulttype); - COMPARE_SCALAR_FIELD(opretset); - COMPARE_SCALAR_FIELD(opcollid); - COMPARE_SCALAR_FIELD(inputcollid); - COMPARE_NODE_FIELD(args); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalNullIfExpr(const NullIfExpr *a, const NullIfExpr *b) -{ - COMPARE_SCALAR_FIELD(opno); + switch (a->type) + { + case T_List: + forboth(item_a, a, item_b, b) + { + if (!equal(lfirst(item_a), lfirst(item_b))) + return false; + } + break; + case T_IntList: + forboth(item_a, a, item_b, b) + { + if (lfirst_int(item_a) != lfirst_int(item_b)) + return false; + } + break; + case T_OidList: + forboth(item_a, a, item_b, b) + { + if (lfirst_oid(item_a) != lfirst_oid(item_b)) + return false; + } + break; + case T_XidList: + forboth(item_a, a, item_b, b) + { + if (lfirst_xid(item_a) != lfirst_xid(item_b)) + return false; + } + break; + default: + elog(ERROR, "unrecognized list node type: %d", + (int) a->type); + return false; /* keep compiler quiet */ + } /* - * Special-case opfuncid: it is allowable for it to differ if one node - * contains zero and the other doesn't. This just means that the one node - * isn't as far along in the parse/plan pipeline and hasn't had the - * opfuncid cache filled yet. + * If we got here, we should have run out of elements of both lists */ - if (a->opfuncid != b->opfuncid && - a->opfuncid != 0 && - b->opfuncid != 0) - return false; - - COMPARE_SCALAR_FIELD(opresulttype); - COMPARE_SCALAR_FIELD(opretset); - COMPARE_SCALAR_FIELD(opcollid); - COMPARE_SCALAR_FIELD(inputcollid); - COMPARE_NODE_FIELD(args); - COMPARE_LOCATION_FIELD(location); + Assert(item_a == NULL); + Assert(item_b == NULL); return true; } -static bool -_equalScalarArrayOpExpr(const ScalarArrayOpExpr *a, const ScalarArrayOpExpr *b) + +/* + * equal + * returns whether two nodes are equal + */ +bool +equal(const void *a, const void *b) { - COMPARE_SCALAR_FIELD(opno); + bool retval; + + if (a == b) + return true; /* - * Special-case opfuncid: it is allowable for it to differ if one node - * contains zero and the other doesn't. This just means that the one node - * isn't as far along in the parse/plan pipeline and hasn't had the - * opfuncid cache filled yet. + * note that a!=b, so only one of them can be NULL */ - if (a->opfuncid != b->opfuncid && - a->opfuncid != 0 && - b->opfuncid != 0) - return false; - - /* As above, hashfuncid may differ too */ - if (a->hashfuncid != b->hashfuncid && - a->hashfuncid != 0 && - b->hashfuncid != 0) + if (a == NULL || b == NULL) return false; - /* Likewise for the negfuncid */ - if (a->negfuncid != b->negfuncid && - a->negfuncid != 0 && - b->negfuncid != 0) + /* + * are they the same type of nodes? + */ + if (nodeTag(a) != nodeTag(b)) return false; - COMPARE_SCALAR_FIELD(useOr); - COMPARE_SCALAR_FIELD(inputcollid); - COMPARE_NODE_FIELD(args); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalBoolExpr(const BoolExpr *a, const BoolExpr *b) -{ - COMPARE_SCALAR_FIELD(boolop); - COMPARE_NODE_FIELD(args); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalSubLink(const SubLink *a, const SubLink *b) -{ - COMPARE_SCALAR_FIELD(subLinkType); - COMPARE_SCALAR_FIELD(subLinkId); - COMPARE_NODE_FIELD(testexpr); - COMPARE_NODE_FIELD(operName); - COMPARE_NODE_FIELD(subselect); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalSubPlan(const SubPlan *a, const SubPlan *b) -{ - COMPARE_SCALAR_FIELD(subLinkType); - COMPARE_NODE_FIELD(testexpr); - COMPARE_NODE_FIELD(paramIds); - COMPARE_SCALAR_FIELD(plan_id); - COMPARE_STRING_FIELD(plan_name); - COMPARE_SCALAR_FIELD(firstColType); - COMPARE_SCALAR_FIELD(firstColTypmod); - COMPARE_SCALAR_FIELD(firstColCollation); - COMPARE_SCALAR_FIELD(useHashTable); - COMPARE_SCALAR_FIELD(unknownEqFalse); - COMPARE_SCALAR_FIELD(parallel_safe); - COMPARE_NODE_FIELD(setParam); - COMPARE_NODE_FIELD(parParam); - COMPARE_NODE_FIELD(args); - COMPARE_SCALAR_FIELD(startup_cost); - COMPARE_SCALAR_FIELD(per_call_cost); - - return true; -} - -static bool -_equalAlternativeSubPlan(const AlternativeSubPlan *a, const AlternativeSubPlan *b) -{ - COMPARE_NODE_FIELD(subplans); - - return true; -} - -static bool -_equalFieldSelect(const FieldSelect *a, const FieldSelect *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_SCALAR_FIELD(fieldnum); - COMPARE_SCALAR_FIELD(resulttype); - COMPARE_SCALAR_FIELD(resulttypmod); - COMPARE_SCALAR_FIELD(resultcollid); - - return true; -} - -static bool -_equalFieldStore(const FieldStore *a, const FieldStore *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_NODE_FIELD(newvals); - COMPARE_NODE_FIELD(fieldnums); - COMPARE_SCALAR_FIELD(resulttype); - - return true; -} - -static bool -_equalRelabelType(const RelabelType *a, const RelabelType *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_SCALAR_FIELD(resulttype); - COMPARE_SCALAR_FIELD(resulttypmod); - COMPARE_SCALAR_FIELD(resultcollid); - COMPARE_COERCIONFORM_FIELD(relabelformat); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCoerceViaIO(const CoerceViaIO *a, const CoerceViaIO *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_SCALAR_FIELD(resulttype); - COMPARE_SCALAR_FIELD(resultcollid); - COMPARE_COERCIONFORM_FIELD(coerceformat); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalArrayCoerceExpr(const ArrayCoerceExpr *a, const ArrayCoerceExpr *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_NODE_FIELD(elemexpr); - COMPARE_SCALAR_FIELD(resulttype); - COMPARE_SCALAR_FIELD(resulttypmod); - COMPARE_SCALAR_FIELD(resultcollid); - COMPARE_COERCIONFORM_FIELD(coerceformat); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalConvertRowtypeExpr(const ConvertRowtypeExpr *a, const ConvertRowtypeExpr *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_SCALAR_FIELD(resulttype); - COMPARE_COERCIONFORM_FIELD(convertformat); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCollateExpr(const CollateExpr *a, const CollateExpr *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_SCALAR_FIELD(collOid); - COMPARE_LOCATION_FIELD(location); + /* Guard against stack overflow due to overly complex expressions */ + check_stack_depth(); - return true; -} - -static bool -_equalCaseExpr(const CaseExpr *a, const CaseExpr *b) -{ - COMPARE_SCALAR_FIELD(casetype); - COMPARE_SCALAR_FIELD(casecollid); - COMPARE_NODE_FIELD(arg); - COMPARE_NODE_FIELD(args); - COMPARE_NODE_FIELD(defresult); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCaseWhen(const CaseWhen *a, const CaseWhen *b) -{ - COMPARE_NODE_FIELD(expr); - COMPARE_NODE_FIELD(result); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCaseTestExpr(const CaseTestExpr *a, const CaseTestExpr *b) -{ - COMPARE_SCALAR_FIELD(typeId); - COMPARE_SCALAR_FIELD(typeMod); - COMPARE_SCALAR_FIELD(collation); - - return true; -} - -static bool -_equalArrayExpr(const ArrayExpr *a, const ArrayExpr *b) -{ - COMPARE_SCALAR_FIELD(array_typeid); - COMPARE_SCALAR_FIELD(array_collid); - COMPARE_SCALAR_FIELD(element_typeid); - COMPARE_NODE_FIELD(elements); - COMPARE_SCALAR_FIELD(multidims); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalRowExpr(const RowExpr *a, const RowExpr *b) -{ - COMPARE_NODE_FIELD(args); - COMPARE_SCALAR_FIELD(row_typeid); - COMPARE_COERCIONFORM_FIELD(row_format); - COMPARE_NODE_FIELD(colnames); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalRowCompareExpr(const RowCompareExpr *a, const RowCompareExpr *b) -{ - COMPARE_SCALAR_FIELD(rctype); - COMPARE_NODE_FIELD(opnos); - COMPARE_NODE_FIELD(opfamilies); - COMPARE_NODE_FIELD(inputcollids); - COMPARE_NODE_FIELD(largs); - COMPARE_NODE_FIELD(rargs); - - return true; -} - -static bool -_equalCoalesceExpr(const CoalesceExpr *a, const CoalesceExpr *b) -{ - COMPARE_SCALAR_FIELD(coalescetype); - COMPARE_SCALAR_FIELD(coalescecollid); - COMPARE_NODE_FIELD(args); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalMinMaxExpr(const MinMaxExpr *a, const MinMaxExpr *b) -{ - COMPARE_SCALAR_FIELD(minmaxtype); - COMPARE_SCALAR_FIELD(minmaxcollid); - COMPARE_SCALAR_FIELD(inputcollid); - COMPARE_SCALAR_FIELD(op); - COMPARE_NODE_FIELD(args); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalSQLValueFunction(const SQLValueFunction *a, const SQLValueFunction *b) -{ - COMPARE_SCALAR_FIELD(op); - COMPARE_SCALAR_FIELD(type); - COMPARE_SCALAR_FIELD(typmod); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalXmlExpr(const XmlExpr *a, const XmlExpr *b) -{ - COMPARE_SCALAR_FIELD(op); - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(named_args); - COMPARE_NODE_FIELD(arg_names); - COMPARE_NODE_FIELD(args); - COMPARE_SCALAR_FIELD(xmloption); - COMPARE_SCALAR_FIELD(type); - COMPARE_SCALAR_FIELD(typmod); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalNullTest(const NullTest *a, const NullTest *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_SCALAR_FIELD(nulltesttype); - COMPARE_SCALAR_FIELD(argisrow); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalBooleanTest(const BooleanTest *a, const BooleanTest *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_SCALAR_FIELD(booltesttype); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCoerceToDomain(const CoerceToDomain *a, const CoerceToDomain *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_SCALAR_FIELD(resulttype); - COMPARE_SCALAR_FIELD(resulttypmod); - COMPARE_SCALAR_FIELD(resultcollid); - COMPARE_COERCIONFORM_FIELD(coercionformat); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCoerceToDomainValue(const CoerceToDomainValue *a, const CoerceToDomainValue *b) -{ - COMPARE_SCALAR_FIELD(typeId); - COMPARE_SCALAR_FIELD(typeMod); - COMPARE_SCALAR_FIELD(collation); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalSetToDefault(const SetToDefault *a, const SetToDefault *b) -{ - COMPARE_SCALAR_FIELD(typeId); - COMPARE_SCALAR_FIELD(typeMod); - COMPARE_SCALAR_FIELD(collation); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCurrentOfExpr(const CurrentOfExpr *a, const CurrentOfExpr *b) -{ - COMPARE_SCALAR_FIELD(cvarno); - COMPARE_STRING_FIELD(cursor_name); - COMPARE_SCALAR_FIELD(cursor_param); - - return true; -} - -static bool -_equalNextValueExpr(const NextValueExpr *a, const NextValueExpr *b) -{ - COMPARE_SCALAR_FIELD(seqid); - COMPARE_SCALAR_FIELD(typeId); - - return true; -} - -static bool -_equalInferenceElem(const InferenceElem *a, const InferenceElem *b) -{ - COMPARE_NODE_FIELD(expr); - COMPARE_SCALAR_FIELD(infercollid); - COMPARE_SCALAR_FIELD(inferopclass); - - return true; -} - -static bool -_equalTargetEntry(const TargetEntry *a, const TargetEntry *b) -{ - COMPARE_NODE_FIELD(expr); - COMPARE_SCALAR_FIELD(resno); - COMPARE_STRING_FIELD(resname); - COMPARE_SCALAR_FIELD(ressortgroupref); - COMPARE_SCALAR_FIELD(resorigtbl); - COMPARE_SCALAR_FIELD(resorigcol); - COMPARE_SCALAR_FIELD(resjunk); - - return true; -} - -static bool -_equalRangeTblRef(const RangeTblRef *a, const RangeTblRef *b) -{ - COMPARE_SCALAR_FIELD(rtindex); - - return true; -} - -static bool -_equalJoinExpr(const JoinExpr *a, const JoinExpr *b) -{ - COMPARE_SCALAR_FIELD(jointype); - COMPARE_SCALAR_FIELD(isNatural); - COMPARE_NODE_FIELD(larg); - COMPARE_NODE_FIELD(rarg); - COMPARE_NODE_FIELD(usingClause); - COMPARE_NODE_FIELD(join_using_alias); - COMPARE_NODE_FIELD(quals); - COMPARE_NODE_FIELD(alias); - COMPARE_SCALAR_FIELD(rtindex); - - return true; -} - -static bool -_equalFromExpr(const FromExpr *a, const FromExpr *b) -{ - COMPARE_NODE_FIELD(fromlist); - COMPARE_NODE_FIELD(quals); - - return true; -} - -static bool -_equalOnConflictExpr(const OnConflictExpr *a, const OnConflictExpr *b) -{ - COMPARE_SCALAR_FIELD(action); - COMPARE_NODE_FIELD(arbiterElems); - COMPARE_NODE_FIELD(arbiterWhere); - COMPARE_SCALAR_FIELD(constraint); - COMPARE_NODE_FIELD(onConflictSet); - COMPARE_NODE_FIELD(onConflictWhere); - COMPARE_SCALAR_FIELD(exclRelIndex); - COMPARE_NODE_FIELD(exclRelTlist); - - return true; -} - -/* - * Stuff from pathnodes.h - */ - -static bool -_equalPathKey(const PathKey *a, const PathKey *b) -{ - /* We assume pointer equality is sufficient to compare the eclasses */ - COMPARE_SCALAR_FIELD(pk_eclass); - COMPARE_SCALAR_FIELD(pk_opfamily); - COMPARE_SCALAR_FIELD(pk_strategy); - COMPARE_SCALAR_FIELD(pk_nulls_first); - - return true; -} - -static bool -_equalRestrictInfo(const RestrictInfo *a, const RestrictInfo *b) -{ - COMPARE_NODE_FIELD(clause); - COMPARE_SCALAR_FIELD(is_pushed_down); - COMPARE_SCALAR_FIELD(outerjoin_delayed); - COMPARE_SCALAR_FIELD(security_level); - COMPARE_BITMAPSET_FIELD(required_relids); - COMPARE_BITMAPSET_FIELD(outer_relids); - COMPARE_BITMAPSET_FIELD(nullable_relids); - - /* - * We ignore all the remaining fields, since they may not be set yet, and - * should be derivable from the clause anyway. - */ - - return true; -} - -static bool -_equalPlaceHolderVar(const PlaceHolderVar *a, const PlaceHolderVar *b) -{ - /* - * We intentionally do not compare phexpr. Two PlaceHolderVars with the - * same ID and levelsup should be considered equal even if the contained - * expressions have managed to mutate to different states. This will - * happen during final plan construction when there are nested PHVs, since - * the inner PHV will get replaced by a Param in some copies of the outer - * PHV. Another way in which it can happen is that initplan sublinks - * could get replaced by differently-numbered Params when sublink folding - * is done. (The end result of such a situation would be some - * unreferenced initplans, which is annoying but not really a problem.) On - * the same reasoning, there is no need to examine phrels. - * - * COMPARE_NODE_FIELD(phexpr); - * - * COMPARE_BITMAPSET_FIELD(phrels); - */ - COMPARE_SCALAR_FIELD(phid); - COMPARE_SCALAR_FIELD(phlevelsup); - - return true; -} - -static bool -_equalSpecialJoinInfo(const SpecialJoinInfo *a, const SpecialJoinInfo *b) -{ - COMPARE_BITMAPSET_FIELD(min_lefthand); - COMPARE_BITMAPSET_FIELD(min_righthand); - COMPARE_BITMAPSET_FIELD(syn_lefthand); - COMPARE_BITMAPSET_FIELD(syn_righthand); - COMPARE_SCALAR_FIELD(jointype); - COMPARE_SCALAR_FIELD(lhs_strict); - COMPARE_SCALAR_FIELD(delay_upper_joins); - COMPARE_SCALAR_FIELD(semi_can_btree); - COMPARE_SCALAR_FIELD(semi_can_hash); - COMPARE_NODE_FIELD(semi_operators); - COMPARE_NODE_FIELD(semi_rhs_exprs); - - return true; -} - -static bool -_equalAppendRelInfo(const AppendRelInfo *a, const AppendRelInfo *b) -{ - COMPARE_SCALAR_FIELD(parent_relid); - COMPARE_SCALAR_FIELD(child_relid); - COMPARE_SCALAR_FIELD(parent_reltype); - COMPARE_SCALAR_FIELD(child_reltype); - COMPARE_NODE_FIELD(translated_vars); - COMPARE_SCALAR_FIELD(num_child_cols); - COMPARE_POINTER_FIELD(parent_colnos, a->num_child_cols * sizeof(AttrNumber)); - COMPARE_SCALAR_FIELD(parent_reloid); - - return true; -} - -static bool -_equalPlaceHolderInfo(const PlaceHolderInfo *a, const PlaceHolderInfo *b) -{ - COMPARE_SCALAR_FIELD(phid); - COMPARE_NODE_FIELD(ph_var); /* should be redundant */ - COMPARE_BITMAPSET_FIELD(ph_eval_at); - COMPARE_BITMAPSET_FIELD(ph_lateral); - COMPARE_BITMAPSET_FIELD(ph_needed); - COMPARE_SCALAR_FIELD(ph_width); - - return true; -} - -/* - * Stuff from extensible.h - */ -static bool -_equalExtensibleNode(const ExtensibleNode *a, const ExtensibleNode *b) -{ - const ExtensibleNodeMethods *methods; - - COMPARE_STRING_FIELD(extnodename); - - /* At this point, we know extnodename is the same for both nodes. */ - methods = GetExtensibleNodeMethods(a->extnodename, false); - - /* compare the private fields */ - if (!methods->nodeEqual(a, b)) - return false; - - return true; -} - -/* - * Stuff from parsenodes.h - */ - -static bool -_equalQuery(const Query *a, const Query *b) -{ - COMPARE_SCALAR_FIELD(commandType); - COMPARE_SCALAR_FIELD(querySource); - /* we intentionally ignore queryId, since it might not be set */ - COMPARE_SCALAR_FIELD(canSetTag); - COMPARE_NODE_FIELD(utilityStmt); - COMPARE_SCALAR_FIELD(resultRelation); - COMPARE_SCALAR_FIELD(hasAggs); - COMPARE_SCALAR_FIELD(hasWindowFuncs); - COMPARE_SCALAR_FIELD(hasTargetSRFs); - COMPARE_SCALAR_FIELD(hasSubLinks); - COMPARE_SCALAR_FIELD(hasDistinctOn); - COMPARE_SCALAR_FIELD(hasRecursive); - COMPARE_SCALAR_FIELD(hasModifyingCTE); - COMPARE_SCALAR_FIELD(hasForUpdate); - COMPARE_SCALAR_FIELD(hasRowSecurity); - COMPARE_SCALAR_FIELD(isReturn); - COMPARE_NODE_FIELD(cteList); - COMPARE_NODE_FIELD(rtable); - COMPARE_NODE_FIELD(jointree); - COMPARE_NODE_FIELD(targetList); - COMPARE_SCALAR_FIELD(override); - COMPARE_NODE_FIELD(onConflict); - COMPARE_NODE_FIELD(returningList); - COMPARE_NODE_FIELD(groupClause); - COMPARE_SCALAR_FIELD(groupDistinct); - COMPARE_NODE_FIELD(groupingSets); - COMPARE_NODE_FIELD(havingQual); - COMPARE_NODE_FIELD(windowClause); - COMPARE_NODE_FIELD(distinctClause); - COMPARE_NODE_FIELD(sortClause); - COMPARE_NODE_FIELD(limitOffset); - COMPARE_NODE_FIELD(limitCount); - COMPARE_SCALAR_FIELD(limitOption); - COMPARE_NODE_FIELD(rowMarks); - COMPARE_NODE_FIELD(setOperations); - COMPARE_NODE_FIELD(constraintDeps); - COMPARE_NODE_FIELD(withCheckOptions); - COMPARE_NODE_FIELD(mergeActionList); - COMPARE_SCALAR_FIELD(mergeUseOuterJoin); - COMPARE_LOCATION_FIELD(stmt_location); - COMPARE_SCALAR_FIELD(stmt_len); - - return true; -} - -static bool -_equalRawStmt(const RawStmt *a, const RawStmt *b) -{ - COMPARE_NODE_FIELD(stmt); - COMPARE_LOCATION_FIELD(stmt_location); - COMPARE_SCALAR_FIELD(stmt_len); - - return true; -} - -static bool -_equalInsertStmt(const InsertStmt *a, const InsertStmt *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(cols); - COMPARE_NODE_FIELD(selectStmt); - COMPARE_NODE_FIELD(onConflictClause); - COMPARE_NODE_FIELD(returningList); - COMPARE_NODE_FIELD(withClause); - COMPARE_SCALAR_FIELD(override); - - return true; -} - -static bool -_equalDeleteStmt(const DeleteStmt *a, const DeleteStmt *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(usingClause); - COMPARE_NODE_FIELD(whereClause); - COMPARE_NODE_FIELD(returningList); - COMPARE_NODE_FIELD(withClause); - - return true; -} - -static bool -_equalUpdateStmt(const UpdateStmt *a, const UpdateStmt *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(targetList); - COMPARE_NODE_FIELD(whereClause); - COMPARE_NODE_FIELD(fromClause); - COMPARE_NODE_FIELD(returningList); - COMPARE_NODE_FIELD(withClause); - - return true; -} - -static bool -_equalMergeStmt(const MergeStmt *a, const MergeStmt *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(sourceRelation); - COMPARE_NODE_FIELD(joinCondition); - COMPARE_NODE_FIELD(mergeWhenClauses); - COMPARE_NODE_FIELD(withClause); - - return true; -} - -static bool -_equalSelectStmt(const SelectStmt *a, const SelectStmt *b) -{ - COMPARE_NODE_FIELD(distinctClause); - COMPARE_NODE_FIELD(intoClause); - COMPARE_NODE_FIELD(targetList); - COMPARE_NODE_FIELD(fromClause); - COMPARE_NODE_FIELD(whereClause); - COMPARE_NODE_FIELD(groupClause); - COMPARE_SCALAR_FIELD(groupDistinct); - COMPARE_NODE_FIELD(havingClause); - COMPARE_NODE_FIELD(windowClause); - COMPARE_NODE_FIELD(valuesLists); - COMPARE_NODE_FIELD(sortClause); - COMPARE_NODE_FIELD(limitOffset); - COMPARE_NODE_FIELD(limitCount); - COMPARE_SCALAR_FIELD(limitOption); - COMPARE_NODE_FIELD(lockingClause); - COMPARE_NODE_FIELD(withClause); - COMPARE_SCALAR_FIELD(op); - COMPARE_SCALAR_FIELD(all); - COMPARE_NODE_FIELD(larg); - COMPARE_NODE_FIELD(rarg); - - return true; -} - -static bool -_equalSetOperationStmt(const SetOperationStmt *a, const SetOperationStmt *b) -{ - COMPARE_SCALAR_FIELD(op); - COMPARE_SCALAR_FIELD(all); - COMPARE_NODE_FIELD(larg); - COMPARE_NODE_FIELD(rarg); - COMPARE_NODE_FIELD(colTypes); - COMPARE_NODE_FIELD(colTypmods); - COMPARE_NODE_FIELD(colCollations); - COMPARE_NODE_FIELD(groupClauses); - - return true; -} - -static bool -_equalReturnStmt(const ReturnStmt *a, const ReturnStmt *b) -{ - COMPARE_NODE_FIELD(returnval); - - return true; -} - -static bool -_equalPLAssignStmt(const PLAssignStmt *a, const PLAssignStmt *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(indirection); - COMPARE_SCALAR_FIELD(nnames); - COMPARE_NODE_FIELD(val); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalAlterTableStmt(const AlterTableStmt *a, const AlterTableStmt *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(cmds); - COMPARE_SCALAR_FIELD(objtype); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalAlterTableCmd(const AlterTableCmd *a, const AlterTableCmd *b) -{ - COMPARE_SCALAR_FIELD(subtype); - COMPARE_STRING_FIELD(name); - COMPARE_SCALAR_FIELD(num); - COMPARE_NODE_FIELD(newowner); - COMPARE_NODE_FIELD(def); - COMPARE_SCALAR_FIELD(behavior); - COMPARE_SCALAR_FIELD(missing_ok); - COMPARE_SCALAR_FIELD(recurse); - - return true; -} - -static bool -_equalAlterCollationStmt(const AlterCollationStmt *a, const AlterCollationStmt *b) -{ - COMPARE_NODE_FIELD(collname); - - return true; -} - -static bool -_equalAlterDomainStmt(const AlterDomainStmt *a, const AlterDomainStmt *b) -{ - COMPARE_SCALAR_FIELD(subtype); - COMPARE_NODE_FIELD(typeName); - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(def); - COMPARE_SCALAR_FIELD(behavior); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalGrantStmt(const GrantStmt *a, const GrantStmt *b) -{ - COMPARE_SCALAR_FIELD(is_grant); - COMPARE_SCALAR_FIELD(targtype); - COMPARE_SCALAR_FIELD(objtype); - COMPARE_NODE_FIELD(objects); - COMPARE_NODE_FIELD(privileges); - COMPARE_NODE_FIELD(grantees); - COMPARE_SCALAR_FIELD(grant_option); - COMPARE_NODE_FIELD(grantor); - COMPARE_SCALAR_FIELD(behavior); - - return true; -} - -static bool -_equalObjectWithArgs(const ObjectWithArgs *a, const ObjectWithArgs *b) -{ - COMPARE_NODE_FIELD(objname); - COMPARE_NODE_FIELD(objargs); - COMPARE_NODE_FIELD(objfuncargs); - COMPARE_SCALAR_FIELD(args_unspecified); - - return true; -} - -static bool -_equalAccessPriv(const AccessPriv *a, const AccessPriv *b) -{ - COMPARE_STRING_FIELD(priv_name); - COMPARE_NODE_FIELD(cols); - - return true; -} - -static bool -_equalGrantRoleStmt(const GrantRoleStmt *a, const GrantRoleStmt *b) -{ - COMPARE_NODE_FIELD(granted_roles); - COMPARE_NODE_FIELD(grantee_roles); - COMPARE_SCALAR_FIELD(is_grant); - COMPARE_SCALAR_FIELD(admin_opt); - COMPARE_NODE_FIELD(grantor); - COMPARE_SCALAR_FIELD(behavior); - - return true; -} - -static bool -_equalAlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt *a, const AlterDefaultPrivilegesStmt *b) -{ - COMPARE_NODE_FIELD(options); - COMPARE_NODE_FIELD(action); - - return true; -} - -static bool -_equalDeclareCursorStmt(const DeclareCursorStmt *a, const DeclareCursorStmt *b) -{ - COMPARE_STRING_FIELD(portalname); - COMPARE_SCALAR_FIELD(options); - COMPARE_NODE_FIELD(query); - - return true; -} - -static bool -_equalClosePortalStmt(const ClosePortalStmt *a, const ClosePortalStmt *b) -{ - COMPARE_STRING_FIELD(portalname); - - return true; -} - -static bool -_equalCallStmt(const CallStmt *a, const CallStmt *b) -{ - COMPARE_NODE_FIELD(funccall); - COMPARE_NODE_FIELD(funcexpr); - COMPARE_NODE_FIELD(outargs); - - return true; -} - -static bool -_equalClusterStmt(const ClusterStmt *a, const ClusterStmt *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_STRING_FIELD(indexname); - COMPARE_NODE_FIELD(params); - - return true; -} - -static bool -_equalCopyStmt(const CopyStmt *a, const CopyStmt *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(query); - COMPARE_NODE_FIELD(attlist); - COMPARE_SCALAR_FIELD(is_from); - COMPARE_SCALAR_FIELD(is_program); - COMPARE_STRING_FIELD(filename); - COMPARE_NODE_FIELD(options); - COMPARE_NODE_FIELD(whereClause); - - return true; -} - -static bool -_equalCreateStmt(const CreateStmt *a, const CreateStmt *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(tableElts); - COMPARE_NODE_FIELD(inhRelations); - COMPARE_NODE_FIELD(partbound); - COMPARE_NODE_FIELD(partspec); - COMPARE_NODE_FIELD(ofTypename); - COMPARE_NODE_FIELD(constraints); - COMPARE_NODE_FIELD(options); - COMPARE_SCALAR_FIELD(oncommit); - COMPARE_STRING_FIELD(tablespacename); - COMPARE_STRING_FIELD(accessMethod); - COMPARE_SCALAR_FIELD(if_not_exists); - - return true; -} - -static bool -_equalTableLikeClause(const TableLikeClause *a, const TableLikeClause *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_SCALAR_FIELD(options); - COMPARE_SCALAR_FIELD(relationOid); - - return true; -} - -static bool -_equalDefineStmt(const DefineStmt *a, const DefineStmt *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_SCALAR_FIELD(oldstyle); - COMPARE_NODE_FIELD(defnames); - COMPARE_NODE_FIELD(args); - COMPARE_NODE_FIELD(definition); - COMPARE_SCALAR_FIELD(if_not_exists); - COMPARE_SCALAR_FIELD(replace); - - return true; -} - -static bool -_equalDropStmt(const DropStmt *a, const DropStmt *b) -{ - COMPARE_NODE_FIELD(objects); - COMPARE_SCALAR_FIELD(removeType); - COMPARE_SCALAR_FIELD(behavior); - COMPARE_SCALAR_FIELD(missing_ok); - COMPARE_SCALAR_FIELD(concurrent); - - return true; -} - -static bool -_equalTruncateStmt(const TruncateStmt *a, const TruncateStmt *b) -{ - COMPARE_NODE_FIELD(relations); - COMPARE_SCALAR_FIELD(restart_seqs); - COMPARE_SCALAR_FIELD(behavior); - - return true; -} - -static bool -_equalCommentStmt(const CommentStmt *a, const CommentStmt *b) -{ - COMPARE_SCALAR_FIELD(objtype); - COMPARE_NODE_FIELD(object); - COMPARE_STRING_FIELD(comment); - - return true; -} - -static bool -_equalSecLabelStmt(const SecLabelStmt *a, const SecLabelStmt *b) -{ - COMPARE_SCALAR_FIELD(objtype); - COMPARE_NODE_FIELD(object); - COMPARE_STRING_FIELD(provider); - COMPARE_STRING_FIELD(label); - - return true; -} - -static bool -_equalFetchStmt(const FetchStmt *a, const FetchStmt *b) -{ - COMPARE_SCALAR_FIELD(direction); - COMPARE_SCALAR_FIELD(howMany); - COMPARE_STRING_FIELD(portalname); - COMPARE_SCALAR_FIELD(ismove); - - return true; -} - -static bool -_equalIndexStmt(const IndexStmt *a, const IndexStmt *b) -{ - COMPARE_STRING_FIELD(idxname); - COMPARE_NODE_FIELD(relation); - COMPARE_STRING_FIELD(accessMethod); - COMPARE_STRING_FIELD(tableSpace); - COMPARE_NODE_FIELD(indexParams); - COMPARE_NODE_FIELD(indexIncludingParams); - COMPARE_NODE_FIELD(options); - COMPARE_NODE_FIELD(whereClause); - COMPARE_NODE_FIELD(excludeOpNames); - COMPARE_STRING_FIELD(idxcomment); - COMPARE_SCALAR_FIELD(indexOid); - COMPARE_SCALAR_FIELD(oldNode); - COMPARE_SCALAR_FIELD(oldCreateSubid); - COMPARE_SCALAR_FIELD(oldFirstRelfilenodeSubid); - COMPARE_SCALAR_FIELD(unique); - COMPARE_SCALAR_FIELD(nulls_not_distinct); - COMPARE_SCALAR_FIELD(primary); - COMPARE_SCALAR_FIELD(isconstraint); - COMPARE_SCALAR_FIELD(deferrable); - COMPARE_SCALAR_FIELD(initdeferred); - COMPARE_SCALAR_FIELD(transformed); - COMPARE_SCALAR_FIELD(concurrent); - COMPARE_SCALAR_FIELD(if_not_exists); - COMPARE_SCALAR_FIELD(reset_default_tblspc); - - return true; -} - -static bool -_equalCreateStatsStmt(const CreateStatsStmt *a, const CreateStatsStmt *b) -{ - COMPARE_NODE_FIELD(defnames); - COMPARE_NODE_FIELD(stat_types); - COMPARE_NODE_FIELD(exprs); - COMPARE_NODE_FIELD(relations); - COMPARE_STRING_FIELD(stxcomment); - COMPARE_SCALAR_FIELD(transformed); - COMPARE_SCALAR_FIELD(if_not_exists); - - return true; -} - -static bool -_equalAlterStatsStmt(const AlterStatsStmt *a, const AlterStatsStmt *b) -{ - COMPARE_NODE_FIELD(defnames); - COMPARE_SCALAR_FIELD(stxstattarget); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalCreateFunctionStmt(const CreateFunctionStmt *a, const CreateFunctionStmt *b) -{ - COMPARE_SCALAR_FIELD(is_procedure); - COMPARE_SCALAR_FIELD(replace); - COMPARE_NODE_FIELD(funcname); - COMPARE_NODE_FIELD(parameters); - COMPARE_NODE_FIELD(returnType); - COMPARE_NODE_FIELD(options); - COMPARE_NODE_FIELD(sql_body); - - return true; -} - -static bool -_equalFunctionParameter(const FunctionParameter *a, const FunctionParameter *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(argType); - COMPARE_SCALAR_FIELD(mode); - COMPARE_NODE_FIELD(defexpr); - - return true; -} - -static bool -_equalAlterFunctionStmt(const AlterFunctionStmt *a, const AlterFunctionStmt *b) -{ - COMPARE_SCALAR_FIELD(objtype); - COMPARE_NODE_FIELD(func); - COMPARE_NODE_FIELD(actions); - - return true; -} - -static bool -_equalDoStmt(const DoStmt *a, const DoStmt *b) -{ - COMPARE_NODE_FIELD(args); - - return true; -} - -static bool -_equalRenameStmt(const RenameStmt *a, const RenameStmt *b) -{ - COMPARE_SCALAR_FIELD(renameType); - COMPARE_SCALAR_FIELD(relationType); - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(object); - COMPARE_STRING_FIELD(subname); - COMPARE_STRING_FIELD(newname); - COMPARE_SCALAR_FIELD(behavior); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalAlterObjectDependsStmt(const AlterObjectDependsStmt *a, const AlterObjectDependsStmt *b) -{ - COMPARE_SCALAR_FIELD(objectType); - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(object); - COMPARE_NODE_FIELD(extname); - COMPARE_SCALAR_FIELD(remove); - - return true; -} - -static bool -_equalAlterObjectSchemaStmt(const AlterObjectSchemaStmt *a, const AlterObjectSchemaStmt *b) -{ - COMPARE_SCALAR_FIELD(objectType); - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(object); - COMPARE_STRING_FIELD(newschema); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalAlterOwnerStmt(const AlterOwnerStmt *a, const AlterOwnerStmt *b) -{ - COMPARE_SCALAR_FIELD(objectType); - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(object); - COMPARE_NODE_FIELD(newowner); - - return true; -} - -static bool -_equalAlterOperatorStmt(const AlterOperatorStmt *a, const AlterOperatorStmt *b) -{ - COMPARE_NODE_FIELD(opername); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterTypeStmt(const AlterTypeStmt *a, const AlterTypeStmt *b) -{ - COMPARE_NODE_FIELD(typeName); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalRuleStmt(const RuleStmt *a, const RuleStmt *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_STRING_FIELD(rulename); - COMPARE_NODE_FIELD(whereClause); - COMPARE_SCALAR_FIELD(event); - COMPARE_SCALAR_FIELD(instead); - COMPARE_NODE_FIELD(actions); - COMPARE_SCALAR_FIELD(replace); - - return true; -} - -static bool -_equalNotifyStmt(const NotifyStmt *a, const NotifyStmt *b) -{ - COMPARE_STRING_FIELD(conditionname); - COMPARE_STRING_FIELD(payload); - - return true; -} - -static bool -_equalListenStmt(const ListenStmt *a, const ListenStmt *b) -{ - COMPARE_STRING_FIELD(conditionname); - - return true; -} - -static bool -_equalUnlistenStmt(const UnlistenStmt *a, const UnlistenStmt *b) -{ - COMPARE_STRING_FIELD(conditionname); - - return true; -} - -static bool -_equalTransactionStmt(const TransactionStmt *a, const TransactionStmt *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_NODE_FIELD(options); - COMPARE_STRING_FIELD(savepoint_name); - COMPARE_STRING_FIELD(gid); - COMPARE_SCALAR_FIELD(chain); - - return true; -} - -static bool -_equalCompositeTypeStmt(const CompositeTypeStmt *a, const CompositeTypeStmt *b) -{ - COMPARE_NODE_FIELD(typevar); - COMPARE_NODE_FIELD(coldeflist); - - return true; -} - -static bool -_equalCreateEnumStmt(const CreateEnumStmt *a, const CreateEnumStmt *b) -{ - COMPARE_NODE_FIELD(typeName); - COMPARE_NODE_FIELD(vals); - - return true; -} - -static bool -_equalCreateRangeStmt(const CreateRangeStmt *a, const CreateRangeStmt *b) -{ - COMPARE_NODE_FIELD(typeName); - COMPARE_NODE_FIELD(params); - - return true; -} - -static bool -_equalAlterEnumStmt(const AlterEnumStmt *a, const AlterEnumStmt *b) -{ - COMPARE_NODE_FIELD(typeName); - COMPARE_STRING_FIELD(oldVal); - COMPARE_STRING_FIELD(newVal); - COMPARE_STRING_FIELD(newValNeighbor); - COMPARE_SCALAR_FIELD(newValIsAfter); - COMPARE_SCALAR_FIELD(skipIfNewValExists); - - return true; -} - -static bool -_equalViewStmt(const ViewStmt *a, const ViewStmt *b) -{ - COMPARE_NODE_FIELD(view); - COMPARE_NODE_FIELD(aliases); - COMPARE_NODE_FIELD(query); - COMPARE_SCALAR_FIELD(replace); - COMPARE_NODE_FIELD(options); - COMPARE_SCALAR_FIELD(withCheckOption); - - return true; -} - -static bool -_equalLoadStmt(const LoadStmt *a, const LoadStmt *b) -{ - COMPARE_STRING_FIELD(filename); - - return true; -} - -static bool -_equalCreateDomainStmt(const CreateDomainStmt *a, const CreateDomainStmt *b) -{ - COMPARE_NODE_FIELD(domainname); - COMPARE_NODE_FIELD(typeName); - COMPARE_NODE_FIELD(collClause); - COMPARE_NODE_FIELD(constraints); - - return true; -} - -static bool -_equalCreateOpClassStmt(const CreateOpClassStmt *a, const CreateOpClassStmt *b) -{ - COMPARE_NODE_FIELD(opclassname); - COMPARE_NODE_FIELD(opfamilyname); - COMPARE_STRING_FIELD(amname); - COMPARE_NODE_FIELD(datatype); - COMPARE_NODE_FIELD(items); - COMPARE_SCALAR_FIELD(isDefault); - - return true; -} - -static bool -_equalCreateOpClassItem(const CreateOpClassItem *a, const CreateOpClassItem *b) -{ - COMPARE_SCALAR_FIELD(itemtype); - COMPARE_NODE_FIELD(name); - COMPARE_SCALAR_FIELD(number); - COMPARE_NODE_FIELD(order_family); - COMPARE_NODE_FIELD(class_args); - COMPARE_NODE_FIELD(storedtype); - - return true; -} - -static bool -_equalCreateOpFamilyStmt(const CreateOpFamilyStmt *a, const CreateOpFamilyStmt *b) -{ - COMPARE_NODE_FIELD(opfamilyname); - COMPARE_STRING_FIELD(amname); - - return true; -} - -static bool -_equalAlterOpFamilyStmt(const AlterOpFamilyStmt *a, const AlterOpFamilyStmt *b) -{ - COMPARE_NODE_FIELD(opfamilyname); - COMPARE_STRING_FIELD(amname); - COMPARE_SCALAR_FIELD(isDrop); - COMPARE_NODE_FIELD(items); - - return true; -} - -static bool -_equalCreatedbStmt(const CreatedbStmt *a, const CreatedbStmt *b) -{ - COMPARE_STRING_FIELD(dbname); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterDatabaseStmt(const AlterDatabaseStmt *a, const AlterDatabaseStmt *b) -{ - COMPARE_STRING_FIELD(dbname); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterDatabaseRefreshCollStmt(const AlterDatabaseRefreshCollStmt *a, const AlterDatabaseRefreshCollStmt *b) -{ - COMPARE_STRING_FIELD(dbname); - - return true; -} - -static bool -_equalAlterDatabaseSetStmt(const AlterDatabaseSetStmt *a, const AlterDatabaseSetStmt *b) -{ - COMPARE_STRING_FIELD(dbname); - COMPARE_NODE_FIELD(setstmt); - - return true; -} - -static bool -_equalDropdbStmt(const DropdbStmt *a, const DropdbStmt *b) -{ - COMPARE_STRING_FIELD(dbname); - COMPARE_SCALAR_FIELD(missing_ok); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalVacuumStmt(const VacuumStmt *a, const VacuumStmt *b) -{ - COMPARE_NODE_FIELD(options); - COMPARE_NODE_FIELD(rels); - COMPARE_SCALAR_FIELD(is_vacuumcmd); - - return true; -} - -static bool -_equalVacuumRelation(const VacuumRelation *a, const VacuumRelation *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_SCALAR_FIELD(oid); - COMPARE_NODE_FIELD(va_cols); - - return true; -} - -static bool -_equalExplainStmt(const ExplainStmt *a, const ExplainStmt *b) -{ - COMPARE_NODE_FIELD(query); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalCreateTableAsStmt(const CreateTableAsStmt *a, const CreateTableAsStmt *b) -{ - COMPARE_NODE_FIELD(query); - COMPARE_NODE_FIELD(into); - COMPARE_SCALAR_FIELD(objtype); - COMPARE_SCALAR_FIELD(is_select_into); - COMPARE_SCALAR_FIELD(if_not_exists); - - return true; -} - -static bool -_equalRefreshMatViewStmt(const RefreshMatViewStmt *a, const RefreshMatViewStmt *b) -{ - COMPARE_SCALAR_FIELD(concurrent); - COMPARE_SCALAR_FIELD(skipData); - COMPARE_NODE_FIELD(relation); - - return true; -} - -static bool -_equalReplicaIdentityStmt(const ReplicaIdentityStmt *a, const ReplicaIdentityStmt *b) -{ - COMPARE_SCALAR_FIELD(identity_type); - COMPARE_STRING_FIELD(name); - - return true; -} - -static bool -_equalAlterSystemStmt(const AlterSystemStmt *a, const AlterSystemStmt *b) -{ - COMPARE_NODE_FIELD(setstmt); - - return true; -} - - -static bool -_equalCreateSeqStmt(const CreateSeqStmt *a, const CreateSeqStmt *b) -{ - COMPARE_NODE_FIELD(sequence); - COMPARE_NODE_FIELD(options); - COMPARE_SCALAR_FIELD(ownerId); - COMPARE_SCALAR_FIELD(for_identity); - COMPARE_SCALAR_FIELD(if_not_exists); - - return true; -} - -static bool -_equalAlterSeqStmt(const AlterSeqStmt *a, const AlterSeqStmt *b) -{ - COMPARE_NODE_FIELD(sequence); - COMPARE_NODE_FIELD(options); - COMPARE_SCALAR_FIELD(for_identity); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalVariableSetStmt(const VariableSetStmt *a, const VariableSetStmt *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(args); - COMPARE_SCALAR_FIELD(is_local); - - return true; -} - -static bool -_equalVariableShowStmt(const VariableShowStmt *a, const VariableShowStmt *b) -{ - COMPARE_STRING_FIELD(name); - - return true; -} - -static bool -_equalDiscardStmt(const DiscardStmt *a, const DiscardStmt *b) -{ - COMPARE_SCALAR_FIELD(target); - - return true; -} - -static bool -_equalCreateTableSpaceStmt(const CreateTableSpaceStmt *a, const CreateTableSpaceStmt *b) -{ - COMPARE_STRING_FIELD(tablespacename); - COMPARE_NODE_FIELD(owner); - COMPARE_STRING_FIELD(location); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalDropTableSpaceStmt(const DropTableSpaceStmt *a, const DropTableSpaceStmt *b) -{ - COMPARE_STRING_FIELD(tablespacename); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalAlterTableSpaceOptionsStmt(const AlterTableSpaceOptionsStmt *a, - const AlterTableSpaceOptionsStmt *b) -{ - COMPARE_STRING_FIELD(tablespacename); - COMPARE_NODE_FIELD(options); - COMPARE_SCALAR_FIELD(isReset); - - return true; -} - -static bool -_equalAlterTableMoveAllStmt(const AlterTableMoveAllStmt *a, - const AlterTableMoveAllStmt *b) -{ - COMPARE_STRING_FIELD(orig_tablespacename); - COMPARE_SCALAR_FIELD(objtype); - COMPARE_NODE_FIELD(roles); - COMPARE_STRING_FIELD(new_tablespacename); - COMPARE_SCALAR_FIELD(nowait); - - return true; -} - -static bool -_equalCreateExtensionStmt(const CreateExtensionStmt *a, const CreateExtensionStmt *b) -{ - COMPARE_STRING_FIELD(extname); - COMPARE_SCALAR_FIELD(if_not_exists); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterExtensionStmt(const AlterExtensionStmt *a, const AlterExtensionStmt *b) -{ - COMPARE_STRING_FIELD(extname); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterExtensionContentsStmt(const AlterExtensionContentsStmt *a, const AlterExtensionContentsStmt *b) -{ - COMPARE_STRING_FIELD(extname); - COMPARE_SCALAR_FIELD(action); - COMPARE_SCALAR_FIELD(objtype); - COMPARE_NODE_FIELD(object); - - return true; -} - -static bool -_equalCreateFdwStmt(const CreateFdwStmt *a, const CreateFdwStmt *b) -{ - COMPARE_STRING_FIELD(fdwname); - COMPARE_NODE_FIELD(func_options); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterFdwStmt(const AlterFdwStmt *a, const AlterFdwStmt *b) -{ - COMPARE_STRING_FIELD(fdwname); - COMPARE_NODE_FIELD(func_options); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalCreateForeignServerStmt(const CreateForeignServerStmt *a, const CreateForeignServerStmt *b) -{ - COMPARE_STRING_FIELD(servername); - COMPARE_STRING_FIELD(servertype); - COMPARE_STRING_FIELD(version); - COMPARE_STRING_FIELD(fdwname); - COMPARE_SCALAR_FIELD(if_not_exists); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterForeignServerStmt(const AlterForeignServerStmt *a, const AlterForeignServerStmt *b) -{ - COMPARE_STRING_FIELD(servername); - COMPARE_STRING_FIELD(version); - COMPARE_NODE_FIELD(options); - COMPARE_SCALAR_FIELD(has_version); - - return true; -} - -static bool -_equalCreateUserMappingStmt(const CreateUserMappingStmt *a, const CreateUserMappingStmt *b) -{ - COMPARE_NODE_FIELD(user); - COMPARE_STRING_FIELD(servername); - COMPARE_SCALAR_FIELD(if_not_exists); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterUserMappingStmt(const AlterUserMappingStmt *a, const AlterUserMappingStmt *b) -{ - COMPARE_NODE_FIELD(user); - COMPARE_STRING_FIELD(servername); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalDropUserMappingStmt(const DropUserMappingStmt *a, const DropUserMappingStmt *b) -{ - COMPARE_NODE_FIELD(user); - COMPARE_STRING_FIELD(servername); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalCreateForeignTableStmt(const CreateForeignTableStmt *a, const CreateForeignTableStmt *b) -{ - if (!_equalCreateStmt(&a->base, &b->base)) - return false; - - COMPARE_STRING_FIELD(servername); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalImportForeignSchemaStmt(const ImportForeignSchemaStmt *a, const ImportForeignSchemaStmt *b) -{ - COMPARE_STRING_FIELD(server_name); - COMPARE_STRING_FIELD(remote_schema); - COMPARE_STRING_FIELD(local_schema); - COMPARE_SCALAR_FIELD(list_type); - COMPARE_NODE_FIELD(table_list); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalCreateTransformStmt(const CreateTransformStmt *a, const CreateTransformStmt *b) -{ - COMPARE_SCALAR_FIELD(replace); - COMPARE_NODE_FIELD(type_name); - COMPARE_STRING_FIELD(lang); - COMPARE_NODE_FIELD(fromsql); - COMPARE_NODE_FIELD(tosql); - - return true; -} - -static bool -_equalCreateAmStmt(const CreateAmStmt *a, const CreateAmStmt *b) -{ - COMPARE_STRING_FIELD(amname); - COMPARE_NODE_FIELD(handler_name); - COMPARE_SCALAR_FIELD(amtype); - - return true; -} - -static bool -_equalCreateTrigStmt(const CreateTrigStmt *a, const CreateTrigStmt *b) -{ - COMPARE_SCALAR_FIELD(replace); - COMPARE_SCALAR_FIELD(isconstraint); - COMPARE_STRING_FIELD(trigname); - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(funcname); - COMPARE_NODE_FIELD(args); - COMPARE_SCALAR_FIELD(row); - COMPARE_SCALAR_FIELD(timing); - COMPARE_SCALAR_FIELD(events); - COMPARE_NODE_FIELD(columns); - COMPARE_NODE_FIELD(whenClause); - COMPARE_NODE_FIELD(transitionRels); - COMPARE_SCALAR_FIELD(deferrable); - COMPARE_SCALAR_FIELD(initdeferred); - COMPARE_NODE_FIELD(constrrel); - - return true; -} - -static bool -_equalCreateEventTrigStmt(const CreateEventTrigStmt *a, const CreateEventTrigStmt *b) -{ - COMPARE_STRING_FIELD(trigname); - COMPARE_STRING_FIELD(eventname); - COMPARE_NODE_FIELD(whenclause); - COMPARE_NODE_FIELD(funcname); - - return true; -} - -static bool -_equalAlterEventTrigStmt(const AlterEventTrigStmt *a, const AlterEventTrigStmt *b) -{ - COMPARE_STRING_FIELD(trigname); - COMPARE_SCALAR_FIELD(tgenabled); - - return true; -} - -static bool -_equalCreatePLangStmt(const CreatePLangStmt *a, const CreatePLangStmt *b) -{ - COMPARE_SCALAR_FIELD(replace); - COMPARE_STRING_FIELD(plname); - COMPARE_NODE_FIELD(plhandler); - COMPARE_NODE_FIELD(plinline); - COMPARE_NODE_FIELD(plvalidator); - COMPARE_SCALAR_FIELD(pltrusted); - - return true; -} - -static bool -_equalCreateRoleStmt(const CreateRoleStmt *a, const CreateRoleStmt *b) -{ - COMPARE_SCALAR_FIELD(stmt_type); - COMPARE_STRING_FIELD(role); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterRoleStmt(const AlterRoleStmt *a, const AlterRoleStmt *b) -{ - COMPARE_NODE_FIELD(role); - COMPARE_NODE_FIELD(options); - COMPARE_SCALAR_FIELD(action); - - return true; -} - -static bool -_equalAlterRoleSetStmt(const AlterRoleSetStmt *a, const AlterRoleSetStmt *b) -{ - COMPARE_NODE_FIELD(role); - COMPARE_STRING_FIELD(database); - COMPARE_NODE_FIELD(setstmt); - - return true; -} - -static bool -_equalDropRoleStmt(const DropRoleStmt *a, const DropRoleStmt *b) -{ - COMPARE_NODE_FIELD(roles); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalLockStmt(const LockStmt *a, const LockStmt *b) -{ - COMPARE_NODE_FIELD(relations); - COMPARE_SCALAR_FIELD(mode); - COMPARE_SCALAR_FIELD(nowait); - - return true; -} - -static bool -_equalConstraintsSetStmt(const ConstraintsSetStmt *a, const ConstraintsSetStmt *b) -{ - COMPARE_NODE_FIELD(constraints); - COMPARE_SCALAR_FIELD(deferred); - - return true; -} - -static bool -_equalReindexStmt(const ReindexStmt *a, const ReindexStmt *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_NODE_FIELD(relation); - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(params); - - return true; -} - -static bool -_equalCreateSchemaStmt(const CreateSchemaStmt *a, const CreateSchemaStmt *b) -{ - COMPARE_STRING_FIELD(schemaname); - COMPARE_NODE_FIELD(authrole); - COMPARE_NODE_FIELD(schemaElts); - COMPARE_SCALAR_FIELD(if_not_exists); - - return true; -} - -static bool -_equalCreateConversionStmt(const CreateConversionStmt *a, const CreateConversionStmt *b) -{ - COMPARE_NODE_FIELD(conversion_name); - COMPARE_STRING_FIELD(for_encoding_name); - COMPARE_STRING_FIELD(to_encoding_name); - COMPARE_NODE_FIELD(func_name); - COMPARE_SCALAR_FIELD(def); - - return true; -} - -static bool -_equalCreateCastStmt(const CreateCastStmt *a, const CreateCastStmt *b) -{ - COMPARE_NODE_FIELD(sourcetype); - COMPARE_NODE_FIELD(targettype); - COMPARE_NODE_FIELD(func); - COMPARE_SCALAR_FIELD(context); - COMPARE_SCALAR_FIELD(inout); - - return true; -} - -static bool -_equalPrepareStmt(const PrepareStmt *a, const PrepareStmt *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(argtypes); - COMPARE_NODE_FIELD(query); - - return true; -} - -static bool -_equalExecuteStmt(const ExecuteStmt *a, const ExecuteStmt *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(params); - - return true; -} - -static bool -_equalDeallocateStmt(const DeallocateStmt *a, const DeallocateStmt *b) -{ - COMPARE_STRING_FIELD(name); - - return true; -} - -static bool -_equalDropOwnedStmt(const DropOwnedStmt *a, const DropOwnedStmt *b) -{ - COMPARE_NODE_FIELD(roles); - COMPARE_SCALAR_FIELD(behavior); - - return true; -} - -static bool -_equalReassignOwnedStmt(const ReassignOwnedStmt *a, const ReassignOwnedStmt *b) -{ - COMPARE_NODE_FIELD(roles); - COMPARE_NODE_FIELD(newrole); - - return true; -} - -static bool -_equalAlterTSDictionaryStmt(const AlterTSDictionaryStmt *a, const AlterTSDictionaryStmt *b) -{ - COMPARE_NODE_FIELD(dictname); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterTSConfigurationStmt(const AlterTSConfigurationStmt *a, - const AlterTSConfigurationStmt *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_NODE_FIELD(cfgname); - COMPARE_NODE_FIELD(tokentype); - COMPARE_NODE_FIELD(dicts); - COMPARE_SCALAR_FIELD(override); - COMPARE_SCALAR_FIELD(replace); - COMPARE_SCALAR_FIELD(missing_ok); - - return true; -} - -static bool -_equalPublicationObject(const PublicationObjSpec *a, - const PublicationObjSpec *b) -{ - COMPARE_SCALAR_FIELD(pubobjtype); - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(pubtable); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalPublicationTable(const PublicationTable *a, const PublicationTable *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(whereClause); - COMPARE_NODE_FIELD(columns); - - return true; -} - -static bool -_equalCreatePublicationStmt(const CreatePublicationStmt *a, - const CreatePublicationStmt *b) -{ - COMPARE_STRING_FIELD(pubname); - COMPARE_NODE_FIELD(options); - COMPARE_NODE_FIELD(pubobjects); - COMPARE_SCALAR_FIELD(for_all_tables); - - return true; -} - -static bool -_equalAlterPublicationStmt(const AlterPublicationStmt *a, - const AlterPublicationStmt *b) -{ - COMPARE_STRING_FIELD(pubname); - COMPARE_NODE_FIELD(options); - COMPARE_NODE_FIELD(pubobjects); - COMPARE_SCALAR_FIELD(for_all_tables); - COMPARE_SCALAR_FIELD(action); - - return true; -} - -static bool -_equalCreateSubscriptionStmt(const CreateSubscriptionStmt *a, - const CreateSubscriptionStmt *b) -{ - COMPARE_STRING_FIELD(subname); - COMPARE_STRING_FIELD(conninfo); - COMPARE_NODE_FIELD(publication); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalAlterSubscriptionStmt(const AlterSubscriptionStmt *a, - const AlterSubscriptionStmt *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_STRING_FIELD(subname); - COMPARE_STRING_FIELD(conninfo); - COMPARE_NODE_FIELD(publication); - COMPARE_NODE_FIELD(options); - - return true; -} - -static bool -_equalDropSubscriptionStmt(const DropSubscriptionStmt *a, - const DropSubscriptionStmt *b) -{ - COMPARE_STRING_FIELD(subname); - COMPARE_SCALAR_FIELD(missing_ok); - COMPARE_SCALAR_FIELD(behavior); - - return true; -} - -static bool -_equalCreatePolicyStmt(const CreatePolicyStmt *a, const CreatePolicyStmt *b) -{ - COMPARE_STRING_FIELD(policy_name); - COMPARE_NODE_FIELD(table); - COMPARE_STRING_FIELD(cmd_name); - COMPARE_SCALAR_FIELD(permissive); - COMPARE_NODE_FIELD(roles); - COMPARE_NODE_FIELD(qual); - COMPARE_NODE_FIELD(with_check); - - return true; -} - -static bool -_equalAlterPolicyStmt(const AlterPolicyStmt *a, const AlterPolicyStmt *b) -{ - COMPARE_STRING_FIELD(policy_name); - COMPARE_NODE_FIELD(table); - COMPARE_NODE_FIELD(roles); - COMPARE_NODE_FIELD(qual); - COMPARE_NODE_FIELD(with_check); - - return true; -} - -static bool -_equalA_Expr(const A_Expr *a, const A_Expr *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_NODE_FIELD(name); - COMPARE_NODE_FIELD(lexpr); - COMPARE_NODE_FIELD(rexpr); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalColumnRef(const ColumnRef *a, const ColumnRef *b) -{ - COMPARE_NODE_FIELD(fields); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalParamRef(const ParamRef *a, const ParamRef *b) -{ - COMPARE_SCALAR_FIELD(number); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalA_Const(const A_Const *a, const A_Const *b) -{ - /* - * Hack for in-line val field. Also val is not valid is isnull is true. - */ - if (!a->isnull && !b->isnull && - !equal(&a->val, &b->val)) - return false; - COMPARE_SCALAR_FIELD(isnull); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalFuncCall(const FuncCall *a, const FuncCall *b) -{ - COMPARE_NODE_FIELD(funcname); - COMPARE_NODE_FIELD(args); - COMPARE_NODE_FIELD(agg_order); - COMPARE_NODE_FIELD(agg_filter); - COMPARE_NODE_FIELD(over); - COMPARE_SCALAR_FIELD(agg_within_group); - COMPARE_SCALAR_FIELD(agg_star); - COMPARE_SCALAR_FIELD(agg_distinct); - COMPARE_SCALAR_FIELD(func_variadic); - COMPARE_COERCIONFORM_FIELD(funcformat); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalA_Star(const A_Star *a, const A_Star *b) -{ - return true; -} - -static bool -_equalA_Indices(const A_Indices *a, const A_Indices *b) -{ - COMPARE_SCALAR_FIELD(is_slice); - COMPARE_NODE_FIELD(lidx); - COMPARE_NODE_FIELD(uidx); - - return true; -} - -static bool -_equalA_Indirection(const A_Indirection *a, const A_Indirection *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_NODE_FIELD(indirection); - - return true; -} - -static bool -_equalA_ArrayExpr(const A_ArrayExpr *a, const A_ArrayExpr *b) -{ - COMPARE_NODE_FIELD(elements); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalResTarget(const ResTarget *a, const ResTarget *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(indirection); - COMPARE_NODE_FIELD(val); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalMultiAssignRef(const MultiAssignRef *a, const MultiAssignRef *b) -{ - COMPARE_NODE_FIELD(source); - COMPARE_SCALAR_FIELD(colno); - COMPARE_SCALAR_FIELD(ncolumns); - - return true; -} - -static bool -_equalTypeName(const TypeName *a, const TypeName *b) -{ - COMPARE_NODE_FIELD(names); - COMPARE_SCALAR_FIELD(typeOid); - COMPARE_SCALAR_FIELD(setof); - COMPARE_SCALAR_FIELD(pct_type); - COMPARE_NODE_FIELD(typmods); - COMPARE_SCALAR_FIELD(typemod); - COMPARE_NODE_FIELD(arrayBounds); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalTypeCast(const TypeCast *a, const TypeCast *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_NODE_FIELD(typeName); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCollateClause(const CollateClause *a, const CollateClause *b) -{ - COMPARE_NODE_FIELD(arg); - COMPARE_NODE_FIELD(collname); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalSortBy(const SortBy *a, const SortBy *b) -{ - COMPARE_NODE_FIELD(node); - COMPARE_SCALAR_FIELD(sortby_dir); - COMPARE_SCALAR_FIELD(sortby_nulls); - COMPARE_NODE_FIELD(useOp); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalWindowDef(const WindowDef *a, const WindowDef *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_STRING_FIELD(refname); - COMPARE_NODE_FIELD(partitionClause); - COMPARE_NODE_FIELD(orderClause); - COMPARE_SCALAR_FIELD(frameOptions); - COMPARE_NODE_FIELD(startOffset); - COMPARE_NODE_FIELD(endOffset); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalRangeSubselect(const RangeSubselect *a, const RangeSubselect *b) -{ - COMPARE_SCALAR_FIELD(lateral); - COMPARE_NODE_FIELD(subquery); - COMPARE_NODE_FIELD(alias); - - return true; -} - -static bool -_equalRangeFunction(const RangeFunction *a, const RangeFunction *b) -{ - COMPARE_SCALAR_FIELD(lateral); - COMPARE_SCALAR_FIELD(ordinality); - COMPARE_SCALAR_FIELD(is_rowsfrom); - COMPARE_NODE_FIELD(functions); - COMPARE_NODE_FIELD(alias); - COMPARE_NODE_FIELD(coldeflist); - - return true; -} - -static bool -_equalRangeTableSample(const RangeTableSample *a, const RangeTableSample *b) -{ - COMPARE_NODE_FIELD(relation); - COMPARE_NODE_FIELD(method); - COMPARE_NODE_FIELD(args); - COMPARE_NODE_FIELD(repeatable); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalRangeTableFunc(const RangeTableFunc *a, const RangeTableFunc *b) -{ - COMPARE_SCALAR_FIELD(lateral); - COMPARE_NODE_FIELD(docexpr); - COMPARE_NODE_FIELD(rowexpr); - COMPARE_NODE_FIELD(namespaces); - COMPARE_NODE_FIELD(columns); - COMPARE_NODE_FIELD(alias); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalRangeTableFuncCol(const RangeTableFuncCol *a, const RangeTableFuncCol *b) -{ - COMPARE_STRING_FIELD(colname); - COMPARE_NODE_FIELD(typeName); - COMPARE_SCALAR_FIELD(for_ordinality); - COMPARE_SCALAR_FIELD(is_not_null); - COMPARE_NODE_FIELD(colexpr); - COMPARE_NODE_FIELD(coldefexpr); - COMPARE_LOCATION_FIELD(location); - - return true; -} - - -static bool -_equalIndexElem(const IndexElem *a, const IndexElem *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(expr); - COMPARE_STRING_FIELD(indexcolname); - COMPARE_NODE_FIELD(collation); - COMPARE_NODE_FIELD(opclass); - COMPARE_NODE_FIELD(opclassopts); - COMPARE_SCALAR_FIELD(ordering); - COMPARE_SCALAR_FIELD(nulls_ordering); - - return true; -} - - -static bool -_equalStatsElem(const StatsElem *a, const StatsElem *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(expr); - - return true; -} - -static bool -_equalColumnDef(const ColumnDef *a, const ColumnDef *b) -{ - COMPARE_STRING_FIELD(colname); - COMPARE_NODE_FIELD(typeName); - COMPARE_STRING_FIELD(compression); - COMPARE_SCALAR_FIELD(inhcount); - COMPARE_SCALAR_FIELD(is_local); - COMPARE_SCALAR_FIELD(is_not_null); - COMPARE_SCALAR_FIELD(is_from_type); - COMPARE_SCALAR_FIELD(storage); - COMPARE_NODE_FIELD(raw_default); - COMPARE_NODE_FIELD(cooked_default); - COMPARE_SCALAR_FIELD(identity); - COMPARE_NODE_FIELD(identitySequence); - COMPARE_SCALAR_FIELD(generated); - COMPARE_NODE_FIELD(collClause); - COMPARE_SCALAR_FIELD(collOid); - COMPARE_NODE_FIELD(constraints); - COMPARE_NODE_FIELD(fdwoptions); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalConstraint(const Constraint *a, const Constraint *b) -{ - COMPARE_SCALAR_FIELD(contype); - COMPARE_STRING_FIELD(conname); - COMPARE_SCALAR_FIELD(deferrable); - COMPARE_SCALAR_FIELD(initdeferred); - COMPARE_LOCATION_FIELD(location); - COMPARE_SCALAR_FIELD(is_no_inherit); - COMPARE_NODE_FIELD(raw_expr); - COMPARE_STRING_FIELD(cooked_expr); - COMPARE_SCALAR_FIELD(generated_when); - COMPARE_SCALAR_FIELD(nulls_not_distinct); - COMPARE_NODE_FIELD(keys); - COMPARE_NODE_FIELD(including); - COMPARE_NODE_FIELD(exclusions); - COMPARE_NODE_FIELD(options); - COMPARE_STRING_FIELD(indexname); - COMPARE_STRING_FIELD(indexspace); - COMPARE_SCALAR_FIELD(reset_default_tblspc); - COMPARE_STRING_FIELD(access_method); - COMPARE_NODE_FIELD(where_clause); - COMPARE_NODE_FIELD(pktable); - COMPARE_NODE_FIELD(fk_attrs); - COMPARE_NODE_FIELD(pk_attrs); - COMPARE_SCALAR_FIELD(fk_matchtype); - COMPARE_SCALAR_FIELD(fk_upd_action); - COMPARE_SCALAR_FIELD(fk_del_action); - COMPARE_NODE_FIELD(fk_del_set_cols); - COMPARE_NODE_FIELD(old_conpfeqop); - COMPARE_SCALAR_FIELD(old_pktable_oid); - COMPARE_SCALAR_FIELD(skip_validation); - COMPARE_SCALAR_FIELD(initially_valid); - - return true; -} - -static bool -_equalDefElem(const DefElem *a, const DefElem *b) -{ - COMPARE_STRING_FIELD(defnamespace); - COMPARE_STRING_FIELD(defname); - COMPARE_NODE_FIELD(arg); - COMPARE_SCALAR_FIELD(defaction); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalLockingClause(const LockingClause *a, const LockingClause *b) -{ - COMPARE_NODE_FIELD(lockedRels); - COMPARE_SCALAR_FIELD(strength); - COMPARE_SCALAR_FIELD(waitPolicy); - - return true; -} - -static bool -_equalRangeTblEntry(const RangeTblEntry *a, const RangeTblEntry *b) -{ - COMPARE_SCALAR_FIELD(rtekind); - COMPARE_SCALAR_FIELD(relid); - COMPARE_SCALAR_FIELD(relkind); - COMPARE_SCALAR_FIELD(rellockmode); - COMPARE_NODE_FIELD(tablesample); - COMPARE_NODE_FIELD(subquery); - COMPARE_SCALAR_FIELD(security_barrier); - COMPARE_SCALAR_FIELD(jointype); - COMPARE_SCALAR_FIELD(joinmergedcols); - COMPARE_NODE_FIELD(joinaliasvars); - COMPARE_NODE_FIELD(joinleftcols); - COMPARE_NODE_FIELD(joinrightcols); - COMPARE_NODE_FIELD(join_using_alias); - COMPARE_NODE_FIELD(functions); - COMPARE_SCALAR_FIELD(funcordinality); - COMPARE_NODE_FIELD(tablefunc); - COMPARE_NODE_FIELD(values_lists); - COMPARE_STRING_FIELD(ctename); - COMPARE_SCALAR_FIELD(ctelevelsup); - COMPARE_SCALAR_FIELD(self_reference); - COMPARE_NODE_FIELD(coltypes); - COMPARE_NODE_FIELD(coltypmods); - COMPARE_NODE_FIELD(colcollations); - COMPARE_STRING_FIELD(enrname); - COMPARE_SCALAR_FIELD(enrtuples); - COMPARE_NODE_FIELD(alias); - COMPARE_NODE_FIELD(eref); - COMPARE_SCALAR_FIELD(lateral); - COMPARE_SCALAR_FIELD(inh); - COMPARE_SCALAR_FIELD(inFromCl); - COMPARE_SCALAR_FIELD(requiredPerms); - COMPARE_SCALAR_FIELD(checkAsUser); - COMPARE_BITMAPSET_FIELD(selectedCols); - COMPARE_BITMAPSET_FIELD(insertedCols); - COMPARE_BITMAPSET_FIELD(updatedCols); - COMPARE_BITMAPSET_FIELD(extraUpdatedCols); - COMPARE_NODE_FIELD(securityQuals); - - return true; -} - -static bool -_equalRangeTblFunction(const RangeTblFunction *a, const RangeTblFunction *b) -{ - COMPARE_NODE_FIELD(funcexpr); - COMPARE_SCALAR_FIELD(funccolcount); - COMPARE_NODE_FIELD(funccolnames); - COMPARE_NODE_FIELD(funccoltypes); - COMPARE_NODE_FIELD(funccoltypmods); - COMPARE_NODE_FIELD(funccolcollations); - COMPARE_BITMAPSET_FIELD(funcparams); - - return true; -} - -static bool -_equalTableSampleClause(const TableSampleClause *a, const TableSampleClause *b) -{ - COMPARE_SCALAR_FIELD(tsmhandler); - COMPARE_NODE_FIELD(args); - COMPARE_NODE_FIELD(repeatable); - - return true; -} - -static bool -_equalWithCheckOption(const WithCheckOption *a, const WithCheckOption *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_STRING_FIELD(relname); - COMPARE_STRING_FIELD(polname); - COMPARE_NODE_FIELD(qual); - COMPARE_SCALAR_FIELD(cascaded); - - return true; -} - -static bool -_equalSortGroupClause(const SortGroupClause *a, const SortGroupClause *b) -{ - COMPARE_SCALAR_FIELD(tleSortGroupRef); - COMPARE_SCALAR_FIELD(eqop); - COMPARE_SCALAR_FIELD(sortop); - COMPARE_SCALAR_FIELD(nulls_first); - COMPARE_SCALAR_FIELD(hashable); - - return true; -} - -static bool -_equalGroupingSet(const GroupingSet *a, const GroupingSet *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_NODE_FIELD(content); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalWindowClause(const WindowClause *a, const WindowClause *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_STRING_FIELD(refname); - COMPARE_NODE_FIELD(partitionClause); - COMPARE_NODE_FIELD(orderClause); - COMPARE_SCALAR_FIELD(frameOptions); - COMPARE_NODE_FIELD(startOffset); - COMPARE_NODE_FIELD(endOffset); - COMPARE_NODE_FIELD(runCondition); - COMPARE_SCALAR_FIELD(startInRangeFunc); - COMPARE_SCALAR_FIELD(endInRangeFunc); - COMPARE_SCALAR_FIELD(inRangeColl); - COMPARE_SCALAR_FIELD(inRangeAsc); - COMPARE_SCALAR_FIELD(inRangeNullsFirst); - COMPARE_SCALAR_FIELD(winref); - COMPARE_SCALAR_FIELD(copiedOrder); - - return true; -} - -static bool -_equalRowMarkClause(const RowMarkClause *a, const RowMarkClause *b) -{ - COMPARE_SCALAR_FIELD(rti); - COMPARE_SCALAR_FIELD(strength); - COMPARE_SCALAR_FIELD(waitPolicy); - COMPARE_SCALAR_FIELD(pushedDown); - - return true; -} - -static bool -_equalWithClause(const WithClause *a, const WithClause *b) -{ - COMPARE_NODE_FIELD(ctes); - COMPARE_SCALAR_FIELD(recursive); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalInferClause(const InferClause *a, const InferClause *b) -{ - COMPARE_NODE_FIELD(indexElems); - COMPARE_NODE_FIELD(whereClause); - COMPARE_STRING_FIELD(conname); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalOnConflictClause(const OnConflictClause *a, const OnConflictClause *b) -{ - COMPARE_SCALAR_FIELD(action); - COMPARE_NODE_FIELD(infer); - COMPARE_NODE_FIELD(targetList); - COMPARE_NODE_FIELD(whereClause); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCTESearchClause(const CTESearchClause *a, const CTESearchClause *b) -{ - COMPARE_NODE_FIELD(search_col_list); - COMPARE_SCALAR_FIELD(search_breadth_first); - COMPARE_STRING_FIELD(search_seq_column); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalCTECycleClause(const CTECycleClause *a, const CTECycleClause *b) -{ - COMPARE_NODE_FIELD(cycle_col_list); - COMPARE_STRING_FIELD(cycle_mark_column); - COMPARE_NODE_FIELD(cycle_mark_value); - COMPARE_NODE_FIELD(cycle_mark_default); - COMPARE_STRING_FIELD(cycle_path_column); - COMPARE_LOCATION_FIELD(location); - COMPARE_SCALAR_FIELD(cycle_mark_type); - COMPARE_SCALAR_FIELD(cycle_mark_typmod); - COMPARE_SCALAR_FIELD(cycle_mark_collation); - COMPARE_SCALAR_FIELD(cycle_mark_neop); - - return true; -} - -static bool -_equalCommonTableExpr(const CommonTableExpr *a, const CommonTableExpr *b) -{ - COMPARE_STRING_FIELD(ctename); - COMPARE_NODE_FIELD(aliascolnames); - COMPARE_SCALAR_FIELD(ctematerialized); - COMPARE_NODE_FIELD(ctequery); - COMPARE_NODE_FIELD(search_clause); - COMPARE_NODE_FIELD(cycle_clause); - COMPARE_LOCATION_FIELD(location); - COMPARE_SCALAR_FIELD(cterecursive); - COMPARE_SCALAR_FIELD(cterefcount); - COMPARE_NODE_FIELD(ctecolnames); - COMPARE_NODE_FIELD(ctecoltypes); - COMPARE_NODE_FIELD(ctecoltypmods); - COMPARE_NODE_FIELD(ctecolcollations); - - return true; -} - -static bool -_equalMergeWhenClause(const MergeWhenClause *a, const MergeWhenClause *b) -{ - COMPARE_SCALAR_FIELD(matched); - COMPARE_SCALAR_FIELD(commandType); - COMPARE_SCALAR_FIELD(override); - COMPARE_NODE_FIELD(condition); - COMPARE_NODE_FIELD(targetList); - COMPARE_NODE_FIELD(values); - - return true; -} - -static bool -_equalMergeAction(const MergeAction *a, const MergeAction *b) -{ - COMPARE_SCALAR_FIELD(matched); - COMPARE_SCALAR_FIELD(commandType); - COMPARE_SCALAR_FIELD(override); - COMPARE_NODE_FIELD(qual); - COMPARE_NODE_FIELD(targetList); - COMPARE_NODE_FIELD(updateColnos); - - return true; -} - -static bool -_equalXmlSerialize(const XmlSerialize *a, const XmlSerialize *b) -{ - COMPARE_SCALAR_FIELD(xmloption); - COMPARE_NODE_FIELD(expr); - COMPARE_NODE_FIELD(typeName); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalRoleSpec(const RoleSpec *a, const RoleSpec *b) -{ - COMPARE_SCALAR_FIELD(roletype); - COMPARE_STRING_FIELD(rolename); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalTriggerTransition(const TriggerTransition *a, const TriggerTransition *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_SCALAR_FIELD(isNew); - COMPARE_SCALAR_FIELD(isTable); - - return true; -} - -static bool -_equalPartitionElem(const PartitionElem *a, const PartitionElem *b) -{ - COMPARE_STRING_FIELD(name); - COMPARE_NODE_FIELD(expr); - COMPARE_NODE_FIELD(collation); - COMPARE_NODE_FIELD(opclass); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalPartitionSpec(const PartitionSpec *a, const PartitionSpec *b) -{ - COMPARE_STRING_FIELD(strategy); - COMPARE_NODE_FIELD(partParams); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalPartitionBoundSpec(const PartitionBoundSpec *a, const PartitionBoundSpec *b) -{ - COMPARE_SCALAR_FIELD(strategy); - COMPARE_SCALAR_FIELD(is_default); - COMPARE_SCALAR_FIELD(modulus); - COMPARE_SCALAR_FIELD(remainder); - COMPARE_NODE_FIELD(listdatums); - COMPARE_NODE_FIELD(lowerdatums); - COMPARE_NODE_FIELD(upperdatums); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalPartitionRangeDatum(const PartitionRangeDatum *a, const PartitionRangeDatum *b) -{ - COMPARE_SCALAR_FIELD(kind); - COMPARE_NODE_FIELD(value); - COMPARE_LOCATION_FIELD(location); - - return true; -} - -static bool -_equalPartitionCmd(const PartitionCmd *a, const PartitionCmd *b) -{ - COMPARE_NODE_FIELD(name); - COMPARE_NODE_FIELD(bound); - COMPARE_SCALAR_FIELD(concurrent); - - return true; -} - -/* - * Stuff from pg_list.h - */ - -static bool -_equalList(const List *a, const List *b) -{ - const ListCell *item_a; - const ListCell *item_b; - - /* - * Try to reject by simple scalar checks before grovelling through all the - * list elements... - */ - COMPARE_SCALAR_FIELD(type); - COMPARE_SCALAR_FIELD(length); - - /* - * We place the switch outside the loop for the sake of efficiency; this - * may not be worth doing... - */ - switch (a->type) - { - case T_List: - forboth(item_a, a, item_b, b) - { - if (!equal(lfirst(item_a), lfirst(item_b))) - return false; - } - break; - case T_IntList: - forboth(item_a, a, item_b, b) - { - if (lfirst_int(item_a) != lfirst_int(item_b)) - return false; - } - break; - case T_OidList: - forboth(item_a, a, item_b, b) - { - if (lfirst_oid(item_a) != lfirst_oid(item_b)) - return false; - } - break; - default: - elog(ERROR, "unrecognized list node type: %d", - (int) a->type); - return false; /* keep compiler quiet */ - } - - /* - * If we got here, we should have run out of elements of both lists - */ - Assert(item_a == NULL); - Assert(item_b == NULL); - - return true; -} - -/* - * Stuff from value.h - */ - -static bool -_equalInteger(const Integer *a, const Integer *b) -{ - COMPARE_SCALAR_FIELD(ival); - - return true; -} - -static bool -_equalFloat(const Float *a, const Float *b) -{ - COMPARE_STRING_FIELD(fval); - - return true; -} - -static bool -_equalBoolean(const Boolean *a, const Boolean *b) -{ - COMPARE_SCALAR_FIELD(boolval); - - return true; -} - -static bool -_equalString(const String *a, const String *b) -{ - COMPARE_STRING_FIELD(sval); - - return true; -} - -static bool -_equalBitString(const BitString *a, const BitString *b) -{ - COMPARE_STRING_FIELD(bsval); - - return true; -} - -/* - * equal - * returns whether two nodes are equal - */ -bool -equal(const void *a, const void *b) -{ - bool retval; - - if (a == b) - return true; - - /* - * note that a!=b, so only one of them can be NULL - */ - if (a == NULL || b == NULL) - return false; - - /* - * are they the same type of nodes? - */ - if (nodeTag(a) != nodeTag(b)) - return false; - - /* Guard against stack overflow due to overly complex expressions */ - check_stack_depth(); - - switch (nodeTag(a)) - { - /* - * PRIMITIVE NODES - */ - case T_Alias: - retval = _equalAlias(a, b); - break; - case T_RangeVar: - retval = _equalRangeVar(a, b); - break; - case T_TableFunc: - retval = _equalTableFunc(a, b); - break; - case T_IntoClause: - retval = _equalIntoClause(a, b); - break; - case T_Var: - retval = _equalVar(a, b); - break; - case T_Const: - retval = _equalConst(a, b); - break; - case T_Param: - retval = _equalParam(a, b); - break; - case T_Aggref: - retval = _equalAggref(a, b); - break; - case T_GroupingFunc: - retval = _equalGroupingFunc(a, b); - break; - case T_WindowFunc: - retval = _equalWindowFunc(a, b); - break; - case T_SubscriptingRef: - retval = _equalSubscriptingRef(a, b); - break; - case T_FuncExpr: - retval = _equalFuncExpr(a, b); - break; - case T_NamedArgExpr: - retval = _equalNamedArgExpr(a, b); - break; - case T_OpExpr: - retval = _equalOpExpr(a, b); - break; - case T_DistinctExpr: - retval = _equalDistinctExpr(a, b); - break; - case T_NullIfExpr: - retval = _equalNullIfExpr(a, b); - break; - case T_ScalarArrayOpExpr: - retval = _equalScalarArrayOpExpr(a, b); - break; - case T_BoolExpr: - retval = _equalBoolExpr(a, b); - break; - case T_SubLink: - retval = _equalSubLink(a, b); - break; - case T_SubPlan: - retval = _equalSubPlan(a, b); - break; - case T_AlternativeSubPlan: - retval = _equalAlternativeSubPlan(a, b); - break; - case T_FieldSelect: - retval = _equalFieldSelect(a, b); - break; - case T_FieldStore: - retval = _equalFieldStore(a, b); - break; - case T_RelabelType: - retval = _equalRelabelType(a, b); - break; - case T_CoerceViaIO: - retval = _equalCoerceViaIO(a, b); - break; - case T_ArrayCoerceExpr: - retval = _equalArrayCoerceExpr(a, b); - break; - case T_ConvertRowtypeExpr: - retval = _equalConvertRowtypeExpr(a, b); - break; - case T_CollateExpr: - retval = _equalCollateExpr(a, b); - break; - case T_CaseExpr: - retval = _equalCaseExpr(a, b); - break; - case T_CaseWhen: - retval = _equalCaseWhen(a, b); - break; - case T_CaseTestExpr: - retval = _equalCaseTestExpr(a, b); - break; - case T_ArrayExpr: - retval = _equalArrayExpr(a, b); - break; - case T_RowExpr: - retval = _equalRowExpr(a, b); - break; - case T_RowCompareExpr: - retval = _equalRowCompareExpr(a, b); - break; - case T_CoalesceExpr: - retval = _equalCoalesceExpr(a, b); - break; - case T_MinMaxExpr: - retval = _equalMinMaxExpr(a, b); - break; - case T_SQLValueFunction: - retval = _equalSQLValueFunction(a, b); - break; - case T_XmlExpr: - retval = _equalXmlExpr(a, b); - break; - case T_NullTest: - retval = _equalNullTest(a, b); - break; - case T_BooleanTest: - retval = _equalBooleanTest(a, b); - break; - case T_CoerceToDomain: - retval = _equalCoerceToDomain(a, b); - break; - case T_CoerceToDomainValue: - retval = _equalCoerceToDomainValue(a, b); - break; - case T_SetToDefault: - retval = _equalSetToDefault(a, b); - break; - case T_CurrentOfExpr: - retval = _equalCurrentOfExpr(a, b); - break; - case T_NextValueExpr: - retval = _equalNextValueExpr(a, b); - break; - case T_InferenceElem: - retval = _equalInferenceElem(a, b); - break; - case T_TargetEntry: - retval = _equalTargetEntry(a, b); - break; - case T_RangeTblRef: - retval = _equalRangeTblRef(a, b); - break; - case T_FromExpr: - retval = _equalFromExpr(a, b); - break; - case T_OnConflictExpr: - retval = _equalOnConflictExpr(a, b); - break; - case T_JoinExpr: - retval = _equalJoinExpr(a, b); - break; - - /* - * RELATION NODES - */ - case T_PathKey: - retval = _equalPathKey(a, b); - break; - case T_RestrictInfo: - retval = _equalRestrictInfo(a, b); - break; - case T_PlaceHolderVar: - retval = _equalPlaceHolderVar(a, b); - break; - case T_SpecialJoinInfo: - retval = _equalSpecialJoinInfo(a, b); - break; - case T_AppendRelInfo: - retval = _equalAppendRelInfo(a, b); - break; - case T_PlaceHolderInfo: - retval = _equalPlaceHolderInfo(a, b); - break; + switch (nodeTag(a)) + { +#include "equalfuncs.switch.c" case T_List: case T_IntList: case T_OidList: + case T_XidList: retval = _equalList(a, b); break; - case T_Integer: - retval = _equalInteger(a, b); - break; - case T_Float: - retval = _equalFloat(a, b); - break; - case T_Boolean: - retval = _equalBoolean(a, b); - break; - case T_String: - retval = _equalString(a, b); - break; - case T_BitString: - retval = _equalBitString(a, b); - break; - - /* - * EXTENSIBLE NODES - */ - case T_ExtensibleNode: - retval = _equalExtensibleNode(a, b); - break; - - /* - * PARSE NODES - */ - case T_Query: - retval = _equalQuery(a, b); - break; - case T_RawStmt: - retval = _equalRawStmt(a, b); - break; - case T_InsertStmt: - retval = _equalInsertStmt(a, b); - break; - case T_DeleteStmt: - retval = _equalDeleteStmt(a, b); - break; - case T_UpdateStmt: - retval = _equalUpdateStmt(a, b); - break; - case T_MergeStmt: - retval = _equalMergeStmt(a, b); - break; - case T_SelectStmt: - retval = _equalSelectStmt(a, b); - break; - case T_SetOperationStmt: - retval = _equalSetOperationStmt(a, b); - break; - case T_ReturnStmt: - retval = _equalReturnStmt(a, b); - break; - case T_PLAssignStmt: - retval = _equalPLAssignStmt(a, b); - break; - case T_AlterTableStmt: - retval = _equalAlterTableStmt(a, b); - break; - case T_AlterTableCmd: - retval = _equalAlterTableCmd(a, b); - break; - case T_AlterCollationStmt: - retval = _equalAlterCollationStmt(a, b); - break; - case T_AlterDomainStmt: - retval = _equalAlterDomainStmt(a, b); - break; - case T_GrantStmt: - retval = _equalGrantStmt(a, b); - break; - case T_GrantRoleStmt: - retval = _equalGrantRoleStmt(a, b); - break; - case T_AlterDefaultPrivilegesStmt: - retval = _equalAlterDefaultPrivilegesStmt(a, b); - break; - case T_DeclareCursorStmt: - retval = _equalDeclareCursorStmt(a, b); - break; - case T_ClosePortalStmt: - retval = _equalClosePortalStmt(a, b); - break; - case T_CallStmt: - retval = _equalCallStmt(a, b); - break; - case T_ClusterStmt: - retval = _equalClusterStmt(a, b); - break; - case T_CopyStmt: - retval = _equalCopyStmt(a, b); - break; - case T_CreateStmt: - retval = _equalCreateStmt(a, b); - break; - case T_TableLikeClause: - retval = _equalTableLikeClause(a, b); - break; - case T_DefineStmt: - retval = _equalDefineStmt(a, b); - break; - case T_DropStmt: - retval = _equalDropStmt(a, b); - break; - case T_TruncateStmt: - retval = _equalTruncateStmt(a, b); - break; - case T_CommentStmt: - retval = _equalCommentStmt(a, b); - break; - case T_SecLabelStmt: - retval = _equalSecLabelStmt(a, b); - break; - case T_FetchStmt: - retval = _equalFetchStmt(a, b); - break; - case T_IndexStmt: - retval = _equalIndexStmt(a, b); - break; - case T_CreateStatsStmt: - retval = _equalCreateStatsStmt(a, b); - break; - case T_AlterStatsStmt: - retval = _equalAlterStatsStmt(a, b); - break; - case T_CreateFunctionStmt: - retval = _equalCreateFunctionStmt(a, b); - break; - case T_FunctionParameter: - retval = _equalFunctionParameter(a, b); - break; - case T_AlterFunctionStmt: - retval = _equalAlterFunctionStmt(a, b); - break; - case T_DoStmt: - retval = _equalDoStmt(a, b); - break; - case T_RenameStmt: - retval = _equalRenameStmt(a, b); - break; - case T_AlterObjectDependsStmt: - retval = _equalAlterObjectDependsStmt(a, b); - break; - case T_AlterObjectSchemaStmt: - retval = _equalAlterObjectSchemaStmt(a, b); - break; - case T_AlterOwnerStmt: - retval = _equalAlterOwnerStmt(a, b); - break; - case T_AlterOperatorStmt: - retval = _equalAlterOperatorStmt(a, b); - break; - case T_AlterTypeStmt: - retval = _equalAlterTypeStmt(a, b); - break; - case T_RuleStmt: - retval = _equalRuleStmt(a, b); - break; - case T_NotifyStmt: - retval = _equalNotifyStmt(a, b); - break; - case T_ListenStmt: - retval = _equalListenStmt(a, b); - break; - case T_UnlistenStmt: - retval = _equalUnlistenStmt(a, b); - break; - case T_TransactionStmt: - retval = _equalTransactionStmt(a, b); - break; - case T_CompositeTypeStmt: - retval = _equalCompositeTypeStmt(a, b); - break; - case T_CreateEnumStmt: - retval = _equalCreateEnumStmt(a, b); - break; - case T_CreateRangeStmt: - retval = _equalCreateRangeStmt(a, b); - break; - case T_AlterEnumStmt: - retval = _equalAlterEnumStmt(a, b); - break; - case T_ViewStmt: - retval = _equalViewStmt(a, b); - break; - case T_LoadStmt: - retval = _equalLoadStmt(a, b); - break; - case T_CreateDomainStmt: - retval = _equalCreateDomainStmt(a, b); - break; - case T_CreateOpClassStmt: - retval = _equalCreateOpClassStmt(a, b); - break; - case T_CreateOpClassItem: - retval = _equalCreateOpClassItem(a, b); - break; - case T_CreateOpFamilyStmt: - retval = _equalCreateOpFamilyStmt(a, b); - break; - case T_AlterOpFamilyStmt: - retval = _equalAlterOpFamilyStmt(a, b); - break; - case T_CreatedbStmt: - retval = _equalCreatedbStmt(a, b); - break; - case T_AlterDatabaseStmt: - retval = _equalAlterDatabaseStmt(a, b); - break; - case T_AlterDatabaseRefreshCollStmt: - retval = _equalAlterDatabaseRefreshCollStmt(a, b); - break; - case T_AlterDatabaseSetStmt: - retval = _equalAlterDatabaseSetStmt(a, b); - break; - case T_DropdbStmt: - retval = _equalDropdbStmt(a, b); - break; - case T_VacuumStmt: - retval = _equalVacuumStmt(a, b); - break; - case T_VacuumRelation: - retval = _equalVacuumRelation(a, b); - break; - case T_ExplainStmt: - retval = _equalExplainStmt(a, b); - break; - case T_CreateTableAsStmt: - retval = _equalCreateTableAsStmt(a, b); - break; - case T_RefreshMatViewStmt: - retval = _equalRefreshMatViewStmt(a, b); - break; - case T_ReplicaIdentityStmt: - retval = _equalReplicaIdentityStmt(a, b); - break; - case T_AlterSystemStmt: - retval = _equalAlterSystemStmt(a, b); - break; - case T_CreateSeqStmt: - retval = _equalCreateSeqStmt(a, b); - break; - case T_AlterSeqStmt: - retval = _equalAlterSeqStmt(a, b); - break; - case T_VariableSetStmt: - retval = _equalVariableSetStmt(a, b); - break; - case T_VariableShowStmt: - retval = _equalVariableShowStmt(a, b); - break; - case T_DiscardStmt: - retval = _equalDiscardStmt(a, b); - break; - case T_CreateTableSpaceStmt: - retval = _equalCreateTableSpaceStmt(a, b); - break; - case T_DropTableSpaceStmt: - retval = _equalDropTableSpaceStmt(a, b); - break; - case T_AlterTableSpaceOptionsStmt: - retval = _equalAlterTableSpaceOptionsStmt(a, b); - break; - case T_AlterTableMoveAllStmt: - retval = _equalAlterTableMoveAllStmt(a, b); - break; - case T_CreateExtensionStmt: - retval = _equalCreateExtensionStmt(a, b); - break; - case T_AlterExtensionStmt: - retval = _equalAlterExtensionStmt(a, b); - break; - case T_AlterExtensionContentsStmt: - retval = _equalAlterExtensionContentsStmt(a, b); - break; - case T_CreateFdwStmt: - retval = _equalCreateFdwStmt(a, b); - break; - case T_AlterFdwStmt: - retval = _equalAlterFdwStmt(a, b); - break; - case T_CreateForeignServerStmt: - retval = _equalCreateForeignServerStmt(a, b); - break; - case T_AlterForeignServerStmt: - retval = _equalAlterForeignServerStmt(a, b); - break; - case T_CreateUserMappingStmt: - retval = _equalCreateUserMappingStmt(a, b); - break; - case T_AlterUserMappingStmt: - retval = _equalAlterUserMappingStmt(a, b); - break; - case T_DropUserMappingStmt: - retval = _equalDropUserMappingStmt(a, b); - break; - case T_CreateForeignTableStmt: - retval = _equalCreateForeignTableStmt(a, b); - break; - case T_ImportForeignSchemaStmt: - retval = _equalImportForeignSchemaStmt(a, b); - break; - case T_CreateTransformStmt: - retval = _equalCreateTransformStmt(a, b); - break; - case T_CreateAmStmt: - retval = _equalCreateAmStmt(a, b); - break; - case T_CreateTrigStmt: - retval = _equalCreateTrigStmt(a, b); - break; - case T_CreateEventTrigStmt: - retval = _equalCreateEventTrigStmt(a, b); - break; - case T_AlterEventTrigStmt: - retval = _equalAlterEventTrigStmt(a, b); - break; - case T_CreatePLangStmt: - retval = _equalCreatePLangStmt(a, b); - break; - case T_CreateRoleStmt: - retval = _equalCreateRoleStmt(a, b); - break; - case T_AlterRoleStmt: - retval = _equalAlterRoleStmt(a, b); - break; - case T_AlterRoleSetStmt: - retval = _equalAlterRoleSetStmt(a, b); - break; - case T_DropRoleStmt: - retval = _equalDropRoleStmt(a, b); - break; - case T_LockStmt: - retval = _equalLockStmt(a, b); - break; - case T_ConstraintsSetStmt: - retval = _equalConstraintsSetStmt(a, b); - break; - case T_ReindexStmt: - retval = _equalReindexStmt(a, b); - break; - case T_CheckPointStmt: - retval = true; - break; - case T_CreateSchemaStmt: - retval = _equalCreateSchemaStmt(a, b); - break; - case T_CreateConversionStmt: - retval = _equalCreateConversionStmt(a, b); - break; - case T_CreateCastStmt: - retval = _equalCreateCastStmt(a, b); - break; - case T_PrepareStmt: - retval = _equalPrepareStmt(a, b); - break; - case T_ExecuteStmt: - retval = _equalExecuteStmt(a, b); - break; - case T_DeallocateStmt: - retval = _equalDeallocateStmt(a, b); - break; - case T_DropOwnedStmt: - retval = _equalDropOwnedStmt(a, b); - break; - case T_ReassignOwnedStmt: - retval = _equalReassignOwnedStmt(a, b); - break; - case T_AlterTSDictionaryStmt: - retval = _equalAlterTSDictionaryStmt(a, b); - break; - case T_AlterTSConfigurationStmt: - retval = _equalAlterTSConfigurationStmt(a, b); - break; - case T_CreatePolicyStmt: - retval = _equalCreatePolicyStmt(a, b); - break; - case T_AlterPolicyStmt: - retval = _equalAlterPolicyStmt(a, b); - break; - case T_CreatePublicationStmt: - retval = _equalCreatePublicationStmt(a, b); - break; - case T_AlterPublicationStmt: - retval = _equalAlterPublicationStmt(a, b); - break; - case T_CreateSubscriptionStmt: - retval = _equalCreateSubscriptionStmt(a, b); - break; - case T_AlterSubscriptionStmt: - retval = _equalAlterSubscriptionStmt(a, b); - break; - case T_DropSubscriptionStmt: - retval = _equalDropSubscriptionStmt(a, b); - break; - case T_A_Expr: - retval = _equalA_Expr(a, b); - break; - case T_ColumnRef: - retval = _equalColumnRef(a, b); - break; - case T_ParamRef: - retval = _equalParamRef(a, b); - break; - case T_A_Const: - retval = _equalA_Const(a, b); - break; - case T_FuncCall: - retval = _equalFuncCall(a, b); - break; - case T_A_Star: - retval = _equalA_Star(a, b); - break; - case T_A_Indices: - retval = _equalA_Indices(a, b); - break; - case T_A_Indirection: - retval = _equalA_Indirection(a, b); - break; - case T_A_ArrayExpr: - retval = _equalA_ArrayExpr(a, b); - break; - case T_ResTarget: - retval = _equalResTarget(a, b); - break; - case T_MultiAssignRef: - retval = _equalMultiAssignRef(a, b); - break; - case T_TypeCast: - retval = _equalTypeCast(a, b); - break; - case T_CollateClause: - retval = _equalCollateClause(a, b); - break; - case T_SortBy: - retval = _equalSortBy(a, b); - break; - case T_WindowDef: - retval = _equalWindowDef(a, b); - break; - case T_RangeSubselect: - retval = _equalRangeSubselect(a, b); - break; - case T_RangeFunction: - retval = _equalRangeFunction(a, b); - break; - case T_RangeTableSample: - retval = _equalRangeTableSample(a, b); - break; - case T_RangeTableFunc: - retval = _equalRangeTableFunc(a, b); - break; - case T_RangeTableFuncCol: - retval = _equalRangeTableFuncCol(a, b); - break; - case T_TypeName: - retval = _equalTypeName(a, b); - break; - case T_IndexElem: - retval = _equalIndexElem(a, b); - break; - case T_StatsElem: - retval = _equalStatsElem(a, b); - break; - case T_ColumnDef: - retval = _equalColumnDef(a, b); - break; - case T_Constraint: - retval = _equalConstraint(a, b); - break; - case T_DefElem: - retval = _equalDefElem(a, b); - break; - case T_LockingClause: - retval = _equalLockingClause(a, b); - break; - case T_RangeTblEntry: - retval = _equalRangeTblEntry(a, b); - break; - case T_RangeTblFunction: - retval = _equalRangeTblFunction(a, b); - break; - case T_TableSampleClause: - retval = _equalTableSampleClause(a, b); - break; - case T_WithCheckOption: - retval = _equalWithCheckOption(a, b); - break; - case T_SortGroupClause: - retval = _equalSortGroupClause(a, b); - break; - case T_GroupingSet: - retval = _equalGroupingSet(a, b); - break; - case T_WindowClause: - retval = _equalWindowClause(a, b); - break; - case T_RowMarkClause: - retval = _equalRowMarkClause(a, b); - break; - case T_WithClause: - retval = _equalWithClause(a, b); - break; - case T_InferClause: - retval = _equalInferClause(a, b); - break; - case T_OnConflictClause: - retval = _equalOnConflictClause(a, b); - break; - case T_CTESearchClause: - retval = _equalCTESearchClause(a, b); - break; - case T_CTECycleClause: - retval = _equalCTECycleClause(a, b); - break; - case T_CommonTableExpr: - retval = _equalCommonTableExpr(a, b); - break; - case T_MergeWhenClause: - retval = _equalMergeWhenClause(a, b); - break; - case T_MergeAction: - retval = _equalMergeAction(a, b); - break; - case T_ObjectWithArgs: - retval = _equalObjectWithArgs(a, b); - break; - case T_AccessPriv: - retval = _equalAccessPriv(a, b); - break; - case T_XmlSerialize: - retval = _equalXmlSerialize(a, b); - break; - case T_RoleSpec: - retval = _equalRoleSpec(a, b); - break; - case T_TriggerTransition: - retval = _equalTriggerTransition(a, b); - break; - case T_PartitionElem: - retval = _equalPartitionElem(a, b); - break; - case T_PartitionSpec: - retval = _equalPartitionSpec(a, b); - break; - case T_PartitionBoundSpec: - retval = _equalPartitionBoundSpec(a, b); - break; - case T_PartitionRangeDatum: - retval = _equalPartitionRangeDatum(a, b); - break; - case T_PartitionCmd: - retval = _equalPartitionCmd(a, b); - break; - case T_PublicationObjSpec: - retval = _equalPublicationObject(a, b); - break; - case T_PublicationTable: - retval = _equalPublicationTable(a, b); - break; - default: elog(ERROR, "unrecognized node type: %d", (int) nodeTag(a)); diff --git a/parser/src_backend_nodes_extensible.c b/parser/src_backend_nodes_extensible.c index e08fd155..cd8bb59a 100644 --- a/parser/src_backend_nodes_extensible.c +++ b/parser/src_backend_nodes_extensible.c @@ -1,8 +1,6 @@ /*-------------------------------------------------------------------- * Symbols referenced in this file: * - GetExtensibleNodeMethods - * - GetExtensibleNodeEntry - * - extensible_node_methods *-------------------------------------------------------------------- */ @@ -18,7 +16,7 @@ * and GetExtensibleNodeMethods to get information about a previously * registered type of extensible node. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -31,7 +29,6 @@ #include "nodes/extensible.h" #include "utils/hsearch.h" -static __thread HTAB *extensible_node_methods = NULL; @@ -59,40 +56,20 @@ typedef struct /* * An internal routine to get an ExtensibleNodeEntry by the given identifier */ -static const void * -GetExtensibleNodeEntry(HTAB *htable, const char *extnodename, bool missing_ok) -{ - ExtensibleNodeEntry *entry = NULL; - - if (htable != NULL) - entry = (ExtensibleNodeEntry *) hash_search(htable, - extnodename, - HASH_FIND, NULL); - if (!entry) - { - if (missing_ok) - return NULL; - ereport(ERROR, - (errcode(ERRCODE_UNDEFINED_OBJECT), - errmsg("ExtensibleNodeMethods \"%s\" was not registered", - extnodename))); - } - - return entry->extnodemethods; -} + /* * Get the methods for a given type of extensible node. */ + const ExtensibleNodeMethods * GetExtensibleNodeMethods(const char *extnodename, bool missing_ok) { - return (const ExtensibleNodeMethods *) - GetExtensibleNodeEntry(extensible_node_methods, - extnodename, - missing_ok); + return NULL; } + + /* * Get the methods for a given name of CustomScanMethods */ diff --git a/parser/src_backend_nodes_list.c b/parser/src_backend_nodes_list.c index 7c53c40c..c8a7a12a 100644 --- a/parser/src_backend_nodes_list.c +++ b/parser/src_backend_nodes_list.c @@ -31,7 +31,7 @@ * See comments in pg_list.h. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -79,6 +79,7 @@ #define IsPointerList(l) ((l) == NIL || IsA((l), List)) #define IsIntegerList(l) ((l) == NIL || IsA((l), IntList)) #define IsOidList(l) ((l) == NIL || IsA((l), OidList)) +#define IsXidList(l) ((l) == NIL || IsA((l), XidList)) #ifdef USE_ASSERT_CHECKING /* @@ -96,7 +97,8 @@ check_list_invariants(const List *list) Assert(list->type == T_List || list->type == T_IntList || - list->type == T_OidList); + list->type == T_OidList || + list->type == T_XidList); } #else #define check_list_invariants(l) ((void) 0) @@ -369,6 +371,11 @@ lappend(List *list, void *datum) */ +/* + * Append a TransactionId to the specified list. See lappend() + */ + + /* * Make room for a new cell at position 'pos' (measured from 0). * The data in the cell is left undefined, and must be filled in by the @@ -541,6 +548,11 @@ list_truncate(List *list, int new_size) */ +/* + * Return true iff the TransactionId 'datum' is a member of the list. + */ + + /* * Delete the n'th cell (counting from 0) in list. * diff --git a/parser/src_backend_nodes_makefuncs.c b/parser/src_backend_nodes_makefuncs.c index c52bef36..b2f1a2e1 100644 --- a/parser/src_backend_nodes_makefuncs.c +++ b/parser/src_backend_nodes_makefuncs.c @@ -11,6 +11,11 @@ * - makeTypeName * - makeFuncCall * - makeA_Expr + * - makeJsonFormat + * - makeJsonIsPredicate + * - makeJsonValueExpr + * - makeJsonEncoding + * - makeJsonKeyValue * - makeBoolExpr *-------------------------------------------------------------------- */ @@ -21,7 +26,7 @@ * creator functions for various nodes. The functions here are for the * most frequently created nodes. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -36,6 +41,7 @@ #include "catalog/pg_type.h" #include "nodes/makefuncs.h" #include "nodes/nodeFuncs.h" +#include "utils/errcodes.h" #include "utils/lsyscache.h" @@ -416,3 +422,91 @@ makeVacuumRelation(RangeVar *relation, Oid oid, List *va_cols) v->va_cols = va_cols; return v; } + +/* + * makeJsonFormat - + * creates a JsonFormat node + */ +JsonFormat * +makeJsonFormat(JsonFormatType type, JsonEncoding encoding, int location) +{ + JsonFormat *jf = makeNode(JsonFormat); + + jf->format_type = type; + jf->encoding = encoding; + jf->location = location; + + return jf; +} + +/* + * makeJsonValueExpr - + * creates a JsonValueExpr node + */ +JsonValueExpr * +makeJsonValueExpr(Expr *raw_expr, Expr *formatted_expr, + JsonFormat *format) +{ + JsonValueExpr *jve = makeNode(JsonValueExpr); + + jve->raw_expr = raw_expr; + jve->formatted_expr = formatted_expr; + jve->format = format; + + return jve; +} + +/* + * makeJsonEncoding - + * converts JSON encoding name to enum JsonEncoding + */ +JsonEncoding +makeJsonEncoding(char *name) +{ + if (!pg_strcasecmp(name, "utf8")) + return JS_ENC_UTF8; + if (!pg_strcasecmp(name, "utf16")) + return JS_ENC_UTF16; + if (!pg_strcasecmp(name, "utf32")) + return JS_ENC_UTF32; + + ereport(ERROR, + errcode(ERRCODE_INVALID_PARAMETER_VALUE), + errmsg("unrecognized JSON encoding: %s", name)); + + return JS_ENC_DEFAULT; +} + +/* + * makeJsonKeyValue - + * creates a JsonKeyValue node + */ +Node * +makeJsonKeyValue(Node *key, Node *value) +{ + JsonKeyValue *n = makeNode(JsonKeyValue); + + n->key = (Expr *) key; + n->value = castNode(JsonValueExpr, value); + + return (Node *) n; +} + +/* + * makeJsonIsPredicate - + * creates a JsonIsPredicate node + */ +Node * +makeJsonIsPredicate(Node *expr, JsonFormat *format, JsonValueType item_type, + bool unique_keys, int location) +{ + JsonIsPredicate *n = makeNode(JsonIsPredicate); + + n->expr = expr; + n->format = format; + n->item_type = item_type; + n->unique_keys = unique_keys; + n->location = location; + + return (Node *) n; +} diff --git a/parser/src_backend_nodes_nodeFuncs.c b/parser/src_backend_nodes_nodeFuncs.c index 2129609e..49a4c9e7 100644 --- a/parser/src_backend_nodes_nodeFuncs.c +++ b/parser/src_backend_nodes_nodeFuncs.c @@ -2,7 +2,7 @@ * Symbols referenced in this file: * - exprLocation * - leftmostLoc - * - raw_expression_tree_walker + * - raw_expression_tree_walker_impl *-------------------------------------------------------------------- */ @@ -11,7 +11,7 @@ * nodeFuncs.c * Various general-purpose manipulations of Node trees * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -35,10 +35,12 @@ static bool expression_returns_set_walker(Node *node, void *context); static int leftmostLoc(int loc1, int loc2); static bool fix_opfuncids_walker(Node *node, void *context); -static bool planstate_walk_subplans(List *plans, bool (*walker) (), +static bool planstate_walk_subplans(List *plans, + planstate_tree_walker_callback walker, void *context); static bool planstate_walk_members(PlanState **planstates, int nplans, - bool (*walker) (), void *context); + planstate_tree_walker_callback walker, + void *context); /* @@ -372,6 +374,18 @@ exprLocation(const Node *expr) exprLocation((Node *) xexpr->args)); } break; + case T_JsonFormat: + loc = ((const JsonFormat *) expr)->location; + break; + case T_JsonValueExpr: + loc = exprLocation((Node *) ((const JsonValueExpr *) expr)->raw_expr); + break; + case T_JsonConstructorExpr: + loc = ((const JsonConstructorExpr *) expr)->location; + break; + case T_JsonIsPredicate: + loc = ((const JsonIsPredicate *) expr)->location; + break; case T_NullTest: { const NullTest *nexpr = (const NullTest *) expr; @@ -532,6 +546,28 @@ exprLocation(const Node *expr) case T_CommonTableExpr: loc = ((const CommonTableExpr *) expr)->location; break; + case T_JsonKeyValue: + /* just use the key's location */ + loc = exprLocation((Node *) ((const JsonKeyValue *) expr)->key); + break; + case T_JsonObjectConstructor: + loc = ((const JsonObjectConstructor *) expr)->location; + break; + case T_JsonArrayConstructor: + loc = ((const JsonArrayConstructor *) expr)->location; + break; + case T_JsonArrayQueryConstructor: + loc = ((const JsonArrayQueryConstructor *) expr)->location; + break; + case T_JsonAggConstructor: + loc = ((const JsonAggConstructor *) expr)->location; + break; + case T_JsonObjectAgg: + loc = exprLocation((Node *) ((const JsonObjectAgg *) expr)->constructor); + break; + case T_JsonArrayAgg: + loc = exprLocation((Node *) ((const JsonArrayAgg *) expr)->constructor); + break; case T_PlaceHolderVar: /* just use argument's location */ loc = exprLocation((Node *) ((const PlaceHolderVar *) expr)->phexpr); @@ -721,7 +757,9 @@ leftmostLoc(int loc1, int loc2) * uses, but may need to be revisited in future. */ - +#define WALK(n) walker((Node *) (n), context) +#define LIST_WALK(l) expression_tree_walker_impl((Node *) (l), walker, context) +#undef LIST_WALK /* * query_tree_walker --- initiate a walk of a Query's expressions @@ -887,9 +925,9 @@ leftmostLoc(int loc1, int loc2) * statements can appear in CTEs. */ bool -raw_expression_tree_walker(Node *node, - bool (*walker) (), - void *context) +raw_expression_tree_walker_impl(Node *node, + tree_walker_callback walker, + void *context) { ListCell *temp; @@ -905,6 +943,7 @@ raw_expression_tree_walker(Node *node, switch (nodeTag(node)) { + case T_JsonFormat: case T_SetToDefault: case T_CurrentOfExpr: case T_SQLValueFunction: @@ -922,17 +961,17 @@ raw_expression_tree_walker(Node *node, /* we assume the colnames list isn't interesting */ break; case T_RangeVar: - return walker(((RangeVar *) node)->alias, context); + return WALK(((RangeVar *) node)->alias); case T_GroupingFunc: - return walker(((GroupingFunc *) node)->args, context); + return WALK(((GroupingFunc *) node)->args); case T_SubLink: { SubLink *sublink = (SubLink *) node; - if (walker(sublink->testexpr, context)) + if (WALK(sublink->testexpr)) return true; /* we assume the operName is not interesting */ - if (walker(sublink->subselect, context)) + if (WALK(sublink->subselect)) return true; } break; @@ -940,55 +979,85 @@ raw_expression_tree_walker(Node *node, { CaseExpr *caseexpr = (CaseExpr *) node; - if (walker(caseexpr->arg, context)) + if (WALK(caseexpr->arg)) return true; /* we assume walker doesn't care about CaseWhens, either */ foreach(temp, caseexpr->args) { CaseWhen *when = lfirst_node(CaseWhen, temp); - if (walker(when->expr, context)) + if (WALK(when->expr)) return true; - if (walker(when->result, context)) + if (WALK(when->result)) return true; } - if (walker(caseexpr->defresult, context)) + if (WALK(caseexpr->defresult)) return true; } break; case T_RowExpr: /* Assume colnames isn't interesting */ - return walker(((RowExpr *) node)->args, context); + return WALK(((RowExpr *) node)->args); case T_CoalesceExpr: - return walker(((CoalesceExpr *) node)->args, context); + return WALK(((CoalesceExpr *) node)->args); case T_MinMaxExpr: - return walker(((MinMaxExpr *) node)->args, context); + return WALK(((MinMaxExpr *) node)->args); case T_XmlExpr: { XmlExpr *xexpr = (XmlExpr *) node; - if (walker(xexpr->named_args, context)) + if (WALK(xexpr->named_args)) return true; /* we assume walker doesn't care about arg_names */ - if (walker(xexpr->args, context)) + if (WALK(xexpr->args)) + return true; + } + break; + case T_JsonReturning: + return WALK(((JsonReturning *) node)->format); + case T_JsonValueExpr: + { + JsonValueExpr *jve = (JsonValueExpr *) node; + + if (WALK(jve->raw_expr)) + return true; + if (WALK(jve->formatted_expr)) + return true; + if (WALK(jve->format)) + return true; + } + break; + case T_JsonConstructorExpr: + { + JsonConstructorExpr *ctor = (JsonConstructorExpr *) node; + + if (WALK(ctor->args)) + return true; + if (WALK(ctor->func)) + return true; + if (WALK(ctor->coercion)) + return true; + if (WALK(ctor->returning)) return true; } break; + case T_JsonIsPredicate: + return WALK(((JsonIsPredicate *) node)->expr); case T_NullTest: - return walker(((NullTest *) node)->arg, context); + return WALK(((NullTest *) node)->arg); case T_BooleanTest: - return walker(((BooleanTest *) node)->arg, context); + return WALK(((BooleanTest *) node)->arg); case T_JoinExpr: { JoinExpr *join = (JoinExpr *) node; - if (walker(join->larg, context)) + if (WALK(join->larg)) return true; - if (walker(join->rarg, context)) + if (WALK(join->rarg)) return true; - if (walker(join->quals, context)) + if (WALK(join->quals)) return true; - if (walker(join->alias, context)) + if (WALK(join->alias)) return true; /* using list is deemed uninteresting */ } @@ -997,18 +1066,18 @@ raw_expression_tree_walker(Node *node, { IntoClause *into = (IntoClause *) node; - if (walker(into->rel, context)) + if (WALK(into->rel)) return true; /* colNames, options are deemed uninteresting */ /* viewQuery should be null in raw parsetree, but check it */ - if (walker(into->viewQuery, context)) + if (WALK(into->viewQuery)) return true; } break; case T_List: foreach(temp, (List *) node) { - if (walker((Node *) lfirst(temp), context)) + if (WALK((Node *) lfirst(temp))) return true; } break; @@ -1016,17 +1085,17 @@ raw_expression_tree_walker(Node *node, { InsertStmt *stmt = (InsertStmt *) node; - if (walker(stmt->relation, context)) + if (WALK(stmt->relation)) return true; - if (walker(stmt->cols, context)) + if (WALK(stmt->cols)) return true; - if (walker(stmt->selectStmt, context)) + if (WALK(stmt->selectStmt)) return true; - if (walker(stmt->onConflictClause, context)) + if (WALK(stmt->onConflictClause)) return true; - if (walker(stmt->returningList, context)) + if (WALK(stmt->returningList)) return true; - if (walker(stmt->withClause, context)) + if (WALK(stmt->withClause)) return true; } break; @@ -1034,15 +1103,15 @@ raw_expression_tree_walker(Node *node, { DeleteStmt *stmt = (DeleteStmt *) node; - if (walker(stmt->relation, context)) + if (WALK(stmt->relation)) return true; - if (walker(stmt->usingClause, context)) + if (WALK(stmt->usingClause)) return true; - if (walker(stmt->whereClause, context)) + if (WALK(stmt->whereClause)) return true; - if (walker(stmt->returningList, context)) + if (WALK(stmt->returningList)) return true; - if (walker(stmt->withClause, context)) + if (WALK(stmt->withClause)) return true; } break; @@ -1050,17 +1119,17 @@ raw_expression_tree_walker(Node *node, { UpdateStmt *stmt = (UpdateStmt *) node; - if (walker(stmt->relation, context)) + if (WALK(stmt->relation)) return true; - if (walker(stmt->targetList, context)) + if (WALK(stmt->targetList)) return true; - if (walker(stmt->whereClause, context)) + if (WALK(stmt->whereClause)) return true; - if (walker(stmt->fromClause, context)) + if (WALK(stmt->fromClause)) return true; - if (walker(stmt->returningList, context)) + if (WALK(stmt->returningList)) return true; - if (walker(stmt->withClause, context)) + if (WALK(stmt->withClause)) return true; } break; @@ -1068,15 +1137,15 @@ raw_expression_tree_walker(Node *node, { MergeStmt *stmt = (MergeStmt *) node; - if (walker(stmt->relation, context)) + if (WALK(stmt->relation)) return true; - if (walker(stmt->sourceRelation, context)) + if (WALK(stmt->sourceRelation)) return true; - if (walker(stmt->joinCondition, context)) + if (WALK(stmt->joinCondition)) return true; - if (walker(stmt->mergeWhenClauses, context)) + if (WALK(stmt->mergeWhenClauses)) return true; - if (walker(stmt->withClause, context)) + if (WALK(stmt->withClause)) return true; } break; @@ -1084,11 +1153,11 @@ raw_expression_tree_walker(Node *node, { MergeWhenClause *mergeWhenClause = (MergeWhenClause *) node; - if (walker(mergeWhenClause->condition, context)) + if (WALK(mergeWhenClause->condition)) return true; - if (walker(mergeWhenClause->targetList, context)) + if (WALK(mergeWhenClause->targetList)) return true; - if (walker(mergeWhenClause->values, context)) + if (WALK(mergeWhenClause->values)) return true; } break; @@ -1096,37 +1165,37 @@ raw_expression_tree_walker(Node *node, { SelectStmt *stmt = (SelectStmt *) node; - if (walker(stmt->distinctClause, context)) + if (WALK(stmt->distinctClause)) return true; - if (walker(stmt->intoClause, context)) + if (WALK(stmt->intoClause)) return true; - if (walker(stmt->targetList, context)) + if (WALK(stmt->targetList)) return true; - if (walker(stmt->fromClause, context)) + if (WALK(stmt->fromClause)) return true; - if (walker(stmt->whereClause, context)) + if (WALK(stmt->whereClause)) return true; - if (walker(stmt->groupClause, context)) + if (WALK(stmt->groupClause)) return true; - if (walker(stmt->havingClause, context)) + if (WALK(stmt->havingClause)) return true; - if (walker(stmt->windowClause, context)) + if (WALK(stmt->windowClause)) return true; - if (walker(stmt->valuesLists, context)) + if (WALK(stmt->valuesLists)) return true; - if (walker(stmt->sortClause, context)) + if (WALK(stmt->sortClause)) return true; - if (walker(stmt->limitOffset, context)) + if (WALK(stmt->limitOffset)) return true; - if (walker(stmt->limitCount, context)) + if (WALK(stmt->limitCount)) return true; - if (walker(stmt->lockingClause, context)) + if (WALK(stmt->lockingClause)) return true; - if (walker(stmt->withClause, context)) + if (WALK(stmt->withClause)) return true; - if (walker(stmt->larg, context)) + if (WALK(stmt->larg)) return true; - if (walker(stmt->rarg, context)) + if (WALK(stmt->rarg)) return true; } break; @@ -1134,9 +1203,9 @@ raw_expression_tree_walker(Node *node, { PLAssignStmt *stmt = (PLAssignStmt *) node; - if (walker(stmt->indirection, context)) + if (WALK(stmt->indirection)) return true; - if (walker(stmt->val, context)) + if (WALK(stmt->val)) return true; } break; @@ -1144,9 +1213,9 @@ raw_expression_tree_walker(Node *node, { A_Expr *expr = (A_Expr *) node; - if (walker(expr->lexpr, context)) + if (WALK(expr->lexpr)) return true; - if (walker(expr->rexpr, context)) + if (WALK(expr->rexpr)) return true; /* operator name is deemed uninteresting */ } @@ -1155,7 +1224,7 @@ raw_expression_tree_walker(Node *node, { BoolExpr *expr = (BoolExpr *) node; - if (walker(expr->args, context)) + if (WALK(expr->args)) return true; } break; @@ -1166,26 +1235,26 @@ raw_expression_tree_walker(Node *node, { FuncCall *fcall = (FuncCall *) node; - if (walker(fcall->args, context)) + if (WALK(fcall->args)) return true; - if (walker(fcall->agg_order, context)) + if (WALK(fcall->agg_order)) return true; - if (walker(fcall->agg_filter, context)) + if (WALK(fcall->agg_filter)) return true; - if (walker(fcall->over, context)) + if (WALK(fcall->over)) return true; /* function name is deemed uninteresting */ } break; case T_NamedArgExpr: - return walker(((NamedArgExpr *) node)->arg, context); + return WALK(((NamedArgExpr *) node)->arg); case T_A_Indices: { A_Indices *indices = (A_Indices *) node; - if (walker(indices->lidx, context)) + if (WALK(indices->lidx)) return true; - if (walker(indices->uidx, context)) + if (WALK(indices->uidx)) return true; } break; @@ -1193,51 +1262,51 @@ raw_expression_tree_walker(Node *node, { A_Indirection *indir = (A_Indirection *) node; - if (walker(indir->arg, context)) + if (WALK(indir->arg)) return true; - if (walker(indir->indirection, context)) + if (WALK(indir->indirection)) return true; } break; case T_A_ArrayExpr: - return walker(((A_ArrayExpr *) node)->elements, context); + return WALK(((A_ArrayExpr *) node)->elements); case T_ResTarget: { ResTarget *rt = (ResTarget *) node; - if (walker(rt->indirection, context)) + if (WALK(rt->indirection)) return true; - if (walker(rt->val, context)) + if (WALK(rt->val)) return true; } break; case T_MultiAssignRef: - return walker(((MultiAssignRef *) node)->source, context); + return WALK(((MultiAssignRef *) node)->source); case T_TypeCast: { TypeCast *tc = (TypeCast *) node; - if (walker(tc->arg, context)) + if (WALK(tc->arg)) return true; - if (walker(tc->typeName, context)) + if (WALK(tc->typeName)) return true; } break; case T_CollateClause: - return walker(((CollateClause *) node)->arg, context); + return WALK(((CollateClause *) node)->arg); case T_SortBy: - return walker(((SortBy *) node)->node, context); + return WALK(((SortBy *) node)->node); case T_WindowDef: { WindowDef *wd = (WindowDef *) node; - if (walker(wd->partitionClause, context)) + if (WALK(wd->partitionClause)) return true; - if (walker(wd->orderClause, context)) + if (WALK(wd->orderClause)) return true; - if (walker(wd->startOffset, context)) + if (WALK(wd->startOffset)) return true; - if (walker(wd->endOffset, context)) + if (WALK(wd->endOffset)) return true; } break; @@ -1245,9 +1314,9 @@ raw_expression_tree_walker(Node *node, { RangeSubselect *rs = (RangeSubselect *) node; - if (walker(rs->subquery, context)) + if (WALK(rs->subquery)) return true; - if (walker(rs->alias, context)) + if (WALK(rs->alias)) return true; } break; @@ -1255,11 +1324,11 @@ raw_expression_tree_walker(Node *node, { RangeFunction *rf = (RangeFunction *) node; - if (walker(rf->functions, context)) + if (WALK(rf->functions)) return true; - if (walker(rf->alias, context)) + if (WALK(rf->alias)) return true; - if (walker(rf->coldeflist, context)) + if (WALK(rf->coldeflist)) return true; } break; @@ -1267,12 +1336,12 @@ raw_expression_tree_walker(Node *node, { RangeTableSample *rts = (RangeTableSample *) node; - if (walker(rts->relation, context)) + if (WALK(rts->relation)) return true; /* method name is deemed uninteresting */ - if (walker(rts->args, context)) + if (WALK(rts->args)) return true; - if (walker(rts->repeatable, context)) + if (WALK(rts->repeatable)) return true; } break; @@ -1280,15 +1349,15 @@ raw_expression_tree_walker(Node *node, { RangeTableFunc *rtf = (RangeTableFunc *) node; - if (walker(rtf->docexpr, context)) + if (WALK(rtf->docexpr)) return true; - if (walker(rtf->rowexpr, context)) + if (WALK(rtf->rowexpr)) return true; - if (walker(rtf->namespaces, context)) + if (WALK(rtf->namespaces)) return true; - if (walker(rtf->columns, context)) + if (WALK(rtf->columns)) return true; - if (walker(rtf->alias, context)) + if (WALK(rtf->alias)) return true; } break; @@ -1296,9 +1365,9 @@ raw_expression_tree_walker(Node *node, { RangeTableFuncCol *rtfc = (RangeTableFuncCol *) node; - if (walker(rtfc->colexpr, context)) + if (WALK(rtfc->colexpr)) return true; - if (walker(rtfc->coldefexpr, context)) + if (WALK(rtfc->coldefexpr)) return true; } break; @@ -1306,9 +1375,9 @@ raw_expression_tree_walker(Node *node, { TypeName *tn = (TypeName *) node; - if (walker(tn->typmods, context)) + if (WALK(tn->typmods)) return true; - if (walker(tn->arrayBounds, context)) + if (WALK(tn->arrayBounds)) return true; /* type name itself is deemed uninteresting */ } @@ -1317,13 +1386,11 @@ raw_expression_tree_walker(Node *node, { ColumnDef *coldef = (ColumnDef *) node; - if (walker(coldef->typeName, context)) - return true; - if (walker(coldef->compression, context)) + if (WALK(coldef->typeName)) return true; - if (walker(coldef->raw_default, context)) + if (WALK(coldef->raw_default)) return true; - if (walker(coldef->collClause, context)) + if (WALK(coldef->collClause)) return true; /* for now, constraints are ignored */ } @@ -1332,34 +1399,34 @@ raw_expression_tree_walker(Node *node, { IndexElem *indelem = (IndexElem *) node; - if (walker(indelem->expr, context)) + if (WALK(indelem->expr)) return true; /* collation and opclass names are deemed uninteresting */ } break; case T_GroupingSet: - return walker(((GroupingSet *) node)->content, context); + return WALK(((GroupingSet *) node)->content); case T_LockingClause: - return walker(((LockingClause *) node)->lockedRels, context); + return WALK(((LockingClause *) node)->lockedRels); case T_XmlSerialize: { XmlSerialize *xs = (XmlSerialize *) node; - if (walker(xs->expr, context)) + if (WALK(xs->expr)) return true; - if (walker(xs->typeName, context)) + if (WALK(xs->typeName)) return true; } break; case T_WithClause: - return walker(((WithClause *) node)->ctes, context); + return WALK(((WithClause *) node)->ctes); case T_InferClause: { InferClause *stmt = (InferClause *) node; - if (walker(stmt->indexElems, context)) + if (WALK(stmt->indexElems)) return true; - if (walker(stmt->whereClause, context)) + if (WALK(stmt->whereClause)) return true; } break; @@ -1367,17 +1434,101 @@ raw_expression_tree_walker(Node *node, { OnConflictClause *stmt = (OnConflictClause *) node; - if (walker(stmt->infer, context)) + if (WALK(stmt->infer)) return true; - if (walker(stmt->targetList, context)) + if (WALK(stmt->targetList)) return true; - if (walker(stmt->whereClause, context)) + if (WALK(stmt->whereClause)) return true; } break; case T_CommonTableExpr: /* search_clause and cycle_clause are not interesting here */ - return walker(((CommonTableExpr *) node)->ctequery, context); + return WALK(((CommonTableExpr *) node)->ctequery); + case T_JsonOutput: + { + JsonOutput *out = (JsonOutput *) node; + + if (WALK(out->typeName)) + return true; + if (WALK(out->returning)) + return true; + } + break; + case T_JsonKeyValue: + { + JsonKeyValue *jkv = (JsonKeyValue *) node; + + if (WALK(jkv->key)) + return true; + if (WALK(jkv->value)) + return true; + } + break; + case T_JsonObjectConstructor: + { + JsonObjectConstructor *joc = (JsonObjectConstructor *) node; + + if (WALK(joc->output)) + return true; + if (WALK(joc->exprs)) + return true; + } + break; + case T_JsonArrayConstructor: + { + JsonArrayConstructor *jac = (JsonArrayConstructor *) node; + + if (WALK(jac->output)) + return true; + if (WALK(jac->exprs)) + return true; + } + break; + case T_JsonAggConstructor: + { + JsonAggConstructor *ctor = (JsonAggConstructor *) node; + + if (WALK(ctor->output)) + return true; + if (WALK(ctor->agg_order)) + return true; + if (WALK(ctor->agg_filter)) + return true; + if (WALK(ctor->over)) + return true; + } + break; + case T_JsonObjectAgg: + { + JsonObjectAgg *joa = (JsonObjectAgg *) node; + + if (WALK(joa->constructor)) + return true; + if (WALK(joa->arg)) + return true; + } + break; + case T_JsonArrayAgg: + { + JsonArrayAgg *jaa = (JsonArrayAgg *) node; + + if (WALK(jaa->constructor)) + return true; + if (WALK(jaa->arg)) + return true; + } + break; + case T_JsonArrayQueryConstructor: + { + JsonArrayQueryConstructor *jaqc = (JsonArrayQueryConstructor *) node; + + if (WALK(jaqc->output)) + return true; + if (WALK(jaqc->query)) + return true; + } + break; default: elog(ERROR, "unrecognized node type: %d", (int) nodeTag(node)); @@ -1392,7 +1543,7 @@ raw_expression_tree_walker(Node *node, * The walker has already visited the current node, and so we need only * recurse into any sub-nodes it has. */ - +#define PSWALK(n) walker(n, context) /* * Walk a list of SubPlans (or initPlans, which also use SubPlan nodes). diff --git a/parser/src_backend_nodes_value.c b/parser/src_backend_nodes_value.c index 662b3d2b..5a972455 100644 --- a/parser/src_backend_nodes_value.c +++ b/parser/src_backend_nodes_value.c @@ -14,7 +14,7 @@ * implementation of value nodes * * - * Copyright (c) 2003-2022, PostgreSQL Global Development Group + * Copyright (c) 2003-2023, PostgreSQL Global Development Group * * * IDENTIFICATION diff --git a/parser/src_backend_parser_gram.c b/parser/src_backend_parser_gram.c index 41f1050e..8770b665 100644 --- a/parser/src_backend_parser_gram.c +++ b/parser/src_backend_parser_gram.c @@ -20,6 +20,7 @@ * - processCASbits * - makeRangeVarFromAnyName * - SplitColQualList + * - parsePartitionStrategy * - doNegateFloat * - makeRoleSpec * - mergeTableFuncParameters @@ -154,474 +155,487 @@ SQL_COMMENT = 275, C_COMMENT = 276, ABORT_P = 277, - ABSOLUTE_P = 278, - ACCESS = 279, - ACTION = 280, - ADD_P = 281, - ADMIN = 282, - AFTER = 283, - AGGREGATE = 284, - ALL = 285, - ALSO = 286, - ALTER = 287, - ALWAYS = 288, - ANALYSE = 289, - ANALYZE = 290, - AND = 291, - ANY = 292, - ARRAY = 293, - AS = 294, - ASC = 295, - ASENSITIVE = 296, - ASSERTION = 297, - ASSIGNMENT = 298, - ASYMMETRIC = 299, - ATOMIC = 300, - AT = 301, - ATTACH = 302, - ATTRIBUTE = 303, - AUTHORIZATION = 304, - BACKWARD = 305, - BEFORE = 306, - BEGIN_P = 307, - BETWEEN = 308, - BIGINT = 309, - BINARY = 310, - BIT = 311, - BOOLEAN_P = 312, - BOTH = 313, - BREADTH = 314, - BY = 315, - CACHE = 316, - CALL = 317, - CALLED = 318, - CASCADE = 319, - CASCADED = 320, - CASE = 321, - CAST = 322, - CATALOG_P = 323, - CHAIN = 324, - CHAR_P = 325, - CHARACTER = 326, - CHARACTERISTICS = 327, - CHECK = 328, - CHECKPOINT = 329, - CLASS = 330, - CLOSE = 331, - CLUSTER = 332, - COALESCE = 333, - COLLATE = 334, - COLLATION = 335, - COLUMN = 336, - COLUMNS = 337, - COMMENT = 338, - COMMENTS = 339, - COMMIT = 340, - COMMITTED = 341, - COMPRESSION = 342, - CONCURRENTLY = 343, - CONFIGURATION = 344, - CONFLICT = 345, - CONNECTION = 346, - CONSTRAINT = 347, - CONSTRAINTS = 348, - CONTENT_P = 349, - CONTINUE_P = 350, - CONVERSION_P = 351, - COPY = 352, - COST = 353, - CREATE = 354, - CROSS = 355, - CSV = 356, - CUBE = 357, - CURRENT_P = 358, - CURRENT_CATALOG = 359, - CURRENT_DATE = 360, - CURRENT_ROLE = 361, - CURRENT_SCHEMA = 362, - CURRENT_TIME = 363, - CURRENT_TIMESTAMP = 364, - CURRENT_USER = 365, - CURSOR = 366, - CYCLE = 367, - DATA_P = 368, - DATABASE = 369, - DAY_P = 370, - DEALLOCATE = 371, - DEC = 372, - DECIMAL_P = 373, - DECLARE = 374, - DEFAULT = 375, - DEFAULTS = 376, - DEFERRABLE = 377, - DEFERRED = 378, - DEFINER = 379, - DELETE_P = 380, - DELIMITER = 381, - DELIMITERS = 382, - DEPENDS = 383, - DEPTH = 384, - DESC = 385, - DETACH = 386, - DICTIONARY = 387, - DISABLE_P = 388, - DISCARD = 389, - DISTINCT = 390, - DO = 391, - DOCUMENT_P = 392, - DOMAIN_P = 393, - DOUBLE_P = 394, - DROP = 395, - EACH = 396, - ELSE = 397, - ENABLE_P = 398, - ENCODING = 399, - ENCRYPTED = 400, - END_P = 401, - ENUM_P = 402, - ESCAPE = 403, - EVENT = 404, - EXCEPT = 405, - EXCLUDE = 406, - EXCLUDING = 407, - EXCLUSIVE = 408, - EXECUTE = 409, - EXISTS = 410, - EXPLAIN = 411, - EXPRESSION = 412, - EXTENSION = 413, - EXTERNAL = 414, - EXTRACT = 415, - FALSE_P = 416, - FAMILY = 417, - FETCH = 418, - FILTER = 419, - FINALIZE = 420, - FIRST_P = 421, - FLOAT_P = 422, - FOLLOWING = 423, - FOR = 424, - FORCE = 425, - FOREIGN = 426, - FORWARD = 427, - FREEZE = 428, - FROM = 429, - FULL = 430, - FUNCTION = 431, - FUNCTIONS = 432, - GENERATED = 433, - GLOBAL = 434, - GRANT = 435, - GRANTED = 436, - GREATEST = 437, - GROUP_P = 438, - GROUPING = 439, - GROUPS = 440, - HANDLER = 441, - HAVING = 442, - HEADER_P = 443, - HOLD = 444, - HOUR_P = 445, - IDENTITY_P = 446, - IF_P = 447, - ILIKE = 448, - IMMEDIATE = 449, - IMMUTABLE = 450, - IMPLICIT_P = 451, - IMPORT_P = 452, - IN_P = 453, - INCLUDE = 454, - INCLUDING = 455, - INCREMENT = 456, - INDEX = 457, - INDEXES = 458, - INHERIT = 459, - INHERITS = 460, - INITIALLY = 461, - INLINE_P = 462, - INNER_P = 463, - INOUT = 464, - INPUT_P = 465, - INSENSITIVE = 466, - INSERT = 467, - INSTEAD = 468, - INT_P = 469, - INTEGER = 470, - INTERSECT = 471, - INTERVAL = 472, - INTO = 473, - INVOKER = 474, - IS = 475, - ISNULL = 476, - ISOLATION = 477, - JOIN = 478, - KEY = 479, - LABEL = 480, - LANGUAGE = 481, - LARGE_P = 482, - LAST_P = 483, - LATERAL_P = 484, - LEADING = 485, - LEAKPROOF = 486, - LEAST = 487, - LEFT = 488, - LEVEL = 489, - LIKE = 490, - LIMIT = 491, - LISTEN = 492, - LOAD = 493, - LOCAL = 494, - LOCALTIME = 495, - LOCALTIMESTAMP = 496, - LOCATION = 497, - LOCK_P = 498, - LOCKED = 499, - LOGGED = 500, - MAPPING = 501, - MATCH = 502, - MATCHED = 503, - MATERIALIZED = 504, - MAXVALUE = 505, - MERGE = 506, - METHOD = 507, - MINUTE_P = 508, - MINVALUE = 509, - MODE = 510, - MONTH_P = 511, - MOVE = 512, - NAME_P = 513, - NAMES = 514, - NATIONAL = 515, - NATURAL = 516, - NCHAR = 517, - NEW = 518, - NEXT = 519, - NFC = 520, - NFD = 521, - NFKC = 522, - NFKD = 523, - NO = 524, - NONE = 525, - NORMALIZE = 526, - NORMALIZED = 527, - NOT = 528, - NOTHING = 529, - NOTIFY = 530, - NOTNULL = 531, - NOWAIT = 532, - NULL_P = 533, - NULLIF = 534, - NULLS_P = 535, - NUMERIC = 536, - OBJECT_P = 537, - OF = 538, - OFF = 539, - OFFSET = 540, - OIDS = 541, - OLD = 542, - ON = 543, - ONLY = 544, - OPERATOR = 545, - OPTION = 546, - OPTIONS = 547, - OR = 548, - ORDER = 549, - ORDINALITY = 550, - OTHERS = 551, - OUT_P = 552, - OUTER_P = 553, - OVER = 554, - OVERLAPS = 555, - OVERLAY = 556, - OVERRIDING = 557, - OWNED = 558, - OWNER = 559, - PARALLEL = 560, - PARAMETER = 561, - PARSER = 562, - PARTIAL = 563, - PARTITION = 564, - PASSING = 565, - PASSWORD = 566, - PLACING = 567, - PLANS = 568, - POLICY = 569, - POSITION = 570, - PRECEDING = 571, - PRECISION = 572, - PRESERVE = 573, - PREPARE = 574, - PREPARED = 575, - PRIMARY = 576, - PRIOR = 577, - PRIVILEGES = 578, - PROCEDURAL = 579, - PROCEDURE = 580, - PROCEDURES = 581, - PROGRAM = 582, - PUBLICATION = 583, - QUOTE = 584, - RANGE = 585, - READ = 586, - REAL = 587, - REASSIGN = 588, - RECHECK = 589, - RECURSIVE = 590, - REF_P = 591, - REFERENCES = 592, - REFERENCING = 593, - REFRESH = 594, - REINDEX = 595, - RELATIVE_P = 596, - RELEASE = 597, - RENAME = 598, - REPEATABLE = 599, - REPLACE = 600, - REPLICA = 601, - RESET = 602, - RESTART = 603, - RESTRICT = 604, - RETURN = 605, - RETURNING = 606, - RETURNS = 607, - REVOKE = 608, - RIGHT = 609, - ROLE = 610, - ROLLBACK = 611, - ROLLUP = 612, - ROUTINE = 613, - ROUTINES = 614, - ROW = 615, - ROWS = 616, - RULE = 617, - SAVEPOINT = 618, - SCHEMA = 619, - SCHEMAS = 620, - SCROLL = 621, - SEARCH = 622, - SECOND_P = 623, - SECURITY = 624, - SELECT = 625, - SEQUENCE = 626, - SEQUENCES = 627, - SERIALIZABLE = 628, - SERVER = 629, - SESSION = 630, - SESSION_USER = 631, - SET = 632, - SETS = 633, - SETOF = 634, - SHARE = 635, - SHOW = 636, - SIMILAR = 637, - SIMPLE = 638, - SKIP = 639, - SMALLINT = 640, - SNAPSHOT = 641, - SOME = 642, - SQL_P = 643, - STABLE = 644, - STANDALONE_P = 645, - START = 646, - STATEMENT = 647, - STATISTICS = 648, - STDIN = 649, - STDOUT = 650, - STORAGE = 651, - STORED = 652, - STRICT_P = 653, - STRIP_P = 654, - SUBSCRIPTION = 655, - SUBSTRING = 656, - SUPPORT = 657, - SYMMETRIC = 658, - SYSID = 659, - SYSTEM_P = 660, - TABLE = 661, - TABLES = 662, - TABLESAMPLE = 663, - TABLESPACE = 664, - TEMP = 665, - TEMPLATE = 666, - TEMPORARY = 667, - TEXT_P = 668, - THEN = 669, - TIES = 670, - TIME = 671, - TIMESTAMP = 672, - TO = 673, - TRAILING = 674, - TRANSACTION = 675, - TRANSFORM = 676, - TREAT = 677, - TRIGGER = 678, - TRIM = 679, - TRUE_P = 680, - TRUNCATE = 681, - TRUSTED = 682, - TYPE_P = 683, - TYPES_P = 684, - UESCAPE = 685, - UNBOUNDED = 686, - UNCOMMITTED = 687, - UNENCRYPTED = 688, - UNION = 689, - UNIQUE = 690, - UNKNOWN = 691, - UNLISTEN = 692, - UNLOGGED = 693, - UNTIL = 694, - UPDATE = 695, - USER = 696, - USING = 697, - VACUUM = 698, - VALID = 699, - VALIDATE = 700, - VALIDATOR = 701, - VALUE_P = 702, - VALUES = 703, - VARCHAR = 704, - VARIADIC = 705, - VARYING = 706, - VERBOSE = 707, - VERSION_P = 708, - VIEW = 709, - VIEWS = 710, - VOLATILE = 711, - WHEN = 712, - WHERE = 713, - WHITESPACE_P = 714, - WINDOW = 715, - WITH = 716, - WITHIN = 717, - WITHOUT = 718, - WORK = 719, - WRAPPER = 720, - WRITE = 721, - XML_P = 722, - XMLATTRIBUTES = 723, - XMLCONCAT = 724, - XMLELEMENT = 725, - XMLEXISTS = 726, - XMLFOREST = 727, - XMLNAMESPACES = 728, - XMLPARSE = 729, - XMLPI = 730, - XMLROOT = 731, - XMLSERIALIZE = 732, - XMLTABLE = 733, - YEAR_P = 734, - YES_P = 735, - ZONE = 736, - NOT_LA = 737, - NULLS_LA = 738, - WITH_LA = 739, - MODE_TYPE_NAME = 740, - MODE_PLPGSQL_EXPR = 741, - MODE_PLPGSQL_ASSIGN1 = 742, - MODE_PLPGSQL_ASSIGN2 = 743, - MODE_PLPGSQL_ASSIGN3 = 744, - UMINUS = 745 + ABSENT = 278, + ABSOLUTE_P = 279, + ACCESS = 280, + ACTION = 281, + ADD_P = 282, + ADMIN = 283, + AFTER = 284, + AGGREGATE = 285, + ALL = 286, + ALSO = 287, + ALTER = 288, + ALWAYS = 289, + ANALYSE = 290, + ANALYZE = 291, + AND = 292, + ANY = 293, + ARRAY = 294, + AS = 295, + ASC = 296, + ASENSITIVE = 297, + ASSERTION = 298, + ASSIGNMENT = 299, + ASYMMETRIC = 300, + ATOMIC = 301, + AT = 302, + ATTACH = 303, + ATTRIBUTE = 304, + AUTHORIZATION = 305, + BACKWARD = 306, + BEFORE = 307, + BEGIN_P = 308, + BETWEEN = 309, + BIGINT = 310, + BINARY = 311, + BIT = 312, + BOOLEAN_P = 313, + BOTH = 314, + BREADTH = 315, + BY = 316, + CACHE = 317, + CALL = 318, + CALLED = 319, + CASCADE = 320, + CASCADED = 321, + CASE = 322, + CAST = 323, + CATALOG_P = 324, + CHAIN = 325, + CHAR_P = 326, + CHARACTER = 327, + CHARACTERISTICS = 328, + CHECK = 329, + CHECKPOINT = 330, + CLASS = 331, + CLOSE = 332, + CLUSTER = 333, + COALESCE = 334, + COLLATE = 335, + COLLATION = 336, + COLUMN = 337, + COLUMNS = 338, + COMMENT = 339, + COMMENTS = 340, + COMMIT = 341, + COMMITTED = 342, + COMPRESSION = 343, + CONCURRENTLY = 344, + CONFIGURATION = 345, + CONFLICT = 346, + CONNECTION = 347, + CONSTRAINT = 348, + CONSTRAINTS = 349, + CONTENT_P = 350, + CONTINUE_P = 351, + CONVERSION_P = 352, + COPY = 353, + COST = 354, + CREATE = 355, + CROSS = 356, + CSV = 357, + CUBE = 358, + CURRENT_P = 359, + CURRENT_CATALOG = 360, + CURRENT_DATE = 361, + CURRENT_ROLE = 362, + CURRENT_SCHEMA = 363, + CURRENT_TIME = 364, + CURRENT_TIMESTAMP = 365, + CURRENT_USER = 366, + CURSOR = 367, + CYCLE = 368, + DATA_P = 369, + DATABASE = 370, + DAY_P = 371, + DEALLOCATE = 372, + DEC = 373, + DECIMAL_P = 374, + DECLARE = 375, + DEFAULT = 376, + DEFAULTS = 377, + DEFERRABLE = 378, + DEFERRED = 379, + DEFINER = 380, + DELETE_P = 381, + DELIMITER = 382, + DELIMITERS = 383, + DEPENDS = 384, + DEPTH = 385, + DESC = 386, + DETACH = 387, + DICTIONARY = 388, + DISABLE_P = 389, + DISCARD = 390, + DISTINCT = 391, + DO = 392, + DOCUMENT_P = 393, + DOMAIN_P = 394, + DOUBLE_P = 395, + DROP = 396, + EACH = 397, + ELSE = 398, + ENABLE_P = 399, + ENCODING = 400, + ENCRYPTED = 401, + END_P = 402, + ENUM_P = 403, + ESCAPE = 404, + EVENT = 405, + EXCEPT = 406, + EXCLUDE = 407, + EXCLUDING = 408, + EXCLUSIVE = 409, + EXECUTE = 410, + EXISTS = 411, + EXPLAIN = 412, + EXPRESSION = 413, + EXTENSION = 414, + EXTERNAL = 415, + EXTRACT = 416, + FALSE_P = 417, + FAMILY = 418, + FETCH = 419, + FILTER = 420, + FINALIZE = 421, + FIRST_P = 422, + FLOAT_P = 423, + FOLLOWING = 424, + FOR = 425, + FORCE = 426, + FOREIGN = 427, + FORMAT = 428, + FORWARD = 429, + FREEZE = 430, + FROM = 431, + FULL = 432, + FUNCTION = 433, + FUNCTIONS = 434, + GENERATED = 435, + GLOBAL = 436, + GRANT = 437, + GRANTED = 438, + GREATEST = 439, + GROUP_P = 440, + GROUPING = 441, + GROUPS = 442, + HANDLER = 443, + HAVING = 444, + HEADER_P = 445, + HOLD = 446, + HOUR_P = 447, + IDENTITY_P = 448, + IF_P = 449, + ILIKE = 450, + IMMEDIATE = 451, + IMMUTABLE = 452, + IMPLICIT_P = 453, + IMPORT_P = 454, + IN_P = 455, + INCLUDE = 456, + INCLUDING = 457, + INCREMENT = 458, + INDENT = 459, + INDEX = 460, + INDEXES = 461, + INHERIT = 462, + INHERITS = 463, + INITIALLY = 464, + INLINE_P = 465, + INNER_P = 466, + INOUT = 467, + INPUT_P = 468, + INSENSITIVE = 469, + INSERT = 470, + INSTEAD = 471, + INT_P = 472, + INTEGER = 473, + INTERSECT = 474, + INTERVAL = 475, + INTO = 476, + INVOKER = 477, + IS = 478, + ISNULL = 479, + ISOLATION = 480, + JOIN = 481, + JSON = 482, + JSON_ARRAY = 483, + JSON_ARRAYAGG = 484, + JSON_OBJECT = 485, + JSON_OBJECTAGG = 486, + KEY = 487, + KEYS = 488, + LABEL = 489, + LANGUAGE = 490, + LARGE_P = 491, + LAST_P = 492, + LATERAL_P = 493, + LEADING = 494, + LEAKPROOF = 495, + LEAST = 496, + LEFT = 497, + LEVEL = 498, + LIKE = 499, + LIMIT = 500, + LISTEN = 501, + LOAD = 502, + LOCAL = 503, + LOCALTIME = 504, + LOCALTIMESTAMP = 505, + LOCATION = 506, + LOCK_P = 507, + LOCKED = 508, + LOGGED = 509, + MAPPING = 510, + MATCH = 511, + MATCHED = 512, + MATERIALIZED = 513, + MAXVALUE = 514, + MERGE = 515, + METHOD = 516, + MINUTE_P = 517, + MINVALUE = 518, + MODE = 519, + MONTH_P = 520, + MOVE = 521, + NAME_P = 522, + NAMES = 523, + NATIONAL = 524, + NATURAL = 525, + NCHAR = 526, + NEW = 527, + NEXT = 528, + NFC = 529, + NFD = 530, + NFKC = 531, + NFKD = 532, + NO = 533, + NONE = 534, + NORMALIZE = 535, + NORMALIZED = 536, + NOT = 537, + NOTHING = 538, + NOTIFY = 539, + NOTNULL = 540, + NOWAIT = 541, + NULL_P = 542, + NULLIF = 543, + NULLS_P = 544, + NUMERIC = 545, + OBJECT_P = 546, + OF = 547, + OFF = 548, + OFFSET = 549, + OIDS = 550, + OLD = 551, + ON = 552, + ONLY = 553, + OPERATOR = 554, + OPTION = 555, + OPTIONS = 556, + OR = 557, + ORDER = 558, + ORDINALITY = 559, + OTHERS = 560, + OUT_P = 561, + OUTER_P = 562, + OVER = 563, + OVERLAPS = 564, + OVERLAY = 565, + OVERRIDING = 566, + OWNED = 567, + OWNER = 568, + PARALLEL = 569, + PARAMETER = 570, + PARSER = 571, + PARTIAL = 572, + PARTITION = 573, + PASSING = 574, + PASSWORD = 575, + PLACING = 576, + PLANS = 577, + POLICY = 578, + POSITION = 579, + PRECEDING = 580, + PRECISION = 581, + PRESERVE = 582, + PREPARE = 583, + PREPARED = 584, + PRIMARY = 585, + PRIOR = 586, + PRIVILEGES = 587, + PROCEDURAL = 588, + PROCEDURE = 589, + PROCEDURES = 590, + PROGRAM = 591, + PUBLICATION = 592, + QUOTE = 593, + RANGE = 594, + READ = 595, + REAL = 596, + REASSIGN = 597, + RECHECK = 598, + RECURSIVE = 599, + REF_P = 600, + REFERENCES = 601, + REFERENCING = 602, + REFRESH = 603, + REINDEX = 604, + RELATIVE_P = 605, + RELEASE = 606, + RENAME = 607, + REPEATABLE = 608, + REPLACE = 609, + REPLICA = 610, + RESET = 611, + RESTART = 612, + RESTRICT = 613, + RETURN = 614, + RETURNING = 615, + RETURNS = 616, + REVOKE = 617, + RIGHT = 618, + ROLE = 619, + ROLLBACK = 620, + ROLLUP = 621, + ROUTINE = 622, + ROUTINES = 623, + ROW = 624, + ROWS = 625, + RULE = 626, + SAVEPOINT = 627, + SCALAR = 628, + SCHEMA = 629, + SCHEMAS = 630, + SCROLL = 631, + SEARCH = 632, + SECOND_P = 633, + SECURITY = 634, + SELECT = 635, + SEQUENCE = 636, + SEQUENCES = 637, + SERIALIZABLE = 638, + SERVER = 639, + SESSION = 640, + SESSION_USER = 641, + SET = 642, + SETS = 643, + SETOF = 644, + SHARE = 645, + SHOW = 646, + SIMILAR = 647, + SIMPLE = 648, + SKIP = 649, + SMALLINT = 650, + SNAPSHOT = 651, + SOME = 652, + SQL_P = 653, + STABLE = 654, + STANDALONE_P = 655, + START = 656, + STATEMENT = 657, + STATISTICS = 658, + STDIN = 659, + STDOUT = 660, + STORAGE = 661, + STORED = 662, + STRICT_P = 663, + STRIP_P = 664, + SUBSCRIPTION = 665, + SUBSTRING = 666, + SUPPORT = 667, + SYMMETRIC = 668, + SYSID = 669, + SYSTEM_P = 670, + SYSTEM_USER = 671, + TABLE = 672, + TABLES = 673, + TABLESAMPLE = 674, + TABLESPACE = 675, + TEMP = 676, + TEMPLATE = 677, + TEMPORARY = 678, + TEXT_P = 679, + THEN = 680, + TIES = 681, + TIME = 682, + TIMESTAMP = 683, + TO = 684, + TRAILING = 685, + TRANSACTION = 686, + TRANSFORM = 687, + TREAT = 688, + TRIGGER = 689, + TRIM = 690, + TRUE_P = 691, + TRUNCATE = 692, + TRUSTED = 693, + TYPE_P = 694, + TYPES_P = 695, + UESCAPE = 696, + UNBOUNDED = 697, + UNCOMMITTED = 698, + UNENCRYPTED = 699, + UNION = 700, + UNIQUE = 701, + UNKNOWN = 702, + UNLISTEN = 703, + UNLOGGED = 704, + UNTIL = 705, + UPDATE = 706, + USER = 707, + USING = 708, + VACUUM = 709, + VALID = 710, + VALIDATE = 711, + VALIDATOR = 712, + VALUE_P = 713, + VALUES = 714, + VARCHAR = 715, + VARIADIC = 716, + VARYING = 717, + VERBOSE = 718, + VERSION_P = 719, + VIEW = 720, + VIEWS = 721, + VOLATILE = 722, + WHEN = 723, + WHERE = 724, + WHITESPACE_P = 725, + WINDOW = 726, + WITH = 727, + WITHIN = 728, + WITHOUT = 729, + WORK = 730, + WRAPPER = 731, + WRITE = 732, + XML_P = 733, + XMLATTRIBUTES = 734, + XMLCONCAT = 735, + XMLELEMENT = 736, + XMLEXISTS = 737, + XMLFOREST = 738, + XMLNAMESPACES = 739, + XMLPARSE = 740, + XMLPI = 741, + XMLROOT = 742, + XMLSERIALIZE = 743, + XMLTABLE = 744, + YEAR_P = 745, + YES_P = 746, + ZONE = 747, + FORMAT_LA = 748, + NOT_LA = 749, + NULLS_LA = 750, + WITH_LA = 751, + WITHOUT_LA = 752, + MODE_TYPE_NAME = 753, + MODE_PLPGSQL_EXPR = 754, + MODE_PLPGSQL_ASSIGN1 = 755, + MODE_PLPGSQL_ASSIGN2 = 756, + MODE_PLPGSQL_ASSIGN3 = 757, + UMINUS = 758 }; #endif /* Tokens. */ @@ -645,474 +659,487 @@ #define SQL_COMMENT 275 #define C_COMMENT 276 #define ABORT_P 277 -#define ABSOLUTE_P 278 -#define ACCESS 279 -#define ACTION 280 -#define ADD_P 281 -#define ADMIN 282 -#define AFTER 283 -#define AGGREGATE 284 -#define ALL 285 -#define ALSO 286 -#define ALTER 287 -#define ALWAYS 288 -#define ANALYSE 289 -#define ANALYZE 290 -#define AND 291 -#define ANY 292 -#define ARRAY 293 -#define AS 294 -#define ASC 295 -#define ASENSITIVE 296 -#define ASSERTION 297 -#define ASSIGNMENT 298 -#define ASYMMETRIC 299 -#define ATOMIC 300 -#define AT 301 -#define ATTACH 302 -#define ATTRIBUTE 303 -#define AUTHORIZATION 304 -#define BACKWARD 305 -#define BEFORE 306 -#define BEGIN_P 307 -#define BETWEEN 308 -#define BIGINT 309 -#define BINARY 310 -#define BIT 311 -#define BOOLEAN_P 312 -#define BOTH 313 -#define BREADTH 314 -#define BY 315 -#define CACHE 316 -#define CALL 317 -#define CALLED 318 -#define CASCADE 319 -#define CASCADED 320 -#define CASE 321 -#define CAST 322 -#define CATALOG_P 323 -#define CHAIN 324 -#define CHAR_P 325 -#define CHARACTER 326 -#define CHARACTERISTICS 327 -#define CHECK 328 -#define CHECKPOINT 329 -#define CLASS 330 -#define CLOSE 331 -#define CLUSTER 332 -#define COALESCE 333 -#define COLLATE 334 -#define COLLATION 335 -#define COLUMN 336 -#define COLUMNS 337 -#define COMMENT 338 -#define COMMENTS 339 -#define COMMIT 340 -#define COMMITTED 341 -#define COMPRESSION 342 -#define CONCURRENTLY 343 -#define CONFIGURATION 344 -#define CONFLICT 345 -#define CONNECTION 346 -#define CONSTRAINT 347 -#define CONSTRAINTS 348 -#define CONTENT_P 349 -#define CONTINUE_P 350 -#define CONVERSION_P 351 -#define COPY 352 -#define COST 353 -#define CREATE 354 -#define CROSS 355 -#define CSV 356 -#define CUBE 357 -#define CURRENT_P 358 -#define CURRENT_CATALOG 359 -#define CURRENT_DATE 360 -#define CURRENT_ROLE 361 -#define CURRENT_SCHEMA 362 -#define CURRENT_TIME 363 -#define CURRENT_TIMESTAMP 364 -#define CURRENT_USER 365 -#define CURSOR 366 -#define CYCLE 367 -#define DATA_P 368 -#define DATABASE 369 -#define DAY_P 370 -#define DEALLOCATE 371 -#define DEC 372 -#define DECIMAL_P 373 -#define DECLARE 374 -#define DEFAULT 375 -#define DEFAULTS 376 -#define DEFERRABLE 377 -#define DEFERRED 378 -#define DEFINER 379 -#define DELETE_P 380 -#define DELIMITER 381 -#define DELIMITERS 382 -#define DEPENDS 383 -#define DEPTH 384 -#define DESC 385 -#define DETACH 386 -#define DICTIONARY 387 -#define DISABLE_P 388 -#define DISCARD 389 -#define DISTINCT 390 -#define DO 391 -#define DOCUMENT_P 392 -#define DOMAIN_P 393 -#define DOUBLE_P 394 -#define DROP 395 -#define EACH 396 -#define ELSE 397 -#define ENABLE_P 398 -#define ENCODING 399 -#define ENCRYPTED 400 -#define END_P 401 -#define ENUM_P 402 -#define ESCAPE 403 -#define EVENT 404 -#define EXCEPT 405 -#define EXCLUDE 406 -#define EXCLUDING 407 -#define EXCLUSIVE 408 -#define EXECUTE 409 -#define EXISTS 410 -#define EXPLAIN 411 -#define EXPRESSION 412 -#define EXTENSION 413 -#define EXTERNAL 414 -#define EXTRACT 415 -#define FALSE_P 416 -#define FAMILY 417 -#define FETCH 418 -#define FILTER 419 -#define FINALIZE 420 -#define FIRST_P 421 -#define FLOAT_P 422 -#define FOLLOWING 423 -#define FOR 424 -#define FORCE 425 -#define FOREIGN 426 -#define FORWARD 427 -#define FREEZE 428 -#define FROM 429 -#define FULL 430 -#define FUNCTION 431 -#define FUNCTIONS 432 -#define GENERATED 433 -#define GLOBAL 434 -#define GRANT 435 -#define GRANTED 436 -#define GREATEST 437 -#define GROUP_P 438 -#define GROUPING 439 -#define GROUPS 440 -#define HANDLER 441 -#define HAVING 442 -#define HEADER_P 443 -#define HOLD 444 -#define HOUR_P 445 -#define IDENTITY_P 446 -#define IF_P 447 -#define ILIKE 448 -#define IMMEDIATE 449 -#define IMMUTABLE 450 -#define IMPLICIT_P 451 -#define IMPORT_P 452 -#define IN_P 453 -#define INCLUDE 454 -#define INCLUDING 455 -#define INCREMENT 456 -#define INDEX 457 -#define INDEXES 458 -#define INHERIT 459 -#define INHERITS 460 -#define INITIALLY 461 -#define INLINE_P 462 -#define INNER_P 463 -#define INOUT 464 -#define INPUT_P 465 -#define INSENSITIVE 466 -#define INSERT 467 -#define INSTEAD 468 -#define INT_P 469 -#define INTEGER 470 -#define INTERSECT 471 -#define INTERVAL 472 -#define INTO 473 -#define INVOKER 474 -#define IS 475 -#define ISNULL 476 -#define ISOLATION 477 -#define JOIN 478 -#define KEY 479 -#define LABEL 480 -#define LANGUAGE 481 -#define LARGE_P 482 -#define LAST_P 483 -#define LATERAL_P 484 -#define LEADING 485 -#define LEAKPROOF 486 -#define LEAST 487 -#define LEFT 488 -#define LEVEL 489 -#define LIKE 490 -#define LIMIT 491 -#define LISTEN 492 -#define LOAD 493 -#define LOCAL 494 -#define LOCALTIME 495 -#define LOCALTIMESTAMP 496 -#define LOCATION 497 -#define LOCK_P 498 -#define LOCKED 499 -#define LOGGED 500 -#define MAPPING 501 -#define MATCH 502 -#define MATCHED 503 -#define MATERIALIZED 504 -#define MAXVALUE 505 -#define MERGE 506 -#define METHOD 507 -#define MINUTE_P 508 -#define MINVALUE 509 -#define MODE 510 -#define MONTH_P 511 -#define MOVE 512 -#define NAME_P 513 -#define NAMES 514 -#define NATIONAL 515 -#define NATURAL 516 -#define NCHAR 517 -#define NEW 518 -#define NEXT 519 -#define NFC 520 -#define NFD 521 -#define NFKC 522 -#define NFKD 523 -#define NO 524 -#define NONE 525 -#define NORMALIZE 526 -#define NORMALIZED 527 -#define NOT 528 -#define NOTHING 529 -#define NOTIFY 530 -#define NOTNULL 531 -#define NOWAIT 532 -#define NULL_P 533 -#define NULLIF 534 -#define NULLS_P 535 -#define NUMERIC 536 -#define OBJECT_P 537 -#define OF 538 -#define OFF 539 -#define OFFSET 540 -#define OIDS 541 -#define OLD 542 -#define ON 543 -#define ONLY 544 -#define OPERATOR 545 -#define OPTION 546 -#define OPTIONS 547 -#define OR 548 -#define ORDER 549 -#define ORDINALITY 550 -#define OTHERS 551 -#define OUT_P 552 -#define OUTER_P 553 -#define OVER 554 -#define OVERLAPS 555 -#define OVERLAY 556 -#define OVERRIDING 557 -#define OWNED 558 -#define OWNER 559 -#define PARALLEL 560 -#define PARAMETER 561 -#define PARSER 562 -#define PARTIAL 563 -#define PARTITION 564 -#define PASSING 565 -#define PASSWORD 566 -#define PLACING 567 -#define PLANS 568 -#define POLICY 569 -#define POSITION 570 -#define PRECEDING 571 -#define PRECISION 572 -#define PRESERVE 573 -#define PREPARE 574 -#define PREPARED 575 -#define PRIMARY 576 -#define PRIOR 577 -#define PRIVILEGES 578 -#define PROCEDURAL 579 -#define PROCEDURE 580 -#define PROCEDURES 581 -#define PROGRAM 582 -#define PUBLICATION 583 -#define QUOTE 584 -#define RANGE 585 -#define READ 586 -#define REAL 587 -#define REASSIGN 588 -#define RECHECK 589 -#define RECURSIVE 590 -#define REF_P 591 -#define REFERENCES 592 -#define REFERENCING 593 -#define REFRESH 594 -#define REINDEX 595 -#define RELATIVE_P 596 -#define RELEASE 597 -#define RENAME 598 -#define REPEATABLE 599 -#define REPLACE 600 -#define REPLICA 601 -#define RESET 602 -#define RESTART 603 -#define RESTRICT 604 -#define RETURN 605 -#define RETURNING 606 -#define RETURNS 607 -#define REVOKE 608 -#define RIGHT 609 -#define ROLE 610 -#define ROLLBACK 611 -#define ROLLUP 612 -#define ROUTINE 613 -#define ROUTINES 614 -#define ROW 615 -#define ROWS 616 -#define RULE 617 -#define SAVEPOINT 618 -#define SCHEMA 619 -#define SCHEMAS 620 -#define SCROLL 621 -#define SEARCH 622 -#define SECOND_P 623 -#define SECURITY 624 -#define SELECT 625 -#define SEQUENCE 626 -#define SEQUENCES 627 -#define SERIALIZABLE 628 -#define SERVER 629 -#define SESSION 630 -#define SESSION_USER 631 -#define SET 632 -#define SETS 633 -#define SETOF 634 -#define SHARE 635 -#define SHOW 636 -#define SIMILAR 637 -#define SIMPLE 638 -#define SKIP 639 -#define SMALLINT 640 -#define SNAPSHOT 641 -#define SOME 642 -#define SQL_P 643 -#define STABLE 644 -#define STANDALONE_P 645 -#define START 646 -#define STATEMENT 647 -#define STATISTICS 648 -#define STDIN 649 -#define STDOUT 650 -#define STORAGE 651 -#define STORED 652 -#define STRICT_P 653 -#define STRIP_P 654 -#define SUBSCRIPTION 655 -#define SUBSTRING 656 -#define SUPPORT 657 -#define SYMMETRIC 658 -#define SYSID 659 -#define SYSTEM_P 660 -#define TABLE 661 -#define TABLES 662 -#define TABLESAMPLE 663 -#define TABLESPACE 664 -#define TEMP 665 -#define TEMPLATE 666 -#define TEMPORARY 667 -#define TEXT_P 668 -#define THEN 669 -#define TIES 670 -#define TIME 671 -#define TIMESTAMP 672 -#define TO 673 -#define TRAILING 674 -#define TRANSACTION 675 -#define TRANSFORM 676 -#define TREAT 677 -#define TRIGGER 678 -#define TRIM 679 -#define TRUE_P 680 -#define TRUNCATE 681 -#define TRUSTED 682 -#define TYPE_P 683 -#define TYPES_P 684 -#define UESCAPE 685 -#define UNBOUNDED 686 -#define UNCOMMITTED 687 -#define UNENCRYPTED 688 -#define UNION 689 -#define UNIQUE 690 -#define UNKNOWN 691 -#define UNLISTEN 692 -#define UNLOGGED 693 -#define UNTIL 694 -#define UPDATE 695 -#define USER 696 -#define USING 697 -#define VACUUM 698 -#define VALID 699 -#define VALIDATE 700 -#define VALIDATOR 701 -#define VALUE_P 702 -#define VALUES 703 -#define VARCHAR 704 -#define VARIADIC 705 -#define VARYING 706 -#define VERBOSE 707 -#define VERSION_P 708 -#define VIEW 709 -#define VIEWS 710 -#define VOLATILE 711 -#define WHEN 712 -#define WHERE 713 -#define WHITESPACE_P 714 -#define WINDOW 715 -#define WITH 716 -#define WITHIN 717 -#define WITHOUT 718 -#define WORK 719 -#define WRAPPER 720 -#define WRITE 721 -#define XML_P 722 -#define XMLATTRIBUTES 723 -#define XMLCONCAT 724 -#define XMLELEMENT 725 -#define XMLEXISTS 726 -#define XMLFOREST 727 -#define XMLNAMESPACES 728 -#define XMLPARSE 729 -#define XMLPI 730 -#define XMLROOT 731 -#define XMLSERIALIZE 732 -#define XMLTABLE 733 -#define YEAR_P 734 -#define YES_P 735 -#define ZONE 736 -#define NOT_LA 737 -#define NULLS_LA 738 -#define WITH_LA 739 -#define MODE_TYPE_NAME 740 -#define MODE_PLPGSQL_EXPR 741 -#define MODE_PLPGSQL_ASSIGN1 742 -#define MODE_PLPGSQL_ASSIGN2 743 -#define MODE_PLPGSQL_ASSIGN3 744 -#define UMINUS 745 +#define ABSENT 278 +#define ABSOLUTE_P 279 +#define ACCESS 280 +#define ACTION 281 +#define ADD_P 282 +#define ADMIN 283 +#define AFTER 284 +#define AGGREGATE 285 +#define ALL 286 +#define ALSO 287 +#define ALTER 288 +#define ALWAYS 289 +#define ANALYSE 290 +#define ANALYZE 291 +#define AND 292 +#define ANY 293 +#define ARRAY 294 +#define AS 295 +#define ASC 296 +#define ASENSITIVE 297 +#define ASSERTION 298 +#define ASSIGNMENT 299 +#define ASYMMETRIC 300 +#define ATOMIC 301 +#define AT 302 +#define ATTACH 303 +#define ATTRIBUTE 304 +#define AUTHORIZATION 305 +#define BACKWARD 306 +#define BEFORE 307 +#define BEGIN_P 308 +#define BETWEEN 309 +#define BIGINT 310 +#define BINARY 311 +#define BIT 312 +#define BOOLEAN_P 313 +#define BOTH 314 +#define BREADTH 315 +#define BY 316 +#define CACHE 317 +#define CALL 318 +#define CALLED 319 +#define CASCADE 320 +#define CASCADED 321 +#define CASE 322 +#define CAST 323 +#define CATALOG_P 324 +#define CHAIN 325 +#define CHAR_P 326 +#define CHARACTER 327 +#define CHARACTERISTICS 328 +#define CHECK 329 +#define CHECKPOINT 330 +#define CLASS 331 +#define CLOSE 332 +#define CLUSTER 333 +#define COALESCE 334 +#define COLLATE 335 +#define COLLATION 336 +#define COLUMN 337 +#define COLUMNS 338 +#define COMMENT 339 +#define COMMENTS 340 +#define COMMIT 341 +#define COMMITTED 342 +#define COMPRESSION 343 +#define CONCURRENTLY 344 +#define CONFIGURATION 345 +#define CONFLICT 346 +#define CONNECTION 347 +#define CONSTRAINT 348 +#define CONSTRAINTS 349 +#define CONTENT_P 350 +#define CONTINUE_P 351 +#define CONVERSION_P 352 +#define COPY 353 +#define COST 354 +#define CREATE 355 +#define CROSS 356 +#define CSV 357 +#define CUBE 358 +#define CURRENT_P 359 +#define CURRENT_CATALOG 360 +#define CURRENT_DATE 361 +#define CURRENT_ROLE 362 +#define CURRENT_SCHEMA 363 +#define CURRENT_TIME 364 +#define CURRENT_TIMESTAMP 365 +#define CURRENT_USER 366 +#define CURSOR 367 +#define CYCLE 368 +#define DATA_P 369 +#define DATABASE 370 +#define DAY_P 371 +#define DEALLOCATE 372 +#define DEC 373 +#define DECIMAL_P 374 +#define DECLARE 375 +#define DEFAULT 376 +#define DEFAULTS 377 +#define DEFERRABLE 378 +#define DEFERRED 379 +#define DEFINER 380 +#define DELETE_P 381 +#define DELIMITER 382 +#define DELIMITERS 383 +#define DEPENDS 384 +#define DEPTH 385 +#define DESC 386 +#define DETACH 387 +#define DICTIONARY 388 +#define DISABLE_P 389 +#define DISCARD 390 +#define DISTINCT 391 +#define DO 392 +#define DOCUMENT_P 393 +#define DOMAIN_P 394 +#define DOUBLE_P 395 +#define DROP 396 +#define EACH 397 +#define ELSE 398 +#define ENABLE_P 399 +#define ENCODING 400 +#define ENCRYPTED 401 +#define END_P 402 +#define ENUM_P 403 +#define ESCAPE 404 +#define EVENT 405 +#define EXCEPT 406 +#define EXCLUDE 407 +#define EXCLUDING 408 +#define EXCLUSIVE 409 +#define EXECUTE 410 +#define EXISTS 411 +#define EXPLAIN 412 +#define EXPRESSION 413 +#define EXTENSION 414 +#define EXTERNAL 415 +#define EXTRACT 416 +#define FALSE_P 417 +#define FAMILY 418 +#define FETCH 419 +#define FILTER 420 +#define FINALIZE 421 +#define FIRST_P 422 +#define FLOAT_P 423 +#define FOLLOWING 424 +#define FOR 425 +#define FORCE 426 +#define FOREIGN 427 +#define FORMAT 428 +#define FORWARD 429 +#define FREEZE 430 +#define FROM 431 +#define FULL 432 +#define FUNCTION 433 +#define FUNCTIONS 434 +#define GENERATED 435 +#define GLOBAL 436 +#define GRANT 437 +#define GRANTED 438 +#define GREATEST 439 +#define GROUP_P 440 +#define GROUPING 441 +#define GROUPS 442 +#define HANDLER 443 +#define HAVING 444 +#define HEADER_P 445 +#define HOLD 446 +#define HOUR_P 447 +#define IDENTITY_P 448 +#define IF_P 449 +#define ILIKE 450 +#define IMMEDIATE 451 +#define IMMUTABLE 452 +#define IMPLICIT_P 453 +#define IMPORT_P 454 +#define IN_P 455 +#define INCLUDE 456 +#define INCLUDING 457 +#define INCREMENT 458 +#define INDENT 459 +#define INDEX 460 +#define INDEXES 461 +#define INHERIT 462 +#define INHERITS 463 +#define INITIALLY 464 +#define INLINE_P 465 +#define INNER_P 466 +#define INOUT 467 +#define INPUT_P 468 +#define INSENSITIVE 469 +#define INSERT 470 +#define INSTEAD 471 +#define INT_P 472 +#define INTEGER 473 +#define INTERSECT 474 +#define INTERVAL 475 +#define INTO 476 +#define INVOKER 477 +#define IS 478 +#define ISNULL 479 +#define ISOLATION 480 +#define JOIN 481 +#define JSON 482 +#define JSON_ARRAY 483 +#define JSON_ARRAYAGG 484 +#define JSON_OBJECT 485 +#define JSON_OBJECTAGG 486 +#define KEY 487 +#define KEYS 488 +#define LABEL 489 +#define LANGUAGE 490 +#define LARGE_P 491 +#define LAST_P 492 +#define LATERAL_P 493 +#define LEADING 494 +#define LEAKPROOF 495 +#define LEAST 496 +#define LEFT 497 +#define LEVEL 498 +#define LIKE 499 +#define LIMIT 500 +#define LISTEN 501 +#define LOAD 502 +#define LOCAL 503 +#define LOCALTIME 504 +#define LOCALTIMESTAMP 505 +#define LOCATION 506 +#define LOCK_P 507 +#define LOCKED 508 +#define LOGGED 509 +#define MAPPING 510 +#define MATCH 511 +#define MATCHED 512 +#define MATERIALIZED 513 +#define MAXVALUE 514 +#define MERGE 515 +#define METHOD 516 +#define MINUTE_P 517 +#define MINVALUE 518 +#define MODE 519 +#define MONTH_P 520 +#define MOVE 521 +#define NAME_P 522 +#define NAMES 523 +#define NATIONAL 524 +#define NATURAL 525 +#define NCHAR 526 +#define NEW 527 +#define NEXT 528 +#define NFC 529 +#define NFD 530 +#define NFKC 531 +#define NFKD 532 +#define NO 533 +#define NONE 534 +#define NORMALIZE 535 +#define NORMALIZED 536 +#define NOT 537 +#define NOTHING 538 +#define NOTIFY 539 +#define NOTNULL 540 +#define NOWAIT 541 +#define NULL_P 542 +#define NULLIF 543 +#define NULLS_P 544 +#define NUMERIC 545 +#define OBJECT_P 546 +#define OF 547 +#define OFF 548 +#define OFFSET 549 +#define OIDS 550 +#define OLD 551 +#define ON 552 +#define ONLY 553 +#define OPERATOR 554 +#define OPTION 555 +#define OPTIONS 556 +#define OR 557 +#define ORDER 558 +#define ORDINALITY 559 +#define OTHERS 560 +#define OUT_P 561 +#define OUTER_P 562 +#define OVER 563 +#define OVERLAPS 564 +#define OVERLAY 565 +#define OVERRIDING 566 +#define OWNED 567 +#define OWNER 568 +#define PARALLEL 569 +#define PARAMETER 570 +#define PARSER 571 +#define PARTIAL 572 +#define PARTITION 573 +#define PASSING 574 +#define PASSWORD 575 +#define PLACING 576 +#define PLANS 577 +#define POLICY 578 +#define POSITION 579 +#define PRECEDING 580 +#define PRECISION 581 +#define PRESERVE 582 +#define PREPARE 583 +#define PREPARED 584 +#define PRIMARY 585 +#define PRIOR 586 +#define PRIVILEGES 587 +#define PROCEDURAL 588 +#define PROCEDURE 589 +#define PROCEDURES 590 +#define PROGRAM 591 +#define PUBLICATION 592 +#define QUOTE 593 +#define RANGE 594 +#define READ 595 +#define REAL 596 +#define REASSIGN 597 +#define RECHECK 598 +#define RECURSIVE 599 +#define REF_P 600 +#define REFERENCES 601 +#define REFERENCING 602 +#define REFRESH 603 +#define REINDEX 604 +#define RELATIVE_P 605 +#define RELEASE 606 +#define RENAME 607 +#define REPEATABLE 608 +#define REPLACE 609 +#define REPLICA 610 +#define RESET 611 +#define RESTART 612 +#define RESTRICT 613 +#define RETURN 614 +#define RETURNING 615 +#define RETURNS 616 +#define REVOKE 617 +#define RIGHT 618 +#define ROLE 619 +#define ROLLBACK 620 +#define ROLLUP 621 +#define ROUTINE 622 +#define ROUTINES 623 +#define ROW 624 +#define ROWS 625 +#define RULE 626 +#define SAVEPOINT 627 +#define SCALAR 628 +#define SCHEMA 629 +#define SCHEMAS 630 +#define SCROLL 631 +#define SEARCH 632 +#define SECOND_P 633 +#define SECURITY 634 +#define SELECT 635 +#define SEQUENCE 636 +#define SEQUENCES 637 +#define SERIALIZABLE 638 +#define SERVER 639 +#define SESSION 640 +#define SESSION_USER 641 +#define SET 642 +#define SETS 643 +#define SETOF 644 +#define SHARE 645 +#define SHOW 646 +#define SIMILAR 647 +#define SIMPLE 648 +#define SKIP 649 +#define SMALLINT 650 +#define SNAPSHOT 651 +#define SOME 652 +#define SQL_P 653 +#define STABLE 654 +#define STANDALONE_P 655 +#define START 656 +#define STATEMENT 657 +#define STATISTICS 658 +#define STDIN 659 +#define STDOUT 660 +#define STORAGE 661 +#define STORED 662 +#define STRICT_P 663 +#define STRIP_P 664 +#define SUBSCRIPTION 665 +#define SUBSTRING 666 +#define SUPPORT 667 +#define SYMMETRIC 668 +#define SYSID 669 +#define SYSTEM_P 670 +#define SYSTEM_USER 671 +#define TABLE 672 +#define TABLES 673 +#define TABLESAMPLE 674 +#define TABLESPACE 675 +#define TEMP 676 +#define TEMPLATE 677 +#define TEMPORARY 678 +#define TEXT_P 679 +#define THEN 680 +#define TIES 681 +#define TIME 682 +#define TIMESTAMP 683 +#define TO 684 +#define TRAILING 685 +#define TRANSACTION 686 +#define TRANSFORM 687 +#define TREAT 688 +#define TRIGGER 689 +#define TRIM 690 +#define TRUE_P 691 +#define TRUNCATE 692 +#define TRUSTED 693 +#define TYPE_P 694 +#define TYPES_P 695 +#define UESCAPE 696 +#define UNBOUNDED 697 +#define UNCOMMITTED 698 +#define UNENCRYPTED 699 +#define UNION 700 +#define UNIQUE 701 +#define UNKNOWN 702 +#define UNLISTEN 703 +#define UNLOGGED 704 +#define UNTIL 705 +#define UPDATE 706 +#define USER 707 +#define USING 708 +#define VACUUM 709 +#define VALID 710 +#define VALIDATE 711 +#define VALIDATOR 712 +#define VALUE_P 713 +#define VALUES 714 +#define VARCHAR 715 +#define VARIADIC 716 +#define VARYING 717 +#define VERBOSE 718 +#define VERSION_P 719 +#define VIEW 720 +#define VIEWS 721 +#define VOLATILE 722 +#define WHEN 723 +#define WHERE 724 +#define WHITESPACE_P 725 +#define WINDOW 726 +#define WITH 727 +#define WITHIN 728 +#define WITHOUT 729 +#define WORK 730 +#define WRAPPER 731 +#define WRITE 732 +#define XML_P 733 +#define XMLATTRIBUTES 734 +#define XMLCONCAT 735 +#define XMLELEMENT 736 +#define XMLEXISTS 737 +#define XMLFOREST 738 +#define XMLNAMESPACES 739 +#define XMLPARSE 740 +#define XMLPI 741 +#define XMLROOT 742 +#define XMLSERIALIZE 743 +#define XMLTABLE 744 +#define YEAR_P 745 +#define YES_P 746 +#define ZONE 747 +#define FORMAT_LA 748 +#define NOT_LA 749 +#define NULLS_LA 750 +#define WITH_LA 751 +#define WITHOUT_LA 752 +#define MODE_TYPE_NAME 753 +#define MODE_PLPGSQL_EXPR 754 +#define MODE_PLPGSQL_ASSIGN1 755 +#define MODE_PLPGSQL_ASSIGN2 756 +#define MODE_PLPGSQL_ASSIGN3 757 +#define UMINUS 758 @@ -1127,7 +1154,7 @@ * gram.y * POSTGRESQL BISON rules/actions * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -1176,9 +1203,9 @@ #include "catalog/pg_trigger.h" #include "commands/defrem.h" #include "commands/trigger.h" +#include "gramparse.h" #include "nodes/makefuncs.h" #include "nodes/nodeFuncs.h" -#include "parser/gramparse.h" #include "parser/parser.h" #include "storage/lmgr.h" #include "utils/date.h" @@ -1224,10 +1251,7 @@ /* * Bison doesn't allocate anything that needs to live across parser calls, * so we can easily have it use palloc instead of malloc. This prevents - * memory leaks if we error out during parsing. Note this only works with - * bison >= 2.0. However, in bison 1.875 the default is to use alloca() - * if possible, so there's not really much problem anyhow, at least if - * you're building with gcc. + * memory leaks if we error out during parsing. */ #define YYMALLOC palloc #define YYFREE pfree @@ -1331,8 +1355,7 @@ static Node *makeXmlExpr(XmlExprOp op, char *name, List *named_args, static List *mergeTableFuncParameters(List *func_args, List *columns); static TypeName *TableFuncTypeName(List *columns); static RangeVar *makeRangeVarFromAnyName(List *names, int position, core_yyscan_t yyscanner); -static RangeVar *makeRangeVarFromQualifiedName(char *name, List *rels, - int location, +static RangeVar *makeRangeVarFromQualifiedName(char *name, List *namelist, int location, core_yyscan_t yyscanner); static void SplitColQualList(List *qualList, List **constraintList, CollateClause **collClause, @@ -1340,6 +1363,7 @@ static void SplitColQualList(List *qualList, static void processCASbits(int cas_bits, int location, const char *constrType, bool *deferrable, bool *initdeferred, bool *not_valid, bool *no_inherit, core_yyscan_t yyscanner); +static PartitionStrategy parsePartitionStrategy(char *strategy); static void preprocess_pubobj_list(List *pubobjspec_list, core_yyscan_t yyscanner); static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); @@ -1366,7 +1390,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 237 "gram.y" +#line 234 "gram.y" { core_YYSTYPE core_yystype; /* these fields must match core_YYSTYPE: */ @@ -1418,7 +1442,7 @@ typedef union YYSTYPE struct KeyAction *keyaction; } /* Line 193 of yacc.c. */ -#line 1362 "gram.c" +#line 1385 "gram.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -1443,7 +1467,7 @@ typedef struct YYLTYPE /* Line 216 of yacc.c. */ -#line 1387 "gram.c" +#line 1410 "gram.c" #ifdef short # undef short @@ -1658,22 +1682,22 @@ union yyalloc #endif /* YYFINAL -- State number of the termination state. */ -#define YYFINAL 902 +#define YYFINAL 906 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 111265 +#define YYLAST 115760 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 508 +#define YYNTOKENS 521 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 688 +#define YYNNTS 706 /* YYNRULES -- Number of rules. */ -#define YYNRULES 3219 +#define YYNRULES 3296 /* YYNRULES -- Number of states. */ -#define YYNSTATES 6106 +#define YYNSTATES 6237 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 745 +#define YYMAXUTOK 758 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -1684,13 +1708,13 @@ static const yytype_uint16 yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 497, 2, 2, - 502, 503, 495, 493, 506, 494, 504, 496, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 507, 505, - 490, 492, 491, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 510, 2, 2, + 515, 516, 508, 506, 519, 507, 517, 509, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 520, 518, + 503, 505, 504, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 500, 2, 501, 498, 2, 2, 2, 2, 2, + 2, 513, 2, 514, 511, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -1755,7 +1779,8 @@ static const yytype_uint16 yytranslate[] = 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 499 + 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 499, 500, 501, 502, 512 }; #if YYDEBUG @@ -1776,1760 +1801,1800 @@ static const yytype_uint16 yyprhs[] = 206, 208, 210, 212, 214, 216, 218, 220, 222, 224, 226, 228, 230, 232, 234, 236, 238, 240, 242, 244, 246, 248, 250, 252, 254, 256, 258, 260, 262, 264, - 266, 268, 270, 272, 274, 276, 278, 279, 282, 288, - 290, 292, 293, 296, 297, 300, 301, 304, 307, 310, - 314, 318, 322, 324, 328, 332, 335, 337, 339, 342, - 345, 348, 352, 356, 362, 368, 374, 375, 379, 385, - 391, 397, 403, 407, 413, 417, 423, 427, 433, 439, - 446, 448, 450, 457, 462, 472, 480, 482, 483, 486, - 487, 489, 491, 493, 495, 497, 499, 502, 506, 510, - 513, 519, 521, 525, 529, 533, 537, 539, 543, 547, - 550, 553, 556, 559, 562, 565, 569, 573, 577, 581, - 585, 587, 591, 593, 597, 599, 601, 603, 606, 609, - 612, 614, 616, 618, 620, 622, 624, 626, 628, 632, - 638, 640, 642, 644, 646, 648, 649, 651, 653, 656, - 658, 661, 665, 668, 670, 672, 675, 677, 680, 682, - 685, 689, 694, 698, 701, 706, 708, 710, 712, 714, - 716, 719, 722, 725, 728, 731, 736, 743, 748, 755, - 766, 780, 785, 792, 797, 808, 822, 827, 834, 839, - 846, 852, 860, 872, 887, 893, 901, 903, 907, 912, - 917, 922, 926, 929, 935, 939, 946, 951, 958, 965, - 971, 979, 986, 993, 999, 1005, 1012, 1018, 1028, 1033, - 1039, 1047, 1054, 1059, 1068, 1073, 1076, 1081, 1085, 1092, - 1097, 1101, 1105, 1109, 1112, 1115, 1119, 1124, 1129, 1133, - 1137, 1141, 1145, 1149, 1153, 1158, 1163, 1167, 1170, 1174, - 1177, 1180, 1184, 1189, 1193, 1196, 1199, 1203, 1208, 1213, - 1218, 1224, 1226, 1230, 1233, 1235, 1237, 1238, 1241, 1242, - 1245, 1246, 1248, 1250, 1252, 1256, 1260, 1263, 1264, 1266, - 1270, 1274, 1276, 1282, 1286, 1288, 1291, 1293, 1297, 1300, - 1304, 1311, 1318, 1329, 1331, 1334, 1336, 1340, 1345, 1347, - 1351, 1356, 1363, 1368, 1377, 1380, 1383, 1395, 1405, 1407, - 1409, 1411, 1412, 1414, 1416, 1418, 1420, 1424, 1427, 1428, - 1430, 1432, 1436, 1440, 1442, 1444, 1448, 1452, 1456, 1460, - 1465, 1469, 1472, 1474, 1475, 1479, 1480, 1482, 1483, 1485, - 1489, 1492, 1494, 1496, 1498, 1502, 1503, 1505, 1509, 1511, - 1525, 1542, 1555, 1571, 1586, 1604, 1606, 1608, 1611, 1614, - 1617, 1620, 1622, 1623, 1625, 1626, 1630, 1631, 1633, 1637, - 1639, 1643, 1645, 1647, 1649, 1651, 1653, 1659, 1662, 1667, - 1670, 1673, 1675, 1676, 1679, 1680, 1684, 1686, 1688, 1691, - 1694, 1696, 1701, 1706, 1712, 1715, 1721, 1729, 1735, 1738, - 1742, 1743, 1745, 1748, 1750, 1753, 1756, 1759, 1763, 1767, - 1771, 1772, 1774, 1776, 1778, 1780, 1782, 1784, 1786, 1788, - 1790, 1792, 1796, 1798, 1804, 1814, 1818, 1828, 1833, 1844, - 1856, 1859, 1860, 1864, 1865, 1867, 1871, 1873, 1878, 1879, - 1882, 1885, 1888, 1889, 1891, 1895, 1899, 1906, 1911, 1912, - 1914, 1916, 1919, 1922, 1923, 1927, 1931, 1934, 1936, 1938, - 1942, 1946, 1951, 1952, 1954, 1955, 1962, 1964, 1968, 1972, - 1976, 1982, 1985, 1986, 1989, 1992, 1993, 1997, 2002, 2007, - 2008, 2011, 2012, 2017, 2018, 2022, 2031, 2043, 2045, 2049, - 2051, 2053, 2057, 2064, 2073, 2081, 2092, 2099, 2102, 2106, - 2107, 2116, 2128, 2134, 2136, 2137, 2144, 2150, 2159, 2164, - 2171, 2173, 2174, 2178, 2179, 2181, 2184, 2187, 2190, 2192, - 2195, 2199, 2202, 2205, 2208, 2211, 2215, 2219, 2223, 2225, - 2229, 2231, 2232, 2234, 2237, 2240, 2242, 2244, 2248, 2255, - 2266, 2268, 2269, 2271, 2274, 2277, 2278, 2281, 2284, 2286, - 2287, 2289, 2290, 2298, 2301, 2302, 2306, 2312, 2318, 2327, - 2330, 2331, 2334, 2337, 2340, 2342, 2348, 2351, 2352, 2355, - 2362, 2369, 2376, 2387, 2394, 2401, 2408, 2418, 2428, 2435, - 2442, 2452, 2459, 2467, 2470, 2473, 2476, 2479, 2481, 2484, - 2486, 2487, 2495, 2502, 2507, 2508, 2510, 2514, 2519, 2521, - 2525, 2527, 2530, 2533, 2536, 2539, 2541, 2543, 2554, 2568, - 2571, 2572, 2575, 2578, 2580, 2581, 2587, 2592, 2597, 2609, - 2624, 2637, 2653, 2665, 2668, 2670, 2675, 2676, 2685, 2697, - 2699, 2701, 2709, 2719, 2728, 2739, 2748, 2753, 2754, 2760, - 2761, 2764, 2765, 2768, 2769, 2772, 2773, 2776, 2777, 2779, - 2781, 2783, 2785, 2787, 2796, 2798, 2800, 2818, 2840, 2842, - 2844, 2847, 2849, 2853, 2855, 2857, 2859, 2863, 2865, 2868, - 2869, 2871, 2874, 2879, 2881, 2883, 2885, 2887, 2889, 2893, - 2894, 2896, 2897, 2899, 2901, 2906, 2907, 2909, 2911, 2913, - 2917, 2918, 2920, 2922, 2924, 2926, 2929, 2930, 2931, 2934, - 2937, 2939, 2942, 2945, 2948, 2951, 2963, 2977, 2979, 2983, - 2989, 2991, 2995, 3001, 3003, 3006, 3009, 3011, 3020, 3027, - 3033, 3038, 3043, 3047, 3055, 3064, 3071, 3078, 3085, 3092, - 3099, 3104, 3112, 3118, 3127, 3131, 3133, 3137, 3141, 3143, - 3145, 3147, 3149, 3151, 3153, 3155, 3159, 3161, 3165, 3169, - 3171, 3172, 3174, 3178, 3186, 3196, 3206, 3215, 3219, 3220, - 3234, 3236, 3240, 3246, 3252, 3256, 3263, 3266, 3268, 3269, - 3272, 3273, 3276, 3281, 3282, 3284, 3285, 3292, 3301, 3310, - 3312, 3316, 3322, 3328, 3336, 3346, 3354, 3364, 3370, 3377, - 3384, 3389, 3396, 3401, 3408, 3417, 3422, 3429, 3434, 3441, - 3447, 3455, 3457, 3459, 3461, 3464, 3466, 3469, 3471, 3473, - 3475, 3479, 3483, 3487, 3491, 3493, 3495, 3497, 3499, 3501, - 3504, 3507, 3509, 3513, 3516, 3518, 3520, 3522, 3524, 3526, - 3528, 3530, 3534, 3536, 3539, 3542, 3546, 3548, 3552, 3558, - 3561, 3564, 3565, 3572, 3579, 3586, 3593, 3600, 3607, 3614, - 3621, 3630, 3640, 3649, 3656, 3663, 3673, 3683, 3693, 3701, - 3712, 3714, 3716, 3725, 3734, 3743, 3752, 3761, 3770, 3779, - 3789, 3798, 3807, 3810, 3811, 3813, 3815, 3818, 3821, 3823, - 3826, 3830, 3834, 3838, 3842, 3847, 3852, 3856, 3860, 3864, - 3869, 3874, 3878, 3883, 3888, 3890, 3892, 3894, 3895, 3904, - 3913, 3925, 3927, 3929, 3932, 3937, 3943, 3945, 3949, 3952, - 3955, 3958, 3961, 3964, 3966, 3970, 3972, 3976, 3978, 3981, - 3984, 3989, 3993, 3996, 3999, 4002, 4005, 4008, 4011, 4015, - 4018, 4021, 4024, 4027, 4033, 4039, 4045, 4051, 4057, 4059, - 4063, 4065, 4068, 4072, 4073, 4080, 4087, 4097, 4101, 4102, - 4106, 4107, 4113, 4116, 4117, 4121, 4125, 4129, 4137, 4145, - 4156, 4158, 4160, 4162, 4164, 4166, 4168, 4185, 4205, 4207, - 4208, 4210, 4211, 4213, 4214, 4217, 4218, 4220, 4224, 4229, - 4235, 4238, 4241, 4246, 4251, 4252, 4254, 4258, 4261, 4262, - 4264, 4265, 4267, 4269, 4270, 4273, 4276, 4277, 4287, 4300, - 4308, 4316, 4319, 4320, 4324, 4327, 4329, 4333, 4335, 4339, - 4342, 4344, 4346, 4349, 4353, 4356, 4358, 4362, 4366, 4370, - 4373, 4376, 4378, 4380, 4382, 4384, 4387, 4389, 4391, 4393, - 4395, 4400, 4406, 4408, 4412, 4416, 4418, 4422, 4426, 4432, - 4439, 4441, 4445, 4448, 4450, 4454, 4456, 4457, 4459, 4462, - 4467, 4473, 4475, 4477, 4479, 4481, 4485, 4489, 4492, 4495, - 4497, 4500, 4503, 4506, 4509, 4511, 4514, 4517, 4520, 4523, - 4525, 4527, 4529, 4533, 4536, 4538, 4543, 4544, 4548, 4549, - 4551, 4553, 4557, 4563, 4566, 4567, 4570, 4572, 4576, 4582, - 4588, 4594, 4596, 4599, 4601, 4602, 4607, 4614, 4619, 4626, - 4631, 4638, 4643, 4650, 4655, 4662, 4666, 4672, 4678, 4684, - 4686, 4690, 4692, 4696, 4699, 4702, 4704, 4707, 4709, 4712, - 4724, 4735, 4746, 4749, 4752, 4753, 4763, 4766, 4767, 4778, - 4790, 4802, 4808, 4814, 4823, 4828, 4833, 4841, 4849, 4851, - 4853, 4855, 4857, 4859, 4865, 4871, 4878, 4885, 4892, 4899, - 4906, 4915, 4924, 4931, 4938, 4946, 4956, 4966, 4975, 4986, - 4993, 5000, 5007, 5014, 5021, 5028, 5035, 5044, 5051, 5060, - 5067, 5076, 5084, 5094, 5101, 5110, 5118, 5128, 5137, 5148, - 5157, 5168, 5178, 5190, 5199, 5210, 5220, 5232, 5241, 5250, - 5258, 5265, 5272, 5279, 5286, 5295, 5304, 5313, 5322, 5329, - 5339, 5341, 5342, 5345, 5346, 5355, 5364, 5373, 5384, 5394, - 5403, 5405, 5406, 5413, 5420, 5427, 5434, 5441, 5448, 5455, - 5465, 5475, 5482, 5489, 5496, 5505, 5512, 5521, 5530, 5539, - 5548, 5555, 5564, 5571, 5580, 5588, 5598, 5606, 5616, 5623, - 5631, 5633, 5637, 5641, 5645, 5647, 5649, 5651, 5653, 5655, - 5663, 5670, 5677, 5684, 5691, 5698, 5705, 5713, 5721, 5728, - 5738, 5748, 5755, 5762, 5769, 5776, 5783, 5790, 5799, 5808, - 5817, 5824, 5832, 5839, 5846, 5851, 5859, 5866, 5871, 5876, - 5881, 5885, 5890, 5894, 5896, 5898, 5902, 5908, 5914, 5920, - 5926, 5935, 5941, 5947, 5954, 5962, 5970, 5978, 5983, 5988, - 5994, 5999, 6006, 6020, 6022, 6024, 6028, 6032, 6034, 6036, - 6038, 6040, 6042, 6044, 6046, 6047, 6049, 6051, 6053, 6055, - 6057, 6059, 6060, 6064, 6067, 6068, 6071, 6074, 6077, 6081, - 6085, 6089, 6093, 6096, 6100, 6103, 6109, 6114, 6118, 6122, - 6126, 6130, 6134, 6136, 6138, 6139, 6143, 6146, 6149, 6151, - 6154, 6156, 6160, 6163, 6165, 6166, 6169, 6173, 6174, 6184, - 6196, 6209, 6224, 6228, 6233, 6238, 6239, 6242, 6248, 6250, - 6251, 6253, 6256, 6260, 6264, 6268, 6270, 6273, 6275, 6277, - 6279, 6281, 6283, 6285, 6286, 6292, 6297, 6304, 6311, 6316, - 6320, 6326, 6334, 6344, 6346, 6350, 6352, 6358, 6363, 6368, - 6375, 6380, 6387, 6394, 6400, 6408, 6418, 6425, 6427, 6428, - 6435, 6447, 6459, 6471, 6485, 6495, 6507, 6509, 6511, 6522, - 6527, 6534, 6537, 6543, 6546, 6547, 6554, 6560, 6564, 6570, - 6572, 6576, 6578, 6580, 6583, 6585, 6587, 6589, 6591, 6592, - 6594, 6595, 6597, 6598, 6600, 6601, 6603, 6604, 6608, 6609, - 6612, 6614, 6618, 6620, 6621, 6624, 6629, 6633, 6639, 6641, - 6643, 6645, 6647, 6649, 6651, 6653, 6655, 6657, 6659, 6665, - 6669, 6670, 6672, 6674, 6676, 6678, 6680, 6684, 6694, 6707, - 6711, 6712, 6715, 6719, 6722, 6726, 6734, 6736, 6740, 6742, - 6747, 6752, 6760, 6763, 6765, 6767, 6769, 6773, 6776, 6785, - 6791, 6792, 6797, 6801, 6802, 6805, 6806, 6814, 6817, 6818, - 6824, 6828, 6829, 6832, 6835, 6838, 6842, 6844, 6848, 6850, - 6853, 6855, 6856, 6858, 6861, 6862, 6871, 6873, 6877, 6881, - 6887, 6890, 6892, 6896, 6906, 6908, 6911, 6917, 6923, 6930, - 6937, 6945, 6948, 6949, 6953, 6955, 6958, 6964, 6970, 6979, - 6983, 6988, 6996, 6998, 6999, 7003, 7006, 7009, 7012, 7015, - 7016, 7019, 7022, 7024, 7026, 7030, 7034, 7036, 7039, 7044, - 7049, 7052, 7056, 7062, 7068, 7070, 7072, 7082, 7092, 7094, - 7097, 7102, 7107, 7112, 7115, 7118, 7122, 7124, 7128, 7138, - 7140, 7143, 7144, 7152, 7160, 7161, 7172, 7179, 7180, 7182, - 7183, 7186, 7187, 7191, 7195, 7200, 7205, 7210, 7215, 7219, - 7222, 7224, 7226, 7227, 7229, 7231, 7232, 7234, 7240, 7242, - 7243, 7245, 7247, 7249, 7250, 7254, 7256, 7260, 7265, 7269, - 7272, 7275, 7277, 7279, 7281, 7282, 7285, 7290, 7296, 7303, - 7308, 7314, 7317, 7321, 7323, 7325, 7327, 7329, 7332, 7335, - 7337, 7339, 7341, 7343, 7345, 7347, 7352, 7353, 7355, 7359, - 7361, 7363, 7365, 7367, 7369, 7372, 7377, 7382, 7388, 7391, - 7392, 7394, 7398, 7400, 7401, 7403, 7406, 7410, 7413, 7418, - 7421, 7425, 7428, 7429, 7434, 7440, 7443, 7444, 7446, 7450, - 7453, 7457, 7460, 7464, 7467, 7471, 7474, 7478, 7480, 7485, - 7489, 7494, 7500, 7505, 7511, 7516, 7522, 7525, 7530, 7532, - 7534, 7535, 7538, 7539, 7541, 7546, 7552, 7557, 7558, 7561, - 7564, 7567, 7569, 7571, 7572, 7578, 7581, 7583, 7585, 7588, - 7591, 7596, 7598, 7602, 7604, 7607, 7611, 7618, 7623, 7624, - 7627, 7634, 7637, 7639, 7643, 7648, 7649, 7652, 7653, 7656, - 7657, 7660, 7665, 7666, 7668, 7669, 7671, 7675, 7679, 7687, - 7700, 7702, 7706, 7709, 7713, 7717, 7719, 7722, 7725, 7728, - 7731, 7733, 7735, 7739, 7743, 7746, 7749, 7753, 7759, 7766, - 7769, 7773, 7777, 7782, 7783, 7785, 7787, 7789, 7791, 7793, - 7796, 7801, 7803, 7805, 7807, 7809, 7812, 7816, 7820, 7821, - 7823, 7825, 7827, 7829, 7831, 7834, 7837, 7840, 7843, 7846, - 7848, 7852, 7853, 7855, 7857, 7859, 7861, 7867, 7870, 7872, - 7874, 7876, 7878, 7883, 7885, 7888, 7891, 7893, 7897, 7901, - 7904, 7906, 7907, 7913, 7916, 7922, 7925, 7927, 7931, 7935, - 7936, 7938, 7940, 7942, 7944, 7946, 7948, 7952, 7956, 7960, - 7964, 7968, 7972, 7976, 7977, 7979, 7984, 7986, 7990, 7994, - 8000, 8003, 8006, 8010, 8014, 8018, 8022, 8026, 8030, 8034, - 8038, 8042, 8046, 8050, 8054, 8058, 8061, 8065, 8069, 8072, - 8075, 8079, 8085, 8090, 8097, 8101, 8107, 8112, 8119, 8124, - 8131, 8137, 8145, 8149, 8152, 8157, 8160, 8164, 8168, 8173, - 8177, 8182, 8186, 8191, 8197, 8204, 8211, 8219, 8226, 8234, - 8238, 8243, 8248, 8255, 8259, 8263, 8268, 8272, 8277, 8282, - 8288, 8290, 8292, 8296, 8299, 8302, 8306, 8310, 8314, 8318, - 8322, 8326, 8330, 8334, 8338, 8342, 8346, 8350, 8354, 8357, - 8363, 8370, 8374, 8379, 8381, 8383, 8386, 8391, 8393, 8395, - 8397, 8400, 8403, 8406, 8409, 8411, 8413, 8418, 8422, 8428, - 8435, 8444, 8451, 8458, 8463, 8468, 8470, 8472, 8474, 8480, - 8482, 8484, 8489, 8491, 8496, 8498, 8503, 8505, 8510, 8512, - 8514, 8516, 8518, 8520, 8522, 8529, 8534, 8539, 8546, 8551, - 8556, 8561, 8566, 8571, 8578, 8584, 8590, 8596, 8601, 8608, - 8613, 8618, 8623, 8628, 8634, 8642, 8650, 8660, 8666, 8671, - 8678, 8684, 8692, 8700, 8708, 8711, 8715, 8719, 8723, 8728, - 8729, 8734, 8736, 8740, 8744, 8746, 8748, 8750, 8753, 8756, - 8757, 8760, 8764, 8768, 8773, 8776, 8779, 8785, 8786, 8792, - 8793, 8796, 8797, 8799, 8803, 8807, 8810, 8813, 8814, 8821, - 8823, 8824, 8828, 8829, 8833, 8837, 8841, 8842, 8844, 8849, - 8852, 8855, 8858, 8861, 8864, 8868, 8871, 8874, 8878, 8879, - 8884, 8888, 8894, 8899, 8903, 8909, 8911, 8913, 8915, 8917, - 8919, 8921, 8923, 8925, 8927, 8929, 8931, 8933, 8935, 8937, - 8939, 8941, 8943, 8945, 8950, 8952, 8957, 8959, 8964, 8966, - 8969, 8971, 8974, 8976, 8980, 8982, 8986, 8988, 8992, 8996, - 8998, 8999, 9001, 9005, 9009, 9013, 9016, 9018, 9022, 9026, - 9030, 9032, 9034, 9036, 9038, 9040, 9042, 9044, 9046, 9048, - 9050, 9052, 9054, 9062, 9068, 9072, 9078, 9084, 9088, 9092, - 9098, 9102, 9105, 9107, 9109, 9113, 9119, 9121, 9124, 9129, - 9132, 9133, 9135, 9136, 9138, 9141, 9144, 9147, 9151, 9157, - 9159, 9160, 9162, 9165, 9166, 9169, 9171, 9172, 9174, 9175, - 9177, 9181, 9185, 9188, 9190, 9192, 9194, 9198, 9200, 9203, - 9205, 9209, 9211, 9213, 9215, 9217, 9220, 9222, 9224, 9226, - 9228, 9230, 9233, 9240, 9243, 9250, 9253, 9257, 9263, 9266, - 9270, 9276, 9278, 9280, 9282, 9284, 9286, 9288, 9291, 9294, - 9296, 9298, 9300, 9302, 9304, 9306, 9310, 9321, 9326, 9328, - 9330, 9332, 9334, 9336, 9338, 9340, 9342, 9344, 9346, 9348, - 9350, 9352, 9354, 9356, 9358, 9360, 9362, 9364, 9366, 9368, - 9370, 9372, 9374, 9376, 9378, 9380, 9382, 9384, 9386, 9388, - 9390, 9392, 9394, 9396, 9398, 9400, 9402, 9404, 9406, 9408, - 9410, 9412, 9414, 9416, 9418, 9420, 9422, 9424, 9426, 9428, - 9430, 9432, 9434, 9436, 9438, 9440, 9442, 9444, 9446, 9448, - 9450, 9452, 9454, 9456, 9458, 9460, 9462, 9464, 9466, 9468, - 9470, 9472, 9474, 9476, 9478, 9480, 9482, 9484, 9486, 9488, - 9490, 9492, 9494, 9496, 9498, 9500, 9502, 9504, 9506, 9508, - 9510, 9512, 9514, 9516, 9518, 9520, 9522, 9524, 9526, 9528, - 9530, 9532, 9534, 9536, 9538, 9540, 9542, 9544, 9546, 9548, - 9550, 9552, 9554, 9556, 9558, 9560, 9562, 9564, 9566, 9568, - 9570, 9572, 9574, 9576, 9578, 9580, 9582, 9584, 9586, 9588, - 9590, 9592, 9594, 9596, 9598, 9600, 9602, 9604, 9606, 9608, - 9610, 9612, 9614, 9616, 9618, 9620, 9622, 9624, 9626, 9628, - 9630, 9632, 9634, 9636, 9638, 9640, 9642, 9644, 9646, 9648, - 9650, 9652, 9654, 9656, 9658, 9660, 9662, 9664, 9666, 9668, - 9670, 9672, 9674, 9676, 9678, 9680, 9682, 9684, 9686, 9688, - 9690, 9692, 9694, 9696, 9698, 9700, 9702, 9704, 9706, 9708, - 9710, 9712, 9714, 9716, 9718, 9720, 9722, 9724, 9726, 9728, - 9730, 9732, 9734, 9736, 9738, 9740, 9742, 9744, 9746, 9748, - 9750, 9752, 9754, 9756, 9758, 9760, 9762, 9764, 9766, 9768, - 9770, 9772, 9774, 9776, 9778, 9780, 9782, 9784, 9786, 9788, - 9790, 9792, 9794, 9796, 9798, 9800, 9802, 9804, 9806, 9808, - 9810, 9812, 9814, 9816, 9818, 9820, 9822, 9824, 9826, 9828, - 9830, 9832, 9834, 9836, 9838, 9840, 9842, 9844, 9846, 9848, - 9850, 9852, 9854, 9856, 9858, 9860, 9862, 9864, 9866, 9868, - 9870, 9872, 9874, 9876, 9878, 9880, 9882, 9884, 9886, 9888, - 9890, 9892, 9894, 9896, 9898, 9900, 9902, 9904, 9906, 9908, - 9910, 9912, 9914, 9916, 9918, 9920, 9922, 9924, 9926, 9928, - 9930, 9932, 9934, 9936, 9938, 9940, 9942, 9944, 9946, 9948, - 9950, 9952, 9954, 9956, 9958, 9960, 9962, 9964, 9966, 9968, - 9970, 9972, 9974, 9976, 9978, 9980, 9982, 9984, 9986, 9988, - 9990, 9992, 9994, 9996, 9998, 10000, 10002, 10004, 10006, 10008, - 10010, 10012, 10014, 10016, 10018, 10020, 10022, 10024, 10026, 10028, - 10030, 10032, 10034, 10036, 10038, 10040, 10042, 10044, 10046, 10048, - 10050, 10052, 10054, 10056, 10058, 10060, 10062, 10064, 10066, 10068, - 10070, 10072, 10074, 10076, 10078, 10080, 10082, 10084, 10086, 10088, - 10090, 10092, 10094, 10096, 10098, 10100, 10102, 10104, 10106, 10108, - 10110, 10112, 10114, 10116, 10118, 10120, 10122, 10124, 10126, 10128, - 10130, 10132, 10134, 10136, 10138, 10140, 10142, 10144, 10146, 10148, - 10150, 10152, 10154, 10156, 10158, 10160, 10162, 10164, 10166, 10168, - 10170, 10172, 10174, 10176, 10178, 10180, 10182, 10184, 10186, 10188, - 10190, 10192, 10194, 10196, 10198, 10200, 10202, 10204, 10206, 10208, - 10210, 10212, 10214, 10216, 10218, 10220, 10222, 10224, 10226, 10228, - 10230, 10232, 10234, 10236, 10238, 10240, 10242, 10244, 10246, 10248, - 10250, 10252, 10254, 10256, 10258, 10260, 10262, 10264, 10266, 10268, - 10270, 10272, 10274, 10276, 10278, 10280, 10282, 10284, 10286, 10288, - 10290, 10292, 10294, 10296, 10298, 10300, 10302, 10304, 10306, 10308, - 10310, 10312, 10314, 10316, 10318, 10320, 10322, 10324, 10326, 10328, - 10330, 10332, 10334, 10336, 10338, 10340, 10342, 10344, 10346, 10348, - 10350, 10352, 10354, 10356, 10358, 10360, 10362, 10364, 10366, 10368, - 10370, 10372, 10374, 10376, 10378, 10380, 10382, 10384, 10386, 10388, - 10390, 10392, 10394, 10396, 10398, 10400, 10402, 10404, 10406, 10408, - 10410, 10412, 10414, 10416, 10418, 10420, 10422, 10424, 10426, 10428, - 10430, 10432, 10434, 10436, 10438, 10440, 10442, 10444, 10446, 10448, - 10450, 10452, 10454, 10456, 10458, 10460, 10462, 10464, 10466, 10468, - 10470, 10472, 10474, 10476, 10478, 10480, 10482, 10484, 10486, 10488, - 10490, 10492, 10494, 10496, 10498, 10500, 10502, 10504, 10506, 10508, - 10510, 10512, 10514, 10516, 10518, 10520, 10522, 10524, 10526, 10528, - 10530, 10532, 10534, 10536, 10538, 10540, 10542, 10544, 10546, 10548, - 10550, 10552, 10554, 10556, 10558, 10560, 10562, 10564, 10566, 10568, - 10570, 10572, 10574, 10576, 10578, 10580, 10582, 10584, 10586, 10588, - 10590, 10592, 10594, 10596, 10598, 10600, 10602, 10604, 10606, 10608, - 10610, 10612, 10614, 10616, 10618, 10620, 10622, 10624, 10626, 10628, - 10630, 10632, 10634, 10636, 10638, 10640, 10642, 10644, 10646, 10648, - 10650, 10652, 10654, 10656, 10658, 10660, 10662, 10664, 10666, 10668, - 10670, 10672, 10674, 10676, 10678, 10680, 10682, 10684, 10686, 10688, - 10690, 10692, 10694, 10696, 10698, 10700, 10702, 10704, 10706, 10708, - 10710, 10712, 10714, 10716, 10718, 10720, 10722, 10724, 10726, 10728, - 10730, 10732, 10734, 10736, 10738, 10740, 10742, 10744, 10746, 10748, - 10750, 10752, 10754, 10756, 10758, 10760, 10762, 10764, 10766, 10768, - 10770, 10772, 10774, 10776, 10778, 10780, 10782, 10784, 10786, 10788, - 10790, 10792, 10794, 10796, 10798, 10800, 10802, 10804, 10806, 10808, - 10810, 10812, 10814, 10816, 10818, 10820, 10822, 10824, 10826, 10828, - 10830, 10832, 10834, 10836, 10838, 10840, 10842, 10844, 10846, 10848, - 10850, 10852, 10854, 10856, 10858, 10860, 10862, 10864, 10866, 10868, - 10870, 10872, 10874, 10876, 10878, 10880, 10882, 10884, 10886, 10888, - 10890, 10892, 10894, 10896, 10898, 10900, 10902, 10904, 10906, 10908, - 10910, 10912, 10914, 10916, 10918, 10920, 10922, 10924, 10926, 10928, - 10930, 10932, 10934, 10936, 10938, 10940, 10942, 10944, 10946, 10948, - 10950, 10952, 10954, 10956, 10958, 10960, 10962, 10964, 10966, 10968, - 10970, 10972, 10974, 10976, 10978, 10980, 10982, 10984, 10986, 10988, - 10990, 10992, 10994, 10996, 10998, 11000, 11002, 11004, 11006, 11008, - 11010, 11012, 11014, 11016, 11018, 11020, 11022, 11024, 11026, 11028, - 11030, 11032, 11034, 11036, 11038, 11040, 11042, 11044, 11046, 11048, - 11050, 11052, 11054, 11056, 11058, 11060, 11062, 11064, 11066, 11068, - 11070, 11072, 11074, 11076, 11078, 11080, 11082, 11084, 11086, 11088, - 11090, 11092, 11094, 11096, 11098, 11100, 11102, 11104, 11106, 11108, - 11110, 11112, 11114, 11116, 11118, 11120, 11122, 11124, 11126, 11128 + 266, 268, 270, 272, 274, 276, 278, 279, 281, 282, + 284, 285, 287, 288, 290, 292, 293, 296, 302, 304, + 306, 307, 310, 311, 314, 315, 318, 321, 324, 328, + 332, 336, 338, 342, 346, 349, 351, 353, 356, 359, + 362, 366, 370, 376, 382, 388, 389, 393, 399, 405, + 411, 417, 421, 427, 431, 437, 441, 447, 453, 460, + 462, 464, 471, 476, 486, 494, 497, 498, 500, 502, + 504, 506, 508, 510, 513, 517, 521, 524, 530, 532, + 536, 540, 544, 548, 550, 554, 558, 561, 564, 567, + 570, 573, 576, 580, 584, 588, 592, 596, 598, 602, + 604, 608, 610, 612, 614, 617, 620, 623, 625, 627, + 629, 631, 633, 635, 637, 639, 643, 649, 651, 653, + 655, 657, 659, 660, 662, 664, 667, 669, 672, 676, + 679, 681, 683, 686, 688, 691, 693, 696, 700, 705, + 709, 712, 717, 719, 721, 723, 725, 727, 730, 733, + 736, 739, 742, 747, 754, 759, 766, 777, 791, 796, + 803, 808, 819, 833, 838, 845, 850, 857, 863, 871, + 883, 898, 904, 912, 914, 918, 923, 928, 933, 937, + 940, 946, 950, 957, 962, 969, 976, 982, 990, 997, + 1004, 1010, 1016, 1022, 1028, 1038, 1043, 1049, 1057, 1064, + 1069, 1078, 1083, 1086, 1091, 1095, 1102, 1107, 1111, 1115, + 1119, 1122, 1125, 1129, 1134, 1139, 1143, 1147, 1151, 1155, + 1159, 1163, 1168, 1173, 1177, 1180, 1184, 1187, 1190, 1194, + 1199, 1203, 1206, 1209, 1213, 1218, 1223, 1228, 1234, 1236, + 1240, 1243, 1246, 1247, 1250, 1251, 1253, 1255, 1257, 1261, + 1265, 1268, 1269, 1271, 1275, 1279, 1281, 1287, 1291, 1293, + 1296, 1298, 1302, 1305, 1309, 1316, 1323, 1334, 1336, 1339, + 1341, 1345, 1350, 1352, 1356, 1361, 1368, 1373, 1382, 1385, + 1388, 1400, 1410, 1412, 1414, 1416, 1417, 1419, 1421, 1423, + 1425, 1429, 1432, 1433, 1435, 1437, 1441, 1445, 1447, 1449, + 1453, 1457, 1461, 1465, 1470, 1474, 1477, 1479, 1480, 1484, + 1485, 1487, 1488, 1490, 1494, 1497, 1499, 1501, 1503, 1507, + 1508, 1510, 1514, 1516, 1530, 1547, 1560, 1576, 1591, 1609, + 1611, 1613, 1616, 1619, 1622, 1625, 1627, 1628, 1630, 1631, + 1635, 1636, 1638, 1642, 1644, 1648, 1650, 1652, 1654, 1656, + 1658, 1665, 1668, 1673, 1676, 1679, 1681, 1682, 1685, 1688, + 1690, 1691, 1694, 1695, 1699, 1701, 1703, 1706, 1709, 1711, + 1716, 1721, 1727, 1730, 1736, 1744, 1750, 1753, 1757, 1758, + 1760, 1763, 1765, 1768, 1771, 1774, 1778, 1782, 1786, 1787, + 1789, 1791, 1793, 1795, 1797, 1799, 1801, 1803, 1805, 1807, + 1811, 1813, 1819, 1829, 1833, 1843, 1848, 1859, 1871, 1874, + 1875, 1879, 1880, 1882, 1886, 1888, 1893, 1894, 1897, 1900, + 1903, 1904, 1906, 1910, 1914, 1921, 1926, 1927, 1929, 1931, + 1934, 1937, 1938, 1942, 1946, 1949, 1951, 1953, 1957, 1961, + 1966, 1967, 1969, 1970, 1977, 1979, 1983, 1987, 1991, 1997, + 2000, 2001, 2004, 2007, 2008, 2012, 2017, 2022, 2023, 2026, + 2027, 2032, 2033, 2037, 2046, 2058, 2060, 2064, 2066, 2068, + 2072, 2079, 2088, 2096, 2107, 2114, 2117, 2121, 2122, 2131, + 2143, 2149, 2151, 2152, 2159, 2165, 2174, 2179, 2186, 2188, + 2189, 2193, 2194, 2196, 2199, 2202, 2205, 2207, 2210, 2214, + 2217, 2220, 2223, 2226, 2230, 2234, 2238, 2240, 2244, 2246, + 2247, 2249, 2252, 2255, 2257, 2259, 2263, 2270, 2281, 2283, + 2284, 2286, 2289, 2292, 2293, 2296, 2299, 2301, 2302, 2304, + 2305, 2313, 2316, 2317, 2321, 2327, 2333, 2342, 2345, 2346, + 2349, 2352, 2355, 2357, 2363, 2366, 2367, 2370, 2377, 2384, + 2391, 2402, 2409, 2416, 2423, 2433, 2443, 2450, 2457, 2467, + 2474, 2482, 2485, 2488, 2491, 2494, 2496, 2499, 2501, 2502, + 2510, 2517, 2522, 2523, 2525, 2529, 2534, 2536, 2540, 2542, + 2545, 2548, 2551, 2554, 2556, 2558, 2569, 2583, 2586, 2587, + 2590, 2593, 2595, 2596, 2602, 2607, 2612, 2624, 2639, 2652, + 2668, 2680, 2683, 2685, 2690, 2691, 2700, 2712, 2714, 2716, + 2724, 2734, 2743, 2754, 2763, 2768, 2769, 2775, 2776, 2779, + 2780, 2783, 2784, 2787, 2788, 2791, 2792, 2794, 2796, 2798, + 2800, 2802, 2811, 2813, 2815, 2833, 2855, 2857, 2859, 2862, + 2864, 2868, 2870, 2872, 2874, 2878, 2880, 2883, 2884, 2886, + 2889, 2894, 2896, 2898, 2900, 2902, 2904, 2908, 2909, 2911, + 2912, 2914, 2916, 2921, 2922, 2924, 2926, 2928, 2932, 2933, + 2935, 2937, 2939, 2941, 2944, 2945, 2946, 2949, 2952, 2954, + 2957, 2960, 2963, 2966, 2978, 2992, 2994, 2998, 3004, 3006, + 3010, 3016, 3018, 3021, 3024, 3026, 3035, 3042, 3048, 3053, + 3058, 3062, 3070, 3079, 3086, 3093, 3100, 3107, 3114, 3119, + 3127, 3133, 3142, 3146, 3148, 3152, 3156, 3158, 3160, 3162, + 3164, 3166, 3168, 3170, 3174, 3176, 3180, 3184, 3186, 3187, + 3189, 3193, 3201, 3211, 3221, 3230, 3234, 3235, 3249, 3251, + 3255, 3261, 3267, 3271, 3278, 3281, 3283, 3284, 3287, 3288, + 3291, 3296, 3297, 3299, 3300, 3307, 3316, 3325, 3327, 3331, + 3337, 3343, 3351, 3361, 3369, 3379, 3385, 3392, 3399, 3404, + 3411, 3416, 3423, 3432, 3437, 3444, 3449, 3456, 3462, 3470, + 3472, 3474, 3476, 3479, 3481, 3484, 3486, 3488, 3490, 3494, + 3498, 3502, 3506, 3508, 3510, 3512, 3514, 3516, 3519, 3522, + 3524, 3528, 3531, 3533, 3535, 3537, 3539, 3541, 3543, 3545, + 3549, 3551, 3554, 3557, 3561, 3563, 3567, 3573, 3576, 3579, + 3580, 3587, 3594, 3601, 3608, 3615, 3622, 3629, 3636, 3645, + 3655, 3664, 3671, 3678, 3688, 3698, 3708, 3716, 3727, 3729, + 3731, 3740, 3749, 3758, 3767, 3776, 3785, 3794, 3804, 3813, + 3822, 3825, 3826, 3828, 3830, 3833, 3836, 3838, 3841, 3845, + 3849, 3853, 3857, 3862, 3867, 3871, 3875, 3879, 3884, 3889, + 3893, 3898, 3903, 3905, 3907, 3909, 3910, 3919, 3928, 3940, + 3942, 3944, 3947, 3952, 3958, 3960, 3964, 3967, 3970, 3973, + 3976, 3979, 3981, 3985, 3987, 3991, 3993, 3996, 3999, 4004, + 4008, 4011, 4014, 4017, 4020, 4023, 4026, 4030, 4033, 4036, + 4039, 4042, 4048, 4054, 4060, 4066, 4072, 4074, 4078, 4080, + 4083, 4087, 4088, 4094, 4102, 4109, 4119, 4123, 4125, 4128, + 4130, 4132, 4134, 4138, 4139, 4145, 4148, 4149, 4153, 4157, + 4161, 4169, 4177, 4188, 4190, 4192, 4194, 4196, 4198, 4200, + 4217, 4237, 4239, 4240, 4243, 4244, 4246, 4250, 4255, 4261, + 4264, 4267, 4272, 4277, 4278, 4280, 4284, 4287, 4288, 4290, + 4292, 4293, 4296, 4299, 4300, 4310, 4323, 4331, 4339, 4342, + 4343, 4347, 4350, 4352, 4356, 4358, 4362, 4365, 4367, 4369, + 4372, 4376, 4379, 4381, 4385, 4389, 4393, 4396, 4399, 4401, + 4403, 4405, 4407, 4410, 4412, 4414, 4416, 4418, 4423, 4429, + 4431, 4435, 4439, 4441, 4445, 4449, 4455, 4462, 4464, 4468, + 4471, 4473, 4477, 4479, 4480, 4482, 4485, 4490, 4496, 4498, + 4500, 4502, 4504, 4508, 4512, 4515, 4518, 4520, 4523, 4526, + 4529, 4532, 4534, 4537, 4540, 4543, 4546, 4548, 4550, 4552, + 4556, 4559, 4561, 4566, 4567, 4571, 4572, 4574, 4576, 4580, + 4586, 4589, 4590, 4593, 4595, 4599, 4605, 4611, 4617, 4619, + 4622, 4624, 4625, 4630, 4637, 4642, 4649, 4654, 4661, 4666, + 4673, 4678, 4685, 4689, 4695, 4701, 4707, 4709, 4713, 4715, + 4719, 4722, 4725, 4727, 4730, 4732, 4735, 4747, 4758, 4769, + 4772, 4775, 4776, 4786, 4789, 4790, 4801, 4813, 4825, 4831, + 4837, 4846, 4852, 4858, 4864, 4866, 4868, 4870, 4872, 4876, + 4877, 4883, 4889, 4896, 4903, 4910, 4917, 4924, 4933, 4942, + 4949, 4956, 4964, 4974, 4984, 4993, 5004, 5011, 5018, 5025, + 5032, 5039, 5046, 5053, 5062, 5069, 5078, 5085, 5094, 5102, + 5112, 5119, 5128, 5136, 5146, 5155, 5166, 5175, 5186, 5196, + 5208, 5217, 5228, 5238, 5250, 5259, 5268, 5276, 5283, 5290, + 5297, 5304, 5313, 5322, 5331, 5340, 5347, 5357, 5359, 5360, + 5363, 5364, 5373, 5382, 5391, 5402, 5412, 5421, 5423, 5424, + 5431, 5438, 5445, 5452, 5459, 5466, 5473, 5483, 5493, 5500, + 5507, 5514, 5523, 5530, 5539, 5548, 5557, 5566, 5573, 5582, + 5589, 5598, 5606, 5616, 5624, 5634, 5641, 5649, 5651, 5655, + 5659, 5663, 5665, 5667, 5669, 5671, 5673, 5681, 5688, 5695, + 5702, 5709, 5716, 5723, 5731, 5739, 5746, 5756, 5766, 5773, + 5780, 5787, 5794, 5801, 5808, 5817, 5826, 5835, 5842, 5850, + 5857, 5864, 5869, 5877, 5884, 5889, 5894, 5899, 5903, 5908, + 5912, 5914, 5916, 5920, 5926, 5932, 5938, 5944, 5953, 5959, + 5965, 5972, 5980, 5988, 5996, 6001, 6006, 6012, 6017, 6024, + 6038, 6040, 6042, 6046, 6050, 6052, 6054, 6056, 6058, 6060, + 6062, 6064, 6065, 6067, 6069, 6071, 6073, 6075, 6077, 6078, + 6082, 6085, 6086, 6089, 6092, 6095, 6099, 6103, 6107, 6111, + 6114, 6118, 6121, 6127, 6132, 6136, 6140, 6144, 6148, 6152, + 6154, 6156, 6157, 6161, 6164, 6167, 6169, 6172, 6174, 6178, + 6181, 6183, 6184, 6187, 6191, 6192, 6202, 6214, 6227, 6242, + 6246, 6251, 6256, 6257, 6260, 6266, 6268, 6269, 6271, 6274, + 6278, 6282, 6286, 6288, 6291, 6293, 6295, 6297, 6299, 6301, + 6303, 6304, 6310, 6315, 6322, 6329, 6334, 6338, 6344, 6352, + 6362, 6364, 6368, 6370, 6376, 6381, 6386, 6393, 6398, 6405, + 6412, 6418, 6426, 6436, 6443, 6445, 6446, 6453, 6465, 6477, + 6489, 6503, 6513, 6525, 6527, 6529, 6540, 6545, 6552, 6555, + 6561, 6564, 6565, 6572, 6578, 6582, 6588, 6590, 6594, 6596, + 6598, 6601, 6603, 6605, 6607, 6609, 6611, 6612, 6614, 6615, + 6617, 6618, 6620, 6621, 6623, 6624, 6628, 6629, 6632, 6634, + 6638, 6640, 6641, 6644, 6649, 6653, 6659, 6661, 6663, 6665, + 6667, 6669, 6671, 6673, 6675, 6677, 6679, 6685, 6689, 6690, + 6692, 6694, 6696, 6698, 6700, 6704, 6714, 6727, 6731, 6732, + 6735, 6739, 6742, 6746, 6754, 6756, 6760, 6762, 6767, 6772, + 6780, 6783, 6785, 6787, 6789, 6793, 6796, 6805, 6811, 6812, + 6817, 6821, 6822, 6825, 6826, 6834, 6837, 6838, 6844, 6848, + 6849, 6852, 6855, 6858, 6862, 6864, 6868, 6870, 6873, 6875, + 6876, 6878, 6881, 6882, 6891, 6893, 6897, 6901, 6907, 6910, + 6912, 6916, 6926, 6928, 6931, 6937, 6943, 6950, 6957, 6965, + 6968, 6969, 6973, 6975, 6978, 6984, 6990, 6999, 7003, 7008, + 7016, 7018, 7019, 7023, 7026, 7029, 7032, 7035, 7036, 7039, + 7042, 7044, 7046, 7050, 7054, 7056, 7059, 7064, 7069, 7072, + 7076, 7082, 7088, 7090, 7092, 7102, 7112, 7114, 7117, 7122, + 7127, 7132, 7135, 7138, 7142, 7144, 7148, 7158, 7160, 7163, + 7164, 7172, 7180, 7181, 7192, 7199, 7200, 7202, 7203, 7206, + 7207, 7211, 7215, 7220, 7225, 7230, 7235, 7239, 7242, 7244, + 7246, 7247, 7249, 7251, 7252, 7254, 7260, 7262, 7263, 7265, + 7267, 7269, 7270, 7274, 7276, 7280, 7285, 7289, 7292, 7295, + 7297, 7299, 7301, 7302, 7305, 7310, 7316, 7323, 7328, 7334, + 7337, 7341, 7343, 7345, 7347, 7349, 7352, 7355, 7357, 7359, + 7361, 7363, 7365, 7367, 7372, 7373, 7375, 7379, 7381, 7383, + 7385, 7387, 7389, 7392, 7397, 7402, 7408, 7411, 7412, 7414, + 7418, 7420, 7421, 7423, 7426, 7430, 7433, 7438, 7441, 7445, + 7448, 7449, 7454, 7460, 7463, 7464, 7466, 7470, 7473, 7477, + 7480, 7484, 7487, 7491, 7494, 7498, 7500, 7505, 7509, 7514, + 7520, 7525, 7531, 7536, 7542, 7545, 7550, 7552, 7554, 7555, + 7558, 7559, 7561, 7566, 7572, 7577, 7578, 7581, 7584, 7587, + 7589, 7591, 7592, 7598, 7601, 7603, 7605, 7608, 7611, 7616, + 7618, 7622, 7624, 7627, 7631, 7638, 7643, 7644, 7647, 7654, + 7657, 7659, 7663, 7668, 7669, 7672, 7673, 7676, 7677, 7680, + 7685, 7686, 7688, 7689, 7691, 7695, 7699, 7707, 7720, 7722, + 7726, 7729, 7733, 7737, 7739, 7742, 7745, 7748, 7751, 7753, + 7755, 7759, 7763, 7766, 7769, 7773, 7779, 7786, 7789, 7793, + 7797, 7802, 7803, 7805, 7807, 7809, 7811, 7813, 7816, 7821, + 7823, 7825, 7827, 7829, 7832, 7836, 7840, 7841, 7843, 7845, + 7847, 7849, 7851, 7854, 7857, 7860, 7863, 7866, 7868, 7872, + 7873, 7875, 7877, 7879, 7881, 7887, 7890, 7892, 7894, 7896, + 7898, 7903, 7905, 7908, 7911, 7913, 7917, 7921, 7924, 7926, + 7927, 7933, 7936, 7942, 7945, 7947, 7951, 7955, 7956, 7958, + 7960, 7962, 7964, 7966, 7968, 7972, 7976, 7980, 7984, 7988, + 7992, 7996, 7997, 7999, 8004, 8006, 8010, 8014, 8020, 8023, + 8026, 8030, 8034, 8038, 8042, 8046, 8050, 8054, 8058, 8062, + 8066, 8070, 8074, 8078, 8081, 8085, 8089, 8092, 8095, 8099, + 8105, 8110, 8117, 8121, 8127, 8132, 8139, 8144, 8151, 8157, + 8165, 8169, 8172, 8177, 8180, 8184, 8188, 8193, 8197, 8202, + 8206, 8211, 8217, 8224, 8231, 8239, 8246, 8254, 8258, 8263, + 8268, 8275, 8279, 8283, 8288, 8292, 8297, 8302, 8308, 8313, + 8319, 8321, 8323, 8327, 8330, 8333, 8337, 8341, 8345, 8349, + 8353, 8357, 8361, 8365, 8369, 8373, 8377, 8381, 8385, 8388, + 8394, 8401, 8405, 8410, 8412, 8414, 8417, 8422, 8424, 8426, + 8428, 8431, 8434, 8437, 8440, 8442, 8444, 8449, 8453, 8459, + 8466, 8475, 8482, 8489, 8494, 8499, 8503, 8505, 8507, 8509, + 8511, 8517, 8519, 8521, 8526, 8528, 8533, 8535, 8540, 8542, + 8547, 8549, 8551, 8553, 8555, 8557, 8559, 8561, 8568, 8573, + 8578, 8585, 8590, 8595, 8600, 8605, 8610, 8617, 8623, 8629, + 8635, 8640, 8647, 8652, 8657, 8662, 8667, 8673, 8681, 8689, + 8699, 8705, 8710, 8717, 8723, 8731, 8739, 8748, 8753, 8761, + 8766, 8773, 8780, 8785, 8788, 8792, 8796, 8800, 8805, 8806, + 8811, 8813, 8817, 8821, 8823, 8825, 8827, 8829, 8832, 8833, + 8836, 8839, 8840, 8843, 8847, 8851, 8856, 8859, 8862, 8868, + 8869, 8875, 8876, 8879, 8880, 8882, 8886, 8890, 8893, 8896, + 8897, 8904, 8906, 8907, 8911, 8912, 8916, 8920, 8924, 8925, + 8927, 8932, 8935, 8938, 8941, 8944, 8947, 8951, 8954, 8957, + 8961, 8962, 8967, 8971, 8977, 8982, 8986, 8992, 8994, 8996, + 8998, 9000, 9002, 9004, 9006, 9008, 9010, 9012, 9014, 9016, + 9018, 9020, 9022, 9024, 9026, 9028, 9033, 9035, 9040, 9042, + 9047, 9049, 9052, 9054, 9057, 9059, 9063, 9065, 9069, 9071, + 9075, 9079, 9081, 9082, 9084, 9088, 9092, 9096, 9099, 9101, + 9105, 9109, 9113, 9115, 9117, 9119, 9121, 9123, 9125, 9127, + 9129, 9131, 9133, 9135, 9137, 9145, 9151, 9155, 9161, 9167, + 9171, 9175, 9181, 9185, 9188, 9190, 9192, 9196, 9202, 9204, + 9207, 9212, 9215, 9216, 9218, 9219, 9221, 9224, 9227, 9230, + 9234, 9240, 9242, 9243, 9245, 9248, 9249, 9252, 9254, 9255, + 9258, 9262, 9263, 9266, 9267, 9271, 9272, 9274, 9277, 9280, + 9283, 9286, 9290, 9293, 9297, 9300, 9301, 9303, 9307, 9311, + 9315, 9319, 9323, 9324, 9328, 9332, 9333, 9335, 9339, 9347, + 9355, 9359, 9360, 9362, 9363, 9365, 9369, 9373, 9376, 9378, + 9380, 9382, 9386, 9388, 9391, 9393, 9397, 9399, 9401, 9403, + 9405, 9408, 9410, 9412, 9414, 9416, 9418, 9421, 9428, 9431, + 9438, 9441, 9445, 9451, 9454, 9458, 9464, 9466, 9468, 9470, + 9472, 9474, 9476, 9479, 9482, 9484, 9486, 9488, 9490, 9492, + 9494, 9498, 9509, 9514, 9516, 9518, 9520, 9522, 9524, 9526, + 9528, 9530, 9532, 9534, 9536, 9538, 9540, 9542, 9544, 9546, + 9548, 9550, 9552, 9554, 9556, 9558, 9560, 9562, 9564, 9566, + 9568, 9570, 9572, 9574, 9576, 9578, 9580, 9582, 9584, 9586, + 9588, 9590, 9592, 9594, 9596, 9598, 9600, 9602, 9604, 9606, + 9608, 9610, 9612, 9614, 9616, 9618, 9620, 9622, 9624, 9626, + 9628, 9630, 9632, 9634, 9636, 9638, 9640, 9642, 9644, 9646, + 9648, 9650, 9652, 9654, 9656, 9658, 9660, 9662, 9664, 9666, + 9668, 9670, 9672, 9674, 9676, 9678, 9680, 9682, 9684, 9686, + 9688, 9690, 9692, 9694, 9696, 9698, 9700, 9702, 9704, 9706, + 9708, 9710, 9712, 9714, 9716, 9718, 9720, 9722, 9724, 9726, + 9728, 9730, 9732, 9734, 9736, 9738, 9740, 9742, 9744, 9746, + 9748, 9750, 9752, 9754, 9756, 9758, 9760, 9762, 9764, 9766, + 9768, 9770, 9772, 9774, 9776, 9778, 9780, 9782, 9784, 9786, + 9788, 9790, 9792, 9794, 9796, 9798, 9800, 9802, 9804, 9806, + 9808, 9810, 9812, 9814, 9816, 9818, 9820, 9822, 9824, 9826, + 9828, 9830, 9832, 9834, 9836, 9838, 9840, 9842, 9844, 9846, + 9848, 9850, 9852, 9854, 9856, 9858, 9860, 9862, 9864, 9866, + 9868, 9870, 9872, 9874, 9876, 9878, 9880, 9882, 9884, 9886, + 9888, 9890, 9892, 9894, 9896, 9898, 9900, 9902, 9904, 9906, + 9908, 9910, 9912, 9914, 9916, 9918, 9920, 9922, 9924, 9926, + 9928, 9930, 9932, 9934, 9936, 9938, 9940, 9942, 9944, 9946, + 9948, 9950, 9952, 9954, 9956, 9958, 9960, 9962, 9964, 9966, + 9968, 9970, 9972, 9974, 9976, 9978, 9980, 9982, 9984, 9986, + 9988, 9990, 9992, 9994, 9996, 9998, 10000, 10002, 10004, 10006, + 10008, 10010, 10012, 10014, 10016, 10018, 10020, 10022, 10024, 10026, + 10028, 10030, 10032, 10034, 10036, 10038, 10040, 10042, 10044, 10046, + 10048, 10050, 10052, 10054, 10056, 10058, 10060, 10062, 10064, 10066, + 10068, 10070, 10072, 10074, 10076, 10078, 10080, 10082, 10084, 10086, + 10088, 10090, 10092, 10094, 10096, 10098, 10100, 10102, 10104, 10106, + 10108, 10110, 10112, 10114, 10116, 10118, 10120, 10122, 10124, 10126, + 10128, 10130, 10132, 10134, 10136, 10138, 10140, 10142, 10144, 10146, + 10148, 10150, 10152, 10154, 10156, 10158, 10160, 10162, 10164, 10166, + 10168, 10170, 10172, 10174, 10176, 10178, 10180, 10182, 10184, 10186, + 10188, 10190, 10192, 10194, 10196, 10198, 10200, 10202, 10204, 10206, + 10208, 10210, 10212, 10214, 10216, 10218, 10220, 10222, 10224, 10226, + 10228, 10230, 10232, 10234, 10236, 10238, 10240, 10242, 10244, 10246, + 10248, 10250, 10252, 10254, 10256, 10258, 10260, 10262, 10264, 10266, + 10268, 10270, 10272, 10274, 10276, 10278, 10280, 10282, 10284, 10286, + 10288, 10290, 10292, 10294, 10296, 10298, 10300, 10302, 10304, 10306, + 10308, 10310, 10312, 10314, 10316, 10318, 10320, 10322, 10324, 10326, + 10328, 10330, 10332, 10334, 10336, 10338, 10340, 10342, 10344, 10346, + 10348, 10350, 10352, 10354, 10356, 10358, 10360, 10362, 10364, 10366, + 10368, 10370, 10372, 10374, 10376, 10378, 10380, 10382, 10384, 10386, + 10388, 10390, 10392, 10394, 10396, 10398, 10400, 10402, 10404, 10406, + 10408, 10410, 10412, 10414, 10416, 10418, 10420, 10422, 10424, 10426, + 10428, 10430, 10432, 10434, 10436, 10438, 10440, 10442, 10444, 10446, + 10448, 10450, 10452, 10454, 10456, 10458, 10460, 10462, 10464, 10466, + 10468, 10470, 10472, 10474, 10476, 10478, 10480, 10482, 10484, 10486, + 10488, 10490, 10492, 10494, 10496, 10498, 10500, 10502, 10504, 10506, + 10508, 10510, 10512, 10514, 10516, 10518, 10520, 10522, 10524, 10526, + 10528, 10530, 10532, 10534, 10536, 10538, 10540, 10542, 10544, 10546, + 10548, 10550, 10552, 10554, 10556, 10558, 10560, 10562, 10564, 10566, + 10568, 10570, 10572, 10574, 10576, 10578, 10580, 10582, 10584, 10586, + 10588, 10590, 10592, 10594, 10596, 10598, 10600, 10602, 10604, 10606, + 10608, 10610, 10612, 10614, 10616, 10618, 10620, 10622, 10624, 10626, + 10628, 10630, 10632, 10634, 10636, 10638, 10640, 10642, 10644, 10646, + 10648, 10650, 10652, 10654, 10656, 10658, 10660, 10662, 10664, 10666, + 10668, 10670, 10672, 10674, 10676, 10678, 10680, 10682, 10684, 10686, + 10688, 10690, 10692, 10694, 10696, 10698, 10700, 10702, 10704, 10706, + 10708, 10710, 10712, 10714, 10716, 10718, 10720, 10722, 10724, 10726, + 10728, 10730, 10732, 10734, 10736, 10738, 10740, 10742, 10744, 10746, + 10748, 10750, 10752, 10754, 10756, 10758, 10760, 10762, 10764, 10766, + 10768, 10770, 10772, 10774, 10776, 10778, 10780, 10782, 10784, 10786, + 10788, 10790, 10792, 10794, 10796, 10798, 10800, 10802, 10804, 10806, + 10808, 10810, 10812, 10814, 10816, 10818, 10820, 10822, 10824, 10826, + 10828, 10830, 10832, 10834, 10836, 10838, 10840, 10842, 10844, 10846, + 10848, 10850, 10852, 10854, 10856, 10858, 10860, 10862, 10864, 10866, + 10868, 10870, 10872, 10874, 10876, 10878, 10880, 10882, 10884, 10886, + 10888, 10890, 10892, 10894, 10896, 10898, 10900, 10902, 10904, 10906, + 10908, 10910, 10912, 10914, 10916, 10918, 10920, 10922, 10924, 10926, + 10928, 10930, 10932, 10934, 10936, 10938, 10940, 10942, 10944, 10946, + 10948, 10950, 10952, 10954, 10956, 10958, 10960, 10962, 10964, 10966, + 10968, 10970, 10972, 10974, 10976, 10978, 10980, 10982, 10984, 10986, + 10988, 10990, 10992, 10994, 10996, 10998, 11000, 11002, 11004, 11006, + 11008, 11010, 11012, 11014, 11016, 11018, 11020, 11022, 11024, 11026, + 11028, 11030, 11032, 11034, 11036, 11038, 11040, 11042, 11044, 11046, + 11048, 11050, 11052, 11054, 11056, 11058, 11060, 11062, 11064, 11066, + 11068, 11070, 11072, 11074, 11076, 11078, 11080, 11082, 11084, 11086, + 11088, 11090, 11092, 11094, 11096, 11098, 11100, 11102, 11104, 11106, + 11108, 11110, 11112, 11114, 11116, 11118, 11120, 11122, 11124, 11126, + 11128, 11130, 11132, 11134, 11136, 11138, 11140, 11142, 11144, 11146, + 11148, 11150, 11152, 11154, 11156, 11158, 11160, 11162, 11164, 11166, + 11168, 11170, 11172, 11174, 11176, 11178, 11180, 11182, 11184, 11186, + 11188, 11190, 11192, 11194, 11196, 11198, 11200, 11202, 11204, 11206, + 11208, 11210, 11212, 11214, 11216, 11218, 11220, 11222, 11224, 11226, + 11228, 11230, 11232, 11234, 11236, 11238, 11240, 11242, 11244, 11246, + 11248, 11250, 11252, 11254, 11256, 11258, 11260, 11262, 11264, 11266, + 11268, 11270, 11272, 11274, 11276, 11278, 11280, 11282, 11284, 11286, + 11288, 11290, 11292, 11294, 11296, 11298, 11300, 11302, 11304, 11306, + 11308, 11310, 11312, 11314, 11316, 11318, 11320, 11322, 11324, 11326, + 11328, 11330, 11332, 11334, 11336, 11338, 11340, 11342, 11344, 11346, + 11348, 11350, 11352, 11354, 11356, 11358, 11360 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 509, 0, -1, 510, -1, 485, 1078, -1, 486, 1182, - -1, 487, 1183, -1, 488, 1183, -1, 489, 1183, -1, - 510, 505, 511, -1, 511, -1, 512, -1, 909, -1, - 738, -1, 929, -1, 924, -1, 925, -1, 803, -1, - 932, -1, 751, -1, 673, -1, 676, -1, 681, -1, - 694, -1, 854, -1, 526, -1, 881, -1, 883, -1, - 889, -1, 884, -1, 888, -1, 704, -1, 652, -1, - 930, -1, 555, -1, 877, -1, 574, -1, 893, -1, - 523, -1, 521, -1, 895, -1, 643, -1, 935, -1, - 934, -1, 702, -1, 941, -1, 513, -1, 553, -1, - 577, -1, 938, -1, 779, -1, 550, -1, 578, -1, - 712, -1, 644, -1, 740, -1, 867, -1, 937, -1, - 931, -1, 670, -1, 677, -1, 690, -1, 695, -1, - 822, -1, 525, -1, 647, -1, 753, -1, 760, -1, - 890, -1, 761, -1, 703, -1, 660, -1, 528, -1, - 651, -1, 593, -1, 894, -1, 640, -1, 667, -1, - 871, -1, 714, -1, 734, -1, 514, -1, 520, -1, - 699, -1, 918, -1, 962, -1, 992, -1, 741, -1, - 972, -1, 554, -1, 864, -1, 869, -1, 764, -1, - 765, -1, 766, -1, 768, -1, 896, -1, 669, -1, - 873, -1, 524, -1, 701, -1, 926, -1, 960, -1, - 955, -1, 784, -1, 788, -1, 799, -1, 696, -1, - 808, -1, 963, -1, 906, -1, 650, -1, 917, -1, - 974, -1, 984, -1, 904, -1, 957, -1, 767, -1, - 874, -1, 858, -1, 857, -1, 859, -1, 878, -1, - 789, -1, 800, -1, 897, -1, 781, -1, 996, -1, - 908, -1, 777, -1, 907, -1, 979, -1, 940, -1, - 544, -1, 532, -1, 549, -1, 915, -1, -1, 62, - 1104, -1, 99, 355, 1179, 515, 516, -1, 461, -1, - 484, -1, -1, 516, 519, -1, -1, 517, 518, -1, - -1, 311, 1177, -1, 311, 12, -1, 311, 278, -1, - 145, 311, 1177, -1, 145, 311, 12, -1, 433, 311, - 1177, -1, 204, -1, 91, 236, 1178, -1, 444, 439, - 1177, -1, 441, 1181, -1, 3, -1, 518, -1, 404, - 1176, -1, 27, 1181, -1, 355, 1181, -1, 198, 355, - 1181, -1, 198, 183, 1181, -1, 99, 441, 1179, 515, - 516, -1, 32, 355, 1180, 515, 517, -1, 32, 441, - 1180, 515, 517, -1, -1, 198, 114, 1171, -1, 32, - 355, 1180, 522, 547, -1, 32, 355, 30, 522, 547, - -1, 32, 441, 1180, 522, 547, -1, 32, 441, 30, - 522, 547, -1, 140, 355, 1181, -1, 140, 355, 192, - 155, 1181, -1, 140, 441, 1181, -1, 140, 441, 192, - 155, 1181, -1, 140, 183, 1181, -1, 140, 183, 192, - 155, 1181, -1, 99, 183, 1179, 515, 516, -1, 32, - 183, 1180, 527, 441, 1181, -1, 26, -1, 140, -1, - 99, 364, 529, 49, 1180, 530, -1, 99, 364, 1186, - 530, -1, 99, 364, 192, 273, 155, 529, 49, 1180, - 530, -1, 99, 364, 192, 273, 155, 1186, 530, -1, - 1186, -1, -1, 530, 531, -1, -1, 593, -1, 808, - -1, 651, -1, 714, -1, 788, -1, 915, -1, 377, - 533, -1, 377, 239, 533, -1, 377, 375, 533, -1, - 420, 912, -1, 375, 72, 39, 420, 912, -1, 535, - -1, 536, 418, 537, -1, 536, 492, 537, -1, 536, - 418, 120, -1, 536, 492, 120, -1, 534, -1, 536, - 174, 103, -1, 416, 481, 541, -1, 68, 1177, -1, - 364, 1177, -1, 364, 12, -1, 259, 542, -1, 355, - 543, -1, 355, 12, -1, 375, 49, 543, -1, 375, - 49, 12, -1, 375, 49, 120, -1, 467, 291, 1113, - -1, 420, 386, 1177, -1, 1186, -1, 536, 504, 1186, - -1, 538, -1, 537, 506, 538, -1, 540, -1, 658, - -1, 12, -1, 331, 432, -1, 331, 86, -1, 344, - 331, -1, 373, -1, 425, -1, 161, -1, 288, -1, - 543, -1, 1177, -1, 12, -1, 3, -1, 1097, 1177, - 1099, -1, 1097, 502, 1176, 503, 1177, -1, 658, -1, - 120, -1, 239, -1, 1177, -1, 120, -1, -1, 1188, - -1, 1177, -1, 347, 545, -1, 546, -1, 416, 481, - -1, 420, 222, 234, -1, 375, 49, -1, 536, -1, - 30, -1, 377, 533, -1, 544, -1, 377, 535, -1, - 544, -1, 381, 536, -1, 381, 416, 481, -1, 381, - 420, 222, 234, -1, 381, 375, 49, -1, 381, 30, - -1, 377, 93, 551, 552, -1, 30, -1, 1168, -1, - 123, -1, 194, -1, 74, -1, 134, 30, -1, 134, - 410, -1, 134, 412, -1, 134, 313, -1, 134, 372, - -1, 32, 406, 1055, 556, -1, 32, 406, 192, 155, - 1055, 556, -1, 32, 406, 1055, 557, -1, 32, 406, - 192, 155, 1055, 557, -1, 32, 406, 30, 198, 409, - 1171, 377, 409, 1171, 977, -1, 32, 406, 30, 198, - 409, 1171, 303, 60, 1181, 377, 409, 1171, 977, -1, - 32, 202, 1169, 556, -1, 32, 202, 192, 155, 1169, - 556, -1, 32, 202, 1169, 558, -1, 32, 202, 30, - 198, 409, 1171, 377, 409, 1171, 977, -1, 32, 202, - 30, 198, 409, 1171, 303, 60, 1181, 377, 409, 1171, - 977, -1, 32, 371, 1169, 556, -1, 32, 371, 192, - 155, 1169, 556, -1, 32, 454, 1169, 556, -1, 32, - 454, 192, 155, 1169, 556, -1, 32, 249, 454, 1169, - 556, -1, 32, 249, 454, 192, 155, 1169, 556, -1, - 32, 249, 454, 30, 198, 409, 1171, 377, 409, 1171, - 977, -1, 32, 249, 454, 30, 198, 409, 1171, 303, - 60, 1181, 377, 409, 1171, 977, -1, 32, 171, 406, - 1055, 556, -1, 32, 171, 406, 192, 155, 1055, 556, - -1, 559, -1, 556, 506, 559, -1, 47, 309, 1169, - 571, -1, 131, 309, 1169, 810, -1, 131, 309, 1169, - 165, -1, 47, 309, 1169, -1, 26, 601, -1, 26, - 192, 273, 155, 601, -1, 26, 81, 601, -1, 26, - 81, 192, 273, 155, 601, -1, 32, 879, 1186, 560, - -1, 32, 879, 1186, 140, 273, 278, -1, 32, 879, - 1186, 377, 273, 278, -1, 32, 879, 1186, 140, 157, - -1, 32, 879, 1186, 140, 157, 192, 155, -1, 32, - 879, 1186, 377, 393, 1178, -1, 32, 879, 1176, 377, - 393, 1178, -1, 32, 879, 1186, 377, 565, -1, 32, - 879, 1186, 347, 565, -1, 32, 879, 1186, 377, 396, - 1186, -1, 32, 879, 1186, 377, 603, -1, 32, 879, - 1186, 26, 178, 609, 39, 191, 654, -1, 32, 879, - 1186, 569, -1, 32, 879, 1186, 140, 191, -1, 32, - 879, 1186, 140, 191, 192, 155, -1, 140, 879, 192, - 155, 1186, 561, -1, 140, 879, 1186, 561, -1, 32, - 879, 1186, 880, 428, 1078, 562, 563, -1, 32, 879, - 1186, 684, -1, 26, 614, -1, 32, 92, 1171, 732, - -1, 445, 92, 1171, -1, 140, 92, 192, 155, 1171, - 561, -1, 140, 92, 1171, 561, -1, 377, 463, 286, - -1, 77, 288, 1171, -1, 377, 463, 77, -1, 377, - 245, -1, 377, 438, -1, 143, 423, 1171, -1, 143, - 33, 423, 1171, -1, 143, 346, 423, 1171, -1, 143, - 423, 30, -1, 143, 423, 441, -1, 133, 423, 1171, - -1, 133, 423, 30, -1, 133, 423, 441, -1, 143, - 362, 1171, -1, 143, 33, 362, 1171, -1, 143, 346, - 362, 1171, -1, 133, 362, 1171, -1, 204, 1169, -1, - 269, 204, 1169, -1, 283, 774, -1, 273, 283, -1, - 304, 418, 1180, -1, 377, 24, 252, 1171, -1, 377, - 409, 1171, -1, 377, 565, -1, 347, 565, -1, 346, - 191, 564, -1, 143, 360, 234, 369, -1, 133, 360, - 234, 369, -1, 170, 360, 234, 369, -1, 269, 170, - 360, 234, 369, -1, 684, -1, 377, 120, 1101, -1, - 140, 120, -1, 64, -1, 349, -1, -1, 79, 774, - -1, -1, 442, 1101, -1, -1, 274, -1, 175, -1, - 120, -1, 442, 202, 1171, -1, 502, 567, 503, -1, - 461, 565, -1, -1, 568, -1, 567, 506, 568, -1, - 1189, 492, 745, -1, 1189, -1, 1189, 504, 1189, 492, - 745, -1, 1189, 504, 1189, -1, 570, -1, 569, 570, - -1, 348, -1, 348, 515, 658, -1, 377, 656, -1, - 377, 178, 609, -1, 169, 448, 461, 502, 573, 503, - -1, 169, 448, 198, 502, 1139, 503, -1, 169, 448, - 174, 502, 1139, 503, 418, 502, 1139, 503, -1, 120, - -1, 1188, 1176, -1, 572, -1, 573, 506, 572, -1, - 32, 428, 774, 575, -1, 576, -1, 575, 506, 576, - -1, 26, 48, 1070, 561, -1, 140, 48, 192, 155, - 1186, 561, -1, 140, 48, 1186, 561, -1, 32, 48, - 1186, 880, 428, 1078, 562, 561, -1, 76, 993, -1, - 76, 30, -1, 97, 585, 1169, 617, 579, 580, 581, - 586, 515, 582, 1066, -1, 97, 502, 959, 503, 418, - 580, 581, 515, 582, -1, 174, -1, 418, -1, 327, - -1, -1, 1177, -1, 394, -1, 395, -1, 583, -1, - 502, 588, 503, -1, 583, 584, -1, -1, 55, -1, - 173, -1, 126, 933, 1177, -1, 278, 933, 1177, -1, - 101, -1, 188, -1, 329, 933, 1177, -1, 148, 933, - 1177, -1, 170, 329, 618, -1, 170, 329, 495, -1, - 170, 273, 278, 618, -1, 170, 278, 618, -1, 144, - 1177, -1, 55, -1, -1, 587, 127, 1177, -1, -1, - 442, -1, -1, 589, -1, 588, 506, 589, -1, 1189, - 590, -1, 540, -1, 658, -1, 495, -1, 502, 591, - 503, -1, -1, 592, -1, 591, 506, 592, -1, 540, - -1, 99, 594, 406, 1169, 502, 595, 503, 629, 630, - 634, 635, 636, 637, -1, 99, 594, 406, 192, 273, - 155, 1169, 502, 595, 503, 629, 630, 634, 635, 636, - 637, -1, 99, 594, 406, 1169, 283, 774, 596, 630, - 634, 635, 636, 637, -1, 99, 594, 406, 192, 273, - 155, 1169, 283, 774, 596, 630, 634, 635, 636, 637, - -1, 99, 594, 406, 1169, 309, 283, 1169, 596, 571, - 630, 634, 635, 636, 637, -1, 99, 594, 406, 192, - 273, 155, 1169, 309, 283, 1169, 596, 571, 630, 634, - 635, 636, 637, -1, 412, -1, 410, -1, 239, 412, - -1, 239, 410, -1, 179, 412, -1, 179, 410, -1, - 438, -1, -1, 597, -1, -1, 502, 598, 503, -1, - -1, 599, -1, 597, 506, 599, -1, 600, -1, 598, - 506, 600, -1, 601, -1, 611, -1, 614, -1, 602, - -1, 614, -1, 1186, 1078, 604, 682, 605, -1, 1186, - 605, -1, 1186, 461, 292, 605, -1, 87, 1186, -1, - 87, 120, -1, 603, -1, -1, 605, 606, -1, -1, - 92, 1171, 607, -1, 607, -1, 610, -1, 79, 774, - -1, 273, 278, -1, 278, -1, 435, 608, 851, 638, - -1, 321, 224, 851, 638, -1, 73, 502, 1101, 503, - 616, -1, 120, 1102, -1, 178, 609, 39, 191, 654, - -1, 178, 609, 39, 502, 1101, 503, 397, -1, 337, - 1169, 617, 621, 625, -1, 280, 135, -1, 280, 273, - 135, -1, -1, 33, -1, 60, 120, -1, 122, -1, - 273, 122, -1, 206, 123, -1, 206, 194, -1, 235, - 1169, 612, -1, 612, 200, 613, -1, 612, 152, 613, - -1, -1, 84, -1, 87, -1, 93, -1, 121, -1, - 191, -1, 178, -1, 203, -1, 393, -1, 396, -1, - 30, -1, 92, 1171, 615, -1, 615, -1, 73, 502, - 1101, 503, 732, -1, 435, 608, 502, 618, 503, 620, - 851, 638, 732, -1, 435, 639, 732, -1, 321, 224, - 502, 618, 503, 620, 851, 638, 732, -1, 321, 224, - 639, 732, -1, 151, 812, 502, 622, 503, 620, 851, - 638, 624, 732, -1, 171, 224, 502, 618, 503, 337, - 1169, 617, 621, 625, 732, -1, 269, 204, -1, -1, - 502, 618, 503, -1, -1, 619, -1, 618, 506, 619, - -1, 1186, -1, 199, 502, 618, 503, -1, -1, 247, - 175, -1, 247, 308, -1, 247, 383, -1, -1, 623, - -1, 622, 506, 623, -1, 815, 461, 861, -1, 815, - 461, 290, 502, 861, 503, -1, 458, 502, 1101, 503, - -1, -1, 626, -1, 627, -1, 626, 627, -1, 627, - 626, -1, -1, 288, 440, 628, -1, 288, 125, 628, - -1, 269, 25, -1, 349, -1, 64, -1, 377, 278, - 617, -1, 377, 120, 617, -1, 205, 502, 1168, 503, - -1, -1, 631, -1, -1, 309, 60, 1186, 502, 632, - 503, -1, 633, -1, 632, 506, 633, -1, 1186, 818, - 819, -1, 1106, 818, 819, -1, 502, 1101, 503, 818, - 819, -1, 442, 1171, -1, -1, 461, 565, -1, 463, - 286, -1, -1, 288, 85, 140, -1, 288, 85, 125, - 361, -1, 288, 85, 318, 361, -1, -1, 409, 1171, - -1, -1, 442, 202, 409, 1171, -1, -1, 442, 202, - 1171, -1, 99, 393, 774, 951, 288, 641, 174, 1045, - -1, 99, 393, 192, 273, 155, 774, 951, 288, 641, - 174, 1045, -1, 642, -1, 641, 506, 642, -1, 1186, - -1, 1106, -1, 502, 1101, 503, -1, 32, 393, 774, - 377, 393, 1178, -1, 32, 393, 192, 155, 774, 377, - 393, 1178, -1, 99, 594, 406, 645, 39, 996, 646, - -1, 99, 594, 406, 192, 273, 155, 645, 39, 996, - 646, -1, 1169, 617, 634, 635, 636, 637, -1, 461, - 113, -1, 461, 269, 113, -1, -1, 99, 649, 249, - 454, 648, 39, 996, 646, -1, 99, 649, 249, 454, - 192, 273, 155, 648, 39, 996, 646, -1, 1169, 617, - 634, 566, 637, -1, 438, -1, -1, 339, 249, 454, - 810, 1169, 646, -1, 99, 594, 371, 1169, 653, -1, - 99, 594, 371, 192, 273, 155, 1169, 653, -1, 32, - 371, 1169, 655, -1, 32, 371, 192, 155, 1169, 655, - -1, 655, -1, -1, 502, 655, 503, -1, -1, 656, - -1, 655, 656, -1, 39, 1080, -1, 61, 658, -1, - 112, -1, 269, 112, -1, 201, 657, 658, -1, 250, - 658, -1, 254, 658, -1, 269, 250, -1, 269, 254, - -1, 303, 60, 774, -1, 371, 258, 774, -1, 391, - 515, 658, -1, 348, -1, 348, 515, 658, -1, 60, - -1, -1, 5, -1, 493, 5, -1, 494, 5, -1, - 1178, -1, 658, -1, 659, 506, 658, -1, 99, 823, - 661, 666, 226, 1171, -1, 99, 823, 661, 666, 226, - 1171, 186, 662, 663, 665, -1, 427, -1, -1, 1171, - -1, 1171, 775, -1, 207, 662, -1, -1, 446, 662, - -1, 269, 446, -1, 664, -1, -1, 324, -1, -1, - 99, 409, 1171, 668, 242, 1177, 566, -1, 304, 1180, - -1, -1, 140, 409, 1171, -1, 140, 409, 192, 155, - 1171, -1, 99, 158, 1171, 515, 671, -1, 99, 158, - 192, 273, 155, 1171, 515, 671, -1, 671, 672, -1, - -1, 364, 1171, -1, 453, 543, -1, 174, 543, -1, - 64, -1, 32, 158, 1171, 440, 674, -1, 674, 675, - -1, -1, 418, 543, -1, 32, 158, 1171, 527, 770, - 1171, -1, 32, 158, 1171, 527, 769, 774, -1, 32, - 158, 1171, 527, 29, 839, -1, 32, 158, 1171, 527, - 67, 502, 1078, 39, 1078, 503, -1, 32, 158, 1171, - 527, 138, 1078, -1, 32, 158, 1171, 527, 176, 827, - -1, 32, 158, 1171, 527, 290, 863, -1, 32, 158, - 1171, 527, 290, 75, 774, 442, 1171, -1, 32, 158, - 1171, 527, 290, 162, 774, 442, 1171, -1, 32, 158, - 1171, 527, 325, 827, -1, 32, 158, 1171, 527, 358, - 827, -1, 32, 158, 1171, 527, 421, 169, 1078, 226, - 1171, -1, 32, 158, 1171, 527, 428, 1078, -1, 99, - 171, 113, 465, 1171, 680, 682, -1, 186, 662, -1, - 269, 186, -1, 446, 662, -1, 269, 446, -1, 678, - -1, 679, 678, -1, 679, -1, -1, 32, 171, 113, - 465, 1171, 680, 684, -1, 32, 171, 113, 465, 1171, - 679, -1, 292, 502, 683, 503, -1, -1, 687, -1, - 683, 506, 687, -1, 292, 502, 685, 503, -1, 686, - -1, 685, 506, 686, -1, 687, -1, 377, 687, -1, - 26, 687, -1, 140, 688, -1, 688, 689, -1, 1189, - -1, 1177, -1, 99, 374, 1171, 691, 693, 171, 113, - 465, 1171, 682, -1, 99, 374, 192, 273, 155, 1171, - 691, 693, 171, 113, 465, 1171, 682, -1, 428, 1177, - -1, -1, 453, 1177, -1, 453, 278, -1, 692, -1, - -1, 32, 374, 1171, 692, 684, -1, 32, 374, 1171, - 692, -1, 32, 374, 1171, 684, -1, 99, 171, 406, - 1169, 502, 595, 503, 629, 374, 1171, 682, -1, 99, - 171, 406, 192, 273, 155, 1169, 502, 595, 503, 629, - 374, 1171, 682, -1, 99, 171, 406, 1169, 309, 283, - 1169, 596, 571, 374, 1171, 682, -1, 99, 171, 406, - 192, 273, 155, 1169, 309, 283, 1169, 596, 571, 374, - 1171, 682, -1, 197, 171, 364, 1171, 698, 174, 374, - 1171, 218, 1171, 682, -1, 236, 418, -1, 150, -1, - 697, 502, 1057, 503, -1, -1, 99, 441, 246, 169, - 700, 374, 1171, 682, -1, 99, 441, 246, 192, 273, - 155, 169, 700, 374, 1171, 682, -1, 1180, -1, 441, - -1, 140, 441, 246, 169, 700, 374, 1171, -1, 140, - 441, 246, 192, 155, 169, 700, 374, 1171, -1, 32, - 441, 246, 169, 700, 374, 1171, 684, -1, 99, 314, - 1171, 288, 1169, 709, 710, 707, 705, 706, -1, 32, - 314, 1171, 288, 1169, 708, 705, 706, -1, 442, 502, - 1101, 503, -1, -1, 461, 73, 502, 1101, 503, -1, - -1, 418, 1181, -1, -1, 418, 1181, -1, -1, 39, - 3, -1, -1, 169, 711, -1, -1, 30, -1, 370, - -1, 212, -1, 440, -1, 125, -1, 99, 24, 252, - 1171, 428, 713, 186, 662, -1, 202, -1, 406, -1, - 99, 823, 423, 1171, 715, 716, 288, 1169, 718, 724, - 727, 154, 728, 1174, 502, 729, 503, -1, 99, 823, - 92, 423, 1171, 28, 716, 288, 1169, 731, 732, 169, - 141, 360, 727, 154, 728, 1174, 502, 729, 503, -1, - 51, -1, 28, -1, 213, 283, -1, 717, -1, 716, - 293, 717, -1, 212, -1, 125, -1, 440, -1, 440, - 283, 618, -1, 426, -1, 338, 719, -1, -1, 720, - -1, 719, 720, -1, 721, 722, 933, 723, -1, 263, - -1, 287, -1, 406, -1, 360, -1, 1186, -1, 169, - 725, 726, -1, -1, 141, -1, -1, 360, -1, 392, - -1, 457, 502, 1101, 503, -1, -1, 176, -1, 325, - -1, 730, -1, 729, 506, 730, -1, -1, 1176, -1, - 5, -1, 1177, -1, 1189, -1, 174, 1169, -1, -1, - -1, 732, 733, -1, 273, 122, -1, 122, -1, 206, - 194, -1, 206, 123, -1, 273, 444, -1, 269, 204, - -1, 99, 149, 423, 1171, 288, 1189, 154, 728, 1174, - 502, 503, -1, 99, 149, 423, 1171, 288, 1189, 457, - 735, 154, 728, 1174, 502, 503, -1, 736, -1, 735, - 36, 736, -1, 1186, 198, 502, 737, 503, -1, 6, - -1, 737, 506, 6, -1, 32, 149, 423, 1171, 739, - -1, 143, -1, 143, 346, -1, 143, 33, -1, 133, - -1, 99, 42, 774, 73, 502, 1101, 503, 732, -1, - 99, 823, 29, 1174, 837, 742, -1, 99, 823, 29, - 1174, 746, -1, 99, 290, 861, 742, -1, 99, 428, - 774, 742, -1, 99, 428, 774, -1, 99, 428, 774, - 39, 502, 1068, 503, -1, 99, 428, 774, 39, 147, - 502, 749, 503, -1, 99, 428, 774, 39, 330, 742, - -1, 99, 413, 367, 307, 774, 742, -1, 99, 413, - 367, 132, 774, 742, -1, 99, 413, 367, 411, 774, - 742, -1, 99, 413, 367, 89, 774, 742, -1, 99, - 80, 774, 742, -1, 99, 80, 192, 273, 155, 774, - 742, -1, 99, 80, 774, 174, 774, -1, 99, 80, - 192, 273, 155, 774, 174, 774, -1, 502, 743, 503, - -1, 744, -1, 743, 506, 744, -1, 1189, 492, 745, - -1, 1189, -1, 834, -1, 1194, -1, 1137, -1, 658, - -1, 1177, -1, 270, -1, 502, 747, 503, -1, 748, - -1, 747, 506, 748, -1, 3, 492, 745, -1, 750, - -1, -1, 1177, -1, 750, 506, 1177, -1, 32, 428, - 774, 26, 447, 752, 1177, -1, 32, 428, 774, 26, - 447, 752, 1177, 51, 1177, -1, 32, 428, 774, 26, - 447, 752, 1177, 28, 1177, -1, 32, 428, 774, 343, - 447, 1177, 418, 1177, -1, 192, 273, 155, -1, -1, - 99, 290, 75, 774, 756, 169, 428, 1078, 442, 1171, - 757, 39, 754, -1, 755, -1, 754, 506, 755, -1, - 290, 1176, 861, 758, 759, -1, 290, 1176, 863, 758, - 759, -1, 176, 1176, 827, -1, 176, 1176, 502, 1143, - 503, 827, -1, 396, 1078, -1, 120, -1, -1, 162, - 774, -1, -1, 169, 367, -1, 169, 294, 60, 774, - -1, -1, 334, -1, -1, 99, 290, 162, 774, 442, - 1171, -1, 32, 290, 162, 774, 442, 1171, 26, 754, - -1, 32, 290, 162, 774, 442, 1171, 140, 762, -1, - 763, -1, 762, 506, 763, -1, 290, 1176, 502, 1143, - 503, -1, 176, 1176, 502, 1143, 503, -1, 140, 290, - 75, 774, 442, 1171, 561, -1, 140, 290, 75, 192, - 155, 774, 442, 1171, 561, -1, 140, 290, 162, 774, - 442, 1171, 561, -1, 140, 290, 162, 192, 155, 774, - 442, 1171, 561, -1, 140, 303, 60, 1181, 561, -1, - 333, 303, 60, 1181, 418, 1180, -1, 140, 769, 192, - 155, 773, 561, -1, 140, 769, 773, 561, -1, 140, - 771, 192, 155, 1170, 561, -1, 140, 771, 1170, 561, - -1, 140, 772, 1171, 288, 774, 561, -1, 140, 772, - 192, 155, 1171, 288, 774, 561, -1, 140, 428, 776, - 561, -1, 140, 428, 192, 155, 776, 561, -1, 140, - 138, 776, 561, -1, 140, 138, 192, 155, 776, 561, - -1, 140, 202, 88, 773, 561, -1, 140, 202, 88, - 192, 155, 773, 561, -1, 406, -1, 371, -1, 454, - -1, 249, 454, -1, 202, -1, 171, 406, -1, 80, - -1, 96, -1, 393, -1, 413, 367, 307, -1, 413, - 367, 132, -1, 413, 367, 411, -1, 413, 367, 89, - -1, 771, -1, 114, -1, 355, -1, 400, -1, 409, - -1, 24, 252, -1, 149, 423, -1, 158, -1, 171, - 113, 465, -1, 666, 226, -1, 328, -1, 364, -1, - 374, -1, 314, -1, 362, -1, 423, -1, 774, -1, - 773, 506, 774, -1, 1186, -1, 1186, 775, -1, 504, - 1172, -1, 775, 504, 1172, -1, 1078, -1, 776, 506, - 1078, -1, 426, 1010, 1057, 778, 561, -1, 95, 191, - -1, 348, 191, -1, -1, 83, 288, 769, 774, 220, - 780, -1, 83, 288, 81, 774, 220, 780, -1, 83, - 288, 770, 1171, 220, 780, -1, 83, 288, 428, 1078, - 220, 780, -1, 83, 288, 138, 1078, 220, 780, -1, - 83, 288, 29, 839, 220, 780, -1, 83, 288, 176, - 827, 220, 780, -1, 83, 288, 290, 863, 220, 780, - -1, 83, 288, 92, 1171, 288, 774, 220, 780, -1, - 83, 288, 92, 1171, 288, 138, 774, 220, 780, -1, - 83, 288, 772, 1171, 288, 774, 220, 780, -1, 83, - 288, 325, 827, 220, 780, -1, 83, 288, 358, 827, - 220, 780, -1, 83, 288, 421, 169, 1078, 226, 1171, - 220, 780, -1, 83, 288, 290, 75, 774, 442, 1171, - 220, 780, -1, 83, 288, 290, 162, 774, 442, 1171, - 220, 780, -1, 83, 288, 227, 282, 658, 220, 780, - -1, 83, 288, 67, 502, 1078, 39, 1078, 503, 220, - 780, -1, 1177, -1, 278, -1, 369, 225, 782, 288, - 769, 774, 220, 783, -1, 369, 225, 782, 288, 81, - 774, 220, 783, -1, 369, 225, 782, 288, 770, 1171, - 220, 783, -1, 369, 225, 782, 288, 428, 1078, 220, - 783, -1, 369, 225, 782, 288, 138, 1078, 220, 783, - -1, 369, 225, 782, 288, 29, 839, 220, 783, -1, - 369, 225, 782, 288, 176, 827, 220, 783, -1, 369, - 225, 782, 288, 227, 282, 658, 220, 783, -1, 369, - 225, 782, 288, 325, 827, 220, 783, -1, 369, 225, - 782, 288, 358, 827, 220, 783, -1, 169, 543, -1, - -1, 1177, -1, 278, -1, 163, 785, -1, 257, 785, - -1, 993, -1, 786, 993, -1, 264, 787, 993, -1, - 322, 787, 993, -1, 166, 787, 993, -1, 228, 787, - 993, -1, 23, 1178, 787, 993, -1, 341, 1178, 787, - 993, -1, 1178, 787, 993, -1, 30, 787, 993, -1, - 172, 787, 993, -1, 172, 1178, 787, 993, -1, 172, - 30, 787, 993, -1, 50, 787, 993, -1, 50, 1178, - 787, 993, -1, 50, 30, 787, 993, -1, 174, -1, - 198, -1, 786, -1, -1, 180, 790, 288, 795, 418, - 796, 798, 802, -1, 353, 790, 288, 795, 174, 796, - 802, 561, -1, 353, 180, 291, 169, 790, 288, 795, - 174, 796, 802, 561, -1, 791, -1, 30, -1, 30, - 323, -1, 30, 502, 618, 503, -1, 30, 323, 502, - 618, 503, -1, 792, -1, 791, 506, 792, -1, 370, - 617, -1, 337, 617, -1, 99, 617, -1, 32, 405, - -1, 1186, 617, -1, 794, -1, 793, 506, 794, -1, - 1186, -1, 794, 504, 1186, -1, 1168, -1, 406, 1168, - -1, 371, 1168, -1, 171, 113, 465, 1170, -1, 171, - 374, 1170, -1, 176, 826, -1, 325, 826, -1, 358, - 826, -1, 114, 1170, -1, 138, 773, -1, 226, 1170, - -1, 227, 282, 659, -1, 306, 793, -1, 364, 1170, - -1, 409, 1170, -1, 428, 773, -1, 30, 407, 198, - 364, 1170, -1, 30, 372, 198, 364, 1170, -1, 30, - 177, 198, 364, 1170, -1, 30, 326, 198, 364, 1170, - -1, 30, 359, 198, 364, 1170, -1, 797, -1, 796, - 506, 797, -1, 1180, -1, 183, 1180, -1, 461, 180, - 291, -1, -1, 180, 791, 418, 1181, 801, 802, -1, - 353, 791, 174, 1181, 802, 561, -1, 353, 27, 291, - 169, 791, 174, 1181, 802, 561, -1, 461, 27, 291, - -1, -1, 181, 60, 1180, -1, -1, 32, 120, 323, - 804, 806, -1, 804, 805, -1, -1, 198, 364, 1170, - -1, 169, 355, 1181, -1, 169, 441, 1181, -1, 180, - 790, 288, 807, 418, 796, 798, -1, 353, 790, 288, - 807, 174, 796, 561, -1, 353, 180, 291, 169, 790, - 288, 807, 174, 796, 561, -1, 407, -1, 177, -1, - 359, -1, 372, -1, 429, -1, 365, -1, 99, 809, - 202, 810, 811, 288, 1055, 812, 502, 813, 503, 816, - 608, 566, 637, 1066, -1, 99, 809, 202, 810, 192, - 273, 155, 1171, 288, 1055, 812, 502, 813, 503, 816, - 608, 566, 637, 1066, -1, 435, -1, -1, 88, -1, - -1, 1171, -1, -1, 442, 1171, -1, -1, 815, -1, - 813, 506, 815, -1, 818, 819, 820, 821, -1, 818, - 774, 565, 820, 821, -1, 1186, 814, -1, 1106, 814, - -1, 502, 1101, 503, 814, -1, 199, 502, 817, 503, - -1, -1, 815, -1, 817, 506, 815, -1, 79, 774, - -1, -1, 774, -1, -1, 40, -1, 130, -1, -1, - 483, 166, -1, 483, 228, -1, -1, 99, 823, 176, - 1174, 828, 352, 833, 841, 847, -1, 99, 823, 176, - 1174, 828, 352, 406, 502, 853, 503, 841, 847, -1, - 99, 823, 176, 1174, 828, 841, 847, -1, 99, 823, - 325, 1174, 828, 841, 847, -1, 293, 345, -1, -1, - 502, 825, 503, -1, 502, 503, -1, 830, -1, 825, - 506, 830, -1, 827, -1, 826, 506, 827, -1, 1174, - 824, -1, 1193, -1, 1186, -1, 1186, 1162, -1, 502, - 829, 503, -1, 502, 503, -1, 835, -1, 829, 506, - 835, -1, 831, 832, 834, -1, 832, 831, 834, -1, - 832, 834, -1, 831, 834, -1, 834, -1, 198, -1, - 297, -1, 209, -1, 198, 297, -1, 450, -1, 1187, - -1, 834, -1, 1078, -1, 1187, 775, 497, 428, -1, - 379, 1187, 775, 497, 428, -1, 830, -1, 830, 120, - 1101, -1, 830, 492, 1101, -1, 830, -1, 502, 495, - 503, -1, 502, 838, 503, -1, 502, 294, 60, 838, - 503, -1, 502, 838, 294, 60, 838, 503, -1, 836, - -1, 838, 506, 836, -1, 1174, 837, -1, 839, -1, - 840, 506, 839, -1, 842, -1, -1, 844, -1, 842, - 844, -1, 63, 288, 278, 210, -1, 352, 278, 288, - 278, 210, -1, 398, -1, 195, -1, 389, -1, 456, - -1, 159, 369, 124, -1, 159, 369, 219, -1, 369, - 124, -1, 369, 219, -1, 231, -1, 273, 231, -1, - 98, 658, -1, 361, 658, -1, 402, 774, -1, 548, - -1, 305, 1186, -1, 39, 845, -1, 226, 543, -1, - 421, 850, -1, 460, -1, 843, -1, 1177, -1, 1177, - 506, 1177, -1, 350, 1101, -1, 846, -1, 52, 45, - 848, 146, -1, -1, 848, 849, 505, -1, -1, 512, - -1, 846, -1, 169, 428, 1078, -1, 850, 506, 169, - 428, 1078, -1, 461, 742, -1, -1, 832, 834, -1, - 852, -1, 853, 506, 852, -1, 32, 176, 827, 855, - 856, -1, 32, 325, 827, 855, 856, -1, 32, 358, - 827, 855, 856, -1, 843, -1, 855, 843, -1, 349, - -1, -1, 140, 176, 826, 561, -1, 140, 176, 192, - 155, 826, 561, -1, 140, 325, 826, 561, -1, 140, - 325, 192, 155, 826, 561, -1, 140, 358, 826, 561, - -1, 140, 358, 192, 155, 826, 561, -1, 140, 29, - 840, 561, -1, 140, 29, 192, 155, 840, 561, -1, - 140, 290, 862, 561, -1, 140, 290, 192, 155, 862, - 561, -1, 502, 1078, 503, -1, 502, 1078, 506, 1078, - 503, -1, 502, 270, 506, 1078, 503, -1, 502, 1078, - 506, 270, 503, -1, 1134, -1, 1186, 504, 861, -1, - 863, -1, 862, 506, 863, -1, 861, 860, -1, 136, - 865, -1, 866, -1, 865, 866, -1, 1177, -1, 226, - 543, -1, 99, 67, 502, 1078, 39, 1078, 503, 461, - 176, 827, 868, -1, 99, 67, 502, 1078, 39, 1078, - 503, 463, 176, 868, -1, 99, 67, 502, 1078, 39, - 1078, 503, 461, 209, 868, -1, 39, 196, -1, 39, - 43, -1, -1, 140, 67, 870, 502, 1078, 39, 1078, - 503, 561, -1, 192, 155, -1, -1, 99, 823, 421, - 169, 1078, 226, 1171, 502, 872, 503, -1, 174, 388, - 461, 176, 827, 506, 418, 388, 461, 176, 827, -1, - 418, 388, 461, 176, 827, 506, 174, 388, 461, 176, - 827, -1, 174, 388, 461, 176, 827, -1, 418, 388, - 461, 176, 827, -1, 140, 421, 870, 169, 1078, 226, - 1171, 561, -1, 340, 875, 810, 1169, -1, 340, 876, - 810, 1171, -1, 340, 502, 942, 503, 875, 810, 1169, - -1, 340, 502, 942, 503, 876, 810, 1171, -1, 202, - -1, 406, -1, 364, -1, 405, -1, 114, -1, 32, - 409, 1171, 377, 565, -1, 32, 409, 1171, 347, 565, - -1, 32, 29, 839, 343, 418, 1171, -1, 32, 80, - 774, 343, 418, 1171, -1, 32, 96, 774, 343, 418, - 1171, -1, 32, 114, 1171, 343, 418, 1171, -1, 32, - 138, 774, 343, 418, 1171, -1, 32, 138, 774, 343, - 92, 1171, 418, 1171, -1, 32, 171, 113, 465, 1171, - 343, 418, 1171, -1, 32, 176, 827, 343, 418, 1171, - -1, 32, 183, 1179, 343, 418, 1179, -1, 32, 666, - 226, 1171, 343, 418, 1171, -1, 32, 290, 75, 774, - 442, 1171, 343, 418, 1171, -1, 32, 290, 162, 774, - 442, 1171, 343, 418, 1171, -1, 32, 314, 1171, 288, - 1169, 343, 418, 1171, -1, 32, 314, 192, 155, 1171, - 288, 1169, 343, 418, 1171, -1, 32, 325, 827, 343, - 418, 1171, -1, 32, 328, 1171, 343, 418, 1171, -1, - 32, 358, 827, 343, 418, 1171, -1, 32, 364, 1171, - 343, 418, 1171, -1, 32, 374, 1171, 343, 418, 1171, - -1, 32, 400, 1171, 343, 418, 1171, -1, 32, 406, - 1055, 343, 418, 1171, -1, 32, 406, 192, 155, 1055, - 343, 418, 1171, -1, 32, 371, 1169, 343, 418, 1171, - -1, 32, 371, 192, 155, 1169, 343, 418, 1171, -1, - 32, 454, 1169, 343, 418, 1171, -1, 32, 454, 192, - 155, 1169, 343, 418, 1171, -1, 32, 249, 454, 1169, - 343, 418, 1171, -1, 32, 249, 454, 192, 155, 1169, - 343, 418, 1171, -1, 32, 202, 1169, 343, 418, 1171, - -1, 32, 202, 192, 155, 1169, 343, 418, 1171, -1, - 32, 171, 406, 1055, 343, 418, 1171, -1, 32, 171, - 406, 192, 155, 1055, 343, 418, 1171, -1, 32, 406, - 1055, 343, 879, 1171, 418, 1171, -1, 32, 406, 192, - 155, 1055, 343, 879, 1171, 418, 1171, -1, 32, 454, - 1169, 343, 879, 1171, 418, 1171, -1, 32, 454, 192, - 155, 1169, 343, 879, 1171, 418, 1171, -1, 32, 249, - 454, 1169, 343, 879, 1171, 418, 1171, -1, 32, 249, - 454, 192, 155, 1169, 343, 879, 1171, 418, 1171, -1, - 32, 406, 1055, 343, 92, 1171, 418, 1171, -1, 32, - 406, 192, 155, 1055, 343, 92, 1171, 418, 1171, -1, - 32, 171, 406, 1055, 343, 879, 1171, 418, 1171, -1, - 32, 171, 406, 192, 155, 1055, 343, 879, 1171, 418, - 1171, -1, 32, 362, 1171, 288, 1169, 343, 418, 1171, - -1, 32, 423, 1171, 288, 1169, 343, 418, 1171, -1, - 32, 149, 423, 1171, 343, 418, 1171, -1, 32, 355, - 1179, 343, 418, 1179, -1, 32, 441, 1179, 343, 418, - 1179, -1, 32, 409, 1171, 343, 418, 1171, -1, 32, - 393, 774, 343, 418, 1171, -1, 32, 413, 367, 307, - 774, 343, 418, 1171, -1, 32, 413, 367, 132, 774, - 343, 418, 1171, -1, 32, 413, 367, 411, 774, 343, - 418, 1171, -1, 32, 413, 367, 89, 774, 343, 418, - 1171, -1, 32, 428, 774, 343, 418, 1171, -1, 32, - 428, 774, 343, 48, 1171, 418, 1171, 561, -1, 81, - -1, -1, 377, 113, -1, -1, 32, 176, 827, 882, - 128, 288, 158, 1171, -1, 32, 325, 827, 882, 128, - 288, 158, 1171, -1, 32, 358, 827, 882, 128, 288, - 158, 1171, -1, 32, 423, 1171, 288, 1169, 882, 128, - 288, 158, 1171, -1, 32, 249, 454, 1169, 882, 128, - 288, 158, 1171, -1, 32, 202, 1169, 882, 128, 288, - 158, 1171, -1, 269, -1, -1, 32, 29, 839, 377, - 364, 1171, -1, 32, 80, 774, 377, 364, 1171, -1, - 32, 96, 774, 377, 364, 1171, -1, 32, 138, 774, - 377, 364, 1171, -1, 32, 158, 1171, 377, 364, 1171, - -1, 32, 176, 827, 377, 364, 1171, -1, 32, 290, - 863, 377, 364, 1171, -1, 32, 290, 75, 774, 442, - 1171, 377, 364, 1171, -1, 32, 290, 162, 774, 442, - 1171, 377, 364, 1171, -1, 32, 325, 827, 377, 364, - 1171, -1, 32, 358, 827, 377, 364, 1171, -1, 32, - 406, 1055, 377, 364, 1171, -1, 32, 406, 192, 155, - 1055, 377, 364, 1171, -1, 32, 393, 774, 377, 364, - 1171, -1, 32, 413, 367, 307, 774, 377, 364, 1171, - -1, 32, 413, 367, 132, 774, 377, 364, 1171, -1, - 32, 413, 367, 411, 774, 377, 364, 1171, -1, 32, - 413, 367, 89, 774, 377, 364, 1171, -1, 32, 371, - 1169, 377, 364, 1171, -1, 32, 371, 192, 155, 1169, - 377, 364, 1171, -1, 32, 454, 1169, 377, 364, 1171, - -1, 32, 454, 192, 155, 1169, 377, 364, 1171, -1, - 32, 249, 454, 1169, 377, 364, 1171, -1, 32, 249, - 454, 192, 155, 1169, 377, 364, 1171, -1, 32, 171, - 406, 1055, 377, 364, 1171, -1, 32, 171, 406, 192, - 155, 1055, 377, 364, 1171, -1, 32, 428, 774, 377, - 364, 1171, -1, 32, 290, 863, 377, 502, 885, 503, - -1, 886, -1, 885, 506, 886, -1, 1189, 492, 270, - -1, 1189, 492, 887, -1, 834, -1, 1194, -1, 1137, - -1, 658, -1, 1177, -1, 32, 428, 774, 377, 502, - 885, 503, -1, 32, 29, 839, 304, 418, 1180, -1, - 32, 80, 774, 304, 418, 1180, -1, 32, 96, 774, - 304, 418, 1180, -1, 32, 114, 1171, 304, 418, 1180, - -1, 32, 138, 774, 304, 418, 1180, -1, 32, 176, - 827, 304, 418, 1180, -1, 32, 666, 226, 1171, 304, - 418, 1180, -1, 32, 227, 282, 658, 304, 418, 1180, - -1, 32, 290, 863, 304, 418, 1180, -1, 32, 290, - 75, 774, 442, 1171, 304, 418, 1180, -1, 32, 290, - 162, 774, 442, 1171, 304, 418, 1180, -1, 32, 325, - 827, 304, 418, 1180, -1, 32, 358, 827, 304, 418, - 1180, -1, 32, 364, 1171, 304, 418, 1180, -1, 32, - 428, 774, 304, 418, 1180, -1, 32, 409, 1171, 304, - 418, 1180, -1, 32, 393, 774, 304, 418, 1180, -1, - 32, 413, 367, 132, 774, 304, 418, 1180, -1, 32, - 413, 367, 89, 774, 304, 418, 1180, -1, 32, 171, - 113, 465, 1171, 304, 418, 1180, -1, 32, 374, 1171, - 304, 418, 1180, -1, 32, 149, 423, 1171, 304, 418, - 1180, -1, 32, 328, 1171, 304, 418, 1180, -1, 32, - 400, 1171, 304, 418, 1180, -1, 99, 328, 1171, 851, - -1, 99, 328, 1171, 169, 30, 407, 851, -1, 99, - 328, 1171, 169, 892, 851, -1, 406, 1055, 617, 624, - -1, 407, 198, 364, 1186, -1, 407, 198, 364, 107, - -1, 1186, 617, 624, -1, 1186, 1162, 617, 624, -1, - 1056, 617, 624, -1, 107, -1, 891, -1, 892, 506, - 891, -1, 32, 328, 1171, 377, 742, -1, 32, 328, - 1171, 26, 892, -1, 32, 328, 1171, 377, 892, -1, - 32, 328, 1171, 140, 892, -1, 99, 400, 1171, 91, - 1177, 328, 1170, 851, -1, 32, 400, 1171, 377, 742, - -1, 32, 400, 1171, 91, 1177, -1, 32, 400, 1171, - 339, 328, 851, -1, 32, 400, 1171, 26, 328, 1170, - 851, -1, 32, 400, 1171, 140, 328, 1170, 851, -1, - 32, 400, 1171, 377, 328, 1170, 851, -1, 32, 400, - 1171, 143, -1, 32, 400, 1171, 133, -1, 32, 400, - 1171, 384, 742, -1, 140, 400, 1171, 561, -1, 140, - 400, 192, 155, 1171, 561, -1, 99, 823, 362, 1171, - 39, 288, 902, 418, 1169, 1066, 136, 903, 898, -1, - 274, -1, 900, -1, 502, 899, 503, -1, 899, 505, - 901, -1, 901, -1, 996, -1, 963, -1, 979, -1, - 972, -1, 904, -1, 900, -1, -1, 370, -1, 440, - -1, 125, -1, 212, -1, 213, -1, 31, -1, -1, - 275, 1186, 905, -1, 506, 1177, -1, -1, 237, 1186, - -1, 437, 1186, -1, 437, 495, -1, 22, 910, 914, - -1, 391, 420, 913, -1, 85, 910, 914, -1, 356, - 910, 914, -1, 363, 1186, -1, 342, 363, 1186, -1, - 342, 1186, -1, 356, 910, 418, 363, 1186, -1, 356, - 910, 418, 1186, -1, 319, 420, 1177, -1, 85, 320, - 1177, -1, 356, 320, 1177, -1, 52, 910, 913, -1, - 146, 910, 914, -1, 464, -1, 420, -1, -1, 222, - 234, 539, -1, 331, 289, -1, 331, 466, -1, 122, - -1, 273, 122, -1, 911, -1, 912, 506, 911, -1, - 912, 911, -1, 912, -1, -1, 36, 69, -1, 36, - 269, 69, -1, -1, 99, 594, 454, 1169, 617, 566, - 39, 996, 916, -1, 99, 293, 345, 594, 454, 1169, - 617, 566, 39, 996, 916, -1, 99, 594, 335, 454, - 1169, 502, 618, 503, 566, 39, 996, 916, -1, 99, - 293, 345, 594, 335, 454, 1169, 502, 618, 503, 566, - 39, 996, 916, -1, 461, 73, 291, -1, 461, 65, - 73, 291, -1, 461, 239, 73, 291, -1, -1, 238, - 1173, -1, 99, 114, 1171, 515, 919, -1, 920, -1, - -1, 921, -1, 920, 921, -1, 922, 923, 658, -1, - 922, 923, 540, -1, 922, 923, 120, -1, 3, -1, - 91, 236, -1, 144, -1, 242, -1, 304, -1, 409, - -1, 411, -1, 492, -1, -1, 32, 114, 1171, 461, - 919, -1, 32, 114, 1171, 919, -1, 32, 114, 1171, - 377, 409, 1171, -1, 32, 114, 1171, 339, 80, 453, - -1, 32, 114, 1171, 547, -1, 140, 114, 1171, -1, - 140, 114, 192, 155, 1171, -1, 140, 114, 1171, 515, - 502, 927, 503, -1, 140, 114, 192, 155, 1171, 515, - 502, 927, 503, -1, 928, -1, 927, 506, 928, -1, - 170, -1, 32, 80, 774, 339, 453, -1, 32, 405, - 377, 534, -1, 32, 405, 347, 546, -1, 99, 138, - 774, 933, 1078, 605, -1, 32, 138, 774, 560, -1, - 32, 138, 774, 140, 273, 278, -1, 32, 138, 774, - 377, 273, 278, -1, 32, 138, 774, 26, 614, -1, - 32, 138, 774, 140, 92, 1171, 561, -1, 32, 138, - 774, 140, 92, 192, 155, 1171, 561, -1, 32, 138, - 774, 445, 92, 1171, -1, 39, -1, -1, 32, 413, - 367, 132, 774, 742, -1, 32, 413, 367, 89, 774, - 26, 246, 169, 1170, 936, 773, -1, 32, 413, 367, - 89, 774, 32, 246, 169, 1170, 936, 773, -1, 32, - 413, 367, 89, 774, 32, 246, 345, 774, 936, 774, - -1, 32, 413, 367, 89, 774, 32, 246, 169, 1170, - 345, 774, 936, 774, -1, 32, 413, 367, 89, 774, - 140, 246, 169, 1170, -1, 32, 413, 367, 89, 774, - 140, 246, 192, 155, 169, 1170, -1, 461, -1, 484, - -1, 99, 756, 96, 774, 169, 1177, 418, 1177, 174, - 774, -1, 77, 948, 1169, 939, -1, 77, 502, 942, - 503, 1169, 939, -1, 77, 948, -1, 77, 948, 1171, - 288, 1169, -1, 442, 1171, -1, -1, 443, 949, 950, - 948, 947, 954, -1, 443, 502, 942, 503, 954, -1, - 943, 948, 954, -1, 943, 502, 942, 503, 954, -1, - 944, -1, 942, 506, 944, -1, 35, -1, 34, -1, - 945, 946, -1, 1188, -1, 943, -1, 540, -1, 658, - -1, -1, 943, -1, -1, 452, -1, -1, 175, -1, - -1, 173, -1, -1, 502, 1170, 503, -1, -1, 1169, - 951, -1, 952, -1, 953, 506, 952, -1, 953, -1, - -1, 156, 956, -1, 156, 943, 948, 956, -1, 156, - 452, 956, -1, 156, 502, 942, 503, 956, -1, 996, - -1, 963, -1, 979, -1, 972, -1, 984, -1, 992, - -1, 644, -1, 647, -1, 650, -1, 960, -1, 319, - 1171, 958, 39, 959, -1, 502, 1143, 503, -1, -1, - 996, -1, 963, -1, 979, -1, 972, -1, 984, -1, - 154, 1171, 961, -1, 99, 594, 406, 645, 39, 154, - 1171, 961, 646, -1, 99, 594, 406, 192, 273, 155, - 645, 39, 154, 1171, 961, 646, -1, 502, 1139, 503, - -1, -1, 116, 1171, -1, 116, 319, 1171, -1, 116, - 30, -1, 116, 319, 30, -1, 1007, 212, 218, 964, - 965, 969, 971, -1, 1169, -1, 1169, 39, 1186, -1, - 996, -1, 302, 966, 447, 996, -1, 502, 967, 503, - 996, -1, 502, 967, 503, 302, 966, 447, 996, -1, - 120, 448, -1, 441, -1, 405, -1, 968, -1, 967, - 506, 968, -1, 1186, 1163, -1, 288, 90, 970, 136, - 440, 377, 980, 1066, -1, 288, 90, 970, 136, 274, - -1, -1, 502, 813, 503, 1066, -1, 288, 92, 1171, - -1, -1, 351, 1166, -1, -1, 1007, 125, 174, 1058, - 973, 1067, 971, -1, 442, 1045, -1, -1, 243, 1010, - 1057, 975, 977, -1, 198, 976, 255, -1, -1, 24, - 380, -1, 360, 380, -1, 360, 153, -1, 380, 440, - 153, -1, 380, -1, 380, 360, 153, -1, 153, -1, - 24, 153, -1, 277, -1, -1, 277, -1, 384, 244, - -1, -1, 1007, 440, 1058, 377, 980, 1044, 1067, 971, - -1, 981, -1, 980, 506, 981, -1, 982, 492, 1101, - -1, 502, 983, 503, 492, 1101, -1, 1186, 1163, -1, - 982, -1, 983, 506, 982, -1, 1007, 251, 218, 1058, - 442, 1046, 288, 1101, 985, -1, 986, -1, 985, 986, - -1, 457, 248, 987, 414, 988, -1, 457, 248, 987, - 414, 989, -1, 457, 273, 248, 987, 414, 990, -1, - 457, 248, 987, 414, 136, 274, -1, 457, 273, 248, - 987, 414, 136, 274, -1, 36, 1101, -1, -1, 440, - 377, 980, -1, 125, -1, 212, 991, -1, 212, 302, - 966, 447, 991, -1, 212, 502, 967, 503, 991, -1, - 212, 502, 967, 503, 302, 966, 447, 991, -1, 212, - 120, 448, -1, 448, 502, 1139, 503, -1, 119, 993, - 994, 111, 995, 169, 996, -1, 1171, -1, -1, 994, - 269, 366, -1, 994, 366, -1, 994, 55, -1, 994, - 41, -1, 994, 211, -1, -1, 461, 189, -1, 463, - 189, -1, 998, -1, 997, -1, 502, 998, 503, -1, - 502, 997, 503, -1, 1000, -1, 999, 1016, -1, 999, - 1015, 1037, 1020, -1, 999, 1015, 1019, 1038, -1, 1001, - 999, -1, 1001, 999, 1016, -1, 1001, 999, 1015, 1037, - 1020, -1, 1001, 999, 1015, 1019, 1038, -1, 1000, -1, - 997, -1, 370, 1013, 1165, 1008, 1044, 1066, 1029, 1036, - 1119, -1, 370, 1012, 1166, 1008, 1044, 1066, 1029, 1036, - 1119, -1, 1043, -1, 406, 1055, -1, 999, 434, 1011, - 999, -1, 999, 216, 1011, 999, -1, 999, 150, 1011, - 999, -1, 461, 1002, -1, 484, 1002, -1, 461, 335, - 1002, -1, 1003, -1, 1002, 506, 1003, -1, 1171, 951, - 39, 1004, 502, 959, 503, 1005, 1006, -1, 249, -1, - 273, 249, -1, -1, 367, 129, 166, 60, 618, 377, - 1186, -1, 367, 59, 166, 60, 618, 377, 1186, -1, - -1, 112, 618, 377, 1186, 418, 1175, 120, 1175, 442, - 1186, -1, 112, 618, 377, 1186, 442, 1186, -1, -1, - 1001, -1, -1, 218, 1009, -1, -1, 412, 1010, 1169, - -1, 410, 1010, 1169, -1, 239, 412, 1010, 1169, -1, - 239, 410, 1010, 1169, -1, 179, 412, 1010, 1169, -1, - 179, 410, 1010, 1169, -1, 438, 1010, 1169, -1, 406, - 1169, -1, 1169, -1, 406, -1, -1, 30, -1, 135, - -1, -1, 135, -1, 135, 288, 502, 1139, 503, -1, - 30, -1, -1, 1012, -1, 1013, -1, 1016, -1, -1, - 294, 60, 1017, -1, 1018, -1, 1017, 506, 1018, -1, - 1101, 442, 1137, 821, -1, 1101, 820, 821, -1, 1021, - 1022, -1, 1022, 1021, -1, 1021, -1, 1022, -1, 1019, - -1, -1, 236, 1023, -1, 236, 1023, 506, 1024, -1, - 163, 1028, 1025, 1027, 289, -1, 163, 1028, 1025, 1027, - 461, 415, -1, 163, 1028, 1027, 289, -1, 163, 1028, - 1027, 461, 415, -1, 285, 1024, -1, 285, 1025, 1027, - -1, 1101, -1, 30, -1, 1101, -1, 1103, -1, 493, - 1026, -1, 494, 1026, -1, 1176, -1, 5, -1, 360, - -1, 361, -1, 166, -1, 264, -1, 183, 60, 1011, - 1030, -1, -1, 1031, -1, 1030, 506, 1031, -1, 1101, - -1, 1032, -1, 1034, -1, 1033, -1, 1035, -1, 502, - 503, -1, 357, 502, 1139, 503, -1, 102, 502, 1139, - 503, -1, 184, 378, 502, 1030, 503, -1, 187, 1101, - -1, -1, 1039, -1, 169, 331, 289, -1, 1037, -1, - -1, 1040, -1, 1039, 1040, -1, 1041, 1042, 978, -1, - 169, 440, -1, 169, 269, 224, 440, -1, 169, 380, - -1, 169, 224, 380, -1, 283, 1168, -1, -1, 448, - 502, 1139, 503, -1, 1043, 506, 502, 1139, 503, -1, - 174, 1045, -1, -1, 1046, -1, 1045, 506, 1046, -1, - 1055, 1049, -1, 1055, 1049, 1059, -1, 1061, 1051, -1, - 229, 1061, 1051, -1, 1071, 1049, -1, 229, 1071, 1049, - -1, 997, 1049, -1, 229, 997, 1049, -1, 1047, -1, - 502, 1047, 503, 1048, -1, 502, 1047, 503, -1, 1046, - 100, 223, 1046, -1, 1046, 1052, 223, 1046, 1054, -1, - 1046, 223, 1046, 1054, -1, 1046, 261, 1052, 223, 1046, - -1, 1046, 261, 223, 1046, -1, 39, 1186, 502, 1170, - 503, -1, 39, 1186, -1, 1186, 502, 1170, 503, -1, - 1186, -1, 1048, -1, -1, 39, 1186, -1, -1, 1048, - -1, 39, 502, 1069, 503, -1, 39, 1186, 502, 1069, - 503, -1, 1186, 502, 1069, 503, -1, -1, 175, 1053, - -1, 233, 1053, -1, 354, 1053, -1, 208, -1, 298, - -1, -1, 442, 502, 1170, 503, 1050, -1, 288, 1101, - -1, 1169, -1, 1056, -1, 1169, 495, -1, 289, 1169, - -1, 289, 502, 1169, 503, -1, 1055, -1, 1057, 506, - 1055, -1, 1055, -1, 1055, 1186, -1, 1055, 39, 1186, - -1, 408, 1174, 502, 1139, 503, 1060, -1, 344, 502, - 1101, 503, -1, -1, 1106, 1065, -1, 361, 174, 502, - 1063, 503, 1065, -1, 1106, 1064, -1, 1062, -1, 1063, - 506, 1062, -1, 39, 502, 1069, 503, -1, -1, 484, - 295, -1, -1, 458, 1101, -1, -1, 458, 1101, -1, - 458, 103, 283, 993, -1, -1, 1069, -1, -1, 1070, - -1, 1069, 506, 1070, -1, 1186, 1078, 562, -1, 478, - 502, 1103, 1115, 82, 1072, 503, -1, 478, 502, 473, - 502, 1076, 503, 506, 1103, 1115, 82, 1072, 503, -1, - 1073, -1, 1072, 506, 1073, -1, 1186, 1078, -1, 1186, - 1078, 1074, -1, 1186, 169, 295, -1, 1075, -1, 1074, - 1075, -1, 3, 1102, -1, 120, 1102, -1, 273, 278, - -1, 278, -1, 1077, -1, 1076, 506, 1077, -1, 1102, - 39, 1189, -1, 120, 1102, -1, 1080, 1079, -1, 379, - 1080, 1079, -1, 1080, 38, 500, 1176, 501, -1, 379, - 1080, 38, 500, 1176, 501, -1, 1080, 38, -1, 379, - 1080, 38, -1, 1079, 500, 501, -1, 1079, 500, 1176, - 501, -1, -1, 1082, -1, 1084, -1, 1086, -1, 1090, - -1, 1096, -1, 1097, 1099, -1, 1097, 502, 1176, 503, - -1, 1084, -1, 1087, -1, 1091, -1, 1096, -1, 1187, - 1083, -1, 1187, 775, 1083, -1, 502, 1139, 503, -1, - -1, 214, -1, 215, -1, 385, -1, 54, -1, 332, - -1, 167, 1085, -1, 139, 317, -1, 118, 1083, -1, - 117, 1083, -1, 281, 1083, -1, 57, -1, 502, 1176, - 503, -1, -1, 1088, -1, 1089, -1, 1088, -1, 1089, - -1, 56, 1095, 502, 1139, 503, -1, 56, 1095, -1, - 1092, -1, 1093, -1, 1092, -1, 1093, -1, 1094, 502, - 1176, 503, -1, 1094, -1, 71, 1095, -1, 70, 1095, - -1, 449, -1, 260, 71, 1095, -1, 260, 70, 1095, - -1, 262, 1095, -1, 451, -1, -1, 417, 502, 1176, - 503, 1098, -1, 417, 1098, -1, 416, 502, 1176, 503, - 1098, -1, 416, 1098, -1, 217, -1, 484, 416, 481, - -1, 463, 416, 481, -1, -1, 479, -1, 256, -1, - 115, -1, 190, -1, 253, -1, 1100, -1, 479, 418, - 256, -1, 115, 418, 190, -1, 115, 418, 253, -1, - 115, 418, 1100, -1, 190, 418, 253, -1, 190, 418, - 1100, -1, 253, 418, 1100, -1, -1, 368, -1, 368, - 502, 1176, 503, -1, 1103, -1, 1101, 13, 1078, -1, - 1101, 79, 774, -1, 1101, 46, 416, 481, 1101, -1, - 493, 1101, -1, 494, 1101, -1, 1101, 493, 1101, -1, - 1101, 494, 1101, -1, 1101, 495, 1101, -1, 1101, 496, - 1101, -1, 1101, 497, 1101, -1, 1101, 498, 1101, -1, - 1101, 490, 1101, -1, 1101, 491, 1101, -1, 1101, 492, - 1101, -1, 1101, 17, 1101, -1, 1101, 18, 1101, -1, - 1101, 19, 1101, -1, 1101, 1136, 1101, -1, 1136, 1101, - -1, 1101, 36, 1101, -1, 1101, 293, 1101, -1, 273, - 1101, -1, 482, 1101, -1, 1101, 235, 1101, -1, 1101, - 235, 1101, 148, 1101, -1, 1101, 482, 235, 1101, -1, - 1101, 482, 235, 1101, 148, 1101, -1, 1101, 193, 1101, - -1, 1101, 193, 1101, 148, 1101, -1, 1101, 482, 193, - 1101, -1, 1101, 482, 193, 1101, 148, 1101, -1, 1101, - 382, 418, 1101, -1, 1101, 382, 418, 1101, 148, 1101, - -1, 1101, 482, 382, 418, 1101, -1, 1101, 482, 382, - 418, 1101, 148, 1101, -1, 1101, 220, 278, -1, 1101, - 221, -1, 1101, 220, 273, 278, -1, 1101, 276, -1, - 1130, 300, 1130, -1, 1101, 220, 425, -1, 1101, 220, - 273, 425, -1, 1101, 220, 161, -1, 1101, 220, 273, - 161, -1, 1101, 220, 436, -1, 1101, 220, 273, 436, - -1, 1101, 220, 135, 174, 1101, -1, 1101, 220, 273, - 135, 174, 1101, -1, 1101, 53, 1164, 1102, 36, 1101, - -1, 1101, 482, 53, 1164, 1102, 36, 1101, -1, 1101, - 53, 403, 1102, 36, 1101, -1, 1101, 482, 53, 403, - 1102, 36, 1101, -1, 1101, 198, 1153, -1, 1101, 482, - 198, 1153, -1, 1101, 1138, 1133, 997, -1, 1101, 1138, - 1133, 502, 1101, 503, -1, 435, 608, 997, -1, 1101, - 220, 137, -1, 1101, 220, 273, 137, -1, 1101, 220, - 272, -1, 1101, 220, 1148, 272, -1, 1101, 220, 273, - 272, -1, 1101, 220, 273, 1148, 272, -1, 120, -1, - 1103, -1, 1102, 13, 1078, -1, 493, 1102, -1, 494, - 1102, -1, 1102, 493, 1102, -1, 1102, 494, 1102, -1, - 1102, 495, 1102, -1, 1102, 496, 1102, -1, 1102, 497, - 1102, -1, 1102, 498, 1102, -1, 1102, 490, 1102, -1, - 1102, 491, 1102, -1, 1102, 492, 1102, -1, 1102, 17, - 1102, -1, 1102, 18, 1102, -1, 1102, 19, 1102, -1, - 1102, 1136, 1102, -1, 1136, 1102, -1, 1102, 220, 135, - 174, 1102, -1, 1102, 220, 273, 135, 174, 1102, -1, - 1102, 220, 137, -1, 1102, 220, 273, 137, -1, 1159, - -1, 1175, -1, 12, 1163, -1, 502, 1101, 503, 1163, - -1, 1154, -1, 1105, -1, 997, -1, 997, 1162, -1, - 155, 997, -1, 38, 997, -1, 38, 1144, -1, 1131, - -1, 1132, -1, 184, 502, 1139, 503, -1, 1174, 502, - 503, -1, 1174, 502, 1140, 1015, 503, -1, 1174, 502, - 450, 1141, 1015, 503, -1, 1174, 502, 1140, 506, 450, - 1141, 1015, 503, -1, 1174, 502, 30, 1140, 1015, 503, - -1, 1174, 502, 135, 1140, 1015, 503, -1, 1174, 502, - 495, 503, -1, 1104, 1117, 1118, 1122, -1, 1107, -1, - 1104, -1, 1107, -1, 80, 169, 502, 1101, 503, -1, - 105, -1, 108, -1, 108, 502, 1176, 503, -1, 109, - -1, 109, 502, 1176, 503, -1, 240, -1, 240, 502, - 1176, 503, -1, 241, -1, 241, 502, 1176, 503, -1, - 106, -1, 110, -1, 376, -1, 441, -1, 104, -1, - 107, -1, 67, 502, 1101, 39, 1078, 503, -1, 160, - 502, 1146, 503, -1, 271, 502, 1101, 503, -1, 271, - 502, 1101, 506, 1148, 503, -1, 301, 502, 1149, 503, - -1, 301, 502, 1142, 503, -1, 315, 502, 1150, 503, - -1, 401, 502, 1151, 503, -1, 401, 502, 1142, 503, - -1, 422, 502, 1101, 39, 1078, 503, -1, 424, 502, - 58, 1152, 503, -1, 424, 502, 230, 1152, 503, -1, - 424, 502, 419, 1152, 503, -1, 424, 502, 1152, 503, - -1, 279, 502, 1101, 506, 1101, 503, -1, 78, 502, - 1139, 503, -1, 182, 502, 1139, 503, -1, 232, 502, - 1139, 503, -1, 469, 502, 1139, 503, -1, 470, 502, - 258, 1189, 503, -1, 470, 502, 258, 1189, 506, 1110, - 503, -1, 470, 502, 258, 1189, 506, 1139, 503, -1, - 470, 502, 258, 1189, 506, 1110, 506, 1139, 503, -1, - 471, 502, 1103, 1115, 503, -1, 472, 502, 1111, 503, - -1, 474, 502, 1113, 1101, 1114, 503, -1, 475, 502, - 258, 1189, 503, -1, 475, 502, 258, 1189, 506, 1101, - 503, -1, 476, 502, 1101, 506, 1108, 1109, 503, -1, - 477, 502, 1113, 1101, 39, 1080, 503, -1, 453, 1101, - -1, 453, 269, 447, -1, 506, 390, 480, -1, 506, - 390, 269, -1, 506, 390, 269, 447, -1, -1, 468, - 502, 1111, 503, -1, 1112, -1, 1111, 506, 1112, -1, - 1101, 39, 1189, -1, 1101, -1, 137, -1, 94, -1, - 318, 459, -1, 399, 459, -1, -1, 310, 1103, -1, - 310, 1103, 1116, -1, 310, 1116, 1103, -1, 310, 1116, - 1103, 1116, -1, 60, 336, -1, 60, 447, -1, 462, - 183, 502, 1016, 503, -1, -1, 164, 502, 458, 1101, - 503, -1, -1, 460, 1120, -1, -1, 1121, -1, 1120, - 506, 1121, -1, 1186, 39, 1123, -1, 299, 1123, -1, - 299, 1186, -1, -1, 502, 1124, 1125, 1015, 1126, 503, - -1, 1186, -1, -1, 309, 60, 1139, -1, -1, 330, - 1127, 1129, -1, 361, 1127, 1129, -1, 185, 1127, 1129, - -1, -1, 1128, -1, 53, 1128, 36, 1128, -1, 431, - 316, -1, 431, 168, -1, 103, 360, -1, 1101, 316, - -1, 1101, 168, -1, 151, 103, 360, -1, 151, 183, - -1, 151, 415, -1, 151, 269, 296, -1, -1, 360, - 502, 1139, 503, -1, 360, 502, 503, -1, 502, 1139, - 506, 1101, 503, -1, 360, 502, 1139, 503, -1, 360, - 502, 503, -1, 502, 1139, 506, 1101, 503, -1, 37, - -1, 387, -1, 30, -1, 10, -1, 1135, -1, 493, - -1, 494, -1, 495, -1, 496, -1, 497, -1, 498, - -1, 490, -1, 491, -1, 492, -1, 17, -1, 18, - -1, 19, -1, 10, -1, 290, 502, 861, 503, -1, - 1134, -1, 290, 502, 861, 503, -1, 1134, -1, 290, - 502, 861, 503, -1, 235, -1, 482, 235, -1, 193, - -1, 482, 193, -1, 1101, -1, 1139, 506, 1101, -1, - 1141, -1, 1140, 506, 1141, -1, 1101, -1, 832, 15, - 1101, -1, 832, 16, 1101, -1, 1140, -1, -1, 1078, - -1, 1143, 506, 1078, -1, 500, 1139, 501, -1, 500, - 1145, 501, -1, 500, 501, -1, 1144, -1, 1145, 506, - 1144, -1, 1147, 174, 1101, -1, 12, 174, 1101, -1, - 3, -1, 479, -1, 256, -1, 115, -1, 190, -1, - 253, -1, 368, -1, 1177, -1, 265, -1, 266, -1, - 267, -1, 268, -1, 1101, 312, 1101, 174, 1101, 169, - 1101, -1, 1101, 312, 1101, 174, 1101, -1, 1102, 198, - 1102, -1, 1101, 174, 1101, 169, 1101, -1, 1101, 169, - 1101, 174, 1101, -1, 1101, 174, 1101, -1, 1101, 169, - 1101, -1, 1101, 382, 1101, 148, 1101, -1, 1101, 174, - 1139, -1, 174, 1139, -1, 1139, -1, 997, -1, 502, - 1139, 503, -1, 66, 1158, 1155, 1157, 146, -1, 1156, - -1, 1155, 1156, -1, 457, 1101, 414, 1101, -1, 142, - 1101, -1, -1, 1101, -1, -1, 1186, -1, 1186, 1162, - -1, 504, 1172, -1, 504, 495, -1, 500, 1101, 501, - -1, 500, 1161, 507, 1161, 501, -1, 1101, -1, -1, - 1160, -1, 1162, 1160, -1, -1, 1163, 1160, -1, 44, - -1, -1, 1166, -1, -1, 1167, -1, 1166, 506, 1167, - -1, 1101, 39, 1189, -1, 1101, 1190, -1, 1101, -1, - 495, -1, 1169, -1, 1168, 506, 1169, -1, 1186, -1, - 1186, 1162, -1, 1171, -1, 1170, 506, 1171, -1, 1186, - -1, 1189, -1, 1177, -1, 1187, -1, 1186, 1162, -1, - 1176, -1, 5, -1, 1177, -1, 8, -1, 9, -1, - 1174, 1177, -1, 1174, 502, 1140, 1015, 503, 1177, -1, - 1174, 12, -1, 1174, 502, 1140, 1015, 503, 12, -1, - 1081, 1177, -1, 1097, 1177, 1099, -1, 1097, 502, 1176, - 503, 1177, -1, 1081, 12, -1, 1097, 12, 1099, -1, - 1097, 502, 1176, 503, 12, -1, 425, -1, 161, -1, - 278, -1, 11, -1, 6, -1, 1176, -1, 493, 1176, - -1, 494, 1176, -1, 1180, -1, 1188, -1, 106, -1, - 110, -1, 376, -1, 1180, -1, 1181, 506, 1180, -1, - 1014, 1165, 1044, 1066, 1029, 1036, 1119, 1015, 1020, 1038, - -1, 1184, 1163, 1185, 1182, -1, 1186, -1, 12, -1, - 15, -1, 492, -1, 3, -1, 1191, -1, 1192, -1, - 3, -1, 1191, -1, 1193, -1, 3, -1, 1191, -1, - 1192, -1, 1193, -1, 3, -1, 1191, -1, 1192, -1, - 1193, -1, 1194, -1, 3, -1, 1195, -1, 22, -1, - 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, - 28, -1, 29, -1, 31, -1, 32, -1, 33, -1, - 41, -1, 42, -1, 43, -1, 46, -1, 45, -1, - 47, -1, 48, -1, 50, -1, 51, -1, 52, -1, - 59, -1, 60, -1, 61, -1, 62, -1, 63, -1, - 64, -1, 65, -1, 68, -1, 69, -1, 72, -1, - 74, -1, 75, -1, 76, -1, 77, -1, 82, -1, - 83, -1, 84, -1, 85, -1, 86, -1, 87, -1, - 89, -1, 90, -1, 91, -1, 93, -1, 94, -1, - 95, -1, 96, -1, 97, -1, 98, -1, 101, -1, - 102, -1, 103, -1, 111, -1, 112, -1, 113, -1, - 114, -1, 115, -1, 116, -1, 119, -1, 121, -1, - 123, -1, 124, -1, 125, -1, 126, -1, 127, -1, - 128, -1, 129, -1, 131, -1, 132, -1, 133, -1, - 134, -1, 137, -1, 138, -1, 139, -1, 140, -1, - 141, -1, 143, -1, 144, -1, 145, -1, 147, -1, - 148, -1, 149, -1, 151, -1, 152, -1, 153, -1, - 154, -1, 156, -1, 157, -1, 158, -1, 159, -1, - 162, -1, 164, -1, 165, -1, 166, -1, 168, -1, - 170, -1, 172, -1, 176, -1, 177, -1, 178, -1, - 179, -1, 181, -1, 185, -1, 186, -1, 188, -1, - 189, -1, 190, -1, 191, -1, 192, -1, 194, -1, - 195, -1, 196, -1, 197, -1, 199, -1, 200, -1, - 201, -1, 202, -1, 203, -1, 204, -1, 205, -1, - 207, -1, 210, -1, 211, -1, 212, -1, 213, -1, - 219, -1, 222, -1, 224, -1, 225, -1, 226, -1, - 227, -1, 228, -1, 231, -1, 234, -1, 237, -1, - 238, -1, 239, -1, 242, -1, 243, -1, 244, -1, - 245, -1, 246, -1, 247, -1, 248, -1, 249, -1, - 250, -1, 251, -1, 252, -1, 253, -1, 254, -1, + 522, 0, -1, 523, -1, 498, 1095, -1, 499, 1213, + -1, 500, 1214, -1, 501, 1214, -1, 502, 1214, -1, + 523, 518, 524, -1, 524, -1, 525, -1, 926, -1, + 755, -1, 946, -1, 941, -1, 942, -1, 822, -1, + 949, -1, 768, -1, 690, -1, 693, -1, 698, -1, + 711, -1, 870, -1, 543, -1, 898, -1, 900, -1, + 906, -1, 901, -1, 905, -1, 721, -1, 669, -1, + 947, -1, 571, -1, 894, -1, 589, -1, 910, -1, + 540, -1, 538, -1, 912, -1, 660, -1, 952, -1, + 951, -1, 719, -1, 958, -1, 530, -1, 569, -1, + 592, -1, 955, -1, 796, -1, 566, -1, 593, -1, + 729, -1, 661, -1, 757, -1, 883, -1, 954, -1, + 948, -1, 687, -1, 694, -1, 707, -1, 712, -1, + 838, -1, 542, -1, 664, -1, 770, -1, 777, -1, + 907, -1, 778, -1, 720, -1, 677, -1, 545, -1, + 668, -1, 608, -1, 911, -1, 657, -1, 684, -1, + 887, -1, 731, -1, 751, -1, 531, -1, 537, -1, + 716, -1, 935, -1, 979, -1, 1009, -1, 758, -1, + 989, -1, 570, -1, 880, -1, 885, -1, 781, -1, + 782, -1, 783, -1, 785, -1, 913, -1, 686, -1, + 889, -1, 541, -1, 718, -1, 943, -1, 977, -1, + 972, -1, 801, -1, 805, -1, 816, -1, 713, -1, + 827, -1, 980, -1, 923, -1, 667, -1, 934, -1, + 991, -1, 1001, -1, 921, -1, 974, -1, 784, -1, + 890, -1, 874, -1, 873, -1, 875, -1, 895, -1, + 806, -1, 817, -1, 914, -1, 798, -1, 1013, -1, + 925, -1, 794, -1, 924, -1, 996, -1, 957, -1, + 560, -1, 548, -1, 565, -1, 932, -1, -1, 1217, + -1, -1, 791, -1, -1, 89, -1, -1, 65, -1, + 358, -1, -1, 63, 1121, -1, 100, 364, 1210, 532, + 533, -1, 472, -1, 496, -1, -1, 533, 536, -1, + -1, 534, 535, -1, -1, 320, 1208, -1, 320, 12, + -1, 320, 287, -1, 146, 320, 1208, -1, 146, 320, + 12, -1, 444, 320, 1208, -1, 207, -1, 92, 245, + 1209, -1, 455, 450, 1208, -1, 452, 1212, -1, 3, + -1, 535, -1, 414, 1207, -1, 28, 1212, -1, 364, + 1212, -1, 200, 364, 1212, -1, 200, 185, 1212, -1, + 100, 452, 1210, 532, 533, -1, 33, 364, 1211, 532, + 534, -1, 33, 452, 1211, 532, 534, -1, -1, 200, + 115, 1202, -1, 33, 364, 1211, 539, 563, -1, 33, + 364, 31, 539, 563, -1, 33, 452, 1211, 539, 563, + -1, 33, 452, 31, 539, 563, -1, 141, 364, 1212, + -1, 141, 364, 194, 156, 1212, -1, 141, 452, 1212, + -1, 141, 452, 194, 156, 1212, -1, 141, 185, 1212, + -1, 141, 185, 194, 156, 1212, -1, 100, 185, 1210, + 532, 533, -1, 33, 185, 1211, 544, 452, 1212, -1, + 27, -1, 141, -1, 100, 374, 526, 50, 1211, 546, + -1, 100, 374, 1217, 546, -1, 100, 374, 194, 282, + 156, 526, 50, 1211, 546, -1, 100, 374, 194, 282, + 156, 1217, 546, -1, 546, 547, -1, -1, 608, -1, + 827, -1, 668, -1, 731, -1, 805, -1, 932, -1, + 387, 549, -1, 387, 248, 549, -1, 387, 385, 549, + -1, 431, 929, -1, 385, 73, 40, 431, 929, -1, + 551, -1, 552, 429, 553, -1, 552, 505, 553, -1, + 552, 429, 121, -1, 552, 505, 121, -1, 550, -1, + 552, 176, 104, -1, 427, 492, 557, -1, 69, 1208, + -1, 374, 1208, -1, 374, 12, -1, 268, 558, -1, + 364, 559, -1, 364, 12, -1, 385, 50, 559, -1, + 385, 50, 12, -1, 385, 50, 121, -1, 478, 300, + 1130, -1, 431, 396, 1208, -1, 1217, -1, 552, 517, + 1217, -1, 554, -1, 553, 519, 554, -1, 556, -1, + 675, -1, 12, -1, 340, 443, -1, 340, 87, -1, + 353, 340, -1, 383, -1, 436, -1, 162, -1, 297, + -1, 559, -1, 1208, -1, 12, -1, 3, -1, 1114, + 1208, 1116, -1, 1114, 515, 1207, 516, 1208, -1, 675, + -1, 121, -1, 248, -1, 1208, -1, 121, -1, -1, + 1219, -1, 1208, -1, 356, 561, -1, 562, -1, 427, + 492, -1, 431, 225, 243, -1, 385, 50, -1, 552, + -1, 31, -1, 387, 549, -1, 560, -1, 387, 551, + -1, 560, -1, 391, 552, -1, 391, 427, 492, -1, + 391, 431, 225, 243, -1, 391, 385, 50, -1, 391, + 31, -1, 387, 94, 567, 568, -1, 31, -1, 1199, + -1, 124, -1, 196, -1, 75, -1, 135, 31, -1, + 135, 421, -1, 135, 423, -1, 135, 322, -1, 135, + 382, -1, 33, 417, 1072, 572, -1, 33, 417, 194, + 156, 1072, 572, -1, 33, 417, 1072, 573, -1, 33, + 417, 194, 156, 1072, 573, -1, 33, 417, 31, 200, + 420, 1202, 387, 420, 1202, 994, -1, 33, 417, 31, + 200, 420, 1202, 312, 61, 1212, 387, 420, 1202, 994, + -1, 33, 205, 1200, 572, -1, 33, 205, 194, 156, + 1200, 572, -1, 33, 205, 1200, 574, -1, 33, 205, + 31, 200, 420, 1202, 387, 420, 1202, 994, -1, 33, + 205, 31, 200, 420, 1202, 312, 61, 1212, 387, 420, + 1202, 994, -1, 33, 381, 1200, 572, -1, 33, 381, + 194, 156, 1200, 572, -1, 33, 465, 1200, 572, -1, + 33, 465, 194, 156, 1200, 572, -1, 33, 258, 465, + 1200, 572, -1, 33, 258, 465, 194, 156, 1200, 572, + -1, 33, 258, 465, 31, 200, 420, 1202, 387, 420, + 1202, 994, -1, 33, 258, 465, 31, 200, 420, 1202, + 312, 61, 1212, 387, 420, 1202, 994, -1, 33, 172, + 417, 1072, 572, -1, 33, 172, 417, 194, 156, 1072, + 572, -1, 575, -1, 572, 519, 575, -1, 48, 318, + 1200, 586, -1, 132, 318, 1200, 528, -1, 132, 318, + 1200, 166, -1, 48, 318, 1200, -1, 27, 616, -1, + 27, 194, 282, 156, 616, -1, 27, 82, 616, -1, + 27, 82, 194, 282, 156, 616, -1, 33, 896, 1217, + 576, -1, 33, 896, 1217, 141, 282, 287, -1, 33, + 896, 1217, 387, 282, 287, -1, 33, 896, 1217, 141, + 158, -1, 33, 896, 1217, 141, 158, 194, 156, -1, + 33, 896, 1217, 387, 403, 1209, -1, 33, 896, 1207, + 387, 403, 1209, -1, 33, 896, 1217, 387, 580, -1, + 33, 896, 1217, 356, 580, -1, 33, 896, 1217, 387, + 620, -1, 33, 896, 1217, 387, 618, -1, 33, 896, + 1217, 27, 180, 626, 40, 193, 671, -1, 33, 896, + 1217, 584, -1, 33, 896, 1217, 141, 193, -1, 33, + 896, 1217, 141, 193, 194, 156, -1, 141, 896, 194, + 156, 1217, 529, -1, 141, 896, 1217, 529, -1, 33, + 896, 1217, 897, 439, 1095, 577, 578, -1, 33, 896, + 1217, 701, -1, 27, 631, -1, 33, 93, 1202, 749, + -1, 456, 93, 1202, -1, 141, 93, 194, 156, 1202, + 529, -1, 141, 93, 1202, 529, -1, 387, 474, 295, + -1, 78, 297, 1202, -1, 387, 474, 78, -1, 387, + 254, -1, 387, 449, -1, 144, 434, 1202, -1, 144, + 34, 434, 1202, -1, 144, 355, 434, 1202, -1, 144, + 434, 31, -1, 144, 434, 452, -1, 134, 434, 1202, + -1, 134, 434, 31, -1, 134, 434, 452, -1, 144, + 371, 1202, -1, 144, 34, 371, 1202, -1, 144, 355, + 371, 1202, -1, 134, 371, 1202, -1, 207, 1200, -1, + 278, 207, 1200, -1, 292, 791, -1, 282, 292, -1, + 313, 429, 1211, -1, 387, 25, 261, 1202, -1, 387, + 420, 1202, -1, 387, 580, -1, 356, 580, -1, 355, + 193, 579, -1, 144, 369, 243, 379, -1, 134, 369, + 243, 379, -1, 171, 369, 243, 379, -1, 278, 171, + 369, 243, 379, -1, 701, -1, 387, 121, 1118, -1, + 141, 121, -1, 80, 791, -1, -1, 453, 1118, -1, + -1, 283, -1, 177, -1, 121, -1, 453, 205, 1202, + -1, 515, 582, 516, -1, 472, 580, -1, -1, 583, + -1, 582, 519, 583, -1, 1220, 505, 762, -1, 1220, + -1, 1220, 517, 1220, 505, 762, -1, 1220, 517, 1220, + -1, 585, -1, 584, 585, -1, 357, -1, 357, 532, + 675, -1, 387, 673, -1, 387, 180, 626, -1, 170, + 459, 472, 515, 588, 516, -1, 170, 459, 200, 515, + 1157, 516, -1, 170, 459, 176, 515, 1157, 516, 429, + 515, 1157, 516, -1, 121, -1, 1219, 1207, -1, 587, + -1, 588, 519, 587, -1, 33, 439, 791, 590, -1, + 591, -1, 590, 519, 591, -1, 27, 49, 1087, 529, + -1, 141, 49, 194, 156, 1217, 529, -1, 141, 49, + 1217, 529, -1, 33, 49, 1217, 897, 439, 1095, 577, + 529, -1, 77, 1010, -1, 77, 31, -1, 98, 600, + 1200, 634, 594, 595, 596, 601, 532, 597, 1083, -1, + 98, 515, 976, 516, 429, 595, 596, 532, 597, -1, + 176, -1, 429, -1, 336, -1, -1, 1208, -1, 404, + -1, 405, -1, 598, -1, 515, 603, 516, -1, 598, + 599, -1, -1, 56, -1, 175, -1, 127, 950, 1208, + -1, 287, 950, 1208, -1, 102, -1, 190, -1, 338, + 950, 1208, -1, 149, 950, 1208, -1, 171, 338, 635, + -1, 171, 338, 508, -1, 171, 282, 287, 635, -1, + 171, 287, 635, -1, 145, 1208, -1, 56, -1, -1, + 602, 128, 1208, -1, -1, 453, -1, -1, 604, -1, + 603, 519, 604, -1, 1220, 605, -1, 556, -1, 675, + -1, 508, -1, 515, 606, 516, -1, -1, 607, -1, + 606, 519, 607, -1, 556, -1, 100, 609, 417, 1200, + 515, 610, 516, 646, 647, 651, 652, 653, 654, -1, + 100, 609, 417, 194, 282, 156, 1200, 515, 610, 516, + 646, 647, 651, 652, 653, 654, -1, 100, 609, 417, + 1200, 292, 791, 611, 647, 651, 652, 653, 654, -1, + 100, 609, 417, 194, 282, 156, 1200, 292, 791, 611, + 647, 651, 652, 653, 654, -1, 100, 609, 417, 1200, + 318, 292, 1200, 611, 586, 647, 651, 652, 653, 654, + -1, 100, 609, 417, 194, 282, 156, 1200, 318, 292, + 1200, 611, 586, 647, 651, 652, 653, 654, -1, 423, + -1, 421, -1, 248, 423, -1, 248, 421, -1, 181, + 423, -1, 181, 421, -1, 449, -1, -1, 612, -1, + -1, 515, 613, 516, -1, -1, 614, -1, 612, 519, + 614, -1, 615, -1, 613, 519, 615, -1, 616, -1, + 628, -1, 631, -1, 617, -1, 631, -1, 1217, 1095, + 621, 619, 699, 622, -1, 1217, 622, -1, 1217, 472, + 301, 622, -1, 88, 1217, -1, 88, 121, -1, 618, + -1, -1, 406, 1217, -1, 406, 121, -1, 620, -1, + -1, 622, 623, -1, -1, 93, 1202, 624, -1, 624, + -1, 627, -1, 80, 791, -1, 282, 287, -1, 287, + -1, 446, 625, 867, 655, -1, 330, 232, 867, 655, + -1, 74, 515, 1118, 516, 633, -1, 121, 1119, -1, + 180, 626, 40, 193, 671, -1, 180, 626, 40, 515, + 1118, 516, 407, -1, 346, 1200, 634, 638, 642, -1, + 289, 136, -1, 289, 282, 136, -1, -1, 34, -1, + 61, 121, -1, 123, -1, 282, 123, -1, 209, 124, + -1, 209, 196, -1, 244, 1200, 629, -1, 629, 202, + 630, -1, 629, 153, 630, -1, -1, 85, -1, 88, + -1, 94, -1, 122, -1, 193, -1, 180, -1, 206, + -1, 403, -1, 406, -1, 31, -1, 93, 1202, 632, + -1, 632, -1, 74, 515, 1118, 516, 749, -1, 446, + 625, 515, 635, 516, 637, 867, 655, 749, -1, 446, + 656, 749, -1, 330, 232, 515, 635, 516, 637, 867, + 655, 749, -1, 330, 232, 656, 749, -1, 152, 829, + 515, 639, 516, 637, 867, 655, 641, 749, -1, 172, + 232, 515, 635, 516, 346, 1200, 634, 638, 642, 749, + -1, 278, 207, -1, -1, 515, 635, 516, -1, -1, + 636, -1, 635, 519, 636, -1, 1217, -1, 201, 515, + 635, 516, -1, -1, 256, 177, -1, 256, 317, -1, + 256, 393, -1, -1, 640, -1, 639, 519, 640, -1, + 832, 472, 877, -1, 832, 472, 299, 515, 877, 516, + -1, 469, 515, 1118, 516, -1, -1, 643, -1, 644, + -1, 643, 644, -1, 644, 643, -1, -1, 297, 451, + 645, -1, 297, 126, 645, -1, 278, 26, -1, 358, + -1, 65, -1, 387, 287, 634, -1, 387, 121, 634, + -1, 208, 515, 1199, 516, -1, -1, 648, -1, -1, + 318, 61, 1217, 515, 649, 516, -1, 650, -1, 649, + 519, 650, -1, 1217, 835, 527, -1, 1123, 835, 527, + -1, 515, 1118, 516, 835, 527, -1, 453, 1202, -1, + -1, 472, 580, -1, 474, 295, -1, -1, 297, 86, + 141, -1, 297, 86, 126, 370, -1, 297, 86, 327, + 370, -1, -1, 420, 1202, -1, -1, 453, 205, 420, + 1202, -1, -1, 453, 205, 1202, -1, 100, 403, 527, + 968, 297, 658, 176, 1062, -1, 100, 403, 194, 282, + 156, 791, 968, 297, 658, 176, 1062, -1, 659, -1, + 658, 519, 659, -1, 1217, -1, 1123, -1, 515, 1118, + 516, -1, 33, 403, 791, 387, 403, 1209, -1, 33, + 403, 194, 156, 791, 387, 403, 1209, -1, 100, 609, + 417, 662, 40, 1013, 663, -1, 100, 609, 417, 194, + 282, 156, 662, 40, 1013, 663, -1, 1200, 634, 651, + 652, 653, 654, -1, 472, 114, -1, 472, 278, 114, + -1, -1, 100, 666, 258, 465, 665, 40, 1013, 663, + -1, 100, 666, 258, 465, 194, 282, 156, 665, 40, + 1013, 663, -1, 1200, 634, 651, 581, 654, -1, 449, + -1, -1, 348, 258, 465, 528, 1200, 663, -1, 100, + 609, 381, 1200, 670, -1, 100, 609, 381, 194, 282, + 156, 1200, 670, -1, 33, 381, 1200, 672, -1, 33, + 381, 194, 156, 1200, 672, -1, 672, -1, -1, 515, + 672, 516, -1, -1, 673, -1, 672, 673, -1, 40, + 1097, -1, 62, 675, -1, 113, -1, 278, 113, -1, + 203, 674, 675, -1, 259, 675, -1, 263, 675, -1, + 278, 259, -1, 278, 263, -1, 312, 61, 791, -1, + 381, 267, 791, -1, 401, 532, 675, -1, 357, -1, + 357, 532, 675, -1, 61, -1, -1, 5, -1, 506, + 5, -1, 507, 5, -1, 1209, -1, 675, -1, 676, + 519, 675, -1, 100, 839, 678, 683, 235, 1202, -1, + 100, 839, 678, 683, 235, 1202, 188, 679, 680, 682, + -1, 438, -1, -1, 1202, -1, 1202, 792, -1, 210, + 679, -1, -1, 457, 679, -1, 278, 457, -1, 681, + -1, -1, 333, -1, -1, 100, 420, 1202, 685, 251, + 1208, 581, -1, 313, 1211, -1, -1, 141, 420, 1202, + -1, 141, 420, 194, 156, 1202, -1, 100, 159, 1202, + 532, 688, -1, 100, 159, 194, 282, 156, 1202, 532, + 688, -1, 688, 689, -1, -1, 374, 1202, -1, 464, + 559, -1, 176, 559, -1, 65, -1, 33, 159, 1202, + 451, 691, -1, 691, 692, -1, -1, 429, 559, -1, + 33, 159, 1202, 544, 787, 1202, -1, 33, 159, 1202, + 544, 786, 791, -1, 33, 159, 1202, 544, 30, 855, + -1, 33, 159, 1202, 544, 68, 515, 1095, 40, 1095, + 516, -1, 33, 159, 1202, 544, 139, 1095, -1, 33, + 159, 1202, 544, 178, 843, -1, 33, 159, 1202, 544, + 299, 879, -1, 33, 159, 1202, 544, 299, 76, 791, + 453, 1202, -1, 33, 159, 1202, 544, 299, 163, 791, + 453, 1202, -1, 33, 159, 1202, 544, 334, 843, -1, + 33, 159, 1202, 544, 367, 843, -1, 33, 159, 1202, + 544, 432, 170, 1095, 235, 1202, -1, 33, 159, 1202, + 544, 439, 1095, -1, 100, 172, 114, 476, 1202, 697, + 699, -1, 188, 679, -1, 278, 188, -1, 457, 679, + -1, 278, 457, -1, 695, -1, 696, 695, -1, 696, + -1, -1, 33, 172, 114, 476, 1202, 697, 701, -1, + 33, 172, 114, 476, 1202, 696, -1, 301, 515, 700, + 516, -1, -1, 704, -1, 700, 519, 704, -1, 301, + 515, 702, 516, -1, 703, -1, 702, 519, 703, -1, + 704, -1, 387, 704, -1, 27, 704, -1, 141, 705, + -1, 705, 706, -1, 1220, -1, 1208, -1, 100, 384, + 1202, 708, 710, 172, 114, 476, 1202, 699, -1, 100, + 384, 194, 282, 156, 1202, 708, 710, 172, 114, 476, + 1202, 699, -1, 439, 1208, -1, -1, 464, 1208, -1, + 464, 287, -1, 709, -1, -1, 33, 384, 1202, 709, + 701, -1, 33, 384, 1202, 709, -1, 33, 384, 1202, + 701, -1, 100, 172, 417, 1200, 515, 610, 516, 646, + 384, 1202, 699, -1, 100, 172, 417, 194, 282, 156, + 1200, 515, 610, 516, 646, 384, 1202, 699, -1, 100, + 172, 417, 1200, 318, 292, 1200, 611, 586, 384, 1202, + 699, -1, 100, 172, 417, 194, 282, 156, 1200, 318, + 292, 1200, 611, 586, 384, 1202, 699, -1, 199, 172, + 374, 1202, 715, 176, 384, 1202, 221, 1202, 699, -1, + 245, 429, -1, 151, -1, 714, 515, 1074, 516, -1, + -1, 100, 452, 255, 170, 717, 384, 1202, 699, -1, + 100, 452, 255, 194, 282, 156, 170, 717, 384, 1202, + 699, -1, 1211, -1, 452, -1, 141, 452, 255, 170, + 717, 384, 1202, -1, 141, 452, 255, 194, 156, 170, + 717, 384, 1202, -1, 33, 452, 255, 170, 717, 384, + 1202, 701, -1, 100, 323, 1202, 297, 1200, 726, 727, + 724, 722, 723, -1, 33, 323, 1202, 297, 1200, 725, + 722, 723, -1, 453, 515, 1118, 516, -1, -1, 472, + 74, 515, 1118, 516, -1, -1, 429, 1212, -1, -1, + 429, 1212, -1, -1, 40, 3, -1, -1, 170, 728, + -1, -1, 31, -1, 380, -1, 215, -1, 451, -1, + 126, -1, 100, 25, 261, 1202, 439, 730, 188, 679, + -1, 205, -1, 417, -1, 100, 839, 434, 1202, 732, + 733, 297, 1200, 735, 741, 744, 155, 745, 1205, 515, + 746, 516, -1, 100, 839, 93, 434, 1202, 29, 733, + 297, 1200, 748, 749, 170, 142, 369, 744, 155, 745, + 1205, 515, 746, 516, -1, 52, -1, 29, -1, 216, + 292, -1, 734, -1, 733, 302, 734, -1, 215, -1, + 126, -1, 451, -1, 451, 292, 635, -1, 437, -1, + 347, 736, -1, -1, 737, -1, 736, 737, -1, 738, + 739, 950, 740, -1, 272, -1, 296, -1, 417, -1, + 369, -1, 1217, -1, 170, 742, 743, -1, -1, 142, + -1, -1, 369, -1, 402, -1, 468, 515, 1118, 516, + -1, -1, 178, -1, 334, -1, 747, -1, 746, 519, + 747, -1, -1, 1207, -1, 5, -1, 1208, -1, 1220, + -1, 176, 1200, -1, -1, -1, 749, 750, -1, 282, + 123, -1, 123, -1, 209, 196, -1, 209, 124, -1, + 282, 455, -1, 278, 207, -1, 100, 150, 434, 1202, + 297, 1220, 155, 745, 1205, 515, 516, -1, 100, 150, + 434, 1202, 297, 1220, 468, 752, 155, 745, 1205, 515, + 516, -1, 753, -1, 752, 37, 753, -1, 1217, 200, + 515, 754, 516, -1, 6, -1, 754, 519, 6, -1, + 33, 150, 434, 1202, 756, -1, 144, -1, 144, 355, + -1, 144, 34, -1, 134, -1, 100, 43, 791, 74, + 515, 1118, 516, 749, -1, 100, 839, 30, 1205, 853, + 759, -1, 100, 839, 30, 1205, 763, -1, 100, 299, + 877, 759, -1, 100, 439, 791, 759, -1, 100, 439, + 791, -1, 100, 439, 791, 40, 515, 1085, 516, -1, + 100, 439, 791, 40, 148, 515, 766, 516, -1, 100, + 439, 791, 40, 339, 759, -1, 100, 424, 377, 316, + 791, 759, -1, 100, 424, 377, 133, 791, 759, -1, + 100, 424, 377, 422, 791, 759, -1, 100, 424, 377, + 90, 791, 759, -1, 100, 81, 791, 759, -1, 100, + 81, 194, 282, 156, 791, 759, -1, 100, 81, 791, + 176, 791, -1, 100, 81, 194, 282, 156, 791, 176, + 791, -1, 515, 760, 516, -1, 761, -1, 760, 519, + 761, -1, 1220, 505, 762, -1, 1220, -1, 850, -1, + 1225, -1, 1155, -1, 675, -1, 1208, -1, 279, -1, + 515, 764, 516, -1, 765, -1, 764, 519, 765, -1, + 3, 505, 762, -1, 767, -1, -1, 1208, -1, 767, + 519, 1208, -1, 33, 439, 791, 27, 458, 769, 1208, + -1, 33, 439, 791, 27, 458, 769, 1208, 52, 1208, + -1, 33, 439, 791, 27, 458, 769, 1208, 29, 1208, + -1, 33, 439, 791, 352, 458, 1208, 429, 1208, -1, + 194, 282, 156, -1, -1, 100, 299, 76, 791, 773, + 170, 439, 1095, 453, 1202, 774, 40, 771, -1, 772, + -1, 771, 519, 772, -1, 299, 1207, 877, 775, 776, + -1, 299, 1207, 879, 775, 776, -1, 178, 1207, 843, + -1, 178, 1207, 515, 1161, 516, 843, -1, 406, 1095, + -1, 121, -1, -1, 163, 791, -1, -1, 170, 377, + -1, 170, 303, 61, 791, -1, -1, 343, -1, -1, + 100, 299, 163, 791, 453, 1202, -1, 33, 299, 163, + 791, 453, 1202, 27, 771, -1, 33, 299, 163, 791, + 453, 1202, 141, 779, -1, 780, -1, 779, 519, 780, + -1, 299, 1207, 515, 1161, 516, -1, 178, 1207, 515, + 1161, 516, -1, 141, 299, 76, 791, 453, 1202, 529, + -1, 141, 299, 76, 194, 156, 791, 453, 1202, 529, + -1, 141, 299, 163, 791, 453, 1202, 529, -1, 141, + 299, 163, 194, 156, 791, 453, 1202, 529, -1, 141, + 312, 61, 1212, 529, -1, 342, 312, 61, 1212, 429, + 1211, -1, 141, 786, 194, 156, 790, 529, -1, 141, + 786, 790, 529, -1, 141, 788, 194, 156, 1201, 529, + -1, 141, 788, 1201, 529, -1, 141, 789, 1202, 297, + 791, 529, -1, 141, 789, 194, 156, 1202, 297, 791, + 529, -1, 141, 439, 793, 529, -1, 141, 439, 194, + 156, 793, 529, -1, 141, 139, 793, 529, -1, 141, + 139, 194, 156, 793, 529, -1, 141, 205, 89, 790, + 529, -1, 141, 205, 89, 194, 156, 790, 529, -1, + 417, -1, 381, -1, 465, -1, 258, 465, -1, 205, + -1, 172, 417, -1, 81, -1, 97, -1, 403, -1, + 424, 377, 316, -1, 424, 377, 133, -1, 424, 377, + 422, -1, 424, 377, 90, -1, 788, -1, 115, -1, + 364, -1, 410, -1, 420, -1, 25, 261, -1, 150, + 434, -1, 159, -1, 172, 114, 476, -1, 683, 235, + -1, 337, -1, 374, -1, 384, -1, 323, -1, 371, + -1, 434, -1, 791, -1, 790, 519, 791, -1, 1217, + -1, 1217, 792, -1, 517, 1203, -1, 792, 517, 1203, + -1, 1095, -1, 793, 519, 1095, -1, 437, 1027, 1074, + 795, 529, -1, 96, 193, -1, 357, 193, -1, -1, + 84, 297, 786, 791, 223, 797, -1, 84, 297, 82, + 791, 223, 797, -1, 84, 297, 787, 1202, 223, 797, + -1, 84, 297, 439, 1095, 223, 797, -1, 84, 297, + 139, 1095, 223, 797, -1, 84, 297, 30, 855, 223, + 797, -1, 84, 297, 178, 843, 223, 797, -1, 84, + 297, 299, 879, 223, 797, -1, 84, 297, 93, 1202, + 297, 791, 223, 797, -1, 84, 297, 93, 1202, 297, + 139, 791, 223, 797, -1, 84, 297, 789, 1202, 297, + 791, 223, 797, -1, 84, 297, 334, 843, 223, 797, + -1, 84, 297, 367, 843, 223, 797, -1, 84, 297, + 432, 170, 1095, 235, 1202, 223, 797, -1, 84, 297, + 299, 76, 791, 453, 1202, 223, 797, -1, 84, 297, + 299, 163, 791, 453, 1202, 223, 797, -1, 84, 297, + 236, 291, 675, 223, 797, -1, 84, 297, 68, 515, + 1095, 40, 1095, 516, 223, 797, -1, 1208, -1, 287, + -1, 379, 234, 799, 297, 786, 791, 223, 800, -1, + 379, 234, 799, 297, 82, 791, 223, 800, -1, 379, + 234, 799, 297, 787, 1202, 223, 800, -1, 379, 234, + 799, 297, 439, 1095, 223, 800, -1, 379, 234, 799, + 297, 139, 1095, 223, 800, -1, 379, 234, 799, 297, + 30, 855, 223, 800, -1, 379, 234, 799, 297, 178, + 843, 223, 800, -1, 379, 234, 799, 297, 236, 291, + 675, 223, 800, -1, 379, 234, 799, 297, 334, 843, + 223, 800, -1, 379, 234, 799, 297, 367, 843, 223, + 800, -1, 170, 559, -1, -1, 1208, -1, 287, -1, + 164, 802, -1, 266, 802, -1, 1010, -1, 803, 1010, + -1, 273, 804, 1010, -1, 331, 804, 1010, -1, 167, + 804, 1010, -1, 237, 804, 1010, -1, 24, 1209, 804, + 1010, -1, 350, 1209, 804, 1010, -1, 1209, 804, 1010, + -1, 31, 804, 1010, -1, 174, 804, 1010, -1, 174, + 1209, 804, 1010, -1, 174, 31, 804, 1010, -1, 51, + 804, 1010, -1, 51, 1209, 804, 1010, -1, 51, 31, + 804, 1010, -1, 176, -1, 200, -1, 803, -1, -1, + 182, 807, 297, 812, 429, 813, 815, 821, -1, 362, + 807, 297, 812, 176, 813, 821, 529, -1, 362, 182, + 300, 170, 807, 297, 812, 176, 813, 821, 529, -1, + 808, -1, 31, -1, 31, 332, -1, 31, 515, 635, + 516, -1, 31, 332, 515, 635, 516, -1, 809, -1, + 808, 519, 809, -1, 380, 634, -1, 346, 634, -1, + 100, 634, -1, 33, 415, -1, 1217, 634, -1, 811, + -1, 810, 519, 811, -1, 1217, -1, 811, 517, 1217, + -1, 1199, -1, 417, 1199, -1, 381, 1199, -1, 172, + 114, 476, 1201, -1, 172, 384, 1201, -1, 178, 842, + -1, 334, 842, -1, 367, 842, -1, 115, 1201, -1, + 139, 790, -1, 235, 1201, -1, 236, 291, 676, -1, + 315, 810, -1, 374, 1201, -1, 420, 1201, -1, 439, + 790, -1, 31, 418, 200, 374, 1201, -1, 31, 382, + 200, 374, 1201, -1, 31, 179, 200, 374, 1201, -1, + 31, 335, 200, 374, 1201, -1, 31, 368, 200, 374, + 1201, -1, 814, -1, 813, 519, 814, -1, 1211, -1, + 185, 1211, -1, 472, 182, 300, -1, -1, 182, 808, + 429, 1212, 821, -1, 182, 808, 429, 1212, 472, 818, + 821, -1, 362, 808, 176, 1212, 821, 529, -1, 362, + 1217, 300, 170, 808, 176, 1212, 821, 529, -1, 818, + 519, 819, -1, 819, -1, 1220, 820, -1, 300, -1, + 436, -1, 162, -1, 183, 61, 1211, -1, -1, 33, + 121, 332, 823, 825, -1, 823, 824, -1, -1, 200, + 374, 1201, -1, 170, 364, 1212, -1, 170, 452, 1212, + -1, 182, 807, 297, 826, 429, 813, 815, -1, 362, + 807, 297, 826, 176, 813, 529, -1, 362, 182, 300, + 170, 807, 297, 826, 176, 813, 529, -1, 418, -1, + 179, -1, 368, -1, 382, -1, 440, -1, 375, -1, + 100, 828, 205, 528, 526, 297, 1072, 829, 515, 830, + 516, 833, 625, 581, 654, 1083, -1, 100, 828, 205, + 528, 194, 282, 156, 1202, 297, 1072, 829, 515, 830, + 516, 833, 625, 581, 654, 1083, -1, 446, -1, -1, + 453, 1202, -1, -1, 832, -1, 830, 519, 832, -1, + 835, 527, 836, 837, -1, 835, 791, 580, 836, 837, + -1, 1217, 831, -1, 1123, 831, -1, 515, 1118, 516, + 831, -1, 201, 515, 834, 516, -1, -1, 832, -1, + 834, 519, 832, -1, 80, 791, -1, -1, 41, -1, + 131, -1, -1, 495, 167, -1, 495, 237, -1, -1, + 100, 839, 178, 1205, 844, 361, 849, 857, 863, -1, + 100, 839, 178, 1205, 844, 361, 417, 515, 869, 516, + 857, 863, -1, 100, 839, 178, 1205, 844, 857, 863, + -1, 100, 839, 334, 1205, 844, 857, 863, -1, 302, + 354, -1, -1, 515, 841, 516, -1, 515, 516, -1, + 846, -1, 841, 519, 846, -1, 843, -1, 842, 519, + 843, -1, 1205, 840, -1, 1224, -1, 1217, -1, 1217, + 1180, -1, 515, 845, 516, -1, 515, 516, -1, 851, + -1, 845, 519, 851, -1, 847, 848, 850, -1, 848, + 847, 850, -1, 848, 850, -1, 847, 850, -1, 850, + -1, 200, -1, 306, -1, 212, -1, 200, 306, -1, + 461, -1, 1218, -1, 850, -1, 1095, -1, 1218, 792, + 510, 439, -1, 389, 1218, 792, 510, 439, -1, 846, + -1, 846, 121, 1118, -1, 846, 505, 1118, -1, 846, + -1, 515, 508, 516, -1, 515, 854, 516, -1, 515, + 303, 61, 854, 516, -1, 515, 854, 303, 61, 854, + 516, -1, 852, -1, 854, 519, 852, -1, 1205, 853, + -1, 855, -1, 856, 519, 855, -1, 858, -1, -1, + 860, -1, 858, 860, -1, 64, 297, 287, 213, -1, + 361, 287, 297, 287, 213, -1, 408, -1, 197, -1, + 399, -1, 467, -1, 160, 379, 125, -1, 160, 379, + 222, -1, 379, 125, -1, 379, 222, -1, 240, -1, + 282, 240, -1, 99, 675, -1, 370, 675, -1, 412, + 791, -1, 564, -1, 314, 1217, -1, 40, 861, -1, + 235, 559, -1, 432, 866, -1, 471, -1, 859, -1, + 1208, -1, 1208, 519, 1208, -1, 359, 1118, -1, 862, + -1, 53, 46, 864, 147, -1, -1, 864, 865, 518, + -1, -1, 525, -1, 862, -1, 170, 439, 1095, -1, + 866, 519, 170, 439, 1095, -1, 472, 759, -1, -1, + 848, 850, -1, 868, -1, 869, 519, 868, -1, 33, + 178, 843, 871, 872, -1, 33, 334, 843, 871, 872, + -1, 33, 367, 843, 871, 872, -1, 859, -1, 871, + 859, -1, 358, -1, -1, 141, 178, 842, 529, -1, + 141, 178, 194, 156, 842, 529, -1, 141, 334, 842, + 529, -1, 141, 334, 194, 156, 842, 529, -1, 141, + 367, 842, 529, -1, 141, 367, 194, 156, 842, 529, + -1, 141, 30, 856, 529, -1, 141, 30, 194, 156, + 856, 529, -1, 141, 299, 878, 529, -1, 141, 299, + 194, 156, 878, 529, -1, 515, 1095, 516, -1, 515, + 1095, 519, 1095, 516, -1, 515, 279, 519, 1095, 516, + -1, 515, 1095, 519, 279, 516, -1, 1152, -1, 1217, + 517, 877, -1, 879, -1, 878, 519, 879, -1, 877, + 876, -1, 137, 881, -1, 882, -1, 881, 882, -1, + 1208, -1, 235, 559, -1, 100, 68, 515, 1095, 40, + 1095, 516, 472, 178, 843, 884, -1, 100, 68, 515, + 1095, 40, 1095, 516, 474, 178, 884, -1, 100, 68, + 515, 1095, 40, 1095, 516, 472, 212, 884, -1, 40, + 198, -1, 40, 44, -1, -1, 141, 68, 886, 515, + 1095, 40, 1095, 516, 529, -1, 194, 156, -1, -1, + 100, 839, 432, 170, 1095, 235, 1202, 515, 888, 516, + -1, 176, 398, 472, 178, 843, 519, 429, 398, 472, + 178, 843, -1, 429, 398, 472, 178, 843, 519, 176, + 398, 472, 178, 843, -1, 176, 398, 472, 178, 843, + -1, 429, 398, 472, 178, 843, -1, 141, 432, 886, + 170, 1095, 235, 1202, 529, -1, 349, 893, 891, 528, + 1200, -1, 349, 893, 374, 528, 1202, -1, 349, 893, + 892, 528, 526, -1, 205, -1, 417, -1, 415, -1, + 115, -1, 515, 959, 516, -1, -1, 33, 420, 1202, + 387, 580, -1, 33, 420, 1202, 356, 580, -1, 33, + 30, 855, 352, 429, 1202, -1, 33, 81, 791, 352, + 429, 1202, -1, 33, 97, 791, 352, 429, 1202, -1, + 33, 115, 1202, 352, 429, 1202, -1, 33, 139, 791, + 352, 429, 1202, -1, 33, 139, 791, 352, 93, 1202, + 429, 1202, -1, 33, 172, 114, 476, 1202, 352, 429, + 1202, -1, 33, 178, 843, 352, 429, 1202, -1, 33, + 185, 1210, 352, 429, 1210, -1, 33, 683, 235, 1202, + 352, 429, 1202, -1, 33, 299, 76, 791, 453, 1202, + 352, 429, 1202, -1, 33, 299, 163, 791, 453, 1202, + 352, 429, 1202, -1, 33, 323, 1202, 297, 1200, 352, + 429, 1202, -1, 33, 323, 194, 156, 1202, 297, 1200, + 352, 429, 1202, -1, 33, 334, 843, 352, 429, 1202, + -1, 33, 337, 1202, 352, 429, 1202, -1, 33, 367, + 843, 352, 429, 1202, -1, 33, 374, 1202, 352, 429, + 1202, -1, 33, 384, 1202, 352, 429, 1202, -1, 33, + 410, 1202, 352, 429, 1202, -1, 33, 417, 1072, 352, + 429, 1202, -1, 33, 417, 194, 156, 1072, 352, 429, + 1202, -1, 33, 381, 1200, 352, 429, 1202, -1, 33, + 381, 194, 156, 1200, 352, 429, 1202, -1, 33, 465, + 1200, 352, 429, 1202, -1, 33, 465, 194, 156, 1200, + 352, 429, 1202, -1, 33, 258, 465, 1200, 352, 429, + 1202, -1, 33, 258, 465, 194, 156, 1200, 352, 429, + 1202, -1, 33, 205, 1200, 352, 429, 1202, -1, 33, + 205, 194, 156, 1200, 352, 429, 1202, -1, 33, 172, + 417, 1072, 352, 429, 1202, -1, 33, 172, 417, 194, + 156, 1072, 352, 429, 1202, -1, 33, 417, 1072, 352, + 896, 1202, 429, 1202, -1, 33, 417, 194, 156, 1072, + 352, 896, 1202, 429, 1202, -1, 33, 465, 1200, 352, + 896, 1202, 429, 1202, -1, 33, 465, 194, 156, 1200, + 352, 896, 1202, 429, 1202, -1, 33, 258, 465, 1200, + 352, 896, 1202, 429, 1202, -1, 33, 258, 465, 194, + 156, 1200, 352, 896, 1202, 429, 1202, -1, 33, 417, + 1072, 352, 93, 1202, 429, 1202, -1, 33, 417, 194, + 156, 1072, 352, 93, 1202, 429, 1202, -1, 33, 172, + 417, 1072, 352, 896, 1202, 429, 1202, -1, 33, 172, + 417, 194, 156, 1072, 352, 896, 1202, 429, 1202, -1, + 33, 371, 1202, 297, 1200, 352, 429, 1202, -1, 33, + 434, 1202, 297, 1200, 352, 429, 1202, -1, 33, 150, + 434, 1202, 352, 429, 1202, -1, 33, 364, 1210, 352, + 429, 1210, -1, 33, 452, 1210, 352, 429, 1210, -1, + 33, 420, 1202, 352, 429, 1202, -1, 33, 403, 791, + 352, 429, 1202, -1, 33, 424, 377, 316, 791, 352, + 429, 1202, -1, 33, 424, 377, 133, 791, 352, 429, + 1202, -1, 33, 424, 377, 422, 791, 352, 429, 1202, + -1, 33, 424, 377, 90, 791, 352, 429, 1202, -1, + 33, 439, 791, 352, 429, 1202, -1, 33, 439, 791, + 352, 49, 1202, 429, 1202, 529, -1, 82, -1, -1, + 387, 114, -1, -1, 33, 178, 843, 899, 129, 297, + 159, 1202, -1, 33, 334, 843, 899, 129, 297, 159, + 1202, -1, 33, 367, 843, 899, 129, 297, 159, 1202, + -1, 33, 434, 1202, 297, 1200, 899, 129, 297, 159, + 1202, -1, 33, 258, 465, 1200, 899, 129, 297, 159, + 1202, -1, 33, 205, 1200, 899, 129, 297, 159, 1202, + -1, 278, -1, -1, 33, 30, 855, 387, 374, 1202, + -1, 33, 81, 791, 387, 374, 1202, -1, 33, 97, + 791, 387, 374, 1202, -1, 33, 139, 791, 387, 374, + 1202, -1, 33, 159, 1202, 387, 374, 1202, -1, 33, + 178, 843, 387, 374, 1202, -1, 33, 299, 879, 387, + 374, 1202, -1, 33, 299, 76, 791, 453, 1202, 387, + 374, 1202, -1, 33, 299, 163, 791, 453, 1202, 387, + 374, 1202, -1, 33, 334, 843, 387, 374, 1202, -1, + 33, 367, 843, 387, 374, 1202, -1, 33, 417, 1072, + 387, 374, 1202, -1, 33, 417, 194, 156, 1072, 387, + 374, 1202, -1, 33, 403, 791, 387, 374, 1202, -1, + 33, 424, 377, 316, 791, 387, 374, 1202, -1, 33, + 424, 377, 133, 791, 387, 374, 1202, -1, 33, 424, + 377, 422, 791, 387, 374, 1202, -1, 33, 424, 377, + 90, 791, 387, 374, 1202, -1, 33, 381, 1200, 387, + 374, 1202, -1, 33, 381, 194, 156, 1200, 387, 374, + 1202, -1, 33, 465, 1200, 387, 374, 1202, -1, 33, + 465, 194, 156, 1200, 387, 374, 1202, -1, 33, 258, + 465, 1200, 387, 374, 1202, -1, 33, 258, 465, 194, + 156, 1200, 387, 374, 1202, -1, 33, 172, 417, 1072, + 387, 374, 1202, -1, 33, 172, 417, 194, 156, 1072, + 387, 374, 1202, -1, 33, 439, 791, 387, 374, 1202, + -1, 33, 299, 879, 387, 515, 902, 516, -1, 903, + -1, 902, 519, 903, -1, 1220, 505, 279, -1, 1220, + 505, 904, -1, 850, -1, 1225, -1, 1155, -1, 675, + -1, 1208, -1, 33, 439, 791, 387, 515, 902, 516, + -1, 33, 30, 855, 313, 429, 1211, -1, 33, 81, + 791, 313, 429, 1211, -1, 33, 97, 791, 313, 429, + 1211, -1, 33, 115, 1202, 313, 429, 1211, -1, 33, + 139, 791, 313, 429, 1211, -1, 33, 178, 843, 313, + 429, 1211, -1, 33, 683, 235, 1202, 313, 429, 1211, + -1, 33, 236, 291, 675, 313, 429, 1211, -1, 33, + 299, 879, 313, 429, 1211, -1, 33, 299, 76, 791, + 453, 1202, 313, 429, 1211, -1, 33, 299, 163, 791, + 453, 1202, 313, 429, 1211, -1, 33, 334, 843, 313, + 429, 1211, -1, 33, 367, 843, 313, 429, 1211, -1, + 33, 374, 1202, 313, 429, 1211, -1, 33, 439, 791, + 313, 429, 1211, -1, 33, 420, 1202, 313, 429, 1211, + -1, 33, 403, 791, 313, 429, 1211, -1, 33, 424, + 377, 133, 791, 313, 429, 1211, -1, 33, 424, 377, + 90, 791, 313, 429, 1211, -1, 33, 172, 114, 476, + 1202, 313, 429, 1211, -1, 33, 384, 1202, 313, 429, + 1211, -1, 33, 150, 434, 1202, 313, 429, 1211, -1, + 33, 337, 1202, 313, 429, 1211, -1, 33, 410, 1202, + 313, 429, 1211, -1, 100, 337, 1202, 867, -1, 100, + 337, 1202, 170, 31, 418, 867, -1, 100, 337, 1202, + 170, 909, 867, -1, 417, 1072, 634, 641, -1, 418, + 200, 374, 1217, -1, 418, 200, 374, 108, -1, 1217, + 634, 641, -1, 1217, 1180, 634, 641, -1, 1073, 634, + 641, -1, 108, -1, 908, -1, 909, 519, 908, -1, + 33, 337, 1202, 387, 759, -1, 33, 337, 1202, 27, + 909, -1, 33, 337, 1202, 387, 909, -1, 33, 337, + 1202, 141, 909, -1, 100, 410, 1202, 92, 1208, 337, + 1201, 867, -1, 33, 410, 1202, 387, 759, -1, 33, + 410, 1202, 92, 1208, -1, 33, 410, 1202, 348, 337, + 867, -1, 33, 410, 1202, 27, 337, 1201, 867, -1, + 33, 410, 1202, 141, 337, 1201, 867, -1, 33, 410, + 1202, 387, 337, 1201, 867, -1, 33, 410, 1202, 144, + -1, 33, 410, 1202, 134, -1, 33, 410, 1202, 394, + 759, -1, 141, 410, 1202, 529, -1, 141, 410, 194, + 156, 1202, 529, -1, 100, 839, 371, 1202, 40, 297, + 919, 429, 1200, 1083, 137, 920, 915, -1, 283, -1, + 917, -1, 515, 916, 516, -1, 916, 518, 918, -1, + 918, -1, 1013, -1, 980, -1, 996, -1, 989, -1, + 921, -1, 917, -1, -1, 380, -1, 451, -1, 126, + -1, 215, -1, 216, -1, 32, -1, -1, 284, 1217, + 922, -1, 519, 1208, -1, -1, 246, 1217, -1, 448, + 1217, -1, 448, 508, -1, 22, 927, 931, -1, 401, + 431, 930, -1, 86, 927, 931, -1, 365, 927, 931, + -1, 372, 1217, -1, 351, 372, 1217, -1, 351, 1217, + -1, 365, 927, 429, 372, 1217, -1, 365, 927, 429, + 1217, -1, 328, 431, 1208, -1, 86, 329, 1208, -1, + 365, 329, 1208, -1, 53, 927, 930, -1, 147, 927, + 931, -1, 475, -1, 431, -1, -1, 225, 243, 555, + -1, 340, 298, -1, 340, 477, -1, 123, -1, 282, + 123, -1, 928, -1, 929, 519, 928, -1, 929, 928, + -1, 929, -1, -1, 37, 70, -1, 37, 278, 70, + -1, -1, 100, 609, 465, 1200, 634, 581, 40, 1013, + 933, -1, 100, 302, 354, 609, 465, 1200, 634, 581, + 40, 1013, 933, -1, 100, 609, 344, 465, 1200, 515, + 635, 516, 581, 40, 1013, 933, -1, 100, 302, 354, + 609, 344, 465, 1200, 515, 635, 516, 581, 40, 1013, + 933, -1, 472, 74, 300, -1, 472, 66, 74, 300, + -1, 472, 248, 74, 300, -1, -1, 247, 1204, -1, + 100, 115, 1202, 532, 936, -1, 937, -1, -1, 938, + -1, 937, 938, -1, 939, 940, 675, -1, 939, 940, + 556, -1, 939, 940, 121, -1, 3, -1, 92, 245, + -1, 145, -1, 251, -1, 313, -1, 420, -1, 422, + -1, 505, -1, -1, 33, 115, 1202, 472, 936, -1, + 33, 115, 1202, 936, -1, 33, 115, 1202, 387, 420, + 1202, -1, 33, 115, 1202, 348, 81, 464, -1, 33, + 115, 1202, 563, -1, 141, 115, 1202, -1, 141, 115, + 194, 156, 1202, -1, 141, 115, 1202, 532, 515, 944, + 516, -1, 141, 115, 194, 156, 1202, 532, 515, 944, + 516, -1, 945, -1, 944, 519, 945, -1, 171, -1, + 33, 81, 791, 348, 464, -1, 33, 415, 387, 550, + -1, 33, 415, 356, 562, -1, 100, 139, 791, 950, + 1095, 622, -1, 33, 139, 791, 576, -1, 33, 139, + 791, 141, 282, 287, -1, 33, 139, 791, 387, 282, + 287, -1, 33, 139, 791, 27, 631, -1, 33, 139, + 791, 141, 93, 1202, 529, -1, 33, 139, 791, 141, + 93, 194, 156, 1202, 529, -1, 33, 139, 791, 456, + 93, 1202, -1, 40, -1, -1, 33, 424, 377, 133, + 791, 759, -1, 33, 424, 377, 90, 791, 27, 255, + 170, 1201, 953, 790, -1, 33, 424, 377, 90, 791, + 33, 255, 170, 1201, 953, 790, -1, 33, 424, 377, + 90, 791, 33, 255, 354, 791, 953, 791, -1, 33, + 424, 377, 90, 791, 33, 255, 170, 1201, 354, 791, + 953, 791, -1, 33, 424, 377, 90, 791, 141, 255, + 170, 1201, -1, 33, 424, 377, 90, 791, 141, 255, + 194, 156, 170, 1201, -1, 472, -1, 496, -1, 100, + 773, 97, 791, 170, 1208, 429, 1208, 176, 791, -1, + 78, 965, 1200, 956, -1, 78, 515, 959, 516, 1200, + 956, -1, 78, 965, -1, 78, 965, 1202, 297, 1200, + -1, 453, 1202, -1, -1, 454, 966, 967, 965, 964, + 971, -1, 454, 515, 959, 516, 971, -1, 960, 965, + 971, -1, 960, 515, 959, 516, 971, -1, 961, -1, + 959, 519, 961, -1, 36, -1, 35, -1, 962, 963, + -1, 1219, -1, 960, -1, 493, -1, 556, -1, 675, + -1, -1, 960, -1, -1, 463, -1, -1, 177, -1, + -1, 175, -1, -1, 515, 1201, 516, -1, -1, 1200, + 968, -1, 969, -1, 970, 519, 969, -1, 970, -1, + -1, 157, 973, -1, 157, 960, 965, 973, -1, 157, + 463, 973, -1, 157, 515, 959, 516, 973, -1, 1013, + -1, 980, -1, 996, -1, 989, -1, 1001, -1, 1009, + -1, 661, -1, 664, -1, 667, -1, 977, -1, 328, + 1202, 975, 40, 976, -1, 515, 1161, 516, -1, -1, + 1013, -1, 980, -1, 996, -1, 989, -1, 1001, -1, + 155, 1202, 978, -1, 100, 609, 417, 662, 40, 155, + 1202, 978, 663, -1, 100, 609, 417, 194, 282, 156, + 662, 40, 155, 1202, 978, 663, -1, 515, 1157, 516, + -1, -1, 117, 1202, -1, 117, 328, 1202, -1, 117, + 31, -1, 117, 328, 31, -1, 1024, 215, 221, 981, + 982, 986, 988, -1, 1200, -1, 1200, 40, 1217, -1, + 1013, -1, 311, 983, 458, 1013, -1, 515, 984, 516, + 1013, -1, 515, 984, 516, 311, 983, 458, 1013, -1, + 121, 459, -1, 452, -1, 415, -1, 985, -1, 984, + 519, 985, -1, 1217, 1181, -1, 297, 91, 987, 137, + 451, 387, 997, 1083, -1, 297, 91, 987, 137, 283, + -1, -1, 515, 830, 516, 1083, -1, 297, 93, 1202, + -1, -1, 360, 1197, -1, -1, 1024, 126, 176, 1075, + 990, 1084, 988, -1, 453, 1062, -1, -1, 252, 1027, + 1074, 992, 994, -1, 200, 993, 264, -1, -1, 25, + 390, -1, 369, 390, -1, 369, 154, -1, 390, 451, + 154, -1, 390, -1, 390, 369, 154, -1, 154, -1, + 25, 154, -1, 286, -1, -1, 286, -1, 394, 253, + -1, -1, 1024, 451, 1075, 387, 997, 1061, 1084, 988, + -1, 998, -1, 997, 519, 998, -1, 999, 505, 1118, + -1, 515, 1000, 516, 505, 1118, -1, 1217, 1181, -1, + 999, -1, 1000, 519, 999, -1, 1024, 260, 221, 1075, + 453, 1063, 297, 1118, 1002, -1, 1003, -1, 1002, 1003, + -1, 468, 257, 1004, 425, 1005, -1, 468, 257, 1004, + 425, 1006, -1, 468, 282, 257, 1004, 425, 1007, -1, + 468, 257, 1004, 425, 137, 283, -1, 468, 282, 257, + 1004, 425, 137, 283, -1, 37, 1118, -1, -1, 451, + 387, 997, -1, 126, -1, 215, 1008, -1, 215, 311, + 983, 458, 1008, -1, 215, 515, 984, 516, 1008, -1, + 215, 515, 984, 516, 311, 983, 458, 1008, -1, 215, + 121, 459, -1, 459, 515, 1157, 516, -1, 120, 1010, + 1011, 112, 1012, 170, 1013, -1, 1202, -1, -1, 1011, + 278, 376, -1, 1011, 376, -1, 1011, 56, -1, 1011, + 42, -1, 1011, 214, -1, -1, 472, 191, -1, 474, + 191, -1, 1015, -1, 1014, -1, 515, 1015, 516, -1, + 515, 1014, 516, -1, 1017, -1, 1016, 1033, -1, 1016, + 1032, 1054, 1037, -1, 1016, 1032, 1036, 1055, -1, 1018, + 1016, -1, 1018, 1016, 1033, -1, 1018, 1016, 1032, 1054, + 1037, -1, 1018, 1016, 1032, 1036, 1055, -1, 1017, -1, + 1014, -1, 380, 1030, 1196, 1025, 1061, 1083, 1046, 1053, + 1137, -1, 380, 1029, 1197, 1025, 1061, 1083, 1046, 1053, + 1137, -1, 1060, -1, 417, 1072, -1, 1016, 445, 1028, + 1016, -1, 1016, 219, 1028, 1016, -1, 1016, 151, 1028, + 1016, -1, 472, 1019, -1, 496, 1019, -1, 472, 344, + 1019, -1, 1020, -1, 1019, 519, 1020, -1, 1202, 968, + 40, 1021, 515, 976, 516, 1022, 1023, -1, 258, -1, + 282, 258, -1, -1, 377, 130, 167, 61, 635, 387, + 1217, -1, 377, 60, 167, 61, 635, 387, 1217, -1, + -1, 113, 635, 387, 1217, 429, 1206, 121, 1206, 453, + 1217, -1, 113, 635, 387, 1217, 453, 1217, -1, -1, + 1018, -1, -1, 221, 1026, -1, -1, 423, 1027, 1200, + -1, 421, 1027, 1200, -1, 248, 423, 1027, 1200, -1, + 248, 421, 1027, 1200, -1, 181, 423, 1027, 1200, -1, + 181, 421, 1027, 1200, -1, 449, 1027, 1200, -1, 417, + 1200, -1, 1200, -1, 417, -1, -1, 31, -1, 136, + -1, -1, 136, -1, 136, 297, 515, 1157, 516, -1, + 31, -1, -1, 1029, -1, 1030, -1, 1033, -1, -1, + 303, 61, 1034, -1, 1035, -1, 1034, 519, 1035, -1, + 1118, 453, 1155, 837, -1, 1118, 836, 837, -1, 1038, + 1039, -1, 1039, 1038, -1, 1038, -1, 1039, -1, 1036, + -1, -1, 245, 1040, -1, 245, 1040, 519, 1041, -1, + 164, 1045, 1042, 1044, 298, -1, 164, 1045, 1042, 1044, + 472, 426, -1, 164, 1045, 1044, 298, -1, 164, 1045, + 1044, 472, 426, -1, 294, 1041, -1, 294, 1042, 1044, + -1, 1118, -1, 31, -1, 1118, -1, 1120, -1, 506, + 1043, -1, 507, 1043, -1, 1207, -1, 5, -1, 369, + -1, 370, -1, 167, -1, 273, -1, 185, 61, 1028, + 1047, -1, -1, 1048, -1, 1047, 519, 1048, -1, 1118, + -1, 1049, -1, 1051, -1, 1050, -1, 1052, -1, 515, + 516, -1, 366, 515, 1157, 516, -1, 103, 515, 1157, + 516, -1, 186, 388, 515, 1047, 516, -1, 189, 1118, + -1, -1, 1056, -1, 170, 340, 298, -1, 1054, -1, + -1, 1057, -1, 1056, 1057, -1, 1058, 1059, 995, -1, + 170, 451, -1, 170, 278, 232, 451, -1, 170, 390, + -1, 170, 232, 390, -1, 292, 1199, -1, -1, 459, + 515, 1157, 516, -1, 1060, 519, 515, 1157, 516, -1, + 176, 1062, -1, -1, 1063, -1, 1062, 519, 1063, -1, + 1072, 1066, -1, 1072, 1066, 1076, -1, 1078, 1068, -1, + 238, 1078, 1068, -1, 1088, 1066, -1, 238, 1088, 1066, + -1, 1014, 1066, -1, 238, 1014, 1066, -1, 1064, -1, + 515, 1064, 516, 1065, -1, 515, 1064, 516, -1, 1063, + 101, 226, 1063, -1, 1063, 1069, 226, 1063, 1071, -1, + 1063, 226, 1063, 1071, -1, 1063, 270, 1069, 226, 1063, + -1, 1063, 270, 226, 1063, -1, 40, 1217, 515, 1201, + 516, -1, 40, 1217, -1, 1217, 515, 1201, 516, -1, + 1217, -1, 1065, -1, -1, 40, 1217, -1, -1, 1065, + -1, 40, 515, 1086, 516, -1, 40, 1217, 515, 1086, + 516, -1, 1217, 515, 1086, 516, -1, -1, 177, 1070, + -1, 242, 1070, -1, 363, 1070, -1, 211, -1, 307, + -1, -1, 453, 515, 1201, 516, 1067, -1, 297, 1118, + -1, 1200, -1, 1073, -1, 1200, 508, -1, 298, 1200, + -1, 298, 515, 1200, 516, -1, 1072, -1, 1074, 519, + 1072, -1, 1072, -1, 1072, 1217, -1, 1072, 40, 1217, + -1, 419, 1205, 515, 1157, 516, 1077, -1, 353, 515, + 1118, 516, -1, -1, 1123, 1082, -1, 370, 176, 515, + 1080, 516, 1082, -1, 1123, 1081, -1, 1079, -1, 1080, + 519, 1079, -1, 40, 515, 1086, 516, -1, -1, 496, + 304, -1, -1, 469, 1118, -1, -1, 469, 1118, -1, + 469, 104, 292, 1010, -1, -1, 1086, -1, -1, 1087, + -1, 1086, 519, 1087, -1, 1217, 1095, 577, -1, 489, + 515, 1120, 1133, 83, 1089, 516, -1, 489, 515, 484, + 515, 1093, 516, 519, 1120, 1133, 83, 1089, 516, -1, + 1090, -1, 1089, 519, 1090, -1, 1217, 1095, -1, 1217, + 1095, 1091, -1, 1217, 170, 304, -1, 1092, -1, 1091, + 1092, -1, 3, 1119, -1, 121, 1119, -1, 282, 287, + -1, 287, -1, 1094, -1, 1093, 519, 1094, -1, 1119, + 40, 1220, -1, 121, 1119, -1, 1097, 1096, -1, 389, + 1097, 1096, -1, 1097, 39, 513, 1207, 514, -1, 389, + 1097, 39, 513, 1207, 514, -1, 1097, 39, -1, 389, + 1097, 39, -1, 1096, 513, 514, -1, 1096, 513, 1207, + 514, -1, -1, 1099, -1, 1101, -1, 1103, -1, 1107, + -1, 1113, -1, 1114, 1116, -1, 1114, 515, 1207, 516, + -1, 1101, -1, 1104, -1, 1108, -1, 1113, -1, 1218, + 1100, -1, 1218, 792, 1100, -1, 515, 1157, 516, -1, + -1, 217, -1, 218, -1, 395, -1, 55, -1, 341, + -1, 168, 1102, -1, 140, 326, -1, 119, 1100, -1, + 118, 1100, -1, 290, 1100, -1, 58, -1, 515, 1207, + 516, -1, -1, 1105, -1, 1106, -1, 1105, -1, 1106, + -1, 57, 1112, 515, 1157, 516, -1, 57, 1112, -1, + 1109, -1, 1110, -1, 1109, -1, 1110, -1, 1111, 515, + 1207, 516, -1, 1111, -1, 72, 1112, -1, 71, 1112, + -1, 460, -1, 269, 72, 1112, -1, 269, 71, 1112, + -1, 271, 1112, -1, 462, -1, -1, 428, 515, 1207, + 516, 1115, -1, 428, 1115, -1, 427, 515, 1207, 516, + 1115, -1, 427, 1115, -1, 220, -1, 496, 427, 492, + -1, 497, 427, 492, -1, -1, 490, -1, 265, -1, + 116, -1, 192, -1, 262, -1, 1117, -1, 490, 429, + 265, -1, 116, 429, 192, -1, 116, 429, 262, -1, + 116, 429, 1117, -1, 192, 429, 262, -1, 192, 429, + 1117, -1, 262, 429, 1117, -1, -1, 378, -1, 378, + 515, 1207, 516, -1, 1120, -1, 1118, 13, 1095, -1, + 1118, 80, 791, -1, 1118, 47, 427, 492, 1118, -1, + 506, 1118, -1, 507, 1118, -1, 1118, 506, 1118, -1, + 1118, 507, 1118, -1, 1118, 508, 1118, -1, 1118, 509, + 1118, -1, 1118, 510, 1118, -1, 1118, 511, 1118, -1, + 1118, 503, 1118, -1, 1118, 504, 1118, -1, 1118, 505, + 1118, -1, 1118, 17, 1118, -1, 1118, 18, 1118, -1, + 1118, 19, 1118, -1, 1118, 1154, 1118, -1, 1154, 1118, + -1, 1118, 37, 1118, -1, 1118, 302, 1118, -1, 282, + 1118, -1, 494, 1118, -1, 1118, 244, 1118, -1, 1118, + 244, 1118, 149, 1118, -1, 1118, 494, 244, 1118, -1, + 1118, 494, 244, 1118, 149, 1118, -1, 1118, 195, 1118, + -1, 1118, 195, 1118, 149, 1118, -1, 1118, 494, 195, + 1118, -1, 1118, 494, 195, 1118, 149, 1118, -1, 1118, + 392, 429, 1118, -1, 1118, 392, 429, 1118, 149, 1118, + -1, 1118, 494, 392, 429, 1118, -1, 1118, 494, 392, + 429, 1118, 149, 1118, -1, 1118, 223, 287, -1, 1118, + 224, -1, 1118, 223, 282, 287, -1, 1118, 285, -1, + 1148, 309, 1148, -1, 1118, 223, 436, -1, 1118, 223, + 282, 436, -1, 1118, 223, 162, -1, 1118, 223, 282, + 162, -1, 1118, 223, 447, -1, 1118, 223, 282, 447, + -1, 1118, 223, 136, 176, 1118, -1, 1118, 223, 282, + 136, 176, 1118, -1, 1118, 54, 1182, 1119, 37, 1118, + -1, 1118, 494, 54, 1182, 1119, 37, 1118, -1, 1118, + 54, 413, 1119, 37, 1118, -1, 1118, 494, 54, 413, + 1119, 37, 1118, -1, 1118, 200, 1171, -1, 1118, 494, + 200, 1171, -1, 1118, 1156, 1151, 1014, -1, 1118, 1156, + 1151, 515, 1118, 516, -1, 446, 625, 1014, -1, 1118, + 223, 138, -1, 1118, 223, 282, 138, -1, 1118, 223, + 281, -1, 1118, 223, 1166, 281, -1, 1118, 223, 282, + 281, -1, 1118, 223, 282, 1166, 281, -1, 1118, 223, + 1187, 1188, -1, 1118, 223, 282, 1187, 1188, -1, 121, + -1, 1120, -1, 1119, 13, 1095, -1, 506, 1119, -1, + 507, 1119, -1, 1119, 506, 1119, -1, 1119, 507, 1119, + -1, 1119, 508, 1119, -1, 1119, 509, 1119, -1, 1119, + 510, 1119, -1, 1119, 511, 1119, -1, 1119, 503, 1119, + -1, 1119, 504, 1119, -1, 1119, 505, 1119, -1, 1119, + 17, 1119, -1, 1119, 18, 1119, -1, 1119, 19, 1119, + -1, 1119, 1154, 1119, -1, 1154, 1119, -1, 1119, 223, + 136, 176, 1119, -1, 1119, 223, 282, 136, 176, 1119, + -1, 1119, 223, 138, -1, 1119, 223, 282, 138, -1, + 1177, -1, 1206, -1, 12, 1181, -1, 515, 1118, 516, + 1181, -1, 1172, -1, 1122, -1, 1014, -1, 1014, 1180, + -1, 156, 1014, -1, 39, 1014, -1, 39, 1162, -1, + 1149, -1, 1150, -1, 186, 515, 1157, 516, -1, 1205, + 515, 516, -1, 1205, 515, 1158, 1032, 516, -1, 1205, + 515, 461, 1159, 1032, 516, -1, 1205, 515, 1158, 519, + 461, 1159, 1032, 516, -1, 1205, 515, 31, 1158, 1032, + 516, -1, 1205, 515, 136, 1158, 1032, 516, -1, 1205, + 515, 508, 516, -1, 1121, 1135, 1136, 1140, -1, 1194, + 1136, 1140, -1, 1124, -1, 1121, -1, 1124, -1, 1194, + -1, 81, 170, 515, 1118, 516, -1, 106, -1, 109, + -1, 109, 515, 1207, 516, -1, 110, -1, 110, 515, + 1207, 516, -1, 249, -1, 249, 515, 1207, 516, -1, + 250, -1, 250, 515, 1207, 516, -1, 107, -1, 111, + -1, 386, -1, 416, -1, 452, -1, 105, -1, 108, + -1, 68, 515, 1118, 40, 1095, 516, -1, 161, 515, + 1164, 516, -1, 280, 515, 1118, 516, -1, 280, 515, + 1118, 519, 1166, 516, -1, 310, 515, 1167, 516, -1, + 310, 515, 1160, 516, -1, 324, 515, 1168, 516, -1, + 411, 515, 1169, 516, -1, 411, 515, 1160, 516, -1, + 433, 515, 1118, 40, 1095, 516, -1, 435, 515, 59, + 1170, 516, -1, 435, 515, 239, 1170, 516, -1, 435, + 515, 430, 1170, 516, -1, 435, 515, 1170, 516, -1, + 288, 515, 1118, 519, 1118, 516, -1, 79, 515, 1157, + 516, -1, 184, 515, 1157, 516, -1, 241, 515, 1157, + 516, -1, 480, 515, 1157, 516, -1, 481, 515, 267, + 1220, 516, -1, 481, 515, 267, 1220, 519, 1127, 516, + -1, 481, 515, 267, 1220, 519, 1157, 516, -1, 481, + 515, 267, 1220, 519, 1127, 519, 1157, 516, -1, 482, + 515, 1120, 1133, 516, -1, 483, 515, 1128, 516, -1, + 485, 515, 1130, 1118, 1132, 516, -1, 486, 515, 267, + 1220, 516, -1, 486, 515, 267, 1220, 519, 1118, 516, + -1, 487, 515, 1118, 519, 1125, 1126, 516, -1, 488, + 515, 1130, 1118, 40, 1097, 1131, 516, -1, 230, 515, + 1158, 516, -1, 230, 515, 1189, 1191, 1188, 1186, 516, + -1, 230, 515, 1186, 516, -1, 228, 515, 1193, 1192, + 1186, 516, -1, 228, 515, 1015, 1184, 1186, 516, -1, + 228, 515, 1186, 516, -1, 464, 1118, -1, 464, 278, + 458, -1, 519, 400, 491, -1, 519, 400, 278, -1, + 519, 400, 278, 458, -1, -1, 479, 515, 1128, 516, + -1, 1129, -1, 1128, 519, 1129, -1, 1118, 40, 1220, + -1, 1118, -1, 138, -1, 95, -1, 204, -1, 278, + 204, -1, -1, 327, 470, -1, 409, 470, -1, -1, + 319, 1120, -1, 319, 1120, 1134, -1, 319, 1134, 1120, + -1, 319, 1134, 1120, 1134, -1, 61, 345, -1, 61, + 458, -1, 473, 185, 515, 1033, 516, -1, -1, 165, + 515, 469, 1118, 516, -1, -1, 471, 1138, -1, -1, + 1139, -1, 1138, 519, 1139, -1, 1217, 40, 1141, -1, + 308, 1141, -1, 308, 1217, -1, -1, 515, 1142, 1143, + 1032, 1144, 516, -1, 1217, -1, -1, 318, 61, 1157, + -1, -1, 339, 1145, 1147, -1, 370, 1145, 1147, -1, + 187, 1145, 1147, -1, -1, 1146, -1, 54, 1146, 37, + 1146, -1, 442, 325, -1, 442, 169, -1, 104, 369, + -1, 1118, 325, -1, 1118, 169, -1, 152, 104, 369, + -1, 152, 185, -1, 152, 426, -1, 152, 278, 305, + -1, -1, 369, 515, 1157, 516, -1, 369, 515, 516, + -1, 515, 1157, 519, 1118, 516, -1, 369, 515, 1157, + 516, -1, 369, 515, 516, -1, 515, 1157, 519, 1118, + 516, -1, 38, -1, 397, -1, 31, -1, 10, -1, + 1153, -1, 506, -1, 507, -1, 508, -1, 509, -1, + 510, -1, 511, -1, 503, -1, 504, -1, 505, -1, + 17, -1, 18, -1, 19, -1, 10, -1, 299, 515, + 877, 516, -1, 1152, -1, 299, 515, 877, 516, -1, + 1152, -1, 299, 515, 877, 516, -1, 244, -1, 494, + 244, -1, 195, -1, 494, 195, -1, 1118, -1, 1157, + 519, 1118, -1, 1159, -1, 1158, 519, 1159, -1, 1118, + -1, 848, 15, 1118, -1, 848, 16, 1118, -1, 1158, + -1, -1, 1095, -1, 1161, 519, 1095, -1, 513, 1157, + 514, -1, 513, 1163, 514, -1, 513, 514, -1, 1162, + -1, 1163, 519, 1162, -1, 1165, 176, 1118, -1, 12, + 176, 1118, -1, 3, -1, 490, -1, 265, -1, 116, + -1, 192, -1, 262, -1, 378, -1, 1208, -1, 274, + -1, 275, -1, 276, -1, 277, -1, 1118, 321, 1118, + 176, 1118, 170, 1118, -1, 1118, 321, 1118, 176, 1118, + -1, 1119, 200, 1119, -1, 1118, 176, 1118, 170, 1118, + -1, 1118, 170, 1118, 176, 1118, -1, 1118, 176, 1118, + -1, 1118, 170, 1118, -1, 1118, 392, 1118, 149, 1118, + -1, 1118, 176, 1157, -1, 176, 1157, -1, 1157, -1, + 1014, -1, 515, 1157, 516, -1, 67, 1176, 1173, 1175, + 147, -1, 1174, -1, 1173, 1174, -1, 468, 1118, 425, + 1118, -1, 143, 1118, -1, -1, 1118, -1, -1, 1217, + -1, 1217, 1180, -1, 517, 1203, -1, 517, 508, -1, + 513, 1118, 514, -1, 513, 1179, 520, 1179, 514, -1, + 1118, -1, -1, 1178, -1, 1180, 1178, -1, -1, 1181, + 1178, -1, 45, -1, -1, 1118, 1184, -1, 493, 227, + 1185, -1, -1, 145, 1202, -1, -1, 360, 1095, 1184, + -1, -1, 227, -1, 227, 458, -1, 227, 39, -1, + 227, 291, -1, 227, 373, -1, 472, 446, 233, -1, + 472, 446, -1, 474, 446, 233, -1, 474, 446, -1, + -1, 1190, -1, 1189, 519, 1190, -1, 1120, 458, 1183, + -1, 1118, 520, 1183, -1, 287, 297, 287, -1, 23, + 297, 287, -1, -1, 287, 297, 287, -1, 23, 297, + 287, -1, -1, 1183, -1, 1193, 519, 1183, -1, 231, + 515, 1190, 1191, 1188, 1186, 516, -1, 229, 515, 1183, + 1195, 1192, 1186, 516, -1, 303, 61, 1034, -1, -1, + 1197, -1, -1, 1198, -1, 1197, 519, 1198, -1, 1118, + 40, 1220, -1, 1118, 1221, -1, 1118, -1, 508, -1, + 1200, -1, 1199, 519, 1200, -1, 1217, -1, 1217, 1180, + -1, 1202, -1, 1201, 519, 1202, -1, 1217, -1, 1220, + -1, 1208, -1, 1218, -1, 1217, 1180, -1, 1207, -1, + 5, -1, 1208, -1, 8, -1, 9, -1, 1205, 1208, + -1, 1205, 515, 1158, 1032, 516, 1208, -1, 1205, 12, + -1, 1205, 515, 1158, 1032, 516, 12, -1, 1098, 1208, + -1, 1114, 1208, 1116, -1, 1114, 515, 1207, 516, 1208, + -1, 1098, 12, -1, 1114, 12, 1116, -1, 1114, 515, + 1207, 516, 12, -1, 436, -1, 162, -1, 287, -1, + 11, -1, 6, -1, 1207, -1, 506, 1207, -1, 507, + 1207, -1, 1211, -1, 1219, -1, 107, -1, 111, -1, + 386, -1, 1211, -1, 1212, 519, 1211, -1, 1031, 1196, + 1061, 1083, 1046, 1053, 1137, 1032, 1037, 1055, -1, 1215, + 1181, 1216, 1213, -1, 1217, -1, 12, -1, 15, -1, + 505, -1, 3, -1, 1222, -1, 1223, -1, 3, -1, + 1222, -1, 1224, -1, 3, -1, 1222, -1, 1223, -1, + 1224, -1, 3, -1, 1222, -1, 1223, -1, 1224, -1, + 1225, -1, 3, -1, 1226, -1, 22, -1, 23, -1, + 24, -1, 25, -1, 26, -1, 27, -1, 28, -1, + 29, -1, 30, -1, 32, -1, 33, -1, 34, -1, + 42, -1, 43, -1, 44, -1, 47, -1, 46, -1, + 48, -1, 49, -1, 51, -1, 52, -1, 53, -1, + 60, -1, 61, -1, 62, -1, 63, -1, 64, -1, + 65, -1, 66, -1, 69, -1, 70, -1, 73, -1, + 75, -1, 76, -1, 77, -1, 78, -1, 83, -1, + 84, -1, 85, -1, 86, -1, 87, -1, 88, -1, + 90, -1, 91, -1, 92, -1, 94, -1, 95, -1, + 96, -1, 97, -1, 98, -1, 99, -1, 102, -1, + 103, -1, 104, -1, 112, -1, 113, -1, 114, -1, + 115, -1, 116, -1, 117, -1, 120, -1, 122, -1, + 124, -1, 125, -1, 126, -1, 127, -1, 128, -1, + 129, -1, 130, -1, 132, -1, 133, -1, 134, -1, + 135, -1, 138, -1, 139, -1, 140, -1, 141, -1, + 142, -1, 144, -1, 145, -1, 146, -1, 148, -1, + 149, -1, 150, -1, 152, -1, 153, -1, 154, -1, + 155, -1, 157, -1, 158, -1, 159, -1, 160, -1, + 163, -1, 165, -1, 166, -1, 167, -1, 169, -1, + 171, -1, 173, -1, 174, -1, 178, -1, 179, -1, + 180, -1, 181, -1, 183, -1, 187, -1, 188, -1, + 190, -1, 191, -1, 192, -1, 193, -1, 194, -1, + 196, -1, 197, -1, 198, -1, 199, -1, 201, -1, + 202, -1, 203, -1, 204, -1, 205, -1, 206, -1, + 207, -1, 208, -1, 210, -1, 213, -1, 214, -1, + 215, -1, 216, -1, 222, -1, 225, -1, 227, -1, + 232, -1, 233, -1, 234, -1, 235, -1, 236, -1, + 237, -1, 240, -1, 243, -1, 246, -1, 247, -1, + 248, -1, 251, -1, 252, -1, 253, -1, 254, -1, 255, -1, 256, -1, 257, -1, 258, -1, 259, -1, - 263, -1, 264, -1, 265, -1, 266, -1, 267, -1, - 268, -1, 269, -1, 272, -1, 274, -1, 275, -1, - 277, -1, 280, -1, 282, -1, 283, -1, 284, -1, - 286, -1, 287, -1, 290, -1, 291, -1, 292, -1, - 295, -1, 296, -1, 299, -1, 302, -1, 303, -1, - 304, -1, 305, -1, 306, -1, 307, -1, 308, -1, - 309, -1, 310, -1, 311, -1, 313, -1, 314, -1, - 316, -1, 319, -1, 320, -1, 318, -1, 322, -1, - 323, -1, 324, -1, 325, -1, 326, -1, 327, -1, - 328, -1, 329, -1, 330, -1, 331, -1, 333, -1, - 334, -1, 335, -1, 336, -1, 338, -1, 339, -1, - 340, -1, 341, -1, 342, -1, 343, -1, 344, -1, - 345, -1, 346, -1, 347, -1, 348, -1, 349, -1, - 350, -1, 352, -1, 353, -1, 355, -1, 356, -1, - 357, -1, 358, -1, 359, -1, 361, -1, 362, -1, - 363, -1, 364, -1, 365, -1, 366, -1, 367, -1, - 368, -1, 369, -1, 371, -1, 372, -1, 373, -1, - 374, -1, 375, -1, 377, -1, 378, -1, 380, -1, - 381, -1, 383, -1, 384, -1, 386, -1, 388, -1, - 389, -1, 390, -1, 391, -1, 392, -1, 393, -1, - 394, -1, 395, -1, 396, -1, 397, -1, 398, -1, - 399, -1, 400, -1, 402, -1, 404, -1, 405, -1, - 407, -1, 409, -1, 410, -1, 411, -1, 412, -1, - 413, -1, 415, -1, 420, -1, 421, -1, 423, -1, - 426, -1, 427, -1, 428, -1, 429, -1, 430, -1, - 431, -1, 432, -1, 433, -1, 436, -1, 437, -1, - 438, -1, 439, -1, 440, -1, 443, -1, 444, -1, - 445, -1, 446, -1, 447, -1, 451, -1, 453, -1, - 454, -1, 455, -1, 456, -1, 459, -1, 462, -1, - 463, -1, 464, -1, 465, -1, 466, -1, 467, -1, - 479, -1, 480, -1, 481, -1, 53, -1, 54, -1, - 56, -1, 57, -1, 70, -1, 71, -1, 78, -1, - 117, -1, 118, -1, 155, -1, 160, -1, 167, -1, - 182, -1, 184, -1, 209, -1, 214, -1, 215, -1, - 217, -1, 232, -1, 260, -1, 262, -1, 270, -1, - 271, -1, 279, -1, 281, -1, 297, -1, 301, -1, - 315, -1, 317, -1, 332, -1, 360, -1, 379, -1, - 385, -1, 401, -1, 416, -1, 417, -1, 422, -1, - 424, -1, 448, -1, 449, -1, 468, -1, 469, -1, - 470, -1, 471, -1, 472, -1, 473, -1, 474, -1, - 475, -1, 476, -1, 477, -1, 478, -1, 49, -1, - 55, -1, 80, -1, 88, -1, 100, -1, 107, -1, - 173, -1, 175, -1, 193, -1, 208, -1, 220, -1, - 221, -1, 223, -1, 233, -1, 235, -1, 261, -1, - 276, -1, 298, -1, 300, -1, 354, -1, 382, -1, - 408, -1, 452, -1, 30, -1, 34, -1, 35, -1, - 36, -1, 37, -1, 38, -1, 39, -1, 40, -1, - 44, -1, 58, -1, 66, -1, 67, -1, 73, -1, - 79, -1, 81, -1, 92, -1, 99, -1, 104, -1, - 105, -1, 106, -1, 108, -1, 109, -1, 110, -1, - 120, -1, 122, -1, 130, -1, 135, -1, 136, -1, - 142, -1, 146, -1, 150, -1, 161, -1, 163, -1, - 169, -1, 171, -1, 174, -1, 180, -1, 183, -1, - 187, -1, 198, -1, 206, -1, 216, -1, 218, -1, - 229, -1, 230, -1, 236, -1, 240, -1, 241, -1, - 273, -1, 278, -1, 285, -1, 288, -1, 289, -1, - 293, -1, 294, -1, 312, -1, 321, -1, 337, -1, - 351, -1, 370, -1, 376, -1, 387, -1, 403, -1, - 406, -1, 414, -1, 418, -1, 419, -1, 425, -1, - 434, -1, 435, -1, 441, -1, 442, -1, 450, -1, - 457, -1, 458, -1, 460, -1, 461, -1, 22, -1, + 260, -1, 261, -1, 262, -1, 263, -1, 264, -1, + 265, -1, 266, -1, 267, -1, 268, -1, 272, -1, + 273, -1, 274, -1, 275, -1, 276, -1, 277, -1, + 278, -1, 281, -1, 283, -1, 284, -1, 286, -1, + 289, -1, 291, -1, 292, -1, 293, -1, 295, -1, + 296, -1, 299, -1, 300, -1, 301, -1, 304, -1, + 305, -1, 308, -1, 311, -1, 312, -1, 313, -1, + 314, -1, 315, -1, 316, -1, 317, -1, 318, -1, + 319, -1, 320, -1, 322, -1, 323, -1, 325, -1, + 328, -1, 329, -1, 327, -1, 331, -1, 332, -1, + 333, -1, 334, -1, 335, -1, 336, -1, 337, -1, + 338, -1, 339, -1, 340, -1, 342, -1, 343, -1, + 344, -1, 345, -1, 347, -1, 348, -1, 349, -1, + 350, -1, 351, -1, 352, -1, 353, -1, 354, -1, + 355, -1, 356, -1, 357, -1, 358, -1, 359, -1, + 361, -1, 362, -1, 364, -1, 365, -1, 366, -1, + 367, -1, 368, -1, 370, -1, 371, -1, 372, -1, + 373, -1, 374, -1, 375, -1, 376, -1, 377, -1, + 378, -1, 379, -1, 381, -1, 382, -1, 383, -1, + 384, -1, 385, -1, 387, -1, 388, -1, 390, -1, + 391, -1, 393, -1, 394, -1, 396, -1, 398, -1, + 399, -1, 400, -1, 401, -1, 402, -1, 403, -1, + 404, -1, 405, -1, 406, -1, 407, -1, 408, -1, + 409, -1, 410, -1, 412, -1, 414, -1, 415, -1, + 418, -1, 420, -1, 421, -1, 422, -1, 423, -1, + 424, -1, 426, -1, 431, -1, 432, -1, 434, -1, + 437, -1, 438, -1, 439, -1, 440, -1, 441, -1, + 442, -1, 443, -1, 444, -1, 447, -1, 448, -1, + 449, -1, 450, -1, 451, -1, 454, -1, 455, -1, + 456, -1, 457, -1, 458, -1, 462, -1, 464, -1, + 465, -1, 466, -1, 467, -1, 470, -1, 473, -1, + 474, -1, 475, -1, 476, -1, 477, -1, 478, -1, + 490, -1, 491, -1, 492, -1, 54, -1, 55, -1, + 57, -1, 58, -1, 71, -1, 72, -1, 79, -1, + 118, -1, 119, -1, 156, -1, 161, -1, 168, -1, + 184, -1, 186, -1, 212, -1, 217, -1, 218, -1, + 220, -1, 228, -1, 229, -1, 230, -1, 231, -1, + 241, -1, 269, -1, 271, -1, 279, -1, 280, -1, + 288, -1, 290, -1, 306, -1, 310, -1, 324, -1, + 326, -1, 341, -1, 369, -1, 389, -1, 395, -1, + 411, -1, 427, -1, 428, -1, 433, -1, 435, -1, + 459, -1, 460, -1, 479, -1, 480, -1, 481, -1, + 482, -1, 483, -1, 484, -1, 485, -1, 486, -1, + 487, -1, 488, -1, 489, -1, 50, -1, 56, -1, + 81, -1, 89, -1, 101, -1, 108, -1, 175, -1, + 177, -1, 195, -1, 211, -1, 223, -1, 224, -1, + 226, -1, 242, -1, 244, -1, 270, -1, 285, -1, + 307, -1, 309, -1, 363, -1, 392, -1, 419, -1, + 463, -1, 31, -1, 35, -1, 36, -1, 37, -1, + 38, -1, 39, -1, 40, -1, 41, -1, 45, -1, + 59, -1, 67, -1, 68, -1, 74, -1, 80, -1, + 82, -1, 93, -1, 100, -1, 105, -1, 106, -1, + 107, -1, 109, -1, 110, -1, 111, -1, 121, -1, + 123, -1, 131, -1, 136, -1, 137, -1, 143, -1, + 147, -1, 151, -1, 162, -1, 164, -1, 170, -1, + 172, -1, 176, -1, 182, -1, 185, -1, 189, -1, + 200, -1, 209, -1, 219, -1, 221, -1, 238, -1, + 239, -1, 245, -1, 249, -1, 250, -1, 282, -1, + 287, -1, 294, -1, 297, -1, 298, -1, 302, -1, + 303, -1, 321, -1, 330, -1, 346, -1, 360, -1, + 380, -1, 386, -1, 397, -1, 413, -1, 416, -1, + 417, -1, 425, -1, 429, -1, 430, -1, 436, -1, + 445, -1, 446, -1, 452, -1, 453, -1, 461, -1, + 468, -1, 469, -1, 471, -1, 472, -1, 22, -1, 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, 28, -1, 29, -1, 30, -1, 31, -1, 32, -1, 33, -1, 34, -1, 35, -1, 36, -1, 37, -1, - 40, -1, 41, -1, 42, -1, 43, -1, 44, -1, - 46, -1, 45, -1, 47, -1, 48, -1, 49, -1, + 38, -1, 41, -1, 42, -1, 43, -1, 44, -1, + 45, -1, 47, -1, 46, -1, 48, -1, 49, -1, 50, -1, 51, -1, 52, -1, 53, -1, 54, -1, 55, -1, 56, -1, 57, -1, 58, -1, 59, -1, 60, -1, 61, -1, 62, -1, 63, -1, 64, -1, 65, -1, 66, -1, 67, -1, 68, -1, 69, -1, - 72, -1, 73, -1, 74, -1, 75, -1, 76, -1, + 70, -1, 73, -1, 74, -1, 75, -1, 76, -1, 77, -1, 78, -1, 79, -1, 80, -1, 81, -1, 82, -1, 83, -1, 84, -1, 85, -1, 86, -1, 87, -1, 88, -1, 89, -1, 90, -1, 91, -1, 92, -1, 93, -1, 94, -1, 95, -1, 96, -1, - 97, -1, 98, -1, 100, -1, 101, -1, 102, -1, + 97, -1, 98, -1, 99, -1, 101, -1, 102, -1, 103, -1, 104, -1, 105, -1, 106, -1, 107, -1, 108, -1, 109, -1, 110, -1, 111, -1, 112, -1, - 113, -1, 114, -1, 116, -1, 117, -1, 118, -1, + 113, -1, 114, -1, 115, -1, 117, -1, 118, -1, 119, -1, 120, -1, 121, -1, 122, -1, 123, -1, 124, -1, 125, -1, 126, -1, 127, -1, 128, -1, 129, -1, 130, -1, 131, -1, 132, -1, 133, -1, 134, -1, 135, -1, 136, -1, 137, -1, 138, -1, 139, -1, 140, -1, 141, -1, 142, -1, 143, -1, 144, -1, 145, -1, 146, -1, 147, -1, 148, -1, - 149, -1, 151, -1, 152, -1, 153, -1, 154, -1, + 149, -1, 150, -1, 152, -1, 153, -1, 154, -1, 155, -1, 156, -1, 157, -1, 158, -1, 159, -1, - 160, -1, 161, -1, 162, -1, 165, -1, 166, -1, - 167, -1, 168, -1, 170, -1, 171, -1, 172, -1, - 173, -1, 175, -1, 176, -1, 177, -1, 178, -1, - 179, -1, 181, -1, 182, -1, 184, -1, 185, -1, - 186, -1, 188, -1, 189, -1, 191, -1, 192, -1, + 160, -1, 161, -1, 162, -1, 163, -1, 166, -1, + 167, -1, 168, -1, 169, -1, 171, -1, 172, -1, + 173, -1, 174, -1, 175, -1, 177, -1, 178, -1, + 179, -1, 180, -1, 181, -1, 183, -1, 184, -1, + 186, -1, 187, -1, 188, -1, 190, -1, 191, -1, 193, -1, 194, -1, 195, -1, 196, -1, 197, -1, 198, -1, 199, -1, 200, -1, 201, -1, 202, -1, 203, -1, 204, -1, 205, -1, 206, -1, 207, -1, 208, -1, 209, -1, 210, -1, 211, -1, 212, -1, - 213, -1, 214, -1, 215, -1, 217, -1, 219, -1, - 220, -1, 222, -1, 223, -1, 224, -1, 225, -1, + 213, -1, 214, -1, 215, -1, 216, -1, 217, -1, + 218, -1, 220, -1, 222, -1, 223, -1, 225, -1, 226, -1, 227, -1, 228, -1, 229, -1, 230, -1, 231, -1, 232, -1, 233, -1, 234, -1, 235, -1, - 237, -1, 238, -1, 239, -1, 240, -1, 241, -1, - 242, -1, 243, -1, 244, -1, 245, -1, 246, -1, + 236, -1, 237, -1, 238, -1, 239, -1, 240, -1, + 241, -1, 242, -1, 243, -1, 244, -1, 246, -1, 247, -1, 248, -1, 249, -1, 250, -1, 251, -1, - 252, -1, 254, -1, 255, -1, 257, -1, 258, -1, - 259, -1, 260, -1, 261, -1, 262, -1, 263, -1, - 264, -1, 265, -1, 266, -1, 267, -1, 268, -1, + 252, -1, 253, -1, 254, -1, 255, -1, 256, -1, + 257, -1, 258, -1, 259, -1, 260, -1, 261, -1, + 263, -1, 264, -1, 266, -1, 267, -1, 268, -1, 269, -1, 270, -1, 271, -1, 272, -1, 273, -1, - 274, -1, 275, -1, 277, -1, 278, -1, 279, -1, - 280, -1, 281, -1, 282, -1, 283, -1, 284, -1, - 286, -1, 287, -1, 289, -1, 290, -1, 291, -1, - 292, -1, 293, -1, 295, -1, 296, -1, 297, -1, - 298, -1, 301, -1, 302, -1, 303, -1, 304, -1, - 305, -1, 306, -1, 307, -1, 308, -1, 309, -1, + 274, -1, 275, -1, 276, -1, 277, -1, 278, -1, + 279, -1, 280, -1, 281, -1, 282, -1, 283, -1, + 284, -1, 286, -1, 287, -1, 288, -1, 289, -1, + 290, -1, 291, -1, 292, -1, 293, -1, 295, -1, + 296, -1, 298, -1, 299, -1, 300, -1, 301, -1, + 302, -1, 304, -1, 305, -1, 306, -1, 307, -1, 310, -1, 311, -1, 312, -1, 313, -1, 314, -1, - 315, -1, 316, -1, 319, -1, 320, -1, 318, -1, - 321, -1, 322, -1, 323, -1, 324, -1, 325, -1, - 326, -1, 327, -1, 328, -1, 329, -1, 330, -1, + 315, -1, 316, -1, 317, -1, 318, -1, 319, -1, + 320, -1, 321, -1, 322, -1, 323, -1, 324, -1, + 325, -1, 328, -1, 329, -1, 327, -1, 330, -1, 331, -1, 332, -1, 333, -1, 334, -1, 335, -1, 336, -1, 337, -1, 338, -1, 339, -1, 340, -1, 341, -1, 342, -1, 343, -1, 344, -1, 345, -1, 346, -1, 347, -1, 348, -1, 349, -1, 350, -1, - 352, -1, 353, -1, 354, -1, 355, -1, 356, -1, - 357, -1, 358, -1, 359, -1, 360, -1, 361, -1, + 351, -1, 352, -1, 353, -1, 354, -1, 355, -1, + 356, -1, 357, -1, 358, -1, 359, -1, 361, -1, 362, -1, 363, -1, 364, -1, 365, -1, 366, -1, - 367, -1, 369, -1, 370, -1, 371, -1, 372, -1, - 373, -1, 374, -1, 375, -1, 376, -1, 377, -1, - 379, -1, 378, -1, 380, -1, 381, -1, 382, -1, + 367, -1, 368, -1, 369, -1, 370, -1, 371, -1, + 372, -1, 373, -1, 374, -1, 375, -1, 376, -1, + 377, -1, 379, -1, 380, -1, 381, -1, 382, -1, 383, -1, 384, -1, 385, -1, 386, -1, 387, -1, - 388, -1, 389, -1, 390, -1, 391, -1, 392, -1, + 389, -1, 388, -1, 390, -1, 391, -1, 392, -1, 393, -1, 394, -1, 395, -1, 396, -1, 397, -1, 398, -1, 399, -1, 400, -1, 401, -1, 402, -1, 403, -1, 404, -1, 405, -1, 406, -1, 407, -1, 408, -1, 409, -1, 410, -1, 411, -1, 412, -1, 413, -1, 414, -1, 415, -1, 416, -1, 417, -1, - 419, -1, 420, -1, 421, -1, 422, -1, 423, -1, - 424, -1, 425, -1, 426, -1, 427, -1, 428, -1, - 429, -1, 430, -1, 431, -1, 432, -1, 433, -1, - 435, -1, 436, -1, 437, -1, 438, -1, 439, -1, - 440, -1, 441, -1, 442, -1, 443, -1, 444, -1, - 445, -1, 446, -1, 447, -1, 448, -1, 449, -1, - 450, -1, 452, -1, 453, -1, 454, -1, 455, -1, - 456, -1, 457, -1, 459, -1, 464, -1, 465, -1, - 466, -1, 467, -1, 468, -1, 469, -1, 470, -1, - 471, -1, 472, -1, 473, -1, 474, -1, 475, -1, - 476, -1, 477, -1, 478, -1, 480, -1, 481, -1 + 418, -1, 419, -1, 420, -1, 421, -1, 422, -1, + 423, -1, 424, -1, 425, -1, 426, -1, 427, -1, + 428, -1, 430, -1, 431, -1, 432, -1, 433, -1, + 434, -1, 435, -1, 436, -1, 437, -1, 438, -1, + 439, -1, 440, -1, 441, -1, 442, -1, 443, -1, + 444, -1, 446, -1, 447, -1, 448, -1, 449, -1, + 450, -1, 451, -1, 452, -1, 453, -1, 454, -1, + 455, -1, 456, -1, 457, -1, 458, -1, 459, -1, + 460, -1, 461, -1, 463, -1, 464, -1, 465, -1, + 466, -1, 467, -1, 468, -1, 470, -1, 475, -1, + 476, -1, 477, -1, 478, -1, 479, -1, 480, -1, + 481, -1, 482, -1, 483, -1, 484, -1, 485, -1, + 486, -1, 487, -1, 488, -1, 489, -1, 491, -1, + 492, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 862, 862, 867, 871, 876, 884, 892, 912, 924, - 938, 939, 943, 944, 945, 946, 947, 948, 949, 950, - 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, - 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, - 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, - 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, - 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000, - 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, - 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, - 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, - 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, - 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, - 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, - 1061, 1062, 1063, 1064, 1065, 1066, 1068, 1077, 1093, 1105, - 1106, 1107, 1116, 1117, 1121, 1122, 1126, 1131, 1136, 1140, - 1150, 1160, 1168, 1172, 1176, 1181, 1185, 1233, 1235, 1239, - 1243, 1247, 1251, 1265, 1284, 1293, 1305, 1306, 1310, 1319, - 1328, 1337, 1359, 1367, 1375, 1383, 1391, 1399, 1417, 1436, - 1448, 1449, 1460, 1471, 1482, 1498, 1517, 1518, 1522, 1529, - 1537, 1538, 1539, 1540, 1541, 1542, 1556, 1563, 1570, 1580, - 1589, 1598, 1602, 1611, 1620, 1628, 1639, 1640, 1649, 1661, - 1669, 1678, 1686, 1698, 1707, 1715, 1724, 1732, 1740, 1750, - 1761, 1762, 1766, 1767, 1770, 1772, 1774, 1778, 1779, 1780, - 1781, 1785, 1786, 1787, 1793, 1805, 1809, 1813, 1817, 1834, - 1842, 1843, 1844, 1848, 1849, 1850, 1854, 1855, 1859, 1863, - 1864, 1872, 1880, 1891, 1899, 1910, 1911, 1916, 1917, 1922, - 1929, 1936, 1943, 1950, 1961, 1972, 1973, 1977, 1978, 1986, - 2002, 2009, 2016, 2023, 2030, 2050, 2060, 2070, 2080, 2090, - 2102, 2114, 2124, 2134, 2144, 2156, 2168, 2178, 2188, 2198, - 2208, 2218, 2228, 2240, 2252, 2262, 2275, 2276, 2281, 2295, - 2308, 2324, 2341, 2351, 2361, 2371, 2381, 2391, 2400, 2409, - 2418, 2428, 2438, 2454, 2464, 2474, 2484, 2494, 2511, 2521, - 2531, 2541, 2552, 2566, 2582, 2592, 2601, 2617, 2626, 2637, - 2648, 2656, 2665, 2674, 2682, 2690, 2699, 2708, 2717, 2725, - 2733, 2742, 2750, 2758, 2767, 2776, 2785, 2794, 2803, 2812, - 2823, 2831, 2840, 2849, 2858, 2867, 2876, 2885, 2893, 2901, - 2909, 2916, 2927, 2928, 2932, 2933, 2934, 2938, 2947, 2951, - 2952, 2956, 2964, 2972, 2980, 2991, 2994, 2995, 2999, 3000, - 3005, 3009, 3013, 3018, 3025, 3027, 3032, 3036, 3040, 3051, - 3059, 3112, 3125, 3139, 3151, 3158, 3162, 3176, 3189, 3190, - 3195, 3205, 3216, 3227, 3254, 3261, 3295, 3331, 3354, 3355, - 3359, 3360, 3369, 3370, 3371, 3374, 3375, 3380, 3381, 3385, - 3389, 3393, 3397, 3401, 3405, 3409, 3413, 3417, 3421, 3425, - 3429, 3433, 3442, 3446, 3450, 3454, 3458, 3459, 3464, 3468, - 3475, 3482, 3483, 3484, 3485, 3486, 3490, 3494, 3502, 3513, - 3533, 3553, 3574, 3595, 3616, 3650, 3651, 3652, 3653, 3654, - 3661, 3668, 3669, 3673, 3674, 3678, 3679, 3683, 3687, 3694, - 3698, 3705, 3706, 3707, 3711, 3712, 3715, 3738, 3757, 3779, - 3780, 3784, 3785, 3789, 3790, 3794, 3802, 3803, 3804, 3836, - 3844, 3852, 3865, 3877, 3890, 3900, 3910, 3934, 3954, 3955, - 3956, 3960, 3961, 3980, 3988, 3996, 4004, 4016, 4028, 4029, - 4030, 4034, 4035, 4036, 4037, 4038, 4039, 4040, 4041, 4042, - 4043, 4052, 4060, 4064, 4078, 4096, 4112, 4129, 4145, 4165, - 4188, 4189, 4193, 4194, 4198, 4199, 4202, 4208, 4209, 4212, - 4216, 4224, 4229, 4235, 4236, 4240, 4245, 4252, 4253, 4257, - 4267, 4277, 4285, 4294, 4307, 4319, 4326, 4334, 4342, 4350, - 4358, 4368, 4369, 4373, 4374, 4377, 4389, 4390, 4393, 4404, - 4415, 4429, 4430, 4435, 4436, 4437, 4440, 4441, 4442, 4443, - 4446, 4447, 4450, 4451, 4454, 4472, 4485, 4507, 4508, 4511, - 4517, 4523, 4540, 4549, 4571, 4585, 4602, 4618, 4619, 4620, - 4632, 4646, 4663, 4677, 4678, 4690, 4711, 4722, 4736, 4745, - 4757, 4758, 4761, 4762, 4765, 4766, 4769, 4773, 4777, 4781, - 4785, 4789, 4793, 4797, 4801, 4805, 4809, 4814, 4818, 4822, - 4828, 4829, 4833, 4834, 4835, 4842, 4845, 4846, 4858, 4874, - 4890, 4891, 4899, 4900, 4904, 4905, 4909, 4910, 4914, 4915, - 4919, 4920, 4930, 4942, 4943, 4956, 4964, 4982, 4991, 5003, - 5006, 5010, 5014, 5018, 5025, 5037, 5048, 5051, 5055, 5068, - 5078, 5088, 5098, 5108, 5118, 5128, 5138, 5148, 5158, 5168, - 5178, 5188, 5207, 5219, 5220, 5221, 5222, 5226, 5227, 5231, - 5232, 5242, 5251, 5264, 5265, 5269, 5273, 5281, 5285, 5289, - 5296, 5300, 5305, 5310, 5317, 5324, 5329, 5339, 5352, 5368, - 5369, 5374, 5375, 5379, 5380, 5390, 5400, 5409, 5427, 5448, - 5469, 5491, 5525, 5541, 5542, 5546, 5555, 5570, 5580, 5593, - 5594, 5606, 5615, 5633, 5658, 5676, 5691, 5692, 5696, 5697, - 5701, 5702, 5706, 5707, 5711, 5725, 5729, 5730, 5734, 5735, - 5736, 5737, 5738, 5748, 5760, 5761, 5772, 5795, 5827, 5828, - 5829, 5833, 5835, 5857, 5859, 5861, 5863, 5865, 5870, 5871, - 5875, 5876, 5880, 5892, 5893, 5897, 5906, 5910, 5914, 5919, - 5929, 5930, 5934, 5935, 5939, 5940, 5944, 5945, 5949, 5950, - 5951, 5955, 5959, 5960, 5961, 5965, 5966, 5971, 5972, 5999, - 6000, 6001, 6002, 6003, 6004, 6017, 6028, 6043, 6045, 6050, - 6055, 6057, 6062, 6073, 6074, 6075, 6076, 6087, 6106, 6118, - 6131, 6142, 6153, 6165, 6174, 6182, 6190, 6200, 6210, 6220, - 6230, 6240, 6251, 6261, 6274, 6277, 6278, 6281, 6285, 6292, - 6293, 6294, 6295, 6296, 6297, 6300, 6303, 6304, 6312, 6319, - 6320, 6323, 6325, 6336, 6348, 6360, 6372, 6386, 6387, 6403, - 6419, 6420, 6424, 6437, 6448, 6457, 6467, 6477, 6478, 6481, - 6482, 6485, 6486, 6487, 6490, 6504, 6509, 6520, 6530, 6543, - 6544, 6548, 6557, 6570, 6581, 6595, 6606, 6629, 6640, 6659, - 6670, 6681, 6692, 6703, 6714, 6725, 6736, 6747, 6758, 6769, - 6780, 6795, 6796, 6797, 6798, 6799, 6800, 6801, 6802, 6803, - 6804, 6805, 6806, 6807, 6817, 6818, 6819, 6820, 6821, 6825, - 6826, 6827, 6828, 6829, 6830, 6831, 6832, 6837, 6838, 6839, - 6843, 6844, 6847, 6848, 6851, 6853, 6858, 6859, 6870, 6882, - 6883, 6884, 6894, 6903, 6912, 6921, 6930, 6939, 6948, 6957, - 6966, 6975, 6989, 6998, 7007, 7016, 7025, 7034, 7043, 7052, - 7064, 7065, 7079, 7090, 7101, 7112, 7123, 7134, 7145, 7156, - 7167, 7178, 7191, 7192, 7195, 7196, 7206, 7213, 7222, 7231, - 7240, 7249, 7258, 7267, 7276, 7285, 7294, 7303, 7312, 7321, - 7330, 7339, 7348, 7357, 7368, 7369, 7372, 7373, 7383, 7401, - 7417, 7445, 7447, 7449, 7451, 7459, 7469, 7470, 7473, 7481, - 7489, 7497, 7504, 7515, 7519, 7526, 7530, 7541, 7550, 7559, - 7568, 7577, 7586, 7595, 7604, 7613, 7622, 7631, 7640, 7649, - 7657, 7666, 7675, 7684, 7693, 7702, 7711, 7720, 7733, 7734, - 7738, 7739, 7744, 7745, 7755, 7769, 7780, 7793, 7794, 7797, - 7798, 7808, 7819, 7820, 7824, 7828, 7832, 7843, 7857, 7872, - 7890, 7891, 7892, 7893, 7894, 7895, 7907, 7939, 7974, 7975, - 7979, 7980, 7984, 7985, 7989, 7990, 7993, 7994, 7999, 8011, - 8030, 8035, 8040, 8047, 8048, 8051, 8052, 8055, 8056, 8059, - 8060, 8063, 8064, 8065, 8068, 8069, 8070, 8086, 8100, 8115, - 8129, 8146, 8147, 8150, 8151, 8155, 8156, 8160, 8161, 8166, - 8180, 8188, 8196, 8212, 8213, 8217, 8218, 8233, 8243, 8253, - 8263, 8273, 8286, 8287, 8288, 8289, 8290, 8296, 8300, 8315, - 8316, 8322, 8332, 8336, 8341, 8349, 8391, 8395, 8399, 8403, - 8411, 8412, 8416, 8428, 8429, 8434, 8435, 8440, 8441, 8448, - 8452, 8456, 8460, 8464, 8468, 8472, 8476, 8480, 8484, 8488, - 8492, 8496, 8500, 8504, 8508, 8513, 8520, 8524, 8528, 8532, - 8536, 8542, 8543, 8549, 8559, 8563, 8574, 8580, 8589, 8595, - 8596, 8600, 8601, 8605, 8606, 8609, 8622, 8626, 8641, 8650, - 8659, 8672, 8673, 8678, 8679, 8696, 8707, 8718, 8729, 8740, - 8751, 8765, 8776, 8790, 8801, 8815, 8823, 8825, 8827, 8832, - 8834, 8839, 8840, 8845, 8864, 8874, 8875, 8879, 8883, 8895, - 8907, 8919, 8933, 8934, 8935, 8939, 8952, 8953, 8963, 8976, - 8980, 8984, 8988, 8995, 9016, 9029, 9042, 9055, 9070, 9071, - 9074, 9075, 9076, 9086, 9096, 9114, 9124, 9134, 9144, 9154, - 9164, 9174, 9184, 9194, 9204, 9214, 9224, 9234, 9245, 9256, - 9266, 9276, 9286, 9296, 9306, 9316, 9327, 9338, 9349, 9360, - 9371, 9382, 9393, 9404, 9415, 9426, 9437, 9448, 9460, 9472, - 9484, 9496, 9508, 9520, 9531, 9542, 9554, 9566, 9577, 9588, - 9597, 9607, 9617, 9627, 9637, 9647, 9657, 9667, 9677, 9687, - 9702, 9703, 9706, 9707, 9717, 9727, 9737, 9747, 9758, 9768, - 9780, 9781, 9791, 9801, 9811, 9821, 9831, 9841, 9851, 9861, - 9871, 9881, 9891, 9901, 9911, 9921, 9931, 9941, 9951, 9961, - 9971, 9981, 9991, 10001, 10011, 10021, 10031, 10041, 10051, 10070, - 10080, 10081, 10084, 10086, 10092, 10093, 10094, 10095, 10096, 10108, - 10124, 10133, 10142, 10151, 10160, 10169, 10178, 10187, 10196, 10205, - 10214, 10223, 10232, 10241, 10250, 10259, 10268, 10277, 10286, 10295, - 10304, 10313, 10322, 10331, 10359, 10367, 10376, 10402, 10411, 10418, - 10424, 10451, 10462, 10471, 10479, 10481, 10503, 10511, 10521, 10531, - 10550, 10569, 10579, 10589, 10599, 10610, 10621, 10632, 10643, 10654, - 10672, 10681, 10698, 10716, 10717, 10718, 10723, 10729, 10738, 10739, - 10740, 10741, 10742, 10746, 10747, 10750, 10751, 10752, 10753, 10757, - 10758, 10759, 10771, 10782, 10783, 10786, 10796, 10803, 10823, 10832, - 10840, 10849, 10858, 10866, 10874, 10882, 10890, 10898, 10906, 10914, - 10925, 10933, 10944, 10945, 10946, 10950, 10953, 10956, 10959, 10962, - 10969, 10971, 10973, 10978, 10980, 10984, 10985, 10986, 10998, 11012, - 11026, 11045, 11067, 11068, 11069, 11070, 11080, 11097, 11108, 11109, - 11113, 11114, 11118, 11122, 11126, 11144, 11145, 11146, 11147, 11148, - 11149, 11150, 11157, 11158, 11169, 11177, 11185, 11194, 11204, 11222, - 11231, 11240, 11249, 11261, 11265, 11276, 11288, 11306, 11313, 11330, - 11344, 11354, 11363, 11372, 11382, 11394, 11406, 11417, 11418, 11429, - 11440, 11452, 11464, 11476, 11488, 11498, 11511, 11512, 11526, 11551, - 11563, 11572, 11584, 11598, 11599, 11611, 11632, 11643, 11655, 11667, - 11671, 11678, 11679, 11683, 11690, 11691, 11695, 11696, 11697, 11701, - 11702, 11706, 11707, 11710, 11711, 11714, 11715, 11719, 11720, 11724, - 11731, 11733, 11738, 11739, 11752, 11760, 11771, 11779, 11790, 11791, - 11792, 11793, 11794, 11795, 11796, 11797, 11798, 11799, 11809, 11820, - 11821, 11825, 11826, 11827, 11828, 11829, 11839, 11847, 11865, 11885, - 11886, 11896, 11903, 11910, 11917, 11934, 11952, 11956, 11964, 11970, - 11977, 11983, 11990, 11999, 12000, 12004, 12006, 12011, 12022, 12032, - 12042, 12048, 12057, 12066, 12072, 12073, 12084, 12099, 12100, 12111, - 12122, 12123, 12126, 12127, 12128, 12129, 12130, 12131, 12132, 12133, - 12136, 12137, 12141, 12142, 12143, 12154, 12173, 12174, 12178, 12183, - 12207, 12218, 12219, 12231, 12249, 12250, 12254, 12261, 12268, 12275, - 12285, 12298, 12299, 12303, 12316, 12329, 12338, 12347, 12356, 12365, - 12377, 12389, 12401, 12404, 12405, 12406, 12407, 12408, 12409, 12412, - 12413, 12414, 12462, 12463, 12467, 12468, 12483, 12484, 12491, 12499, - 12507, 12515, 12523, 12531, 12542, 12543, 12575, 12591, 12608, 12609, - 12628, 12632, 12636, 12651, 12658, 12665, 12675, 12676, 12679, 12695, - 12696, 12697, 12701, 12711, 12722, 12728, 12740, 12753, 12759, 12760, - 12764, 12776, 12784, 12789, 12794, 12799, 12804, 12812, 12820, 12825, - 12830, 12837, 12838, 12842, 12843, 12844, 12851, 12852, 12856, 12857, - 12861, 12862, 12866, 12867, 12871, 12875, 12876, 12879, 12888, 12901, - 12906, 12911, 12915, 12927, 12928, 12932, 12941, 12957, 12966, 12975, - 12984, 12996, 12999, 13004, 13005, 13013, 13033, 13034, 13036, 13041, - 13042, 13046, 13047, 13050, 13051, 13076, 13085, 13095, 13096, 13100, - 13101, 13102, 13103, 13104, 13108, 13121, 13128, 13135, 13142, 13143, - 13147, 13148, 13152, 13153, 13157, 13158, 13162, 13174, 13175, 13176, - 13177, 13181, 13182, 13192, 13199, 13218, 13219, 13223, 13224, 13230, - 13235, 13244, 13252, 13261, 13268, 13276, 13312, 13338, 13342, 13368, - 13372, 13386, 13407, 13429, 13442, 13459, 13465, 13470, 13476, 13483, - 13484, 13494, 13500, 13508, 13512, 13516, 13523, 13531, 13536, 13537, - 13538, 13539, 13543, 13544, 13559, 13563, 13571, 13578, 13585, 13592, - 13599, 13610, 13611, 13624, 13628, 13636, 13650, 13664, 13665, 13680, - 13691, 13704, 13709, 13710, 13713, 13714, 13717, 13718, 13723, 13724, - 13729, 13730, 13739, 13744, 13745, 13749, 13753, 13759, 13784, 13795, - 13809, 13810, 13814, 13828, 13885, 13899, 13901, 13906, 13908, 13910, - 13912, 13917, 13919, 13924, 13932, 13952, 13957, 13964, 13969, 13975, - 13980, 13989, 13991, 13994, 13998, 13999, 14000, 14001, 14002, 14003, - 14008, 14028, 14029, 14030, 14031, 14042, 14048, 14056, 14057, 14063, - 14068, 14073, 14078, 14083, 14088, 14093, 14098, 14104, 14110, 14116, - 14123, 14145, 14154, 14158, 14166, 14170, 14178, 14190, 14211, 14215, - 14221, 14225, 14238, 14246, 14256, 14258, 14260, 14262, 14264, 14266, - 14271, 14272, 14279, 14288, 14296, 14305, 14316, 14324, 14325, 14326, - 14330, 14332, 14334, 14336, 14338, 14340, 14342, 14347, 14352, 14358, - 14366, 14371, 14378, 14385, 14389, 14393, 14429, 14430, 14432, 14441, - 14457, 14459, 14461, 14463, 14465, 14467, 14469, 14471, 14473, 14475, - 14477, 14479, 14481, 14483, 14486, 14488, 14491, 14493, 14495, 14497, - 14500, 14505, 14514, 14519, 14528, 14533, 14542, 14547, 14557, 14566, - 14575, 14584, 14603, 14612, 14621, 14630, 14639, 14656, 14665, 14674, - 14683, 14692, 14701, 14710, 14714, 14718, 14726, 14734, 14742, 14750, - 14771, 14794, 14806, 14813, 14829, 14834, 14840, 14847, 14854, 14862, - 14870, 14896, 14898, 14900, 14902, 14904, 14906, 14908, 14910, 14912, - 14914, 14916, 14918, 14920, 14922, 14924, 14926, 14928, 14930, 14932, - 14936, 14940, 14945, 14961, 14962, 14963, 14980, 14993, 14995, 14997, - 15009, 15034, 15046, 15058, 15066, 15077, 15088, 15098, 15104, 15113, - 15123, 15133, 15146, 15156, 15187, 15223, 15234, 15235, 15242, 15249, - 15253, 15257, 15261, 15265, 15269, 15273, 15277, 15281, 15285, 15289, - 15293, 15297, 15301, 15305, 15309, 15311, 15318, 15325, 15332, 15339, - 15350, 15364, 15374, 15385, 15401, 15411, 15418, 15425, 15432, 15436, - 15444, 15453, 15462, 15466, 15470, 15474, 15478, 15482, 15491, 15495, - 15505, 15509, 15513, 15518, 15533, 15535, 15539, 15541, 15543, 15546, - 15549, 15552, 15553, 15556, 15564, 15574, 15575, 15578, 15579, 15580, - 15585, 15589, 15593, 15597, 15604, 15605, 15613, 15614, 15618, 15619, - 15627, 15628, 15632, 15633, 15638, 15647, 15649, 15664, 15667, 15695, - 15696, 15699, 15700, 15708, 15716, 15724, 15733, 15743, 15761, 15807, - 15816, 15825, 15834, 15843, 15855, 15856, 15857, 15858, 15859, 15873, - 15874, 15875, 15878, 15879, 15882, 15885, 15886, 15887, 15890, 15891, - 15894, 15895, 15896, 15897, 15898, 15899, 15900, 15901, 15902, 15903, - 15904, 15905, 15908, 15910, 15915, 15917, 15922, 15924, 15926, 15928, - 15930, 15932, 15944, 15948, 15955, 15959, 15965, 15969, 15979, 15991, - 15992, 15995, 15996, 15999, 16003, 16007, 16013, 16014, 16019, 16023, - 16033, 16034, 16035, 16036, 16037, 16038, 16039, 16040, 16044, 16045, - 16046, 16047, 16052, 16057, 16066, 16087, 16091, 16096, 16107, 16124, - 16130, 16131, 16132, 16135, 16143, 16153, 16168, 16169, 16173, 16185, - 16186, 16189, 16190, 16193, 16197, 16204, 16208, 16212, 16221, 16233, - 16234, 16238, 16239, 16243, 16244, 16247, 16248, 16258, 16259, 16263, - 16264, 16267, 16275, 16283, 16291, 16314, 16315, 16326, 16330, 16336, - 16338, 16343, 16345, 16347, 16357, 16359, 16370, 16374, 16378, 16382, - 16386, 16395, 16403, 16435, 16442, 16474, 16478, 16485, 16493, 16497, - 16503, 16510, 16514, 16518, 16524, 16525, 16527, 16528, 16529, 16533, - 16574, 16602, 16606, 16610, 16616, 16618, 16632, 16668, 16681, 16682, - 16685, 16686, 16703, 16704, 16705, 16710, 16711, 16712, 16717, 16718, - 16719, 16720, 16726, 16727, 16728, 16729, 16730, 16736, 16737, 16757, - 16758, 16759, 16760, 16761, 16762, 16763, 16764, 16765, 16766, 16767, - 16768, 16769, 16770, 16771, 16772, 16773, 16774, 16775, 16776, 16777, - 16778, 16779, 16780, 16781, 16782, 16783, 16784, 16785, 16786, 16787, - 16788, 16789, 16790, 16791, 16792, 16793, 16794, 16795, 16796, 16797, - 16798, 16799, 16800, 16801, 16802, 16803, 16804, 16805, 16806, 16807, - 16808, 16809, 16810, 16811, 16812, 16813, 16814, 16815, 16816, 16817, - 16818, 16819, 16820, 16821, 16822, 16823, 16824, 16825, 16826, 16827, - 16828, 16829, 16830, 16831, 16832, 16833, 16834, 16835, 16836, 16837, - 16838, 16839, 16840, 16841, 16842, 16843, 16844, 16845, 16846, 16847, - 16848, 16849, 16850, 16851, 16852, 16853, 16854, 16855, 16856, 16857, - 16858, 16859, 16860, 16861, 16862, 16863, 16864, 16865, 16866, 16867, - 16868, 16869, 16870, 16871, 16872, 16873, 16874, 16875, 16876, 16877, - 16878, 16879, 16880, 16881, 16882, 16883, 16884, 16885, 16886, 16887, - 16888, 16889, 16890, 16891, 16892, 16893, 16894, 16895, 16896, 16897, - 16898, 16899, 16900, 16901, 16902, 16903, 16904, 16905, 16906, 16907, - 16908, 16909, 16910, 16911, 16912, 16913, 16914, 16915, 16916, 16917, - 16918, 16919, 16920, 16921, 16922, 16923, 16924, 16925, 16926, 16927, - 16928, 16929, 16930, 16931, 16932, 16933, 16934, 16935, 16936, 16937, - 16938, 16939, 16940, 16941, 16942, 16943, 16944, 16945, 16946, 16947, - 16948, 16949, 16950, 16951, 16952, 16953, 16954, 16955, 16956, 16957, - 16958, 16959, 16960, 16961, 16962, 16963, 16964, 16965, 16966, 16967, - 16968, 16969, 16970, 16971, 16972, 16973, 16974, 16975, 16976, 16977, - 16978, 16979, 16980, 16981, 16982, 16983, 16984, 16985, 16986, 16987, - 16988, 16989, 16990, 16991, 16992, 16993, 16994, 16995, 16996, 16997, - 16998, 16999, 17000, 17001, 17002, 17003, 17004, 17005, 17006, 17007, - 17008, 17009, 17010, 17011, 17012, 17013, 17014, 17015, 17016, 17017, - 17018, 17019, 17020, 17021, 17022, 17023, 17024, 17025, 17026, 17027, - 17028, 17029, 17030, 17031, 17032, 17033, 17034, 17035, 17036, 17037, - 17038, 17039, 17040, 17041, 17042, 17043, 17044, 17045, 17046, 17047, - 17048, 17049, 17050, 17051, 17052, 17053, 17054, 17055, 17056, 17057, - 17058, 17059, 17060, 17061, 17062, 17063, 17064, 17065, 17079, 17080, - 17081, 17082, 17083, 17084, 17085, 17086, 17087, 17088, 17089, 17090, - 17091, 17092, 17093, 17094, 17095, 17096, 17097, 17098, 17099, 17100, - 17101, 17102, 17103, 17104, 17105, 17106, 17107, 17108, 17109, 17110, - 17111, 17112, 17113, 17114, 17115, 17116, 17117, 17118, 17119, 17120, - 17121, 17122, 17123, 17124, 17125, 17126, 17127, 17128, 17129, 17143, - 17144, 17145, 17146, 17147, 17148, 17149, 17150, 17151, 17152, 17153, - 17154, 17155, 17156, 17157, 17158, 17159, 17160, 17161, 17162, 17163, - 17164, 17165, 17175, 17176, 17177, 17178, 17179, 17180, 17181, 17182, - 17183, 17184, 17185, 17186, 17187, 17188, 17189, 17190, 17191, 17192, - 17193, 17194, 17195, 17196, 17197, 17198, 17199, 17200, 17201, 17202, - 17203, 17204, 17205, 17206, 17207, 17208, 17209, 17210, 17211, 17212, - 17213, 17214, 17215, 17216, 17217, 17218, 17219, 17220, 17221, 17222, - 17223, 17224, 17225, 17226, 17227, 17228, 17229, 17230, 17231, 17232, - 17233, 17234, 17235, 17236, 17237, 17238, 17239, 17240, 17241, 17242, - 17243, 17244, 17245, 17246, 17247, 17248, 17249, 17250, 17251, 17264, - 17265, 17266, 17267, 17268, 17269, 17270, 17271, 17272, 17273, 17274, - 17275, 17276, 17277, 17278, 17279, 17280, 17281, 17282, 17283, 17284, - 17285, 17286, 17287, 17288, 17289, 17290, 17291, 17292, 17293, 17294, - 17295, 17296, 17297, 17298, 17299, 17300, 17301, 17302, 17303, 17304, - 17305, 17306, 17307, 17308, 17309, 17310, 17311, 17312, 17313, 17314, - 17315, 17316, 17317, 17318, 17319, 17320, 17321, 17322, 17323, 17324, - 17325, 17326, 17327, 17328, 17329, 17330, 17331, 17332, 17333, 17334, - 17335, 17336, 17337, 17338, 17339, 17340, 17341, 17342, 17343, 17344, - 17345, 17346, 17347, 17348, 17349, 17350, 17351, 17352, 17353, 17354, - 17355, 17356, 17357, 17358, 17359, 17360, 17361, 17362, 17363, 17364, - 17365, 17366, 17367, 17368, 17369, 17370, 17371, 17372, 17373, 17374, + 0, 889, 889, 894, 898, 903, 911, 919, 939, 951, + 965, 966, 970, 971, 972, 973, 974, 975, 976, 977, + 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, + 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, + 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, + 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, + 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, + 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, + 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, + 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, + 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, + 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, + 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, + 1088, 1089, 1090, 1091, 1092, 1093, 1095, 1102, 1103, 1107, + 1108, 1112, 1113, 1117, 1118, 1119, 1128, 1144, 1156, 1157, + 1158, 1167, 1168, 1172, 1173, 1177, 1182, 1187, 1191, 1201, + 1211, 1219, 1223, 1227, 1232, 1236, 1284, 1286, 1290, 1294, + 1298, 1302, 1316, 1335, 1344, 1356, 1357, 1361, 1370, 1379, + 1388, 1410, 1418, 1426, 1434, 1442, 1450, 1468, 1487, 1499, + 1500, 1511, 1522, 1533, 1549, 1568, 1575, 1583, 1584, 1585, + 1586, 1587, 1588, 1602, 1609, 1616, 1626, 1635, 1644, 1648, + 1657, 1666, 1674, 1685, 1686, 1695, 1707, 1715, 1724, 1732, + 1744, 1753, 1761, 1770, 1778, 1786, 1796, 1807, 1808, 1812, + 1813, 1816, 1818, 1820, 1824, 1825, 1826, 1827, 1831, 1832, + 1833, 1839, 1851, 1855, 1859, 1863, 1880, 1888, 1889, 1890, + 1894, 1895, 1896, 1900, 1901, 1905, 1909, 1910, 1918, 1926, + 1937, 1945, 1956, 1957, 1962, 1963, 1968, 1975, 1982, 1989, + 1996, 2007, 2018, 2019, 2023, 2024, 2032, 2048, 2055, 2062, + 2069, 2076, 2096, 2106, 2116, 2126, 2136, 2148, 2160, 2170, + 2180, 2190, 2202, 2214, 2224, 2234, 2244, 2254, 2264, 2274, + 2286, 2298, 2308, 2321, 2322, 2327, 2341, 2354, 2370, 2387, + 2397, 2407, 2417, 2427, 2437, 2446, 2455, 2464, 2474, 2484, + 2500, 2510, 2520, 2530, 2540, 2557, 2567, 2577, 2587, 2598, + 2612, 2628, 2638, 2647, 2663, 2672, 2683, 2694, 2702, 2711, + 2720, 2728, 2736, 2745, 2754, 2763, 2771, 2779, 2788, 2796, + 2804, 2813, 2822, 2831, 2840, 2849, 2858, 2869, 2877, 2886, + 2895, 2904, 2913, 2922, 2931, 2939, 2947, 2955, 2962, 2973, + 2974, 2978, 2987, 2991, 2992, 2996, 3004, 3012, 3020, 3031, + 3034, 3035, 3039, 3040, 3045, 3049, 3053, 3058, 3065, 3067, + 3072, 3076, 3080, 3091, 3099, 3152, 3165, 3179, 3191, 3198, + 3202, 3216, 3229, 3230, 3235, 3245, 3256, 3267, 3294, 3301, + 3335, 3371, 3394, 3395, 3399, 3400, 3409, 3410, 3411, 3414, + 3415, 3420, 3421, 3425, 3429, 3433, 3437, 3441, 3445, 3449, + 3453, 3457, 3461, 3465, 3469, 3473, 3482, 3486, 3490, 3494, + 3498, 3499, 3504, 3508, 3515, 3522, 3523, 3524, 3525, 3526, + 3530, 3534, 3542, 3553, 3573, 3593, 3614, 3635, 3656, 3690, + 3691, 3692, 3693, 3694, 3701, 3708, 3709, 3713, 3714, 3718, + 3719, 3723, 3727, 3734, 3738, 3745, 3746, 3747, 3751, 3752, + 3755, 3779, 3798, 3820, 3821, 3825, 3826, 3830, 3831, 3835, + 3836, 3840, 3841, 3845, 3853, 3854, 3855, 3887, 3895, 3903, + 3916, 3928, 3941, 3951, 3961, 3985, 4005, 4006, 4007, 4011, + 4012, 4031, 4039, 4047, 4055, 4067, 4079, 4080, 4081, 4085, + 4086, 4087, 4088, 4089, 4090, 4091, 4092, 4093, 4094, 4103, + 4111, 4115, 4129, 4147, 4163, 4180, 4196, 4216, 4239, 4240, + 4244, 4245, 4249, 4250, 4253, 4259, 4260, 4263, 4267, 4275, + 4280, 4286, 4287, 4291, 4296, 4303, 4304, 4308, 4318, 4328, + 4336, 4345, 4358, 4370, 4377, 4385, 4393, 4401, 4409, 4419, + 4420, 4424, 4425, 4428, 4440, 4441, 4444, 4455, 4466, 4480, + 4481, 4486, 4487, 4488, 4491, 4492, 4493, 4494, 4497, 4498, + 4501, 4502, 4505, 4525, 4538, 4560, 4561, 4564, 4570, 4576, + 4593, 4602, 4624, 4638, 4655, 4671, 4672, 4673, 4685, 4699, + 4716, 4730, 4731, 4743, 4764, 4775, 4789, 4798, 4810, 4811, + 4814, 4815, 4818, 4819, 4822, 4826, 4830, 4834, 4838, 4842, + 4846, 4850, 4854, 4858, 4862, 4867, 4871, 4875, 4881, 4882, + 4886, 4887, 4888, 4895, 4898, 4899, 4911, 4927, 4943, 4944, + 4952, 4953, 4957, 4958, 4962, 4963, 4967, 4968, 4972, 4973, + 4983, 4995, 4996, 5009, 5017, 5035, 5044, 5056, 5059, 5063, + 5067, 5071, 5078, 5090, 5101, 5104, 5108, 5121, 5131, 5141, + 5151, 5161, 5171, 5181, 5191, 5201, 5211, 5221, 5231, 5241, + 5260, 5272, 5273, 5274, 5275, 5279, 5280, 5284, 5285, 5295, + 5304, 5317, 5318, 5322, 5326, 5334, 5338, 5342, 5349, 5353, + 5358, 5363, 5370, 5377, 5382, 5392, 5405, 5421, 5422, 5427, + 5428, 5432, 5433, 5443, 5453, 5462, 5480, 5501, 5522, 5544, + 5578, 5594, 5595, 5599, 5608, 5623, 5633, 5646, 5647, 5659, + 5668, 5686, 5711, 5729, 5744, 5745, 5749, 5750, 5754, 5755, + 5759, 5760, 5764, 5778, 5782, 5783, 5787, 5788, 5789, 5790, + 5791, 5801, 5813, 5814, 5825, 5848, 5880, 5881, 5882, 5886, + 5888, 5910, 5912, 5914, 5916, 5918, 5923, 5924, 5928, 5929, + 5933, 5945, 5946, 5950, 5959, 5963, 5967, 5972, 5982, 5983, + 5987, 5988, 5992, 5993, 5997, 5998, 6002, 6003, 6004, 6008, + 6012, 6013, 6014, 6018, 6019, 6024, 6025, 6052, 6053, 6054, + 6055, 6056, 6057, 6070, 6081, 6096, 6098, 6103, 6108, 6110, + 6115, 6126, 6127, 6128, 6129, 6140, 6159, 6171, 6184, 6195, + 6206, 6218, 6227, 6235, 6243, 6253, 6263, 6273, 6283, 6293, + 6304, 6314, 6327, 6330, 6331, 6334, 6338, 6345, 6346, 6347, + 6348, 6349, 6350, 6353, 6356, 6357, 6365, 6372, 6373, 6376, + 6378, 6389, 6401, 6413, 6425, 6439, 6440, 6456, 6472, 6473, + 6477, 6490, 6501, 6510, 6520, 6530, 6531, 6534, 6535, 6538, + 6539, 6540, 6543, 6557, 6562, 6573, 6583, 6596, 6597, 6601, + 6610, 6623, 6634, 6648, 6659, 6682, 6693, 6712, 6723, 6734, + 6745, 6756, 6767, 6778, 6789, 6800, 6811, 6822, 6833, 6848, + 6849, 6850, 6851, 6852, 6853, 6854, 6855, 6856, 6857, 6858, + 6859, 6860, 6870, 6871, 6872, 6873, 6874, 6878, 6879, 6880, + 6881, 6882, 6883, 6884, 6885, 6890, 6891, 6892, 6896, 6897, + 6900, 6901, 6904, 6906, 6911, 6912, 6923, 6935, 6936, 6937, + 6947, 6956, 6965, 6974, 6983, 6992, 7001, 7010, 7019, 7028, + 7042, 7051, 7060, 7069, 7078, 7087, 7096, 7105, 7117, 7118, + 7132, 7143, 7154, 7165, 7176, 7187, 7198, 7209, 7220, 7231, + 7244, 7245, 7248, 7249, 7259, 7266, 7275, 7284, 7293, 7302, + 7311, 7320, 7329, 7338, 7347, 7356, 7365, 7374, 7383, 7392, + 7401, 7410, 7421, 7422, 7425, 7426, 7436, 7454, 7470, 7498, + 7500, 7502, 7504, 7512, 7522, 7523, 7526, 7534, 7542, 7550, + 7557, 7568, 7572, 7579, 7583, 7594, 7603, 7612, 7621, 7630, + 7639, 7648, 7657, 7666, 7675, 7684, 7693, 7702, 7710, 7719, + 7728, 7737, 7746, 7755, 7764, 7773, 7786, 7787, 7791, 7792, + 7797, 7798, 7808, 7819, 7833, 7845, 7863, 7864, 7868, 7875, + 7876, 7877, 7880, 7881, 7891, 7902, 7903, 7907, 7911, 7915, + 7926, 7940, 7955, 7973, 7974, 7975, 7976, 7977, 7978, 7990, + 8022, 8057, 8058, 8062, 8063, 8066, 8067, 8072, 8084, 8103, + 8108, 8113, 8120, 8121, 8124, 8125, 8128, 8129, 8133, 8134, + 8135, 8138, 8139, 8140, 8156, 8170, 8185, 8199, 8216, 8217, + 8220, 8221, 8225, 8226, 8230, 8231, 8236, 8250, 8258, 8266, + 8282, 8283, 8287, 8288, 8303, 8313, 8323, 8333, 8343, 8356, + 8357, 8358, 8359, 8360, 8366, 8370, 8385, 8386, 8392, 8402, + 8406, 8411, 8419, 8461, 8465, 8469, 8473, 8481, 8482, 8486, + 8498, 8499, 8504, 8505, 8510, 8511, 8518, 8522, 8526, 8530, + 8534, 8538, 8542, 8546, 8550, 8554, 8558, 8562, 8566, 8570, + 8574, 8578, 8583, 8590, 8594, 8598, 8602, 8606, 8612, 8613, + 8619, 8629, 8633, 8644, 8650, 8659, 8665, 8666, 8670, 8671, + 8675, 8676, 8679, 8692, 8696, 8711, 8720, 8729, 8742, 8743, + 8748, 8749, 8766, 8777, 8788, 8799, 8810, 8821, 8835, 8846, + 8860, 8871, 8885, 8893, 8895, 8897, 8902, 8904, 8909, 8910, + 8915, 8934, 8944, 8945, 8949, 8953, 8965, 8977, 8989, 9003, + 9004, 9005, 9009, 9022, 9023, 9033, 9046, 9050, 9054, 9058, + 9065, 9087, 9100, 9113, 9128, 9129, 9132, 9133, 9136, 9137, + 9147, 9157, 9175, 9185, 9195, 9205, 9215, 9225, 9235, 9245, + 9255, 9265, 9275, 9285, 9295, 9306, 9317, 9327, 9337, 9347, + 9357, 9367, 9377, 9388, 9399, 9410, 9421, 9432, 9443, 9454, + 9465, 9476, 9487, 9498, 9509, 9521, 9533, 9545, 9557, 9569, + 9581, 9592, 9603, 9615, 9627, 9638, 9649, 9658, 9668, 9678, + 9688, 9698, 9708, 9718, 9728, 9738, 9748, 9763, 9764, 9767, + 9768, 9778, 9788, 9798, 9808, 9819, 9829, 9841, 9842, 9852, + 9862, 9872, 9882, 9892, 9902, 9912, 9922, 9932, 9942, 9952, + 9962, 9972, 9982, 9992, 10002, 10012, 10022, 10032, 10042, 10052, + 10062, 10072, 10082, 10092, 10102, 10112, 10131, 10141, 10142, 10145, + 10147, 10153, 10154, 10155, 10156, 10157, 10169, 10185, 10194, 10203, + 10212, 10221, 10230, 10239, 10248, 10257, 10266, 10275, 10284, 10293, + 10302, 10311, 10320, 10329, 10338, 10347, 10356, 10365, 10374, 10383, + 10392, 10420, 10428, 10437, 10463, 10472, 10479, 10485, 10512, 10523, + 10532, 10540, 10542, 10564, 10572, 10582, 10592, 10611, 10630, 10640, + 10650, 10660, 10671, 10682, 10693, 10704, 10715, 10733, 10742, 10759, + 10777, 10778, 10779, 10784, 10790, 10799, 10800, 10801, 10802, 10803, + 10807, 10808, 10811, 10812, 10813, 10814, 10818, 10819, 10820, 10832, + 10843, 10844, 10847, 10857, 10864, 10884, 10893, 10901, 10910, 10919, + 10927, 10935, 10943, 10951, 10959, 10967, 10975, 10986, 10994, 11005, + 11006, 11007, 11011, 11014, 11017, 11020, 11023, 11030, 11032, 11034, + 11039, 11041, 11045, 11046, 11047, 11059, 11073, 11087, 11106, 11128, + 11129, 11130, 11131, 11141, 11158, 11169, 11170, 11174, 11175, 11179, + 11183, 11187, 11205, 11206, 11207, 11208, 11209, 11210, 11211, 11218, + 11219, 11230, 11238, 11246, 11255, 11265, 11283, 11292, 11301, 11310, + 11322, 11326, 11337, 11349, 11367, 11374, 11391, 11405, 11415, 11424, + 11433, 11443, 11455, 11467, 11478, 11479, 11490, 11501, 11513, 11525, + 11537, 11549, 11559, 11572, 11573, 11587, 11612, 11624, 11633, 11645, + 11659, 11660, 11672, 11693, 11704, 11716, 11728, 11732, 11739, 11740, + 11744, 11751, 11752, 11753, 11757, 11758, 11759, 11763, 11764, 11768, + 11769, 11772, 11773, 11776, 11777, 11781, 11782, 11786, 11793, 11795, + 11800, 11801, 11814, 11822, 11833, 11841, 11852, 11853, 11854, 11855, + 11856, 11857, 11858, 11859, 11860, 11861, 11871, 11882, 11883, 11887, + 11888, 11889, 11890, 11891, 11901, 11909, 11927, 11947, 11948, 11958, + 11965, 11972, 11979, 11996, 12014, 12018, 12026, 12032, 12039, 12045, + 12052, 12061, 12062, 12066, 12068, 12073, 12084, 12094, 12104, 12110, + 12119, 12128, 12134, 12135, 12146, 12161, 12162, 12173, 12184, 12185, + 12188, 12189, 12190, 12191, 12192, 12193, 12194, 12195, 12198, 12199, + 12203, 12204, 12205, 12216, 12235, 12236, 12240, 12245, 12269, 12280, + 12281, 12293, 12311, 12312, 12316, 12323, 12330, 12337, 12347, 12360, + 12361, 12365, 12378, 12391, 12400, 12409, 12418, 12427, 12439, 12451, + 12463, 12466, 12467, 12468, 12469, 12470, 12471, 12474, 12475, 12476, + 12524, 12525, 12529, 12530, 12545, 12546, 12553, 12561, 12569, 12577, + 12585, 12593, 12604, 12605, 12637, 12653, 12670, 12671, 12690, 12694, + 12698, 12713, 12720, 12727, 12737, 12738, 12741, 12757, 12758, 12759, + 12763, 12773, 12784, 12790, 12802, 12815, 12821, 12822, 12826, 12838, + 12846, 12851, 12856, 12861, 12866, 12874, 12882, 12887, 12892, 12899, + 12900, 12904, 12905, 12906, 12913, 12914, 12918, 12919, 12923, 12924, + 12928, 12929, 12933, 12937, 12938, 12941, 12950, 12963, 12968, 12973, + 12977, 12989, 12990, 12994, 13003, 13019, 13028, 13037, 13046, 13058, + 13061, 13066, 13067, 13075, 13095, 13096, 13098, 13103, 13104, 13108, + 13109, 13112, 13113, 13138, 13147, 13157, 13158, 13162, 13163, 13164, + 13165, 13166, 13170, 13183, 13190, 13197, 13204, 13205, 13209, 13210, + 13214, 13215, 13219, 13220, 13224, 13236, 13237, 13238, 13239, 13243, + 13244, 13254, 13261, 13280, 13281, 13285, 13286, 13292, 13297, 13306, + 13314, 13323, 13330, 13338, 13347, 13356, 13360, 13386, 13390, 13404, + 13425, 13447, 13460, 13477, 13483, 13488, 13494, 13501, 13502, 13512, + 13518, 13526, 13530, 13534, 13541, 13549, 13554, 13555, 13556, 13557, + 13561, 13562, 13577, 13581, 13589, 13596, 13603, 13610, 13617, 13628, + 13629, 13642, 13646, 13654, 13668, 13682, 13683, 13698, 13709, 13722, + 13727, 13728, 13731, 13732, 13735, 13736, 13741, 13742, 13747, 13748, + 13757, 13762, 13763, 13767, 13771, 13777, 13802, 13813, 13827, 13828, + 13832, 13846, 13903, 13917, 13919, 13924, 13926, 13928, 13930, 13935, + 13937, 13942, 13950, 13970, 13975, 13982, 13987, 13993, 13998, 14007, + 14009, 14012, 14016, 14017, 14018, 14019, 14020, 14021, 14026, 14046, + 14047, 14048, 14049, 14060, 14066, 14074, 14075, 14081, 14086, 14091, + 14096, 14101, 14106, 14111, 14116, 14122, 14128, 14134, 14141, 14163, + 14172, 14176, 14184, 14188, 14196, 14208, 14229, 14233, 14239, 14243, + 14256, 14264, 14274, 14276, 14278, 14280, 14282, 14284, 14289, 14290, + 14297, 14306, 14314, 14323, 14334, 14342, 14343, 14344, 14348, 14350, + 14352, 14354, 14356, 14358, 14360, 14365, 14370, 14376, 14384, 14389, + 14396, 14403, 14407, 14411, 14447, 14448, 14450, 14459, 14475, 14477, + 14479, 14481, 14483, 14485, 14487, 14489, 14491, 14493, 14495, 14497, + 14499, 14501, 14504, 14506, 14509, 14511, 14513, 14515, 14518, 14523, + 14532, 14537, 14546, 14551, 14560, 14565, 14575, 14584, 14593, 14602, + 14621, 14630, 14639, 14648, 14657, 14674, 14683, 14692, 14701, 14710, + 14719, 14728, 14732, 14736, 14744, 14752, 14760, 14768, 14789, 14812, + 14824, 14831, 14847, 14852, 14858, 14865, 14872, 14880, 14888, 14906, + 14926, 14952, 14954, 14956, 14958, 14960, 14962, 14964, 14966, 14968, + 14970, 14972, 14974, 14976, 14978, 14980, 14982, 14984, 14986, 14988, + 14992, 14996, 15001, 15017, 15018, 15019, 15036, 15049, 15051, 15053, + 15065, 15090, 15102, 15114, 15122, 15133, 15144, 15154, 15160, 15169, + 15179, 15189, 15202, 15212, 15243, 15279, 15289, 15300, 15301, 15302, + 15309, 15316, 15320, 15324, 15328, 15332, 15336, 15340, 15344, 15348, + 15352, 15356, 15360, 15364, 15371, 15375, 15379, 15383, 15385, 15392, + 15399, 15406, 15413, 15424, 15438, 15448, 15459, 15475, 15485, 15492, + 15499, 15506, 15510, 15518, 15527, 15536, 15540, 15544, 15548, 15552, + 15556, 15565, 15569, 15579, 15583, 15587, 15592, 15603, 15609, 15623, + 15634, 15648, 15664, 15681, 15683, 15687, 15689, 15691, 15694, 15697, + 15700, 15701, 15704, 15712, 15722, 15723, 15726, 15727, 15728, 15731, + 15732, 15733, 15738, 15742, 15746, 15750, 15757, 15758, 15766, 15767, + 15771, 15772, 15780, 15781, 15785, 15786, 15791, 15800, 15802, 15817, + 15820, 15848, 15849, 15852, 15853, 15861, 15869, 15877, 15886, 15896, + 15914, 15960, 15969, 15978, 15987, 15996, 16008, 16009, 16010, 16011, + 16012, 16026, 16027, 16028, 16031, 16032, 16035, 16038, 16039, 16040, + 16043, 16044, 16047, 16048, 16049, 16050, 16051, 16052, 16053, 16054, + 16055, 16056, 16057, 16058, 16061, 16063, 16068, 16070, 16075, 16077, + 16079, 16081, 16083, 16085, 16097, 16101, 16108, 16112, 16118, 16122, + 16132, 16144, 16145, 16148, 16149, 16152, 16156, 16160, 16166, 16167, + 16172, 16176, 16186, 16187, 16188, 16189, 16190, 16191, 16192, 16193, + 16197, 16198, 16199, 16200, 16205, 16210, 16219, 16240, 16244, 16249, + 16260, 16277, 16283, 16284, 16285, 16288, 16296, 16306, 16321, 16322, + 16326, 16338, 16339, 16342, 16343, 16346, 16350, 16357, 16361, 16365, + 16374, 16386, 16387, 16391, 16392, 16396, 16397, 16400, 16401, 16406, + 16415, 16420, 16426, 16427, 16431, 16440, 16444, 16445, 16446, 16447, + 16448, 16453, 16454, 16455, 16456, 16457, 16461, 16463, 16473, 16476, + 16482, 16483, 16484, 16488, 16489, 16490, 16494, 16495, 16499, 16517, + 16537, 16538, 16547, 16548, 16552, 16553, 16556, 16564, 16572, 16580, + 16603, 16604, 16615, 16619, 16625, 16627, 16632, 16634, 16636, 16646, + 16648, 16659, 16663, 16667, 16671, 16675, 16684, 16692, 16724, 16731, + 16763, 16767, 16774, 16782, 16786, 16792, 16799, 16803, 16807, 16813, + 16814, 16816, 16817, 16818, 16822, 16863, 16891, 16895, 16899, 16905, + 16907, 16921, 16957, 16970, 16971, 16974, 16975, 16992, 16993, 16994, + 16999, 17000, 17001, 17006, 17007, 17008, 17009, 17015, 17016, 17017, + 17018, 17019, 17025, 17026, 17046, 17047, 17048, 17049, 17050, 17051, + 17052, 17053, 17054, 17055, 17056, 17057, 17058, 17059, 17060, 17061, + 17062, 17063, 17064, 17065, 17066, 17067, 17068, 17069, 17070, 17071, + 17072, 17073, 17074, 17075, 17076, 17077, 17078, 17079, 17080, 17081, + 17082, 17083, 17084, 17085, 17086, 17087, 17088, 17089, 17090, 17091, + 17092, 17093, 17094, 17095, 17096, 17097, 17098, 17099, 17100, 17101, + 17102, 17103, 17104, 17105, 17106, 17107, 17108, 17109, 17110, 17111, + 17112, 17113, 17114, 17115, 17116, 17117, 17118, 17119, 17120, 17121, + 17122, 17123, 17124, 17125, 17126, 17127, 17128, 17129, 17130, 17131, + 17132, 17133, 17134, 17135, 17136, 17137, 17138, 17139, 17140, 17141, + 17142, 17143, 17144, 17145, 17146, 17147, 17148, 17149, 17150, 17151, + 17152, 17153, 17154, 17155, 17156, 17157, 17158, 17159, 17160, 17161, + 17162, 17163, 17164, 17165, 17166, 17167, 17168, 17169, 17170, 17171, + 17172, 17173, 17174, 17175, 17176, 17177, 17178, 17179, 17180, 17181, + 17182, 17183, 17184, 17185, 17186, 17187, 17188, 17189, 17190, 17191, + 17192, 17193, 17194, 17195, 17196, 17197, 17198, 17199, 17200, 17201, + 17202, 17203, 17204, 17205, 17206, 17207, 17208, 17209, 17210, 17211, + 17212, 17213, 17214, 17215, 17216, 17217, 17218, 17219, 17220, 17221, + 17222, 17223, 17224, 17225, 17226, 17227, 17228, 17229, 17230, 17231, + 17232, 17233, 17234, 17235, 17236, 17237, 17238, 17239, 17240, 17241, + 17242, 17243, 17244, 17245, 17246, 17247, 17248, 17249, 17250, 17251, + 17252, 17253, 17254, 17255, 17256, 17257, 17258, 17259, 17260, 17261, + 17262, 17263, 17264, 17265, 17266, 17267, 17268, 17269, 17270, 17271, + 17272, 17273, 17274, 17275, 17276, 17277, 17278, 17279, 17280, 17281, + 17282, 17283, 17284, 17285, 17286, 17287, 17288, 17289, 17290, 17291, + 17292, 17293, 17294, 17295, 17296, 17297, 17298, 17299, 17300, 17301, + 17302, 17303, 17304, 17305, 17306, 17307, 17308, 17309, 17310, 17311, + 17312, 17313, 17314, 17315, 17316, 17317, 17318, 17319, 17320, 17321, + 17322, 17323, 17324, 17325, 17326, 17327, 17328, 17329, 17330, 17331, + 17332, 17333, 17334, 17335, 17336, 17337, 17338, 17339, 17340, 17341, + 17342, 17343, 17344, 17345, 17346, 17347, 17348, 17349, 17350, 17351, + 17352, 17353, 17354, 17355, 17356, 17357, 17358, 17359, 17360, 17374, 17375, 17376, 17377, 17378, 17379, 17380, 17381, 17382, 17383, 17384, 17385, 17386, 17387, 17388, 17389, 17390, 17391, 17392, 17393, 17394, 17395, 17396, 17397, 17398, 17399, 17400, 17401, 17402, 17403, 17404, 17405, 17406, 17407, 17408, 17409, 17410, 17411, 17412, 17413, 17414, 17415, 17416, 17417, 17418, 17419, 17420, 17421, 17422, 17423, 17424, - 17425, 17426, 17427, 17428, 17429, 17430, 17431, 17432, 17433, 17434, - 17435, 17436, 17437, 17438, 17439, 17440, 17441, 17442, 17443, 17444, - 17445, 17446, 17447, 17448, 17449, 17450, 17451, 17452, 17453, 17454, - 17455, 17456, 17457, 17458, 17459, 17460, 17461, 17462, 17463, 17464, - 17465, 17466, 17467, 17468, 17469, 17470, 17471, 17472, 17473, 17474, - 17475, 17476, 17477, 17478, 17479, 17480, 17481, 17482, 17483, 17484, - 17485, 17486, 17487, 17488, 17489, 17490, 17491, 17492, 17493, 17494, - 17495, 17496, 17497, 17498, 17499, 17500, 17501, 17502, 17503, 17504, - 17505, 17506, 17507, 17508, 17509, 17510, 17511, 17512, 17513, 17514, - 17515, 17516, 17517, 17518, 17519, 17520, 17521, 17522, 17523, 17524, - 17525, 17526, 17527, 17528, 17529, 17530, 17531, 17532, 17533, 17534, - 17535, 17536, 17537, 17538, 17539, 17540, 17541, 17542, 17543, 17544, - 17545, 17546, 17547, 17548, 17549, 17550, 17551, 17552, 17553, 17554, - 17555, 17556, 17557, 17558, 17559, 17560, 17561, 17562, 17563, 17564, - 17565, 17566, 17567, 17568, 17569, 17570, 17571, 17572, 17573, 17574, - 17575, 17576, 17577, 17578, 17579, 17580, 17581, 17582, 17583, 17584, - 17585, 17586, 17587, 17588, 17589, 17590, 17591, 17592, 17593, 17594, - 17595, 17596, 17597, 17598, 17599, 17600, 17601, 17602, 17603, 17604, - 17605, 17606, 17607, 17608, 17609, 17610, 17611, 17612, 17613, 17614, - 17615, 17616, 17617, 17618, 17619, 17620, 17621, 17622, 17623, 17624, - 17625, 17626, 17627, 17628, 17629, 17630, 17631, 17632, 17633, 17634, - 17635, 17636, 17637, 17638, 17639, 17640, 17641, 17642, 17643, 17644, - 17645, 17646, 17647, 17648, 17649, 17650, 17651, 17652, 17653, 17654, - 17655, 17656, 17657, 17658, 17659, 17660, 17661, 17662, 17663, 17664, - 17665, 17666, 17667, 17668, 17669, 17670, 17671, 17672, 17673, 17674, - 17675, 17676, 17677, 17678, 17679, 17680, 17681, 17682, 17683, 17684 + 17425, 17426, 17427, 17428, 17442, 17443, 17444, 17445, 17446, 17447, + 17448, 17449, 17450, 17451, 17452, 17453, 17454, 17455, 17456, 17457, + 17458, 17459, 17460, 17461, 17462, 17463, 17464, 17474, 17475, 17476, + 17477, 17478, 17479, 17480, 17481, 17482, 17483, 17484, 17485, 17486, + 17487, 17488, 17489, 17490, 17491, 17492, 17493, 17494, 17495, 17496, + 17497, 17498, 17499, 17500, 17501, 17502, 17503, 17504, 17505, 17506, + 17507, 17508, 17509, 17510, 17511, 17512, 17513, 17514, 17515, 17516, + 17517, 17518, 17519, 17520, 17521, 17522, 17523, 17524, 17525, 17526, + 17527, 17528, 17529, 17530, 17531, 17532, 17533, 17534, 17535, 17536, + 17537, 17538, 17539, 17540, 17541, 17542, 17543, 17544, 17545, 17546, + 17547, 17548, 17549, 17550, 17551, 17564, 17565, 17566, 17567, 17568, + 17569, 17570, 17571, 17572, 17573, 17574, 17575, 17576, 17577, 17578, + 17579, 17580, 17581, 17582, 17583, 17584, 17585, 17586, 17587, 17588, + 17589, 17590, 17591, 17592, 17593, 17594, 17595, 17596, 17597, 17598, + 17599, 17600, 17601, 17602, 17603, 17604, 17605, 17606, 17607, 17608, + 17609, 17610, 17611, 17612, 17613, 17614, 17615, 17616, 17617, 17618, + 17619, 17620, 17621, 17622, 17623, 17624, 17625, 17626, 17627, 17628, + 17629, 17630, 17631, 17632, 17633, 17634, 17635, 17636, 17637, 17638, + 17639, 17640, 17641, 17642, 17643, 17644, 17645, 17646, 17647, 17648, + 17649, 17650, 17651, 17652, 17653, 17654, 17655, 17656, 17657, 17658, + 17659, 17660, 17661, 17662, 17663, 17664, 17665, 17666, 17667, 17668, + 17669, 17670, 17671, 17672, 17673, 17674, 17675, 17676, 17677, 17678, + 17679, 17680, 17681, 17682, 17683, 17684, 17685, 17686, 17687, 17688, + 17689, 17690, 17691, 17692, 17693, 17694, 17695, 17696, 17697, 17698, + 17699, 17700, 17701, 17702, 17703, 17704, 17705, 17706, 17707, 17708, + 17709, 17710, 17711, 17712, 17713, 17714, 17715, 17716, 17717, 17718, + 17719, 17720, 17721, 17722, 17723, 17724, 17725, 17726, 17727, 17728, + 17729, 17730, 17731, 17732, 17733, 17734, 17735, 17736, 17737, 17738, + 17739, 17740, 17741, 17742, 17743, 17744, 17745, 17746, 17747, 17748, + 17749, 17750, 17751, 17752, 17753, 17754, 17755, 17756, 17757, 17758, + 17759, 17760, 17761, 17762, 17763, 17764, 17765, 17766, 17767, 17768, + 17769, 17770, 17771, 17772, 17773, 17774, 17775, 17776, 17777, 17778, + 17779, 17780, 17781, 17782, 17783, 17784, 17785, 17786, 17787, 17788, + 17789, 17790, 17791, 17792, 17793, 17794, 17795, 17796, 17797, 17798, + 17799, 17800, 17801, 17802, 17803, 17804, 17805, 17806, 17807, 17808, + 17809, 17810, 17811, 17812, 17813, 17814, 17815, 17816, 17817, 17818, + 17819, 17820, 17821, 17822, 17823, 17824, 17825, 17826, 17827, 17828, + 17829, 17830, 17831, 17832, 17833, 17834, 17835, 17836, 17837, 17838, + 17839, 17840, 17841, 17842, 17843, 17844, 17845, 17846, 17847, 17848, + 17849, 17850, 17851, 17852, 17853, 17854, 17855, 17856, 17857, 17858, + 17859, 17860, 17861, 17862, 17863, 17864, 17865, 17866, 17867, 17868, + 17869, 17870, 17871, 17872, 17873, 17874, 17875, 17876, 17877, 17878, + 17879, 17880, 17881, 17882, 17883, 17884, 17885, 17886, 17887, 17888, + 17889, 17890, 17891, 17892, 17893, 17894, 17895, 17896, 17897, 17898, + 17899, 17900, 17901, 17902, 17903, 17904, 17905, 17906, 17907, 17908, + 17909, 17910, 17911, 17912, 17913, 17914, 17915, 17916, 17917, 17918, + 17919, 17920, 17921, 17922, 17923, 17924, 17925, 17926, 17927, 17928, + 17929, 17930, 17931, 17932, 17933, 17934, 17935, 17936, 17937, 17938, + 17939, 17940, 17941, 17942, 17943, 17944, 17945, 17946, 17947, 17948, + 17949, 17950, 17951, 17952, 17953, 17954, 17955, 17956, 17957, 17958, + 17959, 17960, 17961, 17962, 17963, 17964, 17965, 17966, 17967, 17968, + 17969, 17970, 17971, 17972, 17973, 17974, 17975, 17976, 17977, 17978, + 17979, 17980, 17981, 17982, 17983, 17984, 17985, 17986, 17987, 17988, + 17989, 17990, 17991, 17992, 17993, 17994, 17995 }; #endif @@ -3542,16 +3607,16 @@ static const char *const yytname[] = "USCONST", "BCONST", "XCONST", "Op", "ICONST", "PARAM", "TYPECAST", "DOT_DOT", "COLON_EQUALS", "EQUALS_GREATER", "LESS_EQUALS", "GREATER_EQUALS", "NOT_EQUALS", "SQL_COMMENT", "C_COMMENT", "ABORT_P", - "ABSOLUTE_P", "ACCESS", "ACTION", "ADD_P", "ADMIN", "AFTER", "AGGREGATE", - "ALL", "ALSO", "ALTER", "ALWAYS", "ANALYSE", "ANALYZE", "AND", "ANY", - "ARRAY", "AS", "ASC", "ASENSITIVE", "ASSERTION", "ASSIGNMENT", - "ASYMMETRIC", "ATOMIC", "AT", "ATTACH", "ATTRIBUTE", "AUTHORIZATION", - "BACKWARD", "BEFORE", "BEGIN_P", "BETWEEN", "BIGINT", "BINARY", "BIT", - "BOOLEAN_P", "BOTH", "BREADTH", "BY", "CACHE", "CALL", "CALLED", - "CASCADE", "CASCADED", "CASE", "CAST", "CATALOG_P", "CHAIN", "CHAR_P", - "CHARACTER", "CHARACTERISTICS", "CHECK", "CHECKPOINT", "CLASS", "CLOSE", - "CLUSTER", "COALESCE", "COLLATE", "COLLATION", "COLUMN", "COLUMNS", - "COMMENT", "COMMENTS", "COMMIT", "COMMITTED", "COMPRESSION", + "ABSENT", "ABSOLUTE_P", "ACCESS", "ACTION", "ADD_P", "ADMIN", "AFTER", + "AGGREGATE", "ALL", "ALSO", "ALTER", "ALWAYS", "ANALYSE", "ANALYZE", + "AND", "ANY", "ARRAY", "AS", "ASC", "ASENSITIVE", "ASSERTION", + "ASSIGNMENT", "ASYMMETRIC", "ATOMIC", "AT", "ATTACH", "ATTRIBUTE", + "AUTHORIZATION", "BACKWARD", "BEFORE", "BEGIN_P", "BETWEEN", "BIGINT", + "BINARY", "BIT", "BOOLEAN_P", "BOTH", "BREADTH", "BY", "CACHE", "CALL", + "CALLED", "CASCADE", "CASCADED", "CASE", "CAST", "CATALOG_P", "CHAIN", + "CHAR_P", "CHARACTER", "CHARACTERISTICS", "CHECK", "CHECKPOINT", "CLASS", + "CLOSE", "CLUSTER", "COALESCE", "COLLATE", "COLLATION", "COLUMN", + "COLUMNS", "COMMENT", "COMMENTS", "COMMIT", "COMMITTED", "COMPRESSION", "CONCURRENTLY", "CONFIGURATION", "CONFLICT", "CONNECTION", "CONSTRAINT", "CONSTRAINTS", "CONTENT_P", "CONTINUE_P", "CONVERSION_P", "COPY", "COST", "CREATE", "CROSS", "CSV", "CUBE", "CURRENT_P", "CURRENT_CATALOG", @@ -3566,88 +3631,91 @@ static const char *const yytname[] = "EXCLUDING", "EXCLUSIVE", "EXECUTE", "EXISTS", "EXPLAIN", "EXPRESSION", "EXTENSION", "EXTERNAL", "EXTRACT", "FALSE_P", "FAMILY", "FETCH", "FILTER", "FINALIZE", "FIRST_P", "FLOAT_P", "FOLLOWING", "FOR", "FORCE", - "FOREIGN", "FORWARD", "FREEZE", "FROM", "FULL", "FUNCTION", "FUNCTIONS", - "GENERATED", "GLOBAL", "GRANT", "GRANTED", "GREATEST", "GROUP_P", - "GROUPING", "GROUPS", "HANDLER", "HAVING", "HEADER_P", "HOLD", "HOUR_P", - "IDENTITY_P", "IF_P", "ILIKE", "IMMEDIATE", "IMMUTABLE", "IMPLICIT_P", - "IMPORT_P", "IN_P", "INCLUDE", "INCLUDING", "INCREMENT", "INDEX", - "INDEXES", "INHERIT", "INHERITS", "INITIALLY", "INLINE_P", "INNER_P", - "INOUT", "INPUT_P", "INSENSITIVE", "INSERT", "INSTEAD", "INT_P", - "INTEGER", "INTERSECT", "INTERVAL", "INTO", "INVOKER", "IS", "ISNULL", - "ISOLATION", "JOIN", "KEY", "LABEL", "LANGUAGE", "LARGE_P", "LAST_P", - "LATERAL_P", "LEADING", "LEAKPROOF", "LEAST", "LEFT", "LEVEL", "LIKE", - "LIMIT", "LISTEN", "LOAD", "LOCAL", "LOCALTIME", "LOCALTIMESTAMP", - "LOCATION", "LOCK_P", "LOCKED", "LOGGED", "MAPPING", "MATCH", "MATCHED", - "MATERIALIZED", "MAXVALUE", "MERGE", "METHOD", "MINUTE_P", "MINVALUE", - "MODE", "MONTH_P", "MOVE", "NAME_P", "NAMES", "NATIONAL", "NATURAL", - "NCHAR", "NEW", "NEXT", "NFC", "NFD", "NFKC", "NFKD", "NO", "NONE", - "NORMALIZE", "NORMALIZED", "NOT", "NOTHING", "NOTIFY", "NOTNULL", - "NOWAIT", "NULL_P", "NULLIF", "NULLS_P", "NUMERIC", "OBJECT_P", "OF", - "OFF", "OFFSET", "OIDS", "OLD", "ON", "ONLY", "OPERATOR", "OPTION", - "OPTIONS", "OR", "ORDER", "ORDINALITY", "OTHERS", "OUT_P", "OUTER_P", - "OVER", "OVERLAPS", "OVERLAY", "OVERRIDING", "OWNED", "OWNER", - "PARALLEL", "PARAMETER", "PARSER", "PARTIAL", "PARTITION", "PASSING", - "PASSWORD", "PLACING", "PLANS", "POLICY", "POSITION", "PRECEDING", - "PRECISION", "PRESERVE", "PREPARE", "PREPARED", "PRIMARY", "PRIOR", - "PRIVILEGES", "PROCEDURAL", "PROCEDURE", "PROCEDURES", "PROGRAM", - "PUBLICATION", "QUOTE", "RANGE", "READ", "REAL", "REASSIGN", "RECHECK", - "RECURSIVE", "REF_P", "REFERENCES", "REFERENCING", "REFRESH", "REINDEX", - "RELATIVE_P", "RELEASE", "RENAME", "REPEATABLE", "REPLACE", "REPLICA", - "RESET", "RESTART", "RESTRICT", "RETURN", "RETURNING", "RETURNS", - "REVOKE", "RIGHT", "ROLE", "ROLLBACK", "ROLLUP", "ROUTINE", "ROUTINES", - "ROW", "ROWS", "RULE", "SAVEPOINT", "SCHEMA", "SCHEMAS", "SCROLL", - "SEARCH", "SECOND_P", "SECURITY", "SELECT", "SEQUENCE", "SEQUENCES", - "SERIALIZABLE", "SERVER", "SESSION", "SESSION_USER", "SET", "SETS", - "SETOF", "SHARE", "SHOW", "SIMILAR", "SIMPLE", "SKIP", "SMALLINT", - "SNAPSHOT", "SOME", "SQL_P", "STABLE", "STANDALONE_P", "START", - "STATEMENT", "STATISTICS", "STDIN", "STDOUT", "STORAGE", "STORED", - "STRICT_P", "STRIP_P", "SUBSCRIPTION", "SUBSTRING", "SUPPORT", - "SYMMETRIC", "SYSID", "SYSTEM_P", "TABLE", "TABLES", "TABLESAMPLE", - "TABLESPACE", "TEMP", "TEMPLATE", "TEMPORARY", "TEXT_P", "THEN", "TIES", - "TIME", "TIMESTAMP", "TO", "TRAILING", "TRANSACTION", "TRANSFORM", - "TREAT", "TRIGGER", "TRIM", "TRUE_P", "TRUNCATE", "TRUSTED", "TYPE_P", - "TYPES_P", "UESCAPE", "UNBOUNDED", "UNCOMMITTED", "UNENCRYPTED", "UNION", - "UNIQUE", "UNKNOWN", "UNLISTEN", "UNLOGGED", "UNTIL", "UPDATE", "USER", - "USING", "VACUUM", "VALID", "VALIDATE", "VALIDATOR", "VALUE_P", "VALUES", - "VARCHAR", "VARIADIC", "VARYING", "VERBOSE", "VERSION_P", "VIEW", - "VIEWS", "VOLATILE", "WHEN", "WHERE", "WHITESPACE_P", "WINDOW", "WITH", - "WITHIN", "WITHOUT", "WORK", "WRAPPER", "WRITE", "XML_P", - "XMLATTRIBUTES", "XMLCONCAT", "XMLELEMENT", "XMLEXISTS", "XMLFOREST", - "XMLNAMESPACES", "XMLPARSE", "XMLPI", "XMLROOT", "XMLSERIALIZE", - "XMLTABLE", "YEAR_P", "YES_P", "ZONE", "NOT_LA", "NULLS_LA", "WITH_LA", + "FOREIGN", "FORMAT", "FORWARD", "FREEZE", "FROM", "FULL", "FUNCTION", + "FUNCTIONS", "GENERATED", "GLOBAL", "GRANT", "GRANTED", "GREATEST", + "GROUP_P", "GROUPING", "GROUPS", "HANDLER", "HAVING", "HEADER_P", "HOLD", + "HOUR_P", "IDENTITY_P", "IF_P", "ILIKE", "IMMEDIATE", "IMMUTABLE", + "IMPLICIT_P", "IMPORT_P", "IN_P", "INCLUDE", "INCLUDING", "INCREMENT", + "INDENT", "INDEX", "INDEXES", "INHERIT", "INHERITS", "INITIALLY", + "INLINE_P", "INNER_P", "INOUT", "INPUT_P", "INSENSITIVE", "INSERT", + "INSTEAD", "INT_P", "INTEGER", "INTERSECT", "INTERVAL", "INTO", + "INVOKER", "IS", "ISNULL", "ISOLATION", "JOIN", "JSON", "JSON_ARRAY", + "JSON_ARRAYAGG", "JSON_OBJECT", "JSON_OBJECTAGG", "KEY", "KEYS", "LABEL", + "LANGUAGE", "LARGE_P", "LAST_P", "LATERAL_P", "LEADING", "LEAKPROOF", + "LEAST", "LEFT", "LEVEL", "LIKE", "LIMIT", "LISTEN", "LOAD", "LOCAL", + "LOCALTIME", "LOCALTIMESTAMP", "LOCATION", "LOCK_P", "LOCKED", "LOGGED", + "MAPPING", "MATCH", "MATCHED", "MATERIALIZED", "MAXVALUE", "MERGE", + "METHOD", "MINUTE_P", "MINVALUE", "MODE", "MONTH_P", "MOVE", "NAME_P", + "NAMES", "NATIONAL", "NATURAL", "NCHAR", "NEW", "NEXT", "NFC", "NFD", + "NFKC", "NFKD", "NO", "NONE", "NORMALIZE", "NORMALIZED", "NOT", + "NOTHING", "NOTIFY", "NOTNULL", "NOWAIT", "NULL_P", "NULLIF", "NULLS_P", + "NUMERIC", "OBJECT_P", "OF", "OFF", "OFFSET", "OIDS", "OLD", "ON", + "ONLY", "OPERATOR", "OPTION", "OPTIONS", "OR", "ORDER", "ORDINALITY", + "OTHERS", "OUT_P", "OUTER_P", "OVER", "OVERLAPS", "OVERLAY", + "OVERRIDING", "OWNED", "OWNER", "PARALLEL", "PARAMETER", "PARSER", + "PARTIAL", "PARTITION", "PASSING", "PASSWORD", "PLACING", "PLANS", + "POLICY", "POSITION", "PRECEDING", "PRECISION", "PRESERVE", "PREPARE", + "PREPARED", "PRIMARY", "PRIOR", "PRIVILEGES", "PROCEDURAL", "PROCEDURE", + "PROCEDURES", "PROGRAM", "PUBLICATION", "QUOTE", "RANGE", "READ", "REAL", + "REASSIGN", "RECHECK", "RECURSIVE", "REF_P", "REFERENCES", "REFERENCING", + "REFRESH", "REINDEX", "RELATIVE_P", "RELEASE", "RENAME", "REPEATABLE", + "REPLACE", "REPLICA", "RESET", "RESTART", "RESTRICT", "RETURN", + "RETURNING", "RETURNS", "REVOKE", "RIGHT", "ROLE", "ROLLBACK", "ROLLUP", + "ROUTINE", "ROUTINES", "ROW", "ROWS", "RULE", "SAVEPOINT", "SCALAR", + "SCHEMA", "SCHEMAS", "SCROLL", "SEARCH", "SECOND_P", "SECURITY", + "SELECT", "SEQUENCE", "SEQUENCES", "SERIALIZABLE", "SERVER", "SESSION", + "SESSION_USER", "SET", "SETS", "SETOF", "SHARE", "SHOW", "SIMILAR", + "SIMPLE", "SKIP", "SMALLINT", "SNAPSHOT", "SOME", "SQL_P", "STABLE", + "STANDALONE_P", "START", "STATEMENT", "STATISTICS", "STDIN", "STDOUT", + "STORAGE", "STORED", "STRICT_P", "STRIP_P", "SUBSCRIPTION", "SUBSTRING", + "SUPPORT", "SYMMETRIC", "SYSID", "SYSTEM_P", "SYSTEM_USER", "TABLE", + "TABLES", "TABLESAMPLE", "TABLESPACE", "TEMP", "TEMPLATE", "TEMPORARY", + "TEXT_P", "THEN", "TIES", "TIME", "TIMESTAMP", "TO", "TRAILING", + "TRANSACTION", "TRANSFORM", "TREAT", "TRIGGER", "TRIM", "TRUE_P", + "TRUNCATE", "TRUSTED", "TYPE_P", "TYPES_P", "UESCAPE", "UNBOUNDED", + "UNCOMMITTED", "UNENCRYPTED", "UNION", "UNIQUE", "UNKNOWN", "UNLISTEN", + "UNLOGGED", "UNTIL", "UPDATE", "USER", "USING", "VACUUM", "VALID", + "VALIDATE", "VALIDATOR", "VALUE_P", "VALUES", "VARCHAR", "VARIADIC", + "VARYING", "VERBOSE", "VERSION_P", "VIEW", "VIEWS", "VOLATILE", "WHEN", + "WHERE", "WHITESPACE_P", "WINDOW", "WITH", "WITHIN", "WITHOUT", "WORK", + "WRAPPER", "WRITE", "XML_P", "XMLATTRIBUTES", "XMLCONCAT", "XMLELEMENT", + "XMLEXISTS", "XMLFOREST", "XMLNAMESPACES", "XMLPARSE", "XMLPI", + "XMLROOT", "XMLSERIALIZE", "XMLTABLE", "YEAR_P", "YES_P", "ZONE", + "FORMAT_LA", "NOT_LA", "NULLS_LA", "WITH_LA", "WITHOUT_LA", "MODE_TYPE_NAME", "MODE_PLPGSQL_EXPR", "MODE_PLPGSQL_ASSIGN1", "MODE_PLPGSQL_ASSIGN2", "MODE_PLPGSQL_ASSIGN3", "'<'", "'>'", "'='", "'+'", "'-'", "'*'", "'/'", "'%'", "'^'", "UMINUS", "'['", "']'", "'('", "')'", "'.'", "';'", "','", "':'", "$accept", "parse_toplevel", - "stmtmulti", "toplevel_stmt", "stmt", "CallStmt", "CreateRoleStmt", - "opt_with", "OptRoleList", "AlterOptRoleList", "AlterOptRoleElem", - "CreateOptRoleElem", "CreateUserStmt", "AlterRoleStmt", - "opt_in_database", "AlterRoleSetStmt", "DropRoleStmt", "CreateGroupStmt", - "AlterGroupStmt", "add_drop", "CreateSchemaStmt", "OptSchemaName", - "OptSchemaEltList", "schema_stmt", "VariableSetStmt", "set_rest", - "generic_set", "set_rest_more", "var_name", "var_list", "var_value", - "iso_level", "opt_boolean_or_string", "zone_value", "opt_encoding", - "NonReservedWord_or_Sconst", "VariableResetStmt", "reset_rest", - "generic_reset", "SetResetClause", "FunctionSetResetClause", - "VariableShowStmt", "ConstraintsSetStmt", "constraints_set_list", - "constraints_set_mode", "CheckPointStmt", "DiscardStmt", - "AlterTableStmt", "alter_table_cmds", "partition_cmd", + "stmtmulti", "toplevel_stmt", "stmt", "opt_single_name", + "opt_qualified_name", "opt_concurrently", "opt_drop_behavior", + "CallStmt", "CreateRoleStmt", "opt_with", "OptRoleList", + "AlterOptRoleList", "AlterOptRoleElem", "CreateOptRoleElem", + "CreateUserStmt", "AlterRoleStmt", "opt_in_database", "AlterRoleSetStmt", + "DropRoleStmt", "CreateGroupStmt", "AlterGroupStmt", "add_drop", + "CreateSchemaStmt", "OptSchemaEltList", "schema_stmt", "VariableSetStmt", + "set_rest", "generic_set", "set_rest_more", "var_name", "var_list", + "var_value", "iso_level", "opt_boolean_or_string", "zone_value", + "opt_encoding", "NonReservedWord_or_Sconst", "VariableResetStmt", + "reset_rest", "generic_reset", "SetResetClause", + "FunctionSetResetClause", "VariableShowStmt", "ConstraintsSetStmt", + "constraints_set_list", "constraints_set_mode", "CheckPointStmt", + "DiscardStmt", "AlterTableStmt", "alter_table_cmds", "partition_cmd", "index_partition_cmd", "alter_table_cmd", "alter_column_default", - "opt_drop_behavior", "opt_collate_clause", "alter_using", - "replica_identity", "reloptions", "opt_reloptions", "reloption_list", - "reloption_elem", "alter_identity_column_option_list", - "alter_identity_column_option", "PartitionBoundSpec", - "hash_partbound_elem", "hash_partbound", "AlterCompositeTypeStmt", - "alter_type_cmds", "alter_type_cmd", "ClosePortalStmt", "CopyStmt", - "copy_from", "opt_program", "copy_file_name", "copy_options", - "copy_opt_list", "copy_opt_item", "opt_binary", "copy_delimiter", - "opt_using", "copy_generic_opt_list", "copy_generic_opt_elem", - "copy_generic_opt_arg", "copy_generic_opt_arg_list", - "copy_generic_opt_arg_list_item", "CreateStmt", "OptTemp", - "OptTableElementList", "OptTypedTableElementList", "TableElementList", - "TypedTableElementList", "TableElement", "TypedTableElement", - "columnDef", "columnOptions", "column_compression", - "opt_column_compression", "ColQualList", "ColConstraint", + "opt_collate_clause", "alter_using", "replica_identity", "reloptions", + "opt_reloptions", "reloption_list", "reloption_elem", + "alter_identity_column_option_list", "alter_identity_column_option", + "PartitionBoundSpec", "hash_partbound_elem", "hash_partbound", + "AlterCompositeTypeStmt", "alter_type_cmds", "alter_type_cmd", + "ClosePortalStmt", "CopyStmt", "copy_from", "opt_program", + "copy_file_name", "copy_options", "copy_opt_list", "copy_opt_item", + "opt_binary", "copy_delimiter", "opt_using", "copy_generic_opt_list", + "copy_generic_opt_elem", "copy_generic_opt_arg", + "copy_generic_opt_arg_list", "copy_generic_opt_arg_list_item", + "CreateStmt", "OptTemp", "OptTableElementList", + "OptTypedTableElementList", "TableElementList", "TypedTableElementList", + "TableElement", "TypedTableElement", "columnDef", "columnOptions", + "column_compression", "opt_column_compression", "column_storage", + "opt_column_storage", "ColQualList", "ColConstraint", "ColConstraintElem", "opt_unique_null_treatment", "generated_when", "ConstraintAttr", "TableLikeClause", "TableLikeOptionList", "TableLikeOption", "TableConstraint", "ConstraintElem", "opt_no_inherit", @@ -3708,45 +3776,46 @@ static const char *const yytname[] = "RevokeStmt", "privileges", "privilege_list", "privilege", "parameter_name_list", "parameter_name", "privilege_target", "grantee_list", "grantee", "opt_grant_grant_option", "GrantRoleStmt", - "RevokeRoleStmt", "opt_grant_admin_option", "opt_granted_by", - "AlterDefaultPrivilegesStmt", "DefACLOptionList", "DefACLOption", - "DefACLAction", "defacl_privilege_target", "IndexStmt", "opt_unique", - "opt_concurrently", "opt_index_name", "access_method_clause", - "index_params", "index_elem_options", "index_elem", "opt_include", - "index_including_params", "opt_collate", "opt_class", "opt_asc_desc", - "opt_nulls_order", "CreateFunctionStmt", "opt_or_replace", "func_args", - "func_args_list", "function_with_argtypes_list", - "function_with_argtypes", "func_args_with_defaults", - "func_args_with_defaults_list", "func_arg", "arg_class", "param_name", - "func_return", "func_type", "func_arg_with_default", "aggr_arg", - "aggr_args", "aggr_args_list", "aggregate_with_argtypes", - "aggregate_with_argtypes_list", "opt_createfunc_opt_list", - "createfunc_opt_list", "common_func_opt_item", "createfunc_opt_item", - "func_as", "ReturnStmt", "opt_routine_body", "routine_body_stmt_list", - "routine_body_stmt", "transform_type_list", "opt_definition", - "table_func_column", "table_func_column_list", "AlterFunctionStmt", - "alterfunc_opt_list", "opt_restrict", "RemoveFuncStmt", "RemoveAggrStmt", - "RemoveOperStmt", "oper_argtypes", "any_operator", - "operator_with_argtypes_list", "operator_with_argtypes", "DoStmt", - "dostmt_opt_list", "dostmt_opt_item", "CreateCastStmt", "cast_context", - "DropCastStmt", "opt_if_exists", "CreateTransformStmt", + "RevokeRoleStmt", "grant_role_opt_list", "grant_role_opt", + "grant_role_opt_value", "opt_granted_by", "AlterDefaultPrivilegesStmt", + "DefACLOptionList", "DefACLOption", "DefACLAction", + "defacl_privilege_target", "IndexStmt", "opt_unique", + "access_method_clause", "index_params", "index_elem_options", + "index_elem", "opt_include", "index_including_params", "opt_collate", + "opt_asc_desc", "opt_nulls_order", "CreateFunctionStmt", + "opt_or_replace", "func_args", "func_args_list", + "function_with_argtypes_list", "function_with_argtypes", + "func_args_with_defaults", "func_args_with_defaults_list", "func_arg", + "arg_class", "param_name", "func_return", "func_type", + "func_arg_with_default", "aggr_arg", "aggr_args", "aggr_args_list", + "aggregate_with_argtypes", "aggregate_with_argtypes_list", + "opt_createfunc_opt_list", "createfunc_opt_list", "common_func_opt_item", + "createfunc_opt_item", "func_as", "ReturnStmt", "opt_routine_body", + "routine_body_stmt_list", "routine_body_stmt", "transform_type_list", + "opt_definition", "table_func_column", "table_func_column_list", + "AlterFunctionStmt", "alterfunc_opt_list", "opt_restrict", + "RemoveFuncStmt", "RemoveAggrStmt", "RemoveOperStmt", "oper_argtypes", + "any_operator", "operator_with_argtypes_list", "operator_with_argtypes", + "DoStmt", "dostmt_opt_list", "dostmt_opt_item", "CreateCastStmt", + "cast_context", "DropCastStmt", "opt_if_exists", "CreateTransformStmt", "transform_element_list", "DropTransformStmt", "ReindexStmt", - "reindex_target_type", "reindex_target_multitable", "AlterTblSpcStmt", - "RenameStmt", "opt_column", "opt_set_data", "AlterObjectDependsStmt", - "opt_no", "AlterObjectSchemaStmt", "AlterOperatorStmt", - "operator_def_list", "operator_def_elem", "operator_def_arg", - "AlterTypeStmt", "AlterOwnerStmt", "CreatePublicationStmt", - "PublicationObjSpec", "pub_obj_list", "AlterPublicationStmt", - "CreateSubscriptionStmt", "AlterSubscriptionStmt", - "DropSubscriptionStmt", "RuleStmt", "RuleActionList", "RuleActionMulti", - "RuleActionStmt", "RuleActionStmtOrEmpty", "event", "opt_instead", - "NotifyStmt", "notify_payload", "ListenStmt", "UnlistenStmt", - "TransactionStmt", "TransactionStmtLegacy", "opt_transaction", - "transaction_mode_item", "transaction_mode_list", - "transaction_mode_list_or_empty", "opt_transaction_chain", "ViewStmt", - "opt_check_option", "LoadStmt", "CreatedbStmt", "createdb_opt_list", - "createdb_opt_items", "createdb_opt_item", "createdb_opt_name", - "opt_equal", "AlterDatabaseStmt", "AlterDatabaseSetStmt", "DropdbStmt", + "reindex_target_relation", "reindex_target_all", + "opt_reindex_option_list", "AlterTblSpcStmt", "RenameStmt", "opt_column", + "opt_set_data", "AlterObjectDependsStmt", "opt_no", + "AlterObjectSchemaStmt", "AlterOperatorStmt", "operator_def_list", + "operator_def_elem", "operator_def_arg", "AlterTypeStmt", + "AlterOwnerStmt", "CreatePublicationStmt", "PublicationObjSpec", + "pub_obj_list", "AlterPublicationStmt", "CreateSubscriptionStmt", + "AlterSubscriptionStmt", "DropSubscriptionStmt", "RuleStmt", + "RuleActionList", "RuleActionMulti", "RuleActionStmt", + "RuleActionStmtOrEmpty", "event", "opt_instead", "NotifyStmt", + "notify_payload", "ListenStmt", "UnlistenStmt", "TransactionStmt", + "TransactionStmtLegacy", "opt_transaction", "transaction_mode_item", + "transaction_mode_list", "transaction_mode_list_or_empty", + "opt_transaction_chain", "ViewStmt", "opt_check_option", "LoadStmt", + "CreatedbStmt", "createdb_opt_list", "createdb_opt_items", + "createdb_opt_item", "createdb_opt_name", "opt_equal", + "AlterDatabaseStmt", "AlterDatabaseSetStmt", "DropdbStmt", "drop_option_list", "drop_option", "AlterCollationStmt", "AlterSystemStmt", "CreateDomainStmt", "AlterDomainStmt", "opt_as", "AlterTSDictionaryStmt", "AlterTSConfigurationStmt", "any_with", @@ -3799,27 +3868,35 @@ static const char *const yytname[] = "a_expr", "b_expr", "c_expr", "func_application", "func_expr", "func_expr_windowless", "func_expr_common_subexpr", "xml_root_version", "opt_xml_root_standalone", "xml_attributes", "xml_attribute_list", - "xml_attribute_el", "document_or_content", "xml_whitespace_option", - "xmlexists_argument", "xml_passing_mech", "within_group_clause", - "filter_clause", "window_clause", "window_definition_list", - "window_definition", "over_clause", "window_specification", - "opt_existing_window_name", "opt_partition_clause", "opt_frame_clause", - "frame_extent", "frame_bound", "opt_window_exclusion_clause", "row", - "explicit_row", "implicit_row", "sub_type", "all_Op", "MathOp", - "qual_Op", "qual_all_Op", "subquery_Op", "expr_list", "func_arg_list", - "func_arg_expr", "func_arg_list_opt", "type_list", "array_expr", - "array_expr_list", "extract_list", "extract_arg", "unicode_normal_form", - "overlay_list", "position_list", "substr_list", "trim_list", "in_expr", - "case_expr", "when_clause_list", "when_clause", "case_default", - "case_arg", "columnref", "indirection_el", "opt_slice_bound", - "indirection", "opt_indirection", "opt_asymmetric", "opt_target_list", - "target_list", "target_el", "qualified_name_list", "qualified_name", - "name_list", "name", "attr_name", "file_name", "func_name", "AexprConst", - "Iconst", "Sconst", "SignedIconst", "RoleId", "RoleSpec", "role_list", - "PLpgSQL_Expr", "PLAssignStmt", "plassign_target", "plassign_equals", - "ColId", "type_function_name", "NonReservedWord", "ColLabel", - "BareColLabel", "unreserved_keyword", "col_name_keyword", - "type_func_name_keyword", "reserved_keyword", "bare_label_keyword", 0 + "xml_attribute_el", "document_or_content", "xml_indent_option", + "xml_whitespace_option", "xmlexists_argument", "xml_passing_mech", + "within_group_clause", "filter_clause", "window_clause", + "window_definition_list", "window_definition", "over_clause", + "window_specification", "opt_existing_window_name", + "opt_partition_clause", "opt_frame_clause", "frame_extent", + "frame_bound", "opt_window_exclusion_clause", "row", "explicit_row", + "implicit_row", "sub_type", "all_Op", "MathOp", "qual_Op", "qual_all_Op", + "subquery_Op", "expr_list", "func_arg_list", "func_arg_expr", + "func_arg_list_opt", "type_list", "array_expr", "array_expr_list", + "extract_list", "extract_arg", "unicode_normal_form", "overlay_list", + "position_list", "substr_list", "trim_list", "in_expr", "case_expr", + "when_clause_list", "when_clause", "case_default", "case_arg", + "columnref", "indirection_el", "opt_slice_bound", "indirection", + "opt_indirection", "opt_asymmetric", "json_value_expr", + "json_format_clause_opt", "json_encoding_clause_opt", + "json_output_clause_opt", "json_predicate_type_constraint", + "json_key_uniqueness_constraint_opt", "json_name_and_value_list", + "json_name_and_value", "json_object_constructor_null_clause_opt", + "json_array_constructor_null_clause_opt", "json_value_expr_list", + "json_aggregate_func", "json_array_aggregate_order_by_clause_opt", + "opt_target_list", "target_list", "target_el", "qualified_name_list", + "qualified_name", "name_list", "name", "attr_name", "file_name", + "func_name", "AexprConst", "Iconst", "Sconst", "SignedIconst", "RoleId", + "RoleSpec", "role_list", "PLpgSQL_Expr", "PLAssignStmt", + "plassign_target", "plassign_equals", "ColId", "type_function_name", + "NonReservedWord", "ColLabel", "BareColLabel", "unreserved_keyword", + "col_name_keyword", "type_func_name_keyword", "reserved_keyword", + "bare_label_keyword", 0 }; #endif @@ -3877,336 +3954,346 @@ static const yytype_uint16 yytoknum[] = 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, - 60, 62, 61, 43, 45, 42, 47, 37, 94, 745, - 91, 93, 40, 41, 46, 59, 44, 58 + 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, + 755, 756, 757, 60, 62, 61, 43, 45, 42, 47, + 37, 94, 758, 91, 93, 40, 41, 46, 59, 44, + 58 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 508, 509, 509, 509, 509, 509, 509, 510, 510, - 511, 511, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, - 512, 512, 512, 512, 512, 512, 512, 513, 514, 515, - 515, 515, 516, 516, 517, 517, 518, 518, 518, 518, - 518, 518, 518, 518, 518, 518, 518, 519, 519, 519, - 519, 519, 519, 520, 521, 521, 522, 522, 523, 523, - 523, 523, 524, 524, 524, 524, 524, 524, 525, 526, - 527, 527, 528, 528, 528, 528, 529, 529, 530, 530, - 531, 531, 531, 531, 531, 531, 532, 532, 532, 533, - 533, 533, 534, 534, 534, 534, 535, 535, 535, 535, - 535, 535, 535, 535, 535, 535, 535, 535, 535, 535, - 536, 536, 537, 537, 538, 538, 538, 539, 539, 539, - 539, 540, 540, 540, 540, 541, 541, 541, 541, 541, - 541, 541, 541, 542, 542, 542, 543, 543, 544, 545, - 545, 545, 545, 546, 546, 547, 547, 548, 548, 549, - 549, 549, 549, 549, 550, 551, 551, 552, 552, 553, - 554, 554, 554, 554, 554, 555, 555, 555, 555, 555, - 555, 555, 555, 555, 555, 555, 555, 555, 555, 555, - 555, 555, 555, 555, 555, 555, 556, 556, 557, 557, - 557, 558, 559, 559, 559, 559, 559, 559, 559, 559, - 559, 559, 559, 559, 559, 559, 559, 559, 559, 559, - 559, 559, 559, 559, 559, 559, 559, 559, 559, 559, - 559, 559, 559, 559, 559, 559, 559, 559, 559, 559, - 559, 559, 559, 559, 559, 559, 559, 559, 559, 559, - 559, 559, 559, 559, 559, 559, 559, 559, 559, 559, - 559, 559, 560, 560, 561, 561, 561, 562, 562, 563, - 563, 564, 564, 564, 564, 565, 566, 566, 567, 567, - 568, 568, 568, 568, 569, 569, 570, 570, 570, 570, - 571, 571, 571, 571, 572, 573, 573, 574, 575, 575, - 576, 576, 576, 576, 577, 577, 578, 578, 579, 579, - 580, 580, 581, 581, 581, 582, 582, 583, 583, 584, - 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, - 584, 584, 585, 585, 586, 586, 587, 587, 588, 588, - 589, 590, 590, 590, 590, 590, 591, 591, 592, 593, - 593, 593, 593, 593, 593, 594, 594, 594, 594, 594, - 594, 594, 594, 595, 595, 596, 596, 597, 597, 598, - 598, 599, 599, 599, 600, 600, 601, 602, 602, 603, - 603, 604, 604, 605, 605, 606, 606, 606, 606, 607, - 607, 607, 607, 607, 607, 607, 607, 607, 608, 608, - 608, 609, 609, 610, 610, 610, 610, 611, 612, 612, - 612, 613, 613, 613, 613, 613, 613, 613, 613, 613, - 613, 614, 614, 615, 615, 615, 615, 615, 615, 615, - 616, 616, 617, 617, 618, 618, 619, 620, 620, 621, - 621, 621, 621, 622, 622, 623, 623, 624, 624, 625, - 625, 625, 625, 625, 626, 627, 628, 628, 628, 628, - 628, 629, 629, 630, 630, 631, 632, 632, 633, 633, - 633, 634, 634, 635, 635, 635, 636, 636, 636, 636, - 637, 637, 638, 638, 639, 640, 640, 641, 641, 642, - 642, 642, 643, 643, 644, 644, 645, 646, 646, 646, - 647, 647, 648, 649, 649, 650, 651, 651, 652, 652, - 653, 653, 654, 654, 655, 655, 656, 656, 656, 656, - 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, - 657, 657, 658, 658, 658, 658, 659, 659, 660, 660, - 661, 661, 662, 662, 663, 663, 664, 664, 665, 665, - 666, 666, 667, 668, 668, 669, 669, 670, 670, 671, - 671, 672, 672, 672, 672, 673, 674, 674, 675, 676, - 676, 676, 676, 676, 676, 676, 676, 676, 676, 676, - 676, 676, 677, 678, 678, 678, 678, 679, 679, 680, - 680, 681, 681, 682, 682, 683, 683, 684, 685, 685, - 686, 686, 686, 686, 687, 688, 689, 690, 690, 691, - 691, 692, 692, 693, 693, 694, 694, 694, 695, 695, - 695, 695, 696, 697, 697, 698, 698, 699, 699, 700, - 700, 701, 701, 702, 703, 704, 705, 705, 706, 706, - 707, 707, 708, 708, 709, 709, 710, 710, 711, 711, - 711, 711, 711, 712, 713, 713, 714, 714, 715, 715, - 715, 716, 716, 717, 717, 717, 717, 717, 718, 718, - 719, 719, 720, 721, 721, 722, 722, 723, 724, 724, - 725, 725, 726, 726, 727, 727, 728, 728, 729, 729, - 729, 730, 730, 730, 730, 731, 731, 732, 732, 733, - 733, 733, 733, 733, 733, 734, 734, 735, 735, 736, - 737, 737, 738, 739, 739, 739, 739, 740, 741, 741, - 741, 741, 741, 741, 741, 741, 741, 741, 741, 741, - 741, 741, 741, 741, 742, 743, 743, 744, 744, 745, - 745, 745, 745, 745, 745, 746, 747, 747, 748, 749, - 749, 750, 750, 751, 751, 751, 751, 752, 752, 753, - 754, 754, 755, 755, 755, 755, 755, 756, 756, 757, - 757, 758, 758, 758, 759, 759, 760, 761, 761, 762, - 762, 763, 763, 764, 764, 765, 765, 766, 767, 768, - 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, - 768, 769, 769, 769, 769, 769, 769, 769, 769, 769, - 769, 769, 769, 769, 770, 770, 770, 770, 770, 771, - 771, 771, 771, 771, 771, 771, 771, 772, 772, 772, - 773, 773, 774, 774, 775, 775, 776, 776, 777, 778, - 778, 778, 779, 779, 779, 779, 779, 779, 779, 779, - 779, 779, 779, 779, 779, 779, 779, 779, 779, 779, - 780, 780, 781, 781, 781, 781, 781, 781, 781, 781, - 781, 781, 782, 782, 783, 783, 784, 784, 785, 785, - 785, 785, 785, 785, 785, 785, 785, 785, 785, 785, - 785, 785, 785, 785, 786, 786, 787, 787, 788, 789, - 789, 790, 790, 790, 790, 790, 791, 791, 792, 792, - 792, 792, 792, 793, 793, 794, 794, 795, 795, 795, - 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, - 795, 795, 795, 795, 795, 795, 795, 795, 796, 796, - 797, 797, 798, 798, 799, 800, 800, 801, 801, 802, - 802, 803, 804, 804, 805, 805, 805, 806, 806, 806, - 807, 807, 807, 807, 807, 807, 808, 808, 809, 809, - 810, 810, 811, 811, 812, 812, 813, 813, 814, 814, - 815, 815, 815, 816, 816, 817, 817, 818, 818, 819, - 819, 820, 820, 820, 821, 821, 821, 822, 822, 822, - 822, 823, 823, 824, 824, 825, 825, 826, 826, 827, - 827, 827, 827, 828, 828, 829, 829, 830, 830, 830, - 830, 830, 831, 831, 831, 831, 831, 832, 833, 834, - 834, 834, 835, 835, 835, 836, 837, 837, 837, 837, - 838, 838, 839, 840, 840, 841, 841, 842, 842, 843, - 843, 843, 843, 843, 843, 843, 843, 843, 843, 843, - 843, 843, 843, 843, 843, 843, 844, 844, 844, 844, - 844, 845, 845, 846, 847, 847, 847, 848, 848, 849, - 849, 850, 850, 851, 851, 852, 853, 853, 854, 854, - 854, 855, 855, 856, 856, 857, 857, 857, 857, 857, - 857, 858, 858, 859, 859, 860, 860, 860, 860, 861, - 861, 862, 862, 863, 864, 865, 865, 866, 866, 867, - 867, 867, 868, 868, 868, 869, 870, 870, 871, 872, - 872, 872, 872, 873, 874, 874, 874, 874, 875, 875, - 876, 876, 876, 877, 877, 878, 878, 878, 878, 878, - 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, - 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, - 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, - 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, - 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, - 879, 879, 880, 880, 881, 881, 881, 881, 881, 881, - 882, 882, 883, 883, 883, 883, 883, 883, 883, 883, - 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, - 883, 883, 883, 883, 883, 883, 883, 883, 883, 884, - 885, 885, 886, 886, 887, 887, 887, 887, 887, 888, - 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, - 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, - 889, 889, 889, 889, 890, 890, 890, 891, 891, 891, - 891, 891, 891, 891, 892, 892, 893, 893, 893, 893, - 894, 895, 895, 895, 895, 895, 895, 895, 895, 895, - 896, 896, 897, 898, 898, 898, 899, 899, 900, 900, - 900, 900, 900, 901, 901, 902, 902, 902, 902, 903, - 903, 903, 904, 905, 905, 906, 907, 907, 908, 908, - 908, 908, 908, 908, 908, 908, 908, 908, 908, 908, - 909, 909, 910, 910, 910, 911, 911, 911, 911, 911, - 912, 912, 912, 913, 913, 914, 914, 914, 915, 915, - 915, 915, 916, 916, 916, 916, 917, 918, 919, 919, - 920, 920, 921, 921, 921, 922, 922, 922, 922, 922, - 922, 922, 923, 923, 924, 924, 924, 924, 925, 926, - 926, 926, 926, 927, 927, 928, 929, 930, 930, 931, - 932, 932, 932, 932, 932, 932, 932, 933, 933, 934, - 935, 935, 935, 935, 935, 935, 936, 936, 937, 938, - 938, 938, 938, 939, 939, 940, 940, 941, 941, 942, - 942, 943, 943, 944, 945, 945, 946, 946, 946, 947, - 947, 948, 948, 949, 949, 950, 950, 951, 951, 952, - 953, 953, 954, 954, 955, 955, 955, 955, 956, 956, - 956, 956, 956, 956, 956, 956, 956, 956, 957, 958, - 958, 959, 959, 959, 959, 959, 960, 960, 960, 961, - 961, 962, 962, 962, 962, 963, 964, 964, 965, 965, - 965, 965, 965, 966, 966, 967, 967, 968, 969, 969, - 969, 970, 970, 970, 971, 971, 972, 973, 973, 974, - 975, 975, 976, 976, 976, 976, 976, 976, 976, 976, - 977, 977, 978, 978, 978, 979, 980, 980, 981, 981, - 982, 983, 983, 984, 985, 985, 986, 986, 986, 986, - 986, 987, 987, 988, 989, 990, 990, 990, 990, 990, - 991, 992, 993, 994, 994, 994, 994, 994, 994, 995, - 995, 995, 996, 996, 997, 997, 998, 998, 998, 998, - 998, 998, 998, 998, 999, 999, 1000, 1000, 1000, 1000, - 1000, 1000, 1000, 1001, 1001, 1001, 1002, 1002, 1003, 1004, - 1004, 1004, 1005, 1005, 1005, 1006, 1006, 1006, 1007, 1007, - 1008, 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1010, 1010, 1011, 1011, 1011, 1012, 1012, 1013, 1013, - 1014, 1014, 1015, 1015, 1016, 1017, 1017, 1018, 1018, 1019, - 1019, 1019, 1019, 1020, 1020, 1021, 1021, 1021, 1021, 1021, - 1021, 1022, 1022, 1023, 1023, 1024, 1025, 1025, 1025, 1026, - 1026, 1027, 1027, 1028, 1028, 1029, 1029, 1030, 1030, 1031, - 1031, 1031, 1031, 1031, 1032, 1033, 1034, 1035, 1036, 1036, - 1037, 1037, 1038, 1038, 1039, 1039, 1040, 1041, 1041, 1041, - 1041, 1042, 1042, 1043, 1043, 1044, 1044, 1045, 1045, 1046, - 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1047, - 1047, 1047, 1047, 1047, 1047, 1048, 1048, 1048, 1048, 1049, - 1049, 1050, 1050, 1051, 1051, 1051, 1051, 1051, 1052, 1052, - 1052, 1052, 1053, 1053, 1054, 1054, 1055, 1055, 1056, 1056, - 1056, 1057, 1057, 1058, 1058, 1058, 1059, 1060, 1060, 1061, - 1061, 1062, 1063, 1063, 1064, 1064, 1065, 1065, 1066, 1066, - 1067, 1067, 1067, 1068, 1068, 1069, 1069, 1070, 1071, 1071, - 1072, 1072, 1073, 1073, 1073, 1074, 1074, 1075, 1075, 1075, - 1075, 1076, 1076, 1077, 1077, 1078, 1078, 1078, 1078, 1078, - 1078, 1079, 1079, 1079, 1080, 1080, 1080, 1080, 1080, 1080, - 1080, 1081, 1081, 1081, 1081, 1082, 1082, 1083, 1083, 1084, - 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, - 1085, 1085, 1086, 1086, 1087, 1087, 1088, 1089, 1090, 1090, - 1091, 1091, 1092, 1093, 1094, 1094, 1094, 1094, 1094, 1094, - 1095, 1095, 1096, 1096, 1096, 1096, 1097, 1098, 1098, 1098, - 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, - 1099, 1099, 1099, 1099, 1100, 1100, 1101, 1101, 1101, 1101, - 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, - 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, - 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, - 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, - 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, - 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, - 1101, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, - 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, - 1102, 1102, 1102, 1103, 1103, 1103, 1103, 1103, 1103, 1103, - 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1104, 1104, 1104, - 1104, 1104, 1104, 1104, 1105, 1105, 1106, 1106, 1107, 1107, - 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, - 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, - 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, - 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, - 1107, 1107, 1107, 1107, 1108, 1108, 1109, 1109, 1109, 1109, - 1110, 1111, 1111, 1112, 1112, 1113, 1113, 1114, 1114, 1114, - 1115, 1115, 1115, 1115, 1116, 1116, 1117, 1117, 1118, 1118, - 1119, 1119, 1120, 1120, 1121, 1122, 1122, 1122, 1123, 1124, - 1124, 1125, 1125, 1126, 1126, 1126, 1126, 1127, 1127, 1128, - 1128, 1128, 1128, 1128, 1129, 1129, 1129, 1129, 1129, 1130, - 1130, 1130, 1131, 1131, 1132, 1133, 1133, 1133, 1134, 1134, - 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, - 1135, 1135, 1136, 1136, 1137, 1137, 1138, 1138, 1138, 1138, - 1138, 1138, 1139, 1139, 1140, 1140, 1141, 1141, 1141, 1142, - 1142, 1143, 1143, 1144, 1144, 1144, 1145, 1145, 1146, 1146, - 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1148, 1148, - 1148, 1148, 1149, 1149, 1150, 1151, 1151, 1151, 1151, 1151, - 1152, 1152, 1152, 1153, 1153, 1154, 1155, 1155, 1156, 1157, - 1157, 1158, 1158, 1159, 1159, 1160, 1160, 1160, 1160, 1161, - 1161, 1162, 1162, 1163, 1163, 1164, 1164, 1165, 1165, 1166, - 1166, 1167, 1167, 1167, 1167, 1168, 1168, 1169, 1169, 1170, - 1170, 1171, 1172, 1173, 1174, 1174, 1175, 1175, 1175, 1175, - 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, - 1175, 1175, 1175, 1175, 1176, 1177, 1178, 1178, 1178, 1179, - 1180, 1180, 1180, 1180, 1181, 1181, 1182, 1183, 1184, 1184, - 1185, 1185, 1186, 1186, 1186, 1187, 1187, 1187, 1188, 1188, - 1188, 1188, 1189, 1189, 1189, 1189, 1189, 1190, 1190, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, - 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, - 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, - 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, - 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, - 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, - 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, - 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195 + 0, 521, 522, 522, 522, 522, 522, 522, 523, 523, + 524, 524, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 526, 526, 527, + 527, 528, 528, 529, 529, 529, 530, 531, 532, 532, + 532, 533, 533, 534, 534, 535, 535, 535, 535, 535, + 535, 535, 535, 535, 535, 535, 536, 536, 536, 536, + 536, 536, 537, 538, 538, 539, 539, 540, 540, 540, + 540, 541, 541, 541, 541, 541, 541, 542, 543, 544, + 544, 545, 545, 545, 545, 546, 546, 547, 547, 547, + 547, 547, 547, 548, 548, 548, 549, 549, 549, 550, + 550, 550, 550, 551, 551, 551, 551, 551, 551, 551, + 551, 551, 551, 551, 551, 551, 551, 552, 552, 553, + 553, 554, 554, 554, 555, 555, 555, 555, 556, 556, + 556, 556, 557, 557, 557, 557, 557, 557, 557, 557, + 558, 558, 558, 559, 559, 560, 561, 561, 561, 561, + 562, 562, 563, 563, 564, 564, 565, 565, 565, 565, + 565, 566, 567, 567, 568, 568, 569, 570, 570, 570, + 570, 570, 571, 571, 571, 571, 571, 571, 571, 571, + 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, + 571, 571, 571, 572, 572, 573, 573, 573, 574, 575, + 575, 575, 575, 575, 575, 575, 575, 575, 575, 575, + 575, 575, 575, 575, 575, 575, 575, 575, 575, 575, + 575, 575, 575, 575, 575, 575, 575, 575, 575, 575, + 575, 575, 575, 575, 575, 575, 575, 575, 575, 575, + 575, 575, 575, 575, 575, 575, 575, 575, 575, 575, + 575, 575, 575, 575, 575, 575, 575, 575, 575, 576, + 576, 577, 577, 578, 578, 579, 579, 579, 579, 580, + 581, 581, 582, 582, 583, 583, 583, 583, 584, 584, + 585, 585, 585, 585, 586, 586, 586, 586, 587, 588, + 588, 589, 590, 590, 591, 591, 591, 591, 592, 592, + 593, 593, 594, 594, 595, 595, 596, 596, 596, 597, + 597, 598, 598, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 600, 600, 601, 601, + 602, 602, 603, 603, 604, 605, 605, 605, 605, 605, + 606, 606, 607, 608, 608, 608, 608, 608, 608, 609, + 609, 609, 609, 609, 609, 609, 609, 610, 610, 611, + 611, 612, 612, 613, 613, 614, 614, 614, 615, 615, + 616, 617, 617, 618, 618, 619, 619, 620, 620, 621, + 621, 622, 622, 623, 623, 623, 623, 624, 624, 624, + 624, 624, 624, 624, 624, 624, 625, 625, 625, 626, + 626, 627, 627, 627, 627, 628, 629, 629, 629, 630, + 630, 630, 630, 630, 630, 630, 630, 630, 630, 631, + 631, 632, 632, 632, 632, 632, 632, 632, 633, 633, + 634, 634, 635, 635, 636, 637, 637, 638, 638, 638, + 638, 639, 639, 640, 640, 641, 641, 642, 642, 642, + 642, 642, 643, 644, 645, 645, 645, 645, 645, 646, + 646, 647, 647, 648, 649, 649, 650, 650, 650, 651, + 651, 652, 652, 652, 653, 653, 653, 653, 654, 654, + 655, 655, 656, 657, 657, 658, 658, 659, 659, 659, + 660, 660, 661, 661, 662, 663, 663, 663, 664, 664, + 665, 666, 666, 667, 668, 668, 669, 669, 670, 670, + 671, 671, 672, 672, 673, 673, 673, 673, 673, 673, + 673, 673, 673, 673, 673, 673, 673, 673, 674, 674, + 675, 675, 675, 675, 676, 676, 677, 677, 678, 678, + 679, 679, 680, 680, 681, 681, 682, 682, 683, 683, + 684, 685, 685, 686, 686, 687, 687, 688, 688, 689, + 689, 689, 689, 690, 691, 691, 692, 693, 693, 693, + 693, 693, 693, 693, 693, 693, 693, 693, 693, 693, + 694, 695, 695, 695, 695, 696, 696, 697, 697, 698, + 698, 699, 699, 700, 700, 701, 702, 702, 703, 703, + 703, 703, 704, 705, 706, 707, 707, 708, 708, 709, + 709, 710, 710, 711, 711, 711, 712, 712, 712, 712, + 713, 714, 714, 715, 715, 716, 716, 717, 717, 718, + 718, 719, 720, 721, 722, 722, 723, 723, 724, 724, + 725, 725, 726, 726, 727, 727, 728, 728, 728, 728, + 728, 729, 730, 730, 731, 731, 732, 732, 732, 733, + 733, 734, 734, 734, 734, 734, 735, 735, 736, 736, + 737, 738, 738, 739, 739, 740, 741, 741, 742, 742, + 743, 743, 744, 744, 745, 745, 746, 746, 746, 747, + 747, 747, 747, 748, 748, 749, 749, 750, 750, 750, + 750, 750, 750, 751, 751, 752, 752, 753, 754, 754, + 755, 756, 756, 756, 756, 757, 758, 758, 758, 758, + 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, + 758, 758, 759, 760, 760, 761, 761, 762, 762, 762, + 762, 762, 762, 763, 764, 764, 765, 766, 766, 767, + 767, 768, 768, 768, 768, 769, 769, 770, 771, 771, + 772, 772, 772, 772, 772, 773, 773, 774, 774, 775, + 775, 775, 776, 776, 777, 778, 778, 779, 779, 780, + 780, 781, 781, 782, 782, 783, 784, 785, 785, 785, + 785, 785, 785, 785, 785, 785, 785, 785, 785, 786, + 786, 786, 786, 786, 786, 786, 786, 786, 786, 786, + 786, 786, 787, 787, 787, 787, 787, 788, 788, 788, + 788, 788, 788, 788, 788, 789, 789, 789, 790, 790, + 791, 791, 792, 792, 793, 793, 794, 795, 795, 795, + 796, 796, 796, 796, 796, 796, 796, 796, 796, 796, + 796, 796, 796, 796, 796, 796, 796, 796, 797, 797, + 798, 798, 798, 798, 798, 798, 798, 798, 798, 798, + 799, 799, 800, 800, 801, 801, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 802, 802, 802, 802, 802, + 802, 802, 803, 803, 804, 804, 805, 806, 806, 807, + 807, 807, 807, 807, 808, 808, 809, 809, 809, 809, + 809, 810, 810, 811, 811, 812, 812, 812, 812, 812, + 812, 812, 812, 812, 812, 812, 812, 812, 812, 812, + 812, 812, 812, 812, 812, 812, 813, 813, 814, 814, + 815, 815, 816, 816, 817, 817, 818, 818, 819, 820, + 820, 820, 821, 821, 822, 823, 823, 824, 824, 824, + 825, 825, 825, 826, 826, 826, 826, 826, 826, 827, + 827, 828, 828, 829, 829, 830, 830, 831, 831, 832, + 832, 832, 833, 833, 834, 834, 835, 835, 836, 836, + 836, 837, 837, 837, 838, 838, 838, 838, 839, 839, + 840, 840, 841, 841, 842, 842, 843, 843, 843, 843, + 844, 844, 845, 845, 846, 846, 846, 846, 846, 847, + 847, 847, 847, 847, 848, 849, 850, 850, 850, 851, + 851, 851, 852, 853, 853, 853, 853, 854, 854, 855, + 856, 856, 857, 857, 858, 858, 859, 859, 859, 859, + 859, 859, 859, 859, 859, 859, 859, 859, 859, 859, + 859, 859, 859, 860, 860, 860, 860, 860, 861, 861, + 862, 863, 863, 863, 864, 864, 865, 865, 866, 866, + 867, 867, 868, 869, 869, 870, 870, 870, 871, 871, + 872, 872, 873, 873, 873, 873, 873, 873, 874, 874, + 875, 875, 876, 876, 876, 876, 877, 877, 878, 878, + 879, 880, 881, 881, 882, 882, 883, 883, 883, 884, + 884, 884, 885, 886, 886, 887, 888, 888, 888, 888, + 889, 890, 890, 890, 891, 891, 892, 892, 893, 893, + 894, 894, 895, 895, 895, 895, 895, 895, 895, 895, + 895, 895, 895, 895, 895, 895, 895, 895, 895, 895, + 895, 895, 895, 895, 895, 895, 895, 895, 895, 895, + 895, 895, 895, 895, 895, 895, 895, 895, 895, 895, + 895, 895, 895, 895, 895, 895, 895, 895, 895, 895, + 895, 895, 895, 895, 895, 895, 895, 896, 896, 897, + 897, 898, 898, 898, 898, 898, 898, 899, 899, 900, + 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, + 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, + 900, 900, 900, 900, 900, 900, 901, 902, 902, 903, + 903, 904, 904, 904, 904, 904, 905, 906, 906, 906, + 906, 906, 906, 906, 906, 906, 906, 906, 906, 906, + 906, 906, 906, 906, 906, 906, 906, 906, 906, 906, + 906, 907, 907, 907, 908, 908, 908, 908, 908, 908, + 908, 909, 909, 910, 910, 910, 910, 911, 912, 912, + 912, 912, 912, 912, 912, 912, 912, 913, 913, 914, + 915, 915, 915, 916, 916, 917, 917, 917, 917, 917, + 918, 918, 919, 919, 919, 919, 920, 920, 920, 921, + 922, 922, 923, 924, 924, 925, 925, 925, 925, 925, + 925, 925, 925, 925, 925, 925, 925, 926, 926, 927, + 927, 927, 928, 928, 928, 928, 928, 929, 929, 929, + 930, 930, 931, 931, 931, 932, 932, 932, 932, 933, + 933, 933, 933, 934, 935, 936, 936, 937, 937, 938, + 938, 938, 939, 939, 939, 939, 939, 939, 939, 940, + 940, 941, 941, 941, 941, 942, 943, 943, 943, 943, + 944, 944, 945, 946, 947, 947, 948, 949, 949, 949, + 949, 949, 949, 949, 950, 950, 951, 952, 952, 952, + 952, 952, 952, 953, 953, 954, 955, 955, 955, 955, + 956, 956, 957, 957, 958, 958, 959, 959, 960, 960, + 961, 962, 962, 962, 963, 963, 963, 964, 964, 965, + 965, 966, 966, 967, 967, 968, 968, 969, 970, 970, + 971, 971, 972, 972, 972, 972, 973, 973, 973, 973, + 973, 973, 973, 973, 973, 973, 974, 975, 975, 976, + 976, 976, 976, 976, 977, 977, 977, 978, 978, 979, + 979, 979, 979, 980, 981, 981, 982, 982, 982, 982, + 982, 983, 983, 984, 984, 985, 986, 986, 986, 987, + 987, 987, 988, 988, 989, 990, 990, 991, 992, 992, + 993, 993, 993, 993, 993, 993, 993, 993, 994, 994, + 995, 995, 995, 996, 997, 997, 998, 998, 999, 1000, + 1000, 1001, 1002, 1002, 1003, 1003, 1003, 1003, 1003, 1004, + 1004, 1005, 1006, 1007, 1007, 1007, 1007, 1007, 1008, 1009, + 1010, 1011, 1011, 1011, 1011, 1011, 1011, 1012, 1012, 1012, + 1013, 1013, 1014, 1014, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1016, 1016, 1017, 1017, 1017, 1017, 1017, 1017, + 1017, 1018, 1018, 1018, 1019, 1019, 1020, 1021, 1021, 1021, + 1022, 1022, 1022, 1023, 1023, 1023, 1024, 1024, 1025, 1025, + 1026, 1026, 1026, 1026, 1026, 1026, 1026, 1026, 1026, 1027, + 1027, 1028, 1028, 1028, 1029, 1029, 1030, 1030, 1031, 1031, + 1032, 1032, 1033, 1034, 1034, 1035, 1035, 1036, 1036, 1036, + 1036, 1037, 1037, 1038, 1038, 1038, 1038, 1038, 1038, 1039, + 1039, 1040, 1040, 1041, 1042, 1042, 1042, 1043, 1043, 1044, + 1044, 1045, 1045, 1046, 1046, 1047, 1047, 1048, 1048, 1048, + 1048, 1048, 1049, 1050, 1051, 1052, 1053, 1053, 1054, 1054, + 1055, 1055, 1056, 1056, 1057, 1058, 1058, 1058, 1058, 1059, + 1059, 1060, 1060, 1061, 1061, 1062, 1062, 1063, 1063, 1063, + 1063, 1063, 1063, 1063, 1063, 1063, 1063, 1064, 1064, 1064, + 1064, 1064, 1064, 1065, 1065, 1065, 1065, 1066, 1066, 1067, + 1067, 1068, 1068, 1068, 1068, 1068, 1069, 1069, 1069, 1069, + 1070, 1070, 1071, 1071, 1072, 1072, 1073, 1073, 1073, 1074, + 1074, 1075, 1075, 1075, 1076, 1077, 1077, 1078, 1078, 1079, + 1080, 1080, 1081, 1081, 1082, 1082, 1083, 1083, 1084, 1084, + 1084, 1085, 1085, 1086, 1086, 1087, 1088, 1088, 1089, 1089, + 1090, 1090, 1090, 1091, 1091, 1092, 1092, 1092, 1092, 1093, + 1093, 1094, 1094, 1095, 1095, 1095, 1095, 1095, 1095, 1096, + 1096, 1096, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1098, + 1098, 1098, 1098, 1099, 1099, 1100, 1100, 1101, 1101, 1101, + 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1102, 1102, + 1103, 1103, 1104, 1104, 1105, 1106, 1107, 1107, 1108, 1108, + 1109, 1110, 1111, 1111, 1111, 1111, 1111, 1111, 1112, 1112, + 1113, 1113, 1113, 1113, 1114, 1115, 1115, 1115, 1116, 1116, + 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, + 1116, 1116, 1117, 1117, 1118, 1118, 1118, 1118, 1118, 1118, + 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, + 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, + 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, + 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, + 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, + 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, + 1118, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, + 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, + 1119, 1119, 1119, 1120, 1120, 1120, 1120, 1120, 1120, 1120, + 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1121, 1121, 1121, + 1121, 1121, 1121, 1121, 1122, 1122, 1122, 1123, 1123, 1123, + 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, + 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, + 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, + 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, + 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, + 1124, 1124, 1124, 1125, 1125, 1126, 1126, 1126, 1126, 1127, + 1128, 1128, 1129, 1129, 1130, 1130, 1131, 1131, 1131, 1132, + 1132, 1132, 1133, 1133, 1133, 1133, 1134, 1134, 1135, 1135, + 1136, 1136, 1137, 1137, 1138, 1138, 1139, 1140, 1140, 1140, + 1141, 1142, 1142, 1143, 1143, 1144, 1144, 1144, 1144, 1145, + 1145, 1146, 1146, 1146, 1146, 1146, 1147, 1147, 1147, 1147, + 1147, 1148, 1148, 1148, 1149, 1149, 1150, 1151, 1151, 1151, + 1152, 1152, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, + 1153, 1153, 1153, 1153, 1154, 1154, 1155, 1155, 1156, 1156, + 1156, 1156, 1156, 1156, 1157, 1157, 1158, 1158, 1159, 1159, + 1159, 1160, 1160, 1161, 1161, 1162, 1162, 1162, 1163, 1163, + 1164, 1164, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, + 1166, 1166, 1166, 1166, 1167, 1167, 1168, 1169, 1169, 1169, + 1169, 1169, 1170, 1170, 1170, 1171, 1171, 1172, 1173, 1173, + 1174, 1175, 1175, 1176, 1176, 1177, 1177, 1178, 1178, 1178, + 1178, 1179, 1179, 1180, 1180, 1181, 1181, 1182, 1182, 1183, + 1184, 1184, 1185, 1185, 1186, 1186, 1187, 1187, 1187, 1187, + 1187, 1188, 1188, 1188, 1188, 1188, 1189, 1189, 1190, 1190, + 1191, 1191, 1191, 1192, 1192, 1192, 1193, 1193, 1194, 1194, + 1195, 1195, 1196, 1196, 1197, 1197, 1198, 1198, 1198, 1198, + 1199, 1199, 1200, 1200, 1201, 1201, 1202, 1203, 1204, 1205, + 1205, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1207, + 1208, 1209, 1209, 1209, 1210, 1211, 1211, 1211, 1211, 1212, + 1212, 1213, 1214, 1215, 1215, 1216, 1216, 1217, 1217, 1217, + 1218, 1218, 1218, 1219, 1219, 1219, 1219, 1220, 1220, 1220, + 1220, 1220, 1221, 1221, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1223, + 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, + 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, + 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, + 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, + 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, + 1223, 1223, 1223, 1223, 1224, 1224, 1224, 1224, 1224, 1224, + 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, + 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1225, 1225, 1225, + 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, + 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, + 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, + 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, + 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, + 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, + 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, + 1225, 1225, 1225, 1225, 1225, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1226, 1226 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -4225,225 +4312,232 @@ static const yytype_uint8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 0, 2, 5, 1, - 1, 0, 2, 0, 2, 0, 2, 2, 2, 3, - 3, 3, 1, 3, 3, 2, 1, 1, 2, 2, - 2, 3, 3, 5, 5, 5, 0, 3, 5, 5, - 5, 5, 3, 5, 3, 5, 3, 5, 5, 6, - 1, 1, 6, 4, 9, 7, 1, 0, 2, 0, - 1, 1, 1, 1, 1, 1, 2, 3, 3, 2, - 5, 1, 3, 3, 3, 3, 1, 3, 3, 2, - 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, - 1, 3, 1, 3, 1, 1, 1, 2, 2, 2, - 1, 1, 1, 1, 1, 1, 1, 1, 3, 5, - 1, 1, 1, 1, 1, 0, 1, 1, 2, 1, - 2, 3, 2, 1, 1, 2, 1, 2, 1, 2, - 3, 4, 3, 2, 4, 1, 1, 1, 1, 1, - 2, 2, 2, 2, 2, 4, 6, 4, 6, 10, - 13, 4, 6, 4, 10, 13, 4, 6, 4, 6, - 5, 7, 11, 14, 5, 7, 1, 3, 4, 4, - 4, 3, 2, 5, 3, 6, 4, 6, 6, 5, - 7, 6, 6, 5, 5, 6, 5, 9, 4, 5, - 7, 6, 4, 8, 4, 2, 4, 3, 6, 4, - 3, 3, 3, 2, 2, 3, 4, 4, 3, 3, - 3, 3, 3, 3, 4, 4, 3, 2, 3, 2, - 2, 3, 4, 3, 2, 2, 3, 4, 4, 4, - 5, 1, 3, 2, 1, 1, 0, 2, 0, 2, - 0, 1, 1, 1, 3, 3, 2, 0, 1, 3, - 3, 1, 5, 3, 1, 2, 1, 3, 2, 3, - 6, 6, 10, 1, 2, 1, 3, 4, 1, 3, - 4, 6, 4, 8, 2, 2, 11, 9, 1, 1, - 1, 0, 1, 1, 1, 1, 3, 2, 0, 1, - 1, 3, 3, 1, 1, 3, 3, 3, 3, 4, - 3, 2, 1, 0, 3, 0, 1, 0, 1, 3, - 2, 1, 1, 1, 3, 0, 1, 3, 1, 13, - 16, 12, 15, 14, 17, 1, 1, 2, 2, 2, - 2, 1, 0, 1, 0, 3, 0, 1, 3, 1, - 3, 1, 1, 1, 1, 1, 5, 2, 4, 2, - 2, 1, 0, 2, 0, 3, 1, 1, 2, 2, - 1, 4, 4, 5, 2, 5, 7, 5, 2, 3, - 0, 1, 2, 1, 2, 2, 2, 3, 3, 3, - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 3, 1, 5, 9, 3, 9, 4, 10, 11, - 2, 0, 3, 0, 1, 3, 1, 4, 0, 2, - 2, 2, 0, 1, 3, 3, 6, 4, 0, 1, - 1, 2, 2, 0, 3, 3, 2, 1, 1, 3, - 3, 4, 0, 1, 0, 6, 1, 3, 3, 3, - 5, 2, 0, 2, 2, 0, 3, 4, 4, 0, - 2, 0, 4, 0, 3, 8, 11, 1, 3, 1, - 1, 3, 6, 8, 7, 10, 6, 2, 3, 0, - 8, 11, 5, 1, 0, 6, 5, 8, 4, 6, - 1, 0, 3, 0, 1, 2, 2, 2, 1, 2, - 3, 2, 2, 2, 2, 3, 3, 3, 1, 3, - 1, 0, 1, 2, 2, 1, 1, 3, 6, 10, - 1, 0, 1, 2, 2, 0, 2, 2, 1, 0, - 1, 0, 7, 2, 0, 3, 5, 5, 8, 2, - 0, 2, 2, 2, 1, 5, 2, 0, 2, 6, - 6, 6, 10, 6, 6, 6, 9, 9, 6, 6, - 9, 6, 7, 2, 2, 2, 2, 1, 2, 1, - 0, 7, 6, 4, 0, 1, 3, 4, 1, 3, - 1, 2, 2, 2, 2, 1, 1, 10, 13, 2, - 0, 2, 2, 1, 0, 5, 4, 4, 11, 14, - 12, 15, 11, 2, 1, 4, 0, 8, 11, 1, - 1, 7, 9, 8, 10, 8, 4, 0, 5, 0, - 2, 0, 2, 0, 2, 0, 2, 0, 1, 1, - 1, 1, 1, 8, 1, 1, 17, 21, 1, 1, - 2, 1, 3, 1, 1, 1, 3, 1, 2, 0, - 1, 2, 4, 1, 1, 1, 1, 1, 3, 0, - 1, 0, 1, 1, 4, 0, 1, 1, 1, 3, - 0, 1, 1, 1, 1, 2, 0, 0, 2, 2, - 1, 2, 2, 2, 2, 11, 13, 1, 3, 5, - 1, 3, 5, 1, 2, 2, 1, 8, 6, 5, - 4, 4, 3, 7, 8, 6, 6, 6, 6, 6, - 4, 7, 5, 8, 3, 1, 3, 3, 1, 1, - 1, 1, 1, 1, 1, 3, 1, 3, 3, 1, - 0, 1, 3, 7, 9, 9, 8, 3, 0, 13, - 1, 3, 5, 5, 3, 6, 2, 1, 0, 2, - 0, 2, 4, 0, 1, 0, 6, 8, 8, 1, - 3, 5, 5, 7, 9, 7, 9, 5, 6, 6, - 4, 6, 4, 6, 8, 4, 6, 4, 6, 5, - 7, 1, 1, 1, 2, 1, 2, 1, 1, 1, - 3, 3, 3, 3, 1, 1, 1, 1, 1, 2, - 2, 1, 3, 2, 1, 1, 1, 1, 1, 1, - 1, 3, 1, 2, 2, 3, 1, 3, 5, 2, - 2, 0, 6, 6, 6, 6, 6, 6, 6, 6, - 8, 9, 8, 6, 6, 9, 9, 9, 7, 10, - 1, 1, 8, 8, 8, 8, 8, 8, 8, 9, - 8, 8, 2, 0, 1, 1, 2, 2, 1, 2, - 3, 3, 3, 3, 4, 4, 3, 3, 3, 4, - 4, 3, 4, 4, 1, 1, 1, 0, 8, 8, - 11, 1, 1, 2, 4, 5, 1, 3, 2, 2, - 2, 2, 2, 1, 3, 1, 3, 1, 2, 2, - 4, 3, 2, 2, 2, 2, 2, 2, 3, 2, - 2, 2, 2, 5, 5, 5, 5, 5, 1, 3, - 1, 2, 3, 0, 6, 6, 9, 3, 0, 3, - 0, 5, 2, 0, 3, 3, 3, 7, 7, 10, - 1, 1, 1, 1, 1, 1, 16, 19, 1, 0, - 1, 0, 1, 0, 2, 0, 1, 3, 4, 5, - 2, 2, 4, 4, 0, 1, 3, 2, 0, 1, - 0, 1, 1, 0, 2, 2, 0, 9, 12, 7, - 7, 2, 0, 3, 2, 1, 3, 1, 3, 2, - 1, 1, 2, 3, 2, 1, 3, 3, 3, 2, - 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, - 4, 5, 1, 3, 3, 1, 3, 3, 5, 6, - 1, 3, 2, 1, 3, 1, 0, 1, 2, 4, - 5, 1, 1, 1, 1, 3, 3, 2, 2, 1, - 2, 2, 2, 2, 1, 2, 2, 2, 2, 1, - 1, 1, 3, 2, 1, 4, 0, 3, 0, 1, - 1, 3, 5, 2, 0, 2, 1, 3, 5, 5, - 5, 1, 2, 1, 0, 4, 6, 4, 6, 4, - 6, 4, 6, 4, 6, 3, 5, 5, 5, 1, - 3, 1, 3, 2, 2, 1, 2, 1, 2, 11, - 10, 10, 2, 2, 0, 9, 2, 0, 10, 11, - 11, 5, 5, 8, 4, 4, 7, 7, 1, 1, - 1, 1, 1, 5, 5, 6, 6, 6, 6, 6, - 8, 8, 6, 6, 7, 9, 9, 8, 10, 6, - 6, 6, 6, 6, 6, 6, 8, 6, 8, 6, - 8, 7, 9, 6, 8, 7, 9, 8, 10, 8, - 10, 9, 11, 8, 10, 9, 11, 8, 8, 7, - 6, 6, 6, 6, 8, 8, 8, 8, 6, 9, - 1, 0, 2, 0, 8, 8, 8, 10, 9, 8, - 1, 0, 6, 6, 6, 6, 6, 6, 6, 9, - 9, 6, 6, 6, 8, 6, 8, 8, 8, 8, - 6, 8, 6, 8, 7, 9, 7, 9, 6, 7, - 1, 3, 3, 3, 1, 1, 1, 1, 1, 7, - 6, 6, 6, 6, 6, 6, 7, 7, 6, 9, - 9, 6, 6, 6, 6, 6, 6, 8, 8, 8, - 6, 7, 6, 6, 4, 7, 6, 4, 4, 4, - 3, 4, 3, 1, 1, 3, 5, 5, 5, 5, - 8, 5, 5, 6, 7, 7, 7, 4, 4, 5, - 4, 6, 13, 1, 1, 3, 3, 1, 1, 1, - 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, - 1, 0, 3, 2, 0, 2, 2, 2, 3, 3, - 3, 3, 2, 3, 2, 5, 4, 3, 3, 3, - 3, 3, 1, 1, 0, 3, 2, 2, 1, 2, - 1, 3, 2, 1, 0, 2, 3, 0, 9, 11, - 12, 14, 3, 4, 4, 0, 2, 5, 1, 0, - 1, 2, 3, 3, 3, 1, 2, 1, 1, 1, - 1, 1, 1, 0, 5, 4, 6, 6, 4, 3, - 5, 7, 9, 1, 3, 1, 5, 4, 4, 6, - 4, 6, 6, 5, 7, 9, 6, 1, 0, 6, - 11, 11, 11, 13, 9, 11, 1, 1, 10, 4, - 6, 2, 5, 2, 0, 6, 5, 3, 5, 1, - 3, 1, 1, 2, 1, 1, 1, 1, 0, 1, - 0, 1, 0, 1, 0, 1, 0, 3, 0, 2, - 1, 3, 1, 0, 2, 4, 3, 5, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 5, 3, - 0, 1, 1, 1, 1, 1, 3, 9, 12, 3, - 0, 2, 3, 2, 3, 7, 1, 3, 1, 4, - 4, 7, 2, 1, 1, 1, 3, 2, 8, 5, - 0, 4, 3, 0, 2, 0, 7, 2, 0, 5, - 3, 0, 2, 2, 2, 3, 1, 3, 1, 2, - 1, 0, 1, 2, 0, 8, 1, 3, 3, 5, - 2, 1, 3, 9, 1, 2, 5, 5, 6, 6, - 7, 2, 0, 3, 1, 2, 5, 5, 8, 3, - 4, 7, 1, 0, 3, 2, 2, 2, 2, 0, - 2, 2, 1, 1, 3, 3, 1, 2, 4, 4, - 2, 3, 5, 5, 1, 1, 9, 9, 1, 2, - 4, 4, 4, 2, 2, 3, 1, 3, 9, 1, - 2, 0, 7, 7, 0, 10, 6, 0, 1, 0, - 2, 0, 3, 3, 4, 4, 4, 4, 3, 2, - 1, 1, 0, 1, 1, 0, 1, 5, 1, 0, - 1, 1, 1, 0, 3, 1, 3, 4, 3, 2, - 2, 1, 1, 1, 0, 2, 4, 5, 6, 4, - 5, 2, 3, 1, 1, 1, 1, 2, 2, 1, - 1, 1, 1, 1, 1, 4, 0, 1, 3, 1, - 1, 1, 1, 1, 2, 4, 4, 5, 2, 0, - 1, 3, 1, 0, 1, 2, 3, 2, 4, 2, - 3, 2, 0, 4, 5, 2, 0, 1, 3, 2, - 3, 2, 3, 2, 3, 2, 3, 1, 4, 3, - 4, 5, 4, 5, 4, 5, 2, 4, 1, 1, - 0, 2, 0, 1, 4, 5, 4, 0, 2, 2, - 2, 1, 1, 0, 5, 2, 1, 1, 2, 2, - 4, 1, 3, 1, 2, 3, 6, 4, 0, 2, - 6, 2, 1, 3, 4, 0, 2, 0, 2, 0, - 2, 4, 0, 1, 0, 1, 3, 3, 7, 12, - 1, 3, 2, 3, 3, 1, 2, 2, 2, 2, - 1, 1, 3, 3, 2, 2, 3, 5, 6, 2, - 3, 3, 4, 0, 1, 1, 1, 1, 1, 2, - 4, 1, 1, 1, 1, 2, 3, 3, 0, 1, - 1, 1, 1, 1, 2, 2, 2, 2, 2, 1, - 3, 0, 1, 1, 1, 1, 5, 2, 1, 1, - 1, 1, 4, 1, 2, 2, 1, 3, 3, 2, - 1, 0, 5, 2, 5, 2, 1, 3, 3, 0, - 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, - 3, 3, 3, 0, 1, 4, 1, 3, 3, 5, - 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 2, 3, 3, 2, 2, - 3, 5, 4, 6, 3, 5, 4, 6, 4, 6, - 5, 7, 3, 2, 4, 2, 3, 3, 4, 3, - 4, 3, 4, 5, 6, 6, 7, 6, 7, 3, - 4, 4, 6, 3, 3, 4, 3, 4, 4, 5, + 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 1, 0, 2, 5, 1, 1, + 0, 2, 0, 2, 0, 2, 2, 2, 3, 3, + 3, 1, 3, 3, 2, 1, 1, 2, 2, 2, + 3, 3, 5, 5, 5, 0, 3, 5, 5, 5, + 5, 3, 5, 3, 5, 3, 5, 5, 6, 1, + 1, 6, 4, 9, 7, 2, 0, 1, 1, 1, + 1, 1, 1, 2, 3, 3, 2, 5, 1, 3, + 3, 3, 3, 1, 3, 3, 2, 2, 2, 2, + 2, 2, 3, 3, 3, 3, 3, 1, 3, 1, + 3, 1, 1, 1, 2, 2, 2, 1, 1, 1, + 1, 1, 1, 1, 1, 3, 5, 1, 1, 1, + 1, 1, 0, 1, 1, 2, 1, 2, 3, 2, + 1, 1, 2, 1, 2, 1, 2, 3, 4, 3, + 2, 4, 1, 1, 1, 1, 1, 2, 2, 2, + 2, 2, 4, 6, 4, 6, 10, 13, 4, 6, + 4, 10, 13, 4, 6, 4, 6, 5, 7, 11, + 14, 5, 7, 1, 3, 4, 4, 4, 3, 2, + 5, 3, 6, 4, 6, 6, 5, 7, 6, 6, + 5, 5, 5, 5, 9, 4, 5, 7, 6, 4, + 8, 4, 2, 4, 3, 6, 4, 3, 3, 3, + 2, 2, 3, 4, 4, 3, 3, 3, 3, 3, + 3, 4, 4, 3, 2, 3, 2, 2, 3, 4, + 3, 2, 2, 3, 4, 4, 4, 5, 1, 3, + 2, 2, 0, 2, 0, 1, 1, 1, 3, 3, + 2, 0, 1, 3, 3, 1, 5, 3, 1, 2, + 1, 3, 2, 3, 6, 6, 10, 1, 2, 1, + 3, 4, 1, 3, 4, 6, 4, 8, 2, 2, + 11, 9, 1, 1, 1, 0, 1, 1, 1, 1, + 3, 2, 0, 1, 1, 3, 3, 1, 1, 3, + 3, 3, 3, 4, 3, 2, 1, 0, 3, 0, + 1, 0, 1, 3, 2, 1, 1, 1, 3, 0, + 1, 3, 1, 13, 16, 12, 15, 14, 17, 1, + 1, 2, 2, 2, 2, 1, 0, 1, 0, 3, + 0, 1, 3, 1, 3, 1, 1, 1, 1, 1, + 6, 2, 4, 2, 2, 1, 0, 2, 2, 1, + 0, 2, 0, 3, 1, 1, 2, 2, 1, 4, + 4, 5, 2, 5, 7, 5, 2, 3, 0, 1, + 2, 1, 2, 2, 2, 3, 3, 3, 0, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, + 1, 5, 9, 3, 9, 4, 10, 11, 2, 0, + 3, 0, 1, 3, 1, 4, 0, 2, 2, 2, + 0, 1, 3, 3, 6, 4, 0, 1, 1, 2, + 2, 0, 3, 3, 2, 1, 1, 3, 3, 4, + 0, 1, 0, 6, 1, 3, 3, 3, 5, 2, + 0, 2, 2, 0, 3, 4, 4, 0, 2, 0, + 4, 0, 3, 8, 11, 1, 3, 1, 1, 3, + 6, 8, 7, 10, 6, 2, 3, 0, 8, 11, + 5, 1, 0, 6, 5, 8, 4, 6, 1, 0, + 3, 0, 1, 2, 2, 2, 1, 2, 3, 2, + 2, 2, 2, 3, 3, 3, 1, 3, 1, 0, + 1, 2, 2, 1, 1, 3, 6, 10, 1, 0, + 1, 2, 2, 0, 2, 2, 1, 0, 1, 0, + 7, 2, 0, 3, 5, 5, 8, 2, 0, 2, + 2, 2, 1, 5, 2, 0, 2, 6, 6, 6, + 10, 6, 6, 6, 9, 9, 6, 6, 9, 6, + 7, 2, 2, 2, 2, 1, 2, 1, 0, 7, + 6, 4, 0, 1, 3, 4, 1, 3, 1, 2, + 2, 2, 2, 1, 1, 10, 13, 2, 0, 2, + 2, 1, 0, 5, 4, 4, 11, 14, 12, 15, + 11, 2, 1, 4, 0, 8, 11, 1, 1, 7, + 9, 8, 10, 8, 4, 0, 5, 0, 2, 0, + 2, 0, 2, 0, 2, 0, 1, 1, 1, 1, + 1, 8, 1, 1, 17, 21, 1, 1, 2, 1, + 3, 1, 1, 1, 3, 1, 2, 0, 1, 2, + 4, 1, 1, 1, 1, 1, 3, 0, 1, 0, + 1, 1, 4, 0, 1, 1, 1, 3, 0, 1, + 1, 1, 1, 2, 0, 0, 2, 2, 1, 2, + 2, 2, 2, 11, 13, 1, 3, 5, 1, 3, + 5, 1, 2, 2, 1, 8, 6, 5, 4, 4, + 3, 7, 8, 6, 6, 6, 6, 6, 4, 7, + 5, 8, 3, 1, 3, 3, 1, 1, 1, 1, + 1, 1, 1, 3, 1, 3, 3, 1, 0, 1, + 3, 7, 9, 9, 8, 3, 0, 13, 1, 3, + 5, 5, 3, 6, 2, 1, 0, 2, 0, 2, + 4, 0, 1, 0, 6, 8, 8, 1, 3, 5, + 5, 7, 9, 7, 9, 5, 6, 6, 4, 6, + 4, 6, 8, 4, 6, 4, 6, 5, 7, 1, + 1, 1, 2, 1, 2, 1, 1, 1, 3, 3, + 3, 3, 1, 1, 1, 1, 1, 2, 2, 1, + 3, 2, 1, 1, 1, 1, 1, 1, 1, 3, + 1, 2, 2, 3, 1, 3, 5, 2, 2, 0, + 6, 6, 6, 6, 6, 6, 6, 6, 8, 9, + 8, 6, 6, 9, 9, 9, 7, 10, 1, 1, + 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, + 2, 0, 1, 1, 2, 2, 1, 2, 3, 3, + 3, 3, 4, 4, 3, 3, 3, 4, 4, 3, + 4, 4, 1, 1, 1, 0, 8, 8, 11, 1, + 1, 2, 4, 5, 1, 3, 2, 2, 2, 2, + 2, 1, 3, 1, 3, 1, 2, 2, 4, 3, + 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, + 2, 5, 5, 5, 5, 5, 1, 3, 1, 2, + 3, 0, 5, 7, 6, 9, 3, 1, 2, 1, + 1, 1, 3, 0, 5, 2, 0, 3, 3, 3, + 7, 7, 10, 1, 1, 1, 1, 1, 1, 16, + 19, 1, 0, 2, 0, 1, 3, 4, 5, 2, + 2, 4, 4, 0, 1, 3, 2, 0, 1, 1, + 0, 2, 2, 0, 9, 12, 7, 7, 2, 0, + 3, 2, 1, 3, 1, 3, 2, 1, 1, 2, + 3, 2, 1, 3, 3, 3, 2, 2, 1, 1, + 1, 1, 2, 1, 1, 1, 1, 4, 5, 1, + 3, 3, 1, 3, 3, 5, 6, 1, 3, 2, + 1, 3, 1, 0, 1, 2, 4, 5, 1, 1, + 1, 1, 3, 3, 2, 2, 1, 2, 2, 2, + 2, 1, 2, 2, 2, 2, 1, 1, 1, 3, + 2, 1, 4, 0, 3, 0, 1, 1, 3, 5, + 2, 0, 2, 1, 3, 5, 5, 5, 1, 2, + 1, 0, 4, 6, 4, 6, 4, 6, 4, 6, + 4, 6, 3, 5, 5, 5, 1, 3, 1, 3, + 2, 2, 1, 2, 1, 2, 11, 10, 10, 2, + 2, 0, 9, 2, 0, 10, 11, 11, 5, 5, + 8, 5, 5, 5, 1, 1, 1, 1, 3, 0, + 5, 5, 6, 6, 6, 6, 6, 8, 8, 6, + 6, 7, 9, 9, 8, 10, 6, 6, 6, 6, + 6, 6, 6, 8, 6, 8, 6, 8, 7, 9, + 6, 8, 7, 9, 8, 10, 8, 10, 9, 11, + 8, 10, 9, 11, 8, 8, 7, 6, 6, 6, + 6, 8, 8, 8, 8, 6, 9, 1, 0, 2, + 0, 8, 8, 8, 10, 9, 8, 1, 0, 6, + 6, 6, 6, 6, 6, 6, 9, 9, 6, 6, + 6, 8, 6, 8, 8, 8, 8, 6, 8, 6, + 8, 7, 9, 7, 9, 6, 7, 1, 3, 3, + 3, 1, 1, 1, 1, 1, 7, 6, 6, 6, + 6, 6, 6, 7, 7, 6, 9, 9, 6, 6, + 6, 6, 6, 6, 8, 8, 8, 6, 7, 6, + 6, 4, 7, 6, 4, 4, 4, 3, 4, 3, + 1, 1, 3, 5, 5, 5, 5, 8, 5, 5, + 6, 7, 7, 7, 4, 4, 5, 4, 6, 13, + 1, 1, 3, 3, 1, 1, 1, 1, 1, 1, + 1, 0, 1, 1, 1, 1, 1, 1, 0, 3, + 2, 0, 2, 2, 2, 3, 3, 3, 3, 2, + 3, 2, 5, 4, 3, 3, 3, 3, 3, 1, + 1, 0, 3, 2, 2, 1, 2, 1, 3, 2, + 1, 0, 2, 3, 0, 9, 11, 12, 14, 3, + 4, 4, 0, 2, 5, 1, 0, 1, 2, 3, + 3, 3, 1, 2, 1, 1, 1, 1, 1, 1, + 0, 5, 4, 6, 6, 4, 3, 5, 7, 9, + 1, 3, 1, 5, 4, 4, 6, 4, 6, 6, + 5, 7, 9, 6, 1, 0, 6, 11, 11, 11, + 13, 9, 11, 1, 1, 10, 4, 6, 2, 5, + 2, 0, 6, 5, 3, 5, 1, 3, 1, 1, + 2, 1, 1, 1, 1, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 0, 3, 0, 2, 1, 3, + 1, 0, 2, 4, 3, 5, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 5, 3, 0, 1, + 1, 1, 1, 1, 3, 9, 12, 3, 0, 2, + 3, 2, 3, 7, 1, 3, 1, 4, 4, 7, + 2, 1, 1, 1, 3, 2, 8, 5, 0, 4, + 3, 0, 2, 0, 7, 2, 0, 5, 3, 0, + 2, 2, 2, 3, 1, 3, 1, 2, 1, 0, + 1, 2, 0, 8, 1, 3, 3, 5, 2, 1, + 3, 9, 1, 2, 5, 5, 6, 6, 7, 2, + 0, 3, 1, 2, 5, 5, 8, 3, 4, 7, + 1, 0, 3, 2, 2, 2, 2, 0, 2, 2, + 1, 1, 3, 3, 1, 2, 4, 4, 2, 3, + 5, 5, 1, 1, 9, 9, 1, 2, 4, 4, + 4, 2, 2, 3, 1, 3, 9, 1, 2, 0, + 7, 7, 0, 10, 6, 0, 1, 0, 2, 0, + 3, 3, 4, 4, 4, 4, 3, 2, 1, 1, + 0, 1, 1, 0, 1, 5, 1, 0, 1, 1, + 1, 0, 3, 1, 3, 4, 3, 2, 2, 1, + 1, 1, 0, 2, 4, 5, 6, 4, 5, 2, + 3, 1, 1, 1, 1, 2, 2, 1, 1, 1, + 1, 1, 1, 4, 0, 1, 3, 1, 1, 1, + 1, 1, 2, 4, 4, 5, 2, 0, 1, 3, + 1, 0, 1, 2, 3, 2, 4, 2, 3, 2, + 0, 4, 5, 2, 0, 1, 3, 2, 3, 2, + 3, 2, 3, 2, 3, 1, 4, 3, 4, 5, + 4, 5, 4, 5, 2, 4, 1, 1, 0, 2, + 0, 1, 4, 5, 4, 0, 2, 2, 2, 1, + 1, 0, 5, 2, 1, 1, 2, 2, 4, 1, + 3, 1, 2, 3, 6, 4, 0, 2, 6, 2, + 1, 3, 4, 0, 2, 0, 2, 0, 2, 4, + 0, 1, 0, 1, 3, 3, 7, 12, 1, 3, + 2, 3, 3, 1, 2, 2, 2, 2, 1, 1, + 3, 3, 2, 2, 3, 5, 6, 2, 3, 3, + 4, 0, 1, 1, 1, 1, 1, 2, 4, 1, + 1, 1, 1, 2, 3, 3, 0, 1, 1, 1, + 1, 1, 2, 2, 2, 2, 2, 1, 3, 0, + 1, 1, 1, 1, 5, 2, 1, 1, 1, 1, + 4, 1, 2, 2, 1, 3, 3, 2, 1, 0, + 5, 2, 5, 2, 1, 3, 3, 0, 1, 1, + 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, + 3, 0, 1, 4, 1, 3, 3, 5, 2, 2, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 2, 3, 3, 2, 2, 3, 5, + 4, 6, 3, 5, 4, 6, 4, 6, 5, 7, + 3, 2, 4, 2, 3, 3, 4, 3, 4, 3, + 4, 5, 6, 6, 7, 6, 7, 3, 4, 4, + 6, 3, 3, 4, 3, 4, 4, 5, 4, 5, 1, 1, 3, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 5, 6, 3, 4, 1, 1, 2, 4, 1, 1, 1, 2, 2, 2, 2, 1, 1, 4, 3, 5, 6, - 8, 6, 6, 4, 4, 1, 1, 1, 5, 1, - 1, 4, 1, 4, 1, 4, 1, 4, 1, 1, - 1, 1, 1, 1, 6, 4, 4, 6, 4, 4, - 4, 4, 4, 6, 5, 5, 5, 4, 6, 4, - 4, 4, 4, 5, 7, 7, 9, 5, 4, 6, - 5, 7, 7, 7, 2, 3, 3, 3, 4, 0, - 4, 1, 3, 3, 1, 1, 1, 2, 2, 0, - 2, 3, 3, 4, 2, 2, 5, 0, 5, 0, - 2, 0, 1, 3, 3, 2, 2, 0, 6, 1, - 0, 3, 0, 3, 3, 3, 0, 1, 4, 2, - 2, 2, 2, 2, 3, 2, 2, 3, 0, 4, - 3, 5, 4, 3, 5, 1, 1, 1, 1, 1, + 8, 6, 6, 4, 4, 3, 1, 1, 1, 1, + 5, 1, 1, 4, 1, 4, 1, 4, 1, 4, + 1, 1, 1, 1, 1, 1, 1, 6, 4, 4, + 6, 4, 4, 4, 4, 4, 6, 5, 5, 5, + 4, 6, 4, 4, 4, 4, 5, 7, 7, 9, + 5, 4, 6, 5, 7, 7, 8, 4, 7, 4, + 6, 6, 4, 2, 3, 3, 3, 4, 0, 4, + 1, 3, 3, 1, 1, 1, 1, 2, 0, 2, + 2, 0, 2, 3, 3, 4, 2, 2, 5, 0, + 5, 0, 2, 0, 1, 3, 3, 2, 2, 0, + 6, 1, 0, 3, 0, 3, 3, 3, 0, 1, + 4, 2, 2, 2, 2, 2, 3, 2, 2, 3, + 0, 4, 3, 5, 4, 3, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 4, 1, 4, 1, 4, 1, 2, - 1, 2, 1, 3, 1, 3, 1, 3, 3, 1, - 0, 1, 3, 3, 3, 2, 1, 3, 3, 3, + 1, 1, 1, 1, 1, 4, 1, 4, 1, 4, + 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, + 3, 1, 0, 1, 3, 3, 3, 2, 1, 3, + 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 7, 5, 3, 5, 5, 3, + 3, 5, 3, 2, 1, 1, 3, 5, 1, 2, + 4, 2, 0, 1, 0, 1, 2, 2, 2, 3, + 5, 1, 0, 1, 2, 0, 2, 1, 0, 2, + 3, 0, 2, 0, 3, 0, 1, 2, 2, 2, + 2, 3, 2, 3, 2, 0, 1, 3, 3, 3, + 3, 3, 0, 3, 3, 0, 1, 3, 7, 7, + 3, 0, 1, 0, 1, 3, 3, 2, 1, 1, + 1, 3, 1, 2, 1, 3, 1, 1, 1, 1, + 2, 1, 1, 1, 1, 1, 2, 6, 2, 6, + 2, 3, 5, 2, 3, 5, 1, 1, 1, 1, + 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, + 3, 10, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 7, 5, 3, 5, 5, 3, 3, 5, - 3, 2, 1, 1, 3, 5, 1, 2, 4, 2, - 0, 1, 0, 1, 2, 2, 2, 3, 5, 1, - 0, 1, 2, 0, 2, 1, 0, 1, 0, 1, - 3, 3, 2, 1, 1, 1, 3, 1, 2, 1, - 3, 1, 1, 1, 1, 2, 1, 1, 1, 1, - 1, 2, 6, 2, 6, 2, 3, 5, 2, 3, - 5, 1, 1, 1, 1, 1, 1, 2, 2, 1, - 1, 1, 1, 1, 1, 3, 10, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -4533,7 +4627,8 @@ static const yytype_uint8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -4541,12 +4636,12 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 1699, 1444, 651, 1532, 1531, 1444, 0, 269, 0, 1542, - 0, 1444, 433, 1102, 0, 0, 0, 0, 651, 1444, - 0, 1699, 0, 0, 0, 0, 0, 1712, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1444, 0, 0, - 1719, 0, 0, 0, 0, 1712, 0, 1544, 0, 0, - 0, 0, 1719, 0, 0, 0, 0, 0, 2, 9, + 1707, 1451, 659, 1539, 1538, 1451, 0, 276, 0, 1550, + 0, 1451, 437, 1109, 0, 0, 0, 0, 659, 1451, + 0, 1707, 0, 0, 0, 0, 0, 1720, 0, 0, + 0, 0, 0, 1249, 0, 0, 0, 1451, 0, 0, + 1727, 0, 0, 0, 0, 1720, 0, 1552, 0, 0, + 0, 0, 1727, 0, 0, 0, 0, 0, 2, 9, 10, 45, 80, 81, 38, 37, 98, 63, 24, 71, 133, 132, 134, 50, 46, 88, 33, 35, 47, 51, 73, 75, 40, 53, 64, 110, 72, 31, 70, 76, @@ -4558,24250 +4653,25193 @@ static const yytype_uint16 yydefact[] = 117, 34, 121, 25, 26, 28, 29, 27, 67, 36, 74, 39, 95, 124, 114, 109, 129, 127, 11, 135, 111, 83, 14, 15, 100, 13, 32, 57, 17, 42, - 41, 56, 48, 131, 44, 1542, 102, 115, 101, 84, - 108, 87, 112, 130, 113, 85, 126, 1663, 1662, 1723, - 1666, 1698, 0, 1678, 1443, 1442, 1457, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 650, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1454, 2322, 2339, 2340, 2341, 2342, 2343, - 2344, 2345, 2346, 2347, 2348, 2349, 2350, 2351, 2352, 2354, - 2353, 2355, 2356, 2699, 2357, 2358, 2359, 2648, 2649, 2700, - 2650, 2651, 2360, 2361, 2362, 2363, 2364, 2365, 2366, 2367, - 2368, 2652, 2653, 2369, 2370, 2371, 2372, 2373, 2654, 2701, - 2374, 2375, 2376, 2377, 2378, 2379, 2702, 2380, 2381, 2382, - 2383, 2384, 2385, 2386, 2387, 2388, 2703, 2389, 2390, 2391, - 2704, 2392, 2393, 2394, 2395, 2396, 2397, 2655, 2656, 2398, + 41, 56, 48, 131, 44, 1550, 102, 115, 101, 84, + 108, 87, 112, 130, 113, 85, 126, 1671, 1670, 1731, + 1674, 1706, 0, 1686, 1450, 1449, 1464, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 658, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1461, 2377, 2394, 2395, 2396, 2397, 2398, 2399, 2400, 2401, 2402, 2403, 2404, 2405, 2406, 2407, 2408, - 2409, 2410, 2411, 2412, 2413, 2414, 2415, 2416, 2417, 2418, - 2419, 2420, 2421, 2422, 2423, 2424, 2425, 2657, 2426, 2427, - 2428, 2429, 2658, 2430, 2431, 2432, 2433, 2659, 2434, 2435, - 2436, 2705, 2706, 2437, 2438, 2439, 2440, 2441, 2660, 2661, - 2442, 2443, 2444, 2445, 2446, 2447, 2448, 2707, 2449, 2450, - 2451, 2452, 2453, 2454, 2455, 2456, 2457, 2458, 2459, 2460, - 2708, 2662, 2461, 2462, 2463, 2464, 2663, 2664, 2665, 2465, - 2709, 2710, 2466, 2711, 2467, 2468, 2469, 2470, 2471, 2472, - 2666, 2712, 2473, 2713, 2474, 2475, 2476, 2477, 2478, 2479, - 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 2489, - 2490, 2491, 2492, 2493, 2494, 2667, 2714, 2668, 2495, 2496, - 2497, 2498, 2499, 2500, 2501, 2669, 2670, 2502, 2503, 2504, - 2715, 2505, 2671, 2506, 2672, 2507, 2508, 2509, 2510, 2511, - 2512, 2513, 2514, 2515, 2516, 2673, 2716, 2517, 2717, 2674, - 2518, 2519, 2520, 2521, 2522, 2523, 2524, 2525, 2526, 2527, - 2528, 2529, 2675, 2530, 2676, 2533, 2531, 2532, 2534, 2535, - 2536, 2537, 2538, 2539, 2540, 2541, 2542, 2543, 2677, 2544, - 2545, 2546, 2547, 2548, 2549, 2550, 2551, 2552, 2553, 2554, - 2555, 2556, 2557, 2558, 2559, 2560, 2561, 2562, 2718, 2563, - 2564, 2565, 2566, 2567, 2678, 2568, 2569, 2570, 2571, 2572, - 2573, 2574, 2575, 2576, 2577, 2578, 2579, 2580, 2581, 2582, - 2583, 2679, 2584, 2585, 2719, 2586, 2587, 2680, 2588, 2589, - 2590, 2591, 2592, 2593, 2594, 2595, 2596, 2597, 2598, 2599, - 2600, 2601, 2681, 2602, 2603, 2604, 2605, 2720, 2606, 2607, - 2608, 2609, 2610, 2611, 2682, 2683, 2612, 2613, 2684, 2614, - 2685, 2615, 2616, 2617, 2618, 2619, 2620, 2621, 2622, 2623, - 2624, 2625, 2626, 2627, 2628, 2629, 2630, 2631, 2632, 2686, - 2687, 2633, 2721, 2634, 2635, 2636, 2637, 2638, 2639, 2640, - 2641, 2642, 2643, 2644, 2688, 2689, 2690, 2691, 2692, 2693, - 2694, 2695, 2696, 2697, 2698, 2645, 2646, 2647, 137, 0, - 0, 2284, 2323, 2324, 2327, 2322, 405, 404, 1652, 2281, - 2323, 1541, 0, 1521, 651, 0, 1457, 432, 1699, 0, - 0, 0, 0, 0, 0, 867, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 187, 0, - 0, 0, 0, 456, 455, 0, 0, 1068, 461, 0, - 0, 0, 0, 0, 641, 1583, 2531, 1581, 1653, 270, - 273, 274, 271, 272, 2305, 0, 1214, 1215, 1217, 0, - 0, 1227, 907, 908, 0, 0, 0, 921, 0, 0, - 0, 905, 0, 0, 0, 927, 0, 924, 0, 0, - 928, 925, 902, 926, 909, 0, 901, 0, 0, 1227, - 929, 0, 0, 903, 0, 0, 0, 0, 1457, 1580, - 462, 1699, 0, 1564, 1565, 1566, 1542, 1554, 1567, 1559, - 1561, 1560, 1562, 1563, 1558, 2304, 2340, 997, 997, 997, - 997, 994, 995, 997, 997, 997, 2551, 0, 0, 976, - 0, 978, 2306, 997, 1002, 2348, 533, 533, 533, 0, - 1001, 1006, 533, 0, 1425, 1466, 2283, 1711, 0, 977, - 1424, 2612, 1570, 0, 0, 1242, 1238, 1240, 1241, 1239, - 0, 1071, 1071, 2570, 1434, 254, 2581, 2682, 2612, 253, - 248, 249, 220, 2344, 0, 0, 1001, 0, 1457, 1432, - 973, 1718, 1716, 0, 2268, 2367, 2383, 2476, 245, 2563, - 2571, 2581, 2682, 2612, 2644, 196, 206, 201, 0, 263, - 2581, 2682, 2612, 259, 1454, 0, 1679, 1827, 1826, 2277, - 0, 1427, 1426, 1543, 0, 1546, 0, 2546, 1683, 1686, - 1548, 1684, 2325, 1902, 1931, 1909, 1931, 1931, 1898, 1898, - 2413, 1911, 1899, 1900, 1936, 0, 1931, 1898, 1903, 0, - 1901, 1939, 1939, 1926, 3, 1883, 1884, 1885, 1886, 1912, - 1913, 1887, 1918, 1919, 1923, 1888, 1953, 1898, 2326, 1720, - 1721, 2268, 4, 2319, 5, 2263, 2318, 6, 7, 1675, - 0, 0, 1, 1699, 0, 1553, 1715, 1715, 0, 1715, - 0, 1667, 1675, 1670, 1674, 0, 0, 0, 0, 0, - 0, 1428, 0, 0, 0, 932, 0, 1469, 1053, 0, - 0, 0, 0, 0, 1311, 0, 1111, 1110, 2328, 2311, - 2312, 2313, 0, 2309, 2310, 2329, 2330, 2331, 0, 2448, - 1311, 0, 0, 2178, 2189, 2190, 2191, 2371, 2430, 2186, - 2187, 2188, 2180, 2181, 2182, 2183, 2184, 2185, 0, 0, - 1209, 2179, 0, 2448, 0, 1311, 0, 166, 0, 141, - 1311, 0, 0, 2448, 0, 0, 2448, 0, 0, 0, - 0, 0, 2448, 0, 0, 0, 0, 0, 166, 2481, - 0, 141, 2448, 0, 0, 1448, 0, 0, 0, 1450, - 1453, 1440, 0, 2260, 0, 2261, 2285, 0, 1535, 1529, - 1538, 1534, 1524, 0, 2277, 0, 0, 0, 0, 915, - 0, 0, 905, 0, 0, 0, 916, 0, 917, 918, - 0, 0, 0, 0, 914, 0, 1438, 1430, 0, 1572, - 1574, 1573, 1575, 1571, 533, 0, 0, 0, 2448, 0, - 141, 1508, 0, 2448, 141, 0, 0, 460, 459, 141, - 2309, 458, 457, 2371, 2430, 0, 1101, 0, 1184, 141, - 2448, 0, 189, 2448, 710, 2448, 1548, 0, 654, 0, - 822, 2481, 141, 0, 0, 0, 0, 0, 0, 1071, - 0, 0, 0, 0, 0, 0, 0, 640, 651, 1584, - 1582, 0, 1218, 247, 246, 1216, 919, 2448, 1143, 366, - 0, 0, 2448, 1489, 2448, 366, 936, 920, 0, 906, - 2448, 366, 1107, 2448, 2314, 176, 0, 904, 2371, 2430, - 2448, 366, 1211, 0, 2448, 366, 2448, 172, 2448, 366, - 2448, 366, 2448, 655, 0, 0, 2448, 366, 2448, 2481, - 174, 923, 2448, 366, 930, 2448, 366, 2279, 2448, 0, - 1441, 0, 1576, 0, 1556, 2686, 0, 1699, 997, 996, - 0, 997, 0, 997, 0, 997, 0, 997, 0, 0, - 0, 997, 2307, 2308, 979, 0, 1003, 0, 1011, 0, - 1010, 1009, 1008, 0, 0, 0, 1012, 0, 1831, 1611, - 0, 1422, 1437, 0, 0, 0, 1071, 0, 1070, 0, - 0, 1433, 252, 250, 0, 0, 0, 0, 0, 0, - 1439, 0, 1431, 0, 0, 0, 2287, 2289, 2290, 2192, - 2263, 0, 2649, 2650, 2651, 2252, 0, 2652, 2653, 2654, - 2701, 2082, 2069, 2078, 2083, 2070, 2072, 2079, 2655, 2656, - 2020, 2657, 2658, 2302, 2659, 2660, 2661, 2663, 2664, 2665, - 2666, 2074, 2076, 2667, 2668, 2670, 0, 2303, 2671, 2672, - 2512, 2674, 2675, 2677, 2678, 2080, 2680, 2681, 2682, 2683, - 2684, 2685, 2301, 500, 2081, 2687, 2689, 2690, 2691, 2692, - 2694, 2695, 2696, 2697, 0, 0, 0, 2274, 0, 2049, - 0, 1891, 1892, 1914, 1915, 1893, 1920, 1921, 1894, 0, - 2273, 1956, 2137, 2048, 2065, 0, 2054, 2055, 0, 2047, - 2043, 1701, 2269, 0, 2044, 2286, 2288, 2253, 1701, 2267, - 209, 265, 0, 266, 2275, 2581, 197, 244, 212, 243, - 214, 213, 211, 210, 0, 2369, 198, 0, 0, 199, - 0, 0, 0, 0, 262, 260, 0, 1429, 0, 1829, - 1828, 2278, 941, 0, 1545, 1542, 2202, 0, 1685, 0, - 0, 0, 1930, 1917, 1925, 1924, 0, 1907, 1906, 1905, - 0, 1904, 1931, 1931, 1929, 1908, 1883, 0, 0, 0, - 1935, 0, 1933, 1879, 1875, 0, 1942, 1943, 1944, 1941, - 1954, 1940, 0, 1889, 1945, 0, 1898, 1895, 1786, 0, - 1665, 1664, 8, 0, 1550, 1552, 1527, 1548, 1713, 1714, - 0, 0, 0, 0, 0, 0, 0, 0, 1773, 1731, - 1732, 1734, 1770, 1774, 1782, 0, 1671, 0, 0, 0, - 1833, 0, 0, 1455, 0, 0, 0, 0, 0, 1142, - 0, 0, 0, 0, 933, 0, 0, 0, 1475, 0, - 1477, 1478, 1479, 0, 0, 0, 1480, 1481, 1469, 256, - 1488, 1485, 1468, 1470, 1483, 0, 0, 0, 0, 0, - 0, 0, 1500, 0, 180, 181, 0, 667, 651, 0, - 2448, 0, 0, 0, 0, 1152, 1159, 1310, 0, 0, - 0, 0, 0, 0, 0, 0, 1153, 1151, 0, 1154, - 258, 1164, 1191, 1194, 0, 0, 1109, 1112, 0, 0, - 0, 0, 0, 1301, 0, 0, 0, 1301, 0, 0, - 0, 1310, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 281, 283, 296, 361, 0, 632, 0, 0, 0, - 635, 0, 2448, 1311, 0, 0, 0, 1213, 0, 0, - 0, 0, 0, 0, 0, 0, 1194, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 139, 140, 145, 0, - 0, 0, 0, 1194, 0, 0, 0, 0, 0, 0, - 0, 618, 631, 0, 0, 0, 0, 0, 628, 0, - 0, 141, 286, 608, 614, 0, 0, 0, 717, 716, - 0, 0, 0, 0, 0, 0, 1398, 0, 1397, 0, - 0, 0, 0, 0, 1498, 1497, 0, 0, 0, 0, - 0, 0, 1301, 0, 275, 277, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 397, 398, 0, 0, 0, 145, 0, 0, 1301, - 0, 288, 0, 0, 1449, 1446, 1447, 0, 1452, 0, - 0, 0, 0, 2057, 0, 2206, 1723, 2204, 2284, 2259, - 0, 2332, 2722, 2723, 2724, 2725, 2726, 2727, 2728, 2729, - 2730, 2731, 2732, 2733, 2734, 2735, 2736, 2737, 2738, 2739, - 2740, 2741, 2742, 2743, 2744, 2745, 2746, 2747, 2748, 2749, - 2750, 2751, 2752, 2753, 2754, 2755, 2756, 2757, 2758, 2759, - 2760, 2761, 2762, 2763, 2764, 2765, 2766, 2767, 2768, 2769, - 2770, 2771, 2772, 2773, 2774, 2775, 2776, 2777, 2778, 2779, - 2780, 2781, 2782, 2783, 2784, 2785, 2786, 2787, 2788, 2789, - 2790, 2791, 2792, 2793, 2794, 2795, 2796, 2797, 2798, 2256, - 2255, 2282, 2333, 2334, 2335, 2336, 2262, 0, 0, 232, - 233, 231, 1536, 234, 1537, 1533, 0, 1519, 0, 0, - 0, 0, 0, 0, 0, 0, 2371, 2430, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 830, 1469, 1507, 0, 0, 0, - 660, 0, 2448, 0, 143, 868, 0, 820, 461, 0, - 0, 0, 0, 1374, 143, 0, 0, 183, 0, 0, - 714, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 821, 0, 0, 143, 0, 2448, 611, 2448, 0, - 533, 533, 0, 0, 1073, 0, 0, 0, 0, 0, - 0, 0, 0, 1657, 1656, 1659, 1658, 0, 1655, 0, - 364, 365, 0, 1201, 1226, 0, 0, 0, 0, 0, - 897, 922, 0, 0, 1195, 0, 0, 2448, 366, 2448, - 0, 2448, 0, 0, 0, 1203, 366, 0, 1197, 0, - 0, 1199, 0, 1400, 0, 913, 911, 910, 912, 0, - 0, 895, 0, 0, 0, 0, 0, 890, 0, 0, - 892, 0, 0, 0, 0, 1699, 1555, 0, 987, 0, - 991, 0, 982, 0, 988, 0, 983, 980, 981, 0, - 986, 0, 0, 534, 536, 0, 0, 2395, 2412, 0, - 2437, 2469, 2470, 2522, 2537, 2566, 2571, 2577, 0, 2606, - 2617, 0, 1017, 1048, 1007, 726, 0, 0, 1621, 1423, - 2211, 0, 1699, 0, 0, 0, 1234, 1235, 251, 221, - 0, 0, 0, 1050, 2570, 1436, 972, 651, 0, 2045, - 0, 2052, 2053, 2251, 0, 0, 0, 0, 0, 0, - 2051, 0, 0, 0, 0, 0, 0, 0, 1978, 0, - 0, 2210, 0, 0, 2210, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1979, 1960, 1961, - 2049, 2202, 0, 2050, 2298, 2295, 1953, 0, 1953, 2337, - 2192, 0, 2189, 2190, 2191, 2799, 2800, 2801, 2802, 2803, - 2804, 2805, 2806, 2807, 2808, 2809, 2810, 2811, 2812, 2813, - 2814, 0, 2815, 2816, 2817, 2818, 2819, 2821, 2820, 2822, - 2823, 2824, 2825, 2826, 2827, 2266, 2829, 2830, 2831, 2832, - 2833, 2834, 2835, 2836, 2837, 2838, 2839, 2840, 2841, 2842, - 2843, 2844, 2845, 2846, 2847, 2848, 2849, 2850, 2851, 2852, - 2853, 2854, 2855, 2856, 2857, 2858, 2859, 2860, 2861, 2862, - 2863, 2864, 2865, 2866, 2867, 2868, 2869, 2870, 2871, 2872, - 2873, 2874, 2875, 2876, 2877, 2878, 2879, 2880, 2881, 2882, - 2883, 2884, 2885, 2886, 2887, 2888, 2889, 2890, 2891, 2892, - 2893, 2894, 2895, 2896, 2897, 2898, 2899, 2900, 2901, 2902, - 2903, 2904, 2905, 2906, 2907, 2908, 2909, 2910, 2911, 2912, - 2913, 2914, 2915, 2916, 2917, 2918, 2919, 2920, 2921, 2922, - 2923, 2924, 2925, 2926, 2927, 2928, 2929, 2930, 2931, 2932, - 2933, 2934, 2935, 2936, 2937, 2938, 2939, 2940, 2941, 2942, - 2943, 2944, 2945, 2946, 2947, 2948, 2949, 2950, 2951, 2952, - 2953, 2954, 2955, 2956, 2957, 2958, 2959, 2960, 2961, 2962, - 2963, 2964, 2965, 2966, 2967, 2968, 2969, 2970, 2971, 2972, - 2973, 2974, 2975, 2976, 2977, 2978, 2979, 2980, 1993, 2981, - 2982, 2983, 2984, 2985, 2986, 2987, 2988, 2989, 2990, 2991, - 2992, 2993, 2994, 2995, 2996, 2997, 2998, 2999, 3000, 3001, - 3002, 3003, 3004, 3005, 3006, 3007, 3008, 3009, 3010, 3011, - 3012, 3013, 3014, 3015, 3016, 3017, 3018, 3019, 3020, 3021, - 3022, 3023, 3024, 3025, 3026, 3027, 3028, 3029, 3030, 3031, - 1995, 3032, 3033, 3034, 3035, 3036, 3037, 3038, 3039, 3040, - 3041, 3042, 3043, 3044, 3045, 3046, 3047, 3048, 3049, 3050, - 3051, 3052, 3053, 3054, 3055, 3056, 3057, 3058, 3059, 3060, - 3061, 3062, 3063, 3064, 3065, 3066, 3069, 3067, 3068, 3070, - 3071, 3072, 3073, 3074, 3075, 3076, 3077, 3078, 3079, 3080, - 3081, 3082, 3083, 3084, 3085, 3086, 3087, 3088, 3089, 3090, - 3091, 3092, 3093, 3094, 3095, 3096, 3097, 3098, 3099, 3100, - 3101, 3102, 3103, 3104, 3105, 3106, 3107, 3108, 3109, 3110, - 3111, 3112, 3113, 3114, 3115, 3116, 3117, 3118, 3119, 3120, - 3121, 3122, 3123, 3124, 3126, 3125, 3127, 3128, 3129, 3130, - 3131, 3132, 3133, 3134, 3135, 3136, 3137, 3138, 3139, 3140, - 3141, 3142, 3143, 3144, 3145, 3146, 3147, 3148, 3149, 3150, - 3151, 3152, 3153, 3154, 3155, 3156, 3157, 3158, 3159, 3160, - 3161, 3162, 3163, 3164, 3165, 3166, 3167, 3168, 3169, 3170, - 3171, 3172, 3173, 3174, 3175, 3176, 3177, 3178, 3179, 3180, - 3181, 3182, 3183, 3184, 3185, 3186, 3187, 3188, 3189, 3190, - 3191, 3192, 3193, 3194, 3195, 3196, 3197, 3198, 3199, 3200, - 3201, 3202, 3203, 3204, 3205, 3206, 3207, 3208, 3209, 3210, - 3211, 3212, 3213, 3214, 3215, 3216, 3217, 3218, 3219, 0, - 2186, 2187, 2188, 2180, 2181, 2182, 2183, 2184, 2185, 2196, - 0, 0, 2272, 2338, 0, 2139, 0, 1975, 0, 0, - 1786, 2293, 0, 2291, 2254, 1786, 267, 268, 264, 0, - 0, 216, 217, 215, 0, 237, 236, 241, 242, 208, - 240, 0, 235, 219, 2126, 2125, 218, 207, 226, 204, - 202, 222, 224, 225, 205, 203, 261, 0, 0, 0, - 366, 1553, 1540, 0, 0, 2266, 0, 2200, 0, 0, - 2198, 0, 0, 0, 1783, 0, 1687, 0, 1691, 0, - 0, 0, 1928, 1927, 1880, 1876, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 934, - 0, 1896, 0, 1849, 2320, 2321, 2264, 1719, 1553, 0, - 1549, 1682, 1681, 1724, 1725, 1093, 1680, 1753, 1754, 0, - 0, 0, 0, 1779, 1777, 1744, 1735, 1743, 0, 0, - 1741, 0, 1745, 1956, 1772, 1669, 1729, 1730, 1733, 1668, - 0, 1775, 0, 1624, 1773, 1734, 1608, 0, 1586, 0, - 0, 1834, 0, 0, 1456, 0, 0, 0, 1122, 1124, - 0, 1123, 0, 1126, 0, 1135, 0, 0, 1121, 1140, - 0, 1129, 1127, 0, 1496, 0, 0, 0, 0, 0, - 1476, 0, 0, 0, 2606, 255, 1479, 1484, 1471, 1482, - 0, 0, 0, 0, 0, 1052, 1051, 0, 0, 1075, - 0, 0, 500, 1503, 522, 0, 363, 0, 0, 0, - 0, 0, 0, 0, 0, 816, 813, 0, 0, 812, - 0, 665, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 690, 0, 1301, 0, 294, 0, 1161, - 0, 1160, 0, 1165, 0, 0, 1162, 1157, 1158, 2571, - 2581, 2612, 257, 1163, 1193, 0, 1192, 1188, 0, 1104, - 0, 1105, 0, 0, 0, 0, 0, 2422, 2448, 302, - 325, 0, 1300, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 347, 0, - 0, 350, 349, 0, 0, 0, 0, 0, 355, 0, - 333, 0, 334, 0, 354, 0, 0, 0, 633, 634, - 0, 0, 0, 1301, 0, 290, 0, 0, 0, 0, - 0, 0, 0, 0, 1210, 0, 743, 0, 0, 2571, - 1189, 0, 1383, 0, 2605, 1384, 1387, 533, 0, 533, - 1389, 0, 0, 1386, 1388, 0, 0, 169, 0, 164, - 168, 0, 0, 2571, 1190, 0, 0, 0, 0, 0, - 616, 617, 630, 0, 621, 622, 619, 623, 624, 0, - 0, 0, 0, 0, 0, 0, 615, 0, 0, 712, - 711, 715, 0, 0, 0, 0, 0, 0, 1392, 0, - 0, 1184, 0, 0, 1391, 1399, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1244, 1243, 0, 0, - 0, 0, 1311, 0, 858, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 171, 730, 0, 729, 0, 165, - 170, 0, 0, 0, 0, 0, 0, 0, 0, 230, - 1445, 1451, 1723, 1723, 1723, 2063, 0, 0, 0, 0, - 1722, 2257, 2260, 1524, 1530, 1523, 1522, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 411, 408, 409, 411, 0, 0, - 0, 0, 832, 0, 835, 838, 1467, 484, 0, 0, - 657, 690, 0, 0, 464, 178, 0, 0, 0, 0, - 745, 0, 1184, 1183, 138, 187, 189, 462, 0, 188, - 190, 192, 193, 194, 191, 195, 0, 709, 713, 0, - 0, 0, 0, 653, 0, 0, 0, 0, 0, 0, - 0, 1854, 0, 0, 163, 0, 0, 606, 610, 0, - 0, 0, 0, 464, 572, 377, 2448, 0, 533, 0, - 2448, 0, 1072, 0, 819, 0, 0, 0, 1146, 1146, - 0, 0, 759, 758, 0, 0, 0, 0, 0, 0, - 1654, 366, 1144, 0, 1490, 0, 366, 937, 366, 1108, - 177, 2315, 0, 899, 0, 0, 0, 0, 366, 1212, - 887, 366, 173, 366, 366, 656, 0, 366, 175, 0, - 0, 366, 931, 366, 2280, 0, 366, 1579, 2448, 533, - 1557, 984, 993, 992, 990, 989, 985, 0, 1004, 0, - 532, 0, 0, 0, 0, 0, 1025, 1026, 0, 0, - 1022, 1027, 0, 1029, 1013, 1015, 1023, 1024, 1030, 1019, - 1018, 1031, 1032, 0, 0, 1050, 724, 0, 0, 0, - 0, 1618, 0, 1616, 0, 1832, 1620, 1609, 1569, 0, - 1568, 0, 599, 1071, 1071, 0, 0, 1001, 0, 0, - 366, 1435, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2215, 0, 2216, 0, 0, 2250, 2246, - 0, 0, 0, 0, 0, 2220, 0, 2223, 2224, 2225, - 2222, 2226, 2221, 0, 0, 2227, 0, 0, 0, 0, - 0, 0, 0, 0, 2206, 2209, 0, 0, 2678, 0, - 0, 0, 0, 2021, 0, 0, 2173, 0, 2206, 0, - 0, 0, 0, 0, 0, 0, 2202, 2242, 0, 498, - 0, 2013, 0, 0, 0, 2124, 0, 2121, 0, 0, - 0, 0, 2263, 0, 2299, 0, 2296, 1957, 1971, 1972, - 1973, 1976, 2271, 0, 2265, 0, 0, 1958, 1984, 0, - 2243, 2009, 0, 2014, 1999, 2228, 2229, 2230, 2231, 2016, - 0, 1992, 1997, 2001, 0, 1980, 0, 1977, 0, 2266, - 2201, 0, 2199, 0, 1968, 1969, 1970, 1962, 1963, 1964, - 1965, 1966, 1967, 1974, 2177, 2175, 2176, 0, 0, 0, - 2147, 0, 0, 1996, 2440, 2476, 0, 1712, 1712, 1712, - 1700, 1710, 2270, 1849, 1723, 1849, 2276, 0, 0, 1953, - 0, 1830, 939, 940, 938, 1526, 1539, 1553, 2203, 1547, - 1689, 0, 0, 0, 1897, 1910, 0, 1938, 1937, 1939, - 1939, 0, 1881, 0, 1922, 1947, 1948, 1949, 1950, 1951, - 1952, 0, 1946, 1890, 935, 0, 2568, 2698, 0, 1810, - 1785, 1787, 1797, 1810, 1817, 1810, 2066, 1847, 2067, 2277, - 0, 1756, 2317, 1528, 1551, 0, 1091, 1092, 0, 1096, - 2678, 2568, 0, 0, 0, 0, 1746, 1780, 0, 1771, - 0, 2287, 1747, 2286, 1748, 1751, 1752, 1742, 1781, 1622, - 0, 1776, 1673, 1672, 0, 1852, 0, 0, 0, 1600, - 1588, 0, 0, 1835, 0, 1786, 1626, 0, 2263, 1784, - 1350, 1245, 1312, 1125, 0, 1898, 1136, 0, 1120, 0, - 1119, 1898, 0, 1137, 0, 1898, 1351, 1246, 1313, 1352, - 1247, 1314, 1353, 1487, 1248, 1486, 1474, 1473, 1472, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 797, 2448, 366, 1501, 1354, 0, 1249, - 362, 1502, 1315, 1506, 815, 814, 0, 0, 1316, 0, - 666, 671, 0, 673, 674, 2371, 2430, 675, 678, 679, - 0, 681, 670, 669, 0, 0, 0, 0, 0, 687, - 692, 0, 0, 0, 0, 0, 0, 1155, 1156, 1355, - 1252, 0, 1317, 0, 1103, 0, 1253, 179, 0, 0, - 282, 2448, 304, 0, 482, 797, 0, 1303, 301, 331, - 0, 346, 341, 342, 340, 2448, 366, 2448, 366, 0, - 0, 0, 0, 0, 343, 338, 339, 335, 0, 0, - 348, 2343, 2414, 2582, 0, 698, 700, 0, 705, 351, - 1273, 373, 372, 371, 0, 356, 0, 378, 381, 0, - 353, 332, 330, 327, 297, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1205, 0, 1358, 1318, - 0, 1340, 0, 0, 0, 0, 737, 1361, 1259, 1321, - 0, 533, 0, 0, 548, 548, 533, 1372, 1260, 167, - 1290, 156, 0, 0, 152, 0, 0, 0, 0, 144, - 1362, 1261, 1322, 0, 0, 1363, 1262, 0, 0, 287, - 609, 620, 625, 1267, 629, 626, 1330, 627, 1370, 1263, - 0, 1366, 1293, 1325, 592, 1184, 1184, 1373, 1393, 1264, - 1184, 0, 1301, 0, 276, 278, 0, 1071, 0, 1265, - 0, 1323, 1365, 1292, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1509, 0, 0, 0, 0, 0, 0, - 366, 0, 0, 0, 1303, 2448, 366, 1364, 0, 1298, - 0, 1338, 0, 0, 399, 0, 1291, 1301, 0, 289, - 1269, 0, 1332, 0, 0, 228, 227, 229, 0, 0, - 0, 0, 2207, 2208, 0, 2205, 2058, 2259, 0, 1520, - 961, 947, 960, 0, 943, 2412, 0, 946, 948, 0, - 0, 0, 949, 953, 954, 0, 945, 942, 944, 0, - 410, 0, 0, 754, 755, 0, 0, 0, 0, 834, - 0, 0, 1499, 0, 141, 664, 0, 0, 0, 659, - 689, 694, 0, 0, 0, 0, 463, 467, 471, 472, - 473, 0, 0, 0, 0, 157, 142, 0, 876, 0, - 533, 0, 747, 1184, 1376, 0, 189, 182, 0, 0, - 710, 0, 1548, 0, 0, 587, 590, 589, 0, 377, - 829, 827, 826, 828, 850, 825, 0, 1853, 1855, 0, - 0, 0, 0, 0, 0, 599, 466, 0, 0, 536, - 0, 575, 0, 0, 0, 0, 572, 0, 0, 0, - 2325, 0, 846, 818, 0, 1114, 0, 1132, 1115, 0, - 0, 0, 0, 1169, 1176, 1145, 1170, 1147, 1176, 0, - 0, 760, 764, 763, 767, 765, 0, 761, 638, 1660, - 1661, 0, 1202, 0, 0, 1495, 0, 1493, 898, 1196, - 366, 0, 366, 0, 366, 1204, 1198, 1200, 1401, 0, - 896, 0, 0, 889, 891, 0, 893, 0, 1005, 535, - 0, 0, 0, 0, 0, 0, 1021, 636, 1028, 0, - 0, 0, 1043, 1038, 1040, 0, 1044, 723, 0, 0, - 1619, 1612, 1614, 1613, 0, 0, 1610, 2212, 888, 0, - 605, 0, 0, 0, 0, 1050, 0, 1045, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1717, 2213, - 2214, 0, 0, 0, 2247, 0, 0, 2099, 0, 2071, - 2073, 0, 2085, 0, 2100, 2056, 2101, 2075, 2077, 2086, - 0, 0, 2193, 0, 2089, 2088, 0, 2023, 2024, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2038, 2090, 2172, - 0, 0, 0, 2092, 2091, 0, 0, 2241, 0, 0, - 0, 2097, 499, 2102, 0, 0, 0, 0, 2108, 0, - 2129, 0, 0, 0, 2046, 2203, 0, 0, 0, 0, - 0, 0, 0, 0, 2015, 2000, 2018, 1994, 1998, 2002, - 0, 2017, 0, 0, 1988, 0, 0, 1986, 2010, 1982, - 0, 0, 2011, 0, 0, 0, 2064, 0, 0, 1712, - 1712, 1712, 1712, 1709, 0, 0, 0, 1756, 0, 1756, - 200, 0, 238, 223, 1525, 1690, 1699, 1916, 0, 1934, - 1932, 1877, 1882, 1955, 1810, 1817, 1810, 0, 0, 1675, - 0, 1797, 0, 1809, 1795, 1808, 0, 0, 1823, 1821, - 0, 1823, 0, 1823, 0, 1789, 0, 1813, 1791, 1808, - 1793, 0, 1839, 2278, 1848, 0, 1769, 1726, 0, 2194, - 1096, 0, 1728, 1750, 1749, 0, 1739, 0, 1778, 1736, - 1623, 1607, 0, 1605, 1592, 1594, 1593, 0, 0, 1595, - 2263, 0, 1605, 1587, 0, 1631, 0, 0, 1852, 0, - 1630, 0, 1898, 1117, 1118, 0, 1141, 0, 1055, 1056, - 0, 1054, 0, 0, 0, 521, 1074, 0, 0, 0, - 797, 0, 0, 525, 0, 1504, 0, 1371, 1289, 668, - 0, 0, 0, 0, 683, 642, 684, 686, 0, 0, - 685, 688, 691, 1301, 0, 295, 1275, 0, 1336, 1149, - 0, 0, 1106, 0, 0, 0, 0, 0, 0, 481, - 694, 326, 0, 0, 0, 0, 386, 0, 306, 318, - 384, 324, 0, 358, 0, 329, 0, 322, 344, 336, - 345, 337, 357, 359, 0, 702, 703, 701, 697, 0, - 704, 706, 0, 375, 0, 0, 0, 352, 0, 1357, - 0, 1301, 0, 291, 1271, 0, 1334, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1339, - 0, 0, 0, 0, 742, 0, 739, 0, 548, 0, - 1385, 0, 1382, 1380, 548, 0, 0, 147, 148, 146, - 0, 155, 0, 0, 0, 0, 0, 0, 1394, 1395, - 1396, 0, 0, 0, 0, 0, 0, 393, 0, 298, - 300, 299, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 400, - 368, 0, 853, 0, 0, 0, 402, 0, 0, 1349, - 0, 0, 0, 0, 0, 1356, 1254, 2061, 2062, 2059, - 1723, 2258, 0, 0, 0, 958, 0, 0, 0, 0, - 413, 414, 141, 412, 435, 0, 797, 0, 0, 831, - 836, 844, 2512, 2180, 2181, 842, 837, 839, 841, 843, - 840, 0, 0, 0, 0, 503, 0, 0, 0, 490, - 0, 0, 500, 483, 486, 487, 0, 0, 660, 663, - 661, 662, 0, 682, 0, 466, 510, 562, 0, 159, - 0, 0, 160, 158, 0, 0, 377, 744, 0, 741, - 1375, 0, 185, 0, 714, 0, 0, 0, 0, 0, - 1184, 652, 0, 849, 851, 823, 0, 694, 0, 0, - 611, 0, 533, 1580, 594, 0, 564, 466, 562, 571, - 0, 0, 579, 376, 0, 0, 599, 377, 0, 0, - 1075, 0, 845, 0, 0, 1113, 0, 0, 0, 1166, - 1171, 1167, 0, 1146, 1128, 0, 1168, 0, 0, 1174, - 1099, 1148, 1100, 1417, 1418, 1415, 1416, 0, 0, 0, - 0, 0, 0, 1651, 0, 0, 1491, 0, 900, 0, - 883, 0, 885, 366, 731, 0, 366, 0, 0, 0, - 0, 0, 0, 1020, 0, 1014, 1016, 1041, 0, 0, - 1050, 1047, 0, 0, 1617, 1615, 597, 0, 1236, 1237, - 1050, 0, 366, 1049, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2217, 0, 2249, 2245, 0, 2068, - 2219, 2218, 0, 0, 0, 2173, 0, 0, 2022, 2034, - 2035, 2036, 2234, 0, 2041, 0, 2031, 2032, 2033, 2025, - 2026, 2027, 2028, 2029, 2030, 2037, 2238, 2237, 0, 0, - 2094, 2095, 2096, 2240, 2103, 0, 2361, 2130, 0, 2107, - 2123, 2122, 0, 0, 0, 2110, 0, 0, 2119, 0, - 2174, 2300, 2297, 1959, 0, 0, 1985, 2244, 2003, 0, - 2019, 1981, 2193, 0, 0, 0, 0, 0, 1990, 0, - 0, 0, 2150, 2145, 2146, 2170, 0, 0, 0, 0, - 0, 0, 1703, 1702, 1708, 1769, 2058, 1769, 0, 0, - 1878, 1796, 1792, 1794, 0, 2693, 0, 1799, 1806, 0, - 1788, 0, 1822, 1818, 0, 1819, 0, 0, 1820, 0, - 0, 1790, 0, 1806, 0, 1846, 1715, 0, 2141, 0, - 1727, 1094, 1095, 1737, 0, 1740, 2391, 1850, 0, 1606, - 0, 0, 0, 1597, 1603, 1585, 0, 0, 0, 1627, - 1605, 1628, 1138, 0, 0, 1130, 1061, 1062, 1065, 1063, - 1060, 1064, 0, 0, 0, 797, 0, 0, 543, 0, - 1088, 1088, 0, 0, 527, 584, 0, 800, 0, 0, - 0, 798, 366, 1250, 0, 0, 0, 0, 643, 1369, - 1251, 0, 0, 0, 0, 1150, 1304, 0, 0, 1274, - 0, 303, 480, 479, 484, 0, 0, 309, 319, 0, - 314, 0, 1302, 0, 0, 0, 0, 313, 316, 388, - 0, 385, 0, 366, 366, 360, 699, 374, 379, 380, - 383, 1309, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 877, 860, 0, 0, 878, - 879, 0, 0, 0, 1207, 1208, 1206, 1341, 1342, 1347, - 1344, 1343, 1346, 1348, 1345, 0, 1257, 0, 0, 735, - 1305, 1377, 1379, 1378, 0, 1381, 153, 150, 149, 151, - 154, 1306, 1287, 1268, 1331, 593, 0, 0, 0, 1266, - 0, 1324, 0, 1283, 1277, 0, 0, 0, 0, 0, - 1368, 1297, 1329, 1367, 1295, 1327, 1294, 1326, 1296, 1328, - 1288, 0, 0, 1857, 857, 0, 0, 0, 366, 366, - 856, 733, 1270, 0, 1333, 1279, 0, 0, 0, 950, - 0, 0, 0, 952, 418, 436, 141, 0, 753, 817, - 0, 0, 833, 0, 488, 0, 494, 501, 0, 0, - 505, 506, 504, 489, 1184, 533, 1184, 786, 787, 0, - 0, 807, 0, 658, 0, 0, 464, 0, 507, 0, - 0, 468, 162, 161, 0, 0, 0, 748, 752, 750, - 749, 751, 746, 0, 737, 189, 2448, 0, 0, 0, - 0, 591, 585, 588, 1390, 824, 0, 1856, 727, 0, - 377, 607, 0, 0, 0, 464, 599, 0, 469, 474, - 475, 484, 0, 572, 563, 0, 564, 573, 574, 0, - 581, 1465, 0, 600, 581, 0, 0, 0, 848, 0, - 847, 0, 1116, 1133, 1134, 0, 0, 1176, 0, 0, - 1178, 1173, 0, 0, 766, 769, 762, 645, 366, 0, - 1494, 366, 366, 1233, 0, 894, 1035, 1036, 1037, 1034, - 1033, 637, 0, 1039, 998, 725, 0, 598, 366, 0, - 999, 975, 967, 974, 963, 966, 968, 0, 970, 971, - 965, 962, 964, 2248, 2084, 2087, 2098, 0, 2172, 2203, - 0, 0, 2042, 0, 0, 0, 2093, 2688, 0, 0, - 2134, 2135, 0, 2131, 2132, 2127, 2128, 2109, 0, 2501, - 2114, 0, 0, 0, 2007, 2005, 2004, 1989, 0, 0, - 1987, 1983, 0, 2012, 2136, 0, 2152, 2149, 2169, 2203, - 1707, 1706, 1705, 1704, 2141, 2294, 2292, 2141, 239, 1694, - 1842, 0, 1845, 0, 0, 1798, 0, 0, 1800, 0, - 0, 1802, 1804, 0, 0, 0, 0, 0, 0, 2281, - 0, 1768, 0, 1723, 0, 1738, 0, 1604, 1589, 0, - 1590, 1596, 0, 0, 0, 0, 0, 1632, 1625, 1131, - 1139, 0, 0, 0, 523, 0, 538, 0, 0, 0, - 1081, 1090, 1080, 0, 538, 538, 802, 801, 804, 799, - 803, 1505, 0, 676, 677, 680, 1276, 0, 1337, 1285, - 0, 1621, 305, 476, 312, 0, 0, 0, 307, 387, - 389, 308, 311, 315, 368, 328, 321, 0, 0, 0, - 1272, 0, 1335, 1281, 1308, 1359, 1255, 1319, 0, 0, - 866, 0, 0, 0, 0, 1360, 1256, 1320, 0, 0, - 0, 0, 0, 1621, 0, 0, 0, 0, 0, 0, - 0, 0, 1514, 0, 0, 367, 855, 854, 368, 401, - 1299, 0, 2060, 0, 951, 956, 957, 955, 0, 407, - 415, 418, 0, 0, 1224, 1224, 0, 0, 485, 502, - 0, 583, 542, 583, 0, 0, 0, 0, 0, 695, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 740, 739, 184, 0, 464, 0, 694, 0, 852, 0, - 0, 0, 599, 466, 0, 0, 1577, 465, 0, 0, - 477, 0, 575, 564, 572, 0, 0, 596, 0, 1458, - 0, 602, 0, 0, 0, 796, 1172, 0, 1186, 0, - 1127, 1097, 1181, 0, 1699, 1849, 0, 0, 0, 0, - 779, 0, 649, 1225, 1492, 884, 886, 732, 1042, 0, - 1046, 1050, 969, 2233, 2174, 2039, 0, 2236, 2235, 2239, - 0, 2104, 0, 2105, 2133, 2111, 2115, 0, 2112, 2113, - 2008, 2006, 1991, 2138, 0, 1723, 2171, 1677, 1676, 0, - 1697, 1847, 0, 0, 1841, 0, 0, 1871, 0, 0, - 0, 1807, 1825, 0, 1803, 1801, 0, 1814, 0, 1816, - 2390, 2661, 2565, 0, 1755, 1757, 1760, 1762, 1761, 1763, - 1759, 2140, 2142, 0, 1734, 2195, 1851, 0, 0, 0, - 1076, 0, 0, 1633, 1634, 1629, 1043, 0, 366, 1088, - 0, 1184, 544, 2512, 545, 1087, 1089, 1093, 0, 1184, - 1184, 672, 0, 0, 284, 0, 310, 320, 370, 382, - 0, 1621, 0, 0, 864, 873, 873, 861, 0, 0, - 880, 1258, 736, 0, 547, 0, 279, 1284, 1278, 0, - 0, 0, 1516, 1517, 0, 0, 0, 0, 0, 1307, - 366, 1280, 959, 0, 438, 445, 419, 423, 1508, 0, - 1508, 0, 420, 424, 1508, 1508, 417, 1849, 434, 1224, - 0, 1221, 1220, 531, 613, 0, 0, 492, 0, 553, - 491, 0, 808, 0, 0, 693, 0, 466, 562, 0, - 520, 511, 512, 513, 514, 516, 515, 517, 518, 519, - 509, 508, 0, 694, 870, 377, 1465, 734, 0, 0, - 707, 0, 694, 0, 1580, 595, 564, 466, 562, 470, - 484, 0, 579, 572, 575, 0, 576, 0, 580, 0, - 0, 0, 599, 1518, 1075, 0, 0, 797, 1185, 1146, - 0, 0, 1175, 1179, 1180, 0, 0, 0, 0, 1228, - 773, 774, 768, 770, 0, 781, 785, 644, 0, 0, - 648, 639, 694, 366, 0, 2040, 0, 0, 2117, 2116, - 0, 2156, 0, 0, 0, 1688, 1840, 1843, 0, 1874, - 0, 0, 0, 0, 1860, 0, 1805, 0, 0, 1815, - 0, 0, 0, 1764, 0, 0, 0, 1773, 0, 1602, - 1849, 0, 1599, 0, 1642, 0, 1635, 1057, 0, 1058, - 1082, 0, 583, 0, 1093, 1096, 533, 583, 583, 1286, - 0, 613, 0, 323, 0, 292, 1282, 0, 0, 875, - 875, 0, 0, 0, 0, 0, 0, 395, 0, 0, - 1510, 0, 1511, 1512, 1515, 403, 416, 0, 443, 0, - 441, 440, 442, 0, 431, 0, 0, 0, 0, 0, - 0, 406, 1219, 1223, 1222, 0, 493, 0, 495, 0, - 0, 539, 540, 541, 0, 497, 549, 550, 805, 0, - 810, 0, 696, 0, 0, 694, 561, 718, 0, 0, - 0, 1459, 0, 0, 586, 728, 1465, 599, 572, 0, - 564, 478, 0, 581, 575, 579, 577, 578, 0, 1462, - 0, 601, 0, 1084, 795, 0, 1176, 1187, 1182, 1177, - 1421, 0, 0, 771, 776, 775, 1508, 780, 0, 0, - 0, 647, 646, 722, 1000, 2232, 2120, 2106, 2118, 2151, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1872, - 1873, 1858, 0, 0, 1862, 1812, 1838, 0, 0, 0, - 1758, 2143, 2144, 2316, 1591, 1601, 1077, 0, 0, 0, - 1642, 0, 0, 548, 0, 1096, 1078, 542, 797, 797, - 1621, 317, 369, 0, 0, 0, 871, 874, 862, 863, - 882, 881, 738, 1621, 0, 391, 390, 0, 394, 0, - 439, 448, 0, 446, 421, 426, 0, 430, 428, 427, - 422, 425, 530, 0, 0, 0, 0, 0, 0, 551, - 0, 552, 0, 809, 0, 0, 0, 720, 869, 0, - 0, 464, 694, 1460, 1578, 575, 564, 572, 0, 0, - 566, 1088, 1088, 451, 579, 581, 1463, 1464, 0, 0, - 500, 0, 1098, 1420, 1419, 1699, 0, 0, 0, 782, - 783, 778, 0, 0, 2648, 2391, 2620, 0, 2168, 2157, - 2168, 2168, 2148, 0, 0, 0, 1844, 0, 1861, 1864, - 0, 0, 0, 1870, 1863, 1865, 0, 1824, 0, 1836, - 1766, 0, 1765, 1849, 1641, 0, 0, 366, 537, 797, - 546, 1079, 553, 526, 524, 285, 1621, 865, 0, 280, - 0, 396, 1513, 444, 0, 429, 612, 496, 582, 558, - 0, 557, 0, 555, 554, 806, 811, 0, 694, 859, - 1465, 708, 579, 572, 575, 0, 565, 0, 1090, 1090, - 581, 449, 0, 0, 377, 0, 1403, 1699, 1402, 1404, - 1412, 1409, 1411, 1410, 1408, 0, 1231, 1232, 772, 777, - 0, 0, 0, 2161, 2160, 2159, 2163, 2162, 0, 2155, - 2153, 2154, 0, 0, 0, 0, 1867, 1868, 1869, 1866, - 1811, 0, 1767, 1598, 1644, 0, 0, 1636, 1637, 0, - 1059, 528, 797, 293, 872, 0, 447, 556, 533, 533, - 694, 719, 1461, 581, 575, 579, 1088, 567, 1089, 569, - 568, 453, 1084, 1085, 0, 581, 785, 0, 1413, 1407, - 1675, 1662, 0, 0, 784, 0, 0, 0, 2165, 0, - 2166, 0, 0, 0, 0, 0, 0, 1639, 0, 0, - 0, 1638, 529, 0, 560, 559, 721, 452, 579, 581, - 1090, 500, 1083, 0, 1849, 0, 1405, 1699, 0, 0, - 790, 2158, 2164, 2167, 1693, 1692, 0, 0, 1696, 0, - 1837, 1643, 1640, 0, 0, 0, 0, 1645, 392, 581, - 450, 570, 377, 1086, 1066, 0, 1406, 0, 0, 792, - 0, 788, 791, 793, 794, 0, 0, 1859, 1649, 0, - 0, 0, 454, 581, 0, 0, 0, 756, 0, 1723, - 0, 0, 0, 0, 1849, 0, 0, 0, 789, 0, - 0, 1646, 1650, 0, 1647, 1067, 790, 1229, 1230, 0, - 1695, 0, 0, 0, 757, 1648 + 2410, 2409, 2411, 2412, 2764, 2413, 2414, 2415, 2709, 2710, + 2765, 2711, 2712, 2416, 2417, 2418, 2419, 2420, 2421, 2422, + 2423, 2424, 2713, 2714, 2425, 2426, 2427, 2428, 2429, 2715, + 2766, 2430, 2431, 2432, 2433, 2434, 2435, 2767, 2436, 2437, + 2438, 2439, 2440, 2441, 2442, 2443, 2444, 2768, 2445, 2446, + 2447, 2769, 2448, 2449, 2450, 2451, 2452, 2453, 2716, 2717, + 2454, 2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2463, + 2464, 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, 2473, + 2474, 2475, 2476, 2477, 2478, 2479, 2480, 2481, 2718, 2482, + 2483, 2484, 2485, 2719, 2486, 2487, 2488, 2489, 2720, 2490, + 2491, 2492, 2493, 2770, 2771, 2494, 2495, 2496, 2497, 2498, + 2721, 2722, 2499, 2500, 2501, 2502, 2503, 2504, 2505, 2772, + 2506, 2507, 2508, 2509, 2510, 2511, 2512, 2513, 2514, 2515, + 2516, 2517, 2518, 2773, 2723, 2519, 2520, 2521, 2522, 2724, + 2725, 2726, 2523, 2774, 2775, 2524, 2776, 2525, 2727, 2728, + 2729, 2730, 2526, 2527, 2528, 2529, 2530, 2531, 2532, 2731, + 2777, 2533, 2778, 2534, 2535, 2536, 2537, 2538, 2539, 2540, + 2541, 2542, 2543, 2544, 2545, 2546, 2547, 2548, 2549, 2550, + 2551, 2552, 2553, 2554, 2732, 2779, 2733, 2555, 2556, 2557, + 2558, 2559, 2560, 2561, 2734, 2735, 2562, 2563, 2564, 2780, + 2565, 2736, 2566, 2737, 2567, 2568, 2569, 2570, 2571, 2572, + 2573, 2574, 2575, 2576, 2738, 2781, 2577, 2782, 2739, 2578, + 2579, 2580, 2581, 2582, 2583, 2584, 2585, 2586, 2587, 2588, + 2589, 2740, 2590, 2741, 2593, 2591, 2592, 2594, 2595, 2596, + 2597, 2598, 2599, 2600, 2601, 2602, 2603, 2742, 2604, 2605, + 2606, 2607, 2608, 2609, 2610, 2611, 2612, 2613, 2614, 2615, + 2616, 2617, 2618, 2619, 2620, 2621, 2622, 2783, 2623, 2624, + 2625, 2626, 2627, 2743, 2628, 2629, 2630, 2631, 2632, 2633, + 2634, 2635, 2636, 2637, 2638, 2639, 2640, 2641, 2642, 2643, + 2644, 2744, 2645, 2646, 2784, 2647, 2648, 2745, 2649, 2650, + 2651, 2652, 2653, 2654, 2655, 2656, 2657, 2658, 2659, 2660, + 2661, 2662, 2746, 2663, 2664, 2665, 2666, 2785, 2667, 2668, + 2669, 2670, 2671, 2672, 2747, 2748, 2673, 2674, 2749, 2675, + 2750, 2676, 2677, 2678, 2679, 2680, 2681, 2682, 2683, 2684, + 2685, 2686, 2687, 2688, 2689, 2690, 2691, 2692, 2693, 2751, + 2752, 2694, 2786, 2695, 2696, 2697, 2698, 2699, 2700, 2701, + 2702, 2703, 2704, 2705, 2753, 2754, 2755, 2756, 2757, 2758, + 2759, 2760, 2761, 2762, 2763, 2706, 2707, 2708, 146, 0, + 0, 2339, 2378, 2379, 2382, 2377, 409, 408, 1660, 2336, + 2378, 1549, 0, 1528, 659, 0, 1464, 436, 1707, 0, + 0, 0, 0, 0, 0, 875, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 138, 0, + 140, 0, 0, 460, 459, 0, 0, 1081, 465, 0, + 0, 0, 0, 0, 649, 1591, 2591, 1589, 1661, 277, + 280, 281, 278, 279, 2360, 0, 1221, 1222, 1224, 0, + 0, 1234, 915, 916, 0, 0, 0, 929, 0, 0, + 0, 913, 0, 0, 0, 935, 0, 932, 0, 0, + 936, 933, 910, 934, 917, 0, 909, 0, 0, 1234, + 937, 0, 0, 911, 0, 0, 0, 0, 1464, 1588, + 466, 1707, 0, 1572, 1573, 1574, 1550, 1562, 1575, 1567, + 1569, 1568, 1570, 1571, 1566, 2359, 2396, 1005, 1005, 1005, + 1005, 1002, 1003, 1005, 1005, 1005, 2611, 0, 0, 984, + 0, 986, 2361, 1005, 1010, 2404, 541, 541, 541, 0, + 1009, 1014, 541, 0, 1432, 1473, 2338, 1719, 0, 985, + 1431, 2673, 1578, 0, 0, 0, 0, 2630, 1441, 261, + 2642, 2747, 2673, 260, 255, 256, 227, 0, 0, 1009, + 541, 0, 1464, 1439, 981, 1726, 1724, 0, 2323, 2423, + 2439, 2536, 252, 2623, 2632, 2642, 2747, 2673, 2705, 203, + 213, 208, 0, 270, 2642, 2747, 2673, 266, 1461, 0, + 1687, 1835, 1834, 2332, 0, 1434, 1433, 1551, 0, 1554, + 0, 2606, 1691, 1694, 1556, 1692, 2380, 1910, 1939, 1917, + 1939, 1939, 1906, 1906, 2469, 1919, 1907, 1908, 1944, 0, + 1939, 1906, 1911, 0, 1909, 1947, 1947, 1934, 3, 1891, + 1892, 1893, 1894, 1920, 1921, 1895, 1926, 1927, 1931, 1896, + 1961, 1906, 2381, 1728, 1729, 2323, 4, 2374, 5, 2285, + 2373, 6, 7, 1683, 0, 0, 1, 1707, 0, 1561, + 1723, 1723, 0, 1723, 0, 1675, 1683, 1678, 1682, 0, + 0, 0, 0, 0, 0, 1435, 0, 0, 0, 940, + 0, 1476, 1066, 0, 0, 0, 0, 0, 1318, 0, + 1118, 1117, 2383, 2366, 2367, 2368, 0, 2364, 2365, 2384, + 2385, 2386, 0, 2505, 1318, 0, 0, 2200, 2211, 2212, + 2213, 2427, 2486, 2208, 2209, 2210, 2202, 2203, 2204, 2205, + 2206, 2207, 0, 0, 1216, 2201, 0, 2505, 0, 1318, + 0, 175, 0, 150, 1318, 0, 0, 2505, 0, 0, + 2505, 0, 0, 0, 0, 0, 2505, 0, 0, 0, + 0, 0, 175, 2541, 0, 150, 2505, 0, 0, 1455, + 0, 0, 0, 1457, 1460, 1447, 0, 2282, 0, 2283, + 2340, 1543, 0, 1542, 1536, 1546, 1541, 1531, 0, 2332, + 0, 0, 0, 0, 923, 0, 0, 913, 0, 0, + 0, 924, 0, 925, 926, 0, 0, 0, 0, 922, + 0, 1445, 1437, 0, 1580, 1582, 1581, 1583, 1579, 541, + 0, 0, 0, 2505, 0, 150, 1515, 0, 2505, 150, + 0, 0, 464, 463, 150, 2364, 462, 461, 2427, 2486, + 0, 1108, 0, 1191, 150, 2505, 0, 196, 2505, 718, + 2505, 1556, 139, 0, 662, 0, 830, 2541, 150, 0, + 0, 0, 0, 0, 0, 142, 0, 0, 0, 0, + 0, 0, 0, 648, 659, 1592, 1590, 0, 1225, 254, + 253, 1223, 927, 2505, 1150, 145, 0, 0, 2505, 1496, + 2505, 145, 944, 928, 0, 914, 2505, 145, 1114, 2505, + 2369, 185, 0, 912, 2427, 2486, 2505, 145, 1218, 0, + 2505, 145, 2505, 181, 2505, 145, 2505, 145, 2505, 663, + 0, 0, 2505, 145, 2505, 2541, 183, 931, 2505, 145, + 938, 2505, 145, 2334, 2505, 0, 1448, 0, 1584, 0, + 1564, 2751, 0, 1707, 1005, 1004, 0, 1005, 0, 1005, + 0, 1005, 0, 1005, 0, 0, 0, 1005, 2362, 2363, + 987, 0, 1011, 0, 1019, 0, 1018, 1017, 1016, 0, + 0, 0, 1020, 0, 1839, 1619, 0, 1429, 1444, 0, + 0, 0, 142, 0, 1247, 1244, 142, 1246, 1245, 142, + 142, 1440, 259, 257, 0, 0, 0, 0, 0, 0, + 1446, 0, 1438, 0, 0, 0, 2342, 2344, 2345, 2214, + 2285, 0, 2710, 2711, 2712, 2274, 0, 2713, 2714, 2715, + 2766, 2095, 2081, 2090, 2096, 2082, 2084, 2091, 2716, 2717, + 2030, 2718, 2719, 2357, 2720, 2721, 2722, 2724, 2725, 2726, + 2727, 2728, 2729, 2730, 2731, 2086, 2088, 2732, 2733, 2735, + 0, 2358, 2736, 2737, 2572, 2739, 2740, 2742, 2743, 2092, + 2745, 2746, 2093, 2747, 2748, 2749, 2750, 2356, 508, 2094, + 2752, 2754, 2755, 2756, 2757, 2759, 2760, 2761, 2762, 0, + 0, 0, 2329, 0, 2059, 0, 1899, 1900, 1922, 1923, + 1901, 1928, 1929, 1902, 0, 2328, 1964, 2159, 2058, 2076, + 0, 2064, 2065, 0, 2057, 2053, 2161, 1709, 2324, 0, + 2054, 2341, 2343, 2275, 1709, 2322, 216, 272, 0, 273, + 2330, 2642, 204, 251, 219, 250, 221, 220, 218, 217, + 0, 2425, 205, 0, 0, 206, 0, 0, 0, 0, + 269, 267, 0, 1436, 0, 1837, 1836, 2333, 949, 0, + 1553, 1550, 2224, 0, 1693, 0, 0, 0, 1938, 1925, + 1933, 1932, 0, 1915, 1914, 1913, 0, 1912, 1939, 1939, + 1937, 1916, 1891, 0, 0, 0, 1943, 0, 1941, 1887, + 1883, 0, 1950, 1951, 1952, 1949, 1962, 1948, 0, 1897, + 1953, 0, 1906, 1903, 1794, 0, 1673, 1672, 8, 0, + 1558, 1560, 1534, 1556, 1721, 1722, 0, 0, 0, 0, + 0, 0, 0, 0, 1781, 1739, 1740, 1742, 1778, 1782, + 1790, 0, 1679, 0, 0, 0, 1841, 0, 0, 1462, + 0, 0, 0, 0, 0, 1149, 0, 0, 0, 0, + 941, 0, 0, 0, 1482, 0, 1484, 1485, 1486, 0, + 0, 0, 1487, 1488, 1476, 263, 1495, 1492, 1475, 1477, + 1490, 0, 0, 0, 0, 0, 0, 0, 1507, 0, + 189, 190, 0, 675, 659, 0, 2505, 0, 0, 0, + 0, 1159, 1166, 1317, 0, 0, 0, 0, 0, 0, + 0, 0, 1160, 1158, 0, 1161, 265, 1171, 1198, 1201, + 0, 0, 1116, 1119, 0, 0, 0, 0, 0, 1308, + 0, 0, 0, 1308, 0, 0, 0, 1317, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 288, 290, 303, + 368, 0, 640, 0, 0, 0, 643, 0, 2505, 1318, + 0, 0, 0, 1220, 0, 0, 0, 0, 0, 0, + 0, 0, 1201, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 148, 149, 154, 0, 0, 0, 0, 1201, + 0, 0, 0, 0, 0, 0, 0, 626, 639, 0, + 0, 0, 0, 0, 636, 0, 0, 150, 293, 616, + 622, 0, 0, 0, 725, 724, 0, 0, 0, 0, + 0, 0, 1405, 0, 1404, 0, 0, 0, 0, 0, + 1505, 1504, 0, 0, 0, 0, 0, 0, 1308, 0, + 282, 284, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 401, 402, 0, + 0, 0, 154, 0, 0, 1308, 0, 295, 0, 0, + 1456, 1453, 1454, 0, 1459, 0, 0, 0, 0, 2067, + 0, 2228, 1731, 2226, 2339, 2281, 0, 2387, 2787, 2788, + 2789, 2790, 2791, 2792, 2793, 2794, 2795, 2796, 2797, 2798, + 2799, 2800, 2801, 2802, 2803, 2804, 2805, 2806, 2807, 2808, + 2809, 2810, 2811, 2812, 2813, 2814, 2815, 2816, 2817, 2818, + 2819, 2820, 2821, 2822, 2823, 2824, 2825, 2826, 2827, 2828, + 2829, 2830, 2831, 2832, 2833, 2834, 2835, 2836, 2837, 2838, + 2839, 2840, 2841, 2842, 2843, 2844, 2845, 2846, 2847, 2848, + 2849, 2850, 2851, 2852, 2853, 2854, 2855, 2856, 2857, 2858, + 2859, 2860, 2861, 2862, 2863, 2864, 2278, 2277, 2337, 2388, + 2389, 2390, 2391, 2284, 0, 0, 239, 240, 238, 1544, + 241, 1545, 1540, 0, 1526, 0, 0, 0, 0, 0, + 0, 0, 0, 2427, 2486, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 838, 1476, 1514, 0, 0, 0, 668, 0, 2505, + 0, 152, 876, 0, 828, 465, 0, 0, 0, 0, + 1381, 152, 0, 0, 192, 0, 0, 722, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 829, 0, + 0, 152, 0, 2505, 619, 2505, 0, 541, 541, 0, + 0, 141, 138, 0, 0, 0, 0, 0, 0, 0, + 0, 1665, 1664, 1667, 1666, 0, 1663, 0, 143, 144, + 0, 1208, 1233, 0, 0, 0, 0, 0, 905, 930, + 0, 0, 1202, 0, 0, 2505, 145, 2505, 0, 2505, + 0, 0, 0, 1210, 145, 0, 1204, 0, 0, 1206, + 0, 1407, 0, 921, 919, 918, 920, 0, 0, 903, + 0, 0, 0, 0, 0, 898, 0, 0, 900, 0, + 0, 0, 0, 1707, 1563, 0, 995, 0, 999, 0, + 990, 0, 996, 0, 991, 988, 989, 0, 994, 0, + 0, 542, 544, 0, 0, 2451, 2468, 0, 2494, 2529, + 2530, 2582, 2597, 2626, 2632, 2638, 0, 2667, 2678, 0, + 1025, 1063, 1015, 734, 0, 0, 1629, 1430, 2233, 0, + 1707, 0, 0, 1248, 0, 0, 138, 258, 228, 0, + 0, 1063, 0, 2630, 1443, 980, 659, 0, 2055, 0, + 2062, 2063, 2273, 0, 0, 0, 0, 0, 0, 2061, + 0, 0, 0, 2295, 0, 2295, 0, 0, 0, 0, + 0, 1986, 0, 0, 2232, 0, 0, 2232, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1987, 1968, 1969, 2059, 2224, 0, 2060, 2353, 2350, 1961, + 0, 1961, 2392, 2214, 0, 2211, 2212, 2213, 2865, 2866, + 2867, 2868, 2869, 2870, 2871, 2872, 2873, 2874, 2875, 2876, + 2877, 2878, 2879, 2880, 2881, 0, 2882, 2883, 2884, 2885, + 2886, 2888, 2887, 2889, 2890, 2891, 2892, 2893, 2894, 2288, + 2896, 2897, 2898, 2899, 2900, 2901, 2902, 2903, 2904, 2905, + 2906, 2907, 2908, 2909, 2910, 2911, 2912, 2913, 2914, 2915, + 2916, 2917, 2918, 2919, 2920, 2921, 2922, 2923, 2924, 2925, + 2926, 2927, 2928, 2929, 2930, 2931, 2932, 2933, 2934, 2935, + 2936, 2937, 2938, 2939, 2940, 2941, 2942, 2943, 2944, 2945, + 2946, 2947, 2948, 2949, 2950, 2951, 2952, 2953, 2954, 2955, + 2956, 2957, 2958, 2959, 2960, 2961, 2962, 2963, 2964, 2965, + 2966, 2967, 2968, 2969, 2970, 2971, 2972, 2973, 2974, 2975, + 2976, 2977, 2978, 2979, 2980, 2981, 2982, 2983, 2984, 2985, + 2986, 2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995, + 2996, 2997, 2998, 2999, 3000, 3001, 3002, 3003, 3004, 3005, + 3006, 3007, 3008, 3009, 3010, 3011, 3012, 3013, 3014, 3015, + 3016, 3017, 3018, 3019, 3020, 3021, 3022, 3023, 3024, 3025, + 3026, 3027, 3028, 3029, 3030, 3031, 3032, 3033, 3034, 3035, + 3036, 3037, 3038, 3039, 3040, 3041, 3042, 3043, 3044, 3045, + 3046, 3047, 3048, 3049, 2001, 3050, 3051, 3052, 3053, 3054, + 3055, 3056, 3057, 3058, 3059, 3060, 3061, 3062, 3063, 3064, + 3065, 3066, 3067, 3068, 3069, 3070, 3071, 3072, 3073, 3074, + 3075, 3076, 3077, 3078, 3079, 3080, 3081, 3082, 3083, 3084, + 3085, 3086, 3087, 3088, 3089, 3090, 3091, 3092, 3093, 3094, + 3095, 3096, 3097, 3098, 3099, 3100, 3101, 3102, 3103, 3104, + 3105, 3106, 2003, 3107, 3108, 3109, 3110, 3111, 3112, 3113, + 3114, 3115, 3116, 3117, 3118, 3119, 3120, 3121, 3122, 3123, + 3124, 3125, 3126, 3127, 3128, 3129, 3130, 3131, 3132, 3133, + 3134, 3135, 3136, 3137, 3138, 3139, 3140, 3141, 3144, 3142, + 3143, 3145, 3146, 3147, 3148, 3149, 3150, 3151, 3152, 3153, + 3154, 3155, 3156, 3157, 3158, 3159, 3160, 3161, 3162, 3163, + 3164, 3165, 3166, 3167, 3168, 3169, 3170, 3171, 3172, 3173, + 3174, 3175, 3176, 3177, 3178, 3179, 3180, 3181, 3182, 3183, + 3184, 3185, 3186, 3187, 3188, 3189, 3190, 3191, 3192, 3193, + 3194, 3195, 3196, 3197, 3198, 3199, 3200, 3202, 3201, 3203, + 3204, 3205, 3206, 3207, 3208, 3209, 3210, 3211, 3212, 3213, + 3214, 3215, 3216, 3217, 3218, 3219, 3220, 3221, 3222, 3223, + 3224, 3225, 3226, 3227, 3228, 3229, 3230, 3231, 3232, 3233, + 3234, 3235, 3236, 3237, 3238, 3239, 3240, 3241, 3242, 3243, + 3244, 3245, 3246, 3247, 3248, 3249, 3250, 3251, 3252, 3253, + 3254, 3255, 3256, 3257, 3258, 3259, 3260, 3261, 3262, 3263, + 3264, 3265, 3266, 3267, 3268, 3269, 3270, 3271, 3272, 3273, + 3274, 3275, 3276, 3277, 3278, 3279, 3280, 3281, 3282, 3283, + 3284, 3285, 3286, 3287, 3288, 3289, 3290, 3291, 3292, 3293, + 3294, 3295, 3296, 0, 2208, 2209, 2210, 2202, 2203, 2204, + 2205, 2206, 2207, 2218, 0, 0, 2327, 2393, 0, 2161, + 0, 1983, 0, 2169, 0, 0, 1794, 2348, 0, 2346, + 2276, 1794, 274, 275, 271, 0, 0, 223, 224, 222, + 0, 244, 243, 248, 249, 215, 247, 0, 242, 226, + 2145, 2144, 225, 214, 233, 211, 209, 229, 231, 232, + 212, 210, 268, 0, 0, 0, 145, 1561, 1548, 0, + 0, 2288, 0, 2222, 0, 0, 2220, 0, 0, 0, + 1791, 0, 1695, 0, 1699, 0, 0, 0, 1936, 1935, + 1888, 1884, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 942, 0, 1904, 0, 1857, + 2375, 2376, 2286, 1727, 1561, 0, 1557, 1690, 1689, 1732, + 1733, 1100, 1688, 1761, 1762, 0, 0, 0, 0, 1787, + 1785, 1752, 1743, 1751, 0, 0, 1749, 0, 1753, 1964, + 1780, 1677, 1737, 1738, 1741, 1676, 0, 1783, 0, 1632, + 1781, 1742, 1616, 0, 1594, 0, 0, 1842, 0, 0, + 1463, 0, 0, 0, 1129, 1131, 0, 1130, 0, 1133, + 0, 1142, 0, 0, 1128, 1147, 0, 1136, 1134, 0, + 1503, 0, 0, 0, 0, 0, 1483, 0, 0, 0, + 2667, 262, 1486, 1491, 1478, 1489, 0, 0, 0, 0, + 0, 1065, 1064, 0, 0, 1084, 0, 0, 508, 1510, + 530, 0, 370, 0, 0, 0, 0, 0, 0, 0, + 0, 824, 821, 0, 0, 820, 0, 673, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 698, + 0, 1308, 0, 301, 0, 1168, 0, 1167, 0, 1172, + 0, 0, 1169, 1164, 1165, 2632, 2642, 2673, 264, 1170, + 1200, 0, 1199, 1195, 0, 1111, 0, 1112, 0, 0, + 0, 0, 0, 2478, 2505, 309, 332, 0, 1307, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 354, 0, 0, 357, 356, 0, + 0, 0, 0, 0, 362, 0, 340, 0, 341, 0, + 361, 0, 0, 0, 641, 642, 0, 0, 0, 1308, + 0, 297, 0, 0, 0, 0, 0, 0, 0, 0, + 1217, 0, 751, 0, 0, 2632, 1196, 0, 1390, 0, + 2666, 1391, 1394, 541, 0, 541, 1396, 0, 0, 1393, + 1395, 0, 0, 178, 0, 173, 177, 0, 0, 2632, + 1197, 0, 0, 0, 0, 0, 624, 625, 638, 0, + 629, 630, 627, 631, 632, 0, 0, 0, 0, 0, + 0, 0, 623, 0, 0, 720, 719, 723, 0, 0, + 0, 0, 0, 0, 1399, 0, 0, 1191, 0, 0, + 1398, 1406, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1251, 1250, 0, 0, 0, 0, 1318, 0, + 866, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 180, 738, 0, 737, 0, 174, 179, 0, 0, 0, + 0, 0, 0, 0, 0, 237, 1452, 1458, 1731, 1731, + 1731, 2073, 0, 0, 0, 0, 1730, 2279, 2282, 1531, + 1537, 1530, 1529, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 415, 412, 413, 415, 0, 0, 0, 0, 840, 0, + 843, 846, 1474, 492, 0, 0, 665, 698, 0, 0, + 468, 187, 0, 0, 0, 0, 753, 0, 1191, 1190, + 147, 138, 196, 466, 0, 195, 197, 199, 200, 201, + 198, 202, 0, 717, 721, 0, 0, 0, 0, 661, + 0, 0, 0, 0, 0, 0, 0, 1862, 0, 0, + 172, 0, 0, 614, 618, 0, 0, 0, 0, 468, + 580, 381, 2505, 0, 541, 0, 2505, 0, 137, 0, + 827, 0, 0, 0, 1153, 1153, 0, 0, 767, 766, + 0, 0, 0, 0, 0, 0, 1662, 145, 1151, 0, + 1497, 0, 145, 945, 145, 1115, 186, 2370, 0, 907, + 0, 0, 0, 0, 145, 1219, 895, 145, 182, 145, + 145, 664, 0, 145, 184, 0, 0, 145, 939, 145, + 2335, 0, 145, 1587, 2505, 541, 1565, 992, 1001, 1000, + 998, 997, 993, 0, 1012, 0, 540, 0, 0, 0, + 0, 0, 1033, 1034, 0, 0, 1030, 1035, 0, 1037, + 1021, 1023, 1031, 1032, 1038, 1027, 1026, 1039, 1040, 0, + 0, 0, 1052, 732, 0, 0, 0, 0, 1626, 0, + 1624, 0, 1840, 1628, 1617, 1577, 0, 1576, 0, 607, + 1242, 1241, 1243, 0, 1009, 0, 145, 0, 1442, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2237, 0, 2238, 0, 0, 2272, 2268, 0, 0, 0, + 0, 0, 2242, 0, 2245, 2246, 2247, 2244, 2248, 2243, + 0, 0, 2249, 0, 0, 0, 2059, 2291, 2291, 2316, + 0, 2315, 2321, 2228, 1964, 0, 0, 2312, 2306, 0, + 2312, 0, 0, 0, 0, 0, 0, 2228, 2231, 0, + 0, 2743, 0, 0, 0, 0, 2031, 0, 0, 2195, + 0, 2228, 0, 0, 0, 0, 0, 0, 0, 2224, + 2264, 0, 506, 0, 2021, 0, 0, 0, 2143, 0, + 2140, 0, 0, 0, 0, 2285, 0, 2354, 0, 2351, + 1965, 1979, 1980, 1981, 1984, 2326, 0, 2287, 0, 0, + 1966, 1992, 0, 2265, 2017, 0, 2022, 2007, 2296, 2250, + 2251, 2252, 2253, 2024, 0, 2000, 2005, 2009, 0, 2305, + 1988, 0, 1985, 0, 2288, 2223, 0, 2221, 0, 1976, + 1977, 1978, 1970, 1971, 1972, 1973, 1974, 1975, 1982, 2199, + 2197, 2198, 0, 0, 2169, 0, 0, 2004, 0, 0, + 2075, 2497, 2536, 0, 1720, 1720, 1720, 1708, 1718, 2325, + 1857, 1731, 1857, 2331, 0, 0, 1961, 0, 1838, 947, + 948, 946, 1533, 1547, 1561, 2225, 1555, 1697, 0, 0, + 0, 1905, 1918, 0, 1945, 1946, 1947, 1947, 0, 1889, + 0, 1930, 1955, 1956, 1957, 1958, 1959, 1960, 0, 1954, + 1898, 943, 0, 2628, 2763, 0, 1818, 1793, 1795, 1805, + 1818, 1825, 1818, 2077, 1855, 2078, 2079, 2332, 0, 1764, + 2372, 1535, 1559, 0, 1098, 1099, 0, 1103, 2743, 2628, + 0, 0, 0, 0, 1754, 1788, 0, 1779, 0, 2342, + 1755, 2341, 1756, 1759, 1760, 1750, 1789, 1630, 0, 1784, + 1681, 1680, 0, 1860, 0, 0, 0, 1608, 1596, 0, + 0, 1843, 0, 1794, 1634, 0, 2285, 1792, 1357, 1252, + 1319, 1132, 0, 1906, 1143, 0, 1127, 0, 1126, 1906, + 0, 1144, 0, 1906, 1358, 1253, 1320, 1359, 1254, 1321, + 1360, 1494, 1255, 1493, 1481, 1480, 1479, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 805, 2505, 145, 1508, 1361, 0, 1256, 369, 1509, + 1322, 1513, 823, 822, 0, 0, 1323, 0, 674, 679, + 0, 681, 682, 2427, 2486, 683, 686, 687, 0, 689, + 678, 677, 0, 0, 0, 0, 0, 695, 700, 0, + 0, 0, 0, 0, 0, 1162, 1163, 1362, 1259, 0, + 1324, 0, 1110, 0, 1260, 188, 0, 0, 289, 2505, + 311, 0, 490, 805, 0, 1310, 308, 338, 0, 353, + 348, 349, 347, 2505, 145, 2505, 145, 0, 0, 0, + 0, 0, 350, 345, 346, 342, 0, 0, 355, 2399, + 2470, 2643, 0, 706, 708, 0, 713, 358, 1280, 377, + 376, 375, 0, 363, 0, 382, 385, 0, 360, 339, + 337, 334, 304, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1212, 0, 1365, 1325, 0, 1347, + 0, 0, 0, 0, 745, 1368, 1266, 1328, 0, 541, + 0, 0, 556, 556, 541, 1379, 1267, 176, 1297, 165, + 0, 0, 161, 0, 0, 0, 0, 153, 1369, 1268, + 1329, 0, 0, 1370, 1269, 0, 0, 294, 617, 628, + 633, 1274, 637, 634, 1337, 635, 1377, 1270, 0, 1373, + 1300, 1332, 600, 1191, 1191, 1380, 1400, 1271, 1191, 0, + 1308, 0, 283, 285, 0, 142, 0, 1272, 0, 1330, + 1372, 1299, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1516, 0, 0, 0, 0, 0, 0, 145, 0, + 0, 0, 1310, 2505, 145, 1371, 0, 1305, 0, 1345, + 0, 0, 403, 0, 1298, 1308, 0, 296, 1276, 0, + 1339, 0, 0, 235, 234, 236, 0, 0, 0, 0, + 2229, 2230, 0, 2227, 2068, 2281, 0, 1527, 969, 955, + 968, 0, 951, 2468, 0, 954, 956, 0, 0, 0, + 957, 961, 962, 0, 953, 950, 952, 0, 414, 0, + 0, 762, 763, 0, 0, 0, 0, 842, 0, 0, + 1506, 0, 150, 672, 0, 0, 0, 667, 697, 702, + 0, 0, 0, 0, 467, 471, 475, 476, 477, 0, + 0, 0, 0, 166, 151, 0, 884, 0, 541, 0, + 755, 1191, 1383, 0, 196, 191, 0, 0, 718, 0, + 1556, 0, 0, 595, 598, 597, 0, 381, 837, 835, + 834, 836, 858, 833, 0, 1861, 1863, 0, 0, 0, + 0, 0, 0, 607, 470, 0, 0, 544, 0, 583, + 0, 0, 0, 0, 580, 0, 0, 0, 2380, 0, + 854, 826, 0, 1121, 0, 1139, 1122, 0, 0, 0, + 0, 1176, 1183, 1152, 1177, 1154, 1183, 0, 0, 768, + 772, 771, 775, 773, 0, 769, 646, 1668, 1669, 0, + 1209, 0, 0, 1502, 0, 1500, 906, 1203, 145, 0, + 145, 0, 145, 1211, 1205, 1207, 1408, 0, 904, 0, + 0, 897, 899, 0, 901, 0, 1013, 543, 0, 0, + 0, 0, 0, 0, 1029, 644, 1036, 0, 0, 0, + 1051, 1046, 1048, 0, 1063, 1057, 0, 731, 0, 0, + 1627, 1620, 1622, 1621, 0, 0, 1618, 2234, 896, 0, + 613, 0, 1063, 1054, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1725, 2235, 2236, 0, 0, + 0, 2269, 0, 0, 2112, 0, 2083, 2085, 0, 2098, + 0, 2113, 2066, 2291, 0, 2295, 2289, 2132, 0, 0, + 0, 2295, 0, 2315, 0, 0, 2127, 2129, 0, 0, + 0, 2305, 2305, 2114, 2087, 2089, 2099, 0, 0, 2215, + 0, 2102, 2101, 0, 2033, 2034, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2048, 2103, 2194, 0, 0, 0, + 2105, 2104, 0, 0, 2263, 0, 0, 0, 2110, 507, + 2115, 0, 0, 0, 0, 2121, 0, 2151, 0, 0, + 0, 2056, 2225, 0, 0, 0, 0, 0, 0, 0, + 2298, 2299, 2300, 2297, 0, 2023, 2008, 2026, 2002, 2006, + 2010, 0, 2305, 2025, 0, 0, 2028, 0, 0, 1996, + 0, 0, 1994, 2018, 1990, 0, 0, 2019, 0, 2074, + 0, 0, 0, 2172, 2167, 2168, 1720, 1720, 1720, 1720, + 1717, 0, 0, 0, 1764, 0, 1764, 207, 0, 245, + 230, 1532, 1698, 1707, 1924, 0, 1942, 1940, 1885, 1890, + 1963, 1818, 1825, 1818, 0, 0, 1683, 0, 1805, 0, + 1817, 1803, 1816, 0, 0, 1831, 1829, 0, 1831, 0, + 1831, 0, 1797, 0, 1821, 1799, 1816, 1801, 0, 1847, + 2333, 1856, 0, 1777, 1734, 0, 2216, 1103, 0, 1736, + 1758, 1757, 0, 1747, 0, 1786, 1744, 1631, 1615, 0, + 1613, 1600, 1602, 1601, 0, 0, 1603, 2285, 0, 1613, + 1595, 0, 1639, 0, 0, 1860, 0, 1638, 0, 1906, + 1124, 1125, 0, 1148, 0, 1068, 1069, 0, 1067, 0, + 0, 0, 529, 1083, 0, 0, 0, 805, 0, 0, + 533, 0, 1511, 0, 1378, 1296, 676, 0, 0, 0, + 0, 691, 650, 692, 694, 0, 0, 693, 696, 699, + 1308, 0, 302, 1282, 0, 1343, 1156, 0, 0, 1113, + 0, 0, 0, 0, 0, 0, 489, 486, 333, 0, + 0, 0, 0, 390, 0, 313, 325, 388, 331, 0, + 365, 0, 336, 0, 329, 351, 343, 352, 344, 364, + 366, 0, 710, 711, 709, 705, 0, 712, 714, 0, + 379, 0, 0, 0, 359, 0, 1364, 0, 1308, 0, + 298, 1278, 0, 1341, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1346, 0, 0, 0, + 0, 750, 0, 747, 0, 556, 0, 1392, 0, 1389, + 1387, 556, 0, 0, 156, 157, 155, 0, 164, 0, + 0, 0, 0, 0, 0, 1401, 1402, 1403, 0, 0, + 0, 0, 0, 0, 397, 0, 305, 307, 306, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 404, 372, 0, 861, + 0, 0, 0, 406, 0, 0, 1356, 0, 0, 0, + 0, 0, 1363, 1261, 2071, 2072, 2069, 1731, 2280, 0, + 0, 0, 966, 0, 0, 0, 0, 417, 418, 150, + 416, 439, 0, 805, 0, 0, 839, 844, 852, 2572, + 2202, 2203, 850, 845, 847, 849, 851, 848, 0, 0, + 0, 0, 511, 0, 0, 0, 498, 0, 0, 508, + 491, 494, 495, 0, 0, 668, 671, 669, 670, 0, + 690, 0, 470, 518, 570, 0, 168, 0, 0, 169, + 167, 0, 0, 381, 752, 0, 749, 1382, 0, 194, + 0, 722, 0, 0, 0, 0, 0, 1191, 660, 0, + 857, 859, 831, 0, 702, 0, 0, 619, 0, 541, + 1588, 602, 0, 572, 470, 570, 579, 0, 0, 587, + 380, 0, 0, 607, 381, 0, 0, 1084, 0, 853, + 0, 0, 1120, 0, 0, 0, 1173, 1178, 1174, 0, + 1153, 1135, 0, 1175, 0, 0, 1181, 1106, 1155, 1107, + 1424, 1425, 1422, 1423, 0, 0, 0, 0, 0, 0, + 1659, 0, 0, 1498, 0, 908, 0, 891, 0, 893, + 145, 739, 0, 145, 0, 0, 0, 0, 0, 0, + 1028, 0, 1022, 1024, 1049, 0, 0, 1063, 1062, 0, + 1053, 1061, 1059, 1060, 1058, 0, 0, 1625, 1623, 605, + 0, 0, 145, 1063, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2239, 0, 2271, 2267, 0, 2080, + 2241, 2240, 2294, 2293, 0, 0, 0, 2317, 0, 0, + 2295, 2309, 2308, 0, 0, 2307, 2295, 2295, 0, 0, + 0, 2195, 0, 0, 2032, 2044, 2045, 2046, 2256, 0, + 2051, 0, 2041, 2042, 2043, 2035, 2036, 2037, 2038, 2039, + 2040, 2047, 2260, 2259, 0, 0, 2107, 2108, 2109, 2262, + 2116, 0, 2417, 2152, 0, 2120, 2142, 2141, 0, 0, + 0, 2123, 0, 0, 2138, 0, 2196, 2355, 2352, 1967, + 0, 0, 1993, 2266, 2011, 0, 2027, 2029, 2302, 2304, + 1989, 2215, 0, 0, 0, 0, 0, 1998, 0, 0, + 2192, 0, 0, 0, 2174, 2171, 0, 0, 0, 0, + 1711, 1710, 1716, 1777, 2068, 1777, 0, 0, 1886, 1804, + 1800, 1802, 0, 2758, 0, 1807, 1814, 0, 1796, 0, + 1830, 1826, 0, 1827, 0, 0, 1828, 0, 0, 1798, + 0, 1814, 0, 1854, 1723, 0, 2163, 0, 1735, 1101, + 1102, 1745, 0, 1748, 2447, 1858, 0, 1614, 0, 0, + 0, 1605, 1611, 1593, 0, 0, 0, 1635, 1613, 1636, + 1145, 0, 0, 1137, 1074, 1075, 1078, 1076, 1073, 1077, + 0, 0, 0, 805, 0, 0, 551, 0, 1097, 1097, + 0, 0, 535, 592, 0, 808, 0, 0, 0, 806, + 145, 1257, 0, 0, 0, 0, 651, 1376, 1258, 0, + 0, 0, 0, 1157, 1311, 0, 0, 1281, 0, 310, + 488, 487, 0, 485, 702, 0, 0, 316, 326, 0, + 321, 0, 1309, 0, 0, 0, 320, 323, 322, 392, + 0, 389, 0, 145, 145, 367, 707, 378, 383, 384, + 387, 1316, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 885, 868, 0, 0, 886, + 887, 0, 0, 0, 1214, 1215, 1213, 1348, 1349, 1354, + 1351, 1350, 1353, 1355, 1352, 0, 1264, 0, 0, 743, + 1312, 1384, 1386, 1385, 0, 1388, 162, 159, 158, 160, + 163, 1313, 1294, 1275, 1338, 601, 0, 0, 0, 1273, + 0, 1331, 0, 1290, 1284, 0, 0, 0, 0, 0, + 1375, 1304, 1336, 1374, 1302, 1334, 1301, 1333, 1303, 1335, + 1295, 0, 0, 1865, 865, 0, 0, 0, 145, 145, + 864, 741, 1277, 0, 1340, 1286, 0, 0, 0, 958, + 0, 0, 0, 960, 422, 440, 150, 0, 761, 825, + 0, 0, 841, 0, 496, 0, 502, 509, 0, 0, + 513, 514, 512, 497, 1191, 541, 1191, 794, 795, 0, + 0, 815, 0, 666, 0, 0, 468, 0, 515, 0, + 0, 472, 171, 170, 0, 0, 0, 756, 760, 758, + 757, 759, 754, 0, 745, 196, 2505, 0, 0, 0, + 0, 599, 593, 596, 1397, 832, 0, 1864, 735, 0, + 381, 615, 0, 0, 0, 468, 607, 0, 473, 478, + 479, 492, 0, 580, 571, 0, 572, 581, 582, 0, + 589, 1472, 0, 608, 589, 0, 0, 0, 856, 0, + 855, 0, 1123, 1140, 1141, 0, 0, 1183, 0, 0, + 1185, 1180, 0, 0, 774, 777, 770, 653, 145, 0, + 1501, 145, 145, 1240, 0, 902, 1043, 1044, 1045, 1042, + 1041, 645, 0, 1047, 1006, 1056, 733, 0, 606, 0, + 1007, 145, 983, 975, 982, 971, 974, 976, 0, 978, + 979, 973, 970, 972, 2270, 2097, 0, 2290, 2131, 2314, + 2313, 2130, 2320, 0, 2311, 2310, 0, 0, 2100, 2111, + 0, 2194, 2225, 0, 0, 2052, 0, 0, 0, 2106, + 2753, 0, 0, 2156, 2157, 0, 2153, 2154, 2149, 2150, + 2122, 0, 2561, 2133, 0, 0, 2148, 2015, 2013, 2012, + 2301, 2303, 1997, 0, 0, 1995, 1991, 0, 2020, 2158, + 2191, 2225, 2160, 0, 1731, 1715, 1714, 1713, 1712, 2163, + 2349, 2347, 2163, 246, 1702, 1850, 0, 1853, 0, 0, + 1806, 0, 0, 1808, 0, 0, 1810, 1812, 0, 0, + 0, 0, 0, 0, 2336, 0, 1776, 0, 1731, 0, + 1746, 0, 1612, 1597, 0, 1598, 1604, 0, 0, 0, + 0, 0, 1640, 1633, 1138, 1146, 0, 0, 0, 531, + 0, 546, 0, 0, 0, 1090, 140, 1089, 0, 546, + 546, 810, 809, 812, 807, 811, 1512, 0, 684, 685, + 688, 1283, 0, 1344, 1292, 0, 1629, 312, 484, 483, + 492, 319, 0, 0, 0, 314, 391, 393, 315, 318, + 372, 335, 328, 0, 0, 0, 1279, 0, 1342, 1288, + 1315, 1366, 1262, 1326, 0, 0, 874, 0, 0, 0, + 0, 1367, 1263, 1327, 0, 0, 0, 0, 0, 1629, + 0, 0, 0, 0, 0, 0, 0, 0, 1521, 0, + 0, 371, 863, 862, 372, 405, 1306, 0, 2070, 0, + 959, 964, 965, 963, 0, 411, 419, 422, 0, 0, + 1231, 1231, 0, 0, 493, 510, 0, 591, 550, 591, + 0, 0, 0, 0, 0, 703, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 748, 747, 193, 0, + 468, 0, 702, 0, 860, 0, 0, 0, 607, 470, + 0, 0, 1585, 469, 0, 0, 481, 0, 583, 572, + 580, 0, 0, 604, 0, 1465, 0, 610, 0, 0, + 0, 804, 1179, 0, 1193, 0, 1134, 1104, 1188, 0, + 1707, 1857, 0, 0, 0, 0, 787, 0, 657, 1232, + 1499, 892, 894, 740, 1050, 0, 1063, 1055, 977, 2292, + 2319, 2128, 2318, 2255, 2196, 2049, 0, 2258, 2257, 2261, + 0, 2117, 0, 2118, 2155, 2124, 2134, 0, 2125, 2146, + 0, 0, 2016, 2014, 1999, 2193, 0, 2178, 1685, 1684, + 0, 1705, 1855, 0, 0, 1849, 0, 0, 1879, 0, + 0, 0, 1815, 1833, 0, 1811, 1809, 0, 1822, 0, + 1824, 2446, 2722, 2625, 0, 1763, 1765, 1768, 1770, 1769, + 1771, 1767, 2162, 2164, 0, 1742, 2217, 1859, 0, 0, + 0, 1085, 0, 0, 1641, 1642, 1637, 1051, 0, 145, + 1097, 0, 1191, 552, 2572, 553, 1096, 1100, 139, 0, + 1191, 1191, 680, 0, 0, 291, 480, 0, 317, 327, + 374, 386, 0, 1629, 0, 0, 872, 881, 881, 869, + 0, 0, 888, 1265, 744, 0, 555, 0, 286, 1291, + 1285, 0, 0, 0, 1523, 1524, 0, 0, 0, 0, + 0, 1314, 145, 1287, 967, 0, 442, 449, 423, 427, + 1515, 0, 1515, 0, 424, 428, 1515, 1515, 421, 1857, + 438, 1231, 0, 1228, 1227, 539, 621, 0, 0, 500, + 0, 561, 499, 0, 816, 0, 0, 701, 0, 470, + 570, 0, 528, 519, 520, 521, 522, 524, 523, 525, + 526, 527, 517, 516, 0, 702, 878, 381, 1472, 742, + 0, 0, 715, 0, 702, 0, 1588, 603, 572, 470, + 570, 474, 492, 0, 587, 580, 583, 0, 584, 0, + 588, 0, 0, 0, 607, 1525, 1084, 0, 0, 805, + 1192, 1153, 0, 0, 1182, 1186, 1187, 0, 0, 0, + 0, 1235, 781, 782, 776, 778, 0, 789, 793, 652, + 0, 0, 656, 647, 702, 145, 0, 2050, 0, 0, + 2136, 2135, 2147, 2126, 2173, 0, 0, 0, 0, 0, + 0, 0, 1696, 1848, 1851, 0, 1882, 0, 0, 0, + 0, 1868, 0, 1813, 0, 0, 1823, 0, 0, 0, + 1772, 0, 0, 0, 1781, 0, 1610, 1857, 0, 1607, + 0, 1650, 0, 1643, 1070, 0, 1071, 1091, 0, 591, + 0, 1103, 1100, 541, 591, 591, 1293, 0, 621, 0, + 330, 0, 299, 1289, 0, 0, 883, 883, 0, 0, + 0, 0, 0, 0, 399, 0, 0, 1517, 0, 1518, + 1519, 1522, 407, 420, 0, 447, 0, 445, 444, 446, + 0, 435, 0, 0, 0, 0, 0, 0, 410, 1226, + 1230, 1229, 0, 501, 0, 503, 0, 0, 547, 548, + 549, 0, 505, 557, 558, 813, 0, 818, 0, 704, + 0, 0, 702, 569, 726, 0, 0, 0, 1466, 0, + 0, 594, 736, 1472, 607, 580, 0, 572, 482, 0, + 589, 583, 587, 585, 586, 0, 1469, 0, 609, 0, + 1093, 803, 0, 1183, 1194, 1189, 1184, 1428, 0, 0, + 779, 784, 783, 1515, 788, 0, 0, 0, 655, 654, + 730, 1008, 2254, 2139, 2119, 2137, 2709, 2447, 2681, 0, + 2190, 2179, 2190, 2190, 2170, 0, 0, 0, 0, 0, + 1880, 1881, 1866, 0, 0, 1870, 1820, 1846, 0, 0, + 0, 1766, 2165, 2166, 2371, 1599, 1609, 1086, 0, 0, + 0, 1650, 0, 0, 556, 0, 1087, 1103, 550, 805, + 805, 1629, 324, 373, 0, 0, 0, 879, 882, 870, + 871, 890, 889, 746, 1629, 0, 395, 394, 0, 398, + 0, 443, 452, 0, 450, 425, 430, 0, 434, 432, + 431, 426, 429, 538, 0, 0, 0, 0, 0, 0, + 559, 0, 560, 0, 817, 0, 0, 0, 728, 877, + 0, 0, 468, 702, 1467, 1586, 583, 572, 580, 0, + 0, 574, 1097, 1097, 455, 587, 589, 1470, 1471, 0, + 0, 508, 0, 1105, 1427, 1426, 1707, 0, 0, 0, + 790, 791, 786, 0, 0, 0, 2183, 2182, 2181, 2185, + 2184, 0, 2177, 2175, 2176, 0, 0, 0, 1852, 0, + 1869, 1872, 0, 0, 0, 1878, 1871, 1873, 0, 1832, + 0, 1844, 1774, 0, 1773, 1857, 1649, 0, 0, 145, + 545, 805, 554, 1088, 561, 534, 532, 292, 1629, 873, + 0, 287, 0, 400, 1520, 448, 0, 433, 620, 504, + 590, 566, 0, 565, 0, 563, 562, 814, 819, 0, + 702, 867, 1472, 716, 587, 580, 583, 0, 573, 0, + 140, 140, 589, 453, 0, 0, 381, 0, 1410, 1707, + 1409, 1411, 1419, 1416, 1418, 1417, 1415, 0, 1238, 1239, + 780, 785, 0, 0, 0, 0, 2187, 0, 2188, 0, + 0, 0, 0, 1875, 1876, 1877, 1874, 1819, 0, 1775, + 1606, 1652, 0, 0, 1644, 1645, 0, 1072, 536, 805, + 300, 880, 0, 451, 564, 541, 541, 702, 727, 1468, + 589, 583, 587, 1097, 575, 577, 576, 457, 1093, 1094, + 0, 589, 793, 0, 1420, 1414, 1683, 1670, 0, 0, + 792, 0, 2180, 2186, 2189, 0, 0, 0, 0, 0, + 0, 1647, 0, 0, 0, 1646, 537, 0, 568, 567, + 729, 456, 587, 589, 140, 508, 1092, 0, 1857, 0, + 1412, 1707, 0, 0, 798, 1701, 1700, 0, 0, 1704, + 0, 1845, 1651, 1648, 0, 0, 0, 0, 1653, 396, + 589, 454, 578, 381, 1095, 1079, 0, 1413, 0, 0, + 800, 0, 796, 799, 801, 802, 0, 0, 1867, 1657, + 0, 0, 0, 458, 589, 0, 0, 0, 764, 0, + 1731, 0, 0, 0, 0, 1857, 0, 0, 0, 797, + 0, 0, 1654, 1658, 0, 1655, 1080, 798, 1236, 1237, + 0, 1703, 0, 0, 0, 765, 1656 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 57, 58, 59, 60, 61, 62, 1588, 2975, 2829, - 3765, 3766, 63, 64, 1584, 65, 66, 67, 68, 1498, - 69, 1081, 1837, 2989, 70, 2665, 826, 827, 828, 2530, - 2531, 2920, 2532, 2519, 1348, 1783, 1520, 800, 801, 1480, - 1521, 72, 73, 1342, 2508, 74, 75, 76, 1551, 1645, - 1552, 1553, 1492, 1883, 4833, 5593, 3555, 2784, 3813, 3556, - 3557, 4199, 4200, 4289, 5607, 5608, 77, 1661, 1662, 78, - 79, 2957, 3731, 4342, 5199, 5200, 5436, 639, 4856, 4857, - 5423, 5424, 5621, 5772, 5773, 2990, 670, 3808, 4426, 3756, - 4927, 3757, 4928, 3758, 4929, 4189, 4190, 3742, 4373, 4374, - 2028, 4869, 4375, 3759, 4888, 5470, 3760, 2684, 5636, 3024, - 1955, 1953, 5371, 5449, 4687, 4688, 4262, 5645, 5646, 5647, - 5893, 4890, 4933, 4934, 5809, 5810, 3811, 4432, 4940, 5257, - 5447, 3453, 81, 3784, 3785, 82, 733, 1859, 3910, 734, - 3027, 671, 735, 2991, 87, 3017, 5638, 3018, 1614, 2843, - 4355, 3888, 88, 1108, 4164, 5282, 5530, 5531, 724, 89, - 1845, 90, 91, 2970, 3749, 92, 2701, 3470, 93, 94, - 3489, 3490, 3491, 95, 4383, 5218, 1554, 3544, 3545, 3546, - 3547, 4220, 96, 1840, 2998, 2999, 97, 98, 99, 3128, - 3129, 100, 2906, 101, 102, 103, 104, 4256, 4789, 4904, - 3586, 3772, 4399, 4902, 105, 3735, 2992, 3045, 3846, 3847, - 5280, 5522, 5523, 5524, 5696, 5928, 5526, 5698, 5831, 5700, - 4879, 6060, 6061, 5507, 4153, 4701, 107, 4880, 4881, 5651, - 108, 2699, 109, 110, 1814, 2963, 2964, 4356, 3034, 3821, - 3822, 4412, 4413, 111, 3673, 112, 4765, 4766, 672, 5659, - 5599, 5758, 113, 114, 4769, 4770, 115, 116, 117, 118, - 119, 725, 1043, 1044, 727, 1163, 1164, 3425, 1125, 120, - 2540, 121, 3711, 122, 1234, 4992, 123, 759, 1179, 1180, - 2993, 125, 769, 3147, 771, 3113, 3114, 1971, 3892, 3893, - 4500, 126, 127, 3125, 3150, 128, 1485, 2675, 2676, 4682, - 2994, 673, 1219, 3031, 3448, 5359, 5110, 5360, 5820, 5984, - 5111, 5377, 3369, 4102, 130, 674, 1526, 2740, 1131, 1132, - 3038, 3826, 2645, 2646, 1684, 4453, 2648, 3828, 2649, 1459, - 2650, 1118, 1119, 3834, 3835, 3836, 3837, 4449, 4459, 4460, - 5274, 5515, 4456, 1833, 5268, 5269, 131, 1523, 2737, 132, - 133, 134, 1567, 968, 1141, 1142, 135, 686, 687, 136, - 5441, 137, 1121, 138, 5278, 139, 140, 791, 792, 141, - 142, 2754, 4202, 143, 1524, 144, 145, 3580, 3581, 4781, - 146, 147, 148, 2815, 2816, 149, 150, 151, 152, 153, - 5918, 5987, 5988, 5989, 4467, 5825, 154, 1211, 155, 156, - 157, 158, 196, 1009, 1010, 1011, 921, 2995, 5259, 160, - 161, 1481, 1482, 1483, 1484, 2670, 162, 163, 164, 3856, - 3857, 165, 166, 167, 168, 1817, 169, 170, 5414, 171, - 172, 1787, 173, 174, 1017, 1018, 1019, 1020, 1785, 3317, - 633, 845, 1375, 1381, 1424, 1425, 1426, 176, 737, 177, - 1214, 1048, 738, 1172, 179, 739, 2627, 3399, 4117, 4118, - 4119, 4122, 5094, 4659, 740, 3395, 182, 1978, 3134, 3137, - 3391, 741, 3405, 3406, 3407, 4126, 742, 5363, 5364, 5739, - 5957, 5958, 6011, 6047, 743, 761, 1111, 3049, 744, 1309, - 188, 189, 190, 901, 848, 849, 3322, 5320, 5545, 192, - 2500, 3300, 778, 1430, 889, 890, 891, 910, 2930, 2593, - 2594, 2618, 2619, 1439, 1440, 2606, 2610, 2611, 3382, 3375, - 2599, 4096, 5344, 5345, 5346, 5347, 5348, 5349, 4648, 2614, - 2615, 1442, 1443, 1444, 2623, 193, 2583, 3350, 3351, 3352, - 4073, 4074, 5857, 4088, 4084, 4633, 5071, 3353, 837, 1209, - 1451, 4641, 5859, 3354, 5060, 5061, 5324, 4092, 3361, 4113, - 3796, 3797, 3798, 3355, 5553, 5554, 5854, 5855, 5326, 5327, - 2651, 1404, 875, 1310, 876, 1417, 1311, 1391, 878, 1312, - 1313, 1314, 881, 1315, 1316, 1317, 884, 1383, 1318, 1319, - 1400, 1413, 1414, 1376, 5328, 1321, 1322, 1323, 3357, 1324, - 4578, 5032, 5018, 3226, 3227, 2526, 4574, 3996, 4568, 2495, - 3290, 5083, 5351, 5352, 4036, 4603, 5046, 5315, 5713, 5838, - 5839, 5939, 1325, 1326, 1327, 3287, 2489, 971, 1328, 4358, - 2491, 3217, 3195, 1687, 3196, 1981, 2002, 3166, 3183, 3184, - 3264, 3197, 3205, 3210, 3218, 3251, 1329, 3168, 3169, 3935, - 2004, 1330, 1015, 1690, 1016, 1419, 3246, 1338, 1339, 1332, - 1972, 838, 5067, 1167, 1770, 775, 1333, 1334, 1335, 1336, - 1560, 942, 1134, 1135, 892, 894, 895, 2587, 629, 621, - 944, 3548, 2492, 630, 623, 624, 1775, 2493 + -1, 57, 58, 59, 60, 1086, 1091, 1882, 1901, 61, + 62, 1604, 3011, 2865, 3823, 3824, 63, 64, 1600, 65, + 66, 67, 68, 1514, 69, 1854, 3025, 70, 2701, 830, + 831, 832, 2566, 2567, 2956, 2568, 2555, 1364, 1800, 1536, + 804, 805, 1496, 1537, 72, 73, 1358, 2544, 74, 75, + 76, 1567, 1661, 1568, 1569, 1508, 4943, 5730, 3613, 2820, + 3871, 3614, 3615, 4286, 4287, 4376, 5744, 5745, 77, 1677, + 1678, 78, 79, 2993, 3789, 4429, 5325, 5326, 5568, 649, + 4966, 4967, 5555, 5556, 5758, 5913, 5914, 3026, 680, 3866, + 4513, 3814, 5037, 3815, 5038, 3816, 5039, 4833, 4834, 4276, + 4277, 3800, 4460, 4461, 2051, 4979, 4462, 3817, 4998, 5602, + 3818, 2720, 5773, 3060, 1973, 1971, 5502, 5581, 4795, 4796, + 4349, 5782, 5783, 5784, 6035, 5000, 5043, 5044, 5950, 5951, + 3869, 4519, 5050, 5383, 5579, 3511, 81, 3842, 3843, 82, + 743, 1876, 3970, 744, 3063, 681, 745, 3027, 87, 3053, + 5775, 3054, 1630, 2879, 4442, 3946, 88, 1114, 4251, 5408, + 5662, 5663, 734, 89, 1862, 90, 91, 3006, 3807, 92, + 2737, 3528, 93, 94, 3547, 3548, 3549, 95, 4470, 5344, + 1570, 3602, 3603, 3604, 3605, 4307, 96, 1857, 3034, 3035, + 97, 98, 99, 3165, 3166, 100, 2942, 101, 102, 103, + 104, 4343, 4899, 5014, 3644, 3830, 4486, 5012, 105, 3793, + 3028, 3081, 3904, 3905, 5406, 5654, 5655, 5656, 5833, 6070, + 5658, 5835, 5972, 5837, 4989, 6191, 6192, 5639, 4240, 4809, + 107, 4990, 4991, 5788, 108, 2735, 109, 110, 1831, 2999, + 3000, 4443, 3070, 3879, 3880, 4499, 4500, 111, 3731, 112, + 4875, 4876, 682, 5796, 5736, 5899, 113, 114, 4879, 4880, + 115, 116, 117, 118, 119, 735, 1048, 1049, 737, 1169, + 1170, 3483, 1131, 120, 2576, 121, 3769, 122, 1244, 5103, + 123, 769, 1185, 1186, 3029, 125, 779, 3184, 781, 3149, + 3150, 1989, 3950, 3951, 4587, 126, 127, 3954, 3955, 4594, + 3162, 128, 1501, 2711, 2712, 4790, 3030, 683, 3506, 5490, + 5235, 5491, 5961, 6120, 5236, 3427, 4189, 130, 684, 1542, + 2776, 1137, 1138, 3074, 3884, 2681, 2682, 1700, 4540, 2684, + 3886, 2685, 1475, 2686, 1124, 1125, 3892, 3893, 3894, 3895, + 4536, 4546, 4547, 5400, 5647, 4543, 1850, 5394, 5395, 131, + 1539, 2773, 132, 133, 134, 1583, 972, 1147, 1148, 135, + 696, 697, 136, 5573, 137, 1127, 138, 5404, 139, 140, + 1229, 1230, 796, 141, 142, 2790, 4289, 143, 1540, 144, + 145, 3638, 3639, 4891, 146, 147, 148, 2851, 2852, 149, + 150, 151, 152, 153, 6060, 6123, 6124, 6125, 4554, 5966, + 154, 1217, 155, 156, 157, 158, 196, 1013, 1014, 1015, + 925, 3031, 5385, 160, 161, 1497, 1498, 1499, 1500, 2706, + 162, 163, 164, 3914, 3915, 165, 166, 167, 168, 1834, + 169, 170, 5546, 171, 172, 1804, 173, 174, 1022, 1023, + 1024, 1025, 1802, 3374, 643, 849, 1391, 1397, 1440, 1441, + 1442, 176, 747, 177, 1220, 1053, 748, 1178, 179, 749, + 2663, 3457, 4204, 4205, 4206, 4209, 5219, 4767, 750, 3453, + 182, 1996, 3171, 3174, 3449, 751, 3463, 3464, 3465, 4213, + 752, 5494, 5495, 5880, 6094, 6095, 6145, 6178, 753, 771, + 1117, 3085, 754, 1324, 188, 189, 190, 905, 852, 853, + 3379, 5451, 5682, 192, 2536, 3357, 788, 1446, 893, 894, + 895, 914, 2966, 2629, 2630, 2654, 2655, 1455, 1456, 2642, + 2646, 2647, 3440, 3433, 2635, 4183, 5475, 5476, 5477, 5478, + 5479, 5480, 4756, 2650, 2651, 1458, 1459, 1460, 2659, 193, + 2619, 3407, 3408, 3409, 4160, 4161, 5999, 4175, 4171, 4741, + 5196, 3410, 841, 1215, 1467, 4749, 6001, 3411, 5185, 5186, + 5455, 4179, 3419, 4200, 3854, 3855, 3856, 3412, 5690, 5691, + 5996, 5997, 5457, 5458, 2687, 1420, 879, 1325, 880, 1433, + 1326, 1407, 882, 1327, 1328, 1329, 885, 1330, 1331, 1332, + 888, 1399, 1333, 1334, 1416, 1429, 1430, 1392, 5459, 1336, + 1337, 1338, 3414, 1339, 4684, 5155, 5141, 3279, 3280, 2562, + 5441, 4680, 4073, 4674, 2529, 2533, 5208, 5482, 5483, 3350, + 4124, 4714, 5174, 5678, 5850, 5851, 5982, 1340, 1341, 1342, + 3342, 2523, 975, 1343, 4445, 2525, 3270, 3248, 1703, 3249, + 1999, 2021, 3203, 3220, 3221, 3318, 3250, 3258, 3263, 3271, + 3304, 1344, 3205, 3206, 3992, 2023, 1345, 1019, 1706, 1020, + 1435, 3299, 3229, 4005, 5117, 3230, 3319, 4106, 3237, 3238, + 4021, 4011, 3231, 1346, 4013, 1354, 1355, 1348, 1990, 842, + 5192, 1173, 1787, 785, 1349, 1350, 1351, 1352, 1576, 946, + 1140, 1141, 896, 898, 899, 2623, 639, 631, 948, 3606, + 2526, 640, 633, 634, 1792, 2527 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -5539 +#define YYPACT_NINF -5456 static const int yypact[] = { - 8508, 1611, 21059, -5539, -5539, 1611, 65898, -5539, 75478, 1337, - 190, 102, 185, 19937, 75957, 84579, 416, 341, 14567, 1611, - 84579, 2369, 56318, 71167, 891, 84579, 1141, 594, 56318, 84579, - 85058, 1092, 1153, 786, 85537, 76436, 69730, 1138, 84579, 1321, - 1419, 86016, 76915, 1145, 77394, 594, 52035, 127, 1099, 86495, - 84579,108459, 1419, 77873, 77873, 77873, 1844, 1863, 1413, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, 1373, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, 2097, -5539, 825, - 2493, 1417, 182, 1466, -5539, -5539, 2014, 65898, 84579, 84579, - 84579, 1776, 84579, 1635, 84579, 774, 65898, 61587, 78352, 1721, - 1772, 48101, 86974, -5539, 65898, 84579, 59192, 65898, 84579, 84579, - 87453, 84579, 87932, 84579, 1578, 73562, 84579, 1887, 84579, 84579, - 59671, 88411, 2098, 926, 236, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, 1878, - 1707, -5539, 254, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, 64461, 84579, 20566, 1141, 2014, -5539, 1844, 84579, - 2146, 84579, 1900, 88890, 84579, -5539, 84579, 1987, 89369, 813, - 1870, 61587, 1898, 48597, 2091, 84579, 84579, 61587, 89848, 90327, - 90806, 84579, 84579, -5539, -5539, 2087, 84579, -5539, 2234, 62066, - 1910, 2238, 2374, 2320, 1306, -5539, 78831, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, 65419, 341, -5539, -5539, 2291, - 66377, 2370, -5539, -5539, 91285,108924, 2143, -5539, 839, 66856, - 62545, 2525, 2155, 49093, 2557, -5539, 67335, -5539, 63024, 67814, - -5539, -5539, -5539, -5539, -5539, 91764, -5539, 92243, 2254, 2370, - -5539,109389, 63503, -5539, 2413, 92722, 93201, 93680, 2014, 2152, - 2051, 1386, 42763, -5539, -5539, -5539, 2176, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, 267, 866, 284, 231, - 305, -5539, -5539, 237, 239, 243, 267, 2638, 2638, -5539, - 84579, -5539, -5539, 866, 67, 2275, 2170, 2170, 2170, 2388, - 33, -5539, 2170, 2329, -5539, -5539, -5539, -5539, 77394, -5539, - 2181, 1141, 2232, 2682, 2302, -5539, -5539, -5539, -5539, -5539, - 64461, 2684, 2684, 84579, -5539, -5539, 2731, 2304, 2576, 2312, - -5539, -5539, -5539, 2511, 2519, 2540, 117, 1141, 263, -5539, - 2665, -5539, 2589, 29048, 29048, 1141, 79310, 94159, 228, 64940, - 2150, 79789, 2359, 1523, 2563, -5539, -5539, -5539, 677, -5539, - 2835, 2404, 2671, 2312, 926, 44689, -5539, -5539, 2419, 1707, - 77394, -5539, -5539, -5539, 64461, 2746, 31523, 84579, 2417, -5539, - 2422, 2417, -5539, -5539, 2484, -5539, 2484, 2484, 2428, 2428, - 2647, 2473, -5539, -5539, -5539, 2020, 2484, 2428, -5539,110319, - -5539, 10, 1830, -5539, -5539, 2943, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, 2512, -5539, 1013, 1967, -5539, -5539, - -5539, 29048, -5539, -5539, -5539, -5539, -5539, -5539, -5539, 2499, - 2515, 1417, -5539, 11445, 64461, 84579, 1658, 1658, 2936, 1658, - 1546, 1819, -5539, 2762, -5539, 2845, 2811, 2812, 77394, 2537, - 318, -5539, 1708, 2543, 1984, 2542, 1735, 1130, -5539, 801, - 84579, 294, 2599, 80268, 5610, 2577, 1707, 2604, -5539, -5539, - -5539, -5539, 2722, 412, -5539, -5539, -5539, -5539, 2893, 2952, - 5979, 355, 80747, -5539, -5539, -5539, -5539, 84579, 84579, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, 2642, 1309, - -5539, -5539, 2635, 2990, 2866, 6623, 1151, 2960, 2819, 1267, - 8638, 2879, 172, 3016, 6419, 1392, 3024, 1789, 2161, 81226, - 84579, 2982, 3026, 4344, 1726, 928, 2894, 983, 2960, 3017, - 2841, 1267, 3030, 5295, 84579, -5539, 2953, 3066, 676, -5539, - 352, -5539, 22669, 31523, 51556, -5539, 1707, 626, -5539, -5539, - 55839, -5539, 2747, 2904, 884, 65898, 2695, 84579, 84579, -5539, - 108459, 65898, -5539, 2917, 49589, 65898, -5539, 65898, -5539, -5539, - 3031,108459, 84579, 84579, -5539, 84579, -5539, -5539, 2699, -5539, - -5539, -5539, -5539, -5539, 2170, 84579, 3131,108459, 2932, 271, - 1758, 3171, 84579, 2941, 1758, 2750, 94638, -5539, -5539, 1758, - -5539, -5539, -5539, 84579, 84579, 2716, 1766, 2931, 777, 1758, - 2947, 3172, 3177, 2951, 2800, 2956, 2422, 3140, 2928, 1025, - 220, 2094, 1758, 2780, 95117, 95596, 84579, 2782, 84579, 2684, - 65898, 2814, 65898, 65898, 84579, 3072, 84579, -5539, 2918, -5539, - -5539, 989, -5539, -5539, -5539, -5539, -5539, 3089, -5539, 193, - 3091, 2745, 3093, 1600, 3094, 215, -5539, -5539, 2785, -5539, - 3096, 251, -5539, 3098, -5539, 2748, 96075, -5539, 96554, 97033, - 3100, 253, -5539, 61587, 3101, 251, 3102, 2748, 3104, 251, - 3105, 899, 3106, -5539, 1069, 3103, 3108, 215, 3114, 2126, - 2748, -5539, 3115, 261, -5539, 3116, 275, -5539, 3118, 2986, - -5539, 31523, -5539, 2869, -5539, 1099, 1330, 1386, 866, -5539, - 84579, 866, 84579, 866, 84579, 866, 84579, 866, 84579, 84579, - 84579, 866, -5539, -5539, -5539, 84579, 2775, 84579, -5539, 84579, - -5539, -5539, -5539, 72125, 61587, 72604, -5539, 84579, -5539, 195, - 1141, -5539, -5539,108459, 3239, 61587, 2684, 1752, -5539, 84579, - 84579, -5539, -5539, -5539, 3053, 84579, 3119, 3120, 72125, 61587, - -5539, 97512, -5539, 65419, 3002, 2790, -5539, -5539, -5539, -5539, - -5539, 1953, 2300, 268, 2365, 31523, 2794, 268, 268, 2795, - 3129, -5539, -5539, -5539, 315, 2797, 2801, -5539, 269, 269, - -5539, 2804, 2805, -5539, 270, 2806, 2809, 2393, 2394, 277, - 2810, 2815, 2816, 2020, 268, 2820, 31523, -5539, 2822, 269, - 2823, 2824, 2825, 2395, 2826, -5539, 2427, 2827, 332, 334, - 2832, 2834, -5539, 3033, -5539, 298, 2836, 2838, 2839, 2848, - 2849, 2853, 2854, 2856, 31523, 31523, 31523, -5539, 26568, 1707, - 2450, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, 300, - 47605, -5539, 2852, -5539, -5539, 3037, -5539, -5539, 31523, -5539, - -5539, 741, -5539, 322, -5539, -5539, -5539, 1707, 3142, 2855, - -5539, -5539, 1714, 2859, -5539, 2253, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, 63982, 3277, -5539, 478, 1141, 352, - 1873, 3244, 53923, 54402, -5539, -5539, 3128, -5539, 84579, -5539, - -5539, 1707, 151, 1906, -5539, 2176, 19935, 2078, 2417, 84579, - 84579, 3325, -5539, 2864, -5539, -5539, 31523, -5539, -5539, -5539, - 2638, -5539, 2484, 2484, -5539, -5539, 3329, 2954, 2955, 2638, - -5539, 2638, -5539, 2873, 2875, 2638, 2958, 2959, 2962, -5539, - 2867, 2963, 2638, -5539, -5539, 57276, 2071, -5539, 3204, 258, - -5539, -5539, -5539, 2083, -5539, 2881, -5539, 2422, -5539, -5539, - 1417, 1417, 31523, 1417, 287, 1280, 29543, 32018, 3216, 3109, - 1797, 1463, 3220, -5539, 3112, 1546, 1819, 77394, 84579, 77394, - 97991, 3014, 31523, -5539, 3328, 2983, 2985, 3036, 52993, -5539, - 2987, 2957, 2988, 3043, 2905, 2996, 2997, 3052, -5539, 3181, - -5539, -5539, 3001, 3340, 3003, 98470, -5539, -5539, 883, -5539, - -5539, -5539, 883, -5539, 2930, 1730, 276, 304, 3005, 403, - 235, 3332, -5539, 1107, -5539, -5539, 3061, -5539, 9251, 84579, - 3271, 6253, 3141, 355, 3062, -5539, -5539, -5539, 3199, 3022, - 84579, 3027, 3154, 355, 336, 98949, -5539, -5539, 84579, -5539, - -5539, -5539, -5539, 2721, 3307, 25637, -5539, 2059, 3028, 3009, - 3035, 84579, 68772, 2175, 3133, 3163, 1826, 2270, 623, 3092, - 84579, 1956, 3173, 84579, 2965, 3039, 3040, 3263, 2966, 490, - 3363, 2967, -5539, -5539, -5539, 3331, -5539, 2453, 2461, 3157, - -5539, 3264, 3309, 7192, 3023, 3034,107064, -5539, 3057, 52, - 50085, 84579, 84579, 3059, 3060, 99428, 2721, 3351, 73083, 73083, - 3064, 3065, 44208, 3366, 1780, 3067, -5539, -5539, -5539, 1780, - 3068, 3070, 99907, 2721, 3356, 84579, 3071, 3073, 84579,110319, - 355, -5539, 3432, 355, 355, 2035, 3433, 3076, 353, 3238, - 652, 1758, 2967, 3099, -5539, 3079, 3082, 919, -5539, 3209, - 84579, 3085, 3097, 1712, 3186, 1141, -5539, 3188, -5539, 3107, - 3189, 3110, 843, 2716, -5539, -5539, 34, 3113, 77394, 3212, - 3214, 1956, 424, 877, 2967, -5539, 3111, 3122, 2966, 2966, - 84579, 84579, 84579, 84579, 84579, 208, 3470, 3482, 3123, 413, - 749, 3032, -5539, 1780, 60150, 3126, -5539, 1780, 84579, 383, - 1004, 2967, 1790, 1864, -5539, -5539, -5539, 926, -5539, 31523, - 31523, 31523, 3029, -5539, 2138, 19935, 815, -5539, 2341, 7923, - 3038, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, 84579, 64461, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, 84579, -5539, 84579, 3313, - 108459, 3314, 3259, 3334, 3335, 355, 84579, 84579, 3336, 3337, - 3338,108459, 3342, 3345, 3346, 3260, 3134, 187, 3121, 3049, - 3514, 3412, 84579, 57276, -5539, 883, -5539,108459, 3282, 3419, - -5539, 84579, 3302, 661, -5539, 3456, 3135, -5539, -5539, 90, - 84579, 71646, 2716, -5539, -5539, 3425, 61587, 1323, 3426, 1141, - 3130, 3429, 3297, 1141, 61587, 3344, 84579, 84579, 84579, 84579, - 139, -5539, 60150, 3316, -5539, 84579, 3319, 3099, 3320, 3548, - 99, 2170,100386, 3427,100865, 3124, 84579, 3125, 3125, 3555, - 108459, 367, 3369, -5539, -5539, 2124, -5539, 3233, -5539, 65898, - -5539, -5539, 65898, -5539, -5539,108459, 84579, 3127,108459,108459, - -5539, -5539, 65898, 65898, -5539, 61587, 61587, 3445, 261, 3448, - 3164, 3450, 3165, 50085, 50085, -5539, 286, 65898, -5539, 61587, - 65898, -5539, 84579, -5539, 84579, -5539, -5539, -5539, -5539,108459, - 108459, -5539, 61587, 60150, 3454, 84579, 84579, -5539, 84579, 84579, - -5539, 84579, 84579, 2085,101344, 1386, -5539, 84579, -5539, 84579, - -5539, 84579, -5539, 84579, -5539, 84579, -5539, -5539, -5539, 84579, - -5539, 84579, 2093, -5539, -5539, 2095, 1331, 84579, 84579, 238, - 65898, 84579, 3330, 84579, 65898, 65898, 84579, 84579, 84579, 84579, - 84579, 3192, 2859, 1098, -5539, 1278, 495, 77394, 3339, -5539, - -5539, 2102, 1844, 973, 84579, 1398, -5539, -5539, -5539, -5539, - 72604, 71167, 3439, 130, 84579, -5539, -5539, 16184, 31523, 1707, - 28548, -5539, -5539, 19935, 3160, 31523, 31523, 3136, 2638, 2638, - -5539, 1442, 31523, 31523, 31523, 2638, 2638, 31523, 7833, 31523, - 50085, 31523, 36968, 23671, 31523, 31523, 27063, 1183, 2804, 31523, - 3362, 37952, 31523, 1873, 3364, 31523, 1873, 7833, 3601, 3601, - 2447, 9033, 3145, 1707, -5539, -5539, 1291, 2638, 1291, -5539, - 234,108459, 31523, 31523, 31523, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, 31523, - -5539, 57276, -5539, -5539, -5539, -5539, -5539, -5539, 3205, -5539, - -5539, -5539, -5539, -5539, -5539, 5970, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, 84579, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, 27558, -5539, -5539, -5539, -5539, 3138, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, 2776, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, 28053, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, 3146, -5539, -5539, 31523, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, 3206, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, 1290, - 31523, 31523, 31523, 31523, 31523, 31523, 31523, 31523, 31523, -5539, - 31523, 337, -5539, -5539, 3442, 3464, 46, 484, 81705, 29048, - 3204, -5539, 22669, -5539, 249, 3204, -5539, -5539, -5539, 84579, - 3277, -5539, -5539, -5539, 3217, -5539, -5539, -5539, -5539, -5539, - -5539, 210, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - 3147, -5539, -5539, -5539, -5539, 3147, -5539, 3139, 3452, 3461, - 899, 84579, 2521, 31523, 3205, 279, 84579, 31523, 3138, 2776, - 31523, 3146, 31523, 3206, -5539, 31523, -5539, 2108, 1601, 31523, - 2129, 3144, -5539, -5539, 3155, 2875, 3158, 3176, 3151, 3153, - 2638, 222, 3156, 885, 1248, 3268, 2638, 3402, 3159, -5539, - 57276, -5539, 39877, 3210, -5539, -5539, -5539, 1419, 84579, 84579, - -5539, 3451, -5539, 3166, -5539, 13608, 3451, -5539, -5539, 37460, - 3289, 3446, 3384, -5539, -5539, -5539, 3168, 19935, 32513, 32513, - -5539, 2391, 19935, 2400, -5539, -5539, -5539, -5539, -5539, -5539, - 1190, -5539, 84579, 153, 3216, 1463, 3234, 959, 3636, 3235, - 84579, -5539, 45170, 2147, -5539, 61587, 84579, 84579, 3381, -5539, - 3620, -5539,110319, -5539, 3178, -5539,109854,105655, -5539, -5539, - 787, -5539, 935, 61587, -5539, 84579, 84579, 61587, 84579, 84579, - -5539, 61587, 3230, 84579, 84579, -5539, -5539, -5539, -5539, -5539, - 54881, 1224, 71167, 3321, 70209, -5539, -5539, 3184, 84579, 3246, - 3465, 3466, 120, -5539, -5539,101823, -5539, 3413, 61587, 84579, - 84579, 31523, 3415, 84579, 84579, -5539, 308, 3278, 3279, -5539, - 84579, 3284, 65898, 3198,108459, 65898, 50581, 65898, 65898, 3536, - 108459, 84579, 84579, 1410, 77394, 443, 1059, 2967, 3434, -5539, - 1557, -5539, 61587, -5539, 84579, 3418, -5539, -5539, -5539, 74041, - 3665, 3343, -5539, -5539, -5539,102302, -5539, -5539, 3430, -5539, - 2163, -5539, 61587, 61587, 84579, 9891,102781, 1455, 3444, -5539, - -5539,108459, -5539, 84579, 82184, 84579, 84579, 3485, 84579, 74520, - 103260,103739, 765, 1418, 3486, 84579, 74999, 3487, -5539, 3365, - 84579, -5539, -5539, 57755, 61587, 84579, 936, 57276, -5539, 3471, - -5539, 84579, -5539, 909, -5539, 84579, 4164, 3436, -5539, -5539, - 3308, 3323, 84579, 452, 1061, 2967, 3600, 84579, 84579, 3224, - 2164, 61587, 84579, 57276, -5539, 3449, 116, 61587, 84579, 74041, - -5539, 3453, -5539, 77394, 3535, -5539, 3232, 2170, 2419, 2026, - 3232, 61587, 84579, -5539, 3232, 84579, 94159, -5539, 61587, 1317, - -5539, 61587, 84579, 74041, -5539, 3455, 3393, 61587, 84579, 8364, - -5539, -5539, -5539, 355, -5539, -5539, -5539, -5539, -5539, 84579, - 84579, 355, 84579, 84579, 355, 1263, -5539, 61587, 84579, -5539, - -5539, -5539, 3367, 61587, 84579, 84579, 267, 84579, -5539, 84579, - 61587, 3285, 84579, 84579, -5539, -5539, 84579, 4384, 84579, 84579, - 84579, 84579, 84579, 84579, 61587, 84579, -5539, -5539, 1484, 1420, - 1882, 1892, 180, 84579, 3547, 84579,104218, 61587, 84579, 84579, - 1141, 84579, 57276, 1741, -5539, -5539, 3371, -5539, 61587, 1317, - -5539, 10058, 84579, 84579, 84579, 3347, 3350, 232, 3416, -5539, - -5539, -5539, 822, 822, 3457, -5539, 31523, 31523, 30038, 3245, - -5539, -5539, 31523, 2747, -5539, -5539, -5539, 995, 3710, 995, - 104697, 995, 995, 3530, 3310, 3311, 995, 995, 995, 3528, - 995, 995, 995, 84579, 3431, -5539, -5539, 3431, 861, 31523, - 108459, 84579, -5539, 2171, -5539, 3269, -5539, -5539, 57276, 84579, - 327, 857, 3605, 3473, 69251, 2174, 3593, 84579, 3315, 84579, - 3724, 3357, 1310, -5539, 2174, 84579, -5539, 2082, 71167, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, 84579, -5539, -5539, 3602, - 84579, 40358, 3443, -5539, 1141, 2716, 2716, 2716, 2716, 3276, - 2716, 84579, 3407, 3627, 2174, 3281, 3629, -5539, 3099, 3630, - 1445, 84579, 3503, 69251, 3348, 3326, 3515, 3752, 2170, 1141, - 3521, 3507, -5539, 53458, -5539, 2716, 3768, 26102, 4233, 7122, - 3509, 3572, -5539, -5539, 3516, 842, 84579, 3612, 3613, 3635, - -5539, 193, -5539, 3766, 1600, 3637, 215, -5539, 251, -5539, - 2748, -5539, 84579, -5539, 84579, 84579, 84579, 84579, 253, -5539, - -5539, 251, 2748, 251, 899, -5539, 3582, 215, 2748, 3435, - 3641, 261, -5539, 275, -5539, 3524, 899, -5539, 3540, 2170, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, 2186, -5539, 84579, - -5539, 3616, 3618, 3619, 3622, 3625, 3312, 3327, 3370, 84579, - 3352, 3312, 355, 3353, 3341, -5539, 3352, 3352, 3312, 2859, - 2859, 3312, 3327, 60629, 3805, 3660, -5539, 3424, 3349, 3669, - 203, -5539, 834, 1247, 3589, -5539, -5539, -5539, -5539,108459, - -5539, 61587, 3385, 2684, 2684, 126, 3560, 3355, 60629, 3789, - 899, -5539, 65898, 84579,108459, 65898, 3568, 65898, 65898,108459, - 84579, 84579, 2188, -5539, 1836, -5539, 1934, 31523, 476, -5539, - 15094, 2197, 31523, 3360, 3361, -5539, 3678, -5539, -5539, -5539, - -5539, -5539, -5539, 3368, 3679, -5539, 2204, 2211, 2215, 3373, - 3374, 7054, 7158, 3375, 15126, 3376, 3377, 3378, 3354, 36968, - 36968, 26568, 1143, -5539, 36968, 3380, 3567, 2216, 14030, 3387, - 3388, 16627, 30533, 31523, 30533, 30533, 16981, 3390, 3394, -5539, - 3733, -5539, 2220, 57276, 3559, 17227, 2221, -5539, 31523, 57276, - 7774, 31523, -5539, 31523, -5539, 3396, -5539, -5539, 4724, 4724, - 4724, 7833, -5539, 3389, -5539, 36968, 36968, -5539, 2786, 26568, - -5539, -5539, 3698, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - 2739, -5539, -5539, -5539, 3607, 3137, 50085, 7321, 31523, 293, - 31523, 3138, 31523, 3469, 4724, 4724, 4724, 396, 396, 313, - 313, 313, 2046, 484, -5539, -5539, -5539, 3372, 3382, 3400, - 3574, 3401, 31523, -5539, 2182, 2482, 84579, 3428, 6030, 6455, - -5539, -5539, -5539, 3210, 815, 3210, -5539, 926, 2638, 1291, - 55360, -5539, -5539, -5539, -5539, -5539, -5539, 84579, 19935, -5539, - -5539, 3655, 3403, 2225, -5539, -5539, 2638, -5539, -5539, 1852, - 1852, 3405, -5539, 3408, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, 3409, -5539, -5539, -5539, 40839, 3734, 3411, 39395, 82663, - 3414, 2132, -5539, 82663, 83142, 82663, -5539, 3437, -5539, 1707, - 31523, 3731, -5539, -5539, -5539, 31523, -5539, -5539, 1040, 3441, - 628, 1105, 2490, 2490, 2391, 1168, -5539, -5539, 3475, -5539, - 31523, 2405, -5539, 2507, -5539, -5539, -5539, -5539, 2859, -5539, - 3674, -5539, -5539, -5539, 39877, 3467, 3474, 72, 43726, 3631, - -5539, 84579, 39877, -5539, 84579, 159, -5539, 3447, -5539, -5539, - -5539, -5539, -5539, -5539,105655, 1967, -5539,109854, -5539,109854, - -5539, 1967, 3869, -5539,105655, 1879, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, 61587, - 61587, 3646, 84579, 3645, 3650, 31523, 433, 84579, 3440, 3458, - 1469, 3739, 3476, -5539, 3788, 899, -5539, -5539, 3526, -5539, - 19935, -5539, -5539, -5539, -5539, -5539, 61587, 84579, -5539, 65419, - -5539, -5539,108459, -5539, -5539, 84579, 84579, -5539, -5539, -5539, - 108459, -5539, -5539, -5539, 84579, 167, 3531, 3533, 84579, -5539, - 832, 3209, 10387, 84579, 84579, 84579, 3736, -5539, -5539, -5539, - -5539, 3670, -5539, 3794, -5539,105655, -5539, 2748, 1292, 3541, - 2967, 3680, -5539, 3816, 3885, -5539, 3596, 1179, -5539, -5539, - 3611, -5539, -5539, -5539, -5539, 3827, 899, 3828, 899, 84579, - 84579, 84579, 84579, 3617, -5539, -5539, -5539, -5539, 3621, 3753, - -5539, 57276, 57276, 57276, 2237, -5539, -5539, 1141, -5539, -5539, - -5539, -5539, -5539, -5539, 3786, -5539, 2241, -5539, 1461, 84579, - -5539, -5539, -5539, -5539, -5539, 3834, 61587, 84579, 10389, 84579, - 84579, 84579, 3706, 1846, 1465,108459, -5539,107529, -5539, -5539, - 2243, -5539, 3504, 84579, 3581, 61587, 3558, -5539, -5539, -5539, - 3845, 2170, 3643, 73083, 3550, 3550, 2032, -5539, -5539, -5539, - -5539, -5539, 3769, 3699, -5539, 1096, 3701, 61587, 3570, -5539, - -5539, -5539, -5539, 3855, 3597, -5539, -5539, 3599, 1080, 2967, - 3099, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - 3628, -5539, -5539, -5539, -5539, 1351, 1351, -5539, -5539, -5539, - 1351, 1503, 426, 1159, 2967, -5539, 348, 1690, 3604, -5539, - 3609, -5539, -5539, -5539, 3772, 3777, 3782, 3614, 3623, 3666, - 3624, 3626, 3675, -5539, 3633, 3690, 3638, 3695, 3651, 3886, - 899,108459, 3761, 1141, 3686, 3888, 899, -5539, 3653, -5539, - 3654, -5539, 2247, 4007, -5539, 84579, -5539, 454, 1253, 2967, - -5539, 3657, -5539, 61587, 84579, -5539, -5539, -5539, 31523, 3561, - 3565, 3573, 19935, 19935, 31523, -5539, -5539, 19935, 3576, -5539, - -5539, -5539, -5539,108459, -5539, 84579, 3853, -5539, -5539, 995, - 84579, 84579, -5539, -5539, -5539, 84579, -5539, -5539, -5539, 3858, - -5539, 380, 380, -5539, -5539, 3893, 9393, 3577, 292, -5539, - 57276, 46613, 2090, 422, 1758, -5539, 65419, 84579, 65419, -5539, - 857, 3791, 84579, 84579, 84579, 3578, 3579, -5539, -5539, -5539, - -5539, 61587, 1257, 61587, 2638, -5539, -5539, 3656, -5539, 84579, - 2170, 4083, 3918, 3285, -5539, 4039, 3177, 1323, 1916, 211, - 2800, 3976, 2422, 31523, 314, -5539, -5539, 1707, 84579, 3326, - -5539, -5539, -5539, -5539, 1141, -5539, 3587, 3585, -5539, 84579, - 3923, 84579, 84579, 84579, 84579, 3385, 3591, 84579, 3592,108459, - 84579, 2272, 2966, 4055, 3941, 1844, 3348, 3681, 3942, 77394, - 3606, 2256, -5539, -5539, 842, -5539, 2267, 170, -5539, 1141, - 65419,106599, 3932, -5539, 469, 7122, -5539, -5539, 469, 872, - 84579, -5539, -5539, -5539, -5539, 3819, 2065, -5539, 3917, -5539, - -5539, 1844, -5539,108459, 3603, -5539, 2271, -5539, -5539, -5539, - 261, 3662, 899, 3667, 899, -5539, -5539, -5539, -5539, 84579, - -5539, 84579, 60150, -5539, -5539, 84579, -5539, 3952, -5539, -5539, - 3744, 3746, 3747, 3748, 3749, 84579, 3312, -5539, 3608, 84579, - 84579, 61587, 1470, -5539, -5539, 3824, -5539, -5539, 77394, 3743, - -5539, -5539, -5539, -5539, 3965, 3967, -5539, -5539, -5539, 994, - -5539, 84579, 84579, 61587, 72125, 132, 61587, -5539, 3901, 3902, - 3904, 3905, 355, 3906, 3907, 3908, 3910, 3911, -5539, -5539, - -5539, 3632, 17660, 31523, -5539, 3987,108459, -5539, 9629, -5539, - -5539, 31523, -5539, 31523, -5539, -5539, -5539, -5539, -5539, -5539, - 2303, 31523, -5539, 31523, -5539, -5539, 24172, 4121, 4121, 3634, - 108459, 36968, 36968, 36968, 36968, 1453, 2823, 36968, 36968, 36968, - 36968, 36968, 36968, 36968, 36968, 36968, 36968, 212, -5539, 3835, - 31523, 31523, 31028, -5539, -5539,108459, 3639, 3390, 3640, 3644, - 31523, -5539, -5539, -5539, 2286, 38433, 3647, 57276, -5539, 31523, - 13682, 2301, 3693, 17987, 1707, 9957, 2491, 31523, 1157, 1781, - 31523, 2305, 31523, 3970, -5539, -5539, -5539, -5539, -5539, -5539, - 3867, -5539, 31523, 3648, 3333, 36968, 36968, 3847, -5539, 4314, - 31523, 26568, -5539, 3457, 3697, 45651, -5539, 24673, 3642, 594, - 594, 594, 594, -5539, 84579, 84579, 84579, 3731, 3658, 3731, - 352, 3664, -5539, -5539, -5539, -5539, 1844, -5539, 3652, -5539, - -5539, -5539, -5539, -5539, 82663, 83142, 82663, 3663, 38914, 25155, - 2132, 3668, 84579, -5539, -5539, 3672, 39877, 3926, 3859, -5539, - 39877, 3859, 1849, 3859, 3933, 3750, 46132, -5539, -5539, 3673, - -5539, 3864, -5539, 2059, 19935, 4100, 3981, -5539, 3676, -5539, - 3441, 297, -5539, -5539, -5539, 1185, -5539, 3755, -5539, -5539, - -5539, 3414, 33008, 3821, -5539, -5539, -5539, 3729, 2306, -5539, - -5539, 4087, 3821, -5539, 1644, -5539, 2317, 45170, 3467, 31523, - 1707, 2321, 1890, -5539, -5539,105655, -5539, 3751, 2748, 2748, - 2261, 3312, 4011, 2261, 9989, -5539, -5539, 41320, 84579, 84579, - -5539, 84579, 84579, 1679, 84579, -5539, 84579, -5539, -5539, -5539, - 4152, 3756, 3762, 3966, -5539, 2542, -5539, -5539, 61587, 84579, - -5539, -5539, -5539, 460, 1255, 2967, -5539, 3775, -5539, -5539, - 3984, 84579, -5539, 4135, 3790, 84579, 4042, 84579, 83621, -5539, - 3791, 1679, 3810, 4027, 1486, 2966, 353, 3270, -5539, 1793, - -5539, -5539, 3778, -5539, 84579, -5539, 84579, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, 3838, -5539, -5539, -5539, -5539, 57755, - -5539, -5539, 84579, -5539, 57276, 46613, 57276, -5539, 84579, -5539, - 1517, 465, 1303, 2967, -5539, 3792, -5539, 4051, 3793, 3796, - 3848, 869, 1221, 3797, 3799, 3857, 3719, 3720, 3721, -5539, - 57276, 47109, 3882, 84579, 2748, 3725, 3765, 84579, 3550, 84100, - -5539, 3726, -5539, -5539, 3550, 267, 2496, -5539, -5539, -5539, - 1141, 2748, 1141, 84579, 84579, 84579, 84579, 267, -5539, -5539, - -5539, 4170, 3822, 84579, 84579, 84579, 84579, -5539, 3784, -5539, - -5539, -5539, 84579, 84579, 4064, 821, 2142, 61587, 84579, 84579, - 61587, 84579, 84579, 84579, 84579, 84579, 84579, 84579, 3946, -5539, - 4156, 4081, 2315, 4124, 3815, 84579, -5539, 84579, 1141, -5539, - 3209, 84579, 84579, 84579, 84579, -5539, -5539, -5539, -5539, -5539, - 3457, -5539, 3735, 4026, 995, -5539, 4036, 4037, 4038, 995, - -5539, -5539, 1758, -5539, 492, 84579, -5539, 2399, 84579, -5539, - -5539, -5539, 3676, 2453, 2461, -5539, -5539, -5539, -5539, -5539, - -5539, 3758, 84579, 84579, 36968, -5539, 1680, 1745, 1215, -5539, - 4040, 84579, 3033, -5539, -5539, -5539, 827, 84579, -5539, -5539, - -5539, -5539, 3759, -5539, 811, 3591, -5539, 4057, 69251, 2748, - 61587, 61587, 2748, -5539,108459, 3763, 3326, -5539, 463, 3849, - -5539, 61587, 1323,105176, 3130, 3798, 3978, 10790, 39877, 40358, - 1351, -5539, 3767, 3770, -5539, -5539, 84579, 3791, 60150, 2323, - 3099, 4229, 101, 2152, -5539, 70688, 3960, 3591, 4057, -5539, - 2966, 3985, 3986, -5539, 1844, 84579, 3385, 3326, 1141, 84579, - 3246, 46613, -5539, 4270, 2226, -5539,105655, 31523, 31523, -5539, - 3771, -5539, 3773, 7122, -5539, 3850, 3774, 4234, 31523, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, 3863, 3780, 84579, - 84579, 842, 84579, -5539, 3781, 3637, -5539, 3637, -5539, 84579, - -5539, 84579, -5539, 899, -5539, 3909, 899, 84579, 84579, 84579, - 84579, 84579, 84579, 3312, 355, 3341, -5539, -5539, 4105, 60629, - 3660, -5539, 2332, 84579, -5539, -5539, -5539, 4173, -5539, -5539, - 130, 4113, 899, -5539, 1005, 1005, 1005, 1005, 4068, 1005, - 1005, 1005, 1005, 1005, -5539, 31523, 19935, -5539, 3787, -5539, - 19935, 19935, 3795, 10876, 18537, -5539, 2342, 31523, -5539, 576, - 576, 576, 1951, 4115, -5539, 2764, 576, 576, 576, 498, - 498, 241, 241, 241, 4121, 212, 18686, 18845, 19267, 3800, - -5539, -5539, -5539, 3390, -5539, 33503, 1209, 4232, 37952, -5539, - -5539, -5539, 3840, 3841, 3803, -5539, 31523, 33998, 3802,110319, - 3993, -5539, -5539, 1706, 31523, 31523, 5853, -5539, 7972, 31523, - -5539, 5853, 425, 31523, 3015, 3691, 31523, 31523, 4936, 11420, - 3806, 31523,106120, -5539, -5539, -5539, 2344, 31523, 84579, 84579, - 84579, 84579, -5539, -5539, -5539, 3981, 2500, 3981, 1141, 3807, - -5539, -5539, -5539, -5539, 58234, 3809, 3559, 82663, 3811, 84579, - 2132, 39877, -5539, -5539, 2334, -5539, 39877, 4078, -5539, 39877, - 65898, -5539, 84579, 3813, 84579, -5539, 1658, 31523, 3852, 50085, - -5539, -5539, -5539, -5539, 3913, -5539, 4033, 19935, 29048, -5539, - 1844, 1989, 84579, 1707, 66, -5539, 31523, 3825, 84579, -5539, - 3821, 19935, -5539, 3891, 2352, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, 3903, 71167, 4148, -5539, 31523, 2353, -5539, 3862, - 4246, 166, 2376, 2383, 1679, -5539, 2402, -5539, 1755, 4122, - 230, -5539, 899, -5539,108459, 84579, 84579, 84579, 2905, -5539, - -5539, 84579, 84579, 84579, 84579, -5539, -5539, 61587, 84579, -5539, - 84579, -5539, -5539, -5539, -5539, 267, 1680, 4138, 4141, 4058, - -5539, 355, -5539, 1680, 4059, 267, 84579, -5539, -5539, -5539, - 2119, -5539,108459, 899, 899, -5539, -5539, -5539, -5539, -5539, - 3843, -5539, 4278, 3930, 84579, 84579, 84579, 84579, 84579, 61587, - 84579, 84579, 2638, 2638,108459, 3842, -5539, 2638, 2638, 3844, - -5539, 61587, 84579, 84579, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, 3928, -5539, 31523, 4274, -5539, - -5539, -5539, -5539, -5539, 31523, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, 61587, 84579, 3931, -5539, - 3934, -5539, 206, -5539, -5539, 84579, 84579, 84579, 84579, 4196, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, 4195, 84579, -5539, -5539, 1141, 1141,108459, 899, 899, - -5539, -5539, -5539, 3936, -5539, -5539, 3856, 4136, 995, -5539, - 995, 995, 995, -5539, 3860, -5539, 1758, 4228, -5539, 1679, - 1904, 4185, -5539, 31523, -5539, 1749, 1951, -5539, 4243, 4325, - -5539, -5539, -5539, -5539, 3285, 2170, 3285, -5539, -5539, 65898, - 404, -5539, 4167, 327, 57276, 4086, 69251, 348, 320, 3870, - 3997, -5539, 2748, 2748, 3937, 84579, 4334, -5539, -5539, -5539, - -5539, -5539, -5539, 61587, 3558, -5539, 4102, 106, 4207, 84579, - 40358, -5539, 3414, -5539, -5539, -5539, 1141, -5539, -5539, 4006, - 3326, -5539, 1454, 84579, 4099, 69251, 3385, 2403, -5539, -5539, - -5539, 3922, 4326, 3348, -5539, 348, 3960, -5539, -5539, 4302, - 3980, 3929, 4355, -5539, 3980, 4222, 4109, 3896, -5539, 3606, - -5539, 84579, -5539, 19935, 19935, 1141,110784, 469,108459, 4230, - -5539, 19935, 84579, 191, 3894, 4063, -5539, 4197, 899, 2412, - -5539, 899, 899, -5539, 84579, -5539, 3312, 3312, 3312, 3312, - 3312, -5539, 4114, -5539, -5539, -5539, 4188, -5539, 899, 60629, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, 1005, -5539, -5539, - -5539, -5539, -5539, 19935, -5539, -5539, -5539, 31523, -5539, 11472, - 36968, 4235, -5539, 31523, 31523, 31523, -5539, 3915, 2426, 2433, - -5539, -5539, 1209, -5539, 4232, -5539, -5539, -5539, 11611, 3964, - 19935, 4017, 3912, 3916, 5853, 5853, 7972, 5853, 31523, 31523, - 5853, 5853, 31523, -5539, -5539, 11659, 4104, -5539, -5539, 11845, - -5539, -5539, -5539, -5539, 3852, -5539, -5539, 3852, -5539, 4053, - -5539, 2438, 4379, 35978, 4340, -5539, 84579, 2443, -5539, 31523, - 3921, -5539, -5539, 39877, 2334, 3924, 2454, 84579, 2455,108459, - 34493, 19935, 84579, 3457, 3927, -5539, 84579, 2855, -5539, 72, - -5539, -5539, 4332, 41320, 4291, 19415, 31523, -5539, -5539, -5539, - -5539, 60629, 4144, 60629, 1679, 12112, 4237, 41320, 51077, 84579, - -5539, 84579, -5539, 4092, 4237, 4237, -5539, -5539, -5539, -5539, - -5539, -5539, 3945, -5539, -5539, -5539, -5539, 4021, -5539, -5539, - 30, 3339, -5539, 2090, -5539, 4410, 4296, 4298, -5539, -5539, - -5539, -5539, -5539, -5539, 4156, -5539, -5539, 46613, 61587, 84579, - -5539, 4045, -5539, -5539, -5539, -5539, -5539, -5539, 43245, 50085, - -5539, 869, 3953, 3955, 1221, -5539, -5539, -5539, 84579, 12277, - 3956, 12348, 51, 3339, 84579, 84579, 3958, 3963, 3968, 25, - 1119, 1883, 3312, 4285, 84579, -5539, -5539, -5539, 4156, -5539, - -5539, 84579, -5539, 995, -5539, -5539, -5539, -5539, 57276, -5539, - 3175, 3860, 1141, 65898, 4427, 4427, 12447, 4189, -5539, -5539, - 118, 4030, 4226, 4030, 3972, 84579, 827, 3974, 2464, -5539, - 84579, 3975, 4106, 1681, 1681, 84579, 84579, 84579, 2465, 1844, - 2748, 3765, 1323, 4324, 69251, 4368, 3791, 324, -5539, 84579, - 4443, 84579, 3385, 3591, 84579, 3982, -5539, -5539, 70688, 4191, - 2090, 84579, 2272, 3960, 3348, 1191, 84579, -5539, 969, -5539, - 1844, -5539, 84579, 77394, 41320, 4312, -5539,109854, -5539, 2466, - -5539, -5539, -5539, 4061, 20592, 3210, 4107, 4108, 3994, 1905, - 4321, 84579, 744, -5539, -5539, -5539, -5539, -5539, -5539, 84579, - -5539, 132, -5539, 19501, -5539, 3757, 36968, 19935, 19935, 19935, - 31523, -5539, 31523, -5539, -5539, -5539, -5539, 752, -5539, -5539, - 5853, 5853, 5853, -5539, 4439, 3457, -5539, -5539, -5539, 964, - 4388, 3437, 58234, 4001, -5539, 36968, 2470, -5539, 1923, 84579, - 2471, -5539, 19935, 84579, -5539, -5539, 31523, -5539, 2477, -5539, - 4002, 45, 4003, 23170, 4010, -5539, -5539, -5539, -5539, -5539, - 19935, 4012, -5539, 4469, 1463, -5539, -5539, 4066, 84579, 2479, - -5539, 125, 1961, 4065, -5539, 19935, 1470, 2261, 319, 4246, - 4018, 3285, -5539, 4019, -5539, -5539, 2966, 399, 84579, 3285, - 3285, -5539, 84579, 4116, -5539, 4335, -5539, -5539, 4088, -5539, - 860, 3339, 84579,108459, -5539, 150, 4354, -5539,108459,108459, - -5539, -5539, -5539, 31523, -5539, 4119, -5539, -5539, -5539, 31523, - 31523, 68293, -5539, -5539, 84579, 84579, 84579, 84579, 84579, -5539, - 899, -5539, -5539, 2486, -5539, 42282, -5539, -5539, 3171, 1141, - 3171, 1759, -5539, -5539, 3171, 3171, -5539, 3210, -5539, 4427, - 360, -5539, -5539, 4260, 4031, 31523, 4330, -5539, 188, 4248, - -5539, 4034, -5539, 65898, 4528, -5539, 57276, 3591, 4057, 84579, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, 2494, 3791, 4378, 3326, 3929, -5539, 84579, 4077, - -5539, 39877, 3791, 1844, 2152, -5539, 3960, 3591, 4057, -5539, - -5539, 4041, 3986, 3348, 2272, 4183, -5539, 4184, -5539, 4473, - 4256, 4478, 3385, -5539, 3246, 2517, 84579, -5539, -5539, 7122, - 110784,108459, -5539, -5539, -5539, 4047, 4417, 4094, 4095, -5539, - -5539, -5539, 1905, -5539, 1009, 4416, 4101, -5539, 4117, 84579, - -5539, -5539, 3791, 899, 31523, 3757, 2547, 2552, 4120, -5539, - 31523, 1123, 4394, 4395, 84579, -5539, -5539, -5539, 84579, 1951, - 4060, 35978, 57276, 2554, -5539,107994, -5539, 2556, 2560, -5539, - 31523, 4062, 31523, -5539, 34493, 84579, 4070, 3216, 1844, -5539, - 3210, 41320, -5539, 4198, 4532, 4328, -5539, -5539, 4400, -5539, - -5539, 84579, 4030, 50085, 399, 3441, 2170, 4030, 4030, -5539, - 84579, 4031, 31523, -5539, 4168, -5539, -5539, 2566, 1669, 4247, - 4247, 2568, 2572, 12877, 84579, 2574, 2580, -5539, 2581, 2638, - 3327, 1883, 3327, -5539, 3312, -5539, -5539, 57276, -5539, 61108, - -5539, -5539, -5539, 1141, -5539, 1141, 4304, 84579, 52514, 1141, - 1141, -5539, -5539, -5539, -5539, 4380, -5539, 3099, -5539, 12944, - 4177, -5539, -5539, -5539, 502, -5539, 4301, 4308, -5539, 4096, - -5539, 2582, -5539, 348, 4223, 3791, -5539, -5539, 84579, 4560, - 4561, -5539, 794, 84579, 3414, -5539, 3929, 3385, 3348, 348, - 3960, 2090, 41801, 3980, 2272, 3986, -5539, -5539, 4315, -5539, - 4317, -5539, 4103, 4404, -5539, 1580, 469, -5539, -5539, -5539, - 366, 4436, 4438, -5539, -5539, -5539, 3171, -5539, 140, 4118, - 4461, -5539, -5539, -5539, -5539, 19935, -5539, -5539, -5539, 3390, - 34988, 34988, 34988, 4123, 4556, 4559, 957, 2586, 37952, -5539, - -5539, -5539, 84579, 4329, 916, 4582, 4279, 2590, 34493, 2594, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, 45170, 31523, 4214, - 4532, 60629, 2596, 3550, 4126, 3441, -5539, 4226, -5539, -5539, - 3339, -5539, 19935, 84579, 65898, 4572, -5539, -5539, -5539, -5539, - -5539, -5539, -5539, 3339, 4219, -5539, -5539, 68293, -5539, 84579, - -5539, -5539, 2598, -5539, -5539, -5539, 84579, 3894, -5539, 3894, - -5539, -5539, -5539, 1559, 4242, 84579, 946, 946, 4517, -5539, - 4203, -5539, 4142, -5539, 4638, 4272, 84579, -5539, -5539, 869, - 1844, 69251, 3791, -5539, -5539, 2272, 3960, 3348, 31523, 2602, - -5539, 4246, 166, -5539, 3986, 3980, -5539, -5539, 41320, 4145, - 3033, 4508, -5539, -5539, -5539, 2177, 65898, 65898, 84579, -5539, - -5539, -5539, 31523, 827, 36473, 4290, 1170, 14110, 4500, -5539, - 4500, 4500, -5539, 84579, 84579, 84579, -5539, 3559, -5539, -5539, - 36968, 36968, 4377, -5539, 916, -5539, 84579, -5539, 4154, -5539, - -5539, 2608, -5539, 1385, 19935, 456, 4245, 319, -5539, -5539, - -5539, -5539, 4248, 1679, 1679, -5539, 3339, -5539, 84579, -5539, - 4159, -5539, -5539, -5539, 61108, 3894, -5539, -5539, -5539, -5539, - 4637, -5539, 281, -5539, -5539, -5539, -5539, 84579, 3791, 3842, - 3929, -5539, 3986, 3348, 2272, 13108, -5539, 41801, 84579, 84579, - 3980, -5539, 2609, 41320, 3326, 4303, -5539, 2385, -5539, -5539, - -5539, -5539, -5539, -5539, -5539, 448, 4160, 4162, -5539, -5539, - 13278, 65898, 4634, -5539, -5539, -5539, -5539, -5539, 829, -5539, - -5539, -5539, 981, 990, 1820, 4589, 1951, 1951, -5539, -5539, - -5539, 31523, -5539, -5539, -5539, 4398, 4297, -5539, -5539, 956, - -5539, 1679, -5539, -5539, -5539, 31523, -5539, -5539, 2170, 2170, - 3791, -5539, -5539, 3980, 2272, 3986, 4246, -5539, -5539, -5539, - -5539, -5539, 4404, -5539, 2610, 3980, 4101, 2498, -5539, -5539, - 2505, 2515, 4255, 4501, -5539, 4175, 35483, 4318, -5539, 4383, - -5539, 84579, 84579, 58713, 84579, 84579, 13531, -5539, 45170, 4411, - 142, -5539, 1679, 2615, -5539, -5539, -5539, -5539, 3986, 3980, - 84579, 3033, -5539, 41320, 3210, 4530, -5539, 2385, 4306, 4307, - 56797, -5539, -5539, -5539, -5539, -5539, 330, 4566, -5539, 2619, - -5539, 4186, -5539, 4249, 72, 4199, 84579, -5539, -5539, 3980, - -5539, -5539, 3326, -5539, -5539, 827, -5539, 4238, 4239, -5539, - 2621, -5539, -5539, -5539, -5539, 31523, 58713, -5539, -5539, 4257, - 31523, 2631, -5539, 3980, 65898, 4526, 4529, -5539, 56797, 822, - 4264, 4262, 2637, 841, 3210, 4210, 65898, 65898, -5539, 4211, - 84579, -5539, -5539, 72, -5539, -5539, 56797, -5539, -5539, 2500, - -5539, 4266, 2653, 4262, -5539, -5539 + 7322, 1367, 21257, -5456, -5456, 1367, 68858, -5456, 78658, 952, + 193, 121, 202, 20224, 79148, 88458, 793, 1089, 20847, 1367, + 88458, 2334, 59057, 74248, 351, 88458, 1164, 762, 59057, 88458, + 88948, 1187, 1182, 1009, 89438, 79638, 72778, 1486, 88458, 1415, + 1743, 89928, 80128, 1236, 80618, 762, 54673, 369, 1224, 90418, + 88458,112888, 1743, 81108, 81108, 81108, 2066, 1635, 1320, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, 1532, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, 1931, -5456, 993, + 2110, 1607, 239, 1354, -5456, -5456, 1929, 68858, 88458, 88458, + 88458, 1749, 88458, 1684, 88458, 846, 68858, 64938, 81598, 1842, + 1705, 50639, 90908, -5456, 68858, 88458, 62488, 68858, 88458, 88458, + 91398, 88458, 91888, 88458, 1079, 76698, 88458, 1822, 88458, 88458, + 62978, 92378, 1946, 1670, 238, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, 1700, + 1934, -5456, 250, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, 59547, 88458, 14407, 1164, 1929, -5456, 2066, 88458, + 2008, 88458, 1742, 92868, 88458, -5456, 88458, 1877, 93358, 911, + 1963, 64938, 1996, 51148, 1967, 88458, 88458, 64938, 93848, 94338, + 94828, 88458, 88458, -5456, -5456, 1975, 88458, -5456, 2171, 65428, + 1786, 2181, 2299, 2268, 607, -5456, 82088, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, 68368, 1089, -5456, -5456, 2225, + 69348, 2306, -5456, -5456, 95318,113364, 2073, -5456, 912, 69838, + 65918, 2438, 2070, 51657, 2482, -5456, 70328, -5456, 66408, 70818, + -5456, -5456, -5456, -5456, -5456, 95808, -5456, 96298, 2240, 2306, + -5456,113840, 66898, -5456, 2319, 96788, 97278, 97768, 1929, 2127, + 1775, 2406, 45160, -5456, -5456, -5456, 2186, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, 249, 295, 257, 229, + 307, -5456, -5456, 241, 243, 248, 249, 2643, 2643, -5456, + 88458, -5456, -5456, 295, 751, 2282, 2226, 2226, 2226, 2418, + 26, -5456, 2226, 2355, -5456, -5456, -5456, -5456, 80618, -5456, + 2231, 1164, 2269, 2739, 2383, 59547, 1388, 88458, -5456, -5456, + 2805, 2368, 2699, 2442, -5456, -5456, -5456, 2584, 2634, 220, + 749, 1164, 222, -5456, 2765, -5456, 2690, 30574, 30574, 1164, + 82578, 98258, 228, 67878, 1959, 83068, 2449, 1377, 2720, -5456, + -5456, -5456, 128, -5456, 2946, 2533, 2807, 2442, 1670, 47136, + -5456, -5456, 2561, 1934, 80618, -5456, -5456, -5456, 59547, 2866, + 33622, 88458, 2539, -5456, 2560, 2539, -5456, -5456, 2583, -5456, + 2583, 2583, 2566, 2566, 2748, 2572, -5456, -5456, -5456, 2336, + 2583, 2566, -5456,114792, -5456, 1823, 1905, -5456, -5456, 3037, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, 2577, -5456, + 1058, 1933, -5456, -5456, -5456, 30574, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, 2578, 2592, 1607, -5456, 9386, 59547, 88458, + 1777, 1777, 3038, 1777, 1728, 1962, -5456, 2302, -5456, 2924, + 2894, 2900, 80618, 2594, 1010, -5456, 1744, 2627, 1732, 2631, + 1810, 1861, -5456, 236, 88458, 318, 2674, 83558, 6520, 2637, + 1934, 2639, -5456, -5456, -5456, -5456, 2783, 1102, -5456, -5456, + -5456, -5456, 2959, 3009, 8656, 368, 84048, -5456, -5456, -5456, + -5456, 88458, 88458, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, 2652, 1573, -5456, -5456, 2654, 3013, 2876, 8377, + 1077, 2980, 2830, 1384, 9288, 2890, 1833, 3039, 19715, 1519, + 3041, 1831, 1454, 84538, 88458, 3002, 3050, 7852, 1821, 1022, + 2911, 1041, 2980, 3046, 2879, 1384, 3062, 5523, 88458, -5456, + 2991, 3112, 1109, -5456, 178, -5456, 23523, 33622, 54183, -5456, + 1934, -5456, 1751, -5456, -5456, 58567, -5456, 2784, 2939, 91, + 68858, 2725, 88458, 88458, -5456,112888, 68858, -5456, 2951, 52166, + 68858, -5456, 68858, -5456, -5456, 3073,112888, 88458, 88458, -5456, + 88458, -5456, -5456, 2728, -5456, -5456, -5456, -5456, -5456, 2226, + 88458, 3175,112888, 2970, 207, 1790, 3216, 88458, 2975, 1790, + 2787, 98748, -5456, -5456, 1790, -5456, -5456, -5456, 88458, 88458, + 2750, 1438, 2969, 798, 1790, 2985, 3222, 3223, 2992, 2838, + 2997, 2560, -5456, 3190, 2973, 1028, 253, 2079, 1790, 2822, + 99238, 99728, 88458, 2823, 88458, 3201, 68858, 2857, 68858, 68858, + 88458, 3125, 88458, -5456, 2966, -5456, -5456, 981, -5456, -5456, + -5456, -5456, -5456, 3144, -5456, 225, 3146, 2788, 3148, 1750, + 3149, 327, -5456, -5456, 2831, -5456, 3150, 328, -5456, 3152, + -5456, 2790,100218, -5456,100708,101198, 3155, 330, -5456, 64938, + 3156, 328, 3157, 2790, 3158, 328, 3159, 270, 3160, -5456, + 1327, 3153, 3164, 327, 3169, 2101, 2790, -5456, 3170, 353, + -5456, 3172, 379, -5456, 3173, 3033, -5456, 33622, -5456, 2914, + -5456, 1224, 1911, 2406, 295, -5456, 88458, 295, 88458, 295, + 88458, 295, 88458, 295, 88458, 88458, 88458, 295, -5456, -5456, + -5456, 88458, 2817, 88458, -5456, 88458, -5456, -5456, -5456, 75228, + 64938, 75718, -5456, 88458, -5456, 129, 1164, -5456, -5456,112888, + 3301, 64938, 3201, 1943, -5456, -5456, 3201, -5456, -5456, 3201, + 3201, -5456, -5456, -5456, 3100, 88458, 3179, 75228, 64938, 3182, + -5456,101688, -5456, 68368, 3057, 2842, -5456, -5456, -5456, -5456, + -5456, 1948, 2344, 290, 2458, 33622, 2843, 290, 290, 2845, + 3192, -5456, -5456, -5456, 271, 2848, 2849, -5456, 293, 293, + -5456, 2850, 2851, -5456, 300, 2856, 2859, 2478, 2485, 303, + 2861, 2863, 2864, 2865, 2867, 2868, 2869, 2336, 290, 2871, + 33622, -5456, 2873, 293, 2877, 2878, 2880, 2490, 2882, -5456, + 2493, 2883, -5456, 313, 325, 2886, 2887, -5456, 3083, -5456, + 305, 2893, 2895, 2896, 2899, 2901, 2906, 2909, 2912, 33622, + 33622, 33622, -5456, 28029, 1934, 2516, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, 308, 50130, -5456, 2908, -5456, -5456, + 3082, -5456, -5456, 33622, -5456, -5456, 3238, 168, -5456, 316, + -5456, -5456, -5456, 1934, 3188, 2907, -5456, -5456, 1370, 2910, + -5456, 2239, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + 67388, 3388, -5456, 364, 1164, 178, 374, 3329, 56607, 57097, + -5456, -5456, 3193, -5456, 88458, -5456, -5456, 1934, 165, 2026, + -5456, 2186, 19614, 2088, 2539, 88458, 88458, 3401, -5456, 2927, + -5456, -5456, 33622, -5456, -5456, -5456, 2643, -5456, 2583, 2583, + -5456, -5456, 3404, 3018, 3020, 2643, -5456, 2643, -5456, 2935, + 2936, 2643, 3022, 3023, 3030, -5456, 2945, 3032, 2643, -5456, + -5456, 60528, 2052, -5456, 3286, 349, -5456, -5456, -5456, 2107, + -5456, 2944, -5456, 2560, -5456, -5456, 1607, 1607, 33622, 1607, + 980, 1401, 31082, 34130, 3294, 3174, 1281, 1590, 3297, -5456, + 3178, 1728, 1962, 80618, 88458, 80618,102178, 3085, 33622, -5456, + 3403, 3049, 3052, 3109, 55653, -5456, 3055, 3021, 3058, 3114, + 2958, 3064, 3065, 3124, -5456, 3241, -5456, -5456, 3072, 3421, + 3074,102668, -5456, -5456, 321, -5456, -5456, -5456, 321, -5456, + 2999, 1595, 210, 973, 3076, 465, 242, 3413, -5456, 1572, + -5456, -5456, 3133, -5456, 13280, 88458, 3353, 5641, 3213, 368, + 3132, -5456, -5456, -5456, 3272, 3084, 88458, 3087, 3232, 368, + 1355,103158, -5456, -5456, 88458, -5456, -5456, -5456, -5456, 8250, + 3391, 26569, -5456, 1882, 3093, 3075, 3105, 88458, 71798, 1886, + 3208, 3231, 1824, 2043, 604, 3161, 88458, 2048, 3237, 88458, + 3024, 3104, 3113, 3345, 3026, 643, 3455, 3031, -5456, -5456, + -5456, 3422, -5456, 2377, 2526, 3242, -5456, 3356, 3405, 7571, + 3106, 3107,111460, -5456, 3143, 65, 52675, 88458, 88458, 3145, + 3147,103648, 8250, 3433, 76208, 76208, 3151, 3162, 46642, 3462, + 1834, 3163, -5456, -5456, -5456, 1834, 3167, 3168,104138, 8250, + 3449, 88458, 3185, 3187, 88458,114792, 368, -5456, 3520, 368, + 368, 1651, 3521, 3196, 373, 3318, 938, 1790, 3031, 2888, + -5456, 3197, 3199, 393, -5456, 3288, 88458, 3202, 3203, 98, + 3250, 1164, -5456, 3253, -5456, 3204, 3262, 3205, 747, 2750, + -5456, -5456, 1394, 3181, 80618, 3284, 3303, 2048, 344, 1053, + 3031, -5456, 3206, 3209, 3026, 3026, 88458, 88458, 88458, 88458, + 88458, 291, 3570, 3573, 3211, 526, 66, 3111, -5456, 1834, + 63468, 3212, -5456, 1834, 88458, 262, 1096, 3031, 1839, 1923, + -5456, -5456, -5456, 1670, -5456, 33622, 33622, 33622, 3126, -5456, + 2563, 19614, 729, -5456, 2647, 9868, 3123, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, 88458, 59547, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, 88458, -5456, 88458, 3423,112888, 3424, 3347, + 3425, 3426, 368, 88458, 88458, 3427, 3428, 3429,112888, 3430, + 3438, 3439, 3359, 3236, 851, 3228, 3154, 3630, 3515, 88458, + 60528, -5456, 321, -5456,112888, 3377, 3519, -5456, 88458, 3397, + 90, -5456, 3556, 3229, -5456, -5456, 102, 88458, 74738, 2750, + -5456, -5456, 3525, 64938, 1001, 3528, 1164, 3221, 3533, 3394, + 1164, 64938, 3446, 88458, 88458, 88458, 88458, 152, -5456, 63468, + 3417, -5456, 88458, 3419, 2888, 3420, 3665, 1203, 2226,104628, + 3536, -5456,105118, 3194, 88458, 3195, 3195, 3671,112888, 1155, + 3481, -5456, -5456, 2119, -5456, 3343, -5456, 68858, -5456, -5456, + 68858, -5456, -5456,112888, 88458, 3207,112888,112888, -5456, -5456, + 68858, 68858, -5456, 64938, 64938, 3564, 353, 3569, 3275, 3574, + 3276, 52675, 52675, -5456, 448, 68858, -5456, 64938, 68858, -5456, + 88458, -5456, 88458, -5456, -5456, -5456, -5456,112888,112888, -5456, + 64938, 63468, 3575, 88458, 88458, -5456, 88458, 88458, -5456, 88458, + 88458, 2109,105608, 2406, -5456, 88458, -5456, 88458, -5456, 88458, + -5456, 88458, -5456, 88458, -5456, -5456, -5456, 88458, -5456, 88458, + 2114, -5456, -5456, 2115, 1310, 88458, 88458, 247, 68858, 88458, + 3442, 88458, 68858, 68858, 88458, 88458, 88458, 88458, 88458, 3305, + 2910, 434, -5456, 302, 360, 80618, 3451, -5456, -5456, 2121, + 2066, 34, 88458, -5456, 88458, 88458, 88458, -5456, -5456, 74248, + 3562, 419, 75718, 88458, -5456, -5456, 8642, 33622, 1934, 30061, + -5456, -5456, 19614, 3274, 33622, 33622, 3225, 2643, 2643, -5456, + 336, 33622, 33622, 27521, 33622, 31590, 33622, 33622, 2643, 2643, + 33622, 10031, 33622, 52675, 33622, 39210, 24551, 33622, 33622, 28537, + 292, 2850, 33622, 3476, 40220, 33622, 374, 3477, 33622, 374, + 10031, 3733, 3733, 2353, 7043, 3230, 1934, -5456, -5456, 1130, + 2643, 1130, -5456, 498,112888, 33622, 33622, 33622, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, 33622, -5456, 60528, -5456, -5456, -5456, -5456, + -5456, -5456, 3320, -5456, -5456, -5456, -5456, -5456, -5456, 4870, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, 88458, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, 29045, -5456, -5456, + -5456, -5456, 3240, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, 3550, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, 29553, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, 3244, -5456, -5456, 33622, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, 3322, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, 954, 33622, 33622, 33622, 33622, 33622, 33622, + 33622, 33622, 33622, -5456, 33622, 510, -5456, -5456, 3568, 3238, + 816, 507, 3246, 3454, 85028, 30574, 3286, -5456, 23523, -5456, + 266, 3286, -5456, -5456, -5456, 88458, 3388, -5456, -5456, -5456, + 3326, -5456, -5456, -5456, -5456, -5456, -5456, 245, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, 3245, -5456, -5456, -5456, + -5456, 3245, -5456, 3247, 3576, 3577, 270, 88458, 2734, 33622, + 3320, 282, 88458, 33622, 3240, 3550, 33622, 3244, 33622, 3322, + -5456, 33622, -5456, 2125, 2027, 33622, 2139, 3251, -5456, -5456, + 3261, 2936, 3287, 3290, 3264, 3267, 2643, 224, 3268, 219, + 852, 3400, 2643, 3501, 3269, -5456, 60528, -5456, 42196, 3319, + -5456, -5456, -5456, 1743, 88458, 88458, -5456, 3572, -5456, 3270, + -5456, 14682, 3572, -5456, -5456, 39715, 3407, 3555, 3497, -5456, + -5456, -5456, 3280, 19614, 34638, 34638, -5456, 2310, 19614, 2465, + -5456, -5456, -5456, -5456, -5456, -5456, 1291, -5456, 88458, 150, + 3294, 1590, 3348, 1038, 3762, 3350, 88458, -5456, 47630, 2141, + -5456, 64938, 88458, 88458, 3498, -5456, 3744, -5456,114792, -5456, + 3291, -5456,114316,110508, -5456, -5456, 95, -5456, 1638, 64938, + -5456, 88458, 88458, 64938, 88458, 88458, -5456, 64938, 3344, 88458, + 88458, -5456, -5456, -5456, -5456, -5456, 57587, 721, 74248, 3435, + 73268, -5456, -5456, 3295, 88458, 3358, 3580, 3582, 801, -5456, + -5456,106098, -5456, 3529, 64938, 88458, 88458, 33622, 3530, 88458, + 88458, -5456, 1020, 3390, 3392, -5456, 88458, 3393, 68858, 3308, + 112888, 68858, 53184, 68858, 68858, 3650,112888, 88458, 88458, 1303, + 80618, 286, 1098, 3031, 3541, -5456, 1525, -5456, 64938, -5456, + 88458, 3532, -5456, -5456, -5456, 77188, 3780, 3437, -5456, -5456, + -5456,106588, -5456, -5456, 3539, -5456, 2159, -5456, 64938, 64938, + 88458, 9291,107078, 1373, 3558, -5456, -5456,112888, -5456, 88458, + 85518, 88458, 88458, 3598, 88458, 77678,107568,108058, 1628, 1722, + 3599, 88458, 78168, 3600, -5456, 3475, 88458, -5456, -5456, 61018, + 64938, 88458, 990, 60528, -5456, 3591, -5456, 88458, -5456, 970, + -5456, 88458, 4453, 3560, -5456, -5456, 3434, 3444, 88458, 289, + 1197, 3031, 3730, 88458, 88458, 3349, 2169, 64938, 88458, 60528, + -5456, 3578, 97, 64938, 88458, 77188, -5456, 3581, -5456, 80618, + 3670, -5456, 3352, 2226, 2561, 1952, 3352, 64938, 88458, -5456, + 3352, 88458, 98258, -5456, 64938, 1342, -5456, 64938, 88458, 77188, + -5456, 3583, 3522, 64938, 88458, 19902, -5456, -5456, -5456, 368, + -5456, -5456, -5456, -5456, -5456, 88458, 88458, 368, 88458, 88458, + 368, 1466, -5456, 64938, 88458, -5456, -5456, -5456, 3480, 64938, + 88458, 88458, 249, 88458, -5456, 88458, 64938, 3409, 88458, 88458, + -5456, -5456, 88458, 8144, 88458, 88458, 88458, 88458, 88458, 88458, + 64938, 88458, -5456, -5456, 1119, 1440, 1772, 1860, 1708, 88458, + 3679, 88458,108548, 64938, 88458, 88458, 1164, 88458, 60528, 1947, + -5456, -5456, 3492, -5456, 64938, 1342, -5456, 9887, 88458, 88458, + 88458, 3450, 3456, 287, 3544, -5456, -5456, -5456, 866, 866, + 3588, -5456, 33622, 33622, 32098, 3376, -5456, -5456, 33622, 2784, + -5456, -5456, -5456, 1047, 3853, 1047,109038, 1047, 1047, 3672, + 3441, 3443, 1047, 1047, 1047, 3663, 1047, 1047, 1047, 88458, + 3563, -5456, -5456, 3563, 876, 33622,112888, 88458, -5456, 2173, + -5456, 3396, -5456, -5456, 60528, 88458, 767, 957, 3746, 3611, + 72288, 1526, 3734, 88458, 3445, 88458, 3866, 3489, -4, -5456, + 1526, 88458, -5456, 3234, 74248, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, 88458, -5456, -5456, 3736, 88458, 42690, 3584, -5456, + 1164, 2750, 2750, 2750, 2750, 3399, 2750, 88458, 3527, 3753, + 1526, 3402, 3756, -5456, 2888, 3759, 114, 88458, 3624, 72288, + 3465, 3447, 3638, 3882, 2226, 1164, 3643, 3631, -5456, 56130, + -5456, 2750, 3898, 27045, 5399, 5984, 3632, 3695, -5456, -5456, + 3639, 962, 88458, 3741, 3742, 3764, -5456, 225, -5456, 3895, + 1750, 3765, 327, -5456, 328, -5456, 2790, -5456, 88458, -5456, + 88458, 88458, 88458, 88458, 330, -5456, -5456, 328, 2790, 328, + 270, -5456, 3702, 327, 2790, 3554, 3769, 353, -5456, 379, + -5456, 3644, 270, -5456, 3658, 2226, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, 2177, -5456, 88458, -5456, 3745, 3748, 3749, + 3750, 3751, 3436, 3440, 3466, 88458, 3448, 3436, 368, 3452, + 3453, -5456, 3448, 3448, 3436, 2910, 2910, 3436, 3440, 63958, + 3883, 60528, -5456, -5456, 3517, 3458, 3776, 232, -5456, 893, + 1319, 3689, -5456, -5456, -5456, -5456,112888, -5456, 64938, 3482, + -5456, -5456, -5456, 3659, 3460, 63958, 270, 345, -5456, 68858, + 88458,112888, 68858, 3666, 68858, 68858,112888, 88458, 88458, 2183, + -5456, 1924, -5456, 2005, 33622, 198, -5456, 15873, 2200, 33622, + 3459, 3461, -5456, 3782, -5456, -5456, -5456, -5456, -5456, -5456, + 3464, 3784, -5456, 2201, 2212,112888, 2236, 3468, 16480, -5456, + 3467, 215, 3660, 6237, 3504, 2214, 3469, 272, -5456, 6237, + 1005, 2227, 3472, 3473, 6746, 6659, 3479, 16678, 3463, 3483, + 3484, 3478, 39210, 39210, 28029, 1033, -5456, 39210, 3485, 3655, + 2243, 15077, 3486, 3490, 16815, 32606, 33622, 32606, 32606, 16913, + 3491, 3495, -5456, 3829, -5456, 2247, 60528, 3647, 17451, 2248, + -5456, 33622, 60528, 6986, 33622, -5456, 33622, -5456, 3496, -5456, + -5456, 1439, 1439, 1439, 10031, -5456, 3499, -5456, 39210, 39210, + -5456, 1883, 28029, -5456, -5456, 3793, -5456, -5456, 274, -5456, + -5456, -5456, -5456, -5456, 3579, -5456, -5456, -5456, 3693, 2123, + 2828, 52675, 10421, 33622, 288, 33622, 3240, 33622, 3552, 1439, + 1439, 1439, 483, 483, 263, 263, 263, 2098, 507, -5456, + -5456, -5456, 3502, 3505, 3454, 3506, 33622, -5456, 3559, 48124, + -5456, 2188, 2367, 88458, 3255, 3990, 6137, -5456, -5456, -5456, + 3319, 729, 3319, -5456, 1670, 2643, 1130, 58077, -5456, -5456, + -5456, -5456, -5456, -5456, 88458, 19614, -5456, -5456, 3738, 3508, + 2249, -5456, -5456, 2643, -5456, -5456, 2330, 2330, 3511, -5456, + 3516, -5456, -5456, -5456, -5456, -5456, -5456, -5456, 3503, -5456, + -5456, -5456, 43184, 3837, 3514, 41702, 86008, 3518, 2550, -5456, + 86008, 86498, 86008, -5456, 3509, -5456, -5456, 1934, 33622, 3851, + -5456, -5456, -5456, 33622, -5456, -5456, 1191, 3553, 772, 117, + 2529, 2529, 2310, 853, -5456, -5456, 3603, -5456, 33622, 2494, + -5456, 2520, -5456, -5456, -5456, -5456, 2910, -5456, 3796, -5456, + -5456, -5456, 42196, 3586, 3601, 1381, 46148, 3760, -5456, 88458, + 42196, -5456, 88458, 366, -5456, 3545, -5456, -5456, -5456, -5456, + -5456, -5456,110508, 1933, -5456,114316, -5456,114316, -5456, 1933, + 3997, -5456,110508, 1895, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, 64938, 64938, 3766, + 88458, 3771, 3767, 33622, 273, 88458, 3547, 3557, 1449, 3854, + 3561, -5456, 3909, 270, -5456, -5456, 3640, -5456, 19614, -5456, + -5456, -5456, -5456, -5456, 64938, 88458, -5456, 68368, -5456, -5456, + 112888, -5456, -5456, 88458, 88458, -5456, -5456, -5456,112888, -5456, + -5456, -5456, 88458, 854, 3645, 3646, 88458, -5456, 1343, 3288, + 10377, 88458, 88458, 88458, 3860, -5456, -5456, -5456, -5456, 3790, + -5456, 3920, -5456,110508, -5456, 2790, 1392, 3651, 3031, 3800, + -5456, 3928, 3680, -5456, 3698, 807, -5456, -5456, 3708, -5456, + -5456, -5456, -5456, 3932, 270, 3933, 270, 88458, 88458, 88458, + 88458, 3712, -5456, -5456, -5456, -5456, 3713, 3852, -5456, 60528, + 60528, 60528, 2259, -5456, -5456, 1164, -5456, -5456, -5456, -5456, + -5456, -5456, 3889, -5456, 2264, -5456, 1361, 88458, -5456, -5456, + -5456, -5456, -5456, 3937, 64938, 88458, 10659, 88458, 88458, 88458, + 3801, 1881, 1126,112888, -5456,111936, -5456, -5456, 2266, -5456, + 3592, 88458, 3673, 64938, 3653, -5456, -5456, -5456, 3940, 2226, + 3726, 76208, 3634, 3634, 2075, -5456, -5456, -5456, -5456, -5456, + 3862, 3788, -5456, 1110, 3791, 64938, 3662, -5456, -5456, -5456, + -5456, 3954, 3686, -5456, -5456, 3692, 1233, 3031, 2888, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, 3720, -5456, + -5456, -5456, -5456, 1201, 1201, -5456, -5456, -5456, 1201, 1531, + 410, 1301, 3031, -5456, 1362, 372, 3696, -5456, 3697, -5456, + -5456, -5456, 3869, 3872, 3873, 3700, 3701, 3757, 3703, 3704, + 3761, -5456, 3705, 3763, 3709, 3768, 3710, 4011, 270,112888, + 3861, 1164, 3777, 3988, 270, -5456, 3717, -5456, 3721, -5456, + 2286, 4102, -5456, 88458, -5456, 404, 1302, 3031, -5456, 3723, + -5456, 64938, 88458, -5456, -5456, -5456, 33622, 3637, 3649, 3652, + 19614, 19614, 33622, -5456, -5456, 19614, 3642, -5456, -5456, -5456, + -5456,112888, -5456, 88458, 3944, -5456, -5456, 1047, 88458, 88458, + -5456, -5456, -5456, 88458, -5456, -5456, -5456, 3946, -5456, 267, + 267, -5456, -5456, 3975, 7709, 3654, 335, -5456, 60528, 49112, + 3088, 826, 1790, -5456, 68368, 88458, 68368, -5456, 957, 3870, + 88458, 88458, 88458, 3657, 3676, -5456, -5456, -5456, -5456, 64938, + 1066, 64938, 2643, -5456, -5456, 3735, -5456, 88458, 2226, 4173, + 4008, 3409, -5456, 4139, 3223, 1001, 1794, 338, 2838, 4076, + 2560, 33622, 384, -5456, -5456, 1934, 88458, 3447, -5456, -5456, + -5456, -5456, 1164, -5456, 3675, 3678, -5456, 88458, 4022, 88458, + 88458, 88458, 88458, 3482, 3681, 88458, 3682,112888, 88458, 2197, + 3026, 4160, 4047, 2066, 3465, 3779, 4049, 80618, 3706, 2296, + -5456, -5456, 962, -5456, 2298, 171, -5456, 1164, 68368,110984, + 4036, -5456, 617, 5984, -5456, -5456, 617, 953, 88458, -5456, + -5456, -5456, -5456, 3921, 2273, -5456, 4024, -5456, -5456, 2066, + -5456,112888, 3699, -5456, 2303, -5456, -5456, -5456, 353, 3770, + 270, 3773, 270, -5456, -5456, -5456, -5456, 88458, -5456, 88458, + 63468, -5456, -5456, 88458, -5456, 4059, -5456, -5456, 3843, 3844, + 3845, 3846, 3848, 88458, 3436, -5456, 3711, 88458, 88458, 64938, + 1649, -5456, -5456, 64938, 423, -5456, 188, -5456, 80618, 3840, + -5456, -5456, -5456, -5456, 4073, 4075, -5456, -5456, -5456, 1128, + -5456, 75228, 438, -5456, 64938, 4009, 4010, 4015, 4017, 368, + 4018, 4019, 4023, 4025, 4029, -5456, -5456, -5456, 3718, 17503, + 33622, -5456, 4087,112888, -5456, 8075, -5456, -5456, 33622, -5456, + 33622, -5456, -5456, 3468, 4026, 3894, -5456, -5456, 3958, 3959, + 33622, 3894, 4198, 1012, 33622, 33622, -5456, -5456, 3963, 3965, + 33622, 2123, 2123, -5456, -5456, -5456, -5456, 2339, 33622, -5456, + 33622, -5456, -5456, 25065, 4250, 4250, 3747,112888, 39210, 39210, + 39210, 39210, 1442, 2877, 39210, 39210, 39210, 39210, 39210, 39210, + 39210, 39210, 39210, 39210, 551, -5456, 3955, 33622, 33622, 33114, + -5456, -5456,112888, 3752, 3491, 3754, 3758, 33622, -5456, -5456, + -5456, 2305, 40714, 3774, 60528, -5456, 33622, 15309, 2309, 3803, + 17590, 1934, 8264, 2544, 33622, 1054, 2461, 33622, 2320, 33622, + -5456, -5456, -5456, -5456, 4089, -5456, -5456, -5456, -5456, -5456, + -5456, 3992, 2123, -5456, 3823, 3830, -5456, 33622, 3775, 3340, + 39210, 39210, 4413, -5456, 4444, 33622, 28029, -5456, 3588, -5456, + 25579, 3778, 33622,110018, -5456, -5456, 762, 762, 762, 762, + -5456, 88458, 88458, 88458, 3851, 3783, 3851, 178, 3785, -5456, + -5456, -5456, -5456, 2066, -5456, 3772, -5456, -5456, -5456, -5456, + -5456, 86008, 86498, 86008, 3781, 41208, 26074, 2550, 3786, 88458, + -5456, -5456, 3797, 42196, 4052, 3968, -5456, 42196, 3968, 1546, + 3968, 4053, 3863, 48618, -5456, -5456, 3798, -5456, 3976, -5456, + 1882, 19614, 4220, 4094, -5456, 3799, -5456, 3553, 298, -5456, + -5456, -5456, 883, -5456, 3859, -5456, -5456, -5456, 3518, 35146, + 3929, -5456, -5456, -5456, 3834, 2337, -5456, -5456, 4203, 3929, + -5456, 2376, -5456, 2338, 47630, 3586, 33622, 1934, 2343, 1901, + -5456, -5456,110508, -5456, 3856, 2790, 2790, 1436, 3436, 4128, + 1436, 8985, -5456, -5456, 43678, 88458, 88458, -5456, 88458, 88458, + 1543, 88458, -5456, 88458, -5456, -5456, -5456, 4263, 3855, 3858, + 4080, -5456, 2631, -5456, -5456, 64938, 88458, -5456, -5456, -5456, + 424, 1335, 3031, -5456, 3887, -5456, -5456, 4105, 88458, -5456, + 4258, 3900, 88458, 4165, 88458, 86988, -5456, 4235, 1543, 3922, + 4144, 1804, 3026, 373, 4137, -5456, 1897, -5456, -5456, 3888, + -5456, 88458, -5456, 88458, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, 3947, -5456, -5456, -5456, -5456, 61018, -5456, -5456, 88458, + -5456, 60528, 49112, 60528, -5456, 88458, -5456, 1541, 428, 1336, + 3031, -5456, 3901, -5456, 4170, 3904, 3905, 3961, 194, 941, + 3907, 3908, 3964, 3825, 3826, 3827, -5456, 60528, 49621, 3987, + 88458, 2790, 3831, 3875, 88458, 3634, 87478, -5456, 3833, -5456, + -5456, 3634, 249, 2552, -5456, -5456, -5456, 1164, 2790, 1164, + 88458, 88458, 88458, 88458, 249, -5456, -5456, -5456, 4288, 3931, + 88458, 88458, 88458, 88458, -5456, 3897, -5456, -5456, -5456, 88458, + 88458, 4183, 231, 2138, 64938, 88458, 88458, 64938, 88458, 88458, + 88458, 88458, 88458, 88458, 88458, 4057, -5456, 4277, 4202, 2289, + 4245, 3923, 88458, -5456, 88458, 1164, -5456, 3288, 88458, 88458, + 88458, 88458, -5456, -5456, -5456, -5456, -5456, 3588, -5456, 3849, + 4138, 1047, -5456, 4143, 4145, 4146, 1047, -5456, -5456, 1790, + -5456, 511, 88458, -5456, 2235, 88458, -5456, -5456, -5456, 3799, + 2377, 2526, -5456, -5456, -5456, -5456, -5456, -5456, 3864, 88458, + 88458, 39210, -5456, 439, 1805, 1101, -5456, 4135, 88458, 3083, + -5456, -5456, -5456, 244, 88458, -5456, -5456, -5456, -5456, 3865, + -5456, 879, 3681, -5456, 4152, 72288, 2790, 64938, 64938, 2790, + -5456,112888, 3868, 3447, -5456, 501, 3941, -5456, 64938, 1001, + 109528, 3221, 3899, 4077, 11193, 42196, 42690, 1201, -5456, 3871, + 3867, -5456, -5456, 88458, 3870, 63468, 2352, 2888, 4337, 1204, + 2127, -5456, 73758, 4066, 3681, 4152, -5456, 3026, 4090, 4092, + -5456, 2066, 88458, 3482, 3447, 1164, 88458, 3358, 49112, -5456, + 4387, 2304, -5456,110508, 33622, 33622, -5456, 3874, -5456, 3876, + 5984, -5456, 3953, 3878, 4348, 33622, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, 3966, 3884, 88458, 88458, 962, 88458, + -5456, 3885, 3765, -5456, 3765, -5456, 88458, -5456, 88458, -5456, + 270, -5456, 4020, 270, 88458, 88458, 88458, 88458, 88458, 88458, + 3436, 368, 3453, -5456, -5456, 4221, 63958, 4219, -5456, 60528, + -5456, -5456, -5456, -5456, -5456, 2357, 88458, -5456, -5456, -5456, + 4291, 4230, 270, 419, 1049, 1049, 1049, 1049, 4185, 1049, + 1049, 1049, 1049, 1049, -5456, 33622, 19614, -5456, 3893, -5456, + 19614, 19614, -5456, 4265, 3896, 4124, 4126, -5456, 3902, 33622, + 3894, -5456, -5456, 4127, 4129, -5456, 3894, 3894, 3906, 11296, + 18324, -5456, 2375, 33622, -5456, 873, 873, 873, 2475, 4241, + -5456, 2672, 873, 873, 873, 496, 496, 276, 276, 276, + 4250, 551, 18366, 18734, 19084, 3911, -5456, -5456, -5456, 3491, + -5456, 35654, 1134, 4359, 40220, -5456, -5456, -5456, 3951, 3960, + 3913, -5456, 33622, 36162, 3914,114792, 4116, -5456, -5456, 1435, + 33622, 33622, 4780, -5456, 10572, 33622, -5456, -5456, 4199, 4204, + 4780, 530, 33622, 3101, 3677, 33622, 33622, 4745, 11446, 3925, + -5456, 2388, 33622, 11537, 4118, -5456, 88458, 88458, 88458, 88458, + -5456, -5456, -5456, 4094, 2559, 4094, 1164, 3926, -5456, -5456, + -5456, -5456, 61508, 3924, 3647, 86008, 3936, 88458, 2550, 42196, + -5456, -5456, 1712, -5456, 42196, 4212, -5456, 42196, 68858, -5456, + 88458, 3938, 88458, -5456, 1777, 33622, 3972, 52675, -5456, -5456, + -5456, -5456, 4021, -5456, 4164, 19614, 30574, -5456, 2066, 2433, + 88458, 1934, 103, -5456, 33622, 3939, 88458, -5456, 3929, 19614, + -5456, 4013, 2390, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + 4034, 74248, 4282, -5456, 33622, 2401, -5456, 3993, 4384, 218, + 2403, 2414, 1543, -5456, 2420, -5456, 1983, 4259, 476, -5456, + 270, -5456,112888, 88458, 88458, 88458, 2958, -5456, -5456, 88458, + 88458, 88458, 88458, -5456, -5456, 64938, 88458, -5456, 88458, -5456, + -5456, -5456, 87968, -5456, 3870, 249, 439, 4274, 4275, 4186, + -5456, 368, -5456, 439, 4187, 249, -5456, -5456, -5456, -5456, + 3395, -5456,112888, 270, 270, -5456, -5456, -5456, -5456, -5456, + 3971, -5456, 4409, 4058, 88458, 88458, 88458, 88458, 88458, 64938, + 88458, 88458, 2643, 2643,112888, 3962, -5456, 2643, 2643, 3969, + -5456, 64938, 88458, 88458, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, 4050, -5456, 33622, 4410, -5456, + -5456, -5456, -5456, -5456, 33622, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, 64938, 88458, 4056, -5456, + 4063, -5456, 844, -5456, -5456, 88458, 88458, 88458, 88458, 4331, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, 4341, 88458, -5456, -5456, 1164, 1164,112888, 270, 270, + -5456, -5456, -5456, 4067, -5456, -5456, 3989, 4281, 1047, -5456, + 1047, 1047, 1047, -5456, 3994, -5456, 1790, 4382, -5456, 1543, + 1781, 4333, -5456, 33622, -5456, 1312, 2475, -5456, 4391, 4474, + -5456, -5456, -5456, -5456, 3409, 2226, 3409, -5456, -5456, 68858, + 414, -5456, 4315, 767, 60528, 4224, 72288, 1362, 1937, 4002, + 4136, -5456, 2790, 2790, 4068, 88458, 4479, -5456, -5456, -5456, + -5456, -5456, -5456, 64938, 3653, -5456, 4244, 1215, 4351, 88458, + 42690, -5456, 3518, -5456, -5456, -5456, 1164, -5456, -5456, 4148, + 3447, -5456, 1986, 88458, 4238, 72288, 3482, 2424, -5456, -5456, + -5456, 4061, 4473, 3465, -5456, 1362, 4066, -5456, -5456, 4449, + 4117, 4064, 4501, -5456, 4117, 4369, 4249, 4032, -5456, 3706, + -5456, 88458, -5456, 19614, 19614, 1164,115268, 617,112888, 4380, + -5456, 19614, 88458, 922, 4035, 4206, -5456, 4346, 270, 2435, + -5456, 270, 270, -5456, 88458, -5456, 3436, 3436, 3436, 3436, + 3436, -5456, 4251, -5456, -5456, -5456, -5456, 4336, -5456, 63958, + -5456, 270, -5456, -5456, -5456, -5456, -5456, -5456, 1049, -5456, + -5456, -5456, -5456, -5456, 19614, -5456, 88458, -5456, -5456, -5456, + -5456, -5456, 3270, 4042, -5456, -5456, 4043, 4044, -5456, -5456, + 33622, -5456, 11948, 39210, 4385, -5456, 33622, 33622, 33622, -5456, + 4048, 2444, 2457, -5456, -5456, 1134, -5456, 4359, -5456, -5456, + -5456, 12019, 4107, 19614, 4166, 4054, 1813, 4780, 4780, 10572, + -5456, -5456, 4780, 33622, 33622, 4780, 4780, 33622, -5456, -5456, + -5456, 12088, -5456, 4508, 3588, -5456, -5456, -5456, -5456, 3972, + -5456, -5456, 3972, -5456, 4194, -5456, 2472, 4532, 38194, 4490, + -5456, 88458, 2484, -5456, 33622, 4060, -5456, -5456, 42196, 1712, + 4062, 2497, 88458, 2498,112888, 36670, 19614, 88458, 3588, 4070, + -5456, 88458, 2907, -5456, 1381, -5456, -5456, 4481, 43678, 4439, + 19172, 33622, -5456, -5456, -5456, -5456, 63958, 4285, 63958, 1543, + 12366, 4377, 43678, 53693, 88458, -5456, 88458, -5456, 4233, 4377, + 4377, -5456, -5456, -5456, -5456, -5456, -5456, 4072, -5456, -5456, + -5456, -5456, 4155, -5456, -5456, 1078, 3451, -5456, -5456, -5456, + -5456, -5456, 4551, 4436, 4440, -5456, -5456, -5456, -5456, -5456, + 4277, -5456, -5456, 49112, 64938, 88458, -5456, 4171, -5456, -5456, + -5456, -5456, -5456, -5456, 45654, 52675, -5456, 194, 4084, 4086, + 941, -5456, -5456, -5456, 88458, 12452, 4088, 12643, 1195, 3451, + 88458, 88458, 4096, 4097, 4099, 1691, 1495, 1843, 3436, 4425, + 88458, -5456, -5456, -5456, 4277, -5456, -5456, 88458, -5456, 1047, + -5456, -5456, -5456, -5456, 60528, -5456, 2208, 3994, 1164, 68858, + 4562, 4562, 12688, 4317, -5456, -5456, 451, 4154, 4349, 4154, + 4100, 88458, 244, 4101, 2499, -5456, 88458, 4103, 4234, 2229, + 2229, 88458, 88458, 88458, 2503, 2066, 2790, 3875, 1001, 4461, + 72288, 4507, 3870, 395, -5456, 88458, 4582, 88458, 3482, 3681, + 88458, 4109, -5456, -5456, 73758, 4325, 3088, 88458, 2197, 4066, + 3465, 280, 88458, -5456, 346, -5456, 2066, -5456, 88458, 80618, + 43678, 4451, -5456,114316, -5456, 2505, -5456, -5456, -5456, 4189, + 20728, 3319, 4232, 4236, 4119, 2044, 4466, 88458, 1181, -5456, + -5456, -5456, -5456, -5456, -5456, 88458, 438, -5456, -5456, -5456, + -5456, -5456, -5456, 19337, -5456, 3060, 39210, 19614, 19614, 19614, + 33622, -5456, 33622, -5456, -5456, -5456, -5456, 124, -5456, -5456, + 4434, 4130, 4780, 4780, 4780, -5456, 33622, 223, -5456, -5456, + 1371, 4529, 3509, 61508, 4132, -5456, 39210, 2510, -5456, 1120, + 88458, 2511, -5456, 19614, 88458, -5456, -5456, 33622, -5456, 2517, + -5456, 4134, 1088, 4140, 24037, 4142, -5456, -5456, -5456, -5456, + -5456, 19614, 4147, -5456, 4603, 1590, -5456, -5456, 4193, 88458, + 2518, -5456, 126, 905, 4177, -5456, 19614, 1649, 1436, 469, + 4384, 4141, 3409, -5456, 4149, -5456, -5456, 1107, 3026, 88458, + 3409, 3409, -5456, 88458, 4239, -5456, 3088, 4460, -5456, -5456, + 4201, -5456, 1196, 3451, 88458,112888, -5456, 166, 4488, -5456, + 112888,112888, -5456, -5456, -5456, 33622, -5456, 4242, -5456, -5456, + -5456, 33622, 33622, 71308, -5456, -5456, 88458, 88458, 88458, 88458, + 88458, -5456, 270, -5456, -5456, 2523, -5456, 44666, -5456, -5456, + 3216, 1164, 3216, 1941, -5456, -5456, 3216, 3216, -5456, 3319, + -5456, 4562, 1393, -5456, -5456, 4389, 4156, 33622, 4458, -5456, + 1351, 4372, -5456, 4157, -5456, 68858, 4664, -5456, 60528, 3681, + 4152, 88458, -5456, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, 2530, 3870, 4509, 3447, 4064, -5456, + 88458, 4205, -5456, 42196, 3870, 2066, 2127, -5456, 4066, 3681, + 4152, -5456, -5456, 4159, 4092, 3465, 2197, 4305, -5456, 4308, + -5456, 4606, 4383, 4608, 3482, -5456, 3358, 2531, 88458, -5456, + -5456, 5984,115268,112888, -5456, -5456, -5456, 4168, 4550, 4218, + 4222, -5456, -5456, -5456, 2044, -5456, 773, 4549, 4225, -5456, + 4240, 88458, -5456, -5456, 3870, 270, 33622, 3060, 2532, 2536, + 4237, -5456, -5456, -5456, 3491, 37178, 37178, 37178, 4176, 4531, + 4534, 88458, -5456, -5456, -5456, 88458, 2475, 4184, 38194, 60528, + 2537, -5456,112412, -5456, 2538, 2543, -5456, 33622, 4190, 33622, + -5456, 36670, 88458, 4192, 3294, 2066, -5456, 3319, 43678, -5456, + 4321, 4667, 4452, -5456, -5456, 4535, -5456, -5456, 88458, 4154, + 52675, 3553, 1107, 2226, 4154, 4154, -5456, 88458, 4156, 33622, + -5456, 4290, -5456, -5456, 2569, 1752, 4371, 4371, 2582, 2588, + 12782, 88458, 2597, 2606, -5456, 2607, 2643, 3440, 1843, 3440, + -5456, 3436, -5456, -5456, 60528, -5456, 64448, -5456, -5456, -5456, + 1164, -5456, 1164, 4430, 88458, 55163, 1164, 1164, -5456, -5456, + -5456, -5456, 4511, -5456, 2888, -5456, 13217, 4299, -5456, -5456, + -5456, 532, -5456, 4424, 4426, -5456, 4207, -5456, 2614, -5456, + 1362, 4340, 3870, -5456, -5456, 88458, 4685, 4687, -5456, 1304, + 88458, 3518, -5456, 4064, 3482, 3465, 1362, 4066, 3088, 44172, + 4117, 2197, 4092, -5456, -5456, 4428, -5456, 4432, -5456, 4215, + 4538, -5456, 1707, 617, -5456, -5456, -5456, 375, 4558, 4566, + -5456, -5456, -5456, 3216, -5456, 787, 4231, 4585, -5456, -5456, + -5456, -5456, 19614, -5456, -5456, -5456, 38702, 4378, 254, 15848, + 4596, -5456, 4596, 4596, -5456, 4689, 4690, 1213, 2618, 40220, + -5456, -5456, -5456, 88458, 4448, 343, 4713, 4406, 2620, 36670, + 2624, -5456, -5456, -5456, -5456, -5456, -5456, -5456, 47630, 33622, + 4339, 4667, 63958, 2625, 3634, 4246, -5456, 3553, 4349, -5456, + -5456, 3451, -5456, 19614, 88458, 68858, 4700, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, 3451, 4338, -5456, -5456, 71308, -5456, + 88458, -5456, -5456, 2630, -5456, -5456, -5456, 88458, 4035, -5456, + 4035, -5456, -5456, -5456, 2683, 4358, 88458, 1111, 1111, 4643, + -5456, 4319, -5456, 4255, -5456, 4768, 4392, 88458, -5456, -5456, + 194, 2066, 72288, 3870, -5456, -5456, 2197, 4066, 3465, 33622, + 2644, -5456, 4384, 218, -5456, 4092, 4117, -5456, -5456, 43678, + 4262, 3083, 4636, -5456, -5456, -5456, 1865, 68858, 68858, 88458, + -5456, -5456, -5456, 33622, 244, 4742, -5456, -5456, -5456, -5456, + -5456, 1206, -5456, -5456, -5456, 88458, 88458, 88458, -5456, 3647, + -5456, -5456, 39210, 39210, 4493, -5456, 343, -5456, 88458, -5456, + 4266, -5456, -5456, 2645, -5456, 1396, 19614, 390, 4357, 469, + -5456, -5456, -5456, -5456, 4372, 1543, 1543, -5456, 3451, -5456, + 88458, -5456, 4268, -5456, -5456, -5456, 64448, 4035, -5456, -5456, + -5456, -5456, 4760, -5456, 985, -5456, -5456, -5456, -5456, 88458, + 3870, 3962, 4064, -5456, 4092, 3465, 2197, 13565, -5456, 44172, + 88458, 88458, 4117, -5456, 2659, 43678, 3447, 4418, -5456, 2429, + -5456, -5456, -5456, -5456, -5456, -5456, -5456, 417, 4272, 4276, + -5456, -5456, 13697, 68858, 37686, 4427, -5456, 4489, -5456, 1249, + 1350, 1920, 4714, 2475, 2475, -5456, -5456, -5456, 33622, -5456, + -5456, -5456, 4515, 4414, -5456, -5456, 1548, -5456, 1543, -5456, + -5456, -5456, 33622, -5456, -5456, 2226, 2226, 3870, -5456, -5456, + 4117, 2197, 4092, 4384, -5456, -5456, -5456, -5456, 4538, -5456, + 2677, 4117, 4225, 2324, -5456, -5456, 2356, 2592, 4373, 4624, + -5456, 4289, -5456, -5456, -5456, 88458, 88458, 61998, 88458, 88458, + 13897, -5456, 47630, 4520, 187, -5456, 1543, 2685, -5456, -5456, + -5456, -5456, 4092, 4117, 88458, 3083, -5456, 43678, 3319, 4652, + -5456, 2429, 4412, 4416, 60038, -5456, -5456, 320, 4691, -5456, + 2694, -5456, 4296, -5456, 4361, 1381, 4301, 88458, -5456, -5456, + 4117, -5456, -5456, 3447, -5456, -5456, 244, -5456, 4345, 4350, + -5456, 2696, -5456, -5456, -5456, -5456, 33622, 61998, -5456, -5456, + 4360, 33622, 2698, -5456, 4117, 68858, 4645, 4646, -5456, 60038, + 866, 4368, 4376, 2713, 786, 3319, 4313, 68858, 68858, -5456, + 4314, 88458, -5456, -5456, 1381, -5456, -5456, 60038, -5456, -5456, + 2559, -5456, 4374, 2714, 4376, -5456, -5456 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -5539, -5539, -5539, 3812, -558, -5539, -5539, -958, -449, 3054, - -1132, -5539, -5539, -5539, 1347, -5539, -5539, -5539, -5539, 3776, - -5539, 1733, -2853, -5539, -5539, 134, 3732, -1362, 128, 3383, - 1415, -5539, -981, -5539, -5539, -617, 3, -5539, 3737, 311, - -5539, -5539, -5539, -5539, -5539, -5539, -5539, -5539, -811, 1851, - -5539, 1937, 1216, -922, -3407, -5539, -5539, -1482, -3692, -5539, - 514, -5539, 540, -4715, -1027, -5539, -5539, -5539, 1841, -5539, - -5539, -5539, 1788, 1016, -452, -5539, -5539, -5539, -5539, -5539, - -5539, -866, -5539, -5539, -1130, 7, -640, -2891, -4223, -5539, - -5539, 364, -493, -1475, -5539, 559, -5539, -4550, -5539, -106, - -2629, -4246, -5539, -5539, -5539, -467, -1437, 1314, -5539, -730, - -1136, 1664, -2616, -983, -5539, -340, -3495, -1104, -878, -875, - -1014, -4276, -4768, -5539, -5539, -1133, -3679, -5037, -5287, -4789, - -4583, 1325, -5539, -134, 369, -5539, 8, -3607, -3670, 13, - 344, -5539, 15, 17, -5539, 362, -808, -968, -1567, -5539, - -931, -5539, -5539, -5539, -3385, -5539, -5539, -5539, 144, -5539, - -5539, -5539, -5539, 402, -5539, -5539, -5539, -5539, -5539, -5539, - -2577, 1813, 1814, -5539, -4072, -5539, -927, -5539, 567, -3412, - 1245, -5539, -5539, 1010, 3808, 387, -5539, -5539, -5539, -5539, - -5539, -5539, -1766, -5539, -5539, -5539, -5539, -112, -437, -5539, - -5539, -5539, -5539, -5539, -5539, -5539, 18, -5539, 971, 326, - -5539, -5539, -724, -5539, -5539, -5539, -5539, -5539, -5539, -1187, - -5057, -1295, -1276, -5539, -3410, -5539, -5539, -5539, -411, -5539, - -5539, -5539, -5539, -5539, -868, -5539, 1065, -4071, -5539, -5539, - 363, -5539, -5539, -5539, -5539, -5539, -986, -347, 2991, -5539, - -581, -783, -5539, -5539, -5539, -346, -5539, -5539, -5539, -5539, - -5539, -507, -1284, 4801, 4187, -1096, 5912, -833, -578, -5539, - -5539, -5539, -2654, -5539, -5539, -4144, -5539, 4792, 2532, 386, - 19, -5539, -1, 89, 3659, -5539, 933, -1151, -3063, 325, - -543, -5539, -5539, -5539, -3034, -5539, -5539, -5539, -5539, -4015, - 21, -5539, -714, -5539, -4291, -5075, -4498, -4021, -1157, -5539, - -5391, -4162, -4299, -3991, -5539, 1840, -5539, -5539, -548, -192, - 2964, -5539, -1456, 2187, -1410, -5539, -2461, 382, 1409, 2970, - -3220, -130, 2961, -2951, -5539, -717, 1001, -5539, -436, -3740, - -5539, -5539, -5539, -2674, -673, -5539, -5539, 1560, 572, -5539, - -5539, -5539, -5539, -620, 2938, -182, -5539, -5539, 4157, -5539, - -4843, -5539, 4127, -5539, -5539, -5539, -5539, 2857, 2860, -5539, - -5539, -1443, 1173, -5539, -836, -5539, -5539, 1946, 599, -5539, - -5539, -5539, -5539, 1258, -530, -5539, -5539, -5539, -5539, -5539, - -5539, -5539, -975, -1175, -5539, -5539, -4772, -5539, -5539, -5539, - -5539, -5539, 2298, -947, -742, 4024, 747, 24, -5223, -5539, - -5539, -925, -5539, 3379, -5539, -5539, -5539, -5539, -5539, 384, - 385, -5539, -5539, -5539, -5539, -3752, -5539, -5539, -4931, -5539, - -5539, 1927, -5539, -5539, 931, 6, 3087, -5539, -5539, -5539, - -11, -5539, -5539, -1013, 2274, -5539, -2360, -5539, -586, -5539, - -5539, -1881, 26, -4273, -5539, 5, -5539, -5539, -4938, -1180, - 205, -5539, -5539, -3924, 9, -5539, -5539, -5539, -5539, -4941, - -5539, 11, -5394, 742, -3272, -5539, 1, -5539, -495, -870, - -5539, -5539, -5539, -3729, 28, 36, -5539, -5539, 4, 301, - -46, -44, -12, 2, 121, 3493, -5539, -5539, -5539, -4674, - 3537, -5539, -4, -857, 4834, 4836, -5539, -881, -158, -5539, - 1512, -704, -2549, 3459, 3462, -5539, 1501, 2283, -2425, -2431, - -5539, -1012, -845, -680, -5539, -5539, -5539, -5539, -1489, -698, - -2552, -5539, 3460, -5539, -5539, -5539, -2317, -3298, -3207, 1537, - -3224, -3117, -5539, 823, 804, -951, -187, 104, -1462, -778, - 1723, -5539, -5539, 1545, -431, -5539, -5539, -429, -3221, 766, - -5539, -4466, -2774, 1548, -1110, -826, -5539, -956, -5539, -651, - 894, 3510, -813, -5539, -5539, -788, 11796, -5539, -5539, -5539, - 12693, 13876, -5539, -5539, 14176, 14911, -5539, -589, 14965, 11704, - -779, -1910, -149, 16754, -1853, 2858, 93, -5539, -2914, -2012, - -5539, -5539, -5539, -395, 908, 612, -5539, -4486, -4346, -5539, - -5539, -2098, -5539, -657, -5539, -656, -5539, -5539, -5539, -3053, - -5436, -3047, 2415, -5539, -5539, -5539, -199, -5539, 16612, -3212, - -5539, -306, -982, -1574, 2888, -3009, -1896, -5539, -5539, -5539, - -3073, -5539, -5539, -5539, -635, 1642, -5539, -5539, 1746, -5539, - -5539, -5539, -952, 1983, -759, -1165, 1647, 4028, -766, 2421, - -782, 15836, -652, 12002, -1273, -5539, 5473, -5538, 828, 6895, - 37, -108, 6649, -598, 2331, 2818, -5539, -5539, 5134, 3814, - -572, -959, -5539, -6, 13133, 10090, -3618, -5539 + -5456, -5456, -5456, 3930, -569, -1721, -5055, -1119, 6184, -5456, + -5456, -950, -685, 3165, -1745, -5456, -5456, -5456, 1376, -5456, + -5456, -5456, -5456, 3892, -5456, -2899, -5456, -5456, 177, 3850, + -1366, 131, 3470, 1475, -5456, -993, -5456, -5456, -630, 1, + -5456, 3857, 505, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + -5456, -855, 1930, -5456, 2023, 1273, -3211, -5456, -5456, -1505, + -3726, -5456, 540, -5456, 568, -4805, -1052, -5456, -5456, -5456, + 1918, -5456, -5456, -5456, 1869, 1068, -463, -5456, -5456, -5456, + -5456, -5456, -5456, -889, -5456, -5456, -1160, 8, -649, -2933, + -4300, -5456, -5456, 392, -502, -1480, -5456, 590, -5456, 592, + -5456, -4846, -5456, -98, -2660, -2472, -5456, -5456, -5456, -472, + -1451, 1375, -5456, -738, -1133, 1745, -2344, -1007, -5456, -350, + -3557, -1131, -900, -898, -1041, -4338, -4860, -5456, -5456, -1161, + -3768, -5142, -5385, -4874, -5084, 1382, -5456, -131, 396, -5456, + 9, -3645, -3728, 10, 371, -5456, 11, 13, -5456, 388, + -832, -963, -1579, -5456, -823, -5456, -5456, -5456, -3432, -5456, + -5456, -5456, 167, -5456, -5456, -5456, -5456, 432, -5456, -5456, + -5456, -5456, -5456, -5456, -3110, 1892, 1893, -5456, -4329, -5456, + -927, -5456, 595, -3474, 1305, -5456, -5456, 1064, 3915, 412, + -5456, -5456, -5456, -5456, -5456, -5456, -1783, -5456, -5456, -5456, + -5456, -108, -449, -5456, -5456, -5456, -5456, -5456, -5456, -5456, + 14, -5456, 1029, 354, -5456, -5456, -741, -5456, -5456, -5456, + -5456, -5456, -5456, -1208, -5155, -1311, -1292, -5456, -3475, -5456, + -5456, -5456, -423, -5456, -5456, -5456, -5456, -5456, -699, -5456, + 1127, -4141, -5456, -5456, 397, -5456, -5456, -5456, -5456, -5456, + -1014, -359, 3089, -5456, -599, -807, -5456, -5456, -5456, -358, + -5456, -5456, -5456, -5456, -5456, -505, -1239, 4915, 4292, -1100, + 9317, -830, -564, -5456, -5456, -5456, -2756, -5456, -5456, -4253, + -5456, 4906, 2546, 1477, 17, -5456, -2, 82, 3728, -5456, + 995, -1153, -3091, 357, -560, -5456, -5456, -5456, 355, -5456, + -1951, -5456, -5456, -5456, -5456, -4089, 18, -5456, -4365, -5181, + -4600, -4104, -1171, -5456, -4378, -5113, -4058, -5456, 1925, -5456, + -5456, -562, -184, 3063, -5456, -1465, 2263, -1421, -5456, -2478, + 425, 1474, 3077, -3276, -93, 3067, -2988, -5456, -732, 1069, + -5456, -443, -3758, -5456, -5456, -5456, -2754, -683, -5456, -5456, + 1624, 766, -5456, -5456, -5456, -5456, -635, 3040, -191, -5456, + -5456, 4270, -5456, -4951, -5456, 4243, -5456, -5456, -5456, -5456, + -5456, -5456, -5456, -5456, -5456, -1473, 1237, -5456, -828, -5456, + -5456, 2030, 634, -5456, -5456, -5456, -5456, 1322, -509, -5456, + -5456, -5456, -5456, -5456, -5456, -5456, -992, -1185, -5456, -5456, + -4492, -5456, -5456, -5456, -5456, -5456, 2317, -945, -737, 4153, + -230, 19, -5314, -5456, -5456, -1178, -5456, 3488, -5456, -5456, + -5456, -5456, -5456, 415, 418, -5456, -5456, -5456, -5456, -3906, + -5456, -5456, -5027, -5456, -5456, 2009, -5456, -5456, 966, 6, + 3186, -5456, -5456, -5456, -26, -5456, -5456, -1008, 2359, -5456, + -2387, -5456, -591, -5456, -5456, -1905, 21, -4347, -5456, 12, + -5456, -5456, -5044, -1190, 226, -5456, -5456, -3976, 15, -5456, + -5456, -5456, -5456, -5053, -5456, 16, -4744, 776, -3322, -5456, + 2, -5456, -500, -884, -5456, -5456, -5456, -3866, 23, 33, + -5456, -5456, 4, 334, -49, -46, -23, 5, 139, 3597, + -5456, -5456, -5456, -4325, 3641, -5456, -9, -857, 4959, 4961, + -5456, -886, -146, 377, 1579, -707, -2586, 3548, 3565, -5456, + 1565, 2378, -2457, -2453, -5456, -1251, -859, -690, -5456, -5456, + -5456, -5456, -1813, -691, -2594, -5456, 3567, -5456, -5456, -5456, + -2358, -3360, -3262, 1610, -3274, -3197, -5456, 860, 847, -1215, + -182, 49, -1482, -781, 1529, -5456, -5456, 1616, -434, -5456, + -5456, -430, -3281, 808, -5456, -4576, -2798, 1625, -1113, -835, + -5456, -967, -5456, -657, 3667, 3623, -816, -5456, -5456, -789, + 12773, -5456, -5456, -5456, 12919, 13933, -5456, -5456, 14697, 14950, + -5456, -579, 15425, 12713, -787, -1925, 614, 17470, -1748, 2328, + 94, -5456, -2966, -2295, -5456, -5456, -5456, -393, 963, 699, + -5456, -5456, -4587, -4424, -5456, 2509, -2335, -5456, -661, 1698, + -660, -5456, -5456, -5456, -2702, -5455, -2846, 2515, -5456, -5456, + -5456, -176, -5456, 17280, -3242, -5456, -826, -1013, -1596, 3000, + -3089, -1911, -5456, -5456, -5456, -3094, -5456, -5456, -5456, -2791, + 1723, -5456, -5456, 1845, -5456, -5456, -5456, -953, 2083, -758, + -1172, 1729, -1906, -3031, -5456, -1926, 1740, -2182, -5456, -1914, + 1816, 1045, -5456, -1615, -5456, 4174, -788, 2528, -783, 16521, + -689, 10673, -1276, -5456, 261, -5001, 1665, 7219, 24, -128, + 680, -276, 2443, 3011, -5456, -5456, 5100, 6943, -578, -969, + -5456, -6, 13850, 11185, -3663, -5456 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -2829 +#define YYTABLE_NINF -2896 static const yytype_int16 yytable[] = { - 622, 184, 191, 71, 186, 180, 175, 80, 83, 181, - 900, 183, 970, 84, 934, 85, 1613, 86, 106, 124, - 1559, 129, 975, 191, 159, 980, 178, 736, 185, 969, - 1686, 911, 1445, 1075, 1343, 805, 1200, 1201, 1202, 1782, - 1898, 840, 1206, 1666, 627, 888, 2856, 1331, 2647, 2683, - 1431, 678, 1433, 3452, 1416, 1771, 1396, 2749, 1618, 763, - 1021, 1952, 1372, 1678, 1776, 763, 2778, 922, 1112, 2741, - 1387, 1388, 3392, 1842, 1166, 1999, 3393, 1992, 1220, 1395, - 1371, 1359, 4047, 3755, 4049, 3915, 3012, 3786, 3838, 1784, - 1173, 3896, 1464, 1402, 2761, 2750, 4111, 4411, 4462, 618, - 4263, 3140, 1815, 4170, 3165, 4191, 1820, 2924, 978, 4650, - 1147, 1824, 770, 1114, 1555, 2647, 2817, 2817, 4724, 3670, - 2817, 1834, 1000, 4360, 1160, 806, 4689, 1042, 4684, 4215, - 4087, 4217, 4125, 3777, 1854, 4424, 3234, 4437, 3236, 1577, - 5064, 4070, 2579, 1157, 1594, 1174, 232, 913, 836, 4947, - 4926, 5357, 4936, 2732, 4749, 5261, 4100, 3079, 1145, 5453, - 1021, 1149, 4887, 799, 905, 1887, 2886, 2887, 5254, 3202, - 833, 851, 5222, 1612, 5133, 825, 5076, 1527, 5078, 914, - 3387, 3315, 1644, 3303, 3384, 3418, 3420, 4020, 3305, 5505, - 5384, 622, 1671, 5112, 4131, 4124, 4421, 3638, 4665, 2882, - 622, 945, 1351, 1890, 4935, 5673, 1438, 1827, 622, 1894, - 945, 622, 1441, 2732, 2712, 5492, 684, 1522, 1021, 1905, - 5253, 5023, 1851, 1908, 945, 3960, 2913, 1911, 3363, 1913, - 2732, -2433, 5406, 745, 684, 1921, 4085, -2471, 4090, -2496, - 637, 1927, -2325, -2534, 1930, 5109, 2538, 1114, -2325, 5416, - 5417, -2325, -2325, 5661, 3960, -2285, 2893, 1880, 1522, 1850, - -2326, -2285, 6043, 1522, -2178, 1371, -2326, 1384, 1385, -2326, - -2326, -2178, 1021, 2584, -1931, -1898, -1911, 1394, 745, 1880, - -1931, -1898, -1911, -1936, -2357, 3714, 3009, 3717, 3718, -1936, - 4447, 1229, 3722, 3723, 3724, 745, 3726, 3727, 3728, 920, - 3913, 187, 843, 1101, -1926, -2436, 684, 915, 3774, 5444, - -1926, 3149, 2046, 3149, 1181, 1880, 745, 1880, 3695, 5598, - 1494, -2704, 187, 3244, 1807, 1880, 2051, -2704, 684, 993, - -2704, -2704, 1021, 2582, 2501, 1185, 684, 3244, -1939, 1880, - -1939, 3464, 2501, 5863, -1939, 4918, -1939, 684, 1347, 2677, - 1880, 3108, 5119, 4166, 5092, 2691, 3900, 899, -141, 2544, - 1556, 2955, 5442, 5641, -141, 5276, 745, 3284, 2678, 2817, - 4948, 4994, 4995, 4996, 3285, 4998, 4999, 5000, 5001, 5002, - 5176, 5250, 3021, 1880, 4923, 1864, 684, 1453, 5815, 3021, - 1196, 3745, 2546, 1976, 916, 3042, 2685, 5823, 5932, 5572, - 2027, 5968, -2494, 5633, 5177, 751, 3291, 5383, 3022, 2051, - 4924, 751, 1678, 751, 2590, 3022, 2802, 751, 3043, 1776, - 5908, 5909, 635, 5561, 2686, 2978, 2520, 2679, 5405, 752, - 3389, 2533, 2533, 917, 1495, 752, 1829, 752, 1494, 3366, - 5215, 752, 2544, 5803, 6044, 1812, 679, 2680, 1114, 1507, - 5595, 1204, 1362, 2597, 970, -2197, 1771, 5675, 751, 3584, - 2727, 2898, -2197, 4651, 2752, 6037, 4348, 2586, 4287, 3010, - 1387, 1388, 5223, 1397, 1005, 2546, 1596, 4115, 634, 751, - 5135, 2515, 752, 1556, 684, 5493, 5412, 5140, 4408, 745, - 2516, 1395, 912, 4897, 1398, 2689, 5642, 2051, 5481, 2539, - 5829, 3746, 1984, 752, 970, 2752, 2677, 2752, 2692, 5413, - 1402, 3960, 1399, 4116, 2779, 1597, 2880, 4288, 4283, 3130, - 5224, 4457, 194, 3668, 2752, 4652, 1363, 5910, 6080, 3367, - 2544, 1929, 5830, 2752, 3585, 2752, 1896, 3390, 1225, 1205, - 1377, 2752, 1881, 1069, 2979, 1906, 2752, 2013, 3292, 1079, - 2043, 2598, 1495, 2667, 2803, 2728, 5634, 1896, 5216, 5969, - 6031, 1092, 3451, 2546, 1881, 5573, 195, 685, 5093, 1197, - 3358, 5643, 2719, 915, 1006, 1776, 4376, 2687, 2504, 5824, - 3044, 5954, 2726, 3901, 2679, 6020, 1239, 1454, 4898, 3960, - 6045, 1936, 5955, -2829, -2829, -2829, 5632, 2681, 2517, 2693, - 1881, 3023, 1881, 4925, 2680, 2956, 1973, 4360, 5234, 5277, - 1881, 5338, 3109, 4167, 6041, 5973, 1996, 1983, 3933, -437, - 5445, -2178, 918, 1205, 1881, 1007, 945, 5786, 2581, 844, - 5450, 1993, 1205, 4784, 1106, 1881, 1896, 5814, 4499, 1052, - 191, 3011, 1053, 1049, 6046, 945, -2494, 1050, 3131, 1051, - 2851, 945, 1566, 2854, 3465, 2894, 2762, 1977, 1384, 1385, - 916, 1114, 4448, 945, 3696, 4127, 1013, 5178, 1881, 2841, - 1014, 1496, 2844, 2845, 5120, 4899, 2779, 5972, 5304, 945, - 5769, 1231, 3245, 1008, 622, 1394, 900, 638, 6019, 888, - 2717, 3747, 2861, 622, 945, 864, 4025, 2922, 2923, 1882, - 622, 1977, 945, 622, 4896, 3970, 3971, 3972, 3973, 3974, - 3975, 2682, 3308, 3161, 2823, 888, 945, 2518, 5668, 1382, - -2494, 1889, 1813, 3332, 3286, 1177, 945, 2796, 2557, 680, - 2921, 6049, -2494, 191, 1497, 2780, -2433, 2513, -2325, 3975, - 4694, 2624, -2471, 5912, -2496, 4944, 5098, 2625, -2534, 1013, - 2585, -2285, 2795, 1014, 2681, 1446, -2326, 1893, 1013, 1904, - 757, 758, 1014, 4791, 2874, 2875, 4943, 1926, 5902, 4795, - -1931, 1386, 1390, 1813, 4340, 4341, 5931, 757, 758, -1936, - 3748, 1929, 1114, 1178, 945, 1183, 2840, 1187, 681, -2357, - 1114, 1114, 1896, 1191, 1813, 1397, 1194, 1397, 757, 758, - -1926, 2912, 2047, 2562, 2563, 2929, 2736, 622, 622, 5875, - -2436, 2488, -2197, 945, 1586, 3097, 1398, -2704, 1398, 4458, - 4409, 2690, 5879, 4360, 2502, 4499, 682, 1486, 683, 3081, - 4409, 2899, 6065, 4900, 1399, 970, 1401, 1587, 945, 1794, - 622, 4087, 2881, 1799, 4284, 1800, -141, -141, 1557, 1558, - 762, 1361, 1798, 5292, 2965, 3132, 762, 913, 1677, 2736, - 2900, 3493, 3107, 888, 2943, 1933, 3966, 5975, 2682, 4630, - 3569, 5580, 4321, 4634, 3122, 3133, 2736, 4532, 4711, 4377, - 4421, 4512, 1208, 4754, 5813, 622, 1468, 932, 918, 914, - 2966, 2485, 2486, 2487, 2488, 1789, 5956, 2780, 945, 2781, - 785, 2779, 5807, 4901, 184, 191, 71, 186, 180, 175, - 80, 83, 181, 4171, 183, 4674, 84, -1751, 85, 5850, - 86, 106, 124, 4402, 129, 684, 1065, 159, 2782, 178, - 1479, 185, 5997, 3167, 4855, 5963, 4859, 6018, 5795, 187, - 5671, 1487, 5787, 4105, 1208, 874, 1831, 4621, 3384, 4623, - 2804, 1346, 1128, 2783, 5806, 1356, 4133, 4054, 4134, 2498, - 4858, 4278, 4279, 1880, 2983, 1675, 4280, 3842, 1378, 2763, - 2973, 1557, 1558, -1898, 1469, 906, 3063, 2483, 2484, 2485, - 2486, 2487, 2488, 2764, 3070, 2765, 3561, 3902, 786, 3358, - 4816, 2711, 2777, 3972, 3973, 3974, 3975, 4463, 6074, 5743, - 777, 684, 2042, 4877, 5748, 5749, 622, 622, 1772, 1655, - 5889, 684, 5998, 5528, 945, 1656, 2853, 1650, 3484, 622, - 5486, 5538, 1450, 5542, 888, 622, 5911, 1470, 2779, 622, - 1873, 622, 187, 899, 5499, 888, 5851, 1501, 5903, 4782, - 751, 907, 5500, 3484, 1874, 4762, 2766, 2586, 1005, 2820, - 953, 888, 2824, 5920, 3843, -1898, 3551, 954, 955, 956, - 1651, 2781, 773, 3733, 752, 4335, -2829, -2829, -2829, 3970, - 3971, 3972, 3973, 3974, 3975, 3335, 5389, 4923, 5585, 3396, - 2560, 3422, 5717, 2779, 4464, 2779, 4689, 4967, 4128, -1751, - 2782, 1776, 6009, 5543, 622, 1362, 622, 622, 5999, 4400, - 1875, 3485, 684, 4924, 2779, 1488, 6069, 4506, 4267, 908, - 4912, 3552, 3242, 2901, 1846, 2783, 908, 799, 1636, 908, - 4885, 5981, 2780, 1657, -689, 1471, 3485, 3529, 1406, 1777, - 3956, 3025, 1778, 1468, 1182, 1184, 1186, 945, 3336, 1188, - 1189, 1190, 1676, 6093, 1489, 5920, 2633, 684, 1006, 1195, - 787, 5925, 4878, 1239, 2777, 6101, 3960, 1847, 1915, 4763, - 3961, 3962, 3963, 2974, 5480, 622, 4817, 1239, 6010, 1363, - 3960, 2873, -2281, 4171, 3961, 3962, 3963, 1578, 1490, 191, - 933, 1225, 5654, 2779, 6017, 3119, 3120, 2666, 3530, 5852, - 5529, 788, 789, 4584, 5853, 3562, 6024, 2859, 945, 1007, - 1876, 1916, 912, 1407, 187, 4193, 1021, 888, 5501, 945, - 3553, 5667, 5670, 5682, 3903, 5890, 1938, 5271, 1940, 1066, - 1942, 1469, 1944, 945, 1946, 1947, 1948, 945, 5240, -1898, - 6050, 1950, 5539, 4690, 5653, 1652, 3417, 5594, 1832, 622, - 2695, 2883, 4465, 5925, 6000, 1129, 1491, 2499, 1881, 2780, - 2696, 2902, 1872, 1410, 5252, 5920, 5246, 1008, 1877, 909, - 6072, 3397, 900, 4507, 5669, 4764, 1408, 3734, 3844, 1409, - 622, 3512, 3494, 3710, 1470, 5104, 3083, 2779, 3488, 2779, - 4357, 2043, 3845, 4991, 6084, 5745, 2781, 1658, 790, 6045, - 3423, 1579, 1476, 3424, 1477, 5891, 5801, 3060, 622, 622, - 622, 2982, 622, 3488, 2780, 3106, 2780, 3344, 5710, 3111, - 3056, 3072, 4466, 4886, 3118, 2782, 5495, 3121, 3219, 4194, - 3601, 2928, 622, 5892, 3078, 2780, 1659, 2779, 3698, 40, - 4098, 5496, 1848, 3358, 5845, 1100, 3358, 4872, 5934, 1653, - 2783, 3964, 3077, 3269, 3058, 1813, 3957, 3958, 945, 3090, - 3570, 3977, 5578, 5925, 3705, 1878, 945, 945, 6001, 3071, - 1660, 5945, 3073, 3965, 2542, 44, 1896, 6002, 2914, 5694, - 4454, 970, 1471, 2732, 4268, 2846, 1917, 3965, 3554, 2777, - 622, 1410, 3358, 1047, 1013, 2984, 2591, 2592, 1014, 2596, - 3358, 3141, 4008, 4009, -1752, 783, 5097, 4767, 1101, 4052, - 3193, 5657, 784, 5065, 2780, 3014, 1406, 48, 3602, 1772, - 5665, 2697, 3110, 2781, 2600, 5695, 3116, 3117, 914, 914, - 49, 914, 2987, 3495, 5068, 3571, 622, -1898, 3126, 5072, - 622, 622, 5074, 3966, 1472, -1898, 1849, 1386, -1898, 1415, - 4390, -1898, 2782, 50, 4276, 3175, 622, 3966, 684, 811, - 2698, 2856, 888, 5711, 3176, 1580, 3220, 4106, 807, 2601, - 5703, 3398, 3603, 3099, 5415, 1583, 4984, 2783, 2781, 1473, - 2781, 1544, 5219, 1474, 4653, 1170, 4988, 35, 187, 1896, - 1918, 1407, 1102, 3270, 5712, 730, 5935, 3099, 3271, 2781, - 3160, 4241, 1411, 4873, 1581, 3786, 3099, 2782, 2780, 2782, - 2780, 3338, 4957, 2988, 2600, 15, 2777, 1475, 3101, 5497, - 3654, 4768, 785, 2847, 3127, 1412, 3655, 2848, 2782, 888, - 3304, 3604, 2783, 4286, 2783, 3272, 4195, 4196, 1582, 4360, - 959, 960, 961, 962, 963, 964, 965, 966, 967, 1476, - 20, 1477, 2001, 2783, 1408, 5020, 810, 1409, 2780, 2601, - 5736, 1450, 1776, 1450, 812, 1232, 4197, 3177, 194, 3124, - 888, 2777, 2010, 2777, 1937, 834, -1752, 1939, 2781, 1941, - 2603, 1943, 5485, 1945, 762, 5494, 762, 1949, 762, 3439, - 5412, 3827, 2777, 5797, 762, 1192, 1193, 1479, 4543, 1126, - 4544, 1478, 1479, 888, 5746, 4183, 3484, 2782, 1599, 3804, - 786, 846, 195, 5413, 1896, 4242, 2686, 3904, 5241, 2040, - -2309, 2602, 4391, 1568, -166, 1126, 1410, 4323, 3314, 4713, - 1600, 1771, 2783, 2647, 3656, 1929, 1434, 2647, 3605, 4107, - 2604, 1103, 3178, 3967, 3968, 3969, 3970, 3971, 3972, 3973, - 3974, 3975, 4917, 4727, -166, 1005, 4654, 3967, 3968, 3969, - 3970, 3971, 3972, 3973, 3974, 3975, 5021, 3102, 945, 1410, - 2603, 2777, 2781, 1176, 2781, 3440, 1479, 4756, 1104, 4184, - 1479, 1601, 3273, 622, 622, 622, 5623, 4728, 5625, 3485, - 4849, 3497, 5629, 5630, 1544, 4853, 1569, 3905, 1428, 3437, - 3103, 2782, 3162, 2782, 3164, 3179, 1615, 3609, 3180, 1436, - 3171, 3059, 4697, 3104, 970, 970, 3186, 3187, 3188, 1434, - 5062, 5460, 2781, 4867, 3486, 1435, 2783, 3207, 2783, 2051, - 2604, 1217, 3069, 3222, 3660, 32, 4545, 1105, 1586, 1106, - 5901, 912, 912, 1107, 912, 1616, 4914, 5388, 3105, 3438, - 4868, 2782, 2877, 4876, 4077, 1006, 5979, 5980, 1437, 5821, - 3606, 1587, 3052, 3487, 5871, 2777, 40, 2777, 3607, 4729, - 1602, 3608, 787, 3661, 4357, 5461, 2783, 3683, 5462, 4243, - 1411, 1832, 945, 1656, 5463, 1373, 3498, 3609, 1218, 762, - 3531, 5420, 1436, 5660, 888, 2546, 4698, 40, 3657, 631, - 4780, 1239, 44, 1429, 3960, 888, 1007, 3662, 3961, 3962, - 3963, 4697, 5464, 788, 789, 2777, 4281, 1772, 4244, 1603, - 3181, 888, 1832, 1604, 5674, 40, 3593, 4585, 3558, 4078, - 4752, 970, 4361, 44, 40, 631, 5971, 3658, 2855, 1396, - 945, 1437, 5681, 1935, 48, 1423, 1778, 2506, 945, 632, - 3388, 3532, 4245, 3360, 3582, 1617, 945, 49, 762, 4699, - 3320, 44, 4079, 4700, 1008, 4290, 3488, 1929, 6051, 5465, - 44, 3659, 1606, 902, 888, 48, 5334, 4080, 4870, 4364, - 50, 3620, 5466, 622, 3321, 904, 622, 4081, 5116, 888, - 4282, 1657, 888, 888, 5467, 4698, 622, 622, 56, 945, - 945, 4127, 5983, 48, 4753, 2827, 5527, 3447, 6016, 2671, - 2830, 622, 48, 945, 622, 4082, 49, 1608, 2507, 1358, - 2672, 3451, 3621, 888, 888, 49, 945, 945, 903, 56, - 3624, 3182, 1813, 3627, 1793, 989, 5291, 4366, 2673, 50, - 1609, 4498, 4666, 1239, 3510, 1802, 3960, 191, 50, 4871, - 3961, 3962, 3963, 3582, 5828, 650, 5822, 56, 4699, 5117, - 1611, 1810, 4700, 4225, 622, 990, 56, -1075, 622, 622, - 1434, 1239, 5552, 5755, 3960, 4226, 3860, 2524, 3961, 3962, - 3963, 4149, 919, 3091, 2904, 3092, 4499, 3093, 2910, 3094, - 4357, 3095, -1722, 1052, 191, 3096, 1053, 1049, -1722, 5805, - 3146, 1050, 622, 1051, 622, 5221, 3786, 5804, 4083, 622, - 622, 3965, 6053, 951, 2647, 652, 622, 622, 622, 3743, - 2525, 622, 1455, 622, 2647, 622, 622, 622, 622, 622, - 622, 3663, 5207, 622, 4078, 622, 622, 4369, 3619, 622, - 1646, 194, 5626, 1436, 5245, 4524, 5756, 5627, 5366, 1465, - 5368, 3699, 3700, 3701, 5652, 888, 622, 622, 622, 4182, - 920, 1456, 5232, 2856, 5516, -1722, 3669, 4079, 930, 2051, - 3596, 1586, 5886, 622, 3358, 1772, 3644, 4004, 3358, 1647, - 4370, 3966, 4636, 1648, 5468, 195, 2865, 5469, 1466, 3145, - 5203, 3135, 4081, 2674, 1587, 1457, 4371, 3594, 5628, 3595, - 1392, 1393, 2544, 1621, 2915, 2647, 3854, 5685, 1114, 928, - 3689, -462, -141, 1649, -1722, 2866, 4485, 1980, 4539, 4540, - 4541, 4542, 1467, 5204, 4546, 4547, 4548, 4549, 4550, 4551, - 4552, 4553, 4554, 4555, 3705, 2546, 2769, 35, 5904, 3852, - 4330, 2817, 1622, 2916, 3858, 3358, 3859, 3790, 3791, 3792, - 3793, 4196, 3795, 3965, 5702, 3507, 3865, 2846, 2810, 3866, - 4238, 3867, 3868, 2926, 2927, 3870, 684, 2826, 1599, 3873, - 2770, 3874, 1352, 4361, 3876, 2834, 1623, 3823, 5520, 4362, - 4740, 3965, 4594, 4595, -1102, 4619, 663, 3601, 664, 4690, - 1600, 3887, 4363, 5664, 4372, 762, 2757, 1624, 2758, 4239, - 762, 762, 5521, 4690, 5194, 2917, 5195, 5196, 5197, 4285, - 5211, 3761, 5213, 4083, 1828, 2769, 622, 1013, 2918, 5574, - 4364, 1014, 4365, 3966, 40, 3635, 5631, 3636, 2561, 1586, - -462, 3640, 5985, 4240, 5974, 3664, 952, 2568, 3917, 2569, - 650, 1601, 4077, 2572, 5575, 3666, 187, 2919, 6003, 2770, - 2578, 3966, 1587, 4130, 4322, 1093, 622, -1675, 5869, 2759, - 44, 1093, 1625, 3323, 995, 1985, 2752, 5533, 1778, 3665, - -1675, 650, 6004, 1852, 3994, 3602, -1675, 2753, 4366, 3667, - 4001, 3967, 3968, 3969, 3970, 3971, 3972, 3973, 3974, 3975, - 1067, 1094, 1068, 187, -1069, 2847, 1853, 1094, 1460, 2848, - 652, 5089, 48, 1397, 1626, 1923, 4367, 4733, 3816, 622, - -604, 1627, 1354, 233, 1628, 49, -1902, 4078, 1071, 636, - 1072, 4818, -1902, -1675, 1398, 1397, 1095, 728, 1924, 3603, - 1602, 652, 4403, 1461, 1004, 2510, 1589, 1462, 50, 3221, - 4433, 762, 1401, -1675, 4819, 808, 1398, 3929, 5873, 5874, - 4079, 762, 2555, 4835, 5412, 1663, 56, 3778, 1667, 5735, - 4690, 2752, 6091, 4470, 6094, 4080, -1127, -1127, 4471, 40, - 6073, 1463, 2760, 4368, 1096, 4081, 4836, 5413, 4369, 1603, - 1096, -1909, 3762, 1604, 6105, 654, 4137, -1909, 3604, 2533, - 1012, 1386, -1675, 2580, 5597, 1192, 1193, 4673, 2855, 5601, - 5602, -1675, 1386, 4082, 2580, 44, 3358, 3358, 1055, -1899, - -1900, -1903, 1057, 3, 4, -1899, -1900, -1903, 5062, 2541, - 1062, 4370, 1778, 3967, 3968, 3969, 3970, 3971, 3972, 3973, - 3974, 3975, 1606, 4048, 3337, 3339, 3340, 4371, 762, 3911, - 3912, 762, 762, -1901, 4077, 3930, 1076, 48, 4676, -1901, - 3931, 3967, 3968, 3969, 3970, 3971, 3972, 3973, 3974, 3975, - 49, 5916, 29, 2000, 1089, 56, 684, 3886, 2788, 5961, - 2800, 663, 2044, 664, 745, 1629, 2789, 1608, 730, 1386, - 1098, 1415, 745, 50, 622, 622, 622, 622, 622, 622, - 622, 622, 622, -603, 622, 3605, 4083, 1097, 15, 668, - 1609, 56, 663, 622, 664, 4103, 622, 684, 5379, 5380, - 1630, 745, 684, 4581, 1631, -1102, 684, 970, 4797, 4078, - 1611, 4866, 5055, 3474, 4951, 3478, 3479, 667, 3250, 4471, - 1828, -2277, 1099, 20, 3477, 4372, 1013, -2278, 1199, 3763, - 1014, -1675, 1013, 4155, 1199, 1576, 1014, 622, 1632, 5422, - 1593, 622, 4079, 1116, 622, 1633, 622, 40, 3316, 622, - 4059, 4060, 6012, 622, 760, 3, 4, 4080, 5686, 1013, - 760, -2285, 1120, 1014, 4172, 4050, 1127, 4081, 3255, 3256, - 3257, 3258, 3471, 1386, 1772, 2580, 622, 3986, 3764, 3988, - 3989, 2554, 4132, 44, 2555, 3047, 2588, 3048, 3087, 1778, - 4201, 2555, 4039, 622, 4040, 4082, 3098, -1675, 3100, 3099, - 4093, 3099, 622, 622, 4205, 3138, 4207, 3606, 3139, 1137, - -1675, 3319, 3358, 1136, 1929, 3607, -1675, 1143, 3608, 3358, - 4677, 1154, 5069, 762, 3358, 48, 4678, 3358, 631, 945, - 4739, 3400, 3324, 4679, 3506, 2555, 888, 2581, 49, 1161, - 888, 888, 5953, -1674, 1776, 3228, 4023, 945, 3231, 745, - 3409, 945, 4919, 2555, 1171, 945, -1674, 4690, 5840, 5841, - 29, 50, -1674, -1675, 945, 4419, 3504, 3576, 4680, 3505, - 3577, 3441, 1199, 3444, 3739, 3356, 1203, 3740, 5867, 5917, - 1198, 4175, 945, -1675, 2938, 622, 4357, 1210, 4083, 3878, - 4681, 3928, 3099, 1207, 2555, 2949, 622, 5582, 888, 622, - 3937, 622, 622, 2555, 888, 5587, 5588, 3944, 32, -1674, - 2555, 2967, 4721, 4730, 3945, 4737, 945, 2555, 3946, 3979, - 3600, 2555, 2555, 3993, 3998, 2647, 2555, 3999, 4057, -1674, - 4712, 2555, -1675, 4430, 1213, 4431, 945, 945, 1114, 40, - 4218, -1675, 1215, 4219, 4223, 888, 4249, 4224, 4309, 4250, - 4319, 3385, 3386, 4250, 4316, 40, 1216, 4233, 5811, 4442, - -1746, -1746, 4443, 4511, 3041, -1750, -1750, 1772, 945, 4406, - 4445, 1772, 1218, 4446, 4476, 44, 5070, 4477, -1674, 3053, - 1222, 2965, 1126, 3057, 1502, 1223, 4378, -1674, 4755, 4564, - 4141, 44, 4565, 5940, 5941, 945, 2050, 1772, 1224, 2051, - 3686, 945, 1226, 6054, 4575, 5567, 5508, 4576, 4587, 4661, - 1227, 2555, 4662, 3076, 1126, 945, 1225, 48, 3492, 1503, - 4667, 731, 945, 4668, 4672, 945, 4920, 3424, 1228, 3099, - 49, 945, 2544, 48, 1233, 4985, 3173, 3174, 1977, -2829, - 1357, 4138, 4139, 3189, 3190, 5008, 49, 5048, 2555, 3250, - 2555, 945, 4159, 50, 1360, 5100, 5106, 945, 3424, 5107, - 4860, 4258, 4861, 6095, 945, 2546, 4264, -1749, -1749, 50, - 4349, 732, 897, 898, 4013, 3235, 4014, 1235, 945, 5113, - 1504, -1675, 3099, 3349, 1364, 1365, 5114, 56, -1414, 3099, - -1414, 945, 4041, 1366, 4042, 3959, 1772, 1114, 3358, 5011, - 4015, 5012, 945, 3634, 4690, 5115, 5247, 3987, 3099, 5248, - 5245, 3252, 906, 3253, 1370, 5284, 1505, 3591, 4477, 1374, - 622, 622, 622, 1379, 1380, -1723, 622, -1674, 187, 5301, - 1386, -1723, 5302, 4291, 4010, 1382, 5303, 3254, 4478, 2555, - 4480, 5321, 4482, 4011, 5322, 3237, 5331, 1013, 4937, 1929, - 1420, 1014, 1506, 622, 888, 4663, 5317, 5337, 5339, 5318, - 4416, 4416, 1772, 3921, 1389, 3923, 3924, 5455, 5475, 5509, - 5456, 3099, 5510, 5550, 5556, 1390, 5551, 1929, 907, -2829, - 5559, 1403, 5570, 4416, -2829, 5571, 4038, 4254, 4930, 5616, - 3827, 4518, 5617, 5811, 1508, 622, 1432, 5656, -1723, 4690, - 2509, 6026, 1420, 6027, 3255, 3256, 3257, 3258, 1420, 4271, - -1663, 4016, 4692, 4693, 1405, 5733, 4696, 4017, 1421, 1447, - 5683, -2829, 3918, 5571, 3805, 1239, 1510, 888, 3960, 1448, - 1449, 888, 3961, 3962, 3963, 4615, 2647, 4617, 4570, 1452, - 4396, 3255, 3256, 3257, 3258, 1458, 1415, -1723, 3259, 3260, - 5706, 5038, 2586, 3999, 3261, 5707, 908, 5721, 2555, 5725, - 5722, 3358, 1929, 5726, 1499, 1528, 2555, 970, 35, 5754, - 2734, 5760, 3139, 1512, 3139, 5761, 2551, 5764, 3139, 1525, - 2555, 3358, 1513, 5765, 5766, 5793, 2555, 5767, 5794, 5846, - 1514, 1530, 4416, 5860, 3356, 3358, 2555, 5862, 2735, 5868, - 2555, 5883, 3099, 1678, 5884, 5906, -2327, 1531, 5907, 4690, - 1516, 5952, 5982, 6022, 5564, 5571, 6023, 945, 6048, 1517, - 4502, 2555, 6067, 1518, 6077, 5722, 5054, 6078, 5057, 4379, - 4635, 4381, 4638, 888, 6083, 945, 4410, 4662, 1599, 1570, - 6092, 1776, 945, 2555, 1566, 1571, 622, 2050, 888, 622, - 2051, 622, 622, 888, 1572, 900, 6104, 5295, 1583, 6078, - 1600, 622, 1585, 4389, 4018, 4392, 622, 1595, -2829, 4099, - 2626, 1598, 2629, 4739, 1114, 4019, 1114, 1519, 2586, 1620, - 1637, 1638, 1654, 2544, 1665, 1668, 1664, 1673, 1674, 1786, - -2829, 5914, 1788, 622, 622, 622, 909, 1790, 622, 1795, - 1801, 3262, 1806, 900, 1809, 1811, 622, 622, 622, 622, - 1816, 1601, 3263, 4451, 1819, 1821, 2546, 1772, 1813, 1830, - 1835, 1836, 622, 1772, 1838, 622, -186, 622, 1839, 1841, - 5426, 1843, 1844, 4493, 1855, 3965, 1862, 1866, 4731, 622, - 622, 1870, 213, 622, 1879, 5132, 1884, 1885, 1886, 1888, - 1891, 1892, 3358, 1895, 1896, 1903, 1907, 1909, 1114, 1910, - 1912, 1914, 622, 1920, 622, 3558, 622, 4750, -2829, 1922, - 1925, 1928, 1919, 1931, 1932, 1934, 5427, 1951, 1982, 2483, - 2484, 2485, 2486, 2487, 2488, 4022, 622, 1988, 1990, 1991, - 1997, 3582, 1998, 4044, 4045, 4046, 2005, 2006, 2007, 2008, - 1602, 5428, 900, 2009, 945, 3966, 56, 2011, 2012, 1599, - 3358, 2013, 2014, 2027, 2494, 4510, 2514, 2015, 2016, 5429, - 4779, 187, 2017, 5430, 2019, 2020, 2021, 2022, 2023, 2024, - -2829, 1600, 4708, 4964, 2025, -2829, 2026, 2496, 2029, 622, - 2030, 2031, 622, 2050, 2581, 5431, 2051, 2527, 5432, 1603, - 2032, 2033, 900, 1604, 622, 2034, 2035, 4188, 2036, 622, - 2498, 2499, 2536, 5433, 2558, 2509, 2559, 2564, 2855, 2576, - 2566, 2567, -2829, 2570, 622, 2571, 2573, 2574, 2582, 2544, - 2575, 2577, 1601, 4732, 4854, 1435, -2829, 2589, 622, 2620, - 2691, 2632, 6052, 4841, 1437, 2622, 622, 2634, 3331, 3333, - 2637, 2635, 1606, 2636, 3341, 2653, 2655, 2656, 888, 2580, - 2654, 888, 2546, 888, 2657, 2658, 2659, 2660, 888, 2661, - 2662, 2663, 2669, 2688, 2694, 2700, 2714, 2551, -2607, 2718, - 2721, 2720, 2725, 945, 945, 2738, 3383, 3383, 3356, 622, - 2722, 3356, 2755, 5535, 2744, 2724, 2742, 1608, 4733, 4846, - 2743, 2756, 2767, 5434, 2776, 2785, 2771, 2774, 2775, 2787, - 945, 2790, 2791, 945, 2792, 2797, 888, 2773, 2777, 3358, - 1609, 1602, 5549, 2786, 888, 2801, 2798, 2807, 2808, 2811, - 2825, 4593, 2821, 2822, 2835, 2828, 2831, 3356, 2832, 2837, - 1611, 2838, 2842, 2849, 2850, 3356, 2852, 2857, 762, 888, - 2858, 1544, 2040, 2863, 5435, 3967, 3968, 3969, 3970, 3971, - 3972, 3973, 3974, 3975, 2867, 2864, 2869, 2871, 2895, -2829, - 1603, 2878, 2876, 2879, 1604, 2870, -2829, -2607, 2872, 2884, - 2896, -2829, 2925, 2937, 2939, 1772, 1772, 1772, 2903, 2855, - 2885, 2897, 4099, 4734, 2908, 2932, 5267, 2940, 2953, 2958, - 2040, 2959, 2954, 2960, 2941, 2942, 2946, 2947, 2948, 3358, - 945, 4973, 2950, 4981, 4975, 2951, 2952, 2961, -2829, 888, - 2968, 888, 3250, 1606, 2969, 2972, 645, 2977, -2607, 945, - 2985, 2996, 3516, 1617, 3000, 3001, 3004, 3020, 4032, 3013, - 4990, -2607, 3016, 3019, 3040, 3046, 3029, -2607, 3473, 3050, - 3062, 945, -2607, 3064, 3481, 3066, 3065, 3067, -2607, 3080, - 3123, -2607, 3112, 3148, 2051, -2607, 3136, 3167, 1608, -2829, - 3223, 3243, 3229, 2551, 3268, 3288, 3033, 3037, 3289, 3055, - 2483, 2484, 2485, 2486, 2487, 2488, 1410, 3307, 3172, 3327, - 3249, 1609, 3311, 3312, -2607, 3514, 4064, 3325, 3266, 4069, - 4536, 3233, 3313, 3310, 3329, 3326, 3330, 3328, 3342, 3334, - 3358, 1611, 3343, 4735, -2607, 888, 4736, 907, 3360, 3377, - 3378, 762, 3365, 3379, 3380, 3401, 3394, 3402, 3413, 762, - 3414, 3416, 762, 3433, 4563, 3442, 3445, 945, 3447, 3449, - 3450, 3456, 622, 3461, 762, 3349, 3466, 3467, 622, 899, - 3472, 1239, 3469, 3349, 3960, 3480, 3501, 888, 3961, 3962, - 3963, 2586, 3496, -2607, 1354, -2829, -2607, 3513, 3503, 3520, - 3533, 3538, -2607, 3559, 3565, 3539, 3566, 5039, 3572, 1358, - 3575, 4606, 3567, 3592, 1772, 888, 3614, 3583, 3593, 3672, - 945, 3590, 945, 3613, 3630, 3685, 1832, 3697, 3706, 3713, - 3719, 908, 3720, 3721, 3725, 945, 3753, 945, 3730, 5228, - 3752, 3741, 3767, 3771, 3773, 3693, 5033, 1239, 3694, 3769, - 3960, 3788, 2777, 3781, 3961, 3962, 3963, 622, 3794, -2607, - 5121, 3799, 3800, 3801, 3802, 3803, 3807, 3812, 3814, 5080, - 3810, 3815, 4892, 4893, 3818, 3819, 3824, 3839, 3840, 3841, - 5139, 3849, 3850, 888, 3851, 3853, 3358, 3855, 3869, 3871, - 3872, 4930, 3875, 3877, 3880, -2829, 3881, 3882, 1929, 4436, - 3883, 5145, 5146, 3884, 945, 888, 2483, 2484, 2485, 2486, - 2487, 2488, 3895, 1926, 777, 3885, 4976, 4977, 4978, 4979, - 4980, 3149, 3897, 3899, 3906, 3890, 3909, 888, 3914, 3916, - 3922, 3898, 3941, 3943, 3737, 4473, 3956, 2050, 1893, 3889, - 2051, 1205, -2607, 3939, 3940, 887, 945, -2170, 3992, 3995, - 4007, 3942, 4012, 4035, 4031, 4600, 3947, 3948, 3952, 4021, - 3954, 3955, 3698, 3978, 4033, 945, -2607, 4030, -2607, -2607, - 3983, 3984, 5087, 2544, 5584, 3358, 2555, 3991, 5201, 4006, - -2829, 3358, 4034, 4037, 4055, 4056, 4061, 945, 4067, 4062, - 945, 3965, 4063, 4068, 4095, 4108, 5189, 5190, 4110, 4121, - 4076, 4091, 4114, 4440, 4101, 4112, 2546, 622, -2607, 4135, - 888, -2607, -2607, -2607, 4140, 622, 4142, 622, 4143, 4129, - 762, 4151, 4147, 4154, 4156, 622, 4179, 622, 4180, 4168, - 622, 4169, 4181, 4186, 888, 622, 622, 622, 622, 4185, - 4148, 622, 622, 622, 622, 622, 622, 622, 622, 622, - 622, 4187, 4188, 4192, 622, 622, 622, -2829, 4152, 888, - 4203, 3966, 4204, 4206, 622, 900, 4212, 4214, 4222, 622, - 4213, 1772, 4228, 622, 4237, 4596, 4251, 5946, 5947, 4253, - 4255, 622, 1208, 4257, 622, 4265, 622, 4259, 4261, 4272, - 4266, 3358, 4270, 4273, 4308, 4274, 622, 4275, 4294, 622, - 622, 4277, 4292, 4295, 622, 622, 4099, 4293, 4296, 5084, - 4299, 622, 4297, 3907, 4311, 4608, 4609, 4610, 4611, 4302, - -2829, 4298, 4300, 4315, 4301, -2829, 5283, 3966, 3920, 5285, - 5286, 4303, 4099, 3925, 4304, 2893, 4305, 1052, 191, 4306, - 1053, 1049, 622, 4313, 4327, 1050, 5290, 1051, 4328, 4307, - 622, 4317, 4318, 4334, 622, 4324, 4329, 4331, 4339, 4345, - 4347, 4387, -2829, 4382, 4394, 4388, 4397, 4398, 4401, 4405, - 4415, 4416, 4418, 4425, 4434, 4428, 4435, 4439, 4441, 4438, - 5267, 4455, 4469, 4472, 4479, 4475, 622, 4487, 4488, 4481, - 4489, 4490, 4491, 4492, 4494, 4501, 187, 4503, 4504, 5130, - 4505, 4514, 4515, 622, 4516, 4517, 4519, 4520, 4521, 888, - 4522, 4523, 2000, 4527, 3960, -2169, 4051, 2551, 762, 4590, - 4537, 622, 4560, 4561, 4589, 5212, 4577, 4562, 4607, 4631, - 4569, 4592, 187, 4620, 4058, 4601, 4639, 4632, 4640, 4645, - 4646, 4616, 945, 5179, 5180, 4624, 5182, 4618, 4647, 3356, - 4655, 4627, 4658, 3356, 4629, 4644, 4660, 4664, 4649, 4675, - 4683, 3967, 3968, 3969, 3970, 3971, 3972, 3973, 3974, 3975, - 1532, 4704, 4707, 4714, 4715, 4717, 1533, 4720, 4705, 4718, - 4104, 4104, 5354, 4725, 4706, 4726, 4742, 4745, 5172, 4758, - 4757, 4759, 4761, 1772, 4760, 4771, 2856, 4772, 1772, 888, - 1772, 4773, 4774, 4775, 4776, 4785, 4788, 4787, 4794, -2829, - 4806, 4807, 4812, 4815, 4831, 4832, 4834, 4732, 4847, 5425, - 3356, 1535, 4099, 4837, 1772, 888, 4848, 3967, 3968, 3969, - 3970, 3971, 3972, 3973, 3974, 3975, 4850, 4851, 4852, 5019, - 4863, 4884, 4889, 4909, 4874, 4895, 4910, 4903, 4922, 4932, - 4915, 4938, 3829, 4949, 4939, 4956, 4916, 4955, 4958, 4960, - 4959, 4962, 4963, 4974, 4968, 4982, 4987, 4989, 4997, 5010, - 5004, 945, 5022, -2171, 945, 2613, 1502, 1536, 5005, 5025, - 5026, 5073, 4796, 5016, 1537, 5230, 5027, 1538, 5031, 5044, - 5059, 5063, 5082, 5066, 4805, 5077, 5086, 5096, 5610, 5099, - 5612, 5101, 5103, 5108, 2050, 5109, 5118, 2051, 5085, -2829, - 5136, 1503, 2040, 5137, 1539, 5147, 5138, 5141, 5148, 5149, - 2483, 2484, 2485, 2486, 2487, 2488, 5168, 5170, 5161, 5174, - 5164, 5183, 5175, 5184, 5191, 5202, 5193, 187, 622, 5192, - 2544, 5205, 5198, 5209, 5210, 5217, 4160, -2829, 1540, 5220, - 1532, 5226, 5225, 5229, 4163, 5233, 1533, 3349, 5235, 5227, - 5239, 3349, 5244, 5249, 945, 945, 5251, 5255, 888, 5256, - 5258, 1639, 1504, 2546, 5260, 945, 5262, 5263, 5264, 5273, - 3099, 5279, 622, 622, 5281, 5288, 5289, 5307, 5716, 5296, - 1532, 5306, 945, 5314, 5330, 5308, 1533, 5300, 5323, 5309, - 5319, 1535, 5329, 5333, 5358, 5330, 5336, 5361, 1505, 5378, - 5355, 1639, 5367, 1641, 5541, 888, 5370, 1542, 4941, 5382, - 888, 622, 622, 5472, 5620, 5742, 5579, 1543, 5381, 5385, - 970, 5386, 622, 5387, 5418, 5398, 1544, 5399, 5403, 3830, - 5409, 1535, 4597, 5392, 1506, 5410, 5440, 4873, 1545, 4246, - 5411, 4248, 5446, 5448, 5451, 1640, 5454, 1536, 5458, 5478, - 5459, 5479, 5483, 5490, 1537, 5488, 5506, 1538, 5374, 5511, - 5525, 5777, 5779, 945, 5622, 5517, 5518, 5519, 5615, 5540, - 5544, 3356, 3356, 5548, 5560, 5562, 1508, -2829, 5566, 887, - 1547, 1548, -2829, 5568, 1539, 1640, 5564, 1536, 5565, 622, - 5581, 5583, 5362, 5598, 1537, 5590, 5591, 1538, 5604, 5635, - 5592, 622, 5640, 5637, 5650, 887, 5644, 5648, 1510, 5395, - 5658, 1549, 5663, 5672, 5676, 5677, 5678, 5679, 1540, -2829, - 5390, 5680, 5689, 5690, 1539, 5691, 5692, 5697, 5699, 622, - 5714, 5715, 622, 5701, 5728, 4310, 5718, 5708, 5738, 762, - 622, 622, 4602, 888, 5741, 5737, 5740, 5753, 622, 622, - 35, 5757, 5776, 622, 5782, 3831, 5785, 622, 1540, 5788, - 622, 622, 4393, 5720, 1513, 622, 5790, 5796, 5792, 5799, - 5800, 622, 1514, 5819, 2551, 5818, 5816, 4332, 5817, 1550, - 2735, 5704, 5826, 1641, 5827, 5833, 5843, 1542, 622, 5844, - 5832, 5856, 1516, 5858, 5849, 622, 5842, 1543, 5865, 5870, - 622, 1517, 5878, 622, 622, 1518, 1544, 5880, 5771, 5887, - 5885, 622, 5786, 5787, 5896, 5895, 5897, 5913, 1545, 5915, - 5933, 5938, 622, 1641, 3832, 5948, 5951, 1542, 5425, 5959, - 622, 5965, 5967, 5986, 5088, 5090, 5992, 1543, 5993, 5783, - 5996, 6005, 6007, 6028, 6008, 6029, 1544, 6030, 6032, 6033, - 622, 5557, 5102, 887, 6055, 6042, 6066, 1642, 1545, 1519, - 1547, 1548, 4127, 3833, 6057, 6058, -2829, 6068, 888, 6075, - 6076, 6070, 6086, 3514, 6081, 6087, 6090, 5942, 5943, 3349, - 6045, 945, 6096, 6103, 6099, 1422, 5513, 3356, 3775, 1529, - 2909, 1643, 1635, 3564, 3356, 4053, 1634, 3642, 3645, 3356, - 1547, 1548, 3356, 4198, 2050, 187, 888, 2051, 4748, 4741, - 5881, -2829, -2829, -2829, 3684, 3732, 2535, 4474, 4344, 5437, - 762, 5770, 4891, 945, 5966, 5489, 4738, 5471, 888, 5208, - 4145, 3643, 5134, 3879, 5872, 945, 5614, 5372, 5962, 5791, - 2544, 5789, 5142, 5894, 5977, 4150, 5237, 2545, 4913, 4942, - 4883, 622, 4921, 5751, 3750, 3751, 4746, 4216, 622, 1550, - 4404, 4908, 5231, 1619, 5477, 4444, -2829, 4966, 5693, 6025, - 945, 6102, 6088, 2546, 5452, 4350, 4950, 2483, 2484, 2485, - 2486, 2487, 2488, 5899, 5397, 5600, 2976, 5759, 5400, 726, - 779, 1045, 4495, 5577, 4983, 6021, 1688, 3779, 4952, 1550, - 4528, 888, 3039, 4136, 3419, 3035, 4461, 5687, 5514, 5609, - 3051, 3068, 3143, 1115, 887, 3144, 1155, 4314, 3682, 4777, - 5919, 4260, 6056, 1114, 4538, 887, 5747, 622, 1367, 4969, - 3709, 2668, 4970, 3364, 1974, 2934, 6071, 5091, 5576, 4669, - 5866, 887, 2556, 622, 813, 2505, 814, 4097, 1772, 4559, - 3203, 4109, 3374, 5861, 5730, 4071, 4637, 5335, 4622, 3224, - 4065, 5547, 5546, 4066, 4670, 6039, 5848, 945, 5949, 2617, - 5719, 2616, 2621, 5771, 622, 5536, 2565, 4571, 5731, 970, - 5732, 3293, 3209, 4028, 3934, 3708, 4026, 2547, 3362, 1418, - 3302, 0, 2548, 0, 0, 0, 5242, 0, 0, 0, - 0, 0, 3349, 0, 0, 0, 0, 3349, 0, 0, - 3349, 0, 0, 0, 0, 5960, 2050, 0, 4099, 2051, - 888, 0, 888, 0, 0, 0, 0, 0, 0, 2550, - 970, 187, 187, 5744, 0, 0, 5394, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 5396, 0, 0, - 0, 0, 2544, 945, 0, 0, 0, 0, 0, -2829, - 0, 0, 0, 0, 0, 0, 5537, 0, 0, 0, - 0, 622, 0, 3356, 622, 0, 0, 622, 622, 622, - 0, 5439, 0, 0, 2551, 2546, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 887, 0, 0, - 5558, 0, 622, 622, 0, 0, 622, 2042, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1114, 0, 0, - 0, 0, 0, 762, 0, 0, 0, 622, 0, 0, - 0, 0, 0, 622, 0, 0, 0, 622, 0, 0, - 0, 6064, 0, 888, 622, 0, 0, 0, 0, 762, - 0, 0, 0, 6079, 5042, 0, 0, 622, 0, 0, - 622, 0, 0, 762, 0, 945, 0, 945, 0, 0, - 0, 622, 0, 5605, 5606, 762, 2553, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 6064, - 0, 0, 5356, 0, 0, 0, 0, 0, 0, -2829, - 0, 0, 0, 0, -2829, 0, 0, 6064, 0, 0, - 620, 888, 945, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 622, 0, 0, 0, 0, 772, 0, 774, - 0, 0, 0, 780, 0, 0, 3356, 0, 794, 802, - 772, -2829, 809, 0, 0, 802, 802, 0, 839, 0, - 842, 1192, 1193, 0, 0, 0, 3356, 896, 896, 896, - 0, 0, 1772, 0, 0, 5609, 0, 622, 6089, 0, - 3356, 0, 0, 0, 0, 0, 2479, 0, 0, 0, - 0, 0, 0, 0, -2829, -2829, -2829, 2483, 2484, 2485, - 2486, 2487, 2488, 187, 0, 0, 2551, 0, 0, 0, - 0, 0, 0, 5476, 5709, 0, 0, 0, 6014, 6015, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 5727, 0, 5729, 0, 622, 0, - 0, 888, 0, 0, 5502, 0, 0, 0, 0, 762, - 0, 0, 2652, 0, 0, 184, 191, 71, 186, 180, - 175, 80, 83, 181, 0, 183, 0, 84, 4894, 85, - 622, 86, 106, 124, 622, 129, 622, 900, 159, 0, - 178, 0, 185, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1114, 0, 0, 0, 622, 0, -2829, 622, - 0, 1532, 762, 0, 0, 0, 0, 1533, 0, 0, - 622, 620, 925, 925, 0, 0, 925, 622, 0, 2652, - 936, 0, 839, 0, 0, 972, 0, 0, 936, 0, - 0, 936, 0, 0, 839, 0, 925, 3356, 0, 839, - 0, 0, 0, 925, 0, 839, 0, 5504, 0, 0, - 0, 0, 1535, 0, 3349, 0, 0, 0, 0, 0, - 887, 0, 0, 0, 970, 0, 0, 888, 0, 0, - 0, 0, 888, 888, 0, 0, 0, 622, 0, 0, - 0, 0, 0, 622, 622, 945, 0, 0, 0, 0, - 0, 0, 0, 887, 0, 3356, 0, 0, -2829, 945, - 0, 0, 0, 0, 0, 0, 0, 0, 1536, 2483, - 2484, 2485, 2486, 2487, 2488, 1537, 0, 0, 1538, 622, - 0, 0, 0, 0, 0, 0, 0, 622, 0, 0, - 1772, 0, 0, 0, 0, 0, 0, 3376, 0, 0, - 0, 0, 0, 0, 0, 1539, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 622, 0, 0, 0, 619, - 0, 0, 0, 0, 0, 0, 0, 5666, 0, 0, - 0, 0, 0, 1688, 1688, 1688, 0, 0, 0, 1540, - 0, 0, 0, 0, 888, 888, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 622, 0, - 187, 0, 0, 0, 622, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 622, 1772, 0, 0, 888, - 0, 0, 0, 762, 622, 0, 622, 0, 622, 762, - 0, 187, 5877, 762, 1641, 622, 0, 0, 1542, 0, - 0, 0, 5734, 0, 3356, 187, 0, 0, 1543, 0, - 0, 0, 0, 0, 0, 0, 622, 1544, 0, 0, - 5158, 5159, 0, 0, 0, 5162, 5163, 0, 5122, 1545, - 0, 0, 0, 0, 887, 0, 0, 0, 0, 0, - 0, 1772, 0, 945, 0, 887, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 887, 0, 0, 5926, 5927, 5144, 0, 1669, 0, - 0, 1547, 1548, 0, 2040, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 5160, 6013, - 0, 0, 0, 0, 3356, 0, 622, 0, 0, 0, - 923, 0, 1670, 1502, 0, 0, 0, 0, 0, 935, - 0, 0, 0, 0, 887, 0, 0, 935, 0, 0, - 935, 0, 0, 0, 0, 0, 0, 0, 0, 887, - 0, 0, 887, 887, 622, 622, 622, 0, 1503, 0, - 0, 0, 622, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 622, 0, 0, 0, 0, 0, 0, 0, - 0, 5188, 622, 887, 887, 945, 0, 0, 0, 0, - 1550, 0, 0, 0, 0, 0, 0, 0, 622, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 945, 0, 0, 6082, 3356, 0, 1024, 0, 1504, - 0, 0, 0, 839, 0, 925, 0, 925, 0, 0, - 925, 0, 3349, 0, 187, 0, 0, 972, 0, 0, - 0, 0, 1082, 0, 925, 0, 0, 0, 0, 0, - 925, 0, 622, 0, 5900, 1505, 0, 0, 0, 0, - 0, 0, 622, 0, 0, 0, 0, 0, 0, 0, - 622, 622, 0, 0, 620, 0, 622, 191, 622, 5924, - 5921, 0, 0, 936, 5922, 1688, 5923, 972, 1688, 0, - 936, 1506, 0, 936, 622, 622, 0, 0, 0, 0, - 0, 0, 5272, 0, 0, 0, 0, 0, 0, 925, - 0, 0, 0, 2050, 0, 887, 2051, 0, 0, 187, - 0, 5991, 0, 0, 0, 0, 0, 0, 945, 1507, - 0, 0, 0, 1508, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 6097, 6098, 0, 0, 0, 2544, - 0, 622, 0, 0, 0, 0, -2829, 622, 0, 0, - 0, 3356, 839, 0, 1509, 1510, 0, 0, 0, 191, - 0, 5924, 5921, 0, 0, 622, 5922, 1221, 5923, 0, - 0, 0, 2546, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 622, 0, 1337, 1337, 0, - 839, 802, 0, 1511, 0, 802, 0, 35, 0, 622, - 0, 0, 1512, 0, 0, 0, 0, 0, 0, 839, - -2828, 1513, 0, 4310, 839, 762, 0, 0, 0, 1514, - 1337, 0, 0, 0, 0, 0, 0, 1515, 0, 0, - 622, 0, 0, 0, 0, 0, 0, 622, 0, 1516, - 3356, 0, 0, 0, 0, 1532, 3356, 0, 1517, 0, - 0, 1533, 1518, 0, 3244, 0, 0, 622, 0, 0, - 0, 0, 0, 0, 1772, 1337, 1534, 0, 0, 191, - -2609, 5924, 5921, 0, 0, 0, 5922, 0, 5923, 839, - 0, 0, 0, 0, 0, 0, -2829, 0, 0, 0, - 0, -2829, 839, 0, 0, 0, 1535, 3203, 3203, 622, - 622, 0, 3203, 0, 622, 0, 1519, 839, 622, -2828, - 0, 0, 1772, 0, 0, 0, 0, 0, 0, 0, - 622, 622, 0, 0, 0, 0, 839, 0, -2829, 0, - 1772, 925, 925, 0, 0, 0, 0, 0, 0, 0, - 0, 187, 0, 3203, 3203, 0, 0, 0, 0, 0, - 924, 926, 1536, 0, 929, 0, 3356, 0, 0, 1537, - -2828, 0, 1538, 802, 802, 0, 187, 0, 0, -2609, - 0, 0, 0, -2828, 987, 0, 0, 0, 0, -2828, - 0, 997, 0, 2551, -2828, 0, 1337, 1337, 0, 1539, - -2828, 0, 0, -2828, 0, 0, 0, -2828, 0, 620, - 0, 925, 0, 923, 0, 936, 0, 0, 972, 936, - 0, 936, 935, 0, 0, 0, 925, 0, 0, 935, - -2609, 0, 935, 1540, 0, 0, -2828, 0, -2828, 0, - 0, 0, 0, -2609, 0, 0, 0, 0, 0, -2609, - 839, 0, 0, 0, -2609, 0, -2828, 925, 925, 0, - -2609, 0, 0, -2609, 0, 0, 0, -2609, 5990, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 839, 839, - 839, 0, 925, 0, 620, -2829, 620, 620, 0, 0, - 0, 0, 0, 0, 0, 0, -2609, 0, 1541, 0, - 0, 0, 1542, 762, 0, -2828, 0, 0, -2828, 0, - 0, 0, 1543, 0, -2828, 0, -2609, 0, 0, 0, - 925, 1544, 925, 925, 0, 0, 0, 0, 0, 1532, - 0, 0, 0, 1545, 0, 1533, 0, 1980, 0, 0, - 0, 0, 1980, 1980, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1337, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -2609, 1688, 0, -2609, 0, - 0, -2828, 1546, 0, -2609, 1547, 1548, 0, 187, 0, - 1535, 1954, 0, 1954, 0, -2829, 0, 839, 0, 772, - 0, 0, 0, 0, 0, 0, 2483, 2484, 2485, 2486, - 2487, 2488, 0, 839, 0, 0, 1549, 0, 0, 1989, - 0, 0, 839, 0, 0, 1995, 0, 0, 0, 0, - 0, 0, 0, 3245, 0, 0, 0, 0, 0, 1337, - 0, -2609, 0, 0, 0, 0, 1536, 0, 0, 0, - 0, 0, 0, 1537, 0, 0, 1538, 0, 0, 0, - 0, 0, 0, 0, -2828, 5688, 0, 0, 0, 0, - 1337, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1539, 1550, 0, 0, 0, -2828, 0, - -2828, -2828, 0, 0, 0, 0, 777, 5768, 1337, 1337, - 1337, 0, 1337, 0, 0, 1532, 0, 0, 0, 5724, - 0, 1533, 0, 0, 0, -2625, 3415, 1540, 1599, 0, - 2652, 3421, 1337, 0, -2609, 0, 0, 0, 0, 0, - 0, 0, 0, -2828, 0, -2828, -2828, 0, 0, 0, - 1600, 0, 0, 0, 0, 0, 0, 0, -2609, 0, - -2609, -2609, 0, 0, 0, 0, 1535, 0, 923, 0, - 0, 0, 839, 0, 935, 0, 0, 0, 935, 0, - 935, 0, 0, 0, 0, 0, 0, 0, 887, 0, - 1337, 0, 1641, 0, 887, 0, 1542, 0, 0, 0, - -2609, 1601, 0, -2609, -2609, -2609, 1543, 0, 0, 0, - 0, 0, 0, 0, 0, 1544, 0, 0, 0, 0, - 0, 0, 1536, 1056, -2625, 1059, 0, 1545, 1061, 1537, - 0, 0, 1538, 0, 0, 887, 1337, 0, 0, 0, - 1337, 1337, 1086, 1865, 0, 1867, 1868, 0, 1090, 0, - 0, 839, 839, 839, 2631, 0, 1337, 0, 0, 1539, - 0, 0, 0, 0, 0, 0, 2715, 0, 0, 1547, - 1548, 0, 0, 0, 0, -2625, 0, 0, 0, 802, - 0, 0, 0, 0, 0, 0, 0, 0, -2625, 0, - 1602, 0, 0, 1540, -2625, 0, 0, 0, 0, -2625, - 2716, 0, 0, 0, 0, -2625, 0, 0, -2625, 0, - 0, 0, -2625, 0, 2723, 0, 0, 0, 0, 802, - 0, 0, 925, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 839, 2751, 0, 0, 1603, - 0, -2625, 0, 1604, 839, 0, 0, 925, 0, 0, - 0, 0, 0, 0, 0, 0, 1502, 0, 1605, 0, - 0, -2625, 1542, 0, 0, 0, 0, 0, 1550, 0, - 0, 0, 1543, 0, 972, 0, 839, 0, 0, 802, - 0, 1544, 2819, 2819, 0, 0, 2819, 0, 0, 0, - 0, 1503, 1606, 1545, 0, 0, 802, 0, 0, 839, - 0, 0, 839, 0, 0, 0, 0, 0, 0, 0, - -2625, 0, 1688, -2625, 0, 0, 0, 0, 0, -2625, - 0, 0, 0, 0, 925, 0, 0, 0, 0, 0, - 0, 0, 1607, 0, 0, 1547, 1548, 1608, 0, 0, - 0, 0, 839, 0, 887, 0, 0, 0, 0, 0, - 0, 0, 1504, 0, 925, 925, 925, 925, 839, 0, - 1609, 0, 0, 0, 0, 0, 1610, 0, 0, 0, - 0, 0, 839, 0, 0, 0, -2625, 0, 0, 0, - 1611, 0, 0, 1337, 1337, 1337, 0, 0, 1505, 3203, - 3203, 3203, 3203, 0, 0, 3203, 3203, 3203, 3203, 3203, - 3203, 3203, 3203, 3203, 3203, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2652, 0, 0, - 0, 2652, 0, 4567, 1506, 0, 943, 0, 6062, 0, - 0, 777, 0, 0, 1550, 979, 0, 0, 0, 1564, - 1565, 0, 0, 0, 0, 0, 0, 0, 0, 1001, - 0, 0, 0, 3203, 3203, 0, 0, 0, 0, -2625, - 0, 0, 1507, 0, 0, 0, 1508, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 6062, 0, 0, 0, - 0, 839, 688, -2625, 0, -2625, -2625, 0, 0, 0, - 0, 776, 839, 0, 6062, 0, 4626, 1573, 1510, 0, - 925, 925, 0, 0, 0, 0, 0, 0, 0, 1791, - 0, 0, 0, 0, 0, 0, 925, 0, 0, 0, - 0, 0, 0, 887, 1803, -2625, 0, 0, -2625, -2625, - -2625, 0, 0, 0, 839, 2819, 1574, 0, 887, 0, - 35, 0, 0, 887, 0, 1512, 0, 0, 0, 0, - 925, 925, 925, 925, 1513, 1825, 1826, 0, 0, 839, - 0, 0, 1514, 0, 0, 0, 839, 0, 0, 0, - 1575, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1863, 0, 1516, 620, 0, 0, 620, 0, 0, 0, - 0, 1517, 0, 0, 0, 1518, 936, 936, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 972, 972, 0, - 0, 936, 0, 0, 936, 0, 0, 0, 0, 0, - 1900, 1902, 0, 0, 0, 0, 0, 0, 0, 925, - 925, 0, 0, 0, 2050, 0, 925, 2051, 839, 0, - 0, 2052, 2053, 2054, 0, 0, 0, 0, 0, 1519, - 0, 0, 0, 0, 0, 1954, 0, 0, 0, 0, - 2543, 0, 925, 0, 936, 0, 0, 3115, 936, 936, - 2544, 839, 839, 0, 925, 0, 0, 2545, 0, 0, - 0, 839, 0, 0, 0, 0, 0, 0, 839, 0, - 0, 0, 0, 0, 772, 772, 0, 0, 3151, 0, - 0, 0, 1337, 2546, 1337, 0, 0, 0, 0, 1337, - 1337, 0, 0, 0, 0, 0, 1337, 1337, 1337, 0, - 0, 1337, 0, 1337, 972, 1337, 1337, 1337, 1337, 1337, - 1337, 3829, 0, 1337, 0, 1337, 1337, 0, 2050, 1337, - 0, 2051, 0, 0, 0, 2052, 2053, 2054, 0, 0, - 0, 0, 0, 0, 0, 1502, 1337, 1337, 1337, 0, - 0, 0, 0, 0, 2543, 0, 0, 0, 0, 0, - 0, 0, 0, 1337, 2544, 0, 0, 0, 0, 0, - 0, 2545, 0, 0, 0, 0, 0, 0, 1532, 0, - 1503, 0, 3203, 0, 1533, 0, 0, 0, 2652, 0, - 0, 3421, 0, 3421, 0, 0, 0, 2546, 2652, 0, - 0, 0, 0, 925, 0, 0, 0, 2547, 0, 0, - 0, 0, 2548, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1535, - 0, 0, 0, 0, 2549, 2238, 0, 0, 0, 0, - 0, 1504, 0, 0, 0, 0, 887, 0, 0, 2550, - 0, 0, 0, 0, 887, 0, 0, 0, 0, 0, - 1070, 0, 0, 0, 0, 0, 1070, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1505, 1070, 2652, - 0, 0, 0, 0, 0, 1536, 0, 0, 0, 0, - 2290, 2050, 1537, 0, 2051, 1538, 0, 0, 2052, 2053, - 2054, 0, 0, 0, 2551, 0, 1337, 2552, 3830, 0, - 0, 2547, 923, 1506, 0, 923, 2548, 2543, 0, 0, - 0, 0, 1539, 0, 0, 935, 935, 2544, 0, 0, - 0, 0, 0, 0, 2545, 0, 0, 0, 2549, 2238, - 935, 0, 0, 935, 0, 0, 1337, 0, 0, 887, - 0, 887, 0, 2550, 0, 1508, 1540, 0, 0, 0, - 2546, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 5024, 1510, 0, 0, - 2733, 0, 0, 935, 2290, 0, 2553, 935, 935, 1337, - 0, 0, 0, 0, 0, 0, 0, 0, 2551, 0, - 0, 2552, 0, 0, 0, 2772, 0, 0, 0, 0, - 0, 1541, 0, 0, 0, 1542, 0, 0, 0, 35, - 0, 0, 0, 0, 1512, 1543, 0, 0, 0, 0, - 0, 0, 0, 1513, 1544, 887, 0, 0, 0, 0, - 0, 1514, 0, 0, 0, 0, 1545, 0, 0, 2735, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1516, 1688, 0, 2547, 0, 0, 0, 1688, 2548, - 1517, 0, 0, 0, 1518, 0, 0, 887, 0, 0, - 1046, 0, 2862, 0, 0, 2793, 2479, 0, 1547, 1548, - 2553, 2549, 2238, 3832, 2480, 2481, 2482, 2483, 2484, 2485, - 2486, 2487, 2488, 0, 0, 3421, 2550, 3949, 0, 0, - 3950, 0, 2888, 2889, 2890, 2891, 0, 0, 0, 2794, - 0, 0, 0, 0, 0, 0, 0, 0, 1519, 0, - 1113, 688, 3833, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2290, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2551, 0, 0, 1337, 1337, 1337, 1337, 1337, 1337, - 1337, 1337, 1337, 887, 1337, 0, 0, 0, 0, 0, - 0, 0, 839, 1337, 0, 0, 1337, 1550, 0, 0, - 2479, 0, 0, 839, 0, 3421, 0, 0, 2480, 2481, - 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 0, - 0, 0, 0, 0, 3951, 0, 0, 887, 0, 0, - 0, 0, 0, 0, 0, 839, 1212, 1337, 0, 0, - 925, 1337, 0, 0, 1337, 0, 1337, 0, 0, 1337, - 0, 0, 0, 1337, 0, 0, 0, 0, 0, 0, - 0, 0, 1230, 2553, 0, 0, 0, 0, 2944, 2945, - 1340, 0, 0, 1349, 1113, 1353, 3359, 0, 0, 0, - 0, 0, 839, 839, 2962, 0, 0, 0, 0, 0, - 0, 0, 0, 1337, 0, 0, 0, 0, 0, 0, - 0, 0, 1337, 1337, 0, 0, 0, 0, 0, 0, - 887, 0, 0, 0, 0, 0, 839, 0, 3005, 3006, - 3007, 3008, 0, 0, 3403, 0, 3408, 0, 0, 0, + 632, 71, 184, 1702, 186, 191, 175, 904, 80, 83, + 84, 85, 180, 86, 106, 181, 183, 124, 129, 159, + 973, 178, 938, 185, 1393, 1629, 191, 746, 1080, 1347, + 979, 1461, 1799, 984, 808, 974, 844, 1359, 1206, 1207, + 1208, 637, 1916, 915, 1212, 892, 773, 1172, 688, 1788, + 2892, 2719, 773, 2683, 1447, 1682, 1449, 1412, 3510, 2814, + 3186, 1432, 1634, 1388, 1026, 1118, 3450, 1793, 2785, 1694, + 1970, 3844, 1212, 1403, 1404, 3451, 2777, 3813, 2018, 4134, + 2797, 4136, 1411, 1859, 2010, 1387, 3048, 3896, 982, 1418, + 1375, 1179, 4198, 840, 3972, 3177, 4350, 2786, 4278, 1480, + 628, 2960, 1004, 2002, 926, 780, 4524, 2004, 3202, 3236, + 2005, 2006, 2853, 2853, 4257, 1832, 2853, 1120, 809, 1837, + 2683, 4498, 3240, 3835, 1841, 4302, 1571, 4304, 3232, 4758, + 4797, 3728, 1575, 1628, 1851, 4511, 4447, 4174, 4549, 1047, + 4212, 4792, 1660, 4157, 3287, 917, 3289, 5189, 1871, 909, + 1180, 1593, 1687, 3696, 1151, 2615, 1610, 1155, 3115, 2922, + 2923, 3067, 5057, 5036, 1026, 2768, 803, 1163, 918, 232, + 5488, 4859, 4997, 837, 5201, 5028, 5203, 5046, 3360, 1905, + 5387, 5507, 1543, 3362, 4187, 2918, 5380, 5585, 3442, 855, + 3372, 632, 5348, 1367, 3445, 5376, 4218, 4006, 4211, 5237, + 632, 949, 1801, 5515, 3476, 3478, 1538, 1454, 632, 5637, + 949, 632, 2949, 4172, 5045, 4177, 4508, 1026, 829, 3772, + 4101, 3775, 3776, 1457, 949, 2768, 3780, 3781, 3782, -2489, + 3784, 3785, 3786, 4773, 694, 755, 5624, 3421, 4008, 5810, + 5379, -2531, 2768, -2556, -2380, 1120, 5538, 1538, -2594, 5146, + -2380, 694, 1538, -2380, -2380, 5582, -2381, -2413, 647, 924, + 755, 2574, -2381, 1502, 3832, -2381, -2381, 629, 755, 3862, + 1026, 1387, -2340, 694, 997, 2748, 2074, -2769, -2340, 5548, + 5549, 1400, 1401, -2769, 2713, 3182, -2769, -2769, 1187, 4037, + 1898, 1410, 4534, 1867, 5798, 4018, -1939, 3255, 5234, -1906, + 3045, 1009, -1939, 2714, 1377, -1906, -1919, -2493, 6174, -1944, + 2580, -1934, -1919, 4090, 694, -1944, 2703, -1934, 755, -1947, + 2069, 1824, 694, 3415, 1484, -1947, 694, 3297, 2537, 1994, + 1026, -1947, 2537, 3297, 187, 1898, 5735, -1947, 1191, 3212, + 2929, 3990, 694, 2582, 2788, 1510, 5992, 2713, 3213, 1363, + 4591, 1951, 5105, 5106, 5107, 187, 5109, 5110, 5111, 5112, + 5113, 3144, 2715, 2727, 2620, 919, 2853, 2551, 2788, 1572, + 694, 2788, 4872, 1572, 3753, 755, 2552, 1503, -150, 755, + 5574, 1844, 2716, 1829, -150, 3167, 3960, 5058, -2336, 2534, + 903, 5975, 1898, 1898, 5721, 1898, 1238, 1868, 3480, 694, + 5217, 4926, 5670, 1010, -2554, 761, 5627, 5964, 3009, 5709, + 5675, 3392, 5631, 1485, 5516, -1760, 1052, 761, 1898, 761, + 5632, 5628, 4987, 5977, 761, 2715, 2788, 5956, 3272, 762, + 1694, 1107, 1846, 761, 1793, 2626, 3447, 2916, 4258, 2838, + 2937, 762, 1153, 762, 1898, 2716, 3014, 1120, 762, 3642, + 645, 5341, 3214, 3163, 920, 1210, 1166, 762, 927, 1511, + 1011, 1881, 1788, 3178, 5993, 4759, 1486, 939, 1849, 2560, + 5732, 761, 2901, 4977, 4063, 939, 4065, 4066, 939, 1403, + 1404, 3393, 2622, 761, 5812, 2553, 2788, 974, 4592, 5944, + 644, 3046, 2788, 4873, 40, 762, 2074, 2065, 6175, 921, + 4978, 2902, 4009, 4370, 1411, 5260, 2788, 762, 1176, 4037, + 2788, 4435, 2561, 1898, 3168, 3651, 6091, 1418, 1012, 5625, + 2074, 3974, 2575, 783, 2728, 916, 3643, 6092, 3215, -2200, + 2580, 44, 5007, 1074, 1898, 4760, -2200, 974, 4377, 1084, + 2717, 3339, 2618, 919, 3448, 1211, 847, 3164, 3340, 1504, + 2556, 1098, 194, 1914, 2580, 2569, 2569, 1378, 2725, 4019, + 4495, -2219, 5676, 2582, 4037, 4091, 2066, 3015, -2219, 5342, + 6052, 5613, 1487, 48, 3273, 2934, 2596, 5710, 4988, 5978, + 2839, 2938, 1242, 1899, 868, 4927, 49, 2582, 1505, -1760, + 1793, 5965, 1954, 5677, 5633, 2540, 195, 1426, 3216, 5244, + 4874, 3217, 3160, 2717, 1017, 3010, 3160, 5629, 1018, 5887, + 50, 3481, 2554, 2015, 3482, 5671, 2729, 3160, 5218, 6132, + 5769, 3160, 3961, 1506, 4593, 5994, 5469, 5008, 1899, 56, + 5995, 3145, 920, 1379, 2702, 5884, 949, 1106, 2798, -441, + 5889, 5890, 2669, 2617, 5576, 1235, 6176, 4092, 1995, 4447, + 1057, 1241, 1058, 191, 3002, 949, 2718, -2554, 5927, 6110, + 1054, 949, 2753, 1055, 1056, 1120, 3204, 3047, 2815, 5955, + 4544, 4427, 4428, 949, 2887, 4894, 4535, 2890, 1400, 1401, + 2895, 1582, 2958, 2959, 1995, 1899, 1899, 2535, 1899, 949, + 922, 2948, 1507, 904, 632, 3298, 2755, 1693, 4258, 892, + 1107, 4110, 6177, 632, 949, 1512, 2762, 2593, 2897, 1410, + 632, 1899, 949, 632, 3218, 3551, 5009, 648, 3627, 2718, + 1183, 5910, 1830, 5434, 2831, 892, 949, 6153, 6109, 3169, + 3754, 1017, 4093, -2554, 4010, 1018, 949, 1899, 3389, 1211, + 2549, 1492, 3415, 1493, 1900, -2554, 191, -2489, 2957, 2930, + 3170, 2832, 1398, -2380, 2660, 767, 768, 5006, 5805, -2531, + 3365, -2556, 4802, 767, 768, -2381, -2594, 6180, 1830, 1513, + 2661, 1462, 1112, 2917, 2522, -2413, 5808, 3198, 6054, 1017, + 1184, -2340, 1189, 1018, 1193, 1108, -2769, 4052, 4901, 949, + 1197, 4020, 1120, 2877, 4905, 5053, 2880, 2881, 5054, 2876, + 1120, 1120, 5223, 1200, 6044, -1939, 1899, 2772, 1402, 1413, + 1414, 632, 632, 767, 768, 1406, 2965, 949, -1944, 6073, + -1934, 1413, 1414, 2070, 689, -2493, 3219, 1899, 1415, 2598, + 2599, 2538, 3803, 4408, 4280, 6196, 3133, 1214, 6017, 4371, + 1417, 6093, 949, 3117, 632, 1602, 1907, 1911, 1815, 1922, + 1830, 6021, 1811, 4819, 2621, 5418, 1816, 4864, 1817, 917, + 2772, 3001, 1017, 974, 1211, 4447, 1018, 892, 922, 1603, + 1573, 1574, 1944, 1924, 1573, 1574, 3143, 2772, 4174, -150, + -150, 5010, 918, 1249, 848, 4214, 4037, 947, 3158, 632, + -2896, -2896, -2896, 1214, 2726, -2200, 983, 2816, 1947, 2859, + 5717, 4738, 949, 4496, 6112, 4742, 3161, 3341, 71, 184, + 1005, 186, 191, 175, 4496, 80, 83, 84, 85, 180, + 86, 106, 181, 183, 124, 129, 159, -2219, 178, 4508, + 185, 5245, 1495, 4638, 1991, 4489, 5954, 1806, 1914, 4365, + 4366, 1109, 4589, 3804, 4367, 2001, 4782, 5948, 4281, 2910, + 2911, 2840, 5011, 1914, 4729, 2935, 4731, 4586, 4969, 2799, + 936, 927, 2011, 2815, 4965, 6100, 5577, 1914, 1848, 6152, + 939, 1466, 4622, 2800, 3442, 2801, 4545, 939, 1110, 4192, + 939, 4463, 187, 5928, 2936, 5936, 1517, 4141, 4586, 2979, + 1394, 2519, 2520, 2521, 2522, 6115, 6116, 4220, 1362, 4221, + 4968, 5947, 1372, 3416, 4049, 4050, 4051, 4052, 3324, 2747, + 632, 632, 1789, 2517, 2518, 2519, 2520, 2521, 2522, 949, + 5302, 4422, 3235, 1891, 632, 1070, 1134, 2991, 4018, 892, + 632, 6205, 912, 5612, 632, 4008, 632, 1892, 2802, 1111, + 892, 1112, 4253, 1249, 5303, 1113, 4037, 3962, 3619, 1239, + 4038, 4039, 4040, 694, 3522, 694, 892, 4047, 4048, 4049, + 4050, 4051, 4052, 2817, 1249, 2622, 2721, 4037, 1671, 5618, + -1759, 4038, 4039, 4040, 1672, 187, 903, 4487, 2815, 4550, + 1469, 3791, 6053, 1202, 2909, 3497, 2856, 6045, 3900, 2860, + 2050, 4690, 2818, 1893, 2722, 694, 4892, 6224, 5402, 6182, + 632, 3023, 632, 632, 1594, 4215, 6105, 3415, 1560, 5858, + 3415, 3609, 1666, 1793, 3395, 690, 694, 2819, 1863, 4877, + 3667, 2815, 4354, 2815, 803, 1652, 3295, 5077, 4797, 1510, + 1249, 6200, 5521, 4037, 6005, 5022, 6168, 4038, 4039, 4040, + 3061, 3805, 5831, 949, 910, 3542, 3712, 2633, 3424, 3325, + 3019, 4193, 3713, 4328, 3326, 1667, 5970, 3415, 2813, 3454, + 5689, 1864, 5711, 4282, 4283, 3415, 3020, 3610, 4551, 912, + 694, 632, 4043, 3498, 1422, 691, 6031, 3901, 6117, 787, + 6232, 4761, 1673, 3024, 3078, 3345, 3050, 5712, 191, 5971, + 5832, 3199, 2816, 3201, 4284, 1894, 6211, 4995, 3327, 3208, + 3667, 957, 3155, 3156, 949, 3223, 3224, 3079, 958, 959, + 960, 3241, 911, 892, 692, 949, 693, 1026, 1595, 1956, + 3260, 1958, 2815, 1960, 4982, 1962, 3275, 1964, 1965, 1966, + 1426, 3806, 949, 4041, 1968, 3543, 6151, 949, 3425, 916, + 4878, 187, 4599, 1511, -1759, 6176, 1422, 6158, 2964, 632, + 1423, 4477, 5791, 2634, 3509, 2723, 4042, 3119, 2815, 1895, + 3714, 3475, 1830, 937, 1205, 3620, 1203, 4329, 4798, 5804, + 1849, 5819, 6106, 3611, 904, 5378, 5794, 4042, 3552, 6181, + 2992, 1890, 5807, 3963, 632, 5802, 3142, 4033, 1470, 5790, + 3147, 927, 4019, 3792, 4464, 3154, 912, 939, 3157, 4009, + 3833, 939, 3570, 939, 5366, 2066, 6203, 2816, 5372, 5397, + 6075, 4254, 2889, 632, 632, 632, 5304, 632, 5229, 5806, + 1424, 4444, 1423, 1425, 695, 4194, 2815, 2815, 1071, 1135, + 6215, 3346, 4043, 4552, 3768, 5840, 5102, 632, 1668, 3018, + 3401, 1075, 3092, 4042, 1865, 3659, 3328, 1075, 3094, 3455, + 2816, 5403, 2816, 4043, 1674, 4762, 3628, 1896, 2817, 1075, + 2815, 2815, 3126, 3107, 949, 2578, 3109, 1883, 3763, 1885, + 1886, 3080, 949, 949, 3113, 3523, -2896, -2896, -2896, 4047, + 4048, 4049, 4050, 4051, 4052, 3756, 4448, 2818, 4983, 6032, + 1596, 6076, 1424, 1675, 4996, 1425, 632, 4355, 6172, 3902, + 2627, 2628, 6082, 2632, 4553, 2768, 4600, 1691, 3246, 5715, + 974, 4541, 2819, 3903, 3546, 641, 3146, 1933, 40, 4043, + 3152, 3153, 3416, 918, 918, 1789, 918, 2919, 1676, 1597, + 4478, 5679, 3715, 4451, 3660, 993, 1426, 5770, 913, 4330, + 794, 4139, 632, 3612, 1669, 1450, 632, 632, 2074, 2073, + 1866, 2816, 2074, 2813, 5222, 44, -2896, -2896, -2896, 5660, + 1934, 5190, 632, 5938, 1598, 5514, 994, 642, 892, 6033, + 2950, 3716, 3553, 2817, 6062, 2892, 5698, 5193, 4331, 5143, + 2763, 1640, 5197, 4374, 6077, 5199, 2580, 2816, 3661, 3137, + 4185, 3542, 4453, 2581, 2542, 3057, 5033, 48, 6034, 793, + 1009, 5680, 2818, 1224, 4034, 4035, 3717, 3057, 1426, 4054, + 49, 3197, 1466, 4332, 1466, 2582, 2817, 187, 2817, 2582, + 5345, 3058, 5034, 2636, 795, 3361, 1452, 2819, 5778, 3659, + 3844, 3542, 4375, 3058, 50, 892, 4044, 4045, 4046, 4047, + 4048, 4049, 4050, 4051, 4052, 2818, 1641, 2818, 1427, 3662, + 4085, 4086, 5067, 3456, 3819, 2816, 2816, 4044, 4045, 4046, + 4047, 4048, 4049, 4050, 4051, 4052, 2543, 6062, 2813, 2637, + 2819, 3629, 2819, 1428, 6050, 6051, 892, 2764, 4649, 2882, + 4650, 3543, 5537, 5731, 1599, 2020, 1692, 1793, 1642, 2816, + 2816, 5771, 5144, 1225, 5333, 1643, 5033, 1914, 1644, 4456, + 5987, 1495, 1010, 2032, 5877, 2029, 1495, 4363, 3885, 892, + 4447, 2813, 5626, 2813, 6043, 4784, 3544, 2817, 3660, 660, + 1427, 3543, 5034, 4044, 4045, 4046, 4047, 4048, 4049, 4050, + 4051, 4052, 6078, 2636, 2583, 906, 6135, 3096, 5661, 2584, + 5617, 6067, 4457, 1935, -697, 3138, 2818, 1788, 2683, 814, + 3555, 3108, 2683, 2817, 5760, 3545, 5762, 2063, 4458, 1011, + 5766, 5767, 3663, 5886, 3114, 4959, 4805, 838, 5779, 6062, + 4963, 2819, 3661, 1849, 949, 4373, 4410, -1906, 3139, 2637, + 1495, 2639, 2818, 2586, 1495, 6143, 662, 772, 3964, 632, + 632, 632, 3140, 772, 963, 964, 965, 966, 967, 968, + 969, 970, 971, 2913, 4270, 5027, 2731, 2819, 1182, 4821, + 4866, 6108, 2813, 3495, 1914, 1914, 2732, 1012, 3059, 5035, + 1947, 2817, 2817, 4165, 4651, 2883, 3820, 3095, 3141, 2884, + 5360, 3105, 3135, 3662, 6067, 6154, -2364, 6136, 2587, 850, + -175, 2638, 2640, 5024, 5780, 974, 974, 3556, 2813, 1936, + 2818, 2818, 4806, 3718, 1450, 2817, 2817, 4166, 4459, -1906, + 3546, 1223, 1226, 6144, 2882, 2707, 5187, 1645, 3135, 3380, + 3965, -175, 4744, 1374, 815, 2819, 2819, 2708, 6150, 4271, + 916, 916, -466, 916, 2818, 2818, 3664, 3416, 4168, 949, + 3416, 2639, 3719, 1009, 3665, 2709, 4202, 3666, 194, 4986, + 3546, 892, 1646, 1227, 4785, 1228, 1647, 3088, 1444, 2819, + 2819, 4786, 892, 4164, 1389, 811, 2813, 2813, 4787, 5942, + 1560, 4807, 2805, 1378, 1789, 4808, 3505, 3720, 892, 6013, + 4805, 2589, 1631, 4203, 4444, 1452, 6067, 3416, 907, 4636, + 4637, 1648, 195, 4368, 3616, 3416, 3663, 949, 1649, 5547, + 2813, 2813, 2640, 4862, 4788, 949, 1602, 5811, 2806, 673, + 4890, 674, 1412, 949, 1484, 3418, 4312, 974, 3415, 3135, + 3640, 1632, 3415, 923, 1439, 3446, 4789, 5962, 4313, 816, + 1603, 5797, 892, 3496, 1453, 2733, 1584, 1845, -1084, 4165, + 3821, 632, 1450, 2073, 632, 1010, 2074, 892, 1451, 1379, + 892, 892, 3509, -466, 632, 632, 5818, 949, 949, 4170, + 2883, 1235, 3678, 1445, 2884, 4214, 4806, 194, 4369, 632, + 4697, 949, 632, 4166, 2734, 2722, 3568, 5969, 4863, 4980, + 2580, 892, 892, 2513, 949, 949, 5465, -2896, 4167, 3415, + 3822, -1906, -2896, -2896, -2896, 2517, 2518, 2519, 2520, 2521, + 2522, 6119, 1011, 1485, 4168, 1830, 660, 2710, 191, 5329, + 1585, 195, 4837, 2582, 4236, 694, 924, 5544, 2788, 3640, + 3664, 1368, 632, 1452, 3741, 5659, 632, 632, 3665, 2789, + 1672, 3666, 4169, 1633, 3227, 4807, 1523, 40, 3127, 4808, + 3128, 5545, 3129, 5330, 3130, 641, 3131, 4838, 3918, 3587, + 3132, 4981, 1057, 4590, 1058, 191, 1486, 3183, 5416, 5194, + 1012, 632, 1054, 632, 1947, 1055, 1056, 5439, 632, 632, + 3677, 4602, 1453, 662, 44, 632, 632, 632, 632, 632, + 632, 632, 4087, -612, 632, 3801, 632, 5946, 632, 632, + 632, 632, 632, 632, 3172, 1476, 632, 908, 632, 632, + 4444, 2683, 632, 6184, 3844, 5896, 3679, 1471, 3702, 5520, + 3726, 2683, 3588, 5347, 3682, 5963, 48, 3685, 892, 632, + 632, 632, 3757, 3758, 3759, 4170, 5945, 4614, -2896, 4624, + 1477, 932, -1683, -2896, 1478, 4628, 4839, 632, 1673, 1789, + 5349, 5440, 3747, 3589, 3187, -1683, 1472, 3654, 4269, 2892, + 3727, -1683, 5371, 5552, 4627, 2863, 4635, 5241, 4631, 4632, + 2866, 2074, 1487, 4081, 5789, 3652, 5358, 3653, 934, 1479, + 5648, 4585, 56, 1481, 3722, 2788, -1730, -2896, 1120, 5897, + 1099, 1473, -1730, 955, 1662, 5497, 2796, 5499, 1099, 5350, + 3912, 5367, 2683, -1906, 1637, 2580, 1612, 4572, 6058, 29, + -1683, -1906, 2951, 1402, -1906, 1431, 3590, -1906, 927, 3723, + 3763, 927, 1482, 5544, 5822, 5195, 4417, 1100, 4586, 2853, + 956, 939, 939, 1663, 1488, 1100, -1683, 1664, 2582, 5242, + 6046, 1008, 2587, 1638, 2940, 1613, 939, 5545, 2946, 939, + 35, 2952, 3956, 2793, 4325, 2794, 673, 1483, 674, 999, + 3415, 3415, 5320, 1101, 5321, 5322, 5323, -1730, 1665, 1489, + 1947, 4490, 3724, 1490, 3693, 1016, 3694, 35, 1639, 2805, + 3698, 2862, 1602, 5763, 678, -1683, 3721, 4372, 5764, 5839, + 5337, 632, 5339, 4326, -1683, 1188, 1190, 1192, 4727, 939, + 1194, 1195, 1196, 939, 939, 40, 1603, 3725, 1491, 1869, + 1201, 1102, 4798, 5801, 4283, 2806, -1730, 1062, 2795, 1102, + 5592, -1682, 1602, 2953, 5558, -150, 4798, 1794, 4327, 1060, + 1795, 1941, 4409, 1870, -1682, -2896, 2954, 6111, 632, 5765, + -1682, 1492, 44, 1493, 4850, 3377, 1603, 187, 5768, 1370, + 4645, 4646, 4647, 4648, 4217, 1942, 4652, 4653, 4654, 4655, + 4656, 4657, 4658, 4659, 4660, 4661, 2955, 4071, 4928, 3378, + 5559, 1067, 2546, 4078, 5593, 5544, 5652, 5594, 4945, 1413, + 1414, 1081, 233, 5595, 48, 3945, 3874, 6011, 646, -1682, + 6121, 632, 4929, 1494, 187, 5560, 738, 49, 1415, 5545, + 5653, 4946, 3848, 3849, 3850, 3851, 6222, 3853, 6225, 6137, + -1910, 5596, 1095, 5561, 812, -1682, -1910, 5562, 2846, 1605, + 2943, 50, 4703, 4704, 5262, 4520, 40, 3226, 6236, 3, + 4, 5267, 3881, 6138, 3836, 2870, -1683, -2896, 1679, 5563, + 6059, 1683, 2824, 5564, 1072, 3274, 1073, -1683, 755, 2517, + 2518, 2519, 2520, 2521, 2522, 1017, 1104, -2340, 5565, 1018, + -1683, 1413, 1414, 44, -1682, 4224, -1683, 1408, 1409, 5597, + 1402, 4781, 2616, -1682, 6015, 6016, 1402, 1076, 2616, 1077, + 1417, 772, 5598, 772, 4798, 772, 5876, 1953, 4036, -611, + 1795, 772, 1198, 1199, 740, 5599, 5734, 3415, 3986, 1103, + 4064, 5738, 5739, 2591, 3415, 48, 40, 1017, 1402, 3415, + 1431, 1018, 3415, 910, 15, -1683, 3944, 6204, 49, 2003, + -2332, 2019, 1795, 56, -1917, 1017, -1731, 1205, 2066, 1018, + -1917, 1249, -1731, 1105, 4037, 4135, 4088, 4164, 4038, 4039, + 4040, -1683, 50, 44, -1907, 1249, 1122, 5187, 4037, 20, + -1907, -1908, 4038, 4039, 4040, 5566, -1911, -1908, 4691, -1909, + 1126, 56, -1911, 3565, -1683, -1909, 740, 1133, 632, 632, + 632, 632, 632, 632, 632, 632, 632, -1683, 632, 3987, + 4121, 911, 694, -1683, 3988, 48, 15, 1142, 2067, 632, + -1683, 2825, 632, 3022, 4190, 1143, 6098, 755, 49, -1683, + 755, 3039, 2577, 1149, 2569, 1795, 5567, -1731, 3416, 2943, + 694, 3535, 3416, 4165, 1167, -1682, 4687, 3532, 694, 3536, + 3537, 20, 50, 5554, 4907, 694, 974, 1402, 770, 2616, + 4557, 5180, -1683, 632, 770, 4558, 3303, 632, 2962, 2963, + 632, 56, 632, -2333, 3373, 632, 4378, 4166, 1017, 632, + 1205, 3083, 1018, 3084, 3097, 4104, -1731, 4105, -1683, 4146, + 4147, 5061, 4167, 1592, 2590, 912, 4558, 2591, 1609, 4126, + 1789, 4127, 632, 3309, 3310, 3311, 3312, 1160, 4168, 3416, + 772, 2943, 4259, 2624, 6146, 3123, 1795, 4137, 2591, 632, + 3134, 3136, 5600, 3135, 3135, 5601, 5094, 3175, 632, 632, + 3176, 3376, 1177, 4219, 1947, 3529, 4169, -1683, 4288, 641, + 3564, 4164, 5101, 5823, 755, 3381, -1683, 3467, 2591, 4180, + 2591, 1955, -1134, -1134, 1957, 949, 1959, 3458, 1961, 4517, + 1963, 4518, 892, 4774, 1967, 3562, 892, 892, 3563, 3443, + 3444, -1683, 32, 949, 4042, 3634, 4108, 949, 3635, 3797, + 772, 949, 3798, 3936, 2617, 4262, 3135, 1204, 4042, 3985, + 949, 1793, 2591, 4976, 5123, 4849, 3499, 4970, 3502, 4971, + 5126, 5127, 3413, 29, 40, 1209, 3994, 4001, 949, 2591, + 2591, 632, 5029, 1615, 6090, 3415, 4506, 4165, 4002, 1213, + 4016, 2591, 632, 3756, 892, 632, 3658, 632, 632, 4170, + 892, 1205, 4798, 4023, 5214, 1616, 2591, 913, 5719, 1017, + 1216, 44, 949, 1018, 32, 3281, 5724, 5725, 3284, 4056, + 4043, 4166, 2591, 4070, 4075, 4144, 2591, 4076, 2591, 3, + 4, 4320, 949, 949, 4043, 4305, 4167, 4840, 4306, 4846, + 4310, 892, 4336, 4311, 1219, 4337, 40, 4820, 4128, 1120, + 4129, 6009, 4168, 48, 4829, 4444, 1617, 741, -1683, 3550, + 1221, 2683, 4406, 1789, 949, 4337, 49, 1789, 5134, 40, + 5135, 4228, 4529, 40, 4532, 4530, 3744, 4533, 4601, 4563, + 4169, 4670, 4564, 44, 4671, 4681, 1413, 1414, 4682, 3001, + 50, 949, 4493, 1789, -1754, -1754, 4693, 949, 2073, 2591, + 6160, 2074, 6161, 5952, 5448, 4865, 44, 5449, 1222, 742, + 44, 949, 4465, 4769, 4775, 1232, 4770, 4776, 949, 4780, + 1233, 949, 3482, -1758, -1758, 48, 1017, 949, 5030, 1436, + 1018, 3135, 1436, 5096, -1671, 2580, 1995, 6185, 49, 629, + 3416, 3416, -2896, 4723, 1236, 4725, 1618, 949, 48, -1757, + -1757, 5131, 48, 949, 2591, 5510, 5511, 4246, 3649, 5704, + 949, 49, 50, 3415, 5170, 49, 5225, 2591, 2582, 3482, + 5179, 4345, 5182, 4170, 949, 5640, 4351, 5231, 3303, 5238, + 5232, 56, 3135, 3415, 1234, 50, 3692, 949, 1615, 50, + 5239, 1237, 1789, 3135, 6226, 1243, 5240, 3415, 949, 3135, + 5373, 1373, 1619, 5374, 56, -1421, 1620, -1421, 56, 1120, + 1616, 5410, 3406, 4743, 4564, 4746, 632, 632, 632, 1235, + 5431, 2891, 632, 5432, 4044, 4045, 4046, 4047, 4048, 4049, + 4050, 4051, 4052, 5433, 5852, 5853, 2591, 4107, 4044, 4045, + 4046, 4047, 4048, 4049, 4050, 4051, 4052, 1245, 5452, 632, + 892, 5453, 2662, 4798, 2665, 1622, 1380, 187, 1789, 927, + 5462, 1617, 939, 1947, 939, 939, 5983, 5984, 3978, 5371, + 3980, 3981, 5047, 5468, 5470, 5587, 4503, 4503, 5588, 5607, + 1376, 5641, 3135, -2896, 5642, 1381, 5687, 5693, -2896, 5688, + 1947, 632, 1382, 5696, 5707, 4771, 4503, 5708, 772, 5753, + 1624, 1390, 5754, 772, 772, 1398, 5793, 5820, 5843, 2545, + 5708, 4076, 5844, 5862, 5866, 2591, 5863, 1947, 1395, 5867, + 3863, 5040, 2591, 892, 1625, 901, 902, 892, 3885, 1386, + 1249, 2597, -2896, 4037, 1405, 1396, 1419, 4038, 4039, 4040, + 2604, 1402, 2605, 5952, 1627, 5895, 2608, 1406, 3176, 4798, + 4483, 1618, 1421, 2614, 1436, 3415, 3975, 4436, 5901, 1448, + 1463, 3176, 4800, 4801, 5902, 4676, 4804, 3176, 1437, 1468, + 5874, 1249, 2683, 5905, 4037, 1464, 2591, 3416, 4038, 4039, + 4040, 1465, 5906, 5907, 3416, 2591, 5908, 2587, 2622, 3416, + 5934, 3413, 3416, 5935, 5988, 1544, 6002, 4503, 5163, 2591, + 6004, 6010, 1474, 2591, 3135, 974, 6025, 1619, 1431, 6026, + 1515, 1620, 1541, 949, -2382, 1789, 4608, 4497, 3415, 1546, + 6048, 6089, 4448, 6049, 5701, 1547, 2891, 1582, 4449, 1587, + 892, 1586, 949, 1588, 4466, 6118, 4468, 4595, 5708, 949, + 1599, 4450, 1601, 632, 772, 892, 632, 1611, 632, 632, + 892, 4798, 1694, 6156, 772, 1614, 6157, 1636, 632, 6028, + 1622, 6179, 1653, 632, 2591, 904, 1654, 4642, 1670, 4451, + 6198, 4452, 6208, 5863, 6214, 6209, 1680, 4770, 1684, 892, + -2896, 4225, 4226, 3394, 3396, 3397, 1120, 1793, 1120, 6223, + 6235, 1681, 2591, 6209, 1689, 1690, 1805, 1803, 1198, 1199, + 1807, 4669, 1812, 1818, 1823, 1624, 632, 632, 632, 1826, + 4186, 632, 1828, 904, 4580, -2668, 1833, 1836, 4538, 632, + 632, 632, 632, 1838, 2622, 1830, 1847, 1852, 4453, 1625, + 1789, 4849, 1853, -137, 1855, 632, 1789, 1856, 632, 1858, + 632, 772, 1860, -2896, 772, 772, 1861, 1872, 1879, 1627, + 1881, 1884, 632, 632, 4711, 1888, 632, 4454, 629, 213, + 1897, 6056, 1902, 1903, 1904, 1906, 1910, 1909, 1913, 1914, + 1120, 1921, 1925, 1927, 1928, 1930, 1932, 632, 3415, 632, + 1938, 632, -2896, 1937, 4042, 1940, 1943, -1109, 1946, 1949, + 1950, 1952, 1969, 4841, 2517, 2518, 2519, 2520, 2521, 2522, + 632, 2000, 3616, 2007, 4860, 4131, 4132, 4133, 5257, 2009, + 2073, 3468, 2012, 2074, 2016, -2668, 904, 2017, 2024, 4043, + 2025, 949, 2026, 2027, 2028, 56, 2030, 4341, 3640, 3484, + 4455, 2031, 2050, 3487, 2032, 4456, 2033, 3490, 2034, 2035, + 2036, 2528, 2037, 2038, 2039, 5425, 2040, 2580, 2042, 4358, + 187, 2530, 2043, 2044, -2896, 2045, 632, 2046, 2047, 632, + 4043, 2048, 2049, 2532, 3515, 3416, -2668, 904, 2052, 2534, + 2053, 2054, 632, 3415, 2055, 660, 2056, 632, 4457, -2668, + 2582, 2057, 4816, 5074, 2058, -2668, 2535, 2059, 2550, 2545, + 2617, -2668, 632, 2563, 4458, 1615, 2572, -2668, 3557, -1082, + -2668, 2594, 2595, 2600, -2668, 2602, 632, 2603, 2606, 2607, + 927, 2609, 2610, 939, 632, 939, 939, 1616, 1075, 2611, + 2612, 2613, 2618, 2625, 1451, 5665, 892, 2656, 1453, 892, + 2658, 892, 2668, 2670, -2668, 2616, 892, 772, 2671, 4964, + 4951, 2672, 662, 2673, 2689, 2690, 2696, 2691, 2692, 4702, + 3607, 949, 949, 2693, 2694, 6183, 3413, 632, 2695, 3413, + -2668, 2697, 2698, 2699, 2705, 2724, 2730, 2736, 1617, 2750, + 2754, 2756, 2757, 2758, 3415, 4889, 2760, 3636, 949, 2761, + 2774, 949, 2778, 3645, 892, 2780, 2791, 2779, 2792, 2807, + 2803, 4956, 892, 2810, 4459, -2896, 664, 3655, 2812, 2809, + -2896, 2813, 2811, 4476, 1075, 4479, 3413, 3668, 2821, -2668, + 2822, 2823, -2668, 3673, 3413, 2826, 2827, 892, -2668, 2833, + 2834, 2828, 2847, 4044, 4045, 4046, 4047, 4048, 4049, 4050, + 4051, 4052, 2837, 3686, 2843, 4843, 2844, 2861, 2871, 3689, + 2857, 2878, 2885, 3416, -2896, 2888, 3695, 2903, 2063, 1560, + 2905, 2858, 2864, 1789, 1789, 1789, 2867, 2868, 1618, 2907, + 3710, 2912, 2914, 3416, 4044, 4045, 4046, 4047, 4048, 4049, + 4050, 4051, 4052, 3735, 2873, -2668, 2874, 3416, 949, 2931, + 3956, 2915, 2932, 4186, 1075, 2886, 2893, 892, 2894, 892, + 2939, 2899, 2900, 2906, 2908, 2920, 2063, 949, 2921, 2587, + 2933, 2944, 2961, 2968, 2976, 5393, 2973, 2975, 2977, 2978, + 2982, 2983, 2984, 2986, 1619, 673, 2989, 674, 1620, 949, + 3303, 2987, 2988, 629, 3415, 2990, 629, 2994, -1109, 2995, + 2996, 2997, 787, 2891, 3004, 3005, 4117, 655, 5667, 3008, + 677, 3021, 3013, 1845, 3032, 1633, 3305, 1249, 3306, 3036, + 4037, 3037, 3210, 3211, 4038, 4039, 4040, 3040, 4603, 3049, + -2668, 3052, 3055, 3242, 3243, 3056, 3065, 1622, 5686, 3069, + 3073, 3076, 3307, 629, 5164, 4094, 3082, 4095, 878, 3086, + 3098, 629, 3091, 892, -2668, 3100, -2668, -2668, 3101, 3103, + 3102, 3116, -2896, 3148, 3159, 3288, 4151, 3173, 3185, 4156, + 3209, 4096, 3204, 3276, 3282, 949, 2074, 3296, -2668, 3286, + 632, 3323, 1624, 3343, 3415, 3302, 632, 3364, 5091, 3321, + 3415, 3348, 3349, 3368, 3367, 892, 3399, 3382, -2668, 3369, + 3370, -2668, -2668, -2668, 3383, 3416, 1625, 3308, 1426, 3384, + 3386, 2649, 3385, 3387, 3391, 3400, 3406, 3436, 3418, 3423, + 903, 911, 1789, 892, 3406, 3437, 1627, 3435, 949, 3438, + 949, 3452, 3459, 3460, 3471, 3472, 3308, 3474, 3491, 3500, + 3503, 3505, 3507, 949, 3508, 949, 3514, 3519, 2622, 3524, + 3538, 3525, 3527, 3530, 3309, 3310, 3311, 3312, 3554, 3559, + 1370, 3313, 3314, 1374, -2896, 632, 3561, 3315, 3416, 3952, + 3571, 3578, 3591, 3596, 3597, 5142, 2517, 2518, 2519, 2520, + 2521, 2522, 3617, 3309, 3310, 3311, 3312, 3623, 3968, 3630, + 4097, 892, 3415, 3624, 3625, 3952, 4098, 3688, 3633, 5156, + 3650, 3651, 5354, 3730, 3672, 3641, 3743, 4523, 3648, 3751, + 3671, 1849, 949, 892, 3755, 3752, 5086, 5087, 5088, 5089, + 5090, 912, 3764, 3771, 3778, 3777, 3779, 5205, 3783, 3788, + 4042, 3799, 3810, 3811, 3825, 892, 3829, 3831, 3839, 3858, + 3827, 3857, 3860, 4560, 3852, 3861, 3865, 3859, 3868, 3870, + 3872, 3846, 3873, 5040, 949, 3876, 4527, 3882, 3877, 3897, + 3898, 3899, 3907, 3908, 3909, 3911, 3913, 3927, 3929, 3930, + 3935, 3933, 3943, 949, 3953, 3938, 3957, 949, 3939, 3940, + 3941, 3942, 3959, 3966, 3969, 1947, 3971, 3979, 3998, 1944, + 4000, 4004, 4015, 4012, -2192, 4069, 4072, 1911, 949, 4089, + 3948, 3947, 4709, 3958, 4103, 3996, 4043, 3997, 5212, 1211, + 3999, 4115, 3756, 4007, 632, 4017, 3316, 892, 4024, 4025, + -2670, 4084, 632, 4033, 632, 4029, 4142, 3317, 3416, 4031, + 4032, 4055, 4060, 5722, 632, 4178, 4061, 1214, 632, 632, + 2591, 4068, 4083, 4154, 632, 4099, 5327, 4116, 5266, 4150, + 4118, 4120, 632, 4143, 632, 4148, 4100, 632, 4122, 4155, + 4149, 892, 632, 632, 632, 632, 4182, 4163, 632, 632, + 632, 632, 632, 632, 632, 632, 632, 632, 4188, 4197, + 4216, 632, 632, 632, 4195, 4199, 892, 4208, 4222, 4238, + 4201, 632, 4234, 4227, 4230, 4241, 632, 904, 1789, 4243, + 632, 4229, 4235, 4266, 4255, 4256, 4239, 4267, 632, 4268, + 4272, 632, 4273, 632, 4274, 4279, 4275, 4290, 4291, 4293, + -2670, 4299, 4300, 3416, 4309, 4301, 4315, 4338, 4324, 4344, + 4346, 632, 4340, 4348, 632, 632, 4342, 4352, 4353, 632, + 632, 4357, 4359, 4360, 632, 4361, 632, 4716, 4717, 4718, + 4719, 4362, 5209, 4364, 4381, 4379, 4380, 4382, 4383, 4384, + 4385, 4386, 4387, 4388, 4390, 4389, 4186, 4391, 4392, 4394, + 4395, -2670, 4393, 4398, 4402, 1057, 4404, 1058, 191, 632, + 4405, 2929, 4411, 4414, -2670, 1054, 4418, 632, 1055, 1056, + -2670, 632, 4186, 4432, 4400, 4415, -2670, 4421, 4416, 4426, + 4434, 4469, -2670, 4474, 4481, -2670, 4484, 1615, 4485, -2670, + 4044, 4045, 4046, 4047, 4048, 4049, 4050, 4051, 4052, 4488, + 4492, 4502, 4505, 632, 3416, 4475, 4512, 4503, 4515, 1616, + 4521, 5002, 5003, 4522, 4244, 4526, 4542, 187, 4525, -2670, + 632, 4528, 4559, 4556, 4562, 4574, 892, 4575, 4576, 4577, + 4578, 5393, 4579, 4566, 4596, 4832, 4568, 4597, 632, 4598, + 4581, 2019, 4604, 4605, 4617, -2670, 5305, 5306, 4606, 5308, + 4607, 4609, 4610, 187, 6083, 6084, 4611, 5338, 4612, 949, + 1617, 4842, 4613, 4623, 3225, 4625, 4626, 3413, 2727, 4629, + 4633, 3413, 4634, 4037, -2191, 4695, 4643, 4683, 4666, 4698, + 4667, 3388, 3390, 4696, 4668, 4740, 4699, 3398, 4739, 4747, + 4753, 4754, 4748, 4755, -2670, 4763, 4728, -2670, 5447, 4766, + 4675, 4701, 4768, -2670, 4772, 4783, 4732, 4712, 4791, 4724, + 1789, 4726, 4735, 4812, 4316, 1789, 892, 1789, 4813, 3441, + 3441, 4814, 4737, 4752, 4757, 4815, 4822, 4843, 4823, 4825, + 4826, 4828, 5485, 4832, 4836, 4835, 4855, 4852, 3413, 4868, + 4867, 1789, 892, 4869, 4870, 4871, 4881, 4882, 4883, 4895, + 1618, 4884, 4885, 4886, 3416, 2892, 4897, 4898, 4904, 4916, + -2670, 4917, 4186, 4925, 4941, 5557, 4922, 4942, 4944, 4842, + 4999, 4958, 4947, 3234, 3234, 4957, 4960, 4984, 4961, 4962, + 5013, 772, 1132, 3256, 5020, 5019, 4906, 5032, 949, 4973, + 4994, 949, 3277, 5005, 5042, 5048, 5026, 5025, 4915, 5049, + 5059, 5066, 5068, 5065, 5070, 5072, 1619, 5069, 1132, 5073, + 1620, 5078, 3160, 5092, 5084, 5098, 5099, 787, 5108, 5115, + 5116, 5119, 5118, 5120, 5124, 2891, 5125, 5133, 5121, 4844, + 5145, 5148, 5128, 2073, 629, -2193, 2074, 5139, 629, 5150, + 5149, 4412, 5160, 5154, 3416, -2670, 5173, 5161, 5198, 5188, + 3416, 5169, 5184, 5207, 5221, 632, 5747, 5210, 5749, 1622, + 2063, 5191, 5224, 5202, 2073, 3574, 5211, 2074, 5228, -2670, + 2580, -2670, -2670, 5226, 5234, 5233, 5243, -2896, 5263, 5264, + 5274, 949, 949, 5265, 5268, 892, 5273, 187, 5275, 5294, + 1548, 5287, 949, -2670, 5296, 5300, 1549, 5309, 5290, 632, + 632, 2580, 5301, 2582, 1624, 629, 5317, 3406, -2896, 949, + 5310, 3406, 5461, -2670, 5319, 5318, -2670, -2670, -2670, 5324, + 5328, 5331, 5335, 5461, 5336, 5343, 5346, 5351, 1625, 5355, + 5352, 5353, 892, 5361, 2582, 5051, 5359, 892, 632, 632, + 5370, 1551, 5365, 5375, 5377, 5381, 5384, 5382, 1627, 632, + 4845, 5386, 3416, 4275, 772, 5388, 5389, 5390, 5857, 5255, + 5399, 5414, 772, 5405, 3135, 772, 5407, 5415, 5420, 5421, + 5422, 5426, 4705, 5430, 5757, 5436, 5437, 772, 5604, 5446, + 5438, 5450, 5454, 5460, 5489, 5464, 5492, 5467, 5501, 5509, + 949, 974, 5498, 1789, 5513, 5883, 5486, 1552, 5512, 3413, + 3413, 5517, 5518, 4706, 1553, 5550, 5519, 1554, 5505, 5530, + 5524, 5531, 5572, 5535, 4983, 5580, 5669, 5578, -2896, 632, + 2943, 5541, 5542, -2896, 5543, 5583, 5586, 5610, 5591, 5590, + 5674, 5611, 5615, 632, 1555, 5620, 5622, 5638, 5643, 4584, + 5649, 5918, 5920, 4588, 5650, 5651, 5657, 632, 5672, -2896, + 5298, 5695, 5681, 5703, -2896, 5493, 5673, 5685, 2065, 5697, + 5527, 5705, 2813, 5728, 5729, 5699, 5718, -2896, 5735, 5727, + 1556, 5701, 5741, 5777, 5720, 632, 5702, 5772, 632, 5781, + 5787, 5774, 5795, 5785, 5809, 5813, 632, 632, 5814, 892, + 5815, 5800, 5817, 5816, 632, 632, 5826, 5827, -2896, 632, + 5828, 5834, 5854, 5836, 5829, 5845, 632, 5838, 5855, 632, + 632, 5856, 1810, 5859, 5879, 5869, 632, 4123, 5878, 5881, + 5894, 5882, 2587, 1819, 5898, 5742, 5743, 5917, 5923, 5926, + 5861, 5929, 5933, 5931, 5937, 5940, 632, 5941, 5957, 1827, + 5959, 1657, 5958, 632, 5759, 1558, 5967, 5356, 632, 5960, + 5974, 632, 632, 2587, 5968, 1559, 5973, 5976, 5981, 632, + 5985, 5986, 5991, 5998, 1560, 2073, 629, 629, 2074, 6000, + 632, 6020, 6012, 5912, 6007, 6029, 1561, 6022, 632, 5927, + 5928, 6037, 5213, 5215, 6038, 5694, 6039, 6055, 6057, 6074, + 6085, 6088, 6096, 6102, 6027, 5557, 6104, 6122, 632, 5227, + 2073, 6128, 2580, 2074, 6134, 6129, 6133, 6139, 6141, -2896, + 6163, 6142, 6162, 6173, 6164, -2896, 892, 6186, 1563, 1564, + 6188, 5924, 6197, 772, 6189, 4214, 6201, 6206, 6212, 949, + 6199, 6221, 6207, 6217, 6218, 2582, 3413, 2580, 6227, 3406, + 6230, 5645, 6234, 3413, -2896, 6176, -2896, 1438, 3413, 1545, + 1565, 3413, 4140, 3703, 1651, 3622, 892, 2945, 4285, 2571, + 1650, 4858, 6079, 6080, 4851, 187, 6023, 3742, 4431, 5261, + 2582, 5751, 3790, 949, 5569, 5911, 6103, 5001, 892, 5269, + -2895, 5868, 5621, 5870, 4847, 949, 4848, 5334, 5603, 4232, + 3937, 6014, 5503, 6099, 5932, 5930, 1998, 6036, 6114, 5363, + 4237, 632, 5023, 5052, 5167, 5031, 5892, 4993, 632, 3808, + 3809, 4856, 4491, 5018, 1635, 4303, 5357, -2896, 5609, 1566, + 949, 4531, 5076, 5830, 6159, 3297, 6233, 6219, 5584, 2517, + 2518, 2519, 2520, 2521, 2522, 4437, 6041, 5060, 5529, 5737, + 5900, 3012, 5532, 736, 789, 4817, 1050, 5714, -2896, 1992, + -2896, 892, 4582, 5093, 5095, -2896, 3477, 6155, 3837, 3075, + 2517, 2518, 2519, 2520, 2521, 2522, 4223, 5646, 5062, 5824, + 3071, 3104, 4548, 3434, 3087, 5746, 1121, 632, 3740, 4401, + -2895, 4887, 1161, 4347, 6061, -2896, 6187, 5079, 3767, 1120, + -2896, 2970, 5080, 632, 3422, 5888, 2704, 6202, 1789, -2896, + 4777, 1383, 2592, 629, 5713, 2541, 5216, 6008, 5522, 817, + 629, 818, 4184, 4196, 2653, 629, 5122, 949, 629, 5200, + 6003, 5871, 4730, 3432, 632, 4158, 4745, 5466, 4152, 5684, + 2652, -2895, 5683, 4778, -2896, 2657, 6170, 4153, 5990, 6086, + 4138, 5860, 772, 5912, -2895, 2601, 5368, 5668, 3344, 4677, + -2895, 5872, 4119, 5873, 2587, 3347, -2895, 3262, 4145, 4113, + 3991, 3766, -2895, 4111, 4102, -2895, 4022, 974, 4630, -2895, + 892, 0, 892, 3359, 4930, 0, 3420, 4933, 0, 1434, + 0, 0, 0, 3406, 0, 0, 0, 0, 3406, 2587, + 0, 3406, 0, 0, 0, 5885, 0, 0, 0, -2895, + 0, -2895, 0, 949, 5528, 4191, 4191, 4186, 0, 0, + 5526, 0, 187, 187, 0, 0, 630, 0, 0, 974, + 0, 0, 0, 0, 3413, -2895, 0, 0, 0, 0, + 0, 0, 0, 782, 632, 784, 0, 632, 0, 790, + 632, 632, 632, 0, 798, 806, 810, -2896, 813, 0, + 0, 806, 806, 0, 843, 5571, 846, 0, 0, 0, + 0, 0, 0, 900, 900, 900, 0, 632, 632, 0, + 0, 632, 0, 0, -2895, 0, 0, -2895, 5015, 0, + 0, 0, -2896, -2895, 0, 0, 0, 0, 1120, 0, + 0, 0, 632, 6210, 0, 2943, 0, 0, 632, 0, + 0, 0, 632, 0, 0, 6195, 0, 0, 892, 632, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 632, 0, 0, 632, 0, 0, 0, 0, + 949, 0, 949, 0, 0, 0, 632, 0, 0, 0, + -2895, 0, 0, 0, 0, 0, 0, 0, 0, -2896, + 6195, 0, 0, 0, 5487, 0, 0, 0, 0, 2836, + 5340, 2517, 2518, 2519, 2520, 2521, 2522, 0, 6195, 0, + 0, 0, 0, 0, 0, 0, 3952, 892, 949, 0, + 0, 0, 0, 0, -2896, 0, 6147, 0, 632, 0, + 0, 629, 0, 3298, 0, 0, 2517, 2518, 2519, 2520, + 2521, 2522, 3413, 0, 0, 0, 0, 630, 929, 929, + 0, 0, 929, 0, 0, 0, 940, 0, 843, 0, + 0, 976, 3413, 0, 940, -2895, 0, 940, 1789, 0, + 843, 0, 929, 632, 6220, 843, 3413, 0, 0, 929, + 5746, 843, 0, 0, 0, 0, 0, 0, 0, -2895, + 0, -2895, -2895, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5608, + 0, 0, 0, -2895, 0, 0, 187, 6148, 6149, 0, + 0, 0, 0, 0, 0, 6213, 0, 0, 0, 0, + 0, 0, 0, 0, 632, 0, -2895, 892, -2895, -2895, + 5634, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 71, 184, 0, 186, 191, 175, 0, 80, 83, + 84, 85, 180, 86, 106, 181, 183, 124, 129, 159, + 632, 178, 0, 185, 632, 904, 632, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 5636, 3887, + 632, 0, 0, 0, 0, 0, 0, 632, 1120, 0, + 632, 0, 0, 0, 0, 0, 0, 0, 0, 629, + 0, 632, 0, 1518, 772, 0, 0, 0, 632, 0, + 0, 0, 0, 0, 2974, 0, 0, 0, 0, 629, + 0, 0, 0, 0, 3413, 2985, 0, 4480, 0, 0, + 0, 0, 0, 629, 0, 0, 0, 0, 1519, 0, + 0, 3003, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 892, + 0, 0, 0, 0, 892, 892, 0, 0, 0, 632, + 0, 0, 3406, 0, 0, 632, 632, 949, 0, 0, + 0, 0, 0, 0, 974, 939, 0, 3413, 0, 5281, + 1548, 949, 0, 0, 0, 3077, 1549, 0, 0, 1520, + 0, 5291, 0, 0, 0, 0, 0, 0, 0, 0, + 3089, 632, 0, 1132, 3093, 0, 0, 0, 0, 632, + 3256, 3256, 1789, 0, 0, 3256, 0, 0, 0, 0, + 939, 0, 0, 0, 0, 0, 1521, 0, 0, 0, + 0, 1551, 0, 0, 3112, 1132, 0, 632, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5803, + 0, 0, 0, 0, 0, 0, 3256, 3256, 0, 0, + 0, 0, 0, 0, 3888, 0, 892, 892, 0, 1522, + 0, 0, 0, 0, 772, 0, 0, 0, 0, 0, + 0, 629, 0, 0, 0, 0, 0, 1552, 0, 0, + 632, 0, 0, 0, 1553, 0, 0, 1554, 1548, 632, + 632, 632, 0, 0, 1549, 0, 0, 0, 0, 0, + 0, 1524, 632, 1789, 0, 0, 892, 0, 0, 187, + 0, 632, 0, 632, 1555, 632, 0, 0, 0, 0, + 0, 0, 632, 0, 0, 0, 0, 3413, 0, 5875, + 0, 6019, 0, 1526, 629, 0, 0, 0, 0, 1551, + 187, 0, 0, 632, 0, 0, 0, 0, 0, 0, + 1556, 0, 0, 0, 187, 0, 0, 0, 0, 0, + 0, 3290, 0, 1029, 0, 0, 0, 0, 1789, 843, + 949, 929, 0, 929, 0, 35, 929, 0, 0, 0, + 3889, 0, 0, 976, 0, 0, 0, 0, 1087, 1529, + 929, 0, 0, 0, 0, 1552, 929, 0, 1530, 3952, + 0, 0, 1553, 6068, 6069, 1554, 2771, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1532, 0, + 630, 1657, 3413, 632, 0, 1558, 0, 1533, 2063, 940, + 0, 1534, 1555, 976, 0, 1559, 940, 0, 0, 940, + 0, 0, 0, 0, 1560, 0, 0, 0, 0, 0, + 0, 3890, 0, 0, 0, 929, 1561, 0, 0, 0, + 632, 0, 0, 0, 0, 0, 5786, 0, 1556, 0, + 0, 0, 0, 632, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 632, 0, 0, 1535, 0, 0, 0, + 3891, 0, 0, 632, 629, 1685, 949, 0, 1563, 1564, + 0, 0, 0, 0, 0, 0, 0, 0, 843, 632, + 0, 0, 0, 0, 0, 0, 0, 1231, 0, 0, + 0, 0, 949, 3413, 0, 0, 3952, 0, 3952, 0, + 1686, 0, 0, 0, 0, 0, 0, 1353, 1353, 1657, + 843, 806, 0, 1558, 0, 806, 0, 0, 0, 0, + 0, 0, 0, 1559, 0, 0, 0, 0, 0, 843, + 0, 0, 1560, 632, 843, 6042, 0, 3406, 0, 187, + 1353, 0, 0, 632, 1561, 0, 0, 0, 0, 0, + 0, 632, 632, 0, 0, 0, 0, 632, 0, 629, + 6066, 191, 0, 0, 0, 0, 0, 772, 6063, 1566, + 0, 6064, 6065, 0, 0, 0, 632, 632, 0, 0, + 0, 0, 0, 2751, 0, 1353, 1563, 1564, 0, 0, + 0, 0, 0, 772, 0, 0, 0, 0, 0, 843, + 6127, 0, 0, 0, 0, 0, 0, 772, 0, 0, + 949, 0, 843, 0, 3887, 0, 0, 0, 2752, 772, + 0, 0, 0, 6228, 6229, 0, 0, 843, 0, 187, + 0, 0, 0, 632, 0, 0, 0, 0, 1518, 632, + 0, 0, 0, 3413, 0, 0, 843, 0, 0, 0, + 0, 929, 929, 6066, 191, 0, 0, 632, 632, 0, + 629, 6063, 0, 0, 6064, 6065, 0, 0, 0, 0, + 0, 0, 632, 1519, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 806, 806, 0, 632, 1566, 0, 0, + 0, 0, 0, 0, 0, 1198, 1199, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1353, 1353, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 630, 632, 929, 0, 0, 0, 940, -2686, 0, 976, + 940, 0, 940, 3413, 1520, 0, 0, 929, 0, 3413, + 0, 632, 0, 0, 0, 0, 939, 0, 1789, 0, + 0, 0, 0, 0, 0, 6066, 191, 0, 0, 0, + 0, 843, 0, 6063, 0, 0, 6064, 6065, 929, 929, + 0, 1521, 0, 0, 0, 0, 0, 0, 0, 0, + 632, 632, 0, 772, 0, 632, 0, 0, 0, 632, + 843, 843, 843, 1789, 929, 0, 630, 0, 630, 630, + 0, 632, 632, 0, 0, 0, 0, 0, 0, 3888, + 629, 1789, 0, 0, 1522, 0, 0, 0, 939, 939, + 0, 0, 0, 0, 0, 0, 0, -2686, 0, 0, + 0, 0, 929, 0, 929, 929, 772, 2073, 0, 0, + 2074, 3413, 0, 0, 2075, 2076, 2077, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1524, 0, 0, 0, + 0, 0, 0, 0, 2579, 187, 0, 1353, 0, 0, + 0, 0, 0, 0, 2580, 0, 0, 0, -2686, 0, + 0, 2581, 0, 0, 0, 0, 0, 0, 1526, 0, + 187, -2686, 0, 1972, 0, 1972, 0, -2686, 0, 843, + 629, 782, 0, -2686, 0, 0, 629, 2582, 0, -2686, + 0, 0, -2686, 0, 0, 0, -2686, 0, 0, 0, + 0, 0, 0, 0, 6131, 2008, 0, 843, 0, 0, + 35, 2014, 0, 0, 0, 1528, 0, 0, 3234, 0, + 0, 0, 0, 0, 1529, 1353, -2686, 0, 0, 0, + 0, 0, 0, 1530, 0, 0, 3256, 3256, 3256, 3256, + 0, 2771, 3256, 3256, 3256, 3256, 3256, 3256, 3256, 3256, + 3256, 3256, -2686, 1532, 0, 0, 0, 0, 0, 0, + 1353, 0, 1533, 6126, 0, 0, 1534, 0, 6167, 0, + 4673, 0, 0, 0, 0, 0, 0, 3531, 0, 0, + 0, 0, 0, 3539, 0, 0, 3890, 0, 629, 1353, + 1353, 1353, 0, 1353, 0, 0, 0, 0, 0, 0, + 0, -2686, 2583, 0, -2686, 0, 0, 2584, 3256, 3256, + -2686, 0, 0, 1353, 0, 0, 0, 0, 0, 0, + 0, 1535, 0, 0, 3572, 3891, 0, 0, 6167, 0, + 2585, 2264, 0, 0, 0, 0, 6216, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 939, 939, + 0, 2586, 0, 4734, 843, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 187, 0, -2686, 0, 0, + 772, 0, 1353, 0, 0, 0, 772, 0, 0, 0, + 772, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2322, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2587, 5284, 5285, 2588, + 0, 0, 5288, 5289, 0, 0, 0, 0, 1353, 0, + 0, 0, 1353, 1353, 787, 0, 0, 0, 0, 0, + 0, 0, 3952, 843, 843, 843, 2667, 0, 1353, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -2686, 0, 1518, 0, 0, 0, 0, 0, + 0, 806, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -2686, 0, -2686, -2686, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1519, + 0, 0, 0, 0, 0, 0, 2759, 0, 0, 2589, + -2686, 806, 0, 0, 929, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 843, 2787, 0, + -2686, 0, 0, -2686, -2686, -2686, 843, 0, 0, 929, + 0, 0, 0, 3795, 0, 0, 0, 0, 0, 2073, + 0, 0, 2074, 0, 0, 0, 2075, 2076, 2077, 0, + 1520, 0, 0, 0, 0, 0, 976, 0, 843, 0, + 0, 806, 0, 0, 2855, 2855, 2579, 0, 2855, 0, + 0, 0, 0, 0, 0, 0, 2580, 0, 806, 0, + 0, 843, 0, 2581, 843, 0, 0, 1521, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2513, 0, 0, 0, 0, 929, 0, 0, 2582, + 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, + 0, 0, 0, 0, 843, 0, 2073, 4014, 0, 2074, + 1522, 0, 0, 2075, 2076, 2077, 929, 929, 929, 929, + 843, 0, 0, 0, 0, 0, 0, 0, 0, 3256, + 0, 0, 0, 2579, 843, 0, 0, 0, 0, 0, + 0, 0, 0, 2580, 0, 1353, 1353, 1353, 1523, 0, + 2581, 0, 1524, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2582, 0, 0, 0, + 0, 0, 0, 1525, 1526, 0, 0, 0, 0, 0, + 0, 0, 0, 3967, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2583, 0, 0, 0, 3977, 2584, + 0, 0, 0, 3982, 0, 0, 0, 0, 0, 0, + 0, 0, 1527, 0, 0, 0, 35, 0, 0, 0, + 0, 1528, 2585, 2264, 0, 0, 0, 0, 0, 0, + 1529, 0, 4003, 0, 843, 0, 0, 0, 0, 1530, + 0, 0, 0, 2586, 0, 843, 0, 1531, 0, 0, + 0, 0, 0, 929, 929, 0, 0, 0, 0, 1532, + 0, 0, 0, 0, 0, 0, 0, 0, 1533, 929, + 0, 0, 1534, 0, 0, 0, 0, 0, 772, 0, + 0, 2583, 0, 0, 2322, 0, 2584, 843, 2855, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2587, 0, + 0, 2588, 0, 929, 929, 929, 929, 0, 0, 2585, + 2264, 0, 843, 0, 0, 0, 0, 0, 0, 843, + 0, 0, 3068, 0, 0, 0, 0, 1535, 0, 0, + 2586, 0, 0, 0, 891, 0, 2073, 630, 0, 2074, + 630, 0, 5147, 2075, 2076, 2077, 0, 0, 0, 0, + 940, 940, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 976, 976, 2579, 0, 940, 0, 0, 940, 0, + 0, 2322, 0, 2580, 0, 0, 0, 0, 0, 0, + 2581, 0, 0, 929, 929, 2587, 0, 0, 2588, 0, + 929, 2589, 843, 2073, 0, 0, 2074, 0, 0, 0, + 2075, 2076, 2077, 0, 0, 0, 2582, 0, 0, 1972, + 0, 0, 0, 0, 0, 0, 929, 0, 940, 0, + 2579, 3151, 940, 940, 0, 843, 843, 0, 929, 0, + 2580, 0, 0, 0, 0, 843, 0, 2581, 0, 0, + 0, 0, 843, 0, 0, 843, 3068, 0, 0, 782, + 0, 0, 782, 3188, 0, 0, 0, 1353, 0, 1353, + 0, 0, 0, 2582, 1353, 1353, 0, 0, 0, 0, + 0, 1353, 1353, 1353, 1353, 1353, 1353, 1353, 2589, 0, + 1353, 0, 1353, 976, 1353, 1353, 1353, 1353, 1353, 1353, + 0, 0, 1353, 2513, 1353, 1353, 0, 0, 1353, 0, + 0, 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, + 2522, 0, 0, 0, 0, 1353, 1353, 1353, 4028, 0, + 0, 2583, 0, 0, 0, 0, 2584, 0, 0, 0, + 0, 0, 0, 1353, 0, 0, 0, 4247, 0, 0, + 0, 0, 0, 0, 0, 4250, 0, 0, 0, 2585, + 2264, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 772, 0, 0, 0, 0, 0, 0, 0, + 2586, 0, 0, 929, 0, 0, 698, 0, 2583, 0, + 2513, 0, 0, 2584, 0, 786, 0, 0, 0, 2514, + 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, + 0, 0, 4026, 0, 0, 4027, 2585, 2264, 0, 0, + 0, 2322, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2587, 0, 2586, 2588, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 4333, 0, 4335, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1908, 0, 0, 0, 0, + 0, 1912, -136, 0, 0, 0, 0, 0, 2322, 0, + 0, 1923, 0, 0, 0, 1926, 0, 1353, 0, 1929, + 0, 1931, 2587, 0, 1, 2588, 0, 1939, 0, 0, + 0, 0, 0, 1945, 0, 2, 1948, 3, 4, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 5, 0, 0, 2589, 0, + 0, 0, 0, 0, 1353, 6, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4397, 7, 0, 8, + 9, 0, 0, 0, 0, 0, 10, 0, 11, 0, + 0, 5909, 0, 0, 0, 0, 0, 0, 0, 0, + 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2589, 0, 1353, 4419, 14, + 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 16, 0, 17, + 0, 3256, 0, 18, 0, 0, 0, 0, 0, 19, + 0, 0, 0, 0, 0, 0, 0, 20, 0, 21, + 2513, 0, 0, 0, 0, 0, 22, 0, 0, 2514, + 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, + 0, 0, 0, 0, 23, 4079, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3256, 0, 0, 0, + 0, 24, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3572, 0, 0, 2513, 0, 0, + 0, 0, 0, 0, 0, 0, 2514, 2515, 2516, 2517, + 2518, 2519, 2520, 2521, 2522, 0, 0, 0, 0, 3285, + 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, + 0, 0, 0, 0, 27, 0, 0, 0, 4561, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1548, 0, + 0, 0, 0, 0, 1549, 0, 29, 0, 0, 0, + 0, 0, 0, 0, 1353, 1353, 1353, 1353, 1353, 1353, + 1353, 1353, 1353, 0, 1353, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 843, 1353, 0, 0, 1353, 0, + 0, 0, 0, 0, 0, 843, 0, 0, 891, 1551, + 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 4618, 0, 0, 0, 31, 0, 0, 0, 0, 0, + 32, 33, 0, 34, 891, 0, 0, 843, 35, 1353, + 0, 0, 929, 1353, 36, 0, 1353, 37, 1353, 0, + 0, 1353, 0, 0, 38, 1353, 0, 0, 0, 0, + 0, 39, 40, 0, 4644, 1552, 0, 0, 0, 41, + 0, 0, 1553, 42, 0, 1554, 0, 0, 3417, 2073, + 0, 0, 2074, 43, 843, 843, 2075, 2076, 2077, 4665, + 0, 0, 0, 0, 0, 1353, 0, 0, 0, 44, + 0, 0, 1555, 0, 1353, 1353, 2579, 0, 0, 0, + 0, 0, 0, 0, 3256, 0, 2580, 0, 843, 45, + 0, 0, 0, 2581, 0, 0, 3461, 0, 3466, 0, + 46, 0, 0, 0, 0, 0, 47, 0, 1556, 0, + 0, 48, 0, 0, 3256, 0, 0, 0, 0, 2582, + 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 782, 0, + 782, 0, 0, 0, 0, 0, 891, 0, 50, 0, + 51, 52, 53, 54, 55, 0, 0, 1353, 0, 6193, + 0, 0, 0, 0, 0, 0, 0, 56, 630, 0, + -136, 940, 976, 940, 940, 0, 0, 929, 0, 1557, + 843, 0, 0, 1558, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1559, 1051, 0, 0, 0, 0, 0, + 0, 806, 1560, 0, 6193, 0, 0, 0, 0, 1548, + 0, 0, 2787, 0, 1561, 1549, 0, 0, 0, 0, + 3575, 843, 6193, 0, 0, 0, 0, 3586, 0, 0, + 1655, 0, 0, 0, 2583, 0, 843, 0, 0, 2584, + 0, 0, 0, 0, 1119, 698, 0, 0, 0, 0, + 0, 0, 0, 2829, 0, 0, 1563, 1564, 843, 0, + 1551, 0, 2585, 2264, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 843, + 0, 0, 0, 2586, 0, 0, 0, 0, 2830, 1704, + 0, 0, 806, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 891, 0, + 0, 0, 0, 0, 1656, 929, 1552, 0, 929, 891, + 0, 0, 0, 1553, 2322, 0, 1554, 0, 0, 0, + 0, 0, 0, 0, 0, 891, 0, 0, 2587, 0, + 1218, 2588, 0, 0, 843, 843, 3256, 0, 0, 0, + 0, 0, 0, 1555, 0, 0, 0, 1566, 0, 3729, + 1240, 3732, 3734, 0, 0, 0, 0, 0, 1356, 0, + 0, 1365, 1119, 1369, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1556, + 0, 0, 1353, 1353, 1353, 0, 0, 0, 1353, 0, + 0, 0, 0, 0, 0, 0, 929, 0, 0, 0, + 0, 0, 0, 0, 0, 2073, 0, 0, 2074, 929, + 0, 0, 2075, 2076, 2077, 1353, 0, 929, 0, 0, + 3099, 2589, 0, 0, 0, 0, 0, 0, 3106, 0, + 2787, 0, 2579, 0, 0, 843, 0, 0, 0, 0, + 0, 3834, 2580, 0, 782, 0, 0, 0, 0, 2581, + 1657, 0, 0, 0, 1558, 0, 929, 3845, 0, 0, + 0, 0, 0, 0, 1559, 0, 0, 3729, 5004, 0, + 0, 0, 0, 1560, 0, 2582, 0, 929, 0, 3867, + 0, 0, 891, 0, 0, 1561, 0, 0, 0, 0, + 0, 1548, 0, 0, 0, 0, 0, 1549, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 5989, 0, 0, + 0, 0, 1655, 0, 0, 0, 0, 0, 929, 0, + 929, 0, 929, 2513, 1658, 0, 0, 1563, 1564, 0, + 0, 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, + 2522, 0, 1551, 0, 0, 4433, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1972, 0, 0, 0, 1659, + 0, 0, 0, 0, 1119, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2583, 0, 0, 0, 2073, 2584, 1656, 2074, 1552, 0, + 0, 2075, 2076, 2077, 0, 1553, 0, 0, 1554, 630, + 929, 0, 940, 0, 940, 940, 0, 929, 2585, 2264, + 0, 2579, 0, 0, 1353, 0, 0, 0, 1566, 1353, + 0, 2580, 0, 0, 1518, 1555, 0, 0, 2581, 2586, + 3256, 3256, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2582, 0, 0, 0, 0, 1519, + 0, 1556, 1353, 1353, 1353, 0, 0, 1353, 0, 0, + 2322, 0, 0, 0, 0, 1353, 1353, 1353, 1353, 0, + 0, 0, 0, 0, 2587, 0, 0, 2588, 0, 0, + 0, 1353, 0, 0, 1353, 0, 1353, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1353, 1353, + 0, 0, 1353, 0, 0, 0, 0, 0, 0, 0, + 1520, 0, 0, 0, 0, 0, 0, 2688, 0, 0, + 0, 976, 1657, 1353, 0, 1353, 1558, 1353, 0, 0, + 0, 0, 0, 0, 0, 1997, 1559, 0, 0, 0, + 0, 1518, 0, 0, 0, 1560, 1353, 1521, 0, 4125, + 0, 0, 0, 843, 0, 0, 0, 1561, 0, 2583, + 0, 0, 1119, 0, 2584, 0, 0, 2589, 0, 0, + 0, 0, 0, 0, 843, 0, 1519, 0, 0, 5247, + 0, 0, 0, 0, 2688, 0, 0, 2585, 2264, 0, + 1522, 0, 0, 0, 0, 0, 3700, 0, 0, 1563, + 1564, 0, 630, 0, 0, 3417, 4162, 0, 2586, 0, + 4162, 4176, 4162, 0, 0, 0, 0, 0, 1353, 5270, + 0, 0, 0, 1353, 0, 891, 0, 0, 0, 0, + 0, 3701, 1524, 0, 0, 0, 0, 1520, 1353, 0, + 0, 5286, 0, 0, 2068, 0, 0, 0, 0, 2322, + 0, 0, 3417, 2071, 0, 0, 4207, 0, 891, 4210, + 3417, 0, 3466, 2587, 1526, 0, 2588, 0, 2539, 2513, + 0, 0, 0, 0, 1521, 0, 0, 0, 2514, 2515, + 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, 1119, + 0, 4619, 2558, 2559, 0, 0, 0, 1119, 1119, 0, + 1566, 0, 0, 1353, 0, 0, 35, 0, 2770, 0, + 0, 1528, 0, 0, 5314, 0, 0, 1522, 0, 0, + 1529, 0, 0, 0, 0, 0, 0, 0, 0, 1530, + 0, 0, 0, 929, 929, 0, 0, 2771, 1704, 1704, + 1704, 0, 0, 0, 0, 0, 0, 0, 0, 1532, + 0, 0, 0, 0, 0, 1523, 2589, 0, 1533, 1524, + 0, 0, 1534, 0, 0, 0, 0, 699, 0, 0, + 0, 0, 3189, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1548, 0, 0, 0, 0, 0, 1549, + 1589, 1526, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1535, 0, 0, + 0, 0, 0, 702, 3190, 0, 0, 0, 0, 1590, + 0, 0, 0, 35, 1551, 5398, 0, 0, 1528, 703, + 0, 843, 0, 0, 0, 0, 0, 1529, 0, 0, + 891, 2855, 0, 0, 0, 0, 1530, 1034, 2513, 0, + 3371, 891, 0, 0, 1591, 0, 0, 2514, 2515, 2516, + 2517, 2518, 2519, 2520, 2521, 2522, 1532, 891, 0, 0, + 4686, 3191, 0, 0, 0, 1533, 0, 0, 0, 1534, + 1552, 0, 706, 0, 0, 0, 0, 1553, 0, 0, + 1554, 707, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 708, 0, 0, 0, 0, 0, + 3192, 0, 0, 0, 0, 0, 0, 1555, 0, 0, + 0, 891, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1535, 0, 891, 1037, 0, 891, + 891, 0, 2896, 0, 0, 0, 1353, 0, 0, 0, + 2904, 0, 1353, 1556, 0, 0, 0, 0, 0, 0, + 0, 4397, 0, 929, 0, 0, 0, 0, 3193, 0, + 891, 891, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 712, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 843, 843, 843, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 843, 0, 0, + 0, 0, 0, 0, 1557, 0, 0, 0, 1558, 0, + 0, 1353, 0, 0, 0, 0, 0, 0, 1559, 0, + 0, 0, 0, 0, 0, 0, 0, 1560, 0, 1972, + 843, 843, 0, 0, 0, 843, 0, 0, 0, 1561, + 0, 0, 0, 0, 0, 213, 3194, 843, 1704, 717, + 0, 0, 0, 0, 0, 0, 0, 1704, 0, 0, + 1704, 0, 0, 0, 0, 2073, 0, 0, 2074, 0, + 0, 0, 2075, 2076, 2077, 0, 1041, 0, 1562, 3195, + 0, 1563, 1564, 0, 0, 0, 721, 891, 0, 0, + 0, 0, 2579, 722, 0, 0, 723, 0, 0, 0, + 0, 0, 2580, 929, 0, 0, 0, 0, 0, 2581, + 0, 0, 0, 1565, 0, 724, 0, 3151, 4583, 0, + 0, 0, 1043, 0, 0, 0, 0, 0, 843, 726, + 0, 0, 1044, 0, 0, 2582, 728, 0, 0, 0, + 0, 843, 0, 0, 0, 3033, 0, 0, 0, 3038, + 0, 3196, 0, 0, 0, 0, 0, 0, 0, 0, + 1353, 0, 0, 0, 0, 0, 0, 0, 1353, 0, + 1353, 0, 0, 0, 0, 0, 0, 733, 0, 0, + 1353, 0, 1566, 0, 1353, 1353, 0, 0, 0, 0, + 1353, 0, 0, 0, 0, 0, 0, 0, 1353, 0, + 1353, 0, 0, 1353, 0, 0, 0, 0, 1353, 1353, + 1353, 1353, 0, 0, 1353, 1353, 1353, 1353, 1353, 1353, + 1353, 1353, 1353, 1353, 0, 0, 0, 1353, 1353, 1353, + 0, 0, 0, 0, 0, 0, 0, 1353, 0, 0, + 0, 0, 1353, 0, 0, 0, 1353, 0, 0, 0, + 2583, 0, 0, 0, 1353, 2584, 0, 1353, 0, 1353, + 0, 0, 1998, 0, 0, 0, 0, 1998, 1998, 0, + 0, 0, 0, 0, 0, 0, 0, 1353, 2585, 2264, + 1353, 1353, 0, 0, 0, 1353, 1353, 0, 0, 0, + 1353, 0, 1353, 4715, 0, 0, 0, 0, 0, 2586, + 0, 843, 843, 843, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3222, + 0, 4162, 4176, 4162, 0, 1353, 4162, 0, 0, 4736, + 0, 0, 0, 3417, 0, 0, 0, 3417, 0, 0, + 2322, 3910, 0, 4751, 0, 0, 3916, 0, 3917, 0, + 0, 0, 0, 0, 2587, 0, 0, 2588, 3923, 0, + 0, 3924, 0, 3925, 3926, 0, 0, 3928, 0, 1353, + 0, 3931, 0, 3932, 0, 0, 3934, 0, 0, 0, + 5825, 0, 0, 0, 3466, 0, 1353, 0, 1548, 0, + 0, 0, 0, 0, 1549, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 4799, 1972, 1972, 0, 0, 1972, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1518, 0, 0, 0, 0, 0, 0, 5865, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1551, + 3973, 0, 0, 0, 2787, 4831, 0, 2589, 0, 0, + 0, 0, 0, 0, 0, 0, -136, 1519, 0, 0, + 0, 0, 0, 4854, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, + 0, 3, 4, 0, 0, 1552, 0, 0, 0, 0, + 0, 0, 1553, 0, 0, 1554, 0, 0, 0, 5, + 0, 0, 0, 0, 0, 0, 4903, 0, 1520, 6, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 7, 1555, 8, 9, 0, 0, 0, 0, 0, + 10, 0, 11, 0, 0, 0, 0, 0, 0, 2513, + 0, 1704, 0, 0, 12, 1521, 13, 0, 2514, 2515, + 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, 1556, 0, + 0, 4793, 4948, 14, 0, 0, 15, 0, 0, 0, + 0, 0, 0, 0, 0, 928, 930, 0, 0, 933, + 0, 16, 0, 17, 0, 0, 0, 18, 1522, 0, + 0, 0, 0, 19, 0, 929, 0, 0, 0, 991, + 0, 20, 0, 21, 0, 0, 1001, 0, 0, 929, + 22, 1353, 0, 0, 0, 0, 0, 0, 843, 0, + 0, 0, 0, 0, 4992, 0, 1523, 0, 23, 1657, + 1524, 0, 0, 1558, 0, 2787, 0, 0, 0, 0, + 0, 0, 0, 1559, 0, 24, 0, 0, 0, 0, + 843, 0, 1560, 0, 0, 3417, 3845, 0, 0, 0, + 0, 1606, 1526, 3729, 1561, 0, 0, 0, 0, 0, + 0, 0, 5041, 0, 0, 0, 0, 0, 0, 0, + 0, 3473, 843, 0, 0, 2688, 3479, 0, 0, 0, + 0, 0, 25, 26, 1353, 1353, 0, 0, 27, 0, + 1607, 0, 0, 3567, 35, 1353, 1563, 1564, 0, 1528, + 0, 0, 28, 0, 0, 0, 1972, 843, 1529, 0, + 0, 0, 0, 0, 0, 0, 0, 1530, 0, 0, + 29, 0, 0, 0, 843, 1608, 0, 0, 1565, 0, + 0, 0, 0, 891, 0, 0, 0, 1532, 0, 891, + 0, 0, 0, 0, 0, 0, 1533, 4242, 0, 0, + 1534, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 30, 1353, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 31, 1353, + 891, 0, 0, 0, 32, 33, 0, 34, 0, 0, + 0, 0, 35, 1353, 0, 0, 0, 1566, 36, 0, + 0, 37, 0, 0, 0, 1535, 0, 0, 38, 0, + 0, 0, 0, 0, 0, 39, 40, 0, 4292, 0, + 4294, 1353, 0, 41, 1353, 0, 3366, 42, 0, 0, + 0, 0, 1353, 1353, 0, 0, 0, 43, 0, 0, + 1353, 1353, 0, 0, 0, 1353, 0, 0, 0, 0, + 0, 0, 1353, 44, 0, 1353, 1353, 0, 0, 0, + 0, 0, 1353, 0, 0, 0, 843, 843, 843, 843, + 0, 0, 0, 45, 0, 0, 0, 0, 0, 0, + 0, 0, 630, 0, 46, 4162, 0, 0, 0, 3417, + 47, 0, 0, 0, 3417, 48, 0, 3417, 630, 0, + 3729, 0, 5204, 0, 0, 1353, 0, 976, 49, 0, + 0, 0, 0, 0, 0, 0, 1353, 0, 0, 0, + 4207, 0, 0, 0, 1353, 0, 3466, 0, 2073, 0, + 0, 2074, 50, 0, 0, 2075, 2076, 2077, 0, 0, + 0, 782, 0, 0, 1353, 0, 0, 0, 0, 0, + 0, 56, 0, 0, -136, 2579, 0, 1704, 0, 0, + 0, 0, 4396, 0, 1548, 2580, 0, 0, 4403, 0, + 1549, 0, 2581, 0, 0, 1119, 0, 0, 2787, 0, + 0, 0, 5259, 0, 0, 0, 0, 0, 0, 891, + 0, 0, 0, 0, 0, 0, 0, 0, 2582, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1551, 0, 0, 1061, 0, + 1064, 0, 0, 1066, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1369, 0, 0, 1092, 0, 0, + 0, 0, 0, 1096, 0, 0, 0, 1353, 0, 0, + 0, 0, 0, 0, 1353, 0, 0, 0, 0, 0, + 0, 0, 2688, 0, 0, 0, 2688, 0, 0, 0, + 0, 1552, 0, 0, 0, 0, 0, 929, 1553, 0, + 0, 1554, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2073, 929, 0, 2074, 0, 0, 0, 2075, 2076, + 2077, 0, 0, 0, 0, 0, 0, 0, 1555, 0, + 0, 0, 0, 2583, 1369, 0, 0, 0, 2584, 0, + 0, 0, 0, 1353, 0, 0, 0, 0, 2580, 0, + 0, 0, 0, 0, 0, 2581, 0, 0, 1369, 630, + 0, 2585, 2264, 0, 1556, 0, 2787, 0, 0, 0, + 0, 0, 4565, 0, 4567, 1972, 4569, 0, 0, 0, + 0, 2582, 2586, 0, 0, 0, 0, 0, 0, 891, + 3845, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 929, 891, 3867, 0, 0, 0, 891, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2322, 0, 3738, 0, 0, 0, 0, + 0, 843, 0, 0, 0, 1657, 0, 2587, 891, 1558, + 2588, 0, 843, 0, 0, 0, 0, 0, 0, 1559, + 0, 0, 0, 0, 0, 0, 0, 0, 1560, 0, + 0, 0, 3770, 0, 3770, 0, 3770, 3770, 0, 0, + 1561, 3770, 3770, 3770, 0, 3770, 3770, 3770, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2583, 0, 0, 0, + 1353, 2584, 0, 1353, 0, 0, 1353, 1353, 1353, 3745, + 0, 0, 1563, 1564, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2585, 2264, 0, 0, 0, 3847, + 2589, 0, 0, 1353, 1353, 0, 0, 1353, 0, 0, + 0, 0, 0, 0, 3746, 2586, 0, 0, 1580, 1581, + 0, 0, 0, 0, 3875, 0, 0, 0, 1353, 0, + 0, 0, 0, 0, 1353, 0, 0, 0, 3417, 0, + 0, 0, 5204, 0, 0, 1353, 0, 5484, 0, 0, + 0, 0, 0, 0, 0, 0, 2322, 0, 4799, 0, + 0, 1353, 0, 0, 0, 0, 0, 0, 0, 0, + 2587, 0, 4799, 976, 929, 0, 929, 0, 0, 0, + 0, 0, 0, 1566, 0, 0, 0, 0, 0, 1808, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2513, 0, 1820, 0, 0, 0, 0, 0, + 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, + 0, 0, 2967, 0, 940, 976, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1842, 1843, 0, 0, 0, + 0, 0, 0, 0, 1548, 0, 0, 0, 0, 0, + 1549, 0, 0, 0, 0, 2688, 0, 0, 3479, 0, + 3479, 1880, 0, 2589, 0, 2688, 0, 0, 0, 940, + 0, 2073, 0, 0, 2074, 0, 0, 0, 2075, 2076, + 2077, 4992, 0, 0, 0, 0, 843, 0, 0, 0, + 0, 843, 0, 0, 0, 1551, 0, 0, 2579, 0, + 2787, 1918, 1920, 0, 0, 0, 0, 0, 2580, 0, + 843, 0, 0, 891, 5041, 2581, 0, 5623, 0, 0, + 0, 891, 0, 0, 0, 0, 0, 0, 929, 843, + 4799, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2582, 0, 0, 0, 0, 2688, 0, 0, 0, + 0, 1552, 0, 0, 0, 0, 0, 0, 1553, 0, + 0, 1554, 0, 0, 0, 2513, 1353, 0, 0, 0, + 1353, 0, 1353, 0, 2514, 2515, 2516, 2517, 2518, 2519, + 2520, 2521, 2522, 0, 0, 0, 1353, 0, 1555, 0, + 0, 0, 0, 630, 0, 0, 1353, 0, 0, 0, + 5692, 0, 0, 0, 0, 0, 0, 1353, 0, 0, + 0, 0, 0, 0, 1353, 0, 891, 0, 891, 0, + 0, 0, 2073, 0, 1556, 2074, 1119, 0, 0, 2075, + 2076, 2077, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 843, + 0, 0, 0, 0, 0, 0, 2583, 0, 0, 2580, + 0, 2584, 0, 0, 0, 0, 2581, 0, 0, 0, + 0, 0, 0, 0, 0, 1353, 0, 0, 0, 0, + 0, 1353, 1353, 0, 2585, 2264, 929, 929, 929, 929, + 0, 0, 2582, 0, 0, 1657, 0, 0, 0, 1558, + 0, 0, 0, 0, 0, 2586, 0, 0, 0, 1559, + 0, 0, 891, 0, 0, 0, 0, 1353, 1560, 0, + 0, 638, 0, 0, 0, 630, 1548, 687, 638, 0, + 1561, 0, 1549, 739, 0, 638, 0, 0, 0, 1704, + 0, 638, 0, 792, 0, 1704, 2322, 0, 0, 0, + 843, 0, 0, 3417, 891, 0, 0, 0, 0, 0, + 2587, 0, 854, 854, 0, 0, 0, 0, 0, 4260, + 0, 0, 1563, 1564, 0, 0, 0, 1551, 843, 0, + 0, 0, 3479, 0, 0, 0, 1119, 0, 0, 0, + 0, 0, 0, 0, 5083, 0, 0, 5085, 0, 0, + 0, 0, 0, 0, 4261, 0, 1353, 2583, 0, 0, + 0, 0, 2584, 0, 0, 1353, 1353, 1353, 0, 0, + 0, 1972, 0, 0, 0, 3729, 5100, 0, 1353, 0, + 0, 0, 0, 1552, 0, -2896, -2896, 1353, 0, 1353, + 1553, 1353, 5484, 1554, 0, 0, 0, 0, 4799, 0, + 891, 0, 0, 2589, 0, 0, 2586, 0, 1972, 0, + 976, 0, 0, 0, 4308, 0, 0, 0, 0, 1353, + 1555, 0, 3479, 1566, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2769, 0, 0, 891, 0, 0, -2896, 0, 0, + 0, 0, 0, 0, 1972, 1972, 1556, 0, 0, 0, + 0, 2587, 0, 931, 0, 0, 2808, 935, 0, 0, + 0, 0, 4356, 0, 0, 978, 0, 0, 980, 0, + 0, 985, 986, 0, 989, 929, 992, 0, 0, 998, + 0, 1000, 0, 0, 0, 0, 0, 0, 0, 5953, + 0, 0, 0, 0, 0, 2513, 0, 0, 0, 0, + 0, 0, 0, 0, 2514, 2515, 2516, 2517, 2518, 2519, + 2520, 2521, 2522, 0, 0, 0, 891, 1657, 0, 0, + 0, 1558, 0, 0, 0, 0, 1353, 0, 0, 0, + 4399, 1559, 0, 2898, 0, 0, 0, 0, 0, 1353, + 1560, 0, 0, 5692, 2589, 0, 0, 0, 0, 1353, + 0, 0, 1561, 0, 0, 0, 0, 0, 3466, 1353, + 891, 0, 0, 2924, 2925, 2926, 2927, 0, 0, 0, + 0, 0, 0, 0, 5246, 940, 3770, 0, 0, 0, + 0, 0, 0, 0, 0, 891, 0, 0, 4430, 4430, + 929, 4318, 0, 0, 1563, 1564, 0, 1972, 4446, 0, + 0, 0, 0, 1119, 0, 1119, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 5271, 5272, 0, + 0, 0, 2787, 0, 0, 0, 4319, 0, 0, 1353, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 4799, + 0, 0, 0, 0, 0, 0, 2513, 940, 940, 6071, + 0, 4501, 0, 1353, 0, 2514, 2515, 2516, 2517, 2518, + 2519, 2520, 2521, 2522, 0, 1972, 1972, 6081, 0, 0, + 0, 0, 1353, 1353, 0, 0, 0, 0, 6087, 0, + 0, 0, 0, 0, 0, 0, 4537, 1119, 0, 0, + 0, 0, 0, 0, 0, 1566, 0, 0, 0, 0, + 929, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2980, 2981, 5315, 5316, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2998, 0, 0, 5953, + 929, 929, 0, 0, 0, 4799, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2688, 0, 0, 0, 0, + 0, 0, 0, 630, 1353, 0, 0, 0, 0, 0, + 3041, 3042, 3043, 3044, 0, 0, 0, 0, 1353, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1353, 2073, 0, 0, 2074, 0, 0, 0, + 2075, 2076, 2077, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2579, 0, 0, 0, 0, 6165, 6166, 630, 6169, 5692, + 2580, 0, 3466, 0, 0, 0, 0, 2581, 0, 0, + 0, 0, 0, 0, 929, 3479, 0, 4799, 0, 0, + 0, 3118, 5409, 0, 0, 5411, 5412, 3122, 0, 0, + 0, 0, 0, 2582, 0, 0, 0, 4207, 0, 0, + 0, 3479, 0, 0, 0, 5417, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1353, 630, 0, 0, + 0, 1353, 4688, 0, 0, 630, 2073, 0, 0, 2074, + 0, 0, 0, 2075, 2076, 2077, 1028, 940, 940, 0, + 0, 6231, 0, 0, 0, 0, 0, 1065, 0, 0, + 0, 1069, 0, 2579, 0, 0, 0, 0, 1082, 1083, + 0, 0, 1089, 2580, 1093, 1094, 0, 0, 0, 0, + 2581, 0, 0, 0, 0, 0, 0, 0, 0, 1116, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2582, 1129, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2583, 0, + 0, 941, 951, 2584, 0, 0, 0, 0, 1157, 941, + 1159, 951, 941, 0, 0, 0, 0, 0, 0, 0, + 1175, 0, 0, 0, 0, 951, 2585, 2264, 0, 0, + 0, 0, 0, 0, 891, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2586, 0, 0, + 0, 0, 0, 638, 0, 0, 0, 0, 0, 0, + 3300, 0, 0, 0, 0, 0, 2073, 0, 0, 2074, + 0, 0, 0, 2075, 2076, 2077, 0, 0, 0, 0, + 0, 3479, 0, 0, 0, 0, 2688, 0, 2322, 0, + 0, 0, 0, 2579, 0, 0, 0, 0, 0, 0, + 0, 2583, 2587, 2580, 0, 2588, 2584, 0, 0, 0, + 2581, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2585, + 2264, 0, 0, 0, 854, 0, 2582, 0, 0, 0, + 0, 4446, 0, 0, 0, 0, 0, 0, 0, 0, + 2586, 0, 0, 0, 0, 0, 0, 2073, 0, 0, + 2074, 0, 0, 0, 2075, 2076, 2077, 4893, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 4908, 0, 2579, 0, 4909, 0, 4910, 0, + 0, 2322, 0, 0, 2580, 2589, 0, 0, 0, 0, + 0, 2581, 0, 0, 0, 2587, 0, 0, 2588, 0, + 0, 0, 0, 0, 0, 0, 0, 1509, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2582, 0, 0, + 0, 0, 0, 0, 4950, 0, 0, 0, 891, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 3770, 2583, 0, 0, 0, 3770, 2584, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2585, + 2264, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1688, 0, 5716, 0, 0, 0, 2513, 2589, 0, + 2586, 0, 0, 0, 0, 0, 2514, 2515, 2516, 2517, + 2518, 2519, 2520, 2521, 2522, 0, 1809, 0, 0, 5021, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1821, 0, 1822, 0, 0, 0, 0, 0, 0, + 0, 2322, 2583, 1825, 0, 0, 5752, 2584, 0, 0, + 1835, 0, 0, 0, 5055, 2587, 0, 4446, 2588, 0, + 0, 0, 0, 0, 0, 891, 0, 0, 0, 0, + 2585, 2264, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2586, 0, 1887, 0, 1889, 0, 0, 0, 0, + 2513, 0, 0, 0, 0, 891, 0, 0, 0, 2514, + 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, + 0, 0, 5129, 0, 0, 0, 0, 891, 0, 0, + 0, 0, 2322, 5104, 5104, 5104, 5104, 951, 5104, 5104, + 5104, 5104, 5104, 0, 0, 0, 2587, 0, 2589, 2588, + 0, 0, 0, 0, 0, 0, 951, 0, 0, 5841, + 0, 0, 951, 0, 0, 0, 0, 0, 0, 638, + 0, 638, 0, 638, 951, 638, 0, 638, 638, 638, + 0, 0, 0, 0, 638, 0, 0, 0, 0, 0, + 951, 0, 0, 0, 0, 0, 1993, 0, 0, 0, + 891, 0, 0, 0, 941, 951, 0, 0, 0, 3300, + 0, 941, 0, 951, 941, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 951, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 951, 0, 2589, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2513, 0, 0, 5181, 0, 5183, 0, 0, 0, 2514, + 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 2073, 0, + 0, 2074, 5168, 0, 0, 2075, 2076, 2077, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 951, 0, 0, 0, 0, 2579, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2580, 0, 0, 0, 0, + 0, 0, 2581, 0, 0, 0, 0, 0, 951, 5396, + 0, 891, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2582, 2073, + 0, 2513, 2074, 951, 0, 0, 2075, 2076, 2077, 0, + 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, + 0, 0, 0, 5172, 0, 0, 2579, 0, 0, 0, + 0, 0, 0, 0, 3540, 0, 2580, 0, 854, 0, + 0, 0, 0, 2581, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 951, 0, 0, 0, 0, 2073, 2582, + 0, 2074, 0, 0, 0, 2075, 2076, 2077, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2579, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2580, 0, 0, 0, 0, + 0, 0, 2581, 2583, 0, 0, 0, 891, 2584, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5312, 5313, 0, 0, 2582, 0, + 0, 2585, 2264, 0, 0, 0, 0, 3770, 0, 3770, + 3770, 3770, 0, 0, 0, 0, 0, 0, 2749, 0, + 0, 0, 2586, 6097, 0, 0, 0, 0, 0, 0, + 0, 0, 3680, 1791, 0, 3683, 0, 0, 0, 0, + 951, 0, 0, 0, 2583, 0, 3479, 0, 0, 2584, + 0, 941, 0, 0, 0, 941, 0, 941, 0, 0, + 0, 0, 0, 2322, 0, 0, 0, 0, 0, 0, + 0, 0, 2585, 2264, 0, 5364, 0, 2587, 0, 0, + 2588, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2841, 0, 0, 2586, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2583, 5392, 0, 0, 0, 2584, 0, + 0, 0, 0, 3774, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2322, 0, 3787, 0, 0, 0, + 0, 2585, 2264, 0, 3796, 0, 0, 0, 2587, 0, + 0, 2588, 0, 0, 0, 0, 0, 5104, 0, 0, + 0, 0, 2586, 0, 951, 0, 3479, 0, 0, 0, + 2589, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 3840, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2322, 3864, 0, 2073, 0, 0, 2074, + 0, 0, 0, 2075, 2076, 2077, 0, 2587, 0, 0, + 2588, 0, 0, 0, 0, 951, 0, 0, 0, 0, + 0, 0, 0, 2579, 0, 0, 951, 0, 0, 0, + 0, 2589, 0, 2580, 0, 0, 0, 3919, 0, 3921, + 2581, 0, 0, 951, 0, 0, 0, 0, 951, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2513, 0, 0, 0, 2582, 0, 0, 0, + 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, + 0, 0, 2073, 0, 5424, 2074, 0, 0, 891, 2075, + 2076, 2077, 0, 891, 891, 0, 2971, 0, 0, 0, + 2589, 0, 0, 0, 0, 0, 0, 0, 0, 2579, + 0, 0, 4446, 0, 0, 0, 0, 0, 0, 2580, + 0, 0, 0, 0, 0, 0, 2581, 3976, 0, 0, + 0, 3007, 0, 2513, 3983, 0, 0, 0, 0, 0, + 0, 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, + 2522, 0, 2582, 0, 0, 5435, 0, 0, 3770, 0, + 0, 0, 0, 0, 0, 0, 0, 5570, 0, 0, + 0, 0, 0, 0, 0, 951, 0, 3072, 0, 0, + 0, 2583, 0, 951, 951, 0, 2584, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3090, 0, 0, + 0, 0, 2513, 0, 0, 5396, 891, 0, 0, 2585, + 2264, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, + 0, 0, 0, 3110, 5445, 3111, 0, 0, 0, 0, + 2586, 0, 0, 0, 0, 0, 1791, 0, 0, 0, + 3120, 0, 3121, 0, 0, 0, 0, 0, 638, 0, + 638, 0, 638, 0, 638, 891, 638, 0, 0, 0, + 638, 0, 0, 0, 0, 0, 0, 2583, 0, 0, + 0, 2322, 2584, 2073, 0, 0, 2074, 0, 0, 0, + 2075, 2076, 2077, 0, 0, 2587, 0, 0, 2588, 0, + 0, 0, 0, 0, 0, 2585, 2264, 3180, 0, 0, + 2579, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2580, 0, 0, 0, 0, 0, 2586, 2581, 2073, 0, + 0, 2074, 0, 0, 0, 2075, 2076, 2077, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2582, 0, 2579, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2580, 0, 2322, 0, 0, + 0, 0, 2581, 0, 0, 0, 0, 0, 0, 0, + 0, 2587, 0, 0, 2588, 0, 0, 0, 2589, 0, + 0, 0, 0, 0, 890, 0, 0, 0, 2582, 0, + 0, 0, 0, 0, 0, 0, 1119, 0, 0, 0, + 5761, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2073, 0, 0, 2074, 0, 0, 0, 2075, + 2076, 2077, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2579, + 0, 0, 0, 0, 881, 0, 0, 0, 0, 2580, + 0, 0, 0, 0, 0, 0, 2581, 0, 2583, 0, + 0, 0, 0, 2584, 2589, 0, 0, 0, 0, 0, + 4248, 4249, 0, 0, 0, 0, 0, 0, 0, 0, + 2513, 0, 2582, 0, 0, 951, 2585, 2264, 0, 2514, + 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, + 0, 0, 5500, 2583, 0, 0, 0, 2586, 2584, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2585, 2264, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2322, 0, + 0, 0, 2586, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2587, 0, 0, 2588, 2513, 0, 0, 0, + 0, 0, 0, 0, 0, 2514, 2515, 2516, 2517, 2518, + 2519, 2520, 2521, 2522, 0, 0, 0, 0, 5534, 0, + 883, 0, 0, 2322, 0, 1119, 0, 2583, 0, 5915, + 951, 5916, 2584, 0, 0, 5921, 5922, 2587, 0, 0, + 2588, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2585, 2264, 0, 0, 0, + 0, 0, 0, 0, 0, 1791, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2586, 0, 0, 0, + 0, 0, 0, 0, 0, 2589, 0, 0, 951, 0, + 0, 0, 0, 0, 0, 0, 951, 0, 0, 0, + 0, 0, 0, 0, 951, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2322, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2589, 2587, 0, 0, 2588, 0, 0, 0, 0, 0, + 4420, 0, 0, 0, 0, 941, 941, 0, 951, 951, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 941, 0, 951, 941, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 951, 951, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2513, 0, 1704, + 0, 0, 0, 0, 0, 0, 2514, 2515, 2516, 2517, + 2518, 2519, 2520, 2521, 2522, 0, 0, 0, 0, 5536, + 0, 0, 0, 941, 0, 0, 0, 941, 941, 0, + 0, 0, 0, 0, 2589, 0, 0, 0, 0, 0, + 0, 0, 2513, 0, 0, 0, 0, 0, 0, 0, + 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, + 0, 0, 0, 0, 5575, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2073, 0, 0, + 2074, 0, 0, 0, 2075, 2076, 2077, 0, 0, 0, + 0, 0, 0, 0, 0, 1119, 0, 0, 0, 0, + 4573, 0, 0, 0, 2579, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2580, 0, 0, 0, 0, 0, + 0, 2581, 0, 0, 0, 0, 2513, 0, 0, 0, + 1791, 0, 0, 0, 0, 2514, 2515, 2516, 2517, 2518, + 2519, 2520, 2521, 2522, 0, 0, 0, 2582, 5903, 0, + 0, 0, 0, 0, 0, 699, 0, 0, 0, 0, + 2738, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3469, 3470, 0, 2739, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 702, 0, 0, 3485, 3486, 0, 3488, 3489, 0, + 0, 0, 3492, 3493, 0, 0, 0, 703, 0, 0, + 0, 0, 0, 6194, 0, 0, 2539, 3504, 0, 0, + 0, 0, 0, 0, 3513, 1034, 0, 0, 3516, 3517, + 0, 0, 3520, 3521, 0, 0, 0, 0, 0, 3526, + 0, 0, 2583, 0, 0, 0, 0, 2584, 890, 2740, + 0, 3541, 0, 0, 0, 0, 0, 0, 6194, 0, + 706, 0, 0, 3558, 0, 0, 0, 0, 3560, 707, + 2585, 2264, 0, 0, 890, 0, 6194, 0, 0, 5181, + 0, 0, 708, 3566, 0, 0, 0, 0, 2741, 0, + 0, 2586, 3573, 0, 0, 3577, 0, 3579, 3582, 3584, + 0, 0, 0, 0, 3592, 3595, 0, 0, 881, 0, + 0, 0, 0, 0, 3608, 1037, 0, 0, 0, 0, + 3618, 0, 0, 0, 3621, 0, 0, 0, 0, 0, + 0, 0, 2322, 0, 881, 0, 3631, 3632, 0, 0, + 0, 3637, 0, 0, 0, 0, 2587, 3646, 3647, 2588, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3656, 0, 0, 3657, 0, 0, 0, 712, 0, + 0, 3669, 3670, 0, 0, 0, 0, 3674, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3681, + 0, 0, 3684, 0, 0, 0, 0, 3687, 0, 0, + 0, 0, 0, 3690, 3691, 2073, 0, 0, 2074, 2742, + 0, 3697, 2075, 2076, 2077, 3699, 890, 0, 0, 3706, + 3707, 3708, 3709, 0, 3711, 0, 0, 0, 0, 0, + 0, 0, 2579, 0, 0, 0, 0, 3736, 3737, 2589, + 3739, 0, 2580, 213, 2743, 0, 0, 717, 0, 2581, + 0, 3748, 3749, 3750, 883, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1041, 2582, 881, 2744, 0, 0, + 883, 0, 0, 0, 721, 0, 0, 0, 0, 0, + 0, 722, 0, 0, 723, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 3802, 0, + 0, 0, 0, 724, 0, 0, 3826, 0, 0, 0, + 1043, 0, 0, 0, 0, 0, 0, 726, 0, 0, + 1044, 0, 0, 0, 728, 3838, 0, 2073, 0, 0, + 2074, 2513, 2745, 0, 2075, 2076, 2077, 0, 0, 2746, + 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, + 0, 0, 0, 5925, 2579, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2580, 733, 0, 0, 890, 0, + 0, 2581, 4972, 0, 0, 3906, 0, 0, 0, 890, + 2583, 0, 0, 0, 0, 2584, 4974, 0, 0, 0, + 0, 0, 0, 0, 3920, 890, 3922, 2582, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2585, 2264, + 0, 0, 883, 0, 0, 0, 0, 0, 0, 0, + 0, 1791, 0, 0, 0, 0, 0, 0, 881, 2586, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 881, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 881, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2322, 0, 0, 0, 0, 0, 951, 0, 0, 0, + 0, 0, 0, 0, 2587, 0, 0, 2588, 0, 0, + 0, 3984, 0, 0, 951, 0, 0, 0, 951, 0, + 0, 0, 951, 0, 0, 0, 0, 0, 0, 0, + 0, 951, 2583, 0, 0, 0, 0, 2584, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2073, 0, 951, + 2074, 0, 0, 0, 2075, 2076, 2077, 0, 0, 0, + 2585, 2264, 0, 0, 0, 0, 941, 0, 941, 941, + 0, 0, 890, 0, 2579, 0, 0, 0, 0, 0, + 0, 2586, 0, 951, 2580, 0, 0, 0, 0, 0, + 0, 2581, 0, 0, 883, 0, 0, 2589, 0, 0, + 0, 0, 0, 951, 951, 883, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2582, 0, 0, + 0, 883, 2322, 0, 884, 0, 0, 0, 0, 0, + 0, 0, 881, 0, 1791, 951, 2587, 0, 1791, 2588, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 951, 0, 1791, 0, 0, 0, 951, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 951, 0, 0, 0, 0, 0, 0, 951, + 0, 0, 951, 0, 0, 0, 0, 950, 951, 2513, + 0, 0, 0, 0, 0, 0, 950, 0, 2514, 2515, + 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, 951, 0, + 950, 6113, 0, 0, 951, 0, 2557, 0, 0, 2589, + 0, 951, 2583, 0, 0, 0, 0, 2584, 0, 0, + 0, 0, 0, 0, 0, 951, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 951, 0, + 2585, 2264, 0, 1791, 0, 0, 0, 0, 0, 951, + 0, 0, 0, 0, 0, 0, 0, 0, 883, 0, + 0, 2586, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 4233, 0, + 0, 0, 2322, 0, 0, 0, 0, 890, 0, 1791, + 0, 2513, 0, 0, 0, 0, 2587, 0, 4245, 2588, + 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, + 0, 0, 0, 6130, 0, 4252, 0, 0, 0, 4252, + 0, 0, 0, 0, 4263, 4264, 4265, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5307, 0, 0, 881, 0, 0, + 0, 0, 0, 0, 890, 0, 0, 0, 0, 5311, + 4295, 4296, 4297, 4298, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2589, + 4314, 0, 0, 0, 0, 890, 0, 0, 4317, 0, + 4321, 4322, 4323, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 881, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 890, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 951, 0, 1791, 0, 0, 0, + 5369, 0, 0, 0, 0, 881, 0, 0, 0, 0, + 0, 0, 0, 951, 0, 0, 0, 0, 0, 0, + 951, 0, 0, 0, 0, 0, 0, 941, 0, 941, + 941, 0, 0, 0, 0, 0, 0, 0, 881, 0, + 0, 2513, 0, 883, 0, 0, 0, 0, 0, 0, + 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, + 0, 0, 0, 6171, 0, 0, 4407, 0, 0, 0, + 0, 0, 0, 0, 0, 4413, 0, 0, 0, 0, + 0, 0, 699, 0, 0, 0, 0, 1030, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 4423, 4424, 0, 0, 0, 4425, 0, 0, 0, + 883, 1791, 0, 0, 0, 0, 0, 1791, 0, 0, + 0, 0, 0, 0, 0, 1031, 0, 0, 4467, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 702, 1032, + 0, 0, 950, 0, 0, 0, 0, 0, 0, 0, + 1033, 883, 0, 0, 703, 0, 0, 0, 0, 0, + 0, 950, 0, 0, 0, 0, 0, 950, 0, 0, + 890, 0, 1034, 0, 0, 0, 0, 0, 0, 950, + 4504, 890, 0, 0, 883, 4510, 0, 0, 0, 0, + 0, 4516, 0, 0, 0, 950, 1035, 890, 0, 0, + 0, 5506, 951, 5508, 0, 0, 0, 706, 0, 0, + 950, 0, 0, 0, 0, 0, 707, 0, 950, 0, + 0, 4555, 0, 0, 0, 0, 0, 0, 0, 708, + 881, 0, 950, 0, 0, 1036, 0, 0, 0, 0, + 0, 881, 950, 0, 0, 0, 0, 0, 0, 0, + 4570, 890, 4571, 0, 0, 0, 0, 881, 0, 0, + 0, 0, 1037, 0, 0, 0, 890, 0, 0, 890, + 890, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 884, 0, + 0, 0, 0, 1038, 0, 950, 0, 0, 0, 0, + 890, 890, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 881, 0, 0, 884, 712, 0, 0, 0, 0, + 0, 0, 0, 950, 0, 0, 881, 0, 0, 881, + 881, 0, 951, 951, 0, 0, 0, 0, 0, 0, + 0, 0, 2073, 0, 0, 2074, 0, 0, 950, 2075, + 2076, 2077, 0, 0, 0, 5635, 1039, 0, 0, 951, + 881, 881, 951, 0, 0, 0, 0, 0, 0, 2579, + 0, 0, 0, 3424, 0, 0, 883, 0, 0, 2580, + 715, 0, 0, 0, 0, 0, 2581, 883, 0, 0, + 213, 1040, 0, 0, 717, 0, 0, 0, 886, 0, + 0, 0, 0, 883, 0, 0, 0, 0, 950, 0, + 0, 0, 2582, 0, 0, 0, 0, 0, 0, 0, + 0, 1041, 0, 0, 1042, 0, 0, 0, 720, 0, + 0, 721, 0, 0, 1791, 1791, 1791, 890, 722, 0, + 0, 723, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 884, 883, 0, 951, + 724, 0, 0, 3425, 0, 0, 0, 1043, 0, 0, + 0, 0, 883, 0, 726, 883, 883, 1044, 951, 0, + 0, 728, 0, 0, 0, 0, 0, 0, 0, 1045, + 0, 730, 0, 0, 0, 0, 1046, 881, 0, 0, + 951, 0, 0, 0, 0, 0, 883, 883, 0, 0, + 0, 0, 0, 0, 5748, 0, 5750, 0, 1790, 0, + 0, 0, 733, 0, 0, 950, 0, 2583, 0, 0, + 0, 0, 2584, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2585, 2264, 0, 0, 0, + 0, 4803, 0, 0, 4810, 0, 4811, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2586, 0, 0, 4818, + 0, 0, 0, 0, 0, 0, 951, 0, 0, 0, + 0, 4824, 0, 0, 0, 4827, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 4853, 0, 0, 2322, 884, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 884, + 0, 2587, 4857, 1791, 2588, 0, 0, 0, 4861, 951, + 0, 951, 0, 883, 0, 884, 0, 0, 0, 950, + 0, 887, 0, 0, 951, 0, 951, 0, 0, 0, + 0, 0, 0, 4896, 0, 0, 0, 4900, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4911, 4912, 4913, 4914, 0, 0, 0, + 0, 0, 0, 4918, 4919, 4920, 4921, 0, 0, 0, + 0, 0, 4923, 4924, 0, 0, 0, 0, 4931, 4932, + 950, 4934, 4935, 4936, 4937, 4938, 4939, 4940, 0, 0, + 0, 950, 0, 951, 2589, 0, 0, 4949, 0, 0, + 0, 4952, 4953, 4954, 4955, 0, 0, 2073, 950, 0, + 2074, 0, 0, 950, 2075, 2076, 2077, 0, 0, 0, + 0, 0, 0, 0, 0, 4252, 0, 0, 0, 0, + 0, 0, 5939, 0, 2579, 951, 0, 0, 0, 0, + 0, 0, 0, 4975, 2580, 0, 0, 0, 0, 0, + 0, 2581, 0, 0, 951, 3426, 0, 0, 951, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 884, 0, 0, 0, 0, 2582, 0, 951, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2513, 0, 0, 0, + 0, 0, 0, 0, 0, 2514, 2515, 2516, 2517, 2518, + 2519, 2520, 2521, 2522, 0, 0, 0, 0, 0, 5056, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 950, 0, 0, 0, 0, 0, 0, 6024, 950, 950, + 0, 0, 4252, 0, 0, 0, 0, 0, 0, 5081, + 0, 5082, 0, 0, 0, 0, 0, 4057, 0, 0, + 0, 0, 0, 4058, 0, 0, 0, 0, 0, 1791, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5097, + 0, 0, 2583, 0, 0, 0, 0, 2584, 0, 0, + 0, 1790, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2585, 2264, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2073, + 0, 2586, 2074, 0, 0, 0, 2075, 2076, 2077, 0, + 0, 0, 0, 0, 0, 0, 0, 6101, 0, 0, + 0, 0, 0, 0, 0, 0, 2579, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2580, 0, 0, 0, + 0, 0, 2322, 2581, 0, 0, 0, 1092, 1092, 0, + 0, 0, 0, 0, 0, 0, 2587, 0, 0, 2588, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2582, + 0, 890, 0, 0, 0, 890, 890, 0, 0, 0, + 0, 0, 886, 0, 0, 0, 0, 884, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 886, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 951, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 881, 0, 890, 0, 881, 881, 0, 0, 890, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 4059, + 0, 1092, 0, 0, 884, 0, 889, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 5248, 5249, 5250, 0, + 0, 1791, 5251, 5252, 5253, 5254, 1791, 0, 1791, 5256, + 890, 0, 0, 0, 2583, 0, 0, 0, 0, 2584, + 0, 0, 0, 881, 0, 884, 0, 0, 0, 881, + 0, 0, 1791, 0, 0, 0, 0, 0, 0, 0, + 950, 0, 2585, 2264, 0, 0, 0, 5276, 5277, 5278, + 5279, 5280, 0, 5282, 5283, 0, 0, 0, 884, 0, + 0, 0, 0, 2586, 0, 5292, 5293, 0, 0, 0, + 881, 0, 0, 0, 0, 0, 0, 0, 0, 951, + 886, 2513, 951, 0, 0, 0, 0, 0, 0, 0, + 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, + 5299, 0, 0, 0, 2322, 0, 0, 883, 0, 0, + 0, 883, 883, 0, 0, 0, 0, 0, 2587, 0, + 0, 2588, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4678, 0, 0, 0, + 0, 0, 0, 0, 0, 950, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 887, 0, 0, 0, 883, + 0, 0, 951, 951, 0, 883, 0, 0, 0, 0, + 0, 0, 0, 951, 0, 0, 0, 0, 0, 0, + 1790, 887, 0, 0, 0, 0, 0, 0, 0, 0, + 951, 0, 5362, 0, 0, 0, 0, 0, 0, 0, + 0, 2589, 0, 950, 0, 0, 883, 0, 0, 890, + 0, 950, 0, 0, 0, 0, 0, 0, 4679, 950, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 886, 0, 0, 0, 0, 0, 0, 0, + 884, 0, 0, 886, 0, 0, 0, 0, 0, 0, + 0, 884, 0, 0, 0, 0, 0, 5413, 0, 886, + 0, 0, 0, 950, 950, 0, 0, 884, 0, 881, + 0, 951, 0, 0, 1791, 0, 0, 950, 0, 0, + 0, 0, 890, 0, 0, 0, 890, 0, 0, 5419, + 950, 950, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2513, 0, 0, 0, 0, 0, 0, + 0, 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, + 2522, 884, 0, 887, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 884, 0, 0, 884, + 884, 0, 881, 0, 0, 0, 881, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2073, 0, + 0, 2074, 0, 0, 0, 2075, 2076, 2077, 0, 0, + 884, 884, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2073, 638, 2579, 2074, 0, 0, 890, + 2075, 2076, 2077, 0, 0, 2580, 0, 0, 0, 0, + 0, 0, 2581, 0, 890, 0, 0, 0, 0, 890, + 2579, 0, 0, 3993, 0, 883, 886, 0, 0, 0, + 2580, 0, 0, 0, 0, 0, 0, 2581, 2582, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 890, 0, + 0, 0, 0, 0, 0, 1790, 0, 0, 5523, 881, + 0, 0, 0, 2582, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 881, 0, 0, 5533, 0, 881, + 0, 0, 0, 5539, 5540, 0, 0, 0, 0, 0, + 0, 0, 0, 5551, 0, 887, 0, 0, 883, 0, + 5553, 0, 883, 0, 0, 0, 887, 0, 881, 0, + 0, 0, 0, 0, 0, 0, 0, 884, 0, 0, + 951, 0, 887, 0, 0, 0, 0, 5979, 0, 0, + 0, 0, 0, 0, 0, 5605, 5606, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 5614, 0, + 5616, 0, 0, 2583, 0, 0, 0, 0, 2584, 0, + 0, 0, 0, 0, 951, 5630, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 951, 0, 2583, 0, + 0, 2585, 2264, 2584, 0, 0, 0, 0, 0, 0, + 4252, 0, 0, 0, 0, 0, 0, 0, 5664, 0, + 0, 0, 2586, 0, 0, 883, 2585, 2264, 0, 0, + 0, 951, 0, 0, 0, 0, 0, 0, 0, 0, + 883, 0, 0, 0, 0, 883, 0, 2586, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 889, 0, 0, 2322, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 883, 0, 0, 2587, 0, 0, + 2588, 0, 0, 0, 0, 0, 889, 0, 2322, 0, + 0, 0, 5706, 0, 0, 0, 0, 0, 0, 887, + 0, 886, 2587, 5980, 0, 2588, 0, 0, 0, 1791, + 0, 0, 0, 0, 0, 890, 5726, 0, 890, 0, + 890, 0, 0, 0, 0, 890, 0, 5733, 951, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 886, 0, + 2589, 0, 0, 890, 0, 881, 0, 0, 881, 0, + 881, 890, 0, 0, 0, 881, 0, 0, 0, 0, + 0, 0, 0, 0, 5792, 2589, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 890, 0, 0, 886, + 0, 0, 0, 0, 951, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 889, 0, + 0, 0, 0, 881, 0, 0, 0, 0, 0, 0, + 0, 881, 886, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 4252, 0, 881, 0, 0, 0, + 0, 0, 2513, 0, 0, 0, 890, 0, 890, 0, + 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, + 0, 0, 0, 0, 0, 0, 0, 2513, 0, 0, + 0, 0, 0, 0, 0, 0, 2514, 2515, 2516, 2517, + 2518, 2519, 2520, 2521, 2522, 0, 0, 0, 0, 0, + 0, 883, 0, 0, 883, 0, 883, 0, 0, 0, + 5891, 883, 0, 0, 0, 0, 881, 0, 881, 0, + 0, 951, 0, 951, 5904, 0, 0, 0, 0, 0, 0, 0, 0, 0, 887, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2050, 0, 0, 2051, 0, 0, - 0, 2052, 2053, 2054, 0, 0, 0, 0, 0, 887, - 0, 0, 0, 2479, 0, 0, 772, 0, 772, 0, - 2543, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, - 2544, 0, 0, 0, 0, 1337, 0, 2545, 0, 0, - 0, 0, 0, 0, 0, 0, 620, 0, 3082, 936, - 972, 936, 936, 2050, 3086, 925, 2051, 0, 839, 0, - 2052, 2053, 2054, 2546, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 3203, 802, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2544, - 2751, 0, 0, 0, 0, 0, 2545, 0, 3517, 839, - 0, 0, 0, 0, 0, 3528, 0, 0, 0, 0, - 0, 0, 0, 0, 839, 0, 0, 0, 0, 0, - 0, 0, 2546, 0, 0, 1113, 0, 0, 0, 0, - 0, 3203, 0, 0, 0, 0, 839, 0, 0, 0, - 0, 0, 0, 2050, 0, 0, 2051, 0, 0, 0, - 2052, 2053, 2054, 0, 0, 0, 0, 839, 0, 2652, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2543, - 802, 0, 0, 0, 0, 0, 0, 2547, 0, 2544, - 0, 0, 2548, 0, 0, 0, 2545, 0, 0, 0, - 0, 0, 2050, 925, 0, 2051, 925, 0, 0, 2052, - 2053, 2054, 0, 0, 2549, 2238, 0, 0, 0, 0, - 0, 0, 2546, 0, 0, 0, 0, 0, 0, 2550, - 0, 0, 839, 839, 0, 0, 0, 0, 2544, 0, - 0, 3247, 0, 0, 0, 2545, 2547, 3671, 0, 3674, - 3676, 2548, 0, 0, 0, 0, 0, 0, 0, 3421, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2290, 2546, 0, 2549, 2238, 619, 0, 0, 0, 0, - 1337, 1337, 1337, 0, 2551, 3421, 1337, 2552, 2550, 0, - 0, 0, 0, 0, 925, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 925, 0, 0, - 0, 0, 0, 1337, 0, 925, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1979, 0, 0, 2751, 2290, - 0, 0, 0, 839, 0, 0, 2547, 0, 0, 3776, - 0, 2548, 772, 2551, 0, 0, 0, 0, 1113, 0, - 0, 0, 0, 0, 925, 3787, 0, 0, 0, 0, - 0, 0, 0, 2549, 2238, 3671, 0, 0, 0, 0, - 0, 0, 0, 0, 3203, 925, 2553, 3809, 2550, 0, - 0, 0, 0, 0, 0, 2547, 0, 0, 0, 0, - 2548, 0, 0, 0, 0, 923, 0, 0, 935, 0, - 935, 935, 0, 3203, 0, 0, 0, 0, 0, 0, - 0, 0, -2829, -2829, 0, 0, 925, 0, 925, 2290, - 925, 0, 0, 0, 0, 2045, 0, 2550, 887, 0, - 0, 0, 0, 2551, 2048, 2553, 2552, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2503, 0, - 0, 0, 0, 1954, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -2829, 1113, - 0, 0, 2522, 2523, 0, 3421, 2479, 1113, 1113, 0, - 2652, 0, 2551, 0, 2480, 2481, 2482, 2483, 2484, 2485, - 2486, 2487, 2488, 0, 0, 0, 0, 0, 0, 0, - 4002, 0, 0, 0, 0, 0, 620, 925, 0, 936, - 0, 936, 936, 0, 925, 0, 0, 0, 0, 0, - 0, 1337, 0, 0, 0, 2553, 1337, 0, 0, 0, - 0, 0, 0, 2907, 0, 2479, 0, 0, 0, 0, - 0, 0, 0, 2480, 2481, 2482, 2483, 2484, 2485, 2486, - 2487, 2488, 0, 1337, 1337, 1337, 0, 0, 1337, 0, - 0, 0, 0, 0, 0, 0, 1337, 1337, 1337, 1337, - 0, 0, 0, 0, 2553, 0, 0, 0, 0, 0, - 0, 0, 1337, 0, 0, 1337, 0, 1337, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1337, - 1337, 0, 0, 1337, 0, 0, 0, 0, 0, 0, - 1532, 0, 0, 887, 0, 0, 1533, 0, 0, 0, - 972, 0, 1337, 1599, 1337, 2479, 1337, 0, 0, 3203, - 0, 0, 0, 2480, 2481, 2482, 2483, 2484, 2485, 2486, - 2487, 2488, 0, 0, 2931, 1600, 1337, 0, 0, 0, - 839, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1535, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 839, 0, 0, 2479, 0, 0, 0, 3247, 0, - 0, 0, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, - 2488, 0, 0, 0, 619, 0, 1601, 0, 0, 620, - 0, 0, 3359, 4075, 0, 2986, 0, 4075, 4089, 4075, - 0, 0, 0, 3003, 1337, 0, 0, 1536, 0, 1337, - 0, 2907, 0, 0, 1537, 0, 0, 1538, -136, 0, - 0, 0, 2860, 0, 1337, 0, 0, 0, 887, 0, - 2868, 0, 0, 0, 0, 0, 0, 0, 3359, 0, - 1, 0, 4120, 0, 1539, 4123, 3359, 0, 3408, 0, - 2, 0, 3, 4, 0, 3061, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 887, 0, 0, 0, - 5, 0, 0, 0, 0, 1602, 0, 0, 1540, 0, - 6, 0, 2907, 0, 0, 0, 5847, 0, 887, 1337, - 0, 0, 7, 0, 8, 9, 0, 0, 0, 0, - 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 12, 0, 13, 0, 925, - 925, 0, 0, 0, 1603, 0, 0, 0, 1604, 0, - 0, 0, 0, 3482, 14, 923, 0, 15, 935, 0, - 935, 935, 0, 1605, 0, 0, 0, 1542, 0, 0, - 0, 0, 16, 0, 17, 0, 0, 1543, 18, 0, - 0, 887, 0, 0, 19, 0, 1544, 0, 0, 0, - 0, 0, 20, 0, 21, 0, 0, 1606, 1545, 0, - 0, 22, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1502, 0, 0, 0, 24, 0, 3617, 3203, 3203, - 1547, 1548, 1608, 0, 0, 0, 0, 839, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2819, 0, 0, - 0, 0, 0, 0, 2997, 1609, 1503, 0, 3002, 0, - 0, 3618, 0, 0, 0, 25, 26, 0, 0, 0, - 0, 27, 0, 0, 0, 1611, 0, 0, 0, 0, - 0, 3622, 0, 0, 3625, 28, 0, 0, 0, 0, - 5270, 0, 887, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1504, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1550, - 0, 0, 0, 0, 0, 0, 0, 0, 619, 0, - 0, 619, 0, 0, 0, 0, 0, 30, 0, 0, - 0, 0, 1337, 1505, 0, 0, 0, 0, 1337, 0, - 0, 31, 0, 0, 0, 0, 0, 32, 33, 925, - 34, 0, 3716, 0, 0, 35, 0, 0, 0, 0, - 0, 36, 0, 0, 37, 3729, 0, 619, 0, 1506, - 0, 38, 0, 3738, 0, 619, 0, 39, 40, 0, - 0, 0, 0, 0, 0, 41, 839, 839, 839, 42, - 0, 0, 0, 887, 0, 0, 0, 0, 0, 43, - 0, 0, 0, 839, 0, 0, 3185, 1507, 0, 0, - 0, 1508, 3782, 0, 44, 0, 0, 1337, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 3806, 45, 1954, 839, 839, 0, 0, - 0, 839, 1590, 1510, 0, 46, 0, 0, 0, 0, - 0, 47, 0, 839, 0, 0, 48, 0, 0, 0, - 0, 3421, 0, 0, 0, 0, 0, 0, 0, 49, - 0, 0, 0, 0, 0, 0, 3861, 0, 3863, 0, - 0, 1591, 0, 0, 0, 35, 0, 0, 0, 0, - 1512, 0, 50, 51, 52, 53, 54, 55, 0, 1513, - 0, 0, 0, 0, 0, 0, 0, 1514, 0, 925, - 56, 0, 0, -136, 0, 1592, 0, 0, 0, 0, - 0, 0, 0, 3115, 4496, 0, 0, 1516, 0, 0, - 0, 0, 839, 0, 0, 0, 1517, 0, 0, 0, - 1518, 0, 0, 2050, 0, 839, 2051, 0, 839, 0, - 2052, 2053, 2054, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3919, 0, 1337, 0, 2543, - 0, 0, 3926, 0, 0, 1337, 0, 1337, 0, 2544, - 0, 3421, 0, 0, 0, 1337, 2545, 1337, 0, 0, - 1337, 0, 0, 0, 1519, 1337, 1337, 1337, 1337, 0, - 0, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, - 1337, 0, 2546, 0, 1337, 1337, 1337, 0, 0, 0, - 0, 0, 0, 0, 1337, 0, 0, 0, 0, 1337, - 0, 0, 0, 1337, 0, 0, 0, 0, 0, 0, - 0, 1337, 0, 0, 1337, 0, 1337, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1337, 0, 0, 1337, - 1337, 0, 0, 0, 1337, 1337, 0, 0, 0, 4604, - 0, 1337, 0, 0, 0, 0, 0, 0, 839, 839, - 839, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 4075, 4089, - 4075, 0, 1337, 4075, 0, 0, 4628, 887, 0, 0, - 3359, 0, 887, 887, 3359, 0, 0, 0, 0, 0, - 4643, 0, 0, 0, 0, 0, 2547, 0, 0, 0, - 0, 2548, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1337, 0, 0, 0, - 0, 0, 0, 2549, 2238, 0, 0, 0, 0, 0, - 0, 3408, 0, 1337, 0, 0, 0, 0, 2550, 0, - 0, 0, 0, 0, 0, 689, 0, 0, 0, 0, - 2702, 4691, 1954, 1954, 3410, 0, 1954, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3426, 0, 0, 0, 3429, 0, 0, 2290, - 3432, 0, 0, 0, 0, 0, 0, 0, 2703, 0, - 0, 2751, 4723, 2551, 5270, 887, 2552, 0, 0, 0, - 0, 692, 0, 0, 0, 0, 0, 3457, 0, 0, - 4744, 0, 0, 0, 0, 0, 0, 693, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1029, 0, 0, 0, 887, - 0, 3499, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 4161, 4162, 2704, - 0, 1070, 0, 4793, 0, 0, 0, 0, 0, 0, - 696, 0, 0, 2050, 0, 0, 2051, 0, 0, 697, - 2052, 2053, 2054, 0, 0, 2553, 3309, 0, 0, 0, - 0, 0, 698, 3549, 0, 0, 0, 2705, 0, 2543, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2544, - 0, 0, 0, 0, 0, 0, 2545, 0, 0, 4838, - 3578, 0, 0, 1032, 0, 0, 3587, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 3597, 0, 2546, 0, 0, 0, 0, 1070, 0, 0, - 3610, 0, 925, 0, 0, 0, 3615, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 925, 0, 1337, 0, - 702, 0, 0, 0, 0, 839, 3628, 0, 0, 0, - 0, 4882, 3631, 0, 0, 2479, 0, 0, 0, 3637, - 0, 0, 2751, 2480, 2481, 2482, 2483, 2484, 2485, 2486, - 2487, 2488, 0, 3652, 0, 0, 3232, 839, 0, 0, - 0, 2706, 3359, 3787, 0, 0, 3677, 0, 0, 619, - 3671, 0, 0, 619, 0, 0, 0, 1070, 0, 4931, - 0, 0, 0, 0, 0, 1113, 0, 0, 0, 839, - 0, 0, 0, 0, 0, 213, 2707, 0, 0, 707, - 0, 1337, 1337, 0, 0, 0, 2547, 0, 0, 0, - 0, 2548, 1337, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1954, 839, 0, 1036, 0, 0, 2708, - 0, 0, 0, 2549, 2238, 711, 0, 0, 0, 0, - 619, 839, 712, 0, 1353, 713, 0, 4333, 2550, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2050, - 0, 0, 2051, 0, 714, 0, 2052, 2053, 2054, 0, - 0, 1038, 0, 0, 0, 0, 0, 716, 0, 1337, - 1039, 0, 0, 0, 718, 2543, 0, 0, 0, 2290, - 0, 1337, 2709, 0, 0, 2544, 0, 0, 0, 2710, - 0, 0, 2545, 2551, 0, 0, 2552, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1337, - 0, 0, 1337, 0, 1353, 723, 0, 0, 2546, 0, - 1337, 1337, 0, 0, 0, 0, 0, 0, 1337, 1337, - 0, 0, 0, 1337, 0, 0, 0, 1337, 1353, 0, - 1337, 1337, 0, 0, 0, 1337, 5047, 0, 0, 0, - 0, 1337, 839, 839, 839, 839, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 620, 0, - 0, 4075, 0, 0, 0, 3359, 0, 0, 0, 0, - 3359, 0, 3894, 3359, 620, 2553, 3671, 0, 5079, 0, - 0, 1337, 0, 972, 0, 0, 0, 4486, 0, 0, - 3908, 0, 1337, 0, 0, 3680, 4120, 3894, 0, 0, - 1337, 0, 3408, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 772, 0, 0, - 1337, 0, 2547, 0, 0, 0, 0, 2548, 0, 0, - 0, 0, 3712, 0, 3712, 0, 3712, 3712, 0, 0, - 0, 3712, 3712, 3712, 0, 3712, 3712, 3712, 0, 2549, - 2238, 0, 0, 0, 2751, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2550, 0, 0, 0, 0, 0, - 5143, 0, 0, 0, 0, 2479, 0, 0, 0, 1688, - 0, 619, 619, 2480, 2481, 2482, 2483, 2484, 2485, 2486, - 2487, 2488, 0, 0, 0, 0, 4346, 0, 0, 3789, - 0, 0, 0, 0, 0, 2290, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1532, 0, 2551, - 0, 1337, 2552, 1533, 3817, 0, 0, 0, 1337, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 925, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 925, 2050, 1535, 0, - 2051, 0, 0, 0, 2052, 2053, 2054, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2543, 0, 0, 0, 1337, 0, 2050, - 0, 0, 2051, 2544, 0, 0, 2052, 2053, 2054, 0, - 2545, 2553, 0, 620, 0, 0, 0, 0, 0, 0, - 2751, 0, 0, 0, 1536, 2543, 0, 0, 0, 1954, - 0, 1537, 0, 0, 1538, 2544, 2546, 0, 0, 0, - 0, 0, 2545, 0, 3787, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 925, 0, 3809, - 0, 1539, 0, 0, 0, 0, 0, 0, 2546, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1532, 839, 0, 0, 0, 0, - 1533, 0, 0, 0, 0, 1540, 839, 619, 0, 0, - 0, 0, 0, 0, 619, 0, 0, 0, 0, 619, - 0, 2479, 619, 5075, 0, 4157, 0, 0, 0, 2480, - 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, - 0, 0, 4529, 0, 0, 1535, 0, 0, 0, 0, - 0, 1337, 0, 0, 1337, 0, 0, 1337, 1337, 1337, - 2547, 0, 0, 0, 0, 2548, 0, 0, 0, 0, - 1641, 0, 0, 0, 1542, 0, 0, 0, 0, 0, - 0, 0, 1337, 1337, 1543, 0, 1337, 2549, 2238, 0, - 0, 0, 2547, 1544, 0, 0, 0, 2548, 0, 0, - 0, 1536, 2550, 0, 0, 1545, 0, 1337, 1537, 0, - 0, 1538, 0, 1337, 0, 1113, 0, 3359, 0, 2549, - 2238, 5079, 0, 0, 1337, 4229, 5353, 0, 0, 0, - 0, 0, 0, 0, 2550, 0, 0, 4691, 1539, 0, - 1337, 0, 0, 2290, 3509, 0, 0, 1547, 1548, 0, - 0, 4691, 972, 925, 0, 925, 0, 2551, 0, 0, - 2552, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 4862, 0, 1540, 0, 0, 2290, 0, 0, 1549, 0, - 0, 0, 0, 0, 4864, 0, 0, 0, 0, 2551, - 0, 0, 2552, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 936, 972, 0, 0, 937, 947, 0, 0, - 0, 0, 0, 0, 937, 0, 947, 937, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 947, 0, 0, 0, 0, 0, 0, 1641, 0, 0, - 0, 1542, 0, 0, 0, 0, 1550, 936, 0, 2553, - 0, 1543, 4325, 0, 0, 0, 0, 0, 0, 4882, - 1544, 0, 5214, 0, 839, 0, 0, 0, 0, 839, - 0, 0, 1545, 0, 1113, 0, 0, 0, 2751, 0, - 0, 2553, 0, 0, 0, 0, 0, 0, 839, 0, - 0, 0, 4931, 619, 0, 5491, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 925, 839, 4691, 0, - 0, 3687, 0, 0, 1547, 1548, 0, 0, 0, 0, - 0, 0, 0, 1532, 0, 1532, 0, 0, 0, 1533, - 0, 1533, 0, 0, 0, 0, 0, 0, 0, 0, - 1337, 0, 0, 0, 1337, 3688, 1337, 0, 0, 2479, - 0, 0, 4221, 0, 0, 0, 0, 2480, 2481, 2482, - 2483, 2484, 2485, 2486, 2487, 2488, 620, 0, 0, 1337, - 4580, 0, 0, 5555, 1535, 0, 1535, 0, 0, 0, - 1337, 2479, 0, 0, 0, 0, 0, 1337, 0, 2480, - 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, - 0, 0, 4685, 0, 0, 0, 0, 0, 0, 0, - 4269, 0, 0, 1550, 0, 0, 0, 0, 0, 0, - 0, 0, 839, 0, 0, 0, 0, 0, 0, 0, - 1536, 2907, 1536, 0, 0, 0, 0, 1537, 0, 1537, - 1538, 0, 1538, 0, 0, 0, 0, 1337, 0, 0, - 4497, 0, 0, 1337, 1337, 0, 619, 0, 925, 925, - 925, 925, 0, 0, 0, 0, 0, 1539, 0, 1539, - 0, 0, 0, 0, 0, 4513, 619, 0, 4312, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1337, - 619, 0, 0, 0, 0, 0, 0, 620, 0, 0, - 0, 1540, 0, 1540, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 839, 0, 3712, 3359, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 4343, 4343, 0, 0, - 0, 935, 0, 0, 0, 0, 4359, 0, 0, 0, - 839, 1113, 0, 1113, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1641, 0, 1641, 0, - 1542, 0, 1542, 0, 0, 0, 0, 0, 1337, 0, - 1543, 0, 1543, 0, 1337, 0, 935, 0, 1954, 1544, - 0, 1544, 3671, 0, 0, 1337, 0, 0, 0, 4414, - 0, 1545, 0, 1545, 1337, 0, 1337, 0, 1337, 5353, - 0, 0, 0, 0, 0, 4691, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1954, 0, 972, 0, 0, - 0, 0, 947, 0, 4450, 1113, 1337, 0, 0, 5181, - 4173, 0, 4231, 1547, 1548, 1547, 1548, 619, 0, 0, - 0, 947, 0, 0, 5185, 0, 0, 947, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 947, - 0, 1954, 1954, 0, 4174, 0, 4232, 0, 0, 0, - 0, 0, 0, 0, 0, 947, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 937, - 947, 0, 925, 0, 0, 619, 937, 0, 947, 937, - 2050, 0, 0, 2051, 0, 0, 5812, 2052, 2053, 2054, - 0, 0, 947, 0, 0, 0, 0, 4709, 0, 0, - 0, 0, 947, 0, 0, 0, 2543, 0, 0, 0, - 0, 0, 1550, 0, 1550, 5243, 2544, 0, 0, 0, - 0, 0, 0, 2545, 1337, 1337, 1337, 0, 0, 0, - 0, 0, 1337, 0, 0, 0, 5555, 0, 0, 0, - 0, 0, 1337, 0, 0, 0, 0, 0, 0, 2546, - 0, 3408, 1337, 0, 0, 0, 0, 0, 0, 0, - 947, 0, 0, 0, 0, 0, 2050, 0, 936, 2051, - 0, 0, 0, 2052, 2053, 2054, 0, 0, 0, 0, - 0, 4582, 0, 925, 0, 0, 0, 0, 0, 947, - 1954, 0, 2543, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2544, 0, 0, 0, 5649, 0, 0, 2545, - 0, 0, 0, 0, 947, 2751, 0, 0, 0, 0, - 0, 0, 1337, 0, 0, 0, 4820, 0, 0, 4823, - 0, 0, 4691, 0, 619, 2546, 0, 0, 0, 0, - 936, 936, 5929, 0, 0, 0, 1337, 0, 1337, 0, - 0, 0, 0, 0, 0, 0, 0, 1954, 1954, 5944, - 0, 0, 0, 2547, 1337, 1337, 0, 0, 2548, 0, - 5950, 0, 0, 0, 947, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2549, 2238, 925, 0, 0, 0, 0, 0, 0, 0, - 0, 5375, 0, 5376, 0, 2550, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5812, 925, 925, 619, 0, 0, 4691, 0, 0, - 4905, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 620, 2290, 2907, 0, 2547, - 0, 0, 0, 0, 2548, 0, 0, 0, 0, 0, - 2551, 0, 0, 2552, 0, 1337, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2549, 2238, 0, 1337, - 0, 0, 0, 0, 1774, 0, 0, 0, 0, 0, - 947, 2550, 0, 0, 0, 0, 0, 0, 0, 0, - 4359, 937, 0, 0, 0, 937, 0, 937, 0, 0, - 1337, 0, 0, 0, 0, 6034, 6035, 620, 6038, 5555, - 0, 0, 3408, 0, 0, 619, 4783, 0, 3894, 0, - 0, 0, 2290, 0, 925, 0, 0, 4691, 0, 0, - 0, 4798, 0, 0, 0, 4799, 2551, 4800, 0, 2552, - 0, 0, 2553, 0, 5503, 0, 0, 0, 0, 0, - 4120, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1337, - 620, 0, 0, 0, 1337, 0, 0, 0, 620, 0, - 0, 0, 0, 4840, 0, 0, 0, 0, 0, 0, - 936, 936, 0, 0, 6100, 0, 0, 935, 0, 3712, - 0, 0, 0, 947, 3712, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2553, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2479, 0, 0, 0, 0, 0, 0, 0, - 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, - 0, 619, 0, 4911, 947, 0, 0, 0, 0, 935, - 935, 0, 0, 0, 0, 947, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 947, - 0, 0, 0, 947, 0, 0, 0, 5611, 0, 5613, - 0, 0, 0, 4945, 0, 0, 4359, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2479, 0, - 0, 0, 0, 0, 0, 0, 2480, 2481, 2482, 2483, - 2484, 2485, 2486, 2487, 2488, 0, 0, 0, 0, 5006, - 619, 0, 0, 0, 0, 0, 619, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 5995, 0, 0, 0, 5155, 4993, - 4993, 4993, 4993, 0, 4993, 4993, 4993, 4993, 4993, 0, - 5165, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2050, 0, 0, 2051, 0, 0, 0, 2052, 2053, 2054, - 0, 0, 0, 0, 947, -136, 0, 0, 0, 0, - 0, 0, 947, 947, 0, 0, 2543, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2544, 1, 0, 0, - 0, 0, 0, 2545, 0, 0, 6036, 2, 0, 3, - 4, 0, 2050, 0, 0, 2051, 0, 0, 0, 2052, - 2053, 2054, 0, 0, 0, 0, 619, 5, 0, 2546, - 0, 0, 0, 0, 0, 1774, 0, 6, 2543, 0, - 0, 5056, 0, 5058, 0, 0, 0, 0, 2544, 7, - 0, 8, 9, 0, 0, 2545, 0, 0, 10, 0, - 11, 0, 0, 0, 0, 0, 0, 0, 0, 6036, - 0, 0, 12, 0, 13, 0, 0, 6085, 0, 0, - 0, 2546, 0, 0, 0, 0, 0, 0, 0, 935, - 935, 14, 0, 0, 15, 0, 0, 0, 0, 0, - 5798, 0, 0, 0, 0, 0, 0, 0, 0, 16, - 0, 17, 0, 0, 0, 18, 0, 0, 0, 0, - 0, 19, 0, 0, 0, 0, 0, 0, 0, 20, - 0, 21, 0, 0, 0, 0, 0, 0, 22, 0, - 0, 0, 0, 2547, 0, 0, 0, 0, 2548, 0, - 0, 2050, 0, 0, 2051, 23, 0, 0, 2052, 2053, - 2054, 0, 0, 0, 0, 0, 0, 0, 3894, 0, - 2549, 2238, 24, 0, 0, 0, 0, 2543, 0, 0, - 0, 0, 0, 0, 0, 2550, 0, 2544, 0, 0, - 0, 0, 0, 0, 2545, 2547, 0, 0, 0, 2050, - 2548, 0, 2051, 0, 0, 0, 2052, 2053, 2054, 0, - 0, 5882, 25, 26, 0, 0, 0, 0, 27, 0, - 2546, 0, 2549, 2238, 0, 2543, 2290, 0, 0, 0, - 0, 0, 28, 0, 0, 2544, 0, 2550, 0, 0, - 2551, 0, 2545, 2552, 0, 0, 0, 0, 0, 0, - 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 5186, 5187, 0, 0, 0, 0, 0, 0, 2546, 0, - 0, 0, 0, 3712, 0, 3712, 3712, 3712, 2290, 0, - 3894, 0, 3894, 0, 947, 886, 0, 0, 0, 0, - 0, 0, 2551, 0, 30, 2552, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, - 0, 0, 0, 0, 32, 33, 0, 34, 0, 0, - 5964, 0, 35, 0, 0, 0, 0, 0, 36, 0, - 0, 37, 2553, 0, 2547, 0, 0, 0, 38, 2548, - 0, 5238, 0, 0, 39, 40, 0, 0, 0, 0, - 5978, 5978, 41, 0, 0, 0, 42, 0, 0, 0, - 0, 2549, 2238, 0, 0, 0, 43, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2550, 877, 0, 0, - 5266, 44, 2547, 0, 2553, 2050, 0, 2548, 2051, 0, - 0, 0, 2052, 2053, 2054, 0, 0, 0, 947, 0, - 0, 45, 0, 0, 0, 0, 0, 0, 0, 2549, - 2238, 2543, 46, 0, 0, 0, 0, 2290, 47, 0, - 0, 2544, 4993, 48, 2550, 0, 0, 0, 2545, 0, - 0, 2551, 2479, 1774, 2552, 0, 49, 0, 0, 0, - 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, - 0, 0, 0, 5043, 2546, 0, 947, 0, 0, 50, - 0, 0, 5978, 0, 947, 2290, 0, 0, 0, 0, - 0, 0, 947, 0, 0, 0, 0, 56, 0, 2551, - -136, 0, 2552, 0, 2479, 0, 0, 0, 0, 0, - 0, 0, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, - 2488, 0, 0, 0, 0, 5294, 0, 0, 0, 0, - 0, 0, 937, 937, 0, 947, 947, 0, 0, 0, - 0, 0, 0, 2553, 0, 0, 0, 937, 0, 947, - 937, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 628, 0, 947, 947, 0, 0, 677, 628, 0, 0, - 0, 0, 729, 0, 628, 0, 0, 0, 0, 0, - 628, 0, 782, 0, 0, 0, 0, 0, 2547, 0, - 0, 2553, 4359, 2548, 0, 0, 0, 0, 0, 0, - 937, 850, 850, 0, 937, 937, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2549, 2238, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2550, 0, 0, 0, 0, 0, 0, 0, 3712, 0, - 0, 0, 0, 2479, 0, 0, 0, 5438, 0, 0, - 0, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, - 0, 0, 0, 0, 5305, 0, 0, 0, 0, 0, - 0, 2290, 2050, 0, 0, 2051, 0, 0, 0, 2052, - 2053, 2054, 0, 0, 0, 2551, 0, 0, 2552, 0, - 0, 2479, 0, 0, 0, 0, 0, 0, 2543, 2480, - 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 2544, 0, - 0, 1774, 5313, 0, 0, 2545, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2546, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 927, 0, 0, 0, 931, 0, 0, 0, - 0, 0, 0, 0, 974, 0, 0, 976, 0, 0, - 981, 982, 0, 985, 0, 988, 0, 2553, 994, 0, - 996, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2050, 0, 0, - 2051, 0, 0, 0, 2052, 2053, 2054, 0, 0, 0, - 0, 0, 0, 0, 0, 2547, 0, 0, 0, 0, - 2548, 0, 0, 2543, 0, 0, 0, 0, 0, 0, - 1113, 0, 0, 2544, 5624, 0, 0, 2479, 0, 0, - 2545, 0, 2549, 2238, 0, 2480, 2481, 2482, 2483, 2484, - 2485, 2486, 2487, 2488, 0, 0, 0, 2550, 5316, 0, - 0, 0, 0, 0, 0, 0, 2546, 0, 2050, 0, - 0, 2051, 0, 0, 0, 2052, 2053, 2054, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2543, 0, 0, 0, 2290, 0, - 3894, 0, 0, 0, 2544, 0, 0, 0, 0, 886, - 0, 2545, 2551, 0, 0, 2552, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 886, 0, 2546, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2050, 0, 0, - 2051, 0, 0, 0, 2052, 2053, 2054, 0, 0, 0, - 2547, 0, 0, 0, 0, 2548, 0, 0, 0, 0, - 0, 0, 0, 2543, 0, 0, 0, 0, 0, 0, - 0, 877, 0, 2544, 2553, 0, 0, 2549, 2238, 0, - 2545, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2550, 0, 1113, 0, 0, 877, 5774, 0, - 5775, 0, 0, 0, 5780, 5781, 2546, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2547, 0, 0, 0, 0, 2548, 0, 0, 0, - 0, 0, 0, 2290, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2551, 2549, 2238, - 2552, 0, 0, 886, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2550, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2479, 0, 0, 0, 0, 0, - 0, 0, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, - 2488, 0, 0, 0, 0, 5369, 0, 0, 0, 0, - 0, 0, 0, 0, 2290, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1023, 0, 0, 2551, 0, - 2547, 2552, 0, 0, 0, 2548, 1060, 0, 0, 0, - 1064, 0, 0, 0, 0, 0, 0, 1077, 1078, 2553, - 0, 1084, 0, 1087, 1088, 877, 0, 2549, 2238, 0, - 1774, 0, 0, 0, 0, 0, 0, 0, 1110, 0, - 0, 0, 2550, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1123, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1151, 0, 1153, - 0, 0, 0, 2290, 0, 947, 0, 0, 0, 1169, - 2553, 0, 0, 0, 886, 0, 0, 2551, 0, 0, - 2552, 0, 0, 947, 879, 886, 0, 947, 0, 0, - 0, 947, 0, 0, 0, 0, 0, 0, 0, 2479, - 947, 886, 628, 0, 0, 0, 0, 2480, 2481, 2482, - 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 947, 1113, - 5402, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 937, 0, 937, 937, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 947, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 877, 0, 0, 2553, - 2479, 0, 947, 947, 0, 0, 0, 877, 2480, 2481, - 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 850, - 0, 5404, 0, 877, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1774, 947, 0, 0, 1774, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2050, 0, 0, - 2051, 947, 0, 1774, 2052, 2053, 2054, 947, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 947, 0, 2543, 0, 0, 0, 886, 947, 0, - 0, 947, 0, 2544, 0, 6063, 0, 947, 0, 2479, - 2545, 2503, 1493, 0, 0, 0, 0, 2480, 2481, 2482, - 2483, 2484, 2485, 2486, 2487, 2488, 0, 947, 0, 0, - 5443, 0, 0, 947, 2050, 0, 2546, 2051, 0, 0, - 947, 2052, 2053, 2054, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 6063, 947, 0, 0, 0, 0, 0, - 2543, 0, 0, 0, 0, 0, 0, 947, 0, 0, - 2544, 6063, 1774, 0, 5056, 0, 0, 2545, 947, 0, - 0, 0, 0, 0, 0, 0, 1672, 0, 0, 877, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2546, 0, 0, 0, 0, 0, 0, - 1792, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1804, 0, 1805, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1808, 1774, 0, - 0, 2521, 0, 0, 1818, 0, 0, 0, 0, 0, - 2547, 0, 0, 0, 0, 2548, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2549, 2238, 0, - 0, 0, 0, 0, 0, 0, 1869, 0, 1871, 0, - 0, 0, 2550, 0, 0, 0, 0, 0, 2050, 0, - 0, 2051, 0, 0, 0, 2052, 2053, 2054, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2547, 0, 0, - 0, 0, 2548, 0, 2543, 0, 0, 0, 0, 0, - 0, 0, 0, 2290, 2544, 0, 0, 0, 0, 0, - 0, 2545, 886, 0, 2549, 2238, 0, 2551, 0, 0, - 2552, 0, 0, 0, 0, 0, 0, 0, 0, 2550, - 0, 0, 628, 0, 628, 0, 628, 2546, 628, 0, - 628, 628, 628, 0, 0, 0, 0, 628, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1975, - 0, 0, 0, 947, 0, 0, 0, 0, 0, 0, - 2290, 0, 1987, 0, 0, 0, 0, 0, 0, 886, - 0, 947, 0, 0, 2551, 0, 0, 2552, 947, 0, - 0, 0, 0, 0, 0, 937, 0, 937, 937, 0, - 0, 0, 0, 0, 877, 0, 0, 0, 0, 2553, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 886, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2050, 0, - 0, 2051, 0, 0, 0, 2052, 2053, 2054, 0, 0, - 0, 2547, 0, 886, 0, 0, 2548, 0, 0, 0, - 0, 0, 0, 1774, 2543, 0, 0, 0, 0, 1774, - 0, 877, 0, 0, 2544, 0, 2553, 0, 2549, 2238, - 0, 2545, 0, 0, 0, 0, 0, 0, 0, 0, - 946, 0, 0, 2550, 0, 0, 0, 0, 0, 946, - 0, 0, 0, 0, 0, 0, 0, 2546, 0, 2479, - 0, 0, 877, 946, 0, 0, 0, 2480, 2481, 2482, - 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 0, 0, - 5762, 850, 0, 0, 2290, 0, 0, 0, 879, 0, - 0, 0, 0, 0, 0, 877, 0, 0, 2551, 0, - 947, 2552, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 879, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2479, 0, 0, 0, - 0, 0, 0, 0, 2480, 2481, 2482, 2483, 2484, 2485, - 2486, 2487, 2488, 0, 0, 0, 0, 5784, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2547, 0, 0, 0, 0, 2548, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2553, 0, 0, 0, 886, 0, 0, 0, 2549, 2238, - 0, 2713, 0, 0, 0, 886, 0, 0, 0, 0, - 0, 0, 0, 2550, 0, 0, 0, 0, 0, 0, - 0, 886, 0, 0, 0, 0, 0, 0, 0, 947, - 947, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2050, 0, 0, 2051, 0, 0, 0, 2052, 2053, - 2054, 0, 0, 0, 2290, 0, 947, 0, 0, 947, - 0, 0, 879, 0, 0, 0, 0, 2543, 2551, 0, - 0, 2552, 0, 2805, 886, 0, 0, 2544, 0, 0, - 0, 0, 0, 0, 2545, 0, 877, 0, 0, 886, - 2479, 0, 886, 886, 0, 0, 0, 877, 2480, 2481, - 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 0, - 2546, 5976, 0, 877, 0, 0, 0, 0, 2050, 0, - 0, 2051, 0, 886, 886, 2052, 2053, 2054, 0, 0, - 0, 1774, 1774, 1774, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2543, 0, 0, 0, 3366, 0, - 0, 0, 0, 0, 2544, 0, 947, 0, 0, 0, - 2553, 2545, 0, 0, 0, 0, 877, 0, 0, 0, - 0, 0, 0, 0, 0, 947, 0, 0, 0, 0, - 0, 877, 0, 0, 877, 877, 0, 2546, 0, 0, - 0, 0, 2050, 0, 0, 2051, 0, 947, 0, 2052, - 2053, 2054, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 877, 877, 0, 2543, 0, - 0, 0, 0, 879, 2547, 0, 0, 0, 2544, 2548, - 0, 0, 0, 0, 879, 2545, 0, 0, 3367, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 879, 2549, 2238, 0, 0, 886, 0, 0, 0, 0, - 2479, 2546, 0, 0, 0, 946, 2550, 0, 2480, 2481, - 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 0, - 0, 5994, 0, 947, 946, 0, 0, 0, 2935, 0, - 946, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2547, 946, 0, 0, 0, 2548, 2290, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 946, 0, - 0, 2551, 0, 2971, 2552, 0, 0, 0, 2549, 2238, - 1774, 0, 0, 946, 0, 0, 947, 0, 947, 0, - 0, 946, 0, 2550, 0, 0, 0, 877, 0, 0, - 0, 947, 0, 947, 0, 946, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 946, 3032, 0, 3036, 0, - 0, 0, 0, 0, 0, 2547, 0, 0, 0, 0, - 2548, 0, 0, 0, 2290, 0, 0, 0, 3054, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2551, 0, - 0, 2552, 2549, 2238, 0, 0, 879, 0, 0, 0, - 0, 0, 0, 2553, 3074, 0, 3075, 2550, 0, 0, - 947, 0, 0, 946, 0, 0, 0, 880, 0, 0, - 0, 3084, 0, 3085, 0, 0, 0, 0, 0, 628, - 0, 628, 0, 628, 0, 628, 0, 628, 0, 0, - 0, 628, 946, 0, 0, 0, 0, 0, 2290, 0, - 0, 0, 947, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2551, 0, 0, 2552, 0, 946, 0, 0, - 0, 947, 0, 0, 0, 0, 0, 0, 0, 0, - 2553, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 4572, 0, 0, 947, 0, 0, 947, 0, 0, 0, - 0, 0, 0, 2479, 0, 0, 0, 0, 0, 0, - 0, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, - 0, 0, 0, 0, 6040, 0, 0, 946, 0, 0, - 2050, 0, 0, 2051, 0, 0, 0, 2052, 2053, 2054, - 3368, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2553, 0, 2543, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2544, 0, 0, 0, - 0, 4573, 0, 2545, 0, 0, 0, 1774, 0, 0, - 2479, 0, 0, 0, 0, 0, 0, 0, 2480, 2481, - 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 2546, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2050, 0, 0, 2051, 0, 0, 0, 2052, 2053, 2054, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2543, 1773, 0, 0, - 0, 879, 0, 946, 0, 0, 2544, 0, 0, 0, - 0, 0, 0, 2545, 2479, 0, 0, 0, 0, 0, - 0, 0, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, - 2488, 0, 0, 0, 0, 0, 0, 0, 0, 2546, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 3980, - 0, 0, 0, 0, 3981, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 879, 0, - 0, 0, 0, 2547, 0, 0, 0, 882, 2548, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2549, 2238, 0, 0, 0, 0, 0, 0, 947, 879, - 0, 0, 0, 0, 0, 2550, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 946, 0, 5936, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 879, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2547, 0, 0, 2290, 0, 2548, 1774, - 0, 0, 0, 0, 1774, 0, 1774, 0, 0, 0, - 2551, 0, 0, 2552, 0, 0, 0, 0, 0, 0, - 2549, 2238, 0, 0, 0, 0, 0, 946, 0, 0, - 1774, 0, 0, 0, 0, 2550, 886, 0, 946, 0, - 886, 886, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 946, 0, 0, 0, 946, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2290, 947, 0, 0, - 947, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2551, 0, 0, 2552, 0, 0, 0, 0, 886, 0, - 0, 0, 3982, 0, 886, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 5937, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 877, 0, - 0, 0, 877, 877, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 886, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 947, 947, 0, 879, 0, 0, 0, 946, 0, 0, - 0, 947, 2553, 0, 879, 946, 946, 0, 0, 0, - 877, 0, 0, 0, 0, 0, 877, 0, 947, 0, - 879, 0, 2479, 0, 0, 0, 0, 0, 0, 0, - 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 877, 1773, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 879, 0, 0, 0, 0, 0, 0, - 0, 880, 0, 0, 0, 0, 0, 0, 879, 0, - 0, 879, 879, 0, 0, 0, 0, 0, 0, 947, - 0, 689, 2479, 0, 0, 0, 690, 880, 0, 0, - 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, - 0, 0, 879, 879, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 691, 0, 0, 0, 3411, 3412, - 0, 0, 0, 0, 0, 0, 0, 692, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3427, 3428, 0, - 3430, 3431, 0, 693, 886, 3434, 3435, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 3446, 694, 0, 0, 0, 0, 0, 3455, 0, 0, - 0, 3458, 3459, 0, 0, 3462, 3463, 0, 0, 0, - 0, 0, 3468, 0, 0, 695, 0, 0, 0, 0, - 0, 0, 0, 0, 3483, 0, 696, 0, 0, 0, - 0, 0, 0, 0, 0, 697, 3500, 0, 0, 0, - 0, 3502, 0, 0, 0, 0, 0, 886, 698, 0, - 0, 886, 0, 699, 879, 880, 3508, 0, 0, 0, - 700, 0, 0, 0, 0, 3515, 877, 0, 3519, 0, - 3521, 3524, 3526, 0, 0, 0, 0, 3534, 3537, 701, - 0, 0, 0, 0, 0, 0, 0, 3550, 0, 0, - 0, 0, 0, 3560, 0, 0, 0, 3563, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 946, 0, 3573, - 3574, 0, 0, 0, 3579, 0, 0, 947, 0, 0, - 3588, 3589, 0, 0, 0, 0, 702, 0, 0, 0, - 0, 0, 0, 0, 3598, 0, 0, 3599, 0, 877, - 0, 0, 0, 877, 3611, 3612, 0, 0, 0, 0, - 3616, 0, 0, 886, 0, 0, 0, 0, 0, 947, - 0, 0, 3623, 0, 0, 3626, 0, 703, 886, 0, - 3629, 947, 0, 886, 0, 0, 3632, 3633, 0, 0, - 704, 882, 0, 0, 3639, 0, 0, 0, 3641, 0, - 0, 705, 3648, 3649, 3650, 3651, 0, 3653, 0, 0, - 0, 213, 706, 0, 0, 707, 947, 882, 0, 0, - 3678, 3679, 0, 3681, 0, 0, 880, 0, 0, 0, - 0, 946, 0, 0, 3690, 3691, 3692, 880, 0, 0, - 0, 0, 708, 0, 0, 709, 0, 0, 0, 710, - 0, 711, 0, 880, 0, 877, 0, 0, 712, 0, - 0, 713, 0, 0, 0, 0, 1773, 0, 0, 0, - 877, 0, 0, 0, 0, 877, 0, 0, 0, 0, - 714, 0, 883, 0, 0, 0, 0, 715, 0, 946, - 0, 3744, 0, 716, 1774, 0, 717, 946, 0, 3768, - 718, 0, 0, 0, 0, 946, 0, 0, 719, 0, - 720, 0, 0, 947, 0, 721, 0, 0, 3780, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 722, 0, - 0, 0, 0, 0, 0, 0, 885, 0, 0, 0, - 0, 723, 0, 0, 0, 0, 0, 0, 946, 946, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 946, 0, 0, 882, 0, 0, 3848, 0, - 0, 0, 0, 0, 0, 946, 946, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3862, 0, 3864, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 947, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 880, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2050, 0, 0, 2051, 0, 0, - 0, 2052, 2053, 2054, 0, 0, 0, 0, 886, 0, - 0, 886, 0, 886, 0, 0, 0, 0, 886, 0, - 2543, 0, 0, 3936, 0, 0, 2050, 0, 0, 2051, - 2544, 0, 0, 2052, 2053, 2054, 0, 2545, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2543, 3927, 0, 0, 0, 0, 0, 0, - 0, 0, 2544, 2546, 0, 0, 886, 0, 0, 2545, - 0, 0, 0, 0, 886, 0, 0, 0, 0, 0, - 0, 947, 0, 947, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1773, 2546, 882, 0, 0, 886, - 877, 0, 0, 877, 0, 877, 0, 882, 0, 0, - 877, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 882, 0, 0, 0, 0, 947, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 937, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 877, 0, - 0, 0, 0, 0, 0, 0, 877, 0, 0, 886, - 0, 886, 0, 0, 0, 0, 0, 2547, 1774, 0, - 0, 0, 2548, 937, 0, 0, 0, 0, 0, 0, - 0, 877, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2549, 2238, 0, 0, 0, 2547, - 0, 0, 0, 0, 2548, 0, 0, 0, 0, 2550, - 0, 0, 0, 0, 880, 879, 0, 0, 0, 879, - 879, 0, 0, 0, 0, 0, 2549, 2238, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2550, 0, 0, 0, 0, 0, 0, 0, 0, - 2290, 877, 0, 877, 0, 886, 0, 0, 0, 0, - 0, 0, 0, 0, 2551, 0, 0, 2552, 0, 882, - 0, 0, 0, 0, 0, 0, 0, 879, 0, 0, - 0, 880, 2290, 879, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2551, 886, 0, 2552, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 3953, 0, - 0, 0, 880, 0, 879, 886, 0, 0, 0, 4146, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 877, 0, 4158, - 0, 0, 0, 0, 0, 880, 2553, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 4165, 0, 0, 0, - 4165, 0, 0, 0, 0, 4176, 4177, 4178, 0, 0, - 0, 947, 0, 0, 0, 0, 0, 0, 2553, 877, - 0, 0, 0, 886, 0, 947, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 4208, 4209, 4210, 4211, 886, 0, 877, 0, 0, - 0, 0, 0, 0, 0, 0, 1774, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 886, 0, 0, - 0, 4227, 0, 0, 0, 0, 0, 0, 0, 4230, - 0, 4234, 4235, 4236, 0, 0, 2479, 0, 0, 0, - 0, 0, 0, 0, 2480, 2481, 2482, 2483, 2484, 2485, - 2486, 2487, 2488, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 877, 883, 0, 2479, 0, - 0, 0, 0, 0, 0, 0, 2480, 2481, 2482, 2483, - 2484, 2485, 2486, 2487, 2488, 0, 0, 877, 0, 0, - 0, 0, 883, 0, 882, 0, 0, 0, 0, 0, - 886, 0, 1774, 0, 0, 0, 0, 0, 0, 877, - 0, 0, 0, 879, 0, 0, 0, 0, 0, 0, - 885, 0, 0, 0, 886, 0, 880, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 880, 0, 0, - 0, 0, 0, 0, 0, 0, 885, 4320, 0, 886, - 0, 0, 0, 880, 0, 0, 4326, 0, 0, 0, - 0, 882, 0, 0, 0, 0, 0, 1774, 0, 947, - 0, 0, 0, 1773, 0, 0, 0, 0, 0, 0, - 0, 0, 4336, 4337, 0, 0, 879, 4338, 0, 0, - 879, 0, 877, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 882, 0, 0, 0, 880, 0, 0, 4380, - 0, 0, 0, 0, 0, 0, 877, 0, 0, 0, - 0, 880, 0, 0, 880, 880, 0, 0, 946, 0, - 0, 0, 0, 0, 0, 882, 0, 0, 0, 0, - 883, 877, 0, 0, 0, 0, 946, 0, 0, 0, - 946, 0, 0, 0, 946, 880, 880, 0, 0, 0, - 0, 4417, 0, 946, 0, 0, 4423, 0, 0, 0, - 0, 0, 4429, 0, 0, 0, 0, 0, 0, 0, - 0, 946, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 947, 879, 0, 885, 0, 0, 0, 0, 886, - 0, 0, 4468, 0, 937, 0, 0, 879, 0, 0, - 0, 0, 879, 0, 0, 946, 0, 947, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 4483, 0, 4484, 0, 946, 946, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1773, 946, 0, 0, - 1773, 0, 0, 0, 4509, 0, 937, 937, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 880, 0, 886, - 0, 877, 0, 0, 946, 0, 1773, 0, 0, 0, - 946, 883, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 883, 0, 946, 886, 0, 0, 0, 0, - 0, 946, 0, 0, 946, 0, 882, 0, 883, 0, - 946, 0, 0, 0, 947, 0, 0, 882, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 946, 0, 0, 882, 0, 885, 946, 0, 0, 0, - 0, 0, 0, 946, 0, 0, 885, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 946, 0, 0, - 0, 877, 885, 0, 0, 0, 0, 0, 0, 0, - 946, 0, 0, 0, 0, 1773, 0, 0, 0, 0, - 0, 946, 0, 0, 950, 0, 882, 877, 0, 0, - 0, 0, 0, 0, 0, 0, 984, 0, 0, 0, - 0, 882, 0, 0, 882, 882, 0, 1003, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 882, 882, 0, 886, 0, - 0, 1773, 0, 0, 0, 0, 0, 879, 0, 0, - 879, 0, 879, 0, 0, 0, 0, 879, 0, 0, - 1774, 0, 0, 0, 883, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 886, 0, 0, 0, 0, - 886, 0, 0, 4695, 0, 0, 4702, 0, 4703, 0, - 0, 0, 0, 0, 0, 879, 0, 0, 1774, 0, - 0, 4710, 0, 879, 0, 0, 937, 937, 885, 0, - 0, 0, 0, 4716, 0, 0, 1774, 4719, 0, 0, - 877, 0, 0, 0, 0, 0, 0, 0, 879, 0, - 0, 0, 0, 0, 0, 0, 4743, 0, 689, 0, - 0, 0, 0, 3152, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 4747, 0, 0, 882, 0, 0, - 4751, 0, 0, 0, 0, 0, 0, 877, 0, 0, - 0, 0, 877, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 4786, 946, 0, 0, 4790, - 0, 0, 0, 0, 692, 3153, 0, 0, 879, 0, - 879, 0, 0, 0, 946, 4801, 4802, 4803, 4804, 0, - 693, 946, 0, 886, 0, 4808, 4809, 4810, 4811, 0, - 0, 0, 0, 0, 4813, 4814, 0, 0, 1029, 0, - 4821, 4822, 0, 4824, 4825, 4826, 4827, 4828, 4829, 4830, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 4839, - 0, 0, 3154, 4842, 4843, 4844, 4845, 0, 0, 0, - 0, 0, 0, 696, 0, 0, 0, 0, 0, 0, - 0, 0, 697, 0, 0, 0, 0, 4165, 0, 0, - 0, 0, 0, 0, 0, 698, 1773, 0, 0, 0, - 3155, 0, 1773, 0, 879, 4865, 0, 0, 0, 883, - 0, 0, 0, 0, 0, 877, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1032, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 879, 0, 886, 0, - 0, 3156, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 885, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 702, 879, 0, 883, 0, 0, 0, - 0, 4946, 0, 946, 0, 0, 886, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 886, 1022, - 0, 0, 0, 0, 4165, 1054, 0, 883, 0, 0, - 0, 4971, 0, 4972, 0, 0, 0, 0, 0, 0, - 885, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 877, 0, 879, 0, 0, 4986, 0, 0, 213, 3157, - 883, 0, 707, 0, 0, 0, 0, 0, 880, 0, - 0, 0, 880, 880, 879, 0, 0, 0, 0, 0, - 0, 885, 0, 0, 0, 0, 0, 0, 877, 1036, - 0, 886, 3158, 0, 0, 0, 879, 0, 711, 0, - 0, 0, 0, 0, 0, 712, 0, 0, 713, 0, - 877, 0, 0, 0, 885, 0, 0, 0, 0, 0, - 0, 0, 946, 946, 0, 0, 0, 714, 0, 0, - 880, 0, 0, 0, 1038, 0, 880, 0, 0, 0, - 716, 0, 0, 1039, 0, 0, 0, 718, 0, 946, - 0, 0, 946, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3159, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 880, 0, 879, - 0, 0, 0, 877, 0, 0, 0, 2050, 723, 0, - 2051, 0, 0, 0, 2052, 2053, 2054, 0, 0, 0, - 0, 0, 1344, 879, 0, 0, 0, 0, 0, 0, - 0, 0, 886, 2543, 0, 0, 3985, 0, 0, 0, - 0, 1369, 0, 2544, 1773, 1773, 1773, 0, 879, 0, - 2545, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 946, - 0, 883, 0, 0, 0, 0, 2546, 5123, 5124, 5125, - 0, 0, 883, 5126, 5127, 5128, 5129, 0, 946, 0, - 5131, 0, 0, 0, 0, 0, 0, 0, 883, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 946, 1427, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 877, 885, 5150, 5151, 5152, 5153, - 5154, 0, 5156, 5157, 0, 0, 885, 0, 0, 0, - 0, 0, 0, 0, 5166, 5167, 0, 0, 0, 0, - 0, 883, 885, 886, 0, 0, 0, 0, 1563, 0, - 0, 0, 0, 0, 0, 0, 883, 0, 0, 883, - 883, 0, 0, 0, 0, 0, 0, 0, 0, 5173, - 0, 0, 0, 0, 0, 0, 0, 0, 882, 0, - 2547, 0, 882, 882, 0, 2548, 946, 0, 879, 0, - 883, 883, 0, 0, 0, 885, 880, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2549, 2238, 0, - 885, 886, 0, 885, 885, 0, 0, 0, 0, 0, - 0, 0, 2550, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1773, 0, 877, 0, 0, 0, 946, - 882, 946, 0, 0, 885, 885, 882, 0, 0, 0, - 0, 0, 0, 0, 946, 0, 946, 0, 0, 0, - 0, 0, 1823, 2290, 0, 0, 0, 0, 0, 880, - 0, 5236, 0, 880, 0, 0, 0, 2551, 879, 0, - 2552, 0, 0, 0, 0, 0, 0, 882, 0, 0, - 1857, 1860, 1861, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 877, 879, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 883, 946, 0, 0, 0, 0, 0, 0, - 0, 886, 0, 0, 0, 0, 5287, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2050, 0, 0, 2051, 0, 0, 0, 2052, 2053, - 2054, 0, 0, 0, 0, 946, 0, 0, 0, 2553, - 0, 0, 0, 0, 0, 880, 885, 2543, 0, 0, - 0, 0, 0, 0, 946, 0, 0, 2544, 0, 0, - 880, 0, 0, 0, 2545, 880, 0, 0, 0, 1344, - 0, 0, 0, 0, 0, 0, 946, 0, 0, 946, - 0, 0, 0, 0, 0, 1986, 0, 0, 0, 0, - 2546, 0, 0, 877, 1344, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 879, 628, 0, - 0, 0, 0, 0, 0, 0, 0, 886, 0, 0, - 0, 0, 886, 886, 0, 0, 0, 0, 0, 2479, - 0, 0, 0, 0, 0, 0, 0, 2480, 2481, 2482, - 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 0, 0, - 1773, 0, 0, 0, 879, 0, 882, 0, 0, 879, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5391, 0, 0, 0, 3990, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 5401, 0, 0, 0, 2547, 0, 5407, 5408, 0, 2548, - 0, 0, 0, 0, 0, 0, 5419, 0, 0, 877, - 0, 0, 0, 5421, 877, 877, 0, 0, 0, 0, - 0, 2549, 2238, 0, 2537, 0, 0, 0, 0, 882, - 0, 0, 0, 882, 0, 886, 2550, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 5473, 5474, - 0, 0, 0, 0, 0, 0, 0, 2050, 0, 0, - 2051, 5482, 0, 5484, 2052, 2053, 2054, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2290, 5498, 886, - 0, 0, 0, 2543, 0, 0, 3997, 0, 0, 0, - 0, 2551, 879, 2544, 2552, 0, 0, 0, 0, 0, - 2545, 0, 0, 4165, 2628, 0, 0, 0, 0, 0, - 880, 5532, 0, 880, 0, 880, 0, 0, 0, 0, - 880, 946, 0, 0, 0, 0, 2546, 877, 0, 0, - 0, 0, 0, 0, 0, 882, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 882, 0, 0, 0, 0, 882, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 880, 0, - 0, 877, 1773, 0, 0, 0, 880, 1773, 0, 1773, - 5569, 0, 0, 2553, 0, 0, 0, 2745, 0, 0, - 0, 0, 0, 0, 0, 0, 2768, 0, 0, 0, - 0, 880, 0, 1773, 5589, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 5596, 0, 0, 879, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2806, 0, - 0, 0, 0, 0, 2818, 2818, 0, 0, 2818, 0, - 2547, 0, 0, 0, 0, 2548, 0, 0, 0, 0, - 946, 2836, 0, 946, 2839, 879, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2549, 2238, 0, - 0, 880, 0, 880, 0, 0, 0, 879, 0, 0, - 0, 5655, 2550, 2479, 0, 0, 0, 0, 0, 0, - 0, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2892, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2290, 2911, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2551, 0, 0, - 2552, 0, 0, 946, 946, 0, 0, 0, 0, 0, - 879, 4165, 0, 0, 946, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 880, 0, 0, - 0, 946, 0, 883, 0, 0, 0, 883, 883, 0, - 0, 0, 0, 0, 0, 0, 0, 1320, 1320, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 880, - 882, 0, 5750, 882, 0, 882, 0, 0, 0, 0, - 882, 0, 0, 0, 0, 0, 5763, 885, 0, 2553, - 0, 885, 885, 2933, 0, 883, 0, 880, 0, 0, - 0, 883, 0, 0, 2936, 0, 0, 0, 0, 0, - 0, 0, 946, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1320, 0, 0, 882, 0, - 0, 879, 0, 0, 0, 0, 882, 0, 0, 0, - 0, 0, 883, 0, 0, 5802, 2980, 2818, 0, 885, - 2050, 0, 0, 2051, 0, 885, 0, 2052, 2053, 2054, - 0, 882, 0, 0, 0, 880, 0, 0, 0, 0, - 0, 3015, 0, 0, 0, 0, 2543, 0, 3028, 0, - 0, 0, 0, 0, 0, 0, 2544, 880, 0, 2479, - 0, 0, 0, 2545, 0, 0, 885, 2480, 2481, 2482, - 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 0, 880, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2546, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 882, 0, 882, 0, 5876, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1685, 1689, 0, 0, - 3089, 0, 879, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 5888, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 5898, 0, - 0, 0, 0, 1344, 1344, 0, 0, 0, 0, 0, - 0, 0, 880, 0, 0, 0, 0, 0, 0, 0, - 3142, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 880, 0, 0, 0, - 879, 0, 0, 0, 0, 0, 0, 882, 0, 0, - 946, 0, 0, 2547, 0, 0, 0, 0, 2548, 0, - 0, 880, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 883, 0, 0, 0, 0, 0, 0, 0, 0, - 2549, 2238, 0, 0, 0, 0, 0, 0, 0, 882, - 0, 0, 946, 0, 0, 2550, 0, 0, 0, 5970, - 0, 0, 0, 0, 946, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 882, 0, 0, - 0, 0, 0, 0, 0, 885, 0, 0, 0, 0, - 0, 0, 2490, 0, 0, 0, 2290, 0, 0, 946, - 0, 0, 0, 0, 883, 0, 0, 0, 883, 0, - 2551, 0, 0, 2552, 0, 0, 0, 0, 0, 0, - 879, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 882, 0, 0, 2490, 0, - 0, 0, 0, 0, 0, 0, 0, 2050, 885, 2003, - 2051, 0, 885, 0, 2052, 2053, 2054, 882, 0, 0, - 0, 880, 0, 0, 0, 0, 0, 1773, 0, 0, - 0, 0, 0, 2543, 0, 0, 4579, 0, 0, 882, - 2018, 0, 0, 2544, 0, 0, 946, 0, 0, 0, - 2545, 0, 2553, 0, 0, 0, 0, 0, 0, 0, - 883, 0, 0, 0, 0, 0, 0, 0, 2037, 2038, - 2039, 0, 2041, 0, 0, 883, 2546, 0, 0, 0, - 883, 0, 0, 0, 4525, 0, 0, 0, 0, 0, - 0, 0, 2497, 0, 0, 0, 879, 0, 0, 0, - 0, 879, 879, 0, 0, 0, 0, 0, 0, 0, - 0, 880, 0, 0, 885, 0, 0, 0, 0, 0, - 0, 0, 882, 0, 0, 0, 0, 0, 0, 885, - 0, 0, 946, 0, 885, 0, 0, 880, 0, 0, - 0, 0, 0, 0, 0, 0, 882, 0, 0, 0, - 0, 0, 2479, 0, 0, 0, 0, 0, 0, 0, - 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, 0, - 0, 882, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2547, 0, 0, 0, 0, 2548, 2595, 0, 0, 0, - 2607, 2612, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 879, 0, 0, 2549, 2238, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2550, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 946, 0, 946, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 879, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2290, 0, 0, 0, 0, 0, 0, - 880, 0, 0, 0, 0, 0, 0, 2551, 0, 0, - 2552, 946, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, - 0, 2490, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 882, 0, 0, 0, 0, 0, 880, 0, 0, - 0, 0, 880, 0, 0, 883, 0, 0, 883, 0, - 883, 1773, 0, 0, 3301, 883, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3306, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2553, - 0, 0, 0, 0, 0, 0, 0, 1427, 0, 885, - 0, 0, 885, 883, 885, 0, 0, 0, 0, 885, - 0, 883, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 882, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 883, 0, 0, 0, - 0, 0, 0, 0, 1427, 1427, 0, 882, 0, 0, - 0, 0, 0, 1685, 1685, 1685, 0, 885, 0, 0, - 0, 0, 0, 0, 0, 885, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 880, 0, 0, 1344, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2479, - 885, 0, 0, 0, 0, 0, 0, 2480, 2481, 2482, - 2483, 2484, 2485, 2486, 2487, 2488, 883, 0, 883, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 885, 0, 885, 0, 946, 0, 0, 2050, 0, 0, - 2051, 0, 0, 0, 2052, 2053, 2054, 0, 946, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 882, 0, 0, 2543, 0, 0, 0, 0, 0, 0, - 880, 0, 883, 2544, 0, 0, 0, 0, 0, 1773, - 2545, 3518, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3540, 0, 0, 0, - 0, 0, 0, 0, 0, 2490, 2546, 882, 880, 0, - 0, 0, 882, 0, 883, 0, 0, 0, 3568, 0, - 2490, 0, 0, 0, 3204, 0, 885, 0, 0, 0, - 880, 0, 0, 0, 0, 0, 0, 0, 0, 2490, - 2490, 2490, 883, 2490, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 885, 0, - 0, 0, 0, 0, 0, 1773, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2050, 0, 0, 2051, - 0, 0, 0, 2052, 2053, 2054, 885, 0, 0, 0, - 0, 5007, 0, 880, 3646, 3647, 0, 0, 0, 0, - 883, 0, 2543, 0, 0, 0, 0, 0, 0, 0, - 2547, 0, 2544, 0, 0, 2548, 0, 0, 0, 2545, + 0, 0, 890, 0, 0, 0, 0, 0, 0, 883, + 0, 0, 0, 0, 0, 0, 0, 883, 0, 951, + 889, 0, 0, 0, 0, 0, 1790, 0, 0, 941, + 0, 889, 0, 5943, 0, 0, 0, 0, 0, 0, + 0, 0, 883, 0, 890, 0, 0, 889, 0, 0, + 2073, 887, 0, 2074, 0, 0, 0, 2075, 2076, 2077, + 0, 0, 881, 0, 886, 0, 0, 0, 0, 1791, + 0, 0, 890, 0, 941, 886, 0, 2579, 0, 0, + 0, 950, 0, 0, 0, 0, 0, 2580, 0, 0, + 0, 886, 887, 0, 2581, 0, 0, 0, 0, 950, + 0, 0, 0, 950, 881, 0, 0, 950, 0, 0, + 0, 0, 883, 0, 883, 0, 950, 0, 0, 0, + 2582, 0, 0, 0, 0, 887, 0, 6018, 0, 0, + 0, 0, 881, 0, 950, 0, 0, 0, 0, 0, + 890, 0, 0, 0, 0, 886, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 6030, + 886, 0, 890, 886, 886, 0, 0, 0, 950, 0, + 6040, 884, 0, 0, 0, 884, 884, 0, 0, 0, + 0, 0, 0, 0, 890, 0, 0, 0, 950, 950, + 0, 0, 0, 0, 886, 886, 0, 0, 0, 0, + 881, 0, 0, 0, 889, 0, 0, 0, 883, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1790, + 950, 0, 881, 1790, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 884, 0, 2583, 0, 0, 0, 884, + 2584, 0, 0, 0, 881, 0, 0, 950, 2073, 1790, + 883, 2074, 0, 950, 0, 2075, 2076, 2077, 0, 0, + 0, 0, 0, 2585, 2264, 0, 890, 950, 0, 0, + 0, 0, 6107, 0, 950, 2579, 0, 950, 883, 0, + 884, 0, 0, 950, 2586, 2580, 0, 0, 951, 954, + 0, 0, 2581, 0, 0, 0, 0, 0, 0, 0, + 0, 988, 951, 950, 0, 0, 0, 0, 0, 950, + 890, 0, 1007, 0, 0, 0, 950, 887, 2582, 0, + 0, 0, 0, 0, 0, 2322, 881, 0, 887, 0, + 950, 886, 0, 1791, 0, 890, 0, 0, 0, 2587, + 0, 0, 2588, 950, 887, 0, 883, 0, 1790, 0, + 0, 0, 0, 0, 950, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 883, 0, + 881, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2073, 0, 0, 2074, 0, + 883, 0, 2075, 2076, 2077, 881, 0, 0, 887, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2579, 887, 1790, 4062, 887, 887, 0, 0, + 0, 0, 2580, 0, 0, 0, 0, 0, 0, 2581, + 0, 0, 2589, 2583, 1791, 0, 0, 0, 2584, 0, + 0, 0, 0, 0, 0, 0, 0, 887, 887, 0, + 0, 0, 0, 0, 0, 2582, 0, 0, 0, 889, + 0, 2585, 2264, 0, 0, 0, 0, 0, 0, 0, 0, 0, 883, 0, 0, 0, 0, 0, 0, 0, - 1773, 0, 946, 0, 0, 882, 0, 2549, 2238, 3170, - 0, 0, 0, 0, 883, 2546, 0, 0, 0, 0, - 0, 3191, 2550, 3192, 885, 3194, 0, 0, 3208, 3211, - 3216, 0, 0, 0, 0, 0, 3225, 0, 0, 3230, - 0, 0, 0, 0, 0, 0, 885, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3238, 3239, 3240, 0, - 0, 0, 0, 2290, 0, 3770, 0, 0, 885, 0, - 0, 0, 0, 3241, 0, 0, 0, 2551, 0, 0, - 2552, 0, 0, 0, 880, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 883, 0, 0, - 0, 0, 0, 0, 0, 2050, 0, 0, 2051, 0, - 5013, 0, 2052, 2053, 2054, 0, 0, 0, 0, 0, - 0, 883, 0, 0, 946, 0, 0, 0, 0, 2547, - 882, 2543, 0, 0, 2548, 0, 0, 0, 0, 0, - 0, 2544, 0, 0, 0, 0, 883, 0, 2545, 0, - 946, 885, 0, 0, 0, 0, 2549, 2238, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 882, 2553, - 0, 2550, 0, 0, 2546, 885, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 882, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 885, 0, 0, 0, 0, 880, 0, 0, 0, 0, - 0, 0, 2290, 0, 0, 0, 3248, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2551, 0, 0, 2552, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3265, 0, 0, 0, - 0, 0, 0, 882, 5014, 0, 0, 946, 0, 2479, - 0, 0, 0, 880, 0, 0, 0, 2480, 2481, 2482, - 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 2547, 0, - 0, 0, 0, 2548, 0, 0, 883, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 3267, - 0, 0, 0, 0, 0, 2549, 2238, 0, 2553, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2550, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 885, 0, 0, 0, 0, 0, 0, 0, 0, 2490, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2290, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 4043, 0, 882, 2551, 883, 0, 2552, 0, - 0, 0, 0, 880, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1427, 0, 0, 0, 0, 0, 0, - 0, 0, 883, 1773, 0, 0, 0, 0, 2479, 0, - 0, 0, 0, 0, 0, 0, 2480, 2481, 2482, 2483, - 2484, 2485, 2486, 2487, 2488, 0, 0, 0, 0, 0, - 885, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, - 0, 1773, 0, 0, 0, 0, 885, 0, 0, 2490, - 0, 0, 0, 0, 2490, 0, 0, 2553, 0, 1773, - 0, 0, 0, 0, 3274, 3275, 3276, 3277, 3278, 3279, - 3280, 3281, 3282, 0, 3283, 0, 0, 0, 0, 0, - 0, 0, 0, 1320, 0, 882, 1685, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 880, - 0, 0, 0, 0, 880, 880, 0, 2050, 0, 0, - 2051, 0, 0, 0, 2052, 2053, 2054, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3241, 0, 0, - 0, 3248, 0, 2543, 3265, 883, 3267, 0, 0, 3318, - 0, 0, 0, 2544, 0, 0, 0, 0, 0, 0, - 2545, 0, 0, 882, 0, 0, 0, 2479, 0, 0, - 0, 0, 0, 0, 0, 2480, 2481, 2482, 2483, 2484, - 2485, 2486, 2487, 2488, 0, 0, 2546, 0, 0, 0, - 0, 0, 883, 0, 0, 0, 0, 883, 0, 885, - 0, 0, 2038, 2039, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 880, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 885, 0, 0, 0, - 0, 885, 0, 0, 0, 5015, 0, 0, 0, 4252, - 0, 0, 0, 0, 0, 2050, 0, 0, 2051, 2818, - 0, 880, 2052, 2053, 2054, 0, 0, 0, 0, 0, - 0, 0, 0, 882, 0, 3460, 0, 0, 0, 0, - 0, 2543, 0, 0, 0, 0, 0, 0, 0, 0, - 2547, 2544, 0, 0, 0, 2548, 0, 0, 2545, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2549, 2238, 0, - 883, 0, 0, 0, 2546, 0, 0, 0, 0, 0, - 0, 0, 2550, 0, 0, 0, 0, 0, 0, 0, - 0, 2050, 0, 0, 2051, 0, 0, 0, 2052, 2053, - 2054, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2543, 0, 0, - 0, 0, 0, 2290, 885, 0, 0, 2544, 0, 0, - 0, 0, 0, 0, 2545, 0, 0, 2551, 0, 0, - 2552, 0, 0, 0, 0, 0, 0, 0, 0, 882, - 0, 0, 0, 0, 882, 882, 0, 0, 0, 0, - 2546, 0, 0, 0, 0, 0, 0, 0, 4384, 4385, - 4386, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 4395, 0, 0, 2547, 0, - 0, 0, 0, 2548, 0, 883, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2549, 2238, 0, 4420, 4422, - 0, 0, 0, 4427, 0, 0, 0, 0, 0, 2553, - 2550, 0, 0, 883, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 885, - 5534, 0, 0, 0, 0, 883, 0, 0, 0, 0, - 3702, 3703, 1685, 0, 0, 0, 3707, 882, 0, 0, - 0, 2290, 0, 0, 2547, 0, 0, 0, 0, 2548, - 0, 0, 0, 0, 0, 2551, 0, 885, 2552, 0, - 0, 0, 0, 3736, 0, 0, 0, 0, 0, 0, - 0, 2549, 2238, 0, 0, 0, 0, 0, 0, 885, - 0, 882, 0, 0, 0, 0, 2550, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 4508, 883, 2479, - 1344, 0, 0, 0, 0, 0, 0, 2480, 2481, 2482, - 2483, 2484, 2485, 2486, 2487, 2488, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2290, 0, 0, - 0, 0, 2490, 0, 0, 0, 0, 0, 0, 0, - 0, 2551, 0, 0, 2552, 0, 0, 2553, 0, 0, - 0, 0, 885, 2490, 2490, 0, 2490, 0, 0, 0, - 0, 3204, 3204, 0, 3976, 0, 3204, 0, 0, 0, - 2490, 0, 0, 2490, 0, 0, 0, 0, 2490, 0, - 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, - 0, 0, 2490, 0, 0, 0, 0, 0, 0, 0, - 2490, 2490, 2490, 2490, 0, 0, 0, 3204, 3204, 0, - 2490, 0, 0, 0, 0, 0, 0, 0, 0, 883, - 0, 0, 5362, 0, 0, 0, 0, 2490, 0, 2490, - 4612, 4613, 4614, 2553, 0, 0, 2490, 2490, 2490, 2490, - 2490, 2490, 2490, 2490, 2490, 2490, 0, 2479, 0, 0, - 0, 0, 0, 0, 0, 2480, 2481, 2482, 2483, 2484, - 2485, 2486, 2487, 2488, 0, 0, 0, 0, 0, 0, - 0, 3932, 0, 885, 0, 0, 3938, 0, 0, 0, - 2490, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2050, 0, 0, 2051, 0, - 0, 0, 2052, 2053, 2054, 2041, 0, 0, 0, 0, - 0, 640, 0, 0, 0, 0, 3216, 0, 3216, 3216, - 0, 2543, 0, 0, 0, 0, 0, 0, 0, 641, - 0, 2544, 4000, 2479, 0, 4003, 0, 4005, 2545, 0, - 883, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, 2488, - 0, 0, 0, 0, 642, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2546, 0, 0, 643, 0, 0, - 0, 0, 4024, 0, 4027, 0, 4029, 0, 0, 0, - 0, 0, 0, -868, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 885, 0, 0, 0, 0, 0, - 0, 644, 0, 0, 0, 0, 0, 645, 883, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2490, 0, 0, 646, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 647, 0, 0, 0, - 0, 0, 0, 0, 0, 648, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 649, 0, - 0, 0, 885, 0, 4094, 0, 650, 0, 0, 2595, - 651, 0, 0, 0, 0, 0, 0, 0, 2547, 0, - 0, 0, 0, 2548, 2612, 0, 0, 0, 0, -1069, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2549, 2238, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2550, 0, 0, 0, 0, 0, 652, 0, 883, 0, - 0, 0, 0, 0, 0, 0, -604, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 4144, - 0, 0, 0, 0, 0, 0, 0, 4875, 0, 0, - 0, 2290, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2551, 0, 653, 2552, 0, - 654, 0, 885, 0, 0, 0, 0, 0, 0, 4907, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 655, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 656, 0, 0, 0, 0, - 0, 3028, -462, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 657, 0, 0, 0, 0, 0, 0, 0, - 0, 658, 0, 0, 883, 0, 4965, 0, -462, 883, - 883, 659, 0, 0, 2490, 2490, 0, 2553, 0, 2490, - 0, 0, 0, 3089, 0, 0, 0, 0, 0, 0, - 660, 0, 0, 0, 0, 0, 0, 661, 0, 0, - 0, 0, 0, -462, 0, 0, 662, 663, 2490, 664, - 665, 0, 0, 0, 0, 0, 0, 0, 885, 0, - 0, 0, 0, 885, 885, 666, 0, 0, 0, 0, - 0, 0, 667, 0, 0, 668, 0, 0, 669, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -462, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2479, 0, 0, - 0, 0, 883, 0, 0, 2480, 2481, 2482, 2483, 2484, - 2485, 2486, 2487, 2488, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 5050, 5051, 5052, 5053, 0, 0, - 0, 0, 1685, 0, 0, 0, 0, 0, 1685, 0, + 0, 0, 2586, 2073, 0, 0, 2074, 0, 0, 884, + 2075, 2076, 2077, 0, 0, 890, 0, 0, 0, 1791, + 0, 951, 0, 0, 0, 0, 0, 0, 0, 0, + 2579, 0, 0, 0, 0, 0, 883, 0, 0, 0, + 2580, 0, 0, 2322, 0, 0, 889, 2581, 0, 0, + 0, 0, 0, 4004, 2513, 0, 0, 2587, 0, 0, + 2588, 883, 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, + 2521, 2522, 0, 2582, 0, 881, 0, 0, 0, 4030, + 0, 0, 884, 0, 0, 0, 884, 889, 0, 950, + 2583, 1790, 0, 0, 0, 2584, 0, 0, 0, 0, + 0, 0, 0, 0, 887, 890, 0, 0, 950, 0, + 0, 0, 0, 0, 0, 950, 0, 0, 2585, 2264, + 889, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 890, 0, 0, 0, 0, 0, 0, 0, 2586, + 0, 0, 0, 0, 0, 0, 0, 951, 0, 0, + 2589, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 941, 0, 0, 0, 0, 881, 0, 0, 0, 4067, + 0, 0, 0, 951, 0, 0, 0, 0, 0, 0, + 2322, 0, 0, 0, 0, 0, 0, 0, 2583, 884, + 0, 881, 0, 2584, 2587, 0, 0, 2588, 0, 0, + 0, 0, 0, 0, 884, 0, 1790, 0, 0, 884, + 0, 0, 1790, 0, 0, 0, 2585, 2264, 0, 0, + 0, 883, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 941, 941, 0, 0, 0, 2586, 884, 0, + 0, 0, 0, 0, 1027, 0, 0, 0, 0, 0, + 1059, 0, 2513, 0, 0, 0, 0, 0, 0, 0, + 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, + 0, 0, 0, 0, 890, 0, 0, 0, 2322, 0, + 0, 0, 0, 0, 0, 0, 0, 2589, 0, 0, + 0, 951, 2587, 0, 0, 2588, 0, 950, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 883, 889, 0, 0, 0, 0, 0, 0, 0, + 0, 890, 0, 889, 0, 0, 890, 0, 0, 0, + 0, 0, 0, 0, 881, 0, 0, 883, 0, 889, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 881, 0, 0, 0, 2589, 881, 0, 0, 2513, + 0, 0, 0, 889, 0, 0, 0, 0, 2514, 2515, + 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, 889, 0, + 0, 889, 889, 0, 0, 0, 0, 0, 0, 0, + 0, 1360, 0, 0, 0, 0, 0, 950, 950, 1791, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1385, 0, 889, 889, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 950, 886, 0, 950, 0, 886, + 886, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1791, 0, 0, 0, 890, 0, + 883, 0, 941, 941, 0, 884, 0, 2513, 884, 0, + 884, 0, 1791, 0, 0, 884, 2514, 2515, 2516, 2517, + 2518, 2519, 2520, 2521, 2522, 0, 0, 0, 0, 0, + 1443, 0, 0, 0, 0, 0, 0, 886, 0, 0, + 0, 0, 0, 886, 0, 0, 0, 883, 0, 1790, + 1790, 1790, 883, 0, 0, 0, 0, 0, 881, 0, + 0, 2073, 0, 884, 2074, 0, 0, 0, 2075, 2076, + 2077, 884, 0, 0, 950, 0, 0, 1579, 0, 0, + 0, 0, 0, 0, 886, 0, 0, 0, 2579, 0, + 0, 4074, 0, 950, 0, 0, 884, 0, 2580, 889, + 0, 0, 0, 0, 0, 2581, 0, 0, 0, 0, + 0, 0, 0, 2073, 0, 950, 2074, 0, 0, 0, + 2075, 2076, 2077, 0, 0, 890, 0, 0, 0, 0, + 0, 2582, 0, 0, 0, 0, 0, 0, 0, 0, + 2579, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2580, 0, 0, 0, 0, 0, 0, 2581, 0, 0, + 0, 0, 0, 0, 0, 890, 884, 0, 884, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2582, 0, 881, 0, 890, 0, 0, + 0, 0, 1840, 0, 0, 0, 0, 0, 0, 0, + 2073, 950, 0, 2074, 883, 0, 0, 2075, 2076, 2077, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1874, 1877, 1878, 0, 881, 0, 2579, 887, 0, + 4685, 0, 887, 887, 0, 0, 0, 2580, 0, 0, + 0, 0, 0, 0, 2581, 0, 2583, 881, 1790, 0, + 0, 2584, 0, 0, 950, 0, 950, 0, 0, 0, + 890, 0, 884, 0, 0, 0, 0, 0, 0, 950, + 2582, 950, 0, 0, 2585, 2264, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 887, 0, 0, 886, 0, 2586, 887, 0, 2583, 0, + 0, 0, 0, 2584, 884, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 881, 0, 0, 0, 0, 0, 2585, 2264, 0, 0, + 1360, 883, 884, 0, 0, 0, 2322, 887, 950, 0, + 0, 0, 0, 0, 0, 0, 0, 2586, 0, 0, + 2587, 0, 0, 2588, 0, 0, 0, 0, 1360, 0, + 0, 0, 0, 0, 0, 0, 886, 0, 0, 0, + 886, 883, 0, 0, 0, 0, 0, 0, 0, 0, + 950, 890, 0, 0, 0, 2583, 0, 0, 2322, 0, + 2584, 0, 0, 883, 0, 0, 0, 0, 0, 950, + 884, 0, 2587, 950, 0, 2588, 0, 0, 0, 0, + 0, 0, 0, 2585, 2264, 0, 0, 0, 0, 0, + 0, 0, 884, 0, 950, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2586, 0, 0, 0, 0, 0, + 0, 881, 0, 2589, 884, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 883, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 885, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 885, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 4407, 0, 0, - 0, 0, 0, 0, 2490, 0, 0, 0, 0, 0, - 2490, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 3976, - 3976, 0, 0, 3204, 3204, 3204, 3204, 0, 0, 3204, - 3204, 3204, 3204, 3204, 3204, 3204, 3204, 3204, 3204, 3976, - 689, 0, 0, 0, 0, 1025, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2490, 0, 1, 2490, 0, 2490, 0, 0, - 3976, 3976, 0, 0, 2, 0, 3, 4, 0, 0, - 0, 0, 0, 1026, 0, 0, 2490, 3204, 3204, 2490, - 0, 2490, 0, 0, 0, 0, 692, 1027, 0, 0, - 0, 0, 0, 0, 6, 0, 0, 0, 1028, 0, - 0, 0, 693, 0, 0, 0, 7, 0, 8, 9, - 0, 0, 0, 0, 0, 10, 0, 11, 0, 0, - 1029, 0, 0, 0, 0, 0, 0, 4526, 0, 12, - 0, 13, 0, 0, 0, 4530, 0, 4531, 0, 0, - 0, 0, 0, 0, 1030, 4533, 2490, 4534, 14, 0, - 0, 15, 0, 0, 0, 696, 0, 0, 0, 0, - 0, 0, 0, 0, 697, 0, 16, 0, 17, 0, - 0, 0, 18, 0, 4556, 4557, 4558, 698, 5512, 0, - 0, 0, 1031, 0, 0, 0, 20, 0, 21, 0, - 0, 0, 0, 3225, 0, 22, 2490, 0, 0, 0, - 0, 4583, 0, 0, 4586, 0, 4588, 0, 1032, 0, - 0, 0, 23, 0, 0, 0, 4591, 0, 0, 0, - 0, 0, 0, 0, 4598, 4599, 0, 5265, 0, 24, - 0, 0, 0, 1033, 0, 0, 0, 0, 5275, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 702, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, - 26, 0, 0, 0, 0, 27, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, - 0, 0, 0, 0, 0, 0, 1034, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 4657, 29, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 705, 0, 0, 4671, 0, 0, 0, 0, 0, 0, - 213, 1035, 0, 0, 707, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1036, 0, 0, 1037, 31, 0, 0, 710, 0, - 711, 32, 33, 0, 34, 0, 0, 712, 0, 35, - 713, 0, 4458, 0, 0, 36, 0, 0, 37, 0, - 0, 0, 0, 0, 0, 38, 0, 0, 0, 714, - 0, 39, 40, 0, 0, 0, 1038, 0, 0, 41, - 0, 0, 716, 42, 0, 1039, 3204, 0, 0, 718, - 0, 0, 0, 43, 0, 0, 0, 1040, 0, 720, - 0, 0, 0, 0, 1041, 0, 0, 0, 44, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 45, 2490, - 723, 0, 0, 0, 0, 0, 0, 0, 0, 46, - 0, 0, 0, 0, 0, 47, 0, 0, 0, 0, - 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 49, 0, 0, 5457, 0, 0, 0, - 0, 1344, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, - 5487, 0, 0, 0, 0, 0, 0, 0, 197, 0, - 0, 0, 0, 0, 56, 0, 0, -136, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2490, 198, - 0, 0, 2490, 2490, 0, 2490, 2490, 0, 0, 0, - 0, 3976, 3976, 3976, 3976, 199, 0, 0, 3976, 3976, - 3976, 3976, 3976, 3976, 3976, 3976, 3976, 3976, 2490, 2490, - 2490, 0, 0, 200, 0, 0, 0, 0, 0, 201, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2490, 0, 202, 2490, 0, - 2490, 4953, 4954, 2490, 0, 0, 3976, 3976, 203, 0, - 2490, 2490, 4961, 0, 5586, 0, 0, 204, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 205, 0, 0, 0, 0, 206, 0, 0, 0, 0, + 0, 0, 0, 886, 0, 2322, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 886, 2587, + 0, 0, 2588, 886, 0, 2589, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2573, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 890, 0, 0, + 0, 0, 886, 0, 1790, 0, 884, 0, 4615, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2513, 887, 0, 0, 0, + 0, 0, 0, 0, 2514, 2515, 2516, 2517, 2518, 2519, + 2520, 2521, 2522, 0, 0, 0, 0, 0, 0, 0, + 884, 0, 0, 0, 0, 0, 0, 881, 0, 0, + 0, 0, 2589, 0, 0, 2664, 890, 883, 0, 0, + 0, 0, 0, 0, 0, 884, 0, 2513, 0, 0, + 0, 0, 0, 0, 0, 0, 2514, 2515, 2516, 2517, + 2518, 2519, 2520, 2521, 2522, 0, 0, 0, 0, 887, + 0, 0, 0, 887, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 881, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2781, 0, + 0, 0, 0, 0, 0, 0, 0, 2804, 0, 0, + 0, 0, 0, 0, 2513, 0, 0, 0, 0, 0, + 0, 0, 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, + 2521, 2522, 0, 889, 0, 950, 890, 889, 889, 2842, + 0, 0, 0, 0, 0, 2854, 2854, 0, 0, 2854, + 0, 0, 0, 883, 0, 0, 887, 0, 0, 0, + 0, 0, 2872, 0, 0, 2875, 0, 0, 0, 0, + 0, 887, 0, 0, 0, 0, 887, 0, 0, 0, + 0, 0, 0, 0, 0, 884, 1790, 0, 0, 0, + 0, 1790, 0, 1790, 0, 889, 881, 0, 0, 886, + 0, 889, 886, 0, 886, 887, 0, 0, 0, 886, + 0, 0, 0, 0, 0, 0, 0, 1790, 0, 0, + 0, 2928, 883, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2947, 0, 0, 0, 0, + 0, 0, 889, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 886, 0, 0, + 0, 0, 0, 0, 950, 886, 0, 950, 890, 0, + 0, 0, 0, 890, 890, 884, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 886, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 884, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1335, 1335, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 881, 0, + 0, 0, 0, 881, 881, 0, 0, 0, 0, 0, + 0, 0, 883, 0, 0, 2969, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2972, 950, 950, 0, + 886, 0, 886, 0, 2073, 0, 0, 2074, 950, 0, + 0, 2075, 2076, 2077, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 950, 890, 0, 0, 0, + 0, 2579, 0, 0, 0, 1335, 0, 0, 3016, 2854, + 0, 2580, 0, 0, 0, 0, 2073, 0, 2581, 2074, + 0, 0, 0, 2075, 2076, 2077, 0, 0, 0, 0, + 0, 0, 0, 3051, 0, 0, 0, 0, 0, 0, + 3064, 0, 0, 2579, 2582, 890, 0, 0, 0, 0, + 0, 0, 0, 2580, 884, 0, 881, 0, 0, 0, + 2581, 889, 887, 0, 0, 887, 886, 887, 0, 0, + 0, 0, 887, 0, 0, 0, 950, 0, 0, 1790, + 0, 0, 0, 0, 883, 0, 2582, 0, 0, 883, + 883, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 884, 0, 0, 0, 881, 884, 0, 886, 0, + 0, 0, 0, 3125, 0, 0, 0, 0, 0, 0, + 887, 0, 0, 0, 0, 0, 1701, 1705, 887, 0, + 0, 0, 0, 0, 889, 0, 886, 0, 889, 0, + 5130, 0, 0, 0, 0, 0, 1360, 1360, 0, 0, + 0, 0, 0, 887, 0, 0, 0, 0, 0, 2583, + 0, 0, 0, 3179, 2584, 0, 3181, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 5136, 0, 0, 0, 0, 2585, 2264, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2583, 883, 0, 886, 0, 2584, 0, 2586, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 887, 0, 887, 886, 0, 0, 2585, + 2264, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 889, 0, 0, 0, 0, 0, 0, 886, 2322, + 2586, 883, 0, 0, 0, 2524, 889, 0, 884, 0, + 0, 889, 0, 2587, 0, 0, 2588, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 889, 2322, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2587, 0, 0, 2588, 0, + 0, 0, 2524, 0, 0, 950, 0, 0, 0, 887, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 886, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2589, 0, 0, 950, + 0, 887, 0, 0, 0, 2022, 0, 0, 0, 0, + 0, 950, 0, 0, 886, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2073, 884, 0, 2074, 0, 887, + 0, 2075, 2076, 2077, 0, 0, 0, 0, 2589, 886, + 2041, 0, 0, 0, 0, 0, 950, 0, 0, 0, + 0, 2579, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2580, 0, 0, 0, 884, 0, 0, 2581, 2060, + 2061, 2062, 0, 2064, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 884, 0, 0, + 0, 0, 0, 2531, 2582, 0, 0, 887, 2513, 0, + 0, 0, 0, 0, 0, 0, 0, 2514, 2515, 2516, + 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, 0, 887, + 0, 0, 0, 0, 1790, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2513, 887, 0, 950, 0, 0, 0, 0, 0, 2514, + 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, + 884, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 889, 0, 0, + 889, 0, 889, 0, 5137, 0, 0, 889, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2631, 886, + 0, 0, 2643, 2648, 0, 0, 0, 0, 0, 2583, + 0, 0, 0, 0, 2584, 0, 0, 0, 0, 0, + 0, 0, 0, 887, 0, 0, 0, 0, 0, 950, + 0, 0, 0, 0, 0, 889, 0, 2585, 2264, 0, + 0, 0, 0, 889, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2586, 0, + 0, 2524, 0, 0, 0, 2524, 0, 887, 889, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 884, 0, 0, 0, 0, 0, 0, 0, 886, + 0, 0, 887, 0, 0, 0, 0, 0, 0, 2322, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2587, 0, 886, 2588, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3358, 0, 0, 889, 0, + 889, 0, 0, 0, 0, 0, 3363, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 950, 0, 950, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2073, 0, 0, 2074, 1443, 0, + 0, 2075, 2076, 2077, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2579, 0, 0, 950, 0, 2589, 0, 0, 0, + 0, 2580, 0, 0, 0, 0, 0, 884, 2581, 0, + 0, 0, 0, 0, 0, 1443, 1443, 0, 0, 0, + 0, 0, 0, 0, 889, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2582, 1701, 1701, 1701, 0, 0, + 0, 0, 887, 0, 1790, 0, 0, 0, 886, 1360, + 0, 0, 2073, 0, 0, 2074, 0, 0, 0, 2075, + 2076, 2077, 0, 0, 0, 0, 889, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 884, 0, 0, 2579, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2580, + 0, 0, 0, 0, 889, 886, 2581, 0, 2513, 0, + 886, 0, 0, 5138, 0, 0, 0, 2514, 2515, 2516, + 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, 0, 0, + 0, 0, 2582, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 887, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2583, + 0, 0, 0, 0, 2584, 0, 0, 0, 887, 0, + 0, 0, 889, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2524, 0, 0, 0, 0, 2585, 2264, 0, + 0, 0, 3576, 0, 889, 0, 0, 0, 0, 0, + 0, 2524, 0, 0, 0, 3257, 884, 3598, 2586, 0, + 0, 0, 0, 0, 0, 0, 889, 0, 0, 0, + 2524, 2524, 2524, 0, 2524, 0, 0, 2073, 0, 3626, + 2074, 0, 0, 0, 2075, 2076, 2077, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2583, 0, 2322, + 0, 0, 2584, 0, 2579, 0, 0, 0, 0, 0, + 0, 0, 886, 2587, 2580, 0, 2588, 0, 0, 0, + 0, 2581, 0, 950, 0, 2585, 2264, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 950, 0, 0, + 0, 0, 0, 0, 0, 0, 2586, 2582, 889, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 887, 0, 0, 0, 3704, 3705, 0, 1790, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2322, 884, 0, + 0, 0, 889, 884, 884, 0, 0, 0, 0, 0, + 0, 2587, 0, 0, 2588, 0, 2589, 0, 887, 0, + 0, 0, 0, 887, 0, 0, 0, 889, 0, 0, + 0, 0, 0, 0, 3207, 0, 0, 0, 0, 0, + 0, 0, 0, 3228, 3228, 3233, 3239, 5666, 0, 886, + 3244, 0, 3245, 0, 3247, 0, 0, 3261, 3264, 3269, + 0, 0, 0, 0, 0, 3278, 0, 0, 3283, 0, + 0, 0, 2583, 0, 0, 0, 3828, 2584, 0, 1790, + 0, 0, 0, 0, 0, 3291, 3292, 3293, 0, 886, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2585, 2264, 0, 3294, 2589, 0, 0, 0, 0, 0, + 0, 886, 0, 0, 0, 0, 884, 0, 2513, 0, + 0, 2586, 0, 0, 0, 0, 0, 2514, 2515, 2516, + 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, 0, 0, + 0, 0, 0, 0, 1790, 0, 950, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2322, 0, 2073, 884, 0, 2074, 0, 0, + 0, 2075, 2076, 2077, 0, 887, 2587, 0, 0, 2588, + 5493, 0, 0, 0, 886, 0, 0, 889, 0, 0, + 0, 2579, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2580, 0, 0, 0, 0, 2513, 0, 2581, 0, + 0, 0, 0, 0, 0, 2514, 2515, 2516, 2517, 2518, + 2519, 2520, 2521, 2522, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2582, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3301, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2589, + 0, 0, 950, 0, 0, 0, 0, 889, 0, 0, + 0, 0, 1548, 0, 0, 0, 0, 0, 1549, 0, + 0, 0, 0, 0, 3320, 1615, 0, 0, 950, 0, + 0, 0, 887, 889, 0, 886, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1616, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1551, 0, 0, 0, 0, 0, 0, + 0, 0, 887, 0, 0, 0, 0, 3322, 0, 2583, + 0, 2524, 0, 0, 2584, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 887, 0, 0, 0, 1617, 0, + 0, 2513, 0, 0, 0, 0, 0, 2585, 2264, 0, + 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, 1552, + 0, 0, 0, 0, 0, 0, 1553, 0, 2586, 1554, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 4130, 0, 950, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1555, 0, 0, 0, + 0, 0, 0, 0, 0, 1443, 0, 887, 0, 2322, + 0, 886, 0, 0, 0, 0, 889, 0, 0, 0, + 0, 2524, 0, 2587, 0, 0, 2588, 0, 1618, 0, + 0, 0, 1556, 2524, 0, 0, 0, 0, 2524, 1548, + 0, 0, 0, 0, 0, 1549, 0, 0, 0, 0, + 0, 0, 1615, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 889, 0, 0, 0, 0, 889, 0, + 0, 0, 0, 0, 1616, 0, 0, 0, 0, 0, + 886, 0, 0, 0, 1619, 0, 0, 0, 1620, 0, + 1551, 0, 0, 0, 3329, 3330, 3331, 3332, 3333, 3334, + 3335, 3336, 3337, 1621, 3338, 0, 0, 1558, 0, 0, + 0, 0, 0, 0, 0, 1335, 2589, 1559, 1701, 0, + 0, 0, 0, 0, 1790, 1617, 1560, 0, 887, 0, + 0, 0, 0, 0, 0, 0, 0, 1622, 1561, 0, + 0, 0, 0, 0, 0, 0, 1552, 0, 0, 0, + 0, 0, 0, 1553, 0, 0, 1554, 0, 0, 3294, + 0, 0, 0, 3301, 0, 0, 3320, 0, 3322, 1790, + 0, 3375, 0, 0, 0, 0, 0, 1623, 0, 0, + 1563, 1564, 1624, 1555, 0, 0, 0, 1790, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 886, 0, 0, 0, 0, 0, 1625, 0, 0, 0, + 0, 0, 1626, 0, 0, 1618, 0, 0, 2513, 1556, + 889, 0, 0, 0, 2061, 2062, 1627, 2514, 2515, 2516, + 2517, 2518, 2519, 2520, 2521, 2522, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 887, 0, 0, 0, 0, 0, + 0, 1619, 4339, 0, 0, 1620, 0, 0, 0, 0, + 0, 1566, 2854, 0, 0, 0, 0, 0, 0, 0, + 1621, 0, 0, 0, 1558, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1559, 0, 0, 3518, 0, 0, + 0, 0, 0, 1560, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1622, 1561, 0, 0, 0, 0, + 0, 0, 886, 887, 0, 0, 0, 886, 886, 0, + 0, 0, 0, 0, 0, 0, 0, 889, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 650, + 0, 0, 0, 0, 3675, 0, 0, 1563, 1564, 1624, + 0, 0, 0, 0, 0, 0, 0, 651, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 889, 0, 0, + 0, 0, 0, 1625, 0, 0, 0, 0, 0, 3676, + 0, 0, 652, 0, 0, 0, 0, 0, 0, 889, + 0, 0, 0, 1627, 0, 653, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, -876, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 4471, 4472, 4473, 0, 0, 0, 0, 0, 654, + 886, 0, 0, 887, 0, 655, 0, 0, 4482, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1566, 0, + 0, 0, 0, 656, 0, 0, 0, 0, 0, 0, + 0, 0, 889, 0, 657, 0, 0, 0, 0, 0, + 0, 4507, 4509, 658, 0, 0, 4514, 0, 0, 886, + 0, 0, 0, 0, 0, 0, 659, 0, 0, 0, + 0, 0, 0, 0, 0, 660, 0, 0, 0, 661, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, -1082, + 0, 0, 3760, 3761, 1701, 0, 0, 0, 3765, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3794, 0, 0, 0, 0, + 0, 0, 662, 0, 0, 887, 0, 0, 0, 0, + 887, 887, -612, 0, 0, 0, 0, 2524, 0, 0, + 0, 0, 1360, 889, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2524, 0, + 0, 0, 0, 2524, 0, 0, 0, 0, 0, 2524, + 0, 0, 0, 663, 2524, 2524, 664, 2524, 0, 0, + 0, 0, 3257, 3257, 0, 4053, 0, 3257, 0, 0, + 0, 2524, 0, 0, 2524, 0, 0, 665, 0, 2524, + 0, 0, 0, 0, 0, 0, 0, 0, 2524, 0, + 0, 666, 0, 2524, 0, 0, 0, 0, -466, 0, + 0, 2524, 2524, 2524, 2524, 0, 0, 0, 3257, 3257, + 0, 2524, 0, 0, 0, 0, 0, 0, 667, 0, + 0, 0, 0, 887, 0, 0, 0, 0, 668, 0, + 2524, 0, 2524, 0, 0, -466, 0, 0, 669, 2524, + 2524, 2524, 2524, 2524, 2524, 2524, 2524, 2524, 2524, 0, + 0, 0, 0, 0, 0, 0, 0, 670, 0, 889, + 0, 0, 0, 0, 671, 0, 0, 0, 0, 0, + 0, -466, 887, 0, 672, 673, 0, 674, 675, 0, + 0, 0, 4720, 4721, 4722, 2524, 0, 0, 0, 0, + 0, 0, 0, 676, 0, 0, 0, 0, 0, 0, + 677, 0, 0, 678, 3989, 0, 679, 0, 0, 3995, + 0, 0, 0, 0, 0, 0, 0, 0, 0, -466, + 0, 0, 0, 0, 0, 0, 0, 0, 889, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2064, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3269, 0, 3269, 3269, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 4077, 0, 0, 4080, 0, 4082, 0, 0, 0, + 0, 2, 0, 3, 4, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 6, 0, 4109, 0, 4112, 0, 4114, 2524, 0, + 0, 0, 0, 7, 0, 8, 9, 0, 0, 0, + 0, 0, 10, 0, 11, 0, 0, 0, 889, 0, + 0, 0, 0, 0, 0, 0, 12, 0, 13, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 14, 0, 0, 15, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 16, 0, 17, 0, 0, 0, 18, + 0, 0, 699, 0, 0, 5644, 0, 700, 0, 0, + 0, 0, 0, 20, 0, 21, 0, 0, 4181, 0, + 0, 0, 22, 2631, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2648, 0, + 23, 0, 0, 0, 0, 701, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 24, 702, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 703, 0, 0, 0, 0, 0, + 889, 0, 0, 0, 0, 889, 889, 0, 0, 0, + 0, 0, 704, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4231, 25, 26, 0, 0, 0, 4985, + 27, 0, 0, 0, 0, 0, 705, 0, 0, 0, + 0, 0, 0, 0, 28, 0, 0, 706, 0, 0, + 0, 0, 0, 0, 0, 0, 707, 0, 0, 0, + 0, 5017, 29, 0, 0, 0, 0, 0, 0, 708, + 0, 0, 0, 0, 0, 709, 0, 0, 0, 0, + 0, 0, 710, 0, 0, 0, 0, 0, 0, 0, + 2524, 2524, 0, 3064, 0, 2524, 0, 0, 0, 0, + 0, 0, 711, 0, 0, 0, 30, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 889, 0, + 31, 0, 0, 0, 2524, 0, 32, 33, 5075, 34, + 0, 0, 0, 0, 35, 0, 0, 4545, 0, 0, + 36, 0, 0, 37, 0, 3125, 0, 0, 0, 0, + 38, 0, 0, 0, 0, 712, 0, 39, 40, 0, + 0, 0, 0, 0, 0, 41, 0, 889, 0, 42, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 44, 713, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 714, + 0, 0, 0, 0, 0, 45, 0, 0, 0, 0, + 715, 0, 0, 0, 0, 0, 46, 0, 0, 0, + 213, 716, 47, 0, 717, 0, 0, 48, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 718, 0, 0, 719, 0, 0, 0, 720, 0, + 0, 721, 0, 0, 50, 0, 1701, 0, 722, 0, + 0, 723, 1701, 0, 0, 0, 0, 5175, 5176, 5177, + 5178, 0, 0, 56, 0, 0, -136, 0, 0, 0, + 724, 0, 0, 0, 0, 0, 0, 725, 0, 0, + 0, 0, 0, 0, 726, 0, 0, 727, 0, 2524, + 0, 728, 0, 0, 0, 2524, 0, 0, 0, 729, + 0, 730, 0, 0, 0, 0, 731, 197, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 732, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 4494, 733, 0, 4053, 4053, 0, 0, 3257, 3257, + 3257, 3257, 0, 0, 3257, 3257, 3257, 3257, 3257, 3257, + 3257, 3257, 3257, 3257, 4053, 0, 0, 0, 198, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 199, 0, 0, 2524, 0, 0, + 2524, 0, 2524, 0, 0, 4053, 4053, 0, 0, 0, + 0, 0, 200, 0, 0, 0, 0, 0, 201, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2524, + 3257, 3257, 2524, 0, 2524, 0, 202, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 203, 0, 0, + 0, 0, 0, 0, 0, 0, 204, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 205, + 0, 0, 0, 0, 0, 206, 0, 0, 0, 0, 0, 0, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 208, 0, 0, 0, 0, 0, 0, 0, 2490, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 5003, - 0, 0, 0, 2490, 0, 0, 209, 0, 0, 0, - 0, 5009, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 210, 0, - 0, 0, 0, 0, 5662, 0, 0, 0, 0, 0, + 4616, 2524, 208, 0, 0, 0, 0, 0, 4620, 0, + 4621, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 3228, 0, 0, 0, 3228, 3228, 0, 0, 0, 0, + 3239, 0, 0, 209, 0, 0, 0, 0, 4639, 0, + 4640, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2524, 0, 0, 0, 210, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 4662, 4663, 4664, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 5028, 5030, 0, 0, 0, 0, 0, 0, 5034, 5035, - 0, 0, 5684, 5036, 0, 0, 0, 5037, 0, 211, - 5040, 5041, 0, 0, 0, 5045, 0, 0, 0, 0, - 0, 5049, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 212, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 213, 214, 0, 0, 215, 0, 0, + 0, 0, 0, 0, 0, 0, 3278, 0, 0, 0, + 0, 0, 0, 0, 4689, 0, 211, 4692, 0, 4694, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5081, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1320, 0, 216, 0, 0, 217, 0, 0, - 5095, 218, 0, 219, 0, 0, 0, 0, 0, 0, - 220, 0, 0, 221, 0, 0, 0, 0, 0, 0, - 5105, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 222, 0, 0, 0, 0, 0, 0, 223, - 0, 0, 0, 0, 224, 225, 0, 0, 226, 0, - 0, 0, 227, 0, 0, 0, 0, 0, 3976, 0, - 0, 0, 228, 0, 0, 0, 0, 229, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 4700, 0, 0, + 212, 0, 5391, 0, 0, 4707, 4708, 0, 0, 0, + 213, 214, 4713, 5401, 215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 216, 0, 0, 217, 0, 0, 0, 218, 0, + 0, 219, 0, 0, 0, 0, 0, 0, 220, 0, + 0, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5169, 0, 0, 0, 0, 0, 0, 5171, 0, + 222, 0, 0, 0, 0, 0, 0, 223, 0, 4765, + 0, 0, 224, 0, 225, 0, 0, 226, 0, 0, + 0, 227, 0, 0, 0, 0, 4779, 0, 0, 0, + 0, 228, 0, 0, 0, 0, 229, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2490, 2490, 0, 0, 0, - 0, 0, 0, 2490, 0, 0, 0, 0, 0, 0, + 0, 0, 231, 0, 0, 0, 0, 0, 0, 0, + 0, 3257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2490, 0, 5206, 0, 0, - 0, 2490, 3204, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2490, 0, 2490, 0, 0, 0, 2490, 2490, 2490, 2490, - 0, 0, 2490, 2490, 0, 0, 0, 2490, 0, 0, - 0, 2490, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2490, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5293, 0, 0, 0, 0, 0, 5297, 5298, 5299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2490, 0, 2490, 0, 0, 0, 0, 0, 0, - 0, 0, 5310, 5311, 0, 0, 5312, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2490, 0, - 0, 0, 0, 5332, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 5350, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 5589, 0, 0, + 0, 0, 1360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 5365, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 5619, 0, 0, 0, 0, 2524, 0, 0, 0, + 2524, 2524, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2524, + 2524, 0, 0, 0, 0, 4053, 4053, 4053, 4053, 0, + 0, 0, 4053, 4053, 4053, 4053, 4053, 4053, 4053, 4053, + 4053, 4053, 2524, 2524, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2524, + 0, 0, 2524, 0, 2524, 0, 0, 0, 0, 0, + 2524, 0, 0, 4053, 4053, 0, 0, 2524, 2524, 0, + 0, 0, 0, 2524, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5063, 5064, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 5071, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 5723, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2524, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2490, 0, 3976, 3204, 2490, - 2490, 2490, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2490, 2490, 2490, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3204, 0, 0, - 3976, 0, 0, 0, 2490, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 5114, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2631, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2490, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, + 0, 0, 0, 5132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 5799, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 5151, 5153, 0, 0, 0, 0, 0, 5821, + 5157, 5158, 0, 0, 0, 5159, 0, 0, 0, 0, + 0, 0, 5162, 0, 0, 5165, 5166, 0, 0, 0, + 0, 0, 5171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 5206, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1335, 0, 0, 0, + 0, 0, 0, 0, 5220, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4053, 0, 0, 0, + 0, 0, 0, 0, 5230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2041, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2524, 2524, 0, 0, 0, 0, 0, + 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 5295, 0, 0, + 0, 0, 0, 0, 5297, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3976, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 5603, 0, 0, - 0, 3976, 0, 3204, 0, 0, 0, 0, 0, 0, + 0, 0, 2524, 3257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2524, 0, 2524, 0, 0, 0, 2524, 2524, 2524, + 0, 0, 2524, 5332, 0, 2524, 2524, 0, 0, 0, + 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 3257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 5639, + 0, 0, 0, 0, 0, 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2490, 0, 0, 0, 0, + 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 5705, 0, + 0, 0, 0, 0, 0, 2524, 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2490, 5350, 0, + 5423, 0, 0, 0, 0, 0, 5427, 5428, 5429, 0, + 0, 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 5442, 5443, 0, 0, 5444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 5752, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2490, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5463, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 5481, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 5496, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2524, 0, 4053, 3257, 2524, 2524, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2524, 2524, 2524, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3257, 0, 0, 4053, + 0, 0, 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3204, 3204, 5837, 5837, 5837, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2490, 0, 0, 0, - 0, 0, 5350, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 5864, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2490, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 3976, 3976, - 0, 0, 5905, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 5930, 0, 5837, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 3278, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2064, 0, 0, 4053, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 234, 0, 1236, 684, 0, 1237, 1238, 1239, - 745, 1240, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 1679, - 243, 244, 245, 0, 0, 6006, 0, 1241, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, - 264, 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, - 1248, 273, 0, 274, 275, 276, 277, 1249, 0, 1250, - 5837, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, - 301, 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 1680, 0, 322, 323, 860, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 1685, - 333, 334, 335, 336, 1261, 338, 339, 340, 341, 1262, - 1263, 343, 0, 344, 345, 346, 1264, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 1265, 0, 1266, 360, 361, 0, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 381, 382, - 383, 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 1270, 401, 402, 403, 0, 404, 405, 406, 1271, - 1272, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 1273, - 426, 1274, 428, 429, 430, 431, 432, 433, 434, 435, - 1275, 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, - 1279, 445, 446, 447, 0, 448, 449, 0, 0, 1280, - 451, 452, 0, 0, 453, 454, 455, 456, 457, 458, - 1281, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 1282, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 1283, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 1284, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 1285, 529, 530, 531, 532, - 533, 534, 535, 536, 1286, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 1287, 553, 0, 554, 555, 0, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 1288, 1289, 0, 0, 566, - 567, 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 1293, 579, 580, 581, 582, 583, - 1294, 0, 584, 585, 586, 587, 588, 589, 1295, 1681, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 1296, 1297, - 1298, 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, - 617, 1304, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1305, 1306, 1682, 0, 0, 0, 0, 0, - 0, 1308, 1683, 234, 0, 1236, 684, 0, 1237, 1238, - 1239, 745, 1240, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 1241, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 1242, 259, 1243, 1244, 0, 262, - 263, 264, 265, 266, 267, 268, 1245, 1246, 269, 270, - 1247, 1248, 273, 0, 274, 275, 276, 277, 1249, 0, - 1250, 0, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 296, 297, 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, - 1257, 301, 302, 303, 304, 305, 306, 1258, 1259, 309, - 1260, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 860, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 1261, 338, 339, 340, 341, - 1262, 1263, 343, 0, 344, 345, 346, 1264, 348, 0, - 349, 0, 350, 351, 0, 352, 353, 354, 355, 356, - 0, 357, 1265, 0, 1266, 360, 361, 0, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 380, 381, - 382, 383, 384, 385, 1267, 1268, 0, 1269, 0, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 0, - 0, 399, 1270, 401, 402, 403, 0, 404, 405, 406, - 1271, 1272, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 1273, 426, 1274, 428, 429, 430, 431, 432, 433, 434, - 435, 1275, 437, 1276, 438, 439, 440, 441, 1277, 1278, - 443, 1279, 445, 446, 447, 0, 448, 449, 0, 0, - 1280, 451, 452, 0, 0, 453, 454, 455, 456, 457, - 458, 1281, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 1282, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 1283, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 508, 509, 510, 511, 512, 513, - 1284, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 40, 524, 525, 526, 527, 528, 1285, 529, 530, 531, - 532, 533, 534, 535, 536, 1286, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 1287, 553, 0, 554, 555, 44, 556, 557, 558, - 559, 560, 561, 562, 0, 563, 1288, 1289, 0, 0, - 566, 567, 1290, 569, 1291, 1292, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 1293, 579, 580, 581, 582, - 583, 1294, 0, 584, 585, 586, 587, 588, 1175, 1295, - 0, 591, 592, 593, 594, 595, 596, 0, 0, 597, - 0, 49, 598, 599, 600, 601, 602, 603, 604, 1296, - 1297, 1298, 1299, 609, 1300, 1301, 1302, 1303, 614, 615, - 616, 617, 1304, 0, 50, 0, 0, 0, 0, 0, - 0, 0, 0, 1305, 1306, 0, 0, 0, 0, 0, - 0, 0, 1308, 5563, 234, 0, 1236, 684, 0, 1237, - 1238, 1239, 745, 1240, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4053, 0, 3257, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 5740, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 5776, 0, 0, + 0, 0, 0, 0, 0, 0, 2524, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2524, 0, 0, 0, 0, 0, 0, 2524, + 0, 0, 0, 0, 0, 0, 5842, 0, 0, 0, + 0, 0, 0, 0, 0, 5849, 5849, 5849, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 5481, 0, 2524, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5893, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 3257, 3257, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2524, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 5849, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2524, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5481, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 6006, + 0, 0, 2524, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4053, 4053, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 6047, + 2524, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 6072, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 234, 0, 1246, 694, + 0, 1247, 1248, 1249, 755, 1250, 0, 0, 0, 0, + 0, 0, 0, 0, 5849, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 1695, 244, 245, 246, 6140, 0, + 0, 0, 1251, 0, 0, 247, 248, 249, 0, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 1252, 260, + 1253, 1254, 0, 263, 264, 265, 266, 267, 268, 269, + 1255, 1256, 270, 271, 1257, 1258, 274, 0, 275, 276, + 277, 278, 1259, 0, 1260, 0, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 0, 291, 292, 293, + 294, 295, 296, 0, 297, 298, 299, 300, 1261, 1262, + 1263, 1264, 1265, 1266, 1267, 302, 303, 304, 305, 306, + 307, 1268, 1269, 310, 1270, 311, 0, 312, 313, 314, + 315, 316, 317, 318, 0, 319, 320, 321, 322, 1696, + 0, 323, 324, 864, 326, 327, 1701, 328, 329, 330, + 0, 331, 332, 333, 0, 334, 335, 336, 337, 1271, + 339, 340, 341, 342, 1272, 1273, 344, 0, 345, 346, + 347, 1274, 349, 0, 350, 0, 351, 352, 353, 0, + 354, 355, 356, 357, 358, 0, 359, 1275, 0, 1276, + 362, 363, 0, 364, 365, 366, 367, 368, 369, 370, + 371, 372, 373, 0, 374, 375, 376, 377, 378, 379, + 380, 381, 0, 382, 383, 384, 385, 386, 387, 388, + 1277, 1278, 0, 1279, 0, 392, 393, 394, 395, 396, + 397, 1280, 1281, 1282, 1283, 402, 403, 404, 405, 406, + 407, 0, 0, 408, 1284, 410, 411, 412, 0, 413, + 414, 415, 1285, 1286, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 1287, 435, 1288, 437, 438, 439, 440, 441, + 442, 443, 444, 1289, 446, 1290, 447, 448, 449, 450, + 1291, 1292, 452, 1293, 454, 455, 456, 0, 457, 458, + 0, 0, 1294, 460, 461, 0, 0, 462, 463, 464, + 465, 466, 467, 1295, 469, 470, 471, 472, 473, 474, + 475, 476, 477, 478, 0, 479, 480, 1296, 482, 483, + 484, 485, 486, 0, 487, 488, 489, 490, 491, 492, + 493, 494, 495, 496, 1297, 498, 499, 500, 501, 0, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 0, 515, 516, 517, 518, 519, 520, + 521, 522, 1298, 524, 525, 526, 527, 528, 529, 530, + 531, 532, 533, 0, 534, 535, 536, 537, 538, 1299, + 539, 540, 541, 542, 543, 544, 545, 546, 1300, 548, + 0, 549, 550, 551, 552, 553, 554, 555, 556, 557, + 558, 559, 560, 561, 1301, 563, 0, 564, 565, 1302, + 0, 566, 567, 568, 569, 570, 571, 572, 0, 573, + 1303, 1304, 0, 0, 576, 577, 1305, 579, 1306, 1307, + 581, 582, 583, 584, 585, 586, 587, 588, 0, 1308, + 589, 590, 591, 592, 593, 1309, 0, 594, 595, 596, + 597, 598, 599, 1310, 1697, 601, 602, 603, 604, 605, + 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, + 612, 613, 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, + 1317, 1318, 624, 625, 626, 627, 0, 1319, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1320, + 1321, 1698, 0, 0, 0, 0, 0, 0, 1323, 1699, + 234, 0, 1246, 694, 0, 1247, 1248, 1249, 755, 1250, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 0, 244, + 245, 246, 0, 0, 0, 0, 1251, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 1252, 260, 1253, 1254, 0, 263, 264, 265, + 266, 267, 268, 269, 1255, 1256, 270, 271, 1257, 1258, + 274, 0, 275, 276, 277, 278, 1259, 0, 1260, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 297, 298, + 299, 300, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 302, + 303, 304, 305, 306, 307, 1268, 1269, 310, 1270, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 864, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 1271, 339, 340, 341, 342, 1272, 1273, + 344, 0, 345, 346, 347, 1274, 349, 0, 350, 0, + 351, 352, 353, 0, 354, 355, 356, 357, 358, 0, + 359, 1275, 0, 1276, 362, 363, 0, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 0, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 383, 384, + 385, 386, 387, 388, 1277, 1278, 0, 1279, 0, 392, + 393, 394, 395, 396, 397, 1280, 1281, 1282, 1283, 402, + 403, 404, 405, 406, 407, 0, 0, 408, 1284, 410, + 411, 412, 0, 413, 414, 415, 1285, 1286, 416, 417, + 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 430, 431, 432, 433, 1287, 435, 1288, 437, + 438, 439, 440, 441, 442, 443, 444, 1289, 446, 1290, + 447, 448, 449, 450, 1291, 1292, 452, 1293, 454, 455, + 456, 0, 457, 458, 0, 0, 1294, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 467, 1295, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 1296, 482, 483, 484, 485, 486, 0, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 1297, 498, + 499, 500, 501, 0, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 517, 518, 519, 520, 521, 522, 1298, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 40, 534, 535, + 536, 537, 538, 1299, 539, 540, 541, 542, 543, 544, + 545, 546, 1300, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 1301, 563, + 0, 564, 565, 1302, 44, 566, 567, 568, 569, 570, + 571, 572, 0, 573, 1303, 1304, 0, 0, 576, 577, + 1305, 579, 1306, 1307, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 1308, 589, 590, 591, 592, 593, 1309, + 0, 594, 595, 596, 597, 598, 1181, 1310, 0, 601, + 602, 603, 604, 605, 606, 0, 0, 607, 0, 49, + 608, 609, 610, 611, 612, 613, 614, 1311, 1312, 1313, + 1314, 619, 1315, 1316, 1317, 1318, 624, 625, 626, 627, + 0, 1319, 0, 50, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1320, 1321, 0, 0, 0, 0, 0, + 0, 0, 1323, 5700, 234, 0, 1246, 694, 0, 1247, + 1248, 1249, 755, 1250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 1241, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 1242, 259, 1243, 1244, 0, - 262, 263, 264, 265, 266, 267, 268, 1245, 1246, 269, - 270, 1247, 1248, 273, 0, 274, 275, 276, 277, 1249, - 0, 1250, 0, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 296, 297, 298, 299, 1251, 1252, 1253, 1254, 1255, - 1256, 1257, 301, 302, 303, 304, 305, 306, 1258, 1259, - 309, 1260, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 860, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 1261, 338, 339, 340, - 341, 1262, 1263, 343, 0, 344, 345, 346, 1264, 348, - 0, 349, 0, 350, 351, 0, 352, 353, 354, 355, - 356, 0, 357, 1265, 0, 1266, 360, 361, 0, 362, - 363, 364, 365, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 380, - 381, 382, 383, 384, 385, 1267, 1268, 0, 1269, 0, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 0, 0, 399, 1270, 401, 402, 403, 0, 404, 405, - 406, 1271, 1272, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 1273, 426, 1274, 428, 429, 430, 431, 432, 433, - 434, 435, 1275, 437, 1276, 438, 439, 440, 441, 1277, - 1278, 443, 1279, 445, 446, 447, 0, 448, 449, 0, - 0, 1280, 451, 452, 0, 0, 453, 454, 455, 456, - 457, 458, 1281, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 1282, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 1283, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 508, 509, 510, 511, 512, - 513, 1284, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 1285, 529, 530, - 531, 532, 533, 534, 535, 536, 1286, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 1287, 553, 0, 554, 555, 0, 556, 557, - 558, 559, 560, 561, 562, 0, 563, 1288, 1289, 0, - 0, 566, 567, 1290, 569, 1291, 1292, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 1293, 579, 580, 581, - 582, 583, 1294, 0, 584, 585, 586, 587, 588, 589, - 1295, 0, 591, 592, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, 1303, 614, - 615, 616, 617, 1304, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1305, 1306, 0, 0, 0, 0, - 0, 0, 0, 1308, 3206, 234, 0, 1236, 684, 0, - 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 1241, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 1242, 259, 1243, 1244, - 0, 262, 263, 264, 265, 266, 267, 268, 1245, 1246, - 269, 270, 1247, 1248, 273, 0, 274, 275, 276, 277, - 1249, 0, 1250, 0, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, 1254, - 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, 1258, - 1259, 309, 1260, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 860, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 1261, 338, 339, - 340, 341, 1262, 1263, 343, 0, 344, 345, 346, 1264, - 348, 0, 349, 0, 350, 351, 0, 352, 353, 354, - 355, 356, 0, 357, 1265, 0, 1266, 360, 361, 0, - 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 380, 381, 382, 383, 384, 385, 1267, 1268, 0, 1269, - 0, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 0, 0, 399, 1270, 401, 402, 403, 0, 404, - 405, 406, 1271, 1272, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 1273, 426, 1274, 428, 429, 430, 431, 432, - 433, 434, 435, 1275, 437, 1276, 438, 439, 440, 441, - 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, 449, - 0, 0, 1280, 451, 452, 0, 0, 453, 454, 455, - 456, 457, 458, 1281, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 1282, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 1283, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 508, 509, 510, 511, - 512, 513, 1284, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 1285, 529, - 530, 531, 532, 533, 534, 535, 536, 1286, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 1287, 553, 0, 554, 555, 0, 556, - 557, 558, 559, 560, 561, 562, 0, 563, 1288, 1289, - 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 1293, 579, 580, - 581, 582, 583, 1294, 0, 584, 585, 586, 587, 588, - 589, 1295, 0, 591, 592, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, 1303, - 614, 615, 616, 617, 1304, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1305, 1306, 0, 0, 0, - 0, 0, 0, 0, 1308, 4535, 234, 0, 1236, 684, - 0, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, + 242, 243, 0, 244, 245, 246, 0, 0, 0, 0, + 1251, 0, 0, 247, 248, 249, 0, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 1252, 260, 1253, 1254, + 0, 263, 264, 265, 266, 267, 268, 269, 1255, 1256, + 270, 271, 1257, 1258, 274, 0, 275, 276, 277, 278, + 1259, 0, 1260, 0, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 0, 291, 292, 293, 294, 295, + 296, 0, 297, 298, 299, 300, 1261, 1262, 1263, 1264, + 1265, 1266, 1267, 302, 303, 304, 305, 306, 307, 1268, + 1269, 310, 1270, 311, 0, 312, 313, 314, 315, 316, + 317, 318, 0, 319, 320, 321, 322, 0, 0, 323, + 324, 864, 326, 327, 0, 328, 329, 330, 0, 331, + 332, 333, 0, 334, 335, 336, 337, 1271, 339, 340, + 341, 342, 1272, 1273, 344, 0, 345, 346, 347, 1274, + 349, 0, 350, 0, 351, 352, 353, 0, 354, 355, + 356, 357, 358, 0, 359, 1275, 0, 1276, 362, 363, + 0, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 0, 374, 375, 376, 377, 378, 379, 380, 381, + 0, 382, 383, 384, 385, 386, 387, 388, 1277, 1278, + 0, 1279, 0, 392, 393, 394, 395, 396, 397, 1280, + 1281, 1282, 1283, 402, 403, 404, 405, 406, 407, 0, + 0, 408, 1284, 410, 411, 412, 0, 413, 414, 415, + 1285, 1286, 416, 417, 418, 419, 420, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, + 1287, 435, 1288, 437, 438, 439, 440, 441, 442, 443, + 444, 1289, 446, 1290, 447, 448, 449, 450, 1291, 1292, + 452, 1293, 454, 455, 456, 0, 457, 458, 0, 0, + 1294, 460, 461, 0, 0, 462, 463, 464, 465, 466, + 467, 1295, 469, 470, 471, 472, 473, 474, 475, 476, + 477, 478, 0, 479, 480, 1296, 482, 483, 484, 485, + 486, 0, 487, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 1297, 498, 499, 500, 501, 0, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 0, 515, 516, 517, 518, 519, 520, 521, 522, + 1298, 524, 525, 526, 527, 528, 529, 530, 531, 532, + 533, 0, 534, 535, 536, 537, 538, 1299, 539, 540, + 541, 542, 543, 544, 545, 546, 1300, 548, 0, 549, + 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, + 560, 561, 1301, 563, 0, 564, 565, 1302, 0, 566, + 567, 568, 569, 570, 571, 572, 0, 573, 1303, 1304, + 0, 0, 576, 577, 1305, 579, 1306, 1307, 581, 582, + 583, 584, 585, 586, 587, 588, 0, 1308, 589, 590, + 591, 592, 593, 1309, 0, 594, 595, 596, 597, 598, + 599, 1310, 0, 601, 602, 603, 604, 605, 606, 0, + 0, 607, 0, 0, 608, 609, 610, 611, 612, 613, + 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, + 624, 625, 626, 627, 0, 1319, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1320, 1321, 0, + 0, 0, 0, 0, 0, 0, 1323, 3259, 234, 0, + 1246, 694, 0, 1247, 1248, 1249, 755, 1250, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, + 238, 239, 240, 241, 242, 243, 0, 244, 245, 246, + 0, 0, 0, 0, 1251, 0, 0, 247, 248, 249, + 0, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 1252, 260, 1253, 1254, 0, 263, 264, 265, 266, 267, + 268, 269, 1255, 1256, 270, 271, 1257, 1258, 274, 0, + 275, 276, 277, 278, 1259, 0, 1260, 0, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 0, 291, + 292, 293, 294, 295, 296, 0, 297, 298, 299, 300, + 1261, 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, 304, + 305, 306, 307, 1268, 1269, 310, 1270, 311, 0, 312, + 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, + 322, 0, 0, 323, 324, 864, 326, 327, 0, 328, + 329, 330, 0, 331, 332, 333, 0, 334, 335, 336, + 337, 1271, 339, 340, 341, 342, 1272, 1273, 344, 0, + 345, 346, 347, 1274, 349, 0, 350, 0, 351, 352, + 353, 0, 354, 355, 356, 357, 358, 0, 359, 1275, + 0, 1276, 362, 363, 0, 364, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 0, 374, 375, 376, 377, + 378, 379, 380, 381, 0, 382, 383, 384, 385, 386, + 387, 388, 1277, 1278, 0, 1279, 0, 392, 393, 394, + 395, 396, 397, 1280, 1281, 1282, 1283, 402, 403, 404, + 405, 406, 407, 0, 0, 408, 1284, 410, 411, 412, + 0, 413, 414, 415, 1285, 1286, 416, 417, 418, 419, + 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 430, 431, 432, 433, 1287, 435, 1288, 437, 438, 439, + 440, 441, 442, 443, 444, 1289, 446, 1290, 447, 448, + 449, 450, 1291, 1292, 452, 1293, 454, 455, 456, 0, + 457, 458, 0, 0, 1294, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 467, 1295, 469, 470, 471, 472, + 473, 474, 475, 476, 477, 478, 0, 479, 480, 1296, + 482, 483, 484, 485, 486, 0, 487, 488, 489, 490, + 491, 492, 493, 494, 495, 496, 1297, 498, 499, 500, + 501, 0, 502, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 512, 513, 514, 0, 515, 516, 517, 518, + 519, 520, 521, 522, 1298, 524, 525, 526, 527, 528, + 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, + 538, 1299, 539, 540, 541, 542, 543, 544, 545, 546, + 1300, 548, 0, 549, 550, 551, 552, 553, 554, 555, + 556, 557, 558, 559, 560, 561, 1301, 563, 0, 564, + 565, 1302, 0, 566, 567, 568, 569, 570, 571, 572, + 0, 573, 1303, 1304, 0, 0, 576, 577, 1305, 579, + 1306, 1307, 581, 582, 583, 584, 585, 586, 587, 588, + 0, 1308, 589, 590, 591, 592, 593, 1309, 0, 594, + 595, 596, 597, 598, 599, 1310, 0, 601, 602, 603, + 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, + 610, 611, 612, 613, 614, 1311, 1312, 1313, 1314, 619, + 1315, 1316, 1317, 1318, 624, 625, 626, 627, 0, 1319, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1320, 1321, 0, 0, 0, 0, 0, 0, 0, + 1323, 4641, 234, 0, 1246, 694, 0, 1247, 1248, 1249, + 755, 1250, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 235, 236, 237, 238, 239, 240, 241, 242, 243, + 0, 244, 245, 246, 0, 0, 0, 0, 1251, 0, + 0, 247, 248, 249, 0, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 1252, 260, 1253, 1254, 0, 263, + 264, 265, 266, 267, 268, 269, 1255, 1256, 270, 271, + 1257, 1258, 274, 0, 275, 276, 277, 278, 1259, 0, + 1260, 0, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 0, 291, 292, 293, 294, 295, 296, 0, + 297, 298, 299, 300, 1261, 1262, 1263, 1264, 1265, 1266, + 1267, 302, 303, 304, 305, 306, 307, 1268, 1269, 310, + 1270, 311, 0, 312, 313, 314, 315, 316, 317, 318, + 0, 319, 320, 321, 322, 0, 0, 323, 324, 864, + 326, 327, 0, 328, 329, 330, 0, 331, 332, 333, + 0, 334, 335, 336, 337, 1271, 339, 340, 341, 342, + 1272, 1273, 344, 0, 345, 346, 347, 1274, 349, 0, + 350, 0, 351, 352, 353, 0, 354, 355, 356, 357, + 358, 0, 359, 1275, 0, 1276, 362, 363, 0, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 0, + 374, 375, 376, 377, 378, 379, 380, 381, 0, 382, + 383, 384, 385, 386, 387, 388, 1277, 1278, 0, 1279, + 0, 392, 393, 394, 395, 396, 397, 1280, 1281, 1282, + 1283, 402, 403, 404, 405, 406, 407, 0, 0, 408, + 1284, 410, 411, 412, 0, 413, 414, 415, 1285, 1286, + 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 430, 431, 432, 433, 1287, 435, + 1288, 437, 438, 439, 440, 441, 442, 443, 444, 1289, + 446, 1290, 447, 448, 449, 450, 1291, 1292, 452, 1293, + 454, 455, 456, 0, 457, 458, 0, 0, 1294, 460, + 461, 0, 0, 462, 463, 464, 465, 466, 467, 1295, + 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, + 0, 479, 480, 1296, 482, 483, 484, 485, 486, 0, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 1297, 498, 499, 500, 501, 0, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 0, + 515, 516, 517, 518, 519, 520, 521, 522, 1298, 524, + 525, 526, 527, 528, 529, 530, 531, 532, 533, 0, + 534, 535, 536, 537, 538, 1299, 539, 540, 541, 542, + 543, 544, 545, 546, 1300, 548, 0, 549, 550, 551, + 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, + 1301, 563, 0, 564, 565, 1302, 0, 566, 567, 568, + 569, 570, 571, 572, 0, 573, 1303, 1304, 0, 0, + 576, 577, 1305, 579, 1306, 1307, 581, 582, 583, 584, + 585, 586, 587, 588, 0, 1308, 589, 590, 591, 592, + 593, 1309, 0, 594, 595, 596, 597, 598, 599, 1310, + 0, 601, 602, 603, 604, 605, 606, 0, 0, 607, + 0, 0, 608, 609, 610, 611, 612, 613, 614, 1311, + 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, 625, + 626, 627, 0, 1319, 0, 0, 0, 635, 0, 0, + 0, 0, 0, 0, 0, 1320, 1321, 0, 0, 0, + 0, 0, 0, 0, 1323, 4710, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 0, 4159, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 0, 255, 256, 257, 258, 259, + 0, 261, 262, 0, 263, 264, 265, 266, 267, 268, + 269, 0, 0, 270, 271, 272, 273, 274, 0, 275, + 276, 277, 278, 279, 0, 0, 0, 281, 282, 283, + 284, 285, 286, 0, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, -1818, 298, 299, 300, 0, + 0, 0, 0, 0, 0, 0, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 0, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 325, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 0, 344, 0, 345, + 346, 347, 348, 349, 0, 350, 0, 351, 352, 0, + 0, -1818, 355, 356, 357, 358, 0, 359, 360, 0, + 361, 362, 363, 0, 364, 365, 366, 367, 368, 0, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, -1818, 384, 385, 386, 387, + 388, 389, 390, 0, 391, 0, 392, 0, 0, 395, + -1818, 397, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 409, -1818, 411, 0, 0, + 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 434, -1818, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 0, 447, 448, 0, + 450, 0, 451, 452, 453, 454, 455, 456, 0, 457, + 458, 0, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 0, 466, 0, 468, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 481, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, -1818, 518, 519, + 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 0, 539, 540, 541, 542, 543, 0, 545, 546, 547, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 562, 563, 0, 564, 565, + 0, 0, 566, 0, 568, 569, 570, 571, 572, 0, + 573, 574, 575, 0, 0, 576, 577, 578, 579, 580, + 0, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 0, 589, 590, 591, 592, 593, 0, 0, 594, 595, + 596, 597, 598, 599, 600, 0, 601, 0, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, + 621, 622, 623, 624, 625, 626, 627, 0, 0, 0, + 0, 0, 856, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1436, 235, 236, 237, 238, 239, 240, 241, 242, 243, + 0, 244, 245, 246, 0, 0, 0, 0, 0, 0, + 0, 247, 248, 249, 0, 250, 251, 252, 253, 254, + 255, 256, 257, 0, 857, 260, 858, 859, 0, 263, + 264, 265, 266, 267, 268, 269, 0, 0, 270, 271, + 860, 861, 274, 0, 275, 276, 277, 278, 0, 0, + 280, 0, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 0, 291, 292, 293, 294, 295, 296, 0, + 297, 298, 299, 300, 0, 0, 0, 301, 0, 0, + 0, 302, 303, 304, 305, 306, 307, 862, 863, 310, + 0, 311, 0, 312, 313, 314, 315, 316, 317, 318, + 0, 319, 320, 321, 322, 0, 0, 323, 324, 864, + 326, 327, 0, 328, 329, 330, 0, 331, 332, 333, + 0, 334, 335, 336, 337, 0, 339, 340, 341, 342, + 0, 0, 344, 0, 345, 346, 347, 865, 349, 0, + 350, 0, 351, 352, 353, 0, 354, 355, 356, 357, + 358, 0, 359, 0, 0, 0, 362, 363, 0, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 2674, + 374, 375, 376, 377, 378, 379, 380, 381, 0, 382, + 383, 2675, 385, 386, 387, 388, 866, 867, 0, 868, + 0, 392, 393, 394, 395, 396, 397, 0, 0, 0, + 0, 402, 403, 404, 405, 406, 407, 0, 0, 408, + 0, 410, 411, 412, 0, 413, 414, 415, 0, 0, + 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 430, 431, 432, 433, 869, 435, + 870, 437, 438, 439, 440, 441, 442, 443, 0, 0, + 446, 0, 447, 448, 449, 450, 0, 0, 452, 871, + 454, 455, 456, 0, 457, 458, 0, 0, 459, 460, + 461, 0, 0, 462, 463, 2677, 465, 466, 467, 0, + 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, + 0, 479, 480, 0, 482, 0, 484, 485, 486, 0, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 872, 498, 499, 500, 501, 0, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 0, + 515, 516, 517, 518, 519, 520, 521, 522, 0, 524, + 525, 526, 527, 528, 529, 530, 531, 532, 533, 0, + 534, 535, 536, 537, 538, 0, 539, 540, 2678, 542, + 543, 544, 545, 546, 874, 548, 0, 549, 550, 551, + 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, + 0, 563, 0, 564, 565, 0, 0, 566, 567, 568, + 569, 570, 571, 572, 0, 573, 875, 876, 0, 0, + 576, 577, 0, 579, 0, 0, 581, 582, 583, 584, + 585, 586, 587, 588, 0, 0, 589, 590, 591, 592, + 593, 0, 0, 594, 595, 596, 597, 598, 0, 877, + 2679, 601, 602, 603, 604, 605, 606, 0, 0, 607, + 0, 0, 608, 609, 610, 611, 612, 613, 856, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 625, + 626, 627, 0, 0, 0, 0, 0, 235, 236, 237, + 238, 239, 240, 241, 242, 243, 0, 244, 245, 246, + 0, 0, 0, 0, 0, 2775, 0, 247, 248, 249, + 0, 250, 251, 252, 253, 254, 255, 256, 257, 0, + 857, 260, 858, 859, 0, 263, 264, 265, 266, 267, + 268, 269, 0, 0, 270, 271, 860, 861, 274, 0, + 275, 276, 277, 278, 0, 0, 280, 0, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 0, 291, + 292, 293, 294, 295, 296, 0, 297, 298, 299, 300, + 0, 0, 0, 301, 0, 0, 0, 302, 303, 304, + 305, 306, 307, 862, 863, 310, 0, 311, 0, 312, + 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, + 322, 0, 0, 323, 324, 864, 326, 327, 0, 328, + 329, 330, 0, 331, 332, 333, 0, 334, 335, 336, + 337, 0, 339, 340, 341, 342, 0, 0, 344, 0, + 345, 346, 347, 865, 349, 0, 350, 0, 351, 352, + 353, 0, 354, 355, 356, 357, 358, 0, 359, 0, + 0, 0, 362, 363, 0, 364, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 2674, 374, 375, 376, 377, + 378, 379, 380, 381, 0, 382, 383, 2675, 385, 386, + 387, 388, 866, 867, 0, 868, 0, 392, 393, 394, + 395, 396, 397, 0, 0, 0, 0, 402, 403, 404, + 405, 406, 407, 0, 0, 408, 0, 410, 411, 412, + 0, 413, 414, 415, 0, 0, 416, 417, 418, 419, + 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 430, 431, 432, 433, 869, 435, 870, 437, 438, 439, + 440, 441, 442, 443, 0, 0, 446, 0, 447, 448, + 449, 450, 0, 0, 452, 871, 454, 455, 456, 0, + 457, 458, 0, 0, 459, 460, 461, 0, 0, 462, + 463, 2677, 465, 466, 467, 0, 469, 470, 471, 472, + 473, 474, 475, 476, 477, 478, 0, 479, 480, 0, + 482, 0, 484, 485, 486, 0, 487, 488, 489, 490, + 491, 492, 493, 494, 495, 496, 872, 498, 499, 500, + 501, 0, 502, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 512, 513, 514, 0, 515, 516, 517, 518, + 519, 520, 521, 522, 0, 524, 525, 526, 527, 528, + 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, + 538, 0, 539, 540, 2678, 542, 543, 544, 545, 546, + 874, 548, 0, 549, 550, 551, 552, 553, 554, 555, + 556, 557, 558, 559, 560, 561, 0, 563, 0, 564, + 565, 0, 0, 566, 567, 568, 569, 570, 571, 572, + 0, 573, 875, 876, 0, 0, 576, 577, 0, 579, + 0, 0, 581, 582, 583, 584, 585, 586, 587, 588, + 0, 0, 589, 590, 591, 592, 593, 0, 0, 594, + 595, 596, 597, 598, 0, 877, 2679, 601, 602, 603, + 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, + 610, 611, 612, 613, 234, 0, 1246, 694, 0, 1247, + 1248, 1249, 755, 1250, 0, 625, 626, 627, 0, 0, + 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, + 242, 243, 0, 244, 245, 246, 0, 0, 0, 0, + 1251, 3883, 0, 247, 248, 249, 0, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 1252, 260, 1253, 1254, + 0, 263, 264, 265, 266, 267, 268, 269, 1255, 1256, + 270, 271, 1257, 1258, 274, 0, 275, 276, 277, 278, + 1259, 0, 1260, 0, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 0, 291, 292, 293, 294, 295, + 296, 0, 297, 298, 299, 300, 1261, 1262, 1263, 1264, + 1265, 1266, 1267, 302, 303, 304, 305, 306, 307, 1268, + 1269, 310, 1270, 311, 0, 312, 313, 314, 315, 316, + 317, 318, 0, 319, 320, 321, 322, 0, 0, 323, + 324, 864, 326, 327, 0, 328, 329, 330, 0, 331, + 332, 333, 0, 334, 335, 336, 337, 1271, 339, 340, + 341, 342, 1272, 1273, 344, 0, 345, 346, 347, 1274, + 349, 0, 350, 0, 351, 352, 353, 0, 354, 355, + 356, 357, 358, 0, 359, 1275, 0, 1276, 362, 363, + 0, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 0, 374, 375, 376, 377, 378, 379, 380, 381, + 0, 382, 383, 384, 385, 386, 387, 388, 1277, 1278, + 0, 1279, 0, 392, 393, 394, 395, 396, 397, 1280, + 1281, 1282, 1283, 402, 403, 404, 405, 406, 407, 0, + 0, 408, 1284, 410, 411, 412, 0, 413, 414, 415, + 1285, 1286, 416, 417, 418, 419, 420, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, + 1287, 435, 1288, 437, 438, 439, 440, 441, 442, 443, + 444, 1289, 446, 1290, 447, 448, 449, 450, 1291, 1292, + 452, 1293, 454, 455, 456, 0, 457, 458, 0, 0, + 1294, 460, 461, 0, 0, 462, 463, 464, 465, 466, + 467, 1295, 469, 470, 471, 472, 473, 474, 475, 476, + 477, 478, 0, 479, 480, 1296, 482, 483, 484, 485, + 486, 0, 487, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 1297, 498, 499, 500, 501, 0, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 3225, 515, 516, 517, 518, 519, 520, 521, 522, + 1298, 524, 525, 526, 527, 528, 529, 530, 531, 532, + 533, 40, 534, 535, 536, 537, 538, 1299, 539, 540, + 541, 542, 543, 544, 545, 546, 1300, 548, 0, 549, + 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, + 560, 561, 1301, 563, 0, 564, 565, 1302, 44, 566, + 567, 568, 569, 570, 571, 572, 0, 573, 1303, 1304, + 0, 0, 576, 577, 1305, 579, 1306, 1307, 581, 582, + 583, 584, 585, 586, 587, 588, 0, 1308, 589, 590, + 591, 592, 593, 1309, 0, 594, 595, 596, 597, 598, + 1181, 1310, 0, 601, 602, 603, 604, 605, 606, 0, + 0, 607, 0, 49, 608, 609, 610, 611, 612, 613, + 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, + 624, 625, 626, 627, 0, 1319, 0, 50, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1320, 1321, 0, + 0, 0, 234, 0, 1246, 694, 1323, 1247, 1248, 1249, + 755, 1250, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 235, 236, 237, 238, 239, 240, 241, 242, 243, + 0, 244, 245, 246, 0, 0, 0, 0, 1251, 0, + 0, 247, 248, 249, 0, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 1252, 260, 1253, 1254, 0, 263, + 264, 265, 266, 267, 268, 269, 1255, 1256, 270, 271, + 1257, 1258, 274, 0, 275, 276, 277, 278, 1259, 0, + 1260, 0, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 0, 291, 292, 293, 294, 295, 296, 0, + 297, 298, 299, 300, 1261, 1262, 1263, 1264, 1265, 1266, + 1267, 302, 303, 304, 305, 306, 307, 1268, 1269, 310, + 1270, 311, 0, 312, 313, 314, 315, 316, 317, 318, + 0, 319, 320, 321, 322, 0, 0, 323, 324, 864, + 326, 327, 0, 328, 329, 330, 0, 331, 332, 333, + 0, 334, 335, 336, 337, 1271, 339, 340, 341, 342, + 1272, 1273, 344, 0, 345, 346, 347, 1274, 349, 0, + 350, 0, 351, 352, 353, 0, 354, 355, 356, 357, + 358, 0, 359, 1275, 0, 1276, 362, 363, 0, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 0, + 374, 375, 376, 377, 378, 379, 380, 381, 0, 382, + 383, 384, 385, 386, 387, 388, 1277, 1278, 0, 1279, + 0, 392, 393, 394, 395, 396, 397, 1280, 1281, 1282, + 1283, 402, 403, 404, 405, 406, 407, 0, 0, 408, + 1284, 410, 411, 412, 0, 413, 414, 415, 1285, 1286, + 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 430, 431, 432, 433, 1287, 435, + 1288, 437, 438, 439, 440, 441, 442, 443, 444, 1289, + 446, 1290, 447, 448, 449, 450, 1291, 1292, 452, 1293, + 454, 455, 456, 0, 457, 458, 0, 0, 1294, 460, + 461, 0, 0, 462, 463, 464, 465, 466, 467, 1295, + 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, + 0, 479, 480, 1296, 482, 483, 484, 485, 486, 0, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 1297, 498, 499, 500, 501, 0, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 0, + 515, 516, 517, 518, 519, 520, 521, 522, 1298, 524, + 525, 526, 527, 528, 529, 530, 531, 532, 533, 40, + 534, 535, 536, 537, 538, 1299, 539, 540, 541, 542, + 543, 544, 545, 546, 1300, 548, 0, 549, 550, 551, + 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, + 1301, 563, 0, 564, 565, 1302, 44, 566, 567, 568, + 569, 570, 571, 572, 0, 573, 1303, 1304, 0, 0, + 576, 577, 1305, 579, 1306, 1307, 581, 582, 583, 584, + 585, 586, 587, 588, 0, 1308, 589, 590, 591, 592, + 593, 1309, 0, 594, 595, 596, 597, 598, 1181, 1310, + 0, 601, 602, 603, 604, 605, 606, 0, 0, 607, + 0, 49, 608, 609, 610, 611, 612, 613, 614, 1311, + 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, 625, + 626, 627, 0, 1319, 0, 50, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1320, 1321, 0, 0, 0, + 234, 0, 1246, 694, 1323, 1247, 1248, 1249, 755, 1250, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 0, 244, + 245, 246, 0, 0, 0, 0, 1251, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 1252, 260, 1253, 1254, 3265, 263, 264, 265, + 266, 267, 268, 269, 1255, 1256, 270, 271, 1257, 1258, + 274, 0, 275, 276, 277, 278, 1259, 0, 1260, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 297, 298, + 299, 300, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 302, + 303, 304, 305, 306, 307, 1268, 1269, 310, 1270, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 864, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 1271, 339, 340, 341, 342, 1272, 1273, + 344, 0, 345, 346, 347, 1274, 349, 0, 350, 0, + 351, 352, 353, 3266, 354, 355, 356, 357, 358, 0, + 359, 1275, 0, 1276, 362, 363, 0, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 0, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 383, 384, + 385, 386, 387, 388, 1277, 1278, 0, 1279, 0, 392, + 393, 394, 395, 396, 397, 1280, 1281, 1282, 1283, 402, + 403, 404, 405, 406, 407, 0, 3267, 408, 1284, 410, + 411, 412, 0, 413, 414, 415, 1285, 1286, 416, 417, + 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 430, 431, 432, 433, 1287, 435, 1288, 437, + 438, 439, 440, 441, 442, 443, 444, 1289, 446, 1290, + 447, 448, 449, 450, 1291, 1292, 452, 1293, 454, 455, + 456, 0, 457, 458, 0, 0, 1294, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 467, 1295, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 1296, 482, 483, 484, 485, 486, 0, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 1297, 498, + 499, 500, 501, 0, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 517, 518, 519, 520, 521, 522, 1298, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, + 536, 537, 538, 1299, 539, 540, 541, 542, 543, 544, + 545, 546, 1300, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 1301, 563, + 0, 564, 565, 1302, 0, 566, 567, 568, 569, 570, + 571, 572, 0, 573, 1303, 1304, 0, 3268, 576, 577, + 1305, 579, 1306, 1307, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 1308, 589, 590, 591, 592, 593, 1309, + 0, 594, 595, 596, 597, 598, 599, 1310, 0, 601, + 602, 603, 604, 605, 606, 0, 0, 607, 0, 0, + 608, 609, 610, 611, 612, 613, 614, 1311, 1312, 1313, + 1314, 619, 1315, 1316, 1317, 1318, 624, 625, 626, 627, + 0, 1319, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1320, 1321, 0, 0, 0, 234, 0, + 1246, 694, 1323, 1247, 1248, 1249, 755, 1250, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, + 238, 239, 240, 241, 242, 243, -2222, 244, 245, 246, + 0, 0, 0, -2222, 1251, 0, 0, 247, 248, 249, + 0, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 1252, 260, 1253, 1254, 0, 263, 264, 265, 266, 267, + 268, 269, 1255, 1256, 270, 271, 1257, 1258, 274, 0, + 275, 276, 277, 278, 1259, 0, 1260, 0, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 0, 291, + 292, 293, 294, 295, 296, 0, 297, 298, 299, 300, + 1261, 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, 304, + 305, 306, 307, 1268, 1269, 310, 1270, 311, 0, 312, + 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, + 322, 0, 0, 323, 324, 864, 326, 327, 0, 328, + 329, 330, 0, 331, 332, 333, 0, 334, 335, 336, + 337, 1271, 339, 340, 341, 342, 1272, 1273, 344, 0, + 345, 346, 347, 1274, 349, 0, 350, 0, 351, 352, + 353, 0, 354, 355, 356, 357, 358, 0, 359, 1275, + 0, 1276, 362, 363, 0, 364, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 0, 374, 375, 376, 377, + 378, 379, 380, 381, 0, 382, 383, 384, 385, 386, + 387, 388, 1277, 1278, 0, 1279, 0, 392, 393, 394, + 395, 396, 397, 1280, 1281, 1282, 1283, 402, 403, 404, + 405, 406, 407, 0, 0, 408, 1284, 410, 411, 412, + 0, 413, 414, 415, 1285, 1286, 416, 417, 418, 419, + 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 430, 431, 432, 433, 1287, 435, 1288, 437, 438, 439, + 440, 441, 442, 443, 444, 1289, 446, 1290, 447, 448, + 449, 450, 1291, 1292, 452, 1293, 454, 455, 456, 0, + 457, 458, 0, 0, 1294, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 467, 1295, 469, 470, 471, 472, + 473, 474, 475, 476, 477, 478, 0, 479, 480, 1296, + 482, 483, 484, 485, 486, 0, 487, 488, 489, 490, + 491, 492, 493, 494, 495, 496, 1297, 498, 499, 500, + 501, 0, 502, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 512, 513, 514, 0, 515, 516, 517, 518, + 519, 520, 521, 522, 1298, 524, 525, 526, 527, 528, + 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, + 538, 1299, 539, 540, 541, 542, 543, 544, 545, 546, + 1300, 548, -2222, 549, 550, 551, 552, 553, 554, 555, + 556, 557, 558, 559, 560, 561, 1301, 563, 0, 564, + 565, 1302, 0, 566, 567, 568, 569, 570, 571, 572, + 0, 573, 1303, 1304, 0, 0, 576, 577, 1305, 579, + 1306, 1307, 581, 582, 583, 584, 585, 586, 587, 588, + 0, 1308, 589, 590, 591, 592, 593, 1309, 0, 594, + 595, 596, 597, 598, 599, 1310, 0, 601, 602, 603, + 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, + 610, 611, 612, 613, 614, 1311, 1312, 1313, 1314, 619, + 1315, 1316, 1317, 1318, 624, 625, 626, 627, 0, 1319, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1320, 1321, 0, 0, 0, 234, 0, 1246, 694, + 1323, 1247, 1248, 1249, 755, 1250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 625, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 0, 0, 0, 0, 1308, 4605, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 4072, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, -1810, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 0, 0, - -1810, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 366, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, -1810, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, -1810, 394, - 395, 396, 397, 398, 0, 0, 399, 400, -1810, 402, - 0, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, -1810, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, -1810, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 0, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 0, 0, 0, - 852, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1420, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 253, 254, 255, 256, - 0, 853, 259, 854, 855, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 856, 857, 273, - 0, 274, 275, 276, 277, 0, 0, 279, 0, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 296, 297, 298, - 299, 0, 0, 0, 300, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 858, 859, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 860, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 0, 338, 339, 340, 341, 0, 0, 343, - 0, 344, 345, 346, 861, 348, 0, 349, 0, 350, - 351, 0, 352, 353, 354, 355, 356, 0, 357, 0, - 0, 0, 360, 361, 0, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 2638, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 380, 2639, 382, 383, 384, - 385, 862, 863, 0, 864, 0, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 0, 0, 399, 0, - 401, 402, 403, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 865, 426, 866, - 428, 429, 430, 431, 432, 433, 434, 0, 0, 437, - 0, 438, 439, 440, 441, 0, 0, 443, 867, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 2641, 456, 457, 458, 0, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 0, 473, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 868, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 508, 509, 510, 511, 512, 513, 0, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 2642, 532, 533, 534, - 535, 536, 870, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 0, 553, - 0, 554, 555, 0, 556, 557, 558, 559, 560, 561, - 562, 0, 563, 871, 872, 0, 0, 566, 567, 0, - 569, 0, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 0, 873, 2643, 591, 592, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 852, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 615, 616, 617, 0, + 240, 241, 242, 243, -2220, 244, 245, 246, 0, 0, + 0, -2220, 1251, 0, 0, 247, 248, 249, 0, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 1252, 260, + 1253, 1254, 0, 263, 264, 265, 266, 267, 268, 269, + 1255, 1256, 270, 271, 1257, 1258, 274, 0, 275, 276, + 277, 278, 1259, 0, 1260, 0, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 0, 291, 292, 293, + 294, 295, 296, 0, 297, 298, 299, 300, 1261, 1262, + 1263, 1264, 1265, 1266, 1267, 302, 303, 304, 305, 306, + 307, 1268, 1269, 310, 1270, 311, 0, 312, 313, 314, + 315, 316, 317, 318, 0, 319, 320, 321, 322, 0, + 0, 323, 324, 864, 326, 327, 0, 328, 329, 330, + 0, 331, 332, 333, 0, 334, 335, 336, 337, 1271, + 339, 340, 341, 342, 1272, 1273, 344, 0, 345, 346, + 347, 1274, 349, 0, 350, 0, 351, 352, 353, 0, + 354, 355, 356, 357, 358, 0, 359, 1275, 0, 1276, + 362, 363, 0, 364, 365, 366, 367, 368, 369, 370, + 371, 372, 373, 0, 374, 375, 376, 377, 378, 379, + 380, 381, 0, 382, 383, 384, 385, 386, 387, 388, + 1277, 1278, 0, 1279, 0, 392, 393, 394, 395, 396, + 397, 1280, 1281, 1282, 1283, 402, 403, 404, 405, 406, + 407, 0, 0, 408, 1284, 410, 411, 412, 0, 413, + 414, 415, 1285, 1286, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 1287, 435, 1288, 437, 438, 439, 440, 441, + 442, 443, 444, 1289, 446, 1290, 447, 448, 449, 450, + 1291, 1292, 452, 1293, 454, 455, 456, 0, 457, 458, + 0, 0, 1294, 460, 461, 0, 0, 462, 463, 464, + 465, 466, 467, 1295, 469, 470, 471, 472, 473, 474, + 475, 476, 477, 478, 0, 479, 480, 1296, 482, 483, + 484, 485, 486, 0, 487, 488, 489, 490, 491, 492, + 493, 494, 495, 496, 1297, 498, 499, 500, 501, 0, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 0, 515, 516, 517, 518, 519, 520, + 521, 522, 1298, 524, 525, 526, 527, 528, 529, 530, + 531, 532, 533, 0, 534, 535, 536, 537, 538, 1299, + 539, 540, 541, 542, 543, 544, 545, 546, 1300, 548, + -2220, 549, 550, 551, 552, 553, 554, 555, 556, 557, + 558, 559, 560, 561, 1301, 563, 0, 564, 565, 1302, + 0, 566, 567, 568, 569, 570, 571, 572, 0, 573, + 1303, 1304, 0, 0, 576, 577, 1305, 579, 1306, 1307, + 581, 582, 583, 584, 585, 586, 587, 588, 0, 1308, + 589, 590, 591, 592, 593, 1309, 0, 594, 595, 596, + 597, 598, 599, 1310, 0, 601, 602, 603, 604, 605, + 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, + 612, 613, 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, + 1317, 1318, 624, 625, 626, 627, 0, 1319, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1320, + 1321, 0, 0, 0, 234, 0, 1246, 694, 1323, 1247, + 1248, 1249, 755, 1250, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, + 242, 243, 0, 244, 245, 246, 0, 0, 0, 0, + 1251, 0, 0, 247, 248, 249, 0, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 1252, 260, 1253, 1254, + 0, 263, 264, 265, 266, 267, 268, 269, 1255, 1256, + 270, 271, 1257, 1258, 274, 0, 275, 276, 277, 278, + 1259, 0, 1260, 0, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 0, 291, 292, 293, 294, 295, + 296, 0, 297, 298, 299, 300, 1261, 1262, 1263, 1264, + 1265, 1266, 1267, 302, 303, 304, 305, 306, 307, 1268, + 1269, 310, 1270, 311, 0, 312, 313, 314, 315, 316, + 317, 318, 0, 319, 320, 321, 322, 0, 0, 323, + 324, 864, 326, 327, 0, 328, 329, 330, 0, 331, + 332, 333, 0, 334, 335, 336, 337, 1271, 339, 340, + 341, 342, 1272, 1273, 344, 0, 345, 346, 347, 1274, + 349, 0, 350, 0, 351, 352, 353, 0, 354, 355, + 356, 357, 358, 0, 359, 1275, 0, 1276, 362, 363, + 0, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 0, 374, 375, 376, 377, 378, 379, 380, 381, + 0, 382, 383, 384, 385, 386, 387, 388, 1277, 1278, + 0, 1279, 0, 392, 393, 394, 395, 396, 397, 1280, + 1281, 1282, 1283, 402, 403, 404, 405, 406, 407, 0, + 0, 408, 1284, 410, 411, 412, 0, 413, 414, 415, + 1285, 1286, 416, 417, 418, 419, 420, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, + 1287, 435, 1288, 437, 438, 439, 440, 441, 442, 443, + 444, 1289, 446, 1290, 447, 448, 449, 450, 1291, 1292, + 452, 1293, 454, 455, 456, 0, 457, 458, 0, 0, + 1294, 460, 461, 0, 0, 462, 463, 464, 465, 466, + 467, 1295, 469, 470, 471, 472, 473, 474, 475, 476, + 477, 478, 0, 479, 480, 1296, 482, 483, 484, 485, + 486, 0, 487, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 1297, 498, 499, 500, 501, 0, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 0, 515, 516, 517, 518, 519, 520, 521, 522, + 1298, 524, 525, 526, 527, 528, 529, 530, 531, 532, + 533, 0, 534, 535, 536, 537, 538, 1299, 539, 540, + 541, 542, 543, 544, 545, 546, 1300, 548, 0, 549, + 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, + 560, 561, 1301, 563, 0, 564, 565, 1302, 0, 566, + 567, 568, 569, 570, 571, 572, 0, 573, 1303, 1304, + 0, 0, 576, 577, 1305, 579, 1306, 1307, 581, 582, + 583, 584, 585, 586, 587, 588, 0, 1308, 589, 590, + 591, 592, 593, 1309, 0, 594, 595, 596, 597, 598, + 599, 1310, 0, 601, 602, 603, 604, 605, 606, 0, + 0, 607, 0, 0, 608, 609, 610, 611, 612, 613, + 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, + 624, 625, 626, 627, 0, 1319, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1320, 1321, 0, + 0, 0, 0, 0, 2019, 3200, 1323, 234, 0, 1246, + 694, 0, 1247, 1248, 1249, 755, 1250, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 1251, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 1252, + 260, 1253, 1254, 0, 263, 264, 265, 266, 267, 268, + 269, 1255, 1256, 270, 271, 1257, 1258, 274, 0, 275, + 276, 277, 278, 1259, 0, 1260, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 297, 298, 299, 300, 1261, + 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, 304, 305, + 306, 307, 1268, 1269, 310, 1270, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 864, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 1271, 339, 340, 341, 342, 1272, 1273, 344, 0, 345, + 346, 347, 1274, 349, 0, 350, 0, 351, 352, 353, + 0, 354, 355, 356, 357, 358, 0, 359, 1275, 0, + 1276, 362, 363, 0, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 383, 384, 385, 386, 387, + 388, 1277, 1278, 0, 1279, 0, 392, 393, 394, 395, + 396, 397, 1280, 1281, 1282, 1283, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 1284, 410, 411, 412, 0, + 413, 414, 415, 1285, 1286, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 1287, 435, 1288, 437, 438, 439, 440, + 441, 442, 443, 444, 1289, 446, 1290, 447, 448, 449, + 450, 1291, 1292, 452, 1293, 454, 455, 456, 0, 457, + 458, 0, 0, 1294, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 467, 1295, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 1296, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 1297, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 517, 518, 519, + 520, 521, 522, 1298, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 1299, 539, 540, 541, 542, 543, 544, 545, 546, 1300, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 1301, 563, 0, 564, 565, + 1302, 0, 566, 567, 568, 569, 570, 571, 572, 0, + 573, 1303, 1304, 0, 0, 576, 577, 1305, 579, 1306, + 1307, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 1308, 589, 590, 591, 592, 593, 1309, 0, 594, 595, + 596, 597, 598, 599, 1310, 0, 601, 602, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 614, 1311, 1312, 1313, 1314, 619, 1315, + 1316, 1317, 1318, 624, 625, 626, 627, 0, 1319, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1320, 1321, 1322, 0, 0, 234, 0, 1246, 694, 1323, + 1247, 1248, 1249, 755, 1250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 2739, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 253, 254, 255, 256, 0, 853, 259, 854, 855, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 856, 857, 273, 0, 274, 275, 276, 277, - 0, 0, 279, 0, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 296, 297, 298, 299, 0, 0, 0, 300, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 858, - 859, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 860, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 0, 338, 339, - 340, 341, 0, 0, 343, 0, 344, 345, 346, 861, - 348, 0, 349, 0, 350, 351, 0, 352, 353, 354, - 355, 356, 0, 357, 0, 0, 0, 360, 361, 0, - 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, - 2638, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 380, 2639, 382, 383, 384, 385, 862, 863, 0, 864, - 0, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 0, 0, 399, 0, 401, 402, 403, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 865, 426, 866, 428, 429, 430, 431, 432, - 433, 434, 0, 0, 437, 0, 438, 439, 440, 441, - 0, 0, 443, 867, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 2641, - 456, 457, 458, 0, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 0, 473, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 868, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 508, 509, 510, 511, - 512, 513, 0, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 2642, 532, 533, 534, 535, 536, 870, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 0, 553, 0, 554, 555, 0, 556, - 557, 558, 559, 560, 561, 562, 0, 563, 871, 872, - 0, 0, 566, 567, 0, 569, 0, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 0, 873, 2643, 591, 592, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 0, 234, 0, 1236, 684, 0, 1237, 1238, 1239, 745, - 1240, 615, 616, 617, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 3825, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 40, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 44, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 1175, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 49, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 50, 0, 0, 0, 0, 0, 0, 0, - 0, 1305, 1306, 0, 0, 0, 234, 0, 1236, 684, - 1308, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 3212, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 3213, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 3214, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 3215, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 1308, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, -2200, 243, - 244, 245, 0, 0, 0, -2200, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, -2200, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1305, 1306, 0, 0, 0, 234, 0, 1236, 684, - 1308, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, -2198, 243, 244, 245, 0, 0, 0, - -2198, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - -2198, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 1308, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1305, 1306, 0, 0, 0, 0, 0, 2000, 3163, - 1308, 234, 0, 1236, 684, 0, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1305, 1306, 1307, 0, 0, 234, 0, 1236, 684, - 1308, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 2605, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 1308, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 3704, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1305, 1306, 0, 0, 0, 234, 0, 1236, 684, - 1308, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 3213, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 1308, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 3268, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1305, 1306, 0, 0, 0, 234, 0, 1236, 684, - 1308, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 1308, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2608, 2609, 0, 0, 0, 234, 0, 3381, 684, - 1308, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 1308, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 4656, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1305, 1306, 0, 0, 0, 234, 0, 1236, 684, - 1308, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 5017, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 1308, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 5029, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1305, 1306, 0, 0, 0, 234, 0, 1236, 684, - 1308, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 5340, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 5341, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 5342, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 5343, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 5834, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 5835, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 1260, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 1276, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 1284, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 5836, - 577, 578, 0, 1293, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1305, 1306, 0, 0, 0, 234, 0, 1236, 684, - 1308, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 5835, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 5836, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 1304, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 1308, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 5325, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 0, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 3198, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3199, 3200, 0, 0, 0, 234, 0, 1236, 684, - 3201, 1237, 1238, 1239, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, -2829, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 5835, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 1260, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, -2829, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 0, 0, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, -2829, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 1276, 438, 439, 0, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 1280, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 1284, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, -2829, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 5836, 577, 578, 0, 1293, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, -2829, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1305, 1306, 0, 0, - 0, 234, 0, 1236, 684, 1308, 1237, 1238, 1239, 745, - 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 1241, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 1242, 259, 1243, 1244, 0, 262, 263, 264, - 265, 266, 267, 268, 1245, 1246, 269, 270, 1247, 1248, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 1258, 1259, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 1261, 338, 339, 340, 341, 1262, 1263, - 343, 0, 344, 345, 346, 1264, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 1266, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 1267, 1268, 0, 1269, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 1273, 426, - 1274, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 0, 438, 439, 440, 441, 1277, 1278, 443, 1279, - 445, 446, 447, 0, 448, 449, 0, 0, 1280, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 1283, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 3198, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 1286, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 1288, 1289, 0, 0, 566, 567, - 1290, 569, 1291, 1292, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 1295, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 3199, 3200, 234, 0, 1236, 684, 0, 1237, 1238, - 3201, 745, 1240, 0, 0, 0, 0, 0, 0, 0, + 241, 242, 243, 2641, 244, 245, 246, 0, 0, 0, + 0, 1251, 0, 0, 247, 248, 249, 0, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 1252, 260, 1253, + 1254, 0, 263, 264, 265, 266, 267, 268, 269, 1255, + 1256, 270, 271, 1257, 1258, 274, 0, 275, 276, 277, + 278, 1259, 0, 1260, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 0, 291, 292, 293, 294, + 295, 296, 0, 297, 298, 299, 300, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 302, 303, 304, 305, 306, 307, + 1268, 1269, 310, 1270, 311, 0, 312, 313, 314, 315, + 316, 317, 318, 0, 319, 320, 321, 322, 0, 0, + 323, 324, 864, 326, 327, 0, 328, 329, 330, 0, + 331, 332, 333, 0, 334, 335, 336, 337, 1271, 339, + 340, 341, 342, 1272, 1273, 344, 0, 345, 346, 347, + 1274, 349, 0, 350, 0, 351, 352, 353, 0, 354, + 355, 356, 357, 358, 0, 359, 1275, 0, 1276, 362, + 363, 0, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 0, 374, 375, 376, 377, 378, 379, 380, + 381, 0, 382, 383, 384, 385, 386, 387, 388, 1277, + 1278, 0, 1279, 0, 392, 393, 394, 395, 396, 397, + 1280, 1281, 1282, 1283, 402, 403, 404, 405, 406, 407, + 0, 0, 408, 1284, 410, 411, 412, 0, 413, 414, + 415, 1285, 1286, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, + 433, 1287, 435, 1288, 437, 438, 439, 440, 441, 442, + 443, 444, 1289, 446, 1290, 447, 448, 449, 450, 1291, + 1292, 452, 1293, 454, 455, 456, 0, 457, 458, 0, + 0, 1294, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 467, 1295, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 0, 479, 480, 1296, 482, 483, 484, + 485, 486, 0, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 1297, 498, 499, 500, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 0, 515, 516, 517, 518, 519, 520, 521, + 522, 1298, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 0, 534, 535, 536, 537, 538, 1299, 539, + 540, 541, 542, 543, 544, 545, 546, 1300, 548, 0, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 1301, 563, 0, 564, 565, 1302, 0, + 566, 567, 568, 569, 570, 571, 572, 0, 573, 1303, + 1304, 0, 0, 576, 577, 1305, 579, 1306, 1307, 581, + 582, 583, 584, 585, 586, 587, 588, 0, 1308, 589, + 590, 591, 592, 593, 1309, 0, 594, 595, 596, 597, + 598, 599, 1310, 0, 601, 602, 603, 604, 605, 606, + 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, + 613, 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, + 1318, 624, 625, 626, 627, 0, 1319, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1320, 1321, + 0, 0, 0, 234, 0, 1246, 694, 1323, 1247, 1248, + 1249, 755, 1250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 1241, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 1242, 259, 1243, 1244, 0, 262, - 263, 264, 265, 266, 267, 268, 1245, 1246, 269, 270, - 1247, 1248, 273, 0, 274, 275, 276, 277, 1249, 0, - 1250, 0, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 296, 297, 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, - 1257, 301, 302, 303, 304, 305, 306, 1258, 1259, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 860, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 1261, 338, 339, 340, 341, - 1262, 1263, 343, 0, 344, 345, 346, 1264, 348, 0, - 349, 0, 350, 351, 0, 352, 353, 354, 355, 356, - 0, 357, 1265, 0, 1266, 360, 361, 0, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 380, 381, - 382, 383, 384, 385, 1267, 1268, 0, 1269, 0, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 0, - 0, 399, 1270, 401, 402, 403, 0, 404, 405, 406, - 1271, 1272, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 1273, 426, 1274, 428, 429, 430, 431, 432, 433, 434, - 435, 1275, 437, 0, 438, 439, 440, 441, 1277, 1278, - 443, 1279, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 456, 457, - 458, 1281, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 1282, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 1283, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 508, 509, 510, 511, 512, 513, - 3370, 3371, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 1285, 529, 530, 531, - 532, 533, 534, 535, 536, 1286, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 1287, 553, 0, 554, 555, 0, 556, 557, 558, - 559, 560, 561, 562, 0, 563, 1288, 1289, 0, 0, - 566, 567, 1290, 569, 1291, 1292, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 1294, 0, 584, 585, 586, 587, 588, 589, 1295, - 0, 591, 592, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 1296, - 1297, 1298, 1299, 609, 1300, 1301, 1302, 1303, 614, 615, - 616, 617, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 3372, 3373, 234, 0, 1236, 684, 0, - 1237, 1238, 3201, 745, 1240, 0, 0, 0, 0, 0, + 243, 0, 244, 245, 246, 0, 0, 0, 0, 1251, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 1252, 260, 1253, 1254, 0, + 263, 264, 265, 266, 267, 268, 269, 1255, 1256, 270, + 271, 1257, 1258, 274, 0, 275, 276, 277, 278, 1259, + 0, 1260, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 299, 300, 1261, 1262, 1263, 1264, 1265, + 1266, 1267, 302, 303, 304, 305, 306, 307, 1268, 1269, + 310, 1270, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 864, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 1271, 339, 340, 341, + 342, 1272, 1273, 344, 0, 345, 346, 347, 1274, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 1275, 0, 1276, 362, 363, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 384, 385, 386, 387, 388, 1277, 1278, 0, + 1279, 0, 392, 393, 394, 395, 396, 397, 1280, 1281, + 1282, 1283, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 1284, 410, 411, 412, 0, 413, 414, 415, 1285, + 1286, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 1287, + 435, 1288, 437, 438, 439, 440, 441, 442, 443, 444, + 1289, 446, 1290, 447, 448, 449, 450, 1291, 1292, 452, + 1293, 454, 455, 456, 0, 457, 458, 0, 0, 1294, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 467, + 1295, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 1296, 482, 483, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 1297, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 3225, 515, 516, 517, 518, 519, 520, 521, 522, 1298, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 1299, 539, 540, 541, + 542, 543, 544, 545, 546, 1300, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 1301, 563, 0, 564, 565, 1302, 0, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 1303, 1304, 0, + 0, 576, 577, 1305, 579, 1306, 1307, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 1308, 589, 590, 591, + 592, 593, 1309, 0, 594, 595, 596, 597, 598, 599, + 1310, 0, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, + 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, + 625, 626, 627, 0, 1319, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1320, 1321, 0, 0, + 0, 234, 0, 1246, 694, 1323, 1247, 1248, 1249, 755, + 1250, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 1251, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 1252, 260, 1253, 1254, 0, 263, 264, + 265, 266, 267, 268, 269, 1255, 1256, 270, 271, 1257, + 1258, 274, 0, 275, 276, 277, 278, 1259, 0, 1260, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 1261, 1262, 1263, 1264, 1265, 1266, 1267, + 302, 303, 304, 305, 306, 307, 1268, 1269, 310, 1270, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 864, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 1271, 339, 340, 341, 342, 1272, + 1273, 344, 0, 345, 346, 347, 1274, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 1275, 0, 1276, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 1277, 1278, 0, 1279, 0, + 392, 393, 394, 395, 396, 397, 1280, 1281, 1282, 1283, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 1284, + 410, 411, 412, 0, 413, 414, 415, 1285, 1286, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 1287, 435, 1288, + 437, 438, 439, 440, 441, 442, 443, 444, 1289, 446, + 1290, 447, 448, 449, 450, 1291, 1292, 452, 1293, 454, + 455, 456, 0, 457, 458, 0, 0, 1294, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 1295, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 1296, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 1297, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 1298, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 1299, 539, 540, 541, 542, 543, + 544, 545, 546, 1300, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 1301, + 563, 0, 564, 565, 1302, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 1303, 1304, 0, 0, 576, + 577, 1305, 579, 1306, 1307, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 1308, 589, 590, 591, 592, 593, + 1309, 0, 594, 595, 596, 597, 598, 599, 1310, 3762, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 1311, 1312, + 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, 625, 626, + 627, 0, 1319, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1320, 1321, 0, 0, 0, 234, + 0, 1246, 694, 1323, 1247, 1248, 1249, 755, 1250, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 0, 244, 245, + 246, 0, 0, 0, 0, 1251, 0, 0, 247, 248, + 249, 0, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 1252, 260, 1253, 1254, 0, 263, 264, 265, 266, + 267, 268, 269, 1255, 1256, 270, 271, 1257, 1258, 274, + 0, 275, 276, 277, 278, 1259, 0, 1260, 0, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 0, + 291, 292, 293, 294, 295, 296, 0, 297, 298, 299, + 300, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, + 304, 305, 306, 307, 1268, 1269, 310, 1270, 311, 0, + 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, + 321, 322, 0, 0, 323, 324, 864, 326, 327, 0, + 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, + 336, 337, 1271, 339, 340, 341, 342, 1272, 1273, 344, + 0, 345, 346, 347, 1274, 349, 0, 350, 0, 351, + 352, 353, 3266, 354, 355, 356, 357, 358, 0, 359, + 1275, 0, 1276, 362, 363, 0, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 0, 374, 375, 376, + 377, 378, 379, 380, 381, 0, 382, 383, 384, 385, + 386, 387, 388, 1277, 1278, 0, 1279, 0, 392, 393, + 394, 395, 396, 397, 1280, 1281, 1282, 1283, 402, 403, + 404, 405, 406, 407, 0, 0, 408, 1284, 410, 411, + 412, 0, 413, 414, 415, 1285, 1286, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, 433, 1287, 435, 1288, 437, 438, + 439, 440, 441, 442, 443, 444, 1289, 446, 1290, 447, + 448, 449, 450, 1291, 1292, 452, 1293, 454, 455, 456, + 0, 457, 458, 0, 0, 1294, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 467, 1295, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 0, 479, 480, + 1296, 482, 483, 484, 485, 486, 0, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 1297, 498, 499, + 500, 501, 0, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 0, 515, 516, 517, + 518, 519, 520, 521, 522, 1298, 524, 525, 526, 527, + 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, + 537, 538, 1299, 539, 540, 541, 542, 543, 544, 545, + 546, 1300, 548, 0, 549, 550, 551, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 1301, 563, 0, + 564, 565, 1302, 0, 566, 567, 568, 569, 570, 571, + 572, 0, 573, 1303, 1304, 0, 0, 576, 577, 1305, + 579, 1306, 1307, 581, 582, 583, 584, 585, 586, 587, + 588, 0, 1308, 589, 590, 591, 592, 593, 1309, 0, + 594, 595, 596, 597, 598, 599, 1310, 0, 601, 602, + 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, + 609, 610, 611, 612, 613, 614, 1311, 1312, 1313, 1314, + 619, 1315, 1316, 1317, 1318, 624, 625, 626, 627, 0, + 1319, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1320, 1321, 0, 0, 0, 234, 0, 1246, + 694, 1323, 1247, 1248, 1249, 755, 1250, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 1251, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 1252, + 260, 1253, 1254, 0, 263, 264, 265, 266, 267, 268, + 269, 1255, 1256, 270, 271, 1257, 1258, 274, 0, 275, + 276, 277, 278, 1259, 0, 1260, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 297, 298, 299, 300, 1261, + 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, 304, 305, + 306, 307, 1268, 1269, 310, 1270, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 864, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 1271, 339, 340, 341, 342, 1272, 1273, 344, 0, 345, + 346, 347, 1274, 349, 0, 350, 0, 351, 352, 353, + 0, 354, 355, 356, 357, 358, 0, 359, 1275, 0, + 1276, 362, 363, 0, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 383, 384, 385, 386, 387, + 388, 1277, 1278, 0, 1279, 0, 392, 393, 394, 395, + 396, 397, 1280, 1281, 1282, 1283, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 1284, 410, 411, 412, 0, + 413, 414, 415, 1285, 1286, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 1287, 435, 1288, 437, 438, 439, 440, + 441, 442, 443, 444, 1289, 446, 1290, 447, 448, 449, + 450, 1291, 1292, 452, 1293, 454, 455, 456, 0, 457, + 458, 0, 0, 1294, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 467, 1295, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 1296, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 1297, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 517, 518, 519, + 520, 521, 522, 1298, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 1299, 539, 540, 541, 542, 543, 544, 545, 546, 1300, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 1301, 563, 0, 564, 565, + 1302, 0, 566, 567, 568, 569, 570, 571, 572, 0, + 573, 1303, 1304, 3323, 0, 576, 577, 1305, 579, 1306, + 1307, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 1308, 589, 590, 591, 592, 593, 1309, 0, 594, 595, + 596, 597, 598, 599, 1310, 0, 601, 602, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 614, 1311, 1312, 1313, 1314, 619, 1315, + 1316, 1317, 1318, 624, 625, 626, 627, 0, 1319, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1320, 1321, 0, 0, 0, 234, 0, 1246, 694, 1323, + 1247, 1248, 1249, 755, 1250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 1241, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 1242, 259, 1243, 1244, - 0, 262, 263, 264, 265, 266, 267, 268, 1245, 1246, - 269, 270, 1247, 1248, 273, 0, 274, 275, 276, 277, - 1249, 0, 1250, 0, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, 1254, - 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, 1258, - 1259, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 860, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 1261, 338, 339, - 340, 341, 1262, 1263, 343, 0, 344, 345, 346, 1264, - 348, 0, 349, 0, 350, 351, 0, 352, 353, 354, - 355, 356, 0, 357, 1265, 0, 1266, 360, 361, 0, - 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 380, 381, 382, 383, 384, 385, 1267, 1268, 0, 1269, - 0, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 0, 0, 399, 1270, 401, 402, 403, 0, 404, - 405, 406, 1271, 1272, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 1273, 426, 1274, 428, 429, 430, 431, 432, - 433, 434, 435, 1275, 437, 0, 438, 439, 440, 441, - 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 456, 457, 458, 1281, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 1282, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 1283, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 508, 509, 510, 511, - 512, 513, 3198, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 1285, 529, - 530, 531, 532, 533, 534, 535, 536, 1286, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 1287, 553, 0, 554, 555, 0, 556, - 557, 558, 559, 560, 561, 562, 0, 563, 1288, 1289, - 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 1294, 0, 584, 585, 586, 587, 588, - 589, 1295, 0, 591, 592, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, 1303, - 614, 615, 616, 617, 0, 0, 234, 0, 1236, 684, - 0, 1237, 1238, 0, 745, 1240, 0, 0, 0, 0, - 0, 0, 0, 0, 3201, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 1241, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 4566, 264, 265, 266, 267, 268, 1245, - 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 1249, 0, 1250, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 1261, 338, - 339, 340, 341, 1262, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 1265, 0, 1266, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 1270, 401, 402, 403, 0, - 404, 405, 406, 1271, 1272, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 1275, 437, 0, 438, 439, 440, - 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 1281, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 1282, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 3198, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 1285, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 1287, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 1294, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, - 1303, 614, 615, 616, 617, 0, 0, 234, 0, 1236, - 684, 0, 1237, 1238, 0, 745, 1240, 0, 0, 0, - 0, 0, 0, 0, 0, 3201, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 1241, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 1242, 259, - 1243, 1244, 0, 262, 263, 264, 265, 266, 267, 268, - 1245, 1246, 269, 270, 1247, 1248, 273, 0, 274, 275, - 276, 277, 1249, 0, 1250, 0, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 296, 297, 298, 299, 1251, 1252, - 1253, 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, - 306, 1258, 1259, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 860, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 1261, - 338, 339, 340, 341, 1262, 1263, 343, 0, 344, 345, - 346, 1264, 348, 0, 349, 0, 350, 351, 0, 352, - 353, 354, 355, 356, 0, 357, 1265, 0, 1266, 360, - 361, 0, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 380, 381, 382, 383, 384, 385, 1267, 1268, - 0, 1269, 0, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 0, 0, 399, 1270, 401, 402, 403, - 0, 404, 405, 406, 1271, 1272, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 1273, 426, 1274, 428, 429, 430, - 431, 432, 433, 434, 435, 1275, 437, 0, 438, 439, - 440, 441, 1277, 1278, 443, 1279, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 456, 457, 458, 1281, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 1282, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 1283, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 508, 509, - 510, 511, 512, 513, 3198, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 1285, 529, 530, 531, 532, 533, 534, 535, 536, 1286, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 1287, 553, 0, 554, 555, - 0, 556, 557, 558, 559, 560, 561, 562, 0, 563, - 1288, 1289, 0, 0, 566, 567, 1290, 569, 1291, 1292, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 1294, 0, 584, 585, 586, - 587, 588, 589, 1295, 0, 591, 592, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 1296, 1297, 1298, 1299, 4625, 1300, 1301, - 1302, 1303, 614, 615, 616, 617, 0, 0, 234, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3201, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 1246, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 1249, 0, 1250, 0, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 296, 297, 298, 299, 1251, - 1252, 1253, 1254, 1255, 1256, 1257, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 1262, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 351, 0, - 352, 353, 354, 355, 356, 0, 357, 1265, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 3345, 0, 399, 1270, 401, 402, - 403, 0, 404, 405, 406, 1271, 1272, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, + 241, 242, 243, 0, 244, 245, 246, 0, 0, 0, + 0, 1251, 0, 0, 247, 248, 249, 0, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 1252, 260, 1253, + 1254, 0, 263, 264, 265, 266, 267, 268, 269, 1255, + 1256, 270, 271, 1257, 1258, 274, 0, 275, 276, 277, + 278, 1259, 0, 1260, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 0, 291, 292, 293, 294, + 295, 296, 0, 297, 298, 299, 300, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 302, 303, 304, 305, 306, 307, + 1268, 1269, 310, 1270, 311, 0, 312, 313, 314, 315, + 316, 317, 318, 0, 319, 320, 321, 322, 0, 0, + 323, 324, 864, 326, 327, 0, 328, 329, 330, 0, + 331, 332, 333, 0, 334, 335, 336, 337, 1271, 339, + 340, 341, 342, 1272, 1273, 344, 0, 345, 346, 347, + 1274, 349, 0, 350, 0, 351, 352, 353, 0, 354, + 355, 356, 357, 358, 0, 359, 1275, 0, 1276, 362, + 363, 0, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 0, 374, 375, 376, 377, 378, 379, 380, + 381, 0, 382, 383, 384, 385, 386, 387, 388, 1277, + 1278, 0, 1279, 0, 392, 393, 394, 395, 396, 397, + 1280, 1281, 1282, 1283, 402, 403, 404, 405, 406, 407, + 0, 0, 408, 1284, 410, 411, 412, 0, 413, 414, + 415, 1285, 1286, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, + 433, 1287, 435, 1288, 437, 438, 439, 440, 441, 442, + 443, 444, 1289, 446, 1290, 447, 448, 449, 450, 1291, + 1292, 452, 1293, 454, 455, 456, 0, 457, 458, 0, + 0, 1294, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 467, 1295, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 0, 479, 480, 1296, 482, 483, 484, + 485, 486, 0, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 1297, 498, 499, 500, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 0, 515, 516, 517, 518, 519, 520, 521, + 522, 1298, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 0, 534, 535, 536, 537, 538, 1299, 539, + 540, 541, 542, 543, 544, 545, 546, 1300, 548, 0, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 1301, 563, 0, 564, 565, 1302, 0, + 566, 567, 568, 569, 570, 571, 572, 0, 573, 1303, + 1304, 0, 0, 576, 577, 1305, 579, 1306, 1307, 581, + 582, 583, 584, 585, 586, 587, 588, 0, 1308, 589, + 590, 591, 592, 593, 1309, 0, 594, 595, 596, 597, + 598, 599, 1310, 0, 601, 602, 603, 604, 605, 606, + 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, + 613, 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, + 1318, 624, 625, 626, 627, 0, 1319, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1320, 1321, + 0, 0, 0, 234, 0, 1246, 694, 1323, 1247, 1248, + 1249, 755, 1250, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, + 243, 0, 244, 245, 246, 0, 0, 0, 0, 1251, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 1252, 260, 1253, 1254, 0, + 263, 264, 265, 266, 267, 268, 269, 1255, 1256, 270, + 271, 1257, 1258, 274, 0, 275, 276, 277, 278, 1259, + 0, 1260, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 299, 300, 1261, 1262, 1263, 1264, 1265, + 1266, 1267, 302, 303, 304, 305, 306, 307, 1268, 1269, + 310, 1270, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 864, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 1271, 339, 340, 341, + 342, 1272, 1273, 344, 0, 345, 346, 347, 1274, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 1275, 0, 1276, 362, 363, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 384, 385, 386, 387, 388, 1277, 1278, 0, + 1279, 0, 392, 393, 394, 395, 396, 397, 1280, 1281, + 1282, 1283, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 1284, 410, 411, 412, 0, 413, 414, 415, 1285, + 1286, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 1287, + 435, 1288, 437, 438, 439, 440, 441, 442, 443, 444, + 1289, 446, 1290, 447, 448, 449, 450, 1291, 1292, 452, + 1293, 454, 455, 456, 0, 457, 458, 0, 0, 1294, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 467, + 1295, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 1296, 482, 483, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 1297, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 517, 518, 519, 520, 521, 522, 1298, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 1299, 539, 540, 541, + 542, 543, 544, 545, 546, 1300, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 1301, 563, 0, 564, 565, 1302, 0, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 1303, 1304, 0, + 0, 576, 577, 1305, 579, 1306, 1307, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 1308, 589, 590, 591, + 592, 593, 1309, 0, 594, 595, 596, 597, 598, 599, + 1310, 0, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, + 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, + 625, 626, 627, 0, 1319, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2644, 2645, 0, 0, + 0, 234, 0, 3439, 694, 1323, 1247, 1248, 1249, 755, + 1250, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 1251, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 1252, 260, 1253, 1254, 0, 263, 264, + 265, 266, 267, 268, 269, 1255, 1256, 270, 271, 1257, + 1258, 274, 0, 275, 276, 277, 278, 1259, 0, 1260, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 1261, 1262, 1263, 1264, 1265, 1266, 1267, + 302, 303, 304, 305, 306, 307, 1268, 1269, 310, 1270, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 864, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 1271, 339, 340, 341, 342, 1272, + 1273, 344, 0, 345, 346, 347, 1274, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 1275, 0, 1276, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 1277, 1278, 0, 1279, 0, + 392, 393, 394, 395, 396, 397, 1280, 1281, 1282, 1283, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 1284, + 410, 411, 412, 0, 413, 414, 415, 1285, 1286, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 1287, 435, 1288, + 437, 438, 439, 440, 441, 442, 443, 444, 1289, 446, + 1290, 447, 448, 449, 450, 1291, 1292, 452, 1293, 454, + 455, 456, 0, 457, 458, 0, 0, 1294, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 1295, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 1296, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 1297, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 1298, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 1299, 539, 540, 541, 542, 543, + 544, 545, 546, 1300, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 1301, + 563, 0, 564, 565, 1302, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 1303, 1304, 0, 0, 576, + 577, 1305, 579, 1306, 1307, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 1308, 589, 590, 591, 592, 593, + 1309, 0, 594, 595, 596, 597, 598, 599, 1310, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 1311, 1312, + 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, 625, 626, + 627, 0, 1319, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1320, 1321, 0, 0, 0, 234, + 0, 1246, 694, 1323, 1247, 1248, 1249, 755, 1250, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 0, 244, 245, + 246, 0, 0, 0, 0, 1251, 0, 0, 247, 248, + 249, 0, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 1252, 260, 1253, 1254, 0, 263, 264, 265, 266, + 267, 268, 269, 1255, 1256, 270, 271, 1257, 1258, 274, + 0, 275, 276, 277, 278, 1259, 0, 1260, 0, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 0, + 291, 292, 293, 294, 295, 296, 0, 297, 298, 299, + 4764, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, + 304, 305, 306, 307, 1268, 1269, 310, 1270, 311, 0, + 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, + 321, 322, 0, 0, 323, 324, 864, 326, 327, 0, + 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, + 336, 337, 1271, 339, 340, 341, 342, 1272, 1273, 344, + 0, 345, 346, 347, 1274, 349, 0, 350, 0, 351, + 352, 353, 0, 354, 355, 356, 357, 358, 0, 359, + 1275, 0, 1276, 362, 363, 0, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 0, 374, 375, 376, + 377, 378, 379, 380, 381, 0, 382, 383, 384, 385, + 386, 387, 388, 1277, 1278, 0, 1279, 0, 392, 393, + 394, 395, 396, 397, 1280, 1281, 1282, 1283, 402, 403, + 404, 405, 406, 407, 0, 0, 408, 1284, 410, 411, + 412, 0, 413, 414, 415, 1285, 1286, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, 433, 1287, 435, 1288, 437, 438, + 439, 440, 441, 442, 443, 444, 1289, 446, 1290, 447, + 448, 449, 450, 1291, 1292, 452, 1293, 454, 455, 456, + 0, 457, 458, 0, 0, 1294, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 467, 1295, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 0, 479, 480, + 1296, 482, 483, 484, 485, 486, 0, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 1297, 498, 499, + 500, 501, 0, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 0, 515, 516, 517, + 518, 519, 520, 521, 522, 1298, 524, 525, 526, 527, + 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, + 537, 538, 1299, 539, 540, 541, 542, 543, 544, 545, + 546, 1300, 548, 0, 549, 550, 551, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 1301, 563, 0, + 564, 565, 1302, 0, 566, 567, 568, 569, 570, 571, + 572, 0, 573, 1303, 1304, 0, 0, 576, 577, 1305, + 579, 1306, 1307, 581, 582, 583, 584, 585, 586, 587, + 588, 0, 1308, 589, 590, 591, 592, 593, 1309, 0, + 594, 595, 596, 597, 598, 599, 1310, 0, 601, 602, + 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, + 609, 610, 611, 612, 613, 614, 1311, 1312, 1313, 1314, + 619, 1315, 1316, 1317, 1318, 624, 625, 626, 627, 0, + 1319, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1320, 1321, 0, 0, 0, 234, 0, 1246, + 694, 1323, 1247, 1248, 1249, 755, 1250, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 1251, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 1252, + 260, 1253, 1254, 0, 263, 264, 265, 266, 267, 268, + 269, 1255, 1256, 270, 271, 1257, 1258, 274, 0, 275, + 276, 277, 278, 1259, 0, 1260, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 297, 298, 299, 300, 1261, + 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, 304, 305, + 306, 307, 1268, 1269, 310, 1270, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 864, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 1271, 339, 340, 341, 342, 1272, 1273, 344, 0, 345, + 346, 347, 1274, 349, 0, 350, 0, 351, 352, 353, + 0, 354, 355, 356, 357, 358, 0, 359, 1275, 0, + 1276, 362, 363, 0, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 383, 384, 385, 386, 387, + 388, 1277, 1278, 0, 1279, 0, 392, 393, 394, 395, + 396, 397, 1280, 1281, 1282, 1283, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 1284, 410, 411, 412, 0, + 413, 414, 415, 1285, 1286, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 1287, 435, 1288, 437, 438, 439, 440, + 441, 442, 443, 444, 1289, 446, 1290, 447, 448, 449, + 450, 1291, 1292, 452, 1293, 454, 455, 456, 0, 457, + 458, 0, 0, 1294, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 467, 1295, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 1296, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 1297, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 517, 518, 519, + 520, 521, 522, 1298, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 1299, 539, 540, 541, 542, 543, 544, 545, 546, 1300, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 1301, 563, 0, 564, 565, + 1302, 0, 566, 567, 568, 569, 570, 571, 572, 0, + 573, 1303, 1304, 0, 0, 576, 577, 1305, 579, 1306, + 1307, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 1308, 589, 590, 591, 592, 593, 1309, 0, 594, 595, + 596, 597, 598, 599, 1310, 0, 601, 602, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 5140, 1311, 1312, 1313, 1314, 619, 1315, + 1316, 1317, 1318, 624, 625, 626, 627, 0, 1319, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1320, 1321, 0, 0, 0, 234, 0, 1246, 694, 1323, + 1247, 1248, 1249, 755, 1250, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, + 241, 242, 243, 0, 244, 245, 246, 0, 0, 0, + 0, 1251, 0, 0, 247, 248, 249, 0, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 1252, 260, 1253, + 1254, 0, 263, 264, 265, 266, 267, 268, 269, 1255, + 1256, 270, 271, 1257, 1258, 274, 0, 275, 276, 277, + 278, 1259, 0, 1260, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 0, 291, 292, 293, 294, + 295, 296, 0, 297, 298, 299, 300, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 302, 303, 304, 305, 306, 307, + 1268, 1269, 310, 1270, 311, 0, 312, 313, 314, 315, + 316, 317, 318, 0, 319, 320, 321, 322, 0, 0, + 323, 324, 864, 326, 327, 0, 328, 329, 330, 0, + 331, 332, 333, 0, 334, 335, 336, 337, 1271, 339, + 340, 341, 342, 1272, 1273, 344, 0, 345, 346, 347, + 1274, 349, 0, 350, 0, 351, 352, 353, 0, 354, + 355, 356, 357, 358, 0, 359, 1275, 0, 1276, 362, + 363, 0, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 0, 374, 375, 376, 377, 378, 379, 380, + 381, 0, 382, 383, 384, 385, 386, 387, 388, 1277, + 1278, 0, 1279, 0, 392, 393, 394, 395, 396, 397, + 1280, 1281, 1282, 1283, 402, 403, 404, 405, 406, 407, + 0, 0, 408, 1284, 410, 411, 412, 0, 413, 414, + 415, 1285, 1286, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, + 433, 1287, 435, 1288, 437, 438, 439, 440, 441, 442, + 5152, 444, 1289, 446, 1290, 447, 448, 449, 450, 1291, + 1292, 452, 1293, 454, 455, 456, 0, 457, 458, 0, + 0, 1294, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 467, 1295, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 0, 479, 480, 1296, 482, 483, 484, + 485, 486, 0, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 1297, 498, 499, 500, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 0, 515, 516, 517, 518, 519, 520, 521, + 522, 1298, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 0, 534, 535, 536, 537, 538, 1299, 539, + 540, 541, 542, 543, 544, 545, 546, 1300, 548, 0, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 1301, 563, 0, 564, 565, 1302, 0, + 566, 567, 568, 569, 570, 571, 572, 0, 573, 1303, + 1304, 0, 0, 576, 577, 1305, 579, 1306, 1307, 581, + 582, 583, 584, 585, 586, 587, 588, 0, 1308, 589, + 590, 591, 592, 593, 1309, 0, 594, 595, 596, 597, + 598, 599, 1310, 0, 601, 602, 603, 604, 605, 606, + 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, + 613, 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, + 1318, 624, 625, 626, 627, 0, 1319, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1320, 1321, + 0, 0, 0, 234, 0, 1246, 694, 1323, 1247, 1248, + 1249, 755, 1250, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, + 243, 0, 244, 245, 246, 0, 0, 0, 0, 1251, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 1252, 260, 1253, 1254, 0, + 263, 264, 265, 266, 267, 268, 269, 1255, 1256, 270, + 271, 1257, 1258, 274, 0, 275, 276, 277, 278, 1259, + 0, 1260, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 5471, 300, 1261, 1262, 1263, 1264, 1265, + 1266, 1267, 302, 303, 304, 305, 306, 307, 1268, 1269, + 310, 1270, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 864, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 1271, 339, 340, 341, + 342, 1272, 1273, 344, 0, 345, 346, 347, 1274, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 1275, 0, 5472, 362, 363, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 384, 385, 386, 387, 388, 1277, 1278, 0, + 1279, 0, 392, 393, 394, 395, 396, 397, 1280, 1281, + 1282, 1283, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 1284, 410, 411, 412, 0, 413, 414, 415, 1285, + 1286, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 1287, + 435, 1288, 437, 438, 439, 440, 441, 442, 443, 444, + 1289, 446, 1290, 447, 448, 449, 450, 1291, 1292, 452, + 1293, 454, 455, 456, 0, 457, 458, 0, 0, 1294, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 467, + 1295, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 1296, 482, 483, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 1297, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 517, 518, 519, 5473, 521, 522, 1298, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 1299, 539, 540, 541, + 542, 543, 544, 545, 546, 1300, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 1301, 563, 0, 564, 565, 1302, 0, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 1303, 1304, 0, + 0, 576, 577, 1305, 579, 1306, 1307, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 1308, 589, 590, 591, + 592, 593, 1309, 0, 594, 595, 596, 597, 598, 599, + 1310, 0, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, + 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, + 625, 626, 627, 0, 1319, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1320, 1321, 0, 0, + 0, 234, 0, 1246, 694, 5474, 1247, 1248, 1249, 755, + 1250, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 1251, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 5846, 1252, 260, 1253, 1254, 0, 263, 264, + 265, 266, 267, 268, 269, 1255, 1256, 270, 271, 1257, + 1258, 274, 0, 275, 276, 277, 278, 1259, 0, 1260, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 5847, 1261, 1262, 1263, 1264, 1265, 1266, 1267, + 302, 303, 304, 305, 306, 307, 1268, 1269, 310, 1270, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 864, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 1271, 339, 340, 341, 342, 1272, + 1273, 344, 0, 345, 346, 347, 1274, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 1275, 0, 1276, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 1277, 1278, 0, 1279, 0, + 392, 393, 394, 395, 396, 397, 1280, 1281, 1282, 1283, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 1284, + 410, 411, 412, 0, 413, 414, 415, 1285, 1286, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 1287, 435, 1288, + 437, 438, 439, 440, 441, 442, 443, 444, 1289, 446, + 1290, 447, 448, 449, 450, 1291, 1292, 452, 1293, 454, + 455, 456, 0, 457, 458, 0, 0, 1294, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 1295, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 1296, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 1297, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 1298, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 1299, 539, 540, 541, 542, 543, + 544, 545, 546, 1300, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 1301, + 563, 0, 564, 565, 1302, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 1303, 1304, 0, 0, 576, + 577, 1305, 579, 1306, 1307, 581, 582, 583, 584, 585, + 5848, 587, 588, 0, 1308, 589, 590, 591, 592, 593, + 1309, 0, 594, 595, 596, 597, 598, 599, 1310, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 1311, 1312, + 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, 625, 626, + 627, 0, 1319, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1320, 1321, 0, 0, 0, 234, + 0, 1246, 694, 1323, 1247, 1248, 1249, 755, 1250, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 0, 244, 245, + 246, 0, 0, 0, 0, 1251, 0, 0, 247, 248, + 249, 0, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 1252, 260, 1253, 1254, 0, 263, 264, 265, 266, + 267, 268, 269, 1255, 1256, 270, 271, 1257, 1258, 274, + 0, 275, 276, 277, 278, 1259, 0, 1260, 0, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 0, + 291, 292, 293, 294, 295, 296, 0, 297, 298, 299, + 5847, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, + 304, 305, 306, 307, 1268, 1269, 310, 1270, 311, 0, + 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, + 321, 322, 0, 0, 323, 324, 864, 326, 327, 0, + 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, + 336, 337, 1271, 339, 340, 341, 342, 1272, 1273, 344, + 0, 345, 346, 347, 1274, 349, 0, 350, 0, 351, + 352, 353, 0, 354, 355, 356, 357, 358, 0, 359, + 1275, 0, 1276, 362, 363, 0, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 0, 374, 375, 376, + 377, 378, 379, 380, 381, 0, 382, 383, 384, 385, + 386, 387, 388, 1277, 1278, 0, 1279, 0, 392, 393, + 394, 395, 396, 397, 1280, 1281, 1282, 1283, 402, 403, + 404, 405, 406, 407, 0, 0, 408, 1284, 410, 411, + 412, 0, 413, 414, 415, 1285, 1286, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, 433, 1287, 435, 1288, 437, 438, + 439, 440, 441, 442, 443, 444, 1289, 446, 1290, 447, + 448, 449, 450, 1291, 1292, 452, 1293, 454, 455, 456, + 0, 457, 458, 0, 0, 1294, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 467, 1295, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 0, 479, 480, + 1296, 482, 483, 484, 485, 486, 0, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 1297, 498, 499, + 500, 501, 0, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 0, 515, 516, 517, + 518, 519, 520, 521, 522, 1298, 524, 525, 526, 527, + 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, + 537, 538, 1299, 539, 540, 541, 542, 543, 544, 545, + 546, 1300, 548, 0, 549, 550, 551, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 1301, 563, 0, + 564, 565, 1302, 0, 566, 567, 568, 569, 570, 571, + 572, 0, 573, 1303, 1304, 0, 0, 576, 577, 1305, + 579, 1306, 1307, 581, 582, 583, 584, 585, 5848, 587, + 588, 0, 1308, 589, 590, 591, 592, 593, 1309, 0, + 594, 595, 596, 597, 598, 599, 1310, 0, 601, 602, + 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, + 609, 610, 611, 612, 613, 614, 1311, 1312, 1313, 1314, + 619, 1315, 1316, 1317, 1318, 624, 625, 626, 627, 0, + 1319, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1320, 1321, 0, 0, 0, 234, 0, 1246, + 694, 1323, 1247, 1248, 1249, 755, 1250, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 1251, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 1252, + 260, 1253, 1254, 0, 263, 264, 265, 266, 267, 268, + 269, 1255, 1256, 270, 271, 1257, 1258, 274, 0, 275, + 276, 277, 278, 1259, 0, 1260, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 297, 298, 299, 300, 1261, + 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, 304, 305, + 306, 307, 1268, 1269, 310, 5456, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 864, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 1271, 339, 340, 341, 342, 1272, 1273, 344, 0, 345, + 346, 347, 1274, 349, 0, 350, 0, 351, 352, 353, + 0, 354, 355, 356, 357, 358, 0, 359, 1275, 0, + 1276, 362, 363, 0, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 383, 384, 385, 386, 387, + 388, 1277, 1278, 0, 1279, 0, 392, 393, 394, 395, + 396, 397, 1280, 1281, 1282, 1283, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 1284, 410, 411, 412, 0, + 413, 414, 415, 1285, 1286, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 1287, 435, 1288, 437, 438, 439, 440, + 441, 442, 443, 444, 1289, 446, 0, 447, 448, 449, + 450, 1291, 1292, 452, 1293, 454, 455, 456, 0, 457, + 458, 0, 0, 1294, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 467, 1295, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 1296, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 1297, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 517, 518, 519, + 520, 521, 522, 3251, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 1299, 539, 540, 541, 542, 543, 544, 545, 546, 1300, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 1301, 563, 0, 564, 565, + 1302, 0, 566, 567, 568, 569, 570, 571, 572, 0, + 573, 1303, 1304, 0, 0, 576, 577, 1305, 579, 1306, + 1307, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 0, 589, 590, 591, 592, 593, 1309, 0, 594, 595, + 596, 597, 598, 599, 1310, 0, 601, 602, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 614, 1311, 1312, 1313, 1314, 619, 1315, + 1316, 1317, 1318, 624, 625, 626, 627, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 3252, 3253, 0, 0, 0, 234, 0, 1246, 694, 3254, + 1247, 1248, 1249, 755, 1250, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, + 241, 242, 243, 0, 244, 245, 246, 0, 0, 0, + 0, 1251, 0, 0, 247, 248, 249, 0, 250, 251, + 252, 253, 254, 255, 256, 257, -2896, 1252, 260, 1253, + 1254, 0, 263, 264, 265, 266, 267, 268, 269, 1255, + 1256, 270, 271, 1257, 1258, 274, 0, 275, 276, 277, + 278, 1259, 0, 1260, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 0, 291, 292, 293, 294, + 295, 296, 0, 297, 298, 299, 5847, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 302, 303, 304, 305, 306, 307, + 1268, 1269, 310, 1270, 311, 0, 312, 313, 314, 315, + 316, 317, 318, 0, 319, 320, 321, 322, 0, 0, + 323, 324, 864, 326, 327, 0, 328, 329, 330, 0, + 331, 332, 333, 0, 334, 335, 336, 337, 1271, 339, + 340, 341, 342, 1272, 1273, 344, 0, 345, 346, 347, + 1274, 349, 0, 350, 0, 351, 352, 353, 0, 354, + 355, 356, 357, 358, 0, 359, 1275, 0, 1276, 362, + 363, 0, 364, 365, 366, 367, 368, -2896, 370, 371, + 372, 373, 0, 374, 375, 376, 377, 378, 379, 380, + 381, 0, 382, 383, 384, 385, 386, 387, 388, 1277, + 1278, 0, 1279, 0, 392, 0, 0, 395, 396, 397, + 1280, 1281, 1282, 1283, 402, 403, 404, 405, 406, 407, + 0, 0, 408, 1284, 410, 411, -2896, 0, 413, 414, + 415, 1285, 1286, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, + 433, 1287, 435, 1288, 437, 438, 439, 440, 441, 442, + 443, 444, 1289, 446, 1290, 447, 448, 0, 450, 1291, + 1292, 452, 1293, 454, 455, 456, 0, 457, 458, 0, + 0, 1294, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 467, 1295, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 0, 479, 480, 1296, 482, 483, 484, + 485, 486, 0, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 1297, 498, 499, 500, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 0, 515, 516, 517, 518, 519, 520, 521, + 522, 1298, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 0, 534, 535, 536, 537, 538, 1299, 539, + 540, 541, 542, 543, -2896, 545, 546, 1300, 548, 0, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 1301, 563, 0, 564, 565, 1302, 0, + 566, 567, 568, 569, 570, 571, 572, 0, 573, 1303, + 1304, 0, 0, 576, 577, 1305, 579, 1306, 1307, 581, + 582, 583, 584, 585, 5848, 587, 588, 0, 1308, 589, + 590, 591, 592, 593, 1309, 0, 594, 595, 596, 597, + 598, 599, 1310, 0, 601, 602, 603, 604, 605, 606, + 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, + 613, 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, + 1318, 624, 625, 626, 627, 0, -2896, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1320, 1321, + 0, 0, 0, 234, 0, 1246, 694, 1323, 1247, 1248, + 1249, 755, 1250, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, + 243, 0, 244, 245, 246, 0, 0, 0, 0, 1251, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 1252, 260, 1253, 1254, 0, + 263, 264, 265, 266, 267, 268, 269, 1255, 1256, 270, + 271, 1257, 1258, 274, 0, 275, 276, 277, 278, 1259, + 0, 1260, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 299, 300, 1261, 1262, 1263, 1264, 1265, + 1266, 1267, 302, 303, 304, 305, 306, 307, 1268, 1269, + 310, 0, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 864, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 1271, 339, 340, 341, + 342, 1272, 1273, 344, 0, 345, 346, 347, 1274, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 1275, 0, 1276, 362, 363, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 384, 385, 386, 387, 388, 1277, 1278, 0, + 1279, 0, 392, 393, 394, 395, 396, 397, 1280, 1281, + 1282, 1283, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 1284, 410, 411, 412, 0, 413, 414, 415, 1285, + 1286, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 1287, + 435, 1288, 437, 438, 439, 440, 441, 442, 443, 444, + 1289, 446, 0, 447, 448, 449, 450, 1291, 1292, 452, + 1293, 454, 455, 456, 0, 457, 458, 0, 0, 1294, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 467, + 1295, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 1296, 482, 483, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 1297, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 517, 518, 519, 520, 521, 522, 3251, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 1299, 539, 540, 541, + 542, 543, 544, 545, 546, 1300, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 1301, 563, 0, 564, 565, 1302, 0, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 1303, 1304, 0, + 0, 576, 577, 1305, 579, 1306, 1307, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 0, 589, 590, 591, + 592, 593, 1309, 0, 594, 595, 596, 597, 598, 599, + 1310, 0, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, + 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, + 625, 626, 627, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3252, 3253, 234, 0, + 1246, 694, 0, 1247, 1248, 3254, 755, 1250, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, + 238, 239, 240, 241, 242, 243, 0, 244, 245, 246, + 0, 0, 0, 0, 1251, 0, 0, 247, 248, 249, + 0, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 1252, 260, 1253, 1254, 0, 263, 264, 265, 266, 267, + 268, 269, 1255, 1256, 270, 271, 1257, 1258, 274, 0, + 275, 276, 277, 278, 1259, 0, 1260, 0, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 0, 291, + 292, 293, 294, 295, 296, 0, 297, 298, 299, 300, + 1261, 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, 304, + 305, 306, 307, 1268, 1269, 310, 0, 311, 0, 312, + 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, + 322, 0, 0, 323, 324, 864, 326, 327, 0, 328, + 329, 330, 0, 331, 332, 333, 0, 334, 335, 336, + 337, 1271, 339, 340, 341, 342, 1272, 1273, 344, 0, + 345, 346, 347, 1274, 349, 0, 350, 0, 351, 352, + 353, 0, 354, 355, 356, 357, 358, 0, 359, 1275, + 0, 1276, 362, 363, 0, 364, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 0, 374, 375, 376, 377, + 378, 379, 380, 381, 0, 382, 383, 384, 385, 386, + 387, 388, 1277, 1278, 0, 1279, 0, 392, 393, 394, + 395, 396, 397, 1280, 1281, 1282, 1283, 402, 403, 404, + 405, 406, 407, 0, 0, 408, 1284, 410, 411, 412, + 0, 413, 414, 415, 1285, 1286, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 1275, 437, 0, 438, - 439, 440, 441, 0, 1278, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 835, 450, 451, 452, 0, 0, - 453, 454, 455, 456, 457, 458, 1281, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 1282, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 3346, 516, 517, 518, - 519, 520, 521, 522, 523, 40, 524, 525, 526, 527, - 528, 1285, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 1287, 553, 0, 554, - 555, 44, 556, 557, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 1290, 569, 1291, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 1294, 0, 584, 585, - 586, 587, 588, 1175, 590, 0, 591, 592, 593, 594, - 595, 596, 0, 0, 597, 0, 49, 598, 599, 600, - 601, 602, 603, 604, 1296, 1297, 1298, 1299, 609, 1300, - 1301, 1302, 1303, 3347, 615, 616, 617, 0, 0, 50, - 234, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3348, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 1246, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 1249, 0, 1250, 0, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 296, 297, 298, - 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 1262, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 351, 0, 352, 353, 354, 355, 356, 0, 357, 1265, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 3345, 0, 399, 1270, - 401, 402, 403, 0, 404, 405, 406, 1271, 1272, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 1275, 437, - 0, 438, 439, 440, 441, 0, 1278, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 835, 450, 451, 452, - 0, 0, 453, 454, 455, 456, 457, 458, 1281, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 1282, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 3346, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 1285, 529, 530, 531, 532, 533, 534, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 1287, 553, - 0, 554, 555, 0, 556, 557, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 1290, - 569, 1291, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 1294, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 592, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, 1299, - 609, 1300, 1301, 1302, 1303, 3347, 615, 616, 617, 0, - 0, 234, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 3348, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 1246, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 1249, 0, 1250, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 1262, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 1265, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 1270, 401, 402, 403, 0, 404, 405, 406, 1271, 1272, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 430, 431, 432, 433, 1287, 435, 1288, 437, 438, 439, + 440, 441, 442, 443, 444, 1289, 446, 0, 447, 448, + 449, 450, 1291, 1292, 452, 1293, 454, 455, 456, 0, + 457, 458, 0, 0, 459, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 467, 1295, 469, 470, 471, 472, + 473, 474, 475, 476, 477, 478, 0, 479, 480, 1296, + 482, 483, 484, 485, 486, 0, 487, 488, 489, 490, + 491, 492, 493, 494, 495, 496, 1297, 498, 499, 500, + 501, 0, 502, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 512, 513, 514, 0, 515, 516, 517, 518, + 519, 520, 521, 522, 3428, 3429, 525, 526, 527, 528, + 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, + 538, 1299, 539, 540, 541, 542, 543, 544, 545, 546, + 1300, 548, 0, 549, 550, 551, 552, 553, 554, 555, + 556, 557, 558, 559, 560, 561, 1301, 563, 0, 564, + 565, 1302, 0, 566, 567, 568, 569, 570, 571, 572, + 0, 573, 1303, 1304, 0, 0, 576, 577, 1305, 579, + 1306, 1307, 581, 582, 583, 584, 585, 586, 587, 588, + 0, 0, 589, 590, 591, 592, 593, 1309, 0, 594, + 595, 596, 597, 598, 599, 1310, 0, 601, 602, 603, + 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, + 610, 611, 612, 613, 614, 1311, 1312, 1313, 1314, 619, + 1315, 1316, 1317, 1318, 624, 625, 626, 627, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3430, 3431, 234, 0, 1246, 694, 0, 1247, 1248, + 3254, 755, 1250, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, + 243, 0, 244, 245, 246, 0, 0, 0, 0, 1251, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 1252, 260, 1253, 1254, 0, + 263, 264, 265, 266, 267, 268, 269, 1255, 1256, 270, + 271, 1257, 1258, 274, 0, 275, 276, 277, 278, 1259, + 0, 1260, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 299, 300, 1261, 1262, 1263, 1264, 1265, + 1266, 1267, 302, 303, 304, 305, 306, 307, 1268, 1269, + 310, 0, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 864, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 1271, 339, 340, 341, + 342, 1272, 1273, 344, 0, 345, 346, 347, 1274, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 1275, 0, 1276, 362, 363, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 384, 385, 386, 387, 388, 1277, 1278, 0, + 1279, 0, 392, 393, 394, 395, 396, 397, 1280, 1281, + 1282, 1283, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 1284, 410, 411, 412, 0, 413, 414, 415, 1285, + 1286, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 1287, + 435, 1288, 437, 438, 439, 440, 441, 442, 443, 444, + 1289, 446, 0, 447, 448, 449, 450, 1291, 1292, 452, + 1293, 454, 455, 456, 0, 457, 458, 0, 0, 459, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 467, + 1295, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 1296, 482, 483, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 1297, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 517, 518, 519, 520, 521, 522, 3251, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 1299, 539, 540, 541, + 542, 543, 544, 545, 546, 1300, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 1301, 563, 0, 564, 565, 1302, 0, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 1303, 1304, 0, + 0, 576, 577, 1305, 579, 1306, 1307, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 0, 589, 590, 591, + 592, 593, 1309, 0, 594, 595, 596, 597, 598, 599, + 1310, 0, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, + 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, + 625, 626, 627, 0, 0, 0, 0, 234, 0, 1246, + 694, 0, 1247, 1248, 0, 755, 1250, 0, 0, 0, + 0, 0, 0, 0, 0, 3254, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 1251, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 1252, + 260, 1253, 1254, 0, 263, 4672, 265, 266, 267, 268, + 269, 1255, 1256, 270, 271, 1257, 1258, 274, 0, 275, + 276, 277, 278, 1259, 0, 1260, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 297, 298, 299, 300, 1261, + 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, 304, 305, + 306, 307, 1268, 1269, 310, 0, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 864, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 1271, 339, 340, 341, 342, 1272, 1273, 344, 0, 345, + 346, 347, 1274, 349, 0, 350, 0, 351, 352, 353, + 0, 354, 355, 356, 357, 358, 0, 359, 1275, 0, + 1276, 362, 363, 0, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 383, 384, 385, 386, 387, + 388, 1277, 1278, 0, 1279, 0, 392, 393, 394, 395, + 396, 397, 1280, 1281, 1282, 1283, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 1284, 410, 411, 412, 0, + 413, 414, 415, 1285, 1286, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 1287, 435, 1288, 437, 438, 439, 440, + 441, 442, 443, 444, 1289, 446, 0, 447, 448, 449, + 450, 1291, 1292, 452, 1293, 454, 455, 456, 0, 457, + 458, 0, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 467, 1295, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 1296, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 1297, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 517, 518, 519, + 520, 521, 522, 3251, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 1299, 539, 540, 541, 542, 543, 544, 545, 546, 1300, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 1301, 563, 0, 564, 565, + 1302, 0, 566, 567, 568, 569, 570, 571, 572, 0, + 573, 1303, 1304, 0, 0, 576, 577, 1305, 579, 1306, + 1307, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 0, 589, 590, 591, 592, 593, 1309, 0, 594, 595, + 596, 597, 598, 599, 1310, 0, 601, 602, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 614, 1311, 1312, 1313, 1314, 619, 1315, + 1316, 1317, 1318, 624, 625, 626, 627, 0, 0, 0, + 0, 234, 0, 1246, 694, 0, 1247, 1248, 0, 755, + 1250, 0, 0, 0, 0, 0, 0, 0, 0, 3254, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 1251, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 1252, 260, 1253, 1254, 0, 263, 264, + 265, 266, 267, 268, 269, 1255, 1256, 270, 271, 1257, + 1258, 274, 0, 275, 276, 277, 278, 1259, 0, 1260, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 1261, 1262, 1263, 1264, 1265, 1266, 1267, + 302, 303, 304, 305, 306, 307, 1268, 1269, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 864, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 1271, 339, 340, 341, 342, 1272, + 1273, 344, 0, 345, 346, 347, 1274, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 1275, 0, 1276, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 1277, 1278, 0, 1279, 0, + 392, 393, 394, 395, 396, 397, 1280, 1281, 1282, 1283, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 1284, + 410, 411, 412, 0, 413, 414, 415, 1285, 1286, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, 434, 435, 1275, - 437, 0, 438, 439, 440, 441, 0, 1278, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 1281, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 1282, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 1285, 529, 530, 531, 532, 533, - 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 1287, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 1290, 569, 1291, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 1294, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 1296, 1297, 1298, - 1299, 609, 1300, 1301, 1302, 1303, 614, 615, 616, 617, - 0, 0, 234, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 3783, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 1246, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 1249, 0, 1250, - 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, 1257, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 1262, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 1265, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 1270, 401, 402, 403, 0, 404, 405, 406, 1271, - 1272, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 1275, 437, 0, 438, 439, 440, 441, 0, 1278, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 456, 457, 458, - 1281, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 1282, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 3346, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 1285, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 1287, 553, 0, 554, 555, 0, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 1290, 569, 1291, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 1294, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 1296, 1297, - 1298, 1299, 609, 1300, 1301, 1302, 1303, 3347, 615, 616, - 617, 0, 0, 234, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 56, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 1246, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 1249, 0, - 1250, 0, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 296, 297, 298, 299, 1251, 1252, 1253, 1254, 1255, 1256, - 1257, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 1262, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 351, 0, 352, 353, 354, 355, 356, - 0, 357, 1265, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 0, - 0, 399, 1270, 401, 402, 403, 0, 404, 405, 406, - 1271, 1272, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 427, 428, 429, 430, 431, 432, 433, 1287, 435, 1288, + 437, 438, 439, 440, 441, 442, 443, 444, 1289, 446, + 0, 447, 448, 449, 450, 1291, 1292, 452, 1293, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 1295, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 1296, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 1297, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 3251, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 1299, 539, 540, 541, 542, 543, + 544, 545, 546, 1300, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 1301, + 563, 0, 564, 565, 1302, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 1303, 1304, 0, 0, 576, + 577, 1305, 579, 1306, 1307, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 1309, 0, 594, 595, 596, 597, 598, 599, 1310, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 1311, 1312, + 1313, 1314, 4733, 1315, 1316, 1317, 1318, 624, 625, 626, + 627, 0, 0, 0, 0, 234, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 3254, 235, 236, 237, 238, 239, 240, + 241, 242, 243, 0, 244, 245, 246, 0, 0, 0, + 0, 0, 0, 0, 247, 248, 249, 0, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 0, 263, 264, 265, 266, 267, 268, 269, 0, + 1256, 270, 271, 272, 273, 274, 0, 275, 276, 277, + 278, 1259, 0, 1260, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 0, 291, 292, 293, 294, + 295, 296, 0, 297, 298, 299, 300, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 0, 311, 0, 312, 313, 314, 315, + 316, 317, 318, 0, 319, 320, 321, 322, 0, 0, + 323, 324, 325, 326, 327, 0, 328, 329, 330, 0, + 331, 332, 333, 0, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 1272, 0, 344, 0, 345, 346, 347, + 348, 349, 0, 350, 0, 351, 352, 353, 0, 354, + 355, 356, 357, 358, 0, 359, 1275, 0, 361, 362, + 363, 0, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 0, 374, 375, 376, 377, 378, 379, 380, + 381, 0, 382, 383, 384, 385, 386, 387, 388, 389, + 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, + 1280, 1281, 1282, 1283, 402, 403, 404, 405, 406, 407, + 3402, 0, 408, 1284, 410, 411, 412, 0, 413, 414, + 415, 1285, 1286, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 1289, 446, 0, 447, 448, 449, 450, 0, + 1292, 452, 453, 454, 455, 456, 0, 457, 458, 0, + 839, 459, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 467, 1295, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 0, 479, 480, 1296, 482, 483, 484, + 485, 486, 0, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 497, 498, 499, 500, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 0, 515, 516, 517, 518, 519, 520, 521, + 522, 523, 3403, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 40, 534, 535, 536, 537, 538, 1299, 539, + 540, 541, 542, 543, 544, 545, 546, 547, 548, 0, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 1301, 563, 0, 564, 565, 1302, 44, + 566, 567, 568, 569, 570, 571, 572, 0, 573, 574, + 575, 0, 0, 576, 577, 1305, 579, 1306, 0, 581, + 582, 583, 584, 585, 586, 587, 588, 0, 0, 589, + 590, 591, 592, 593, 1309, 0, 594, 595, 596, 597, + 598, 1181, 600, 0, 601, 602, 603, 604, 605, 606, + 0, 0, 607, 0, 49, 608, 609, 610, 611, 612, + 613, 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, + 1318, 3404, 625, 626, 627, 0, 0, 0, 50, 234, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3405, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 0, 244, 245, + 246, 0, 0, 0, 0, 0, 0, 0, 247, 248, + 249, 0, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 0, 263, 264, 265, 266, + 267, 268, 269, 0, 1256, 270, 271, 272, 273, 274, + 0, 275, 276, 277, 278, 1259, 0, 1260, 0, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 0, + 291, 292, 293, 294, 295, 296, 0, 297, 298, 299, + 300, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 0, 311, 0, + 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, + 321, 322, 0, 0, 323, 324, 325, 326, 327, 0, + 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 1272, 0, 344, + 0, 345, 346, 347, 348, 349, 0, 350, 0, 351, + 352, 353, 0, 354, 355, 356, 357, 358, 0, 359, + 1275, 0, 361, 362, 363, 0, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 0, 374, 375, 376, + 377, 378, 379, 380, 381, 0, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, + 394, 395, 396, 397, 1280, 1281, 1282, 1283, 402, 403, + 404, 405, 406, 407, 3402, 0, 408, 1284, 410, 411, + 412, 0, 413, 414, 415, 1285, 1286, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 1289, 446, 0, 447, + 448, 449, 450, 0, 1292, 452, 453, 454, 455, 456, + 0, 457, 458, 0, 839, 459, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 467, 1295, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 0, 479, 480, + 1296, 482, 483, 484, 485, 486, 0, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, + 500, 501, 0, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 0, 515, 516, 517, + 518, 519, 520, 521, 522, 523, 3403, 525, 526, 527, + 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, + 537, 538, 1299, 539, 540, 541, 542, 543, 544, 545, + 546, 547, 548, 0, 549, 550, 551, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 1301, 563, 0, + 564, 565, 1302, 0, 566, 567, 568, 569, 570, 571, + 572, 0, 573, 574, 575, 0, 0, 576, 577, 1305, + 579, 1306, 0, 581, 582, 583, 584, 585, 586, 587, + 588, 0, 0, 589, 590, 591, 592, 593, 1309, 0, + 594, 595, 596, 597, 598, 599, 600, 0, 601, 602, + 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, + 609, 610, 611, 612, 613, 614, 1311, 1312, 1313, 1314, + 619, 1315, 1316, 1317, 1318, 3404, 625, 626, 627, 0, + 0, 0, 0, 234, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3405, 235, 236, 237, 238, 239, 240, 241, 242, + 243, 0, 244, 245, 246, 0, 0, 0, 0, 0, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 0, + 263, 264, 265, 266, 267, 268, 269, 0, 1256, 270, + 271, 272, 273, 274, 0, 275, 276, 277, 278, 1259, + 0, 1260, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 299, 300, 1261, 1262, 1263, 1264, 1265, + 1266, 1267, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 0, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 325, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 1272, 0, 344, 0, 345, 346, 347, 348, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 1275, 0, 361, 362, 363, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 0, + 391, 0, 392, 393, 394, 395, 396, 397, 1280, 1281, + 1282, 1283, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 1284, 410, 411, 412, 0, 413, 414, 415, 1285, + 1286, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 1275, 437, 0, 438, 439, 440, 441, 0, 1278, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 456, 457, - 458, 1281, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 1282, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 1285, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 1287, 553, 0, 554, 555, 0, 556, 557, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 1290, 569, 1291, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 1294, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 592, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 1296, - 1297, 1298, 1299, 609, 1300, 1301, 1302, 1303, 614, 615, - 616, 617, 0, 0, 234, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 4686, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 1246, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 1249, - 0, 1250, 0, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 296, 297, 298, 299, 1251, 1252, 1253, 1254, 1255, - 1256, 1257, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 1262, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 351, 0, 352, 353, 354, 355, - 356, 0, 357, 1265, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 0, 0, 399, 1270, 401, 402, 403, 0, 404, 405, - 406, 1271, 1272, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 1275, 437, 0, 438, 439, 440, 441, 0, - 1278, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 456, - 457, 458, 1281, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 1282, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 1285, 529, 530, - 531, 532, 533, 534, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 1287, 553, 0, 554, 555, 0, 556, 557, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 1290, 569, 1291, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 1294, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 592, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 1296, 1297, 1298, 1299, 609, 1300, 1301, 1302, 1303, 614, - 615, 616, 617, 0, 0, 938, 0, 1556, 684, 0, - 0, 0, 0, 745, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 5808, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 1289, 446, 0, 447, 448, 449, 450, 0, 1292, 452, + 453, 454, 455, 456, 0, 457, 458, 0, 0, 459, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 467, + 1295, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 1296, 482, 483, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 497, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 517, 518, 519, 520, 521, 522, 523, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 1299, 539, 540, 541, + 542, 543, 544, 545, 546, 547, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 1301, 563, 0, 564, 565, 1302, 0, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 574, 575, 0, + 0, 576, 577, 1305, 579, 1306, 0, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 0, 589, 590, 591, + 592, 593, 1309, 0, 594, 595, 596, 597, 598, 599, + 600, 0, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, + 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, + 625, 626, 627, 0, 0, 0, 0, 234, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3841, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 0, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 0, 263, 264, 265, 266, 267, 268, + 269, 0, 1256, 270, 271, 272, 273, 274, 0, 275, + 276, 277, 278, 1259, 0, 1260, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 297, 298, 299, 300, 1261, + 1262, 1263, 1264, 1265, 1266, 1267, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 0, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 325, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 1272, 0, 344, 0, 345, + 346, 347, 348, 349, 0, 350, 0, 351, 352, 353, + 0, 354, 355, 356, 357, 358, 0, 359, 1275, 0, + 361, 362, 363, 0, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 383, 384, 385, 386, 387, + 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, + 396, 397, 1280, 1281, 1282, 1283, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 1284, 410, 411, 412, 0, + 413, 414, 415, 1285, 1286, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 1289, 446, 0, 447, 448, 449, + 450, 0, 1292, 452, 453, 454, 455, 456, 0, 457, + 458, 0, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 467, 1295, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 1296, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 517, 518, 519, + 520, 521, 522, 523, 3403, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 1299, 539, 540, 541, 542, 543, 544, 545, 546, 547, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 1301, 563, 0, 564, 565, + 1302, 0, 566, 567, 568, 569, 570, 571, 572, 0, + 573, 574, 575, 0, 0, 576, 577, 1305, 579, 1306, + 0, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 0, 589, 590, 591, 592, 593, 1309, 0, 594, 595, + 596, 597, 598, 599, 600, 0, 601, 602, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 614, 1311, 1312, 1313, 1314, 619, 1315, + 1316, 1317, 1318, 3404, 625, 626, 627, 0, 0, 0, + 0, 234, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 1256, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 1259, 0, 1260, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 1261, 1262, 1263, 1264, 1265, 1266, 1267, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 1272, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 1275, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 393, 394, 395, 396, 397, 1280, 1281, 1282, 1283, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 1284, + 410, 411, 412, 0, 413, 414, 415, 1285, 1286, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 1289, 446, + 0, 447, 448, 449, 450, 0, 1292, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 1295, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 1296, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 1299, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 1301, + 563, 0, 564, 565, 1302, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 1305, 579, 1306, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 1309, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 1311, 1312, + 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, 625, 626, + 627, 0, 0, 0, 0, 234, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 4794, 235, 236, 237, 238, 239, 240, + 241, 242, 243, 0, 244, 245, 246, 0, 0, 0, + 0, 0, 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 279, 0, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 296, 297, 298, 299, 0, 0, 0, 300, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 1779, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 351, 0, 352, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 401, 402, 403, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, + 262, 0, 263, 264, 265, 266, 267, 268, 269, 0, + 1256, 270, 271, 272, 273, 274, 0, 275, 276, 277, + 278, 1259, 0, 1260, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 0, 291, 292, 293, 294, + 295, 296, 0, 297, 298, 299, 300, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 0, 311, 0, 312, 313, 314, 315, + 316, 317, 318, 0, 319, 320, 321, 322, 0, 0, + 323, 324, 325, 326, 327, 0, 328, 329, 330, 0, + 331, 332, 333, 0, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 1272, 0, 344, 0, 345, 346, 347, + 348, 349, 0, 350, 0, 351, 352, 353, 0, 354, + 355, 356, 357, 358, 0, 359, 1275, 0, 361, 362, + 363, 0, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 0, 374, 375, 376, 377, 378, 379, 380, + 381, 0, 382, 383, 384, 385, 386, 387, 388, 389, + 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, + 1280, 1281, 1282, 1283, 402, 403, 404, 405, 406, 407, + 0, 0, 408, 1284, 410, 411, 412, 0, 413, 414, + 415, 1285, 1286, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 440, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 1780, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 534, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 557, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 1781, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 592, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 0, 0, 938, 0, 0, 0, - 0, 0, 0, 0, 0, 1557, 1558, 5618, 0, 0, - 0, 0, 0, 0, 5619, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 3, 4, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 279, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 0, 0, 0, - 300, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 401, 402, 403, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 440, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 40, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 44, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 1175, 590, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 49, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 0, 0, 50, 234, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 56, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 279, 0, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 296, 297, 298, 299, 0, - 0, 0, 300, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 351, 0, - 352, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 401, 402, - 403, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 440, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 534, 535, 536, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 1289, 446, 0, 447, 448, 449, 450, 0, + 1292, 452, 453, 454, 455, 456, 0, 457, 458, 0, + 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 467, 1295, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 0, 479, 480, 1296, 482, 483, 484, + 485, 486, 0, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 497, 498, 499, 500, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 0, 515, 516, 517, 518, 519, 520, 521, + 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 0, 534, 535, 536, 537, 538, 1299, 539, + 540, 541, 542, 543, 544, 545, 546, 547, 548, 0, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 1301, 563, 0, 564, 565, 1302, 0, + 566, 567, 568, 569, 570, 571, 572, 0, 573, 574, + 575, 0, 0, 576, 577, 1305, 579, 1306, 0, 581, + 582, 583, 584, 585, 586, 587, 588, 0, 0, 589, + 590, 591, 592, 593, 1309, 0, 594, 595, 596, 597, + 598, 599, 600, 0, 601, 602, 603, 604, 605, 606, + 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, + 613, 614, 1311, 1312, 1313, 1314, 619, 1315, 1316, 1317, + 1318, 624, 625, 626, 627, 0, 0, 0, 0, 942, + 0, 1572, 694, 0, 0, 0, 0, 755, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 5949, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 0, 244, 245, + 246, 0, 0, 0, 0, 0, 0, 0, 247, 248, + 249, 0, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 0, 263, 264, 265, 266, + 267, 268, 269, 0, 0, 270, 271, 272, 273, 274, + 0, 275, 276, 277, 278, 279, 0, 280, 0, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 0, + 291, 292, 293, 294, 295, 296, 0, 297, 298, 299, + 300, 0, 0, 0, 301, 0, 0, 0, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 0, 311, 0, + 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, + 321, 322, 0, 0, 323, 324, 325, 326, 327, 0, + 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 1796, 344, + 0, 345, 346, 347, 348, 349, 0, 350, 0, 351, + 352, 353, 0, 354, 355, 356, 357, 358, 0, 359, + 360, 0, 361, 362, 363, 0, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 0, 374, 375, 376, + 377, 378, 379, 380, 381, 0, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 0, 0, 408, 409, 410, 411, + 412, 0, 413, 414, 415, 0, 0, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 0, 447, + 448, 449, 450, 0, 451, 452, 453, 454, 455, 456, + 0, 457, 458, 1797, 0, 459, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 0, 479, 480, + 481, 482, 483, 484, 485, 486, 0, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, + 500, 501, 0, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 0, 515, 516, 517, + 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, + 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 557, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 592, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 0, 0, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 5393, 235, 236, - 237, 238, 239, 240, 241, 242, 0, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 0, 254, 255, 256, 257, - 258, 0, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 0, 0, 280, 281, - 282, 283, 284, 285, 0, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 0, 297, 298, 299, - 0, 0, 0, 0, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 0, - 0, 0, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 366, 0, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 0, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 0, 0, 392, 0, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 0, - 402, 0, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 0, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 0, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 0, 457, 0, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 0, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 40, 524, 525, 526, - 527, 528, 0, 529, 530, 531, 532, 533, 0, 535, - 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 44, 556, 0, 558, 559, 560, 561, 562, - 0, 563, 564, 565, 0, 0, 566, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 1175, 590, 0, 591, 0, 593, - 594, 595, 596, 0, 0, 597, 0, 49, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 0, 0, - 50, 625, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 56, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 254, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 2812, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 0, 0, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 366, 0, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 0, - 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 835, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 2813, 2814, 0, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, - 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 0, 0, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1813, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 0, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 0, 0, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1368, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 0, 297, 298, 299, 0, 0, 0, 0, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 0, 0, 625, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3404, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 0, 0, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 4602, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 0, 254, 255, 256, 257, 258, 0, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 0, 0, 280, 281, 282, 283, 284, 285, - 0, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 0, 297, 298, 299, 0, 0, 0, 0, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 0, 0, 0, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 366, 0, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 0, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 0, 0, 392, 0, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 0, 402, 0, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 0, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 0, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 0, 457, 0, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 0, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 0, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 0, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 0, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 0, 0, 852, 0, 1556, 684, - 0, 0, 0, 953, 745, 0, 0, 0, 0, 0, - 954, 955, 956, 0, 4642, 235, 236, 237, 238, 239, - 240, 241, 242, 1692, 243, 244, 245, 1693, 1694, 1695, - 1696, 1697, 1698, 1699, 246, 247, 248, 1700, 249, 250, - 251, 252, 253, 254, 255, 256, 0, 853, 259, 854, - 855, 1701, 262, 263, 264, 265, 266, 267, 268, 1702, - 1703, 269, 270, 856, 857, 273, 1704, 274, 275, 276, - 277, 0, 1705, 279, 1706, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 1707, 290, 291, 292, 293, - 294, 295, 1708, 296, 297, 298, 299, 1709, 1710, 1711, - 300, 1712, 1713, 1714, 301, 302, 303, 304, 305, 306, - 858, 859, 309, 1715, 310, 1716, 311, 312, 313, 314, - 315, 316, 317, 1717, 318, 319, 320, 321, 1718, 1719, - 322, 323, 860, 325, 326, 1720, 327, 328, 329, 1721, - 330, 331, 332, 1722, 333, 334, 335, 336, 0, 338, - 339, 340, 341, 0, 1723, 343, 1724, 344, 345, 346, - 861, 348, 1725, 349, 1726, 350, 351, 1727, 352, 353, - 354, 355, 356, 1728, 357, 0, 1729, 0, 360, 361, - 1730, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 1731, 372, 373, 374, 375, 376, 377, 378, 1732, - 379, 380, 0, 382, 383, 384, 385, 862, 863, 1733, - 864, 1734, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 1735, 1736, 399, 0, 401, 402, 403, 1737, - 404, 405, 406, 1738, 1739, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 865, 426, 866, 428, 429, 430, 431, - 432, 433, 434, 4351, 0, 437, 1740, 438, 439, 440, - 441, 1741, 0, 443, 867, 445, 446, 447, 1742, 448, - 449, 1743, 1744, 4352, 451, 452, 1745, 1746, 453, 454, - 0, 456, 457, 458, 0, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 1747, 470, 471, 0, 473, - 0, 475, 476, 477, 1748, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 868, 489, 490, 491, 492, - 1749, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 1750, 506, 507, 508, 509, 510, - 511, 512, 513, 0, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 1751, 524, 525, 526, 527, 528, 1752, - 529, 530, 2642, 532, 533, 534, 535, 536, 870, 538, - 1753, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 0, 553, 1754, 554, 555, 1755, - 556, 557, 558, 559, 560, 561, 562, 1756, 563, 871, - 872, 1757, 1758, 566, 567, 0, 569, 0, 1759, 571, - 572, 573, 574, 575, 576, 577, 578, 1760, 1761, 579, - 580, 581, 582, 583, 1762, 1763, 584, 585, 586, 587, - 588, 0, 873, 1764, 591, 592, 593, 594, 595, 596, - 1765, 1766, 597, 1767, 1768, 598, 599, 600, 601, 602, - 603, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 615, 616, 617, 0, 0, 0, 0, 0, - 0, 0, 0, 959, 960, 961, 4353, 4354, 964, 965, - 966, 967, 852, 0, 1556, 684, 0, 0, 0, 953, - 745, 0, 0, 0, 0, 0, 954, 955, 956, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 1692, - 243, 244, 245, 1693, 1694, 1695, 1696, 1697, 1698, 1699, - 246, 247, 248, 1700, 249, 250, 251, 252, 253, 254, - 255, 256, 0, 853, 259, 854, 855, 1701, 262, 263, - 264, 265, 266, 267, 268, 1702, 1703, 269, 270, 856, - 857, 273, 1704, 274, 275, 276, 277, 0, 1705, 279, - 1706, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 1707, 290, 291, 292, 293, 294, 295, 1708, 296, - 297, 298, 299, 1709, 1710, 1711, 300, 1712, 1713, 1714, - 301, 302, 303, 304, 305, 306, 858, 859, 309, 1715, - 310, 1716, 311, 312, 313, 314, 315, 316, 317, 1717, - 318, 319, 320, 321, 1718, 1719, 322, 323, 860, 325, - 326, 1720, 327, 328, 329, 1721, 330, 331, 332, 1722, - 333, 334, 335, 336, 0, 338, 339, 340, 341, 0, - 1723, 343, 1724, 344, 345, 346, 861, 348, 1725, 349, - 1726, 350, 351, 1727, 352, 353, 354, 355, 356, 1728, - 357, 0, 1729, 0, 360, 361, 1730, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 1731, 372, 373, - 374, 375, 376, 377, 378, 1732, 379, 380, 0, 382, - 383, 384, 385, 862, 863, 1733, 864, 1734, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 1735, 1736, - 399, 0, 401, 402, 403, 1737, 404, 405, 406, 1738, - 1739, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 865, - 426, 866, 428, 429, 430, 431, 432, 433, 434, 4778, - 0, 437, 1740, 438, 439, 440, 441, 1741, 0, 443, - 867, 445, 446, 447, 1742, 448, 449, 1743, 1744, 4352, - 451, 452, 1745, 1746, 453, 454, 0, 456, 457, 458, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 1747, 470, 471, 0, 473, 0, 475, 476, 477, - 1748, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 868, 489, 490, 491, 492, 1749, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 1750, 506, 507, 508, 509, 510, 511, 512, 513, 0, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 1751, - 524, 525, 526, 527, 528, 1752, 529, 530, 2642, 532, - 533, 534, 535, 536, 870, 538, 1753, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 0, 553, 1754, 554, 555, 1755, 556, 557, 558, 559, - 560, 561, 562, 1756, 563, 871, 872, 1757, 1758, 566, - 567, 0, 569, 0, 1759, 571, 572, 573, 574, 575, - 576, 577, 578, 1760, 1761, 579, 580, 581, 582, 583, - 1762, 1763, 584, 585, 586, 587, 588, 0, 873, 1764, - 591, 592, 593, 594, 595, 596, 1765, 1766, 597, 1767, - 1768, 598, 599, 600, 601, 602, 603, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 615, 616, - 617, 0, 0, 0, 0, 0, 0, 0, 0, 959, - 960, 961, 4353, 4354, 964, 965, 966, 967, 2049, 0, - 0, 0, 0, 0, 0, 2050, 0, 0, 2051, 0, - 0, 0, 2052, 2053, 2054, 0, 0, 2055, 2056, 2057, - 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066, 2067, - 2068, 2069, 2070, 0, 2071, 2072, 2073, 2074, 2075, 2076, - 2077, 2078, 2079, 2080, 2081, 2082, 2083, 2084, 2085, 2086, - 2087, 2088, 2089, 2090, 2091, 2092, 2093, 2094, 2095, 2096, - 2097, 2098, 2099, 2100, 2101, 0, 0, 2102, 2103, 2104, + 546, 547, 548, 0, 549, 550, 551, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 562, 563, 0, + 564, 565, 0, 0, 566, 567, 568, 569, 570, 571, + 572, 0, 573, 574, 575, 0, 0, 576, 577, 578, + 579, 580, 1798, 581, 582, 583, 584, 585, 586, 587, + 588, 0, 0, 589, 590, 591, 592, 593, 0, 0, + 594, 595, 596, 597, 598, 599, 600, 0, 601, 602, + 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, + 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, + 619, 620, 621, 622, 623, 624, 625, 626, 627, 0, + 0, 0, 0, 942, 0, 0, 0, 0, 0, 0, + 0, 0, 1573, 1574, 5755, 0, 0, 0, 0, 0, + 0, 5756, 235, 236, 237, 238, 239, 240, 241, 242, + 243, 0, 244, 245, 246, 3, 4, 0, 0, 0, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 0, + 263, 264, 265, 266, 267, 268, 269, 0, 0, 270, + 271, 272, 273, 274, 0, 275, 276, 277, 278, 279, + 0, 280, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 299, 300, 0, 0, 0, 301, 0, + 0, 0, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 0, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 325, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 0, 344, 0, 345, 346, 347, 348, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 360, 0, 361, 362, 363, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 0, + 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 409, 410, 411, 412, 0, 413, 414, 415, 0, + 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 0, 447, 448, 449, 450, 0, 451, 452, + 453, 454, 455, 456, 0, 457, 458, 0, 0, 459, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 467, + 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 497, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 517, 518, 519, 520, 521, 522, 523, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 40, 534, 535, 536, 537, 538, 0, 539, 540, 541, + 542, 543, 544, 545, 546, 547, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 562, 563, 0, 564, 565, 0, 44, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 574, 575, 0, + 0, 576, 577, 578, 579, 580, 0, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 0, 589, 590, 591, + 592, 593, 0, 0, 594, 595, 596, 597, 598, 1181, + 600, 0, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 49, 608, 609, 610, 611, 612, 613, 614, + 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, + 625, 626, 627, 1021, 0, 0, 50, 234, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 56, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 0, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 0, 263, 264, 265, 266, 267, 268, + 269, 0, 0, 270, 271, 272, 273, 274, 0, 275, + 276, 277, 278, 279, 0, 280, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 297, 298, 299, 300, 0, + 0, 0, 301, 0, 0, 0, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 0, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 325, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 0, 344, 0, 345, + 346, 347, 348, 349, 0, 350, 0, 351, 352, 353, + 0, 354, 355, 356, 357, 358, 0, 359, 360, 0, + 361, 362, 363, 0, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 383, 384, 385, 386, 387, + 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 409, 410, 411, 412, 0, + 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 0, 447, 448, 449, + 450, 0, 451, 452, 453, 454, 455, 456, 0, 457, + 458, 0, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 481, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 517, 518, 519, + 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 562, 563, 0, 564, 565, + 0, 0, 566, 567, 568, 569, 570, 571, 572, 0, + 573, 574, 575, 0, 0, 576, 577, 578, 579, 580, + 0, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 0, 589, 590, 591, 592, 593, 0, 0, 594, 595, + 596, 597, 598, 599, 600, 0, 601, 602, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, + 621, 622, 623, 624, 625, 626, 627, 0, 0, 0, + 0, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5525, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 40, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 44, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 1181, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 49, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 0, 0, 0, 50, 635, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 56, 235, 236, 237, 238, 239, 240, + 241, 242, 243, 0, 244, 245, 246, 0, 0, 0, + 0, 0, 0, 0, 247, 248, 249, 0, 250, 251, + 252, 253, 0, 255, 256, 257, 258, 259, 0, 261, + 262, 0, 263, 264, 265, 266, 267, 268, 269, 0, + 0, 270, 271, 272, 273, 274, 0, 275, 276, 277, + 278, 279, 0, 0, 0, 281, 282, 283, 284, 285, + 286, 0, 288, 289, 290, 0, 291, 292, 293, 294, + 295, 296, 0, 0, 298, 299, 300, 0, 0, 0, + 2848, 0, 0, 0, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 0, 311, 0, 312, 313, 314, 315, + 316, 317, 318, 0, 319, 320, 321, 322, 0, 0, + 323, 324, 325, 326, 327, 0, 328, 329, 330, 0, + 331, 332, 333, 0, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 0, 344, 0, 345, 346, 347, + 348, 349, 0, 350, 0, 351, 352, 0, 0, 0, + 355, 356, 357, 358, 0, 359, 360, 0, 361, 362, + 363, 0, 364, 365, 366, 367, 368, 0, 370, 371, + 372, 373, 0, 374, 375, 376, 377, 378, 379, 380, + 381, 0, 382, 0, 384, 385, 386, 387, 388, 389, + 390, 0, 391, 0, 392, 0, 0, 395, 0, 397, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 0, 0, 408, 409, 0, 411, 0, 0, 413, 414, + 415, 0, 0, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, + 433, 434, 0, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 0, 447, 448, 0, 450, 0, + 451, 452, 453, 454, 455, 456, 0, 457, 458, 0, + 839, 459, 460, 461, 0, 0, 462, 463, 464, 0, + 466, 0, 468, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 0, 479, 480, 481, 482, 483, 484, + 485, 486, 0, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 497, 498, 499, 500, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 0, 515, 516, 0, 518, 519, 520, 521, + 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, + 540, 541, 542, 543, 0, 545, 546, 547, 548, 0, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 562, 563, 0, 564, 565, 0, 2849, + 2850, 0, 568, 569, 570, 571, 572, 0, 573, 574, + 575, 0, 0, 576, 577, 578, 579, 580, 0, 581, + 582, 583, 584, 585, 586, 587, 588, 0, 0, 589, + 590, 591, 592, 593, 0, 0, 594, 595, 596, 597, + 598, 599, 600, 0, 601, 0, 603, 604, 605, 606, + 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, + 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, + 623, 624, 625, 626, 627, 0, 0, 0, 0, 635, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1830, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 0, 244, 245, + 246, 0, 0, 0, 0, 0, 0, 0, 247, 248, + 249, 0, 250, 251, 252, 253, 0, 255, 256, 257, + 258, 259, 0, 261, 262, 0, 263, 264, 265, 266, + 267, 268, 269, 0, 0, 270, 271, 272, 273, 274, + 0, 275, 276, 277, 278, 279, 0, 0, 0, 281, + 282, 283, 284, 285, 286, 0, 288, 289, 290, 0, + 291, 292, 293, 294, 295, 296, 0, 0, 298, 299, + 300, 0, 0, 0, 0, 0, 0, 0, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 0, 311, 0, + 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, + 321, 322, 0, 0, 323, 324, 325, 326, 327, 0, + 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 0, 344, + 0, 345, 346, 347, 348, 349, 0, 350, 0, 351, + 352, 0, 0, 0, 355, 356, 357, 358, 0, 359, + 360, 0, 361, 362, 363, 0, 364, 365, 366, 367, + 368, 0, 370, 371, 372, 373, 0, 374, 375, 376, + 377, 378, 379, 380, 381, 0, 382, 0, 384, 385, + 386, 387, 388, 389, 390, 0, 391, 0, 392, 0, + 0, 395, 0, 397, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 0, 0, 408, 409, 0, 411, + 0, 0, 413, 414, 415, 0, 0, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, 433, 434, 0, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 0, 447, + 448, 0, 450, 0, 451, 452, 453, 454, 455, 456, + 0, 457, 458, 0, 0, 459, 460, 461, 0, 0, + 462, 463, 464, 0, 466, 0, 468, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 0, 479, 480, + 481, 482, 483, 484, 485, 486, 0, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, + 500, 501, 0, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 0, 515, 516, 0, + 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, + 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, + 537, 538, 0, 539, 540, 541, 542, 543, 0, 545, + 546, 547, 548, 0, 549, 550, 551, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 562, 563, 0, + 564, 565, 0, 0, 566, 0, 568, 569, 570, 571, + 572, 0, 573, 574, 575, 0, 0, 576, 577, 578, + 579, 580, 0, 581, 582, 583, 584, 585, 586, 587, + 588, 0, 0, 589, 590, 591, 592, 593, 0, 0, + 594, 595, 596, 597, 598, 599, 600, 0, 601, 0, + 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, + 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, + 619, 620, 621, 622, 623, 624, 625, 626, 627, 0, + 0, 0, 0, 635, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1384, 235, 236, 237, 238, 239, 240, 241, 242, + 243, 0, 244, 245, 246, 0, 0, 0, 0, 0, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 0, 255, 256, 257, 258, 259, 0, 261, 262, 0, + 263, 264, 265, 266, 267, 268, 269, 0, 0, 270, + 271, 272, 273, 274, 0, 275, 276, 277, 278, 279, + 0, 0, 0, 281, 282, 283, 284, 285, 286, 0, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 0, 298, 299, 300, 0, 0, 0, 0, 0, + 0, 0, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 0, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 325, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 0, 344, 0, 345, 346, 347, 348, 349, + 0, 350, 0, 351, 352, 0, 0, 0, 355, 356, + 357, 358, 0, 359, 360, 0, 361, 362, 363, 0, + 364, 365, 366, 367, 368, 0, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 0, 384, 385, 386, 387, 388, 389, 390, 0, + 391, 0, 392, 0, 0, 395, 0, 397, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 409, 0, 411, 0, 0, 413, 414, 415, 0, + 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, + 0, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 0, 447, 448, 0, 450, 0, 451, 452, + 453, 454, 455, 456, 0, 457, 458, 0, 0, 459, + 460, 461, 0, 0, 462, 463, 464, 0, 466, 0, + 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 481, 482, 483, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 497, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 0, 518, 519, 520, 521, 522, 523, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 0, 539, 540, 541, + 542, 543, 0, 545, 546, 547, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 562, 563, 0, 564, 565, 0, 0, 566, 0, + 568, 569, 570, 571, 572, 0, 573, 574, 575, 0, + 0, 576, 577, 578, 579, 580, 0, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 0, 589, 590, 591, + 592, 593, 0, 0, 594, 595, 596, 597, 598, 599, + 600, 0, 601, 0, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, + 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, + 625, 626, 627, 0, 0, 0, 0, 635, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3462, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 0, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 0, 255, 256, 257, 258, 259, + 0, 261, 262, 0, 263, 264, 265, 266, 267, 268, + 269, 0, 0, 270, 271, 272, 273, 274, 0, 275, + 276, 277, 278, 279, 0, 0, 0, 281, 282, 283, + 284, 285, 286, 0, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 0, 298, 299, 300, 0, + 0, 0, 0, 0, 0, 0, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 0, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 325, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 0, 344, 0, 345, + 346, 347, 348, 349, 0, 350, 0, 351, 352, 0, + 0, 0, 355, 356, 357, 358, 0, 359, 360, 0, + 361, 362, 363, 0, 364, 365, 366, 367, 368, 0, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 0, 384, 385, 386, 387, + 388, 389, 390, 0, 391, 0, 392, 0, 0, 395, + 0, 397, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 409, 0, 411, 0, 0, + 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 434, 0, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 0, 447, 448, 0, + 450, 0, 451, 452, 453, 454, 455, 456, 0, 457, + 458, 0, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 0, 466, 0, 468, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 481, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 0, 518, 519, + 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 0, 539, 540, 541, 542, 543, 0, 545, 546, 547, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 562, 563, 0, 564, 565, + 0, 0, 566, 0, 568, 569, 570, 571, 572, 0, + 573, 574, 575, 0, 0, 576, 577, 578, 579, 580, + 0, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 0, 589, 590, 591, 592, 593, 0, 0, 594, 595, + 596, 597, 598, 599, 600, 0, 601, 0, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, + 621, 622, 623, 624, 625, 626, 627, 0, 0, 0, + 0, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 4123, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 0, 0, 0, 0, 856, 0, 1572, 694, 0, + 0, 0, 957, 755, 0, 0, 0, 0, 0, 958, + 959, 960, 0, 4750, 235, 236, 237, 238, 239, 240, + 241, 242, 243, 1708, 244, 245, 246, 1709, 1710, 1711, + 1712, 1713, 1714, 1715, 247, 248, 249, 1716, 250, 251, + 252, 253, 254, 255, 256, 257, 0, 857, 260, 858, + 859, 1717, 263, 264, 265, 266, 267, 268, 269, 1718, + 1719, 270, 271, 860, 861, 274, 1720, 275, 276, 277, + 278, 0, 1721, 280, 1722, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 1723, 291, 292, 293, 294, + 295, 296, 1724, 297, 298, 299, 300, 1725, 1726, 1727, + 301, 1728, 1729, 1730, 302, 303, 304, 305, 306, 307, + 862, 863, 310, 1731, 311, 1732, 312, 313, 314, 315, + 316, 317, 318, 1733, 319, 320, 321, 322, 1734, 1735, + 323, 324, 864, 326, 327, 1736, 328, 329, 330, 1737, + 331, 332, 333, 1738, 334, 335, 336, 337, 0, 339, + 340, 341, 342, 0, 1739, 344, 1740, 345, 346, 347, + 865, 349, 1741, 350, 1742, 351, 352, 353, 1743, 354, + 355, 356, 357, 358, 1744, 359, 0, 1745, 0, 362, + 363, 1746, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 1747, 374, 375, 376, 377, 378, 379, 380, + 381, 1748, 382, 383, 0, 385, 386, 387, 388, 866, + 867, 1749, 868, 1750, 392, 393, 394, 395, 396, 397, + 0, 0, 0, 0, 402, 403, 404, 405, 406, 407, + 1751, 1752, 408, 0, 410, 411, 412, 1753, 413, 414, + 415, 1754, 1755, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, + 433, 869, 435, 870, 437, 438, 439, 440, 441, 442, + 443, 4438, 0, 446, 1756, 447, 448, 449, 450, 1757, + 0, 452, 871, 454, 455, 456, 1758, 457, 458, 1759, + 1760, 4439, 460, 461, 1761, 1762, 462, 463, 0, 465, + 466, 467, 0, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 1763, 479, 480, 0, 482, 0, 484, + 485, 486, 1764, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 872, 498, 499, 500, 501, 1765, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 1766, 515, 516, 517, 518, 519, 520, 521, + 522, 0, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 1767, 534, 535, 536, 537, 538, 1768, 539, + 540, 2678, 542, 543, 544, 545, 546, 874, 548, 1769, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 0, 563, 1770, 564, 565, 1771, 1772, + 566, 567, 568, 569, 570, 571, 572, 1773, 573, 875, + 876, 1774, 1775, 576, 577, 0, 579, 0, 1776, 581, + 582, 583, 584, 585, 586, 587, 588, 1777, 1778, 589, + 590, 591, 592, 593, 1779, 1780, 594, 595, 596, 597, + 598, 0, 877, 1781, 601, 602, 603, 604, 605, 606, + 1782, 1783, 607, 1784, 1785, 608, 609, 610, 611, 612, + 613, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 625, 626, 627, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 963, 964, 965, 4440, 4441, + 968, 969, 970, 971, 856, 0, 1572, 694, 0, 0, + 0, 957, 755, 0, 0, 0, 0, 0, 958, 959, + 960, 0, 0, 235, 236, 237, 238, 239, 240, 241, + 242, 243, 1708, 244, 245, 246, 1709, 1710, 1711, 1712, + 1713, 1714, 1715, 247, 248, 249, 1716, 250, 251, 252, + 253, 254, 255, 256, 257, 0, 857, 260, 858, 859, + 1717, 263, 264, 265, 266, 267, 268, 269, 1718, 1719, + 270, 271, 860, 861, 274, 1720, 275, 276, 277, 278, + 0, 1721, 280, 1722, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 1723, 291, 292, 293, 294, 295, + 296, 1724, 297, 298, 299, 300, 1725, 1726, 1727, 301, + 1728, 1729, 1730, 302, 303, 304, 305, 306, 307, 862, + 863, 310, 1731, 311, 1732, 312, 313, 314, 315, 316, + 317, 318, 1733, 319, 320, 321, 322, 1734, 1735, 323, + 324, 864, 326, 327, 1736, 328, 329, 330, 1737, 331, + 332, 333, 1738, 334, 335, 336, 337, 0, 339, 340, + 341, 342, 0, 1739, 344, 1740, 345, 346, 347, 865, + 349, 1741, 350, 1742, 351, 352, 353, 1743, 354, 355, + 356, 357, 358, 1744, 359, 0, 1745, 0, 362, 363, + 1746, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 1747, 374, 375, 376, 377, 378, 379, 380, 381, + 1748, 382, 383, 0, 385, 386, 387, 388, 866, 867, + 1749, 868, 1750, 392, 393, 394, 395, 396, 397, 0, + 0, 0, 0, 402, 403, 404, 405, 406, 407, 1751, + 1752, 408, 0, 410, 411, 412, 1753, 413, 414, 415, + 1754, 1755, 416, 417, 418, 419, 420, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, + 869, 435, 870, 437, 438, 439, 440, 441, 442, 443, + 4888, 0, 446, 1756, 447, 448, 449, 450, 1757, 0, + 452, 871, 454, 455, 456, 1758, 457, 458, 1759, 1760, + 4439, 460, 461, 1761, 1762, 462, 463, 0, 465, 466, + 467, 0, 469, 470, 471, 472, 473, 474, 475, 476, + 477, 478, 1763, 479, 480, 0, 482, 0, 484, 485, + 486, 1764, 487, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 872, 498, 499, 500, 501, 1765, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 1766, 515, 516, 517, 518, 519, 520, 521, 522, + 0, 524, 525, 526, 527, 528, 529, 530, 531, 532, + 533, 1767, 534, 535, 536, 537, 538, 1768, 539, 540, + 2678, 542, 543, 544, 545, 546, 874, 548, 1769, 549, + 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, + 560, 561, 0, 563, 1770, 564, 565, 1771, 1772, 566, + 567, 568, 569, 570, 571, 572, 1773, 573, 875, 876, + 1774, 1775, 576, 577, 0, 579, 0, 1776, 581, 582, + 583, 584, 585, 586, 587, 588, 1777, 1778, 589, 590, + 591, 592, 593, 1779, 1780, 594, 595, 596, 597, 598, + 0, 877, 1781, 601, 602, 603, 604, 605, 606, 1782, + 1783, 607, 1784, 1785, 608, 609, 610, 611, 612, 613, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 625, 626, 627, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 963, 964, 965, 4440, 4441, 968, + 969, 970, 971, 2072, 0, 0, 0, 0, 0, 0, + 2073, 0, 0, 2074, 0, 0, 0, 2075, 2076, 2077, + 0, 0, 2078, 2079, 2080, 2081, 2082, 2083, 2084, 2085, + 2086, 2087, 2088, 2089, 2090, 2091, 2092, 2093, 2094, 0, + 2095, 2096, 2097, 2098, 2099, 2100, 2101, 2102, 2103, 2104, 2105, 2106, 2107, 2108, 2109, 2110, 2111, 2112, 2113, 2114, 2115, 2116, 2117, 2118, 2119, 2120, 2121, 2122, 2123, 2124, - 2125, 2126, 2127, 2128, 0, 2129, 2130, 2131, 2132, 2133, - 2134, 2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143, - 0, 2144, 2145, 2146, 2147, 2148, 2149, 2150, 2151, 2152, - 2153, 2154, 2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, - 2163, 2164, 2165, 2166, 2167, 2168, 2169, 2170, 2171, 2172, - 2173, 2174, 2175, 2176, 2177, 0, 2178, 2179, 2180, 2181, - 2182, 2183, 2184, 2185, 2186, 2187, 2188, 2189, 0, 0, - 2190, 2191, 2192, 2193, 0, 2194, 2195, 2196, 2197, 0, - 2198, 2199, 2200, 2201, 2202, 0, 2203, 2204, 0, 2205, - 2206, 2207, 0, 2208, 2209, 0, 2210, 2211, 2212, 2213, - 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223, - 2224, 2225, 2226, 2227, 2228, 2229, 2230, 2231, 2232, 2233, - 2234, 0, 2235, 0, 2236, 2237, 2238, 2239, 2240, 2241, + 2125, 0, 0, 2126, 2127, 2128, 2129, 2130, 2131, 2132, + 2133, 2134, 2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, + 2143, 2144, 2145, 2146, 2147, 2148, 2149, 2150, 2151, 2152, + 0, 2153, 2154, 2155, 2156, 2157, 2158, 2159, 2160, 2161, + 2162, 2163, 2164, 2165, 2166, 2167, 0, 2168, 2169, 2170, + 2171, 2172, 2173, 2174, 2175, 2176, 2177, 2178, 2179, 2180, + 2181, 2182, 2183, 2184, 2185, 2186, 2187, 2188, 2189, 2190, + 2191, 2192, 2193, 2194, 2195, 2196, 2197, 2198, 2199, 2200, + 2201, 0, 2202, 2203, 2204, 2205, 2206, 2207, 2208, 2209, + 2210, 2211, 2212, 2213, 0, 0, 2214, 2215, 2216, 2217, + 0, 2218, 2219, 2220, 2221, 2222, 0, 2223, 2224, 2225, + 2226, 2227, 0, 2228, 2229, 0, 2230, 2231, 2232, 0, + 2233, 2234, 0, 2235, 2236, 2237, 2238, 2239, 2240, 2241, 2242, 2243, 2244, 2245, 2246, 2247, 2248, 2249, 2250, 2251, - 2252, 0, 2253, 2254, 2255, 2256, 2257, 2258, 2259, 2260, - 2261, 2262, 2263, 2264, 2265, 2266, 2267, 2268, 0, 2269, - 2270, 0, 2271, 2272, 2273, 2274, 2275, 2276, 2277, 2278, - 2279, 2280, 2281, 2282, 2283, 2284, 2285, 2286, 2287, 2288, + 2252, 2253, 2254, 2255, 2256, 2257, 2258, 2259, 2260, 0, + 2261, 0, 2262, 2263, 2264, 2265, 2266, 2267, 2268, 2269, + 2270, 2271, 2272, 2273, 2274, 2275, 2276, 2277, 2278, 2279, + 2280, 2281, 2282, 2283, 2284, 0, 2285, 2286, 2287, 2288, 2289, 2290, 2291, 2292, 2293, 2294, 2295, 2296, 2297, 2298, - 0, 2299, 2300, 0, 2301, 2302, 2303, 2304, 2305, 0, - 2306, 2307, 2308, 2309, 0, 0, 2310, 2311, 2312, 2313, - 2314, 2315, 2316, 2317, 2318, 2319, 2320, 2321, 2322, 2323, - 2324, 2325, 0, 2326, 2327, 2328, 2329, 2330, 2331, 2332, - 2333, 2334, 2335, 2336, 2337, 2338, 2339, 2340, 2341, 2342, - 2343, 2344, 2345, 2346, 2347, 2348, 2349, 2350, 2351, 2352, - 2353, 2354, 2355, 2356, 2357, 2358, 0, 2359, 2360, 2361, - 2362, 2363, 2364, 2365, 2366, 2367, 2368, 2369, 2370, 2371, - 2372, 2373, 2374, 0, 2375, 2376, 2377, 2378, 2379, 2380, + 2299, 2300, 0, 2301, 2302, 0, 2303, 2304, 2305, 2306, + 2307, 2308, 2309, 2310, 2311, 2312, 2313, 2314, 2315, 2316, + 2317, 2318, 2319, 2320, 2321, 2322, 2323, 2324, 2325, 2326, + 2327, 2328, 2329, 2330, 0, 2331, 2332, 0, 2333, 2334, + 2335, 2336, 2337, 0, 2338, 2339, 2340, 2341, 0, 0, + 2342, 2343, 2344, 2345, 2346, 2347, 2348, 2349, 2350, 2351, + 2352, 2353, 2354, 2355, 2356, 2357, 0, 2358, 2359, 2360, + 2361, 2362, 2363, 2364, 2365, 2366, 2367, 2368, 2369, 2370, + 2371, 2372, 2373, 2374, 2375, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383, 2384, 2385, 2386, 2387, 2388, 2389, 2390, - 2391, 2392, 2393, 2394, 2395, 2396, 2397, 2398, 2399, 2400, - 2401, 2402, 2403, 2404, 2405, 2406, 2407, 2408, 2409, 2410, - 2411, 2412, 2413, 2414, 2415, 2416, 2417, 2418, 2419, 2420, - 2421, 2422, 2423, 0, 2424, 2425, 2426, 2427, 2428, 2429, - 2430, 2431, 2432, 2433, 2434, 2435, 2436, 2437, 2438, 0, + 0, 2391, 2392, 2393, 2394, 2395, 2396, 2397, 2398, 2399, + 2400, 2401, 2402, 2403, 2404, 2405, 2406, 2407, 0, 2408, + 2409, 2410, 2411, 2412, 2413, 2414, 2415, 2416, 2417, 2418, + 2419, 2420, 2421, 2422, 2423, 2424, 2425, 2426, 2427, 2428, + 2429, 2430, 2431, 2432, 2433, 2434, 2435, 2436, 2437, 2438, 2439, 2440, 2441, 2442, 2443, 2444, 2445, 2446, 2447, 2448, - 2449, 2450, 2451, 2452, 2453, 2454, 0, 2455, 2456, 2457, - 2458, 2459, 2460, 0, 2461, 0, 0, 0, 0, 2462, - 2463, 2464, 2465, 2466, 2467, 2468, 2469, 2470, 2471, 2472, - 2473, 2474, 2475, 2476, 0, 2477, 2478, 2479, 0, 0, - 0, 0, 0, 0, 0, 2480, 2481, 2482, 2483, 2484, - 2485, 2486, 2487, 2488, 625, 0, 0, 0, 0, 0, - 0, 953, 0, 0, 0, 0, 0, 0, 954, 955, - 956, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 957, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 958, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 0, 0, 0, 0, 0, 0, 0, - 0, 959, 960, 961, 962, 963, 964, 965, 966, 967, - 625, 0, 0, 0, 0, 0, 0, 953, 0, 0, - 0, 0, 0, 0, 954, 955, 956, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 1073, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 1074, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 366, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 0, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 0, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 0, - 0, 0, 0, 0, 0, 0, 0, 959, 960, 961, - 962, 963, 964, 965, 966, 967, 625, 0, 0, 0, - 0, 0, 0, 953, 0, 0, 0, 0, 0, 0, - 954, 955, 956, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 0, 254, 255, 256, 257, 258, 0, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 1138, 276, - 277, 278, 0, 0, 0, 280, 281, 282, 283, 284, - 285, 0, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 0, 297, 298, 299, 0, 0, 0, - 0, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 1139, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 0, 0, 0, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 1140, 0, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 0, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 0, 0, 392, 0, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 0, 402, 0, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 0, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 0, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 0, 457, 0, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 0, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 0, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 0, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 0, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 0, 0, 0, 0, 0, - 0, 0, 0, 959, 960, 961, 962, 963, 964, 965, - 966, 967, 625, 0, 0, 0, 0, 0, 0, 953, - 0, 0, 0, 0, 0, 0, 954, 955, 956, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 0, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 1796, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 1797, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 2449, 2450, 2451, 2452, 2453, 2454, 2455, 2456, 2457, 0, + 2458, 2459, 2460, 2461, 2462, 2463, 2464, 2465, 2466, 2467, + 2468, 2469, 2470, 2471, 2472, 0, 2473, 2474, 2475, 2476, + 2477, 2478, 2479, 2480, 2481, 2482, 2483, 2484, 2485, 2486, + 2487, 2488, 0, 2489, 2490, 2491, 2492, 2493, 2494, 0, + 2495, 0, 0, 0, 0, 2496, 2497, 2498, 2499, 2500, + 2501, 2502, 2503, 2504, 2505, 2506, 2507, 2508, 2509, 2510, + 0, 2511, 2512, 0, 2513, 0, 0, 0, 0, 0, + 0, 0, 0, 2514, 2515, 2516, 2517, 2518, 2519, 2520, + 2521, 2522, 635, 0, 0, 0, 0, 0, 0, 957, + 0, 0, 0, 0, 0, 0, 958, 959, 960, 0, + 0, 235, 236, 237, 238, 239, 240, 241, 242, 243, + 0, 244, 245, 246, 0, 0, 0, 0, 0, 0, + 0, 247, 248, 249, 0, 250, 251, 252, 253, 0, + 255, 256, 257, 258, 259, 0, 261, 262, 0, 263, + 264, 265, 266, 267, 268, 269, 0, 0, 270, 271, + 272, 273, 274, 0, 275, 961, 277, 278, 279, 0, + 0, 0, 281, 282, 283, 284, 285, 286, 0, 288, + 289, 290, 0, 291, 292, 293, 294, 295, 296, 0, + 0, 298, 299, 300, 0, 0, 0, 0, 0, 0, + 0, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 0, 311, 0, 312, 313, 314, 315, 316, 317, 318, + 0, 319, 320, 321, 322, 0, 0, 323, 324, 325, + 326, 327, 0, 328, 329, 330, 0, 331, 332, 333, + 0, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 0, 962, 0, 345, 346, 347, 348, 349, 0, + 350, 0, 351, 352, 0, 0, 0, 355, 356, 357, + 358, 0, 359, 360, 0, 361, 362, 363, 0, 364, + 365, 366, 367, 368, 0, 370, 371, 372, 373, 0, + 374, 375, 376, 377, 378, 379, 380, 381, 0, 382, + 0, 384, 385, 386, 387, 388, 389, 390, 0, 391, + 0, 392, 0, 0, 395, 0, 397, 398, 399, 400, + 401, 402, 403, 404, 405, 406, 407, 0, 0, 408, + 409, 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 0, 0, 0, 0, 0, 0, 0, 0, 959, - 960, 961, 962, 963, 964, 965, 966, 967, 625, 0, - 0, 0, 0, 0, 0, 953, 0, 0, 0, 0, - 0, 0, 954, 955, 956, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 0, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 0, 0, - 0, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 366, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 0, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, 0, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 0, 402, - 0, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 0, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 0, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 0, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 0, 0, 0, - 0, 0, 0, 0, 0, 959, 960, 961, 962, 963, - 964, 965, 966, 967, 625, 0, 0, 0, 0, 0, - 0, 953, 0, 0, 0, 0, 0, 0, 954, 955, - 956, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 3475, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 3476, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 0, 0, 0, 0, 0, 0, 0, - 0, 959, 960, 961, 962, 963, 964, 965, 966, 967, - 625, 0, 0, 0, 0, 0, 0, 953, 0, 0, - 0, 0, 0, 0, 954, 955, 956, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 366, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 0, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 5373, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 0, + 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, + 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, + 446, 0, 447, 448, 0, 450, 0, 451, 452, 453, + 454, 455, 456, 0, 457, 458, 0, 0, 459, 460, + 461, 0, 0, 462, 463, 464, 0, 466, 0, 468, + 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, + 0, 479, 480, 481, 482, 483, 484, 485, 486, 0, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 0, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 0, + 515, 516, 0, 518, 519, 520, 521, 522, 523, 524, + 525, 526, 527, 528, 529, 530, 531, 532, 533, 0, + 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, + 543, 0, 545, 546, 547, 548, 0, 549, 550, 551, + 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, + 562, 563, 0, 564, 565, 0, 0, 566, 0, 568, + 569, 570, 571, 572, 0, 573, 574, 575, 0, 0, + 576, 577, 578, 579, 580, 0, 581, 582, 583, 584, + 585, 586, 587, 588, 0, 0, 589, 590, 591, 592, + 593, 0, 0, 594, 595, 596, 597, 598, 599, 600, + 0, 601, 0, 603, 604, 605, 606, 0, 0, 607, + 0, 0, 608, 609, 610, 611, 612, 613, 614, 615, + 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, + 626, 627, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 963, 964, 965, 966, 967, 968, 969, 970, + 971, 635, 0, 0, 0, 0, 0, 0, 957, 0, + 0, 0, 0, 0, 0, 958, 959, 960, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 1078, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 1079, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 1691, - 0, 0, 0, 0, 0, 0, 0, 959, 960, 961, - 962, 963, 964, 965, 966, 967, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 1692, 243, 244, 245, - 1693, 1694, 1695, 1696, 1697, 1698, 1699, 246, 247, 248, - 1700, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 1701, 262, 263, 264, 265, 266, - 267, 268, 1702, 1703, 269, 270, 271, 272, 273, 1704, - 274, 275, 276, 277, 278, 1705, 279, 1706, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 1707, 290, - 291, 292, 293, 294, 295, 1708, 296, 297, 298, 299, - 1709, 1710, 1711, 300, 1712, 1713, 1714, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 1715, 310, 1716, 311, - 312, 313, 314, 315, 316, 317, 1717, 318, 319, 320, - 321, 1718, 1719, 322, 323, 324, 325, 326, 1720, 327, - 328, 329, 1721, 330, 331, 332, 1722, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 1723, 343, 1724, - 344, 345, 346, 347, 348, 1725, 349, 1726, 350, 351, - 1727, 352, 353, 354, 355, 356, 1728, 357, 358, 1729, - 359, 360, 361, 1730, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 1731, 372, 373, 374, 375, 376, - 377, 378, 1732, 379, 380, 381, 382, 383, 384, 385, - 386, 387, 1733, 388, 1734, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 1735, 1736, 399, 400, 401, - 402, 403, 1737, 404, 405, 406, 1738, 1739, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 963, 964, 965, 966, 967, 968, 969, 970, 971, + 635, 0, 0, 0, 0, 0, 0, 957, 0, 0, + 0, 0, 0, 0, 958, 959, 960, 0, 0, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 0, 244, + 245, 246, 0, 0, 0, 0, 0, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 0, 255, 256, + 257, 258, 259, 0, 261, 262, 0, 263, 264, 265, + 266, 267, 268, 269, 0, 0, 270, 271, 272, 273, + 274, 0, 275, 1144, 277, 278, 279, 0, 0, 0, + 281, 282, 283, 284, 285, 286, 0, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 0, 298, + 299, 300, 0, 0, 0, 0, 0, 0, 0, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 0, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 325, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 0, + 1145, 0, 345, 346, 347, 348, 349, 0, 350, 0, + 351, 352, 0, 0, 0, 355, 356, 357, 358, 0, + 359, 360, 0, 361, 362, 363, 0, 364, 365, 366, + 367, 1146, 0, 370, 371, 372, 373, 0, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 0, 384, + 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, + 0, 0, 395, 0, 397, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 0, 0, 408, 409, 0, + 411, 0, 0, 413, 414, 415, 0, 0, 416, 417, + 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 430, 431, 432, 433, 434, 0, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 0, + 447, 448, 0, 450, 0, 451, 452, 453, 454, 455, + 456, 0, 457, 458, 0, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 0, 466, 0, 468, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 481, 482, 483, 484, 485, 486, 0, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 0, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 0, 518, 519, 520, 521, 522, 523, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, + 536, 537, 538, 0, 539, 540, 541, 542, 543, 0, + 545, 546, 547, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, + 0, 564, 565, 0, 0, 566, 0, 568, 569, 570, + 571, 572, 0, 573, 574, 575, 0, 0, 576, 577, + 578, 579, 580, 0, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 0, 589, 590, 591, 592, 593, 0, + 0, 594, 595, 596, 597, 598, 599, 600, 0, 601, + 0, 603, 604, 605, 606, 0, 0, 607, 0, 0, + 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, + 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 963, 964, 965, 966, 967, 968, 969, 970, 971, 635, + 0, 0, 0, 0, 0, 0, 957, 0, 0, 0, + 0, 0, 0, 958, 959, 960, 0, 0, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 0, 244, 245, + 246, 0, 0, 0, 0, 0, 0, 0, 247, 248, + 249, 0, 250, 251, 252, 253, 0, 255, 256, 257, + 258, 259, 0, 261, 262, 0, 263, 264, 265, 266, + 267, 268, 269, 0, 0, 270, 271, 272, 273, 274, + 0, 275, 1813, 277, 278, 279, 0, 0, 0, 281, + 282, 283, 284, 285, 286, 0, 288, 289, 290, 0, + 291, 292, 293, 294, 295, 296, 0, 0, 298, 299, + 300, 0, 0, 0, 0, 0, 0, 0, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 0, 311, 0, + 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, + 321, 322, 0, 0, 323, 324, 325, 326, 327, 0, + 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 0, 1814, + 0, 345, 346, 347, 348, 349, 0, 350, 0, 351, + 352, 0, 0, 0, 355, 356, 357, 358, 0, 359, + 360, 0, 361, 362, 363, 0, 364, 365, 366, 367, + 368, 0, 370, 371, 372, 373, 0, 374, 375, 376, + 377, 378, 379, 380, 381, 0, 382, 0, 384, 385, + 386, 387, 388, 389, 390, 0, 391, 0, 392, 0, + 0, 395, 0, 397, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 0, 0, 408, 409, 0, 411, + 0, 0, 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 1740, - 438, 439, 440, 441, 1741, 442, 443, 444, 445, 446, - 447, 1742, 448, 449, 1743, 1744, 450, 451, 452, 1745, - 1746, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 1747, 470, - 471, 472, 473, 474, 475, 476, 477, 1748, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 1749, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 1750, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 1751, 524, 525, 526, - 527, 528, 1752, 529, 530, 531, 532, 533, 534, 535, - 536, 537, 538, 1753, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 1754, - 554, 555, 1755, 556, 557, 558, 559, 560, 561, 562, - 1756, 563, 564, 565, 1757, 1758, 566, 567, 568, 569, - 570, 1759, 571, 572, 573, 574, 575, 576, 577, 578, - 1760, 1761, 579, 580, 581, 582, 583, 1762, 1763, 584, - 585, 586, 587, 588, 589, 590, 1764, 591, 592, 593, - 594, 595, 596, 1765, 1766, 597, 1767, 1768, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 625, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1769, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 0, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 0, 0, - 0, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 366, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 0, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, 0, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 0, 402, - 0, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 0, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 0, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 0, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 625, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 841, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 0, 254, 255, 256, 257, 258, 0, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 0, 0, 280, 281, 282, 283, - 284, 285, 0, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 0, 297, 298, 299, 0, 0, - 0, 0, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 0, 0, 0, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 366, 0, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 0, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 0, 0, 392, 0, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 0, 402, 0, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 0, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 0, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 0, 457, 0, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 0, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 531, 532, 533, 0, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 0, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 0, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 852, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 5778, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 0, 853, 259, 854, - 855, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 856, 857, 273, 0, 274, 275, 276, - 277, 0, 0, 279, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 0, 0, 0, - 300, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 858, 859, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 0, 338, - 339, 340, 341, 0, 0, 343, 0, 344, 345, 346, - 861, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 0, 0, 0, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 2638, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 2639, 382, 383, 384, 385, 862, 863, 0, - 864, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 0, 401, 402, 403, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 865, 426, 866, 428, 429, 430, 431, - 432, 433, 434, 0, 0, 437, 0, 438, 439, 440, - 441, 0, 0, 443, 867, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 2640, 453, 454, - 2641, 456, 457, 458, 0, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 0, 473, - 0, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 868, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 0, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 2642, 532, 533, 534, 535, 536, 870, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 0, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 871, - 872, 0, 0, 566, 567, 0, 569, 0, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 0, 873, 2643, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 3820, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 615, 616, 617, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 2644, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 0, 853, 259, 854, 855, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 856, 857, - 273, 0, 274, 275, 276, 277, 0, 0, 279, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 0, 0, 0, 300, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 858, 859, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 860, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 0, 338, 339, 340, 341, 0, 0, - 343, 0, 344, 345, 346, 861, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 0, 0, 0, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 2638, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 2639, 382, 383, - 384, 385, 862, 863, 0, 864, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 0, 401, 402, 403, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 865, 426, - 866, 428, 429, 430, 431, 432, 433, 434, 0, 0, - 437, 0, 438, 439, 440, 441, 0, 0, 443, 867, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 2640, 453, 454, 2641, 456, 457, 458, 0, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 0, 473, 0, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 868, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 0, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 2642, 532, 533, - 534, 535, 536, 870, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 0, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 871, 872, 0, 0, 566, 567, - 0, 569, 0, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 0, 873, 2643, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 938, 0, 1556, 684, - 0, 0, 0, 0, 745, 2528, 0, 615, 616, 617, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 2644, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, + 429, 430, 431, 432, 433, 434, 0, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 0, 447, + 448, 0, 450, 0, 451, 452, 453, 454, 455, 456, + 0, 457, 458, 0, 0, 459, 460, 461, 0, 0, + 462, 463, 464, 0, 466, 0, 468, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 0, 479, 480, + 481, 482, 483, 484, 485, 486, 0, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, + 500, 501, 0, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 0, 515, 516, 0, + 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, + 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, + 537, 538, 0, 539, 540, 541, 542, 543, 0, 545, + 546, 547, 548, 0, 549, 550, 551, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 562, 563, 0, + 564, 565, 0, 0, 566, 0, 568, 569, 570, 571, + 572, 0, 573, 574, 575, 0, 0, 576, 577, 578, + 579, 580, 0, 581, 582, 583, 584, 585, 586, 587, + 588, 0, 0, 589, 590, 591, 592, 593, 0, 0, + 594, 595, 596, 597, 598, 599, 600, 0, 601, 0, + 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, + 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, + 619, 620, 621, 622, 623, 624, 625, 626, 627, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 963, + 964, 965, 966, 967, 968, 969, 970, 971, 635, 0, + 0, 0, 0, 0, 0, 957, 0, 0, 0, 0, + 0, 0, 958, 959, 960, 0, 0, 235, 236, 237, + 238, 239, 240, 241, 242, 243, 0, 244, 245, 246, + 0, 0, 0, 0, 0, 0, 0, 247, 248, 249, + 0, 250, 251, 252, 253, 0, 255, 256, 257, 258, + 259, 0, 261, 262, 0, 263, 264, 265, 266, 267, + 268, 269, 0, 0, 270, 271, 272, 273, 274, 0, + 275, 276, 277, 278, 279, 0, 0, 0, 281, 282, + 283, 284, 285, 286, 0, 288, 289, 290, 0, 291, + 292, 293, 294, 295, 296, 0, 0, 298, 299, 300, + 0, 0, 0, 0, 0, 0, 0, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 0, 311, 0, 312, + 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, + 322, 0, 0, 323, 324, 325, 326, 327, 0, 328, + 329, 330, 0, 331, 332, 333, 0, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 0, 344, 0, + 345, 346, 347, 348, 349, 0, 350, 0, 351, 352, + 0, 0, 0, 355, 356, 357, 358, 0, 359, 360, + 0, 361, 362, 363, 0, 364, 365, 366, 367, 368, + 0, 370, 371, 372, 373, 0, 374, 375, 376, 377, + 378, 379, 380, 381, 0, 382, 0, 384, 385, 386, + 387, 388, 389, 390, 0, 391, 0, 392, 0, 0, + 395, 0, 397, 398, 399, 400, 401, 402, 403, 404, + 405, 406, 407, 0, 0, 408, 409, 0, 411, 0, + 0, 413, 414, 415, 0, 0, 416, 417, 418, 419, + 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 430, 431, 432, 433, 434, 0, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, 0, 447, 448, + 0, 450, 0, 451, 452, 453, 454, 455, 456, 0, + 457, 458, 0, 0, 459, 460, 461, 0, 0, 462, + 463, 464, 0, 466, 0, 468, 469, 470, 471, 472, + 473, 474, 475, 476, 477, 478, 0, 479, 480, 481, + 482, 483, 484, 485, 486, 0, 487, 488, 489, 490, + 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, + 501, 0, 502, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 512, 513, 514, 0, 515, 516, 0, 518, + 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, + 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, + 538, 0, 539, 540, 541, 542, 543, 0, 545, 546, + 547, 548, 0, 549, 550, 551, 552, 553, 554, 555, + 556, 557, 558, 559, 560, 561, 562, 563, 0, 564, + 565, 0, 0, 566, 0, 568, 569, 570, 571, 572, + 0, 573, 574, 575, 0, 0, 576, 577, 578, 579, + 580, 0, 581, 582, 583, 584, 585, 586, 587, 588, + 0, 0, 589, 590, 591, 592, 593, 0, 0, 594, + 595, 596, 597, 598, 599, 600, 0, 601, 0, 603, + 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, + 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, + 620, 621, 622, 623, 624, 625, 626, 627, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 963, 964, + 965, 966, 967, 968, 969, 970, 971, 635, 0, 0, + 0, 0, 0, 0, 957, 0, 0, 0, 0, 0, + 0, 958, 959, 960, 0, 0, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 0, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 0, 255, 256, 257, 258, 259, + 0, 261, 262, 0, 263, 264, 265, 266, 267, 268, + 269, 0, 0, 270, 271, 272, 273, 274, 0, 275, + 3533, 277, 278, 279, 0, 0, 0, 281, 282, 283, + 284, 285, 286, 0, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 0, 298, 299, 300, 0, + 0, 0, 0, 0, 0, 0, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 0, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 325, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 0, 3534, 0, 345, + 346, 347, 348, 349, 0, 350, 0, 351, 352, 0, + 0, 0, 355, 356, 357, 358, 0, 359, 360, 0, + 361, 362, 363, 0, 364, 365, 366, 367, 368, 0, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 0, 384, 385, 386, 387, + 388, 389, 390, 0, 391, 0, 392, 0, 0, 395, + 0, 397, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 409, 0, 411, 0, 0, + 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 434, 0, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 0, 447, 448, 0, + 450, 0, 451, 452, 453, 454, 455, 456, 0, 457, + 458, 0, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 0, 466, 0, 468, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 481, 482, + 483, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 0, 518, 519, + 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 0, 539, 540, 541, 542, 543, 0, 545, 546, 547, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 562, 563, 0, 564, 565, + 0, 0, 566, 0, 568, 569, 570, 571, 572, 0, + 573, 574, 575, 0, 0, 576, 577, 578, 579, 580, + 0, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 0, 589, 590, 591, 592, 593, 0, 0, 594, 595, + 596, 597, 598, 599, 600, 0, 601, 0, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, + 621, 622, 623, 624, 625, 626, 627, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 963, 964, 965, + 966, 967, 968, 969, 970, 971, 635, 0, 0, 0, + 0, 0, 0, 957, 0, 0, 0, 0, 0, 0, + 958, 959, 960, 0, 0, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 0, 244, 245, 246, 0, 0, + 0, 0, 0, 0, 0, 247, 248, 249, 0, 250, + 251, 252, 253, 0, 255, 256, 257, 258, 259, 0, + 261, 262, 0, 263, 264, 265, 266, 267, 268, 269, + 0, 0, 270, 271, 272, 273, 274, 0, 275, 276, + 277, 278, 279, 0, 0, 0, 281, 282, 283, 284, + 285, 286, 0, 288, 289, 290, 0, 291, 292, 293, + 294, 295, 296, 0, 0, 298, 299, 300, 0, 0, + 0, 0, 0, 0, 0, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 0, 311, 0, 312, 313, 314, + 315, 316, 317, 318, 0, 319, 320, 321, 322, 0, + 0, 323, 324, 325, 326, 327, 0, 328, 329, 330, + 0, 331, 332, 333, 0, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 0, 344, 0, 345, 346, + 347, 348, 349, 0, 350, 0, 351, 352, 0, 0, + 0, 355, 356, 357, 358, 0, 359, 360, 0, 361, + 362, 363, 0, 364, 365, 366, 367, 368, 0, 370, + 371, 372, 373, 0, 374, 375, 376, 377, 378, 379, + 380, 381, 0, 382, 0, 384, 385, 386, 387, 388, + 389, 390, 0, 391, 0, 392, 0, 0, 395, 0, + 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 0, 0, 408, 409, 0, 411, 0, 0, 413, + 414, 415, 0, 0, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 434, 0, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 0, 447, 448, 0, 450, + 0, 451, 452, 453, 454, 455, 456, 0, 457, 458, + 0, 0, 5504, 460, 461, 0, 0, 462, 463, 464, + 0, 466, 0, 468, 469, 470, 471, 472, 473, 474, + 475, 476, 477, 478, 0, 479, 480, 481, 482, 483, + 484, 485, 486, 0, 487, 488, 489, 490, 491, 492, + 493, 494, 495, 496, 497, 498, 499, 500, 501, 0, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 0, 515, 516, 0, 518, 519, 520, + 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, + 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, + 539, 540, 541, 542, 543, 0, 545, 546, 547, 548, + 0, 549, 550, 551, 552, 553, 554, 555, 556, 557, + 558, 559, 560, 561, 562, 563, 0, 564, 565, 0, + 0, 566, 0, 568, 569, 570, 571, 572, 0, 573, + 574, 575, 0, 0, 576, 577, 578, 579, 580, 0, + 581, 582, 583, 584, 585, 586, 587, 588, 0, 0, + 589, 590, 591, 592, 593, 0, 0, 594, 595, 596, + 597, 598, 599, 600, 0, 601, 0, 603, 604, 605, + 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, + 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, + 622, 623, 624, 625, 626, 627, 1707, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 963, 964, 965, 966, + 967, 968, 969, 970, 971, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 1708, 244, 245, 246, 1709, 1710, + 1711, 1712, 1713, 1714, 1715, 247, 248, 249, 1716, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 279, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 0, 0, 0, - 300, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 2529, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 1779, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 401, 402, 403, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, + 261, 262, 1717, 263, 264, 265, 266, 267, 268, 269, + 1718, 1719, 270, 271, 272, 273, 274, 1720, 275, 276, + 277, 278, 279, 1721, 280, 1722, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 1723, 291, 292, 293, + 294, 295, 296, 1724, 297, 298, 299, 300, 1725, 1726, + 1727, 301, 1728, 1729, 1730, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 1731, 311, 1732, 312, 313, 314, + 315, 316, 317, 318, 1733, 319, 320, 321, 322, 1734, + 1735, 323, 324, 325, 326, 327, 1736, 328, 329, 330, + 1737, 331, 332, 333, 1738, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 1739, 344, 1740, 345, 346, + 347, 348, 349, 1741, 350, 1742, 351, 352, 353, 1743, + 354, 355, 356, 357, 358, 1744, 359, 360, 1745, 361, + 362, 363, 1746, 364, 365, 366, 367, 368, 369, 370, + 371, 372, 373, 1747, 374, 375, 376, 377, 378, 379, + 380, 381, 1748, 382, 383, 384, 385, 386, 387, 388, + 389, 390, 1749, 391, 1750, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 1751, 1752, 408, 409, 410, 411, 412, 1753, 413, + 414, 415, 1754, 1755, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 440, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 1780, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 1781, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 938, 0, 1556, 684, 0, - 0, 0, 0, 745, 2528, 0, 1557, 1558, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 279, 0, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 296, 297, 298, 299, 0, 0, 0, 300, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 2534, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 1779, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 351, 0, 352, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 401, 402, 403, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 440, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 1780, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 534, 535, 536, 537, 538, 0, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 1756, 447, 448, 449, 450, + 1757, 451, 452, 453, 454, 455, 456, 1758, 457, 458, + 1759, 1760, 459, 460, 461, 1761, 1762, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 476, 477, 478, 1763, 479, 480, 481, 482, 483, + 484, 485, 486, 1764, 487, 488, 489, 490, 491, 492, + 493, 494, 495, 496, 497, 498, 499, 500, 501, 1765, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 1766, 515, 516, 517, 518, 519, 520, + 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, + 531, 532, 533, 1767, 534, 535, 536, 537, 538, 1768, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 557, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 1781, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 592, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 938, 0, 1556, 684, 0, 0, - 0, 0, 745, 0, 0, 1557, 1558, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 279, 0, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 296, 297, 298, 299, 0, 0, 0, 300, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 3436, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 1779, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 351, 0, 352, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 401, 402, 403, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 440, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 1780, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 456, - 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 534, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 557, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 1781, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 592, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 938, 0, 1556, 684, 0, 0, 0, - 0, 745, 2528, 0, 1557, 1558, 0, 0, 0, 0, + 1769, 549, 550, 551, 552, 553, 554, 555, 556, 557, + 558, 559, 560, 561, 562, 563, 1770, 564, 565, 1771, + 1772, 566, 567, 568, 569, 570, 571, 572, 1773, 573, + 574, 575, 1774, 1775, 576, 577, 578, 579, 580, 1776, + 581, 582, 583, 584, 585, 586, 587, 588, 1777, 1778, + 589, 590, 591, 592, 593, 1779, 1780, 594, 595, 596, + 597, 598, 599, 600, 1781, 601, 602, 603, 604, 605, + 606, 1782, 1783, 607, 1784, 1785, 608, 609, 610, 611, + 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, + 622, 623, 624, 625, 626, 627, 635, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1786, 0, 0, 0, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 0, 244, 245, 246, 0, 0, + 0, 0, 0, 0, 0, 247, 248, 249, 0, 250, + 251, 252, 253, 0, 255, 256, 257, 258, 259, 0, + 261, 262, 0, 263, 264, 265, 266, 267, 268, 269, + 0, 0, 270, 271, 272, 273, 274, 0, 275, 276, + 277, 278, 279, 0, 0, 0, 281, 282, 283, 284, + 285, 286, 0, 288, 289, 290, 0, 291, 292, 293, + 294, 295, 296, 0, 0, 298, 299, 300, 0, 0, + 0, 0, 0, 0, 0, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 0, 311, 0, 312, 313, 314, + 315, 316, 317, 318, 0, 319, 320, 321, 322, 0, + 0, 323, 324, 325, 326, 327, 0, 328, 329, 330, + 0, 331, 332, 333, 0, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 0, 344, 0, 345, 346, + 347, 348, 349, 0, 350, 0, 351, 352, 0, 0, + 0, 355, 356, 357, 358, 0, 359, 360, 0, 361, + 362, 363, 0, 364, 365, 366, 367, 368, 0, 370, + 371, 372, 373, 0, 374, 375, 376, 377, 378, 379, + 380, 381, 0, 382, 0, 384, 385, 386, 387, 388, + 389, 390, 0, 391, 0, 392, 0, 0, 395, 0, + 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 0, 0, 408, 409, 0, 411, 0, 0, 413, + 414, 415, 0, 0, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 434, 0, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 0, 447, 448, 0, 450, + 0, 451, 452, 453, 454, 455, 456, 0, 457, 458, + 0, 0, 459, 460, 461, 0, 0, 462, 463, 464, + 0, 466, 0, 468, 469, 470, 471, 472, 473, 474, + 475, 476, 477, 478, 0, 479, 480, 481, 482, 483, + 484, 485, 486, 0, 487, 488, 489, 490, 491, 492, + 493, 494, 495, 496, 497, 498, 499, 500, 501, 0, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 0, 515, 516, 0, 518, 519, 520, + 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, + 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, + 539, 540, 541, 542, 543, 0, 545, 546, 547, 548, + 0, 549, 550, 551, 552, 553, 554, 555, 556, 557, + 558, 559, 560, 561, 562, 563, 0, 564, 565, 0, + 0, 566, 0, 568, 569, 570, 571, 572, 0, 573, + 574, 575, 0, 0, 576, 577, 578, 579, 580, 0, + 581, 582, 583, 584, 585, 586, 587, 588, 0, 0, + 589, 590, 591, 592, 593, 0, 0, 594, 595, 596, + 597, 598, 599, 600, 0, 601, 0, 603, 604, 605, + 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, + 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, + 622, 623, 624, 625, 626, 627, 635, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 845, 0, 0, 0, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 0, 244, 245, 246, 0, 0, + 0, 0, 0, 0, 0, 247, 248, 249, 0, 250, + 251, 252, 253, 0, 255, 256, 257, 258, 259, 0, + 261, 262, 0, 263, 264, 265, 266, 267, 268, 269, + 0, 0, 270, 271, 272, 273, 274, 0, 275, 276, + 277, 278, 279, 0, 0, 0, 281, 282, 283, 284, + 285, 286, 0, 288, 289, 290, 0, 291, 292, 293, + 294, 295, 296, 0, 0, 298, 299, 300, 0, 0, + 0, 0, 0, 0, 0, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 0, 311, 0, 312, 313, 314, + 315, 316, 317, 318, 0, 319, 320, 321, 322, 0, + 0, 323, 324, 325, 326, 327, 0, 328, 329, 330, + 0, 331, 332, 333, 0, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 0, 344, 0, 345, 346, + 347, 348, 349, 0, 350, 0, 351, 352, 0, 0, + 0, 355, 356, 357, 358, 0, 359, 360, 0, 361, + 362, 363, 0, 364, 365, 366, 367, 368, 0, 370, + 371, 372, 373, 0, 374, 375, 376, 377, 378, 379, + 380, 381, 0, 382, 0, 384, 385, 386, 387, 388, + 389, 390, 0, 391, 0, 392, 0, 0, 395, 0, + 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 0, 0, 408, 409, 0, 411, 0, 0, 413, + 414, 415, 0, 0, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 434, 0, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 0, 447, 448, 0, 450, + 0, 451, 452, 453, 454, 455, 456, 0, 457, 458, + 0, 0, 459, 460, 461, 0, 0, 462, 463, 464, + 0, 466, 0, 468, 469, 470, 471, 472, 473, 474, + 475, 476, 477, 478, 0, 479, 480, 481, 482, 483, + 484, 485, 486, 0, 487, 488, 489, 490, 491, 492, + 493, 494, 495, 496, 497, 498, 499, 500, 501, 0, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 0, 515, 516, 0, 518, 519, 520, + 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, + 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, + 539, 540, 541, 542, 543, 0, 545, 546, 547, 548, + 0, 549, 550, 551, 552, 553, 554, 555, 556, 557, + 558, 559, 560, 561, 562, 563, 0, 564, 565, 0, + 0, 566, 0, 568, 569, 570, 571, 572, 0, 573, + 574, 575, 0, 0, 576, 577, 578, 579, 580, 0, + 581, 582, 583, 584, 585, 586, 587, 588, 0, 0, + 589, 590, 591, 592, 593, 0, 0, 594, 595, 596, + 597, 598, 599, 600, 0, 601, 0, 603, 604, 605, + 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, + 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, + 622, 623, 624, 625, 626, 627, 856, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 5919, 0, 0, 0, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 0, 244, 245, 246, 0, 0, + 0, 0, 0, 0, 0, 247, 248, 249, 0, 250, + 251, 252, 253, 254, 255, 256, 257, 0, 857, 260, + 858, 859, 0, 263, 264, 265, 266, 267, 268, 269, + 0, 0, 270, 271, 860, 861, 274, 0, 275, 276, + 277, 278, 0, 0, 280, 0, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 0, 291, 292, 293, + 294, 295, 296, 0, 297, 298, 299, 300, 0, 0, + 0, 301, 0, 0, 0, 302, 303, 304, 305, 306, + 307, 862, 863, 310, 0, 311, 0, 312, 313, 314, + 315, 316, 317, 318, 0, 319, 320, 321, 322, 0, + 0, 323, 324, 864, 326, 327, 0, 328, 329, 330, + 0, 331, 332, 333, 0, 334, 335, 336, 337, 0, + 339, 340, 341, 342, 0, 0, 344, 0, 345, 346, + 347, 865, 349, 0, 350, 0, 351, 352, 353, 0, + 354, 355, 356, 357, 358, 0, 359, 0, 0, 0, + 362, 363, 0, 364, 365, 366, 367, 368, 369, 370, + 371, 372, 373, 2674, 374, 375, 376, 377, 378, 379, + 380, 381, 0, 382, 383, 2675, 385, 386, 387, 388, + 866, 867, 0, 868, 0, 392, 393, 394, 395, 396, + 397, 0, 0, 0, 0, 402, 403, 404, 405, 406, + 407, 0, 0, 408, 0, 410, 411, 412, 0, 413, + 414, 415, 0, 0, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 869, 435, 870, 437, 438, 439, 440, 441, + 442, 443, 0, 0, 446, 0, 447, 448, 449, 450, + 0, 0, 452, 871, 454, 455, 456, 0, 457, 458, + 0, 0, 459, 460, 461, 0, 2676, 462, 463, 2677, + 465, 466, 467, 0, 469, 470, 471, 472, 473, 474, + 475, 476, 477, 478, 0, 479, 480, 0, 482, 0, + 484, 485, 486, 0, 487, 488, 489, 490, 491, 492, + 493, 494, 495, 496, 872, 498, 499, 500, 501, 0, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 0, 515, 516, 517, 518, 519, 520, + 521, 522, 0, 524, 525, 526, 527, 528, 529, 530, + 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, + 539, 540, 2678, 542, 543, 544, 545, 546, 874, 548, + 0, 549, 550, 551, 552, 553, 554, 555, 556, 557, + 558, 559, 560, 561, 0, 563, 0, 564, 565, 0, + 0, 566, 567, 568, 569, 570, 571, 572, 0, 573, + 875, 876, 0, 0, 576, 577, 0, 579, 0, 0, + 581, 582, 583, 584, 585, 586, 587, 588, 0, 0, + 589, 590, 591, 592, 593, 0, 0, 594, 595, 596, + 597, 598, 0, 877, 2679, 601, 602, 603, 604, 605, + 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, + 612, 613, 0, 3878, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 625, 626, 627, 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 296, 297, 298, 299, 0, 0, 0, 300, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 1779, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 351, 0, 352, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 401, 402, 403, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 440, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 1780, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 456, 457, - 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 557, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 1781, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 592, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 938, 0, 1556, 684, 0, 0, 0, 0, - 745, 0, 0, 1557, 1558, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 279, - 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 0, 0, 0, 300, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 1779, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 401, 402, 403, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 440, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 1780, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 456, 457, 458, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 1781, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 625, 0, 0, 0, 0, 0, 0, 0, 745, - 0, 0, 1557, 1558, 0, 0, 0, 0, 0, 0, - 235, 746, 237, 238, 239, 240, 241, 242, 747, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 748, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 0, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 749, 347, 348, 0, 349, 0, - 750, 0, 751, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 366, 0, 368, 369, 370, 371, 752, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 753, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 0, - 427, 428, 754, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 755, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 756, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 0, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, + 243, 2680, 244, 245, 246, 0, 0, 0, 0, 0, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 0, 857, 260, 858, 859, 0, + 263, 264, 265, 266, 267, 268, 269, 0, 0, 270, + 271, 860, 861, 274, 0, 275, 276, 277, 278, 0, + 0, 280, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 299, 300, 0, 0, 0, 301, 0, + 0, 0, 302, 303, 304, 305, 306, 307, 862, 863, + 310, 0, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 864, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 0, 339, 340, 341, + 342, 0, 0, 344, 0, 345, 346, 347, 865, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 0, 0, 0, 362, 363, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 2674, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 2675, 385, 386, 387, 388, 866, 867, 0, + 868, 0, 392, 393, 394, 395, 396, 397, 0, 0, + 0, 0, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 0, 410, 411, 412, 0, 413, 414, 415, 0, + 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 869, + 435, 870, 437, 438, 439, 440, 441, 442, 443, 0, + 0, 446, 0, 447, 448, 449, 450, 0, 0, 452, + 871, 454, 455, 456, 0, 457, 458, 0, 0, 459, + 460, 461, 0, 2676, 462, 463, 2677, 465, 466, 467, + 0, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 0, 482, 0, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 872, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 517, 518, 519, 520, 521, 522, 0, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 0, 539, 540, 2678, + 542, 543, 544, 545, 546, 874, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 0, 563, 0, 564, 565, 0, 0, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 875, 876, 0, + 0, 576, 577, 0, 579, 0, 0, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 0, 589, 590, 591, + 592, 593, 0, 0, 594, 595, 596, 597, 598, 0, + 877, 2679, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 0, + 942, 0, 1572, 694, 0, 0, 0, 0, 755, 2564, + 625, 626, 627, 0, 0, 0, 0, 0, 0, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 2680, 244, + 245, 246, 0, 0, 0, 0, 0, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 0, 263, 264, 265, + 266, 267, 268, 269, 0, 0, 270, 271, 272, 273, + 274, 0, 275, 276, 277, 278, 279, 0, 280, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 297, 298, + 299, 300, 0, 0, 0, 301, 0, 0, 0, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 2565, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 325, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 1796, + 344, 0, 345, 346, 347, 348, 349, 0, 350, 0, + 351, 352, 353, 0, 354, 355, 356, 357, 358, 0, + 359, 360, 0, 361, 362, 363, 0, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 0, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 0, 0, 408, 409, 410, + 411, 412, 0, 413, 414, 415, 0, 0, 416, 417, + 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 0, + 447, 448, 449, 450, 0, 451, 452, 453, 454, 455, + 456, 0, 457, 458, 1797, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 481, 482, 483, 484, 485, 486, 0, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 0, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, + 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, + 545, 546, 547, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, + 0, 564, 565, 0, 0, 566, 567, 568, 569, 570, + 571, 572, 0, 573, 574, 575, 0, 0, 576, 577, + 578, 579, 580, 1798, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 0, 589, 590, 591, 592, 593, 0, + 0, 594, 595, 596, 597, 598, 599, 600, 0, 601, + 602, 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 1691, 0, 6059, 684, 0, 0, 0, 0, 745, 0, - 0, 757, 758, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 1692, 243, 244, - 245, 1693, 1694, 1695, 1696, 1697, 1698, 1699, 246, 247, - 248, 1700, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 1701, 262, 263, 264, 265, - 266, 267, 268, 1702, 1703, 269, 270, 271, 272, 273, - 1704, 274, 275, 276, 277, 278, 1705, 279, 1706, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 1707, - 290, 291, 292, 293, 294, 295, 1708, 296, 297, 298, - 299, 1709, 1710, 1711, 300, 1712, 1713, 1714, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 1715, 310, 1716, - 311, 312, 313, 314, 315, 316, 317, 1717, 318, 319, - 320, 321, 1718, 1719, 322, 323, 324, 325, 326, 1720, - 327, 328, 329, 1721, 330, 331, 332, 1722, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 1723, 343, - 1724, 344, 345, 346, 347, 348, 1725, 349, 1726, 350, - 351, 1727, 352, 353, 354, 355, 356, 1728, 357, 358, - 1729, 359, 360, 361, 1730, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 1731, 372, 373, 374, 375, - 376, 377, 378, 1732, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 1733, 388, 1734, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 1735, 1736, 399, 400, - 401, 402, 403, 1737, 404, 405, 406, 1738, 1739, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, + 942, 0, 1572, 694, 0, 0, 0, 0, 755, 2564, + 0, 0, 0, 1573, 1574, 0, 0, 0, 0, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 0, 244, + 245, 246, 0, 0, 0, 0, 0, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 0, 263, 264, 265, + 266, 267, 268, 269, 0, 0, 270, 271, 272, 273, + 274, 0, 275, 276, 277, 278, 279, 0, 280, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 297, 298, + 299, 300, 0, 0, 0, 301, 0, 0, 0, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 2570, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 325, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 1796, + 344, 0, 345, 346, 347, 348, 349, 0, 350, 0, + 351, 352, 353, 0, 354, 355, 356, 357, 358, 0, + 359, 360, 0, 361, 362, 363, 0, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 0, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 0, 0, 408, 409, 410, + 411, 412, 0, 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 1740, 438, 439, 440, 441, 1741, 442, 443, 444, 445, - 446, 447, 1742, 448, 449, 1743, 1744, 450, 451, 452, - 1745, 1746, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 1747, - 470, 471, 472, 473, 474, 475, 476, 477, 1748, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 1749, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 1750, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 1751, 524, 525, - 526, 527, 528, 1752, 529, 530, 531, 532, 533, 534, - 535, 536, 537, 538, 1753, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 1754, 554, 555, 1755, 556, 557, 558, 559, 560, 561, - 562, 1756, 563, 564, 565, 1757, 1758, 566, 567, 568, - 569, 570, 1759, 571, 572, 573, 574, 575, 576, 577, - 578, 1760, 1761, 579, 580, 581, 582, 583, 1762, 1763, - 584, 585, 586, 587, 588, 589, 590, 1764, 591, 592, - 593, 594, 595, 596, 1765, 1766, 597, 1767, 1768, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 1691, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 1692, 243, 244, 245, - 1693, 1694, 1695, 1696, 1697, 1698, 1699, 246, 247, 248, - 1700, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 1701, 262, 263, 264, 265, 266, - 267, 268, 1702, 1703, 269, 270, 271, 272, 273, 1704, - 274, 275, 276, 277, 278, 1705, 279, 1706, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 1707, 290, - 291, 292, 293, 294, 295, 1708, 296, 297, 298, 299, - 1709, 1710, 1711, 300, 1712, 1713, 1714, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 1715, 310, 1716, 311, - 312, 313, 314, 315, 316, 317, 1717, 318, 319, 320, - 321, 1718, 1719, 322, 323, 324, 325, 326, 1720, 327, - 328, 329, 1721, 330, 331, 332, 1722, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 1723, 343, 1724, - 344, 345, 346, 347, 348, 1725, 349, 1726, 350, 351, - 1727, 352, 353, 354, 355, 356, 1728, 357, 358, 1729, - 359, 360, 361, 1730, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 1731, 372, 373, 374, 375, 376, - 377, 378, 1732, 379, 380, 381, 382, 383, 384, 385, - 386, 387, 1733, 388, 1734, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 1735, 1736, 399, 400, 401, - 402, 403, 1737, 404, 405, 406, 1738, 1739, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 1740, - 438, 439, 440, 441, 1741, 442, 443, 444, 445, 446, - 447, 1742, 448, 449, 1743, 1744, 450, 451, 452, 1745, - 1746, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 1747, 470, - 471, 472, 473, 474, 475, 476, 477, 1748, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 1749, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 1750, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 1751, 524, 525, 526, - 527, 528, 1752, 529, 530, 531, 532, 533, 534, 535, - 536, 537, 538, 1753, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 1754, - 554, 555, 1755, 556, 557, 558, 559, 560, 561, 562, - 1756, 563, 564, 565, 1757, 1758, 566, 567, 568, 569, - 570, 1759, 571, 572, 573, 574, 575, 576, 577, 578, - 1760, 1761, 579, 580, 581, 582, 583, 1762, 1763, 584, - 585, 586, 587, 588, 589, 590, 1764, 591, 592, 593, - 594, 595, 596, 1765, 1766, 597, 1767, 1768, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 1691, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 3541, 240, 241, 242, 1692, 243, 244, 245, 1693, - 1694, 1695, 1696, 1697, 1698, 1699, 246, 247, 248, 1700, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 1701, 262, 263, 264, 265, 266, 267, - 268, 1702, 1703, 269, 270, 271, 272, 273, 1704, 274, - 275, 276, 277, 278, 1705, 279, 1706, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 1707, 290, 291, - 292, 293, 294, 295, 1708, 296, 297, 298, 299, 1709, - 1710, 1711, 300, 1712, 1713, 1714, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 1715, 310, 1716, 311, 312, - 313, 314, 315, 316, 317, 1717, 318, 319, 320, 321, - 1718, 1719, 322, 323, 324, 3542, 326, 1720, 327, 328, - 329, 1721, 330, 331, 332, 1722, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 1723, 343, 1724, 344, - 345, 346, 347, 348, 1725, 349, 1726, 350, 351, 1727, - 352, 353, 354, 355, 356, 1728, 357, 358, 1729, 359, - 360, 361, 1730, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 1731, 372, 373, 374, 375, 376, 377, - 378, 1732, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 1733, 388, 1734, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 1735, 1736, 399, 400, 401, 402, - 403, 1737, 404, 405, 406, 1738, 1739, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 1740, 438, - 439, 440, 441, 1741, 442, 443, 444, 445, 446, 447, - 1742, 448, 449, 1743, 1744, 450, 451, 452, 1745, 1746, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 1747, 470, 471, - 472, 473, 474, 475, 476, 477, 1748, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 1749, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 1750, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 1751, 524, 525, 526, 527, - 528, 1752, 3543, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 1753, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 1754, 554, - 555, 1755, 556, 557, 558, 559, 560, 561, 562, 1756, - 563, 564, 565, 1757, 1758, 566, 567, 568, 569, 570, - 1759, 571, 572, 573, 574, 575, 576, 577, 578, 1760, - 1761, 579, 580, 581, 582, 583, 1762, 1763, 584, 585, - 586, 587, 588, 589, 590, 1764, 591, 592, 593, 594, - 595, 596, 1765, 1766, 597, 1767, 1768, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 234, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 1246, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 1249, 0, 1250, 0, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 296, 297, 298, 299, 1251, 1252, - 1253, 1254, 1255, 1256, 1257, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 1262, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 351, 0, 352, - 353, 354, 355, 356, 0, 357, 1265, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 0, 0, 399, 1270, 401, 402, 403, - 0, 404, 405, 406, 1271, 1272, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 1275, 437, 0, 438, 439, - 440, 441, 0, 1278, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 456, 457, 458, 1281, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 1282, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 1285, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 1287, 553, 0, 554, 555, - 0, 556, 557, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 1290, 569, 1291, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 1294, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 592, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 1296, 1297, 1298, 1299, 609, 1300, 1301, - 1302, 1303, 614, 615, 616, 617, 234, 0, 1236, 684, - 0, 1237, 1238, 0, 745, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 1242, 259, 1243, - 1244, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 1247, 1248, 273, 0, 274, 275, 276, - 277, 278, 0, 279, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 0, 0, 0, - 300, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 1258, 1259, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 860, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 1263, 343, 0, 344, 345, 346, - 1264, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 1267, 1268, 0, - 1269, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 401, 402, 403, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 1273, 426, 1274, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 440, - 441, 1277, 442, 443, 1279, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 1283, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 534, 535, 536, 1286, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 1288, - 1289, 0, 0, 566, 567, 568, 569, 570, 1292, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 1295, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 938, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 977, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 279, 0, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 296, 297, 298, 299, 0, 0, 939, 300, - 0, 0, 940, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 351, 0, 352, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 401, 402, 403, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 440, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 941, 529, - 530, 531, 532, 533, 534, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 557, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 592, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 938, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 998, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 279, 0, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 296, 297, 298, 299, 0, 0, 939, 300, 0, - 0, 940, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 351, 0, 352, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 401, 402, 403, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 999, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 440, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 456, - 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 941, 529, 530, - 531, 532, 533, 534, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 557, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 592, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 938, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 296, 297, 298, 299, 0, 0, 939, 300, 0, 0, - 940, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 351, 0, 352, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 401, 402, 403, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 440, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 456, 457, - 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 941, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 557, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 2905, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 592, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 938, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 279, - 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 0, 0, 939, 300, 0, 0, 940, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 358, 3891, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 401, 402, 403, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 440, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 456, 457, 458, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 941, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 938, 0, 0, 684, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 279, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 0, 0, 0, 300, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 1779, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 401, 402, 403, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 440, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 1780, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 1781, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 0, + 447, 448, 449, 450, 0, 451, 452, 453, 454, 455, + 456, 0, 457, 458, 1797, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 481, 482, 483, 484, 485, 486, 0, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 0, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, + 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, + 545, 546, 547, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, + 0, 564, 565, 0, 0, 566, 567, 568, 569, 570, + 571, 572, 0, 573, 574, 575, 0, 0, 576, 577, + 578, 579, 580, 1798, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 0, 589, 590, 591, 592, 593, 0, + 0, 594, 595, 596, 597, 598, 599, 600, 0, 601, + 602, 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 938, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 279, 0, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 296, 297, 298, - 299, 0, 0, 939, 300, 0, 0, 940, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 351, 0, 352, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 401, 402, 403, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, + 942, 0, 1572, 694, 0, 0, 0, 0, 755, 0, + 0, 0, 0, 1573, 1574, 0, 0, 0, 0, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 0, 244, + 245, 246, 0, 0, 0, 0, 0, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 0, 263, 264, 265, + 266, 267, 268, 269, 0, 0, 270, 271, 272, 273, + 274, 0, 275, 276, 277, 278, 279, 0, 280, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 297, 298, + 299, 300, 0, 0, 0, 301, 0, 0, 0, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 3494, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 325, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 1796, + 344, 0, 345, 346, 347, 348, 349, 0, 350, 0, + 351, 352, 353, 0, 354, 355, 356, 357, 358, 0, + 359, 360, 0, 361, 362, 363, 0, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 0, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 0, 0, 408, 409, 410, + 411, 412, 0, 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 440, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 941, 529, 530, 531, 532, 533, 534, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 557, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 592, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 938, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 0, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 279, 0, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 296, 297, 298, 299, - 0, 0, 939, 300, 0, 0, 940, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 351, - 0, 352, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 380, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 401, - 402, 403, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 1091, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 440, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 528, 941, 529, 530, 531, 532, 533, 534, 535, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 0, + 447, 448, 449, 450, 0, 451, 452, 453, 454, 455, + 456, 0, 457, 458, 1797, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 481, 482, 483, 484, 485, 486, 0, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 0, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 0, 556, 557, 558, 559, 560, 561, 562, - 0, 563, 564, 565, 0, 0, 566, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 592, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 938, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 279, 0, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 296, 297, 298, 299, 0, - 0, 939, 300, 0, 0, 940, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 351, 0, - 352, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 1133, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 401, 402, - 403, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 440, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 941, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 557, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 592, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 938, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 279, 0, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 296, 297, 298, 299, 0, 0, - 939, 300, 0, 0, 940, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 351, 0, 352, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 1146, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 401, 402, 403, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 440, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 941, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 557, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 592, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 938, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 279, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 0, 0, 939, - 300, 0, 0, 940, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 1158, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 401, 402, 403, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 1159, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 440, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 941, - 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 938, 0, 0, 684, 0, - 0, 0, 0, 0, 2511, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 279, 0, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 296, 297, 298, 299, 0, 0, 0, 300, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 2512, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 351, 0, 352, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 401, 402, 403, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 440, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 534, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 557, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 592, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 938, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 3, 4, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 279, 0, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 296, 297, 298, 299, 0, 0, 0, 300, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 351, 0, 352, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 401, 402, 403, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 440, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 456, - 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 534, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 557, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 592, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 938, 0, 0, 684, 0, 0, 0, - 0, 0, 1350, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 296, 297, 298, 299, 0, 0, 0, 300, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 351, 0, 352, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 401, 402, 403, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 440, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 456, 457, - 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 557, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 592, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 938, 0, 0, 684, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 279, - 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 0, 0, 0, 300, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 401, 402, 403, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 440, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 456, 457, 458, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 234, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 279, 0, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 296, 297, - 298, 299, 0, 0, 0, 300, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 351, 0, 352, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 401, 402, 403, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 440, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 557, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 592, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, + 545, 546, 547, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, + 0, 564, 565, 0, 0, 566, 567, 568, 569, 570, + 571, 572, 0, 573, 574, 575, 0, 0, 576, 577, + 578, 579, 580, 1798, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 0, 589, 590, 591, 592, 593, 0, + 0, 594, 595, 596, 597, 598, 599, 600, 0, 601, + 602, 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 234, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 279, 0, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 296, 297, 298, - 299, 0, 0, 0, 300, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 351, 0, 352, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 1117, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 401, 402, 403, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, + 942, 0, 1572, 694, 0, 0, 0, 0, 755, 2564, + 0, 0, 0, 1573, 1574, 0, 0, 0, 0, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 0, 244, + 245, 246, 0, 0, 0, 0, 0, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 0, 263, 264, 265, + 266, 267, 268, 269, 0, 0, 270, 271, 272, 273, + 274, 0, 275, 276, 277, 278, 279, 0, 280, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 297, 298, + 299, 300, 0, 0, 0, 301, 0, 0, 0, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 0, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 325, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 1796, + 344, 0, 345, 346, 347, 348, 349, 0, 350, 0, + 351, 352, 353, 0, 354, 355, 356, 357, 358, 0, + 359, 360, 0, 361, 362, 363, 0, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 0, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 0, 0, 408, 409, 410, + 411, 412, 0, 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 440, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 534, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 557, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 592, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 234, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 0, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 279, 0, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 296, 297, 298, 299, - 0, 0, 0, 300, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 351, - 0, 352, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 1130, 367, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 380, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 401, - 402, 403, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 440, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 528, 0, 529, 530, 531, 532, 533, 534, 535, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 0, + 447, 448, 449, 450, 0, 451, 452, 453, 454, 455, + 456, 0, 457, 458, 1797, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 481, 482, 483, 484, 485, 486, 0, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 0, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 0, 556, 557, 558, 559, 560, 561, 562, - 0, 563, 564, 565, 0, 0, 566, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 592, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 234, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 279, 0, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 296, 297, 298, 299, 0, - 0, 0, 300, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 351, 0, - 352, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 1144, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 401, 402, - 403, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 440, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 557, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 592, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 234, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 279, 0, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 296, 297, 298, 299, 0, 0, - 0, 300, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 351, 0, 352, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 1148, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 401, 402, 403, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 440, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 557, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 592, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 938, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 279, 0, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 296, 297, 298, 299, 0, 0, 0, - 300, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 351, 0, 352, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 401, 402, 403, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 440, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 557, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 592, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 0, 254, 255, 256, 257, 258, 0, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 2677, 274, 275, 276, 277, - 278, 0, 0, 2746, 280, 281, 282, 283, 284, 285, - 0, 287, 288, 289, 2678, 290, 291, 292, 293, 294, - 295, 0, 0, 297, 298, 299, 0, 0, 0, 0, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 2747, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 2680, 350, 0, 0, 0, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 2748, 0, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 0, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 0, 0, 392, 0, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 0, 402, 0, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 0, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 0, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 0, 457, 0, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 2681, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 0, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 0, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 0, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 2682, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 0, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 625, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 2677, 274, 275, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 2678, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 2747, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 2680, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 3754, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 2681, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 2682, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 803, 241, 242, - 764, 243, 765, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 766, - 0, 297, 298, 299, 0, 0, 0, 0, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 804, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 767, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 768, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 764, - 243, 765, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 0, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 766, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 3443, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 767, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 768, - 524, 525, 526, 527, 528, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 625, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 254, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 2677, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 2678, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 0, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 2747, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 2680, - 350, 0, 0, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 366, 0, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 0, - 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 2681, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 0, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 2682, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, + 545, 546, 547, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, + 0, 564, 565, 0, 0, 566, 567, 568, 569, 570, + 571, 572, 0, 573, 574, 575, 0, 0, 576, 577, + 578, 579, 580, 1798, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 0, 589, 590, 591, 592, 593, 0, + 0, 594, 595, 596, 597, 598, 599, 600, 0, 601, + 602, 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 764, 243, 765, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 766, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 366, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 0, 427, + 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, + 942, 0, 1572, 694, 0, 0, 0, 0, 755, 0, + 0, 0, 0, 1573, 1574, 0, 0, 0, 0, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 0, 244, + 245, 246, 0, 0, 0, 0, 0, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 0, 263, 264, 265, + 266, 267, 268, 269, 0, 0, 270, 271, 272, 273, + 274, 0, 275, 276, 277, 278, 279, 0, 280, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 297, 298, + 299, 300, 0, 0, 0, 301, 0, 0, 0, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 0, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 325, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 1796, + 344, 0, 345, 346, 347, 348, 349, 0, 350, 0, + 351, 352, 353, 0, 354, 355, 356, 357, 358, 0, + 359, 360, 0, 361, 362, 363, 0, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 0, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 0, 0, 408, 409, 410, + 411, 412, 0, 413, 414, 415, 0, 0, 416, 417, + 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 767, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 768, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 0, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 2981, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 0, 254, 255, 256, 257, - 258, 0, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 0, 0, 280, 281, - 282, 283, 284, 285, 0, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 0, 297, 298, 299, - 0, 0, 0, 2812, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 0, - 0, 0, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 366, 0, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 0, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 0, 0, 392, 0, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 0, - 402, 0, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 0, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 0, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 835, 450, 451, 452, 0, - 0, 453, 454, 455, 0, 457, 0, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 0, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 528, 0, 529, 530, 531, 532, 533, 0, 535, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 0, + 447, 448, 449, 450, 0, 451, 452, 453, 454, 455, + 456, 0, 457, 458, 1797, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 481, 482, 483, 484, 485, 486, 0, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 0, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 2813, 2814, 0, 558, 559, 560, 561, 562, - 0, 563, 564, 565, 0, 0, 566, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 0, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 625, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 1956, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 0, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 1957, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 1958, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 1959, 350, 0, 0, - 0, 1960, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 366, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 0, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, 0, 394, - 395, 1961, 1962, 398, 0, 0, 399, 400, 0, 402, - 0, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 0, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 1963, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 1964, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 0, - 509, 510, 511, 1965, 513, 514, 515, 516, 517, 1966, - 519, 520, 521, 522, 523, 0, 1967, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 1968, 556, 0, 1969, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 1970, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 625, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 765, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 0, 254, 255, 256, 257, 258, 0, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 0, 0, 280, 281, 282, 283, - 284, 285, 0, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 766, 0, 297, 298, 299, 0, 0, - 0, 0, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 0, 0, 0, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 366, 0, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 0, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 0, 0, 392, 0, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 0, 402, 0, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 0, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 0, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 0, 457, 0, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 767, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 0, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 768, 524, 525, 526, 527, 528, - 0, 529, 530, 531, 532, 533, 0, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 0, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 0, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 625, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 0, 254, 255, 256, 257, 258, 0, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 0, 0, 280, 281, 282, 283, 284, - 285, 0, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 0, 297, 298, 299, 0, 0, 0, - 2812, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 0, 0, 0, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 366, 0, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 0, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 0, 0, 392, 0, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 0, 402, 0, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 0, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 0, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 835, 450, 451, 452, 0, 0, 453, 454, - 455, 0, 457, 0, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 0, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 0, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 2813, - 2814, 0, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 0, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 991, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 0, 254, 255, 256, 257, 258, 0, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 0, 0, 280, 281, 282, 283, 284, 285, - 0, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 0, 297, 298, 299, 0, 0, 0, 0, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 0, 0, 0, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 992, 0, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 0, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 0, 0, 392, 0, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 0, 402, 0, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 0, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 0, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 835, 450, 451, 452, 0, 0, 453, 454, 455, - 0, 457, 0, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 0, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 0, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 0, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 0, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 625, 0, 0, 684, 0, 0, - 0, 0, 0, 1352, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 3522, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 0, 297, 298, 299, 0, 0, 0, 0, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 3523, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 3535, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 0, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 3536, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 625, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 626, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 254, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 0, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 0, 0, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 366, 0, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 0, - 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 0, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, + 545, 546, 547, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, + 0, 564, 565, 0, 0, 566, 567, 568, 569, 570, + 571, 572, 0, 573, 574, 575, 0, 0, 576, 577, + 578, 579, 580, 1798, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 0, 589, 590, 591, 592, 593, 0, + 0, 594, 595, 596, 597, 598, 599, 600, 0, 601, + 602, 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 675, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 366, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 0, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 676, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 0, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 795, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 0, 254, 255, 256, 257, - 258, 0, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 0, 0, 280, 281, - 282, 283, 284, 285, 0, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 0, 297, 298, 299, - 0, 0, 0, 0, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 0, - 0, 0, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 366, 0, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 0, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 0, 0, 392, 0, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 0, - 402, 0, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 0, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 0, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 0, 457, 0, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 0, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 796, 0, 529, 530, 531, 532, 533, 0, 535, - 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 0, 556, 0, 558, 559, 560, 561, 562, - 0, 563, 797, 565, 0, 0, 798, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 0, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 625, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 829, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 0, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 0, 0, - 0, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 366, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 0, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, 0, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 0, 402, - 0, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 0, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 0, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 830, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 0, 558, 559, 560, 561, 562, 0, - 563, 831, 565, 0, 0, 832, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 625, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 0, 254, 255, 256, 257, 258, 0, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 0, 0, 280, 281, 282, 283, - 284, 285, 0, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 0, 297, 298, 299, 0, 0, - 0, 0, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 0, 0, 0, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 366, 0, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 0, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 0, 0, 392, 0, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 0, 402, 0, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 0, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 0, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 835, 450, 451, 452, 0, 0, 453, - 454, 455, 0, 457, 0, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 0, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 531, 532, 533, 0, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 0, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 0, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 625, 0, 0, 0, - 0, 0, 0, 0, 0, 893, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 0, 254, 255, 256, 257, 258, 0, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 0, 0, 280, 281, 282, 283, 284, - 285, 0, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 0, 297, 298, 299, 0, 0, 0, - 0, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 0, 0, 0, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 366, 0, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 0, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 0, 0, 392, 0, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 0, 402, 0, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 0, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 0, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 0, 457, 0, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 0, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 0, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 0, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 0, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 948, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 0, 254, 255, 256, 257, 258, 0, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 0, 0, 280, 281, 282, 283, 284, 285, - 0, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 0, 297, 298, 299, 0, 0, 0, 0, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 0, 0, 0, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 949, 0, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 0, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 0, 0, 392, 0, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 0, 402, 0, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 0, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 0, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 0, 457, 0, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 0, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 0, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 0, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 0, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 625, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 1109, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 1341, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 0, 297, 298, 299, 0, 0, 0, 0, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 1354, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 815, 270, 271, - 272, 1355, 0, 274, 275, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 818, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 819, 510, 511, 512, 513, 514, - 515, 516, 517, 820, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 1345, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 822, 565, 0, 0, 823, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 824, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 625, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 254, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 0, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 0, 0, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 1500, 0, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 0, - 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 835, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 0, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, + 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, + 635, 0, 0, 0, 0, 0, 0, 0, 755, 0, + 0, 0, 0, 1573, 1574, 0, 0, 0, 0, 235, + 236, 756, 238, 239, 240, 241, 242, 243, 757, 244, + 245, 246, 0, 0, 0, 0, 0, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 0, 758, 256, + 257, 258, 259, 0, 261, 262, 0, 263, 264, 265, + 266, 267, 268, 269, 0, 0, 270, 271, 272, 273, + 274, 0, 275, 276, 277, 278, 279, 0, 0, 0, + 281, 282, 283, 284, 285, 286, 0, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 0, 298, + 299, 300, 0, 0, 0, 0, 0, 0, 0, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 0, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 325, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 0, + 344, 0, 345, 346, 759, 348, 349, 0, 350, 0, + 351, 760, 0, 761, 0, 355, 356, 357, 358, 0, + 359, 360, 0, 361, 362, 363, 0, 364, 365, 366, + 367, 368, 0, 370, 371, 372, 373, 762, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 0, 384, + 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, + 0, 0, 395, 0, 397, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 763, 0, 0, 408, 409, 0, + 411, 0, 0, 413, 414, 415, 0, 0, 416, 417, + 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 430, 431, 432, 433, 434, 0, 436, 437, + 764, 439, 440, 441, 442, 443, 444, 445, 446, 0, + 447, 448, 0, 450, 0, 451, 452, 453, 454, 455, + 456, 0, 457, 458, 0, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 0, 466, 0, 468, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 481, 482, 483, 484, 485, 486, 0, 765, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 0, 502, 503, 504, 766, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 0, 518, 519, 520, 521, 522, 523, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, + 536, 537, 538, 0, 539, 540, 541, 542, 543, 0, + 545, 546, 547, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, + 0, 564, 565, 0, 0, 566, 0, 568, 569, 570, + 571, 572, 0, 573, 574, 575, 0, 0, 576, 577, + 578, 579, 580, 0, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 0, 589, 590, 591, 592, 593, 0, + 0, 594, 595, 596, 597, 598, 599, 600, 0, 601, + 0, 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 1561, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 1562, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 0, 427, + 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, + 942, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 767, 768, 0, 0, 0, 0, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 0, 244, + 245, 246, 3, 4, 0, 0, 0, 0, 0, 247, + 248, 249, 0, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 0, 263, 264, 265, + 266, 267, 268, 269, 0, 0, 270, 271, 272, 273, + 274, 0, 275, 276, 277, 278, 279, 0, 280, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 0, 291, 292, 293, 294, 295, 296, 0, 297, 298, + 299, 300, 0, 0, 0, 301, 0, 0, 0, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 0, 311, + 0, 312, 313, 314, 315, 316, 317, 318, 0, 319, + 320, 321, 322, 0, 0, 323, 324, 325, 326, 327, + 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 0, + 344, 0, 345, 346, 347, 348, 349, 0, 350, 0, + 351, 352, 353, 0, 354, 355, 356, 357, 358, 0, + 359, 360, 0, 361, 362, 363, 0, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 0, 374, 375, + 376, 377, 378, 379, 380, 381, 0, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 0, 0, 408, 409, 410, + 411, 412, 0, 413, 414, 415, 0, 0, 416, 417, + 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 0, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 795, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 0, 254, 255, 256, 257, - 258, 0, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 0, 0, 280, 281, - 282, 283, 284, 285, 0, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 0, 297, 298, 299, - 0, 0, 0, 0, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 0, - 0, 0, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 366, 0, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 0, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 0, 0, 392, 0, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 0, - 402, 0, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 0, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 0, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 0, 457, 0, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 0, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 528, 0, 529, 530, 531, 532, 533, 0, 535, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 0, + 447, 448, 449, 450, 0, 451, 452, 453, 454, 455, + 456, 0, 457, 458, 0, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 467, 468, 469, 470, + 471, 472, 473, 474, 475, 476, 477, 478, 0, 479, + 480, 481, 482, 483, 484, 485, 486, 0, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 0, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 0, 515, 516, + 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, + 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 0, 556, 0, 558, 559, 560, 561, 562, - 0, 563, 564, 565, 0, 0, 566, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 0, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 625, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 0, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 0, 0, - 0, 353, 354, 355, 3294, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 366, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 0, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, 0, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 0, 402, - 0, 0, 404, 405, 3295, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 0, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 0, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 3296, 556, 0, 558, 3297, 560, 3298, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 3299, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 625, 0, 0, - 0, 0, 0, 0, 0, 745, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 0, 254, 255, 256, 257, 258, 0, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 0, 0, 280, 281, 282, 283, - 284, 285, 0, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 0, 297, 298, 299, 0, 0, - 0, 0, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 0, 0, 0, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 366, 0, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 0, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 0, 0, 392, 0, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 0, 402, 0, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 0, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 0, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 0, 457, 0, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 0, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 531, 532, 533, 0, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 0, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 0, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 625, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 4072, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 0, 254, 255, 256, 257, 258, 0, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 0, 0, 280, 281, 282, 283, 284, - 285, 0, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 0, 297, 298, 299, 0, 0, 0, - 0, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 0, 0, 0, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 366, 0, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 0, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 0, 0, 392, 0, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 0, 402, 0, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 0, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 0, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 0, 457, 0, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 0, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 0, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 0, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 0, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 4086, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 0, 254, 255, 256, 257, 258, 0, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 0, 0, 280, 281, 282, 283, 284, 285, - 0, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 0, 297, 298, 299, 0, 0, 0, 0, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 0, 0, 0, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 366, 0, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 0, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 0, 0, 392, 0, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 0, 402, 0, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 0, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 0, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 0, 457, 0, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 0, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 0, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 0, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 0, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 625, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 4722, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 0, 297, 298, 299, 0, 0, 0, 4792, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 0, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 625, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 254, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 0, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 0, 0, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 366, 0, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 0, - 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 0, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 781, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, + 545, 546, 547, 548, 0, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, + 0, 564, 565, 0, 0, 566, 567, 568, 569, 570, + 571, 572, 0, 573, 574, 575, 0, 0, 576, 577, + 578, 579, 580, 0, 581, 582, 583, 584, 585, 586, + 587, 588, 0, 0, 589, 590, 591, 592, 593, 0, + 0, 594, 595, 596, 597, 598, 599, 600, 0, 601, + 602, 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 366, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 0, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 509, 510, 511, 512, 513, 514, 515, 516, - 793, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 0, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 0, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 0, 254, 255, 256, 257, - 258, 0, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 815, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 0, 0, 280, 281, - 282, 283, 284, 285, 0, 287, 288, 289, 0, 816, - 291, 292, 293, 294, 295, 0, 0, 297, 298, 299, - 0, 0, 0, 0, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 0, - 0, 0, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 366, 0, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 0, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 0, 0, 392, 0, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 0, - 402, 0, 0, 404, 405, 817, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 818, 425, 0, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 0, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 0, 457, 0, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 0, 819, 510, 511, 512, 513, 514, 515, 516, 517, - 820, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 821, 0, 529, 530, 531, 532, 533, 0, 535, - 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 0, 556, 0, 558, 559, 560, 561, 562, - 0, 563, 822, 565, 0, 0, 823, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 0, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 824, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 625, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 0, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 0, 0, - 0, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 366, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 0, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, 0, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 0, 402, - 0, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 0, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 847, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 0, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 0, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 625, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 0, 254, 255, 256, 257, 258, 0, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 0, 0, 280, 281, 282, 283, - 284, 285, 0, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 0, 297, 298, 299, 0, 0, - 0, 0, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 0, 0, 0, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 973, 0, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 0, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 0, 0, 392, 0, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 0, 402, 0, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 0, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 0, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 0, 457, 0, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 0, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 531, 532, 533, 0, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 0, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 0, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 625, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 0, 254, 255, 256, 257, 258, 0, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 0, 0, 280, 281, 282, 283, 284, - 285, 0, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 0, 297, 298, 299, 0, 0, 0, - 0, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 0, 0, 0, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 983, 0, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 0, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 0, 0, 392, 0, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 0, 402, 0, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 0, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 0, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 0, 457, 0, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 0, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 0, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 0, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 0, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 0, 254, 255, 256, 257, 258, 0, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 0, 0, 280, 281, 282, 283, 284, 285, - 0, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 0, 297, 298, 299, 0, 0, 0, 0, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 0, 0, 0, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 986, 0, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 0, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 0, 0, 392, 0, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 0, 402, 0, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 0, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 0, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 0, 457, 0, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 0, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 0, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 0, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 0, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 625, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 1002, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 0, 297, 298, 299, 0, 0, 0, 0, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 1058, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 0, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 1063, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 625, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 254, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 0, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 0, 0, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 1080, 0, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 0, + 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, + 1021, 1707, 0, 6190, 694, 0, 0, 0, 0, 755, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 1708, + 244, 245, 246, 1709, 1710, 1711, 1712, 1713, 1714, 1715, + 247, 248, 249, 1716, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 1717, 263, 264, + 265, 266, 267, 268, 269, 1718, 1719, 270, 271, 272, + 273, 274, 1720, 275, 276, 277, 278, 279, 1721, 280, + 1722, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 1723, 291, 292, 293, 294, 295, 296, 1724, 297, + 298, 299, 300, 1725, 1726, 1727, 301, 1728, 1729, 1730, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 1731, + 311, 1732, 312, 313, 314, 315, 316, 317, 318, 1733, + 319, 320, 321, 322, 1734, 1735, 323, 324, 325, 326, + 327, 1736, 328, 329, 330, 1737, 331, 332, 333, 1738, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 1739, 344, 1740, 345, 346, 347, 348, 349, 1741, 350, + 1742, 351, 352, 353, 1743, 354, 355, 356, 357, 358, + 1744, 359, 360, 1745, 361, 362, 363, 1746, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 1747, 374, + 375, 376, 377, 378, 379, 380, 381, 1748, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 1749, 391, 1750, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 1751, 1752, 408, 409, + 410, 411, 412, 1753, 413, 414, 415, 1754, 1755, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 0, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, - 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 1083, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 0, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 0, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 0, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 0, 254, 255, 256, 257, - 258, 0, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 0, 0, 280, 281, - 282, 283, 284, 285, 0, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 0, 297, 298, 299, - 0, 0, 0, 0, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 0, - 0, 0, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 1085, 0, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 0, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 0, 0, 392, 0, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 0, - 402, 0, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 0, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 0, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 0, 457, 0, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 0, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 528, 0, 529, 530, 531, 532, 533, 0, 535, - 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 0, 556, 0, 558, 559, 560, 561, 562, - 0, 563, 564, 565, 0, 0, 566, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 0, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 625, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 0, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 0, 0, - 0, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 1122, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 0, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, 0, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 0, 402, - 0, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 0, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 0, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 0, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 625, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 0, 254, 255, 256, 257, 258, 0, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 0, 0, 280, 281, 282, 283, - 284, 285, 0, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 0, 297, 298, 299, 0, 0, - 0, 0, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 0, 0, 0, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 1150, 0, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 0, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 0, 0, 392, 0, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 0, 402, 0, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 0, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 0, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 0, 457, 0, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 0, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 531, 532, 533, 0, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 0, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 0, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 625, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 0, 254, 255, 256, 257, 258, 0, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 0, 0, 280, 281, 282, 283, 284, - 285, 0, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 0, 297, 298, 299, 0, 0, 0, - 0, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 0, 0, 0, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 1152, 0, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 0, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 0, 0, 392, 0, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 0, 402, 0, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 0, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 0, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 0, 457, 0, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 0, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 0, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 0, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 0, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 0, 254, 255, 256, 257, 258, 0, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 0, 0, 280, 281, 282, 283, 284, 285, - 0, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 0, 297, 298, 299, 0, 0, 0, 0, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 0, 0, 0, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 1162, 0, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 0, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 0, 0, 392, 0, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 0, 402, 0, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 0, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 0, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 0, 457, 0, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 0, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 0, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 0, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 0, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 625, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 1165, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 0, 297, 298, 299, 0, 0, 0, 0, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 1168, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 0, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 815, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 818, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 819, 510, 511, 512, 513, 514, - 515, 516, 517, 820, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 1345, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 822, 565, 0, 0, 823, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 824, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 625, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 254, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 0, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 0, 0, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 1822, 0, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 0, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 1756, 447, 448, 449, 450, 1757, 451, 452, 453, 454, + 455, 456, 1758, 457, 458, 1759, 1760, 459, 460, 461, + 1761, 1762, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 1763, + 479, 480, 481, 482, 483, 484, 485, 486, 1764, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 1765, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 1766, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 1767, 534, + 535, 536, 537, 538, 1768, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 1769, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 1770, 564, 565, 1771, 1772, 566, 567, 568, 569, + 570, 571, 572, 1773, 573, 574, 575, 1774, 1775, 576, + 577, 578, 579, 580, 1776, 581, 582, 583, 584, 585, + 586, 587, 588, 1777, 1778, 589, 590, 591, 592, 593, + 1779, 1780, 594, 595, 596, 597, 598, 599, 600, 1781, + 601, 602, 603, 604, 605, 606, 1782, 1783, 607, 1784, + 1785, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 1707, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 1708, + 244, 245, 246, 1709, 1710, 1711, 1712, 1713, 1714, 1715, + 247, 248, 249, 1716, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 1717, 263, 264, + 265, 266, 267, 268, 269, 1718, 1719, 270, 271, 272, + 273, 274, 1720, 275, 276, 277, 278, 279, 1721, 280, + 1722, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 1723, 291, 292, 293, 294, 295, 296, 1724, 297, + 298, 299, 300, 1725, 1726, 1727, 301, 1728, 1729, 1730, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 1731, + 311, 1732, 312, 313, 314, 315, 316, 317, 318, 1733, + 319, 320, 321, 322, 1734, 1735, 323, 324, 325, 326, + 327, 1736, 328, 329, 330, 1737, 331, 332, 333, 1738, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 1739, 344, 1740, 345, 346, 347, 348, 349, 1741, 350, + 1742, 351, 352, 353, 1743, 354, 355, 356, 357, 358, + 1744, 359, 360, 1745, 361, 362, 363, 1746, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 1747, 374, + 375, 376, 377, 378, 379, 380, 381, 1748, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 1749, 391, 1750, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 1751, 1752, 408, 409, + 410, 411, 412, 1753, 413, 414, 415, 1754, 1755, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 0, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, - 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 1856, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 0, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 0, - 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 0, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 0, 254, 255, 256, 257, - 258, 0, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 0, 0, 280, 281, - 282, 283, 284, 285, 0, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 0, 297, 298, 299, - 0, 0, 0, 0, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 0, - 0, 0, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 1858, 0, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 0, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 0, 0, 392, 0, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 0, - 402, 0, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 0, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 0, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 0, 457, 0, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 0, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 528, 0, 529, 530, 531, 532, 533, 0, 535, - 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 0, 556, 0, 558, 559, 560, 561, 562, - 0, 563, 564, 565, 0, 0, 566, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 0, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 625, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 0, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 0, 0, - 0, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 1897, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 0, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, 0, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 0, 402, - 0, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 0, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 0, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 0, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 625, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 0, 254, 255, 256, 257, 258, 0, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 0, 0, 280, 281, 282, 283, - 284, 285, 0, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 0, 297, 298, 299, 0, 0, - 0, 0, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 0, 0, 0, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 1899, 0, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 0, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 0, 0, 392, 0, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 0, 402, 0, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 0, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 0, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 0, 457, 0, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 0, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 531, 532, 533, 0, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 0, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 0, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 625, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 0, 254, 255, 256, 257, 258, 0, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 0, 0, 280, 281, 282, 283, 284, - 285, 0, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 0, 297, 298, 299, 0, 0, 0, - 0, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 0, 0, 0, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 1901, 0, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 0, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 0, 0, 392, 0, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 0, 402, 0, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 0, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 0, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 0, 457, 0, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 0, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 0, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 0, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 0, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 0, 254, 255, 256, 257, 258, 0, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 269, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 0, 0, 280, 281, 282, 283, 284, 285, - 0, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 0, 297, 298, 299, 0, 0, 0, 0, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 0, 0, 0, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 366, 0, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 0, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 0, 0, 392, 0, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 0, 402, 0, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 0, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 0, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 0, 457, 0, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 0, 509, 510, 511, - 512, 513, 514, 515, 516, 1994, 518, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 528, 0, 529, - 530, 531, 532, 533, 0, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 0, 558, 559, 560, 561, 562, 0, 563, 564, 565, - 0, 0, 566, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 0, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 625, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 2630, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 366, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 0, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 815, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 0, 297, 298, 299, 0, 0, 0, 0, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 366, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 818, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 819, 510, 511, 512, 513, - 514, 515, 516, 517, 820, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 1345, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 2664, - 559, 560, 561, 562, 0, 563, 822, 565, 0, 0, - 823, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 824, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 0, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 815, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 366, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 818, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 819, 510, 511, 512, 513, 514, - 515, 516, 517, 2729, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 2730, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 822, 565, 0, 0, 2731, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 824, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 625, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 254, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 815, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 0, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 0, 0, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 366, 0, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 818, 425, 0, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 1756, 447, 448, 449, 450, 1757, 451, 452, 453, 454, + 455, 456, 1758, 457, 458, 1759, 1760, 459, 460, 461, + 1761, 1762, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 1763, + 479, 480, 481, 482, 483, 484, 485, 486, 1764, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 1765, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 1766, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 1767, 534, + 535, 536, 537, 538, 1768, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 1769, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 1770, 564, 565, 1771, 1772, 566, 567, 568, 569, + 570, 571, 572, 1773, 573, 574, 575, 1774, 1775, 576, + 577, 578, 579, 580, 1776, 581, 582, 583, 584, 585, + 586, 587, 588, 1777, 1778, 589, 590, 591, 592, 593, + 1779, 1780, 594, 595, 596, 597, 598, 599, 600, 1781, + 601, 602, 603, 604, 605, 606, 1782, 1783, 607, 1784, + 1785, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 1707, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 3599, 241, 242, 243, 1708, + 244, 245, 246, 1709, 1710, 1711, 1712, 1713, 1714, 1715, + 247, 248, 249, 1716, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 1717, 263, 264, + 265, 266, 267, 268, 269, 1718, 1719, 270, 271, 272, + 273, 274, 1720, 275, 276, 277, 278, 279, 1721, 280, + 1722, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 1723, 291, 292, 293, 294, 295, 296, 1724, 297, + 298, 299, 300, 1725, 1726, 1727, 301, 1728, 1729, 1730, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 1731, + 311, 1732, 312, 313, 314, 315, 316, 317, 318, 1733, + 319, 320, 321, 322, 1734, 1735, 323, 324, 325, 3600, + 327, 1736, 328, 329, 330, 1737, 331, 332, 333, 1738, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 1739, 344, 1740, 345, 346, 347, 348, 349, 1741, 350, + 1742, 351, 352, 353, 1743, 354, 355, 356, 357, 358, + 1744, 359, 360, 1745, 361, 362, 363, 1746, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 1747, 374, + 375, 376, 377, 378, 379, 380, 381, 1748, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 1749, 391, 1750, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 1751, 1752, 408, 409, + 410, 411, 412, 1753, 413, 414, 415, 1754, 1755, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 819, 510, 511, 512, 513, 514, 515, - 516, 517, 2809, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 2730, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 0, 558, 559, 560, - 561, 562, 0, 563, 822, 565, 0, 0, 2731, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 824, 604, 605, 606, 607, - 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 815, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 323, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 366, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 818, 425, 0, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 819, 510, 511, 512, 513, 514, 515, 516, - 517, 2833, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 2730, 0, 529, 530, 531, 532, 533, 0, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 1756, 447, 448, 449, 450, 1757, 451, 452, 453, 454, + 455, 456, 1758, 457, 458, 1759, 1760, 459, 460, 461, + 1761, 1762, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 1763, + 479, 480, 481, 482, 483, 484, 485, 486, 1764, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 1765, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 1766, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 1767, 534, + 535, 536, 537, 538, 1768, 3601, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 1769, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 1770, 564, 565, 1771, 1772, 566, 567, 568, 569, + 570, 571, 572, 1773, 573, 574, 575, 1774, 1775, 576, + 577, 578, 579, 580, 1776, 581, 582, 583, 584, 585, + 586, 587, 588, 1777, 1778, 589, 590, 591, 592, 593, + 1779, 1780, 594, 595, 596, 597, 598, 599, 600, 1781, + 601, 602, 603, 604, 605, 606, 1782, 1783, 607, 1784, + 1785, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 234, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 1256, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 1259, 0, 1260, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 1261, 1262, 1263, 1264, 1265, 1266, 1267, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 1272, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 1275, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 393, 394, 395, 396, 397, 1280, 1281, 1282, 1283, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 1284, + 410, 411, 412, 0, 413, 414, 415, 1285, 1286, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 1289, 446, + 0, 447, 448, 449, 450, 0, 1292, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 1295, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 1296, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 1299, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 1301, + 563, 0, 564, 565, 1302, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 1305, 579, 1306, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 1309, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 1311, 1312, + 1313, 1314, 619, 1315, 1316, 1317, 1318, 624, 625, 626, + 627, 234, 0, 1246, 694, 0, 1247, 1248, 0, 755, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 1252, 260, 1253, 1254, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 1257, + 1258, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 1268, 1269, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 864, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 1273, 344, 0, 345, 346, 347, 1274, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 1277, 1278, 0, 1279, 0, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 1287, 435, 1288, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 1291, 451, 452, 1293, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 1297, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 822, 565, 0, 0, 2731, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 824, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 0, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 0, 254, 255, 256, 257, - 258, 0, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 0, 0, 280, 281, - 282, 283, 284, 285, 0, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 0, 297, 298, 299, - 0, 0, 0, 0, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 0, - 0, 0, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 3026, 0, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 0, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 0, 0, 392, 0, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 0, - 402, 0, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 0, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 0, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 0, 457, 0, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 0, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 528, 0, 529, 530, 531, 532, 533, 0, 535, - 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 0, 556, 0, 558, 559, 560, 561, 562, - 0, 563, 564, 565, 0, 0, 566, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 0, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 625, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 0, 254, 255, 256, 257, 258, - 0, 260, 261, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 271, 272, 273, 0, 274, - 275, 276, 277, 278, 0, 0, 0, 280, 281, 282, - 283, 284, 285, 0, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 0, 297, 298, 299, 0, - 0, 0, 0, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 324, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 0, 343, 0, 344, - 345, 346, 347, 348, 0, 349, 0, 350, 0, 0, - 0, 353, 354, 355, 356, 0, 357, 358, 0, 359, - 360, 361, 0, 362, 363, 364, 365, 3030, 0, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 0, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 0, 389, 0, 0, 392, 0, 394, - 395, 396, 397, 398, 0, 0, 399, 400, 0, 402, - 0, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 0, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 0, 438, - 439, 0, 441, 0, 442, 443, 444, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 455, 0, 457, 0, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 472, 473, 474, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 0, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 531, 532, 533, 0, 535, 536, - 537, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 0, 554, - 555, 0, 556, 0, 558, 559, 560, 561, 562, 0, - 563, 564, 565, 0, 0, 566, 567, 568, 569, 570, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 589, 590, 0, 591, 0, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 625, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 0, 254, 255, 256, 257, 258, 0, - 260, 261, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 271, 272, 273, 0, 274, 275, - 276, 277, 278, 0, 0, 0, 280, 281, 282, 283, - 284, 285, 0, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 0, 297, 298, 299, 0, 0, - 0, 0, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 0, 343, 0, 344, 345, - 346, 347, 348, 0, 349, 0, 350, 0, 0, 0, - 353, 354, 355, 356, 0, 357, 358, 0, 359, 360, - 361, 0, 362, 363, 364, 365, 3088, 0, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 0, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 0, 389, 0, 0, 392, 0, 394, 395, - 396, 397, 398, 0, 0, 399, 400, 0, 402, 0, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 0, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 0, 438, 439, - 0, 441, 0, 442, 443, 444, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 455, 0, 457, 0, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 472, - 473, 474, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 0, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 531, 532, 533, 0, 535, 536, 537, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 552, 553, 0, 554, 555, - 0, 556, 0, 558, 559, 560, 561, 562, 0, 563, - 564, 565, 0, 0, 566, 567, 568, 569, 570, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 589, 590, 0, 591, 0, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, - 612, 613, 614, 615, 616, 617, 625, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 235, 236, 237, 238, 239, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 248, 0, 249, 250, - 251, 252, 0, 254, 255, 256, 257, 258, 0, 260, - 261, 0, 262, 263, 264, 265, 266, 267, 268, 0, - 0, 269, 270, 271, 272, 273, 0, 274, 275, 276, - 277, 278, 0, 0, 0, 280, 281, 282, 283, 284, - 285, 0, 287, 288, 289, 0, 290, 291, 292, 293, - 294, 295, 0, 0, 297, 298, 299, 0, 0, 0, - 0, 0, 0, 0, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 0, 310, 0, 311, 312, 313, 314, - 315, 316, 317, 0, 318, 319, 320, 321, 0, 0, - 322, 323, 324, 325, 326, 0, 327, 328, 329, 0, - 330, 331, 332, 0, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 0, 343, 0, 344, 345, 346, - 347, 348, 0, 349, 0, 350, 0, 0, 0, 353, - 354, 355, 356, 0, 357, 358, 0, 359, 360, 361, - 0, 362, 363, 364, 365, 3454, 0, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 378, 0, - 379, 0, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 0, 389, 0, 0, 392, 0, 394, 395, 396, - 397, 398, 0, 0, 399, 400, 0, 402, 0, 0, - 404, 405, 406, 0, 0, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 0, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 0, 438, 439, 0, - 441, 0, 442, 443, 444, 445, 446, 447, 0, 448, - 449, 0, 0, 450, 451, 452, 0, 0, 453, 454, - 455, 0, 457, 0, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 0, 470, 471, 472, 473, - 474, 475, 476, 477, 0, 478, 479, 480, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 0, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 502, 503, 504, 505, 0, 506, 507, 0, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 0, 524, 525, 526, 527, 528, 0, - 529, 530, 531, 532, 533, 0, 535, 536, 537, 538, - 0, 539, 540, 541, 542, 543, 544, 545, 546, 547, - 548, 549, 550, 551, 552, 553, 0, 554, 555, 0, - 556, 0, 558, 559, 560, 561, 562, 0, 563, 564, - 565, 0, 0, 566, 567, 568, 569, 570, 0, 571, - 572, 573, 574, 575, 576, 577, 578, 0, 0, 579, - 580, 581, 582, 583, 0, 0, 584, 585, 586, 587, - 588, 589, 590, 0, 591, 0, 593, 594, 595, 596, - 0, 0, 597, 0, 0, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 617, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, - 241, 242, 0, 243, 244, 245, 0, 0, 0, 0, - 0, 0, 0, 246, 247, 248, 0, 249, 250, 251, - 252, 0, 254, 255, 256, 257, 258, 0, 260, 261, - 0, 262, 263, 264, 265, 266, 267, 268, 0, 0, - 815, 270, 271, 272, 273, 0, 274, 275, 276, 277, - 278, 0, 0, 0, 280, 281, 282, 283, 284, 285, - 0, 287, 288, 289, 0, 290, 291, 292, 293, 294, - 295, 0, 0, 297, 298, 299, 0, 0, 0, 0, - 0, 0, 0, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 0, 310, 0, 311, 312, 313, 314, 315, - 316, 317, 0, 318, 319, 320, 321, 0, 0, 322, - 323, 324, 325, 326, 0, 327, 328, 329, 0, 330, - 331, 332, 0, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 0, 343, 0, 344, 345, 346, 347, - 348, 0, 349, 0, 350, 0, 0, 0, 353, 354, - 355, 356, 0, 357, 358, 0, 359, 360, 361, 0, - 362, 363, 364, 365, 366, 0, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 378, 0, 379, - 0, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 0, 389, 0, 0, 392, 0, 394, 395, 396, 397, - 398, 0, 0, 399, 400, 0, 402, 0, 0, 404, - 405, 406, 0, 0, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 818, 425, 0, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 0, 438, 439, 0, 441, - 0, 442, 443, 444, 445, 446, 447, 0, 448, 449, - 0, 0, 450, 451, 452, 0, 0, 453, 454, 455, - 0, 457, 0, 459, 460, 461, 462, 463, 464, 465, - 466, 467, 468, 469, 0, 470, 471, 472, 473, 474, - 475, 476, 477, 0, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 0, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 0, 506, 507, 0, 819, 510, 511, - 512, 513, 514, 515, 516, 517, 820, 519, 520, 521, - 522, 523, 0, 524, 525, 526, 527, 2730, 0, 529, - 530, 531, 532, 533, 0, 535, 536, 537, 538, 0, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 0, 554, 555, 0, 556, - 0, 558, 559, 560, 561, 562, 0, 563, 822, 565, - 0, 0, 2731, 567, 568, 569, 570, 0, 571, 572, - 573, 574, 575, 576, 577, 578, 0, 0, 579, 580, - 581, 582, 583, 0, 0, 584, 585, 586, 587, 588, - 589, 590, 0, 591, 0, 593, 594, 595, 596, 0, - 0, 597, 0, 0, 598, 599, 600, 601, 602, 824, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, - 614, 615, 616, 617, 625, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 235, 236, 237, 238, 239, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 248, 0, 249, 250, 251, 252, - 0, 254, 255, 256, 257, 258, 0, 260, 261, 0, - 262, 263, 264, 265, 266, 267, 268, 0, 0, 269, - 270, 271, 272, 273, 0, 274, 275, 276, 277, 278, - 0, 0, 0, 280, 281, 282, 283, 284, 285, 0, - 287, 288, 289, 0, 290, 291, 292, 293, 294, 295, - 0, 0, 297, 298, 299, 0, 0, 0, 0, 0, - 0, 0, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 0, 310, 0, 311, 312, 313, 314, 315, 316, - 317, 0, 318, 319, 320, 321, 0, 0, 322, 323, - 324, 325, 326, 0, 327, 328, 329, 0, 330, 331, - 332, 0, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 0, 343, 0, 344, 345, 346, 347, 348, - 0, 349, 0, 350, 0, 0, 0, 353, 354, 355, - 356, 0, 357, 358, 0, 359, 360, 361, 0, 362, - 363, 364, 365, 3511, 0, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 0, - 389, 0, 0, 392, 0, 394, 395, 396, 397, 398, - 0, 0, 399, 400, 0, 402, 0, 0, 404, 405, - 406, 0, 0, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 0, 438, 439, 0, 441, 0, - 442, 443, 444, 445, 446, 447, 0, 448, 449, 0, - 0, 450, 451, 452, 0, 0, 453, 454, 455, 0, - 457, 0, 459, 460, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 0, 470, 471, 472, 473, 474, 475, - 476, 477, 0, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 0, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 0, 506, 507, 0, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 0, 524, 525, 526, 527, 528, 0, 529, 530, - 531, 532, 533, 0, 535, 536, 537, 538, 0, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - 550, 551, 552, 553, 0, 554, 555, 0, 556, 0, - 558, 559, 560, 561, 562, 0, 563, 564, 565, 0, - 0, 566, 567, 568, 569, 570, 0, 571, 572, 573, - 574, 575, 576, 577, 578, 0, 0, 579, 580, 581, - 582, 583, 0, 0, 584, 585, 586, 587, 588, 589, - 590, 0, 591, 0, 593, 594, 595, 596, 0, 0, - 597, 0, 0, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 0, 297, 298, 299, 0, 0, 0, 0, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 360, 361, 0, 362, 363, - 364, 365, 3525, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 0, 254, - 255, 256, 257, 258, 0, 260, 261, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 271, - 272, 273, 0, 274, 275, 276, 277, 278, 0, 0, - 0, 280, 281, 282, 283, 284, 285, 0, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 0, - 297, 298, 299, 0, 0, 0, 0, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 324, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 0, 343, 0, 344, 345, 346, 347, 348, 0, 349, - 0, 350, 0, 0, 0, 353, 354, 355, 356, 0, - 357, 358, 0, 359, 360, 361, 0, 362, 363, 364, - 365, 3527, 0, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 0, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 0, 389, 0, - 0, 392, 0, 394, 395, 396, 397, 398, 0, 0, - 399, 400, 0, 402, 0, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 0, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 0, 438, 439, 0, 441, 0, 442, 443, - 444, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 455, 0, 457, 0, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 472, 473, 474, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 0, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 531, 532, - 533, 0, 535, 536, 537, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 0, 554, 555, 0, 556, 0, 558, 559, - 560, 561, 562, 0, 563, 564, 565, 0, 0, 566, - 567, 568, 569, 570, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 589, 590, 0, - 591, 0, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 604, 605, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 625, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 236, 237, 238, 239, 240, 241, 242, 0, 243, - 244, 245, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 248, 0, 249, 250, 251, 252, 0, 254, 255, - 256, 257, 258, 0, 260, 261, 0, 262, 263, 264, - 265, 266, 267, 268, 0, 0, 269, 270, 271, 272, - 273, 0, 274, 275, 276, 277, 278, 0, 0, 0, - 280, 281, 282, 283, 284, 285, 0, 287, 288, 289, - 0, 290, 291, 292, 293, 294, 295, 0, 0, 297, - 298, 299, 0, 0, 0, 0, 0, 0, 0, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 0, 310, - 0, 311, 312, 313, 314, 315, 316, 317, 0, 318, - 319, 320, 321, 0, 0, 322, 323, 324, 325, 326, - 0, 327, 328, 329, 0, 330, 331, 332, 0, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 0, - 343, 0, 344, 345, 346, 347, 348, 0, 349, 0, - 350, 0, 0, 0, 353, 354, 355, 356, 0, 357, - 358, 0, 359, 360, 361, 0, 362, 363, 364, 365, - 3675, 0, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 378, 0, 379, 0, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 0, 389, 0, 0, - 392, 0, 394, 395, 396, 397, 398, 0, 0, 399, - 400, 0, 402, 0, 0, 404, 405, 406, 0, 0, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 0, + 544, 545, 546, 1300, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 1303, 1304, 0, 0, 576, + 577, 578, 579, 580, 1307, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 1310, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 981, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 943, 301, 0, 0, 944, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 0, 438, 439, 0, 441, 0, 442, 443, 444, - 445, 446, 447, 0, 448, 449, 0, 0, 450, 451, - 452, 0, 0, 453, 454, 455, 0, 457, 0, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 0, 470, 471, 472, 473, 474, 475, 476, 477, 0, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 0, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 0, - 506, 507, 0, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, - 525, 526, 527, 528, 0, 529, 530, 531, 532, 533, - 0, 535, 536, 537, 538, 0, 539, 540, 541, 542, - 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, - 553, 0, 554, 555, 0, 556, 0, 558, 559, 560, - 561, 562, 0, 563, 564, 565, 0, 0, 566, 567, - 568, 569, 570, 0, 571, 572, 573, 574, 575, 576, - 577, 578, 0, 0, 579, 580, 581, 582, 583, 0, - 0, 584, 585, 586, 587, 588, 589, 590, 0, 591, - 0, 593, 594, 595, 596, 0, 0, 597, 0, 0, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, - 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, - 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, - 236, 237, 238, 239, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 0, 0, 0, 0, 246, 247, - 248, 0, 249, 250, 251, 252, 0, 254, 255, 256, - 257, 258, 0, 260, 261, 0, 262, 263, 264, 265, - 266, 267, 268, 0, 0, 269, 270, 271, 272, 273, - 0, 274, 275, 276, 277, 278, 0, 0, 0, 280, - 281, 282, 283, 284, 285, 0, 287, 288, 289, 0, - 290, 291, 292, 293, 294, 295, 0, 0, 297, 298, - 299, 0, 0, 0, 0, 0, 0, 0, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 0, 310, 0, - 311, 312, 313, 314, 315, 316, 317, 0, 318, 319, - 320, 321, 0, 0, 322, 3715, 324, 325, 326, 0, - 327, 328, 329, 0, 330, 331, 332, 0, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 0, 343, - 0, 344, 345, 346, 347, 348, 0, 349, 0, 350, - 0, 0, 0, 353, 354, 355, 356, 0, 357, 358, - 0, 359, 360, 361, 0, 362, 363, 364, 365, 366, - 0, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 378, 0, 379, 0, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 0, 389, 0, 0, 392, - 0, 394, 395, 396, 397, 398, 0, 0, 399, 400, - 0, 402, 0, 0, 404, 405, 406, 0, 0, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 0, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 0, 438, 439, 0, 441, 0, 442, 443, 444, 445, - 446, 447, 0, 448, 449, 0, 0, 450, 451, 452, - 0, 0, 453, 454, 455, 0, 457, 0, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 0, - 470, 471, 472, 473, 474, 475, 476, 477, 0, 478, - 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 0, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 0, 506, - 507, 0, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, - 526, 527, 528, 0, 529, 530, 531, 532, 533, 0, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 945, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 1002, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 943, 301, 0, 0, 944, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 1003, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 945, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 943, 301, 0, 0, 944, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 945, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 2941, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 943, 301, 0, 0, 944, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 3949, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 945, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 694, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 1796, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 1797, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 0, 554, 555, 0, 556, 0, 558, 559, 560, 561, - 562, 0, 563, 564, 565, 0, 0, 566, 567, 568, - 569, 570, 0, 571, 572, 573, 574, 575, 576, 577, - 578, 0, 0, 579, 580, 581, 582, 583, 0, 0, - 584, 585, 586, 587, 588, 589, 590, 0, 591, 0, - 593, 594, 595, 596, 0, 0, 597, 0, 0, 598, - 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 235, 236, - 237, 238, 239, 240, 241, 242, 0, 243, 244, 245, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 248, - 0, 249, 250, 251, 252, 0, 254, 255, 256, 257, - 258, 0, 260, 261, 0, 262, 263, 264, 265, 266, - 267, 268, 0, 0, 269, 270, 271, 272, 273, 0, - 274, 275, 276, 277, 278, 0, 0, 0, 280, 281, - 282, 283, 284, 285, 0, 287, 288, 289, 0, 290, - 291, 292, 293, 294, 295, 0, 0, 297, 298, 299, - 0, 0, 0, 0, 0, 0, 0, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 0, 310, 0, 311, - 312, 313, 314, 315, 316, 317, 0, 318, 319, 320, - 321, 0, 0, 322, 323, 324, 325, 326, 0, 327, - 328, 329, 0, 330, 331, 332, 0, 333, 334, 335, - 336, 337, 338, 339, 340, 341, 342, 0, 343, 0, - 344, 345, 346, 347, 348, 0, 349, 0, 350, 0, - 0, 0, 353, 354, 355, 356, 0, 357, 358, 0, - 359, 360, 361, 0, 362, 363, 364, 365, 4906, 0, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 378, 0, 379, 0, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 0, 389, 0, 0, 392, 0, - 394, 395, 396, 397, 398, 0, 0, 399, 400, 0, - 402, 0, 0, 404, 405, 406, 0, 0, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 0, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 0, - 438, 439, 0, 441, 0, 442, 443, 444, 445, 446, - 447, 0, 448, 449, 0, 0, 450, 451, 452, 0, - 0, 453, 454, 455, 0, 457, 0, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 0, 470, - 471, 472, 473, 474, 475, 476, 477, 0, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 0, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 0, 506, 507, - 0, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, - 527, 528, 0, 529, 530, 531, 532, 533, 0, 535, - 536, 537, 538, 0, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 0, - 554, 555, 0, 556, 0, 558, 559, 560, 561, 562, - 0, 563, 564, 565, 0, 0, 566, 567, 568, 569, - 570, 0, 571, 572, 573, 574, 575, 576, 577, 578, - 0, 0, 579, 580, 581, 582, 583, 0, 0, 584, - 585, 586, 587, 588, 589, 590, 0, 591, 0, 593, - 594, 595, 596, 0, 0, 597, 0, 0, 598, 599, - 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 617, 852, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 235, 236, 237, - 238, 239, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 248, 0, - 249, 250, 251, 252, 253, 254, 255, 256, 0, 853, - 259, 854, 855, 0, 262, 263, 264, 265, 266, 267, - 268, 0, 0, 269, 270, 856, 857, 273, 0, 274, - 275, 276, 277, 0, 0, 279, 0, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 0, 290, 291, - 292, 293, 294, 295, 0, 296, 297, 298, 299, 0, - 0, 0, 300, 0, 0, 0, 301, 302, 303, 304, - 305, 306, 858, 859, 309, 0, 310, 0, 311, 312, - 313, 314, 315, 316, 317, 0, 318, 319, 320, 321, - 0, 0, 322, 323, 860, 325, 326, 0, 327, 328, - 329, 0, 330, 331, 332, 0, 333, 334, 335, 336, - 0, 338, 339, 340, 341, 0, 0, 343, 0, 344, - 345, 346, 861, 348, 0, 349, 0, 350, 351, 0, - 352, 353, 354, 355, 356, 0, 357, 0, 0, 0, - 360, 361, 0, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 2638, 372, 373, 374, 375, 376, 377, - 378, 0, 379, 380, 2639, 382, 383, 384, 385, 862, - 863, 0, 864, 0, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 0, 0, 399, 0, 401, 402, - 403, 0, 404, 405, 406, 0, 0, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 865, 426, 866, 428, 429, - 430, 431, 432, 433, 434, 0, 0, 437, 0, 438, - 439, 440, 441, 0, 0, 443, 867, 445, 446, 447, - 0, 448, 449, 0, 0, 450, 451, 452, 0, 0, - 453, 454, 2641, 456, 457, 458, 0, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 0, 470, 471, - 0, 473, 0, 475, 476, 477, 0, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 868, 489, 490, - 491, 492, 0, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 0, 506, 507, 508, - 509, 510, 511, 512, 513, 0, 515, 516, 517, 518, - 519, 520, 521, 522, 523, 0, 524, 525, 526, 527, - 528, 0, 529, 530, 2642, 532, 533, 534, 535, 536, - 870, 538, 0, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 0, 553, 0, 554, - 555, 0, 556, 557, 558, 559, 560, 561, 562, 0, - 563, 871, 872, 0, 0, 566, 567, 0, 569, 0, - 0, 571, 572, 573, 574, 575, 576, 577, 578, 0, - 0, 579, 580, 581, 582, 583, 0, 0, 584, 585, - 586, 587, 588, 0, 873, 2643, 591, 592, 593, 594, - 595, 596, 0, 0, 597, 0, 0, 598, 599, 600, - 601, 602, 603, 625, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 615, 616, 617, 0, 0, 0, - 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, - 0, 243, 244, 245, 0, 0, 0, 0, 0, 0, - 0, 246, 247, 248, 0, 249, 250, 251, 252, 0, - 254, 255, 256, 257, 258, 0, 260, 261, 0, 262, - 263, 264, 265, 266, 267, 268, 0, 0, 269, 270, - 271, 272, 273, 0, 274, 275, 276, 277, 278, 0, - 0, 0, 280, 281, 282, 283, 284, 285, 0, 287, - 288, 289, 0, 290, 291, 292, 293, 294, 295, 0, - 0, 297, 298, 299, 0, 0, 0, 0, 0, 0, - 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 0, 310, 0, 311, 312, 313, 314, 315, 316, 317, - 0, 318, 319, 320, 321, 0, 0, 322, 323, 324, - 325, 326, 0, 327, 328, 329, 0, 330, 331, 332, - 0, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 0, 343, 0, 344, 345, 346, 347, 348, 0, - 349, 0, 350, 0, 0, 0, 353, 354, 355, 356, - 0, 357, 358, 0, 359, 0, 361, 0, 362, 363, - 364, 365, 366, 0, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 378, 0, 379, 0, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 0, 389, - 0, 0, 392, 0, 394, 395, 396, 397, 398, 0, - 0, 399, 400, 0, 402, 0, 0, 404, 405, 406, - 0, 0, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 0, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 0, 438, 439, 0, 441, 0, 442, - 443, 444, 445, 446, 447, 0, 448, 449, 0, 0, - 450, 451, 452, 0, 0, 453, 454, 455, 0, 457, - 0, 459, 460, 461, 462, 463, 464, 465, 466, 0, - 468, 469, 0, 470, 471, 472, 473, 474, 475, 476, - 477, 0, 478, 479, 480, 481, 482, 483, 484, 485, - 0, 487, 488, 489, 490, 491, 492, 0, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, - 505, 0, 506, 507, 0, 509, 510, 511, 512, 513, - 514, 0, 516, 517, 518, 519, 520, 521, 522, 523, - 0, 524, 525, 526, 527, 528, 0, 529, 530, 531, - 532, 533, 0, 535, 536, 537, 538, 0, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 0, 554, 555, 0, 556, 0, 558, - 559, 560, 561, 562, 0, 563, 564, 565, 0, 0, - 566, 567, 568, 569, 570, 0, 571, 572, 573, 574, - 575, 576, 577, 578, 0, 0, 579, 580, 581, 582, - 583, 0, 0, 584, 585, 586, 587, 588, 589, 590, - 0, 591, 0, 593, 594, 595, 596, 0, 0, 597, - 0, 0, 598, 599, 600, 601, 602, 603, 604, 605, - 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 852, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 0, 853, 259, 854, 855, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 856, - 857, 273, 0, 274, 275, 276, 277, 0, 0, 279, - 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 0, 0, 0, 300, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 858, 859, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 860, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 0, 338, 339, 340, 341, 0, - 0, 343, 0, 344, 345, 346, 861, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 0, 0, 0, 360, 361, 0, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 0, 382, - 383, 384, 385, 862, 863, 0, 864, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 0, 401, 402, 403, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 865, - 426, 866, 428, 429, 430, 431, 432, 433, 434, 0, - 0, 437, 0, 438, 439, 440, 441, 2725, 0, 443, - 867, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 0, 456, 457, 458, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 0, 473, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 868, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 0, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 2642, 532, - 533, 534, 535, 536, 870, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 0, 553, 0, 554, 555, 4452, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 871, 872, 0, 0, 566, - 567, 0, 569, 0, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 0, 873, 0, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 852, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 615, 616, - 617, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 253, 254, 255, 256, 0, 853, 259, - 854, 855, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 856, 857, 273, 0, 274, 275, - 276, 277, 0, 0, 279, 0, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 296, 297, 298, 299, 0, 0, - 0, 300, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 858, 859, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 860, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 0, - 338, 339, 340, 341, 0, 0, 343, 0, 344, 345, - 346, 861, 348, 0, 349, 0, 350, 351, 0, 352, - 353, 354, 355, 356, 0, 357, 0, 0, 0, 360, - 361, 0, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 380, 0, 382, 383, 384, 385, 862, 863, - 0, 864, 0, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 0, 0, 399, 0, 401, 402, 403, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 865, 426, 866, 428, 429, 430, - 431, 432, 433, 434, 2799, 0, 437, 0, 438, 439, - 440, 441, 0, 0, 443, 867, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 0, 456, 457, 458, 0, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 0, - 473, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 868, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 508, 509, - 510, 511, 512, 513, 0, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 869, 532, 533, 534, 535, 536, 870, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 0, 553, 0, 554, 555, - 0, 556, 557, 558, 559, 560, 561, 562, 0, 563, - 871, 872, 0, 0, 566, 567, 0, 569, 0, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 0, 873, 0, 591, 592, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 852, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 615, 616, 617, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 0, 853, 259, 854, 855, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 856, - 857, 273, 0, 274, 275, 276, 277, 0, 0, 279, - 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 0, 0, 0, 300, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 858, 859, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 860, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 0, 338, 339, 340, 341, 0, - 0, 343, 0, 344, 345, 346, 861, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 0, 0, 0, 360, 361, 0, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 0, 382, - 383, 384, 385, 862, 863, 0, 864, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 0, 401, 402, 403, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 865, - 426, 866, 428, 429, 430, 431, 432, 433, 434, 4247, - 0, 437, 0, 438, 439, 440, 441, 0, 0, 443, - 867, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 0, 456, 457, 458, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 0, 473, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 868, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 0, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 869, 532, - 533, 534, 535, 536, 870, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 0, 553, 0, 554, 555, 0, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 871, 872, 0, 0, 566, - 567, 0, 569, 0, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 0, 873, 0, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 852, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 615, 616, - 617, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 253, 254, 255, 256, 0, 853, 259, - 854, 855, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 856, 857, 273, 0, 274, 275, - 276, 277, 0, 0, 279, 0, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 296, 297, 298, 299, 0, 0, - 0, 300, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 858, 859, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 860, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 0, - 338, 339, 340, 341, 0, 0, 343, 0, 344, 345, - 346, 861, 348, 5723, 349, 0, 350, 351, 0, 352, - 353, 354, 355, 356, 0, 357, 0, 0, 0, 360, - 361, 0, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 380, 0, 382, 383, 384, 385, 862, 863, - 0, 864, 0, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 0, 0, 399, 0, 401, 402, 403, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 865, 426, 866, 428, 429, 430, - 431, 432, 433, 434, 0, 0, 437, 0, 438, 439, - 440, 441, 0, 0, 443, 867, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 0, 456, 457, 458, 0, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 0, - 473, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 868, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 508, 509, - 510, 511, 512, 513, 0, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 869, 532, 533, 534, 535, 536, 870, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 0, 553, 0, 554, 555, - 0, 556, 557, 558, 559, 560, 561, 562, 0, 563, - 871, 872, 0, 0, 566, 567, 0, 569, 0, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 0, 873, 0, 591, 592, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 852, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 615, 616, 617, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 0, 853, 259, 854, 855, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 856, - 857, 273, 0, 274, 275, 276, 277, 0, 0, 279, - 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 0, 0, 0, 300, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 858, 859, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 860, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 0, 338, 339, 340, 341, 0, - 0, 343, 0, 344, 345, 346, 861, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 0, 0, 0, 360, 361, 0, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 0, 382, - 383, 384, 385, 862, 863, 0, 864, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 0, 401, 402, 403, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 865, - 426, 866, 428, 429, 430, 431, 432, 433, 434, 0, - 0, 437, 0, 438, 439, 440, 441, 0, 0, 443, - 867, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 0, 456, 457, 458, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 0, 473, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 868, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 0, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 869, 532, - 533, 534, 535, 536, 870, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 0, 553, 0, 554, 555, 0, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 871, 872, 0, 0, 566, - 567, 0, 569, 0, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 0, 873, 0, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 852, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 615, 616, - 617, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 253, 254, 255, 256, 0, 853, 259, - 854, 855, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 856, 857, 273, 0, 274, 275, - 276, 277, 0, 0, 279, 0, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 296, 297, 298, 299, 0, 0, - 0, 300, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 858, 859, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 860, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 0, - 338, 339, 340, 341, 0, 0, 343, 0, 344, 345, - 346, 861, 348, 0, 349, 0, 350, 351, 0, 352, - 353, 354, 355, 356, 0, 357, 0, 0, 0, 360, - 361, 0, 362, 363, 364, 365, 1124, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 380, 0, 382, 383, 384, 385, 862, 863, - 0, 864, 0, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 0, 0, 399, 0, 401, 402, 403, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 865, 426, 866, 428, 429, 430, - 431, 432, 433, 434, 0, 0, 437, 0, 438, 439, - 440, 441, 0, 0, 443, 867, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 0, 456, 457, 458, 0, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 0, - 473, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 868, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 508, 509, - 510, 511, 512, 513, 0, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 869, 532, 533, 534, 535, 536, 870, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 0, 553, 0, 554, 555, - 0, 556, 557, 558, 559, 560, 561, 562, 0, 563, - 871, 872, 0, 0, 566, 567, 0, 569, 0, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 0, 873, 0, 591, 592, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 852, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 615, 616, 617, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 0, 853, 259, 854, 855, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 856, - 857, 273, 0, 274, 275, 276, 277, 0, 0, 279, - 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 0, 0, 0, 300, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 858, 859, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 860, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 0, 338, 339, 340, 341, 0, - 0, 343, 0, 344, 345, 346, 861, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 0, 0, 0, 360, 361, 0, 362, 363, 364, - 365, 1156, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 0, 382, - 383, 384, 385, 862, 863, 0, 864, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 0, 401, 402, 403, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 865, - 426, 866, 428, 429, 430, 431, 432, 433, 434, 0, - 0, 437, 0, 438, 439, 440, 441, 0, 0, 443, - 867, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 0, 456, 457, 458, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 0, 473, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 868, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 0, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 869, 532, - 533, 534, 535, 536, 870, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 0, 553, 0, 554, 555, 0, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 871, 872, 0, 0, 566, - 567, 0, 569, 0, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 0, 873, 0, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 852, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 615, 616, - 617, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 253, 254, 255, 256, 0, 853, 259, - 854, 855, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 856, 857, 273, 0, 274, 275, - 276, 277, 0, 0, 279, 0, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 296, 297, 298, 299, 0, 0, - 0, 300, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 858, 859, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 860, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 0, - 338, 339, 340, 341, 0, 0, 343, 0, 344, 345, - 346, 861, 348, 0, 349, 0, 350, 351, 0, 352, - 353, 354, 355, 356, 0, 357, 0, 0, 0, 360, - 361, 0, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 380, 0, 382, 383, 384, 385, 862, 863, - 0, 864, 0, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 0, 0, 399, 0, 401, 402, 403, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 865, 426, 866, 428, 429, 430, - 431, 432, 433, 434, 0, 0, 437, 0, 438, 439, - 440, 441, 0, 0, 443, 867, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 0, 456, 457, 458, 0, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 0, - 473, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 868, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 508, 509, - 510, 511, 512, 513, 0, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 2642, 532, 533, 534, 535, 536, 870, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 0, 553, 0, 554, 555, - 0, 556, 557, 558, 559, 560, 561, 562, 0, 563, - 871, 872, 0, 0, 566, 567, 0, 569, 0, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 0, 873, 0, 591, 592, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 852, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 615, 616, 617, 0, 0, 0, 0, - 0, 235, 236, 237, 238, 239, 240, 241, 242, 0, - 243, 244, 245, 0, 0, 0, 0, 0, 0, 0, - 246, 247, 248, 0, 249, 250, 251, 252, 253, 254, - 255, 256, 0, 853, 259, 854, 855, 0, 262, 263, - 264, 265, 266, 267, 268, 0, 0, 269, 270, 856, - 857, 273, 0, 274, 275, 276, 277, 0, 0, 279, - 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 0, 290, 291, 292, 293, 294, 295, 0, 296, - 297, 298, 299, 0, 0, 0, 300, 0, 0, 0, - 301, 302, 303, 304, 305, 306, 858, 859, 309, 0, - 310, 0, 311, 312, 313, 314, 315, 316, 317, 0, - 318, 319, 320, 321, 0, 0, 322, 323, 860, 325, - 326, 0, 327, 328, 329, 0, 330, 331, 332, 0, - 333, 334, 335, 336, 0, 338, 339, 340, 341, 0, - 0, 343, 0, 344, 345, 346, 861, 348, 0, 349, - 0, 350, 351, 0, 352, 353, 354, 355, 356, 0, - 357, 0, 0, 0, 360, 361, 0, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 378, 0, 379, 380, 0, 382, - 383, 384, 385, 862, 863, 0, 864, 0, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 0, 0, - 399, 0, 401, 402, 403, 0, 404, 405, 406, 0, - 0, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 865, - 426, 866, 428, 429, 430, 431, 432, 433, 434, 0, - 0, 437, 0, 438, 439, 440, 441, 0, 0, 443, - 867, 445, 446, 447, 0, 448, 449, 0, 0, 450, - 451, 452, 0, 0, 453, 454, 0, 456, 457, 458, - 0, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 0, 470, 471, 0, 473, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 868, 489, 490, 491, 492, 0, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, - 0, 506, 507, 508, 509, 510, 511, 512, 513, 0, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, - 524, 525, 526, 527, 528, 0, 529, 530, 0, 532, - 533, 534, 535, 536, 870, 538, 0, 539, 540, 541, - 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 0, 553, 0, 554, 555, 0, 556, 557, 558, 559, - 560, 561, 562, 0, 563, 871, 872, 0, 0, 566, - 567, 0, 569, 0, 0, 571, 572, 573, 574, 575, - 576, 577, 578, 0, 0, 579, 580, 581, 582, 583, - 0, 0, 584, 585, 586, 587, 588, 0, 873, 0, - 591, 592, 593, 594, 595, 596, 0, 0, 597, 0, - 0, 598, 599, 600, 601, 602, 603, 852, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 615, 616, - 617, 0, 0, 0, 0, 0, 235, 236, 237, 238, - 239, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 0, 0, 0, 0, 246, 247, 248, 0, 249, - 250, 251, 252, 253, 254, 255, 256, 0, 0, 259, - 0, 0, 0, 262, 263, 264, 265, 266, 267, 268, - 0, 0, 269, 270, 0, 0, 273, 0, 274, 275, - 276, 277, 0, 0, 279, 0, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 0, 290, 291, 292, - 293, 294, 295, 0, 296, 297, 298, 299, 0, 0, - 0, 300, 0, 0, 0, 301, 302, 303, 304, 305, - 306, 0, 0, 309, 0, 310, 0, 311, 312, 313, - 314, 315, 316, 317, 0, 318, 319, 320, 321, 0, - 0, 322, 323, 324, 325, 326, 0, 327, 328, 329, - 0, 330, 331, 332, 0, 333, 334, 335, 336, 0, - 338, 339, 340, 341, 0, 0, 343, 0, 344, 345, - 346, 0, 348, 0, 349, 0, 350, 351, 0, 352, - 353, 354, 355, 356, 0, 357, 0, 0, 0, 360, - 361, 0, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 378, - 0, 379, 380, 0, 382, 383, 384, 385, 0, 0, - 0, 0, 0, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 0, 0, 399, 0, 401, 402, 403, - 0, 404, 405, 406, 0, 0, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 0, 426, 0, 428, 429, 430, - 431, 432, 433, 434, 0, 0, 437, 0, 438, 439, - 440, 441, 0, 0, 443, 0, 445, 446, 447, 0, - 448, 449, 0, 0, 450, 451, 452, 0, 0, 453, - 454, 0, 456, 457, 458, 0, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 0, 470, 471, 0, - 473, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 0, 489, 490, 491, - 492, 0, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 0, 506, 507, 508, 509, - 510, 511, 512, 513, 0, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 0, 524, 525, 526, 527, 528, - 0, 529, 530, 0, 532, 533, 534, 535, 536, 0, - 538, 0, 539, 540, 541, 542, 543, 544, 545, 546, - 547, 548, 549, 550, 551, 0, 553, 0, 554, 555, - 0, 556, 557, 558, 559, 560, 561, 562, 0, 563, - 0, 0, 0, 0, 566, 567, 0, 569, 0, 0, - 571, 572, 573, 574, 575, 576, 577, 578, 0, 0, - 579, 580, 581, 582, 583, 0, 0, 584, 585, 586, - 587, 588, 0, 0, 0, 591, 592, 593, 594, 595, - 596, 0, 0, 597, 0, 0, 598, 599, 600, 601, - 602, 603, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 615, 616, 617 -}; - -static const yytype_int16 yycheck[] = -{ - 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 56, 0, 211, 0, 206, 0, 984, 0, 0, 0, - 951, 0, 214, 21, 0, 217, 0, 21, 0, 211, - 1012, 189, 913, 653, 816, 36, 766, 767, 768, 1020, - 1136, 45, 772, 1001, 8, 51, 1613, 813, 1458, 1486, - 907, 15, 909, 2682, 887, 1014, 869, 1532, 985, 22, - 632, 1197, 840, 1010, 1016, 28, 1548, 197, 685, 1525, - 858, 859, 2624, 1086, 726, 1240, 2625, 1228, 792, 867, - 839, 823, 3303, 2974, 3305, 3148, 1852, 3001, 3039, 1020, - 730, 3125, 925, 872, 1537, 1532, 3394, 3789, 3838, 6, - 3595, 1982, 1060, 3488, 2000, 3515, 1064, 1681, 216, 4100, - 708, 1069, 23, 685, 950, 1525, 1578, 1579, 4190, 2893, - 1582, 1079, 230, 3741, 722, 36, 4147, 634, 4143, 3541, - 3354, 3543, 3404, 2986, 1092, 3805, 2046, 3816, 2048, 975, - 4626, 3348, 1415, 721, 980, 731, 2, 191, 44, 4440, - 4423, 5089, 4428, 1515, 4225, 4944, 3368, 1923, 706, 5216, - 732, 709, 4385, 35, 175, 1123, 1648, 1649, 4936, 2022, - 42, 50, 4887, 984, 4724, 41, 4642, 936, 4644, 191, - 2611, 2541, 993, 2500, 2609, 2646, 2647, 3260, 2505, 5264, - 5131, 197, 1003, 4691, 3414, 3402, 3803, 2871, 4122, 1642, - 206, 207, 819, 1125, 4427, 5492, 910, 1075, 214, 1131, - 216, 217, 910, 1575, 1498, 5252, 6, 934, 790, 1141, - 4935, 4567, 1090, 1145, 230, 13, 1669, 1149, 2588, 1151, - 1592, 0, 5173, 11, 6, 1157, 3353, 0, 3355, 0, - 55, 1163, 6, 0, 1166, 79, 95, 819, 12, 5180, - 5181, 15, 16, 5476, 13, 6, 48, 64, 975, 39, - 6, 12, 120, 980, 30, 1024, 12, 856, 857, 15, - 16, 37, 844, 15, 6, 6, 6, 866, 11, 64, - 12, 12, 12, 6, 0, 2939, 147, 2941, 2942, 12, - 120, 174, 2946, 2947, 2948, 11, 2950, 2951, 2952, 36, - 174, 0, 175, 92, 6, 0, 6, 125, 2982, 191, - 12, 181, 12, 181, 30, 64, 11, 64, 86, 169, - 26, 6, 21, 44, 1054, 64, 13, 12, 6, 225, - 15, 16, 904, 174, 12, 30, 6, 44, 6, 64, - 6, 33, 12, 5737, 12, 4417, 12, 6, 120, 73, - 64, 113, 122, 186, 288, 120, 153, 56, 5, 46, - 5, 174, 5205, 175, 11, 174, 11, 30, 92, 1831, - 4441, 4515, 4516, 4517, 37, 4519, 4520, 4521, 4522, 4523, - 174, 4931, 283, 64, 283, 1099, 6, 69, 5675, 283, - 323, 64, 79, 198, 212, 28, 92, 31, 5834, 274, - 280, 120, 174, 43, 198, 174, 360, 377, 309, 13, - 309, 174, 1359, 174, 1427, 309, 364, 174, 51, 1371, - 5811, 5812, 320, 378, 120, 335, 1357, 151, 377, 198, - 277, 1362, 1363, 251, 140, 198, 1076, 198, 26, 40, - 36, 198, 46, 5666, 302, 174, 30, 171, 1020, 269, - 5391, 418, 418, 166, 653, 30, 1415, 5494, 174, 343, - 124, 48, 37, 166, 81, 6003, 174, 1419, 120, 330, - 1258, 1259, 152, 463, 122, 79, 304, 405, 288, 174, - 4726, 3, 198, 5, 6, 5253, 461, 4733, 174, 11, - 12, 1279, 191, 30, 484, 92, 308, 13, 174, 348, - 360, 174, 1216, 198, 703, 81, 73, 81, 273, 484, - 1289, 13, 502, 441, 24, 343, 92, 169, 92, 24, - 200, 52, 420, 343, 81, 228, 492, 5814, 6066, 130, - 46, 506, 392, 81, 418, 81, 506, 384, 504, 506, - 846, 81, 349, 651, 454, 1143, 81, 502, 502, 657, - 1309, 264, 140, 1478, 502, 219, 196, 506, 154, 278, - 5996, 669, 442, 79, 349, 440, 464, 226, 502, 502, - 2582, 383, 1503, 125, 222, 1527, 154, 273, 1337, 213, - 213, 125, 1513, 380, 151, 5976, 10, 269, 125, 13, - 448, 1177, 136, 17, 18, 19, 5439, 321, 120, 364, - 349, 502, 349, 502, 171, 418, 1204, 4225, 502, 418, - 349, 5077, 374, 446, 6008, 5902, 1233, 1215, 142, 127, - 502, 387, 440, 506, 349, 273, 632, 125, 1416, 502, - 5213, 1229, 506, 4251, 423, 349, 506, 5674, 506, 638, - 638, 502, 638, 638, 502, 651, 418, 638, 153, 638, - 1608, 657, 502, 1611, 346, 447, 33, 506, 1247, 1248, - 212, 1233, 492, 669, 432, 506, 500, 461, 349, 1600, - 504, 377, 1603, 1604, 444, 212, 24, 5900, 5024, 685, - 5611, 418, 403, 331, 690, 1274, 732, 502, 5975, 695, - 1501, 364, 1619, 699, 700, 217, 403, 1679, 1680, 506, - 706, 506, 708, 709, 4396, 493, 494, 495, 496, 497, - 498, 435, 502, 1997, 1582, 721, 722, 239, 5486, 451, - 492, 506, 502, 501, 387, 736, 732, 1563, 1380, 313, - 1677, 6018, 504, 731, 440, 245, 505, 1354, 502, 498, - 4150, 1445, 505, 5818, 505, 4437, 4670, 1445, 505, 500, - 492, 502, 1563, 504, 321, 913, 502, 506, 500, 506, - 493, 494, 504, 4258, 1632, 1633, 4436, 506, 5805, 4264, - 502, 502, 502, 502, 394, 395, 5833, 493, 494, 502, - 453, 506, 1354, 746, 790, 748, 1599, 750, 372, 505, - 1362, 1363, 506, 756, 502, 463, 760, 463, 493, 494, - 502, 418, 502, 1392, 1393, 1686, 1523, 813, 814, 5750, - 505, 498, 387, 819, 461, 1951, 484, 502, 484, 350, - 506, 418, 5763, 4441, 502, 506, 410, 26, 412, 1925, - 506, 418, 502, 370, 502, 1034, 502, 484, 844, 1031, - 846, 4065, 418, 1035, 418, 1037, 493, 494, 493, 494, - 22, 174, 1034, 4997, 1813, 360, 28, 901, 506, 1576, - 447, 418, 1958, 869, 1795, 1171, 290, 5904, 435, 4076, - 418, 5369, 418, 4080, 1970, 380, 1593, 3950, 418, 457, - 4487, 3915, 778, 418, 5673, 891, 3, 113, 440, 901, - 1815, 495, 496, 497, 498, 1025, 440, 245, 904, 409, - 114, 24, 5670, 440, 903, 903, 903, 903, 903, 903, - 903, 903, 903, 3490, 903, 4135, 903, 289, 903, 3, - 903, 903, 903, 3776, 903, 6, 113, 903, 438, 903, - 927, 903, 103, 457, 442, 5876, 4346, 5974, 5653, 638, - 5490, 140, 440, 3374, 840, 51, 169, 4064, 3373, 4066, - 1570, 817, 113, 463, 5669, 821, 3417, 3317, 3419, 218, - 4345, 3635, 3636, 64, 1832, 289, 3640, 125, 847, 346, - 309, 493, 494, 38, 91, 150, 1898, 493, 494, 495, - 496, 497, 498, 360, 1906, 362, 77, 153, 202, 3001, - 169, 1498, 502, 495, 496, 497, 498, 125, 6055, 5582, - 406, 6, 1308, 176, 5587, 5588, 1012, 1013, 1014, 26, - 64, 6, 183, 269, 1020, 32, 364, 89, 186, 1025, - 5243, 269, 918, 59, 1030, 1031, 5815, 144, 24, 1035, - 41, 1037, 731, 732, 65, 1041, 120, 933, 5806, 4251, - 174, 216, 73, 186, 55, 176, 423, 1999, 122, 1579, - 10, 1057, 1582, 5825, 212, 120, 120, 17, 18, 19, - 132, 409, 171, 202, 198, 3719, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 190, 5147, 283, 5377, 120, - 1386, 294, 5548, 24, 212, 24, 5107, 4472, 3405, 461, - 438, 2043, 136, 129, 1100, 418, 1102, 1103, 269, 3773, - 111, 269, 6, 309, 24, 304, 6044, 113, 12, 294, - 4408, 175, 2071, 364, 89, 463, 294, 989, 990, 294, - 309, 5910, 245, 140, 292, 242, 269, 362, 115, 503, - 502, 1861, 506, 3, 748, 749, 750, 1143, 253, 753, - 754, 755, 466, 302, 343, 5917, 1452, 6, 222, 763, - 364, 5825, 325, 10, 502, 6093, 13, 132, 89, 290, - 17, 18, 19, 502, 5236, 1171, 345, 10, 212, 492, - 13, 328, 288, 3750, 17, 18, 19, 26, 377, 1177, - 406, 504, 5458, 24, 5973, 1967, 1968, 304, 423, 273, - 446, 405, 406, 36, 278, 286, 5985, 278, 1204, 273, - 211, 132, 901, 190, 903, 26, 1778, 1213, 239, 1215, - 274, 5484, 5488, 5504, 380, 269, 1180, 4957, 1182, 406, - 1184, 91, 1186, 1229, 1188, 1189, 1190, 1233, 4920, 294, - 6019, 1195, 480, 4147, 5457, 307, 2646, 377, 461, 1245, - 133, 364, 370, 5917, 415, 406, 445, 506, 349, 245, - 143, 502, 1108, 368, 4933, 6027, 4926, 331, 269, 434, - 6049, 302, 1308, 269, 5487, 396, 253, 406, 426, 256, - 1276, 2746, 2715, 278, 144, 4685, 1928, 24, 446, 24, - 3741, 2040, 440, 278, 6073, 5584, 409, 304, 502, 448, - 503, 140, 409, 506, 411, 349, 502, 1895, 1304, 1305, - 1306, 1831, 1308, 446, 245, 1957, 245, 2580, 185, 1961, - 1888, 1909, 440, 502, 1966, 438, 125, 1969, 135, 140, - 3, 506, 1328, 377, 1922, 245, 343, 24, 506, 370, - 290, 140, 307, 3345, 377, 29, 3348, 122, 168, 411, - 463, 198, 1920, 53, 1892, 502, 3199, 3200, 1354, 1935, - 2793, 3204, 5367, 6027, 2928, 366, 1362, 1363, 377, 1907, - 377, 5847, 1910, 220, 1375, 406, 506, 377, 364, 360, - 3831, 1570, 242, 2735, 278, 112, 307, 220, 442, 502, - 1386, 368, 3394, 636, 500, 1834, 1430, 1431, 504, 1433, - 3402, 418, 3245, 3246, 289, 303, 4668, 176, 92, 3309, - 2020, 5473, 249, 4627, 245, 1854, 115, 448, 91, 1415, - 5482, 304, 1960, 409, 224, 406, 1964, 1965, 1430, 1431, - 461, 1433, 99, 364, 4631, 364, 1432, 492, 150, 4636, - 1436, 1437, 4639, 290, 304, 500, 411, 502, 503, 504, - 183, 506, 438, 484, 364, 3, 1452, 290, 6, 30, - 343, 3018, 1458, 330, 12, 304, 273, 289, 320, 269, - 5532, 502, 145, 506, 345, 198, 4500, 463, 409, 339, - 409, 292, 4884, 343, 289, 728, 4510, 347, 1177, 506, - 411, 190, 176, 193, 361, 99, 316, 506, 198, 409, - 1997, 26, 479, 278, 343, 4409, 506, 438, 245, 438, - 245, 253, 4453, 180, 224, 119, 502, 377, 177, 318, - 26, 290, 114, 250, 236, 502, 32, 254, 438, 1525, - 2502, 204, 463, 364, 463, 235, 347, 348, 377, 5147, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 409, - 154, 411, 1241, 463, 253, 336, 225, 256, 245, 269, - 5571, 1447, 2504, 1449, 135, 808, 377, 115, 420, 461, - 1566, 502, 1261, 502, 1178, 420, 461, 1181, 409, 1183, - 380, 1185, 5242, 1187, 746, 5254, 748, 1191, 750, 355, - 461, 3037, 502, 5655, 756, 757, 758, 1584, 135, 695, - 137, 461, 1589, 1599, 5585, 303, 186, 438, 39, 154, - 202, 502, 464, 484, 506, 140, 120, 360, 154, 1308, - 343, 331, 355, 304, 347, 721, 368, 364, 2540, 364, - 61, 2580, 463, 3033, 140, 506, 163, 3037, 311, 461, - 440, 325, 190, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 4416, 157, 377, 122, 461, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 447, 326, 1664, 368, - 380, 502, 409, 732, 409, 441, 1663, 364, 362, 377, - 1667, 112, 382, 1679, 1680, 1681, 5428, 191, 5430, 269, - 4334, 124, 5434, 5435, 292, 4339, 377, 440, 30, 2670, - 359, 438, 1998, 438, 2000, 253, 304, 2829, 256, 236, - 2006, 1893, 122, 372, 1903, 1904, 2012, 2013, 2014, 163, - 4624, 30, 409, 33, 304, 169, 463, 2023, 463, 13, - 440, 790, 1904, 2029, 304, 339, 273, 421, 461, 423, - 5802, 1430, 1431, 427, 1433, 343, 4410, 5144, 407, 2670, - 60, 438, 1638, 4372, 100, 222, 5908, 5909, 285, 169, - 433, 484, 1882, 343, 5745, 502, 370, 502, 441, 273, - 201, 444, 364, 343, 4225, 84, 463, 26, 87, 304, - 479, 461, 1778, 32, 93, 844, 219, 2909, 88, 951, - 362, 5188, 236, 5475, 1790, 79, 206, 370, 304, 452, - 4251, 10, 406, 135, 13, 1801, 273, 377, 17, 18, - 19, 122, 121, 405, 406, 502, 303, 1813, 343, 250, - 368, 1817, 461, 254, 5493, 370, 506, 36, 2777, 175, - 303, 2020, 73, 406, 370, 452, 5898, 343, 269, 2642, - 1836, 285, 5502, 503, 448, 904, 506, 123, 1844, 502, - 2622, 423, 377, 458, 2803, 453, 1852, 461, 1020, 269, - 249, 406, 208, 273, 331, 165, 446, 506, 6020, 178, - 406, 377, 303, 0, 1870, 448, 5073, 223, 123, 120, - 484, 2839, 191, 1879, 273, 502, 1882, 233, 123, 1885, - 377, 140, 1888, 1889, 203, 206, 1892, 1893, 502, 1895, - 1896, 506, 5913, 448, 377, 1584, 5281, 442, 5970, 169, - 1589, 1907, 448, 1909, 1910, 261, 461, 348, 194, 386, - 180, 442, 2843, 1919, 1920, 461, 1922, 1923, 505, 502, - 2851, 479, 502, 2854, 1030, 347, 4989, 178, 198, 484, - 371, 461, 288, 10, 2745, 1041, 13, 1935, 484, 194, - 17, 18, 19, 2902, 5696, 179, 5686, 502, 269, 194, - 391, 1057, 273, 492, 1960, 377, 502, 502, 1964, 1965, - 163, 10, 39, 294, 13, 504, 3062, 94, 17, 18, - 19, 502, 506, 1937, 1663, 1939, 506, 1941, 1667, 1943, - 4441, 1945, 163, 1982, 1982, 1949, 1982, 1982, 169, 5668, - 1991, 1982, 1998, 1982, 2000, 4886, 4910, 5667, 354, 2005, - 2006, 220, 6023, 282, 3414, 239, 2012, 2013, 2014, 2968, - 137, 2017, 304, 2019, 3424, 2021, 2022, 2023, 2024, 2025, - 2026, 2889, 273, 2029, 175, 2031, 2032, 278, 2839, 2035, - 304, 420, 273, 236, 4925, 3931, 367, 278, 5101, 304, - 5103, 2922, 2923, 2924, 5456, 2051, 2052, 2053, 2054, 3505, - 36, 343, 4905, 3620, 5275, 236, 2892, 208, 423, 13, - 2819, 461, 503, 2069, 4076, 2071, 2877, 3232, 4080, 343, - 321, 290, 223, 347, 393, 464, 364, 396, 343, 1990, - 176, 1977, 233, 353, 484, 377, 337, 2817, 329, 2819, - 70, 71, 46, 304, 304, 3505, 3054, 5507, 2670, 323, - 2911, 335, 502, 377, 285, 393, 3872, 1213, 3961, 3962, - 3963, 3964, 377, 209, 3967, 3968, 3969, 3970, 3971, 3972, - 3973, 3974, 3975, 3976, 3698, 79, 170, 347, 5807, 3051, - 3704, 3593, 343, 343, 3056, 4147, 3058, 3005, 3006, 3007, - 3008, 348, 3010, 220, 5529, 2743, 3068, 112, 1576, 3071, - 304, 3073, 3074, 15, 16, 3077, 6, 377, 39, 3081, - 204, 3083, 12, 73, 3086, 1593, 377, 3035, 263, 79, - 377, 220, 4025, 4026, 92, 4056, 410, 3, 412, 5093, - 61, 3112, 92, 5481, 435, 1357, 360, 26, 362, 343, - 1362, 1363, 287, 5107, 4848, 331, 4850, 4851, 4852, 3642, - 4874, 27, 4876, 354, 438, 170, 2212, 500, 344, 248, - 120, 504, 122, 290, 370, 2867, 5437, 2869, 1390, 461, - 454, 2873, 5914, 377, 5903, 343, 454, 1399, 3150, 1401, - 179, 112, 100, 1405, 273, 343, 1935, 373, 418, 204, - 1412, 290, 484, 3408, 3687, 335, 2252, 150, 5743, 423, - 406, 335, 91, 2559, 367, 503, 81, 5291, 506, 377, - 163, 179, 442, 169, 3223, 91, 169, 92, 178, 377, - 3229, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 410, 371, 412, 1982, 202, 250, 192, 371, 304, 254, - 239, 302, 448, 463, 133, 169, 206, 178, 3028, 2305, - 249, 140, 49, 5, 143, 461, 6, 175, 410, 11, - 412, 169, 12, 216, 484, 463, 406, 19, 192, 145, - 201, 239, 406, 339, 226, 72, 979, 343, 484, 2028, - 3812, 1503, 502, 236, 192, 37, 484, 501, 5748, 5749, - 208, 1513, 506, 28, 461, 998, 502, 2987, 1001, 5570, - 5264, 81, 6081, 288, 6083, 223, 15, 16, 293, 370, - 6052, 377, 92, 273, 454, 233, 51, 484, 278, 250, - 454, 6, 198, 254, 6103, 293, 497, 12, 204, 3310, - 502, 502, 285, 504, 5393, 1557, 1558, 497, 269, 5398, - 5399, 294, 502, 261, 504, 406, 4408, 4409, 252, 6, - 6, 6, 502, 34, 35, 12, 12, 12, 5322, 503, - 423, 321, 506, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 303, 3304, 2573, 2574, 2575, 337, 1600, 3143, - 3144, 1603, 1604, 6, 100, 501, 345, 448, 177, 12, - 506, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 461, 274, 275, 500, 367, 502, 6, 3109, 5, 5869, - 1566, 410, 12, 412, 11, 304, 5, 348, 99, 502, - 96, 504, 11, 484, 2480, 2481, 2482, 2483, 2484, 2485, - 2486, 2487, 2488, 249, 2490, 311, 354, 249, 119, 438, - 371, 502, 410, 2499, 412, 5, 2502, 6, 5114, 5115, - 339, 11, 6, 12, 343, 423, 6, 2706, 12, 175, - 391, 4364, 12, 2705, 288, 2707, 2708, 435, 2217, 293, - 438, 495, 202, 154, 2706, 435, 500, 495, 502, 355, - 504, 434, 500, 3455, 502, 975, 504, 2543, 377, 5193, - 980, 2547, 208, 252, 2550, 384, 2552, 370, 2542, 2555, - 3329, 3330, 5962, 2559, 22, 34, 35, 223, 5509, 500, - 28, 502, 192, 504, 3491, 3307, 423, 233, 265, 266, - 267, 268, 2702, 502, 2580, 504, 2582, 3212, 404, 3214, - 3215, 503, 3415, 406, 506, 461, 503, 463, 503, 506, - 3517, 506, 410, 2599, 412, 261, 503, 150, 503, 506, - 3359, 506, 2608, 2609, 3526, 503, 3528, 433, 506, 454, - 163, 503, 4624, 88, 506, 441, 169, 60, 444, 4631, - 359, 367, 288, 1795, 4636, 448, 365, 4639, 452, 2635, - 4197, 2627, 503, 372, 2742, 506, 2642, 3425, 461, 226, - 2646, 2647, 5863, 150, 3596, 2033, 3266, 2653, 2036, 11, - 503, 2657, 4418, 506, 502, 2661, 163, 5571, 5711, 5712, - 275, 484, 169, 216, 2670, 3801, 503, 503, 407, 506, - 506, 2672, 502, 2674, 503, 2582, 288, 506, 5741, 502, - 405, 3492, 2688, 236, 1790, 2691, 5147, 506, 354, 503, - 429, 503, 506, 364, 506, 1801, 2702, 5371, 2704, 2705, - 503, 2707, 2708, 506, 2710, 5379, 5380, 503, 339, 216, - 506, 1817, 4187, 4195, 503, 4197, 2722, 506, 503, 503, - 2828, 506, 506, 503, 503, 4135, 506, 506, 503, 236, - 4173, 506, 285, 461, 502, 463, 2742, 2743, 3310, 370, - 503, 294, 60, 506, 503, 2751, 503, 506, 3670, 506, - 503, 360, 361, 506, 3676, 370, 454, 3568, 5672, 503, - 360, 361, 506, 3914, 1870, 360, 361, 2773, 2774, 3782, - 503, 2777, 88, 506, 503, 406, 442, 506, 285, 1885, - 49, 3740, 1888, 1889, 63, 481, 3744, 294, 4231, 503, - 3442, 406, 506, 5840, 5841, 2801, 10, 2803, 222, 13, - 2908, 2807, 291, 6024, 503, 5354, 5267, 506, 503, 503, - 291, 506, 506, 1919, 1920, 2821, 504, 448, 2714, 98, - 503, 452, 2828, 506, 503, 2831, 503, 506, 288, 506, - 461, 2837, 46, 448, 169, 503, 2008, 2009, 506, 53, - 481, 3439, 3440, 2015, 2016, 503, 461, 503, 506, 2548, - 506, 2857, 3469, 484, 291, 503, 503, 2863, 506, 506, - 461, 3591, 463, 6084, 2870, 79, 3596, 360, 361, 484, - 3738, 502, 54, 55, 135, 2047, 137, 288, 2884, 503, - 159, 434, 506, 2582, 49, 481, 503, 502, 503, 506, - 505, 2897, 410, 222, 412, 3201, 2902, 3469, 4910, 135, - 161, 137, 2908, 2866, 5818, 503, 503, 3213, 506, 506, - 5801, 135, 150, 137, 495, 503, 195, 2813, 506, 173, - 2926, 2927, 2928, 506, 502, 163, 2932, 434, 2627, 503, - 502, 169, 506, 3647, 148, 451, 503, 161, 3860, 506, - 3862, 503, 3864, 3249, 506, 2051, 503, 500, 4430, 506, - 503, 504, 231, 2959, 2960, 4120, 5054, 503, 503, 5057, - 506, 506, 2968, 3155, 317, 3157, 3158, 503, 503, 503, - 506, 506, 506, 503, 503, 502, 506, 506, 216, 193, - 503, 38, 503, 506, 198, 506, 3292, 3585, 4425, 503, - 4446, 3922, 506, 5907, 273, 3001, 60, 503, 236, 5913, - 506, 503, 503, 505, 265, 266, 267, 268, 503, 3607, - 505, 272, 4148, 4149, 502, 5567, 4152, 278, 503, 174, - 503, 235, 3152, 506, 3020, 10, 305, 3033, 13, 218, - 218, 3037, 17, 18, 19, 4047, 4446, 4049, 3997, 502, - 3770, 265, 266, 267, 268, 502, 504, 285, 272, 273, - 503, 36, 4004, 506, 278, 503, 294, 503, 506, 503, - 506, 5073, 506, 503, 465, 343, 506, 3266, 347, 503, - 349, 503, 506, 352, 506, 503, 290, 503, 506, 502, - 506, 5093, 361, 503, 503, 503, 506, 506, 506, 503, - 369, 198, 506, 503, 3001, 5107, 506, 503, 377, 503, - 506, 503, 506, 4050, 506, 503, 502, 155, 506, 6023, - 389, 503, 503, 503, 506, 506, 506, 3123, 503, 398, - 3898, 506, 503, 402, 503, 506, 4615, 506, 4617, 3746, - 4081, 3748, 4083, 3139, 503, 3141, 3788, 506, 39, 504, - 503, 4093, 3148, 506, 502, 155, 3152, 10, 3154, 3155, - 13, 3157, 3158, 3159, 288, 3201, 503, 5010, 198, 506, - 61, 3167, 343, 3761, 425, 3763, 3172, 288, 382, 3368, - 1447, 155, 1449, 4740, 3746, 436, 3748, 456, 4130, 155, - 198, 155, 288, 46, 343, 155, 169, 234, 122, 442, - 53, 5820, 288, 3199, 3200, 3201, 434, 502, 3204, 282, - 169, 425, 503, 3249, 73, 273, 3212, 3213, 3214, 3215, - 39, 112, 436, 3830, 273, 465, 79, 3223, 502, 288, - 273, 49, 3228, 3229, 273, 3231, 49, 3233, 428, 273, - 55, 91, 304, 3885, 454, 220, 454, 423, 4196, 3245, - 3246, 169, 324, 3249, 155, 4720, 155, 502, 155, 155, - 465, 155, 5264, 155, 506, 155, 155, 155, 3830, 155, - 155, 155, 3268, 155, 3270, 4224, 3272, 4226, 482, 155, - 155, 155, 169, 155, 288, 406, 101, 502, 39, 493, - 494, 495, 496, 497, 498, 148, 3292, 234, 169, 169, - 288, 4250, 502, 3297, 3298, 3299, 502, 502, 169, 502, - 201, 126, 3348, 502, 3310, 290, 502, 502, 502, 39, - 5322, 502, 502, 280, 462, 3913, 39, 502, 502, 144, - 4251, 3020, 502, 148, 502, 502, 502, 502, 502, 502, - 193, 61, 4165, 4469, 502, 198, 502, 300, 502, 3345, - 502, 502, 3348, 10, 4132, 170, 13, 103, 173, 250, - 502, 502, 3398, 254, 3360, 502, 502, 87, 502, 3365, - 218, 506, 234, 188, 39, 506, 502, 38, 269, 502, - 416, 416, 235, 500, 3380, 500, 418, 418, 174, 46, - 418, 418, 112, 113, 4342, 169, 53, 506, 3394, 169, - 120, 377, 6021, 4320, 285, 283, 3402, 69, 2570, 2571, - 364, 418, 303, 418, 2576, 418, 418, 364, 3414, 504, - 453, 3417, 79, 3419, 418, 418, 364, 236, 3424, 418, - 80, 418, 492, 418, 92, 364, 155, 290, 0, 288, - 231, 369, 278, 3439, 3440, 128, 2608, 2609, 3345, 3445, - 418, 3348, 309, 5296, 409, 418, 418, 348, 178, 4330, - 441, 288, 360, 278, 191, 92, 283, 418, 418, 128, - 3466, 304, 198, 3469, 155, 442, 3472, 502, 502, 5481, - 371, 201, 5325, 506, 3480, 418, 442, 418, 418, 128, - 114, 148, 418, 418, 128, 418, 418, 3394, 418, 418, - 391, 418, 60, 60, 418, 3402, 258, 418, 2670, 3505, - 418, 292, 3201, 418, 329, 490, 491, 492, 493, 494, - 495, 496, 497, 498, 328, 418, 328, 328, 48, 382, - 250, 309, 409, 309, 254, 418, 193, 99, 418, 418, - 48, 198, 503, 220, 220, 3541, 3542, 3543, 506, 269, - 418, 418, 3741, 273, 418, 507, 4956, 288, 288, 428, - 3249, 502, 418, 39, 220, 220, 220, 220, 220, 5571, - 3566, 4483, 220, 4494, 4486, 220, 220, 155, 235, 3575, - 288, 3577, 3271, 303, 155, 273, 120, 442, 150, 3585, - 155, 155, 2754, 453, 155, 288, 242, 39, 3287, 273, - 4512, 163, 273, 273, 39, 226, 169, 169, 2704, 366, - 155, 3607, 174, 155, 2710, 155, 442, 442, 180, 155, - 418, 183, 282, 174, 13, 187, 277, 457, 348, 482, - 258, 416, 258, 290, 418, 183, 502, 502, 164, 502, - 493, 494, 495, 496, 497, 498, 368, 420, 502, 481, - 502, 371, 503, 191, 216, 2751, 3345, 503, 502, 3348, - 3956, 506, 191, 506, 503, 500, 503, 481, 256, 503, - 5672, 391, 503, 393, 236, 3671, 396, 216, 458, 380, - 224, 2843, 506, 289, 506, 39, 442, 442, 297, 2851, - 60, 503, 2854, 453, 3990, 364, 502, 3693, 442, 224, - 224, 278, 3698, 278, 2866, 3394, 418, 418, 3704, 3398, - 502, 10, 418, 3402, 13, 169, 288, 3713, 17, 18, - 19, 4663, 278, 285, 49, 382, 288, 273, 288, 234, - 234, 234, 294, 252, 288, 360, 418, 36, 128, 386, - 506, 4037, 409, 198, 3740, 3741, 343, 288, 506, 192, - 3746, 288, 3748, 288, 377, 374, 461, 331, 503, 39, - 220, 294, 442, 442, 226, 3761, 283, 3763, 327, 4895, - 155, 492, 169, 39, 407, 418, 4579, 10, 418, 454, - 13, 328, 502, 171, 17, 18, 19, 3783, 502, 351, - 4702, 374, 155, 502, 155, 155, 283, 461, 273, 4646, - 442, 39, 4390, 4391, 273, 288, 28, 288, 226, 283, - 4731, 189, 189, 3809, 169, 39, 5818, 170, 226, 374, - 169, 5248, 288, 273, 198, 482, 198, 198, 506, 3815, - 198, 4743, 4744, 198, 3830, 3831, 493, 494, 495, 496, - 497, 498, 27, 506, 406, 465, 4488, 4489, 4490, 4491, - 4492, 181, 418, 174, 255, 504, 461, 3853, 288, 60, - 282, 502, 174, 174, 2960, 3851, 502, 10, 506, 506, - 13, 506, 434, 503, 503, 51, 3872, 300, 135, 310, - 481, 503, 174, 299, 502, 4033, 503, 503, 503, 272, - 503, 503, 506, 503, 502, 3891, 458, 418, 460, 461, - 503, 503, 4658, 46, 5376, 5907, 506, 503, 4856, 503, - 53, 5913, 502, 502, 249, 502, 501, 3913, 174, 501, - 3916, 220, 503, 502, 183, 440, 4838, 4839, 244, 288, - 506, 484, 448, 3819, 483, 458, 79, 3933, 500, 60, - 3936, 503, 504, 505, 288, 3941, 291, 3943, 288, 492, - 3112, 202, 502, 155, 418, 3951, 210, 3953, 278, 418, - 3956, 418, 158, 273, 3960, 3961, 3962, 3963, 3964, 418, - 502, 3967, 3968, 3969, 3970, 3971, 3972, 3973, 3974, 3975, - 3976, 155, 87, 377, 3980, 3981, 3982, 220, 502, 3985, - 369, 290, 155, 155, 3990, 4031, 369, 234, 202, 3995, - 369, 3997, 158, 3999, 288, 148, 492, 5850, 5851, 418, - 442, 4007, 3898, 158, 4010, 236, 4012, 364, 458, 439, - 311, 6023, 311, 158, 128, 418, 4022, 418, 246, 4025, - 4026, 393, 418, 246, 4030, 4031, 4225, 418, 246, 4649, - 364, 4037, 418, 3139, 273, 4039, 4040, 4041, 4042, 364, - 193, 418, 418, 155, 418, 198, 4968, 290, 3154, 4971, - 4972, 418, 4251, 3159, 364, 48, 418, 4056, 4056, 364, - 4056, 4056, 4068, 377, 503, 4056, 4988, 4056, 503, 418, - 4076, 418, 418, 220, 4080, 418, 503, 501, 220, 186, - 503, 503, 235, 292, 428, 506, 3, 169, 49, 113, - 503, 506, 169, 502, 39, 503, 155, 155, 492, 418, - 5510, 169, 283, 186, 442, 502, 4112, 155, 364, 442, - 364, 364, 364, 364, 506, 291, 3815, 374, 153, 4717, - 153, 220, 220, 4129, 220, 220, 220, 220, 220, 4135, - 220, 220, 500, 146, 13, 300, 3308, 290, 3310, 272, - 506, 4147, 503, 503, 174, 4875, 453, 503, 506, 223, - 503, 503, 3851, 501, 3326, 458, 223, 298, 408, 295, - 60, 503, 4168, 4815, 4816, 502, 4818, 503, 187, 4076, - 415, 503, 351, 4080, 502, 502, 447, 90, 502, 428, - 169, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 26, 39, 226, 418, 210, 60, 32, 155, 442, 409, - 3372, 3373, 5083, 393, 442, 178, 428, 369, 4806, 158, - 418, 418, 364, 4219, 418, 418, 5783, 418, 4224, 4225, - 4226, 364, 503, 503, 503, 343, 461, 502, 502, 382, - 60, 409, 448, 169, 288, 79, 155, 113, 503, 5198, - 4147, 77, 4441, 428, 4250, 4251, 220, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 220, 220, 220, 4565, - 502, 502, 205, 465, 224, 502, 288, 418, 39, 309, - 503, 286, 39, 3, 288, 502, 506, 506, 428, 45, - 506, 418, 502, 374, 503, 180, 113, 174, 220, 174, - 503, 4297, 60, 300, 4300, 1437, 63, 133, 503, 459, - 459, 223, 4265, 503, 140, 4903, 503, 143, 506, 503, - 503, 502, 460, 502, 4277, 502, 283, 492, 5414, 428, - 5416, 418, 174, 461, 10, 79, 204, 13, 415, 482, - 192, 98, 4031, 192, 170, 492, 278, 278, 60, 409, - 493, 494, 495, 496, 497, 498, 418, 73, 506, 418, - 506, 155, 418, 158, 418, 127, 220, 4056, 4364, 503, - 46, 176, 502, 120, 39, 198, 3472, 53, 204, 283, - 26, 374, 502, 39, 3480, 273, 32, 4076, 171, 442, - 374, 4080, 283, 461, 4390, 4391, 60, 85, 4394, 409, - 461, 47, 159, 79, 39, 4401, 174, 288, 502, 169, - 506, 338, 4408, 4409, 207, 291, 218, 390, 5544, 174, - 26, 447, 4418, 309, 5066, 503, 32, 502, 39, 503, - 367, 77, 82, 502, 92, 5077, 502, 136, 195, 337, - 503, 47, 288, 269, 5315, 4441, 199, 273, 4434, 418, - 4446, 4447, 4448, 5225, 5425, 5581, 5368, 283, 503, 39, - 4649, 155, 4458, 155, 169, 502, 292, 502, 502, 226, - 502, 77, 148, 418, 231, 502, 39, 278, 304, 3575, - 502, 3577, 442, 247, 502, 131, 502, 133, 503, 155, - 374, 113, 39, 292, 140, 503, 174, 143, 5108, 428, - 169, 5627, 5628, 4499, 5425, 388, 388, 503, 5420, 60, - 112, 4408, 4409, 502, 502, 502, 273, 193, 39, 695, - 346, 347, 198, 447, 170, 131, 506, 133, 506, 4525, - 502, 502, 457, 169, 140, 409, 191, 143, 409, 269, - 442, 4537, 202, 502, 6, 721, 288, 503, 305, 5159, - 162, 377, 465, 502, 361, 361, 73, 291, 204, 235, - 5148, 73, 505, 136, 170, 461, 461, 141, 457, 4565, - 166, 166, 4568, 446, 502, 3671, 506, 447, 36, 3741, - 4576, 4577, 502, 4579, 174, 377, 248, 409, 4584, 4585, - 347, 334, 278, 4589, 204, 352, 409, 4593, 204, 288, - 4596, 4597, 3764, 5552, 361, 4601, 288, 374, 502, 39, - 39, 4607, 369, 199, 290, 502, 291, 3713, 291, 445, - 377, 5533, 176, 269, 176, 154, 60, 273, 4624, 60, - 502, 39, 389, 344, 295, 4631, 503, 283, 414, 503, - 4636, 398, 60, 4639, 4640, 402, 292, 418, 5619, 397, - 5776, 4647, 125, 440, 6, 503, 374, 502, 304, 141, - 360, 151, 4658, 269, 421, 278, 502, 273, 5617, 414, - 4666, 502, 25, 360, 4660, 4661, 506, 283, 506, 5637, - 36, 82, 274, 418, 377, 174, 292, 502, 360, 296, - 4686, 5333, 4683, 869, 154, 274, 120, 343, 304, 456, - 346, 347, 506, 460, 388, 388, 382, 448, 4704, 461, - 461, 502, 176, 3809, 447, 176, 442, 5843, 5844, 4408, - 448, 4717, 502, 447, 503, 903, 5274, 4624, 2985, 943, - 1666, 377, 990, 2786, 4631, 3310, 989, 343, 2877, 4636, - 346, 347, 4639, 3517, 10, 4434, 4742, 13, 4224, 4199, - 5767, 17, 18, 19, 2903, 2957, 1363, 3853, 3732, 5201, - 3922, 5617, 4388, 4759, 5884, 5248, 4197, 5224, 4764, 4865, - 3446, 377, 4725, 3099, 5747, 4771, 5418, 5107, 5872, 5647, - 46, 5646, 4735, 5787, 5907, 3450, 4910, 53, 4409, 4435, - 4378, 4787, 4420, 5591, 2971, 2971, 4219, 3542, 4794, 445, - 3780, 4404, 4904, 985, 5231, 3824, 482, 4471, 5522, 5986, - 4806, 6096, 6078, 79, 5215, 3740, 4443, 493, 494, 495, - 496, 497, 498, 5799, 5161, 5396, 1825, 5600, 5164, 18, - 28, 634, 3889, 5366, 4499, 5982, 1012, 2987, 4446, 445, - 3936, 4837, 1868, 3424, 2647, 1865, 3835, 5510, 5274, 5411, - 1879, 1903, 1985, 686, 1030, 1985, 719, 3674, 2902, 4250, - 5825, 3593, 6027, 5425, 3960, 1041, 5586, 4863, 834, 4475, - 2933, 1482, 4477, 2589, 1205, 1778, 6046, 4662, 5363, 4127, - 5740, 1057, 1379, 4879, 40, 1338, 40, 3365, 4884, 3985, - 2022, 3380, 2599, 5728, 5564, 3348, 4082, 5074, 4065, 2031, - 3345, 5322, 5321, 3345, 4128, 6005, 5722, 4903, 5854, 1440, - 5551, 1439, 1442, 5884, 4910, 5300, 1396, 3999, 5565, 5108, - 5566, 2496, 2024, 3271, 3168, 2932, 3269, 193, 2587, 891, - 2499, -1, 198, -1, -1, -1, 4922, -1, -1, -1, - -1, -1, 4631, -1, -1, -1, -1, 4636, -1, -1, - 4639, -1, -1, -1, -1, 5867, 10, -1, 5147, 13, - 4956, -1, 4958, -1, -1, -1, -1, -1, -1, 235, - 5159, 4660, 4661, 5583, -1, -1, 5158, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5159, -1, -1, - -1, -1, 46, 4989, -1, -1, -1, -1, -1, 53, - -1, -1, -1, -1, -1, -1, 5302, -1, -1, -1, - -1, 5007, -1, 4910, 5010, -1, -1, 5013, 5014, 5015, - -1, 5203, -1, -1, 290, 79, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1213, -1, -1, - 5336, -1, 5038, 5039, -1, -1, 5042, 5343, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5619, -1, -1, - -1, -1, -1, 4225, -1, -1, -1, 5063, -1, -1, - -1, -1, -1, 5069, -1, -1, -1, 5073, -1, -1, - -1, 6030, -1, 5079, 5080, -1, -1, -1, -1, 4251, - -1, -1, -1, 6065, 148, -1, -1, 5093, -1, -1, - 5096, -1, -1, 4265, -1, 5101, -1, 5103, -1, -1, - -1, 5107, -1, 5409, 5410, 4277, 382, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 6078, - -1, -1, 5086, -1, -1, -1, -1, -1, -1, 193, - -1, -1, -1, -1, 198, -1, -1, 6096, -1, -1, - 6, 5147, 5148, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5158, -1, -1, -1, -1, 23, -1, 25, - -1, -1, -1, 29, -1, -1, 5073, -1, 34, 35, - 36, 235, 38, -1, -1, 41, 42, -1, 44, -1, - 46, 4353, 4354, -1, -1, -1, 5093, 53, 54, 55, - -1, -1, 5198, -1, -1, 5767, -1, 5203, 6079, -1, - 5107, -1, -1, -1, -1, -1, 482, -1, -1, -1, - -1, -1, -1, -1, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 4922, -1, -1, 290, -1, -1, -1, - -1, -1, -1, 5229, 5540, -1, -1, -1, 5968, 5969, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5560, -1, 5562, -1, 5264, -1, - -1, 5267, -1, -1, 5260, -1, -1, -1, -1, 4441, - -1, -1, 1458, -1, -1, 5274, 5274, 5274, 5274, 5274, - 5274, 5274, 5274, 5274, -1, 5274, -1, 5274, 4394, 5274, - 5296, 5274, 5274, 5274, 5300, 5274, 5302, 5343, 5274, -1, - 5274, -1, 5274, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5884, -1, -1, -1, 5322, -1, 382, 5325, - -1, 26, 4494, -1, -1, -1, -1, 32, -1, -1, - 5336, 197, 198, 199, -1, -1, 202, 5343, -1, 1525, - 206, -1, 208, -1, -1, 211, -1, -1, 214, -1, - -1, 217, -1, -1, 220, -1, 222, 5264, -1, 225, - -1, -1, -1, 229, -1, 231, -1, 5263, -1, -1, - -1, -1, 77, -1, 5073, -1, -1, -1, -1, -1, - 1566, -1, -1, -1, 5583, -1, -1, 5393, -1, -1, - -1, -1, 5398, 5399, -1, -1, -1, 5403, -1, -1, - -1, -1, -1, 5409, 5410, 5411, -1, -1, -1, -1, - -1, -1, -1, 1599, -1, 5322, -1, -1, 482, 5425, - -1, -1, -1, -1, -1, -1, -1, -1, 133, 493, - 494, 495, 496, 497, 498, 140, -1, -1, 143, 5445, - -1, -1, -1, -1, -1, -1, -1, 5453, -1, -1, - 5456, -1, -1, -1, -1, -1, -1, 2599, -1, -1, - -1, -1, -1, -1, -1, 170, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5481, -1, -1, -1, 6, - -1, -1, -1, -1, -1, -1, -1, 5483, -1, -1, - -1, -1, -1, 1679, 1680, 1681, -1, -1, -1, 204, - -1, -1, -1, -1, 5510, 5511, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5534, -1, - 5229, -1, -1, -1, 5540, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5551, 5552, -1, -1, 5555, - -1, -1, -1, 4725, 5560, -1, 5562, -1, 5564, 4731, - -1, 5260, 5754, 4735, 269, 5571, -1, -1, 273, -1, - -1, -1, 5568, -1, 5481, 5274, -1, -1, 283, -1, - -1, -1, -1, -1, -1, -1, 5592, 292, -1, -1, - 4762, 4763, -1, -1, -1, 4767, 4768, -1, 4704, 304, - -1, -1, -1, -1, 1790, -1, -1, -1, -1, -1, - -1, 5617, -1, 5619, -1, 1801, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1817, -1, -1, 5826, 5827, 4742, -1, 343, -1, - -1, 346, 347, -1, 5343, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 4764, 5965, - -1, -1, -1, -1, 5571, -1, 5672, -1, -1, -1, - 197, -1, 377, 63, -1, -1, -1, -1, -1, 206, - -1, -1, -1, -1, 1870, -1, -1, 214, -1, -1, - 217, -1, -1, -1, -1, -1, -1, -1, -1, 1885, - -1, -1, 1888, 1889, 5710, 5711, 5712, -1, 98, -1, - -1, -1, 5718, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5728, -1, -1, -1, -1, -1, -1, -1, - -1, 4837, 5738, 1919, 1920, 5741, -1, -1, -1, -1, - 445, -1, -1, -1, -1, -1, -1, -1, 5754, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 5767, -1, -1, 6070, 5672, -1, 633, -1, 159, - -1, -1, -1, 639, -1, 641, -1, 643, -1, -1, - 646, -1, 5481, -1, 5483, -1, -1, 653, -1, -1, - -1, -1, 658, -1, 660, -1, -1, -1, -1, -1, - 666, -1, 5808, -1, 5800, 195, -1, -1, -1, -1, - -1, -1, 5818, -1, -1, -1, -1, -1, -1, -1, - 5826, 5827, -1, -1, 690, -1, 5832, 5825, 5834, 5825, - 5825, -1, -1, 699, 5825, 2021, 5825, 703, 2024, -1, - 706, 231, -1, 709, 5850, 5851, -1, -1, -1, -1, - -1, -1, 4958, -1, -1, -1, -1, -1, -1, 725, - -1, -1, -1, 10, -1, 2051, 13, -1, -1, 5568, - -1, 5917, -1, -1, -1, -1, -1, -1, 5884, 269, - -1, -1, -1, 273, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 6086, 6087, -1, -1, -1, 46, - -1, 5907, -1, -1, -1, -1, 53, 5913, -1, -1, - -1, 5818, 778, -1, 304, 305, -1, -1, -1, 5917, - -1, 5917, 5917, -1, -1, 5931, 5917, 793, 5917, -1, - -1, -1, 79, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5951, -1, 813, 814, -1, - 816, 817, -1, 343, -1, 821, -1, 347, -1, 5965, - -1, -1, 352, -1, -1, -1, -1, -1, -1, 835, - 0, 361, -1, 5079, 840, 5147, -1, -1, -1, 369, - 846, -1, -1, -1, -1, -1, -1, 377, -1, -1, - 5996, -1, -1, -1, -1, -1, -1, 6003, -1, 389, - 5907, -1, -1, -1, -1, 26, 5913, -1, 398, -1, - -1, 32, 402, -1, 44, -1, -1, 6023, -1, -1, - -1, -1, -1, -1, 6030, 891, 47, -1, -1, 6027, - 0, 6027, 6027, -1, -1, -1, 6027, -1, 6027, 905, - -1, -1, -1, -1, -1, -1, 193, -1, -1, -1, - -1, 198, 918, -1, -1, -1, 77, 3199, 3200, 6065, - 6066, -1, 3204, -1, 6070, -1, 456, 933, 6074, 99, - -1, -1, 6078, -1, -1, -1, -1, -1, -1, -1, - 6086, 6087, -1, -1, -1, -1, 952, -1, 235, -1, - 6096, 957, 958, -1, -1, -1, -1, -1, -1, -1, - -1, 5800, -1, 3245, 3246, -1, -1, -1, -1, -1, - 198, 199, 133, -1, 202, -1, 6023, -1, -1, 140, - 150, -1, 143, 989, 990, -1, 5825, -1, -1, 99, - -1, -1, -1, 163, 222, -1, -1, -1, -1, 169, - -1, 229, -1, 290, 174, -1, 1012, 1013, -1, 170, - 180, -1, -1, 183, -1, -1, -1, 187, -1, 1025, - -1, 1027, -1, 690, -1, 1031, -1, -1, 1034, 1035, - -1, 1037, 699, -1, -1, -1, 1042, -1, -1, 706, - 150, -1, 709, 204, -1, -1, 216, -1, 218, -1, - -1, -1, -1, 163, -1, -1, -1, -1, -1, 169, - 1066, -1, -1, -1, 174, -1, 236, 1073, 1074, -1, - 180, -1, -1, 183, -1, -1, -1, 187, 5917, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1094, 1095, - 1096, -1, 1098, -1, 1100, 382, 1102, 1103, -1, -1, - -1, -1, -1, -1, -1, -1, 216, -1, 269, -1, - -1, -1, 273, 5425, -1, 285, -1, -1, 288, -1, - -1, -1, 283, -1, 294, -1, 236, -1, -1, -1, - 1136, 292, 1138, 1139, -1, -1, -1, -1, -1, 26, - -1, -1, -1, 304, -1, 32, -1, 5393, -1, -1, - -1, -1, 5398, 5399, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1171, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 285, 2502, -1, 288, -1, - -1, 351, 343, -1, 294, 346, 347, -1, 6027, -1, - 77, 1197, -1, 1199, -1, 482, -1, 1203, -1, 1205, - -1, -1, -1, -1, -1, -1, 493, 494, 495, 496, - 497, 498, -1, 1219, -1, -1, 377, -1, -1, 1225, - -1, -1, 1228, -1, -1, 1231, -1, -1, -1, -1, - -1, -1, -1, 403, -1, -1, -1, -1, -1, 1245, - -1, 351, -1, -1, -1, -1, 133, -1, -1, -1, - -1, -1, -1, 140, -1, -1, 143, -1, -1, -1, - -1, -1, -1, -1, 434, 5511, -1, -1, -1, -1, - 1276, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 170, 445, -1, -1, -1, 458, -1, - 460, 461, -1, -1, -1, -1, 406, 5609, 1304, 1305, - 1306, -1, 1308, -1, -1, 26, -1, -1, -1, 5555, - -1, 32, -1, -1, -1, 0, 2642, 204, 39, -1, - 2646, 2647, 1328, -1, 434, -1, -1, -1, -1, -1, - -1, -1, -1, 503, -1, 505, 506, -1, -1, -1, - 61, -1, -1, -1, -1, -1, -1, -1, 458, -1, - 460, 461, -1, -1, -1, -1, 77, -1, 1025, -1, - -1, -1, 1368, -1, 1031, -1, -1, -1, 1035, -1, - 1037, -1, -1, -1, -1, -1, -1, -1, 2704, -1, - 1386, -1, 269, -1, 2710, -1, 273, -1, -1, -1, - 500, 112, -1, 503, 504, 505, 283, -1, -1, -1, - -1, -1, -1, -1, -1, 292, -1, -1, -1, -1, - -1, -1, 133, 641, 99, 643, -1, 304, 646, 140, - -1, -1, 143, -1, -1, 2751, 1432, -1, -1, -1, - 1436, 1437, 660, 1100, -1, 1102, 1103, -1, 666, -1, - -1, 1447, 1448, 1449, 1450, -1, 1452, -1, -1, 170, - -1, -1, -1, -1, -1, -1, 343, -1, -1, 346, - 347, -1, -1, -1, -1, 150, -1, -1, -1, 1475, - -1, -1, -1, -1, -1, -1, -1, -1, 163, -1, - 201, -1, -1, 204, 169, -1, -1, -1, -1, 174, - 377, -1, -1, -1, -1, 180, -1, -1, 183, -1, - -1, -1, 187, -1, 1510, -1, -1, -1, -1, 1515, - -1, -1, 1518, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1531, 1532, -1, -1, 250, - -1, 216, -1, 254, 1540, -1, -1, 1543, -1, -1, - -1, -1, -1, -1, -1, -1, 63, -1, 269, -1, - -1, 236, 273, -1, -1, -1, -1, -1, 445, -1, - -1, -1, 283, -1, 1570, -1, 1572, -1, -1, 1575, - -1, 292, 1578, 1579, -1, -1, 1582, -1, -1, -1, - -1, 98, 303, 304, -1, -1, 1592, -1, -1, 1595, - -1, -1, 1598, -1, -1, -1, -1, -1, -1, -1, - 285, -1, 2928, 288, -1, -1, -1, -1, -1, 294, - -1, -1, -1, -1, 1620, -1, -1, -1, -1, -1, - -1, -1, 343, -1, -1, 346, 347, 348, -1, -1, - -1, -1, 1638, -1, 2960, -1, -1, -1, -1, -1, - -1, -1, 159, -1, 1650, 1651, 1652, 1653, 1654, -1, - 371, -1, -1, -1, -1, -1, 377, -1, -1, -1, - -1, -1, 1668, -1, -1, -1, 351, -1, -1, -1, - 391, -1, -1, 1679, 1680, 1681, -1, -1, 195, 3961, - 3962, 3963, 3964, -1, -1, 3967, 3968, 3969, 3970, 3971, - 3972, 3973, 3974, 3975, 3976, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3033, -1, -1, - -1, 3037, -1, 3995, 231, -1, 207, -1, 6030, -1, - -1, 406, -1, -1, 445, 216, -1, -1, -1, 957, - 958, -1, -1, -1, -1, -1, -1, -1, -1, 230, - -1, -1, -1, 4025, 4026, -1, -1, -1, -1, 434, - -1, -1, 269, -1, -1, -1, 273, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 6078, -1, -1, -1, - -1, 1777, 17, 458, -1, 460, 461, -1, -1, -1, - -1, 26, 1788, -1, 6096, -1, 4068, 304, 305, -1, - 1796, 1797, -1, -1, -1, -1, -1, -1, -1, 1027, - -1, -1, -1, -1, -1, -1, 1812, -1, -1, -1, - -1, -1, -1, 3139, 1042, 500, -1, -1, 503, 504, - 505, -1, -1, -1, 1830, 1831, 343, -1, 3154, -1, - 347, -1, -1, 3159, -1, 352, -1, -1, -1, -1, - 1846, 1847, 1848, 1849, 361, 1073, 1074, -1, -1, 1855, - -1, -1, 369, -1, -1, -1, 1862, -1, -1, -1, - 377, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1098, -1, 389, 1879, -1, -1, 1882, -1, -1, -1, - -1, 398, -1, -1, -1, 402, 1892, 1893, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1903, 1904, -1, - -1, 1907, -1, -1, 1910, -1, -1, -1, -1, -1, - 1138, 1139, -1, -1, -1, -1, -1, -1, -1, 1925, - 1926, -1, -1, -1, 10, -1, 1932, 13, 1934, -1, - -1, 17, 18, 19, -1, -1, -1, -1, -1, 456, - -1, -1, -1, -1, -1, 1951, -1, -1, -1, -1, - 36, -1, 1958, -1, 1960, -1, -1, 1963, 1964, 1965, - 46, 1967, 1968, -1, 1970, -1, -1, 53, -1, -1, - -1, 1977, -1, -1, -1, -1, -1, -1, 1984, -1, - -1, -1, -1, -1, 1990, 1991, -1, -1, 1994, -1, - -1, -1, 1998, 79, 2000, -1, -1, -1, -1, 2005, - 2006, -1, -1, -1, -1, -1, 2012, 2013, 2014, -1, - -1, 2017, -1, 2019, 2020, 2021, 2022, 2023, 2024, 2025, - 2026, 39, -1, 2029, -1, 2031, 2032, -1, 10, 2035, - -1, 13, -1, -1, -1, 17, 18, 19, -1, -1, - -1, -1, -1, -1, -1, 63, 2052, 2053, 2054, -1, - -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, - -1, -1, -1, 2069, 46, -1, -1, -1, -1, -1, - -1, 53, -1, -1, -1, -1, -1, -1, 26, -1, - 98, -1, 4364, -1, 32, -1, -1, -1, 3414, -1, - -1, 3417, -1, 3419, -1, -1, -1, 79, 3424, -1, - -1, -1, -1, 2109, -1, -1, -1, 193, -1, -1, - -1, -1, 198, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 77, - -1, -1, -1, -1, 220, 221, -1, -1, -1, -1, - -1, 159, -1, -1, -1, -1, 3472, -1, -1, 235, - -1, -1, -1, -1, 3480, -1, -1, -1, -1, -1, - 651, -1, -1, -1, -1, -1, 657, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 195, 669, 3505, - -1, -1, -1, -1, -1, 133, -1, -1, -1, -1, - 276, 10, 140, -1, 13, 143, -1, -1, 17, 18, - 19, -1, -1, -1, 290, -1, 2212, 293, 226, -1, - -1, 193, 1879, 231, -1, 1882, 198, 36, -1, -1, - -1, -1, 170, -1, -1, 1892, 1893, 46, -1, -1, - -1, -1, -1, -1, 53, -1, -1, -1, 220, 221, - 1907, -1, -1, 1910, -1, -1, 2252, -1, -1, 3575, - -1, 3577, -1, 235, -1, 273, 204, -1, -1, -1, - 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 4568, 305, -1, -1, - 1518, -1, -1, 1960, 276, -1, 382, 1964, 1965, 2305, - -1, -1, -1, -1, -1, -1, -1, -1, 290, -1, - -1, 293, -1, -1, -1, 1543, -1, -1, -1, -1, - -1, 269, -1, -1, -1, 273, -1, -1, -1, 347, - -1, -1, -1, -1, 352, 283, -1, -1, -1, -1, - -1, -1, -1, 361, 292, 3671, -1, -1, -1, -1, - -1, 369, -1, -1, -1, -1, 304, -1, -1, 377, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 389, 3698, -1, 193, -1, -1, -1, 3704, 198, - 398, -1, -1, -1, 402, -1, -1, 3713, -1, -1, - 635, -1, 1620, -1, -1, 343, 482, -1, 346, 347, - 382, 220, 221, 421, 490, 491, 492, 493, 494, 495, - 496, 497, 498, -1, -1, 3741, 235, 503, -1, -1, - 506, -1, 1650, 1651, 1652, 1653, -1, -1, -1, 377, - -1, -1, -1, -1, -1, -1, -1, -1, 456, -1, - 685, 686, 460, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 276, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 290, -1, -1, 2480, 2481, 2482, 2483, 2484, 2485, - 2486, 2487, 2488, 3809, 2490, -1, -1, -1, -1, -1, - -1, -1, 2498, 2499, -1, -1, 2502, 445, -1, -1, - 482, -1, -1, 2509, -1, 3831, -1, -1, 490, 491, - 492, 493, 494, 495, 496, 497, 498, -1, -1, -1, - -1, -1, -1, -1, 506, -1, -1, 3853, -1, -1, - -1, -1, -1, -1, -1, 2541, 781, 2543, -1, -1, - 2546, 2547, -1, -1, 2550, -1, 2552, -1, -1, 2555, - -1, -1, -1, 2559, -1, -1, -1, -1, -1, -1, - -1, -1, 807, 382, -1, -1, -1, -1, 1796, 1797, - 815, -1, -1, 818, 819, 820, 2582, -1, -1, -1, - -1, -1, 2588, 2589, 1812, -1, -1, -1, -1, -1, - -1, -1, -1, 2599, -1, -1, -1, -1, -1, -1, - -1, -1, 2608, 2609, -1, -1, -1, -1, -1, -1, - 3936, -1, -1, -1, -1, -1, 2622, -1, 1846, 1847, - 1848, 1849, -1, -1, 2630, -1, 2632, -1, -1, -1, - -1, -1, -1, -1, 3960, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, - -1, 17, 18, 19, -1, -1, -1, -1, -1, 3985, - -1, -1, -1, 482, -1, -1, 2672, -1, 2674, -1, - 36, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 46, -1, -1, -1, -1, 2691, -1, 53, -1, -1, - -1, -1, -1, -1, -1, -1, 2702, -1, 1926, 2705, - 2706, 2707, 2708, 10, 1932, 2711, 13, -1, 2714, -1, - 17, 18, 19, 79, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5010, 2735, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 46, - 2746, -1, -1, -1, -1, -1, 53, -1, 2754, 2755, - -1, -1, -1, -1, -1, 2761, -1, -1, -1, -1, - -1, -1, -1, -1, 2770, -1, -1, -1, -1, -1, - -1, -1, 79, -1, -1, 1020, -1, -1, -1, -1, - -1, 5063, -1, -1, -1, -1, 2792, -1, -1, -1, - -1, -1, -1, 10, -1, -1, 13, -1, -1, -1, - 17, 18, 19, -1, -1, -1, -1, 2813, -1, 4135, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 36, - 2826, -1, -1, -1, -1, -1, -1, 193, -1, 46, - -1, -1, 198, -1, -1, -1, 53, -1, -1, -1, - -1, -1, 10, 2849, -1, 13, 2852, -1, -1, 17, - 18, 19, -1, -1, 220, 221, -1, -1, -1, -1, - -1, -1, 79, -1, -1, -1, -1, -1, -1, 235, - -1, -1, 2878, 2879, -1, -1, -1, -1, 46, -1, - -1, 2109, -1, -1, -1, 53, 193, 2893, -1, 2895, - 2896, 198, -1, -1, -1, -1, -1, -1, -1, 4225, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 276, 79, -1, 220, 221, 2582, -1, -1, -1, -1, - 2926, 2927, 2928, -1, 290, 4251, 2932, 293, 235, -1, - -1, -1, -1, -1, 2940, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2953, -1, -1, - -1, -1, -1, 2959, -1, 2961, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1210, -1, -1, 2974, 276, - -1, -1, -1, 2979, -1, -1, 193, -1, -1, 2985, - -1, 198, 2988, 290, -1, -1, -1, -1, 1233, -1, - -1, -1, -1, -1, 3000, 3001, -1, -1, -1, -1, - -1, -1, -1, 220, 221, 3011, -1, -1, -1, -1, - -1, -1, -1, -1, 5296, 3021, 382, 3023, 235, -1, - -1, -1, -1, -1, -1, 193, -1, -1, -1, -1, - 198, -1, -1, -1, -1, 2702, -1, -1, 2705, -1, - 2707, 2708, -1, 5325, -1, -1, -1, -1, -1, -1, - -1, -1, 220, 221, -1, -1, 3062, -1, 3064, 276, - 3066, -1, -1, -1, -1, 1310, -1, 235, 4394, -1, - -1, -1, -1, 290, 1319, 382, 293, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1333, -1, - -1, -1, -1, 3099, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 276, 1354, - -1, -1, 1357, 1358, -1, 4441, 482, 1362, 1363, -1, - 4446, -1, 290, -1, 490, 491, 492, 493, 494, 495, - 496, 497, 498, -1, -1, -1, -1, -1, -1, -1, - 506, -1, -1, -1, -1, -1, 3152, 3153, -1, 3155, - -1, 3157, 3158, -1, 3160, -1, -1, -1, -1, -1, - -1, 3167, -1, -1, -1, 382, 3172, -1, -1, -1, - -1, -1, -1, 1664, -1, 482, -1, -1, -1, -1, - -1, -1, -1, 490, 491, 492, 493, 494, 495, 496, - 497, 498, -1, 3199, 3200, 3201, -1, -1, 3204, -1, - -1, -1, -1, -1, -1, -1, 3212, 3213, 3214, 3215, - -1, -1, -1, -1, 382, -1, -1, -1, -1, -1, - -1, -1, 3228, -1, -1, 3231, -1, 3233, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 3245, - 3246, -1, -1, 3249, -1, -1, -1, -1, -1, -1, - 26, -1, -1, 4579, -1, -1, 32, -1, -1, -1, - 3266, -1, 3268, 39, 3270, 482, 3272, -1, -1, 5551, - -1, -1, -1, 490, 491, 492, 493, 494, 495, 496, - 497, 498, -1, -1, 501, 61, 3292, -1, -1, -1, - 3296, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 77, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 3317, -1, -1, 482, -1, -1, -1, 2546, -1, - -1, -1, 490, 491, 492, 493, 494, 495, 496, 497, - 498, -1, -1, -1, 3001, -1, 112, -1, -1, 3345, - -1, -1, 3348, 3349, -1, 1836, -1, 3353, 3354, 3355, - -1, -1, -1, 1844, 3360, -1, -1, 133, -1, 3365, - -1, 1852, -1, -1, 140, -1, -1, 143, 0, -1, - -1, -1, 1617, -1, 3380, -1, -1, -1, 4704, -1, - 1625, -1, -1, -1, -1, -1, -1, -1, 3394, -1, - 22, -1, 3398, -1, 170, 3401, 3402, -1, 3404, -1, - 32, -1, 34, 35, -1, 1896, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 4742, -1, -1, -1, - 52, -1, -1, -1, -1, 201, -1, -1, 204, -1, - 62, -1, 1923, -1, -1, -1, 5718, -1, 4764, 3445, - -1, -1, 74, -1, 76, 77, -1, -1, -1, -1, - -1, 83, -1, 85, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 97, -1, 99, -1, 3475, - 3476, -1, -1, -1, 250, -1, -1, -1, 254, -1, - -1, -1, -1, 2711, 116, 3152, -1, 119, 3155, -1, - 3157, 3158, -1, 269, -1, -1, -1, 273, -1, -1, - -1, -1, 134, -1, 136, -1, -1, 283, 140, -1, - -1, 4837, -1, -1, 146, -1, 292, -1, -1, -1, - -1, -1, 154, -1, 156, -1, -1, 303, 304, -1, - -1, 163, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 180, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 63, -1, -1, -1, 197, -1, 343, 5850, 5851, - 346, 347, 348, -1, -1, -1, -1, 3583, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3593, -1, -1, - -1, -1, -1, -1, 1839, 371, 98, -1, 1843, -1, - -1, 377, -1, -1, -1, 237, 238, -1, -1, -1, - -1, 243, -1, -1, -1, 391, -1, -1, -1, -1, - -1, 2849, -1, -1, 2852, 257, -1, -1, -1, -1, - 4956, -1, 4958, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 275, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 159, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 445, - -1, -1, -1, -1, -1, -1, -1, -1, 3345, -1, - -1, 3348, -1, -1, -1, -1, -1, 319, -1, -1, - -1, -1, 3698, 195, -1, -1, -1, -1, 3704, -1, - -1, 333, -1, -1, -1, -1, -1, 339, 340, 3715, - 342, -1, 2940, -1, -1, 347, -1, -1, -1, -1, - -1, 353, -1, -1, 356, 2953, -1, 3394, -1, 231, - -1, 363, -1, 2961, -1, 3402, -1, 369, 370, -1, - -1, -1, -1, -1, -1, 377, 3752, 3753, 3754, 381, - -1, -1, -1, 5079, -1, -1, -1, -1, -1, 391, - -1, -1, -1, 3769, -1, -1, 2011, 269, -1, -1, - -1, 273, 3000, -1, 406, -1, -1, 3783, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 3021, 426, 3801, 3802, 3803, -1, -1, - -1, 3807, 304, 305, -1, 437, -1, -1, -1, -1, - -1, 443, -1, 3819, -1, -1, 448, -1, -1, -1, - -1, 5147, -1, -1, -1, -1, -1, -1, -1, 461, - -1, -1, -1, -1, -1, -1, 3064, -1, 3066, -1, - -1, 343, -1, -1, -1, 347, -1, -1, -1, -1, - 352, -1, 484, 485, 486, 487, 488, 489, -1, 361, - -1, -1, -1, -1, -1, -1, -1, 369, -1, 3875, - 502, -1, -1, 505, -1, 377, -1, -1, -1, -1, - -1, -1, -1, 3889, 3890, -1, -1, 389, -1, -1, - -1, -1, 3898, -1, -1, -1, 398, -1, -1, -1, - 402, -1, -1, 10, -1, 3911, 13, -1, 3914, -1, - 17, 18, 19, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 3153, -1, 3933, -1, 36, - -1, -1, 3160, -1, -1, 3941, -1, 3943, -1, 46, - -1, 5267, -1, -1, -1, 3951, 53, 3953, -1, -1, - 3956, -1, -1, -1, 456, 3961, 3962, 3963, 3964, -1, - -1, 3967, 3968, 3969, 3970, 3971, 3972, 3973, 3974, 3975, - 3976, -1, 79, -1, 3980, 3981, 3982, -1, -1, -1, - -1, -1, -1, -1, 3990, -1, -1, -1, -1, 3995, - -1, -1, -1, 3999, -1, -1, -1, -1, -1, -1, - -1, 4007, -1, -1, 4010, -1, 4012, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 4022, -1, -1, 4025, - 4026, -1, -1, -1, 4030, 4031, -1, -1, -1, 4035, - -1, 4037, -1, -1, -1, -1, -1, -1, 4044, 4045, - 4046, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 4064, 4065, - 4066, -1, 4068, 4069, -1, -1, 4072, 5393, -1, -1, - 4076, -1, 5398, 5399, 4080, -1, -1, -1, -1, -1, - 4086, -1, -1, -1, -1, -1, 193, -1, -1, -1, - -1, 198, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 4112, -1, -1, -1, - -1, -1, -1, 220, 221, -1, -1, -1, -1, -1, - -1, 4127, -1, 4129, -1, -1, -1, -1, 235, -1, - -1, -1, -1, -1, -1, 24, -1, -1, -1, -1, - 29, 4147, 4148, 4149, 2635, -1, 4152, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 2653, -1, -1, -1, 2657, -1, -1, 276, - 2661, -1, -1, -1, -1, -1, -1, -1, 67, -1, - -1, 4187, 4188, 290, 5510, 5511, 293, -1, -1, -1, - -1, 80, -1, -1, -1, -1, -1, 2688, -1, -1, - 4206, -1, -1, -1, -1, -1, -1, 96, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 114, -1, -1, -1, 5555, - -1, 2722, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3475, 3476, 138, - -1, 2742, -1, 4259, -1, -1, -1, -1, -1, -1, - 149, -1, -1, 10, -1, -1, 13, -1, -1, 158, - 17, 18, 19, -1, -1, 382, 2521, -1, -1, -1, - -1, -1, 171, 2774, -1, -1, -1, 176, -1, 36, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 46, - -1, -1, -1, -1, -1, -1, 53, -1, -1, 4315, - 2801, -1, -1, 202, -1, -1, 2807, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 2821, -1, 79, -1, -1, -1, -1, 2828, -1, -1, - 2831, -1, 4348, -1, -1, -1, 2837, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 4362, -1, 4364, -1, - 249, -1, -1, -1, -1, 4371, 2857, -1, -1, -1, - -1, 4377, 2863, -1, -1, 482, -1, -1, -1, 2870, - -1, -1, 4388, 490, 491, 492, 493, 494, 495, 496, - 497, 498, -1, 2884, -1, -1, 503, 4403, -1, -1, - -1, 290, 4408, 4409, -1, -1, 2897, -1, -1, 4076, - 4416, -1, -1, 4080, -1, -1, -1, 2908, -1, 4425, - -1, -1, -1, -1, -1, 2670, -1, -1, -1, 4435, - -1, -1, -1, -1, -1, 324, 325, -1, -1, 328, - -1, 4447, 4448, -1, -1, -1, 193, -1, -1, -1, - -1, 198, 4458, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 4469, 4470, -1, 355, -1, -1, 358, - -1, -1, -1, 220, 221, 364, -1, -1, -1, -1, - 4147, 4487, 371, -1, 2729, 374, -1, 3715, 235, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, - -1, -1, 13, -1, 393, -1, 17, 18, 19, -1, - -1, 400, -1, -1, -1, -1, -1, 406, -1, 4525, - 409, -1, -1, -1, 413, 36, -1, -1, -1, 276, - -1, 4537, 421, -1, -1, 46, -1, -1, -1, 428, - -1, -1, 53, 290, -1, -1, 293, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 4565, - -1, -1, 4568, -1, 2809, 454, -1, -1, 79, -1, - 4576, 4577, -1, -1, -1, -1, -1, -1, 4584, 4585, - -1, -1, -1, 4589, -1, -1, -1, 4593, 2833, -1, - 4596, 4597, -1, -1, -1, 4601, 4602, -1, -1, -1, - -1, 4607, 4608, 4609, 4610, 4611, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 4624, -1, - -1, 4627, -1, -1, -1, 4631, -1, -1, -1, -1, - 4636, -1, 3123, 4639, 4640, 382, 4642, -1, 4644, -1, - -1, 4647, -1, 4649, -1, -1, -1, 3875, -1, -1, - 3141, -1, 4658, -1, -1, 2900, 4662, 3148, -1, -1, - 4666, -1, 4668, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 4683, -1, -1, - 4686, -1, 193, -1, -1, -1, -1, 198, -1, -1, - -1, -1, 2937, -1, 2939, -1, 2941, 2942, -1, -1, - -1, 2946, 2947, 2948, -1, 2950, 2951, 2952, -1, 220, - 221, -1, -1, -1, 4720, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 235, -1, -1, -1, -1, -1, - 4736, -1, -1, -1, -1, 482, -1, -1, -1, 6065, - -1, 4408, 4409, 490, 491, 492, 493, 494, 495, 496, - 497, 498, -1, -1, -1, -1, 503, -1, -1, 3004, - -1, -1, -1, -1, -1, 276, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 26, -1, 290, - -1, 4787, 293, 32, 3029, -1, -1, -1, 4794, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 4817, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 4832, 10, 77, -1, - 13, -1, -1, -1, 17, 18, 19, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 36, -1, -1, -1, 4863, -1, 10, - -1, -1, 13, 46, -1, -1, 17, 18, 19, -1, - 53, 382, -1, 4879, -1, -1, -1, -1, -1, -1, - 4886, -1, -1, -1, 133, 36, -1, -1, -1, 4895, - -1, 140, -1, -1, 143, 46, 79, -1, -1, -1, - -1, -1, 53, -1, 4910, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 4923, -1, 4925, - -1, 170, -1, -1, -1, -1, -1, -1, 79, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 26, 4951, -1, -1, -1, -1, - 32, -1, -1, -1, -1, 204, 4962, 4624, -1, -1, - -1, -1, -1, -1, 4631, -1, -1, -1, -1, 4636, - -1, 482, 4639, 4640, -1, 3466, -1, -1, -1, 490, - 491, 492, 493, 494, 495, 496, 497, 498, -1, -1, - -1, -1, 503, -1, -1, 77, -1, -1, -1, -1, - -1, 5007, -1, -1, 5010, -1, -1, 5013, 5014, 5015, - 193, -1, -1, -1, -1, 198, -1, -1, -1, -1, - 269, -1, -1, -1, 273, -1, -1, -1, -1, -1, - -1, -1, 5038, 5039, 283, -1, 5042, 220, 221, -1, - -1, -1, 193, 292, -1, -1, -1, 198, -1, -1, - -1, 133, 235, -1, -1, 304, -1, 5063, 140, -1, - -1, 143, -1, 5069, -1, 3310, -1, 5073, -1, 220, - 221, 5077, -1, -1, 5080, 3566, 5082, -1, -1, -1, - -1, -1, -1, -1, 235, -1, -1, 5093, 170, -1, - 5096, -1, -1, 276, 343, -1, -1, 346, 347, -1, - -1, 5107, 5108, 5109, -1, 5111, -1, 290, -1, -1, - 293, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 4348, -1, 204, -1, -1, 276, -1, -1, 377, -1, - -1, -1, -1, -1, 4362, -1, -1, -1, -1, 290, - -1, -1, 293, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5158, 5159, -1, -1, 206, 207, -1, -1, - -1, -1, -1, -1, 214, -1, 216, 217, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 230, -1, -1, -1, -1, -1, -1, 269, -1, -1, - -1, 273, -1, -1, -1, -1, 445, 5203, -1, 382, - -1, 283, 3693, -1, -1, -1, -1, -1, -1, 5215, - 292, -1, 4879, -1, 5220, -1, -1, -1, -1, 5225, - -1, -1, 304, -1, 3469, -1, -1, -1, 5234, -1, - -1, 382, -1, -1, -1, -1, -1, -1, 5244, -1, - -1, -1, 5248, 4910, -1, 5251, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 5262, 5263, 5264, -1, - -1, 343, -1, -1, 346, 347, -1, -1, -1, -1, - -1, -1, -1, 26, -1, 26, -1, -1, -1, 32, - -1, 32, -1, -1, -1, -1, -1, -1, -1, -1, - 5296, -1, -1, -1, 5300, 377, 5302, -1, -1, 482, - -1, -1, 3547, -1, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 5322, -1, -1, 5325, - 503, -1, -1, 5329, 77, -1, 77, -1, -1, -1, - 5336, 482, -1, -1, -1, -1, -1, 5343, -1, 490, - 491, 492, 493, 494, 495, 496, 497, 498, -1, -1, - -1, -1, 503, -1, -1, -1, -1, -1, -1, -1, - 3605, -1, -1, 445, -1, -1, -1, -1, -1, -1, - -1, -1, 5378, -1, -1, -1, -1, -1, -1, -1, - 133, 3872, 133, -1, -1, -1, -1, 140, -1, 140, - 143, -1, 143, -1, -1, -1, -1, 5403, -1, -1, - 3891, -1, -1, 5409, 5410, -1, 5073, -1, 5414, 5415, - 5416, 5417, -1, -1, -1, -1, -1, 170, -1, 170, - -1, -1, -1, -1, -1, 3916, 5093, -1, 3673, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 5445, - 5107, -1, -1, -1, -1, -1, -1, 5453, -1, -1, - -1, 204, -1, 204, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5478, -1, 3719, 5481, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3731, 3732, -1, -1, - -1, 5158, -1, -1, -1, -1, 3741, -1, -1, -1, - 5506, 3746, -1, 3748, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 269, -1, 269, -1, - 273, -1, 273, -1, -1, -1, -1, -1, 5534, -1, - 283, -1, 283, -1, 5540, -1, 5203, -1, 5544, 292, - -1, 292, 5548, -1, -1, 5551, -1, -1, -1, 3794, - -1, 304, -1, 304, 5560, -1, 5562, -1, 5564, 5565, - -1, -1, -1, -1, -1, 5571, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5581, -1, 5583, -1, -1, - -1, -1, 632, -1, 3829, 3830, 5592, -1, -1, 4817, - 343, -1, 343, 346, 347, 346, 347, 5264, -1, -1, - -1, 651, -1, -1, 4832, -1, -1, 657, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 669, - -1, 5627, 5628, -1, 377, -1, 377, -1, -1, -1, - -1, -1, -1, -1, -1, 685, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 699, - 700, -1, 5658, -1, -1, 5322, 706, -1, 708, 709, - 10, -1, -1, 13, -1, -1, 5672, 17, 18, 19, - -1, -1, 722, -1, -1, -1, -1, 4168, -1, -1, - -1, -1, 732, -1, -1, -1, 36, -1, -1, -1, - -1, -1, 445, -1, 445, 4923, 46, -1, -1, -1, - -1, -1, -1, 53, 5710, 5711, 5712, -1, -1, -1, - -1, -1, 5718, -1, -1, -1, 5722, -1, -1, -1, - -1, -1, 5728, -1, -1, -1, -1, -1, -1, 79, - -1, 5737, 5738, -1, -1, -1, -1, -1, -1, -1, - 790, -1, -1, -1, -1, -1, 10, -1, 5754, 13, - -1, -1, -1, 17, 18, 19, -1, -1, -1, -1, - -1, 4006, -1, 5769, -1, -1, -1, -1, -1, 819, - 5776, -1, 36, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 46, -1, -1, -1, 5453, -1, -1, 53, - -1, -1, -1, -1, 844, 5801, -1, -1, -1, -1, - -1, -1, 5808, -1, -1, -1, 4297, -1, -1, 4300, - -1, -1, 5818, -1, 5481, 79, -1, -1, -1, -1, - 5826, 5827, 5828, -1, -1, -1, 5832, -1, 5834, -1, - -1, -1, -1, -1, -1, -1, -1, 5843, 5844, 5845, - -1, -1, -1, 193, 5850, 5851, -1, -1, 198, -1, - 5856, -1, -1, -1, 904, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 220, 221, 5878, -1, -1, -1, -1, -1, -1, -1, - -1, 5109, -1, 5111, -1, 235, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 5907, 5908, 5909, 5571, -1, -1, 5913, -1, -1, - 4401, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5931, 276, 4418, -1, 193, - -1, -1, -1, -1, 198, -1, -1, -1, -1, -1, - 290, -1, -1, 293, -1, 5951, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 220, 221, -1, 5965, - -1, -1, -1, -1, 1014, -1, -1, -1, -1, -1, - 1020, 235, -1, -1, -1, -1, -1, -1, -1, -1, - 4225, 1031, -1, -1, -1, 1035, -1, 1037, -1, -1, - 5996, -1, -1, -1, -1, 6001, 6002, 6003, 6004, 6005, - -1, -1, 6008, -1, -1, 5672, 4251, -1, 4499, -1, - -1, -1, 276, -1, 6020, -1, -1, 6023, -1, -1, - -1, 4266, -1, -1, -1, 4270, 290, 4272, -1, 293, - -1, -1, 382, -1, 5262, -1, -1, -1, -1, -1, - 6046, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 6065, - 6066, -1, -1, -1, 6070, -1, -1, -1, 6074, -1, - -1, -1, -1, 4318, -1, -1, -1, -1, -1, -1, - 6086, 6087, -1, -1, 6090, -1, -1, 5754, -1, 4334, - -1, -1, -1, 1143, 4339, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 382, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 482, -1, -1, -1, -1, -1, -1, -1, - 490, 491, 492, 493, 494, 495, 496, 497, 498, -1, - -1, 5818, -1, 503, 1204, -1, -1, -1, -1, 5826, - 5827, -1, -1, -1, -1, 1215, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1229, - -1, -1, -1, 1233, -1, -1, -1, 5415, -1, 5417, - -1, -1, -1, 4438, -1, -1, 4441, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 482, -1, - -1, -1, -1, -1, -1, -1, 490, 491, 492, 493, - 494, 495, 496, 497, 498, -1, -1, -1, -1, 503, - 5907, -1, -1, -1, -1, -1, 5913, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5931, -1, -1, -1, 4759, 4514, - 4515, 4516, 4517, -1, 4519, 4520, 4521, 4522, 4523, -1, - 4771, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 10, -1, -1, 13, -1, -1, -1, 17, 18, 19, - -1, -1, -1, -1, 1354, 0, -1, -1, -1, -1, - -1, -1, 1362, 1363, -1, -1, 36, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 46, 22, -1, -1, - -1, -1, -1, 53, -1, -1, 6003, 32, -1, 34, - 35, -1, 10, -1, -1, 13, -1, -1, -1, 17, - 18, 19, -1, -1, -1, -1, 6023, 52, -1, 79, - -1, -1, -1, -1, -1, 1415, -1, 62, 36, -1, - -1, 4616, -1, 4618, -1, -1, -1, -1, 46, 74, - -1, 76, 77, -1, -1, 53, -1, -1, 83, -1, - 85, -1, -1, -1, -1, -1, -1, -1, -1, 6066, - -1, -1, 97, -1, 99, -1, -1, 6074, -1, -1, - -1, 79, -1, -1, -1, -1, -1, -1, -1, 6086, - 6087, 116, -1, -1, 119, -1, -1, -1, -1, -1, - 5658, -1, -1, -1, -1, -1, -1, -1, -1, 134, - -1, 136, -1, -1, -1, 140, -1, -1, -1, -1, - -1, 146, -1, -1, -1, -1, -1, -1, -1, 154, - -1, 156, -1, -1, -1, -1, -1, -1, 163, -1, - -1, -1, -1, 193, -1, -1, -1, -1, 198, -1, - -1, 10, -1, -1, 13, 180, -1, -1, 17, 18, - 19, -1, -1, -1, -1, -1, -1, -1, 4989, -1, - 220, 221, 197, -1, -1, -1, -1, 36, -1, -1, - -1, -1, -1, -1, -1, 235, -1, 46, -1, -1, - -1, -1, -1, -1, 53, 193, -1, -1, -1, 10, - 198, -1, 13, -1, -1, -1, 17, 18, 19, -1, - -1, 5769, 237, 238, -1, -1, -1, -1, 243, -1, - 79, -1, 220, 221, -1, 36, 276, -1, -1, -1, - -1, -1, 257, -1, -1, 46, -1, 235, -1, -1, - 290, -1, 53, 293, -1, -1, -1, -1, -1, -1, - 275, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 4835, 4836, -1, -1, -1, -1, -1, -1, 79, -1, - -1, -1, -1, 4848, -1, 4850, 4851, 4852, 276, -1, - 5101, -1, 5103, -1, 1664, 51, -1, -1, -1, -1, - -1, -1, 290, -1, 319, 293, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 333, -1, - -1, -1, -1, -1, 339, 340, -1, 342, -1, -1, - 5878, -1, 347, -1, -1, -1, -1, -1, 353, -1, - -1, 356, 382, -1, 193, -1, -1, -1, 363, 198, - -1, 4916, -1, -1, 369, 370, -1, -1, -1, -1, - 5908, 5909, 377, -1, -1, -1, 381, -1, -1, -1, - -1, 220, 221, -1, -1, -1, 391, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 235, 51, -1, -1, - 4955, 406, 193, -1, 382, 10, -1, 198, 13, -1, - -1, -1, 17, 18, 19, -1, -1, -1, 1778, -1, - -1, 426, -1, -1, -1, -1, -1, -1, -1, 220, - 221, 36, 437, -1, -1, -1, -1, 276, 443, -1, - -1, 46, 4997, 448, 235, -1, -1, -1, 53, -1, - -1, 290, 482, 1813, 293, -1, 461, -1, -1, -1, - 490, 491, 492, 493, 494, 495, 496, 497, 498, -1, - -1, -1, -1, 503, 79, -1, 1836, -1, -1, 484, - -1, -1, 6020, -1, 1844, 276, -1, -1, -1, -1, - -1, -1, 1852, -1, -1, -1, -1, 502, -1, 290, - 505, -1, 293, -1, 482, -1, -1, -1, -1, -1, - -1, -1, 490, 491, 492, 493, 494, 495, 496, 497, - 498, -1, -1, -1, -1, 503, -1, -1, -1, -1, - -1, -1, 1892, 1893, -1, 1895, 1896, -1, -1, -1, - -1, -1, -1, 382, -1, -1, -1, 1907, -1, 1909, - 1910, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 8, -1, 1922, 1923, -1, -1, 14, 15, -1, -1, - -1, -1, 20, -1, 22, -1, -1, -1, -1, -1, - 28, -1, 30, -1, -1, -1, -1, -1, 193, -1, - -1, 382, 5147, 198, -1, -1, -1, -1, -1, -1, - 1960, 49, 50, -1, 1964, 1965, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 220, 221, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 235, -1, -1, -1, -1, -1, -1, -1, 5193, -1, - -1, -1, -1, 482, -1, -1, -1, 5202, -1, -1, - -1, 490, 491, 492, 493, 494, 495, 496, 497, 498, - -1, -1, -1, -1, 503, -1, -1, -1, -1, -1, - -1, 276, 10, -1, -1, 13, -1, -1, -1, 17, - 18, 19, -1, -1, -1, 290, -1, -1, 293, -1, - -1, 482, -1, -1, -1, -1, -1, -1, 36, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 46, -1, - -1, 2071, 503, -1, -1, 53, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 200, -1, -1, -1, 204, -1, -1, -1, - -1, -1, -1, -1, 212, -1, -1, 215, -1, -1, - 218, 219, -1, 221, -1, 223, -1, 382, 226, -1, - 228, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, - 13, -1, -1, -1, 17, 18, 19, -1, -1, -1, - -1, -1, -1, -1, -1, 193, -1, -1, -1, -1, - 198, -1, -1, 36, -1, -1, -1, -1, -1, -1, - 5425, -1, -1, 46, 5429, -1, -1, 482, -1, -1, - 53, -1, 220, 221, -1, 490, 491, 492, 493, 494, - 495, 496, 497, 498, -1, -1, -1, 235, 503, -1, - -1, -1, -1, -1, -1, -1, 79, -1, 10, -1, - -1, 13, -1, -1, -1, 17, 18, 19, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 36, -1, -1, -1, 276, -1, - 5741, -1, -1, -1, 46, -1, -1, -1, -1, 695, - -1, 53, 290, -1, -1, 293, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 721, -1, 79, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, - 13, -1, -1, -1, 17, 18, 19, -1, -1, -1, - 193, -1, -1, -1, -1, 198, -1, -1, -1, -1, - -1, -1, -1, 36, -1, -1, -1, -1, -1, -1, - -1, 695, -1, 46, 382, -1, -1, 220, 221, -1, - 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 235, -1, 5619, -1, -1, 721, 5623, -1, - 5625, -1, -1, -1, 5629, 5630, 79, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 193, -1, -1, -1, -1, 198, -1, -1, -1, - -1, -1, -1, 276, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 290, 220, 221, - 293, -1, -1, 869, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 235, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 482, -1, -1, -1, -1, -1, - -1, -1, 490, 491, 492, 493, 494, 495, 496, 497, - 498, -1, -1, -1, -1, 503, -1, -1, -1, -1, - -1, -1, -1, -1, 276, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 633, -1, -1, 290, -1, - 193, 293, -1, -1, -1, 198, 644, -1, -1, -1, - 648, -1, -1, -1, -1, -1, -1, 655, 656, 382, - -1, 659, -1, 661, 662, 869, -1, 220, 221, -1, - 2580, -1, -1, -1, -1, -1, -1, -1, 676, -1, - -1, -1, 235, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 694, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 715, -1, 717, - -1, -1, -1, 276, -1, 2635, -1, -1, -1, 727, - 382, -1, -1, -1, 1030, -1, -1, 290, -1, -1, - 293, -1, -1, 2653, 51, 1041, -1, 2657, -1, -1, - -1, 2661, -1, -1, -1, -1, -1, -1, -1, 482, - 2670, 1057, 760, -1, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, -1, -1, 2688, 5884, - 503, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 2705, -1, 2707, 2708, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 2722, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1030, -1, -1, 382, - 482, -1, 2742, 2743, -1, -1, -1, 1041, 490, 491, - 492, 493, 494, 495, 496, 497, 498, -1, -1, 847, - -1, 503, -1, 1057, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 2773, 2774, -1, -1, 2777, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, - 13, 2801, -1, 2803, 17, 18, 19, 2807, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 2821, -1, 36, -1, -1, -1, 1213, 2828, -1, - -1, 2831, -1, 46, -1, 6030, -1, 2837, -1, 482, - 53, 6036, 930, -1, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, -1, 2857, -1, -1, - 503, -1, -1, 2863, 10, -1, 79, 13, -1, -1, - 2870, 17, 18, 19, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 6078, 2884, -1, -1, -1, -1, -1, - 36, -1, -1, -1, -1, -1, -1, 2897, -1, -1, - 46, 6096, 2902, -1, 6099, -1, -1, 53, 2908, -1, - -1, -1, -1, -1, -1, -1, 1004, -1, -1, 1213, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 79, -1, -1, -1, -1, -1, -1, - 1028, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1043, -1, 1045, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1055, 2968, -1, - -1, 1357, -1, -1, 1062, -1, -1, -1, -1, -1, - 193, -1, -1, -1, -1, 198, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 220, 221, -1, - -1, -1, -1, -1, -1, -1, 1104, -1, 1106, -1, - -1, -1, 235, -1, -1, -1, -1, -1, 10, -1, - -1, 13, -1, -1, -1, 17, 18, 19, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 193, -1, -1, - -1, -1, 198, -1, 36, -1, -1, -1, -1, -1, - -1, -1, -1, 276, 46, -1, -1, -1, -1, -1, - -1, 53, 1458, -1, 220, 221, -1, 290, -1, -1, - 293, -1, -1, -1, -1, -1, -1, -1, -1, 235, - -1, -1, 1180, -1, 1182, -1, 1184, 79, 1186, -1, - 1188, 1189, 1190, -1, -1, -1, -1, 1195, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1207, - -1, -1, -1, 3123, -1, -1, -1, -1, -1, -1, - 276, -1, 1220, -1, -1, -1, -1, -1, -1, 1525, - -1, 3141, -1, -1, 290, -1, -1, 293, 3148, -1, - -1, -1, -1, -1, -1, 3155, -1, 3157, 3158, -1, - -1, -1, -1, -1, 1458, -1, -1, -1, -1, 382, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1566, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 10, -1, - -1, 13, -1, -1, -1, 17, 18, 19, -1, -1, - -1, 193, -1, 1599, -1, -1, 198, -1, -1, -1, - -1, -1, -1, 3223, 36, -1, -1, -1, -1, 3229, - -1, 1525, -1, -1, 46, -1, 382, -1, 220, 221, - -1, 53, -1, -1, -1, -1, -1, -1, -1, -1, - 207, -1, -1, 235, -1, -1, -1, -1, -1, 216, - -1, -1, -1, -1, -1, -1, -1, 79, -1, 482, - -1, -1, 1566, 230, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, -1, -1, -1, -1, - 503, 1379, -1, -1, 276, -1, -1, -1, 695, -1, - -1, -1, -1, -1, -1, 1599, -1, -1, 290, -1, - 3310, 293, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 721, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 482, -1, -1, -1, - -1, -1, -1, -1, 490, 491, 492, 493, 494, 495, - 496, 497, 498, -1, -1, -1, -1, 503, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 193, -1, -1, -1, -1, 198, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 382, -1, -1, -1, 1790, -1, -1, -1, 220, 221, - -1, 1499, -1, -1, -1, 1801, -1, -1, -1, -1, - -1, -1, -1, 235, -1, -1, -1, -1, -1, -1, - -1, 1817, -1, -1, -1, -1, -1, -1, -1, 3439, - 3440, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 10, -1, -1, 13, -1, -1, -1, 17, 18, - 19, -1, -1, -1, 276, -1, 3466, -1, -1, 3469, - -1, -1, 869, -1, -1, -1, -1, 36, 290, -1, - -1, 293, -1, 1571, 1870, -1, -1, 46, -1, -1, - -1, -1, -1, -1, 53, -1, 1790, -1, -1, 1885, - 482, -1, 1888, 1889, -1, -1, -1, 1801, 490, 491, - 492, 493, 494, 495, 496, 497, 498, -1, -1, -1, - 79, 503, -1, 1817, -1, -1, -1, -1, 10, -1, - -1, 13, -1, 1919, 1920, 17, 18, 19, -1, -1, - -1, 3541, 3542, 3543, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 36, -1, -1, -1, 40, -1, - -1, -1, -1, -1, 46, -1, 3566, -1, -1, -1, - 382, 53, -1, -1, -1, -1, 1870, -1, -1, -1, - -1, -1, -1, -1, -1, 3585, -1, -1, -1, -1, - -1, 1885, -1, -1, 1888, 1889, -1, 79, -1, -1, - -1, -1, 10, -1, -1, 13, -1, 3607, -1, 17, - 18, 19, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1919, 1920, -1, 36, -1, - -1, -1, -1, 1030, 193, -1, -1, -1, 46, 198, - -1, -1, -1, -1, 1041, 53, -1, -1, 130, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1057, 220, 221, -1, -1, 2051, -1, -1, -1, -1, - 482, 79, -1, -1, -1, 632, 235, -1, 490, 491, - 492, 493, 494, 495, 496, 497, 498, -1, -1, -1, - -1, 503, -1, 3693, 651, -1, -1, -1, 1786, -1, - 657, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 193, 669, -1, -1, -1, 198, 276, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 685, -1, - -1, 290, -1, 1821, 293, -1, -1, -1, 220, 221, - 3740, -1, -1, 700, -1, -1, 3746, -1, 3748, -1, - -1, 708, -1, 235, -1, -1, -1, 2051, -1, -1, - -1, 3761, -1, 3763, -1, 722, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 732, 1864, -1, 1866, -1, - -1, -1, -1, -1, -1, 193, -1, -1, -1, -1, - 198, -1, -1, -1, 276, -1, -1, -1, 1886, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 290, -1, - -1, 293, 220, 221, -1, -1, 1213, -1, -1, -1, - -1, -1, -1, 382, 1912, -1, 1914, 235, -1, -1, - 3830, -1, -1, 790, -1, -1, -1, 51, -1, -1, - -1, 1929, -1, 1931, -1, -1, -1, -1, -1, 1937, - -1, 1939, -1, 1941, -1, 1943, -1, 1945, -1, -1, - -1, 1949, 819, -1, -1, -1, -1, -1, 276, -1, - -1, -1, 3872, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 290, -1, -1, 293, -1, 844, -1, -1, - -1, 3891, -1, -1, -1, -1, -1, -1, -1, -1, - 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 318, -1, -1, 3913, -1, -1, 3916, -1, -1, -1, - -1, -1, -1, 482, -1, -1, -1, -1, -1, -1, - -1, 490, 491, 492, 493, 494, 495, 496, 497, 498, - -1, -1, -1, -1, 503, -1, -1, 904, -1, -1, - 10, -1, -1, 13, -1, -1, -1, 17, 18, 19, - 442, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 382, -1, 36, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 46, -1, -1, -1, - -1, 399, -1, 53, -1, -1, -1, 3997, -1, -1, - 482, -1, -1, -1, -1, -1, -1, -1, 490, 491, - 492, 493, 494, 495, 496, 497, 498, -1, -1, 79, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 10, -1, -1, 13, -1, -1, -1, 17, 18, 19, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 36, 1014, -1, -1, - -1, 1458, -1, 1020, -1, -1, 46, -1, -1, -1, - -1, -1, -1, 53, 482, -1, -1, -1, -1, -1, - -1, -1, 490, 491, 492, 493, 494, 495, 496, 497, - 498, -1, -1, -1, -1, -1, -1, -1, -1, 79, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 169, - -1, -1, -1, -1, 174, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1525, -1, - -1, -1, -1, 193, -1, -1, -1, 51, 198, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 220, 221, -1, -1, -1, -1, -1, -1, 4168, 1566, - -1, -1, -1, -1, -1, 235, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1143, -1, 168, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1599, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 193, -1, -1, 276, -1, 198, 4219, - -1, -1, -1, -1, 4224, -1, 4226, -1, -1, -1, - 290, -1, -1, 293, -1, -1, -1, -1, -1, -1, - 220, 221, -1, -1, -1, -1, -1, 1204, -1, -1, - 4250, -1, -1, -1, -1, 235, 2642, -1, 1215, -1, - 2646, 2647, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1229, -1, -1, -1, 1233, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 276, 4297, -1, -1, - 4300, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 290, -1, -1, 293, -1, -1, -1, -1, 2704, -1, - -1, -1, 382, -1, 2710, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 316, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 2642, -1, - -1, -1, 2646, 2647, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 2751, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 4390, 4391, -1, 1790, -1, -1, -1, 1354, -1, -1, - -1, 4401, 382, -1, 1801, 1362, 1363, -1, -1, -1, - 2704, -1, -1, -1, -1, -1, 2710, -1, 4418, -1, - 1817, -1, 482, -1, -1, -1, -1, -1, -1, -1, - 490, 491, 492, 493, 494, 495, 496, 497, 498, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2751, 1415, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1870, -1, -1, -1, -1, -1, -1, - -1, 695, -1, -1, -1, -1, -1, -1, 1885, -1, - -1, 1888, 1889, -1, -1, -1, -1, -1, -1, 4499, - -1, 24, 482, -1, -1, -1, 29, 721, -1, -1, - 490, 491, 492, 493, 494, 495, 496, 497, 498, -1, - -1, -1, 1919, 1920, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 67, -1, -1, -1, 2636, 2637, - -1, -1, -1, -1, -1, -1, -1, 80, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2655, 2656, -1, - 2658, 2659, -1, 96, 2960, 2663, 2664, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 2678, 114, -1, -1, -1, -1, -1, 2685, -1, -1, - -1, 2689, 2690, -1, -1, 2693, 2694, -1, -1, -1, - -1, -1, 2700, -1, -1, 138, -1, -1, -1, -1, - -1, -1, -1, -1, 2712, -1, 149, -1, -1, -1, - -1, -1, -1, -1, -1, 158, 2724, -1, -1, -1, - -1, 2729, -1, -1, -1, -1, -1, 3033, 171, -1, - -1, 3037, -1, 176, 2051, 869, 2744, -1, -1, -1, - 183, -1, -1, -1, -1, 2753, 2960, -1, 2756, -1, - 2758, 2759, 2760, -1, -1, -1, -1, 2765, 2766, 202, - -1, -1, -1, -1, -1, -1, -1, 2775, -1, -1, - -1, -1, -1, 2781, -1, -1, -1, 2785, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1664, -1, 2797, - 2798, -1, -1, -1, 2802, -1, -1, 4717, -1, -1, - 2808, 2809, -1, -1, -1, -1, 249, -1, -1, -1, - -1, -1, -1, -1, 2822, -1, -1, 2825, -1, 3033, - -1, -1, -1, 3037, 2832, 2833, -1, -1, -1, -1, - 2838, -1, -1, 3139, -1, -1, -1, -1, -1, 4759, - -1, -1, 2850, -1, -1, 2853, -1, 290, 3154, -1, - 2858, 4771, -1, 3159, -1, -1, 2864, 2865, -1, -1, - 303, 695, -1, -1, 2872, -1, -1, -1, 2876, -1, - -1, 314, 2880, 2881, 2882, 2883, -1, 2885, -1, -1, - -1, 324, 325, -1, -1, 328, 4806, 721, -1, -1, - 2898, 2899, -1, 2901, -1, -1, 1030, -1, -1, -1, - -1, 1778, -1, -1, 2912, 2913, 2914, 1041, -1, -1, - -1, -1, 355, -1, -1, 358, -1, -1, -1, 362, - -1, 364, -1, 1057, -1, 3139, -1, -1, 371, -1, - -1, 374, -1, -1, -1, -1, 1813, -1, -1, -1, - 3154, -1, -1, -1, -1, 3159, -1, -1, -1, -1, - 393, -1, 51, -1, -1, -1, -1, 400, -1, 1836, - -1, 2969, -1, 406, 4884, -1, 409, 1844, -1, 2977, - 413, -1, -1, -1, -1, 1852, -1, -1, 421, -1, - 423, -1, -1, 4903, -1, 428, -1, -1, 2996, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 441, -1, - -1, -1, -1, -1, -1, -1, 51, -1, -1, -1, - -1, 454, -1, -1, -1, -1, -1, -1, 1895, 1896, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1909, -1, -1, 869, -1, -1, 3046, -1, - -1, -1, -1, -1, -1, 1922, 1923, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3065, -1, 3067, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 4989, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1213, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 10, -1, -1, 13, -1, -1, - -1, 17, 18, 19, -1, -1, -1, -1, 3414, -1, - -1, 3417, -1, 3419, -1, -1, -1, -1, 3424, -1, - 36, -1, -1, 39, -1, -1, 10, -1, -1, 13, - 46, -1, -1, 17, 18, 19, -1, 53, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 36, 3161, -1, -1, -1, -1, -1, -1, - -1, -1, 46, 79, -1, -1, 3472, -1, -1, 53, - -1, -1, -1, -1, 3480, -1, -1, -1, -1, -1, - -1, 5101, -1, 5103, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 2071, 79, 1030, -1, -1, 3505, - 3414, -1, -1, 3417, -1, 3419, -1, 1041, -1, -1, - 3424, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1057, -1, -1, -1, -1, 5148, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5158, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 3472, -1, - -1, -1, -1, -1, -1, -1, 3480, -1, -1, 3575, - -1, 3577, -1, -1, -1, -1, -1, 193, 5198, -1, - -1, -1, 198, 5203, -1, -1, -1, -1, -1, -1, - -1, 3505, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 220, 221, -1, -1, -1, 193, - -1, -1, -1, -1, 198, -1, -1, -1, -1, 235, - -1, -1, -1, -1, 1458, 2642, -1, -1, -1, 2646, - 2647, -1, -1, -1, -1, -1, 220, 221, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 235, -1, -1, -1, -1, -1, -1, -1, -1, - 276, 3575, -1, 3577, -1, 3671, -1, -1, -1, -1, - -1, -1, -1, -1, 290, -1, -1, 293, -1, 1213, - -1, -1, -1, -1, -1, -1, -1, 2704, -1, -1, - -1, 1525, 276, 2710, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 290, 3713, -1, 293, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 312, -1, - -1, -1, 1566, -1, 2751, 3741, -1, -1, -1, 3447, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3671, -1, 3467, - -1, -1, -1, -1, -1, 1599, 382, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3484, -1, -1, -1, - 3488, -1, -1, -1, -1, 3493, 3494, 3495, -1, -1, - -1, 5411, -1, -1, -1, -1, -1, -1, 382, 3713, - -1, -1, -1, 3809, -1, 5425, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 3529, 3530, 3531, 3532, 3831, -1, 3741, -1, -1, - -1, -1, -1, -1, -1, -1, 5456, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3853, -1, -1, - -1, 3559, -1, -1, -1, -1, -1, -1, -1, 3567, - -1, 3569, 3570, 3571, -1, -1, 482, -1, -1, -1, - -1, -1, -1, -1, 490, 491, 492, 493, 494, 495, - 496, 497, 498, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 3809, 695, -1, 482, -1, - -1, -1, -1, -1, -1, -1, 490, 491, 492, 493, - 494, 495, 496, 497, 498, -1, -1, 3831, -1, -1, - -1, -1, 721, -1, 1458, -1, -1, -1, -1, -1, - 3936, -1, 5552, -1, -1, -1, -1, -1, -1, 3853, - -1, -1, -1, 2960, -1, -1, -1, -1, -1, -1, - 695, -1, -1, -1, 3960, -1, 1790, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1801, -1, -1, - -1, -1, -1, -1, -1, -1, 721, 3685, -1, 3985, - -1, -1, -1, 1817, -1, -1, 3694, -1, -1, -1, - -1, 1525, -1, -1, -1, -1, -1, 5617, -1, 5619, - -1, -1, -1, 2580, -1, -1, -1, -1, -1, -1, - -1, -1, 3720, 3721, -1, -1, 3033, 3725, -1, -1, - 3037, -1, 3936, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1566, -1, -1, -1, 1870, -1, -1, 3747, - -1, -1, -1, -1, -1, -1, 3960, -1, -1, -1, - -1, 1885, -1, -1, 1888, 1889, -1, -1, 2635, -1, - -1, -1, -1, -1, -1, 1599, -1, -1, -1, -1, - 869, 3985, -1, -1, -1, -1, 2653, -1, -1, -1, - 2657, -1, -1, -1, 2661, 1919, 1920, -1, -1, -1, - -1, 3799, -1, 2670, -1, -1, 3804, -1, -1, -1, - -1, -1, 3810, -1, -1, -1, -1, -1, -1, -1, - -1, 2688, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 5741, 3139, -1, 869, -1, -1, -1, -1, 4135, - -1, -1, 3840, -1, 5754, -1, -1, 3154, -1, -1, - -1, -1, 3159, -1, -1, 2722, -1, 5767, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 3869, -1, 3871, -1, 2742, 2743, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 2773, 2774, -1, -1, - 2777, -1, -1, -1, 3912, -1, 5826, 5827, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2051, -1, 4225, - -1, 4135, -1, -1, 2801, -1, 2803, -1, -1, -1, - 2807, 1030, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1041, -1, 2821, 4251, -1, -1, -1, -1, - -1, 2828, -1, -1, 2831, -1, 1790, -1, 1057, -1, - 2837, -1, -1, -1, 5884, -1, -1, 1801, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 2857, -1, -1, 1817, -1, 1030, 2863, -1, -1, -1, - -1, -1, -1, 2870, -1, -1, 1041, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2884, -1, -1, - -1, 4225, 1057, -1, -1, -1, -1, -1, -1, -1, - 2897, -1, -1, -1, -1, 2902, -1, -1, -1, -1, - -1, 2908, -1, -1, 208, -1, 1870, 4251, -1, -1, - -1, -1, -1, -1, -1, -1, 220, -1, -1, -1, - -1, 1885, -1, -1, 1888, 1889, -1, 231, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1919, 1920, -1, 4394, -1, - -1, 2968, -1, -1, -1, -1, -1, 3414, -1, -1, - 3417, -1, 3419, -1, -1, -1, -1, 3424, -1, -1, - 6030, -1, -1, -1, 1213, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 4441, -1, -1, -1, -1, - 4446, -1, -1, 4151, -1, -1, 4154, -1, 4156, -1, - -1, -1, -1, -1, -1, 3472, -1, -1, 6078, -1, - -1, 4169, -1, 3480, -1, -1, 6086, 6087, 1213, -1, - -1, -1, -1, 4181, -1, -1, 6096, 4185, -1, -1, - 4394, -1, -1, -1, -1, -1, -1, -1, 3505, -1, - -1, -1, -1, -1, -1, -1, 4204, -1, 24, -1, - -1, -1, -1, 29, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 4222, -1, -1, 2051, -1, -1, - 4228, -1, -1, -1, -1, -1, -1, 4441, -1, -1, - -1, -1, 4446, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 4253, 3123, -1, -1, 4257, - -1, -1, -1, -1, 80, 81, -1, -1, 3575, -1, - 3577, -1, -1, -1, 3141, 4273, 4274, 4275, 4276, -1, - 96, 3148, -1, 4579, -1, 4283, 4284, 4285, 4286, -1, - -1, -1, -1, -1, 4292, 4293, -1, -1, 114, -1, - 4298, 4299, -1, 4301, 4302, 4303, 4304, 4305, 4306, 4307, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 4317, - -1, -1, 138, 4321, 4322, 4323, 4324, -1, -1, -1, - -1, -1, -1, 149, -1, -1, -1, -1, -1, -1, - -1, -1, 158, -1, -1, -1, -1, 4345, -1, -1, - -1, -1, -1, -1, -1, 171, 3223, -1, -1, -1, - 176, -1, 3229, -1, 3671, 4363, -1, -1, -1, 1458, - -1, -1, -1, -1, -1, 4579, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 202, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3713, -1, 4704, -1, - -1, 227, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1458, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 249, 3741, -1, 1525, -1, -1, -1, - -1, 4439, -1, 3310, -1, -1, 4742, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 4764, 633, - -1, -1, -1, -1, 4472, 639, -1, 1566, -1, -1, - -1, 4479, -1, 4481, -1, -1, -1, -1, -1, -1, - 1525, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 4704, -1, 3809, -1, -1, 4503, -1, -1, 324, 325, - 1599, -1, 328, -1, -1, -1, -1, -1, 2642, -1, - -1, -1, 2646, 2647, 3831, -1, -1, -1, -1, -1, - -1, 1566, -1, -1, -1, -1, -1, -1, 4742, 355, - -1, 4837, 358, -1, -1, -1, 3853, -1, 364, -1, - -1, -1, -1, -1, -1, 371, -1, -1, 374, -1, - 4764, -1, -1, -1, 1599, -1, -1, -1, -1, -1, - -1, -1, 3439, 3440, -1, -1, -1, 393, -1, -1, - 2704, -1, -1, -1, 400, -1, 2710, -1, -1, -1, - 406, -1, -1, 409, -1, -1, -1, 413, -1, 3466, - -1, -1, 3469, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 428, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2751, -1, 3936, - -1, -1, -1, 4837, -1, -1, -1, 10, 454, -1, - 13, -1, -1, -1, 17, 18, 19, -1, -1, -1, - -1, -1, 816, 3960, -1, -1, -1, -1, -1, -1, - -1, -1, 4958, 36, -1, -1, 39, -1, -1, -1, - -1, 835, -1, 46, 3541, 3542, 3543, -1, 3985, -1, - 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 3566, - -1, 1790, -1, -1, -1, -1, 79, 4705, 4706, 4707, - -1, -1, 1801, 4711, 4712, 4713, 4714, -1, 3585, -1, - 4718, -1, -1, -1, -1, -1, -1, -1, 1817, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 3607, 905, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 4958, 1790, 4754, 4755, 4756, 4757, - 4758, -1, 4760, 4761, -1, -1, 1801, -1, -1, -1, - -1, -1, -1, -1, 4772, 4773, -1, -1, -1, -1, - -1, 1870, 1817, 5079, -1, -1, -1, -1, 952, -1, - -1, -1, -1, -1, -1, -1, 1885, -1, -1, 1888, - 1889, -1, -1, -1, -1, -1, -1, -1, -1, 4807, - -1, -1, -1, -1, -1, -1, -1, -1, 2642, -1, - 193, -1, 2646, 2647, -1, 198, 3693, -1, 4135, -1, - 1919, 1920, -1, -1, -1, 1870, 2960, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 220, 221, -1, - 1885, 5147, -1, 1888, 1889, -1, -1, -1, -1, -1, - -1, -1, 235, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 3740, -1, 5079, -1, -1, -1, 3746, - 2704, 3748, -1, -1, 1919, 1920, 2710, -1, -1, -1, - -1, -1, -1, -1, 3761, -1, 3763, -1, -1, -1, - -1, -1, 1066, 276, -1, -1, -1, -1, -1, 3033, - -1, 4909, -1, 3037, -1, -1, -1, 290, 4225, -1, - 293, -1, -1, -1, -1, -1, -1, 2751, -1, -1, - 1094, 1095, 1096, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 5147, 4251, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 2051, 3830, -1, -1, -1, -1, -1, -1, - -1, 5267, -1, -1, -1, -1, 4974, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 10, -1, -1, 13, -1, -1, -1, 17, 18, - 19, -1, -1, -1, -1, 3872, -1, -1, -1, 382, - -1, -1, -1, -1, -1, 3139, 2051, 36, -1, -1, - -1, -1, -1, -1, 3891, -1, -1, 46, -1, -1, - 3154, -1, -1, -1, 53, 3159, -1, -1, -1, 1203, - -1, -1, -1, -1, -1, -1, 3913, -1, -1, 3916, - -1, -1, -1, -1, -1, 1219, -1, -1, -1, -1, - 79, -1, -1, 5267, 1228, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 4394, 5086, -1, - -1, -1, -1, -1, -1, -1, -1, 5393, -1, -1, - -1, -1, 5398, 5399, -1, -1, -1, -1, -1, 482, - -1, -1, -1, -1, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, -1, -1, -1, -1, - 3997, -1, -1, -1, 4441, -1, 2960, -1, -1, 4446, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 5149, -1, -1, -1, 174, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 5168, -1, -1, -1, 193, -1, 5174, 5175, -1, 198, - -1, -1, -1, -1, -1, -1, 5184, -1, -1, 5393, - -1, -1, -1, 5191, 5398, 5399, -1, -1, -1, -1, - -1, 220, 221, -1, 1368, -1, -1, -1, -1, 3033, - -1, -1, -1, 3037, -1, 5511, 235, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5226, 5227, - -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, - 13, 5239, -1, 5241, 17, 18, 19, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 276, 5256, 5555, - -1, -1, -1, 36, -1, -1, 39, -1, -1, -1, - -1, 290, 4579, 46, 293, -1, -1, -1, -1, -1, - 53, -1, -1, 5281, 1448, -1, -1, -1, -1, -1, - 3414, 5289, -1, 3417, -1, 3419, -1, -1, -1, -1, - 3424, 4168, -1, -1, -1, -1, 79, 5511, -1, -1, - -1, -1, -1, -1, -1, 3139, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 3154, -1, -1, -1, -1, 3159, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 3472, -1, - -1, 5555, 4219, -1, -1, -1, 3480, 4224, -1, 4226, - 5358, -1, -1, 382, -1, -1, -1, 1531, -1, -1, - -1, -1, -1, -1, -1, -1, 1540, -1, -1, -1, - -1, 3505, -1, 4250, 5382, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5392, -1, -1, 4704, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1572, -1, - -1, -1, -1, -1, 1578, 1579, -1, -1, 1582, -1, - 193, -1, -1, -1, -1, 198, -1, -1, -1, -1, - 4297, 1595, -1, 4300, 1598, 4742, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 220, 221, -1, - -1, 3575, -1, 3577, -1, -1, -1, 4764, -1, -1, - -1, 5459, 235, 482, -1, -1, -1, -1, -1, -1, - -1, 490, 491, 492, 493, 494, 495, 496, 497, 498, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1654, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 276, 1668, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 290, -1, -1, - 293, -1, -1, 4390, 4391, -1, -1, -1, -1, -1, - 4837, 5529, -1, -1, 4401, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3671, -1, -1, - -1, 4418, -1, 2642, -1, -1, -1, 2646, 2647, -1, - -1, -1, -1, -1, -1, -1, -1, 813, 814, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 3713, - 3414, -1, 5590, 3417, -1, 3419, -1, -1, -1, -1, - 3424, -1, -1, -1, -1, -1, 5604, 2642, -1, 382, - -1, 2646, 2647, 1777, -1, 2704, -1, 3741, -1, -1, - -1, 2710, -1, -1, 1788, -1, -1, -1, -1, -1, - -1, -1, 4499, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 891, -1, -1, 3472, -1, - -1, 4958, -1, -1, -1, -1, 3480, -1, -1, -1, - -1, -1, 2751, -1, -1, 5663, 1830, 1831, -1, 2704, - 10, -1, -1, 13, -1, 2710, -1, 17, 18, 19, - -1, 3505, -1, -1, -1, 3809, -1, -1, -1, -1, - -1, 1855, -1, -1, -1, -1, 36, -1, 1862, -1, - -1, -1, -1, -1, -1, -1, 46, 3831, -1, 482, - -1, -1, -1, 53, -1, -1, 2751, 490, 491, 492, - 493, 494, 495, 496, 497, 498, -1, -1, -1, 3853, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 79, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 3575, -1, 3577, -1, 5753, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1012, 1013, -1, -1, - 1934, -1, 5079, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5785, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5796, -1, - -1, -1, -1, 1967, 1968, -1, -1, -1, -1, -1, - -1, -1, 3936, -1, -1, -1, -1, -1, -1, -1, - 1984, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3960, -1, -1, -1, - 5147, -1, -1, -1, -1, -1, -1, 3671, -1, -1, - 4717, -1, -1, 193, -1, -1, -1, -1, 198, -1, - -1, 3985, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 2960, -1, -1, -1, -1, -1, -1, -1, -1, - 220, 221, -1, -1, -1, -1, -1, -1, -1, 3713, - -1, -1, 4759, -1, -1, 235, -1, -1, -1, 5897, - -1, -1, -1, -1, 4771, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3741, -1, -1, - -1, -1, -1, -1, -1, 2960, -1, -1, -1, -1, - -1, -1, 1320, -1, -1, -1, 276, -1, -1, 4806, - -1, -1, -1, -1, 3033, -1, -1, -1, 3037, -1, - 290, -1, -1, 293, -1, -1, -1, -1, -1, -1, - 5267, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 3809, -1, -1, 1376, -1, - -1, -1, -1, -1, -1, -1, -1, 10, 3033, 1245, - 13, -1, 3037, -1, 17, 18, 19, 3831, -1, -1, - -1, 4135, -1, -1, -1, -1, -1, 4884, -1, -1, - -1, -1, -1, 36, -1, -1, 39, -1, -1, 3853, - 1276, -1, -1, 46, -1, -1, 4903, -1, -1, -1, - 53, -1, 382, -1, -1, -1, -1, -1, -1, -1, - 3139, -1, -1, -1, -1, -1, -1, -1, 1304, 1305, - 1306, -1, 1308, -1, -1, 3154, 79, -1, -1, -1, - 3159, -1, -1, -1, 414, -1, -1, -1, -1, -1, - -1, -1, 1328, -1, -1, -1, 5393, -1, -1, -1, - -1, 5398, 5399, -1, -1, -1, -1, -1, -1, -1, - -1, 4225, -1, -1, 3139, -1, -1, -1, -1, -1, - -1, -1, 3936, -1, -1, -1, -1, -1, -1, 3154, - -1, -1, 4989, -1, 3159, -1, -1, 4251, -1, -1, - -1, -1, -1, -1, -1, -1, 3960, -1, -1, -1, - -1, -1, 482, -1, -1, -1, -1, -1, -1, -1, - 490, 491, 492, 493, 494, 495, 496, 497, 498, -1, - -1, 3985, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 193, -1, -1, -1, -1, 198, 1432, -1, -1, -1, - 1436, 1437, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5511, -1, -1, 220, 221, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 235, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5101, -1, 5103, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5555, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 276, -1, -1, -1, -1, -1, -1, - 4394, -1, -1, -1, -1, -1, -1, 290, -1, -1, - 293, 5148, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1685, -1, -1, - -1, 1689, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 4135, -1, -1, -1, -1, -1, 4441, -1, -1, - -1, -1, 4446, -1, -1, 3414, -1, -1, 3417, -1, - 3419, 5198, -1, -1, 2498, 3424, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 2509, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 382, - -1, -1, -1, -1, -1, -1, -1, 2541, -1, 3414, - -1, -1, 3417, 3472, 3419, -1, -1, -1, -1, 3424, - -1, 3480, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 4225, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3505, -1, -1, -1, - -1, -1, -1, -1, 2588, 2589, -1, 4251, -1, -1, - -1, -1, -1, 1679, 1680, 1681, -1, 3472, -1, -1, - -1, -1, -1, -1, -1, 3480, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 4579, -1, -1, 2622, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 482, - 3505, -1, -1, -1, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 3575, -1, 3577, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 3575, -1, 3577, -1, 5411, -1, -1, 10, -1, -1, - 13, -1, -1, -1, 17, 18, 19, -1, 5425, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 4394, -1, -1, 36, -1, -1, -1, -1, -1, -1, - 4704, -1, 3671, 46, -1, -1, -1, -1, -1, 5456, - 53, 2755, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 2770, -1, -1, -1, - -1, -1, -1, -1, -1, 2003, 79, 4441, 4742, -1, - -1, -1, 4446, -1, 3713, -1, -1, -1, 2792, -1, - 2018, -1, -1, -1, 2022, -1, 3671, -1, -1, -1, - 4764, -1, -1, -1, -1, -1, -1, -1, -1, 2037, - 2038, 2039, 3741, 2041, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 3713, -1, - -1, -1, -1, -1, -1, 5552, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 10, -1, -1, 13, - -1, -1, -1, 17, 18, 19, 3741, -1, -1, -1, - -1, 174, -1, 4837, 2878, 2879, -1, -1, -1, -1, - 3809, -1, 36, -1, -1, -1, -1, -1, -1, -1, - 193, -1, 46, -1, -1, 198, -1, -1, -1, 53, - -1, -1, 3831, -1, -1, -1, -1, -1, -1, -1, - 5617, -1, 5619, -1, -1, 4579, -1, 220, 221, 2005, - -1, -1, -1, -1, 3853, 79, -1, -1, -1, -1, - -1, 2017, 235, 2019, 3809, 2021, -1, -1, 2024, 2025, - 2026, -1, -1, -1, -1, -1, 2032, -1, -1, 2035, - -1, -1, -1, -1, -1, -1, 3831, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 2052, 2053, 2054, -1, - -1, -1, -1, 276, -1, 2979, -1, -1, 3853, -1, - -1, -1, -1, 2069, -1, -1, -1, 290, -1, -1, - 293, -1, -1, -1, 4958, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3936, -1, -1, - -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, - 174, -1, 17, 18, 19, -1, -1, -1, -1, -1, - -1, 3960, -1, -1, 5741, -1, -1, -1, -1, 193, - 4704, 36, -1, -1, 198, -1, -1, -1, -1, -1, - -1, 46, -1, -1, -1, -1, 3985, -1, 53, -1, - 5767, 3936, -1, -1, -1, -1, 220, 221, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 4742, 382, - -1, 235, -1, -1, 79, 3960, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 4764, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 3985, -1, -1, -1, -1, 5079, -1, -1, -1, -1, - -1, -1, 276, -1, -1, -1, 2212, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 290, -1, -1, 293, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 2252, -1, -1, -1, - -1, -1, -1, 4837, 169, -1, -1, 5884, -1, 482, - -1, -1, -1, 5147, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, -1, -1, 193, -1, - -1, -1, -1, 198, -1, -1, 4135, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 2305, - -1, -1, -1, -1, -1, 220, 221, -1, 382, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 235, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 4135, -1, -1, -1, -1, -1, -1, -1, -1, 2497, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 276, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 3296, -1, 4958, 290, 4225, -1, 293, -1, - -1, -1, -1, 5267, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 3317, -1, -1, -1, -1, -1, -1, - -1, -1, 4251, 6030, -1, -1, -1, -1, 482, -1, - -1, -1, -1, -1, -1, -1, 490, 491, 492, 493, - 494, 495, 496, 497, 498, -1, -1, -1, -1, -1, - 4225, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2595, -1, -1, - -1, 6078, -1, -1, -1, -1, 4251, -1, -1, 2607, - -1, -1, -1, -1, 2612, -1, -1, 382, -1, 6096, - -1, -1, -1, -1, 2480, 2481, 2482, 2483, 2484, 2485, - 2486, 2487, 2488, -1, 2490, -1, -1, -1, -1, -1, - -1, -1, -1, 2499, -1, 5079, 2502, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 5393, - -1, -1, -1, -1, 5398, 5399, -1, 10, -1, -1, - 13, -1, -1, -1, 17, 18, 19, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2543, -1, -1, - -1, 2547, -1, 36, 2550, 4394, 2552, -1, -1, 2555, - -1, -1, -1, 46, -1, -1, -1, -1, -1, -1, - 53, -1, -1, 5147, -1, -1, -1, 482, -1, -1, - -1, -1, -1, -1, -1, 490, 491, 492, 493, 494, - 495, 496, 497, 498, -1, -1, 79, -1, -1, -1, - -1, -1, 4441, -1, -1, -1, -1, 4446, -1, 4394, - -1, -1, 2608, 2609, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5511, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 4441, -1, -1, -1, - -1, 4446, -1, -1, -1, 148, -1, -1, -1, 3583, - -1, -1, -1, -1, -1, 10, -1, -1, 13, 3593, - -1, 5555, 17, 18, 19, -1, -1, -1, -1, -1, - -1, -1, -1, 5267, -1, 2691, -1, -1, -1, -1, - -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, - 193, 46, -1, -1, -1, 198, -1, -1, 53, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 220, 221, -1, - 4579, -1, -1, -1, 79, -1, -1, -1, -1, -1, - -1, -1, 235, -1, -1, -1, -1, -1, -1, -1, - -1, 10, -1, -1, 13, -1, -1, -1, 17, 18, - 19, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 36, -1, -1, - -1, -1, -1, 276, 4579, -1, -1, 46, -1, -1, - -1, -1, -1, -1, 53, -1, -1, 290, -1, -1, - 293, -1, -1, -1, -1, -1, -1, -1, -1, 5393, - -1, -1, -1, -1, 5398, 5399, -1, -1, -1, -1, - 79, -1, -1, -1, -1, -1, -1, -1, 3752, 3753, - 3754, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 3769, -1, -1, 193, -1, - -1, -1, -1, 198, -1, 4704, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 220, 221, -1, 3802, 3803, - -1, -1, -1, 3807, -1, -1, -1, -1, -1, 382, - 235, -1, -1, 4742, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 4704, - 169, -1, -1, -1, -1, 4764, -1, -1, -1, -1, - 2926, 2927, 2928, -1, -1, -1, 2932, 5511, -1, -1, - -1, 276, -1, -1, 193, -1, -1, -1, -1, 198, - -1, -1, -1, -1, -1, 290, -1, 4742, 293, -1, - -1, -1, -1, 2959, -1, -1, -1, -1, -1, -1, - -1, 220, 221, -1, -1, -1, -1, -1, -1, 4764, - -1, 5555, -1, -1, -1, -1, 235, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3911, 4837, 482, - 3914, -1, -1, -1, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 276, -1, -1, - -1, -1, 3170, -1, -1, -1, -1, -1, -1, -1, - -1, 290, -1, -1, 293, -1, -1, 382, -1, -1, - -1, -1, 4837, 3191, 3192, -1, 3194, -1, -1, -1, - -1, 3199, 3200, -1, 3202, -1, 3204, -1, -1, -1, - 3208, -1, -1, 3211, -1, -1, -1, -1, 3216, -1, - -1, -1, -1, -1, -1, -1, -1, 3225, -1, -1, - -1, -1, 3230, -1, -1, -1, -1, -1, -1, -1, - 3238, 3239, 3240, 3241, -1, -1, -1, 3245, 3246, -1, - 3248, -1, -1, -1, -1, -1, -1, -1, -1, 4958, - -1, -1, 457, -1, -1, -1, -1, 3265, -1, 3267, - 4044, 4045, 4046, 382, -1, -1, 3274, 3275, 3276, 3277, - 3278, 3279, 3280, 3281, 3282, 3283, -1, 482, -1, -1, - -1, -1, -1, -1, -1, 490, 491, 492, 493, 494, - 495, 496, 497, 498, -1, -1, -1, -1, -1, -1, - -1, 3167, -1, 4958, -1, -1, 3172, -1, -1, -1, - 3318, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, - -1, -1, 17, 18, 19, 3201, -1, -1, -1, -1, - -1, 24, -1, -1, -1, -1, 3212, -1, 3214, 3215, - -1, 36, -1, -1, -1, -1, -1, -1, -1, 42, - -1, 46, 3228, 482, -1, 3231, -1, 3233, 53, -1, - 5079, 490, 491, 492, 493, 494, 495, 496, 497, 498, - -1, -1, -1, -1, 67, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 79, -1, -1, 80, -1, -1, - -1, -1, 3268, -1, 3270, -1, 3272, -1, -1, -1, - -1, -1, -1, 96, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5079, -1, -1, -1, -1, -1, - -1, 114, -1, -1, -1, -1, -1, 120, 5147, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 3460, -1, -1, 138, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 149, -1, -1, -1, - -1, -1, -1, -1, -1, 158, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 171, -1, - -1, -1, 5147, -1, 3360, -1, 179, -1, -1, 3365, - 183, -1, -1, -1, -1, -1, -1, -1, 193, -1, - -1, -1, -1, 198, 3380, -1, -1, -1, -1, 202, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 220, 221, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 235, -1, -1, -1, -1, -1, 239, -1, 5267, -1, - -1, -1, -1, -1, -1, -1, 249, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 3445, - -1, -1, -1, -1, -1, -1, -1, 4371, -1, -1, - -1, 276, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 290, -1, 290, 293, -1, - 293, -1, 5267, -1, -1, -1, -1, -1, -1, 4403, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 314, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 328, -1, -1, -1, -1, - -1, 4435, 335, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 355, -1, -1, -1, -1, -1, -1, -1, - -1, 364, -1, -1, 5393, -1, 4470, -1, 371, 5398, - 5399, 374, -1, -1, 3702, 3703, -1, 382, -1, 3707, - -1, -1, -1, 4487, -1, -1, -1, -1, -1, -1, - 393, -1, -1, -1, -1, -1, -1, 400, -1, -1, - -1, -1, -1, 406, -1, -1, 409, 410, 3736, 412, - 413, -1, -1, -1, -1, -1, -1, -1, 5393, -1, - -1, -1, -1, 5398, 5399, 428, -1, -1, -1, -1, - -1, -1, 435, -1, -1, 438, -1, -1, 441, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 454, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 482, -1, -1, - -1, -1, 5511, -1, -1, 490, 491, 492, 493, 494, - 495, 496, 497, 498, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 4608, 4609, 4610, 4611, -1, -1, - -1, -1, 3698, -1, -1, -1, -1, -1, 3704, -1, - -1, -1, -1, -1, -1, -1, 5555, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 5511, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 5555, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3783, -1, -1, - -1, -1, -1, -1, 3932, -1, -1, -1, -1, -1, - 3938, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 3957, - 3958, -1, -1, 3961, 3962, 3963, 3964, -1, -1, 3967, - 3968, 3969, 3970, 3971, 3972, 3973, 3974, 3975, 3976, 3977, - 24, -1, -1, -1, -1, 29, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 4000, -1, 22, 4003, -1, 4005, -1, -1, - 4008, 4009, -1, -1, 32, -1, 34, 35, -1, -1, - -1, -1, -1, 67, -1, -1, 4024, 4025, 4026, 4027, - -1, 4029, -1, -1, -1, -1, 80, 81, -1, -1, - -1, -1, -1, -1, 62, -1, -1, -1, 92, -1, - -1, -1, 96, -1, -1, -1, 74, -1, 76, 77, - -1, -1, -1, -1, -1, 83, -1, 85, -1, -1, - 114, -1, -1, -1, -1, -1, -1, 3933, -1, 97, - -1, 99, -1, -1, -1, 3941, -1, 3943, -1, -1, - -1, -1, -1, -1, 138, 3951, 4094, 3953, 116, -1, - -1, 119, -1, -1, -1, 149, -1, -1, -1, -1, - -1, -1, -1, -1, 158, -1, 134, -1, 136, -1, - -1, -1, 140, -1, 3980, 3981, 3982, 171, 146, -1, - -1, -1, 176, -1, -1, -1, 154, -1, 156, -1, - -1, -1, -1, 3999, -1, 163, 4144, -1, -1, -1, - -1, 4007, -1, -1, 4010, -1, 4012, -1, 202, -1, - -1, -1, 180, -1, -1, -1, 4022, -1, -1, -1, - -1, -1, -1, -1, 4030, 4031, -1, 4951, -1, 197, - -1, -1, -1, 227, -1, -1, -1, -1, 4962, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 249, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 237, - 238, -1, -1, -1, -1, 243, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 257, - -1, -1, -1, -1, -1, -1, 290, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 4112, 275, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 314, -1, -1, 4129, -1, -1, -1, -1, -1, -1, - 324, 325, -1, -1, 328, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 319, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 355, -1, -1, 358, 333, -1, -1, 362, -1, - 364, 339, 340, -1, 342, -1, -1, 371, -1, 347, - 374, -1, 350, -1, -1, 353, -1, -1, 356, -1, - -1, -1, -1, -1, -1, 363, -1, -1, -1, 393, - -1, 369, 370, -1, -1, -1, 400, -1, -1, 377, - -1, -1, 406, 381, -1, 409, 4364, -1, -1, 413, - -1, -1, -1, 391, -1, -1, -1, 421, -1, 423, - -1, -1, -1, -1, 428, -1, -1, -1, 406, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 426, 4407, - 454, -1, -1, -1, -1, -1, -1, -1, -1, 437, - -1, -1, -1, -1, -1, 443, -1, -1, -1, -1, - 448, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 461, -1, -1, 5220, -1, -1, -1, - -1, 5225, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 484, -1, -1, -1, - 5244, -1, -1, -1, -1, -1, -1, -1, 29, -1, - -1, -1, -1, -1, 502, -1, -1, 505, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 4526, 80, - -1, -1, 4530, 4531, -1, 4533, 4534, -1, -1, -1, - -1, 4539, 4540, 4541, 4542, 96, -1, -1, 4546, 4547, - 4548, 4549, 4550, 4551, 4552, 4553, 4554, 4555, 4556, 4557, - 4558, -1, -1, 114, -1, -1, -1, -1, -1, 120, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 4583, -1, 138, 4586, -1, - 4588, 4447, 4448, 4591, -1, -1, 4594, 4595, 149, -1, - 4598, 4599, 4458, -1, 5378, -1, -1, 158, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 171, -1, -1, -1, -1, 176, -1, -1, -1, -1, - -1, -1, 183, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 202, -1, -1, -1, -1, -1, -1, -1, 4657, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 4525, - -1, -1, -1, 4671, -1, -1, 227, -1, -1, -1, - -1, 4537, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 249, -1, - -1, -1, -1, -1, 5478, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 4576, 4577, -1, -1, -1, -1, -1, -1, 4584, 4585, - -1, -1, 5506, 4589, -1, -1, -1, 4593, -1, 290, - 4596, 4597, -1, -1, -1, 4601, -1, -1, -1, -1, - -1, 4607, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 314, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 324, 325, -1, -1, 328, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 4647, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 4658, -1, 355, -1, -1, 358, -1, -1, - 4666, 362, -1, 364, -1, -1, -1, -1, -1, -1, - 371, -1, -1, 374, -1, -1, -1, -1, -1, -1, - 4686, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 393, -1, -1, -1, -1, -1, -1, 400, - -1, -1, -1, -1, 405, 406, -1, -1, 409, -1, - -1, -1, 413, -1, -1, -1, -1, -1, 4866, -1, - -1, -1, 423, -1, -1, -1, -1, 428, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 441, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 454, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 4787, -1, -1, -1, -1, -1, -1, 4794, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 4953, 4954, -1, -1, -1, - -1, -1, -1, 4961, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5003, -1, 4863, -1, -1, - -1, 5009, 5010, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 5028, -1, 5030, -1, -1, -1, 5034, 5035, 5036, 5037, - -1, -1, 5040, 5041, -1, -1, -1, 5045, -1, -1, - -1, 5049, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5063, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 5081, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5095, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5105, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 5007, -1, -1, -1, -1, -1, 5013, 5014, 5015, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 5169, -1, 5171, -1, -1, -1, -1, -1, -1, - -1, -1, 5038, 5039, -1, -1, 5042, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5206, -1, - -1, -1, -1, 5069, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5080, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 5096, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5293, -1, 5295, 5296, 5297, - 5298, 5299, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5310, 5311, 5312, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5325, -1, -1, - 5328, -1, -1, -1, 5332, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5350, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5365, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5300, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5343, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5535, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5403, -1, -1, - -1, 5549, -1, 5551, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 5445, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5603, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 5639, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5534, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5705, 5564, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 5592, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5752, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 5837, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5850, 5851, 5710, 5711, 5712, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 5864, -1, -1, -1, - -1, -1, 5728, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5738, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5905, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 5930, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 5946, 5947, - -1, -1, 5808, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 5832, -1, 5834, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 6006, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 3, -1, 5, 6, -1, 8, 9, 10, - 11, 12, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, -1, -1, 5951, -1, 38, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, 80, - 5996, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, 135, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, 6065, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, 232, 233, 234, 235, -1, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, 298, 299, 300, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 433, -1, 435, 436, 437, 438, 439, 440, - 441, -1, 443, 444, 445, 446, 447, 448, 449, 450, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 493, 494, 495, -1, -1, -1, -1, -1, - -1, 502, 503, 3, -1, 5, 6, -1, 8, 9, - 10, 11, 12, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, 38, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - 80, -1, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, 173, -1, 175, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, 208, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, -1, - -1, 231, 232, 233, 234, 235, -1, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 433, -1, 435, 436, 437, 438, 439, - 440, 441, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, 452, 453, 454, 455, 456, -1, -1, 459, - -1, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 482, -1, 484, -1, -1, -1, -1, -1, - -1, -1, -1, 493, 494, -1, -1, -1, -1, -1, - -1, -1, 502, 503, 3, -1, 5, 6, -1, 8, - 9, 10, 11, 12, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, 38, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, 80, -1, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, 173, -1, 175, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, 208, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - -1, -1, 231, 232, 233, 234, 235, -1, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, 382, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, 408, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, -1, 435, 436, 437, 438, - 439, 440, 441, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, 452, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 482, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 493, 494, -1, -1, -1, -1, - -1, -1, -1, 502, 503, 3, -1, 5, 6, -1, - 8, 9, 10, 11, 12, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - 38, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, 80, -1, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, 173, -1, 175, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - 208, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, -1, -1, 231, 232, 233, 234, 235, -1, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - 408, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, -1, 435, 436, 437, - 438, 439, 440, 441, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, 452, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 482, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 493, 494, -1, -1, -1, - -1, -1, -1, -1, 502, 503, 3, -1, 5, 6, - -1, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, 3, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, -1, -1, -1, -1, 502, 503, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, 39, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, 100, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, -1, -1, - 175, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, 208, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, 223, 224, - 225, 226, 227, 228, -1, -1, 231, 232, 233, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, -1, -1, -1, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 503, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, 49, 50, 51, 52, - -1, 54, 55, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, -1, -1, 80, -1, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, 100, 101, 102, - 103, -1, -1, -1, 107, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, -1, 156, 157, 158, 159, -1, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - 173, -1, 175, 176, 177, 178, 179, -1, 181, -1, - -1, -1, 185, 186, -1, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, - 203, 204, 205, -1, 207, 208, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, -1, -1, 231, -1, - 233, 234, 235, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, -1, -1, 272, - -1, 274, 275, 276, 277, -1, -1, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, 298, 299, 300, -1, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, -1, 316, -1, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, -1, 402, - -1, 404, 405, -1, 407, 408, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, -1, - 423, -1, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, -1, 449, 450, 451, 452, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 479, 480, 481, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - 503, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, 49, 50, 51, 52, -1, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - -1, -1, 80, -1, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, 100, 101, 102, 103, -1, -1, -1, 107, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, -1, 156, 157, - 158, 159, -1, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, 173, -1, 175, 176, 177, - 178, 179, -1, 181, -1, -1, -1, 185, 186, -1, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, -1, 207, - 208, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, -1, -1, 231, -1, 233, 234, 235, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, -1, -1, 272, -1, 274, 275, 276, 277, - -1, -1, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - 298, 299, 300, -1, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, -1, 316, -1, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, 354, 355, 356, 357, - 358, 359, -1, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, -1, 402, -1, 404, 405, -1, 407, - 408, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, -1, 423, -1, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - -1, 449, 450, 451, 452, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - -1, 3, -1, 5, 6, -1, 8, 9, 10, 11, - 12, 479, 480, 481, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, 503, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, 484, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, 174, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, 230, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, 419, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, -1, -1, -1, 37, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 1798, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 943, 301, 0, 0, 944, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, - 37, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 945, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 943, 301, 0, 0, 944, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, -1, -1, 500, 501, - 502, 3, -1, 5, 6, -1, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 1097, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 945, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 943, 301, 0, 0, 944, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1139, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, 495, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 945, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 943, 301, 0, 0, 944, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1152, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, 450, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, 174, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 945, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 943, 301, 0, 0, 944, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1164, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, 418, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 1165, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 945, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 694, 0, 0, 0, 0, 0, + 2547, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 2548, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 694, 0, 0, 0, 0, 0, + 1366, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 694, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 234, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 482, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 234, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1123, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, -1, -1, -1, 3, -1, 5, 6, - 502, 8, 9, 10, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, -1, -1, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, -1, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, 435, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 493, 494, -1, -1, - -1, 3, -1, 5, 6, 502, 8, 9, 10, 11, - 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, 38, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 234, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1136, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 493, 494, 3, -1, 5, 6, -1, 8, 9, - 502, 11, 12, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, 38, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - 80, -1, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, 173, -1, 175, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, 208, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, -1, - -1, 231, 232, 233, 234, 235, -1, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, 408, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, 441, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, 452, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 493, 494, 3, -1, 5, 6, -1, - 8, 9, 502, 11, 12, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - 38, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, 80, -1, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, 173, -1, 175, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - 208, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, -1, -1, 231, 232, 233, 234, 235, -1, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - 408, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, 441, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, 452, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, -1, -1, 3, -1, 5, 6, - -1, 8, 9, -1, 11, 12, -1, -1, -1, -1, - -1, -1, -1, -1, 502, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, 38, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, 441, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, -1, -1, 3, -1, 5, - 6, -1, 8, 9, -1, 11, 12, -1, -1, -1, - -1, -1, -1, -1, -1, 502, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, 38, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, 80, -1, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, 173, -1, 175, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, 208, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, -1, -1, 231, 232, 233, 234, 235, - -1, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, 408, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, 441, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, 452, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, -1, -1, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 502, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, 67, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, 80, -1, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, 173, -1, - 175, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, 208, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, -1, 231, 232, 233, 234, - 235, -1, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, 276, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, 289, 290, 291, 292, -1, -1, - 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, - 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, 441, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, 452, 453, 454, - 455, 456, -1, -1, 459, -1, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, -1, -1, 484, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 502, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, 67, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, 80, -1, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - 173, -1, 175, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, 208, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, -1, 231, 232, - 233, 234, 235, -1, 237, 238, 239, 240, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, 276, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, 289, 290, 291, 292, - -1, -1, 295, 296, 297, 298, 299, 300, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, 408, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, 441, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, 452, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, -1, - -1, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 502, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, 67, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, 276, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 234, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1150, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, 441, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - -1, -1, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 502, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, 67, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, 80, - -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, 232, 233, 234, 235, -1, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, 276, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, 298, 299, 300, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - 441, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, -1, -1, 3, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 502, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, 67, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - 80, -1, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, 173, -1, 175, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, 208, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, -1, - -1, 231, 232, 233, 234, 235, -1, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, 276, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, 408, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, 441, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, 452, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, -1, -1, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 502, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, 67, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, 80, -1, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, 173, -1, 175, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, 208, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - -1, -1, 231, 232, 233, 234, 235, -1, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, 276, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, 382, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, 408, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, 441, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, 452, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, -1, -1, 3, -1, 5, 6, -1, - -1, -1, -1, 11, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 502, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, 80, -1, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, 100, 101, 102, 103, -1, -1, -1, 107, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, 173, -1, 175, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - 208, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, -1, -1, 231, 232, 233, 234, 235, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, 276, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - 288, -1, 290, 291, 292, -1, -1, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - 408, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, 452, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, -1, -1, 3, -1, -1, -1, - -1, -1, -1, -1, -1, 493, 494, 495, -1, -1, - -1, -1, -1, -1, 502, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, 34, 35, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, -1, -1, -1, - 107, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, 276, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, 406, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, 461, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, -1, -1, 484, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 502, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, 80, -1, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, 100, 101, 102, 103, -1, - -1, -1, 107, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, 173, -1, - 175, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, 208, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, -1, -1, 231, 232, 233, 234, - 235, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, 276, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, 382, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, 408, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, 452, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, -1, -1, 3, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 502, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, -1, 50, 51, 52, 53, - 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, -1, -1, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, -1, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, -1, - -1, -1, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, -1, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, -1, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, -1, -1, 222, -1, - 224, 225, 226, 227, 228, -1, -1, 231, 232, -1, - 234, -1, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, -1, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, -1, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, -1, 299, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - -1, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, 406, 407, -1, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, -1, 453, - 454, 455, 456, -1, -1, 459, -1, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, -1, -1, - 484, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 502, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, 107, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, -1, -1, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, 289, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 234, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1154, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, 406, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - -1, -1, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 502, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, -1, -1, 3, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 502, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - -1, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, -1, -1, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 502, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, -1, -1, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 502, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, -1, -1, 82, 83, 84, 85, 86, 87, - -1, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, -1, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, -1, -1, -1, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, -1, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - -1, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, -1, -1, 222, -1, 224, 225, 226, 227, - 228, -1, -1, 231, 232, -1, 234, -1, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, -1, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, -1, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - -1, 299, -1, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, -1, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - -1, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, -1, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, -1, -1, 3, -1, 5, 6, - -1, -1, -1, 10, 11, -1, -1, -1, -1, -1, - 17, 18, 19, -1, 502, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, -1, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, -1, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, -1, 156, - 157, 158, 159, -1, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, -1, 183, -1, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, -1, 210, 211, 212, 213, 214, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, -1, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, -1, 272, 273, 274, 275, 276, - 277, 278, -1, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - -1, 298, 299, 300, -1, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, 312, 313, 314, -1, 316, - -1, 318, 319, 320, 321, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, -1, 361, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, -1, 402, 403, 404, 405, 406, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, -1, 423, -1, 425, 426, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, -1, 449, 450, 451, 452, 453, 454, 455, 456, - 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, - 467, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 479, 480, 481, -1, -1, -1, -1, -1, - -1, -1, -1, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 3, -1, 5, 6, -1, -1, -1, 10, - 11, -1, -1, -1, -1, -1, 17, 18, 19, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, -1, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 73, 74, 75, 76, 77, -1, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, -1, 156, 157, 158, 159, -1, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, - 181, -1, 183, -1, 185, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, -1, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, -1, 233, 234, 235, 236, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - -1, 272, 273, 274, 275, 276, 277, 278, -1, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, -1, 298, 299, 300, - -1, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, -1, 316, -1, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, -1, - 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - -1, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, -1, 423, -1, 425, 426, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, -1, 449, 450, - 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 479, 480, - 481, -1, -1, -1, -1, -1, -1, -1, -1, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 3, -1, - -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, - -1, -1, 17, 18, 19, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, -1, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, -1, -1, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, -1, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - -1, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, -1, -1, - 165, 166, 167, 168, -1, 170, 171, 172, 173, -1, - 175, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, -1, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, -1, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, -1, 254, - 255, -1, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, 289, 290, 291, 292, 293, -1, - 295, 296, 297, 298, -1, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, -1, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, -1, 369, 370, 371, 372, 373, 374, - 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, -1, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, -1, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 449, 450, -1, 452, 453, 454, - 455, 456, 457, -1, 459, -1, -1, -1, -1, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, -1, 480, 481, 482, -1, -1, - -1, -1, -1, -1, -1, 490, 491, 492, 493, 494, - 495, 496, 497, 498, 3, -1, -1, -1, -1, -1, - -1, 10, -1, -1, -1, -1, -1, -1, 17, 18, - 19, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, -1, -1, -1, -1, -1, -1, -1, - -1, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 3, -1, -1, -1, -1, -1, -1, 10, -1, -1, - -1, -1, -1, -1, 17, 18, 19, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, -1, - -1, -1, -1, -1, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 3, -1, -1, -1, - -1, -1, -1, 10, -1, -1, -1, -1, -1, -1, - 17, 18, 19, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, -1, -1, 82, 83, 84, 85, 86, - 87, -1, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, -1, 101, 102, 103, -1, -1, -1, - -1, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, -1, -1, -1, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, -1, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, -1, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, -1, -1, 222, -1, 224, 225, 226, - 227, 228, -1, -1, 231, 232, -1, 234, -1, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, -1, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, -1, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, -1, 299, -1, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, -1, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, -1, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, -1, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, -1, -1, -1, -1, -1, - -1, -1, -1, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 3, -1, -1, -1, -1, -1, -1, 10, - -1, -1, -1, -1, -1, -1, 17, 18, 19, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, -1, -1, -1, -1, -1, -1, -1, -1, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 3, -1, - -1, -1, -1, -1, -1, 10, -1, -1, -1, -1, - -1, -1, 17, 18, 19, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, -1, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, -1, -1, - -1, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, -1, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, -1, 224, - 225, 226, 227, 228, -1, -1, 231, 232, -1, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, -1, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, -1, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, -1, -1, -1, - -1, -1, -1, -1, -1, 490, 491, 492, 493, 494, - 495, 496, 497, 498, 3, -1, -1, -1, -1, -1, - -1, 10, -1, -1, -1, -1, -1, -1, 17, 18, - 19, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, -1, -1, -1, -1, -1, -1, -1, - -1, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 3, -1, -1, -1, -1, -1, -1, 10, -1, -1, - -1, -1, -1, -1, 17, 18, 19, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, - -1, -1, -1, -1, -1, -1, -1, 490, 491, 492, - 493, 494, 495, 496, 497, 498, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 942, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, - 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 495, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, -1, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, -1, -1, - -1, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, -1, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, -1, 224, - 225, 226, 227, 228, -1, -1, 231, 232, -1, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, -1, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, -1, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 495, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, -1, -1, 82, 83, 84, 85, - 86, 87, -1, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, -1, 101, 102, 103, -1, -1, - -1, -1, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, -1, -1, -1, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, -1, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, -1, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, -1, -1, 222, -1, 224, 225, - 226, 227, 228, -1, -1, 231, 232, -1, 234, -1, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, -1, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - -1, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, -1, 299, -1, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, -1, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, -1, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, -1, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, -1, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 495, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, -1, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, -1, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, -1, -1, -1, - 107, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, -1, 156, - 157, 158, 159, -1, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, -1, -1, -1, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, -1, 233, 234, 235, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, -1, -1, 272, -1, 274, 275, 276, - 277, -1, -1, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, 294, 295, 296, - 297, 298, 299, 300, -1, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, -1, 316, - -1, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, -1, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, -1, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, -1, 423, -1, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, -1, 449, 450, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 479, 480, 481, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, 495, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, -1, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, -1, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, -1, -1, -1, 107, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, -1, 156, 157, 158, 159, -1, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - -1, -1, -1, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - -1, 233, 234, 235, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, -1, -1, - 272, -1, 274, 275, 276, 277, -1, -1, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, 294, 295, 296, 297, 298, 299, 300, -1, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, -1, 316, -1, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, -1, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - -1, 423, -1, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, -1, 449, 450, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 3, -1, 5, 6, - -1, -1, -1, -1, 11, 12, -1, 479, 480, 481, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, 495, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, -1, -1, -1, - 107, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, 276, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, 288, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, 5, 6, -1, - -1, -1, -1, 11, 12, -1, 493, 494, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, 80, -1, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, 100, 101, 102, 103, -1, -1, -1, 107, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, 173, -1, 175, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - 208, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, -1, -1, 231, 232, 233, 234, 235, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, 276, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - 288, -1, 290, 291, 292, -1, -1, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - 408, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, 452, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, 5, 6, -1, -1, - -1, -1, 11, -1, -1, 493, 494, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, 80, -1, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, 100, 101, 102, 103, -1, -1, -1, 107, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, 173, -1, 175, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, 208, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - -1, -1, 231, 232, 233, 234, 235, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, 276, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, 288, - -1, 290, 291, 292, -1, -1, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, 382, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, 408, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, 452, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, 5, 6, -1, -1, -1, - -1, 11, 12, -1, 493, 494, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - 80, -1, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - 100, 101, 102, 103, -1, -1, -1, 107, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, 173, -1, 175, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, 208, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, -1, - -1, 231, 232, 233, 234, 235, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, 276, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, 288, -1, - 290, 291, 292, -1, -1, 295, 296, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, 408, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, 452, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, 5, 6, -1, -1, -1, -1, - 11, -1, -1, 493, 494, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, 80, - -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, -1, -1, -1, 107, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, 232, 233, 234, 235, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, 276, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, 288, -1, 290, - 291, 292, -1, -1, 295, 296, 297, 298, 299, 300, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, 11, - -1, -1, 493, 494, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, -1, 174, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, 5, 6, -1, -1, -1, -1, 11, -1, - -1, 493, 494, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, - 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, - 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 449, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 467, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 544, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 2713, 275, 276, 277, 278, 279, 0, 0, + 2782, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 2714, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 2783, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 2716, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 2784, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 2717, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 2718, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 2713, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 2714, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 2783, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 2716, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 3812, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 2717, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 2718, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 774, + 244, 775, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 776, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, - 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, - 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, - 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, 67, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, 80, -1, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, 173, -1, 175, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, 208, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, -1, -1, 231, 232, 233, 234, 235, - -1, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - 276, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, 408, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, 441, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, 452, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, 5, 6, - -1, 8, 9, -1, 11, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, -1, -1, -1, - 107, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, 80, -1, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, 100, 101, 102, 103, -1, -1, 106, 107, - -1, -1, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, 173, -1, 175, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - 208, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, -1, -1, 231, 232, 233, 234, 235, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, 276, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - 408, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, 452, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, 80, -1, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, 100, 101, 102, 103, -1, -1, 106, 107, -1, - -1, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, 173, -1, 175, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, 208, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - -1, -1, 231, 232, 233, 234, 235, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, 276, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, 382, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, 408, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, 452, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - 80, -1, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - 100, 101, 102, 103, -1, -1, 106, 107, -1, -1, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, 173, -1, 175, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, 208, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, -1, - -1, 231, 232, 233, 234, 235, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, 276, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, 408, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, 441, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, 452, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, 80, - -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, -1, -1, 106, 107, -1, -1, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, 182, 183, 184, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, 232, 233, 234, 235, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, 276, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, 298, 299, 300, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, 6, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, -1, -1, -1, 107, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, 276, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, 288, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, 80, -1, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, 100, 101, 102, - 103, -1, -1, 106, 107, -1, -1, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - 173, -1, 175, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, 208, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, -1, -1, 231, 232, - 233, 234, 235, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, 276, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, 298, 299, 300, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, 408, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, 452, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, 80, -1, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, 100, 101, 102, 103, - -1, -1, 106, 107, -1, -1, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, 173, - -1, 175, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, 208, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, -1, -1, 231, 232, 233, - 234, 235, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, 276, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, -1, 407, 408, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, 452, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, 80, -1, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, 100, 101, 102, 103, -1, - -1, 106, 107, -1, -1, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, 173, -1, - 175, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, 208, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, -1, -1, 231, 232, 233, 234, - 235, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, 276, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, 408, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, 452, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, 80, -1, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, 100, 101, 102, 103, -1, -1, - 106, 107, -1, -1, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, 173, -1, 175, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, 208, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, -1, -1, 231, 232, 233, 234, 235, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - 276, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, 408, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, 452, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, -1, -1, 106, - 107, -1, -1, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, 276, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, 6, -1, - -1, -1, -1, -1, 12, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, 80, -1, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, 100, 101, 102, 103, -1, -1, -1, 107, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, 173, -1, 175, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - 208, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, -1, -1, 231, 232, 233, 234, 235, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, 276, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - 408, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, 452, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, 34, 35, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, 80, -1, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, 100, 101, 102, 103, -1, -1, -1, 107, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, 173, -1, 175, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, 208, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - -1, -1, 231, 232, 233, 234, 235, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, 276, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, 382, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, 408, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, 452, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, 6, -1, -1, -1, - -1, -1, 12, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - 80, -1, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - 100, 101, 102, 103, -1, -1, -1, 107, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, 173, -1, 175, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, 208, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, -1, - -1, 231, 232, 233, 234, 235, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, 276, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, 408, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, 452, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, 6, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, 80, - -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, -1, -1, -1, 107, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, 232, 233, 234, 235, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, 276, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, 298, 299, 300, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, 100, 101, - 102, 103, -1, -1, -1, 107, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, 173, -1, 175, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, 208, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, -1, -1, 231, - 232, 233, 234, 235, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, 276, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, -1, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, 408, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - 452, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, 80, -1, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, 100, 101, 102, - 103, -1, -1, -1, 107, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - 173, -1, 175, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, 208, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, -1, -1, 231, 232, - 233, 234, 235, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, 276, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, 298, 299, 300, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, 408, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, 452, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, 80, -1, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, 100, 101, 102, 103, - -1, -1, -1, 107, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, 173, - -1, 175, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, 208, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, -1, -1, 231, 232, 233, - 234, 235, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, 276, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, 382, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, -1, 407, 408, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, 452, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, 80, -1, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, 100, 101, 102, 103, -1, - -1, -1, 107, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, 173, -1, - 175, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, 208, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, -1, -1, 231, 232, 233, 234, - 235, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, 276, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, 382, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, 408, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, 452, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, 80, -1, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, 100, 101, 102, 103, -1, -1, - -1, 107, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, 173, -1, 175, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, 208, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, -1, -1, 231, 232, 233, 234, 235, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - 276, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, 382, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, 408, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, 452, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, 80, -1, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, 100, 101, 102, 103, -1, -1, -1, - 107, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, 173, -1, 175, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, 208, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, -1, -1, 231, 232, 233, 234, 235, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, 276, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, 408, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, 452, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 807, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 777, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 778, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 774, + 244, 775, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 776, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 3501, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 777, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 778, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 2713, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 2714, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 2783, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 2716, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 2717, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 2718, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 774, + 244, 775, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 776, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 777, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 778, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 3017, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 2848, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 839, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 2849, 2850, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 1974, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 1975, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 1976, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 1977, 351, 352, 0, 0, 0, 1978, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 1979, 1980, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 1981, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 1982, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 1983, 522, 523, 524, 525, + 526, 527, 1984, 529, 530, 531, 532, 533, 0, 1985, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 1986, 566, 0, 1987, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 1988, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 775, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 776, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 777, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 778, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 2848, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 839, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 2849, 2850, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 995, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 996, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 839, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 694, 0, 0, 0, 0, 0, + 1368, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 3580, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 3581, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 3593, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 3594, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 636, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 685, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 686, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 799, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 800, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 801, 575, 0, 0, 802, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 833, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 834, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 835, 575, 0, 0, 836, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 839, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 897, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 952, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 953, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 1115, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 1357, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 1370, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 819, 271, 272, + 273, 1371, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 822, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 823, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 824, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 1361, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 826, 575, 0, 0, 827, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 828, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1516, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 839, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 1577, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1578, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 799, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 3351, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 3352, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 3353, 566, 0, 568, 3354, + 570, 3355, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 3356, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 755, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 4159, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 4173, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 4830, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 4902, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 5258, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 791, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 797, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 819, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 820, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 821, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 822, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 823, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 824, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 825, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 826, 575, 0, 0, 827, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 828, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 851, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 977, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 987, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 990, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1006, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1063, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1068, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1085, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1088, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1090, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1128, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1156, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1158, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1168, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1171, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1174, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 819, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 822, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 823, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 824, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 1361, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 826, 575, 0, 0, 827, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 828, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1839, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1873, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1875, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1915, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1917, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 1919, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 2013, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 2666, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 0, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 819, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 822, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 823, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 824, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 1361, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 2700, 569, + 570, 571, 572, 0, 573, 826, 575, 0, 0, 827, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 828, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 819, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 822, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 823, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 2765, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 2766, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 826, 575, 0, 0, 2767, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 828, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 819, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 822, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 823, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 2845, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 2766, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 826, 575, 0, 0, 2767, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 828, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 819, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 822, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 823, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 2869, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 2766, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 826, 575, 0, 0, 2767, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 828, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 3062, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 3066, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 3124, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 3512, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 819, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 822, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 823, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 824, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 2766, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 826, 575, 0, 0, 2767, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 828, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 3569, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 3583, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 3585, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 3733, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 3773, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 362, 363, 0, 364, 365, + 366, 367, 5016, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 635, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 0, 255, + 256, 257, 258, 259, 0, 261, 262, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 272, + 273, 274, 0, 275, 276, 277, 278, 279, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 0, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 0, + 298, 299, 300, 0, 0, 0, 0, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 0, 344, 0, 345, 346, 347, 348, 349, 0, 350, + 0, 351, 352, 0, 0, 0, 355, 356, 357, 358, + 0, 359, 360, 0, 361, 0, 363, 0, 364, 365, + 366, 367, 368, 0, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 0, + 384, 385, 386, 387, 388, 389, 390, 0, 391, 0, + 392, 0, 0, 395, 0, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 409, + 0, 411, 0, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 0, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 0, 447, 448, 0, 450, 0, 451, 452, 453, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 0, 466, 0, 468, 469, + 470, 471, 472, 473, 474, 475, 0, 477, 478, 0, + 479, 480, 481, 482, 483, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 0, 496, 497, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 0, 518, 519, 520, 521, 522, 523, 0, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 541, 542, 543, + 0, 545, 546, 547, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 0, 564, 565, 0, 0, 566, 0, 568, 569, + 570, 571, 572, 0, 573, 574, 575, 0, 0, 576, + 577, 578, 579, 580, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 0, + 601, 0, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 614, 615, 616, + 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, + 627, 856, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 0, 857, 260, 858, 859, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 860, + 861, 274, 0, 275, 276, 277, 278, 0, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 862, 863, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 864, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 0, 339, 340, 341, 342, 0, + 0, 344, 0, 345, 346, 347, 865, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 0, 0, 0, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 2674, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 2675, 385, 386, 387, 388, 866, 867, 0, 868, 0, + 392, 393, 394, 395, 396, 397, 0, 0, 0, 0, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 0, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 869, 435, 870, + 437, 438, 439, 440, 441, 442, 443, 0, 0, 446, + 0, 447, 448, 449, 450, 0, 0, 452, 871, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 2677, 465, 466, 467, 0, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 0, 482, 0, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 872, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 0, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 2678, 542, 543, + 544, 545, 546, 874, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 0, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 875, 876, 0, 0, 576, + 577, 0, 579, 0, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 0, 877, 2679, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 856, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 625, 626, + 627, 0, 0, 0, 0, 0, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 0, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 254, 255, 256, 257, 0, 857, + 260, 858, 859, 0, 263, 264, 265, 266, 267, 268, + 269, 0, 0, 270, 271, 860, 861, 274, 0, 275, + 276, 277, 278, 0, 0, 280, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 297, 298, 299, 300, 0, + 0, 0, 301, 0, 0, 0, 302, 303, 304, 305, + 306, 307, 862, 863, 310, 0, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 864, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 0, 339, 340, 341, 342, 0, 0, 344, 0, 345, + 346, 347, 865, 349, 0, 350, 0, 351, 352, 353, + 0, 354, 355, 356, 357, 358, 0, 359, 0, 0, + 0, 362, 363, 0, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 383, 0, 385, 386, 387, + 388, 866, 867, 0, 868, 0, 392, 393, 394, 395, + 396, 397, 0, 0, 0, 0, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 0, 410, 411, 412, 0, + 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 869, 435, 870, 437, 438, 439, 440, + 441, 442, 443, 0, 0, 446, 0, 447, 448, 449, + 450, 2761, 0, 452, 871, 454, 455, 456, 0, 457, + 458, 0, 0, 459, 460, 461, 0, 0, 462, 463, + 0, 465, 466, 467, 0, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 0, 482, + 0, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 872, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 517, 518, 519, + 520, 521, 522, 0, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 0, 539, 540, 2678, 542, 543, 544, 545, 546, 874, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 0, 563, 0, 564, 565, + 0, 4539, 566, 567, 568, 569, 570, 571, 572, 0, + 573, 875, 876, 0, 0, 576, 577, 0, 579, 0, + 0, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 0, 589, 590, 591, 592, 593, 0, 0, 594, 595, + 596, 597, 598, 0, 877, 0, 601, 602, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 856, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 625, 626, 627, 0, 0, 0, + 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, + 243, 0, 244, 245, 246, 0, 0, 0, 0, 0, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 0, 857, 260, 858, 859, 0, + 263, 264, 265, 266, 267, 268, 269, 0, 0, 270, + 271, 860, 861, 274, 0, 275, 276, 277, 278, 0, + 0, 280, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 299, 300, 0, 0, 0, 301, 0, + 0, 0, 302, 303, 304, 305, 306, 307, 862, 863, + 310, 0, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 864, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 0, 339, 340, 341, + 342, 0, 0, 344, 0, 345, 346, 347, 865, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 0, 0, 0, 362, 363, 0, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 0, 385, 386, 387, 388, 866, 867, 0, + 868, 0, 392, 393, 394, 395, 396, 397, 0, 0, + 0, 0, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 0, 410, 411, 412, 0, 413, 414, 415, 0, + 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 869, + 435, 870, 437, 438, 439, 440, 441, 442, 443, 2835, + 0, 446, 0, 447, 448, 449, 450, 0, 0, 452, + 871, 454, 455, 456, 0, 457, 458, 0, 0, 459, + 460, 461, 0, 0, 462, 463, 0, 465, 466, 467, + 0, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 0, 482, 0, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 872, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 517, 518, 519, 520, 521, 522, 0, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 0, 539, 540, 873, + 542, 543, 544, 545, 546, 874, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 0, 563, 0, 564, 565, 0, 0, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 875, 876, 0, + 0, 576, 577, 0, 579, 0, 0, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 0, 589, 590, 591, + 592, 593, 0, 0, 594, 595, 596, 597, 598, 0, + 877, 0, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 856, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 625, 626, 627, 0, 0, 0, 0, 0, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 0, 244, 245, + 246, 0, 0, 0, 0, 0, 0, 0, 247, 248, + 249, 0, 250, 251, 252, 253, 254, 255, 256, 257, + 0, 857, 260, 858, 859, 0, 263, 264, 265, 266, + 267, 268, 269, 0, 0, 270, 271, 860, 861, 274, + 0, 275, 276, 277, 278, 0, 0, 280, 0, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 0, + 291, 292, 293, 294, 295, 296, 0, 297, 298, 299, + 300, 0, 0, 0, 301, 0, 0, 0, 302, 303, + 304, 305, 306, 307, 862, 863, 310, 0, 311, 0, + 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, + 321, 322, 0, 0, 323, 324, 864, 326, 327, 0, + 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, + 336, 337, 0, 339, 340, 341, 342, 0, 0, 344, + 0, 345, 346, 347, 865, 349, 0, 350, 0, 351, + 352, 353, 0, 354, 355, 356, 357, 358, 0, 359, + 0, 0, 0, 362, 363, 0, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 0, 374, 375, 376, + 377, 378, 379, 380, 381, 0, 382, 383, 0, 385, + 386, 387, 388, 866, 867, 0, 868, 0, 392, 393, + 394, 395, 396, 397, 0, 0, 0, 0, 402, 403, + 404, 405, 406, 407, 0, 0, 408, 0, 410, 411, + 412, 0, 413, 414, 415, 0, 0, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, 433, 869, 435, 870, 437, 438, + 439, 440, 441, 442, 443, 4334, 0, 446, 0, 447, + 448, 449, 450, 0, 0, 452, 871, 454, 455, 456, + 0, 457, 458, 0, 0, 459, 460, 461, 0, 0, + 462, 463, 0, 465, 466, 467, 0, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 0, 479, 480, + 0, 482, 0, 484, 485, 486, 0, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 872, 498, 499, + 500, 501, 0, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 0, 515, 516, 517, + 518, 519, 520, 521, 522, 0, 524, 525, 526, 527, + 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, + 537, 538, 0, 539, 540, 873, 542, 543, 544, 545, + 546, 874, 548, 0, 549, 550, 551, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 0, 563, 0, + 564, 565, 0, 0, 566, 567, 568, 569, 570, 571, + 572, 0, 573, 875, 876, 0, 0, 576, 577, 0, + 579, 0, 0, 581, 582, 583, 584, 585, 586, 587, + 588, 0, 0, 589, 590, 591, 592, 593, 0, 0, + 594, 595, 596, 597, 598, 0, 877, 0, 601, 602, + 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, + 609, 610, 611, 612, 613, 856, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 625, 626, 627, 0, + 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, + 241, 242, 243, 0, 244, 245, 246, 0, 0, 0, + 0, 0, 0, 0, 247, 248, 249, 0, 250, 251, + 252, 253, 254, 255, 256, 257, 0, 857, 260, 858, + 859, 0, 263, 264, 265, 266, 267, 268, 269, 0, + 0, 270, 271, 860, 861, 274, 0, 275, 276, 277, + 278, 0, 0, 280, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 0, 291, 292, 293, 294, + 295, 296, 0, 297, 298, 299, 300, 0, 0, 0, + 301, 0, 0, 0, 302, 303, 304, 305, 306, 307, + 862, 863, 310, 0, 311, 0, 312, 313, 314, 315, + 316, 317, 318, 0, 319, 320, 321, 322, 0, 0, + 323, 324, 864, 326, 327, 0, 328, 329, 330, 0, + 331, 332, 333, 0, 334, 335, 336, 337, 0, 339, + 340, 341, 342, 0, 0, 344, 0, 345, 346, 347, + 865, 349, 5864, 350, 0, 351, 352, 353, 0, 354, + 355, 356, 357, 358, 0, 359, 0, 0, 0, 362, + 363, 0, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 0, 374, 375, 376, 377, 378, 379, 380, + 381, 0, 382, 383, 0, 385, 386, 387, 388, 866, + 867, 0, 868, 0, 392, 393, 394, 395, 396, 397, + 0, 0, 0, 0, 402, 403, 404, 405, 406, 407, + 0, 0, 408, 0, 410, 411, 412, 0, 413, 414, + 415, 0, 0, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, + 433, 869, 435, 870, 437, 438, 439, 440, 441, 442, + 443, 0, 0, 446, 0, 447, 448, 449, 450, 0, + 0, 452, 871, 454, 455, 456, 0, 457, 458, 0, + 0, 459, 460, 461, 0, 0, 462, 463, 0, 465, + 466, 467, 0, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 0, 479, 480, 0, 482, 0, 484, + 485, 486, 0, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 872, 498, 499, 500, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 0, 515, 516, 517, 518, 519, 520, 521, + 522, 0, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, + 540, 873, 542, 543, 544, 545, 546, 874, 548, 0, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 0, 563, 0, 564, 565, 0, 0, + 566, 567, 568, 569, 570, 571, 572, 0, 573, 875, + 876, 0, 0, 576, 577, 0, 579, 0, 0, 581, + 582, 583, 584, 585, 586, 587, 588, 0, 0, 589, + 590, 591, 592, 593, 0, 0, 594, 595, 596, 597, + 598, 0, 877, 0, 601, 602, 603, 604, 605, 606, + 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, + 613, 856, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 625, 626, 627, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 0, 857, 260, 858, 859, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 860, + 861, 274, 0, 275, 276, 277, 278, 0, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 862, 863, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 864, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 0, 339, 340, 341, 342, 0, + 0, 344, 0, 345, 346, 347, 865, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 0, 0, 0, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 0, 385, 386, 387, 388, 866, 867, 0, 868, 0, + 392, 393, 394, 395, 396, 397, 0, 0, 0, 0, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 0, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 869, 435, 870, + 437, 438, 439, 440, 441, 442, 443, 0, 0, 446, + 0, 447, 448, 449, 450, 0, 0, 452, 871, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 0, 465, 466, 467, 0, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 0, 482, 0, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 872, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 0, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 873, 542, 543, + 544, 545, 546, 874, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 0, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 875, 876, 0, 0, 576, + 577, 0, 579, 0, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 0, 877, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 856, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 625, 626, + 627, 0, 0, 0, 0, 0, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 0, 244, 245, 246, 0, + 0, 0, 0, 0, 0, 0, 247, 248, 249, 0, + 250, 251, 252, 253, 254, 255, 256, 257, 0, 857, + 260, 858, 859, 0, 263, 264, 265, 266, 267, 268, + 269, 0, 0, 270, 271, 860, 861, 274, 0, 275, + 276, 277, 278, 0, 0, 280, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 0, 291, 292, + 293, 294, 295, 296, 0, 297, 298, 299, 300, 0, + 0, 0, 301, 0, 0, 0, 302, 303, 304, 305, + 306, 307, 862, 863, 310, 0, 311, 0, 312, 313, + 314, 315, 316, 317, 318, 0, 319, 320, 321, 322, + 0, 0, 323, 324, 864, 326, 327, 0, 328, 329, + 330, 0, 331, 332, 333, 0, 334, 335, 336, 337, + 0, 339, 340, 341, 342, 0, 0, 344, 0, 345, + 346, 347, 865, 349, 0, 350, 0, 351, 352, 353, + 0, 354, 355, 356, 357, 358, 0, 359, 0, 0, + 0, 362, 363, 0, 364, 365, 366, 367, 1130, 369, + 370, 371, 372, 373, 0, 374, 375, 376, 377, 378, + 379, 380, 381, 0, 382, 383, 0, 385, 386, 387, + 388, 866, 867, 0, 868, 0, 392, 393, 394, 395, + 396, 397, 0, 0, 0, 0, 402, 403, 404, 405, + 406, 407, 0, 0, 408, 0, 410, 411, 412, 0, + 413, 414, 415, 0, 0, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, + 431, 432, 433, 869, 435, 870, 437, 438, 439, 440, + 441, 442, 443, 0, 0, 446, 0, 447, 448, 449, + 450, 0, 0, 452, 871, 454, 455, 456, 0, 457, + 458, 0, 0, 459, 460, 461, 0, 0, 462, 463, + 0, 465, 466, 467, 0, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 0, 479, 480, 0, 482, + 0, 484, 485, 486, 0, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 872, 498, 499, 500, 501, + 0, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 0, 515, 516, 517, 518, 519, + 520, 521, 522, 0, 524, 525, 526, 527, 528, 529, + 530, 531, 532, 533, 0, 534, 535, 536, 537, 538, + 0, 539, 540, 873, 542, 543, 544, 545, 546, 874, + 548, 0, 549, 550, 551, 552, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 0, 563, 0, 564, 565, + 0, 0, 566, 567, 568, 569, 570, 571, 572, 0, + 573, 875, 876, 0, 0, 576, 577, 0, 579, 0, + 0, 581, 582, 583, 584, 585, 586, 587, 588, 0, + 0, 589, 590, 591, 592, 593, 0, 0, 594, 595, + 596, 597, 598, 0, 877, 0, 601, 602, 603, 604, + 605, 606, 0, 0, 607, 0, 0, 608, 609, 610, + 611, 612, 613, 856, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 625, 626, 627, 0, 0, 0, + 0, 0, 235, 236, 237, 238, 239, 240, 241, 242, + 243, 0, 244, 245, 246, 0, 0, 0, 0, 0, + 0, 0, 247, 248, 249, 0, 250, 251, 252, 253, + 254, 255, 256, 257, 0, 857, 260, 858, 859, 0, + 263, 264, 265, 266, 267, 268, 269, 0, 0, 270, + 271, 860, 861, 274, 0, 275, 276, 277, 278, 0, + 0, 280, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 0, 291, 292, 293, 294, 295, 296, + 0, 297, 298, 299, 300, 0, 0, 0, 301, 0, + 0, 0, 302, 303, 304, 305, 306, 307, 862, 863, + 310, 0, 311, 0, 312, 313, 314, 315, 316, 317, + 318, 0, 319, 320, 321, 322, 0, 0, 323, 324, + 864, 326, 327, 0, 328, 329, 330, 0, 331, 332, + 333, 0, 334, 335, 336, 337, 0, 339, 340, 341, + 342, 0, 0, 344, 0, 345, 346, 347, 865, 349, + 0, 350, 0, 351, 352, 353, 0, 354, 355, 356, + 357, 358, 0, 359, 0, 0, 0, 362, 363, 0, + 364, 365, 366, 367, 1162, 369, 370, 371, 372, 373, + 0, 374, 375, 376, 377, 378, 379, 380, 381, 0, + 382, 383, 0, 385, 386, 387, 388, 866, 867, 0, + 868, 0, 392, 393, 394, 395, 396, 397, 0, 0, + 0, 0, 402, 403, 404, 405, 406, 407, 0, 0, + 408, 0, 410, 411, 412, 0, 413, 414, 415, 0, + 0, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 869, + 435, 870, 437, 438, 439, 440, 441, 442, 443, 0, + 0, 446, 0, 447, 448, 449, 450, 0, 0, 452, + 871, 454, 455, 456, 0, 457, 458, 0, 0, 459, + 460, 461, 0, 0, 462, 463, 0, 465, 466, 467, + 0, 469, 470, 471, 472, 473, 474, 475, 476, 477, + 478, 0, 479, 480, 0, 482, 0, 484, 485, 486, + 0, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 872, 498, 499, 500, 501, 0, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 0, 515, 516, 517, 518, 519, 520, 521, 522, 0, + 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, + 0, 534, 535, 536, 537, 538, 0, 539, 540, 873, + 542, 543, 544, 545, 546, 874, 548, 0, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 0, 563, 0, 564, 565, 0, 0, 566, 567, + 568, 569, 570, 571, 572, 0, 573, 875, 876, 0, + 0, 576, 577, 0, 579, 0, 0, 581, 582, 583, + 584, 585, 586, 587, 588, 0, 0, 589, 590, 591, + 592, 593, 0, 0, 594, 595, 596, 597, 598, 0, + 877, 0, 601, 602, 603, 604, 605, 606, 0, 0, + 607, 0, 0, 608, 609, 610, 611, 612, 613, 856, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 625, 626, 627, 0, 0, 0, 0, 0, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 0, 244, 245, + 246, 0, 0, 0, 0, 0, 0, 0, 247, 248, + 249, 0, 250, 251, 252, 253, 254, 255, 256, 257, + 0, 857, 260, 858, 859, 0, 263, 264, 265, 266, + 267, 268, 269, 0, 0, 270, 271, 860, 861, 274, + 0, 275, 276, 277, 278, 0, 0, 280, 0, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 0, + 291, 292, 293, 294, 295, 296, 0, 297, 298, 299, + 300, 0, 0, 0, 301, 0, 0, 0, 302, 303, + 304, 305, 306, 307, 862, 863, 310, 0, 311, 0, + 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, + 321, 322, 0, 0, 323, 324, 864, 326, 327, 0, + 328, 329, 330, 0, 331, 332, 333, 0, 334, 335, + 336, 337, 0, 339, 340, 341, 342, 0, 0, 344, + 0, 345, 346, 347, 865, 349, 0, 350, 0, 351, + 352, 353, 0, 354, 355, 356, 357, 358, 0, 359, + 0, 0, 0, 362, 363, 0, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 0, 374, 375, 376, + 377, 378, 379, 380, 381, 0, 382, 383, 0, 385, + 386, 387, 388, 866, 867, 0, 868, 0, 392, 393, + 394, 395, 396, 397, 0, 0, 0, 0, 402, 403, + 404, 405, 406, 407, 0, 0, 408, 0, 410, 411, + 412, 0, 413, 414, 415, 0, 0, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, 433, 869, 435, 870, 437, 438, + 439, 440, 441, 442, 443, 0, 0, 446, 0, 447, + 448, 449, 450, 0, 0, 452, 871, 454, 455, 456, + 0, 457, 458, 0, 0, 459, 460, 461, 0, 0, + 462, 463, 0, 465, 466, 467, 0, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 0, 479, 480, + 0, 482, 0, 484, 485, 486, 0, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 872, 498, 499, + 500, 501, 0, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 0, 515, 516, 517, + 518, 519, 520, 521, 522, 0, 524, 525, 526, 527, + 528, 529, 530, 531, 532, 533, 0, 534, 535, 536, + 537, 538, 0, 539, 540, 2678, 542, 543, 544, 545, + 546, 874, 548, 0, 549, 550, 551, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 0, 563, 0, + 564, 565, 0, 0, 566, 567, 568, 569, 570, 571, + 572, 0, 573, 875, 876, 0, 0, 576, 577, 0, + 579, 0, 0, 581, 582, 583, 584, 585, 586, 587, + 588, 0, 0, 589, 590, 591, 592, 593, 0, 0, + 594, 595, 596, 597, 598, 0, 877, 0, 601, 602, + 603, 604, 605, 606, 0, 0, 607, 0, 0, 608, + 609, 610, 611, 612, 613, 856, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 625, 626, 627, 0, + 0, 0, 0, 0, 235, 236, 237, 238, 239, 240, + 241, 242, 243, 0, 244, 245, 246, 0, 0, 0, + 0, 0, 0, 0, 247, 248, 249, 0, 250, 251, + 252, 253, 254, 255, 256, 257, 0, 857, 260, 858, + 859, 0, 263, 264, 265, 266, 267, 268, 269, 0, + 0, 270, 271, 860, 861, 274, 0, 275, 276, 277, + 278, 0, 0, 280, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 0, 291, 292, 293, 294, + 295, 296, 0, 297, 298, 299, 300, 0, 0, 0, + 301, 0, 0, 0, 302, 303, 304, 305, 306, 307, + 862, 863, 310, 0, 311, 0, 312, 313, 314, 315, + 316, 317, 318, 0, 319, 320, 321, 322, 0, 0, + 323, 324, 864, 326, 327, 0, 328, 329, 330, 0, + 331, 332, 333, 0, 334, 335, 336, 337, 0, 339, + 340, 341, 342, 0, 0, 344, 0, 345, 346, 347, + 865, 349, 0, 350, 0, 351, 352, 353, 0, 354, + 355, 356, 357, 358, 0, 359, 0, 0, 0, 362, + 363, 0, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 0, 374, 375, 376, 377, 378, 379, 380, + 381, 0, 382, 383, 0, 385, 386, 387, 388, 866, + 867, 0, 868, 0, 392, 393, 394, 395, 396, 397, + 0, 0, 0, 0, 402, 403, 404, 405, 406, 407, + 0, 0, 408, 0, 410, 411, 412, 0, 413, 414, + 415, 0, 0, 416, 417, 418, 419, 420, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, + 433, 869, 435, 870, 437, 438, 439, 440, 441, 442, + 443, 0, 0, 446, 0, 447, 448, 449, 450, 0, + 0, 452, 871, 454, 455, 456, 0, 457, 458, 0, + 0, 459, 460, 461, 0, 0, 462, 463, 0, 465, + 466, 467, 0, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 0, 479, 480, 0, 482, 0, 484, + 485, 486, 0, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 872, 498, 499, 500, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 0, 515, 516, 517, 518, 519, 520, 521, + 522, 0, 524, 525, 526, 527, 528, 529, 530, 531, + 532, 533, 0, 534, 535, 536, 537, 538, 0, 539, + 540, 0, 542, 543, 544, 545, 546, 874, 548, 0, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, + 559, 560, 561, 0, 563, 0, 564, 565, 0, 0, + 566, 567, 568, 569, 570, 571, 572, 0, 573, 875, + 876, 0, 0, 576, 577, 0, 579, 0, 0, 581, + 582, 583, 584, 585, 586, 587, 588, 0, 0, 589, + 590, 591, 592, 593, 0, 0, 594, 595, 596, 597, + 598, 0, 877, 0, 601, 602, 603, 604, 605, 606, + 0, 0, 607, 0, 0, 608, 609, 610, 611, 612, + 613, 856, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 625, 626, 627, 0, 0, 0, 0, 0, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 0, + 244, 245, 246, 0, 0, 0, 0, 0, 0, 0, + 247, 248, 249, 0, 250, 251, 252, 253, 254, 255, + 256, 257, 0, 0, 260, 0, 0, 0, 263, 264, + 265, 266, 267, 268, 269, 0, 0, 270, 271, 0, + 0, 274, 0, 275, 276, 277, 278, 0, 0, 280, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 0, 291, 292, 293, 294, 295, 296, 0, 297, + 298, 299, 300, 0, 0, 0, 301, 0, 0, 0, + 302, 303, 304, 305, 306, 307, 0, 0, 310, 0, + 311, 0, 312, 313, 314, 315, 316, 317, 318, 0, + 319, 320, 321, 322, 0, 0, 323, 324, 325, 326, + 327, 0, 328, 329, 330, 0, 331, 332, 333, 0, + 334, 335, 336, 337, 0, 339, 340, 341, 342, 0, + 0, 344, 0, 345, 346, 347, 0, 349, 0, 350, + 0, 351, 352, 353, 0, 354, 355, 356, 357, 358, + 0, 359, 0, 0, 0, 362, 363, 0, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 0, 374, + 375, 376, 377, 378, 379, 380, 381, 0, 382, 383, + 0, 385, 386, 387, 388, 0, 0, 0, 0, 0, + 392, 393, 394, 395, 396, 397, 0, 0, 0, 0, + 402, 403, 404, 405, 406, 407, 0, 0, 408, 0, + 410, 411, 412, 0, 413, 414, 415, 0, 0, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 0, 435, 0, + 437, 438, 439, 440, 441, 442, 443, 0, 0, 446, + 0, 447, 448, 449, 450, 0, 0, 452, 0, 454, + 455, 456, 0, 457, 458, 0, 0, 459, 460, 461, + 0, 0, 462, 463, 0, 465, 466, 467, 0, 469, + 470, 471, 472, 473, 474, 475, 476, 477, 478, 0, + 479, 480, 0, 482, 0, 484, 485, 486, 0, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 0, + 498, 499, 500, 501, 0, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 0, 515, + 516, 517, 518, 519, 520, 521, 522, 0, 524, 525, + 526, 527, 528, 529, 530, 531, 532, 533, 0, 534, + 535, 536, 537, 538, 0, 539, 540, 0, 542, 543, + 544, 545, 546, 0, 548, 0, 549, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 0, + 563, 0, 564, 565, 0, 0, 566, 567, 568, 569, + 570, 571, 572, 0, 573, 0, 0, 0, 0, 576, + 577, 0, 579, 0, 0, 581, 582, 583, 584, 585, + 586, 587, 588, 0, 0, 589, 590, 591, 592, 593, + 0, 0, 594, 595, 596, 597, 598, 0, 0, 0, + 601, 602, 603, 604, 605, 606, 0, 0, 607, 0, + 0, 608, 609, 610, 611, 612, 613, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 625, 626, + 627 +}; + +static const yytype_int16 yycheck[] = +{ + 6, 0, 0, 1016, 0, 0, 0, 56, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 211, 0, 206, 0, 850, 988, 21, 21, 663, 817, + 214, 917, 1025, 217, 36, 211, 45, 820, 776, 777, + 778, 8, 1142, 189, 782, 51, 22, 736, 15, 1018, + 1629, 1502, 28, 1474, 911, 1005, 913, 873, 2718, 1564, + 2011, 891, 989, 844, 642, 695, 2660, 1020, 1548, 1014, + 1203, 3037, 810, 862, 863, 2661, 1541, 3010, 1250, 3360, + 1553, 3362, 871, 1091, 1237, 843, 1869, 3075, 216, 876, + 827, 740, 3452, 44, 3185, 2000, 3653, 1548, 3573, 929, + 6, 1697, 230, 1222, 197, 23, 3874, 1226, 2019, 2035, + 1229, 1230, 1594, 1595, 3546, 1065, 1598, 695, 36, 1069, + 1541, 3847, 2036, 3022, 1074, 3599, 954, 3601, 2034, 4187, + 4234, 2929, 955, 988, 1084, 3863, 3799, 3411, 3896, 644, + 3462, 4230, 997, 3405, 2069, 191, 2071, 4734, 1098, 175, + 741, 979, 1007, 2907, 716, 1431, 984, 719, 1941, 1664, + 1665, 1882, 4527, 4510, 742, 1531, 35, 731, 191, 2, + 5214, 4312, 4472, 42, 4750, 4504, 4752, 4515, 2536, 1129, + 5054, 5236, 940, 2541, 3426, 1658, 5046, 5342, 2645, 50, + 2577, 197, 4997, 823, 2647, 5041, 3472, 3228, 3460, 4799, + 206, 207, 1025, 5256, 2682, 2683, 938, 914, 214, 5390, + 216, 217, 1685, 3410, 4514, 3412, 3861, 795, 41, 2975, + 3314, 2977, 2978, 914, 230, 1591, 2982, 2983, 2984, 0, + 2986, 2987, 2988, 4209, 6, 11, 5378, 2624, 23, 5624, + 5045, 0, 1608, 0, 6, 823, 5299, 979, 0, 4673, + 12, 6, 984, 15, 16, 5339, 6, 0, 56, 37, + 11, 96, 12, 27, 3018, 15, 16, 6, 11, 155, + 848, 1029, 6, 6, 225, 1514, 13, 6, 12, 5306, + 5307, 860, 861, 12, 74, 2006, 15, 16, 31, 13, + 65, 870, 121, 40, 5608, 23, 6, 2045, 80, 6, + 148, 123, 12, 93, 176, 12, 6, 0, 121, 6, + 47, 6, 12, 39, 6, 12, 1494, 12, 11, 6, + 12, 1059, 6, 2618, 3, 12, 6, 45, 12, 200, + 908, 6, 12, 45, 0, 65, 170, 12, 31, 3, + 49, 143, 6, 80, 82, 27, 3, 74, 12, 121, + 162, 1177, 4605, 4606, 4607, 21, 4609, 4610, 4611, 4612, + 4613, 114, 152, 121, 15, 126, 1848, 3, 82, 5, + 6, 82, 178, 5, 87, 11, 12, 141, 5, 11, + 5331, 1080, 172, 176, 11, 25, 154, 4528, 297, 221, + 56, 5846, 65, 65, 5507, 65, 176, 1096, 303, 6, + 297, 170, 278, 225, 176, 176, 126, 32, 318, 283, + 187, 192, 66, 92, 5260, 298, 646, 176, 65, 176, + 74, 141, 178, 169, 176, 152, 82, 5812, 136, 200, + 1375, 93, 1081, 176, 1387, 1443, 286, 93, 3548, 374, + 374, 200, 718, 200, 65, 172, 344, 1025, 200, 352, + 329, 37, 116, 151, 215, 429, 732, 200, 197, 141, + 282, 89, 1431, 429, 121, 167, 145, 206, 472, 95, + 5523, 176, 374, 34, 3265, 214, 3267, 3268, 217, 1268, + 1269, 262, 1435, 176, 5626, 121, 82, 663, 300, 5803, + 297, 339, 82, 299, 380, 200, 13, 1323, 311, 260, + 61, 403, 287, 93, 1293, 4834, 82, 200, 738, 13, + 82, 176, 138, 65, 154, 519, 126, 1304, 340, 5379, + 13, 176, 357, 172, 282, 191, 429, 137, 192, 31, + 47, 417, 31, 661, 65, 237, 38, 713, 166, 667, + 330, 31, 176, 126, 394, 519, 177, 245, 38, 313, + 1373, 679, 431, 519, 47, 1378, 1379, 429, 93, 287, + 176, 31, 339, 80, 13, 291, 1324, 465, 38, 155, + 5955, 176, 251, 459, 282, 49, 1402, 451, 334, 325, + 515, 515, 812, 358, 220, 354, 472, 80, 352, 472, + 1543, 216, 1183, 370, 248, 1353, 475, 378, 262, 123, + 406, 265, 183, 330, 513, 515, 183, 327, 517, 5722, + 496, 516, 248, 1243, 519, 491, 374, 183, 515, 6074, + 5571, 183, 390, 387, 436, 282, 5202, 126, 358, 515, + 287, 384, 215, 505, 313, 5719, 642, 30, 34, 128, + 5724, 5725, 1468, 1432, 193, 517, 459, 373, 519, 4312, + 648, 429, 648, 648, 1832, 661, 446, 429, 126, 6044, + 648, 667, 1517, 648, 648, 1243, 468, 515, 25, 5811, + 53, 404, 405, 679, 1624, 4338, 505, 1627, 1257, 1258, + 287, 515, 1695, 1696, 519, 358, 358, 519, 358, 695, + 451, 429, 456, 742, 700, 413, 1519, 519, 3808, 705, + 93, 413, 515, 709, 710, 387, 1529, 1396, 1635, 1288, + 716, 358, 718, 719, 378, 429, 215, 515, 429, 446, + 746, 5748, 515, 5147, 1579, 731, 732, 6112, 6042, 369, + 443, 513, 458, 505, 519, 517, 742, 358, 514, 519, + 1370, 420, 3037, 422, 519, 517, 741, 518, 1693, 458, + 390, 1579, 462, 515, 1461, 506, 507, 4483, 5618, 518, + 515, 518, 4237, 506, 507, 515, 518, 6152, 515, 451, + 1461, 917, 434, 429, 511, 518, 5622, 2016, 5959, 513, + 756, 515, 758, 517, 760, 178, 515, 511, 4345, 795, + 766, 519, 1370, 1616, 4351, 4523, 1619, 1620, 4524, 1615, + 1378, 1379, 4778, 770, 5946, 515, 358, 1539, 515, 496, + 497, 817, 818, 506, 507, 515, 1702, 823, 515, 5974, + 515, 496, 497, 515, 31, 518, 490, 358, 515, 1408, + 1409, 515, 65, 429, 27, 515, 1969, 788, 5891, 429, + 515, 451, 848, 1943, 850, 472, 519, 519, 1039, 519, + 515, 5904, 1036, 429, 505, 5108, 1040, 429, 1042, 905, + 1592, 1830, 513, 1039, 519, 4528, 517, 873, 451, 496, + 506, 507, 519, 1149, 506, 507, 1976, 1609, 4152, 506, + 507, 380, 905, 10, 515, 519, 13, 207, 1988, 895, + 17, 18, 19, 844, 429, 397, 216, 254, 519, 1598, + 5500, 4163, 908, 519, 6046, 4167, 472, 397, 907, 907, + 230, 907, 907, 907, 519, 907, 907, 907, 907, 907, + 907, 907, 907, 907, 907, 907, 907, 397, 907, 4574, + 907, 455, 931, 4027, 1210, 3834, 5810, 1030, 519, 3693, + 3694, 334, 519, 176, 3698, 1221, 4222, 5807, 141, 1648, + 1649, 1586, 451, 519, 4151, 429, 4153, 519, 4433, 355, + 114, 700, 1238, 25, 453, 6018, 515, 519, 170, 6111, + 709, 922, 4003, 369, 3431, 371, 359, 716, 371, 3432, + 719, 155, 648, 451, 458, 5790, 937, 3374, 519, 1812, + 851, 508, 509, 510, 511, 6050, 6051, 3475, 821, 3477, + 4432, 5806, 825, 2618, 508, 509, 510, 511, 54, 1514, + 1016, 1017, 1018, 506, 507, 508, 509, 510, 511, 1025, + 176, 3777, 2035, 42, 1030, 114, 114, 176, 23, 1035, + 1036, 6186, 303, 5362, 1040, 23, 1042, 56, 434, 432, + 1046, 434, 188, 10, 200, 438, 13, 154, 78, 300, + 17, 18, 19, 6, 34, 6, 1062, 506, 507, 508, + 509, 510, 511, 420, 10, 2018, 93, 13, 27, 5369, + 298, 17, 18, 19, 33, 741, 742, 3831, 25, 126, + 70, 205, 5956, 332, 337, 364, 1595, 5947, 126, 1598, + 289, 37, 449, 112, 121, 6, 4338, 311, 176, 6154, + 1106, 100, 1108, 1109, 27, 3463, 121, 3402, 301, 5685, + 3405, 121, 90, 2066, 262, 322, 6, 474, 90, 178, + 2865, 25, 12, 25, 993, 994, 2095, 4559, 5232, 27, + 10, 6175, 5273, 13, 5878, 4495, 6137, 17, 18, 19, + 1878, 374, 369, 1149, 151, 188, 27, 167, 41, 195, + 1849, 298, 33, 27, 200, 133, 369, 3452, 515, 121, + 40, 133, 257, 356, 357, 3460, 1851, 177, 215, 303, + 6, 1177, 299, 452, 116, 382, 65, 215, 6052, 417, + 6224, 298, 141, 182, 29, 369, 1871, 282, 1183, 402, + 417, 2017, 254, 2019, 387, 214, 6197, 318, 244, 2025, + 2945, 10, 1985, 1986, 1210, 2031, 2032, 52, 17, 18, + 19, 2037, 219, 1219, 421, 1221, 423, 1795, 141, 1186, + 2046, 1188, 25, 1190, 123, 1192, 2052, 1194, 1195, 1196, + 378, 464, 1238, 200, 1201, 278, 6110, 1243, 131, 905, + 299, 907, 114, 141, 472, 459, 116, 6121, 519, 1255, + 192, 185, 5590, 273, 453, 282, 223, 1946, 25, 278, + 141, 2682, 515, 417, 515, 295, 515, 141, 4234, 5616, + 472, 5636, 287, 283, 1323, 5043, 5605, 223, 2751, 6153, + 429, 1114, 5620, 390, 1290, 5614, 1975, 515, 278, 5589, + 1979, 1030, 287, 417, 468, 1984, 303, 1036, 1987, 287, + 3021, 1040, 2782, 1042, 5030, 2063, 6180, 254, 5036, 5067, + 104, 457, 374, 1319, 1320, 1321, 472, 1323, 4793, 5619, + 262, 3799, 192, 265, 235, 472, 25, 25, 417, 417, + 6204, 515, 299, 380, 287, 5664, 287, 1343, 316, 1848, + 2616, 661, 1906, 223, 316, 3, 392, 667, 1910, 311, + 254, 429, 254, 299, 313, 472, 2829, 376, 420, 679, + 25, 25, 1953, 1925, 1370, 1391, 1928, 1106, 2964, 1108, + 1109, 216, 1378, 1379, 1938, 355, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 519, 74, 449, 287, 278, + 313, 185, 262, 352, 515, 265, 1402, 287, 6142, 437, + 1446, 1447, 5989, 1449, 451, 2771, 278, 298, 2043, 5498, + 1586, 3889, 474, 451, 457, 463, 1978, 90, 380, 299, + 1982, 1983, 3037, 1446, 1447, 1431, 1449, 374, 387, 352, + 364, 60, 313, 121, 92, 356, 378, 44, 445, 313, + 258, 3366, 1448, 453, 422, 164, 1452, 1453, 13, 10, + 422, 254, 13, 515, 4776, 417, 17, 18, 19, 278, + 133, 4735, 1468, 5792, 387, 387, 387, 515, 1474, 358, + 374, 352, 374, 420, 5966, 3054, 388, 4739, 352, 345, + 125, 27, 4744, 121, 278, 4747, 47, 254, 146, 179, + 299, 188, 180, 54, 124, 292, 292, 459, 387, 312, + 123, 130, 449, 115, 3252, 3253, 387, 292, 378, 3257, + 472, 2016, 1463, 387, 1465, 80, 420, 1183, 420, 80, + 4994, 318, 318, 232, 515, 2538, 245, 474, 177, 3, + 4496, 188, 170, 318, 496, 1541, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 449, 92, 449, 490, 207, + 3298, 3299, 4540, 515, 28, 254, 254, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 196, 6059, 515, 278, + 474, 374, 474, 515, 5952, 5953, 1582, 222, 136, 113, + 138, 278, 387, 387, 200, 1251, 477, 2540, 134, 254, + 254, 198, 458, 205, 282, 141, 292, 519, 144, 287, + 387, 1600, 225, 515, 5708, 1271, 1605, 374, 3073, 1615, + 5273, 515, 5380, 515, 5943, 179, 313, 420, 92, 181, + 490, 278, 318, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 426, 232, 195, 0, 387, 1913, 457, 200, + 5368, 5966, 330, 316, 301, 335, 449, 2616, 3069, 234, + 125, 1927, 3073, 420, 5560, 352, 5562, 1323, 346, 282, + 5566, 5567, 320, 5721, 1940, 4421, 123, 431, 317, 6161, + 4426, 474, 146, 472, 1680, 374, 374, 39, 368, 278, + 1679, 390, 449, 244, 1683, 137, 248, 22, 369, 1695, + 1696, 1697, 382, 28, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 1654, 312, 4503, 134, 474, 742, 374, + 374, 6040, 515, 2706, 519, 519, 144, 340, 515, 515, + 519, 420, 420, 177, 282, 259, 200, 1911, 418, 263, + 515, 1922, 519, 207, 6059, 6113, 352, 387, 299, 515, + 356, 340, 451, 4497, 393, 1921, 1922, 222, 515, 422, + 449, 449, 209, 313, 164, 420, 420, 211, 446, 121, + 457, 795, 374, 215, 113, 170, 4732, 313, 519, 2595, + 451, 387, 226, 396, 31, 474, 474, 182, 6107, 387, + 1446, 1447, 344, 1449, 449, 449, 444, 3402, 242, 1795, + 3405, 390, 352, 123, 452, 200, 415, 455, 431, 4459, + 457, 1807, 348, 415, 368, 417, 352, 1900, 31, 474, + 474, 375, 1818, 101, 848, 329, 515, 515, 382, 515, + 301, 278, 171, 429, 1830, 282, 453, 387, 1834, 5887, + 123, 392, 313, 452, 4312, 245, 6161, 3452, 518, 4021, + 4022, 387, 475, 312, 2813, 3460, 320, 1853, 394, 354, + 515, 515, 451, 312, 418, 1861, 472, 5625, 207, 421, + 4338, 423, 2678, 1869, 3, 469, 505, 2043, 4163, 519, + 2839, 352, 4167, 519, 908, 2658, 440, 170, 517, 136, + 496, 5607, 1888, 2706, 294, 313, 313, 449, 515, 177, + 364, 1897, 164, 10, 1900, 225, 13, 1903, 170, 505, + 1906, 1907, 453, 465, 1910, 1911, 5634, 1913, 1914, 363, + 259, 517, 2875, 136, 263, 519, 209, 431, 387, 1925, + 4102, 1927, 1928, 211, 352, 121, 2781, 5833, 387, 124, + 47, 1937, 1938, 494, 1940, 1941, 5198, 54, 226, 4234, + 414, 303, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 6055, 282, 92, 242, 515, 181, 362, 1953, 178, + 387, 475, 158, 80, 515, 6, 37, 472, 82, 2938, + 444, 12, 1978, 245, 27, 5407, 1982, 1983, 452, 93, + 33, 455, 270, 464, 2033, 278, 278, 380, 1955, 282, + 1957, 496, 1959, 212, 1961, 463, 1963, 193, 3098, 371, + 1967, 196, 2000, 3954, 2000, 2000, 145, 2009, 5099, 297, + 340, 2017, 2000, 2019, 519, 2000, 2000, 204, 2024, 2025, + 2875, 3972, 294, 248, 417, 2031, 2032, 2033, 2034, 2035, + 2036, 2037, 149, 258, 2040, 3004, 2042, 5805, 2044, 2045, + 2046, 2047, 2048, 2049, 1995, 313, 2052, 515, 2054, 2055, + 4528, 3472, 2058, 6157, 5020, 303, 2879, 313, 2913, 5270, + 352, 3482, 434, 4996, 2887, 5823, 459, 2890, 2074, 2075, + 2076, 2077, 2958, 2959, 2960, 363, 5804, 3988, 195, 4005, + 348, 332, 151, 200, 352, 4011, 282, 2093, 141, 2095, + 153, 278, 2947, 371, 2012, 164, 352, 2855, 3563, 3678, + 2928, 170, 5035, 5314, 4010, 1600, 4020, 124, 4014, 4015, + 1605, 13, 251, 3285, 5588, 2853, 5015, 2855, 434, 387, + 5401, 472, 515, 313, 352, 82, 164, 244, 2706, 377, + 344, 387, 170, 291, 313, 5226, 93, 5228, 344, 202, + 3090, 155, 3563, 505, 313, 47, 313, 3930, 283, 284, + 219, 513, 313, 515, 516, 517, 434, 519, 1897, 387, + 3756, 1900, 352, 472, 5639, 453, 3762, 381, 519, 3651, + 465, 1910, 1911, 352, 313, 381, 245, 356, 80, 196, + 5948, 235, 299, 352, 1679, 352, 1925, 496, 1683, 1928, + 356, 352, 3161, 369, 313, 371, 421, 387, 423, 377, + 4495, 4496, 4958, 417, 4960, 4961, 4962, 245, 387, 348, + 519, 417, 352, 352, 2903, 515, 2905, 356, 387, 171, + 2909, 387, 472, 282, 449, 294, 2925, 3700, 287, 5661, + 4984, 2237, 4986, 352, 303, 758, 759, 760, 4143, 1978, + 763, 764, 765, 1982, 1983, 380, 496, 387, 387, 170, + 773, 465, 5218, 5613, 357, 207, 294, 515, 434, 465, + 31, 151, 472, 340, 56, 515, 5232, 516, 387, 261, + 519, 170, 3745, 194, 164, 392, 353, 6045, 2284, 338, + 170, 420, 417, 422, 387, 258, 496, 1953, 5569, 50, + 4038, 4039, 4040, 4041, 3466, 194, 4044, 4045, 4046, 4047, + 4048, 4049, 4050, 4051, 4052, 4053, 383, 3276, 170, 282, + 102, 434, 73, 3282, 85, 472, 272, 88, 29, 496, + 497, 354, 5, 94, 459, 3148, 3064, 5884, 11, 219, + 6056, 2337, 194, 472, 2000, 127, 19, 472, 515, 496, + 296, 52, 3041, 3042, 3043, 3044, 6212, 3046, 6214, 429, + 6, 122, 377, 145, 37, 245, 12, 149, 1592, 983, + 1680, 496, 4110, 4111, 4836, 3870, 380, 2033, 6234, 35, + 36, 4843, 3071, 453, 3023, 1609, 445, 494, 1002, 171, + 515, 1005, 5, 175, 421, 2051, 423, 151, 11, 506, + 507, 508, 509, 510, 511, 513, 97, 515, 190, 517, + 164, 496, 497, 417, 294, 510, 170, 71, 72, 180, + 515, 510, 517, 303, 5889, 5890, 515, 421, 517, 423, + 515, 756, 193, 758, 5390, 760, 5707, 516, 3254, 258, + 519, 766, 767, 768, 100, 206, 5525, 4732, 514, 258, + 3266, 5530, 5531, 519, 4739, 459, 380, 513, 515, 4744, + 517, 517, 4747, 151, 120, 219, 3145, 6183, 472, 516, + 508, 513, 519, 515, 6, 513, 164, 515, 3226, 517, + 12, 10, 170, 205, 13, 3361, 3302, 101, 17, 18, + 19, 245, 496, 417, 6, 10, 261, 5453, 13, 155, + 12, 6, 17, 18, 19, 287, 6, 12, 37, 6, + 194, 515, 12, 2779, 151, 12, 100, 434, 2514, 2515, + 2516, 2517, 2518, 2519, 2520, 2521, 2522, 164, 2524, 514, + 3346, 219, 6, 170, 519, 459, 120, 89, 12, 2535, + 294, 5, 2538, 1853, 5, 465, 6011, 11, 472, 303, + 11, 1861, 516, 61, 3367, 519, 338, 245, 4163, 1869, + 6, 2742, 4167, 177, 235, 445, 12, 2741, 6, 2743, + 2744, 155, 496, 5319, 12, 6, 2742, 515, 22, 517, + 297, 12, 219, 2579, 28, 302, 2242, 2583, 15, 16, + 2586, 515, 2588, 508, 2578, 2591, 3705, 211, 513, 2595, + 515, 472, 517, 474, 1914, 472, 294, 474, 245, 3386, + 3387, 297, 226, 979, 516, 303, 302, 519, 984, 421, + 2616, 423, 2618, 274, 275, 276, 277, 377, 242, 4234, + 955, 1941, 3549, 516, 6099, 516, 519, 3364, 519, 2635, + 516, 516, 403, 519, 519, 406, 4587, 516, 2644, 2645, + 519, 516, 515, 3473, 519, 2738, 270, 294, 3575, 463, + 2778, 101, 4603, 5641, 11, 516, 303, 516, 519, 3417, + 519, 1184, 15, 16, 1187, 2671, 1189, 2663, 1191, 472, + 1193, 474, 2678, 297, 1197, 516, 2682, 2683, 519, 369, + 370, 445, 348, 2689, 223, 516, 3321, 2693, 519, 516, + 1025, 2697, 519, 516, 3483, 3550, 519, 415, 223, 516, + 2706, 3654, 519, 4451, 4630, 4284, 2708, 472, 2710, 474, + 4636, 4637, 2618, 284, 380, 297, 516, 516, 2724, 519, + 519, 2727, 4505, 40, 6005, 5020, 3859, 177, 516, 374, + 516, 519, 2738, 519, 2740, 2741, 2864, 2743, 2744, 363, + 2746, 515, 5708, 516, 311, 62, 519, 445, 5502, 513, + 519, 417, 2758, 517, 348, 2056, 5510, 5511, 2059, 516, + 299, 211, 519, 516, 516, 516, 519, 519, 519, 35, + 36, 3626, 2778, 2779, 299, 516, 226, 4282, 519, 4284, + 516, 2787, 516, 519, 515, 519, 380, 4260, 421, 3367, + 423, 5882, 242, 459, 4274, 5273, 113, 463, 445, 2750, + 61, 4222, 516, 2809, 2810, 519, 472, 2813, 136, 380, + 138, 3500, 516, 380, 516, 519, 2944, 519, 3971, 516, + 270, 516, 519, 417, 519, 516, 496, 497, 519, 3798, + 496, 2837, 3840, 2839, 369, 370, 516, 2843, 10, 519, + 516, 13, 518, 5809, 5179, 4318, 417, 5182, 465, 515, + 417, 2857, 3802, 516, 516, 50, 519, 519, 2864, 516, + 492, 2867, 519, 369, 370, 459, 513, 2873, 516, 516, + 517, 519, 516, 516, 518, 47, 519, 6158, 472, 2618, + 4495, 4496, 54, 4134, 300, 4136, 203, 2893, 459, 369, + 370, 516, 459, 2899, 519, 5239, 5240, 3527, 2849, 5485, + 2906, 472, 496, 5198, 516, 472, 516, 519, 80, 519, + 4723, 3649, 4725, 363, 2920, 5393, 3654, 516, 2584, 516, + 519, 515, 519, 5218, 225, 496, 2902, 2933, 40, 496, + 516, 297, 2938, 519, 6215, 170, 516, 5232, 2944, 519, + 516, 492, 259, 519, 515, 516, 263, 518, 515, 3527, + 62, 516, 2618, 4168, 519, 4170, 2962, 2963, 2964, 517, + 516, 278, 2968, 519, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 516, 5676, 5677, 519, 149, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 297, 516, 2995, + 2996, 519, 1463, 5959, 1465, 312, 50, 2663, 3004, 2738, + 516, 113, 2741, 519, 2743, 2744, 5852, 5853, 3192, 5942, + 3194, 3195, 4517, 516, 516, 516, 519, 519, 519, 516, + 300, 516, 519, 195, 519, 492, 516, 516, 200, 519, + 519, 3037, 225, 516, 516, 4207, 519, 519, 1373, 516, + 357, 175, 519, 1378, 1379, 462, 516, 516, 516, 519, + 519, 519, 516, 516, 516, 519, 519, 519, 519, 516, + 3056, 4512, 519, 3069, 381, 54, 55, 3073, 4533, 508, + 10, 1406, 244, 13, 326, 515, 39, 17, 18, 19, + 1415, 515, 1417, 6049, 401, 516, 1421, 515, 519, 6055, + 3828, 203, 515, 1428, 516, 5390, 3189, 3796, 516, 61, + 176, 519, 4235, 4236, 516, 4074, 4239, 519, 516, 515, + 5704, 10, 4533, 516, 13, 221, 519, 4732, 17, 18, + 19, 221, 516, 516, 4739, 519, 519, 299, 4081, 4744, + 516, 3037, 4747, 519, 516, 352, 516, 519, 37, 519, + 516, 516, 515, 519, 519, 3321, 516, 259, 517, 519, + 476, 263, 515, 3159, 515, 3161, 3979, 3846, 5453, 200, + 516, 516, 74, 519, 519, 156, 278, 515, 80, 156, + 3176, 517, 3178, 297, 3804, 516, 3806, 3958, 519, 3185, + 200, 93, 352, 3189, 1519, 3191, 3192, 297, 3194, 3195, + 3196, 6157, 4137, 516, 1529, 156, 519, 156, 3204, 516, + 312, 516, 200, 3209, 519, 3254, 156, 4033, 297, 121, + 516, 123, 516, 519, 516, 519, 170, 519, 156, 3225, + 392, 3497, 3498, 2609, 2610, 2611, 3804, 4180, 3806, 516, + 516, 352, 519, 519, 243, 123, 297, 453, 1573, 1574, + 515, 4067, 291, 170, 516, 357, 3252, 3253, 3254, 74, + 3426, 3257, 282, 3302, 3943, 0, 40, 282, 3888, 3265, + 3266, 3267, 3268, 476, 4217, 515, 297, 282, 180, 381, + 3276, 4850, 50, 50, 282, 3281, 3282, 439, 3284, 282, + 3286, 1616, 92, 223, 1619, 1620, 313, 465, 465, 401, + 89, 434, 3298, 3299, 4120, 170, 3302, 209, 3037, 333, + 156, 5961, 156, 515, 156, 156, 156, 476, 156, 519, + 3888, 156, 156, 156, 156, 156, 156, 3323, 5613, 3325, + 156, 3327, 494, 170, 223, 156, 156, 93, 156, 156, + 297, 417, 515, 4283, 506, 507, 508, 509, 510, 511, + 3346, 40, 4311, 243, 4313, 3354, 3355, 3356, 4828, 170, + 10, 2671, 170, 13, 297, 100, 3405, 515, 515, 299, + 515, 3367, 170, 515, 515, 515, 515, 3643, 4337, 2689, + 282, 515, 289, 2693, 515, 287, 515, 2697, 515, 515, + 515, 473, 515, 515, 515, 5133, 515, 47, 515, 3665, + 3056, 309, 515, 515, 54, 515, 3402, 515, 515, 3405, + 299, 515, 515, 165, 2724, 5020, 151, 3456, 515, 221, + 515, 515, 3418, 5708, 515, 181, 515, 3423, 330, 164, + 80, 515, 4252, 4556, 515, 170, 519, 515, 40, 519, + 4219, 176, 3438, 104, 346, 40, 243, 182, 2758, 205, + 185, 40, 515, 39, 189, 427, 3452, 427, 513, 513, + 3189, 429, 429, 3192, 3460, 3194, 3195, 62, 2778, 429, + 515, 429, 176, 519, 170, 5416, 3472, 170, 294, 3475, + 292, 3477, 387, 70, 219, 517, 3482, 1812, 429, 4429, + 4407, 429, 248, 374, 429, 464, 245, 429, 374, 149, + 2810, 3497, 3498, 429, 429, 6155, 3402, 3503, 374, 3405, + 245, 429, 81, 429, 505, 429, 93, 374, 113, 156, + 297, 379, 240, 429, 5809, 4338, 429, 2837, 3524, 287, + 129, 3527, 429, 2843, 3530, 420, 318, 452, 297, 292, + 369, 4417, 3538, 429, 446, 195, 302, 2857, 193, 515, + 200, 515, 429, 3819, 2864, 3821, 3452, 2867, 93, 294, + 519, 129, 297, 2873, 3460, 313, 200, 3563, 303, 453, + 453, 156, 129, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 429, 2893, 429, 180, 429, 115, 129, 2899, + 429, 61, 61, 5198, 244, 267, 2906, 337, 3254, 301, + 337, 429, 429, 3599, 3600, 3601, 429, 429, 203, 337, + 2920, 420, 318, 5218, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 2933, 429, 360, 429, 5232, 3624, 49, + 4589, 318, 49, 3799, 2944, 429, 429, 3633, 429, 3635, + 519, 429, 429, 429, 429, 429, 3302, 3643, 429, 299, + 429, 429, 516, 520, 297, 5066, 223, 223, 223, 223, + 223, 223, 223, 223, 259, 421, 297, 423, 263, 3665, + 3326, 223, 223, 3402, 5959, 429, 3405, 439, 434, 515, + 40, 156, 417, 278, 297, 156, 3342, 121, 5426, 282, + 446, 156, 453, 449, 156, 464, 136, 10, 138, 156, + 13, 297, 2027, 2028, 17, 18, 19, 251, 3974, 282, + 445, 282, 282, 2038, 2039, 40, 170, 312, 5456, 515, + 515, 40, 162, 3452, 37, 136, 235, 138, 51, 376, + 156, 3460, 515, 3729, 469, 156, 471, 472, 453, 453, + 156, 156, 392, 291, 429, 2070, 3402, 286, 176, 3405, + 515, 162, 468, 267, 267, 3751, 13, 427, 493, 519, + 3756, 429, 357, 185, 6049, 515, 3762, 431, 4581, 515, + 6055, 515, 308, 516, 519, 3771, 265, 516, 513, 193, + 193, 516, 517, 518, 513, 5390, 381, 227, 378, 492, + 516, 1453, 492, 516, 516, 516, 3452, 232, 469, 519, + 3456, 219, 3798, 3799, 3460, 298, 401, 390, 3804, 519, + 3806, 453, 40, 453, 306, 61, 227, 516, 464, 374, + 515, 453, 232, 3819, 232, 3821, 287, 287, 4771, 429, + 170, 429, 429, 515, 274, 275, 276, 277, 287, 297, + 50, 281, 282, 396, 494, 3841, 297, 287, 5453, 3159, + 282, 243, 243, 243, 369, 4671, 506, 507, 508, 509, + 510, 511, 261, 274, 275, 276, 277, 297, 3178, 129, + 281, 3867, 6157, 429, 420, 3185, 287, 387, 519, 4685, + 200, 519, 5005, 194, 352, 297, 384, 3873, 297, 429, + 297, 472, 3888, 3889, 340, 429, 4575, 4576, 4577, 4578, + 4579, 303, 516, 40, 453, 223, 453, 4754, 235, 336, + 223, 505, 156, 292, 170, 3911, 40, 418, 172, 156, + 465, 384, 156, 3909, 515, 156, 292, 515, 453, 472, + 282, 337, 40, 5374, 3930, 282, 3877, 29, 297, 297, + 235, 292, 191, 191, 170, 40, 171, 235, 384, 170, + 282, 297, 476, 3949, 61, 200, 429, 3953, 200, 200, + 200, 200, 176, 264, 472, 519, 297, 291, 176, 519, + 176, 493, 458, 303, 309, 136, 319, 519, 3974, 176, + 517, 519, 4118, 515, 281, 516, 299, 516, 4766, 519, + 516, 429, 519, 516, 3990, 516, 436, 3993, 516, 516, + 0, 492, 3998, 515, 4000, 516, 258, 447, 5613, 516, + 516, 516, 516, 5508, 4010, 496, 516, 3958, 4014, 4015, + 519, 516, 516, 176, 4020, 436, 4966, 515, 4841, 516, + 515, 515, 4028, 515, 4030, 514, 447, 4033, 469, 515, + 514, 4037, 4038, 4039, 4040, 4041, 185, 519, 4044, 4045, + 4046, 4047, 4048, 4049, 4050, 4051, 4052, 4053, 495, 253, + 505, 4057, 4058, 4059, 451, 469, 4062, 297, 61, 205, + 459, 4067, 515, 297, 297, 156, 4072, 4116, 4074, 429, + 4076, 300, 515, 213, 429, 429, 515, 287, 4084, 159, + 429, 4087, 282, 4089, 156, 387, 406, 379, 156, 156, + 100, 379, 379, 5708, 205, 243, 159, 505, 297, 159, + 374, 4107, 429, 469, 4110, 4111, 453, 245, 320, 4115, + 4116, 320, 450, 159, 4120, 429, 4122, 4126, 4127, 4128, + 4129, 429, 4757, 403, 255, 429, 429, 255, 255, 429, + 429, 374, 429, 429, 429, 374, 4312, 374, 429, 429, + 129, 151, 374, 282, 156, 4143, 429, 4143, 4143, 4155, + 429, 49, 429, 516, 164, 4143, 514, 4163, 4143, 4143, + 170, 4167, 4338, 188, 387, 516, 176, 223, 516, 223, + 516, 301, 182, 516, 439, 185, 3, 40, 170, 189, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 50, + 114, 516, 170, 4199, 5809, 519, 515, 519, 516, 62, + 40, 4477, 4478, 156, 3524, 156, 170, 3873, 429, 219, + 4216, 505, 188, 292, 515, 156, 4222, 374, 374, 374, + 374, 5642, 374, 453, 384, 88, 453, 154, 4234, 154, + 519, 513, 223, 223, 147, 245, 4925, 4926, 223, 4928, + 223, 223, 223, 3909, 5992, 5993, 223, 4985, 223, 4255, + 113, 114, 223, 227, 360, 297, 297, 4163, 121, 61, + 297, 4167, 297, 13, 309, 176, 519, 464, 516, 446, + 516, 2606, 2607, 281, 516, 307, 446, 2612, 226, 226, + 304, 61, 419, 189, 294, 426, 514, 297, 5174, 360, + 516, 516, 458, 303, 91, 439, 515, 519, 170, 516, + 4306, 516, 516, 40, 3624, 4311, 4312, 4313, 453, 2644, + 2645, 453, 515, 515, 515, 235, 429, 180, 213, 61, + 420, 156, 5208, 88, 180, 403, 379, 439, 4234, 159, + 429, 4337, 4338, 429, 429, 374, 429, 429, 374, 352, + 203, 516, 516, 516, 5959, 5924, 515, 472, 515, 61, + 360, 420, 4528, 170, 297, 5324, 459, 80, 156, 114, + 208, 223, 439, 2035, 2036, 516, 223, 232, 223, 223, + 429, 2706, 705, 2045, 297, 476, 4352, 40, 4384, 515, + 515, 4387, 2054, 515, 318, 295, 519, 516, 4364, 297, + 3, 515, 439, 519, 46, 429, 259, 519, 731, 515, + 263, 516, 183, 182, 384, 114, 176, 417, 223, 516, + 145, 287, 516, 287, 287, 278, 287, 176, 516, 282, + 61, 470, 516, 10, 4163, 309, 13, 516, 4167, 516, + 470, 3751, 233, 519, 6049, 445, 318, 233, 226, 515, + 6055, 516, 516, 471, 505, 4451, 5546, 426, 5548, 312, + 4116, 515, 439, 515, 10, 2790, 292, 13, 176, 469, + 47, 471, 472, 429, 80, 472, 207, 54, 194, 194, + 61, 4477, 4478, 287, 287, 4481, 505, 4143, 420, 429, + 27, 519, 4488, 493, 74, 429, 33, 156, 519, 4495, + 4496, 47, 429, 80, 357, 4234, 429, 4163, 54, 4505, + 159, 4167, 5191, 513, 223, 516, 516, 517, 518, 515, + 128, 178, 121, 5202, 40, 200, 292, 515, 381, 40, + 384, 453, 4528, 172, 80, 4521, 282, 4533, 4534, 4535, + 292, 78, 384, 472, 61, 86, 472, 420, 401, 4545, + 403, 40, 6157, 406, 2879, 176, 297, 515, 5681, 4825, + 170, 300, 2887, 347, 519, 2890, 210, 221, 516, 516, + 516, 176, 149, 515, 5557, 458, 400, 2902, 5351, 61, + 516, 377, 40, 83, 93, 515, 137, 515, 201, 346, + 4586, 4757, 297, 4589, 429, 5718, 516, 134, 516, 4495, + 4496, 40, 156, 149, 141, 170, 156, 144, 5233, 515, + 429, 515, 40, 515, 287, 256, 5432, 453, 195, 4615, + 3930, 515, 515, 200, 515, 515, 515, 156, 384, 516, + 5446, 114, 40, 4629, 171, 516, 301, 176, 439, 3949, + 398, 5764, 5765, 3953, 398, 516, 170, 4643, 204, 195, + 4916, 5467, 113, 40, 200, 468, 516, 515, 5474, 515, + 5285, 458, 515, 193, 453, 515, 515, 244, 170, 420, + 207, 519, 420, 205, 515, 4671, 519, 278, 4674, 297, + 6, 515, 163, 516, 515, 370, 4682, 4683, 370, 4685, + 74, 476, 74, 300, 4690, 4691, 518, 137, 244, 4695, + 472, 142, 516, 468, 472, 458, 4702, 457, 167, 4705, + 4706, 167, 1035, 519, 37, 515, 4712, 515, 387, 257, + 420, 176, 299, 1046, 343, 5541, 5542, 287, 207, 420, + 5689, 297, 515, 297, 384, 40, 4732, 40, 300, 1062, + 515, 278, 300, 4739, 5557, 282, 178, 5013, 4744, 201, + 155, 4747, 4748, 299, 178, 292, 515, 369, 152, 4755, + 61, 61, 304, 40, 301, 10, 4495, 4496, 13, 353, + 4766, 61, 516, 5756, 425, 407, 313, 429, 4774, 126, + 451, 516, 4768, 4769, 6, 5464, 384, 515, 142, 37, + 287, 515, 425, 515, 5917, 5754, 26, 369, 4794, 4791, + 10, 519, 47, 13, 305, 519, 369, 83, 283, 54, + 176, 387, 429, 283, 515, 392, 4812, 155, 355, 356, + 398, 5774, 121, 3148, 398, 519, 515, 472, 458, 4825, + 459, 453, 472, 178, 178, 80, 4732, 47, 515, 4495, + 516, 5400, 458, 4739, 54, 459, 392, 907, 4744, 947, + 387, 4747, 3367, 2913, 994, 2822, 4852, 1682, 3575, 1379, + 993, 4311, 5985, 5986, 4286, 4521, 5908, 2939, 3790, 4835, + 80, 5550, 2993, 4869, 5327, 5754, 6026, 4475, 4874, 4845, + 0, 5697, 5374, 5699, 4284, 4881, 4284, 4975, 5350, 3504, + 3135, 5888, 5232, 6014, 5784, 5783, 1219, 5928, 6049, 5020, + 3508, 4897, 4496, 4522, 149, 4507, 5728, 4465, 4904, 3007, + 3007, 4306, 3838, 4491, 989, 3600, 5014, 494, 5357, 456, + 4916, 3882, 4558, 5654, 6122, 45, 6227, 6209, 5341, 506, + 507, 508, 509, 510, 511, 3798, 5940, 4530, 5287, 5528, + 5737, 1842, 5290, 18, 28, 4255, 644, 5497, 494, 1211, + 195, 4947, 3947, 4586, 4589, 200, 2683, 6118, 3023, 1886, + 506, 507, 508, 509, 510, 511, 3482, 5400, 4533, 5642, + 1883, 1921, 3893, 2635, 1897, 5543, 696, 4973, 2938, 3732, + 100, 4337, 729, 3651, 5966, 195, 6161, 4562, 2969, 5557, + 200, 1795, 4564, 4989, 2625, 5723, 1498, 6177, 4994, 244, + 4214, 838, 1395, 4732, 5494, 1354, 4770, 5881, 5274, 40, + 4739, 40, 3423, 3438, 1456, 4744, 4629, 5013, 4747, 4748, + 5869, 5701, 4152, 2635, 5020, 3405, 4169, 5199, 3402, 5453, + 1455, 151, 5452, 4215, 244, 1458, 6139, 3402, 5863, 5996, + 3365, 5688, 3367, 6026, 164, 1412, 5032, 5430, 2529, 4076, + 170, 5702, 3344, 5703, 299, 2530, 176, 2047, 3383, 3326, + 3205, 2968, 182, 3324, 3314, 185, 3240, 5233, 4013, 189, + 5066, -1, 5068, 2535, 4384, -1, 2623, 4387, -1, 895, + -1, -1, -1, 4739, -1, -1, -1, -1, 4744, 299, + -1, 4747, -1, -1, -1, 5720, -1, -1, -1, 219, + -1, 221, -1, 5099, 5285, 3430, 3431, 5273, -1, -1, + 5284, -1, 4768, 4769, -1, -1, 6, -1, -1, 5285, + -1, -1, -1, -1, 5020, 245, -1, -1, -1, -1, + -1, -1, -1, 23, 5130, 25, -1, 5133, -1, 29, + 5136, 5137, 5138, -1, 34, 35, 36, 392, 38, -1, + -1, 41, 42, -1, 44, 5329, 46, -1, -1, -1, + -1, -1, -1, 53, 54, 55, -1, 5163, 5164, -1, + -1, 5167, -1, -1, 294, -1, -1, 297, 4488, -1, + -1, -1, 392, 303, -1, -1, -1, -1, 5756, -1, + -1, -1, 5188, 6196, -1, 4505, -1, -1, 5194, -1, + -1, -1, 5198, -1, -1, 6164, -1, -1, 5204, 5205, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5218, -1, -1, 5221, -1, -1, -1, -1, + 5226, -1, 5228, -1, -1, -1, 5232, -1, -1, -1, + 360, -1, -1, -1, -1, -1, -1, -1, -1, 494, + 6209, -1, -1, -1, 5211, -1, -1, -1, -1, 1582, + 4989, 506, 507, 508, 509, 510, 511, -1, 6227, -1, + -1, -1, -1, -1, -1, -1, 4586, 5273, 5274, -1, + -1, -1, -1, -1, 494, -1, 6102, -1, 5284, -1, + -1, 5020, -1, 413, -1, -1, 506, 507, 508, 509, + 510, 511, 5198, -1, -1, -1, -1, 197, 198, 199, + -1, -1, 202, -1, -1, -1, 206, -1, 208, -1, + -1, 211, 5218, -1, 214, 445, -1, 217, 5324, -1, + 220, -1, 222, 5329, 6210, 225, 5232, -1, -1, 229, + 5908, 231, -1, -1, -1, -1, -1, -1, -1, 469, + -1, 471, 472, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5355, + -1, -1, -1, 493, -1, -1, 5032, 6105, 6106, -1, + -1, -1, -1, -1, -1, 6201, -1, -1, -1, -1, + -1, -1, -1, -1, 5390, -1, 516, 5393, 518, 519, + 5386, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 5400, 5400, -1, 5400, 5400, 5400, -1, 5400, 5400, + 5400, 5400, 5400, 5400, 5400, 5400, 5400, 5400, 5400, 5400, + 5426, 5400, -1, 5400, 5430, 5474, 5432, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 5389, 40, + 5446, -1, -1, -1, -1, -1, -1, 5453, 6026, -1, + 5456, -1, -1, -1, -1, -1, -1, -1, -1, 5198, + -1, 5467, -1, 64, 3799, -1, -1, -1, 5474, -1, + -1, -1, -1, -1, 1807, -1, -1, -1, -1, 5218, + -1, -1, -1, -1, 5390, 1818, -1, 3822, -1, -1, + -1, -1, -1, 5232, -1, -1, -1, -1, 99, -1, + -1, 1834, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5525, + -1, -1, -1, -1, 5530, 5531, -1, -1, -1, 5535, + -1, -1, 5198, -1, -1, 5541, 5542, 5543, -1, -1, + -1, -1, -1, -1, 5720, 5284, -1, 5453, -1, 4869, + 27, 5557, -1, -1, -1, 1888, 33, -1, -1, 160, + -1, 4881, -1, -1, -1, -1, -1, -1, -1, -1, + 1903, 5577, -1, 1906, 1907, -1, -1, -1, -1, 5585, + 3252, 3253, 5588, -1, -1, 3257, -1, -1, -1, -1, + 5329, -1, -1, -1, -1, -1, 197, -1, -1, -1, + -1, 78, -1, -1, 1937, 1938, -1, 5613, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5615, + -1, -1, -1, -1, -1, -1, 3298, 3299, -1, -1, + -1, -1, -1, -1, 235, -1, 5642, 5643, -1, 240, + -1, -1, -1, -1, 3979, -1, -1, -1, -1, -1, + -1, 5390, -1, -1, -1, -1, -1, 134, -1, -1, + 5666, -1, -1, -1, 141, -1, -1, 144, 27, 5675, + 5676, 5677, -1, -1, 33, -1, -1, -1, -1, -1, + -1, 282, 5688, 5689, -1, -1, 5692, -1, -1, 5355, + -1, 5697, -1, 5699, 171, 5701, -1, -1, -1, -1, + -1, -1, 5708, -1, -1, -1, -1, 5613, -1, 5705, + -1, 5895, -1, 314, 5453, -1, -1, -1, -1, 78, + 5386, -1, -1, 5729, -1, -1, -1, -1, -1, -1, + 207, -1, -1, -1, 5400, -1, -1, -1, -1, -1, + -1, 2074, -1, 643, -1, -1, -1, -1, 5754, 649, + 5756, 651, -1, 653, -1, 356, 656, -1, -1, -1, + 361, -1, -1, 663, -1, -1, -1, -1, 668, 370, + 670, -1, -1, -1, -1, 134, 676, -1, 379, 5099, + -1, -1, 141, 5967, 5968, 144, 387, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 399, -1, + 700, 278, 5708, 5809, -1, 282, -1, 408, 5474, 709, + -1, 412, 171, 713, -1, 292, 716, -1, -1, 719, + -1, -1, -1, -1, 301, -1, -1, -1, -1, -1, + -1, 432, -1, -1, -1, 735, 313, -1, -1, -1, + 5846, -1, -1, -1, -1, -1, 5585, -1, 207, -1, + -1, -1, -1, 5859, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 5869, -1, -1, 467, -1, -1, -1, + 471, -1, -1, 5879, 5613, 352, 5882, -1, 355, 356, + -1, -1, -1, -1, -1, -1, -1, -1, 788, 5895, + -1, -1, -1, -1, -1, -1, -1, 797, -1, -1, + -1, -1, 5908, 5809, -1, -1, 5226, -1, 5228, -1, + 387, -1, -1, -1, -1, -1, -1, 817, 818, 278, + 820, 821, -1, 282, -1, 825, -1, -1, -1, -1, + -1, -1, -1, 292, -1, -1, -1, -1, -1, 839, + -1, -1, 301, 5949, 844, 5941, -1, 5613, -1, 5615, + 850, -1, -1, 5959, 313, -1, -1, -1, -1, -1, + -1, 5967, 5968, -1, -1, -1, -1, 5973, -1, 5708, + 5966, 5966, -1, -1, -1, -1, -1, 4312, 5966, 456, + -1, 5966, 5966, -1, -1, -1, 5992, 5993, -1, -1, + -1, -1, -1, 352, -1, 895, 355, 356, -1, -1, + -1, -1, -1, 4338, -1, -1, -1, -1, -1, 909, + 6059, -1, -1, -1, -1, -1, -1, 4352, -1, -1, + 6026, -1, 922, -1, 40, -1, -1, -1, 387, 4364, + -1, -1, -1, 6217, 6218, -1, -1, 937, -1, 5705, + -1, -1, -1, 6049, -1, -1, -1, -1, 64, 6055, + -1, -1, -1, 5959, -1, -1, 956, -1, -1, -1, + -1, 961, 962, 6059, 6059, -1, -1, 6073, 6074, -1, + 5809, 6059, -1, -1, 6059, 6059, -1, -1, -1, -1, + -1, -1, 6088, 99, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 993, 994, -1, 6102, 456, -1, -1, + -1, -1, -1, -1, -1, 4440, 4441, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1016, 1017, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1030, 6137, 1032, -1, -1, -1, 1036, 0, -1, 1039, + 1040, -1, 1042, 6049, 160, -1, -1, 1047, -1, 6055, + -1, 6157, -1, -1, -1, -1, 5895, -1, 6164, -1, + -1, -1, -1, -1, -1, 6161, 6161, -1, -1, -1, + -1, 1071, -1, 6161, -1, -1, 6161, 6161, 1078, 1079, + -1, 197, -1, -1, -1, -1, -1, -1, -1, -1, + 6196, 6197, -1, 4528, -1, 6201, -1, -1, -1, 6205, + 1100, 1101, 1102, 6209, 1104, -1, 1106, -1, 1108, 1109, + -1, 6217, 6218, -1, -1, -1, -1, -1, -1, 235, + 5959, 6227, -1, -1, 240, -1, -1, -1, 5967, 5968, + -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, + -1, -1, 1142, -1, 1144, 1145, 4581, 10, -1, -1, + 13, 6157, -1, -1, 17, 18, 19, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 282, -1, -1, -1, + -1, -1, -1, -1, 37, 5941, -1, 1177, -1, -1, + -1, -1, -1, -1, 47, -1, -1, -1, 151, -1, + -1, 54, -1, -1, -1, -1, -1, -1, 314, -1, + 5966, 164, -1, 1203, -1, 1205, -1, 170, -1, 1209, + 6049, 1211, -1, 176, -1, -1, 6055, 80, -1, 182, + -1, -1, 185, -1, -1, -1, 189, -1, -1, -1, + -1, -1, -1, -1, 6073, 1235, -1, 1237, -1, -1, + 356, 1241, -1, -1, -1, 361, -1, -1, 4020, -1, + -1, -1, -1, -1, 370, 1255, 219, -1, -1, -1, + -1, -1, -1, 379, -1, -1, 4038, 4039, 4040, 4041, + -1, 387, 4044, 4045, 4046, 4047, 4048, 4049, 4050, 4051, + 4052, 4053, 245, 399, -1, -1, -1, -1, -1, -1, + 1290, -1, 408, 6059, -1, -1, 412, -1, 6137, -1, + 4072, -1, -1, -1, -1, -1, -1, 2740, -1, -1, + -1, -1, -1, 2746, -1, -1, 432, -1, 6157, 1319, + 1320, 1321, -1, 1323, -1, -1, -1, -1, -1, -1, + -1, 294, 195, -1, 297, -1, -1, 200, 4110, 4111, + 303, -1, -1, 1343, -1, -1, -1, -1, -1, -1, + -1, 467, -1, -1, 2787, 471, -1, -1, 6197, -1, + 223, 224, -1, -1, -1, -1, 6205, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 6217, 6218, + -1, 244, -1, 4155, 1384, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 6161, -1, 360, -1, -1, + 4835, -1, 1402, -1, -1, -1, 4841, -1, -1, -1, + 4845, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 285, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 299, 4872, 4873, 302, + -1, -1, 4877, 4878, -1, -1, -1, -1, 1448, -1, + -1, -1, 1452, 1453, 417, -1, -1, -1, -1, -1, + -1, -1, 5882, 1463, 1464, 1465, 1466, -1, 1468, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 445, -1, 64, -1, -1, -1, -1, -1, + -1, 1491, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 469, -1, 471, 472, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 99, + -1, -1, -1, -1, -1, -1, 1526, -1, -1, 392, + 493, 1531, -1, -1, 1534, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1547, 1548, -1, + 513, -1, -1, 516, 517, 518, 1556, -1, -1, 1559, + -1, -1, -1, 2996, -1, -1, -1, -1, -1, 10, + -1, -1, 13, -1, -1, -1, 17, 18, 19, -1, + 160, -1, -1, -1, -1, -1, 1586, -1, 1588, -1, + -1, 1591, -1, -1, 1594, 1595, 37, -1, 1598, -1, + -1, -1, -1, -1, -1, -1, 47, -1, 1608, -1, + -1, 1611, -1, 54, 1614, -1, -1, 197, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 494, -1, -1, -1, -1, 1636, -1, -1, 80, + 503, 504, 505, 506, 507, 508, 509, 510, 511, -1, + -1, -1, -1, -1, 1654, -1, 10, 520, -1, 13, + 240, -1, -1, 17, 18, 19, 1666, 1667, 1668, 1669, + 1670, -1, -1, -1, -1, -1, -1, -1, -1, 4451, + -1, -1, -1, 37, 1684, -1, -1, -1, -1, -1, + -1, -1, -1, 47, -1, 1695, 1696, 1697, 278, -1, + 54, -1, 282, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 80, -1, -1, -1, + -1, -1, -1, 313, 314, -1, -1, -1, -1, -1, + -1, -1, -1, 3176, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 195, -1, -1, -1, 3191, 200, + -1, -1, -1, 3196, -1, -1, -1, -1, -1, -1, + -1, -1, 352, -1, -1, -1, 356, -1, -1, -1, + -1, 361, 223, 224, -1, -1, -1, -1, -1, -1, + 370, -1, 3225, -1, 1794, -1, -1, -1, -1, 379, + -1, -1, -1, 244, -1, 1805, -1, 387, -1, -1, + -1, -1, -1, 1813, 1814, -1, -1, -1, -1, 399, + -1, -1, -1, -1, -1, -1, -1, -1, 408, 1829, + -1, -1, 412, -1, -1, -1, -1, -1, 5273, -1, + -1, 195, -1, -1, 285, -1, 200, 1847, 1848, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 299, -1, + -1, 302, -1, 1863, 1864, 1865, 1866, -1, -1, 223, + 224, -1, 1872, -1, -1, -1, -1, -1, -1, 1879, + -1, -1, 1882, -1, -1, -1, -1, 467, -1, -1, + 244, -1, -1, -1, 51, -1, 10, 1897, -1, 13, + 1900, -1, 4674, 17, 18, 19, -1, -1, -1, -1, + 1910, 1911, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1921, 1922, 37, -1, 1925, -1, -1, 1928, -1, + -1, 285, -1, 47, -1, -1, -1, -1, -1, -1, + 54, -1, -1, 1943, 1944, 299, -1, -1, 302, -1, + 1950, 392, 1952, 10, -1, -1, 13, -1, -1, -1, + 17, 18, 19, -1, -1, -1, 80, -1, -1, 1969, + -1, -1, -1, -1, -1, -1, 1976, -1, 1978, -1, + 37, 1981, 1982, 1983, -1, 1985, 1986, -1, 1988, -1, + 47, -1, -1, -1, -1, 1995, -1, 54, -1, -1, + -1, -1, 2002, -1, -1, 2005, 2006, -1, -1, 2009, + -1, -1, 2012, 2013, -1, -1, -1, 2017, -1, 2019, + -1, -1, -1, 80, 2024, 2025, -1, -1, -1, -1, + -1, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 392, -1, + 2040, -1, 2042, 2043, 2044, 2045, 2046, 2047, 2048, 2049, + -1, -1, 2052, 494, 2054, 2055, -1, -1, 2058, -1, + -1, -1, 503, 504, 505, 506, 507, 508, 509, 510, + 511, -1, -1, -1, -1, 2075, 2076, 2077, 519, -1, + -1, 195, -1, -1, -1, -1, 200, -1, -1, -1, + -1, -1, -1, 2093, -1, -1, -1, 3530, -1, -1, + -1, -1, -1, -1, -1, 3538, -1, -1, -1, 223, + 224, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5557, -1, -1, -1, -1, -1, -1, -1, + 244, -1, -1, 2133, -1, -1, 17, -1, 195, -1, + 494, -1, -1, 200, -1, 26, -1, -1, -1, 503, + 504, 505, 506, 507, 508, 509, 510, 511, -1, -1, + -1, -1, 516, -1, -1, 519, 223, 224, -1, -1, + -1, 285, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 299, -1, 244, 302, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3633, -1, 3635, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1131, -1, -1, -1, -1, + -1, 1137, 0, -1, -1, -1, -1, -1, 285, -1, + -1, 1147, -1, -1, -1, 1151, -1, 2237, -1, 1155, + -1, 1157, 299, -1, 22, 302, -1, 1163, -1, -1, + -1, -1, -1, 1169, -1, 33, 1172, 35, 36, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 53, -1, -1, 392, -1, + -1, -1, -1, -1, 2284, 63, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 3729, 75, -1, 77, + 78, -1, -1, -1, -1, -1, 84, -1, 86, -1, + -1, 5746, -1, -1, -1, -1, -1, -1, -1, -1, + 98, -1, 100, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 392, -1, 2337, 3771, 117, + -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 135, -1, 137, + -1, 5133, -1, 141, -1, -1, -1, -1, -1, 147, + -1, -1, -1, -1, -1, -1, -1, 155, -1, 157, + 494, -1, -1, -1, -1, -1, 164, -1, -1, 503, + 504, 505, 506, 507, 508, 509, 510, 511, -1, -1, + -1, -1, -1, -1, 182, 519, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5188, -1, -1, -1, + -1, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 3867, -1, -1, 494, -1, -1, + -1, -1, -1, -1, -1, -1, 503, 504, 505, 506, + 507, 508, 509, 510, 511, -1, -1, -1, -1, 516, + -1, -1, -1, -1, -1, -1, -1, -1, 246, 247, + -1, -1, -1, -1, 252, -1, -1, -1, 3911, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 266, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 27, -1, + -1, -1, -1, -1, 33, -1, 284, -1, -1, -1, + -1, -1, -1, -1, 2514, 2515, 2516, 2517, 2518, 2519, + 2520, 2521, 2522, -1, 2524, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2534, 2535, -1, -1, 2538, -1, + -1, -1, -1, -1, -1, 2545, -1, -1, 705, 78, + 328, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3993, -1, -1, -1, 342, -1, -1, -1, -1, -1, + 348, 349, -1, 351, 731, -1, -1, 2577, 356, 2579, + -1, -1, 2582, 2583, 362, -1, 2586, 365, 2588, -1, + -1, 2591, -1, -1, 372, 2595, -1, -1, -1, -1, + -1, 379, 380, -1, 4037, 134, -1, -1, -1, 387, + -1, -1, 141, 391, -1, 144, -1, -1, 2618, 10, + -1, -1, 13, 401, 2624, 2625, 17, 18, 19, 4062, + -1, -1, -1, -1, -1, 2635, -1, -1, -1, 417, + -1, -1, 171, -1, 2644, 2645, 37, -1, -1, -1, + -1, -1, -1, -1, 5426, -1, 47, -1, 2658, 437, + -1, -1, -1, 54, -1, -1, 2666, -1, 2668, -1, + 448, -1, -1, -1, -1, -1, 454, -1, 207, -1, + -1, 459, -1, -1, 5456, -1, -1, -1, -1, 80, + -1, -1, -1, -1, 472, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 2708, -1, + 2710, -1, -1, -1, -1, -1, 873, -1, 496, -1, + 498, 499, 500, 501, 502, -1, -1, 2727, -1, 6164, + -1, -1, -1, -1, -1, -1, -1, 515, 2738, -1, + 518, 2741, 2742, 2743, 2744, -1, -1, 2747, -1, 278, + 2750, -1, -1, 282, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 292, 645, -1, -1, -1, -1, -1, + -1, 2771, 301, -1, 6209, -1, -1, -1, -1, 27, + -1, -1, 2782, -1, 313, 33, -1, -1, -1, -1, + 2790, 2791, 6227, -1, -1, -1, -1, 2797, -1, -1, + 48, -1, -1, -1, 195, -1, 2806, -1, -1, 200, + -1, -1, -1, -1, 695, 696, -1, -1, -1, -1, + -1, -1, -1, 352, -1, -1, 355, 356, 2828, -1, + 78, -1, 223, 224, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 2849, + -1, -1, -1, 244, -1, -1, -1, -1, 387, 1016, + -1, -1, 2862, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1035, -1, + -1, -1, -1, -1, 132, 2885, 134, -1, 2888, 1046, + -1, -1, -1, 141, 285, -1, 144, -1, -1, -1, + -1, -1, -1, -1, -1, 1062, -1, -1, 299, -1, + 791, 302, -1, -1, 2914, 2915, 5688, -1, -1, -1, + -1, -1, -1, 171, -1, -1, -1, 456, -1, 2929, + 811, 2931, 2932, -1, -1, -1, -1, -1, 819, -1, + -1, 822, 823, 824, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 207, + -1, -1, 2962, 2963, 2964, -1, -1, -1, 2968, -1, + -1, -1, -1, -1, -1, -1, 2976, -1, -1, -1, + -1, -1, -1, -1, -1, 10, -1, -1, 13, 2989, + -1, -1, 17, 18, 19, 2995, -1, 2997, -1, -1, + 1916, 392, -1, -1, -1, -1, -1, -1, 1924, -1, + 3010, -1, 37, -1, -1, 3015, -1, -1, -1, -1, + -1, 3021, 47, -1, 3024, -1, -1, -1, -1, 54, + 278, -1, -1, -1, 282, -1, 3036, 3037, -1, -1, + -1, -1, -1, -1, 292, -1, -1, 3047, 4481, -1, + -1, -1, -1, 301, -1, 80, -1, 3057, -1, 3059, + -1, -1, 1219, -1, -1, 313, -1, -1, -1, -1, + -1, 27, -1, -1, -1, -1, -1, 33, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 5859, -1, -1, + -1, -1, 48, -1, -1, -1, -1, -1, 3098, -1, + 3100, -1, 3102, 494, 352, -1, -1, 355, 356, -1, + -1, -1, 503, 504, 505, 506, 507, 508, 509, 510, + 511, -1, 78, -1, -1, 516, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 3135, -1, -1, -1, 387, + -1, -1, -1, -1, 1025, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 195, -1, -1, -1, 10, 200, 132, 13, 134, -1, + -1, 17, 18, 19, -1, 141, -1, -1, 144, 3189, + 3190, -1, 3192, -1, 3194, 3195, -1, 3197, 223, 224, + -1, 37, -1, -1, 3204, -1, -1, -1, 456, 3209, + -1, 47, -1, -1, 64, 171, -1, -1, 54, 244, + 5992, 5993, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 80, -1, -1, -1, -1, 99, + -1, 207, 3252, 3253, 3254, -1, -1, 3257, -1, -1, + 285, -1, -1, -1, -1, 3265, 3266, 3267, 3268, -1, + -1, -1, -1, -1, 299, -1, -1, 302, -1, -1, + -1, 3281, -1, -1, 3284, -1, 3286, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 3298, 3299, + -1, -1, 3302, -1, -1, -1, -1, -1, -1, -1, + 160, -1, -1, -1, -1, -1, -1, 1474, -1, -1, + -1, 3321, 278, 3323, -1, 3325, 282, 3327, -1, -1, + -1, -1, -1, -1, -1, 1216, 292, -1, -1, -1, + -1, 64, -1, -1, -1, 301, 3346, 197, -1, 3349, + -1, -1, -1, 3353, -1, -1, -1, 313, -1, 195, + -1, -1, 1243, -1, 200, -1, -1, 392, -1, -1, + -1, -1, -1, -1, 3374, -1, 99, -1, -1, 4812, + -1, -1, -1, -1, 1541, -1, -1, 223, 224, -1, + 240, -1, -1, -1, -1, -1, 352, -1, -1, 355, + 356, -1, 3402, -1, -1, 3405, 3406, -1, 244, -1, + 3410, 3411, 3412, -1, -1, -1, -1, -1, 3418, 4852, + -1, -1, -1, 3423, -1, 1582, -1, -1, -1, -1, + -1, 387, 282, -1, -1, -1, -1, 160, 3438, -1, + -1, 4874, -1, -1, 1325, -1, -1, -1, -1, 285, + -1, -1, 3452, 1334, -1, -1, 3456, -1, 1615, 3459, + 3460, -1, 3462, 299, 314, -1, 302, -1, 1349, 494, + -1, -1, -1, -1, 197, -1, -1, -1, 503, 504, + 505, 506, 507, 508, 509, 510, 511, -1, -1, 1370, + -1, 516, 1373, 1374, -1, -1, -1, 1378, 1379, -1, + 456, -1, -1, 3503, -1, -1, 356, -1, 358, -1, + -1, 361, -1, -1, 4947, -1, -1, 240, -1, -1, + 370, -1, -1, -1, -1, -1, -1, -1, -1, 379, + -1, -1, -1, 3533, 3534, -1, -1, 387, 1695, 1696, + 1697, -1, -1, -1, -1, -1, -1, -1, -1, 399, + -1, -1, -1, -1, -1, 278, 392, -1, 408, 282, + -1, -1, 412, -1, -1, -1, -1, 25, -1, -1, + -1, -1, 30, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 27, -1, -1, -1, -1, -1, 33, + 313, 314, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 48, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 467, -1, -1, + -1, -1, -1, 81, 82, -1, -1, -1, -1, 352, + -1, -1, -1, 356, 78, 5068, -1, -1, 361, 97, + -1, 3641, -1, -1, -1, -1, -1, 370, -1, -1, + 1807, 3651, -1, -1, -1, -1, 379, 115, 494, -1, + 2576, 1818, -1, -1, 387, -1, -1, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 399, 1834, -1, -1, + 516, 139, -1, -1, -1, 408, -1, -1, -1, 412, + 134, -1, 150, -1, -1, -1, -1, 141, -1, -1, + 144, 159, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 172, -1, -1, -1, -1, -1, + 178, -1, -1, -1, -1, -1, -1, 171, -1, -1, + -1, 1888, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 467, -1, 1903, 205, -1, 1906, + 1907, -1, 1633, -1, -1, -1, 3756, -1, -1, -1, + 1641, -1, 3762, 207, -1, -1, -1, -1, -1, -1, + -1, 5204, -1, 3773, -1, -1, -1, -1, 236, -1, + 1937, 1938, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 258, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3810, 3811, 3812, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 3827, -1, -1, + -1, -1, -1, -1, 278, -1, -1, -1, 282, -1, + -1, 3841, -1, -1, -1, -1, -1, -1, 292, -1, + -1, -1, -1, -1, -1, -1, -1, 301, -1, 3859, + 3860, 3861, -1, -1, -1, 3865, -1, -1, -1, 313, + -1, -1, -1, -1, -1, 333, 334, 3877, 2035, 337, + -1, -1, -1, -1, -1, -1, -1, 2044, -1, -1, + 2047, -1, -1, -1, -1, 10, -1, -1, 13, -1, + -1, -1, 17, 18, 19, -1, 364, -1, 352, 367, + -1, 355, 356, -1, -1, -1, 374, 2074, -1, -1, + -1, -1, 37, 381, -1, -1, 384, -1, -1, -1, + -1, -1, 47, 3933, -1, -1, -1, -1, -1, 54, + -1, -1, -1, 387, -1, 403, -1, 3947, 3948, -1, + -1, -1, 410, -1, -1, -1, -1, -1, 3958, 417, + -1, -1, 420, -1, -1, 80, 424, -1, -1, -1, + -1, 3971, -1, -1, -1, 1856, -1, -1, -1, 1860, + -1, 439, -1, -1, -1, -1, -1, -1, -1, -1, + 3990, -1, -1, -1, -1, -1, -1, -1, 3998, -1, + 4000, -1, -1, -1, -1, -1, -1, 465, -1, -1, + 4010, -1, 456, -1, 4014, 4015, -1, -1, -1, -1, + 4020, -1, -1, -1, -1, -1, -1, -1, 4028, -1, + 4030, -1, -1, 4033, -1, -1, -1, -1, 4038, 4039, + 4040, 4041, -1, -1, 4044, 4045, 4046, 4047, 4048, 4049, + 4050, 4051, 4052, 4053, -1, -1, -1, 4057, 4058, 4059, + -1, -1, -1, -1, -1, -1, -1, 4067, -1, -1, + -1, -1, 4072, -1, -1, -1, 4076, -1, -1, -1, + 195, -1, -1, -1, 4084, 200, -1, 4087, -1, 4089, + -1, -1, 5525, -1, -1, -1, -1, 5530, 5531, -1, + -1, -1, -1, -1, -1, -1, -1, 4107, 223, 224, + 4110, 4111, -1, -1, -1, 4115, 4116, -1, -1, -1, + 4120, -1, 4122, 4123, -1, -1, -1, -1, -1, 244, + -1, 4131, 4132, 4133, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 2030, + -1, 4151, 4152, 4153, -1, 4155, 4156, -1, -1, 4159, + -1, -1, -1, 4163, -1, -1, -1, 4167, -1, -1, + 285, 3087, -1, 4173, -1, -1, 3092, -1, 3094, -1, + -1, -1, -1, -1, 299, -1, -1, 302, 3104, -1, + -1, 3107, -1, 3109, 3110, -1, -1, 3113, -1, 4199, + -1, 3117, -1, 3119, -1, -1, 3122, -1, -1, -1, + 5643, -1, -1, -1, 4214, -1, 4216, -1, 27, -1, + -1, -1, -1, -1, 33, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 4234, 4235, 4236, -1, -1, 4239, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 64, -1, -1, -1, -1, -1, -1, 5692, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 78, + 3186, -1, -1, -1, 4274, 4275, -1, 392, -1, -1, + -1, -1, -1, -1, -1, -1, 0, 99, -1, -1, + -1, -1, -1, 4293, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 22, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 33, + -1, 35, 36, -1, -1, 134, -1, -1, -1, -1, + -1, -1, 141, -1, -1, 144, -1, -1, -1, 53, + -1, -1, -1, -1, -1, -1, 4346, -1, 160, 63, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 75, 171, 77, 78, -1, -1, -1, -1, -1, + 84, -1, 86, -1, -1, -1, -1, -1, -1, 494, + -1, 2538, -1, -1, 98, 197, 100, -1, 503, 504, + 505, 506, 507, 508, 509, 510, 511, -1, 207, -1, + -1, 516, 4402, 117, -1, -1, 120, -1, -1, -1, + -1, -1, -1, -1, -1, 198, 199, -1, -1, 202, + -1, 135, -1, 137, -1, -1, -1, 141, 240, -1, + -1, -1, -1, 147, -1, 4435, -1, -1, -1, 222, + -1, 155, -1, 157, -1, -1, 229, -1, -1, 4449, + 164, 4451, -1, -1, -1, -1, -1, -1, 4458, -1, + -1, -1, -1, -1, 4464, -1, 278, -1, 182, 278, + 282, -1, -1, 282, -1, 4475, -1, -1, -1, -1, + -1, -1, -1, 292, -1, 199, -1, -1, -1, -1, + 4490, -1, 301, -1, -1, 4495, 4496, -1, -1, -1, + -1, 313, 314, 4503, 313, -1, -1, -1, -1, -1, + -1, -1, 4512, -1, -1, -1, -1, -1, -1, -1, + -1, 2678, 4522, -1, -1, 2682, 2683, -1, -1, -1, + -1, -1, 246, 247, 4534, 4535, -1, -1, 252, -1, + 352, -1, -1, 352, 356, 4545, 355, 356, -1, 361, + -1, -1, 266, -1, -1, -1, 4556, 4557, 370, -1, + -1, -1, -1, -1, -1, -1, -1, 379, -1, -1, + 284, -1, -1, -1, 4574, 387, -1, -1, 387, -1, + -1, -1, -1, 2740, -1, -1, -1, 399, -1, 2746, + -1, -1, -1, -1, -1, -1, 408, 3513, -1, -1, + 412, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 328, 4615, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 342, 4629, + 2787, -1, -1, -1, 348, 349, -1, 351, -1, -1, + -1, -1, 356, 4643, -1, -1, -1, 456, 362, -1, + -1, 365, -1, -1, -1, 467, -1, -1, 372, -1, + -1, -1, -1, -1, -1, 379, 380, -1, 3584, -1, + 3586, 4671, -1, 387, 4674, -1, 2557, 391, -1, -1, + -1, -1, 4682, 4683, -1, -1, -1, 401, -1, -1, + 4690, 4691, -1, -1, -1, 4695, -1, -1, -1, -1, + -1, -1, 4702, 417, -1, 4705, 4706, -1, -1, -1, + -1, -1, 4712, -1, -1, -1, 4716, 4717, 4718, 4719, + -1, -1, -1, 437, -1, -1, -1, -1, -1, -1, + -1, -1, 4732, -1, 448, 4735, -1, -1, -1, 4739, + 454, -1, -1, -1, 4744, 459, -1, 4747, 4748, -1, + 4750, -1, 4752, -1, -1, 4755, -1, 4757, 472, -1, + -1, -1, -1, -1, -1, -1, 4766, -1, -1, -1, + 4770, -1, -1, -1, 4774, -1, 4776, -1, 10, -1, + -1, 13, 496, -1, -1, 17, 18, 19, -1, -1, + -1, 4791, -1, -1, 4794, -1, -1, -1, -1, -1, + -1, 515, -1, -1, 518, 37, -1, 2964, -1, -1, + -1, -1, 3728, -1, 27, 47, -1, -1, 3734, -1, + 33, -1, 54, -1, -1, 2706, -1, -1, 4828, -1, + -1, -1, 4832, -1, -1, -1, -1, -1, -1, 2996, + -1, -1, -1, -1, -1, -1, -1, -1, 80, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 78, -1, -1, 651, -1, + 653, -1, -1, 656, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2765, -1, -1, 670, -1, -1, + -1, -1, -1, 676, -1, -1, -1, 4897, -1, -1, + -1, -1, -1, -1, 4904, -1, -1, -1, -1, -1, + -1, -1, 3069, -1, -1, -1, 3073, -1, -1, -1, + -1, 134, -1, -1, -1, -1, -1, 4927, 141, -1, + -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 10, 4942, -1, 13, -1, -1, -1, 17, 18, + 19, -1, -1, -1, -1, -1, -1, -1, 171, -1, + -1, -1, -1, 195, 2845, -1, -1, -1, 200, -1, + -1, -1, -1, 4973, -1, -1, -1, -1, 47, -1, + -1, -1, -1, -1, -1, 54, -1, -1, 2869, 4989, + -1, 223, 224, -1, 207, -1, 4996, -1, -1, -1, + -1, -1, 3918, -1, 3920, 5005, 3922, -1, -1, -1, + -1, 80, 244, -1, -1, -1, -1, -1, -1, 3176, + 5020, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 5033, 3191, 5035, -1, -1, -1, 3196, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 285, -1, 2936, -1, -1, -1, -1, + -1, 5061, -1, -1, -1, 278, -1, 299, 3225, 282, + 302, -1, 5072, -1, -1, -1, -1, -1, -1, 292, + -1, -1, -1, -1, -1, -1, -1, -1, 301, -1, + -1, -1, 2973, -1, 2975, -1, 2977, 2978, -1, -1, + 313, 2982, 2983, 2984, -1, 2986, 2987, 2988, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 195, -1, -1, -1, + 5130, 200, -1, 5133, -1, -1, 5136, 5137, 5138, 352, + -1, -1, 355, 356, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 223, 224, -1, -1, -1, 3040, + 392, -1, -1, 5163, 5164, -1, -1, 5167, -1, -1, + -1, -1, -1, -1, 387, 244, -1, -1, 961, 962, + -1, -1, -1, -1, 3065, -1, -1, -1, 5188, -1, + -1, -1, -1, -1, 5194, -1, -1, -1, 5198, -1, + -1, -1, 5202, -1, -1, 5205, -1, 5207, -1, -1, + -1, -1, -1, -1, -1, -1, 285, -1, 5218, -1, + -1, 5221, -1, -1, -1, -1, -1, -1, -1, -1, + 299, -1, 5232, 5233, 5234, -1, 5236, -1, -1, -1, + -1, -1, -1, 456, -1, -1, -1, -1, -1, 1032, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 494, -1, 1047, -1, -1, -1, -1, -1, + -1, 503, 504, 505, 506, 507, 508, 509, 510, 511, + -1, -1, 514, -1, 5284, 5285, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1078, 1079, -1, -1, -1, + -1, -1, -1, -1, 27, -1, -1, -1, -1, -1, + 33, -1, -1, -1, -1, 3472, -1, -1, 3475, -1, + 3477, 1104, -1, 392, -1, 3482, -1, -1, -1, 5329, + -1, 10, -1, -1, 13, -1, -1, -1, 17, 18, + 19, 5341, -1, -1, -1, -1, 5346, -1, -1, -1, + -1, 5351, -1, -1, -1, 78, -1, -1, 37, -1, + 5360, 1144, 1145, -1, -1, -1, -1, -1, 47, -1, + 5370, -1, -1, 3530, 5374, 54, -1, 5377, -1, -1, + -1, 3538, -1, -1, -1, -1, -1, -1, 5388, 5389, + 5390, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 80, -1, -1, -1, -1, 3563, -1, -1, -1, + -1, 134, -1, -1, -1, -1, -1, -1, 141, -1, + -1, 144, -1, -1, -1, 494, 5426, -1, -1, -1, + 5430, -1, 5432, -1, 503, 504, 505, 506, 507, 508, + 509, 510, 511, -1, -1, -1, 5446, -1, 171, -1, + -1, -1, -1, 5453, -1, -1, 5456, -1, -1, -1, + 5460, -1, -1, -1, -1, -1, -1, 5467, -1, -1, + -1, -1, -1, -1, 5474, -1, 3633, -1, 3635, -1, + -1, -1, 10, -1, 207, 13, 3367, -1, -1, 17, + 18, 19, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5509, + -1, -1, -1, -1, -1, -1, 195, -1, -1, 47, + -1, 200, -1, -1, -1, -1, 54, -1, -1, -1, + -1, -1, -1, -1, -1, 5535, -1, -1, -1, -1, + -1, 5541, 5542, -1, 223, 224, 5546, 5547, 5548, 5549, + -1, -1, 80, -1, -1, 278, -1, -1, -1, 282, + -1, -1, -1, -1, -1, 244, -1, -1, -1, 292, + -1, -1, 3729, -1, -1, -1, -1, 5577, 301, -1, + -1, 8, -1, -1, -1, 5585, 27, 14, 15, -1, + 313, -1, 33, 20, -1, 22, -1, -1, -1, 3756, + -1, 28, -1, 30, -1, 3762, 285, -1, -1, -1, + 5610, -1, -1, 5613, 3771, -1, -1, -1, -1, -1, + 299, -1, 49, 50, -1, -1, -1, -1, -1, 352, + -1, -1, 355, 356, -1, -1, -1, 78, 5638, -1, + -1, -1, 3799, -1, -1, -1, 3527, -1, -1, -1, + -1, -1, -1, -1, 4570, -1, -1, 4573, -1, -1, + -1, -1, -1, -1, 387, -1, 5666, 195, -1, -1, + -1, -1, 200, -1, -1, 5675, 5676, 5677, -1, -1, + -1, 5681, -1, -1, -1, 5685, 4602, -1, 5688, -1, + -1, -1, -1, 134, -1, 223, 224, 5697, -1, 5699, + 141, 5701, 5702, 144, -1, -1, -1, -1, 5708, -1, + 3867, -1, -1, 392, -1, -1, 244, -1, 5718, -1, + 5720, -1, -1, -1, 3605, -1, -1, -1, -1, 5729, + 171, -1, 3889, 456, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1534, -1, -1, 3911, -1, -1, 285, -1, -1, + -1, -1, -1, -1, 5764, 5765, 207, -1, -1, -1, + -1, 299, -1, 200, -1, -1, 1559, 204, -1, -1, + -1, -1, 3663, -1, -1, 212, -1, -1, 215, -1, + -1, 218, 219, -1, 221, 5795, 223, -1, -1, 226, + -1, 228, -1, -1, -1, -1, -1, -1, -1, 5809, + -1, -1, -1, -1, -1, 494, -1, -1, -1, -1, + -1, -1, -1, -1, 503, 504, 505, 506, 507, 508, + 509, 510, 511, -1, -1, -1, 3993, 278, -1, -1, + -1, 282, -1, -1, -1, -1, 5846, -1, -1, -1, + 3731, 292, -1, 1636, -1, -1, -1, -1, -1, 5859, + 301, -1, -1, 5863, 392, -1, -1, -1, -1, 5869, + -1, -1, 313, -1, -1, -1, -1, -1, 5878, 5879, + 4037, -1, -1, 1666, 1667, 1668, 1669, -1, -1, -1, + -1, -1, -1, -1, 4810, 5895, 3777, -1, -1, -1, + -1, -1, -1, -1, -1, 4062, -1, -1, 3789, 3790, + 5910, 352, -1, -1, 355, 356, -1, 5917, 3799, -1, + -1, -1, -1, 3804, -1, 3806, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 4853, 4854, -1, + -1, -1, 5942, -1, -1, -1, 387, -1, -1, 5949, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5959, + -1, -1, -1, -1, -1, -1, 494, 5967, 5968, 5969, + -1, 3852, -1, 5973, -1, 503, 504, 505, 506, 507, + 508, 509, 510, 511, -1, 5985, 5986, 5987, -1, -1, + -1, -1, 5992, 5993, -1, -1, -1, -1, 5998, -1, + -1, -1, -1, -1, -1, -1, 3887, 3888, -1, -1, + -1, -1, -1, -1, -1, 456, -1, -1, -1, -1, + 6020, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1813, 1814, 4948, 4949, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1829, -1, -1, 6049, + 6050, 6051, -1, -1, -1, 6055, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 4222, -1, -1, -1, -1, + -1, -1, -1, 6073, 6074, -1, -1, -1, -1, -1, + 1863, 1864, 1865, 1866, -1, -1, -1, -1, 6088, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 6102, 10, -1, -1, 13, -1, -1, -1, + 17, 18, 19, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 37, -1, -1, -1, -1, 6135, 6136, 6137, 6138, 6139, + 47, -1, 6142, -1, -1, -1, -1, 54, -1, -1, + -1, -1, -1, -1, 6154, 4312, -1, 6157, -1, -1, + -1, 1944, 5078, -1, -1, 5081, 5082, 1950, -1, -1, + -1, -1, -1, 80, -1, -1, -1, 6177, -1, -1, + -1, 4338, -1, -1, -1, 5101, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 6196, 6197, -1, -1, + -1, 6201, 4083, -1, -1, 6205, 10, -1, -1, 13, + -1, -1, -1, 17, 18, 19, 643, 6217, 6218, -1, + -1, 6221, -1, -1, -1, -1, -1, 654, -1, -1, + -1, 658, -1, 37, -1, -1, -1, -1, 665, 666, + -1, -1, 669, 47, 671, 672, -1, -1, -1, -1, + 54, -1, -1, -1, -1, -1, -1, -1, -1, 686, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 80, 704, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 195, -1, + -1, 206, 207, 200, -1, -1, -1, -1, 725, 214, + 727, 216, 217, -1, -1, -1, -1, -1, -1, -1, + 737, -1, -1, -1, -1, 230, 223, 224, -1, -1, + -1, -1, -1, -1, 4481, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 244, -1, -1, + -1, -1, -1, 770, -1, -1, -1, -1, -1, -1, + 2133, -1, -1, -1, -1, -1, 10, -1, -1, 13, + -1, -1, -1, 17, 18, 19, -1, -1, -1, -1, + -1, 4528, -1, -1, -1, -1, 4533, -1, 285, -1, + -1, -1, -1, 37, -1, -1, -1, -1, -1, -1, + -1, 195, 299, 47, -1, 302, 200, -1, -1, -1, + 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 223, + 224, -1, -1, -1, 851, -1, 80, -1, -1, -1, + -1, 4312, -1, -1, -1, -1, -1, -1, -1, -1, + 244, -1, -1, -1, -1, -1, -1, 10, -1, -1, + 13, -1, -1, -1, 17, 18, 19, 4338, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 4353, -1, 37, -1, 4357, -1, 4359, -1, + -1, 285, -1, -1, 47, 392, -1, -1, -1, -1, + -1, 54, -1, -1, -1, 299, -1, -1, 302, -1, + -1, -1, -1, -1, -1, -1, -1, 934, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 80, -1, -1, + -1, -1, -1, -1, 4405, -1, -1, -1, 4685, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 4421, 195, -1, -1, -1, 4426, 200, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 223, + 224, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1008, -1, 5499, -1, -1, -1, 494, 392, -1, + 244, -1, -1, -1, -1, -1, 503, 504, 505, 506, + 507, 508, 509, 510, 511, -1, 1033, -1, -1, 516, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1048, -1, 1050, -1, -1, -1, -1, -1, -1, + -1, 285, 195, 1060, -1, -1, 5552, 200, -1, -1, + 1067, -1, -1, -1, 4525, 299, -1, 4528, 302, -1, + -1, -1, -1, -1, -1, 4812, -1, -1, -1, -1, + 223, 224, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 244, -1, 1110, -1, 1112, -1, -1, -1, -1, + 494, -1, -1, -1, -1, 4852, -1, -1, -1, 503, + 504, 505, 506, 507, 508, 509, 510, 511, -1, -1, + -1, -1, 516, -1, -1, -1, -1, 4874, -1, -1, + -1, -1, 285, 4604, 4605, 4606, 4607, 642, 4609, 4610, + 4611, 4612, 4613, -1, -1, -1, 299, -1, 392, 302, + -1, -1, -1, -1, -1, -1, 661, -1, -1, 5665, + -1, -1, 667, -1, -1, -1, -1, -1, -1, 1186, + -1, 1188, -1, 1190, 679, 1192, -1, 1194, 1195, 1196, + -1, -1, -1, -1, 1201, -1, -1, -1, -1, -1, + 695, -1, -1, -1, -1, -1, 1213, -1, -1, -1, + 4947, -1, -1, -1, 709, 710, -1, -1, -1, 2582, + -1, 716, -1, 718, 719, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 732, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 742, -1, 392, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 494, -1, -1, 4724, -1, 4726, -1, -1, -1, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 10, -1, + -1, 13, 516, -1, -1, 17, 18, 19, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 795, -1, -1, -1, -1, 37, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 47, -1, -1, -1, -1, + -1, -1, 54, -1, -1, -1, -1, -1, 823, 5066, + -1, 5068, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 80, 10, + -1, 494, 13, 848, -1, -1, 17, 18, 19, -1, + 503, 504, 505, 506, 507, 508, 509, 510, 511, -1, + -1, -1, -1, 516, -1, -1, 37, -1, -1, -1, + -1, -1, -1, -1, 2747, -1, 47, -1, 1395, -1, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 908, -1, -1, -1, -1, 10, 80, + -1, 13, -1, -1, -1, 17, 18, 19, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 37, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 47, -1, -1, -1, -1, + -1, -1, 54, 195, -1, -1, -1, 5204, 200, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 4945, 4946, -1, -1, 80, -1, + -1, 223, 224, -1, -1, -1, -1, 4958, -1, 4960, + 4961, 4962, -1, -1, -1, -1, -1, -1, 1515, -1, + -1, -1, 244, 6009, -1, -1, -1, -1, -1, -1, + -1, -1, 2885, 1018, -1, 2888, -1, -1, -1, -1, + 1025, -1, -1, -1, 195, -1, 5273, -1, -1, 200, + -1, 1036, -1, -1, -1, 1040, -1, 1042, -1, -1, + -1, -1, -1, 285, -1, -1, -1, -1, -1, -1, + -1, -1, 223, 224, -1, 5026, -1, 299, -1, -1, + 302, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1587, -1, -1, 244, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 195, 5065, -1, -1, -1, 200, -1, + -1, -1, -1, 2976, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 285, -1, 2989, -1, -1, -1, + -1, 223, 224, -1, 2997, -1, -1, -1, 299, -1, + -1, 302, -1, -1, -1, -1, -1, 5108, -1, -1, + -1, -1, 244, -1, 1149, -1, 5393, -1, -1, -1, + 392, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 3036, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 285, 3057, -1, 10, -1, -1, 13, + -1, -1, -1, 17, 18, 19, -1, 299, -1, -1, + 302, -1, -1, -1, -1, 1210, -1, -1, -1, -1, + -1, -1, -1, 37, -1, -1, 1221, -1, -1, -1, + -1, 392, -1, 47, -1, -1, -1, 3100, -1, 3102, + 54, -1, -1, 1238, -1, -1, -1, -1, 1243, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 494, -1, -1, -1, 80, -1, -1, -1, + -1, 503, 504, 505, 506, 507, 508, 509, 510, 511, + -1, -1, 10, -1, 516, 13, -1, -1, 5525, 17, + 18, 19, -1, 5530, 5531, -1, 1803, -1, -1, -1, + 392, -1, -1, -1, -1, -1, -1, -1, -1, 37, + -1, -1, 5273, -1, -1, -1, -1, -1, -1, 47, + -1, -1, -1, -1, -1, -1, 54, 3190, -1, -1, + -1, 1838, -1, 494, 3197, -1, -1, -1, -1, -1, + -1, -1, 503, 504, 505, 506, 507, 508, 509, 510, + 511, -1, 80, -1, -1, 516, -1, -1, 5319, -1, + -1, -1, -1, -1, -1, -1, -1, 5328, -1, -1, + -1, -1, -1, -1, -1, 1370, -1, 1884, -1, -1, + -1, 195, -1, 1378, 1379, -1, 200, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1904, -1, -1, + -1, -1, 494, -1, -1, 5642, 5643, -1, -1, 223, + 224, 503, 504, 505, 506, 507, 508, 509, 510, 511, + -1, -1, -1, 1930, 516, 1932, -1, -1, -1, -1, + 244, -1, -1, -1, -1, -1, 1431, -1, -1, -1, + 1947, -1, 1949, -1, -1, -1, -1, -1, 1955, -1, + 1957, -1, 1959, -1, 1961, 5692, 1963, -1, -1, -1, + 1967, -1, -1, -1, -1, -1, -1, 195, -1, -1, + -1, 285, 200, 10, -1, -1, 13, -1, -1, -1, + 17, 18, 19, -1, -1, 299, -1, -1, 302, -1, + -1, -1, -1, -1, -1, 223, 224, 2004, -1, -1, + 37, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 47, -1, -1, -1, -1, -1, 244, 54, 10, -1, + -1, 13, -1, -1, -1, 17, 18, 19, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 80, -1, 37, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 47, -1, 285, -1, -1, + -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, + -1, 299, -1, -1, 302, -1, -1, -1, 392, -1, + -1, -1, -1, -1, 51, -1, -1, -1, 80, -1, + -1, -1, -1, -1, -1, -1, 5557, -1, -1, -1, + 5561, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 10, -1, -1, 13, -1, -1, -1, 17, + 18, 19, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 37, + -1, -1, -1, -1, 51, -1, -1, -1, -1, 47, + -1, -1, -1, -1, -1, -1, 54, -1, 195, -1, + -1, -1, -1, 200, 392, -1, -1, -1, -1, -1, + 3533, 3534, -1, -1, -1, -1, -1, -1, -1, -1, + 494, -1, 80, -1, -1, 1680, 223, 224, -1, 503, + 504, 505, 506, 507, 508, 509, 510, 511, -1, -1, + -1, -1, 516, 195, -1, -1, -1, 244, 200, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 223, 224, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 285, -1, + -1, -1, 244, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 299, -1, -1, 302, 494, -1, -1, -1, + -1, -1, -1, -1, -1, 503, 504, 505, 506, 507, + 508, 509, 510, 511, -1, -1, -1, -1, 516, -1, + 51, -1, -1, 285, -1, 5756, -1, 195, -1, 5760, + 1795, 5762, 200, -1, -1, 5766, 5767, 299, -1, -1, + 302, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 223, 224, -1, -1, -1, + -1, -1, -1, -1, -1, 1830, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 244, -1, -1, -1, + -1, -1, -1, -1, -1, 392, -1, -1, 1853, -1, + -1, -1, -1, -1, -1, -1, 1861, -1, -1, -1, + -1, -1, -1, -1, 1869, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 285, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 392, 299, -1, -1, 302, -1, -1, -1, -1, -1, + 3773, -1, -1, -1, -1, 1910, 1911, -1, 1913, 1914, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1925, -1, 1927, 1928, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1940, 1941, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 494, -1, 6196, + -1, -1, -1, -1, -1, -1, 503, 504, 505, 506, + 507, 508, 509, 510, 511, -1, -1, -1, -1, 516, + -1, -1, -1, 1978, -1, -1, -1, 1982, 1983, -1, + -1, -1, -1, -1, 392, -1, -1, -1, -1, -1, + -1, -1, 494, -1, -1, -1, -1, -1, -1, -1, + -1, 503, 504, 505, 506, 507, 508, 509, 510, 511, + -1, -1, -1, -1, 516, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, + 13, -1, -1, -1, 17, 18, 19, -1, -1, -1, + -1, -1, -1, -1, -1, 6026, -1, -1, -1, -1, + 3933, -1, -1, -1, 37, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 47, -1, -1, -1, -1, -1, + -1, 54, -1, -1, -1, -1, 494, -1, -1, -1, + 2095, -1, -1, -1, -1, 503, 504, 505, 506, 507, + 508, 509, 510, 511, -1, -1, -1, 80, 516, -1, + -1, -1, -1, -1, -1, 25, -1, -1, -1, -1, + 30, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 2672, 2673, -1, 68, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 81, -1, -1, 2691, 2692, -1, 2694, 2695, -1, + -1, -1, 2699, 2700, -1, -1, -1, 97, -1, -1, + -1, -1, -1, 6164, -1, -1, 6167, 2714, -1, -1, + -1, -1, -1, -1, 2721, 115, -1, -1, 2725, 2726, + -1, -1, 2729, 2730, -1, -1, -1, -1, -1, 2736, + -1, -1, 195, -1, -1, -1, -1, 200, 705, 139, + -1, 2748, -1, -1, -1, -1, -1, -1, 6209, -1, + 150, -1, -1, 2760, -1, -1, -1, -1, 2765, 159, + 223, 224, -1, -1, 731, -1, 6227, -1, -1, 6230, + -1, -1, 172, 2780, -1, -1, -1, -1, 178, -1, + -1, 244, 2789, -1, -1, 2792, -1, 2794, 2795, 2796, + -1, -1, -1, -1, 2801, 2802, -1, -1, 705, -1, + -1, -1, -1, -1, 2811, 205, -1, -1, -1, -1, + 2817, -1, -1, -1, 2821, -1, -1, -1, -1, -1, + -1, -1, 285, -1, 731, -1, 2833, 2834, -1, -1, + -1, 2838, -1, -1, -1, -1, 299, 2844, 2845, 302, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 2858, -1, -1, 2861, -1, -1, -1, 258, -1, + -1, 2868, 2869, -1, -1, -1, -1, 2874, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 2886, + -1, -1, 2889, -1, -1, -1, -1, 2894, -1, -1, + -1, -1, -1, 2900, 2901, 10, -1, -1, 13, 299, + -1, 2908, 17, 18, 19, 2912, 873, -1, -1, 2916, + 2917, 2918, 2919, -1, 2921, -1, -1, -1, -1, -1, + -1, -1, 37, -1, -1, -1, -1, 2934, 2935, 392, + 2937, -1, 47, 333, 334, -1, -1, 337, -1, 54, + -1, 2948, 2949, 2950, 705, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 364, 80, 873, 367, -1, -1, + 731, -1, -1, -1, 374, -1, -1, -1, -1, -1, + -1, 381, -1, -1, 384, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 3005, -1, + -1, -1, -1, 403, -1, -1, 3013, -1, -1, -1, + 410, -1, -1, -1, -1, -1, -1, 417, -1, -1, + 420, -1, -1, -1, 424, 3032, -1, 10, -1, -1, + 13, 494, 432, -1, 17, 18, 19, -1, -1, 439, + 503, 504, 505, 506, 507, 508, 509, 510, 511, -1, + -1, -1, -1, 516, 37, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 47, 465, -1, -1, 1035, -1, + -1, 54, 4435, -1, -1, 3082, -1, -1, -1, 1046, + 195, -1, -1, -1, -1, 200, 4449, -1, -1, -1, + -1, -1, -1, -1, 3101, 1062, 3103, 80, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 223, 224, + -1, -1, 873, -1, -1, -1, -1, -1, -1, -1, + -1, 2616, -1, -1, -1, -1, -1, -1, 1035, 244, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1046, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1062, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 285, -1, -1, -1, -1, -1, 2671, -1, -1, -1, + -1, -1, -1, -1, 299, -1, -1, 302, -1, -1, + -1, 3198, -1, -1, 2689, -1, -1, -1, 2693, -1, + -1, -1, 2697, -1, -1, -1, -1, -1, -1, -1, + -1, 2706, 195, -1, -1, -1, -1, 200, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 10, -1, 2724, + 13, -1, -1, -1, 17, 18, 19, -1, -1, -1, + 223, 224, -1, -1, -1, -1, 2741, -1, 2743, 2744, + -1, -1, 1219, -1, 37, -1, -1, -1, -1, -1, + -1, 244, -1, 2758, 47, -1, -1, -1, -1, -1, + -1, 54, -1, -1, 1035, -1, -1, 392, -1, -1, + -1, -1, -1, 2778, 2779, 1046, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 80, -1, -1, + -1, 1062, 285, -1, 51, -1, -1, -1, -1, -1, + -1, -1, 1219, -1, 2809, 2810, 299, -1, 2813, 302, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2837, -1, 2839, -1, -1, -1, 2843, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2857, -1, -1, -1, -1, -1, -1, 2864, + -1, -1, 2867, -1, -1, -1, -1, 207, 2873, 494, + -1, -1, -1, -1, -1, -1, 216, -1, 503, 504, + 505, 506, 507, 508, 509, 510, 511, -1, 2893, -1, + 230, 516, -1, -1, 2899, -1, 1373, -1, -1, 392, + -1, 2906, 195, -1, -1, -1, -1, 200, -1, -1, + -1, -1, -1, -1, -1, 2920, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 2933, -1, + 223, 224, -1, 2938, -1, -1, -1, -1, -1, 2944, + -1, -1, -1, -1, -1, -1, -1, -1, 1219, -1, + -1, 244, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 3505, -1, + -1, -1, 285, -1, -1, -1, -1, 1474, -1, 3004, + -1, 494, -1, -1, -1, -1, 299, -1, 3525, 302, + 503, 504, 505, 506, 507, 508, 509, 510, 511, -1, + -1, -1, -1, 516, -1, 3542, -1, -1, -1, 3546, + -1, -1, -1, -1, 3551, 3552, 3553, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 4927, -1, -1, 1474, -1, -1, + -1, -1, -1, -1, 1541, -1, -1, -1, -1, 4942, + 3587, 3588, 3589, 3590, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 392, + 3617, -1, -1, -1, -1, 1582, -1, -1, 3625, -1, + 3627, 3628, 3629, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1541, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1615, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 3159, -1, 3161, -1, -1, -1, + 5033, -1, -1, -1, -1, 1582, -1, -1, -1, -1, + -1, -1, -1, 3178, -1, -1, -1, -1, -1, -1, + 3185, -1, -1, -1, -1, -1, -1, 3192, -1, 3194, + 3195, -1, -1, -1, -1, -1, -1, -1, 1615, -1, + -1, 494, -1, 1474, -1, -1, -1, -1, -1, -1, + 503, 504, 505, 506, 507, 508, 509, 510, 511, -1, + -1, -1, -1, 516, -1, -1, 3743, -1, -1, -1, + -1, -1, -1, -1, -1, 3752, -1, -1, -1, -1, + -1, -1, 25, -1, -1, -1, -1, 30, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3778, 3779, -1, -1, -1, 3783, -1, -1, -1, + 1541, 3276, -1, -1, -1, -1, -1, 3282, -1, -1, + -1, -1, -1, -1, -1, 68, -1, -1, 3805, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 81, 82, + -1, -1, 642, -1, -1, -1, -1, -1, -1, -1, + 93, 1582, -1, -1, 97, -1, -1, -1, -1, -1, + -1, 661, -1, -1, -1, -1, -1, 667, -1, -1, + 1807, -1, 115, -1, -1, -1, -1, -1, -1, 679, + 3857, 1818, -1, -1, 1615, 3862, -1, -1, -1, -1, + -1, 3868, -1, -1, -1, 695, 139, 1834, -1, -1, + -1, 5234, 3367, 5236, -1, -1, -1, 150, -1, -1, + 710, -1, -1, -1, -1, -1, 159, -1, 718, -1, + -1, 3898, -1, -1, -1, -1, -1, -1, -1, 172, + 1807, -1, 732, -1, -1, 178, -1, -1, -1, -1, + -1, 1818, 742, -1, -1, -1, -1, -1, -1, -1, + 3927, 1888, 3929, -1, -1, -1, -1, 1834, -1, -1, + -1, -1, 205, -1, -1, -1, 1903, -1, -1, 1906, + 1907, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 705, -1, + -1, -1, -1, 236, -1, 795, -1, -1, -1, -1, + 1937, 1938, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1888, -1, -1, 731, 258, -1, -1, -1, -1, + -1, -1, -1, 823, -1, -1, 1903, -1, -1, 1906, + 1907, -1, 3497, 3498, -1, -1, -1, -1, -1, -1, + -1, -1, 10, -1, -1, 13, -1, -1, 848, 17, + 18, 19, -1, -1, -1, 5388, 299, -1, -1, 3524, + 1937, 1938, 3527, -1, -1, -1, -1, -1, -1, 37, + -1, -1, -1, 41, -1, -1, 1807, -1, -1, 47, + 323, -1, -1, -1, -1, -1, 54, 1818, -1, -1, + 333, 334, -1, -1, 337, -1, -1, -1, 51, -1, + -1, -1, -1, 1834, -1, -1, -1, -1, 908, -1, + -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, + -1, 364, -1, -1, 367, -1, -1, -1, 371, -1, + -1, 374, -1, -1, 3599, 3600, 3601, 2074, 381, -1, + -1, 384, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 873, 1888, -1, 3624, + 403, -1, -1, 131, -1, -1, -1, 410, -1, -1, + -1, -1, 1903, -1, 417, 1906, 1907, 420, 3643, -1, + -1, 424, -1, -1, -1, -1, -1, -1, -1, 432, + -1, 434, -1, -1, -1, -1, 439, 2074, -1, -1, + 3665, -1, -1, -1, -1, -1, 1937, 1938, -1, -1, + -1, -1, -1, -1, 5547, -1, 5549, -1, 1018, -1, + -1, -1, 465, -1, -1, 1025, -1, 195, -1, -1, + -1, -1, 200, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 223, 224, -1, -1, -1, + -1, 4238, -1, -1, 4241, -1, 4243, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 244, -1, -1, 4256, + -1, -1, -1, -1, -1, -1, 3751, -1, -1, -1, + -1, 4268, -1, -1, -1, 4272, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 4291, -1, -1, 285, 1035, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1046, + -1, 299, 4309, 3798, 302, -1, -1, -1, 4315, 3804, + -1, 3806, -1, 2074, -1, 1062, -1, -1, -1, 1149, + -1, 51, -1, -1, 3819, -1, 3821, -1, -1, -1, + -1, -1, -1, 4340, -1, -1, -1, 4344, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 4360, 4361, 4362, 4363, -1, -1, -1, + -1, -1, -1, 4370, 4371, 4372, 4373, -1, -1, -1, + -1, -1, 4379, 4380, -1, -1, -1, -1, 4385, 4386, + 1210, 4388, 4389, 4390, 4391, 4392, 4393, 4394, -1, -1, + -1, 1221, -1, 3888, 392, -1, -1, 4404, -1, -1, + -1, 4408, 4409, 4410, 4411, -1, -1, 10, 1238, -1, + 13, -1, -1, 1243, 17, 18, 19, -1, -1, -1, + -1, -1, -1, -1, -1, 4432, -1, -1, -1, -1, + -1, -1, 5795, -1, 37, 3930, -1, -1, -1, -1, + -1, -1, -1, 4450, 47, -1, -1, -1, -1, -1, + -1, 54, -1, -1, 3949, 453, -1, -1, 3953, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1219, -1, -1, -1, -1, 80, -1, 3974, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 494, -1, -1, -1, + -1, -1, -1, -1, -1, 503, 504, 505, 506, 507, + 508, 509, 510, 511, -1, -1, -1, -1, -1, 4526, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1370, -1, -1, -1, -1, -1, -1, 5910, 1378, 1379, + -1, -1, 4559, -1, -1, -1, -1, -1, -1, 4566, + -1, 4568, -1, -1, -1, -1, -1, 170, -1, -1, + -1, -1, -1, 176, -1, -1, -1, -1, -1, 4074, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 4596, + -1, -1, 195, -1, -1, -1, -1, 200, -1, -1, + -1, 1431, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 223, 224, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, + -1, 244, 13, -1, -1, -1, 17, 18, 19, -1, + -1, -1, -1, -1, -1, -1, -1, 6020, -1, -1, + -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 47, -1, -1, -1, + -1, -1, 285, 54, -1, -1, -1, 6050, 6051, -1, + -1, -1, -1, -1, -1, -1, 299, -1, -1, 302, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 80, + -1, 2678, -1, -1, -1, 2682, 2683, -1, -1, -1, + -1, -1, 705, -1, -1, -1, -1, 1474, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 731, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 4255, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 2678, -1, 2740, -1, 2682, 2683, -1, -1, 2746, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 392, + -1, 6154, -1, -1, 1541, -1, 51, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 4813, 4814, 4815, -1, + -1, 4306, 4819, 4820, 4821, 4822, 4311, -1, 4313, 4826, + 2787, -1, -1, -1, 195, -1, -1, -1, -1, 200, + -1, -1, -1, 2740, -1, 1582, -1, -1, -1, 2746, + -1, -1, 4337, -1, -1, -1, -1, -1, -1, -1, + 1680, -1, 223, 224, -1, -1, -1, 4864, 4865, 4866, + 4867, 4868, -1, 4870, 4871, -1, -1, -1, 1615, -1, + -1, -1, -1, 244, -1, 4882, 4883, -1, -1, -1, + 2787, -1, -1, -1, -1, -1, -1, -1, -1, 4384, + 873, 494, 4387, -1, -1, -1, -1, -1, -1, -1, + 503, 504, 505, 506, 507, 508, 509, 510, 511, -1, + 4917, -1, -1, -1, 285, -1, -1, 2678, -1, -1, + -1, 2682, 2683, -1, -1, -1, -1, -1, 299, -1, + -1, 302, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 327, -1, -1, -1, + -1, -1, -1, -1, -1, 1795, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 705, -1, -1, -1, 2740, + -1, -1, 4477, 4478, -1, 2746, -1, -1, -1, -1, + -1, -1, -1, 4488, -1, -1, -1, -1, -1, -1, + 1830, 731, -1, -1, -1, -1, -1, -1, -1, -1, + 4505, -1, 5019, -1, -1, -1, -1, -1, -1, -1, + -1, 392, -1, 1853, -1, -1, 2787, -1, -1, 2996, + -1, 1861, -1, -1, -1, -1, -1, -1, 409, 1869, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1035, -1, -1, -1, -1, -1, -1, -1, + 1807, -1, -1, 1046, -1, -1, -1, -1, -1, -1, + -1, 1818, -1, -1, -1, -1, -1, 5084, -1, 1062, + -1, -1, -1, 1913, 1914, -1, -1, 1834, -1, 2996, + -1, 4586, -1, -1, 4589, -1, -1, 1927, -1, -1, + -1, -1, 3069, -1, -1, -1, 3073, -1, -1, 5116, + 1940, 1941, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 494, -1, -1, -1, -1, -1, -1, + -1, -1, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 1888, -1, 873, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1903, -1, -1, 1906, + 1907, -1, 3069, -1, -1, -1, 3073, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 10, -1, + -1, 13, -1, -1, -1, 17, 18, 19, -1, -1, + 1937, 1938, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 10, 5211, 37, 13, -1, -1, 3176, + 17, 18, 19, -1, -1, 47, -1, -1, -1, -1, + -1, -1, 54, -1, 3191, -1, -1, -1, -1, 3196, + 37, -1, -1, 40, -1, 2996, 1219, -1, -1, -1, + 47, -1, -1, -1, -1, -1, -1, 54, 80, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 3225, -1, + -1, -1, -1, -1, -1, 2095, -1, -1, 5275, 3176, + -1, -1, -1, 80, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 3191, -1, -1, 5294, -1, 3196, + -1, -1, -1, 5300, 5301, -1, -1, -1, -1, -1, + -1, -1, -1, 5310, -1, 1035, -1, -1, 3069, -1, + 5317, -1, 3073, -1, -1, -1, 1046, -1, 3225, -1, + -1, -1, -1, -1, -1, -1, -1, 2074, -1, -1, + 4825, -1, 1062, -1, -1, -1, -1, 169, -1, -1, + -1, -1, -1, -1, -1, 5352, 5353, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 5365, -1, + 5367, -1, -1, 195, -1, -1, -1, -1, 200, -1, + -1, -1, -1, -1, 4869, 5382, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 4881, -1, 195, -1, + -1, 223, 224, 200, -1, -1, -1, -1, -1, -1, + 5407, -1, -1, -1, -1, -1, -1, -1, 5415, -1, + -1, -1, 244, -1, -1, 3176, 223, 224, -1, -1, + -1, 4916, -1, -1, -1, -1, -1, -1, -1, -1, + 3191, -1, -1, -1, -1, 3196, -1, 244, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 705, -1, -1, 285, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 3225, -1, -1, 299, -1, -1, + 302, -1, -1, -1, -1, -1, 731, -1, 285, -1, + -1, -1, 5489, -1, -1, -1, -1, -1, -1, 1219, + -1, 1474, 299, 325, -1, 302, -1, -1, -1, 4994, + -1, -1, -1, -1, -1, 3472, 5513, -1, 3475, -1, + 3477, -1, -1, -1, -1, 3482, -1, 5524, 5013, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1541, -1, + 392, -1, -1, 3530, -1, 3472, -1, -1, 3475, -1, + 3477, 3538, -1, -1, -1, 3482, -1, -1, -1, -1, + -1, -1, -1, -1, 5591, 392, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 3563, -1, -1, 1582, + -1, -1, -1, -1, 5099, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 873, -1, + -1, -1, -1, 3530, -1, -1, -1, -1, -1, -1, + -1, 3538, 1615, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 5661, -1, 3563, -1, -1, -1, + -1, -1, 494, -1, -1, -1, 3633, -1, 3635, -1, + -1, 503, 504, 505, 506, 507, 508, 509, 510, 511, + -1, -1, -1, -1, -1, -1, -1, 494, -1, -1, + -1, -1, -1, -1, -1, -1, 503, 504, 505, 506, + 507, 508, 509, 510, 511, -1, -1, -1, -1, -1, + -1, 3472, -1, -1, 3475, -1, 3477, -1, -1, -1, + 5727, 3482, -1, -1, -1, -1, 3633, -1, 3635, -1, + -1, 5226, -1, 5228, 5741, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1474, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 3729, -1, -1, -1, -1, -1, -1, 3530, + -1, -1, -1, -1, -1, -1, -1, 3538, -1, 5274, + 1035, -1, -1, -1, -1, -1, 2616, -1, -1, 5284, + -1, 1046, -1, 5800, -1, -1, -1, -1, -1, -1, + -1, -1, 3563, -1, 3771, -1, -1, 1062, -1, -1, + 10, 1541, -1, 13, -1, -1, -1, 17, 18, 19, + -1, -1, 3729, -1, 1807, -1, -1, -1, -1, 5324, + -1, -1, 3799, -1, 5329, 1818, -1, 37, -1, -1, + -1, 2671, -1, -1, -1, -1, -1, 47, -1, -1, + -1, 1834, 1582, -1, 54, -1, -1, -1, -1, 2689, + -1, -1, -1, 2693, 3771, -1, -1, 2697, -1, -1, + -1, -1, 3633, -1, 3635, -1, 2706, -1, -1, -1, + 80, -1, -1, -1, -1, 1615, -1, 5894, -1, -1, + -1, -1, 3799, -1, 2724, -1, -1, -1, -1, -1, + 3867, -1, -1, -1, -1, 1888, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5926, + 1903, -1, 3889, 1906, 1907, -1, -1, -1, 2758, -1, + 5937, 2678, -1, -1, -1, 2682, 2683, -1, -1, -1, + -1, -1, -1, -1, 3911, -1, -1, -1, 2778, 2779, + -1, -1, -1, -1, 1937, 1938, -1, -1, -1, -1, + 3867, -1, -1, -1, 1219, -1, -1, -1, 3729, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 2809, + 2810, -1, 3889, 2813, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 2740, -1, 195, -1, -1, -1, 2746, + 200, -1, -1, -1, 3911, -1, -1, 2837, 10, 2839, + 3771, 13, -1, 2843, -1, 17, 18, 19, -1, -1, + -1, -1, -1, 223, 224, -1, 3993, 2857, -1, -1, + -1, -1, 6039, -1, 2864, 37, -1, 2867, 3799, -1, + 2787, -1, -1, 2873, 244, 47, -1, -1, 5543, 208, + -1, -1, 54, -1, -1, -1, -1, -1, -1, -1, + -1, 220, 5557, 2893, -1, -1, -1, -1, -1, 2899, + 4037, -1, 231, -1, -1, -1, 2906, 1807, 80, -1, + -1, -1, -1, -1, -1, 285, 3993, -1, 1818, -1, + 2920, 2074, -1, 5588, -1, 4062, -1, -1, -1, 299, + -1, -1, 302, 2933, 1834, -1, 3867, -1, 2938, -1, + -1, -1, -1, -1, 2944, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 3889, -1, + 4037, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 10, -1, -1, 13, -1, + 3911, -1, 17, 18, 19, 4062, -1, -1, 1888, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 37, 1903, 3004, 40, 1906, 1907, -1, -1, + -1, -1, 47, -1, -1, -1, -1, -1, -1, 54, + -1, -1, 392, 195, 5689, -1, -1, -1, 200, -1, + -1, -1, -1, -1, -1, -1, -1, 1937, 1938, -1, + -1, -1, -1, -1, -1, 80, -1, -1, -1, 1474, + -1, 223, 224, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 3993, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 244, 10, -1, -1, 13, -1, -1, 2996, + 17, 18, 19, -1, -1, 4222, -1, -1, -1, 5754, + -1, 5756, -1, -1, -1, -1, -1, -1, -1, -1, + 37, -1, -1, -1, -1, -1, 4037, -1, -1, -1, + 47, -1, -1, 285, -1, -1, 1541, 54, -1, -1, + -1, -1, -1, 493, 494, -1, -1, 299, -1, -1, + 302, 4062, -1, 503, 504, 505, 506, 507, 508, 509, + 510, 511, -1, 80, -1, 4222, -1, -1, -1, 321, + -1, -1, 3069, -1, -1, -1, 3073, 1582, -1, 3159, + 195, 3161, -1, -1, -1, 200, -1, -1, -1, -1, + -1, -1, -1, -1, 2074, 4312, -1, -1, 3178, -1, + -1, -1, -1, -1, -1, 3185, -1, -1, 223, 224, + 1615, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 4338, -1, -1, -1, -1, -1, -1, -1, 244, + -1, -1, -1, -1, -1, -1, -1, 5882, -1, -1, + 392, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 5895, -1, -1, -1, -1, 4312, -1, -1, -1, 176, + -1, -1, -1, 5908, -1, -1, -1, -1, -1, -1, + 285, -1, -1, -1, -1, -1, -1, -1, 195, 3176, + -1, 4338, -1, 200, 299, -1, -1, 302, -1, -1, + -1, -1, -1, -1, 3191, -1, 3276, -1, -1, 3196, + -1, -1, 3282, -1, -1, -1, 223, 224, -1, -1, + -1, 4222, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5967, 5968, -1, -1, -1, 244, 3225, -1, + -1, -1, -1, -1, 643, -1, -1, -1, -1, -1, + 649, -1, 494, -1, -1, -1, -1, -1, -1, -1, + -1, 503, 504, 505, 506, 507, 508, 509, 510, 511, + -1, -1, -1, -1, 4481, -1, -1, -1, 285, -1, + -1, -1, -1, -1, -1, -1, -1, 392, -1, -1, + -1, 6026, 299, -1, -1, 302, -1, 3367, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 4312, 1807, -1, -1, -1, -1, -1, -1, -1, + -1, 4528, -1, 1818, -1, -1, 4533, -1, -1, -1, + -1, -1, -1, -1, 4481, -1, -1, 4338, -1, 1834, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 4528, -1, -1, -1, 392, 4533, -1, -1, 494, + -1, -1, -1, 1888, -1, -1, -1, -1, 503, 504, + 505, 506, 507, 508, 509, 510, 511, -1, 1903, -1, + -1, 1906, 1907, -1, -1, -1, -1, -1, -1, -1, + -1, 820, -1, -1, -1, -1, -1, 3497, 3498, 6164, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 839, -1, 1937, 1938, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 3524, 2678, -1, 3527, -1, 2682, + 2683, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 6209, -1, -1, -1, 4685, -1, + 4481, -1, 6217, 6218, -1, 3472, -1, 494, 3475, -1, + 3477, -1, 6227, -1, -1, 3482, 503, 504, 505, 506, + 507, 508, 509, 510, 511, -1, -1, -1, -1, -1, + 909, -1, -1, -1, -1, -1, -1, 2740, -1, -1, + -1, -1, -1, 2746, -1, -1, -1, 4528, -1, 3599, + 3600, 3601, 4533, -1, -1, -1, -1, -1, 4685, -1, + -1, 10, -1, 3530, 13, -1, -1, -1, 17, 18, + 19, 3538, -1, -1, 3624, -1, -1, 956, -1, -1, + -1, -1, -1, -1, 2787, -1, -1, -1, 37, -1, + -1, 40, -1, 3643, -1, -1, 3563, -1, 47, 2074, + -1, -1, -1, -1, -1, 54, -1, -1, -1, -1, + -1, -1, -1, 10, -1, 3665, 13, -1, -1, -1, + 17, 18, 19, -1, -1, 4812, -1, -1, -1, -1, + -1, 80, -1, -1, -1, -1, -1, -1, -1, -1, + 37, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 47, -1, -1, -1, -1, -1, -1, 54, -1, -1, + -1, -1, -1, -1, -1, 4852, 3633, -1, 3635, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 80, -1, 4812, -1, 4874, -1, -1, + -1, -1, 1071, -1, -1, -1, -1, -1, -1, -1, + 10, 3751, -1, 13, 4685, -1, -1, 17, 18, 19, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1100, 1101, 1102, -1, 4852, -1, 37, 2678, -1, + 40, -1, 2682, 2683, -1, -1, -1, 47, -1, -1, + -1, -1, -1, -1, 54, -1, 195, 4874, 3798, -1, + -1, 200, -1, -1, 3804, -1, 3806, -1, -1, -1, + 4947, -1, 3729, -1, -1, -1, -1, -1, -1, 3819, + 80, 3821, -1, -1, 223, 224, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 2740, -1, -1, 2996, -1, 244, 2746, -1, 195, -1, + -1, -1, -1, 200, 3771, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 4947, -1, -1, -1, -1, -1, 223, 224, -1, -1, + 1209, 4812, 3799, -1, -1, -1, 285, 2787, 3888, -1, + -1, -1, -1, -1, -1, -1, -1, 244, -1, -1, + 299, -1, -1, 302, -1, -1, -1, -1, 1237, -1, + -1, -1, -1, -1, -1, -1, 3069, -1, -1, -1, + 3073, 4852, -1, -1, -1, -1, -1, -1, -1, -1, + 3930, 5068, -1, -1, -1, 195, -1, -1, 285, -1, + 200, -1, -1, 4874, -1, -1, -1, -1, -1, 3949, + 3867, -1, 299, 3953, -1, 302, -1, -1, -1, -1, + -1, -1, -1, 223, 224, -1, -1, -1, -1, -1, + -1, -1, 3889, -1, 3974, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 244, -1, -1, -1, -1, -1, + -1, 5068, -1, 392, 3911, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 4947, -1, -1, -1, + -1, -1, -1, 3176, -1, 285, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 3191, 299, + -1, -1, 302, 3196, -1, 392, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1384, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 5204, -1, -1, + -1, -1, 3225, -1, 4074, -1, 3993, -1, 425, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 494, 2996, -1, -1, -1, + -1, -1, -1, -1, 503, 504, 505, 506, 507, 508, + 509, 510, 511, -1, -1, -1, -1, -1, -1, -1, + 4037, -1, -1, -1, -1, -1, -1, 5204, -1, -1, + -1, -1, 392, -1, -1, 1464, 5273, 5068, -1, -1, + -1, -1, -1, -1, -1, 4062, -1, 494, -1, -1, + -1, -1, -1, -1, -1, -1, 503, 504, 505, 506, + 507, 508, 509, 510, 511, -1, -1, -1, -1, 3069, + -1, -1, -1, 3073, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5273, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1547, -1, + -1, -1, -1, -1, -1, -1, -1, 1556, -1, -1, + -1, -1, -1, -1, 494, -1, -1, -1, -1, -1, + -1, -1, -1, 503, 504, 505, 506, 507, 508, 509, + 510, 511, -1, 2678, -1, 4255, 5393, 2682, 2683, 1588, + -1, -1, -1, -1, -1, 1594, 1595, -1, -1, 1598, + -1, -1, -1, 5204, -1, -1, 3176, -1, -1, -1, + -1, -1, 1611, -1, -1, 1614, -1, -1, -1, -1, + -1, 3191, -1, -1, -1, -1, 3196, -1, -1, -1, + -1, -1, -1, -1, -1, 4222, 4306, -1, -1, -1, + -1, 4311, -1, 4313, -1, 2740, 5393, -1, -1, 3472, + -1, 2746, 3475, -1, 3477, 3225, -1, -1, -1, 3482, + -1, -1, -1, -1, -1, -1, -1, 4337, -1, -1, + -1, 1670, 5273, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1684, -1, -1, -1, -1, + -1, -1, 2787, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 3530, -1, -1, + -1, -1, -1, -1, 4384, 3538, -1, 4387, 5525, -1, + -1, -1, -1, 5530, 5531, 4312, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3563, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 4338, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 817, 818, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 5525, -1, + -1, -1, -1, 5530, 5531, -1, -1, -1, -1, -1, + -1, -1, 5393, -1, -1, 1794, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1805, 4477, 4478, -1, + 3633, -1, 3635, -1, 10, -1, -1, 13, 4488, -1, + -1, 17, 18, 19, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 4505, 5643, -1, -1, -1, + -1, 37, -1, -1, -1, 895, -1, -1, 1847, 1848, + -1, 47, -1, -1, -1, -1, 10, -1, 54, 13, + -1, -1, -1, 17, 18, 19, -1, -1, -1, -1, + -1, -1, -1, 1872, -1, -1, -1, -1, -1, -1, + 1879, -1, -1, 37, 80, 5692, -1, -1, -1, -1, + -1, -1, -1, 47, 4481, -1, 5643, -1, -1, -1, + 54, 2996, 3472, -1, -1, 3475, 3729, 3477, -1, -1, + -1, -1, 3482, -1, -1, -1, 4586, -1, -1, 4589, + -1, -1, -1, -1, 5525, -1, 80, -1, -1, 5530, + 5531, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 4528, -1, -1, -1, 5692, 4533, -1, 3771, -1, + -1, -1, -1, 1952, -1, -1, -1, -1, -1, -1, + 3530, -1, -1, -1, -1, -1, 1016, 1017, 3538, -1, + -1, -1, -1, -1, 3069, -1, 3799, -1, 3073, -1, + 176, -1, -1, -1, -1, -1, 1985, 1986, -1, -1, + -1, -1, -1, 3563, -1, -1, -1, -1, -1, 195, + -1, -1, -1, 2002, 200, -1, 2005, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 176, -1, -1, -1, -1, 223, 224, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 195, 5643, -1, 3867, -1, 200, -1, 244, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 3633, -1, 3635, 3889, -1, -1, 223, + 224, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3176, -1, -1, -1, -1, -1, -1, 3911, 285, + 244, 5692, -1, -1, -1, 1335, 3191, -1, 4685, -1, + -1, 3196, -1, 299, -1, -1, 302, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3225, 285, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 299, -1, -1, 302, -1, + -1, -1, 1392, -1, -1, 4825, -1, -1, -1, 3729, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3993, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 392, -1, -1, 4869, + -1, 3771, -1, -1, -1, 1255, -1, -1, -1, -1, + -1, 4881, -1, -1, 4037, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 10, 4812, -1, 13, -1, 3799, + -1, 17, 18, 19, -1, -1, -1, -1, 392, 4062, + 1290, -1, -1, -1, -1, -1, 4916, -1, -1, -1, + -1, 37, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 47, -1, -1, -1, 4852, -1, -1, 54, 1319, + 1320, 1321, -1, 1323, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 4874, -1, -1, + -1, -1, -1, 1343, 80, -1, -1, 3867, 494, -1, + -1, -1, -1, -1, -1, -1, -1, 503, 504, 505, + 506, 507, 508, 509, 510, 511, -1, -1, -1, 3889, + -1, -1, -1, -1, 4994, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 494, 3911, -1, 5013, -1, -1, -1, -1, -1, 503, + 504, 505, 506, 507, 508, 509, 510, 511, -1, -1, + 4947, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 3472, -1, -1, + 3475, -1, 3477, -1, 170, -1, -1, 3482, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1448, 4222, + -1, -1, 1452, 1453, -1, -1, -1, -1, -1, 195, + -1, -1, -1, -1, 200, -1, -1, -1, -1, -1, + -1, -1, -1, 3993, -1, -1, -1, -1, -1, 5099, + -1, -1, -1, -1, -1, 3530, -1, 223, 224, -1, + -1, -1, -1, 3538, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 244, -1, + -1, 1701, -1, -1, -1, 1705, -1, 4037, 3563, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 5068, -1, -1, -1, -1, -1, -1, -1, 4312, + -1, -1, 4062, -1, -1, -1, -1, -1, -1, 285, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 299, -1, 4338, 302, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 2534, -1, -1, 3633, -1, + 3635, -1, -1, -1, -1, -1, 2545, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5226, -1, 5228, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 10, -1, -1, 13, 2577, -1, + -1, 17, 18, 19, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 37, -1, -1, 5274, -1, 392, -1, -1, -1, + -1, 47, -1, -1, -1, -1, -1, 5204, 54, -1, + -1, -1, -1, -1, -1, 2624, 2625, -1, -1, -1, + -1, -1, -1, -1, 3729, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 80, 1695, 1696, 1697, -1, -1, + -1, -1, 4222, -1, 5324, -1, -1, -1, 4481, 2658, + -1, -1, 10, -1, -1, 13, -1, -1, -1, 17, + 18, 19, -1, -1, -1, -1, 3771, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5273, -1, -1, 37, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 47, + -1, -1, -1, -1, 3799, 4528, 54, -1, 494, -1, + 4533, -1, -1, 149, -1, -1, -1, 503, 504, 505, + 506, 507, 508, 509, 510, 511, -1, -1, -1, -1, + -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 4312, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 195, + -1, -1, -1, -1, 200, -1, -1, -1, 4338, -1, + -1, -1, 3867, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2022, -1, -1, -1, -1, 223, 224, -1, + -1, -1, 2791, -1, 3889, -1, -1, -1, -1, -1, + -1, 2041, -1, -1, -1, 2045, 5393, 2806, 244, -1, + -1, -1, -1, -1, -1, -1, 3911, -1, -1, -1, + 2060, 2061, 2062, -1, 2064, -1, -1, 10, -1, 2828, + 13, -1, -1, -1, 17, 18, 19, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 195, -1, 285, + -1, -1, 200, -1, 37, -1, -1, -1, -1, -1, + -1, -1, 4685, 299, 47, -1, 302, -1, -1, -1, + -1, 54, -1, 5543, -1, 223, 224, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 5557, -1, -1, + -1, -1, -1, -1, -1, -1, 244, 80, 3993, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 4481, -1, -1, -1, 2914, 2915, -1, 5588, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 285, 5525, -1, + -1, -1, 4037, 5530, 5531, -1, -1, -1, -1, -1, + -1, 299, -1, -1, 302, -1, 392, -1, 4528, -1, + -1, -1, -1, 4533, -1, -1, -1, 4062, -1, -1, + -1, -1, -1, -1, 2024, -1, -1, -1, -1, -1, + -1, -1, -1, 2033, 2034, 2035, 2036, 170, -1, 4812, + 2040, -1, 2042, -1, 2044, -1, -1, 2047, 2048, 2049, + -1, -1, -1, -1, -1, 2055, -1, -1, 2058, -1, + -1, -1, 195, -1, -1, -1, 3015, 200, -1, 5689, + -1, -1, -1, -1, -1, 2075, 2076, 2077, -1, 4852, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 223, 224, -1, 2093, 392, -1, -1, -1, -1, -1, + -1, 4874, -1, -1, -1, -1, 5643, -1, 494, -1, + -1, 244, -1, -1, -1, -1, -1, 503, 504, 505, + 506, 507, 508, 509, 510, 511, -1, -1, -1, -1, + -1, -1, -1, -1, 5754, -1, 5756, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 285, -1, 10, 5692, -1, 13, -1, -1, + -1, 17, 18, 19, -1, 4685, 299, -1, -1, 302, + 468, -1, -1, -1, 4947, -1, -1, 4222, -1, -1, + -1, 37, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 47, -1, -1, -1, -1, 494, -1, 54, -1, + -1, -1, -1, -1, -1, 503, 504, 505, 506, 507, + 508, 509, 510, 511, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 80, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 2237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 392, + -1, -1, 5882, -1, -1, -1, -1, 4312, -1, -1, + -1, -1, 27, -1, -1, -1, -1, -1, 33, -1, + -1, -1, -1, -1, 2284, 40, -1, -1, 5908, -1, + -1, -1, 4812, 4338, -1, 5068, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 78, -1, -1, -1, -1, -1, -1, + -1, -1, 4852, -1, -1, -1, -1, 2337, -1, 195, + -1, 2531, -1, -1, 200, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 4874, -1, -1, -1, 113, -1, + -1, 494, -1, -1, -1, -1, -1, 223, 224, -1, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 134, + -1, -1, -1, -1, -1, -1, 141, -1, 244, 144, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 3353, -1, 6026, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 171, -1, -1, -1, + -1, -1, -1, -1, -1, 3374, -1, 4947, -1, 285, + -1, 5204, -1, -1, -1, -1, 4481, -1, -1, -1, + -1, 2631, -1, 299, -1, -1, 302, -1, 203, -1, + -1, -1, 207, 2643, -1, -1, -1, -1, 2648, 27, + -1, -1, -1, -1, -1, 33, -1, -1, -1, -1, + -1, -1, 40, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 4528, -1, -1, -1, -1, 4533, -1, + -1, -1, -1, -1, 62, -1, -1, -1, -1, -1, + 5273, -1, -1, -1, 259, -1, -1, -1, 263, -1, + 78, -1, -1, -1, 2514, 2515, 2516, 2517, 2518, 2519, + 2520, 2521, 2522, 278, 2524, -1, -1, 282, -1, -1, + -1, -1, -1, -1, -1, 2535, 392, 292, 2538, -1, + -1, -1, -1, -1, 6164, 113, 301, -1, 5068, -1, + -1, -1, -1, -1, -1, -1, -1, 312, 313, -1, + -1, -1, -1, -1, -1, -1, 134, -1, -1, -1, + -1, -1, -1, 141, -1, -1, 144, -1, -1, 2579, + -1, -1, -1, 2583, -1, -1, 2586, -1, 2588, 6209, + -1, 2591, -1, -1, -1, -1, -1, 352, -1, -1, + 355, 356, 357, 171, -1, -1, -1, 6227, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 5393, -1, -1, -1, -1, -1, 381, -1, -1, -1, + -1, -1, 387, -1, -1, 203, -1, -1, 494, 207, + 4685, -1, -1, -1, 2644, 2645, 401, 503, 504, 505, + 506, 507, 508, 509, 510, 511, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 5204, -1, -1, -1, -1, -1, + -1, 259, 3641, -1, -1, 263, -1, -1, -1, -1, + -1, 456, 3651, -1, -1, -1, -1, -1, -1, -1, + 278, -1, -1, -1, 282, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 292, -1, -1, 2727, -1, -1, + -1, -1, -1, 301, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 312, 313, -1, -1, -1, -1, + -1, -1, 5525, 5273, -1, -1, -1, 5530, 5531, -1, + -1, -1, -1, -1, -1, -1, -1, 4812, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 25, + -1, -1, -1, -1, 352, -1, -1, 355, 356, 357, + -1, -1, -1, -1, -1, -1, -1, 43, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 4852, -1, -1, + -1, -1, -1, 381, -1, -1, -1, -1, -1, 387, + -1, -1, 68, -1, -1, -1, -1, -1, -1, 4874, + -1, -1, -1, 401, -1, 81, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 97, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3810, 3811, 3812, -1, -1, -1, -1, -1, 115, + 5643, -1, -1, 5393, -1, 121, -1, -1, 3827, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 456, -1, + -1, -1, -1, 139, -1, -1, -1, -1, -1, -1, + -1, -1, 4947, -1, 150, -1, -1, -1, -1, -1, + -1, 3860, 3861, 159, -1, -1, 3865, -1, -1, 5692, + -1, -1, -1, -1, -1, -1, 172, -1, -1, -1, + -1, -1, -1, -1, -1, 181, -1, -1, -1, 185, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 205, + -1, -1, 2962, 2963, 2964, -1, -1, -1, 2968, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 2995, -1, -1, -1, -1, + -1, -1, 248, -1, -1, 5525, -1, -1, -1, -1, + 5530, 5531, 258, -1, -1, -1, -1, 3207, -1, -1, + -1, -1, 3971, 5068, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 3228, -1, + -1, -1, -1, 3233, -1, -1, -1, -1, -1, 3239, + -1, -1, -1, 299, 3244, 3245, 302, 3247, -1, -1, + -1, -1, 3252, 3253, -1, 3255, -1, 3257, -1, -1, + -1, 3261, -1, -1, 3264, -1, -1, 323, -1, 3269, + -1, -1, -1, -1, -1, -1, -1, -1, 3278, -1, + -1, 337, -1, 3283, -1, -1, -1, -1, 344, -1, + -1, 3291, 3292, 3293, 3294, -1, -1, -1, 3298, 3299, + -1, 3301, -1, -1, -1, -1, -1, -1, 364, -1, + -1, -1, -1, 5643, -1, -1, -1, -1, 374, -1, + 3320, -1, 3322, -1, -1, 381, -1, -1, 384, 3329, + 3330, 3331, 3332, 3333, 3334, 3335, 3336, 3337, 3338, -1, + -1, -1, -1, -1, -1, -1, -1, 403, -1, 5204, + -1, -1, -1, -1, 410, -1, -1, -1, -1, -1, + -1, 417, 5692, -1, 420, 421, -1, 423, 424, -1, + -1, -1, 4131, 4132, 4133, 3375, -1, -1, -1, -1, + -1, -1, -1, 439, -1, -1, -1, -1, -1, -1, + 446, -1, -1, 449, 3204, -1, 452, -1, -1, 3209, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 465, + -1, -1, -1, -1, -1, -1, -1, -1, 5273, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 3254, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 3265, -1, 3267, 3268, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 3281, -1, -1, 3284, -1, 3286, -1, -1, -1, + -1, 33, -1, 35, 36, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 63, -1, 3323, -1, 3325, -1, 3327, 3518, -1, + -1, -1, -1, 75, -1, 77, 78, -1, -1, -1, + -1, -1, 84, -1, 86, -1, -1, -1, 5393, -1, + -1, -1, -1, -1, -1, -1, 98, -1, 100, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 117, -1, -1, 120, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 135, -1, 137, -1, -1, -1, 141, + -1, -1, 25, -1, -1, 147, -1, 30, -1, -1, + -1, -1, -1, 155, -1, 157, -1, -1, 3418, -1, + -1, -1, 164, 3423, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 3438, -1, + 182, -1, -1, -1, -1, 68, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 199, 81, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 97, -1, -1, -1, -1, -1, + 5525, -1, -1, -1, -1, 5530, 5531, -1, -1, -1, + -1, -1, 115, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 3503, 246, 247, -1, -1, -1, 4458, + 252, -1, -1, -1, -1, -1, 139, -1, -1, -1, + -1, -1, -1, -1, 266, -1, -1, 150, -1, -1, + -1, -1, -1, -1, -1, -1, 159, -1, -1, -1, + -1, 4490, 284, -1, -1, -1, -1, -1, -1, 172, + -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, + -1, -1, 185, -1, -1, -1, -1, -1, -1, -1, + 3760, 3761, -1, 4522, -1, 3765, -1, -1, -1, -1, + -1, -1, 205, -1, -1, -1, 328, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 5643, -1, + 342, -1, -1, -1, 3794, -1, 348, 349, 4557, 351, + -1, -1, -1, -1, 356, -1, -1, 359, -1, -1, + 362, -1, -1, 365, -1, 4574, -1, -1, -1, -1, + 372, -1, -1, -1, -1, 258, -1, 379, 380, -1, + -1, -1, -1, -1, -1, 387, -1, 5692, -1, 391, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 401, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 417, 299, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 312, + -1, -1, -1, -1, -1, 437, -1, -1, -1, -1, + 323, -1, -1, -1, -1, -1, 448, -1, -1, -1, + 333, 334, 454, -1, 337, -1, -1, 459, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 472, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 364, -1, -1, 367, -1, -1, -1, 371, -1, + -1, 374, -1, -1, 496, -1, 3756, -1, 381, -1, + -1, 384, 3762, -1, -1, -1, -1, 4716, 4717, 4718, + 4719, -1, -1, 515, -1, -1, 518, -1, -1, -1, + 403, -1, -1, -1, -1, -1, -1, 410, -1, -1, + -1, -1, -1, -1, 417, -1, -1, 420, -1, 3989, + -1, 424, -1, -1, -1, 3995, -1, -1, -1, 432, + -1, 434, -1, -1, -1, -1, 439, 30, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 452, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3841, 465, -1, 4034, 4035, -1, -1, 4038, 4039, + 4040, 4041, -1, -1, 4044, 4045, 4046, 4047, 4048, 4049, + 4050, 4051, 4052, 4053, 4054, -1, -1, -1, 81, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 97, -1, -1, 4077, -1, -1, + 4080, -1, 4082, -1, -1, 4085, 4086, -1, -1, -1, + -1, -1, 115, -1, -1, -1, -1, -1, 121, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 4109, + 4110, 4111, 4112, -1, 4114, -1, 139, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 150, -1, -1, + -1, -1, -1, -1, -1, -1, 159, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 172, + -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, + -1, -1, 185, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3990, 4181, 205, -1, -1, -1, -1, -1, 3998, -1, + 4000, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 4010, -1, -1, -1, 4014, 4015, -1, -1, -1, -1, + 4020, -1, -1, 236, -1, -1, -1, -1, 4028, -1, + 4030, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 4231, -1, -1, -1, 258, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 4057, 4058, 4059, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 4076, -1, -1, -1, + -1, -1, -1, -1, 4084, -1, 299, 4087, -1, 4089, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 4107, -1, -1, + 323, -1, 5061, -1, -1, 4115, 4116, -1, -1, -1, + 333, 334, 4122, 5072, 337, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 364, -1, -1, 367, -1, -1, -1, 371, -1, + -1, 374, -1, -1, -1, -1, -1, -1, 381, -1, + -1, 384, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 403, -1, -1, -1, -1, -1, -1, 410, -1, 4199, + -1, -1, 415, -1, 417, -1, -1, 420, -1, -1, + -1, 424, -1, -1, -1, -1, 4216, -1, -1, -1, + -1, 434, -1, -1, -1, -1, 439, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 452, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 465, -1, -1, -1, -1, -1, -1, -1, + -1, 4451, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 4494, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 5346, -1, -1, + -1, -1, 5351, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 5370, -1, -1, -1, -1, 4616, -1, -1, -1, + 4620, 4621, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 4639, + 4640, -1, -1, -1, -1, 4645, 4646, 4647, 4648, -1, + -1, -1, 4652, 4653, 4654, 4655, 4656, 4657, 4658, 4659, + 4660, 4661, 4662, 4663, 4664, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 4689, + -1, -1, 4692, -1, 4694, -1, -1, -1, -1, -1, + 4700, -1, -1, 4703, 4704, -1, -1, 4707, 4708, -1, + -1, -1, -1, 4713, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 4534, 4535, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 4545, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 5509, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 4765, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 4779, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 4615, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 4629, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 4643, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 5610, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 4682, 4683, -1, -1, -1, -1, -1, 5638, + 4690, 4691, -1, -1, -1, 4695, -1, -1, -1, -1, + -1, -1, 4702, -1, -1, 4705, 4706, -1, -1, -1, + -1, -1, 4712, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 4755, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 4766, -1, -1, -1, + -1, -1, -1, -1, 4774, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 4976, -1, -1, -1, + -1, -1, -1, -1, 4794, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 5063, 5064, -1, -1, -1, -1, -1, + -1, 5071, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 4897, -1, -1, + -1, -1, -1, -1, 4904, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 5114, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5132, 5133, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 5151, -1, 5153, -1, -1, -1, 5157, 5158, 5159, + -1, -1, 5162, 4973, -1, 5165, 5166, -1, -1, -1, + -1, 5171, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 5188, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5206, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 5220, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 5230, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 5295, -1, 5297, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 5130, -1, -1, -1, -1, -1, 5136, 5137, 5138, -1, + -1, -1, 5332, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 5163, 5164, -1, -1, 5167, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 5194, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 5205, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 5221, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 5423, -1, 5425, 5426, 5427, 5428, 5429, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5442, 5443, 5444, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5456, -1, -1, 5459, + -1, -1, -1, 5463, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 5481, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5496, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 5430, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 5474, -1, -1, 5667, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5686, -1, 5688, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 5535, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 5740, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 5577, -1, -1, + -1, -1, -1, -1, -1, -1, 5776, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5842, -1, -1, -1, -1, -1, -1, 5849, + -1, -1, -1, -1, -1, -1, 5666, -1, -1, -1, + -1, -1, -1, -1, -1, 5675, 5676, 5677, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 5701, -1, 5893, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5729, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5992, 5993, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 6006, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 5846, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 6047, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5869, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5879, + -1, -1, 6072, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 6083, 6084, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5949, + 6140, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 5973, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 3, -1, 5, 6, + -1, 8, 9, 10, 11, 12, -1, -1, -1, -1, + -1, -1, -1, -1, 6074, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 6088, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, -1, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, -1, 124, 125, 126, + 127, 128, 129, 130, -1, 132, 133, 134, 135, 136, + -1, 138, 139, 140, 141, 142, 6196, 144, 145, 146, + -1, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, -1, 171, -1, 173, 174, 175, -1, + 177, 178, 179, 180, 181, -1, 183, 184, -1, 186, + 187, 188, -1, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, -1, 201, 202, 203, 204, 205, 206, + 207, 208, -1, 210, 211, 212, 213, 214, 215, 216, + 217, 218, -1, 220, -1, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, -1, -1, 240, 241, 242, 243, 244, -1, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, -1, 295, 296, + -1, -1, 299, 300, 301, -1, -1, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, + 327, 328, 329, -1, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, -1, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, -1, 361, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, -1, 381, 382, 383, 384, 385, 386, + 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, + -1, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, -1, 414, 415, 416, + -1, 418, 419, 420, 421, 422, 423, 424, -1, 426, + 427, 428, -1, -1, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, -1, 446, + 447, 448, 449, 450, 451, 452, -1, 454, 455, 456, + 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, + 467, -1, -1, 470, -1, -1, 473, 474, 475, 476, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, -1, 494, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 506, + 507, 508, -1, -1, -1, -1, -1, -1, 515, 516, + 3, -1, 5, 6, -1, 8, 9, 10, 11, 12, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, 30, -1, 32, + 33, 34, -1, -1, -1, -1, 39, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, -1, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, 81, -1, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, 175, -1, 177, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, -1, 240, 241, 242, + 243, 244, -1, 246, 247, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, -1, 295, 296, -1, -1, 299, 300, 301, -1, + -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, + 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, 416, 417, 418, 419, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, -1, 431, 432, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, -1, 446, 447, 448, 449, 450, 451, 452, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + 463, 464, 465, 466, 467, -1, -1, 470, -1, 472, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + -1, 494, -1, 496, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 506, 507, -1, -1, -1, -1, -1, + -1, -1, 515, 516, 3, -1, 5, 6, -1, 8, + 9, 10, 11, 12, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, + 29, 30, -1, 32, 33, 34, -1, -1, -1, -1, + 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + -1, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, + 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, + 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, -1, 124, 125, 126, 127, 128, + 129, 130, -1, 132, 133, 134, 135, -1, -1, 138, + 139, 140, 141, 142, -1, 144, 145, 146, -1, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, -1, 171, -1, 173, 174, 175, -1, 177, 178, + 179, 180, 181, -1, 183, 184, -1, 186, 187, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, 201, 202, 203, 204, 205, 206, 207, 208, + -1, 210, 211, 212, 213, 214, 215, 216, 217, 218, + -1, 220, -1, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, 233, 234, 235, 236, 237, -1, + -1, 240, 241, 242, 243, 244, -1, 246, 247, 248, + 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, -1, 295, 296, -1, -1, + 299, 300, 301, -1, -1, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, + 329, -1, 331, 332, 333, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, -1, 347, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, -1, 361, 362, 363, 364, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, -1, 381, 382, 383, 384, 385, 386, 387, 388, + 389, 390, 391, 392, 393, 394, 395, 396, -1, 398, + 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, -1, 414, 415, 416, -1, 418, + 419, 420, 421, 422, 423, 424, -1, 426, 427, 428, + -1, -1, 431, 432, 433, 434, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, -1, 446, 447, 448, + 449, 450, 451, 452, -1, 454, 455, 456, 457, 458, + 459, 460, -1, 462, 463, 464, 465, 466, 467, -1, + -1, 470, -1, -1, 473, 474, 475, 476, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 490, 491, 492, -1, 494, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 506, 507, -1, + -1, -1, -1, -1, -1, -1, 515, 516, 3, -1, + 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, + 25, 26, 27, 28, 29, 30, -1, 32, 33, 34, + -1, -1, -1, -1, 39, -1, -1, 42, 43, 44, + -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, -1, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, -1, + 75, 76, 77, 78, 79, -1, 81, -1, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, -1, 94, + 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, -1, 124, + 125, 126, 127, 128, 129, 130, -1, 132, 133, 134, + 135, -1, -1, 138, 139, 140, 141, 142, -1, 144, + 145, 146, -1, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, -1, 171, -1, 173, 174, + 175, -1, 177, 178, 179, 180, 181, -1, 183, 184, + -1, 186, 187, 188, -1, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, -1, 201, 202, 203, 204, + 205, 206, 207, 208, -1, 210, 211, 212, 213, 214, + 215, 216, 217, 218, -1, 220, -1, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, -1, -1, 240, 241, 242, 243, 244, + -1, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, -1, + 295, 296, -1, -1, 299, 300, 301, -1, -1, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, + 325, 326, 327, 328, 329, -1, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, -1, 361, 362, 363, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, + 375, 376, 377, 378, 379, -1, 381, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, + 395, 396, -1, 398, 399, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, + 415, 416, -1, 418, 419, 420, 421, 422, 423, 424, + -1, 426, 427, 428, -1, -1, 431, 432, 433, 434, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + -1, 446, 447, 448, 449, 450, 451, 452, -1, 454, + 455, 456, 457, 458, 459, 460, -1, 462, 463, 464, + 465, 466, 467, -1, -1, 470, -1, -1, 473, 474, + 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 490, 491, 492, -1, 494, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 506, 507, -1, -1, -1, -1, -1, -1, -1, + 515, 516, 3, -1, 5, 6, -1, 8, 9, 10, + 11, 12, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, + -1, 32, 33, 34, -1, -1, -1, -1, 39, -1, + -1, 42, 43, 44, -1, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, -1, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, -1, 75, 76, 77, 78, 79, -1, + 81, -1, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, + 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, -1, 124, 125, 126, 127, 128, 129, 130, + -1, 132, 133, 134, 135, -1, -1, 138, 139, 140, + 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, 163, -1, 165, 166, 167, 168, 169, -1, + 171, -1, 173, 174, 175, -1, 177, 178, 179, 180, + 181, -1, 183, 184, -1, 186, 187, 188, -1, 190, + 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, + 201, 202, 203, 204, 205, 206, 207, 208, -1, 210, + 211, 212, 213, 214, 215, 216, 217, 218, -1, 220, + -1, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, 233, 234, 235, 236, 237, -1, -1, 240, + 241, 242, 243, 244, -1, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, + 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, -1, 295, 296, -1, -1, 299, 300, + 301, -1, -1, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + -1, 322, 323, 324, 325, 326, 327, 328, 329, -1, + 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, + 341, 342, 343, 344, 345, -1, 347, 348, 349, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, -1, + 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, + 371, 372, 373, 374, 375, 376, 377, 378, 379, -1, + 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, + 391, 392, 393, 394, 395, 396, -1, 398, 399, 400, + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, + 411, 412, -1, 414, 415, 416, -1, 418, 419, 420, + 421, 422, 423, 424, -1, 426, 427, 428, -1, -1, + 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, -1, 446, 447, 448, 449, 450, + 451, 452, -1, 454, 455, 456, 457, 458, 459, 460, + -1, 462, 463, 464, 465, 466, 467, -1, -1, 470, + -1, -1, 473, 474, 475, 476, 477, 478, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, + 491, 492, -1, 494, -1, -1, -1, 3, -1, -1, + -1, -1, -1, -1, -1, 506, 507, -1, -1, -1, + -1, -1, -1, -1, 515, 516, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, -1, 40, -1, 42, 43, 44, -1, + 46, 47, 48, 49, -1, 51, 52, 53, 54, 55, + -1, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, -1, -1, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, -1, -1, 83, 84, 85, + 86, 87, 88, -1, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, -1, + -1, -1, -1, -1, -1, -1, 112, 113, 114, 115, + 116, 117, 118, 119, 120, -1, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, -1, + -1, 177, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, -1, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, -1, -1, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, 242, 243, -1, -1, + 246, 247, 248, -1, -1, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, -1, 283, 284, -1, + 286, -1, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, -1, 308, -1, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + -1, 387, 388, 389, 390, 391, -1, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + -1, -1, 418, -1, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, 433, 434, 435, + -1, 437, 438, 439, 440, 441, 442, 443, 444, -1, + -1, 447, 448, 449, 450, 451, -1, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, -1, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, -1, -1, + -1, -1, 3, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 516, 22, 23, 24, 25, 26, 27, 28, 29, 30, + -1, 32, 33, 34, -1, -1, -1, -1, -1, -1, + -1, 42, 43, 44, -1, 46, 47, 48, 49, 50, + 51, 52, 53, -1, 55, 56, 57, 58, -1, 60, + 61, 62, 63, 64, 65, 66, -1, -1, 69, 70, + 71, 72, 73, -1, 75, 76, 77, 78, -1, -1, + 81, -1, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, + 101, 102, 103, 104, -1, -1, -1, 108, -1, -1, + -1, 112, 113, 114, 115, 116, 117, 118, 119, 120, + -1, 122, -1, 124, 125, 126, 127, 128, 129, 130, + -1, 132, 133, 134, 135, -1, -1, 138, 139, 140, + 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, + -1, 152, 153, 154, 155, -1, 157, 158, 159, 160, + -1, -1, 163, -1, 165, 166, 167, 168, 169, -1, + 171, -1, 173, 174, 175, -1, 177, 178, 179, 180, + 181, -1, 183, -1, -1, -1, 187, 188, -1, 190, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 208, -1, 210, + 211, 212, 213, 214, 215, 216, 217, 218, -1, 220, + -1, 222, 223, 224, 225, 226, 227, -1, -1, -1, + -1, 232, 233, 234, 235, 236, 237, -1, -1, 240, + -1, 242, 243, 244, -1, 246, 247, 248, -1, -1, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, + 271, 272, 273, 274, 275, 276, 277, 278, -1, -1, + 281, -1, 283, 284, 285, 286, -1, -1, 289, 290, + 291, 292, 293, -1, 295, 296, -1, -1, 299, 300, + 301, -1, -1, 304, 305, 306, 307, 308, 309, -1, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + -1, 322, 323, -1, 325, -1, 327, 328, 329, -1, + 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, + 341, 342, 343, 344, 345, -1, 347, 348, 349, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, -1, + 361, 362, 363, 364, 365, 366, 367, 368, -1, 370, + 371, 372, 373, 374, 375, 376, 377, 378, 379, -1, + 381, 382, 383, 384, 385, -1, 387, 388, 389, 390, + 391, 392, 393, 394, 395, 396, -1, 398, 399, 400, + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, + -1, 412, -1, 414, 415, -1, -1, 418, 419, 420, + 421, 422, 423, 424, -1, 426, 427, 428, -1, -1, + 431, 432, -1, 434, -1, -1, 437, 438, 439, 440, + 441, 442, 443, 444, -1, -1, 447, 448, 449, 450, + 451, -1, -1, 454, 455, 456, 457, 458, -1, 460, + 461, 462, 463, 464, 465, 466, 467, -1, -1, 470, + -1, -1, 473, 474, 475, 476, 477, 478, 3, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 490, + 491, 492, -1, -1, -1, -1, -1, 22, 23, 24, + 25, 26, 27, 28, 29, 30, -1, 32, 33, 34, + -1, -1, -1, -1, -1, 516, -1, 42, 43, 44, + -1, 46, 47, 48, 49, 50, 51, 52, 53, -1, + 55, 56, 57, 58, -1, 60, 61, 62, 63, 64, + 65, 66, -1, -1, 69, 70, 71, 72, 73, -1, + 75, 76, 77, 78, -1, -1, 81, -1, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, -1, 94, + 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, + -1, -1, -1, 108, -1, -1, -1, 112, 113, 114, + 115, 116, 117, 118, 119, 120, -1, 122, -1, 124, + 125, 126, 127, 128, 129, 130, -1, 132, 133, 134, + 135, -1, -1, 138, 139, 140, 141, 142, -1, 144, + 145, 146, -1, 148, 149, 150, -1, 152, 153, 154, + 155, -1, 157, 158, 159, 160, -1, -1, 163, -1, + 165, 166, 167, 168, 169, -1, 171, -1, 173, 174, + 175, -1, 177, 178, 179, 180, 181, -1, 183, -1, + -1, -1, 187, 188, -1, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, -1, 210, 211, 212, 213, 214, + 215, 216, 217, 218, -1, 220, -1, 222, 223, 224, + 225, 226, 227, -1, -1, -1, -1, 232, 233, 234, + 235, 236, 237, -1, -1, 240, -1, 242, 243, 244, + -1, 246, 247, 248, -1, -1, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, -1, -1, 281, -1, 283, 284, + 285, 286, -1, -1, 289, 290, 291, 292, 293, -1, + 295, 296, -1, -1, 299, 300, 301, -1, -1, 304, + 305, 306, 307, 308, 309, -1, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, -1, 322, 323, -1, + 325, -1, 327, 328, 329, -1, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, -1, 361, 362, 363, 364, + 365, 366, 367, 368, -1, 370, 371, 372, 373, 374, + 375, 376, 377, 378, 379, -1, 381, 382, 383, 384, + 385, -1, 387, 388, 389, 390, 391, 392, 393, 394, + 395, 396, -1, 398, 399, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 409, 410, -1, 412, -1, 414, + 415, -1, -1, 418, 419, 420, 421, 422, 423, 424, + -1, 426, 427, 428, -1, -1, 431, 432, -1, 434, + -1, -1, 437, 438, 439, 440, 441, 442, 443, 444, + -1, -1, 447, 448, 449, 450, 451, -1, -1, 454, + 455, 456, 457, 458, -1, 460, 461, 462, 463, 464, + 465, 466, 467, -1, -1, 470, -1, -1, 473, 474, + 475, 476, 477, 478, 3, -1, 5, 6, -1, 8, + 9, 10, 11, 12, -1, 490, 491, 492, -1, -1, + -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, + 29, 30, -1, 32, 33, 34, -1, -1, -1, -1, + 39, 516, -1, 42, 43, 44, -1, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + -1, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, + 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, + 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, -1, 124, 125, 126, 127, 128, + 129, 130, -1, 132, 133, 134, 135, -1, -1, 138, + 139, 140, 141, 142, -1, 144, 145, 146, -1, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, -1, 171, -1, 173, 174, 175, -1, 177, 178, + 179, 180, 181, -1, 183, 184, -1, 186, 187, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, 201, 202, 203, 204, 205, 206, 207, 208, + -1, 210, 211, 212, 213, 214, 215, 216, 217, 218, + -1, 220, -1, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, 233, 234, 235, 236, 237, -1, + -1, 240, 241, 242, 243, 244, -1, 246, 247, 248, + 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, -1, 295, 296, -1, -1, + 299, 300, 301, -1, -1, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, + 329, -1, 331, 332, 333, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, -1, 347, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, + 389, 390, 391, 392, 393, 394, 395, 396, -1, 398, + 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, -1, 414, 415, 416, 417, 418, + 419, 420, 421, 422, 423, 424, -1, 426, 427, 428, + -1, -1, 431, 432, 433, 434, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, -1, 446, 447, 448, + 449, 450, 451, 452, -1, 454, 455, 456, 457, 458, + 459, 460, -1, 462, 463, 464, 465, 466, 467, -1, + -1, 470, -1, 472, 473, 474, 475, 476, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 490, 491, 492, -1, 494, -1, 496, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 506, 507, -1, + -1, -1, 3, -1, 5, 6, 515, 8, 9, 10, + 11, 12, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, + -1, 32, 33, 34, -1, -1, -1, -1, 39, -1, + -1, 42, 43, 44, -1, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, -1, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, -1, 75, 76, 77, 78, 79, -1, + 81, -1, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, + 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, -1, 124, 125, 126, 127, 128, 129, 130, + -1, 132, 133, 134, 135, -1, -1, 138, 139, 140, + 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, 163, -1, 165, 166, 167, 168, 169, -1, + 171, -1, 173, 174, 175, -1, 177, 178, 179, 180, + 181, -1, 183, 184, -1, 186, 187, 188, -1, 190, + 191, 192, 193, 194, 195, 196, 197, 198, 199, -1, + 201, 202, 203, 204, 205, 206, 207, 208, -1, 210, + 211, 212, 213, 214, 215, 216, 217, 218, -1, 220, + -1, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, 233, 234, 235, 236, 237, -1, -1, 240, + 241, 242, 243, 244, -1, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, + 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, -1, 295, 296, -1, -1, 299, 300, + 301, -1, -1, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + -1, 322, 323, 324, 325, 326, 327, 328, 329, -1, + 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, + 341, 342, 343, 344, 345, -1, 347, 348, 349, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, -1, + 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, + 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, + 391, 392, 393, 394, 395, 396, -1, 398, 399, 400, + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, + 411, 412, -1, 414, 415, 416, 417, 418, 419, 420, + 421, 422, 423, 424, -1, 426, 427, 428, -1, -1, + 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, -1, 446, 447, 448, 449, 450, + 451, 452, -1, 454, 455, 456, 457, 458, 459, 460, + -1, 462, 463, 464, 465, 466, 467, -1, -1, 470, + -1, 472, 473, 474, 475, 476, 477, 478, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, + 491, 492, -1, 494, -1, 496, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 506, 507, -1, -1, -1, + 3, -1, 5, 6, 515, 8, 9, 10, 11, 12, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, 30, -1, 32, + 33, 34, -1, -1, -1, -1, 39, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, 81, -1, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, 239, 240, 241, 242, + 243, 244, -1, 246, 247, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, -1, 295, 296, -1, -1, 299, 300, 301, -1, + -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, -1, 381, 382, + 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, 416, -1, 418, 419, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, 430, 431, 432, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, -1, 446, 447, 448, 449, 450, 451, 452, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + 463, 464, 465, 466, 467, -1, -1, 470, -1, -1, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + -1, 494, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 506, 507, -1, -1, -1, 3, -1, + 5, 6, 515, 8, 9, 10, 11, 12, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + -1, -1, -1, 38, 39, -1, -1, 42, 43, 44, + -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, -1, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, -1, + 75, 76, 77, 78, 79, -1, 81, -1, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, -1, 94, + 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, -1, 124, + 125, 126, 127, 128, 129, 130, -1, 132, 133, 134, + 135, -1, -1, 138, 139, 140, 141, 142, -1, 144, + 145, 146, -1, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, -1, 171, -1, 173, 174, + 175, -1, 177, 178, 179, 180, 181, -1, 183, 184, + -1, 186, 187, 188, -1, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, -1, 201, 202, 203, 204, + 205, 206, 207, 208, -1, 210, 211, 212, 213, 214, + 215, 216, 217, 218, -1, 220, -1, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, -1, -1, 240, 241, 242, 243, 244, + -1, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, -1, + 295, 296, -1, -1, 299, 300, 301, -1, -1, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, + 325, 326, 327, 328, 329, -1, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, -1, 361, 362, 363, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, + 375, 376, 377, 378, 379, -1, 381, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, + 415, 416, -1, 418, 419, 420, 421, 422, 423, 424, + -1, 426, 427, 428, -1, -1, 431, 432, 433, 434, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + -1, 446, 447, 448, 449, 450, 451, 452, -1, 454, + 455, 456, 457, 458, 459, 460, -1, 462, 463, 464, + 465, 466, 467, -1, -1, 470, -1, -1, 473, 474, + 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 490, 491, 492, -1, 494, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 506, 507, -1, -1, -1, 3, -1, 5, 6, + 515, 8, 9, 10, 11, 12, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, + -1, 38, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, -1, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, -1, 124, 125, 126, + 127, 128, 129, 130, -1, 132, 133, 134, 135, -1, + -1, 138, 139, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, -1, 171, -1, 173, 174, 175, -1, + 177, 178, 179, 180, 181, -1, 183, 184, -1, 186, + 187, 188, -1, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, -1, 201, 202, 203, 204, 205, 206, + 207, 208, -1, 210, 211, 212, 213, 214, 215, 216, + 217, 218, -1, 220, -1, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, -1, -1, 240, 241, 242, 243, 244, -1, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, -1, 295, 296, + -1, -1, 299, 300, 301, -1, -1, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, + 327, 328, 329, -1, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, -1, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, -1, 361, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, -1, 381, 382, 383, 384, 385, 386, + 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, -1, 414, 415, 416, + -1, 418, 419, 420, 421, 422, 423, 424, -1, 426, + 427, 428, -1, -1, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, -1, 446, + 447, 448, 449, 450, 451, 452, -1, 454, 455, 456, + 457, 458, 459, 460, -1, 462, 463, 464, 465, 466, + 467, -1, -1, 470, -1, -1, 473, 474, 475, 476, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, -1, 494, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 506, + 507, -1, -1, -1, 3, -1, 5, 6, 515, 8, + 9, 10, 11, 12, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, + 29, 30, -1, 32, 33, 34, -1, -1, -1, -1, + 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + -1, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, + 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, + 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, -1, 124, 125, 126, 127, 128, + 129, 130, -1, 132, 133, 134, 135, -1, -1, 138, + 139, 140, 141, 142, -1, 144, 145, 146, -1, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, -1, 171, -1, 173, 174, 175, -1, 177, 178, + 179, 180, 181, -1, 183, 184, -1, 186, 187, 188, + -1, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, -1, 201, 202, 203, 204, 205, 206, 207, 208, + -1, 210, 211, 212, 213, 214, 215, 216, 217, 218, + -1, 220, -1, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, 233, 234, 235, 236, 237, -1, + -1, 240, 241, 242, 243, 244, -1, 246, 247, 248, + 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, -1, 295, 296, -1, -1, + 299, 300, 301, -1, -1, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, + 329, -1, 331, 332, 333, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, -1, 347, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, -1, 361, 362, 363, 364, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, -1, 381, 382, 383, 384, 385, 386, 387, 388, + 389, 390, 391, 392, 393, 394, 395, 396, -1, 398, + 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, -1, 414, 415, 416, -1, 418, + 419, 420, 421, 422, 423, 424, -1, 426, 427, 428, + -1, -1, 431, 432, 433, 434, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, -1, 446, 447, 448, + 449, 450, 451, 452, -1, 454, 455, 456, 457, 458, + 459, 460, -1, 462, 463, 464, 465, 466, 467, -1, + -1, 470, -1, -1, 473, 474, 475, 476, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 490, 491, 492, -1, 494, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 506, 507, -1, + -1, -1, -1, -1, 513, 514, 515, 3, -1, 5, + 6, -1, 8, 9, 10, 11, 12, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, 39, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, 175, + -1, 177, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, 242, 243, 244, -1, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + 416, -1, 418, 419, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, 433, 434, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, -1, + 446, 447, 448, 449, 450, 451, 452, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, 463, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, 494, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 506, 507, 508, -1, -1, 3, -1, 5, 6, 515, + 8, 9, 10, 11, 12, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, + -1, 39, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, -1, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, -1, 124, 125, 126, 127, + 128, 129, 130, -1, 132, 133, 134, 135, -1, -1, + 138, 139, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, -1, 171, -1, 173, 174, 175, -1, 177, + 178, 179, 180, 181, -1, 183, 184, -1, 186, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, 201, 202, 203, 204, 205, 206, 207, + 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, + 218, -1, 220, -1, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + -1, -1, 240, 241, 242, 243, 244, -1, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, -1, 295, 296, -1, + -1, 299, 300, 301, -1, -1, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, + 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, -1, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, -1, 361, 362, 363, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, -1, 381, 382, 383, 384, 385, 386, 387, + 388, 389, 390, 391, 392, 393, 394, 395, 396, -1, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, -1, 414, 415, 416, -1, + 418, 419, 420, 421, 422, 423, 424, -1, 426, 427, + 428, -1, -1, 431, 432, 433, 434, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, -1, 446, 447, + 448, 449, 450, 451, 452, -1, 454, 455, 456, 457, + 458, 459, 460, -1, 462, 463, 464, 465, 466, 467, + -1, -1, 470, -1, -1, 473, 474, 475, 476, 477, + 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, -1, 494, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 506, 507, + -1, -1, -1, 3, -1, 5, 6, 515, 8, 9, + 10, 11, 12, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, -1, -1, -1, -1, 39, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, 184, -1, 186, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, -1, -1, + 240, 241, 242, 243, 244, -1, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, 386, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, -1, 414, 415, 416, -1, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, 433, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, -1, 446, 447, 448, 449, + 450, 451, 452, -1, 454, 455, 456, 457, 458, 459, + 460, -1, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, 479, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, -1, 494, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 506, 507, -1, -1, + -1, 3, -1, 5, 6, 515, 8, 9, 10, 11, + 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, 416, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, -1, 446, 447, 448, 449, 450, 451, + 452, -1, 454, 455, 456, 457, 458, 459, 460, 461, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, -1, 494, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 506, 507, -1, -1, -1, 3, + -1, 5, 6, 515, 8, 9, 10, 11, 12, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 32, 33, + 34, -1, -1, -1, -1, 39, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, -1, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, + 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, -1, + 124, 125, 126, 127, 128, 129, 130, -1, 132, 133, + 134, 135, -1, -1, 138, 139, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, -1, 171, -1, 173, + 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, + 184, -1, 186, 187, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, 201, 202, 203, + 204, 205, 206, 207, 208, -1, 210, 211, 212, 213, + 214, 215, 216, 217, 218, -1, 220, -1, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, -1, -1, 240, 241, 242, 243, + 244, -1, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + -1, 295, 296, -1, -1, 299, 300, 301, -1, -1, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, + 324, 325, 326, 327, 328, 329, -1, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, -1, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, -1, 361, 362, 363, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, -1, 381, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, + 394, 395, 396, -1, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, + 414, 415, 416, -1, 418, 419, 420, 421, 422, 423, + 424, -1, 426, 427, 428, -1, -1, 431, 432, 433, + 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, -1, 446, 447, 448, 449, 450, 451, 452, -1, + 454, 455, 456, 457, 458, 459, 460, -1, 462, 463, + 464, 465, 466, 467, -1, -1, 470, -1, -1, 473, + 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 490, 491, 492, -1, + 494, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 506, 507, -1, -1, -1, 3, -1, 5, + 6, 515, 8, 9, 10, 11, 12, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, 39, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, 175, + -1, 177, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, 242, 243, 244, -1, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + 416, -1, 418, 419, 420, 421, 422, 423, 424, -1, + 426, 427, 428, 429, -1, 431, 432, 433, 434, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, -1, + 446, 447, 448, 449, 450, 451, 452, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, 463, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, 494, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 506, 507, -1, -1, -1, 3, -1, 5, 6, 515, + 8, 9, 10, 11, 12, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, + 28, 29, 30, -1, 32, 33, 34, -1, -1, -1, + -1, 39, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, -1, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, -1, 124, 125, 126, 127, + 128, 129, 130, -1, 132, 133, 134, 135, -1, -1, + 138, 139, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, -1, 171, -1, 173, 174, 175, -1, 177, + 178, 179, 180, 181, -1, 183, 184, -1, 186, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, 201, 202, 203, 204, 205, 206, 207, + 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, + 218, -1, 220, -1, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + -1, -1, 240, 241, 242, 243, 244, -1, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, -1, 295, 296, -1, + -1, 299, 300, 301, -1, -1, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, + 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, -1, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, -1, 361, 362, 363, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, -1, 381, 382, 383, 384, 385, 386, 387, + 388, 389, 390, 391, 392, 393, 394, 395, 396, -1, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, -1, 414, 415, 416, -1, + 418, 419, 420, 421, 422, 423, 424, -1, 426, 427, + 428, -1, -1, 431, 432, 433, 434, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, -1, 446, 447, + 448, 449, 450, 451, 452, -1, 454, 455, 456, 457, + 458, 459, 460, -1, 462, 463, 464, 465, 466, 467, + -1, -1, 470, -1, -1, 473, 474, 475, 476, 477, + 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, -1, 494, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 506, 507, + -1, -1, -1, 3, -1, 5, 6, 515, 8, 9, + 10, 11, 12, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, -1, -1, -1, -1, 39, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, 184, -1, 186, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, -1, -1, + 240, 241, 242, 243, 244, -1, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, 386, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, -1, 414, 415, 416, -1, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, 433, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, -1, 446, 447, 448, 449, + 450, 451, 452, -1, 454, 455, 456, 457, 458, 459, + 460, -1, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, 479, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, -1, 494, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 506, 507, -1, -1, + -1, 3, -1, 5, 6, 515, 8, 9, 10, 11, + 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, 416, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, -1, 446, 447, 448, 449, 450, 451, + 452, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, -1, 494, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 506, 507, -1, -1, -1, 3, + -1, 5, 6, 515, 8, 9, 10, 11, 12, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 32, 33, + 34, -1, -1, -1, -1, 39, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, -1, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, + 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, -1, + 124, 125, 126, 127, 128, 129, 130, -1, 132, 133, + 134, 135, -1, -1, 138, 139, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, -1, 171, -1, 173, + 174, 175, -1, 177, 178, 179, 180, 181, -1, 183, + 184, -1, 186, 187, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, 201, 202, 203, + 204, 205, 206, 207, 208, -1, 210, 211, 212, 213, + 214, 215, 216, 217, 218, -1, 220, -1, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, -1, -1, 240, 241, 242, 243, + 244, -1, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + -1, 295, 296, -1, -1, 299, 300, 301, -1, -1, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, + 324, 325, 326, 327, 328, 329, -1, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, -1, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, -1, 361, 362, 363, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, -1, 381, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, + 394, 395, 396, -1, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, + 414, 415, 416, -1, 418, 419, 420, 421, 422, 423, + 424, -1, 426, 427, 428, -1, -1, 431, 432, 433, + 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, -1, 446, 447, 448, 449, 450, 451, 452, -1, + 454, 455, 456, 457, 458, 459, 460, -1, 462, 463, + 464, 465, 466, 467, -1, -1, 470, -1, -1, 473, + 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 490, 491, 492, -1, + 494, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 506, 507, -1, -1, -1, 3, -1, 5, + 6, 515, 8, 9, 10, 11, 12, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, 39, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, 175, + -1, 177, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, 242, 243, 244, -1, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + 416, -1, 418, 419, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, 433, 434, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, -1, + 446, 447, 448, 449, 450, 451, 452, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, 463, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, 494, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 506, 507, -1, -1, -1, 3, -1, 5, 6, 515, + 8, 9, 10, 11, 12, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, + 28, 29, 30, -1, 32, 33, 34, -1, -1, -1, + -1, 39, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, -1, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, -1, 124, 125, 126, 127, + 128, 129, 130, -1, 132, 133, 134, 135, -1, -1, + 138, 139, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, -1, 171, -1, 173, 174, 175, -1, 177, + 178, 179, 180, 181, -1, 183, 184, -1, 186, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, 201, 202, 203, 204, 205, 206, 207, + 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, + 218, -1, 220, -1, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + -1, -1, 240, 241, 242, 243, 244, -1, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, -1, 295, 296, -1, + -1, 299, 300, 301, -1, -1, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, + 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, -1, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, -1, 361, 362, 363, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, -1, 381, 382, 383, 384, 385, 386, 387, + 388, 389, 390, 391, 392, 393, 394, 395, 396, -1, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, -1, 414, 415, 416, -1, + 418, 419, 420, 421, 422, 423, 424, -1, 426, 427, + 428, -1, -1, 431, 432, 433, 434, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, -1, 446, 447, + 448, 449, 450, 451, 452, -1, 454, 455, 456, 457, + 458, 459, 460, -1, 462, 463, 464, 465, 466, 467, + -1, -1, 470, -1, -1, 473, 474, 475, 476, 477, + 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, -1, 494, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 506, 507, + -1, -1, -1, 3, -1, 5, 6, 515, 8, 9, + 10, 11, 12, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, -1, -1, -1, -1, 39, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, 184, -1, 186, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, -1, -1, + 240, 241, 242, 243, 244, -1, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, 386, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, -1, 414, 415, 416, -1, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, 433, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, -1, 446, 447, 448, 449, + 450, 451, 452, -1, 454, 455, 456, 457, 458, 459, + 460, -1, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, 479, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, -1, 494, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 506, 507, -1, -1, + -1, 3, -1, 5, 6, 515, 8, 9, 10, 11, + 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, 416, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, -1, 446, 447, 448, 449, 450, 451, + 452, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, -1, 494, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 506, 507, -1, -1, -1, 3, + -1, 5, 6, 515, 8, 9, 10, 11, 12, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 32, 33, + 34, -1, -1, -1, -1, 39, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, -1, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, + 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, -1, + 124, 125, 126, 127, 128, 129, 130, -1, 132, 133, + 134, 135, -1, -1, 138, 139, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, -1, 171, -1, 173, + 174, 175, -1, 177, 178, 179, 180, 181, -1, 183, + 184, -1, 186, 187, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, 201, 202, 203, + 204, 205, 206, 207, 208, -1, 210, 211, 212, 213, + 214, 215, 216, 217, 218, -1, 220, -1, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, -1, -1, 240, 241, 242, 243, + 244, -1, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + -1, 295, 296, -1, -1, 299, 300, 301, -1, -1, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, + 324, 325, 326, 327, 328, 329, -1, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, -1, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, -1, 361, 362, 363, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, -1, 381, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, + 394, 395, 396, -1, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, + 414, 415, 416, -1, 418, 419, 420, 421, 422, 423, + 424, -1, 426, 427, 428, -1, -1, 431, 432, 433, + 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, -1, 446, 447, 448, 449, 450, 451, 452, -1, + 454, 455, 456, 457, 458, 459, 460, -1, 462, 463, + 464, 465, 466, 467, -1, -1, 470, -1, -1, 473, + 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 490, 491, 492, -1, + 494, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 506, 507, -1, -1, -1, 3, -1, 5, + 6, 515, 8, 9, 10, 11, 12, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, 39, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, 175, + -1, 177, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, 242, 243, 244, -1, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, -1, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + 416, -1, 418, 419, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, 433, 434, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, -1, + -1, 447, 448, 449, 450, 451, 452, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, 463, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 506, 507, -1, -1, -1, 3, -1, 5, 6, 515, + 8, 9, 10, 11, 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, + 28, 29, 30, -1, 32, 33, 34, -1, -1, -1, + -1, 39, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, -1, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, -1, 124, 125, 126, 127, + 128, 129, 130, -1, 132, 133, 134, 135, -1, -1, + 138, 139, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, -1, 171, -1, 173, 174, 175, -1, 177, + 178, 179, 180, 181, -1, 183, 184, -1, 186, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, 201, 202, 203, 204, 205, 206, 207, + 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, + 218, -1, 220, -1, 222, -1, -1, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + -1, -1, 240, 241, 242, 243, 244, -1, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, 282, 283, 284, -1, 286, 287, + 288, 289, 290, 291, 292, 293, -1, 295, 296, -1, + -1, 299, 300, 301, -1, -1, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, + 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, -1, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, -1, 361, 362, 363, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, -1, 381, 382, 383, 384, 385, 386, 387, + 388, 389, 390, 391, 392, 393, 394, 395, 396, -1, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, -1, 414, 415, 416, -1, + 418, 419, 420, 421, 422, 423, 424, -1, 426, 427, + 428, -1, -1, 431, 432, 433, 434, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, -1, 446, 447, + 448, 449, 450, 451, 452, -1, 454, 455, 456, 457, + 458, 459, 460, -1, 462, 463, 464, 465, 466, 467, + -1, -1, 470, -1, -1, 473, 474, 475, 476, 477, + 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, -1, 494, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 506, 507, + -1, -1, -1, 3, -1, 5, 6, 515, 8, 9, + 10, 11, 12, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, -1, -1, -1, -1, 39, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, -1, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, 184, -1, 186, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, -1, -1, + 240, 241, 242, 243, 244, -1, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, -1, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, 386, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, -1, 414, 415, 416, -1, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, 433, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, -1, -1, 447, 448, 449, + 450, 451, 452, -1, 454, 455, 456, 457, 458, 459, + 460, -1, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, 479, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 506, 507, 3, -1, + 5, 6, -1, 8, 9, 515, 11, 12, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, + 25, 26, 27, 28, 29, 30, -1, 32, 33, 34, + -1, -1, -1, -1, 39, -1, -1, 42, 43, 44, + -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, -1, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, -1, + 75, 76, 77, 78, 79, -1, 81, -1, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, -1, 94, + 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, -1, 122, -1, 124, + 125, 126, 127, 128, 129, 130, -1, 132, 133, 134, + 135, -1, -1, 138, 139, 140, 141, 142, -1, 144, + 145, 146, -1, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, -1, 171, -1, 173, 174, + 175, -1, 177, 178, 179, 180, 181, -1, 183, 184, + -1, 186, 187, 188, -1, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, -1, 201, 202, 203, 204, + 205, 206, 207, 208, -1, 210, 211, 212, 213, 214, + 215, 216, 217, 218, -1, 220, -1, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, -1, -1, 240, 241, 242, 243, 244, + -1, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, -1, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, -1, + 295, 296, -1, -1, 299, 300, 301, -1, -1, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, + 325, 326, 327, 328, 329, -1, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, -1, 361, 362, 363, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, + 375, 376, 377, 378, 379, -1, 381, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, + 395, 396, -1, 398, 399, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, + 415, 416, -1, 418, 419, 420, 421, 422, 423, 424, + -1, 426, 427, 428, -1, -1, 431, 432, 433, 434, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + -1, -1, 447, 448, 449, 450, 451, 452, -1, 454, + 455, 456, 457, 458, 459, 460, -1, 462, 463, 464, + 465, 466, 467, -1, -1, 470, -1, -1, 473, 474, + 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 490, 491, 492, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 506, 507, 3, -1, 5, 6, -1, 8, 9, + 515, 11, 12, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, -1, -1, -1, -1, 39, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, -1, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, 184, -1, 186, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, -1, -1, + 240, 241, 242, 243, 244, -1, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, -1, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, 386, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, -1, 414, 415, 416, -1, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, 433, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, -1, -1, 447, 448, 449, + 450, 451, 452, -1, 454, 455, 456, 457, 458, 459, + 460, -1, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, 479, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, -1, -1, -1, -1, 3, -1, 5, + 6, -1, 8, 9, -1, 11, 12, -1, -1, -1, + -1, -1, -1, -1, -1, 515, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, 39, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, -1, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, 175, + -1, 177, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, 242, 243, 244, -1, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, -1, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + 416, -1, 418, 419, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, 433, 434, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, -1, + -1, 447, 448, 449, 450, 451, 452, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, 463, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, -1, -1, + -1, 3, -1, 5, 6, -1, 8, 9, -1, 11, + 12, -1, -1, -1, -1, -1, -1, -1, -1, 515, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, 416, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + 452, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, -1, -1, -1, -1, 3, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 515, 22, 23, 24, 25, 26, 27, + 28, 29, 30, -1, 32, 33, 34, -1, -1, -1, + -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, -1, 60, 61, 62, 63, 64, 65, 66, -1, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, -1, 122, -1, 124, 125, 126, 127, + 128, 129, 130, -1, 132, 133, 134, 135, -1, -1, + 138, 139, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, 163, -1, 165, 166, 167, + 168, 169, -1, 171, -1, 173, 174, 175, -1, 177, + 178, 179, 180, 181, -1, 183, 184, -1, 186, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, 201, 202, 203, 204, 205, 206, 207, + 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, + 218, -1, 220, -1, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + 238, -1, 240, 241, 242, 243, 244, -1, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, -1, 283, 284, 285, 286, -1, + 288, 289, 290, 291, 292, 293, -1, 295, 296, -1, + 298, 299, 300, 301, -1, -1, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, + 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, -1, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, -1, 361, 362, 363, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, + 388, 389, 390, 391, 392, 393, 394, 395, 396, -1, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, -1, 414, 415, 416, 417, + 418, 419, 420, 421, 422, 423, 424, -1, 426, 427, + 428, -1, -1, 431, 432, 433, 434, 435, -1, 437, + 438, 439, 440, 441, 442, 443, 444, -1, -1, 447, + 448, 449, 450, 451, 452, -1, 454, 455, 456, 457, + 458, 459, 460, -1, 462, 463, 464, 465, 466, 467, + -1, -1, 470, -1, 472, 473, 474, 475, 476, 477, + 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, -1, -1, -1, 496, 3, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 515, 22, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 32, 33, + 34, -1, -1, -1, -1, -1, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, -1, 60, 61, 62, 63, + 64, 65, 66, -1, 68, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, + 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, -1, 122, -1, + 124, 125, 126, 127, 128, 129, 130, -1, 132, 133, + 134, 135, -1, -1, 138, 139, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, + -1, 165, 166, 167, 168, 169, -1, 171, -1, 173, + 174, 175, -1, 177, 178, 179, 180, 181, -1, 183, + 184, -1, 186, 187, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, 201, 202, 203, + 204, 205, 206, 207, 208, -1, 210, 211, 212, 213, + 214, 215, 216, 217, 218, -1, 220, -1, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, 238, -1, 240, 241, 242, 243, + 244, -1, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, -1, 283, + 284, 285, 286, -1, 288, 289, 290, 291, 292, 293, + -1, 295, 296, -1, 298, 299, 300, 301, -1, -1, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, + 324, 325, 326, 327, 328, 329, -1, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, -1, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, -1, 361, 362, 363, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, -1, 381, 382, 383, + 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, + 394, 395, 396, -1, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, + 414, 415, 416, -1, 418, 419, 420, 421, 422, 423, + 424, -1, 426, 427, 428, -1, -1, 431, 432, 433, + 434, 435, -1, 437, 438, 439, 440, 441, 442, 443, + 444, -1, -1, 447, 448, 449, 450, 451, 452, -1, + 454, 455, 456, 457, 458, 459, 460, -1, 462, 463, + 464, 465, 466, 467, -1, -1, 470, -1, -1, 473, + 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 490, 491, 492, -1, + -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 515, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, -1, -1, -1, -1, -1, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, -1, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, -1, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, 184, -1, 186, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, -1, -1, + 240, 241, 242, 243, 244, -1, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, -1, 283, 284, 285, 286, -1, 288, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, 386, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, -1, 414, 415, 416, -1, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, 433, 434, 435, -1, 437, 438, 439, + 440, 441, 442, 443, 444, -1, -1, 447, 448, 449, + 450, 451, 452, -1, 454, 455, 456, 457, 458, 459, + 460, -1, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, 479, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, -1, -1, -1, -1, 3, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 515, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, -1, 68, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, -1, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, 175, + -1, 177, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, 242, 243, 244, -1, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, -1, 283, 284, 285, + 286, -1, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + 416, -1, 418, 419, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, 433, 434, 435, + -1, 437, 438, 439, 440, 441, 442, 443, 444, -1, + -1, 447, 448, 449, 450, 451, 452, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, 463, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, -1, -1, + -1, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 515, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, 416, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + 452, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, -1, -1, -1, -1, 3, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 515, 22, 23, 24, 25, 26, 27, + 28, 29, 30, -1, 32, 33, 34, -1, -1, -1, + -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, -1, 60, 61, 62, 63, 64, 65, 66, -1, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, -1, 122, -1, 124, 125, 126, 127, + 128, 129, 130, -1, 132, 133, 134, 135, -1, -1, + 138, 139, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, 163, -1, 165, 166, 167, + 168, 169, -1, 171, -1, 173, 174, 175, -1, 177, + 178, 179, 180, 181, -1, 183, 184, -1, 186, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, 201, 202, 203, 204, 205, 206, 207, + 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, + 218, -1, 220, -1, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + -1, -1, 240, 241, 242, 243, 244, -1, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, -1, 283, 284, 285, 286, -1, + 288, 289, 290, 291, 292, 293, -1, 295, 296, -1, + -1, 299, 300, 301, -1, -1, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, + 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, -1, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, -1, 361, 362, 363, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, -1, 381, 382, 383, 384, 385, 386, 387, + 388, 389, 390, 391, 392, 393, 394, 395, 396, -1, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, -1, 414, 415, 416, -1, + 418, 419, 420, 421, 422, 423, 424, -1, 426, 427, + 428, -1, -1, 431, 432, 433, 434, 435, -1, 437, + 438, 439, 440, 441, 442, 443, 444, -1, -1, 447, + 448, 449, 450, 451, 452, -1, 454, 455, 456, 457, + 458, 459, 460, -1, 462, 463, 464, 465, 466, 467, + -1, -1, 470, -1, -1, 473, 474, 475, 476, 477, + 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, -1, -1, -1, -1, 3, + -1, 5, 6, -1, -1, -1, -1, 11, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 515, 22, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 32, 33, + 34, -1, -1, -1, -1, -1, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, -1, 60, 61, 62, 63, + 64, 65, 66, -1, -1, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, + 104, -1, -1, -1, 108, -1, -1, -1, 112, 113, + 114, 115, 116, 117, 118, 119, 120, -1, 122, -1, + 124, 125, 126, 127, 128, 129, 130, -1, 132, 133, + 134, 135, -1, -1, 138, 139, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, -1, 171, -1, 173, + 174, 175, -1, 177, 178, 179, 180, 181, -1, 183, + 184, -1, 186, 187, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, 201, 202, 203, + 204, 205, 206, 207, 208, -1, 210, 211, 212, 213, + 214, 215, 216, 217, 218, -1, 220, -1, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, -1, -1, 240, 241, 242, 243, + 244, -1, 246, 247, 248, -1, -1, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, -1, 283, + 284, 285, 286, -1, 288, 289, 290, 291, 292, 293, + -1, 295, 296, 297, -1, 299, 300, 301, -1, -1, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, + 324, 325, 326, 327, 328, 329, -1, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, -1, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, -1, 361, 362, 363, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, -1, 381, 382, 383, + 384, 385, -1, 387, 388, 389, 390, 391, 392, 393, + 394, 395, 396, -1, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, + 414, 415, -1, -1, 418, 419, 420, 421, 422, 423, + 424, -1, 426, 427, 428, -1, -1, 431, 432, 433, + 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, -1, -1, 447, 448, 449, 450, 451, -1, -1, + 454, 455, 456, 457, 458, 459, 460, -1, 462, 463, + 464, 465, 466, 467, -1, -1, 470, -1, -1, 473, + 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 490, 491, 492, -1, + -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, + -1, -1, 506, 507, 508, -1, -1, -1, -1, -1, + -1, 515, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, 35, 36, -1, -1, -1, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, -1, -1, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, -1, -1, -1, 108, -1, + -1, -1, 112, 113, 114, 115, 116, 117, 118, 119, + 120, -1, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, 184, -1, 186, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, -1, -1, + 240, 241, 242, 243, 244, -1, 246, 247, 248, -1, + -1, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, -1, 283, 284, 285, 286, -1, 288, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + 380, 381, 382, 383, 384, 385, -1, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, -1, 414, 415, -1, 417, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, 433, 434, 435, -1, 437, 438, 439, + 440, 441, 442, 443, 444, -1, -1, 447, 448, 449, + 450, 451, -1, -1, 454, 455, 456, 457, 458, 459, + 460, -1, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, 472, 473, 474, 475, 476, 477, 478, 479, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, 493, -1, -1, 496, 3, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 515, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, -1, -1, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, -1, + -1, -1, 108, -1, -1, -1, 112, 113, 114, 115, + 116, 117, 118, 119, 120, -1, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, 175, + -1, 177, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, 242, 243, 244, -1, + 246, 247, 248, -1, -1, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, -1, 283, 284, 285, + 286, -1, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + -1, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + -1, -1, 418, 419, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, 433, 434, 435, + -1, 437, 438, 439, 440, 441, 442, 443, 444, -1, + -1, 447, 448, 449, 450, 451, -1, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, 463, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, -1, -1, + -1, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 515, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, 417, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, -1, -1, -1, 496, 3, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 515, 22, 23, 24, 25, 26, 27, + 28, 29, 30, -1, 32, 33, 34, -1, -1, -1, + -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, -1, 51, 52, 53, 54, 55, -1, 57, + 58, -1, 60, 61, 62, 63, 64, 65, 66, -1, + -1, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, -1, -1, 83, 84, 85, 86, 87, + 88, -1, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, -1, 102, 103, 104, -1, -1, -1, + 108, -1, -1, -1, 112, 113, 114, 115, 116, 117, + 118, 119, 120, -1, 122, -1, 124, 125, 126, 127, + 128, 129, 130, -1, 132, 133, 134, 135, -1, -1, + 138, 139, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, 163, -1, 165, 166, 167, + 168, 169, -1, 171, -1, 173, 174, -1, -1, -1, + 178, 179, 180, 181, -1, 183, 184, -1, 186, 187, + 188, -1, 190, 191, 192, 193, 194, -1, 196, 197, + 198, 199, -1, 201, 202, 203, 204, 205, 206, 207, + 208, -1, 210, -1, 212, 213, 214, 215, 216, 217, + 218, -1, 220, -1, 222, -1, -1, 225, -1, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + -1, -1, 240, 241, -1, 243, -1, -1, 246, 247, + 248, -1, -1, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, -1, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, -1, 283, 284, -1, 286, -1, + 288, 289, 290, 291, 292, 293, -1, 295, 296, -1, + 298, 299, 300, 301, -1, -1, 304, 305, 306, -1, + 308, -1, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, + 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, -1, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, -1, 361, 362, -1, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, -1, 381, 382, 383, 384, 385, -1, 387, + 388, 389, 390, 391, -1, 393, 394, 395, 396, -1, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, -1, 414, 415, -1, 417, + 418, -1, 420, 421, 422, 423, 424, -1, 426, 427, + 428, -1, -1, 431, 432, 433, 434, 435, -1, 437, + 438, 439, 440, 441, 442, 443, 444, -1, -1, 447, + 448, 449, 450, 451, -1, -1, 454, 455, 456, 457, + 458, 459, 460, -1, 462, -1, 464, 465, 466, 467, + -1, -1, 470, -1, -1, 473, 474, 475, 476, 477, + 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, -1, -1, -1, -1, 3, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 515, 22, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 32, 33, + 34, -1, -1, -1, -1, -1, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, -1, 51, 52, 53, + 54, 55, -1, 57, 58, -1, 60, 61, 62, 63, + 64, 65, 66, -1, -1, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, 79, -1, -1, -1, 83, + 84, 85, 86, 87, 88, -1, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, -1, 102, 103, + 104, -1, -1, -1, -1, -1, -1, -1, 112, 113, + 114, 115, 116, 117, 118, 119, 120, -1, 122, -1, + 124, 125, 126, 127, 128, 129, 130, -1, 132, 133, + 134, 135, -1, -1, 138, 139, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, + -1, 165, 166, 167, 168, 169, -1, 171, -1, 173, + 174, -1, -1, -1, 178, 179, 180, 181, -1, 183, + 184, -1, 186, 187, 188, -1, 190, 191, 192, 193, + 194, -1, 196, 197, 198, 199, -1, 201, 202, 203, + 204, 205, 206, 207, 208, -1, 210, -1, 212, 213, + 214, 215, 216, 217, 218, -1, 220, -1, 222, -1, + -1, 225, -1, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, -1, -1, 240, 241, -1, 243, + -1, -1, 246, 247, 248, -1, -1, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, -1, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, -1, 283, + 284, -1, 286, -1, 288, 289, 290, 291, 292, 293, + -1, 295, 296, -1, -1, 299, 300, 301, -1, -1, + 304, 305, 306, -1, 308, -1, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, + 324, 325, 326, 327, 328, 329, -1, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, -1, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, -1, 361, 362, -1, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, -1, 381, 382, 383, + 384, 385, -1, 387, 388, 389, 390, 391, -1, 393, + 394, 395, 396, -1, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, + 414, 415, -1, -1, 418, -1, 420, 421, 422, 423, + 424, -1, 426, 427, 428, -1, -1, 431, 432, 433, + 434, 435, -1, 437, 438, 439, 440, 441, 442, 443, + 444, -1, -1, 447, 448, 449, 450, 451, -1, -1, + 454, 455, 456, 457, 458, 459, 460, -1, 462, -1, + 464, 465, 466, 467, -1, -1, 470, -1, -1, 473, + 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 490, 491, 492, -1, + -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 515, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, -1, -1, -1, -1, -1, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + -1, 51, 52, 53, 54, 55, -1, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, -1, -1, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, -1, -1, 83, 84, 85, 86, 87, 88, -1, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, -1, 102, 103, 104, -1, -1, -1, -1, -1, + -1, -1, 112, 113, 114, 115, 116, 117, 118, 119, + 120, -1, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, -1, -1, -1, 178, 179, + 180, 181, -1, 183, 184, -1, 186, 187, 188, -1, + 190, 191, 192, 193, 194, -1, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, -1, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, -1, -1, 225, -1, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, -1, -1, + 240, 241, -1, 243, -1, -1, 246, 247, 248, -1, + -1, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + -1, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, -1, 283, 284, -1, 286, -1, 288, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, 306, -1, 308, -1, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, -1, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, -1, 387, 388, 389, + 390, 391, -1, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, -1, 414, 415, -1, -1, 418, -1, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, 433, 434, 435, -1, 437, 438, 439, + 440, 441, 442, 443, 444, -1, -1, 447, 448, 449, + 450, 451, -1, -1, 454, 455, 456, 457, 458, 459, + 460, -1, 462, -1, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, 479, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, -1, -1, -1, -1, 3, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 515, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, -1, 51, 52, 53, 54, 55, + -1, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, -1, -1, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, -1, -1, 83, 84, 85, + 86, 87, 88, -1, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, -1, 102, 103, 104, -1, + -1, -1, -1, -1, -1, -1, 112, 113, 114, 115, + 116, 117, 118, 119, 120, -1, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, -1, + -1, -1, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, -1, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, -1, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, -1, -1, 225, + -1, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, -1, 243, -1, -1, + 246, 247, 248, -1, -1, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, -1, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, -1, 283, 284, -1, + 286, -1, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, -1, 308, -1, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, -1, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + -1, 387, 388, 389, 390, 391, -1, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + -1, -1, 418, -1, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, 433, 434, 435, + -1, 437, 438, 439, 440, 441, 442, 443, 444, -1, + -1, 447, 448, 449, 450, 451, -1, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, -1, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, -1, -1, + -1, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 515, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, -1, -1, -1, -1, 3, -1, 5, 6, -1, + -1, -1, 10, 11, -1, -1, -1, -1, -1, 17, + 18, 19, -1, 515, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, -1, 55, 56, 57, + 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, -1, -1, 81, 82, 83, 84, 85, 86, 87, - -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, -1, -1, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, 171, 172, -1, -1, -1, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, -1, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - -1, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, -1, -1, 222, -1, 224, 225, 226, 227, - 228, -1, -1, 231, 232, -1, 234, -1, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, + 78, -1, 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 151, 152, 153, 154, 155, -1, 157, + 158, 159, 160, -1, 162, 163, 164, 165, 166, 167, + 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, + 178, 179, 180, 181, 182, 183, -1, 185, -1, 187, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, -1, 213, 214, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + -1, -1, -1, -1, 232, 233, 234, 235, 236, 237, + 238, 239, 240, -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, -1, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, -1, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - -1, 299, -1, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, -1, 281, 282, 283, 284, 285, 286, 287, + -1, 289, 290, 291, 292, 293, 294, 295, 296, 297, + 298, 299, 300, 301, 302, 303, 304, 305, -1, 307, + 308, 309, -1, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 323, -1, 325, -1, 327, + 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, -1, 355, 356, 357, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, -1, + 368, -1, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - -1, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, 435, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, -1, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, -1, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 430, 431, 432, -1, 434, -1, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, + 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, + 458, -1, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, + 478, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 490, 491, 492, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 3, -1, 5, 6, -1, -1, + -1, 10, 11, -1, -1, -1, -1, -1, 17, 18, + 19, -1, -1, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 53, -1, 55, 56, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, + -1, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, 171, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, 235, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 152, 153, 154, 155, -1, 157, 158, + 159, 160, -1, 162, 163, 164, 165, 166, 167, 168, + 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, + 179, 180, 181, 182, 183, -1, 185, -1, 187, 188, + 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, -1, 213, 214, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, -1, + -1, -1, -1, 232, 233, 234, 235, 236, 237, 238, + 239, 240, -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, + 279, -1, 281, 282, 283, 284, 285, 286, 287, -1, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 299, 300, 301, 302, 303, 304, 305, -1, 307, 308, + 309, -1, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 323, -1, 325, -1, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, + -1, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, 435, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, + 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, -1, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, -1, 434, -1, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, + 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, + -1, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 490, 491, 492, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 3, -1, -1, -1, -1, -1, -1, + 10, -1, -1, 13, -1, -1, -1, 17, 18, 19, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, 99, - -1, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - 180, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, + 30, 31, 32, 33, 34, 35, 36, 37, 38, -1, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, -1, -1, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, -1, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 163, -1, -1, 166, 167, 168, 169, + -1, 171, 172, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, 184, -1, 186, 187, 188, -1, + 190, 191, -1, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 244, -1, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, + 260, 261, -1, 263, 264, -1, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, -1, 295, 296, -1, 298, 299, + 300, 301, 302, -1, 304, 305, 306, 307, -1, -1, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 323, 324, 325, -1, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, -1, 379, + 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, + 420, 421, 422, 423, 424, 425, 426, 427, 428, -1, + 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, -1, 446, 447, 448, 449, + 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, + 460, 461, -1, 463, 464, 465, 466, 467, 468, -1, + 470, -1, -1, -1, -1, 475, 476, 477, 478, 479, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + -1, 491, 492, -1, 494, -1, -1, -1, -1, -1, + -1, -1, -1, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 3, -1, -1, -1, -1, -1, -1, 10, + -1, -1, -1, -1, -1, -1, 17, 18, 19, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, 99, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, 180, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, + -1, 32, 33, 34, -1, -1, -1, -1, -1, -1, + -1, 42, 43, 44, -1, 46, 47, 48, 49, -1, + 51, 52, 53, 54, 55, -1, 57, 58, -1, 60, + 61, 62, 63, 64, 65, 66, -1, -1, 69, 70, + 71, 72, 73, -1, 75, 76, 77, 78, 79, -1, + -1, -1, 83, 84, 85, 86, 87, 88, -1, 90, + 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, + -1, 102, 103, 104, -1, -1, -1, -1, -1, -1, + -1, 112, 113, 114, 115, 116, 117, 118, 119, 120, + -1, 122, -1, 124, 125, 126, 127, 128, 129, 130, + -1, 132, 133, 134, 135, -1, -1, 138, 139, 140, + 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, 163, -1, 165, 166, 167, 168, 169, -1, + 171, -1, 173, 174, -1, -1, -1, 178, 179, 180, + 181, -1, 183, 184, -1, 186, 187, 188, -1, 190, + 191, 192, 193, 194, -1, 196, 197, 198, 199, -1, + 201, 202, 203, 204, 205, 206, 207, 208, -1, 210, + -1, 212, 213, 214, 215, 216, 217, 218, -1, 220, + -1, 222, -1, -1, 225, -1, 227, 228, 229, 230, + 231, 232, 233, 234, 235, 236, 237, -1, -1, 240, + 241, -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, + 261, 262, 263, 264, 265, 266, 267, 268, 269, -1, + 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, + 281, -1, 283, 284, -1, 286, -1, 288, 289, 290, + 291, 292, 293, -1, 295, 296, -1, -1, 299, 300, + 301, -1, -1, 304, 305, 306, -1, 308, -1, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + -1, 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, 171, - 172, -1, -1, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, 435, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, 99, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, + 341, 342, 343, 344, 345, -1, 347, 348, 349, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, -1, + 361, 362, -1, 364, 365, 366, 367, 368, 369, 370, + 371, 372, 373, 374, 375, 376, 377, 378, 379, -1, + 381, 382, 383, 384, 385, -1, 387, 388, 389, 390, + 391, -1, 393, 394, 395, 396, -1, 398, 399, 400, + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, + 411, 412, -1, 414, 415, -1, -1, 418, -1, 420, + 421, 422, 423, 424, -1, 426, 427, 428, -1, -1, + 431, 432, 433, 434, 435, -1, 437, 438, 439, 440, + 441, 442, 443, 444, -1, -1, 447, 448, 449, 450, + 451, -1, -1, 454, 455, 456, 457, 458, 459, 460, + -1, 462, -1, 464, 465, 466, 467, -1, -1, 470, + -1, -1, 473, 474, 475, 476, 477, 478, 479, 480, + 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, + 491, 492, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 3, -1, -1, -1, -1, -1, -1, 10, -1, + -1, -1, -1, -1, -1, 17, 18, 19, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 3, -1, -1, -1, -1, -1, -1, 10, -1, -1, + -1, -1, -1, -1, 17, 18, 19, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, 30, -1, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, -1, 51, 52, + 53, 54, 55, -1, 57, 58, -1, 60, 61, 62, + 63, 64, 65, 66, -1, -1, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, -1, -1, + 83, 84, 85, 86, 87, 88, -1, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, -1, 102, + 103, 104, -1, -1, -1, -1, -1, -1, -1, 112, + 113, 114, 115, 116, 117, 118, 119, 120, -1, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, -1, -1, -1, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, -1, 196, 197, 198, 199, -1, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, -1, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + -1, -1, 225, -1, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, -1, 240, 241, -1, + 243, -1, -1, 246, 247, 248, -1, -1, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, -1, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, -1, + 283, 284, -1, 286, -1, 288, 289, 290, 291, 292, + 293, -1, 295, 296, -1, -1, 299, 300, 301, -1, + -1, 304, 305, 306, -1, 308, -1, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + -1, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, -1, 381, 382, + 383, 384, 385, -1, 387, 388, 389, 390, 391, -1, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, -1, -1, 418, -1, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, -1, 431, 432, + 433, 434, 435, -1, 437, 438, 439, 440, 441, 442, + 443, 444, -1, -1, 447, 448, 449, 450, 451, -1, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + -1, 464, 465, 466, 467, -1, -1, 470, -1, -1, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, -1, 50, 51, 52, 53, - 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, -1, -1, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, -1, 101, 102, 103, - -1, -1, -1, 107, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, -1, - -1, -1, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, -1, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, -1, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, -1, -1, 222, -1, - 224, 225, 226, 227, 228, -1, -1, 231, 232, -1, - 234, -1, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, -1, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, -1, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, 289, 290, 291, 292, -1, - -1, 295, 296, 297, -1, 299, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 3, + -1, -1, -1, -1, -1, -1, 10, -1, -1, -1, + -1, -1, -1, 17, 18, 19, -1, -1, 22, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 32, 33, + 34, -1, -1, -1, -1, -1, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, -1, 51, 52, 53, + 54, 55, -1, 57, 58, -1, 60, 61, 62, 63, + 64, 65, 66, -1, -1, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, 79, -1, -1, -1, 83, + 84, 85, 86, 87, 88, -1, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, -1, 102, 103, + 104, -1, -1, -1, -1, -1, -1, -1, 112, 113, + 114, 115, 116, 117, 118, 119, 120, -1, 122, -1, + 124, 125, 126, 127, 128, 129, 130, -1, 132, 133, + 134, 135, -1, -1, 138, 139, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, + -1, 165, 166, 167, 168, 169, -1, 171, -1, 173, + 174, -1, -1, -1, 178, 179, 180, 181, -1, 183, + 184, -1, 186, 187, 188, -1, 190, 191, 192, 193, + 194, -1, 196, 197, 198, 199, -1, 201, 202, 203, + 204, 205, 206, 207, 208, -1, 210, -1, 212, 213, + 214, 215, 216, 217, 218, -1, 220, -1, 222, -1, + -1, 225, -1, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, -1, -1, 240, 241, -1, 243, + -1, -1, 246, 247, 248, -1, -1, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, -1, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, -1, 283, + 284, -1, 286, -1, 288, 289, 290, 291, 292, 293, + -1, 295, 296, -1, -1, 299, 300, 301, -1, -1, + 304, 305, 306, -1, 308, -1, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - -1, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, 406, 407, -1, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, -1, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, -1, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, 171, 172, -1, -1, - -1, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, -1, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, -1, 224, - 225, 226, 227, 228, -1, -1, 231, 232, -1, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, -1, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, + 324, 325, 326, 327, 328, 329, -1, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, -1, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, -1, 361, 362, -1, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, -1, 381, 382, 383, + 384, 385, -1, 387, 388, 389, 390, 391, -1, 393, + 394, 395, 396, -1, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, + 414, 415, -1, -1, 418, -1, 420, 421, 422, 423, + 424, -1, 426, 427, 428, -1, -1, 431, 432, 433, + 434, 435, -1, 437, 438, 439, 440, 441, 442, 443, + 444, -1, -1, 447, 448, 449, 450, 451, -1, -1, + 454, 455, 456, 457, 458, 459, 460, -1, 462, -1, + 464, 465, 466, 467, -1, -1, 470, -1, -1, 473, + 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 490, 491, 492, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 3, -1, + -1, -1, -1, -1, -1, 10, -1, -1, -1, -1, + -1, -1, 17, 18, 19, -1, -1, 22, 23, 24, + 25, 26, 27, 28, 29, 30, -1, 32, 33, 34, + -1, -1, -1, -1, -1, -1, -1, 42, 43, 44, + -1, 46, 47, 48, 49, -1, 51, 52, 53, 54, + 55, -1, 57, 58, -1, 60, 61, 62, 63, 64, + 65, 66, -1, -1, 69, 70, 71, 72, 73, -1, + 75, 76, 77, 78, 79, -1, -1, -1, 83, 84, + 85, 86, 87, 88, -1, 90, 91, 92, -1, 94, + 95, 96, 97, 98, 99, -1, -1, 102, 103, 104, + -1, -1, -1, -1, -1, -1, -1, 112, 113, 114, + 115, 116, 117, 118, 119, 120, -1, 122, -1, 124, + 125, 126, 127, 128, 129, 130, -1, 132, 133, 134, + 135, -1, -1, 138, 139, 140, 141, 142, -1, 144, + 145, 146, -1, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, 163, -1, + 165, 166, 167, 168, 169, -1, 171, -1, 173, 174, + -1, -1, -1, 178, 179, 180, 181, -1, 183, 184, + -1, 186, 187, 188, -1, 190, 191, 192, 193, 194, + -1, 196, 197, 198, 199, -1, 201, 202, 203, 204, + 205, 206, 207, 208, -1, 210, -1, 212, 213, 214, + 215, 216, 217, 218, -1, 220, -1, 222, -1, -1, + 225, -1, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, -1, -1, 240, 241, -1, 243, -1, + -1, 246, 247, 248, -1, -1, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, -1, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, -1, 283, 284, + -1, 286, -1, 288, 289, 290, 291, 292, 293, -1, + 295, 296, -1, -1, 299, 300, 301, -1, -1, 304, + 305, 306, -1, 308, -1, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, -1, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, 406, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, -1, -1, 82, 83, 84, 85, - 86, 87, -1, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, 99, -1, 101, 102, 103, -1, -1, - -1, -1, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, -1, -1, -1, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, -1, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, -1, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, -1, -1, 222, -1, 224, 225, - 226, 227, 228, -1, -1, 231, 232, -1, 234, -1, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, -1, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - -1, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, -1, 299, -1, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, + 325, 326, 327, 328, 329, -1, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, -1, 361, 362, -1, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, + 375, 376, 377, 378, 379, -1, 381, 382, 383, 384, + 385, -1, 387, 388, 389, 390, 391, -1, 393, 394, + 395, 396, -1, 398, 399, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, + 415, -1, -1, 418, -1, 420, 421, 422, 423, 424, + -1, 426, 427, 428, -1, -1, 431, 432, 433, 434, + 435, -1, 437, 438, 439, 440, 441, 442, 443, 444, + -1, -1, 447, 448, 449, 450, 451, -1, -1, 454, + 455, 456, 457, 458, 459, 460, -1, 462, -1, 464, + 465, 466, 467, -1, -1, 470, -1, -1, 473, 474, + 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 490, 491, 492, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 3, -1, -1, + -1, -1, -1, -1, 10, -1, -1, -1, -1, -1, + -1, 17, 18, 19, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, -1, 51, 52, 53, 54, 55, + -1, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, -1, -1, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, -1, -1, 83, 84, 85, + 86, 87, 88, -1, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, -1, 102, 103, 104, -1, + -1, -1, -1, -1, -1, -1, 112, 113, 114, 115, + 116, 117, 118, 119, 120, -1, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, -1, + -1, -1, 178, 179, 180, 181, -1, 183, 184, -1, + 186, 187, 188, -1, 190, 191, 192, 193, 194, -1, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, -1, 212, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, -1, -1, 225, + -1, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, -1, -1, 240, 241, -1, 243, -1, -1, + 246, 247, 248, -1, -1, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, -1, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, -1, 283, 284, -1, + 286, -1, 288, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + 306, -1, 308, -1, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, + 326, 327, 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, -1, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, -1, 361, 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, -1, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, -1, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, -1, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, -1, -1, 82, 83, 84, 85, 86, - 87, -1, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, -1, 101, 102, 103, -1, -1, -1, - 107, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, -1, -1, -1, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, -1, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, -1, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, -1, -1, 222, -1, 224, 225, 226, - 227, 228, -1, -1, 231, 232, -1, 234, -1, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, -1, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, -1, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, 289, 290, 291, 292, -1, -1, 295, 296, - 297, -1, 299, -1, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + -1, 387, 388, 389, 390, 391, -1, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, -1, 414, 415, + -1, -1, 418, -1, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, 433, 434, 435, + -1, 437, 438, 439, 440, 441, 442, 443, 444, -1, + -1, 447, 448, 449, 450, 451, -1, -1, 454, 455, + 456, 457, 458, 459, 460, -1, 462, -1, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 3, -1, -1, -1, + -1, -1, -1, 10, -1, -1, -1, -1, -1, -1, + 17, 18, 19, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, 30, -1, 32, 33, 34, -1, -1, + -1, -1, -1, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, -1, 51, 52, 53, 54, 55, -1, + 57, 58, -1, 60, 61, 62, 63, 64, 65, 66, + -1, -1, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, -1, -1, 83, 84, 85, 86, + 87, 88, -1, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, -1, 102, 103, 104, -1, -1, + -1, -1, -1, -1, -1, 112, 113, 114, 115, 116, + 117, 118, 119, 120, -1, 122, -1, 124, 125, 126, + 127, 128, 129, 130, -1, 132, 133, 134, 135, -1, + -1, 138, 139, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, -1, 165, 166, + 167, 168, 169, -1, 171, -1, 173, 174, -1, -1, + -1, 178, 179, 180, 181, -1, 183, 184, -1, 186, + 187, 188, -1, 190, 191, 192, 193, 194, -1, 196, + 197, 198, 199, -1, 201, 202, 203, 204, 205, 206, + 207, 208, -1, 210, -1, 212, 213, 214, 215, 216, + 217, 218, -1, 220, -1, 222, -1, -1, 225, -1, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, -1, -1, 240, 241, -1, 243, -1, -1, 246, + 247, 248, -1, -1, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, -1, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, -1, 283, 284, -1, 286, + -1, 288, 289, 290, 291, 292, 293, -1, 295, 296, + -1, -1, 299, 300, 301, -1, -1, 304, 305, 306, + -1, 308, -1, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, + 327, 328, 329, -1, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, -1, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, -1, 361, 362, -1, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, -1, 381, 382, 383, 384, 385, -1, + 387, 388, 389, 390, 391, -1, 393, 394, 395, 396, + -1, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, -1, 414, 415, -1, + -1, 418, -1, 420, 421, 422, 423, 424, -1, 426, + 427, 428, -1, -1, 431, 432, 433, 434, 435, -1, + 437, 438, 439, 440, 441, 442, 443, 444, -1, -1, + 447, 448, 449, 450, 451, -1, -1, 454, 455, 456, + 457, 458, 459, 460, -1, 462, -1, 464, 465, 466, + 467, -1, -1, 470, -1, -1, 473, 474, 475, 476, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 3, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, + 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, -1, 355, 356, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, 406, - 407, -1, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, -1, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, + 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, + 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, -1, -1, 82, 83, 84, 85, 86, 87, - -1, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, -1, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, -1, -1, -1, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, -1, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - -1, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, -1, -1, 222, -1, 224, 225, 226, 227, - 228, -1, -1, 231, 232, -1, 234, -1, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, -1, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, -1, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, 289, 290, 291, 292, -1, -1, 295, 296, 297, - -1, 299, -1, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, -1, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - -1, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, -1, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, 6, -1, -1, - -1, -1, -1, 12, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 3, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 508, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, 30, -1, 32, 33, 34, -1, -1, + -1, -1, -1, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, -1, 51, 52, 53, 54, 55, -1, + 57, 58, -1, 60, 61, 62, 63, 64, 65, 66, + -1, -1, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, -1, -1, 83, 84, 85, 86, + 87, 88, -1, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, -1, 102, 103, 104, -1, -1, + -1, -1, -1, -1, -1, 112, 113, 114, 115, 116, + 117, 118, 119, 120, -1, 122, -1, 124, 125, 126, + 127, 128, 129, 130, -1, 132, 133, 134, 135, -1, + -1, 138, 139, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, -1, 165, 166, + 167, 168, 169, -1, 171, -1, 173, 174, -1, -1, + -1, 178, 179, 180, 181, -1, 183, 184, -1, 186, + 187, 188, -1, 190, 191, 192, 193, 194, -1, 196, + 197, 198, 199, -1, 201, 202, 203, 204, 205, 206, + 207, 208, -1, 210, -1, 212, 213, 214, 215, 216, + 217, 218, -1, 220, -1, 222, -1, -1, 225, -1, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, -1, -1, 240, 241, -1, 243, -1, -1, 246, + 247, 248, -1, -1, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, -1, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, -1, 283, 284, -1, 286, + -1, 288, 289, 290, 291, 292, 293, -1, 295, 296, + -1, -1, 299, 300, 301, -1, -1, 304, 305, 306, + -1, 308, -1, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, + 327, 328, 329, -1, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, -1, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, -1, 361, 362, -1, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, -1, 381, 382, 383, 384, 385, -1, + 387, 388, 389, 390, 391, -1, 393, 394, 395, 396, + -1, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, -1, 414, 415, -1, + -1, 418, -1, 420, 421, 422, 423, 424, -1, 426, + 427, 428, -1, -1, 431, 432, 433, 434, 435, -1, + 437, 438, 439, 440, 441, 442, 443, 444, -1, -1, + 447, 448, 449, 450, 451, -1, -1, 454, 455, 456, + 457, 458, 459, 460, -1, 462, -1, 464, 465, 466, + 467, -1, -1, 470, -1, -1, 473, 474, 475, 476, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 3, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 508, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, 30, -1, 32, 33, 34, -1, -1, + -1, -1, -1, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, -1, 51, 52, 53, 54, 55, -1, + 57, 58, -1, 60, 61, 62, 63, 64, 65, 66, + -1, -1, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, -1, -1, 83, 84, 85, 86, + 87, 88, -1, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, -1, 102, 103, 104, -1, -1, + -1, -1, -1, -1, -1, 112, 113, 114, 115, 116, + 117, 118, 119, 120, -1, 122, -1, 124, 125, 126, + 127, 128, 129, 130, -1, 132, 133, 134, 135, -1, + -1, 138, 139, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, -1, 165, 166, + 167, 168, 169, -1, 171, -1, 173, 174, -1, -1, + -1, 178, 179, 180, 181, -1, 183, 184, -1, 186, + 187, 188, -1, 190, 191, 192, 193, 194, -1, 196, + 197, 198, 199, -1, 201, 202, 203, 204, 205, 206, + 207, 208, -1, 210, -1, 212, 213, 214, 215, 216, + 217, 218, -1, 220, -1, 222, -1, -1, 225, -1, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, -1, -1, 240, 241, -1, 243, -1, -1, 246, + 247, 248, -1, -1, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, -1, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, -1, 283, 284, -1, 286, + -1, 288, 289, 290, 291, 292, 293, -1, 295, 296, + -1, -1, 299, 300, 301, -1, -1, 304, 305, 306, + -1, 308, -1, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, + 327, 328, 329, -1, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, -1, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, -1, 361, 362, -1, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, -1, 381, 382, 383, 384, 385, -1, + 387, 388, 389, 390, 391, -1, 393, 394, 395, 396, + -1, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, -1, 414, 415, -1, + -1, 418, -1, 420, 421, 422, 423, 424, -1, 426, + 427, 428, -1, -1, 431, 432, 433, 434, 435, -1, + 437, 438, 439, 440, 441, 442, 443, 444, -1, -1, + 447, 448, 449, 450, 451, -1, -1, 454, 455, 456, + 457, 458, 459, 460, -1, 462, -1, 464, 465, 466, + 467, -1, -1, 470, -1, -1, 473, 474, 475, 476, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 3, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 508, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, 30, -1, 32, 33, 34, -1, -1, + -1, -1, -1, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, -1, 55, 56, + 57, 58, -1, 60, 61, 62, 63, 64, 65, 66, + -1, -1, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, -1, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, -1, -1, + -1, 108, -1, -1, -1, 112, 113, 114, 115, 116, + 117, 118, 119, 120, -1, 122, -1, 124, 125, 126, + 127, 128, 129, 130, -1, 132, 133, 134, 135, -1, + -1, 138, 139, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, -1, 152, 153, 154, 155, -1, + 157, 158, 159, 160, -1, -1, 163, -1, 165, 166, + 167, 168, 169, -1, 171, -1, 173, 174, 175, -1, + 177, 178, 179, 180, 181, -1, 183, -1, -1, -1, + 187, 188, -1, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, -1, 210, 211, 212, 213, 214, 215, 216, + 217, 218, -1, 220, -1, 222, 223, 224, 225, 226, + 227, -1, -1, -1, -1, 232, 233, 234, 235, 236, + 237, -1, -1, 240, -1, 242, 243, 244, -1, 246, + 247, 248, -1, -1, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, -1, -1, 281, -1, 283, 284, 285, 286, + -1, -1, 289, 290, 291, 292, 293, -1, 295, 296, + -1, -1, 299, 300, 301, -1, 303, 304, 305, 306, + 307, 308, 309, -1, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, -1, 322, 323, -1, 325, -1, + 327, 328, 329, -1, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, -1, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, -1, 361, 362, 363, 364, 365, 366, + 367, 368, -1, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, -1, 381, 382, 383, 384, 385, -1, + 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, + -1, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, -1, 412, -1, 414, 415, -1, + -1, 418, 419, 420, 421, 422, 423, 424, -1, 426, + 427, 428, -1, -1, 431, 432, -1, 434, -1, -1, + 437, 438, 439, 440, 441, 442, 443, 444, -1, -1, + 447, 448, 449, 450, 451, -1, -1, 454, 455, 456, + 457, 458, -1, 460, 461, 462, 463, 464, 465, 466, + 467, -1, -1, 470, -1, -1, 473, 474, 475, 476, + 477, 478, -1, 3, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 490, 491, 492, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - -1, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, 441, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - 441, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, -1, -1, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, + 30, 508, 32, 33, 34, -1, -1, -1, -1, -1, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, -1, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, -1, -1, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, -1, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, -1, -1, -1, 108, -1, + -1, -1, 112, 113, 114, 115, 116, 117, 118, 119, + 120, -1, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, -1, 157, 158, 159, + 160, -1, -1, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, -1, -1, -1, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, -1, -1, + -1, -1, 232, 233, 234, 235, 236, 237, -1, -1, + 240, -1, 242, 243, 244, -1, 246, 247, 248, -1, + -1, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, -1, + -1, 281, -1, 283, 284, 285, 286, -1, -1, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, 303, 304, 305, 306, 307, 308, 309, + -1, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, -1, 325, -1, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, -1, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, -1, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, -1, 412, -1, 414, 415, -1, -1, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, -1, 434, -1, -1, 437, 438, 439, + 440, 441, 442, 443, 444, -1, -1, 447, 448, 449, + 450, 451, -1, -1, 454, 455, 456, 457, 458, -1, + 460, 461, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, -1, + 3, -1, 5, 6, -1, -1, -1, -1, 11, 12, + 490, 491, 492, -1, -1, -1, -1, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 508, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, -1, 60, 61, 62, + 63, 64, 65, 66, -1, -1, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, 81, -1, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, -1, -1, -1, 108, -1, -1, -1, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, 175, -1, 177, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, -1, 240, 241, 242, + 243, 244, -1, 246, 247, 248, -1, -1, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, + 273, 274, 275, 276, 277, 278, 279, 280, 281, -1, + 283, 284, 285, 286, -1, 288, 289, 290, 291, 292, + 293, -1, 295, 296, 297, -1, 299, 300, 301, -1, + -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, -1, 50, 51, 52, 53, - 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, -1, -1, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, -1, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, -1, - -1, -1, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, -1, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, -1, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, -1, -1, 222, -1, - 224, 225, 226, 227, 228, -1, -1, 231, 232, -1, - 234, -1, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, -1, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, -1, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, -1, 299, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - -1, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, -1, 407, -1, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, -1, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, -1, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, -1, -1, - -1, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, -1, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, -1, 224, - 225, 226, 227, 228, -1, -1, 231, 232, -1, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, -1, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, -1, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, -1, -1, 82, 83, 84, 85, - 86, 87, -1, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, -1, 101, 102, 103, -1, -1, - -1, -1, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, -1, -1, -1, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, -1, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, -1, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, -1, -1, 222, -1, 224, 225, - 226, 227, 228, -1, -1, 231, 232, -1, 234, -1, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, -1, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - -1, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, 289, 290, 291, 292, -1, -1, 295, - 296, 297, -1, 299, -1, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, -1, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, -1, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, -1, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, -1, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, - -1, -1, -1, -1, -1, 12, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, -1, -1, 82, 83, 84, 85, 86, - 87, -1, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, -1, 101, 102, 103, -1, -1, -1, - -1, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, -1, -1, -1, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, -1, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, -1, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, -1, -1, 222, -1, 224, 225, 226, - 227, 228, -1, -1, 231, 232, -1, 234, -1, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, -1, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, -1, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, -1, 299, -1, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, -1, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, -1, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, -1, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, -1, -1, 82, 83, 84, 85, 86, 87, - -1, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, -1, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, -1, -1, -1, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, -1, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - -1, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, -1, -1, 222, -1, 224, 225, 226, 227, - 228, -1, -1, 231, 232, -1, 234, -1, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, -1, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, -1, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - -1, 299, -1, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, -1, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - -1, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, -1, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - -1, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, -1, -1, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, 289, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, -1, 381, 382, + 383, 384, 385, -1, 387, 388, 389, 390, 391, 392, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, -1, -1, 418, 419, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, -1, 431, 432, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, -1, -1, 447, 448, 449, 450, 451, -1, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + 463, 464, 465, 466, 467, -1, -1, 470, -1, -1, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + 3, -1, 5, 6, -1, -1, -1, -1, 11, 12, + -1, -1, -1, 506, 507, -1, -1, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, 30, -1, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, -1, 60, 61, 62, + 63, 64, 65, 66, -1, -1, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, 81, -1, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, -1, -1, -1, 108, -1, -1, -1, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, 175, -1, 177, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, -1, 240, 241, 242, + 243, 244, -1, 246, 247, 248, -1, -1, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, -1, + 283, 284, 285, 286, -1, 288, 289, 290, 291, 292, + 293, -1, 295, 296, 297, -1, 299, 300, 301, -1, + -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, -1, 381, 382, + 383, 384, 385, -1, 387, 388, 389, 390, 391, 392, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, -1, -1, 418, 419, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, -1, 431, 432, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, -1, -1, 447, 448, 449, 450, 451, -1, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + 463, 464, 465, 466, 467, -1, -1, 470, -1, -1, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + 3, -1, 5, 6, -1, -1, -1, -1, 11, -1, + -1, -1, -1, 506, 507, -1, -1, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, 30, -1, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, -1, 60, 61, 62, + 63, 64, 65, 66, -1, -1, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, 81, -1, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, -1, -1, -1, 108, -1, -1, -1, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, 175, -1, 177, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, -1, 240, 241, 242, + 243, 244, -1, 246, 247, 248, -1, -1, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, -1, + 283, 284, 285, 286, -1, 288, 289, 290, 291, 292, + 293, -1, 295, 296, 297, -1, 299, 300, 301, -1, + -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, -1, 381, 382, + 383, 384, 385, -1, 387, 388, 389, 390, 391, 392, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, -1, -1, 418, 419, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, -1, 431, 432, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, -1, -1, 447, 448, 449, 450, 451, -1, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + 463, 464, 465, 466, 467, -1, -1, 470, -1, -1, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + 3, -1, 5, 6, -1, -1, -1, -1, 11, 12, + -1, -1, -1, 506, 507, -1, -1, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, 30, -1, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, -1, 60, 61, 62, + 63, 64, 65, 66, -1, -1, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, 81, -1, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, -1, -1, -1, 108, -1, -1, -1, 112, + 113, 114, 115, 116, 117, 118, 119, 120, -1, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, 175, -1, 177, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, -1, 240, 241, 242, + 243, 244, -1, 246, 247, 248, -1, -1, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, -1, + 283, 284, 285, 286, -1, 288, 289, 290, 291, 292, + 293, -1, 295, 296, 297, -1, 299, 300, 301, -1, + -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, -1, 381, 382, + 383, 384, 385, -1, 387, 388, 389, 390, 391, 392, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, -1, -1, 418, 419, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, -1, 431, 432, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, -1, -1, 447, 448, 449, 450, 451, -1, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + 463, 464, 465, 466, 467, -1, -1, 470, -1, -1, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + 3, -1, 5, 6, -1, -1, -1, -1, 11, -1, + -1, -1, -1, 506, 507, -1, -1, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, 30, -1, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, -1, 60, 61, 62, + 63, 64, 65, 66, -1, -1, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, 81, -1, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, -1, -1, -1, 108, -1, -1, -1, 112, + 113, 114, 115, 116, 117, 118, 119, 120, -1, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, 175, -1, 177, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, -1, 240, 241, 242, + 243, 244, -1, 246, 247, 248, -1, -1, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, -1, + 283, 284, 285, 286, -1, 288, 289, 290, 291, 292, + 293, -1, 295, 296, 297, -1, 299, 300, 301, -1, + -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, -1, 381, 382, + 383, 384, 385, -1, 387, 388, 389, 390, 391, 392, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, -1, -1, 418, 419, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, -1, 431, 432, + 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, -1, -1, 447, 448, 449, 450, 451, -1, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + 463, 464, 465, 466, 467, -1, -1, 470, -1, -1, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + 3, -1, -1, -1, -1, -1, -1, -1, 11, -1, + -1, -1, -1, 506, 507, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, + 33, 34, -1, -1, -1, -1, -1, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, -1, 51, 52, + 53, 54, 55, -1, 57, 58, -1, 60, 61, 62, + 63, 64, 65, 66, -1, -1, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, -1, -1, + 83, 84, 85, 86, 87, 88, -1, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, -1, 102, + 103, 104, -1, -1, -1, -1, -1, -1, -1, 112, + 113, 114, 115, 116, 117, 118, 119, 120, -1, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, -1, 176, -1, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, -1, 196, 197, 198, 199, 200, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, -1, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + -1, -1, 225, -1, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, -1, 240, 241, -1, + 243, -1, -1, 246, 247, 248, -1, -1, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, -1, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, -1, + 283, 284, -1, 286, -1, 288, 289, 290, 291, 292, + 293, -1, 295, 296, -1, -1, 299, 300, 301, -1, + -1, 304, 305, 306, -1, 308, -1, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + -1, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, -1, 381, 382, + 383, 384, 385, -1, 387, 388, 389, 390, 391, -1, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, -1, -1, 418, -1, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, -1, 431, 432, + 433, 434, 435, -1, 437, 438, 439, 440, 441, 442, + 443, 444, -1, -1, 447, 448, 449, 450, 451, -1, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + -1, 464, 465, 466, 467, -1, -1, 470, -1, -1, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 506, 507, -1, -1, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, 30, -1, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 42, + 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, -1, 60, 61, 62, + 63, 64, 65, 66, -1, -1, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, 81, -1, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, -1, -1, -1, 108, -1, -1, -1, 112, + 113, 114, 115, 116, 117, 118, 119, 120, -1, 122, + -1, 124, 125, 126, 127, 128, 129, 130, -1, 132, + 133, 134, 135, -1, -1, 138, 139, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + 163, -1, 165, 166, 167, 168, 169, -1, 171, -1, + 173, 174, 175, -1, 177, 178, 179, 180, 181, -1, + 183, 184, -1, 186, 187, 188, -1, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, -1, 201, 202, + 203, 204, 205, 206, 207, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, 218, -1, 220, -1, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, -1, -1, 240, 241, 242, + 243, 244, -1, 246, 247, 248, -1, -1, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, + 273, 274, 275, 276, 277, 278, 279, 280, 281, -1, + 283, 284, 285, 286, -1, 288, 289, 290, 291, 292, + 293, -1, 295, 296, -1, -1, 299, 300, 301, -1, + -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, -1, 50, 51, 52, 53, - 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, -1, -1, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, -1, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, -1, - -1, -1, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, -1, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, -1, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, -1, -1, 222, -1, - 224, 225, 226, 227, 228, -1, -1, 231, 232, -1, - 234, -1, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, -1, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, -1, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, -1, 299, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - -1, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, -1, 407, -1, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, -1, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, -1, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, -1, -1, - -1, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, -1, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, -1, 224, - 225, 226, 227, 228, -1, -1, 231, 232, -1, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, -1, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, -1, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, 406, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, - -1, -1, -1, -1, -1, 11, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, -1, -1, 82, 83, 84, 85, - 86, 87, -1, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, -1, 101, 102, 103, -1, -1, - -1, -1, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, -1, -1, -1, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, -1, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, -1, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, -1, -1, 222, -1, 224, 225, - 226, 227, 228, -1, -1, 231, 232, -1, 234, -1, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, -1, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - -1, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, -1, 299, -1, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, -1, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, -1, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, -1, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, -1, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, 39, -1, 41, 42, 43, -1, 45, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, -1, -1, 82, 83, 84, 85, 86, - 87, -1, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, -1, 101, 102, 103, -1, -1, -1, - -1, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, -1, -1, -1, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, -1, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, -1, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, -1, -1, 222, -1, 224, 225, 226, - 227, 228, -1, -1, 231, 232, -1, 234, -1, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, -1, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, -1, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, -1, 299, -1, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, -1, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, -1, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, -1, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, 39, -1, 41, 42, 43, -1, 45, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, -1, -1, 82, 83, 84, 85, 86, 87, - -1, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, -1, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, -1, -1, -1, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, -1, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - -1, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, -1, -1, 222, -1, 224, 225, 226, 227, - 228, -1, -1, 231, 232, -1, 234, -1, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, -1, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, -1, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - -1, 299, -1, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, -1, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - -1, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, -1, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, -1, -1, -1, -1, + 323, 324, 325, 326, 327, 328, 329, -1, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, -1, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, + 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, -1, 381, 382, + 383, 384, 385, -1, 387, 388, 389, 390, 391, 392, + 393, 394, 395, 396, -1, 398, 399, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + -1, 414, 415, -1, -1, 418, 419, 420, 421, 422, + 423, 424, -1, 426, 427, 428, -1, -1, 431, 432, + 433, 434, 435, -1, 437, 438, 439, 440, 441, 442, + 443, 444, -1, -1, 447, 448, 449, 450, 451, -1, + -1, 454, 455, 456, 457, 458, 459, 460, -1, 462, + 463, 464, 465, 466, 467, -1, -1, 470, -1, -1, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + 493, 3, -1, 5, 6, -1, -1, -1, -1, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - -1, 101, 102, 103, -1, -1, -1, 107, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, -1, -1, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, + 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, -1, 50, 51, 52, 53, - 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, -1, -1, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, -1, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, -1, - -1, -1, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, -1, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, -1, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, -1, -1, 222, -1, - 224, 225, 226, 227, 228, -1, -1, 231, 232, -1, - 234, -1, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, -1, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, -1, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, -1, 299, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - -1, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, -1, 407, -1, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, -1, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, -1, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, -1, -1, - -1, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, -1, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, -1, 224, - 225, 226, 227, 228, -1, -1, 231, 232, -1, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, -1, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, -1, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, -1, -1, 82, 83, 84, 85, - 86, 87, -1, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, -1, 101, 102, 103, -1, -1, - -1, -1, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, -1, -1, -1, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, -1, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, -1, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, -1, -1, 222, -1, 224, 225, - 226, 227, 228, -1, -1, 231, 232, -1, 234, -1, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, -1, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - -1, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, -1, 299, -1, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, -1, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, -1, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, -1, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, -1, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, -1, -1, 82, 83, 84, 85, 86, - 87, -1, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, -1, 101, 102, 103, -1, -1, -1, - -1, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, -1, -1, -1, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, -1, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, -1, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, -1, -1, 222, -1, 224, 225, 226, - 227, 228, -1, -1, 231, 232, -1, 234, -1, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, -1, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, -1, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, -1, 299, -1, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, -1, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, -1, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, -1, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, -1, -1, 82, 83, 84, 85, 86, 87, - -1, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, -1, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, -1, -1, -1, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, -1, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - -1, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, -1, -1, 222, -1, 224, 225, 226, 227, - 228, -1, -1, 231, 232, -1, 234, -1, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, -1, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, -1, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - -1, 299, -1, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, -1, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - -1, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, -1, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, -1, -1, -1, -1, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - -1, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, -1, -1, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, + 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, -1, 50, 51, 52, 53, - 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, -1, -1, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, -1, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, -1, - -1, -1, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, -1, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, -1, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, -1, -1, 222, -1, - 224, 225, 226, 227, 228, -1, -1, 231, 232, -1, - 234, -1, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, -1, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, -1, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, -1, 299, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - -1, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, -1, 407, -1, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, -1, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, -1, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, -1, -1, - -1, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, -1, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, -1, 224, - 225, 226, 227, 228, -1, -1, 231, 232, -1, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, -1, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, -1, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, -1, -1, 82, 83, 84, 85, - 86, 87, -1, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, -1, 101, 102, 103, -1, -1, - -1, -1, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, -1, -1, -1, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, -1, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, -1, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, -1, -1, 222, -1, 224, 225, - 226, 227, 228, -1, -1, 231, 232, -1, 234, -1, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, -1, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - -1, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, -1, 299, -1, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, -1, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, -1, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, -1, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, -1, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, -1, -1, 82, 83, 84, 85, 86, - 87, -1, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, -1, 101, 102, 103, -1, -1, -1, - -1, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, -1, -1, -1, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, -1, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, -1, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, -1, -1, 222, -1, 224, 225, 226, - 227, 228, -1, -1, 231, 232, -1, 234, -1, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, -1, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, -1, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, -1, 299, -1, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, -1, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, -1, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, -1, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, -1, -1, 82, 83, 84, 85, 86, 87, - -1, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, -1, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, -1, -1, -1, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, -1, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - -1, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, -1, -1, 222, -1, 224, 225, 226, 227, - 228, -1, -1, 231, 232, -1, 234, -1, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, -1, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, -1, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - -1, 299, -1, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, -1, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - -1, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, -1, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, -1, -1, -1, -1, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - -1, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, -1, -1, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, + 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, 416, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + 452, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, 5, 6, -1, 8, 9, -1, 11, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, -1, 50, 51, 52, 53, - 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, -1, -1, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, -1, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, -1, - -1, -1, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, -1, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, -1, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, -1, -1, 222, -1, - 224, 225, 226, 227, 228, -1, -1, 231, 232, -1, - 234, -1, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, -1, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, -1, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, -1, 299, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - -1, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, -1, 407, -1, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, -1, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, 107, 108, -1, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, 107, 108, -1, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, 107, 108, -1, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + 452, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, 107, 108, -1, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, 6, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, 297, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, 107, 108, -1, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, 107, 108, -1, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, 107, 108, -1, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, 107, 108, -1, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, 107, 108, -1, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, 6, -1, -1, -1, -1, -1, + 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, 6, -1, -1, -1, -1, -1, + 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, 6, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, 285, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, -1, -1, + 82, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + 172, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, 446, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + 172, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, 446, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, 100, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + 182, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, 100, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + 182, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + 172, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, 446, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, 100, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, -1, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, -1, -1, - -1, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, -1, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, -1, 224, - 225, 226, 227, 228, -1, -1, 231, 232, -1, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, -1, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, -1, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, 298, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, 417, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, -1, -1, 82, 83, 84, 85, - 86, 87, -1, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, -1, 101, 102, 103, -1, -1, - -1, -1, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, -1, -1, -1, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, -1, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, -1, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, -1, -1, 222, -1, 224, 225, - 226, 227, 228, -1, -1, 231, 232, -1, 234, -1, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, -1, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - -1, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, -1, 299, -1, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, -1, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, -1, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, -1, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, -1, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + 172, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, 417, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, 100, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, 298, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, 417, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, -1, -1, 82, 83, 84, 85, 86, - 87, -1, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, -1, 101, 102, 103, -1, -1, -1, - -1, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, -1, -1, -1, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, -1, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, -1, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, -1, -1, 222, -1, 224, 225, 226, - 227, 228, -1, -1, 231, 232, -1, 234, -1, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, -1, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, -1, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, -1, 299, -1, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, -1, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, -1, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, -1, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, 298, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, 6, -1, -1, -1, -1, -1, + 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, -1, -1, 82, 83, 84, 85, 86, 87, - -1, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, -1, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, -1, -1, -1, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, -1, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - -1, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, -1, -1, 222, -1, 224, 225, 226, 227, - 228, -1, -1, 231, 232, -1, 234, -1, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, -1, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, -1, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - -1, 299, -1, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, -1, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - -1, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, -1, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + 452, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, -1, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + 452, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - -1, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, -1, -1, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, -1, 50, 51, 52, 53, - 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, -1, -1, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, -1, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, -1, - -1, -1, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, -1, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, -1, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, -1, -1, 222, -1, - 224, 225, 226, 227, 228, -1, -1, 231, 232, -1, - 234, -1, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, -1, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, -1, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, -1, 299, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - -1, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, -1, 407, -1, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, -1, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, -1, 50, 51, 52, 53, 54, - -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, 78, -1, -1, -1, 82, 83, 84, - 85, 86, 87, -1, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, -1, 101, 102, 103, -1, - -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, -1, -1, - -1, 176, 177, 178, 179, -1, 181, 182, -1, 184, - 185, 186, -1, 188, 189, 190, 191, 192, -1, 194, - 195, 196, 197, -1, 199, 200, 201, 202, 203, 204, - 205, -1, 207, -1, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, -1, -1, 222, -1, 224, - 225, 226, 227, 228, -1, -1, 231, 232, -1, 234, - -1, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, -1, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, -1, 274, - 275, -1, 277, -1, 279, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, -1, 299, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - 315, 316, 317, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, -1, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, -1, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, -1, 404, - 405, -1, 407, -1, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, 422, 423, 424, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, 448, 449, -1, 451, -1, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 3, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, 78, -1, -1, -1, 82, 83, 84, 85, - 86, 87, -1, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, -1, 101, 102, 103, -1, -1, - -1, -1, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, -1, -1, -1, - 176, 177, 178, 179, -1, 181, 182, -1, 184, 185, - 186, -1, 188, 189, 190, 191, 192, -1, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, -1, 209, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, -1, -1, 222, -1, 224, 225, - 226, 227, 228, -1, -1, 231, 232, -1, 234, -1, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, -1, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, -1, 274, 275, - -1, 277, -1, 279, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, 297, -1, 299, -1, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, 315, - 316, 317, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, -1, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, -1, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, -1, 404, 405, - -1, 407, -1, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, 422, 423, 424, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, 448, 449, -1, 451, -1, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, - 476, 477, 478, 479, 480, 481, 3, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, 298, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, 41, 42, 43, -1, 45, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, 65, -1, - -1, 68, 69, 70, 71, 72, -1, 74, 75, 76, - 77, 78, -1, -1, -1, 82, 83, 84, 85, 86, - 87, -1, 89, 90, 91, -1, 93, 94, 95, 96, - 97, 98, -1, -1, 101, 102, 103, -1, -1, -1, - -1, -1, -1, -1, 111, 112, 113, 114, 115, 116, - 117, 118, 119, -1, 121, -1, 123, 124, 125, 126, - 127, 128, 129, -1, 131, 132, 133, 134, -1, -1, - 137, 138, 139, 140, 141, -1, 143, 144, 145, -1, - 147, 148, 149, -1, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, -1, 162, -1, 164, 165, 166, - 167, 168, -1, 170, -1, 172, -1, -1, -1, 176, - 177, 178, 179, -1, 181, 182, -1, 184, 185, 186, - -1, 188, 189, 190, 191, 192, -1, 194, 195, 196, - 197, -1, 199, 200, 201, 202, 203, 204, 205, -1, - 207, -1, 209, 210, 211, 212, 213, 214, 215, -1, - 217, -1, 219, -1, -1, 222, -1, 224, 225, 226, - 227, 228, -1, -1, 231, 232, -1, 234, -1, -1, - 237, 238, 239, -1, -1, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, -1, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, -1, 274, 275, -1, - 277, -1, 279, 280, 281, 282, 283, 284, -1, 286, - 287, -1, -1, 290, 291, 292, -1, -1, 295, 296, - 297, -1, 299, -1, 301, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, -1, 313, 314, 315, 316, - 317, 318, 319, 320, -1, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, - -1, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, -1, 352, 353, -1, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, -1, 371, 372, 373, 374, 375, -1, - 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, - -1, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, -1, 404, 405, -1, - 407, -1, 409, 410, 411, 412, 413, -1, 415, 416, - 417, -1, -1, 420, 421, 422, 423, 424, -1, 426, - 427, 428, 429, 430, 431, 432, 433, -1, -1, 436, - 437, 438, 439, 440, -1, -1, 443, 444, 445, 446, - 447, 448, 449, -1, 451, -1, 453, 454, 455, 456, - -1, -1, 459, -1, -1, 462, 463, 464, 465, 466, - 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 3, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, -1, 45, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, 65, -1, -1, - 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, - 78, -1, -1, -1, 82, 83, 84, 85, 86, 87, - -1, 89, 90, 91, -1, 93, 94, 95, 96, 97, - 98, -1, -1, 101, 102, 103, -1, -1, -1, -1, - -1, -1, -1, 111, 112, 113, 114, 115, 116, 117, - 118, 119, -1, 121, -1, 123, 124, 125, 126, 127, - 128, 129, -1, 131, 132, 133, 134, -1, -1, 137, - 138, 139, 140, 141, -1, 143, 144, 145, -1, 147, - 148, 149, -1, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, -1, 162, -1, 164, 165, 166, 167, - 168, -1, 170, -1, 172, -1, -1, -1, 176, 177, - 178, 179, -1, 181, 182, -1, 184, 185, 186, -1, - 188, 189, 190, 191, 192, -1, 194, 195, 196, 197, - -1, 199, 200, 201, 202, 203, 204, 205, -1, 207, - -1, 209, 210, 211, 212, 213, 214, 215, -1, 217, - -1, 219, -1, -1, 222, -1, 224, 225, 226, 227, - 228, -1, -1, 231, 232, -1, 234, -1, -1, 237, - 238, 239, -1, -1, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, -1, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, -1, 274, 275, -1, 277, - -1, 279, 280, 281, 282, 283, 284, -1, 286, 287, - -1, -1, 290, 291, 292, -1, -1, 295, 296, 297, - -1, 299, -1, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, -1, 313, 314, 315, 316, 317, - 318, 319, 320, -1, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, -1, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 349, 350, -1, 352, 353, -1, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, -1, 371, 372, 373, 374, 375, -1, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, -1, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 401, 402, -1, 404, 405, -1, 407, - -1, 409, 410, 411, 412, 413, -1, 415, 416, 417, - -1, -1, 420, 421, 422, 423, 424, -1, 426, 427, - 428, 429, 430, 431, 432, 433, -1, -1, 436, 437, - 438, 439, 440, -1, -1, 443, 444, 445, 446, 447, - 448, 449, -1, 451, -1, 453, 454, 455, 456, -1, - -1, 459, -1, -1, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 3, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, 41, 42, 43, -1, 45, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, -1, -1, 68, - 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, - -1, -1, -1, 82, 83, 84, 85, 86, 87, -1, - 89, 90, 91, -1, 93, 94, 95, 96, 97, 98, - -1, -1, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, 121, -1, 123, 124, 125, 126, 127, 128, - 129, -1, 131, 132, 133, 134, -1, -1, 137, 138, - 139, 140, 141, -1, 143, 144, 145, -1, 147, 148, - 149, -1, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, -1, 162, -1, 164, 165, 166, 167, 168, - -1, 170, -1, 172, -1, -1, -1, 176, 177, 178, - 179, -1, 181, 182, -1, 184, 185, 186, -1, 188, - 189, 190, 191, 192, -1, 194, 195, 196, 197, -1, - 199, 200, 201, 202, 203, 204, 205, -1, 207, -1, - 209, 210, 211, 212, 213, 214, 215, -1, 217, -1, - 219, -1, -1, 222, -1, 224, 225, 226, 227, 228, - -1, -1, 231, 232, -1, 234, -1, -1, 237, 238, - 239, -1, -1, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, -1, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, -1, 274, 275, -1, 277, -1, - 279, 280, 281, 282, 283, 284, -1, 286, 287, -1, - -1, 290, 291, 292, -1, -1, 295, 296, 297, -1, - 299, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, -1, 313, 314, 315, 316, 317, 318, - 319, 320, -1, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, -1, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 349, 350, -1, 352, 353, -1, 355, 356, 357, 358, - 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, -1, 371, 372, 373, 374, 375, -1, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, -1, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, -1, 404, 405, -1, 407, -1, - 409, 410, 411, 412, 413, -1, 415, 416, 417, -1, - -1, 420, 421, 422, 423, 424, -1, 426, 427, 428, - 429, 430, 431, 432, 433, -1, -1, 436, 437, 438, - 439, 440, -1, -1, 443, 444, 445, 446, 447, 448, - 449, -1, 451, -1, 453, 454, 455, 456, -1, -1, - 459, -1, -1, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, - 479, 480, 481, 3, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, 298, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - -1, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - -1, 181, 182, -1, 184, 185, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, 78, -1, -1, - -1, 82, 83, 84, 85, 86, 87, -1, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, -1, - 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, -1, -1, -1, 176, 177, 178, 179, -1, - 181, 182, -1, 184, 185, 186, -1, 188, 189, 190, - 191, 192, -1, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, -1, 209, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, -1, - -1, 222, -1, 224, 225, 226, 227, 228, -1, -1, - 231, 232, -1, 234, -1, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - -1, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, -1, 274, 275, -1, 277, -1, 279, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, 297, -1, 299, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, -1, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, -1, 404, 405, -1, 407, -1, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, 422, 423, 424, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, 448, 449, -1, - 451, -1, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, 41, - 42, 43, -1, 45, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, -1, -1, 68, 69, 70, 71, - 72, -1, 74, 75, 76, 77, 78, -1, -1, -1, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - -1, 93, 94, 95, 96, 97, 98, -1, -1, 101, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - -1, 123, 124, 125, 126, 127, 128, 129, -1, 131, - 132, 133, 134, -1, -1, 137, 138, 139, 140, 141, - -1, 143, 144, 145, -1, 147, 148, 149, -1, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, - 162, -1, 164, 165, 166, 167, 168, -1, 170, -1, - 172, -1, -1, -1, 176, 177, 178, 179, -1, 181, - 182, -1, 184, 185, 186, -1, 188, 189, 190, 191, - 192, -1, 194, 195, 196, 197, -1, 199, 200, 201, - 202, 203, 204, 205, -1, 207, -1, 209, 210, 211, - 212, 213, 214, 215, -1, 217, -1, 219, -1, -1, - 222, -1, 224, 225, 226, 227, 228, -1, -1, 231, - 232, -1, 234, -1, -1, 237, 238, 239, -1, -1, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, 417, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, 11, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, 40, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, 40, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, 40, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, -1, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, 187, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, -1, 51, + 52, 53, 54, 55, -1, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, -1, -1, -1, -1, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, -1, -1, -1, 178, 179, 180, 181, + -1, 183, 184, -1, 186, -1, 188, -1, 190, 191, + 192, 193, 194, -1, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, -1, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, -1, -1, 225, -1, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, -1, -1, 240, 241, + -1, 243, -1, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + -1, 283, 284, -1, 286, -1, 288, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, -1, 308, -1, 310, 311, + 312, 313, 314, 315, 316, 317, -1, 319, 320, -1, + 322, 323, 324, 325, 326, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, -1, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, -1, 364, 365, 366, 367, 368, 369, -1, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + -1, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, -1, 414, 415, -1, -1, 418, -1, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, 433, 434, 435, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, 459, 460, -1, + 462, -1, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, -1, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, -1, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, -1, 157, 158, 159, 160, -1, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, -1, -1, -1, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, -1, -1, -1, -1, + 232, 233, 234, 235, 236, 237, -1, -1, 240, -1, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, -1, 274, 275, -1, 277, -1, 279, 280, 281, - 282, 283, 284, -1, 286, 287, -1, -1, 290, 291, - 292, -1, -1, 295, 296, 297, -1, 299, -1, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - -1, 313, 314, 315, 316, 317, 318, 319, 320, -1, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, -1, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, -1, - 352, 353, -1, 355, 356, 357, 358, 359, 360, 361, - 362, 363, 364, 365, 366, 367, 368, 369, -1, 371, - 372, 373, 374, 375, -1, 377, 378, 379, 380, 381, - -1, 383, 384, 385, 386, -1, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, -1, 404, 405, -1, 407, -1, 409, 410, 411, - 412, 413, -1, 415, 416, 417, -1, -1, 420, 421, - 422, 423, 424, -1, 426, 427, 428, 429, 430, 431, - 432, 433, -1, -1, 436, 437, 438, 439, 440, -1, - -1, 443, 444, 445, 446, 447, 448, 449, -1, 451, - -1, 453, 454, 455, 456, -1, -1, 459, -1, -1, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, 41, 42, - 43, -1, 45, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, 65, -1, -1, 68, 69, 70, 71, 72, - -1, 74, 75, 76, 77, 78, -1, -1, -1, 82, - 83, 84, 85, 86, 87, -1, 89, 90, 91, -1, - 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 112, - 113, 114, 115, 116, 117, 118, 119, -1, 121, -1, - 123, 124, 125, 126, 127, 128, 129, -1, 131, 132, - 133, 134, -1, -1, 137, 138, 139, 140, 141, -1, - 143, 144, 145, -1, 147, 148, 149, -1, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, -1, 162, - -1, 164, 165, 166, 167, 168, -1, 170, -1, 172, - -1, -1, -1, 176, 177, 178, 179, -1, 181, 182, - -1, 184, 185, 186, -1, 188, 189, 190, 191, 192, - -1, 194, 195, 196, 197, -1, 199, 200, 201, 202, - 203, 204, 205, -1, 207, -1, 209, 210, 211, 212, - 213, 214, 215, -1, 217, -1, 219, -1, -1, 222, - -1, 224, 225, 226, 227, 228, -1, -1, 231, 232, - -1, 234, -1, -1, 237, 238, 239, -1, -1, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, -1, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - -1, 274, 275, -1, 277, -1, 279, 280, 281, 282, - 283, 284, -1, 286, 287, -1, -1, 290, 291, 292, - -1, -1, 295, 296, 297, -1, 299, -1, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, -1, - 313, 314, 315, 316, 317, 318, 319, 320, -1, 322, - 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, -1, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, -1, 352, - 353, -1, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 368, 369, -1, 371, 372, - 373, 374, 375, -1, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, -1, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - -1, 404, 405, -1, 407, -1, 409, 410, 411, 412, - 413, -1, 415, 416, 417, -1, -1, 420, 421, 422, - 423, 424, -1, 426, 427, 428, 429, 430, 431, 432, - 433, -1, -1, 436, 437, 438, 439, 440, -1, -1, - 443, 444, 445, 446, 447, 448, 449, -1, 451, -1, - 453, 454, 455, 456, -1, -1, 459, -1, -1, 462, - 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 3, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - -1, 45, 46, 47, 48, -1, 50, 51, 52, 53, - 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, -1, -1, 68, 69, 70, 71, 72, -1, - 74, 75, 76, 77, 78, -1, -1, -1, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, -1, 93, - 94, 95, 96, 97, 98, -1, -1, 101, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, - 114, 115, 116, 117, 118, 119, -1, 121, -1, 123, - 124, 125, 126, 127, 128, 129, -1, 131, 132, 133, - 134, -1, -1, 137, 138, 139, 140, 141, -1, 143, - 144, 145, -1, 147, 148, 149, -1, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, -1, 162, -1, - 164, 165, 166, 167, 168, -1, 170, -1, 172, -1, - -1, -1, 176, 177, 178, 179, -1, 181, 182, -1, - 184, 185, 186, -1, 188, 189, 190, 191, 192, -1, - 194, 195, 196, 197, -1, 199, 200, 201, 202, 203, - 204, 205, -1, 207, -1, 209, 210, 211, 212, 213, - 214, 215, -1, 217, -1, 219, -1, -1, 222, -1, - 224, 225, 226, 227, 228, -1, -1, 231, 232, -1, - 234, -1, -1, 237, 238, 239, -1, -1, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, -1, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, -1, - 274, 275, -1, 277, -1, 279, 280, 281, 282, 283, - 284, -1, 286, 287, -1, -1, 290, 291, 292, -1, - -1, 295, 296, 297, -1, 299, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, -1, 313, - 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, -1, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, -1, 352, 353, - -1, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, -1, 371, 372, 373, - 374, 375, -1, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, -1, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, -1, - 404, 405, -1, 407, -1, 409, 410, 411, 412, 413, - -1, 415, 416, 417, -1, -1, 420, 421, 422, 423, - 424, -1, 426, 427, 428, 429, 430, 431, 432, 433, - -1, -1, 436, 437, 438, 439, 440, -1, -1, 443, - 444, 445, 446, 447, 448, 449, -1, 451, -1, 453, - 454, 455, 456, -1, -1, 459, -1, -1, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 3, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, 41, 42, 43, -1, - 45, 46, 47, 48, 49, 50, 51, 52, -1, 54, - 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, - 65, -1, -1, 68, 69, 70, 71, 72, -1, 74, - 75, 76, 77, -1, -1, 80, -1, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, -1, 93, 94, - 95, 96, 97, 98, -1, 100, 101, 102, 103, -1, - -1, -1, 107, -1, -1, -1, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, 121, -1, 123, 124, - 125, 126, 127, 128, 129, -1, 131, 132, 133, 134, - -1, -1, 137, 138, 139, 140, 141, -1, 143, 144, - 145, -1, 147, 148, 149, -1, 151, 152, 153, 154, - -1, 156, 157, 158, 159, -1, -1, 162, -1, 164, - 165, 166, 167, 168, -1, 170, -1, 172, 173, -1, - 175, 176, 177, 178, 179, -1, 181, -1, -1, -1, - 185, 186, -1, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, -1, 207, 208, 209, 210, 211, 212, 213, 214, - 215, -1, 217, -1, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, -1, -1, 231, -1, 233, 234, - 235, -1, 237, 238, 239, -1, -1, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, -1, -1, 272, -1, 274, - 275, 276, 277, -1, -1, 280, 281, 282, 283, 284, - -1, 286, 287, -1, -1, 290, 291, 292, -1, -1, - 295, 296, 297, 298, 299, 300, -1, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, -1, 313, 314, - -1, 316, -1, 318, 319, 320, -1, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, -1, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, -1, 352, 353, 354, - 355, 356, 357, 358, 359, -1, 361, 362, 363, 364, - 365, 366, 367, 368, 369, -1, 371, 372, 373, 374, - 375, -1, 377, 378, 379, 380, 381, 382, 383, 384, - 385, 386, -1, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, -1, 402, -1, 404, - 405, -1, 407, 408, 409, 410, 411, 412, 413, -1, - 415, 416, 417, -1, -1, 420, 421, -1, 423, -1, - -1, 426, 427, 428, 429, 430, 431, 432, 433, -1, - -1, 436, 437, 438, 439, 440, -1, -1, 443, 444, - 445, 446, 447, -1, 449, 450, 451, 452, 453, 454, - 455, 456, -1, -1, 459, -1, -1, 462, 463, 464, - 465, 466, 467, 3, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 479, 480, 481, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, -1, 45, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, -1, -1, 68, 69, - 70, 71, 72, -1, 74, 75, 76, 77, 78, -1, - -1, -1, 82, 83, 84, 85, 86, 87, -1, 89, - 90, 91, -1, 93, 94, 95, 96, 97, 98, -1, - -1, 101, 102, 103, -1, -1, -1, -1, -1, -1, - -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, 121, -1, 123, 124, 125, 126, 127, 128, 129, - -1, 131, 132, 133, 134, -1, -1, 137, 138, 139, - 140, 141, -1, 143, 144, 145, -1, 147, 148, 149, - -1, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, -1, 162, -1, 164, 165, 166, 167, 168, -1, - 170, -1, 172, -1, -1, -1, 176, 177, 178, 179, - -1, 181, 182, -1, 184, -1, 186, -1, 188, 189, - 190, 191, 192, -1, 194, 195, 196, 197, -1, 199, - 200, 201, 202, 203, 204, 205, -1, 207, -1, 209, - 210, 211, 212, 213, 214, 215, -1, 217, -1, 219, - -1, -1, 222, -1, 224, 225, 226, 227, 228, -1, - -1, 231, 232, -1, 234, -1, -1, 237, 238, 239, - -1, -1, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, -1, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, -1, 274, 275, -1, 277, -1, 279, - 280, 281, 282, 283, 284, -1, 286, 287, -1, -1, - 290, 291, 292, -1, -1, 295, 296, 297, -1, 299, - -1, 301, 302, 303, 304, 305, 306, 307, 308, -1, - 310, 311, -1, 313, 314, 315, 316, 317, 318, 319, - 320, -1, 322, 323, 324, 325, 326, 327, 328, 329, - -1, 331, 332, 333, 334, 335, 336, -1, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, -1, 352, 353, -1, 355, 356, 357, 358, 359, - 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, - -1, 371, 372, 373, 374, 375, -1, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, -1, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, -1, 404, 405, -1, 407, -1, 409, - 410, 411, 412, 413, -1, 415, 416, 417, -1, -1, - 420, 421, 422, 423, 424, -1, 426, 427, 428, 429, - 430, 431, 432, 433, -1, -1, 436, 437, 438, 439, - 440, -1, -1, 443, 444, 445, 446, 447, 448, 449, - -1, 451, -1, 453, 454, 455, 456, -1, -1, 459, - -1, -1, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, -1, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, -1, -1, 80, - -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, -1, -1, -1, 107, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, -1, 156, 157, 158, 159, -1, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, -1, -1, -1, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, -1, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, -1, 233, 234, 235, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, -1, - -1, 272, -1, 274, 275, 276, 277, 278, -1, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, -1, 298, 299, 300, - -1, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, -1, 316, -1, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, -1, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - -1, 402, -1, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, -1, 423, -1, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, -1, 449, -1, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 479, 480, - 481, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, 50, 51, 52, -1, 54, 55, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, -1, -1, 80, -1, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, 100, 101, 102, 103, -1, -1, - -1, 107, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, -1, - 156, 157, 158, 159, -1, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, 173, -1, 175, - 176, 177, 178, 179, -1, 181, -1, -1, -1, 185, - 186, -1, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, 208, -1, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, -1, -1, 231, -1, 233, 234, 235, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, -1, 272, -1, 274, 275, - 276, 277, -1, -1, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, -1, 298, 299, 300, -1, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, -1, - 316, -1, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, 354, 355, - 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, 382, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, -1, 402, -1, 404, 405, - -1, 407, 408, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, -1, 423, -1, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, -1, 449, -1, 451, 452, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 479, 480, 481, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, -1, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, -1, -1, 80, - -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, -1, -1, -1, 107, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, -1, 156, 157, 158, 159, -1, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, -1, -1, -1, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, -1, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, -1, 233, 234, 235, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - -1, 272, -1, 274, 275, 276, 277, -1, -1, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, -1, 298, 299, 300, - -1, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, -1, 316, -1, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, -1, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - -1, 402, -1, 404, 405, -1, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, -1, 423, -1, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, -1, 449, -1, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 479, 480, - 481, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, 50, 51, 52, -1, 54, 55, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, -1, -1, 80, -1, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, 100, 101, 102, 103, -1, -1, - -1, 107, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, -1, - 156, 157, 158, 159, -1, -1, 162, -1, 164, 165, - 166, 167, 168, 169, 170, -1, 172, 173, -1, 175, - 176, 177, 178, 179, -1, 181, -1, -1, -1, 185, - 186, -1, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, 208, -1, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, -1, -1, 231, -1, 233, 234, 235, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, -1, -1, 272, -1, 274, 275, - 276, 277, -1, -1, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, -1, 298, 299, 300, -1, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, -1, - 316, -1, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, 354, 355, - 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, 382, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, -1, 402, -1, 404, 405, - -1, 407, 408, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, -1, 423, -1, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, -1, 449, -1, 451, 452, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 479, 480, 481, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, -1, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, -1, -1, 80, - -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, -1, -1, -1, 107, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, -1, 156, 157, 158, 159, -1, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, -1, -1, -1, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, -1, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, -1, 233, 234, 235, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, -1, - -1, 272, -1, 274, 275, 276, 277, -1, -1, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, -1, 298, 299, 300, - -1, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, -1, 316, -1, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, -1, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - -1, 402, -1, 404, 405, -1, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, -1, 423, -1, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, -1, 449, -1, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 479, 480, - 481, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, 50, 51, 52, -1, 54, 55, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, -1, -1, 80, -1, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, 100, 101, 102, 103, -1, -1, - -1, 107, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, -1, - 156, 157, 158, 159, -1, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, 173, -1, 175, - 176, 177, 178, 179, -1, 181, -1, -1, -1, 185, - 186, -1, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, 208, -1, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, -1, -1, 231, -1, 233, 234, 235, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 272, 273, 274, 275, 276, 277, 278, -1, -1, 281, + -1, 283, 284, 285, 286, -1, -1, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, 306, 307, 308, 309, -1, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, -1, 325, -1, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, -1, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, -1, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, -1, 434, -1, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, -1, 460, 461, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 3, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 490, 491, + 492, -1, -1, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, -1, 55, + 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, -1, -1, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, -1, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, -1, + -1, -1, 108, -1, -1, -1, 112, 113, 114, 115, + 116, 117, 118, 119, 120, -1, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + -1, 157, 158, 159, 160, -1, -1, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, 175, + -1, 177, 178, 179, 180, 181, -1, 183, -1, -1, + -1, 187, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, -1, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, 223, 224, 225, + 226, 227, -1, -1, -1, -1, 232, 233, 234, 235, + 236, 237, -1, -1, 240, -1, 242, 243, 244, -1, + 246, 247, 248, -1, -1, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, -1, -1, 272, -1, 274, 275, - 276, 277, -1, -1, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, -1, 298, 299, 300, -1, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, -1, - 316, -1, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, 354, 355, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, -1, -1, 281, -1, 283, 284, 285, + 286, 287, -1, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + -1, 307, 308, 309, -1, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, -1, 325, + -1, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, 382, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, -1, 402, -1, 404, 405, - -1, 407, 408, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, -1, 423, -1, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, -1, 449, -1, 451, 452, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 479, 480, 481, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, -1, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, -1, -1, 80, - -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, -1, -1, -1, 107, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, -1, 156, 157, 158, 159, -1, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, -1, -1, -1, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, -1, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, -1, 233, 234, 235, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, -1, - -1, 272, -1, 274, 275, 276, 277, -1, -1, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, -1, 298, 299, 300, - -1, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, -1, 316, -1, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, -1, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - -1, 402, -1, 404, 405, -1, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, -1, 423, -1, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, -1, 449, -1, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 479, 480, - 481, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, 50, 51, 52, -1, 54, 55, - 56, 57, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, 70, 71, 72, -1, 74, 75, - 76, 77, -1, -1, 80, -1, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, 100, 101, 102, 103, -1, -1, - -1, 107, -1, -1, -1, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, -1, - 156, 157, 158, 159, -1, -1, 162, -1, 164, 165, - 166, 167, 168, -1, 170, -1, 172, 173, -1, 175, - 176, 177, 178, 179, -1, 181, -1, -1, -1, 185, - 186, -1, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, 208, -1, 210, 211, 212, 213, 214, 215, - -1, 217, -1, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, -1, -1, 231, -1, 233, 234, 235, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 366, 367, 368, -1, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + -1, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, -1, 412, -1, 414, 415, + -1, 417, 418, 419, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, -1, 434, -1, + -1, 437, 438, 439, 440, 441, 442, 443, 444, -1, + -1, 447, 448, 449, 450, 451, -1, -1, 454, 455, + 456, 457, 458, -1, 460, -1, 462, 463, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 3, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 490, 491, 492, -1, -1, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, -1, -1, -1, -1, -1, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, -1, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, -1, -1, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, -1, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, -1, -1, -1, 108, -1, + -1, -1, 112, 113, 114, 115, 116, 117, 118, 119, + 120, -1, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, -1, 157, 158, 159, + 160, -1, -1, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, -1, -1, -1, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, -1, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, -1, -1, + -1, -1, 232, 233, 234, 235, 236, 237, -1, -1, + 240, -1, 242, 243, 244, -1, 246, 247, 248, -1, + -1, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + -1, 281, -1, 283, 284, 285, 286, -1, -1, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, -1, 307, 308, 309, + -1, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, -1, 325, -1, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, -1, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, -1, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, -1, 412, -1, 414, 415, -1, -1, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, -1, 434, -1, -1, 437, 438, 439, + 440, 441, 442, 443, 444, -1, -1, 447, 448, 449, + 450, 451, -1, -1, 454, 455, 456, 457, 458, -1, + 460, -1, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, 3, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 490, 491, 492, -1, -1, -1, -1, -1, 22, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 32, 33, + 34, -1, -1, -1, -1, -1, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, + -1, 55, 56, 57, 58, -1, 60, 61, 62, 63, + 64, 65, 66, -1, -1, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, -1, -1, 81, -1, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, + 104, -1, -1, -1, 108, -1, -1, -1, 112, 113, + 114, 115, 116, 117, 118, 119, 120, -1, 122, -1, + 124, 125, 126, 127, 128, 129, 130, -1, 132, 133, + 134, 135, -1, -1, 138, 139, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, -1, 152, 153, + 154, 155, -1, 157, 158, 159, 160, -1, -1, 163, + -1, 165, 166, 167, 168, 169, -1, 171, -1, 173, + 174, 175, -1, 177, 178, 179, 180, 181, -1, 183, + -1, -1, -1, 187, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, 201, 202, 203, + 204, 205, 206, 207, 208, -1, 210, 211, -1, 213, + 214, 215, 216, 217, 218, -1, 220, -1, 222, 223, + 224, 225, 226, 227, -1, -1, -1, -1, 232, 233, + 234, 235, 236, 237, -1, -1, 240, -1, 242, 243, + 244, -1, 246, 247, 248, -1, -1, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, -1, 281, -1, 283, + 284, 285, 286, -1, -1, 289, 290, 291, 292, 293, + -1, 295, 296, -1, -1, 299, 300, 301, -1, -1, + 304, 305, -1, 307, 308, 309, -1, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, + -1, 325, -1, 327, 328, 329, -1, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, -1, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, -1, 361, 362, 363, + 364, 365, 366, 367, 368, -1, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, -1, 381, 382, 383, + 384, 385, -1, 387, 388, 389, 390, 391, 392, 393, + 394, 395, 396, -1, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, -1, 412, -1, + 414, 415, -1, -1, 418, 419, 420, 421, 422, 423, + 424, -1, 426, 427, 428, -1, -1, 431, 432, -1, + 434, -1, -1, 437, 438, 439, 440, 441, 442, 443, + 444, -1, -1, 447, 448, 449, 450, 451, -1, -1, + 454, 455, 456, 457, 458, -1, 460, -1, 462, 463, + 464, 465, 466, 467, -1, -1, 470, -1, -1, 473, + 474, 475, 476, 477, 478, 3, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 490, 491, 492, -1, + -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, + 28, 29, 30, -1, 32, 33, 34, -1, -1, -1, + -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, -1, 55, 56, 57, + 58, -1, 60, 61, 62, 63, 64, 65, 66, -1, + -1, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, -1, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, -1, -1, -1, + 108, -1, -1, -1, 112, 113, 114, 115, 116, 117, + 118, 119, 120, -1, 122, -1, 124, 125, 126, 127, + 128, 129, 130, -1, 132, 133, 134, 135, -1, -1, + 138, 139, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, -1, 152, 153, 154, 155, -1, 157, + 158, 159, 160, -1, -1, 163, -1, 165, 166, 167, + 168, 169, 170, 171, -1, 173, 174, 175, -1, 177, + 178, 179, 180, 181, -1, 183, -1, -1, -1, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, 201, 202, 203, 204, 205, 206, 207, + 208, -1, 210, 211, -1, 213, 214, 215, 216, 217, + 218, -1, 220, -1, 222, 223, 224, 225, 226, 227, + -1, -1, -1, -1, 232, 233, 234, 235, 236, 237, + -1, -1, 240, -1, 242, 243, 244, -1, 246, 247, + 248, -1, -1, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, -1, -1, 281, -1, 283, 284, 285, 286, -1, + -1, 289, 290, 291, 292, 293, -1, 295, 296, -1, + -1, 299, 300, 301, -1, -1, 304, 305, -1, 307, + 308, 309, -1, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, -1, 322, 323, -1, 325, -1, 327, + 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, -1, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, -1, 361, 362, 363, 364, 365, 366, 367, + 368, -1, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, -1, 381, 382, 383, 384, 385, -1, 387, + 388, 389, 390, 391, 392, 393, 394, 395, 396, -1, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, -1, 412, -1, 414, 415, -1, -1, + 418, 419, 420, 421, 422, 423, 424, -1, 426, 427, + 428, -1, -1, 431, 432, -1, 434, -1, -1, 437, + 438, 439, 440, 441, 442, 443, 444, -1, -1, 447, + 448, 449, 450, 451, -1, -1, 454, 455, 456, 457, + 458, -1, 460, -1, 462, 463, 464, 465, 466, 467, + -1, -1, 470, -1, -1, 473, 474, 475, 476, 477, + 478, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 490, 491, 492, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, -1, 55, 56, 57, 58, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, -1, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, -1, 157, 158, 159, 160, -1, + -1, 163, -1, 165, 166, 167, 168, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, -1, -1, -1, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + -1, 213, 214, 215, 216, 217, 218, -1, 220, -1, + 222, 223, 224, 225, 226, 227, -1, -1, -1, -1, + 232, 233, 234, 235, 236, 237, -1, -1, 240, -1, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, -1, -1, 281, + -1, 283, 284, 285, 286, -1, -1, 289, 290, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, -1, 307, 308, 309, -1, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, -1, 325, -1, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, -1, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, -1, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, 427, 428, -1, -1, 431, + 432, -1, 434, -1, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, -1, 460, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, 3, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 490, 491, + 492, -1, -1, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 32, 33, 34, -1, + -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, -1, 55, + 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, + 66, -1, -1, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, -1, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, -1, + -1, -1, 108, -1, -1, -1, 112, 113, 114, 115, + 116, 117, 118, 119, 120, -1, 122, -1, 124, 125, + 126, 127, 128, 129, 130, -1, 132, 133, 134, 135, + -1, -1, 138, 139, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, -1, 152, 153, 154, 155, + -1, 157, 158, 159, 160, -1, -1, 163, -1, 165, + 166, 167, 168, 169, -1, 171, -1, 173, 174, 175, + -1, 177, 178, 179, 180, 181, -1, 183, -1, -1, + -1, 187, 188, -1, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, -1, 201, 202, 203, 204, 205, + 206, 207, 208, -1, 210, 211, -1, 213, 214, 215, + 216, 217, 218, -1, 220, -1, 222, 223, 224, 225, + 226, 227, -1, -1, -1, -1, 232, 233, 234, 235, + 236, 237, -1, -1, 240, -1, 242, 243, 244, -1, + 246, 247, 248, -1, -1, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, -1, -1, 272, -1, 274, 275, - 276, 277, -1, -1, 280, 281, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, -1, 298, 299, 300, -1, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, -1, - 316, -1, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, 354, 355, - 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, 379, 380, 381, 382, 383, 384, 385, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, -1, 402, -1, 404, 405, - -1, 407, 408, 409, 410, 411, 412, 413, -1, 415, - 416, 417, -1, -1, 420, 421, -1, 423, -1, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, -1, 449, -1, 451, 452, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 479, 480, 481, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, - 51, 52, -1, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, 65, -1, -1, 68, 69, 70, - 71, 72, -1, 74, 75, 76, 77, -1, -1, 80, - -1, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, -1, 100, - 101, 102, 103, -1, -1, -1, 107, -1, -1, -1, - 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, - 121, -1, 123, 124, 125, 126, 127, 128, 129, -1, - 131, 132, 133, 134, -1, -1, 137, 138, 139, 140, - 141, -1, 143, 144, 145, -1, 147, 148, 149, -1, - 151, 152, 153, 154, -1, 156, 157, 158, 159, -1, - -1, 162, -1, 164, 165, 166, 167, 168, -1, 170, - -1, 172, 173, -1, 175, 176, 177, 178, 179, -1, - 181, -1, -1, -1, 185, 186, -1, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, -1, 199, 200, - 201, 202, 203, 204, 205, -1, 207, 208, -1, 210, - 211, 212, 213, 214, 215, -1, 217, -1, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, -1, -1, - 231, -1, 233, 234, 235, -1, 237, 238, 239, -1, - -1, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, -1, - -1, 272, -1, 274, 275, 276, 277, -1, -1, 280, - 281, 282, 283, 284, -1, 286, 287, -1, -1, 290, - 291, 292, -1, -1, 295, 296, -1, 298, 299, 300, - -1, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, -1, 313, 314, -1, 316, -1, 318, 319, 320, - -1, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, -1, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - -1, 352, 353, 354, 355, 356, 357, 358, 359, -1, - 361, 362, 363, 364, 365, 366, 367, 368, 369, -1, - 371, 372, 373, 374, 375, -1, 377, 378, -1, 380, - 381, 382, 383, 384, 385, 386, -1, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - -1, 402, -1, 404, 405, -1, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, -1, -1, 420, - 421, -1, 423, -1, -1, 426, 427, 428, 429, 430, - 431, 432, 433, -1, -1, 436, 437, 438, 439, 440, - -1, -1, 443, 444, 445, 446, 447, -1, 449, -1, - 451, 452, 453, 454, 455, 456, -1, -1, 459, -1, - -1, 462, 463, 464, 465, 466, 467, 3, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 479, 480, - 481, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, 50, 51, 52, -1, -1, 55, - -1, -1, -1, 59, 60, 61, 62, 63, 64, 65, - -1, -1, 68, 69, -1, -1, 72, -1, 74, 75, - 76, 77, -1, -1, 80, -1, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, -1, 93, 94, 95, - 96, 97, 98, -1, 100, 101, 102, 103, -1, -1, - -1, 107, -1, -1, -1, 111, 112, 113, 114, 115, - 116, -1, -1, 119, -1, 121, -1, 123, 124, 125, - 126, 127, 128, 129, -1, 131, 132, 133, 134, -1, - -1, 137, 138, 139, 140, 141, -1, 143, 144, 145, - -1, 147, 148, 149, -1, 151, 152, 153, 154, -1, - 156, 157, 158, 159, -1, -1, 162, -1, 164, 165, - 166, -1, 168, -1, 170, -1, 172, 173, -1, 175, - 176, 177, 178, 179, -1, 181, -1, -1, -1, 185, - 186, -1, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, -1, 199, 200, 201, 202, 203, 204, 205, - -1, 207, 208, -1, 210, 211, 212, 213, -1, -1, - -1, -1, -1, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, -1, -1, 231, -1, 233, 234, 235, - -1, 237, 238, 239, -1, -1, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, -1, 261, -1, 263, 264, 265, - 266, 267, 268, 269, -1, -1, 272, -1, 274, 275, - 276, 277, -1, -1, 280, -1, 282, 283, 284, -1, - 286, 287, -1, -1, 290, 291, 292, -1, -1, 295, - 296, -1, 298, 299, 300, -1, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, -1, 313, 314, -1, - 316, -1, 318, 319, 320, -1, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, -1, 333, 334, 335, - 336, -1, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, -1, 352, 353, 354, 355, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, -1, -1, 281, -1, 283, 284, 285, + 286, -1, -1, 289, 290, 291, 292, 293, -1, 295, + 296, -1, -1, 299, 300, 301, -1, -1, 304, 305, + -1, 307, 308, 309, -1, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, -1, 322, 323, -1, 325, + -1, 327, 328, 329, -1, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, 362, 363, 364, 365, - 366, 367, 368, 369, -1, 371, 372, 373, 374, 375, - -1, 377, 378, -1, 380, 381, 382, 383, 384, -1, - 386, -1, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, -1, 402, -1, 404, 405, - -1, 407, 408, 409, 410, 411, 412, 413, -1, 415, - -1, -1, -1, -1, 420, 421, -1, 423, -1, -1, - 426, 427, 428, 429, 430, 431, 432, 433, -1, -1, - 436, 437, 438, 439, 440, -1, -1, 443, 444, 445, - 446, 447, -1, -1, -1, 451, 452, 453, 454, 455, - 456, -1, -1, 459, -1, -1, 462, 463, 464, 465, - 466, 467, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 479, 480, 481 + 366, 367, 368, -1, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, -1, 381, 382, 383, 384, 385, + -1, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, -1, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, -1, 412, -1, 414, 415, + -1, -1, 418, 419, 420, 421, 422, 423, 424, -1, + 426, 427, 428, -1, -1, 431, 432, -1, 434, -1, + -1, 437, 438, 439, 440, 441, 442, 443, 444, -1, + -1, 447, 448, 449, 450, 451, -1, -1, 454, 455, + 456, 457, 458, -1, 460, -1, 462, 463, 464, 465, + 466, 467, -1, -1, 470, -1, -1, 473, 474, 475, + 476, 477, 478, 3, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 490, 491, 492, -1, -1, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + 30, -1, 32, 33, 34, -1, -1, -1, -1, -1, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, -1, 55, 56, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, -1, -1, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, -1, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, -1, -1, -1, 108, -1, + -1, -1, 112, 113, 114, 115, 116, 117, 118, 119, + 120, -1, 122, -1, 124, 125, 126, 127, 128, 129, + 130, -1, 132, 133, 134, 135, -1, -1, 138, 139, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, -1, 152, 153, 154, 155, -1, 157, 158, 159, + 160, -1, -1, 163, -1, 165, 166, 167, 168, 169, + -1, 171, -1, 173, 174, 175, -1, 177, 178, 179, + 180, 181, -1, 183, -1, -1, -1, 187, 188, -1, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + -1, 201, 202, 203, 204, 205, 206, 207, 208, -1, + 210, 211, -1, 213, 214, 215, 216, 217, 218, -1, + 220, -1, 222, 223, 224, 225, 226, 227, -1, -1, + -1, -1, 232, 233, 234, 235, 236, 237, -1, -1, + 240, -1, 242, 243, 244, -1, 246, 247, 248, -1, + -1, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, -1, + -1, 281, -1, 283, 284, 285, 286, -1, -1, 289, + 290, 291, 292, 293, -1, 295, 296, -1, -1, 299, + 300, 301, -1, -1, 304, 305, -1, 307, 308, 309, + -1, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, -1, 322, 323, -1, 325, -1, 327, 328, 329, + -1, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, -1, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + -1, 361, 362, 363, 364, 365, 366, 367, 368, -1, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + -1, 381, 382, 383, 384, 385, -1, 387, 388, 389, + 390, 391, 392, 393, 394, 395, 396, -1, 398, 399, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, -1, 412, -1, 414, 415, -1, -1, 418, 419, + 420, 421, 422, 423, 424, -1, 426, 427, 428, -1, + -1, 431, 432, -1, 434, -1, -1, 437, 438, 439, + 440, 441, 442, 443, 444, -1, -1, 447, 448, 449, + 450, 451, -1, -1, 454, 455, 456, 457, 458, -1, + 460, -1, 462, 463, 464, 465, 466, 467, -1, -1, + 470, -1, -1, 473, 474, 475, 476, 477, 478, 3, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 490, 491, 492, -1, -1, -1, -1, -1, 22, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 32, 33, + 34, -1, -1, -1, -1, -1, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, + -1, 55, 56, 57, 58, -1, 60, 61, 62, 63, + 64, 65, 66, -1, -1, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, -1, -1, 81, -1, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, + 104, -1, -1, -1, 108, -1, -1, -1, 112, 113, + 114, 115, 116, 117, 118, 119, 120, -1, 122, -1, + 124, 125, 126, 127, 128, 129, 130, -1, 132, 133, + 134, 135, -1, -1, 138, 139, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, -1, 152, 153, + 154, 155, -1, 157, 158, 159, 160, -1, -1, 163, + -1, 165, 166, 167, 168, 169, -1, 171, -1, 173, + 174, 175, -1, 177, 178, 179, 180, 181, -1, 183, + -1, -1, -1, 187, 188, -1, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, -1, 201, 202, 203, + 204, 205, 206, 207, 208, -1, 210, 211, -1, 213, + 214, 215, 216, 217, 218, -1, 220, -1, 222, 223, + 224, 225, 226, 227, -1, -1, -1, -1, 232, 233, + 234, 235, 236, 237, -1, -1, 240, -1, 242, 243, + 244, -1, 246, 247, 248, -1, -1, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, -1, -1, 281, -1, 283, + 284, 285, 286, -1, -1, 289, 290, 291, 292, 293, + -1, 295, 296, -1, -1, 299, 300, 301, -1, -1, + 304, 305, -1, 307, 308, 309, -1, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, -1, 322, 323, + -1, 325, -1, 327, 328, 329, -1, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, -1, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, -1, 361, 362, 363, + 364, 365, 366, 367, 368, -1, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, -1, 381, 382, 383, + 384, 385, -1, 387, 388, 389, 390, 391, 392, 393, + 394, 395, 396, -1, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, -1, 412, -1, + 414, 415, -1, -1, 418, 419, 420, 421, 422, 423, + 424, -1, 426, 427, 428, -1, -1, 431, 432, -1, + 434, -1, -1, 437, 438, 439, 440, 441, 442, 443, + 444, -1, -1, 447, 448, 449, 450, 451, -1, -1, + 454, 455, 456, 457, 458, -1, 460, -1, 462, 463, + 464, 465, 466, 467, -1, -1, 470, -1, -1, 473, + 474, 475, 476, 477, 478, 3, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 490, 491, 492, -1, + -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, + 28, 29, 30, -1, 32, 33, 34, -1, -1, -1, + -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, -1, 55, 56, 57, + 58, -1, 60, 61, 62, 63, 64, 65, 66, -1, + -1, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, -1, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, -1, -1, -1, + 108, -1, -1, -1, 112, 113, 114, 115, 116, 117, + 118, 119, 120, -1, 122, -1, 124, 125, 126, 127, + 128, 129, 130, -1, 132, 133, 134, 135, -1, -1, + 138, 139, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, -1, 152, 153, 154, 155, -1, 157, + 158, 159, 160, -1, -1, 163, -1, 165, 166, 167, + 168, 169, -1, 171, -1, 173, 174, 175, -1, 177, + 178, 179, 180, 181, -1, 183, -1, -1, -1, 187, + 188, -1, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, -1, 201, 202, 203, 204, 205, 206, 207, + 208, -1, 210, 211, -1, 213, 214, 215, 216, 217, + 218, -1, 220, -1, 222, 223, 224, 225, 226, 227, + -1, -1, -1, -1, 232, 233, 234, 235, 236, 237, + -1, -1, 240, -1, 242, 243, 244, -1, 246, 247, + 248, -1, -1, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, -1, -1, 281, -1, 283, 284, 285, 286, -1, + -1, 289, 290, 291, 292, 293, -1, 295, 296, -1, + -1, 299, 300, 301, -1, -1, 304, 305, -1, 307, + 308, 309, -1, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, -1, 322, 323, -1, 325, -1, 327, + 328, 329, -1, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, -1, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, -1, 361, 362, 363, 364, 365, 366, 367, + 368, -1, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, -1, 381, 382, 383, 384, 385, -1, 387, + 388, -1, 390, 391, 392, 393, 394, 395, 396, -1, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, -1, 412, -1, 414, 415, -1, -1, + 418, 419, 420, 421, 422, 423, 424, -1, 426, 427, + 428, -1, -1, 431, 432, -1, 434, -1, -1, 437, + 438, 439, 440, 441, 442, 443, 444, -1, -1, 447, + 448, 449, 450, 451, -1, -1, 454, 455, 456, 457, + 458, -1, 460, -1, 462, 463, 464, 465, 466, 467, + -1, -1, 470, -1, -1, 473, 474, 475, 476, 477, + 478, 3, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 490, 491, 492, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, -1, -1, 56, -1, -1, -1, 60, 61, + 62, 63, 64, 65, 66, -1, -1, 69, 70, -1, + -1, 73, -1, 75, 76, 77, 78, -1, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, -1, -1, -1, 108, -1, -1, -1, + 112, 113, 114, 115, 116, 117, -1, -1, 120, -1, + 122, -1, 124, 125, 126, 127, 128, 129, 130, -1, + 132, 133, 134, 135, -1, -1, 138, 139, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, -1, + 152, 153, 154, 155, -1, 157, 158, 159, 160, -1, + -1, 163, -1, 165, 166, 167, -1, 169, -1, 171, + -1, 173, 174, 175, -1, 177, 178, 179, 180, 181, + -1, 183, -1, -1, -1, 187, 188, -1, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, -1, 201, + 202, 203, 204, 205, 206, 207, 208, -1, 210, 211, + -1, 213, 214, 215, 216, -1, -1, -1, -1, -1, + 222, 223, 224, 225, 226, 227, -1, -1, -1, -1, + 232, 233, 234, 235, 236, 237, -1, -1, 240, -1, + 242, 243, 244, -1, 246, 247, 248, -1, -1, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, -1, 270, -1, + 272, 273, 274, 275, 276, 277, 278, -1, -1, 281, + -1, 283, 284, 285, 286, -1, -1, 289, -1, 291, + 292, 293, -1, 295, 296, -1, -1, 299, 300, 301, + -1, -1, 304, 305, -1, 307, 308, 309, -1, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, -1, + 322, 323, -1, 325, -1, 327, 328, 329, -1, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, -1, + 342, 343, 344, 345, -1, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, -1, 361, + 362, 363, 364, 365, 366, 367, 368, -1, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, -1, 381, + 382, 383, 384, 385, -1, 387, 388, -1, 390, 391, + 392, 393, 394, -1, 396, -1, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, -1, + 412, -1, 414, 415, -1, -1, 418, 419, 420, 421, + 422, 423, 424, -1, 426, -1, -1, -1, -1, 431, + 432, -1, 434, -1, -1, 437, 438, 439, 440, 441, + 442, 443, 444, -1, -1, 447, 448, 449, 450, 451, + -1, -1, 454, 455, 456, 457, 458, -1, -1, -1, + 462, 463, 464, 465, 466, 467, -1, -1, 470, -1, + -1, 473, 474, 475, 476, 477, 478, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 490, 491, + 492 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 22, 32, 34, 35, 52, 62, 74, 76, 77, - 83, 85, 97, 99, 116, 119, 134, 136, 140, 146, - 154, 156, 163, 180, 197, 237, 238, 243, 257, 275, - 319, 333, 339, 340, 342, 347, 353, 356, 363, 369, - 370, 377, 381, 391, 406, 426, 437, 443, 448, 461, - 484, 485, 486, 487, 488, 489, 502, 509, 510, 511, - 512, 513, 514, 520, 521, 523, 524, 525, 526, 528, - 532, 544, 549, 550, 553, 554, 555, 574, 577, 578, - 593, 640, 643, 644, 647, 650, 651, 652, 660, 667, - 669, 670, 673, 676, 677, 681, 690, 694, 695, 696, - 699, 701, 702, 703, 704, 712, 714, 734, 738, 740, - 741, 751, 753, 760, 761, 764, 765, 766, 767, 768, - 777, 779, 781, 784, 788, 789, 799, 800, 803, 808, - 822, 854, 857, 858, 859, 864, 867, 869, 871, 873, - 874, 877, 878, 881, 883, 884, 888, 889, 890, 893, - 894, 895, 896, 897, 904, 906, 907, 908, 909, 915, - 917, 918, 924, 925, 926, 929, 930, 931, 932, 934, - 935, 937, 938, 940, 941, 943, 955, 957, 960, 962, - 963, 972, 974, 979, 984, 992, 996, 997, 998, 999, - 1000, 1001, 1007, 1043, 420, 464, 910, 29, 80, 96, - 114, 120, 138, 149, 158, 171, 176, 183, 202, 227, - 249, 290, 314, 324, 325, 328, 355, 358, 362, 364, - 371, 374, 393, 400, 405, 406, 409, 413, 423, 428, - 441, 454, 666, 910, 3, 22, 23, 24, 25, 26, - 27, 28, 29, 31, 32, 33, 41, 42, 43, 45, + 0, 22, 33, 35, 36, 53, 63, 75, 77, 78, + 84, 86, 98, 100, 117, 120, 135, 137, 141, 147, + 155, 157, 164, 182, 199, 246, 247, 252, 266, 284, + 328, 342, 348, 349, 351, 356, 362, 365, 372, 379, + 380, 387, 391, 401, 417, 437, 448, 454, 459, 472, + 496, 498, 499, 500, 501, 502, 515, 522, 523, 524, + 525, 530, 531, 537, 538, 540, 541, 542, 543, 545, + 548, 560, 565, 566, 569, 570, 571, 589, 592, 593, + 608, 657, 660, 661, 664, 667, 668, 669, 677, 684, + 686, 687, 690, 693, 694, 698, 707, 711, 712, 713, + 716, 718, 719, 720, 721, 729, 731, 751, 755, 757, + 758, 768, 770, 777, 778, 781, 782, 783, 784, 785, + 794, 796, 798, 801, 805, 806, 816, 817, 822, 827, + 838, 870, 873, 874, 875, 880, 883, 885, 887, 889, + 890, 894, 895, 898, 900, 901, 905, 906, 907, 910, + 911, 912, 913, 914, 921, 923, 924, 925, 926, 932, + 934, 935, 941, 942, 943, 946, 947, 948, 949, 951, + 952, 954, 955, 957, 958, 960, 972, 974, 977, 979, + 980, 989, 991, 996, 1001, 1009, 1013, 1014, 1015, 1016, + 1017, 1018, 1024, 1060, 431, 475, 927, 30, 81, 97, + 115, 121, 139, 150, 159, 172, 178, 185, 205, 236, + 258, 299, 323, 333, 334, 337, 364, 367, 371, 374, + 381, 384, 403, 410, 415, 417, 420, 424, 434, 439, + 452, 465, 683, 927, 3, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 32, 33, 34, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 59, 60, 61, 62, 63, 64, 65, 68, - 69, 70, 71, 72, 74, 75, 76, 77, 78, 80, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 93, 94, 95, 96, 97, 98, 100, 101, 102, 103, - 107, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 121, 123, 124, 125, 126, 127, 128, 129, 131, 132, - 133, 134, 137, 138, 139, 140, 141, 143, 144, 145, - 147, 148, 149, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 162, 164, 165, 166, 167, 168, 170, - 172, 173, 175, 176, 177, 178, 179, 181, 182, 184, - 185, 186, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 199, 200, 201, 202, 203, 204, 205, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 217, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 231, - 232, 233, 234, 235, 237, 238, 239, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, + 69, 70, 71, 72, 73, 75, 76, 77, 78, 79, + 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 94, 95, 96, 97, 98, 99, 101, 102, 103, + 104, 108, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 122, 124, 125, 126, 127, 128, 129, 130, 132, + 133, 134, 135, 138, 139, 140, 141, 142, 144, 145, + 146, 148, 149, 150, 152, 153, 154, 155, 156, 157, + 158, 159, 160, 161, 163, 165, 166, 167, 168, 169, + 171, 173, 174, 175, 177, 178, 179, 180, 181, 183, + 184, 186, 187, 188, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, 201, 202, 203, 204, 205, 206, + 207, 208, 210, 211, 212, 213, 214, 215, 216, 217, + 218, 220, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, 240, 241, + 242, 243, 244, 246, 247, 248, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 274, 275, - 276, 277, 279, 280, 281, 282, 283, 284, 286, 287, - 290, 291, 292, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 313, 314, 315, 316, 317, 318, 319, 320, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 371, 372, 373, 374, 375, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 401, 402, 404, 405, 407, 408, 409, 410, - 411, 412, 413, 415, 416, 417, 420, 421, 422, 423, - 424, 426, 427, 428, 429, 430, 431, 432, 433, 436, - 437, 438, 439, 440, 443, 444, 445, 446, 447, 448, - 449, 451, 452, 453, 454, 455, 456, 459, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 1104, 1174, - 1186, 1187, 1191, 1192, 1193, 3, 30, 993, 1171, 1186, - 1191, 452, 502, 948, 288, 320, 910, 55, 502, 585, - 24, 42, 67, 80, 114, 120, 138, 149, 158, 171, - 179, 183, 239, 290, 293, 314, 328, 355, 364, 374, - 393, 400, 409, 410, 412, 413, 428, 435, 438, 441, - 594, 649, 756, 809, 823, 30, 319, 1171, 993, 30, - 313, 372, 410, 412, 6, 226, 865, 866, 1177, 24, - 29, 67, 80, 96, 114, 138, 149, 158, 171, 176, - 183, 202, 249, 290, 303, 314, 325, 328, 355, 358, - 362, 364, 371, 374, 393, 400, 406, 409, 413, 421, - 423, 428, 441, 454, 666, 769, 771, 772, 910, 1171, - 99, 452, 502, 644, 647, 650, 943, 956, 960, 963, - 972, 979, 984, 992, 996, 11, 23, 30, 50, 166, - 172, 174, 198, 228, 264, 322, 341, 493, 494, 785, - 786, 993, 1176, 1178, 30, 32, 99, 337, 370, 790, - 791, 792, 1186, 171, 1186, 1173, 1177, 406, 1010, 785, - 1186, 420, 1171, 303, 249, 114, 202, 364, 405, 406, - 502, 875, 876, 363, 1186, 30, 375, 416, 420, 536, - 545, 546, 1186, 27, 180, 790, 791, 320, 910, 1186, - 225, 30, 135, 1012, 1013, 68, 93, 239, 259, 355, - 364, 375, 416, 420, 467, 533, 534, 535, 536, 30, - 375, 416, 420, 536, 420, 289, 1055, 1056, 1169, 1186, - 1010, 495, 1186, 175, 502, 949, 502, 335, 1002, 1003, - 1171, 1002, 3, 54, 56, 57, 70, 71, 117, 118, - 139, 167, 214, 215, 217, 260, 262, 281, 332, 379, - 385, 416, 417, 449, 1078, 1080, 1082, 1084, 1086, 1088, - 1089, 1090, 1092, 1093, 1094, 1096, 1097, 1187, 1191, 1012, - 1013, 1014, 1182, 12, 1183, 1184, 1186, 1183, 1183, 997, - 998, 1001, 0, 505, 502, 948, 150, 216, 294, 434, - 1015, 1016, 997, 999, 1000, 125, 212, 251, 440, 506, - 36, 914, 839, 1174, 774, 1186, 774, 1171, 323, 774, - 423, 1171, 113, 406, 827, 1174, 1186, 1193, 3, 106, - 110, 376, 1179, 1180, 1188, 1191, 1192, 1193, 30, 192, - 1169, 282, 454, 10, 17, 18, 19, 75, 162, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 861, 863, - 1134, 1135, 1186, 192, 1171, 827, 1171, 30, 1179, 1180, - 827, 1171, 1171, 192, 1169, 1171, 192, 774, 1171, 347, - 377, 30, 192, 1055, 1171, 367, 1171, 774, 30, 246, - 1179, 1180, 192, 1169, 226, 122, 222, 273, 331, 911, - 912, 913, 502, 500, 504, 1160, 1162, 942, 943, 944, - 945, 1188, 1169, 1171, 1186, 29, 67, 81, 92, 114, - 138, 176, 202, 227, 290, 325, 355, 358, 400, 409, - 421, 428, 769, 770, 771, 772, 1177, 914, 959, 963, - 972, 979, 984, 996, 1169, 252, 774, 502, 192, 774, - 1171, 774, 423, 192, 1171, 113, 406, 410, 412, 1179, - 1180, 410, 412, 75, 162, 861, 345, 1171, 1171, 1179, - 192, 529, 1186, 192, 1171, 192, 774, 1171, 1171, 367, - 774, 246, 1179, 335, 371, 406, 454, 249, 96, 202, - 29, 92, 176, 325, 362, 421, 423, 427, 661, 30, - 1171, 994, 543, 1177, 1188, 866, 252, 192, 839, 840, - 192, 870, 192, 1171, 192, 776, 1078, 423, 113, 406, - 192, 826, 827, 192, 1180, 1181, 88, 454, 75, 162, - 192, 862, 863, 60, 192, 826, 192, 1181, 192, 826, - 192, 1171, 192, 1171, 367, 870, 192, 776, 192, 246, - 1181, 226, 192, 773, 774, 192, 1170, 1171, 192, 1171, - 914, 502, 961, 594, 956, 448, 942, 948, 1178, 786, - 787, 30, 787, 1178, 787, 30, 787, 1178, 787, 787, - 787, 1178, 1176, 1176, 993, 787, 323, 502, 405, 502, - 617, 617, 617, 288, 418, 506, 617, 364, 1055, 1057, - 506, 905, 1177, 502, 958, 60, 454, 942, 88, 810, - 810, 1186, 49, 481, 222, 504, 291, 291, 288, 174, - 1177, 418, 914, 169, 782, 288, 5, 8, 9, 10, - 12, 38, 54, 56, 57, 66, 67, 70, 71, 78, - 80, 104, 105, 106, 107, 108, 109, 110, 117, 118, - 120, 155, 160, 161, 167, 182, 184, 214, 215, 217, - 232, 240, 241, 260, 262, 271, 273, 278, 279, 281, - 290, 301, 315, 332, 360, 376, 385, 401, 416, 417, - 422, 424, 425, 435, 441, 449, 469, 470, 471, 472, - 474, 475, 476, 477, 482, 493, 494, 495, 502, 997, - 1081, 1084, 1087, 1088, 1089, 1091, 1092, 1093, 1096, 1097, - 1101, 1103, 1104, 1105, 1107, 1130, 1131, 1132, 1136, 1154, - 1159, 1166, 1167, 1174, 1175, 1176, 1177, 1186, 1165, 1166, - 1177, 30, 551, 1168, 1169, 375, 533, 120, 542, 1177, - 12, 543, 12, 1177, 49, 72, 533, 481, 386, 912, - 291, 174, 418, 492, 49, 481, 222, 913, 502, 1169, - 495, 1162, 1057, 942, 173, 950, 1101, 1139, 1002, 506, - 502, 951, 451, 1095, 1095, 1095, 502, 1083, 1083, 317, - 502, 1085, 70, 71, 1095, 1083, 1080, 463, 484, 502, - 1098, 502, 1098, 38, 1079, 502, 115, 190, 253, 256, - 368, 479, 502, 1099, 1100, 504, 775, 1083, 1165, 1163, - 503, 503, 511, 942, 952, 953, 954, 1169, 30, 135, - 1011, 1011, 60, 1011, 163, 169, 236, 285, 1019, 1021, - 1022, 1037, 1039, 1040, 1041, 1015, 1016, 174, 218, 218, - 1055, 1058, 502, 69, 269, 304, 343, 377, 502, 837, - 304, 339, 343, 377, 775, 304, 343, 377, 3, 91, - 144, 242, 304, 339, 343, 377, 409, 411, 461, 544, - 547, 919, 920, 921, 922, 804, 26, 140, 304, 343, - 377, 445, 560, 1171, 26, 140, 377, 440, 527, 465, - 192, 1055, 63, 98, 159, 195, 231, 269, 273, 304, - 305, 343, 352, 361, 369, 377, 389, 398, 402, 456, - 544, 548, 843, 855, 882, 502, 824, 1162, 343, 527, - 198, 155, 26, 32, 47, 77, 133, 140, 143, 170, - 204, 269, 273, 283, 292, 304, 343, 346, 347, 377, - 445, 556, 558, 559, 684, 882, 5, 493, 494, 658, - 1178, 30, 192, 1169, 774, 774, 502, 860, 304, 377, - 504, 155, 288, 304, 343, 377, 855, 882, 26, 140, - 304, 343, 377, 198, 522, 343, 461, 484, 515, 522, - 304, 343, 377, 855, 882, 288, 304, 343, 155, 39, - 61, 112, 201, 250, 254, 269, 303, 343, 348, 371, - 377, 391, 556, 655, 656, 304, 343, 453, 684, 692, - 155, 304, 343, 377, 26, 91, 133, 140, 143, 304, - 339, 343, 377, 384, 546, 534, 536, 198, 155, 47, - 131, 269, 343, 377, 556, 557, 304, 343, 347, 377, - 89, 132, 307, 411, 288, 26, 32, 140, 304, 343, - 377, 575, 576, 522, 169, 343, 515, 522, 155, 343, - 377, 556, 1171, 234, 122, 289, 466, 506, 911, 30, - 135, 450, 495, 503, 832, 1101, 1140, 1141, 1187, 1101, - 1161, 3, 30, 34, 35, 36, 37, 38, 39, 40, - 44, 58, 66, 67, 73, 79, 81, 92, 99, 104, - 105, 106, 108, 109, 110, 120, 122, 130, 135, 136, - 142, 146, 150, 161, 163, 169, 171, 174, 180, 183, - 187, 198, 206, 216, 218, 229, 230, 236, 240, 241, - 273, 278, 285, 288, 289, 293, 294, 312, 321, 337, - 351, 370, 376, 387, 403, 406, 414, 418, 419, 425, - 434, 435, 441, 442, 450, 457, 458, 460, 461, 495, - 1172, 1189, 1191, 1192, 1193, 1194, 1160, 503, 506, 161, - 288, 425, 540, 543, 658, 946, 442, 939, 288, 839, - 502, 774, 1171, 1078, 827, 282, 75, 162, 863, 827, - 827, 169, 1078, 774, 1171, 1171, 503, 617, 1171, 73, - 1078, 273, 174, 502, 742, 515, 39, 933, 1171, 273, - 515, 465, 192, 1169, 515, 774, 774, 742, 438, 594, - 288, 169, 461, 851, 515, 273, 49, 530, 273, 428, - 691, 273, 951, 91, 304, 668, 89, 132, 307, 411, - 39, 742, 169, 192, 515, 454, 192, 1169, 192, 645, - 1169, 1169, 454, 774, 810, 1174, 423, 1174, 1174, 1171, - 169, 1171, 666, 41, 55, 111, 211, 269, 366, 155, - 64, 349, 506, 561, 155, 502, 155, 515, 155, 506, - 561, 465, 155, 506, 561, 155, 506, 192, 773, 192, - 774, 192, 774, 155, 506, 561, 1181, 155, 561, 155, - 155, 561, 155, 561, 155, 89, 132, 307, 411, 169, - 155, 561, 155, 169, 192, 155, 506, 561, 155, 506, - 561, 155, 288, 1139, 406, 503, 956, 787, 993, 787, - 993, 787, 993, 787, 993, 787, 993, 993, 993, 787, - 993, 502, 618, 619, 1186, 618, 30, 114, 138, 171, - 176, 226, 227, 306, 325, 358, 364, 371, 406, 409, - 428, 795, 1168, 1181, 792, 1171, 198, 506, 975, 1177, - 1078, 1143, 39, 1181, 810, 503, 1169, 1171, 234, 1186, - 169, 169, 795, 1181, 363, 1186, 543, 288, 502, 1163, - 500, 997, 1144, 1101, 1158, 502, 502, 169, 502, 502, - 997, 502, 502, 502, 502, 502, 502, 502, 1101, 502, - 502, 502, 502, 502, 502, 502, 502, 280, 608, 502, - 502, 502, 502, 502, 502, 502, 502, 1101, 1101, 1101, - 997, 1101, 1139, 1162, 12, 1177, 12, 502, 1177, 3, - 10, 13, 17, 18, 19, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 165, 166, 167, 168, 170, 171, 172, 173, 175, 176, - 177, 178, 179, 181, 182, 184, 185, 186, 188, 189, - 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 217, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 254, - 255, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 286, - 287, 289, 290, 291, 292, 293, 295, 296, 297, 298, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 364, 365, 366, 367, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 447, 448, 449, 450, 452, 453, 454, 455, 456, - 457, 459, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 480, 481, 482, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 1134, - 1136, 1138, 1190, 1195, 462, 1117, 300, 1101, 218, 506, - 1008, 12, 502, 1177, 1162, 1008, 123, 194, 552, 506, - 72, 12, 120, 543, 39, 3, 12, 120, 239, 541, - 658, 1097, 1177, 1177, 94, 137, 1113, 103, 12, 120, - 537, 538, 540, 658, 120, 537, 234, 1169, 95, 348, - 778, 503, 948, 36, 46, 53, 79, 193, 198, 220, - 235, 290, 293, 382, 503, 506, 1003, 1170, 39, 502, - 1139, 1176, 1095, 1095, 38, 1079, 416, 416, 1176, 1176, - 500, 500, 1176, 418, 418, 418, 502, 418, 1176, 1172, - 504, 1083, 174, 1044, 15, 492, 1160, 1185, 503, 506, - 951, 999, 999, 1017, 1018, 1101, 999, 166, 264, 1028, - 224, 269, 331, 380, 440, 30, 1023, 1101, 493, 494, - 1024, 1025, 1101, 1103, 1037, 1038, 1022, 1021, 1019, 1020, - 169, 1040, 283, 1042, 1019, 1037, 1058, 964, 1169, 1058, - 39, 1186, 377, 1139, 69, 418, 418, 364, 198, 209, - 294, 297, 379, 450, 495, 830, 831, 832, 834, 836, - 838, 1078, 1187, 418, 453, 418, 364, 418, 418, 364, - 236, 418, 80, 418, 409, 533, 304, 919, 921, 492, - 923, 169, 180, 198, 353, 805, 806, 73, 92, 151, - 171, 321, 435, 614, 615, 92, 120, 273, 418, 92, - 418, 120, 273, 364, 92, 133, 143, 304, 343, 739, - 364, 674, 29, 67, 138, 176, 290, 325, 358, 421, - 428, 769, 770, 1171, 155, 343, 377, 556, 288, 658, - 369, 231, 418, 1186, 418, 278, 658, 124, 219, 364, - 375, 420, 535, 774, 349, 377, 843, 856, 128, 503, - 825, 830, 418, 441, 409, 1169, 81, 151, 192, 601, - 614, 1186, 81, 92, 879, 309, 288, 360, 362, 423, - 92, 879, 33, 346, 360, 362, 423, 360, 1169, 170, - 204, 283, 774, 502, 418, 418, 191, 502, 565, 24, - 245, 409, 438, 463, 565, 92, 506, 128, 5, 5, - 304, 198, 155, 343, 377, 556, 882, 442, 442, 270, - 1078, 418, 364, 502, 861, 1171, 1169, 418, 418, 364, - 856, 128, 107, 406, 407, 891, 892, 1056, 1169, 1186, - 892, 418, 418, 742, 892, 114, 377, 547, 418, 517, - 547, 418, 418, 364, 856, 128, 1169, 418, 418, 1169, - 1080, 658, 60, 657, 658, 658, 112, 250, 254, 60, - 418, 515, 258, 364, 515, 269, 656, 418, 418, 278, - 1177, 684, 774, 418, 418, 364, 393, 328, 1177, 328, - 418, 328, 418, 328, 742, 742, 409, 1055, 309, 309, - 92, 418, 879, 364, 418, 418, 565, 565, 774, 774, - 774, 774, 1169, 48, 447, 48, 48, 418, 48, 418, - 447, 364, 502, 506, 547, 441, 700, 1180, 418, 517, - 547, 1169, 418, 879, 364, 304, 343, 331, 344, 373, - 539, 911, 1140, 1140, 1141, 503, 15, 16, 506, 1015, - 1016, 501, 507, 1169, 944, 1171, 1169, 220, 1078, 220, - 288, 220, 220, 658, 774, 774, 220, 220, 220, 1078, - 220, 220, 220, 288, 418, 174, 418, 579, 428, 502, - 39, 155, 774, 743, 744, 1189, 919, 1078, 288, 155, - 671, 1171, 273, 309, 502, 516, 756, 442, 335, 454, - 1169, 30, 892, 742, 516, 155, 1180, 99, 180, 531, - 593, 651, 714, 788, 808, 915, 155, 1177, 692, 693, - 155, 288, 1177, 1180, 242, 774, 774, 774, 774, 147, - 330, 502, 700, 273, 516, 1169, 273, 653, 655, 273, - 39, 283, 309, 502, 617, 617, 192, 648, 1169, 169, - 192, 811, 1171, 502, 746, 837, 1171, 502, 828, 828, - 39, 1078, 28, 51, 213, 715, 226, 461, 463, 995, - 366, 840, 839, 1078, 1171, 502, 776, 1078, 826, 827, - 1181, 1180, 155, 561, 155, 442, 155, 442, 862, 863, - 561, 826, 1181, 826, 1171, 1171, 1078, 776, 1181, 700, - 155, 773, 774, 1170, 1171, 1171, 774, 503, 192, 1169, - 956, 993, 993, 993, 993, 993, 993, 618, 503, 506, - 503, 177, 326, 359, 372, 407, 1170, 773, 113, 374, - 826, 1170, 282, 793, 794, 1186, 826, 826, 1170, 1168, - 1168, 1170, 773, 418, 461, 801, 150, 236, 697, 698, - 24, 153, 360, 380, 976, 1055, 277, 977, 503, 506, - 959, 418, 1169, 875, 876, 791, 790, 791, 174, 181, - 802, 1186, 29, 81, 138, 176, 227, 325, 358, 428, - 769, 770, 1139, 501, 1139, 1144, 1145, 457, 1155, 1156, - 1101, 1139, 502, 1176, 1176, 3, 12, 115, 190, 253, - 256, 368, 479, 1146, 1147, 1177, 1139, 1139, 1139, 1176, - 1176, 1101, 1101, 861, 1101, 1140, 1142, 1149, 360, 493, - 494, 502, 1102, 1103, 1136, 1150, 503, 1139, 1101, 1142, - 1151, 1101, 58, 174, 230, 419, 1101, 1139, 1152, 135, - 273, 997, 1139, 258, 1103, 1101, 1111, 1112, 1113, 258, - 1101, 1113, 503, 506, 1099, 1176, 1099, 1078, 1101, 1101, - 1101, 1101, 1189, 416, 44, 403, 1164, 774, 1101, 502, - 997, 1153, 135, 137, 161, 265, 266, 267, 268, 272, - 273, 278, 425, 436, 1148, 1101, 502, 1101, 418, 53, - 193, 198, 235, 382, 1101, 1101, 1101, 1101, 1101, 1101, - 1101, 1101, 1101, 1101, 30, 37, 387, 1133, 183, 164, - 1118, 360, 502, 1130, 179, 239, 406, 410, 412, 438, - 1009, 1169, 1167, 1044, 1140, 1044, 1169, 420, 502, 1177, - 506, 503, 191, 191, 561, 954, 943, 947, 1101, 503, - 249, 273, 1004, 1139, 503, 503, 500, 481, 481, 503, - 503, 1176, 501, 1176, 503, 190, 253, 1100, 253, 1100, - 1100, 1176, 256, 503, 1172, 229, 361, 478, 502, 997, - 1045, 1046, 1047, 1055, 1061, 1071, 1104, 1106, 1107, 1186, - 458, 1066, 1182, 954, 952, 506, 40, 130, 442, 820, - 360, 361, 493, 494, 1025, 1027, 1103, 380, 224, 289, - 506, 5, 1026, 1176, 1026, 360, 361, 1027, 1168, 277, - 384, 978, 1038, 1020, 442, 973, 120, 302, 502, 965, - 996, 39, 442, 1186, 502, 980, 981, 982, 1186, 503, - 1180, 1171, 1171, 297, 60, 1187, 503, 832, 834, 831, - 834, 1187, 294, 503, 506, 775, 1180, 1171, 1171, 1180, - 1171, 1171, 1180, 453, 1171, 1171, 120, 540, 658, 355, - 441, 790, 364, 180, 790, 502, 1171, 442, 812, 224, - 224, 442, 608, 639, 192, 1171, 278, 1180, 1171, 1171, - 1101, 278, 1171, 1171, 33, 346, 418, 418, 1171, 418, - 675, 839, 502, 1078, 827, 75, 162, 863, 827, 827, - 169, 1078, 774, 1171, 186, 269, 304, 343, 446, 678, - 679, 680, 1055, 418, 879, 364, 278, 124, 219, 1180, - 1171, 288, 1171, 288, 503, 506, 1179, 1181, 1171, 343, - 556, 192, 601, 273, 1078, 1171, 1176, 1186, 1169, 1171, - 234, 1171, 30, 441, 1171, 192, 1171, 192, 1186, 362, - 423, 362, 423, 234, 1171, 30, 441, 1171, 234, 360, - 1169, 26, 140, 377, 685, 686, 687, 688, 1189, 1180, - 1171, 120, 175, 274, 442, 564, 567, 568, 1189, 252, - 1171, 77, 286, 1171, 559, 288, 418, 409, 1169, 418, - 879, 364, 128, 1171, 1171, 506, 503, 506, 1180, 1171, - 885, 886, 1189, 288, 343, 418, 708, 1180, 1171, 1171, - 288, 1055, 198, 506, 617, 617, 1162, 1180, 1171, 1171, - 1179, 3, 91, 145, 204, 311, 433, 441, 444, 518, - 1180, 1171, 1171, 288, 343, 1180, 1171, 343, 377, 556, - 655, 658, 774, 1171, 658, 774, 1171, 658, 1180, 1171, - 377, 1180, 1171, 1171, 1178, 1170, 1170, 1180, 851, 1171, - 1170, 1171, 343, 377, 556, 557, 1169, 1169, 1171, 1171, - 1171, 1171, 1180, 1171, 26, 32, 140, 304, 343, 377, - 304, 343, 377, 742, 343, 377, 343, 377, 343, 882, - 1070, 1186, 192, 752, 1186, 192, 1186, 1180, 1171, 1171, - 1177, 1171, 885, 26, 576, 374, 1179, 343, 377, 556, - 1171, 1171, 1171, 418, 418, 86, 432, 331, 506, 1015, - 1015, 1015, 1101, 1101, 450, 1141, 503, 1101, 1161, 939, - 278, 780, 1177, 39, 780, 138, 774, 780, 780, 220, - 442, 442, 780, 780, 780, 226, 780, 780, 780, 774, - 327, 580, 580, 202, 406, 713, 1101, 1078, 774, 503, - 506, 492, 605, 1189, 1171, 64, 174, 364, 453, 672, - 679, 680, 155, 283, 235, 595, 597, 599, 601, 611, - 614, 27, 198, 355, 404, 518, 519, 169, 1171, 454, - 1169, 39, 709, 407, 851, 529, 1186, 530, 594, 823, - 1171, 171, 774, 502, 641, 642, 1106, 1186, 328, 1177, - 742, 742, 742, 742, 502, 742, 1068, 1069, 1070, 374, - 155, 502, 155, 155, 154, 996, 774, 283, 595, 1186, - 442, 634, 461, 566, 273, 39, 617, 1177, 273, 288, - 3, 747, 748, 742, 28, 503, 829, 830, 835, 39, - 226, 352, 421, 460, 841, 842, 843, 844, 841, 288, - 226, 283, 125, 212, 426, 440, 716, 717, 1171, 189, - 189, 169, 561, 39, 515, 170, 927, 928, 561, 561, - 773, 774, 1171, 774, 1171, 561, 561, 561, 561, 226, - 561, 374, 169, 561, 561, 288, 561, 273, 503, 619, - 198, 198, 198, 198, 198, 465, 1170, 658, 659, 506, - 504, 183, 796, 797, 1180, 27, 802, 418, 502, 174, - 153, 380, 153, 380, 360, 440, 255, 1078, 1180, 461, - 646, 810, 810, 174, 288, 796, 60, 561, 839, 774, - 1078, 827, 282, 827, 827, 1078, 774, 1171, 503, 501, - 501, 506, 1101, 142, 1156, 1157, 39, 503, 1101, 503, - 503, 174, 503, 174, 503, 503, 503, 503, 503, 503, - 506, 506, 503, 312, 503, 503, 502, 1102, 1102, 1139, - 13, 17, 18, 19, 198, 220, 290, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 1136, 1102, 503, 503, - 169, 174, 382, 503, 503, 39, 1152, 1139, 1152, 1152, - 174, 503, 135, 503, 1189, 310, 1115, 39, 503, 506, - 1101, 1189, 506, 1101, 1163, 1101, 503, 481, 1102, 1102, - 148, 1139, 174, 135, 137, 161, 272, 278, 425, 436, - 1148, 272, 148, 861, 1101, 403, 1164, 1101, 1153, 1101, - 418, 502, 997, 502, 502, 299, 1122, 502, 1139, 410, - 412, 410, 412, 1169, 1010, 1010, 1010, 1066, 1015, 1066, - 912, 1176, 1099, 538, 954, 249, 502, 503, 1176, 1098, - 1098, 501, 501, 503, 997, 1061, 1071, 174, 502, 997, - 1046, 1047, 39, 1048, 1049, 1186, 506, 100, 175, 208, - 223, 233, 261, 354, 1052, 1049, 39, 1048, 1051, 1186, - 1049, 484, 1065, 1162, 1101, 183, 1029, 1018, 290, 1134, - 1137, 483, 821, 5, 1176, 1027, 289, 461, 440, 1024, - 244, 1045, 458, 1067, 448, 405, 441, 966, 967, 968, - 1186, 288, 969, 1186, 1046, 982, 983, 506, 1044, 492, - 1163, 838, 775, 834, 834, 60, 836, 497, 1181, 1181, - 288, 1170, 291, 288, 1101, 615, 1171, 502, 502, 502, - 639, 202, 502, 732, 155, 561, 418, 1180, 1171, 543, - 1078, 774, 774, 1078, 662, 1171, 186, 446, 418, 418, - 662, 678, 684, 343, 377, 556, 1171, 1171, 1171, 210, - 278, 158, 830, 303, 377, 418, 273, 155, 87, 603, - 604, 732, 377, 26, 140, 347, 348, 377, 560, 569, - 570, 684, 880, 369, 155, 561, 155, 561, 1171, 1171, - 1171, 1171, 369, 369, 234, 687, 688, 687, 503, 506, - 689, 1177, 202, 503, 506, 492, 504, 1171, 158, 1180, - 1171, 343, 377, 556, 1171, 1171, 1171, 288, 304, 343, - 377, 26, 140, 304, 343, 377, 1078, 270, 1078, 503, - 506, 492, 1169, 418, 1181, 442, 705, 158, 617, 364, - 891, 458, 624, 624, 617, 236, 311, 12, 278, 1177, - 311, 1181, 439, 158, 418, 418, 364, 393, 851, 851, - 851, 303, 377, 92, 418, 879, 364, 120, 169, 571, - 165, 810, 418, 418, 246, 246, 246, 418, 418, 364, - 418, 418, 364, 418, 364, 418, 364, 418, 128, 561, - 1078, 273, 1177, 377, 880, 155, 561, 418, 418, 503, - 1171, 418, 879, 364, 418, 1180, 1171, 503, 503, 503, - 1141, 501, 1078, 774, 220, 780, 1171, 1171, 1171, 220, - 394, 395, 581, 1177, 581, 186, 503, 503, 174, 742, - 744, 270, 290, 493, 494, 658, 745, 834, 1137, 1177, - 1194, 73, 79, 92, 120, 122, 178, 206, 273, 278, - 321, 337, 435, 606, 607, 610, 154, 457, 515, 543, - 1171, 543, 292, 682, 1169, 1169, 1169, 503, 506, 1181, - 183, 355, 1181, 1176, 428, 1169, 617, 3, 169, 710, - 851, 49, 530, 406, 691, 113, 951, 1101, 174, 506, - 1170, 566, 749, 750, 1177, 503, 506, 1171, 169, 618, - 1169, 645, 1169, 1171, 646, 502, 596, 1169, 503, 1171, - 461, 463, 635, 565, 39, 155, 996, 634, 418, 155, - 1055, 492, 503, 506, 716, 503, 506, 120, 492, 845, - 1177, 543, 406, 833, 834, 169, 850, 52, 350, 846, - 847, 844, 847, 125, 212, 370, 440, 902, 1171, 283, - 288, 293, 186, 996, 1078, 502, 503, 506, 561, 442, - 561, 442, 561, 1171, 1171, 700, 774, 155, 364, 364, - 364, 364, 364, 1170, 506, 794, 1186, 1180, 461, 506, - 798, 291, 1057, 374, 153, 153, 113, 269, 1169, 1171, - 1181, 795, 802, 1180, 220, 220, 220, 220, 658, 220, - 220, 220, 220, 220, 1144, 414, 1101, 146, 1078, 503, - 1101, 1101, 1148, 1101, 1101, 503, 1139, 506, 1078, 1102, - 1102, 1102, 1102, 135, 137, 273, 1102, 1102, 1102, 1102, - 1102, 1102, 1102, 1102, 1102, 1102, 1101, 1101, 1101, 1078, - 503, 503, 503, 1139, 503, 506, 60, 1103, 1116, 503, - 1189, 1112, 318, 399, 1114, 503, 506, 453, 1108, 39, - 503, 12, 1177, 1101, 36, 36, 1101, 503, 1101, 174, - 272, 1101, 503, 148, 1102, 1102, 148, 148, 1101, 1101, - 1016, 458, 502, 1123, 1186, 503, 1139, 506, 1010, 1010, - 1010, 1010, 1169, 1169, 1169, 1029, 503, 1029, 503, 959, - 501, 1049, 1051, 1049, 502, 473, 1103, 503, 1186, 502, - 1046, 223, 298, 1053, 1046, 1053, 223, 1052, 1053, 223, - 408, 1059, 502, 1186, 502, 295, 60, 187, 1036, 502, - 821, 166, 228, 289, 461, 415, 103, 1101, 351, 971, - 447, 503, 506, 1163, 90, 971, 288, 503, 506, 981, - 1067, 1101, 503, 497, 838, 428, 177, 359, 365, 372, - 407, 429, 807, 169, 807, 503, 502, 622, 623, 815, - 1106, 1186, 618, 618, 732, 1171, 618, 122, 206, 269, - 273, 733, 1171, 1171, 39, 442, 442, 226, 775, 1180, - 1171, 418, 879, 364, 418, 210, 1171, 60, 409, 1171, - 155, 601, 120, 1186, 682, 393, 178, 157, 191, 273, - 565, 515, 113, 178, 273, 393, 396, 565, 603, 656, - 377, 570, 428, 1171, 1186, 369, 686, 1171, 568, 745, - 1189, 1171, 303, 377, 418, 879, 364, 418, 158, 418, - 418, 364, 176, 290, 396, 754, 755, 176, 290, 762, - 763, 418, 418, 364, 503, 503, 503, 886, 270, 658, - 834, 887, 1137, 1177, 1194, 343, 1171, 502, 461, 706, - 1171, 624, 107, 1186, 502, 624, 1178, 12, 1177, 1177, - 1177, 1171, 1171, 1171, 1171, 1178, 60, 409, 1171, 1171, - 1171, 1171, 448, 1171, 1171, 169, 169, 345, 169, 192, - 1180, 1171, 1171, 1180, 1171, 1171, 1171, 1171, 1171, 1171, - 1171, 288, 79, 562, 155, 28, 51, 428, 1186, 1171, - 1177, 684, 1171, 1171, 1171, 1171, 1015, 503, 220, 780, - 220, 220, 220, 780, 515, 442, 586, 587, 662, 732, - 461, 463, 774, 502, 774, 1171, 1102, 33, 60, 609, - 123, 194, 122, 278, 224, 1169, 608, 176, 325, 728, - 735, 736, 1186, 671, 502, 309, 502, 596, 612, 205, - 629, 599, 1181, 1181, 1078, 502, 566, 30, 125, 212, - 370, 440, 711, 418, 707, 1180, 192, 1169, 693, 465, - 288, 503, 1045, 642, 851, 503, 506, 1070, 682, 700, - 503, 653, 39, 283, 309, 502, 961, 598, 600, 602, - 614, 1186, 309, 630, 631, 596, 629, 565, 286, 288, - 636, 996, 648, 646, 566, 1177, 1171, 812, 745, 3, - 748, 288, 835, 1101, 1101, 506, 502, 841, 428, 506, - 45, 1101, 418, 502, 618, 1169, 717, 662, 503, 927, - 928, 1171, 1171, 561, 374, 561, 1170, 1170, 1170, 1170, - 1170, 658, 180, 797, 802, 503, 1171, 113, 802, 174, - 561, 278, 783, 1177, 783, 783, 783, 220, 783, 783, - 783, 783, 783, 1101, 503, 503, 503, 174, 503, 1101, - 174, 135, 137, 174, 169, 148, 503, 468, 1110, 1139, - 336, 447, 60, 1116, 1103, 459, 459, 503, 1101, 269, - 1101, 506, 1109, 1080, 1101, 1101, 1101, 1101, 36, 36, - 1101, 1101, 148, 503, 503, 1101, 1124, 1186, 503, 1101, - 1169, 1169, 1169, 1169, 1036, 12, 1177, 1036, 1177, 503, - 1062, 1063, 1106, 502, 1115, 1048, 502, 1170, 1046, 288, - 442, 1054, 1046, 223, 1046, 1174, 1069, 502, 1069, 1186, - 1011, 1101, 460, 1119, 861, 415, 283, 1166, 996, 302, - 996, 968, 288, 502, 970, 1101, 492, 982, 971, 428, - 503, 418, 790, 174, 732, 1101, 503, 506, 461, 79, - 814, 818, 814, 503, 503, 503, 123, 194, 204, 122, - 444, 561, 1078, 1171, 1171, 1171, 1171, 1171, 1171, 1171, - 1181, 1171, 601, 605, 1178, 609, 192, 192, 278, 658, - 609, 278, 1178, 1186, 1078, 561, 561, 492, 60, 409, - 1171, 1171, 1171, 1171, 1171, 1180, 1171, 1171, 1176, 1176, - 1078, 506, 1176, 1176, 506, 1180, 1171, 1171, 418, 1101, - 73, 1101, 1181, 1171, 418, 418, 174, 198, 461, 1170, - 1170, 774, 1170, 155, 158, 774, 1177, 1177, 1078, 561, - 561, 418, 503, 220, 780, 780, 780, 780, 502, 582, - 583, 515, 127, 176, 209, 176, 1101, 273, 607, 120, - 39, 851, 617, 851, 1174, 36, 154, 198, 683, 687, - 283, 595, 571, 152, 200, 502, 374, 442, 618, 39, - 1181, 705, 530, 273, 502, 171, 1171, 641, 1177, 374, - 566, 154, 996, 774, 283, 595, 646, 503, 506, 461, - 605, 60, 634, 571, 630, 85, 409, 637, 461, 916, - 39, 637, 174, 288, 502, 1169, 1177, 832, 852, 853, - 1187, 847, 1078, 169, 848, 1169, 174, 418, 872, 338, - 718, 207, 663, 561, 503, 561, 561, 1171, 291, 218, - 561, 796, 783, 1101, 503, 1102, 174, 1101, 1101, 1101, - 502, 503, 506, 503, 1116, 503, 447, 390, 503, 503, - 1101, 1101, 1101, 503, 309, 1125, 503, 1119, 1119, 367, - 1005, 503, 506, 39, 1064, 120, 1076, 1077, 1102, 82, - 1170, 503, 1101, 502, 1046, 1054, 502, 503, 1069, 503, - 102, 184, 357, 502, 1030, 1031, 1032, 1033, 1034, 1035, - 1101, 1120, 1121, 1186, 1015, 503, 993, 966, 92, 813, - 815, 136, 457, 985, 986, 1101, 796, 288, 796, 503, - 199, 620, 623, 290, 861, 774, 774, 819, 337, 620, - 620, 503, 418, 377, 977, 39, 155, 155, 562, 745, - 1181, 1171, 418, 502, 827, 861, 863, 755, 502, 502, - 763, 1171, 503, 502, 503, 377, 977, 1171, 1171, 502, - 502, 502, 461, 484, 936, 345, 936, 936, 169, 1171, - 562, 1171, 780, 588, 589, 1189, 55, 101, 126, 144, - 148, 170, 173, 188, 278, 329, 584, 582, 1177, 827, - 39, 868, 868, 503, 191, 502, 442, 638, 247, 621, - 638, 502, 736, 728, 502, 503, 506, 1169, 503, 374, - 30, 84, 87, 93, 121, 178, 191, 203, 393, 396, - 613, 613, 1168, 1171, 1171, 503, 996, 706, 155, 113, - 682, 174, 1171, 39, 1171, 646, 596, 1169, 503, 600, - 292, 1186, 635, 630, 634, 125, 140, 318, 1171, 65, - 73, 239, 996, 774, 1055, 813, 174, 731, 834, 503, - 506, 428, 146, 512, 846, 849, 1066, 388, 388, 503, - 263, 287, 719, 720, 721, 169, 724, 662, 269, 446, - 664, 665, 1171, 802, 169, 1102, 1111, 1139, 269, 480, - 60, 1015, 59, 129, 112, 1006, 1065, 1062, 502, 1102, - 503, 506, 39, 1072, 1073, 1186, 503, 1170, 1139, 503, - 502, 378, 502, 503, 506, 506, 39, 1020, 447, 1171, - 503, 506, 274, 440, 248, 273, 986, 798, 807, 561, - 814, 502, 851, 502, 565, 820, 1169, 851, 851, 1171, - 409, 191, 442, 563, 377, 977, 1171, 1143, 169, 758, - 758, 1143, 1143, 1101, 409, 1139, 1139, 572, 573, 1188, - 773, 774, 773, 774, 1170, 561, 503, 506, 495, 502, - 540, 590, 658, 933, 1177, 933, 273, 278, 329, 933, - 933, 1066, 868, 43, 196, 269, 616, 502, 654, 1101, - 202, 175, 308, 383, 288, 625, 626, 627, 503, 1174, - 6, 737, 687, 596, 629, 1171, 503, 682, 162, 757, - 566, 916, 1169, 465, 1045, 682, 996, 961, 630, 596, - 629, 605, 502, 636, 634, 635, 361, 361, 73, 291, - 73, 646, 812, 503, 1169, 732, 841, 852, 1078, 505, - 136, 461, 461, 720, 360, 406, 722, 141, 725, 457, - 727, 446, 662, 682, 561, 1101, 503, 503, 447, 1139, - 185, 330, 361, 1126, 166, 166, 618, 1069, 506, 1077, - 1189, 503, 506, 169, 1078, 503, 503, 1139, 502, 1139, - 1031, 1121, 1123, 1038, 996, 1066, 815, 377, 36, 987, - 248, 174, 618, 638, 861, 820, 821, 617, 638, 638, - 1171, 654, 1101, 409, 503, 294, 367, 334, 759, 759, - 503, 503, 503, 1171, 503, 503, 503, 506, 1176, 936, - 589, 540, 591, 592, 1177, 1177, 278, 618, 495, 618, - 1177, 1177, 204, 655, 503, 409, 125, 440, 288, 627, - 288, 626, 502, 503, 506, 571, 374, 682, 774, 39, - 39, 502, 1171, 916, 646, 634, 571, 630, 502, 632, - 633, 1106, 1186, 637, 635, 636, 291, 291, 502, 199, - 816, 169, 847, 31, 213, 903, 176, 176, 933, 360, - 392, 726, 502, 154, 53, 103, 431, 1101, 1127, 1128, - 1127, 1127, 503, 60, 60, 377, 503, 1103, 1073, 295, - 3, 120, 273, 278, 1074, 1075, 39, 1050, 344, 1060, - 503, 1030, 503, 980, 1101, 414, 987, 796, 503, 624, - 503, 821, 621, 732, 732, 977, 1171, 827, 60, 977, - 418, 572, 774, 503, 506, 618, 503, 397, 1171, 64, - 269, 349, 377, 628, 628, 503, 6, 374, 1171, 754, - 996, 682, 635, 630, 634, 1101, 503, 506, 818, 818, - 636, 637, 813, 502, 608, 141, 274, 502, 898, 900, - 904, 963, 972, 979, 996, 1007, 827, 827, 723, 1186, - 1101, 728, 1128, 360, 168, 316, 168, 316, 151, 1129, - 1129, 1129, 618, 618, 1186, 1115, 1102, 1102, 278, 1075, - 1186, 502, 503, 1066, 125, 136, 440, 988, 989, 414, - 561, 732, 625, 977, 774, 502, 592, 25, 120, 278, - 1171, 682, 916, 636, 634, 635, 503, 633, 774, 819, - 819, 637, 503, 815, 817, 566, 360, 899, 900, 901, - 997, 998, 506, 506, 503, 1174, 36, 103, 183, 269, - 415, 377, 377, 418, 442, 82, 1101, 274, 377, 136, - 212, 990, 732, 1139, 617, 617, 682, 637, 635, 636, - 818, 816, 503, 506, 637, 727, 503, 505, 418, 174, - 502, 1128, 360, 296, 1186, 1186, 1174, 1175, 1186, 1072, - 503, 980, 274, 120, 302, 448, 502, 991, 503, 636, - 637, 819, 608, 815, 1066, 154, 901, 388, 388, 5, - 729, 730, 1176, 1177, 1189, 502, 120, 503, 448, 966, - 502, 967, 637, 566, 728, 461, 461, 503, 506, 1140, - 1175, 447, 1139, 503, 637, 1174, 176, 176, 730, 1015, - 442, 991, 503, 302, 991, 1066, 502, 827, 827, 503, - 1186, 966, 729, 447, 503, 991 + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 283, 284, 285, + 286, 288, 289, 290, 291, 292, 293, 295, 296, 299, + 300, 301, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 322, + 323, 324, 325, 326, 327, 328, 329, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, 381, 382, 383, 384, 385, 387, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 398, + 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 414, 415, 418, 419, 420, 421, + 422, 423, 424, 426, 427, 428, 431, 432, 433, 434, + 435, 437, 438, 439, 440, 441, 442, 443, 444, 447, + 448, 449, 450, 451, 454, 455, 456, 457, 458, 459, + 460, 462, 463, 464, 465, 466, 467, 470, 473, 474, + 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 490, 491, 492, 1121, 1205, + 1217, 1218, 1222, 1223, 1224, 3, 31, 1010, 1202, 1217, + 1222, 463, 515, 965, 297, 329, 927, 56, 515, 600, + 25, 43, 68, 81, 115, 121, 139, 150, 159, 172, + 181, 185, 248, 299, 302, 323, 337, 364, 374, 384, + 403, 410, 420, 421, 423, 424, 439, 446, 449, 452, + 609, 666, 773, 828, 839, 31, 328, 1202, 1010, 31, + 322, 382, 421, 423, 6, 235, 881, 882, 1208, 25, + 30, 68, 81, 97, 115, 139, 150, 159, 172, 178, + 185, 205, 258, 299, 312, 323, 334, 337, 364, 367, + 371, 374, 381, 384, 403, 410, 417, 420, 424, 432, + 434, 439, 452, 465, 683, 786, 788, 789, 927, 1202, + 100, 463, 515, 661, 664, 667, 960, 973, 977, 980, + 989, 996, 1001, 1009, 1013, 11, 24, 31, 51, 167, + 174, 176, 200, 237, 273, 331, 350, 506, 507, 802, + 803, 1010, 1207, 1209, 31, 33, 100, 346, 380, 807, + 808, 809, 1217, 172, 1217, 1204, 1208, 417, 1027, 802, + 1217, 431, 1202, 312, 258, 515, 893, 372, 1217, 31, + 385, 427, 431, 552, 561, 562, 1217, 182, 807, 808, + 1217, 329, 927, 1217, 234, 31, 136, 1029, 1030, 69, + 94, 248, 268, 364, 374, 385, 427, 431, 478, 549, + 550, 551, 552, 31, 385, 427, 431, 552, 431, 298, + 1072, 1073, 1200, 1217, 1027, 508, 1217, 177, 515, 966, + 515, 344, 1019, 1020, 1202, 1019, 3, 55, 57, 58, + 71, 72, 118, 119, 140, 168, 217, 218, 220, 269, + 271, 290, 341, 389, 395, 427, 428, 460, 1095, 1097, + 1099, 1101, 1103, 1105, 1106, 1107, 1109, 1110, 1111, 1113, + 1114, 1218, 1222, 1029, 1030, 1031, 1213, 12, 1214, 1215, + 1217, 1214, 1214, 1014, 1015, 1018, 0, 518, 515, 965, + 151, 219, 303, 445, 1032, 1033, 1014, 1016, 1017, 126, + 215, 260, 451, 519, 37, 931, 855, 1205, 791, 1217, + 791, 1202, 332, 791, 434, 1202, 114, 417, 843, 1205, + 1217, 1224, 3, 107, 111, 386, 1210, 1211, 1219, 1222, + 1223, 1224, 31, 194, 1200, 291, 465, 10, 17, 18, + 19, 76, 163, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 877, 879, 1152, 1153, 1217, 194, 1202, 843, + 1202, 31, 1210, 1211, 843, 1202, 1202, 194, 1200, 1202, + 194, 791, 1202, 356, 387, 31, 194, 1072, 1202, 377, + 1202, 791, 31, 255, 1210, 1211, 194, 1200, 235, 123, + 225, 282, 340, 928, 929, 930, 515, 513, 517, 1178, + 1180, 493, 959, 960, 961, 962, 1219, 1200, 1202, 1217, + 30, 68, 82, 93, 115, 139, 178, 205, 236, 299, + 334, 364, 367, 410, 420, 432, 439, 786, 787, 788, + 789, 1208, 931, 976, 980, 989, 996, 1001, 1013, 1200, + 261, 791, 515, 194, 791, 1202, 791, 434, 194, 1202, + 114, 417, 421, 423, 1210, 1211, 421, 423, 76, 163, + 877, 354, 1202, 1202, 1210, 194, 526, 1217, 194, 1202, + 194, 527, 791, 1202, 1202, 377, 791, 255, 1210, 344, + 381, 417, 465, 258, 97, 205, 30, 93, 178, 334, + 371, 432, 434, 438, 678, 31, 1202, 1011, 559, 1208, + 1219, 882, 261, 194, 855, 856, 194, 886, 194, 1202, + 194, 793, 1095, 434, 114, 417, 194, 842, 843, 194, + 1211, 1212, 89, 465, 76, 163, 194, 878, 879, 61, + 194, 842, 194, 1212, 194, 842, 194, 1202, 194, 1202, + 377, 886, 194, 793, 194, 255, 1212, 235, 194, 790, + 791, 194, 1201, 1202, 194, 1202, 931, 515, 978, 609, + 973, 459, 959, 965, 1209, 803, 804, 31, 804, 1209, + 804, 31, 804, 1209, 804, 804, 804, 1209, 1207, 1207, + 1010, 804, 332, 515, 415, 515, 634, 634, 634, 297, + 429, 519, 634, 374, 1072, 1074, 519, 922, 1208, 515, + 975, 61, 465, 959, 115, 205, 374, 415, 417, 891, + 892, 1217, 50, 492, 225, 517, 300, 297, 176, 300, + 1208, 429, 931, 170, 799, 297, 5, 8, 9, 10, + 12, 39, 55, 57, 58, 67, 68, 71, 72, 79, + 81, 105, 106, 107, 108, 109, 110, 111, 118, 119, + 121, 156, 161, 162, 168, 184, 186, 217, 218, 220, + 228, 229, 230, 231, 241, 249, 250, 269, 271, 280, + 282, 287, 288, 290, 299, 310, 324, 341, 369, 386, + 395, 411, 416, 427, 428, 433, 435, 436, 446, 452, + 460, 480, 481, 482, 483, 485, 486, 487, 488, 494, + 506, 507, 508, 515, 1014, 1098, 1101, 1104, 1105, 1106, + 1108, 1109, 1110, 1113, 1114, 1118, 1120, 1121, 1122, 1124, + 1148, 1149, 1150, 1154, 1172, 1177, 1194, 1197, 1198, 1205, + 1206, 1207, 1208, 1217, 1196, 1197, 1208, 31, 567, 1199, + 1200, 385, 549, 121, 558, 1208, 12, 559, 12, 1208, + 50, 73, 549, 492, 396, 929, 300, 176, 429, 505, + 50, 492, 225, 930, 515, 1200, 508, 1180, 1074, 959, + 175, 967, 1118, 1157, 1019, 519, 515, 968, 462, 1112, + 1112, 1112, 515, 1100, 1100, 326, 515, 1102, 71, 72, + 1112, 1100, 1097, 496, 497, 515, 1115, 515, 1115, 39, + 1096, 515, 116, 192, 262, 265, 378, 490, 515, 1116, + 1117, 517, 792, 1100, 1196, 1181, 516, 516, 524, 959, + 969, 970, 971, 1200, 31, 136, 1028, 1028, 61, 1028, + 164, 170, 245, 294, 1036, 1038, 1039, 1054, 1056, 1057, + 1058, 1032, 1033, 176, 221, 221, 1072, 1075, 515, 70, + 278, 313, 352, 387, 515, 853, 313, 348, 352, 387, + 792, 313, 352, 387, 3, 92, 145, 251, 313, 348, + 352, 387, 420, 422, 472, 560, 563, 936, 937, 938, + 939, 823, 27, 141, 313, 352, 387, 456, 576, 1202, + 27, 141, 387, 451, 544, 476, 194, 1072, 64, 99, + 160, 197, 240, 278, 282, 313, 314, 352, 361, 370, + 379, 387, 399, 408, 412, 467, 560, 564, 859, 871, + 899, 515, 840, 1180, 352, 544, 200, 156, 27, 33, + 48, 78, 134, 141, 144, 171, 207, 278, 282, 292, + 301, 313, 352, 355, 356, 387, 456, 572, 574, 575, + 701, 899, 5, 506, 507, 675, 1209, 31, 194, 1200, + 791, 791, 515, 876, 313, 387, 517, 156, 297, 313, + 352, 387, 871, 899, 27, 141, 313, 352, 387, 200, + 539, 352, 472, 496, 532, 539, 313, 352, 387, 871, + 899, 297, 313, 352, 156, 40, 62, 113, 203, 259, + 263, 278, 312, 352, 357, 381, 387, 401, 572, 672, + 673, 313, 352, 464, 701, 709, 156, 313, 352, 387, + 27, 92, 134, 141, 144, 313, 348, 352, 387, 394, + 562, 550, 552, 200, 156, 48, 132, 278, 352, 387, + 572, 573, 313, 352, 356, 387, 90, 133, 316, 422, + 297, 27, 33, 141, 313, 352, 387, 590, 591, 539, + 170, 352, 532, 539, 156, 352, 387, 572, 1202, 243, + 123, 298, 477, 519, 928, 31, 136, 461, 508, 516, + 848, 1118, 1158, 1159, 1218, 1118, 1179, 3, 31, 35, + 36, 37, 38, 39, 40, 41, 45, 59, 67, 68, + 74, 80, 82, 93, 100, 105, 106, 107, 109, 110, + 111, 121, 123, 131, 136, 137, 143, 147, 151, 162, + 164, 170, 172, 176, 182, 185, 189, 200, 209, 219, + 221, 238, 239, 245, 249, 250, 282, 287, 294, 297, + 298, 302, 303, 321, 330, 346, 360, 380, 386, 397, + 413, 416, 417, 425, 429, 430, 436, 445, 446, 452, + 453, 461, 468, 469, 471, 472, 508, 1203, 1220, 1222, + 1223, 1224, 1225, 1178, 516, 519, 162, 297, 436, 556, + 559, 675, 963, 453, 956, 297, 855, 515, 791, 1202, + 1095, 843, 291, 76, 163, 879, 843, 843, 170, 1095, + 791, 1202, 1202, 516, 634, 1202, 74, 1095, 282, 176, + 515, 759, 532, 40, 950, 1202, 282, 532, 476, 194, + 1200, 532, 791, 791, 759, 449, 609, 297, 170, 472, + 867, 532, 282, 50, 546, 282, 439, 708, 282, 968, + 92, 313, 685, 90, 133, 316, 422, 40, 759, 170, + 194, 532, 465, 194, 1200, 194, 662, 1200, 1200, 465, + 791, 89, 528, 1205, 434, 1205, 1205, 1202, 170, 1202, + 683, 42, 56, 112, 214, 278, 376, 156, 65, 358, + 519, 529, 156, 515, 156, 532, 156, 519, 529, 476, + 156, 519, 529, 156, 519, 194, 790, 194, 791, 194, + 791, 156, 519, 529, 1212, 156, 529, 156, 156, 529, + 156, 529, 156, 90, 133, 316, 422, 170, 156, 529, + 156, 170, 194, 156, 519, 529, 156, 519, 529, 156, + 297, 1157, 417, 516, 973, 804, 1010, 804, 1010, 804, + 1010, 804, 1010, 804, 1010, 1010, 1010, 804, 1010, 515, + 635, 636, 1217, 635, 31, 115, 139, 172, 178, 235, + 236, 315, 334, 367, 374, 381, 417, 420, 439, 812, + 1199, 1212, 809, 1202, 200, 519, 992, 1208, 1095, 1161, + 40, 1212, 528, 516, 528, 528, 528, 243, 1217, 170, + 812, 1212, 170, 372, 1217, 559, 297, 515, 1181, 513, + 1014, 1162, 1118, 1176, 515, 515, 170, 515, 515, 1014, + 515, 515, 515, 515, 515, 515, 515, 515, 515, 515, + 515, 1118, 515, 515, 515, 515, 515, 515, 515, 515, + 289, 625, 515, 515, 515, 515, 515, 515, 515, 515, + 1118, 1118, 1118, 1014, 1118, 1157, 1180, 12, 1208, 12, + 515, 1208, 3, 10, 13, 17, 18, 19, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 152, 153, 154, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 166, 167, 168, 169, 171, 172, + 173, 174, 175, 177, 178, 179, 180, 181, 183, 184, + 186, 187, 188, 190, 191, 193, 194, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, + 218, 220, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 244, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 263, 264, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 295, 296, 298, 299, 300, 301, 302, 304, 305, + 306, 307, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 323, 324, 325, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 421, 422, 423, 424, 425, 426, 427, 428, 430, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 446, 447, 448, 449, 450, 451, 452, + 453, 454, 455, 456, 457, 458, 459, 460, 461, 463, + 464, 465, 466, 467, 468, 470, 475, 476, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 491, 492, 494, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 1152, 1154, 1156, 1221, 1226, 473, 1135, + 309, 1118, 165, 1136, 221, 519, 1025, 12, 515, 1208, + 1180, 1025, 124, 196, 568, 519, 73, 12, 121, 559, + 40, 3, 12, 121, 248, 557, 675, 1114, 1208, 1208, + 95, 138, 1130, 104, 12, 121, 553, 554, 556, 675, + 121, 553, 243, 1200, 96, 357, 795, 516, 965, 37, + 47, 54, 80, 195, 200, 223, 244, 299, 302, 392, + 516, 519, 1020, 1201, 40, 515, 1157, 1207, 1112, 1112, + 39, 1096, 427, 427, 1207, 1207, 513, 513, 1207, 429, + 429, 429, 515, 429, 1207, 1203, 517, 1100, 176, 1061, + 15, 505, 1178, 1216, 516, 519, 968, 1016, 1016, 1034, + 1035, 1118, 1016, 167, 273, 1045, 232, 278, 340, 390, + 451, 31, 1040, 1118, 506, 507, 1041, 1042, 1118, 1120, + 1054, 1055, 1039, 1038, 1036, 1037, 170, 1057, 292, 1059, + 1036, 1054, 1075, 981, 1200, 1075, 40, 1217, 387, 1157, + 70, 429, 429, 374, 200, 212, 303, 306, 389, 461, + 508, 846, 847, 848, 850, 852, 854, 1095, 1218, 429, + 464, 429, 374, 429, 429, 374, 245, 429, 81, 429, + 420, 549, 313, 936, 938, 505, 940, 170, 182, 200, + 362, 824, 825, 74, 93, 152, 172, 330, 446, 631, + 632, 93, 121, 282, 429, 93, 429, 121, 282, 374, + 93, 134, 144, 313, 352, 756, 374, 691, 30, 68, + 139, 178, 299, 334, 367, 432, 439, 786, 787, 1202, + 156, 352, 387, 572, 297, 675, 379, 240, 429, 1217, + 429, 287, 675, 125, 222, 374, 385, 431, 551, 791, + 358, 387, 859, 872, 129, 516, 841, 846, 429, 452, + 420, 1200, 82, 152, 194, 616, 631, 1217, 82, 93, + 896, 318, 297, 369, 371, 434, 93, 896, 34, 355, + 369, 371, 434, 369, 1200, 171, 207, 292, 791, 515, + 429, 429, 193, 515, 580, 25, 254, 420, 449, 474, + 580, 93, 519, 129, 5, 5, 313, 200, 156, 352, + 387, 572, 899, 453, 453, 279, 1095, 429, 374, 515, + 877, 1202, 1200, 429, 429, 374, 872, 129, 108, 417, + 418, 908, 909, 1073, 1200, 1217, 909, 429, 429, 759, + 909, 115, 387, 563, 429, 534, 563, 429, 429, 374, + 872, 129, 1200, 429, 429, 1200, 1097, 675, 61, 674, + 675, 675, 113, 259, 263, 61, 429, 532, 267, 374, + 532, 278, 673, 429, 429, 287, 1208, 701, 791, 429, + 429, 374, 403, 337, 1208, 337, 429, 337, 429, 337, + 759, 759, 420, 1072, 318, 318, 93, 429, 896, 374, + 429, 429, 580, 580, 791, 791, 791, 791, 1200, 49, + 458, 49, 49, 429, 49, 429, 458, 374, 515, 519, + 563, 452, 717, 1211, 429, 534, 563, 1200, 429, 896, + 374, 313, 352, 340, 353, 383, 555, 928, 1158, 1158, + 1159, 516, 15, 16, 519, 1032, 1033, 514, 520, 1200, + 961, 1202, 1200, 223, 1095, 223, 297, 223, 223, 675, + 791, 791, 223, 223, 223, 1095, 223, 223, 223, 297, + 429, 176, 429, 594, 439, 515, 40, 156, 791, 760, + 761, 1220, 936, 1095, 297, 156, 688, 1202, 282, 318, + 515, 533, 773, 453, 344, 465, 1200, 31, 909, 759, + 533, 156, 1211, 100, 182, 547, 608, 668, 731, 805, + 827, 932, 156, 1208, 709, 710, 156, 297, 1208, 1211, + 251, 791, 791, 791, 791, 148, 339, 515, 717, 282, + 533, 1200, 282, 670, 672, 282, 40, 292, 318, 515, + 634, 634, 194, 665, 1200, 170, 194, 526, 1217, 515, + 763, 853, 1202, 515, 844, 844, 40, 1095, 29, 52, + 216, 732, 235, 472, 474, 1012, 376, 856, 855, 1095, + 1202, 515, 793, 1095, 842, 843, 1212, 1211, 156, 529, + 156, 453, 156, 453, 878, 879, 529, 842, 1212, 842, + 1202, 1202, 1095, 793, 1212, 717, 156, 790, 791, 1201, + 1202, 1202, 791, 516, 194, 1200, 973, 1010, 1010, 1010, + 1010, 1010, 1010, 635, 516, 519, 516, 179, 335, 368, + 382, 418, 1201, 790, 114, 384, 842, 1201, 291, 810, + 811, 1217, 842, 842, 1201, 1199, 1199, 1201, 790, 429, + 183, 472, 821, 151, 245, 714, 715, 25, 154, 369, + 390, 993, 1072, 286, 994, 516, 519, 976, 429, 1200, + 1202, 1200, 526, 807, 808, 176, 821, 808, 1217, 30, + 82, 139, 178, 236, 334, 367, 439, 786, 787, 1157, + 514, 1157, 1162, 1163, 468, 1173, 1174, 1118, 1157, 515, + 1207, 1207, 3, 12, 116, 192, 262, 265, 378, 490, + 1164, 1165, 1208, 1157, 1157, 360, 1014, 1015, 1118, 1183, + 1186, 1193, 1183, 1118, 1120, 1158, 1186, 1189, 1190, 1118, + 1190, 1157, 1207, 1207, 1118, 1118, 877, 1118, 1158, 1160, + 1167, 369, 506, 507, 515, 1119, 1120, 1154, 1168, 516, + 1157, 1118, 1160, 1169, 1118, 59, 176, 239, 430, 1118, + 1157, 1170, 136, 282, 1014, 1157, 267, 1120, 1118, 1128, + 1129, 1130, 267, 1118, 1130, 516, 519, 1116, 1207, 1116, + 1095, 1118, 1118, 1118, 1118, 1220, 427, 45, 413, 1182, + 791, 1118, 515, 1014, 1171, 136, 138, 162, 227, 274, + 275, 276, 277, 281, 282, 287, 436, 447, 1166, 1187, + 1118, 515, 1118, 429, 54, 195, 200, 244, 392, 1118, + 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 31, + 38, 397, 1151, 185, 1136, 369, 515, 1148, 515, 308, + 1140, 181, 248, 417, 421, 423, 449, 1026, 1200, 1198, + 1061, 1158, 1061, 1200, 431, 515, 1208, 519, 516, 193, + 193, 529, 971, 960, 964, 1118, 516, 258, 282, 1021, + 1157, 516, 516, 513, 492, 492, 516, 516, 1207, 514, + 1207, 516, 192, 262, 1117, 262, 1117, 1117, 1207, 265, + 516, 1203, 238, 370, 489, 515, 1014, 1062, 1063, 1064, + 1072, 1078, 1088, 1121, 1123, 1124, 1194, 1217, 469, 1083, + 1213, 971, 969, 519, 41, 131, 453, 836, 369, 370, + 506, 507, 1042, 1044, 1120, 390, 232, 298, 519, 5, + 1043, 1207, 1043, 369, 370, 1044, 1199, 286, 394, 995, + 1055, 1037, 453, 990, 121, 311, 515, 982, 1013, 40, + 453, 1217, 515, 997, 998, 999, 1217, 516, 1211, 1202, + 1202, 306, 61, 1218, 516, 848, 850, 847, 850, 1218, + 303, 516, 519, 792, 1211, 1202, 1202, 1211, 1202, 1202, + 1211, 464, 1202, 1202, 121, 556, 675, 364, 452, 807, + 374, 182, 807, 515, 1202, 453, 829, 232, 232, 453, + 625, 656, 194, 1202, 287, 1211, 1202, 1202, 1118, 287, + 1202, 1202, 34, 355, 429, 429, 1202, 429, 692, 855, + 515, 1095, 843, 76, 163, 879, 843, 843, 170, 1095, + 791, 1202, 188, 278, 313, 352, 457, 695, 696, 697, + 1072, 429, 896, 374, 287, 125, 222, 1211, 1202, 297, + 1202, 297, 516, 519, 1210, 1212, 1202, 352, 572, 194, + 616, 282, 1095, 1202, 1207, 1217, 1200, 1202, 243, 1202, + 31, 452, 1202, 194, 1202, 194, 1217, 371, 434, 371, + 434, 243, 1202, 31, 452, 1202, 243, 369, 1200, 27, + 141, 387, 702, 703, 704, 705, 1220, 1211, 1202, 121, + 177, 283, 453, 579, 582, 583, 1220, 261, 1202, 78, + 295, 1202, 575, 297, 429, 420, 1200, 429, 896, 374, + 129, 1202, 1202, 519, 516, 519, 1211, 1202, 902, 903, + 1220, 297, 352, 429, 725, 1211, 1202, 1202, 297, 1072, + 200, 519, 634, 634, 1180, 1211, 1202, 1202, 1210, 3, + 92, 146, 207, 320, 444, 452, 455, 535, 1211, 1202, + 1202, 297, 352, 1211, 1202, 352, 387, 572, 672, 675, + 791, 1202, 675, 791, 1202, 675, 1211, 1202, 387, 1211, + 1202, 1202, 1209, 1201, 1201, 1211, 867, 1202, 1201, 1202, + 352, 387, 572, 573, 1200, 1200, 1202, 1202, 1202, 1202, + 1211, 1202, 27, 33, 141, 313, 352, 387, 313, 352, + 387, 759, 352, 387, 352, 387, 352, 899, 1087, 1217, + 194, 769, 1217, 194, 1217, 1211, 1202, 1202, 1208, 1202, + 902, 27, 591, 384, 1210, 352, 387, 572, 1202, 1202, + 1202, 429, 429, 87, 443, 340, 519, 1032, 1032, 1032, + 1118, 1118, 461, 1159, 516, 1118, 1179, 956, 287, 797, + 1208, 40, 797, 139, 791, 797, 797, 223, 453, 453, + 797, 797, 797, 235, 797, 797, 797, 791, 336, 595, + 595, 205, 417, 730, 1118, 1095, 791, 516, 519, 505, + 622, 1220, 1202, 65, 176, 374, 464, 689, 696, 697, + 156, 292, 244, 610, 612, 614, 616, 628, 631, 28, + 200, 364, 414, 535, 536, 170, 1202, 465, 1200, 40, + 726, 418, 867, 526, 1217, 546, 609, 839, 1202, 172, + 791, 515, 658, 659, 1123, 1217, 337, 1208, 759, 759, + 759, 759, 515, 759, 1085, 1086, 1087, 384, 156, 515, + 156, 156, 155, 1013, 791, 292, 610, 1217, 453, 651, + 472, 581, 282, 40, 634, 1208, 282, 297, 3, 764, + 765, 759, 29, 516, 845, 846, 851, 40, 235, 361, + 432, 471, 857, 858, 859, 860, 857, 297, 235, 292, + 126, 215, 437, 451, 733, 734, 1202, 191, 191, 170, + 529, 40, 532, 171, 944, 945, 529, 529, 790, 791, + 1202, 791, 1202, 529, 529, 529, 529, 235, 529, 384, + 170, 529, 529, 297, 529, 282, 516, 636, 200, 200, + 200, 200, 200, 476, 1201, 675, 676, 519, 517, 185, + 813, 814, 1211, 61, 818, 819, 1220, 429, 515, 176, + 154, 390, 154, 390, 369, 451, 264, 1095, 1211, 472, + 663, 297, 813, 529, 176, 855, 791, 1095, 843, 291, + 843, 843, 1095, 791, 1202, 516, 514, 514, 519, 1118, + 143, 1174, 1175, 40, 516, 1118, 516, 516, 176, 516, + 176, 516, 516, 1095, 493, 1184, 1184, 516, 23, 287, + 519, 1192, 303, 1195, 520, 458, 516, 516, 23, 287, + 519, 1191, 1191, 516, 516, 516, 516, 519, 519, 516, + 321, 516, 516, 515, 1119, 1119, 1157, 13, 17, 18, + 19, 200, 223, 299, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 1154, 1119, 516, 516, 170, 176, 392, + 516, 516, 40, 1170, 1157, 1170, 1170, 176, 516, 136, + 516, 1220, 319, 1133, 40, 516, 519, 1118, 1220, 519, + 1118, 1181, 1118, 516, 492, 1119, 1119, 149, 1157, 176, + 39, 291, 373, 458, 136, 138, 162, 281, 287, 436, + 447, 1166, 1187, 281, 472, 474, 1188, 149, 877, 1118, + 413, 1182, 1118, 1171, 1118, 429, 515, 1014, 515, 1140, + 515, 1157, 469, 515, 1141, 1217, 421, 423, 421, 423, + 1200, 1027, 1027, 1027, 1083, 1032, 1083, 929, 1207, 1116, + 554, 971, 258, 515, 516, 1207, 1115, 1115, 514, 514, + 516, 1014, 1078, 1088, 176, 515, 1014, 1063, 1064, 40, + 1065, 1066, 1217, 519, 101, 177, 211, 226, 242, 270, + 363, 1069, 1066, 40, 1065, 1068, 1217, 1066, 496, 1082, + 1180, 1118, 185, 1046, 1035, 299, 1152, 1155, 495, 837, + 5, 1207, 1044, 298, 472, 451, 1041, 253, 1062, 469, + 1084, 459, 415, 452, 983, 984, 985, 1217, 297, 986, + 1217, 1063, 999, 1000, 519, 1061, 505, 1181, 854, 792, + 850, 850, 61, 852, 510, 1212, 1212, 297, 1201, 300, + 297, 1118, 632, 1202, 515, 515, 515, 656, 205, 515, + 749, 156, 529, 429, 1211, 1202, 559, 1095, 791, 791, + 1095, 679, 1202, 188, 457, 429, 429, 679, 695, 701, + 352, 387, 572, 1202, 1202, 1202, 213, 287, 159, 846, + 312, 387, 429, 282, 156, 406, 620, 621, 749, 387, + 27, 141, 356, 357, 387, 576, 584, 585, 701, 897, + 379, 156, 529, 156, 529, 1202, 1202, 1202, 1202, 379, + 379, 243, 704, 705, 704, 516, 519, 706, 1208, 205, + 516, 519, 505, 517, 1202, 159, 1211, 1202, 352, 387, + 572, 1202, 1202, 1202, 297, 313, 352, 387, 27, 141, + 313, 352, 387, 1095, 279, 1095, 516, 519, 505, 1200, + 429, 1212, 453, 722, 159, 634, 374, 908, 469, 641, + 641, 634, 245, 320, 12, 287, 1208, 320, 1212, 450, + 159, 429, 429, 374, 403, 867, 867, 867, 312, 387, + 93, 429, 896, 374, 121, 170, 586, 166, 528, 429, + 429, 255, 255, 255, 429, 429, 374, 429, 429, 374, + 429, 374, 429, 374, 429, 129, 529, 1095, 282, 1208, + 387, 897, 156, 529, 429, 429, 516, 1202, 429, 896, + 374, 429, 1211, 1202, 516, 516, 516, 1159, 514, 1095, + 791, 223, 797, 1202, 1202, 1202, 223, 404, 405, 596, + 1208, 596, 188, 516, 516, 176, 759, 761, 279, 299, + 506, 507, 675, 762, 850, 1155, 1208, 1225, 74, 80, + 93, 121, 123, 180, 209, 282, 287, 330, 346, 446, + 623, 624, 627, 155, 468, 532, 559, 1202, 559, 301, + 699, 1200, 1200, 1200, 516, 519, 1212, 185, 364, 1212, + 1207, 439, 1200, 634, 3, 170, 727, 867, 50, 546, + 417, 708, 114, 968, 1118, 176, 519, 1201, 581, 766, + 767, 1208, 516, 519, 1202, 170, 635, 1200, 662, 1200, + 1202, 663, 515, 611, 1200, 516, 1202, 472, 474, 652, + 580, 40, 156, 1013, 651, 429, 156, 1072, 505, 516, + 519, 733, 516, 519, 121, 505, 861, 1208, 559, 417, + 849, 850, 170, 866, 53, 359, 862, 863, 860, 863, + 126, 215, 380, 451, 919, 1202, 292, 297, 302, 188, + 1013, 1095, 515, 516, 519, 529, 453, 529, 453, 529, + 1202, 1202, 717, 791, 156, 374, 374, 374, 374, 374, + 1201, 519, 811, 1217, 1211, 472, 519, 815, 1211, 519, + 821, 162, 300, 436, 820, 1074, 384, 154, 154, 114, + 278, 812, 821, 1212, 223, 223, 223, 223, 675, 223, + 223, 223, 223, 223, 1162, 425, 1118, 147, 1095, 516, + 1118, 1118, 1184, 227, 1186, 297, 297, 1183, 1186, 61, + 1192, 1183, 1183, 297, 297, 1190, 1188, 1188, 1166, 1118, + 1118, 516, 1157, 519, 1095, 1119, 1119, 1119, 1119, 136, + 138, 282, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, + 1119, 1119, 1118, 1118, 1118, 1095, 516, 516, 516, 1157, + 516, 519, 61, 1120, 1134, 516, 1220, 1129, 327, 409, + 1132, 516, 519, 464, 1125, 40, 516, 12, 1208, 1118, + 37, 37, 1118, 516, 1118, 176, 281, 1188, 446, 446, + 1118, 516, 149, 1119, 1119, 149, 149, 1118, 1118, 1033, + 516, 1157, 519, 1118, 1142, 1217, 1027, 1027, 1027, 1027, + 1200, 1200, 1200, 1046, 516, 1046, 516, 976, 514, 1066, + 1068, 1066, 515, 484, 1120, 516, 1217, 515, 1063, 226, + 307, 1070, 1063, 1070, 226, 1069, 1070, 226, 419, 1076, + 515, 1217, 515, 304, 61, 189, 1053, 515, 837, 167, + 237, 298, 472, 426, 104, 1118, 360, 988, 458, 516, + 519, 1181, 91, 988, 297, 516, 519, 998, 1084, 1118, + 516, 510, 854, 439, 179, 368, 375, 382, 418, 440, + 826, 170, 826, 516, 515, 639, 640, 832, 1123, 1217, + 635, 635, 749, 1202, 635, 123, 209, 278, 282, 750, + 1202, 1202, 40, 453, 453, 235, 792, 1211, 1202, 429, + 896, 374, 429, 213, 1202, 61, 420, 1202, 156, 616, + 121, 1217, 88, 618, 619, 403, 180, 158, 193, 282, + 580, 532, 114, 180, 282, 403, 580, 618, 620, 673, + 387, 585, 439, 1202, 1217, 379, 703, 1202, 583, 762, + 1220, 1202, 312, 387, 429, 896, 374, 429, 159, 429, + 429, 374, 178, 299, 406, 771, 772, 178, 299, 779, + 780, 429, 429, 374, 516, 516, 516, 903, 279, 675, + 850, 904, 1155, 1208, 1225, 352, 1202, 515, 472, 723, + 1202, 641, 108, 1217, 515, 641, 1209, 12, 1208, 1208, + 1208, 1202, 1202, 1202, 1202, 1209, 61, 420, 1202, 1202, + 1202, 1202, 459, 1202, 1202, 170, 170, 354, 170, 194, + 1211, 1202, 1202, 1211, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 297, 80, 577, 156, 29, 52, 439, 1217, 1202, + 1208, 701, 1202, 1202, 1202, 1202, 1032, 516, 223, 797, + 223, 223, 223, 797, 532, 453, 601, 602, 679, 749, + 472, 474, 791, 515, 791, 1202, 1119, 34, 61, 626, + 124, 196, 123, 287, 232, 1200, 625, 178, 334, 745, + 752, 753, 1217, 688, 515, 318, 515, 611, 629, 208, + 646, 614, 1212, 1212, 1095, 515, 581, 31, 126, 215, + 380, 451, 728, 429, 724, 1211, 194, 1200, 710, 476, + 297, 516, 1062, 659, 867, 516, 519, 1087, 699, 717, + 516, 670, 40, 292, 318, 515, 978, 613, 615, 617, + 631, 1217, 318, 647, 648, 611, 646, 580, 295, 297, + 653, 1013, 665, 663, 581, 1208, 1202, 829, 762, 3, + 765, 297, 851, 1118, 1118, 519, 515, 857, 439, 519, + 46, 1118, 429, 515, 635, 1200, 734, 679, 516, 944, + 945, 1202, 1202, 529, 384, 529, 1201, 1201, 1201, 1201, + 1201, 675, 182, 814, 821, 819, 516, 1202, 114, 176, + 529, 821, 287, 800, 1208, 800, 800, 800, 223, 800, + 800, 800, 800, 800, 1118, 516, 145, 1185, 516, 287, + 287, 516, 1034, 1186, 287, 287, 1186, 1186, 516, 516, + 176, 516, 1118, 176, 136, 138, 176, 170, 149, 516, + 479, 1127, 1157, 345, 458, 61, 1134, 1120, 470, 470, + 516, 1118, 278, 1118, 519, 1126, 1097, 1118, 1118, 1118, + 233, 233, 1118, 37, 37, 1118, 1118, 149, 516, 516, + 516, 1118, 516, 318, 1143, 1200, 1200, 1200, 1200, 1053, + 12, 1208, 1053, 1208, 516, 1079, 1080, 1123, 515, 1133, + 1065, 515, 1201, 1063, 297, 453, 1071, 1063, 226, 1063, + 1205, 1086, 515, 1086, 1217, 1028, 1118, 471, 1137, 877, + 426, 292, 1197, 1013, 311, 1013, 985, 297, 515, 987, + 1118, 505, 999, 988, 439, 516, 429, 807, 176, 749, + 1118, 516, 519, 472, 80, 831, 835, 831, 516, 516, + 516, 124, 196, 207, 123, 455, 529, 1095, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1212, 1202, 616, 121, 1217, + 699, 1209, 626, 194, 194, 287, 675, 626, 287, 1209, + 1095, 529, 529, 505, 61, 420, 1202, 1202, 1202, 1202, + 1202, 1211, 1202, 1202, 1207, 1207, 1095, 519, 1207, 1207, + 519, 1211, 1202, 1202, 429, 1118, 74, 1118, 1212, 1202, + 429, 429, 176, 200, 472, 1201, 1201, 791, 1201, 156, + 159, 791, 1208, 1208, 1095, 529, 529, 429, 516, 223, + 797, 797, 797, 797, 515, 597, 598, 532, 128, 178, + 212, 178, 1118, 282, 624, 121, 40, 867, 634, 867, + 1205, 37, 155, 200, 700, 704, 292, 610, 586, 153, + 202, 515, 384, 453, 635, 40, 1212, 722, 546, 282, + 515, 172, 1202, 658, 1208, 384, 581, 155, 1013, 791, + 292, 610, 663, 516, 519, 472, 622, 61, 651, 586, + 647, 86, 420, 654, 472, 933, 40, 654, 176, 297, + 515, 1200, 1208, 848, 868, 869, 1218, 863, 1095, 170, + 864, 1200, 176, 429, 888, 347, 735, 210, 680, 529, + 516, 529, 529, 1202, 300, 221, 813, 529, 800, 1202, + 516, 516, 516, 1118, 516, 1119, 176, 1118, 1118, 1118, + 515, 516, 519, 516, 1134, 516, 458, 400, 516, 204, + 278, 1131, 1118, 1118, 1118, 516, 61, 1032, 1137, 1137, + 377, 1022, 516, 519, 40, 1081, 121, 1093, 1094, 1119, + 83, 1201, 516, 1118, 515, 1063, 1071, 515, 516, 1086, + 516, 103, 186, 366, 515, 1047, 1048, 1049, 1050, 1051, + 1052, 1118, 1138, 1139, 1217, 1032, 516, 1010, 983, 93, + 830, 832, 137, 468, 1002, 1003, 1118, 813, 297, 813, + 516, 201, 637, 640, 299, 877, 791, 527, 791, 346, + 637, 637, 516, 429, 387, 994, 622, 40, 156, 156, + 577, 762, 1212, 1202, 429, 515, 843, 877, 879, 772, + 515, 515, 780, 1202, 516, 515, 516, 387, 994, 1202, + 1202, 515, 515, 515, 472, 496, 953, 354, 953, 953, + 170, 1202, 577, 1202, 797, 603, 604, 1220, 56, 102, + 127, 145, 149, 171, 175, 190, 287, 338, 599, 597, + 1208, 843, 40, 884, 884, 516, 193, 515, 453, 655, + 256, 638, 655, 515, 753, 745, 515, 516, 519, 1200, + 516, 384, 31, 85, 88, 94, 122, 180, 193, 206, + 403, 406, 630, 630, 1199, 1202, 1202, 516, 1013, 723, + 156, 114, 699, 176, 1202, 40, 1202, 663, 611, 1200, + 516, 615, 301, 1217, 652, 647, 651, 126, 141, 327, + 1202, 66, 74, 248, 1013, 791, 1072, 830, 176, 748, + 850, 516, 519, 439, 147, 525, 862, 865, 1083, 398, + 398, 516, 272, 296, 736, 737, 738, 170, 741, 679, + 278, 457, 681, 682, 1202, 821, 170, 1119, 1128, 1157, + 278, 491, 204, 516, 1157, 187, 339, 370, 1144, 60, + 130, 113, 1023, 1082, 1079, 515, 1119, 516, 519, 40, + 1089, 1090, 1217, 516, 1201, 1157, 516, 515, 388, 515, + 516, 519, 519, 40, 1037, 458, 1202, 516, 519, 283, + 451, 257, 282, 1003, 815, 826, 529, 831, 515, 867, + 515, 836, 580, 1200, 867, 867, 1202, 420, 193, 453, + 578, 387, 994, 1202, 1161, 170, 775, 775, 1161, 1161, + 1118, 420, 1157, 1157, 587, 588, 1219, 790, 791, 790, + 791, 1201, 529, 516, 519, 508, 515, 556, 605, 675, + 950, 1208, 950, 282, 287, 338, 950, 950, 1083, 884, + 44, 198, 278, 633, 515, 671, 1118, 205, 177, 317, + 393, 297, 642, 643, 644, 516, 1205, 6, 754, 704, + 611, 646, 1202, 516, 699, 163, 774, 581, 933, 1200, + 476, 1062, 699, 1013, 978, 647, 611, 646, 622, 515, + 653, 651, 652, 370, 370, 74, 300, 74, 663, 829, + 516, 1200, 749, 857, 868, 1095, 518, 137, 472, 472, + 737, 369, 417, 739, 142, 742, 468, 744, 457, 679, + 699, 529, 1118, 516, 516, 458, 54, 104, 442, 1118, + 1145, 1146, 1145, 1145, 516, 167, 167, 635, 1086, 519, + 1094, 1220, 516, 519, 170, 1095, 516, 516, 1157, 515, + 1157, 1048, 1139, 1141, 1055, 1013, 1083, 832, 387, 37, + 1004, 257, 176, 635, 655, 877, 837, 836, 634, 655, + 655, 1202, 671, 1118, 420, 516, 303, 377, 343, 776, + 776, 516, 516, 516, 1202, 516, 516, 516, 519, 1207, + 953, 604, 556, 606, 607, 1208, 1208, 287, 635, 508, + 635, 1208, 1208, 207, 672, 516, 420, 126, 451, 297, + 644, 297, 643, 515, 516, 519, 586, 384, 699, 791, + 40, 40, 515, 1202, 933, 663, 651, 586, 647, 515, + 649, 650, 1123, 1217, 654, 652, 653, 300, 300, 515, + 201, 833, 170, 863, 32, 216, 920, 178, 178, 950, + 369, 402, 743, 515, 155, 1146, 369, 169, 325, 169, + 325, 152, 1147, 1147, 1147, 61, 61, 387, 516, 1120, + 1090, 304, 3, 121, 282, 287, 1091, 1092, 40, 1067, + 353, 1077, 516, 1047, 516, 997, 1118, 425, 1004, 813, + 516, 641, 516, 837, 638, 749, 749, 994, 1202, 843, + 61, 994, 429, 587, 791, 516, 519, 635, 516, 407, + 1202, 65, 278, 358, 387, 645, 645, 516, 6, 384, + 1202, 771, 1013, 699, 652, 647, 651, 1118, 516, 519, + 835, 835, 653, 654, 830, 515, 625, 142, 283, 515, + 915, 917, 921, 980, 989, 996, 1013, 1024, 843, 843, + 740, 1217, 1118, 745, 37, 104, 185, 278, 426, 635, + 635, 1217, 1133, 1119, 1119, 287, 1092, 1217, 515, 516, + 1083, 126, 137, 451, 1005, 1006, 425, 529, 749, 642, + 994, 791, 515, 607, 26, 121, 287, 1202, 699, 933, + 653, 651, 652, 516, 650, 527, 527, 654, 516, 832, + 834, 581, 369, 916, 917, 918, 1014, 1015, 519, 519, + 516, 1205, 1146, 369, 305, 387, 387, 429, 453, 83, + 1118, 283, 387, 137, 215, 1007, 749, 1157, 634, 634, + 699, 654, 652, 653, 835, 833, 516, 519, 654, 744, + 516, 518, 429, 176, 515, 1217, 1217, 1205, 1206, 1217, + 1089, 516, 997, 283, 121, 311, 459, 515, 1008, 516, + 653, 654, 527, 625, 832, 1083, 155, 918, 398, 398, + 5, 746, 747, 1207, 1208, 1220, 515, 121, 516, 459, + 983, 515, 984, 654, 581, 745, 472, 472, 516, 519, + 1158, 1206, 458, 1157, 516, 654, 1205, 178, 178, 747, + 1032, 453, 1008, 516, 311, 1008, 1083, 515, 843, 843, + 516, 1217, 983, 746, 458, 516, 1008 }; #define yyerrok (yyerrstatus = 0) @@ -29644,7 +30682,7 @@ YYLTYPE yylloc; switch (yyn) { case 2: -#line 863 "gram.y" +#line 890 "gram.y" { pg_yyget_extra(yyscanner)->parsetree = (yyvsp[(1) - (1)].list); (void) yynerrs; /* suppress compiler warning */ @@ -29652,14 +30690,14 @@ YYLTYPE yylloc; break; case 3: -#line 868 "gram.y" +#line 895 "gram.y" { pg_yyget_extra(yyscanner)->parsetree = list_make1((yyvsp[(2) - (2)].typnam)); ;} break; case 4: -#line 872 "gram.y" +#line 899 "gram.y" { pg_yyget_extra(yyscanner)->parsetree = list_make1(makeRawStmt((yyvsp[(2) - (2)].node), 0)); @@ -29667,7 +30705,7 @@ YYLTYPE yylloc; break; case 5: -#line 877 "gram.y" +#line 904 "gram.y" { PLAssignStmt *n = (PLAssignStmt *) (yyvsp[(2) - (2)].node); @@ -29678,7 +30716,7 @@ YYLTYPE yylloc; break; case 6: -#line 885 "gram.y" +#line 912 "gram.y" { PLAssignStmt *n = (PLAssignStmt *) (yyvsp[(2) - (2)].node); @@ -29689,7 +30727,7 @@ YYLTYPE yylloc; break; case 7: -#line 893 "gram.y" +#line 920 "gram.y" { PLAssignStmt *n = (PLAssignStmt *) (yyvsp[(2) - (2)].node); @@ -29700,7 +30738,7 @@ YYLTYPE yylloc; break; case 8: -#line 913 "gram.y" +#line 940 "gram.y" { if ((yyvsp[(1) - (3)].list) != NIL) { @@ -29715,7 +30753,7 @@ YYLTYPE yylloc; break; case 9: -#line 925 "gram.y" +#line 952 "gram.y" { if ((yyvsp[(1) - (1)].node) != NULL) (yyval.list) = list_make1(makeRawStmt((yyvsp[(1) - (1)].node), 0)); @@ -29725,12 +30763,57 @@ YYLTYPE yylloc; break; case 136: -#line 1068 "gram.y" +#line 1095 "gram.y" { (yyval.node) = NULL; ;} break; case 137: -#line 1078 "gram.y" +#line 1102 "gram.y" + { (yyval.str) = (yyvsp[(1) - (1)].str); ;} + break; + + case 138: +#line 1103 "gram.y" + { (yyval.str) = NULL; ;} + break; + + case 139: +#line 1107 "gram.y" + { (yyval.list) = (yyvsp[(1) - (1)].list); ;} + break; + + case 140: +#line 1108 "gram.y" + { (yyval.list) = NIL; ;} + break; + + case 141: +#line 1112 "gram.y" + { (yyval.boolean) = true; ;} + break; + + case 142: +#line 1113 "gram.y" + { (yyval.boolean) = false; ;} + break; + + case 143: +#line 1117 "gram.y" + { (yyval.dbehavior) = DROP_CASCADE; ;} + break; + + case 144: +#line 1118 "gram.y" + { (yyval.dbehavior) = DROP_RESTRICT; ;} + break; + + case 145: +#line 1119 "gram.y" + { (yyval.dbehavior) = DROP_RESTRICT; /* default */ ;} + break; + + case 146: +#line 1129 "gram.y" { CallStmt *n = makeNode(CallStmt); @@ -29739,8 +30822,8 @@ YYLTYPE yylloc; ;} break; - case 138: -#line 1094 "gram.y" + case 147: +#line 1145 "gram.y" { CreateRoleStmt *n = makeNode(CreateRoleStmt); @@ -29751,51 +30834,51 @@ YYLTYPE yylloc; ;} break; - case 142: -#line 1116 "gram.y" + case 151: +#line 1167 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 143: -#line 1117 "gram.y" + case 152: +#line 1168 "gram.y" { (yyval.list) = NIL; ;} break; - case 144: -#line 1121 "gram.y" + case 153: +#line 1172 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 145: -#line 1122 "gram.y" + case 154: +#line 1173 "gram.y" { (yyval.list) = NIL; ;} break; - case 146: -#line 1127 "gram.y" + case 155: +#line 1178 "gram.y" { (yyval.defelt) = makeDefElem("password", (Node *) makeString((yyvsp[(2) - (2)].str)), (yylsp[(1) - (2)])); ;} break; - case 147: -#line 1132 "gram.y" + case 156: +#line 1183 "gram.y" { (yyval.defelt) = makeDefElem("password", (Node *)makeParamRef((yyvsp[(2) - (2)].ival), (yylsp[(2) - (2)])), (yylsp[(1) - (2)])); ;} break; - case 148: -#line 1137 "gram.y" + case 157: +#line 1188 "gram.y" { (yyval.defelt) = makeDefElem("password", NULL, (yylsp[(1) - (2)])); ;} break; - case 149: -#line 1141 "gram.y" + case 158: +#line 1192 "gram.y" { /* * These days, passwords are always stored in encrypted @@ -29807,8 +30890,8 @@ YYLTYPE yylloc; ;} break; - case 150: -#line 1151 "gram.y" + case 159: +#line 1202 "gram.y" { /* * These days, passwords are always stored in encrypted @@ -29820,8 +30903,8 @@ YYLTYPE yylloc; ;} break; - case 151: -#line 1161 "gram.y" + case 160: +#line 1212 "gram.y" { ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), @@ -29831,36 +30914,36 @@ YYLTYPE yylloc; ;} break; - case 152: -#line 1169 "gram.y" + case 161: +#line 1220 "gram.y" { (yyval.defelt) = makeDefElem("inherit", (Node *) makeBoolean(true), (yylsp[(1) - (1)])); ;} break; - case 153: -#line 1173 "gram.y" + case 162: +#line 1224 "gram.y" { (yyval.defelt) = makeDefElem("connectionlimit", (Node *) makeInteger((yyvsp[(3) - (3)].ival)), (yylsp[(1) - (3)])); ;} break; - case 154: -#line 1177 "gram.y" + case 163: +#line 1228 "gram.y" { (yyval.defelt) = makeDefElem("validUntil", (Node *) makeString((yyvsp[(3) - (3)].str)), (yylsp[(1) - (3)])); ;} break; - case 155: -#line 1182 "gram.y" + case 164: +#line 1233 "gram.y" { (yyval.defelt) = makeDefElem("rolemembers", (Node *) (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)])); ;} break; - case 156: -#line 1186 "gram.y" + case 165: +#line 1237 "gram.y" { /* * We handle identifiers that aren't parser keywords with @@ -29907,48 +30990,48 @@ YYLTYPE yylloc; ;} break; - case 157: -#line 1233 "gram.y" + case 166: +#line 1284 "gram.y" { (yyval.defelt) = (yyvsp[(1) - (1)].defelt); ;} break; - case 158: -#line 1236 "gram.y" + case 167: +#line 1287 "gram.y" { (yyval.defelt) = makeDefElem("sysid", (Node *) makeInteger((yyvsp[(2) - (2)].ival)), (yylsp[(1) - (2)])); ;} break; - case 159: -#line 1240 "gram.y" + case 168: +#line 1291 "gram.y" { (yyval.defelt) = makeDefElem("adminmembers", (Node *) (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)])); ;} break; - case 160: -#line 1244 "gram.y" + case 169: +#line 1295 "gram.y" { (yyval.defelt) = makeDefElem("rolemembers", (Node *) (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)])); ;} break; - case 161: -#line 1248 "gram.y" + case 170: +#line 1299 "gram.y" { (yyval.defelt) = makeDefElem("addroleto", (Node *) (yyvsp[(3) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 162: -#line 1252 "gram.y" + case 171: +#line 1303 "gram.y" { (yyval.defelt) = makeDefElem("addroleto", (Node *) (yyvsp[(3) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 163: -#line 1266 "gram.y" + case 172: +#line 1317 "gram.y" { CreateRoleStmt *n = makeNode(CreateRoleStmt); @@ -29959,8 +31042,8 @@ YYLTYPE yylloc; ;} break; - case 164: -#line 1285 "gram.y" + case 173: +#line 1336 "gram.y" { AlterRoleStmt *n = makeNode(AlterRoleStmt); @@ -29971,8 +31054,8 @@ YYLTYPE yylloc; ;} break; - case 165: -#line 1294 "gram.y" + case 174: +#line 1345 "gram.y" { AlterRoleStmt *n = makeNode(AlterRoleStmt); @@ -29983,18 +31066,18 @@ YYLTYPE yylloc; ;} break; - case 166: -#line 1305 "gram.y" + case 175: +#line 1356 "gram.y" { (yyval.str) = NULL; ;} break; - case 167: -#line 1306 "gram.y" + case 176: +#line 1357 "gram.y" { (yyval.str) = (yyvsp[(3) - (3)].str); ;} break; - case 168: -#line 1311 "gram.y" + case 177: +#line 1362 "gram.y" { AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt); @@ -30005,8 +31088,8 @@ YYLTYPE yylloc; ;} break; - case 169: -#line 1320 "gram.y" + case 178: +#line 1371 "gram.y" { AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt); @@ -30017,8 +31100,8 @@ YYLTYPE yylloc; ;} break; - case 170: -#line 1329 "gram.y" + case 179: +#line 1380 "gram.y" { AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt); @@ -30029,8 +31112,8 @@ YYLTYPE yylloc; ;} break; - case 171: -#line 1338 "gram.y" + case 180: +#line 1389 "gram.y" { AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt); @@ -30041,8 +31124,8 @@ YYLTYPE yylloc; ;} break; - case 172: -#line 1360 "gram.y" + case 181: +#line 1411 "gram.y" { DropRoleStmt *n = makeNode(DropRoleStmt); @@ -30052,8 +31135,8 @@ YYLTYPE yylloc; ;} break; - case 173: -#line 1368 "gram.y" + case 182: +#line 1419 "gram.y" { DropRoleStmt *n = makeNode(DropRoleStmt); @@ -30063,8 +31146,8 @@ YYLTYPE yylloc; ;} break; - case 174: -#line 1376 "gram.y" + case 183: +#line 1427 "gram.y" { DropRoleStmt *n = makeNode(DropRoleStmt); @@ -30074,8 +31157,8 @@ YYLTYPE yylloc; ;} break; - case 175: -#line 1384 "gram.y" + case 184: +#line 1435 "gram.y" { DropRoleStmt *n = makeNode(DropRoleStmt); @@ -30085,8 +31168,8 @@ YYLTYPE yylloc; ;} break; - case 176: -#line 1392 "gram.y" + case 185: +#line 1443 "gram.y" { DropRoleStmt *n = makeNode(DropRoleStmt); @@ -30096,8 +31179,8 @@ YYLTYPE yylloc; ;} break; - case 177: -#line 1400 "gram.y" + case 186: +#line 1451 "gram.y" { DropRoleStmt *n = makeNode(DropRoleStmt); @@ -30107,8 +31190,8 @@ YYLTYPE yylloc; ;} break; - case 178: -#line 1418 "gram.y" + case 187: +#line 1469 "gram.y" { CreateRoleStmt *n = makeNode(CreateRoleStmt); @@ -30119,8 +31202,8 @@ YYLTYPE yylloc; ;} break; - case 179: -#line 1437 "gram.y" + case 188: +#line 1488 "gram.y" { AlterRoleStmt *n = makeNode(AlterRoleStmt); @@ -30132,18 +31215,18 @@ YYLTYPE yylloc; ;} break; - case 180: -#line 1448 "gram.y" + case 189: +#line 1499 "gram.y" { (yyval.ival) = +1; ;} break; - case 181: -#line 1449 "gram.y" + case 190: +#line 1500 "gram.y" { (yyval.ival) = -1; ;} break; - case 182: -#line 1461 "gram.y" + case 191: +#line 1512 "gram.y" { CreateSchemaStmt *n = makeNode(CreateSchemaStmt); @@ -30156,8 +31239,8 @@ YYLTYPE yylloc; ;} break; - case 183: -#line 1472 "gram.y" + case 192: +#line 1523 "gram.y" { CreateSchemaStmt *n = makeNode(CreateSchemaStmt); @@ -30170,8 +31253,8 @@ YYLTYPE yylloc; ;} break; - case 184: -#line 1483 "gram.y" + case 193: +#line 1534 "gram.y" { CreateSchemaStmt *n = makeNode(CreateSchemaStmt); @@ -30189,8 +31272,8 @@ YYLTYPE yylloc; ;} break; - case 185: -#line 1499 "gram.y" + case 194: +#line 1550 "gram.y" { CreateSchemaStmt *n = makeNode(CreateSchemaStmt); @@ -30208,18 +31291,8 @@ YYLTYPE yylloc; ;} break; - case 186: -#line 1517 "gram.y" - { (yyval.str) = (yyvsp[(1) - (1)].str); ;} - break; - - case 187: -#line 1518 "gram.y" - { (yyval.str) = NULL; ;} - break; - - case 188: -#line 1523 "gram.y" + case 195: +#line 1569 "gram.y" { if ((yyloc) < 0) /* see comments for YYLLOC_DEFAULT */ (yyloc) = (yylsp[(2) - (2)]); @@ -30227,13 +31300,13 @@ YYLTYPE yylloc; ;} break; - case 189: -#line 1529 "gram.y" + case 196: +#line 1575 "gram.y" { (yyval.list) = NIL; ;} break; - case 196: -#line 1557 "gram.y" + case 203: +#line 1603 "gram.y" { VariableSetStmt *n = (yyvsp[(2) - (2)].vsetstmt); @@ -30242,8 +31315,8 @@ YYLTYPE yylloc; ;} break; - case 197: -#line 1564 "gram.y" + case 204: +#line 1610 "gram.y" { VariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt); @@ -30252,8 +31325,8 @@ YYLTYPE yylloc; ;} break; - case 198: -#line 1571 "gram.y" + case 205: +#line 1617 "gram.y" { VariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt); @@ -30262,8 +31335,8 @@ YYLTYPE yylloc; ;} break; - case 199: -#line 1581 "gram.y" + case 206: +#line 1627 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30274,8 +31347,8 @@ YYLTYPE yylloc; ;} break; - case 200: -#line 1590 "gram.y" + case 207: +#line 1636 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30286,8 +31359,8 @@ YYLTYPE yylloc; ;} break; - case 202: -#line 1603 "gram.y" + case 209: +#line 1649 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30298,8 +31371,8 @@ YYLTYPE yylloc; ;} break; - case 203: -#line 1612 "gram.y" + case 210: +#line 1658 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30310,8 +31383,8 @@ YYLTYPE yylloc; ;} break; - case 204: -#line 1621 "gram.y" + case 211: +#line 1667 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30321,8 +31394,8 @@ YYLTYPE yylloc; ;} break; - case 205: -#line 1629 "gram.y" + case 212: +#line 1675 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30332,13 +31405,13 @@ YYLTYPE yylloc; ;} break; - case 206: -#line 1639 "gram.y" + case 213: +#line 1685 "gram.y" {(yyval.vsetstmt) = (yyvsp[(1) - (1)].vsetstmt);;} break; - case 207: -#line 1641 "gram.y" + case 214: +#line 1687 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30348,8 +31421,8 @@ YYLTYPE yylloc; ;} break; - case 208: -#line 1650 "gram.y" + case 215: +#line 1696 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30363,8 +31436,8 @@ YYLTYPE yylloc; ;} break; - case 209: -#line 1662 "gram.y" + case 216: +#line 1708 "gram.y" { ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), @@ -30374,8 +31447,8 @@ YYLTYPE yylloc; ;} break; - case 210: -#line 1670 "gram.y" + case 217: +#line 1716 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30386,8 +31459,8 @@ YYLTYPE yylloc; ;} break; - case 211: -#line 1679 "gram.y" + case 218: +#line 1725 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); n->kind = VAR_SET_VALUE; @@ -30397,8 +31470,8 @@ YYLTYPE yylloc; ;} break; - case 212: -#line 1687 "gram.y" + case 219: +#line 1733 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30412,8 +31485,8 @@ YYLTYPE yylloc; ;} break; - case 213: -#line 1699 "gram.y" + case 220: +#line 1745 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30424,8 +31497,8 @@ YYLTYPE yylloc; ;} break; - case 214: -#line 1708 "gram.y" + case 221: +#line 1754 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); n->kind = VAR_SET_VALUE; @@ -30435,8 +31508,8 @@ YYLTYPE yylloc; ;} break; - case 215: -#line 1716 "gram.y" + case 222: +#line 1762 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30447,8 +31520,8 @@ YYLTYPE yylloc; ;} break; - case 216: -#line 1725 "gram.y" + case 223: +#line 1771 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); n->kind = VAR_SET_VALUE; @@ -30458,8 +31531,8 @@ YYLTYPE yylloc; ;} break; - case 217: -#line 1733 "gram.y" + case 224: +#line 1779 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30469,8 +31542,8 @@ YYLTYPE yylloc; ;} break; - case 218: -#line 1741 "gram.y" + case 225: +#line 1787 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30481,8 +31554,8 @@ YYLTYPE yylloc; ;} break; - case 219: -#line 1751 "gram.y" + case 226: +#line 1797 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30493,104 +31566,104 @@ YYLTYPE yylloc; ;} break; - case 220: -#line 1761 "gram.y" + case 227: +#line 1807 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 221: -#line 1763 "gram.y" + case 228: +#line 1809 "gram.y" { (yyval.str) = psprintf("%s.%s", (yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].str)); ;} break; - case 222: -#line 1766 "gram.y" + case 229: +#line 1812 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 223: -#line 1767 "gram.y" + case 230: +#line 1813 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 224: -#line 1771 "gram.y" + case 231: +#line 1817 "gram.y" { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 225: -#line 1773 "gram.y" + case 232: +#line 1819 "gram.y" { (yyval.node) = makeAConst((yyvsp[(1) - (1)].node), (yylsp[(1) - (1)])); ;} break; - case 226: -#line 1775 "gram.y" + case 233: +#line 1821 "gram.y" { (yyval.node) = makeParamRef((yyvsp[(1) - (1)].ival), (yylsp[(1) - (1)])); ;} break; - case 227: -#line 1778 "gram.y" + case 234: +#line 1824 "gram.y" { (yyval.str) = "read uncommitted"; ;} break; - case 228: -#line 1779 "gram.y" + case 235: +#line 1825 "gram.y" { (yyval.str) = "read committed"; ;} break; - case 229: -#line 1780 "gram.y" + case 236: +#line 1826 "gram.y" { (yyval.str) = "repeatable read"; ;} break; - case 230: -#line 1781 "gram.y" + case 237: +#line 1827 "gram.y" { (yyval.str) = "serializable"; ;} break; - case 231: -#line 1785 "gram.y" + case 238: +#line 1831 "gram.y" { (yyval.str) = "true"; ;} break; - case 232: -#line 1786 "gram.y" + case 239: +#line 1832 "gram.y" { (yyval.str) = "false"; ;} break; - case 233: -#line 1787 "gram.y" + case 240: +#line 1833 "gram.y" { (yyval.str) = "on"; ;} break; - case 234: -#line 1793 "gram.y" + case 241: +#line 1839 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 235: -#line 1806 "gram.y" + case 242: +#line 1852 "gram.y" { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 236: -#line 1810 "gram.y" + case 243: +#line 1856 "gram.y" { (yyval.node) = makeParamRef((yyvsp[(1) - (1)].ival), (yylsp[(1) - (1)])); ;} break; - case 237: -#line 1814 "gram.y" + case 244: +#line 1860 "gram.y" { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 238: -#line 1818 "gram.y" + case 245: +#line 1864 "gram.y" { TypeName *t = (yyvsp[(1) - (3)].typnam); @@ -30609,8 +31682,8 @@ YYLTYPE yylloc; ;} break; - case 239: -#line 1835 "gram.y" + case 246: +#line 1881 "gram.y" { TypeName *t = (yyvsp[(1) - (5)].typnam); @@ -30620,58 +31693,58 @@ YYLTYPE yylloc; ;} break; - case 240: -#line 1842 "gram.y" + case 247: +#line 1888 "gram.y" { (yyval.node) = makeAConst((yyvsp[(1) - (1)].node), (yylsp[(1) - (1)])); ;} break; - case 241: -#line 1843 "gram.y" + case 248: +#line 1889 "gram.y" { (yyval.node) = NULL; ;} break; - case 242: -#line 1844 "gram.y" + case 249: +#line 1890 "gram.y" { (yyval.node) = NULL; ;} break; - case 243: -#line 1848 "gram.y" + case 250: +#line 1894 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 244: -#line 1849 "gram.y" + case 251: +#line 1895 "gram.y" { (yyval.str) = NULL; ;} break; - case 245: -#line 1850 "gram.y" + case 252: +#line 1896 "gram.y" { (yyval.str) = NULL; ;} break; - case 246: -#line 1854 "gram.y" + case 253: +#line 1900 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 247: -#line 1855 "gram.y" + case 254: +#line 1901 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 248: -#line 1859 "gram.y" + case 255: +#line 1905 "gram.y" { (yyval.node) = (Node *) (yyvsp[(2) - (2)].vsetstmt); ;} break; - case 249: -#line 1863 "gram.y" + case 256: +#line 1909 "gram.y" { (yyval.vsetstmt) = (yyvsp[(1) - (1)].vsetstmt); ;} break; - case 250: -#line 1865 "gram.y" + case 257: +#line 1911 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30681,8 +31754,8 @@ YYLTYPE yylloc; ;} break; - case 251: -#line 1873 "gram.y" + case 258: +#line 1919 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30692,8 +31765,8 @@ YYLTYPE yylloc; ;} break; - case 252: -#line 1881 "gram.y" + case 259: +#line 1927 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30703,8 +31776,8 @@ YYLTYPE yylloc; ;} break; - case 253: -#line 1892 "gram.y" + case 260: +#line 1938 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30714,8 +31787,8 @@ YYLTYPE yylloc; ;} break; - case 254: -#line 1900 "gram.y" + case 261: +#line 1946 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); @@ -30724,28 +31797,28 @@ YYLTYPE yylloc; ;} break; - case 255: -#line 1910 "gram.y" + case 262: +#line 1956 "gram.y" { (yyval.vsetstmt) = (yyvsp[(2) - (2)].vsetstmt); ;} break; - case 256: -#line 1911 "gram.y" + case 263: +#line 1957 "gram.y" { (yyval.vsetstmt) = (VariableSetStmt *) (yyvsp[(1) - (1)].node); ;} break; - case 257: -#line 1916 "gram.y" + case 264: +#line 1962 "gram.y" { (yyval.vsetstmt) = (yyvsp[(2) - (2)].vsetstmt); ;} break; - case 258: -#line 1917 "gram.y" + case 265: +#line 1963 "gram.y" { (yyval.vsetstmt) = (VariableSetStmt *) (yyvsp[(1) - (1)].node); ;} break; - case 259: -#line 1923 "gram.y" + case 266: +#line 1969 "gram.y" { VariableShowStmt *n = makeNode(VariableShowStmt); @@ -30754,8 +31827,8 @@ YYLTYPE yylloc; ;} break; - case 260: -#line 1930 "gram.y" + case 267: +#line 1976 "gram.y" { VariableShowStmt *n = makeNode(VariableShowStmt); @@ -30764,8 +31837,8 @@ YYLTYPE yylloc; ;} break; - case 261: -#line 1937 "gram.y" + case 268: +#line 1983 "gram.y" { VariableShowStmt *n = makeNode(VariableShowStmt); @@ -30774,8 +31847,8 @@ YYLTYPE yylloc; ;} break; - case 262: -#line 1944 "gram.y" + case 269: +#line 1990 "gram.y" { VariableShowStmt *n = makeNode(VariableShowStmt); @@ -30784,8 +31857,8 @@ YYLTYPE yylloc; ;} break; - case 263: -#line 1951 "gram.y" + case 270: +#line 1997 "gram.y" { VariableShowStmt *n = makeNode(VariableShowStmt); @@ -30794,8 +31867,8 @@ YYLTYPE yylloc; ;} break; - case 264: -#line 1962 "gram.y" + case 271: +#line 2008 "gram.y" { ConstraintsSetStmt *n = makeNode(ConstraintsSetStmt); @@ -30805,28 +31878,28 @@ YYLTYPE yylloc; ;} break; - case 265: -#line 1972 "gram.y" + case 272: +#line 2018 "gram.y" { (yyval.list) = NIL; ;} break; - case 266: -#line 1973 "gram.y" + case 273: +#line 2019 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 267: -#line 1977 "gram.y" + case 274: +#line 2023 "gram.y" { (yyval.boolean) = true; ;} break; - case 268: -#line 1978 "gram.y" + case 275: +#line 2024 "gram.y" { (yyval.boolean) = false; ;} break; - case 269: -#line 1987 "gram.y" + case 276: +#line 2033 "gram.y" { CheckPointStmt *n = makeNode(CheckPointStmt); @@ -30834,8 +31907,8 @@ YYLTYPE yylloc; ;} break; - case 270: -#line 2003 "gram.y" + case 277: +#line 2049 "gram.y" { DiscardStmt *n = makeNode(DiscardStmt); @@ -30844,8 +31917,8 @@ YYLTYPE yylloc; ;} break; - case 271: -#line 2010 "gram.y" + case 278: +#line 2056 "gram.y" { DiscardStmt *n = makeNode(DiscardStmt); @@ -30854,8 +31927,8 @@ YYLTYPE yylloc; ;} break; - case 272: -#line 2017 "gram.y" + case 279: +#line 2063 "gram.y" { DiscardStmt *n = makeNode(DiscardStmt); @@ -30864,8 +31937,8 @@ YYLTYPE yylloc; ;} break; - case 273: -#line 2024 "gram.y" + case 280: +#line 2070 "gram.y" { DiscardStmt *n = makeNode(DiscardStmt); @@ -30874,8 +31947,8 @@ YYLTYPE yylloc; ;} break; - case 274: -#line 2031 "gram.y" + case 281: +#line 2077 "gram.y" { DiscardStmt *n = makeNode(DiscardStmt); @@ -30884,8 +31957,8 @@ YYLTYPE yylloc; ;} break; - case 275: -#line 2051 "gram.y" + case 282: +#line 2097 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -30897,8 +31970,8 @@ YYLTYPE yylloc; ;} break; - case 276: -#line 2061 "gram.y" + case 283: +#line 2107 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -30910,8 +31983,8 @@ YYLTYPE yylloc; ;} break; - case 277: -#line 2071 "gram.y" + case 284: +#line 2117 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -30923,8 +31996,8 @@ YYLTYPE yylloc; ;} break; - case 278: -#line 2081 "gram.y" + case 285: +#line 2127 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -30936,8 +32009,8 @@ YYLTYPE yylloc; ;} break; - case 279: -#line 2091 "gram.y" + case 286: +#line 2137 "gram.y" { AlterTableMoveAllStmt *n = makeNode(AlterTableMoveAllStmt); @@ -30951,8 +32024,8 @@ YYLTYPE yylloc; ;} break; - case 280: -#line 2103 "gram.y" + case 287: +#line 2149 "gram.y" { AlterTableMoveAllStmt *n = makeNode(AlterTableMoveAllStmt); @@ -30966,8 +32039,8 @@ YYLTYPE yylloc; ;} break; - case 281: -#line 2115 "gram.y" + case 288: +#line 2161 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -30979,8 +32052,8 @@ YYLTYPE yylloc; ;} break; - case 282: -#line 2125 "gram.y" + case 289: +#line 2171 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -30992,8 +32065,8 @@ YYLTYPE yylloc; ;} break; - case 283: -#line 2135 "gram.y" + case 290: +#line 2181 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -31005,8 +32078,8 @@ YYLTYPE yylloc; ;} break; - case 284: -#line 2145 "gram.y" + case 291: +#line 2191 "gram.y" { AlterTableMoveAllStmt *n = makeNode(AlterTableMoveAllStmt); @@ -31020,8 +32093,8 @@ YYLTYPE yylloc; ;} break; - case 285: -#line 2157 "gram.y" + case 292: +#line 2203 "gram.y" { AlterTableMoveAllStmt *n = makeNode(AlterTableMoveAllStmt); @@ -31035,8 +32108,8 @@ YYLTYPE yylloc; ;} break; - case 286: -#line 2169 "gram.y" + case 293: +#line 2215 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -31048,8 +32121,8 @@ YYLTYPE yylloc; ;} break; - case 287: -#line 2179 "gram.y" + case 294: +#line 2225 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -31061,8 +32134,8 @@ YYLTYPE yylloc; ;} break; - case 288: -#line 2189 "gram.y" + case 295: +#line 2235 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -31074,8 +32147,8 @@ YYLTYPE yylloc; ;} break; - case 289: -#line 2199 "gram.y" + case 296: +#line 2245 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -31087,8 +32160,8 @@ YYLTYPE yylloc; ;} break; - case 290: -#line 2209 "gram.y" + case 297: +#line 2255 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -31100,8 +32173,8 @@ YYLTYPE yylloc; ;} break; - case 291: -#line 2219 "gram.y" + case 298: +#line 2265 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -31113,8 +32186,8 @@ YYLTYPE yylloc; ;} break; - case 292: -#line 2229 "gram.y" + case 299: +#line 2275 "gram.y" { AlterTableMoveAllStmt *n = makeNode(AlterTableMoveAllStmt); @@ -31128,8 +32201,8 @@ YYLTYPE yylloc; ;} break; - case 293: -#line 2241 "gram.y" + case 300: +#line 2287 "gram.y" { AlterTableMoveAllStmt *n = makeNode(AlterTableMoveAllStmt); @@ -31143,8 +32216,8 @@ YYLTYPE yylloc; ;} break; - case 294: -#line 2253 "gram.y" + case 301: +#line 2299 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -31156,8 +32229,8 @@ YYLTYPE yylloc; ;} break; - case 295: -#line 2263 "gram.y" + case 302: +#line 2309 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -31169,18 +32242,18 @@ YYLTYPE yylloc; ;} break; - case 296: -#line 2275 "gram.y" + case 303: +#line 2321 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 297: -#line 2276 "gram.y" + case 304: +#line 2322 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 298: -#line 2282 "gram.y" + case 305: +#line 2328 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); PartitionCmd *cmd = makeNode(PartitionCmd); @@ -31195,8 +32268,8 @@ YYLTYPE yylloc; ;} break; - case 299: -#line 2296 "gram.y" + case 306: +#line 2342 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); PartitionCmd *cmd = makeNode(PartitionCmd); @@ -31211,8 +32284,8 @@ YYLTYPE yylloc; ;} break; - case 300: -#line 2309 "gram.y" + case 307: +#line 2355 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); PartitionCmd *cmd = makeNode(PartitionCmd); @@ -31226,8 +32299,8 @@ YYLTYPE yylloc; ;} break; - case 301: -#line 2325 "gram.y" + case 308: +#line 2371 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); PartitionCmd *cmd = makeNode(PartitionCmd); @@ -31242,8 +32315,8 @@ YYLTYPE yylloc; ;} break; - case 302: -#line 2342 "gram.y" + case 309: +#line 2388 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31254,8 +32327,8 @@ YYLTYPE yylloc; ;} break; - case 303: -#line 2352 "gram.y" + case 310: +#line 2398 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31266,8 +32339,8 @@ YYLTYPE yylloc; ;} break; - case 304: -#line 2362 "gram.y" + case 311: +#line 2408 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31278,8 +32351,8 @@ YYLTYPE yylloc; ;} break; - case 305: -#line 2372 "gram.y" + case 312: +#line 2418 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31290,8 +32363,8 @@ YYLTYPE yylloc; ;} break; - case 306: -#line 2382 "gram.y" + case 313: +#line 2428 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31302,8 +32375,8 @@ YYLTYPE yylloc; ;} break; - case 307: -#line 2392 "gram.y" + case 314: +#line 2438 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31313,8 +32386,8 @@ YYLTYPE yylloc; ;} break; - case 308: -#line 2401 "gram.y" + case 315: +#line 2447 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31324,8 +32397,8 @@ YYLTYPE yylloc; ;} break; - case 309: -#line 2410 "gram.y" + case 316: +#line 2456 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31335,8 +32408,8 @@ YYLTYPE yylloc; ;} break; - case 310: -#line 2419 "gram.y" + case 317: +#line 2465 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31347,8 +32420,8 @@ YYLTYPE yylloc; ;} break; - case 311: -#line 2429 "gram.y" + case 318: +#line 2475 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31359,8 +32432,8 @@ YYLTYPE yylloc; ;} break; - case 312: -#line 2439 "gram.y" + case 319: +#line 2485 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31377,8 +32450,8 @@ YYLTYPE yylloc; ;} break; - case 313: -#line 2455 "gram.y" + case 320: +#line 2501 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31389,8 +32462,8 @@ YYLTYPE yylloc; ;} break; - case 314: -#line 2465 "gram.y" + case 321: +#line 2511 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31401,20 +32474,20 @@ YYLTYPE yylloc; ;} break; - case 315: -#line 2475 "gram.y" + case 322: +#line 2521 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_SetStorage; - n->name = (yyvsp[(3) - (6)].str); - n->def = (Node *) makeString((yyvsp[(6) - (6)].str)); + n->name = (yyvsp[(3) - (5)].str); + n->def = (Node *) makeString((yyvsp[(5) - (5)].str)); (yyval.node) = (Node *) n; ;} break; - case 316: -#line 2485 "gram.y" + case 323: +#line 2531 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31425,8 +32498,8 @@ YYLTYPE yylloc; ;} break; - case 317: -#line 2495 "gram.y" + case 324: +#line 2541 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); Constraint *c = makeNode(Constraint); @@ -31444,8 +32517,8 @@ YYLTYPE yylloc; ;} break; - case 318: -#line 2512 "gram.y" + case 325: +#line 2558 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31456,8 +32529,8 @@ YYLTYPE yylloc; ;} break; - case 319: -#line 2522 "gram.y" + case 326: +#line 2568 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31468,8 +32541,8 @@ YYLTYPE yylloc; ;} break; - case 320: -#line 2532 "gram.y" + case 327: +#line 2578 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31480,8 +32553,8 @@ YYLTYPE yylloc; ;} break; - case 321: -#line 2542 "gram.y" + case 328: +#line 2588 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31493,8 +32566,8 @@ YYLTYPE yylloc; ;} break; - case 322: -#line 2553 "gram.y" + case 329: +#line 2599 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31506,8 +32579,8 @@ YYLTYPE yylloc; ;} break; - case 323: -#line 2567 "gram.y" + case 330: +#line 2613 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); ColumnDef *def = makeNode(ColumnDef); @@ -31524,8 +32597,8 @@ YYLTYPE yylloc; ;} break; - case 324: -#line 2583 "gram.y" + case 331: +#line 2629 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31536,8 +32609,8 @@ YYLTYPE yylloc; ;} break; - case 325: -#line 2593 "gram.y" + case 332: +#line 2639 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31547,8 +32620,8 @@ YYLTYPE yylloc; ;} break; - case 326: -#line 2602 "gram.y" + case 333: +#line 2648 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); Constraint *c = makeNode(Constraint); @@ -31565,8 +32638,8 @@ YYLTYPE yylloc; ;} break; - case 327: -#line 2618 "gram.y" + case 334: +#line 2664 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31576,8 +32649,8 @@ YYLTYPE yylloc; ;} break; - case 328: -#line 2627 "gram.y" + case 335: +#line 2673 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31589,8 +32662,8 @@ YYLTYPE yylloc; ;} break; - case 329: -#line 2638 "gram.y" + case 336: +#line 2684 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31602,8 +32675,8 @@ YYLTYPE yylloc; ;} break; - case 330: -#line 2649 "gram.y" + case 337: +#line 2695 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31612,8 +32685,8 @@ YYLTYPE yylloc; ;} break; - case 331: -#line 2657 "gram.y" + case 338: +#line 2703 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31623,8 +32696,8 @@ YYLTYPE yylloc; ;} break; - case 332: -#line 2666 "gram.y" + case 339: +#line 2712 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31634,8 +32707,8 @@ YYLTYPE yylloc; ;} break; - case 333: -#line 2675 "gram.y" + case 340: +#line 2721 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31644,8 +32717,8 @@ YYLTYPE yylloc; ;} break; - case 334: -#line 2683 "gram.y" + case 341: +#line 2729 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31654,8 +32727,8 @@ YYLTYPE yylloc; ;} break; - case 335: -#line 2691 "gram.y" + case 342: +#line 2737 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31665,8 +32738,8 @@ YYLTYPE yylloc; ;} break; - case 336: -#line 2700 "gram.y" + case 343: +#line 2746 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31676,8 +32749,8 @@ YYLTYPE yylloc; ;} break; - case 337: -#line 2709 "gram.y" + case 344: +#line 2755 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31687,8 +32760,8 @@ YYLTYPE yylloc; ;} break; - case 338: -#line 2718 "gram.y" + case 345: +#line 2764 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31697,8 +32770,8 @@ YYLTYPE yylloc; ;} break; - case 339: -#line 2726 "gram.y" + case 346: +#line 2772 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31707,8 +32780,8 @@ YYLTYPE yylloc; ;} break; - case 340: -#line 2734 "gram.y" + case 347: +#line 2780 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31718,8 +32791,8 @@ YYLTYPE yylloc; ;} break; - case 341: -#line 2743 "gram.y" + case 348: +#line 2789 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31728,8 +32801,8 @@ YYLTYPE yylloc; ;} break; - case 342: -#line 2751 "gram.y" + case 349: +#line 2797 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31738,8 +32811,8 @@ YYLTYPE yylloc; ;} break; - case 343: -#line 2759 "gram.y" + case 350: +#line 2805 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31749,8 +32822,8 @@ YYLTYPE yylloc; ;} break; - case 344: -#line 2768 "gram.y" + case 351: +#line 2814 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31760,8 +32833,8 @@ YYLTYPE yylloc; ;} break; - case 345: -#line 2777 "gram.y" + case 352: +#line 2823 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31771,8 +32844,8 @@ YYLTYPE yylloc; ;} break; - case 346: -#line 2786 "gram.y" + case 353: +#line 2832 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31782,8 +32855,8 @@ YYLTYPE yylloc; ;} break; - case 347: -#line 2795 "gram.y" + case 354: +#line 2841 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31793,8 +32866,8 @@ YYLTYPE yylloc; ;} break; - case 348: -#line 2804 "gram.y" + case 355: +#line 2850 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31804,8 +32877,8 @@ YYLTYPE yylloc; ;} break; - case 349: -#line 2813 "gram.y" + case 356: +#line 2859 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); TypeName *def = makeTypeNameFromNameList((yyvsp[(2) - (2)].list)); @@ -31817,8 +32890,8 @@ YYLTYPE yylloc; ;} break; - case 350: -#line 2824 "gram.y" + case 357: +#line 2870 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31827,8 +32900,8 @@ YYLTYPE yylloc; ;} break; - case 351: -#line 2832 "gram.y" + case 358: +#line 2878 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31838,8 +32911,8 @@ YYLTYPE yylloc; ;} break; - case 352: -#line 2841 "gram.y" + case 359: +#line 2887 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31849,8 +32922,8 @@ YYLTYPE yylloc; ;} break; - case 353: -#line 2850 "gram.y" + case 360: +#line 2896 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31860,8 +32933,8 @@ YYLTYPE yylloc; ;} break; - case 354: -#line 2859 "gram.y" + case 361: +#line 2905 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31871,8 +32944,8 @@ YYLTYPE yylloc; ;} break; - case 355: -#line 2868 "gram.y" + case 362: +#line 2914 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31882,8 +32955,8 @@ YYLTYPE yylloc; ;} break; - case 356: -#line 2877 "gram.y" + case 363: +#line 2923 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31893,8 +32966,8 @@ YYLTYPE yylloc; ;} break; - case 357: -#line 2886 "gram.y" + case 364: +#line 2932 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31903,8 +32976,8 @@ YYLTYPE yylloc; ;} break; - case 358: -#line 2894 "gram.y" + case 365: +#line 2940 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31913,8 +32986,8 @@ YYLTYPE yylloc; ;} break; - case 359: -#line 2902 "gram.y" + case 366: +#line 2948 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31923,8 +32996,8 @@ YYLTYPE yylloc; ;} break; - case 360: -#line 2910 "gram.y" + case 367: +#line 2956 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31933,8 +33006,8 @@ YYLTYPE yylloc; ;} break; - case 361: -#line 2917 "gram.y" + case 368: +#line 2963 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -31944,33 +33017,18 @@ YYLTYPE yylloc; ;} break; - case 362: -#line 2927 "gram.y" + case 369: +#line 2973 "gram.y" { (yyval.node) = (yyvsp[(3) - (3)].node); ;} break; - case 363: -#line 2928 "gram.y" + case 370: +#line 2974 "gram.y" { (yyval.node) = NULL; ;} break; - case 364: -#line 2932 "gram.y" - { (yyval.dbehavior) = DROP_CASCADE; ;} - break; - - case 365: -#line 2933 "gram.y" - { (yyval.dbehavior) = DROP_RESTRICT; ;} - break; - - case 366: -#line 2934 "gram.y" - { (yyval.dbehavior) = DROP_RESTRICT; /* default */ ;} - break; - - case 367: -#line 2939 "gram.y" + case 371: +#line 2979 "gram.y" { CollateClause *n = makeNode(CollateClause); @@ -31981,23 +33039,23 @@ YYLTYPE yylloc; ;} break; - case 368: -#line 2947 "gram.y" + case 372: +#line 2987 "gram.y" { (yyval.node) = NULL; ;} break; - case 369: -#line 2951 "gram.y" + case 373: +#line 2991 "gram.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 370: -#line 2952 "gram.y" + case 374: +#line 2992 "gram.y" { (yyval.node) = NULL; ;} break; - case 371: -#line 2957 "gram.y" + case 375: +#line 2997 "gram.y" { ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt); @@ -32007,8 +33065,8 @@ YYLTYPE yylloc; ;} break; - case 372: -#line 2965 "gram.y" + case 376: +#line 3005 "gram.y" { ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt); @@ -32018,8 +33076,8 @@ YYLTYPE yylloc; ;} break; - case 373: -#line 2973 "gram.y" + case 377: +#line 3013 "gram.y" { ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt); @@ -32029,8 +33087,8 @@ YYLTYPE yylloc; ;} break; - case 374: -#line 2981 "gram.y" + case 378: +#line 3021 "gram.y" { ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt); @@ -32040,86 +33098,86 @@ YYLTYPE yylloc; ;} break; - case 375: -#line 2991 "gram.y" + case 379: +#line 3031 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 376: -#line 2994 "gram.y" + case 380: +#line 3034 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 377: -#line 2995 "gram.y" + case 381: +#line 3035 "gram.y" { (yyval.list) = NIL; ;} break; - case 378: -#line 2999 "gram.y" + case 382: +#line 3039 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 379: -#line 3000 "gram.y" + case 383: +#line 3040 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 380: -#line 3006 "gram.y" + case 384: +#line 3046 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *) (yyvsp[(3) - (3)].node), (yylsp[(1) - (3)])); ;} break; - case 381: -#line 3010 "gram.y" + case 385: +#line 3050 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (1)].str), NULL, (yylsp[(1) - (1)])); ;} break; - case 382: -#line 3014 "gram.y" + case 386: +#line 3054 "gram.y" { (yyval.defelt) = makeDefElemExtended((yyvsp[(1) - (5)].str), (yyvsp[(3) - (5)].str), (Node *) (yyvsp[(5) - (5)].node), DEFELEM_UNSPEC, (yylsp[(1) - (5)])); ;} break; - case 383: -#line 3019 "gram.y" + case 387: +#line 3059 "gram.y" { (yyval.defelt) = makeDefElemExtended((yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].str), NULL, DEFELEM_UNSPEC, (yylsp[(1) - (3)])); ;} break; - case 384: -#line 3026 "gram.y" + case 388: +#line 3066 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 385: -#line 3028 "gram.y" + case 389: +#line 3068 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 386: -#line 3033 "gram.y" + case 390: +#line 3073 "gram.y" { (yyval.defelt) = makeDefElem("restart", NULL, (yylsp[(1) - (1)])); ;} break; - case 387: -#line 3037 "gram.y" + case 391: +#line 3077 "gram.y" { (yyval.defelt) = makeDefElem("restart", (Node *) (yyvsp[(3) - (3)].node), (yylsp[(1) - (3)])); ;} break; - case 388: -#line 3041 "gram.y" + case 392: +#line 3081 "gram.y" { if (strcmp((yyvsp[(2) - (2)].defelt)->defname, "as") == 0 || strcmp((yyvsp[(2) - (2)].defelt)->defname, "restart") == 0 || @@ -32132,15 +33190,15 @@ YYLTYPE yylloc; ;} break; - case 389: -#line 3052 "gram.y" + case 393: +#line 3092 "gram.y" { (yyval.defelt) = makeDefElem("generated", (Node *) makeInteger((yyvsp[(3) - (3)].ival)), (yylsp[(1) - (3)])); ;} break; - case 390: -#line 3060 "gram.y" + case 394: +#line 3100 "gram.y" { ListCell *lc; PartitionBoundSpec *n = makeNode(PartitionBoundSpec); @@ -32193,8 +33251,8 @@ YYLTYPE yylloc; ;} break; - case 391: -#line 3113 "gram.y" + case 395: +#line 3153 "gram.y" { PartitionBoundSpec *n = makeNode(PartitionBoundSpec); @@ -32207,8 +33265,8 @@ YYLTYPE yylloc; ;} break; - case 392: -#line 3126 "gram.y" + case 396: +#line 3166 "gram.y" { PartitionBoundSpec *n = makeNode(PartitionBoundSpec); @@ -32222,8 +33280,8 @@ YYLTYPE yylloc; ;} break; - case 393: -#line 3140 "gram.y" + case 397: +#line 3180 "gram.y" { PartitionBoundSpec *n = makeNode(PartitionBoundSpec); @@ -32234,29 +33292,29 @@ YYLTYPE yylloc; ;} break; - case 394: -#line 3152 "gram.y" + case 398: +#line 3192 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (2)].str), (Node *) makeInteger((yyvsp[(2) - (2)].ival)), (yylsp[(1) - (2)])); ;} break; - case 395: -#line 3159 "gram.y" + case 399: +#line 3199 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 396: -#line 3163 "gram.y" + case 400: +#line 3203 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 397: -#line 3177 "gram.y" + case 401: +#line 3217 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); @@ -32268,18 +33326,18 @@ YYLTYPE yylloc; ;} break; - case 398: -#line 3189 "gram.y" + case 402: +#line 3229 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 399: -#line 3190 "gram.y" + case 403: +#line 3230 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 400: -#line 3196 "gram.y" + case 404: +#line 3236 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -32290,8 +33348,8 @@ YYLTYPE yylloc; ;} break; - case 401: -#line 3206 "gram.y" + case 405: +#line 3246 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -32303,8 +33361,8 @@ YYLTYPE yylloc; ;} break; - case 402: -#line 3217 "gram.y" + case 406: +#line 3257 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); @@ -32316,8 +33374,8 @@ YYLTYPE yylloc; ;} break; - case 403: -#line 3228 "gram.y" + case 407: +#line 3268 "gram.y" { AlterTableCmd *n = makeNode(AlterTableCmd); ColumnDef *def = makeNode(ColumnDef); @@ -32335,8 +33393,8 @@ YYLTYPE yylloc; ;} break; - case 404: -#line 3255 "gram.y" + case 408: +#line 3295 "gram.y" { ClosePortalStmt *n = makeNode(ClosePortalStmt); @@ -32345,8 +33403,8 @@ YYLTYPE yylloc; ;} break; - case 405: -#line 3262 "gram.y" + case 409: +#line 3302 "gram.y" { ClosePortalStmt *n = makeNode(ClosePortalStmt); @@ -32355,8 +33413,8 @@ YYLTYPE yylloc; ;} break; - case 406: -#line 3298 "gram.y" + case 410: +#line 3338 "gram.y" { CopyStmt *n = makeNode(CopyStmt); @@ -32392,8 +33450,8 @@ YYLTYPE yylloc; ;} break; - case 407: -#line 3332 "gram.y" + case 411: +#line 3372 "gram.y" { CopyStmt *n = makeNode(CopyStmt); @@ -32415,243 +33473,243 @@ YYLTYPE yylloc; ;} break; - case 408: -#line 3354 "gram.y" + case 412: +#line 3394 "gram.y" { (yyval.boolean) = true; ;} break; - case 409: -#line 3355 "gram.y" + case 413: +#line 3395 "gram.y" { (yyval.boolean) = false; ;} break; - case 410: -#line 3359 "gram.y" + case 414: +#line 3399 "gram.y" { (yyval.boolean) = true; ;} break; - case 411: -#line 3360 "gram.y" + case 415: +#line 3400 "gram.y" { (yyval.boolean) = false; ;} break; - case 412: -#line 3369 "gram.y" + case 416: +#line 3409 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 413: -#line 3370 "gram.y" + case 417: +#line 3410 "gram.y" { (yyval.str) = NULL; ;} break; - case 414: -#line 3371 "gram.y" + case 418: +#line 3411 "gram.y" { (yyval.str) = NULL; ;} break; - case 415: -#line 3374 "gram.y" + case 419: +#line 3414 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 416: -#line 3375 "gram.y" + case 420: +#line 3415 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 417: -#line 3380 "gram.y" + case 421: +#line 3420 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 418: -#line 3381 "gram.y" + case 422: +#line 3421 "gram.y" { (yyval.list) = NIL; ;} break; - case 419: -#line 3386 "gram.y" + case 423: +#line 3426 "gram.y" { (yyval.defelt) = makeDefElem("format", (Node *) makeString("binary"), (yylsp[(1) - (1)])); ;} break; - case 420: -#line 3390 "gram.y" + case 424: +#line 3430 "gram.y" { (yyval.defelt) = makeDefElem("freeze", (Node *) makeBoolean(true), (yylsp[(1) - (1)])); ;} break; - case 421: -#line 3394 "gram.y" + case 425: +#line 3434 "gram.y" { (yyval.defelt) = makeDefElem("delimiter", (Node *) makeString((yyvsp[(3) - (3)].str)), (yylsp[(1) - (3)])); ;} break; - case 422: -#line 3398 "gram.y" + case 426: +#line 3438 "gram.y" { (yyval.defelt) = makeDefElem("null", (Node *) makeString((yyvsp[(3) - (3)].str)), (yylsp[(1) - (3)])); ;} break; - case 423: -#line 3402 "gram.y" + case 427: +#line 3442 "gram.y" { (yyval.defelt) = makeDefElem("format", (Node *) makeString("csv"), (yylsp[(1) - (1)])); ;} break; - case 424: -#line 3406 "gram.y" + case 428: +#line 3446 "gram.y" { (yyval.defelt) = makeDefElem("header", (Node *) makeBoolean(true), (yylsp[(1) - (1)])); ;} break; - case 425: -#line 3410 "gram.y" + case 429: +#line 3450 "gram.y" { (yyval.defelt) = makeDefElem("quote", (Node *) makeString((yyvsp[(3) - (3)].str)), (yylsp[(1) - (3)])); ;} break; - case 426: -#line 3414 "gram.y" + case 430: +#line 3454 "gram.y" { (yyval.defelt) = makeDefElem("escape", (Node *) makeString((yyvsp[(3) - (3)].str)), (yylsp[(1) - (3)])); ;} break; - case 427: -#line 3418 "gram.y" + case 431: +#line 3458 "gram.y" { (yyval.defelt) = makeDefElem("force_quote", (Node *) (yyvsp[(3) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 428: -#line 3422 "gram.y" + case 432: +#line 3462 "gram.y" { (yyval.defelt) = makeDefElem("force_quote", (Node *) makeNode(A_Star), (yylsp[(1) - (3)])); ;} break; - case 429: -#line 3426 "gram.y" + case 433: +#line 3466 "gram.y" { (yyval.defelt) = makeDefElem("force_not_null", (Node *) (yyvsp[(4) - (4)].list), (yylsp[(1) - (4)])); ;} break; - case 430: -#line 3430 "gram.y" + case 434: +#line 3470 "gram.y" { (yyval.defelt) = makeDefElem("force_null", (Node *) (yyvsp[(3) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 431: -#line 3434 "gram.y" + case 435: +#line 3474 "gram.y" { (yyval.defelt) = makeDefElem("encoding", (Node *) makeString((yyvsp[(2) - (2)].str)), (yylsp[(1) - (2)])); ;} break; - case 432: -#line 3443 "gram.y" + case 436: +#line 3483 "gram.y" { (yyval.defelt) = makeDefElem("format", (Node *) makeString("binary"), (yylsp[(1) - (1)])); ;} break; - case 433: -#line 3446 "gram.y" + case 437: +#line 3486 "gram.y" { (yyval.defelt) = NULL; ;} break; - case 434: -#line 3451 "gram.y" + case 438: +#line 3491 "gram.y" { (yyval.defelt) = makeDefElem("delimiter", (Node *) makeString((yyvsp[(3) - (3)].str)), (yylsp[(2) - (3)])); ;} break; - case 435: -#line 3454 "gram.y" + case 439: +#line 3494 "gram.y" { (yyval.defelt) = NULL; ;} break; - case 438: -#line 3465 "gram.y" + case 442: +#line 3505 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 439: -#line 3469 "gram.y" + case 443: +#line 3509 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 440: -#line 3476 "gram.y" + case 444: +#line 3516 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 441: -#line 3482 "gram.y" + case 445: +#line 3522 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 442: -#line 3483 "gram.y" + case 446: +#line 3523 "gram.y" { (yyval.node) = (Node *) (yyvsp[(1) - (1)].node); ;} break; - case 443: -#line 3484 "gram.y" + case 447: +#line 3524 "gram.y" { (yyval.node) = (Node *) makeNode(A_Star); ;} break; - case 444: -#line 3485 "gram.y" + case 448: +#line 3525 "gram.y" { (yyval.node) = (Node *) (yyvsp[(2) - (3)].list); ;} break; - case 445: -#line 3486 "gram.y" + case 449: +#line 3526 "gram.y" { (yyval.node) = NULL; ;} break; - case 446: -#line 3491 "gram.y" + case 450: +#line 3531 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 447: -#line 3495 "gram.y" + case 451: +#line 3535 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 448: -#line 3502 "gram.y" + case 452: +#line 3542 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 449: -#line 3516 "gram.y" + case 453: +#line 3556 "gram.y" { CreateStmt *n = makeNode(CreateStmt); @@ -32671,8 +33729,8 @@ YYLTYPE yylloc; ;} break; - case 450: -#line 3536 "gram.y" + case 454: +#line 3576 "gram.y" { CreateStmt *n = makeNode(CreateStmt); @@ -32692,8 +33750,8 @@ YYLTYPE yylloc; ;} break; - case 451: -#line 3556 "gram.y" + case 455: +#line 3596 "gram.y" { CreateStmt *n = makeNode(CreateStmt); @@ -32714,8 +33772,8 @@ YYLTYPE yylloc; ;} break; - case 452: -#line 3577 "gram.y" + case 456: +#line 3617 "gram.y" { CreateStmt *n = makeNode(CreateStmt); @@ -32736,8 +33794,8 @@ YYLTYPE yylloc; ;} break; - case 453: -#line 3598 "gram.y" + case 457: +#line 3638 "gram.y" { CreateStmt *n = makeNode(CreateStmt); @@ -32758,8 +33816,8 @@ YYLTYPE yylloc; ;} break; - case 454: -#line 3619 "gram.y" + case 458: +#line 3659 "gram.y" { CreateStmt *n = makeNode(CreateStmt); @@ -32780,28 +33838,28 @@ YYLTYPE yylloc; ;} break; - case 455: -#line 3650 "gram.y" + case 459: +#line 3690 "gram.y" { (yyval.ival) = RELPERSISTENCE_TEMP; ;} break; - case 456: -#line 3651 "gram.y" + case 460: +#line 3691 "gram.y" { (yyval.ival) = RELPERSISTENCE_TEMP; ;} break; - case 457: -#line 3652 "gram.y" + case 461: +#line 3692 "gram.y" { (yyval.ival) = RELPERSISTENCE_TEMP; ;} break; - case 458: -#line 3653 "gram.y" + case 462: +#line 3693 "gram.y" { (yyval.ival) = RELPERSISTENCE_TEMP; ;} break; - case 459: -#line 3655 "gram.y" + case 463: +#line 3695 "gram.y" { ereport(WARNING, (errmsg("GLOBAL is deprecated in temporary table creation"), @@ -32810,8 +33868,8 @@ YYLTYPE yylloc; ;} break; - case 460: -#line 3662 "gram.y" + case 464: +#line 3702 "gram.y" { ereport(WARNING, (errmsg("GLOBAL is deprecated in temporary table creation"), @@ -32820,97 +33878,98 @@ YYLTYPE yylloc; ;} break; - case 461: -#line 3668 "gram.y" + case 465: +#line 3708 "gram.y" { (yyval.ival) = RELPERSISTENCE_UNLOGGED; ;} break; - case 462: -#line 3669 "gram.y" + case 466: +#line 3709 "gram.y" { (yyval.ival) = RELPERSISTENCE_PERMANENT; ;} break; - case 463: -#line 3673 "gram.y" + case 467: +#line 3713 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 464: -#line 3674 "gram.y" + case 468: +#line 3714 "gram.y" { (yyval.list) = NIL; ;} break; - case 465: -#line 3678 "gram.y" + case 469: +#line 3718 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 466: -#line 3679 "gram.y" + case 470: +#line 3719 "gram.y" { (yyval.list) = NIL; ;} break; - case 467: -#line 3684 "gram.y" + case 471: +#line 3724 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 468: -#line 3688 "gram.y" + case 472: +#line 3728 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 469: -#line 3695 "gram.y" + case 473: +#line 3735 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 470: -#line 3699 "gram.y" + case 474: +#line 3739 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 471: -#line 3705 "gram.y" + case 475: +#line 3745 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 472: -#line 3706 "gram.y" + case 476: +#line 3746 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 473: -#line 3707 "gram.y" + case 477: +#line 3747 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 474: -#line 3711 "gram.y" + case 478: +#line 3751 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 475: -#line 3712 "gram.y" + case 479: +#line 3752 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 476: -#line 3716 "gram.y" + case 480: +#line 3756 "gram.y" { ColumnDef *n = makeNode(ColumnDef); - n->colname = (yyvsp[(1) - (5)].str); - n->typeName = (yyvsp[(2) - (5)].typnam); - n->compression = (yyvsp[(3) - (5)].str); + n->colname = (yyvsp[(1) - (6)].str); + n->typeName = (yyvsp[(2) - (6)].typnam); + n->storage_name = (yyvsp[(3) - (6)].str); + n->compression = (yyvsp[(4) - (6)].str); n->inhcount = 0; n->is_local = true; n->is_not_null = false; @@ -32919,16 +33978,16 @@ YYLTYPE yylloc; n->raw_default = NULL; n->cooked_default = NULL; n->collOid = InvalidOid; - n->fdwoptions = (yyvsp[(4) - (5)].list); - SplitColQualList((yyvsp[(5) - (5)].list), &n->constraints, &n->collClause, + n->fdwoptions = (yyvsp[(5) - (6)].list); + SplitColQualList((yyvsp[(6) - (6)].list), &n->constraints, &n->collClause, yyscanner); - n->location = (yylsp[(1) - (5)]); + n->location = (yylsp[(1) - (6)]); (yyval.node) = (Node *) n; ;} break; - case 477: -#line 3739 "gram.y" + case 481: +#line 3780 "gram.y" { ColumnDef *n = makeNode(ColumnDef); @@ -32949,8 +34008,8 @@ YYLTYPE yylloc; ;} break; - case 478: -#line 3758 "gram.y" + case 482: +#line 3799 "gram.y" { ColumnDef *n = makeNode(ColumnDef); @@ -32971,38 +34030,58 @@ YYLTYPE yylloc; ;} break; - case 479: -#line 3779 "gram.y" + case 483: +#line 3820 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 480: -#line 3780 "gram.y" + case 484: +#line 3821 "gram.y" { (yyval.str) = pstrdup("default"); ;} break; - case 481: -#line 3784 "gram.y" + case 485: +#line 3825 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 482: -#line 3785 "gram.y" + case 486: +#line 3826 "gram.y" { (yyval.str) = NULL; ;} break; - case 483: -#line 3789 "gram.y" + case 487: +#line 3830 "gram.y" + { (yyval.str) = (yyvsp[(2) - (2)].str); ;} + break; + + case 488: +#line 3831 "gram.y" + { (yyval.str) = pstrdup("default"); ;} + break; + + case 489: +#line 3835 "gram.y" + { (yyval.str) = (yyvsp[(1) - (1)].str); ;} + break; + + case 490: +#line 3836 "gram.y" + { (yyval.str) = NULL; ;} + break; + + case 491: +#line 3840 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} break; - case 484: -#line 3790 "gram.y" + case 492: +#line 3841 "gram.y" { (yyval.list) = NIL; ;} break; - case 485: -#line 3795 "gram.y" + case 493: +#line 3846 "gram.y" { Constraint *n = castNode(Constraint, (yyvsp[(3) - (3)].node)); @@ -33012,18 +34091,18 @@ YYLTYPE yylloc; ;} break; - case 486: -#line 3802 "gram.y" + case 494: +#line 3853 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 487: -#line 3803 "gram.y" + case 495: +#line 3854 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 488: -#line 3805 "gram.y" + case 496: +#line 3856 "gram.y" { /* * Note: the CollateClause is momentarily included in @@ -33039,8 +34118,8 @@ YYLTYPE yylloc; ;} break; - case 489: -#line 3837 "gram.y" + case 497: +#line 3888 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33050,8 +34129,8 @@ YYLTYPE yylloc; ;} break; - case 490: -#line 3845 "gram.y" + case 498: +#line 3896 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33061,8 +34140,8 @@ YYLTYPE yylloc; ;} break; - case 491: -#line 3853 "gram.y" + case 499: +#line 3904 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33077,8 +34156,8 @@ YYLTYPE yylloc; ;} break; - case 492: -#line 3866 "gram.y" + case 500: +#line 3917 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33092,8 +34171,8 @@ YYLTYPE yylloc; ;} break; - case 493: -#line 3878 "gram.y" + case 501: +#line 3929 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33108,8 +34187,8 @@ YYLTYPE yylloc; ;} break; - case 494: -#line 3891 "gram.y" + case 502: +#line 3942 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33121,8 +34200,8 @@ YYLTYPE yylloc; ;} break; - case 495: -#line 3901 "gram.y" + case 503: +#line 3952 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33134,8 +34213,8 @@ YYLTYPE yylloc; ;} break; - case 496: -#line 3911 "gram.y" + case 504: +#line 3962 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33161,8 +34240,8 @@ YYLTYPE yylloc; ;} break; - case 497: -#line 3935 "gram.y" + case 505: +#line 3986 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33181,33 +34260,33 @@ YYLTYPE yylloc; ;} break; - case 498: -#line 3954 "gram.y" + case 506: +#line 4005 "gram.y" { (yyval.boolean) = true; ;} break; - case 499: -#line 3955 "gram.y" + case 507: +#line 4006 "gram.y" { (yyval.boolean) = false; ;} break; - case 500: -#line 3956 "gram.y" + case 508: +#line 4007 "gram.y" { (yyval.boolean) = true; ;} break; - case 501: -#line 3960 "gram.y" + case 509: +#line 4011 "gram.y" { (yyval.ival) = ATTRIBUTE_IDENTITY_ALWAYS; ;} break; - case 502: -#line 3961 "gram.y" + case 510: +#line 4012 "gram.y" { (yyval.ival) = ATTRIBUTE_IDENTITY_BY_DEFAULT; ;} break; - case 503: -#line 3981 "gram.y" + case 511: +#line 4032 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33217,8 +34296,8 @@ YYLTYPE yylloc; ;} break; - case 504: -#line 3989 "gram.y" + case 512: +#line 4040 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33228,8 +34307,8 @@ YYLTYPE yylloc; ;} break; - case 505: -#line 3997 "gram.y" + case 513: +#line 4048 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33239,8 +34318,8 @@ YYLTYPE yylloc; ;} break; - case 506: -#line 4005 "gram.y" + case 514: +#line 4056 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33250,8 +34329,8 @@ YYLTYPE yylloc; ;} break; - case 507: -#line 4017 "gram.y" + case 515: +#line 4068 "gram.y" { TableLikeClause *n = makeNode(TableLikeClause); @@ -33262,73 +34341,73 @@ YYLTYPE yylloc; ;} break; - case 508: -#line 4028 "gram.y" + case 516: +#line 4079 "gram.y" { (yyval.ival) = (yyvsp[(1) - (3)].ival) | (yyvsp[(3) - (3)].ival); ;} break; - case 509: -#line 4029 "gram.y" + case 517: +#line 4080 "gram.y" { (yyval.ival) = (yyvsp[(1) - (3)].ival) & ~(yyvsp[(3) - (3)].ival); ;} break; - case 510: -#line 4030 "gram.y" + case 518: +#line 4081 "gram.y" { (yyval.ival) = 0; ;} break; - case 511: -#line 4034 "gram.y" + case 519: +#line 4085 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_COMMENTS; ;} break; - case 512: -#line 4035 "gram.y" + case 520: +#line 4086 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_COMPRESSION; ;} break; - case 513: -#line 4036 "gram.y" + case 521: +#line 4087 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_CONSTRAINTS; ;} break; - case 514: -#line 4037 "gram.y" + case 522: +#line 4088 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_DEFAULTS; ;} break; - case 515: -#line 4038 "gram.y" + case 523: +#line 4089 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_IDENTITY; ;} break; - case 516: -#line 4039 "gram.y" + case 524: +#line 4090 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_GENERATED; ;} break; - case 517: -#line 4040 "gram.y" + case 525: +#line 4091 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_INDEXES; ;} break; - case 518: -#line 4041 "gram.y" + case 526: +#line 4092 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_STATISTICS; ;} break; - case 519: -#line 4042 "gram.y" + case 527: +#line 4093 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_STORAGE; ;} break; - case 520: -#line 4043 "gram.y" + case 528: +#line 4094 "gram.y" { (yyval.ival) = CREATE_TABLE_LIKE_ALL; ;} break; - case 521: -#line 4053 "gram.y" + case 529: +#line 4104 "gram.y" { Constraint *n = castNode(Constraint, (yyvsp[(3) - (3)].node)); @@ -33338,13 +34417,13 @@ YYLTYPE yylloc; ;} break; - case 522: -#line 4060 "gram.y" + case 530: +#line 4111 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 523: -#line 4065 "gram.y" + case 531: +#line 4116 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33360,8 +34439,8 @@ YYLTYPE yylloc; ;} break; - case 524: -#line 4080 "gram.y" + case 532: +#line 4131 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33380,8 +34459,8 @@ YYLTYPE yylloc; ;} break; - case 525: -#line 4097 "gram.y" + case 533: +#line 4148 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33399,8 +34478,8 @@ YYLTYPE yylloc; ;} break; - case 526: -#line 4114 "gram.y" + case 534: +#line 4165 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33418,8 +34497,8 @@ YYLTYPE yylloc; ;} break; - case 527: -#line 4130 "gram.y" + case 535: +#line 4181 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33437,8 +34516,8 @@ YYLTYPE yylloc; ;} break; - case 528: -#line 4148 "gram.y" + case 536: +#line 4199 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33458,8 +34537,8 @@ YYLTYPE yylloc; ;} break; - case 529: -#line 4167 "gram.y" + case 537: +#line 4218 "gram.y" { Constraint *n = makeNode(Constraint); @@ -33481,62 +34560,62 @@ YYLTYPE yylloc; ;} break; - case 530: -#line 4188 "gram.y" + case 538: +#line 4239 "gram.y" { (yyval.boolean) = true; ;} break; - case 531: -#line 4189 "gram.y" + case 539: +#line 4240 "gram.y" { (yyval.boolean) = false; ;} break; - case 532: -#line 4193 "gram.y" + case 540: +#line 4244 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 533: -#line 4194 "gram.y" + case 541: +#line 4245 "gram.y" { (yyval.list) = NIL; ;} break; - case 534: -#line 4198 "gram.y" + case 542: +#line 4249 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 535: -#line 4199 "gram.y" + case 543: +#line 4250 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 536: -#line 4203 "gram.y" + case 544: +#line 4254 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 537: -#line 4208 "gram.y" + case 545: +#line 4259 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 538: -#line 4209 "gram.y" + case 546: +#line 4260 "gram.y" { (yyval.list) = NIL; ;} break; - case 539: -#line 4213 "gram.y" + case 547: +#line 4264 "gram.y" { (yyval.ival) = FKCONSTR_MATCH_FULL; ;} break; - case 540: -#line 4217 "gram.y" + case 548: +#line 4268 "gram.y" { ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), @@ -33546,56 +34625,56 @@ YYLTYPE yylloc; ;} break; - case 541: -#line 4225 "gram.y" + case 549: +#line 4276 "gram.y" { (yyval.ival) = FKCONSTR_MATCH_SIMPLE; ;} break; - case 542: -#line 4229 "gram.y" + case 550: +#line 4280 "gram.y" { (yyval.ival) = FKCONSTR_MATCH_SIMPLE; ;} break; - case 543: -#line 4235 "gram.y" + case 551: +#line 4286 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); ;} break; - case 544: -#line 4237 "gram.y" + case 552: +#line 4288 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); ;} break; - case 545: -#line 4241 "gram.y" + case 553: +#line 4292 "gram.y" { (yyval.list) = list_make2((yyvsp[(1) - (3)].ielem), (yyvsp[(3) - (3)].list)); ;} break; - case 546: -#line 4246 "gram.y" + case 554: +#line 4297 "gram.y" { (yyval.list) = list_make2((yyvsp[(1) - (6)].ielem), (yyvsp[(5) - (6)].list)); ;} break; - case 547: -#line 4252 "gram.y" + case 555: +#line 4303 "gram.y" { (yyval.node) = (yyvsp[(3) - (4)].node); ;} break; - case 548: -#line 4253 "gram.y" + case 556: +#line 4304 "gram.y" { (yyval.node) = NULL; ;} break; - case 549: -#line 4258 "gram.y" + case 557: +#line 4309 "gram.y" { KeyActions *n = palloc(sizeof(KeyActions)); @@ -33607,8 +34686,8 @@ YYLTYPE yylloc; ;} break; - case 550: -#line 4268 "gram.y" + case 558: +#line 4319 "gram.y" { KeyActions *n = palloc(sizeof(KeyActions)); @@ -33620,8 +34699,8 @@ YYLTYPE yylloc; ;} break; - case 551: -#line 4278 "gram.y" + case 559: +#line 4329 "gram.y" { KeyActions *n = palloc(sizeof(KeyActions)); @@ -33631,8 +34710,8 @@ YYLTYPE yylloc; ;} break; - case 552: -#line 4286 "gram.y" + case 560: +#line 4337 "gram.y" { KeyActions *n = palloc(sizeof(KeyActions)); @@ -33642,8 +34721,8 @@ YYLTYPE yylloc; ;} break; - case 553: -#line 4294 "gram.y" + case 561: +#line 4345 "gram.y" { KeyActions *n = palloc(sizeof(KeyActions)); @@ -33657,8 +34736,8 @@ YYLTYPE yylloc; ;} break; - case 554: -#line 4308 "gram.y" + case 562: +#line 4359 "gram.y" { if (((yyvsp[(3) - (3)].keyaction))->cols) ereport(ERROR, @@ -33670,15 +34749,15 @@ YYLTYPE yylloc; ;} break; - case 555: -#line 4320 "gram.y" + case 563: +#line 4371 "gram.y" { (yyval.keyaction) = (yyvsp[(3) - (3)].keyaction); ;} break; - case 556: -#line 4327 "gram.y" + case 564: +#line 4378 "gram.y" { KeyAction *n = palloc(sizeof(KeyAction)); @@ -33688,8 +34767,8 @@ YYLTYPE yylloc; ;} break; - case 557: -#line 4335 "gram.y" + case 565: +#line 4386 "gram.y" { KeyAction *n = palloc(sizeof(KeyAction)); @@ -33699,8 +34778,8 @@ YYLTYPE yylloc; ;} break; - case 558: -#line 4343 "gram.y" + case 566: +#line 4394 "gram.y" { KeyAction *n = palloc(sizeof(KeyAction)); @@ -33710,8 +34789,8 @@ YYLTYPE yylloc; ;} break; - case 559: -#line 4351 "gram.y" + case 567: +#line 4402 "gram.y" { KeyAction *n = palloc(sizeof(KeyAction)); @@ -33721,8 +34800,8 @@ YYLTYPE yylloc; ;} break; - case 560: -#line 4359 "gram.y" + case 568: +#line 4410 "gram.y" { KeyAction *n = palloc(sizeof(KeyAction)); @@ -33732,32 +34811,32 @@ YYLTYPE yylloc; ;} break; - case 561: -#line 4368 "gram.y" + case 569: +#line 4419 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 562: -#line 4369 "gram.y" + case 570: +#line 4420 "gram.y" { (yyval.list) = NIL; ;} break; - case 563: -#line 4373 "gram.y" + case 571: +#line 4424 "gram.y" { (yyval.partspec) = (yyvsp[(1) - (1)].partspec); ;} break; - case 564: -#line 4374 "gram.y" + case 572: +#line 4425 "gram.y" { (yyval.partspec) = NULL; ;} break; - case 565: -#line 4378 "gram.y" + case 573: +#line 4429 "gram.y" { PartitionSpec *n = makeNode(PartitionSpec); - n->strategy = (yyvsp[(3) - (6)].str); + n->strategy = parsePartitionStrategy((yyvsp[(3) - (6)].str)); n->partParams = (yyvsp[(5) - (6)].list); n->location = (yylsp[(1) - (6)]); @@ -33765,18 +34844,18 @@ YYLTYPE yylloc; ;} break; - case 566: -#line 4389 "gram.y" + case 574: +#line 4440 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].partelem)); ;} break; - case 567: -#line 4390 "gram.y" + case 575: +#line 4441 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].partelem)); ;} break; - case 568: -#line 4394 "gram.y" + case 576: +#line 4445 "gram.y" { PartitionElem *n = makeNode(PartitionElem); @@ -33789,8 +34868,8 @@ YYLTYPE yylloc; ;} break; - case 569: -#line 4405 "gram.y" + case 577: +#line 4456 "gram.y" { PartitionElem *n = makeNode(PartitionElem); @@ -33803,8 +34882,8 @@ YYLTYPE yylloc; ;} break; - case 570: -#line 4416 "gram.y" + case 578: +#line 4467 "gram.y" { PartitionElem *n = makeNode(PartitionElem); @@ -33817,78 +34896,78 @@ YYLTYPE yylloc; ;} break; - case 571: -#line 4429 "gram.y" + case 579: +#line 4480 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 572: -#line 4430 "gram.y" + case 580: +#line 4481 "gram.y" { (yyval.str) = NULL; ;} break; - case 573: -#line 4435 "gram.y" + case 581: +#line 4486 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 574: -#line 4436 "gram.y" + case 582: +#line 4487 "gram.y" { (yyval.list) = NIL; ;} break; - case 575: -#line 4437 "gram.y" + case 583: +#line 4488 "gram.y" { (yyval.list) = NIL; ;} break; - case 576: -#line 4440 "gram.y" + case 584: +#line 4491 "gram.y" { (yyval.oncommit) = ONCOMMIT_DROP; ;} break; - case 577: -#line 4441 "gram.y" + case 585: +#line 4492 "gram.y" { (yyval.oncommit) = ONCOMMIT_DELETE_ROWS; ;} break; - case 578: -#line 4442 "gram.y" + case 586: +#line 4493 "gram.y" { (yyval.oncommit) = ONCOMMIT_PRESERVE_ROWS; ;} break; - case 579: -#line 4443 "gram.y" + case 587: +#line 4494 "gram.y" { (yyval.oncommit) = ONCOMMIT_NOOP; ;} break; - case 580: -#line 4446 "gram.y" + case 588: +#line 4497 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 581: -#line 4447 "gram.y" + case 589: +#line 4498 "gram.y" { (yyval.str) = NULL; ;} break; - case 582: -#line 4450 "gram.y" + case 590: +#line 4501 "gram.y" { (yyval.str) = (yyvsp[(4) - (4)].str); ;} break; - case 583: -#line 4451 "gram.y" + case 591: +#line 4502 "gram.y" { (yyval.str) = NULL; ;} break; - case 584: -#line 4454 "gram.y" + case 592: +#line 4505 "gram.y" { (yyval.str) = (yyvsp[(3) - (3)].str); ;} break; - case 585: -#line 4474 "gram.y" + case 593: +#line 4527 "gram.y" { CreateStatsStmt *n = makeNode(CreateStatsStmt); @@ -33902,8 +34981,8 @@ YYLTYPE yylloc; ;} break; - case 586: -#line 4487 "gram.y" + case 594: +#line 4540 "gram.y" { CreateStatsStmt *n = makeNode(CreateStatsStmt); @@ -33917,18 +34996,18 @@ YYLTYPE yylloc; ;} break; - case 587: -#line 4507 "gram.y" + case 595: +#line 4560 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].selem)); ;} break; - case 588: -#line 4508 "gram.y" + case 596: +#line 4561 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].selem)); ;} break; - case 589: -#line 4512 "gram.y" + case 597: +#line 4565 "gram.y" { (yyval.selem) = makeNode(StatsElem); (yyval.selem)->name = (yyvsp[(1) - (1)].str); @@ -33936,8 +35015,8 @@ YYLTYPE yylloc; ;} break; - case 590: -#line 4518 "gram.y" + case 598: +#line 4571 "gram.y" { (yyval.selem) = makeNode(StatsElem); (yyval.selem)->name = NULL; @@ -33945,8 +35024,8 @@ YYLTYPE yylloc; ;} break; - case 591: -#line 4524 "gram.y" + case 599: +#line 4577 "gram.y" { (yyval.selem) = makeNode(StatsElem); (yyval.selem)->name = NULL; @@ -33954,8 +35033,8 @@ YYLTYPE yylloc; ;} break; - case 592: -#line 4541 "gram.y" + case 600: +#line 4594 "gram.y" { AlterStatsStmt *n = makeNode(AlterStatsStmt); @@ -33966,8 +35045,8 @@ YYLTYPE yylloc; ;} break; - case 593: -#line 4550 "gram.y" + case 601: +#line 4603 "gram.y" { AlterStatsStmt *n = makeNode(AlterStatsStmt); @@ -33978,8 +35057,8 @@ YYLTYPE yylloc; ;} break; - case 594: -#line 4572 "gram.y" + case 602: +#line 4625 "gram.y" { CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt); @@ -33995,8 +35074,8 @@ YYLTYPE yylloc; ;} break; - case 595: -#line 4586 "gram.y" + case 603: +#line 4639 "gram.y" { CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt); @@ -34012,8 +35091,8 @@ YYLTYPE yylloc; ;} break; - case 596: -#line 4604 "gram.y" + case 604: +#line 4657 "gram.y" { (yyval.into) = makeNode(IntoClause); (yyval.into)->rel = (yyvsp[(1) - (6)].range); @@ -34027,23 +35106,23 @@ YYLTYPE yylloc; ;} break; - case 597: -#line 4618 "gram.y" + case 605: +#line 4671 "gram.y" { (yyval.boolean) = true; ;} break; - case 598: -#line 4619 "gram.y" + case 606: +#line 4672 "gram.y" { (yyval.boolean) = false; ;} break; - case 599: -#line 4620 "gram.y" + case 607: +#line 4673 "gram.y" { (yyval.boolean) = true; ;} break; - case 600: -#line 4633 "gram.y" + case 608: +#line 4686 "gram.y" { CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt); @@ -34059,8 +35138,8 @@ YYLTYPE yylloc; ;} break; - case 601: -#line 4647 "gram.y" + case 609: +#line 4700 "gram.y" { CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt); @@ -34076,8 +35155,8 @@ YYLTYPE yylloc; ;} break; - case 602: -#line 4664 "gram.y" + case 610: +#line 4717 "gram.y" { (yyval.into) = makeNode(IntoClause); (yyval.into)->rel = (yyvsp[(1) - (5)].range); @@ -34091,18 +35170,18 @@ YYLTYPE yylloc; ;} break; - case 603: -#line 4677 "gram.y" + case 611: +#line 4730 "gram.y" { (yyval.ival) = RELPERSISTENCE_UNLOGGED; ;} break; - case 604: -#line 4678 "gram.y" + case 612: +#line 4731 "gram.y" { (yyval.ival) = RELPERSISTENCE_PERMANENT; ;} break; - case 605: -#line 4691 "gram.y" + case 613: +#line 4744 "gram.y" { RefreshMatViewStmt *n = makeNode(RefreshMatViewStmt); @@ -34113,8 +35192,8 @@ YYLTYPE yylloc; ;} break; - case 606: -#line 4712 "gram.y" + case 614: +#line 4765 "gram.y" { CreateSeqStmt *n = makeNode(CreateSeqStmt); @@ -34127,8 +35206,8 @@ YYLTYPE yylloc; ;} break; - case 607: -#line 4723 "gram.y" + case 615: +#line 4776 "gram.y" { CreateSeqStmt *n = makeNode(CreateSeqStmt); @@ -34141,8 +35220,8 @@ YYLTYPE yylloc; ;} break; - case 608: -#line 4737 "gram.y" + case 616: +#line 4790 "gram.y" { AlterSeqStmt *n = makeNode(AlterSeqStmt); @@ -34153,8 +35232,8 @@ YYLTYPE yylloc; ;} break; - case 609: -#line 4746 "gram.y" + case 617: +#line 4799 "gram.y" { AlterSeqStmt *n = makeNode(AlterSeqStmt); @@ -34165,147 +35244,147 @@ YYLTYPE yylloc; ;} break; - case 610: -#line 4757 "gram.y" + case 618: +#line 4810 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 611: -#line 4758 "gram.y" + case 619: +#line 4811 "gram.y" { (yyval.list) = NIL; ;} break; - case 612: -#line 4761 "gram.y" + case 620: +#line 4814 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 613: -#line 4762 "gram.y" + case 621: +#line 4815 "gram.y" { (yyval.list) = NIL; ;} break; - case 614: -#line 4765 "gram.y" + case 622: +#line 4818 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 615: -#line 4766 "gram.y" + case 623: +#line 4819 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 616: -#line 4770 "gram.y" + case 624: +#line 4823 "gram.y" { (yyval.defelt) = makeDefElem("as", (Node *) (yyvsp[(2) - (2)].typnam), (yylsp[(1) - (2)])); ;} break; - case 617: -#line 4774 "gram.y" + case 625: +#line 4827 "gram.y" { (yyval.defelt) = makeDefElem("cache", (Node *) (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 618: -#line 4778 "gram.y" + case 626: +#line 4831 "gram.y" { (yyval.defelt) = makeDefElem("cycle", (Node *) makeBoolean(true), (yylsp[(1) - (1)])); ;} break; - case 619: -#line 4782 "gram.y" + case 627: +#line 4835 "gram.y" { (yyval.defelt) = makeDefElem("cycle", (Node *) makeBoolean(false), (yylsp[(1) - (2)])); ;} break; - case 620: -#line 4786 "gram.y" + case 628: +#line 4839 "gram.y" { (yyval.defelt) = makeDefElem("increment", (Node *) (yyvsp[(3) - (3)].node), (yylsp[(1) - (3)])); ;} break; - case 621: -#line 4790 "gram.y" + case 629: +#line 4843 "gram.y" { (yyval.defelt) = makeDefElem("maxvalue", (Node *) (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 622: -#line 4794 "gram.y" + case 630: +#line 4847 "gram.y" { (yyval.defelt) = makeDefElem("minvalue", (Node *) (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 623: -#line 4798 "gram.y" + case 631: +#line 4851 "gram.y" { (yyval.defelt) = makeDefElem("maxvalue", NULL, (yylsp[(1) - (2)])); ;} break; - case 624: -#line 4802 "gram.y" + case 632: +#line 4855 "gram.y" { (yyval.defelt) = makeDefElem("minvalue", NULL, (yylsp[(1) - (2)])); ;} break; - case 625: -#line 4806 "gram.y" + case 633: +#line 4859 "gram.y" { (yyval.defelt) = makeDefElem("owned_by", (Node *) (yyvsp[(3) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 626: -#line 4810 "gram.y" + case 634: +#line 4863 "gram.y" { /* not documented, only used by pg_dump */ (yyval.defelt) = makeDefElem("sequence_name", (Node *) (yyvsp[(3) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 627: -#line 4815 "gram.y" + case 635: +#line 4868 "gram.y" { (yyval.defelt) = makeDefElem("start", (Node *) (yyvsp[(3) - (3)].node), (yylsp[(1) - (3)])); ;} break; - case 628: -#line 4819 "gram.y" + case 636: +#line 4872 "gram.y" { (yyval.defelt) = makeDefElem("restart", NULL, (yylsp[(1) - (1)])); ;} break; - case 629: -#line 4823 "gram.y" + case 637: +#line 4876 "gram.y" { (yyval.defelt) = makeDefElem("restart", (Node *) (yyvsp[(3) - (3)].node), (yylsp[(1) - (3)])); ;} break; - case 632: -#line 4833 "gram.y" + case 640: +#line 4886 "gram.y" { (yyval.node) = (Node *) makeFloat((yyvsp[(1) - (1)].str)); ;} break; - case 633: -#line 4834 "gram.y" + case 641: +#line 4887 "gram.y" { (yyval.node) = (Node *) makeFloat((yyvsp[(2) - (2)].str)); ;} break; - case 634: -#line 4836 "gram.y" + case 642: +#line 4889 "gram.y" { Float *f = makeFloat((yyvsp[(2) - (2)].str)); @@ -34314,23 +35393,23 @@ YYLTYPE yylloc; ;} break; - case 635: -#line 4842 "gram.y" + case 643: +#line 4895 "gram.y" { (yyval.node) = (Node *) makeInteger((yyvsp[(1) - (1)].ival)); ;} break; - case 636: -#line 4845 "gram.y" + case 644: +#line 4898 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 637: -#line 4846 "gram.y" + case 645: +#line 4899 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 638: -#line 4859 "gram.y" + case 646: +#line 4912 "gram.y" { /* * We now interpret parameterless CREATE LANGUAGE as @@ -34348,8 +35427,8 @@ YYLTYPE yylloc; ;} break; - case 639: -#line 4876 "gram.y" + case 647: +#line 4929 "gram.y" { CreatePLangStmt *n = makeNode(CreatePLangStmt); @@ -34363,58 +35442,58 @@ YYLTYPE yylloc; ;} break; - case 640: -#line 4890 "gram.y" + case 648: +#line 4943 "gram.y" { (yyval.boolean) = true; ;} break; - case 641: -#line 4891 "gram.y" + case 649: +#line 4944 "gram.y" { (yyval.boolean) = false; ;} break; - case 642: -#line 4899 "gram.y" + case 650: +#line 4952 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 643: -#line 4900 "gram.y" + case 651: +#line 4953 "gram.y" { (yyval.list) = lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)); ;} break; - case 644: -#line 4904 "gram.y" + case 652: +#line 4957 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 645: -#line 4905 "gram.y" + case 653: +#line 4958 "gram.y" { (yyval.list) = NIL; ;} break; - case 646: -#line 4909 "gram.y" + case 654: +#line 4962 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 647: -#line 4910 "gram.y" + case 655: +#line 4963 "gram.y" { (yyval.list) = NIL; ;} break; - case 648: -#line 4914 "gram.y" + case 656: +#line 4967 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 649: -#line 4915 "gram.y" + case 657: +#line 4968 "gram.y" { (yyval.list) = NIL; ;} break; - case 652: -#line 4931 "gram.y" + case 660: +#line 4984 "gram.y" { CreateTableSpaceStmt *n = makeNode(CreateTableSpaceStmt); @@ -34426,18 +35505,18 @@ YYLTYPE yylloc; ;} break; - case 653: -#line 4942 "gram.y" + case 661: +#line 4995 "gram.y" { (yyval.rolespec) = (yyvsp[(2) - (2)].rolespec); ;} break; - case 654: -#line 4943 "gram.y" + case 662: +#line 4996 "gram.y" { (yyval.rolespec) = NULL; ;} break; - case 655: -#line 4957 "gram.y" + case 663: +#line 5010 "gram.y" { DropTableSpaceStmt *n = makeNode(DropTableSpaceStmt); @@ -34447,8 +35526,8 @@ YYLTYPE yylloc; ;} break; - case 656: -#line 4965 "gram.y" + case 664: +#line 5018 "gram.y" { DropTableSpaceStmt *n = makeNode(DropTableSpaceStmt); @@ -34458,8 +35537,8 @@ YYLTYPE yylloc; ;} break; - case 657: -#line 4983 "gram.y" + case 665: +#line 5036 "gram.y" { CreateExtensionStmt *n = makeNode(CreateExtensionStmt); @@ -34470,8 +35549,8 @@ YYLTYPE yylloc; ;} break; - case 658: -#line 4992 "gram.y" + case 666: +#line 5045 "gram.y" { CreateExtensionStmt *n = makeNode(CreateExtensionStmt); @@ -34482,32 +35561,32 @@ YYLTYPE yylloc; ;} break; - case 659: -#line 5004 "gram.y" + case 667: +#line 5057 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 660: -#line 5006 "gram.y" + case 668: +#line 5059 "gram.y" { (yyval.list) = NIL; ;} break; - case 661: -#line 5011 "gram.y" + case 669: +#line 5064 "gram.y" { (yyval.defelt) = makeDefElem("schema", (Node *) makeString((yyvsp[(2) - (2)].str)), (yylsp[(1) - (2)])); ;} break; - case 662: -#line 5015 "gram.y" + case 670: +#line 5068 "gram.y" { (yyval.defelt) = makeDefElem("new_version", (Node *) makeString((yyvsp[(2) - (2)].str)), (yylsp[(1) - (2)])); ;} break; - case 663: -#line 5019 "gram.y" + case 671: +#line 5072 "gram.y" { ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), @@ -34516,15 +35595,15 @@ YYLTYPE yylloc; ;} break; - case 664: -#line 5026 "gram.y" + case 672: +#line 5079 "gram.y" { (yyval.defelt) = makeDefElem("cascade", (Node *) makeBoolean(true), (yylsp[(1) - (1)])); ;} break; - case 665: -#line 5038 "gram.y" + case 673: +#line 5091 "gram.y" { AlterExtensionStmt *n = makeNode(AlterExtensionStmt); @@ -34534,25 +35613,25 @@ YYLTYPE yylloc; ;} break; - case 666: -#line 5049 "gram.y" + case 674: +#line 5102 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 667: -#line 5051 "gram.y" + case 675: +#line 5104 "gram.y" { (yyval.list) = NIL; ;} break; - case 668: -#line 5056 "gram.y" + case 676: +#line 5109 "gram.y" { (yyval.defelt) = makeDefElem("new_version", (Node *) makeString((yyvsp[(2) - (2)].str)), (yylsp[(1) - (2)])); ;} break; - case 669: -#line 5069 "gram.y" + case 677: +#line 5122 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34564,8 +35643,8 @@ YYLTYPE yylloc; ;} break; - case 670: -#line 5079 "gram.y" + case 678: +#line 5132 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34577,8 +35656,8 @@ YYLTYPE yylloc; ;} break; - case 671: -#line 5089 "gram.y" + case 679: +#line 5142 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34590,8 +35669,8 @@ YYLTYPE yylloc; ;} break; - case 672: -#line 5099 "gram.y" + case 680: +#line 5152 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34603,8 +35682,8 @@ YYLTYPE yylloc; ;} break; - case 673: -#line 5109 "gram.y" + case 681: +#line 5162 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34616,8 +35695,8 @@ YYLTYPE yylloc; ;} break; - case 674: -#line 5119 "gram.y" + case 682: +#line 5172 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34629,8 +35708,8 @@ YYLTYPE yylloc; ;} break; - case 675: -#line 5129 "gram.y" + case 683: +#line 5182 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34642,8 +35721,8 @@ YYLTYPE yylloc; ;} break; - case 676: -#line 5139 "gram.y" + case 684: +#line 5192 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34655,8 +35734,8 @@ YYLTYPE yylloc; ;} break; - case 677: -#line 5149 "gram.y" + case 685: +#line 5202 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34668,8 +35747,8 @@ YYLTYPE yylloc; ;} break; - case 678: -#line 5159 "gram.y" + case 686: +#line 5212 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34681,8 +35760,8 @@ YYLTYPE yylloc; ;} break; - case 679: -#line 5169 "gram.y" + case 687: +#line 5222 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34694,8 +35773,8 @@ YYLTYPE yylloc; ;} break; - case 680: -#line 5179 "gram.y" + case 688: +#line 5232 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34707,8 +35786,8 @@ YYLTYPE yylloc; ;} break; - case 681: -#line 5189 "gram.y" + case 689: +#line 5242 "gram.y" { AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt); @@ -34720,8 +35799,8 @@ YYLTYPE yylloc; ;} break; - case 682: -#line 5208 "gram.y" + case 690: +#line 5261 "gram.y" { CreateFdwStmt *n = makeNode(CreateFdwStmt); @@ -34732,48 +35811,48 @@ YYLTYPE yylloc; ;} break; - case 683: -#line 5219 "gram.y" + case 691: +#line 5272 "gram.y" { (yyval.defelt) = makeDefElem("handler", (Node *) (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)])); ;} break; - case 684: -#line 5220 "gram.y" + case 692: +#line 5273 "gram.y" { (yyval.defelt) = makeDefElem("handler", NULL, (yylsp[(1) - (2)])); ;} break; - case 685: -#line 5221 "gram.y" + case 693: +#line 5274 "gram.y" { (yyval.defelt) = makeDefElem("validator", (Node *) (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)])); ;} break; - case 686: -#line 5222 "gram.y" + case 694: +#line 5275 "gram.y" { (yyval.defelt) = makeDefElem("validator", NULL, (yylsp[(1) - (2)])); ;} break; - case 687: -#line 5226 "gram.y" + case 695: +#line 5279 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 688: -#line 5227 "gram.y" + case 696: +#line 5280 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 689: -#line 5231 "gram.y" + case 697: +#line 5284 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 690: -#line 5232 "gram.y" + case 698: +#line 5285 "gram.y" { (yyval.list) = NIL; ;} break; - case 691: -#line 5243 "gram.y" + case 699: +#line 5296 "gram.y" { AlterFdwStmt *n = makeNode(AlterFdwStmt); @@ -34784,8 +35863,8 @@ YYLTYPE yylloc; ;} break; - case 692: -#line 5252 "gram.y" + case 700: +#line 5305 "gram.y" { AlterFdwStmt *n = makeNode(AlterFdwStmt); @@ -34796,98 +35875,98 @@ YYLTYPE yylloc; ;} break; - case 693: -#line 5264 "gram.y" + case 701: +#line 5317 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 694: -#line 5265 "gram.y" + case 702: +#line 5318 "gram.y" { (yyval.list) = NIL; ;} break; - case 695: -#line 5270 "gram.y" + case 703: +#line 5323 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 696: -#line 5274 "gram.y" + case 704: +#line 5327 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 697: -#line 5281 "gram.y" + case 705: +#line 5334 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 698: -#line 5286 "gram.y" + case 706: +#line 5339 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 699: -#line 5290 "gram.y" + case 707: +#line 5343 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 700: -#line 5297 "gram.y" + case 708: +#line 5350 "gram.y" { (yyval.defelt) = (yyvsp[(1) - (1)].defelt); ;} break; - case 701: -#line 5301 "gram.y" + case 709: +#line 5354 "gram.y" { (yyval.defelt) = (yyvsp[(2) - (2)].defelt); (yyval.defelt)->defaction = DEFELEM_SET; ;} break; - case 702: -#line 5306 "gram.y" + case 710: +#line 5359 "gram.y" { (yyval.defelt) = (yyvsp[(2) - (2)].defelt); (yyval.defelt)->defaction = DEFELEM_ADD; ;} break; - case 703: -#line 5311 "gram.y" + case 711: +#line 5364 "gram.y" { (yyval.defelt) = makeDefElemExtended(NULL, (yyvsp[(2) - (2)].str), NULL, DEFELEM_DROP, (yylsp[(2) - (2)])); ;} break; - case 704: -#line 5318 "gram.y" + case 712: +#line 5371 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 705: -#line 5324 "gram.y" + case 713: +#line 5377 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 706: -#line 5329 "gram.y" + case 714: +#line 5382 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 707: -#line 5341 "gram.y" + case 715: +#line 5394 "gram.y" { CreateForeignServerStmt *n = makeNode(CreateForeignServerStmt); @@ -34901,8 +35980,8 @@ YYLTYPE yylloc; ;} break; - case 708: -#line 5354 "gram.y" + case 716: +#line 5407 "gram.y" { CreateForeignServerStmt *n = makeNode(CreateForeignServerStmt); @@ -34916,38 +35995,38 @@ YYLTYPE yylloc; ;} break; - case 709: -#line 5368 "gram.y" + case 717: +#line 5421 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 710: -#line 5369 "gram.y" + case 718: +#line 5422 "gram.y" { (yyval.str) = NULL; ;} break; - case 711: -#line 5374 "gram.y" + case 719: +#line 5427 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 712: -#line 5375 "gram.y" + case 720: +#line 5428 "gram.y" { (yyval.str) = NULL; ;} break; - case 713: -#line 5379 "gram.y" + case 721: +#line 5432 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 714: -#line 5380 "gram.y" + case 722: +#line 5433 "gram.y" { (yyval.str) = NULL; ;} break; - case 715: -#line 5391 "gram.y" + case 723: +#line 5444 "gram.y" { AlterForeignServerStmt *n = makeNode(AlterForeignServerStmt); @@ -34959,8 +36038,8 @@ YYLTYPE yylloc; ;} break; - case 716: -#line 5401 "gram.y" + case 724: +#line 5454 "gram.y" { AlterForeignServerStmt *n = makeNode(AlterForeignServerStmt); @@ -34971,8 +36050,8 @@ YYLTYPE yylloc; ;} break; - case 717: -#line 5410 "gram.y" + case 725: +#line 5463 "gram.y" { AlterForeignServerStmt *n = makeNode(AlterForeignServerStmt); @@ -34982,8 +36061,8 @@ YYLTYPE yylloc; ;} break; - case 718: -#line 5430 "gram.y" + case 726: +#line 5483 "gram.y" { CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt); @@ -35004,8 +36083,8 @@ YYLTYPE yylloc; ;} break; - case 719: -#line 5451 "gram.y" + case 727: +#line 5504 "gram.y" { CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt); @@ -35026,8 +36105,8 @@ YYLTYPE yylloc; ;} break; - case 720: -#line 5472 "gram.y" + case 728: +#line 5525 "gram.y" { CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt); @@ -35049,8 +36128,8 @@ YYLTYPE yylloc; ;} break; - case 721: -#line 5494 "gram.y" + case 729: +#line 5547 "gram.y" { CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt); @@ -35072,8 +36151,8 @@ YYLTYPE yylloc; ;} break; - case 722: -#line 5527 "gram.y" + case 730: +#line 5580 "gram.y" { ImportForeignSchemaStmt *n = makeNode(ImportForeignSchemaStmt); @@ -35087,18 +36166,18 @@ YYLTYPE yylloc; ;} break; - case 723: -#line 5541 "gram.y" + case 731: +#line 5594 "gram.y" { (yyval.ival) = FDW_IMPORT_SCHEMA_LIMIT_TO; ;} break; - case 724: -#line 5542 "gram.y" + case 732: +#line 5595 "gram.y" { (yyval.ival) = FDW_IMPORT_SCHEMA_EXCEPT; ;} break; - case 725: -#line 5547 "gram.y" + case 733: +#line 5600 "gram.y" { ImportQual *n = (ImportQual *) palloc(sizeof(ImportQual)); @@ -35108,8 +36187,8 @@ YYLTYPE yylloc; ;} break; - case 726: -#line 5555 "gram.y" + case 734: +#line 5608 "gram.y" { ImportQual *n = (ImportQual *) palloc(sizeof(ImportQual)); n->type = FDW_IMPORT_SCHEMA_ALL; @@ -35118,8 +36197,8 @@ YYLTYPE yylloc; ;} break; - case 727: -#line 5571 "gram.y" + case 735: +#line 5624 "gram.y" { CreateUserMappingStmt *n = makeNode(CreateUserMappingStmt); @@ -35131,8 +36210,8 @@ YYLTYPE yylloc; ;} break; - case 728: -#line 5581 "gram.y" + case 736: +#line 5634 "gram.y" { CreateUserMappingStmt *n = makeNode(CreateUserMappingStmt); @@ -35144,18 +36223,18 @@ YYLTYPE yylloc; ;} break; - case 729: -#line 5593 "gram.y" + case 737: +#line 5646 "gram.y" { (yyval.rolespec) = (yyvsp[(1) - (1)].rolespec); ;} break; - case 730: -#line 5594 "gram.y" + case 738: +#line 5647 "gram.y" { (yyval.rolespec) = makeRoleSpec(ROLESPEC_CURRENT_USER, (yylsp[(1) - (1)])); ;} break; - case 731: -#line 5607 "gram.y" + case 739: +#line 5660 "gram.y" { DropUserMappingStmt *n = makeNode(DropUserMappingStmt); @@ -35166,8 +36245,8 @@ YYLTYPE yylloc; ;} break; - case 732: -#line 5616 "gram.y" + case 740: +#line 5669 "gram.y" { DropUserMappingStmt *n = makeNode(DropUserMappingStmt); @@ -35178,8 +36257,8 @@ YYLTYPE yylloc; ;} break; - case 733: -#line 5634 "gram.y" + case 741: +#line 5687 "gram.y" { AlterUserMappingStmt *n = makeNode(AlterUserMappingStmt); @@ -35190,8 +36269,8 @@ YYLTYPE yylloc; ;} break; - case 734: -#line 5661 "gram.y" + case 742: +#line 5714 "gram.y" { CreatePolicyStmt *n = makeNode(CreatePolicyStmt); @@ -35206,8 +36285,8 @@ YYLTYPE yylloc; ;} break; - case 735: -#line 5678 "gram.y" + case 743: +#line 5731 "gram.y" { AlterPolicyStmt *n = makeNode(AlterPolicyStmt); @@ -35220,48 +36299,48 @@ YYLTYPE yylloc; ;} break; - case 736: -#line 5691 "gram.y" + case 744: +#line 5744 "gram.y" { (yyval.node) = (yyvsp[(3) - (4)].node); ;} break; - case 737: -#line 5692 "gram.y" + case 745: +#line 5745 "gram.y" { (yyval.node) = NULL; ;} break; - case 738: -#line 5696 "gram.y" + case 746: +#line 5749 "gram.y" { (yyval.node) = (yyvsp[(4) - (5)].node); ;} break; - case 739: -#line 5697 "gram.y" + case 747: +#line 5750 "gram.y" { (yyval.node) = NULL; ;} break; - case 740: -#line 5701 "gram.y" + case 748: +#line 5754 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 741: -#line 5702 "gram.y" + case 749: +#line 5755 "gram.y" { (yyval.list) = list_make1(makeRoleSpec(ROLESPEC_PUBLIC, -1)); ;} break; - case 742: -#line 5706 "gram.y" + case 750: +#line 5759 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 743: -#line 5707 "gram.y" + case 751: +#line 5760 "gram.y" { (yyval.list) = NULL; ;} break; - case 744: -#line 5712 "gram.y" + case 752: +#line 5765 "gram.y" { if (strcmp((yyvsp[(2) - (2)].str), "permissive") == 0) (yyval.boolean) = true; @@ -35277,48 +36356,48 @@ YYLTYPE yylloc; ;} break; - case 745: -#line 5725 "gram.y" + case 753: +#line 5778 "gram.y" { (yyval.boolean) = true; ;} break; - case 746: -#line 5729 "gram.y" + case 754: +#line 5782 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 747: -#line 5730 "gram.y" + case 755: +#line 5783 "gram.y" { (yyval.str) = "all"; ;} break; - case 748: -#line 5734 "gram.y" + case 756: +#line 5787 "gram.y" { (yyval.str) = "all"; ;} break; - case 749: -#line 5735 "gram.y" + case 757: +#line 5788 "gram.y" { (yyval.str) = "select"; ;} break; - case 750: -#line 5736 "gram.y" + case 758: +#line 5789 "gram.y" { (yyval.str) = "insert"; ;} break; - case 751: -#line 5737 "gram.y" + case 759: +#line 5790 "gram.y" { (yyval.str) = "update"; ;} break; - case 752: -#line 5738 "gram.y" + case 760: +#line 5791 "gram.y" { (yyval.str) = "delete"; ;} break; - case 753: -#line 5749 "gram.y" + case 761: +#line 5802 "gram.y" { CreateAmStmt *n = makeNode(CreateAmStmt); @@ -35329,18 +36408,18 @@ YYLTYPE yylloc; ;} break; - case 754: -#line 5760 "gram.y" + case 762: +#line 5813 "gram.y" { (yyval.chr) = AMTYPE_INDEX; ;} break; - case 755: -#line 5761 "gram.y" + case 763: +#line 5814 "gram.y" { (yyval.chr) = AMTYPE_TABLE; ;} break; - case 756: -#line 5775 "gram.y" + case 764: +#line 5828 "gram.y" { CreateTrigStmt *n = makeNode(CreateTrigStmt); @@ -35363,8 +36442,8 @@ YYLTYPE yylloc; ;} break; - case 757: -#line 5799 "gram.y" + case 765: +#line 5852 "gram.y" { CreateTrigStmt *n = makeNode(CreateTrigStmt); @@ -35392,28 +36471,28 @@ YYLTYPE yylloc; ;} break; - case 758: -#line 5827 "gram.y" + case 766: +#line 5880 "gram.y" { (yyval.ival) = TRIGGER_TYPE_BEFORE; ;} break; - case 759: -#line 5828 "gram.y" + case 767: +#line 5881 "gram.y" { (yyval.ival) = TRIGGER_TYPE_AFTER; ;} break; - case 760: -#line 5829 "gram.y" + case 768: +#line 5882 "gram.y" { (yyval.ival) = TRIGGER_TYPE_INSTEAD; ;} break; - case 761: -#line 5834 "gram.y" + case 769: +#line 5887 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 762: -#line 5836 "gram.y" + case 770: +#line 5889 "gram.y" { int events1 = intVal(linitial((yyvsp[(1) - (3)].list))); int events2 = intVal(linitial((yyvsp[(3) - (3)].list))); @@ -35434,53 +36513,53 @@ YYLTYPE yylloc; ;} break; - case 763: -#line 5858 "gram.y" + case 771: +#line 5911 "gram.y" { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_INSERT), NIL); ;} break; - case 764: -#line 5860 "gram.y" + case 772: +#line 5913 "gram.y" { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_DELETE), NIL); ;} break; - case 765: -#line 5862 "gram.y" + case 773: +#line 5915 "gram.y" { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_UPDATE), NIL); ;} break; - case 766: -#line 5864 "gram.y" + case 774: +#line 5917 "gram.y" { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_UPDATE), (yyvsp[(3) - (3)].list)); ;} break; - case 767: -#line 5866 "gram.y" + case 775: +#line 5919 "gram.y" { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_TRUNCATE), NIL); ;} break; - case 768: -#line 5870 "gram.y" + case 776: +#line 5923 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 769: -#line 5871 "gram.y" + case 777: +#line 5924 "gram.y" { (yyval.list) = NIL; ;} break; - case 770: -#line 5875 "gram.y" + case 778: +#line 5928 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 771: -#line 5876 "gram.y" + case 779: +#line 5929 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} break; - case 772: -#line 5881 "gram.y" + case 780: +#line 5934 "gram.y" { TriggerTransition *n = makeNode(TriggerTransition); @@ -35491,40 +36570,40 @@ YYLTYPE yylloc; ;} break; - case 773: -#line 5892 "gram.y" + case 781: +#line 5945 "gram.y" { (yyval.boolean) = true; ;} break; - case 774: -#line 5893 "gram.y" + case 782: +#line 5946 "gram.y" { (yyval.boolean) = false; ;} break; - case 775: -#line 5897 "gram.y" + case 783: +#line 5950 "gram.y" { (yyval.boolean) = true; ;} break; - case 776: -#line 5906 "gram.y" + case 784: +#line 5959 "gram.y" { (yyval.boolean) = false; ;} break; - case 777: -#line 5910 "gram.y" + case 785: +#line 5963 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 778: -#line 5915 "gram.y" + case 786: +#line 5968 "gram.y" { (yyval.boolean) = (yyvsp[(3) - (3)].boolean); ;} break; - case 779: -#line 5919 "gram.y" + case 787: +#line 5972 "gram.y" { /* * If ROW/STATEMENT not specified, default to @@ -35534,80 +36613,80 @@ YYLTYPE yylloc; ;} break; - case 782: -#line 5934 "gram.y" + case 790: +#line 5987 "gram.y" { (yyval.boolean) = true; ;} break; - case 783: -#line 5935 "gram.y" + case 791: +#line 5988 "gram.y" { (yyval.boolean) = false; ;} break; - case 784: -#line 5939 "gram.y" + case 792: +#line 5992 "gram.y" { (yyval.node) = (yyvsp[(3) - (4)].node); ;} break; - case 785: -#line 5940 "gram.y" + case 793: +#line 5993 "gram.y" { (yyval.node) = NULL; ;} break; - case 788: -#line 5949 "gram.y" + case 796: +#line 6002 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 789: -#line 5950 "gram.y" + case 797: +#line 6003 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 790: -#line 5951 "gram.y" + case 798: +#line 6004 "gram.y" { (yyval.list) = NIL; ;} break; - case 791: -#line 5956 "gram.y" + case 799: +#line 6009 "gram.y" { (yyval.node) = (Node *) makeString(psprintf("%d", (yyvsp[(1) - (1)].ival))); ;} break; - case 792: -#line 5959 "gram.y" + case 800: +#line 6012 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 793: -#line 5960 "gram.y" + case 801: +#line 6013 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 794: -#line 5961 "gram.y" + case 802: +#line 6014 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 795: -#line 5965 "gram.y" + case 803: +#line 6018 "gram.y" { (yyval.range) = (yyvsp[(2) - (2)].range); ;} break; - case 796: -#line 5966 "gram.y" + case 804: +#line 6019 "gram.y" { (yyval.range) = NULL; ;} break; - case 797: -#line 5971 "gram.y" + case 805: +#line 6024 "gram.y" { (yyval.ival) = 0; ;} break; - case 798: -#line 5973 "gram.y" + case 806: +#line 6026 "gram.y" { /* * We must complain about conflicting options. @@ -35633,38 +36712,38 @@ YYLTYPE yylloc; ;} break; - case 799: -#line 5999 "gram.y" + case 807: +#line 6052 "gram.y" { (yyval.ival) = CAS_NOT_DEFERRABLE; ;} break; - case 800: -#line 6000 "gram.y" + case 808: +#line 6053 "gram.y" { (yyval.ival) = CAS_DEFERRABLE; ;} break; - case 801: -#line 6001 "gram.y" + case 809: +#line 6054 "gram.y" { (yyval.ival) = CAS_INITIALLY_IMMEDIATE; ;} break; - case 802: -#line 6002 "gram.y" + case 810: +#line 6055 "gram.y" { (yyval.ival) = CAS_INITIALLY_DEFERRED; ;} break; - case 803: -#line 6003 "gram.y" + case 811: +#line 6056 "gram.y" { (yyval.ival) = CAS_NOT_VALID; ;} break; - case 804: -#line 6004 "gram.y" + case 812: +#line 6057 "gram.y" { (yyval.ival) = CAS_NO_INHERIT; ;} break; - case 805: -#line 6019 "gram.y" + case 813: +#line 6072 "gram.y" { CreateEventTrigStmt *n = makeNode(CreateEventTrigStmt); @@ -35676,8 +36755,8 @@ YYLTYPE yylloc; ;} break; - case 806: -#line 6031 "gram.y" + case 814: +#line 6084 "gram.y" { CreateEventTrigStmt *n = makeNode(CreateEventTrigStmt); @@ -35689,33 +36768,33 @@ YYLTYPE yylloc; ;} break; - case 807: -#line 6044 "gram.y" + case 815: +#line 6097 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 808: -#line 6046 "gram.y" + case 816: +#line 6099 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 809: -#line 6051 "gram.y" + case 817: +#line 6104 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (5)].str), (Node *) (yyvsp[(4) - (5)].list), (yylsp[(1) - (5)])); ;} break; - case 810: -#line 6056 "gram.y" + case 818: +#line 6109 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 811: -#line 6058 "gram.y" + case 819: +#line 6111 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); ;} break; - case 812: -#line 6063 "gram.y" + case 820: +#line 6116 "gram.y" { AlterEventTrigStmt *n = makeNode(AlterEventTrigStmt); @@ -35725,28 +36804,28 @@ YYLTYPE yylloc; ;} break; - case 813: -#line 6073 "gram.y" + case 821: +#line 6126 "gram.y" { (yyval.chr) = TRIGGER_FIRES_ON_ORIGIN; ;} break; - case 814: -#line 6074 "gram.y" + case 822: +#line 6127 "gram.y" { (yyval.chr) = TRIGGER_FIRES_ON_REPLICA; ;} break; - case 815: -#line 6075 "gram.y" + case 823: +#line 6128 "gram.y" { (yyval.chr) = TRIGGER_FIRES_ALWAYS; ;} break; - case 816: -#line 6076 "gram.y" + case 824: +#line 6129 "gram.y" { (yyval.chr) = TRIGGER_DISABLED; ;} break; - case 817: -#line 6088 "gram.y" + case 825: +#line 6141 "gram.y" { ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), @@ -35756,8 +36835,8 @@ YYLTYPE yylloc; ;} break; - case 818: -#line 6107 "gram.y" + case 826: +#line 6160 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35771,8 +36850,8 @@ YYLTYPE yylloc; ;} break; - case 819: -#line 6119 "gram.y" + case 827: +#line 6172 "gram.y" { /* old-style (pre-8.2) syntax for CREATE AGGREGATE */ DefineStmt *n = makeNode(DefineStmt); @@ -35787,8 +36866,8 @@ YYLTYPE yylloc; ;} break; - case 820: -#line 6132 "gram.y" + case 828: +#line 6185 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35801,8 +36880,8 @@ YYLTYPE yylloc; ;} break; - case 821: -#line 6143 "gram.y" + case 829: +#line 6196 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35815,8 +36894,8 @@ YYLTYPE yylloc; ;} break; - case 822: -#line 6154 "gram.y" + case 830: +#line 6207 "gram.y" { /* Shell type (identified by lack of definition) */ DefineStmt *n = makeNode(DefineStmt); @@ -35830,8 +36909,8 @@ YYLTYPE yylloc; ;} break; - case 823: -#line 6166 "gram.y" + case 831: +#line 6219 "gram.y" { CompositeTypeStmt *n = makeNode(CompositeTypeStmt); @@ -35842,8 +36921,8 @@ YYLTYPE yylloc; ;} break; - case 824: -#line 6175 "gram.y" + case 832: +#line 6228 "gram.y" { CreateEnumStmt *n = makeNode(CreateEnumStmt); @@ -35853,8 +36932,8 @@ YYLTYPE yylloc; ;} break; - case 825: -#line 6183 "gram.y" + case 833: +#line 6236 "gram.y" { CreateRangeStmt *n = makeNode(CreateRangeStmt); @@ -35864,8 +36943,8 @@ YYLTYPE yylloc; ;} break; - case 826: -#line 6191 "gram.y" + case 834: +#line 6244 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35877,8 +36956,8 @@ YYLTYPE yylloc; ;} break; - case 827: -#line 6201 "gram.y" + case 835: +#line 6254 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35890,8 +36969,8 @@ YYLTYPE yylloc; ;} break; - case 828: -#line 6211 "gram.y" + case 836: +#line 6264 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35903,8 +36982,8 @@ YYLTYPE yylloc; ;} break; - case 829: -#line 6221 "gram.y" + case 837: +#line 6274 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35916,8 +36995,8 @@ YYLTYPE yylloc; ;} break; - case 830: -#line 6231 "gram.y" + case 838: +#line 6284 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35929,8 +37008,8 @@ YYLTYPE yylloc; ;} break; - case 831: -#line 6241 "gram.y" + case 839: +#line 6294 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35943,8 +37022,8 @@ YYLTYPE yylloc; ;} break; - case 832: -#line 6252 "gram.y" + case 840: +#line 6305 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35956,8 +37035,8 @@ YYLTYPE yylloc; ;} break; - case 833: -#line 6262 "gram.y" + case 841: +#line 6315 "gram.y" { DefineStmt *n = makeNode(DefineStmt); @@ -35970,109 +37049,109 @@ YYLTYPE yylloc; ;} break; - case 834: -#line 6274 "gram.y" + case 842: +#line 6327 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 835: -#line 6277 "gram.y" + case 843: +#line 6330 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 836: -#line 6278 "gram.y" + case 844: +#line 6331 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 837: -#line 6282 "gram.y" + case 845: +#line 6335 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *) (yyvsp[(3) - (3)].node), (yylsp[(1) - (3)])); ;} break; - case 838: -#line 6286 "gram.y" + case 846: +#line 6339 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (1)].str), NULL, (yylsp[(1) - (1)])); ;} break; - case 839: -#line 6292 "gram.y" + case 847: +#line 6345 "gram.y" { (yyval.node) = (Node *) (yyvsp[(1) - (1)].typnam); ;} break; - case 840: -#line 6293 "gram.y" + case 848: +#line 6346 "gram.y" { (yyval.node) = (Node *) makeString(pstrdup((yyvsp[(1) - (1)].keyword))); ;} break; - case 841: -#line 6294 "gram.y" + case 849: +#line 6347 "gram.y" { (yyval.node) = (Node *) (yyvsp[(1) - (1)].list); ;} break; - case 842: -#line 6295 "gram.y" + case 850: +#line 6348 "gram.y" { (yyval.node) = (Node *) (yyvsp[(1) - (1)].node); ;} break; - case 843: -#line 6296 "gram.y" + case 851: +#line 6349 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 844: -#line 6297 "gram.y" + case 852: +#line 6350 "gram.y" { (yyval.node) = (Node *) makeString(pstrdup((yyvsp[(1) - (1)].keyword))); ;} break; - case 845: -#line 6300 "gram.y" + case 853: +#line 6353 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 846: -#line 6303 "gram.y" + case 854: +#line 6356 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 847: -#line 6304 "gram.y" + case 855: +#line 6357 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 848: -#line 6313 "gram.y" + case 856: +#line 6366 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *) (yyvsp[(3) - (3)].node), (yylsp[(1) - (3)])); ;} break; - case 849: -#line 6319 "gram.y" + case 857: +#line 6372 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 850: -#line 6320 "gram.y" + case 858: +#line 6373 "gram.y" { (yyval.list) = NIL; ;} break; - case 851: -#line 6324 "gram.y" + case 859: +#line 6377 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 852: -#line 6326 "gram.y" + case 860: +#line 6379 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); ;} break; - case 853: -#line 6337 "gram.y" + case 861: +#line 6390 "gram.y" { AlterEnumStmt *n = makeNode(AlterEnumStmt); @@ -36086,8 +37165,8 @@ YYLTYPE yylloc; ;} break; - case 854: -#line 6349 "gram.y" + case 862: +#line 6402 "gram.y" { AlterEnumStmt *n = makeNode(AlterEnumStmt); @@ -36101,8 +37180,8 @@ YYLTYPE yylloc; ;} break; - case 855: -#line 6361 "gram.y" + case 863: +#line 6414 "gram.y" { AlterEnumStmt *n = makeNode(AlterEnumStmt); @@ -36116,8 +37195,8 @@ YYLTYPE yylloc; ;} break; - case 856: -#line 6373 "gram.y" + case 864: +#line 6426 "gram.y" { AlterEnumStmt *n = makeNode(AlterEnumStmt); @@ -36131,18 +37210,18 @@ YYLTYPE yylloc; ;} break; - case 857: -#line 6386 "gram.y" + case 865: +#line 6439 "gram.y" { (yyval.boolean) = true; ;} break; - case 858: -#line 6387 "gram.y" + case 866: +#line 6440 "gram.y" { (yyval.boolean) = false; ;} break; - case 859: -#line 6405 "gram.y" + case 867: +#line 6458 "gram.y" { CreateOpClassStmt *n = makeNode(CreateOpClassStmt); @@ -36156,18 +37235,18 @@ YYLTYPE yylloc; ;} break; - case 860: -#line 6419 "gram.y" + case 868: +#line 6472 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 861: -#line 6420 "gram.y" + case 869: +#line 6473 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 862: -#line 6425 "gram.y" + case 870: +#line 6478 "gram.y" { CreateOpClassItem *n = makeNode(CreateOpClassItem); ObjectWithArgs *owa = makeNode(ObjectWithArgs); @@ -36182,8 +37261,8 @@ YYLTYPE yylloc; ;} break; - case 863: -#line 6439 "gram.y" + case 871: +#line 6492 "gram.y" { CreateOpClassItem *n = makeNode(CreateOpClassItem); @@ -36195,8 +37274,8 @@ YYLTYPE yylloc; ;} break; - case 864: -#line 6449 "gram.y" + case 872: +#line 6502 "gram.y" { CreateOpClassItem *n = makeNode(CreateOpClassItem); @@ -36207,8 +37286,8 @@ YYLTYPE yylloc; ;} break; - case 865: -#line 6458 "gram.y" + case 873: +#line 6511 "gram.y" { CreateOpClassItem *n = makeNode(CreateOpClassItem); @@ -36220,8 +37299,8 @@ YYLTYPE yylloc; ;} break; - case 866: -#line 6468 "gram.y" + case 874: +#line 6521 "gram.y" { CreateOpClassItem *n = makeNode(CreateOpClassItem); @@ -36231,43 +37310,43 @@ YYLTYPE yylloc; ;} break; - case 867: -#line 6477 "gram.y" + case 875: +#line 6530 "gram.y" { (yyval.boolean) = true; ;} break; - case 868: -#line 6478 "gram.y" + case 876: +#line 6531 "gram.y" { (yyval.boolean) = false; ;} break; - case 869: -#line 6481 "gram.y" + case 877: +#line 6534 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 870: -#line 6482 "gram.y" + case 878: +#line 6535 "gram.y" { (yyval.list) = NIL; ;} break; - case 871: -#line 6485 "gram.y" + case 879: +#line 6538 "gram.y" { (yyval.list) = NIL; ;} break; - case 872: -#line 6486 "gram.y" + case 880: +#line 6539 "gram.y" { (yyval.list) = (yyvsp[(4) - (4)].list); ;} break; - case 873: -#line 6487 "gram.y" + case 881: +#line 6540 "gram.y" { (yyval.list) = NIL; ;} break; - case 874: -#line 6491 "gram.y" + case 882: +#line 6544 "gram.y" { /* * RECHECK no longer does anything in opclass definitions, @@ -36283,13 +37362,13 @@ YYLTYPE yylloc; ;} break; - case 875: -#line 6504 "gram.y" + case 883: +#line 6557 "gram.y" { (yyval.boolean) = false; ;} break; - case 876: -#line 6510 "gram.y" + case 884: +#line 6563 "gram.y" { CreateOpFamilyStmt *n = makeNode(CreateOpFamilyStmt); @@ -36299,8 +37378,8 @@ YYLTYPE yylloc; ;} break; - case 877: -#line 6521 "gram.y" + case 885: +#line 6574 "gram.y" { AlterOpFamilyStmt *n = makeNode(AlterOpFamilyStmt); @@ -36312,8 +37391,8 @@ YYLTYPE yylloc; ;} break; - case 878: -#line 6531 "gram.y" + case 886: +#line 6584 "gram.y" { AlterOpFamilyStmt *n = makeNode(AlterOpFamilyStmt); @@ -36325,18 +37404,18 @@ YYLTYPE yylloc; ;} break; - case 879: -#line 6543 "gram.y" + case 887: +#line 6596 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 880: -#line 6544 "gram.y" + case 888: +#line 6597 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 881: -#line 6549 "gram.y" + case 889: +#line 6602 "gram.y" { CreateOpClassItem *n = makeNode(CreateOpClassItem); @@ -36347,8 +37426,8 @@ YYLTYPE yylloc; ;} break; - case 882: -#line 6558 "gram.y" + case 890: +#line 6611 "gram.y" { CreateOpClassItem *n = makeNode(CreateOpClassItem); @@ -36359,8 +37438,8 @@ YYLTYPE yylloc; ;} break; - case 883: -#line 6571 "gram.y" + case 891: +#line 6624 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36373,8 +37452,8 @@ YYLTYPE yylloc; ;} break; - case 884: -#line 6582 "gram.y" + case 892: +#line 6635 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36387,8 +37466,8 @@ YYLTYPE yylloc; ;} break; - case 885: -#line 6596 "gram.y" + case 893: +#line 6649 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36401,8 +37480,8 @@ YYLTYPE yylloc; ;} break; - case 886: -#line 6607 "gram.y" + case 894: +#line 6660 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36415,8 +37494,8 @@ YYLTYPE yylloc; ;} break; - case 887: -#line 6630 "gram.y" + case 895: +#line 6683 "gram.y" { DropOwnedStmt *n = makeNode(DropOwnedStmt); @@ -36426,8 +37505,8 @@ YYLTYPE yylloc; ;} break; - case 888: -#line 6641 "gram.y" + case 896: +#line 6694 "gram.y" { ReassignOwnedStmt *n = makeNode(ReassignOwnedStmt); @@ -36437,8 +37516,8 @@ YYLTYPE yylloc; ;} break; - case 889: -#line 6660 "gram.y" + case 897: +#line 6713 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36451,8 +37530,8 @@ YYLTYPE yylloc; ;} break; - case 890: -#line 6671 "gram.y" + case 898: +#line 6724 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36465,8 +37544,8 @@ YYLTYPE yylloc; ;} break; - case 891: -#line 6682 "gram.y" + case 899: +#line 6735 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36479,8 +37558,8 @@ YYLTYPE yylloc; ;} break; - case 892: -#line 6693 "gram.y" + case 900: +#line 6746 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36493,8 +37572,8 @@ YYLTYPE yylloc; ;} break; - case 893: -#line 6704 "gram.y" + case 901: +#line 6757 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36507,8 +37586,8 @@ YYLTYPE yylloc; ;} break; - case 894: -#line 6715 "gram.y" + case 902: +#line 6768 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36521,8 +37600,8 @@ YYLTYPE yylloc; ;} break; - case 895: -#line 6726 "gram.y" + case 903: +#line 6779 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36535,8 +37614,8 @@ YYLTYPE yylloc; ;} break; - case 896: -#line 6737 "gram.y" + case 904: +#line 6790 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36549,8 +37628,8 @@ YYLTYPE yylloc; ;} break; - case 897: -#line 6748 "gram.y" + case 905: +#line 6801 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36563,8 +37642,8 @@ YYLTYPE yylloc; ;} break; - case 898: -#line 6759 "gram.y" + case 906: +#line 6812 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36577,8 +37656,8 @@ YYLTYPE yylloc; ;} break; - case 899: -#line 6770 "gram.y" + case 907: +#line 6823 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36591,8 +37670,8 @@ YYLTYPE yylloc; ;} break; - case 900: -#line 6781 "gram.y" + case 908: +#line 6834 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -36605,193 +37684,193 @@ YYLTYPE yylloc; ;} break; - case 901: -#line 6795 "gram.y" + case 909: +#line 6848 "gram.y" { (yyval.objtype) = OBJECT_TABLE; ;} break; - case 902: -#line 6796 "gram.y" + case 910: +#line 6849 "gram.y" { (yyval.objtype) = OBJECT_SEQUENCE; ;} break; - case 903: -#line 6797 "gram.y" + case 911: +#line 6850 "gram.y" { (yyval.objtype) = OBJECT_VIEW; ;} break; - case 904: -#line 6798 "gram.y" + case 912: +#line 6851 "gram.y" { (yyval.objtype) = OBJECT_MATVIEW; ;} break; - case 905: -#line 6799 "gram.y" + case 913: +#line 6852 "gram.y" { (yyval.objtype) = OBJECT_INDEX; ;} break; - case 906: -#line 6800 "gram.y" + case 914: +#line 6853 "gram.y" { (yyval.objtype) = OBJECT_FOREIGN_TABLE; ;} break; - case 907: -#line 6801 "gram.y" + case 915: +#line 6854 "gram.y" { (yyval.objtype) = OBJECT_COLLATION; ;} break; - case 908: -#line 6802 "gram.y" + case 916: +#line 6855 "gram.y" { (yyval.objtype) = OBJECT_CONVERSION; ;} break; - case 909: -#line 6803 "gram.y" + case 917: +#line 6856 "gram.y" { (yyval.objtype) = OBJECT_STATISTIC_EXT; ;} break; - case 910: -#line 6804 "gram.y" + case 918: +#line 6857 "gram.y" { (yyval.objtype) = OBJECT_TSPARSER; ;} break; - case 911: -#line 6805 "gram.y" + case 919: +#line 6858 "gram.y" { (yyval.objtype) = OBJECT_TSDICTIONARY; ;} break; - case 912: -#line 6806 "gram.y" + case 920: +#line 6859 "gram.y" { (yyval.objtype) = OBJECT_TSTEMPLATE; ;} break; - case 913: -#line 6807 "gram.y" + case 921: +#line 6860 "gram.y" { (yyval.objtype) = OBJECT_TSCONFIGURATION; ;} break; - case 914: -#line 6817 "gram.y" + case 922: +#line 6870 "gram.y" { (yyval.objtype) = (yyvsp[(1) - (1)].objtype); ;} break; - case 915: -#line 6818 "gram.y" + case 923: +#line 6871 "gram.y" { (yyval.objtype) = OBJECT_DATABASE; ;} break; - case 916: -#line 6819 "gram.y" + case 924: +#line 6872 "gram.y" { (yyval.objtype) = OBJECT_ROLE; ;} break; - case 917: -#line 6820 "gram.y" + case 925: +#line 6873 "gram.y" { (yyval.objtype) = OBJECT_SUBSCRIPTION; ;} break; - case 918: -#line 6821 "gram.y" + case 926: +#line 6874 "gram.y" { (yyval.objtype) = OBJECT_TABLESPACE; ;} break; - case 919: -#line 6825 "gram.y" + case 927: +#line 6878 "gram.y" { (yyval.objtype) = OBJECT_ACCESS_METHOD; ;} break; - case 920: -#line 6826 "gram.y" + case 928: +#line 6879 "gram.y" { (yyval.objtype) = OBJECT_EVENT_TRIGGER; ;} break; - case 921: -#line 6827 "gram.y" + case 929: +#line 6880 "gram.y" { (yyval.objtype) = OBJECT_EXTENSION; ;} break; - case 922: -#line 6828 "gram.y" + case 930: +#line 6881 "gram.y" { (yyval.objtype) = OBJECT_FDW; ;} break; - case 923: -#line 6829 "gram.y" + case 931: +#line 6882 "gram.y" { (yyval.objtype) = OBJECT_LANGUAGE; ;} break; - case 924: -#line 6830 "gram.y" + case 932: +#line 6883 "gram.y" { (yyval.objtype) = OBJECT_PUBLICATION; ;} break; - case 925: -#line 6831 "gram.y" + case 933: +#line 6884 "gram.y" { (yyval.objtype) = OBJECT_SCHEMA; ;} break; - case 926: -#line 6832 "gram.y" + case 934: +#line 6885 "gram.y" { (yyval.objtype) = OBJECT_FOREIGN_SERVER; ;} break; - case 927: -#line 6837 "gram.y" + case 935: +#line 6890 "gram.y" { (yyval.objtype) = OBJECT_POLICY; ;} break; - case 928: -#line 6838 "gram.y" + case 936: +#line 6891 "gram.y" { (yyval.objtype) = OBJECT_RULE; ;} break; - case 929: -#line 6839 "gram.y" + case 937: +#line 6892 "gram.y" { (yyval.objtype) = OBJECT_TRIGGER; ;} break; - case 930: -#line 6843 "gram.y" + case 938: +#line 6896 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); ;} break; - case 931: -#line 6844 "gram.y" + case 939: +#line 6897 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); ;} break; - case 932: -#line 6847 "gram.y" + case 940: +#line 6900 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 933: -#line 6848 "gram.y" + case 941: +#line 6901 "gram.y" { (yyval.list) = lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)); ;} break; - case 934: -#line 6852 "gram.y" + case 942: +#line 6905 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(2) - (2)].str))); ;} break; - case 935: -#line 6854 "gram.y" + case 943: +#line 6907 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); ;} break; - case 936: -#line 6858 "gram.y" + case 944: +#line 6911 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].typnam)); ;} break; - case 937: -#line 6859 "gram.y" + case 945: +#line 6912 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].typnam)); ;} break; - case 938: -#line 6871 "gram.y" + case 946: +#line 6924 "gram.y" { TruncateStmt *n = makeNode(TruncateStmt); @@ -36802,23 +37881,23 @@ YYLTYPE yylloc; ;} break; - case 939: -#line 6882 "gram.y" + case 947: +#line 6935 "gram.y" { (yyval.boolean) = false; ;} break; - case 940: -#line 6883 "gram.y" + case 948: +#line 6936 "gram.y" { (yyval.boolean) = true; ;} break; - case 941: -#line 6884 "gram.y" + case 949: +#line 6937 "gram.y" { (yyval.boolean) = false; ;} break; - case 942: -#line 6895 "gram.y" + case 950: +#line 6948 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36829,8 +37908,8 @@ YYLTYPE yylloc; ;} break; - case 943: -#line 6904 "gram.y" + case 951: +#line 6957 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36841,8 +37920,8 @@ YYLTYPE yylloc; ;} break; - case 944: -#line 6913 "gram.y" + case 952: +#line 6966 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36853,8 +37932,8 @@ YYLTYPE yylloc; ;} break; - case 945: -#line 6922 "gram.y" + case 953: +#line 6975 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36865,8 +37944,8 @@ YYLTYPE yylloc; ;} break; - case 946: -#line 6931 "gram.y" + case 954: +#line 6984 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36877,8 +37956,8 @@ YYLTYPE yylloc; ;} break; - case 947: -#line 6940 "gram.y" + case 955: +#line 6993 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36889,8 +37968,8 @@ YYLTYPE yylloc; ;} break; - case 948: -#line 6949 "gram.y" + case 956: +#line 7002 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36901,8 +37980,8 @@ YYLTYPE yylloc; ;} break; - case 949: -#line 6958 "gram.y" + case 957: +#line 7011 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36913,8 +37992,8 @@ YYLTYPE yylloc; ;} break; - case 950: -#line 6967 "gram.y" + case 958: +#line 7020 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36925,8 +38004,8 @@ YYLTYPE yylloc; ;} break; - case 951: -#line 6976 "gram.y" + case 959: +#line 7029 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36942,8 +38021,8 @@ YYLTYPE yylloc; ;} break; - case 952: -#line 6990 "gram.y" + case 960: +#line 7043 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36954,8 +38033,8 @@ YYLTYPE yylloc; ;} break; - case 953: -#line 6999 "gram.y" + case 961: +#line 7052 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36966,8 +38045,8 @@ YYLTYPE yylloc; ;} break; - case 954: -#line 7008 "gram.y" + case 962: +#line 7061 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36978,8 +38057,8 @@ YYLTYPE yylloc; ;} break; - case 955: -#line 7017 "gram.y" + case 963: +#line 7070 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -36990,8 +38069,8 @@ YYLTYPE yylloc; ;} break; - case 956: -#line 7026 "gram.y" + case 964: +#line 7079 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -37002,8 +38081,8 @@ YYLTYPE yylloc; ;} break; - case 957: -#line 7035 "gram.y" + case 965: +#line 7088 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -37014,8 +38093,8 @@ YYLTYPE yylloc; ;} break; - case 958: -#line 7044 "gram.y" + case 966: +#line 7097 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -37026,8 +38105,8 @@ YYLTYPE yylloc; ;} break; - case 959: -#line 7053 "gram.y" + case 967: +#line 7106 "gram.y" { CommentStmt *n = makeNode(CommentStmt); @@ -37038,18 +38117,18 @@ YYLTYPE yylloc; ;} break; - case 960: -#line 7064 "gram.y" + case 968: +#line 7117 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 961: -#line 7065 "gram.y" + case 969: +#line 7118 "gram.y" { (yyval.str) = NULL; ;} break; - case 962: -#line 7081 "gram.y" + case 970: +#line 7134 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37061,8 +38140,8 @@ YYLTYPE yylloc; ;} break; - case 963: -#line 7092 "gram.y" + case 971: +#line 7145 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37074,8 +38153,8 @@ YYLTYPE yylloc; ;} break; - case 964: -#line 7103 "gram.y" + case 972: +#line 7156 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37087,8 +38166,8 @@ YYLTYPE yylloc; ;} break; - case 965: -#line 7114 "gram.y" + case 973: +#line 7167 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37100,8 +38179,8 @@ YYLTYPE yylloc; ;} break; - case 966: -#line 7125 "gram.y" + case 974: +#line 7178 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37113,8 +38192,8 @@ YYLTYPE yylloc; ;} break; - case 967: -#line 7136 "gram.y" + case 975: +#line 7189 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37126,8 +38205,8 @@ YYLTYPE yylloc; ;} break; - case 968: -#line 7147 "gram.y" + case 976: +#line 7200 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37139,8 +38218,8 @@ YYLTYPE yylloc; ;} break; - case 969: -#line 7158 "gram.y" + case 977: +#line 7211 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37152,8 +38231,8 @@ YYLTYPE yylloc; ;} break; - case 970: -#line 7169 "gram.y" + case 978: +#line 7222 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37165,8 +38244,8 @@ YYLTYPE yylloc; ;} break; - case 971: -#line 7180 "gram.y" + case 979: +#line 7233 "gram.y" { SecLabelStmt *n = makeNode(SecLabelStmt); @@ -37178,28 +38257,28 @@ YYLTYPE yylloc; ;} break; - case 972: -#line 7191 "gram.y" + case 980: +#line 7244 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 973: -#line 7192 "gram.y" + case 981: +#line 7245 "gram.y" { (yyval.str) = NULL; ;} break; - case 974: -#line 7195 "gram.y" + case 982: +#line 7248 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 975: -#line 7196 "gram.y" + case 983: +#line 7249 "gram.y" { (yyval.str) = NULL; ;} break; - case 976: -#line 7207 "gram.y" + case 984: +#line 7260 "gram.y" { FetchStmt *n = (FetchStmt *) (yyvsp[(2) - (2)].node); @@ -37208,8 +38287,8 @@ YYLTYPE yylloc; ;} break; - case 977: -#line 7214 "gram.y" + case 985: +#line 7267 "gram.y" { FetchStmt *n = (FetchStmt *) (yyvsp[(2) - (2)].node); @@ -37218,8 +38297,8 @@ YYLTYPE yylloc; ;} break; - case 978: -#line 7223 "gram.y" + case 986: +#line 7276 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37230,8 +38309,8 @@ YYLTYPE yylloc; ;} break; - case 979: -#line 7232 "gram.y" + case 987: +#line 7285 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37242,8 +38321,8 @@ YYLTYPE yylloc; ;} break; - case 980: -#line 7241 "gram.y" + case 988: +#line 7294 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37254,8 +38333,8 @@ YYLTYPE yylloc; ;} break; - case 981: -#line 7250 "gram.y" + case 989: +#line 7303 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37266,8 +38345,8 @@ YYLTYPE yylloc; ;} break; - case 982: -#line 7259 "gram.y" + case 990: +#line 7312 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37278,8 +38357,8 @@ YYLTYPE yylloc; ;} break; - case 983: -#line 7268 "gram.y" + case 991: +#line 7321 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37290,8 +38369,8 @@ YYLTYPE yylloc; ;} break; - case 984: -#line 7277 "gram.y" + case 992: +#line 7330 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37302,8 +38381,8 @@ YYLTYPE yylloc; ;} break; - case 985: -#line 7286 "gram.y" + case 993: +#line 7339 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37314,8 +38393,8 @@ YYLTYPE yylloc; ;} break; - case 986: -#line 7295 "gram.y" + case 994: +#line 7348 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37326,8 +38405,8 @@ YYLTYPE yylloc; ;} break; - case 987: -#line 7304 "gram.y" + case 995: +#line 7357 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37338,8 +38417,8 @@ YYLTYPE yylloc; ;} break; - case 988: -#line 7313 "gram.y" + case 996: +#line 7366 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37350,8 +38429,8 @@ YYLTYPE yylloc; ;} break; - case 989: -#line 7322 "gram.y" + case 997: +#line 7375 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37362,8 +38441,8 @@ YYLTYPE yylloc; ;} break; - case 990: -#line 7331 "gram.y" + case 998: +#line 7384 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37374,8 +38453,8 @@ YYLTYPE yylloc; ;} break; - case 991: -#line 7340 "gram.y" + case 999: +#line 7393 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37386,8 +38465,8 @@ YYLTYPE yylloc; ;} break; - case 992: -#line 7349 "gram.y" + case 1000: +#line 7402 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37398,8 +38477,8 @@ YYLTYPE yylloc; ;} break; - case 993: -#line 7358 "gram.y" + case 1001: +#line 7411 "gram.y" { FetchStmt *n = makeNode(FetchStmt); @@ -37410,8 +38489,8 @@ YYLTYPE yylloc; ;} break; - case 998: -#line 7385 "gram.y" + case 1006: +#line 7438 "gram.y" { GrantStmt *n = makeNode(GrantStmt); @@ -37427,8 +38506,8 @@ YYLTYPE yylloc; ;} break; - case 999: -#line 7403 "gram.y" + case 1007: +#line 7456 "gram.y" { GrantStmt *n = makeNode(GrantStmt); @@ -37445,8 +38524,8 @@ YYLTYPE yylloc; ;} break; - case 1000: -#line 7419 "gram.y" + case 1008: +#line 7472 "gram.y" { GrantStmt *n = makeNode(GrantStmt); @@ -37463,23 +38542,23 @@ YYLTYPE yylloc; ;} break; - case 1001: -#line 7446 "gram.y" + case 1009: +#line 7499 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1002: -#line 7448 "gram.y" + case 1010: +#line 7501 "gram.y" { (yyval.list) = NIL; ;} break; - case 1003: -#line 7450 "gram.y" + case 1011: +#line 7503 "gram.y" { (yyval.list) = NIL; ;} break; - case 1004: -#line 7452 "gram.y" + case 1012: +#line 7505 "gram.y" { AccessPriv *n = makeNode(AccessPriv); @@ -37489,8 +38568,8 @@ YYLTYPE yylloc; ;} break; - case 1005: -#line 7460 "gram.y" + case 1013: +#line 7513 "gram.y" { AccessPriv *n = makeNode(AccessPriv); @@ -37500,18 +38579,18 @@ YYLTYPE yylloc; ;} break; - case 1006: -#line 7469 "gram.y" + case 1014: +#line 7522 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].accesspriv)); ;} break; - case 1007: -#line 7470 "gram.y" + case 1015: +#line 7523 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].accesspriv)); ;} break; - case 1008: -#line 7474 "gram.y" + case 1016: +#line 7527 "gram.y" { AccessPriv *n = makeNode(AccessPriv); @@ -37521,8 +38600,8 @@ YYLTYPE yylloc; ;} break; - case 1009: -#line 7482 "gram.y" + case 1017: +#line 7535 "gram.y" { AccessPriv *n = makeNode(AccessPriv); @@ -37532,8 +38611,8 @@ YYLTYPE yylloc; ;} break; - case 1010: -#line 7490 "gram.y" + case 1018: +#line 7543 "gram.y" { AccessPriv *n = makeNode(AccessPriv); @@ -37543,8 +38622,8 @@ YYLTYPE yylloc; ;} break; - case 1011: -#line 7498 "gram.y" + case 1019: +#line 7551 "gram.y" { AccessPriv *n = makeNode(AccessPriv); n->priv_name = pstrdup("alter system"); @@ -37553,8 +38632,8 @@ YYLTYPE yylloc; ;} break; - case 1012: -#line 7505 "gram.y" + case 1020: +#line 7558 "gram.y" { AccessPriv *n = makeNode(AccessPriv); @@ -37564,36 +38643,36 @@ YYLTYPE yylloc; ;} break; - case 1013: -#line 7516 "gram.y" + case 1021: +#line 7569 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 1014: -#line 7520 "gram.y" + case 1022: +#line 7573 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); ;} break; - case 1015: -#line 7527 "gram.y" + case 1023: +#line 7580 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1016: -#line 7531 "gram.y" + case 1024: +#line 7584 "gram.y" { (yyval.str) = psprintf("%s.%s", (yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].str)); ;} break; - case 1017: -#line 7542 "gram.y" + case 1025: +#line 7595 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37604,8 +38683,8 @@ YYLTYPE yylloc; ;} break; - case 1018: -#line 7551 "gram.y" + case 1026: +#line 7604 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37616,8 +38695,8 @@ YYLTYPE yylloc; ;} break; - case 1019: -#line 7560 "gram.y" + case 1027: +#line 7613 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37628,8 +38707,8 @@ YYLTYPE yylloc; ;} break; - case 1020: -#line 7569 "gram.y" + case 1028: +#line 7622 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37640,8 +38719,8 @@ YYLTYPE yylloc; ;} break; - case 1021: -#line 7578 "gram.y" + case 1029: +#line 7631 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37652,8 +38731,8 @@ YYLTYPE yylloc; ;} break; - case 1022: -#line 7587 "gram.y" + case 1030: +#line 7640 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37664,8 +38743,8 @@ YYLTYPE yylloc; ;} break; - case 1023: -#line 7596 "gram.y" + case 1031: +#line 7649 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37676,8 +38755,8 @@ YYLTYPE yylloc; ;} break; - case 1024: -#line 7605 "gram.y" + case 1032: +#line 7658 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37688,8 +38767,8 @@ YYLTYPE yylloc; ;} break; - case 1025: -#line 7614 "gram.y" + case 1033: +#line 7667 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37700,8 +38779,8 @@ YYLTYPE yylloc; ;} break; - case 1026: -#line 7623 "gram.y" + case 1034: +#line 7676 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37712,8 +38791,8 @@ YYLTYPE yylloc; ;} break; - case 1027: -#line 7632 "gram.y" + case 1035: +#line 7685 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37724,8 +38803,8 @@ YYLTYPE yylloc; ;} break; - case 1028: -#line 7641 "gram.y" + case 1036: +#line 7694 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37736,8 +38815,8 @@ YYLTYPE yylloc; ;} break; - case 1029: -#line 7650 "gram.y" + case 1037: +#line 7703 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); n->targtype = ACL_TARGET_OBJECT; @@ -37747,8 +38826,8 @@ YYLTYPE yylloc; ;} break; - case 1030: -#line 7658 "gram.y" + case 1038: +#line 7711 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37759,8 +38838,8 @@ YYLTYPE yylloc; ;} break; - case 1031: -#line 7667 "gram.y" + case 1039: +#line 7720 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37771,8 +38850,8 @@ YYLTYPE yylloc; ;} break; - case 1032: -#line 7676 "gram.y" + case 1040: +#line 7729 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37783,8 +38862,8 @@ YYLTYPE yylloc; ;} break; - case 1033: -#line 7685 "gram.y" + case 1041: +#line 7738 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37795,8 +38874,8 @@ YYLTYPE yylloc; ;} break; - case 1034: -#line 7694 "gram.y" + case 1042: +#line 7747 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37807,8 +38886,8 @@ YYLTYPE yylloc; ;} break; - case 1035: -#line 7703 "gram.y" + case 1043: +#line 7756 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37819,8 +38898,8 @@ YYLTYPE yylloc; ;} break; - case 1036: -#line 7712 "gram.y" + case 1044: +#line 7765 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37831,8 +38910,8 @@ YYLTYPE yylloc; ;} break; - case 1037: -#line 7721 "gram.y" + case 1045: +#line 7774 "gram.y" { PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget)); @@ -37843,100 +38922,141 @@ YYLTYPE yylloc; ;} break; - case 1038: -#line 7733 "gram.y" + case 1046: +#line 7786 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].rolespec)); ;} break; - case 1039: -#line 7734 "gram.y" + case 1047: +#line 7787 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].rolespec)); ;} break; - case 1040: -#line 7738 "gram.y" + case 1048: +#line 7791 "gram.y" { (yyval.rolespec) = (yyvsp[(1) - (1)].rolespec); ;} break; - case 1041: -#line 7739 "gram.y" + case 1049: +#line 7792 "gram.y" { (yyval.rolespec) = (yyvsp[(2) - (2)].rolespec); ;} break; - case 1042: -#line 7744 "gram.y" + case 1050: +#line 7797 "gram.y" { (yyval.boolean) = true; ;} break; - case 1043: -#line 7745 "gram.y" + case 1051: +#line 7798 "gram.y" { (yyval.boolean) = false; ;} break; - case 1044: -#line 7756 "gram.y" + case 1052: +#line 7809 "gram.y" { GrantRoleStmt *n = makeNode(GrantRoleStmt); n->is_grant = true; - n->granted_roles = (yyvsp[(2) - (6)].list); - n->grantee_roles = (yyvsp[(4) - (6)].list); - n->admin_opt = (yyvsp[(5) - (6)].boolean); - n->grantor = (yyvsp[(6) - (6)].rolespec); + n->granted_roles = (yyvsp[(2) - (5)].list); + n->grantee_roles = (yyvsp[(4) - (5)].list); + n->opt = NIL; + n->grantor = (yyvsp[(5) - (5)].rolespec); (yyval.node) = (Node *) n; ;} break; - case 1045: -#line 7770 "gram.y" + case 1053: +#line 7820 "gram.y" + { + GrantRoleStmt *n = makeNode(GrantRoleStmt); + + n->is_grant = true; + n->granted_roles = (yyvsp[(2) - (7)].list); + n->grantee_roles = (yyvsp[(4) - (7)].list); + n->opt = (yyvsp[(6) - (7)].list); + n->grantor = (yyvsp[(7) - (7)].rolespec); + (yyval.node) = (Node *) n; + ;} + break; + + case 1054: +#line 7834 "gram.y" { GrantRoleStmt *n = makeNode(GrantRoleStmt); n->is_grant = false; - n->admin_opt = false; + n->opt = NIL; n->granted_roles = (yyvsp[(2) - (6)].list); n->grantee_roles = (yyvsp[(4) - (6)].list); + n->grantor = (yyvsp[(5) - (6)].rolespec); n->behavior = (yyvsp[(6) - (6)].dbehavior); (yyval.node) = (Node *) n; ;} break; - case 1046: -#line 7781 "gram.y" + case 1055: +#line 7846 "gram.y" { GrantRoleStmt *n = makeNode(GrantRoleStmt); + DefElem *opt; + opt = makeDefElem(pstrdup((yyvsp[(2) - (9)].str)), + (Node *) makeBoolean(false), (yylsp[(2) - (9)])); n->is_grant = false; - n->admin_opt = true; + n->opt = list_make1(opt); n->granted_roles = (yyvsp[(5) - (9)].list); n->grantee_roles = (yyvsp[(7) - (9)].list); + n->grantor = (yyvsp[(8) - (9)].rolespec); n->behavior = (yyvsp[(9) - (9)].dbehavior); (yyval.node) = (Node *) n; ;} break; - case 1047: -#line 7793 "gram.y" - { (yyval.boolean) = true; ;} + case 1056: +#line 7863 "gram.y" + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 1048: -#line 7794 "gram.y" - { (yyval.boolean) = false; ;} + case 1057: +#line 7864 "gram.y" + { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1049: -#line 7797 "gram.y" + case 1058: +#line 7869 "gram.y" + { + (yyval.defelt) = makeDefElem(pstrdup((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); + ;} + break; + + case 1059: +#line 7875 "gram.y" + { (yyval.node) = (Node *) makeBoolean(true); ;} + break; + + case 1060: +#line 7876 "gram.y" + { (yyval.node) = (Node *) makeBoolean(true); ;} + break; + + case 1061: +#line 7877 "gram.y" + { (yyval.node) = (Node *) makeBoolean(false); ;} + break; + + case 1062: +#line 7880 "gram.y" { (yyval.rolespec) = (yyvsp[(3) - (3)].rolespec); ;} break; - case 1050: -#line 7798 "gram.y" + case 1063: +#line 7881 "gram.y" { (yyval.rolespec) = NULL; ;} break; - case 1051: -#line 7809 "gram.y" + case 1064: +#line 7892 "gram.y" { AlterDefaultPrivilegesStmt *n = makeNode(AlterDefaultPrivilegesStmt); @@ -37946,39 +39066,39 @@ YYLTYPE yylloc; ;} break; - case 1052: -#line 7819 "gram.y" + case 1065: +#line 7902 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 1053: -#line 7820 "gram.y" + case 1066: +#line 7903 "gram.y" { (yyval.list) = NIL; ;} break; - case 1054: -#line 7825 "gram.y" + case 1067: +#line 7908 "gram.y" { (yyval.defelt) = makeDefElem("schemas", (Node *) (yyvsp[(3) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 1055: -#line 7829 "gram.y" + case 1068: +#line 7912 "gram.y" { (yyval.defelt) = makeDefElem("roles", (Node *) (yyvsp[(3) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 1056: -#line 7833 "gram.y" + case 1069: +#line 7916 "gram.y" { (yyval.defelt) = makeDefElem("roles", (Node *) (yyvsp[(3) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 1057: -#line 7845 "gram.y" + case 1070: +#line 7928 "gram.y" { GrantStmt *n = makeNode(GrantStmt); @@ -37993,8 +39113,8 @@ YYLTYPE yylloc; ;} break; - case 1058: -#line 7859 "gram.y" + case 1071: +#line 7942 "gram.y" { GrantStmt *n = makeNode(GrantStmt); @@ -38010,8 +39130,8 @@ YYLTYPE yylloc; ;} break; - case 1059: -#line 7874 "gram.y" + case 1072: +#line 7957 "gram.y" { GrantStmt *n = makeNode(GrantStmt); @@ -38027,38 +39147,38 @@ YYLTYPE yylloc; ;} break; - case 1060: -#line 7890 "gram.y" + case 1073: +#line 7973 "gram.y" { (yyval.ival) = OBJECT_TABLE; ;} break; - case 1061: -#line 7891 "gram.y" + case 1074: +#line 7974 "gram.y" { (yyval.ival) = OBJECT_FUNCTION; ;} break; - case 1062: -#line 7892 "gram.y" + case 1075: +#line 7975 "gram.y" { (yyval.ival) = OBJECT_FUNCTION; ;} break; - case 1063: -#line 7893 "gram.y" + case 1076: +#line 7976 "gram.y" { (yyval.ival) = OBJECT_SEQUENCE; ;} break; - case 1064: -#line 7894 "gram.y" + case 1077: +#line 7977 "gram.y" { (yyval.ival) = OBJECT_TYPE; ;} break; - case 1065: -#line 7895 "gram.y" + case 1078: +#line 7978 "gram.y" { (yyval.ival) = OBJECT_SCHEMA; ;} break; - case 1066: -#line 7910 "gram.y" + case 1079: +#line 7993 "gram.y" { IndexStmt *n = makeNode(IndexStmt); @@ -38076,9 +39196,9 @@ YYLTYPE yylloc; n->excludeOpNames = NIL; n->idxcomment = NULL; n->indexOid = InvalidOid; - n->oldNode = InvalidOid; + n->oldNumber = InvalidRelFileNumber; n->oldCreateSubid = InvalidSubTransactionId; - n->oldFirstRelfilenodeSubid = InvalidSubTransactionId; + n->oldFirstRelfilelocatorSubid = InvalidSubTransactionId; n->primary = false; n->isconstraint = false; n->deferrable = false; @@ -38090,8 +39210,8 @@ YYLTYPE yylloc; ;} break; - case 1067: -#line 7942 "gram.y" + case 1080: +#line 8025 "gram.y" { IndexStmt *n = makeNode(IndexStmt); @@ -38109,9 +39229,9 @@ YYLTYPE yylloc; n->excludeOpNames = NIL; n->idxcomment = NULL; n->indexOid = InvalidOid; - n->oldNode = InvalidOid; + n->oldNumber = InvalidRelFileNumber; n->oldCreateSubid = InvalidSubTransactionId; - n->oldFirstRelfilenodeSubid = InvalidSubTransactionId; + n->oldFirstRelfilelocatorSubid = InvalidSubTransactionId; n->primary = false; n->isconstraint = false; n->deferrable = false; @@ -38123,58 +39243,38 @@ YYLTYPE yylloc; ;} break; - case 1068: -#line 7974 "gram.y" - { (yyval.boolean) = true; ;} - break; - - case 1069: -#line 7975 "gram.y" - { (yyval.boolean) = false; ;} - break; - - case 1070: -#line 7979 "gram.y" + case 1081: +#line 8057 "gram.y" { (yyval.boolean) = true; ;} break; - case 1071: -#line 7980 "gram.y" + case 1082: +#line 8058 "gram.y" { (yyval.boolean) = false; ;} break; - case 1072: -#line 7984 "gram.y" - { (yyval.str) = (yyvsp[(1) - (1)].str); ;} - break; - - case 1073: -#line 7985 "gram.y" - { (yyval.str) = NULL; ;} - break; - - case 1074: -#line 7989 "gram.y" + case 1083: +#line 8062 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 1075: -#line 7990 "gram.y" + case 1084: +#line 8063 "gram.y" { (yyval.str) = DEFAULT_INDEX_TYPE; ;} break; - case 1076: -#line 7993 "gram.y" + case 1085: +#line 8066 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].ielem)); ;} break; - case 1077: -#line 7994 "gram.y" + case 1086: +#line 8067 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].ielem)); ;} break; - case 1078: -#line 8000 "gram.y" + case 1087: +#line 8073 "gram.y" { (yyval.ielem) = makeNode(IndexElem); (yyval.ielem)->name = NULL; @@ -38188,8 +39288,8 @@ YYLTYPE yylloc; ;} break; - case 1079: -#line 8012 "gram.y" + case 1088: +#line 8085 "gram.y" { (yyval.ielem) = makeNode(IndexElem); (yyval.ielem)->name = NULL; @@ -38203,102 +39303,92 @@ YYLTYPE yylloc; ;} break; - case 1080: -#line 8031 "gram.y" + case 1089: +#line 8104 "gram.y" { (yyval.ielem) = (yyvsp[(2) - (2)].ielem); (yyval.ielem)->name = (yyvsp[(1) - (2)].str); ;} break; - case 1081: -#line 8036 "gram.y" + case 1090: +#line 8109 "gram.y" { (yyval.ielem) = (yyvsp[(2) - (2)].ielem); (yyval.ielem)->expr = (yyvsp[(1) - (2)].node); ;} break; - case 1082: -#line 8041 "gram.y" + case 1091: +#line 8114 "gram.y" { (yyval.ielem) = (yyvsp[(4) - (4)].ielem); (yyval.ielem)->expr = (yyvsp[(2) - (4)].node); ;} break; - case 1083: -#line 8047 "gram.y" + case 1092: +#line 8120 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1084: -#line 8048 "gram.y" + case 1093: +#line 8121 "gram.y" { (yyval.list) = NIL; ;} break; - case 1085: -#line 8051 "gram.y" + case 1094: +#line 8124 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].ielem)); ;} break; - case 1086: -#line 8052 "gram.y" + case 1095: +#line 8125 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].ielem)); ;} break; - case 1087: -#line 8055 "gram.y" + case 1096: +#line 8128 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1088: -#line 8056 "gram.y" - { (yyval.list) = NIL; ;} - break; - - case 1089: -#line 8059 "gram.y" - { (yyval.list) = (yyvsp[(1) - (1)].list); ;} - break; - - case 1090: -#line 8060 "gram.y" + case 1097: +#line 8129 "gram.y" { (yyval.list) = NIL; ;} break; - case 1091: -#line 8063 "gram.y" + case 1098: +#line 8133 "gram.y" { (yyval.ival) = SORTBY_ASC; ;} break; - case 1092: -#line 8064 "gram.y" + case 1099: +#line 8134 "gram.y" { (yyval.ival) = SORTBY_DESC; ;} break; - case 1093: -#line 8065 "gram.y" + case 1100: +#line 8135 "gram.y" { (yyval.ival) = SORTBY_DEFAULT; ;} break; - case 1094: -#line 8068 "gram.y" + case 1101: +#line 8138 "gram.y" { (yyval.ival) = SORTBY_NULLS_FIRST; ;} break; - case 1095: -#line 8069 "gram.y" + case 1102: +#line 8139 "gram.y" { (yyval.ival) = SORTBY_NULLS_LAST; ;} break; - case 1096: -#line 8070 "gram.y" + case 1103: +#line 8140 "gram.y" { (yyval.ival) = SORTBY_NULLS_DEFAULT; ;} break; - case 1097: -#line 8088 "gram.y" + case 1104: +#line 8158 "gram.y" { CreateFunctionStmt *n = makeNode(CreateFunctionStmt); @@ -38313,8 +39403,8 @@ YYLTYPE yylloc; ;} break; - case 1098: -#line 8102 "gram.y" + case 1105: +#line 8172 "gram.y" { CreateFunctionStmt *n = makeNode(CreateFunctionStmt); @@ -38330,8 +39420,8 @@ YYLTYPE yylloc; ;} break; - case 1099: -#line 8117 "gram.y" + case 1106: +#line 8187 "gram.y" { CreateFunctionStmt *n = makeNode(CreateFunctionStmt); @@ -38346,8 +39436,8 @@ YYLTYPE yylloc; ;} break; - case 1100: -#line 8131 "gram.y" + case 1107: +#line 8201 "gram.y" { CreateFunctionStmt *n = makeNode(CreateFunctionStmt); @@ -38362,48 +39452,48 @@ YYLTYPE yylloc; ;} break; - case 1101: -#line 8146 "gram.y" + case 1108: +#line 8216 "gram.y" { (yyval.boolean) = true; ;} break; - case 1102: -#line 8147 "gram.y" + case 1109: +#line 8217 "gram.y" { (yyval.boolean) = false; ;} break; - case 1103: -#line 8150 "gram.y" + case 1110: +#line 8220 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1104: -#line 8151 "gram.y" + case 1111: +#line 8221 "gram.y" { (yyval.list) = NIL; ;} break; - case 1105: -#line 8155 "gram.y" + case 1112: +#line 8225 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].fun_param)); ;} break; - case 1106: -#line 8156 "gram.y" + case 1113: +#line 8226 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].fun_param)); ;} break; - case 1107: -#line 8160 "gram.y" + case 1114: +#line 8230 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].objwithargs)); ;} break; - case 1108: -#line 8162 "gram.y" + case 1115: +#line 8232 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].objwithargs)); ;} break; - case 1109: -#line 8167 "gram.y" + case 1116: +#line 8237 "gram.y" { ObjectWithArgs *n = makeNode(ObjectWithArgs); @@ -38414,8 +39504,8 @@ YYLTYPE yylloc; ;} break; - case 1110: -#line 8181 "gram.y" + case 1117: +#line 8251 "gram.y" { ObjectWithArgs *n = makeNode(ObjectWithArgs); @@ -38425,8 +39515,8 @@ YYLTYPE yylloc; ;} break; - case 1111: -#line 8189 "gram.y" + case 1118: +#line 8259 "gram.y" { ObjectWithArgs *n = makeNode(ObjectWithArgs); @@ -38436,8 +39526,8 @@ YYLTYPE yylloc; ;} break; - case 1112: -#line 8197 "gram.y" + case 1119: +#line 8267 "gram.y" { ObjectWithArgs *n = makeNode(ObjectWithArgs); @@ -38448,28 +39538,28 @@ YYLTYPE yylloc; ;} break; - case 1113: -#line 8212 "gram.y" + case 1120: +#line 8282 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1114: -#line 8213 "gram.y" + case 1121: +#line 8283 "gram.y" { (yyval.list) = NIL; ;} break; - case 1115: -#line 8217 "gram.y" + case 1122: +#line 8287 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].fun_param)); ;} break; - case 1116: -#line 8219 "gram.y" + case 1123: +#line 8289 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].fun_param)); ;} break; - case 1117: -#line 8234 "gram.y" + case 1124: +#line 8304 "gram.y" { FunctionParameter *n = makeNode(FunctionParameter); @@ -38481,8 +39571,8 @@ YYLTYPE yylloc; ;} break; - case 1118: -#line 8244 "gram.y" + case 1125: +#line 8314 "gram.y" { FunctionParameter *n = makeNode(FunctionParameter); @@ -38494,8 +39584,8 @@ YYLTYPE yylloc; ;} break; - case 1119: -#line 8254 "gram.y" + case 1126: +#line 8324 "gram.y" { FunctionParameter *n = makeNode(FunctionParameter); @@ -38507,8 +39597,8 @@ YYLTYPE yylloc; ;} break; - case 1120: -#line 8264 "gram.y" + case 1127: +#line 8334 "gram.y" { FunctionParameter *n = makeNode(FunctionParameter); @@ -38520,8 +39610,8 @@ YYLTYPE yylloc; ;} break; - case 1121: -#line 8274 "gram.y" + case 1128: +#line 8344 "gram.y" { FunctionParameter *n = makeNode(FunctionParameter); @@ -38533,33 +39623,33 @@ YYLTYPE yylloc; ;} break; - case 1122: -#line 8286 "gram.y" + case 1129: +#line 8356 "gram.y" { (yyval.fun_param_mode) = FUNC_PARAM_IN; ;} break; - case 1123: -#line 8287 "gram.y" + case 1130: +#line 8357 "gram.y" { (yyval.fun_param_mode) = FUNC_PARAM_OUT; ;} break; - case 1124: -#line 8288 "gram.y" + case 1131: +#line 8358 "gram.y" { (yyval.fun_param_mode) = FUNC_PARAM_INOUT; ;} break; - case 1125: -#line 8289 "gram.y" + case 1132: +#line 8359 "gram.y" { (yyval.fun_param_mode) = FUNC_PARAM_INOUT; ;} break; - case 1126: -#line 8290 "gram.y" + case 1133: +#line 8360 "gram.y" { (yyval.fun_param_mode) = FUNC_PARAM_VARIADIC; ;} break; - case 1128: -#line 8301 "gram.y" + case 1135: +#line 8371 "gram.y" { /* We can catch over-specified results here if we want to, * but for now better to silently swallow typmod, etc. @@ -38569,13 +39659,13 @@ YYLTYPE yylloc; ;} break; - case 1129: -#line 8315 "gram.y" + case 1136: +#line 8385 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1130: -#line 8317 "gram.y" + case 1137: +#line 8387 "gram.y" { (yyval.typnam) = makeTypeNameFromNameList(lcons(makeString((yyvsp[(1) - (4)].str)), (yyvsp[(2) - (4)].list))); (yyval.typnam)->pct_type = true; @@ -38583,8 +39673,8 @@ YYLTYPE yylloc; ;} break; - case 1131: -#line 8323 "gram.y" + case 1138: +#line 8393 "gram.y" { (yyval.typnam) = makeTypeNameFromNameList(lcons(makeString((yyvsp[(2) - (5)].str)), (yyvsp[(3) - (5)].list))); (yyval.typnam)->pct_type = true; @@ -38593,31 +39683,31 @@ YYLTYPE yylloc; ;} break; - case 1132: -#line 8333 "gram.y" + case 1139: +#line 8403 "gram.y" { (yyval.fun_param) = (yyvsp[(1) - (1)].fun_param); ;} break; - case 1133: -#line 8337 "gram.y" + case 1140: +#line 8407 "gram.y" { (yyval.fun_param) = (yyvsp[(1) - (3)].fun_param); (yyval.fun_param)->defexpr = (yyvsp[(3) - (3)].node); ;} break; - case 1134: -#line 8342 "gram.y" + case 1141: +#line 8412 "gram.y" { (yyval.fun_param) = (yyvsp[(1) - (3)].fun_param); (yyval.fun_param)->defexpr = (yyvsp[(3) - (3)].node); ;} break; - case 1135: -#line 8350 "gram.y" + case 1142: +#line 8420 "gram.y" { if (!((yyvsp[(1) - (1)].fun_param)->mode == FUNC_PARAM_DEFAULT || (yyvsp[(1) - (1)].fun_param)->mode == FUNC_PARAM_IN || @@ -38630,47 +39720,47 @@ YYLTYPE yylloc; ;} break; - case 1136: -#line 8392 "gram.y" + case 1143: +#line 8462 "gram.y" { (yyval.list) = list_make2(NIL, makeInteger(-1)); ;} break; - case 1137: -#line 8396 "gram.y" + case 1144: +#line 8466 "gram.y" { (yyval.list) = list_make2((yyvsp[(2) - (3)].list), makeInteger(-1)); ;} break; - case 1138: -#line 8400 "gram.y" + case 1145: +#line 8470 "gram.y" { (yyval.list) = list_make2((yyvsp[(4) - (5)].list), makeInteger(0)); ;} break; - case 1139: -#line 8404 "gram.y" + case 1146: +#line 8474 "gram.y" { /* this is the only case requiring consistency checking */ (yyval.list) = makeOrderedSetArgs((yyvsp[(2) - (6)].list), (yyvsp[(5) - (6)].list), yyscanner); ;} break; - case 1140: -#line 8411 "gram.y" + case 1147: +#line 8481 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].fun_param)); ;} break; - case 1141: -#line 8412 "gram.y" + case 1148: +#line 8482 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].fun_param)); ;} break; - case 1142: -#line 8417 "gram.y" + case 1149: +#line 8487 "gram.y" { ObjectWithArgs *n = makeNode(ObjectWithArgs); @@ -38681,200 +39771,200 @@ YYLTYPE yylloc; ;} break; - case 1143: -#line 8428 "gram.y" + case 1150: +#line 8498 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].objwithargs)); ;} break; - case 1144: -#line 8430 "gram.y" + case 1151: +#line 8500 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].objwithargs)); ;} break; - case 1146: -#line 8435 "gram.y" + case 1153: +#line 8505 "gram.y" { (yyval.list) = NIL; ;} break; - case 1147: -#line 8440 "gram.y" + case 1154: +#line 8510 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1148: -#line 8441 "gram.y" + case 1155: +#line 8511 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 1149: -#line 8449 "gram.y" + case 1156: +#line 8519 "gram.y" { (yyval.defelt) = makeDefElem("strict", (Node *) makeBoolean(false), (yylsp[(1) - (4)])); ;} break; - case 1150: -#line 8453 "gram.y" + case 1157: +#line 8523 "gram.y" { (yyval.defelt) = makeDefElem("strict", (Node *) makeBoolean(true), (yylsp[(1) - (5)])); ;} break; - case 1151: -#line 8457 "gram.y" + case 1158: +#line 8527 "gram.y" { (yyval.defelt) = makeDefElem("strict", (Node *) makeBoolean(true), (yylsp[(1) - (1)])); ;} break; - case 1152: -#line 8461 "gram.y" + case 1159: +#line 8531 "gram.y" { (yyval.defelt) = makeDefElem("volatility", (Node *) makeString("immutable"), (yylsp[(1) - (1)])); ;} break; - case 1153: -#line 8465 "gram.y" + case 1160: +#line 8535 "gram.y" { (yyval.defelt) = makeDefElem("volatility", (Node *) makeString("stable"), (yylsp[(1) - (1)])); ;} break; - case 1154: -#line 8469 "gram.y" + case 1161: +#line 8539 "gram.y" { (yyval.defelt) = makeDefElem("volatility", (Node *) makeString("volatile"), (yylsp[(1) - (1)])); ;} break; - case 1155: -#line 8473 "gram.y" + case 1162: +#line 8543 "gram.y" { (yyval.defelt) = makeDefElem("security", (Node *) makeBoolean(true), (yylsp[(1) - (3)])); ;} break; - case 1156: -#line 8477 "gram.y" + case 1163: +#line 8547 "gram.y" { (yyval.defelt) = makeDefElem("security", (Node *) makeBoolean(false), (yylsp[(1) - (3)])); ;} break; - case 1157: -#line 8481 "gram.y" + case 1164: +#line 8551 "gram.y" { (yyval.defelt) = makeDefElem("security", (Node *) makeBoolean(true), (yylsp[(1) - (2)])); ;} break; - case 1158: -#line 8485 "gram.y" + case 1165: +#line 8555 "gram.y" { (yyval.defelt) = makeDefElem("security", (Node *) makeBoolean(false), (yylsp[(1) - (2)])); ;} break; - case 1159: -#line 8489 "gram.y" + case 1166: +#line 8559 "gram.y" { (yyval.defelt) = makeDefElem("leakproof", (Node *) makeBoolean(true), (yylsp[(1) - (1)])); ;} break; - case 1160: -#line 8493 "gram.y" + case 1167: +#line 8563 "gram.y" { (yyval.defelt) = makeDefElem("leakproof", (Node *) makeBoolean(false), (yylsp[(1) - (2)])); ;} break; - case 1161: -#line 8497 "gram.y" + case 1168: +#line 8567 "gram.y" { (yyval.defelt) = makeDefElem("cost", (Node *) (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1162: -#line 8501 "gram.y" + case 1169: +#line 8571 "gram.y" { (yyval.defelt) = makeDefElem("rows", (Node *) (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1163: -#line 8505 "gram.y" + case 1170: +#line 8575 "gram.y" { (yyval.defelt) = makeDefElem("support", (Node *) (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)])); ;} break; - case 1164: -#line 8509 "gram.y" + case 1171: +#line 8579 "gram.y" { /* we abuse the normal content of a DefElem here */ (yyval.defelt) = makeDefElem("set", (Node *) (yyvsp[(1) - (1)].vsetstmt), (yylsp[(1) - (1)])); ;} break; - case 1165: -#line 8514 "gram.y" + case 1172: +#line 8584 "gram.y" { (yyval.defelt) = makeDefElem("parallel", (Node *) makeString((yyvsp[(2) - (2)].str)), (yylsp[(1) - (2)])); ;} break; - case 1166: -#line 8521 "gram.y" + case 1173: +#line 8591 "gram.y" { (yyval.defelt) = makeDefElem("as", (Node *) (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)])); ;} break; - case 1167: -#line 8525 "gram.y" + case 1174: +#line 8595 "gram.y" { (yyval.defelt) = makeDefElem("language", (Node *) makeString((yyvsp[(2) - (2)].str)), (yylsp[(1) - (2)])); ;} break; - case 1168: -#line 8529 "gram.y" + case 1175: +#line 8599 "gram.y" { (yyval.defelt) = makeDefElem("transform", (Node *) (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)])); ;} break; - case 1169: -#line 8533 "gram.y" + case 1176: +#line 8603 "gram.y" { (yyval.defelt) = makeDefElem("window", (Node *) makeBoolean(true), (yylsp[(1) - (1)])); ;} break; - case 1170: -#line 8537 "gram.y" + case 1177: +#line 8607 "gram.y" { (yyval.defelt) = (yyvsp[(1) - (1)].defelt); ;} break; - case 1171: -#line 8542 "gram.y" + case 1178: +#line 8612 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 1172: -#line 8544 "gram.y" + case 1179: +#line 8614 "gram.y" { (yyval.list) = list_make2(makeString((yyvsp[(1) - (3)].str)), makeString((yyvsp[(3) - (3)].str))); ;} break; - case 1173: -#line 8550 "gram.y" + case 1180: +#line 8620 "gram.y" { ReturnStmt *r = makeNode(ReturnStmt); @@ -38883,15 +39973,15 @@ YYLTYPE yylloc; ;} break; - case 1174: -#line 8560 "gram.y" + case 1181: +#line 8630 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1175: -#line 8564 "gram.y" + case 1182: +#line 8634 "gram.y" { /* * A compound statement is stored as a single-item list @@ -38903,15 +39993,15 @@ YYLTYPE yylloc; ;} break; - case 1176: -#line 8574 "gram.y" + case 1183: +#line 8644 "gram.y" { (yyval.node) = NULL; ;} break; - case 1177: -#line 8581 "gram.y" + case 1184: +#line 8651 "gram.y" { /* As in stmtmulti, discard empty statements */ if ((yyvsp[(2) - (3)].node) != NULL) @@ -38921,35 +40011,35 @@ YYLTYPE yylloc; ;} break; - case 1178: -#line 8589 "gram.y" + case 1185: +#line 8659 "gram.y" { (yyval.list) = NIL; ;} break; - case 1181: -#line 8600 "gram.y" + case 1188: +#line 8670 "gram.y" { (yyval.list) = list_make1((yyvsp[(3) - (3)].typnam)); ;} break; - case 1182: -#line 8601 "gram.y" + case 1189: +#line 8671 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (5)].list), (yyvsp[(5) - (5)].typnam)); ;} break; - case 1183: -#line 8605 "gram.y" + case 1190: +#line 8675 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1184: -#line 8606 "gram.y" + case 1191: +#line 8676 "gram.y" { (yyval.list) = NIL; ;} break; - case 1185: -#line 8610 "gram.y" + case 1192: +#line 8680 "gram.y" { FunctionParameter *n = makeNode(FunctionParameter); @@ -38961,22 +40051,22 @@ YYLTYPE yylloc; ;} break; - case 1186: -#line 8623 "gram.y" + case 1193: +#line 8693 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].fun_param)); ;} break; - case 1187: -#line 8627 "gram.y" + case 1194: +#line 8697 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].fun_param)); ;} break; - case 1188: -#line 8642 "gram.y" + case 1195: +#line 8712 "gram.y" { AlterFunctionStmt *n = makeNode(AlterFunctionStmt); @@ -38987,8 +40077,8 @@ YYLTYPE yylloc; ;} break; - case 1189: -#line 8651 "gram.y" + case 1196: +#line 8721 "gram.y" { AlterFunctionStmt *n = makeNode(AlterFunctionStmt); @@ -38999,8 +40089,8 @@ YYLTYPE yylloc; ;} break; - case 1190: -#line 8660 "gram.y" + case 1197: +#line 8730 "gram.y" { AlterFunctionStmt *n = makeNode(AlterFunctionStmt); @@ -39011,18 +40101,18 @@ YYLTYPE yylloc; ;} break; - case 1191: -#line 8672 "gram.y" + case 1198: +#line 8742 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1192: -#line 8673 "gram.y" + case 1199: +#line 8743 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 1195: -#line 8697 "gram.y" + case 1202: +#line 8767 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39035,8 +40125,8 @@ YYLTYPE yylloc; ;} break; - case 1196: -#line 8708 "gram.y" + case 1203: +#line 8778 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39049,8 +40139,8 @@ YYLTYPE yylloc; ;} break; - case 1197: -#line 8719 "gram.y" + case 1204: +#line 8789 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39063,8 +40153,8 @@ YYLTYPE yylloc; ;} break; - case 1198: -#line 8730 "gram.y" + case 1205: +#line 8800 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39077,8 +40167,8 @@ YYLTYPE yylloc; ;} break; - case 1199: -#line 8741 "gram.y" + case 1206: +#line 8811 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39091,8 +40181,8 @@ YYLTYPE yylloc; ;} break; - case 1200: -#line 8752 "gram.y" + case 1207: +#line 8822 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39105,8 +40195,8 @@ YYLTYPE yylloc; ;} break; - case 1201: -#line 8766 "gram.y" + case 1208: +#line 8836 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39119,8 +40209,8 @@ YYLTYPE yylloc; ;} break; - case 1202: -#line 8777 "gram.y" + case 1209: +#line 8847 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39133,8 +40223,8 @@ YYLTYPE yylloc; ;} break; - case 1203: -#line 8791 "gram.y" + case 1210: +#line 8861 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39147,8 +40237,8 @@ YYLTYPE yylloc; ;} break; - case 1204: -#line 8802 "gram.y" + case 1211: +#line 8872 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39161,8 +40251,8 @@ YYLTYPE yylloc; ;} break; - case 1205: -#line 8816 "gram.y" + case 1212: +#line 8886 "gram.y" { ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), @@ -39172,43 +40262,43 @@ YYLTYPE yylloc; ;} break; - case 1206: -#line 8824 "gram.y" + case 1213: +#line 8894 "gram.y" { (yyval.list) = list_make2((yyvsp[(2) - (5)].typnam), (yyvsp[(4) - (5)].typnam)); ;} break; - case 1207: -#line 8826 "gram.y" + case 1214: +#line 8896 "gram.y" { (yyval.list) = list_make2(NULL, (yyvsp[(4) - (5)].typnam)); ;} break; - case 1208: -#line 8828 "gram.y" + case 1215: +#line 8898 "gram.y" { (yyval.list) = list_make2((yyvsp[(2) - (5)].typnam), NULL); ;} break; - case 1209: -#line 8833 "gram.y" + case 1216: +#line 8903 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 1210: -#line 8835 "gram.y" + case 1217: +#line 8905 "gram.y" { (yyval.list) = lcons(makeString((yyvsp[(1) - (3)].str)), (yyvsp[(3) - (3)].list)); ;} break; - case 1211: -#line 8839 "gram.y" + case 1218: +#line 8909 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].objwithargs)); ;} break; - case 1212: -#line 8841 "gram.y" + case 1219: +#line 8911 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].objwithargs)); ;} break; - case 1213: -#line 8846 "gram.y" + case 1220: +#line 8916 "gram.y" { ObjectWithArgs *n = makeNode(ObjectWithArgs); @@ -39218,8 +40308,8 @@ YYLTYPE yylloc; ;} break; - case 1214: -#line 8865 "gram.y" + case 1221: +#line 8935 "gram.y" { DoStmt *n = makeNode(DoStmt); @@ -39228,32 +40318,32 @@ YYLTYPE yylloc; ;} break; - case 1215: -#line 8874 "gram.y" + case 1222: +#line 8944 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1216: -#line 8875 "gram.y" + case 1223: +#line 8945 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 1217: -#line 8880 "gram.y" + case 1224: +#line 8950 "gram.y" { (yyval.defelt) = makeDefElem("as", (Node *) makeString((yyvsp[(1) - (1)].str)), (yylsp[(1) - (1)])); ;} break; - case 1218: -#line 8884 "gram.y" + case 1225: +#line 8954 "gram.y" { (yyval.defelt) = makeDefElem("language", (Node *) makeString((yyvsp[(2) - (2)].str)), (yylsp[(1) - (2)])); ;} break; - case 1219: -#line 8897 "gram.y" + case 1226: +#line 8967 "gram.y" { CreateCastStmt *n = makeNode(CreateCastStmt); @@ -39266,8 +40356,8 @@ YYLTYPE yylloc; ;} break; - case 1220: -#line 8909 "gram.y" + case 1227: +#line 8979 "gram.y" { CreateCastStmt *n = makeNode(CreateCastStmt); @@ -39280,8 +40370,8 @@ YYLTYPE yylloc; ;} break; - case 1221: -#line 8921 "gram.y" + case 1228: +#line 8991 "gram.y" { CreateCastStmt *n = makeNode(CreateCastStmt); @@ -39294,23 +40384,23 @@ YYLTYPE yylloc; ;} break; - case 1222: -#line 8933 "gram.y" + case 1229: +#line 9003 "gram.y" { (yyval.ival) = COERCION_IMPLICIT; ;} break; - case 1223: -#line 8934 "gram.y" + case 1230: +#line 9004 "gram.y" { (yyval.ival) = COERCION_ASSIGNMENT; ;} break; - case 1224: -#line 8935 "gram.y" + case 1231: +#line 9005 "gram.y" { (yyval.ival) = COERCION_EXPLICIT; ;} break; - case 1225: -#line 8940 "gram.y" + case 1232: +#line 9010 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39323,18 +40413,18 @@ YYLTYPE yylloc; ;} break; - case 1226: -#line 8952 "gram.y" + case 1233: +#line 9022 "gram.y" { (yyval.boolean) = true; ;} break; - case 1227: -#line 8953 "gram.y" + case 1234: +#line 9023 "gram.y" { (yyval.boolean) = false; ;} break; - case 1228: -#line 8964 "gram.y" + case 1235: +#line 9034 "gram.y" { CreateTransformStmt *n = makeNode(CreateTransformStmt); @@ -39347,36 +40437,36 @@ YYLTYPE yylloc; ;} break; - case 1229: -#line 8977 "gram.y" + case 1236: +#line 9047 "gram.y" { (yyval.list) = list_make2((yyvsp[(5) - (11)].objwithargs), (yyvsp[(11) - (11)].objwithargs)); ;} break; - case 1230: -#line 8981 "gram.y" + case 1237: +#line 9051 "gram.y" { (yyval.list) = list_make2((yyvsp[(11) - (11)].objwithargs), (yyvsp[(5) - (11)].objwithargs)); ;} break; - case 1231: -#line 8985 "gram.y" + case 1238: +#line 9055 "gram.y" { (yyval.list) = list_make2((yyvsp[(5) - (5)].objwithargs), NULL); ;} break; - case 1232: -#line 8989 "gram.y" + case 1239: +#line 9059 "gram.y" { (yyval.list) = list_make2(NULL, (yyvsp[(5) - (5)].objwithargs)); ;} break; - case 1233: -#line 8996 "gram.y" + case 1240: +#line 9066 "gram.y" { DropStmt *n = makeNode(DropStmt); @@ -39388,97 +40478,86 @@ YYLTYPE yylloc; ;} break; - case 1234: -#line 9017 "gram.y" + case 1241: +#line 9088 "gram.y" { ReindexStmt *n = makeNode(ReindexStmt); - n->kind = (yyvsp[(2) - (4)].ival); - n->relation = (yyvsp[(4) - (4)].range); + n->kind = (yyvsp[(3) - (5)].ival); + n->relation = (yyvsp[(5) - (5)].range); n->name = NULL; - n->params = NIL; - if ((yyvsp[(3) - (4)].boolean)) + n->params = (yyvsp[(2) - (5)].list); + if ((yyvsp[(4) - (5)].boolean)) n->params = lappend(n->params, - makeDefElem("concurrently", NULL, (yylsp[(3) - (4)]))); + makeDefElem("concurrently", NULL, (yylsp[(4) - (5)]))); (yyval.node) = (Node *) n; ;} break; - case 1235: -#line 9030 "gram.y" + case 1242: +#line 9101 "gram.y" { ReindexStmt *n = makeNode(ReindexStmt); - n->kind = (yyvsp[(2) - (4)].ival); - n->name = (yyvsp[(4) - (4)].str); + n->kind = REINDEX_OBJECT_SCHEMA; n->relation = NULL; - n->params = NIL; - if ((yyvsp[(3) - (4)].boolean)) - n->params = lappend(n->params, - makeDefElem("concurrently", NULL, (yylsp[(3) - (4)]))); - (yyval.node) = (Node *) n; - ;} - break; - - case 1236: -#line 9043 "gram.y" - { - ReindexStmt *n = makeNode(ReindexStmt); - - n->kind = (yyvsp[(5) - (7)].ival); - n->relation = (yyvsp[(7) - (7)].range); - n->name = NULL; - n->params = (yyvsp[(3) - (7)].list); - if ((yyvsp[(6) - (7)].boolean)) + n->name = (yyvsp[(5) - (5)].str); + n->params = (yyvsp[(2) - (5)].list); + if ((yyvsp[(4) - (5)].boolean)) n->params = lappend(n->params, - makeDefElem("concurrently", NULL, (yylsp[(6) - (7)]))); + makeDefElem("concurrently", NULL, (yylsp[(4) - (5)]))); (yyval.node) = (Node *) n; ;} break; - case 1237: -#line 9056 "gram.y" + case 1243: +#line 9114 "gram.y" { ReindexStmt *n = makeNode(ReindexStmt); - n->kind = (yyvsp[(5) - (7)].ival); - n->name = (yyvsp[(7) - (7)].str); + n->kind = (yyvsp[(3) - (5)].ival); n->relation = NULL; - n->params = (yyvsp[(3) - (7)].list); - if ((yyvsp[(6) - (7)].boolean)) + n->name = (yyvsp[(5) - (5)].str); + n->params = (yyvsp[(2) - (5)].list); + if ((yyvsp[(4) - (5)].boolean)) n->params = lappend(n->params, - makeDefElem("concurrently", NULL, (yylsp[(6) - (7)]))); + makeDefElem("concurrently", NULL, (yylsp[(4) - (5)]))); (yyval.node) = (Node *) n; ;} break; - case 1238: -#line 9070 "gram.y" + case 1244: +#line 9128 "gram.y" { (yyval.ival) = REINDEX_OBJECT_INDEX; ;} break; - case 1239: -#line 9071 "gram.y" + case 1245: +#line 9129 "gram.y" { (yyval.ival) = REINDEX_OBJECT_TABLE; ;} break; - case 1240: -#line 9074 "gram.y" - { (yyval.ival) = REINDEX_OBJECT_SCHEMA; ;} - break; - - case 1241: -#line 9075 "gram.y" + case 1246: +#line 9132 "gram.y" { (yyval.ival) = REINDEX_OBJECT_SYSTEM; ;} break; - case 1242: -#line 9076 "gram.y" + case 1247: +#line 9133 "gram.y" { (yyval.ival) = REINDEX_OBJECT_DATABASE; ;} break; - case 1243: -#line 9087 "gram.y" + case 1248: +#line 9136 "gram.y" + { (yyval.list) = (yyvsp[(2) - (3)].list); ;} + break; + + case 1249: +#line 9137 "gram.y" + { (yyval.list) = NULL; ;} + break; + + case 1250: +#line 9148 "gram.y" { AlterTableSpaceOptionsStmt *n = makeNode(AlterTableSpaceOptionsStmt); @@ -39490,8 +40569,8 @@ YYLTYPE yylloc; ;} break; - case 1244: -#line 9097 "gram.y" + case 1251: +#line 9158 "gram.y" { AlterTableSpaceOptionsStmt *n = makeNode(AlterTableSpaceOptionsStmt); @@ -39503,8 +40582,8 @@ YYLTYPE yylloc; ;} break; - case 1245: -#line 9115 "gram.y" + case 1252: +#line 9176 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39516,8 +40595,8 @@ YYLTYPE yylloc; ;} break; - case 1246: -#line 9125 "gram.y" + case 1253: +#line 9186 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39529,8 +40608,8 @@ YYLTYPE yylloc; ;} break; - case 1247: -#line 9135 "gram.y" + case 1254: +#line 9196 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39542,8 +40621,8 @@ YYLTYPE yylloc; ;} break; - case 1248: -#line 9145 "gram.y" + case 1255: +#line 9206 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39555,8 +40634,8 @@ YYLTYPE yylloc; ;} break; - case 1249: -#line 9155 "gram.y" + case 1256: +#line 9216 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39568,8 +40647,8 @@ YYLTYPE yylloc; ;} break; - case 1250: -#line 9165 "gram.y" + case 1257: +#line 9226 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39581,8 +40660,8 @@ YYLTYPE yylloc; ;} break; - case 1251: -#line 9175 "gram.y" + case 1258: +#line 9236 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39594,8 +40673,8 @@ YYLTYPE yylloc; ;} break; - case 1252: -#line 9185 "gram.y" + case 1259: +#line 9246 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39607,8 +40686,8 @@ YYLTYPE yylloc; ;} break; - case 1253: -#line 9195 "gram.y" + case 1260: +#line 9256 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39620,8 +40699,8 @@ YYLTYPE yylloc; ;} break; - case 1254: -#line 9205 "gram.y" + case 1261: +#line 9266 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39633,8 +40712,8 @@ YYLTYPE yylloc; ;} break; - case 1255: -#line 9215 "gram.y" + case 1262: +#line 9276 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39646,8 +40725,8 @@ YYLTYPE yylloc; ;} break; - case 1256: -#line 9225 "gram.y" + case 1263: +#line 9286 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39659,8 +40738,8 @@ YYLTYPE yylloc; ;} break; - case 1257: -#line 9235 "gram.y" + case 1264: +#line 9296 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39673,8 +40752,8 @@ YYLTYPE yylloc; ;} break; - case 1258: -#line 9246 "gram.y" + case 1265: +#line 9307 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39687,8 +40766,8 @@ YYLTYPE yylloc; ;} break; - case 1259: -#line 9257 "gram.y" + case 1266: +#line 9318 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39700,8 +40779,8 @@ YYLTYPE yylloc; ;} break; - case 1260: -#line 9267 "gram.y" + case 1267: +#line 9328 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39713,8 +40792,8 @@ YYLTYPE yylloc; ;} break; - case 1261: -#line 9277 "gram.y" + case 1268: +#line 9338 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39726,8 +40805,8 @@ YYLTYPE yylloc; ;} break; - case 1262: -#line 9287 "gram.y" + case 1269: +#line 9348 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39739,8 +40818,8 @@ YYLTYPE yylloc; ;} break; - case 1263: -#line 9297 "gram.y" + case 1270: +#line 9358 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39752,8 +40831,8 @@ YYLTYPE yylloc; ;} break; - case 1264: -#line 9307 "gram.y" + case 1271: +#line 9368 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39765,8 +40844,8 @@ YYLTYPE yylloc; ;} break; - case 1265: -#line 9317 "gram.y" + case 1272: +#line 9378 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39779,8 +40858,8 @@ YYLTYPE yylloc; ;} break; - case 1266: -#line 9328 "gram.y" + case 1273: +#line 9389 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39793,8 +40872,8 @@ YYLTYPE yylloc; ;} break; - case 1267: -#line 9339 "gram.y" + case 1274: +#line 9400 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39807,8 +40886,8 @@ YYLTYPE yylloc; ;} break; - case 1268: -#line 9350 "gram.y" + case 1275: +#line 9411 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39821,8 +40900,8 @@ YYLTYPE yylloc; ;} break; - case 1269: -#line 9361 "gram.y" + case 1276: +#line 9422 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39835,8 +40914,8 @@ YYLTYPE yylloc; ;} break; - case 1270: -#line 9372 "gram.y" + case 1277: +#line 9433 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39849,8 +40928,8 @@ YYLTYPE yylloc; ;} break; - case 1271: -#line 9383 "gram.y" + case 1278: +#line 9444 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39863,8 +40942,8 @@ YYLTYPE yylloc; ;} break; - case 1272: -#line 9394 "gram.y" + case 1279: +#line 9455 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39877,8 +40956,8 @@ YYLTYPE yylloc; ;} break; - case 1273: -#line 9405 "gram.y" + case 1280: +#line 9466 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39891,8 +40970,8 @@ YYLTYPE yylloc; ;} break; - case 1274: -#line 9416 "gram.y" + case 1281: +#line 9477 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39905,8 +40984,8 @@ YYLTYPE yylloc; ;} break; - case 1275: -#line 9427 "gram.y" + case 1282: +#line 9488 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39919,8 +40998,8 @@ YYLTYPE yylloc; ;} break; - case 1276: -#line 9438 "gram.y" + case 1283: +#line 9499 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39933,8 +41012,8 @@ YYLTYPE yylloc; ;} break; - case 1277: -#line 9449 "gram.y" + case 1284: +#line 9510 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39948,8 +41027,8 @@ YYLTYPE yylloc; ;} break; - case 1278: -#line 9461 "gram.y" + case 1285: +#line 9522 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39963,8 +41042,8 @@ YYLTYPE yylloc; ;} break; - case 1279: -#line 9473 "gram.y" + case 1286: +#line 9534 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39978,8 +41057,8 @@ YYLTYPE yylloc; ;} break; - case 1280: -#line 9485 "gram.y" + case 1287: +#line 9546 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -39993,8 +41072,8 @@ YYLTYPE yylloc; ;} break; - case 1281: -#line 9497 "gram.y" + case 1288: +#line 9558 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40008,8 +41087,8 @@ YYLTYPE yylloc; ;} break; - case 1282: -#line 9509 "gram.y" + case 1289: +#line 9570 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40023,8 +41102,8 @@ YYLTYPE yylloc; ;} break; - case 1283: -#line 9521 "gram.y" + case 1290: +#line 9582 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40037,8 +41116,8 @@ YYLTYPE yylloc; ;} break; - case 1284: -#line 9532 "gram.y" + case 1291: +#line 9593 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40051,8 +41130,8 @@ YYLTYPE yylloc; ;} break; - case 1285: -#line 9543 "gram.y" + case 1292: +#line 9604 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40066,8 +41145,8 @@ YYLTYPE yylloc; ;} break; - case 1286: -#line 9555 "gram.y" + case 1293: +#line 9616 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40081,8 +41160,8 @@ YYLTYPE yylloc; ;} break; - case 1287: -#line 9567 "gram.y" + case 1294: +#line 9628 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40095,8 +41174,8 @@ YYLTYPE yylloc; ;} break; - case 1288: -#line 9578 "gram.y" + case 1295: +#line 9639 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40109,8 +41188,8 @@ YYLTYPE yylloc; ;} break; - case 1289: -#line 9589 "gram.y" + case 1296: +#line 9650 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40121,8 +41200,8 @@ YYLTYPE yylloc; ;} break; - case 1290: -#line 9598 "gram.y" + case 1297: +#line 9659 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40134,8 +41213,8 @@ YYLTYPE yylloc; ;} break; - case 1291: -#line 9608 "gram.y" + case 1298: +#line 9669 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40147,8 +41226,8 @@ YYLTYPE yylloc; ;} break; - case 1292: -#line 9618 "gram.y" + case 1299: +#line 9679 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40160,8 +41239,8 @@ YYLTYPE yylloc; ;} break; - case 1293: -#line 9628 "gram.y" + case 1300: +#line 9689 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40173,8 +41252,8 @@ YYLTYPE yylloc; ;} break; - case 1294: -#line 9638 "gram.y" + case 1301: +#line 9699 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40186,8 +41265,8 @@ YYLTYPE yylloc; ;} break; - case 1295: -#line 9648 "gram.y" + case 1302: +#line 9709 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40199,8 +41278,8 @@ YYLTYPE yylloc; ;} break; - case 1296: -#line 9658 "gram.y" + case 1303: +#line 9719 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40212,8 +41291,8 @@ YYLTYPE yylloc; ;} break; - case 1297: -#line 9668 "gram.y" + case 1304: +#line 9729 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40225,8 +41304,8 @@ YYLTYPE yylloc; ;} break; - case 1298: -#line 9678 "gram.y" + case 1305: +#line 9739 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40238,8 +41317,8 @@ YYLTYPE yylloc; ;} break; - case 1299: -#line 9688 "gram.y" + case 1306: +#line 9749 "gram.y" { RenameStmt *n = makeNode(RenameStmt); @@ -40254,18 +41333,18 @@ YYLTYPE yylloc; ;} break; - case 1302: -#line 9706 "gram.y" + case 1309: +#line 9767 "gram.y" { (yyval.ival) = 1; ;} break; - case 1303: -#line 9707 "gram.y" + case 1310: +#line 9768 "gram.y" { (yyval.ival) = 0; ;} break; - case 1304: -#line 9718 "gram.y" + case 1311: +#line 9779 "gram.y" { AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt); @@ -40277,8 +41356,8 @@ YYLTYPE yylloc; ;} break; - case 1305: -#line 9728 "gram.y" + case 1312: +#line 9789 "gram.y" { AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt); @@ -40290,8 +41369,8 @@ YYLTYPE yylloc; ;} break; - case 1306: -#line 9738 "gram.y" + case 1313: +#line 9799 "gram.y" { AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt); @@ -40303,8 +41382,8 @@ YYLTYPE yylloc; ;} break; - case 1307: -#line 9748 "gram.y" + case 1314: +#line 9809 "gram.y" { AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt); @@ -40317,8 +41396,8 @@ YYLTYPE yylloc; ;} break; - case 1308: -#line 9759 "gram.y" + case 1315: +#line 9820 "gram.y" { AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt); @@ -40330,8 +41409,8 @@ YYLTYPE yylloc; ;} break; - case 1309: -#line 9769 "gram.y" + case 1316: +#line 9830 "gram.y" { AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt); @@ -40343,18 +41422,18 @@ YYLTYPE yylloc; ;} break; - case 1310: -#line 9780 "gram.y" + case 1317: +#line 9841 "gram.y" { (yyval.boolean) = true; ;} break; - case 1311: -#line 9781 "gram.y" + case 1318: +#line 9842 "gram.y" { (yyval.boolean) = false; ;} break; - case 1312: -#line 9792 "gram.y" + case 1319: +#line 9853 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40366,8 +41445,8 @@ YYLTYPE yylloc; ;} break; - case 1313: -#line 9802 "gram.y" + case 1320: +#line 9863 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40379,8 +41458,8 @@ YYLTYPE yylloc; ;} break; - case 1314: -#line 9812 "gram.y" + case 1321: +#line 9873 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40392,8 +41471,8 @@ YYLTYPE yylloc; ;} break; - case 1315: -#line 9822 "gram.y" + case 1322: +#line 9883 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40405,8 +41484,8 @@ YYLTYPE yylloc; ;} break; - case 1316: -#line 9832 "gram.y" + case 1323: +#line 9893 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40418,8 +41497,8 @@ YYLTYPE yylloc; ;} break; - case 1317: -#line 9842 "gram.y" + case 1324: +#line 9903 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40431,8 +41510,8 @@ YYLTYPE yylloc; ;} break; - case 1318: -#line 9852 "gram.y" + case 1325: +#line 9913 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40444,8 +41523,8 @@ YYLTYPE yylloc; ;} break; - case 1319: -#line 9862 "gram.y" + case 1326: +#line 9923 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40457,8 +41536,8 @@ YYLTYPE yylloc; ;} break; - case 1320: -#line 9872 "gram.y" + case 1327: +#line 9933 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40470,8 +41549,8 @@ YYLTYPE yylloc; ;} break; - case 1321: -#line 9882 "gram.y" + case 1328: +#line 9943 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40483,8 +41562,8 @@ YYLTYPE yylloc; ;} break; - case 1322: -#line 9892 "gram.y" + case 1329: +#line 9953 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40496,8 +41575,8 @@ YYLTYPE yylloc; ;} break; - case 1323: -#line 9902 "gram.y" + case 1330: +#line 9963 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40509,8 +41588,8 @@ YYLTYPE yylloc; ;} break; - case 1324: -#line 9912 "gram.y" + case 1331: +#line 9973 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40522,8 +41601,8 @@ YYLTYPE yylloc; ;} break; - case 1325: -#line 9922 "gram.y" + case 1332: +#line 9983 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40535,8 +41614,8 @@ YYLTYPE yylloc; ;} break; - case 1326: -#line 9932 "gram.y" + case 1333: +#line 9993 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40548,8 +41627,8 @@ YYLTYPE yylloc; ;} break; - case 1327: -#line 9942 "gram.y" + case 1334: +#line 10003 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40561,8 +41640,8 @@ YYLTYPE yylloc; ;} break; - case 1328: -#line 9952 "gram.y" + case 1335: +#line 10013 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40574,8 +41653,8 @@ YYLTYPE yylloc; ;} break; - case 1329: -#line 9962 "gram.y" + case 1336: +#line 10023 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40587,8 +41666,8 @@ YYLTYPE yylloc; ;} break; - case 1330: -#line 9972 "gram.y" + case 1337: +#line 10033 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40600,8 +41679,8 @@ YYLTYPE yylloc; ;} break; - case 1331: -#line 9982 "gram.y" + case 1338: +#line 10043 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40613,8 +41692,8 @@ YYLTYPE yylloc; ;} break; - case 1332: -#line 9992 "gram.y" + case 1339: +#line 10053 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40626,8 +41705,8 @@ YYLTYPE yylloc; ;} break; - case 1333: -#line 10002 "gram.y" + case 1340: +#line 10063 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40639,8 +41718,8 @@ YYLTYPE yylloc; ;} break; - case 1334: -#line 10012 "gram.y" + case 1341: +#line 10073 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40652,8 +41731,8 @@ YYLTYPE yylloc; ;} break; - case 1335: -#line 10022 "gram.y" + case 1342: +#line 10083 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40665,8 +41744,8 @@ YYLTYPE yylloc; ;} break; - case 1336: -#line 10032 "gram.y" + case 1343: +#line 10093 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40678,8 +41757,8 @@ YYLTYPE yylloc; ;} break; - case 1337: -#line 10042 "gram.y" + case 1344: +#line 10103 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40691,8 +41770,8 @@ YYLTYPE yylloc; ;} break; - case 1338: -#line 10052 "gram.y" + case 1345: +#line 10113 "gram.y" { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); @@ -40704,8 +41783,8 @@ YYLTYPE yylloc; ;} break; - case 1339: -#line 10071 "gram.y" + case 1346: +#line 10132 "gram.y" { AlterOperatorStmt *n = makeNode(AlterOperatorStmt); @@ -40715,53 +41794,53 @@ YYLTYPE yylloc; ;} break; - case 1340: -#line 10080 "gram.y" + case 1347: +#line 10141 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1341: -#line 10081 "gram.y" + case 1348: +#line 10142 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 1342: -#line 10085 "gram.y" + case 1349: +#line 10146 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), NULL, (yylsp[(1) - (3)])); ;} break; - case 1343: -#line 10087 "gram.y" + case 1350: +#line 10148 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *) (yyvsp[(3) - (3)].node), (yylsp[(1) - (3)])); ;} break; - case 1344: -#line 10092 "gram.y" + case 1351: +#line 10153 "gram.y" { (yyval.node) = (Node *) (yyvsp[(1) - (1)].typnam); ;} break; - case 1345: -#line 10093 "gram.y" + case 1352: +#line 10154 "gram.y" { (yyval.node) = (Node *) makeString(pstrdup((yyvsp[(1) - (1)].keyword))); ;} break; - case 1346: -#line 10094 "gram.y" + case 1353: +#line 10155 "gram.y" { (yyval.node) = (Node *) (yyvsp[(1) - (1)].list); ;} break; - case 1347: -#line 10095 "gram.y" + case 1354: +#line 10156 "gram.y" { (yyval.node) = (Node *) (yyvsp[(1) - (1)].node); ;} break; - case 1348: -#line 10096 "gram.y" + case 1355: +#line 10157 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 1349: -#line 10109 "gram.y" + case 1356: +#line 10170 "gram.y" { AlterTypeStmt *n = makeNode(AlterTypeStmt); @@ -40771,8 +41850,8 @@ YYLTYPE yylloc; ;} break; - case 1350: -#line 10125 "gram.y" + case 1357: +#line 10186 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40783,8 +41862,8 @@ YYLTYPE yylloc; ;} break; - case 1351: -#line 10134 "gram.y" + case 1358: +#line 10195 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40795,8 +41874,8 @@ YYLTYPE yylloc; ;} break; - case 1352: -#line 10143 "gram.y" + case 1359: +#line 10204 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40807,8 +41886,8 @@ YYLTYPE yylloc; ;} break; - case 1353: -#line 10152 "gram.y" + case 1360: +#line 10213 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40819,8 +41898,8 @@ YYLTYPE yylloc; ;} break; - case 1354: -#line 10161 "gram.y" + case 1361: +#line 10222 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40831,8 +41910,8 @@ YYLTYPE yylloc; ;} break; - case 1355: -#line 10170 "gram.y" + case 1362: +#line 10231 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40843,8 +41922,8 @@ YYLTYPE yylloc; ;} break; - case 1356: -#line 10179 "gram.y" + case 1363: +#line 10240 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40855,8 +41934,8 @@ YYLTYPE yylloc; ;} break; - case 1357: -#line 10188 "gram.y" + case 1364: +#line 10249 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40867,8 +41946,8 @@ YYLTYPE yylloc; ;} break; - case 1358: -#line 10197 "gram.y" + case 1365: +#line 10258 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40879,8 +41958,8 @@ YYLTYPE yylloc; ;} break; - case 1359: -#line 10206 "gram.y" + case 1366: +#line 10267 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40891,8 +41970,8 @@ YYLTYPE yylloc; ;} break; - case 1360: -#line 10215 "gram.y" + case 1367: +#line 10276 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40903,8 +41982,8 @@ YYLTYPE yylloc; ;} break; - case 1361: -#line 10224 "gram.y" + case 1368: +#line 10285 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40915,8 +41994,8 @@ YYLTYPE yylloc; ;} break; - case 1362: -#line 10233 "gram.y" + case 1369: +#line 10294 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40927,8 +42006,8 @@ YYLTYPE yylloc; ;} break; - case 1363: -#line 10242 "gram.y" + case 1370: +#line 10303 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40939,8 +42018,8 @@ YYLTYPE yylloc; ;} break; - case 1364: -#line 10251 "gram.y" + case 1371: +#line 10312 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40951,8 +42030,8 @@ YYLTYPE yylloc; ;} break; - case 1365: -#line 10260 "gram.y" + case 1372: +#line 10321 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40963,8 +42042,8 @@ YYLTYPE yylloc; ;} break; - case 1366: -#line 10269 "gram.y" + case 1373: +#line 10330 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40975,8 +42054,8 @@ YYLTYPE yylloc; ;} break; - case 1367: -#line 10278 "gram.y" + case 1374: +#line 10339 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40987,8 +42066,8 @@ YYLTYPE yylloc; ;} break; - case 1368: -#line 10287 "gram.y" + case 1375: +#line 10348 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -40999,8 +42078,8 @@ YYLTYPE yylloc; ;} break; - case 1369: -#line 10296 "gram.y" + case 1376: +#line 10357 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -41011,8 +42090,8 @@ YYLTYPE yylloc; ;} break; - case 1370: -#line 10305 "gram.y" + case 1377: +#line 10366 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -41023,8 +42102,8 @@ YYLTYPE yylloc; ;} break; - case 1371: -#line 10314 "gram.y" + case 1378: +#line 10375 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -41035,8 +42114,8 @@ YYLTYPE yylloc; ;} break; - case 1372: -#line 10323 "gram.y" + case 1379: +#line 10384 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -41047,8 +42126,8 @@ YYLTYPE yylloc; ;} break; - case 1373: -#line 10332 "gram.y" + case 1380: +#line 10393 "gram.y" { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); @@ -41059,8 +42138,8 @@ YYLTYPE yylloc; ;} break; - case 1374: -#line 10360 "gram.y" + case 1381: +#line 10421 "gram.y" { CreatePublicationStmt *n = makeNode(CreatePublicationStmt); @@ -41070,8 +42149,8 @@ YYLTYPE yylloc; ;} break; - case 1375: -#line 10368 "gram.y" + case 1382: +#line 10429 "gram.y" { CreatePublicationStmt *n = makeNode(CreatePublicationStmt); @@ -41082,8 +42161,8 @@ YYLTYPE yylloc; ;} break; - case 1376: -#line 10377 "gram.y" + case 1383: +#line 10438 "gram.y" { CreatePublicationStmt *n = makeNode(CreatePublicationStmt); @@ -41095,8 +42174,8 @@ YYLTYPE yylloc; ;} break; - case 1377: -#line 10403 "gram.y" + case 1384: +#line 10464 "gram.y" { (yyval.publicationobjectspec) = makeNode(PublicationObjSpec); (yyval.publicationobjectspec)->pubobjtype = PUBLICATIONOBJ_TABLE; @@ -41107,8 +42186,8 @@ YYLTYPE yylloc; ;} break; - case 1378: -#line 10412 "gram.y" + case 1385: +#line 10473 "gram.y" { (yyval.publicationobjectspec) = makeNode(PublicationObjSpec); (yyval.publicationobjectspec)->pubobjtype = PUBLICATIONOBJ_TABLES_IN_SCHEMA; @@ -41117,8 +42196,8 @@ YYLTYPE yylloc; ;} break; - case 1379: -#line 10419 "gram.y" + case 1386: +#line 10480 "gram.y" { (yyval.publicationobjectspec) = makeNode(PublicationObjSpec); (yyval.publicationobjectspec)->pubobjtype = PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA; @@ -41126,8 +42205,8 @@ YYLTYPE yylloc; ;} break; - case 1380: -#line 10425 "gram.y" + case 1387: +#line 10486 "gram.y" { (yyval.publicationobjectspec) = makeNode(PublicationObjSpec); (yyval.publicationobjectspec)->pubobjtype = PUBLICATIONOBJ_CONTINUATION; @@ -41156,8 +42235,8 @@ YYLTYPE yylloc; ;} break; - case 1381: -#line 10452 "gram.y" + case 1388: +#line 10513 "gram.y" { (yyval.publicationobjectspec) = makeNode(PublicationObjSpec); (yyval.publicationobjectspec)->pubobjtype = PUBLICATIONOBJ_CONTINUATION; @@ -41169,8 +42248,8 @@ YYLTYPE yylloc; ;} break; - case 1382: -#line 10463 "gram.y" + case 1389: +#line 10524 "gram.y" { (yyval.publicationobjectspec) = makeNode(PublicationObjSpec); (yyval.publicationobjectspec)->pubobjtype = PUBLICATIONOBJ_CONTINUATION; @@ -41181,8 +42260,8 @@ YYLTYPE yylloc; ;} break; - case 1383: -#line 10472 "gram.y" + case 1390: +#line 10533 "gram.y" { (yyval.publicationobjectspec) = makeNode(PublicationObjSpec); (yyval.publicationobjectspec)->pubobjtype = PUBLICATIONOBJ_CONTINUATION; @@ -41190,18 +42269,18 @@ YYLTYPE yylloc; ;} break; - case 1384: -#line 10480 "gram.y" + case 1391: +#line 10541 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].publicationobjectspec)); ;} break; - case 1385: -#line 10482 "gram.y" + case 1392: +#line 10543 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].publicationobjectspec)); ;} break; - case 1386: -#line 10504 "gram.y" + case 1393: +#line 10565 "gram.y" { AlterPublicationStmt *n = makeNode(AlterPublicationStmt); @@ -41211,8 +42290,8 @@ YYLTYPE yylloc; ;} break; - case 1387: -#line 10512 "gram.y" + case 1394: +#line 10573 "gram.y" { AlterPublicationStmt *n = makeNode(AlterPublicationStmt); @@ -41224,8 +42303,8 @@ YYLTYPE yylloc; ;} break; - case 1388: -#line 10522 "gram.y" + case 1395: +#line 10583 "gram.y" { AlterPublicationStmt *n = makeNode(AlterPublicationStmt); @@ -41237,8 +42316,8 @@ YYLTYPE yylloc; ;} break; - case 1389: -#line 10532 "gram.y" + case 1396: +#line 10593 "gram.y" { AlterPublicationStmt *n = makeNode(AlterPublicationStmt); @@ -41250,8 +42329,8 @@ YYLTYPE yylloc; ;} break; - case 1390: -#line 10551 "gram.y" + case 1397: +#line 10612 "gram.y" { CreateSubscriptionStmt *n = makeNode(CreateSubscriptionStmt); @@ -41263,8 +42342,8 @@ YYLTYPE yylloc; ;} break; - case 1391: -#line 10570 "gram.y" + case 1398: +#line 10631 "gram.y" { AlterSubscriptionStmt *n = makeNode(AlterSubscriptionStmt); @@ -41276,8 +42355,8 @@ YYLTYPE yylloc; ;} break; - case 1392: -#line 10580 "gram.y" + case 1399: +#line 10641 "gram.y" { AlterSubscriptionStmt *n = makeNode(AlterSubscriptionStmt); @@ -41289,8 +42368,8 @@ YYLTYPE yylloc; ;} break; - case 1393: -#line 10590 "gram.y" + case 1400: +#line 10651 "gram.y" { AlterSubscriptionStmt *n = makeNode(AlterSubscriptionStmt); @@ -41302,8 +42381,8 @@ YYLTYPE yylloc; ;} break; - case 1394: -#line 10600 "gram.y" + case 1401: +#line 10661 "gram.y" { AlterSubscriptionStmt *n = makeNode(AlterSubscriptionStmt); @@ -41316,8 +42395,8 @@ YYLTYPE yylloc; ;} break; - case 1395: -#line 10611 "gram.y" + case 1402: +#line 10672 "gram.y" { AlterSubscriptionStmt *n = makeNode(AlterSubscriptionStmt); @@ -41330,8 +42409,8 @@ YYLTYPE yylloc; ;} break; - case 1396: -#line 10622 "gram.y" + case 1403: +#line 10683 "gram.y" { AlterSubscriptionStmt *n = makeNode(AlterSubscriptionStmt); @@ -41344,8 +42423,8 @@ YYLTYPE yylloc; ;} break; - case 1397: -#line 10633 "gram.y" + case 1404: +#line 10694 "gram.y" { AlterSubscriptionStmt *n = makeNode(AlterSubscriptionStmt); @@ -41358,8 +42437,8 @@ YYLTYPE yylloc; ;} break; - case 1398: -#line 10644 "gram.y" + case 1405: +#line 10705 "gram.y" { AlterSubscriptionStmt *n = makeNode(AlterSubscriptionStmt); @@ -41372,8 +42451,8 @@ YYLTYPE yylloc; ;} break; - case 1399: -#line 10655 "gram.y" + case 1406: +#line 10716 "gram.y" { AlterSubscriptionStmt *n = makeNode(AlterSubscriptionStmt); @@ -41385,8 +42464,8 @@ YYLTYPE yylloc; ;} break; - case 1400: -#line 10673 "gram.y" + case 1407: +#line 10734 "gram.y" { DropSubscriptionStmt *n = makeNode(DropSubscriptionStmt); @@ -41397,8 +42476,8 @@ YYLTYPE yylloc; ;} break; - case 1401: -#line 10682 "gram.y" + case 1408: +#line 10743 "gram.y" { DropSubscriptionStmt *n = makeNode(DropSubscriptionStmt); @@ -41409,8 +42488,8 @@ YYLTYPE yylloc; ;} break; - case 1402: -#line 10701 "gram.y" + case 1409: +#line 10762 "gram.y" { RuleStmt *n = makeNode(RuleStmt); @@ -41425,23 +42504,23 @@ YYLTYPE yylloc; ;} break; - case 1403: -#line 10716 "gram.y" + case 1410: +#line 10777 "gram.y" { (yyval.list) = NIL; ;} break; - case 1404: -#line 10717 "gram.y" + case 1411: +#line 10778 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1405: -#line 10718 "gram.y" + case 1412: +#line 10779 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1406: -#line 10724 "gram.y" + case 1413: +#line 10785 "gram.y" { if ((yyvsp[(3) - (3)].node) != NULL) (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); else @@ -41449,8 +42528,8 @@ YYLTYPE yylloc; ;} break; - case 1407: -#line 10730 "gram.y" + case 1414: +#line 10791 "gram.y" { if ((yyvsp[(1) - (1)].node) != NULL) (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); else @@ -41458,53 +42537,53 @@ YYLTYPE yylloc; ;} break; - case 1413: -#line 10746 "gram.y" + case 1420: +#line 10807 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1414: -#line 10747 "gram.y" + case 1421: +#line 10808 "gram.y" { (yyval.node) = NULL; ;} break; - case 1415: -#line 10750 "gram.y" + case 1422: +#line 10811 "gram.y" { (yyval.ival) = CMD_SELECT; ;} break; - case 1416: -#line 10751 "gram.y" + case 1423: +#line 10812 "gram.y" { (yyval.ival) = CMD_UPDATE; ;} break; - case 1417: -#line 10752 "gram.y" + case 1424: +#line 10813 "gram.y" { (yyval.ival) = CMD_DELETE; ;} break; - case 1418: -#line 10753 "gram.y" + case 1425: +#line 10814 "gram.y" { (yyval.ival) = CMD_INSERT; ;} break; - case 1419: -#line 10757 "gram.y" + case 1426: +#line 10818 "gram.y" { (yyval.boolean) = true; ;} break; - case 1420: -#line 10758 "gram.y" + case 1427: +#line 10819 "gram.y" { (yyval.boolean) = false; ;} break; - case 1421: -#line 10759 "gram.y" + case 1428: +#line 10820 "gram.y" { (yyval.boolean) = false; ;} break; - case 1422: -#line 10772 "gram.y" + case 1429: +#line 10833 "gram.y" { NotifyStmt *n = makeNode(NotifyStmt); @@ -41514,18 +42593,18 @@ YYLTYPE yylloc; ;} break; - case 1423: -#line 10782 "gram.y" + case 1430: +#line 10843 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 1424: -#line 10783 "gram.y" + case 1431: +#line 10844 "gram.y" { (yyval.str) = NULL; ;} break; - case 1425: -#line 10787 "gram.y" + case 1432: +#line 10848 "gram.y" { ListenStmt *n = makeNode(ListenStmt); @@ -41534,8 +42613,8 @@ YYLTYPE yylloc; ;} break; - case 1426: -#line 10797 "gram.y" + case 1433: +#line 10858 "gram.y" { UnlistenStmt *n = makeNode(UnlistenStmt); @@ -41544,8 +42623,8 @@ YYLTYPE yylloc; ;} break; - case 1427: -#line 10804 "gram.y" + case 1434: +#line 10865 "gram.y" { UnlistenStmt *n = makeNode(UnlistenStmt); @@ -41554,8 +42633,8 @@ YYLTYPE yylloc; ;} break; - case 1428: -#line 10824 "gram.y" + case 1435: +#line 10885 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41566,8 +42645,8 @@ YYLTYPE yylloc; ;} break; - case 1429: -#line 10833 "gram.y" + case 1436: +#line 10894 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41577,8 +42656,8 @@ YYLTYPE yylloc; ;} break; - case 1430: -#line 10841 "gram.y" + case 1437: +#line 10902 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41589,8 +42668,8 @@ YYLTYPE yylloc; ;} break; - case 1431: -#line 10850 "gram.y" + case 1438: +#line 10911 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41601,8 +42680,8 @@ YYLTYPE yylloc; ;} break; - case 1432: -#line 10859 "gram.y" + case 1439: +#line 10920 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41612,8 +42691,8 @@ YYLTYPE yylloc; ;} break; - case 1433: -#line 10867 "gram.y" + case 1440: +#line 10928 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41623,8 +42702,8 @@ YYLTYPE yylloc; ;} break; - case 1434: -#line 10875 "gram.y" + case 1441: +#line 10936 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41634,8 +42713,8 @@ YYLTYPE yylloc; ;} break; - case 1435: -#line 10883 "gram.y" + case 1442: +#line 10944 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41645,8 +42724,8 @@ YYLTYPE yylloc; ;} break; - case 1436: -#line 10891 "gram.y" + case 1443: +#line 10952 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41656,8 +42735,8 @@ YYLTYPE yylloc; ;} break; - case 1437: -#line 10899 "gram.y" + case 1444: +#line 10960 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41667,8 +42746,8 @@ YYLTYPE yylloc; ;} break; - case 1438: -#line 10907 "gram.y" + case 1445: +#line 10968 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41678,8 +42757,8 @@ YYLTYPE yylloc; ;} break; - case 1439: -#line 10915 "gram.y" + case 1446: +#line 10976 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41689,8 +42768,8 @@ YYLTYPE yylloc; ;} break; - case 1440: -#line 10926 "gram.y" + case 1447: +#line 10987 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41700,8 +42779,8 @@ YYLTYPE yylloc; ;} break; - case 1441: -#line 10934 "gram.y" + case 1448: +#line 10995 "gram.y" { TransactionStmt *n = makeNode(TransactionStmt); @@ -41712,73 +42791,73 @@ YYLTYPE yylloc; ;} break; - case 1445: -#line 10951 "gram.y" + case 1452: +#line 11012 "gram.y" { (yyval.defelt) = makeDefElem("transaction_isolation", makeStringConst((yyvsp[(3) - (3)].str), (yylsp[(3) - (3)])), (yylsp[(1) - (3)])); ;} break; - case 1446: -#line 10954 "gram.y" + case 1453: +#line 11015 "gram.y" { (yyval.defelt) = makeDefElem("transaction_read_only", makeIntConst(true, (yylsp[(1) - (2)])), (yylsp[(1) - (2)])); ;} break; - case 1447: -#line 10957 "gram.y" + case 1454: +#line 11018 "gram.y" { (yyval.defelt) = makeDefElem("transaction_read_only", makeIntConst(false, (yylsp[(1) - (2)])), (yylsp[(1) - (2)])); ;} break; - case 1448: -#line 10960 "gram.y" + case 1455: +#line 11021 "gram.y" { (yyval.defelt) = makeDefElem("transaction_deferrable", makeIntConst(true, (yylsp[(1) - (1)])), (yylsp[(1) - (1)])); ;} break; - case 1449: -#line 10963 "gram.y" + case 1456: +#line 11024 "gram.y" { (yyval.defelt) = makeDefElem("transaction_deferrable", makeIntConst(false, (yylsp[(1) - (2)])), (yylsp[(1) - (2)])); ;} break; - case 1450: -#line 10970 "gram.y" + case 1457: +#line 11031 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1451: -#line 10972 "gram.y" + case 1458: +#line 11033 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 1452: -#line 10974 "gram.y" + case 1459: +#line 11035 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 1454: -#line 10980 "gram.y" + case 1461: +#line 11041 "gram.y" { (yyval.list) = NIL; ;} break; - case 1455: -#line 10984 "gram.y" + case 1462: +#line 11045 "gram.y" { (yyval.boolean) = true; ;} break; - case 1456: -#line 10985 "gram.y" + case 1463: +#line 11046 "gram.y" { (yyval.boolean) = false; ;} break; - case 1457: -#line 10986 "gram.y" + case 1464: +#line 11047 "gram.y" { (yyval.boolean) = false; ;} break; - case 1458: -#line 11000 "gram.y" + case 1465: +#line 11061 "gram.y" { ViewStmt *n = makeNode(ViewStmt); @@ -41793,8 +42872,8 @@ YYLTYPE yylloc; ;} break; - case 1459: -#line 11014 "gram.y" + case 1466: +#line 11075 "gram.y" { ViewStmt *n = makeNode(ViewStmt); @@ -41809,8 +42888,8 @@ YYLTYPE yylloc; ;} break; - case 1460: -#line 11028 "gram.y" + case 1467: +#line 11089 "gram.y" { ViewStmt *n = makeNode(ViewStmt); @@ -41830,8 +42909,8 @@ YYLTYPE yylloc; ;} break; - case 1461: -#line 11047 "gram.y" + case 1468: +#line 11108 "gram.y" { ViewStmt *n = makeNode(ViewStmt); @@ -41851,28 +42930,28 @@ YYLTYPE yylloc; ;} break; - case 1462: -#line 11067 "gram.y" + case 1469: +#line 11128 "gram.y" { (yyval.ival) = CASCADED_CHECK_OPTION; ;} break; - case 1463: -#line 11068 "gram.y" + case 1470: +#line 11129 "gram.y" { (yyval.ival) = CASCADED_CHECK_OPTION; ;} break; - case 1464: -#line 11069 "gram.y" + case 1471: +#line 11130 "gram.y" { (yyval.ival) = LOCAL_CHECK_OPTION; ;} break; - case 1465: -#line 11070 "gram.y" + case 1472: +#line 11131 "gram.y" { (yyval.ival) = NO_CHECK_OPTION; ;} break; - case 1466: -#line 11081 "gram.y" + case 1473: +#line 11142 "gram.y" { LoadStmt *n = makeNode(LoadStmt); @@ -41881,8 +42960,8 @@ YYLTYPE yylloc; ;} break; - case 1467: -#line 11098 "gram.y" + case 1474: +#line 11159 "gram.y" { CreatedbStmt *n = makeNode(CreatedbStmt); @@ -41892,84 +42971,84 @@ YYLTYPE yylloc; ;} break; - case 1468: -#line 11108 "gram.y" + case 1475: +#line 11169 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1469: -#line 11109 "gram.y" + case 1476: +#line 11170 "gram.y" { (yyval.list) = NIL; ;} break; - case 1470: -#line 11113 "gram.y" + case 1477: +#line 11174 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1471: -#line 11114 "gram.y" + case 1478: +#line 11175 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 1472: -#line 11119 "gram.y" + case 1479: +#line 11180 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].node), (yylsp[(1) - (3)])); ;} break; - case 1473: -#line 11123 "gram.y" + case 1480: +#line 11184 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *) makeString((yyvsp[(3) - (3)].str)), (yylsp[(1) - (3)])); ;} break; - case 1474: -#line 11127 "gram.y" + case 1481: +#line 11188 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), NULL, (yylsp[(1) - (3)])); ;} break; - case 1475: -#line 11144 "gram.y" + case 1482: +#line 11205 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1476: -#line 11145 "gram.y" + case 1483: +#line 11206 "gram.y" { (yyval.str) = pstrdup("connection_limit"); ;} break; - case 1477: -#line 11146 "gram.y" + case 1484: +#line 11207 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 1478: -#line 11147 "gram.y" + case 1485: +#line 11208 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 1479: -#line 11148 "gram.y" + case 1486: +#line 11209 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 1480: -#line 11149 "gram.y" + case 1487: +#line 11210 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 1481: -#line 11150 "gram.y" + case 1488: +#line 11211 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 1484: -#line 11170 "gram.y" + case 1491: +#line 11231 "gram.y" { AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt); @@ -41979,8 +43058,8 @@ YYLTYPE yylloc; ;} break; - case 1485: -#line 11178 "gram.y" + case 1492: +#line 11239 "gram.y" { AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt); @@ -41990,8 +43069,8 @@ YYLTYPE yylloc; ;} break; - case 1486: -#line 11186 "gram.y" + case 1493: +#line 11247 "gram.y" { AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt); @@ -42002,8 +43081,8 @@ YYLTYPE yylloc; ;} break; - case 1487: -#line 11195 "gram.y" + case 1494: +#line 11256 "gram.y" { AlterDatabaseRefreshCollStmt *n = makeNode(AlterDatabaseRefreshCollStmt); @@ -42012,8 +43091,8 @@ YYLTYPE yylloc; ;} break; - case 1488: -#line 11205 "gram.y" + case 1495: +#line 11266 "gram.y" { AlterDatabaseSetStmt *n = makeNode(AlterDatabaseSetStmt); @@ -42023,8 +43102,8 @@ YYLTYPE yylloc; ;} break; - case 1489: -#line 11223 "gram.y" + case 1496: +#line 11284 "gram.y" { DropdbStmt *n = makeNode(DropdbStmt); @@ -42035,8 +43114,8 @@ YYLTYPE yylloc; ;} break; - case 1490: -#line 11232 "gram.y" + case 1497: +#line 11293 "gram.y" { DropdbStmt *n = makeNode(DropdbStmt); @@ -42047,8 +43126,8 @@ YYLTYPE yylloc; ;} break; - case 1491: -#line 11241 "gram.y" + case 1498: +#line 11302 "gram.y" { DropdbStmt *n = makeNode(DropdbStmt); @@ -42059,8 +43138,8 @@ YYLTYPE yylloc; ;} break; - case 1492: -#line 11250 "gram.y" + case 1499: +#line 11311 "gram.y" { DropdbStmt *n = makeNode(DropdbStmt); @@ -42071,29 +43150,29 @@ YYLTYPE yylloc; ;} break; - case 1493: -#line 11262 "gram.y" + case 1500: +#line 11323 "gram.y" { (yyval.list) = list_make1((Node *) (yyvsp[(1) - (1)].defelt)); ;} break; - case 1494: -#line 11266 "gram.y" + case 1501: +#line 11327 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (Node *) (yyvsp[(3) - (3)].defelt)); ;} break; - case 1495: -#line 11277 "gram.y" + case 1502: +#line 11338 "gram.y" { (yyval.defelt) = makeDefElem("force", NULL, (yylsp[(1) - (1)])); ;} break; - case 1496: -#line 11289 "gram.y" + case 1503: +#line 11350 "gram.y" { AlterCollationStmt *n = makeNode(AlterCollationStmt); @@ -42102,8 +43181,8 @@ YYLTYPE yylloc; ;} break; - case 1497: -#line 11307 "gram.y" + case 1504: +#line 11368 "gram.y" { AlterSystemStmt *n = makeNode(AlterSystemStmt); @@ -42112,8 +43191,8 @@ YYLTYPE yylloc; ;} break; - case 1498: -#line 11314 "gram.y" + case 1505: +#line 11375 "gram.y" { AlterSystemStmt *n = makeNode(AlterSystemStmt); @@ -42122,8 +43201,8 @@ YYLTYPE yylloc; ;} break; - case 1499: -#line 11331 "gram.y" + case 1506: +#line 11392 "gram.y" { CreateDomainStmt *n = makeNode(CreateDomainStmt); @@ -42135,8 +43214,8 @@ YYLTYPE yylloc; ;} break; - case 1500: -#line 11345 "gram.y" + case 1507: +#line 11406 "gram.y" { AlterDomainStmt *n = makeNode(AlterDomainStmt); @@ -42147,8 +43226,8 @@ YYLTYPE yylloc; ;} break; - case 1501: -#line 11355 "gram.y" + case 1508: +#line 11416 "gram.y" { AlterDomainStmt *n = makeNode(AlterDomainStmt); @@ -42158,8 +43237,8 @@ YYLTYPE yylloc; ;} break; - case 1502: -#line 11364 "gram.y" + case 1509: +#line 11425 "gram.y" { AlterDomainStmt *n = makeNode(AlterDomainStmt); @@ -42169,8 +43248,8 @@ YYLTYPE yylloc; ;} break; - case 1503: -#line 11373 "gram.y" + case 1510: +#line 11434 "gram.y" { AlterDomainStmt *n = makeNode(AlterDomainStmt); @@ -42181,8 +43260,8 @@ YYLTYPE yylloc; ;} break; - case 1504: -#line 11383 "gram.y" + case 1511: +#line 11444 "gram.y" { AlterDomainStmt *n = makeNode(AlterDomainStmt); @@ -42195,8 +43274,8 @@ YYLTYPE yylloc; ;} break; - case 1505: -#line 11395 "gram.y" + case 1512: +#line 11456 "gram.y" { AlterDomainStmt *n = makeNode(AlterDomainStmt); @@ -42209,8 +43288,8 @@ YYLTYPE yylloc; ;} break; - case 1506: -#line 11407 "gram.y" + case 1513: +#line 11468 "gram.y" { AlterDomainStmt *n = makeNode(AlterDomainStmt); @@ -42221,8 +43300,8 @@ YYLTYPE yylloc; ;} break; - case 1509: -#line 11430 "gram.y" + case 1516: +#line 11491 "gram.y" { AlterTSDictionaryStmt *n = makeNode(AlterTSDictionaryStmt); @@ -42232,8 +43311,8 @@ YYLTYPE yylloc; ;} break; - case 1510: -#line 11441 "gram.y" + case 1517: +#line 11502 "gram.y" { AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt); @@ -42247,8 +43326,8 @@ YYLTYPE yylloc; ;} break; - case 1511: -#line 11453 "gram.y" + case 1518: +#line 11514 "gram.y" { AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt); @@ -42262,8 +43341,8 @@ YYLTYPE yylloc; ;} break; - case 1512: -#line 11465 "gram.y" + case 1519: +#line 11526 "gram.y" { AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt); @@ -42277,8 +43356,8 @@ YYLTYPE yylloc; ;} break; - case 1513: -#line 11477 "gram.y" + case 1520: +#line 11538 "gram.y" { AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt); @@ -42292,8 +43371,8 @@ YYLTYPE yylloc; ;} break; - case 1514: -#line 11489 "gram.y" + case 1521: +#line 11550 "gram.y" { AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt); @@ -42305,8 +43384,8 @@ YYLTYPE yylloc; ;} break; - case 1515: -#line 11499 "gram.y" + case 1522: +#line 11560 "gram.y" { AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt); @@ -42318,8 +43397,8 @@ YYLTYPE yylloc; ;} break; - case 1518: -#line 11528 "gram.y" + case 1525: +#line 11589 "gram.y" { CreateConversionStmt *n = makeNode(CreateConversionStmt); @@ -42332,8 +43411,8 @@ YYLTYPE yylloc; ;} break; - case 1519: -#line 11552 "gram.y" + case 1526: +#line 11613 "gram.y" { ClusterStmt *n = makeNode(ClusterStmt); @@ -42346,8 +43425,8 @@ YYLTYPE yylloc; ;} break; - case 1520: -#line 11564 "gram.y" + case 1527: +#line 11625 "gram.y" { ClusterStmt *n = makeNode(ClusterStmt); @@ -42358,8 +43437,8 @@ YYLTYPE yylloc; ;} break; - case 1521: -#line 11573 "gram.y" + case 1528: +#line 11634 "gram.y" { ClusterStmt *n = makeNode(ClusterStmt); @@ -42372,8 +43451,8 @@ YYLTYPE yylloc; ;} break; - case 1522: -#line 11585 "gram.y" + case 1529: +#line 11646 "gram.y" { ClusterStmt *n = makeNode(ClusterStmt); @@ -42386,18 +43465,18 @@ YYLTYPE yylloc; ;} break; - case 1523: -#line 11598 "gram.y" + case 1530: +#line 11659 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 1524: -#line 11599 "gram.y" + case 1531: +#line 11660 "gram.y" { (yyval.str) = NULL; ;} break; - case 1525: -#line 11612 "gram.y" + case 1532: +#line 11673 "gram.y" { VacuumStmt *n = makeNode(VacuumStmt); @@ -42420,8 +43499,8 @@ YYLTYPE yylloc; ;} break; - case 1526: -#line 11633 "gram.y" + case 1533: +#line 11694 "gram.y" { VacuumStmt *n = makeNode(VacuumStmt); @@ -42432,8 +43511,8 @@ YYLTYPE yylloc; ;} break; - case 1527: -#line 11644 "gram.y" + case 1534: +#line 11705 "gram.y" { VacuumStmt *n = makeNode(VacuumStmt); @@ -42447,8 +43526,8 @@ YYLTYPE yylloc; ;} break; - case 1528: -#line 11656 "gram.y" + case 1535: +#line 11717 "gram.y" { VacuumStmt *n = makeNode(VacuumStmt); @@ -42459,131 +43538,136 @@ YYLTYPE yylloc; ;} break; - case 1529: -#line 11668 "gram.y" + case 1536: +#line 11729 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1530: -#line 11672 "gram.y" + case 1537: +#line 11733 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 1533: -#line 11684 "gram.y" + case 1540: +#line 11745 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1534: -#line 11690 "gram.y" + case 1541: +#line 11751 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1535: -#line 11691 "gram.y" + case 1542: +#line 11752 "gram.y" { (yyval.str) = "analyze"; ;} break; - case 1536: -#line 11695 "gram.y" + case 1543: +#line 11753 "gram.y" + { (yyval.str) = "format"; ;} + break; + + case 1544: +#line 11757 "gram.y" { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 1537: -#line 11696 "gram.y" + case 1545: +#line 11758 "gram.y" { (yyval.node) = (Node *) (yyvsp[(1) - (1)].node); ;} break; - case 1538: -#line 11697 "gram.y" + case 1546: +#line 11759 "gram.y" { (yyval.node) = NULL; ;} break; - case 1539: -#line 11701 "gram.y" + case 1547: +#line 11763 "gram.y" { (yyval.boolean) = true; ;} break; - case 1540: -#line 11702 "gram.y" + case 1548: +#line 11764 "gram.y" { (yyval.boolean) = false; ;} break; - case 1541: -#line 11706 "gram.y" + case 1549: +#line 11768 "gram.y" { (yyval.boolean) = true; ;} break; - case 1542: -#line 11707 "gram.y" + case 1550: +#line 11769 "gram.y" { (yyval.boolean) = false; ;} break; - case 1543: -#line 11710 "gram.y" + case 1551: +#line 11772 "gram.y" { (yyval.boolean) = true; ;} break; - case 1544: -#line 11711 "gram.y" + case 1552: +#line 11773 "gram.y" { (yyval.boolean) = false; ;} break; - case 1545: -#line 11714 "gram.y" + case 1553: +#line 11776 "gram.y" { (yyval.boolean) = true; ;} break; - case 1546: -#line 11715 "gram.y" + case 1554: +#line 11777 "gram.y" { (yyval.boolean) = false; ;} break; - case 1547: -#line 11719 "gram.y" + case 1555: +#line 11781 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1548: -#line 11720 "gram.y" + case 1556: +#line 11782 "gram.y" { (yyval.list) = NIL; ;} break; - case 1549: -#line 11725 "gram.y" + case 1557: +#line 11787 "gram.y" { (yyval.node) = (Node *) makeVacuumRelation((yyvsp[(1) - (2)].range), InvalidOid, (yyvsp[(2) - (2)].list)); ;} break; - case 1550: -#line 11732 "gram.y" + case 1558: +#line 11794 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1551: -#line 11734 "gram.y" + case 1559: +#line 11796 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1552: -#line 11738 "gram.y" + case 1560: +#line 11800 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1553: -#line 11739 "gram.y" + case 1561: +#line 11801 "gram.y" { (yyval.list) = NIL; ;} break; - case 1554: -#line 11753 "gram.y" + case 1562: +#line 11815 "gram.y" { ExplainStmt *n = makeNode(ExplainStmt); @@ -42593,8 +43677,8 @@ YYLTYPE yylloc; ;} break; - case 1555: -#line 11761 "gram.y" + case 1563: +#line 11823 "gram.y" { ExplainStmt *n = makeNode(ExplainStmt); @@ -42607,8 +43691,8 @@ YYLTYPE yylloc; ;} break; - case 1556: -#line 11772 "gram.y" + case 1564: +#line 11834 "gram.y" { ExplainStmt *n = makeNode(ExplainStmt); @@ -42618,8 +43702,8 @@ YYLTYPE yylloc; ;} break; - case 1557: -#line 11780 "gram.y" + case 1565: +#line 11842 "gram.y" { ExplainStmt *n = makeNode(ExplainStmt); @@ -42629,8 +43713,8 @@ YYLTYPE yylloc; ;} break; - case 1568: -#line 11810 "gram.y" + case 1576: +#line 11872 "gram.y" { PrepareStmt *n = makeNode(PrepareStmt); @@ -42641,18 +43725,18 @@ YYLTYPE yylloc; ;} break; - case 1569: -#line 11820 "gram.y" + case 1577: +#line 11882 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1570: -#line 11821 "gram.y" + case 1578: +#line 11883 "gram.y" { (yyval.list) = NIL; ;} break; - case 1576: -#line 11840 "gram.y" + case 1584: +#line 11902 "gram.y" { ExecuteStmt *n = makeNode(ExecuteStmt); @@ -42662,8 +43746,8 @@ YYLTYPE yylloc; ;} break; - case 1577: -#line 11849 "gram.y" + case 1585: +#line 11911 "gram.y" { CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt); ExecuteStmt *n = makeNode(ExecuteStmt); @@ -42682,8 +43766,8 @@ YYLTYPE yylloc; ;} break; - case 1578: -#line 11867 "gram.y" + case 1586: +#line 11929 "gram.y" { CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt); ExecuteStmt *n = makeNode(ExecuteStmt); @@ -42702,18 +43786,18 @@ YYLTYPE yylloc; ;} break; - case 1579: -#line 11885 "gram.y" + case 1587: +#line 11947 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1580: -#line 11886 "gram.y" + case 1588: +#line 11948 "gram.y" { (yyval.list) = NIL; ;} break; - case 1581: -#line 11897 "gram.y" + case 1589: +#line 11959 "gram.y" { DeallocateStmt *n = makeNode(DeallocateStmt); @@ -42722,8 +43806,8 @@ YYLTYPE yylloc; ;} break; - case 1582: -#line 11904 "gram.y" + case 1590: +#line 11966 "gram.y" { DeallocateStmt *n = makeNode(DeallocateStmt); @@ -42732,8 +43816,8 @@ YYLTYPE yylloc; ;} break; - case 1583: -#line 11911 "gram.y" + case 1591: +#line 11973 "gram.y" { DeallocateStmt *n = makeNode(DeallocateStmt); @@ -42742,8 +43826,8 @@ YYLTYPE yylloc; ;} break; - case 1584: -#line 11918 "gram.y" + case 1592: +#line 11980 "gram.y" { DeallocateStmt *n = makeNode(DeallocateStmt); @@ -42752,8 +43836,8 @@ YYLTYPE yylloc; ;} break; - case 1585: -#line 11936 "gram.y" + case 1593: +#line 11998 "gram.y" { (yyvsp[(5) - (7)].istmt)->relation = (yyvsp[(4) - (7)].range); (yyvsp[(5) - (7)].istmt)->onConflictClause = (yyvsp[(6) - (7)].onconflict); @@ -42763,23 +43847,23 @@ YYLTYPE yylloc; ;} break; - case 1586: -#line 11953 "gram.y" + case 1594: +#line 12015 "gram.y" { (yyval.range) = (yyvsp[(1) - (1)].range); ;} break; - case 1587: -#line 11957 "gram.y" + case 1595: +#line 12019 "gram.y" { (yyvsp[(1) - (3)].range)->alias = makeAlias((yyvsp[(3) - (3)].str), NIL); (yyval.range) = (yyvsp[(1) - (3)].range); ;} break; - case 1588: -#line 11965 "gram.y" + case 1596: +#line 12027 "gram.y" { (yyval.istmt) = makeNode(InsertStmt); (yyval.istmt)->cols = NIL; @@ -42787,8 +43871,8 @@ YYLTYPE yylloc; ;} break; - case 1589: -#line 11971 "gram.y" + case 1597: +#line 12033 "gram.y" { (yyval.istmt) = makeNode(InsertStmt); (yyval.istmt)->cols = NIL; @@ -42797,8 +43881,8 @@ YYLTYPE yylloc; ;} break; - case 1590: -#line 11978 "gram.y" + case 1598: +#line 12040 "gram.y" { (yyval.istmt) = makeNode(InsertStmt); (yyval.istmt)->cols = (yyvsp[(2) - (4)].list); @@ -42806,8 +43890,8 @@ YYLTYPE yylloc; ;} break; - case 1591: -#line 11984 "gram.y" + case 1599: +#line 12046 "gram.y" { (yyval.istmt) = makeNode(InsertStmt); (yyval.istmt)->cols = (yyvsp[(2) - (7)].list); @@ -42816,8 +43900,8 @@ YYLTYPE yylloc; ;} break; - case 1592: -#line 11991 "gram.y" + case 1600: +#line 12053 "gram.y" { (yyval.istmt) = makeNode(InsertStmt); (yyval.istmt)->cols = NIL; @@ -42825,28 +43909,28 @@ YYLTYPE yylloc; ;} break; - case 1593: -#line 11999 "gram.y" + case 1601: +#line 12061 "gram.y" { (yyval.ival) = OVERRIDING_USER_VALUE; ;} break; - case 1594: -#line 12000 "gram.y" + case 1602: +#line 12062 "gram.y" { (yyval.ival) = OVERRIDING_SYSTEM_VALUE; ;} break; - case 1595: -#line 12005 "gram.y" + case 1603: +#line 12067 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); ;} break; - case 1596: -#line 12007 "gram.y" + case 1604: +#line 12069 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); ;} break; - case 1597: -#line 12012 "gram.y" + case 1605: +#line 12074 "gram.y" { (yyval.target) = makeNode(ResTarget); (yyval.target)->name = (yyvsp[(1) - (2)].str); @@ -42856,8 +43940,8 @@ YYLTYPE yylloc; ;} break; - case 1598: -#line 12023 "gram.y" + case 1606: +#line 12085 "gram.y" { (yyval.onconflict) = makeNode(OnConflictClause); (yyval.onconflict)->action = ONCONFLICT_UPDATE; @@ -42868,8 +43952,8 @@ YYLTYPE yylloc; ;} break; - case 1599: -#line 12033 "gram.y" + case 1607: +#line 12095 "gram.y" { (yyval.onconflict) = makeNode(OnConflictClause); (yyval.onconflict)->action = ONCONFLICT_NOTHING; @@ -42880,15 +43964,15 @@ YYLTYPE yylloc; ;} break; - case 1600: -#line 12042 "gram.y" + case 1608: +#line 12104 "gram.y" { (yyval.onconflict) = NULL; ;} break; - case 1601: -#line 12049 "gram.y" + case 1609: +#line 12111 "gram.y" { (yyval.infer) = makeNode(InferClause); (yyval.infer)->indexElems = (yyvsp[(2) - (4)].list); @@ -42898,8 +43982,8 @@ YYLTYPE yylloc; ;} break; - case 1602: -#line 12058 "gram.y" + case 1610: +#line 12120 "gram.y" { (yyval.infer) = makeNode(InferClause); (yyval.infer)->indexElems = NIL; @@ -42909,25 +43993,25 @@ YYLTYPE yylloc; ;} break; - case 1603: -#line 12066 "gram.y" + case 1611: +#line 12128 "gram.y" { (yyval.infer) = NULL; ;} break; - case 1604: -#line 12072 "gram.y" + case 1612: +#line 12134 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1605: -#line 12073 "gram.y" + case 1613: +#line 12135 "gram.y" { (yyval.list) = NIL; ;} break; - case 1606: -#line 12086 "gram.y" + case 1614: +#line 12148 "gram.y" { DeleteStmt *n = makeNode(DeleteStmt); @@ -42940,18 +44024,18 @@ YYLTYPE yylloc; ;} break; - case 1607: -#line 12099 "gram.y" + case 1615: +#line 12161 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1608: -#line 12100 "gram.y" + case 1616: +#line 12162 "gram.y" { (yyval.list) = NIL; ;} break; - case 1609: -#line 12112 "gram.y" + case 1617: +#line 12174 "gram.y" { LockStmt *n = makeNode(LockStmt); @@ -42962,83 +44046,83 @@ YYLTYPE yylloc; ;} break; - case 1610: -#line 12122 "gram.y" + case 1618: +#line 12184 "gram.y" { (yyval.ival) = (yyvsp[(2) - (3)].ival); ;} break; - case 1611: -#line 12123 "gram.y" + case 1619: +#line 12185 "gram.y" { (yyval.ival) = AccessExclusiveLock; ;} break; - case 1612: -#line 12126 "gram.y" + case 1620: +#line 12188 "gram.y" { (yyval.ival) = AccessShareLock; ;} break; - case 1613: -#line 12127 "gram.y" + case 1621: +#line 12189 "gram.y" { (yyval.ival) = RowShareLock; ;} break; - case 1614: -#line 12128 "gram.y" + case 1622: +#line 12190 "gram.y" { (yyval.ival) = RowExclusiveLock; ;} break; - case 1615: -#line 12129 "gram.y" + case 1623: +#line 12191 "gram.y" { (yyval.ival) = ShareUpdateExclusiveLock; ;} break; - case 1616: -#line 12130 "gram.y" + case 1624: +#line 12192 "gram.y" { (yyval.ival) = ShareLock; ;} break; - case 1617: -#line 12131 "gram.y" + case 1625: +#line 12193 "gram.y" { (yyval.ival) = ShareRowExclusiveLock; ;} break; - case 1618: -#line 12132 "gram.y" + case 1626: +#line 12194 "gram.y" { (yyval.ival) = ExclusiveLock; ;} break; - case 1619: -#line 12133 "gram.y" + case 1627: +#line 12195 "gram.y" { (yyval.ival) = AccessExclusiveLock; ;} break; - case 1620: -#line 12136 "gram.y" + case 1628: +#line 12198 "gram.y" { (yyval.boolean) = true; ;} break; - case 1621: -#line 12137 "gram.y" + case 1629: +#line 12199 "gram.y" { (yyval.boolean) = false; ;} break; - case 1622: -#line 12141 "gram.y" + case 1630: +#line 12203 "gram.y" { (yyval.ival) = LockWaitError; ;} break; - case 1623: -#line 12142 "gram.y" + case 1631: +#line 12204 "gram.y" { (yyval.ival) = LockWaitSkip; ;} break; - case 1624: -#line 12143 "gram.y" + case 1632: +#line 12205 "gram.y" { (yyval.ival) = LockWaitBlock; ;} break; - case 1625: -#line 12159 "gram.y" + case 1633: +#line 12221 "gram.y" { UpdateStmt *n = makeNode(UpdateStmt); @@ -43052,26 +44136,26 @@ YYLTYPE yylloc; ;} break; - case 1626: -#line 12173 "gram.y" + case 1634: +#line 12235 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1627: -#line 12174 "gram.y" + case 1635: +#line 12236 "gram.y" { (yyval.list) = list_concat((yyvsp[(1) - (3)].list),(yyvsp[(3) - (3)].list)); ;} break; - case 1628: -#line 12179 "gram.y" + case 1636: +#line 12241 "gram.y" { (yyvsp[(1) - (3)].target)->val = (Node *) (yyvsp[(3) - (3)].node); (yyval.list) = list_make1((yyvsp[(1) - (3)].target)); ;} break; - case 1629: -#line 12184 "gram.y" + case 1637: +#line 12246 "gram.y" { int ncolumns = list_length((yyvsp[(2) - (5)].list)); int i = 1; @@ -43094,8 +44178,8 @@ YYLTYPE yylloc; ;} break; - case 1630: -#line 12208 "gram.y" + case 1638: +#line 12270 "gram.y" { (yyval.target) = makeNode(ResTarget); (yyval.target)->name = (yyvsp[(1) - (2)].str); @@ -43105,18 +44189,18 @@ YYLTYPE yylloc; ;} break; - case 1631: -#line 12218 "gram.y" + case 1639: +#line 12280 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); ;} break; - case 1632: -#line 12219 "gram.y" + case 1640: +#line 12281 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list),(yyvsp[(3) - (3)].target)); ;} break; - case 1633: -#line 12235 "gram.y" + case 1641: +#line 12297 "gram.y" { MergeStmt *m = makeNode(MergeStmt); @@ -43130,18 +44214,18 @@ YYLTYPE yylloc; ;} break; - case 1634: -#line 12249 "gram.y" + case 1642: +#line 12311 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1635: -#line 12250 "gram.y" + case 1643: +#line 12312 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list),(yyvsp[(2) - (2)].node)); ;} break; - case 1636: -#line 12255 "gram.y" + case 1644: +#line 12317 "gram.y" { (yyvsp[(5) - (5)].mergewhen)->matched = true; (yyvsp[(5) - (5)].mergewhen)->condition = (yyvsp[(3) - (5)].node); @@ -43150,8 +44234,8 @@ YYLTYPE yylloc; ;} break; - case 1637: -#line 12262 "gram.y" + case 1645: +#line 12324 "gram.y" { (yyvsp[(5) - (5)].mergewhen)->matched = true; (yyvsp[(5) - (5)].mergewhen)->condition = (yyvsp[(3) - (5)].node); @@ -43160,8 +44244,8 @@ YYLTYPE yylloc; ;} break; - case 1638: -#line 12269 "gram.y" + case 1646: +#line 12331 "gram.y" { (yyvsp[(6) - (6)].mergewhen)->matched = false; (yyvsp[(6) - (6)].mergewhen)->condition = (yyvsp[(4) - (6)].node); @@ -43170,8 +44254,8 @@ YYLTYPE yylloc; ;} break; - case 1639: -#line 12276 "gram.y" + case 1647: +#line 12338 "gram.y" { MergeWhenClause *m = makeNode(MergeWhenClause); @@ -43183,8 +44267,8 @@ YYLTYPE yylloc; ;} break; - case 1640: -#line 12286 "gram.y" + case 1648: +#line 12348 "gram.y" { MergeWhenClause *m = makeNode(MergeWhenClause); @@ -43196,18 +44280,18 @@ YYLTYPE yylloc; ;} break; - case 1641: -#line 12298 "gram.y" + case 1649: +#line 12360 "gram.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1642: -#line 12299 "gram.y" + case 1650: +#line 12361 "gram.y" { (yyval.node) = NULL; ;} break; - case 1643: -#line 12304 "gram.y" + case 1651: +#line 12366 "gram.y" { MergeWhenClause *n = makeNode(MergeWhenClause); n->commandType = CMD_UPDATE; @@ -43219,8 +44303,8 @@ YYLTYPE yylloc; ;} break; - case 1644: -#line 12317 "gram.y" + case 1652: +#line 12379 "gram.y" { MergeWhenClause *n = makeNode(MergeWhenClause); n->commandType = CMD_DELETE; @@ -43232,8 +44316,8 @@ YYLTYPE yylloc; ;} break; - case 1645: -#line 12330 "gram.y" + case 1653: +#line 12392 "gram.y" { MergeWhenClause *n = makeNode(MergeWhenClause); n->commandType = CMD_INSERT; @@ -43244,8 +44328,8 @@ YYLTYPE yylloc; ;} break; - case 1646: -#line 12339 "gram.y" + case 1654: +#line 12401 "gram.y" { MergeWhenClause *n = makeNode(MergeWhenClause); n->commandType = CMD_INSERT; @@ -43256,8 +44340,8 @@ YYLTYPE yylloc; ;} break; - case 1647: -#line 12348 "gram.y" + case 1655: +#line 12410 "gram.y" { MergeWhenClause *n = makeNode(MergeWhenClause); n->commandType = CMD_INSERT; @@ -43268,8 +44352,8 @@ YYLTYPE yylloc; ;} break; - case 1648: -#line 12357 "gram.y" + case 1656: +#line 12419 "gram.y" { MergeWhenClause *n = makeNode(MergeWhenClause); n->commandType = CMD_INSERT; @@ -43280,8 +44364,8 @@ YYLTYPE yylloc; ;} break; - case 1649: -#line 12366 "gram.y" + case 1657: +#line 12428 "gram.y" { MergeWhenClause *n = makeNode(MergeWhenClause); n->commandType = CMD_INSERT; @@ -43292,15 +44376,15 @@ YYLTYPE yylloc; ;} break; - case 1650: -#line 12378 "gram.y" + case 1658: +#line 12440 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1651: -#line 12390 "gram.y" + case 1659: +#line 12452 "gram.y" { DeclareCursorStmt *n = makeNode(DeclareCursorStmt); @@ -43312,73 +44396,73 @@ YYLTYPE yylloc; ;} break; - case 1652: -#line 12401 "gram.y" + case 1660: +#line 12463 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1653: -#line 12404 "gram.y" + case 1661: +#line 12466 "gram.y" { (yyval.ival) = 0; ;} break; - case 1654: -#line 12405 "gram.y" + case 1662: +#line 12467 "gram.y" { (yyval.ival) = (yyvsp[(1) - (3)].ival) | CURSOR_OPT_NO_SCROLL; ;} break; - case 1655: -#line 12406 "gram.y" + case 1663: +#line 12468 "gram.y" { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_SCROLL; ;} break; - case 1656: -#line 12407 "gram.y" + case 1664: +#line 12469 "gram.y" { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_BINARY; ;} break; - case 1657: -#line 12408 "gram.y" + case 1665: +#line 12470 "gram.y" { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_ASENSITIVE; ;} break; - case 1658: -#line 12409 "gram.y" + case 1666: +#line 12471 "gram.y" { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_INSENSITIVE; ;} break; - case 1659: -#line 12412 "gram.y" + case 1667: +#line 12474 "gram.y" { (yyval.ival) = 0; ;} break; - case 1660: -#line 12413 "gram.y" + case 1668: +#line 12475 "gram.y" { (yyval.ival) = CURSOR_OPT_HOLD; ;} break; - case 1661: -#line 12414 "gram.y" + case 1669: +#line 12476 "gram.y" { (yyval.ival) = 0; ;} break; - case 1664: -#line 12467 "gram.y" + case 1672: +#line 12529 "gram.y" { (yyval.node) = (yyvsp[(2) - (3)].node); ;} break; - case 1665: -#line 12468 "gram.y" + case 1673: +#line 12530 "gram.y" { (yyval.node) = (yyvsp[(2) - (3)].node); ;} break; - case 1666: -#line 12483 "gram.y" + case 1674: +#line 12545 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1667: -#line 12485 "gram.y" + case 1675: +#line 12547 "gram.y" { insertSelectOptions((SelectStmt *) (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].list), NIL, NULL, NULL, @@ -43387,8 +44471,8 @@ YYLTYPE yylloc; ;} break; - case 1668: -#line 12492 "gram.y" + case 1676: +#line 12554 "gram.y" { insertSelectOptions((SelectStmt *) (yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].list), (yyvsp[(3) - (4)].list), (yyvsp[(4) - (4)].selectlimit), @@ -43398,8 +44482,8 @@ YYLTYPE yylloc; ;} break; - case 1669: -#line 12500 "gram.y" + case 1677: +#line 12562 "gram.y" { insertSelectOptions((SelectStmt *) (yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].list), (yyvsp[(4) - (4)].list), (yyvsp[(3) - (4)].selectlimit), @@ -43409,8 +44493,8 @@ YYLTYPE yylloc; ;} break; - case 1670: -#line 12508 "gram.y" + case 1678: +#line 12570 "gram.y" { insertSelectOptions((SelectStmt *) (yyvsp[(2) - (2)].node), NULL, NIL, NULL, @@ -43420,8 +44504,8 @@ YYLTYPE yylloc; ;} break; - case 1671: -#line 12516 "gram.y" + case 1679: +#line 12578 "gram.y" { insertSelectOptions((SelectStmt *) (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].list), NIL, NULL, @@ -43431,8 +44515,8 @@ YYLTYPE yylloc; ;} break; - case 1672: -#line 12524 "gram.y" + case 1680: +#line 12586 "gram.y" { insertSelectOptions((SelectStmt *) (yyvsp[(2) - (5)].node), (yyvsp[(3) - (5)].list), (yyvsp[(4) - (5)].list), (yyvsp[(5) - (5)].selectlimit), @@ -43442,8 +44526,8 @@ YYLTYPE yylloc; ;} break; - case 1673: -#line 12532 "gram.y" + case 1681: +#line 12594 "gram.y" { insertSelectOptions((SelectStmt *) (yyvsp[(2) - (5)].node), (yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].list), (yyvsp[(4) - (5)].selectlimit), @@ -43453,18 +44537,18 @@ YYLTYPE yylloc; ;} break; - case 1674: -#line 12542 "gram.y" + case 1682: +#line 12604 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1675: -#line 12543 "gram.y" + case 1683: +#line 12605 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1676: -#line 12578 "gram.y" + case 1684: +#line 12640 "gram.y" { SelectStmt *n = makeNode(SelectStmt); @@ -43480,8 +44564,8 @@ YYLTYPE yylloc; ;} break; - case 1677: -#line 12594 "gram.y" + case 1685: +#line 12656 "gram.y" { SelectStmt *n = makeNode(SelectStmt); @@ -43498,13 +44582,13 @@ YYLTYPE yylloc; ;} break; - case 1678: -#line 12608 "gram.y" + case 1686: +#line 12670 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1679: -#line 12610 "gram.y" + case 1687: +#line 12672 "gram.y" { /* same as SELECT * FROM relation_expr */ ColumnRef *cr = makeNode(ColumnRef); @@ -43525,29 +44609,29 @@ YYLTYPE yylloc; ;} break; - case 1680: -#line 12629 "gram.y" + case 1688: +#line 12691 "gram.y" { (yyval.node) = makeSetOp(SETOP_UNION, (yyvsp[(3) - (4)].setquantifier) == SET_QUANTIFIER_ALL, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node)); ;} break; - case 1681: -#line 12633 "gram.y" + case 1689: +#line 12695 "gram.y" { (yyval.node) = makeSetOp(SETOP_INTERSECT, (yyvsp[(3) - (4)].setquantifier) == SET_QUANTIFIER_ALL, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node)); ;} break; - case 1682: -#line 12637 "gram.y" + case 1690: +#line 12699 "gram.y" { (yyval.node) = makeSetOp(SETOP_EXCEPT, (yyvsp[(3) - (4)].setquantifier) == SET_QUANTIFIER_ALL, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node)); ;} break; - case 1683: -#line 12652 "gram.y" + case 1691: +#line 12714 "gram.y" { (yyval.with) = makeNode(WithClause); (yyval.with)->ctes = (yyvsp[(2) - (2)].list); @@ -43556,8 +44640,8 @@ YYLTYPE yylloc; ;} break; - case 1684: -#line 12659 "gram.y" + case 1692: +#line 12721 "gram.y" { (yyval.with) = makeNode(WithClause); (yyval.with)->ctes = (yyvsp[(2) - (2)].list); @@ -43566,8 +44650,8 @@ YYLTYPE yylloc; ;} break; - case 1685: -#line 12666 "gram.y" + case 1693: +#line 12728 "gram.y" { (yyval.with) = makeNode(WithClause); (yyval.with)->ctes = (yyvsp[(3) - (3)].list); @@ -43576,18 +44660,18 @@ YYLTYPE yylloc; ;} break; - case 1686: -#line 12675 "gram.y" + case 1694: +#line 12737 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1687: -#line 12676 "gram.y" + case 1695: +#line 12738 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1688: -#line 12680 "gram.y" + case 1696: +#line 12742 "gram.y" { CommonTableExpr *n = makeNode(CommonTableExpr); @@ -43602,23 +44686,23 @@ YYLTYPE yylloc; ;} break; - case 1689: -#line 12695 "gram.y" + case 1697: +#line 12757 "gram.y" { (yyval.ival) = CTEMaterializeAlways; ;} break; - case 1690: -#line 12696 "gram.y" + case 1698: +#line 12758 "gram.y" { (yyval.ival) = CTEMaterializeNever; ;} break; - case 1691: -#line 12697 "gram.y" + case 1699: +#line 12759 "gram.y" { (yyval.ival) = CTEMaterializeDefault; ;} break; - case 1692: -#line 12702 "gram.y" + case 1700: +#line 12764 "gram.y" { CTESearchClause *n = makeNode(CTESearchClause); @@ -43630,8 +44714,8 @@ YYLTYPE yylloc; ;} break; - case 1693: -#line 12712 "gram.y" + case 1701: +#line 12774 "gram.y" { CTESearchClause *n = makeNode(CTESearchClause); @@ -43643,15 +44727,15 @@ YYLTYPE yylloc; ;} break; - case 1694: -#line 12722 "gram.y" + case 1702: +#line 12784 "gram.y" { (yyval.node) = NULL; ;} break; - case 1695: -#line 12729 "gram.y" + case 1703: +#line 12791 "gram.y" { CTECycleClause *n = makeNode(CTECycleClause); @@ -43665,8 +44749,8 @@ YYLTYPE yylloc; ;} break; - case 1696: -#line 12741 "gram.y" + case 1704: +#line 12803 "gram.y" { CTECycleClause *n = makeNode(CTECycleClause); @@ -43680,25 +44764,25 @@ YYLTYPE yylloc; ;} break; - case 1697: -#line 12753 "gram.y" + case 1705: +#line 12815 "gram.y" { (yyval.node) = NULL; ;} break; - case 1698: -#line 12759 "gram.y" + case 1706: +#line 12821 "gram.y" { (yyval.with) = (yyvsp[(1) - (1)].with); ;} break; - case 1699: -#line 12760 "gram.y" + case 1707: +#line 12822 "gram.y" { (yyval.with) = NULL; ;} break; - case 1700: -#line 12765 "gram.y" + case 1708: +#line 12827 "gram.y" { (yyval.into) = makeNode(IntoClause); (yyval.into)->rel = (yyvsp[(2) - (2)].range); @@ -43711,45 +44795,45 @@ YYLTYPE yylloc; ;} break; - case 1701: -#line 12776 "gram.y" + case 1709: +#line 12838 "gram.y" { (yyval.into) = NULL; ;} break; - case 1702: -#line 12785 "gram.y" + case 1710: +#line 12847 "gram.y" { (yyval.range) = (yyvsp[(3) - (3)].range); (yyval.range)->relpersistence = RELPERSISTENCE_TEMP; ;} break; - case 1703: -#line 12790 "gram.y" + case 1711: +#line 12852 "gram.y" { (yyval.range) = (yyvsp[(3) - (3)].range); (yyval.range)->relpersistence = RELPERSISTENCE_TEMP; ;} break; - case 1704: -#line 12795 "gram.y" + case 1712: +#line 12857 "gram.y" { (yyval.range) = (yyvsp[(4) - (4)].range); (yyval.range)->relpersistence = RELPERSISTENCE_TEMP; ;} break; - case 1705: -#line 12800 "gram.y" + case 1713: +#line 12862 "gram.y" { (yyval.range) = (yyvsp[(4) - (4)].range); (yyval.range)->relpersistence = RELPERSISTENCE_TEMP; ;} break; - case 1706: -#line 12805 "gram.y" + case 1714: +#line 12867 "gram.y" { ereport(WARNING, (errmsg("GLOBAL is deprecated in temporary table creation"), @@ -43759,8 +44843,8 @@ YYLTYPE yylloc; ;} break; - case 1707: -#line 12813 "gram.y" + case 1715: +#line 12875 "gram.y" { ereport(WARNING, (errmsg("GLOBAL is deprecated in temporary table creation"), @@ -43770,92 +44854,92 @@ YYLTYPE yylloc; ;} break; - case 1708: -#line 12821 "gram.y" + case 1716: +#line 12883 "gram.y" { (yyval.range) = (yyvsp[(3) - (3)].range); (yyval.range)->relpersistence = RELPERSISTENCE_UNLOGGED; ;} break; - case 1709: -#line 12826 "gram.y" + case 1717: +#line 12888 "gram.y" { (yyval.range) = (yyvsp[(2) - (2)].range); (yyval.range)->relpersistence = RELPERSISTENCE_PERMANENT; ;} break; - case 1710: -#line 12831 "gram.y" + case 1718: +#line 12893 "gram.y" { (yyval.range) = (yyvsp[(1) - (1)].range); (yyval.range)->relpersistence = RELPERSISTENCE_PERMANENT; ;} break; - case 1713: -#line 12842 "gram.y" + case 1721: +#line 12904 "gram.y" { (yyval.setquantifier) = SET_QUANTIFIER_ALL; ;} break; - case 1714: -#line 12843 "gram.y" + case 1722: +#line 12905 "gram.y" { (yyval.setquantifier) = SET_QUANTIFIER_DISTINCT; ;} break; - case 1715: -#line 12844 "gram.y" + case 1723: +#line 12906 "gram.y" { (yyval.setquantifier) = SET_QUANTIFIER_DEFAULT; ;} break; - case 1716: -#line 12851 "gram.y" + case 1724: +#line 12913 "gram.y" { (yyval.list) = list_make1(NIL); ;} break; - - case 1717: -#line 12852 "gram.y" + + case 1725: +#line 12914 "gram.y" { (yyval.list) = (yyvsp[(4) - (5)].list); ;} break; - case 1720: -#line 12861 "gram.y" + case 1728: +#line 12923 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1721: -#line 12862 "gram.y" + case 1729: +#line 12924 "gram.y" { (yyval.list) = NIL; ;} break; - case 1722: -#line 12866 "gram.y" + case 1730: +#line 12928 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1723: -#line 12867 "gram.y" + case 1731: +#line 12929 "gram.y" { (yyval.list) = NIL; ;} break; - case 1724: -#line 12871 "gram.y" + case 1732: +#line 12933 "gram.y" { (yyval.list) = (yyvsp[(3) - (3)].list); ;} break; - case 1725: -#line 12875 "gram.y" + case 1733: +#line 12937 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].sortby)); ;} break; - case 1726: -#line 12876 "gram.y" + case 1734: +#line 12938 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].sortby)); ;} break; - case 1727: -#line 12880 "gram.y" + case 1735: +#line 12942 "gram.y" { (yyval.sortby) = makeNode(SortBy); (yyval.sortby)->node = (yyvsp[(1) - (4)].node); @@ -43866,8 +44950,8 @@ YYLTYPE yylloc; ;} break; - case 1728: -#line 12889 "gram.y" + case 1736: +#line 12951 "gram.y" { (yyval.sortby) = makeNode(SortBy); (yyval.sortby)->node = (yyvsp[(1) - (3)].node); @@ -43878,31 +44962,31 @@ YYLTYPE yylloc; ;} break; - case 1729: -#line 12902 "gram.y" + case 1737: +#line 12964 "gram.y" { (yyval.selectlimit) = (yyvsp[(1) - (2)].selectlimit); ((yyval.selectlimit))->limitOffset = (yyvsp[(2) - (2)].node); ;} break; - case 1730: -#line 12907 "gram.y" + case 1738: +#line 12969 "gram.y" { (yyval.selectlimit) = (yyvsp[(2) - (2)].selectlimit); ((yyval.selectlimit))->limitOffset = (yyvsp[(1) - (2)].node); ;} break; - case 1731: -#line 12912 "gram.y" + case 1739: +#line 12974 "gram.y" { (yyval.selectlimit) = (yyvsp[(1) - (1)].selectlimit); ;} break; - case 1732: -#line 12916 "gram.y" + case 1740: +#line 12978 "gram.y" { SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit)); @@ -43913,18 +44997,18 @@ YYLTYPE yylloc; ;} break; - case 1733: -#line 12927 "gram.y" + case 1741: +#line 12989 "gram.y" { (yyval.selectlimit) = (yyvsp[(1) - (1)].selectlimit); ;} break; - case 1734: -#line 12928 "gram.y" + case 1742: +#line 12990 "gram.y" { (yyval.selectlimit) = NULL; ;} break; - case 1735: -#line 12933 "gram.y" + case 1743: +#line 12995 "gram.y" { SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit)); @@ -43935,8 +45019,8 @@ YYLTYPE yylloc; ;} break; - case 1736: -#line 12942 "gram.y" + case 1744: +#line 13004 "gram.y" { /* Disabled because it was too confusing, bjm 2002-02-18 */ ereport(ERROR, @@ -43947,8 +45031,8 @@ YYLTYPE yylloc; ;} break; - case 1737: -#line 12958 "gram.y" + case 1745: +#line 13020 "gram.y" { SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit)); @@ -43959,8 +45043,8 @@ YYLTYPE yylloc; ;} break; - case 1738: -#line 12967 "gram.y" + case 1746: +#line 13029 "gram.y" { SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit)); @@ -43971,8 +45055,8 @@ YYLTYPE yylloc; ;} break; - case 1739: -#line 12976 "gram.y" + case 1747: +#line 13038 "gram.y" { SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit)); @@ -43983,8 +45067,8 @@ YYLTYPE yylloc; ;} break; - case 1740: -#line 12985 "gram.y" + case 1748: +#line 13047 "gram.y" { SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit)); @@ -43995,81 +45079,81 @@ YYLTYPE yylloc; ;} break; - case 1741: -#line 12997 "gram.y" + case 1749: +#line 13059 "gram.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1742: -#line 13000 "gram.y" + case 1750: +#line 13062 "gram.y" { (yyval.node) = (yyvsp[(2) - (3)].node); ;} break; - case 1743: -#line 13004 "gram.y" + case 1751: +#line 13066 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1744: -#line 13006 "gram.y" + case 1752: +#line 13068 "gram.y" { /* LIMIT ALL is represented as a NULL constant */ (yyval.node) = makeNullAConst((yylsp[(1) - (1)])); ;} break; - case 1745: -#line 13013 "gram.y" + case 1753: +#line 13075 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1746: -#line 13033 "gram.y" + case 1754: +#line 13095 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1747: -#line 13035 "gram.y" + case 1755: +#line 13097 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1748: -#line 13037 "gram.y" + case 1756: +#line 13099 "gram.y" { (yyval.node) = doNegate((yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1749: -#line 13041 "gram.y" + case 1757: +#line 13103 "gram.y" { (yyval.node) = makeIntConst((yyvsp[(1) - (1)].ival),(yylsp[(1) - (1)])); ;} break; - case 1750: -#line 13042 "gram.y" + case 1758: +#line 13104 "gram.y" { (yyval.node) = makeFloatConst((yyvsp[(1) - (1)].str),(yylsp[(1) - (1)])); ;} break; - case 1751: -#line 13046 "gram.y" + case 1759: +#line 13108 "gram.y" { (yyval.ival) = 0; ;} break; - case 1752: -#line 13047 "gram.y" + case 1760: +#line 13109 "gram.y" { (yyval.ival) = 0; ;} break; - case 1753: -#line 13050 "gram.y" + case 1761: +#line 13112 "gram.y" { (yyval.ival) = 0; ;} break; - case 1754: -#line 13051 "gram.y" + case 1762: +#line 13113 "gram.y" { (yyval.ival) = 0; ;} break; - case 1755: -#line 13077 "gram.y" + case 1763: +#line 13139 "gram.y" { GroupClause *n = (GroupClause *) palloc(sizeof(GroupClause)); @@ -44079,8 +45163,8 @@ YYLTYPE yylloc; ;} break; - case 1756: -#line 13085 "gram.y" + case 1764: +#line 13147 "gram.y" { GroupClause *n = (GroupClause *) palloc(sizeof(GroupClause)); @@ -44090,111 +45174,111 @@ YYLTYPE yylloc; ;} break; - case 1757: -#line 13095 "gram.y" + case 1765: +#line 13157 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1758: -#line 13096 "gram.y" + case 1766: +#line 13158 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list),(yyvsp[(3) - (3)].node)); ;} break; - case 1759: -#line 13100 "gram.y" + case 1767: +#line 13162 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1760: -#line 13101 "gram.y" + case 1768: +#line 13163 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1761: -#line 13102 "gram.y" + case 1769: +#line 13164 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1762: -#line 13103 "gram.y" + case 1770: +#line 13165 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1763: -#line 13104 "gram.y" + case 1771: +#line 13166 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1764: -#line 13109 "gram.y" + case 1772: +#line 13171 "gram.y" { (yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_EMPTY, NIL, (yylsp[(1) - (2)])); ;} break; - case 1765: -#line 13122 "gram.y" + case 1773: +#line 13184 "gram.y" { (yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_ROLLUP, (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)])); ;} break; - case 1766: -#line 13129 "gram.y" + case 1774: +#line 13191 "gram.y" { (yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_CUBE, (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)])); ;} break; - case 1767: -#line 13136 "gram.y" + case 1775: +#line 13198 "gram.y" { (yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_SETS, (yyvsp[(4) - (5)].list), (yylsp[(1) - (5)])); ;} break; - case 1768: -#line 13142 "gram.y" + case 1776: +#line 13204 "gram.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1769: -#line 13143 "gram.y" + case 1777: +#line 13205 "gram.y" { (yyval.node) = NULL; ;} break; - case 1770: -#line 13147 "gram.y" + case 1778: +#line 13209 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1771: -#line 13148 "gram.y" + case 1779: +#line 13210 "gram.y" { (yyval.list) = NIL; ;} break; - case 1772: -#line 13152 "gram.y" + case 1780: +#line 13214 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1773: -#line 13153 "gram.y" + case 1781: +#line 13215 "gram.y" { (yyval.list) = NIL; ;} break; - case 1774: -#line 13157 "gram.y" + case 1782: +#line 13219 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1775: -#line 13158 "gram.y" + case 1783: +#line 13220 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} break; - case 1776: -#line 13163 "gram.y" + case 1784: +#line 13225 "gram.y" { LockingClause *n = makeNode(LockingClause); @@ -44205,38 +45289,38 @@ YYLTYPE yylloc; ;} break; - case 1777: -#line 13174 "gram.y" + case 1785: +#line 13236 "gram.y" { (yyval.ival) = LCS_FORUPDATE; ;} break; - case 1778: -#line 13175 "gram.y" + case 1786: +#line 13237 "gram.y" { (yyval.ival) = LCS_FORNOKEYUPDATE; ;} break; - case 1779: -#line 13176 "gram.y" + case 1787: +#line 13238 "gram.y" { (yyval.ival) = LCS_FORSHARE; ;} break; - case 1780: -#line 13177 "gram.y" + case 1788: +#line 13239 "gram.y" { (yyval.ival) = LCS_FORKEYSHARE; ;} break; - case 1781: -#line 13181 "gram.y" + case 1789: +#line 13243 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1782: -#line 13182 "gram.y" + case 1790: +#line 13244 "gram.y" { (yyval.list) = NIL; ;} break; - case 1783: -#line 13193 "gram.y" + case 1791: +#line 13255 "gram.y" { SelectStmt *n = makeNode(SelectStmt); @@ -44245,8 +45329,8 @@ YYLTYPE yylloc; ;} break; - case 1784: -#line 13200 "gram.y" + case 1792: +#line 13262 "gram.y" { SelectStmt *n = (SelectStmt *) (yyvsp[(1) - (5)].node); @@ -44255,36 +45339,36 @@ YYLTYPE yylloc; ;} break; - case 1785: -#line 13218 "gram.y" + case 1793: +#line 13280 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1786: -#line 13219 "gram.y" + case 1794: +#line 13281 "gram.y" { (yyval.list) = NIL; ;} break; - case 1787: -#line 13223 "gram.y" + case 1795: +#line 13285 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1788: -#line 13224 "gram.y" + case 1796: +#line 13286 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1789: -#line 13231 "gram.y" + case 1797: +#line 13293 "gram.y" { (yyvsp[(1) - (2)].range)->alias = (yyvsp[(2) - (2)].alias); (yyval.node) = (Node *) (yyvsp[(1) - (2)].range); ;} break; - case 1790: -#line 13236 "gram.y" + case 1798: +#line 13298 "gram.y" { RangeTableSample *n = (RangeTableSample *) (yyvsp[(3) - (3)].node); @@ -44295,8 +45379,8 @@ YYLTYPE yylloc; ;} break; - case 1791: -#line 13245 "gram.y" + case 1799: +#line 13307 "gram.y" { RangeFunction *n = (RangeFunction *) (yyvsp[(1) - (2)].node); @@ -44306,8 +45390,8 @@ YYLTYPE yylloc; ;} break; - case 1792: -#line 13253 "gram.y" + case 1800: +#line 13315 "gram.y" { RangeFunction *n = (RangeFunction *) (yyvsp[(2) - (3)].node); @@ -44318,8 +45402,8 @@ YYLTYPE yylloc; ;} break; - case 1793: -#line 13262 "gram.y" + case 1801: +#line 13324 "gram.y" { RangeTableFunc *n = (RangeTableFunc *) (yyvsp[(1) - (2)].node); @@ -44328,8 +45412,8 @@ YYLTYPE yylloc; ;} break; - case 1794: -#line 13269 "gram.y" + case 1802: +#line 13331 "gram.y" { RangeTableFunc *n = (RangeTableFunc *) (yyvsp[(2) - (3)].node); @@ -44339,98 +45423,54 @@ YYLTYPE yylloc; ;} break; - case 1795: -#line 13277 "gram.y" + case 1803: +#line 13339 "gram.y" { RangeSubselect *n = makeNode(RangeSubselect); n->lateral = false; n->subquery = (yyvsp[(1) - (2)].node); n->alias = (yyvsp[(2) - (2)].alias); - /* - * The SQL spec does not permit a subselect - * () without an alias clause, - * so we don't either. This avoids the problem - * of needing to invent a unique refname for it. - * That could be surmounted if there's sufficient - * popular demand, but for now let's just implement - * the spec and see if anyone complains. - * However, it does seem like a good idea to emit - * an error message that's better than "syntax error". - */ - if ((yyvsp[(2) - (2)].alias) == NULL) - { - if (IsA((yyvsp[(1) - (2)].node), SelectStmt) && - ((SelectStmt *) (yyvsp[(1) - (2)].node))->valuesLists) - ereport(ERROR, - (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("VALUES in FROM must have an alias"), - errhint("For example, FROM (VALUES ...) [AS] foo."), - parser_errposition((yylsp[(1) - (2)])))); - else - ereport(ERROR, - (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("subquery in FROM must have an alias"), - errhint("For example, FROM (SELECT ...) [AS] foo."), - parser_errposition((yylsp[(1) - (2)])))); - } (yyval.node) = (Node *) n; ;} break; - case 1796: -#line 13313 "gram.y" + case 1804: +#line 13348 "gram.y" { RangeSubselect *n = makeNode(RangeSubselect); n->lateral = true; n->subquery = (yyvsp[(2) - (3)].node); n->alias = (yyvsp[(3) - (3)].alias); - /* same comment as above */ - if ((yyvsp[(3) - (3)].alias) == NULL) - { - if (IsA((yyvsp[(2) - (3)].node), SelectStmt) && - ((SelectStmt *) (yyvsp[(2) - (3)].node))->valuesLists) - ereport(ERROR, - (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("VALUES in FROM must have an alias"), - errhint("For example, FROM (VALUES ...) [AS] foo."), - parser_errposition((yylsp[(2) - (3)])))); - else - ereport(ERROR, - (errcode(ERRCODE_SYNTAX_ERROR), - errmsg("subquery in FROM must have an alias"), - errhint("For example, FROM (SELECT ...) [AS] foo."), - parser_errposition((yylsp[(2) - (3)])))); - } (yyval.node) = (Node *) n; ;} break; - case 1797: -#line 13339 "gram.y" + case 1805: +#line 13357 "gram.y" { (yyval.node) = (Node *) (yyvsp[(1) - (1)].jexpr); ;} break; - case 1798: -#line 13343 "gram.y" + case 1806: +#line 13361 "gram.y" { (yyvsp[(2) - (4)].jexpr)->alias = (yyvsp[(4) - (4)].alias); (yyval.node) = (Node *) (yyvsp[(2) - (4)].jexpr); ;} break; - case 1799: -#line 13369 "gram.y" + case 1807: +#line 13387 "gram.y" { (yyval.jexpr) = (yyvsp[(2) - (3)].jexpr); ;} break; - case 1800: -#line 13373 "gram.y" + case 1808: +#line 13391 "gram.y" { /* CROSS JOIN is same as unqualified inner join */ JoinExpr *n = makeNode(JoinExpr); @@ -44446,8 +45486,8 @@ YYLTYPE yylloc; ;} break; - case 1801: -#line 13387 "gram.y" + case 1809: +#line 13405 "gram.y" { JoinExpr *n = makeNode(JoinExpr); @@ -44470,8 +45510,8 @@ YYLTYPE yylloc; ;} break; - case 1802: -#line 13408 "gram.y" + case 1810: +#line 13426 "gram.y" { /* letting join_type reduce to empty doesn't work */ JoinExpr *n = makeNode(JoinExpr); @@ -44495,8 +45535,8 @@ YYLTYPE yylloc; ;} break; - case 1803: -#line 13430 "gram.y" + case 1811: +#line 13448 "gram.y" { JoinExpr *n = makeNode(JoinExpr); @@ -44511,8 +45551,8 @@ YYLTYPE yylloc; ;} break; - case 1804: -#line 13443 "gram.y" + case 1812: +#line 13461 "gram.y" { /* letting join_type reduce to empty doesn't work */ JoinExpr *n = makeNode(JoinExpr); @@ -44528,8 +45568,8 @@ YYLTYPE yylloc; ;} break; - case 1805: -#line 13460 "gram.y" + case 1813: +#line 13478 "gram.y" { (yyval.alias) = makeNode(Alias); (yyval.alias)->aliasname = (yyvsp[(2) - (5)].str); @@ -44537,16 +45577,16 @@ YYLTYPE yylloc; ;} break; - case 1806: -#line 13466 "gram.y" + case 1814: +#line 13484 "gram.y" { (yyval.alias) = makeNode(Alias); (yyval.alias)->aliasname = (yyvsp[(2) - (2)].str); ;} break; - case 1807: -#line 13471 "gram.y" + case 1815: +#line 13489 "gram.y" { (yyval.alias) = makeNode(Alias); (yyval.alias)->aliasname = (yyvsp[(1) - (4)].str); @@ -44554,26 +45594,26 @@ YYLTYPE yylloc; ;} break; - case 1808: -#line 13477 "gram.y" + case 1816: +#line 13495 "gram.y" { (yyval.alias) = makeNode(Alias); (yyval.alias)->aliasname = (yyvsp[(1) - (1)].str); ;} break; - case 1809: -#line 13483 "gram.y" + case 1817: +#line 13501 "gram.y" { (yyval.alias) = (yyvsp[(1) - (1)].alias); ;} break; - case 1810: -#line 13484 "gram.y" + case 1818: +#line 13502 "gram.y" { (yyval.alias) = NULL; ;} break; - case 1811: -#line 13495 "gram.y" + case 1819: +#line 13513 "gram.y" { (yyval.alias) = makeNode(Alias); (yyval.alias)->aliasname = (yyvsp[(2) - (2)].str); @@ -44581,27 +45621,27 @@ YYLTYPE yylloc; ;} break; - case 1812: -#line 13500 "gram.y" + case 1820: +#line 13518 "gram.y" { (yyval.alias) = NULL; ;} break; - case 1813: -#line 13509 "gram.y" + case 1821: +#line 13527 "gram.y" { (yyval.list) = list_make2((yyvsp[(1) - (1)].alias), NIL); ;} break; - case 1814: -#line 13513 "gram.y" + case 1822: +#line 13531 "gram.y" { (yyval.list) = list_make2(NULL, (yyvsp[(3) - (4)].list)); ;} break; - case 1815: -#line 13517 "gram.y" + case 1823: +#line 13535 "gram.y" { Alias *a = makeNode(Alias); @@ -44610,8 +45650,8 @@ YYLTYPE yylloc; ;} break; - case 1816: -#line 13524 "gram.y" + case 1824: +#line 13542 "gram.y" { Alias *a = makeNode(Alias); @@ -44619,50 +45659,50 @@ YYLTYPE yylloc; (yyval.list) = list_make2(a, (yyvsp[(3) - (4)].list)); ;} break; - - case 1817: -#line 13531 "gram.y" + + case 1825: +#line 13549 "gram.y" { (yyval.list) = list_make2(NULL, NIL); ;} break; - case 1818: -#line 13536 "gram.y" + case 1826: +#line 13554 "gram.y" { (yyval.jtype) = JOIN_FULL; ;} break; - case 1819: -#line 13537 "gram.y" + case 1827: +#line 13555 "gram.y" { (yyval.jtype) = JOIN_LEFT; ;} break; - case 1820: -#line 13538 "gram.y" + case 1828: +#line 13556 "gram.y" { (yyval.jtype) = JOIN_RIGHT; ;} break; - case 1821: -#line 13539 "gram.y" + case 1829: +#line 13557 "gram.y" { (yyval.jtype) = JOIN_INNER; ;} break; - case 1824: -#line 13560 "gram.y" + case 1832: +#line 13578 "gram.y" { (yyval.node) = (Node *) list_make2((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].alias)); ;} break; - case 1825: -#line 13564 "gram.y" + case 1833: +#line 13582 "gram.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1826: -#line 13572 "gram.y" + case 1834: +#line 13590 "gram.y" { /* inheritance query, implicitly */ (yyval.range) = (yyvsp[(1) - (1)].range); @@ -44671,15 +45711,15 @@ YYLTYPE yylloc; ;} break; - case 1827: -#line 13579 "gram.y" + case 1835: +#line 13597 "gram.y" { (yyval.range) = (yyvsp[(1) - (1)].range); ;} break; - case 1828: -#line 13586 "gram.y" + case 1836: +#line 13604 "gram.y" { /* inheritance query, explicitly */ (yyval.range) = (yyvsp[(1) - (2)].range); @@ -44688,8 +45728,8 @@ YYLTYPE yylloc; ;} break; - case 1829: -#line 13593 "gram.y" + case 1837: +#line 13611 "gram.y" { /* no inheritance */ (yyval.range) = (yyvsp[(2) - (2)].range); @@ -44698,8 +45738,8 @@ YYLTYPE yylloc; ;} break; - case 1830: -#line 13600 "gram.y" + case 1838: +#line 13618 "gram.y" { /* no inheritance, SQL99-style syntax */ (yyval.range) = (yyvsp[(3) - (4)].range); @@ -44708,25 +45748,25 @@ YYLTYPE yylloc; ;} break; - case 1831: -#line 13610 "gram.y" + case 1839: +#line 13628 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].range)); ;} break; - case 1832: -#line 13611 "gram.y" + case 1840: +#line 13629 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].range)); ;} break; - case 1833: -#line 13625 "gram.y" + case 1841: +#line 13643 "gram.y" { (yyval.range) = (yyvsp[(1) - (1)].range); ;} break; - case 1834: -#line 13629 "gram.y" + case 1842: +#line 13647 "gram.y" { Alias *alias = makeNode(Alias); @@ -44736,8 +45776,8 @@ YYLTYPE yylloc; ;} break; - case 1835: -#line 13637 "gram.y" + case 1843: +#line 13655 "gram.y" { Alias *alias = makeNode(Alias); @@ -44747,8 +45787,8 @@ YYLTYPE yylloc; ;} break; - case 1836: -#line 13651 "gram.y" + case 1844: +#line 13669 "gram.y" { RangeTableSample *n = makeNode(RangeTableSample); @@ -44761,18 +45801,18 @@ YYLTYPE yylloc; ;} break; - case 1837: -#line 13664 "gram.y" + case 1845: +#line 13682 "gram.y" { (yyval.node) = (Node *) (yyvsp[(3) - (4)].node); ;} break; - case 1838: -#line 13665 "gram.y" + case 1846: +#line 13683 "gram.y" { (yyval.node) = NULL; ;} break; - case 1839: -#line 13681 "gram.y" + case 1847: +#line 13699 "gram.y" { RangeFunction *n = makeNode(RangeFunction); @@ -44785,8 +45825,8 @@ YYLTYPE yylloc; ;} break; - case 1840: -#line 13692 "gram.y" + case 1848: +#line 13710 "gram.y" { RangeFunction *n = makeNode(RangeFunction); @@ -44799,58 +45839,58 @@ YYLTYPE yylloc; ;} break; - case 1841: -#line 13705 "gram.y" + case 1849: +#line 13723 "gram.y" { (yyval.list) = list_make2((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].list)); ;} break; - case 1842: -#line 13709 "gram.y" + case 1850: +#line 13727 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); ;} break; - case 1843: -#line 13710 "gram.y" + case 1851: +#line 13728 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); ;} break; - case 1844: -#line 13713 "gram.y" + case 1852: +#line 13731 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1845: -#line 13714 "gram.y" + case 1853: +#line 13732 "gram.y" { (yyval.list) = NIL; ;} break; - case 1846: -#line 13717 "gram.y" + case 1854: +#line 13735 "gram.y" { (yyval.boolean) = true; ;} break; - case 1847: -#line 13718 "gram.y" + case 1855: +#line 13736 "gram.y" { (yyval.boolean) = false; ;} break; - case 1848: -#line 13723 "gram.y" + case 1856: +#line 13741 "gram.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1849: -#line 13724 "gram.y" + case 1857: +#line 13742 "gram.y" { (yyval.node) = NULL; ;} break; - case 1850: -#line 13729 "gram.y" + case 1858: +#line 13747 "gram.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1851: -#line 13731 "gram.y" + case 1859: +#line 13749 "gram.y" { CurrentOfExpr *n = makeNode(CurrentOfExpr); @@ -44861,37 +45901,37 @@ YYLTYPE yylloc; ;} break; - case 1852: -#line 13739 "gram.y" + case 1860: +#line 13757 "gram.y" { (yyval.node) = NULL; ;} break; - case 1853: -#line 13744 "gram.y" + case 1861: +#line 13762 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1854: -#line 13745 "gram.y" + case 1862: +#line 13763 "gram.y" { (yyval.list) = NIL; ;} break; - case 1855: -#line 13750 "gram.y" + case 1863: +#line 13768 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1856: -#line 13754 "gram.y" + case 1864: +#line 13772 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1857: -#line 13760 "gram.y" + case 1865: +#line 13778 "gram.y" { ColumnDef *n = makeNode(ColumnDef); @@ -44912,8 +45952,8 @@ YYLTYPE yylloc; ;} break; - case 1858: -#line 13785 "gram.y" + case 1866: +#line 13803 "gram.y" { RangeTableFunc *n = makeNode(RangeTableFunc); @@ -44926,8 +45966,8 @@ YYLTYPE yylloc; ;} break; - case 1859: -#line 13797 "gram.y" + case 1867: +#line 13815 "gram.y" { RangeTableFunc *n = makeNode(RangeTableFunc); @@ -44940,18 +45980,18 @@ YYLTYPE yylloc; ;} break; - case 1860: -#line 13809 "gram.y" + case 1868: +#line 13827 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1861: -#line 13810 "gram.y" + case 1869: +#line 13828 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1862: -#line 13815 "gram.y" + case 1870: +#line 13833 "gram.y" { RangeTableFuncCol *fc = makeNode(RangeTableFuncCol); @@ -44967,8 +46007,8 @@ YYLTYPE yylloc; ;} break; - case 1863: -#line 13829 "gram.y" + case 1871: +#line 13847 "gram.y" { RangeTableFuncCol *fc = makeNode(RangeTableFuncCol); ListCell *option; @@ -45027,8 +46067,8 @@ YYLTYPE yylloc; ;} break; - case 1864: -#line 13886 "gram.y" + case 1872: +#line 13904 "gram.y" { RangeTableFuncCol *fc = makeNode(RangeTableFuncCol); @@ -45041,48 +46081,48 @@ YYLTYPE yylloc; ;} break; - case 1865: -#line 13900 "gram.y" + case 1873: +#line 13918 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1866: -#line 13902 "gram.y" + case 1874: +#line 13920 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); ;} break; - case 1867: -#line 13907 "gram.y" + case 1875: +#line 13925 "gram.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1868: -#line 13909 "gram.y" + case 1876: +#line 13927 "gram.y" { (yyval.defelt) = makeDefElem("default", (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1869: -#line 13911 "gram.y" + case 1877: +#line 13929 "gram.y" { (yyval.defelt) = makeDefElem("is_not_null", (Node *) makeBoolean(true), (yylsp[(1) - (2)])); ;} break; - case 1870: -#line 13913 "gram.y" + case 1878: +#line 13931 "gram.y" { (yyval.defelt) = makeDefElem("is_not_null", (Node *) makeBoolean(false), (yylsp[(1) - (1)])); ;} break; - case 1871: -#line 13918 "gram.y" + case 1879: +#line 13936 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); ;} break; - case 1872: -#line 13920 "gram.y" + case 1880: +#line 13938 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); ;} break; - case 1873: -#line 13925 "gram.y" + case 1881: +#line 13943 "gram.y" { (yyval.target) = makeNode(ResTarget); (yyval.target)->name = (yyvsp[(3) - (3)].str); @@ -45092,8 +46132,8 @@ YYLTYPE yylloc; ;} break; - case 1874: -#line 13933 "gram.y" + case 1882: +#line 13951 "gram.y" { (yyval.target) = makeNode(ResTarget); (yyval.target)->name = NULL; @@ -45103,16 +46143,16 @@ YYLTYPE yylloc; ;} break; - case 1875: -#line 13953 "gram.y" + case 1883: +#line 13971 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (2)].typnam); (yyval.typnam)->arrayBounds = (yyvsp[(2) - (2)].list); ;} break; - case 1876: -#line 13958 "gram.y" + case 1884: +#line 13976 "gram.y" { (yyval.typnam) = (yyvsp[(2) - (3)].typnam); (yyval.typnam)->arrayBounds = (yyvsp[(3) - (3)].list); @@ -45120,16 +46160,16 @@ YYLTYPE yylloc; ;} break; - case 1877: -#line 13965 "gram.y" + case 1885: +#line 13983 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (5)].typnam); (yyval.typnam)->arrayBounds = list_make1(makeInteger((yyvsp[(4) - (5)].ival))); ;} break; - case 1878: -#line 13970 "gram.y" + case 1886: +#line 13988 "gram.y" { (yyval.typnam) = (yyvsp[(2) - (6)].typnam); (yyval.typnam)->arrayBounds = list_make1(makeInteger((yyvsp[(5) - (6)].ival))); @@ -45137,16 +46177,16 @@ YYLTYPE yylloc; ;} break; - case 1879: -#line 13976 "gram.y" + case 1887: +#line 13994 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (2)].typnam); (yyval.typnam)->arrayBounds = list_make1(makeInteger(-1)); ;} break; - case 1880: -#line 13981 "gram.y" + case 1888: +#line 13999 "gram.y" { (yyval.typnam) = (yyvsp[(2) - (3)].typnam); (yyval.typnam)->arrayBounds = list_make1(makeInteger(-1)); @@ -45154,56 +46194,56 @@ YYLTYPE yylloc; ;} break; - case 1881: -#line 13990 "gram.y" + case 1889: +#line 14008 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeInteger(-1)); ;} break; - case 1882: -#line 13992 "gram.y" + case 1890: +#line 14010 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (4)].list), makeInteger((yyvsp[(3) - (4)].ival))); ;} break; - case 1883: -#line 13994 "gram.y" + case 1891: +#line 14012 "gram.y" { (yyval.list) = NIL; ;} break; - case 1884: -#line 13998 "gram.y" + case 1892: +#line 14016 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1885: -#line 13999 "gram.y" + case 1893: +#line 14017 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1886: -#line 14000 "gram.y" + case 1894: +#line 14018 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1887: -#line 14001 "gram.y" + case 1895: +#line 14019 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1888: -#line 14002 "gram.y" + case 1896: +#line 14020 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1889: -#line 14004 "gram.y" + case 1897: +#line 14022 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (2)].typnam); (yyval.typnam)->typmods = (yyvsp[(2) - (2)].list); ;} break; - case 1890: -#line 14009 "gram.y" + case 1898: +#line 14027 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (4)].typnam); (yyval.typnam)->typmods = list_make2(makeIntConst(INTERVAL_FULL_RANGE, -1), @@ -45211,28 +46251,28 @@ YYLTYPE yylloc; ;} break; - case 1891: -#line 14028 "gram.y" + case 1899: +#line 14046 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1892: -#line 14029 "gram.y" + case 1900: +#line 14047 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1893: -#line 14030 "gram.y" + case 1901: +#line 14048 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1894: -#line 14031 "gram.y" + case 1902: +#line 14049 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1895: -#line 14043 "gram.y" + case 1903: +#line 14061 "gram.y" { (yyval.typnam) = makeTypeName((yyvsp[(1) - (2)].str)); (yyval.typnam)->typmods = (yyvsp[(2) - (2)].list); @@ -45240,8 +46280,8 @@ YYLTYPE yylloc; ;} break; - case 1896: -#line 14049 "gram.y" + case 1904: +#line 14067 "gram.y" { (yyval.typnam) = makeTypeNameFromNameList(lcons(makeString((yyvsp[(1) - (3)].str)), (yyvsp[(2) - (3)].list))); (yyval.typnam)->typmods = (yyvsp[(3) - (3)].list); @@ -45249,74 +46289,74 @@ YYLTYPE yylloc; ;} break; - case 1897: -#line 14056 "gram.y" + case 1905: +#line 14074 "gram.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1898: -#line 14057 "gram.y" + case 1906: +#line 14075 "gram.y" { (yyval.list) = NIL; ;} break; - case 1899: -#line 14064 "gram.y" + case 1907: +#line 14082 "gram.y" { (yyval.typnam) = SystemTypeName("int4"); (yyval.typnam)->location = (yylsp[(1) - (1)]); ;} break; - case 1900: -#line 14069 "gram.y" + case 1908: +#line 14087 "gram.y" { (yyval.typnam) = SystemTypeName("int4"); (yyval.typnam)->location = (yylsp[(1) - (1)]); ;} break; - case 1901: -#line 14074 "gram.y" + case 1909: +#line 14092 "gram.y" { (yyval.typnam) = SystemTypeName("int2"); (yyval.typnam)->location = (yylsp[(1) - (1)]); ;} break; - case 1902: -#line 14079 "gram.y" + case 1910: +#line 14097 "gram.y" { (yyval.typnam) = SystemTypeName("int8"); (yyval.typnam)->location = (yylsp[(1) - (1)]); ;} break; - case 1903: -#line 14084 "gram.y" + case 1911: +#line 14102 "gram.y" { (yyval.typnam) = SystemTypeName("float4"); (yyval.typnam)->location = (yylsp[(1) - (1)]); ;} break; - case 1904: -#line 14089 "gram.y" + case 1912: +#line 14107 "gram.y" { (yyval.typnam) = (yyvsp[(2) - (2)].typnam); (yyval.typnam)->location = (yylsp[(1) - (2)]); ;} break; - case 1905: -#line 14094 "gram.y" + case 1913: +#line 14112 "gram.y" { (yyval.typnam) = SystemTypeName("float8"); (yyval.typnam)->location = (yylsp[(1) - (2)]); ;} break; - case 1906: -#line 14099 "gram.y" + case 1914: +#line 14117 "gram.y" { (yyval.typnam) = SystemTypeName("numeric"); (yyval.typnam)->typmods = (yyvsp[(2) - (2)].list); @@ -45324,8 +46364,8 @@ YYLTYPE yylloc; ;} break; - case 1907: -#line 14105 "gram.y" + case 1915: +#line 14123 "gram.y" { (yyval.typnam) = SystemTypeName("numeric"); (yyval.typnam)->typmods = (yyvsp[(2) - (2)].list); @@ -45333,8 +46373,8 @@ YYLTYPE yylloc; ;} break; - case 1908: -#line 14111 "gram.y" + case 1916: +#line 14129 "gram.y" { (yyval.typnam) = SystemTypeName("numeric"); (yyval.typnam)->typmods = (yyvsp[(2) - (2)].list); @@ -45342,16 +46382,16 @@ YYLTYPE yylloc; ;} break; - case 1909: -#line 14117 "gram.y" + case 1917: +#line 14135 "gram.y" { (yyval.typnam) = SystemTypeName("bool"); (yyval.typnam)->location = (yylsp[(1) - (1)]); ;} break; - case 1910: -#line 14124 "gram.y" + case 1918: +#line 14142 "gram.y" { /* * Check FLOAT() precision limits assuming IEEE floating @@ -45374,44 +46414,44 @@ YYLTYPE yylloc; ;} break; - case 1911: -#line 14145 "gram.y" + case 1919: +#line 14163 "gram.y" { (yyval.typnam) = SystemTypeName("float8"); ;} break; - case 1912: -#line 14155 "gram.y" + case 1920: +#line 14173 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1913: -#line 14159 "gram.y" + case 1921: +#line 14177 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1914: -#line 14167 "gram.y" + case 1922: +#line 14185 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1915: -#line 14171 "gram.y" + case 1923: +#line 14189 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); (yyval.typnam)->typmods = NIL; ;} break; - case 1916: -#line 14179 "gram.y" + case 1924: +#line 14197 "gram.y" { char *typname; @@ -45422,8 +46462,8 @@ YYLTYPE yylloc; ;} break; - case 1917: -#line 14191 "gram.y" + case 1925: +#line 14209 "gram.y" { /* bit defaults to bit(1), varbit to no limit */ if ((yyvsp[(2) - (2)].boolean)) @@ -45439,29 +46479,29 @@ YYLTYPE yylloc; ;} break; - case 1918: -#line 14212 "gram.y" + case 1926: +#line 14230 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1919: -#line 14216 "gram.y" + case 1927: +#line 14234 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1920: -#line 14222 "gram.y" + case 1928: +#line 14240 "gram.y" { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); ;} break; - case 1921: -#line 14226 "gram.y" + case 1929: +#line 14244 "gram.y" { /* Length was not specified so allow to be unrestricted. * This handles problems with fixed-length (bpchar) strings @@ -45474,8 +46514,8 @@ YYLTYPE yylloc; ;} break; - case 1922: -#line 14239 "gram.y" + case 1930: +#line 14257 "gram.y" { (yyval.typnam) = SystemTypeName((yyvsp[(1) - (4)].str)); (yyval.typnam)->typmods = list_make1(makeIntConst((yyvsp[(3) - (4)].ival), (yylsp[(3) - (4)]))); @@ -45483,8 +46523,8 @@ YYLTYPE yylloc; ;} break; - case 1923: -#line 14247 "gram.y" + case 1931: +#line 14265 "gram.y" { (yyval.typnam) = SystemTypeName((yyvsp[(1) - (1)].str)); /* char defaults to char(1), varchar to no limit */ @@ -45494,48 +46534,48 @@ YYLTYPE yylloc; ;} break; - case 1924: -#line 14257 "gram.y" + case 1932: +#line 14275 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].boolean) ? "varchar": "bpchar"; ;} break; - case 1925: -#line 14259 "gram.y" + case 1933: +#line 14277 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].boolean) ? "varchar": "bpchar"; ;} break; - case 1926: -#line 14261 "gram.y" + case 1934: +#line 14279 "gram.y" { (yyval.str) = "varchar"; ;} break; - case 1927: -#line 14263 "gram.y" + case 1935: +#line 14281 "gram.y" { (yyval.str) = (yyvsp[(3) - (3)].boolean) ? "varchar": "bpchar"; ;} break; - case 1928: -#line 14265 "gram.y" + case 1936: +#line 14283 "gram.y" { (yyval.str) = (yyvsp[(3) - (3)].boolean) ? "varchar": "bpchar"; ;} break; - case 1929: -#line 14267 "gram.y" + case 1937: +#line 14285 "gram.y" { (yyval.str) = (yyvsp[(2) - (2)].boolean) ? "varchar": "bpchar"; ;} break; - case 1930: -#line 14271 "gram.y" + case 1938: +#line 14289 "gram.y" { (yyval.boolean) = true; ;} break; - case 1931: -#line 14272 "gram.y" + case 1939: +#line 14290 "gram.y" { (yyval.boolean) = false; ;} break; - case 1932: -#line 14280 "gram.y" + case 1940: +#line 14298 "gram.y" { if ((yyvsp[(5) - (5)].boolean)) (yyval.typnam) = SystemTypeName("timestamptz"); @@ -45546,8 +46586,8 @@ YYLTYPE yylloc; ;} break; - case 1933: -#line 14289 "gram.y" + case 1941: +#line 14307 "gram.y" { if ((yyvsp[(2) - (2)].boolean)) (yyval.typnam) = SystemTypeName("timestamptz"); @@ -45557,8 +46597,8 @@ YYLTYPE yylloc; ;} break; - case 1934: -#line 14297 "gram.y" + case 1942: +#line 14315 "gram.y" { if ((yyvsp[(5) - (5)].boolean)) (yyval.typnam) = SystemTypeName("timetz"); @@ -45569,8 +46609,8 @@ YYLTYPE yylloc; ;} break; - case 1935: -#line 14306 "gram.y" + case 1943: +#line 14324 "gram.y" { if ((yyvsp[(2) - (2)].boolean)) (yyval.typnam) = SystemTypeName("timetz"); @@ -45580,77 +46620,77 @@ YYLTYPE yylloc; ;} break; - case 1936: -#line 14317 "gram.y" + case 1944: +#line 14335 "gram.y" { (yyval.typnam) = SystemTypeName("interval"); (yyval.typnam)->location = (yylsp[(1) - (1)]); ;} break; - case 1937: -#line 14324 "gram.y" + case 1945: +#line 14342 "gram.y" { (yyval.boolean) = true; ;} break; - case 1938: -#line 14325 "gram.y" + case 1946: +#line 14343 "gram.y" { (yyval.boolean) = false; ;} break; - case 1939: -#line 14326 "gram.y" + case 1947: +#line 14344 "gram.y" { (yyval.boolean) = false; ;} break; - case 1940: -#line 14331 "gram.y" + case 1948: +#line 14349 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(YEAR), (yylsp[(1) - (1)]))); ;} break; - case 1941: -#line 14333 "gram.y" + case 1949: +#line 14351 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(MONTH), (yylsp[(1) - (1)]))); ;} break; - case 1942: -#line 14335 "gram.y" + case 1950: +#line 14353 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(DAY), (yylsp[(1) - (1)]))); ;} break; - case 1943: -#line 14337 "gram.y" + case 1951: +#line 14355 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(HOUR), (yylsp[(1) - (1)]))); ;} break; - case 1944: -#line 14339 "gram.y" + case 1952: +#line 14357 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(MINUTE), (yylsp[(1) - (1)]))); ;} break; - case 1945: -#line 14341 "gram.y" + case 1953: +#line 14359 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1946: -#line 14343 "gram.y" + case 1954: +#line 14361 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(YEAR) | INTERVAL_MASK(MONTH), (yylsp[(1) - (3)]))); ;} break; - case 1947: -#line 14348 "gram.y" + case 1955: +#line 14366 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(DAY) | INTERVAL_MASK(HOUR), (yylsp[(1) - (3)]))); ;} break; - case 1948: -#line 14353 "gram.y" + case 1956: +#line 14371 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(DAY) | INTERVAL_MASK(HOUR) | @@ -45658,8 +46698,8 @@ YYLTYPE yylloc; ;} break; - case 1949: -#line 14359 "gram.y" + case 1957: +#line 14377 "gram.y" { (yyval.list) = (yyvsp[(3) - (3)].list); linitial((yyval.list)) = makeIntConst(INTERVAL_MASK(DAY) | @@ -45669,16 +46709,16 @@ YYLTYPE yylloc; ;} break; - case 1950: -#line 14367 "gram.y" + case 1958: +#line 14385 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE), (yylsp[(1) - (3)]))); ;} break; - case 1951: -#line 14372 "gram.y" + case 1959: +#line 14390 "gram.y" { (yyval.list) = (yyvsp[(3) - (3)].list); linitial((yyval.list)) = makeIntConst(INTERVAL_MASK(HOUR) | @@ -45687,8 +46727,8 @@ YYLTYPE yylloc; ;} break; - case 1952: -#line 14379 "gram.y" + case 1960: +#line 14397 "gram.y" { (yyval.list) = (yyvsp[(3) - (3)].list); linitial((yyval.list)) = makeIntConst(INTERVAL_MASK(MINUTE) | @@ -45696,38 +46736,38 @@ YYLTYPE yylloc; ;} break; - case 1953: -#line 14385 "gram.y" + case 1961: +#line 14403 "gram.y" { (yyval.list) = NIL; ;} break; - case 1954: -#line 14390 "gram.y" + case 1962: +#line 14408 "gram.y" { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(SECOND), (yylsp[(1) - (1)]))); ;} break; - case 1955: -#line 14394 "gram.y" + case 1963: +#line 14412 "gram.y" { (yyval.list) = list_make2(makeIntConst(INTERVAL_MASK(SECOND), (yylsp[(1) - (4)])), makeIntConst((yyvsp[(3) - (4)].ival), (yylsp[(3) - (4)]))); ;} break; - case 1956: -#line 14429 "gram.y" + case 1964: +#line 14447 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1957: -#line 14431 "gram.y" + case 1965: +#line 14449 "gram.y" { (yyval.node) = makeTypeCast((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].typnam), (yylsp[(2) - (3)])); ;} break; - case 1958: -#line 14433 "gram.y" + case 1966: +#line 14451 "gram.y" { CollateClause *n = makeNode(CollateClause); @@ -45738,8 +46778,8 @@ YYLTYPE yylloc; ;} break; - case 1959: -#line 14442 "gram.y" + case 1967: +#line 14460 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("timezone"), list_make2((yyvsp[(5) - (5)].node), (yyvsp[(1) - (5)].node)), @@ -45748,116 +46788,116 @@ YYLTYPE yylloc; ;} break; - case 1960: -#line 14458 "gram.y" + case 1968: +#line 14476 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1961: -#line 14460 "gram.y" + case 1969: +#line 14478 "gram.y" { (yyval.node) = doNegate((yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1962: -#line 14462 "gram.y" + case 1970: +#line 14480 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1963: -#line 14464 "gram.y" + case 1971: +#line 14482 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1964: -#line 14466 "gram.y" + case 1972: +#line 14484 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1965: -#line 14468 "gram.y" + case 1973: +#line 14486 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1966: -#line 14470 "gram.y" + case 1974: +#line 14488 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1967: -#line 14472 "gram.y" + case 1975: +#line 14490 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1968: -#line 14474 "gram.y" + case 1976: +#line 14492 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1969: -#line 14476 "gram.y" + case 1977: +#line 14494 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1970: -#line 14478 "gram.y" + case 1978: +#line 14496 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1971: -#line 14480 "gram.y" + case 1979: +#line 14498 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1972: -#line 14482 "gram.y" + case 1980: +#line 14500 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1973: -#line 14484 "gram.y" + case 1981: +#line 14502 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<>", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1974: -#line 14487 "gram.y" + case 1982: +#line 14505 "gram.y" { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (3)].list), (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1975: -#line 14489 "gram.y" + case 1983: +#line 14507 "gram.y" { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(1) - (2)].list), NULL, (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1976: -#line 14492 "gram.y" + case 1984: +#line 14510 "gram.y" { (yyval.node) = makeAndExpr((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1977: -#line 14494 "gram.y" + case 1985: +#line 14512 "gram.y" { (yyval.node) = makeOrExpr((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1978: -#line 14496 "gram.y" + case 1986: +#line 14514 "gram.y" { (yyval.node) = makeNotExpr((yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1979: -#line 14498 "gram.y" + case 1987: +#line 14516 "gram.y" { (yyval.node) = makeNotExpr((yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1980: -#line 14501 "gram.y" + case 1988: +#line 14519 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "~~", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1981: -#line 14506 "gram.y" + case 1989: +#line 14524 "gram.y" { FuncCall *n = makeFuncCall(SystemFuncName("like_escape"), list_make2((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)), @@ -45868,16 +46908,16 @@ YYLTYPE yylloc; ;} break; - case 1982: -#line 14515 "gram.y" + case 1990: +#line 14533 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "!~~", (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node), (yylsp[(2) - (4)])); ;} break; - case 1983: -#line 14520 "gram.y" + case 1991: +#line 14538 "gram.y" { FuncCall *n = makeFuncCall(SystemFuncName("like_escape"), list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)), @@ -45888,16 +46928,16 @@ YYLTYPE yylloc; ;} break; - case 1984: -#line 14529 "gram.y" + case 1992: +#line 14547 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "~~*", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 1985: -#line 14534 "gram.y" + case 1993: +#line 14552 "gram.y" { FuncCall *n = makeFuncCall(SystemFuncName("like_escape"), list_make2((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)), @@ -45908,16 +46948,16 @@ YYLTYPE yylloc; ;} break; - case 1986: -#line 14543 "gram.y" + case 1994: +#line 14561 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "!~~*", (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node), (yylsp[(2) - (4)])); ;} break; - case 1987: -#line 14548 "gram.y" + case 1995: +#line 14566 "gram.y" { FuncCall *n = makeFuncCall(SystemFuncName("like_escape"), list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)), @@ -45928,8 +46968,8 @@ YYLTYPE yylloc; ;} break; - case 1988: -#line 14558 "gram.y" + case 1996: +#line 14576 "gram.y" { FuncCall *n = makeFuncCall(SystemFuncName("similar_to_escape"), list_make1((yyvsp[(4) - (4)].node)), @@ -45940,8 +46980,8 @@ YYLTYPE yylloc; ;} break; - case 1989: -#line 14567 "gram.y" + case 1997: +#line 14585 "gram.y" { FuncCall *n = makeFuncCall(SystemFuncName("similar_to_escape"), list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)), @@ -45952,8 +46992,8 @@ YYLTYPE yylloc; ;} break; - case 1990: -#line 14576 "gram.y" + case 1998: +#line 14594 "gram.y" { FuncCall *n = makeFuncCall(SystemFuncName("similar_to_escape"), list_make1((yyvsp[(5) - (5)].node)), @@ -45964,8 +47004,8 @@ YYLTYPE yylloc; ;} break; - case 1991: -#line 14585 "gram.y" + case 1999: +#line 14603 "gram.y" { FuncCall *n = makeFuncCall(SystemFuncName("similar_to_escape"), list_make2((yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)), @@ -45976,8 +47016,8 @@ YYLTYPE yylloc; ;} break; - case 1992: -#line 14604 "gram.y" + case 2000: +#line 14622 "gram.y" { NullTest *n = makeNode(NullTest); @@ -45988,8 +47028,8 @@ YYLTYPE yylloc; ;} break; - case 1993: -#line 14613 "gram.y" + case 2001: +#line 14631 "gram.y" { NullTest *n = makeNode(NullTest); @@ -46000,8 +47040,8 @@ YYLTYPE yylloc; ;} break; - case 1994: -#line 14622 "gram.y" + case 2002: +#line 14640 "gram.y" { NullTest *n = makeNode(NullTest); @@ -46012,8 +47052,8 @@ YYLTYPE yylloc; ;} break; - case 1995: -#line 14631 "gram.y" + case 2003: +#line 14649 "gram.y" { NullTest *n = makeNode(NullTest); @@ -46024,8 +47064,8 @@ YYLTYPE yylloc; ;} break; - case 1996: -#line 14640 "gram.y" + case 2004: +#line 14658 "gram.y" { if (list_length((yyvsp[(1) - (3)].list)) != 2) ereport(ERROR, @@ -46044,8 +47084,8 @@ YYLTYPE yylloc; ;} break; - case 1997: -#line 14657 "gram.y" + case 2005: +#line 14675 "gram.y" { BooleanTest *b = makeNode(BooleanTest); @@ -46056,8 +47096,8 @@ YYLTYPE yylloc; ;} break; - case 1998: -#line 14666 "gram.y" + case 2006: +#line 14684 "gram.y" { BooleanTest *b = makeNode(BooleanTest); @@ -46068,8 +47108,8 @@ YYLTYPE yylloc; ;} break; - case 1999: -#line 14675 "gram.y" + case 2007: +#line 14693 "gram.y" { BooleanTest *b = makeNode(BooleanTest); @@ -46080,8 +47120,8 @@ YYLTYPE yylloc; ;} break; - case 2000: -#line 14684 "gram.y" + case 2008: +#line 14702 "gram.y" { BooleanTest *b = makeNode(BooleanTest); @@ -46092,8 +47132,8 @@ YYLTYPE yylloc; ;} break; - case 2001: -#line 14693 "gram.y" + case 2009: +#line 14711 "gram.y" { BooleanTest *b = makeNode(BooleanTest); @@ -46104,8 +47144,8 @@ YYLTYPE yylloc; ;} break; - case 2002: -#line 14702 "gram.y" + case 2010: +#line 14720 "gram.y" { BooleanTest *b = makeNode(BooleanTest); @@ -46116,22 +47156,22 @@ YYLTYPE yylloc; ;} break; - case 2003: -#line 14711 "gram.y" + case 2011: +#line 14729 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node), (yylsp[(2) - (5)])); ;} break; - case 2004: -#line 14715 "gram.y" + case 2012: +#line 14733 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_DISTINCT, "=", (yyvsp[(1) - (6)].node), (yyvsp[(6) - (6)].node), (yylsp[(2) - (6)])); ;} break; - case 2005: -#line 14719 "gram.y" + case 2013: +#line 14737 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_BETWEEN, "BETWEEN", @@ -46141,8 +47181,8 @@ YYLTYPE yylloc; ;} break; - case 2006: -#line 14727 "gram.y" + case 2014: +#line 14745 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_BETWEEN, "NOT BETWEEN", @@ -46152,8 +47192,8 @@ YYLTYPE yylloc; ;} break; - case 2007: -#line 14735 "gram.y" + case 2015: +#line 14753 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_BETWEEN_SYM, "BETWEEN SYMMETRIC", @@ -46163,8 +47203,8 @@ YYLTYPE yylloc; ;} break; - case 2008: -#line 14743 "gram.y" + case 2016: +#line 14761 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_BETWEEN_SYM, "NOT BETWEEN SYMMETRIC", @@ -46174,8 +47214,8 @@ YYLTYPE yylloc; ;} break; - case 2009: -#line 14751 "gram.y" + case 2017: +#line 14769 "gram.y" { /* in_expr returns a SubLink or a list of a_exprs */ if (IsA((yyvsp[(3) - (3)].node), SubLink)) @@ -46198,8 +47238,8 @@ YYLTYPE yylloc; ;} break; - case 2010: -#line 14772 "gram.y" + case 2018: +#line 14790 "gram.y" { /* in_expr returns a SubLink or a list of a_exprs */ if (IsA((yyvsp[(4) - (4)].node), SubLink)) @@ -46224,8 +47264,8 @@ YYLTYPE yylloc; ;} break; - case 2011: -#line 14795 "gram.y" + case 2019: +#line 14813 "gram.y" { SubLink *n = makeNode(SubLink); @@ -46239,8 +47279,8 @@ YYLTYPE yylloc; ;} break; - case 2012: -#line 14807 "gram.y" + case 2020: +#line 14825 "gram.y" { if ((yyvsp[(3) - (6)].ival) == ANY_SUBLINK) (yyval.node) = (Node *) makeA_Expr(AEXPR_OP_ANY, (yyvsp[(2) - (6)].list), (yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node), (yylsp[(2) - (6)])); @@ -46249,8 +47289,8 @@ YYLTYPE yylloc; ;} break; - case 2013: -#line 14814 "gram.y" + case 2021: +#line 14832 "gram.y" { /* Not sure how to get rid of the parentheses * but there are lots of shift/reduce errors without them. @@ -46268,16 +47308,16 @@ YYLTYPE yylloc; ;} break; - case 2014: -#line 14830 "gram.y" + case 2022: +#line 14848 "gram.y" { (yyval.node) = makeXmlExpr(IS_DOCUMENT, NULL, NIL, list_make1((yyvsp[(1) - (3)].node)), (yylsp[(2) - (3)])); ;} break; - case 2015: -#line 14835 "gram.y" + case 2023: +#line 14853 "gram.y" { (yyval.node) = makeNotExpr(makeXmlExpr(IS_DOCUMENT, NULL, NIL, list_make1((yyvsp[(1) - (4)].node)), (yylsp[(2) - (4)])), @@ -46285,8 +47325,8 @@ YYLTYPE yylloc; ;} break; - case 2016: -#line 14841 "gram.y" + case 2024: +#line 14859 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("is_normalized"), list_make1((yyvsp[(1) - (3)].node)), @@ -46295,8 +47335,8 @@ YYLTYPE yylloc; ;} break; - case 2017: -#line 14848 "gram.y" + case 2025: +#line 14866 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("is_normalized"), list_make2((yyvsp[(1) - (4)].node), makeStringConst((yyvsp[(3) - (4)].str), (yylsp[(3) - (4)]))), @@ -46305,8 +47345,8 @@ YYLTYPE yylloc; ;} break; - case 2018: -#line 14855 "gram.y" + case 2026: +#line 14873 "gram.y" { (yyval.node) = makeNotExpr((Node *) makeFuncCall(SystemFuncName("is_normalized"), list_make1((yyvsp[(1) - (4)].node)), @@ -46316,8 +47356,8 @@ YYLTYPE yylloc; ;} break; - case 2019: -#line 14863 "gram.y" + case 2027: +#line 14881 "gram.y" { (yyval.node) = makeNotExpr((Node *) makeFuncCall(SystemFuncName("is_normalized"), list_make2((yyvsp[(1) - (5)].node), makeStringConst((yyvsp[(4) - (5)].str), (yylsp[(4) - (5)]))), @@ -46327,8 +47367,26 @@ YYLTYPE yylloc; ;} break; - case 2020: -#line 14871 "gram.y" + case 2028: +#line 14890 "gram.y" + { + JsonFormat *format = makeJsonFormat(JS_FORMAT_DEFAULT, JS_ENC_DEFAULT, -1); + + (yyval.node) = makeJsonIsPredicate((yyvsp[(1) - (4)].node), format, (yyvsp[(3) - (4)].ival), (yyvsp[(4) - (4)].boolean), (yylsp[(1) - (4)])); + ;} + break; + + case 2029: +#line 14909 "gram.y" + { + JsonFormat *format = makeJsonFormat(JS_FORMAT_DEFAULT, JS_ENC_DEFAULT, -1); + + (yyval.node) = makeNotExpr(makeJsonIsPredicate((yyvsp[(1) - (5)].node), format, (yyvsp[(4) - (5)].ival), (yyvsp[(5) - (5)].boolean), (yylsp[(1) - (5)])), (yylsp[(1) - (5)])); + ;} + break; + + case 2030: +#line 14927 "gram.y" { /* * The SQL spec only allows DEFAULT in "contextually typed @@ -46345,120 +47403,120 @@ YYLTYPE yylloc; ;} break; - case 2021: -#line 14897 "gram.y" + case 2031: +#line 14953 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 2022: -#line 14899 "gram.y" + case 2032: +#line 14955 "gram.y" { (yyval.node) = makeTypeCast((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].typnam), (yylsp[(2) - (3)])); ;} break; - case 2023: -#line 14901 "gram.y" + case 2033: +#line 14957 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 2024: -#line 14903 "gram.y" + case 2034: +#line 14959 "gram.y" { (yyval.node) = doNegate((yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 2025: -#line 14905 "gram.y" + case 2035: +#line 14961 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2026: -#line 14907 "gram.y" + case 2036: +#line 14963 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2027: -#line 14909 "gram.y" + case 2037: +#line 14965 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2028: -#line 14911 "gram.y" + case 2038: +#line 14967 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2029: -#line 14913 "gram.y" + case 2039: +#line 14969 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2030: -#line 14915 "gram.y" + case 2040: +#line 14971 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2031: -#line 14917 "gram.y" + case 2041: +#line 14973 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2032: -#line 14919 "gram.y" + case 2042: +#line 14975 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2033: -#line 14921 "gram.y" + case 2043: +#line 14977 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2034: -#line 14923 "gram.y" + case 2044: +#line 14979 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2035: -#line 14925 "gram.y" + case 2045: +#line 14981 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2036: -#line 14927 "gram.y" + case 2046: +#line 14983 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<>", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2037: -#line 14929 "gram.y" + case 2047: +#line 14985 "gram.y" { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (3)].list), (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); ;} break; - case 2038: -#line 14931 "gram.y" + case 2048: +#line 14987 "gram.y" { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(1) - (2)].list), NULL, (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 2039: -#line 14933 "gram.y" + case 2049: +#line 14989 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node), (yylsp[(2) - (5)])); ;} break; - case 2040: -#line 14937 "gram.y" + case 2050: +#line 14993 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_DISTINCT, "=", (yyvsp[(1) - (6)].node), (yyvsp[(6) - (6)].node), (yylsp[(2) - (6)])); ;} break; - case 2041: -#line 14941 "gram.y" + case 2051: +#line 14997 "gram.y" { (yyval.node) = makeXmlExpr(IS_DOCUMENT, NULL, NIL, list_make1((yyvsp[(1) - (3)].node)), (yylsp[(2) - (3)])); ;} break; - case 2042: -#line 14946 "gram.y" + case 2052: +#line 15002 "gram.y" { (yyval.node) = makeNotExpr(makeXmlExpr(IS_DOCUMENT, NULL, NIL, list_make1((yyvsp[(1) - (4)].node)), (yylsp[(2) - (4)])), @@ -46466,18 +47524,18 @@ YYLTYPE yylloc; ;} break; - case 2043: -#line 14961 "gram.y" + case 2053: +#line 15017 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 2044: -#line 14962 "gram.y" + case 2054: +#line 15018 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 2045: -#line 14964 "gram.y" + case 2055: +#line 15020 "gram.y" { ParamRef *p = makeNode(ParamRef); @@ -46496,8 +47554,8 @@ YYLTYPE yylloc; ;} break; - case 2046: -#line 14981 "gram.y" + case 2056: +#line 15037 "gram.y" { if ((yyvsp[(4) - (4)].list)) { @@ -46512,18 +47570,18 @@ YYLTYPE yylloc; ;} break; - case 2047: -#line 14994 "gram.y" + case 2057: +#line 15050 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 2048: -#line 14996 "gram.y" + case 2058: +#line 15052 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 2049: -#line 14998 "gram.y" + case 2059: +#line 15054 "gram.y" { SubLink *n = makeNode(SubLink); @@ -46537,8 +47595,8 @@ YYLTYPE yylloc; ;} break; - case 2050: -#line 15010 "gram.y" + case 2060: +#line 15066 "gram.y" { /* * Because the select_with_parens nonterminal is designed @@ -46565,8 +47623,8 @@ YYLTYPE yylloc; ;} break; - case 2051: -#line 15035 "gram.y" + case 2061: +#line 15091 "gram.y" { SubLink *n = makeNode(SubLink); @@ -46580,8 +47638,8 @@ YYLTYPE yylloc; ;} break; - case 2052: -#line 15047 "gram.y" + case 2062: +#line 15103 "gram.y" { SubLink *n = makeNode(SubLink); @@ -46595,8 +47653,8 @@ YYLTYPE yylloc; ;} break; - case 2053: -#line 15059 "gram.y" + case 2063: +#line 15115 "gram.y" { A_ArrayExpr *n = castNode(A_ArrayExpr, (yyvsp[(2) - (2)].node)); @@ -46606,8 +47664,8 @@ YYLTYPE yylloc; ;} break; - case 2054: -#line 15067 "gram.y" + case 2064: +#line 15123 "gram.y" { RowExpr *r = makeNode(RowExpr); @@ -46620,8 +47678,8 @@ YYLTYPE yylloc; ;} break; - case 2055: -#line 15078 "gram.y" + case 2065: +#line 15134 "gram.y" { RowExpr *r = makeNode(RowExpr); @@ -46634,8 +47692,8 @@ YYLTYPE yylloc; ;} break; - case 2056: -#line 15089 "gram.y" + case 2066: +#line 15145 "gram.y" { GroupingFunc *g = makeNode(GroupingFunc); @@ -46645,8 +47703,8 @@ YYLTYPE yylloc; ;} break; - case 2057: -#line 15099 "gram.y" + case 2067: +#line 15155 "gram.y" { (yyval.node) = (Node *) makeFuncCall((yyvsp[(1) - (3)].list), NIL, COERCE_EXPLICIT_CALL, @@ -46654,8 +47712,8 @@ YYLTYPE yylloc; ;} break; - case 2058: -#line 15105 "gram.y" + case 2068: +#line 15161 "gram.y" { FuncCall *n = makeFuncCall((yyvsp[(1) - (5)].list), (yyvsp[(3) - (5)].list), COERCE_EXPLICIT_CALL, @@ -46666,8 +47724,8 @@ YYLTYPE yylloc; ;} break; - case 2059: -#line 15114 "gram.y" + case 2069: +#line 15170 "gram.y" { FuncCall *n = makeFuncCall((yyvsp[(1) - (6)].list), list_make1((yyvsp[(4) - (6)].node)), COERCE_EXPLICIT_CALL, @@ -46679,8 +47737,8 @@ YYLTYPE yylloc; ;} break; - case 2060: -#line 15124 "gram.y" + case 2070: +#line 15180 "gram.y" { FuncCall *n = makeFuncCall((yyvsp[(1) - (8)].list), lappend((yyvsp[(3) - (8)].list), (yyvsp[(6) - (8)].node)), COERCE_EXPLICIT_CALL, @@ -46692,8 +47750,8 @@ YYLTYPE yylloc; ;} break; - case 2061: -#line 15134 "gram.y" + case 2071: +#line 15190 "gram.y" { FuncCall *n = makeFuncCall((yyvsp[(1) - (6)].list), (yyvsp[(4) - (6)].list), COERCE_EXPLICIT_CALL, @@ -46708,8 +47766,8 @@ YYLTYPE yylloc; ;} break; - case 2062: -#line 15147 "gram.y" + case 2072: +#line 15203 "gram.y" { FuncCall *n = makeFuncCall((yyvsp[(1) - (6)].list), (yyvsp[(4) - (6)].list), COERCE_EXPLICIT_CALL, @@ -46721,8 +47779,8 @@ YYLTYPE yylloc; ;} break; - case 2063: -#line 15157 "gram.y" + case 2073: +#line 15213 "gram.y" { /* * We consider AGGREGATE(*) to invoke a parameterless @@ -46743,8 +47801,8 @@ YYLTYPE yylloc; ;} break; - case 2064: -#line 15188 "gram.y" + case 2074: +#line 15244 "gram.y" { FuncCall *n = (FuncCall *) (yyvsp[(1) - (4)].node); @@ -46782,23 +47840,41 @@ YYLTYPE yylloc; ;} break; - case 2065: -#line 15224 "gram.y" + case 2075: +#line 15280 "gram.y" + { + JsonAggConstructor *n = IsA((yyvsp[(1) - (3)].node), JsonObjectAgg) ? + ((JsonObjectAgg *) (yyvsp[(1) - (3)].node))->constructor : + ((JsonArrayAgg *) (yyvsp[(1) - (3)].node))->constructor; + + n->agg_filter = (yyvsp[(2) - (3)].node); + n->over = (yyvsp[(3) - (3)].windef); + (yyval.node) = (Node *) (yyvsp[(1) - (3)].node); + ;} + break; + + case 2076: +#line 15290 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 2066: -#line 15234 "gram.y" + case 2077: +#line 15300 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 2067: -#line 15235 "gram.y" + case 2078: +#line 15301 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 2068: -#line 15243 "gram.y" + case 2079: +#line 15302 "gram.y" + { (yyval.node) = (yyvsp[(1) - (1)].node); ;} + break; + + case 2080: +#line 15310 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("pg_collation_for"), list_make1((yyvsp[(4) - (5)].node)), @@ -46807,118 +47883,128 @@ YYLTYPE yylloc; ;} break; - case 2069: -#line 15250 "gram.y" + case 2081: +#line 15317 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_DATE, -1, (yylsp[(1) - (1)])); ;} break; - case 2070: -#line 15254 "gram.y" + case 2082: +#line 15321 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_TIME, -1, (yylsp[(1) - (1)])); ;} break; - case 2071: -#line 15258 "gram.y" + case 2083: +#line 15325 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_TIME_N, (yyvsp[(3) - (4)].ival), (yylsp[(1) - (4)])); ;} break; - case 2072: -#line 15262 "gram.y" + case 2084: +#line 15329 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_TIMESTAMP, -1, (yylsp[(1) - (1)])); ;} break; - case 2073: -#line 15266 "gram.y" + case 2085: +#line 15333 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_TIMESTAMP_N, (yyvsp[(3) - (4)].ival), (yylsp[(1) - (4)])); ;} break; - case 2074: -#line 15270 "gram.y" + case 2086: +#line 15337 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_LOCALTIME, -1, (yylsp[(1) - (1)])); ;} break; - case 2075: -#line 15274 "gram.y" + case 2087: +#line 15341 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_LOCALTIME_N, (yyvsp[(3) - (4)].ival), (yylsp[(1) - (4)])); ;} break; - case 2076: -#line 15278 "gram.y" + case 2088: +#line 15345 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_LOCALTIMESTAMP, -1, (yylsp[(1) - (1)])); ;} break; - case 2077: -#line 15282 "gram.y" + case 2089: +#line 15349 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_LOCALTIMESTAMP_N, (yyvsp[(3) - (4)].ival), (yylsp[(1) - (4)])); ;} break; - case 2078: -#line 15286 "gram.y" + case 2090: +#line 15353 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_ROLE, -1, (yylsp[(1) - (1)])); ;} break; - case 2079: -#line 15290 "gram.y" + case 2091: +#line 15357 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_USER, -1, (yylsp[(1) - (1)])); ;} break; - case 2080: -#line 15294 "gram.y" + case 2092: +#line 15361 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_SESSION_USER, -1, (yylsp[(1) - (1)])); ;} break; - case 2081: -#line 15298 "gram.y" + case 2093: +#line 15365 "gram.y" + { + (yyval.node) = (Node *) makeFuncCall(SystemFuncName("system_user"), + NIL, + COERCE_SQL_SYNTAX, + (yylsp[(1) - (1)])); + ;} + break; + + case 2094: +#line 15372 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_USER, -1, (yylsp[(1) - (1)])); ;} break; - case 2082: -#line 15302 "gram.y" + case 2095: +#line 15376 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_CATALOG, -1, (yylsp[(1) - (1)])); ;} break; - case 2083: -#line 15306 "gram.y" + case 2096: +#line 15380 "gram.y" { (yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_SCHEMA, -1, (yylsp[(1) - (1)])); ;} break; - case 2084: -#line 15310 "gram.y" + case 2097: +#line 15384 "gram.y" { (yyval.node) = makeTypeCast((yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].typnam), (yylsp[(1) - (6)])); ;} break; - case 2085: -#line 15312 "gram.y" + case 2098: +#line 15386 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("extract"), (yyvsp[(3) - (4)].list), @@ -46927,8 +48013,8 @@ YYLTYPE yylloc; ;} break; - case 2086: -#line 15319 "gram.y" + case 2099: +#line 15393 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("normalize"), list_make1((yyvsp[(3) - (4)].node)), @@ -46937,8 +48023,8 @@ YYLTYPE yylloc; ;} break; - case 2087: -#line 15326 "gram.y" + case 2100: +#line 15400 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("normalize"), list_make2((yyvsp[(3) - (6)].node), makeStringConst((yyvsp[(5) - (6)].str), (yylsp[(5) - (6)]))), @@ -46947,8 +48033,8 @@ YYLTYPE yylloc; ;} break; - case 2088: -#line 15333 "gram.y" + case 2101: +#line 15407 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("overlay"), (yyvsp[(3) - (4)].list), @@ -46957,8 +48043,8 @@ YYLTYPE yylloc; ;} break; - case 2089: -#line 15340 "gram.y" + case 2102: +#line 15414 "gram.y" { /* * allow functions named overlay() to be called without @@ -46971,8 +48057,8 @@ YYLTYPE yylloc; ;} break; - case 2090: -#line 15351 "gram.y" + case 2103: +#line 15425 "gram.y" { /* * position(A in B) is converted to position(B, A) @@ -46988,8 +48074,8 @@ YYLTYPE yylloc; ;} break; - case 2091: -#line 15365 "gram.y" + case 2104: +#line 15439 "gram.y" { /* substring(A from B for C) is converted to * substring(A, B, C) - thomas 2000-11-28 @@ -47001,8 +48087,8 @@ YYLTYPE yylloc; ;} break; - case 2092: -#line 15375 "gram.y" + case 2105: +#line 15449 "gram.y" { /* * allow functions named substring() to be called without @@ -47015,8 +48101,8 @@ YYLTYPE yylloc; ;} break; - case 2093: -#line 15386 "gram.y" + case 2106: +#line 15460 "gram.y" { /* TREAT(expr AS target) converts expr of a particular type to target, * which is defined to be a subtype of the original expression. @@ -47034,8 +48120,8 @@ YYLTYPE yylloc; ;} break; - case 2094: -#line 15402 "gram.y" + case 2107: +#line 15476 "gram.y" { /* various trim expressions are defined in SQL * - thomas 1997-07-19 @@ -47047,8 +48133,8 @@ YYLTYPE yylloc; ;} break; - case 2095: -#line 15412 "gram.y" + case 2108: +#line 15486 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("ltrim"), (yyvsp[(4) - (5)].list), @@ -47057,8 +48143,8 @@ YYLTYPE yylloc; ;} break; - case 2096: -#line 15419 "gram.y" + case 2109: +#line 15493 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("rtrim"), (yyvsp[(4) - (5)].list), @@ -47067,8 +48153,8 @@ YYLTYPE yylloc; ;} break; - case 2097: -#line 15426 "gram.y" + case 2110: +#line 15500 "gram.y" { (yyval.node) = (Node *) makeFuncCall(SystemFuncName("btrim"), (yyvsp[(3) - (4)].list), @@ -47077,15 +48163,15 @@ YYLTYPE yylloc; ;} break; - case 2098: -#line 15433 "gram.y" + case 2111: +#line 15507 "gram.y" { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NULLIF, "=", (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node), (yylsp[(1) - (6)])); ;} break; - case 2099: -#line 15437 "gram.y" + case 2112: +#line 15511 "gram.y" { CoalesceExpr *c = makeNode(CoalesceExpr); @@ -47095,8 +48181,8 @@ YYLTYPE yylloc; ;} break; - case 2100: -#line 15445 "gram.y" + case 2113: +#line 15519 "gram.y" { MinMaxExpr *v = makeNode(MinMaxExpr); @@ -47107,8 +48193,8 @@ YYLTYPE yylloc; ;} break; - case 2101: -#line 15454 "gram.y" + case 2114: +#line 15528 "gram.y" { MinMaxExpr *v = makeNode(MinMaxExpr); @@ -47119,155 +48205,233 @@ YYLTYPE yylloc; ;} break; - case 2102: -#line 15463 "gram.y" + case 2115: +#line 15537 "gram.y" { (yyval.node) = makeXmlExpr(IS_XMLCONCAT, NULL, NIL, (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)])); ;} break; - case 2103: -#line 15467 "gram.y" + case 2116: +#line 15541 "gram.y" { (yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[(4) - (5)].str), NIL, NIL, (yylsp[(1) - (5)])); ;} break; - case 2104: -#line 15471 "gram.y" + case 2117: +#line 15545 "gram.y" { (yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[(4) - (7)].str), (yyvsp[(6) - (7)].list), NIL, (yylsp[(1) - (7)])); ;} break; - case 2105: -#line 15475 "gram.y" + case 2118: +#line 15549 "gram.y" { (yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[(4) - (7)].str), NIL, (yyvsp[(6) - (7)].list), (yylsp[(1) - (7)])); ;} break; - case 2106: -#line 15479 "gram.y" + case 2119: +#line 15553 "gram.y" { (yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[(4) - (9)].str), (yyvsp[(6) - (9)].list), (yyvsp[(8) - (9)].list), (yylsp[(1) - (9)])); ;} break; - case 2107: -#line 15483 "gram.y" + case 2120: +#line 15557 "gram.y" + { + /* xmlexists(A PASSING [BY REF] B [BY REF]) is + * converted to xmlexists(A, B)*/ + (yyval.node) = (Node *) makeFuncCall(SystemFuncName("xmlexists"), + list_make2((yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node)), + COERCE_SQL_SYNTAX, + (yylsp[(1) - (5)])); + ;} + break; + + case 2121: +#line 15566 "gram.y" + { + (yyval.node) = makeXmlExpr(IS_XMLFOREST, NULL, (yyvsp[(3) - (4)].list), NIL, (yylsp[(1) - (4)])); + ;} + break; + + case 2122: +#line 15570 "gram.y" + { + XmlExpr *x = (XmlExpr *) + makeXmlExpr(IS_XMLPARSE, NULL, NIL, + list_make2((yyvsp[(4) - (6)].node), makeBoolAConst((yyvsp[(5) - (6)].boolean), -1)), + (yylsp[(1) - (6)])); + + x->xmloption = (yyvsp[(3) - (6)].ival); + (yyval.node) = (Node *) x; + ;} + break; + + case 2123: +#line 15580 "gram.y" + { + (yyval.node) = makeXmlExpr(IS_XMLPI, (yyvsp[(4) - (5)].str), NULL, NIL, (yylsp[(1) - (5)])); + ;} + break; + + case 2124: +#line 15584 "gram.y" + { + (yyval.node) = makeXmlExpr(IS_XMLPI, (yyvsp[(4) - (7)].str), NULL, list_make1((yyvsp[(6) - (7)].node)), (yylsp[(1) - (7)])); + ;} + break; + + case 2125: +#line 15588 "gram.y" + { + (yyval.node) = makeXmlExpr(IS_XMLROOT, NULL, NIL, + list_make3((yyvsp[(3) - (7)].node), (yyvsp[(5) - (7)].node), (yyvsp[(6) - (7)].node)), (yylsp[(1) - (7)])); + ;} + break; + + case 2126: +#line 15593 "gram.y" { - /* xmlexists(A PASSING [BY REF] B [BY REF]) is - * converted to xmlexists(A, B)*/ - (yyval.node) = (Node *) makeFuncCall(SystemFuncName("xmlexists"), - list_make2((yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node)), - COERCE_SQL_SYNTAX, - (yylsp[(1) - (5)])); + XmlSerialize *n = makeNode(XmlSerialize); + + n->xmloption = (yyvsp[(3) - (8)].ival); + n->expr = (yyvsp[(4) - (8)].node); + n->typeName = (yyvsp[(6) - (8)].typnam); + n->indent = (yyvsp[(7) - (8)].boolean); + n->location = (yylsp[(1) - (8)]); + (yyval.node) = (Node *) n; ;} break; - case 2108: -#line 15492 "gram.y" + case 2127: +#line 15604 "gram.y" { - (yyval.node) = makeXmlExpr(IS_XMLFOREST, NULL, (yyvsp[(3) - (4)].list), NIL, (yylsp[(1) - (4)])); + /* Support for legacy (non-standard) json_object() */ + (yyval.node) = (Node *) makeFuncCall(SystemFuncName("json_object"), + (yyvsp[(3) - (4)].list), COERCE_EXPLICIT_CALL, (yylsp[(1) - (4)])); ;} break; - case 2109: -#line 15496 "gram.y" + case 2128: +#line 15613 "gram.y" { - XmlExpr *x = (XmlExpr *) - makeXmlExpr(IS_XMLPARSE, NULL, NIL, - list_make2((yyvsp[(4) - (6)].node), makeBoolAConst((yyvsp[(5) - (6)].boolean), -1)), - (yylsp[(1) - (6)])); + JsonObjectConstructor *n = makeNode(JsonObjectConstructor); - x->xmloption = (yyvsp[(3) - (6)].ival); - (yyval.node) = (Node *) x; + n->exprs = (yyvsp[(3) - (7)].list); + n->absent_on_null = (yyvsp[(4) - (7)].boolean); + n->unique = (yyvsp[(5) - (7)].boolean); + n->output = (JsonOutput *) (yyvsp[(6) - (7)].node); + n->location = (yylsp[(1) - (7)]); + (yyval.node) = (Node *) n; ;} break; - case 2110: -#line 15506 "gram.y" + case 2129: +#line 15624 "gram.y" { - (yyval.node) = makeXmlExpr(IS_XMLPI, (yyvsp[(4) - (5)].str), NULL, NIL, (yylsp[(1) - (5)])); + JsonObjectConstructor *n = makeNode(JsonObjectConstructor); + + n->exprs = NULL; + n->absent_on_null = false; + n->unique = false; + n->output = (JsonOutput *) (yyvsp[(3) - (4)].node); + n->location = (yylsp[(1) - (4)]); + (yyval.node) = (Node *) n; ;} break; - case 2111: -#line 15510 "gram.y" + case 2130: +#line 15639 "gram.y" { - (yyval.node) = makeXmlExpr(IS_XMLPI, (yyvsp[(4) - (7)].str), NULL, list_make1((yyvsp[(6) - (7)].node)), (yylsp[(1) - (7)])); + JsonArrayConstructor *n = makeNode(JsonArrayConstructor); + + n->exprs = (yyvsp[(3) - (6)].list); + n->absent_on_null = (yyvsp[(4) - (6)].boolean); + n->output = (JsonOutput *) (yyvsp[(5) - (6)].node); + n->location = (yylsp[(1) - (6)]); + (yyval.node) = (Node *) n; ;} break; - case 2112: -#line 15514 "gram.y" + case 2131: +#line 15654 "gram.y" { - (yyval.node) = makeXmlExpr(IS_XMLROOT, NULL, NIL, - list_make3((yyvsp[(3) - (7)].node), (yyvsp[(5) - (7)].node), (yyvsp[(6) - (7)].node)), (yylsp[(1) - (7)])); + JsonArrayQueryConstructor *n = makeNode(JsonArrayQueryConstructor); + + n->query = (yyvsp[(3) - (6)].node); + n->format = (JsonFormat *) (yyvsp[(4) - (6)].node); + n->absent_on_null = true; /* XXX */ + n->output = (JsonOutput *) (yyvsp[(5) - (6)].node); + n->location = (yylsp[(1) - (6)]); + (yyval.node) = (Node *) n; ;} break; - case 2113: -#line 15519 "gram.y" + case 2132: +#line 15667 "gram.y" { - XmlSerialize *n = makeNode(XmlSerialize); + JsonArrayConstructor *n = makeNode(JsonArrayConstructor); - n->xmloption = (yyvsp[(3) - (7)].ival); - n->expr = (yyvsp[(4) - (7)].node); - n->typeName = (yyvsp[(6) - (7)].typnam); - n->location = (yylsp[(1) - (7)]); + n->exprs = NIL; + n->absent_on_null = true; + n->output = (JsonOutput *) (yyvsp[(3) - (4)].node); + n->location = (yylsp[(1) - (4)]); (yyval.node) = (Node *) n; ;} break; - case 2114: -#line 15534 "gram.y" + case 2133: +#line 15682 "gram.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 2115: -#line 15536 "gram.y" + case 2134: +#line 15684 "gram.y" { (yyval.node) = makeNullAConst(-1); ;} break; - case 2116: -#line 15540 "gram.y" + case 2135: +#line 15688 "gram.y" { (yyval.node) = makeIntConst(XML_STANDALONE_YES, -1); ;} break; - case 2117: -#line 15542 "gram.y" + case 2136: +#line 15690 "gram.y" { (yyval.node) = makeIntConst(XML_STANDALONE_NO, -1); ;} break; - case 2118: -#line 15544 "gram.y" + case 2137: +#line 15692 "gram.y" { (yyval.node) = makeIntConst(XML_STANDALONE_NO_VALUE, -1); ;} break; - case 2119: -#line 15546 "gram.y" + case 2138: +#line 15694 "gram.y" { (yyval.node) = makeIntConst(XML_STANDALONE_OMITTED, -1); ;} break; - case 2120: -#line 15549 "gram.y" + case 2139: +#line 15697 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 2121: -#line 15552 "gram.y" + case 2140: +#line 15700 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); ;} break; - case 2122: -#line 15553 "gram.y" + case 2141: +#line 15701 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); ;} break; - case 2123: -#line 15557 "gram.y" + case 2142: +#line 15705 "gram.y" { (yyval.target) = makeNode(ResTarget); (yyval.target)->name = (yyvsp[(3) - (3)].str); @@ -47277,8 +48441,8 @@ YYLTYPE yylloc; ;} break; - case 2124: -#line 15565 "gram.y" + case 2143: +#line 15713 "gram.y" { (yyval.target) = makeNode(ResTarget); (yyval.target)->name = NULL; @@ -47288,101 +48452,116 @@ YYLTYPE yylloc; ;} break; - case 2125: -#line 15574 "gram.y" + case 2144: +#line 15722 "gram.y" { (yyval.ival) = XMLOPTION_DOCUMENT; ;} break; - case 2126: -#line 15575 "gram.y" + case 2145: +#line 15723 "gram.y" { (yyval.ival) = XMLOPTION_CONTENT; ;} break; - case 2127: -#line 15578 "gram.y" + case 2146: +#line 15726 "gram.y" { (yyval.boolean) = true; ;} break; - case 2128: -#line 15579 "gram.y" + case 2147: +#line 15727 "gram.y" { (yyval.boolean) = false; ;} break; - case 2129: -#line 15580 "gram.y" + case 2148: +#line 15728 "gram.y" { (yyval.boolean) = false; ;} break; - case 2130: -#line 15586 "gram.y" + case 2149: +#line 15731 "gram.y" + { (yyval.boolean) = true; ;} + break; + + case 2150: +#line 15732 "gram.y" + { (yyval.boolean) = false; ;} + break; + + case 2151: +#line 15733 "gram.y" + { (yyval.boolean) = false; ;} + break; + + case 2152: +#line 15739 "gram.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 2131: -#line 15590 "gram.y" + case 2153: +#line 15743 "gram.y" { (yyval.node) = (yyvsp[(2) - (3)].node); ;} break; - case 2132: -#line 15594 "gram.y" + case 2154: +#line 15747 "gram.y" { (yyval.node) = (yyvsp[(3) - (3)].node); ;} break; - case 2133: -#line 15598 "gram.y" + case 2155: +#line 15751 "gram.y" { (yyval.node) = (yyvsp[(3) - (4)].node); ;} break; - case 2136: -#line 15613 "gram.y" + case 2158: +#line 15766 "gram.y" { (yyval.list) = (yyvsp[(4) - (5)].list); ;} break; - case 2137: -#line 15614 "gram.y" + case 2159: +#line 15767 "gram.y" { (yyval.list) = NIL; ;} break; - case 2138: -#line 15618 "gram.y" + case 2160: +#line 15771 "gram.y" { (yyval.node) = (yyvsp[(4) - (5)].node); ;} break; - case 2139: -#line 15619 "gram.y" + case 2161: +#line 15772 "gram.y" { (yyval.node) = NULL; ;} break; - case 2140: -#line 15627 "gram.y" + case 2162: +#line 15780 "gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 2141: -#line 15628 "gram.y" + case 2163: +#line 15781 "gram.y" { (yyval.list) = NIL; ;} break; - case 2142: -#line 15632 "gram.y" + case 2164: +#line 15785 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].windef)); ;} break; - case 2143: -#line 15634 "gram.y" + case 2165: +#line 15787 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].windef)); ;} break; - case 2144: -#line 15639 "gram.y" + case 2166: +#line 15792 "gram.y" { WindowDef *n = (yyvsp[(3) - (3)].windef); @@ -47391,13 +48570,13 @@ YYLTYPE yylloc; ;} break; - case 2145: -#line 15648 "gram.y" + case 2167: +#line 15801 "gram.y" { (yyval.windef) = (yyvsp[(2) - (2)].windef); ;} break; - case 2146: -#line 15650 "gram.y" + case 2168: +#line 15803 "gram.y" { WindowDef *n = makeNode(WindowDef); @@ -47413,13 +48592,13 @@ YYLTYPE yylloc; ;} break; - case 2147: -#line 15664 "gram.y" + case 2169: +#line 15817 "gram.y" { (yyval.windef) = NULL; ;} break; - case 2148: -#line 15669 "gram.y" + case 2170: +#line 15822 "gram.y" { WindowDef *n = makeNode(WindowDef); @@ -47436,28 +48615,28 @@ YYLTYPE yylloc; ;} break; - case 2149: -#line 15695 "gram.y" + case 2171: +#line 15848 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2150: -#line 15696 "gram.y" + case 2172: +#line 15849 "gram.y" { (yyval.str) = NULL; ;} break; - case 2151: -#line 15699 "gram.y" + case 2173: +#line 15852 "gram.y" { (yyval.list) = (yyvsp[(3) - (3)].list); ;} break; - case 2152: -#line 15700 "gram.y" + case 2174: +#line 15853 "gram.y" { (yyval.list) = NIL; ;} break; - case 2153: -#line 15709 "gram.y" + case 2175: +#line 15862 "gram.y" { WindowDef *n = (yyvsp[(2) - (3)].windef); @@ -47467,8 +48646,8 @@ YYLTYPE yylloc; ;} break; - case 2154: -#line 15717 "gram.y" + case 2176: +#line 15870 "gram.y" { WindowDef *n = (yyvsp[(2) - (3)].windef); @@ -47478,8 +48657,8 @@ YYLTYPE yylloc; ;} break; - case 2155: -#line 15725 "gram.y" + case 2177: +#line 15878 "gram.y" { WindowDef *n = (yyvsp[(2) - (3)].windef); @@ -47489,8 +48668,8 @@ YYLTYPE yylloc; ;} break; - case 2156: -#line 15733 "gram.y" + case 2178: +#line 15886 "gram.y" { WindowDef *n = makeNode(WindowDef); @@ -47501,8 +48680,8 @@ YYLTYPE yylloc; ;} break; - case 2157: -#line 15744 "gram.y" + case 2179: +#line 15897 "gram.y" { WindowDef *n = (yyvsp[(1) - (1)].windef); @@ -47522,8 +48701,8 @@ YYLTYPE yylloc; ;} break; - case 2158: -#line 15762 "gram.y" + case 2180: +#line 15915 "gram.y" { WindowDef *n1 = (yyvsp[(2) - (4)].windef); WindowDef *n2 = (yyvsp[(4) - (4)].windef); @@ -47563,8 +48742,8 @@ YYLTYPE yylloc; ;} break; - case 2159: -#line 15808 "gram.y" + case 2181: +#line 15961 "gram.y" { WindowDef *n = makeNode(WindowDef); @@ -47575,8 +48754,8 @@ YYLTYPE yylloc; ;} break; - case 2160: -#line 15817 "gram.y" + case 2182: +#line 15970 "gram.y" { WindowDef *n = makeNode(WindowDef); @@ -47587,8 +48766,8 @@ YYLTYPE yylloc; ;} break; - case 2161: -#line 15826 "gram.y" + case 2183: +#line 15979 "gram.y" { WindowDef *n = makeNode(WindowDef); @@ -47599,8 +48778,8 @@ YYLTYPE yylloc; ;} break; - case 2162: -#line 15835 "gram.y" + case 2184: +#line 15988 "gram.y" { WindowDef *n = makeNode(WindowDef); @@ -47611,8 +48790,8 @@ YYLTYPE yylloc; ;} break; - case 2163: -#line 15844 "gram.y" + case 2185: +#line 15997 "gram.y" { WindowDef *n = makeNode(WindowDef); @@ -47623,233 +48802,233 @@ YYLTYPE yylloc; ;} break; - case 2164: -#line 15855 "gram.y" + case 2186: +#line 16008 "gram.y" { (yyval.ival) = FRAMEOPTION_EXCLUDE_CURRENT_ROW; ;} break; - case 2165: -#line 15856 "gram.y" + case 2187: +#line 16009 "gram.y" { (yyval.ival) = FRAMEOPTION_EXCLUDE_GROUP; ;} break; - case 2166: -#line 15857 "gram.y" + case 2188: +#line 16010 "gram.y" { (yyval.ival) = FRAMEOPTION_EXCLUDE_TIES; ;} break; - case 2167: -#line 15858 "gram.y" + case 2189: +#line 16011 "gram.y" { (yyval.ival) = 0; ;} break; - case 2168: -#line 15859 "gram.y" + case 2190: +#line 16012 "gram.y" { (yyval.ival) = 0; ;} break; - case 2169: -#line 15873 "gram.y" + case 2191: +#line 16026 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 2170: -#line 15874 "gram.y" + case 2192: +#line 16027 "gram.y" { (yyval.list) = NIL; ;} break; - case 2171: -#line 15875 "gram.y" + case 2193: +#line 16028 "gram.y" { (yyval.list) = lappend((yyvsp[(2) - (5)].list), (yyvsp[(4) - (5)].node)); ;} break; - case 2172: -#line 15878 "gram.y" + case 2194: +#line 16031 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 2173: -#line 15879 "gram.y" + case 2195: +#line 16032 "gram.y" { (yyval.list) = NIL; ;} break; - case 2174: -#line 15882 "gram.y" + case 2196: +#line 16035 "gram.y" { (yyval.list) = lappend((yyvsp[(2) - (5)].list), (yyvsp[(4) - (5)].node)); ;} break; - case 2175: -#line 15885 "gram.y" + case 2197: +#line 16038 "gram.y" { (yyval.ival) = ANY_SUBLINK; ;} break; - case 2176: -#line 15886 "gram.y" + case 2198: +#line 16039 "gram.y" { (yyval.ival) = ANY_SUBLINK; ;} break; - case 2177: -#line 15887 "gram.y" + case 2199: +#line 16040 "gram.y" { (yyval.ival) = ALL_SUBLINK; ;} break; - case 2178: -#line 15890 "gram.y" + case 2200: +#line 16043 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2179: -#line 15891 "gram.y" + case 2201: +#line 16044 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2180: -#line 15894 "gram.y" + case 2202: +#line 16047 "gram.y" { (yyval.str) = "+"; ;} break; - case 2181: -#line 15895 "gram.y" + case 2203: +#line 16048 "gram.y" { (yyval.str) = "-"; ;} break; - case 2182: -#line 15896 "gram.y" + case 2204: +#line 16049 "gram.y" { (yyval.str) = "*"; ;} break; - case 2183: -#line 15897 "gram.y" + case 2205: +#line 16050 "gram.y" { (yyval.str) = "/"; ;} break; - case 2184: -#line 15898 "gram.y" + case 2206: +#line 16051 "gram.y" { (yyval.str) = "%"; ;} break; - case 2185: -#line 15899 "gram.y" + case 2207: +#line 16052 "gram.y" { (yyval.str) = "^"; ;} break; - case 2186: -#line 15900 "gram.y" + case 2208: +#line 16053 "gram.y" { (yyval.str) = "<"; ;} break; - case 2187: -#line 15901 "gram.y" + case 2209: +#line 16054 "gram.y" { (yyval.str) = ">"; ;} break; - case 2188: -#line 15902 "gram.y" + case 2210: +#line 16055 "gram.y" { (yyval.str) = "="; ;} break; - case 2189: -#line 15903 "gram.y" + case 2211: +#line 16056 "gram.y" { (yyval.str) = "<="; ;} break; - case 2190: -#line 15904 "gram.y" + case 2212: +#line 16057 "gram.y" { (yyval.str) = ">="; ;} break; - case 2191: -#line 15905 "gram.y" + case 2213: +#line 16058 "gram.y" { (yyval.str) = "<>"; ;} break; - case 2192: -#line 15909 "gram.y" + case 2214: +#line 16062 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 2193: -#line 15911 "gram.y" + case 2215: +#line 16064 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 2194: -#line 15916 "gram.y" + case 2216: +#line 16069 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 2195: -#line 15918 "gram.y" + case 2217: +#line 16071 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 2196: -#line 15923 "gram.y" + case 2218: +#line 16076 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 2197: -#line 15925 "gram.y" + case 2219: +#line 16078 "gram.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 2198: -#line 15927 "gram.y" + case 2220: +#line 16080 "gram.y" { (yyval.list) = list_make1(makeString("~~")); ;} break; - case 2199: -#line 15929 "gram.y" + case 2221: +#line 16082 "gram.y" { (yyval.list) = list_make1(makeString("!~~")); ;} break; - case 2200: -#line 15931 "gram.y" + case 2222: +#line 16084 "gram.y" { (yyval.list) = list_make1(makeString("~~*")); ;} break; - case 2201: -#line 15933 "gram.y" + case 2223: +#line 16086 "gram.y" { (yyval.list) = list_make1(makeString("!~~*")); ;} break; - case 2202: -#line 15945 "gram.y" + case 2224: +#line 16098 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 2203: -#line 15949 "gram.y" + case 2225: +#line 16102 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 2204: -#line 15956 "gram.y" + case 2226: +#line 16109 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 2205: -#line 15960 "gram.y" + case 2227: +#line 16113 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 2206: -#line 15966 "gram.y" + case 2228: +#line 16119 "gram.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 2207: -#line 15970 "gram.y" + case 2229: +#line 16123 "gram.y" { NamedArgExpr *na = makeNode(NamedArgExpr); @@ -47861,8 +49040,8 @@ YYLTYPE yylloc; ;} break; - case 2208: -#line 15980 "gram.y" + case 2230: +#line 16133 "gram.y" { NamedArgExpr *na = makeNode(NamedArgExpr); @@ -47874,169 +49053,169 @@ YYLTYPE yylloc; ;} break; - case 2209: -#line 15991 "gram.y" + case 2231: +#line 16144 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 2210: -#line 15992 "gram.y" + case 2232: +#line 16145 "gram.y" { (yyval.list) = NIL; ;} break; - case 2211: -#line 15995 "gram.y" + case 2233: +#line 16148 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].typnam)); ;} break; - case 2212: -#line 15996 "gram.y" + case 2234: +#line 16149 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].typnam)); ;} break; - case 2213: -#line 16000 "gram.y" + case 2235: +#line 16153 "gram.y" { (yyval.node) = makeAArrayExpr((yyvsp[(2) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 2214: -#line 16004 "gram.y" + case 2236: +#line 16157 "gram.y" { (yyval.node) = makeAArrayExpr((yyvsp[(2) - (3)].list), (yylsp[(1) - (3)])); ;} break; - case 2215: -#line 16008 "gram.y" + case 2237: +#line 16161 "gram.y" { (yyval.node) = makeAArrayExpr(NIL, (yylsp[(1) - (2)])); ;} break; - case 2216: -#line 16013 "gram.y" + case 2238: +#line 16166 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 2217: -#line 16014 "gram.y" + case 2239: +#line 16167 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 2218: -#line 16020 "gram.y" + case 2240: +#line 16173 "gram.y" { (yyval.list) = list_make2(makeStringConst((yyvsp[(1) - (3)].str), (yylsp[(1) - (3)])), (yyvsp[(3) - (3)].node)); ;} break; - case 2219: -#line 16024 "gram.y" + case 2241: +#line 16177 "gram.y" { (yyval.list) = list_make2(makeParamRef((yyvsp[(1) - (3)].ival), (yylsp[(1) - (3)])), (yyvsp[(3) - (3)].node)); ;} break; - case 2220: -#line 16033 "gram.y" + case 2242: +#line 16186 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2221: -#line 16034 "gram.y" + case 2243: +#line 16187 "gram.y" { (yyval.str) = "year"; ;} break; - case 2222: -#line 16035 "gram.y" + case 2244: +#line 16188 "gram.y" { (yyval.str) = "month"; ;} break; - case 2223: -#line 16036 "gram.y" + case 2245: +#line 16189 "gram.y" { (yyval.str) = "day"; ;} break; - case 2224: -#line 16037 "gram.y" + case 2246: +#line 16190 "gram.y" { (yyval.str) = "hour"; ;} break; - case 2225: -#line 16038 "gram.y" + case 2247: +#line 16191 "gram.y" { (yyval.str) = "minute"; ;} break; - case 2226: -#line 16039 "gram.y" + case 2248: +#line 16192 "gram.y" { (yyval.str) = "second"; ;} break; - case 2227: -#line 16040 "gram.y" + case 2249: +#line 16193 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2228: -#line 16044 "gram.y" + case 2250: +#line 16197 "gram.y" { (yyval.str) = "NFC"; ;} break; - case 2229: -#line 16045 "gram.y" + case 2251: +#line 16198 "gram.y" { (yyval.str) = "NFD"; ;} break; - case 2230: -#line 16046 "gram.y" + case 2252: +#line 16199 "gram.y" { (yyval.str) = "NFKC"; ;} break; - case 2231: -#line 16047 "gram.y" + case 2253: +#line 16200 "gram.y" { (yyval.str) = "NFKD"; ;} break; - case 2232: -#line 16053 "gram.y" + case 2254: +#line 16206 "gram.y" { /* overlay(A PLACING B FROM C FOR D) is converted to overlay(A, B, C, D) */ (yyval.list) = list_make4((yyvsp[(1) - (7)].node), (yyvsp[(3) - (7)].node), (yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)); ;} break; - case 2233: -#line 16058 "gram.y" + case 2255: +#line 16211 "gram.y" { /* overlay(A PLACING B FROM C) is converted to overlay(A, B, C) */ (yyval.list) = list_make3((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); ;} break; - case 2234: -#line 16066 "gram.y" + case 2256: +#line 16219 "gram.y" { (yyval.list) = list_make2((yyvsp[(3) - (3)].node), (yyvsp[(1) - (3)].node)); ;} break; - case 2235: -#line 16088 "gram.y" + case 2257: +#line 16241 "gram.y" { (yyval.list) = list_make3((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); ;} break; - case 2236: -#line 16092 "gram.y" + case 2258: +#line 16245 "gram.y" { /* not legal per SQL, but might as well allow it */ (yyval.list) = list_make3((yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node), (yyvsp[(3) - (5)].node)); ;} break; - case 2237: -#line 16097 "gram.y" + case 2259: +#line 16250 "gram.y" { /* * Because we aren't restricting data types here, this @@ -48049,8 +49228,8 @@ YYLTYPE yylloc; ;} break; - case 2238: -#line 16108 "gram.y" + case 2260: +#line 16261 "gram.y" { /* not legal per SQL */ @@ -48069,204 +49248,405 @@ YYLTYPE yylloc; ;} break; - case 2239: -#line 16125 "gram.y" + case 2261: +#line 16278 "gram.y" { (yyval.list) = list_make3((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); ;} break; - case 2240: -#line 16130 "gram.y" + case 2262: +#line 16283 "gram.y" { (yyval.list) = lappend((yyvsp[(3) - (3)].list), (yyvsp[(1) - (3)].node)); ;} break; - case 2241: -#line 16131 "gram.y" - { (yyval.list) = (yyvsp[(2) - (2)].list); ;} + case 2263: +#line 16284 "gram.y" + { (yyval.list) = (yyvsp[(2) - (2)].list); ;} + break; + + case 2264: +#line 16285 "gram.y" + { (yyval.list) = (yyvsp[(1) - (1)].list); ;} + break; + + case 2265: +#line 16289 "gram.y" + { + SubLink *n = makeNode(SubLink); + + n->subselect = (yyvsp[(1) - (1)].node); + /* other fields will be filled later */ + (yyval.node) = (Node *) n; + ;} + break; + + case 2266: +#line 16296 "gram.y" + { (yyval.node) = (Node *) (yyvsp[(2) - (3)].list); ;} + break; + + case 2267: +#line 16307 "gram.y" + { + CaseExpr *c = makeNode(CaseExpr); + + c->casetype = InvalidOid; /* not analyzed yet */ + c->arg = (Expr *) (yyvsp[(2) - (5)].node); + c->args = (yyvsp[(3) - (5)].list); + c->defresult = (Expr *) (yyvsp[(4) - (5)].node); + c->location = (yylsp[(1) - (5)]); + (yyval.node) = (Node *) c; + ;} + break; + + case 2268: +#line 16321 "gram.y" + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} + break; + + case 2269: +#line 16322 "gram.y" + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} + break; + + case 2270: +#line 16327 "gram.y" + { + CaseWhen *w = makeNode(CaseWhen); + + w->expr = (Expr *) (yyvsp[(2) - (4)].node); + w->result = (Expr *) (yyvsp[(4) - (4)].node); + w->location = (yylsp[(1) - (4)]); + (yyval.node) = (Node *) w; + ;} + break; + + case 2271: +#line 16338 "gram.y" + { (yyval.node) = (yyvsp[(2) - (2)].node); ;} + break; + + case 2272: +#line 16339 "gram.y" + { (yyval.node) = NULL; ;} + break; + + case 2273: +#line 16342 "gram.y" + { (yyval.node) = (yyvsp[(1) - (1)].node); ;} + break; + + case 2274: +#line 16343 "gram.y" + { (yyval.node) = NULL; ;} + break; + + case 2275: +#line 16347 "gram.y" + { + (yyval.node) = makeColumnRef((yyvsp[(1) - (1)].str), NIL, (yylsp[(1) - (1)]), yyscanner); + ;} + break; + + case 2276: +#line 16351 "gram.y" + { + (yyval.node) = makeColumnRef((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)]), yyscanner); + ;} + break; + + case 2277: +#line 16358 "gram.y" + { + (yyval.node) = (Node *) makeString((yyvsp[(2) - (2)].str)); + ;} + break; + + case 2278: +#line 16362 "gram.y" + { + (yyval.node) = (Node *) makeNode(A_Star); + ;} + break; + + case 2279: +#line 16366 "gram.y" + { + A_Indices *ai = makeNode(A_Indices); + + ai->is_slice = false; + ai->lidx = NULL; + ai->uidx = (yyvsp[(2) - (3)].node); + (yyval.node) = (Node *) ai; + ;} + break; + + case 2280: +#line 16375 "gram.y" + { + A_Indices *ai = makeNode(A_Indices); + + ai->is_slice = true; + ai->lidx = (yyvsp[(2) - (5)].node); + ai->uidx = (yyvsp[(4) - (5)].node); + (yyval.node) = (Node *) ai; + ;} + break; + + case 2281: +#line 16386 "gram.y" + { (yyval.node) = (yyvsp[(1) - (1)].node); ;} + break; + + case 2282: +#line 16387 "gram.y" + { (yyval.node) = NULL; ;} + break; + + case 2283: +#line 16391 "gram.y" + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} + break; + + case 2284: +#line 16392 "gram.y" + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} + break; + + case 2285: +#line 16396 "gram.y" + { (yyval.list) = NIL; ;} + break; + + case 2286: +#line 16397 "gram.y" + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} + break; + + case 2289: +#line 16407 "gram.y" + { + /* formatted_expr will be set during parse-analysis. */ + (yyval.node) = (Node *) makeJsonValueExpr((Expr *) (yyvsp[(1) - (2)].node), NULL, + castNode(JsonFormat, (yyvsp[(2) - (2)].node))); + ;} + break; + + case 2290: +#line 16416 "gram.y" + { + (yyval.node) = (Node *) makeJsonFormat(JS_FORMAT_JSON, (yyvsp[(3) - (3)].ival), (yylsp[(1) - (3)])); + ;} + break; + + case 2291: +#line 16420 "gram.y" + { + (yyval.node) = (Node *) makeJsonFormat(JS_FORMAT_DEFAULT, JS_ENC_DEFAULT, -1); + ;} + break; + + case 2292: +#line 16426 "gram.y" + { (yyval.ival) = makeJsonEncoding((yyvsp[(2) - (2)].str)); ;} break; - case 2242: -#line 16132 "gram.y" - { (yyval.list) = (yyvsp[(1) - (1)].list); ;} + case 2293: +#line 16427 "gram.y" + { (yyval.ival) = JS_ENC_DEFAULT; ;} break; - case 2243: -#line 16136 "gram.y" + case 2294: +#line 16432 "gram.y" { - SubLink *n = makeNode(SubLink); + JsonOutput *n = makeNode(JsonOutput); - n->subselect = (yyvsp[(1) - (1)].node); - /* other fields will be filled later */ + n->typeName = (yyvsp[(2) - (3)].typnam); + n->returning = makeNode(JsonReturning); + n->returning->format = (JsonFormat *) (yyvsp[(3) - (3)].node); (yyval.node) = (Node *) n; ;} break; - case 2244: -#line 16143 "gram.y" - { (yyval.node) = (Node *) (yyvsp[(2) - (3)].list); ;} + case 2295: +#line 16440 "gram.y" + { (yyval.node) = NULL; ;} break; - case 2245: -#line 16154 "gram.y" - { - CaseExpr *c = makeNode(CaseExpr); + case 2296: +#line 16444 "gram.y" + { (yyval.ival) = JS_TYPE_ANY; ;} + break; - c->casetype = InvalidOid; /* not analyzed yet */ - c->arg = (Expr *) (yyvsp[(2) - (5)].node); - c->args = (yyvsp[(3) - (5)].list); - c->defresult = (Expr *) (yyvsp[(4) - (5)].node); - c->location = (yylsp[(1) - (5)]); - (yyval.node) = (Node *) c; - ;} + case 2297: +#line 16445 "gram.y" + { (yyval.ival) = JS_TYPE_ANY; ;} break; - case 2246: -#line 16168 "gram.y" - { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} + case 2298: +#line 16446 "gram.y" + { (yyval.ival) = JS_TYPE_ARRAY; ;} break; - case 2247: -#line 16169 "gram.y" - { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} + case 2299: +#line 16447 "gram.y" + { (yyval.ival) = JS_TYPE_OBJECT; ;} break; - case 2248: -#line 16174 "gram.y" - { - CaseWhen *w = makeNode(CaseWhen); + case 2300: +#line 16448 "gram.y" + { (yyval.ival) = JS_TYPE_SCALAR; ;} + break; - w->expr = (Expr *) (yyvsp[(2) - (4)].node); - w->result = (Expr *) (yyvsp[(4) - (4)].node); - w->location = (yylsp[(1) - (4)]); - (yyval.node) = (Node *) w; - ;} + case 2301: +#line 16453 "gram.y" + { (yyval.boolean) = true; ;} break; - case 2249: -#line 16185 "gram.y" - { (yyval.node) = (yyvsp[(2) - (2)].node); ;} + case 2302: +#line 16454 "gram.y" + { (yyval.boolean) = true; ;} break; - case 2250: -#line 16186 "gram.y" - { (yyval.node) = NULL; ;} + case 2303: +#line 16455 "gram.y" + { (yyval.boolean) = false; ;} break; - case 2251: -#line 16189 "gram.y" - { (yyval.node) = (yyvsp[(1) - (1)].node); ;} + case 2304: +#line 16456 "gram.y" + { (yyval.boolean) = false; ;} break; - case 2252: -#line 16190 "gram.y" - { (yyval.node) = NULL; ;} + case 2305: +#line 16457 "gram.y" + { (yyval.boolean) = false; ;} break; - case 2253: -#line 16194 "gram.y" - { - (yyval.node) = makeColumnRef((yyvsp[(1) - (1)].str), NIL, (yylsp[(1) - (1)]), yyscanner); - ;} + case 2306: +#line 16462 "gram.y" + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 2254: -#line 16198 "gram.y" - { - (yyval.node) = makeColumnRef((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)]), yyscanner); - ;} + case 2307: +#line 16464 "gram.y" + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 2255: -#line 16205 "gram.y" - { - (yyval.node) = (Node *) makeString((yyvsp[(2) - (2)].str)); - ;} + case 2308: +#line 16474 "gram.y" + { (yyval.node) = makeJsonKeyValue((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;} break; - case 2256: -#line 16209 "gram.y" - { - (yyval.node) = (Node *) makeNode(A_Star); - ;} + case 2309: +#line 16477 "gram.y" + { (yyval.node) = makeJsonKeyValue((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;} break; - case 2257: -#line 16213 "gram.y" - { - A_Indices *ai = makeNode(A_Indices); + case 2310: +#line 16482 "gram.y" + { (yyval.boolean) = false; ;} + break; - ai->is_slice = false; - ai->lidx = NULL; - ai->uidx = (yyvsp[(2) - (3)].node); - (yyval.node) = (Node *) ai; - ;} + case 2311: +#line 16483 "gram.y" + { (yyval.boolean) = true; ;} break; - case 2258: -#line 16222 "gram.y" - { - A_Indices *ai = makeNode(A_Indices); + case 2312: +#line 16484 "gram.y" + { (yyval.boolean) = false; ;} + break; - ai->is_slice = true; - ai->lidx = (yyvsp[(2) - (5)].node); - ai->uidx = (yyvsp[(4) - (5)].node); - (yyval.node) = (Node *) ai; - ;} + case 2313: +#line 16488 "gram.y" + { (yyval.boolean) = false; ;} break; - case 2259: -#line 16233 "gram.y" - { (yyval.node) = (yyvsp[(1) - (1)].node); ;} + case 2314: +#line 16489 "gram.y" + { (yyval.boolean) = true; ;} break; - case 2260: -#line 16234 "gram.y" - { (yyval.node) = NULL; ;} + case 2315: +#line 16490 "gram.y" + { (yyval.boolean) = true; ;} break; - case 2261: -#line 16238 "gram.y" + case 2316: +#line 16494 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 2262: -#line 16239 "gram.y" - { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} + case 2317: +#line 16495 "gram.y" + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));;} break; - case 2263: -#line 16243 "gram.y" - { (yyval.list) = NIL; ;} + case 2318: +#line 16505 "gram.y" + { + JsonObjectAgg *n = makeNode(JsonObjectAgg); + + n->arg = (JsonKeyValue *) (yyvsp[(3) - (7)].node); + n->absent_on_null = (yyvsp[(4) - (7)].boolean); + n->unique = (yyvsp[(5) - (7)].boolean); + n->constructor = makeNode(JsonAggConstructor); + n->constructor->output = (JsonOutput *) (yyvsp[(6) - (7)].node); + n->constructor->agg_order = NULL; + n->constructor->location = (yylsp[(1) - (7)]); + (yyval.node) = (Node *) n; + ;} break; - case 2264: -#line 16244 "gram.y" - { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} + case 2319: +#line 16523 "gram.y" + { + JsonArrayAgg *n = makeNode(JsonArrayAgg); + + n->arg = (JsonValueExpr *) (yyvsp[(3) - (7)].node); + n->absent_on_null = (yyvsp[(5) - (7)].boolean); + n->constructor = makeNode(JsonAggConstructor); + n->constructor->agg_order = (yyvsp[(4) - (7)].list); + n->constructor->output = (JsonOutput *) (yyvsp[(6) - (7)].node); + n->constructor->location = (yylsp[(1) - (7)]); + (yyval.node) = (Node *) n; + ;} break; - case 2267: -#line 16258 "gram.y" + case 2320: +#line 16537 "gram.y" + { (yyval.list) = (yyvsp[(3) - (3)].list); ;} + break; + + case 2321: +#line 16538 "gram.y" + { (yyval.list) = NIL; ;} + break; + + case 2322: +#line 16547 "gram.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 2268: -#line 16259 "gram.y" + case 2323: +#line 16548 "gram.y" { (yyval.list) = NIL; ;} break; - case 2269: -#line 16263 "gram.y" + case 2324: +#line 16552 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); ;} break; - case 2270: -#line 16264 "gram.y" + case 2325: +#line 16553 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); ;} break; - case 2271: -#line 16268 "gram.y" + case 2326: +#line 16557 "gram.y" { (yyval.target) = makeNode(ResTarget); (yyval.target)->name = (yyvsp[(3) - (3)].str); @@ -48276,8 +49656,8 @@ YYLTYPE yylloc; ;} break; - case 2272: -#line 16276 "gram.y" + case 2327: +#line 16565 "gram.y" { (yyval.target) = makeNode(ResTarget); (yyval.target)->name = (yyvsp[(2) - (2)].str); @@ -48287,8 +49667,8 @@ YYLTYPE yylloc; ;} break; - case 2273: -#line 16284 "gram.y" + case 2328: +#line 16573 "gram.y" { (yyval.target) = makeNode(ResTarget); (yyval.target)->name = NULL; @@ -48298,8 +49678,8 @@ YYLTYPE yylloc; ;} break; - case 2274: -#line 16292 "gram.y" + case 2329: +#line 16581 "gram.y" { ColumnRef *n = makeNode(ColumnRef); @@ -48314,98 +49694,98 @@ YYLTYPE yylloc; ;} break; - case 2275: -#line 16314 "gram.y" + case 2330: +#line 16603 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].range)); ;} break; - case 2276: -#line 16315 "gram.y" + case 2331: +#line 16604 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].range)); ;} break; - case 2277: -#line 16327 "gram.y" + case 2332: +#line 16616 "gram.y" { (yyval.range) = makeRangeVar(NULL, (yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 2278: -#line 16331 "gram.y" + case 2333: +#line 16620 "gram.y" { (yyval.range) = makeRangeVarFromQualifiedName((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)]), yyscanner); ;} break; - case 2279: -#line 16337 "gram.y" + case 2334: +#line 16626 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 2280: -#line 16339 "gram.y" + case 2335: +#line 16628 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); ;} break; - case 2281: -#line 16343 "gram.y" + case 2336: +#line 16632 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2282: -#line 16345 "gram.y" + case 2337: +#line 16634 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2283: -#line 16347 "gram.y" + case 2338: +#line 16636 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2284: -#line 16358 "gram.y" + case 2339: +#line 16647 "gram.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 2285: -#line 16360 "gram.y" + case 2340: +#line 16649 "gram.y" { (yyval.list) = check_func_name(lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)), yyscanner); ;} break; - case 2286: -#line 16371 "gram.y" + case 2341: +#line 16660 "gram.y" { (yyval.node) = makeIntConst((yyvsp[(1) - (1)].ival), (yylsp[(1) - (1)])); ;} break; - case 2287: -#line 16375 "gram.y" + case 2342: +#line 16664 "gram.y" { (yyval.node) = makeFloatConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 2288: -#line 16379 "gram.y" + case 2343: +#line 16668 "gram.y" { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 2289: -#line 16383 "gram.y" + case 2344: +#line 16672 "gram.y" { (yyval.node) = makeBitStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 2290: -#line 16387 "gram.y" + case 2345: +#line 16676 "gram.y" { /* This is a bit constant per SQL99: * Without Feature F511, "BIT data type", @@ -48416,8 +49796,8 @@ YYLTYPE yylloc; ;} break; - case 2291: -#line 16396 "gram.y" + case 2346: +#line 16685 "gram.y" { /* generic type 'literal' syntax */ TypeName *t = makeTypeNameFromNameList((yyvsp[(1) - (2)].list)); @@ -48427,8 +49807,8 @@ YYLTYPE yylloc; ;} break; - case 2292: -#line 16404 "gram.y" + case 2347: +#line 16693 "gram.y" { /* generic syntax with a type modifier */ TypeName *t = makeTypeNameFromNameList((yyvsp[(1) - (6)].list)); @@ -48462,8 +49842,8 @@ YYLTYPE yylloc; ;} break; - case 2293: -#line 16436 "gram.y" + case 2348: +#line 16725 "gram.y" { /* generic type 'literal' syntax */ TypeName *t = makeTypeNameFromNameList((yyvsp[(1) - (2)].list)); @@ -48472,8 +49852,8 @@ YYLTYPE yylloc; ;} break; - case 2294: -#line 16443 "gram.y" + case 2349: +#line 16732 "gram.y" { /* generic syntax with a type modifier */ TypeName *t = makeTypeNameFromNameList((yyvsp[(1) - (6)].list)); @@ -48507,15 +49887,15 @@ YYLTYPE yylloc; ;} break; - case 2295: -#line 16475 "gram.y" + case 2350: +#line 16764 "gram.y" { (yyval.node) = makeStringConstCast((yyvsp[(2) - (2)].str), (yylsp[(2) - (2)]), (yyvsp[(1) - (2)].typnam)); ;} break; - case 2296: -#line 16479 "gram.y" + case 2351: +#line 16768 "gram.y" { TypeName *t = (yyvsp[(1) - (3)].typnam); @@ -48524,8 +49904,8 @@ YYLTYPE yylloc; ;} break; - case 2297: -#line 16486 "gram.y" + case 2352: +#line 16775 "gram.y" { TypeName *t = (yyvsp[(1) - (5)].typnam); @@ -48535,15 +49915,15 @@ YYLTYPE yylloc; ;} break; - case 2298: -#line 16494 "gram.y" + case 2353: +#line 16783 "gram.y" { (yyval.node) = makeParamRefCast((yyvsp[(2) - (2)].ival), (yylsp[(2) - (2)]), (yyvsp[(1) - (2)].typnam)); ;} break; - case 2299: -#line 16498 "gram.y" + case 2354: +#line 16787 "gram.y" { TypeName *t = (yyvsp[(1) - (3)].typnam); t->typmods = (yyvsp[(3) - (3)].list); @@ -48551,8 +49931,8 @@ YYLTYPE yylloc; ;} break; - case 2300: -#line 16504 "gram.y" + case 2355: +#line 16793 "gram.y" { TypeName *t = (yyvsp[(1) - (5)].typnam); t->typmods = list_make2(makeIntConst(INTERVAL_FULL_RANGE, -1), @@ -48561,54 +49941,54 @@ YYLTYPE yylloc; ;} break; - case 2301: -#line 16511 "gram.y" + case 2356: +#line 16800 "gram.y" { (yyval.node) = makeBoolAConst(true, (yylsp[(1) - (1)])); ;} break; - case 2302: -#line 16515 "gram.y" + case 2357: +#line 16804 "gram.y" { (yyval.node) = makeBoolAConst(false, (yylsp[(1) - (1)])); ;} break; - case 2303: -#line 16519 "gram.y" + case 2358: +#line 16808 "gram.y" { (yyval.node) = makeNullAConst((yylsp[(1) - (1)])); ;} break; - case 2304: -#line 16524 "gram.y" + case 2359: +#line 16813 "gram.y" { (yyval.ival) = (yyvsp[(1) - (1)].ival); ;} break; - case 2305: -#line 16525 "gram.y" + case 2360: +#line 16814 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2306: -#line 16527 "gram.y" + case 2361: +#line 16816 "gram.y" { (yyval.ival) = (yyvsp[(1) - (1)].ival); ;} break; - case 2307: -#line 16528 "gram.y" + case 2362: +#line 16817 "gram.y" { (yyval.ival) = + (yyvsp[(2) - (2)].ival); ;} break; - case 2308: -#line 16529 "gram.y" + case 2363: +#line 16818 "gram.y" { (yyval.ival) = - (yyvsp[(2) - (2)].ival); ;} break; - case 2309: -#line 16534 "gram.y" + case 2364: +#line 16823 "gram.y" { RoleSpec *spc = (RoleSpec *) (yyvsp[(1) - (1)].rolespec); @@ -48649,8 +50029,8 @@ YYLTYPE yylloc; ;} break; - case 2310: -#line 16575 "gram.y" + case 2365: +#line 16864 "gram.y" { /* * "public" and "none" are not keywords, but they must @@ -48680,39 +50060,39 @@ YYLTYPE yylloc; ;} break; - case 2311: -#line 16603 "gram.y" + case 2366: +#line 16892 "gram.y" { (yyval.rolespec) = makeRoleSpec(ROLESPEC_CURRENT_ROLE, (yylsp[(1) - (1)])); ;} break; - case 2312: -#line 16607 "gram.y" + case 2367: +#line 16896 "gram.y" { (yyval.rolespec) = makeRoleSpec(ROLESPEC_CURRENT_USER, (yylsp[(1) - (1)])); ;} break; - case 2313: -#line 16611 "gram.y" + case 2368: +#line 16900 "gram.y" { (yyval.rolespec) = makeRoleSpec(ROLESPEC_SESSION_USER, (yylsp[(1) - (1)])); ;} break; - case 2314: -#line 16617 "gram.y" + case 2369: +#line 16906 "gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].rolespec)); ;} break; - case 2315: -#line 16619 "gram.y" + case 2370: +#line 16908 "gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].rolespec)); ;} break; - case 2316: -#line 16636 "gram.y" + case 2371: +#line 16925 "gram.y" { SelectStmt *n = makeNode(SelectStmt); @@ -48741,8 +50121,8 @@ YYLTYPE yylloc; ;} break; - case 2317: -#line 16669 "gram.y" + case 2372: +#line 16958 "gram.y" { PLAssignStmt *n = makeNode(PLAssignStmt); @@ -48755,104 +50135,104 @@ YYLTYPE yylloc; ;} break; - case 2318: -#line 16681 "gram.y" + case 2373: +#line 16970 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2319: -#line 16682 "gram.y" + case 2374: +#line 16971 "gram.y" { (yyval.str) = psprintf("$%d", (yyvsp[(1) - (1)].ival)); ;} break; - case 2322: -#line 16703 "gram.y" + case 2377: +#line 16992 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2323: -#line 16704 "gram.y" + case 2378: +#line 16993 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2324: -#line 16705 "gram.y" + case 2379: +#line 16994 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2325: -#line 16710 "gram.y" + case 2380: +#line 16999 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2326: -#line 16711 "gram.y" + case 2381: +#line 17000 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2327: -#line 16712 "gram.y" + case 2382: +#line 17001 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2328: -#line 16717 "gram.y" + case 2383: +#line 17006 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2329: -#line 16718 "gram.y" + case 2384: +#line 17007 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2330: -#line 16719 "gram.y" + case 2385: +#line 17008 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2331: -#line 16720 "gram.y" + case 2386: +#line 17009 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2332: -#line 16726 "gram.y" + case 2387: +#line 17015 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2333: -#line 16727 "gram.y" + case 2388: +#line 17016 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2334: -#line 16728 "gram.y" + case 2389: +#line 17017 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2335: -#line 16729 "gram.y" + case 2390: +#line 17018 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2336: -#line 16730 "gram.y" + case 2391: +#line 17019 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 2337: -#line 16736 "gram.y" + case 2392: +#line 17025 "gram.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 2338: -#line 16737 "gram.y" + case 2393: +#line 17026 "gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; /* Line 1267 of yacc.c. */ -#line 48796 "gram.c" +#line 50175 "gram.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -49072,7 +50452,7 @@ YYLTYPE yylloc; } -#line 17687 "gram.y" +#line 17998 "gram.y" /* @@ -49927,6 +51307,28 @@ processCASbits(int cas_bits, int location, const char *constrType, } } +/* + * Parse a user-supplied partition strategy string into parse node + * PartitionStrategy representation, or die trying. + */ +static PartitionStrategy +parsePartitionStrategy(char *strategy) +{ + if (pg_strcasecmp(strategy, "list") == 0) + return PARTITION_STRATEGY_LIST; + else if (pg_strcasecmp(strategy, "range") == 0) + return PARTITION_STRATEGY_RANGE; + else if (pg_strcasecmp(strategy, "hash") == 0) + return PARTITION_STRATEGY_HASH; + + ereport(ERROR, + (errcode(ERRCODE_INVALID_PARAMETER_VALUE), + errmsg("unrecognized partitioning strategy \"%s\"", + strategy))); + return PARTITION_STRATEGY_LIST; /* keep compiler quiet */ + +} + /* * Process pubobjspec_list to check for errors in any of the objects and * convert PUBLICATIONOBJ_CONTINUATION into appropriate PublicationObjSpecType. @@ -49962,7 +51364,7 @@ preprocess_pubobj_list(List *pubobjspec_list, core_yyscan_t yyscanner) if (!pubobj->name && !pubobj->pubtable) ereport(ERROR, errcode(ERRCODE_SYNTAX_ERROR), - errmsg("invalid table name at or near"), + errmsg("invalid table name"), parser_errposition(pubobj->location)); if (pubobj->name) @@ -50004,7 +51406,7 @@ preprocess_pubobj_list(List *pubobjspec_list, core_yyscan_t yyscanner) else ereport(ERROR, errcode(ERRCODE_SYNTAX_ERROR), - errmsg("invalid schema name at or near"), + errmsg("invalid schema name"), parser_errposition(pubobj->location)); } diff --git a/parser/src_backend_parser_parser.c b/parser/src_backend_parser_parser.c index 304d1d42..8748bc10 100644 --- a/parser/src_backend_parser_parser.c +++ b/parser/src_backend_parser_parser.c @@ -22,7 +22,7 @@ * analyze.c and related files. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -34,7 +34,7 @@ #include "postgres.h" #include "mb/pg_wchar.h" -#include "parser/gramparse.h" +#include "gramparse.h" #include "parser/parser.h" #include "parser/scansup.h" @@ -149,6 +149,9 @@ base_yylex(YYSTYPE *lvalp, YYLTYPE *llocp, core_yyscan_t yyscanner) */ switch (cur_token) { + case FORMAT: + cur_token_length = 6; + break; case NOT: cur_token_length = 3; break; @@ -162,6 +165,9 @@ base_yylex(YYSTYPE *lvalp, YYLTYPE *llocp, core_yyscan_t yyscanner) case USCONST: cur_token_length = strlen(yyextra->core_yy_extra.scanbuf + *llocp); break; + case WITHOUT: + cur_token_length = 7; + break; case SQL_COMMENT: case C_COMMENT: return base_yylex(lvalp, llocp, yyscanner); @@ -203,6 +209,16 @@ base_yylex(YYSTYPE *lvalp, YYLTYPE *llocp, core_yyscan_t yyscanner) /* Replace cur_token if needed, based on lookahead */ switch (cur_token) { + case FORMAT: + /* Replace FORMAT by FORMAT_LA if it's followed by JSON */ + switch (next_token) + { + case JSON: + cur_token = FORMAT_LA; + break; + } + break; + case NOT: /* Replace NOT by NOT_LA if it's followed by BETWEEN, IN, etc */ switch (next_token) @@ -239,6 +255,16 @@ base_yylex(YYSTYPE *lvalp, YYLTYPE *llocp, core_yyscan_t yyscanner) } break; + case WITHOUT: + /* Replace WITHOUT by WITHOUT_LA if it's followed by TIME */ + switch (next_token) + { + case TIME: + cur_token = WITHOUT_LA; + break; + } + break; + case UIDENT: case USCONST: /* Look ahead for UESCAPE */ diff --git a/parser/src_backend_parser_scan.c b/parser/src_backend_parser_scan.c index d7b84243..e6e7df40 100644 --- a/parser/src_backend_parser_scan.c +++ b/parser/src_backend_parser_scan.c @@ -67,7 +67,7 @@ * Postgres 9.2, this check is made automatically by the Makefile.) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -81,13 +81,15 @@ #include #include "common/string.h" -#include "parser/gramparse.h" +#include "gramparse.h" +#include "nodes/miscnodes.h" #include "parser/parser.h" /* only needed for GUC variables */ #include "parser/scansup.h" #include "port/pg_bitutils.h" #include "mb/pg_wchar.h" +#include "utils/builtins.h" -#line 45 "scan.c" +#line 47 "scan.c" #define YY_INT_ALIGNED short int @@ -661,16 +663,16 @@ static void yynoreturn yy_fatal_error ( const char* msg , yyscan_t yyscanner ); yyg->yy_hold_char = *yy_cp; \ *yy_cp = '\0'; \ yyg->yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 65 -#define YY_END_OF_BUFFER 66 +#define YY_NUM_RULES 76 +#define YY_END_OF_BUFFER 77 struct yy_trans_info { flex_int16_t yy_verify; flex_int16_t yy_nxt; }; -static const struct yy_trans_info yy_transition[17678] = +static const struct yy_trans_info yy_transition[21803] = { - { 0, 0 }, { 0,17422 }, { 0, 0 }, { 0,17420 }, { 1,6192 }, + { 0, 0 }, { 0,21547 }, { 0, 0 }, { 0,21545 }, { 1,6192 }, { 2,6192 }, { 3,6192 }, { 4,6192 }, { 5,6192 }, { 6,6192 }, { 7,6192 }, { 8,6192 }, { 9,6194 }, { 10,6199 }, { 11,6192 }, { 12,6194 }, { 13,6194 }, { 14,6192 }, { 15,6192 }, { 16,6192 }, @@ -681,53 +683,53 @@ static const struct yy_trans_info yy_transition[17678] = { 37,6564 }, { 38,6241 }, { 39,6214 }, { 40,6216 }, { 41,6216 }, { 42,6564 }, { 43,6564 }, { 44,6216 }, { 45,6575 }, { 46,6594 }, - { 47,6665 }, { 48,6667 }, { 49,6667 }, { 50,6667 }, { 51,6667 }, - { 52,6667 }, { 53,6667 }, { 54,6667 }, { 55,6667 }, { 56,6667 }, - { 57,6667 }, { 58,6219 }, { 59,6216 }, { 60,6732 }, { 61,6743 }, - { 62,6810 }, { 63,6241 }, { 64,6241 }, { 65,6842 }, { 66,7099 }, - { 67,6842 }, { 68,6842 }, { 69,7356 }, { 70,6842 }, { 71,6842 }, - { 72,6842 }, { 73,6842 }, { 74,6842 }, { 75,6842 }, { 76,6842 }, - { 77,6842 }, { 78,7613 }, { 79,6842 }, { 80,6842 }, { 81,6842 }, - { 82,6842 }, { 83,6842 }, { 84,6842 }, { 85,7870 }, { 86,6842 }, - { 87,6842 }, { 88,8127 }, { 89,6842 }, { 90,6842 }, { 91,6216 }, - { 92,6192 }, { 93,6216 }, { 94,6564 }, { 95,6842 }, { 96,6241 }, - - { 97,6842 }, { 98,7099 }, { 99,6842 }, { 100,6842 }, { 101,7356 }, - { 102,6842 }, { 103,6842 }, { 104,6842 }, { 105,6842 }, { 106,6842 }, - { 107,6842 }, { 108,6842 }, { 109,6842 }, { 110,7613 }, { 111,6842 }, - { 112,6842 }, { 113,6842 }, { 114,6842 }, { 115,6842 }, { 116,6842 }, - { 117,7870 }, { 118,6842 }, { 119,6842 }, { 120,8127 }, { 121,6842 }, - { 122,6842 }, { 123,6192 }, { 124,6241 }, { 125,6192 }, { 126,6241 }, - { 127,6192 }, { 128,6842 }, { 129,6842 }, { 130,6842 }, { 131,6842 }, - { 132,6842 }, { 133,6842 }, { 134,6842 }, { 135,6842 }, { 136,6842 }, - { 137,6842 }, { 138,6842 }, { 139,6842 }, { 140,6842 }, { 141,6842 }, - { 142,6842 }, { 143,6842 }, { 144,6842 }, { 145,6842 }, { 146,6842 }, - - { 147,6842 }, { 148,6842 }, { 149,6842 }, { 150,6842 }, { 151,6842 }, - { 152,6842 }, { 153,6842 }, { 154,6842 }, { 155,6842 }, { 156,6842 }, - { 157,6842 }, { 158,6842 }, { 159,6842 }, { 160,6842 }, { 161,6842 }, - { 162,6842 }, { 163,6842 }, { 164,6842 }, { 165,6842 }, { 166,6842 }, - { 167,6842 }, { 168,6842 }, { 169,6842 }, { 170,6842 }, { 171,6842 }, - { 172,6842 }, { 173,6842 }, { 174,6842 }, { 175,6842 }, { 176,6842 }, - { 177,6842 }, { 178,6842 }, { 179,6842 }, { 180,6842 }, { 181,6842 }, - { 182,6842 }, { 183,6842 }, { 184,6842 }, { 185,6842 }, { 186,6842 }, - { 187,6842 }, { 188,6842 }, { 189,6842 }, { 190,6842 }, { 191,6842 }, - { 192,6842 }, { 193,6842 }, { 194,6842 }, { 195,6842 }, { 196,6842 }, - - { 197,6842 }, { 198,6842 }, { 199,6842 }, { 200,6842 }, { 201,6842 }, - { 202,6842 }, { 203,6842 }, { 204,6842 }, { 205,6842 }, { 206,6842 }, - { 207,6842 }, { 208,6842 }, { 209,6842 }, { 210,6842 }, { 211,6842 }, - { 212,6842 }, { 213,6842 }, { 214,6842 }, { 215,6842 }, { 216,6842 }, - { 217,6842 }, { 218,6842 }, { 219,6842 }, { 220,6842 }, { 221,6842 }, - { 222,6842 }, { 223,6842 }, { 224,6842 }, { 225,6842 }, { 226,6842 }, - { 227,6842 }, { 228,6842 }, { 229,6842 }, { 230,6842 }, { 231,6842 }, - { 232,6842 }, { 233,6842 }, { 234,6842 }, { 235,6842 }, { 236,6842 }, - { 237,6842 }, { 238,6842 }, { 239,6842 }, { 240,6842 }, { 241,6842 }, - { 242,6842 }, { 243,6842 }, { 244,6842 }, { 245,6842 }, { 246,6842 }, - - { 247,6842 }, { 248,6842 }, { 249,6842 }, { 250,6842 }, { 251,6842 }, - { 252,6842 }, { 253,6842 }, { 254,6842 }, { 255,6842 }, { 256,6192 }, - { 0, 0 }, { 0,17162 }, { 1,5934 }, { 2,5934 }, { 3,5934 }, + { 47,6665 }, { 48,6697 }, { 49,6954 }, { 50,6954 }, { 51,6954 }, + { 52,6954 }, { 53,6954 }, { 54,6954 }, { 55,6954 }, { 56,6954 }, + { 57,6954 }, { 58,6219 }, { 59,6216 }, { 60,7211 }, { 61,7222 }, + { 62,7289 }, { 63,6241 }, { 64,6241 }, { 65,7321 }, { 66,7578 }, + { 67,7321 }, { 68,7321 }, { 69,7835 }, { 70,7321 }, { 71,7321 }, + { 72,7321 }, { 73,7321 }, { 74,7321 }, { 75,7321 }, { 76,7321 }, + { 77,7321 }, { 78,8092 }, { 79,7321 }, { 80,7321 }, { 81,7321 }, + { 82,7321 }, { 83,7321 }, { 84,7321 }, { 85,8349 }, { 86,7321 }, + { 87,7321 }, { 88,8606 }, { 89,7321 }, { 90,7321 }, { 91,6216 }, + { 92,6192 }, { 93,6216 }, { 94,6564 }, { 95,7321 }, { 96,6241 }, + + { 97,7321 }, { 98,7578 }, { 99,7321 }, { 100,7321 }, { 101,7835 }, + { 102,7321 }, { 103,7321 }, { 104,7321 }, { 105,7321 }, { 106,7321 }, + { 107,7321 }, { 108,7321 }, { 109,7321 }, { 110,8092 }, { 111,7321 }, + { 112,7321 }, { 113,7321 }, { 114,7321 }, { 115,7321 }, { 116,7321 }, + { 117,8349 }, { 118,7321 }, { 119,7321 }, { 120,8606 }, { 121,7321 }, + { 122,7321 }, { 123,6192 }, { 124,6241 }, { 125,6192 }, { 126,6241 }, + { 127,6192 }, { 128,7321 }, { 129,7321 }, { 130,7321 }, { 131,7321 }, + { 132,7321 }, { 133,7321 }, { 134,7321 }, { 135,7321 }, { 136,7321 }, + { 137,7321 }, { 138,7321 }, { 139,7321 }, { 140,7321 }, { 141,7321 }, + { 142,7321 }, { 143,7321 }, { 144,7321 }, { 145,7321 }, { 146,7321 }, + + { 147,7321 }, { 148,7321 }, { 149,7321 }, { 150,7321 }, { 151,7321 }, + { 152,7321 }, { 153,7321 }, { 154,7321 }, { 155,7321 }, { 156,7321 }, + { 157,7321 }, { 158,7321 }, { 159,7321 }, { 160,7321 }, { 161,7321 }, + { 162,7321 }, { 163,7321 }, { 164,7321 }, { 165,7321 }, { 166,7321 }, + { 167,7321 }, { 168,7321 }, { 169,7321 }, { 170,7321 }, { 171,7321 }, + { 172,7321 }, { 173,7321 }, { 174,7321 }, { 175,7321 }, { 176,7321 }, + { 177,7321 }, { 178,7321 }, { 179,7321 }, { 180,7321 }, { 181,7321 }, + { 182,7321 }, { 183,7321 }, { 184,7321 }, { 185,7321 }, { 186,7321 }, + { 187,7321 }, { 188,7321 }, { 189,7321 }, { 190,7321 }, { 191,7321 }, + { 192,7321 }, { 193,7321 }, { 194,7321 }, { 195,7321 }, { 196,7321 }, + + { 197,7321 }, { 198,7321 }, { 199,7321 }, { 200,7321 }, { 201,7321 }, + { 202,7321 }, { 203,7321 }, { 204,7321 }, { 205,7321 }, { 206,7321 }, + { 207,7321 }, { 208,7321 }, { 209,7321 }, { 210,7321 }, { 211,7321 }, + { 212,7321 }, { 213,7321 }, { 214,7321 }, { 215,7321 }, { 216,7321 }, + { 217,7321 }, { 218,7321 }, { 219,7321 }, { 220,7321 }, { 221,7321 }, + { 222,7321 }, { 223,7321 }, { 224,7321 }, { 225,7321 }, { 226,7321 }, + { 227,7321 }, { 228,7321 }, { 229,7321 }, { 230,7321 }, { 231,7321 }, + { 232,7321 }, { 233,7321 }, { 234,7321 }, { 235,7321 }, { 236,7321 }, + { 237,7321 }, { 238,7321 }, { 239,7321 }, { 240,7321 }, { 241,7321 }, + { 242,7321 }, { 243,7321 }, { 244,7321 }, { 245,7321 }, { 246,7321 }, + + { 247,7321 }, { 248,7321 }, { 249,7321 }, { 250,7321 }, { 251,7321 }, + { 252,7321 }, { 253,7321 }, { 254,7321 }, { 255,7321 }, { 256,6192 }, + { 0, 0 }, { 0,21287 }, { 1,5934 }, { 2,5934 }, { 3,5934 }, { 4,5934 }, { 5,5934 }, { 6,5934 }, { 7,5934 }, { 8,5934 }, { 9,5936 }, { 10,5941 }, { 11,5934 }, { 12,5936 }, { 13,5936 }, { 14,5934 }, { 15,5934 }, { 16,5934 }, { 17,5934 }, { 18,5934 }, @@ -737,628 +739,628 @@ static const struct yy_trans_info yy_transition[17678] = { 34,5938 }, { 35,5983 }, { 36,6049 }, { 37,6306 }, { 38,5983 }, { 39,5956 }, { 40,5958 }, { 41,5958 }, { 42,6306 }, { 43,6306 }, - { 44,5958 }, { 45,6317 }, { 46,6336 }, { 47,6407 }, { 48,6409 }, - { 49,6409 }, { 50,6409 }, { 51,6409 }, { 52,6409 }, { 53,6409 }, - { 54,6409 }, { 55,6409 }, { 56,6409 }, { 57,6409 }, { 58,5961 }, - { 59,5958 }, { 60,6474 }, { 61,6485 }, { 62,6552 }, { 63,5983 }, - { 64,5983 }, { 65,6584 }, { 66,6841 }, { 67,6584 }, { 68,6584 }, - { 69,7098 }, { 70,6584 }, { 71,6584 }, { 72,6584 }, { 73,6584 }, - { 74,6584 }, { 75,6584 }, { 76,6584 }, { 77,6584 }, { 78,7355 }, - { 79,6584 }, { 80,6584 }, { 81,6584 }, { 82,6584 }, { 83,6584 }, - { 84,6584 }, { 85,7612 }, { 86,6584 }, { 87,6584 }, { 88,7869 }, - - { 89,6584 }, { 90,6584 }, { 91,5958 }, { 92,5934 }, { 93,5958 }, - { 94,6306 }, { 95,6584 }, { 96,5983 }, { 97,6584 }, { 98,6841 }, - { 99,6584 }, { 100,6584 }, { 101,7098 }, { 102,6584 }, { 103,6584 }, - { 104,6584 }, { 105,6584 }, { 106,6584 }, { 107,6584 }, { 108,6584 }, - { 109,6584 }, { 110,7355 }, { 111,6584 }, { 112,6584 }, { 113,6584 }, - { 114,6584 }, { 115,6584 }, { 116,6584 }, { 117,7612 }, { 118,6584 }, - { 119,6584 }, { 120,7869 }, { 121,6584 }, { 122,6584 }, { 123,5934 }, - { 124,5983 }, { 125,5934 }, { 126,5983 }, { 127,5934 }, { 128,6584 }, - { 129,6584 }, { 130,6584 }, { 131,6584 }, { 132,6584 }, { 133,6584 }, - { 134,6584 }, { 135,6584 }, { 136,6584 }, { 137,6584 }, { 138,6584 }, - - { 139,6584 }, { 140,6584 }, { 141,6584 }, { 142,6584 }, { 143,6584 }, - { 144,6584 }, { 145,6584 }, { 146,6584 }, { 147,6584 }, { 148,6584 }, - { 149,6584 }, { 150,6584 }, { 151,6584 }, { 152,6584 }, { 153,6584 }, - { 154,6584 }, { 155,6584 }, { 156,6584 }, { 157,6584 }, { 158,6584 }, - { 159,6584 }, { 160,6584 }, { 161,6584 }, { 162,6584 }, { 163,6584 }, - { 164,6584 }, { 165,6584 }, { 166,6584 }, { 167,6584 }, { 168,6584 }, - { 169,6584 }, { 170,6584 }, { 171,6584 }, { 172,6584 }, { 173,6584 }, - { 174,6584 }, { 175,6584 }, { 176,6584 }, { 177,6584 }, { 178,6584 }, - { 179,6584 }, { 180,6584 }, { 181,6584 }, { 182,6584 }, { 183,6584 }, - { 184,6584 }, { 185,6584 }, { 186,6584 }, { 187,6584 }, { 188,6584 }, - - { 189,6584 }, { 190,6584 }, { 191,6584 }, { 192,6584 }, { 193,6584 }, - { 194,6584 }, { 195,6584 }, { 196,6584 }, { 197,6584 }, { 198,6584 }, - { 199,6584 }, { 200,6584 }, { 201,6584 }, { 202,6584 }, { 203,6584 }, - { 204,6584 }, { 205,6584 }, { 206,6584 }, { 207,6584 }, { 208,6584 }, - { 209,6584 }, { 210,6584 }, { 211,6584 }, { 212,6584 }, { 213,6584 }, - { 214,6584 }, { 215,6584 }, { 216,6584 }, { 217,6584 }, { 218,6584 }, - { 219,6584 }, { 220,6584 }, { 221,6584 }, { 222,6584 }, { 223,6584 }, - { 224,6584 }, { 225,6584 }, { 226,6584 }, { 227,6584 }, { 228,6584 }, - { 229,6584 }, { 230,6584 }, { 231,6584 }, { 232,6584 }, { 233,6584 }, - { 234,6584 }, { 235,6584 }, { 236,6584 }, { 237,6584 }, { 238,6584 }, - - { 239,6584 }, { 240,6584 }, { 241,6584 }, { 242,6584 }, { 243,6584 }, - { 244,6584 }, { 245,6584 }, { 246,6584 }, { 247,6584 }, { 248,6584 }, - { 249,6584 }, { 250,6584 }, { 251,6584 }, { 252,6584 }, { 253,6584 }, - { 254,6584 }, { 255,6584 }, { 256,5934 }, { 0, 11 }, { 0,16904 }, - { 1,7868 }, { 2,7868 }, { 3,7868 }, { 4,7868 }, { 5,7868 }, - { 6,7868 }, { 7,7868 }, { 8,7868 }, { 9,7868 }, { 10,7868 }, - { 11,7868 }, { 12,7868 }, { 13,7868 }, { 14,7868 }, { 15,7868 }, - { 16,7868 }, { 17,7868 }, { 18,7868 }, { 19,7868 }, { 20,7868 }, - { 21,7868 }, { 22,7868 }, { 23,7868 }, { 24,7868 }, { 25,7868 }, - { 26,7868 }, { 27,7868 }, { 28,7868 }, { 29,7868 }, { 30,7868 }, - - { 31,7868 }, { 32,7868 }, { 33,7868 }, { 34,7868 }, { 35,7868 }, - { 36,7868 }, { 37,7868 }, { 38,7868 }, { 39,5705 }, { 40,7868 }, - { 41,7868 }, { 42,7868 }, { 43,7868 }, { 44,7868 }, { 45,7868 }, - { 46,7868 }, { 47,7868 }, { 48,7868 }, { 49,7868 }, { 50,7868 }, - { 51,7868 }, { 52,7868 }, { 53,7868 }, { 54,7868 }, { 55,7868 }, - { 56,7868 }, { 57,7868 }, { 58,7868 }, { 59,7868 }, { 60,7868 }, - { 61,7868 }, { 62,7868 }, { 63,7868 }, { 64,7868 }, { 65,7868 }, - { 66,7868 }, { 67,7868 }, { 68,7868 }, { 69,7868 }, { 70,7868 }, - { 71,7868 }, { 72,7868 }, { 73,7868 }, { 74,7868 }, { 75,7868 }, - { 76,7868 }, { 77,7868 }, { 78,7868 }, { 79,7868 }, { 80,7868 }, - - { 81,7868 }, { 82,7868 }, { 83,7868 }, { 84,7868 }, { 85,7868 }, - { 86,7868 }, { 87,7868 }, { 88,7868 }, { 89,7868 }, { 90,7868 }, - { 91,7868 }, { 92,7868 }, { 93,7868 }, { 94,7868 }, { 95,7868 }, - { 96,7868 }, { 97,7868 }, { 98,7868 }, { 99,7868 }, { 100,7868 }, - { 101,7868 }, { 102,7868 }, { 103,7868 }, { 104,7868 }, { 105,7868 }, - { 106,7868 }, { 107,7868 }, { 108,7868 }, { 109,7868 }, { 110,7868 }, - { 111,7868 }, { 112,7868 }, { 113,7868 }, { 114,7868 }, { 115,7868 }, - { 116,7868 }, { 117,7868 }, { 118,7868 }, { 119,7868 }, { 120,7868 }, - { 121,7868 }, { 122,7868 }, { 123,7868 }, { 124,7868 }, { 125,7868 }, - { 126,7868 }, { 127,7868 }, { 128,7868 }, { 129,7868 }, { 130,7868 }, - - { 131,7868 }, { 132,7868 }, { 133,7868 }, { 134,7868 }, { 135,7868 }, - { 136,7868 }, { 137,7868 }, { 138,7868 }, { 139,7868 }, { 140,7868 }, - { 141,7868 }, { 142,7868 }, { 143,7868 }, { 144,7868 }, { 145,7868 }, - { 146,7868 }, { 147,7868 }, { 148,7868 }, { 149,7868 }, { 150,7868 }, - { 151,7868 }, { 152,7868 }, { 153,7868 }, { 154,7868 }, { 155,7868 }, - { 156,7868 }, { 157,7868 }, { 158,7868 }, { 159,7868 }, { 160,7868 }, - { 161,7868 }, { 162,7868 }, { 163,7868 }, { 164,7868 }, { 165,7868 }, - { 166,7868 }, { 167,7868 }, { 168,7868 }, { 169,7868 }, { 170,7868 }, - { 171,7868 }, { 172,7868 }, { 173,7868 }, { 174,7868 }, { 175,7868 }, - { 176,7868 }, { 177,7868 }, { 178,7868 }, { 179,7868 }, { 180,7868 }, - - { 181,7868 }, { 182,7868 }, { 183,7868 }, { 184,7868 }, { 185,7868 }, - { 186,7868 }, { 187,7868 }, { 188,7868 }, { 189,7868 }, { 190,7868 }, - { 191,7868 }, { 192,7868 }, { 193,7868 }, { 194,7868 }, { 195,7868 }, - { 196,7868 }, { 197,7868 }, { 198,7868 }, { 199,7868 }, { 200,7868 }, - { 201,7868 }, { 202,7868 }, { 203,7868 }, { 204,7868 }, { 205,7868 }, - { 206,7868 }, { 207,7868 }, { 208,7868 }, { 209,7868 }, { 210,7868 }, - { 211,7868 }, { 212,7868 }, { 213,7868 }, { 214,7868 }, { 215,7868 }, - { 216,7868 }, { 217,7868 }, { 218,7868 }, { 219,7868 }, { 220,7868 }, - { 221,7868 }, { 222,7868 }, { 223,7868 }, { 224,7868 }, { 225,7868 }, - { 226,7868 }, { 227,7868 }, { 228,7868 }, { 229,7868 }, { 230,7868 }, - - { 231,7868 }, { 232,7868 }, { 233,7868 }, { 234,7868 }, { 235,7868 }, - { 236,7868 }, { 237,7868 }, { 238,7868 }, { 239,7868 }, { 240,7868 }, - { 241,7868 }, { 242,7868 }, { 243,7868 }, { 244,7868 }, { 245,7868 }, - { 246,7868 }, { 247,7868 }, { 248,7868 }, { 249,7868 }, { 250,7868 }, - { 251,7868 }, { 252,7868 }, { 253,7868 }, { 254,7868 }, { 255,7868 }, - { 256,7868 }, { 0, 11 }, { 0,16646 }, { 1,7610 }, { 2,7610 }, - { 3,7610 }, { 4,7610 }, { 5,7610 }, { 6,7610 }, { 7,7610 }, - { 8,7610 }, { 9,7610 }, { 10,7610 }, { 11,7610 }, { 12,7610 }, - { 13,7610 }, { 14,7610 }, { 15,7610 }, { 16,7610 }, { 17,7610 }, - { 18,7610 }, { 19,7610 }, { 20,7610 }, { 21,7610 }, { 22,7610 }, - - { 23,7610 }, { 24,7610 }, { 25,7610 }, { 26,7610 }, { 27,7610 }, - { 28,7610 }, { 29,7610 }, { 30,7610 }, { 31,7610 }, { 32,7610 }, - { 33,7610 }, { 34,7610 }, { 35,7610 }, { 36,7610 }, { 37,7610 }, - { 38,7610 }, { 39,5447 }, { 40,7610 }, { 41,7610 }, { 42,7610 }, - { 43,7610 }, { 44,7610 }, { 45,7610 }, { 46,7610 }, { 47,7610 }, - { 48,7610 }, { 49,7610 }, { 50,7610 }, { 51,7610 }, { 52,7610 }, - { 53,7610 }, { 54,7610 }, { 55,7610 }, { 56,7610 }, { 57,7610 }, - { 58,7610 }, { 59,7610 }, { 60,7610 }, { 61,7610 }, { 62,7610 }, - { 63,7610 }, { 64,7610 }, { 65,7610 }, { 66,7610 }, { 67,7610 }, - { 68,7610 }, { 69,7610 }, { 70,7610 }, { 71,7610 }, { 72,7610 }, - - { 73,7610 }, { 74,7610 }, { 75,7610 }, { 76,7610 }, { 77,7610 }, - { 78,7610 }, { 79,7610 }, { 80,7610 }, { 81,7610 }, { 82,7610 }, - { 83,7610 }, { 84,7610 }, { 85,7610 }, { 86,7610 }, { 87,7610 }, - { 88,7610 }, { 89,7610 }, { 90,7610 }, { 91,7610 }, { 92,7610 }, - { 93,7610 }, { 94,7610 }, { 95,7610 }, { 96,7610 }, { 97,7610 }, - { 98,7610 }, { 99,7610 }, { 100,7610 }, { 101,7610 }, { 102,7610 }, - { 103,7610 }, { 104,7610 }, { 105,7610 }, { 106,7610 }, { 107,7610 }, - { 108,7610 }, { 109,7610 }, { 110,7610 }, { 111,7610 }, { 112,7610 }, - { 113,7610 }, { 114,7610 }, { 115,7610 }, { 116,7610 }, { 117,7610 }, - { 118,7610 }, { 119,7610 }, { 120,7610 }, { 121,7610 }, { 122,7610 }, - - { 123,7610 }, { 124,7610 }, { 125,7610 }, { 126,7610 }, { 127,7610 }, - { 128,7610 }, { 129,7610 }, { 130,7610 }, { 131,7610 }, { 132,7610 }, - { 133,7610 }, { 134,7610 }, { 135,7610 }, { 136,7610 }, { 137,7610 }, - { 138,7610 }, { 139,7610 }, { 140,7610 }, { 141,7610 }, { 142,7610 }, - { 143,7610 }, { 144,7610 }, { 145,7610 }, { 146,7610 }, { 147,7610 }, - { 148,7610 }, { 149,7610 }, { 150,7610 }, { 151,7610 }, { 152,7610 }, - { 153,7610 }, { 154,7610 }, { 155,7610 }, { 156,7610 }, { 157,7610 }, - { 158,7610 }, { 159,7610 }, { 160,7610 }, { 161,7610 }, { 162,7610 }, - { 163,7610 }, { 164,7610 }, { 165,7610 }, { 166,7610 }, { 167,7610 }, - { 168,7610 }, { 169,7610 }, { 170,7610 }, { 171,7610 }, { 172,7610 }, - - { 173,7610 }, { 174,7610 }, { 175,7610 }, { 176,7610 }, { 177,7610 }, - { 178,7610 }, { 179,7610 }, { 180,7610 }, { 181,7610 }, { 182,7610 }, - { 183,7610 }, { 184,7610 }, { 185,7610 }, { 186,7610 }, { 187,7610 }, - { 188,7610 }, { 189,7610 }, { 190,7610 }, { 191,7610 }, { 192,7610 }, - { 193,7610 }, { 194,7610 }, { 195,7610 }, { 196,7610 }, { 197,7610 }, - { 198,7610 }, { 199,7610 }, { 200,7610 }, { 201,7610 }, { 202,7610 }, - { 203,7610 }, { 204,7610 }, { 205,7610 }, { 206,7610 }, { 207,7610 }, - { 208,7610 }, { 209,7610 }, { 210,7610 }, { 211,7610 }, { 212,7610 }, - { 213,7610 }, { 214,7610 }, { 215,7610 }, { 216,7610 }, { 217,7610 }, - { 218,7610 }, { 219,7610 }, { 220,7610 }, { 221,7610 }, { 222,7610 }, - - { 223,7610 }, { 224,7610 }, { 225,7610 }, { 226,7610 }, { 227,7610 }, - { 228,7610 }, { 229,7610 }, { 230,7610 }, { 231,7610 }, { 232,7610 }, - { 233,7610 }, { 234,7610 }, { 235,7610 }, { 236,7610 }, { 237,7610 }, - { 238,7610 }, { 239,7610 }, { 240,7610 }, { 241,7610 }, { 242,7610 }, - { 243,7610 }, { 244,7610 }, { 245,7610 }, { 246,7610 }, { 247,7610 }, - { 248,7610 }, { 249,7610 }, { 250,7610 }, { 251,7610 }, { 252,7610 }, - { 253,7610 }, { 254,7610 }, { 255,7610 }, { 256,7610 }, { 0, 0 }, - { 0,16388 }, { 1,7610 }, { 2,7610 }, { 3,7610 }, { 4,7610 }, - { 5,7610 }, { 6,7610 }, { 7,7610 }, { 8,7610 }, { 9,7610 }, - { 10,7610 }, { 11,7610 }, { 12,7610 }, { 13,7610 }, { 14,7610 }, - - { 15,7610 }, { 16,7610 }, { 17,7610 }, { 18,7610 }, { 19,7610 }, - { 20,7610 }, { 21,7610 }, { 22,7610 }, { 23,7610 }, { 24,7610 }, - { 25,7610 }, { 26,7610 }, { 27,7610 }, { 28,7610 }, { 29,7610 }, - { 30,7610 }, { 31,7610 }, { 32,7610 }, { 33,7868 }, { 34,7610 }, - { 35,7868 }, { 36,7610 }, { 37,7868 }, { 38,7868 }, { 39,7610 }, - { 40,7610 }, { 41,7610 }, { 42,5192 }, { 43,7868 }, { 44,7610 }, - { 45,7868 }, { 46,7610 }, { 47,5196 }, { 48,7610 }, { 49,7610 }, - { 50,7610 }, { 51,7610 }, { 52,7610 }, { 53,7610 }, { 54,7610 }, - { 55,7610 }, { 56,7610 }, { 57,7610 }, { 58,7610 }, { 59,7610 }, - { 60,7868 }, { 61,7868 }, { 62,7868 }, { 63,7868 }, { 64,7868 }, - - { 65,7610 }, { 66,7610 }, { 67,7610 }, { 68,7610 }, { 69,7610 }, - { 70,7610 }, { 71,7610 }, { 72,7610 }, { 73,7610 }, { 74,7610 }, - { 75,7610 }, { 76,7610 }, { 77,7610 }, { 78,7610 }, { 79,7610 }, - { 80,7610 }, { 81,7610 }, { 82,7610 }, { 83,7610 }, { 84,7610 }, - { 85,7610 }, { 86,7610 }, { 87,7610 }, { 88,7610 }, { 89,7610 }, - { 90,7610 }, { 91,7610 }, { 92,7610 }, { 93,7610 }, { 94,7868 }, - { 95,7610 }, { 96,7868 }, { 97,7610 }, { 98,7610 }, { 99,7610 }, - { 100,7610 }, { 101,7610 }, { 102,7610 }, { 103,7610 }, { 104,7610 }, - { 105,7610 }, { 106,7610 }, { 107,7610 }, { 108,7610 }, { 109,7610 }, - { 110,7610 }, { 111,7610 }, { 112,7610 }, { 113,7610 }, { 114,7610 }, - - { 115,7610 }, { 116,7610 }, { 117,7610 }, { 118,7610 }, { 119,7610 }, - { 120,7610 }, { 121,7610 }, { 122,7610 }, { 123,7610 }, { 124,7868 }, - { 125,7610 }, { 126,7868 }, { 127,7610 }, { 128,7610 }, { 129,7610 }, - { 130,7610 }, { 131,7610 }, { 132,7610 }, { 133,7610 }, { 134,7610 }, - { 135,7610 }, { 136,7610 }, { 137,7610 }, { 138,7610 }, { 139,7610 }, - { 140,7610 }, { 141,7610 }, { 142,7610 }, { 143,7610 }, { 144,7610 }, - { 145,7610 }, { 146,7610 }, { 147,7610 }, { 148,7610 }, { 149,7610 }, - { 150,7610 }, { 151,7610 }, { 152,7610 }, { 153,7610 }, { 154,7610 }, - { 155,7610 }, { 156,7610 }, { 157,7610 }, { 158,7610 }, { 159,7610 }, - { 160,7610 }, { 161,7610 }, { 162,7610 }, { 163,7610 }, { 164,7610 }, - - { 165,7610 }, { 166,7610 }, { 167,7610 }, { 168,7610 }, { 169,7610 }, - { 170,7610 }, { 171,7610 }, { 172,7610 }, { 173,7610 }, { 174,7610 }, - { 175,7610 }, { 176,7610 }, { 177,7610 }, { 178,7610 }, { 179,7610 }, - { 180,7610 }, { 181,7610 }, { 182,7610 }, { 183,7610 }, { 184,7610 }, - { 185,7610 }, { 186,7610 }, { 187,7610 }, { 188,7610 }, { 189,7610 }, - { 190,7610 }, { 191,7610 }, { 192,7610 }, { 193,7610 }, { 194,7610 }, - { 195,7610 }, { 196,7610 }, { 197,7610 }, { 198,7610 }, { 199,7610 }, - { 200,7610 }, { 201,7610 }, { 202,7610 }, { 203,7610 }, { 204,7610 }, - { 205,7610 }, { 206,7610 }, { 207,7610 }, { 208,7610 }, { 209,7610 }, - { 210,7610 }, { 211,7610 }, { 212,7610 }, { 213,7610 }, { 214,7610 }, - - { 215,7610 }, { 216,7610 }, { 217,7610 }, { 218,7610 }, { 219,7610 }, - { 220,7610 }, { 221,7610 }, { 222,7610 }, { 223,7610 }, { 224,7610 }, - { 225,7610 }, { 226,7610 }, { 227,7610 }, { 228,7610 }, { 229,7610 }, - { 230,7610 }, { 231,7610 }, { 232,7610 }, { 233,7610 }, { 234,7610 }, - { 235,7610 }, { 236,7610 }, { 237,7610 }, { 238,7610 }, { 239,7610 }, - { 240,7610 }, { 241,7610 }, { 242,7610 }, { 243,7610 }, { 244,7610 }, - { 245,7610 }, { 246,7610 }, { 247,7610 }, { 248,7610 }, { 249,7610 }, - { 250,7610 }, { 251,7610 }, { 252,7610 }, { 253,7610 }, { 254,7610 }, - { 255,7610 }, { 256,7610 }, { 0, 0 }, { 0,16130 }, { 1,7352 }, - { 2,7352 }, { 3,7352 }, { 4,7352 }, { 5,7352 }, { 6,7352 }, - - { 7,7352 }, { 8,7352 }, { 9,7352 }, { 10,7352 }, { 11,7352 }, - { 12,7352 }, { 13,7352 }, { 14,7352 }, { 15,7352 }, { 16,7352 }, - { 17,7352 }, { 18,7352 }, { 19,7352 }, { 20,7352 }, { 21,7352 }, - { 22,7352 }, { 23,7352 }, { 24,7352 }, { 25,7352 }, { 26,7352 }, - { 27,7352 }, { 28,7352 }, { 29,7352 }, { 30,7352 }, { 31,7352 }, - { 32,7352 }, { 33,7610 }, { 34,7352 }, { 35,7610 }, { 36,7352 }, - { 37,7610 }, { 38,7610 }, { 39,7352 }, { 40,7352 }, { 41,7352 }, - { 42,4934 }, { 43,7610 }, { 44,7352 }, { 45,7610 }, { 46,7352 }, - { 47,4938 }, { 48,7352 }, { 49,7352 }, { 50,7352 }, { 51,7352 }, - { 52,7352 }, { 53,7352 }, { 54,7352 }, { 55,7352 }, { 56,7352 }, - - { 57,7352 }, { 58,7352 }, { 59,7352 }, { 60,7610 }, { 61,7610 }, - { 62,7610 }, { 63,7610 }, { 64,7610 }, { 65,7352 }, { 66,7352 }, - { 67,7352 }, { 68,7352 }, { 69,7352 }, { 70,7352 }, { 71,7352 }, - { 72,7352 }, { 73,7352 }, { 74,7352 }, { 75,7352 }, { 76,7352 }, - { 77,7352 }, { 78,7352 }, { 79,7352 }, { 80,7352 }, { 81,7352 }, - { 82,7352 }, { 83,7352 }, { 84,7352 }, { 85,7352 }, { 86,7352 }, - { 87,7352 }, { 88,7352 }, { 89,7352 }, { 90,7352 }, { 91,7352 }, - { 92,7352 }, { 93,7352 }, { 94,7610 }, { 95,7352 }, { 96,7610 }, - { 97,7352 }, { 98,7352 }, { 99,7352 }, { 100,7352 }, { 101,7352 }, - { 102,7352 }, { 103,7352 }, { 104,7352 }, { 105,7352 }, { 106,7352 }, - - { 107,7352 }, { 108,7352 }, { 109,7352 }, { 110,7352 }, { 111,7352 }, - { 112,7352 }, { 113,7352 }, { 114,7352 }, { 115,7352 }, { 116,7352 }, - { 117,7352 }, { 118,7352 }, { 119,7352 }, { 120,7352 }, { 121,7352 }, - { 122,7352 }, { 123,7352 }, { 124,7610 }, { 125,7352 }, { 126,7610 }, - { 127,7352 }, { 128,7352 }, { 129,7352 }, { 130,7352 }, { 131,7352 }, - { 132,7352 }, { 133,7352 }, { 134,7352 }, { 135,7352 }, { 136,7352 }, - { 137,7352 }, { 138,7352 }, { 139,7352 }, { 140,7352 }, { 141,7352 }, - { 142,7352 }, { 143,7352 }, { 144,7352 }, { 145,7352 }, { 146,7352 }, - { 147,7352 }, { 148,7352 }, { 149,7352 }, { 150,7352 }, { 151,7352 }, - { 152,7352 }, { 153,7352 }, { 154,7352 }, { 155,7352 }, { 156,7352 }, - - { 157,7352 }, { 158,7352 }, { 159,7352 }, { 160,7352 }, { 161,7352 }, - { 162,7352 }, { 163,7352 }, { 164,7352 }, { 165,7352 }, { 166,7352 }, - { 167,7352 }, { 168,7352 }, { 169,7352 }, { 170,7352 }, { 171,7352 }, - { 172,7352 }, { 173,7352 }, { 174,7352 }, { 175,7352 }, { 176,7352 }, - { 177,7352 }, { 178,7352 }, { 179,7352 }, { 180,7352 }, { 181,7352 }, - { 182,7352 }, { 183,7352 }, { 184,7352 }, { 185,7352 }, { 186,7352 }, - { 187,7352 }, { 188,7352 }, { 189,7352 }, { 190,7352 }, { 191,7352 }, - { 192,7352 }, { 193,7352 }, { 194,7352 }, { 195,7352 }, { 196,7352 }, - { 197,7352 }, { 198,7352 }, { 199,7352 }, { 200,7352 }, { 201,7352 }, - { 202,7352 }, { 203,7352 }, { 204,7352 }, { 205,7352 }, { 206,7352 }, - - { 207,7352 }, { 208,7352 }, { 209,7352 }, { 210,7352 }, { 211,7352 }, - { 212,7352 }, { 213,7352 }, { 214,7352 }, { 215,7352 }, { 216,7352 }, - { 217,7352 }, { 218,7352 }, { 219,7352 }, { 220,7352 }, { 221,7352 }, - { 222,7352 }, { 223,7352 }, { 224,7352 }, { 225,7352 }, { 226,7352 }, - { 227,7352 }, { 228,7352 }, { 229,7352 }, { 230,7352 }, { 231,7352 }, - { 232,7352 }, { 233,7352 }, { 234,7352 }, { 235,7352 }, { 236,7352 }, - { 237,7352 }, { 238,7352 }, { 239,7352 }, { 240,7352 }, { 241,7352 }, - { 242,7352 }, { 243,7352 }, { 244,7352 }, { 245,7352 }, { 246,7352 }, - { 247,7352 }, { 248,7352 }, { 249,7352 }, { 250,7352 }, { 251,7352 }, - { 252,7352 }, { 253,7352 }, { 254,7352 }, { 255,7352 }, { 256,7352 }, - - { 0, 0 }, { 0,15872 }, { 1,7610 }, { 2,7610 }, { 3,7610 }, - { 4,7610 }, { 5,7610 }, { 6,7610 }, { 7,7610 }, { 8,7610 }, - { 9,7610 }, { 10,7610 }, { 11,7610 }, { 12,7610 }, { 13,7610 }, - { 14,7610 }, { 15,7610 }, { 16,7610 }, { 17,7610 }, { 18,7610 }, - { 19,7610 }, { 20,7610 }, { 21,7610 }, { 22,7610 }, { 23,7610 }, - { 24,7610 }, { 25,7610 }, { 26,7610 }, { 27,7610 }, { 28,7610 }, - { 29,7610 }, { 30,7610 }, { 31,7610 }, { 32,7610 }, { 33,7610 }, - { 34,4685 }, { 35,7610 }, { 36,7610 }, { 37,7610 }, { 38,7610 }, - { 39,7610 }, { 40,7610 }, { 41,7610 }, { 42,7610 }, { 43,7610 }, - { 44,7610 }, { 45,7610 }, { 46,7610 }, { 47,7610 }, { 48,7610 }, - - { 49,7610 }, { 50,7610 }, { 51,7610 }, { 52,7610 }, { 53,7610 }, - { 54,7610 }, { 55,7610 }, { 56,7610 }, { 57,7610 }, { 58,7610 }, - { 59,7610 }, { 60,7610 }, { 61,7610 }, { 62,7610 }, { 63,7610 }, - { 64,7610 }, { 65,7610 }, { 66,7610 }, { 67,7610 }, { 68,7610 }, - { 69,7610 }, { 70,7610 }, { 71,7610 }, { 72,7610 }, { 73,7610 }, - { 74,7610 }, { 75,7610 }, { 76,7610 }, { 77,7610 }, { 78,7610 }, - { 79,7610 }, { 80,7610 }, { 81,7610 }, { 82,7610 }, { 83,7610 }, - { 84,7610 }, { 85,7610 }, { 86,7610 }, { 87,7610 }, { 88,7610 }, - { 89,7610 }, { 90,7610 }, { 91,7610 }, { 92,7610 }, { 93,7610 }, - { 94,7610 }, { 95,7610 }, { 96,7610 }, { 97,7610 }, { 98,7610 }, - - { 99,7610 }, { 100,7610 }, { 101,7610 }, { 102,7610 }, { 103,7610 }, - { 104,7610 }, { 105,7610 }, { 106,7610 }, { 107,7610 }, { 108,7610 }, - { 109,7610 }, { 110,7610 }, { 111,7610 }, { 112,7610 }, { 113,7610 }, - { 114,7610 }, { 115,7610 }, { 116,7610 }, { 117,7610 }, { 118,7610 }, - { 119,7610 }, { 120,7610 }, { 121,7610 }, { 122,7610 }, { 123,7610 }, - { 124,7610 }, { 125,7610 }, { 126,7610 }, { 127,7610 }, { 128,7610 }, - { 129,7610 }, { 130,7610 }, { 131,7610 }, { 132,7610 }, { 133,7610 }, - { 134,7610 }, { 135,7610 }, { 136,7610 }, { 137,7610 }, { 138,7610 }, - { 139,7610 }, { 140,7610 }, { 141,7610 }, { 142,7610 }, { 143,7610 }, - { 144,7610 }, { 145,7610 }, { 146,7610 }, { 147,7610 }, { 148,7610 }, - - { 149,7610 }, { 150,7610 }, { 151,7610 }, { 152,7610 }, { 153,7610 }, - { 154,7610 }, { 155,7610 }, { 156,7610 }, { 157,7610 }, { 158,7610 }, - { 159,7610 }, { 160,7610 }, { 161,7610 }, { 162,7610 }, { 163,7610 }, - { 164,7610 }, { 165,7610 }, { 166,7610 }, { 167,7610 }, { 168,7610 }, - { 169,7610 }, { 170,7610 }, { 171,7610 }, { 172,7610 }, { 173,7610 }, - { 174,7610 }, { 175,7610 }, { 176,7610 }, { 177,7610 }, { 178,7610 }, - { 179,7610 }, { 180,7610 }, { 181,7610 }, { 182,7610 }, { 183,7610 }, - { 184,7610 }, { 185,7610 }, { 186,7610 }, { 187,7610 }, { 188,7610 }, - { 189,7610 }, { 190,7610 }, { 191,7610 }, { 192,7610 }, { 193,7610 }, - { 194,7610 }, { 195,7610 }, { 196,7610 }, { 197,7610 }, { 198,7610 }, - - { 199,7610 }, { 200,7610 }, { 201,7610 }, { 202,7610 }, { 203,7610 }, - { 204,7610 }, { 205,7610 }, { 206,7610 }, { 207,7610 }, { 208,7610 }, - { 209,7610 }, { 210,7610 }, { 211,7610 }, { 212,7610 }, { 213,7610 }, - { 214,7610 }, { 215,7610 }, { 216,7610 }, { 217,7610 }, { 218,7610 }, - { 219,7610 }, { 220,7610 }, { 221,7610 }, { 222,7610 }, { 223,7610 }, - { 224,7610 }, { 225,7610 }, { 226,7610 }, { 227,7610 }, { 228,7610 }, - { 229,7610 }, { 230,7610 }, { 231,7610 }, { 232,7610 }, { 233,7610 }, - { 234,7610 }, { 235,7610 }, { 236,7610 }, { 237,7610 }, { 238,7610 }, - { 239,7610 }, { 240,7610 }, { 241,7610 }, { 242,7610 }, { 243,7610 }, - { 244,7610 }, { 245,7610 }, { 246,7610 }, { 247,7610 }, { 248,7610 }, - - { 249,7610 }, { 250,7610 }, { 251,7610 }, { 252,7610 }, { 253,7610 }, - { 254,7610 }, { 255,7610 }, { 256,7610 }, { 0, 0 }, { 0,15614 }, - { 1,7352 }, { 2,7352 }, { 3,7352 }, { 4,7352 }, { 5,7352 }, - { 6,7352 }, { 7,7352 }, { 8,7352 }, { 9,7352 }, { 10,7352 }, - { 11,7352 }, { 12,7352 }, { 13,7352 }, { 14,7352 }, { 15,7352 }, - { 16,7352 }, { 17,7352 }, { 18,7352 }, { 19,7352 }, { 20,7352 }, - { 21,7352 }, { 22,7352 }, { 23,7352 }, { 24,7352 }, { 25,7352 }, - { 26,7352 }, { 27,7352 }, { 28,7352 }, { 29,7352 }, { 30,7352 }, - { 31,7352 }, { 32,7352 }, { 33,7352 }, { 34,4427 }, { 35,7352 }, - { 36,7352 }, { 37,7352 }, { 38,7352 }, { 39,7352 }, { 40,7352 }, - - { 41,7352 }, { 42,7352 }, { 43,7352 }, { 44,7352 }, { 45,7352 }, - { 46,7352 }, { 47,7352 }, { 48,7352 }, { 49,7352 }, { 50,7352 }, - { 51,7352 }, { 52,7352 }, { 53,7352 }, { 54,7352 }, { 55,7352 }, - { 56,7352 }, { 57,7352 }, { 58,7352 }, { 59,7352 }, { 60,7352 }, - { 61,7352 }, { 62,7352 }, { 63,7352 }, { 64,7352 }, { 65,7352 }, - { 66,7352 }, { 67,7352 }, { 68,7352 }, { 69,7352 }, { 70,7352 }, - { 71,7352 }, { 72,7352 }, { 73,7352 }, { 74,7352 }, { 75,7352 }, - { 76,7352 }, { 77,7352 }, { 78,7352 }, { 79,7352 }, { 80,7352 }, - { 81,7352 }, { 82,7352 }, { 83,7352 }, { 84,7352 }, { 85,7352 }, - { 86,7352 }, { 87,7352 }, { 88,7352 }, { 89,7352 }, { 90,7352 }, - - { 91,7352 }, { 92,7352 }, { 93,7352 }, { 94,7352 }, { 95,7352 }, - { 96,7352 }, { 97,7352 }, { 98,7352 }, { 99,7352 }, { 100,7352 }, - { 101,7352 }, { 102,7352 }, { 103,7352 }, { 104,7352 }, { 105,7352 }, - { 106,7352 }, { 107,7352 }, { 108,7352 }, { 109,7352 }, { 110,7352 }, - { 111,7352 }, { 112,7352 }, { 113,7352 }, { 114,7352 }, { 115,7352 }, - { 116,7352 }, { 117,7352 }, { 118,7352 }, { 119,7352 }, { 120,7352 }, - { 121,7352 }, { 122,7352 }, { 123,7352 }, { 124,7352 }, { 125,7352 }, - { 126,7352 }, { 127,7352 }, { 128,7352 }, { 129,7352 }, { 130,7352 }, - { 131,7352 }, { 132,7352 }, { 133,7352 }, { 134,7352 }, { 135,7352 }, - { 136,7352 }, { 137,7352 }, { 138,7352 }, { 139,7352 }, { 140,7352 }, - - { 141,7352 }, { 142,7352 }, { 143,7352 }, { 144,7352 }, { 145,7352 }, - { 146,7352 }, { 147,7352 }, { 148,7352 }, { 149,7352 }, { 150,7352 }, - { 151,7352 }, { 152,7352 }, { 153,7352 }, { 154,7352 }, { 155,7352 }, - { 156,7352 }, { 157,7352 }, { 158,7352 }, { 159,7352 }, { 160,7352 }, - { 161,7352 }, { 162,7352 }, { 163,7352 }, { 164,7352 }, { 165,7352 }, - { 166,7352 }, { 167,7352 }, { 168,7352 }, { 169,7352 }, { 170,7352 }, - { 171,7352 }, { 172,7352 }, { 173,7352 }, { 174,7352 }, { 175,7352 }, - { 176,7352 }, { 177,7352 }, { 178,7352 }, { 179,7352 }, { 180,7352 }, - { 181,7352 }, { 182,7352 }, { 183,7352 }, { 184,7352 }, { 185,7352 }, - { 186,7352 }, { 187,7352 }, { 188,7352 }, { 189,7352 }, { 190,7352 }, - - { 191,7352 }, { 192,7352 }, { 193,7352 }, { 194,7352 }, { 195,7352 }, - { 196,7352 }, { 197,7352 }, { 198,7352 }, { 199,7352 }, { 200,7352 }, - { 201,7352 }, { 202,7352 }, { 203,7352 }, { 204,7352 }, { 205,7352 }, - { 206,7352 }, { 207,7352 }, { 208,7352 }, { 209,7352 }, { 210,7352 }, - { 211,7352 }, { 212,7352 }, { 213,7352 }, { 214,7352 }, { 215,7352 }, - { 216,7352 }, { 217,7352 }, { 218,7352 }, { 219,7352 }, { 220,7352 }, - { 221,7352 }, { 222,7352 }, { 223,7352 }, { 224,7352 }, { 225,7352 }, - { 226,7352 }, { 227,7352 }, { 228,7352 }, { 229,7352 }, { 230,7352 }, - { 231,7352 }, { 232,7352 }, { 233,7352 }, { 234,7352 }, { 235,7352 }, - { 236,7352 }, { 237,7352 }, { 238,7352 }, { 239,7352 }, { 240,7352 }, - - { 241,7352 }, { 242,7352 }, { 243,7352 }, { 244,7352 }, { 245,7352 }, - { 246,7352 }, { 247,7352 }, { 248,7352 }, { 249,7352 }, { 250,7352 }, - { 251,7352 }, { 252,7352 }, { 253,7352 }, { 254,7352 }, { 255,7352 }, - { 256,7352 }, { 0, 10 }, { 0,15356 }, { 1,7352 }, { 2,7352 }, - { 3,7352 }, { 4,7352 }, { 5,7352 }, { 6,7352 }, { 7,7352 }, - { 8,7352 }, { 9,7352 }, { 10,7352 }, { 11,7352 }, { 12,7352 }, - { 13,7352 }, { 14,7352 }, { 15,7352 }, { 16,7352 }, { 17,7352 }, - { 18,7352 }, { 19,7352 }, { 20,7352 }, { 21,7352 }, { 22,7352 }, - { 23,7352 }, { 24,7352 }, { 25,7352 }, { 26,7352 }, { 27,7352 }, - { 28,7352 }, { 29,7352 }, { 30,7352 }, { 31,7352 }, { 32,7352 }, - - { 33,7352 }, { 34,7352 }, { 35,7352 }, { 36,7352 }, { 37,7352 }, - { 38,7352 }, { 39,4157 }, { 40,7352 }, { 41,7352 }, { 42,7352 }, - { 43,7352 }, { 44,7352 }, { 45,7352 }, { 46,7352 }, { 47,7352 }, - { 48,7352 }, { 49,7352 }, { 50,7352 }, { 51,7352 }, { 52,7352 }, - { 53,7352 }, { 54,7352 }, { 55,7352 }, { 56,7352 }, { 57,7352 }, - { 58,7352 }, { 59,7352 }, { 60,7352 }, { 61,7352 }, { 62,7352 }, - { 63,7352 }, { 64,7352 }, { 65,7352 }, { 66,7352 }, { 67,7352 }, - { 68,7352 }, { 69,7352 }, { 70,7352 }, { 71,7352 }, { 72,7352 }, - { 73,7352 }, { 74,7352 }, { 75,7352 }, { 76,7352 }, { 77,7352 }, - { 78,7352 }, { 79,7352 }, { 80,7352 }, { 81,7352 }, { 82,7352 }, - - { 83,7352 }, { 84,7352 }, { 85,7352 }, { 86,7352 }, { 87,7352 }, - { 88,7352 }, { 89,7352 }, { 90,7352 }, { 91,7352 }, { 92,7352 }, - { 93,7352 }, { 94,7352 }, { 95,7352 }, { 96,7352 }, { 97,7352 }, - { 98,7352 }, { 99,7352 }, { 100,7352 }, { 101,7352 }, { 102,7352 }, - { 103,7352 }, { 104,7352 }, { 105,7352 }, { 106,7352 }, { 107,7352 }, - { 108,7352 }, { 109,7352 }, { 110,7352 }, { 111,7352 }, { 112,7352 }, - { 113,7352 }, { 114,7352 }, { 115,7352 }, { 116,7352 }, { 117,7352 }, - { 118,7352 }, { 119,7352 }, { 120,7352 }, { 121,7352 }, { 122,7352 }, - { 123,7352 }, { 124,7352 }, { 125,7352 }, { 126,7352 }, { 127,7352 }, - { 128,7352 }, { 129,7352 }, { 130,7352 }, { 131,7352 }, { 132,7352 }, - - { 133,7352 }, { 134,7352 }, { 135,7352 }, { 136,7352 }, { 137,7352 }, - { 138,7352 }, { 139,7352 }, { 140,7352 }, { 141,7352 }, { 142,7352 }, - { 143,7352 }, { 144,7352 }, { 145,7352 }, { 146,7352 }, { 147,7352 }, - { 148,7352 }, { 149,7352 }, { 150,7352 }, { 151,7352 }, { 152,7352 }, - { 153,7352 }, { 154,7352 }, { 155,7352 }, { 156,7352 }, { 157,7352 }, - { 158,7352 }, { 159,7352 }, { 160,7352 }, { 161,7352 }, { 162,7352 }, - { 163,7352 }, { 164,7352 }, { 165,7352 }, { 166,7352 }, { 167,7352 }, - { 168,7352 }, { 169,7352 }, { 170,7352 }, { 171,7352 }, { 172,7352 }, - { 173,7352 }, { 174,7352 }, { 175,7352 }, { 176,7352 }, { 177,7352 }, - { 178,7352 }, { 179,7352 }, { 180,7352 }, { 181,7352 }, { 182,7352 }, - - { 183,7352 }, { 184,7352 }, { 185,7352 }, { 186,7352 }, { 187,7352 }, - { 188,7352 }, { 189,7352 }, { 190,7352 }, { 191,7352 }, { 192,7352 }, - { 193,7352 }, { 194,7352 }, { 195,7352 }, { 196,7352 }, { 197,7352 }, - { 198,7352 }, { 199,7352 }, { 200,7352 }, { 201,7352 }, { 202,7352 }, - { 203,7352 }, { 204,7352 }, { 205,7352 }, { 206,7352 }, { 207,7352 }, - { 208,7352 }, { 209,7352 }, { 210,7352 }, { 211,7352 }, { 212,7352 }, - { 213,7352 }, { 214,7352 }, { 215,7352 }, { 216,7352 }, { 217,7352 }, - { 218,7352 }, { 219,7352 }, { 220,7352 }, { 221,7352 }, { 222,7352 }, - { 223,7352 }, { 224,7352 }, { 225,7352 }, { 226,7352 }, { 227,7352 }, - { 228,7352 }, { 229,7352 }, { 230,7352 }, { 231,7352 }, { 232,7352 }, - - { 233,7352 }, { 234,7352 }, { 235,7352 }, { 236,7352 }, { 237,7352 }, - { 238,7352 }, { 239,7352 }, { 240,7352 }, { 241,7352 }, { 242,7352 }, - { 243,7352 }, { 244,7352 }, { 245,7352 }, { 246,7352 }, { 247,7352 }, - { 248,7352 }, { 249,7352 }, { 250,7352 }, { 251,7352 }, { 252,7352 }, - { 253,7352 }, { 254,7352 }, { 255,7352 }, { 256,7352 }, { 0, 10 }, - { 0,15098 }, { 1,7094 }, { 2,7094 }, { 3,7094 }, { 4,7094 }, - { 5,7094 }, { 6,7094 }, { 7,7094 }, { 8,7094 }, { 9,7094 }, - { 10,7094 }, { 11,7094 }, { 12,7094 }, { 13,7094 }, { 14,7094 }, - { 15,7094 }, { 16,7094 }, { 17,7094 }, { 18,7094 }, { 19,7094 }, - { 20,7094 }, { 21,7094 }, { 22,7094 }, { 23,7094 }, { 24,7094 }, - - { 25,7094 }, { 26,7094 }, { 27,7094 }, { 28,7094 }, { 29,7094 }, - { 30,7094 }, { 31,7094 }, { 32,7094 }, { 33,7094 }, { 34,7094 }, - { 35,7094 }, { 36,7094 }, { 37,7094 }, { 38,7094 }, { 39,3899 }, - { 40,7094 }, { 41,7094 }, { 42,7094 }, { 43,7094 }, { 44,7094 }, - { 45,7094 }, { 46,7094 }, { 47,7094 }, { 48,7094 }, { 49,7094 }, - { 50,7094 }, { 51,7094 }, { 52,7094 }, { 53,7094 }, { 54,7094 }, - { 55,7094 }, { 56,7094 }, { 57,7094 }, { 58,7094 }, { 59,7094 }, - { 60,7094 }, { 61,7094 }, { 62,7094 }, { 63,7094 }, { 64,7094 }, - { 65,7094 }, { 66,7094 }, { 67,7094 }, { 68,7094 }, { 69,7094 }, - { 70,7094 }, { 71,7094 }, { 72,7094 }, { 73,7094 }, { 74,7094 }, - - { 75,7094 }, { 76,7094 }, { 77,7094 }, { 78,7094 }, { 79,7094 }, - { 80,7094 }, { 81,7094 }, { 82,7094 }, { 83,7094 }, { 84,7094 }, - { 85,7094 }, { 86,7094 }, { 87,7094 }, { 88,7094 }, { 89,7094 }, - { 90,7094 }, { 91,7094 }, { 92,7094 }, { 93,7094 }, { 94,7094 }, - { 95,7094 }, { 96,7094 }, { 97,7094 }, { 98,7094 }, { 99,7094 }, - { 100,7094 }, { 101,7094 }, { 102,7094 }, { 103,7094 }, { 104,7094 }, - { 105,7094 }, { 106,7094 }, { 107,7094 }, { 108,7094 }, { 109,7094 }, - { 110,7094 }, { 111,7094 }, { 112,7094 }, { 113,7094 }, { 114,7094 }, - { 115,7094 }, { 116,7094 }, { 117,7094 }, { 118,7094 }, { 119,7094 }, - { 120,7094 }, { 121,7094 }, { 122,7094 }, { 123,7094 }, { 124,7094 }, - - { 125,7094 }, { 126,7094 }, { 127,7094 }, { 128,7094 }, { 129,7094 }, - { 130,7094 }, { 131,7094 }, { 132,7094 }, { 133,7094 }, { 134,7094 }, - { 135,7094 }, { 136,7094 }, { 137,7094 }, { 138,7094 }, { 139,7094 }, - { 140,7094 }, { 141,7094 }, { 142,7094 }, { 143,7094 }, { 144,7094 }, - { 145,7094 }, { 146,7094 }, { 147,7094 }, { 148,7094 }, { 149,7094 }, - { 150,7094 }, { 151,7094 }, { 152,7094 }, { 153,7094 }, { 154,7094 }, - { 155,7094 }, { 156,7094 }, { 157,7094 }, { 158,7094 }, { 159,7094 }, - { 160,7094 }, { 161,7094 }, { 162,7094 }, { 163,7094 }, { 164,7094 }, - { 165,7094 }, { 166,7094 }, { 167,7094 }, { 168,7094 }, { 169,7094 }, - { 170,7094 }, { 171,7094 }, { 172,7094 }, { 173,7094 }, { 174,7094 }, - - { 175,7094 }, { 176,7094 }, { 177,7094 }, { 178,7094 }, { 179,7094 }, - { 180,7094 }, { 181,7094 }, { 182,7094 }, { 183,7094 }, { 184,7094 }, - { 185,7094 }, { 186,7094 }, { 187,7094 }, { 188,7094 }, { 189,7094 }, - { 190,7094 }, { 191,7094 }, { 192,7094 }, { 193,7094 }, { 194,7094 }, - { 195,7094 }, { 196,7094 }, { 197,7094 }, { 198,7094 }, { 199,7094 }, - { 200,7094 }, { 201,7094 }, { 202,7094 }, { 203,7094 }, { 204,7094 }, - { 205,7094 }, { 206,7094 }, { 207,7094 }, { 208,7094 }, { 209,7094 }, - { 210,7094 }, { 211,7094 }, { 212,7094 }, { 213,7094 }, { 214,7094 }, - { 215,7094 }, { 216,7094 }, { 217,7094 }, { 218,7094 }, { 219,7094 }, - { 220,7094 }, { 221,7094 }, { 222,7094 }, { 223,7094 }, { 224,7094 }, - - { 225,7094 }, { 226,7094 }, { 227,7094 }, { 228,7094 }, { 229,7094 }, - { 230,7094 }, { 231,7094 }, { 232,7094 }, { 233,7094 }, { 234,7094 }, - { 235,7094 }, { 236,7094 }, { 237,7094 }, { 238,7094 }, { 239,7094 }, - { 240,7094 }, { 241,7094 }, { 242,7094 }, { 243,7094 }, { 244,7094 }, - { 245,7094 }, { 246,7094 }, { 247,7094 }, { 248,7094 }, { 249,7094 }, - { 250,7094 }, { 251,7094 }, { 252,7094 }, { 253,7094 }, { 254,7094 }, - { 255,7094 }, { 256,7094 }, { 0, 0 }, { 0,14840 }, { 1,7094 }, - { 2,7094 }, { 3,7094 }, { 4,7094 }, { 5,7094 }, { 6,7094 }, - { 7,7094 }, { 8,7094 }, { 9,7094 }, { 10,7094 }, { 11,7094 }, - { 12,7094 }, { 13,7094 }, { 14,7094 }, { 15,7094 }, { 16,7094 }, - - { 17,7094 }, { 18,7094 }, { 19,7094 }, { 20,7094 }, { 21,7094 }, - { 22,7094 }, { 23,7094 }, { 24,7094 }, { 25,7094 }, { 26,7094 }, - { 27,7094 }, { 28,7094 }, { 29,7094 }, { 30,7094 }, { 31,7094 }, - { 32,7094 }, { 33,7094 }, { 34,7094 }, { 35,7094 }, { 36,7094 }, - { 37,7094 }, { 38,7094 }, { 39,3670 }, { 40,7094 }, { 41,7094 }, - { 42,7094 }, { 43,7094 }, { 44,7094 }, { 45,7094 }, { 46,7094 }, - { 47,7094 }, { 48,7094 }, { 49,7094 }, { 50,7094 }, { 51,7094 }, - { 52,7094 }, { 53,7094 }, { 54,7094 }, { 55,7094 }, { 56,7094 }, - { 57,7094 }, { 58,7094 }, { 59,7094 }, { 60,7094 }, { 61,7094 }, - { 62,7094 }, { 63,7094 }, { 64,7094 }, { 65,7094 }, { 66,7094 }, - - { 67,7094 }, { 68,7094 }, { 69,7094 }, { 70,7094 }, { 71,7094 }, - { 72,7094 }, { 73,7094 }, { 74,7094 }, { 75,7094 }, { 76,7094 }, - { 77,7094 }, { 78,7094 }, { 79,7094 }, { 80,7094 }, { 81,7094 }, - { 82,7094 }, { 83,7094 }, { 84,7094 }, { 85,7094 }, { 86,7094 }, - { 87,7094 }, { 88,7094 }, { 89,7094 }, { 90,7094 }, { 91,7094 }, - { 92,7094 }, { 93,7094 }, { 94,7094 }, { 95,7094 }, { 96,7094 }, - { 97,7094 }, { 98,7094 }, { 99,7094 }, { 100,7094 }, { 101,7094 }, - { 102,7094 }, { 103,7094 }, { 104,7094 }, { 105,7094 }, { 106,7094 }, - { 107,7094 }, { 108,7094 }, { 109,7094 }, { 110,7094 }, { 111,7094 }, - { 112,7094 }, { 113,7094 }, { 114,7094 }, { 115,7094 }, { 116,7094 }, - - { 117,7094 }, { 118,7094 }, { 119,7094 }, { 120,7094 }, { 121,7094 }, - { 122,7094 }, { 123,7094 }, { 124,7094 }, { 125,7094 }, { 126,7094 }, - { 127,7094 }, { 128,7094 }, { 129,7094 }, { 130,7094 }, { 131,7094 }, - { 132,7094 }, { 133,7094 }, { 134,7094 }, { 135,7094 }, { 136,7094 }, - { 137,7094 }, { 138,7094 }, { 139,7094 }, { 140,7094 }, { 141,7094 }, - { 142,7094 }, { 143,7094 }, { 144,7094 }, { 145,7094 }, { 146,7094 }, - { 147,7094 }, { 148,7094 }, { 149,7094 }, { 150,7094 }, { 151,7094 }, - { 152,7094 }, { 153,7094 }, { 154,7094 }, { 155,7094 }, { 156,7094 }, - { 157,7094 }, { 158,7094 }, { 159,7094 }, { 160,7094 }, { 161,7094 }, - { 162,7094 }, { 163,7094 }, { 164,7094 }, { 165,7094 }, { 166,7094 }, - - { 167,7094 }, { 168,7094 }, { 169,7094 }, { 170,7094 }, { 171,7094 }, - { 172,7094 }, { 173,7094 }, { 174,7094 }, { 175,7094 }, { 176,7094 }, - { 177,7094 }, { 178,7094 }, { 179,7094 }, { 180,7094 }, { 181,7094 }, - { 182,7094 }, { 183,7094 }, { 184,7094 }, { 185,7094 }, { 186,7094 }, - { 187,7094 }, { 188,7094 }, { 189,7094 }, { 190,7094 }, { 191,7094 }, - { 192,7094 }, { 193,7094 }, { 194,7094 }, { 195,7094 }, { 196,7094 }, - { 197,7094 }, { 198,7094 }, { 199,7094 }, { 200,7094 }, { 201,7094 }, - { 202,7094 }, { 203,7094 }, { 204,7094 }, { 205,7094 }, { 206,7094 }, - { 207,7094 }, { 208,7094 }, { 209,7094 }, { 210,7094 }, { 211,7094 }, - { 212,7094 }, { 213,7094 }, { 214,7094 }, { 215,7094 }, { 216,7094 }, - - { 217,7094 }, { 218,7094 }, { 219,7094 }, { 220,7094 }, { 221,7094 }, - { 222,7094 }, { 223,7094 }, { 224,7094 }, { 225,7094 }, { 226,7094 }, - { 227,7094 }, { 228,7094 }, { 229,7094 }, { 230,7094 }, { 231,7094 }, - { 232,7094 }, { 233,7094 }, { 234,7094 }, { 235,7094 }, { 236,7094 }, - { 237,7094 }, { 238,7094 }, { 239,7094 }, { 240,7094 }, { 241,7094 }, - { 242,7094 }, { 243,7094 }, { 244,7094 }, { 245,7094 }, { 246,7094 }, - { 247,7094 }, { 248,7094 }, { 249,7094 }, { 250,7094 }, { 251,7094 }, - { 252,7094 }, { 253,7094 }, { 254,7094 }, { 255,7094 }, { 256,7094 }, - { 0, 0 }, { 0,14582 }, { 1,6836 }, { 2,6836 }, { 3,6836 }, - { 4,6836 }, { 5,6836 }, { 6,6836 }, { 7,6836 }, { 8,6836 }, - - { 9,6836 }, { 10,6836 }, { 11,6836 }, { 12,6836 }, { 13,6836 }, - { 14,6836 }, { 15,6836 }, { 16,6836 }, { 17,6836 }, { 18,6836 }, - { 19,6836 }, { 20,6836 }, { 21,6836 }, { 22,6836 }, { 23,6836 }, - { 24,6836 }, { 25,6836 }, { 26,6836 }, { 27,6836 }, { 28,6836 }, - { 29,6836 }, { 30,6836 }, { 31,6836 }, { 32,6836 }, { 33,6836 }, - { 34,6836 }, { 35,6836 }, { 36,6836 }, { 37,6836 }, { 38,6836 }, - { 39,3412 }, { 40,6836 }, { 41,6836 }, { 42,6836 }, { 43,6836 }, - { 44,6836 }, { 45,6836 }, { 46,6836 }, { 47,6836 }, { 48,6836 }, - { 49,6836 }, { 50,6836 }, { 51,6836 }, { 52,6836 }, { 53,6836 }, - { 54,6836 }, { 55,6836 }, { 56,6836 }, { 57,6836 }, { 58,6836 }, - - { 59,6836 }, { 60,6836 }, { 61,6836 }, { 62,6836 }, { 63,6836 }, - { 64,6836 }, { 65,6836 }, { 66,6836 }, { 67,6836 }, { 68,6836 }, - { 69,6836 }, { 70,6836 }, { 71,6836 }, { 72,6836 }, { 73,6836 }, - { 74,6836 }, { 75,6836 }, { 76,6836 }, { 77,6836 }, { 78,6836 }, - { 79,6836 }, { 80,6836 }, { 81,6836 }, { 82,6836 }, { 83,6836 }, - { 84,6836 }, { 85,6836 }, { 86,6836 }, { 87,6836 }, { 88,6836 }, - { 89,6836 }, { 90,6836 }, { 91,6836 }, { 92,6836 }, { 93,6836 }, - { 94,6836 }, { 95,6836 }, { 96,6836 }, { 97,6836 }, { 98,6836 }, - { 99,6836 }, { 100,6836 }, { 101,6836 }, { 102,6836 }, { 103,6836 }, - { 104,6836 }, { 105,6836 }, { 106,6836 }, { 107,6836 }, { 108,6836 }, - - { 109,6836 }, { 110,6836 }, { 111,6836 }, { 112,6836 }, { 113,6836 }, - { 114,6836 }, { 115,6836 }, { 116,6836 }, { 117,6836 }, { 118,6836 }, - { 119,6836 }, { 120,6836 }, { 121,6836 }, { 122,6836 }, { 123,6836 }, - { 124,6836 }, { 125,6836 }, { 126,6836 }, { 127,6836 }, { 128,6836 }, - { 129,6836 }, { 130,6836 }, { 131,6836 }, { 132,6836 }, { 133,6836 }, - { 134,6836 }, { 135,6836 }, { 136,6836 }, { 137,6836 }, { 138,6836 }, - { 139,6836 }, { 140,6836 }, { 141,6836 }, { 142,6836 }, { 143,6836 }, - { 144,6836 }, { 145,6836 }, { 146,6836 }, { 147,6836 }, { 148,6836 }, - { 149,6836 }, { 150,6836 }, { 151,6836 }, { 152,6836 }, { 153,6836 }, - { 154,6836 }, { 155,6836 }, { 156,6836 }, { 157,6836 }, { 158,6836 }, - - { 159,6836 }, { 160,6836 }, { 161,6836 }, { 162,6836 }, { 163,6836 }, - { 164,6836 }, { 165,6836 }, { 166,6836 }, { 167,6836 }, { 168,6836 }, - { 169,6836 }, { 170,6836 }, { 171,6836 }, { 172,6836 }, { 173,6836 }, - { 174,6836 }, { 175,6836 }, { 176,6836 }, { 177,6836 }, { 178,6836 }, - { 179,6836 }, { 180,6836 }, { 181,6836 }, { 182,6836 }, { 183,6836 }, - { 184,6836 }, { 185,6836 }, { 186,6836 }, { 187,6836 }, { 188,6836 }, - { 189,6836 }, { 190,6836 }, { 191,6836 }, { 192,6836 }, { 193,6836 }, - { 194,6836 }, { 195,6836 }, { 196,6836 }, { 197,6836 }, { 198,6836 }, - { 199,6836 }, { 200,6836 }, { 201,6836 }, { 202,6836 }, { 203,6836 }, - { 204,6836 }, { 205,6836 }, { 206,6836 }, { 207,6836 }, { 208,6836 }, - - { 209,6836 }, { 210,6836 }, { 211,6836 }, { 212,6836 }, { 213,6836 }, - { 214,6836 }, { 215,6836 }, { 216,6836 }, { 217,6836 }, { 218,6836 }, - { 219,6836 }, { 220,6836 }, { 221,6836 }, { 222,6836 }, { 223,6836 }, - { 224,6836 }, { 225,6836 }, { 226,6836 }, { 227,6836 }, { 228,6836 }, - { 229,6836 }, { 230,6836 }, { 231,6836 }, { 232,6836 }, { 233,6836 }, - { 234,6836 }, { 235,6836 }, { 236,6836 }, { 237,6836 }, { 238,6836 }, - { 239,6836 }, { 240,6836 }, { 241,6836 }, { 242,6836 }, { 243,6836 }, - { 244,6836 }, { 245,6836 }, { 246,6836 }, { 247,6836 }, { 248,6836 }, - { 249,6836 }, { 250,6836 }, { 251,6836 }, { 252,6836 }, { 253,6836 }, - { 254,6836 }, { 255,6836 }, { 256,6836 }, { 0, 19 }, { 0,14324 }, + { 44,5958 }, { 45,6317 }, { 46,6336 }, { 47,6407 }, { 48,6439 }, + { 49,6696 }, { 50,6696 }, { 51,6696 }, { 52,6696 }, { 53,6696 }, + { 54,6696 }, { 55,6696 }, { 56,6696 }, { 57,6696 }, { 58,5961 }, + { 59,5958 }, { 60,6953 }, { 61,6964 }, { 62,7031 }, { 63,5983 }, + { 64,5983 }, { 65,7063 }, { 66,7320 }, { 67,7063 }, { 68,7063 }, + { 69,7577 }, { 70,7063 }, { 71,7063 }, { 72,7063 }, { 73,7063 }, + { 74,7063 }, { 75,7063 }, { 76,7063 }, { 77,7063 }, { 78,7834 }, + { 79,7063 }, { 80,7063 }, { 81,7063 }, { 82,7063 }, { 83,7063 }, + { 84,7063 }, { 85,8091 }, { 86,7063 }, { 87,7063 }, { 88,8348 }, + + { 89,7063 }, { 90,7063 }, { 91,5958 }, { 92,5934 }, { 93,5958 }, + { 94,6306 }, { 95,7063 }, { 96,5983 }, { 97,7063 }, { 98,7320 }, + { 99,7063 }, { 100,7063 }, { 101,7577 }, { 102,7063 }, { 103,7063 }, + { 104,7063 }, { 105,7063 }, { 106,7063 }, { 107,7063 }, { 108,7063 }, + { 109,7063 }, { 110,7834 }, { 111,7063 }, { 112,7063 }, { 113,7063 }, + { 114,7063 }, { 115,7063 }, { 116,7063 }, { 117,8091 }, { 118,7063 }, + { 119,7063 }, { 120,8348 }, { 121,7063 }, { 122,7063 }, { 123,5934 }, + { 124,5983 }, { 125,5934 }, { 126,5983 }, { 127,5934 }, { 128,7063 }, + { 129,7063 }, { 130,7063 }, { 131,7063 }, { 132,7063 }, { 133,7063 }, + { 134,7063 }, { 135,7063 }, { 136,7063 }, { 137,7063 }, { 138,7063 }, + + { 139,7063 }, { 140,7063 }, { 141,7063 }, { 142,7063 }, { 143,7063 }, + { 144,7063 }, { 145,7063 }, { 146,7063 }, { 147,7063 }, { 148,7063 }, + { 149,7063 }, { 150,7063 }, { 151,7063 }, { 152,7063 }, { 153,7063 }, + { 154,7063 }, { 155,7063 }, { 156,7063 }, { 157,7063 }, { 158,7063 }, + { 159,7063 }, { 160,7063 }, { 161,7063 }, { 162,7063 }, { 163,7063 }, + { 164,7063 }, { 165,7063 }, { 166,7063 }, { 167,7063 }, { 168,7063 }, + { 169,7063 }, { 170,7063 }, { 171,7063 }, { 172,7063 }, { 173,7063 }, + { 174,7063 }, { 175,7063 }, { 176,7063 }, { 177,7063 }, { 178,7063 }, + { 179,7063 }, { 180,7063 }, { 181,7063 }, { 182,7063 }, { 183,7063 }, + { 184,7063 }, { 185,7063 }, { 186,7063 }, { 187,7063 }, { 188,7063 }, + + { 189,7063 }, { 190,7063 }, { 191,7063 }, { 192,7063 }, { 193,7063 }, + { 194,7063 }, { 195,7063 }, { 196,7063 }, { 197,7063 }, { 198,7063 }, + { 199,7063 }, { 200,7063 }, { 201,7063 }, { 202,7063 }, { 203,7063 }, + { 204,7063 }, { 205,7063 }, { 206,7063 }, { 207,7063 }, { 208,7063 }, + { 209,7063 }, { 210,7063 }, { 211,7063 }, { 212,7063 }, { 213,7063 }, + { 214,7063 }, { 215,7063 }, { 216,7063 }, { 217,7063 }, { 218,7063 }, + { 219,7063 }, { 220,7063 }, { 221,7063 }, { 222,7063 }, { 223,7063 }, + { 224,7063 }, { 225,7063 }, { 226,7063 }, { 227,7063 }, { 228,7063 }, + { 229,7063 }, { 230,7063 }, { 231,7063 }, { 232,7063 }, { 233,7063 }, + { 234,7063 }, { 235,7063 }, { 236,7063 }, { 237,7063 }, { 238,7063 }, + + { 239,7063 }, { 240,7063 }, { 241,7063 }, { 242,7063 }, { 243,7063 }, + { 244,7063 }, { 245,7063 }, { 246,7063 }, { 247,7063 }, { 248,7063 }, + { 249,7063 }, { 250,7063 }, { 251,7063 }, { 252,7063 }, { 253,7063 }, + { 254,7063 }, { 255,7063 }, { 256,5934 }, { 0, 11 }, { 0,21029 }, + { 1,8347 }, { 2,8347 }, { 3,8347 }, { 4,8347 }, { 5,8347 }, + { 6,8347 }, { 7,8347 }, { 8,8347 }, { 9,8347 }, { 10,8347 }, + { 11,8347 }, { 12,8347 }, { 13,8347 }, { 14,8347 }, { 15,8347 }, + { 16,8347 }, { 17,8347 }, { 18,8347 }, { 19,8347 }, { 20,8347 }, + { 21,8347 }, { 22,8347 }, { 23,8347 }, { 24,8347 }, { 25,8347 }, + { 26,8347 }, { 27,8347 }, { 28,8347 }, { 29,8347 }, { 30,8347 }, + + { 31,8347 }, { 32,8347 }, { 33,8347 }, { 34,8347 }, { 35,8347 }, + { 36,8347 }, { 37,8347 }, { 38,8347 }, { 39,5705 }, { 40,8347 }, + { 41,8347 }, { 42,8347 }, { 43,8347 }, { 44,8347 }, { 45,8347 }, + { 46,8347 }, { 47,8347 }, { 48,8347 }, { 49,8347 }, { 50,8347 }, + { 51,8347 }, { 52,8347 }, { 53,8347 }, { 54,8347 }, { 55,8347 }, + { 56,8347 }, { 57,8347 }, { 58,8347 }, { 59,8347 }, { 60,8347 }, + { 61,8347 }, { 62,8347 }, { 63,8347 }, { 64,8347 }, { 65,8347 }, + { 66,8347 }, { 67,8347 }, { 68,8347 }, { 69,8347 }, { 70,8347 }, + { 71,8347 }, { 72,8347 }, { 73,8347 }, { 74,8347 }, { 75,8347 }, + { 76,8347 }, { 77,8347 }, { 78,8347 }, { 79,8347 }, { 80,8347 }, + + { 81,8347 }, { 82,8347 }, { 83,8347 }, { 84,8347 }, { 85,8347 }, + { 86,8347 }, { 87,8347 }, { 88,8347 }, { 89,8347 }, { 90,8347 }, + { 91,8347 }, { 92,8347 }, { 93,8347 }, { 94,8347 }, { 95,8347 }, + { 96,8347 }, { 97,8347 }, { 98,8347 }, { 99,8347 }, { 100,8347 }, + { 101,8347 }, { 102,8347 }, { 103,8347 }, { 104,8347 }, { 105,8347 }, + { 106,8347 }, { 107,8347 }, { 108,8347 }, { 109,8347 }, { 110,8347 }, + { 111,8347 }, { 112,8347 }, { 113,8347 }, { 114,8347 }, { 115,8347 }, + { 116,8347 }, { 117,8347 }, { 118,8347 }, { 119,8347 }, { 120,8347 }, + { 121,8347 }, { 122,8347 }, { 123,8347 }, { 124,8347 }, { 125,8347 }, + { 126,8347 }, { 127,8347 }, { 128,8347 }, { 129,8347 }, { 130,8347 }, + + { 131,8347 }, { 132,8347 }, { 133,8347 }, { 134,8347 }, { 135,8347 }, + { 136,8347 }, { 137,8347 }, { 138,8347 }, { 139,8347 }, { 140,8347 }, + { 141,8347 }, { 142,8347 }, { 143,8347 }, { 144,8347 }, { 145,8347 }, + { 146,8347 }, { 147,8347 }, { 148,8347 }, { 149,8347 }, { 150,8347 }, + { 151,8347 }, { 152,8347 }, { 153,8347 }, { 154,8347 }, { 155,8347 }, + { 156,8347 }, { 157,8347 }, { 158,8347 }, { 159,8347 }, { 160,8347 }, + { 161,8347 }, { 162,8347 }, { 163,8347 }, { 164,8347 }, { 165,8347 }, + { 166,8347 }, { 167,8347 }, { 168,8347 }, { 169,8347 }, { 170,8347 }, + { 171,8347 }, { 172,8347 }, { 173,8347 }, { 174,8347 }, { 175,8347 }, + { 176,8347 }, { 177,8347 }, { 178,8347 }, { 179,8347 }, { 180,8347 }, + + { 181,8347 }, { 182,8347 }, { 183,8347 }, { 184,8347 }, { 185,8347 }, + { 186,8347 }, { 187,8347 }, { 188,8347 }, { 189,8347 }, { 190,8347 }, + { 191,8347 }, { 192,8347 }, { 193,8347 }, { 194,8347 }, { 195,8347 }, + { 196,8347 }, { 197,8347 }, { 198,8347 }, { 199,8347 }, { 200,8347 }, + { 201,8347 }, { 202,8347 }, { 203,8347 }, { 204,8347 }, { 205,8347 }, + { 206,8347 }, { 207,8347 }, { 208,8347 }, { 209,8347 }, { 210,8347 }, + { 211,8347 }, { 212,8347 }, { 213,8347 }, { 214,8347 }, { 215,8347 }, + { 216,8347 }, { 217,8347 }, { 218,8347 }, { 219,8347 }, { 220,8347 }, + { 221,8347 }, { 222,8347 }, { 223,8347 }, { 224,8347 }, { 225,8347 }, + { 226,8347 }, { 227,8347 }, { 228,8347 }, { 229,8347 }, { 230,8347 }, + + { 231,8347 }, { 232,8347 }, { 233,8347 }, { 234,8347 }, { 235,8347 }, + { 236,8347 }, { 237,8347 }, { 238,8347 }, { 239,8347 }, { 240,8347 }, + { 241,8347 }, { 242,8347 }, { 243,8347 }, { 244,8347 }, { 245,8347 }, + { 246,8347 }, { 247,8347 }, { 248,8347 }, { 249,8347 }, { 250,8347 }, + { 251,8347 }, { 252,8347 }, { 253,8347 }, { 254,8347 }, { 255,8347 }, + { 256,8347 }, { 0, 11 }, { 0,20771 }, { 1,8089 }, { 2,8089 }, + { 3,8089 }, { 4,8089 }, { 5,8089 }, { 6,8089 }, { 7,8089 }, + { 8,8089 }, { 9,8089 }, { 10,8089 }, { 11,8089 }, { 12,8089 }, + { 13,8089 }, { 14,8089 }, { 15,8089 }, { 16,8089 }, { 17,8089 }, + { 18,8089 }, { 19,8089 }, { 20,8089 }, { 21,8089 }, { 22,8089 }, + + { 23,8089 }, { 24,8089 }, { 25,8089 }, { 26,8089 }, { 27,8089 }, + { 28,8089 }, { 29,8089 }, { 30,8089 }, { 31,8089 }, { 32,8089 }, + { 33,8089 }, { 34,8089 }, { 35,8089 }, { 36,8089 }, { 37,8089 }, + { 38,8089 }, { 39,5447 }, { 40,8089 }, { 41,8089 }, { 42,8089 }, + { 43,8089 }, { 44,8089 }, { 45,8089 }, { 46,8089 }, { 47,8089 }, + { 48,8089 }, { 49,8089 }, { 50,8089 }, { 51,8089 }, { 52,8089 }, + { 53,8089 }, { 54,8089 }, { 55,8089 }, { 56,8089 }, { 57,8089 }, + { 58,8089 }, { 59,8089 }, { 60,8089 }, { 61,8089 }, { 62,8089 }, + { 63,8089 }, { 64,8089 }, { 65,8089 }, { 66,8089 }, { 67,8089 }, + { 68,8089 }, { 69,8089 }, { 70,8089 }, { 71,8089 }, { 72,8089 }, + + { 73,8089 }, { 74,8089 }, { 75,8089 }, { 76,8089 }, { 77,8089 }, + { 78,8089 }, { 79,8089 }, { 80,8089 }, { 81,8089 }, { 82,8089 }, + { 83,8089 }, { 84,8089 }, { 85,8089 }, { 86,8089 }, { 87,8089 }, + { 88,8089 }, { 89,8089 }, { 90,8089 }, { 91,8089 }, { 92,8089 }, + { 93,8089 }, { 94,8089 }, { 95,8089 }, { 96,8089 }, { 97,8089 }, + { 98,8089 }, { 99,8089 }, { 100,8089 }, { 101,8089 }, { 102,8089 }, + { 103,8089 }, { 104,8089 }, { 105,8089 }, { 106,8089 }, { 107,8089 }, + { 108,8089 }, { 109,8089 }, { 110,8089 }, { 111,8089 }, { 112,8089 }, + { 113,8089 }, { 114,8089 }, { 115,8089 }, { 116,8089 }, { 117,8089 }, + { 118,8089 }, { 119,8089 }, { 120,8089 }, { 121,8089 }, { 122,8089 }, + + { 123,8089 }, { 124,8089 }, { 125,8089 }, { 126,8089 }, { 127,8089 }, + { 128,8089 }, { 129,8089 }, { 130,8089 }, { 131,8089 }, { 132,8089 }, + { 133,8089 }, { 134,8089 }, { 135,8089 }, { 136,8089 }, { 137,8089 }, + { 138,8089 }, { 139,8089 }, { 140,8089 }, { 141,8089 }, { 142,8089 }, + { 143,8089 }, { 144,8089 }, { 145,8089 }, { 146,8089 }, { 147,8089 }, + { 148,8089 }, { 149,8089 }, { 150,8089 }, { 151,8089 }, { 152,8089 }, + { 153,8089 }, { 154,8089 }, { 155,8089 }, { 156,8089 }, { 157,8089 }, + { 158,8089 }, { 159,8089 }, { 160,8089 }, { 161,8089 }, { 162,8089 }, + { 163,8089 }, { 164,8089 }, { 165,8089 }, { 166,8089 }, { 167,8089 }, + { 168,8089 }, { 169,8089 }, { 170,8089 }, { 171,8089 }, { 172,8089 }, + + { 173,8089 }, { 174,8089 }, { 175,8089 }, { 176,8089 }, { 177,8089 }, + { 178,8089 }, { 179,8089 }, { 180,8089 }, { 181,8089 }, { 182,8089 }, + { 183,8089 }, { 184,8089 }, { 185,8089 }, { 186,8089 }, { 187,8089 }, + { 188,8089 }, { 189,8089 }, { 190,8089 }, { 191,8089 }, { 192,8089 }, + { 193,8089 }, { 194,8089 }, { 195,8089 }, { 196,8089 }, { 197,8089 }, + { 198,8089 }, { 199,8089 }, { 200,8089 }, { 201,8089 }, { 202,8089 }, + { 203,8089 }, { 204,8089 }, { 205,8089 }, { 206,8089 }, { 207,8089 }, + { 208,8089 }, { 209,8089 }, { 210,8089 }, { 211,8089 }, { 212,8089 }, + { 213,8089 }, { 214,8089 }, { 215,8089 }, { 216,8089 }, { 217,8089 }, + { 218,8089 }, { 219,8089 }, { 220,8089 }, { 221,8089 }, { 222,8089 }, + + { 223,8089 }, { 224,8089 }, { 225,8089 }, { 226,8089 }, { 227,8089 }, + { 228,8089 }, { 229,8089 }, { 230,8089 }, { 231,8089 }, { 232,8089 }, + { 233,8089 }, { 234,8089 }, { 235,8089 }, { 236,8089 }, { 237,8089 }, + { 238,8089 }, { 239,8089 }, { 240,8089 }, { 241,8089 }, { 242,8089 }, + { 243,8089 }, { 244,8089 }, { 245,8089 }, { 246,8089 }, { 247,8089 }, + { 248,8089 }, { 249,8089 }, { 250,8089 }, { 251,8089 }, { 252,8089 }, + { 253,8089 }, { 254,8089 }, { 255,8089 }, { 256,8089 }, { 0, 0 }, + { 0,20513 }, { 1,8089 }, { 2,8089 }, { 3,8089 }, { 4,8089 }, + { 5,8089 }, { 6,8089 }, { 7,8089 }, { 8,8089 }, { 9,8089 }, + { 10,8089 }, { 11,8089 }, { 12,8089 }, { 13,8089 }, { 14,8089 }, + + { 15,8089 }, { 16,8089 }, { 17,8089 }, { 18,8089 }, { 19,8089 }, + { 20,8089 }, { 21,8089 }, { 22,8089 }, { 23,8089 }, { 24,8089 }, + { 25,8089 }, { 26,8089 }, { 27,8089 }, { 28,8089 }, { 29,8089 }, + { 30,8089 }, { 31,8089 }, { 32,8089 }, { 33,8347 }, { 34,8089 }, + { 35,8347 }, { 36,8089 }, { 37,8347 }, { 38,8347 }, { 39,8089 }, + { 40,8089 }, { 41,8089 }, { 42,5192 }, { 43,8347 }, { 44,8089 }, + { 45,8347 }, { 46,8089 }, { 47,5196 }, { 48,8089 }, { 49,8089 }, + { 50,8089 }, { 51,8089 }, { 52,8089 }, { 53,8089 }, { 54,8089 }, + { 55,8089 }, { 56,8089 }, { 57,8089 }, { 58,8089 }, { 59,8089 }, + { 60,8347 }, { 61,8347 }, { 62,8347 }, { 63,8347 }, { 64,8347 }, + + { 65,8089 }, { 66,8089 }, { 67,8089 }, { 68,8089 }, { 69,8089 }, + { 70,8089 }, { 71,8089 }, { 72,8089 }, { 73,8089 }, { 74,8089 }, + { 75,8089 }, { 76,8089 }, { 77,8089 }, { 78,8089 }, { 79,8089 }, + { 80,8089 }, { 81,8089 }, { 82,8089 }, { 83,8089 }, { 84,8089 }, + { 85,8089 }, { 86,8089 }, { 87,8089 }, { 88,8089 }, { 89,8089 }, + { 90,8089 }, { 91,8089 }, { 92,8089 }, { 93,8089 }, { 94,8347 }, + { 95,8089 }, { 96,8347 }, { 97,8089 }, { 98,8089 }, { 99,8089 }, + { 100,8089 }, { 101,8089 }, { 102,8089 }, { 103,8089 }, { 104,8089 }, + { 105,8089 }, { 106,8089 }, { 107,8089 }, { 108,8089 }, { 109,8089 }, + { 110,8089 }, { 111,8089 }, { 112,8089 }, { 113,8089 }, { 114,8089 }, + + { 115,8089 }, { 116,8089 }, { 117,8089 }, { 118,8089 }, { 119,8089 }, + { 120,8089 }, { 121,8089 }, { 122,8089 }, { 123,8089 }, { 124,8347 }, + { 125,8089 }, { 126,8347 }, { 127,8089 }, { 128,8089 }, { 129,8089 }, + { 130,8089 }, { 131,8089 }, { 132,8089 }, { 133,8089 }, { 134,8089 }, + { 135,8089 }, { 136,8089 }, { 137,8089 }, { 138,8089 }, { 139,8089 }, + { 140,8089 }, { 141,8089 }, { 142,8089 }, { 143,8089 }, { 144,8089 }, + { 145,8089 }, { 146,8089 }, { 147,8089 }, { 148,8089 }, { 149,8089 }, + { 150,8089 }, { 151,8089 }, { 152,8089 }, { 153,8089 }, { 154,8089 }, + { 155,8089 }, { 156,8089 }, { 157,8089 }, { 158,8089 }, { 159,8089 }, + { 160,8089 }, { 161,8089 }, { 162,8089 }, { 163,8089 }, { 164,8089 }, + + { 165,8089 }, { 166,8089 }, { 167,8089 }, { 168,8089 }, { 169,8089 }, + { 170,8089 }, { 171,8089 }, { 172,8089 }, { 173,8089 }, { 174,8089 }, + { 175,8089 }, { 176,8089 }, { 177,8089 }, { 178,8089 }, { 179,8089 }, + { 180,8089 }, { 181,8089 }, { 182,8089 }, { 183,8089 }, { 184,8089 }, + { 185,8089 }, { 186,8089 }, { 187,8089 }, { 188,8089 }, { 189,8089 }, + { 190,8089 }, { 191,8089 }, { 192,8089 }, { 193,8089 }, { 194,8089 }, + { 195,8089 }, { 196,8089 }, { 197,8089 }, { 198,8089 }, { 199,8089 }, + { 200,8089 }, { 201,8089 }, { 202,8089 }, { 203,8089 }, { 204,8089 }, + { 205,8089 }, { 206,8089 }, { 207,8089 }, { 208,8089 }, { 209,8089 }, + { 210,8089 }, { 211,8089 }, { 212,8089 }, { 213,8089 }, { 214,8089 }, + + { 215,8089 }, { 216,8089 }, { 217,8089 }, { 218,8089 }, { 219,8089 }, + { 220,8089 }, { 221,8089 }, { 222,8089 }, { 223,8089 }, { 224,8089 }, + { 225,8089 }, { 226,8089 }, { 227,8089 }, { 228,8089 }, { 229,8089 }, + { 230,8089 }, { 231,8089 }, { 232,8089 }, { 233,8089 }, { 234,8089 }, + { 235,8089 }, { 236,8089 }, { 237,8089 }, { 238,8089 }, { 239,8089 }, + { 240,8089 }, { 241,8089 }, { 242,8089 }, { 243,8089 }, { 244,8089 }, + { 245,8089 }, { 246,8089 }, { 247,8089 }, { 248,8089 }, { 249,8089 }, + { 250,8089 }, { 251,8089 }, { 252,8089 }, { 253,8089 }, { 254,8089 }, + { 255,8089 }, { 256,8089 }, { 0, 0 }, { 0,20255 }, { 1,7831 }, + { 2,7831 }, { 3,7831 }, { 4,7831 }, { 5,7831 }, { 6,7831 }, + + { 7,7831 }, { 8,7831 }, { 9,7831 }, { 10,7831 }, { 11,7831 }, + { 12,7831 }, { 13,7831 }, { 14,7831 }, { 15,7831 }, { 16,7831 }, + { 17,7831 }, { 18,7831 }, { 19,7831 }, { 20,7831 }, { 21,7831 }, + { 22,7831 }, { 23,7831 }, { 24,7831 }, { 25,7831 }, { 26,7831 }, + { 27,7831 }, { 28,7831 }, { 29,7831 }, { 30,7831 }, { 31,7831 }, + { 32,7831 }, { 33,8089 }, { 34,7831 }, { 35,8089 }, { 36,7831 }, + { 37,8089 }, { 38,8089 }, { 39,7831 }, { 40,7831 }, { 41,7831 }, + { 42,4934 }, { 43,8089 }, { 44,7831 }, { 45,8089 }, { 46,7831 }, + { 47,4938 }, { 48,7831 }, { 49,7831 }, { 50,7831 }, { 51,7831 }, + { 52,7831 }, { 53,7831 }, { 54,7831 }, { 55,7831 }, { 56,7831 }, + + { 57,7831 }, { 58,7831 }, { 59,7831 }, { 60,8089 }, { 61,8089 }, + { 62,8089 }, { 63,8089 }, { 64,8089 }, { 65,7831 }, { 66,7831 }, + { 67,7831 }, { 68,7831 }, { 69,7831 }, { 70,7831 }, { 71,7831 }, + { 72,7831 }, { 73,7831 }, { 74,7831 }, { 75,7831 }, { 76,7831 }, + { 77,7831 }, { 78,7831 }, { 79,7831 }, { 80,7831 }, { 81,7831 }, + { 82,7831 }, { 83,7831 }, { 84,7831 }, { 85,7831 }, { 86,7831 }, + { 87,7831 }, { 88,7831 }, { 89,7831 }, { 90,7831 }, { 91,7831 }, + { 92,7831 }, { 93,7831 }, { 94,8089 }, { 95,7831 }, { 96,8089 }, + { 97,7831 }, { 98,7831 }, { 99,7831 }, { 100,7831 }, { 101,7831 }, + { 102,7831 }, { 103,7831 }, { 104,7831 }, { 105,7831 }, { 106,7831 }, + + { 107,7831 }, { 108,7831 }, { 109,7831 }, { 110,7831 }, { 111,7831 }, + { 112,7831 }, { 113,7831 }, { 114,7831 }, { 115,7831 }, { 116,7831 }, + { 117,7831 }, { 118,7831 }, { 119,7831 }, { 120,7831 }, { 121,7831 }, + { 122,7831 }, { 123,7831 }, { 124,8089 }, { 125,7831 }, { 126,8089 }, + { 127,7831 }, { 128,7831 }, { 129,7831 }, { 130,7831 }, { 131,7831 }, + { 132,7831 }, { 133,7831 }, { 134,7831 }, { 135,7831 }, { 136,7831 }, + { 137,7831 }, { 138,7831 }, { 139,7831 }, { 140,7831 }, { 141,7831 }, + { 142,7831 }, { 143,7831 }, { 144,7831 }, { 145,7831 }, { 146,7831 }, + { 147,7831 }, { 148,7831 }, { 149,7831 }, { 150,7831 }, { 151,7831 }, + { 152,7831 }, { 153,7831 }, { 154,7831 }, { 155,7831 }, { 156,7831 }, + + { 157,7831 }, { 158,7831 }, { 159,7831 }, { 160,7831 }, { 161,7831 }, + { 162,7831 }, { 163,7831 }, { 164,7831 }, { 165,7831 }, { 166,7831 }, + { 167,7831 }, { 168,7831 }, { 169,7831 }, { 170,7831 }, { 171,7831 }, + { 172,7831 }, { 173,7831 }, { 174,7831 }, { 175,7831 }, { 176,7831 }, + { 177,7831 }, { 178,7831 }, { 179,7831 }, { 180,7831 }, { 181,7831 }, + { 182,7831 }, { 183,7831 }, { 184,7831 }, { 185,7831 }, { 186,7831 }, + { 187,7831 }, { 188,7831 }, { 189,7831 }, { 190,7831 }, { 191,7831 }, + { 192,7831 }, { 193,7831 }, { 194,7831 }, { 195,7831 }, { 196,7831 }, + { 197,7831 }, { 198,7831 }, { 199,7831 }, { 200,7831 }, { 201,7831 }, + { 202,7831 }, { 203,7831 }, { 204,7831 }, { 205,7831 }, { 206,7831 }, + + { 207,7831 }, { 208,7831 }, { 209,7831 }, { 210,7831 }, { 211,7831 }, + { 212,7831 }, { 213,7831 }, { 214,7831 }, { 215,7831 }, { 216,7831 }, + { 217,7831 }, { 218,7831 }, { 219,7831 }, { 220,7831 }, { 221,7831 }, + { 222,7831 }, { 223,7831 }, { 224,7831 }, { 225,7831 }, { 226,7831 }, + { 227,7831 }, { 228,7831 }, { 229,7831 }, { 230,7831 }, { 231,7831 }, + { 232,7831 }, { 233,7831 }, { 234,7831 }, { 235,7831 }, { 236,7831 }, + { 237,7831 }, { 238,7831 }, { 239,7831 }, { 240,7831 }, { 241,7831 }, + { 242,7831 }, { 243,7831 }, { 244,7831 }, { 245,7831 }, { 246,7831 }, + { 247,7831 }, { 248,7831 }, { 249,7831 }, { 250,7831 }, { 251,7831 }, + { 252,7831 }, { 253,7831 }, { 254,7831 }, { 255,7831 }, { 256,7831 }, + + { 0, 0 }, { 0,19997 }, { 1,8089 }, { 2,8089 }, { 3,8089 }, + { 4,8089 }, { 5,8089 }, { 6,8089 }, { 7,8089 }, { 8,8089 }, + { 9,8089 }, { 10,8089 }, { 11,8089 }, { 12,8089 }, { 13,8089 }, + { 14,8089 }, { 15,8089 }, { 16,8089 }, { 17,8089 }, { 18,8089 }, + { 19,8089 }, { 20,8089 }, { 21,8089 }, { 22,8089 }, { 23,8089 }, + { 24,8089 }, { 25,8089 }, { 26,8089 }, { 27,8089 }, { 28,8089 }, + { 29,8089 }, { 30,8089 }, { 31,8089 }, { 32,8089 }, { 33,8089 }, + { 34,4685 }, { 35,8089 }, { 36,8089 }, { 37,8089 }, { 38,8089 }, + { 39,8089 }, { 40,8089 }, { 41,8089 }, { 42,8089 }, { 43,8089 }, + { 44,8089 }, { 45,8089 }, { 46,8089 }, { 47,8089 }, { 48,8089 }, + + { 49,8089 }, { 50,8089 }, { 51,8089 }, { 52,8089 }, { 53,8089 }, + { 54,8089 }, { 55,8089 }, { 56,8089 }, { 57,8089 }, { 58,8089 }, + { 59,8089 }, { 60,8089 }, { 61,8089 }, { 62,8089 }, { 63,8089 }, + { 64,8089 }, { 65,8089 }, { 66,8089 }, { 67,8089 }, { 68,8089 }, + { 69,8089 }, { 70,8089 }, { 71,8089 }, { 72,8089 }, { 73,8089 }, + { 74,8089 }, { 75,8089 }, { 76,8089 }, { 77,8089 }, { 78,8089 }, + { 79,8089 }, { 80,8089 }, { 81,8089 }, { 82,8089 }, { 83,8089 }, + { 84,8089 }, { 85,8089 }, { 86,8089 }, { 87,8089 }, { 88,8089 }, + { 89,8089 }, { 90,8089 }, { 91,8089 }, { 92,8089 }, { 93,8089 }, + { 94,8089 }, { 95,8089 }, { 96,8089 }, { 97,8089 }, { 98,8089 }, + + { 99,8089 }, { 100,8089 }, { 101,8089 }, { 102,8089 }, { 103,8089 }, + { 104,8089 }, { 105,8089 }, { 106,8089 }, { 107,8089 }, { 108,8089 }, + { 109,8089 }, { 110,8089 }, { 111,8089 }, { 112,8089 }, { 113,8089 }, + { 114,8089 }, { 115,8089 }, { 116,8089 }, { 117,8089 }, { 118,8089 }, + { 119,8089 }, { 120,8089 }, { 121,8089 }, { 122,8089 }, { 123,8089 }, + { 124,8089 }, { 125,8089 }, { 126,8089 }, { 127,8089 }, { 128,8089 }, + { 129,8089 }, { 130,8089 }, { 131,8089 }, { 132,8089 }, { 133,8089 }, + { 134,8089 }, { 135,8089 }, { 136,8089 }, { 137,8089 }, { 138,8089 }, + { 139,8089 }, { 140,8089 }, { 141,8089 }, { 142,8089 }, { 143,8089 }, + { 144,8089 }, { 145,8089 }, { 146,8089 }, { 147,8089 }, { 148,8089 }, + + { 149,8089 }, { 150,8089 }, { 151,8089 }, { 152,8089 }, { 153,8089 }, + { 154,8089 }, { 155,8089 }, { 156,8089 }, { 157,8089 }, { 158,8089 }, + { 159,8089 }, { 160,8089 }, { 161,8089 }, { 162,8089 }, { 163,8089 }, + { 164,8089 }, { 165,8089 }, { 166,8089 }, { 167,8089 }, { 168,8089 }, + { 169,8089 }, { 170,8089 }, { 171,8089 }, { 172,8089 }, { 173,8089 }, + { 174,8089 }, { 175,8089 }, { 176,8089 }, { 177,8089 }, { 178,8089 }, + { 179,8089 }, { 180,8089 }, { 181,8089 }, { 182,8089 }, { 183,8089 }, + { 184,8089 }, { 185,8089 }, { 186,8089 }, { 187,8089 }, { 188,8089 }, + { 189,8089 }, { 190,8089 }, { 191,8089 }, { 192,8089 }, { 193,8089 }, + { 194,8089 }, { 195,8089 }, { 196,8089 }, { 197,8089 }, { 198,8089 }, + + { 199,8089 }, { 200,8089 }, { 201,8089 }, { 202,8089 }, { 203,8089 }, + { 204,8089 }, { 205,8089 }, { 206,8089 }, { 207,8089 }, { 208,8089 }, + { 209,8089 }, { 210,8089 }, { 211,8089 }, { 212,8089 }, { 213,8089 }, + { 214,8089 }, { 215,8089 }, { 216,8089 }, { 217,8089 }, { 218,8089 }, + { 219,8089 }, { 220,8089 }, { 221,8089 }, { 222,8089 }, { 223,8089 }, + { 224,8089 }, { 225,8089 }, { 226,8089 }, { 227,8089 }, { 228,8089 }, + { 229,8089 }, { 230,8089 }, { 231,8089 }, { 232,8089 }, { 233,8089 }, + { 234,8089 }, { 235,8089 }, { 236,8089 }, { 237,8089 }, { 238,8089 }, + { 239,8089 }, { 240,8089 }, { 241,8089 }, { 242,8089 }, { 243,8089 }, + { 244,8089 }, { 245,8089 }, { 246,8089 }, { 247,8089 }, { 248,8089 }, + + { 249,8089 }, { 250,8089 }, { 251,8089 }, { 252,8089 }, { 253,8089 }, + { 254,8089 }, { 255,8089 }, { 256,8089 }, { 0, 0 }, { 0,19739 }, + { 1,7831 }, { 2,7831 }, { 3,7831 }, { 4,7831 }, { 5,7831 }, + { 6,7831 }, { 7,7831 }, { 8,7831 }, { 9,7831 }, { 10,7831 }, + { 11,7831 }, { 12,7831 }, { 13,7831 }, { 14,7831 }, { 15,7831 }, + { 16,7831 }, { 17,7831 }, { 18,7831 }, { 19,7831 }, { 20,7831 }, + { 21,7831 }, { 22,7831 }, { 23,7831 }, { 24,7831 }, { 25,7831 }, + { 26,7831 }, { 27,7831 }, { 28,7831 }, { 29,7831 }, { 30,7831 }, + { 31,7831 }, { 32,7831 }, { 33,7831 }, { 34,4427 }, { 35,7831 }, + { 36,7831 }, { 37,7831 }, { 38,7831 }, { 39,7831 }, { 40,7831 }, + + { 41,7831 }, { 42,7831 }, { 43,7831 }, { 44,7831 }, { 45,7831 }, + { 46,7831 }, { 47,7831 }, { 48,7831 }, { 49,7831 }, { 50,7831 }, + { 51,7831 }, { 52,7831 }, { 53,7831 }, { 54,7831 }, { 55,7831 }, + { 56,7831 }, { 57,7831 }, { 58,7831 }, { 59,7831 }, { 60,7831 }, + { 61,7831 }, { 62,7831 }, { 63,7831 }, { 64,7831 }, { 65,7831 }, + { 66,7831 }, { 67,7831 }, { 68,7831 }, { 69,7831 }, { 70,7831 }, + { 71,7831 }, { 72,7831 }, { 73,7831 }, { 74,7831 }, { 75,7831 }, + { 76,7831 }, { 77,7831 }, { 78,7831 }, { 79,7831 }, { 80,7831 }, + { 81,7831 }, { 82,7831 }, { 83,7831 }, { 84,7831 }, { 85,7831 }, + { 86,7831 }, { 87,7831 }, { 88,7831 }, { 89,7831 }, { 90,7831 }, + + { 91,7831 }, { 92,7831 }, { 93,7831 }, { 94,7831 }, { 95,7831 }, + { 96,7831 }, { 97,7831 }, { 98,7831 }, { 99,7831 }, { 100,7831 }, + { 101,7831 }, { 102,7831 }, { 103,7831 }, { 104,7831 }, { 105,7831 }, + { 106,7831 }, { 107,7831 }, { 108,7831 }, { 109,7831 }, { 110,7831 }, + { 111,7831 }, { 112,7831 }, { 113,7831 }, { 114,7831 }, { 115,7831 }, + { 116,7831 }, { 117,7831 }, { 118,7831 }, { 119,7831 }, { 120,7831 }, + { 121,7831 }, { 122,7831 }, { 123,7831 }, { 124,7831 }, { 125,7831 }, + { 126,7831 }, { 127,7831 }, { 128,7831 }, { 129,7831 }, { 130,7831 }, + { 131,7831 }, { 132,7831 }, { 133,7831 }, { 134,7831 }, { 135,7831 }, + { 136,7831 }, { 137,7831 }, { 138,7831 }, { 139,7831 }, { 140,7831 }, + + { 141,7831 }, { 142,7831 }, { 143,7831 }, { 144,7831 }, { 145,7831 }, + { 146,7831 }, { 147,7831 }, { 148,7831 }, { 149,7831 }, { 150,7831 }, + { 151,7831 }, { 152,7831 }, { 153,7831 }, { 154,7831 }, { 155,7831 }, + { 156,7831 }, { 157,7831 }, { 158,7831 }, { 159,7831 }, { 160,7831 }, + { 161,7831 }, { 162,7831 }, { 163,7831 }, { 164,7831 }, { 165,7831 }, + { 166,7831 }, { 167,7831 }, { 168,7831 }, { 169,7831 }, { 170,7831 }, + { 171,7831 }, { 172,7831 }, { 173,7831 }, { 174,7831 }, { 175,7831 }, + { 176,7831 }, { 177,7831 }, { 178,7831 }, { 179,7831 }, { 180,7831 }, + { 181,7831 }, { 182,7831 }, { 183,7831 }, { 184,7831 }, { 185,7831 }, + { 186,7831 }, { 187,7831 }, { 188,7831 }, { 189,7831 }, { 190,7831 }, + + { 191,7831 }, { 192,7831 }, { 193,7831 }, { 194,7831 }, { 195,7831 }, + { 196,7831 }, { 197,7831 }, { 198,7831 }, { 199,7831 }, { 200,7831 }, + { 201,7831 }, { 202,7831 }, { 203,7831 }, { 204,7831 }, { 205,7831 }, + { 206,7831 }, { 207,7831 }, { 208,7831 }, { 209,7831 }, { 210,7831 }, + { 211,7831 }, { 212,7831 }, { 213,7831 }, { 214,7831 }, { 215,7831 }, + { 216,7831 }, { 217,7831 }, { 218,7831 }, { 219,7831 }, { 220,7831 }, + { 221,7831 }, { 222,7831 }, { 223,7831 }, { 224,7831 }, { 225,7831 }, + { 226,7831 }, { 227,7831 }, { 228,7831 }, { 229,7831 }, { 230,7831 }, + { 231,7831 }, { 232,7831 }, { 233,7831 }, { 234,7831 }, { 235,7831 }, + { 236,7831 }, { 237,7831 }, { 238,7831 }, { 239,7831 }, { 240,7831 }, + + { 241,7831 }, { 242,7831 }, { 243,7831 }, { 244,7831 }, { 245,7831 }, + { 246,7831 }, { 247,7831 }, { 248,7831 }, { 249,7831 }, { 250,7831 }, + { 251,7831 }, { 252,7831 }, { 253,7831 }, { 254,7831 }, { 255,7831 }, + { 256,7831 }, { 0, 10 }, { 0,19481 }, { 1,7831 }, { 2,7831 }, + { 3,7831 }, { 4,7831 }, { 5,7831 }, { 6,7831 }, { 7,7831 }, + { 8,7831 }, { 9,7831 }, { 10,7831 }, { 11,7831 }, { 12,7831 }, + { 13,7831 }, { 14,7831 }, { 15,7831 }, { 16,7831 }, { 17,7831 }, + { 18,7831 }, { 19,7831 }, { 20,7831 }, { 21,7831 }, { 22,7831 }, + { 23,7831 }, { 24,7831 }, { 25,7831 }, { 26,7831 }, { 27,7831 }, + { 28,7831 }, { 29,7831 }, { 30,7831 }, { 31,7831 }, { 32,7831 }, + + { 33,7831 }, { 34,7831 }, { 35,7831 }, { 36,7831 }, { 37,7831 }, + { 38,7831 }, { 39,4157 }, { 40,7831 }, { 41,7831 }, { 42,7831 }, + { 43,7831 }, { 44,7831 }, { 45,7831 }, { 46,7831 }, { 47,7831 }, + { 48,7831 }, { 49,7831 }, { 50,7831 }, { 51,7831 }, { 52,7831 }, + { 53,7831 }, { 54,7831 }, { 55,7831 }, { 56,7831 }, { 57,7831 }, + { 58,7831 }, { 59,7831 }, { 60,7831 }, { 61,7831 }, { 62,7831 }, + { 63,7831 }, { 64,7831 }, { 65,7831 }, { 66,7831 }, { 67,7831 }, + { 68,7831 }, { 69,7831 }, { 70,7831 }, { 71,7831 }, { 72,7831 }, + { 73,7831 }, { 74,7831 }, { 75,7831 }, { 76,7831 }, { 77,7831 }, + { 78,7831 }, { 79,7831 }, { 80,7831 }, { 81,7831 }, { 82,7831 }, + + { 83,7831 }, { 84,7831 }, { 85,7831 }, { 86,7831 }, { 87,7831 }, + { 88,7831 }, { 89,7831 }, { 90,7831 }, { 91,7831 }, { 92,7831 }, + { 93,7831 }, { 94,7831 }, { 95,7831 }, { 96,7831 }, { 97,7831 }, + { 98,7831 }, { 99,7831 }, { 100,7831 }, { 101,7831 }, { 102,7831 }, + { 103,7831 }, { 104,7831 }, { 105,7831 }, { 106,7831 }, { 107,7831 }, + { 108,7831 }, { 109,7831 }, { 110,7831 }, { 111,7831 }, { 112,7831 }, + { 113,7831 }, { 114,7831 }, { 115,7831 }, { 116,7831 }, { 117,7831 }, + { 118,7831 }, { 119,7831 }, { 120,7831 }, { 121,7831 }, { 122,7831 }, + { 123,7831 }, { 124,7831 }, { 125,7831 }, { 126,7831 }, { 127,7831 }, + { 128,7831 }, { 129,7831 }, { 130,7831 }, { 131,7831 }, { 132,7831 }, + + { 133,7831 }, { 134,7831 }, { 135,7831 }, { 136,7831 }, { 137,7831 }, + { 138,7831 }, { 139,7831 }, { 140,7831 }, { 141,7831 }, { 142,7831 }, + { 143,7831 }, { 144,7831 }, { 145,7831 }, { 146,7831 }, { 147,7831 }, + { 148,7831 }, { 149,7831 }, { 150,7831 }, { 151,7831 }, { 152,7831 }, + { 153,7831 }, { 154,7831 }, { 155,7831 }, { 156,7831 }, { 157,7831 }, + { 158,7831 }, { 159,7831 }, { 160,7831 }, { 161,7831 }, { 162,7831 }, + { 163,7831 }, { 164,7831 }, { 165,7831 }, { 166,7831 }, { 167,7831 }, + { 168,7831 }, { 169,7831 }, { 170,7831 }, { 171,7831 }, { 172,7831 }, + { 173,7831 }, { 174,7831 }, { 175,7831 }, { 176,7831 }, { 177,7831 }, + { 178,7831 }, { 179,7831 }, { 180,7831 }, { 181,7831 }, { 182,7831 }, + + { 183,7831 }, { 184,7831 }, { 185,7831 }, { 186,7831 }, { 187,7831 }, + { 188,7831 }, { 189,7831 }, { 190,7831 }, { 191,7831 }, { 192,7831 }, + { 193,7831 }, { 194,7831 }, { 195,7831 }, { 196,7831 }, { 197,7831 }, + { 198,7831 }, { 199,7831 }, { 200,7831 }, { 201,7831 }, { 202,7831 }, + { 203,7831 }, { 204,7831 }, { 205,7831 }, { 206,7831 }, { 207,7831 }, + { 208,7831 }, { 209,7831 }, { 210,7831 }, { 211,7831 }, { 212,7831 }, + { 213,7831 }, { 214,7831 }, { 215,7831 }, { 216,7831 }, { 217,7831 }, + { 218,7831 }, { 219,7831 }, { 220,7831 }, { 221,7831 }, { 222,7831 }, + { 223,7831 }, { 224,7831 }, { 225,7831 }, { 226,7831 }, { 227,7831 }, + { 228,7831 }, { 229,7831 }, { 230,7831 }, { 231,7831 }, { 232,7831 }, + + { 233,7831 }, { 234,7831 }, { 235,7831 }, { 236,7831 }, { 237,7831 }, + { 238,7831 }, { 239,7831 }, { 240,7831 }, { 241,7831 }, { 242,7831 }, + { 243,7831 }, { 244,7831 }, { 245,7831 }, { 246,7831 }, { 247,7831 }, + { 248,7831 }, { 249,7831 }, { 250,7831 }, { 251,7831 }, { 252,7831 }, + { 253,7831 }, { 254,7831 }, { 255,7831 }, { 256,7831 }, { 0, 10 }, + { 0,19223 }, { 1,7573 }, { 2,7573 }, { 3,7573 }, { 4,7573 }, + { 5,7573 }, { 6,7573 }, { 7,7573 }, { 8,7573 }, { 9,7573 }, + { 10,7573 }, { 11,7573 }, { 12,7573 }, { 13,7573 }, { 14,7573 }, + { 15,7573 }, { 16,7573 }, { 17,7573 }, { 18,7573 }, { 19,7573 }, + { 20,7573 }, { 21,7573 }, { 22,7573 }, { 23,7573 }, { 24,7573 }, + + { 25,7573 }, { 26,7573 }, { 27,7573 }, { 28,7573 }, { 29,7573 }, + { 30,7573 }, { 31,7573 }, { 32,7573 }, { 33,7573 }, { 34,7573 }, + { 35,7573 }, { 36,7573 }, { 37,7573 }, { 38,7573 }, { 39,3899 }, + { 40,7573 }, { 41,7573 }, { 42,7573 }, { 43,7573 }, { 44,7573 }, + { 45,7573 }, { 46,7573 }, { 47,7573 }, { 48,7573 }, { 49,7573 }, + { 50,7573 }, { 51,7573 }, { 52,7573 }, { 53,7573 }, { 54,7573 }, + { 55,7573 }, { 56,7573 }, { 57,7573 }, { 58,7573 }, { 59,7573 }, + { 60,7573 }, { 61,7573 }, { 62,7573 }, { 63,7573 }, { 64,7573 }, + { 65,7573 }, { 66,7573 }, { 67,7573 }, { 68,7573 }, { 69,7573 }, + { 70,7573 }, { 71,7573 }, { 72,7573 }, { 73,7573 }, { 74,7573 }, + + { 75,7573 }, { 76,7573 }, { 77,7573 }, { 78,7573 }, { 79,7573 }, + { 80,7573 }, { 81,7573 }, { 82,7573 }, { 83,7573 }, { 84,7573 }, + { 85,7573 }, { 86,7573 }, { 87,7573 }, { 88,7573 }, { 89,7573 }, + { 90,7573 }, { 91,7573 }, { 92,7573 }, { 93,7573 }, { 94,7573 }, + { 95,7573 }, { 96,7573 }, { 97,7573 }, { 98,7573 }, { 99,7573 }, + { 100,7573 }, { 101,7573 }, { 102,7573 }, { 103,7573 }, { 104,7573 }, + { 105,7573 }, { 106,7573 }, { 107,7573 }, { 108,7573 }, { 109,7573 }, + { 110,7573 }, { 111,7573 }, { 112,7573 }, { 113,7573 }, { 114,7573 }, + { 115,7573 }, { 116,7573 }, { 117,7573 }, { 118,7573 }, { 119,7573 }, + { 120,7573 }, { 121,7573 }, { 122,7573 }, { 123,7573 }, { 124,7573 }, + + { 125,7573 }, { 126,7573 }, { 127,7573 }, { 128,7573 }, { 129,7573 }, + { 130,7573 }, { 131,7573 }, { 132,7573 }, { 133,7573 }, { 134,7573 }, + { 135,7573 }, { 136,7573 }, { 137,7573 }, { 138,7573 }, { 139,7573 }, + { 140,7573 }, { 141,7573 }, { 142,7573 }, { 143,7573 }, { 144,7573 }, + { 145,7573 }, { 146,7573 }, { 147,7573 }, { 148,7573 }, { 149,7573 }, + { 150,7573 }, { 151,7573 }, { 152,7573 }, { 153,7573 }, { 154,7573 }, + { 155,7573 }, { 156,7573 }, { 157,7573 }, { 158,7573 }, { 159,7573 }, + { 160,7573 }, { 161,7573 }, { 162,7573 }, { 163,7573 }, { 164,7573 }, + { 165,7573 }, { 166,7573 }, { 167,7573 }, { 168,7573 }, { 169,7573 }, + { 170,7573 }, { 171,7573 }, { 172,7573 }, { 173,7573 }, { 174,7573 }, + + { 175,7573 }, { 176,7573 }, { 177,7573 }, { 178,7573 }, { 179,7573 }, + { 180,7573 }, { 181,7573 }, { 182,7573 }, { 183,7573 }, { 184,7573 }, + { 185,7573 }, { 186,7573 }, { 187,7573 }, { 188,7573 }, { 189,7573 }, + { 190,7573 }, { 191,7573 }, { 192,7573 }, { 193,7573 }, { 194,7573 }, + { 195,7573 }, { 196,7573 }, { 197,7573 }, { 198,7573 }, { 199,7573 }, + { 200,7573 }, { 201,7573 }, { 202,7573 }, { 203,7573 }, { 204,7573 }, + { 205,7573 }, { 206,7573 }, { 207,7573 }, { 208,7573 }, { 209,7573 }, + { 210,7573 }, { 211,7573 }, { 212,7573 }, { 213,7573 }, { 214,7573 }, + { 215,7573 }, { 216,7573 }, { 217,7573 }, { 218,7573 }, { 219,7573 }, + { 220,7573 }, { 221,7573 }, { 222,7573 }, { 223,7573 }, { 224,7573 }, + + { 225,7573 }, { 226,7573 }, { 227,7573 }, { 228,7573 }, { 229,7573 }, + { 230,7573 }, { 231,7573 }, { 232,7573 }, { 233,7573 }, { 234,7573 }, + { 235,7573 }, { 236,7573 }, { 237,7573 }, { 238,7573 }, { 239,7573 }, + { 240,7573 }, { 241,7573 }, { 242,7573 }, { 243,7573 }, { 244,7573 }, + { 245,7573 }, { 246,7573 }, { 247,7573 }, { 248,7573 }, { 249,7573 }, + { 250,7573 }, { 251,7573 }, { 252,7573 }, { 253,7573 }, { 254,7573 }, + { 255,7573 }, { 256,7573 }, { 0, 0 }, { 0,18965 }, { 1,7573 }, + { 2,7573 }, { 3,7573 }, { 4,7573 }, { 5,7573 }, { 6,7573 }, + { 7,7573 }, { 8,7573 }, { 9,7573 }, { 10,7573 }, { 11,7573 }, + { 12,7573 }, { 13,7573 }, { 14,7573 }, { 15,7573 }, { 16,7573 }, + + { 17,7573 }, { 18,7573 }, { 19,7573 }, { 20,7573 }, { 21,7573 }, + { 22,7573 }, { 23,7573 }, { 24,7573 }, { 25,7573 }, { 26,7573 }, + { 27,7573 }, { 28,7573 }, { 29,7573 }, { 30,7573 }, { 31,7573 }, + { 32,7573 }, { 33,7573 }, { 34,7573 }, { 35,7573 }, { 36,7573 }, + { 37,7573 }, { 38,7573 }, { 39,3670 }, { 40,7573 }, { 41,7573 }, + { 42,7573 }, { 43,7573 }, { 44,7573 }, { 45,7573 }, { 46,7573 }, + { 47,7573 }, { 48,7573 }, { 49,7573 }, { 50,7573 }, { 51,7573 }, + { 52,7573 }, { 53,7573 }, { 54,7573 }, { 55,7573 }, { 56,7573 }, + { 57,7573 }, { 58,7573 }, { 59,7573 }, { 60,7573 }, { 61,7573 }, + { 62,7573 }, { 63,7573 }, { 64,7573 }, { 65,7573 }, { 66,7573 }, + + { 67,7573 }, { 68,7573 }, { 69,7573 }, { 70,7573 }, { 71,7573 }, + { 72,7573 }, { 73,7573 }, { 74,7573 }, { 75,7573 }, { 76,7573 }, + { 77,7573 }, { 78,7573 }, { 79,7573 }, { 80,7573 }, { 81,7573 }, + { 82,7573 }, { 83,7573 }, { 84,7573 }, { 85,7573 }, { 86,7573 }, + { 87,7573 }, { 88,7573 }, { 89,7573 }, { 90,7573 }, { 91,7573 }, + { 92,7573 }, { 93,7573 }, { 94,7573 }, { 95,7573 }, { 96,7573 }, + { 97,7573 }, { 98,7573 }, { 99,7573 }, { 100,7573 }, { 101,7573 }, + { 102,7573 }, { 103,7573 }, { 104,7573 }, { 105,7573 }, { 106,7573 }, + { 107,7573 }, { 108,7573 }, { 109,7573 }, { 110,7573 }, { 111,7573 }, + { 112,7573 }, { 113,7573 }, { 114,7573 }, { 115,7573 }, { 116,7573 }, + + { 117,7573 }, { 118,7573 }, { 119,7573 }, { 120,7573 }, { 121,7573 }, + { 122,7573 }, { 123,7573 }, { 124,7573 }, { 125,7573 }, { 126,7573 }, + { 127,7573 }, { 128,7573 }, { 129,7573 }, { 130,7573 }, { 131,7573 }, + { 132,7573 }, { 133,7573 }, { 134,7573 }, { 135,7573 }, { 136,7573 }, + { 137,7573 }, { 138,7573 }, { 139,7573 }, { 140,7573 }, { 141,7573 }, + { 142,7573 }, { 143,7573 }, { 144,7573 }, { 145,7573 }, { 146,7573 }, + { 147,7573 }, { 148,7573 }, { 149,7573 }, { 150,7573 }, { 151,7573 }, + { 152,7573 }, { 153,7573 }, { 154,7573 }, { 155,7573 }, { 156,7573 }, + { 157,7573 }, { 158,7573 }, { 159,7573 }, { 160,7573 }, { 161,7573 }, + { 162,7573 }, { 163,7573 }, { 164,7573 }, { 165,7573 }, { 166,7573 }, + + { 167,7573 }, { 168,7573 }, { 169,7573 }, { 170,7573 }, { 171,7573 }, + { 172,7573 }, { 173,7573 }, { 174,7573 }, { 175,7573 }, { 176,7573 }, + { 177,7573 }, { 178,7573 }, { 179,7573 }, { 180,7573 }, { 181,7573 }, + { 182,7573 }, { 183,7573 }, { 184,7573 }, { 185,7573 }, { 186,7573 }, + { 187,7573 }, { 188,7573 }, { 189,7573 }, { 190,7573 }, { 191,7573 }, + { 192,7573 }, { 193,7573 }, { 194,7573 }, { 195,7573 }, { 196,7573 }, + { 197,7573 }, { 198,7573 }, { 199,7573 }, { 200,7573 }, { 201,7573 }, + { 202,7573 }, { 203,7573 }, { 204,7573 }, { 205,7573 }, { 206,7573 }, + { 207,7573 }, { 208,7573 }, { 209,7573 }, { 210,7573 }, { 211,7573 }, + { 212,7573 }, { 213,7573 }, { 214,7573 }, { 215,7573 }, { 216,7573 }, + + { 217,7573 }, { 218,7573 }, { 219,7573 }, { 220,7573 }, { 221,7573 }, + { 222,7573 }, { 223,7573 }, { 224,7573 }, { 225,7573 }, { 226,7573 }, + { 227,7573 }, { 228,7573 }, { 229,7573 }, { 230,7573 }, { 231,7573 }, + { 232,7573 }, { 233,7573 }, { 234,7573 }, { 235,7573 }, { 236,7573 }, + { 237,7573 }, { 238,7573 }, { 239,7573 }, { 240,7573 }, { 241,7573 }, + { 242,7573 }, { 243,7573 }, { 244,7573 }, { 245,7573 }, { 246,7573 }, + { 247,7573 }, { 248,7573 }, { 249,7573 }, { 250,7573 }, { 251,7573 }, + { 252,7573 }, { 253,7573 }, { 254,7573 }, { 255,7573 }, { 256,7573 }, + { 0, 0 }, { 0,18707 }, { 1,7315 }, { 2,7315 }, { 3,7315 }, + { 4,7315 }, { 5,7315 }, { 6,7315 }, { 7,7315 }, { 8,7315 }, + + { 9,7315 }, { 10,7315 }, { 11,7315 }, { 12,7315 }, { 13,7315 }, + { 14,7315 }, { 15,7315 }, { 16,7315 }, { 17,7315 }, { 18,7315 }, + { 19,7315 }, { 20,7315 }, { 21,7315 }, { 22,7315 }, { 23,7315 }, + { 24,7315 }, { 25,7315 }, { 26,7315 }, { 27,7315 }, { 28,7315 }, + { 29,7315 }, { 30,7315 }, { 31,7315 }, { 32,7315 }, { 33,7315 }, + { 34,7315 }, { 35,7315 }, { 36,7315 }, { 37,7315 }, { 38,7315 }, + { 39,3412 }, { 40,7315 }, { 41,7315 }, { 42,7315 }, { 43,7315 }, + { 44,7315 }, { 45,7315 }, { 46,7315 }, { 47,7315 }, { 48,7315 }, + { 49,7315 }, { 50,7315 }, { 51,7315 }, { 52,7315 }, { 53,7315 }, + { 54,7315 }, { 55,7315 }, { 56,7315 }, { 57,7315 }, { 58,7315 }, + + { 59,7315 }, { 60,7315 }, { 61,7315 }, { 62,7315 }, { 63,7315 }, + { 64,7315 }, { 65,7315 }, { 66,7315 }, { 67,7315 }, { 68,7315 }, + { 69,7315 }, { 70,7315 }, { 71,7315 }, { 72,7315 }, { 73,7315 }, + { 74,7315 }, { 75,7315 }, { 76,7315 }, { 77,7315 }, { 78,7315 }, + { 79,7315 }, { 80,7315 }, { 81,7315 }, { 82,7315 }, { 83,7315 }, + { 84,7315 }, { 85,7315 }, { 86,7315 }, { 87,7315 }, { 88,7315 }, + { 89,7315 }, { 90,7315 }, { 91,7315 }, { 92,7315 }, { 93,7315 }, + { 94,7315 }, { 95,7315 }, { 96,7315 }, { 97,7315 }, { 98,7315 }, + { 99,7315 }, { 100,7315 }, { 101,7315 }, { 102,7315 }, { 103,7315 }, + { 104,7315 }, { 105,7315 }, { 106,7315 }, { 107,7315 }, { 108,7315 }, + + { 109,7315 }, { 110,7315 }, { 111,7315 }, { 112,7315 }, { 113,7315 }, + { 114,7315 }, { 115,7315 }, { 116,7315 }, { 117,7315 }, { 118,7315 }, + { 119,7315 }, { 120,7315 }, { 121,7315 }, { 122,7315 }, { 123,7315 }, + { 124,7315 }, { 125,7315 }, { 126,7315 }, { 127,7315 }, { 128,7315 }, + { 129,7315 }, { 130,7315 }, { 131,7315 }, { 132,7315 }, { 133,7315 }, + { 134,7315 }, { 135,7315 }, { 136,7315 }, { 137,7315 }, { 138,7315 }, + { 139,7315 }, { 140,7315 }, { 141,7315 }, { 142,7315 }, { 143,7315 }, + { 144,7315 }, { 145,7315 }, { 146,7315 }, { 147,7315 }, { 148,7315 }, + { 149,7315 }, { 150,7315 }, { 151,7315 }, { 152,7315 }, { 153,7315 }, + { 154,7315 }, { 155,7315 }, { 156,7315 }, { 157,7315 }, { 158,7315 }, + + { 159,7315 }, { 160,7315 }, { 161,7315 }, { 162,7315 }, { 163,7315 }, + { 164,7315 }, { 165,7315 }, { 166,7315 }, { 167,7315 }, { 168,7315 }, + { 169,7315 }, { 170,7315 }, { 171,7315 }, { 172,7315 }, { 173,7315 }, + { 174,7315 }, { 175,7315 }, { 176,7315 }, { 177,7315 }, { 178,7315 }, + { 179,7315 }, { 180,7315 }, { 181,7315 }, { 182,7315 }, { 183,7315 }, + { 184,7315 }, { 185,7315 }, { 186,7315 }, { 187,7315 }, { 188,7315 }, + { 189,7315 }, { 190,7315 }, { 191,7315 }, { 192,7315 }, { 193,7315 }, + { 194,7315 }, { 195,7315 }, { 196,7315 }, { 197,7315 }, { 198,7315 }, + { 199,7315 }, { 200,7315 }, { 201,7315 }, { 202,7315 }, { 203,7315 }, + { 204,7315 }, { 205,7315 }, { 206,7315 }, { 207,7315 }, { 208,7315 }, + + { 209,7315 }, { 210,7315 }, { 211,7315 }, { 212,7315 }, { 213,7315 }, + { 214,7315 }, { 215,7315 }, { 216,7315 }, { 217,7315 }, { 218,7315 }, + { 219,7315 }, { 220,7315 }, { 221,7315 }, { 222,7315 }, { 223,7315 }, + { 224,7315 }, { 225,7315 }, { 226,7315 }, { 227,7315 }, { 228,7315 }, + { 229,7315 }, { 230,7315 }, { 231,7315 }, { 232,7315 }, { 233,7315 }, + { 234,7315 }, { 235,7315 }, { 236,7315 }, { 237,7315 }, { 238,7315 }, + { 239,7315 }, { 240,7315 }, { 241,7315 }, { 242,7315 }, { 243,7315 }, + { 244,7315 }, { 245,7315 }, { 246,7315 }, { 247,7315 }, { 248,7315 }, + { 249,7315 }, { 250,7315 }, { 251,7315 }, { 252,7315 }, { 253,7315 }, + { 254,7315 }, { 255,7315 }, { 256,7315 }, { 0, 19 }, { 0,18449 }, { 1,3156 }, { 2,3156 }, { 3,3156 }, { 4,3156 }, { 5,3156 }, - { 6,3156 }, { 7,3156 }, { 8,3156 }, { 9,6836 }, { 10,6841 }, - { 11,3156 }, { 12,6836 }, { 13,6857 }, { 14,3156 }, { 15,3156 }, + { 6,3156 }, { 7,3156 }, { 8,3156 }, { 9,7315 }, { 10,7320 }, + { 11,3156 }, { 12,7315 }, { 13,7336 }, { 14,3156 }, { 15,3156 }, { 16,3156 }, { 17,3156 }, { 18,3156 }, { 19,3156 }, { 20,3156 }, { 21,3156 }, { 22,3156 }, { 23,3156 }, { 24,3156 }, { 25,3156 }, { 26,3156 }, { 27,3156 }, { 28,3156 }, { 29,3156 }, { 30,3156 }, - { 31,3156 }, { 32,6836 }, { 33,3156 }, { 34,3156 }, { 35,3156 }, + { 31,3156 }, { 32,7315 }, { 33,3156 }, { 34,3156 }, { 35,3156 }, { 36,3156 }, { 37,3156 }, { 38,3156 }, { 39,3156 }, { 40,3156 }, { 41,3156 }, { 42,3156 }, { 43,3156 }, { 44,3156 }, { 45,3158 }, { 46,3156 }, { 47,3156 }, { 48,3156 }, { 49,3156 }, { 50,3156 }, @@ -1408,13 +1410,13 @@ static const struct yy_trans_info yy_transition[17678] = { 246,3156 }, { 247,3156 }, { 248,3156 }, { 249,3156 }, { 250,3156 }, { 251,3156 }, { 252,3156 }, { 253,3156 }, { 254,3156 }, { 255,3156 }, - { 256,3156 }, { 0, 19 }, { 0,14066 }, { 1,2898 }, { 2,2898 }, + { 256,3156 }, { 0, 19 }, { 0,18191 }, { 1,2898 }, { 2,2898 }, { 3,2898 }, { 4,2898 }, { 5,2898 }, { 6,2898 }, { 7,2898 }, - { 8,2898 }, { 9,6578 }, { 10,6583 }, { 11,2898 }, { 12,6578 }, - { 13,6599 }, { 14,2898 }, { 15,2898 }, { 16,2898 }, { 17,2898 }, + { 8,2898 }, { 9,7057 }, { 10,7062 }, { 11,2898 }, { 12,7057 }, + { 13,7078 }, { 14,2898 }, { 15,2898 }, { 16,2898 }, { 17,2898 }, { 18,2898 }, { 19,2898 }, { 20,2898 }, { 21,2898 }, { 22,2898 }, { 23,2898 }, { 24,2898 }, { 25,2898 }, { 26,2898 }, { 27,2898 }, - { 28,2898 }, { 29,2898 }, { 30,2898 }, { 31,2898 }, { 32,6578 }, + { 28,2898 }, { 29,2898 }, { 30,2898 }, { 31,2898 }, { 32,7057 }, { 33,2898 }, { 34,2898 }, { 35,2898 }, { 36,2898 }, { 37,2898 }, { 38,2898 }, { 39,2898 }, { 40,2898 }, { 41,2898 }, { 42,2898 }, @@ -1465,460 +1467,460 @@ static const struct yy_trans_info yy_transition[17678] = { 243,2898 }, { 244,2898 }, { 245,2898 }, { 246,2898 }, { 247,2898 }, { 248,2898 }, { 249,2898 }, { 250,2898 }, { 251,2898 }, { 252,2898 }, { 253,2898 }, { 254,2898 }, { 255,2898 }, { 256,2898 }, { 0, 0 }, - { 0,13808 }, { 1,6388 }, { 2,6388 }, { 3,6388 }, { 4,6388 }, - { 5,6388 }, { 6,6388 }, { 7,6388 }, { 8,6388 }, { 9,6388 }, - { 10,6646 }, { 11,6388 }, { 12,6388 }, { 13,6388 }, { 14,6388 }, - { 15,6388 }, { 16,6388 }, { 17,6388 }, { 18,6388 }, { 19,6388 }, - { 20,6388 }, { 21,6388 }, { 22,6388 }, { 23,6388 }, { 24,6388 }, - { 25,6388 }, { 26,6388 }, { 27,6388 }, { 28,6388 }, { 29,6388 }, - { 30,6388 }, { 31,6388 }, { 32,6388 }, { 33,6388 }, { 34,6388 }, - - { 35,6388 }, { 36,6388 }, { 37,6388 }, { 38,6388 }, { 39,2645 }, - { 40,6388 }, { 41,6388 }, { 42,6388 }, { 43,6388 }, { 44,6388 }, - { 45,6388 }, { 46,6388 }, { 47,6388 }, { 48,6388 }, { 49,6388 }, - { 50,6388 }, { 51,6388 }, { 52,6388 }, { 53,6388 }, { 54,6388 }, - { 55,6388 }, { 56,6388 }, { 57,6388 }, { 58,6388 }, { 59,6388 }, - { 60,6388 }, { 61,6388 }, { 62,6388 }, { 63,6388 }, { 64,6388 }, - { 65,6388 }, { 66,6388 }, { 67,6388 }, { 68,6388 }, { 69,6388 }, - { 70,6388 }, { 71,6388 }, { 72,6388 }, { 73,6388 }, { 74,6388 }, - { 75,6388 }, { 76,6388 }, { 77,6388 }, { 78,6388 }, { 79,6388 }, - { 80,6388 }, { 81,6388 }, { 82,6388 }, { 83,6388 }, { 84,6388 }, - - { 85,6388 }, { 86,6388 }, { 87,6388 }, { 88,6388 }, { 89,6388 }, - { 90,6388 }, { 91,6388 }, { 92,6904 }, { 93,6388 }, { 94,6388 }, - { 95,6388 }, { 96,6388 }, { 97,6388 }, { 98,6388 }, { 99,6388 }, - { 100,6388 }, { 101,6388 }, { 102,6388 }, { 103,6388 }, { 104,6388 }, - { 105,6388 }, { 106,6388 }, { 107,6388 }, { 108,6388 }, { 109,6388 }, - { 110,6388 }, { 111,6388 }, { 112,6388 }, { 113,6388 }, { 114,6388 }, - { 115,6388 }, { 116,6388 }, { 117,6388 }, { 118,6388 }, { 119,6388 }, - { 120,6388 }, { 121,6388 }, { 122,6388 }, { 123,6388 }, { 124,6388 }, - { 125,6388 }, { 126,6388 }, { 127,6388 }, { 128,6388 }, { 129,6388 }, - { 130,6388 }, { 131,6388 }, { 132,6388 }, { 133,6388 }, { 134,6388 }, - - { 135,6388 }, { 136,6388 }, { 137,6388 }, { 138,6388 }, { 139,6388 }, - { 140,6388 }, { 141,6388 }, { 142,6388 }, { 143,6388 }, { 144,6388 }, - { 145,6388 }, { 146,6388 }, { 147,6388 }, { 148,6388 }, { 149,6388 }, - { 150,6388 }, { 151,6388 }, { 152,6388 }, { 153,6388 }, { 154,6388 }, - { 155,6388 }, { 156,6388 }, { 157,6388 }, { 158,6388 }, { 159,6388 }, - { 160,6388 }, { 161,6388 }, { 162,6388 }, { 163,6388 }, { 164,6388 }, - { 165,6388 }, { 166,6388 }, { 167,6388 }, { 168,6388 }, { 169,6388 }, - { 170,6388 }, { 171,6388 }, { 172,6388 }, { 173,6388 }, { 174,6388 }, - { 175,6388 }, { 176,6388 }, { 177,6388 }, { 178,6388 }, { 179,6388 }, - { 180,6388 }, { 181,6388 }, { 182,6388 }, { 183,6388 }, { 184,6388 }, - - { 185,6388 }, { 186,6388 }, { 187,6388 }, { 188,6388 }, { 189,6388 }, - { 190,6388 }, { 191,6388 }, { 192,6388 }, { 193,6388 }, { 194,6388 }, - { 195,6388 }, { 196,6388 }, { 197,6388 }, { 198,6388 }, { 199,6388 }, - { 200,6388 }, { 201,6388 }, { 202,6388 }, { 203,6388 }, { 204,6388 }, - { 205,6388 }, { 206,6388 }, { 207,6388 }, { 208,6388 }, { 209,6388 }, - { 210,6388 }, { 211,6388 }, { 212,6388 }, { 213,6388 }, { 214,6388 }, - { 215,6388 }, { 216,6388 }, { 217,6388 }, { 218,6388 }, { 219,6388 }, - { 220,6388 }, { 221,6388 }, { 222,6388 }, { 223,6388 }, { 224,6388 }, - { 225,6388 }, { 226,6388 }, { 227,6388 }, { 228,6388 }, { 229,6388 }, - { 230,6388 }, { 231,6388 }, { 232,6388 }, { 233,6388 }, { 234,6388 }, - - { 235,6388 }, { 236,6388 }, { 237,6388 }, { 238,6388 }, { 239,6388 }, - { 240,6388 }, { 241,6388 }, { 242,6388 }, { 243,6388 }, { 244,6388 }, - { 245,6388 }, { 246,6388 }, { 247,6388 }, { 248,6388 }, { 249,6388 }, - { 250,6388 }, { 251,6388 }, { 252,6388 }, { 253,6388 }, { 254,6388 }, - { 255,6388 }, { 256,6388 }, { 0, 0 }, { 0,13550 }, { 1,6130 }, - { 2,6130 }, { 3,6130 }, { 4,6130 }, { 5,6130 }, { 6,6130 }, - { 7,6130 }, { 8,6130 }, { 9,6130 }, { 10,6388 }, { 11,6130 }, - { 12,6130 }, { 13,6130 }, { 14,6130 }, { 15,6130 }, { 16,6130 }, - { 17,6130 }, { 18,6130 }, { 19,6130 }, { 20,6130 }, { 21,6130 }, - { 22,6130 }, { 23,6130 }, { 24,6130 }, { 25,6130 }, { 26,6130 }, - - { 27,6130 }, { 28,6130 }, { 29,6130 }, { 30,6130 }, { 31,6130 }, - { 32,6130 }, { 33,6130 }, { 34,6130 }, { 35,6130 }, { 36,6130 }, - { 37,6130 }, { 38,6130 }, { 39,2387 }, { 40,6130 }, { 41,6130 }, - { 42,6130 }, { 43,6130 }, { 44,6130 }, { 45,6130 }, { 46,6130 }, - { 47,6130 }, { 48,6130 }, { 49,6130 }, { 50,6130 }, { 51,6130 }, - { 52,6130 }, { 53,6130 }, { 54,6130 }, { 55,6130 }, { 56,6130 }, - { 57,6130 }, { 58,6130 }, { 59,6130 }, { 60,6130 }, { 61,6130 }, - { 62,6130 }, { 63,6130 }, { 64,6130 }, { 65,6130 }, { 66,6130 }, - { 67,6130 }, { 68,6130 }, { 69,6130 }, { 70,6130 }, { 71,6130 }, - { 72,6130 }, { 73,6130 }, { 74,6130 }, { 75,6130 }, { 76,6130 }, - - { 77,6130 }, { 78,6130 }, { 79,6130 }, { 80,6130 }, { 81,6130 }, - { 82,6130 }, { 83,6130 }, { 84,6130 }, { 85,6130 }, { 86,6130 }, - { 87,6130 }, { 88,6130 }, { 89,6130 }, { 90,6130 }, { 91,6130 }, - { 92,6646 }, { 93,6130 }, { 94,6130 }, { 95,6130 }, { 96,6130 }, - { 97,6130 }, { 98,6130 }, { 99,6130 }, { 100,6130 }, { 101,6130 }, - { 102,6130 }, { 103,6130 }, { 104,6130 }, { 105,6130 }, { 106,6130 }, - { 107,6130 }, { 108,6130 }, { 109,6130 }, { 110,6130 }, { 111,6130 }, - { 112,6130 }, { 113,6130 }, { 114,6130 }, { 115,6130 }, { 116,6130 }, - { 117,6130 }, { 118,6130 }, { 119,6130 }, { 120,6130 }, { 121,6130 }, - { 122,6130 }, { 123,6130 }, { 124,6130 }, { 125,6130 }, { 126,6130 }, - - { 127,6130 }, { 128,6130 }, { 129,6130 }, { 130,6130 }, { 131,6130 }, - { 132,6130 }, { 133,6130 }, { 134,6130 }, { 135,6130 }, { 136,6130 }, - { 137,6130 }, { 138,6130 }, { 139,6130 }, { 140,6130 }, { 141,6130 }, - { 142,6130 }, { 143,6130 }, { 144,6130 }, { 145,6130 }, { 146,6130 }, - { 147,6130 }, { 148,6130 }, { 149,6130 }, { 150,6130 }, { 151,6130 }, - { 152,6130 }, { 153,6130 }, { 154,6130 }, { 155,6130 }, { 156,6130 }, - { 157,6130 }, { 158,6130 }, { 159,6130 }, { 160,6130 }, { 161,6130 }, - { 162,6130 }, { 163,6130 }, { 164,6130 }, { 165,6130 }, { 166,6130 }, - { 167,6130 }, { 168,6130 }, { 169,6130 }, { 170,6130 }, { 171,6130 }, - { 172,6130 }, { 173,6130 }, { 174,6130 }, { 175,6130 }, { 176,6130 }, - - { 177,6130 }, { 178,6130 }, { 179,6130 }, { 180,6130 }, { 181,6130 }, - { 182,6130 }, { 183,6130 }, { 184,6130 }, { 185,6130 }, { 186,6130 }, - { 187,6130 }, { 188,6130 }, { 189,6130 }, { 190,6130 }, { 191,6130 }, - { 192,6130 }, { 193,6130 }, { 194,6130 }, { 195,6130 }, { 196,6130 }, - { 197,6130 }, { 198,6130 }, { 199,6130 }, { 200,6130 }, { 201,6130 }, - { 202,6130 }, { 203,6130 }, { 204,6130 }, { 205,6130 }, { 206,6130 }, - { 207,6130 }, { 208,6130 }, { 209,6130 }, { 210,6130 }, { 211,6130 }, - { 212,6130 }, { 213,6130 }, { 214,6130 }, { 215,6130 }, { 216,6130 }, - { 217,6130 }, { 218,6130 }, { 219,6130 }, { 220,6130 }, { 221,6130 }, - { 222,6130 }, { 223,6130 }, { 224,6130 }, { 225,6130 }, { 226,6130 }, - - { 227,6130 }, { 228,6130 }, { 229,6130 }, { 230,6130 }, { 231,6130 }, - { 232,6130 }, { 233,6130 }, { 234,6130 }, { 235,6130 }, { 236,6130 }, - { 237,6130 }, { 238,6130 }, { 239,6130 }, { 240,6130 }, { 241,6130 }, - { 242,6130 }, { 243,6130 }, { 244,6130 }, { 245,6130 }, { 246,6130 }, - { 247,6130 }, { 248,6130 }, { 249,6130 }, { 250,6130 }, { 251,6130 }, - { 252,6130 }, { 253,6130 }, { 254,6130 }, { 255,6130 }, { 256,6130 }, - { 0, 0 }, { 0,13292 }, { 1,6646 }, { 2,6646 }, { 3,6646 }, - { 4,6646 }, { 5,6646 }, { 6,6646 }, { 7,6646 }, { 8,6646 }, - { 9,6646 }, { 10,6904 }, { 11,6646 }, { 12,6646 }, { 13,6646 }, - { 14,6646 }, { 15,6646 }, { 16,6646 }, { 17,6646 }, { 18,6646 }, - - { 19,6646 }, { 20,6646 }, { 21,6646 }, { 22,6646 }, { 23,6646 }, - { 24,6646 }, { 25,6646 }, { 26,6646 }, { 27,6646 }, { 28,6646 }, - { 29,6646 }, { 30,6646 }, { 31,6646 }, { 32,6646 }, { 33,6646 }, - { 34,6646 }, { 35,6646 }, { 36,7162 }, { 37,6646 }, { 38,6646 }, - { 39,6646 }, { 40,6646 }, { 41,6646 }, { 42,6646 }, { 43,6646 }, - { 44,6646 }, { 45,6646 }, { 46,6646 }, { 47,6646 }, { 48,6646 }, - { 49,6646 }, { 50,6646 }, { 51,6646 }, { 52,6646 }, { 53,6646 }, - { 54,6646 }, { 55,6646 }, { 56,6646 }, { 57,6646 }, { 58,6646 }, - { 59,6646 }, { 60,6646 }, { 61,6646 }, { 62,6646 }, { 63,6646 }, - { 64,6646 }, { 65,6646 }, { 66,6646 }, { 67,6646 }, { 68,6646 }, - - { 69,6646 }, { 70,6646 }, { 71,6646 }, { 72,6646 }, { 73,6646 }, - { 74,6646 }, { 75,6646 }, { 76,6646 }, { 77,6646 }, { 78,6646 }, - { 79,6646 }, { 80,6646 }, { 81,6646 }, { 82,6646 }, { 83,6646 }, - { 84,6646 }, { 85,6646 }, { 86,6646 }, { 87,6646 }, { 88,6646 }, - { 89,6646 }, { 90,6646 }, { 91,6646 }, { 92,6646 }, { 93,6646 }, - { 94,6646 }, { 95,6646 }, { 96,6646 }, { 97,6646 }, { 98,6646 }, - { 99,6646 }, { 100,6646 }, { 101,6646 }, { 102,6646 }, { 103,6646 }, - { 104,6646 }, { 105,6646 }, { 106,6646 }, { 107,6646 }, { 108,6646 }, - { 109,6646 }, { 110,6646 }, { 111,6646 }, { 112,6646 }, { 113,6646 }, - { 114,6646 }, { 115,6646 }, { 116,6646 }, { 117,6646 }, { 118,6646 }, - - { 119,6646 }, { 120,6646 }, { 121,6646 }, { 122,6646 }, { 123,6646 }, - { 124,6646 }, { 125,6646 }, { 126,6646 }, { 127,6646 }, { 128,6646 }, - { 129,6646 }, { 130,6646 }, { 131,6646 }, { 132,6646 }, { 133,6646 }, - { 134,6646 }, { 135,6646 }, { 136,6646 }, { 137,6646 }, { 138,6646 }, - { 139,6646 }, { 140,6646 }, { 141,6646 }, { 142,6646 }, { 143,6646 }, - { 144,6646 }, { 145,6646 }, { 146,6646 }, { 147,6646 }, { 148,6646 }, - { 149,6646 }, { 150,6646 }, { 151,6646 }, { 152,6646 }, { 153,6646 }, - { 154,6646 }, { 155,6646 }, { 156,6646 }, { 157,6646 }, { 158,6646 }, - { 159,6646 }, { 160,6646 }, { 161,6646 }, { 162,6646 }, { 163,6646 }, - { 164,6646 }, { 165,6646 }, { 166,6646 }, { 167,6646 }, { 168,6646 }, - - { 169,6646 }, { 170,6646 }, { 171,6646 }, { 172,6646 }, { 173,6646 }, - { 174,6646 }, { 175,6646 }, { 176,6646 }, { 177,6646 }, { 178,6646 }, - { 179,6646 }, { 180,6646 }, { 181,6646 }, { 182,6646 }, { 183,6646 }, - { 184,6646 }, { 185,6646 }, { 186,6646 }, { 187,6646 }, { 188,6646 }, - { 189,6646 }, { 190,6646 }, { 191,6646 }, { 192,6646 }, { 193,6646 }, - { 194,6646 }, { 195,6646 }, { 196,6646 }, { 197,6646 }, { 198,6646 }, - { 199,6646 }, { 200,6646 }, { 201,6646 }, { 202,6646 }, { 203,6646 }, - { 204,6646 }, { 205,6646 }, { 206,6646 }, { 207,6646 }, { 208,6646 }, - { 209,6646 }, { 210,6646 }, { 211,6646 }, { 212,6646 }, { 213,6646 }, - { 214,6646 }, { 215,6646 }, { 216,6646 }, { 217,6646 }, { 218,6646 }, - - { 219,6646 }, { 220,6646 }, { 221,6646 }, { 222,6646 }, { 223,6646 }, - { 224,6646 }, { 225,6646 }, { 226,6646 }, { 227,6646 }, { 228,6646 }, - { 229,6646 }, { 230,6646 }, { 231,6646 }, { 232,6646 }, { 233,6646 }, - { 234,6646 }, { 235,6646 }, { 236,6646 }, { 237,6646 }, { 238,6646 }, - { 239,6646 }, { 240,6646 }, { 241,6646 }, { 242,6646 }, { 243,6646 }, - { 244,6646 }, { 245,6646 }, { 246,6646 }, { 247,6646 }, { 248,6646 }, - { 249,6646 }, { 250,6646 }, { 251,6646 }, { 252,6646 }, { 253,6646 }, - { 254,6646 }, { 255,6646 }, { 256,6646 }, { 0, 0 }, { 0,13034 }, - { 1,6388 }, { 2,6388 }, { 3,6388 }, { 4,6388 }, { 5,6388 }, - { 6,6388 }, { 7,6388 }, { 8,6388 }, { 9,6388 }, { 10,6646 }, - - { 11,6388 }, { 12,6388 }, { 13,6388 }, { 14,6388 }, { 15,6388 }, - { 16,6388 }, { 17,6388 }, { 18,6388 }, { 19,6388 }, { 20,6388 }, - { 21,6388 }, { 22,6388 }, { 23,6388 }, { 24,6388 }, { 25,6388 }, - { 26,6388 }, { 27,6388 }, { 28,6388 }, { 29,6388 }, { 30,6388 }, - { 31,6388 }, { 32,6388 }, { 33,6388 }, { 34,6388 }, { 35,6388 }, - { 36,6904 }, { 37,6388 }, { 38,6388 }, { 39,6388 }, { 40,6388 }, - { 41,6388 }, { 42,6388 }, { 43,6388 }, { 44,6388 }, { 45,6388 }, - { 46,6388 }, { 47,6388 }, { 48,6388 }, { 49,6388 }, { 50,6388 }, - { 51,6388 }, { 52,6388 }, { 53,6388 }, { 54,6388 }, { 55,6388 }, - { 56,6388 }, { 57,6388 }, { 58,6388 }, { 59,6388 }, { 60,6388 }, - - { 61,6388 }, { 62,6388 }, { 63,6388 }, { 64,6388 }, { 65,6388 }, - { 66,6388 }, { 67,6388 }, { 68,6388 }, { 69,6388 }, { 70,6388 }, - { 71,6388 }, { 72,6388 }, { 73,6388 }, { 74,6388 }, { 75,6388 }, - { 76,6388 }, { 77,6388 }, { 78,6388 }, { 79,6388 }, { 80,6388 }, - { 81,6388 }, { 82,6388 }, { 83,6388 }, { 84,6388 }, { 85,6388 }, - { 86,6388 }, { 87,6388 }, { 88,6388 }, { 89,6388 }, { 90,6388 }, - { 91,6388 }, { 92,6388 }, { 93,6388 }, { 94,6388 }, { 95,6388 }, - { 96,6388 }, { 97,6388 }, { 98,6388 }, { 99,6388 }, { 100,6388 }, - { 101,6388 }, { 102,6388 }, { 103,6388 }, { 104,6388 }, { 105,6388 }, - { 106,6388 }, { 107,6388 }, { 108,6388 }, { 109,6388 }, { 110,6388 }, - - { 111,6388 }, { 112,6388 }, { 113,6388 }, { 114,6388 }, { 115,6388 }, - { 116,6388 }, { 117,6388 }, { 118,6388 }, { 119,6388 }, { 120,6388 }, - { 121,6388 }, { 122,6388 }, { 123,6388 }, { 124,6388 }, { 125,6388 }, - { 126,6388 }, { 127,6388 }, { 128,6388 }, { 129,6388 }, { 130,6388 }, - { 131,6388 }, { 132,6388 }, { 133,6388 }, { 134,6388 }, { 135,6388 }, - { 136,6388 }, { 137,6388 }, { 138,6388 }, { 139,6388 }, { 140,6388 }, - { 141,6388 }, { 142,6388 }, { 143,6388 }, { 144,6388 }, { 145,6388 }, - { 146,6388 }, { 147,6388 }, { 148,6388 }, { 149,6388 }, { 150,6388 }, - { 151,6388 }, { 152,6388 }, { 153,6388 }, { 154,6388 }, { 155,6388 }, - { 156,6388 }, { 157,6388 }, { 158,6388 }, { 159,6388 }, { 160,6388 }, - - { 161,6388 }, { 162,6388 }, { 163,6388 }, { 164,6388 }, { 165,6388 }, - { 166,6388 }, { 167,6388 }, { 168,6388 }, { 169,6388 }, { 170,6388 }, - { 171,6388 }, { 172,6388 }, { 173,6388 }, { 174,6388 }, { 175,6388 }, - { 176,6388 }, { 177,6388 }, { 178,6388 }, { 179,6388 }, { 180,6388 }, - { 181,6388 }, { 182,6388 }, { 183,6388 }, { 184,6388 }, { 185,6388 }, - { 186,6388 }, { 187,6388 }, { 188,6388 }, { 189,6388 }, { 190,6388 }, - { 191,6388 }, { 192,6388 }, { 193,6388 }, { 194,6388 }, { 195,6388 }, - { 196,6388 }, { 197,6388 }, { 198,6388 }, { 199,6388 }, { 200,6388 }, - { 201,6388 }, { 202,6388 }, { 203,6388 }, { 204,6388 }, { 205,6388 }, - { 206,6388 }, { 207,6388 }, { 208,6388 }, { 209,6388 }, { 210,6388 }, - - { 211,6388 }, { 212,6388 }, { 213,6388 }, { 214,6388 }, { 215,6388 }, - { 216,6388 }, { 217,6388 }, { 218,6388 }, { 219,6388 }, { 220,6388 }, - { 221,6388 }, { 222,6388 }, { 223,6388 }, { 224,6388 }, { 225,6388 }, - { 226,6388 }, { 227,6388 }, { 228,6388 }, { 229,6388 }, { 230,6388 }, - { 231,6388 }, { 232,6388 }, { 233,6388 }, { 234,6388 }, { 235,6388 }, - { 236,6388 }, { 237,6388 }, { 238,6388 }, { 239,6388 }, { 240,6388 }, - { 241,6388 }, { 242,6388 }, { 243,6388 }, { 244,6388 }, { 245,6388 }, - { 246,6388 }, { 247,6388 }, { 248,6388 }, { 249,6388 }, { 250,6388 }, - { 251,6388 }, { 252,6388 }, { 253,6388 }, { 254,6388 }, { 255,6388 }, - { 256,6388 }, { 0, 0 }, { 0,12776 }, { 1,4514 }, { 2,4514 }, - - { 3,4514 }, { 4,4514 }, { 5,4514 }, { 6,4514 }, { 7,4514 }, - { 8,4514 }, { 9,4514 }, { 10,4514 }, { 11,4514 }, { 12,4514 }, - { 13,4514 }, { 14,4514 }, { 15,4514 }, { 16,4514 }, { 17,4514 }, - { 18,4514 }, { 19,4514 }, { 20,4514 }, { 21,4514 }, { 22,4514 }, - { 23,4514 }, { 24,4514 }, { 25,4514 }, { 26,4514 }, { 27,4514 }, - { 28,4514 }, { 29,4514 }, { 30,4514 }, { 31,4514 }, { 32,4514 }, - { 33,4514 }, { 34,1615 }, { 35,4514 }, { 36,4514 }, { 37,4514 }, - { 38,4514 }, { 39,4514 }, { 40,4514 }, { 41,4514 }, { 42,4514 }, - { 43,4514 }, { 44,4514 }, { 45,4514 }, { 46,4514 }, { 47,4514 }, - { 48,4514 }, { 49,4514 }, { 50,4514 }, { 51,4514 }, { 52,4514 }, - - { 53,4514 }, { 54,4514 }, { 55,4514 }, { 56,4514 }, { 57,4514 }, - { 58,4514 }, { 59,4514 }, { 60,4514 }, { 61,4514 }, { 62,4514 }, - { 63,4514 }, { 64,4514 }, { 65,4514 }, { 66,4514 }, { 67,4514 }, - { 68,4514 }, { 69,4514 }, { 70,4514 }, { 71,4514 }, { 72,4514 }, - { 73,4514 }, { 74,4514 }, { 75,4514 }, { 76,4514 }, { 77,4514 }, - { 78,4514 }, { 79,4514 }, { 80,4514 }, { 81,4514 }, { 82,4514 }, - { 83,4514 }, { 84,4514 }, { 85,4514 }, { 86,4514 }, { 87,4514 }, - { 88,4514 }, { 89,4514 }, { 90,4514 }, { 91,4514 }, { 92,4514 }, - { 93,4514 }, { 94,4514 }, { 95,4514 }, { 96,4514 }, { 97,4514 }, - { 98,4514 }, { 99,4514 }, { 100,4514 }, { 101,4514 }, { 102,4514 }, - - { 103,4514 }, { 104,4514 }, { 105,4514 }, { 106,4514 }, { 107,4514 }, - { 108,4514 }, { 109,4514 }, { 110,4514 }, { 111,4514 }, { 112,4514 }, - { 113,4514 }, { 114,4514 }, { 115,4514 }, { 116,4514 }, { 117,4514 }, - { 118,4514 }, { 119,4514 }, { 120,4514 }, { 121,4514 }, { 122,4514 }, - { 123,4514 }, { 124,4514 }, { 125,4514 }, { 126,4514 }, { 127,4514 }, - { 128,4514 }, { 129,4514 }, { 130,4514 }, { 131,4514 }, { 132,4514 }, - { 133,4514 }, { 134,4514 }, { 135,4514 }, { 136,4514 }, { 137,4514 }, - { 138,4514 }, { 139,4514 }, { 140,4514 }, { 141,4514 }, { 142,4514 }, - { 143,4514 }, { 144,4514 }, { 145,4514 }, { 146,4514 }, { 147,4514 }, - { 148,4514 }, { 149,4514 }, { 150,4514 }, { 151,4514 }, { 152,4514 }, - - { 153,4514 }, { 154,4514 }, { 155,4514 }, { 156,4514 }, { 157,4514 }, - { 158,4514 }, { 159,4514 }, { 160,4514 }, { 161,4514 }, { 162,4514 }, - { 163,4514 }, { 164,4514 }, { 165,4514 }, { 166,4514 }, { 167,4514 }, - { 168,4514 }, { 169,4514 }, { 170,4514 }, { 171,4514 }, { 172,4514 }, - { 173,4514 }, { 174,4514 }, { 175,4514 }, { 176,4514 }, { 177,4514 }, - { 178,4514 }, { 179,4514 }, { 180,4514 }, { 181,4514 }, { 182,4514 }, - { 183,4514 }, { 184,4514 }, { 185,4514 }, { 186,4514 }, { 187,4514 }, - { 188,4514 }, { 189,4514 }, { 190,4514 }, { 191,4514 }, { 192,4514 }, - { 193,4514 }, { 194,4514 }, { 195,4514 }, { 196,4514 }, { 197,4514 }, - { 198,4514 }, { 199,4514 }, { 200,4514 }, { 201,4514 }, { 202,4514 }, - - { 203,4514 }, { 204,4514 }, { 205,4514 }, { 206,4514 }, { 207,4514 }, - { 208,4514 }, { 209,4514 }, { 210,4514 }, { 211,4514 }, { 212,4514 }, - { 213,4514 }, { 214,4514 }, { 215,4514 }, { 216,4514 }, { 217,4514 }, - { 218,4514 }, { 219,4514 }, { 220,4514 }, { 221,4514 }, { 222,4514 }, - { 223,4514 }, { 224,4514 }, { 225,4514 }, { 226,4514 }, { 227,4514 }, - { 228,4514 }, { 229,4514 }, { 230,4514 }, { 231,4514 }, { 232,4514 }, - { 233,4514 }, { 234,4514 }, { 235,4514 }, { 236,4514 }, { 237,4514 }, - { 238,4514 }, { 239,4514 }, { 240,4514 }, { 241,4514 }, { 242,4514 }, - { 243,4514 }, { 244,4514 }, { 245,4514 }, { 246,4514 }, { 247,4514 }, - { 248,4514 }, { 249,4514 }, { 250,4514 }, { 251,4514 }, { 252,4514 }, - - { 253,4514 }, { 254,4514 }, { 255,4514 }, { 256,4514 }, { 0, 0 }, - { 0,12518 }, { 1,4256 }, { 2,4256 }, { 3,4256 }, { 4,4256 }, - { 5,4256 }, { 6,4256 }, { 7,4256 }, { 8,4256 }, { 9,4256 }, - { 10,4256 }, { 11,4256 }, { 12,4256 }, { 13,4256 }, { 14,4256 }, - { 15,4256 }, { 16,4256 }, { 17,4256 }, { 18,4256 }, { 19,4256 }, - { 20,4256 }, { 21,4256 }, { 22,4256 }, { 23,4256 }, { 24,4256 }, - { 25,4256 }, { 26,4256 }, { 27,4256 }, { 28,4256 }, { 29,4256 }, - { 30,4256 }, { 31,4256 }, { 32,4256 }, { 33,4256 }, { 34,1357 }, - { 35,4256 }, { 36,4256 }, { 37,4256 }, { 38,4256 }, { 39,4256 }, - { 40,4256 }, { 41,4256 }, { 42,4256 }, { 43,4256 }, { 44,4256 }, - - { 45,4256 }, { 46,4256 }, { 47,4256 }, { 48,4256 }, { 49,4256 }, - { 50,4256 }, { 51,4256 }, { 52,4256 }, { 53,4256 }, { 54,4256 }, - { 55,4256 }, { 56,4256 }, { 57,4256 }, { 58,4256 }, { 59,4256 }, - { 60,4256 }, { 61,4256 }, { 62,4256 }, { 63,4256 }, { 64,4256 }, - { 65,4256 }, { 66,4256 }, { 67,4256 }, { 68,4256 }, { 69,4256 }, - { 70,4256 }, { 71,4256 }, { 72,4256 }, { 73,4256 }, { 74,4256 }, - { 75,4256 }, { 76,4256 }, { 77,4256 }, { 78,4256 }, { 79,4256 }, - { 80,4256 }, { 81,4256 }, { 82,4256 }, { 83,4256 }, { 84,4256 }, - { 85,4256 }, { 86,4256 }, { 87,4256 }, { 88,4256 }, { 89,4256 }, - { 90,4256 }, { 91,4256 }, { 92,4256 }, { 93,4256 }, { 94,4256 }, - - { 95,4256 }, { 96,4256 }, { 97,4256 }, { 98,4256 }, { 99,4256 }, - { 100,4256 }, { 101,4256 }, { 102,4256 }, { 103,4256 }, { 104,4256 }, - { 105,4256 }, { 106,4256 }, { 107,4256 }, { 108,4256 }, { 109,4256 }, - { 110,4256 }, { 111,4256 }, { 112,4256 }, { 113,4256 }, { 114,4256 }, - { 115,4256 }, { 116,4256 }, { 117,4256 }, { 118,4256 }, { 119,4256 }, - { 120,4256 }, { 121,4256 }, { 122,4256 }, { 123,4256 }, { 124,4256 }, - { 125,4256 }, { 126,4256 }, { 127,4256 }, { 128,4256 }, { 129,4256 }, - { 130,4256 }, { 131,4256 }, { 132,4256 }, { 133,4256 }, { 134,4256 }, - { 135,4256 }, { 136,4256 }, { 137,4256 }, { 138,4256 }, { 139,4256 }, - { 140,4256 }, { 141,4256 }, { 142,4256 }, { 143,4256 }, { 144,4256 }, - - { 145,4256 }, { 146,4256 }, { 147,4256 }, { 148,4256 }, { 149,4256 }, - { 150,4256 }, { 151,4256 }, { 152,4256 }, { 153,4256 }, { 154,4256 }, - { 155,4256 }, { 156,4256 }, { 157,4256 }, { 158,4256 }, { 159,4256 }, - { 160,4256 }, { 161,4256 }, { 162,4256 }, { 163,4256 }, { 164,4256 }, - { 165,4256 }, { 166,4256 }, { 167,4256 }, { 168,4256 }, { 169,4256 }, - { 170,4256 }, { 171,4256 }, { 172,4256 }, { 173,4256 }, { 174,4256 }, - { 175,4256 }, { 176,4256 }, { 177,4256 }, { 178,4256 }, { 179,4256 }, - { 180,4256 }, { 181,4256 }, { 182,4256 }, { 183,4256 }, { 184,4256 }, - { 185,4256 }, { 186,4256 }, { 187,4256 }, { 188,4256 }, { 189,4256 }, - { 190,4256 }, { 191,4256 }, { 192,4256 }, { 193,4256 }, { 194,4256 }, - - { 195,4256 }, { 196,4256 }, { 197,4256 }, { 198,4256 }, { 199,4256 }, - { 200,4256 }, { 201,4256 }, { 202,4256 }, { 203,4256 }, { 204,4256 }, - { 205,4256 }, { 206,4256 }, { 207,4256 }, { 208,4256 }, { 209,4256 }, - { 210,4256 }, { 211,4256 }, { 212,4256 }, { 213,4256 }, { 214,4256 }, - { 215,4256 }, { 216,4256 }, { 217,4256 }, { 218,4256 }, { 219,4256 }, - { 220,4256 }, { 221,4256 }, { 222,4256 }, { 223,4256 }, { 224,4256 }, - { 225,4256 }, { 226,4256 }, { 227,4256 }, { 228,4256 }, { 229,4256 }, - { 230,4256 }, { 231,4256 }, { 232,4256 }, { 233,4256 }, { 234,4256 }, - { 235,4256 }, { 236,4256 }, { 237,4256 }, { 238,4256 }, { 239,4256 }, - { 240,4256 }, { 241,4256 }, { 242,4256 }, { 243,4256 }, { 244,4256 }, - - { 245,4256 }, { 246,4256 }, { 247,4256 }, { 248,4256 }, { 249,4256 }, - { 250,4256 }, { 251,4256 }, { 252,4256 }, { 253,4256 }, { 254,4256 }, - { 255,4256 }, { 256,4256 }, { 0, 0 }, { 0,12260 }, { 1,4514 }, - { 2,4514 }, { 3,4514 }, { 4,4514 }, { 5,4514 }, { 6,4514 }, - { 7,4514 }, { 8,4514 }, { 9,4514 }, { 10,4514 }, { 11,4514 }, - { 12,4514 }, { 13,4514 }, { 14,4514 }, { 15,4514 }, { 16,4514 }, - { 17,4514 }, { 18,4514 }, { 19,4514 }, { 20,4514 }, { 21,4514 }, - { 22,4514 }, { 23,4514 }, { 24,4514 }, { 25,4514 }, { 26,4514 }, - { 27,4514 }, { 28,4514 }, { 29,4514 }, { 30,4514 }, { 31,4514 }, - { 32,4514 }, { 33,4514 }, { 34,4514 }, { 35,4514 }, { 36,4514 }, - - { 37,4514 }, { 38,4514 }, { 39,1090 }, { 40,4514 }, { 41,4514 }, - { 42,4514 }, { 43,4514 }, { 44,4514 }, { 45,4514 }, { 46,4514 }, - { 47,4514 }, { 48,4514 }, { 49,4514 }, { 50,4514 }, { 51,4514 }, - { 52,4514 }, { 53,4514 }, { 54,4514 }, { 55,4514 }, { 56,4514 }, - { 57,4514 }, { 58,4514 }, { 59,4514 }, { 60,4514 }, { 61,4514 }, - { 62,4514 }, { 63,4514 }, { 64,4514 }, { 65,4514 }, { 66,4514 }, - { 67,4514 }, { 68,4514 }, { 69,4514 }, { 70,4514 }, { 71,4514 }, - { 72,4514 }, { 73,4514 }, { 74,4514 }, { 75,4514 }, { 76,4514 }, - { 77,4514 }, { 78,4514 }, { 79,4514 }, { 80,4514 }, { 81,4514 }, - { 82,4514 }, { 83,4514 }, { 84,4514 }, { 85,4514 }, { 86,4514 }, - - { 87,4514 }, { 88,4514 }, { 89,4514 }, { 90,4514 }, { 91,4514 }, - { 92,4514 }, { 93,4514 }, { 94,4514 }, { 95,4514 }, { 96,4514 }, - { 97,4514 }, { 98,4514 }, { 99,4514 }, { 100,4514 }, { 101,4514 }, - { 102,4514 }, { 103,4514 }, { 104,4514 }, { 105,4514 }, { 106,4514 }, - { 107,4514 }, { 108,4514 }, { 109,4514 }, { 110,4514 }, { 111,4514 }, - { 112,4514 }, { 113,4514 }, { 114,4514 }, { 115,4514 }, { 116,4514 }, - { 117,4514 }, { 118,4514 }, { 119,4514 }, { 120,4514 }, { 121,4514 }, - { 122,4514 }, { 123,4514 }, { 124,4514 }, { 125,4514 }, { 126,4514 }, - { 127,4514 }, { 128,4514 }, { 129,4514 }, { 130,4514 }, { 131,4514 }, - { 132,4514 }, { 133,4514 }, { 134,4514 }, { 135,4514 }, { 136,4514 }, - - { 137,4514 }, { 138,4514 }, { 139,4514 }, { 140,4514 }, { 141,4514 }, - { 142,4514 }, { 143,4514 }, { 144,4514 }, { 145,4514 }, { 146,4514 }, - { 147,4514 }, { 148,4514 }, { 149,4514 }, { 150,4514 }, { 151,4514 }, - { 152,4514 }, { 153,4514 }, { 154,4514 }, { 155,4514 }, { 156,4514 }, - { 157,4514 }, { 158,4514 }, { 159,4514 }, { 160,4514 }, { 161,4514 }, - { 162,4514 }, { 163,4514 }, { 164,4514 }, { 165,4514 }, { 166,4514 }, - { 167,4514 }, { 168,4514 }, { 169,4514 }, { 170,4514 }, { 171,4514 }, - { 172,4514 }, { 173,4514 }, { 174,4514 }, { 175,4514 }, { 176,4514 }, - { 177,4514 }, { 178,4514 }, { 179,4514 }, { 180,4514 }, { 181,4514 }, - { 182,4514 }, { 183,4514 }, { 184,4514 }, { 185,4514 }, { 186,4514 }, - - { 187,4514 }, { 188,4514 }, { 189,4514 }, { 190,4514 }, { 191,4514 }, - { 192,4514 }, { 193,4514 }, { 194,4514 }, { 195,4514 }, { 196,4514 }, - { 197,4514 }, { 198,4514 }, { 199,4514 }, { 200,4514 }, { 201,4514 }, - { 202,4514 }, { 203,4514 }, { 204,4514 }, { 205,4514 }, { 206,4514 }, - { 207,4514 }, { 208,4514 }, { 209,4514 }, { 210,4514 }, { 211,4514 }, - { 212,4514 }, { 213,4514 }, { 214,4514 }, { 215,4514 }, { 216,4514 }, - { 217,4514 }, { 218,4514 }, { 219,4514 }, { 220,4514 }, { 221,4514 }, - { 222,4514 }, { 223,4514 }, { 224,4514 }, { 225,4514 }, { 226,4514 }, - { 227,4514 }, { 228,4514 }, { 229,4514 }, { 230,4514 }, { 231,4514 }, - { 232,4514 }, { 233,4514 }, { 234,4514 }, { 235,4514 }, { 236,4514 }, - - { 237,4514 }, { 238,4514 }, { 239,4514 }, { 240,4514 }, { 241,4514 }, - { 242,4514 }, { 243,4514 }, { 244,4514 }, { 245,4514 }, { 246,4514 }, - { 247,4514 }, { 248,4514 }, { 249,4514 }, { 250,4514 }, { 251,4514 }, - { 252,4514 }, { 253,4514 }, { 254,4514 }, { 255,4514 }, { 256,4514 }, - { 0, 0 }, { 0,12002 }, { 1,4256 }, { 2,4256 }, { 3,4256 }, - { 4,4256 }, { 5,4256 }, { 6,4256 }, { 7,4256 }, { 8,4256 }, - { 9,4256 }, { 10,4256 }, { 11,4256 }, { 12,4256 }, { 13,4256 }, - { 14,4256 }, { 15,4256 }, { 16,4256 }, { 17,4256 }, { 18,4256 }, - { 19,4256 }, { 20,4256 }, { 21,4256 }, { 22,4256 }, { 23,4256 }, - { 24,4256 }, { 25,4256 }, { 26,4256 }, { 27,4256 }, { 28,4256 }, - - { 29,4256 }, { 30,4256 }, { 31,4256 }, { 32,4256 }, { 33,4256 }, - { 34,4256 }, { 35,4256 }, { 36,4256 }, { 37,4256 }, { 38,4256 }, - { 39, 832 }, { 40,4256 }, { 41,4256 }, { 42,4256 }, { 43,4256 }, - { 44,4256 }, { 45,4256 }, { 46,4256 }, { 47,4256 }, { 48,4256 }, - { 49,4256 }, { 50,4256 }, { 51,4256 }, { 52,4256 }, { 53,4256 }, - { 54,4256 }, { 55,4256 }, { 56,4256 }, { 57,4256 }, { 58,4256 }, - { 59,4256 }, { 60,4256 }, { 61,4256 }, { 62,4256 }, { 63,4256 }, - { 64,4256 }, { 65,4256 }, { 66,4256 }, { 67,4256 }, { 68,4256 }, - { 69,4256 }, { 70,4256 }, { 71,4256 }, { 72,4256 }, { 73,4256 }, - { 74,4256 }, { 75,4256 }, { 76,4256 }, { 77,4256 }, { 78,4256 }, - - { 79,4256 }, { 80,4256 }, { 81,4256 }, { 82,4256 }, { 83,4256 }, - { 84,4256 }, { 85,4256 }, { 86,4256 }, { 87,4256 }, { 88,4256 }, - { 89,4256 }, { 90,4256 }, { 91,4256 }, { 92,4256 }, { 93,4256 }, - { 94,4256 }, { 95,4256 }, { 96,4256 }, { 97,4256 }, { 98,4256 }, - { 99,4256 }, { 100,4256 }, { 101,4256 }, { 102,4256 }, { 103,4256 }, - { 104,4256 }, { 105,4256 }, { 106,4256 }, { 107,4256 }, { 108,4256 }, - { 109,4256 }, { 110,4256 }, { 111,4256 }, { 112,4256 }, { 113,4256 }, - { 114,4256 }, { 115,4256 }, { 116,4256 }, { 117,4256 }, { 118,4256 }, - { 119,4256 }, { 120,4256 }, { 121,4256 }, { 122,4256 }, { 123,4256 }, - { 124,4256 }, { 125,4256 }, { 126,4256 }, { 127,4256 }, { 128,4256 }, - - { 129,4256 }, { 130,4256 }, { 131,4256 }, { 132,4256 }, { 133,4256 }, - { 134,4256 }, { 135,4256 }, { 136,4256 }, { 137,4256 }, { 138,4256 }, - { 139,4256 }, { 140,4256 }, { 141,4256 }, { 142,4256 }, { 143,4256 }, - { 144,4256 }, { 145,4256 }, { 146,4256 }, { 147,4256 }, { 148,4256 }, - { 149,4256 }, { 150,4256 }, { 151,4256 }, { 152,4256 }, { 153,4256 }, - { 154,4256 }, { 155,4256 }, { 156,4256 }, { 157,4256 }, { 158,4256 }, - { 159,4256 }, { 160,4256 }, { 161,4256 }, { 162,4256 }, { 163,4256 }, - { 164,4256 }, { 165,4256 }, { 166,4256 }, { 167,4256 }, { 168,4256 }, - { 169,4256 }, { 170,4256 }, { 171,4256 }, { 172,4256 }, { 173,4256 }, - { 174,4256 }, { 175,4256 }, { 176,4256 }, { 177,4256 }, { 178,4256 }, - - { 179,4256 }, { 180,4256 }, { 181,4256 }, { 182,4256 }, { 183,4256 }, - { 184,4256 }, { 185,4256 }, { 186,4256 }, { 187,4256 }, { 188,4256 }, - { 189,4256 }, { 190,4256 }, { 191,4256 }, { 192,4256 }, { 193,4256 }, - { 194,4256 }, { 195,4256 }, { 196,4256 }, { 197,4256 }, { 198,4256 }, - { 199,4256 }, { 200,4256 }, { 201,4256 }, { 202,4256 }, { 203,4256 }, - { 204,4256 }, { 205,4256 }, { 206,4256 }, { 207,4256 }, { 208,4256 }, - { 209,4256 }, { 210,4256 }, { 211,4256 }, { 212,4256 }, { 213,4256 }, - { 214,4256 }, { 215,4256 }, { 216,4256 }, { 217,4256 }, { 218,4256 }, - { 219,4256 }, { 220,4256 }, { 221,4256 }, { 222,4256 }, { 223,4256 }, - { 224,4256 }, { 225,4256 }, { 226,4256 }, { 227,4256 }, { 228,4256 }, - - { 229,4256 }, { 230,4256 }, { 231,4256 }, { 232,4256 }, { 233,4256 }, - { 234,4256 }, { 235,4256 }, { 236,4256 }, { 237,4256 }, { 238,4256 }, - { 239,4256 }, { 240,4256 }, { 241,4256 }, { 242,4256 }, { 243,4256 }, - { 244,4256 }, { 245,4256 }, { 246,4256 }, { 247,4256 }, { 248,4256 }, - { 249,4256 }, { 250,4256 }, { 251,4256 }, { 252,4256 }, { 253,4256 }, - { 254,4256 }, { 255,4256 }, { 256,4256 }, { 0, 0 }, { 0,11744 }, + { 0,17933 }, { 1,6867 }, { 2,6867 }, { 3,6867 }, { 4,6867 }, + { 5,6867 }, { 6,6867 }, { 7,6867 }, { 8,6867 }, { 9,6867 }, + { 10,7125 }, { 11,6867 }, { 12,6867 }, { 13,6867 }, { 14,6867 }, + { 15,6867 }, { 16,6867 }, { 17,6867 }, { 18,6867 }, { 19,6867 }, + { 20,6867 }, { 21,6867 }, { 22,6867 }, { 23,6867 }, { 24,6867 }, + { 25,6867 }, { 26,6867 }, { 27,6867 }, { 28,6867 }, { 29,6867 }, + { 30,6867 }, { 31,6867 }, { 32,6867 }, { 33,6867 }, { 34,6867 }, + + { 35,6867 }, { 36,6867 }, { 37,6867 }, { 38,6867 }, { 39,2645 }, + { 40,6867 }, { 41,6867 }, { 42,6867 }, { 43,6867 }, { 44,6867 }, + { 45,6867 }, { 46,6867 }, { 47,6867 }, { 48,6867 }, { 49,6867 }, + { 50,6867 }, { 51,6867 }, { 52,6867 }, { 53,6867 }, { 54,6867 }, + { 55,6867 }, { 56,6867 }, { 57,6867 }, { 58,6867 }, { 59,6867 }, + { 60,6867 }, { 61,6867 }, { 62,6867 }, { 63,6867 }, { 64,6867 }, + { 65,6867 }, { 66,6867 }, { 67,6867 }, { 68,6867 }, { 69,6867 }, + { 70,6867 }, { 71,6867 }, { 72,6867 }, { 73,6867 }, { 74,6867 }, + { 75,6867 }, { 76,6867 }, { 77,6867 }, { 78,6867 }, { 79,6867 }, + { 80,6867 }, { 81,6867 }, { 82,6867 }, { 83,6867 }, { 84,6867 }, + + { 85,6867 }, { 86,6867 }, { 87,6867 }, { 88,6867 }, { 89,6867 }, + { 90,6867 }, { 91,6867 }, { 92,7383 }, { 93,6867 }, { 94,6867 }, + { 95,6867 }, { 96,6867 }, { 97,6867 }, { 98,6867 }, { 99,6867 }, + { 100,6867 }, { 101,6867 }, { 102,6867 }, { 103,6867 }, { 104,6867 }, + { 105,6867 }, { 106,6867 }, { 107,6867 }, { 108,6867 }, { 109,6867 }, + { 110,6867 }, { 111,6867 }, { 112,6867 }, { 113,6867 }, { 114,6867 }, + { 115,6867 }, { 116,6867 }, { 117,6867 }, { 118,6867 }, { 119,6867 }, + { 120,6867 }, { 121,6867 }, { 122,6867 }, { 123,6867 }, { 124,6867 }, + { 125,6867 }, { 126,6867 }, { 127,6867 }, { 128,6867 }, { 129,6867 }, + { 130,6867 }, { 131,6867 }, { 132,6867 }, { 133,6867 }, { 134,6867 }, + + { 135,6867 }, { 136,6867 }, { 137,6867 }, { 138,6867 }, { 139,6867 }, + { 140,6867 }, { 141,6867 }, { 142,6867 }, { 143,6867 }, { 144,6867 }, + { 145,6867 }, { 146,6867 }, { 147,6867 }, { 148,6867 }, { 149,6867 }, + { 150,6867 }, { 151,6867 }, { 152,6867 }, { 153,6867 }, { 154,6867 }, + { 155,6867 }, { 156,6867 }, { 157,6867 }, { 158,6867 }, { 159,6867 }, + { 160,6867 }, { 161,6867 }, { 162,6867 }, { 163,6867 }, { 164,6867 }, + { 165,6867 }, { 166,6867 }, { 167,6867 }, { 168,6867 }, { 169,6867 }, + { 170,6867 }, { 171,6867 }, { 172,6867 }, { 173,6867 }, { 174,6867 }, + { 175,6867 }, { 176,6867 }, { 177,6867 }, { 178,6867 }, { 179,6867 }, + { 180,6867 }, { 181,6867 }, { 182,6867 }, { 183,6867 }, { 184,6867 }, + + { 185,6867 }, { 186,6867 }, { 187,6867 }, { 188,6867 }, { 189,6867 }, + { 190,6867 }, { 191,6867 }, { 192,6867 }, { 193,6867 }, { 194,6867 }, + { 195,6867 }, { 196,6867 }, { 197,6867 }, { 198,6867 }, { 199,6867 }, + { 200,6867 }, { 201,6867 }, { 202,6867 }, { 203,6867 }, { 204,6867 }, + { 205,6867 }, { 206,6867 }, { 207,6867 }, { 208,6867 }, { 209,6867 }, + { 210,6867 }, { 211,6867 }, { 212,6867 }, { 213,6867 }, { 214,6867 }, + { 215,6867 }, { 216,6867 }, { 217,6867 }, { 218,6867 }, { 219,6867 }, + { 220,6867 }, { 221,6867 }, { 222,6867 }, { 223,6867 }, { 224,6867 }, + { 225,6867 }, { 226,6867 }, { 227,6867 }, { 228,6867 }, { 229,6867 }, + { 230,6867 }, { 231,6867 }, { 232,6867 }, { 233,6867 }, { 234,6867 }, + + { 235,6867 }, { 236,6867 }, { 237,6867 }, { 238,6867 }, { 239,6867 }, + { 240,6867 }, { 241,6867 }, { 242,6867 }, { 243,6867 }, { 244,6867 }, + { 245,6867 }, { 246,6867 }, { 247,6867 }, { 248,6867 }, { 249,6867 }, + { 250,6867 }, { 251,6867 }, { 252,6867 }, { 253,6867 }, { 254,6867 }, + { 255,6867 }, { 256,6867 }, { 0, 0 }, { 0,17675 }, { 1,6609 }, + { 2,6609 }, { 3,6609 }, { 4,6609 }, { 5,6609 }, { 6,6609 }, + { 7,6609 }, { 8,6609 }, { 9,6609 }, { 10,6867 }, { 11,6609 }, + { 12,6609 }, { 13,6609 }, { 14,6609 }, { 15,6609 }, { 16,6609 }, + { 17,6609 }, { 18,6609 }, { 19,6609 }, { 20,6609 }, { 21,6609 }, + { 22,6609 }, { 23,6609 }, { 24,6609 }, { 25,6609 }, { 26,6609 }, + + { 27,6609 }, { 28,6609 }, { 29,6609 }, { 30,6609 }, { 31,6609 }, + { 32,6609 }, { 33,6609 }, { 34,6609 }, { 35,6609 }, { 36,6609 }, + { 37,6609 }, { 38,6609 }, { 39,2387 }, { 40,6609 }, { 41,6609 }, + { 42,6609 }, { 43,6609 }, { 44,6609 }, { 45,6609 }, { 46,6609 }, + { 47,6609 }, { 48,6609 }, { 49,6609 }, { 50,6609 }, { 51,6609 }, + { 52,6609 }, { 53,6609 }, { 54,6609 }, { 55,6609 }, { 56,6609 }, + { 57,6609 }, { 58,6609 }, { 59,6609 }, { 60,6609 }, { 61,6609 }, + { 62,6609 }, { 63,6609 }, { 64,6609 }, { 65,6609 }, { 66,6609 }, + { 67,6609 }, { 68,6609 }, { 69,6609 }, { 70,6609 }, { 71,6609 }, + { 72,6609 }, { 73,6609 }, { 74,6609 }, { 75,6609 }, { 76,6609 }, + + { 77,6609 }, { 78,6609 }, { 79,6609 }, { 80,6609 }, { 81,6609 }, + { 82,6609 }, { 83,6609 }, { 84,6609 }, { 85,6609 }, { 86,6609 }, + { 87,6609 }, { 88,6609 }, { 89,6609 }, { 90,6609 }, { 91,6609 }, + { 92,7125 }, { 93,6609 }, { 94,6609 }, { 95,6609 }, { 96,6609 }, + { 97,6609 }, { 98,6609 }, { 99,6609 }, { 100,6609 }, { 101,6609 }, + { 102,6609 }, { 103,6609 }, { 104,6609 }, { 105,6609 }, { 106,6609 }, + { 107,6609 }, { 108,6609 }, { 109,6609 }, { 110,6609 }, { 111,6609 }, + { 112,6609 }, { 113,6609 }, { 114,6609 }, { 115,6609 }, { 116,6609 }, + { 117,6609 }, { 118,6609 }, { 119,6609 }, { 120,6609 }, { 121,6609 }, + { 122,6609 }, { 123,6609 }, { 124,6609 }, { 125,6609 }, { 126,6609 }, + + { 127,6609 }, { 128,6609 }, { 129,6609 }, { 130,6609 }, { 131,6609 }, + { 132,6609 }, { 133,6609 }, { 134,6609 }, { 135,6609 }, { 136,6609 }, + { 137,6609 }, { 138,6609 }, { 139,6609 }, { 140,6609 }, { 141,6609 }, + { 142,6609 }, { 143,6609 }, { 144,6609 }, { 145,6609 }, { 146,6609 }, + { 147,6609 }, { 148,6609 }, { 149,6609 }, { 150,6609 }, { 151,6609 }, + { 152,6609 }, { 153,6609 }, { 154,6609 }, { 155,6609 }, { 156,6609 }, + { 157,6609 }, { 158,6609 }, { 159,6609 }, { 160,6609 }, { 161,6609 }, + { 162,6609 }, { 163,6609 }, { 164,6609 }, { 165,6609 }, { 166,6609 }, + { 167,6609 }, { 168,6609 }, { 169,6609 }, { 170,6609 }, { 171,6609 }, + { 172,6609 }, { 173,6609 }, { 174,6609 }, { 175,6609 }, { 176,6609 }, + + { 177,6609 }, { 178,6609 }, { 179,6609 }, { 180,6609 }, { 181,6609 }, + { 182,6609 }, { 183,6609 }, { 184,6609 }, { 185,6609 }, { 186,6609 }, + { 187,6609 }, { 188,6609 }, { 189,6609 }, { 190,6609 }, { 191,6609 }, + { 192,6609 }, { 193,6609 }, { 194,6609 }, { 195,6609 }, { 196,6609 }, + { 197,6609 }, { 198,6609 }, { 199,6609 }, { 200,6609 }, { 201,6609 }, + { 202,6609 }, { 203,6609 }, { 204,6609 }, { 205,6609 }, { 206,6609 }, + { 207,6609 }, { 208,6609 }, { 209,6609 }, { 210,6609 }, { 211,6609 }, + { 212,6609 }, { 213,6609 }, { 214,6609 }, { 215,6609 }, { 216,6609 }, + { 217,6609 }, { 218,6609 }, { 219,6609 }, { 220,6609 }, { 221,6609 }, + { 222,6609 }, { 223,6609 }, { 224,6609 }, { 225,6609 }, { 226,6609 }, + + { 227,6609 }, { 228,6609 }, { 229,6609 }, { 230,6609 }, { 231,6609 }, + { 232,6609 }, { 233,6609 }, { 234,6609 }, { 235,6609 }, { 236,6609 }, + { 237,6609 }, { 238,6609 }, { 239,6609 }, { 240,6609 }, { 241,6609 }, + { 242,6609 }, { 243,6609 }, { 244,6609 }, { 245,6609 }, { 246,6609 }, + { 247,6609 }, { 248,6609 }, { 249,6609 }, { 250,6609 }, { 251,6609 }, + { 252,6609 }, { 253,6609 }, { 254,6609 }, { 255,6609 }, { 256,6609 }, + { 0, 0 }, { 0,17417 }, { 1,7125 }, { 2,7125 }, { 3,7125 }, + { 4,7125 }, { 5,7125 }, { 6,7125 }, { 7,7125 }, { 8,7125 }, + { 9,7125 }, { 10,7383 }, { 11,7125 }, { 12,7125 }, { 13,7125 }, + { 14,7125 }, { 15,7125 }, { 16,7125 }, { 17,7125 }, { 18,7125 }, + + { 19,7125 }, { 20,7125 }, { 21,7125 }, { 22,7125 }, { 23,7125 }, + { 24,7125 }, { 25,7125 }, { 26,7125 }, { 27,7125 }, { 28,7125 }, + { 29,7125 }, { 30,7125 }, { 31,7125 }, { 32,7125 }, { 33,7125 }, + { 34,7125 }, { 35,7125 }, { 36,7641 }, { 37,7125 }, { 38,7125 }, + { 39,7125 }, { 40,7125 }, { 41,7125 }, { 42,7125 }, { 43,7125 }, + { 44,7125 }, { 45,7125 }, { 46,7125 }, { 47,7125 }, { 48,7125 }, + { 49,7125 }, { 50,7125 }, { 51,7125 }, { 52,7125 }, { 53,7125 }, + { 54,7125 }, { 55,7125 }, { 56,7125 }, { 57,7125 }, { 58,7125 }, + { 59,7125 }, { 60,7125 }, { 61,7125 }, { 62,7125 }, { 63,7125 }, + { 64,7125 }, { 65,7125 }, { 66,7125 }, { 67,7125 }, { 68,7125 }, + + { 69,7125 }, { 70,7125 }, { 71,7125 }, { 72,7125 }, { 73,7125 }, + { 74,7125 }, { 75,7125 }, { 76,7125 }, { 77,7125 }, { 78,7125 }, + { 79,7125 }, { 80,7125 }, { 81,7125 }, { 82,7125 }, { 83,7125 }, + { 84,7125 }, { 85,7125 }, { 86,7125 }, { 87,7125 }, { 88,7125 }, + { 89,7125 }, { 90,7125 }, { 91,7125 }, { 92,7125 }, { 93,7125 }, + { 94,7125 }, { 95,7125 }, { 96,7125 }, { 97,7125 }, { 98,7125 }, + { 99,7125 }, { 100,7125 }, { 101,7125 }, { 102,7125 }, { 103,7125 }, + { 104,7125 }, { 105,7125 }, { 106,7125 }, { 107,7125 }, { 108,7125 }, + { 109,7125 }, { 110,7125 }, { 111,7125 }, { 112,7125 }, { 113,7125 }, + { 114,7125 }, { 115,7125 }, { 116,7125 }, { 117,7125 }, { 118,7125 }, + + { 119,7125 }, { 120,7125 }, { 121,7125 }, { 122,7125 }, { 123,7125 }, + { 124,7125 }, { 125,7125 }, { 126,7125 }, { 127,7125 }, { 128,7125 }, + { 129,7125 }, { 130,7125 }, { 131,7125 }, { 132,7125 }, { 133,7125 }, + { 134,7125 }, { 135,7125 }, { 136,7125 }, { 137,7125 }, { 138,7125 }, + { 139,7125 }, { 140,7125 }, { 141,7125 }, { 142,7125 }, { 143,7125 }, + { 144,7125 }, { 145,7125 }, { 146,7125 }, { 147,7125 }, { 148,7125 }, + { 149,7125 }, { 150,7125 }, { 151,7125 }, { 152,7125 }, { 153,7125 }, + { 154,7125 }, { 155,7125 }, { 156,7125 }, { 157,7125 }, { 158,7125 }, + { 159,7125 }, { 160,7125 }, { 161,7125 }, { 162,7125 }, { 163,7125 }, + { 164,7125 }, { 165,7125 }, { 166,7125 }, { 167,7125 }, { 168,7125 }, + + { 169,7125 }, { 170,7125 }, { 171,7125 }, { 172,7125 }, { 173,7125 }, + { 174,7125 }, { 175,7125 }, { 176,7125 }, { 177,7125 }, { 178,7125 }, + { 179,7125 }, { 180,7125 }, { 181,7125 }, { 182,7125 }, { 183,7125 }, + { 184,7125 }, { 185,7125 }, { 186,7125 }, { 187,7125 }, { 188,7125 }, + { 189,7125 }, { 190,7125 }, { 191,7125 }, { 192,7125 }, { 193,7125 }, + { 194,7125 }, { 195,7125 }, { 196,7125 }, { 197,7125 }, { 198,7125 }, + { 199,7125 }, { 200,7125 }, { 201,7125 }, { 202,7125 }, { 203,7125 }, + { 204,7125 }, { 205,7125 }, { 206,7125 }, { 207,7125 }, { 208,7125 }, + { 209,7125 }, { 210,7125 }, { 211,7125 }, { 212,7125 }, { 213,7125 }, + { 214,7125 }, { 215,7125 }, { 216,7125 }, { 217,7125 }, { 218,7125 }, + + { 219,7125 }, { 220,7125 }, { 221,7125 }, { 222,7125 }, { 223,7125 }, + { 224,7125 }, { 225,7125 }, { 226,7125 }, { 227,7125 }, { 228,7125 }, + { 229,7125 }, { 230,7125 }, { 231,7125 }, { 232,7125 }, { 233,7125 }, + { 234,7125 }, { 235,7125 }, { 236,7125 }, { 237,7125 }, { 238,7125 }, + { 239,7125 }, { 240,7125 }, { 241,7125 }, { 242,7125 }, { 243,7125 }, + { 244,7125 }, { 245,7125 }, { 246,7125 }, { 247,7125 }, { 248,7125 }, + { 249,7125 }, { 250,7125 }, { 251,7125 }, { 252,7125 }, { 253,7125 }, + { 254,7125 }, { 255,7125 }, { 256,7125 }, { 0, 0 }, { 0,17159 }, + { 1,6867 }, { 2,6867 }, { 3,6867 }, { 4,6867 }, { 5,6867 }, + { 6,6867 }, { 7,6867 }, { 8,6867 }, { 9,6867 }, { 10,7125 }, + + { 11,6867 }, { 12,6867 }, { 13,6867 }, { 14,6867 }, { 15,6867 }, + { 16,6867 }, { 17,6867 }, { 18,6867 }, { 19,6867 }, { 20,6867 }, + { 21,6867 }, { 22,6867 }, { 23,6867 }, { 24,6867 }, { 25,6867 }, + { 26,6867 }, { 27,6867 }, { 28,6867 }, { 29,6867 }, { 30,6867 }, + { 31,6867 }, { 32,6867 }, { 33,6867 }, { 34,6867 }, { 35,6867 }, + { 36,7383 }, { 37,6867 }, { 38,6867 }, { 39,6867 }, { 40,6867 }, + { 41,6867 }, { 42,6867 }, { 43,6867 }, { 44,6867 }, { 45,6867 }, + { 46,6867 }, { 47,6867 }, { 48,6867 }, { 49,6867 }, { 50,6867 }, + { 51,6867 }, { 52,6867 }, { 53,6867 }, { 54,6867 }, { 55,6867 }, + { 56,6867 }, { 57,6867 }, { 58,6867 }, { 59,6867 }, { 60,6867 }, + + { 61,6867 }, { 62,6867 }, { 63,6867 }, { 64,6867 }, { 65,6867 }, + { 66,6867 }, { 67,6867 }, { 68,6867 }, { 69,6867 }, { 70,6867 }, + { 71,6867 }, { 72,6867 }, { 73,6867 }, { 74,6867 }, { 75,6867 }, + { 76,6867 }, { 77,6867 }, { 78,6867 }, { 79,6867 }, { 80,6867 }, + { 81,6867 }, { 82,6867 }, { 83,6867 }, { 84,6867 }, { 85,6867 }, + { 86,6867 }, { 87,6867 }, { 88,6867 }, { 89,6867 }, { 90,6867 }, + { 91,6867 }, { 92,6867 }, { 93,6867 }, { 94,6867 }, { 95,6867 }, + { 96,6867 }, { 97,6867 }, { 98,6867 }, { 99,6867 }, { 100,6867 }, + { 101,6867 }, { 102,6867 }, { 103,6867 }, { 104,6867 }, { 105,6867 }, + { 106,6867 }, { 107,6867 }, { 108,6867 }, { 109,6867 }, { 110,6867 }, + + { 111,6867 }, { 112,6867 }, { 113,6867 }, { 114,6867 }, { 115,6867 }, + { 116,6867 }, { 117,6867 }, { 118,6867 }, { 119,6867 }, { 120,6867 }, + { 121,6867 }, { 122,6867 }, { 123,6867 }, { 124,6867 }, { 125,6867 }, + { 126,6867 }, { 127,6867 }, { 128,6867 }, { 129,6867 }, { 130,6867 }, + { 131,6867 }, { 132,6867 }, { 133,6867 }, { 134,6867 }, { 135,6867 }, + { 136,6867 }, { 137,6867 }, { 138,6867 }, { 139,6867 }, { 140,6867 }, + { 141,6867 }, { 142,6867 }, { 143,6867 }, { 144,6867 }, { 145,6867 }, + { 146,6867 }, { 147,6867 }, { 148,6867 }, { 149,6867 }, { 150,6867 }, + { 151,6867 }, { 152,6867 }, { 153,6867 }, { 154,6867 }, { 155,6867 }, + { 156,6867 }, { 157,6867 }, { 158,6867 }, { 159,6867 }, { 160,6867 }, + + { 161,6867 }, { 162,6867 }, { 163,6867 }, { 164,6867 }, { 165,6867 }, + { 166,6867 }, { 167,6867 }, { 168,6867 }, { 169,6867 }, { 170,6867 }, + { 171,6867 }, { 172,6867 }, { 173,6867 }, { 174,6867 }, { 175,6867 }, + { 176,6867 }, { 177,6867 }, { 178,6867 }, { 179,6867 }, { 180,6867 }, + { 181,6867 }, { 182,6867 }, { 183,6867 }, { 184,6867 }, { 185,6867 }, + { 186,6867 }, { 187,6867 }, { 188,6867 }, { 189,6867 }, { 190,6867 }, + { 191,6867 }, { 192,6867 }, { 193,6867 }, { 194,6867 }, { 195,6867 }, + { 196,6867 }, { 197,6867 }, { 198,6867 }, { 199,6867 }, { 200,6867 }, + { 201,6867 }, { 202,6867 }, { 203,6867 }, { 204,6867 }, { 205,6867 }, + { 206,6867 }, { 207,6867 }, { 208,6867 }, { 209,6867 }, { 210,6867 }, + + { 211,6867 }, { 212,6867 }, { 213,6867 }, { 214,6867 }, { 215,6867 }, + { 216,6867 }, { 217,6867 }, { 218,6867 }, { 219,6867 }, { 220,6867 }, + { 221,6867 }, { 222,6867 }, { 223,6867 }, { 224,6867 }, { 225,6867 }, + { 226,6867 }, { 227,6867 }, { 228,6867 }, { 229,6867 }, { 230,6867 }, + { 231,6867 }, { 232,6867 }, { 233,6867 }, { 234,6867 }, { 235,6867 }, + { 236,6867 }, { 237,6867 }, { 238,6867 }, { 239,6867 }, { 240,6867 }, + { 241,6867 }, { 242,6867 }, { 243,6867 }, { 244,6867 }, { 245,6867 }, + { 246,6867 }, { 247,6867 }, { 248,6867 }, { 249,6867 }, { 250,6867 }, + { 251,6867 }, { 252,6867 }, { 253,6867 }, { 254,6867 }, { 255,6867 }, + { 256,6867 }, { 0, 0 }, { 0,16901 }, { 1,4993 }, { 2,4993 }, + + { 3,4993 }, { 4,4993 }, { 5,4993 }, { 6,4993 }, { 7,4993 }, + { 8,4993 }, { 9,4993 }, { 10,4993 }, { 11,4993 }, { 12,4993 }, + { 13,4993 }, { 14,4993 }, { 15,4993 }, { 16,4993 }, { 17,4993 }, + { 18,4993 }, { 19,4993 }, { 20,4993 }, { 21,4993 }, { 22,4993 }, + { 23,4993 }, { 24,4993 }, { 25,4993 }, { 26,4993 }, { 27,4993 }, + { 28,4993 }, { 29,4993 }, { 30,4993 }, { 31,4993 }, { 32,4993 }, + { 33,4993 }, { 34,1615 }, { 35,4993 }, { 36,4993 }, { 37,4993 }, + { 38,4993 }, { 39,4993 }, { 40,4993 }, { 41,4993 }, { 42,4993 }, + { 43,4993 }, { 44,4993 }, { 45,4993 }, { 46,4993 }, { 47,4993 }, + { 48,4993 }, { 49,4993 }, { 50,4993 }, { 51,4993 }, { 52,4993 }, + + { 53,4993 }, { 54,4993 }, { 55,4993 }, { 56,4993 }, { 57,4993 }, + { 58,4993 }, { 59,4993 }, { 60,4993 }, { 61,4993 }, { 62,4993 }, + { 63,4993 }, { 64,4993 }, { 65,4993 }, { 66,4993 }, { 67,4993 }, + { 68,4993 }, { 69,4993 }, { 70,4993 }, { 71,4993 }, { 72,4993 }, + { 73,4993 }, { 74,4993 }, { 75,4993 }, { 76,4993 }, { 77,4993 }, + { 78,4993 }, { 79,4993 }, { 80,4993 }, { 81,4993 }, { 82,4993 }, + { 83,4993 }, { 84,4993 }, { 85,4993 }, { 86,4993 }, { 87,4993 }, + { 88,4993 }, { 89,4993 }, { 90,4993 }, { 91,4993 }, { 92,4993 }, + { 93,4993 }, { 94,4993 }, { 95,4993 }, { 96,4993 }, { 97,4993 }, + { 98,4993 }, { 99,4993 }, { 100,4993 }, { 101,4993 }, { 102,4993 }, + + { 103,4993 }, { 104,4993 }, { 105,4993 }, { 106,4993 }, { 107,4993 }, + { 108,4993 }, { 109,4993 }, { 110,4993 }, { 111,4993 }, { 112,4993 }, + { 113,4993 }, { 114,4993 }, { 115,4993 }, { 116,4993 }, { 117,4993 }, + { 118,4993 }, { 119,4993 }, { 120,4993 }, { 121,4993 }, { 122,4993 }, + { 123,4993 }, { 124,4993 }, { 125,4993 }, { 126,4993 }, { 127,4993 }, + { 128,4993 }, { 129,4993 }, { 130,4993 }, { 131,4993 }, { 132,4993 }, + { 133,4993 }, { 134,4993 }, { 135,4993 }, { 136,4993 }, { 137,4993 }, + { 138,4993 }, { 139,4993 }, { 140,4993 }, { 141,4993 }, { 142,4993 }, + { 143,4993 }, { 144,4993 }, { 145,4993 }, { 146,4993 }, { 147,4993 }, + { 148,4993 }, { 149,4993 }, { 150,4993 }, { 151,4993 }, { 152,4993 }, + + { 153,4993 }, { 154,4993 }, { 155,4993 }, { 156,4993 }, { 157,4993 }, + { 158,4993 }, { 159,4993 }, { 160,4993 }, { 161,4993 }, { 162,4993 }, + { 163,4993 }, { 164,4993 }, { 165,4993 }, { 166,4993 }, { 167,4993 }, + { 168,4993 }, { 169,4993 }, { 170,4993 }, { 171,4993 }, { 172,4993 }, + { 173,4993 }, { 174,4993 }, { 175,4993 }, { 176,4993 }, { 177,4993 }, + { 178,4993 }, { 179,4993 }, { 180,4993 }, { 181,4993 }, { 182,4993 }, + { 183,4993 }, { 184,4993 }, { 185,4993 }, { 186,4993 }, { 187,4993 }, + { 188,4993 }, { 189,4993 }, { 190,4993 }, { 191,4993 }, { 192,4993 }, + { 193,4993 }, { 194,4993 }, { 195,4993 }, { 196,4993 }, { 197,4993 }, + { 198,4993 }, { 199,4993 }, { 200,4993 }, { 201,4993 }, { 202,4993 }, + + { 203,4993 }, { 204,4993 }, { 205,4993 }, { 206,4993 }, { 207,4993 }, + { 208,4993 }, { 209,4993 }, { 210,4993 }, { 211,4993 }, { 212,4993 }, + { 213,4993 }, { 214,4993 }, { 215,4993 }, { 216,4993 }, { 217,4993 }, + { 218,4993 }, { 219,4993 }, { 220,4993 }, { 221,4993 }, { 222,4993 }, + { 223,4993 }, { 224,4993 }, { 225,4993 }, { 226,4993 }, { 227,4993 }, + { 228,4993 }, { 229,4993 }, { 230,4993 }, { 231,4993 }, { 232,4993 }, + { 233,4993 }, { 234,4993 }, { 235,4993 }, { 236,4993 }, { 237,4993 }, + { 238,4993 }, { 239,4993 }, { 240,4993 }, { 241,4993 }, { 242,4993 }, + { 243,4993 }, { 244,4993 }, { 245,4993 }, { 246,4993 }, { 247,4993 }, + { 248,4993 }, { 249,4993 }, { 250,4993 }, { 251,4993 }, { 252,4993 }, + + { 253,4993 }, { 254,4993 }, { 255,4993 }, { 256,4993 }, { 0, 0 }, + { 0,16643 }, { 1,4735 }, { 2,4735 }, { 3,4735 }, { 4,4735 }, + { 5,4735 }, { 6,4735 }, { 7,4735 }, { 8,4735 }, { 9,4735 }, + { 10,4735 }, { 11,4735 }, { 12,4735 }, { 13,4735 }, { 14,4735 }, + { 15,4735 }, { 16,4735 }, { 17,4735 }, { 18,4735 }, { 19,4735 }, + { 20,4735 }, { 21,4735 }, { 22,4735 }, { 23,4735 }, { 24,4735 }, + { 25,4735 }, { 26,4735 }, { 27,4735 }, { 28,4735 }, { 29,4735 }, + { 30,4735 }, { 31,4735 }, { 32,4735 }, { 33,4735 }, { 34,1357 }, + { 35,4735 }, { 36,4735 }, { 37,4735 }, { 38,4735 }, { 39,4735 }, + { 40,4735 }, { 41,4735 }, { 42,4735 }, { 43,4735 }, { 44,4735 }, + + { 45,4735 }, { 46,4735 }, { 47,4735 }, { 48,4735 }, { 49,4735 }, + { 50,4735 }, { 51,4735 }, { 52,4735 }, { 53,4735 }, { 54,4735 }, + { 55,4735 }, { 56,4735 }, { 57,4735 }, { 58,4735 }, { 59,4735 }, + { 60,4735 }, { 61,4735 }, { 62,4735 }, { 63,4735 }, { 64,4735 }, + { 65,4735 }, { 66,4735 }, { 67,4735 }, { 68,4735 }, { 69,4735 }, + { 70,4735 }, { 71,4735 }, { 72,4735 }, { 73,4735 }, { 74,4735 }, + { 75,4735 }, { 76,4735 }, { 77,4735 }, { 78,4735 }, { 79,4735 }, + { 80,4735 }, { 81,4735 }, { 82,4735 }, { 83,4735 }, { 84,4735 }, + { 85,4735 }, { 86,4735 }, { 87,4735 }, { 88,4735 }, { 89,4735 }, + { 90,4735 }, { 91,4735 }, { 92,4735 }, { 93,4735 }, { 94,4735 }, + + { 95,4735 }, { 96,4735 }, { 97,4735 }, { 98,4735 }, { 99,4735 }, + { 100,4735 }, { 101,4735 }, { 102,4735 }, { 103,4735 }, { 104,4735 }, + { 105,4735 }, { 106,4735 }, { 107,4735 }, { 108,4735 }, { 109,4735 }, + { 110,4735 }, { 111,4735 }, { 112,4735 }, { 113,4735 }, { 114,4735 }, + { 115,4735 }, { 116,4735 }, { 117,4735 }, { 118,4735 }, { 119,4735 }, + { 120,4735 }, { 121,4735 }, { 122,4735 }, { 123,4735 }, { 124,4735 }, + { 125,4735 }, { 126,4735 }, { 127,4735 }, { 128,4735 }, { 129,4735 }, + { 130,4735 }, { 131,4735 }, { 132,4735 }, { 133,4735 }, { 134,4735 }, + { 135,4735 }, { 136,4735 }, { 137,4735 }, { 138,4735 }, { 139,4735 }, + { 140,4735 }, { 141,4735 }, { 142,4735 }, { 143,4735 }, { 144,4735 }, + + { 145,4735 }, { 146,4735 }, { 147,4735 }, { 148,4735 }, { 149,4735 }, + { 150,4735 }, { 151,4735 }, { 152,4735 }, { 153,4735 }, { 154,4735 }, + { 155,4735 }, { 156,4735 }, { 157,4735 }, { 158,4735 }, { 159,4735 }, + { 160,4735 }, { 161,4735 }, { 162,4735 }, { 163,4735 }, { 164,4735 }, + { 165,4735 }, { 166,4735 }, { 167,4735 }, { 168,4735 }, { 169,4735 }, + { 170,4735 }, { 171,4735 }, { 172,4735 }, { 173,4735 }, { 174,4735 }, + { 175,4735 }, { 176,4735 }, { 177,4735 }, { 178,4735 }, { 179,4735 }, + { 180,4735 }, { 181,4735 }, { 182,4735 }, { 183,4735 }, { 184,4735 }, + { 185,4735 }, { 186,4735 }, { 187,4735 }, { 188,4735 }, { 189,4735 }, + { 190,4735 }, { 191,4735 }, { 192,4735 }, { 193,4735 }, { 194,4735 }, + + { 195,4735 }, { 196,4735 }, { 197,4735 }, { 198,4735 }, { 199,4735 }, + { 200,4735 }, { 201,4735 }, { 202,4735 }, { 203,4735 }, { 204,4735 }, + { 205,4735 }, { 206,4735 }, { 207,4735 }, { 208,4735 }, { 209,4735 }, + { 210,4735 }, { 211,4735 }, { 212,4735 }, { 213,4735 }, { 214,4735 }, + { 215,4735 }, { 216,4735 }, { 217,4735 }, { 218,4735 }, { 219,4735 }, + { 220,4735 }, { 221,4735 }, { 222,4735 }, { 223,4735 }, { 224,4735 }, + { 225,4735 }, { 226,4735 }, { 227,4735 }, { 228,4735 }, { 229,4735 }, + { 230,4735 }, { 231,4735 }, { 232,4735 }, { 233,4735 }, { 234,4735 }, + { 235,4735 }, { 236,4735 }, { 237,4735 }, { 238,4735 }, { 239,4735 }, + { 240,4735 }, { 241,4735 }, { 242,4735 }, { 243,4735 }, { 244,4735 }, + + { 245,4735 }, { 246,4735 }, { 247,4735 }, { 248,4735 }, { 249,4735 }, + { 250,4735 }, { 251,4735 }, { 252,4735 }, { 253,4735 }, { 254,4735 }, + { 255,4735 }, { 256,4735 }, { 0, 0 }, { 0,16385 }, { 1,4993 }, + { 2,4993 }, { 3,4993 }, { 4,4993 }, { 5,4993 }, { 6,4993 }, + { 7,4993 }, { 8,4993 }, { 9,4993 }, { 10,4993 }, { 11,4993 }, + { 12,4993 }, { 13,4993 }, { 14,4993 }, { 15,4993 }, { 16,4993 }, + { 17,4993 }, { 18,4993 }, { 19,4993 }, { 20,4993 }, { 21,4993 }, + { 22,4993 }, { 23,4993 }, { 24,4993 }, { 25,4993 }, { 26,4993 }, + { 27,4993 }, { 28,4993 }, { 29,4993 }, { 30,4993 }, { 31,4993 }, + { 32,4993 }, { 33,4993 }, { 34,4993 }, { 35,4993 }, { 36,4993 }, + + { 37,4993 }, { 38,4993 }, { 39,1090 }, { 40,4993 }, { 41,4993 }, + { 42,4993 }, { 43,4993 }, { 44,4993 }, { 45,4993 }, { 46,4993 }, + { 47,4993 }, { 48,4993 }, { 49,4993 }, { 50,4993 }, { 51,4993 }, + { 52,4993 }, { 53,4993 }, { 54,4993 }, { 55,4993 }, { 56,4993 }, + { 57,4993 }, { 58,4993 }, { 59,4993 }, { 60,4993 }, { 61,4993 }, + { 62,4993 }, { 63,4993 }, { 64,4993 }, { 65,4993 }, { 66,4993 }, + { 67,4993 }, { 68,4993 }, { 69,4993 }, { 70,4993 }, { 71,4993 }, + { 72,4993 }, { 73,4993 }, { 74,4993 }, { 75,4993 }, { 76,4993 }, + { 77,4993 }, { 78,4993 }, { 79,4993 }, { 80,4993 }, { 81,4993 }, + { 82,4993 }, { 83,4993 }, { 84,4993 }, { 85,4993 }, { 86,4993 }, + + { 87,4993 }, { 88,4993 }, { 89,4993 }, { 90,4993 }, { 91,4993 }, + { 92,4993 }, { 93,4993 }, { 94,4993 }, { 95,4993 }, { 96,4993 }, + { 97,4993 }, { 98,4993 }, { 99,4993 }, { 100,4993 }, { 101,4993 }, + { 102,4993 }, { 103,4993 }, { 104,4993 }, { 105,4993 }, { 106,4993 }, + { 107,4993 }, { 108,4993 }, { 109,4993 }, { 110,4993 }, { 111,4993 }, + { 112,4993 }, { 113,4993 }, { 114,4993 }, { 115,4993 }, { 116,4993 }, + { 117,4993 }, { 118,4993 }, { 119,4993 }, { 120,4993 }, { 121,4993 }, + { 122,4993 }, { 123,4993 }, { 124,4993 }, { 125,4993 }, { 126,4993 }, + { 127,4993 }, { 128,4993 }, { 129,4993 }, { 130,4993 }, { 131,4993 }, + { 132,4993 }, { 133,4993 }, { 134,4993 }, { 135,4993 }, { 136,4993 }, + + { 137,4993 }, { 138,4993 }, { 139,4993 }, { 140,4993 }, { 141,4993 }, + { 142,4993 }, { 143,4993 }, { 144,4993 }, { 145,4993 }, { 146,4993 }, + { 147,4993 }, { 148,4993 }, { 149,4993 }, { 150,4993 }, { 151,4993 }, + { 152,4993 }, { 153,4993 }, { 154,4993 }, { 155,4993 }, { 156,4993 }, + { 157,4993 }, { 158,4993 }, { 159,4993 }, { 160,4993 }, { 161,4993 }, + { 162,4993 }, { 163,4993 }, { 164,4993 }, { 165,4993 }, { 166,4993 }, + { 167,4993 }, { 168,4993 }, { 169,4993 }, { 170,4993 }, { 171,4993 }, + { 172,4993 }, { 173,4993 }, { 174,4993 }, { 175,4993 }, { 176,4993 }, + { 177,4993 }, { 178,4993 }, { 179,4993 }, { 180,4993 }, { 181,4993 }, + { 182,4993 }, { 183,4993 }, { 184,4993 }, { 185,4993 }, { 186,4993 }, + + { 187,4993 }, { 188,4993 }, { 189,4993 }, { 190,4993 }, { 191,4993 }, + { 192,4993 }, { 193,4993 }, { 194,4993 }, { 195,4993 }, { 196,4993 }, + { 197,4993 }, { 198,4993 }, { 199,4993 }, { 200,4993 }, { 201,4993 }, + { 202,4993 }, { 203,4993 }, { 204,4993 }, { 205,4993 }, { 206,4993 }, + { 207,4993 }, { 208,4993 }, { 209,4993 }, { 210,4993 }, { 211,4993 }, + { 212,4993 }, { 213,4993 }, { 214,4993 }, { 215,4993 }, { 216,4993 }, + { 217,4993 }, { 218,4993 }, { 219,4993 }, { 220,4993 }, { 221,4993 }, + { 222,4993 }, { 223,4993 }, { 224,4993 }, { 225,4993 }, { 226,4993 }, + { 227,4993 }, { 228,4993 }, { 229,4993 }, { 230,4993 }, { 231,4993 }, + { 232,4993 }, { 233,4993 }, { 234,4993 }, { 235,4993 }, { 236,4993 }, + + { 237,4993 }, { 238,4993 }, { 239,4993 }, { 240,4993 }, { 241,4993 }, + { 242,4993 }, { 243,4993 }, { 244,4993 }, { 245,4993 }, { 246,4993 }, + { 247,4993 }, { 248,4993 }, { 249,4993 }, { 250,4993 }, { 251,4993 }, + { 252,4993 }, { 253,4993 }, { 254,4993 }, { 255,4993 }, { 256,4993 }, + { 0, 0 }, { 0,16127 }, { 1,4735 }, { 2,4735 }, { 3,4735 }, + { 4,4735 }, { 5,4735 }, { 6,4735 }, { 7,4735 }, { 8,4735 }, + { 9,4735 }, { 10,4735 }, { 11,4735 }, { 12,4735 }, { 13,4735 }, + { 14,4735 }, { 15,4735 }, { 16,4735 }, { 17,4735 }, { 18,4735 }, + { 19,4735 }, { 20,4735 }, { 21,4735 }, { 22,4735 }, { 23,4735 }, + { 24,4735 }, { 25,4735 }, { 26,4735 }, { 27,4735 }, { 28,4735 }, + + { 29,4735 }, { 30,4735 }, { 31,4735 }, { 32,4735 }, { 33,4735 }, + { 34,4735 }, { 35,4735 }, { 36,4735 }, { 37,4735 }, { 38,4735 }, + { 39, 832 }, { 40,4735 }, { 41,4735 }, { 42,4735 }, { 43,4735 }, + { 44,4735 }, { 45,4735 }, { 46,4735 }, { 47,4735 }, { 48,4735 }, + { 49,4735 }, { 50,4735 }, { 51,4735 }, { 52,4735 }, { 53,4735 }, + { 54,4735 }, { 55,4735 }, { 56,4735 }, { 57,4735 }, { 58,4735 }, + { 59,4735 }, { 60,4735 }, { 61,4735 }, { 62,4735 }, { 63,4735 }, + { 64,4735 }, { 65,4735 }, { 66,4735 }, { 67,4735 }, { 68,4735 }, + { 69,4735 }, { 70,4735 }, { 71,4735 }, { 72,4735 }, { 73,4735 }, + { 74,4735 }, { 75,4735 }, { 76,4735 }, { 77,4735 }, { 78,4735 }, + + { 79,4735 }, { 80,4735 }, { 81,4735 }, { 82,4735 }, { 83,4735 }, + { 84,4735 }, { 85,4735 }, { 86,4735 }, { 87,4735 }, { 88,4735 }, + { 89,4735 }, { 90,4735 }, { 91,4735 }, { 92,4735 }, { 93,4735 }, + { 94,4735 }, { 95,4735 }, { 96,4735 }, { 97,4735 }, { 98,4735 }, + { 99,4735 }, { 100,4735 }, { 101,4735 }, { 102,4735 }, { 103,4735 }, + { 104,4735 }, { 105,4735 }, { 106,4735 }, { 107,4735 }, { 108,4735 }, + { 109,4735 }, { 110,4735 }, { 111,4735 }, { 112,4735 }, { 113,4735 }, + { 114,4735 }, { 115,4735 }, { 116,4735 }, { 117,4735 }, { 118,4735 }, + { 119,4735 }, { 120,4735 }, { 121,4735 }, { 122,4735 }, { 123,4735 }, + { 124,4735 }, { 125,4735 }, { 126,4735 }, { 127,4735 }, { 128,4735 }, + + { 129,4735 }, { 130,4735 }, { 131,4735 }, { 132,4735 }, { 133,4735 }, + { 134,4735 }, { 135,4735 }, { 136,4735 }, { 137,4735 }, { 138,4735 }, + { 139,4735 }, { 140,4735 }, { 141,4735 }, { 142,4735 }, { 143,4735 }, + { 144,4735 }, { 145,4735 }, { 146,4735 }, { 147,4735 }, { 148,4735 }, + { 149,4735 }, { 150,4735 }, { 151,4735 }, { 152,4735 }, { 153,4735 }, + { 154,4735 }, { 155,4735 }, { 156,4735 }, { 157,4735 }, { 158,4735 }, + { 159,4735 }, { 160,4735 }, { 161,4735 }, { 162,4735 }, { 163,4735 }, + { 164,4735 }, { 165,4735 }, { 166,4735 }, { 167,4735 }, { 168,4735 }, + { 169,4735 }, { 170,4735 }, { 171,4735 }, { 172,4735 }, { 173,4735 }, + { 174,4735 }, { 175,4735 }, { 176,4735 }, { 177,4735 }, { 178,4735 }, + + { 179,4735 }, { 180,4735 }, { 181,4735 }, { 182,4735 }, { 183,4735 }, + { 184,4735 }, { 185,4735 }, { 186,4735 }, { 187,4735 }, { 188,4735 }, + { 189,4735 }, { 190,4735 }, { 191,4735 }, { 192,4735 }, { 193,4735 }, + { 194,4735 }, { 195,4735 }, { 196,4735 }, { 197,4735 }, { 198,4735 }, + { 199,4735 }, { 200,4735 }, { 201,4735 }, { 202,4735 }, { 203,4735 }, + { 204,4735 }, { 205,4735 }, { 206,4735 }, { 207,4735 }, { 208,4735 }, + { 209,4735 }, { 210,4735 }, { 211,4735 }, { 212,4735 }, { 213,4735 }, + { 214,4735 }, { 215,4735 }, { 216,4735 }, { 217,4735 }, { 218,4735 }, + { 219,4735 }, { 220,4735 }, { 221,4735 }, { 222,4735 }, { 223,4735 }, + { 224,4735 }, { 225,4735 }, { 226,4735 }, { 227,4735 }, { 228,4735 }, + + { 229,4735 }, { 230,4735 }, { 231,4735 }, { 232,4735 }, { 233,4735 }, + { 234,4735 }, { 235,4735 }, { 236,4735 }, { 237,4735 }, { 238,4735 }, + { 239,4735 }, { 240,4735 }, { 241,4735 }, { 242,4735 }, { 243,4735 }, + { 244,4735 }, { 245,4735 }, { 246,4735 }, { 247,4735 }, { 248,4735 }, + { 249,4735 }, { 250,4735 }, { 251,4735 }, { 252,4735 }, { 253,4735 }, + { 254,4735 }, { 255,4735 }, { 256,4735 }, { 0, 0 }, { 0,15869 }, { 1, 593 }, { 2, 593 }, { 3, 593 }, { 4, 593 }, { 5, 593 }, { 6, 593 }, { 7, 593 }, { 8, 593 }, { 9, 593 }, { 10, 597 }, { 11, 593 }, { 12, 593 }, { 13, 593 }, { 14, 593 }, { 15, 593 }, @@ -1975,7 +1977,7 @@ static const struct yy_trans_info yy_transition[17678] = { 241, 593 }, { 242, 593 }, { 243, 593 }, { 244, 593 }, { 245, 593 }, { 246, 593 }, { 247, 593 }, { 248, 593 }, { 249, 593 }, { 250, 593 }, { 251, 593 }, { 252, 593 }, { 253, 593 }, { 254, 593 }, { 255, 593 }, - { 256, 593 }, { 0, 0 }, { 0,11486 }, { 1, 335 }, { 2, 335 }, + { 256, 593 }, { 0, 0 }, { 0,15611 }, { 1, 335 }, { 2, 335 }, { 3, 335 }, { 4, 335 }, { 5, 335 }, { 6, 335 }, { 7, 335 }, { 8, 335 }, { 9, 335 }, { 10, 339 }, { 11, 335 }, { 12, 335 }, @@ -2031,1716 +2033,2055 @@ static const struct yy_trans_info yy_transition[17678] = { 238, 335 }, { 239, 335 }, { 240, 335 }, { 241, 335 }, { 242, 335 }, { 243, 335 }, { 244, 335 }, { 245, 335 }, { 246, 335 }, { 247, 335 }, { 248, 335 }, { 249, 335 }, { 250, 335 }, { 251, 335 }, { 252, 335 }, - { 253, 335 }, { 254, 335 }, { 255, 335 }, { 256, 335 }, { 0, 64 }, - { 0,11228 }, { 0, 1 }, { 0,11226 }, { 0, 39 }, { 0,11224 }, - - { 0, 0 }, { 0, 1 }, { 0,11221 }, { 0, 55 }, { 0,11219 }, - { 0, 0 }, { 9,5098 }, { 10,5098 }, { 0, 0 }, { 12,5098 }, - { 13,5098 }, { 9,5093 }, { 10,5093 }, { 0, 0 }, { 12,5093 }, - { 13,5093 }, { 0, 14 }, { 0,11206 }, { 0, 54 }, { 0,11204 }, - { 0, 0 }, { 0, 54 }, { 0,11201 }, { 0, 17 }, { 0,11199 }, - { 0, 0 }, { 0, 7 }, { 0,11196 }, { 0, 0 }, { 32,5098 }, - { 0, 7 }, { 0,11192 }, { 0, 0 }, { 0, 0 }, { 32,5093 }, - { 0, 41 }, { 0,11187 }, { 33,5346 }, { 0, 0 }, { 35,5346 }, - { 0, 0 }, { 37,5346 }, { 38,5346 }, { 0, 55 }, { 0,11179 }, - { 0, 0 }, { 42,5346 }, { 43,5346 }, { 0, 0 }, { 45,5346 }, - - { 0, 0 }, { 47,5346 }, { 0, 17 }, { 0,11170 }, { 0, 20 }, - { 0,11168 }, { 0, 19 }, { 0,11166 }, { 0, 0 }, { 0, 17 }, - { 0,11163 }, { 0, 42 }, { 0,11161 }, { 0, 0 }, { 60,5346 }, - { 61,5357 }, { 62,5346 }, { 63,5346 }, { 64,5346 }, { 42, 348 }, - { 34, 346 }, { 0, 26 }, { 0,11151 }, { 42,7050 }, { 47, 353 }, - { 0, 27 }, { 0,11147 }, { 33,5306 }, { 0, 0 }, { 35,5306 }, - { 58, 100 }, { 37,5306 }, { 38,5306 }, { 61, 102 }, { 0, 0 }, - { 0, 0 }, { 42,5306 }, { 43,5306 }, { 0, 0 }, { 45,5306 }, - { 0, 0 }, { 47,5306 }, { 39, 331 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 34, 320 }, { 0, 0 }, { 94,5346 }, { 39, 324 }, - - { 96,5346 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 60,5306 }, - { 61,5306 }, { 62,5306 }, { 63,5306 }, { 64,5306 }, { 0, 64 }, - { 0,11113 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 26 }, { 0,11107 }, { 0, 33 }, { 0,11105 }, { 0, 47 }, - { 0,11103 }, { 0, 46 }, { 0,11101 }, { 0, 48 }, { 0,11099 }, - { 0, 9 }, { 0,11097 }, { 0, 0 }, { 124,5346 }, { 0, 0 }, - { 126,5346 }, { 0, 15 }, { 0,11091 }, { 0, 13 }, { 0,11089 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94,5306 }, { 0, 0 }, - { 96,5306 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 253, 335 }, { 254, 335 }, { 255, 335 }, { 256, 335 }, { 0, 75 }, + { 0,15353 }, { 0, 1 }, { 0,15351 }, { 0, 39 }, { 0,15349 }, + + { 0, 0 }, { 0, 1 }, { 0,15346 }, { 0, 55 }, { 0,15344 }, + { 0, 0 }, { 9,5577 }, { 10,5577 }, { 0, 0 }, { 12,5577 }, + { 13,5577 }, { 9,5572 }, { 10,5572 }, { 0, 0 }, { 12,5572 }, + { 13,5572 }, { 0, 14 }, { 0,15331 }, { 0, 54 }, { 0,15329 }, + { 0, 0 }, { 0, 54 }, { 0,15326 }, { 0, 17 }, { 0,15324 }, + { 0, 0 }, { 0, 7 }, { 0,15321 }, { 0, 0 }, { 32,5577 }, + { 0, 7 }, { 0,15317 }, { 0, 0 }, { 0, 0 }, { 32,5572 }, + { 0, 41 }, { 0,15312 }, { 33,5825 }, { 0, 0 }, { 35,5825 }, + { 0, 0 }, { 37,5825 }, { 38,5825 }, { 0, 55 }, { 0,15304 }, + { 0, 0 }, { 42,5825 }, { 43,5825 }, { 0, 0 }, { 45,5825 }, + + { 0, 0 }, { 47,5825 }, { 0, 17 }, { 0,15295 }, { 0, 20 }, + { 0,15293 }, { 0, 19 }, { 0,15291 }, { 0, 0 }, { 0, 17 }, + { 0,15288 }, { 0, 42 }, { 0,15286 }, { 0, 0 }, { 60,5825 }, + { 61,5836 }, { 62,5825 }, { 63,5825 }, { 64,5825 }, { 42, 363 }, + { 34, 358 }, { 0, 26 }, { 0,15276 }, { 42,8264 }, { 47, 365 }, + { 0, 27 }, { 0,15272 }, { 33,5785 }, { 0, 0 }, { 35,5785 }, + { 58, 349 }, { 37,5785 }, { 38,5785 }, { 61, 351 }, { 0, 0 }, + { 0, 0 }, { 42,5785 }, { 43,5785 }, { 0, 0 }, { 45,5785 }, + { 0, 0 }, { 47,5785 }, { 39, 346 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 34, 332 }, { 0, 0 }, { 94,5825 }, { 39, 339 }, + + { 96,5825 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 60,5785 }, + { 61,5785 }, { 62,5785 }, { 63,5785 }, { 64,5785 }, { 0, 75 }, + { 0,15238 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 26 }, { 0,15232 }, { 0, 33 }, { 0,15230 }, { 0, 47 }, + { 0,15228 }, { 0, 68 }, { 0,15226 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 124,5825 }, { 0, 0 }, + { 126,5825 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94,5785 }, { 0, 0 }, + { 96,5785 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 36, 8 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,5268 }, { 49,5268 }, - { 50,5268 }, { 51,5268 }, { 52,5268 }, { 53,5268 }, { 54,5268 }, - { 55,5268 }, { 56,5268 }, { 57,5268 }, { 124,5306 }, { 0, 0 }, - { 126,5306 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 65,5331 }, { 66,5331 }, { 67,5331 }, { 68,5331 }, { 69,5331 }, - { 70,5331 }, { 71,5331 }, { 72,5331 }, { 73,5331 }, { 74,5331 }, - { 75,5331 }, { 76,5331 }, { 77,5331 }, { 78,5331 }, { 79,5331 }, - { 80,5331 }, { 81,5331 }, { 82,5331 }, { 83,5331 }, { 84,5331 }, - { 85,5331 }, { 86,5331 }, { 87,5331 }, { 88,5331 }, { 89,5331 }, - - { 90,5331 }, { 85,8881 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 95,5331 }, { 0, 0 }, { 97,5331 }, { 98,5331 }, { 99,5331 }, - { 100,5331 }, { 101,5331 }, { 102,5331 }, { 103,5331 }, { 104,5331 }, - { 105,5331 }, { 106,5331 }, { 107,5331 }, { 108,5331 }, { 109,5331 }, - { 110,5331 }, { 111,5331 }, { 112,5331 }, { 113,5331 }, { 114,5331 }, - { 115,5331 }, { 116,5331 }, { 117,5331 }, { 118,5331 }, { 119,5331 }, - { 120,5331 }, { 121,5331 }, { 122,5331 }, { 117,8904 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,5331 }, { 129,5331 }, - { 130,5331 }, { 131,5331 }, { 132,5331 }, { 133,5331 }, { 134,5331 }, - { 135,5331 }, { 136,5331 }, { 137,5331 }, { 138,5331 }, { 139,5331 }, - - { 140,5331 }, { 141,5331 }, { 142,5331 }, { 143,5331 }, { 144,5331 }, - { 145,5331 }, { 146,5331 }, { 147,5331 }, { 148,5331 }, { 149,5331 }, - { 150,5331 }, { 151,5331 }, { 152,5331 }, { 153,5331 }, { 154,5331 }, - { 155,5331 }, { 156,5331 }, { 157,5331 }, { 158,5331 }, { 159,5331 }, - { 160,5331 }, { 161,5331 }, { 162,5331 }, { 163,5331 }, { 164,5331 }, - { 165,5331 }, { 166,5331 }, { 167,5331 }, { 168,5331 }, { 169,5331 }, - { 170,5331 }, { 171,5331 }, { 172,5331 }, { 173,5331 }, { 174,5331 }, - { 175,5331 }, { 176,5331 }, { 177,5331 }, { 178,5331 }, { 179,5331 }, - { 180,5331 }, { 181,5331 }, { 182,5331 }, { 183,5331 }, { 184,5331 }, - { 185,5331 }, { 186,5331 }, { 187,5331 }, { 188,5331 }, { 189,5331 }, - - { 190,5331 }, { 191,5331 }, { 192,5331 }, { 193,5331 }, { 194,5331 }, - { 195,5331 }, { 196,5331 }, { 197,5331 }, { 198,5331 }, { 199,5331 }, - { 200,5331 }, { 201,5331 }, { 202,5331 }, { 203,5331 }, { 204,5331 }, - { 205,5331 }, { 206,5331 }, { 207,5331 }, { 208,5331 }, { 209,5331 }, - { 210,5331 }, { 211,5331 }, { 212,5331 }, { 213,5331 }, { 214,5331 }, - { 215,5331 }, { 216,5331 }, { 217,5331 }, { 218,5331 }, { 219,5331 }, - { 220,5331 }, { 221,5331 }, { 222,5331 }, { 223,5331 }, { 224,5331 }, - { 225,5331 }, { 226,5331 }, { 227,5331 }, { 228,5331 }, { 229,5331 }, - { 230,5331 }, { 231,5331 }, { 232,5331 }, { 233,5331 }, { 234,5331 }, - { 235,5331 }, { 236,5331 }, { 237,5331 }, { 238,5331 }, { 239,5331 }, - - { 240,5331 }, { 241,5331 }, { 242,5331 }, { 243,5331 }, { 244,5331 }, - { 245,5331 }, { 246,5331 }, { 247,5331 }, { 248,5331 }, { 249,5331 }, - { 250,5331 }, { 251,5331 }, { 252,5331 }, { 253,5331 }, { 254,5331 }, - { 255,5331 }, { 0, 54 }, { 0,10856 }, { 0, 45 }, { 0,10854 }, - { 0, 12 }, { 0,10852 }, { 0, 0 }, { 0, 0 }, { 0, 8 }, - { 0,10848 }, { 0, 0 }, { 0, 54 }, { 0,10845 }, { 0, 5 }, - { 0,10843 }, { 0, 43 }, { 0,10841 }, { 0, 21 }, { 0,10839 }, - { 0, 19 }, { 0,10837 }, { 0, 18 }, { 0,10835 }, { 0, 29 }, - { 0,10833 }, { 0, 35 }, { 0,10831 }, { 0, 59 }, { 0,10829 }, - { 0, 0 }, { 0, 54 }, { 0,10826 }, { 0, 40 }, { 0,10824 }, - - { 33,4983 }, { 0, 0 }, { 35,4983 }, { 34, 30 }, { 37,4983 }, - { 38,4983 }, { 0, 16 }, { 0,10816 }, { 39, 38 }, { 42,4983 }, - { 43,4983 }, { 33,4972 }, { 45,4983 }, { 35,4972 }, { 47,4983 }, - { 37,4972 }, { 38,4972 }, { 42, 0 }, { 0, 30 }, { 0,10804 }, - { 42,4972 }, { 43,4972 }, { 47, 5 }, { 45,5320 }, { 0, 0 }, - { 47,4972 }, { 0, 0 }, { 60,4983 }, { 61,4983 }, { 62,4983 }, - { 63,4983 }, { 64,4983 }, { 0, 31 }, { 0,10790 }, { 0, 24 }, - { 0,10788 }, { 0, 25 }, { 0,10786 }, { 60,4972 }, { 61,4972 }, - { 62,4972 }, { 63,4972 }, { 64,4972 }, { 46,-277 }, { 0, 0 }, - { 48,5559 }, { 49,5559 }, { 50,5559 }, { 51,5559 }, { 52,5559 }, - - { 53,5559 }, { 54,5559 }, { 55,5559 }, { 56,5559 }, { 57,5559 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 94,4983 }, { 0, 0 }, { 96,4983 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 54 }, { 0,10755 }, { 0, 57 }, - { 0,10753 }, { 0, 0 }, { 94,4972 }, { 0, 0 }, { 96,4972 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 124,4983 }, { 0, 0 }, { 126,4983 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 33,4882 }, { 124,4972 }, { 35,4882 }, { 126,4972 }, - { 37,4882 }, { 38,4882 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 42,5513 }, { 43,4882 }, { 0, 0 }, { 45,4882 }, { 0, 0 }, - { 47,4882 }, { 46,5513 }, { 0, 0 }, { 48,5577 }, { 49,5577 }, - { 50,5577 }, { 51,5577 }, { 52,5577 }, { 53,5577 }, { 54,5577 }, - { 55,5577 }, { 56,5577 }, { 57,5577 }, { 60,4882 }, { 61,4882 }, - { 62,4882 }, { 63,4882 }, { 64,4882 }, { 0, 0 }, { 0, 54 }, - { 0,10688 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 69,5599 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 54 }, { 0,10677 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 94,4882 }, { 0, 0 }, { 96,4882 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 33,4815 }, { 0, 0 }, - { 35,4815 }, { 101,5599 }, { 37,4815 }, { 38,4815 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 42,4815 }, { 43,4815 }, { 33,4804 }, - { 45,4815 }, { 35,4804 }, { 47,4815 }, { 37,4804 }, { 38,4804 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 42,4804 }, { 43,4804 }, - { 0, 0 }, { 45,4804 }, { 124,4882 }, { 47,4804 }, { 126,4882 }, - { 60,4815 }, { 61,5574 }, { 62,5615 }, { 63,4815 }, { 64,4815 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 60,4804 }, { 61,4804 }, { 62,5671 }, { 63,4804 }, - { 64,4804 }, { 0, 0 }, { 0, 54 }, { 0,10610 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94,4815 }, - { 0, 0 }, { 96,4815 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 94,4804 }, { 0, 0 }, { 96,4804 }, { 0, 0 }, { 0, 63 }, - { 0,10578 }, { 33,4737 }, { 0, 0 }, { 35,4737 }, { 0, 0 }, - - { 37,4737 }, { 38,4737 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 42,4737 }, { 43,4737 }, { 0, 0 }, { 45,4737 }, { 124,4815 }, - { 47,4737 }, { 126,4815 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 124,4804 }, { 0, 0 }, { 126,4804 }, { 60,4737 }, { 61,5615 }, - { 62,4737 }, { 63,4737 }, { 64,4737 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 36,5663 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,5663 }, { 49,5663 }, - { 50,5663 }, { 51,5663 }, { 52,5663 }, { 53,5663 }, { 54,5663 }, - - { 55,5663 }, { 56,5663 }, { 57,5663 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 94,4737 }, { 0, 0 }, { 96,4737 }, - { 65,5663 }, { 66,5663 }, { 67,5663 }, { 68,5663 }, { 69,5663 }, - { 70,5663 }, { 71,5663 }, { 72,5663 }, { 73,5663 }, { 74,5663 }, - { 75,5663 }, { 76,5663 }, { 77,5663 }, { 78,5663 }, { 79,5663 }, - { 80,5663 }, { 81,5663 }, { 82,5663 }, { 83,5663 }, { 84,5663 }, - { 85,5663 }, { 86,5663 }, { 87,5663 }, { 88,5663 }, { 89,5663 }, - { 90,5663 }, { 0, 0 }, { 124,4737 }, { 0, 0 }, { 126,4737 }, - { 95,5663 }, { 0, 0 }, { 97,5663 }, { 98,5663 }, { 99,5663 }, - { 100,5663 }, { 101,5663 }, { 102,5663 }, { 103,5663 }, { 104,5663 }, - - { 105,5663 }, { 106,5663 }, { 107,5663 }, { 108,5663 }, { 109,5663 }, - { 110,5663 }, { 111,5663 }, { 112,5663 }, { 113,5663 }, { 114,5663 }, - { 115,5663 }, { 116,5663 }, { 117,5663 }, { 118,5663 }, { 119,5663 }, - { 120,5663 }, { 121,5663 }, { 122,5663 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,5663 }, { 129,5663 }, - { 130,5663 }, { 131,5663 }, { 132,5663 }, { 133,5663 }, { 134,5663 }, - { 135,5663 }, { 136,5663 }, { 137,5663 }, { 138,5663 }, { 139,5663 }, - { 140,5663 }, { 141,5663 }, { 142,5663 }, { 143,5663 }, { 144,5663 }, - { 145,5663 }, { 146,5663 }, { 147,5663 }, { 148,5663 }, { 149,5663 }, - { 150,5663 }, { 151,5663 }, { 152,5663 }, { 153,5663 }, { 154,5663 }, - - { 155,5663 }, { 156,5663 }, { 157,5663 }, { 158,5663 }, { 159,5663 }, - { 160,5663 }, { 161,5663 }, { 162,5663 }, { 163,5663 }, { 164,5663 }, - { 165,5663 }, { 166,5663 }, { 167,5663 }, { 168,5663 }, { 169,5663 }, - { 170,5663 }, { 171,5663 }, { 172,5663 }, { 173,5663 }, { 174,5663 }, - { 175,5663 }, { 176,5663 }, { 177,5663 }, { 178,5663 }, { 179,5663 }, - { 180,5663 }, { 181,5663 }, { 182,5663 }, { 183,5663 }, { 184,5663 }, - { 185,5663 }, { 186,5663 }, { 187,5663 }, { 188,5663 }, { 189,5663 }, - { 190,5663 }, { 191,5663 }, { 192,5663 }, { 193,5663 }, { 194,5663 }, - { 195,5663 }, { 196,5663 }, { 197,5663 }, { 198,5663 }, { 199,5663 }, - { 200,5663 }, { 201,5663 }, { 202,5663 }, { 203,5663 }, { 204,5663 }, - - { 205,5663 }, { 206,5663 }, { 207,5663 }, { 208,5663 }, { 209,5663 }, - { 210,5663 }, { 211,5663 }, { 212,5663 }, { 213,5663 }, { 214,5663 }, - { 215,5663 }, { 216,5663 }, { 217,5663 }, { 218,5663 }, { 219,5663 }, - { 220,5663 }, { 221,5663 }, { 222,5663 }, { 223,5663 }, { 224,5663 }, - { 225,5663 }, { 226,5663 }, { 227,5663 }, { 228,5663 }, { 229,5663 }, - { 230,5663 }, { 231,5663 }, { 232,5663 }, { 233,5663 }, { 234,5663 }, - { 235,5663 }, { 236,5663 }, { 237,5663 }, { 238,5663 }, { 239,5663 }, - { 240,5663 }, { 241,5663 }, { 242,5663 }, { 243,5663 }, { 244,5663 }, - { 245,5663 }, { 246,5663 }, { 247,5663 }, { 248,5663 }, { 249,5663 }, - { 250,5663 }, { 251,5663 }, { 252,5663 }, { 253,5663 }, { 254,5663 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,5747 }, { 49,5747 }, + { 50,5747 }, { 51,5747 }, { 52,5747 }, { 53,5747 }, { 54,5747 }, + { 55,5747 }, { 56,5747 }, { 57,5747 }, { 124,5785 }, { 0, 0 }, + { 126,5785 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 65,5810 }, { 66,5810 }, { 67,5810 }, { 68,5810 }, { 69,5810 }, + { 70,5810 }, { 71,5810 }, { 72,5810 }, { 73,5810 }, { 74,5810 }, + { 75,5810 }, { 76,5810 }, { 77,5810 }, { 78,5810 }, { 79,5810 }, + { 80,5810 }, { 81,5810 }, { 82,5810 }, { 83,5810 }, { 84,5810 }, + { 85,5810 }, { 86,5810 }, { 87,5810 }, { 88,5810 }, { 89,5810 }, + + { 90,5810 }, { 85,10095 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 95,5810 }, { 0, 0 }, { 97,5810 }, { 98,5810 }, { 99,5810 }, + { 100,5810 }, { 101,5810 }, { 102,5810 }, { 103,5810 }, { 104,5810 }, + { 105,5810 }, { 106,5810 }, { 107,5810 }, { 108,5810 }, { 109,5810 }, + { 110,5810 }, { 111,5810 }, { 112,5810 }, { 113,5810 }, { 114,5810 }, + { 115,5810 }, { 116,5810 }, { 117,5810 }, { 118,5810 }, { 119,5810 }, + { 120,5810 }, { 121,5810 }, { 122,5810 }, { 117,10118 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,5810 }, { 129,5810 }, + { 130,5810 }, { 131,5810 }, { 132,5810 }, { 133,5810 }, { 134,5810 }, + { 135,5810 }, { 136,5810 }, { 137,5810 }, { 138,5810 }, { 139,5810 }, + + { 140,5810 }, { 141,5810 }, { 142,5810 }, { 143,5810 }, { 144,5810 }, + { 145,5810 }, { 146,5810 }, { 147,5810 }, { 148,5810 }, { 149,5810 }, + { 150,5810 }, { 151,5810 }, { 152,5810 }, { 153,5810 }, { 154,5810 }, + { 155,5810 }, { 156,5810 }, { 157,5810 }, { 158,5810 }, { 159,5810 }, + { 160,5810 }, { 161,5810 }, { 162,5810 }, { 163,5810 }, { 164,5810 }, + { 165,5810 }, { 166,5810 }, { 167,5810 }, { 168,5810 }, { 169,5810 }, + { 170,5810 }, { 171,5810 }, { 172,5810 }, { 173,5810 }, { 174,5810 }, + { 175,5810 }, { 176,5810 }, { 177,5810 }, { 178,5810 }, { 179,5810 }, + { 180,5810 }, { 181,5810 }, { 182,5810 }, { 183,5810 }, { 184,5810 }, + { 185,5810 }, { 186,5810 }, { 187,5810 }, { 188,5810 }, { 189,5810 }, + + { 190,5810 }, { 191,5810 }, { 192,5810 }, { 193,5810 }, { 194,5810 }, + { 195,5810 }, { 196,5810 }, { 197,5810 }, { 198,5810 }, { 199,5810 }, + { 200,5810 }, { 201,5810 }, { 202,5810 }, { 203,5810 }, { 204,5810 }, + { 205,5810 }, { 206,5810 }, { 207,5810 }, { 208,5810 }, { 209,5810 }, + { 210,5810 }, { 211,5810 }, { 212,5810 }, { 213,5810 }, { 214,5810 }, + { 215,5810 }, { 216,5810 }, { 217,5810 }, { 218,5810 }, { 219,5810 }, + { 220,5810 }, { 221,5810 }, { 222,5810 }, { 223,5810 }, { 224,5810 }, + { 225,5810 }, { 226,5810 }, { 227,5810 }, { 228,5810 }, { 229,5810 }, + { 230,5810 }, { 231,5810 }, { 232,5810 }, { 233,5810 }, { 234,5810 }, + { 235,5810 }, { 236,5810 }, { 237,5810 }, { 238,5810 }, { 239,5810 }, + + { 240,5810 }, { 241,5810 }, { 242,5810 }, { 243,5810 }, { 244,5810 }, + { 245,5810 }, { 246,5810 }, { 247,5810 }, { 248,5810 }, { 249,5810 }, + { 250,5810 }, { 251,5810 }, { 252,5810 }, { 253,5810 }, { 254,5810 }, + { 255,5810 }, { 0, 54 }, { 0,14981 }, { 0, 63 }, { 0,14979 }, + { 0, 46 }, { 0,14977 }, { 0, 48 }, { 0,14975 }, { 0, 9 }, + { 0,14973 }, { 0, 0 }, { 0, 54 }, { 0,14970 }, { 0, 15 }, + { 0,14968 }, { 0, 13 }, { 0,14966 }, { 0, 0 }, { 0, 45 }, + { 0,14963 }, { 0, 12 }, { 0,14961 }, { 0, 0 }, { 0, 8 }, + { 0,14958 }, { 0, 5 }, { 0,14956 }, { 0, 43 }, { 0,14954 }, + { 0, 0 }, { 0, 54 }, { 0,14951 }, { 0, 21 }, { 0,14949 }, + + { 33,5462 }, { 0, 0 }, { 35,5462 }, { 0, 0 }, { 37,5462 }, + { 38,5462 }, { 0, 19 }, { 0,14941 }, { 0, 0 }, { 42,5462 }, + { 43,5462 }, { 33,5451 }, { 45,5462 }, { 35,5451 }, { 47,5462 }, + { 37,5451 }, { 38,5451 }, { 48,11312 }, { 49,11312 }, { 34, 91 }, + { 42,5451 }, { 43,5451 }, { 0, 0 }, { 45,5799 }, { 39, 93 }, + { 47,5451 }, { 0, 0 }, { 60,5462 }, { 61,5462 }, { 62,5462 }, + { 63,5462 }, { 64,5462 }, { 42, 0 }, { 0, 18 }, { 0,14914 }, + { 0, 29 }, { 0,14912 }, { 47, 2 }, { 60,5451 }, { 61,5451 }, + { 62,5451 }, { 63,5451 }, { 64,5451 }, { 46,-277 }, { 0, 0 }, + { 48,6038 }, { 49,6038 }, { 50,6038 }, { 51,6038 }, { 52,6038 }, + + { 53,6038 }, { 54,6038 }, { 55,6038 }, { 56,6038 }, { 57,6038 }, + { 0, 35 }, { 0,14892 }, { 0, 72 }, { 0,14890 }, { 0, 65 }, + { 0,14888 }, { 94,5462 }, { 0, 0 }, { 96,5462 }, { 95, 101 }, + { 0, 0 }, { 0, 0 }, { 0, 54 }, { 0,14880 }, { 0, 63 }, + { 0,14878 }, { 0, 0 }, { 94,5451 }, { 0, 0 }, { 96,5451 }, + { 0, 40 }, { 0,14872 }, { 0, 16 }, { 0,14870 }, { 0, 71 }, + { 0,14868 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 71 }, + { 0,14863 }, { 0, 73 }, { 0,14861 }, { 0, 70 }, { 0,14859 }, + { 0, 0 }, { 124,5462 }, { 0, 0 }, { 126,5462 }, { 0, 69 }, + { 0,14853 }, { 0, 30 }, { 0,14851 }, { 0, 0 }, { 0, 57 }, + + { 0,14848 }, { 33,5361 }, { 124,5451 }, { 35,5361 }, { 126,5451 }, + { 37,5361 }, { 38,5361 }, { 0, 31 }, { 0,14840 }, { 0, 0 }, + { 42,6224 }, { 43,5361 }, { 0, 0 }, { 45,5361 }, { 0, 0 }, + { 47,5361 }, { 0, 24 }, { 0,14831 }, { 48,11211 }, { 49,11211 }, + { 0, 25 }, { 0,14827 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 60,5361 }, { 61,5361 }, + { 62,5361 }, { 63,5361 }, { 64,5361 }, { 48,11196 }, { 49,11196 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 46,6224 }, { 0, 0 }, { 48,6481 }, { 49,6481 }, + + { 50,6481 }, { 51,6481 }, { 52,6481 }, { 53,6481 }, { 54,6481 }, + { 55,6481 }, { 56,6481 }, { 57,6481 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 94,5361 }, { 0, 0 }, { 96,5361 }, + { 65,-378 }, { 66,-131 }, { 67,-378 }, { 68,-378 }, { 69,6738 }, + { 70,-378 }, { 71,-378 }, { 72,-378 }, { 73,-378 }, { 74,-378 }, + { 75,-378 }, { 76,-378 }, { 77,-378 }, { 78,-378 }, { 79,6748 }, + { 80,-378 }, { 81,-378 }, { 82,-378 }, { 83,-378 }, { 84,-378 }, + { 85,-378 }, { 86,-378 }, { 87,-378 }, { 88,6756 }, { 89,-378 }, + { 90,-378 }, { 0, 0 }, { 124,5361 }, { 0, 0 }, { 126,5361 }, + { 95,6779 }, { 0, 0 }, { 97,-378 }, { 98,-131 }, { 99,-378 }, + + { 100,-378 }, { 101,6738 }, { 102,-378 }, { 103,-378 }, { 104,-378 }, + { 105,-378 }, { 106,-378 }, { 107,-378 }, { 108,-378 }, { 109,-378 }, + { 110,-378 }, { 111,6748 }, { 112,-378 }, { 113,-378 }, { 114,-378 }, + { 115,-378 }, { 116,-378 }, { 117,-378 }, { 118,-378 }, { 119,-378 }, + { 120,6756 }, { 121,-378 }, { 122,-378 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,-378 }, { 129,-378 }, + { 130,-378 }, { 131,-378 }, { 132,-378 }, { 133,-378 }, { 134,-378 }, + { 135,-378 }, { 136,-378 }, { 137,-378 }, { 138,-378 }, { 139,-378 }, + { 140,-378 }, { 141,-378 }, { 142,-378 }, { 143,-378 }, { 144,-378 }, + { 145,-378 }, { 146,-378 }, { 147,-378 }, { 148,-378 }, { 149,-378 }, + + { 150,-378 }, { 151,-378 }, { 152,-378 }, { 153,-378 }, { 154,-378 }, + { 155,-378 }, { 156,-378 }, { 157,-378 }, { 158,-378 }, { 159,-378 }, + { 160,-378 }, { 161,-378 }, { 162,-378 }, { 163,-378 }, { 164,-378 }, + { 165,-378 }, { 166,-378 }, { 167,-378 }, { 168,-378 }, { 169,-378 }, + { 170,-378 }, { 171,-378 }, { 172,-378 }, { 173,-378 }, { 174,-378 }, + { 175,-378 }, { 176,-378 }, { 177,-378 }, { 178,-378 }, { 179,-378 }, + { 180,-378 }, { 181,-378 }, { 182,-378 }, { 183,-378 }, { 184,-378 }, + { 185,-378 }, { 186,-378 }, { 187,-378 }, { 188,-378 }, { 189,-378 }, + { 190,-378 }, { 191,-378 }, { 192,-378 }, { 193,-378 }, { 194,-378 }, + { 195,-378 }, { 196,-378 }, { 197,-378 }, { 198,-378 }, { 199,-378 }, + + { 200,-378 }, { 201,-378 }, { 202,-378 }, { 203,-378 }, { 204,-378 }, + { 205,-378 }, { 206,-378 }, { 207,-378 }, { 208,-378 }, { 209,-378 }, + { 210,-378 }, { 211,-378 }, { 212,-378 }, { 213,-378 }, { 214,-378 }, + { 215,-378 }, { 216,-378 }, { 217,-378 }, { 218,-378 }, { 219,-378 }, + { 220,-378 }, { 221,-378 }, { 222,-378 }, { 223,-378 }, { 224,-378 }, + { 225,-378 }, { 226,-378 }, { 227,-378 }, { 228,-378 }, { 229,-378 }, + { 230,-378 }, { 231,-378 }, { 232,-378 }, { 233,-378 }, { 234,-378 }, + { 235,-378 }, { 236,-378 }, { 237,-378 }, { 238,-378 }, { 239,-378 }, + { 240,-378 }, { 241,-378 }, { 242,-378 }, { 243,-378 }, { 244,-378 }, + { 245,-378 }, { 246,-378 }, { 247,-378 }, { 248,-378 }, { 249,-378 }, + + { 250,-378 }, { 251,-378 }, { 252,-378 }, { 253,-378 }, { 254,-378 }, + { 255,-378 }, { 0, 57 }, { 0,14591 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 46,5967 }, { 0, 0 }, + { 48,6224 }, { 49,6224 }, { 50,6224 }, { 51,6224 }, { 52,6224 }, + { 53,6224 }, { 54,6224 }, { 55,6224 }, { 56,6224 }, { 57,6224 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 65,-635 }, { 66,-635 }, { 67,-635 }, + { 68,-635 }, { 69,6481 }, { 70,-635 }, { 71,-635 }, { 72,-635 }, + { 73,-635 }, { 74,-635 }, { 75,-635 }, { 76,-635 }, { 77,-635 }, + { 78,-635 }, { 79,-635 }, { 80,-635 }, { 81,-635 }, { 82,-635 }, + { 83,-635 }, { 84,-635 }, { 85,-635 }, { 86,-635 }, { 87,-635 }, + { 88,-635 }, { 89,-635 }, { 90,-635 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 95,6522 }, { 0, 0 }, { 97,-635 }, + { 98,-635 }, { 99,-635 }, { 100,-635 }, { 101,6481 }, { 102,-635 }, + { 103,-635 }, { 104,-635 }, { 105,-635 }, { 106,-635 }, { 107,-635 }, + { 108,-635 }, { 109,-635 }, { 110,-635 }, { 111,-635 }, { 112,-635 }, + { 113,-635 }, { 114,-635 }, { 115,-635 }, { 116,-635 }, { 117,-635 }, + { 118,-635 }, { 119,-635 }, { 120,-635 }, { 121,-635 }, { 122,-635 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 128,-635 }, { 129,-635 }, { 130,-635 }, { 131,-635 }, { 132,-635 }, + { 133,-635 }, { 134,-635 }, { 135,-635 }, { 136,-635 }, { 137,-635 }, + { 138,-635 }, { 139,-635 }, { 140,-635 }, { 141,-635 }, { 142,-635 }, + + { 143,-635 }, { 144,-635 }, { 145,-635 }, { 146,-635 }, { 147,-635 }, + { 148,-635 }, { 149,-635 }, { 150,-635 }, { 151,-635 }, { 152,-635 }, + { 153,-635 }, { 154,-635 }, { 155,-635 }, { 156,-635 }, { 157,-635 }, + { 158,-635 }, { 159,-635 }, { 160,-635 }, { 161,-635 }, { 162,-635 }, + { 163,-635 }, { 164,-635 }, { 165,-635 }, { 166,-635 }, { 167,-635 }, + { 168,-635 }, { 169,-635 }, { 170,-635 }, { 171,-635 }, { 172,-635 }, + { 173,-635 }, { 174,-635 }, { 175,-635 }, { 176,-635 }, { 177,-635 }, + { 178,-635 }, { 179,-635 }, { 180,-635 }, { 181,-635 }, { 182,-635 }, + { 183,-635 }, { 184,-635 }, { 185,-635 }, { 186,-635 }, { 187,-635 }, + { 188,-635 }, { 189,-635 }, { 190,-635 }, { 191,-635 }, { 192,-635 }, + + { 193,-635 }, { 194,-635 }, { 195,-635 }, { 196,-635 }, { 197,-635 }, + { 198,-635 }, { 199,-635 }, { 200,-635 }, { 201,-635 }, { 202,-635 }, + { 203,-635 }, { 204,-635 }, { 205,-635 }, { 206,-635 }, { 207,-635 }, + { 208,-635 }, { 209,-635 }, { 210,-635 }, { 211,-635 }, { 212,-635 }, + { 213,-635 }, { 214,-635 }, { 215,-635 }, { 216,-635 }, { 217,-635 }, + { 218,-635 }, { 219,-635 }, { 220,-635 }, { 221,-635 }, { 222,-635 }, + { 223,-635 }, { 224,-635 }, { 225,-635 }, { 226,-635 }, { 227,-635 }, + { 228,-635 }, { 229,-635 }, { 230,-635 }, { 231,-635 }, { 232,-635 }, + { 233,-635 }, { 234,-635 }, { 235,-635 }, { 236,-635 }, { 237,-635 }, + { 238,-635 }, { 239,-635 }, { 240,-635 }, { 241,-635 }, { 242,-635 }, + + { 243,-635 }, { 244,-635 }, { 245,-635 }, { 246,-635 }, { 247,-635 }, + { 248,-635 }, { 249,-635 }, { 250,-635 }, { 251,-635 }, { 252,-635 }, + { 253,-635 }, { 254,-635 }, { 255,-635 }, { 0, 54 }, { 0,14334 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 54 }, + { 0,14323 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 33,4815 }, { 0, 0 }, { 35,4815 }, + + { 0, 0 }, { 37,4815 }, { 38,4815 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 42,4815 }, { 43,4815 }, { 33,4804 }, { 45,4815 }, + { 35,4804 }, { 47,4815 }, { 37,4804 }, { 38,4804 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 42,4804 }, { 43,4804 }, { 0, 0 }, + { 45,4804 }, { 0, 0 }, { 47,4804 }, { 0, 0 }, { 60,4815 }, + { 61,6324 }, { 62,6335 }, { 63,4815 }, { 64,4815 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 60,4804 }, { 61,4804 }, { 62,6391 }, { 63,4804 }, { 64,4804 }, + { 0, 0 }, { 0, 54 }, { 0,14256 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94,4815 }, { 0, 0 }, + { 96,4815 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94,4804 }, + { 0, 0 }, { 96,4804 }, { 0, 0 }, { 0, 74 }, { 0,14224 }, + { 33,4737 }, { 0, 0 }, { 35,4737 }, { 0, 0 }, { 37,4737 }, + { 38,4737 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 42,4737 }, + { 43,4737 }, { 0, 0 }, { 45,4737 }, { 124,4815 }, { 47,4737 }, + { 126,4815 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 124,4804 }, + + { 0, 0 }, { 126,4804 }, { 60,4737 }, { 61,6364 }, { 62,4737 }, + { 63,4737 }, { 64,4737 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 36,6398 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 48,6398 }, { 49,6398 }, { 50,6398 }, + { 51,6398 }, { 52,6398 }, { 53,6398 }, { 54,6398 }, { 55,6398 }, + { 56,6398 }, { 57,6398 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 94,4737 }, { 0, 0 }, { 96,4737 }, { 65,6398 }, + { 66,6398 }, { 67,6398 }, { 68,6398 }, { 69,6398 }, { 70,6398 }, + { 71,6398 }, { 72,6398 }, { 73,6398 }, { 74,6398 }, { 75,6398 }, + + { 76,6398 }, { 77,6398 }, { 78,6398 }, { 79,6398 }, { 80,6398 }, + { 81,6398 }, { 82,6398 }, { 83,6398 }, { 84,6398 }, { 85,6398 }, + { 86,6398 }, { 87,6398 }, { 88,6398 }, { 89,6398 }, { 90,6398 }, + { 0, 0 }, { 124,4737 }, { 0, 0 }, { 126,4737 }, { 95,6398 }, + { 0, 0 }, { 97,6398 }, { 98,6398 }, { 99,6398 }, { 100,6398 }, + { 101,6398 }, { 102,6398 }, { 103,6398 }, { 104,6398 }, { 105,6398 }, + { 106,6398 }, { 107,6398 }, { 108,6398 }, { 109,6398 }, { 110,6398 }, + { 111,6398 }, { 112,6398 }, { 113,6398 }, { 114,6398 }, { 115,6398 }, + { 116,6398 }, { 117,6398 }, { 118,6398 }, { 119,6398 }, { 120,6398 }, + { 121,6398 }, { 122,6398 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 128,6398 }, { 129,6398 }, { 130,6398 }, + { 131,6398 }, { 132,6398 }, { 133,6398 }, { 134,6398 }, { 135,6398 }, + { 136,6398 }, { 137,6398 }, { 138,6398 }, { 139,6398 }, { 140,6398 }, + { 141,6398 }, { 142,6398 }, { 143,6398 }, { 144,6398 }, { 145,6398 }, + { 146,6398 }, { 147,6398 }, { 148,6398 }, { 149,6398 }, { 150,6398 }, + { 151,6398 }, { 152,6398 }, { 153,6398 }, { 154,6398 }, { 155,6398 }, + { 156,6398 }, { 157,6398 }, { 158,6398 }, { 159,6398 }, { 160,6398 }, + { 161,6398 }, { 162,6398 }, { 163,6398 }, { 164,6398 }, { 165,6398 }, + { 166,6398 }, { 167,6398 }, { 168,6398 }, { 169,6398 }, { 170,6398 }, + { 171,6398 }, { 172,6398 }, { 173,6398 }, { 174,6398 }, { 175,6398 }, + + { 176,6398 }, { 177,6398 }, { 178,6398 }, { 179,6398 }, { 180,6398 }, + { 181,6398 }, { 182,6398 }, { 183,6398 }, { 184,6398 }, { 185,6398 }, + { 186,6398 }, { 187,6398 }, { 188,6398 }, { 189,6398 }, { 190,6398 }, + { 191,6398 }, { 192,6398 }, { 193,6398 }, { 194,6398 }, { 195,6398 }, + { 196,6398 }, { 197,6398 }, { 198,6398 }, { 199,6398 }, { 200,6398 }, + { 201,6398 }, { 202,6398 }, { 203,6398 }, { 204,6398 }, { 205,6398 }, + { 206,6398 }, { 207,6398 }, { 208,6398 }, { 209,6398 }, { 210,6398 }, + { 211,6398 }, { 212,6398 }, { 213,6398 }, { 214,6398 }, { 215,6398 }, + { 216,6398 }, { 217,6398 }, { 218,6398 }, { 219,6398 }, { 220,6398 }, + { 221,6398 }, { 222,6398 }, { 223,6398 }, { 224,6398 }, { 225,6398 }, + + { 226,6398 }, { 227,6398 }, { 228,6398 }, { 229,6398 }, { 230,6398 }, + { 231,6398 }, { 232,6398 }, { 233,6398 }, { 234,6398 }, { 235,6398 }, + { 236,6398 }, { 237,6398 }, { 238,6398 }, { 239,6398 }, { 240,6398 }, + { 241,6398 }, { 242,6398 }, { 243,6398 }, { 244,6398 }, { 245,6398 }, + { 246,6398 }, { 247,6398 }, { 248,6398 }, { 249,6398 }, { 250,6398 }, + { 251,6398 }, { 252,6398 }, { 253,6398 }, { 254,6398 }, { 255,6398 }, + { 0, 74 }, { 0,13967 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 36,6141 }, { 0, 0 }, { 0, 0 }, + { 39,-1006 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,6141 }, + { 49,6141 }, { 50,6141 }, { 51,6141 }, { 52,6141 }, { 53,6141 }, + { 54,6141 }, { 55,6141 }, { 56,6141 }, { 57,6141 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 65,6141 }, { 66,6141 }, { 67,6141 }, { 68,6141 }, + + { 69,6141 }, { 70,6141 }, { 71,6141 }, { 72,6141 }, { 73,6141 }, + { 74,6141 }, { 75,6141 }, { 76,6141 }, { 77,6141 }, { 78,6141 }, + { 79,6141 }, { 80,6141 }, { 81,6141 }, { 82,6141 }, { 83,6141 }, + { 84,6141 }, { 85,6141 }, { 86,6141 }, { 87,6141 }, { 88,6141 }, + { 89,6141 }, { 90,6141 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 95,6141 }, { 0, 0 }, { 97,6141 }, { 98,6141 }, + { 99,6141 }, { 100,6141 }, { 101,6141 }, { 102,6141 }, { 103,6141 }, + { 104,6141 }, { 105,6141 }, { 106,6141 }, { 107,6141 }, { 108,6141 }, + { 109,6141 }, { 110,6141 }, { 111,6141 }, { 112,6141 }, { 113,6141 }, + { 114,6141 }, { 115,6141 }, { 116,6141 }, { 117,6141 }, { 118,6141 }, + + { 119,6141 }, { 120,6141 }, { 121,6141 }, { 122,6141 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,6141 }, + { 129,6141 }, { 130,6141 }, { 131,6141 }, { 132,6141 }, { 133,6141 }, + { 134,6141 }, { 135,6141 }, { 136,6141 }, { 137,6141 }, { 138,6141 }, + { 139,6141 }, { 140,6141 }, { 141,6141 }, { 142,6141 }, { 143,6141 }, + { 144,6141 }, { 145,6141 }, { 146,6141 }, { 147,6141 }, { 148,6141 }, + { 149,6141 }, { 150,6141 }, { 151,6141 }, { 152,6141 }, { 153,6141 }, + { 154,6141 }, { 155,6141 }, { 156,6141 }, { 157,6141 }, { 158,6141 }, + { 159,6141 }, { 160,6141 }, { 161,6141 }, { 162,6141 }, { 163,6141 }, + { 164,6141 }, { 165,6141 }, { 166,6141 }, { 167,6141 }, { 168,6141 }, + + { 169,6141 }, { 170,6141 }, { 171,6141 }, { 172,6141 }, { 173,6141 }, + { 174,6141 }, { 175,6141 }, { 176,6141 }, { 177,6141 }, { 178,6141 }, + { 179,6141 }, { 180,6141 }, { 181,6141 }, { 182,6141 }, { 183,6141 }, + { 184,6141 }, { 185,6141 }, { 186,6141 }, { 187,6141 }, { 188,6141 }, + { 189,6141 }, { 190,6141 }, { 191,6141 }, { 192,6141 }, { 193,6141 }, + { 194,6141 }, { 195,6141 }, { 196,6141 }, { 197,6141 }, { 198,6141 }, + { 199,6141 }, { 200,6141 }, { 201,6141 }, { 202,6141 }, { 203,6141 }, + { 204,6141 }, { 205,6141 }, { 206,6141 }, { 207,6141 }, { 208,6141 }, + { 209,6141 }, { 210,6141 }, { 211,6141 }, { 212,6141 }, { 213,6141 }, + { 214,6141 }, { 215,6141 }, { 216,6141 }, { 217,6141 }, { 218,6141 }, + + { 219,6141 }, { 220,6141 }, { 221,6141 }, { 222,6141 }, { 223,6141 }, + { 224,6141 }, { 225,6141 }, { 226,6141 }, { 227,6141 }, { 228,6141 }, + { 229,6141 }, { 230,6141 }, { 231,6141 }, { 232,6141 }, { 233,6141 }, + { 234,6141 }, { 235,6141 }, { 236,6141 }, { 237,6141 }, { 238,6141 }, + { 239,6141 }, { 240,6141 }, { 241,6141 }, { 242,6141 }, { 243,6141 }, + { 244,6141 }, { 245,6141 }, { 246,6141 }, { 247,6141 }, { 248,6141 }, + { 249,6141 }, { 250,6141 }, { 251,6141 }, { 252,6141 }, { 253,6141 }, + { 254,6141 }, { 255,6141 }, { 0, 74 }, { 0,13710 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 36,5884 }, + { 0, 0 }, { 0, 0 }, { 39,-1258 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 48,5884 }, { 49,5884 }, { 50,5884 }, { 51,5884 }, + { 52,5884 }, { 53,5884 }, { 54,5884 }, { 55,5884 }, { 56,5884 }, + { 57,5884 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,5884 }, { 66,5884 }, + { 67,5884 }, { 68,5884 }, { 69,5884 }, { 70,5884 }, { 71,5884 }, + { 72,5884 }, { 73,5884 }, { 74,5884 }, { 75,5884 }, { 76,5884 }, + { 77,5884 }, { 78,5884 }, { 79,5884 }, { 80,5884 }, { 81,5884 }, + { 82,5884 }, { 83,5884 }, { 84,5884 }, { 85,5884 }, { 86,5884 }, + { 87,5884 }, { 88,5884 }, { 89,5884 }, { 90,5884 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95,5884 }, { 0, 0 }, + { 97,5884 }, { 98,5884 }, { 99,5884 }, { 100,5884 }, { 101,5884 }, + { 102,5884 }, { 103,5884 }, { 104,5884 }, { 105,5884 }, { 106,5884 }, + { 107,5884 }, { 108,5884 }, { 109,5884 }, { 110,5884 }, { 111,5884 }, + + { 112,5884 }, { 113,5884 }, { 114,5884 }, { 115,5884 }, { 116,5884 }, + { 117,5884 }, { 118,5884 }, { 119,5884 }, { 120,5884 }, { 121,5884 }, + { 122,5884 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 128,5884 }, { 129,5884 }, { 130,5884 }, { 131,5884 }, + { 132,5884 }, { 133,5884 }, { 134,5884 }, { 135,5884 }, { 136,5884 }, + { 137,5884 }, { 138,5884 }, { 139,5884 }, { 140,5884 }, { 141,5884 }, + { 142,5884 }, { 143,5884 }, { 144,5884 }, { 145,5884 }, { 146,5884 }, + { 147,5884 }, { 148,5884 }, { 149,5884 }, { 150,5884 }, { 151,5884 }, + { 152,5884 }, { 153,5884 }, { 154,5884 }, { 155,5884 }, { 156,5884 }, + { 157,5884 }, { 158,5884 }, { 159,5884 }, { 160,5884 }, { 161,5884 }, + + { 162,5884 }, { 163,5884 }, { 164,5884 }, { 165,5884 }, { 166,5884 }, + { 167,5884 }, { 168,5884 }, { 169,5884 }, { 170,5884 }, { 171,5884 }, + { 172,5884 }, { 173,5884 }, { 174,5884 }, { 175,5884 }, { 176,5884 }, + { 177,5884 }, { 178,5884 }, { 179,5884 }, { 180,5884 }, { 181,5884 }, + { 182,5884 }, { 183,5884 }, { 184,5884 }, { 185,5884 }, { 186,5884 }, + { 187,5884 }, { 188,5884 }, { 189,5884 }, { 190,5884 }, { 191,5884 }, + { 192,5884 }, { 193,5884 }, { 194,5884 }, { 195,5884 }, { 196,5884 }, + { 197,5884 }, { 198,5884 }, { 199,5884 }, { 200,5884 }, { 201,5884 }, + { 202,5884 }, { 203,5884 }, { 204,5884 }, { 205,5884 }, { 206,5884 }, + { 207,5884 }, { 208,5884 }, { 209,5884 }, { 210,5884 }, { 211,5884 }, + + { 212,5884 }, { 213,5884 }, { 214,5884 }, { 215,5884 }, { 216,5884 }, + { 217,5884 }, { 218,5884 }, { 219,5884 }, { 220,5884 }, { 221,5884 }, + { 222,5884 }, { 223,5884 }, { 224,5884 }, { 225,5884 }, { 226,5884 }, + { 227,5884 }, { 228,5884 }, { 229,5884 }, { 230,5884 }, { 231,5884 }, + { 232,5884 }, { 233,5884 }, { 234,5884 }, { 235,5884 }, { 236,5884 }, + { 237,5884 }, { 238,5884 }, { 239,5884 }, { 240,5884 }, { 241,5884 }, + { 242,5884 }, { 243,5884 }, { 244,5884 }, { 245,5884 }, { 246,5884 }, + { 247,5884 }, { 248,5884 }, { 249,5884 }, { 250,5884 }, { 251,5884 }, + { 252,5884 }, { 253,5884 }, { 254,5884 }, { 255,5884 }, { 0, 74 }, + { 0,13453 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 36,5627 }, { 0, 0 }, { 0, 0 }, { 39,-1513 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,5627 }, { 49,5627 }, + { 50,5627 }, { 51,5627 }, { 52,5627 }, { 53,5627 }, { 54,5627 }, + + { 55,5627 }, { 56,5627 }, { 57,5627 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 65,5627 }, { 66,5627 }, { 67,5627 }, { 68,5627 }, { 69,5627 }, + { 70,5627 }, { 71,5627 }, { 72,5627 }, { 73,5627 }, { 74,5627 }, + { 75,5627 }, { 76,5627 }, { 77,5627 }, { 78,5627 }, { 79,5627 }, + { 80,5627 }, { 81,5627 }, { 82,5627 }, { 83,5627 }, { 84,5627 }, + { 85,5627 }, { 86,5627 }, { 87,5627 }, { 88,5627 }, { 89,5627 }, + { 90,5627 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 95,5627 }, { 0, 0 }, { 97,5627 }, { 98,5627 }, { 99,5627 }, + { 100,5627 }, { 101,5627 }, { 102,5627 }, { 103,5627 }, { 104,5627 }, - { 255,5663 }, { 0, 63 }, { 0,10321 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 36,5406 }, { 0, 0 }, - { 0, 0 }, { 39,-776 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 48,5406 }, { 49,5406 }, { 50,5406 }, { 51,5406 }, { 52,5406 }, - { 53,5406 }, { 54,5406 }, { 55,5406 }, { 56,5406 }, { 57,5406 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 65,5406 }, { 66,5406 }, { 67,5406 }, - { 68,5406 }, { 69,5406 }, { 70,5406 }, { 71,5406 }, { 72,5406 }, - { 73,5406 }, { 74,5406 }, { 75,5406 }, { 76,5406 }, { 77,5406 }, - { 78,5406 }, { 79,5406 }, { 80,5406 }, { 81,5406 }, { 82,5406 }, - { 83,5406 }, { 84,5406 }, { 85,5406 }, { 86,5406 }, { 87,5406 }, - { 88,5406 }, { 89,5406 }, { 90,5406 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 95,5406 }, { 0, 0 }, { 97,5406 }, + { 105,5627 }, { 106,5627 }, { 107,5627 }, { 108,5627 }, { 109,5627 }, + { 110,5627 }, { 111,5627 }, { 112,5627 }, { 113,5627 }, { 114,5627 }, + { 115,5627 }, { 116,5627 }, { 117,5627 }, { 118,5627 }, { 119,5627 }, + { 120,5627 }, { 121,5627 }, { 122,5627 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,5627 }, { 129,5627 }, + { 130,5627 }, { 131,5627 }, { 132,5627 }, { 133,5627 }, { 134,5627 }, + { 135,5627 }, { 136,5627 }, { 137,5627 }, { 138,5627 }, { 139,5627 }, + { 140,5627 }, { 141,5627 }, { 142,5627 }, { 143,5627 }, { 144,5627 }, + { 145,5627 }, { 146,5627 }, { 147,5627 }, { 148,5627 }, { 149,5627 }, + { 150,5627 }, { 151,5627 }, { 152,5627 }, { 153,5627 }, { 154,5627 }, - { 98,5406 }, { 99,5406 }, { 100,5406 }, { 101,5406 }, { 102,5406 }, - { 103,5406 }, { 104,5406 }, { 105,5406 }, { 106,5406 }, { 107,5406 }, - { 108,5406 }, { 109,5406 }, { 110,5406 }, { 111,5406 }, { 112,5406 }, - { 113,5406 }, { 114,5406 }, { 115,5406 }, { 116,5406 }, { 117,5406 }, - { 118,5406 }, { 119,5406 }, { 120,5406 }, { 121,5406 }, { 122,5406 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 128,5406 }, { 129,5406 }, { 130,5406 }, { 131,5406 }, { 132,5406 }, - { 133,5406 }, { 134,5406 }, { 135,5406 }, { 136,5406 }, { 137,5406 }, - { 138,5406 }, { 139,5406 }, { 140,5406 }, { 141,5406 }, { 142,5406 }, - { 143,5406 }, { 144,5406 }, { 145,5406 }, { 146,5406 }, { 147,5406 }, - - { 148,5406 }, { 149,5406 }, { 150,5406 }, { 151,5406 }, { 152,5406 }, - { 153,5406 }, { 154,5406 }, { 155,5406 }, { 156,5406 }, { 157,5406 }, - { 158,5406 }, { 159,5406 }, { 160,5406 }, { 161,5406 }, { 162,5406 }, - { 163,5406 }, { 164,5406 }, { 165,5406 }, { 166,5406 }, { 167,5406 }, - { 168,5406 }, { 169,5406 }, { 170,5406 }, { 171,5406 }, { 172,5406 }, - { 173,5406 }, { 174,5406 }, { 175,5406 }, { 176,5406 }, { 177,5406 }, - { 178,5406 }, { 179,5406 }, { 180,5406 }, { 181,5406 }, { 182,5406 }, - { 183,5406 }, { 184,5406 }, { 185,5406 }, { 186,5406 }, { 187,5406 }, - { 188,5406 }, { 189,5406 }, { 190,5406 }, { 191,5406 }, { 192,5406 }, - { 193,5406 }, { 194,5406 }, { 195,5406 }, { 196,5406 }, { 197,5406 }, - - { 198,5406 }, { 199,5406 }, { 200,5406 }, { 201,5406 }, { 202,5406 }, - { 203,5406 }, { 204,5406 }, { 205,5406 }, { 206,5406 }, { 207,5406 }, - { 208,5406 }, { 209,5406 }, { 210,5406 }, { 211,5406 }, { 212,5406 }, - { 213,5406 }, { 214,5406 }, { 215,5406 }, { 216,5406 }, { 217,5406 }, - { 218,5406 }, { 219,5406 }, { 220,5406 }, { 221,5406 }, { 222,5406 }, - { 223,5406 }, { 224,5406 }, { 225,5406 }, { 226,5406 }, { 227,5406 }, - { 228,5406 }, { 229,5406 }, { 230,5406 }, { 231,5406 }, { 232,5406 }, - { 233,5406 }, { 234,5406 }, { 235,5406 }, { 236,5406 }, { 237,5406 }, - { 238,5406 }, { 239,5406 }, { 240,5406 }, { 241,5406 }, { 242,5406 }, - { 243,5406 }, { 244,5406 }, { 245,5406 }, { 246,5406 }, { 247,5406 }, - - { 248,5406 }, { 249,5406 }, { 250,5406 }, { 251,5406 }, { 252,5406 }, - { 253,5406 }, { 254,5406 }, { 255,5406 }, { 0, 63 }, { 0,10064 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 36,5149 }, { 0, 0 }, { 0, 0 }, { 39,-1027 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 48,5149 }, { 49,5149 }, { 50,5149 }, - { 51,5149 }, { 52,5149 }, { 53,5149 }, { 54,5149 }, { 55,5149 }, - { 56,5149 }, { 57,5149 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,5149 }, - { 66,5149 }, { 67,5149 }, { 68,5149 }, { 69,5149 }, { 70,5149 }, - { 71,5149 }, { 72,5149 }, { 73,5149 }, { 74,5149 }, { 75,5149 }, - { 76,5149 }, { 77,5149 }, { 78,5149 }, { 79,5149 }, { 80,5149 }, - { 81,5149 }, { 82,5149 }, { 83,5149 }, { 84,5149 }, { 85,5149 }, - { 86,5149 }, { 87,5149 }, { 88,5149 }, { 89,5149 }, { 90,5149 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95,5149 }, - { 0, 0 }, { 97,5149 }, { 98,5149 }, { 99,5149 }, { 100,5149 }, - { 101,5149 }, { 102,5149 }, { 103,5149 }, { 104,5149 }, { 105,5149 }, - { 106,5149 }, { 107,5149 }, { 108,5149 }, { 109,5149 }, { 110,5149 }, - { 111,5149 }, { 112,5149 }, { 113,5149 }, { 114,5149 }, { 115,5149 }, - { 116,5149 }, { 117,5149 }, { 118,5149 }, { 119,5149 }, { 120,5149 }, - { 121,5149 }, { 122,5149 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 128,5149 }, { 129,5149 }, { 130,5149 }, - { 131,5149 }, { 132,5149 }, { 133,5149 }, { 134,5149 }, { 135,5149 }, - { 136,5149 }, { 137,5149 }, { 138,5149 }, { 139,5149 }, { 140,5149 }, + { 155,5627 }, { 156,5627 }, { 157,5627 }, { 158,5627 }, { 159,5627 }, + { 160,5627 }, { 161,5627 }, { 162,5627 }, { 163,5627 }, { 164,5627 }, + { 165,5627 }, { 166,5627 }, { 167,5627 }, { 168,5627 }, { 169,5627 }, + { 170,5627 }, { 171,5627 }, { 172,5627 }, { 173,5627 }, { 174,5627 }, + { 175,5627 }, { 176,5627 }, { 177,5627 }, { 178,5627 }, { 179,5627 }, + { 180,5627 }, { 181,5627 }, { 182,5627 }, { 183,5627 }, { 184,5627 }, + { 185,5627 }, { 186,5627 }, { 187,5627 }, { 188,5627 }, { 189,5627 }, + { 190,5627 }, { 191,5627 }, { 192,5627 }, { 193,5627 }, { 194,5627 }, + { 195,5627 }, { 196,5627 }, { 197,5627 }, { 198,5627 }, { 199,5627 }, + { 200,5627 }, { 201,5627 }, { 202,5627 }, { 203,5627 }, { 204,5627 }, - { 141,5149 }, { 142,5149 }, { 143,5149 }, { 144,5149 }, { 145,5149 }, - { 146,5149 }, { 147,5149 }, { 148,5149 }, { 149,5149 }, { 150,5149 }, - { 151,5149 }, { 152,5149 }, { 153,5149 }, { 154,5149 }, { 155,5149 }, - { 156,5149 }, { 157,5149 }, { 158,5149 }, { 159,5149 }, { 160,5149 }, - { 161,5149 }, { 162,5149 }, { 163,5149 }, { 164,5149 }, { 165,5149 }, - { 166,5149 }, { 167,5149 }, { 168,5149 }, { 169,5149 }, { 170,5149 }, - { 171,5149 }, { 172,5149 }, { 173,5149 }, { 174,5149 }, { 175,5149 }, - { 176,5149 }, { 177,5149 }, { 178,5149 }, { 179,5149 }, { 180,5149 }, - { 181,5149 }, { 182,5149 }, { 183,5149 }, { 184,5149 }, { 185,5149 }, - { 186,5149 }, { 187,5149 }, { 188,5149 }, { 189,5149 }, { 190,5149 }, - - { 191,5149 }, { 192,5149 }, { 193,5149 }, { 194,5149 }, { 195,5149 }, - { 196,5149 }, { 197,5149 }, { 198,5149 }, { 199,5149 }, { 200,5149 }, - { 201,5149 }, { 202,5149 }, { 203,5149 }, { 204,5149 }, { 205,5149 }, - { 206,5149 }, { 207,5149 }, { 208,5149 }, { 209,5149 }, { 210,5149 }, - { 211,5149 }, { 212,5149 }, { 213,5149 }, { 214,5149 }, { 215,5149 }, - { 216,5149 }, { 217,5149 }, { 218,5149 }, { 219,5149 }, { 220,5149 }, - { 221,5149 }, { 222,5149 }, { 223,5149 }, { 224,5149 }, { 225,5149 }, - { 226,5149 }, { 227,5149 }, { 228,5149 }, { 229,5149 }, { 230,5149 }, - { 231,5149 }, { 232,5149 }, { 233,5149 }, { 234,5149 }, { 235,5149 }, - { 236,5149 }, { 237,5149 }, { 238,5149 }, { 239,5149 }, { 240,5149 }, - - { 241,5149 }, { 242,5149 }, { 243,5149 }, { 244,5149 }, { 245,5149 }, - { 246,5149 }, { 247,5149 }, { 248,5149 }, { 249,5149 }, { 250,5149 }, - { 251,5149 }, { 252,5149 }, { 253,5149 }, { 254,5149 }, { 255,5149 }, - { 0, 63 }, { 0,9807 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 36,4892 }, { 0, 0 }, { 0, 0 }, - { 39,-1282 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,4892 }, - { 49,4892 }, { 50,4892 }, { 51,4892 }, { 52,4892 }, { 53,4892 }, - { 54,4892 }, { 55,4892 }, { 56,4892 }, { 57,4892 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 65,4892 }, { 66,4892 }, { 67,4892 }, { 68,4892 }, - { 69,4892 }, { 70,4892 }, { 71,4892 }, { 72,4892 }, { 73,4892 }, - { 74,4892 }, { 75,4892 }, { 76,4892 }, { 77,4892 }, { 78,4892 }, - { 79,4892 }, { 80,4892 }, { 81,4892 }, { 82,4892 }, { 83,4892 }, - - { 84,4892 }, { 85,4892 }, { 86,4892 }, { 87,4892 }, { 88,4892 }, - { 89,4892 }, { 90,4892 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 95,4892 }, { 0, 0 }, { 97,4892 }, { 98,4892 }, - { 99,4892 }, { 100,4892 }, { 101,4892 }, { 102,4892 }, { 103,4892 }, - { 104,4892 }, { 105,4892 }, { 106,4892 }, { 107,4892 }, { 108,4892 }, - { 109,4892 }, { 110,4892 }, { 111,4892 }, { 112,4892 }, { 113,4892 }, - { 114,4892 }, { 115,4892 }, { 116,4892 }, { 117,4892 }, { 118,4892 }, - { 119,4892 }, { 120,4892 }, { 121,4892 }, { 122,4892 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,4892 }, - { 129,4892 }, { 130,4892 }, { 131,4892 }, { 132,4892 }, { 133,4892 }, - - { 134,4892 }, { 135,4892 }, { 136,4892 }, { 137,4892 }, { 138,4892 }, - { 139,4892 }, { 140,4892 }, { 141,4892 }, { 142,4892 }, { 143,4892 }, - { 144,4892 }, { 145,4892 }, { 146,4892 }, { 147,4892 }, { 148,4892 }, - { 149,4892 }, { 150,4892 }, { 151,4892 }, { 152,4892 }, { 153,4892 }, - { 154,4892 }, { 155,4892 }, { 156,4892 }, { 157,4892 }, { 158,4892 }, - { 159,4892 }, { 160,4892 }, { 161,4892 }, { 162,4892 }, { 163,4892 }, - { 164,4892 }, { 165,4892 }, { 166,4892 }, { 167,4892 }, { 168,4892 }, - { 169,4892 }, { 170,4892 }, { 171,4892 }, { 172,4892 }, { 173,4892 }, - { 174,4892 }, { 175,4892 }, { 176,4892 }, { 177,4892 }, { 178,4892 }, - { 179,4892 }, { 180,4892 }, { 181,4892 }, { 182,4892 }, { 183,4892 }, - - { 184,4892 }, { 185,4892 }, { 186,4892 }, { 187,4892 }, { 188,4892 }, - { 189,4892 }, { 190,4892 }, { 191,4892 }, { 192,4892 }, { 193,4892 }, - { 194,4892 }, { 195,4892 }, { 196,4892 }, { 197,4892 }, { 198,4892 }, - { 199,4892 }, { 200,4892 }, { 201,4892 }, { 202,4892 }, { 203,4892 }, - { 204,4892 }, { 205,4892 }, { 206,4892 }, { 207,4892 }, { 208,4892 }, - { 209,4892 }, { 210,4892 }, { 211,4892 }, { 212,4892 }, { 213,4892 }, - { 214,4892 }, { 215,4892 }, { 216,4892 }, { 217,4892 }, { 218,4892 }, - { 219,4892 }, { 220,4892 }, { 221,4892 }, { 222,4892 }, { 223,4892 }, - { 224,4892 }, { 225,4892 }, { 226,4892 }, { 227,4892 }, { 228,4892 }, - { 229,4892 }, { 230,4892 }, { 231,4892 }, { 232,4892 }, { 233,4892 }, - - { 234,4892 }, { 235,4892 }, { 236,4892 }, { 237,4892 }, { 238,4892 }, - { 239,4892 }, { 240,4892 }, { 241,4892 }, { 242,4892 }, { 243,4892 }, - { 244,4892 }, { 245,4892 }, { 246,4892 }, { 247,4892 }, { 248,4892 }, - { 249,4892 }, { 250,4892 }, { 251,4892 }, { 252,4892 }, { 253,4892 }, - { 254,4892 }, { 255,4892 }, { 0, 63 }, { 0,9550 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 36,4635 }, - { 0, 0 }, { 38,-1304 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 48,4635 }, { 49,4635 }, { 50,4635 }, { 51,4635 }, - { 52,4635 }, { 53,4635 }, { 54,4635 }, { 55,4635 }, { 56,4635 }, - { 57,4635 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,4635 }, { 66,4635 }, - { 67,4635 }, { 68,4635 }, { 69,4635 }, { 70,4635 }, { 71,4635 }, - { 72,4635 }, { 73,4635 }, { 74,4635 }, { 75,4635 }, { 76,4635 }, - - { 77,4635 }, { 78,4635 }, { 79,4635 }, { 80,4635 }, { 81,4635 }, - { 82,4635 }, { 83,4635 }, { 84,4635 }, { 85,4635 }, { 86,4635 }, - { 87,4635 }, { 88,4635 }, { 89,4635 }, { 90,4635 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95,4635 }, { 0, 0 }, - { 97,4635 }, { 98,4635 }, { 99,4635 }, { 100,4635 }, { 101,4635 }, - { 102,4635 }, { 103,4635 }, { 104,4635 }, { 105,4635 }, { 106,4635 }, - { 107,4635 }, { 108,4635 }, { 109,4635 }, { 110,4635 }, { 111,4635 }, - { 112,4635 }, { 113,4635 }, { 114,4635 }, { 115,4635 }, { 116,4635 }, - { 117,4635 }, { 118,4635 }, { 119,4635 }, { 120,4635 }, { 121,4635 }, - { 122,4635 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 128,4635 }, { 129,4635 }, { 130,4635 }, { 131,4635 }, - { 132,4635 }, { 133,4635 }, { 134,4635 }, { 135,4635 }, { 136,4635 }, - { 137,4635 }, { 138,4635 }, { 139,4635 }, { 140,4635 }, { 141,4635 }, - { 142,4635 }, { 143,4635 }, { 144,4635 }, { 145,4635 }, { 146,4635 }, - { 147,4635 }, { 148,4635 }, { 149,4635 }, { 150,4635 }, { 151,4635 }, - { 152,4635 }, { 153,4635 }, { 154,4635 }, { 155,4635 }, { 156,4635 }, - { 157,4635 }, { 158,4635 }, { 159,4635 }, { 160,4635 }, { 161,4635 }, - { 162,4635 }, { 163,4635 }, { 164,4635 }, { 165,4635 }, { 166,4635 }, - { 167,4635 }, { 168,4635 }, { 169,4635 }, { 170,4635 }, { 171,4635 }, - { 172,4635 }, { 173,4635 }, { 174,4635 }, { 175,4635 }, { 176,4635 }, - - { 177,4635 }, { 178,4635 }, { 179,4635 }, { 180,4635 }, { 181,4635 }, - { 182,4635 }, { 183,4635 }, { 184,4635 }, { 185,4635 }, { 186,4635 }, - { 187,4635 }, { 188,4635 }, { 189,4635 }, { 190,4635 }, { 191,4635 }, - { 192,4635 }, { 193,4635 }, { 194,4635 }, { 195,4635 }, { 196,4635 }, - { 197,4635 }, { 198,4635 }, { 199,4635 }, { 200,4635 }, { 201,4635 }, - { 202,4635 }, { 203,4635 }, { 204,4635 }, { 205,4635 }, { 206,4635 }, - { 207,4635 }, { 208,4635 }, { 209,4635 }, { 210,4635 }, { 211,4635 }, - { 212,4635 }, { 213,4635 }, { 214,4635 }, { 215,4635 }, { 216,4635 }, - { 217,4635 }, { 218,4635 }, { 219,4635 }, { 220,4635 }, { 221,4635 }, - { 222,4635 }, { 223,4635 }, { 224,4635 }, { 225,4635 }, { 226,4635 }, - - { 227,4635 }, { 228,4635 }, { 229,4635 }, { 230,4635 }, { 231,4635 }, - { 232,4635 }, { 233,4635 }, { 234,4635 }, { 235,4635 }, { 236,4635 }, - { 237,4635 }, { 238,4635 }, { 239,4635 }, { 240,4635 }, { 241,4635 }, - { 242,4635 }, { 243,4635 }, { 244,4635 }, { 245,4635 }, { 246,4635 }, - { 247,4635 }, { 248,4635 }, { 249,4635 }, { 250,4635 }, { 251,4635 }, - { 252,4635 }, { 253,4635 }, { 254,4635 }, { 255,4635 }, { 0, 63 }, - { 0,9293 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 36,4378 }, { 0, 0 }, { 0, 0 }, { 39,-1559 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,4378 }, { 49,4378 }, - { 50,4378 }, { 51,4378 }, { 52,4378 }, { 53,4378 }, { 54,4378 }, - { 55,4378 }, { 56,4378 }, { 57,4378 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 65,4378 }, { 66,4378 }, { 67,4378 }, { 68,4378 }, { 69,4378 }, - - { 70,4378 }, { 71,4378 }, { 72,4378 }, { 73,4378 }, { 74,4378 }, - { 75,4378 }, { 76,4378 }, { 77,4378 }, { 78,4378 }, { 79,4378 }, - { 80,4378 }, { 81,4378 }, { 82,4378 }, { 83,4378 }, { 84,4378 }, - { 85,4378 }, { 86,4378 }, { 87,4378 }, { 88,4378 }, { 89,4378 }, - { 90,4378 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 95,4378 }, { 0, 0 }, { 97,4378 }, { 98,4378 }, { 99,4378 }, - { 100,4378 }, { 101,4378 }, { 102,4378 }, { 103,4378 }, { 104,4378 }, - { 105,4378 }, { 106,4378 }, { 107,4378 }, { 108,4378 }, { 109,4378 }, - { 110,4378 }, { 111,4378 }, { 112,4378 }, { 113,4378 }, { 114,4378 }, - { 115,4378 }, { 116,4378 }, { 117,4378 }, { 118,4378 }, { 119,4378 }, - - { 120,4378 }, { 121,4378 }, { 122,4378 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,4378 }, { 129,4378 }, - { 130,4378 }, { 131,4378 }, { 132,4378 }, { 133,4378 }, { 134,4378 }, - { 135,4378 }, { 136,4378 }, { 137,4378 }, { 138,4378 }, { 139,4378 }, - { 140,4378 }, { 141,4378 }, { 142,4378 }, { 143,4378 }, { 144,4378 }, - { 145,4378 }, { 146,4378 }, { 147,4378 }, { 148,4378 }, { 149,4378 }, - { 150,4378 }, { 151,4378 }, { 152,4378 }, { 153,4378 }, { 154,4378 }, - { 155,4378 }, { 156,4378 }, { 157,4378 }, { 158,4378 }, { 159,4378 }, - { 160,4378 }, { 161,4378 }, { 162,4378 }, { 163,4378 }, { 164,4378 }, - { 165,4378 }, { 166,4378 }, { 167,4378 }, { 168,4378 }, { 169,4378 }, - - { 170,4378 }, { 171,4378 }, { 172,4378 }, { 173,4378 }, { 174,4378 }, - { 175,4378 }, { 176,4378 }, { 177,4378 }, { 178,4378 }, { 179,4378 }, - { 180,4378 }, { 181,4378 }, { 182,4378 }, { 183,4378 }, { 184,4378 }, - { 185,4378 }, { 186,4378 }, { 187,4378 }, { 188,4378 }, { 189,4378 }, - { 190,4378 }, { 191,4378 }, { 192,4378 }, { 193,4378 }, { 194,4378 }, - { 195,4378 }, { 196,4378 }, { 197,4378 }, { 198,4378 }, { 199,4378 }, - { 200,4378 }, { 201,4378 }, { 202,4378 }, { 203,4378 }, { 204,4378 }, - { 205,4378 }, { 206,4378 }, { 207,4378 }, { 208,4378 }, { 209,4378 }, - { 210,4378 }, { 211,4378 }, { 212,4378 }, { 213,4378 }, { 214,4378 }, - { 215,4378 }, { 216,4378 }, { 217,4378 }, { 218,4378 }, { 219,4378 }, - - { 220,4378 }, { 221,4378 }, { 222,4378 }, { 223,4378 }, { 224,4378 }, - { 225,4378 }, { 226,4378 }, { 227,4378 }, { 228,4378 }, { 229,4378 }, - { 230,4378 }, { 231,4378 }, { 232,4378 }, { 233,4378 }, { 234,4378 }, - { 235,4378 }, { 236,4378 }, { 237,4378 }, { 238,4378 }, { 239,4378 }, - { 240,4378 }, { 241,4378 }, { 242,4378 }, { 243,4378 }, { 244,4378 }, - { 245,4378 }, { 246,4378 }, { 247,4378 }, { 248,4378 }, { 249,4378 }, - { 250,4378 }, { 251,4378 }, { 252,4378 }, { 253,4378 }, { 254,4378 }, - { 255,4378 }, { 0, 11 }, { 0,9036 }, { 1,4378 }, { 2,4378 }, - { 3,4378 }, { 4,4378 }, { 5,4378 }, { 6,4378 }, { 7,4378 }, - { 8,4378 }, { 9,4378 }, { 10,4378 }, { 11,4378 }, { 12,4378 }, - - { 13,4378 }, { 14,4378 }, { 15,4378 }, { 16,4378 }, { 17,4378 }, - { 18,4378 }, { 19,4378 }, { 20,4378 }, { 21,4378 }, { 22,4378 }, - { 23,4378 }, { 24,4378 }, { 25,4378 }, { 26,4378 }, { 27,4378 }, - { 28,4378 }, { 29,4378 }, { 30,4378 }, { 31,4378 }, { 32,4378 }, - { 33,4378 }, { 34,4378 }, { 35,4378 }, { 36,4378 }, { 37,4378 }, - { 38,4378 }, { 0, 0 }, { 40,4378 }, { 41,4378 }, { 42,4378 }, - { 43,4378 }, { 44,4378 }, { 45,4378 }, { 46,4378 }, { 47,4378 }, - { 48,4378 }, { 49,4378 }, { 50,4378 }, { 51,4378 }, { 52,4378 }, - { 53,4378 }, { 54,4378 }, { 55,4378 }, { 56,4378 }, { 57,4378 }, - { 58,4378 }, { 59,4378 }, { 60,4378 }, { 61,4378 }, { 62,4378 }, - - { 63,4378 }, { 64,4378 }, { 65,4378 }, { 66,4378 }, { 67,4378 }, - { 68,4378 }, { 69,4378 }, { 70,4378 }, { 71,4378 }, { 72,4378 }, - { 73,4378 }, { 74,4378 }, { 75,4378 }, { 76,4378 }, { 77,4378 }, - { 78,4378 }, { 79,4378 }, { 80,4378 }, { 81,4378 }, { 82,4378 }, - { 83,4378 }, { 84,4378 }, { 85,4378 }, { 86,4378 }, { 87,4378 }, - { 88,4378 }, { 89,4378 }, { 90,4378 }, { 91,4378 }, { 92,4378 }, - { 93,4378 }, { 94,4378 }, { 95,4378 }, { 96,4378 }, { 97,4378 }, - { 98,4378 }, { 99,4378 }, { 100,4378 }, { 101,4378 }, { 102,4378 }, - { 103,4378 }, { 104,4378 }, { 105,4378 }, { 106,4378 }, { 107,4378 }, - { 108,4378 }, { 109,4378 }, { 110,4378 }, { 111,4378 }, { 112,4378 }, - - { 113,4378 }, { 114,4378 }, { 115,4378 }, { 116,4378 }, { 117,4378 }, - { 118,4378 }, { 119,4378 }, { 120,4378 }, { 121,4378 }, { 122,4378 }, - { 123,4378 }, { 124,4378 }, { 125,4378 }, { 126,4378 }, { 127,4378 }, - { 128,4378 }, { 129,4378 }, { 130,4378 }, { 131,4378 }, { 132,4378 }, - { 133,4378 }, { 134,4378 }, { 135,4378 }, { 136,4378 }, { 137,4378 }, - { 138,4378 }, { 139,4378 }, { 140,4378 }, { 141,4378 }, { 142,4378 }, - { 143,4378 }, { 144,4378 }, { 145,4378 }, { 146,4378 }, { 147,4378 }, - { 148,4378 }, { 149,4378 }, { 150,4378 }, { 151,4378 }, { 152,4378 }, - { 153,4378 }, { 154,4378 }, { 155,4378 }, { 156,4378 }, { 157,4378 }, - { 158,4378 }, { 159,4378 }, { 160,4378 }, { 161,4378 }, { 162,4378 }, - - { 163,4378 }, { 164,4378 }, { 165,4378 }, { 166,4378 }, { 167,4378 }, - { 168,4378 }, { 169,4378 }, { 170,4378 }, { 171,4378 }, { 172,4378 }, - { 173,4378 }, { 174,4378 }, { 175,4378 }, { 176,4378 }, { 177,4378 }, - { 178,4378 }, { 179,4378 }, { 180,4378 }, { 181,4378 }, { 182,4378 }, - { 183,4378 }, { 184,4378 }, { 185,4378 }, { 186,4378 }, { 187,4378 }, - { 188,4378 }, { 189,4378 }, { 190,4378 }, { 191,4378 }, { 192,4378 }, - { 193,4378 }, { 194,4378 }, { 195,4378 }, { 196,4378 }, { 197,4378 }, - { 198,4378 }, { 199,4378 }, { 200,4378 }, { 201,4378 }, { 202,4378 }, - { 203,4378 }, { 204,4378 }, { 205,4378 }, { 206,4378 }, { 207,4378 }, - { 208,4378 }, { 209,4378 }, { 210,4378 }, { 211,4378 }, { 212,4378 }, - - { 213,4378 }, { 214,4378 }, { 215,4378 }, { 216,4378 }, { 217,4378 }, - { 218,4378 }, { 219,4378 }, { 220,4378 }, { 221,4378 }, { 222,4378 }, - { 223,4378 }, { 224,4378 }, { 225,4378 }, { 226,4378 }, { 227,4378 }, - { 228,4378 }, { 229,4378 }, { 230,4378 }, { 231,4378 }, { 232,4378 }, - { 233,4378 }, { 234,4378 }, { 235,4378 }, { 236,4378 }, { 237,4378 }, - { 238,4378 }, { 239,4378 }, { 240,4378 }, { 241,4378 }, { 242,4378 }, - { 243,4378 }, { 244,4378 }, { 245,4378 }, { 246,4378 }, { 247,4378 }, - { 248,4378 }, { 249,4378 }, { 250,4378 }, { 251,4378 }, { 252,4378 }, - { 253,4378 }, { 254,4378 }, { 255,4378 }, { 256,4378 }, { 0, 6 }, - { 0,8778 }, { 1,4378 }, { 2,4378 }, { 3,4378 }, { 4,4378 }, - - { 5,4378 }, { 6,4378 }, { 7,4378 }, { 8,4378 }, { 9,4378 }, - { 10,4378 }, { 11,4378 }, { 12,4378 }, { 13,4378 }, { 14,4378 }, - { 15,4378 }, { 16,4378 }, { 17,4378 }, { 18,4378 }, { 19,4378 }, - { 20,4378 }, { 21,4378 }, { 22,4378 }, { 23,4378 }, { 24,4378 }, - { 25,4378 }, { 26,4378 }, { 27,4378 }, { 28,4378 }, { 29,4378 }, - { 30,4378 }, { 31,4378 }, { 32,4378 }, { 33,4378 }, { 34,4378 }, - { 35,4378 }, { 36,4378 }, { 37,4378 }, { 38,4378 }, { 39,4378 }, - { 40,4378 }, { 41,4378 }, { 0, 0 }, { 43,4378 }, { 44,4378 }, - { 45,4378 }, { 46,4378 }, { 0, 0 }, { 48,4378 }, { 49,4378 }, - { 50,4378 }, { 51,4378 }, { 52,4378 }, { 53,4378 }, { 54,4378 }, - - { 55,4378 }, { 56,4378 }, { 57,4378 }, { 58,4378 }, { 59,4378 }, - { 60,4378 }, { 61,4378 }, { 62,4378 }, { 63,4378 }, { 64,4378 }, - { 65,4378 }, { 66,4378 }, { 67,4378 }, { 68,4378 }, { 69,4378 }, - { 70,4378 }, { 71,4378 }, { 72,4378 }, { 73,4378 }, { 74,4378 }, - { 75,4378 }, { 76,4378 }, { 77,4378 }, { 78,4378 }, { 79,4378 }, - { 80,4378 }, { 81,4378 }, { 82,4378 }, { 83,4378 }, { 84,4378 }, - { 85,4378 }, { 86,4378 }, { 87,4378 }, { 88,4378 }, { 89,4378 }, - { 90,4378 }, { 91,4378 }, { 92,4378 }, { 93,4378 }, { 94,4378 }, - { 95,4378 }, { 96,4378 }, { 97,4378 }, { 98,4378 }, { 99,4378 }, - { 100,4378 }, { 101,4378 }, { 102,4378 }, { 103,4378 }, { 104,4378 }, - - { 105,4378 }, { 106,4378 }, { 107,4378 }, { 108,4378 }, { 109,4378 }, - { 110,4378 }, { 111,4378 }, { 112,4378 }, { 113,4378 }, { 114,4378 }, - { 115,4378 }, { 116,4378 }, { 117,4378 }, { 118,4378 }, { 119,4378 }, - { 120,4378 }, { 121,4378 }, { 122,4378 }, { 123,4378 }, { 124,4378 }, - { 125,4378 }, { 126,4378 }, { 127,4378 }, { 128,4378 }, { 129,4378 }, - { 130,4378 }, { 131,4378 }, { 132,4378 }, { 133,4378 }, { 134,4378 }, - { 135,4378 }, { 136,4378 }, { 137,4378 }, { 138,4378 }, { 139,4378 }, - { 140,4378 }, { 141,4378 }, { 142,4378 }, { 143,4378 }, { 144,4378 }, - { 145,4378 }, { 146,4378 }, { 147,4378 }, { 148,4378 }, { 149,4378 }, - { 150,4378 }, { 151,4378 }, { 152,4378 }, { 153,4378 }, { 154,4378 }, - - { 155,4378 }, { 156,4378 }, { 157,4378 }, { 158,4378 }, { 159,4378 }, - { 160,4378 }, { 161,4378 }, { 162,4378 }, { 163,4378 }, { 164,4378 }, - { 165,4378 }, { 166,4378 }, { 167,4378 }, { 168,4378 }, { 169,4378 }, - { 170,4378 }, { 171,4378 }, { 172,4378 }, { 173,4378 }, { 174,4378 }, - { 175,4378 }, { 176,4378 }, { 177,4378 }, { 178,4378 }, { 179,4378 }, - { 180,4378 }, { 181,4378 }, { 182,4378 }, { 183,4378 }, { 184,4378 }, - { 185,4378 }, { 186,4378 }, { 187,4378 }, { 188,4378 }, { 189,4378 }, - { 190,4378 }, { 191,4378 }, { 192,4378 }, { 193,4378 }, { 194,4378 }, - { 195,4378 }, { 196,4378 }, { 197,4378 }, { 198,4378 }, { 199,4378 }, - { 200,4378 }, { 201,4378 }, { 202,4378 }, { 203,4378 }, { 204,4378 }, - - { 205,4378 }, { 206,4378 }, { 207,4378 }, { 208,4378 }, { 209,4378 }, - { 210,4378 }, { 211,4378 }, { 212,4378 }, { 213,4378 }, { 214,4378 }, - { 215,4378 }, { 216,4378 }, { 217,4378 }, { 218,4378 }, { 219,4378 }, - { 220,4378 }, { 221,4378 }, { 222,4378 }, { 223,4378 }, { 224,4378 }, - { 225,4378 }, { 226,4378 }, { 227,4378 }, { 228,4378 }, { 229,4378 }, - { 230,4378 }, { 231,4378 }, { 232,4378 }, { 233,4378 }, { 234,4378 }, - { 235,4378 }, { 236,4378 }, { 237,4378 }, { 238,4378 }, { 239,4378 }, - { 240,4378 }, { 241,4378 }, { 242,4378 }, { 243,4378 }, { 244,4378 }, - { 245,4378 }, { 246,4378 }, { 247,4378 }, { 248,4378 }, { 249,4378 }, - { 250,4378 }, { 251,4378 }, { 252,4378 }, { 253,4378 }, { 254,4378 }, - - { 255,4378 }, { 256,4378 }, { 0, 6 }, { 0,8520 }, { 1,4120 }, - { 2,4120 }, { 3,4120 }, { 4,4120 }, { 5,4120 }, { 6,4120 }, - { 7,4120 }, { 8,4120 }, { 9,4120 }, { 10,4120 }, { 11,4120 }, - { 12,4120 }, { 13,4120 }, { 14,4120 }, { 15,4120 }, { 16,4120 }, - { 17,4120 }, { 18,4120 }, { 19,4120 }, { 20,4120 }, { 21,4120 }, - { 22,4120 }, { 23,4120 }, { 24,4120 }, { 25,4120 }, { 26,4120 }, - { 27,4120 }, { 28,4120 }, { 29,4120 }, { 30,4120 }, { 31,4120 }, - { 32,4120 }, { 33,4120 }, { 34,4120 }, { 35,4120 }, { 36,4120 }, - { 37,4120 }, { 38,4120 }, { 39,4120 }, { 40,4120 }, { 41,4120 }, - { 0, 0 }, { 43,4120 }, { 44,4120 }, { 45,4120 }, { 46,4120 }, - - { 0, 0 }, { 48,4120 }, { 49,4120 }, { 50,4120 }, { 51,4120 }, - { 52,4120 }, { 53,4120 }, { 54,4120 }, { 55,4120 }, { 56,4120 }, - { 57,4120 }, { 58,4120 }, { 59,4120 }, { 60,4120 }, { 61,4120 }, - { 62,4120 }, { 63,4120 }, { 64,4120 }, { 65,4120 }, { 66,4120 }, - { 67,4120 }, { 68,4120 }, { 69,4120 }, { 70,4120 }, { 71,4120 }, - { 72,4120 }, { 73,4120 }, { 74,4120 }, { 75,4120 }, { 76,4120 }, - { 77,4120 }, { 78,4120 }, { 79,4120 }, { 80,4120 }, { 81,4120 }, - { 82,4120 }, { 83,4120 }, { 84,4120 }, { 85,4120 }, { 86,4120 }, - { 87,4120 }, { 88,4120 }, { 89,4120 }, { 90,4120 }, { 91,4120 }, - { 92,4120 }, { 93,4120 }, { 94,4120 }, { 95,4120 }, { 96,4120 }, - - { 97,4120 }, { 98,4120 }, { 99,4120 }, { 100,4120 }, { 101,4120 }, - { 102,4120 }, { 103,4120 }, { 104,4120 }, { 105,4120 }, { 106,4120 }, - { 107,4120 }, { 108,4120 }, { 109,4120 }, { 110,4120 }, { 111,4120 }, - { 112,4120 }, { 113,4120 }, { 114,4120 }, { 115,4120 }, { 116,4120 }, - { 117,4120 }, { 118,4120 }, { 119,4120 }, { 120,4120 }, { 121,4120 }, - { 122,4120 }, { 123,4120 }, { 124,4120 }, { 125,4120 }, { 126,4120 }, - { 127,4120 }, { 128,4120 }, { 129,4120 }, { 130,4120 }, { 131,4120 }, - { 132,4120 }, { 133,4120 }, { 134,4120 }, { 135,4120 }, { 136,4120 }, - { 137,4120 }, { 138,4120 }, { 139,4120 }, { 140,4120 }, { 141,4120 }, - { 142,4120 }, { 143,4120 }, { 144,4120 }, { 145,4120 }, { 146,4120 }, - - { 147,4120 }, { 148,4120 }, { 149,4120 }, { 150,4120 }, { 151,4120 }, - { 152,4120 }, { 153,4120 }, { 154,4120 }, { 155,4120 }, { 156,4120 }, - { 157,4120 }, { 158,4120 }, { 159,4120 }, { 160,4120 }, { 161,4120 }, - { 162,4120 }, { 163,4120 }, { 164,4120 }, { 165,4120 }, { 166,4120 }, - { 167,4120 }, { 168,4120 }, { 169,4120 }, { 170,4120 }, { 171,4120 }, - { 172,4120 }, { 173,4120 }, { 174,4120 }, { 175,4120 }, { 176,4120 }, - { 177,4120 }, { 178,4120 }, { 179,4120 }, { 180,4120 }, { 181,4120 }, - { 182,4120 }, { 183,4120 }, { 184,4120 }, { 185,4120 }, { 186,4120 }, - { 187,4120 }, { 188,4120 }, { 189,4120 }, { 190,4120 }, { 191,4120 }, - { 192,4120 }, { 193,4120 }, { 194,4120 }, { 195,4120 }, { 196,4120 }, - - { 197,4120 }, { 198,4120 }, { 199,4120 }, { 200,4120 }, { 201,4120 }, - { 202,4120 }, { 203,4120 }, { 204,4120 }, { 205,4120 }, { 206,4120 }, - { 207,4120 }, { 208,4120 }, { 209,4120 }, { 210,4120 }, { 211,4120 }, - { 212,4120 }, { 213,4120 }, { 214,4120 }, { 215,4120 }, { 216,4120 }, - { 217,4120 }, { 218,4120 }, { 219,4120 }, { 220,4120 }, { 221,4120 }, - { 222,4120 }, { 223,4120 }, { 224,4120 }, { 225,4120 }, { 226,4120 }, - { 227,4120 }, { 228,4120 }, { 229,4120 }, { 230,4120 }, { 231,4120 }, - { 232,4120 }, { 233,4120 }, { 234,4120 }, { 235,4120 }, { 236,4120 }, - { 237,4120 }, { 238,4120 }, { 239,4120 }, { 240,4120 }, { 241,4120 }, - { 242,4120 }, { 243,4120 }, { 244,4120 }, { 245,4120 }, { 246,4120 }, - - { 247,4120 }, { 248,4120 }, { 249,4120 }, { 250,4120 }, { 251,4120 }, - { 252,4120 }, { 253,4120 }, { 254,4120 }, { 255,4120 }, { 256,4120 }, - { 0, 44 }, { 0,8262 }, { 1,4248 }, { 2,4248 }, { 3,4248 }, - { 4,4248 }, { 5,4248 }, { 6,4248 }, { 7,4248 }, { 8,4248 }, - { 9,4248 }, { 10,4248 }, { 11,4248 }, { 12,4248 }, { 13,4248 }, - { 14,4248 }, { 15,4248 }, { 16,4248 }, { 17,4248 }, { 18,4248 }, - { 19,4248 }, { 20,4248 }, { 21,4248 }, { 22,4248 }, { 23,4248 }, - { 24,4248 }, { 25,4248 }, { 26,4248 }, { 27,4248 }, { 28,4248 }, - { 29,4248 }, { 30,4248 }, { 31,4248 }, { 32,4248 }, { 33,4248 }, - { 0, 0 }, { 35,4248 }, { 36,4248 }, { 37,4248 }, { 38,4248 }, - - { 39,4248 }, { 40,4248 }, { 41,4248 }, { 42,4248 }, { 43,4248 }, - { 44,4248 }, { 45,4248 }, { 46,4248 }, { 47,4248 }, { 48,4248 }, - { 49,4248 }, { 50,4248 }, { 51,4248 }, { 52,4248 }, { 53,4248 }, - { 54,4248 }, { 55,4248 }, { 56,4248 }, { 57,4248 }, { 58,4248 }, - { 59,4248 }, { 60,4248 }, { 61,4248 }, { 62,4248 }, { 63,4248 }, - { 64,4248 }, { 65,4248 }, { 66,4248 }, { 67,4248 }, { 68,4248 }, - { 69,4248 }, { 70,4248 }, { 71,4248 }, { 72,4248 }, { 73,4248 }, - { 74,4248 }, { 75,4248 }, { 76,4248 }, { 77,4248 }, { 78,4248 }, - { 79,4248 }, { 80,4248 }, { 81,4248 }, { 82,4248 }, { 83,4248 }, - { 84,4248 }, { 85,4248 }, { 86,4248 }, { 87,4248 }, { 88,4248 }, - - { 89,4248 }, { 90,4248 }, { 91,4248 }, { 92,4248 }, { 93,4248 }, - { 94,4248 }, { 95,4248 }, { 96,4248 }, { 97,4248 }, { 98,4248 }, - { 99,4248 }, { 100,4248 }, { 101,4248 }, { 102,4248 }, { 103,4248 }, - { 104,4248 }, { 105,4248 }, { 106,4248 }, { 107,4248 }, { 108,4248 }, - { 109,4248 }, { 110,4248 }, { 111,4248 }, { 112,4248 }, { 113,4248 }, - { 114,4248 }, { 115,4248 }, { 116,4248 }, { 117,4248 }, { 118,4248 }, - { 119,4248 }, { 120,4248 }, { 121,4248 }, { 122,4248 }, { 123,4248 }, - { 124,4248 }, { 125,4248 }, { 126,4248 }, { 127,4248 }, { 128,4248 }, - { 129,4248 }, { 130,4248 }, { 131,4248 }, { 132,4248 }, { 133,4248 }, - { 134,4248 }, { 135,4248 }, { 136,4248 }, { 137,4248 }, { 138,4248 }, - - { 139,4248 }, { 140,4248 }, { 141,4248 }, { 142,4248 }, { 143,4248 }, - { 144,4248 }, { 145,4248 }, { 146,4248 }, { 147,4248 }, { 148,4248 }, - { 149,4248 }, { 150,4248 }, { 151,4248 }, { 152,4248 }, { 153,4248 }, - { 154,4248 }, { 155,4248 }, { 156,4248 }, { 157,4248 }, { 158,4248 }, - { 159,4248 }, { 160,4248 }, { 161,4248 }, { 162,4248 }, { 163,4248 }, - { 164,4248 }, { 165,4248 }, { 166,4248 }, { 167,4248 }, { 168,4248 }, - { 169,4248 }, { 170,4248 }, { 171,4248 }, { 172,4248 }, { 173,4248 }, - { 174,4248 }, { 175,4248 }, { 176,4248 }, { 177,4248 }, { 178,4248 }, - { 179,4248 }, { 180,4248 }, { 181,4248 }, { 182,4248 }, { 183,4248 }, - { 184,4248 }, { 185,4248 }, { 186,4248 }, { 187,4248 }, { 188,4248 }, - - { 189,4248 }, { 190,4248 }, { 191,4248 }, { 192,4248 }, { 193,4248 }, - { 194,4248 }, { 195,4248 }, { 196,4248 }, { 197,4248 }, { 198,4248 }, - { 199,4248 }, { 200,4248 }, { 201,4248 }, { 202,4248 }, { 203,4248 }, - { 204,4248 }, { 205,4248 }, { 206,4248 }, { 207,4248 }, { 208,4248 }, - { 209,4248 }, { 210,4248 }, { 211,4248 }, { 212,4248 }, { 213,4248 }, - { 214,4248 }, { 215,4248 }, { 216,4248 }, { 217,4248 }, { 218,4248 }, - { 219,4248 }, { 220,4248 }, { 221,4248 }, { 222,4248 }, { 223,4248 }, - { 224,4248 }, { 225,4248 }, { 226,4248 }, { 227,4248 }, { 228,4248 }, - { 229,4248 }, { 230,4248 }, { 231,4248 }, { 232,4248 }, { 233,4248 }, - { 234,4248 }, { 235,4248 }, { 236,4248 }, { 237,4248 }, { 238,4248 }, - - { 239,4248 }, { 240,4248 }, { 241,4248 }, { 242,4248 }, { 243,4248 }, - { 244,4248 }, { 245,4248 }, { 246,4248 }, { 247,4248 }, { 248,4248 }, - { 249,4248 }, { 250,4248 }, { 251,4248 }, { 252,4248 }, { 253,4248 }, - { 254,4248 }, { 255,4248 }, { 256,4248 }, { 0, 10 }, { 0,8004 }, - { 1,4248 }, { 2,4248 }, { 3,4248 }, { 4,4248 }, { 5,4248 }, - { 6,4248 }, { 7,4248 }, { 8,4248 }, { 9,4248 }, { 10,4248 }, - { 11,4248 }, { 12,4248 }, { 13,4248 }, { 14,4248 }, { 15,4248 }, - { 16,4248 }, { 17,4248 }, { 18,4248 }, { 19,4248 }, { 20,4248 }, - { 21,4248 }, { 22,4248 }, { 23,4248 }, { 24,4248 }, { 25,4248 }, - { 26,4248 }, { 27,4248 }, { 28,4248 }, { 29,4248 }, { 30,4248 }, - - { 31,4248 }, { 32,4248 }, { 33,4248 }, { 34,4248 }, { 35,4248 }, - { 36,4248 }, { 37,4248 }, { 38,4248 }, { 0, 0 }, { 40,4248 }, - { 41,4248 }, { 42,4248 }, { 43,4248 }, { 44,4248 }, { 45,4248 }, - { 46,4248 }, { 47,4248 }, { 48,4248 }, { 49,4248 }, { 50,4248 }, - { 51,4248 }, { 52,4248 }, { 53,4248 }, { 54,4248 }, { 55,4248 }, - { 56,4248 }, { 57,4248 }, { 58,4248 }, { 59,4248 }, { 60,4248 }, - { 61,4248 }, { 62,4248 }, { 63,4248 }, { 64,4248 }, { 65,4248 }, - { 66,4248 }, { 67,4248 }, { 68,4248 }, { 69,4248 }, { 70,4248 }, - { 71,4248 }, { 72,4248 }, { 73,4248 }, { 74,4248 }, { 75,4248 }, - { 76,4248 }, { 77,4248 }, { 78,4248 }, { 79,4248 }, { 80,4248 }, - - { 81,4248 }, { 82,4248 }, { 83,4248 }, { 84,4248 }, { 85,4248 }, - { 86,4248 }, { 87,4248 }, { 88,4248 }, { 89,4248 }, { 90,4248 }, - { 91,4248 }, { 92,4248 }, { 93,4248 }, { 94,4248 }, { 95,4248 }, - { 96,4248 }, { 97,4248 }, { 98,4248 }, { 99,4248 }, { 100,4248 }, - { 101,4248 }, { 102,4248 }, { 103,4248 }, { 104,4248 }, { 105,4248 }, - { 106,4248 }, { 107,4248 }, { 108,4248 }, { 109,4248 }, { 110,4248 }, - { 111,4248 }, { 112,4248 }, { 113,4248 }, { 114,4248 }, { 115,4248 }, - { 116,4248 }, { 117,4248 }, { 118,4248 }, { 119,4248 }, { 120,4248 }, - { 121,4248 }, { 122,4248 }, { 123,4248 }, { 124,4248 }, { 125,4248 }, - { 126,4248 }, { 127,4248 }, { 128,4248 }, { 129,4248 }, { 130,4248 }, - - { 131,4248 }, { 132,4248 }, { 133,4248 }, { 134,4248 }, { 135,4248 }, - { 136,4248 }, { 137,4248 }, { 138,4248 }, { 139,4248 }, { 140,4248 }, - { 141,4248 }, { 142,4248 }, { 143,4248 }, { 144,4248 }, { 145,4248 }, - { 146,4248 }, { 147,4248 }, { 148,4248 }, { 149,4248 }, { 150,4248 }, - { 151,4248 }, { 152,4248 }, { 153,4248 }, { 154,4248 }, { 155,4248 }, - { 156,4248 }, { 157,4248 }, { 158,4248 }, { 159,4248 }, { 160,4248 }, - { 161,4248 }, { 162,4248 }, { 163,4248 }, { 164,4248 }, { 165,4248 }, - { 166,4248 }, { 167,4248 }, { 168,4248 }, { 169,4248 }, { 170,4248 }, - { 171,4248 }, { 172,4248 }, { 173,4248 }, { 174,4248 }, { 175,4248 }, - { 176,4248 }, { 177,4248 }, { 178,4248 }, { 179,4248 }, { 180,4248 }, - - { 181,4248 }, { 182,4248 }, { 183,4248 }, { 184,4248 }, { 185,4248 }, - { 186,4248 }, { 187,4248 }, { 188,4248 }, { 189,4248 }, { 190,4248 }, - { 191,4248 }, { 192,4248 }, { 193,4248 }, { 194,4248 }, { 195,4248 }, - { 196,4248 }, { 197,4248 }, { 198,4248 }, { 199,4248 }, { 200,4248 }, - { 201,4248 }, { 202,4248 }, { 203,4248 }, { 204,4248 }, { 205,4248 }, - { 206,4248 }, { 207,4248 }, { 208,4248 }, { 209,4248 }, { 210,4248 }, - { 211,4248 }, { 212,4248 }, { 213,4248 }, { 214,4248 }, { 215,4248 }, - { 216,4248 }, { 217,4248 }, { 218,4248 }, { 219,4248 }, { 220,4248 }, - { 221,4248 }, { 222,4248 }, { 223,4248 }, { 224,4248 }, { 225,4248 }, - { 226,4248 }, { 227,4248 }, { 228,4248 }, { 229,4248 }, { 230,4248 }, - - { 231,4248 }, { 232,4248 }, { 233,4248 }, { 234,4248 }, { 235,4248 }, - { 236,4248 }, { 237,4248 }, { 238,4248 }, { 239,4248 }, { 240,4248 }, - { 241,4248 }, { 242,4248 }, { 243,4248 }, { 244,4248 }, { 245,4248 }, - { 246,4248 }, { 247,4248 }, { 248,4248 }, { 249,4248 }, { 250,4248 }, - { 251,4248 }, { 252,4248 }, { 253,4248 }, { 254,4248 }, { 255,4248 }, - { 256,4248 }, { 0, 22 }, { 0,7746 }, { 1,4248 }, { 2,4248 }, - { 3,4248 }, { 4,4248 }, { 5,4248 }, { 6,4248 }, { 7,4248 }, - { 8,4248 }, { 9,4248 }, { 10,4248 }, { 11,4248 }, { 12,4248 }, - { 13,4248 }, { 14,4248 }, { 15,4248 }, { 16,4248 }, { 17,4248 }, - { 18,4248 }, { 19,4248 }, { 20,4248 }, { 21,4248 }, { 22,4248 }, - - { 23,4248 }, { 24,4248 }, { 25,4248 }, { 26,4248 }, { 27,4248 }, - { 28,4248 }, { 29,4248 }, { 30,4248 }, { 31,4248 }, { 32,4248 }, - { 33,4248 }, { 34,4248 }, { 35,4248 }, { 36,4248 }, { 37,4248 }, - { 38,4248 }, { 0, 0 }, { 40,4248 }, { 41,4248 }, { 42,4248 }, - { 43,4248 }, { 44,4248 }, { 45,4248 }, { 46,4248 }, { 47,4248 }, - { 48,4248 }, { 49,4248 }, { 50,4248 }, { 51,4248 }, { 52,4248 }, - { 53,4248 }, { 54,4248 }, { 55,4248 }, { 56,4248 }, { 57,4248 }, - { 58,4248 }, { 59,4248 }, { 60,4248 }, { 61,4248 }, { 62,4248 }, - { 63,4248 }, { 64,4248 }, { 65,4248 }, { 66,4248 }, { 67,4248 }, - { 68,4248 }, { 69,4248 }, { 70,4248 }, { 71,4248 }, { 72,4248 }, - - { 73,4248 }, { 74,4248 }, { 75,4248 }, { 76,4248 }, { 77,4248 }, - { 78,4248 }, { 79,4248 }, { 80,4248 }, { 81,4248 }, { 82,4248 }, - { 83,4248 }, { 84,4248 }, { 85,4248 }, { 86,4248 }, { 87,4248 }, - { 88,4248 }, { 89,4248 }, { 90,4248 }, { 91,4248 }, { 92,4248 }, - { 93,4248 }, { 94,4248 }, { 95,4248 }, { 96,4248 }, { 97,4248 }, - { 98,4248 }, { 99,4248 }, { 100,4248 }, { 101,4248 }, { 102,4248 }, - { 103,4248 }, { 104,4248 }, { 105,4248 }, { 106,4248 }, { 107,4248 }, - { 108,4248 }, { 109,4248 }, { 110,4248 }, { 111,4248 }, { 112,4248 }, - { 113,4248 }, { 114,4248 }, { 115,4248 }, { 116,4248 }, { 117,4248 }, - { 118,4248 }, { 119,4248 }, { 120,4248 }, { 121,4248 }, { 122,4248 }, - - { 123,4248 }, { 124,4248 }, { 125,4248 }, { 126,4248 }, { 127,4248 }, - { 128,4248 }, { 129,4248 }, { 130,4248 }, { 131,4248 }, { 132,4248 }, - { 133,4248 }, { 134,4248 }, { 135,4248 }, { 136,4248 }, { 137,4248 }, - { 138,4248 }, { 139,4248 }, { 140,4248 }, { 141,4248 }, { 142,4248 }, - { 143,4248 }, { 144,4248 }, { 145,4248 }, { 146,4248 }, { 147,4248 }, - { 148,4248 }, { 149,4248 }, { 150,4248 }, { 151,4248 }, { 152,4248 }, - { 153,4248 }, { 154,4248 }, { 155,4248 }, { 156,4248 }, { 157,4248 }, - { 158,4248 }, { 159,4248 }, { 160,4248 }, { 161,4248 }, { 162,4248 }, - { 163,4248 }, { 164,4248 }, { 165,4248 }, { 166,4248 }, { 167,4248 }, - { 168,4248 }, { 169,4248 }, { 170,4248 }, { 171,4248 }, { 172,4248 }, - - { 173,4248 }, { 174,4248 }, { 175,4248 }, { 176,4248 }, { 177,4248 }, - { 178,4248 }, { 179,4248 }, { 180,4248 }, { 181,4248 }, { 182,4248 }, - { 183,4248 }, { 184,4248 }, { 185,4248 }, { 186,4248 }, { 187,4248 }, - { 188,4248 }, { 189,4248 }, { 190,4248 }, { 191,4248 }, { 192,4248 }, - { 193,4248 }, { 194,4248 }, { 195,4248 }, { 196,4248 }, { 197,4248 }, - { 198,4248 }, { 199,4248 }, { 200,4248 }, { 201,4248 }, { 202,4248 }, - { 203,4248 }, { 204,4248 }, { 205,4248 }, { 206,4248 }, { 207,4248 }, - { 208,4248 }, { 209,4248 }, { 210,4248 }, { 211,4248 }, { 212,4248 }, - { 213,4248 }, { 214,4248 }, { 215,4248 }, { 216,4248 }, { 217,4248 }, - { 218,4248 }, { 219,4248 }, { 220,4248 }, { 221,4248 }, { 222,4248 }, - - { 223,4248 }, { 224,4248 }, { 225,4248 }, { 226,4248 }, { 227,4248 }, - { 228,4248 }, { 229,4248 }, { 230,4248 }, { 231,4248 }, { 232,4248 }, - { 233,4248 }, { 234,4248 }, { 235,4248 }, { 236,4248 }, { 237,4248 }, - { 238,4248 }, { 239,4248 }, { 240,4248 }, { 241,4248 }, { 242,4248 }, - { 243,4248 }, { 244,4248 }, { 245,4248 }, { 246,4248 }, { 247,4248 }, - { 248,4248 }, { 249,4248 }, { 250,4248 }, { 251,4248 }, { 252,4248 }, - { 253,4248 }, { 254,4248 }, { 255,4248 }, { 256,4248 }, { 0, 19 }, - { 0,7488 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 19 }, - { 0,7483 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 9,4248 }, - { 10,4253 }, { 0, 0 }, { 12,4248 }, { 13,4253 }, { 9,4264 }, - - { 10,4264 }, { 0, 0 }, { 12,4264 }, { 13,4264 }, { 0, 0 }, - { 0, 19 }, { 0,7467 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 9,4248 }, { 10,4248 }, { 32,4248 }, { 12,4248 }, { 13,4248 }, - { 0, 0 }, { 0, 0 }, { 32,4264 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 39,-3352 }, - { 45,-3349 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 45,-3354 }, { 0, 0 }, { 0, 0 }, { 32,4248 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 39,-3368 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 45,-3370 }, { 0, 23 }, { 0,7420 }, { 1,4248 }, - { 2,4248 }, { 3,4248 }, { 4,4248 }, { 5,4248 }, { 6,4248 }, - { 7,4248 }, { 8,4248 }, { 9,4248 }, { 10,4248 }, { 11,4248 }, - { 12,4248 }, { 13,4248 }, { 14,4248 }, { 15,4248 }, { 16,4248 }, - { 17,4248 }, { 18,4248 }, { 19,4248 }, { 20,4248 }, { 21,4248 }, - { 22,4248 }, { 23,4248 }, { 24,4248 }, { 25,4248 }, { 26,4248 }, - { 27,4248 }, { 28,4248 }, { 29,4248 }, { 30,4248 }, { 31,4248 }, - { 32,4248 }, { 33,4248 }, { 34,4248 }, { 35,4248 }, { 36,4248 }, - { 37,4248 }, { 38,4248 }, { 0, 0 }, { 40,4248 }, { 41,4248 }, - { 42,4248 }, { 43,4248 }, { 44,4248 }, { 45,4248 }, { 46,4248 }, - - { 47,4248 }, { 48,4248 }, { 49,4248 }, { 50,4248 }, { 51,4248 }, - { 52,4248 }, { 53,4248 }, { 54,4248 }, { 55,4248 }, { 56,4248 }, - { 57,4248 }, { 58,4248 }, { 59,4248 }, { 60,4248 }, { 61,4248 }, - { 62,4248 }, { 63,4248 }, { 64,4248 }, { 65,4248 }, { 66,4248 }, - { 67,4248 }, { 68,4248 }, { 69,4248 }, { 70,4248 }, { 71,4248 }, - { 72,4248 }, { 73,4248 }, { 74,4248 }, { 75,4248 }, { 76,4248 }, - { 77,4248 }, { 78,4248 }, { 79,4248 }, { 80,4248 }, { 81,4248 }, - { 82,4248 }, { 83,4248 }, { 84,4248 }, { 85,4248 }, { 86,4248 }, - { 87,4248 }, { 88,4248 }, { 89,4248 }, { 90,4248 }, { 91,4248 }, - { 0, 0 }, { 93,4248 }, { 94,4248 }, { 95,4248 }, { 96,4248 }, - - { 97,4248 }, { 98,4248 }, { 99,4248 }, { 100,4248 }, { 101,4248 }, - { 102,4248 }, { 103,4248 }, { 104,4248 }, { 105,4248 }, { 106,4248 }, - { 107,4248 }, { 108,4248 }, { 109,4248 }, { 110,4248 }, { 111,4248 }, - { 112,4248 }, { 113,4248 }, { 114,4248 }, { 115,4248 }, { 116,4248 }, - { 117,4248 }, { 118,4248 }, { 119,4248 }, { 120,4248 }, { 121,4248 }, - { 122,4248 }, { 123,4248 }, { 124,4248 }, { 125,4248 }, { 126,4248 }, - { 127,4248 }, { 128,4248 }, { 129,4248 }, { 130,4248 }, { 131,4248 }, - { 132,4248 }, { 133,4248 }, { 134,4248 }, { 135,4248 }, { 136,4248 }, - { 137,4248 }, { 138,4248 }, { 139,4248 }, { 140,4248 }, { 141,4248 }, - { 142,4248 }, { 143,4248 }, { 144,4248 }, { 145,4248 }, { 146,4248 }, - - { 147,4248 }, { 148,4248 }, { 149,4248 }, { 150,4248 }, { 151,4248 }, - { 152,4248 }, { 153,4248 }, { 154,4248 }, { 155,4248 }, { 156,4248 }, - { 157,4248 }, { 158,4248 }, { 159,4248 }, { 160,4248 }, { 161,4248 }, - { 162,4248 }, { 163,4248 }, { 164,4248 }, { 165,4248 }, { 166,4248 }, - { 167,4248 }, { 168,4248 }, { 169,4248 }, { 170,4248 }, { 171,4248 }, - { 172,4248 }, { 173,4248 }, { 174,4248 }, { 175,4248 }, { 176,4248 }, - { 177,4248 }, { 178,4248 }, { 179,4248 }, { 180,4248 }, { 181,4248 }, - { 182,4248 }, { 183,4248 }, { 184,4248 }, { 185,4248 }, { 186,4248 }, - { 187,4248 }, { 188,4248 }, { 189,4248 }, { 190,4248 }, { 191,4248 }, - { 192,4248 }, { 193,4248 }, { 194,4248 }, { 195,4248 }, { 196,4248 }, - - { 197,4248 }, { 198,4248 }, { 199,4248 }, { 200,4248 }, { 201,4248 }, - { 202,4248 }, { 203,4248 }, { 204,4248 }, { 205,4248 }, { 206,4248 }, - { 207,4248 }, { 208,4248 }, { 209,4248 }, { 210,4248 }, { 211,4248 }, - { 212,4248 }, { 213,4248 }, { 214,4248 }, { 215,4248 }, { 216,4248 }, - { 217,4248 }, { 218,4248 }, { 219,4248 }, { 220,4248 }, { 221,4248 }, - { 222,4248 }, { 223,4248 }, { 224,4248 }, { 225,4248 }, { 226,4248 }, - { 227,4248 }, { 228,4248 }, { 229,4248 }, { 230,4248 }, { 231,4248 }, - { 232,4248 }, { 233,4248 }, { 234,4248 }, { 235,4248 }, { 236,4248 }, - { 237,4248 }, { 238,4248 }, { 239,4248 }, { 240,4248 }, { 241,4248 }, - { 242,4248 }, { 243,4248 }, { 244,4248 }, { 245,4248 }, { 246,4248 }, - - { 247,4248 }, { 248,4248 }, { 249,4248 }, { 250,4248 }, { 251,4248 }, - { 252,4248 }, { 253,4248 }, { 254,4248 }, { 255,4248 }, { 256,4248 }, - { 0, 23 }, { 0,7162 }, { 1,3990 }, { 2,3990 }, { 3,3990 }, - { 4,3990 }, { 5,3990 }, { 6,3990 }, { 7,3990 }, { 8,3990 }, - { 9,3990 }, { 10,3990 }, { 11,3990 }, { 12,3990 }, { 13,3990 }, - { 14,3990 }, { 15,3990 }, { 16,3990 }, { 17,3990 }, { 18,3990 }, - { 19,3990 }, { 20,3990 }, { 21,3990 }, { 22,3990 }, { 23,3990 }, - { 24,3990 }, { 25,3990 }, { 26,3990 }, { 27,3990 }, { 28,3990 }, - { 29,3990 }, { 30,3990 }, { 31,3990 }, { 32,3990 }, { 33,3990 }, - { 34,3990 }, { 35,3990 }, { 36,3990 }, { 37,3990 }, { 38,3990 }, - - { 0, 0 }, { 40,3990 }, { 41,3990 }, { 42,3990 }, { 43,3990 }, - { 44,3990 }, { 45,3990 }, { 46,3990 }, { 47,3990 }, { 48,3990 }, - { 49,3990 }, { 50,3990 }, { 51,3990 }, { 52,3990 }, { 53,3990 }, - { 54,3990 }, { 55,3990 }, { 56,3990 }, { 57,3990 }, { 58,3990 }, - { 59,3990 }, { 60,3990 }, { 61,3990 }, { 62,3990 }, { 63,3990 }, - { 64,3990 }, { 65,3990 }, { 66,3990 }, { 67,3990 }, { 68,3990 }, - { 69,3990 }, { 70,3990 }, { 71,3990 }, { 72,3990 }, { 73,3990 }, - { 74,3990 }, { 75,3990 }, { 76,3990 }, { 77,3990 }, { 78,3990 }, - { 79,3990 }, { 80,3990 }, { 81,3990 }, { 82,3990 }, { 83,3990 }, - { 84,3990 }, { 85,3990 }, { 86,3990 }, { 87,3990 }, { 88,3990 }, - - { 89,3990 }, { 90,3990 }, { 91,3990 }, { 0, 0 }, { 93,3990 }, - { 94,3990 }, { 95,3990 }, { 96,3990 }, { 97,3990 }, { 98,3990 }, - { 99,3990 }, { 100,3990 }, { 101,3990 }, { 102,3990 }, { 103,3990 }, - { 104,3990 }, { 105,3990 }, { 106,3990 }, { 107,3990 }, { 108,3990 }, - { 109,3990 }, { 110,3990 }, { 111,3990 }, { 112,3990 }, { 113,3990 }, - { 114,3990 }, { 115,3990 }, { 116,3990 }, { 117,3990 }, { 118,3990 }, - { 119,3990 }, { 120,3990 }, { 121,3990 }, { 122,3990 }, { 123,3990 }, - { 124,3990 }, { 125,3990 }, { 126,3990 }, { 127,3990 }, { 128,3990 }, - { 129,3990 }, { 130,3990 }, { 131,3990 }, { 132,3990 }, { 133,3990 }, - { 134,3990 }, { 135,3990 }, { 136,3990 }, { 137,3990 }, { 138,3990 }, - - { 139,3990 }, { 140,3990 }, { 141,3990 }, { 142,3990 }, { 143,3990 }, - { 144,3990 }, { 145,3990 }, { 146,3990 }, { 147,3990 }, { 148,3990 }, - { 149,3990 }, { 150,3990 }, { 151,3990 }, { 152,3990 }, { 153,3990 }, - { 154,3990 }, { 155,3990 }, { 156,3990 }, { 157,3990 }, { 158,3990 }, - { 159,3990 }, { 160,3990 }, { 161,3990 }, { 162,3990 }, { 163,3990 }, - { 164,3990 }, { 165,3990 }, { 166,3990 }, { 167,3990 }, { 168,3990 }, - { 169,3990 }, { 170,3990 }, { 171,3990 }, { 172,3990 }, { 173,3990 }, - { 174,3990 }, { 175,3990 }, { 176,3990 }, { 177,3990 }, { 178,3990 }, - { 179,3990 }, { 180,3990 }, { 181,3990 }, { 182,3990 }, { 183,3990 }, - { 184,3990 }, { 185,3990 }, { 186,3990 }, { 187,3990 }, { 188,3990 }, - - { 189,3990 }, { 190,3990 }, { 191,3990 }, { 192,3990 }, { 193,3990 }, - { 194,3990 }, { 195,3990 }, { 196,3990 }, { 197,3990 }, { 198,3990 }, - { 199,3990 }, { 200,3990 }, { 201,3990 }, { 202,3990 }, { 203,3990 }, - { 204,3990 }, { 205,3990 }, { 206,3990 }, { 207,3990 }, { 208,3990 }, - { 209,3990 }, { 210,3990 }, { 211,3990 }, { 212,3990 }, { 213,3990 }, - { 214,3990 }, { 215,3990 }, { 216,3990 }, { 217,3990 }, { 218,3990 }, - { 219,3990 }, { 220,3990 }, { 221,3990 }, { 222,3990 }, { 223,3990 }, - { 224,3990 }, { 225,3990 }, { 226,3990 }, { 227,3990 }, { 228,3990 }, - { 229,3990 }, { 230,3990 }, { 231,3990 }, { 232,3990 }, { 233,3990 }, - { 234,3990 }, { 235,3990 }, { 236,3990 }, { 237,3990 }, { 238,3990 }, - - { 239,3990 }, { 240,3990 }, { 241,3990 }, { 242,3990 }, { 243,3990 }, - { 244,3990 }, { 245,3990 }, { 246,3990 }, { 247,3990 }, { 248,3990 }, - { 249,3990 }, { 250,3990 }, { 251,3990 }, { 252,3990 }, { 253,3990 }, - { 254,3990 }, { 255,3990 }, { 256,3990 }, { 0, 32 }, { 0,6904 }, - { 1,-3929 }, { 2,-3929 }, { 3,-3929 }, { 4,-3929 }, { 5,-3929 }, - { 6,-3929 }, { 7,-3929 }, { 8,-3929 }, { 9,-3929 }, { 10,-3929 }, - { 11,-3929 }, { 12,-3929 }, { 13,-3929 }, { 14,-3929 }, { 15,-3929 }, - { 16,-3929 }, { 17,-3929 }, { 18,-3929 }, { 19,-3929 }, { 20,-3929 }, - { 21,-3929 }, { 22,-3929 }, { 23,-3929 }, { 24,-3929 }, { 25,-3929 }, - { 26,-3929 }, { 27,-3929 }, { 28,-3929 }, { 29,-3929 }, { 30,-3929 }, - - { 31,-3929 }, { 32,-3929 }, { 33,-3929 }, { 34,-3929 }, { 35,-3929 }, - { 36,-3929 }, { 37,-3929 }, { 38,-3929 }, { 39,-3929 }, { 40,-3929 }, - { 41,-3929 }, { 42,-3929 }, { 43,-3929 }, { 44,-3929 }, { 45,-3929 }, - { 46,-3929 }, { 47,-3929 }, { 48,3990 }, { 49,3990 }, { 50,3990 }, - { 51,3990 }, { 52,3990 }, { 53,3990 }, { 54,3990 }, { 55,3990 }, - { 56,-3929 }, { 57,-3929 }, { 58,-3929 }, { 59,-3929 }, { 60,-3929 }, - { 61,-3929 }, { 62,-3929 }, { 63,-3929 }, { 64,-3929 }, { 65,-3929 }, - { 66,-3929 }, { 67,-3929 }, { 68,-3929 }, { 69,-3929 }, { 70,-3929 }, - { 71,-3929 }, { 72,-3929 }, { 73,-3929 }, { 74,-3929 }, { 75,-3929 }, - { 76,-3929 }, { 77,-3929 }, { 78,-3929 }, { 79,-3929 }, { 80,-3929 }, - - { 81,-3929 }, { 82,-3929 }, { 83,-3929 }, { 84,-3929 }, { 85,3998 }, - { 86,-3929 }, { 87,-3929 }, { 88,-3929 }, { 89,-3929 }, { 90,-3929 }, - { 91,-3929 }, { 92,-3929 }, { 93,-3929 }, { 94,-3929 }, { 95,-3929 }, - { 96,-3929 }, { 97,-3929 }, { 98,-3929 }, { 99,-3929 }, { 100,-3929 }, - { 101,-3929 }, { 102,-3929 }, { 103,-3929 }, { 104,-3929 }, { 105,-3929 }, - { 106,-3929 }, { 107,-3929 }, { 108,-3929 }, { 109,-3929 }, { 110,-3929 }, - { 111,-3929 }, { 112,-3929 }, { 113,-3929 }, { 114,-3929 }, { 115,-3929 }, - { 116,-3929 }, { 117,4021 }, { 118,-3929 }, { 119,-3929 }, { 120,4059 }, - { 121,-3929 }, { 122,-3929 }, { 123,-3929 }, { 124,-3929 }, { 125,-3929 }, - { 126,-3929 }, { 127,-3929 }, { 128,-3929 }, { 129,-3929 }, { 130,-3929 }, - - { 131,-3929 }, { 132,-3929 }, { 133,-3929 }, { 134,-3929 }, { 135,-3929 }, - { 136,-3929 }, { 137,-3929 }, { 138,-3929 }, { 139,-3929 }, { 140,-3929 }, - { 141,-3929 }, { 142,-3929 }, { 143,-3929 }, { 144,-3929 }, { 145,-3929 }, - { 146,-3929 }, { 147,-3929 }, { 148,-3929 }, { 149,-3929 }, { 150,-3929 }, - { 151,-3929 }, { 152,-3929 }, { 153,-3929 }, { 154,-3929 }, { 155,-3929 }, - { 156,-3929 }, { 157,-3929 }, { 158,-3929 }, { 159,-3929 }, { 160,-3929 }, - { 161,-3929 }, { 162,-3929 }, { 163,-3929 }, { 164,-3929 }, { 165,-3929 }, - { 166,-3929 }, { 167,-3929 }, { 168,-3929 }, { 169,-3929 }, { 170,-3929 }, - { 171,-3929 }, { 172,-3929 }, { 173,-3929 }, { 174,-3929 }, { 175,-3929 }, - { 176,-3929 }, { 177,-3929 }, { 178,-3929 }, { 179,-3929 }, { 180,-3929 }, - - { 181,-3929 }, { 182,-3929 }, { 183,-3929 }, { 184,-3929 }, { 185,-3929 }, - { 186,-3929 }, { 187,-3929 }, { 188,-3929 }, { 189,-3929 }, { 190,-3929 }, - { 191,-3929 }, { 192,-3929 }, { 193,-3929 }, { 194,-3929 }, { 195,-3929 }, - { 196,-3929 }, { 197,-3929 }, { 198,-3929 }, { 199,-3929 }, { 200,-3929 }, - { 201,-3929 }, { 202,-3929 }, { 203,-3929 }, { 204,-3929 }, { 205,-3929 }, - { 206,-3929 }, { 207,-3929 }, { 208,-3929 }, { 209,-3929 }, { 210,-3929 }, - { 211,-3929 }, { 212,-3929 }, { 213,-3929 }, { 214,-3929 }, { 215,-3929 }, - { 216,-3929 }, { 217,-3929 }, { 218,-3929 }, { 219,-3929 }, { 220,-3929 }, - { 221,-3929 }, { 222,-3929 }, { 223,-3929 }, { 224,-3929 }, { 225,-3929 }, - { 226,-3929 }, { 227,-3929 }, { 228,-3929 }, { 229,-3929 }, { 230,-3929 }, - - { 231,-3929 }, { 232,-3929 }, { 233,-3929 }, { 234,-3929 }, { 235,-3929 }, - { 236,-3929 }, { 237,-3929 }, { 238,-3929 }, { 239,-3929 }, { 240,-3929 }, - { 241,-3929 }, { 242,-3929 }, { 243,-3929 }, { 244,-3929 }, { 245,-3929 }, - { 246,-3929 }, { 247,-3929 }, { 248,-3929 }, { 249,-3929 }, { 250,-3929 }, - { 251,-3929 }, { 252,-3929 }, { 253,-3929 }, { 254,-3929 }, { 255,-3929 }, - { 256,-3929 }, { 0, 36 }, { 0,6646 }, { 1,3905 }, { 2,3905 }, - { 3,3905 }, { 4,3905 }, { 5,3905 }, { 6,3905 }, { 7,3905 }, - { 8,3905 }, { 9,3905 }, { 10,3905 }, { 11,3905 }, { 12,3905 }, - { 13,3905 }, { 14,3905 }, { 15,3905 }, { 16,3905 }, { 17,3905 }, - { 18,3905 }, { 19,3905 }, { 20,3905 }, { 21,3905 }, { 22,3905 }, - - { 23,3905 }, { 24,3905 }, { 25,3905 }, { 26,3905 }, { 27,3905 }, - { 28,3905 }, { 29,3905 }, { 30,3905 }, { 31,3905 }, { 32,3905 }, - { 33,3905 }, { 34,3905 }, { 35,3905 }, { 0, 0 }, { 37,3905 }, - { 38,3905 }, { 39,3905 }, { 40,3905 }, { 41,3905 }, { 42,3905 }, - { 43,3905 }, { 44,3905 }, { 45,3905 }, { 46,3905 }, { 47,3905 }, - { 48,3905 }, { 49,3905 }, { 50,3905 }, { 51,3905 }, { 52,3905 }, - { 53,3905 }, { 54,3905 }, { 55,3905 }, { 56,3905 }, { 57,3905 }, - { 58,3905 }, { 59,3905 }, { 60,3905 }, { 61,3905 }, { 62,3905 }, - { 63,3905 }, { 64,3905 }, { 65,3905 }, { 66,3905 }, { 67,3905 }, - { 68,3905 }, { 69,3905 }, { 70,3905 }, { 71,3905 }, { 72,3905 }, - - { 73,3905 }, { 74,3905 }, { 75,3905 }, { 76,3905 }, { 77,3905 }, - { 78,3905 }, { 79,3905 }, { 80,3905 }, { 81,3905 }, { 82,3905 }, - { 83,3905 }, { 84,3905 }, { 85,3905 }, { 86,3905 }, { 87,3905 }, - { 88,3905 }, { 89,3905 }, { 90,3905 }, { 91,3905 }, { 92,3905 }, - { 93,3905 }, { 94,3905 }, { 95,3905 }, { 96,3905 }, { 97,3905 }, - { 98,3905 }, { 99,3905 }, { 100,3905 }, { 101,3905 }, { 102,3905 }, - { 103,3905 }, { 104,3905 }, { 105,3905 }, { 106,3905 }, { 107,3905 }, - { 108,3905 }, { 109,3905 }, { 110,3905 }, { 111,3905 }, { 112,3905 }, - { 113,3905 }, { 114,3905 }, { 115,3905 }, { 116,3905 }, { 117,3905 }, - { 118,3905 }, { 119,3905 }, { 120,3905 }, { 121,3905 }, { 122,3905 }, - - { 123,3905 }, { 124,3905 }, { 125,3905 }, { 126,3905 }, { 127,3905 }, - { 128,3905 }, { 129,3905 }, { 130,3905 }, { 131,3905 }, { 132,3905 }, - { 133,3905 }, { 134,3905 }, { 135,3905 }, { 136,3905 }, { 137,3905 }, - { 138,3905 }, { 139,3905 }, { 140,3905 }, { 141,3905 }, { 142,3905 }, - { 143,3905 }, { 144,3905 }, { 145,3905 }, { 146,3905 }, { 147,3905 }, - { 148,3905 }, { 149,3905 }, { 150,3905 }, { 151,3905 }, { 152,3905 }, - { 153,3905 }, { 154,3905 }, { 155,3905 }, { 156,3905 }, { 157,3905 }, - { 158,3905 }, { 159,3905 }, { 160,3905 }, { 161,3905 }, { 162,3905 }, - { 163,3905 }, { 164,3905 }, { 165,3905 }, { 166,3905 }, { 167,3905 }, - { 168,3905 }, { 169,3905 }, { 170,3905 }, { 171,3905 }, { 172,3905 }, - - { 173,3905 }, { 174,3905 }, { 175,3905 }, { 176,3905 }, { 177,3905 }, - { 178,3905 }, { 179,3905 }, { 180,3905 }, { 181,3905 }, { 182,3905 }, - { 183,3905 }, { 184,3905 }, { 185,3905 }, { 186,3905 }, { 187,3905 }, - { 188,3905 }, { 189,3905 }, { 190,3905 }, { 191,3905 }, { 192,3905 }, - { 193,3905 }, { 194,3905 }, { 195,3905 }, { 196,3905 }, { 197,3905 }, - { 198,3905 }, { 199,3905 }, { 200,3905 }, { 201,3905 }, { 202,3905 }, - { 203,3905 }, { 204,3905 }, { 205,3905 }, { 206,3905 }, { 207,3905 }, - { 208,3905 }, { 209,3905 }, { 210,3905 }, { 211,3905 }, { 212,3905 }, - { 213,3905 }, { 214,3905 }, { 215,3905 }, { 216,3905 }, { 217,3905 }, - { 218,3905 }, { 219,3905 }, { 220,3905 }, { 221,3905 }, { 222,3905 }, - - { 223,3905 }, { 224,3905 }, { 225,3905 }, { 226,3905 }, { 227,3905 }, - { 228,3905 }, { 229,3905 }, { 230,3905 }, { 231,3905 }, { 232,3905 }, - { 233,3905 }, { 234,3905 }, { 235,3905 }, { 236,3905 }, { 237,3905 }, - { 238,3905 }, { 239,3905 }, { 240,3905 }, { 241,3905 }, { 242,3905 }, - { 243,3905 }, { 244,3905 }, { 245,3905 }, { 246,3905 }, { 247,3905 }, - { 248,3905 }, { 249,3905 }, { 250,3905 }, { 251,3905 }, { 252,3905 }, - { 253,3905 }, { 254,3905 }, { 255,3905 }, { 256,3905 }, { 0, 36 }, - { 0,6388 }, { 1,3647 }, { 2,3647 }, { 3,3647 }, { 4,3647 }, - { 5,3647 }, { 6,3647 }, { 7,3647 }, { 8,3647 }, { 9,3647 }, - { 10,3647 }, { 11,3647 }, { 12,3647 }, { 13,3647 }, { 14,3647 }, - - { 15,3647 }, { 16,3647 }, { 17,3647 }, { 18,3647 }, { 19,3647 }, - { 20,3647 }, { 21,3647 }, { 22,3647 }, { 23,3647 }, { 24,3647 }, - { 25,3647 }, { 26,3647 }, { 27,3647 }, { 28,3647 }, { 29,3647 }, - { 30,3647 }, { 31,3647 }, { 32,3647 }, { 33,3647 }, { 34,3647 }, - { 35,3647 }, { 0, 0 }, { 37,3647 }, { 38,3647 }, { 39,3647 }, - { 40,3647 }, { 41,3647 }, { 42,3647 }, { 43,3647 }, { 44,3647 }, - { 45,3647 }, { 46,3647 }, { 47,3647 }, { 48,3647 }, { 49,3647 }, - { 50,3647 }, { 51,3647 }, { 52,3647 }, { 53,3647 }, { 54,3647 }, - { 55,3647 }, { 56,3647 }, { 57,3647 }, { 58,3647 }, { 59,3647 }, - { 60,3647 }, { 61,3647 }, { 62,3647 }, { 63,3647 }, { 64,3647 }, - - { 65,3647 }, { 66,3647 }, { 67,3647 }, { 68,3647 }, { 69,3647 }, - { 70,3647 }, { 71,3647 }, { 72,3647 }, { 73,3647 }, { 74,3647 }, - { 75,3647 }, { 76,3647 }, { 77,3647 }, { 78,3647 }, { 79,3647 }, - { 80,3647 }, { 81,3647 }, { 82,3647 }, { 83,3647 }, { 84,3647 }, - { 85,3647 }, { 86,3647 }, { 87,3647 }, { 88,3647 }, { 89,3647 }, - { 90,3647 }, { 91,3647 }, { 92,3647 }, { 93,3647 }, { 94,3647 }, - { 95,3647 }, { 96,3647 }, { 97,3647 }, { 98,3647 }, { 99,3647 }, - { 100,3647 }, { 101,3647 }, { 102,3647 }, { 103,3647 }, { 104,3647 }, - { 105,3647 }, { 106,3647 }, { 107,3647 }, { 108,3647 }, { 109,3647 }, - { 110,3647 }, { 111,3647 }, { 112,3647 }, { 113,3647 }, { 114,3647 }, - - { 115,3647 }, { 116,3647 }, { 117,3647 }, { 118,3647 }, { 119,3647 }, - { 120,3647 }, { 121,3647 }, { 122,3647 }, { 123,3647 }, { 124,3647 }, - { 125,3647 }, { 126,3647 }, { 127,3647 }, { 128,3647 }, { 129,3647 }, - { 130,3647 }, { 131,3647 }, { 132,3647 }, { 133,3647 }, { 134,3647 }, - { 135,3647 }, { 136,3647 }, { 137,3647 }, { 138,3647 }, { 139,3647 }, - { 140,3647 }, { 141,3647 }, { 142,3647 }, { 143,3647 }, { 144,3647 }, - { 145,3647 }, { 146,3647 }, { 147,3647 }, { 148,3647 }, { 149,3647 }, - { 150,3647 }, { 151,3647 }, { 152,3647 }, { 153,3647 }, { 154,3647 }, - { 155,3647 }, { 156,3647 }, { 157,3647 }, { 158,3647 }, { 159,3647 }, - { 160,3647 }, { 161,3647 }, { 162,3647 }, { 163,3647 }, { 164,3647 }, - - { 165,3647 }, { 166,3647 }, { 167,3647 }, { 168,3647 }, { 169,3647 }, - { 170,3647 }, { 171,3647 }, { 172,3647 }, { 173,3647 }, { 174,3647 }, - { 175,3647 }, { 176,3647 }, { 177,3647 }, { 178,3647 }, { 179,3647 }, - { 180,3647 }, { 181,3647 }, { 182,3647 }, { 183,3647 }, { 184,3647 }, - { 185,3647 }, { 186,3647 }, { 187,3647 }, { 188,3647 }, { 189,3647 }, - { 190,3647 }, { 191,3647 }, { 192,3647 }, { 193,3647 }, { 194,3647 }, - { 195,3647 }, { 196,3647 }, { 197,3647 }, { 198,3647 }, { 199,3647 }, - { 200,3647 }, { 201,3647 }, { 202,3647 }, { 203,3647 }, { 204,3647 }, - { 205,3647 }, { 206,3647 }, { 207,3647 }, { 208,3647 }, { 209,3647 }, - { 210,3647 }, { 211,3647 }, { 212,3647 }, { 213,3647 }, { 214,3647 }, - - { 215,3647 }, { 216,3647 }, { 217,3647 }, { 218,3647 }, { 219,3647 }, - { 220,3647 }, { 221,3647 }, { 222,3647 }, { 223,3647 }, { 224,3647 }, - { 225,3647 }, { 226,3647 }, { 227,3647 }, { 228,3647 }, { 229,3647 }, - { 230,3647 }, { 231,3647 }, { 232,3647 }, { 233,3647 }, { 234,3647 }, - { 235,3647 }, { 236,3647 }, { 237,3647 }, { 238,3647 }, { 239,3647 }, - { 240,3647 }, { 241,3647 }, { 242,3647 }, { 243,3647 }, { 244,3647 }, - { 245,3647 }, { 246,3647 }, { 247,3647 }, { 248,3647 }, { 249,3647 }, - { 250,3647 }, { 251,3647 }, { 252,3647 }, { 253,3647 }, { 254,3647 }, - { 255,3647 }, { 256,3647 }, { 0, 38 }, { 0,6130 }, { 0, 1 }, - { 0,6128 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 9, 0 }, - { 10, 0 }, { 0, 0 }, { 12, 0 }, { 13, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 32, 0 }, { 0, 0 }, { 36,-4701 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,3647 }, { 66,3647 }, - { 67,3647 }, { 68,3647 }, { 69,3647 }, { 70,3647 }, { 71,3647 }, - { 72,3647 }, { 73,3647 }, { 74,3647 }, { 75,3647 }, { 76,3647 }, - { 77,3647 }, { 78,3647 }, { 79,3647 }, { 80,3647 }, { 81,3647 }, - { 82,3647 }, { 83,3647 }, { 84,3647 }, { 85,3647 }, { 86,3647 }, - { 87,3647 }, { 88,3647 }, { 89,3647 }, { 90,3647 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95,3647 }, { 0, 0 }, - { 97,3647 }, { 98,3647 }, { 99,3647 }, { 100,3647 }, { 101,3647 }, - { 102,3647 }, { 103,3647 }, { 104,3647 }, { 105,3647 }, { 106,3647 }, - - { 107,3647 }, { 108,3647 }, { 109,3647 }, { 110,3647 }, { 111,3647 }, - { 112,3647 }, { 113,3647 }, { 114,3647 }, { 115,3647 }, { 116,3647 }, - { 117,3647 }, { 118,3647 }, { 119,3647 }, { 120,3647 }, { 121,3647 }, - { 122,3647 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 128,3647 }, { 129,3647 }, { 130,3647 }, { 131,3647 }, - { 132,3647 }, { 133,3647 }, { 134,3647 }, { 135,3647 }, { 136,3647 }, - { 137,3647 }, { 138,3647 }, { 139,3647 }, { 140,3647 }, { 141,3647 }, - { 142,3647 }, { 143,3647 }, { 144,3647 }, { 145,3647 }, { 146,3647 }, - { 147,3647 }, { 148,3647 }, { 149,3647 }, { 150,3647 }, { 151,3647 }, - { 152,3647 }, { 153,3647 }, { 154,3647 }, { 155,3647 }, { 156,3647 }, - - { 157,3647 }, { 158,3647 }, { 159,3647 }, { 160,3647 }, { 161,3647 }, - { 162,3647 }, { 163,3647 }, { 164,3647 }, { 165,3647 }, { 166,3647 }, - { 167,3647 }, { 168,3647 }, { 169,3647 }, { 170,3647 }, { 171,3647 }, - { 172,3647 }, { 173,3647 }, { 174,3647 }, { 175,3647 }, { 176,3647 }, - { 177,3647 }, { 178,3647 }, { 179,3647 }, { 180,3647 }, { 181,3647 }, - { 182,3647 }, { 183,3647 }, { 184,3647 }, { 185,3647 }, { 186,3647 }, - { 187,3647 }, { 188,3647 }, { 189,3647 }, { 190,3647 }, { 191,3647 }, - { 192,3647 }, { 193,3647 }, { 194,3647 }, { 195,3647 }, { 196,3647 }, - { 197,3647 }, { 198,3647 }, { 199,3647 }, { 200,3647 }, { 201,3647 }, - { 202,3647 }, { 203,3647 }, { 204,3647 }, { 205,3647 }, { 206,3647 }, - - { 207,3647 }, { 208,3647 }, { 209,3647 }, { 210,3647 }, { 211,3647 }, - { 212,3647 }, { 213,3647 }, { 214,3647 }, { 215,3647 }, { 216,3647 }, - { 217,3647 }, { 218,3647 }, { 219,3647 }, { 220,3647 }, { 221,3647 }, - { 222,3647 }, { 223,3647 }, { 224,3647 }, { 225,3647 }, { 226,3647 }, - { 227,3647 }, { 228,3647 }, { 229,3647 }, { 230,3647 }, { 231,3647 }, - { 232,3647 }, { 233,3647 }, { 234,3647 }, { 235,3647 }, { 236,3647 }, - { 237,3647 }, { 238,3647 }, { 239,3647 }, { 240,3647 }, { 241,3647 }, - { 242,3647 }, { 243,3647 }, { 244,3647 }, { 245,3647 }, { 246,3647 }, - { 247,3647 }, { 248,3647 }, { 249,3647 }, { 250,3647 }, { 251,3647 }, - { 252,3647 }, { 253,3647 }, { 254,3647 }, { 255,3647 }, { 0, 55 }, - - { 0,5873 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 53 }, { 0,5862 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 56 }, { 0,5845 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 33, 0 }, { 0, 0 }, - { 35, 0 }, { 0, 0 }, { 37, 0 }, { 38, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 42, 0 }, { 43, 0 }, { 33, -11 }, - { 45, 0 }, { 35, -11 }, { 47, 0 }, { 37, -11 }, { 38, -11 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 42, -11 }, { 43, -11 }, - { 0, 0 }, { 45, -11 }, { 0, 0 }, { 47, -11 }, { 0, 0 }, - { 60, 0 }, { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 60, -11 }, { 61, -11 }, { 62, -11 }, { 63, -11 }, - { 64, -11 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, - { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, - { 57, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 34 }, { 0,5782 }, { 0, 0 }, { 0, 0 }, { 94, 0 }, - { 0, 0 }, { 96, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 94, -11 }, { 0, 0 }, { 96, -11 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 124, 0 }, - { 0, 0 }, { 126, 0 }, { 36,-5323 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 124, -11 }, { 0, 0 }, { 126, -11 }, { 0, 0 }, { 48,3638 }, - { 49,3638 }, { 50,3638 }, { 51,3638 }, { 52,3638 }, { 53,3638 }, - { 54,3638 }, { 55,3638 }, { 56,3638 }, { 57,3638 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 65,3638 }, { 66,3638 }, { 67,3638 }, { 68,3638 }, - { 69,3638 }, { 70,3638 }, { 71,3638 }, { 72,3638 }, { 73,3638 }, - { 74,3638 }, { 75,3638 }, { 76,3638 }, { 77,3638 }, { 78,3638 }, - { 79,3638 }, { 80,3638 }, { 81,3638 }, { 82,3638 }, { 83,3638 }, - { 84,3638 }, { 85,3638 }, { 86,3638 }, { 87,3638 }, { 88,3638 }, - { 89,3638 }, { 90,3638 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 95,3638 }, { 0, 0 }, { 97,3638 }, { 98,3638 }, - { 99,3638 }, { 100,3638 }, { 101,3638 }, { 102,3638 }, { 103,3638 }, - { 104,3638 }, { 105,3638 }, { 106,3638 }, { 107,3638 }, { 108,3638 }, - - { 109,3638 }, { 110,3638 }, { 111,3638 }, { 112,3638 }, { 113,3638 }, - { 114,3638 }, { 115,3638 }, { 116,3638 }, { 117,3638 }, { 118,3638 }, - { 119,3638 }, { 120,3638 }, { 121,3638 }, { 122,3638 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,3638 }, - { 129,3638 }, { 130,3638 }, { 131,3638 }, { 132,3638 }, { 133,3638 }, - { 134,3638 }, { 135,3638 }, { 136,3638 }, { 137,3638 }, { 138,3638 }, - { 139,3638 }, { 140,3638 }, { 141,3638 }, { 142,3638 }, { 143,3638 }, - { 144,3638 }, { 145,3638 }, { 146,3638 }, { 147,3638 }, { 148,3638 }, - { 149,3638 }, { 150,3638 }, { 151,3638 }, { 152,3638 }, { 153,3638 }, - { 154,3638 }, { 155,3638 }, { 156,3638 }, { 157,3638 }, { 158,3638 }, - - { 159,3638 }, { 160,3638 }, { 161,3638 }, { 162,3638 }, { 163,3638 }, - { 164,3638 }, { 165,3638 }, { 166,3638 }, { 167,3638 }, { 168,3638 }, - { 169,3638 }, { 170,3638 }, { 171,3638 }, { 172,3638 }, { 173,3638 }, - { 174,3638 }, { 175,3638 }, { 176,3638 }, { 177,3638 }, { 178,3638 }, - { 179,3638 }, { 180,3638 }, { 181,3638 }, { 182,3638 }, { 183,3638 }, - { 184,3638 }, { 185,3638 }, { 186,3638 }, { 187,3638 }, { 188,3638 }, - { 189,3638 }, { 190,3638 }, { 191,3638 }, { 192,3638 }, { 193,3638 }, - { 194,3638 }, { 195,3638 }, { 196,3638 }, { 197,3638 }, { 198,3638 }, - { 199,3638 }, { 200,3638 }, { 201,3638 }, { 202,3638 }, { 203,3638 }, - { 204,3638 }, { 205,3638 }, { 206,3638 }, { 207,3638 }, { 208,3638 }, - - { 209,3638 }, { 210,3638 }, { 211,3638 }, { 212,3638 }, { 213,3638 }, - { 214,3638 }, { 215,3638 }, { 216,3638 }, { 217,3638 }, { 218,3638 }, - { 219,3638 }, { 220,3638 }, { 221,3638 }, { 222,3638 }, { 223,3638 }, - { 224,3638 }, { 225,3638 }, { 226,3638 }, { 227,3638 }, { 228,3638 }, - { 229,3638 }, { 230,3638 }, { 231,3638 }, { 232,3638 }, { 233,3638 }, - { 234,3638 }, { 235,3638 }, { 236,3638 }, { 237,3638 }, { 238,3638 }, - { 239,3638 }, { 240,3638 }, { 241,3638 }, { 242,3638 }, { 243,3638 }, - { 244,3638 }, { 245,3638 }, { 246,3638 }, { 247,3638 }, { 248,3638 }, - { 249,3638 }, { 250,3638 }, { 251,3638 }, { 252,3638 }, { 253,3638 }, - { 254,3638 }, { 255,3638 }, { 0, 2 }, { 0,5525 }, { 1,3638 }, - - { 2,3638 }, { 3,3638 }, { 4,3638 }, { 5,3638 }, { 6,3638 }, - { 7,3638 }, { 8,3638 }, { 9,3638 }, { 0, 0 }, { 11,3638 }, - { 12,3638 }, { 0, 0 }, { 14,3638 }, { 15,3638 }, { 16,3638 }, - { 17,3638 }, { 18,3638 }, { 19,3638 }, { 20,3638 }, { 21,3638 }, - { 22,3638 }, { 23,3638 }, { 24,3638 }, { 25,3638 }, { 26,3638 }, - { 27,3638 }, { 28,3638 }, { 29,3638 }, { 30,3638 }, { 31,3638 }, - { 32,3638 }, { 33,3896 }, { 34,3638 }, { 35,3896 }, { 36,3638 }, - { 37,3896 }, { 38,3896 }, { 39,3638 }, { 40,3638 }, { 41,3638 }, - { 42,3896 }, { 43,3896 }, { 44,3638 }, { 45,3896 }, { 46,3638 }, - { 47,3896 }, { 48,3638 }, { 49,3638 }, { 50,3638 }, { 51,3638 }, - - { 52,3638 }, { 53,3638 }, { 54,3638 }, { 55,3638 }, { 56,3638 }, - { 57,3638 }, { 58,3638 }, { 59,3638 }, { 60,3896 }, { 61,3896 }, - { 62,3896 }, { 63,3896 }, { 64,3896 }, { 65,3638 }, { 66,3638 }, - { 67,3638 }, { 68,3638 }, { 69,3638 }, { 70,3638 }, { 71,3638 }, - { 72,3638 }, { 73,3638 }, { 74,3638 }, { 75,3638 }, { 76,3638 }, - { 77,3638 }, { 78,3638 }, { 79,3638 }, { 80,3638 }, { 81,3638 }, - { 82,3638 }, { 83,3638 }, { 84,3638 }, { 85,3638 }, { 86,3638 }, - { 87,3638 }, { 88,3638 }, { 89,3638 }, { 90,3638 }, { 91,3638 }, - { 92,3638 }, { 93,3638 }, { 94,3896 }, { 95,3638 }, { 96,3896 }, - { 97,3638 }, { 98,3638 }, { 99,3638 }, { 100,3638 }, { 101,3638 }, - - { 102,3638 }, { 103,3638 }, { 104,3638 }, { 105,3638 }, { 106,3638 }, - { 107,3638 }, { 108,3638 }, { 109,3638 }, { 110,3638 }, { 111,3638 }, - { 112,3638 }, { 113,3638 }, { 114,3638 }, { 115,3638 }, { 116,3638 }, - { 117,3638 }, { 118,3638 }, { 119,3638 }, { 120,3638 }, { 121,3638 }, - { 122,3638 }, { 123,3638 }, { 124,3896 }, { 125,3638 }, { 126,3896 }, - { 127,3638 }, { 128,3638 }, { 129,3638 }, { 130,3638 }, { 131,3638 }, - { 132,3638 }, { 133,3638 }, { 134,3638 }, { 135,3638 }, { 136,3638 }, - { 137,3638 }, { 138,3638 }, { 139,3638 }, { 140,3638 }, { 141,3638 }, - { 142,3638 }, { 143,3638 }, { 144,3638 }, { 145,3638 }, { 146,3638 }, - { 147,3638 }, { 148,3638 }, { 149,3638 }, { 150,3638 }, { 151,3638 }, - - { 152,3638 }, { 153,3638 }, { 154,3638 }, { 155,3638 }, { 156,3638 }, - { 157,3638 }, { 158,3638 }, { 159,3638 }, { 160,3638 }, { 161,3638 }, - { 162,3638 }, { 163,3638 }, { 164,3638 }, { 165,3638 }, { 166,3638 }, - { 167,3638 }, { 168,3638 }, { 169,3638 }, { 170,3638 }, { 171,3638 }, - { 172,3638 }, { 173,3638 }, { 174,3638 }, { 175,3638 }, { 176,3638 }, - { 177,3638 }, { 178,3638 }, { 179,3638 }, { 180,3638 }, { 181,3638 }, - { 182,3638 }, { 183,3638 }, { 184,3638 }, { 185,3638 }, { 186,3638 }, - { 187,3638 }, { 188,3638 }, { 189,3638 }, { 190,3638 }, { 191,3638 }, - { 192,3638 }, { 193,3638 }, { 194,3638 }, { 195,3638 }, { 196,3638 }, - { 197,3638 }, { 198,3638 }, { 199,3638 }, { 200,3638 }, { 201,3638 }, - - { 202,3638 }, { 203,3638 }, { 204,3638 }, { 205,3638 }, { 206,3638 }, - { 207,3638 }, { 208,3638 }, { 209,3638 }, { 210,3638 }, { 211,3638 }, - { 212,3638 }, { 213,3638 }, { 214,3638 }, { 215,3638 }, { 216,3638 }, - { 217,3638 }, { 218,3638 }, { 219,3638 }, { 220,3638 }, { 221,3638 }, - { 222,3638 }, { 223,3638 }, { 224,3638 }, { 225,3638 }, { 226,3638 }, - { 227,3638 }, { 228,3638 }, { 229,3638 }, { 230,3638 }, { 231,3638 }, - { 232,3638 }, { 233,3638 }, { 234,3638 }, { 235,3638 }, { 236,3638 }, - { 237,3638 }, { 238,3638 }, { 239,3638 }, { 240,3638 }, { 241,3638 }, - { 242,3638 }, { 243,3638 }, { 244,3638 }, { 245,3638 }, { 246,3638 }, - { 247,3638 }, { 248,3638 }, { 249,3638 }, { 250,3638 }, { 251,3638 }, - - { 252,3638 }, { 253,3638 }, { 254,3638 }, { 255,3638 }, { 256,3638 }, - { 0, 58 }, { 0,5267 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 3 }, { 0,5242 }, { 0, 58 }, { 0,5240 }, { 0, 0 }, + { 205,5627 }, { 206,5627 }, { 207,5627 }, { 208,5627 }, { 209,5627 }, + { 210,5627 }, { 211,5627 }, { 212,5627 }, { 213,5627 }, { 214,5627 }, + { 215,5627 }, { 216,5627 }, { 217,5627 }, { 218,5627 }, { 219,5627 }, + { 220,5627 }, { 221,5627 }, { 222,5627 }, { 223,5627 }, { 224,5627 }, + { 225,5627 }, { 226,5627 }, { 227,5627 }, { 228,5627 }, { 229,5627 }, + { 230,5627 }, { 231,5627 }, { 232,5627 }, { 233,5627 }, { 234,5627 }, + { 235,5627 }, { 236,5627 }, { 237,5627 }, { 238,5627 }, { 239,5627 }, + { 240,5627 }, { 241,5627 }, { 242,5627 }, { 243,5627 }, { 244,5627 }, + { 245,5627 }, { 246,5627 }, { 247,5627 }, { 248,5627 }, { 249,5627 }, + { 250,5627 }, { 251,5627 }, { 252,5627 }, { 253,5627 }, { 254,5627 }, + + { 255,5627 }, { 0, 74 }, { 0,13196 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 36,5370 }, { 0, 0 }, + { 38,-1767 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 48,5370 }, { 49,5370 }, { 50,5370 }, { 51,5370 }, { 52,5370 }, + { 53,5370 }, { 54,5370 }, { 55,5370 }, { 56,5370 }, { 57,5370 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 65,5370 }, { 66,5370 }, { 67,5370 }, + { 68,5370 }, { 69,5370 }, { 70,5370 }, { 71,5370 }, { 72,5370 }, + { 73,5370 }, { 74,5370 }, { 75,5370 }, { 76,5370 }, { 77,5370 }, + { 78,5370 }, { 79,5370 }, { 80,5370 }, { 81,5370 }, { 82,5370 }, + { 83,5370 }, { 84,5370 }, { 85,5370 }, { 86,5370 }, { 87,5370 }, + { 88,5370 }, { 89,5370 }, { 90,5370 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 95,5370 }, { 0, 0 }, { 97,5370 }, + + { 98,5370 }, { 99,5370 }, { 100,5370 }, { 101,5370 }, { 102,5370 }, + { 103,5370 }, { 104,5370 }, { 105,5370 }, { 106,5370 }, { 107,5370 }, + { 108,5370 }, { 109,5370 }, { 110,5370 }, { 111,5370 }, { 112,5370 }, + { 113,5370 }, { 114,5370 }, { 115,5370 }, { 116,5370 }, { 117,5370 }, + { 118,5370 }, { 119,5370 }, { 120,5370 }, { 121,5370 }, { 122,5370 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 128,5370 }, { 129,5370 }, { 130,5370 }, { 131,5370 }, { 132,5370 }, + { 133,5370 }, { 134,5370 }, { 135,5370 }, { 136,5370 }, { 137,5370 }, + { 138,5370 }, { 139,5370 }, { 140,5370 }, { 141,5370 }, { 142,5370 }, + { 143,5370 }, { 144,5370 }, { 145,5370 }, { 146,5370 }, { 147,5370 }, + + { 148,5370 }, { 149,5370 }, { 150,5370 }, { 151,5370 }, { 152,5370 }, + { 153,5370 }, { 154,5370 }, { 155,5370 }, { 156,5370 }, { 157,5370 }, + { 158,5370 }, { 159,5370 }, { 160,5370 }, { 161,5370 }, { 162,5370 }, + { 163,5370 }, { 164,5370 }, { 165,5370 }, { 166,5370 }, { 167,5370 }, + { 168,5370 }, { 169,5370 }, { 170,5370 }, { 171,5370 }, { 172,5370 }, + { 173,5370 }, { 174,5370 }, { 175,5370 }, { 176,5370 }, { 177,5370 }, + { 178,5370 }, { 179,5370 }, { 180,5370 }, { 181,5370 }, { 182,5370 }, + { 183,5370 }, { 184,5370 }, { 185,5370 }, { 186,5370 }, { 187,5370 }, + { 188,5370 }, { 189,5370 }, { 190,5370 }, { 191,5370 }, { 192,5370 }, + { 193,5370 }, { 194,5370 }, { 195,5370 }, { 196,5370 }, { 197,5370 }, + + { 198,5370 }, { 199,5370 }, { 200,5370 }, { 201,5370 }, { 202,5370 }, + { 203,5370 }, { 204,5370 }, { 205,5370 }, { 206,5370 }, { 207,5370 }, + { 208,5370 }, { 209,5370 }, { 210,5370 }, { 211,5370 }, { 212,5370 }, + { 213,5370 }, { 214,5370 }, { 215,5370 }, { 216,5370 }, { 217,5370 }, + { 218,5370 }, { 219,5370 }, { 220,5370 }, { 221,5370 }, { 222,5370 }, + { 223,5370 }, { 224,5370 }, { 225,5370 }, { 226,5370 }, { 227,5370 }, + { 228,5370 }, { 229,5370 }, { 230,5370 }, { 231,5370 }, { 232,5370 }, + { 233,5370 }, { 234,5370 }, { 235,5370 }, { 236,5370 }, { 237,5370 }, + { 238,5370 }, { 239,5370 }, { 240,5370 }, { 241,5370 }, { 242,5370 }, + { 243,5370 }, { 244,5370 }, { 245,5370 }, { 246,5370 }, { 247,5370 }, + + { 248,5370 }, { 249,5370 }, { 250,5370 }, { 251,5370 }, { 252,5370 }, + { 253,5370 }, { 254,5370 }, { 255,5370 }, { 0, 74 }, { 0,12939 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 36,5113 }, { 0, 0 }, { 0, 0 }, { 39,-2022 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 48,5113 }, { 49,5113 }, { 50,5113 }, + { 51,5113 }, { 52,5113 }, { 53,5113 }, { 54,5113 }, { 55,5113 }, + { 56,5113 }, { 57,5113 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,5113 }, + { 66,5113 }, { 67,5113 }, { 68,5113 }, { 69,5113 }, { 70,5113 }, + { 71,5113 }, { 72,5113 }, { 73,5113 }, { 74,5113 }, { 75,5113 }, + { 76,5113 }, { 77,5113 }, { 78,5113 }, { 79,5113 }, { 80,5113 }, + { 81,5113 }, { 82,5113 }, { 83,5113 }, { 84,5113 }, { 85,5113 }, + { 86,5113 }, { 87,5113 }, { 88,5113 }, { 89,5113 }, { 90,5113 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95,5113 }, + { 0, 0 }, { 97,5113 }, { 98,5113 }, { 99,5113 }, { 100,5113 }, + { 101,5113 }, { 102,5113 }, { 103,5113 }, { 104,5113 }, { 105,5113 }, + { 106,5113 }, { 107,5113 }, { 108,5113 }, { 109,5113 }, { 110,5113 }, + { 111,5113 }, { 112,5113 }, { 113,5113 }, { 114,5113 }, { 115,5113 }, + { 116,5113 }, { 117,5113 }, { 118,5113 }, { 119,5113 }, { 120,5113 }, + { 121,5113 }, { 122,5113 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 128,5113 }, { 129,5113 }, { 130,5113 }, + { 131,5113 }, { 132,5113 }, { 133,5113 }, { 134,5113 }, { 135,5113 }, + { 136,5113 }, { 137,5113 }, { 138,5113 }, { 139,5113 }, { 140,5113 }, + + { 141,5113 }, { 142,5113 }, { 143,5113 }, { 144,5113 }, { 145,5113 }, + { 146,5113 }, { 147,5113 }, { 148,5113 }, { 149,5113 }, { 150,5113 }, + { 151,5113 }, { 152,5113 }, { 153,5113 }, { 154,5113 }, { 155,5113 }, + { 156,5113 }, { 157,5113 }, { 158,5113 }, { 159,5113 }, { 160,5113 }, + { 161,5113 }, { 162,5113 }, { 163,5113 }, { 164,5113 }, { 165,5113 }, + { 166,5113 }, { 167,5113 }, { 168,5113 }, { 169,5113 }, { 170,5113 }, + { 171,5113 }, { 172,5113 }, { 173,5113 }, { 174,5113 }, { 175,5113 }, + { 176,5113 }, { 177,5113 }, { 178,5113 }, { 179,5113 }, { 180,5113 }, + { 181,5113 }, { 182,5113 }, { 183,5113 }, { 184,5113 }, { 185,5113 }, + { 186,5113 }, { 187,5113 }, { 188,5113 }, { 189,5113 }, { 190,5113 }, + + { 191,5113 }, { 192,5113 }, { 193,5113 }, { 194,5113 }, { 195,5113 }, + { 196,5113 }, { 197,5113 }, { 198,5113 }, { 199,5113 }, { 200,5113 }, + { 201,5113 }, { 202,5113 }, { 203,5113 }, { 204,5113 }, { 205,5113 }, + { 206,5113 }, { 207,5113 }, { 208,5113 }, { 209,5113 }, { 210,5113 }, + { 211,5113 }, { 212,5113 }, { 213,5113 }, { 214,5113 }, { 215,5113 }, + { 216,5113 }, { 217,5113 }, { 218,5113 }, { 219,5113 }, { 220,5113 }, + { 221,5113 }, { 222,5113 }, { 223,5113 }, { 224,5113 }, { 225,5113 }, + { 226,5113 }, { 227,5113 }, { 228,5113 }, { 229,5113 }, { 230,5113 }, + { 231,5113 }, { 232,5113 }, { 233,5113 }, { 234,5113 }, { 235,5113 }, + { 236,5113 }, { 237,5113 }, { 238,5113 }, { 239,5113 }, { 240,5113 }, + + { 241,5113 }, { 242,5113 }, { 243,5113 }, { 244,5113 }, { 245,5113 }, + { 246,5113 }, { 247,5113 }, { 248,5113 }, { 249,5113 }, { 250,5113 }, + { 251,5113 }, { 252,5113 }, { 253,5113 }, { 254,5113 }, { 255,5113 }, + { 0, 11 }, { 0,12682 }, { 1,5113 }, { 2,5113 }, { 3,5113 }, + { 4,5113 }, { 5,5113 }, { 6,5113 }, { 7,5113 }, { 8,5113 }, + { 9,5113 }, { 10,5113 }, { 11,5113 }, { 12,5113 }, { 13,5113 }, + { 14,5113 }, { 15,5113 }, { 16,5113 }, { 17,5113 }, { 18,5113 }, + { 19,5113 }, { 20,5113 }, { 21,5113 }, { 22,5113 }, { 23,5113 }, + { 24,5113 }, { 25,5113 }, { 26,5113 }, { 27,5113 }, { 28,5113 }, + { 29,5113 }, { 30,5113 }, { 31,5113 }, { 32,5113 }, { 33,5113 }, + + { 34,5113 }, { 35,5113 }, { 36,5113 }, { 37,5113 }, { 38,5113 }, + { 0, 0 }, { 40,5113 }, { 41,5113 }, { 42,5113 }, { 43,5113 }, + { 44,5113 }, { 45,5113 }, { 46,5113 }, { 47,5113 }, { 48,5113 }, + { 49,5113 }, { 50,5113 }, { 51,5113 }, { 52,5113 }, { 53,5113 }, + { 54,5113 }, { 55,5113 }, { 56,5113 }, { 57,5113 }, { 58,5113 }, + { 59,5113 }, { 60,5113 }, { 61,5113 }, { 62,5113 }, { 63,5113 }, + { 64,5113 }, { 65,5113 }, { 66,5113 }, { 67,5113 }, { 68,5113 }, + { 69,5113 }, { 70,5113 }, { 71,5113 }, { 72,5113 }, { 73,5113 }, + { 74,5113 }, { 75,5113 }, { 76,5113 }, { 77,5113 }, { 78,5113 }, + { 79,5113 }, { 80,5113 }, { 81,5113 }, { 82,5113 }, { 83,5113 }, + + { 84,5113 }, { 85,5113 }, { 86,5113 }, { 87,5113 }, { 88,5113 }, + { 89,5113 }, { 90,5113 }, { 91,5113 }, { 92,5113 }, { 93,5113 }, + { 94,5113 }, { 95,5113 }, { 96,5113 }, { 97,5113 }, { 98,5113 }, + { 99,5113 }, { 100,5113 }, { 101,5113 }, { 102,5113 }, { 103,5113 }, + { 104,5113 }, { 105,5113 }, { 106,5113 }, { 107,5113 }, { 108,5113 }, + { 109,5113 }, { 110,5113 }, { 111,5113 }, { 112,5113 }, { 113,5113 }, + { 114,5113 }, { 115,5113 }, { 116,5113 }, { 117,5113 }, { 118,5113 }, + { 119,5113 }, { 120,5113 }, { 121,5113 }, { 122,5113 }, { 123,5113 }, + { 124,5113 }, { 125,5113 }, { 126,5113 }, { 127,5113 }, { 128,5113 }, + { 129,5113 }, { 130,5113 }, { 131,5113 }, { 132,5113 }, { 133,5113 }, + + { 134,5113 }, { 135,5113 }, { 136,5113 }, { 137,5113 }, { 138,5113 }, + { 139,5113 }, { 140,5113 }, { 141,5113 }, { 142,5113 }, { 143,5113 }, + { 144,5113 }, { 145,5113 }, { 146,5113 }, { 147,5113 }, { 148,5113 }, + { 149,5113 }, { 150,5113 }, { 151,5113 }, { 152,5113 }, { 153,5113 }, + { 154,5113 }, { 155,5113 }, { 156,5113 }, { 157,5113 }, { 158,5113 }, + { 159,5113 }, { 160,5113 }, { 161,5113 }, { 162,5113 }, { 163,5113 }, + { 164,5113 }, { 165,5113 }, { 166,5113 }, { 167,5113 }, { 168,5113 }, + { 169,5113 }, { 170,5113 }, { 171,5113 }, { 172,5113 }, { 173,5113 }, + { 174,5113 }, { 175,5113 }, { 176,5113 }, { 177,5113 }, { 178,5113 }, + { 179,5113 }, { 180,5113 }, { 181,5113 }, { 182,5113 }, { 183,5113 }, + + { 184,5113 }, { 185,5113 }, { 186,5113 }, { 187,5113 }, { 188,5113 }, + { 189,5113 }, { 190,5113 }, { 191,5113 }, { 192,5113 }, { 193,5113 }, + { 194,5113 }, { 195,5113 }, { 196,5113 }, { 197,5113 }, { 198,5113 }, + { 199,5113 }, { 200,5113 }, { 201,5113 }, { 202,5113 }, { 203,5113 }, + { 204,5113 }, { 205,5113 }, { 206,5113 }, { 207,5113 }, { 208,5113 }, + { 209,5113 }, { 210,5113 }, { 211,5113 }, { 212,5113 }, { 213,5113 }, + { 214,5113 }, { 215,5113 }, { 216,5113 }, { 217,5113 }, { 218,5113 }, + { 219,5113 }, { 220,5113 }, { 221,5113 }, { 222,5113 }, { 223,5113 }, + { 224,5113 }, { 225,5113 }, { 226,5113 }, { 227,5113 }, { 228,5113 }, + { 229,5113 }, { 230,5113 }, { 231,5113 }, { 232,5113 }, { 233,5113 }, + + { 234,5113 }, { 235,5113 }, { 236,5113 }, { 237,5113 }, { 238,5113 }, + { 239,5113 }, { 240,5113 }, { 241,5113 }, { 242,5113 }, { 243,5113 }, + { 244,5113 }, { 245,5113 }, { 246,5113 }, { 247,5113 }, { 248,5113 }, + { 249,5113 }, { 250,5113 }, { 251,5113 }, { 252,5113 }, { 253,5113 }, + { 254,5113 }, { 255,5113 }, { 256,5113 }, { 0, 6 }, { 0,12424 }, + { 1,5113 }, { 2,5113 }, { 3,5113 }, { 4,5113 }, { 5,5113 }, + { 6,5113 }, { 7,5113 }, { 8,5113 }, { 9,5113 }, { 10,5113 }, + { 11,5113 }, { 12,5113 }, { 13,5113 }, { 14,5113 }, { 15,5113 }, + { 16,5113 }, { 17,5113 }, { 18,5113 }, { 19,5113 }, { 20,5113 }, + { 21,5113 }, { 22,5113 }, { 23,5113 }, { 24,5113 }, { 25,5113 }, + + { 26,5113 }, { 27,5113 }, { 28,5113 }, { 29,5113 }, { 30,5113 }, + { 31,5113 }, { 32,5113 }, { 33,5113 }, { 34,5113 }, { 35,5113 }, + { 36,5113 }, { 37,5113 }, { 38,5113 }, { 39,5113 }, { 40,5113 }, + { 41,5113 }, { 0, 0 }, { 43,5113 }, { 44,5113 }, { 45,5113 }, + { 46,5113 }, { 0, 0 }, { 48,5113 }, { 49,5113 }, { 50,5113 }, + { 51,5113 }, { 52,5113 }, { 53,5113 }, { 54,5113 }, { 55,5113 }, + { 56,5113 }, { 57,5113 }, { 58,5113 }, { 59,5113 }, { 60,5113 }, + { 61,5113 }, { 62,5113 }, { 63,5113 }, { 64,5113 }, { 65,5113 }, + { 66,5113 }, { 67,5113 }, { 68,5113 }, { 69,5113 }, { 70,5113 }, + { 71,5113 }, { 72,5113 }, { 73,5113 }, { 74,5113 }, { 75,5113 }, + + { 76,5113 }, { 77,5113 }, { 78,5113 }, { 79,5113 }, { 80,5113 }, + { 81,5113 }, { 82,5113 }, { 83,5113 }, { 84,5113 }, { 85,5113 }, + { 86,5113 }, { 87,5113 }, { 88,5113 }, { 89,5113 }, { 90,5113 }, + { 91,5113 }, { 92,5113 }, { 93,5113 }, { 94,5113 }, { 95,5113 }, + { 96,5113 }, { 97,5113 }, { 98,5113 }, { 99,5113 }, { 100,5113 }, + { 101,5113 }, { 102,5113 }, { 103,5113 }, { 104,5113 }, { 105,5113 }, + { 106,5113 }, { 107,5113 }, { 108,5113 }, { 109,5113 }, { 110,5113 }, + { 111,5113 }, { 112,5113 }, { 113,5113 }, { 114,5113 }, { 115,5113 }, + { 116,5113 }, { 117,5113 }, { 118,5113 }, { 119,5113 }, { 120,5113 }, + { 121,5113 }, { 122,5113 }, { 123,5113 }, { 124,5113 }, { 125,5113 }, + + { 126,5113 }, { 127,5113 }, { 128,5113 }, { 129,5113 }, { 130,5113 }, + { 131,5113 }, { 132,5113 }, { 133,5113 }, { 134,5113 }, { 135,5113 }, + { 136,5113 }, { 137,5113 }, { 138,5113 }, { 139,5113 }, { 140,5113 }, + { 141,5113 }, { 142,5113 }, { 143,5113 }, { 144,5113 }, { 145,5113 }, + { 146,5113 }, { 147,5113 }, { 148,5113 }, { 149,5113 }, { 150,5113 }, + { 151,5113 }, { 152,5113 }, { 153,5113 }, { 154,5113 }, { 155,5113 }, + { 156,5113 }, { 157,5113 }, { 158,5113 }, { 159,5113 }, { 160,5113 }, + { 161,5113 }, { 162,5113 }, { 163,5113 }, { 164,5113 }, { 165,5113 }, + { 166,5113 }, { 167,5113 }, { 168,5113 }, { 169,5113 }, { 170,5113 }, + { 171,5113 }, { 172,5113 }, { 173,5113 }, { 174,5113 }, { 175,5113 }, + + { 176,5113 }, { 177,5113 }, { 178,5113 }, { 179,5113 }, { 180,5113 }, + { 181,5113 }, { 182,5113 }, { 183,5113 }, { 184,5113 }, { 185,5113 }, + { 186,5113 }, { 187,5113 }, { 188,5113 }, { 189,5113 }, { 190,5113 }, + { 191,5113 }, { 192,5113 }, { 193,5113 }, { 194,5113 }, { 195,5113 }, + { 196,5113 }, { 197,5113 }, { 198,5113 }, { 199,5113 }, { 200,5113 }, + { 201,5113 }, { 202,5113 }, { 203,5113 }, { 204,5113 }, { 205,5113 }, + { 206,5113 }, { 207,5113 }, { 208,5113 }, { 209,5113 }, { 210,5113 }, + { 211,5113 }, { 212,5113 }, { 213,5113 }, { 214,5113 }, { 215,5113 }, + { 216,5113 }, { 217,5113 }, { 218,5113 }, { 219,5113 }, { 220,5113 }, + { 221,5113 }, { 222,5113 }, { 223,5113 }, { 224,5113 }, { 225,5113 }, + + { 226,5113 }, { 227,5113 }, { 228,5113 }, { 229,5113 }, { 230,5113 }, + { 231,5113 }, { 232,5113 }, { 233,5113 }, { 234,5113 }, { 235,5113 }, + { 236,5113 }, { 237,5113 }, { 238,5113 }, { 239,5113 }, { 240,5113 }, + { 241,5113 }, { 242,5113 }, { 243,5113 }, { 244,5113 }, { 245,5113 }, + { 246,5113 }, { 247,5113 }, { 248,5113 }, { 249,5113 }, { 250,5113 }, + { 251,5113 }, { 252,5113 }, { 253,5113 }, { 254,5113 }, { 255,5113 }, + { 256,5113 }, { 0, 6 }, { 0,12166 }, { 1,4855 }, { 2,4855 }, + { 3,4855 }, { 4,4855 }, { 5,4855 }, { 6,4855 }, { 7,4855 }, + { 8,4855 }, { 9,4855 }, { 10,4855 }, { 11,4855 }, { 12,4855 }, + { 13,4855 }, { 14,4855 }, { 15,4855 }, { 16,4855 }, { 17,4855 }, + + { 18,4855 }, { 19,4855 }, { 20,4855 }, { 21,4855 }, { 22,4855 }, + { 23,4855 }, { 24,4855 }, { 25,4855 }, { 26,4855 }, { 27,4855 }, + { 28,4855 }, { 29,4855 }, { 30,4855 }, { 31,4855 }, { 32,4855 }, + { 33,4855 }, { 34,4855 }, { 35,4855 }, { 36,4855 }, { 37,4855 }, + { 38,4855 }, { 39,4855 }, { 40,4855 }, { 41,4855 }, { 0, 0 }, + { 43,4855 }, { 44,4855 }, { 45,4855 }, { 46,4855 }, { 0, 0 }, + { 48,4855 }, { 49,4855 }, { 50,4855 }, { 51,4855 }, { 52,4855 }, + { 53,4855 }, { 54,4855 }, { 55,4855 }, { 56,4855 }, { 57,4855 }, + { 58,4855 }, { 59,4855 }, { 60,4855 }, { 61,4855 }, { 62,4855 }, + { 63,4855 }, { 64,4855 }, { 65,4855 }, { 66,4855 }, { 67,4855 }, + + { 68,4855 }, { 69,4855 }, { 70,4855 }, { 71,4855 }, { 72,4855 }, + { 73,4855 }, { 74,4855 }, { 75,4855 }, { 76,4855 }, { 77,4855 }, + { 78,4855 }, { 79,4855 }, { 80,4855 }, { 81,4855 }, { 82,4855 }, + { 83,4855 }, { 84,4855 }, { 85,4855 }, { 86,4855 }, { 87,4855 }, + { 88,4855 }, { 89,4855 }, { 90,4855 }, { 91,4855 }, { 92,4855 }, + { 93,4855 }, { 94,4855 }, { 95,4855 }, { 96,4855 }, { 97,4855 }, + { 98,4855 }, { 99,4855 }, { 100,4855 }, { 101,4855 }, { 102,4855 }, + { 103,4855 }, { 104,4855 }, { 105,4855 }, { 106,4855 }, { 107,4855 }, + { 108,4855 }, { 109,4855 }, { 110,4855 }, { 111,4855 }, { 112,4855 }, + { 113,4855 }, { 114,4855 }, { 115,4855 }, { 116,4855 }, { 117,4855 }, + + { 118,4855 }, { 119,4855 }, { 120,4855 }, { 121,4855 }, { 122,4855 }, + { 123,4855 }, { 124,4855 }, { 125,4855 }, { 126,4855 }, { 127,4855 }, + { 128,4855 }, { 129,4855 }, { 130,4855 }, { 131,4855 }, { 132,4855 }, + { 133,4855 }, { 134,4855 }, { 135,4855 }, { 136,4855 }, { 137,4855 }, + { 138,4855 }, { 139,4855 }, { 140,4855 }, { 141,4855 }, { 142,4855 }, + { 143,4855 }, { 144,4855 }, { 145,4855 }, { 146,4855 }, { 147,4855 }, + { 148,4855 }, { 149,4855 }, { 150,4855 }, { 151,4855 }, { 152,4855 }, + { 153,4855 }, { 154,4855 }, { 155,4855 }, { 156,4855 }, { 157,4855 }, + { 158,4855 }, { 159,4855 }, { 160,4855 }, { 161,4855 }, { 162,4855 }, + { 163,4855 }, { 164,4855 }, { 165,4855 }, { 166,4855 }, { 167,4855 }, + + { 168,4855 }, { 169,4855 }, { 170,4855 }, { 171,4855 }, { 172,4855 }, + { 173,4855 }, { 174,4855 }, { 175,4855 }, { 176,4855 }, { 177,4855 }, + { 178,4855 }, { 179,4855 }, { 180,4855 }, { 181,4855 }, { 182,4855 }, + { 183,4855 }, { 184,4855 }, { 185,4855 }, { 186,4855 }, { 187,4855 }, + { 188,4855 }, { 189,4855 }, { 190,4855 }, { 191,4855 }, { 192,4855 }, + { 193,4855 }, { 194,4855 }, { 195,4855 }, { 196,4855 }, { 197,4855 }, + { 198,4855 }, { 199,4855 }, { 200,4855 }, { 201,4855 }, { 202,4855 }, + { 203,4855 }, { 204,4855 }, { 205,4855 }, { 206,4855 }, { 207,4855 }, + { 208,4855 }, { 209,4855 }, { 210,4855 }, { 211,4855 }, { 212,4855 }, + { 213,4855 }, { 214,4855 }, { 215,4855 }, { 216,4855 }, { 217,4855 }, + + { 218,4855 }, { 219,4855 }, { 220,4855 }, { 221,4855 }, { 222,4855 }, + { 223,4855 }, { 224,4855 }, { 225,4855 }, { 226,4855 }, { 227,4855 }, + { 228,4855 }, { 229,4855 }, { 230,4855 }, { 231,4855 }, { 232,4855 }, + { 233,4855 }, { 234,4855 }, { 235,4855 }, { 236,4855 }, { 237,4855 }, + { 238,4855 }, { 239,4855 }, { 240,4855 }, { 241,4855 }, { 242,4855 }, + { 243,4855 }, { 244,4855 }, { 245,4855 }, { 246,4855 }, { 247,4855 }, + { 248,4855 }, { 249,4855 }, { 250,4855 }, { 251,4855 }, { 252,4855 }, + { 253,4855 }, { 254,4855 }, { 255,4855 }, { 256,4855 }, { 0, 44 }, + { 0,11908 }, { 1,4983 }, { 2,4983 }, { 3,4983 }, { 4,4983 }, + { 5,4983 }, { 6,4983 }, { 7,4983 }, { 8,4983 }, { 9,4983 }, + + { 10,4983 }, { 11,4983 }, { 12,4983 }, { 13,4983 }, { 14,4983 }, + { 15,4983 }, { 16,4983 }, { 17,4983 }, { 18,4983 }, { 19,4983 }, + { 20,4983 }, { 21,4983 }, { 22,4983 }, { 23,4983 }, { 24,4983 }, + { 25,4983 }, { 26,4983 }, { 27,4983 }, { 28,4983 }, { 29,4983 }, + { 30,4983 }, { 31,4983 }, { 32,4983 }, { 33,4983 }, { 0, 0 }, + { 35,4983 }, { 36,4983 }, { 37,4983 }, { 38,4983 }, { 39,4983 }, + { 40,4983 }, { 41,4983 }, { 42,4983 }, { 43,4983 }, { 44,4983 }, + { 45,4983 }, { 46,4983 }, { 47,4983 }, { 48,4983 }, { 49,4983 }, + { 50,4983 }, { 51,4983 }, { 52,4983 }, { 53,4983 }, { 54,4983 }, + { 55,4983 }, { 56,4983 }, { 57,4983 }, { 58,4983 }, { 59,4983 }, + + { 60,4983 }, { 61,4983 }, { 62,4983 }, { 63,4983 }, { 64,4983 }, + { 65,4983 }, { 66,4983 }, { 67,4983 }, { 68,4983 }, { 69,4983 }, + { 70,4983 }, { 71,4983 }, { 72,4983 }, { 73,4983 }, { 74,4983 }, + { 75,4983 }, { 76,4983 }, { 77,4983 }, { 78,4983 }, { 79,4983 }, + { 80,4983 }, { 81,4983 }, { 82,4983 }, { 83,4983 }, { 84,4983 }, + { 85,4983 }, { 86,4983 }, { 87,4983 }, { 88,4983 }, { 89,4983 }, + { 90,4983 }, { 91,4983 }, { 92,4983 }, { 93,4983 }, { 94,4983 }, + { 95,4983 }, { 96,4983 }, { 97,4983 }, { 98,4983 }, { 99,4983 }, + { 100,4983 }, { 101,4983 }, { 102,4983 }, { 103,4983 }, { 104,4983 }, + { 105,4983 }, { 106,4983 }, { 107,4983 }, { 108,4983 }, { 109,4983 }, + + { 110,4983 }, { 111,4983 }, { 112,4983 }, { 113,4983 }, { 114,4983 }, + { 115,4983 }, { 116,4983 }, { 117,4983 }, { 118,4983 }, { 119,4983 }, + { 120,4983 }, { 121,4983 }, { 122,4983 }, { 123,4983 }, { 124,4983 }, + { 125,4983 }, { 126,4983 }, { 127,4983 }, { 128,4983 }, { 129,4983 }, + { 130,4983 }, { 131,4983 }, { 132,4983 }, { 133,4983 }, { 134,4983 }, + { 135,4983 }, { 136,4983 }, { 137,4983 }, { 138,4983 }, { 139,4983 }, + { 140,4983 }, { 141,4983 }, { 142,4983 }, { 143,4983 }, { 144,4983 }, + { 145,4983 }, { 146,4983 }, { 147,4983 }, { 148,4983 }, { 149,4983 }, + { 150,4983 }, { 151,4983 }, { 152,4983 }, { 153,4983 }, { 154,4983 }, + { 155,4983 }, { 156,4983 }, { 157,4983 }, { 158,4983 }, { 159,4983 }, + + { 160,4983 }, { 161,4983 }, { 162,4983 }, { 163,4983 }, { 164,4983 }, + { 165,4983 }, { 166,4983 }, { 167,4983 }, { 168,4983 }, { 169,4983 }, + { 170,4983 }, { 171,4983 }, { 172,4983 }, { 173,4983 }, { 174,4983 }, + { 175,4983 }, { 176,4983 }, { 177,4983 }, { 178,4983 }, { 179,4983 }, + { 180,4983 }, { 181,4983 }, { 182,4983 }, { 183,4983 }, { 184,4983 }, + { 185,4983 }, { 186,4983 }, { 187,4983 }, { 188,4983 }, { 189,4983 }, + { 190,4983 }, { 191,4983 }, { 192,4983 }, { 193,4983 }, { 194,4983 }, + { 195,4983 }, { 196,4983 }, { 197,4983 }, { 198,4983 }, { 199,4983 }, + { 200,4983 }, { 201,4983 }, { 202,4983 }, { 203,4983 }, { 204,4983 }, + { 205,4983 }, { 206,4983 }, { 207,4983 }, { 208,4983 }, { 209,4983 }, + + { 210,4983 }, { 211,4983 }, { 212,4983 }, { 213,4983 }, { 214,4983 }, + { 215,4983 }, { 216,4983 }, { 217,4983 }, { 218,4983 }, { 219,4983 }, + { 220,4983 }, { 221,4983 }, { 222,4983 }, { 223,4983 }, { 224,4983 }, + { 225,4983 }, { 226,4983 }, { 227,4983 }, { 228,4983 }, { 229,4983 }, + { 230,4983 }, { 231,4983 }, { 232,4983 }, { 233,4983 }, { 234,4983 }, + { 235,4983 }, { 236,4983 }, { 237,4983 }, { 238,4983 }, { 239,4983 }, + { 240,4983 }, { 241,4983 }, { 242,4983 }, { 243,4983 }, { 244,4983 }, + { 245,4983 }, { 246,4983 }, { 247,4983 }, { 248,4983 }, { 249,4983 }, + { 250,4983 }, { 251,4983 }, { 252,4983 }, { 253,4983 }, { 254,4983 }, + { 255,4983 }, { 256,4983 }, { 0, 10 }, { 0,11650 }, { 1,4983 }, + + { 2,4983 }, { 3,4983 }, { 4,4983 }, { 5,4983 }, { 6,4983 }, + { 7,4983 }, { 8,4983 }, { 9,4983 }, { 10,4983 }, { 11,4983 }, + { 12,4983 }, { 13,4983 }, { 14,4983 }, { 15,4983 }, { 16,4983 }, + { 17,4983 }, { 18,4983 }, { 19,4983 }, { 20,4983 }, { 21,4983 }, + { 22,4983 }, { 23,4983 }, { 24,4983 }, { 25,4983 }, { 26,4983 }, + { 27,4983 }, { 28,4983 }, { 29,4983 }, { 30,4983 }, { 31,4983 }, + { 32,4983 }, { 33,4983 }, { 34,4983 }, { 35,4983 }, { 36,4983 }, + { 37,4983 }, { 38,4983 }, { 0, 0 }, { 40,4983 }, { 41,4983 }, + { 42,4983 }, { 43,4983 }, { 44,4983 }, { 45,4983 }, { 46,4983 }, + { 47,4983 }, { 48,4983 }, { 49,4983 }, { 50,4983 }, { 51,4983 }, + + { 52,4983 }, { 53,4983 }, { 54,4983 }, { 55,4983 }, { 56,4983 }, + { 57,4983 }, { 58,4983 }, { 59,4983 }, { 60,4983 }, { 61,4983 }, + { 62,4983 }, { 63,4983 }, { 64,4983 }, { 65,4983 }, { 66,4983 }, + { 67,4983 }, { 68,4983 }, { 69,4983 }, { 70,4983 }, { 71,4983 }, + { 72,4983 }, { 73,4983 }, { 74,4983 }, { 75,4983 }, { 76,4983 }, + { 77,4983 }, { 78,4983 }, { 79,4983 }, { 80,4983 }, { 81,4983 }, + { 82,4983 }, { 83,4983 }, { 84,4983 }, { 85,4983 }, { 86,4983 }, + { 87,4983 }, { 88,4983 }, { 89,4983 }, { 90,4983 }, { 91,4983 }, + { 92,4983 }, { 93,4983 }, { 94,4983 }, { 95,4983 }, { 96,4983 }, + { 97,4983 }, { 98,4983 }, { 99,4983 }, { 100,4983 }, { 101,4983 }, + + { 102,4983 }, { 103,4983 }, { 104,4983 }, { 105,4983 }, { 106,4983 }, + { 107,4983 }, { 108,4983 }, { 109,4983 }, { 110,4983 }, { 111,4983 }, + { 112,4983 }, { 113,4983 }, { 114,4983 }, { 115,4983 }, { 116,4983 }, + { 117,4983 }, { 118,4983 }, { 119,4983 }, { 120,4983 }, { 121,4983 }, + { 122,4983 }, { 123,4983 }, { 124,4983 }, { 125,4983 }, { 126,4983 }, + { 127,4983 }, { 128,4983 }, { 129,4983 }, { 130,4983 }, { 131,4983 }, + { 132,4983 }, { 133,4983 }, { 134,4983 }, { 135,4983 }, { 136,4983 }, + { 137,4983 }, { 138,4983 }, { 139,4983 }, { 140,4983 }, { 141,4983 }, + { 142,4983 }, { 143,4983 }, { 144,4983 }, { 145,4983 }, { 146,4983 }, + { 147,4983 }, { 148,4983 }, { 149,4983 }, { 150,4983 }, { 151,4983 }, + + { 152,4983 }, { 153,4983 }, { 154,4983 }, { 155,4983 }, { 156,4983 }, + { 157,4983 }, { 158,4983 }, { 159,4983 }, { 160,4983 }, { 161,4983 }, + { 162,4983 }, { 163,4983 }, { 164,4983 }, { 165,4983 }, { 166,4983 }, + { 167,4983 }, { 168,4983 }, { 169,4983 }, { 170,4983 }, { 171,4983 }, + { 172,4983 }, { 173,4983 }, { 174,4983 }, { 175,4983 }, { 176,4983 }, + { 177,4983 }, { 178,4983 }, { 179,4983 }, { 180,4983 }, { 181,4983 }, + { 182,4983 }, { 183,4983 }, { 184,4983 }, { 185,4983 }, { 186,4983 }, + { 187,4983 }, { 188,4983 }, { 189,4983 }, { 190,4983 }, { 191,4983 }, + { 192,4983 }, { 193,4983 }, { 194,4983 }, { 195,4983 }, { 196,4983 }, + { 197,4983 }, { 198,4983 }, { 199,4983 }, { 200,4983 }, { 201,4983 }, + + { 202,4983 }, { 203,4983 }, { 204,4983 }, { 205,4983 }, { 206,4983 }, + { 207,4983 }, { 208,4983 }, { 209,4983 }, { 210,4983 }, { 211,4983 }, + { 212,4983 }, { 213,4983 }, { 214,4983 }, { 215,4983 }, { 216,4983 }, + { 217,4983 }, { 218,4983 }, { 219,4983 }, { 220,4983 }, { 221,4983 }, + { 222,4983 }, { 223,4983 }, { 224,4983 }, { 225,4983 }, { 226,4983 }, + { 227,4983 }, { 228,4983 }, { 229,4983 }, { 230,4983 }, { 231,4983 }, + { 232,4983 }, { 233,4983 }, { 234,4983 }, { 235,4983 }, { 236,4983 }, + { 237,4983 }, { 238,4983 }, { 239,4983 }, { 240,4983 }, { 241,4983 }, + { 242,4983 }, { 243,4983 }, { 244,4983 }, { 245,4983 }, { 246,4983 }, + { 247,4983 }, { 248,4983 }, { 249,4983 }, { 250,4983 }, { 251,4983 }, + + { 252,4983 }, { 253,4983 }, { 254,4983 }, { 255,4983 }, { 256,4983 }, + { 0, 22 }, { 0,11392 }, { 1,4983 }, { 2,4983 }, { 3,4983 }, + { 4,4983 }, { 5,4983 }, { 6,4983 }, { 7,4983 }, { 8,4983 }, + { 9,4983 }, { 10,4983 }, { 11,4983 }, { 12,4983 }, { 13,4983 }, + { 14,4983 }, { 15,4983 }, { 16,4983 }, { 17,4983 }, { 18,4983 }, + { 19,4983 }, { 20,4983 }, { 21,4983 }, { 22,4983 }, { 23,4983 }, + { 24,4983 }, { 25,4983 }, { 26,4983 }, { 27,4983 }, { 28,4983 }, + { 29,4983 }, { 30,4983 }, { 31,4983 }, { 32,4983 }, { 33,4983 }, + { 34,4983 }, { 35,4983 }, { 36,4983 }, { 37,4983 }, { 38,4983 }, + { 0, 0 }, { 40,4983 }, { 41,4983 }, { 42,4983 }, { 43,4983 }, + + { 44,4983 }, { 45,4983 }, { 46,4983 }, { 47,4983 }, { 48,4983 }, + { 49,4983 }, { 50,4983 }, { 51,4983 }, { 52,4983 }, { 53,4983 }, + { 54,4983 }, { 55,4983 }, { 56,4983 }, { 57,4983 }, { 58,4983 }, + { 59,4983 }, { 60,4983 }, { 61,4983 }, { 62,4983 }, { 63,4983 }, + { 64,4983 }, { 65,4983 }, { 66,4983 }, { 67,4983 }, { 68,4983 }, + { 69,4983 }, { 70,4983 }, { 71,4983 }, { 72,4983 }, { 73,4983 }, + { 74,4983 }, { 75,4983 }, { 76,4983 }, { 77,4983 }, { 78,4983 }, + { 79,4983 }, { 80,4983 }, { 81,4983 }, { 82,4983 }, { 83,4983 }, + { 84,4983 }, { 85,4983 }, { 86,4983 }, { 87,4983 }, { 88,4983 }, + { 89,4983 }, { 90,4983 }, { 91,4983 }, { 92,4983 }, { 93,4983 }, + + { 94,4983 }, { 95,4983 }, { 96,4983 }, { 97,4983 }, { 98,4983 }, + { 99,4983 }, { 100,4983 }, { 101,4983 }, { 102,4983 }, { 103,4983 }, + { 104,4983 }, { 105,4983 }, { 106,4983 }, { 107,4983 }, { 108,4983 }, + { 109,4983 }, { 110,4983 }, { 111,4983 }, { 112,4983 }, { 113,4983 }, + { 114,4983 }, { 115,4983 }, { 116,4983 }, { 117,4983 }, { 118,4983 }, + { 119,4983 }, { 120,4983 }, { 121,4983 }, { 122,4983 }, { 123,4983 }, + { 124,4983 }, { 125,4983 }, { 126,4983 }, { 127,4983 }, { 128,4983 }, + { 129,4983 }, { 130,4983 }, { 131,4983 }, { 132,4983 }, { 133,4983 }, + { 134,4983 }, { 135,4983 }, { 136,4983 }, { 137,4983 }, { 138,4983 }, + { 139,4983 }, { 140,4983 }, { 141,4983 }, { 142,4983 }, { 143,4983 }, + + { 144,4983 }, { 145,4983 }, { 146,4983 }, { 147,4983 }, { 148,4983 }, + { 149,4983 }, { 150,4983 }, { 151,4983 }, { 152,4983 }, { 153,4983 }, + { 154,4983 }, { 155,4983 }, { 156,4983 }, { 157,4983 }, { 158,4983 }, + { 159,4983 }, { 160,4983 }, { 161,4983 }, { 162,4983 }, { 163,4983 }, + { 164,4983 }, { 165,4983 }, { 166,4983 }, { 167,4983 }, { 168,4983 }, + { 169,4983 }, { 170,4983 }, { 171,4983 }, { 172,4983 }, { 173,4983 }, + { 174,4983 }, { 175,4983 }, { 176,4983 }, { 177,4983 }, { 178,4983 }, + { 179,4983 }, { 180,4983 }, { 181,4983 }, { 182,4983 }, { 183,4983 }, + { 184,4983 }, { 185,4983 }, { 186,4983 }, { 187,4983 }, { 188,4983 }, + { 189,4983 }, { 190,4983 }, { 191,4983 }, { 192,4983 }, { 193,4983 }, + + { 194,4983 }, { 195,4983 }, { 196,4983 }, { 197,4983 }, { 198,4983 }, + { 199,4983 }, { 200,4983 }, { 201,4983 }, { 202,4983 }, { 203,4983 }, + { 204,4983 }, { 205,4983 }, { 206,4983 }, { 207,4983 }, { 208,4983 }, + { 209,4983 }, { 210,4983 }, { 211,4983 }, { 212,4983 }, { 213,4983 }, + { 214,4983 }, { 215,4983 }, { 216,4983 }, { 217,4983 }, { 218,4983 }, + { 219,4983 }, { 220,4983 }, { 221,4983 }, { 222,4983 }, { 223,4983 }, + { 224,4983 }, { 225,4983 }, { 226,4983 }, { 227,4983 }, { 228,4983 }, + { 229,4983 }, { 230,4983 }, { 231,4983 }, { 232,4983 }, { 233,4983 }, + { 234,4983 }, { 235,4983 }, { 236,4983 }, { 237,4983 }, { 238,4983 }, + { 239,4983 }, { 240,4983 }, { 241,4983 }, { 242,4983 }, { 243,4983 }, + + { 244,4983 }, { 245,4983 }, { 246,4983 }, { 247,4983 }, { 248,4983 }, + { 249,4983 }, { 250,4983 }, { 251,4983 }, { 252,4983 }, { 253,4983 }, + { 254,4983 }, { 255,4983 }, { 256,4983 }, { 0, 19 }, { 0,11134 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 19 }, { 0,11129 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 9,4983 }, { 10,4988 }, + { 0, 0 }, { 12,4983 }, { 13,4988 }, { 9,4999 }, { 10,4999 }, + { 0, 0 }, { 12,4999 }, { 13,4999 }, { 0, 0 }, { 0, 19 }, + { 0,11113 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 9,4983 }, + { 10,4983 }, { 32,4983 }, { 12,4983 }, { 13,4983 }, { 0, 0 }, + + { 0, 0 }, { 32,4999 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 39,-3785 }, { 45,-3807 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 45,-3812 }, + { 0, 0 }, { 0, 0 }, { 32,4983 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 39,-3801 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 45,-3828 }, { 0, 23 }, { 0,11066 }, { 1,4983 }, { 2,4983 }, + { 3,4983 }, { 4,4983 }, { 5,4983 }, { 6,4983 }, { 7,4983 }, + { 8,4983 }, { 9,4983 }, { 10,4983 }, { 11,4983 }, { 12,4983 }, + { 13,4983 }, { 14,4983 }, { 15,4983 }, { 16,4983 }, { 17,4983 }, + + { 18,4983 }, { 19,4983 }, { 20,4983 }, { 21,4983 }, { 22,4983 }, + { 23,4983 }, { 24,4983 }, { 25,4983 }, { 26,4983 }, { 27,4983 }, + { 28,4983 }, { 29,4983 }, { 30,4983 }, { 31,4983 }, { 32,4983 }, + { 33,4983 }, { 34,4983 }, { 35,4983 }, { 36,4983 }, { 37,4983 }, + { 38,4983 }, { 0, 0 }, { 40,4983 }, { 41,4983 }, { 42,4983 }, + { 43,4983 }, { 44,4983 }, { 45,4983 }, { 46,4983 }, { 47,4983 }, + { 48,4983 }, { 49,4983 }, { 50,4983 }, { 51,4983 }, { 52,4983 }, + { 53,4983 }, { 54,4983 }, { 55,4983 }, { 56,4983 }, { 57,4983 }, + { 58,4983 }, { 59,4983 }, { 60,4983 }, { 61,4983 }, { 62,4983 }, + { 63,4983 }, { 64,4983 }, { 65,4983 }, { 66,4983 }, { 67,4983 }, + + { 68,4983 }, { 69,4983 }, { 70,4983 }, { 71,4983 }, { 72,4983 }, + { 73,4983 }, { 74,4983 }, { 75,4983 }, { 76,4983 }, { 77,4983 }, + { 78,4983 }, { 79,4983 }, { 80,4983 }, { 81,4983 }, { 82,4983 }, + { 83,4983 }, { 84,4983 }, { 85,4983 }, { 86,4983 }, { 87,4983 }, + { 88,4983 }, { 89,4983 }, { 90,4983 }, { 91,4983 }, { 0, 0 }, + { 93,4983 }, { 94,4983 }, { 95,4983 }, { 96,4983 }, { 97,4983 }, + { 98,4983 }, { 99,4983 }, { 100,4983 }, { 101,4983 }, { 102,4983 }, + { 103,4983 }, { 104,4983 }, { 105,4983 }, { 106,4983 }, { 107,4983 }, + { 108,4983 }, { 109,4983 }, { 110,4983 }, { 111,4983 }, { 112,4983 }, + { 113,4983 }, { 114,4983 }, { 115,4983 }, { 116,4983 }, { 117,4983 }, + + { 118,4983 }, { 119,4983 }, { 120,4983 }, { 121,4983 }, { 122,4983 }, + { 123,4983 }, { 124,4983 }, { 125,4983 }, { 126,4983 }, { 127,4983 }, + { 128,4983 }, { 129,4983 }, { 130,4983 }, { 131,4983 }, { 132,4983 }, + { 133,4983 }, { 134,4983 }, { 135,4983 }, { 136,4983 }, { 137,4983 }, + { 138,4983 }, { 139,4983 }, { 140,4983 }, { 141,4983 }, { 142,4983 }, + { 143,4983 }, { 144,4983 }, { 145,4983 }, { 146,4983 }, { 147,4983 }, + { 148,4983 }, { 149,4983 }, { 150,4983 }, { 151,4983 }, { 152,4983 }, + { 153,4983 }, { 154,4983 }, { 155,4983 }, { 156,4983 }, { 157,4983 }, + { 158,4983 }, { 159,4983 }, { 160,4983 }, { 161,4983 }, { 162,4983 }, + { 163,4983 }, { 164,4983 }, { 165,4983 }, { 166,4983 }, { 167,4983 }, + + { 168,4983 }, { 169,4983 }, { 170,4983 }, { 171,4983 }, { 172,4983 }, + { 173,4983 }, { 174,4983 }, { 175,4983 }, { 176,4983 }, { 177,4983 }, + { 178,4983 }, { 179,4983 }, { 180,4983 }, { 181,4983 }, { 182,4983 }, + { 183,4983 }, { 184,4983 }, { 185,4983 }, { 186,4983 }, { 187,4983 }, + { 188,4983 }, { 189,4983 }, { 190,4983 }, { 191,4983 }, { 192,4983 }, + { 193,4983 }, { 194,4983 }, { 195,4983 }, { 196,4983 }, { 197,4983 }, + { 198,4983 }, { 199,4983 }, { 200,4983 }, { 201,4983 }, { 202,4983 }, + { 203,4983 }, { 204,4983 }, { 205,4983 }, { 206,4983 }, { 207,4983 }, + { 208,4983 }, { 209,4983 }, { 210,4983 }, { 211,4983 }, { 212,4983 }, + { 213,4983 }, { 214,4983 }, { 215,4983 }, { 216,4983 }, { 217,4983 }, + + { 218,4983 }, { 219,4983 }, { 220,4983 }, { 221,4983 }, { 222,4983 }, + { 223,4983 }, { 224,4983 }, { 225,4983 }, { 226,4983 }, { 227,4983 }, + { 228,4983 }, { 229,4983 }, { 230,4983 }, { 231,4983 }, { 232,4983 }, + { 233,4983 }, { 234,4983 }, { 235,4983 }, { 236,4983 }, { 237,4983 }, + { 238,4983 }, { 239,4983 }, { 240,4983 }, { 241,4983 }, { 242,4983 }, + { 243,4983 }, { 244,4983 }, { 245,4983 }, { 246,4983 }, { 247,4983 }, + { 248,4983 }, { 249,4983 }, { 250,4983 }, { 251,4983 }, { 252,4983 }, + { 253,4983 }, { 254,4983 }, { 255,4983 }, { 256,4983 }, { 0, 23 }, + { 0,10808 }, { 1,4725 }, { 2,4725 }, { 3,4725 }, { 4,4725 }, + { 5,4725 }, { 6,4725 }, { 7,4725 }, { 8,4725 }, { 9,4725 }, + + { 10,4725 }, { 11,4725 }, { 12,4725 }, { 13,4725 }, { 14,4725 }, + { 15,4725 }, { 16,4725 }, { 17,4725 }, { 18,4725 }, { 19,4725 }, + { 20,4725 }, { 21,4725 }, { 22,4725 }, { 23,4725 }, { 24,4725 }, + { 25,4725 }, { 26,4725 }, { 27,4725 }, { 28,4725 }, { 29,4725 }, + { 30,4725 }, { 31,4725 }, { 32,4725 }, { 33,4725 }, { 34,4725 }, + { 35,4725 }, { 36,4725 }, { 37,4725 }, { 38,4725 }, { 0, 0 }, + { 40,4725 }, { 41,4725 }, { 42,4725 }, { 43,4725 }, { 44,4725 }, + { 45,4725 }, { 46,4725 }, { 47,4725 }, { 48,4725 }, { 49,4725 }, + { 50,4725 }, { 51,4725 }, { 52,4725 }, { 53,4725 }, { 54,4725 }, + { 55,4725 }, { 56,4725 }, { 57,4725 }, { 58,4725 }, { 59,4725 }, + + { 60,4725 }, { 61,4725 }, { 62,4725 }, { 63,4725 }, { 64,4725 }, + { 65,4725 }, { 66,4725 }, { 67,4725 }, { 68,4725 }, { 69,4725 }, + { 70,4725 }, { 71,4725 }, { 72,4725 }, { 73,4725 }, { 74,4725 }, + { 75,4725 }, { 76,4725 }, { 77,4725 }, { 78,4725 }, { 79,4725 }, + { 80,4725 }, { 81,4725 }, { 82,4725 }, { 83,4725 }, { 84,4725 }, + { 85,4725 }, { 86,4725 }, { 87,4725 }, { 88,4725 }, { 89,4725 }, + { 90,4725 }, { 91,4725 }, { 0, 0 }, { 93,4725 }, { 94,4725 }, + { 95,4725 }, { 96,4725 }, { 97,4725 }, { 98,4725 }, { 99,4725 }, + { 100,4725 }, { 101,4725 }, { 102,4725 }, { 103,4725 }, { 104,4725 }, + { 105,4725 }, { 106,4725 }, { 107,4725 }, { 108,4725 }, { 109,4725 }, + + { 110,4725 }, { 111,4725 }, { 112,4725 }, { 113,4725 }, { 114,4725 }, + { 115,4725 }, { 116,4725 }, { 117,4725 }, { 118,4725 }, { 119,4725 }, + { 120,4725 }, { 121,4725 }, { 122,4725 }, { 123,4725 }, { 124,4725 }, + { 125,4725 }, { 126,4725 }, { 127,4725 }, { 128,4725 }, { 129,4725 }, + { 130,4725 }, { 131,4725 }, { 132,4725 }, { 133,4725 }, { 134,4725 }, + { 135,4725 }, { 136,4725 }, { 137,4725 }, { 138,4725 }, { 139,4725 }, + { 140,4725 }, { 141,4725 }, { 142,4725 }, { 143,4725 }, { 144,4725 }, + { 145,4725 }, { 146,4725 }, { 147,4725 }, { 148,4725 }, { 149,4725 }, + { 150,4725 }, { 151,4725 }, { 152,4725 }, { 153,4725 }, { 154,4725 }, + { 155,4725 }, { 156,4725 }, { 157,4725 }, { 158,4725 }, { 159,4725 }, + + { 160,4725 }, { 161,4725 }, { 162,4725 }, { 163,4725 }, { 164,4725 }, + { 165,4725 }, { 166,4725 }, { 167,4725 }, { 168,4725 }, { 169,4725 }, + { 170,4725 }, { 171,4725 }, { 172,4725 }, { 173,4725 }, { 174,4725 }, + { 175,4725 }, { 176,4725 }, { 177,4725 }, { 178,4725 }, { 179,4725 }, + { 180,4725 }, { 181,4725 }, { 182,4725 }, { 183,4725 }, { 184,4725 }, + { 185,4725 }, { 186,4725 }, { 187,4725 }, { 188,4725 }, { 189,4725 }, + { 190,4725 }, { 191,4725 }, { 192,4725 }, { 193,4725 }, { 194,4725 }, + { 195,4725 }, { 196,4725 }, { 197,4725 }, { 198,4725 }, { 199,4725 }, + { 200,4725 }, { 201,4725 }, { 202,4725 }, { 203,4725 }, { 204,4725 }, + { 205,4725 }, { 206,4725 }, { 207,4725 }, { 208,4725 }, { 209,4725 }, + + { 210,4725 }, { 211,4725 }, { 212,4725 }, { 213,4725 }, { 214,4725 }, + { 215,4725 }, { 216,4725 }, { 217,4725 }, { 218,4725 }, { 219,4725 }, + { 220,4725 }, { 221,4725 }, { 222,4725 }, { 223,4725 }, { 224,4725 }, + { 225,4725 }, { 226,4725 }, { 227,4725 }, { 228,4725 }, { 229,4725 }, + { 230,4725 }, { 231,4725 }, { 232,4725 }, { 233,4725 }, { 234,4725 }, + { 235,4725 }, { 236,4725 }, { 237,4725 }, { 238,4725 }, { 239,4725 }, + { 240,4725 }, { 241,4725 }, { 242,4725 }, { 243,4725 }, { 244,4725 }, + { 245,4725 }, { 246,4725 }, { 247,4725 }, { 248,4725 }, { 249,4725 }, + { 250,4725 }, { 251,4725 }, { 252,4725 }, { 253,4725 }, { 254,4725 }, + { 255,4725 }, { 256,4725 }, { 0, 32 }, { 0,10550 }, { 1,-4362 }, + + { 2,-4362 }, { 3,-4362 }, { 4,-4362 }, { 5,-4362 }, { 6,-4362 }, + { 7,-4362 }, { 8,-4362 }, { 9,-4362 }, { 10,-4362 }, { 11,-4362 }, + { 12,-4362 }, { 13,-4362 }, { 14,-4362 }, { 15,-4362 }, { 16,-4362 }, + { 17,-4362 }, { 18,-4362 }, { 19,-4362 }, { 20,-4362 }, { 21,-4362 }, + { 22,-4362 }, { 23,-4362 }, { 24,-4362 }, { 25,-4362 }, { 26,-4362 }, + { 27,-4362 }, { 28,-4362 }, { 29,-4362 }, { 30,-4362 }, { 31,-4362 }, + { 32,-4362 }, { 33,-4362 }, { 34,-4362 }, { 35,-4362 }, { 36,-4362 }, + { 37,-4362 }, { 38,-4362 }, { 39,-4362 }, { 40,-4362 }, { 41,-4362 }, + { 42,-4362 }, { 43,-4362 }, { 44,-4362 }, { 45,-4362 }, { 46,-4362 }, + { 47,-4362 }, { 48,4725 }, { 49,4725 }, { 50,4725 }, { 51,4725 }, + + { 52,4725 }, { 53,4725 }, { 54,4725 }, { 55,4725 }, { 56,-4362 }, + { 57,-4362 }, { 58,-4362 }, { 59,-4362 }, { 60,-4362 }, { 61,-4362 }, + { 62,-4362 }, { 63,-4362 }, { 64,-4362 }, { 65,-4362 }, { 66,-4362 }, + { 67,-4362 }, { 68,-4362 }, { 69,-4362 }, { 70,-4362 }, { 71,-4362 }, + { 72,-4362 }, { 73,-4362 }, { 74,-4362 }, { 75,-4362 }, { 76,-4362 }, + { 77,-4362 }, { 78,-4362 }, { 79,-4362 }, { 80,-4362 }, { 81,-4362 }, + { 82,-4362 }, { 83,-4362 }, { 84,-4362 }, { 85,4733 }, { 86,-4362 }, + { 87,-4362 }, { 88,-4362 }, { 89,-4362 }, { 90,-4362 }, { 91,-4362 }, + { 92,-4362 }, { 93,-4362 }, { 94,-4362 }, { 95,-4362 }, { 96,-4362 }, + { 97,-4362 }, { 98,-4362 }, { 99,-4362 }, { 100,-4362 }, { 101,-4362 }, + + { 102,-4362 }, { 103,-4362 }, { 104,-4362 }, { 105,-4362 }, { 106,-4362 }, + { 107,-4362 }, { 108,-4362 }, { 109,-4362 }, { 110,-4362 }, { 111,-4362 }, + { 112,-4362 }, { 113,-4362 }, { 114,-4362 }, { 115,-4362 }, { 116,-4362 }, + { 117,4756 }, { 118,-4362 }, { 119,-4362 }, { 120,4794 }, { 121,-4362 }, + { 122,-4362 }, { 123,-4362 }, { 124,-4362 }, { 125,-4362 }, { 126,-4362 }, + { 127,-4362 }, { 128,-4362 }, { 129,-4362 }, { 130,-4362 }, { 131,-4362 }, + { 132,-4362 }, { 133,-4362 }, { 134,-4362 }, { 135,-4362 }, { 136,-4362 }, + { 137,-4362 }, { 138,-4362 }, { 139,-4362 }, { 140,-4362 }, { 141,-4362 }, + { 142,-4362 }, { 143,-4362 }, { 144,-4362 }, { 145,-4362 }, { 146,-4362 }, + { 147,-4362 }, { 148,-4362 }, { 149,-4362 }, { 150,-4362 }, { 151,-4362 }, + + { 152,-4362 }, { 153,-4362 }, { 154,-4362 }, { 155,-4362 }, { 156,-4362 }, + { 157,-4362 }, { 158,-4362 }, { 159,-4362 }, { 160,-4362 }, { 161,-4362 }, + { 162,-4362 }, { 163,-4362 }, { 164,-4362 }, { 165,-4362 }, { 166,-4362 }, + { 167,-4362 }, { 168,-4362 }, { 169,-4362 }, { 170,-4362 }, { 171,-4362 }, + { 172,-4362 }, { 173,-4362 }, { 174,-4362 }, { 175,-4362 }, { 176,-4362 }, + { 177,-4362 }, { 178,-4362 }, { 179,-4362 }, { 180,-4362 }, { 181,-4362 }, + { 182,-4362 }, { 183,-4362 }, { 184,-4362 }, { 185,-4362 }, { 186,-4362 }, + { 187,-4362 }, { 188,-4362 }, { 189,-4362 }, { 190,-4362 }, { 191,-4362 }, + { 192,-4362 }, { 193,-4362 }, { 194,-4362 }, { 195,-4362 }, { 196,-4362 }, + { 197,-4362 }, { 198,-4362 }, { 199,-4362 }, { 200,-4362 }, { 201,-4362 }, + + { 202,-4362 }, { 203,-4362 }, { 204,-4362 }, { 205,-4362 }, { 206,-4362 }, + { 207,-4362 }, { 208,-4362 }, { 209,-4362 }, { 210,-4362 }, { 211,-4362 }, + { 212,-4362 }, { 213,-4362 }, { 214,-4362 }, { 215,-4362 }, { 216,-4362 }, + { 217,-4362 }, { 218,-4362 }, { 219,-4362 }, { 220,-4362 }, { 221,-4362 }, + { 222,-4362 }, { 223,-4362 }, { 224,-4362 }, { 225,-4362 }, { 226,-4362 }, + { 227,-4362 }, { 228,-4362 }, { 229,-4362 }, { 230,-4362 }, { 231,-4362 }, + { 232,-4362 }, { 233,-4362 }, { 234,-4362 }, { 235,-4362 }, { 236,-4362 }, + { 237,-4362 }, { 238,-4362 }, { 239,-4362 }, { 240,-4362 }, { 241,-4362 }, + { 242,-4362 }, { 243,-4362 }, { 244,-4362 }, { 245,-4362 }, { 246,-4362 }, + { 247,-4362 }, { 248,-4362 }, { 249,-4362 }, { 250,-4362 }, { 251,-4362 }, + + { 252,-4362 }, { 253,-4362 }, { 254,-4362 }, { 255,-4362 }, { 256,-4362 }, + { 0, 36 }, { 0,10292 }, { 1,4640 }, { 2,4640 }, { 3,4640 }, + { 4,4640 }, { 5,4640 }, { 6,4640 }, { 7,4640 }, { 8,4640 }, + { 9,4640 }, { 10,4640 }, { 11,4640 }, { 12,4640 }, { 13,4640 }, + { 14,4640 }, { 15,4640 }, { 16,4640 }, { 17,4640 }, { 18,4640 }, + { 19,4640 }, { 20,4640 }, { 21,4640 }, { 22,4640 }, { 23,4640 }, + { 24,4640 }, { 25,4640 }, { 26,4640 }, { 27,4640 }, { 28,4640 }, + { 29,4640 }, { 30,4640 }, { 31,4640 }, { 32,4640 }, { 33,4640 }, + { 34,4640 }, { 35,4640 }, { 0, 0 }, { 37,4640 }, { 38,4640 }, + { 39,4640 }, { 40,4640 }, { 41,4640 }, { 42,4640 }, { 43,4640 }, + + { 44,4640 }, { 45,4640 }, { 46,4640 }, { 47,4640 }, { 48,4640 }, + { 49,4640 }, { 50,4640 }, { 51,4640 }, { 52,4640 }, { 53,4640 }, + { 54,4640 }, { 55,4640 }, { 56,4640 }, { 57,4640 }, { 58,4640 }, + { 59,4640 }, { 60,4640 }, { 61,4640 }, { 62,4640 }, { 63,4640 }, + { 64,4640 }, { 65,4640 }, { 66,4640 }, { 67,4640 }, { 68,4640 }, + { 69,4640 }, { 70,4640 }, { 71,4640 }, { 72,4640 }, { 73,4640 }, + { 74,4640 }, { 75,4640 }, { 76,4640 }, { 77,4640 }, { 78,4640 }, + { 79,4640 }, { 80,4640 }, { 81,4640 }, { 82,4640 }, { 83,4640 }, + { 84,4640 }, { 85,4640 }, { 86,4640 }, { 87,4640 }, { 88,4640 }, + { 89,4640 }, { 90,4640 }, { 91,4640 }, { 92,4640 }, { 93,4640 }, + + { 94,4640 }, { 95,4640 }, { 96,4640 }, { 97,4640 }, { 98,4640 }, + { 99,4640 }, { 100,4640 }, { 101,4640 }, { 102,4640 }, { 103,4640 }, + { 104,4640 }, { 105,4640 }, { 106,4640 }, { 107,4640 }, { 108,4640 }, + { 109,4640 }, { 110,4640 }, { 111,4640 }, { 112,4640 }, { 113,4640 }, + { 114,4640 }, { 115,4640 }, { 116,4640 }, { 117,4640 }, { 118,4640 }, + { 119,4640 }, { 120,4640 }, { 121,4640 }, { 122,4640 }, { 123,4640 }, + { 124,4640 }, { 125,4640 }, { 126,4640 }, { 127,4640 }, { 128,4640 }, + { 129,4640 }, { 130,4640 }, { 131,4640 }, { 132,4640 }, { 133,4640 }, + { 134,4640 }, { 135,4640 }, { 136,4640 }, { 137,4640 }, { 138,4640 }, + { 139,4640 }, { 140,4640 }, { 141,4640 }, { 142,4640 }, { 143,4640 }, + + { 144,4640 }, { 145,4640 }, { 146,4640 }, { 147,4640 }, { 148,4640 }, + { 149,4640 }, { 150,4640 }, { 151,4640 }, { 152,4640 }, { 153,4640 }, + { 154,4640 }, { 155,4640 }, { 156,4640 }, { 157,4640 }, { 158,4640 }, + { 159,4640 }, { 160,4640 }, { 161,4640 }, { 162,4640 }, { 163,4640 }, + { 164,4640 }, { 165,4640 }, { 166,4640 }, { 167,4640 }, { 168,4640 }, + { 169,4640 }, { 170,4640 }, { 171,4640 }, { 172,4640 }, { 173,4640 }, + { 174,4640 }, { 175,4640 }, { 176,4640 }, { 177,4640 }, { 178,4640 }, + { 179,4640 }, { 180,4640 }, { 181,4640 }, { 182,4640 }, { 183,4640 }, + { 184,4640 }, { 185,4640 }, { 186,4640 }, { 187,4640 }, { 188,4640 }, + { 189,4640 }, { 190,4640 }, { 191,4640 }, { 192,4640 }, { 193,4640 }, + + { 194,4640 }, { 195,4640 }, { 196,4640 }, { 197,4640 }, { 198,4640 }, + { 199,4640 }, { 200,4640 }, { 201,4640 }, { 202,4640 }, { 203,4640 }, + { 204,4640 }, { 205,4640 }, { 206,4640 }, { 207,4640 }, { 208,4640 }, + { 209,4640 }, { 210,4640 }, { 211,4640 }, { 212,4640 }, { 213,4640 }, + { 214,4640 }, { 215,4640 }, { 216,4640 }, { 217,4640 }, { 218,4640 }, + { 219,4640 }, { 220,4640 }, { 221,4640 }, { 222,4640 }, { 223,4640 }, + { 224,4640 }, { 225,4640 }, { 226,4640 }, { 227,4640 }, { 228,4640 }, + { 229,4640 }, { 230,4640 }, { 231,4640 }, { 232,4640 }, { 233,4640 }, + { 234,4640 }, { 235,4640 }, { 236,4640 }, { 237,4640 }, { 238,4640 }, + { 239,4640 }, { 240,4640 }, { 241,4640 }, { 242,4640 }, { 243,4640 }, + + { 244,4640 }, { 245,4640 }, { 246,4640 }, { 247,4640 }, { 248,4640 }, + { 249,4640 }, { 250,4640 }, { 251,4640 }, { 252,4640 }, { 253,4640 }, + { 254,4640 }, { 255,4640 }, { 256,4640 }, { 0, 36 }, { 0,10034 }, + { 1,4382 }, { 2,4382 }, { 3,4382 }, { 4,4382 }, { 5,4382 }, + { 6,4382 }, { 7,4382 }, { 8,4382 }, { 9,4382 }, { 10,4382 }, + { 11,4382 }, { 12,4382 }, { 13,4382 }, { 14,4382 }, { 15,4382 }, + { 16,4382 }, { 17,4382 }, { 18,4382 }, { 19,4382 }, { 20,4382 }, + { 21,4382 }, { 22,4382 }, { 23,4382 }, { 24,4382 }, { 25,4382 }, + { 26,4382 }, { 27,4382 }, { 28,4382 }, { 29,4382 }, { 30,4382 }, + { 31,4382 }, { 32,4382 }, { 33,4382 }, { 34,4382 }, { 35,4382 }, + + { 0, 0 }, { 37,4382 }, { 38,4382 }, { 39,4382 }, { 40,4382 }, + { 41,4382 }, { 42,4382 }, { 43,4382 }, { 44,4382 }, { 45,4382 }, + { 46,4382 }, { 47,4382 }, { 48,4382 }, { 49,4382 }, { 50,4382 }, + { 51,4382 }, { 52,4382 }, { 53,4382 }, { 54,4382 }, { 55,4382 }, + { 56,4382 }, { 57,4382 }, { 58,4382 }, { 59,4382 }, { 60,4382 }, + { 61,4382 }, { 62,4382 }, { 63,4382 }, { 64,4382 }, { 65,4382 }, + { 66,4382 }, { 67,4382 }, { 68,4382 }, { 69,4382 }, { 70,4382 }, + { 71,4382 }, { 72,4382 }, { 73,4382 }, { 74,4382 }, { 75,4382 }, + { 76,4382 }, { 77,4382 }, { 78,4382 }, { 79,4382 }, { 80,4382 }, + { 81,4382 }, { 82,4382 }, { 83,4382 }, { 84,4382 }, { 85,4382 }, + + { 86,4382 }, { 87,4382 }, { 88,4382 }, { 89,4382 }, { 90,4382 }, + { 91,4382 }, { 92,4382 }, { 93,4382 }, { 94,4382 }, { 95,4382 }, + { 96,4382 }, { 97,4382 }, { 98,4382 }, { 99,4382 }, { 100,4382 }, + { 101,4382 }, { 102,4382 }, { 103,4382 }, { 104,4382 }, { 105,4382 }, + { 106,4382 }, { 107,4382 }, { 108,4382 }, { 109,4382 }, { 110,4382 }, + { 111,4382 }, { 112,4382 }, { 113,4382 }, { 114,4382 }, { 115,4382 }, + { 116,4382 }, { 117,4382 }, { 118,4382 }, { 119,4382 }, { 120,4382 }, + { 121,4382 }, { 122,4382 }, { 123,4382 }, { 124,4382 }, { 125,4382 }, + { 126,4382 }, { 127,4382 }, { 128,4382 }, { 129,4382 }, { 130,4382 }, + { 131,4382 }, { 132,4382 }, { 133,4382 }, { 134,4382 }, { 135,4382 }, + + { 136,4382 }, { 137,4382 }, { 138,4382 }, { 139,4382 }, { 140,4382 }, + { 141,4382 }, { 142,4382 }, { 143,4382 }, { 144,4382 }, { 145,4382 }, + { 146,4382 }, { 147,4382 }, { 148,4382 }, { 149,4382 }, { 150,4382 }, + { 151,4382 }, { 152,4382 }, { 153,4382 }, { 154,4382 }, { 155,4382 }, + { 156,4382 }, { 157,4382 }, { 158,4382 }, { 159,4382 }, { 160,4382 }, + { 161,4382 }, { 162,4382 }, { 163,4382 }, { 164,4382 }, { 165,4382 }, + { 166,4382 }, { 167,4382 }, { 168,4382 }, { 169,4382 }, { 170,4382 }, + { 171,4382 }, { 172,4382 }, { 173,4382 }, { 174,4382 }, { 175,4382 }, + { 176,4382 }, { 177,4382 }, { 178,4382 }, { 179,4382 }, { 180,4382 }, + { 181,4382 }, { 182,4382 }, { 183,4382 }, { 184,4382 }, { 185,4382 }, + + { 186,4382 }, { 187,4382 }, { 188,4382 }, { 189,4382 }, { 190,4382 }, + { 191,4382 }, { 192,4382 }, { 193,4382 }, { 194,4382 }, { 195,4382 }, + { 196,4382 }, { 197,4382 }, { 198,4382 }, { 199,4382 }, { 200,4382 }, + { 201,4382 }, { 202,4382 }, { 203,4382 }, { 204,4382 }, { 205,4382 }, + { 206,4382 }, { 207,4382 }, { 208,4382 }, { 209,4382 }, { 210,4382 }, + { 211,4382 }, { 212,4382 }, { 213,4382 }, { 214,4382 }, { 215,4382 }, + { 216,4382 }, { 217,4382 }, { 218,4382 }, { 219,4382 }, { 220,4382 }, + { 221,4382 }, { 222,4382 }, { 223,4382 }, { 224,4382 }, { 225,4382 }, + { 226,4382 }, { 227,4382 }, { 228,4382 }, { 229,4382 }, { 230,4382 }, + { 231,4382 }, { 232,4382 }, { 233,4382 }, { 234,4382 }, { 235,4382 }, + + { 236,4382 }, { 237,4382 }, { 238,4382 }, { 239,4382 }, { 240,4382 }, + { 241,4382 }, { 242,4382 }, { 243,4382 }, { 244,4382 }, { 245,4382 }, + { 246,4382 }, { 247,4382 }, { 248,4382 }, { 249,4382 }, { 250,4382 }, + { 251,4382 }, { 252,4382 }, { 253,4382 }, { 254,4382 }, { 255,4382 }, + { 256,4382 }, { 0, 38 }, { 0,9776 }, { 0, 1 }, { 0,9774 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 9, 0 }, { 10, 0 }, + { 0, 0 }, { 12, 0 }, { 13, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 0 }, - { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, - { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, { 33,3871 }, - { 0, 0 }, { 35,3871 }, { 0, 0 }, { 37,3871 }, { 38,3871 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 42,3871 }, { 43,3871 }, - { 69, 113 }, { 45,3871 }, { 0, 0 }, { 47,3871 }, { 46,-5589 }, - { 0, 0 }, { 48,3871 }, { 49,3871 }, { 50,3871 }, { 51,3871 }, - { 52,3871 }, { 53,3871 }, { 54,3871 }, { 55,3871 }, { 56,3871 }, - { 57,3871 }, { 60,3871 }, { 61,3871 }, { 62,3871 }, { 63,3871 }, - { 64,3871 }, { 0, 57 }, { 0,5176 }, { 0, 0 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 69, 86 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 101, 113 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 61 }, { 0,5154 }, + { 0, 0 }, { 32, 0 }, { 0, 0 }, { 36,-5116 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 94,3871 }, { 0, 0 }, { 96,3871 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 101, 86 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 46, -64 }, { 0, 0 }, - { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, - - { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, - { 124,3871 }, { 0, 0 }, { 126,3871 }, { 0, 50 }, { 0,5114 }, - { 0, 0 }, { 0, 0 }, { 43,3807 }, { 0, 0 }, { 45,3807 }, - { 0, 0 }, { 69, 22 }, { 48,3849 }, { 49,3849 }, { 50,3849 }, - { 51,3849 }, { 52,3849 }, { 53,3849 }, { 54,3849 }, { 55,3849 }, - { 56,3849 }, { 57,3849 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 33,-759 }, { 0, 0 }, { 35,-759 }, - { 0, 0 }, { 37,-759 }, { 38,-759 }, { 101, 22 }, { 0, 52 }, - - { 0,5073 }, { 42,-759 }, { 43,-759 }, { 0, 0 }, { 45,-759 }, - { 0, 0 }, { 47,-759 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 60,-759 }, - { 61,-759 }, { 62,-759 }, { 63,-759 }, { 64,-759 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 33,-800 }, { 0, 0 }, - { 35,-800 }, { 0, 0 }, { 37,-800 }, { 38,-800 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 42,-800 }, { 43,-800 }, { 0, 0 }, - { 45,-800 }, { 0, 0 }, { 47,-800 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 65,4382 }, { 66,4382 }, { 67,4382 }, + { 68,4382 }, { 69,4382 }, { 70,4382 }, { 71,4382 }, { 72,4382 }, + { 73,4382 }, { 74,4382 }, { 75,4382 }, { 76,4382 }, { 77,4382 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94,-759 }, { 0, 0 }, - { 96,-759 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 60,-800 }, { 61,-800 }, { 62,-800 }, { 63,-800 }, { 64,-800 }, - { 0, 0 }, { 0, 49 }, { 0,5006 }, { 0, 0 }, { 0, 0 }, + { 78,4382 }, { 79,4382 }, { 80,4382 }, { 81,4382 }, { 82,4382 }, + { 83,4382 }, { 84,4382 }, { 85,4382 }, { 86,4382 }, { 87,4382 }, + { 88,4382 }, { 89,4382 }, { 90,4382 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 95,4382 }, { 0, 0 }, { 97,4382 }, + { 98,4382 }, { 99,4382 }, { 100,4382 }, { 101,4382 }, { 102,4382 }, + { 103,4382 }, { 104,4382 }, { 105,4382 }, { 106,4382 }, { 107,4382 }, + { 108,4382 }, { 109,4382 }, { 110,4382 }, { 111,4382 }, { 112,4382 }, + { 113,4382 }, { 114,4382 }, { 115,4382 }, { 116,4382 }, { 117,4382 }, + { 118,4382 }, { 119,4382 }, { 120,4382 }, { 121,4382 }, { 122,4382 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 51 }, { 0,4995 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 124,-759 }, { 0, 0 }, - { 126,-759 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94,-800 }, - { 0, 0 }, { 96,-800 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 33,-867 }, { 0, 0 }, { 35,-867 }, { 0, 0 }, { 37,-867 }, - { 38,-867 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 42,-867 }, - { 43,-867 }, { 33,-878 }, { 45,-867 }, { 35,-878 }, { 47,-867 }, - { 37,-878 }, { 38,-878 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 42,-878 }, { 43,-878 }, { 0, 0 }, { 45,-878 }, { 124,-800 }, - { 47,-878 }, { 126,-800 }, { 60,-867 }, { 61,-867 }, { 62,-867 }, - { 63,-867 }, { 64,-867 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 60,-878 }, { 61,-878 }, - { 62,-878 }, { 63,-878 }, { 64,-878 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 128,4382 }, { 129,4382 }, { 130,4382 }, { 131,4382 }, { 132,4382 }, + { 133,4382 }, { 134,4382 }, { 135,4382 }, { 136,4382 }, { 137,4382 }, + { 138,4382 }, { 139,4382 }, { 140,4382 }, { 141,4382 }, { 142,4382 }, + { 143,4382 }, { 144,4382 }, { 145,4382 }, { 146,4382 }, { 147,4382 }, + { 148,4382 }, { 149,4382 }, { 150,4382 }, { 151,4382 }, { 152,4382 }, + { 153,4382 }, { 154,4382 }, { 155,4382 }, { 156,4382 }, { 157,4382 }, + { 158,4382 }, { 159,4382 }, { 160,4382 }, { 161,4382 }, { 162,4382 }, + { 163,4382 }, { 164,4382 }, { 165,4382 }, { 166,4382 }, { 167,4382 }, + { 168,4382 }, { 169,4382 }, { 170,4382 }, { 171,4382 }, { 172,4382 }, + { 173,4382 }, { 174,4382 }, { 175,4382 }, { 176,4382 }, { 177,4382 }, + { 178,4382 }, { 179,4382 }, { 180,4382 }, { 181,4382 }, { 182,4382 }, + { 183,4382 }, { 184,4382 }, { 185,4382 }, { 186,4382 }, { 187,4382 }, + { 188,4382 }, { 189,4382 }, { 190,4382 }, { 191,4382 }, { 192,4382 }, + { 193,4382 }, { 194,4382 }, { 195,4382 }, { 196,4382 }, { 197,4382 }, + { 198,4382 }, { 199,4382 }, { 200,4382 }, { 201,4382 }, { 202,4382 }, + { 203,4382 }, { 204,4382 }, { 205,4382 }, { 206,4382 }, { 207,4382 }, + { 208,4382 }, { 209,4382 }, { 210,4382 }, { 211,4382 }, { 212,4382 }, + { 213,4382 }, { 214,4382 }, { 215,4382 }, { 216,4382 }, { 217,4382 }, + { 218,4382 }, { 219,4382 }, { 220,4382 }, { 221,4382 }, { 222,4382 }, + { 223,4382 }, { 224,4382 }, { 225,4382 }, { 226,4382 }, { 227,4382 }, + + { 228,4382 }, { 229,4382 }, { 230,4382 }, { 231,4382 }, { 232,4382 }, + { 233,4382 }, { 234,4382 }, { 235,4382 }, { 236,4382 }, { 237,4382 }, + { 238,4382 }, { 239,4382 }, { 240,4382 }, { 241,4382 }, { 242,4382 }, + { 243,4382 }, { 244,4382 }, { 245,4382 }, { 246,4382 }, { 247,4382 }, + { 248,4382 }, { 249,4382 }, { 250,4382 }, { 251,4382 }, { 252,4382 }, + { 253,4382 }, { 254,4382 }, { 255,4382 }, { 0, 55 }, { 0,9519 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 63 }, { 0,4915 }, { 0, 0 }, - { 0, 0 }, { 94,-867 }, { 0, 0 }, { 96,-867 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 53 }, + { 0,9508 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 94,-878 }, { 0, 0 }, { 96,-878 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 56 }, { 0,9491 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 33, 0 }, { 0, 0 }, { 35, 0 }, + { 0, 0 }, { 37, 0 }, { 38, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 42, 0 }, { 43, 0 }, { 33, -11 }, { 45, 0 }, + { 35, -11 }, { 47, 0 }, { 37, -11 }, { 38, -11 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 42, -11 }, { 43, -11 }, { 0, 0 }, + { 45, -11 }, { 0, 0 }, { 47, -11 }, { 0, 0 }, { 60, 0 }, + { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 60, -11 }, { 61, -11 }, { 62, -11 }, { 63, -11 }, { 64, -11 }, + { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, + { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 34 }, + { 0,9428 }, { 0, 0 }, { 0, 0 }, { 94, 0 }, { 0, 0 }, + { 96, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94, -11 }, + { 0, 0 }, { 96, -11 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 124,-867 }, { 0, 0 }, { 126,-867 }, { 36, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 124,-878 }, { 0, 0 }, { 126,-878 }, - { 0, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, - { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, - { 57, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 0 }, { 66, 0 }, - { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, { 71, 0 }, - { 72, 0 }, { 73, 0 }, { 74, 0 }, { 75, 0 }, { 76, 0 }, - { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, - { 82, 0 }, { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, - { 87, 0 }, { 88, 0 }, { 89, 0 }, { 90, 0 }, { 0, 0 }, - - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95, 0 }, { 0, 0 }, - { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, - { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, - { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, - { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, - { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, { 121, 0 }, - { 122, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, - { 132, 0 }, { 133, 0 }, { 134, 0 }, { 135, 0 }, { 136, 0 }, - { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, - - { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, - { 147, 0 }, { 148, 0 }, { 149, 0 }, { 150, 0 }, { 151, 0 }, - { 152, 0 }, { 153, 0 }, { 154, 0 }, { 155, 0 }, { 156, 0 }, - { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, - { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, - { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, { 171, 0 }, - { 172, 0 }, { 173, 0 }, { 174, 0 }, { 175, 0 }, { 176, 0 }, - { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, - { 182, 0 }, { 183, 0 }, { 184, 0 }, { 185, 0 }, { 186, 0 }, - { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, - - { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, - { 197, 0 }, { 198, 0 }, { 199, 0 }, { 200, 0 }, { 201, 0 }, - { 202, 0 }, { 203, 0 }, { 204, 0 }, { 205, 0 }, { 206, 0 }, - { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, - { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, - { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, { 221, 0 }, - { 222, 0 }, { 223, 0 }, { 224, 0 }, { 225, 0 }, { 226, 0 }, - { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, - { 232, 0 }, { 233, 0 }, { 234, 0 }, { 235, 0 }, { 236, 0 }, - { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, - - { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, - { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, - { 252, 0 }, { 253, 0 }, { 254, 0 }, { 255, 0 }, { 0, 11 }, - { 0,4658 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, - { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, { 9, 0 }, - { 10, 0 }, { 11, 0 }, { 12, 0 }, { 13, 0 }, { 14, 0 }, - { 15, 0 }, { 16, 0 }, { 17, 0 }, { 18, 0 }, { 19, 0 }, - { 20, 0 }, { 21, 0 }, { 22, 0 }, { 23, 0 }, { 24, 0 }, - { 25, 0 }, { 26, 0 }, { 27, 0 }, { 28, 0 }, { 29, 0 }, - { 30, 0 }, { 31, 0 }, { 32, 0 }, { 33, 0 }, { 34, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 124, 0 }, { 0, 0 }, + { 126, 0 }, { 36,-5802 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 124, -11 }, + { 0, 0 }, { 126, -11 }, { 0, 0 }, { 48,4373 }, { 49,4373 }, + { 50,4373 }, { 51,4373 }, { 52,4373 }, { 53,4373 }, { 54,4373 }, + { 55,4373 }, { 56,4373 }, { 57,4373 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 65,4373 }, { 66,4373 }, { 67,4373 }, { 68,4373 }, { 69,4373 }, + { 70,4373 }, { 71,4373 }, { 72,4373 }, { 73,4373 }, { 74,4373 }, + { 75,4373 }, { 76,4373 }, { 77,4373 }, { 78,4373 }, { 79,4373 }, + + { 80,4373 }, { 81,4373 }, { 82,4373 }, { 83,4373 }, { 84,4373 }, + { 85,4373 }, { 86,4373 }, { 87,4373 }, { 88,4373 }, { 89,4373 }, + { 90,4373 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 95,4373 }, { 0, 0 }, { 97,4373 }, { 98,4373 }, { 99,4373 }, + { 100,4373 }, { 101,4373 }, { 102,4373 }, { 103,4373 }, { 104,4373 }, + { 105,4373 }, { 106,4373 }, { 107,4373 }, { 108,4373 }, { 109,4373 }, + { 110,4373 }, { 111,4373 }, { 112,4373 }, { 113,4373 }, { 114,4373 }, + { 115,4373 }, { 116,4373 }, { 117,4373 }, { 118,4373 }, { 119,4373 }, + { 120,4373 }, { 121,4373 }, { 122,4373 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,4373 }, { 129,4373 }, + + { 130,4373 }, { 131,4373 }, { 132,4373 }, { 133,4373 }, { 134,4373 }, + { 135,4373 }, { 136,4373 }, { 137,4373 }, { 138,4373 }, { 139,4373 }, + { 140,4373 }, { 141,4373 }, { 142,4373 }, { 143,4373 }, { 144,4373 }, + { 145,4373 }, { 146,4373 }, { 147,4373 }, { 148,4373 }, { 149,4373 }, + { 150,4373 }, { 151,4373 }, { 152,4373 }, { 153,4373 }, { 154,4373 }, + { 155,4373 }, { 156,4373 }, { 157,4373 }, { 158,4373 }, { 159,4373 }, + { 160,4373 }, { 161,4373 }, { 162,4373 }, { 163,4373 }, { 164,4373 }, + { 165,4373 }, { 166,4373 }, { 167,4373 }, { 168,4373 }, { 169,4373 }, + { 170,4373 }, { 171,4373 }, { 172,4373 }, { 173,4373 }, { 174,4373 }, + { 175,4373 }, { 176,4373 }, { 177,4373 }, { 178,4373 }, { 179,4373 }, + + { 180,4373 }, { 181,4373 }, { 182,4373 }, { 183,4373 }, { 184,4373 }, + { 185,4373 }, { 186,4373 }, { 187,4373 }, { 188,4373 }, { 189,4373 }, + { 190,4373 }, { 191,4373 }, { 192,4373 }, { 193,4373 }, { 194,4373 }, + { 195,4373 }, { 196,4373 }, { 197,4373 }, { 198,4373 }, { 199,4373 }, + { 200,4373 }, { 201,4373 }, { 202,4373 }, { 203,4373 }, { 204,4373 }, + { 205,4373 }, { 206,4373 }, { 207,4373 }, { 208,4373 }, { 209,4373 }, + { 210,4373 }, { 211,4373 }, { 212,4373 }, { 213,4373 }, { 214,4373 }, + { 215,4373 }, { 216,4373 }, { 217,4373 }, { 218,4373 }, { 219,4373 }, + { 220,4373 }, { 221,4373 }, { 222,4373 }, { 223,4373 }, { 224,4373 }, + { 225,4373 }, { 226,4373 }, { 227,4373 }, { 228,4373 }, { 229,4373 }, + + { 230,4373 }, { 231,4373 }, { 232,4373 }, { 233,4373 }, { 234,4373 }, + { 235,4373 }, { 236,4373 }, { 237,4373 }, { 238,4373 }, { 239,4373 }, + { 240,4373 }, { 241,4373 }, { 242,4373 }, { 243,4373 }, { 244,4373 }, + { 245,4373 }, { 246,4373 }, { 247,4373 }, { 248,4373 }, { 249,4373 }, + { 250,4373 }, { 251,4373 }, { 252,4373 }, { 253,4373 }, { 254,4373 }, + { 255,4373 }, { 0, 2 }, { 0,9171 }, { 1,4373 }, { 2,4373 }, + { 3,4373 }, { 4,4373 }, { 5,4373 }, { 6,4373 }, { 7,4373 }, + { 8,4373 }, { 9,4373 }, { 0, 0 }, { 11,4373 }, { 12,4373 }, + { 0, 0 }, { 14,4373 }, { 15,4373 }, { 16,4373 }, { 17,4373 }, + { 18,4373 }, { 19,4373 }, { 20,4373 }, { 21,4373 }, { 22,4373 }, + + { 23,4373 }, { 24,4373 }, { 25,4373 }, { 26,4373 }, { 27,4373 }, + { 28,4373 }, { 29,4373 }, { 30,4373 }, { 31,4373 }, { 32,4373 }, + { 33,4631 }, { 34,4373 }, { 35,4631 }, { 36,4373 }, { 37,4631 }, + { 38,4631 }, { 39,4373 }, { 40,4373 }, { 41,4373 }, { 42,4631 }, + { 43,4631 }, { 44,4373 }, { 45,4631 }, { 46,4373 }, { 47,4631 }, + { 48,4373 }, { 49,4373 }, { 50,4373 }, { 51,4373 }, { 52,4373 }, + { 53,4373 }, { 54,4373 }, { 55,4373 }, { 56,4373 }, { 57,4373 }, + { 58,4373 }, { 59,4373 }, { 60,4631 }, { 61,4631 }, { 62,4631 }, + { 63,4631 }, { 64,4631 }, { 65,4373 }, { 66,4373 }, { 67,4373 }, + { 68,4373 }, { 69,4373 }, { 70,4373 }, { 71,4373 }, { 72,4373 }, + + { 73,4373 }, { 74,4373 }, { 75,4373 }, { 76,4373 }, { 77,4373 }, + { 78,4373 }, { 79,4373 }, { 80,4373 }, { 81,4373 }, { 82,4373 }, + { 83,4373 }, { 84,4373 }, { 85,4373 }, { 86,4373 }, { 87,4373 }, + { 88,4373 }, { 89,4373 }, { 90,4373 }, { 91,4373 }, { 92,4373 }, + { 93,4373 }, { 94,4631 }, { 95,4373 }, { 96,4631 }, { 97,4373 }, + { 98,4373 }, { 99,4373 }, { 100,4373 }, { 101,4373 }, { 102,4373 }, + { 103,4373 }, { 104,4373 }, { 105,4373 }, { 106,4373 }, { 107,4373 }, + { 108,4373 }, { 109,4373 }, { 110,4373 }, { 111,4373 }, { 112,4373 }, + { 113,4373 }, { 114,4373 }, { 115,4373 }, { 116,4373 }, { 117,4373 }, + { 118,4373 }, { 119,4373 }, { 120,4373 }, { 121,4373 }, { 122,4373 }, + + { 123,4373 }, { 124,4631 }, { 125,4373 }, { 126,4631 }, { 127,4373 }, + { 128,4373 }, { 129,4373 }, { 130,4373 }, { 131,4373 }, { 132,4373 }, + { 133,4373 }, { 134,4373 }, { 135,4373 }, { 136,4373 }, { 137,4373 }, + { 138,4373 }, { 139,4373 }, { 140,4373 }, { 141,4373 }, { 142,4373 }, + { 143,4373 }, { 144,4373 }, { 145,4373 }, { 146,4373 }, { 147,4373 }, + { 148,4373 }, { 149,4373 }, { 150,4373 }, { 151,4373 }, { 152,4373 }, + { 153,4373 }, { 154,4373 }, { 155,4373 }, { 156,4373 }, { 157,4373 }, + { 158,4373 }, { 159,4373 }, { 160,4373 }, { 161,4373 }, { 162,4373 }, + { 163,4373 }, { 164,4373 }, { 165,4373 }, { 166,4373 }, { 167,4373 }, + { 168,4373 }, { 169,4373 }, { 170,4373 }, { 171,4373 }, { 172,4373 }, + + { 173,4373 }, { 174,4373 }, { 175,4373 }, { 176,4373 }, { 177,4373 }, + { 178,4373 }, { 179,4373 }, { 180,4373 }, { 181,4373 }, { 182,4373 }, + { 183,4373 }, { 184,4373 }, { 185,4373 }, { 186,4373 }, { 187,4373 }, + { 188,4373 }, { 189,4373 }, { 190,4373 }, { 191,4373 }, { 192,4373 }, + { 193,4373 }, { 194,4373 }, { 195,4373 }, { 196,4373 }, { 197,4373 }, + { 198,4373 }, { 199,4373 }, { 200,4373 }, { 201,4373 }, { 202,4373 }, + { 203,4373 }, { 204,4373 }, { 205,4373 }, { 206,4373 }, { 207,4373 }, + { 208,4373 }, { 209,4373 }, { 210,4373 }, { 211,4373 }, { 212,4373 }, + { 213,4373 }, { 214,4373 }, { 215,4373 }, { 216,4373 }, { 217,4373 }, + { 218,4373 }, { 219,4373 }, { 220,4373 }, { 221,4373 }, { 222,4373 }, + + { 223,4373 }, { 224,4373 }, { 225,4373 }, { 226,4373 }, { 227,4373 }, + { 228,4373 }, { 229,4373 }, { 230,4373 }, { 231,4373 }, { 232,4373 }, + { 233,4373 }, { 234,4373 }, { 235,4373 }, { 236,4373 }, { 237,4373 }, + { 238,4373 }, { 239,4373 }, { 240,4373 }, { 241,4373 }, { 242,4373 }, + { 243,4373 }, { 244,4373 }, { 245,4373 }, { 246,4373 }, { 247,4373 }, + { 248,4373 }, { 249,4373 }, { 250,4373 }, { 251,4373 }, { 252,4373 }, + { 253,4373 }, { 254,4373 }, { 255,4373 }, { 256,4373 }, { 0, 64 }, + { 0,8913 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,4631 }, { 49,4631 }, + { 50,4631 }, { 51,4631 }, { 52,4631 }, { 53,4631 }, { 54,4631 }, + { 55,4631 }, { 56,4631 }, { 57,4631 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 65,-5977 }, { 66,-5977 }, { 67,-5977 }, { 68,-5977 }, { 69,4888 }, + { 70,-5977 }, { 71,-5977 }, { 72,-5977 }, { 73,-5977 }, { 74,-5977 }, + { 75,-5977 }, { 76,-5977 }, { 77,-5977 }, { 78,-5977 }, { 79,-5977 }, + { 80,-5977 }, { 81,-5977 }, { 82,-5977 }, { 83,-5977 }, { 84,-5977 }, + { 85,-5977 }, { 86,-5977 }, { 87,-5977 }, { 88,-5977 }, { 89,-5977 }, + { 90,-5977 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 95,4898 }, { 0, 0 }, { 97,-5977 }, { 98,-5977 }, { 99,-5977 }, + { 100,-5977 }, { 101,4888 }, { 102,-5977 }, { 103,-5977 }, { 104,-5977 }, + { 105,-5977 }, { 106,-5977 }, { 107,-5977 }, { 108,-5977 }, { 109,-5977 }, + { 110,-5977 }, { 111,-5977 }, { 112,-5977 }, { 113,-5977 }, { 114,-5977 }, + + { 115,-5977 }, { 116,-5977 }, { 117,-5977 }, { 118,-5977 }, { 119,-5977 }, + { 120,-5977 }, { 121,-5977 }, { 122,-5977 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,-5977 }, { 129,-5977 }, + { 130,-5977 }, { 131,-5977 }, { 132,-5977 }, { 133,-5977 }, { 134,-5977 }, + { 135,-5977 }, { 136,-5977 }, { 137,-5977 }, { 138,-5977 }, { 139,-5977 }, + { 140,-5977 }, { 141,-5977 }, { 142,-5977 }, { 143,-5977 }, { 144,-5977 }, + { 145,-5977 }, { 146,-5977 }, { 147,-5977 }, { 148,-5977 }, { 149,-5977 }, + { 150,-5977 }, { 151,-5977 }, { 152,-5977 }, { 153,-5977 }, { 154,-5977 }, + { 155,-5977 }, { 156,-5977 }, { 157,-5977 }, { 158,-5977 }, { 159,-5977 }, + { 160,-5977 }, { 161,-5977 }, { 162,-5977 }, { 163,-5977 }, { 164,-5977 }, + + { 165,-5977 }, { 166,-5977 }, { 167,-5977 }, { 168,-5977 }, { 169,-5977 }, + { 170,-5977 }, { 171,-5977 }, { 172,-5977 }, { 173,-5977 }, { 174,-5977 }, + { 175,-5977 }, { 176,-5977 }, { 177,-5977 }, { 178,-5977 }, { 179,-5977 }, + { 180,-5977 }, { 181,-5977 }, { 182,-5977 }, { 183,-5977 }, { 184,-5977 }, + { 185,-5977 }, { 186,-5977 }, { 187,-5977 }, { 188,-5977 }, { 189,-5977 }, + { 190,-5977 }, { 191,-5977 }, { 192,-5977 }, { 193,-5977 }, { 194,-5977 }, + { 195,-5977 }, { 196,-5977 }, { 197,-5977 }, { 198,-5977 }, { 199,-5977 }, + { 200,-5977 }, { 201,-5977 }, { 202,-5977 }, { 203,-5977 }, { 204,-5977 }, + { 205,-5977 }, { 206,-5977 }, { 207,-5977 }, { 208,-5977 }, { 209,-5977 }, + { 210,-5977 }, { 211,-5977 }, { 212,-5977 }, { 213,-5977 }, { 214,-5977 }, + + { 215,-5977 }, { 216,-5977 }, { 217,-5977 }, { 218,-5977 }, { 219,-5977 }, + { 220,-5977 }, { 221,-5977 }, { 222,-5977 }, { 223,-5977 }, { 224,-5977 }, + { 225,-5977 }, { 226,-5977 }, { 227,-5977 }, { 228,-5977 }, { 229,-5977 }, + { 230,-5977 }, { 231,-5977 }, { 232,-5977 }, { 233,-5977 }, { 234,-5977 }, + { 235,-5977 }, { 236,-5977 }, { 237,-5977 }, { 238,-5977 }, { 239,-5977 }, + { 240,-5977 }, { 241,-5977 }, { 242,-5977 }, { 243,-5977 }, { 244,-5977 }, + { 245,-5977 }, { 246,-5977 }, { 247,-5977 }, { 248,-5977 }, { 249,-5977 }, + { 250,-5977 }, { 251,-5977 }, { 252,-5977 }, { 253,-5977 }, { 254,-5977 }, + { 255,-5977 }, { 0, 3 }, { 0,8656 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 64 }, { 0,8624 }, + { 33,4666 }, { 0, 0 }, { 35,4666 }, { 0, 0 }, { 37,4666 }, + { 38,4666 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 42,4666 }, + { 43,4666 }, { 0, 0 }, { 45,4666 }, { 0, 0 }, { 47,4666 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 35, 0 }, { 36, 0 }, { 37, 0 }, { 38, 0 }, { 0, 0 }, - { 40, 0 }, { 41, 0 }, { 42, 0 }, { 43, 0 }, { 44, 0 }, - { 45, 0 }, { 46, 0 }, { 47, 0 }, { 48, 0 }, { 49, 0 }, - { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, - { 55, 0 }, { 56, 0 }, { 57, 0 }, { 58, 0 }, { 59, 0 }, - { 60, 0 }, { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, - { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, { 69, 0 }, - { 70, 0 }, { 71, 0 }, { 72, 0 }, { 73, 0 }, { 74, 0 }, - { 75, 0 }, { 76, 0 }, { 77, 0 }, { 78, 0 }, { 79, 0 }, - { 80, 0 }, { 81, 0 }, { 82, 0 }, { 83, 0 }, { 84, 0 }, + { 0, 0 }, { 0, 0 }, { 60,4666 }, { 61,4666 }, { 62,4666 }, + { 63,4666 }, { 64,4666 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 46,-6264 }, { 0, 0 }, { 48,4700 }, { 49,4700 }, { 50,4700 }, + { 51,4700 }, { 52,4700 }, { 53,4700 }, { 54,4700 }, { 55,4700 }, + { 56,4700 }, { 57,4700 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 94,4666 }, { 0, 0 }, { 96,4666 }, { 65,-6266 }, + { 66,-6266 }, { 67,-6266 }, { 68,-6266 }, { 69,4599 }, { 70,-6266 }, + { 71,-6266 }, { 72,-6266 }, { 73,-6266 }, { 74,-6266 }, { 75,-6266 }, - { 85, 0 }, { 86, 0 }, { 87, 0 }, { 88, 0 }, { 89, 0 }, - { 90, 0 }, { 91, 0 }, { 92, 0 }, { 93, 0 }, { 94, 0 }, - { 95, 0 }, { 96, 0 }, { 97, 0 }, { 98, 0 }, { 99, 0 }, - { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103, 0 }, { 104, 0 }, - { 105, 0 }, { 106, 0 }, { 107, 0 }, { 108, 0 }, { 109, 0 }, - { 110, 0 }, { 111, 0 }, { 112, 0 }, { 113, 0 }, { 114, 0 }, - { 115, 0 }, { 116, 0 }, { 117, 0 }, { 118, 0 }, { 119, 0 }, - { 120, 0 }, { 121, 0 }, { 122, 0 }, { 123, 0 }, { 124, 0 }, - { 125, 0 }, { 126, 0 }, { 127, 0 }, { 128, 0 }, { 129, 0 }, - { 130, 0 }, { 131, 0 }, { 132, 0 }, { 133, 0 }, { 134, 0 }, + { 76,-6266 }, { 77,-6266 }, { 78,-6266 }, { 79,-6266 }, { 80,-6266 }, + { 81,-6266 }, { 82,-6266 }, { 83,-6266 }, { 84,-6266 }, { 85,-6266 }, + { 86,-6266 }, { 87,-6266 }, { 88,-6266 }, { 89,-6266 }, { 90,-6266 }, + { 0, 0 }, { 124,4666 }, { 0, 0 }, { 126,4666 }, { 95,-6266 }, + { 0, 0 }, { 97,-6266 }, { 98,-6266 }, { 99,-6266 }, { 100,-6266 }, + { 101,4599 }, { 102,-6266 }, { 103,-6266 }, { 104,-6266 }, { 105,-6266 }, + { 106,-6266 }, { 107,-6266 }, { 108,-6266 }, { 109,-6266 }, { 110,-6266 }, + { 111,-6266 }, { 112,-6266 }, { 113,-6266 }, { 114,-6266 }, { 115,-6266 }, + { 116,-6266 }, { 117,-6266 }, { 118,-6266 }, { 119,-6266 }, { 120,-6266 }, + { 121,-6266 }, { 122,-6266 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 135, 0 }, { 136, 0 }, { 137, 0 }, { 138, 0 }, { 139, 0 }, - { 140, 0 }, { 141, 0 }, { 142, 0 }, { 143, 0 }, { 144, 0 }, - { 145, 0 }, { 146, 0 }, { 147, 0 }, { 148, 0 }, { 149, 0 }, - { 150, 0 }, { 151, 0 }, { 152, 0 }, { 153, 0 }, { 154, 0 }, - { 155, 0 }, { 156, 0 }, { 157, 0 }, { 158, 0 }, { 159, 0 }, - { 160, 0 }, { 161, 0 }, { 162, 0 }, { 163, 0 }, { 164, 0 }, - { 165, 0 }, { 166, 0 }, { 167, 0 }, { 168, 0 }, { 169, 0 }, - { 170, 0 }, { 171, 0 }, { 172, 0 }, { 173, 0 }, { 174, 0 }, - { 175, 0 }, { 176, 0 }, { 177, 0 }, { 178, 0 }, { 179, 0 }, - { 180, 0 }, { 181, 0 }, { 182, 0 }, { 183, 0 }, { 184, 0 }, + { 0, 0 }, { 0, 0 }, { 128,-6266 }, { 129,-6266 }, { 130,-6266 }, + { 131,-6266 }, { 132,-6266 }, { 133,-6266 }, { 134,-6266 }, { 135,-6266 }, + { 136,-6266 }, { 137,-6266 }, { 138,-6266 }, { 139,-6266 }, { 140,-6266 }, + { 141,-6266 }, { 142,-6266 }, { 143,-6266 }, { 144,-6266 }, { 145,-6266 }, + { 146,-6266 }, { 147,-6266 }, { 148,-6266 }, { 149,-6266 }, { 150,-6266 }, + { 151,-6266 }, { 152,-6266 }, { 153,-6266 }, { 154,-6266 }, { 155,-6266 }, + { 156,-6266 }, { 157,-6266 }, { 158,-6266 }, { 159,-6266 }, { 160,-6266 }, + { 161,-6266 }, { 162,-6266 }, { 163,-6266 }, { 164,-6266 }, { 165,-6266 }, + { 166,-6266 }, { 167,-6266 }, { 168,-6266 }, { 169,-6266 }, { 170,-6266 }, + { 171,-6266 }, { 172,-6266 }, { 173,-6266 }, { 174,-6266 }, { 175,-6266 }, - { 185, 0 }, { 186, 0 }, { 187, 0 }, { 188, 0 }, { 189, 0 }, - { 190, 0 }, { 191, 0 }, { 192, 0 }, { 193, 0 }, { 194, 0 }, - { 195, 0 }, { 196, 0 }, { 197, 0 }, { 198, 0 }, { 199, 0 }, - { 200, 0 }, { 201, 0 }, { 202, 0 }, { 203, 0 }, { 204, 0 }, - { 205, 0 }, { 206, 0 }, { 207, 0 }, { 208, 0 }, { 209, 0 }, - { 210, 0 }, { 211, 0 }, { 212, 0 }, { 213, 0 }, { 214, 0 }, - { 215, 0 }, { 216, 0 }, { 217, 0 }, { 218, 0 }, { 219, 0 }, - { 220, 0 }, { 221, 0 }, { 222, 0 }, { 223, 0 }, { 224, 0 }, - { 225, 0 }, { 226, 0 }, { 227, 0 }, { 228, 0 }, { 229, 0 }, - { 230, 0 }, { 231, 0 }, { 232, 0 }, { 233, 0 }, { 234, 0 }, + { 176,-6266 }, { 177,-6266 }, { 178,-6266 }, { 179,-6266 }, { 180,-6266 }, + { 181,-6266 }, { 182,-6266 }, { 183,-6266 }, { 184,-6266 }, { 185,-6266 }, + { 186,-6266 }, { 187,-6266 }, { 188,-6266 }, { 189,-6266 }, { 190,-6266 }, + { 191,-6266 }, { 192,-6266 }, { 193,-6266 }, { 194,-6266 }, { 195,-6266 }, + { 196,-6266 }, { 197,-6266 }, { 198,-6266 }, { 199,-6266 }, { 200,-6266 }, + { 201,-6266 }, { 202,-6266 }, { 203,-6266 }, { 204,-6266 }, { 205,-6266 }, + { 206,-6266 }, { 207,-6266 }, { 208,-6266 }, { 209,-6266 }, { 210,-6266 }, + { 211,-6266 }, { 212,-6266 }, { 213,-6266 }, { 214,-6266 }, { 215,-6266 }, + { 216,-6266 }, { 217,-6266 }, { 218,-6266 }, { 219,-6266 }, { 220,-6266 }, + { 221,-6266 }, { 222,-6266 }, { 223,-6266 }, { 224,-6266 }, { 225,-6266 }, - { 235, 0 }, { 236, 0 }, { 237, 0 }, { 238, 0 }, { 239, 0 }, - { 240, 0 }, { 241, 0 }, { 242, 0 }, { 243, 0 }, { 244, 0 }, - { 245, 0 }, { 246, 0 }, { 247, 0 }, { 248, 0 }, { 249, 0 }, - { 250, 0 }, { 251, 0 }, { 252, 0 }, { 253, 0 }, { 254, 0 }, - { 255, 0 }, { 256, 0 }, { 0, 6 }, { 0,4400 }, { 1, 0 }, - { 2, 0 }, { 3, 0 }, { 4, 0 }, { 5, 0 }, { 6, 0 }, - { 7, 0 }, { 8, 0 }, { 9, 0 }, { 10, 0 }, { 11, 0 }, - { 12, 0 }, { 13, 0 }, { 14, 0 }, { 15, 0 }, { 16, 0 }, - { 17, 0 }, { 18, 0 }, { 19, 0 }, { 20, 0 }, { 21, 0 }, - { 22, 0 }, { 23, 0 }, { 24, 0 }, { 25, 0 }, { 26, 0 }, + { 226,-6266 }, { 227,-6266 }, { 228,-6266 }, { 229,-6266 }, { 230,-6266 }, + { 231,-6266 }, { 232,-6266 }, { 233,-6266 }, { 234,-6266 }, { 235,-6266 }, + { 236,-6266 }, { 237,-6266 }, { 238,-6266 }, { 239,-6266 }, { 240,-6266 }, + { 241,-6266 }, { 242,-6266 }, { 243,-6266 }, { 244,-6266 }, { 245,-6266 }, + { 246,-6266 }, { 247,-6266 }, { 248,-6266 }, { 249,-6266 }, { 250,-6266 }, + { 251,-6266 }, { 252,-6266 }, { 253,-6266 }, { 254,-6266 }, { 255,-6266 }, + { 0, 57 }, { 0,8367 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 27, 0 }, { 28, 0 }, { 29, 0 }, { 30, 0 }, { 31, 0 }, - { 32, 0 }, { 33, 0 }, { 34, 0 }, { 35, 0 }, { 36, 0 }, - { 37, 0 }, { 38, 0 }, { 39, 0 }, { 40, 0 }, { 41, 0 }, - { 0, 0 }, { 43, 0 }, { 44, 0 }, { 45, 0 }, { 46, 0 }, - { 0, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, - { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, - { 57, 0 }, { 58, 0 }, { 59, 0 }, { 60, 0 }, { 61, 0 }, - { 62, 0 }, { 63, 0 }, { 64, 0 }, { 65, 0 }, { 66, 0 }, - { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, { 71, 0 }, - { 72, 0 }, { 73, 0 }, { 74, 0 }, { 75, 0 }, { 76, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 46,-257 }, { 0, 0 }, { 48, 0 }, + { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, + { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 65,-6859 }, { 66,-6859 }, { 67,-6859 }, { 68,-6859 }, + + { 69, 257 }, { 70,-6859 }, { 71,-6859 }, { 72,-6859 }, { 73,-6859 }, + { 74,-6859 }, { 75,-6859 }, { 76,-6859 }, { 77,-6859 }, { 78,-6859 }, + { 79,-6859 }, { 80,-6859 }, { 81,-6859 }, { 82,-6859 }, { 83,-6859 }, + { 84,-6859 }, { 85,-6859 }, { 86,-6859 }, { 87,-6859 }, { 88,-6859 }, + { 89,-6859 }, { 90,-6859 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 95, 298 }, { 0, 0 }, { 97,-6859 }, { 98,-6859 }, + { 99,-6859 }, { 100,-6859 }, { 101, 257 }, { 102,-6859 }, { 103,-6859 }, + { 104,-6859 }, { 105,-6859 }, { 106,-6859 }, { 107,-6859 }, { 108,-6859 }, + { 109,-6859 }, { 110,-6859 }, { 111,-6859 }, { 112,-6859 }, { 113,-6859 }, + { 114,-6859 }, { 115,-6859 }, { 116,-6859 }, { 117,-6859 }, { 118,-6859 }, - { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, - { 82, 0 }, { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, - { 87, 0 }, { 88, 0 }, { 89, 0 }, { 90, 0 }, { 91, 0 }, - { 92, 0 }, { 93, 0 }, { 94, 0 }, { 95, 0 }, { 96, 0 }, - { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, - { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, - { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, - { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, - { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, { 121, 0 }, - { 122, 0 }, { 123, 0 }, { 124, 0 }, { 125, 0 }, { 126, 0 }, + { 119,-6859 }, { 120,-6859 }, { 121,-6859 }, { 122,-6859 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,-6859 }, + { 129,-6859 }, { 130,-6859 }, { 131,-6859 }, { 132,-6859 }, { 133,-6859 }, + { 134,-6859 }, { 135,-6859 }, { 136,-6859 }, { 137,-6859 }, { 138,-6859 }, + { 139,-6859 }, { 140,-6859 }, { 141,-6859 }, { 142,-6859 }, { 143,-6859 }, + { 144,-6859 }, { 145,-6859 }, { 146,-6859 }, { 147,-6859 }, { 148,-6859 }, + { 149,-6859 }, { 150,-6859 }, { 151,-6859 }, { 152,-6859 }, { 153,-6859 }, + { 154,-6859 }, { 155,-6859 }, { 156,-6859 }, { 157,-6859 }, { 158,-6859 }, + { 159,-6859 }, { 160,-6859 }, { 161,-6859 }, { 162,-6859 }, { 163,-6859 }, + { 164,-6859 }, { 165,-6859 }, { 166,-6859 }, { 167,-6859 }, { 168,-6859 }, - { 127, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, - { 132, 0 }, { 133, 0 }, { 134, 0 }, { 135, 0 }, { 136, 0 }, - { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, - { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, - { 147, 0 }, { 148, 0 }, { 149, 0 }, { 150, 0 }, { 151, 0 }, - { 152, 0 }, { 153, 0 }, { 154, 0 }, { 155, 0 }, { 156, 0 }, - { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, - { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, - { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, { 171, 0 }, - { 172, 0 }, { 173, 0 }, { 174, 0 }, { 175, 0 }, { 176, 0 }, + { 169,-6859 }, { 170,-6859 }, { 171,-6859 }, { 172,-6859 }, { 173,-6859 }, + { 174,-6859 }, { 175,-6859 }, { 176,-6859 }, { 177,-6859 }, { 178,-6859 }, + { 179,-6859 }, { 180,-6859 }, { 181,-6859 }, { 182,-6859 }, { 183,-6859 }, + { 184,-6859 }, { 185,-6859 }, { 186,-6859 }, { 187,-6859 }, { 188,-6859 }, + { 189,-6859 }, { 190,-6859 }, { 191,-6859 }, { 192,-6859 }, { 193,-6859 }, + { 194,-6859 }, { 195,-6859 }, { 196,-6859 }, { 197,-6859 }, { 198,-6859 }, + { 199,-6859 }, { 200,-6859 }, { 201,-6859 }, { 202,-6859 }, { 203,-6859 }, + { 204,-6859 }, { 205,-6859 }, { 206,-6859 }, { 207,-6859 }, { 208,-6859 }, + { 209,-6859 }, { 210,-6859 }, { 211,-6859 }, { 212,-6859 }, { 213,-6859 }, + { 214,-6859 }, { 215,-6859 }, { 216,-6859 }, { 217,-6859 }, { 218,-6859 }, - { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, - { 182, 0 }, { 183, 0 }, { 184, 0 }, { 185, 0 }, { 186, 0 }, - { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, - { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, - { 197, 0 }, { 198, 0 }, { 199, 0 }, { 200, 0 }, { 201, 0 }, - { 202, 0 }, { 203, 0 }, { 204, 0 }, { 205, 0 }, { 206, 0 }, - { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, - { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, - { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, { 221, 0 }, - { 222, 0 }, { 223, 0 }, { 224, 0 }, { 225, 0 }, { 226, 0 }, + { 219,-6859 }, { 220,-6859 }, { 221,-6859 }, { 222,-6859 }, { 223,-6859 }, + { 224,-6859 }, { 225,-6859 }, { 226,-6859 }, { 227,-6859 }, { 228,-6859 }, + { 229,-6859 }, { 230,-6859 }, { 231,-6859 }, { 232,-6859 }, { 233,-6859 }, + { 234,-6859 }, { 235,-6859 }, { 236,-6859 }, { 237,-6859 }, { 238,-6859 }, + { 239,-6859 }, { 240,-6859 }, { 241,-6859 }, { 242,-6859 }, { 243,-6859 }, + { 244,-6859 }, { 245,-6859 }, { 246,-6859 }, { 247,-6859 }, { 248,-6859 }, + { 249,-6859 }, { 250,-6859 }, { 251,-6859 }, { 252,-6859 }, { 253,-6859 }, + { 254,-6859 }, { 255,-6859 }, { 0, 68 }, { 0,8110 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 62 }, { 0,8100 }, { 0, 0 }, - { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, - { 232, 0 }, { 233, 0 }, { 234, 0 }, { 235, 0 }, { 236, 0 }, - { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, - { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, - { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, - { 252, 0 }, { 253, 0 }, { 254, 0 }, { 255, 0 }, { 256, 0 }, - { 0, 4 }, { 0,4142 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 61 }, { 0,8092 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 68 }, { 0,8069 }, + { 0, 0 }, { 43,4445 }, { 0, 0 }, { 45,4445 }, { 0, 0 }, + { 0, 0 }, { 48,4700 }, { 49,4700 }, { 50,4700 }, { 51,4700 }, + { 52,4700 }, { 53,4700 }, { 54,4700 }, { 55,4700 }, { 56,4700 }, + { 57,4700 }, { 48,4947 }, { 49,4947 }, { 50,4947 }, { 51,4947 }, + + { 52,4947 }, { 53,4947 }, { 54,4947 }, { 55,4947 }, { 48,5196 }, + { 49,5196 }, { 50,5196 }, { 51,5196 }, { 52,5196 }, { 53,5196 }, + { 54,5196 }, { 55,5196 }, { 56,5196 }, { 57,5196 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 33,2863 }, - { 0, 0 }, { 35,2863 }, { 0, 0 }, { 37,2863 }, { 38,2863 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 42,2863 }, { 43,2863 }, - { 0, 0 }, { 45,2863 }, { 0, 0 }, { 47,2863 }, { 0, 0 }, + { 0, 0 }, { 65,5196 }, { 66,5196 }, { 67,5196 }, { 68,5196 }, + { 69,5196 }, { 70,5196 }, { 48,5468 }, { 49,5468 }, { 50,5468 }, + { 51,5468 }, { 52,5468 }, { 53,5468 }, { 54,5468 }, { 55,5468 }, + { 56,5468 }, { 57,5468 }, { 0, 50 }, { 0,8010 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95,4955 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 52 }, { 0,7999 }, + + { 0, 0 }, { 95,5453 }, { 0, 0 }, { 97,5196 }, { 98,5196 }, + { 99,5196 }, { 100,5196 }, { 101,5196 }, { 102,5196 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 60,2863 }, { 61,2863 }, { 62,2863 }, { 63,2863 }, - { 64,2863 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 33,-1509 }, { 0, 0 }, { 35,-1509 }, { 0, 0 }, + { 37,-1509 }, { 38,-1509 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 42,-1509 }, { 43,-1509 }, { 33,-1520 }, { 45,-1509 }, { 35,-1520 }, + { 47,-1509 }, { 37,-1520 }, { 38,-1520 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 42,-1520 }, { 43,-1520 }, { 0, 0 }, { 45,-1520 }, + { 0, 0 }, { 47,-1520 }, { 0, 0 }, { 60,-1509 }, { 61,-1509 }, + { 62,-1509 }, { 63,-1509 }, { 64,-1509 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 60,-1520 }, + { 61,-1520 }, { 62,-1520 }, { 63,-1520 }, { 64,-1520 }, { 0, 0 }, + { 0, 49 }, { 0,7932 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 94,-1509 }, { 0, 0 }, { 96,-1509 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94,-1520 }, { 0, 0 }, + { 96,-1520 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 33,-1587 }, + + { 0, 0 }, { 35,-1587 }, { 0, 0 }, { 37,-1587 }, { 38,-1587 }, + { 0, 51 }, { 0,7892 }, { 0, 0 }, { 42,-1587 }, { 43,-1587 }, + { 0, 0 }, { 45,-1587 }, { 124,-1509 }, { 47,-1587 }, { 126,-1509 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 124,-1520 }, { 0, 0 }, + { 126,-1520 }, { 60,-1587 }, { 61,-1587 }, { 62,-1587 }, { 63,-1587 }, + { 64,-1587 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 33,-1627 }, + { 0, 0 }, { 35,-1627 }, { 0, 0 }, { 37,-1627 }, { 38,-1627 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 42,-1627 }, { 43,-1627 }, + + { 0, 0 }, { 45,-1627 }, { 0, 0 }, { 47,-1627 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 94,-1587 }, { 0, 0 }, { 96,-1587 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 60,-1627 }, { 61,-1627 }, { 62,-1627 }, { 63,-1627 }, + { 64,-1627 }, { 0, 74 }, { 0,7826 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 94,2863 }, { 0, 0 }, { 96,2863 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 124,-1587 }, { 0, 0 }, { 126,-1587 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 94,-1627 }, { 0, 0 }, { 96,-1627 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 36, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, + { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, + { 124,-1627 }, { 0, 0 }, { 126,-1627 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 65, 0 }, { 66, 0 }, { 67, 0 }, + { 68, 0 }, { 69, 0 }, { 70, 0 }, { 71, 0 }, { 72, 0 }, + { 73, 0 }, { 74, 0 }, { 75, 0 }, { 76, 0 }, { 77, 0 }, + { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, { 82, 0 }, + { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, { 87, 0 }, + { 88, 0 }, { 89, 0 }, { 90, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 95, 0 }, { 0, 0 }, { 97, 0 }, + { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, { 102, 0 }, + { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, { 107, 0 }, + { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, { 112, 0 }, + { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, { 117, 0 }, + { 118, 0 }, { 119, 0 }, { 120, 0 }, { 121, 0 }, { 122, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 124,2863 }, { 0, 0 }, { 126,2863 }, { 0, 44 }, { 0,4014 }, + + { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, { 132, 0 }, + { 133, 0 }, { 134, 0 }, { 135, 0 }, { 136, 0 }, { 137, 0 }, + { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, { 142, 0 }, + { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, { 147, 0 }, + { 148, 0 }, { 149, 0 }, { 150, 0 }, { 151, 0 }, { 152, 0 }, + { 153, 0 }, { 154, 0 }, { 155, 0 }, { 156, 0 }, { 157, 0 }, + { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, { 162, 0 }, + { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, { 167, 0 }, + { 168, 0 }, { 169, 0 }, { 170, 0 }, { 171, 0 }, { 172, 0 }, + { 173, 0 }, { 174, 0 }, { 175, 0 }, { 176, 0 }, { 177, 0 }, + + { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, { 182, 0 }, + { 183, 0 }, { 184, 0 }, { 185, 0 }, { 186, 0 }, { 187, 0 }, + { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, { 192, 0 }, + { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, { 197, 0 }, + { 198, 0 }, { 199, 0 }, { 200, 0 }, { 201, 0 }, { 202, 0 }, + { 203, 0 }, { 204, 0 }, { 205, 0 }, { 206, 0 }, { 207, 0 }, + { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, { 212, 0 }, + { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, { 217, 0 }, + { 218, 0 }, { 219, 0 }, { 220, 0 }, { 221, 0 }, { 222, 0 }, + { 223, 0 }, { 224, 0 }, { 225, 0 }, { 226, 0 }, { 227, 0 }, + + { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, { 232, 0 }, + { 233, 0 }, { 234, 0 }, { 235, 0 }, { 236, 0 }, { 237, 0 }, + { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, { 242, 0 }, + { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, { 247, 0 }, + { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, { 252, 0 }, + { 253, 0 }, { 254, 0 }, { 255, 0 }, { 0, 11 }, { 0,7569 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, { 9, 0 }, { 10, 0 }, { 11, 0 }, { 12, 0 }, { 13, 0 }, { 14, 0 }, { 15, 0 }, { 16, 0 }, { 17, 0 }, { 18, 0 }, { 19, 0 }, { 20, 0 }, + { 21, 0 }, { 22, 0 }, { 23, 0 }, { 24, 0 }, { 25, 0 }, { 26, 0 }, { 27, 0 }, { 28, 0 }, { 29, 0 }, { 30, 0 }, - { 31, 0 }, { 32, 0 }, { 33, 0 }, { 0, 0 }, { 35, 0 }, - { 36, 0 }, { 37, 0 }, { 38, 0 }, { 39, 0 }, { 40, 0 }, - + { 31, 0 }, { 32, 0 }, { 33, 0 }, { 34, 0 }, { 35, 0 }, + { 36, 0 }, { 37, 0 }, { 38, 0 }, { 0, 0 }, { 40, 0 }, { 41, 0 }, { 42, 0 }, { 43, 0 }, { 44, 0 }, { 45, 0 }, { 46, 0 }, { 47, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, { 58, 0 }, { 59, 0 }, { 60, 0 }, { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, + { 71, 0 }, { 72, 0 }, { 73, 0 }, { 74, 0 }, { 75, 0 }, { 76, 0 }, { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, { 82, 0 }, { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, { 87, 0 }, { 88, 0 }, { 89, 0 }, { 90, 0 }, - { 91, 0 }, { 92, 0 }, { 93, 0 }, { 94, 0 }, { 95, 0 }, { 96, 0 }, { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, + { 121, 0 }, { 122, 0 }, { 123, 0 }, { 124, 0 }, { 125, 0 }, { 126, 0 }, { 127, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, { 132, 0 }, { 133, 0 }, { 134, 0 }, { 135, 0 }, { 136, 0 }, { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, - { 141, 0 }, { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, { 147, 0 }, { 148, 0 }, { 149, 0 }, { 150, 0 }, { 151, 0 }, { 152, 0 }, { 153, 0 }, { 154, 0 }, { 155, 0 }, { 156, 0 }, { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, + { 171, 0 }, { 172, 0 }, { 173, 0 }, { 174, 0 }, { 175, 0 }, { 176, 0 }, { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, { 182, 0 }, { 183, 0 }, { 184, 0 }, { 185, 0 }, { 186, 0 }, { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, - { 191, 0 }, { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, { 197, 0 }, { 198, 0 }, { 199, 0 }, { 200, 0 }, { 201, 0 }, { 202, 0 }, { 203, 0 }, { 204, 0 }, { 205, 0 }, { 206, 0 }, { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, + { 221, 0 }, { 222, 0 }, { 223, 0 }, { 224, 0 }, { 225, 0 }, { 226, 0 }, { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, { 232, 0 }, { 233, 0 }, { 234, 0 }, { 235, 0 }, { 236, 0 }, { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, - { 241, 0 }, { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, { 252, 0 }, { 253, 0 }, { 254, 0 }, { 255, 0 }, - { 256, 0 }, { 0, 10 }, { 0,3756 }, { 1, 0 }, { 2, 0 }, + { 256, 0 }, { 0, 6 }, { 0,7311 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, { 9, 0 }, { 10, 0 }, { 11, 0 }, { 12, 0 }, + { 13, 0 }, { 14, 0 }, { 15, 0 }, { 16, 0 }, { 17, 0 }, { 18, 0 }, { 19, 0 }, { 20, 0 }, { 21, 0 }, { 22, 0 }, { 23, 0 }, { 24, 0 }, { 25, 0 }, { 26, 0 }, { 27, 0 }, { 28, 0 }, { 29, 0 }, { 30, 0 }, { 31, 0 }, { 32, 0 }, - { 33, 0 }, { 34, 0 }, { 35, 0 }, { 36, 0 }, { 37, 0 }, - { 38, 0 }, { 0, 0 }, { 40, 0 }, { 41, 0 }, { 42, 0 }, - { 43, 0 }, { 44, 0 }, { 45, 0 }, { 46, 0 }, { 47, 0 }, + { 38, 0 }, { 39, 0 }, { 40, 0 }, { 41, 0 }, { 0, 0 }, + { 43, 0 }, { 44, 0 }, { 45, 0 }, { 46, 0 }, { 0, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, { 58, 0 }, { 59, 0 }, { 60, 0 }, { 61, 0 }, { 62, 0 }, + { 63, 0 }, { 64, 0 }, { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, { 71, 0 }, { 72, 0 }, { 73, 0 }, { 74, 0 }, { 75, 0 }, { 76, 0 }, { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, { 82, 0 }, - { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, { 87, 0 }, { 88, 0 }, { 89, 0 }, { 90, 0 }, { 91, 0 }, { 92, 0 }, { 93, 0 }, { 94, 0 }, { 95, 0 }, { 96, 0 }, { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, { 112, 0 }, + { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, { 121, 0 }, { 122, 0 }, { 123, 0 }, { 124, 0 }, { 125, 0 }, { 126, 0 }, { 127, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, { 132, 0 }, - { 133, 0 }, { 134, 0 }, { 135, 0 }, { 136, 0 }, { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, { 147, 0 }, { 148, 0 }, { 149, 0 }, { 150, 0 }, { 151, 0 }, { 152, 0 }, { 153, 0 }, { 154, 0 }, { 155, 0 }, { 156, 0 }, { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, { 162, 0 }, + { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, { 171, 0 }, { 172, 0 }, { 173, 0 }, { 174, 0 }, { 175, 0 }, { 176, 0 }, { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, { 182, 0 }, - { 183, 0 }, { 184, 0 }, { 185, 0 }, { 186, 0 }, { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, { 197, 0 }, { 198, 0 }, { 199, 0 }, { 200, 0 }, { 201, 0 }, { 202, 0 }, { 203, 0 }, { 204, 0 }, { 205, 0 }, { 206, 0 }, { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, { 212, 0 }, + { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, { 221, 0 }, { 222, 0 }, { 223, 0 }, { 224, 0 }, { 225, 0 }, { 226, 0 }, { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, { 232, 0 }, - { 233, 0 }, { 234, 0 }, { 235, 0 }, { 236, 0 }, { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, { 252, 0 }, - { 253, 0 }, { 254, 0 }, { 255, 0 }, { 256, 0 }, { 0, 22 }, - { 0,3498 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, - { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, { 9, 0 }, - { 10, 0 }, { 11, 0 }, { 12, 0 }, { 13, 0 }, { 14, 0 }, - { 15, 0 }, { 16, 0 }, { 17, 0 }, { 18, 0 }, { 19, 0 }, - { 20, 0 }, { 21, 0 }, { 22, 0 }, { 23, 0 }, { 24, 0 }, + { 253, 0 }, { 254, 0 }, { 255, 0 }, { 256, 0 }, { 0, 4 }, + { 0,7053 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 33,4709 }, { 0, 0 }, + { 35,4709 }, { 0, 0 }, { 37,4709 }, { 38,4709 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 42,4709 }, { 43,4709 }, { 0, 0 }, + { 45,4709 }, { 0, 0 }, { 47,4709 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 60,4709 }, { 61,4709 }, { 62,4709 }, { 63,4709 }, { 64,4709 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94,4709 }, + { 0, 0 }, { 96,4709 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 124,4709 }, + { 0, 0 }, { 126,4709 }, { 0, 44 }, { 0,6925 }, { 1, 0 }, + { 2, 0 }, { 3, 0 }, { 4, 0 }, { 5, 0 }, { 6, 0 }, + { 7, 0 }, { 8, 0 }, { 9, 0 }, { 10, 0 }, { 11, 0 }, + { 12, 0 }, { 13, 0 }, { 14, 0 }, { 15, 0 }, { 16, 0 }, + { 17, 0 }, { 18, 0 }, { 19, 0 }, { 20, 0 }, { 21, 0 }, + { 22, 0 }, { 23, 0 }, { 24, 0 }, { 25, 0 }, { 26, 0 }, + + { 27, 0 }, { 28, 0 }, { 29, 0 }, { 30, 0 }, { 31, 0 }, + { 32, 0 }, { 33, 0 }, { 0, 0 }, { 35, 0 }, { 36, 0 }, + { 37, 0 }, { 38, 0 }, { 39, 0 }, { 40, 0 }, { 41, 0 }, + { 42, 0 }, { 43, 0 }, { 44, 0 }, { 45, 0 }, { 46, 0 }, + { 47, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, + { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, + { 57, 0 }, { 58, 0 }, { 59, 0 }, { 60, 0 }, { 61, 0 }, + { 62, 0 }, { 63, 0 }, { 64, 0 }, { 65, 0 }, { 66, 0 }, + { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, { 71, 0 }, + { 72, 0 }, { 73, 0 }, { 74, 0 }, { 75, 0 }, { 76, 0 }, + + { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, + { 82, 0 }, { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, + { 87, 0 }, { 88, 0 }, { 89, 0 }, { 90, 0 }, { 91, 0 }, + { 92, 0 }, { 93, 0 }, { 94, 0 }, { 95, 0 }, { 96, 0 }, + { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, + { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, + { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, + { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, + { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, { 121, 0 }, + { 122, 0 }, { 123, 0 }, { 124, 0 }, { 125, 0 }, { 126, 0 }, + + { 127, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, + { 132, 0 }, { 133, 0 }, { 134, 0 }, { 135, 0 }, { 136, 0 }, + { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, + { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, + { 147, 0 }, { 148, 0 }, { 149, 0 }, { 150, 0 }, { 151, 0 }, + { 152, 0 }, { 153, 0 }, { 154, 0 }, { 155, 0 }, { 156, 0 }, + { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, + { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, + { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, { 171, 0 }, + { 172, 0 }, { 173, 0 }, { 174, 0 }, { 175, 0 }, { 176, 0 }, + + { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, + { 182, 0 }, { 183, 0 }, { 184, 0 }, { 185, 0 }, { 186, 0 }, + { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, + { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, + { 197, 0 }, { 198, 0 }, { 199, 0 }, { 200, 0 }, { 201, 0 }, + { 202, 0 }, { 203, 0 }, { 204, 0 }, { 205, 0 }, { 206, 0 }, + { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, + { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, + { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, { 221, 0 }, + { 222, 0 }, { 223, 0 }, { 224, 0 }, { 225, 0 }, { 226, 0 }, + + { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, + { 232, 0 }, { 233, 0 }, { 234, 0 }, { 235, 0 }, { 236, 0 }, + { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, + { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, + { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, + { 252, 0 }, { 253, 0 }, { 254, 0 }, { 255, 0 }, { 256, 0 }, + { 0, 10 }, { 0,6667 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, + { 4, 0 }, { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, + { 9, 0 }, { 10, 0 }, { 11, 0 }, { 12, 0 }, { 13, 0 }, + { 14, 0 }, { 15, 0 }, { 16, 0 }, { 17, 0 }, { 18, 0 }, + + { 19, 0 }, { 20, 0 }, { 21, 0 }, { 22, 0 }, { 23, 0 }, + { 24, 0 }, { 25, 0 }, { 26, 0 }, { 27, 0 }, { 28, 0 }, + { 29, 0 }, { 30, 0 }, { 31, 0 }, { 32, 0 }, { 33, 0 }, + { 34, 0 }, { 35, 0 }, { 36, 0 }, { 37, 0 }, { 38, 0 }, + { 0, 0 }, { 40, 0 }, { 41, 0 }, { 42, 0 }, { 43, 0 }, + { 44, 0 }, { 45, 0 }, { 46, 0 }, { 47, 0 }, { 48, 0 }, + { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, + { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, { 58, 0 }, + { 59, 0 }, { 60, 0 }, { 61, 0 }, { 62, 0 }, { 63, 0 }, + { 64, 0 }, { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, + + { 69, 0 }, { 70, 0 }, { 71, 0 }, { 72, 0 }, { 73, 0 }, + { 74, 0 }, { 75, 0 }, { 76, 0 }, { 77, 0 }, { 78, 0 }, + { 79, 0 }, { 80, 0 }, { 81, 0 }, { 82, 0 }, { 83, 0 }, + { 84, 0 }, { 85, 0 }, { 86, 0 }, { 87, 0 }, { 88, 0 }, + { 89, 0 }, { 90, 0 }, { 91, 0 }, { 92, 0 }, { 93, 0 }, + { 94, 0 }, { 95, 0 }, { 96, 0 }, { 97, 0 }, { 98, 0 }, + { 99, 0 }, { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103, 0 }, + { 104, 0 }, { 105, 0 }, { 106, 0 }, { 107, 0 }, { 108, 0 }, + { 109, 0 }, { 110, 0 }, { 111, 0 }, { 112, 0 }, { 113, 0 }, + { 114, 0 }, { 115, 0 }, { 116, 0 }, { 117, 0 }, { 118, 0 }, + + { 119, 0 }, { 120, 0 }, { 121, 0 }, { 122, 0 }, { 123, 0 }, + { 124, 0 }, { 125, 0 }, { 126, 0 }, { 127, 0 }, { 128, 0 }, + { 129, 0 }, { 130, 0 }, { 131, 0 }, { 132, 0 }, { 133, 0 }, + { 134, 0 }, { 135, 0 }, { 136, 0 }, { 137, 0 }, { 138, 0 }, + { 139, 0 }, { 140, 0 }, { 141, 0 }, { 142, 0 }, { 143, 0 }, + { 144, 0 }, { 145, 0 }, { 146, 0 }, { 147, 0 }, { 148, 0 }, + { 149, 0 }, { 150, 0 }, { 151, 0 }, { 152, 0 }, { 153, 0 }, + { 154, 0 }, { 155, 0 }, { 156, 0 }, { 157, 0 }, { 158, 0 }, + { 159, 0 }, { 160, 0 }, { 161, 0 }, { 162, 0 }, { 163, 0 }, + { 164, 0 }, { 165, 0 }, { 166, 0 }, { 167, 0 }, { 168, 0 }, + + { 169, 0 }, { 170, 0 }, { 171, 0 }, { 172, 0 }, { 173, 0 }, + { 174, 0 }, { 175, 0 }, { 176, 0 }, { 177, 0 }, { 178, 0 }, + { 179, 0 }, { 180, 0 }, { 181, 0 }, { 182, 0 }, { 183, 0 }, + { 184, 0 }, { 185, 0 }, { 186, 0 }, { 187, 0 }, { 188, 0 }, + { 189, 0 }, { 190, 0 }, { 191, 0 }, { 192, 0 }, { 193, 0 }, + { 194, 0 }, { 195, 0 }, { 196, 0 }, { 197, 0 }, { 198, 0 }, + { 199, 0 }, { 200, 0 }, { 201, 0 }, { 202, 0 }, { 203, 0 }, + { 204, 0 }, { 205, 0 }, { 206, 0 }, { 207, 0 }, { 208, 0 }, + { 209, 0 }, { 210, 0 }, { 211, 0 }, { 212, 0 }, { 213, 0 }, + { 214, 0 }, { 215, 0 }, { 216, 0 }, { 217, 0 }, { 218, 0 }, + + { 219, 0 }, { 220, 0 }, { 221, 0 }, { 222, 0 }, { 223, 0 }, + { 224, 0 }, { 225, 0 }, { 226, 0 }, { 227, 0 }, { 228, 0 }, + { 229, 0 }, { 230, 0 }, { 231, 0 }, { 232, 0 }, { 233, 0 }, + { 234, 0 }, { 235, 0 }, { 236, 0 }, { 237, 0 }, { 238, 0 }, + { 239, 0 }, { 240, 0 }, { 241, 0 }, { 242, 0 }, { 243, 0 }, + { 244, 0 }, { 245, 0 }, { 246, 0 }, { 247, 0 }, { 248, 0 }, + { 249, 0 }, { 250, 0 }, { 251, 0 }, { 252, 0 }, { 253, 0 }, + { 254, 0 }, { 255, 0 }, { 256, 0 }, { 0, 22 }, { 0,6409 }, + { 1, 0 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, { 5, 0 }, + { 6, 0 }, { 7, 0 }, { 8, 0 }, { 9, 0 }, { 10, 0 }, + + { 11, 0 }, { 12, 0 }, { 13, 0 }, { 14, 0 }, { 15, 0 }, + { 16, 0 }, { 17, 0 }, { 18, 0 }, { 19, 0 }, { 20, 0 }, + { 21, 0 }, { 22, 0 }, { 23, 0 }, { 24, 0 }, { 25, 0 }, + { 26, 0 }, { 27, 0 }, { 28, 0 }, { 29, 0 }, { 30, 0 }, + { 31, 0 }, { 32, 0 }, { 33, 0 }, { 34, 0 }, { 35, 0 }, + { 36, 0 }, { 37, 0 }, { 38, 0 }, { 0, 0 }, { 40, 0 }, + { 41, 0 }, { 42, 0 }, { 43, 0 }, { 44, 0 }, { 45, 0 }, + { 46, 0 }, { 47, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, + { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, + { 56, 0 }, { 57, 0 }, { 58, 0 }, { 59, 0 }, { 60, 0 }, + + { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, { 65, 0 }, + { 66, 0 }, { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, + { 71, 0 }, { 72, 0 }, { 73, 0 }, { 74, 0 }, { 75, 0 }, + { 76, 0 }, { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, + { 81, 0 }, { 82, 0 }, { 83, 0 }, { 84, 0 }, { 85, 0 }, + { 86, 0 }, { 87, 0 }, { 88, 0 }, { 89, 0 }, { 90, 0 }, + { 91, 0 }, { 92, 0 }, { 93, 0 }, { 94, 0 }, { 95, 0 }, + { 96, 0 }, { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, + { 101, 0 }, { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, + { 106, 0 }, { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, + + { 111, 0 }, { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, + { 116, 0 }, { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, + { 121, 0 }, { 122, 0 }, { 123, 0 }, { 124, 0 }, { 125, 0 }, + { 126, 0 }, { 127, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, + { 131, 0 }, { 132, 0 }, { 133, 0 }, { 134, 0 }, { 135, 0 }, + { 136, 0 }, { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, + { 141, 0 }, { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, + { 146, 0 }, { 147, 0 }, { 148, 0 }, { 149, 0 }, { 150, 0 }, + { 151, 0 }, { 152, 0 }, { 153, 0 }, { 154, 0 }, { 155, 0 }, + { 156, 0 }, { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, + + { 161, 0 }, { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, + { 166, 0 }, { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, + { 171, 0 }, { 172, 0 }, { 173, 0 }, { 174, 0 }, { 175, 0 }, + { 176, 0 }, { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, + { 181, 0 }, { 182, 0 }, { 183, 0 }, { 184, 0 }, { 185, 0 }, + { 186, 0 }, { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, + { 191, 0 }, { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, + { 196, 0 }, { 197, 0 }, { 198, 0 }, { 199, 0 }, { 200, 0 }, + { 201, 0 }, { 202, 0 }, { 203, 0 }, { 204, 0 }, { 205, 0 }, + { 206, 0 }, { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, + + { 211, 0 }, { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, + { 216, 0 }, { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, + { 221, 0 }, { 222, 0 }, { 223, 0 }, { 224, 0 }, { 225, 0 }, + { 226, 0 }, { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, + { 231, 0 }, { 232, 0 }, { 233, 0 }, { 234, 0 }, { 235, 0 }, + { 236, 0 }, { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, + { 241, 0 }, { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, + { 246, 0 }, { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, + { 251, 0 }, { 252, 0 }, { 253, 0 }, { 254, 0 }, { 255, 0 }, + { 256, 0 }, { 0, 19 }, { 0,6151 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 19 }, { 0,6146 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 9, 0 }, { 10, 5 }, { 0, 0 }, { 12, 0 }, + { 13, 5 }, { 9, 16 }, { 10, 16 }, { 0, 0 }, { 12, 16 }, + { 13, 16 }, { 0, 0 }, { 0, 19 }, { 0,6130 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 9, 0 }, { 10, 0 }, { 32, 0 }, + { 12, 0 }, { 13, 0 }, { 0, 0 }, { 0, 0 }, { 32, 16 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 39,-8768 }, { 45,-8790 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 45,-8795 }, { 0, 0 }, { 0, 0 }, + + { 32, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 39,-8784 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 45,-8811 }, { 0, 23 }, + { 0,6083 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, + { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, { 9, 0 }, + { 10, 0 }, { 11, 0 }, { 12, 0 }, { 13, 0 }, { 14, 0 }, + { 15, 0 }, { 16, 0 }, { 17, 0 }, { 18, 0 }, { 19, 0 }, + { 20, 0 }, { 21, 0 }, { 22, 0 }, { 23, 0 }, { 24, 0 }, { 25, 0 }, { 26, 0 }, { 27, 0 }, { 28, 0 }, { 29, 0 }, { 30, 0 }, { 31, 0 }, { 32, 0 }, { 33, 0 }, { 34, 0 }, + { 35, 0 }, { 36, 0 }, { 37, 0 }, { 38, 0 }, { 0, 0 }, { 40, 0 }, { 41, 0 }, { 42, 0 }, { 43, 0 }, { 44, 0 }, { 45, 0 }, { 46, 0 }, { 47, 0 }, { 48, 0 }, { 49, 0 }, @@ -3749,20 +4090,20 @@ static const struct yy_trans_info yy_transition[17678] = { 60, 0 }, { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, { 71, 0 }, { 72, 0 }, { 73, 0 }, { 74, 0 }, - { 75, 0 }, { 76, 0 }, { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, { 82, 0 }, { 83, 0 }, { 84, 0 }, + { 85, 0 }, { 86, 0 }, { 87, 0 }, { 88, 0 }, { 89, 0 }, - { 90, 0 }, { 91, 0 }, { 92, 0 }, { 93, 0 }, { 94, 0 }, + { 90, 0 }, { 91, 0 }, { 0, 0 }, { 93, 0 }, { 94, 0 }, { 95, 0 }, { 96, 0 }, { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, { 121, 0 }, { 122, 0 }, { 123, 0 }, { 124, 0 }, - { 125, 0 }, { 126, 0 }, { 127, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, { 132, 0 }, { 133, 0 }, { 134, 0 }, + { 135, 0 }, { 136, 0 }, { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, { 147, 0 }, { 148, 0 }, { 149, 0 }, @@ -3771,9 +4112,9 @@ static const struct yy_trans_info yy_transition[17678] = { 160, 0 }, { 161, 0 }, { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, { 171, 0 }, { 172, 0 }, { 173, 0 }, { 174, 0 }, - { 175, 0 }, { 176, 0 }, { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, { 182, 0 }, { 183, 0 }, { 184, 0 }, + { 185, 0 }, { 186, 0 }, { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, { 197, 0 }, { 198, 0 }, { 199, 0 }, @@ -3782,41 +4123,64 @@ static const struct yy_trans_info yy_transition[17678] = { 210, 0 }, { 211, 0 }, { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, { 221, 0 }, { 222, 0 }, { 223, 0 }, { 224, 0 }, - { 225, 0 }, { 226, 0 }, { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, { 232, 0 }, { 233, 0 }, { 234, 0 }, + { 235, 0 }, { 236, 0 }, { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, { 252, 0 }, { 253, 0 }, { 254, 0 }, - { 255, 0 }, { 256, 0 }, { 0, 19 }, { 0,3240 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 19 }, { 0,3235 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 9, 0 }, { 10, 5 }, { 0, 0 }, - { 12, 0 }, { 13, 5 }, { 9, 16 }, { 10, 16 }, { 0, 0 }, + { 255, 0 }, { 256, 0 }, { 0, 30 }, { 0,5825 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 28 }, { 0,5817 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 12, 16 }, { 13, 16 }, { 0, 0 }, { 0, 19 }, { 0,3219 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0,5794 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 9, 0 }, { 10, 0 }, - { 32, 0 }, { 12, 0 }, { 13, 0 }, { 0, 0 }, { 0, 0 }, - { 32, 16 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 39,-7600 }, { 45,-7597 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 45,-7602 }, { 0, 0 }, - { 0, 0 }, { 32, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 39,-7616 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 45,-7618 }, - - { 0, 23 }, { 0,3172 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 48,3483 }, { 49,3483 }, { 50,3483 }, { 51,3483 }, + { 52,3483 }, { 53,3483 }, { 54,3483 }, { 55,3483 }, { 48,3490 }, + { 49,3490 }, { 50,3490 }, { 51,3490 }, { 52,3490 }, { 53,3490 }, + { 54,3490 }, { 55,3490 }, { 56,3490 }, { 57,3490 }, { 0, 0 }, + { 0, 0 }, { 0, 29 }, { 0,5756 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 65,3490 }, { 66,3490 }, { 67,3490 }, { 68,3490 }, + + { 69,3490 }, { 70,3490 }, { 48,3529 }, { 49,3529 }, { 50,3529 }, + { 51,3529 }, { 52,3529 }, { 53,3529 }, { 54,3529 }, { 55,3529 }, + { 56,3529 }, { 57,3529 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,3529 }, + { 66,3529 }, { 67,3529 }, { 68,3529 }, { 69,3529 }, { 70,3529 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,3490 }, { 98,3490 }, + { 99,3490 }, { 100,3490 }, { 101,3490 }, { 102,3490 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 48,3514 }, { 49,3514 }, { 50,3514 }, { 51,3514 }, { 52,3514 }, + { 53,3514 }, { 54,3514 }, { 55,3514 }, { 56,3514 }, { 57,3514 }, + + { 0, 0 }, { 97,3529 }, { 98,3529 }, { 99,3529 }, { 100,3529 }, + { 101,3529 }, { 102,3529 }, { 65,3514 }, { 66,3514 }, { 67,3514 }, + { 68,3514 }, { 69,3514 }, { 70,3514 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,3514 }, + { 98,3514 }, { 99,3514 }, { 100,3514 }, { 101,3514 }, { 102,3514 }, + { 0, 36 }, { 0,5652 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, + { 4, 0 }, { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, { 9, 0 }, { 10, 0 }, { 11, 0 }, { 12, 0 }, { 13, 0 }, { 14, 0 }, { 15, 0 }, { 16, 0 }, { 17, 0 }, { 18, 0 }, { 19, 0 }, { 20, 0 }, { 21, 0 }, { 22, 0 }, { 23, 0 }, { 24, 0 }, { 25, 0 }, { 26, 0 }, { 27, 0 }, { 28, 0 }, { 29, 0 }, { 30, 0 }, { 31, 0 }, { 32, 0 }, { 33, 0 }, - { 34, 0 }, { 35, 0 }, { 36, 0 }, { 37, 0 }, { 38, 0 }, - { 0, 0 }, { 40, 0 }, { 41, 0 }, { 42, 0 }, { 43, 0 }, + { 34, 0 }, { 35, 0 }, { 0, 0 }, { 37, 0 }, { 38, 0 }, + { 39, 0 }, { 40, 0 }, { 41, 0 }, { 42, 0 }, { 43, 0 }, { 44, 0 }, { 45, 0 }, { 46, 0 }, { 47, 0 }, { 48, 0 }, - { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, + { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, { 58, 0 }, { 59, 0 }, { 60, 0 }, { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, @@ -3824,10 +4188,10 @@ static const struct yy_trans_info yy_transition[17678] = { 74, 0 }, { 75, 0 }, { 76, 0 }, { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, { 82, 0 }, { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, { 87, 0 }, { 88, 0 }, - { 89, 0 }, { 90, 0 }, { 91, 0 }, { 0, 0 }, { 93, 0 }, + { 89, 0 }, { 90, 0 }, { 91, 0 }, { 92, 0 }, { 93, 0 }, { 94, 0 }, { 95, 0 }, { 96, 0 }, { 97, 0 }, { 98, 0 }, - { 99, 0 }, { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103, 0 }, + { 104, 0 }, { 105, 0 }, { 106, 0 }, { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, { 117, 0 }, { 118, 0 }, @@ -3837,8 +4201,8 @@ static const struct yy_trans_info yy_transition[17678] = { 134, 0 }, { 135, 0 }, { 136, 0 }, { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, { 147, 0 }, { 148, 0 }, - { 149, 0 }, { 150, 0 }, { 151, 0 }, { 152, 0 }, { 153, 0 }, + { 154, 0 }, { 155, 0 }, { 156, 0 }, { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, { 167, 0 }, { 168, 0 }, @@ -3848,8 +4212,8 @@ static const struct yy_trans_info yy_transition[17678] = { 184, 0 }, { 185, 0 }, { 186, 0 }, { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, { 197, 0 }, { 198, 0 }, - { 199, 0 }, { 200, 0 }, { 201, 0 }, { 202, 0 }, { 203, 0 }, + { 204, 0 }, { 205, 0 }, { 206, 0 }, { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, { 217, 0 }, { 218, 0 }, @@ -3859,650 +4223,1195 @@ static const struct yy_trans_info yy_transition[17678] = { 234, 0 }, { 235, 0 }, { 236, 0 }, { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, { 247, 0 }, { 248, 0 }, - { 249, 0 }, { 250, 0 }, { 251, 0 }, { 252, 0 }, { 253, 0 }, - { 254, 0 }, { 255, 0 }, { 256, 0 }, { 0, 30 }, { 0,2914 }, + + { 254, 0 }, { 255, 0 }, { 256, 0 }, { 0, 37 }, { 0,5394 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 28 }, { 0,2906 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, - { 0,2883 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 48,1652 }, { 49,1652 }, { 50,1652 }, - { 51,1652 }, { 52,1652 }, { 53,1652 }, { 54,1652 }, { 55,1652 }, - { 48,1676 }, { 49,1676 }, { 50,1676 }, { 51,1676 }, { 52,1676 }, - { 53,1676 }, { 54,1676 }, { 55,1676 }, { 56,1676 }, { 57,1676 }, - { 0, 0 }, { 0, 0 }, { 0, 29 }, { 0,2845 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 65,1676 }, { 66,1676 }, { 67,1676 }, - { 68,1676 }, { 69,1676 }, { 70,1676 }, { 48,1691 }, { 49,1691 }, - { 50,1691 }, { 51,1691 }, { 52,1691 }, { 53,1691 }, { 54,1691 }, - { 55,1691 }, { 56,1691 }, { 57,1691 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 65,1691 }, { 66,1691 }, { 67,1691 }, { 68,1691 }, { 69,1691 }, - { 70,1691 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,1676 }, - { 98,1676 }, { 99,1676 }, { 100,1676 }, { 101,1676 }, { 102,1676 }, + { 36,-9498 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 48,1676 }, { 49,1676 }, { 50,1676 }, { 51,1676 }, - { 52,1676 }, { 53,1676 }, { 54,1676 }, { 55,1676 }, { 56,1676 }, - { 57,1676 }, { 0, 0 }, { 97,1691 }, { 98,1691 }, { 99,1691 }, - { 100,1691 }, { 101,1691 }, { 102,1691 }, { 65,1676 }, { 66,1676 }, - { 67,1676 }, { 68,1676 }, { 69,1676 }, { 70,1676 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 48,3211 }, { 49,3211 }, { 50,3211 }, + { 51,3211 }, { 52,3211 }, { 53,3211 }, { 54,3211 }, { 55,3211 }, + { 56,3211 }, { 57,3211 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,3211 }, + { 66,3211 }, { 67,3211 }, { 68,3211 }, { 69,3211 }, { 70,3211 }, + { 71,3211 }, { 72,3211 }, { 73,3211 }, { 74,3211 }, { 75,3211 }, + { 76,3211 }, { 77,3211 }, { 78,3211 }, { 79,3211 }, { 80,3211 }, + { 81,3211 }, { 82,3211 }, { 83,3211 }, { 84,3211 }, { 85,3211 }, + { 86,3211 }, { 87,3211 }, { 88,3211 }, { 89,3211 }, { 90,3211 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95,3211 }, + + { 0, 0 }, { 97,3211 }, { 98,3211 }, { 99,3211 }, { 100,3211 }, + { 101,3211 }, { 102,3211 }, { 103,3211 }, { 104,3211 }, { 105,3211 }, + { 106,3211 }, { 107,3211 }, { 108,3211 }, { 109,3211 }, { 110,3211 }, + { 111,3211 }, { 112,3211 }, { 113,3211 }, { 114,3211 }, { 115,3211 }, + { 116,3211 }, { 117,3211 }, { 118,3211 }, { 119,3211 }, { 120,3211 }, + { 121,3211 }, { 122,3211 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 128,3211 }, { 129,3211 }, { 130,3211 }, + { 131,3211 }, { 132,3211 }, { 133,3211 }, { 134,3211 }, { 135,3211 }, + { 136,3211 }, { 137,3211 }, { 138,3211 }, { 139,3211 }, { 140,3211 }, + { 141,3211 }, { 142,3211 }, { 143,3211 }, { 144,3211 }, { 145,3211 }, + + { 146,3211 }, { 147,3211 }, { 148,3211 }, { 149,3211 }, { 150,3211 }, + { 151,3211 }, { 152,3211 }, { 153,3211 }, { 154,3211 }, { 155,3211 }, + { 156,3211 }, { 157,3211 }, { 158,3211 }, { 159,3211 }, { 160,3211 }, + { 161,3211 }, { 162,3211 }, { 163,3211 }, { 164,3211 }, { 165,3211 }, + { 166,3211 }, { 167,3211 }, { 168,3211 }, { 169,3211 }, { 170,3211 }, + { 171,3211 }, { 172,3211 }, { 173,3211 }, { 174,3211 }, { 175,3211 }, + { 176,3211 }, { 177,3211 }, { 178,3211 }, { 179,3211 }, { 180,3211 }, + { 181,3211 }, { 182,3211 }, { 183,3211 }, { 184,3211 }, { 185,3211 }, + { 186,3211 }, { 187,3211 }, { 188,3211 }, { 189,3211 }, { 190,3211 }, + { 191,3211 }, { 192,3211 }, { 193,3211 }, { 194,3211 }, { 195,3211 }, + + { 196,3211 }, { 197,3211 }, { 198,3211 }, { 199,3211 }, { 200,3211 }, + { 201,3211 }, { 202,3211 }, { 203,3211 }, { 204,3211 }, { 205,3211 }, + { 206,3211 }, { 207,3211 }, { 208,3211 }, { 209,3211 }, { 210,3211 }, + { 211,3211 }, { 212,3211 }, { 213,3211 }, { 214,3211 }, { 215,3211 }, + { 216,3211 }, { 217,3211 }, { 218,3211 }, { 219,3211 }, { 220,3211 }, + { 221,3211 }, { 222,3211 }, { 223,3211 }, { 224,3211 }, { 225,3211 }, + { 226,3211 }, { 227,3211 }, { 228,3211 }, { 229,3211 }, { 230,3211 }, + { 231,3211 }, { 232,3211 }, { 233,3211 }, { 234,3211 }, { 235,3211 }, + { 236,3211 }, { 237,3211 }, { 238,3211 }, { 239,3211 }, { 240,3211 }, + { 241,3211 }, { 242,3211 }, { 243,3211 }, { 244,3211 }, { 245,3211 }, + + { 246,3211 }, { 247,3211 }, { 248,3211 }, { 249,3211 }, { 250,3211 }, + { 251,3211 }, { 252,3211 }, { 253,3211 }, { 254,3211 }, { 255,3211 }, + { 0, 28 }, { 0,5137 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0,5114 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 97,1676 }, { 98,1676 }, { 99,1676 }, { 100,1676 }, { 101,1676 }, - { 102,1676 }, { 0, 36 }, { 0,2741 }, { 1, 0 }, { 2, 0 }, - { 3, 0 }, { 4, 0 }, { 5, 0 }, { 6, 0 }, { 7, 0 }, - { 8, 0 }, { 9, 0 }, { 10, 0 }, { 11, 0 }, { 12, 0 }, - { 13, 0 }, { 14, 0 }, { 15, 0 }, { 16, 0 }, { 17, 0 }, - { 18, 0 }, { 19, 0 }, { 20, 0 }, { 21, 0 }, { 22, 0 }, - { 23, 0 }, { 24, 0 }, { 25, 0 }, { 26, 0 }, { 27, 0 }, - { 28, 0 }, { 29, 0 }, { 30, 0 }, { 31, 0 }, { 32, 0 }, - { 33, 0 }, { 34, 0 }, { 35, 0 }, { 0, 0 }, { 37, 0 }, - { 38, 0 }, { 39, 0 }, { 40, 0 }, { 41, 0 }, { 42, 0 }, - { 43, 0 }, { 44, 0 }, { 45, 0 }, { 46, 0 }, { 47, 0 }, - { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, - { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, - { 58, 0 }, { 59, 0 }, { 60, 0 }, { 61, 0 }, { 62, 0 }, - { 63, 0 }, { 64, 0 }, { 65, 0 }, { 66, 0 }, { 67, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,3211 }, + { 49,3211 }, { 50,3211 }, { 51,3211 }, { 52,3211 }, { 53,3211 }, + { 54,3211 }, { 55,3211 }, { 56,3211 }, { 57,3211 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 65,3211 }, { 66,3211 }, { 67,3211 }, { 68,3211 }, + { 69,3211 }, { 70,3211 }, { 48,3211 }, { 49,3211 }, { 50,3211 }, + { 51,3211 }, { 52,3211 }, { 53,3211 }, { 54,3211 }, { 55,3211 }, + { 56,3211 }, { 57,3211 }, { 0, 34 }, { 0,5055 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,3211 }, - { 68, 0 }, { 69, 0 }, { 70, 0 }, { 71, 0 }, { 72, 0 }, - { 73, 0 }, { 74, 0 }, { 75, 0 }, { 76, 0 }, { 77, 0 }, - { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, { 82, 0 }, - { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, { 87, 0 }, - { 88, 0 }, { 89, 0 }, { 90, 0 }, { 91, 0 }, { 92, 0 }, - { 93, 0 }, { 94, 0 }, { 95, 0 }, { 96, 0 }, { 97, 0 }, - { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, { 102, 0 }, - { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, { 107, 0 }, - { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, { 112, 0 }, - { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, { 117, 0 }, + { 66,3211 }, { 67,3211 }, { 68,3211 }, { 69,3211 }, { 70,3211 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,3211 }, { 98,3211 }, + { 99,3211 }, { 100,3211 }, { 101,3211 }, { 102,3211 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 36,-10175 }, + { 0, 0 }, { 97,3211 }, { 98,3211 }, { 99,3211 }, { 100,3211 }, + { 101,3211 }, { 102,3211 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, + { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, - { 118, 0 }, { 119, 0 }, { 120, 0 }, { 121, 0 }, { 122, 0 }, - { 123, 0 }, { 124, 0 }, { 125, 0 }, { 126, 0 }, { 127, 0 }, - { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, { 132, 0 }, - { 133, 0 }, { 134, 0 }, { 135, 0 }, { 136, 0 }, { 137, 0 }, - { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, { 142, 0 }, - { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, { 147, 0 }, - { 148, 0 }, { 149, 0 }, { 150, 0 }, { 151, 0 }, { 152, 0 }, - { 153, 0 }, { 154, 0 }, { 155, 0 }, { 156, 0 }, { 157, 0 }, - { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, { 162, 0 }, - { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, { 167, 0 }, + { 57, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 0 }, { 66, 0 }, + { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, { 71, 0 }, + { 72, 0 }, { 73, 0 }, { 74, 0 }, { 75, 0 }, { 76, 0 }, + { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, + { 82, 0 }, { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, + { 87, 0 }, { 88, 0 }, { 89, 0 }, { 90, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95, 0 }, { 0, 0 }, + { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, + { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, - { 168, 0 }, { 169, 0 }, { 170, 0 }, { 171, 0 }, { 172, 0 }, - { 173, 0 }, { 174, 0 }, { 175, 0 }, { 176, 0 }, { 177, 0 }, - { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, { 182, 0 }, - { 183, 0 }, { 184, 0 }, { 185, 0 }, { 186, 0 }, { 187, 0 }, - { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, { 192, 0 }, - { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, { 197, 0 }, - { 198, 0 }, { 199, 0 }, { 200, 0 }, { 201, 0 }, { 202, 0 }, - { 203, 0 }, { 204, 0 }, { 205, 0 }, { 206, 0 }, { 207, 0 }, - { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, { 212, 0 }, - { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, { 217, 0 }, + { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, + { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, + { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, { 121, 0 }, + { 122, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, + { 132, 0 }, { 133, 0 }, { 134, 0 }, { 135, 0 }, { 136, 0 }, + { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, + { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, + { 147, 0 }, { 148, 0 }, { 149, 0 }, { 150, 0 }, { 151, 0 }, + { 152, 0 }, { 153, 0 }, { 154, 0 }, { 155, 0 }, { 156, 0 }, - { 218, 0 }, { 219, 0 }, { 220, 0 }, { 221, 0 }, { 222, 0 }, - { 223, 0 }, { 224, 0 }, { 225, 0 }, { 226, 0 }, { 227, 0 }, - { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, { 232, 0 }, - { 233, 0 }, { 234, 0 }, { 235, 0 }, { 236, 0 }, { 237, 0 }, - { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, { 242, 0 }, - { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, { 247, 0 }, - { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, { 252, 0 }, - { 253, 0 }, { 254, 0 }, { 255, 0 }, { 256, 0 }, { 0, 37 }, - { 0,2483 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, + { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, + { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, { 171, 0 }, + { 172, 0 }, { 173, 0 }, { 174, 0 }, { 175, 0 }, { 176, 0 }, + { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, + { 182, 0 }, { 183, 0 }, { 184, 0 }, { 185, 0 }, { 186, 0 }, + { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, + { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, + { 197, 0 }, { 198, 0 }, { 199, 0 }, { 200, 0 }, { 201, 0 }, + { 202, 0 }, { 203, 0 }, { 204, 0 }, { 205, 0 }, { 206, 0 }, + + { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, + { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, + { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, { 221, 0 }, + { 222, 0 }, { 223, 0 }, { 224, 0 }, { 225, 0 }, { 226, 0 }, + { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, + { 232, 0 }, { 233, 0 }, { 234, 0 }, { 235, 0 }, { 236, 0 }, + { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, + { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, + { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, + { 252, 0 }, { 253, 0 }, { 254, 0 }, { 255, 0 }, { 0, 2 }, + + { 0,4798 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, + { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, { 9, 0 }, + { 0, 0 }, { 11, 0 }, { 12, 0 }, { 0, 0 }, { 14, 0 }, + { 15, 0 }, { 16, 0 }, { 17, 0 }, { 18, 0 }, { 19, 0 }, + { 20, 0 }, { 21, 0 }, { 22, 0 }, { 23, 0 }, { 24, 0 }, + { 25, 0 }, { 26, 0 }, { 27, 0 }, { 28, 0 }, { 29, 0 }, + { 30, 0 }, { 31, 0 }, { 32, 0 }, { 33, 0 }, { 34, 0 }, + { 35, 0 }, { 36, 0 }, { 37, 0 }, { 38, 0 }, { 39, 0 }, + { 40, 0 }, { 41, 0 }, { 42, 0 }, { 43, 0 }, { 44, 0 }, + { 45, 0 }, { 46, 0 }, { 47, 0 }, { 48, 0 }, { 49, 0 }, + + { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, + { 55, 0 }, { 56, 0 }, { 57, 0 }, { 58, 0 }, { 59, 0 }, + { 60, 0 }, { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, + { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, { 69, 0 }, + { 70, 0 }, { 71, 0 }, { 72, 0 }, { 73, 0 }, { 74, 0 }, + { 75, 0 }, { 76, 0 }, { 77, 0 }, { 78, 0 }, { 79, 0 }, + { 80, 0 }, { 81, 0 }, { 82, 0 }, { 83, 0 }, { 84, 0 }, + { 85, 0 }, { 86, 0 }, { 87, 0 }, { 88, 0 }, { 89, 0 }, + { 90, 0 }, { 91, 0 }, { 92, 0 }, { 93, 0 }, { 94, 0 }, + { 95, 0 }, { 96, 0 }, { 97, 0 }, { 98, 0 }, { 99, 0 }, + + { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103, 0 }, { 104, 0 }, + { 105, 0 }, { 106, 0 }, { 107, 0 }, { 108, 0 }, { 109, 0 }, + { 110, 0 }, { 111, 0 }, { 112, 0 }, { 113, 0 }, { 114, 0 }, + { 115, 0 }, { 116, 0 }, { 117, 0 }, { 118, 0 }, { 119, 0 }, + { 120, 0 }, { 121, 0 }, { 122, 0 }, { 123, 0 }, { 124, 0 }, + { 125, 0 }, { 126, 0 }, { 127, 0 }, { 128, 0 }, { 129, 0 }, + { 130, 0 }, { 131, 0 }, { 132, 0 }, { 133, 0 }, { 134, 0 }, + { 135, 0 }, { 136, 0 }, { 137, 0 }, { 138, 0 }, { 139, 0 }, + { 140, 0 }, { 141, 0 }, { 142, 0 }, { 143, 0 }, { 144, 0 }, + { 145, 0 }, { 146, 0 }, { 147, 0 }, { 148, 0 }, { 149, 0 }, + + { 150, 0 }, { 151, 0 }, { 152, 0 }, { 153, 0 }, { 154, 0 }, + { 155, 0 }, { 156, 0 }, { 157, 0 }, { 158, 0 }, { 159, 0 }, + { 160, 0 }, { 161, 0 }, { 162, 0 }, { 163, 0 }, { 164, 0 }, + { 165, 0 }, { 166, 0 }, { 167, 0 }, { 168, 0 }, { 169, 0 }, + { 170, 0 }, { 171, 0 }, { 172, 0 }, { 173, 0 }, { 174, 0 }, + { 175, 0 }, { 176, 0 }, { 177, 0 }, { 178, 0 }, { 179, 0 }, + { 180, 0 }, { 181, 0 }, { 182, 0 }, { 183, 0 }, { 184, 0 }, + { 185, 0 }, { 186, 0 }, { 187, 0 }, { 188, 0 }, { 189, 0 }, + { 190, 0 }, { 191, 0 }, { 192, 0 }, { 193, 0 }, { 194, 0 }, + { 195, 0 }, { 196, 0 }, { 197, 0 }, { 198, 0 }, { 199, 0 }, + + { 200, 0 }, { 201, 0 }, { 202, 0 }, { 203, 0 }, { 204, 0 }, + { 205, 0 }, { 206, 0 }, { 207, 0 }, { 208, 0 }, { 209, 0 }, + { 210, 0 }, { 211, 0 }, { 212, 0 }, { 213, 0 }, { 214, 0 }, + { 215, 0 }, { 216, 0 }, { 217, 0 }, { 218, 0 }, { 219, 0 }, + { 220, 0 }, { 221, 0 }, { 222, 0 }, { 223, 0 }, { 224, 0 }, + { 225, 0 }, { 226, 0 }, { 227, 0 }, { 228, 0 }, { 229, 0 }, + { 230, 0 }, { 231, 0 }, { 232, 0 }, { 233, 0 }, { 234, 0 }, + { 235, 0 }, { 236, 0 }, { 237, 0 }, { 238, 0 }, { 239, 0 }, + { 240, 0 }, { 241, 0 }, { 242, 0 }, { 243, 0 }, { 244, 0 }, + { 245, 0 }, { 246, 0 }, { 247, 0 }, { 248, 0 }, { 249, 0 }, + { 250, 0 }, { 251, 0 }, { 252, 0 }, { 253, 0 }, { 254, 0 }, + { 255, 0 }, { 256, 0 }, { 0, 2 }, { 0,4540 }, { 1,-258 }, + { 2,-258 }, { 3,-258 }, { 4,-258 }, { 5,-258 }, { 6,-258 }, + { 7,-258 }, { 8,-258 }, { 9,-258 }, { 0, 0 }, { 11,-258 }, + { 12,-258 }, { 0, 0 }, { 14,-258 }, { 15,-258 }, { 16,-258 }, + { 17,-258 }, { 18,-258 }, { 19,-258 }, { 20,-258 }, { 21,-258 }, + { 22,-258 }, { 23,-258 }, { 24,-258 }, { 25,-258 }, { 26,-258 }, + { 27,-258 }, { 28,-258 }, { 29,-258 }, { 30,-258 }, { 31,-258 }, + { 32,-258 }, { 33, 0 }, { 34,-258 }, { 35, 0 }, { 36,-258 }, + { 37, 0 }, { 38, 0 }, { 39,-258 }, { 40,-258 }, { 41,-258 }, + + { 42, 0 }, { 43, 0 }, { 44,-258 }, { 45, 0 }, { 46,-258 }, + { 47, 0 }, { 48,-258 }, { 49,-258 }, { 50,-258 }, { 51,-258 }, + { 52,-258 }, { 53,-258 }, { 54,-258 }, { 55,-258 }, { 56,-258 }, + { 57,-258 }, { 58,-258 }, { 59,-258 }, { 60, 0 }, { 61, 0 }, + { 62, 0 }, { 63, 0 }, { 64, 0 }, { 65,-258 }, { 66,-258 }, + { 67,-258 }, { 68,-258 }, { 69,-258 }, { 70,-258 }, { 71,-258 }, + { 72,-258 }, { 73,-258 }, { 74,-258 }, { 75,-258 }, { 76,-258 }, + { 77,-258 }, { 78,-258 }, { 79,-258 }, { 80,-258 }, { 81,-258 }, + { 82,-258 }, { 83,-258 }, { 84,-258 }, { 85,-258 }, { 86,-258 }, + { 87,-258 }, { 88,-258 }, { 89,-258 }, { 90,-258 }, { 91,-258 }, + + { 92,-258 }, { 93,-258 }, { 94, 0 }, { 95,-258 }, { 96, 0 }, + { 97,-258 }, { 98,-258 }, { 99,-258 }, { 100,-258 }, { 101,-258 }, + { 102,-258 }, { 103,-258 }, { 104,-258 }, { 105,-258 }, { 106,-258 }, + { 107,-258 }, { 108,-258 }, { 109,-258 }, { 110,-258 }, { 111,-258 }, + { 112,-258 }, { 113,-258 }, { 114,-258 }, { 115,-258 }, { 116,-258 }, + { 117,-258 }, { 118,-258 }, { 119,-258 }, { 120,-258 }, { 121,-258 }, + { 122,-258 }, { 123,-258 }, { 124, 0 }, { 125,-258 }, { 126, 0 }, + { 127,-258 }, { 128,-258 }, { 129,-258 }, { 130,-258 }, { 131,-258 }, + { 132,-258 }, { 133,-258 }, { 134,-258 }, { 135,-258 }, { 136,-258 }, + { 137,-258 }, { 138,-258 }, { 139,-258 }, { 140,-258 }, { 141,-258 }, + + { 142,-258 }, { 143,-258 }, { 144,-258 }, { 145,-258 }, { 146,-258 }, + { 147,-258 }, { 148,-258 }, { 149,-258 }, { 150,-258 }, { 151,-258 }, + { 152,-258 }, { 153,-258 }, { 154,-258 }, { 155,-258 }, { 156,-258 }, + { 157,-258 }, { 158,-258 }, { 159,-258 }, { 160,-258 }, { 161,-258 }, + { 162,-258 }, { 163,-258 }, { 164,-258 }, { 165,-258 }, { 166,-258 }, + { 167,-258 }, { 168,-258 }, { 169,-258 }, { 170,-258 }, { 171,-258 }, + { 172,-258 }, { 173,-258 }, { 174,-258 }, { 175,-258 }, { 176,-258 }, + { 177,-258 }, { 178,-258 }, { 179,-258 }, { 180,-258 }, { 181,-258 }, + { 182,-258 }, { 183,-258 }, { 184,-258 }, { 185,-258 }, { 186,-258 }, + { 187,-258 }, { 188,-258 }, { 189,-258 }, { 190,-258 }, { 191,-258 }, + + { 192,-258 }, { 193,-258 }, { 194,-258 }, { 195,-258 }, { 196,-258 }, + { 197,-258 }, { 198,-258 }, { 199,-258 }, { 200,-258 }, { 201,-258 }, + { 202,-258 }, { 203,-258 }, { 204,-258 }, { 205,-258 }, { 206,-258 }, + { 207,-258 }, { 208,-258 }, { 209,-258 }, { 210,-258 }, { 211,-258 }, + { 212,-258 }, { 213,-258 }, { 214,-258 }, { 215,-258 }, { 216,-258 }, + { 217,-258 }, { 218,-258 }, { 219,-258 }, { 220,-258 }, { 221,-258 }, + { 222,-258 }, { 223,-258 }, { 224,-258 }, { 225,-258 }, { 226,-258 }, + { 227,-258 }, { 228,-258 }, { 229,-258 }, { 230,-258 }, { 231,-258 }, + { 232,-258 }, { 233,-258 }, { 234,-258 }, { 235,-258 }, { 236,-258 }, + { 237,-258 }, { 238,-258 }, { 239,-258 }, { 240,-258 }, { 241,-258 }, + + { 242,-258 }, { 243,-258 }, { 244,-258 }, { 245,-258 }, { 246,-258 }, + { 247,-258 }, { 248,-258 }, { 249,-258 }, { 250,-258 }, { 251,-258 }, + { 252,-258 }, { 253,-258 }, { 254,-258 }, { 255,-258 }, { 256,-258 }, + { 0, 64 }, { 0,4282 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 36,-8348 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,1373 }, { 49,1373 }, - { 50,1373 }, { 51,1373 }, { 52,1373 }, { 53,1373 }, { 54,1373 }, - { 55,1373 }, { 56,1373 }, { 57,1373 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 65,1373 }, { 66,1373 }, { 67,1373 }, { 68,1373 }, { 69,1373 }, - { 70,1373 }, { 71,1373 }, { 72,1373 }, { 73,1373 }, { 74,1373 }, - { 75,1373 }, { 76,1373 }, { 77,1373 }, { 78,1373 }, { 79,1373 }, - { 80,1373 }, { 81,1373 }, { 82,1373 }, { 83,1373 }, { 84,1373 }, - { 85,1373 }, { 86,1373 }, { 87,1373 }, { 88,1373 }, { 89,1373 }, - { 90,1373 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 95,1373 }, { 0, 0 }, { 97,1373 }, { 98,1373 }, { 99,1373 }, - { 100,1373 }, { 101,1373 }, { 102,1373 }, { 103,1373 }, { 104,1373 }, - { 105,1373 }, { 106,1373 }, { 107,1373 }, { 108,1373 }, { 109,1373 }, - - { 110,1373 }, { 111,1373 }, { 112,1373 }, { 113,1373 }, { 114,1373 }, - { 115,1373 }, { 116,1373 }, { 117,1373 }, { 118,1373 }, { 119,1373 }, - { 120,1373 }, { 121,1373 }, { 122,1373 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,1373 }, { 129,1373 }, - { 130,1373 }, { 131,1373 }, { 132,1373 }, { 133,1373 }, { 134,1373 }, - { 135,1373 }, { 136,1373 }, { 137,1373 }, { 138,1373 }, { 139,1373 }, - { 140,1373 }, { 141,1373 }, { 142,1373 }, { 143,1373 }, { 144,1373 }, - { 145,1373 }, { 146,1373 }, { 147,1373 }, { 148,1373 }, { 149,1373 }, - { 150,1373 }, { 151,1373 }, { 152,1373 }, { 153,1373 }, { 154,1373 }, - { 155,1373 }, { 156,1373 }, { 157,1373 }, { 158,1373 }, { 159,1373 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 0 }, + { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, + { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 65,-10608 }, { 66,-10608 }, { 67,-10608 }, { 68,-10608 }, + { 69, 257 }, { 70,-10608 }, { 71,-10608 }, { 72,-10608 }, { 73,-10608 }, + { 74,-10608 }, { 75,-10608 }, { 76,-10608 }, { 77,-10608 }, { 78,-10608 }, + { 79,-10608 }, { 80,-10608 }, { 81,-10608 }, { 82,-10608 }, { 83,-10608 }, - { 160,1373 }, { 161,1373 }, { 162,1373 }, { 163,1373 }, { 164,1373 }, - { 165,1373 }, { 166,1373 }, { 167,1373 }, { 168,1373 }, { 169,1373 }, - { 170,1373 }, { 171,1373 }, { 172,1373 }, { 173,1373 }, { 174,1373 }, - { 175,1373 }, { 176,1373 }, { 177,1373 }, { 178,1373 }, { 179,1373 }, - { 180,1373 }, { 181,1373 }, { 182,1373 }, { 183,1373 }, { 184,1373 }, - { 185,1373 }, { 186,1373 }, { 187,1373 }, { 188,1373 }, { 189,1373 }, - { 190,1373 }, { 191,1373 }, { 192,1373 }, { 193,1373 }, { 194,1373 }, - { 195,1373 }, { 196,1373 }, { 197,1373 }, { 198,1373 }, { 199,1373 }, - { 200,1373 }, { 201,1373 }, { 202,1373 }, { 203,1373 }, { 204,1373 }, - { 205,1373 }, { 206,1373 }, { 207,1373 }, { 208,1373 }, { 209,1373 }, + { 84,-10608 }, { 85,-10608 }, { 86,-10608 }, { 87,-10608 }, { 88,-10608 }, + { 89,-10608 }, { 90,-10608 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 95, 267 }, { 0, 0 }, { 97,-10608 }, { 98,-10608 }, + { 99,-10608 }, { 100,-10608 }, { 101, 257 }, { 102,-10608 }, { 103,-10608 }, + { 104,-10608 }, { 105,-10608 }, { 106,-10608 }, { 107,-10608 }, { 108,-10608 }, + { 109,-10608 }, { 110,-10608 }, { 111,-10608 }, { 112,-10608 }, { 113,-10608 }, + { 114,-10608 }, { 115,-10608 }, { 116,-10608 }, { 117,-10608 }, { 118,-10608 }, + { 119,-10608 }, { 120,-10608 }, { 121,-10608 }, { 122,-10608 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,-10608 }, + { 129,-10608 }, { 130,-10608 }, { 131,-10608 }, { 132,-10608 }, { 133,-10608 }, + + { 134,-10608 }, { 135,-10608 }, { 136,-10608 }, { 137,-10608 }, { 138,-10608 }, + { 139,-10608 }, { 140,-10608 }, { 141,-10608 }, { 142,-10608 }, { 143,-10608 }, + { 144,-10608 }, { 145,-10608 }, { 146,-10608 }, { 147,-10608 }, { 148,-10608 }, + { 149,-10608 }, { 150,-10608 }, { 151,-10608 }, { 152,-10608 }, { 153,-10608 }, + { 154,-10608 }, { 155,-10608 }, { 156,-10608 }, { 157,-10608 }, { 158,-10608 }, + { 159,-10608 }, { 160,-10608 }, { 161,-10608 }, { 162,-10608 }, { 163,-10608 }, + { 164,-10608 }, { 165,-10608 }, { 166,-10608 }, { 167,-10608 }, { 168,-10608 }, + { 169,-10608 }, { 170,-10608 }, { 171,-10608 }, { 172,-10608 }, { 173,-10608 }, + { 174,-10608 }, { 175,-10608 }, { 176,-10608 }, { 177,-10608 }, { 178,-10608 }, + { 179,-10608 }, { 180,-10608 }, { 181,-10608 }, { 182,-10608 }, { 183,-10608 }, - { 210,1373 }, { 211,1373 }, { 212,1373 }, { 213,1373 }, { 214,1373 }, - { 215,1373 }, { 216,1373 }, { 217,1373 }, { 218,1373 }, { 219,1373 }, - { 220,1373 }, { 221,1373 }, { 222,1373 }, { 223,1373 }, { 224,1373 }, - { 225,1373 }, { 226,1373 }, { 227,1373 }, { 228,1373 }, { 229,1373 }, - { 230,1373 }, { 231,1373 }, { 232,1373 }, { 233,1373 }, { 234,1373 }, - { 235,1373 }, { 236,1373 }, { 237,1373 }, { 238,1373 }, { 239,1373 }, - { 240,1373 }, { 241,1373 }, { 242,1373 }, { 243,1373 }, { 244,1373 }, - { 245,1373 }, { 246,1373 }, { 247,1373 }, { 248,1373 }, { 249,1373 }, - { 250,1373 }, { 251,1373 }, { 252,1373 }, { 253,1373 }, { 254,1373 }, - { 255,1373 }, { 0, 28 }, { 0,2226 }, { 0, 0 }, { 0, 0 }, + { 184,-10608 }, { 185,-10608 }, { 186,-10608 }, { 187,-10608 }, { 188,-10608 }, + { 189,-10608 }, { 190,-10608 }, { 191,-10608 }, { 192,-10608 }, { 193,-10608 }, + { 194,-10608 }, { 195,-10608 }, { 196,-10608 }, { 197,-10608 }, { 198,-10608 }, + { 199,-10608 }, { 200,-10608 }, { 201,-10608 }, { 202,-10608 }, { 203,-10608 }, + { 204,-10608 }, { 205,-10608 }, { 206,-10608 }, { 207,-10608 }, { 208,-10608 }, + { 209,-10608 }, { 210,-10608 }, { 211,-10608 }, { 212,-10608 }, { 213,-10608 }, + { 214,-10608 }, { 215,-10608 }, { 216,-10608 }, { 217,-10608 }, { 218,-10608 }, + { 219,-10608 }, { 220,-10608 }, { 221,-10608 }, { 222,-10608 }, { 223,-10608 }, + { 224,-10608 }, { 225,-10608 }, { 226,-10608 }, { 227,-10608 }, { 228,-10608 }, + { 229,-10608 }, { 230,-10608 }, { 231,-10608 }, { 232,-10608 }, { 233,-10608 }, + { 234,-10608 }, { 235,-10608 }, { 236,-10608 }, { 237,-10608 }, { 238,-10608 }, + { 239,-10608 }, { 240,-10608 }, { 241,-10608 }, { 242,-10608 }, { 243,-10608 }, + { 244,-10608 }, { 245,-10608 }, { 246,-10608 }, { 247,-10608 }, { 248,-10608 }, + { 249,-10608 }, { 250,-10608 }, { 251,-10608 }, { 252,-10608 }, { 253,-10608 }, + { 254,-10608 }, { 255,-10608 }, { 0, 72 }, { 0,4025 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 72 }, { 0,4015 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, - { 0,2203 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 3 }, { 0,3990 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 48,1373 }, { 49,1373 }, { 50,1373 }, { 51,1373 }, { 52,1373 }, + { 0, 0 }, { 43, 360 }, { 0, 0 }, { 45, 360 }, { 0, 0 }, + { 0, 0 }, { 48, 615 }, { 49, 615 }, { 50, 615 }, { 51, 615 }, + { 52, 615 }, { 53, 615 }, { 54, 615 }, { 55, 615 }, { 56, 615 }, + { 57, 615 }, { 48,-267 }, { 49,-267 }, { 50,-267 }, { 51,-267 }, + { 52,-267 }, { 53,-267 }, { 54,-267 }, { 55,-267 }, { 56,-267 }, + { 57,-267 }, { 33, 0 }, { 0, 0 }, { 35, 0 }, { 0, 0 }, + { 37, 0 }, { 38, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 53,1373 }, { 54,1373 }, { 55,1373 }, { 56,1373 }, { 57,1373 }, + { 42, 0 }, { 43, 0 }, { 0, 0 }, { 45, 0 }, { 0, 0 }, + { 47, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 60, 0 }, { 61, 0 }, + { 62, 0 }, { 63, 0 }, { 64, 0 }, { 0, 64 }, { 0,3924 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 65,1373 }, { 66,1373 }, { 67,1373 }, - { 68,1373 }, { 69,1373 }, { 70,1373 }, { 48,1373 }, { 49,1373 }, - { 50,1373 }, { 51,1373 }, { 52,1373 }, { 53,1373 }, { 54,1373 }, - { 55,1373 }, { 56,1373 }, { 57,1373 }, { 0, 34 }, { 0,2144 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 65,1373 }, { 66,1373 }, { 67,1373 }, { 68,1373 }, { 69,1373 }, - { 70,1373 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,1373 }, - { 98,1373 }, { 99,1373 }, { 100,1373 }, { 101,1373 }, { 102,1373 }, + { 0, 0 }, { 0, 0 }, { 94, 0 }, { 0, 0 }, { 96, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 36,-8961 }, { 0, 0 }, { 97,1373 }, { 98,1373 }, { 99,1373 }, - { 100,1373 }, { 101,1373 }, { 102,1373 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, - { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, - { 56, 0 }, { 57, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 0 }, - { 66, 0 }, { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, + { 0, 0 }, { 0, 0 }, { 48,2059 }, { 49,2059 }, { 50,2059 }, + { 51,2059 }, { 52,2059 }, { 53,2059 }, { 54,2059 }, { 55,2059 }, + { 56,2059 }, { 57,2059 }, { 124, 0 }, { 0, 0 }, { 126, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,-10966 }, + { 66,-10966 }, { 67,-10966 }, { 68,-10966 }, { 69,-101 }, { 70,-10966 }, + { 71,-10966 }, { 72,-10966 }, { 73,-10966 }, { 74,-10966 }, { 75,-10966 }, - { 71, 0 }, { 72, 0 }, { 73, 0 }, { 74, 0 }, { 75, 0 }, - { 76, 0 }, { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, - { 81, 0 }, { 82, 0 }, { 83, 0 }, { 84, 0 }, { 85, 0 }, - { 86, 0 }, { 87, 0 }, { 88, 0 }, { 89, 0 }, { 90, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95, 0 }, - { 0, 0 }, { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, - { 101, 0 }, { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, - { 106, 0 }, { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, - { 111, 0 }, { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, - { 116, 0 }, { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, + { 76,-10966 }, { 77,-10966 }, { 78,-10966 }, { 79,-10966 }, { 80,-10966 }, + { 81,-10966 }, { 82,-10966 }, { 83,-10966 }, { 84,-10966 }, { 85,-10966 }, + { 86,-10966 }, { 87,-10966 }, { 88,-10966 }, { 89,-10966 }, { 90,-10966 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95,2316 }, + { 0, 0 }, { 97,-10966 }, { 98,-10966 }, { 99,-10966 }, { 100,-10966 }, + { 101,-101 }, { 102,-10966 }, { 103,-10966 }, { 104,-10966 }, { 105,-10966 }, + { 106,-10966 }, { 107,-10966 }, { 108,-10966 }, { 109,-10966 }, { 110,-10966 }, + { 111,-10966 }, { 112,-10966 }, { 113,-10966 }, { 114,-10966 }, { 115,-10966 }, + { 116,-10966 }, { 117,-10966 }, { 118,-10966 }, { 119,-10966 }, { 120,-10966 }, + { 121,-10966 }, { 122,-10966 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 121, 0 }, { 122, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, - { 131, 0 }, { 132, 0 }, { 133, 0 }, { 134, 0 }, { 135, 0 }, - { 136, 0 }, { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, - { 141, 0 }, { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, - { 146, 0 }, { 147, 0 }, { 148, 0 }, { 149, 0 }, { 150, 0 }, - { 151, 0 }, { 152, 0 }, { 153, 0 }, { 154, 0 }, { 155, 0 }, - { 156, 0 }, { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, - { 161, 0 }, { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, - { 166, 0 }, { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, + { 0, 0 }, { 0, 0 }, { 128,-10966 }, { 129,-10966 }, { 130,-10966 }, + { 131,-10966 }, { 132,-10966 }, { 133,-10966 }, { 134,-10966 }, { 135,-10966 }, + { 136,-10966 }, { 137,-10966 }, { 138,-10966 }, { 139,-10966 }, { 140,-10966 }, + { 141,-10966 }, { 142,-10966 }, { 143,-10966 }, { 144,-10966 }, { 145,-10966 }, + { 146,-10966 }, { 147,-10966 }, { 148,-10966 }, { 149,-10966 }, { 150,-10966 }, + { 151,-10966 }, { 152,-10966 }, { 153,-10966 }, { 154,-10966 }, { 155,-10966 }, + { 156,-10966 }, { 157,-10966 }, { 158,-10966 }, { 159,-10966 }, { 160,-10966 }, + { 161,-10966 }, { 162,-10966 }, { 163,-10966 }, { 164,-10966 }, { 165,-10966 }, + { 166,-10966 }, { 167,-10966 }, { 168,-10966 }, { 169,-10966 }, { 170,-10966 }, + { 171,-10966 }, { 172,-10966 }, { 173,-10966 }, { 174,-10966 }, { 175,-10966 }, - { 171, 0 }, { 172, 0 }, { 173, 0 }, { 174, 0 }, { 175, 0 }, - { 176, 0 }, { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, - { 181, 0 }, { 182, 0 }, { 183, 0 }, { 184, 0 }, { 185, 0 }, - { 186, 0 }, { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, - { 191, 0 }, { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, - { 196, 0 }, { 197, 0 }, { 198, 0 }, { 199, 0 }, { 200, 0 }, - { 201, 0 }, { 202, 0 }, { 203, 0 }, { 204, 0 }, { 205, 0 }, - { 206, 0 }, { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, - { 211, 0 }, { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, - { 216, 0 }, { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, + { 176,-10966 }, { 177,-10966 }, { 178,-10966 }, { 179,-10966 }, { 180,-10966 }, + { 181,-10966 }, { 182,-10966 }, { 183,-10966 }, { 184,-10966 }, { 185,-10966 }, + { 186,-10966 }, { 187,-10966 }, { 188,-10966 }, { 189,-10966 }, { 190,-10966 }, + { 191,-10966 }, { 192,-10966 }, { 193,-10966 }, { 194,-10966 }, { 195,-10966 }, + { 196,-10966 }, { 197,-10966 }, { 198,-10966 }, { 199,-10966 }, { 200,-10966 }, + { 201,-10966 }, { 202,-10966 }, { 203,-10966 }, { 204,-10966 }, { 205,-10966 }, + { 206,-10966 }, { 207,-10966 }, { 208,-10966 }, { 209,-10966 }, { 210,-10966 }, + { 211,-10966 }, { 212,-10966 }, { 213,-10966 }, { 214,-10966 }, { 215,-10966 }, + { 216,-10966 }, { 217,-10966 }, { 218,-10966 }, { 219,-10966 }, { 220,-10966 }, + { 221,-10966 }, { 222,-10966 }, { 223,-10966 }, { 224,-10966 }, { 225,-10966 }, - { 221, 0 }, { 222, 0 }, { 223, 0 }, { 224, 0 }, { 225, 0 }, - { 226, 0 }, { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, - { 231, 0 }, { 232, 0 }, { 233, 0 }, { 234, 0 }, { 235, 0 }, - { 236, 0 }, { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, - { 241, 0 }, { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, - { 246, 0 }, { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, - { 251, 0 }, { 252, 0 }, { 253, 0 }, { 254, 0 }, { 255, 0 }, - { 0, 2 }, { 0,1887 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, - { 4, 0 }, { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, - { 9, 0 }, { 0, 0 }, { 11, 0 }, { 12, 0 }, { 0, 0 }, + { 226,-10966 }, { 227,-10966 }, { 228,-10966 }, { 229,-10966 }, { 230,-10966 }, + { 231,-10966 }, { 232,-10966 }, { 233,-10966 }, { 234,-10966 }, { 235,-10966 }, + { 236,-10966 }, { 237,-10966 }, { 238,-10966 }, { 239,-10966 }, { 240,-10966 }, + { 241,-10966 }, { 242,-10966 }, { 243,-10966 }, { 244,-10966 }, { 245,-10966 }, + { 246,-10966 }, { 247,-10966 }, { 248,-10966 }, { 249,-10966 }, { 250,-10966 }, + { 251,-10966 }, { 252,-10966 }, { 253,-10966 }, { 254,-10966 }, { 255,-10966 }, + { 0, 60 }, { 0,3667 }, { 0, 67 }, { 0,3665 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 14, 0 }, { 15, 0 }, { 16, 0 }, { 17, 0 }, { 18, 0 }, - { 19, 0 }, { 20, 0 }, { 21, 0 }, { 22, 0 }, { 23, 0 }, - { 24, 0 }, { 25, 0 }, { 26, 0 }, { 27, 0 }, { 28, 0 }, - { 29, 0 }, { 30, 0 }, { 31, 0 }, { 32, 0 }, { 33, 0 }, - { 34, 0 }, { 35, 0 }, { 36, 0 }, { 37, 0 }, { 38, 0 }, - { 39, 0 }, { 40, 0 }, { 41, 0 }, { 42, 0 }, { 43, 0 }, - { 44, 0 }, { 45, 0 }, { 46, 0 }, { 47, 0 }, { 48, 0 }, - { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, - { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, { 58, 0 }, - { 59, 0 }, { 60, 0 }, { 61, 0 }, { 62, 0 }, { 63, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 0 }, + { 49, 0 }, { 48, 255 }, { 49, 255 }, { 50, 255 }, { 51, 255 }, + { 52, 255 }, { 53, 255 }, { 54, 255 }, { 55, 255 }, { 56, 255 }, + { 57, 255 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 65,-11201 }, { 66,-11201 }, { 67,-11201 }, { 68,-11201 }, + + { 69,-11201 }, { 70,-11201 }, { 71,-11201 }, { 72,-11201 }, { 73,-11201 }, + { 74,-11201 }, { 75,-11201 }, { 76,-11201 }, { 77,-11201 }, { 78,-11201 }, + { 79,-11201 }, { 80,-11201 }, { 81,-11201 }, { 82,-11201 }, { 83,-11201 }, + { 84,-11201 }, { 85,-11201 }, { 86,-11201 }, { 87,-11201 }, { 88,-11201 }, + { 89,-11201 }, { 90,-11201 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 95,-11196 }, { 0, 0 }, { 97,-11201 }, { 98,-11201 }, + { 99,-11201 }, { 100,-11201 }, { 101,-11201 }, { 102,-11201 }, { 103,-11201 }, + { 104,-11201 }, { 105,-11201 }, { 106,-11201 }, { 107,-11201 }, { 108,-11201 }, + { 109,-11201 }, { 110,-11201 }, { 111,-11201 }, { 112,-11201 }, { 113,-11201 }, + { 114,-11201 }, { 115,-11201 }, { 116,-11201 }, { 117,-11201 }, { 118,-11201 }, + + { 119,-11201 }, { 120,-11201 }, { 121,-11201 }, { 122,-11201 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,-11201 }, + { 129,-11201 }, { 130,-11201 }, { 131,-11201 }, { 132,-11201 }, { 133,-11201 }, + { 134,-11201 }, { 135,-11201 }, { 136,-11201 }, { 137,-11201 }, { 138,-11201 }, + { 139,-11201 }, { 140,-11201 }, { 141,-11201 }, { 142,-11201 }, { 143,-11201 }, + { 144,-11201 }, { 145,-11201 }, { 146,-11201 }, { 147,-11201 }, { 148,-11201 }, + { 149,-11201 }, { 150,-11201 }, { 151,-11201 }, { 152,-11201 }, { 153,-11201 }, + { 154,-11201 }, { 155,-11201 }, { 156,-11201 }, { 157,-11201 }, { 158,-11201 }, + { 159,-11201 }, { 160,-11201 }, { 161,-11201 }, { 162,-11201 }, { 163,-11201 }, + { 164,-11201 }, { 165,-11201 }, { 166,-11201 }, { 167,-11201 }, { 168,-11201 }, + + { 169,-11201 }, { 170,-11201 }, { 171,-11201 }, { 172,-11201 }, { 173,-11201 }, + { 174,-11201 }, { 175,-11201 }, { 176,-11201 }, { 177,-11201 }, { 178,-11201 }, + { 179,-11201 }, { 180,-11201 }, { 181,-11201 }, { 182,-11201 }, { 183,-11201 }, + { 184,-11201 }, { 185,-11201 }, { 186,-11201 }, { 187,-11201 }, { 188,-11201 }, + { 189,-11201 }, { 190,-11201 }, { 191,-11201 }, { 192,-11201 }, { 193,-11201 }, + { 194,-11201 }, { 195,-11201 }, { 196,-11201 }, { 197,-11201 }, { 198,-11201 }, + { 199,-11201 }, { 200,-11201 }, { 201,-11201 }, { 202,-11201 }, { 203,-11201 }, + { 204,-11201 }, { 205,-11201 }, { 206,-11201 }, { 207,-11201 }, { 208,-11201 }, + { 209,-11201 }, { 210,-11201 }, { 211,-11201 }, { 212,-11201 }, { 213,-11201 }, + { 214,-11201 }, { 215,-11201 }, { 216,-11201 }, { 217,-11201 }, { 218,-11201 }, + + { 219,-11201 }, { 220,-11201 }, { 221,-11201 }, { 222,-11201 }, { 223,-11201 }, + { 224,-11201 }, { 225,-11201 }, { 226,-11201 }, { 227,-11201 }, { 228,-11201 }, + { 229,-11201 }, { 230,-11201 }, { 231,-11201 }, { 232,-11201 }, { 233,-11201 }, + { 234,-11201 }, { 235,-11201 }, { 236,-11201 }, { 237,-11201 }, { 238,-11201 }, + { 239,-11201 }, { 240,-11201 }, { 241,-11201 }, { 242,-11201 }, { 243,-11201 }, + { 244,-11201 }, { 245,-11201 }, { 246,-11201 }, { 247,-11201 }, { 248,-11201 }, + { 249,-11201 }, { 250,-11201 }, { 251,-11201 }, { 252,-11201 }, { 253,-11201 }, + { 254,-11201 }, { 255,-11201 }, { 0, 66 }, { 0,3410 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 48,1812 }, { 49,1812 }, { 50,1812 }, { 51,1812 }, + { 52,1812 }, { 53,1812 }, { 54,1812 }, { 55,1812 }, { 56,1812 }, + { 57,1812 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,-11451 }, { 66,-11451 }, + { 67,-11451 }, { 68,-11451 }, { 69,-11451 }, { 70,-11451 }, { 71,-11451 }, + { 72,-11451 }, { 73,-11451 }, { 74,-11451 }, { 75,-11451 }, { 76,-11451 }, + { 77,-11451 }, { 78,-11451 }, { 79,-11451 }, { 80,-11451 }, { 81,-11451 }, + { 82,-11451 }, { 83,-11451 }, { 84,-11451 }, { 85,-11451 }, { 86,-11451 }, + { 87,-11451 }, { 88,-11451 }, { 89,-11451 }, { 90,-11451 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95,2069 }, { 0, 0 }, + { 97,-11451 }, { 98,-11451 }, { 99,-11451 }, { 100,-11451 }, { 101,-11451 }, + { 102,-11451 }, { 103,-11451 }, { 104,-11451 }, { 105,-11451 }, { 106,-11451 }, + { 107,-11451 }, { 108,-11451 }, { 109,-11451 }, { 110,-11451 }, { 111,-11451 }, + + { 112,-11451 }, { 113,-11451 }, { 114,-11451 }, { 115,-11451 }, { 116,-11451 }, + { 117,-11451 }, { 118,-11451 }, { 119,-11451 }, { 120,-11451 }, { 121,-11451 }, + { 122,-11451 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 128,-11451 }, { 129,-11451 }, { 130,-11451 }, { 131,-11451 }, + { 132,-11451 }, { 133,-11451 }, { 134,-11451 }, { 135,-11451 }, { 136,-11451 }, + { 137,-11451 }, { 138,-11451 }, { 139,-11451 }, { 140,-11451 }, { 141,-11451 }, + { 142,-11451 }, { 143,-11451 }, { 144,-11451 }, { 145,-11451 }, { 146,-11451 }, + { 147,-11451 }, { 148,-11451 }, { 149,-11451 }, { 150,-11451 }, { 151,-11451 }, + { 152,-11451 }, { 153,-11451 }, { 154,-11451 }, { 155,-11451 }, { 156,-11451 }, + { 157,-11451 }, { 158,-11451 }, { 159,-11451 }, { 160,-11451 }, { 161,-11451 }, + + { 162,-11451 }, { 163,-11451 }, { 164,-11451 }, { 165,-11451 }, { 166,-11451 }, + { 167,-11451 }, { 168,-11451 }, { 169,-11451 }, { 170,-11451 }, { 171,-11451 }, + { 172,-11451 }, { 173,-11451 }, { 174,-11451 }, { 175,-11451 }, { 176,-11451 }, + { 177,-11451 }, { 178,-11451 }, { 179,-11451 }, { 180,-11451 }, { 181,-11451 }, + { 182,-11451 }, { 183,-11451 }, { 184,-11451 }, { 185,-11451 }, { 186,-11451 }, + { 187,-11451 }, { 188,-11451 }, { 189,-11451 }, { 190,-11451 }, { 191,-11451 }, + { 192,-11451 }, { 193,-11451 }, { 194,-11451 }, { 195,-11451 }, { 196,-11451 }, + { 197,-11451 }, { 198,-11451 }, { 199,-11451 }, { 200,-11451 }, { 201,-11451 }, + { 202,-11451 }, { 203,-11451 }, { 204,-11451 }, { 205,-11451 }, { 206,-11451 }, + { 207,-11451 }, { 208,-11451 }, { 209,-11451 }, { 210,-11451 }, { 211,-11451 }, + + { 212,-11451 }, { 213,-11451 }, { 214,-11451 }, { 215,-11451 }, { 216,-11451 }, + { 217,-11451 }, { 218,-11451 }, { 219,-11451 }, { 220,-11451 }, { 221,-11451 }, + { 222,-11451 }, { 223,-11451 }, { 224,-11451 }, { 225,-11451 }, { 226,-11451 }, + { 227,-11451 }, { 228,-11451 }, { 229,-11451 }, { 230,-11451 }, { 231,-11451 }, + { 232,-11451 }, { 233,-11451 }, { 234,-11451 }, { 235,-11451 }, { 236,-11451 }, + { 237,-11451 }, { 238,-11451 }, { 239,-11451 }, { 240,-11451 }, { 241,-11451 }, + { 242,-11451 }, { 243,-11451 }, { 244,-11451 }, { 245,-11451 }, { 246,-11451 }, + { 247,-11451 }, { 248,-11451 }, { 249,-11451 }, { 250,-11451 }, { 251,-11451 }, + { 252,-11451 }, { 253,-11451 }, { 254,-11451 }, { 255,-11451 }, { 0, 59 }, + { 0,3153 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 62 }, { 0,3145 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 0 }, { 49, 0 }, + { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, - { 64, 0 }, { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, - { 69, 0 }, { 70, 0 }, { 71, 0 }, { 72, 0 }, { 73, 0 }, - { 74, 0 }, { 75, 0 }, { 76, 0 }, { 77, 0 }, { 78, 0 }, - { 79, 0 }, { 80, 0 }, { 81, 0 }, { 82, 0 }, { 83, 0 }, - { 84, 0 }, { 85, 0 }, { 86, 0 }, { 87, 0 }, { 88, 0 }, - { 89, 0 }, { 90, 0 }, { 91, 0 }, { 92, 0 }, { 93, 0 }, - { 94, 0 }, { 95, 0 }, { 96, 0 }, { 97, 0 }, { 98, 0 }, - { 99, 0 }, { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103, 0 }, - { 104, 0 }, { 105, 0 }, { 106, 0 }, { 107, 0 }, { 108, 0 }, - { 109, 0 }, { 110, 0 }, { 111, 0 }, { 112, 0 }, { 113, 0 }, + { 55, 0 }, { 48, -8 }, { 49, -8 }, { 50, -8 }, { 51, -8 }, + { 52, -8 }, { 53, -8 }, { 54, -8 }, { 55, -8 }, { 0, 0 }, + { 65,-11706 }, { 66,-11706 }, { 67,-11706 }, { 68,-11706 }, { 69,-11706 }, + { 70,-11706 }, { 71,-11706 }, { 72,-11706 }, { 73,-11706 }, { 74,-11706 }, + { 75,-11706 }, { 76,-11706 }, { 77,-11706 }, { 78,-11706 }, { 79,-11706 }, + { 80,-11706 }, { 81,-11706 }, { 82,-11706 }, { 83,-11706 }, { 84,-11706 }, + { 85,-11706 }, { 86,-11706 }, { 87,-11706 }, { 88,-11706 }, { 89,-11706 }, + { 90,-11706 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 95,1822 }, { 0, 0 }, { 97,-11706 }, { 98,-11706 }, { 99,-11706 }, + { 100,-11706 }, { 101,-11706 }, { 102,-11706 }, { 103,-11706 }, { 104,-11706 }, - { 114, 0 }, { 115, 0 }, { 116, 0 }, { 117, 0 }, { 118, 0 }, - { 119, 0 }, { 120, 0 }, { 121, 0 }, { 122, 0 }, { 123, 0 }, - { 124, 0 }, { 125, 0 }, { 126, 0 }, { 127, 0 }, { 128, 0 }, - { 129, 0 }, { 130, 0 }, { 131, 0 }, { 132, 0 }, { 133, 0 }, - { 134, 0 }, { 135, 0 }, { 136, 0 }, { 137, 0 }, { 138, 0 }, - { 139, 0 }, { 140, 0 }, { 141, 0 }, { 142, 0 }, { 143, 0 }, - { 144, 0 }, { 145, 0 }, { 146, 0 }, { 147, 0 }, { 148, 0 }, - { 149, 0 }, { 150, 0 }, { 151, 0 }, { 152, 0 }, { 153, 0 }, - { 154, 0 }, { 155, 0 }, { 156, 0 }, { 157, 0 }, { 158, 0 }, - { 159, 0 }, { 160, 0 }, { 161, 0 }, { 162, 0 }, { 163, 0 }, + { 105,-11706 }, { 106,-11706 }, { 107,-11706 }, { 108,-11706 }, { 109,-11706 }, + { 110,-11706 }, { 111,-11706 }, { 112,-11706 }, { 113,-11706 }, { 114,-11706 }, + { 115,-11706 }, { 116,-11706 }, { 117,-11706 }, { 118,-11706 }, { 119,-11706 }, + { 120,-11706 }, { 121,-11706 }, { 122,-11706 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,-11706 }, { 129,-11706 }, + { 130,-11706 }, { 131,-11706 }, { 132,-11706 }, { 133,-11706 }, { 134,-11706 }, + { 135,-11706 }, { 136,-11706 }, { 137,-11706 }, { 138,-11706 }, { 139,-11706 }, + { 140,-11706 }, { 141,-11706 }, { 142,-11706 }, { 143,-11706 }, { 144,-11706 }, + { 145,-11706 }, { 146,-11706 }, { 147,-11706 }, { 148,-11706 }, { 149,-11706 }, + { 150,-11706 }, { 151,-11706 }, { 152,-11706 }, { 153,-11706 }, { 154,-11706 }, - { 164, 0 }, { 165, 0 }, { 166, 0 }, { 167, 0 }, { 168, 0 }, - { 169, 0 }, { 170, 0 }, { 171, 0 }, { 172, 0 }, { 173, 0 }, - { 174, 0 }, { 175, 0 }, { 176, 0 }, { 177, 0 }, { 178, 0 }, - { 179, 0 }, { 180, 0 }, { 181, 0 }, { 182, 0 }, { 183, 0 }, - { 184, 0 }, { 185, 0 }, { 186, 0 }, { 187, 0 }, { 188, 0 }, - { 189, 0 }, { 190, 0 }, { 191, 0 }, { 192, 0 }, { 193, 0 }, - { 194, 0 }, { 195, 0 }, { 196, 0 }, { 197, 0 }, { 198, 0 }, - { 199, 0 }, { 200, 0 }, { 201, 0 }, { 202, 0 }, { 203, 0 }, - { 204, 0 }, { 205, 0 }, { 206, 0 }, { 207, 0 }, { 208, 0 }, - { 209, 0 }, { 210, 0 }, { 211, 0 }, { 212, 0 }, { 213, 0 }, + { 155,-11706 }, { 156,-11706 }, { 157,-11706 }, { 158,-11706 }, { 159,-11706 }, + { 160,-11706 }, { 161,-11706 }, { 162,-11706 }, { 163,-11706 }, { 164,-11706 }, + { 165,-11706 }, { 166,-11706 }, { 167,-11706 }, { 168,-11706 }, { 169,-11706 }, + { 170,-11706 }, { 171,-11706 }, { 172,-11706 }, { 173,-11706 }, { 174,-11706 }, + { 175,-11706 }, { 176,-11706 }, { 177,-11706 }, { 178,-11706 }, { 179,-11706 }, + { 180,-11706 }, { 181,-11706 }, { 182,-11706 }, { 183,-11706 }, { 184,-11706 }, + { 185,-11706 }, { 186,-11706 }, { 187,-11706 }, { 188,-11706 }, { 189,-11706 }, + { 190,-11706 }, { 191,-11706 }, { 192,-11706 }, { 193,-11706 }, { 194,-11706 }, + { 195,-11706 }, { 196,-11706 }, { 197,-11706 }, { 198,-11706 }, { 199,-11706 }, + { 200,-11706 }, { 201,-11706 }, { 202,-11706 }, { 203,-11706 }, { 204,-11706 }, - { 214, 0 }, { 215, 0 }, { 216, 0 }, { 217, 0 }, { 218, 0 }, - { 219, 0 }, { 220, 0 }, { 221, 0 }, { 222, 0 }, { 223, 0 }, - { 224, 0 }, { 225, 0 }, { 226, 0 }, { 227, 0 }, { 228, 0 }, - { 229, 0 }, { 230, 0 }, { 231, 0 }, { 232, 0 }, { 233, 0 }, - { 234, 0 }, { 235, 0 }, { 236, 0 }, { 237, 0 }, { 238, 0 }, - { 239, 0 }, { 240, 0 }, { 241, 0 }, { 242, 0 }, { 243, 0 }, - { 244, 0 }, { 245, 0 }, { 246, 0 }, { 247, 0 }, { 248, 0 }, - { 249, 0 }, { 250, 0 }, { 251, 0 }, { 252, 0 }, { 253, 0 }, - { 254, 0 }, { 255, 0 }, { 256, 0 }, { 0, 2 }, { 0,1629 }, - { 1,-258 }, { 2,-258 }, { 3,-258 }, { 4,-258 }, { 5,-258 }, - - { 6,-258 }, { 7,-258 }, { 8,-258 }, { 9,-258 }, { 0, 0 }, - { 11,-258 }, { 12,-258 }, { 0, 0 }, { 14,-258 }, { 15,-258 }, - { 16,-258 }, { 17,-258 }, { 18,-258 }, { 19,-258 }, { 20,-258 }, - { 21,-258 }, { 22,-258 }, { 23,-258 }, { 24,-258 }, { 25,-258 }, - { 26,-258 }, { 27,-258 }, { 28,-258 }, { 29,-258 }, { 30,-258 }, - { 31,-258 }, { 32,-258 }, { 33, 0 }, { 34,-258 }, { 35, 0 }, - { 36,-258 }, { 37, 0 }, { 38, 0 }, { 39,-258 }, { 40,-258 }, - { 41,-258 }, { 42, 0 }, { 43, 0 }, { 44,-258 }, { 45, 0 }, - { 46,-258 }, { 47, 0 }, { 48,-258 }, { 49,-258 }, { 50,-258 }, - { 51,-258 }, { 52,-258 }, { 53,-258 }, { 54,-258 }, { 55,-258 }, - - { 56,-258 }, { 57,-258 }, { 58,-258 }, { 59,-258 }, { 60, 0 }, - { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, { 65,-258 }, - { 66,-258 }, { 67,-258 }, { 68,-258 }, { 69,-258 }, { 70,-258 }, - { 71,-258 }, { 72,-258 }, { 73,-258 }, { 74,-258 }, { 75,-258 }, - { 76,-258 }, { 77,-258 }, { 78,-258 }, { 79,-258 }, { 80,-258 }, - { 81,-258 }, { 82,-258 }, { 83,-258 }, { 84,-258 }, { 85,-258 }, - { 86,-258 }, { 87,-258 }, { 88,-258 }, { 89,-258 }, { 90,-258 }, - { 91,-258 }, { 92,-258 }, { 93,-258 }, { 94, 0 }, { 95,-258 }, - { 96, 0 }, { 97,-258 }, { 98,-258 }, { 99,-258 }, { 100,-258 }, - { 101,-258 }, { 102,-258 }, { 103,-258 }, { 104,-258 }, { 105,-258 }, - - { 106,-258 }, { 107,-258 }, { 108,-258 }, { 109,-258 }, { 110,-258 }, - { 111,-258 }, { 112,-258 }, { 113,-258 }, { 114,-258 }, { 115,-258 }, - { 116,-258 }, { 117,-258 }, { 118,-258 }, { 119,-258 }, { 120,-258 }, - { 121,-258 }, { 122,-258 }, { 123,-258 }, { 124, 0 }, { 125,-258 }, - { 126, 0 }, { 127,-258 }, { 128,-258 }, { 129,-258 }, { 130,-258 }, - { 131,-258 }, { 132,-258 }, { 133,-258 }, { 134,-258 }, { 135,-258 }, - { 136,-258 }, { 137,-258 }, { 138,-258 }, { 139,-258 }, { 140,-258 }, - { 141,-258 }, { 142,-258 }, { 143,-258 }, { 144,-258 }, { 145,-258 }, - { 146,-258 }, { 147,-258 }, { 148,-258 }, { 149,-258 }, { 150,-258 }, - { 151,-258 }, { 152,-258 }, { 153,-258 }, { 154,-258 }, { 155,-258 }, - - { 156,-258 }, { 157,-258 }, { 158,-258 }, { 159,-258 }, { 160,-258 }, - { 161,-258 }, { 162,-258 }, { 163,-258 }, { 164,-258 }, { 165,-258 }, - { 166,-258 }, { 167,-258 }, { 168,-258 }, { 169,-258 }, { 170,-258 }, - { 171,-258 }, { 172,-258 }, { 173,-258 }, { 174,-258 }, { 175,-258 }, - { 176,-258 }, { 177,-258 }, { 178,-258 }, { 179,-258 }, { 180,-258 }, - { 181,-258 }, { 182,-258 }, { 183,-258 }, { 184,-258 }, { 185,-258 }, - { 186,-258 }, { 187,-258 }, { 188,-258 }, { 189,-258 }, { 190,-258 }, - { 191,-258 }, { 192,-258 }, { 193,-258 }, { 194,-258 }, { 195,-258 }, - { 196,-258 }, { 197,-258 }, { 198,-258 }, { 199,-258 }, { 200,-258 }, - { 201,-258 }, { 202,-258 }, { 203,-258 }, { 204,-258 }, { 205,-258 }, - - { 206,-258 }, { 207,-258 }, { 208,-258 }, { 209,-258 }, { 210,-258 }, - { 211,-258 }, { 212,-258 }, { 213,-258 }, { 214,-258 }, { 215,-258 }, - { 216,-258 }, { 217,-258 }, { 218,-258 }, { 219,-258 }, { 220,-258 }, - { 221,-258 }, { 222,-258 }, { 223,-258 }, { 224,-258 }, { 225,-258 }, - { 226,-258 }, { 227,-258 }, { 228,-258 }, { 229,-258 }, { 230,-258 }, - { 231,-258 }, { 232,-258 }, { 233,-258 }, { 234,-258 }, { 235,-258 }, - { 236,-258 }, { 237,-258 }, { 238,-258 }, { 239,-258 }, { 240,-258 }, - { 241,-258 }, { 242,-258 }, { 243,-258 }, { 244,-258 }, { 245,-258 }, - { 246,-258 }, { 247,-258 }, { 248,-258 }, { 249,-258 }, { 250,-258 }, - { 251,-258 }, { 252,-258 }, { 253,-258 }, { 254,-258 }, { 255,-258 }, - - { 256,-258 }, { 0, 3 }, { 0,1371 }, { 0, 58 }, { 0,1369 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 62 }, { 0,1347 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 33, 0 }, { 0, 0 }, { 35, 0 }, { 0, 0 }, { 37, 0 }, - { 38, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 42, 0 }, - { 43, 0 }, { 0, 0 }, { 45, 0 }, { 0, 0 }, { 47, 0 }, - - { 0, 0 }, { 0, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, - { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, - { 56, 0 }, { 57, 0 }, { 60, 0 }, { 61, 0 }, { 62, 0 }, - { 63, 0 }, { 64, 0 }, { 0, 60 }, { 0,1305 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 69,-3785 }, { 48, 42 }, - { 49, 42 }, { 50, 42 }, { 51, 42 }, { 52, 42 }, { 53, 42 }, - { 54, 42 }, { 55, 42 }, { 56, 42 }, { 57, 42 }, { 0, 0 }, + { 205,-11706 }, { 206,-11706 }, { 207,-11706 }, { 208,-11706 }, { 209,-11706 }, + { 210,-11706 }, { 211,-11706 }, { 212,-11706 }, { 213,-11706 }, { 214,-11706 }, + { 215,-11706 }, { 216,-11706 }, { 217,-11706 }, { 218,-11706 }, { 219,-11706 }, + { 220,-11706 }, { 221,-11706 }, { 222,-11706 }, { 223,-11706 }, { 224,-11706 }, + { 225,-11706 }, { 226,-11706 }, { 227,-11706 }, { 228,-11706 }, { 229,-11706 }, + { 230,-11706 }, { 231,-11706 }, { 232,-11706 }, { 233,-11706 }, { 234,-11706 }, + { 235,-11706 }, { 236,-11706 }, { 237,-11706 }, { 238,-11706 }, { 239,-11706 }, + { 240,-11706 }, { 241,-11706 }, { 242,-11706 }, { 243,-11706 }, { 244,-11706 }, + { 245,-11706 }, { 246,-11706 }, { 247,-11706 }, { 248,-11706 }, { 249,-11706 }, + { 250,-11706 }, { 251,-11706 }, { 252,-11706 }, { 253,-11706 }, { 254,-11706 }, + + { 255,-11706 }, { 0, 58 }, { 0,2896 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, + { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 65,1573 }, { 66,1573 }, { 67,1573 }, + { 68,1573 }, { 69,1573 }, { 70,1573 }, { 71,-11957 }, { 72,-11957 }, + { 73,-11957 }, { 74,-11957 }, { 75,-11957 }, { 76,-11957 }, { 77,-11957 }, + { 78,-11957 }, { 79,-11957 }, { 80,-11957 }, { 81,-11957 }, { 82,-11957 }, + { 83,-11957 }, { 84,-11957 }, { 85,-11957 }, { 86,-11957 }, { 87,-11957 }, + { 88,-11957 }, { 89,-11957 }, { 90,-11957 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 95,1830 }, { 0, 0 }, { 97,1573 }, + + { 98,1573 }, { 99,1573 }, { 100,1573 }, { 101,1573 }, { 102,1573 }, + { 103,-11957 }, { 104,-11957 }, { 105,-11957 }, { 106,-11957 }, { 107,-11957 }, + { 108,-11957 }, { 109,-11957 }, { 110,-11957 }, { 111,-11957 }, { 112,-11957 }, + { 113,-11957 }, { 114,-11957 }, { 115,-11957 }, { 116,-11957 }, { 117,-11957 }, + { 118,-11957 }, { 119,-11957 }, { 120,-11957 }, { 121,-11957 }, { 122,-11957 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 4 }, { 0,1279 }, - { 0, 0 }, { 94, 0 }, { 0, 0 }, { 96, 0 }, { 0, 0 }, + { 128,-11957 }, { 129,-11957 }, { 130,-11957 }, { 131,-11957 }, { 132,-11957 }, + { 133,-11957 }, { 134,-11957 }, { 135,-11957 }, { 136,-11957 }, { 137,-11957 }, + { 138,-11957 }, { 139,-11957 }, { 140,-11957 }, { 141,-11957 }, { 142,-11957 }, + { 143,-11957 }, { 144,-11957 }, { 145,-11957 }, { 146,-11957 }, { 147,-11957 }, + + { 148,-11957 }, { 149,-11957 }, { 150,-11957 }, { 151,-11957 }, { 152,-11957 }, + { 153,-11957 }, { 154,-11957 }, { 155,-11957 }, { 156,-11957 }, { 157,-11957 }, + { 158,-11957 }, { 159,-11957 }, { 160,-11957 }, { 161,-11957 }, { 162,-11957 }, + { 163,-11957 }, { 164,-11957 }, { 165,-11957 }, { 166,-11957 }, { 167,-11957 }, + { 168,-11957 }, { 169,-11957 }, { 170,-11957 }, { 171,-11957 }, { 172,-11957 }, + { 173,-11957 }, { 174,-11957 }, { 175,-11957 }, { 176,-11957 }, { 177,-11957 }, + { 178,-11957 }, { 179,-11957 }, { 180,-11957 }, { 181,-11957 }, { 182,-11957 }, + { 183,-11957 }, { 184,-11957 }, { 185,-11957 }, { 186,-11957 }, { 187,-11957 }, + { 188,-11957 }, { 189,-11957 }, { 190,-11957 }, { 191,-11957 }, { 192,-11957 }, + { 193,-11957 }, { 194,-11957 }, { 195,-11957 }, { 196,-11957 }, { 197,-11957 }, + { 198,-11957 }, { 199,-11957 }, { 200,-11957 }, { 201,-11957 }, { 202,-11957 }, + { 203,-11957 }, { 204,-11957 }, { 205,-11957 }, { 206,-11957 }, { 207,-11957 }, + { 208,-11957 }, { 209,-11957 }, { 210,-11957 }, { 211,-11957 }, { 212,-11957 }, + { 213,-11957 }, { 214,-11957 }, { 215,-11957 }, { 216,-11957 }, { 217,-11957 }, + { 218,-11957 }, { 219,-11957 }, { 220,-11957 }, { 221,-11957 }, { 222,-11957 }, + { 223,-11957 }, { 224,-11957 }, { 225,-11957 }, { 226,-11957 }, { 227,-11957 }, + { 228,-11957 }, { 229,-11957 }, { 230,-11957 }, { 231,-11957 }, { 232,-11957 }, + { 233,-11957 }, { 234,-11957 }, { 235,-11957 }, { 236,-11957 }, { 237,-11957 }, + { 238,-11957 }, { 239,-11957 }, { 240,-11957 }, { 241,-11957 }, { 242,-11957 }, + { 243,-11957 }, { 244,-11957 }, { 245,-11957 }, { 246,-11957 }, { 247,-11957 }, + + { 248,-11957 }, { 249,-11957 }, { 250,-11957 }, { 251,-11957 }, { 252,-11957 }, + { 253,-11957 }, { 254,-11957 }, { 255,-11957 }, { 0, 61 }, { 0,2639 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 101,-3785 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 30 }, { 0,1262 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, - { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, - { 57, 0 }, { 124, 0 }, { 33, 0 }, { 126, 0 }, { 35, 0 }, - { 0, 0 }, { 37, 0 }, { 38, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 42, 0 }, { 43, 0 }, { 0, 0 }, { 45, 0 }, - { 0, 0 }, { 47, 0 }, { 0, 28 }, { 0,1230 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 57 }, { 0,2601 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 60, 0 }, - { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, { 48,-9542 }, - { 49,-9542 }, { 50,-9542 }, { 51,-9542 }, { 52,-9542 }, { 53,-9542 }, - { 54,-9542 }, { 55,-9542 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 48,-257 }, { 49,-257 }, { 50,-257 }, + { 51,-257 }, { 52,-257 }, { 53,-257 }, { 54,-257 }, { 55,-257 }, + { 56,-257 }, { 57,-257 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,-257 }, + { 66,-257 }, { 67,-257 }, { 68,-257 }, { 69,-257 }, { 70,-257 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 28 }, { 0,1192 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 46,1573 }, { 0, 0 }, + { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, { 52, 0 }, + + { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, { 57, 0 }, + { 0, 0 }, { 97,-257 }, { 98,-257 }, { 99,-257 }, { 100,-257 }, + { 101,-257 }, { 102,-257 }, { 65,-12625 }, { 66,-12625 }, { 67,-12625 }, + { 68,-12625 }, { 69,-5509 }, { 70,-12625 }, { 71,-12625 }, { 72,-12625 }, + { 73,-12625 }, { 74,-12625 }, { 75,-12625 }, { 76,-12625 }, { 77,-12625 }, + { 78,-12625 }, { 79,-12625 }, { 80,-12625 }, { 81,-12625 }, { 82,-12625 }, + { 83,-12625 }, { 84,-12625 }, { 85,-12625 }, { 86,-12625 }, { 87,-12625 }, + { 88,-12625 }, { 89,-12625 }, { 90,-12625 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 95,-5468 }, { 0, 0 }, { 97,-12625 }, + { 98,-12625 }, { 99,-12625 }, { 100,-12625 }, { 101,-5509 }, { 102,-12625 }, + + { 103,-12625 }, { 104,-12625 }, { 105,-12625 }, { 106,-12625 }, { 107,-12625 }, + { 108,-12625 }, { 109,-12625 }, { 110,-12625 }, { 111,-12625 }, { 112,-12625 }, + { 113,-12625 }, { 114,-12625 }, { 115,-12625 }, { 116,-12625 }, { 117,-12625 }, + { 118,-12625 }, { 119,-12625 }, { 120,-12625 }, { 121,-12625 }, { 122,-12625 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 128,-12625 }, { 129,-12625 }, { 130,-12625 }, { 131,-12625 }, { 132,-12625 }, + { 133,-12625 }, { 134,-12625 }, { 135,-12625 }, { 136,-12625 }, { 137,-12625 }, + { 138,-12625 }, { 139,-12625 }, { 140,-12625 }, { 141,-12625 }, { 142,-12625 }, + { 143,-12625 }, { 144,-12625 }, { 145,-12625 }, { 146,-12625 }, { 147,-12625 }, + { 148,-12625 }, { 149,-12625 }, { 150,-12625 }, { 151,-12625 }, { 152,-12625 }, + + { 153,-12625 }, { 154,-12625 }, { 155,-12625 }, { 156,-12625 }, { 157,-12625 }, + { 158,-12625 }, { 159,-12625 }, { 160,-12625 }, { 161,-12625 }, { 162,-12625 }, + { 163,-12625 }, { 164,-12625 }, { 165,-12625 }, { 166,-12625 }, { 167,-12625 }, + { 168,-12625 }, { 169,-12625 }, { 170,-12625 }, { 171,-12625 }, { 172,-12625 }, + { 173,-12625 }, { 174,-12625 }, { 175,-12625 }, { 176,-12625 }, { 177,-12625 }, + { 178,-12625 }, { 179,-12625 }, { 180,-12625 }, { 181,-12625 }, { 182,-12625 }, + { 183,-12625 }, { 184,-12625 }, { 185,-12625 }, { 186,-12625 }, { 187,-12625 }, + { 188,-12625 }, { 189,-12625 }, { 190,-12625 }, { 191,-12625 }, { 192,-12625 }, + { 193,-12625 }, { 194,-12625 }, { 195,-12625 }, { 196,-12625 }, { 197,-12625 }, + { 198,-12625 }, { 199,-12625 }, { 200,-12625 }, { 201,-12625 }, { 202,-12625 }, + + { 203,-12625 }, { 204,-12625 }, { 205,-12625 }, { 206,-12625 }, { 207,-12625 }, + { 208,-12625 }, { 209,-12625 }, { 210,-12625 }, { 211,-12625 }, { 212,-12625 }, + { 213,-12625 }, { 214,-12625 }, { 215,-12625 }, { 216,-12625 }, { 217,-12625 }, + { 218,-12625 }, { 219,-12625 }, { 220,-12625 }, { 221,-12625 }, { 222,-12625 }, + { 223,-12625 }, { 224,-12625 }, { 225,-12625 }, { 226,-12625 }, { 227,-12625 }, + { 228,-12625 }, { 229,-12625 }, { 230,-12625 }, { 231,-12625 }, { 232,-12625 }, + { 233,-12625 }, { 234,-12625 }, { 235,-12625 }, { 236,-12625 }, { 237,-12625 }, + { 238,-12625 }, { 239,-12625 }, { 240,-12625 }, { 241,-12625 }, { 242,-12625 }, + { 243,-12625 }, { 244,-12625 }, { 245,-12625 }, { 246,-12625 }, { 247,-12625 }, + { 248,-12625 }, { 249,-12625 }, { 250,-12625 }, { 251,-12625 }, { 252,-12625 }, + + { 253,-12625 }, { 254,-12625 }, { 255,-12625 }, { 0, 4 }, { 0,2344 }, + { 0, 30 }, { 0,2342 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 28 }, { 0,2327 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 33, 0 }, { 0, 0 }, { 35, 0 }, + { 0, 0 }, { 37, 0 }, { 38, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 42, 0 }, { 43, 0 }, { 0, 0 }, { 45, 0 }, + + { 0, 0 }, { 47, 0 }, { 0, 0 }, { 0, 0 }, { 48,-12509 }, + { 49,-12509 }, { 50,-12509 }, { 51,-12509 }, { 52,-12509 }, { 53,-12509 }, + { 54,-12509 }, { 55,-12509 }, { 0, 0 }, { 0, 0 }, { 60, 0 }, + { 61, 0 }, { 62, 0 }, { 63, 0 }, { 64, 0 }, { 48,1556 }, + { 49,1556 }, { 50,1556 }, { 51,1556 }, { 52,1556 }, { 53,1556 }, + { 54,1556 }, { 55,1556 }, { 56,1556 }, { 57,1556 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0,2265 }, { 0, 0 }, + { 0, 0 }, { 65,1556 }, { 66,1556 }, { 67,1556 }, { 68,1556 }, + { 69,1556 }, { 70,1556 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 94, 0 }, { 0, 0 }, - { 96, 0 }, { 48, 438 }, { 49, 438 }, { 50, 438 }, { 51, 438 }, - { 52, 438 }, { 53, 438 }, { 54, 438 }, { 55, 438 }, { 56, 438 }, - { 57, 438 }, { 0, 0 }, { 0, 0 }, { 0, 31 }, { 0,1169 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 438 }, { 66, 438 }, - { 67, 438 }, { 68, 438 }, { 69, 438 }, { 70, 438 }, { 0, 0 }, + { 96, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 31 }, { 0,2242 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,1556 }, { 98,1556 }, + { 99,1556 }, { 100,1556 }, { 101,1556 }, { 102,1556 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 124, 0 }, { 0, 0 }, - { 126, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 423 }, - { 49, 423 }, { 50, 423 }, { 51, 423 }, { 52, 423 }, { 53, 423 }, - { 54, 423 }, { 55, 423 }, { 56, 423 }, { 57, 423 }, { 0, 0 }, - { 97, 438 }, { 98, 438 }, { 99, 438 }, { 100, 438 }, { 101, 438 }, - { 102, 438 }, { 65, 423 }, { 66, 423 }, { 67, 423 }, { 68, 423 }, - - { 69, 423 }, { 70, 423 }, { 48,-9621 }, { 49,-9621 }, { 50,-9621 }, - { 51,-9621 }, { 52,-9621 }, { 53,-9621 }, { 54,-9621 }, { 55,-9621 }, - { 56,-9621 }, { 57,-9621 }, { 0, 37 }, { 0,1110 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,-9621 }, - { 66,-9621 }, { 67,-9621 }, { 68,-9621 }, { 69,-9621 }, { 70,-9621 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 423 }, { 98, 423 }, - { 99, 423 }, { 100, 423 }, { 101, 423 }, { 102, 423 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 36,-9721 }, - - { 0, 0 }, { 97,-9621 }, { 98,-9621 }, { 99,-9621 }, { 100,-9621 }, - { 101,-9621 }, { 102,-9621 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, - { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, - { 57, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 0 }, { 66, 0 }, - { 67, 0 }, { 68, 0 }, { 69, 0 }, { 70, 0 }, { 71, 0 }, - { 72, 0 }, { 73, 0 }, { 74, 0 }, { 75, 0 }, { 76, 0 }, - { 77, 0 }, { 78, 0 }, { 79, 0 }, { 80, 0 }, { 81, 0 }, - { 82, 0 }, { 83, 0 }, { 84, 0 }, { 85, 0 }, { 86, 0 }, + { 126, 0 }, { 48,1517 }, { 49,1517 }, { 50,1517 }, { 51,1517 }, + { 52,1517 }, { 53,1517 }, { 54,1517 }, { 55,1517 }, { 56,1517 }, + { 57,1517 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,1517 }, { 66,1517 }, - { 87, 0 }, { 88, 0 }, { 89, 0 }, { 90, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95, 0 }, { 0, 0 }, - { 97, 0 }, { 98, 0 }, { 99, 0 }, { 100, 0 }, { 101, 0 }, - { 102, 0 }, { 103, 0 }, { 104, 0 }, { 105, 0 }, { 106, 0 }, - { 107, 0 }, { 108, 0 }, { 109, 0 }, { 110, 0 }, { 111, 0 }, - { 112, 0 }, { 113, 0 }, { 114, 0 }, { 115, 0 }, { 116, 0 }, - { 117, 0 }, { 118, 0 }, { 119, 0 }, { 120, 0 }, { 121, 0 }, - { 122, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 128, 0 }, { 129, 0 }, { 130, 0 }, { 131, 0 }, - { 132, 0 }, { 133, 0 }, { 134, 0 }, { 135, 0 }, { 136, 0 }, + { 67,1517 }, { 68,1517 }, { 69,1517 }, { 70,1517 }, { 48,-12598 }, + { 49,-12598 }, { 50,-12598 }, { 51,-12598 }, { 52,-12598 }, { 53,-12598 }, + { 54,-12598 }, { 55,-12598 }, { 56,-12598 }, { 57,-12598 }, { 0, 37 }, + { 0,2183 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 65,-12598 }, { 66,-12598 }, { 67,-12598 }, { 68,-12598 }, + { 69,-12598 }, { 70,-12598 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 97,1517 }, { 98,1517 }, { 99,1517 }, { 100,1517 }, { 101,1517 }, + { 102,1517 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 137, 0 }, { 138, 0 }, { 139, 0 }, { 140, 0 }, { 141, 0 }, - { 142, 0 }, { 143, 0 }, { 144, 0 }, { 145, 0 }, { 146, 0 }, - { 147, 0 }, { 148, 0 }, { 149, 0 }, { 150, 0 }, { 151, 0 }, - { 152, 0 }, { 153, 0 }, { 154, 0 }, { 155, 0 }, { 156, 0 }, - { 157, 0 }, { 158, 0 }, { 159, 0 }, { 160, 0 }, { 161, 0 }, - { 162, 0 }, { 163, 0 }, { 164, 0 }, { 165, 0 }, { 166, 0 }, - { 167, 0 }, { 168, 0 }, { 169, 0 }, { 170, 0 }, { 171, 0 }, - { 172, 0 }, { 173, 0 }, { 174, 0 }, { 175, 0 }, { 176, 0 }, - { 177, 0 }, { 178, 0 }, { 179, 0 }, { 180, 0 }, { 181, 0 }, - { 182, 0 }, { 183, 0 }, { 184, 0 }, { 185, 0 }, { 186, 0 }, + { 0, 0 }, { 36,-12709 }, { 0, 0 }, { 97,-12598 }, { 98,-12598 }, + { 99,-12598 }, { 100,-12598 }, { 101,-12598 }, { 102,-12598 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 0 }, { 49, 0 }, + { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, + { 55, 0 }, { 56, 0 }, { 57, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, { 69, 0 }, + { 70, 0 }, { 71, 0 }, { 72, 0 }, { 73, 0 }, { 74, 0 }, + { 75, 0 }, { 76, 0 }, { 77, 0 }, { 78, 0 }, { 79, 0 }, + { 80, 0 }, { 81, 0 }, { 82, 0 }, { 83, 0 }, { 84, 0 }, - { 187, 0 }, { 188, 0 }, { 189, 0 }, { 190, 0 }, { 191, 0 }, - { 192, 0 }, { 193, 0 }, { 194, 0 }, { 195, 0 }, { 196, 0 }, - { 197, 0 }, { 198, 0 }, { 199, 0 }, { 200, 0 }, { 201, 0 }, - { 202, 0 }, { 203, 0 }, { 204, 0 }, { 205, 0 }, { 206, 0 }, - { 207, 0 }, { 208, 0 }, { 209, 0 }, { 210, 0 }, { 211, 0 }, - { 212, 0 }, { 213, 0 }, { 214, 0 }, { 215, 0 }, { 216, 0 }, - { 217, 0 }, { 218, 0 }, { 219, 0 }, { 220, 0 }, { 221, 0 }, - { 222, 0 }, { 223, 0 }, { 224, 0 }, { 225, 0 }, { 226, 0 }, - { 227, 0 }, { 228, 0 }, { 229, 0 }, { 230, 0 }, { 231, 0 }, - { 232, 0 }, { 233, 0 }, { 234, 0 }, { 235, 0 }, { 236, 0 }, + { 85, 0 }, { 86, 0 }, { 87, 0 }, { 88, 0 }, { 89, 0 }, + { 90, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 95, 0 }, { 0, 0 }, { 97, 0 }, { 98, 0 }, { 99, 0 }, + { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103, 0 }, { 104, 0 }, + { 105, 0 }, { 106, 0 }, { 107, 0 }, { 108, 0 }, { 109, 0 }, + { 110, 0 }, { 111, 0 }, { 112, 0 }, { 113, 0 }, { 114, 0 }, + { 115, 0 }, { 116, 0 }, { 117, 0 }, { 118, 0 }, { 119, 0 }, + { 120, 0 }, { 121, 0 }, { 122, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128, 0 }, { 129, 0 }, + { 130, 0 }, { 131, 0 }, { 132, 0 }, { 133, 0 }, { 134, 0 }, - { 237, 0 }, { 238, 0 }, { 239, 0 }, { 240, 0 }, { 241, 0 }, - { 242, 0 }, { 243, 0 }, { 244, 0 }, { 245, 0 }, { 246, 0 }, - { 247, 0 }, { 248, 0 }, { 249, 0 }, { 250, 0 }, { 251, 0 }, - { 252, 0 }, { 253, 0 }, { 254, 0 }, { 255, 0 }, { 0, 28 }, - { 0, 853 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 135, 0 }, { 136, 0 }, { 137, 0 }, { 138, 0 }, { 139, 0 }, + { 140, 0 }, { 141, 0 }, { 142, 0 }, { 143, 0 }, { 144, 0 }, + { 145, 0 }, { 146, 0 }, { 147, 0 }, { 148, 0 }, { 149, 0 }, + { 150, 0 }, { 151, 0 }, { 152, 0 }, { 153, 0 }, { 154, 0 }, + { 155, 0 }, { 156, 0 }, { 157, 0 }, { 158, 0 }, { 159, 0 }, + { 160, 0 }, { 161, 0 }, { 162, 0 }, { 163, 0 }, { 164, 0 }, + { 165, 0 }, { 166, 0 }, { 167, 0 }, { 168, 0 }, { 169, 0 }, + { 170, 0 }, { 171, 0 }, { 172, 0 }, { 173, 0 }, { 174, 0 }, + { 175, 0 }, { 176, 0 }, { 177, 0 }, { 178, 0 }, { 179, 0 }, + { 180, 0 }, { 181, 0 }, { 182, 0 }, { 183, 0 }, { 184, 0 }, + + { 185, 0 }, { 186, 0 }, { 187, 0 }, { 188, 0 }, { 189, 0 }, + { 190, 0 }, { 191, 0 }, { 192, 0 }, { 193, 0 }, { 194, 0 }, + { 195, 0 }, { 196, 0 }, { 197, 0 }, { 198, 0 }, { 199, 0 }, + { 200, 0 }, { 201, 0 }, { 202, 0 }, { 203, 0 }, { 204, 0 }, + { 205, 0 }, { 206, 0 }, { 207, 0 }, { 208, 0 }, { 209, 0 }, + { 210, 0 }, { 211, 0 }, { 212, 0 }, { 213, 0 }, { 214, 0 }, + { 215, 0 }, { 216, 0 }, { 217, 0 }, { 218, 0 }, { 219, 0 }, + { 220, 0 }, { 221, 0 }, { 222, 0 }, { 223, 0 }, { 224, 0 }, + { 225, 0 }, { 226, 0 }, { 227, 0 }, { 228, 0 }, { 229, 0 }, + { 230, 0 }, { 231, 0 }, { 232, 0 }, { 233, 0 }, { 234, 0 }, + + { 235, 0 }, { 236, 0 }, { 237, 0 }, { 238, 0 }, { 239, 0 }, + { 240, 0 }, { 241, 0 }, { 242, 0 }, { 243, 0 }, { 244, 0 }, + { 245, 0 }, { 246, 0 }, { 247, 0 }, { 248, 0 }, { 249, 0 }, + { 250, 0 }, { 251, 0 }, { 252, 0 }, { 253, 0 }, { 254, 0 }, + { 255, 0 }, { 0, 28 }, { 0,1926 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0, 830 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, + { 0,1903 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 143 }, { 49, 143 }, - { 50, 143 }, { 51, 143 }, { 52, 143 }, { 53, 143 }, { 54, 143 }, - { 55, 143 }, { 56, 143 }, { 57, 143 }, { 0, 0 }, { 0, 0 }, - { 0, 28 }, { 0, 792 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 65, 143 }, { 66, 143 }, { 67, 143 }, { 68, 143 }, { 69, 143 }, - { 70, 143 }, { 48, 143 }, { 49, 143 }, { 50, 143 }, { 51, 143 }, - { 52, 143 }, { 53, 143 }, { 54, 143 }, { 55, 143 }, { 56, 143 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 48,1216 }, { 49,1216 }, { 50,1216 }, { 51,1216 }, { 52,1216 }, + { 53,1216 }, { 54,1216 }, { 55,1216 }, { 56,1216 }, { 57,1216 }, + { 0, 0 }, { 0, 0 }, { 0, 64 }, { 0,1865 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 65,1216 }, { 66,1216 }, { 67,1216 }, + { 68,1216 }, { 69,1216 }, { 70,1216 }, { 48,1216 }, { 49,1216 }, + { 50,1216 }, { 51,1216 }, { 52,1216 }, { 53,1216 }, { 54,1216 }, - { 57, 143 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0, 769 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 143 }, { 66, 143 }, - { 67, 143 }, { 68, 143 }, { 69, 143 }, { 70, 143 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 97, 143 }, { 98, 143 }, { 99, 143 }, - { 100, 143 }, { 101, 143 }, { 102, 143 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 143 }, - { 49, 143 }, { 50, 143 }, { 51, 143 }, { 52, 143 }, { 53, 143 }, - { 54, 143 }, { 55, 143 }, { 56, 143 }, { 57, 143 }, { 0, 0 }, - { 97, 143 }, { 98, 143 }, { 99, 143 }, { 100, 143 }, { 101, 143 }, - { 102, 143 }, { 65, 143 }, { 66, 143 }, { 67, 143 }, { 68, 143 }, + { 55,1216 }, { 56,1216 }, { 57,1216 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 65,1216 }, { 66,1216 }, { 67,1216 }, { 68,1216 }, { 69,1216 }, + { 70,1216 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,1216 }, + { 98,1216 }, { 99,1216 }, { 100,1216 }, { 101,1216 }, { 102,1216 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 48, 0 }, { 49, 0 }, { 50, 0 }, { 51, 0 }, + { 52, 0 }, { 53, 0 }, { 54, 0 }, { 55, 0 }, { 56, 0 }, + { 57, 0 }, { 0, 0 }, { 97,1216 }, { 98,1216 }, { 99,1216 }, + { 100,1216 }, { 101,1216 }, { 102,1216 }, { 65,-13025 }, { 66,-13025 }, + + { 67,-13025 }, { 68,-13025 }, { 69,-2160 }, { 70,-13025 }, { 71,-13025 }, + { 72,-13025 }, { 73,-13025 }, { 74,-13025 }, { 75,-13025 }, { 76,-13025 }, + { 77,-13025 }, { 78,-13025 }, { 79,-13025 }, { 80,-13025 }, { 81,-13025 }, + { 82,-13025 }, { 83,-13025 }, { 84,-13025 }, { 85,-13025 }, { 86,-13025 }, + { 87,-13025 }, { 88,-13025 }, { 89,-13025 }, { 90,-13025 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 95, 257 }, { 0, 0 }, + { 97,-13025 }, { 98,-13025 }, { 99,-13025 }, { 100,-13025 }, { 101,-2160 }, + { 102,-13025 }, { 103,-13025 }, { 104,-13025 }, { 105,-13025 }, { 106,-13025 }, + { 107,-13025 }, { 108,-13025 }, { 109,-13025 }, { 110,-13025 }, { 111,-13025 }, + { 112,-13025 }, { 113,-13025 }, { 114,-13025 }, { 115,-13025 }, { 116,-13025 }, + + { 117,-13025 }, { 118,-13025 }, { 119,-13025 }, { 120,-13025 }, { 121,-13025 }, + { 122,-13025 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 128,-13025 }, { 129,-13025 }, { 130,-13025 }, { 131,-13025 }, + { 132,-13025 }, { 133,-13025 }, { 134,-13025 }, { 135,-13025 }, { 136,-13025 }, + { 137,-13025 }, { 138,-13025 }, { 139,-13025 }, { 140,-13025 }, { 141,-13025 }, + { 142,-13025 }, { 143,-13025 }, { 144,-13025 }, { 145,-13025 }, { 146,-13025 }, + { 147,-13025 }, { 148,-13025 }, { 149,-13025 }, { 150,-13025 }, { 151,-13025 }, + { 152,-13025 }, { 153,-13025 }, { 154,-13025 }, { 155,-13025 }, { 156,-13025 }, + { 157,-13025 }, { 158,-13025 }, { 159,-13025 }, { 160,-13025 }, { 161,-13025 }, + { 162,-13025 }, { 163,-13025 }, { 164,-13025 }, { 165,-13025 }, { 166,-13025 }, + + { 167,-13025 }, { 168,-13025 }, { 169,-13025 }, { 170,-13025 }, { 171,-13025 }, + { 172,-13025 }, { 173,-13025 }, { 174,-13025 }, { 175,-13025 }, { 176,-13025 }, + { 177,-13025 }, { 178,-13025 }, { 179,-13025 }, { 180,-13025 }, { 181,-13025 }, + { 182,-13025 }, { 183,-13025 }, { 184,-13025 }, { 185,-13025 }, { 186,-13025 }, + { 187,-13025 }, { 188,-13025 }, { 189,-13025 }, { 190,-13025 }, { 191,-13025 }, + { 192,-13025 }, { 193,-13025 }, { 194,-13025 }, { 195,-13025 }, { 196,-13025 }, + { 197,-13025 }, { 198,-13025 }, { 199,-13025 }, { 200,-13025 }, { 201,-13025 }, + { 202,-13025 }, { 203,-13025 }, { 204,-13025 }, { 205,-13025 }, { 206,-13025 }, + { 207,-13025 }, { 208,-13025 }, { 209,-13025 }, { 210,-13025 }, { 211,-13025 }, + { 212,-13025 }, { 213,-13025 }, { 214,-13025 }, { 215,-13025 }, { 216,-13025 }, + + { 217,-13025 }, { 218,-13025 }, { 219,-13025 }, { 220,-13025 }, { 221,-13025 }, + { 222,-13025 }, { 223,-13025 }, { 224,-13025 }, { 225,-13025 }, { 226,-13025 }, + { 227,-13025 }, { 228,-13025 }, { 229,-13025 }, { 230,-13025 }, { 231,-13025 }, + { 232,-13025 }, { 233,-13025 }, { 234,-13025 }, { 235,-13025 }, { 236,-13025 }, + { 237,-13025 }, { 238,-13025 }, { 239,-13025 }, { 240,-13025 }, { 241,-13025 }, + { 242,-13025 }, { 243,-13025 }, { 244,-13025 }, { 245,-13025 }, { 246,-13025 }, + { 247,-13025 }, { 248,-13025 }, { 249,-13025 }, { 250,-13025 }, { 251,-13025 }, + { 252,-13025 }, { 253,-13025 }, { 254,-13025 }, { 255,-13025 }, { 0, 72 }, + { 0,1608 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 66 }, + + { 0,1598 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,-257 }, { 49,-257 }, + { 50,-257 }, { 51,-257 }, { 52,-257 }, { 53,-257 }, { 54,-257 }, + { 55,-257 }, { 56,-257 }, { 57,-257 }, { 48, 0 }, { 49, 0 }, - { 69, 143 }, { 70, 143 }, { 48, 143 }, { 49, 143 }, { 50, 143 }, - { 51, 143 }, { 52, 143 }, { 53, 143 }, { 54, 143 }, { 55, 143 }, - { 56, 143 }, { 57, 143 }, { 0, 28 }, { 0, 710 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 143 }, - { 66, 143 }, { 67, 143 }, { 68, 143 }, { 69, 143 }, { 70, 143 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 143 }, { 98, 143 }, - { 99, 143 }, { 100, 143 }, { 101, 143 }, { 102, 143 }, { 0, 0 }, - { 0, 28 }, { 0, 687 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 50, 0 }, { 51, 0 }, { 52, 0 }, { 53, 0 }, { 54, 0 }, + { 55, 0 }, { 56, 0 }, { 57, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 65,-13263 }, { 66,-13263 }, { 67,-13263 }, { 68,-13263 }, { 69,-13263 }, + { 70,-13263 }, { 71,-13263 }, { 72,-13263 }, { 73,-13263 }, { 74,-13263 }, + { 75,-13263 }, { 76,-13263 }, { 77,-13263 }, { 78,-13263 }, { 79,-13263 }, + { 80,-13263 }, { 81,-13263 }, { 82,-13263 }, { 83,-13263 }, { 84,-13263 }, + { 85,-13263 }, { 86,-13263 }, { 87,-13263 }, { 88,-13263 }, { 89,-13263 }, + { 90,-13263 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 95, 257 }, { 0, 0 }, { 97,-13263 }, { 98,-13263 }, { 99,-13263 }, + + { 100,-13263 }, { 101,-13263 }, { 102,-13263 }, { 103,-13263 }, { 104,-13263 }, + { 105,-13263 }, { 106,-13263 }, { 107,-13263 }, { 108,-13263 }, { 109,-13263 }, + { 110,-13263 }, { 111,-13263 }, { 112,-13263 }, { 113,-13263 }, { 114,-13263 }, + { 115,-13263 }, { 116,-13263 }, { 117,-13263 }, { 118,-13263 }, { 119,-13263 }, + { 120,-13263 }, { 121,-13263 }, { 122,-13263 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,-13263 }, { 129,-13263 }, + { 130,-13263 }, { 131,-13263 }, { 132,-13263 }, { 133,-13263 }, { 134,-13263 }, + { 135,-13263 }, { 136,-13263 }, { 137,-13263 }, { 138,-13263 }, { 139,-13263 }, + { 140,-13263 }, { 141,-13263 }, { 142,-13263 }, { 143,-13263 }, { 144,-13263 }, + { 145,-13263 }, { 146,-13263 }, { 147,-13263 }, { 148,-13263 }, { 149,-13263 }, + + { 150,-13263 }, { 151,-13263 }, { 152,-13263 }, { 153,-13263 }, { 154,-13263 }, + { 155,-13263 }, { 156,-13263 }, { 157,-13263 }, { 158,-13263 }, { 159,-13263 }, + { 160,-13263 }, { 161,-13263 }, { 162,-13263 }, { 163,-13263 }, { 164,-13263 }, + { 165,-13263 }, { 166,-13263 }, { 167,-13263 }, { 168,-13263 }, { 169,-13263 }, + { 170,-13263 }, { 171,-13263 }, { 172,-13263 }, { 173,-13263 }, { 174,-13263 }, + { 175,-13263 }, { 176,-13263 }, { 177,-13263 }, { 178,-13263 }, { 179,-13263 }, + { 180,-13263 }, { 181,-13263 }, { 182,-13263 }, { 183,-13263 }, { 184,-13263 }, + { 185,-13263 }, { 186,-13263 }, { 187,-13263 }, { 188,-13263 }, { 189,-13263 }, + { 190,-13263 }, { 191,-13263 }, { 192,-13263 }, { 193,-13263 }, { 194,-13263 }, + { 195,-13263 }, { 196,-13263 }, { 197,-13263 }, { 198,-13263 }, { 199,-13263 }, + + { 200,-13263 }, { 201,-13263 }, { 202,-13263 }, { 203,-13263 }, { 204,-13263 }, + { 205,-13263 }, { 206,-13263 }, { 207,-13263 }, { 208,-13263 }, { 209,-13263 }, + { 210,-13263 }, { 211,-13263 }, { 212,-13263 }, { 213,-13263 }, { 214,-13263 }, + { 215,-13263 }, { 216,-13263 }, { 217,-13263 }, { 218,-13263 }, { 219,-13263 }, + { 220,-13263 }, { 221,-13263 }, { 222,-13263 }, { 223,-13263 }, { 224,-13263 }, + { 225,-13263 }, { 226,-13263 }, { 227,-13263 }, { 228,-13263 }, { 229,-13263 }, + { 230,-13263 }, { 231,-13263 }, { 232,-13263 }, { 233,-13263 }, { 234,-13263 }, + { 235,-13263 }, { 236,-13263 }, { 237,-13263 }, { 238,-13263 }, { 239,-13263 }, + { 240,-13263 }, { 241,-13263 }, { 242,-13263 }, { 243,-13263 }, { 244,-13263 }, + { 245,-13263 }, { 246,-13263 }, { 247,-13263 }, { 248,-13263 }, { 249,-13263 }, + + { 250,-13263 }, { 251,-13263 }, { 252,-13263 }, { 253,-13263 }, { 254,-13263 }, + { 255,-13263 }, { 0, 73 }, { 0,1341 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 70 }, { 0,1331 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 58 }, + { 0,1323 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 48,-257 }, { 49,-257 }, { 50,-257 }, { 51,-257 }, { 52,-257 }, + { 53,-257 }, { 54,-257 }, { 55,-257 }, { 56,-257 }, { 57,-257 }, + { 48,-1822 }, { 49,-1822 }, { 50,-1822 }, { 51,-1822 }, { 52,-1822 }, + { 53,-1822 }, { 54,-1822 }, { 55,-1822 }, { 48,-1573 }, { 49,-1573 }, + { 50,-1573 }, { 51,-1573 }, { 52,-1573 }, { 53,-1573 }, { 54,-1573 }, + { 55,-1573 }, { 56,-1573 }, { 57,-1573 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 65, 0 }, { 66, 0 }, { 67, 0 }, { 68, 0 }, { 69, 0 }, + { 70, 0 }, { 71,-13530 }, { 72,-13530 }, { 73,-13530 }, { 74,-13530 }, + + { 75,-13530 }, { 76,-13530 }, { 77,-13530 }, { 78,-13530 }, { 79,-13530 }, + { 80,-13530 }, { 81,-13530 }, { 82,-13530 }, { 83,-13530 }, { 84,-13530 }, + { 85,-13530 }, { 86,-13530 }, { 87,-13530 }, { 88,-13530 }, { 89,-13530 }, + { 90,-13530 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 95, 257 }, { 0, 0 }, { 97, 0 }, { 98, 0 }, { 99, 0 }, + { 100, 0 }, { 101, 0 }, { 102, 0 }, { 103,-13530 }, { 104,-13530 }, + { 105,-13530 }, { 106,-13530 }, { 107,-13530 }, { 108,-13530 }, { 109,-13530 }, + { 110,-13530 }, { 111,-13530 }, { 112,-13530 }, { 113,-13530 }, { 114,-13530 }, + { 115,-13530 }, { 116,-13530 }, { 117,-13530 }, { 118,-13530 }, { 119,-13530 }, + { 120,-13530 }, { 121,-13530 }, { 122,-13530 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,-13530 }, { 129,-13530 }, + { 130,-13530 }, { 131,-13530 }, { 132,-13530 }, { 133,-13530 }, { 134,-13530 }, + { 135,-13530 }, { 136,-13530 }, { 137,-13530 }, { 138,-13530 }, { 139,-13530 }, + { 140,-13530 }, { 141,-13530 }, { 142,-13530 }, { 143,-13530 }, { 144,-13530 }, + { 145,-13530 }, { 146,-13530 }, { 147,-13530 }, { 148,-13530 }, { 149,-13530 }, + { 150,-13530 }, { 151,-13530 }, { 152,-13530 }, { 153,-13530 }, { 154,-13530 }, + { 155,-13530 }, { 156,-13530 }, { 157,-13530 }, { 158,-13530 }, { 159,-13530 }, + { 160,-13530 }, { 161,-13530 }, { 162,-13530 }, { 163,-13530 }, { 164,-13530 }, + { 165,-13530 }, { 166,-13530 }, { 167,-13530 }, { 168,-13530 }, { 169,-13530 }, + { 170,-13530 }, { 171,-13530 }, { 172,-13530 }, { 173,-13530 }, { 174,-13530 }, + + { 175,-13530 }, { 176,-13530 }, { 177,-13530 }, { 178,-13530 }, { 179,-13530 }, + { 180,-13530 }, { 181,-13530 }, { 182,-13530 }, { 183,-13530 }, { 184,-13530 }, + { 185,-13530 }, { 186,-13530 }, { 187,-13530 }, { 188,-13530 }, { 189,-13530 }, + { 190,-13530 }, { 191,-13530 }, { 192,-13530 }, { 193,-13530 }, { 194,-13530 }, + { 195,-13530 }, { 196,-13530 }, { 197,-13530 }, { 198,-13530 }, { 199,-13530 }, + { 200,-13530 }, { 201,-13530 }, { 202,-13530 }, { 203,-13530 }, { 204,-13530 }, + { 205,-13530 }, { 206,-13530 }, { 207,-13530 }, { 208,-13530 }, { 209,-13530 }, + { 210,-13530 }, { 211,-13530 }, { 212,-13530 }, { 213,-13530 }, { 214,-13530 }, + { 215,-13530 }, { 216,-13530 }, { 217,-13530 }, { 218,-13530 }, { 219,-13530 }, + { 220,-13530 }, { 221,-13530 }, { 222,-13530 }, { 223,-13530 }, { 224,-13530 }, + + { 225,-13530 }, { 226,-13530 }, { 227,-13530 }, { 228,-13530 }, { 229,-13530 }, + { 230,-13530 }, { 231,-13530 }, { 232,-13530 }, { 233,-13530 }, { 234,-13530 }, + { 235,-13530 }, { 236,-13530 }, { 237,-13530 }, { 238,-13530 }, { 239,-13530 }, + { 240,-13530 }, { 241,-13530 }, { 242,-13530 }, { 243,-13530 }, { 244,-13530 }, + { 245,-13530 }, { 246,-13530 }, { 247,-13530 }, { 248,-13530 }, { 249,-13530 }, + { 250,-13530 }, { 251,-13530 }, { 252,-13530 }, { 253,-13530 }, { 254,-13530 }, + { 255,-13530 }, { 0, 69 }, { 0,1066 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 64 }, + { 0,1028 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 48,-1830 }, { 49,-1830 }, { 50,-1830 }, { 51,-1830 }, { 52,-1830 }, + { 53,-1830 }, { 54,-1830 }, { 55,-1830 }, { 56,-1830 }, { 57,-1830 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 65,-1830 }, { 66,-1830 }, { 67,-1830 }, + + { 68,-1830 }, { 69,-1830 }, { 70,-1830 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48,-2896 }, { 49,-2896 }, + { 50,-2896 }, { 51,-2896 }, { 52,-2896 }, { 53,-2896 }, { 54,-2896 }, + { 55,-2896 }, { 56,-2896 }, { 57,-2896 }, { 0, 0 }, { 97,-1830 }, + { 98,-1830 }, { 99,-1830 }, { 100,-1830 }, { 101,-1830 }, { 102,-1830 }, + { 65,-13862 }, { 66,-13862 }, { 67,-13862 }, { 68,-13862 }, { 69,-2997 }, + { 70,-13862 }, { 71,-13862 }, { 72,-13862 }, { 73,-13862 }, { 74,-13862 }, + { 75,-13862 }, { 76,-13862 }, { 77,-13862 }, { 78,-13862 }, { 79,-13862 }, + + { 80,-13862 }, { 81,-13862 }, { 82,-13862 }, { 83,-13862 }, { 84,-13862 }, + { 85,-13862 }, { 86,-13862 }, { 87,-13862 }, { 88,-13862 }, { 89,-13862 }, + { 90,-13862 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 95,-13862 }, { 0, 0 }, { 97,-13862 }, { 98,-13862 }, { 99,-13862 }, + { 100,-13862 }, { 101,-2997 }, { 102,-13862 }, { 103,-13862 }, { 104,-13862 }, + { 105,-13862 }, { 106,-13862 }, { 107,-13862 }, { 108,-13862 }, { 109,-13862 }, + { 110,-13862 }, { 111,-13862 }, { 112,-13862 }, { 113,-13862 }, { 114,-13862 }, + { 115,-13862 }, { 116,-13862 }, { 117,-13862 }, { 118,-13862 }, { 119,-13862 }, + { 120,-13862 }, { 121,-13862 }, { 122,-13862 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 128,-13862 }, { 129,-13862 }, + + { 130,-13862 }, { 131,-13862 }, { 132,-13862 }, { 133,-13862 }, { 134,-13862 }, + { 135,-13862 }, { 136,-13862 }, { 137,-13862 }, { 138,-13862 }, { 139,-13862 }, + { 140,-13862 }, { 141,-13862 }, { 142,-13862 }, { 143,-13862 }, { 144,-13862 }, + { 145,-13862 }, { 146,-13862 }, { 147,-13862 }, { 148,-13862 }, { 149,-13862 }, + { 150,-13862 }, { 151,-13862 }, { 152,-13862 }, { 153,-13862 }, { 154,-13862 }, + { 155,-13862 }, { 156,-13862 }, { 157,-13862 }, { 158,-13862 }, { 159,-13862 }, + { 160,-13862 }, { 161,-13862 }, { 162,-13862 }, { 163,-13862 }, { 164,-13862 }, + { 165,-13862 }, { 166,-13862 }, { 167,-13862 }, { 168,-13862 }, { 169,-13862 }, + { 170,-13862 }, { 171,-13862 }, { 172,-13862 }, { 173,-13862 }, { 174,-13862 }, + { 175,-13862 }, { 176,-13862 }, { 177,-13862 }, { 178,-13862 }, { 179,-13862 }, + + { 180,-13862 }, { 181,-13862 }, { 182,-13862 }, { 183,-13862 }, { 184,-13862 }, + { 185,-13862 }, { 186,-13862 }, { 187,-13862 }, { 188,-13862 }, { 189,-13862 }, + { 190,-13862 }, { 191,-13862 }, { 192,-13862 }, { 193,-13862 }, { 194,-13862 }, + { 195,-13862 }, { 196,-13862 }, { 197,-13862 }, { 198,-13862 }, { 199,-13862 }, + { 200,-13862 }, { 201,-13862 }, { 202,-13862 }, { 203,-13862 }, { 204,-13862 }, + { 205,-13862 }, { 206,-13862 }, { 207,-13862 }, { 208,-13862 }, { 209,-13862 }, + { 210,-13862 }, { 211,-13862 }, { 212,-13862 }, { 213,-13862 }, { 214,-13862 }, + { 215,-13862 }, { 216,-13862 }, { 217,-13862 }, { 218,-13862 }, { 219,-13862 }, + { 220,-13862 }, { 221,-13862 }, { 222,-13862 }, { 223,-13862 }, { 224,-13862 }, + { 225,-13862 }, { 226,-13862 }, { 227,-13862 }, { 228,-13862 }, { 229,-13862 }, + + { 230,-13862 }, { 231,-13862 }, { 232,-13862 }, { 233,-13862 }, { 234,-13862 }, + { 235,-13862 }, { 236,-13862 }, { 237,-13862 }, { 238,-13862 }, { 239,-13862 }, + { 240,-13862 }, { 241,-13862 }, { 242,-13862 }, { 243,-13862 }, { 244,-13862 }, + { 245,-13862 }, { 246,-13862 }, { 247,-13862 }, { 248,-13862 }, { 249,-13862 }, + { 250,-13862 }, { 251,-13862 }, { 252,-13862 }, { 253,-13862 }, { 254,-13862 }, + { 255,-13862 }, { 0, 28 }, { 0, 771 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, + + { 0, 748 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 48, 143 }, { 49, 143 }, { 50, 143 }, { 51, 143 }, { 52, 143 }, + { 53, 143 }, { 54, 143 }, { 55, 143 }, { 56, 143 }, { 57, 143 }, + { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0, 710 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 65, 143 }, { 66, 143 }, { 67, 143 }, + { 68, 143 }, { 69, 143 }, { 70, 143 }, { 48, 143 }, { 49, 143 }, - { 0, 0 }, { 97, 143 }, { 98, 143 }, { 99, 143 }, { 100, 143 }, - { 101, 143 }, { 102, 143 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 50, 143 }, { 51, 143 }, { 52, 143 }, { 53, 143 }, { 54, 143 }, + { 55, 143 }, { 56, 143 }, { 57, 143 }, { 0, 0 }, { 0, 0 }, + { 0, 28 }, { 0, 687 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 65, 143 }, { 66, 143 }, { 67, 143 }, { 68, 143 }, { 69, 143 }, + { 70, 143 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 143 }, + { 98, 143 }, { 99, 143 }, { 100, 143 }, { 101, 143 }, { 102, 143 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 143 }, { 49, 143 }, { 50, 143 }, { 51, 143 }, { 52, 143 }, { 53, 143 }, { 54, 143 }, { 55, 143 }, { 56, 143 }, - { 57, 143 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0, 649 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 143 }, { 66, 143 }, + { 57, 143 }, { 0, 0 }, { 97, 143 }, { 98, 143 }, { 99, 143 }, + + { 100, 143 }, { 101, 143 }, { 102, 143 }, { 65, 143 }, { 66, 143 }, { 67, 143 }, { 68, 143 }, { 69, 143 }, { 70, 143 }, { 48, 143 }, { 49, 143 }, { 50, 143 }, { 51, 143 }, { 52, 143 }, { 53, 143 }, - { 54, 143 }, { 55, 143 }, { 56, 143 }, { 57, 143 }, { 0, 0 }, - { 0, 0 }, { 0, 28 }, { 0, 626 }, { 0, 0 }, { 0, 0 }, - + { 54, 143 }, { 55, 143 }, { 56, 143 }, { 57, 143 }, { 0, 28 }, + { 0, 628 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 143 }, { 66, 143 }, { 67, 143 }, { 68, 143 }, { 69, 143 }, { 70, 143 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 143 }, { 98, 143 }, { 99, 143 }, { 100, 143 }, { 101, 143 }, - { 102, 143 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 48, 143 }, { 49, 143 }, { 50, 143 }, - { 51, 143 }, { 52, 143 }, { 53, 143 }, { 54, 143 }, { 55, 143 }, - { 56, 143 }, { 57, 143 }, { 0, 0 }, { 97, 143 }, { 98, 143 }, - { 99, 143 }, { 100, 143 }, { 101, 143 }, { 102, 143 }, { 65, 143 }, - { 66, 143 }, { 67, 143 }, { 68, 143 }, { 69, 143 }, { 70, 143 }, - { 48,-10162 }, { 49,-10162 }, { 50,-10162 }, { 51,-10162 }, { 52,-10162 }, - - { 53,-10162 }, { 54,-10162 }, { 55,-10162 }, { 56,-10162 }, { 57,-10162 }, - { 0, 28 }, { 0, 567 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 65,-10162 }, { 66,-10162 }, { 67,-10162 }, - { 68,-10162 }, { 69,-10162 }, { 70,-10162 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 97, 143 }, { 98, 143 }, { 99, 143 }, { 100, 143 }, - { 101, 143 }, { 102, 143 }, { 0, 0 }, { 0, 28 }, { 0, 544 }, + { 102, 143 }, { 0, 0 }, { 0, 28 }, { 0, 605 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,-10162 }, - { 98,-10162 }, { 99,-10162 }, { 100,-10162 }, { 101,-10162 }, { 102,-10162 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 143 }, { 98, 143 }, + { 99, 143 }, { 100, 143 }, { 101, 143 }, { 102, 143 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 143 }, { 49, 143 }, + { 50, 143 }, { 51, 143 }, { 52, 143 }, { 53, 143 }, { 54, 143 }, + { 55, 143 }, { 56, 143 }, { 57, 143 }, { 0, 0 }, { 0, 0 }, + { 0, 28 }, { 0, 567 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 65, 143 }, { 66, 143 }, { 67, 143 }, { 68, 143 }, { 69, 143 }, + { 70, 143 }, { 48,-14226 }, { 49,-14226 }, { 50,-14226 }, { 51,-14226 }, + { 52,-14226 }, { 53,-14226 }, { 54,-14226 }, { 55,-14226 }, { 56,-14226 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 84 }, - { 49, 84 }, { 50, 84 }, { 51, 84 }, { 52, 84 }, { 53, 84 }, - { 54, 84 }, { 55, 84 }, { 56, 84 }, { 57, 84 }, { 0, 0 }, - { 0, 0 }, { 0, 28 }, { 0, 506 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 65, 84 }, { 66, 84 }, { 67, 84 }, { 68, 84 }, - { 69, 84 }, { 70, 84 }, { 48,-10242 }, { 49,-10242 }, { 50,-10242 }, - { 51,-10242 }, { 52,-10242 }, { 53,-10242 }, { 54,-10242 }, { 55,-10242 }, - { 56,-10242 }, { 57,-10242 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, - { 0, 483 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,-10242 }, - { 66,-10242 }, { 67,-10242 }, { 68,-10242 }, { 69,-10242 }, { 70,-10242 }, + { 57,-14226 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0, 544 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,-14226 }, { 66,-14226 }, + { 67,-14226 }, { 68,-14226 }, { 69,-14226 }, { 70,-14226 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 97, 143 }, { 98, 143 }, { 99, 143 }, + { 100, 143 }, { 101, 143 }, { 102, 143 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 105 }, + { 49, 105 }, { 50, 105 }, { 51, 105 }, { 52, 105 }, { 53, 105 }, + { 54, 105 }, { 55, 105 }, { 56, 105 }, { 57, 105 }, { 0, 0 }, + { 97,-14226 }, { 98,-14226 }, { 99,-14226 }, { 100,-14226 }, { 101,-14226 }, + { 102,-14226 }, { 65, 105 }, { 66, 105 }, { 67, 105 }, { 68, 105 }, + + { 69, 105 }, { 70, 105 }, { 48,-14283 }, { 49,-14283 }, { 50,-14283 }, + { 51,-14283 }, { 52,-14283 }, { 53,-14283 }, { 54,-14283 }, { 55,-14283 }, + { 56,-14283 }, { 57,-14283 }, { 0, 28 }, { 0, 485 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65,-14283 }, + { 66,-14283 }, { 67,-14283 }, { 68,-14283 }, { 69,-14283 }, { 70,-14283 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 105 }, { 98, 105 }, + { 99, 105 }, { 100, 105 }, { 101, 105 }, { 102, 105 }, { 0, 0 }, + { 0, 28 }, { 0, 462 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + + { 0, 0 }, { 97,-14283 }, { 98,-14283 }, { 99,-14283 }, { 100,-14283 }, + { 101,-14283 }, { 102,-14283 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 48, 61 }, { 49, 61 }, { 50, 61 }, { 51, 61 }, + { 52, 61 }, { 53, 61 }, { 54, 61 }, { 55, 61 }, { 56, 61 }, + { 57, 61 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0, 424 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 61 }, { 66, 61 }, + { 67, 61 }, { 68, 61 }, { 69, 61 }, { 70, 61 }, { 48, 61 }, + { 49, 61 }, { 50, 61 }, { 51, 61 }, { 52, 61 }, { 53, 61 }, + { 54, 61 }, { 55, 61 }, { 56, 61 }, { 57, 61 }, { 0, 0 }, + { 0, 0 }, { 0, 28 }, { 0, 401 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 84 }, { 98, 84 }, - { 99, 84 }, { 100, 84 }, { 101, 84 }, { 102, 84 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 65, 61 }, { 66, 61 }, { 67, 61 }, { 68, 61 }, + { 69, 61 }, { 70, 61 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 97, 61 }, { 98, 61 }, { 99, 61 }, { 100, 61 }, { 101, 61 }, + { 102, 61 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 48, 82 }, { 49, 82 }, { 50, 82 }, + { 51, 82 }, { 52, 82 }, { 53, 82 }, { 54, 82 }, { 55, 82 }, + { 56, 82 }, { 57, 82 }, { 0, 0 }, { 97, 61 }, { 98, 61 }, + { 99, 61 }, { 100, 61 }, { 101, 61 }, { 102, 61 }, { 65, 82 }, + { 66, 82 }, { 67, 82 }, { 68, 82 }, { 69, 82 }, { 70, 82 }, { 48, 82 }, { 49, 82 }, { 50, 82 }, { 51, 82 }, { 52, 82 }, - { 53, 82 }, { 54, 82 }, { 55, 82 }, { 56, 82 }, { 57, 82 }, - { 0, 0 }, { 97,-10242 }, { 98,-10242 }, { 99,-10242 }, { 100,-10242 }, - { 101,-10242 }, { 102,-10242 }, { 65, 82 }, { 66, 82 }, { 67, 82 }, - { 68, 82 }, { 69, 82 }, { 70, 82 }, { 48, 82 }, { 49, 82 }, - { 50, 82 }, { 51, 82 }, { 52, 82 }, { 53, 82 }, { 54, 82 }, - { 55, 82 }, { 56, 82 }, { 57, 82 }, { 0, 28 }, { 0, 424 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 65, 82 }, { 66, 82 }, { 67, 82 }, { 68, 82 }, { 69, 82 }, - { 70, 82 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 82 }, - { 98, 82 }, { 99, 82 }, { 100, 82 }, { 101, 82 }, { 102, 82 }, - { 0, 0 }, { 0, 28 }, { 0, 401 }, { 0, 0 }, { 0, 0 }, + { 53, 82 }, { 54, 82 }, { 55, 82 }, { 56, 82 }, { 57, 82 }, + { 0, 28 }, { 0, 342 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 65, 82 }, { 66, 82 }, { 67, 82 }, + { 68, 82 }, { 69, 82 }, { 70, 82 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 97, 82 }, { 98, 82 }, { 99, 82 }, { 100, 82 }, + { 101, 82 }, { 102, 82 }, { 0, 0 }, { 0, 28 }, { 0, 319 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 97, 82 }, { 98, 82 }, { 99, 82 }, - { 100, 82 }, { 101, 82 }, { 102, 82 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 48, 61 }, { 49, 61 }, { 50, 61 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 82 }, + { 98, 82 }, { 99, 82 }, { 100, 82 }, { 101, 82 }, { 102, 82 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 61 }, + { 49, 61 }, { 50, 61 }, { 51, 61 }, { 52, 61 }, { 53, 61 }, + { 54, 61 }, { 55, 61 }, { 56, 61 }, { 57, 61 }, { 0, 0 }, + { 0, 0 }, { 0, 28 }, { 0, 281 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 65, 61 }, { 66, 61 }, { 67, 61 }, { 68, 61 }, + { 69, 61 }, { 70, 61 }, { 48, 61 }, { 49, 61 }, { 50, 61 }, { 51, 61 }, { 52, 61 }, { 53, 61 }, { 54, 61 }, { 55, 61 }, { 56, 61 }, { 57, 61 }, { 0, 0 }, { 0, 0 }, { 0, 28 }, - { 0, 363 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 61 }, + { 0, 258 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 61 }, { 66, 61 }, { 67, 61 }, { 68, 61 }, { 69, 61 }, { 70, 61 }, - { 48, 61 }, { 49, 61 }, { 50, 61 }, { 51, 61 }, { 52, 61 }, - { 53, 61 }, { 54, 61 }, { 55, 61 }, { 56, 61 }, { 57, 61 }, - { 0, 0 }, { 0, 0 }, { 0, 28 }, { 0, 340 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 65, 61 }, { 66, 61 }, { 67, 61 }, - { 68, 61 }, { 69, 61 }, { 70, 61 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 97, 61 }, { 98, 61 }, { 99, 61 }, { 100, 61 }, - - { 101, 61 }, { 102, 61 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 48, 82 }, { 49, 82 }, - { 50, 82 }, { 51, 82 }, { 52, 82 }, { 53, 82 }, { 54, 82 }, - { 55, 82 }, { 56, 82 }, { 57, 82 }, { 0, 0 }, { 97, 61 }, - { 98, 61 }, { 99, 61 }, { 100, 61 }, { 101, 61 }, { 102, 61 }, - { 65, 82 }, { 66, 82 }, { 67, 82 }, { 68, 82 }, { 69, 82 }, - { 70, 82 }, { 48, 82 }, { 49, 82 }, { 50, 82 }, { 51, 82 }, - { 52, 82 }, { 53, 82 }, { 54, 82 }, { 55, 82 }, { 56, 82 }, - { 57, 82 }, { 0, 28 }, { 0, 281 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 65, 82 }, { 66, 82 }, - { 67, 82 }, { 68, 82 }, { 69, 82 }, { 70, 82 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 97, 82 }, { 98, 82 }, { 99, 82 }, - { 100, 82 }, { 101, 82 }, { 102, 82 }, { 0, 0 }, { 0, 28 }, - { 0, 258 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97, 61 }, { 98, 61 }, + { 99, 61 }, { 100, 61 }, { 101, 61 }, { 102, 61 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 97, 82 }, { 98, 82 }, { 99, 82 }, { 100, 82 }, { 101, 82 }, - { 102, 82 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 48,-10507 }, { 49,-10507 }, { 50,-10507 }, { 51,-10507 }, { 52,-10507 }, - { 53,-10507 }, { 54,-10507 }, { 55,-10507 }, { 56,-10507 }, { 57,-10507 }, + { 48,-14550 }, { 49,-14550 }, { 50,-14550 }, { 51,-14550 }, { 52,-14550 }, + { 53,-14550 }, { 54,-14550 }, { 55,-14550 }, { 56,-14550 }, { 57,-14550 }, + { 0, 0 }, { 97, 61 }, { 98, 61 }, { 99, 61 }, { 100, 61 }, + { 101, 61 }, { 102, 61 }, { 65,-14550 }, { 66,-14550 }, { 67,-14550 }, + { 68,-14550 }, { 69,-14550 }, { 70,-14550 }, { 48,-14569 }, { 49,-14569 }, + { 50,-14569 }, { 51,-14569 }, { 52,-14569 }, { 53,-14569 }, { 54,-14569 }, + { 55,-14569 }, { 56,-14569 }, { 57,-14569 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 65,-10507 }, { 66,-10507 }, { 67,-10507 }, - { 68,-10507 }, { 69,-10507 }, { 70,-10507 }, { 48,-10528 }, { 49,-10528 }, - { 50,-10528 }, { 51,-10528 }, { 52,-10528 }, { 53,-10528 }, { 54,-10528 }, - { 55,-10528 }, { 56,-10528 }, { 57,-10528 }, { 0, 0 }, { 0, 0 }, + { 65,-14569 }, { 66,-14569 }, { 67,-14569 }, { 68,-14569 }, { 69,-14569 }, + { 70,-14569 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,-14550 }, + { 98,-14550 }, { 99,-14550 }, { 100,-14550 }, { 101,-14550 }, { 102,-14550 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 65,-10528 }, { 66,-10528 }, { 67,-10528 }, { 68,-10528 }, { 69,-10528 }, - { 70,-10528 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 97,-10507 }, - { 98,-10507 }, { 99,-10507 }, { 100,-10507 }, { 101,-10507 }, { 102,-10507 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 97,-10528 }, { 98,-10528 }, { 99,-10528 }, - { 100,-10528 }, { 101,-10528 }, { 102,-10528 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 97,-14569 }, { 98,-14569 }, { 99,-14569 }, + { 100,-14569 }, { 101,-14569 }, { 102,-14569 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, + { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, - { 0, 0 }, { 0, 0 }, { 257, 66 }, { 1, 0 }, }; + { 0, 0 }, { 0, 0 }, { 257, 77 }, { 1, 0 }, }; static __thread const struct yy_trans_info *yy_start_state_list[25] = { @@ -4544,7 +5453,7 @@ static __thread const struct yy_trans_info *yy_start_state_list[25] = #define YY_RESTORE_YY_MORE_OFFSET #line 1 "scan.l" -#line 47 "scan.l" +#line 49 "scan.l" /* LCOV_EXCL_START */ @@ -4628,7 +5537,7 @@ static void addlit(char *ytext, int yleng, core_yyscan_t yyscanner); static void addlitchar(unsigned char ychar, core_yyscan_t yyscanner); static char *litbufdup(core_yyscan_t yyscanner); static unsigned char unescape_single_char(unsigned char c, core_yyscan_t yyscanner); -static int process_integer_literal(const char *token, YYSTYPE *lval); +static int process_integer_literal(const char *token, YYSTYPE *lval, int base); static void addunicode(pg_wchar c, yyscan_t yyscanner); #define yyerror(msg) scanner_yyerror(msg, yyscanner) @@ -4647,7 +5556,7 @@ static void check_escape_warning(core_yyscan_t yyscanner); extern int core_yyget_column(yyscan_t yyscanner); extern void core_yyset_column(int column_no, yyscan_t yyscanner); -#line 4601 "scan.c" +#line 5510 "scan.c" #define YY_NO_INPUT 1 /* * OK, here is a short description of lex/flex rules behavior. @@ -4780,9 +5689,9 @@ extern void core_yyset_column(int column_no, yyscan_t yyscanner); * Unary minus is not part of a number here. Instead we pass it separately to * the parser, and there it gets coerced via doNegate(). * - * {decimalfail} is used because we would like "1..10" to lex as 1, dot_dot, 10. + * {numericfail} is used because we would like "1..10" to lex as 1, dot_dot, 10. * - * {realfail1} and {realfail2} are added to prevent the need for scanner + * {realfail} is added to prevent the need for scanner * backup when the {real} rule fails to match completely. */ /* @@ -4797,7 +5706,7 @@ extern void core_yyset_column(int column_no, yyscan_t yyscanner); * Note that xcstart must appear before operator, as explained above! * Also whitespace (comment) must appear before operator. */ -#line 4751 "scan.c" +#line 5660 "scan.c" #define INITIAL 0 #define xb 1 @@ -5090,10 +5999,10 @@ YY_DECL } { -#line 419 "scan.l" +#line 439 "scan.l" -#line 5047 "scan.c" +#line 5956 "scan.c" while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { @@ -5133,14 +6042,14 @@ YY_DECL case 1: /* rule 1 can match eol */ YY_RULE_SETUP -#line 421 "scan.l" +#line 441 "scan.l" { /* ignore */ } YY_BREAK case 2: YY_RULE_SETUP -#line 425 "scan.l" +#line 445 "scan.l" { SET_YYLLOC(); return SQL_COMMENT; @@ -5148,7 +6057,7 @@ YY_RULE_SETUP YY_BREAK case 3: YY_RULE_SETUP -#line 430 "scan.l" +#line 450 "scan.l" { /* Set location in case of syntax error in comment */ SET_YYLLOC(); @@ -5161,7 +6070,7 @@ YY_RULE_SETUP case 4: YY_RULE_SETUP -#line 440 "scan.l" +#line 460 "scan.l" { (yyextra->xcdepth)++; /* Put back any characters past slash-star; see above */ @@ -5170,7 +6079,7 @@ YY_RULE_SETUP YY_BREAK case 5: YY_RULE_SETUP -#line 446 "scan.l" +#line 466 "scan.l" { if (yyextra->xcdepth <= 0) { @@ -5185,27 +6094,27 @@ YY_RULE_SETUP case 6: /* rule 6 can match eol */ YY_RULE_SETUP -#line 457 "scan.l" +#line 477 "scan.l" { /* ignore */ } YY_BREAK case 7: YY_RULE_SETUP -#line 461 "scan.l" +#line 481 "scan.l" { /* ignore */ } YY_BREAK case 8: YY_RULE_SETUP -#line 465 "scan.l" +#line 485 "scan.l" { /* ignore */ } YY_BREAK case YY_STATE_EOF(xc): -#line 469 "scan.l" +#line 489 "scan.l" { yyerror("unterminated /* comment"); } @@ -5213,7 +6122,7 @@ case YY_STATE_EOF(xc): /* */ case 9: YY_RULE_SETUP -#line 474 "scan.l" +#line 494 "scan.l" { /* Binary bit type. * At some point we should simply pass the string @@ -5229,22 +6138,22 @@ YY_RULE_SETUP YY_BREAK case 10: /* rule 10 can match eol */ -#line 487 "scan.l" +#line 507 "scan.l" case 11: /* rule 11 can match eol */ YY_RULE_SETUP -#line 487 "scan.l" +#line 507 "scan.l" { addlit(yytext, yyleng, yyscanner); } YY_BREAK case YY_STATE_EOF(xb): -#line 490 "scan.l" +#line 510 "scan.l" { yyerror("unterminated bit string literal"); } YY_BREAK case 12: YY_RULE_SETUP -#line 492 "scan.l" +#line 512 "scan.l" { /* Hexadecimal bit type. * At some point we should simply pass the string @@ -5259,12 +6168,12 @@ YY_RULE_SETUP } YY_BREAK case YY_STATE_EOF(xh): -#line 504 "scan.l" +#line 524 "scan.l" { yyerror("unterminated hexadecimal string literal"); } YY_BREAK case 13: YY_RULE_SETUP -#line 506 "scan.l" +#line 526 "scan.l" { /* National character. * We will pass this along as a normal character string, @@ -5294,7 +6203,7 @@ YY_RULE_SETUP YY_BREAK case 14: YY_RULE_SETUP -#line 533 "scan.l" +#line 553 "scan.l" { yyextra->warn_on_first_escape = true; yyextra->saw_non_ascii = false; @@ -5308,7 +6217,7 @@ YY_RULE_SETUP YY_BREAK case 15: YY_RULE_SETUP -#line 543 "scan.l" +#line 563 "scan.l" { yyextra->warn_on_first_escape = false; yyextra->saw_non_ascii = false; @@ -5319,7 +6228,7 @@ YY_RULE_SETUP YY_BREAK case 16: YY_RULE_SETUP -#line 550 "scan.l" +#line 570 "scan.l" { SET_YYLLOC(); if (!yyextra->standard_conforming_strings) @@ -5334,7 +6243,7 @@ YY_RULE_SETUP YY_BREAK case 17: YY_RULE_SETUP -#line 562 "scan.l" +#line 582 "scan.l" { /* * When we are scanning a quoted string and see an end @@ -5351,7 +6260,7 @@ YY_RULE_SETUP case 18: /* rule 18 can match eol */ YY_RULE_SETUP -#line 574 "scan.l" +#line 594 "scan.l" { /* * Found a quote continuation, so return to the in-quote @@ -5363,13 +6272,13 @@ YY_RULE_SETUP YY_BREAK case 19: /* rule 19 can match eol */ -#line 583 "scan.l" +#line 603 "scan.l" case 20: /* rule 20 can match eol */ -#line 584 "scan.l" +#line 604 "scan.l" YY_RULE_SETUP case YY_STATE_EOF(xqs): -#line 584 "scan.l" +#line 604 "scan.l" { /* * Failed to see a quote continuation. Throw back @@ -5413,7 +6322,7 @@ case YY_STATE_EOF(xqs): YY_BREAK case 21: YY_RULE_SETUP -#line 625 "scan.l" +#line 645 "scan.l" { addlitchar('\'', yyscanner); } @@ -5421,7 +6330,7 @@ YY_RULE_SETUP case 22: /* rule 22 can match eol */ YY_RULE_SETUP -#line 628 "scan.l" +#line 648 "scan.l" { addlit(yytext, yyleng, yyscanner); } @@ -5429,14 +6338,14 @@ YY_RULE_SETUP case 23: /* rule 23 can match eol */ YY_RULE_SETUP -#line 631 "scan.l" +#line 651 "scan.l" { addlit(yytext, yyleng, yyscanner); } YY_BREAK case 24: YY_RULE_SETUP -#line 634 "scan.l" +#line 654 "scan.l" { pg_wchar c = strtoul(yytext + 2, NULL, 16); @@ -5468,7 +6377,7 @@ YY_RULE_SETUP YY_BREAK case 25: YY_RULE_SETUP -#line 662 "scan.l" +#line 682 "scan.l" { pg_wchar c = strtoul(yytext + 2, NULL, 16); @@ -5491,13 +6400,13 @@ YY_RULE_SETUP } YY_BREAK case 26: -#line 683 "scan.l" +#line 703 "scan.l" case 27: /* rule 27 can match eol */ -#line 684 "scan.l" +#line 704 "scan.l" YY_RULE_SETUP case YY_STATE_EOF(xeu): -#line 684 "scan.l" +#line 704 "scan.l" { /* Set the error cursor to point at missing esc seq */ SET_YYLLOC(); @@ -5506,7 +6415,7 @@ case YY_STATE_EOF(xeu): YY_BREAK case 28: YY_RULE_SETUP -#line 689 "scan.l" +#line 709 "scan.l" { /* Set the error cursor to point at malformed esc seq */ SET_YYLLOC(); @@ -5520,7 +6429,7 @@ YY_RULE_SETUP case 29: /* rule 29 can match eol */ YY_RULE_SETUP -#line 698 "scan.l" +#line 718 "scan.l" { if (yytext[1] == '\'') { @@ -5540,7 +6449,7 @@ YY_RULE_SETUP YY_BREAK case 30: YY_RULE_SETUP -#line 714 "scan.l" +#line 734 "scan.l" { unsigned char c = strtoul(yytext + 1, NULL, 8); @@ -5552,7 +6461,7 @@ YY_RULE_SETUP YY_BREAK case 31: YY_RULE_SETUP -#line 722 "scan.l" +#line 742 "scan.l" { unsigned char c = strtoul(yytext + 2, NULL, 16); @@ -5564,7 +6473,7 @@ YY_RULE_SETUP YY_BREAK case 32: YY_RULE_SETUP -#line 730 "scan.l" +#line 750 "scan.l" { /* This is only needed for \ just before EOF */ addlitchar(yytext[0], yyscanner); @@ -5573,12 +6482,12 @@ YY_RULE_SETUP case YY_STATE_EOF(xq): case YY_STATE_EOF(xe): case YY_STATE_EOF(xus): -#line 734 "scan.l" +#line 754 "scan.l" { yyerror("unterminated quoted string"); } YY_BREAK case 33: YY_RULE_SETUP -#line 736 "scan.l" +#line 756 "scan.l" { SET_YYLLOC(); yyextra->dolqstart = pstrdup(yytext); @@ -5588,7 +6497,7 @@ YY_RULE_SETUP YY_BREAK case 34: YY_RULE_SETUP -#line 742 "scan.l" +#line 762 "scan.l" { SET_YYLLOC(); /* throw back all but the initial "$" */ @@ -5599,7 +6508,7 @@ YY_RULE_SETUP YY_BREAK case 35: YY_RULE_SETUP -#line 749 "scan.l" +#line 769 "scan.l" { if (strcmp(yytext, yyextra->dolqstart) == 0) { @@ -5625,33 +6534,33 @@ YY_RULE_SETUP case 36: /* rule 36 can match eol */ YY_RULE_SETUP -#line 770 "scan.l" +#line 790 "scan.l" { addlit(yytext, yyleng, yyscanner); } YY_BREAK case 37: YY_RULE_SETUP -#line 773 "scan.l" +#line 793 "scan.l" { addlit(yytext, yyleng, yyscanner); } YY_BREAK case 38: YY_RULE_SETUP -#line 776 "scan.l" +#line 796 "scan.l" { /* This is only needed for $ inside the quoted text */ addlitchar(yytext[0], yyscanner); } YY_BREAK case YY_STATE_EOF(xdolq): -#line 780 "scan.l" +#line 800 "scan.l" { yyerror("unterminated dollar-quoted string"); } YY_BREAK case 39: YY_RULE_SETUP -#line 782 "scan.l" +#line 802 "scan.l" { SET_YYLLOC(); BEGIN(xd); @@ -5660,7 +6569,7 @@ YY_RULE_SETUP YY_BREAK case 40: YY_RULE_SETUP -#line 787 "scan.l" +#line 807 "scan.l" { SET_YYLLOC(); BEGIN(xui); @@ -5669,7 +6578,7 @@ YY_RULE_SETUP YY_BREAK case 41: YY_RULE_SETUP -#line 792 "scan.l" +#line 812 "scan.l" { char *ident; @@ -5686,7 +6595,7 @@ YY_RULE_SETUP YY_BREAK case 42: YY_RULE_SETUP -#line 805 "scan.l" +#line 825 "scan.l" { BEGIN(INITIAL); if (yyextra->literallen == 0) @@ -5699,7 +6608,7 @@ YY_RULE_SETUP YY_BREAK case 43: YY_RULE_SETUP -#line 814 "scan.l" +#line 834 "scan.l" { addlitchar('"', yyscanner); } @@ -5707,19 +6616,19 @@ YY_RULE_SETUP case 44: /* rule 44 can match eol */ YY_RULE_SETUP -#line 817 "scan.l" +#line 837 "scan.l" { addlit(yytext, yyleng, yyscanner); } YY_BREAK case YY_STATE_EOF(xd): case YY_STATE_EOF(xui): -#line 820 "scan.l" +#line 840 "scan.l" { yyerror("unterminated quoted identifier"); } YY_BREAK case 45: YY_RULE_SETUP -#line 822 "scan.l" +#line 842 "scan.l" { char *ident; @@ -5735,7 +6644,7 @@ YY_RULE_SETUP YY_BREAK case 46: YY_RULE_SETUP -#line 835 "scan.l" +#line 855 "scan.l" { SET_YYLLOC(); return TYPECAST; @@ -5743,7 +6652,7 @@ YY_RULE_SETUP YY_BREAK case 47: YY_RULE_SETUP -#line 840 "scan.l" +#line 860 "scan.l" { SET_YYLLOC(); return DOT_DOT; @@ -5751,7 +6660,7 @@ YY_RULE_SETUP YY_BREAK case 48: YY_RULE_SETUP -#line 845 "scan.l" +#line 865 "scan.l" { SET_YYLLOC(); return COLON_EQUALS; @@ -5759,7 +6668,7 @@ YY_RULE_SETUP YY_BREAK case 49: YY_RULE_SETUP -#line 850 "scan.l" +#line 870 "scan.l" { SET_YYLLOC(); return EQUALS_GREATER; @@ -5767,7 +6676,7 @@ YY_RULE_SETUP YY_BREAK case 50: YY_RULE_SETUP -#line 855 "scan.l" +#line 875 "scan.l" { SET_YYLLOC(); return LESS_EQUALS; @@ -5775,7 +6684,7 @@ YY_RULE_SETUP YY_BREAK case 51: YY_RULE_SETUP -#line 860 "scan.l" +#line 880 "scan.l" { SET_YYLLOC(); return GREATER_EQUALS; @@ -5783,7 +6692,7 @@ YY_RULE_SETUP YY_BREAK case 52: YY_RULE_SETUP -#line 865 "scan.l" +#line 885 "scan.l" { /* We accept both "<>" and "!=" as meaning NOT_EQUALS */ SET_YYLLOC(); @@ -5792,7 +6701,7 @@ YY_RULE_SETUP YY_BREAK case 53: YY_RULE_SETUP -#line 871 "scan.l" +#line 891 "scan.l" { /* We accept both "<>" and "!=" as meaning NOT_EQUALS */ SET_YYLLOC(); @@ -5801,7 +6710,7 @@ YY_RULE_SETUP YY_BREAK case 54: YY_RULE_SETUP -#line 877 "scan.l" +#line 897 "scan.l" { SET_YYLLOC(); return yytext[0]; @@ -5809,7 +6718,7 @@ YY_RULE_SETUP YY_BREAK case 55: YY_RULE_SETUP -#line 882 "scan.l" +#line 902 "scan.l" { /* * Check for embedded slash-star or dash-dash; those @@ -5920,7 +6829,7 @@ YY_RULE_SETUP YY_BREAK case 56: YY_RULE_SETUP -#line 990 "scan.l" +#line 1010 "scan.l" { SET_YYLLOC(); yylval->ival = atol(yytext + 1); @@ -5929,66 +6838,147 @@ YY_RULE_SETUP YY_BREAK case 57: YY_RULE_SETUP -#line 996 "scan.l" +#line 1016 "scan.l" { SET_YYLLOC(); - return process_integer_literal(yytext, yylval); + return process_integer_literal(yytext, yylval, 10); } YY_BREAK case 58: YY_RULE_SETUP -#line 1000 "scan.l" +#line 1020 "scan.l" +{ + SET_YYLLOC(); + return process_integer_literal(yytext, yylval, 16); + } + YY_BREAK +case 59: +YY_RULE_SETUP +#line 1024 "scan.l" +{ + SET_YYLLOC(); + return process_integer_literal(yytext, yylval, 8); + } + YY_BREAK +case 60: +YY_RULE_SETUP +#line 1028 "scan.l" +{ + SET_YYLLOC(); + return process_integer_literal(yytext, yylval, 2); + } + YY_BREAK +case 61: +YY_RULE_SETUP +#line 1032 "scan.l" +{ + SET_YYLLOC(); + yyerror("invalid hexadecimal integer"); + } + YY_BREAK +case 62: +YY_RULE_SETUP +#line 1036 "scan.l" +{ + SET_YYLLOC(); + yyerror("invalid octal integer"); + } + YY_BREAK +case 63: +YY_RULE_SETUP +#line 1040 "scan.l" +{ + SET_YYLLOC(); + yyerror("invalid binary integer"); + } + YY_BREAK +case 64: +YY_RULE_SETUP +#line 1044 "scan.l" { SET_YYLLOC(); yylval->str = pstrdup(yytext); return FCONST; } YY_BREAK -case 59: +case 65: YY_RULE_SETUP -#line 1005 "scan.l" +#line 1049 "scan.l" { /* throw back the .., and treat as integer */ yyless(yyleng - 2); SET_YYLLOC(); - return process_integer_literal(yytext, yylval); + return process_integer_literal(yytext, yylval, 10); } YY_BREAK -case 60: +case 66: YY_RULE_SETUP -#line 1011 "scan.l" +#line 1055 "scan.l" { SET_YYLLOC(); yylval->str = pstrdup(yytext); return FCONST; } YY_BREAK -case 61: +case 67: YY_RULE_SETUP -#line 1016 "scan.l" +#line 1060 "scan.l" { - /* - * throw back the [Ee], and figure out whether what - * remains is an {integer} or {decimal}. - */ - yyless(yyleng - 1); SET_YYLLOC(); - return process_integer_literal(yytext, yylval); + yyerror("trailing junk after numeric literal"); } YY_BREAK -case 62: +case 68: YY_RULE_SETUP -#line 1025 "scan.l" +#line 1064 "scan.l" { - /* throw back the [Ee][+-], and proceed as above */ - yyless(yyleng - 2); SET_YYLLOC(); - return process_integer_literal(yytext, yylval); + yyerror("trailing junk after numeric literal"); } YY_BREAK -case 63: +case 69: +YY_RULE_SETUP +#line 1068 "scan.l" +{ + SET_YYLLOC(); + yyerror("trailing junk after numeric literal"); + } + YY_BREAK +case 70: +YY_RULE_SETUP +#line 1072 "scan.l" +{ + SET_YYLLOC(); + yyerror("trailing junk after numeric literal"); + } + YY_BREAK +case 71: +YY_RULE_SETUP +#line 1076 "scan.l" +{ + SET_YYLLOC(); + yyerror("trailing junk after numeric literal"); + } + YY_BREAK +case 72: +YY_RULE_SETUP +#line 1080 "scan.l" +{ + SET_YYLLOC(); + yyerror("trailing junk after numeric literal"); + } + YY_BREAK +case 73: YY_RULE_SETUP -#line 1033 "scan.l" +#line 1084 "scan.l" +{ + SET_YYLLOC(); + yyerror("trailing junk after numeric literal"); + } + YY_BREAK +case 74: +YY_RULE_SETUP +#line 1090 "scan.l" { int kwnum; char *ident; @@ -6015,27 +7005,27 @@ YY_RULE_SETUP return IDENT; } YY_BREAK -case 64: +case 75: YY_RULE_SETUP -#line 1059 "scan.l" +#line 1116 "scan.l" { SET_YYLLOC(); return yytext[0]; } YY_BREAK case YY_STATE_EOF(INITIAL): -#line 1064 "scan.l" +#line 1121 "scan.l" { SET_YYLLOC(); yyterminate(); } YY_BREAK -case 65: +case 76: YY_RULE_SETUP -#line 1069 "scan.l" +#line 1126 "scan.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 5989 "scan.c" +#line 6979 "scan.c" case YY_END_OF_BUFFER: { @@ -6915,7 +7905,7 @@ static int yy_flex_strlen (const char * s , yyscan_t yyscanner) #define YYTABLES_NAME "yytables" -#line 1069 "scan.l" +#line 1126 "scan.l" /* LCOV_EXCL_STOP */ @@ -7167,18 +8157,17 @@ litbufdup(core_yyscan_t yyscanner) } /* - * Process {integer}. Note this will also do the right thing with {decimal}, - * ie digits and a decimal point. + * Process {decinteger}, {hexinteger}, etc. Note this will also do the right + * thing with {numeric}, ie digits and a decimal point. */ static int -process_integer_literal(const char *token, YYSTYPE *lval) +process_integer_literal(const char *token, YYSTYPE *lval, int base) { - int val; - char *endptr; + ErrorSaveContext escontext = {T_ErrorSaveContext}; + int32 val; - errno = 0; - val = strtoint(token, &endptr, 10); - if (*endptr != '\0' || errno == ERANGE) + val = pg_strtoint32_safe(token, (Node *) &escontext); + if (escontext.error_occurred) { /* integer too large (or contains decimal pt), treat it as a float */ lval->str = pstrdup(token); diff --git a/parser/src_backend_parser_scansup.c b/parser/src_backend_parser_scansup.c index d07bd4b2..8457bb45 100644 --- a/parser/src_backend_parser_scansup.c +++ b/parser/src_backend_parser_scansup.c @@ -12,7 +12,7 @@ * scansup.c * scanner support routines used by the core lexer * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_backend_postmaster_postmaster.c b/parser/src_backend_postmaster_postmaster.c index 896c4227..46cf7d55 100644 --- a/parser/src_backend_postmaster_postmaster.c +++ b/parser/src_backend_postmaster_postmaster.c @@ -38,7 +38,7 @@ * clients. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -83,10 +83,6 @@ #include #include -#ifdef HAVE_SYS_SELECT_H -#include -#endif - #ifdef USE_BONJOUR #include #endif @@ -112,6 +108,7 @@ #include "libpq/libpq.h" #include "libpq/pqformat.h" #include "libpq/pqsignal.h" +#include "nodes/queryjumble.h" #include "pg_getopt.h" #include "pgstat.h" #include "port/pg_bswap.h" @@ -136,7 +133,6 @@ #include "utils/memutils.h" #include "utils/pidfile.h" #include "utils/ps_status.h" -#include "utils/queryjumble.h" #include "utils/timeout.h" #include "utils/timestamp.h" #include "utils/varlena.h" @@ -214,30 +210,30 @@ static Backend *ShmemBackendArray; /* - * ReservedBackends is the number of backends reserved for superuser use. - * This number is taken out of the pool size given by MaxConnections so - * number of backend slots available to non-superusers is - * (MaxConnections - ReservedBackends). Note what this really means is - * "if there are <= ReservedBackends connections available, only superusers - * can make new connections" --- pre-existing superuser connections don't - * count against the limit. + * SuperuserReservedConnections is the number of backends reserved for + * superuser use, and ReservedConnections is the number of backends reserved + * for use by roles with privileges of the pg_use_reserved_connections + * predefined role. These are taken out of the pool of MaxConnections backend + * slots, so the number of backend slots available for roles that are neither + * superuser nor have privileges of pg_use_reserved_connections is + * (MaxConnections - SuperuserReservedConnections - ReservedConnections). + * + * If the number of remaining slots is less than or equal to + * SuperuserReservedConnections, only superusers can make new connections. If + * the number of remaining slots is greater than SuperuserReservedConnections + * but less than or equal to + * (SuperuserReservedConnections + ReservedConnections), only superusers and + * roles with privileges of pg_use_reserved_connections can make new + * connections. Note that pre-existing superuser and + * pg_use_reserved_connections connections don't count against the limits. */ + /* The socket(s) we're listening to. */ #define MAXLISTEN 64 -/* - * These globals control the behavior of the postmaster in case some - * backend dumps core. Normally, it kills all peers of the dead backend - * and reinitializes shared memory. By specifying -s or -n, we can have - * the postmaster stop (rather than kill) peers and not reinitialize - * shared data structures. (Reinit is currently dead code, though.) - */ - - - /* still more option variables */ @@ -253,6 +249,8 @@ static Backend *ShmemBackendArray; + + /* PIDs of special child processes; 0 when not running */ @@ -380,6 +378,17 @@ __thread bool ClientAuthInProgress = false; +/* set when signals arrive */ + + + + + + + +/* event multiplexing object */ + + #ifdef USE_SSL /* Set when and if SSL has been initialized properly */ static bool LoadedSSL = false; @@ -398,11 +407,14 @@ static void getInstallationPaths(const char *argv0); static void checkControlFile(void); static Port *ConnCreate(int serverFd); static void ConnFree(Port *port); -static void reset_shared(void); -static void SIGHUP_handler(SIGNAL_ARGS); -static void pmdie(SIGNAL_ARGS); -static void reaper(SIGNAL_ARGS); -static void sigusr1_handler(SIGNAL_ARGS); +static void handle_pm_pmsignal_signal(SIGNAL_ARGS); +static void handle_pm_child_exit_signal(SIGNAL_ARGS); +static void handle_pm_reload_request_signal(SIGNAL_ARGS); +static void handle_pm_shutdown_request_signal(SIGNAL_ARGS); +static void process_pm_pmsignal(void); +static void process_pm_child_exit(void); +static void process_pm_reload_request(void); +static void process_pm_shutdown_request(void); static void process_startup_packet_die(SIGNAL_ARGS); static void dummy_handler(SIGNAL_ARGS); static void StartupPacketTimeoutHandler(void); @@ -420,12 +432,12 @@ static int BackendStartup(Port *port); static int ProcessStartupPacket(Port *port, bool ssl_done, bool gss_done); static void SendNegotiateProtocolVersion(List *unrecognized_protocol_options); static void processCancelRequest(Port *port, void *pkt); -static int initMasks(fd_set *rmask); static void report_fork_failure_to_client(Port *port, int errnum); static CAC_state canAcceptConnections(int backend_type); static bool RandomCancelKey(int32 *cancel_key); static void signal_child(pid_t pid, int signal); -static bool SignalSomeChildren(int signal, int targets); +static void sigquit_child(pid_t pid); +static bool SignalSomeChildren(int signal, int target); static void TerminateChildren(int signal); #define SignalChildren(sig) SignalSomeChildren(sig, BACKEND_TYPE_ALL) @@ -579,8 +591,6 @@ HANDLE PostmasterHandle; */ #ifdef WIN32 #endif -#ifdef SIGURG -#endif #ifdef SIGTTIN #endif #ifdef SIGTTOU @@ -597,8 +607,6 @@ HANDLE PostmasterHandle; #endif #ifdef USE_BONJOUR #endif -#ifdef HAVE_UNIX_SOCKETS -#endif #ifdef HAVE_PTHREAD_IS_THREADED_NP #endif @@ -630,7 +638,7 @@ HANDLE PostmasterHandle; /* - * Determine how long should we let ServerLoop sleep. + * Determine how long should we let ServerLoop sleep, in milliseconds. * * In normal conditions we wait at most one minute, to ensure that the other * background tasks handled by ServerLoop get done even when no requests are @@ -641,19 +649,21 @@ HANDLE PostmasterHandle; /* - * Main idle loop of postmaster - * - * NB: Needs to be called with signals blocked + * Activate or deactivate notifications of server socket events. Since we + * don't currently have a way to remove events from an existing WaitEventSet, + * we'll just destroy and recreate the whole thing. This is called during + * shutdown so we can wait for backends to exit without accepting new + * connections, and during crash reinitialization when we need to start + * listening for new connections again. The WaitEventSet will be freed in fork + * children by ClosePostmasterPorts(). */ -#ifdef HAVE_PTHREAD_IS_THREADED_NP -#endif + /* - * Initialise the masks for select() for the ports we are listening on. - * Return the number of sockets to listen on. + * Main idle loop of postmaster */ - - +#ifdef HAVE_PTHREAD_IS_THREADED_NP +#endif /* * Read a client's startup packet and do something according to it. @@ -766,49 +776,48 @@ HANDLE PostmasterHandle; #ifndef WIN32 #endif - /* - * reset_shared -- reset shared memory and semaphores + * Child processes use SIGUSR1 to notify us of 'pmsignals'. pg_ctl uses + * SIGUSR1 to ask postmaster to check for logrotate and promote files. */ +/* + * pg_ctl uses SIGHUP to request a reload of the configuration files. + */ + /* - * SIGHUP -- reread config files, and tell children to do same + * Re-read config files, and tell children to do same. */ -#ifdef WIN32 -#endif #ifdef USE_SSL #endif #ifdef EXEC_BACKEND #endif -#ifdef WIN32 -#endif + +/* + * pg_ctl uses SIGTERM, SIGINT and SIGQUIT to request different types of + * shutdown. + */ /* - * pmdie -- signal handler for processing various postmaster signals. + * Process shutdown request. */ -#ifdef WIN32 -#endif #ifdef USE_SYSTEMD #endif #ifdef USE_SYSTEMD #endif #ifdef USE_SYSTEMD #endif -#ifdef WIN32 -#endif + + /* - * Reaper -- signal handler to cleanup after a child process dies. + * Cleanup after a child process dies. */ -#ifdef WIN32 -#endif #ifdef USE_SYSTEMD #endif -#ifdef WIN32 -#endif /* * Scan the bgworkers list and see if the given PID (which has just stopped @@ -858,8 +867,9 @@ HANDLE PostmasterHandle; /* * Advance the postmaster's state machine and take actions as appropriate * - * This is common code for pmdie(), reaper() and sigusr1_handler(), which - * receive the signals that might mean we need to change state. + * This is common code for process_pm_shutdown_request(), + * process_pm_child_exit() and process_pm_pmsignal(), which process the signals + * that might mean we need to change state. */ @@ -883,6 +893,16 @@ HANDLE PostmasterHandle; #ifdef HAVE_SETSID #endif +/* + * Convenience function for killing a child process after a crash of some + * other child process. We log the action at a higher level than we would + * otherwise do, and we apply send_abort_for_crash to decide which signal + * to send. Normally it's SIGQUIT -- and most other comments in this file + * are written on the assumption that it is -- but developers might prefer + * to use SIGABRT to collect per-child core dumps. + */ + + /* * Send a signal to the targeted children (but NOT special children; * dead_end children are never signaled, either). @@ -1267,18 +1287,10 @@ internal_forkexec(int argc, char *argv[], Port *port) /* * Queue a waiter to signal when this child dies. The wait will be handled - * automatically by an operating system thread pool. - * - * Note: use malloc instead of palloc, since it needs to be thread-safe. - * Struct will be free():d from the callback function that runs on a - * different thread. + * automatically by an operating system thread pool. The memory will be + * freed by a later call to waitpid(). */ - childinfo = malloc(sizeof(win32_deadchild_waitinfo)); - if (!childinfo) - ereport(FATAL, - (errcode(ERRCODE_OUT_OF_MEMORY), - errmsg("out of memory"))); - + childinfo = palloc(sizeof(win32_deadchild_waitinfo)); childinfo->procHandle = pi.hProcess; childinfo->procId = pi.dwProcessId; @@ -1292,7 +1304,7 @@ internal_forkexec(int argc, char *argv[], Port *port) (errmsg_internal("could not register process for wait: error code %lu", GetLastError()))); - /* Don't close pi.hProcess here - the wait thread needs access to it */ + /* Don't close pi.hProcess here - waitpid() needs access to it */ CloseHandle(pi.hThread); @@ -1532,16 +1544,13 @@ SubPostmasterMain(int argc, char *argv[]) #endif /* - * sigusr1_handler - handle signal conditions from child processes + * Handle pmsignal conditions representing requests from backends, + * and check for promote and logrotate requests from pg_ctl. */ -#ifdef WIN32 -#endif #ifdef USE_SYSTEMD #endif #ifdef USE_SYSTEMD #endif -#ifdef WIN32 -#endif /* * SIGTERM while processing startup packet. @@ -2124,36 +2133,21 @@ ShmemBackendArrayRemove(Backend *bn) static pid_t waitpid(pid_t pid, int *exitstatus, int options) { + win32_deadchild_waitinfo *childinfo; + DWORD exitcode; DWORD dwd; ULONG_PTR key; OVERLAPPED *ovl; - /* - * Check if there are any dead children. If there are, return the pid of - * the first one that died. - */ - if (GetQueuedCompletionStatus(win32ChildQueue, &dwd, &key, &ovl, 0)) + /* Try to consume one win32_deadchild_waitinfo from the queue. */ + if (!GetQueuedCompletionStatus(win32ChildQueue, &dwd, &key, &ovl, 0)) { - *exitstatus = (int) key; - return dwd; + errno = EAGAIN; + return -1; } - return -1; -} - -/* - * Note! Code below executes on a thread pool! All operations must - * be thread safe! Note that elog() and friends must *not* be used. - */ -static void WINAPI -pgwin32_deadchild_callback(PVOID lpParameter, BOOLEAN TimerOrWaitFired) -{ - win32_deadchild_waitinfo *childinfo = (win32_deadchild_waitinfo *) lpParameter; - DWORD exitcode; - - if (TimerOrWaitFired) - return; /* timeout. Should never happen, since we use - * INFINITE as timeout value. */ + childinfo = (win32_deadchild_waitinfo *) key; + pid = childinfo->procId; /* * Remove handle from wait - required even though it's set to wait only @@ -2169,13 +2163,11 @@ pgwin32_deadchild_callback(PVOID lpParameter, BOOLEAN TimerOrWaitFired) write_stderr("could not read exit code for process\n"); exitcode = 255; } - - if (!PostQueuedCompletionStatus(win32ChildQueue, childinfo->procId, (ULONG_PTR) exitcode, NULL)) - write_stderr("could not post child completion status\n"); + *exitstatus = exitcode; /* - * Handle is per-process, so we close it here instead of in the - * originating thread + * Close the process handle. Only after this point can the PID can be + * recycled by the kernel. */ CloseHandle(childinfo->procHandle); @@ -2183,9 +2175,36 @@ pgwin32_deadchild_callback(PVOID lpParameter, BOOLEAN TimerOrWaitFired) * Free struct that was allocated before the call to * RegisterWaitForSingleObject() */ - free(childinfo); + pfree(childinfo); + + return pid; +} + +/* + * Note! Code below executes on a thread pool! All operations must + * be thread safe! Note that elog() and friends must *not* be used. + */ +static void WINAPI +pgwin32_deadchild_callback(PVOID lpParameter, BOOLEAN TimerOrWaitFired) +{ + /* Should never happen, since we use INFINITE as timeout value. */ + if (TimerOrWaitFired) + return; + + /* + * Post the win32_deadchild_waitinfo object for waitpid() to deal with. If + * that fails, we leak the object, but we also leak a whole process and + * get into an unrecoverable state, so there's not much point in worrying + * about that. We'd like to panic, but we can't use that infrastructure + * from this thread. + */ + if (!PostQueuedCompletionStatus(win32ChildQueue, + 0, + (ULONG_PTR) lpParameter, + NULL)) + write_stderr("could not post child completion status\n"); - /* Queue SIGCHLD signal */ + /* Queue SIGCHLD signal. */ pg_queue_signal(SIGCHLD); } #endif /* WIN32 */ diff --git a/parser/src_backend_storage_ipc_ipc.c b/parser/src_backend_storage_ipc_ipc.c index 09703912..b3b8cce7 100644 --- a/parser/src_backend_storage_ipc_ipc.c +++ b/parser/src_backend_storage_ipc_ipc.c @@ -15,7 +15,7 @@ * exit-time cleanup for either a postmaster or a backend. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_backend_storage_lmgr_s_lock.c b/parser/src_backend_storage_lmgr_s_lock.c deleted file mode 100644 index 16518ef3..00000000 --- a/parser/src_backend_storage_lmgr_s_lock.c +++ /dev/null @@ -1,371 +0,0 @@ -/*-------------------------------------------------------------------- - * Symbols referenced in this file: - * - s_lock - * - perform_spin_delay - * - spins_per_delay - * - s_lock_stuck - * - finish_spin_delay - *-------------------------------------------------------------------- - */ - -/*------------------------------------------------------------------------- - * - * s_lock.c - * Hardware-dependent implementation of spinlocks. - * - * When waiting for a contended spinlock we loop tightly for awhile, then - * delay using pg_usleep() and try again. Preferably, "awhile" should be a - * small multiple of the maximum time we expect a spinlock to be held. 100 - * iterations seems about right as an initial guess. However, on a - * uniprocessor the loop is a waste of cycles, while in a multi-CPU scenario - * it's usually better to spin a bit longer than to call the kernel, so we try - * to adapt the spin loop count depending on whether we seem to be in a - * uniprocessor or multiprocessor. - * - * Note: you might think MIN_SPINS_PER_DELAY should be just 1, but you'd - * be wrong; there are platforms where that can result in a "stuck - * spinlock" failure. This has been seen particularly on Alphas; it seems - * that the first TAS after returning from kernel space will always fail - * on that hardware. - * - * Once we do decide to block, we use randomly increasing pg_usleep() - * delays. The first delay is 1 msec, then the delay randomly increases to - * about one second, after which we reset to 1 msec and start again. The - * idea here is that in the presence of heavy contention we need to - * increase the delay, else the spinlock holder may never get to run and - * release the lock. (Consider situation where spinlock holder has been - * nice'd down in priority by the scheduler --- it will not get scheduled - * until all would-be acquirers are sleeping, so if we always use a 1-msec - * sleep, there is a real possibility of starvation.) But we can't just - * clamp the delay to an upper bound, else it would take a long time to - * make a reasonable number of tries. - * - * We time out and declare error after NUM_DELAYS delays (thus, exactly - * that many tries). With the given settings, this will usually take 2 or - * so minutes. It seems better to fix the total number of tries (and thus - * the probability of unintended failure) than to fix the total time - * spent. - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * - * IDENTIFICATION - * src/backend/storage/lmgr/s_lock.c - * - *------------------------------------------------------------------------- - */ -#include "postgres.h" - -#include -#include - -#include "common/pg_prng.h" -#include "port/atomics.h" -#include "storage/s_lock.h" - -#define MIN_SPINS_PER_DELAY 10 -#define MAX_SPINS_PER_DELAY 1000 -#define NUM_DELAYS 1000 -#define MIN_DELAY_USEC 1000L -#define MAX_DELAY_USEC 1000000L - - - - -static __thread int spins_per_delay = DEFAULT_SPINS_PER_DELAY; - - - -/* - * s_lock_stuck() - complain about a stuck spinlock - */ -static void -s_lock_stuck(const char *file, int line, const char *func) -{ - if (!func) - func = "(unknown)"; -#if defined(S_LOCK_TEST) - fprintf(stderr, - "\nStuck spinlock detected at %s, %s:%d.\n", - func, file, line); - exit(1); -#else - elog(PANIC, "stuck spinlock detected at %s, %s:%d", - func, file, line); -#endif -} - -/* - * s_lock(lock) - platform-independent portion of waiting for a spinlock. - */ -int -s_lock(volatile slock_t *lock, const char *file, int line, const char *func) -{ - SpinDelayStatus delayStatus; - - init_spin_delay(&delayStatus, file, line, func); - - while (TAS_SPIN(lock)) - { - perform_spin_delay(&delayStatus); - } - - finish_spin_delay(&delayStatus); - - return delayStatus.delays; -} - -#ifdef USE_DEFAULT_S_UNLOCK -void -s_unlock(volatile slock_t *lock) -{ -#ifdef TAS_ACTIVE_WORD - /* HP's PA-RISC */ - *TAS_ACTIVE_WORD(lock) = -1; -#else - *lock = 0; -#endif -} -#endif - -/* - * Wait while spinning on a contended spinlock. - */ -void -perform_spin_delay(SpinDelayStatus *status) -{ - /* CPU-specific delay each time through the loop */ - SPIN_DELAY(); - - /* Block the process every spins_per_delay tries */ - if (++(status->spins) >= spins_per_delay) - { - if (++(status->delays) > NUM_DELAYS) - s_lock_stuck(status->file, status->line, status->func); - - if (status->cur_delay == 0) /* first time to delay? */ - status->cur_delay = MIN_DELAY_USEC; - - pg_usleep(status->cur_delay); - -#if defined(S_LOCK_TEST) - fprintf(stdout, "*"); - fflush(stdout); -#endif - - /* increase delay by a random fraction between 1X and 2X */ - status->cur_delay += (int) (status->cur_delay * - pg_prng_double(&pg_global_prng_state) + 0.5); - /* wrap back to minimum delay when max is exceeded */ - if (status->cur_delay > MAX_DELAY_USEC) - status->cur_delay = MIN_DELAY_USEC; - - status->spins = 0; - } -} - -/* - * After acquiring a spinlock, update estimates about how long to loop. - * - * If we were able to acquire the lock without delaying, it's a good - * indication we are in a multiprocessor. If we had to delay, it's a sign - * (but not a sure thing) that we are in a uniprocessor. Hence, we - * decrement spins_per_delay slowly when we had to delay, and increase it - * rapidly when we didn't. It's expected that spins_per_delay will - * converge to the minimum value on a uniprocessor and to the maximum - * value on a multiprocessor. - * - * Note: spins_per_delay is local within our current process. We want to - * average these observations across multiple backends, since it's - * relatively rare for this function to even get entered, and so a single - * backend might not live long enough to converge on a good value. That - * is handled by the two routines below. - */ -void -finish_spin_delay(SpinDelayStatus *status) -{ - if (status->cur_delay == 0) - { - /* we never had to delay */ - if (spins_per_delay < MAX_SPINS_PER_DELAY) - spins_per_delay = Min(spins_per_delay + 100, MAX_SPINS_PER_DELAY); - } - else - { - if (spins_per_delay > MIN_SPINS_PER_DELAY) - spins_per_delay = Max(spins_per_delay - 1, MIN_SPINS_PER_DELAY); - } -} - -/* - * Set local copy of spins_per_delay during backend startup. - * - * NB: this has to be pretty fast as it is called while holding a spinlock - */ - - -/* - * Update shared estimate of spins_per_delay during backend exit. - * - * NB: this has to be pretty fast as it is called while holding a spinlock - */ - - - -/* - * Various TAS implementations that cannot live in s_lock.h as no inline - * definition exists (yet). - * In the future, get rid of tas.[cso] and fold it into this file. - * - * If you change something here, you will likely need to modify s_lock.h too, - * because the definitions for these are split between this file and s_lock.h. - */ - - -#ifdef HAVE_SPINLOCKS /* skip spinlocks if requested */ - - -#if defined(__GNUC__) - -/* - * All the gcc flavors that are not inlined - */ - - -/* - * Note: all the if-tests here probably ought to be testing gcc version - * rather than platform, but I don't have adequate info to know what to - * write. Ideally we'd flush all this in favor of the inline version. - */ -#if defined(__m68k__) && !defined(__linux__) -/* really means: extern int tas(slock_t* **lock); */ -static void -tas_dummy() -{ - __asm__ __volatile__( -#if (defined(__NetBSD__) || defined(__OpenBSD__)) && defined(__ELF__) -/* no underscore for label and % for registers */ - "\ -.global tas \n\ -tas: \n\ - movel %sp@(0x4),%a0 \n\ - tas %a0@ \n\ - beq _success \n\ - moveq #-128,%d0 \n\ - rts \n\ -_success: \n\ - moveq #0,%d0 \n\ - rts \n" -#else - "\ -.global _tas \n\ -_tas: \n\ - movel sp@(0x4),a0 \n\ - tas a0@ \n\ - beq _success \n\ - moveq #-128,d0 \n\ - rts \n\ -_success: \n\ - moveq #0,d0 \n\ - rts \n" -#endif /* (__NetBSD__ || __OpenBSD__) && __ELF__ */ - ); -} -#endif /* __m68k__ && !__linux__ */ -#endif /* not __GNUC__ */ -#endif /* HAVE_SPINLOCKS */ - - - -/*****************************************************************************/ -#if defined(S_LOCK_TEST) - -/* - * test program for verifying a port's spinlock support. - */ - -struct test_lock_struct -{ - char pad1; - slock_t lock; - char pad2; -}; - -volatile struct test_lock_struct test_lock; - -int -main() -{ - pg_prng_seed(&pg_global_prng_state, (uint64) time(NULL)); - - test_lock.pad1 = test_lock.pad2 = 0x44; - - S_INIT_LOCK(&test_lock.lock); - - if (test_lock.pad1 != 0x44 || test_lock.pad2 != 0x44) - { - printf("S_LOCK_TEST: failed, declared datatype is wrong size\n"); - return 1; - } - - if (!S_LOCK_FREE(&test_lock.lock)) - { - printf("S_LOCK_TEST: failed, lock not initialized\n"); - return 1; - } - - S_LOCK(&test_lock.lock); - - if (test_lock.pad1 != 0x44 || test_lock.pad2 != 0x44) - { - printf("S_LOCK_TEST: failed, declared datatype is wrong size\n"); - return 1; - } - - if (S_LOCK_FREE(&test_lock.lock)) - { - printf("S_LOCK_TEST: failed, lock not locked\n"); - return 1; - } - - S_UNLOCK(&test_lock.lock); - - if (test_lock.pad1 != 0x44 || test_lock.pad2 != 0x44) - { - printf("S_LOCK_TEST: failed, declared datatype is wrong size\n"); - return 1; - } - - if (!S_LOCK_FREE(&test_lock.lock)) - { - printf("S_LOCK_TEST: failed, lock not unlocked\n"); - return 1; - } - - S_LOCK(&test_lock.lock); - - if (test_lock.pad1 != 0x44 || test_lock.pad2 != 0x44) - { - printf("S_LOCK_TEST: failed, declared datatype is wrong size\n"); - return 1; - } - - if (S_LOCK_FREE(&test_lock.lock)) - { - printf("S_LOCK_TEST: failed, lock not re-locked\n"); - return 1; - } - - printf("S_LOCK_TEST: this will print %d stars and then\n", NUM_DELAYS); - printf(" exit with a 'stuck spinlock' message\n"); - printf(" if S_LOCK() and TAS() are working.\n"); - fflush(stdout); - - s_lock(&test_lock.lock, __FILE__, __LINE__, PG_FUNCNAME_MACRO); - - printf("S_LOCK_TEST: failed, lock not locked\n"); - return 1; -} - -#endif /* S_LOCK_TEST */ diff --git a/parser/src_backend_tcop_postgres.c b/parser/src_backend_tcop_postgres.c index 2ed5bad3..0cc71dbd 100644 --- a/parser/src_backend_tcop_postgres.c +++ b/parser/src_backend_tcop_postgres.c @@ -16,7 +16,7 @@ * postgres.c * POSTGRES C Backend Interface * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -36,17 +36,12 @@ #include #include #include +#include #include -#ifdef HAVE_SYS_SELECT_H -#include -#endif -#ifdef HAVE_SYS_RESOURCE_H #include -#include -#endif -#ifndef HAVE_GETRUSAGE -#include "rusagestub.h" +#ifdef USE_VALGRIND +#include #endif #include "access/parallel.h" @@ -88,6 +83,7 @@ #include "tcop/pquery.h" #include "tcop/tcopprot.h" #include "tcop/utility.h" +#include "utils/guc_hooks.h" #include "utils/lsyscache.h" #include "utils/memutils.h" #include "utils/ps_status.h" @@ -150,13 +146,6 @@ static __thread long max_stack_depth_bytes = 100 * 1024L; static __thread char *stack_base_ptr = NULL; -/* - * On IA64 we also have to remember the register stack base. - */ -#if defined(__ia64__) || defined(__ia64) -static char *register_stack_base_ptr = NULL; -#endif - /* * Flag to keep track of whether we have started a transaction. * For extended query protocol this has to be remembered across messages. @@ -224,6 +213,36 @@ static void enable_statement_timeout(void); static void disable_statement_timeout(void); +/* ---------------------------------------------------------------- + * infrastructure for valgrind debugging + * ---------------------------------------------------------------- + */ +#ifdef USE_VALGRIND +/* This variable should be set at the top of the main loop. */ +static unsigned int old_valgrind_error_count; + +/* + * If Valgrind detected any errors since old_valgrind_error_count was updated, + * report the current query as the cause. This should be called at the end + * of message processing. + */ +static void +valgrind_report_error_query(const char *query) +{ + unsigned int valgrind_error_count = VALGRIND_COUNT_ERRORS; + + if (unlikely(valgrind_error_count != old_valgrind_error_count) && + query != NULL) + VALGRIND_PRINTF("Valgrind detected %u error(s) during execution of \"%s\"\n", + valgrind_error_count - old_valgrind_error_count, + query); +} + +#else /* !USE_VALGRIND */ +#define valgrind_report_error_query(query) ((void) 0) +#endif /* USE_VALGRIND */ + + /* ---------------------------------------------------------------- * routines to obtain user input * ---------------------------------------------------------------- @@ -305,6 +324,8 @@ static void disable_statement_timeout(void); */ #ifdef COPY_PARSE_PLAN_TREES #endif +#ifdef WRITE_READ_PARSE_PLAN_TREES +#endif /* * Given a raw parsetree (gram.y output), and optionally information about @@ -558,45 +579,6 @@ static void disable_statement_timeout(void); void ProcessInterrupts(void) {} - -/* - * IA64-specific code to fetch the AR.BSP register for stack depth checks. - * - * We currently support gcc, icc, and HP-UX's native compiler here. - * - * Note: while icc accepts gcc asm blocks on x86[_64], this is not true on - * ia64 (at least not in icc versions before 12.x). So we have to carry a - * separate implementation for it. - */ -#if defined(__ia64__) || defined(__ia64) - -#if defined(__hpux) && !defined(__GNUC__) && !defined(__INTEL_COMPILER) -/* Assume it's HP-UX native compiler */ -#include -#define ia64_get_bsp() ((char *) (_Asm_mov_from_ar(_AREG_BSP, _NO_FENCE))) -#elif defined(__INTEL_COMPILER) -/* icc */ -#include -#define ia64_get_bsp() ((char *) __getReg(_IA64_REG_AR_BSP)) -#else -/* gcc */ -static __inline__ char * -ia64_get_bsp(void) -{ - char *ret; - - /* the ;; is a "stop", seems to be required before fetching BSP */ - __asm__ __volatile__( - ";;\n" - " mov %0=ar.bsp \n" -: "=r"(ret)); - - return ret; -} -#endif -#endif /* IA64 */ - - /* * set_stack_base: set up reference point for stack depth checking * @@ -604,14 +586,9 @@ ia64_get_bsp(void) */ #ifndef HAVE__BUILTIN_FRAME_ADDRESS #endif -#if defined(__ia64__) || defined(__ia64) -#else -#endif #ifdef HAVE__BUILTIN_FRAME_ADDRESS #else #endif -#if defined(__ia64__) || defined(__ia64) -#endif /* * restore_stack_base: restore reference point for stack depth checking @@ -622,9 +599,7 @@ ia64_get_bsp(void) * the main thread's stack, so it sets the base pointer before the call, and * restores it afterwards. */ -#if defined(__ia64__) || defined(__ia64) -#else -#endif + /* * check_stack_depth/stack_is_too_deep: check for excessively deep recursion @@ -680,22 +655,6 @@ stack_is_too_deep(void) stack_base_ptr != NULL) return true; - /* - * On IA64 there is a separate "register" stack that requires its own - * independent check. For this, we have to measure the change in the - * "BSP" pointer from PostgresMain to here. Logic is just as above, - * except that we know IA64's register stack grows up. - * - * Note we assume that the same max_stack_depth applies to both stacks. - */ -#if defined(__ia64__) || defined(__ia64) - stack_depth = (long) (ia64_get_bsp() - register_stack_base_ptr); - - if (stack_depth > max_stack_depth_bytes && - register_stack_base_ptr != NULL) - return true; -#endif /* IA64 */ - return false; } @@ -705,6 +664,28 @@ stack_is_too_deep(void) /* GUC assign hook for max_stack_depth */ +/* + * GUC check_hook for client_connection_check_interval + */ + + +/* + * GUC check_hook for log_parser_stats, log_planner_stats, log_executor_stats + * + * This function and check_log_stats interact to prevent their variables from + * being set in a disallowed combination. This is a hack that doesn't really + * work right; for example it might fail while applying pg_db_role_setting + * values even though the final state would have been acceptable. However, + * since these variables are legacy settings with little production usage, + * we tolerate that. + */ + + +/* + * GUC check_hook for log_statement_stats + */ + + /* * set_debug_options --- apply "-d N" command line option @@ -769,7 +750,8 @@ stack_is_too_deep(void) * if reasonably possible. * ---------------------------------------------------------------- */ - +#ifdef USE_VALGRIND +#endif /* * Throw an error if we're a WAL sender process. @@ -786,11 +768,8 @@ stack_is_too_deep(void) * * Return -1 if unknown */ -#if defined(HAVE_GETRLIMIT) && defined(RLIMIT_STACK) -#else /* no getrlimit */ -#if defined(WIN32) || defined(__CYGWIN__) -#else /* not windows ... give up */ -#endif +#if defined(HAVE_GETRLIMIT) +#else #endif @@ -799,11 +778,11 @@ stack_is_too_deep(void) -#if defined(HAVE_GETRUSAGE) +#ifndef WIN32 #if defined(__darwin__) #else #endif -#endif /* HAVE_GETRUSAGE */ +#endif /* !WIN32 */ /* * on_proc_exit handler to log end of session diff --git a/parser/src_backend_utils_activity_pgstat_database.c b/parser/src_backend_utils_activity_pgstat_database.c index e6ce060f..6b5d6b48 100644 --- a/parser/src_backend_utils_activity_pgstat_database.c +++ b/parser/src_backend_utils_activity_pgstat_database.c @@ -14,7 +14,7 @@ * storage implementation and the details about individual types of * statistics. * - * Copyright (c) 2001-2022, PostgreSQL Global Development Group + * Copyright (c) 2001-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/backend/utils/activity/pgstat_database.c diff --git a/parser/src_backend_utils_adt_datum.c b/parser/src_backend_utils_adt_datum.c index 853ef924..9243506b 100644 --- a/parser/src_backend_utils_adt_datum.c +++ b/parser/src_backend_utils_adt_datum.c @@ -11,7 +11,7 @@ * datum.c * POSTGRES Datum (abstract data type) manipulation routines. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -51,6 +51,7 @@ #include "postgres.h" #include "access/detoast.h" +#include "catalog/pg_type_d.h" #include "common/hashfn.h" #include "fmgr.h" #include "utils/builtins.h" @@ -283,12 +284,9 @@ datumIsEqual(Datum value1, Datum value2, bool typByVal, int typLen) * datum_image_eq() in all cases can use this as their "equalimage" support * function. * - * Currently, we unconditionally assume that any B-Tree operator class that - * registers btequalimage as its support function 4 must be able to safely use - * optimizations like deduplication (i.e. we return true unconditionally). If - * it ever proved necessary to rescind support for an operator class, we could - * do that in a targeted fashion by doing something with the opcintype - * argument. + * Earlier minor releases erroneously associated this function with + * interval_ops. Detect that case to rescind deduplication support, without + * requiring initdb. *------------------------------------------------------------------------- */ diff --git a/parser/src_backend_utils_adt_expandeddatum.c b/parser/src_backend_utils_adt_expandeddatum.c index f4c8fcd2..3738f993 100644 --- a/parser/src_backend_utils_adt_expandeddatum.c +++ b/parser/src_backend_utils_adt_expandeddatum.c @@ -11,7 +11,7 @@ * expandeddatum.c * Support functions for "expanded" value representations. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_backend_utils_adt_format_type.c b/parser/src_backend_utils_adt_format_type.c index db7a7412..753f9c17 100644 --- a/parser/src_backend_utils_adt_format_type.c +++ b/parser/src_backend_utils_adt_format_type.c @@ -10,7 +10,7 @@ * Display type names "nicely". * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION diff --git a/parser/src_backend_utils_adt_numutils.c b/parser/src_backend_utils_adt_numutils.c new file mode 100644 index 00000000..162dc380 --- /dev/null +++ b/parser/src_backend_utils_adt_numutils.c @@ -0,0 +1,489 @@ +/*-------------------------------------------------------------------- + * Symbols referenced in this file: + * - pg_strtoint32_safe + * - hexlookup + *-------------------------------------------------------------------- + */ + +/*------------------------------------------------------------------------- + * + * numutils.c + * utility functions for I/O of built-in numeric types. + * + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * + * IDENTIFICATION + * src/backend/utils/adt/numutils.c + * + *------------------------------------------------------------------------- + */ +#include "postgres.h" + +#include +#include +#include + +#include "common/int.h" +#include "utils/builtins.h" +#include "port/pg_bitutils.h" + +/* + * A table of all two-digit numbers. This is used to speed up decimal digit + * generation by copying pairs of digits into the final output. + */ + + +/* + * Adapted from http://graphics.stanford.edu/~seander/bithacks.html#IntegerLog10 + */ + + + + +static const int8 hexlookup[128] = { + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, + -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, +}; + +/* + * Convert input string to a signed 16 bit integer. Input strings may be + * expressed in base-10, hexadecimal, octal, or binary format, all of which + * can be prefixed by an optional sign character, either '+' (the default) or + * '-' for negative numbers. Hex strings are recognized by the digits being + * prefixed by 0x or 0X while octal strings are recognized by the 0o or 0O + * prefix. The binary representation is recognized by the 0b or 0B prefix. + * + * Allows any number of leading or trailing whitespace characters. Digits may + * optionally be separated by a single underscore character. These can only + * come between digits and not before or after the digits. Underscores have + * no effect on the return value and are supported only to assist in improving + * the human readability of the input strings. + * + * pg_strtoint16() will throw ereport() upon bad input format or overflow; + * while pg_strtoint16_safe() instead returns such complaints in *escontext, + * if it's an ErrorSaveContext. +* + * NB: Accumulate input as an unsigned number, to deal with two's complement + * representation of the most negative number, which can't be represented as a + * signed positive number. + */ + + + + +/* + * Convert input string to a signed 32 bit integer. Input strings may be + * expressed in base-10, hexadecimal, octal, or binary format, all of which + * can be prefixed by an optional sign character, either '+' (the default) or + * '-' for negative numbers. Hex strings are recognized by the digits being + * prefixed by 0x or 0X while octal strings are recognized by the 0o or 0O + * prefix. The binary representation is recognized by the 0b or 0B prefix. + * + * Allows any number of leading or trailing whitespace characters. Digits may + * optionally be separated by a single underscore character. These can only + * come between digits and not before or after the digits. Underscores have + * no effect on the return value and are supported only to assist in improving + * the human readability of the input strings. + * + * pg_strtoint32() will throw ereport() upon bad input format or overflow; + * while pg_strtoint32_safe() instead returns such complaints in *escontext, + * if it's an ErrorSaveContext. + * + * NB: Accumulate input as an unsigned number, to deal with two's complement + * representation of the most negative number, which can't be represented as a + * signed positive number. + */ + + +int32 +pg_strtoint32_safe(const char *s, Node *escontext) +{ + const char *ptr = s; + const char *firstdigit; + uint32 tmp = 0; + bool neg = false; + unsigned char digit; + + /* + * The majority of cases are likely to be base-10 digits without any + * underscore separator characters. We'll first try to parse the string + * with the assumption that's the case and only fallback on a slower + * implementation which handles hex, octal and binary strings and + * underscores if the fastpath version cannot parse the string. + */ + + /* leave it up to the slow path to look for leading spaces */ + + if (*ptr == '-') + { + ptr++; + neg = true; + } + + /* a leading '+' is uncommon so leave that for the slow path */ + + /* process the first digit */ + digit = (*ptr - '0'); + + /* + * Exploit unsigned arithmetic to save having to check both the upper and + * lower bounds of the digit. + */ + if (likely(digit < 10)) + { + ptr++; + tmp = digit; + } + else + { + /* we need at least one digit */ + goto slow; + } + + /* process remaining digits */ + for (;;) + { + digit = (*ptr - '0'); + + if (digit >= 10) + break; + + ptr++; + + if (unlikely(tmp > -(PG_INT32_MIN / 10))) + goto out_of_range; + + tmp = tmp * 10 + digit; + } + + /* when the string does not end in a digit, let the slow path handle it */ + if (unlikely(*ptr != '\0')) + goto slow; + + if (neg) + { + /* check the negative equivalent will fit without overflowing */ + if (unlikely(tmp > (uint32) (-(PG_INT32_MIN + 1)) + 1)) + goto out_of_range; + return -((int32) tmp); + } + + if (unlikely(tmp > PG_INT32_MAX)) + goto out_of_range; + + return (int32) tmp; + +slow: + tmp = 0; + ptr = s; + /* no need to reset neg */ + + /* skip leading spaces */ + while (isspace((unsigned char) *ptr)) + ptr++; + + /* handle sign */ + if (*ptr == '-') + { + ptr++; + neg = true; + } + else if (*ptr == '+') + ptr++; + + /* process digits */ + if (ptr[0] == '0' && (ptr[1] == 'x' || ptr[1] == 'X')) + { + firstdigit = ptr += 2; + + for (;;) + { + if (isxdigit((unsigned char) *ptr)) + { + if (unlikely(tmp > -(PG_INT32_MIN / 16))) + goto out_of_range; + + tmp = tmp * 16 + hexlookup[(unsigned char) *ptr++]; + } + else if (*ptr == '_') + { + /* underscore must be followed by more digits */ + ptr++; + if (*ptr == '\0' || !isxdigit((unsigned char) *ptr)) + goto invalid_syntax; + } + else + break; + } + } + else if (ptr[0] == '0' && (ptr[1] == 'o' || ptr[1] == 'O')) + { + firstdigit = ptr += 2; + + for (;;) + { + if (*ptr >= '0' && *ptr <= '7') + { + if (unlikely(tmp > -(PG_INT32_MIN / 8))) + goto out_of_range; + + tmp = tmp * 8 + (*ptr++ - '0'); + } + else if (*ptr == '_') + { + /* underscore must be followed by more digits */ + ptr++; + if (*ptr == '\0' || *ptr < '0' || *ptr > '7') + goto invalid_syntax; + } + else + break; + } + } + else if (ptr[0] == '0' && (ptr[1] == 'b' || ptr[1] == 'B')) + { + firstdigit = ptr += 2; + + for (;;) + { + if (*ptr >= '0' && *ptr <= '1') + { + if (unlikely(tmp > -(PG_INT32_MIN / 2))) + goto out_of_range; + + tmp = tmp * 2 + (*ptr++ - '0'); + } + else if (*ptr == '_') + { + /* underscore must be followed by more digits */ + ptr++; + if (*ptr == '\0' || *ptr < '0' || *ptr > '1') + goto invalid_syntax; + } + else + break; + } + } + else + { + firstdigit = ptr; + + for (;;) + { + if (*ptr >= '0' && *ptr <= '9') + { + if (unlikely(tmp > -(PG_INT32_MIN / 10))) + goto out_of_range; + + tmp = tmp * 10 + (*ptr++ - '0'); + } + else if (*ptr == '_') + { + /* underscore may not be first */ + if (unlikely(ptr == firstdigit)) + goto invalid_syntax; + /* and it must be followed by more digits */ + ptr++; + if (*ptr == '\0' || !isdigit((unsigned char) *ptr)) + goto invalid_syntax; + } + else + break; + } + } + + /* require at least one digit */ + if (unlikely(ptr == firstdigit)) + goto invalid_syntax; + + /* allow trailing whitespace, but not other trailing chars */ + while (isspace((unsigned char) *ptr)) + ptr++; + + if (unlikely(*ptr != '\0')) + goto invalid_syntax; + + if (neg) + { + /* check the negative equivalent will fit without overflowing */ + if (tmp > (uint32) (-(PG_INT32_MIN + 1)) + 1) + goto out_of_range; + return -((int32) tmp); + } + + if (tmp > PG_INT32_MAX) + goto out_of_range; + + return (int32) tmp; + +out_of_range: + ereturn(escontext, 0, + (errcode(ERRCODE_NUMERIC_VALUE_OUT_OF_RANGE), + errmsg("value \"%s\" is out of range for type %s", + s, "integer"))); + +invalid_syntax: + ereturn(escontext, 0, + (errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), + errmsg("invalid input syntax for type %s: \"%s\"", + "integer", s))); +} + +/* + * Convert input string to a signed 64 bit integer. Input strings may be + * expressed in base-10, hexadecimal, octal, or binary format, all of which + * can be prefixed by an optional sign character, either '+' (the default) or + * '-' for negative numbers. Hex strings are recognized by the digits being + * prefixed by 0x or 0X while octal strings are recognized by the 0o or 0O + * prefix. The binary representation is recognized by the 0b or 0B prefix. + * + * Allows any number of leading or trailing whitespace characters. Digits may + * optionally be separated by a single underscore character. These can only + * come between digits and not before or after the digits. Underscores have + * no effect on the return value and are supported only to assist in improving + * the human readability of the input strings. + * + * pg_strtoint64() will throw ereport() upon bad input format or overflow; + * while pg_strtoint64_safe() instead returns such complaints in *escontext, + * if it's an ErrorSaveContext. + * + * NB: Accumulate input as an unsigned number, to deal with two's complement + * representation of the most negative number, which can't be represented as a + * signed positive number. + */ + + + + +/* + * Convert input string to an unsigned 32 bit integer. + * + * Allows any number of leading or trailing whitespace characters. + * + * If endloc isn't NULL, store a pointer to the rest of the string there, + * so that caller can parse the rest. Otherwise, it's an error if anything + * but whitespace follows. + * + * typname is what is reported in error messges. + * + * If escontext points to an ErrorSaveContext node, that is filled instead + * of throwing an error; the caller must check SOFT_ERROR_OCCURRED() + * to detect errors. + */ +#if PG_UINT32_MAX != ULONG_MAX +#endif + +/* + * Convert input string to an unsigned 64 bit integer. + * + * Allows any number of leading or trailing whitespace characters. + * + * If endloc isn't NULL, store a pointer to the rest of the string there, + * so that caller can parse the rest. Otherwise, it's an error if anything + * but whitespace follows. + * + * typname is what is reported in error messges. + * + * If escontext points to an ErrorSaveContext node, that is filled instead + * of throwing an error; the caller must check SOFT_ERROR_OCCURRED() + * to detect errors. + */ + + +/* + * pg_itoa: converts a signed 16-bit integer to its string representation + * and returns strlen(a). + * + * Caller must ensure that 'a' points to enough memory to hold the result + * (at least 7 bytes, counting a leading sign and trailing NUL). + * + * It doesn't seem worth implementing this separately. + */ + + +/* + * pg_ultoa_n: converts an unsigned 32-bit integer to its string representation, + * not NUL-terminated, and returns the length of that string representation + * + * Caller must ensure that 'a' points to enough memory to hold the result (at + * least 10 bytes) + */ + + +/* + * pg_ltoa: converts a signed 32-bit integer to its string representation and + * returns strlen(a). + * + * It is the caller's responsibility to ensure that a is at least 12 bytes long, + * which is enough room to hold a minus sign, a maximally long int32, and the + * above terminating NUL. + */ + + +/* + * Get the decimal representation, not NUL-terminated, and return the length of + * same. Caller must ensure that a points to at least MAXINT8LEN bytes. + */ + + +/* + * pg_lltoa: converts a signed 64-bit integer to its string representation and + * returns strlen(a). + * + * Caller must ensure that 'a' points to enough memory to hold the result + * (at least MAXINT8LEN + 1 bytes, counting a leading sign and trailing NUL). + */ + + + +/* + * pg_ultostr_zeropad + * Converts 'value' into a decimal string representation stored at 'str'. + * 'minwidth' specifies the minimum width of the result; any extra space + * is filled up by prefixing the number with zeros. + * + * Returns the ending address of the string result (the last character written + * plus 1). Note that no NUL terminator is written. + * + * The intended use-case for this function is to build strings that contain + * multiple individual numbers, for example: + * + * str = pg_ultostr_zeropad(str, hours, 2); + * *str++ = ':'; + * str = pg_ultostr_zeropad(str, mins, 2); + * *str++ = ':'; + * str = pg_ultostr_zeropad(str, secs, 2); + * *str = '\0'; + * + * Note: Caller must ensure that 'str' points to enough memory to hold the + * result. + */ + + +/* + * pg_ultostr + * Converts 'value' into a decimal string representation stored at 'str'. + * + * Returns the ending address of the string result (the last character written + * plus 1). Note that no NUL terminator is written. + * + * The intended use-case for this function is to build strings that contain + * multiple individual numbers, for example: + * + * str = pg_ultostr(str, a); + * *str++ = ' '; + * str = pg_ultostr(str, b); + * *str = '\0'; + * + * Note: Caller must ensure that 'str' points to enough memory to hold the + * result. + */ + diff --git a/parser/src_backend_utils_adt_ruleutils.c b/parser/src_backend_utils_adt_ruleutils.c index c0974812..92579913 100644 --- a/parser/src_backend_utils_adt_ruleutils.c +++ b/parser/src_backend_utils_adt_ruleutils.c @@ -11,7 +11,7 @@ * Functions to convert stored expressions/querytrees back to * source text * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -419,6 +419,8 @@ static void get_update_query_targetlist_def(Query *query, List *targetList, RangeTblEntry *rte); static void get_delete_query_def(Query *query, deparse_context *context, bool colNamesVisible); +static void get_merge_query_def(Query *query, deparse_context *context, + bool colNamesVisible); static void get_utility_query_def(Query *query, deparse_context *context); static void get_basic_select_query(Query *query, deparse_context *context, TupleDesc resultDesc, bool colNamesVisible); @@ -465,9 +467,15 @@ static void get_func_expr(FuncExpr *expr, deparse_context *context, bool showimplicit); static void get_agg_expr(Aggref *aggref, deparse_context *context, Aggref *original_aggref); +static void get_agg_expr_helper(Aggref *aggref, deparse_context *context, + Aggref *original_aggref, const char *funcname, + const char *options, bool is_json_objectagg); static void get_agg_combine_expr(Node *node, deparse_context *context, void *callback_arg); static void get_windowfunc_expr(WindowFunc *wfunc, deparse_context *context); +static void get_windowfunc_expr_helper(WindowFunc *wfunc, deparse_context *context, + const char *funcname, const char *options, + bool is_json_objectagg); static bool get_func_sql_syntax(FuncExpr *expr, deparse_context *context); static void get_coercion_expr(Node *arg, deparse_context *context, Oid resulttype, int32 resulttypmod, @@ -475,6 +483,15 @@ static void get_coercion_expr(Node *arg, deparse_context *context, static void get_const_expr(Const *constval, deparse_context *context, int showtype); static void get_const_collation(Const *constval, deparse_context *context); +static void get_json_format(JsonFormat *format, StringInfo buf); +static void get_json_constructor(JsonConstructorExpr *ctor, + deparse_context *context, bool showimplicit); +static void get_json_constructor_options(JsonConstructorExpr *ctor, + StringInfo buf); +static void get_json_agg_constructor(JsonConstructorExpr *ctor, + deparse_context *context, + const char *funcname, + bool is_json_objectagg); static void simple_quote_literal(StringInfo buf, const char *val); static void get_sublink_expr(SubLink *sublink, deparse_context *context); static void get_tablefunc(TableFunc *tf, deparse_context *context, @@ -483,6 +500,8 @@ static void get_from_clause(Query *query, const char *prefix, deparse_context *context); static void get_from_clause_item(Node *jtnode, Query *query, deparse_context *context); +static void get_rte_alias(RangeTblEntry *rte, int varno, bool use_as, + deparse_context *context); static void get_column_alias_list(deparse_columns *colinfo, deparse_context *context); static void get_from_clause_coldeflist(RangeTblFunction *rtfunc, @@ -584,6 +603,9 @@ static void get_reloptions(StringInfo buf, Datum reloptions); /* Internal version that just reports the key-column definitions */ +/* Internal version, extensible with flags to control its behavior */ + + /* * Internal workhorse to decompile an index definition. * @@ -637,7 +659,7 @@ static void get_reloptions(StringInfo buf, Datum reloptions); * * Returns the partition key specification, ie, the following: * - * PARTITION BY { RANGE | LIST | HASH } (column opt_collation opt_opclass [, ...]) + * { RANGE | LIST | HASH } (column opt_collation opt_opclass [, ...]) */ @@ -744,8 +766,8 @@ static void get_reloptions(StringInfo buf, Datum reloptions); * * Note: if you change the output format of this function, be careful not * to break psql's rules (in \ef and \sf) for identifying the start of the - * function body. To wit: the function body starts on a line that begins - * with "AS ", and no preceding line will look like that. + * function body. To wit: the function body starts on a line that begins with + * "AS ", "BEGIN ", or "RETURN ", and no preceding line will look like that. */ @@ -1214,6 +1236,13 @@ static void get_reloptions(StringInfo buf, Datum reloptions); +/* ---------- + * get_merge_query_def - Parse back a MERGE parsetree + * ---------- + */ + + + /* ---------- * get_utility_query_def - Parse back a UTILITY parsetree * ---------- @@ -1413,6 +1442,12 @@ static void get_reloptions(StringInfo buf, Datum reloptions); */ +/* + * get_agg_expr_helper - subroutine for get_agg_expr and + * get_json_agg_constructor + */ + + /* * This is a helper function for get_agg_expr(). It's used when we deparse * a combining Aggref; resolve_special_varno locates the corresponding partial @@ -1425,6 +1460,13 @@ static void get_reloptions(StringInfo buf, Datum reloptions); */ + +/* + * get_windowfunc_expr_helper - subroutine for get_windowfunc_expr and + * get_json_agg_constructor + */ + + /* * get_func_sql_syntax - Parse back a SQL-syntax function call * @@ -1463,6 +1505,31 @@ static void get_reloptions(StringInfo buf, Datum reloptions); */ +/* + * get_json_format - Parse back a JsonFormat node + */ + + +/* + * get_json_returning - Parse back a JsonReturning structure + */ + + +/* + * get_json_constructor - Parse back a JsonConstructorExpr node + */ + + +/* + * Append options, if any, to the JSON constructor being deparsed + */ + + +/* + * get_json_agg_constructor - Parse back an aggregate JsonConstructorExpr node + */ + + /* * simple_quote_literal - Format a string as a SQL literal, append to buf */ @@ -1494,6 +1561,13 @@ static void get_reloptions(StringInfo buf, Datum reloptions); +/* + * get_rte_alias - print the relation's alias, if needed + * + * If printed, the alias is preceded by a space, or by " AS " if use_as is true. + */ + + /* * get_column_alias_list - print column alias list for an RTE * @@ -1533,7 +1607,7 @@ static void get_reloptions(StringInfo buf, Datum reloptions); /* * generate_opclass_name - * Compute the name to display for a opclass specified by OID + * Compute the name to display for an opclass specified by OID * * The result includes all necessary quoting and schema-prefixing. */ diff --git a/parser/src_backend_utils_error_assert.c b/parser/src_backend_utils_error_assert.c index 1533e5e6..869d2eb9 100644 --- a/parser/src_backend_utils_error_assert.c +++ b/parser/src_backend_utils_error_assert.c @@ -9,7 +9,7 @@ * assert.c * Assert support code. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -34,20 +34,17 @@ */ void ExceptionalCondition(const char *conditionName, - const char *errorType, const char *fileName, int lineNumber) { /* Report the failure on stderr (or local equivalent) */ if (!PointerIsValid(conditionName) - || !PointerIsValid(fileName) - || !PointerIsValid(errorType)) + || !PointerIsValid(fileName)) write_stderr("TRAP: ExceptionalCondition: bad arguments in PID %d\n", (int) getpid()); else - write_stderr("TRAP: %s(\"%s\", File: \"%s\", Line: %d, PID: %d)\n", - errorType, conditionName, - fileName, lineNumber, (int) getpid()); + write_stderr("TRAP: failed Assert(\"%s\"), File: \"%s\", Line: %d, PID: %d\n", + conditionName, fileName, lineNumber, (int) getpid()); /* Usually this shouldn't be needed, but make sure the msg went out */ fflush(stderr); diff --git a/parser/src_backend_utils_error_elog.c b/parser/src_backend_utils_error_elog.c index 6dfd560b..c0c67340 100644 --- a/parser/src_backend_utils_error_elog.c +++ b/parser/src_backend_utils_error_elog.c @@ -13,6 +13,8 @@ * - is_log_level_output * - should_output_to_client * - recursion_depth + * - get_error_stack_entry + * - set_stack_entry_domain * - errmsg_internal * - errcode * - errmsg @@ -25,9 +27,14 @@ * - emit_log_hook * - send_message_to_server_log * - send_message_to_frontend + * - set_stack_entry_location * - matches_backtrace_functions + * - backtrace_symbol_list * - set_backtrace + * - FreeErrorDataContents * - geterrcode + * - errsave_start + * - errsave_finish * - errhint * - errposition * - internalerrposition @@ -86,7 +93,7 @@ * overflow.) * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -114,6 +121,7 @@ #include "libpq/libpq.h" #include "libpq/pqformat.h" #include "mb/pg_wchar.h" +#include "nodes/miscnodes.h" #include "miscadmin.h" #include "pgstat.h" #include "postmaster/bgworker.h" @@ -122,9 +130,10 @@ #include "storage/ipc.h" #include "storage/proc.h" #include "tcop/tcopprot.h" -#include "utils/guc.h" +#include "utils/guc_hooks.h" #include "utils/memutils.h" #include "utils/ps_status.h" +#include "utils/varlena.h" /* In this module, access gettext() via err_gettext() */ @@ -159,6 +168,10 @@ __thread emit_log_hook_type emit_log_hook = NULL; +/* Processed form of backtrace_symbols GUC */ +static __thread char *backtrace_symbol_list; + + #ifdef HAVE_SYSLOG /* @@ -221,10 +234,17 @@ static __thread int recursion_depth = 0; static const char *err_gettext(const char *str) pg_attribute_format_arg(1); +static ErrorData *get_error_stack_entry(void); +static void set_stack_entry_domain(ErrorData *edata, const char *domain); +static void set_stack_entry_location(ErrorData *edata, + const char *filename, int lineno, + const char *funcname); +static bool matches_backtrace_functions(const char *funcname); static pg_noinline void set_backtrace(ErrorData *edata, int num_skip); static void set_errdata_field(MemoryContextData *cxt, char **ptr, const char *str); +static void FreeErrorDataContents(ErrorData *edata); static void write_console(const char *line, int len); -static const char *process_log_prefix_padding(const char *p, int *padding); +static const char *process_log_prefix_padding(const char *p, int *ppadding); static void log_line_prefix(StringInfo buf, ErrorData *edata); static void send_message_to_server_log(ErrorData *edata); static void send_message_to_frontend(ErrorData *edata); @@ -468,27 +488,13 @@ errstart(int elevel, const char *domain) debug_query_string = NULL; } } - if (++errordata_stack_depth >= ERRORDATA_STACK_SIZE) - { - /* - * Wups, stack not big enough. We treat this as a PANIC condition - * because it suggests an infinite loop of errors during error - * recovery. - */ - errordata_stack_depth = -1; /* make room on stack */ - ereport(PANIC, (errmsg_internal("ERRORDATA_STACK_SIZE exceeded"))); - } /* Initialize data for this error frame */ - edata = &errordata[errordata_stack_depth]; - MemSet(edata, 0, sizeof(ErrorData)); + edata = get_error_stack_entry(); edata->elevel = elevel; edata->output_to_server = output_to_server; edata->output_to_client = output_to_client; - /* the default text domain is the backend's */ - edata->domain = domain ? domain : PG_TEXTDOMAIN("postgres"); - /* initialize context_domain the same way (see set_errcontext_domain()) */ - edata->context_domain = edata->domain; + set_stack_entry_domain(edata, domain); /* Select default errcode based on elevel */ if (elevel >= ERROR) edata->sqlerrcode = ERRCODE_INTERNAL_ERROR; @@ -496,8 +502,6 @@ errstart(int elevel, const char *domain) edata->sqlerrcode = ERRCODE_WARNING; else edata->sqlerrcode = ERRCODE_SUCCESSFUL_COMPLETION; - /* errno is saved here so that error parameter eval can't change it */ - edata->saved_errno = errno; /* * Any allocations for this error state level should go into ErrorContext @@ -508,32 +512,6 @@ errstart(int elevel, const char *domain) return true; } -/* - * Checks whether the given funcname matches backtrace_functions; see - * check_backtrace_functions. - */ -static bool -matches_backtrace_functions(const char *funcname) -{ - char *p; - - if (!backtrace_symbol_list || funcname == NULL || funcname[0] == '\0') - return false; - - p = backtrace_symbol_list; - for (;;) - { - if (*p == '\0') /* end of backtrace_symbol_list */ - break; - - if (strcmp(funcname, p) == 0) - return true; - p += strlen(p) + 1; - } - - return false; -} - /* * errfinish --- end an error-reporting cycle * @@ -554,23 +532,7 @@ errfinish(const char *filename, int lineno, const char *funcname) CHECK_STACK_DEPTH(); /* Save the last few bits of error state into the stack entry */ - if (filename) - { - const char *slash; - - /* keep only base name, useful especially for vpath builds */ - slash = strrchr(filename, '/'); - if (slash) - filename = slash + 1; - /* Some Windows compilers use backslashes in __FILE__ strings */ - slash = strrchr(filename, '\\'); - if (slash) - filename = slash + 1; - } - - edata->filename = filename; - edata->lineno = lineno; - edata->funcname = funcname; + set_stack_entry_location(edata, filename, lineno, funcname); elevel = edata->elevel; @@ -580,6 +542,7 @@ errfinish(const char *filename, int lineno, const char *funcname) */ oldcontext = MemoryContextSwitchTo(ErrorContext); + /* Collect backtrace, if enabled and we didn't already */ if (!edata->backtrace && edata->funcname && backtrace_functions && @@ -630,31 +593,7 @@ errfinish(const char *filename, int lineno, const char *funcname) EmitErrorReport(); /* Now free up subsidiary data attached to stack entry, and release it */ - if (edata->message) - pfree(edata->message); - if (edata->detail) - pfree(edata->detail); - if (edata->detail_log) - pfree(edata->detail_log); - if (edata->hint) - pfree(edata->hint); - if (edata->context) - pfree(edata->context); - if (edata->backtrace) - pfree(edata->backtrace); - if (edata->schema_name) - pfree(edata->schema_name); - if (edata->table_name) - pfree(edata->table_name); - if (edata->column_name) - pfree(edata->column_name); - if (edata->datatype_name) - pfree(edata->datatype_name); - if (edata->constraint_name) - pfree(edata->constraint_name); - if (edata->internalquery) - pfree(edata->internalquery); - + FreeErrorDataContents(edata); errordata_stack_depth--; /* Exit error-handling context */ @@ -681,8 +620,7 @@ errfinish(const char *filename, int lineno, const char *funcname) * Any other code you might be tempted to add here should probably be * in an on_proc_exit or on_shmem_exit callback instead. */ - fflush(stdout); - fflush(stderr); + fflush(NULL); /* * Let the cumulative stats system know. Only mark the session as @@ -708,8 +646,7 @@ errfinish(const char *filename, int lineno, const char *funcname) * XXX: what if we are *in* the postmaster? abort() won't kill our * children... */ - fflush(stdout); - fflush(stderr); + fflush(NULL); abort(); } @@ -722,6 +659,242 @@ errfinish(const char *filename, int lineno, const char *funcname) } +/* + * errsave_start --- begin a "soft" error-reporting cycle + * + * If "context" isn't an ErrorSaveContext node, this behaves as + * errstart(ERROR, domain), and the errsave() macro ends up acting + * exactly like ereport(ERROR, ...). + * + * If "context" is an ErrorSaveContext node, but the node creator only wants + * notification of the fact of a soft error without any details, we just set + * the error_occurred flag in the ErrorSaveContext node and return false, + * which will cause us to skip the remaining error processing steps. + * + * Otherwise, create and initialize error stack entry and return true. + * Subsequently, errmsg() and perhaps other routines will be called to further + * populate the stack entry. Finally, errsave_finish() will be called to + * tidy up. + */ +bool +errsave_start(struct Node *context, const char *domain) +{ + ErrorSaveContext *escontext; + ErrorData *edata; + + /* + * Do we have a context for soft error reporting? If not, just punt to + * errstart(). + */ + if (context == NULL || !IsA(context, ErrorSaveContext)) + return errstart(ERROR, domain); + + /* Report that a soft error was detected */ + escontext = (ErrorSaveContext *) context; + escontext->error_occurred = true; + + /* Nothing else to do if caller wants no further details */ + if (!escontext->details_wanted) + return false; + + /* + * Okay, crank up a stack entry to store the info in. + */ + + recursion_depth++; + + /* Initialize data for this error frame */ + edata = get_error_stack_entry(); + edata->elevel = LOG; /* signal all is well to errsave_finish */ + set_stack_entry_domain(edata, domain); + /* Select default errcode based on the assumed elevel of ERROR */ + edata->sqlerrcode = ERRCODE_INTERNAL_ERROR; + + /* + * Any allocations for this error state level should go into the caller's + * context. We don't need to pollute ErrorContext, or even require it to + * exist, in this code path. + */ + edata->assoc_context = CurrentMemoryContext; + + recursion_depth--; + return true; +} + +/* + * errsave_finish --- end a "soft" error-reporting cycle + * + * If errsave_start() decided this was a regular error, behave as + * errfinish(). Otherwise, package up the error details and save + * them in the ErrorSaveContext node. + */ +void +errsave_finish(struct Node *context, const char *filename, int lineno, + const char *funcname) +{ + ErrorSaveContext *escontext = (ErrorSaveContext *) context; + ErrorData *edata = &errordata[errordata_stack_depth]; + + /* verify stack depth before accessing *edata */ + CHECK_STACK_DEPTH(); + + /* + * If errsave_start punted to errstart, then elevel will be ERROR or + * perhaps even PANIC. Punt likewise to errfinish. + */ + if (edata->elevel >= ERROR) + { + errfinish(filename, lineno, funcname); + pg_unreachable(); + } + + /* + * Else, we should package up the stack entry contents and deliver them to + * the caller. + */ + recursion_depth++; + + /* Save the last few bits of error state into the stack entry */ + set_stack_entry_location(edata, filename, lineno, funcname); + + /* Replace the LOG value that errsave_start inserted */ + edata->elevel = ERROR; + + /* + * We skip calling backtrace and context functions, which are more likely + * to cause trouble than provide useful context; they might act on the + * assumption that a transaction abort is about to occur. + */ + + /* + * Make a copy of the error info for the caller. All the subsidiary + * strings are already in the caller's context, so it's sufficient to + * flat-copy the stack entry. + */ + escontext->error_data = palloc_object(ErrorData); + memcpy(escontext->error_data, edata, sizeof(ErrorData)); + + /* Exit error-handling context */ + errordata_stack_depth--; + recursion_depth--; +} + + +/* + * get_error_stack_entry --- allocate and initialize a new stack entry + * + * The entry should be freed, when we're done with it, by calling + * FreeErrorDataContents() and then decrementing errordata_stack_depth. + * + * Returning the entry's address is just a notational convenience, + * since it had better be errordata[errordata_stack_depth]. + * + * Although the error stack is not large, we don't expect to run out of space. + * Using more than one entry implies a new error report during error recovery, + * which is possible but already suggests we're in trouble. If we exhaust the + * stack, almost certainly we are in an infinite loop of errors during error + * recovery, so we give up and PANIC. + * + * (Note that this is distinct from the recursion_depth checks, which + * guard against recursion while handling a single stack entry.) + */ +static ErrorData * +get_error_stack_entry(void) +{ + ErrorData *edata; + + /* Allocate error frame */ + errordata_stack_depth++; + if (unlikely(errordata_stack_depth >= ERRORDATA_STACK_SIZE)) + { + /* Wups, stack not big enough */ + errordata_stack_depth = -1; /* make room on stack */ + ereport(PANIC, (errmsg_internal("ERRORDATA_STACK_SIZE exceeded"))); + } + + /* Initialize error frame to all zeroes/NULLs */ + edata = &errordata[errordata_stack_depth]; + memset(edata, 0, sizeof(ErrorData)); + + /* Save errno immediately to ensure error parameter eval can't change it */ + edata->saved_errno = errno; + + return edata; +} + +/* + * set_stack_entry_domain --- fill in the internationalization domain + */ +static void +set_stack_entry_domain(ErrorData *edata, const char *domain) +{ + /* the default text domain is the backend's */ + edata->domain = domain ? domain : PG_TEXTDOMAIN("postgres"); + /* initialize context_domain the same way (see set_errcontext_domain()) */ + edata->context_domain = edata->domain; +} + +/* + * set_stack_entry_location --- fill in code-location details + * + * Store the values of __FILE__, __LINE__, and __func__ from the call site. + * We make an effort to normalize __FILE__, since compilers are inconsistent + * about how much of the path they'll include, and we'd prefer that the + * behavior not depend on that (especially, that it not vary with build path). + */ +static void +set_stack_entry_location(ErrorData *edata, + const char *filename, int lineno, + const char *funcname) +{ + if (filename) + { + const char *slash; + + /* keep only base name, useful especially for vpath builds */ + slash = strrchr(filename, '/'); + if (slash) + filename = slash + 1; + /* Some Windows compilers use backslashes in __FILE__ strings */ + slash = strrchr(filename, '\\'); + if (slash) + filename = slash + 1; + } + + edata->filename = filename; + edata->lineno = lineno; + edata->funcname = funcname; +} + +/* + * matches_backtrace_functions --- checks whether the given funcname matches + * backtrace_functions + * + * See check_backtrace_functions. + */ +static bool +matches_backtrace_functions(const char *funcname) +{ + const char *p; + + if (!backtrace_symbol_list || funcname == NULL || funcname[0] == '\0') + return false; + + p = backtrace_symbol_list; + for (;;) + { + if (*p == '\0') /* end of backtrace_symbol_list */ + break; + + if (strcmp(funcname, p) == 0) + return true; + p += strlen(p) + 1; + } + + return false; +} + + /* * errcode --- add SQLSTATE error code to the current error * @@ -1391,6 +1564,40 @@ CopyErrorData(void) */ +/* + * FreeErrorDataContents --- free the subsidiary data of an ErrorData. + * + * This can be used on either an error stack entry or a copied ErrorData. + */ +static void +FreeErrorDataContents(ErrorData *edata) +{ + if (edata->message) + pfree(edata->message); + if (edata->detail) + pfree(edata->detail); + if (edata->detail_log) + pfree(edata->detail_log); + if (edata->hint) + pfree(edata->hint); + if (edata->context) + pfree(edata->context); + if (edata->backtrace) + pfree(edata->backtrace); + if (edata->schema_name) + pfree(edata->schema_name); + if (edata->table_name) + pfree(edata->table_name); + if (edata->column_name) + pfree(edata->column_name); + if (edata->datatype_name) + pfree(edata->datatype_name); + if (edata->constraint_name) + pfree(edata->constraint_name); + if (edata->internalquery) + pfree(edata->internalquery); +} + /* * FlushErrorState --- flush the error state after error recovery * @@ -1479,8 +1686,7 @@ pg_re_throw(void) } /* Doesn't return ... */ - ExceptionalCondition("pg_re_throw tried to return", "FailedAssertion", - __FILE__, __LINE__); + ExceptionalCondition("pg_re_throw tried to return", __FILE__, __LINE__); } @@ -1504,13 +1710,49 @@ pg_re_throw(void) +/* + * GUC check_hook for backtrace_functions + * + * We split the input string, where commas separate function names + * and certain whitespace chars are ignored, into a \0-separated (and + * \0\0-terminated) list of function names. This formulation allows + * easy scanning when an error is thrown while avoiding the use of + * non-reentrant strtok(), as well as keeping the output data in a + * single palloc() chunk. + */ + + +/* + * GUC assign_hook for backtrace_functions + */ + + +/* + * GUC check_hook for log_destination + */ #ifdef HAVE_SYSLOG +#endif +#ifdef WIN32 +#endif + +/* + * GUC assign_hook for log_destination + */ + /* - * Set or update the parameters for syslog logging + * GUC assign_hook for syslog_ident */ +#ifdef HAVE_SYSLOG +#endif +/* + * GUC assign_hook for syslog_facility + */ +#ifdef HAVE_SYSLOG +#endif +#ifdef HAVE_SYSLOG /* * Write a message line to syslog @@ -1677,7 +1919,12 @@ write_eventlog(int level, const char *line, int len) /* - * Format tag info for log lines; append to the provided buffer. + * Format log status information using Log_line_prefix. + */ + + +/* + * Format log status info; append to the provided buffer. */ @@ -1803,6 +2050,16 @@ write_stderr(const char *fmt,...) } +/* + * Write a message to STDERR using only async-signal-safe functions. This can + * be used to safely emit a message from a signal handler. + * + * TODO: It is likely possible to safely do a limited amount of string + * interpolation (e.g., %s and %d), but that is not presently supported. + */ + + + /* * Adjust the level of a recovery-related message per trace_recovery_messages. * diff --git a/parser/src_backend_utils_fmgr_fmgr.c b/parser/src_backend_utils_fmgr_fmgr.c index 88db8236..3cd4feee 100644 --- a/parser/src_backend_utils_fmgr_fmgr.c +++ b/parser/src_backend_utils_fmgr_fmgr.c @@ -9,7 +9,7 @@ * fmgr.c * The Postgres function manager. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -29,6 +29,7 @@ #include "lib/stringinfo.h" #include "miscadmin.h" #include "nodes/makefuncs.h" +#include "nodes/miscnodes.h" #include "nodes/nodeFuncs.h" #include "pgstat.h" #include "utils/acl.h" @@ -366,6 +367,37 @@ FunctionCall6Coll(FmgrInfo *flinfo, Oid collation, Datum arg1, Datum arg2, */ +/* + * Call a previously-looked-up datatype input function, with non-exception + * handling of "soft" errors. + * + * This is basically like InputFunctionCall, but the converted Datum is + * returned into *result while the function result is true for success or + * false for failure. Also, the caller may pass an ErrorSaveContext node. + * (We declare that as "fmNodePtr" to avoid including nodes.h in fmgr.h.) + * + * If escontext points to an ErrorSaveContext, any "soft" errors detected by + * the input function will be reported by filling the escontext struct and + * returning false. (The caller can choose to test SOFT_ERROR_OCCURRED(), + * but checking the function result instead is usually cheaper.) + * + * If escontext does not point to an ErrorSaveContext, errors are reported + * via ereport(ERROR), so that there is no functional difference from + * InputFunctionCall; the result will always be true if control returns. + */ + + +/* + * Call a directly-named datatype input function, with non-exception + * handling of "soft" errors. + * + * This is like InputFunctionCallSafe, except that it is given a direct + * pointer to the C function to call. We assume that that function is + * strict. Also, the function cannot be one that needs to + * look at FmgrInfo, since there won't be any. + */ + + /* * Call a previously-looked-up datatype output function. * diff --git a/parser/src_backend_utils_hash_dynahash.c b/parser/src_backend_utils_hash_dynahash.c deleted file mode 100644 index 453767e9..00000000 --- a/parser/src_backend_utils_hash_dynahash.c +++ /dev/null @@ -1,1116 +0,0 @@ -/*-------------------------------------------------------------------- - * Symbols referenced in this file: - * - hash_search - * - hash_search_with_hash_value - * - has_seq_scans - * - num_seq_scans - * - seq_scan_tables - * - expand_table - * - dir_realloc - * - CurrentDynaHashCxt - * - seg_alloc - * - calc_bucket - * - hash_corrupted - * - DynaHashAlloc - * - get_hash_entry - * - element_alloc - *-------------------------------------------------------------------- - */ - -/*------------------------------------------------------------------------- - * - * dynahash.c - * dynamic chained hash tables - * - * dynahash.c supports both local-to-a-backend hash tables and hash tables in - * shared memory. For shared hash tables, it is the caller's responsibility - * to provide appropriate access interlocking. The simplest convention is - * that a single LWLock protects the whole hash table. Searches (HASH_FIND or - * hash_seq_search) need only shared lock, but any update requires exclusive - * lock. For heavily-used shared tables, the single-lock approach creates a - * concurrency bottleneck, so we also support "partitioned" locking wherein - * there are multiple LWLocks guarding distinct subsets of the table. To use - * a hash table in partitioned mode, the HASH_PARTITION flag must be given - * to hash_create. This prevents any attempt to split buckets on-the-fly. - * Therefore, each hash bucket chain operates independently, and no fields - * of the hash header change after init except nentries and freeList. - * (A partitioned table uses multiple copies of those fields, guarded by - * spinlocks, for additional concurrency.) - * This lets any subset of the hash buckets be treated as a separately - * lockable partition. We expect callers to use the low-order bits of a - * lookup key's hash value as a partition number --- this will work because - * of the way calc_bucket() maps hash values to bucket numbers. - * - * For hash tables in shared memory, the memory allocator function should - * match malloc's semantics of returning NULL on failure. For hash tables - * in local memory, we typically use palloc() which will throw error on - * failure. The code in this file has to cope with both cases. - * - * dynahash.c provides support for these types of lookup keys: - * - * 1. Null-terminated C strings (truncated if necessary to fit in keysize), - * compared as though by strcmp(). This is selected by specifying the - * HASH_STRINGS flag to hash_create. - * - * 2. Arbitrary binary data of size keysize, compared as though by memcmp(). - * (Caller must ensure there are no undefined padding bits in the keys!) - * This is selected by specifying the HASH_BLOBS flag to hash_create. - * - * 3. More complex key behavior can be selected by specifying user-supplied - * hashing, comparison, and/or key-copying functions. At least a hashing - * function must be supplied; comparison defaults to memcmp() and key copying - * to memcpy() when a user-defined hashing function is selected. - * - * Compared to simplehash, dynahash has the following benefits: - * - * - It supports partitioning, which is useful for shared memory access using - * locks. - * - Shared memory hashes are allocated in a fixed size area at startup and - * are discoverable by name from other processes. - * - Because entries don't need to be moved in the case of hash conflicts, - * dynahash has better performance for large entries. - * - Guarantees stable pointers to entries. - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * - * IDENTIFICATION - * src/backend/utils/hash/dynahash.c - * - *------------------------------------------------------------------------- - */ - -/* - * Original comments: - * - * Dynamic hashing, after CACM April 1988 pp 446-457, by Per-Ake Larson. - * Coded into C, with minor code improvements, and with hsearch(3) interface, - * by ejp@ausmelb.oz, Jul 26, 1988: 13:16; - * also, hcreate/hdestroy routines added to simulate hsearch(3). - * - * These routines simulate hsearch(3) and family, with the important - * difference that the hash table is dynamic - can grow indefinitely - * beyond its original size (as supplied to hcreate()). - * - * Performance appears to be comparable to that of hsearch(3). - * The 'source-code' options referred to in hsearch(3)'s 'man' page - * are not implemented; otherwise functionality is identical. - * - * Compilation controls: - * HASH_DEBUG controls some informative traces, mainly for debugging. - * HASH_STATISTICS causes HashAccesses and HashCollisions to be maintained; - * when combined with HASH_DEBUG, these are displayed by hdestroy(). - * - * Problems & fixes to ejp@ausmelb.oz. WARNING: relies on pre-processor - * concatenation property, in probably unnecessary code 'optimization'. - * - * Modified margo@postgres.berkeley.edu February 1990 - * added multiple table interface - * Modified by sullivan@postgres.berkeley.edu April 1990 - * changed ctl structure for shared memory - */ - -#include "postgres.h" - -#include - -#include "access/xact.h" -#include "common/hashfn.h" -#include "port/pg_bitutils.h" -#include "storage/shmem.h" -#include "storage/spin.h" -#include "utils/dynahash.h" -#include "utils/memutils.h" - - -/* - * Constants - * - * A hash table has a top-level "directory", each of whose entries points - * to a "segment" of ssize bucket headers. The maximum number of hash - * buckets is thus dsize * ssize (but dsize may be expansible). Of course, - * the number of records in the table can be larger, but we don't want a - * whole lot of records per bucket or performance goes down. - * - * In a hash table allocated in shared memory, the directory cannot be - * expanded because it must stay at a fixed address. The directory size - * should be selected using hash_select_dirsize (and you'd better have - * a good idea of the maximum number of entries!). For non-shared hash - * tables, the initial directory size can be left at the default. - */ -#define DEF_SEGSIZE 256 -#define DEF_SEGSIZE_SHIFT 8 /* must be log2(DEF_SEGSIZE) */ -#define DEF_DIRSIZE 256 - -/* Number of freelists to be used for a partitioned hash table. */ -#define NUM_FREELISTS 32 - -/* A hash bucket is a linked list of HASHELEMENTs */ -typedef HASHELEMENT *HASHBUCKET; - -/* A hash segment is an array of bucket headers */ -typedef HASHBUCKET *HASHSEGMENT; - -/* - * Per-freelist data. - * - * In a partitioned hash table, each freelist is associated with a specific - * set of hashcodes, as determined by the FREELIST_IDX() macro below. - * nentries tracks the number of live hashtable entries having those hashcodes - * (NOT the number of entries in the freelist, as you might expect). - * - * The coverage of a freelist might be more or less than one partition, so it - * needs its own lock rather than relying on caller locking. Relying on that - * wouldn't work even if the coverage was the same, because of the occasional - * need to "borrow" entries from another freelist; see get_hash_entry(). - * - * Using an array of FreeListData instead of separate arrays of mutexes, - * nentries and freeLists helps to reduce sharing of cache lines between - * different mutexes. - */ -typedef struct -{ - slock_t mutex; /* spinlock for this freelist */ - long nentries; /* number of entries in associated buckets */ - HASHELEMENT *freeList; /* chain of free elements */ -} FreeListData; - -/* - * Header structure for a hash table --- contains all changeable info - * - * In a shared-memory hash table, the HASHHDR is in shared memory, while - * each backend has a local HTAB struct. For a non-shared table, there isn't - * any functional difference between HASHHDR and HTAB, but we separate them - * anyway to share code between shared and non-shared tables. - */ -struct HASHHDR -{ - /* - * The freelist can become a point of contention in high-concurrency hash - * tables, so we use an array of freelists, each with its own mutex and - * nentries count, instead of just a single one. Although the freelists - * normally operate independently, we will scavenge entries from freelists - * other than a hashcode's default freelist when necessary. - * - * If the hash table is not partitioned, only freeList[0] is used and its - * spinlock is not used at all; callers' locking is assumed sufficient. - */ - FreeListData freeList[NUM_FREELISTS]; - - /* These fields can change, but not in a partitioned table */ - /* Also, dsize can't change in a shared table, even if unpartitioned */ - long dsize; /* directory size */ - long nsegs; /* number of allocated segments (<= dsize) */ - uint32 max_bucket; /* ID of maximum bucket in use */ - uint32 high_mask; /* mask to modulo into entire table */ - uint32 low_mask; /* mask to modulo into lower half of table */ - - /* These fields are fixed at hashtable creation */ - Size keysize; /* hash key length in bytes */ - Size entrysize; /* total user element size in bytes */ - long num_partitions; /* # partitions (must be power of 2), or 0 */ - long max_dsize; /* 'dsize' limit if directory is fixed size */ - long ssize; /* segment size --- must be power of 2 */ - int sshift; /* segment shift = log2(ssize) */ - int nelem_alloc; /* number of entries to allocate at once */ - -#ifdef HASH_STATISTICS - - /* - * Count statistics here. NB: stats code doesn't bother with mutex, so - * counts could be corrupted a bit in a partitioned table. - */ - long accesses; - long collisions; -#endif -}; - -#define IS_PARTITIONED(hctl) ((hctl)->num_partitions != 0) - -#define FREELIST_IDX(hctl, hashcode) \ - (IS_PARTITIONED(hctl) ? (hashcode) % NUM_FREELISTS : 0) - -/* - * Top control structure for a hashtable --- in a shared table, each backend - * has its own copy (OK since no fields change at runtime) - */ -struct HTAB -{ - HASHHDR *hctl; /* => shared control information */ - HASHSEGMENT *dir; /* directory of segment starts */ - HashValueFunc hash; /* hash function */ - HashCompareFunc match; /* key comparison function */ - HashCopyFunc keycopy; /* key copying function */ - HashAllocFunc alloc; /* memory allocator */ - MemoryContext hcxt; /* memory context if default allocator used */ - char *tabname; /* table name (for error messages) */ - bool isshared; /* true if table is in shared memory */ - bool isfixed; /* if true, don't enlarge */ - - /* freezing a shared table isn't allowed, so we can keep state here */ - bool frozen; /* true = no more inserts allowed */ - - /* We keep local copies of these fixed values to reduce contention */ - Size keysize; /* hash key length in bytes */ - long ssize; /* segment size --- must be power of 2 */ - int sshift; /* segment shift = log2(ssize) */ -}; - -/* - * Key (also entry) part of a HASHELEMENT - */ -#define ELEMENTKEY(helem) (((char *)(helem)) + MAXALIGN(sizeof(HASHELEMENT))) - -/* - * Obtain element pointer given pointer to key - */ -#define ELEMENT_FROM_KEY(key) \ - ((HASHELEMENT *) (((char *) (key)) - MAXALIGN(sizeof(HASHELEMENT)))) - -/* - * Fast MOD arithmetic, assuming that y is a power of 2 ! - */ -#define MOD(x,y) ((x) & ((y)-1)) - -#ifdef HASH_STATISTICS -static long hash_accesses, - hash_collisions, - hash_expansions; -#endif - -/* - * Private function prototypes - */ -static void *DynaHashAlloc(Size size); -static HASHSEGMENT seg_alloc(HTAB *hashp); -static bool element_alloc(HTAB *hashp, int nelem, int freelist_idx); -static bool dir_realloc(HTAB *hashp); -static bool expand_table(HTAB *hashp); -static HASHBUCKET get_hash_entry(HTAB *hashp, int freelist_idx); -static void hdefault(HTAB *hashp); -static int choose_nelem_alloc(Size entrysize); -static bool init_htab(HTAB *hashp, long nelem); -static void hash_corrupted(HTAB *hashp); -static long next_pow2_long(long num); -static int next_pow2_int(long num); -static void register_seq_scan(HTAB *hashp); -static void deregister_seq_scan(HTAB *hashp); -static bool has_seq_scans(HTAB *hashp); - - -/* - * memory allocation support - */ -static __thread MemoryContext CurrentDynaHashCxt = NULL; - - -static void * -DynaHashAlloc(Size size) -{ - Assert(MemoryContextIsValid(CurrentDynaHashCxt)); - return MemoryContextAlloc(CurrentDynaHashCxt, size); -} - - -/* - * HashCompareFunc for string keys - * - * Because we copy keys with strlcpy(), they will be truncated at keysize-1 - * bytes, so we can only compare that many ... hence strncmp is almost but - * not quite the right thing. - */ - - - -/************************** CREATE ROUTINES **********************/ - -/* - * hash_create -- create a new dynamic hash table - * - * tabname: a name for the table (for debugging purposes) - * nelem: maximum number of elements expected - * *info: additional table parameters, as indicated by flags - * flags: bitmask indicating which parameters to take from *info - * - * The flags value *must* include HASH_ELEM. (Formerly, this was nominally - * optional, but the default keysize and entrysize values were useless.) - * The flags value must also include exactly one of HASH_STRINGS, HASH_BLOBS, - * or HASH_FUNCTION, to define the key hashing semantics (C strings, - * binary blobs, or custom, respectively). Callers specifying a custom - * hash function will likely also want to use HASH_COMPARE, and perhaps - * also HASH_KEYCOPY, to control key comparison and copying. - * Another often-used flag is HASH_CONTEXT, to allocate the hash table - * under info->hcxt rather than under TopMemoryContext; the default - * behavior is only suitable for session-lifespan hash tables. - * Other flags bits are special-purpose and seldom used, except for those - * associated with shared-memory hash tables, for which see ShmemInitHash(). - * - * Fields in *info are read only when the associated flags bit is set. - * It is not necessary to initialize other fields of *info. - * Neither tabname nor *info need persist after the hash_create() call. - * - * Note: It is deprecated for callers of hash_create() to explicitly specify - * string_hash, tag_hash, uint32_hash, or oid_hash. Just set HASH_STRINGS or - * HASH_BLOBS. Use HASH_FUNCTION only when you want something other than - * one of these. - * - * Note: for a shared-memory hashtable, nelem needs to be a pretty good - * estimate, since we can't expand the table on the fly. But an unshared - * hashtable can be expanded on-the-fly, so it's better for nelem to be - * on the small side and let the table grow if it's exceeded. An overly - * large nelem will penalize hash_seq_search speed without buying much. - */ - - -/* - * Set default HASHHDR parameters. - */ -#ifdef HASH_STATISTICS -#endif - -/* - * Given the user-specified entry size, choose nelem_alloc, ie, how many - * elements to add to the hash table when we need more. - */ - - -/* - * Compute derived fields of hctl and build the initial directory/segment - * arrays - */ -#ifdef HASH_DEBUG -#endif - -/* - * Estimate the space needed for a hashtable containing the given number - * of entries of given size. - * NOTE: this is used to estimate the footprint of hashtables in shared - * memory; therefore it does not count HTAB which is in local memory. - * NB: assumes that all hash structure parameters have default values! - */ - - -/* - * Select an appropriate directory size for a hashtable with the given - * maximum number of entries. - * This is only needed for hashtables in shared memory, whose directories - * cannot be expanded dynamically. - * NB: assumes that all hash structure parameters have default values! - * - * XXX this had better agree with the behavior of init_htab()... - */ - - -/* - * Compute the required initial memory allocation for a shared-memory - * hashtable with the given parameters. We need space for the HASHHDR - * and for the (non expansible) directory. - */ - - - -/********************** DESTROY ROUTINES ************************/ - - - -#ifdef HASH_STATISTICS -#endif - -/*******************************SEARCH ROUTINES *****************************/ - - -/* - * get_hash_value -- exported routine to calculate a key's hash value - * - * We export this because for partitioned tables, callers need to compute - * the partition number (from the low-order bits of the hash value) before - * searching. - */ - - -/* Convert a hash value to a bucket number */ -static inline uint32 -calc_bucket(HASHHDR *hctl, uint32 hash_val) -{ - uint32 bucket; - - bucket = hash_val & hctl->high_mask; - if (bucket > hctl->max_bucket) - bucket = bucket & hctl->low_mask; - - return bucket; -} - -/* - * hash_search -- look up key in table and perform action - * hash_search_with_hash_value -- same, with key's hash value already computed - * - * action is one of: - * HASH_FIND: look up key in table - * HASH_ENTER: look up key in table, creating entry if not present - * HASH_ENTER_NULL: same, but return NULL if out of memory - * HASH_REMOVE: look up key in table, remove entry if present - * - * Return value is a pointer to the element found/entered/removed if any, - * or NULL if no match was found. (NB: in the case of the REMOVE action, - * the result is a dangling pointer that shouldn't be dereferenced!) - * - * HASH_ENTER will normally ereport a generic "out of memory" error if - * it is unable to create a new entry. The HASH_ENTER_NULL operation is - * the same except it will return NULL if out of memory. Note that - * HASH_ENTER_NULL cannot be used with the default palloc-based allocator, - * since palloc internally ereports on out-of-memory. - * - * If foundPtr isn't NULL, then *foundPtr is set true if we found an - * existing entry in the table, false otherwise. This is needed in the - * HASH_ENTER case, but is redundant with the return value otherwise. - * - * For hash_search_with_hash_value, the hashvalue parameter must have been - * calculated with get_hash_value(). - */ -void * -hash_search(HTAB *hashp, - const void *keyPtr, - HASHACTION action, - bool *foundPtr) -{ - return hash_search_with_hash_value(hashp, - keyPtr, - hashp->hash(keyPtr, hashp->keysize), - action, - foundPtr); -} - -void * -hash_search_with_hash_value(HTAB *hashp, - const void *keyPtr, - uint32 hashvalue, - HASHACTION action, - bool *foundPtr) -{ - HASHHDR *hctl = hashp->hctl; - int freelist_idx = FREELIST_IDX(hctl, hashvalue); - Size keysize; - uint32 bucket; - long segment_num; - long segment_ndx; - HASHSEGMENT segp; - HASHBUCKET currBucket; - HASHBUCKET *prevBucketPtr; - HashCompareFunc match; - -#ifdef HASH_STATISTICS - hash_accesses++; - hctl->accesses++; -#endif - - /* - * If inserting, check if it is time to split a bucket. - * - * NOTE: failure to expand table is not a fatal error, it just means we - * have to run at higher fill factor than we wanted. However, if we're - * using the palloc allocator then it will throw error anyway on - * out-of-memory, so we must do this before modifying the table. - */ - if (action == HASH_ENTER || action == HASH_ENTER_NULL) - { - /* - * Can't split if running in partitioned mode, nor if frozen, nor if - * table is the subject of any active hash_seq_search scans. - */ - if (hctl->freeList[0].nentries > (long) hctl->max_bucket && - !IS_PARTITIONED(hctl) && !hashp->frozen && - !has_seq_scans(hashp)) - (void) expand_table(hashp); - } - - /* - * Do the initial lookup - */ - bucket = calc_bucket(hctl, hashvalue); - - segment_num = bucket >> hashp->sshift; - segment_ndx = MOD(bucket, hashp->ssize); - - segp = hashp->dir[segment_num]; - - if (segp == NULL) - hash_corrupted(hashp); - - prevBucketPtr = &segp[segment_ndx]; - currBucket = *prevBucketPtr; - - /* - * Follow collision chain looking for matching key - */ - match = hashp->match; /* save one fetch in inner loop */ - keysize = hashp->keysize; /* ditto */ - - while (currBucket != NULL) - { - if (currBucket->hashvalue == hashvalue && - match(ELEMENTKEY(currBucket), keyPtr, keysize) == 0) - break; - prevBucketPtr = &(currBucket->link); - currBucket = *prevBucketPtr; -#ifdef HASH_STATISTICS - hash_collisions++; - hctl->collisions++; -#endif - } - - if (foundPtr) - *foundPtr = (bool) (currBucket != NULL); - - /* - * OK, now what? - */ - switch (action) - { - case HASH_FIND: - if (currBucket != NULL) - return (void *) ELEMENTKEY(currBucket); - return NULL; - - case HASH_REMOVE: - if (currBucket != NULL) - { - /* if partitioned, must lock to touch nentries and freeList */ - if (IS_PARTITIONED(hctl)) - SpinLockAcquire(&(hctl->freeList[freelist_idx].mutex)); - - /* delete the record from the appropriate nentries counter. */ - Assert(hctl->freeList[freelist_idx].nentries > 0); - hctl->freeList[freelist_idx].nentries--; - - /* remove record from hash bucket's chain. */ - *prevBucketPtr = currBucket->link; - - /* add the record to the appropriate freelist. */ - currBucket->link = hctl->freeList[freelist_idx].freeList; - hctl->freeList[freelist_idx].freeList = currBucket; - - if (IS_PARTITIONED(hctl)) - SpinLockRelease(&hctl->freeList[freelist_idx].mutex); - - /* - * better hope the caller is synchronizing access to this - * element, because someone else is going to reuse it the next - * time something is added to the table - */ - return (void *) ELEMENTKEY(currBucket); - } - return NULL; - - case HASH_ENTER_NULL: - /* ENTER_NULL does not work with palloc-based allocator */ - Assert(hashp->alloc != DynaHashAlloc); - /* FALL THRU */ - - case HASH_ENTER: - /* Return existing element if found, else create one */ - if (currBucket != NULL) - return (void *) ELEMENTKEY(currBucket); - - /* disallow inserts if frozen */ - if (hashp->frozen) - elog(ERROR, "cannot insert into frozen hashtable \"%s\"", - hashp->tabname); - - currBucket = get_hash_entry(hashp, freelist_idx); - if (currBucket == NULL) - { - /* out of memory */ - if (action == HASH_ENTER_NULL) - return NULL; - /* report a generic message */ - if (hashp->isshared) - ereport(ERROR, - (errcode(ERRCODE_OUT_OF_MEMORY), - errmsg("out of shared memory"))); - else - ereport(ERROR, - (errcode(ERRCODE_OUT_OF_MEMORY), - errmsg("out of memory"))); - } - - /* link into hashbucket chain */ - *prevBucketPtr = currBucket; - currBucket->link = NULL; - - /* copy key into record */ - currBucket->hashvalue = hashvalue; - hashp->keycopy(ELEMENTKEY(currBucket), keyPtr, keysize); - - /* - * Caller is expected to fill the data field on return. DO NOT - * insert any code that could possibly throw error here, as doing - * so would leave the table entry incomplete and hence corrupt the - * caller's data structure. - */ - - return (void *) ELEMENTKEY(currBucket); - } - - elog(ERROR, "unrecognized hash action code: %d", (int) action); - - return NULL; /* keep compiler quiet */ -} - -/* - * hash_update_hash_key -- change the hash key of an existing table entry - * - * This is equivalent to removing the entry, making a new entry, and copying - * over its data, except that the entry never goes to the table's freelist. - * Therefore this cannot suffer an out-of-memory failure, even if there are - * other processes operating in other partitions of the hashtable. - * - * Returns true if successful, false if the requested new hash key is already - * present. Throws error if the specified entry pointer isn't actually a - * table member. - * - * NB: currently, there is no special case for old and new hash keys being - * identical, which means we'll report false for that situation. This is - * preferable for existing uses. - * - * NB: for a partitioned hashtable, caller must hold lock on both relevant - * partitions, if the new hash key would belong to a different partition. - */ -#ifdef HASH_STATISTICS -#endif -#ifdef HASH_STATISTICS -#endif - -/* - * Allocate a new hashtable entry if possible; return NULL if out of memory. - * (Or, if the underlying space allocator throws error for out-of-memory, - * we won't return at all.) - */ -static HASHBUCKET -get_hash_entry(HTAB *hashp, int freelist_idx) -{ - HASHHDR *hctl = hashp->hctl; - HASHBUCKET newElement; - - for (;;) - { - /* if partitioned, must lock to touch nentries and freeList */ - if (IS_PARTITIONED(hctl)) - SpinLockAcquire(&hctl->freeList[freelist_idx].mutex); - - /* try to get an entry from the freelist */ - newElement = hctl->freeList[freelist_idx].freeList; - - if (newElement != NULL) - break; - - if (IS_PARTITIONED(hctl)) - SpinLockRelease(&hctl->freeList[freelist_idx].mutex); - - /* - * No free elements in this freelist. In a partitioned table, there - * might be entries in other freelists, but to reduce contention we - * prefer to first try to get another chunk of buckets from the main - * shmem allocator. If that fails, though, we *MUST* root through all - * the other freelists before giving up. There are multiple callers - * that assume that they can allocate every element in the initially - * requested table size, or that deleting an element guarantees they - * can insert a new element, even if shared memory is entirely full. - * Failing because the needed element is in a different freelist is - * not acceptable. - */ - if (!element_alloc(hashp, hctl->nelem_alloc, freelist_idx)) - { - int borrow_from_idx; - - if (!IS_PARTITIONED(hctl)) - return NULL; /* out of memory */ - - /* try to borrow element from another freelist */ - borrow_from_idx = freelist_idx; - for (;;) - { - borrow_from_idx = (borrow_from_idx + 1) % NUM_FREELISTS; - if (borrow_from_idx == freelist_idx) - break; /* examined all freelists, fail */ - - SpinLockAcquire(&(hctl->freeList[borrow_from_idx].mutex)); - newElement = hctl->freeList[borrow_from_idx].freeList; - - if (newElement != NULL) - { - hctl->freeList[borrow_from_idx].freeList = newElement->link; - SpinLockRelease(&(hctl->freeList[borrow_from_idx].mutex)); - - /* careful: count the new element in its proper freelist */ - SpinLockAcquire(&hctl->freeList[freelist_idx].mutex); - hctl->freeList[freelist_idx].nentries++; - SpinLockRelease(&hctl->freeList[freelist_idx].mutex); - - return newElement; - } - - SpinLockRelease(&(hctl->freeList[borrow_from_idx].mutex)); - } - - /* no elements available to borrow either, so out of memory */ - return NULL; - } - } - - /* remove entry from freelist, bump nentries */ - hctl->freeList[freelist_idx].freeList = newElement->link; - hctl->freeList[freelist_idx].nentries++; - - if (IS_PARTITIONED(hctl)) - SpinLockRelease(&hctl->freeList[freelist_idx].mutex); - - return newElement; -} - -/* - * hash_get_num_entries -- get the number of entries in a hashtable - */ - - -/* - * hash_seq_init/_search/_term - * Sequentially search through hash table and return - * all the elements one by one, return NULL when no more. - * - * hash_seq_term should be called if and only if the scan is abandoned before - * completion; if hash_seq_search returns NULL then it has already done the - * end-of-scan cleanup. - * - * NOTE: caller may delete the returned element before continuing the scan. - * However, deleting any other element while the scan is in progress is - * UNDEFINED (it might be the one that curIndex is pointing at!). Also, - * if elements are added to the table while the scan is in progress, it is - * unspecified whether they will be visited by the scan or not. - * - * NOTE: it is possible to use hash_seq_init/hash_seq_search without any - * worry about hash_seq_term cleanup, if the hashtable is first locked against - * further insertions by calling hash_freeze. - * - * NOTE: to use this with a partitioned hashtable, caller had better hold - * at least shared lock on all partitions of the table throughout the scan! - * We can cope with insertions or deletions by our own backend, but *not* - * with concurrent insertions or deletions by another. - */ - - - - - - -/* - * hash_freeze - * Freeze a hashtable against future insertions (deletions are - * still allowed) - * - * The reason for doing this is that by preventing any more bucket splits, - * we no longer need to worry about registering hash_seq_search scans, - * and thus caller need not be careful about ensuring hash_seq_term gets - * called at the right times. - * - * Multiple calls to hash_freeze() are allowed, but you can't freeze a table - * with active scans (since hash_seq_term would then do the wrong thing). - */ - - - -/********************************* UTILITIES ************************/ - -/* - * Expand the table by adding one more hash bucket. - */ -static bool -expand_table(HTAB *hashp) -{ - HASHHDR *hctl = hashp->hctl; - HASHSEGMENT old_seg, - new_seg; - long old_bucket, - new_bucket; - long new_segnum, - new_segndx; - long old_segnum, - old_segndx; - HASHBUCKET *oldlink, - *newlink; - HASHBUCKET currElement, - nextElement; - - Assert(!IS_PARTITIONED(hctl)); - -#ifdef HASH_STATISTICS - hash_expansions++; -#endif - - new_bucket = hctl->max_bucket + 1; - new_segnum = new_bucket >> hashp->sshift; - new_segndx = MOD(new_bucket, hashp->ssize); - - if (new_segnum >= hctl->nsegs) - { - /* Allocate new segment if necessary -- could fail if dir full */ - if (new_segnum >= hctl->dsize) - if (!dir_realloc(hashp)) - return false; - if (!(hashp->dir[new_segnum] = seg_alloc(hashp))) - return false; - hctl->nsegs++; - } - - /* OK, we created a new bucket */ - hctl->max_bucket++; - - /* - * *Before* changing masks, find old bucket corresponding to same hash - * values; values in that bucket may need to be relocated to new bucket. - * Note that new_bucket is certainly larger than low_mask at this point, - * so we can skip the first step of the regular hash mask calc. - */ - old_bucket = (new_bucket & hctl->low_mask); - - /* - * If we crossed a power of 2, readjust masks. - */ - if ((uint32) new_bucket > hctl->high_mask) - { - hctl->low_mask = hctl->high_mask; - hctl->high_mask = (uint32) new_bucket | hctl->low_mask; - } - - /* - * Relocate records to the new bucket. NOTE: because of the way the hash - * masking is done in calc_bucket, only one old bucket can need to be - * split at this point. With a different way of reducing the hash value, - * that might not be true! - */ - old_segnum = old_bucket >> hashp->sshift; - old_segndx = MOD(old_bucket, hashp->ssize); - - old_seg = hashp->dir[old_segnum]; - new_seg = hashp->dir[new_segnum]; - - oldlink = &old_seg[old_segndx]; - newlink = &new_seg[new_segndx]; - - for (currElement = *oldlink; - currElement != NULL; - currElement = nextElement) - { - nextElement = currElement->link; - if ((long) calc_bucket(hctl, currElement->hashvalue) == old_bucket) - { - *oldlink = currElement; - oldlink = &currElement->link; - } - else - { - *newlink = currElement; - newlink = &currElement->link; - } - } - /* don't forget to terminate the rebuilt hash chains... */ - *oldlink = NULL; - *newlink = NULL; - - return true; -} - - -static bool -dir_realloc(HTAB *hashp) -{ - HASHSEGMENT *p; - HASHSEGMENT *old_p; - long new_dsize; - long old_dirsize; - long new_dirsize; - - if (hashp->hctl->max_dsize != NO_MAX_DSIZE) - return false; - - /* Reallocate directory */ - new_dsize = hashp->hctl->dsize << 1; - old_dirsize = hashp->hctl->dsize * sizeof(HASHSEGMENT); - new_dirsize = new_dsize * sizeof(HASHSEGMENT); - - old_p = hashp->dir; - CurrentDynaHashCxt = hashp->hcxt; - p = (HASHSEGMENT *) hashp->alloc((Size) new_dirsize); - - if (p != NULL) - { - memcpy(p, old_p, old_dirsize); - MemSet(((char *) p) + old_dirsize, 0, new_dirsize - old_dirsize); - hashp->dir = p; - hashp->hctl->dsize = new_dsize; - - /* XXX assume the allocator is palloc, so we know how to free */ - Assert(hashp->alloc == DynaHashAlloc); - pfree(old_p); - - return true; - } - - return false; -} - - -static HASHSEGMENT -seg_alloc(HTAB *hashp) -{ - HASHSEGMENT segp; - - CurrentDynaHashCxt = hashp->hcxt; - segp = (HASHSEGMENT) hashp->alloc(sizeof(HASHBUCKET) * hashp->ssize); - - if (!segp) - return NULL; - - MemSet(segp, 0, sizeof(HASHBUCKET) * hashp->ssize); - - return segp; -} - -/* - * allocate some new elements and link them into the indicated free list - */ -static bool -element_alloc(HTAB *hashp, int nelem, int freelist_idx) -{ - HASHHDR *hctl = hashp->hctl; - Size elementSize; - HASHELEMENT *firstElement; - HASHELEMENT *tmpElement; - HASHELEMENT *prevElement; - int i; - - if (hashp->isfixed) - return false; - - /* Each element has a HASHELEMENT header plus user data. */ - elementSize = MAXALIGN(sizeof(HASHELEMENT)) + MAXALIGN(hctl->entrysize); - - CurrentDynaHashCxt = hashp->hcxt; - firstElement = (HASHELEMENT *) hashp->alloc(nelem * elementSize); - - if (!firstElement) - return false; - - /* prepare to link all the new entries into the freelist */ - prevElement = NULL; - tmpElement = firstElement; - for (i = 0; i < nelem; i++) - { - tmpElement->link = prevElement; - prevElement = tmpElement; - tmpElement = (HASHELEMENT *) (((char *) tmpElement) + elementSize); - } - - /* if partitioned, must lock to touch freeList */ - if (IS_PARTITIONED(hctl)) - SpinLockAcquire(&hctl->freeList[freelist_idx].mutex); - - /* freelist could be nonempty if two backends did this concurrently */ - firstElement->link = hctl->freeList[freelist_idx].freeList; - hctl->freeList[freelist_idx].freeList = prevElement; - - if (IS_PARTITIONED(hctl)) - SpinLockRelease(&hctl->freeList[freelist_idx].mutex); - - return true; -} - -/* complain when we have detected a corrupted hashtable */ -static void -hash_corrupted(HTAB *hashp) -{ - /* - * If the corruption is in a shared hashtable, we'd better force a - * systemwide restart. Otherwise, just shut down this one backend. - */ - if (hashp->isshared) - elog(PANIC, "hash table \"%s\" corrupted", hashp->tabname); - else - elog(FATAL, "hash table \"%s\" corrupted", hashp->tabname); -} - -/* calculate ceil(log base 2) of num */ -#if SIZEOF_LONG < 8 -#else -#endif - -/* calculate first power of 2 >= num, bounded to what will fit in a long */ - - -/* calculate first power of 2 >= num, bounded to what will fit in an int */ - - - -/************************* SEQ SCAN TRACKING ************************/ - -/* - * We track active hash_seq_search scans here. The need for this mechanism - * comes from the fact that a scan will get confused if a bucket split occurs - * while it's in progress: it might visit entries twice, or even miss some - * entirely (if it's partway through the same bucket that splits). Hence - * we want to inhibit bucket splits if there are any active scans on the - * table being inserted into. This is a fairly rare case in current usage, - * so just postponing the split until the next insertion seems sufficient. - * - * Given present usages of the function, only a few scans are likely to be - * open concurrently; so a finite-size stack of open scans seems sufficient, - * and we don't worry that linear search is too slow. Note that we do - * allow multiple scans of the same hashtable to be open concurrently. - * - * This mechanism can support concurrent scan and insertion in a shared - * hashtable if it's the same backend doing both. It would fail otherwise, - * but locking reasons seem to preclude any such scenario anyway, so we don't - * worry. - * - * This arrangement is reasonably robust if a transient hashtable is deleted - * without notifying us. The absolute worst case is we might inhibit splits - * in another table created later at exactly the same address. We will give - * a warning at transaction end for reference leaks, so any bugs leading to - * lack of notification should be easy to catch. - */ - -#define MAX_SEQ_SCANS 100 - -static __thread HTAB *seq_scan_tables[MAX_SEQ_SCANS]; - /* tables being scanned */ - /* subtransaction nest level */ -static __thread int num_seq_scans = 0; - - - -/* Register a table as having an active hash_seq_search scan */ - - -/* Deregister an active scan */ - - -/* Check if a table has any active scan */ -static bool -has_seq_scans(HTAB *hashp) -{ - int i; - - for (i = 0; i < num_seq_scans; i++) - { - if (seq_scan_tables[i] == hashp) - return true; - } - return false; -} - -/* Clean up any open scans at end of transaction */ - - -/* Clean up any open scans at end of subtransaction */ - diff --git a/parser/src_backend_utils_init_globals.c b/parser/src_backend_utils_init_globals.c index 653a7c12..7a61bfbf 100644 --- a/parser/src_backend_utils_init_globals.c +++ b/parser/src_backend_utils_init_globals.c @@ -13,7 +13,7 @@ * globals.c * global variable declarations * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -154,7 +154,10 @@ __thread bool ExitOnAnyError = false; - /* GUC parameters for vacuum */ +/* GUC parameters for vacuum */ + + + diff --git a/parser/src_backend_utils_mb_mbutils.c b/parser/src_backend_utils_mb_mbutils.c index 728171cf..05a33729 100644 --- a/parser/src_backend_utils_mb_mbutils.c +++ b/parser/src_backend_utils_mb_mbutils.c @@ -45,7 +45,7 @@ * the result is validly encoded according to the destination encoding. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -62,6 +62,7 @@ #include "utils/builtins.h" #include "utils/memutils.h" #include "utils/syscache.h" +#include "varatt.h" /* * We maintain a simple linked list caching the fmgr lookup info for the @@ -184,7 +185,7 @@ pg_get_client_encoding(void) * * The output is null-terminated. * - * If destlen < srclen * MAX_CONVERSION_LENGTH + 1, the converted output + * If destlen < srclen * MAX_CONVERSION_INPUT_LENGTH + 1, the converted output * wouldn't necessarily fit in the output buffer, and the function will not * convert the whole input. * @@ -339,12 +340,20 @@ pg_unicode_to_server(pg_wchar c, unsigned char *s) FunctionCall6(Utf8ToServerConvProc, Int32GetDatum(PG_UTF8), Int32GetDatum(server_encoding), - CStringGetDatum(c_as_utf8), - CStringGetDatum(s), + CStringGetDatum((char *) c_as_utf8), + CStringGetDatum((char *) s), Int32GetDatum(c_as_utf8_len), BoolGetDatum(false)); } +/* + * Convert a single Unicode code point into a string in the server encoding. + * + * Same as pg_unicode_to_server(), except that we don't throw errors, + * but simply return false on conversion failure. + */ + + /* convert a multibyte string to a wchar */ diff --git a/parser/src_backend_utils_misc_guc.c b/parser/src_backend_utils_misc_guc.c deleted file mode 100644 index c24a2d3f..00000000 --- a/parser/src_backend_utils_misc_guc.c +++ /dev/null @@ -1,1993 +0,0 @@ -/*-------------------------------------------------------------------- - * Symbols referenced in this file: - * - log_min_messages - * - client_min_messages - * - backtrace_functions - * - backtrace_symbol_list - * - check_function_bodies - *-------------------------------------------------------------------- - */ - -/*-------------------------------------------------------------------- - * guc.c - * - * Support for grand unified configuration scheme, including SET - * command, configuration file, and command line options. - * See src/backend/utils/misc/README for more information. - * - * - * Copyright (c) 2000-2022, PostgreSQL Global Development Group - * Written by Peter Eisentraut . - * - * IDENTIFICATION - * src/backend/utils/misc/guc.c - * - *-------------------------------------------------------------------- - */ -#include "postgres.h" - -#include -#include -#include -#include -#ifdef HAVE_POLL_H -#include -#endif -#ifndef WIN32 -#include -#endif -#include -#ifdef HAVE_SYSLOG -#include -#endif -#include - -#include "access/commit_ts.h" -#include "access/gin.h" -#include "access/rmgr.h" -#include "access/tableam.h" -#include "access/toast_compression.h" -#include "access/transam.h" -#include "access/twophase.h" -#include "access/xact.h" -#include "access/xlog_internal.h" -#include "access/xlogprefetcher.h" -#include "access/xlogrecovery.h" -#include "catalog/namespace.h" -#include "catalog/objectaccess.h" -#include "catalog/pg_authid.h" -#include "catalog/pg_parameter_acl.h" -#include "catalog/storage.h" -#include "commands/async.h" -#include "commands/prepare.h" -#include "commands/tablespace.h" -#include "commands/trigger.h" -#include "commands/user.h" -#include "commands/vacuum.h" -#include "commands/variable.h" -#include "common/string.h" -#include "funcapi.h" -#include "jit/jit.h" -#include "libpq/auth.h" -#include "libpq/libpq.h" -#include "libpq/pqformat.h" -#include "miscadmin.h" -#include "optimizer/cost.h" -#include "optimizer/geqo.h" -#include "optimizer/optimizer.h" -#include "optimizer/paths.h" -#include "optimizer/planmain.h" -#include "parser/parse_expr.h" -#include "parser/parse_type.h" -#include "parser/parser.h" -#include "parser/scansup.h" -#include "pgstat.h" -#include "postmaster/autovacuum.h" -#include "postmaster/bgworker_internals.h" -#include "postmaster/bgwriter.h" -#include "postmaster/postmaster.h" -#include "postmaster/startup.h" -#include "postmaster/syslogger.h" -#include "postmaster/walwriter.h" -#include "replication/logicallauncher.h" -#include "replication/reorderbuffer.h" -#include "replication/slot.h" -#include "replication/syncrep.h" -#include "replication/walreceiver.h" -#include "replication/walsender.h" -#include "storage/bufmgr.h" -#include "storage/dsm_impl.h" -#include "storage/fd.h" -#include "storage/large_object.h" -#include "storage/pg_shmem.h" -#include "storage/predicate.h" -#include "storage/proc.h" -#include "storage/standby.h" -#include "tcop/tcopprot.h" -#include "tsearch/ts_cache.h" -#include "utils/acl.h" -#include "utils/backend_status.h" -#include "utils/builtins.h" -#include "utils/bytea.h" -#include "utils/float.h" -#include "utils/guc_tables.h" -#include "utils/memutils.h" -#include "utils/pg_locale.h" -#include "utils/pg_lsn.h" -#include "utils/plancache.h" -#include "utils/portal.h" -#include "utils/ps_status.h" -#include "utils/queryjumble.h" -#include "utils/rls.h" -#include "utils/snapmgr.h" -#include "utils/tzparser.h" -#include "utils/inval.h" -#include "utils/varlena.h" -#include "utils/xml.h" - -#ifndef PG_KRB_SRVTAB -#define PG_KRB_SRVTAB "" -#endif - -#define CONFIG_FILENAME "postgresql.conf" -#define HBA_FILENAME "pg_hba.conf" -#define IDENT_FILENAME "pg_ident.conf" - -#ifdef EXEC_BACKEND -#define CONFIG_EXEC_PARAMS "global/config_exec_params" -#define CONFIG_EXEC_PARAMS_NEW "global/config_exec_params.new" -#endif - -/* - * Precision with which REAL type guc values are to be printed for GUC - * serialization. - */ -#define REALTYPE_PRECISION 17 - -/* XXX these should appear in other modules' header files */ -extern bool Log_disconnections; -extern int CommitDelay; -extern int CommitSiblings; -extern char *default_tablespace; -extern char *temp_tablespaces; -extern bool ignore_checksum_failure; -extern bool ignore_invalid_pages; -extern bool synchronize_seqscans; - -#ifdef TRACE_SYNCSCAN -extern bool trace_syncscan; -#endif -#ifdef DEBUG_BOUNDED_SORT -extern bool optimize_bounded_sort; -#endif - - - - - -/* global variables for check hook support */ - - - - -static void do_serialize(char **destptr, Size *maxbytes, const char *fmt,...) pg_attribute_printf(3, 4); - -static void set_config_sourcefile(const char *name, char *sourcefile, - int sourceline); -static bool call_bool_check_hook(struct config_bool *conf, bool *newval, - void **extra, GucSource source, int elevel); -static bool call_int_check_hook(struct config_int *conf, int *newval, - void **extra, GucSource source, int elevel); -static bool call_real_check_hook(struct config_real *conf, double *newval, - void **extra, GucSource source, int elevel); -static bool call_string_check_hook(struct config_string *conf, char **newval, - void **extra, GucSource source, int elevel); -static bool call_enum_check_hook(struct config_enum *conf, int *newval, - void **extra, GucSource source, int elevel); - -static bool check_log_destination(char **newval, void **extra, GucSource source); -static void assign_log_destination(const char *newval, void *extra); - -static bool check_wal_consistency_checking(char **newval, void **extra, - GucSource source); -static void assign_wal_consistency_checking(const char *newval, void *extra); - -#ifdef HAVE_SYSLOG - -#else -static int syslog_facility = 0; -#endif - -static void assign_syslog_facility(int newval, void *extra); -static void assign_syslog_ident(const char *newval, void *extra); -static void assign_session_replication_role(int newval, void *extra); -static bool check_temp_buffers(int *newval, void **extra, GucSource source); -static bool check_bonjour(bool *newval, void **extra, GucSource source); -static bool check_ssl(bool *newval, void **extra, GucSource source); -static bool check_stage_log_stats(bool *newval, void **extra, GucSource source); -static bool check_log_stats(bool *newval, void **extra, GucSource source); -static bool check_canonical_path(char **newval, void **extra, GucSource source); -static bool check_timezone_abbreviations(char **newval, void **extra, GucSource source); -static void assign_timezone_abbreviations(const char *newval, void *extra); -static void pg_timezone_abbrev_initialize(void); -static const char *show_archive_command(void); -static void assign_tcp_keepalives_idle(int newval, void *extra); -static void assign_tcp_keepalives_interval(int newval, void *extra); -static void assign_tcp_keepalives_count(int newval, void *extra); -static void assign_tcp_user_timeout(int newval, void *extra); -static const char *show_tcp_keepalives_idle(void); -static const char *show_tcp_keepalives_interval(void); -static const char *show_tcp_keepalives_count(void); -static const char *show_tcp_user_timeout(void); -static bool check_maxconnections(int *newval, void **extra, GucSource source); -static bool check_max_worker_processes(int *newval, void **extra, GucSource source); -static bool check_autovacuum_max_workers(int *newval, void **extra, GucSource source); -static bool check_max_wal_senders(int *newval, void **extra, GucSource source); -static bool check_autovacuum_work_mem(int *newval, void **extra, GucSource source); -static bool check_effective_io_concurrency(int *newval, void **extra, GucSource source); -static bool check_maintenance_io_concurrency(int *newval, void **extra, GucSource source); -static bool check_huge_page_size(int *newval, void **extra, GucSource source); -static bool check_client_connection_check_interval(int *newval, void **extra, GucSource source); -static void assign_maintenance_io_concurrency(int newval, void *extra); -static bool check_application_name(char **newval, void **extra, GucSource source); -static void assign_application_name(const char *newval, void *extra); -static bool check_cluster_name(char **newval, void **extra, GucSource source); -static const char *show_unix_socket_permissions(void); -static const char *show_log_file_mode(void); -static const char *show_data_directory_mode(void); -static const char *show_in_hot_standby(void); -static bool check_backtrace_functions(char **newval, void **extra, GucSource source); -static void assign_backtrace_functions(const char *newval, void *extra); -static bool check_recovery_target_timeline(char **newval, void **extra, GucSource source); -static void assign_recovery_target_timeline(const char *newval, void *extra); -static bool check_recovery_target(char **newval, void **extra, GucSource source); -static void assign_recovery_target(const char *newval, void *extra); -static bool check_recovery_target_xid(char **newval, void **extra, GucSource source); -static void assign_recovery_target_xid(const char *newval, void *extra); -static bool check_recovery_target_time(char **newval, void **extra, GucSource source); -static void assign_recovery_target_time(const char *newval, void *extra); -static bool check_recovery_target_name(char **newval, void **extra, GucSource source); -static void assign_recovery_target_name(const char *newval, void *extra); -static bool check_recovery_target_lsn(char **newval, void **extra, GucSource source); -static void assign_recovery_target_lsn(const char *newval, void *extra); -static bool check_primary_slot_name(char **newval, void **extra, GucSource source); -static bool check_default_with_oids(bool *newval, void **extra, GucSource source); - -/* Private functions in guc-file.l that need to be called from guc.c */ -static ConfigVariable *ProcessConfigFileInternal(GucContext context, - bool applySettings, int elevel); - -/* - * Track whether there were any deferred checks for custom resource managers - * specified in wal_consistency_checking. - */ - - -/* - * Options for enum values defined in this module. - * - * NOTE! Option values may not contain double quotes! - */ - - - -StaticAssertDecl(lengthof(bytea_output_options) == (BYTEA_OUTPUT_HEX + 2), - "array length mismatch"); - -/* - * We have different sets for client and server message level options because - * they sort slightly different (see "log" level), and because "fatal"/"panic" - * aren't sensible for client_min_messages. - */ - - - - - - -StaticAssertDecl(lengthof(intervalstyle_options) == (INTSTYLE_ISO_8601 + 2), - "array length mismatch"); - - - -StaticAssertDecl(lengthof(log_error_verbosity_options) == (PGERROR_VERBOSE + 2), - "array length mismatch"); - - - -StaticAssertDecl(lengthof(log_statement_options) == (LOGSTMT_ALL + 2), - "array length mismatch"); - - - - - -StaticAssertDecl(lengthof(session_replication_role_options) == (SESSION_REPLICATION_ROLE_LOCAL + 2), - "array length mismatch"); - -#ifdef HAVE_SYSLOG -#else -#endif - - - -StaticAssertDecl(lengthof(track_function_options) == (TRACK_FUNC_ALL + 2), - "array length mismatch"); - - - -StaticAssertDecl(lengthof(stats_fetch_consistency) == (PGSTAT_FETCH_CONSISTENCY_SNAPSHOT + 2), - "array length mismatch"); - - - -StaticAssertDecl(lengthof(xmlbinary_options) == (XMLBINARY_HEX + 2), - "array length mismatch"); - - - -StaticAssertDecl(lengthof(xmloption_options) == (XMLOPTION_CONTENT + 2), - "array length mismatch"); - -/* - * Although only "on", "off", and "safe_encoding" are documented, we - * accept all the likely variants of "on" and "off". - */ - - -/* - * Although only "on", "off", and "auto" are documented, we accept - * all the likely variants of "on" and "off". - */ - - -/* - * Although only "on", "off", and "partition" are documented, we - * accept all the likely variants of "on" and "off". - */ - - -/* - * Although only "on", "off", "remote_apply", "remote_write", and "local" are - * documented, we accept all the likely variants of "on" and "off". - */ - - -/* - * Although only "on", "off", "try" are documented, we accept all the likely - * variants of "on" and "off". - */ - - - - - - - - - - - - -StaticAssertDecl(lengthof(ssl_protocol_versions_info) == (PG_TLS1_3_VERSION + 2), - "array length mismatch"); - -#ifdef HAVE_SYNCFS -#endif - -#ifndef WIN32 -#endif -#ifndef EXEC_BACKEND -#endif -#ifdef WIN32 -#endif - -#ifdef USE_LZ4 -#endif - -#ifdef USE_LZ4 -#endif -#ifdef USE_ZSTD -#endif - -/* - * Options for enum values stored in other modules - */ -extern const struct config_enum_entry wal_level_options[]; -extern const struct config_enum_entry archive_mode_options[]; -extern const struct config_enum_entry recovery_target_action_options[]; -extern const struct config_enum_entry sync_method_options[]; -extern const struct config_enum_entry dynamic_shared_memory_options[]; - -/* - * GUC option variables that are exported from this module - */ - - - - - - - - - - /* this is sort of all three above - * together */ - - - - -__thread bool check_function_bodies = true; - - -/* - * This GUC exists solely for backward compatibility, check its definition for - * details. - */ - - - - -__thread int log_min_messages = WARNING; - -__thread int client_min_messages = NOTICE; - - - - - - - - - -__thread char *backtrace_functions; - -__thread char *backtrace_symbol_list; - - - - - - - - - - - - - - - - - - - - - -/* - * SSL renegotiation was been removed in PostgreSQL 9.5, but we tolerate it - * being set to zero (meaning never renegotiate) for backward compatibility. - * This avoids breaking compatibility with clients that have never supported - * renegotiation and therefore always try to zero it. - */ - - -/* - * This really belongs in pg_shmem.c, but is defined here so that it doesn't - * need to be duplicated in all the different implementations of pg_shmem.c. - */ - - - -/* - * These variables are all dummies that don't do anything, except in some - * cases provide the value for SHOW to display. The real state is elsewhere - * and is kept in sync by assign_hooks. - */ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -/* should be static, but commands/variable.c needs to get at this */ - - - -/* - * Displayable names for context types (enum GucContext) - * - * Note: these strings are deliberately not localized. - */ - - -StaticAssertDecl(lengthof(GucContext_Names) == (PGC_USERSET + 1), - "array length mismatch"); - -/* - * Displayable names for source types (enum GucSource) - * - * Note: these strings are deliberately not localized. - */ - - -StaticAssertDecl(lengthof(GucSource_Names) == (PGC_S_SESSION + 1), - "array length mismatch"); - -/* - * Displayable names for the groupings defined in enum config_group - */ - - -StaticAssertDecl(lengthof(config_group_names) == (DEVELOPER_OPTIONS + 2), - "array length mismatch"); - -/* - * Displayable names for GUC variable types (enum config_type) - * - * Note: these strings are deliberately not localized. - */ - - -StaticAssertDecl(lengthof(config_type_names) == (PGC_ENUM + 1), - "array length mismatch"); - -/* - * Unit conversion tables. - * - * There are two tables, one for memory units, and another for time units. - * For each supported conversion from one unit to another, we have an entry - * in the table. - * - * To keep things simple, and to avoid possible roundoff error, - * conversions are never chained. There needs to be a direct conversion - * between all units (of the same type). - * - * The conversions for each base unit must be kept in order from greatest to - * smallest human-friendly unit; convert_xxx_from_base_unit() rely on that. - * (The order of the base-unit groups does not matter.) - */ -#define MAX_UNIT_LEN 3 /* length of longest recognized unit string */ - -typedef struct -{ - char unit[MAX_UNIT_LEN + 1]; /* unit, as a string, like "kB" or - * "min" */ - int base_unit; /* GUC_UNIT_XXX */ - double multiplier; /* Factor for converting unit -> base_unit */ -} unit_conversion; - -/* Ensure that the constants in the tables don't overflow or underflow */ -#if BLCKSZ < 1024 || BLCKSZ > (1024*1024) -#error BLCKSZ must be between 1KB and 1MB -#endif -#if XLOG_BLCKSZ < 1024 || XLOG_BLCKSZ > (1024*1024) -#error XLOG_BLCKSZ must be between 1KB and 1MB -#endif - - - - - - - - - -/* - * Contents of GUC tables - * - * See src/backend/utils/misc/README for design notes. - * - * TO ADD AN OPTION: - * - * 1. Declare a global variable of type bool, int, double, or char* - * and make use of it. - * - * 2. Decide at what times it's safe to set the option. See guc.h for - * details. - * - * 3. Decide on a name, a default value, upper and lower bounds (if - * applicable), etc. - * - * 4. Add a record below. - * - * 5. Add it to src/backend/utils/misc/postgresql.conf.sample, if - * appropriate. - * - * 6. Don't forget to document the option (at least in config.sgml). - * - * 7. If it's a new GUC_LIST_QUOTE option, you must add it to - * variable_is_guc_list_quote() in src/bin/pg_dump/dumputils.c. - */ - - -/******** option records follow ********/ - -#ifdef USE_ASSERT_CHECKING -#else -#endif -#ifdef BTREE_BUILD_STATS -#endif -#ifdef WIN32 -#else -#endif -#ifdef LOCK_DEBUG -#endif -#ifdef TRACE_SORT -#endif -#ifdef TRACE_SYNCSCAN -#endif -#ifdef DEBUG_BOUNDED_SORT -#endif -#ifdef WAL_DEBUG -#endif - - -#ifdef LOCK_DEBUG -#endif -#ifdef USE_PREFETCH -#else -#endif -#ifdef USE_PREFETCH -#else -#endif -#ifdef DISCARD_CACHES_ENABLED -#if defined(CLOBBER_CACHE_RECURSIVELY) -#else -#endif -#else /* not DISCARD_CACHES_ENABLED */ -#endif /* not DISCARD_CACHES_ENABLED */ - - - - - -#ifdef HAVE_UNIX_SOCKETS -#else -#endif -#ifdef USE_SSL -#else -#endif -#ifdef USE_OPENSSL -#else -#endif -#ifdef USE_SSL -#else -#endif - - -#ifdef HAVE_SYSLOG -#else -#endif - -/******** end of options list ********/ - - -/* - * To allow continued support of obsolete names for GUC variables, we apply - * the following mappings to any unrecognized name. Note that an old name - * should be mapped to a new one only if the new variable has very similar - * semantics to the old. - */ - - - -/* - * Actual lookup of variables is done through this single, sorted array. - */ - - -/* Current number of variables contained in the vector */ - - -/* Vector capacity */ - - - - /* true if need to do commit/abort work */ - - /* true to enable GUC_REPORT */ - - /* true if any GUC_REPORT reports are needed */ - - /* 1 when in main transaction */ - - -static int guc_var_compare(const void *a, const void *b); -static int guc_name_compare(const char *namea, const char *nameb); -static void InitializeGUCOptionsFromEnvironment(void); -static void InitializeOneGUCOption(struct config_generic *gconf); -static void push_old_value(struct config_generic *gconf, GucAction action); -static void ReportGUCOption(struct config_generic *record); -static void reapply_stacked_values(struct config_generic *variable, - struct config_string *pHolder, - GucStack *stack, - const char *curvalue, - GucContext curscontext, GucSource cursource, - Oid cursrole); -static void ShowGUCConfigOption(const char *name, DestReceiver *dest); -static void ShowAllGUCConfig(DestReceiver *dest); -static char *_ShowOption(struct config_generic *record, bool use_units); -static bool validate_option_array_item(const char *name, const char *value, - bool skipIfNoPermissions); -static void write_auto_conf_file(int fd, const char *filename, ConfigVariable *head_p); -static void replace_auto_config_value(ConfigVariable **head_p, ConfigVariable **tail_p, - const char *name, const char *value); - - -/* - * Some infrastructure for checking malloc/strdup/realloc calls - */ - - - - - - - -/* - * Detect whether strval is referenced anywhere in a GUC string item - */ - - -/* - * Support for assigning to a field of a string GUC item. Free the prior - * value if it's not referenced anywhere else in the item (including stacked - * states). - */ - - -/* - * Detect whether an "extra" struct is referenced anywhere in a GUC item - */ - - -/* - * Support for assigning to an "extra" field of a GUC item. Free the prior - * value if it's not referenced anywhere else in the item (including stacked - * states). - */ - - -/* - * Support for copying a variable's active value into a stack entry. - * The "extra" field associated with the active value is copied, too. - * - * NB: be sure stringval and extra fields of a new stack entry are - * initialized to NULL before this is used, else we'll try to free() them. - */ - - -/* - * Support for discarding a no-longer-needed value in a stack entry. - * The "extra" field associated with the stack entry is cleared, too. - */ - - - -/* - * Fetch the sorted array pointer (exported for help_config.c's use ONLY) - */ - - - -/* - * Build the sorted array. This is split out so that it could be - * re-executed after startup (e.g., we could allow loadable modules to - * add vars, and then we'd need to re-sort). - */ - - -/* - * Add a new GUC variable to the list of known variables. The - * list is expanded if needed. - */ - - -/* - * Decide whether a proposed custom variable name is allowed. - * - * It must be two or more identifiers separated by dots, where the rules - * for what is an identifier agree with scan.l. (If you change this rule, - * adjust the errdetail in find_option().) - */ - - -/* - * Create and add a placeholder variable for a custom variable name. - */ - - -/* - * Look up option "name". If it exists, return a pointer to its record. - * Otherwise, if create_placeholders is true and name is a valid-looking - * custom variable name, we'll create and return a placeholder record. - * Otherwise, if skip_errors is true, then we silently return NULL for - * an unrecognized or invalid name. Otherwise, the error is reported at - * error level elevel (and we return NULL if that's less than ERROR). - * - * Note: internal errors, primarily out-of-memory, draw an elevel-level - * report and NULL return regardless of skip_errors. Hence, callers must - * handle a NULL return whenever elevel < ERROR, but they should not need - * to emit any additional error message. (In practice, internal errors - * can only happen when create_placeholders is true, so callers passing - * false need not think terribly hard about this.) - */ - - - -/* - * comparator for qsorting and bsearching guc_variables array - */ - - -/* - * the bare comparison function for GUC names - */ - - - -/* - * Convert a GUC name to the form that should be used in pg_parameter_acl. - * - * We need to canonicalize entries since, for example, case should not be - * significant. In addition, we apply the map_old_guc_names[] mapping so that - * any obsolete names will be converted when stored in a new PG version. - * Note however that this function does not verify legality of the name. - * - * The result is a palloc'd string. - */ - - -/* - * Check whether we should allow creation of a pg_parameter_acl entry - * for the given name. (This can be applied either before or after - * canonicalizing it.) - */ - - - -/* - * Initialize GUC options during program startup. - * - * Note that we cannot read the config file yet, since we have not yet - * processed command-line switches. - */ - - -/* - * If any custom resource managers were specified in the - * wal_consistency_checking GUC, processing was deferred. Now that - * shared_preload_libraries have been loaded, process wal_consistency_checking - * again. - */ - - -/* - * Assign any GUC values that can come from the server's environment. - * - * This is called from InitializeGUCOptions, and also from ProcessConfigFile - * to deal with the possibility that a setting has been removed from - * postgresql.conf and should now get a value from the environment. - * (The latter is a kludge that should probably go away someday; if so, - * fold this back into InitializeGUCOptions.) - */ - - -/* - * Initialize one GUC option variable to its compiled-in default. - * - * Note: the reason for calling check_hooks is not that we think the boot_val - * might fail, but that the hooks might wish to compute an "extra" struct. - */ - - - -/* - * Select the configuration files and data directory to be used, and - * do the initial read of postgresql.conf. - * - * This is called after processing command-line switches. - * userDoption is the -D switch value if any (NULL if unspecified). - * progname is just for use in error messages. - * - * Returns true on success; on failure, prints a suitable error message - * to stderr and returns false. - */ - - - -/* - * Reset all options to their saved default values (implements RESET ALL) - */ - - - -/* - * push_old_value - * Push previous state during transactional assignment to a GUC variable. - */ - - - -/* - * Do GUC processing at main transaction start. - */ - - -/* - * Enter a new nesting level for GUC values. This is called at subtransaction - * start, and when entering a function that has proconfig settings, and in - * some other places where we want to set GUC variables transiently. - * NOTE we must not risk error here, else subtransaction start will be unhappy. - */ - - -/* - * Do GUC processing at transaction or subtransaction commit or abort, or - * when exiting a function that has proconfig settings, or when undoing a - * transient assignment to some GUC variables. (The name is thus a bit of - * a misnomer; perhaps it should be ExitGUCNestLevel or some such.) - * During abort, we discard all GUC settings that were applied at nesting - * levels >= nestLevel. nestLevel == 1 corresponds to the main transaction. - */ - - - -/* - * Start up automatic reporting of changes to variables marked GUC_REPORT. - * This is executed at completion of backend startup. - */ - - -/* - * ReportChangedGUCOptions: report recently-changed GUC_REPORT variables - * - * This is called just before we wait for a new client query. - * - * By handling things this way, we ensure that a ParameterStatus message - * is sent at most once per variable per query, even if the variable - * changed multiple times within the query. That's quite possible when - * using features such as function SET clauses. Function SET clauses - * also tend to cause values to change intraquery but eventually revert - * to their prevailing values; ReportGUCOption is responsible for avoiding - * redundant reports in such cases. - */ - - -/* - * ReportGUCOption: if appropriate, transmit option value to frontend - * - * We need not transmit the value if it's the same as what we last - * transmitted. However, clear the NEEDS_REPORT flag in any case. - */ - - -/* - * Convert a value from one of the human-friendly units ("kB", "min" etc.) - * to the given base unit. 'value' and 'unit' are the input value and unit - * to convert from (there can be trailing spaces in the unit string). - * The converted value is stored in *base_value. - * It's caller's responsibility to round off the converted value as necessary - * and check for out-of-range. - * - * Returns true on success, false if the input unit is not recognized. - */ - - -/* - * Convert an integer value in some base unit to a human-friendly unit. - * - * The output unit is chosen so that it's the greatest unit that can represent - * the value without loss. For example, if the base unit is GUC_UNIT_KB, 1024 - * is converted to 1 MB, but 1025 is represented as 1025 kB. - */ - - -/* - * Convert a floating-point value in some base unit to a human-friendly unit. - * - * Same as above, except we have to do the math a bit differently, and - * there's a possibility that we don't find any exact divisor. - */ - - -/* - * Return the name of a GUC's base unit (e.g. "ms") given its flags. - * Return NULL if the GUC is unitless. - */ - - - -/* - * Try to parse value as an integer. The accepted formats are the - * usual decimal, octal, or hexadecimal formats, as well as floating-point - * formats (which will be rounded to integer after any units conversion). - * Optionally, the value can be followed by a unit name if "flags" indicates - * a unit is allowed. - * - * If the string parses okay, return true, else false. - * If okay and result is not NULL, return the value in *result. - * If not okay and hintmsg is not NULL, *hintmsg is set to a suitable - * HINT message, or NULL if no hint provided. - */ - - -/* - * Try to parse value as a floating point number in the usual format. - * Optionally, the value can be followed by a unit name if "flags" indicates - * a unit is allowed. - * - * If the string parses okay, return true, else false. - * If okay and result is not NULL, return the value in *result. - * If not okay and hintmsg is not NULL, *hintmsg is set to a suitable - * HINT message, or NULL if no hint provided. - */ - - - -/* - * Lookup the name for an enum option with the selected value. - * Should only ever be called with known-valid values, so throws - * an elog(ERROR) if the enum option is not found. - * - * The returned string is a pointer to static data and not - * allocated for modification. - */ - - - -/* - * Lookup the value for an enum option with the selected name - * (case-insensitive). - * If the enum option is found, sets the retval value and returns - * true. If it's not found, return false and retval is set to 0. - */ - - - -/* - * Return a list of all available options for an enum, excluding - * hidden ones, separated by the given separator. - * If prefix is non-NULL, it is added before the first enum value. - * If suffix is non-NULL, it is added to the end of the string. - */ - - -/* - * Parse and validate a proposed value for the specified configuration - * parameter. - * - * This does built-in checks (such as range limits for an integer parameter) - * and also calls any check hook the parameter may have. - * - * record: GUC variable's info record - * name: variable name (should match the record of course) - * value: proposed value, as a string - * source: identifies source of value (check hooks may need this) - * elevel: level to log any error reports at - * newval: on success, converted parameter value is returned here - * newextra: on success, receives any "extra" data returned by check hook - * (caller must initialize *newextra to NULL) - * - * Returns true if OK, false if not (or throws error, if elevel >= ERROR) - */ - - - -/* - * set_config_option: sets option `name' to given value. - * - * The value should be a string, which will be parsed and converted to - * the appropriate data type. The context and source parameters indicate - * in which context this function is being called, so that it can apply the - * access restrictions properly. - * - * If value is NULL, set the option to its default value (normally the - * reset_val, but if source == PGC_S_DEFAULT we instead use the boot_val). - * - * action indicates whether to set the value globally in the session, locally - * to the current top transaction, or just for the duration of a function call. - * - * If changeVal is false then don't really set the option but do all - * the checks to see if it would work. - * - * elevel should normally be passed as zero, allowing this function to make - * its standard choice of ereport level. However some callers need to be - * able to override that choice; they should pass the ereport level to use. - * - * is_reload should be true only when called from read_nondefault_variables() - * or RestoreGUCState(), where we are trying to load some other process's - * GUC settings into a new process. - * - * Return value: - * +1: the value is valid and was successfully applied. - * 0: the name or value is invalid (but see below). - * -1: the value was not applied because of context, priority, or changeVal. - * - * If there is an error (non-existing option, invalid value) then an - * ereport(ERROR) is thrown *unless* this is called for a source for which - * we don't want an ERROR (currently, those are defaults, the config file, - * and per-database or per-user settings, as well as callers who specify - * a less-than-ERROR elevel). In those cases we write a suitable error - * message via ereport() and return 0. - * - * See also SetConfigOption for an external interface. - */ - - -/* - * set_config_option_ext: sets option `name' to given value. - * - * This API adds the ability to explicitly specify which role OID - * is considered to be setting the value. Most external callers can use - * set_config_option() and let it determine that based on the GucSource, - * but there are a few that are supplying a value that was determined - * in some special way and need to override the decision. Also, when - * restoring a previously-assigned value, it's important to supply the - * same role OID that set the value originally; so all guc.c callers - * that are doing that type of thing need to call this directly. - * - * Generally, srole should be GetUserId() when the source is a SQL operation, - * or BOOTSTRAP_SUPERUSERID if the source is a config file or similar. - */ -#define newval (newval_union.boolval) -#undef newval -#define newval (newval_union.intval) -#undef newval -#define newval (newval_union.realval) -#undef newval -#define newval (newval_union.stringval) -#undef newval -#define newval (newval_union.enumval) -#undef newval - - -/* - * Set the fields for source file and line number the setting came from. - */ - - -/* - * Set a config option to the given value. - * - * See also set_config_option; this is just the wrapper to be called from - * outside GUC. (This function should be used when possible, because its API - * is more stable than set_config_option's.) - * - * Note: there is no support here for setting source file/line, as it - * is currently not needed. - */ - - - - -/* - * Fetch the current value of the option `name', as a string. - * - * If the option doesn't exist, return NULL if missing_ok is true (NOTE that - * this cannot be distinguished from a string variable with a NULL value!), - * otherwise throw an ereport and don't return. - * - * If restrict_privileged is true, we also enforce that only superusers and - * members of the pg_read_all_settings role can see GUC_SUPERUSER_ONLY - * variables. This should only be passed as true in user-driven calls. - * - * The string is *not* allocated for modification and is really only - * valid until the next call to configuration related functions. - */ - - -/* - * Get the RESET value associated with the given option. - * - * Note: this is not re-entrant, due to use of static result buffer; - * not to mention that a string variable could have its reset_val changed. - * Beware of assuming the result value is good for very long. - */ - - -/* - * Get the GUC flags associated with the given option. - * - * If the option doesn't exist, return 0 if missing_ok is true, - * otherwise throw an ereport and don't return. - */ - - - -/* - * flatten_set_variable_args - * Given a parsenode List as emitted by the grammar for SET, - * convert to the flat string representation used by GUC. - * - * We need to be told the name of the variable the args are for, because - * the flattening rules vary (ugh). - * - * The result is NULL if args is NIL (i.e., SET ... TO DEFAULT), otherwise - * a palloc'd string. - */ - - -/* - * Write updated configuration parameter values into a temporary file. - * This function traverses the list of parameters and quotes the string - * values before writing them. - */ - - -/* - * Update the given list of configuration parameters, adding, replacing - * or deleting the entry for item "name" (delete if "value" == NULL). - */ - - - -/* - * Execute ALTER SYSTEM statement. - * - * Read the old PG_AUTOCONF_FILENAME file, merge in the new variable value, - * and write out an updated file. If the command is ALTER SYSTEM RESET ALL, - * we can skip reading the old file and just write an empty file. - * - * An LWLock is used to serialize updates of the configuration file. - * - * In case of an error, we leave the original automatic - * configuration file (PG_AUTOCONF_FILENAME) intact. - */ - - -/* - * SET command - */ - - -/* - * Get the value to assign for a VariableSetStmt, or NULL if it's RESET. - * The result is palloc'd. - * - * This is exported for use by actions such as ALTER ROLE SET. - */ - - -/* - * SetPGVariable - SET command exported as an easily-C-callable function. - * - * This provides access to SET TO value, as well as SET TO DEFAULT (expressed - * by passing args == NIL), but not SET FROM CURRENT functionality. - */ - - -/* - * SET command wrapped as a SQL callable function. - */ - - - -/* - * Common code for DefineCustomXXXVariable subroutines: allocate the - * new variable's config struct and fill in generic fields. - */ - - -/* - * Common code for DefineCustomXXXVariable subroutines: insert the new - * variable into the GUC variable array, replacing any placeholder. - */ - - -/* - * Recursive subroutine for define_custom_variable: reapply non-reset values - * - * We recurse so that the values are applied in the same order as originally. - * At each recursion level, apply the upper-level value (passed in) in the - * fashion implied by the stack entry. - */ - - -/* - * Functions for extensions to call to define their custom GUC variables. - */ - - - - - - - - - - -/* - * Mark the given GUC prefix as "reserved". - * - * This deletes any existing placeholders matching the prefix, - * and then prevents new ones from being created. - * Extensions should call this after they've defined all of their custom - * GUCs, to help catch misspelled config-file entries. - */ - - - -/* - * SHOW command - */ - - - - - -/* - * SHOW command - */ - - -/* - * SHOW ALL command - */ - - -/* - * Return an array of modified GUC options to show in EXPLAIN. - * - * We only report options related to query planning (marked with GUC_EXPLAIN), - * with values different from their built-in defaults. - */ - - -/* - * Return GUC variable value by name; optionally return canonical form of - * name. If the GUC is unset, then throw an error unless missing_ok is true, - * in which case return NULL. Return value is palloc'd (but *varname isn't). - */ - - -/* - * Return some of the flags associated to the specified GUC in the shape of - * a text array, and NULL if it does not exist. An empty array is returned - * if the GUC exists without any meaningful flags to show. - */ -#define MAX_GUC_FLAGS 5 - -/* - * Return GUC variable value by variable number; optionally return canonical - * form of name. Return value is palloc'd. - */ - - -/* - * Return the total number of GUC variables - */ - - -/* - * show_config_by_name - equiv to SHOW X command but implemented as - * a function. - */ - - -/* - * show_config_by_name_missing_ok - equiv to SHOW X command but implemented as - * a function. If X does not exist, suppress the error and just return NULL - * if missing_ok is true. - */ - - -/* - * show_all_settings - equiv to SHOW ALL command but implemented as - * a Table Function. - */ -#define NUM_PG_SETTINGS_ATTS 17 - - - -/* - * show_all_file_settings - * - * Returns a table of all parameter settings in all configuration files - * which includes the config file pathname, the line number, a sequence number - * indicating the order in which the settings were encountered, the parameter - * name and value, a bool showing if the value could be applied, and possibly - * an associated error message. (For problems such as syntax errors, the - * parameter name/value might be NULL.) - * - * Note: no filtering is done here, instead we depend on the GRANT system - * to prevent unprivileged users from accessing this function or the view - * built on top of it. - */ -#define NUM_PG_FILE_SETTINGS_ATTS 7 - - - - -#ifdef EXEC_BACKEND - -/* - * These routines dump out all non-default GUC options into a binary - * file that is read by all exec'ed backends. The format is: - * - * variable name, string, null terminated - * variable value, string, null terminated - * variable sourcefile, string, null terminated (empty if none) - * variable sourceline, integer - * variable source, integer - * variable scontext, integer -* variable srole, OID - */ -static void -write_one_nondefault_variable(FILE *fp, struct config_generic *gconf) -{ - if (gconf->source == PGC_S_DEFAULT) - return; - - fprintf(fp, "%s", gconf->name); - fputc(0, fp); - - switch (gconf->vartype) - { - case PGC_BOOL: - { - struct config_bool *conf = (struct config_bool *) gconf; - - if (*conf->variable) - fprintf(fp, "true"); - else - fprintf(fp, "false"); - } - break; - - case PGC_INT: - { - struct config_int *conf = (struct config_int *) gconf; - - fprintf(fp, "%d", *conf->variable); - } - break; - - case PGC_REAL: - { - struct config_real *conf = (struct config_real *) gconf; - - fprintf(fp, "%.17g", *conf->variable); - } - break; - - case PGC_STRING: - { - struct config_string *conf = (struct config_string *) gconf; - - fprintf(fp, "%s", *conf->variable); - } - break; - - case PGC_ENUM: - { - struct config_enum *conf = (struct config_enum *) gconf; - - fprintf(fp, "%s", - config_enum_lookup_by_value(conf, *conf->variable)); - } - break; - } - - fputc(0, fp); - - if (gconf->sourcefile) - fprintf(fp, "%s", gconf->sourcefile); - fputc(0, fp); - - fwrite(&gconf->sourceline, 1, sizeof(gconf->sourceline), fp); - fwrite(&gconf->source, 1, sizeof(gconf->source), fp); - fwrite(&gconf->scontext, 1, sizeof(gconf->scontext), fp); - fwrite(&gconf->srole, 1, sizeof(gconf->srole), fp); -} - -void -write_nondefault_variables(GucContext context) -{ - int elevel; - FILE *fp; - int i; - - Assert(context == PGC_POSTMASTER || context == PGC_SIGHUP); - - elevel = (context == PGC_SIGHUP) ? LOG : ERROR; - - /* - * Open file - */ - fp = AllocateFile(CONFIG_EXEC_PARAMS_NEW, "w"); - if (!fp) - { - ereport(elevel, - (errcode_for_file_access(), - errmsg("could not write to file \"%s\": %m", - CONFIG_EXEC_PARAMS_NEW))); - return; - } - - for (i = 0; i < num_guc_variables; i++) - { - write_one_nondefault_variable(fp, guc_variables[i]); - } - - if (FreeFile(fp)) - { - ereport(elevel, - (errcode_for_file_access(), - errmsg("could not write to file \"%s\": %m", - CONFIG_EXEC_PARAMS_NEW))); - return; - } - - /* - * Put new file in place. This could delay on Win32, but we don't hold - * any exclusive locks. - */ - rename(CONFIG_EXEC_PARAMS_NEW, CONFIG_EXEC_PARAMS); -} - - -/* - * Read string, including null byte from file - * - * Return NULL on EOF and nothing read - */ -static char * -read_string_with_null(FILE *fp) -{ - int i = 0, - ch, - maxlen = 256; - char *str = NULL; - - do - { - if ((ch = fgetc(fp)) == EOF) - { - if (i == 0) - return NULL; - else - elog(FATAL, "invalid format of exec config params file"); - } - if (i == 0) - str = guc_malloc(FATAL, maxlen); - else if (i == maxlen) - str = guc_realloc(FATAL, str, maxlen *= 2); - str[i++] = ch; - } while (ch != 0); - - return str; -} - - -/* - * This routine loads a previous postmaster dump of its non-default - * settings. - */ -void -read_nondefault_variables(void) -{ - FILE *fp; - char *varname, - *varvalue, - *varsourcefile; - int varsourceline; - GucSource varsource; - GucContext varscontext; - Oid varsrole; - - /* - * Open file - */ - fp = AllocateFile(CONFIG_EXEC_PARAMS, "r"); - if (!fp) - { - /* File not found is fine */ - if (errno != ENOENT) - ereport(FATAL, - (errcode_for_file_access(), - errmsg("could not read from file \"%s\": %m", - CONFIG_EXEC_PARAMS))); - return; - } - - for (;;) - { - struct config_generic *record; - - if ((varname = read_string_with_null(fp)) == NULL) - break; - - if ((record = find_option(varname, true, false, FATAL)) == NULL) - elog(FATAL, "failed to locate variable \"%s\" in exec config params file", varname); - - if ((varvalue = read_string_with_null(fp)) == NULL) - elog(FATAL, "invalid format of exec config params file"); - if ((varsourcefile = read_string_with_null(fp)) == NULL) - elog(FATAL, "invalid format of exec config params file"); - if (fread(&varsourceline, 1, sizeof(varsourceline), fp) != sizeof(varsourceline)) - elog(FATAL, "invalid format of exec config params file"); - if (fread(&varsource, 1, sizeof(varsource), fp) != sizeof(varsource)) - elog(FATAL, "invalid format of exec config params file"); - if (fread(&varscontext, 1, sizeof(varscontext), fp) != sizeof(varscontext)) - elog(FATAL, "invalid format of exec config params file"); - if (fread(&varsrole, 1, sizeof(varsrole), fp) != sizeof(varsrole)) - elog(FATAL, "invalid format of exec config params file"); - - (void) set_config_option_ext(varname, varvalue, - varscontext, varsource, varsrole, - GUC_ACTION_SET, true, 0, true); - if (varsourcefile[0]) - set_config_sourcefile(varname, varsourcefile, varsourceline); - - free(varname); - free(varvalue); - free(varsourcefile); - } - - FreeFile(fp); -} -#endif /* EXEC_BACKEND */ - -/* - * can_skip_gucvar: - * Decide whether SerializeGUCState can skip sending this GUC variable, - * or whether RestoreGUCState can skip resetting this GUC to default. - * - * It is somewhat magical and fragile that the same test works for both cases. - * Realize in particular that we are very likely selecting different sets of - * GUCs on the leader and worker sides! Be sure you've understood the - * comments here and in RestoreGUCState thoroughly before changing this. - */ - - -/* - * estimate_variable_size: - * Compute space needed for dumping the given GUC variable. - * - * It's OK to overestimate, but not to underestimate. - */ - - -/* - * EstimateGUCStateSpace: - * Returns the size needed to store the GUC state for the current process - */ - - -/* - * do_serialize: - * Copies the formatted string into the destination. Moves ahead the - * destination pointer, and decrements the maxbytes by that many bytes. If - * maxbytes is not sufficient to copy the string, error out. - */ - - -/* Binary copy version of do_serialize() */ - - -/* - * serialize_variable: - * Dumps name, value and other information of a GUC variable into destptr. - */ - - -/* - * SerializeGUCState: - * Dumps the complete GUC state onto the memory location at start_address. - */ - - -/* - * read_gucstate: - * Actually it does not read anything, just returns the srcptr. But it does - * move the srcptr past the terminating zero byte, so that the caller is ready - * to read the next string. - */ - - -/* Binary read version of read_gucstate(). Copies into dest */ - - -/* - * Callback used to add a context message when reporting errors that occur - * while trying to restore GUCs in parallel workers. - */ - - -/* - * RestoreGUCState: - * Reads the GUC state at the specified address and sets this process's - * GUCs to match. - * - * Note that this provides the worker with only a very shallow view of the - * leader's GUC state: we'll know about the currently active values, but not - * about stacked or reset values. That's fine since the worker is just - * executing one part of a query, within which the active values won't change - * and the stacked values are invisible. - */ - - -/* - * A little "long argument" simulation, although not quite GNU - * compliant. Takes a string of the form "some-option=some value" and - * returns name = "some_option" and value = "some value" in malloc'ed - * storage. Note that '-' is converted to '_' in the option name. If - * there is no '=' in the input string then value will be NULL. - */ - - - -/* - * Handle options fetched from pg_db_role_setting.setconfig, - * pg_proc.proconfig, etc. Caller must specify proper context/source/action. - * - * The array parameter must be an array of TEXT (it must not be NULL). - */ - - - -/* - * Add an entry to an option array. The array parameter may be NULL - * to indicate the current table entry is NULL. - */ - - - -/* - * Delete an entry from an option array. The array parameter may be NULL - * to indicate the current table entry is NULL. Also, if the return value - * is NULL then a null should be stored. - */ - - - -/* - * Given a GUC array, delete all settings from it that our permission - * level allows: if superuser, delete them all; if regular user, only - * those that are PGC_USERSET or we have permission to set - */ - - -/* - * Validate a proposed option setting for GUCArrayAdd/Delete/Reset. - * - * name is the option name. value is the proposed value for the Add case, - * or NULL for the Delete/Reset cases. If skipIfNoPermissions is true, it's - * not an error to have no permissions to set the option. - * - * Returns true if OK, false if skipIfNoPermissions is true and user does not - * have permission to change this option (all other error cases result in an - * error being thrown). - */ - - - -/* - * Called by check_hooks that want to override the normal - * ERRCODE_INVALID_PARAMETER_VALUE SQLSTATE for check hook failures. - * - * Note that GUC_check_errmsg() etc are just macros that result in a direct - * assignment to the associated variables. That is ugly, but forced by the - * limitations of C's macro mechanisms. - */ - - - -/* - * Convenience functions to manage calling a variable's check_hook. - * These mostly take care of the protocol for letting check hooks supply - * portions of the error report on failure. - */ - - - - - - - - - - - - -/* - * check_hook, assign_hook and show_hook subroutines - */ - - - - - -#ifdef HAVE_SYSLOG -#endif -#ifdef WIN32 -#endif - - - -#ifdef HAVE_SYSLOG -#endif - -#ifdef HAVE_SYSLOG -#endif - - - - - - -#ifndef USE_BONJOUR -#endif - -#ifndef USE_SSL -#endif - - - - - - - - - - - -/* - * pg_timezone_abbrev_initialize --- set default value if not done already - * - * This is called after initial loading of postgresql.conf. If no - * timezone_abbreviations setting was found therein, select default. - * If a non-default value is already installed, nothing will happen. - * - * This can also be called from ProcessConfigFile to establish the default - * value after a postgresql.conf entry for it is removed. - */ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -#ifndef USE_PREFETCH -#endif /* USE_PREFETCH */ - -#ifndef USE_PREFETCH -#endif /* USE_PREFETCH */ - -#if !(defined(MAP_HUGE_MASK) && defined(MAP_HUGE_SHIFT)) -#endif - - - -#ifdef USE_PREFETCH -#endif - - - - - - - - - - - - - - - -/* - * We split the input string, where commas separate function names - * and certain whitespace chars are ignored, into a \0-separated (and - * \0\0-terminated) list of function names. This formulation allows - * easy scanning when an error is thrown while avoiding the use of - * non-reentrant strtok(), as well as keeping the output data in a - * single palloc() chunk. - */ - - - - - - - - -/* - * Recovery target settings: Only one of the several recovery_target* settings - * may be set. Setting a second one results in an error. The global variable - * recoveryTarget tracks which kind of recovery target was chosen. Other - * variables store the actual target value (for example a string or a xid). - * The assign functions of the parameters check whether a competing parameter - * was already set. But we want to allow setting the same parameter multiple - * times. We also want to allow unsetting a parameter and setting a different - * one, so we unset recoveryTarget when the parameter is set to an empty - * string. - */ - - - - - - - - - - - -/* - * The interpretation of the recovery_target_time string can depend on the - * time zone setting, so we need to wait until after all GUC processing is - * done before we can do the final parsing of the string. This check function - * only does a parsing pass to catch syntax errors, but we store the string - * and parse it again when we need to use it. - */ - - - - - - - - - - - - - - - - -#include "guc-file.c" diff --git a/parser/src_backend_utils_misc_guc_tables.c b/parser/src_backend_utils_misc_guc_tables.c new file mode 100644 index 00000000..7188a5a8 --- /dev/null +++ b/parser/src_backend_utils_misc_guc_tables.c @@ -0,0 +1,494 @@ +/*-------------------------------------------------------------------- + * Symbols referenced in this file: + * - log_min_messages + * - client_min_messages + * - backtrace_functions + * - check_function_bodies + *-------------------------------------------------------------------- + */ + +/*-------------------------------------------------------------------- + * + * guc_tables.c + * + * Static tables for the Grand Unified Configuration scheme. + * + * Many of these tables are const. However, ConfigureNamesBool[] + * and so on are not, because the structs in those arrays are actually + * the live per-variable state data that guc.c manipulates. While many of + * their fields are intended to be constant, some fields change at runtime. + * + * + * Copyright (c) 2000-2023, PostgreSQL Global Development Group + * Written by Peter Eisentraut . + * + * IDENTIFICATION + * src/backend/utils/misc/guc_tables.c + * + *-------------------------------------------------------------------- + */ +#include "postgres.h" + +#include +#include +#ifdef HAVE_SYSLOG +#include +#endif + +#include "access/commit_ts.h" +#include "access/gin.h" +#include "access/toast_compression.h" +#include "access/twophase.h" +#include "access/xlog_internal.h" +#include "access/xlogprefetcher.h" +#include "access/xlogrecovery.h" +#include "archive/archive_module.h" +#include "catalog/namespace.h" +#include "catalog/storage.h" +#include "commands/async.h" +#include "commands/tablespace.h" +#include "commands/trigger.h" +#include "commands/user.h" +#include "commands/vacuum.h" +#include "common/scram-common.h" +#include "jit/jit.h" +#include "libpq/auth.h" +#include "libpq/libpq.h" +#include "libpq/scram.h" +#include "nodes/queryjumble.h" +#include "optimizer/cost.h" +#include "optimizer/geqo.h" +#include "optimizer/optimizer.h" +#include "optimizer/paths.h" +#include "optimizer/planmain.h" +#include "parser/parse_expr.h" +#include "parser/parser.h" +#include "pgstat.h" +#include "postmaster/autovacuum.h" +#include "postmaster/bgworker_internals.h" +#include "postmaster/bgwriter.h" +#include "postmaster/postmaster.h" +#include "postmaster/startup.h" +#include "postmaster/syslogger.h" +#include "postmaster/walwriter.h" +#include "replication/logicallauncher.h" +#include "replication/slot.h" +#include "replication/syncrep.h" +#include "storage/bufmgr.h" +#include "storage/large_object.h" +#include "storage/pg_shmem.h" +#include "storage/predicate.h" +#include "storage/standby.h" +#include "tcop/tcopprot.h" +#include "tsearch/ts_cache.h" +#include "utils/builtins.h" +#include "utils/bytea.h" +#include "utils/float.h" +#include "utils/guc_hooks.h" +#include "utils/guc_tables.h" +#include "utils/memutils.h" +#include "utils/pg_locale.h" +#include "utils/portal.h" +#include "utils/ps_status.h" +#include "utils/inval.h" +#include "utils/xml.h" + +/* This value is normally passed in from the Makefile */ +#ifndef PG_KRB_SRVTAB +#define PG_KRB_SRVTAB "" +#endif + +/* XXX these should appear in other modules' header files */ +extern bool Log_disconnections; +extern int CommitDelay; +extern int CommitSiblings; +extern char *default_tablespace; +extern char *temp_tablespaces; +extern bool ignore_checksum_failure; +extern bool ignore_invalid_pages; + +#ifdef TRACE_SYNCSCAN +extern bool trace_syncscan; +#endif +#ifdef DEBUG_BOUNDED_SORT +extern bool optimize_bounded_sort; +#endif + +/* + * Options for enum values defined in this module. + * + * NOTE! Option values may not contain double quotes! + */ + + + +StaticAssertDecl(lengthof(bytea_output_options) == (BYTEA_OUTPUT_HEX + 2), + "array length mismatch"); + +/* + * We have different sets for client and server message level options because + * they sort slightly different (see "log" level), and because "fatal"/"panic" + * aren't sensible for client_min_messages. + */ + + + + + + + + +StaticAssertDecl(lengthof(intervalstyle_options) == (INTSTYLE_ISO_8601 + 2), + "array length mismatch"); + + + +StaticAssertDecl(lengthof(log_error_verbosity_options) == (PGERROR_VERBOSE + 2), + "array length mismatch"); + + + +StaticAssertDecl(lengthof(log_statement_options) == (LOGSTMT_ALL + 2), + "array length mismatch"); + + + + + +StaticAssertDecl(lengthof(session_replication_role_options) == (SESSION_REPLICATION_ROLE_LOCAL + 2), + "array length mismatch"); + +#ifdef HAVE_SYSLOG +#else +#endif + + + +StaticAssertDecl(lengthof(track_function_options) == (TRACK_FUNC_ALL + 2), + "array length mismatch"); + + + +StaticAssertDecl(lengthof(stats_fetch_consistency) == (PGSTAT_FETCH_CONSISTENCY_SNAPSHOT + 2), + "array length mismatch"); + + + +StaticAssertDecl(lengthof(xmlbinary_options) == (XMLBINARY_HEX + 2), + "array length mismatch"); + + + +StaticAssertDecl(lengthof(xmloption_options) == (XMLOPTION_CONTENT + 2), + "array length mismatch"); + +/* + * Although only "on", "off", and "safe_encoding" are documented, we + * accept all the likely variants of "on" and "off". + */ + + +/* + * Although only "on", "off", and "auto" are documented, we accept + * all the likely variants of "on" and "off". + */ + + +/* + * Although only "on", "off", and "partition" are documented, we + * accept all the likely variants of "on" and "off". + */ + + +/* + * Although only "on", "off", "remote_apply", "remote_write", and "local" are + * documented, we accept all the likely variants of "on" and "off". + */ + + +/* + * Although only "on", "off", "try" are documented, we accept all the likely + * variants of "on" and "off". + */ + + + + + + + + + + + + + + +StaticAssertDecl(lengthof(ssl_protocol_versions_info) == (PG_TLS1_3_VERSION + 2), + "array length mismatch"); + +#ifdef HAVE_SYNCFS +#endif + +#ifndef WIN32 +#endif +#ifndef EXEC_BACKEND +#endif +#ifdef WIN32 +#endif + +#ifdef USE_LZ4 +#endif + +#ifdef USE_LZ4 +#endif +#ifdef USE_ZSTD +#endif + +/* + * Options for enum values stored in other modules + */ +extern const struct config_enum_entry wal_level_options[]; +extern const struct config_enum_entry archive_mode_options[]; +extern const struct config_enum_entry recovery_target_action_options[]; +extern const struct config_enum_entry sync_method_options[]; +extern const struct config_enum_entry dynamic_shared_memory_options[]; + +/* + * GUC option variables that are exported from this module + */ + + + + + + + + + + /* this is sort of all three above + * together */ + + + + +__thread bool check_function_bodies = true; + + +/* + * This GUC exists solely for backward compatibility, check its definition for + * details. + */ + + + + +__thread int log_min_messages = WARNING; + +__thread int client_min_messages = NOTICE; + + + + + + + + + +__thread char *backtrace_functions; + + + + + + + + + + + + + + + + + + + +/* + * SSL renegotiation was been removed in PostgreSQL 9.5, but we tolerate it + * being set to zero (meaning never renegotiate) for backward compatibility. + * This avoids breaking compatibility with clients that have never supported + * renegotiation and therefore always try to zero it. + */ + + +/* + * This really belongs in pg_shmem.c, but is defined here so that it doesn't + * need to be duplicated in all the different implementations of pg_shmem.c. + */ + + + +/* + * These variables are all dummies that don't do anything, except in some + * cases provide the value for SHOW to display. The real state is elsewhere + * and is kept in sync by assign_hooks. + */ + + + + + + + + + +#ifdef HAVE_SYSLOG +#define DEFAULT_SYSLOG_FACILITY LOG_LOCAL0 +#else +#define DEFAULT_SYSLOG_FACILITY 0 +#endif + + + + + + + + + + + + + + + + + + +#ifdef USE_ASSERT_CHECKING +#define DEFAULT_ASSERT_ENABLED true +#else +#define DEFAULT_ASSERT_ENABLED false +#endif + + + + + + + + +/* should be static, but commands/variable.c needs to get at this */ + + +/* should be static, but guc.c needs to get at this */ + + + +/* + * Displayable names for context types (enum GucContext) + * + * Note: these strings are deliberately not localized. + */ + + +StaticAssertDecl(lengthof(GucContext_Names) == (PGC_USERSET + 1), + "array length mismatch"); + +/* + * Displayable names for source types (enum GucSource) + * + * Note: these strings are deliberately not localized. + */ + + +StaticAssertDecl(lengthof(GucSource_Names) == (PGC_S_SESSION + 1), + "array length mismatch"); + +/* + * Displayable names for the groupings defined in enum config_group + */ + + +StaticAssertDecl(lengthof(config_group_names) == (DEVELOPER_OPTIONS + 2), + "array length mismatch"); + +/* + * Displayable names for GUC variable types (enum config_type) + * + * Note: these strings are deliberately not localized. + */ + + +StaticAssertDecl(lengthof(config_type_names) == (PGC_ENUM + 1), + "array length mismatch"); + + +/* + * Contents of GUC tables + * + * See src/backend/utils/misc/README for design notes. + * + * TO ADD AN OPTION: + * + * 1. Declare a global variable of type bool, int, double, or char* + * and make use of it. + * + * 2. Decide at what times it's safe to set the option. See guc.h for + * details. + * + * 3. Decide on a name, a default value, upper and lower bounds (if + * applicable), etc. + * + * 4. Add a record below. + * + * 5. Add it to src/backend/utils/misc/postgresql.conf.sample, if + * appropriate. + * + * 6. Don't forget to document the option (at least in config.sgml). + * + * 7. If it's a new GUC_LIST_QUOTE option, you must add it to + * variable_is_guc_list_quote() in src/bin/pg_dump/dumputils.c. + */ + +#ifdef BTREE_BUILD_STATS +#endif +#ifdef LOCK_DEBUG +#endif +#ifdef TRACE_SORT +#endif +#ifdef TRACE_SYNCSCAN +#endif +#ifdef DEBUG_BOUNDED_SORT +#endif +#ifdef WAL_DEBUG +#endif + + +#ifdef LOCK_DEBUG +#endif +#ifdef DISCARD_CACHES_ENABLED +#if defined(CLOBBER_CACHE_RECURSIVELY) +#else +#endif +#else /* not DISCARD_CACHES_ENABLED */ +#endif /* not DISCARD_CACHES_ENABLED */ + + + + + +#ifdef USE_SSL +#else +#endif +#ifdef USE_OPENSSL +#else +#endif +#ifdef USE_SSL +#else +#endif + + + diff --git a/parser/src_backend_utils_mmgr_alignedalloc.c b/parser/src_backend_utils_mmgr_alignedalloc.c new file mode 100644 index 00000000..c6eddd24 --- /dev/null +++ b/parser/src_backend_utils_mmgr_alignedalloc.c @@ -0,0 +1,163 @@ +/*-------------------------------------------------------------------- + * Symbols referenced in this file: + * - AlignedAllocFree + * - AlignedAllocRealloc + * - AlignedAllocGetChunkContext + * - AlignedAllocGetChunkSpace + *-------------------------------------------------------------------- + */ + +/*------------------------------------------------------------------------- + * + * alignedalloc.c + * Allocator functions to implement palloc_aligned + * + * This is not a fully-fledged MemoryContext type as there is no means to + * create a MemoryContext of this type. The code here only serves to allow + * operations such as pfree() and repalloc() to work correctly on a memory + * chunk that was allocated by palloc_aligned(). + * + * Portions Copyright (c) 2022-2023, PostgreSQL Global Development Group + * + * IDENTIFICATION + * src/backend/utils/mmgr/alignedalloc.c + * + *------------------------------------------------------------------------- + */ + +#include "postgres.h" + +#include "utils/memdebug.h" +#include "utils/memutils_memorychunk.h" + +/* + * AlignedAllocFree +* Frees allocated memory; memory is removed from its owning context. +*/ +void +AlignedAllocFree(void *pointer) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + void *unaligned; + + VALGRIND_MAKE_MEM_DEFINED(chunk, sizeof(MemoryChunk)); + + Assert(!MemoryChunkIsExternal(chunk)); + + /* obtain the original (unaligned) allocated pointer */ + unaligned = MemoryChunkGetBlock(chunk); + +#ifdef MEMORY_CONTEXT_CHECKING + /* Test for someone scribbling on unused space in chunk */ + if (!sentinel_ok(pointer, chunk->requested_size)) + elog(WARNING, "detected write past chunk end in %s %p", + GetMemoryChunkContext(unaligned)->name, chunk); +#endif + + pfree(unaligned); +} + +/* + * AlignedAllocRealloc + * Change the allocated size of a chunk and return possibly a different + * pointer to a memory address aligned to the same boundary as the + * originally requested alignment. The contents of 'pointer' will be + * copied into the returned pointer up until 'size'. Any additional + * memory will be uninitialized. + */ +void * +AlignedAllocRealloc(void *pointer, Size size) +{ + MemoryChunk *redirchunk = PointerGetMemoryChunk(pointer); + Size alignto; + void *unaligned; + MemoryContext ctx; + Size old_size; + void *newptr; + + VALGRIND_MAKE_MEM_DEFINED(redirchunk, sizeof(MemoryChunk)); + + alignto = MemoryChunkGetValue(redirchunk); + unaligned = MemoryChunkGetBlock(redirchunk); + + /* sanity check this is a power of 2 value */ + Assert((alignto & (alignto - 1)) == 0); + + /* + * Determine the size of the original allocation. We can't determine this + * exactly as GetMemoryChunkSpace() returns the total space used for the + * allocation, which for contexts like aset includes rounding up to the + * next power of 2. However, this value is just used to memcpy() the old + * data into the new allocation, so we only need to concern ourselves with + * not reading beyond the end of the original allocation's memory. The + * drawback here is that we may copy more bytes than we need to, which + * only amounts to wasted effort. We can safely subtract the extra bytes + * that we requested to allow us to align the pointer. We must also + * subtract the space for the unaligned pointer's MemoryChunk since + * GetMemoryChunkSpace should have included that. This does assume that + * all context types use MemoryChunk as a chunk header. + */ + old_size = GetMemoryChunkSpace(unaligned) - + PallocAlignedExtraBytes(alignto) - sizeof(MemoryChunk); + +#ifdef MEMORY_CONTEXT_CHECKING + /* check that GetMemoryChunkSpace returned something realistic */ + Assert(old_size >= redirchunk->requested_size); +#endif + + ctx = GetMemoryChunkContext(unaligned); + newptr = MemoryContextAllocAligned(ctx, size, alignto, 0); + + /* + * We may memcpy beyond the end of the original allocation request size, + * so we must mark the entire allocation as defined. + */ + VALGRIND_MAKE_MEM_DEFINED(pointer, old_size); + memcpy(newptr, pointer, Min(size, old_size)); + pfree(unaligned); + + return newptr; +} + +/* + * AlignedAllocGetChunkContext + * Return the MemoryContext that 'pointer' belongs to. + */ +MemoryContext +AlignedAllocGetChunkContext(void *pointer) +{ + MemoryChunk *redirchunk = PointerGetMemoryChunk(pointer); + MemoryContext cxt; + + VALGRIND_MAKE_MEM_DEFINED(redirchunk, sizeof(MemoryChunk)); + + Assert(!MemoryChunkIsExternal(redirchunk)); + + cxt = GetMemoryChunkContext(MemoryChunkGetBlock(redirchunk)); + + VALGRIND_MAKE_MEM_NOACCESS(redirchunk, sizeof(MemoryChunk)); + + return cxt; +} + +/* + * AlignedAllocGetChunkSpace + * Given a currently-allocated chunk, determine the total space + * it occupies (including all memory-allocation overhead). + */ +Size +AlignedAllocGetChunkSpace(void *pointer) +{ + MemoryChunk *redirchunk = PointerGetMemoryChunk(pointer); + void *unaligned; + Size space; + + VALGRIND_MAKE_MEM_DEFINED(redirchunk, sizeof(MemoryChunk)); + + unaligned = MemoryChunkGetBlock(redirchunk); + space = GetMemoryChunkSpace(unaligned); + + VALGRIND_MAKE_MEM_NOACCESS(redirchunk, sizeof(MemoryChunk)); + + return space; +} diff --git a/parser/src_backend_utils_mmgr_aset.c b/parser/src_backend_utils_mmgr_aset.c index 5716e7b8..9795aa73 100644 --- a/parser/src_backend_utils_mmgr_aset.c +++ b/parser/src_backend_utils_mmgr_aset.c @@ -1,18 +1,18 @@ /*-------------------------------------------------------------------- * Symbols referenced in this file: - * - AllocSetContextCreateInternal - * - context_freelists - * - AllocSetMethods * - AllocSetAlloc * - AllocSetFreeIndex * - AllocSetFree * - AllocSetRealloc * - AllocSetReset * - AllocSetDelete + * - context_freelists + * - AllocSetGetChunkContext * - AllocSetGetChunkSpace * - AllocSetIsEmpty * - AllocSetStats * - AllocSetCheck + * - AllocSetContextCreateInternal * - AllocSetDeleteFreeList *-------------------------------------------------------------------- */ @@ -26,7 +26,7 @@ * type. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION @@ -68,6 +68,8 @@ #include "port/pg_bitutils.h" #include "utils/memdebug.h" #include "utils/memutils.h" +#include "utils/memutils_memorychunk.h" +#include "utils/memutils_internal.h" /*-------------------- * Chunk freelist k holds chunks of size 1 << (k + ALLOC_MINBITS), @@ -85,7 +87,9 @@ * CAUTION: ALLOC_MINBITS must be large enough so that * 1<= 0 && (fidx) < ALLOCSET_NUM_FREELISTS) + +/* Determine the size of the chunk based on the freelist index */ +#define GetChunkSizeFromFreeListIdx(fidx) \ + ((((Size) 1) << ALLOC_MINBITS) << (fidx)) + /* * AllocSetContext is our standard implementation of MemoryContext. * @@ -142,7 +173,7 @@ typedef struct AllocSetContext MemoryContextData header; /* Standard memory-context fields */ /* Info about storage allocated in this context: */ AllocBlock blocks; /* head of list of blocks in this set */ - AllocChunk freelist[ALLOCSET_NUM_FREELISTS]; /* free chunk lists */ + MemoryChunk *freelist[ALLOCSET_NUM_FREELISTS]; /* free chunk lists */ /* Allocation parameters for this context: */ Size initBlockSize; /* initial block size */ Size maxBlockSize; /* maximum block size */ @@ -158,8 +189,8 @@ typedef AllocSetContext *AllocSet; /* * AllocBlock * An AllocBlock is the unit of memory that is obtained by aset.c - * from malloc(). It contains one or more AllocChunks, which are - * the units requested by palloc() and freed by pfree(). AllocChunks + * from malloc(). It contains one or more MemoryChunks, which are + * the units requested by palloc() and freed by pfree(). MemoryChunks * cannot be returned to malloc() individually, instead they are put * on freelists by pfree() and re-used by the next palloc() that has * a matching request size. @@ -176,50 +207,6 @@ typedef struct AllocBlockData char *endptr; /* end of space in this block */ } AllocBlockData; -/* - * AllocChunk - * The prefix of each piece of memory in an AllocBlock - * - * Note: to meet the memory context APIs, the payload area of the chunk must - * be maxaligned, and the "aset" link must be immediately adjacent to the - * payload area (cf. GetMemoryChunkContext). We simplify matters for this - * module by requiring sizeof(AllocChunkData) to be maxaligned, and then - * we can ensure things work by adding any required alignment padding before - * the "aset" field. There is a static assertion below that the alignment - * is done correctly. - */ -typedef struct AllocChunkData -{ - /* size is always the size of the usable space in the chunk */ - Size size; -#ifdef MEMORY_CONTEXT_CHECKING - /* when debugging memory usage, also store actual requested size */ - /* this is zero in a free chunk */ - Size requested_size; - -#define ALLOCCHUNK_RAWSIZE (SIZEOF_SIZE_T * 2 + SIZEOF_VOID_P) -#else -#define ALLOCCHUNK_RAWSIZE (SIZEOF_SIZE_T + SIZEOF_VOID_P) -#endif /* MEMORY_CONTEXT_CHECKING */ - - /* ensure proper alignment by adding padding if needed */ -#if (ALLOCCHUNK_RAWSIZE % MAXIMUM_ALIGNOF) != 0 - char padding[MAXIMUM_ALIGNOF - ALLOCCHUNK_RAWSIZE % MAXIMUM_ALIGNOF]; -#endif - - /* aset is the owning aset if allocated, or the freelist link if free */ - void *aset; - /* there must not be any padding to reach a MAXALIGN boundary here! */ -} AllocChunkData; - -/* - * Only the "aset" field should be accessed outside this module. - * We keep the rest of an allocated chunk's header marked NOACCESS when using - * valgrind. But note that chunk headers that are in a freelist are kept - * accessible, for simplicity. - */ -#define ALLOCCHUNK_PRIVATE_LEN offsetof(AllocChunkData, aset) - /* * AllocPointerIsValid * True iff pointer is valid allocation pointer. @@ -230,12 +217,23 @@ typedef struct AllocChunkData * AllocSetIsValid * True iff set is valid allocation set. */ -#define AllocSetIsValid(set) PointerIsValid(set) +#define AllocSetIsValid(set) \ + (PointerIsValid(set) && IsA(set, AllocSetContext)) -#define AllocPointerGetChunk(ptr) \ - ((AllocChunk)(((char *)(ptr)) - ALLOC_CHUNKHDRSZ)) -#define AllocChunkGetPointer(chk) \ - ((AllocPointer)(((char *)(chk)) + ALLOC_CHUNKHDRSZ)) +/* + * AllocBlockIsValid + * True iff block is valid block of allocation set. + */ +#define AllocBlockIsValid(block) \ + (PointerIsValid(block) && AllocSetIsValid((block)->aset)) + +/* + * We always store external chunks on a dedicated block. This makes fetching + * the block from an external chunk easy since it's always the first and only + * chunk on the block. + */ +#define ExternalChunkGetBlock(chunk) \ + (AllocBlock) ((char *) chunk - ALLOC_BLOCKHDRSZ) /* * Rather than repeatedly creating and deleting memory contexts, we keep some @@ -280,42 +278,6 @@ static __thread AllocSetFreeList context_freelists[2] = }; -/* - * These functions implement the MemoryContext API for AllocSet contexts. - */ -static void *AllocSetAlloc(MemoryContext context, Size size); -static void AllocSetFree(MemoryContext context, void *pointer); -static void *AllocSetRealloc(MemoryContext context, void *pointer, Size size); -static void AllocSetReset(MemoryContext context); -static void AllocSetDelete(MemoryContext context); -static Size AllocSetGetChunkSpace(MemoryContext context, void *pointer); -static bool AllocSetIsEmpty(MemoryContext context); -static void AllocSetStats(MemoryContext context, - MemoryStatsPrintFunc printfunc, void *passthru, - MemoryContextCounters *totals, - bool print_to_stderr); - -#ifdef MEMORY_CONTEXT_CHECKING -static void AllocSetCheck(MemoryContext context); -#endif - -/* - * This is the virtual function table for AllocSet contexts. - */ -static const MemoryContextMethods AllocSetMethods = { - AllocSetAlloc, - AllocSetFree, - AllocSetRealloc, - AllocSetReset, - AllocSetDelete, - AllocSetGetChunkSpace, - AllocSetIsEmpty, - AllocSetStats -#ifdef MEMORY_CONTEXT_CHECKING - ,AllocSetCheck -#endif -}; - /* ---------- * AllocSetFreeIndex - @@ -339,7 +301,7 @@ AllocSetFreeIndex(Size size) * or equivalently * pg_leftmost_one_pos32(size - 1) - ALLOC_MINBITS + 1 * - * However, rather than just calling that function, we duplicate the + * However, for platforms without intrinsic support, we duplicate the * logic here, allowing an additional optimization. It's reasonable * to assume that ALLOC_CHUNK_LIMIT fits in 16 bits, so we can unroll * the byte-at-a-time loop in pg_leftmost_one_pos32 and just handle @@ -349,14 +311,14 @@ AllocSetFreeIndex(Size size) * much trouble. *---------- */ -#ifdef HAVE__BUILTIN_CLZ - idx = 31 - __builtin_clz((uint32) size - 1) - ALLOC_MINBITS + 1; +#ifdef HAVE_BITSCAN_REVERSE + idx = pg_leftmost_one_pos32((uint32) size - 1) - ALLOC_MINBITS + 1; #else uint32 t, tsize; /* Statically assert that we only have a 16-bit input value. */ - StaticAssertStmt(ALLOC_CHUNK_LIMIT < (1 << 16), + StaticAssertDecl(ALLOC_CHUNK_LIMIT < (1 << 16), "ALLOC_CHUNK_LIMIT must be less than 64kB"); tsize = size - 1; @@ -407,18 +369,24 @@ AllocSetContextCreateInternal(MemoryContext parent, AllocSet set; AllocBlock block; - /* Assert we padded AllocChunkData properly */ - StaticAssertStmt(ALLOC_CHUNKHDRSZ == MAXALIGN(ALLOC_CHUNKHDRSZ), - "sizeof(AllocChunkData) is not maxaligned"); - StaticAssertStmt(offsetof(AllocChunkData, aset) + sizeof(MemoryContext) == - ALLOC_CHUNKHDRSZ, - "padding calculation in AllocChunkData is wrong"); + /* ensure MemoryChunk's size is properly maxaligned */ + StaticAssertDecl(ALLOC_CHUNKHDRSZ == MAXALIGN(ALLOC_CHUNKHDRSZ), + "sizeof(MemoryChunk) is not maxaligned"); + /* check we have enough space to store the freelist link */ + StaticAssertDecl(sizeof(AllocFreeListLink) <= (1 << ALLOC_MINBITS), + "sizeof(AllocFreeListLink) larger than minimum allocation size"); /* * First, validate allocation parameters. Once these were regular runtime - * test and elog's, but in practice Asserts seem sufficient because nobody - * varies their parameters at runtime. We somewhat arbitrarily enforce a - * minimum 1K block size. + * tests and elog's, but in practice Asserts seem sufficient because + * nobody varies their parameters at runtime. We somewhat arbitrarily + * enforce a minimum 1K block size. We restrict the maximum block size to + * MEMORYCHUNK_MAX_BLOCKOFFSET as MemoryChunks are limited to this in + * regards to addressing the offset between the chunk and the block that + * the chunk is stored on. We would be unable to store the offset between + * the chunk and block for any chunks that were beyond + * MEMORYCHUNK_MAX_BLOCKOFFSET bytes into the block if the block was to be + * larger than this. */ Assert(initBlockSize == MAXALIGN(initBlockSize) && initBlockSize >= 1024); @@ -429,6 +397,7 @@ AllocSetContextCreateInternal(MemoryContext parent, (minContextSize == MAXALIGN(minContextSize) && minContextSize >= 1024 && minContextSize <= maxBlockSize)); + Assert(maxBlockSize <= MEMORYCHUNK_MAX_BLOCKOFFSET); /* * Check whether the parameters match either available freelist. We do @@ -463,7 +432,7 @@ AllocSetContextCreateInternal(MemoryContext parent, /* Reinitialize its header, installing correct name and parent */ MemoryContextCreate((MemoryContext) set, T_AllocSetContext, - &AllocSetMethods, + MCTX_ASET_ID, parent, name); @@ -537,15 +506,20 @@ AllocSetContextCreateInternal(MemoryContext parent, * requests that are all the maximum chunk size we will waste at most * 1/8th of the allocated space. * - * We have to have allocChunkLimit a power of two, because the requested - * and actually-allocated sizes of any chunk must be on the same side of - * the limit, else we get confused about whether the chunk is "big". - * * Also, allocChunkLimit must not exceed ALLOCSET_SEPARATE_THRESHOLD. */ StaticAssertStmt(ALLOC_CHUNK_LIMIT == ALLOCSET_SEPARATE_THRESHOLD, "ALLOC_CHUNK_LIMIT != ALLOCSET_SEPARATE_THRESHOLD"); + /* + * Determine the maximum size that a chunk can be before we allocate an + * entire AllocBlock dedicated for that chunk. We set the absolute limit + * of that size as ALLOC_CHUNK_LIMIT but we reduce it further so that we + * can fit about ALLOC_CHUNK_FRACTION chunks this size on a maximally + * sized block. (We opt to keep allocChunkLimit a power-of-2 value + * primarily for legacy reasons rather than calculating it so that exactly + * ALLOC_CHUNK_FRACTION chunks fit on a maximally sized block.) + */ set->allocChunkLimit = ALLOC_CHUNK_LIMIT; while ((Size) (set->allocChunkLimit + ALLOC_CHUNKHDRSZ) > (Size) ((maxBlockSize - ALLOC_BLOCKHDRSZ) / ALLOC_CHUNK_FRACTION)) @@ -554,7 +528,7 @@ AllocSetContextCreateInternal(MemoryContext parent, /* Finally, do the type-independent part of context creation */ MemoryContextCreate((MemoryContext) set, T_AllocSetContext, - &AllocSetMethods, + MCTX_ASET_ID, parent, name); @@ -575,21 +549,23 @@ AllocSetContextCreateInternal(MemoryContext parent, * thrash malloc() when a context is repeatedly reset after small allocations, * which is typical behavior for per-tuple contexts. */ -static void +void AllocSetReset(MemoryContext context) { AllocSet set = (AllocSet) context; AllocBlock block; - Size keepersize PG_USED_FOR_ASSERTS_ONLY - = set->keeper->endptr - ((char *) set); + Size keepersize PG_USED_FOR_ASSERTS_ONLY; - AssertArg(AllocSetIsValid(set)); + Assert(AllocSetIsValid(set)); #ifdef MEMORY_CONTEXT_CHECKING /* Check for corruption and leaks before freeing */ AllocSetCheck(context); #endif + /* Remember keeper block size for Assert below */ + keepersize = set->keeper->endptr - ((char *) set); + /* Clear chunk freelists */ MemSetAligned(set->freelist, 0, sizeof(set->freelist)); @@ -643,21 +619,23 @@ AllocSetReset(MemoryContext context) * * Unlike AllocSetReset, this *must* free all resources of the set. */ -static void +void AllocSetDelete(MemoryContext context) { AllocSet set = (AllocSet) context; AllocBlock block = set->blocks; - Size keepersize PG_USED_FOR_ASSERTS_ONLY - = set->keeper->endptr - ((char *) set); + Size keepersize PG_USED_FOR_ASSERTS_ONLY; - AssertArg(AllocSetIsValid(set)); + Assert(AllocSetIsValid(set)); #ifdef MEMORY_CONTEXT_CHECKING /* Check for corruption and leaks before freeing */ AllocSetCheck(context); #endif + /* Remember keeper block size for Assert below */ + keepersize = set->keeper->endptr - ((char *) set); + /* * If the context is a candidate for a freelist, put it into that freelist * instead of destroying it. @@ -737,17 +715,17 @@ AllocSetDelete(MemoryContext context) * is marked, as mcxt.c will set it to UNDEFINED. In some paths we will * return space that is marked NOACCESS - AllocSetRealloc has to beware! */ -static void * +void * AllocSetAlloc(MemoryContext context, Size size) { AllocSet set = (AllocSet) context; AllocBlock block; - AllocChunk chunk; + MemoryChunk *chunk; int fidx; Size chunk_size; Size blksize; - AssertArg(AllocSetIsValid(set)); + Assert(AllocSetIsValid(set)); /* * If requested size exceeds maximum for chunks, allocate an entire block @@ -755,7 +733,13 @@ AllocSetAlloc(MemoryContext context, Size size) */ if (size > set->allocChunkLimit) { +#ifdef MEMORY_CONTEXT_CHECKING + /* ensure there's always space for the sentinel byte */ + chunk_size = MAXALIGN(size + 1); +#else chunk_size = MAXALIGN(size); +#endif + blksize = chunk_size + ALLOC_BLOCKHDRSZ + ALLOC_CHUNKHDRSZ; block = (AllocBlock) malloc(blksize); if (block == NULL) @@ -766,18 +750,20 @@ AllocSetAlloc(MemoryContext context, Size size) block->aset = set; block->freeptr = block->endptr = ((char *) block) + blksize; - chunk = (AllocChunk) (((char *) block) + ALLOC_BLOCKHDRSZ); - chunk->aset = set; - chunk->size = chunk_size; + chunk = (MemoryChunk *) (((char *) block) + ALLOC_BLOCKHDRSZ); + + /* mark the MemoryChunk as externally managed */ + MemoryChunkSetHdrMaskExternal(chunk, MCTX_ASET_ID); + #ifdef MEMORY_CONTEXT_CHECKING chunk->requested_size = size; /* set mark to catch clobber of "unused" space */ - if (size < chunk_size) - set_sentinel(AllocChunkGetPointer(chunk), size); + Assert(size < chunk_size); + set_sentinel(MemoryChunkGetPointer(chunk), size); #endif #ifdef RANDOMIZE_ALLOCATED_MEMORY /* fill the allocated space with junk */ - randomize_mem((char *) AllocChunkGetPointer(chunk), size); + randomize_mem((char *) MemoryChunkGetPointer(chunk), size); #endif /* @@ -800,13 +786,13 @@ AllocSetAlloc(MemoryContext context, Size size) } /* Ensure any padding bytes are marked NOACCESS. */ - VALGRIND_MAKE_MEM_NOACCESS((char *) AllocChunkGetPointer(chunk) + size, + VALGRIND_MAKE_MEM_NOACCESS((char *) MemoryChunkGetPointer(chunk) + size, chunk_size - size); - /* Disallow external access to private part of chunk header. */ - VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOCCHUNK_PRIVATE_LEN); + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); - return AllocChunkGetPointer(chunk); + return MemoryChunkGetPointer(chunk); } /* @@ -814,42 +800,54 @@ AllocSetAlloc(MemoryContext context, Size size) * corresponding free list to see if there is a free chunk we could reuse. * If one is found, remove it from the free list, make it again a member * of the alloc set and return its data address. + * + * Note that we don't attempt to ensure there's space for the sentinel + * byte here. We expect a large proportion of allocations to be for sizes + * which are already a power of 2. If we were to always make space for a + * sentinel byte in MEMORY_CONTEXT_CHECKING builds, then we'd end up + * doubling the memory requirements for such allocations. */ fidx = AllocSetFreeIndex(size); chunk = set->freelist[fidx]; if (chunk != NULL) { - Assert(chunk->size >= size); + AllocFreeListLink *link = GetFreeListLink(chunk); + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOC_CHUNKHDRSZ); - set->freelist[fidx] = (AllocChunk) chunk->aset; + Assert(fidx == MemoryChunkGetValue(chunk)); - chunk->aset = (void *) set; + /* pop this chunk off the freelist */ + VALGRIND_MAKE_MEM_DEFINED(link, sizeof(AllocFreeListLink)); + set->freelist[fidx] = link->next; + VALGRIND_MAKE_MEM_NOACCESS(link, sizeof(AllocFreeListLink)); #ifdef MEMORY_CONTEXT_CHECKING chunk->requested_size = size; /* set mark to catch clobber of "unused" space */ - if (size < chunk->size) - set_sentinel(AllocChunkGetPointer(chunk), size); + if (size < GetChunkSizeFromFreeListIdx(fidx)) + set_sentinel(MemoryChunkGetPointer(chunk), size); #endif #ifdef RANDOMIZE_ALLOCATED_MEMORY /* fill the allocated space with junk */ - randomize_mem((char *) AllocChunkGetPointer(chunk), size); + randomize_mem((char *) MemoryChunkGetPointer(chunk), size); #endif /* Ensure any padding bytes are marked NOACCESS. */ - VALGRIND_MAKE_MEM_NOACCESS((char *) AllocChunkGetPointer(chunk) + size, - chunk->size - size); + VALGRIND_MAKE_MEM_NOACCESS((char *) MemoryChunkGetPointer(chunk) + size, + GetChunkSizeFromFreeListIdx(fidx) - size); - /* Disallow external access to private part of chunk header. */ - VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOCCHUNK_PRIVATE_LEN); + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); - return AllocChunkGetPointer(chunk); + return MemoryChunkGetPointer(chunk); } /* * Choose the actual chunk size to allocate. */ - chunk_size = (1 << ALLOC_MINBITS) << fidx; + chunk_size = GetChunkSizeFromFreeListIdx(fidx); Assert(chunk_size >= size); /* @@ -876,6 +874,7 @@ AllocSetAlloc(MemoryContext context, Size size) */ while (availspace >= ((1 << ALLOC_MINBITS) + ALLOC_CHUNKHDRSZ)) { + AllocFreeListLink *link; Size availchunk = availspace - ALLOC_CHUNKHDRSZ; int a_fidx = AllocSetFreeIndex(availchunk); @@ -884,29 +883,34 @@ AllocSetAlloc(MemoryContext context, Size size) * freelist than the one we need to put this chunk on. The * exception is when availchunk is exactly a power of 2. */ - if (availchunk != ((Size) 1 << (a_fidx + ALLOC_MINBITS))) + if (availchunk != GetChunkSizeFromFreeListIdx(a_fidx)) { a_fidx--; Assert(a_fidx >= 0); - availchunk = ((Size) 1 << (a_fidx + ALLOC_MINBITS)); + availchunk = GetChunkSizeFromFreeListIdx(a_fidx); } - chunk = (AllocChunk) (block->freeptr); + chunk = (MemoryChunk *) (block->freeptr); /* Prepare to initialize the chunk header. */ VALGRIND_MAKE_MEM_UNDEFINED(chunk, ALLOC_CHUNKHDRSZ); - block->freeptr += (availchunk + ALLOC_CHUNKHDRSZ); availspace -= (availchunk + ALLOC_CHUNKHDRSZ); - chunk->size = availchunk; + /* store the freelist index in the value field */ + MemoryChunkSetHdrMask(chunk, block, a_fidx, MCTX_ASET_ID); #ifdef MEMORY_CONTEXT_CHECKING - chunk->requested_size = 0; /* mark it free */ + chunk->requested_size = InvalidAllocSize; /* mark it free */ #endif - chunk->aset = (void *) set->freelist[a_fidx]; + /* push this chunk onto the free list */ + link = GetFreeListLink(chunk); + + VALGRIND_MAKE_MEM_DEFINED(link, sizeof(AllocFreeListLink)); + link->next = set->freelist[a_fidx]; + VALGRIND_MAKE_MEM_NOACCESS(link, sizeof(AllocFreeListLink)); + set->freelist[a_fidx] = chunk; } - /* Mark that we need to create a new block */ block = NULL; } @@ -974,7 +978,7 @@ AllocSetAlloc(MemoryContext context, Size size) /* * OK, do the allocation */ - chunk = (AllocChunk) (block->freeptr); + chunk = (MemoryChunk *) (block->freeptr); /* Prepare to initialize the chunk header. */ VALGRIND_MAKE_MEM_UNDEFINED(chunk, ALLOC_CHUNKHDRSZ); @@ -982,69 +986,67 @@ AllocSetAlloc(MemoryContext context, Size size) block->freeptr += (chunk_size + ALLOC_CHUNKHDRSZ); Assert(block->freeptr <= block->endptr); - chunk->aset = (void *) set; - chunk->size = chunk_size; + /* store the free list index in the value field */ + MemoryChunkSetHdrMask(chunk, block, fidx, MCTX_ASET_ID); + #ifdef MEMORY_CONTEXT_CHECKING chunk->requested_size = size; /* set mark to catch clobber of "unused" space */ - if (size < chunk->size) - set_sentinel(AllocChunkGetPointer(chunk), size); + if (size < chunk_size) + set_sentinel(MemoryChunkGetPointer(chunk), size); #endif #ifdef RANDOMIZE_ALLOCATED_MEMORY /* fill the allocated space with junk */ - randomize_mem((char *) AllocChunkGetPointer(chunk), size); + randomize_mem((char *) MemoryChunkGetPointer(chunk), size); #endif /* Ensure any padding bytes are marked NOACCESS. */ - VALGRIND_MAKE_MEM_NOACCESS((char *) AllocChunkGetPointer(chunk) + size, + VALGRIND_MAKE_MEM_NOACCESS((char *) MemoryChunkGetPointer(chunk) + size, chunk_size - size); - /* Disallow external access to private part of chunk header. */ - VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOCCHUNK_PRIVATE_LEN); + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); - return AllocChunkGetPointer(chunk); + return MemoryChunkGetPointer(chunk); } /* * AllocSetFree * Frees allocated memory; memory is removed from the set. */ -static void -AllocSetFree(MemoryContext context, void *pointer) +void +AllocSetFree(void *pointer) { - AllocSet set = (AllocSet) context; - AllocChunk chunk = AllocPointerGetChunk(pointer); - - /* Allow access to private part of chunk header. */ - VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOCCHUNK_PRIVATE_LEN); + AllocSet set; + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); -#ifdef MEMORY_CONTEXT_CHECKING - /* Test for someone scribbling on unused space in chunk */ - if (chunk->requested_size < chunk->size) - if (!sentinel_ok(pointer, chunk->requested_size)) - elog(WARNING, "detected write past chunk end in %s %p", - set->header.name, chunk); -#endif + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOC_CHUNKHDRSZ); - if (chunk->size > set->allocChunkLimit) + if (MemoryChunkIsExternal(chunk)) { - /* - * Big chunks are certain to have been allocated as single-chunk - * blocks. Just unlink that block and return it to malloc(). - */ - AllocBlock block = (AllocBlock) (((char *) chunk) - ALLOC_BLOCKHDRSZ); + /* Release single-chunk block. */ + AllocBlock block = ExternalChunkGetBlock(chunk); /* - * Try to verify that we have a sane block pointer: it should - * reference the correct aset, and freeptr and endptr should point - * just past the chunk. + * Try to verify that we have a sane block pointer: the block header + * should reference an aset and the freeptr should match the endptr. */ - if (block->aset != set || - block->freeptr != block->endptr || - block->freeptr != ((char *) block) + - (chunk->size + ALLOC_BLOCKHDRSZ + ALLOC_CHUNKHDRSZ)) + if (!AllocBlockIsValid(block) || block->freeptr != block->endptr) elog(ERROR, "could not find block containing chunk %p", chunk); + set = block->aset; + +#ifdef MEMORY_CONTEXT_CHECKING + { + /* Test for someone scribbling on unused space in chunk */ + Assert(chunk->requested_size < (block->endptr - (char *) pointer)); + if (!sentinel_ok(pointer, chunk->requested_size)) + elog(WARNING, "detected write past chunk end in %s %p", + set->header.name, chunk); + } +#endif + /* OK, remove block from aset's list and free it */ if (block->prev) block->prev->next = block->next; @@ -1053,7 +1055,7 @@ AllocSetFree(MemoryContext context, void *pointer) if (block->next) block->next->prev = block->prev; - context->mem_allocated -= block->endptr - ((char *) block); + set->header.mem_allocated -= block->endptr - ((char *) block); #ifdef CLOBBER_FREED_MEMORY wipe_mem(block, block->freeptr - ((char *) block)); @@ -1062,20 +1064,48 @@ AllocSetFree(MemoryContext context, void *pointer) } else { - /* Normal case, put the chunk into appropriate freelist */ - int fidx = AllocSetFreeIndex(chunk->size); + AllocBlock block = MemoryChunkGetBlock(chunk); + int fidx; + AllocFreeListLink *link; + + /* + * In this path, for speed reasons we just Assert that the referenced + * block is good. We can also Assert that the value field is sane. + * Future field experience may show that these Asserts had better + * become regular runtime test-and-elog checks. + */ + Assert(AllocBlockIsValid(block)); + set = block->aset; - chunk->aset = (void *) set->freelist[fidx]; + fidx = MemoryChunkGetValue(chunk); + Assert(FreeListIdxIsValid(fidx)); + link = GetFreeListLink(chunk); + +#ifdef MEMORY_CONTEXT_CHECKING + /* Test for someone scribbling on unused space in chunk */ + if (chunk->requested_size < GetChunkSizeFromFreeListIdx(fidx)) + if (!sentinel_ok(pointer, chunk->requested_size)) + elog(WARNING, "detected write past chunk end in %s %p", + set->header.name, chunk); +#endif #ifdef CLOBBER_FREED_MEMORY - wipe_mem(pointer, chunk->size); + wipe_mem(pointer, GetChunkSizeFromFreeListIdx(fidx)); #endif + /* push this chunk onto the top of the free list */ + VALGRIND_MAKE_MEM_DEFINED(link, sizeof(AllocFreeListLink)); + link->next = set->freelist[fidx]; + VALGRIND_MAKE_MEM_NOACCESS(link, sizeof(AllocFreeListLink)); + set->freelist[fidx] = chunk; #ifdef MEMORY_CONTEXT_CHECKING - /* Reset requested_size to 0 in chunks that are on freelist */ - chunk->requested_size = 0; + + /* + * Reset requested_size to InvalidAllocSize in chunks that are on free + * list. + */ + chunk->requested_size = InvalidAllocSize; #endif - set->freelist[fidx] = chunk; } } @@ -1091,57 +1121,56 @@ AllocSetFree(MemoryContext context, void *pointer) * (In principle, we could use VALGRIND_GET_VBITS() to rediscover the old * request size.) */ -static void * -AllocSetRealloc(MemoryContext context, void *pointer, Size size) +void * +AllocSetRealloc(void *pointer, Size size) { - AllocSet set = (AllocSet) context; - AllocChunk chunk = AllocPointerGetChunk(pointer); - Size oldsize; - - /* Allow access to private part of chunk header. */ - VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOCCHUNK_PRIVATE_LEN); - - oldsize = chunk->size; + AllocBlock block; + AllocSet set; + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + Size oldchksize; + int fidx; -#ifdef MEMORY_CONTEXT_CHECKING - /* Test for someone scribbling on unused space in chunk */ - if (chunk->requested_size < oldsize) - if (!sentinel_ok(pointer, chunk->requested_size)) - elog(WARNING, "detected write past chunk end in %s %p", - set->header.name, chunk); -#endif + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOC_CHUNKHDRSZ); - if (oldsize > set->allocChunkLimit) + if (MemoryChunkIsExternal(chunk)) { /* * The chunk must have been allocated as a single-chunk block. Use * realloc() to make the containing block bigger, or smaller, with * minimum space wastage. */ - AllocBlock block = (AllocBlock) (((char *) chunk) - ALLOC_BLOCKHDRSZ); Size chksize; Size blksize; Size oldblksize; + block = ExternalChunkGetBlock(chunk); + /* - * Try to verify that we have a sane block pointer: it should - * reference the correct aset, and freeptr and endptr should point - * just past the chunk. + * Try to verify that we have a sane block pointer: the block header + * should reference an aset and the freeptr should match the endptr. */ - if (block->aset != set || - block->freeptr != block->endptr || - block->freeptr != ((char *) block) + - (oldsize + ALLOC_BLOCKHDRSZ + ALLOC_CHUNKHDRSZ)) + if (!AllocBlockIsValid(block) || block->freeptr != block->endptr) elog(ERROR, "could not find block containing chunk %p", chunk); - /* - * Even if the new request is less than set->allocChunkLimit, we stick - * with the single-chunk block approach. Therefore we need - * chunk->size to be bigger than set->allocChunkLimit, so we don't get - * confused about the chunk's status in future calls. - */ - chksize = Max(size, set->allocChunkLimit + 1); - chksize = MAXALIGN(chksize); + set = block->aset; + + oldchksize = block->endptr - (char *) pointer; + +#ifdef MEMORY_CONTEXT_CHECKING + /* Test for someone scribbling on unused space in chunk */ + Assert(chunk->requested_size < oldchksize); + if (!sentinel_ok(pointer, chunk->requested_size)) + elog(WARNING, "detected write past chunk end in %s %p", + set->header.name, chunk); +#endif + +#ifdef MEMORY_CONTEXT_CHECKING + /* ensure there's always space for the sentinel byte */ + chksize = MAXALIGN(size + 1); +#else + chksize = MAXALIGN(size); +#endif /* Do the realloc */ blksize = chksize + ALLOC_BLOCKHDRSZ + ALLOC_CHUNKHDRSZ; @@ -1150,77 +1179,109 @@ AllocSetRealloc(MemoryContext context, void *pointer, Size size) block = (AllocBlock) realloc(block, blksize); if (block == NULL) { - /* Disallow external access to private part of chunk header. */ - VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOCCHUNK_PRIVATE_LEN); + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); return NULL; } /* updated separately, not to underflow when (oldblksize > blksize) */ - context->mem_allocated -= oldblksize; - context->mem_allocated += blksize; + set->header.mem_allocated -= oldblksize; + set->header.mem_allocated += blksize; block->freeptr = block->endptr = ((char *) block) + blksize; /* Update pointers since block has likely been moved */ - chunk = (AllocChunk) (((char *) block) + ALLOC_BLOCKHDRSZ); - pointer = AllocChunkGetPointer(chunk); + chunk = (MemoryChunk *) (((char *) block) + ALLOC_BLOCKHDRSZ); + pointer = MemoryChunkGetPointer(chunk); if (block->prev) block->prev->next = block; else set->blocks = block; if (block->next) block->next->prev = block; - chunk->size = chksize; #ifdef MEMORY_CONTEXT_CHECKING #ifdef RANDOMIZE_ALLOCATED_MEMORY - /* We can only fill the extra space if we know the prior request */ + + /* + * We can only randomize the extra space if we know the prior request. + * When using Valgrind, randomize_mem() also marks memory UNDEFINED. + */ if (size > chunk->requested_size) randomize_mem((char *) pointer + chunk->requested_size, size - chunk->requested_size); -#endif +#else /* - * realloc() (or randomize_mem()) will have left any newly-allocated - * part UNDEFINED, but we may need to adjust trailing bytes from the - * old allocation. + * If this is an increase, realloc() will have marked any + * newly-allocated part (from oldchksize to chksize) UNDEFINED, but we + * also need to adjust trailing bytes from the old allocation (from + * chunk->requested_size to oldchksize) as they are marked NOACCESS. + * Make sure not to mark too many bytes in case chunk->requested_size + * < size < oldchksize. */ #ifdef USE_VALGRIND - if (oldsize > chunk->requested_size) + if (Min(size, oldchksize) > chunk->requested_size) VALGRIND_MAKE_MEM_UNDEFINED((char *) pointer + chunk->requested_size, - oldsize - chunk->requested_size); + Min(size, oldchksize) - chunk->requested_size); +#endif #endif chunk->requested_size = size; - /* set mark to catch clobber of "unused" space */ - if (size < chunk->size) - set_sentinel(pointer, size); + Assert(size < chksize); + set_sentinel(pointer, size); #else /* !MEMORY_CONTEXT_CHECKING */ /* - * We don't know how much of the old chunk size was the actual - * allocation; it could have been as small as one byte. We have to be - * conservative and just mark the entire old portion DEFINED. + * We may need to adjust marking of bytes from the old allocation as + * some of them may be marked NOACCESS. We don't know how much of the + * old chunk size was the requested size; it could have been as small + * as one byte. We have to be conservative and just mark the entire + * old portion DEFINED. Make sure not to mark memory beyond the new + * allocation in case it's smaller than the old one. */ - VALGRIND_MAKE_MEM_DEFINED(pointer, oldsize); + VALGRIND_MAKE_MEM_DEFINED(pointer, Min(size, oldchksize)); #endif /* Ensure any padding bytes are marked NOACCESS. */ VALGRIND_MAKE_MEM_NOACCESS((char *) pointer + size, chksize - size); - /* Disallow external access to private part of chunk header. */ - VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOCCHUNK_PRIVATE_LEN); + /* Disallow access to the chunk header . */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); return pointer; } + block = MemoryChunkGetBlock(chunk); + + /* + * In this path, for speed reasons we just Assert that the referenced + * block is good. We can also Assert that the value field is sane. Future + * field experience may show that these Asserts had better become regular + * runtime test-and-elog checks. + */ + Assert(AllocBlockIsValid(block)); + set = block->aset; + + fidx = MemoryChunkGetValue(chunk); + Assert(FreeListIdxIsValid(fidx)); + oldchksize = GetChunkSizeFromFreeListIdx(fidx); + +#ifdef MEMORY_CONTEXT_CHECKING + /* Test for someone scribbling on unused space in chunk */ + if (chunk->requested_size < oldchksize) + if (!sentinel_ok(pointer, chunk->requested_size)) + elog(WARNING, "detected write past chunk end in %s %p", + set->header.name, chunk); +#endif + /* * Chunk sizes are aligned to power of 2 in AllocSetAlloc(). Maybe the * allocated area already is >= the new size. (In particular, we will * fall out here if the requested size is a decrease.) */ - else if (oldsize >= size) + if (oldchksize >= size) { #ifdef MEMORY_CONTEXT_CHECKING Size oldrequest = chunk->requested_size; @@ -1243,10 +1304,10 @@ AllocSetRealloc(MemoryContext context, void *pointer, Size size) size - oldrequest); else VALGRIND_MAKE_MEM_NOACCESS((char *) pointer + size, - oldsize - size); + oldchksize - size); /* set mark to catch clobber of "unused" space */ - if (size < oldsize) + if (size < oldchksize) set_sentinel(pointer, size); #else /* !MEMORY_CONTEXT_CHECKING */ @@ -1255,12 +1316,12 @@ AllocSetRealloc(MemoryContext context, void *pointer, Size size) * the old request or shrinking it, so we conservatively mark the * entire new allocation DEFINED. */ - VALGRIND_MAKE_MEM_NOACCESS(pointer, oldsize); + VALGRIND_MAKE_MEM_NOACCESS(pointer, oldchksize); VALGRIND_MAKE_MEM_DEFINED(pointer, size); #endif - /* Disallow external access to private part of chunk header. */ - VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOCCHUNK_PRIVATE_LEN); + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); return pointer; } @@ -1278,6 +1339,7 @@ AllocSetRealloc(MemoryContext context, void *pointer, Size size) * memory indefinitely. See pgsql-hackers archives for 2007-08-11.) */ AllocPointer newPointer; + Size oldsize; /* allocate new chunk */ newPointer = AllocSetAlloc((MemoryContext) set, size); @@ -1285,8 +1347,8 @@ AllocSetRealloc(MemoryContext context, void *pointer, Size size) /* leave immediately if request was not completed */ if (newPointer == NULL) { - /* Disallow external access to private part of chunk header. */ - VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOCCHUNK_PRIVATE_LEN); + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); return NULL; } @@ -1302,6 +1364,7 @@ AllocSetRealloc(MemoryContext context, void *pointer, Size size) #ifdef MEMORY_CONTEXT_CHECKING oldsize = chunk->requested_size; #else + oldsize = oldchksize; VALGRIND_MAKE_MEM_DEFINED(pointer, oldsize); #endif @@ -1309,36 +1372,84 @@ AllocSetRealloc(MemoryContext context, void *pointer, Size size) memcpy(newPointer, pointer, oldsize); /* free old chunk */ - AllocSetFree((MemoryContext) set, pointer); + AllocSetFree(pointer); return newPointer; } } +/* + * AllocSetGetChunkContext + * Return the MemoryContext that 'pointer' belongs to. + */ +MemoryContext +AllocSetGetChunkContext(void *pointer) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + AllocBlock block; + AllocSet set; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOC_CHUNKHDRSZ); + + if (MemoryChunkIsExternal(chunk)) + block = ExternalChunkGetBlock(chunk); + else + block = (AllocBlock) MemoryChunkGetBlock(chunk); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); + + Assert(AllocBlockIsValid(block)); + set = block->aset; + + return &set->header; +} + /* * AllocSetGetChunkSpace * Given a currently-allocated chunk, determine the total space * it occupies (including all memory-allocation overhead). */ -static Size -AllocSetGetChunkSpace(MemoryContext context, void *pointer) +Size +AllocSetGetChunkSpace(void *pointer) { - AllocChunk chunk = AllocPointerGetChunk(pointer); - Size result; + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + int fidx; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOC_CHUNKHDRSZ); + + if (MemoryChunkIsExternal(chunk)) + { + AllocBlock block = ExternalChunkGetBlock(chunk); - VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOCCHUNK_PRIVATE_LEN); - result = chunk->size + ALLOC_CHUNKHDRSZ; - VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOCCHUNK_PRIVATE_LEN); - return result; + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); + + Assert(AllocBlockIsValid(block)); + + return block->endptr - (char *) chunk; + } + + fidx = MemoryChunkGetValue(chunk); + Assert(FreeListIdxIsValid(fidx)); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); + + return GetChunkSizeFromFreeListIdx(fidx) + ALLOC_CHUNKHDRSZ; } /* * AllocSetIsEmpty * Is an allocset empty of any allocated space? */ -static bool +bool AllocSetIsEmpty(MemoryContext context) { + Assert(AllocSetIsValid(context)); + /* * For now, we say "empty" only if the context is new or just reset. We * could examine the freelists to determine if all space has been freed, @@ -1359,7 +1470,7 @@ AllocSetIsEmpty(MemoryContext context) * totals: if not NULL, add stats about this context into *totals. * print_to_stderr: print stats to stderr if true, elog otherwise. */ -static void +void AllocSetStats(MemoryContext context, MemoryStatsPrintFunc printfunc, void *passthru, MemoryContextCounters *totals, bool print_to_stderr) @@ -1372,6 +1483,8 @@ AllocSetStats(MemoryContext context, AllocBlock block; int fidx; + Assert(AllocSetIsValid(set)); + /* Include context header in totalspace */ totalspace = MAXALIGN(sizeof(AllocSetContext)); @@ -1383,13 +1496,24 @@ AllocSetStats(MemoryContext context, } for (fidx = 0; fidx < ALLOCSET_NUM_FREELISTS; fidx++) { - AllocChunk chunk; + Size chksz = GetChunkSizeFromFreeListIdx(fidx); + MemoryChunk *chunk = set->freelist[fidx]; - for (chunk = set->freelist[fidx]; chunk != NULL; - chunk = (AllocChunk) chunk->aset) + while (chunk != NULL) { + AllocFreeListLink *link = GetFreeListLink(chunk); + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOC_CHUNKHDRSZ); + Assert(MemoryChunkGetValue(chunk) == fidx); + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); + freechunks++; - freespace += chunk->size + ALLOC_CHUNKHDRSZ; + freespace += chksz + ALLOC_CHUNKHDRSZ; + + VALGRIND_MAKE_MEM_DEFINED(link, sizeof(AllocFreeListLink)); + chunk = link->next; + VALGRIND_MAKE_MEM_NOACCESS(link, sizeof(AllocFreeListLink)); } } @@ -1424,7 +1548,7 @@ AllocSetStats(MemoryContext context, * find yourself in an infinite loop when trouble occurs, because this * routine will be entered again when elog cleanup tries to release memory! */ -static void +void AllocSetCheck(MemoryContext context) { AllocSet set = (AllocSet) context; @@ -1441,6 +1565,7 @@ AllocSetCheck(MemoryContext context) long blk_used = block->freeptr - bpoz; long blk_data = 0; long nchunks = 0; + bool has_external_chunk = false; if (set->keeper == block) total_allocated += block->endptr - ((char *) set); @@ -1472,56 +1597,64 @@ AllocSetCheck(MemoryContext context) */ while (bpoz < block->freeptr) { - AllocChunk chunk = (AllocChunk) bpoz; + MemoryChunk *chunk = (MemoryChunk *) bpoz; Size chsize, dsize; - /* Allow access to private part of chunk header. */ - VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOCCHUNK_PRIVATE_LEN); + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, ALLOC_CHUNKHDRSZ); + + if (MemoryChunkIsExternal(chunk)) + { + chsize = block->endptr - (char *) MemoryChunkGetPointer(chunk); /* aligned chunk size */ + has_external_chunk = true; + + /* make sure this chunk consumes the entire block */ + if (chsize + ALLOC_CHUNKHDRSZ != blk_used) + elog(WARNING, "problem in alloc set %s: bad single-chunk %p in block %p", + name, chunk, block); + } + else + { + int fidx = MemoryChunkGetValue(chunk); + + if (!FreeListIdxIsValid(fidx)) + elog(WARNING, "problem in alloc set %s: bad chunk size for chunk %p in block %p", + name, chunk, block); + + chsize = GetChunkSizeFromFreeListIdx(fidx); /* aligned chunk size */ - chsize = chunk->size; /* aligned chunk size */ + /* + * Check the stored block offset correctly references this + * block. + */ + if (block != MemoryChunkGetBlock(chunk)) + elog(WARNING, "problem in alloc set %s: bad block offset for chunk %p in block %p", + name, chunk, block); + } dsize = chunk->requested_size; /* real data */ - /* - * Check chunk size - */ - if (dsize > chsize) + /* an allocated chunk's requested size must be <= the chsize */ + if (dsize != InvalidAllocSize && dsize > chsize) elog(WARNING, "problem in alloc set %s: req size > alloc size for chunk %p in block %p", name, chunk, block); + + /* chsize must not be smaller than the first freelist's size */ if (chsize < (1 << ALLOC_MINBITS)) elog(WARNING, "problem in alloc set %s: bad size %zu for chunk %p in block %p", name, chsize, chunk, block); - /* single-chunk block? */ - if (chsize > set->allocChunkLimit && - chsize + ALLOC_CHUNKHDRSZ != blk_used) - elog(WARNING, "problem in alloc set %s: bad single-chunk %p in block %p", - name, chunk, block); - - /* - * If chunk is allocated, check for correct aset pointer. (If it's - * free, the aset is the freelist pointer, which we can't check as - * easily...) Note this is an incomplete test, since palloc(0) - * produces an allocated chunk with requested_size == 0. - */ - if (dsize > 0 && chunk->aset != (void *) set) - elog(WARNING, "problem in alloc set %s: bogus aset link in block %p, chunk %p", - name, block, chunk); - /* * Check for overwrite of padding space in an allocated chunk. */ - if (chunk->aset == (void *) set && dsize < chsize && + if (dsize != InvalidAllocSize && dsize < chsize && !sentinel_ok(chunk, ALLOC_CHUNKHDRSZ + dsize)) elog(WARNING, "problem in alloc set %s: detected write past chunk end in block %p, chunk %p", name, block, chunk); - /* - * If chunk is allocated, disallow external access to private part - * of chunk header. - */ - if (chunk->aset == (void *) set) - VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOCCHUNK_PRIVATE_LEN); + /* if chunk is allocated, disallow access to the chunk header */ + if (dsize != InvalidAllocSize) + VALGRIND_MAKE_MEM_NOACCESS(chunk, ALLOC_CHUNKHDRSZ); blk_data += chsize; nchunks++; @@ -1532,6 +1665,10 @@ AllocSetCheck(MemoryContext context) if ((blk_data + (nchunks * ALLOC_CHUNKHDRSZ)) != blk_used) elog(WARNING, "problem in alloc set %s: found inconsistent memory block %p", name, block); + + if (has_external_chunk && nchunks > 1) + elog(WARNING, "problem in alloc set %s: external chunk on non-dedicated block %p", + name, block); } Assert(total_allocated == context->mem_allocated); diff --git a/parser/src_backend_utils_mmgr_generation.c b/parser/src_backend_utils_mmgr_generation.c new file mode 100644 index 00000000..e2182c4d --- /dev/null +++ b/parser/src_backend_utils_mmgr_generation.c @@ -0,0 +1,1039 @@ +/*-------------------------------------------------------------------- + * Symbols referenced in this file: + * - GenerationAlloc + * - GenerationBlockFreeBytes + * - GenerationBlockIsEmpty + * - GenerationBlockInit + * - GenerationFree + * - GenerationBlockMarkEmpty + * - GenerationRealloc + * - GenerationReset + * - GenerationBlockFree + * - GenerationDelete + * - GenerationGetChunkContext + * - GenerationGetChunkSpace + * - GenerationIsEmpty + * - GenerationStats + * - GenerationCheck + *-------------------------------------------------------------------- + */ + +/*------------------------------------------------------------------------- + * + * generation.c + * Generational allocator definitions. + * + * Generation is a custom MemoryContext implementation designed for cases of + * chunks with similar lifespan. + * + * Portions Copyright (c) 2017-2023, PostgreSQL Global Development Group + * + * IDENTIFICATION + * src/backend/utils/mmgr/generation.c + * + * + * This memory context is based on the assumption that the chunks are freed + * roughly in the same order as they were allocated (FIFO), or in groups with + * similar lifespan (generations - hence the name of the context). This is + * typical for various queue-like use cases, i.e. when tuples are constructed, + * processed and then thrown away. + * + * The memory context uses a very simple approach to free space management. + * Instead of a complex global freelist, each block tracks a number + * of allocated and freed chunks. The block is classed as empty when the + * number of free chunks is equal to the number of allocated chunks. When + * this occurs, instead of freeing the block, we try to "recycle" it, i.e. + * reuse it for new allocations. This is done by setting the block in the + * context's 'freeblock' field. If the freeblock field is already occupied + * by another free block we simply return the newly empty block to malloc. + * + * This approach to free blocks requires fewer malloc/free calls for truly + * first allocated, first free'd allocation patterns. + * + *------------------------------------------------------------------------- + */ + +#include "postgres.h" + +#include "lib/ilist.h" +#include "port/pg_bitutils.h" +#include "utils/memdebug.h" +#include "utils/memutils.h" +#include "utils/memutils_memorychunk.h" +#include "utils/memutils_internal.h" + + +#define Generation_BLOCKHDRSZ MAXALIGN(sizeof(GenerationBlock)) +#define Generation_CHUNKHDRSZ sizeof(MemoryChunk) + +#define Generation_CHUNK_FRACTION 8 + +typedef struct GenerationBlock GenerationBlock; /* forward reference */ + +typedef void *GenerationPointer; + +/* + * GenerationContext is a simple memory context not reusing allocated chunks, + * and freeing blocks once all chunks are freed. + */ +typedef struct GenerationContext +{ + MemoryContextData header; /* Standard memory-context fields */ + + /* Generational context parameters */ + Size initBlockSize; /* initial block size */ + Size maxBlockSize; /* maximum block size */ + Size nextBlockSize; /* next block size to allocate */ + Size allocChunkLimit; /* effective chunk size limit */ + + GenerationBlock *block; /* current (most recently allocated) block, or + * NULL if we've just freed the most recent + * block */ + GenerationBlock *freeblock; /* pointer to a block that's being recycled, + * or NULL if there's no such block. */ + GenerationBlock *keeper; /* keep this block over resets */ + dlist_head blocks; /* list of blocks */ +} GenerationContext; + +/* + * GenerationBlock + * GenerationBlock is the unit of memory that is obtained by generation.c + * from malloc(). It contains zero or more MemoryChunks, which are the + * units requested by palloc() and freed by pfree(). MemoryChunks cannot + * be returned to malloc() individually, instead pfree() updates the free + * counter of the block and when all chunks in a block are free the whole + * block can be returned to malloc(). + * + * GenerationBlock is the header data for a block --- the usable space + * within the block begins at the next alignment boundary. + */ +struct GenerationBlock +{ + dlist_node node; /* doubly-linked list of blocks */ + GenerationContext *context; /* pointer back to the owning context */ + Size blksize; /* allocated size of this block */ + int nchunks; /* number of chunks in the block */ + int nfree; /* number of free chunks */ + char *freeptr; /* start of free space in this block */ + char *endptr; /* end of space in this block */ +}; + +/* + * GenerationIsValid + * True iff set is valid generation set. + */ +#define GenerationIsValid(set) \ + (PointerIsValid(set) && IsA(set, GenerationContext)) + +/* + * GenerationBlockIsValid + * True iff block is valid block of generation set. + */ +#define GenerationBlockIsValid(block) \ + (PointerIsValid(block) && GenerationIsValid((block)->context)) + +/* + * We always store external chunks on a dedicated block. This makes fetching + * the block from an external chunk easy since it's always the first and only + * chunk on the block. + */ +#define ExternalChunkGetBlock(chunk) \ + (GenerationBlock *) ((char *) chunk - Generation_BLOCKHDRSZ) + +/* Inlined helper functions */ +static inline void GenerationBlockInit(GenerationContext *context, + GenerationBlock *block, + Size blksize); +static inline bool GenerationBlockIsEmpty(GenerationBlock *block); +static inline void GenerationBlockMarkEmpty(GenerationBlock *block); +static inline Size GenerationBlockFreeBytes(GenerationBlock *block); +static inline void GenerationBlockFree(GenerationContext *set, + GenerationBlock *block); + + +/* + * Public routines + */ + + +/* + * GenerationContextCreate + * Create a new Generation context. + * + * parent: parent context, or NULL if top-level context + * name: name of context (must be statically allocated) + * minContextSize: minimum context size + * initBlockSize: initial allocation block size + * maxBlockSize: maximum allocation block size + */ + + +/* + * GenerationReset + * Frees all memory which is allocated in the given set. + * + * The code simply frees all the blocks in the context - we don't keep any + * keeper blocks or anything like that. + */ +void +GenerationReset(MemoryContext context) +{ + GenerationContext *set = (GenerationContext *) context; + dlist_mutable_iter miter; + + Assert(GenerationIsValid(set)); + +#ifdef MEMORY_CONTEXT_CHECKING + /* Check for corruption and leaks before freeing */ + GenerationCheck(context); +#endif + + /* + * NULLify the free block pointer. We must do this before calling + * GenerationBlockFree as that function never expects to free the + * freeblock. + */ + set->freeblock = NULL; + + dlist_foreach_modify(miter, &set->blocks) + { + GenerationBlock *block = dlist_container(GenerationBlock, node, miter.cur); + + if (block == set->keeper) + GenerationBlockMarkEmpty(block); + else + GenerationBlockFree(set, block); + } + + /* set it so new allocations to make use of the keeper block */ + set->block = set->keeper; + + /* Reset block size allocation sequence, too */ + set->nextBlockSize = set->initBlockSize; + + /* Ensure there is only 1 item in the dlist */ + Assert(!dlist_is_empty(&set->blocks)); + Assert(!dlist_has_next(&set->blocks, dlist_head_node(&set->blocks))); +} + +/* + * GenerationDelete + * Free all memory which is allocated in the given context. + */ +void +GenerationDelete(MemoryContext context) +{ + /* Reset to release all releasable GenerationBlocks */ + GenerationReset(context); + /* And free the context header and keeper block */ + free(context); +} + +/* + * GenerationAlloc + * Returns pointer to allocated memory of given size or NULL if + * request could not be completed; memory is added to the set. + * + * No request may exceed: + * MAXALIGN_DOWN(SIZE_MAX) - Generation_BLOCKHDRSZ - Generation_CHUNKHDRSZ + * All callers use a much-lower limit. + * + * Note: when using valgrind, it doesn't matter how the returned allocation + * is marked, as mcxt.c will set it to UNDEFINED. In some paths we will + * return space that is marked NOACCESS - GenerationRealloc has to beware! + */ +void * +GenerationAlloc(MemoryContext context, Size size) +{ + GenerationContext *set = (GenerationContext *) context; + GenerationBlock *block; + MemoryChunk *chunk; + Size chunk_size; + Size required_size; + + Assert(GenerationIsValid(set)); + +#ifdef MEMORY_CONTEXT_CHECKING + /* ensure there's always space for the sentinel byte */ + chunk_size = MAXALIGN(size + 1); +#else + chunk_size = MAXALIGN(size); +#endif + required_size = chunk_size + Generation_CHUNKHDRSZ; + + /* is it an over-sized chunk? if yes, allocate special block */ + if (chunk_size > set->allocChunkLimit) + { + Size blksize = required_size + Generation_BLOCKHDRSZ; + + block = (GenerationBlock *) malloc(blksize); + if (block == NULL) + return NULL; + + context->mem_allocated += blksize; + + /* block with a single (used) chunk */ + block->context = set; + block->blksize = blksize; + block->nchunks = 1; + block->nfree = 0; + + /* the block is completely full */ + block->freeptr = block->endptr = ((char *) block) + blksize; + + chunk = (MemoryChunk *) (((char *) block) + Generation_BLOCKHDRSZ); + + /* mark the MemoryChunk as externally managed */ + MemoryChunkSetHdrMaskExternal(chunk, MCTX_GENERATION_ID); + +#ifdef MEMORY_CONTEXT_CHECKING + chunk->requested_size = size; + /* set mark to catch clobber of "unused" space */ + Assert(size < chunk_size); + set_sentinel(MemoryChunkGetPointer(chunk), size); +#endif +#ifdef RANDOMIZE_ALLOCATED_MEMORY + /* fill the allocated space with junk */ + randomize_mem((char *) MemoryChunkGetPointer(chunk), size); +#endif + + /* add the block to the list of allocated blocks */ + dlist_push_head(&set->blocks, &block->node); + + /* Ensure any padding bytes are marked NOACCESS. */ + VALGRIND_MAKE_MEM_NOACCESS((char *) MemoryChunkGetPointer(chunk) + size, + chunk_size - size); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Generation_CHUNKHDRSZ); + + return MemoryChunkGetPointer(chunk); + } + + /* + * Not an oversized chunk. We try to first make use of the current block, + * but if there's not enough space in it, instead of allocating a new + * block, we look to see if the freeblock is empty and has enough space. + * If not, we'll also try the same using the keeper block. The keeper + * block may have become empty and we have no other way to reuse it again + * if we don't try to use it explicitly here. + * + * We don't want to start filling the freeblock before the current block + * is full, otherwise we may cause fragmentation in FIFO type workloads. + * We only switch to using the freeblock or keeper block if those blocks + * are completely empty. If we didn't do that we could end up fragmenting + * consecutive allocations over multiple blocks which would be a problem + * that would compound over time. + */ + block = set->block; + + if (block == NULL || + GenerationBlockFreeBytes(block) < required_size) + { + Size blksize; + GenerationBlock *freeblock = set->freeblock; + + if (freeblock != NULL && + GenerationBlockIsEmpty(freeblock) && + GenerationBlockFreeBytes(freeblock) >= required_size) + { + block = freeblock; + + /* + * Zero out the freeblock as we'll set this to the current block + * below + */ + set->freeblock = NULL; + } + else if (GenerationBlockIsEmpty(set->keeper) && + GenerationBlockFreeBytes(set->keeper) >= required_size) + { + block = set->keeper; + } + else + { + /* + * The first such block has size initBlockSize, and we double the + * space in each succeeding block, but not more than maxBlockSize. + */ + blksize = set->nextBlockSize; + set->nextBlockSize <<= 1; + if (set->nextBlockSize > set->maxBlockSize) + set->nextBlockSize = set->maxBlockSize; + + /* we'll need a block hdr too, so add that to the required size */ + required_size += Generation_BLOCKHDRSZ; + + /* round the size up to the next power of 2 */ + if (blksize < required_size) + blksize = pg_nextpower2_size_t(required_size); + + block = (GenerationBlock *) malloc(blksize); + + if (block == NULL) + return NULL; + + context->mem_allocated += blksize; + + /* initialize the new block */ + GenerationBlockInit(set, block, blksize); + + /* add it to the doubly-linked list of blocks */ + dlist_push_head(&set->blocks, &block->node); + + /* Zero out the freeblock in case it's become full */ + set->freeblock = NULL; + } + + /* and also use it as the current allocation block */ + set->block = block; + } + + /* we're supposed to have a block with enough free space now */ + Assert(block != NULL); + Assert((block->endptr - block->freeptr) >= Generation_CHUNKHDRSZ + chunk_size); + + chunk = (MemoryChunk *) block->freeptr; + + /* Prepare to initialize the chunk header. */ + VALGRIND_MAKE_MEM_UNDEFINED(chunk, Generation_CHUNKHDRSZ); + + block->nchunks += 1; + block->freeptr += (Generation_CHUNKHDRSZ + chunk_size); + + Assert(block->freeptr <= block->endptr); + + MemoryChunkSetHdrMask(chunk, block, chunk_size, MCTX_GENERATION_ID); +#ifdef MEMORY_CONTEXT_CHECKING + chunk->requested_size = size; + /* set mark to catch clobber of "unused" space */ + Assert(size < chunk_size); + set_sentinel(MemoryChunkGetPointer(chunk), size); +#endif +#ifdef RANDOMIZE_ALLOCATED_MEMORY + /* fill the allocated space with junk */ + randomize_mem((char *) MemoryChunkGetPointer(chunk), size); +#endif + + /* Ensure any padding bytes are marked NOACCESS. */ + VALGRIND_MAKE_MEM_NOACCESS((char *) MemoryChunkGetPointer(chunk) + size, + chunk_size - size); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Generation_CHUNKHDRSZ); + + return MemoryChunkGetPointer(chunk); +} + +/* + * GenerationBlockInit + * Initializes 'block' assuming 'blksize'. Does not update the context's + * mem_allocated field. + */ +static inline void +GenerationBlockInit(GenerationContext *context, GenerationBlock *block, + Size blksize) +{ + block->context = context; + block->blksize = blksize; + block->nchunks = 0; + block->nfree = 0; + + block->freeptr = ((char *) block) + Generation_BLOCKHDRSZ; + block->endptr = ((char *) block) + blksize; + + /* Mark unallocated space NOACCESS. */ + VALGRIND_MAKE_MEM_NOACCESS(block->freeptr, + blksize - Generation_BLOCKHDRSZ); +} + +/* + * GenerationBlockIsEmpty + * Returns true iff 'block' contains no chunks + */ +static inline bool +GenerationBlockIsEmpty(GenerationBlock *block) +{ + return (block->nchunks == 0); +} + +/* + * GenerationBlockMarkEmpty + * Set a block as empty. Does not free the block. + */ +static inline void +GenerationBlockMarkEmpty(GenerationBlock *block) +{ +#if defined(USE_VALGRIND) || defined(CLOBBER_FREED_MEMORY) + char *datastart = ((char *) block) + Generation_BLOCKHDRSZ; +#endif + +#ifdef CLOBBER_FREED_MEMORY + wipe_mem(datastart, block->freeptr - datastart); +#else + /* wipe_mem() would have done this */ + VALGRIND_MAKE_MEM_NOACCESS(datastart, block->freeptr - datastart); +#endif + + /* Reset the block, but don't return it to malloc */ + block->nchunks = 0; + block->nfree = 0; + block->freeptr = ((char *) block) + Generation_BLOCKHDRSZ; +} + +/* + * GenerationBlockFreeBytes + * Returns the number of bytes free in 'block' + */ +static inline Size +GenerationBlockFreeBytes(GenerationBlock *block) +{ + return (block->endptr - block->freeptr); +} + +/* + * GenerationBlockFree + * Remove 'block' from 'set' and release the memory consumed by it. + */ +static inline void +GenerationBlockFree(GenerationContext *set, GenerationBlock *block) +{ + /* Make sure nobody tries to free the keeper block */ + Assert(block != set->keeper); + /* We shouldn't be freeing the freeblock either */ + Assert(block != set->freeblock); + + /* release the block from the list of blocks */ + dlist_delete(&block->node); + + ((MemoryContext) set)->mem_allocated -= block->blksize; + +#ifdef CLOBBER_FREED_MEMORY + wipe_mem(block, block->blksize); +#endif + + free(block); +} + +/* + * GenerationFree + * Update number of chunks in the block, and if all chunks in the block + * are now free then discard the block. + */ +void +GenerationFree(void *pointer) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + GenerationBlock *block; + GenerationContext *set; +#if (defined(MEMORY_CONTEXT_CHECKING) && defined(USE_ASSERT_CHECKING)) \ + || defined(CLOBBER_FREED_MEMORY) + Size chunksize; +#endif + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Generation_CHUNKHDRSZ); + + if (MemoryChunkIsExternal(chunk)) + { + block = ExternalChunkGetBlock(chunk); + + /* + * Try to verify that we have a sane block pointer: the block header + * should reference a generation context. + */ + if (!GenerationBlockIsValid(block)) + elog(ERROR, "could not find block containing chunk %p", chunk); + +#if (defined(MEMORY_CONTEXT_CHECKING) && defined(USE_ASSERT_CHECKING)) \ + || defined(CLOBBER_FREED_MEMORY) + chunksize = block->endptr - (char *) pointer; +#endif + } + else + { + block = MemoryChunkGetBlock(chunk); + + /* + * In this path, for speed reasons we just Assert that the referenced + * block is good. Future field experience may show that this Assert + * had better become a regular runtime test-and-elog check. + */ + Assert(GenerationBlockIsValid(block)); + +#if (defined(MEMORY_CONTEXT_CHECKING) && defined(USE_ASSERT_CHECKING)) \ + || defined(CLOBBER_FREED_MEMORY) + chunksize = MemoryChunkGetValue(chunk); +#endif + } + +#ifdef MEMORY_CONTEXT_CHECKING + /* Test for someone scribbling on unused space in chunk */ + Assert(chunk->requested_size < chunksize); + if (!sentinel_ok(pointer, chunk->requested_size)) + elog(WARNING, "detected write past chunk end in %s %p", + ((MemoryContext) block->context)->name, chunk); +#endif + +#ifdef CLOBBER_FREED_MEMORY + wipe_mem(pointer, chunksize); +#endif + +#ifdef MEMORY_CONTEXT_CHECKING + /* Reset requested_size to InvalidAllocSize in freed chunks */ + chunk->requested_size = InvalidAllocSize; +#endif + + block->nfree += 1; + + Assert(block->nchunks > 0); + Assert(block->nfree <= block->nchunks); + + /* If there are still allocated chunks in the block, we're done. */ + if (block->nfree < block->nchunks) + return; + + set = block->context; + + /* Don't try to free the keeper block, just mark it empty */ + if (block == set->keeper) + { + GenerationBlockMarkEmpty(block); + return; + } + + /* + * If there is no freeblock set or if this is the freeblock then instead + * of freeing this memory, we keep it around so that new allocations have + * the option of recycling it. + */ + if (set->freeblock == NULL || set->freeblock == block) + { + /* XXX should we only recycle maxBlockSize sized blocks? */ + set->freeblock = block; + GenerationBlockMarkEmpty(block); + return; + } + + /* Also make sure the block is not marked as the current block. */ + if (set->block == block) + set->block = NULL; + + /* + * The block is empty, so let's get rid of it. First remove it from the + * list of blocks, then return it to malloc(). + */ + dlist_delete(&block->node); + + set->header.mem_allocated -= block->blksize; + free(block); +} + +/* + * GenerationRealloc + * When handling repalloc, we simply allocate a new chunk, copy the data + * and discard the old one. The only exception is when the new size fits + * into the old chunk - in that case we just update chunk header. + */ +void * +GenerationRealloc(void *pointer, Size size) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + GenerationContext *set; + GenerationBlock *block; + GenerationPointer newPointer; + Size oldsize; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Generation_CHUNKHDRSZ); + + if (MemoryChunkIsExternal(chunk)) + { + block = ExternalChunkGetBlock(chunk); + + /* + * Try to verify that we have a sane block pointer: the block header + * should reference a generation context. + */ + if (!GenerationBlockIsValid(block)) + elog(ERROR, "could not find block containing chunk %p", chunk); + + oldsize = block->endptr - (char *) pointer; + } + else + { + block = MemoryChunkGetBlock(chunk); + + /* + * In this path, for speed reasons we just Assert that the referenced + * block is good. Future field experience may show that this Assert + * had better become a regular runtime test-and-elog check. + */ + Assert(GenerationBlockIsValid(block)); + + oldsize = MemoryChunkGetValue(chunk); + } + + set = block->context; + +#ifdef MEMORY_CONTEXT_CHECKING + /* Test for someone scribbling on unused space in chunk */ + Assert(chunk->requested_size < oldsize); + if (!sentinel_ok(pointer, chunk->requested_size)) + elog(WARNING, "detected write past chunk end in %s %p", + ((MemoryContext) set)->name, chunk); +#endif + + /* + * Maybe the allocated area already is >= the new size. (In particular, + * we always fall out here if the requested size is a decrease.) + * + * This memory context does not use power-of-2 chunk sizing and instead + * carves the chunks to be as small as possible, so most repalloc() calls + * will end up in the palloc/memcpy/pfree branch. + * + * XXX Perhaps we should annotate this condition with unlikely()? + */ + if (oldsize >= size) + { +#ifdef MEMORY_CONTEXT_CHECKING + Size oldrequest = chunk->requested_size; + +#ifdef RANDOMIZE_ALLOCATED_MEMORY + /* We can only fill the extra space if we know the prior request */ + if (size > oldrequest) + randomize_mem((char *) pointer + oldrequest, + size - oldrequest); +#endif + + chunk->requested_size = size; + + /* + * If this is an increase, mark any newly-available part UNDEFINED. + * Otherwise, mark the obsolete part NOACCESS. + */ + if (size > oldrequest) + VALGRIND_MAKE_MEM_UNDEFINED((char *) pointer + oldrequest, + size - oldrequest); + else + VALGRIND_MAKE_MEM_NOACCESS((char *) pointer + size, + oldsize - size); + + /* set mark to catch clobber of "unused" space */ + set_sentinel(pointer, size); +#else /* !MEMORY_CONTEXT_CHECKING */ + + /* + * We don't have the information to determine whether we're growing + * the old request or shrinking it, so we conservatively mark the + * entire new allocation DEFINED. + */ + VALGRIND_MAKE_MEM_NOACCESS(pointer, oldsize); + VALGRIND_MAKE_MEM_DEFINED(pointer, size); +#endif + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Generation_CHUNKHDRSZ); + + return pointer; + } + + /* allocate new chunk */ + newPointer = GenerationAlloc((MemoryContext) set, size); + + /* leave immediately if request was not completed */ + if (newPointer == NULL) + { + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Generation_CHUNKHDRSZ); + return NULL; + } + + /* + * GenerationAlloc() may have returned a region that is still NOACCESS. + * Change it to UNDEFINED for the moment; memcpy() will then transfer + * definedness from the old allocation to the new. If we know the old + * allocation, copy just that much. Otherwise, make the entire old chunk + * defined to avoid errors as we copy the currently-NOACCESS trailing + * bytes. + */ + VALGRIND_MAKE_MEM_UNDEFINED(newPointer, size); +#ifdef MEMORY_CONTEXT_CHECKING + oldsize = chunk->requested_size; +#else + VALGRIND_MAKE_MEM_DEFINED(pointer, oldsize); +#endif + + /* transfer existing data (certain to fit) */ + memcpy(newPointer, pointer, oldsize); + + /* free old chunk */ + GenerationFree(pointer); + + return newPointer; +} + +/* + * GenerationGetChunkContext + * Return the MemoryContext that 'pointer' belongs to. + */ +MemoryContext +GenerationGetChunkContext(void *pointer) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + GenerationBlock *block; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Generation_CHUNKHDRSZ); + + if (MemoryChunkIsExternal(chunk)) + block = ExternalChunkGetBlock(chunk); + else + block = (GenerationBlock *) MemoryChunkGetBlock(chunk); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Generation_CHUNKHDRSZ); + + Assert(GenerationBlockIsValid(block)); + return &block->context->header; +} + +/* + * GenerationGetChunkSpace + * Given a currently-allocated chunk, determine the total space + * it occupies (including all memory-allocation overhead). + */ +Size +GenerationGetChunkSpace(void *pointer) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + Size chunksize; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Generation_CHUNKHDRSZ); + + if (MemoryChunkIsExternal(chunk)) + { + GenerationBlock *block = ExternalChunkGetBlock(chunk); + + Assert(GenerationBlockIsValid(block)); + chunksize = block->endptr - (char *) pointer; + } + else + chunksize = MemoryChunkGetValue(chunk); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Generation_CHUNKHDRSZ); + + return Generation_CHUNKHDRSZ + chunksize; +} + +/* + * GenerationIsEmpty + * Is a GenerationContext empty of any allocated space? + */ +bool +GenerationIsEmpty(MemoryContext context) +{ + GenerationContext *set = (GenerationContext *) context; + dlist_iter iter; + + Assert(GenerationIsValid(set)); + + dlist_foreach(iter, &set->blocks) + { + GenerationBlock *block = dlist_container(GenerationBlock, node, iter.cur); + + if (block->nchunks > 0) + return false; + } + + return true; +} + +/* + * GenerationStats + * Compute stats about memory consumption of a Generation context. + * + * printfunc: if not NULL, pass a human-readable stats string to this. + * passthru: pass this pointer through to printfunc. + * totals: if not NULL, add stats about this context into *totals. + * print_to_stderr: print stats to stderr if true, elog otherwise. + * + * XXX freespace only accounts for empty space at the end of the block, not + * space of freed chunks (which is unknown). + */ +void +GenerationStats(MemoryContext context, + MemoryStatsPrintFunc printfunc, void *passthru, + MemoryContextCounters *totals, bool print_to_stderr) +{ + GenerationContext *set = (GenerationContext *) context; + Size nblocks = 0; + Size nchunks = 0; + Size nfreechunks = 0; + Size totalspace; + Size freespace = 0; + dlist_iter iter; + + Assert(GenerationIsValid(set)); + + /* Include context header in totalspace */ + totalspace = MAXALIGN(sizeof(GenerationContext)); + + dlist_foreach(iter, &set->blocks) + { + GenerationBlock *block = dlist_container(GenerationBlock, node, iter.cur); + + nblocks++; + nchunks += block->nchunks; + nfreechunks += block->nfree; + totalspace += block->blksize; + freespace += (block->endptr - block->freeptr); + } + + if (printfunc) + { + char stats_string[200]; + + snprintf(stats_string, sizeof(stats_string), + "%zu total in %zu blocks (%zu chunks); %zu free (%zu chunks); %zu used", + totalspace, nblocks, nchunks, freespace, + nfreechunks, totalspace - freespace); + printfunc(context, passthru, stats_string, print_to_stderr); + } + + if (totals) + { + totals->nblocks += nblocks; + totals->freechunks += nfreechunks; + totals->totalspace += totalspace; + totals->freespace += freespace; + } +} + + +#ifdef MEMORY_CONTEXT_CHECKING + +/* + * GenerationCheck + * Walk through chunks and check consistency of memory. + * + * NOTE: report errors as WARNING, *not* ERROR or FATAL. Otherwise you'll + * find yourself in an infinite loop when trouble occurs, because this + * routine will be entered again when elog cleanup tries to release memory! + */ +void +GenerationCheck(MemoryContext context) +{ + GenerationContext *gen = (GenerationContext *) context; + const char *name = context->name; + dlist_iter iter; + Size total_allocated = 0; + + /* walk all blocks in this context */ + dlist_foreach(iter, &gen->blocks) + { + GenerationBlock *block = dlist_container(GenerationBlock, node, iter.cur); + int nfree, + nchunks; + char *ptr; + bool has_external_chunk = false; + + total_allocated += block->blksize; + + /* + * nfree > nchunks is surely wrong. Equality is allowed as the block + * might completely empty if it's the freeblock. + */ + if (block->nfree > block->nchunks) + elog(WARNING, "problem in Generation %s: number of free chunks %d in block %p exceeds %d allocated", + name, block->nfree, block, block->nchunks); + + /* check block belongs to the correct context */ + if (block->context != gen) + elog(WARNING, "problem in Generation %s: bogus context link in block %p", + name, block); + + /* Now walk through the chunks and count them. */ + nfree = 0; + nchunks = 0; + ptr = ((char *) block) + Generation_BLOCKHDRSZ; + + while (ptr < block->freeptr) + { + MemoryChunk *chunk = (MemoryChunk *) ptr; + GenerationBlock *chunkblock; + Size chunksize; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Generation_CHUNKHDRSZ); + + if (MemoryChunkIsExternal(chunk)) + { + chunkblock = ExternalChunkGetBlock(chunk); + chunksize = block->endptr - (char *) MemoryChunkGetPointer(chunk); + has_external_chunk = true; + } + else + { + chunkblock = MemoryChunkGetBlock(chunk); + chunksize = MemoryChunkGetValue(chunk); + } + + /* move to the next chunk */ + ptr += (chunksize + Generation_CHUNKHDRSZ); + + nchunks += 1; + + /* chunks have both block and context pointers, so check both */ + if (chunkblock != block) + elog(WARNING, "problem in Generation %s: bogus block link in block %p, chunk %p", + name, block, chunk); + + + /* is chunk allocated? */ + if (chunk->requested_size != InvalidAllocSize) + { + /* now make sure the chunk size is correct */ + if (chunksize < chunk->requested_size || + chunksize != MAXALIGN(chunksize)) + elog(WARNING, "problem in Generation %s: bogus chunk size in block %p, chunk %p", + name, block, chunk); + + /* check sentinel */ + Assert(chunk->requested_size < chunksize); + if (!sentinel_ok(chunk, Generation_CHUNKHDRSZ + chunk->requested_size)) + elog(WARNING, "problem in Generation %s: detected write past chunk end in block %p, chunk %p", + name, block, chunk); + } + else + nfree += 1; + + /* if chunk is allocated, disallow access to the chunk header */ + if (chunk->requested_size != InvalidAllocSize) + VALGRIND_MAKE_MEM_NOACCESS(chunk, Generation_CHUNKHDRSZ); + } + + /* + * Make sure we got the expected number of allocated and free chunks + * (as tracked in the block header). + */ + if (nchunks != block->nchunks) + elog(WARNING, "problem in Generation %s: number of allocated chunks %d in block %p does not match header %d", + name, nchunks, block, block->nchunks); + + if (nfree != block->nfree) + elog(WARNING, "problem in Generation %s: number of free chunks %d in block %p does not match header %d", + name, nfree, block, block->nfree); + + if (has_external_chunk && nchunks > 1) + elog(WARNING, "problem in Generation %s: external chunk on non-dedicated block %p", + name, block); + + } + + Assert(total_allocated == context->mem_allocated); +} + +#endif /* MEMORY_CONTEXT_CHECKING */ diff --git a/parser/src_backend_utils_mmgr_mcxt.c b/parser/src_backend_utils_mmgr_mcxt.c index b1120883..847473d0 100644 --- a/parser/src_backend_utils_mmgr_mcxt.c +++ b/parser/src_backend_utils_mmgr_mcxt.c @@ -10,10 +10,21 @@ * - MemoryContextCallResetCallbacks * - MemoryContextResetOnly * - repalloc + * - GetMemoryChunkContext * - MemoryContextStats * - MemoryContextStatsDetail * - MemoryContextStatsInternal * - MemoryContextStatsPrint + * - mcxt_methods + * - GetMemoryChunkSpace + * - MemoryContextAllocAligned + * - MemoryContextAllocExtended + * - BogusFree + * - GetMemoryChunkHeader + * - BogusRealloc + * - BogusGetChunkContext + * - BogusGetChunkSpace + * - GetMemoryChunkMethodID * - pfree * - pstrdup * - MemoryContextStrdup @@ -43,7 +54,7 @@ * context's MemoryContextMethods struct. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -63,12 +74,105 @@ #include "utils/fmgrprotos.h" #include "utils/memdebug.h" #include "utils/memutils.h" +#include "utils/memutils_internal.h" +#include "utils/memutils_memorychunk.h" + +static void BogusFree(void *pointer); +static void *BogusRealloc(void *pointer, Size size); +static MemoryContext BogusGetChunkContext(void *pointer); +static Size BogusGetChunkSpace(void *pointer); /***************************************************************************** * GLOBAL MEMORY * *****************************************************************************/ +static const MemoryContextMethods mcxt_methods[] = { + /* aset.c */ + [MCTX_ASET_ID].alloc = AllocSetAlloc, + [MCTX_ASET_ID].free_p = AllocSetFree, + [MCTX_ASET_ID].realloc = AllocSetRealloc, + [MCTX_ASET_ID].reset = AllocSetReset, + [MCTX_ASET_ID].delete_context = AllocSetDelete, + [MCTX_ASET_ID].get_chunk_context = AllocSetGetChunkContext, + [MCTX_ASET_ID].get_chunk_space = AllocSetGetChunkSpace, + [MCTX_ASET_ID].is_empty = AllocSetIsEmpty, + [MCTX_ASET_ID].stats = AllocSetStats, +#ifdef MEMORY_CONTEXT_CHECKING + [MCTX_ASET_ID].check = AllocSetCheck, +#endif + + /* generation.c */ + [MCTX_GENERATION_ID].alloc = GenerationAlloc, + [MCTX_GENERATION_ID].free_p = GenerationFree, + [MCTX_GENERATION_ID].realloc = GenerationRealloc, + [MCTX_GENERATION_ID].reset = GenerationReset, + [MCTX_GENERATION_ID].delete_context = GenerationDelete, + [MCTX_GENERATION_ID].get_chunk_context = GenerationGetChunkContext, + [MCTX_GENERATION_ID].get_chunk_space = GenerationGetChunkSpace, + [MCTX_GENERATION_ID].is_empty = GenerationIsEmpty, + [MCTX_GENERATION_ID].stats = GenerationStats, +#ifdef MEMORY_CONTEXT_CHECKING + [MCTX_GENERATION_ID].check = GenerationCheck, +#endif + + /* slab.c */ + [MCTX_SLAB_ID].alloc = SlabAlloc, + [MCTX_SLAB_ID].free_p = SlabFree, + [MCTX_SLAB_ID].realloc = SlabRealloc, + [MCTX_SLAB_ID].reset = SlabReset, + [MCTX_SLAB_ID].delete_context = SlabDelete, + [MCTX_SLAB_ID].get_chunk_context = SlabGetChunkContext, + [MCTX_SLAB_ID].get_chunk_space = SlabGetChunkSpace, + [MCTX_SLAB_ID].is_empty = SlabIsEmpty, + [MCTX_SLAB_ID].stats = SlabStats, +#ifdef MEMORY_CONTEXT_CHECKING + [MCTX_SLAB_ID].check = SlabCheck, +#endif + + /* alignedalloc.c */ + [MCTX_ALIGNED_REDIRECT_ID].alloc = NULL, /* not required */ + [MCTX_ALIGNED_REDIRECT_ID].free_p = AlignedAllocFree, + [MCTX_ALIGNED_REDIRECT_ID].realloc = AlignedAllocRealloc, + [MCTX_ALIGNED_REDIRECT_ID].reset = NULL, /* not required */ + [MCTX_ALIGNED_REDIRECT_ID].delete_context = NULL, /* not required */ + [MCTX_ALIGNED_REDIRECT_ID].get_chunk_context = AlignedAllocGetChunkContext, + [MCTX_ALIGNED_REDIRECT_ID].get_chunk_space = AlignedAllocGetChunkSpace, + [MCTX_ALIGNED_REDIRECT_ID].is_empty = NULL, /* not required */ + [MCTX_ALIGNED_REDIRECT_ID].stats = NULL, /* not required */ +#ifdef MEMORY_CONTEXT_CHECKING + [MCTX_ALIGNED_REDIRECT_ID].check = NULL, /* not required */ +#endif + + + /* + * Unused (as yet) IDs should have dummy entries here. This allows us to + * fail cleanly if a bogus pointer is passed to pfree or the like. It + * seems sufficient to provide routines for the methods that might get + * invoked from inspection of a chunk (see MCXT_METHOD calls below). + */ + + [MCTX_UNUSED1_ID].free_p = BogusFree, + [MCTX_UNUSED1_ID].realloc = BogusRealloc, + [MCTX_UNUSED1_ID].get_chunk_context = BogusGetChunkContext, + [MCTX_UNUSED1_ID].get_chunk_space = BogusGetChunkSpace, + + [MCTX_UNUSED2_ID].free_p = BogusFree, + [MCTX_UNUSED2_ID].realloc = BogusRealloc, + [MCTX_UNUSED2_ID].get_chunk_context = BogusGetChunkContext, + [MCTX_UNUSED2_ID].get_chunk_space = BogusGetChunkSpace, + + [MCTX_UNUSED3_ID].free_p = BogusFree, + [MCTX_UNUSED3_ID].realloc = BogusRealloc, + [MCTX_UNUSED3_ID].get_chunk_context = BogusGetChunkContext, + [MCTX_UNUSED3_ID].get_chunk_space = BogusGetChunkSpace, + + [MCTX_UNUSED4_ID].free_p = BogusFree, + [MCTX_UNUSED4_ID].realloc = BogusRealloc, + [MCTX_UNUSED4_ID].get_chunk_context = BogusGetChunkContext, + [MCTX_UNUSED4_ID].get_chunk_space = BogusGetChunkSpace, +}; + /* * CurrentMemoryContext * Default memory context for allocations. @@ -110,6 +214,100 @@ static void MemoryContextStatsPrint(MemoryContext context, void *passthru, #define AssertNotInCriticalSection(context) \ Assert(CritSectionCount == 0 || (context)->allowInCritSection) +/* + * Call the given function in the MemoryContextMethods for the memory context + * type that 'pointer' belongs to. + */ +#define MCXT_METHOD(pointer, method) \ + mcxt_methods[GetMemoryChunkMethodID(pointer)].method + +/* + * GetMemoryChunkMethodID + * Return the MemoryContextMethodID from the uint64 chunk header which + * directly precedes 'pointer'. + */ +static inline MemoryContextMethodID +GetMemoryChunkMethodID(const void *pointer) +{ + uint64 header; + + /* + * Try to detect bogus pointers handed to us, poorly though we can. + * Presumably, a pointer that isn't MAXALIGNED isn't pointing at an + * allocated chunk. + */ + Assert(pointer == (const void *) MAXALIGN(pointer)); + + /* Allow access to the uint64 header */ + VALGRIND_MAKE_MEM_DEFINED((char *) pointer - sizeof(uint64), sizeof(uint64)); + + header = *((const uint64 *) ((const char *) pointer - sizeof(uint64))); + + /* Disallow access to the uint64 header */ + VALGRIND_MAKE_MEM_NOACCESS((char *) pointer - sizeof(uint64), sizeof(uint64)); + + return (MemoryContextMethodID) (header & MEMORY_CONTEXT_METHODID_MASK); +} + +/* + * GetMemoryChunkHeader + * Return the uint64 chunk header which directly precedes 'pointer'. + * + * This is only used after GetMemoryChunkMethodID, so no need for error checks. + */ +static inline uint64 +GetMemoryChunkHeader(const void *pointer) +{ + uint64 header; + + /* Allow access to the uint64 header */ + VALGRIND_MAKE_MEM_DEFINED((char *) pointer - sizeof(uint64), sizeof(uint64)); + + header = *((const uint64 *) ((const char *) pointer - sizeof(uint64))); + + /* Disallow access to the uint64 header */ + VALGRIND_MAKE_MEM_NOACCESS((char *) pointer - sizeof(uint64), sizeof(uint64)); + + return header; +} + +/* + * Support routines to trap use of invalid memory context method IDs + * (from calling pfree or the like on a bogus pointer). As a possible + * aid in debugging, we report the header word along with the pointer + * address (if we got here, there must be an accessible header word). + */ +static void +BogusFree(void *pointer) +{ + elog(ERROR, "pfree called with invalid pointer %p (header 0x%016llx)", + pointer, (unsigned long long) GetMemoryChunkHeader(pointer)); +} + +static void * +BogusRealloc(void *pointer, Size size) +{ + elog(ERROR, "repalloc called with invalid pointer %p (header 0x%016llx)", + pointer, (unsigned long long) GetMemoryChunkHeader(pointer)); + return NULL; /* keep compiler quiet */ +} + +static MemoryContext +BogusGetChunkContext(void *pointer) +{ + elog(ERROR, "GetMemoryChunkContext called with invalid pointer %p (header 0x%016llx)", + pointer, (unsigned long long) GetMemoryChunkHeader(pointer)); + return NULL; /* keep compiler quiet */ +} + +static Size +BogusGetChunkSpace(void *pointer) +{ + elog(ERROR, "GetMemoryChunkSpace called with invalid pointer %p (header 0x%016llx)", + pointer, (unsigned long long) GetMemoryChunkHeader(pointer)); + return 0; /* keep compiler quiet */ +} + /***************************************************************************** * EXPORTED ROUTINES * @@ -135,7 +333,7 @@ static void MemoryContextStatsPrint(MemoryContext context, void *passthru, void MemoryContextInit(void) { - AssertState(TopMemoryContext == NULL); + Assert(TopMemoryContext == NULL); /* * First, initialize TopMemoryContext, which is the parent of all others. @@ -179,7 +377,7 @@ MemoryContextInit(void) void MemoryContextReset(MemoryContext context) { - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); /* save a function call in common case where there are no children */ if (context->firstchild != NULL) @@ -198,7 +396,7 @@ MemoryContextReset(MemoryContext context) void MemoryContextResetOnly(MemoryContext context) { - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); /* Nothing to do if no pallocs since startup or last reset */ if (!context->isReset) @@ -209,10 +407,8 @@ MemoryContextResetOnly(MemoryContext context) * If context->ident points into the context's memory, it will become * a dangling pointer. We could prevent that by setting it to NULL * here, but that would break valid coding patterns that keep the - * ident elsewhere, e.g. in a parent context. Another idea is to use - * MemoryContextContains(), but we don't require ident strings to be - * in separately-palloc'd chunks, so that risks false positives. So - * for now we assume the programmer got it right. + * ident elsewhere, e.g. in a parent context. So for now we assume + * the programmer got it right. */ context->methods->reset(context); @@ -242,7 +438,7 @@ MemoryContextResetOnly(MemoryContext context) void MemoryContextDelete(MemoryContext context) { - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); /* We had better not be deleting TopMemoryContext ... */ Assert(context != TopMemoryContext); /* And not CurrentMemoryContext, either */ @@ -287,7 +483,7 @@ MemoryContextDelete(MemoryContext context) void MemoryContextDeleteChildren(MemoryContext context) { - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); /* * MemoryContextDelete will delink the child from me, so just iterate as @@ -369,8 +565,8 @@ MemoryContextCallResetCallbacks(MemoryContext context) void MemoryContextSetParent(MemoryContext context, MemoryContext new_parent) { - AssertArg(MemoryContextIsValid(context)); - AssertArg(context != new_parent); + Assert(MemoryContextIsValid(context)); + Assert(context != new_parent); /* Fast path if it's got correct parent already */ if (new_parent == context->parent) @@ -396,7 +592,7 @@ MemoryContextSetParent(MemoryContext context, MemoryContext new_parent) /* And relink */ if (new_parent) { - AssertArg(MemoryContextIsValid(new_parent)); + Assert(MemoryContextIsValid(new_parent)); context->parent = new_parent; context->prevchild = NULL; context->nextchild = new_parent->firstchild; @@ -426,11 +622,22 @@ MemoryContextSetParent(MemoryContext context, MemoryContext new_parent) void MemoryContextAllowInCriticalSection(MemoryContext context, bool allow) { - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); context->allowInCritSection = allow; } +/* + * GetMemoryChunkContext + * Given a currently-allocated chunk, determine the MemoryContext that + * the chunk belongs to. + */ +MemoryContext +GetMemoryChunkContext(void *pointer) +{ + return MCXT_METHOD(pointer, get_chunk_context) (pointer); +} + /* * GetMemoryChunkSpace * Given a currently-allocated chunk, determine the total space @@ -439,7 +646,11 @@ MemoryContextAllowInCriticalSection(MemoryContext context, bool allow) * This is useful for measuring the total space occupied by a set of * allocated chunks. */ - +Size +GetMemoryChunkSpace(void *pointer) +{ + return MCXT_METHOD(pointer, get_chunk_space) (pointer); +} /* * MemoryContextGetParent @@ -505,10 +716,10 @@ MemoryContextStatsDetail(MemoryContext context, int max_children, * to the connected client. * * We don't buffer the information about all memory contexts in a - * backend into StringInfo and log it as one message. Otherwise which - * may require the buffer to be enlarged very much and lead to OOM - * error since there can be a large number of memory contexts in a - * backend. Instead, we log one message per memory context. + * backend into StringInfo and log it as one message. That would + * require the buffer to be enlarged, risking an OOM as there could be + * a large number of memory contexts in a backend. Instead, we log + * one message per memory context. */ ereport(LOG_SERVER_ONLY, (errhidestmt(true), @@ -536,7 +747,7 @@ MemoryContextStatsInternal(MemoryContext context, int level, MemoryContext child; int ichild; - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); /* Examine the context itself */ context->methods->stats(context, @@ -699,19 +910,6 @@ MemoryContextStatsPrint(MemoryContext context, void *passthru, #endif -/* - * MemoryContextContains - * Detect whether an allocated chunk of memory belongs to a given - * context or not. - * - * Caution: this test is reliable as long as 'pointer' does point to - * a chunk of memory allocated from *some* context. If 'pointer' points - * at memory obtained in some other way, there is a small chance of a - * false-positive result, since the bits right before it might look like - * a valid chunk header by chance. - */ - - /* * MemoryContextCreate * Context-type-independent part of context creation. @@ -737,7 +935,7 @@ MemoryContextStatsPrint(MemoryContext context, void *passthru, * * node: the as-yet-uninitialized common part of the context header node. * tag: NodeTag code identifying the memory context type. - * methods: context-type-specific methods (usually statically allocated). + * method_id: MemoryContextMethodID of the context-type being created. * parent: parent context, or NULL if this will be a top-level context. * name: name of context (must be statically allocated). * @@ -747,7 +945,7 @@ MemoryContextStatsPrint(MemoryContext context, void *passthru, void MemoryContextCreate(MemoryContext node, NodeTag tag, - const MemoryContextMethods *methods, + MemoryContextMethodID method_id, MemoryContext parent, const char *name) { @@ -757,7 +955,7 @@ MemoryContextCreate(MemoryContext node, /* Initialize all standard fields of memory context header */ node->type = tag; node->isReset = true; - node->methods = methods; + node->methods = &mcxt_methods[method_id]; node->parent = parent; node->firstchild = NULL; node->mem_allocated = 0; @@ -797,7 +995,7 @@ MemoryContextAlloc(MemoryContext context, Size size) { void *ret; - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); AssertNotInCriticalSection(context); if (!AllocSizeIsValid(size)) @@ -840,7 +1038,7 @@ MemoryContextAllocZero(MemoryContext context, Size size) { void *ret; - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); AssertNotInCriticalSection(context); if (!AllocSizeIsValid(size)) @@ -878,7 +1076,7 @@ MemoryContextAllocZeroAligned(MemoryContext context, Size size) { void *ret; - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); AssertNotInCriticalSection(context); if (!AllocSizeIsValid(size)) @@ -913,11 +1111,11 @@ MemoryContextAllocExtended(MemoryContext context, Size size, int flags) { void *ret; - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); AssertNotInCriticalSection(context); - if (((flags & MCXT_ALLOC_HUGE) != 0 && !AllocHugeSizeIsValid(size)) || - ((flags & MCXT_ALLOC_HUGE) == 0 && !AllocSizeIsValid(size))) + if (!((flags & MCXT_ALLOC_HUGE) != 0 ? AllocHugeSizeIsValid(size) : + AllocSizeIsValid(size))) elog(ERROR, "invalid memory alloc request size %zu", size); context->isReset = false; @@ -973,7 +1171,7 @@ palloc(Size size) void *ret; MemoryContext context = CurrentMemoryContext; - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); AssertNotInCriticalSection(context); if (!AllocSizeIsValid(size)) @@ -1004,7 +1202,7 @@ palloc0(Size size) void *ret; MemoryContext context = CurrentMemoryContext; - AssertArg(MemoryContextIsValid(context)); + Assert(MemoryContextIsValid(context)); AssertNotInCriticalSection(context); if (!AllocSizeIsValid(size)) @@ -1032,6 +1230,125 @@ palloc0(Size size) +/* + * MemoryContextAllocAligned + * Allocate 'size' bytes of memory in 'context' aligned to 'alignto' + * bytes. + * + * Currently, we align addresses by requesting additional bytes from the + * MemoryContext's standard allocator function and then aligning the returned + * address by the required alignment. This means that the given MemoryContext + * must support providing us with a chunk of memory that's larger than 'size'. + * For allocators such as Slab, that's not going to work, as slab only allows + * chunks of the size that's specified when the context is created. + * + * 'alignto' must be a power of 2. + * 'flags' may be 0 or set the same as MemoryContextAllocExtended(). + */ +void * +MemoryContextAllocAligned(MemoryContext context, + Size size, Size alignto, int flags) +{ + MemoryChunk *alignedchunk; + Size alloc_size; + void *unaligned; + void *aligned; + + /* wouldn't make much sense to waste that much space */ + Assert(alignto < (128 * 1024 * 1024)); + + /* ensure alignto is a power of 2 */ + Assert((alignto & (alignto - 1)) == 0); + + /* + * If the alignment requirements are less than what we already guarantee + * then just use the standard allocation function. + */ + if (unlikely(alignto <= MAXIMUM_ALIGNOF)) + return MemoryContextAllocExtended(context, size, flags); + + /* + * We implement aligned pointers by simply allocating enough memory for + * the requested size plus the alignment and an additional "redirection" + * MemoryChunk. This additional MemoryChunk is required for operations + * such as pfree when used on the pointer returned by this function. We + * use this redirection MemoryChunk in order to find the pointer to the + * memory that was returned by the MemoryContextAllocExtended call below. + * We do that by "borrowing" the block offset field and instead of using + * that to find the offset into the owning block, we use it to find the + * original allocated address. + * + * Here we must allocate enough extra memory so that we can still align + * the pointer returned by MemoryContextAllocExtended and also have enough + * space for the redirection MemoryChunk. Since allocations will already + * be at least aligned by MAXIMUM_ALIGNOF, we can subtract that amount + * from the allocation size to save a little memory. + */ + alloc_size = size + PallocAlignedExtraBytes(alignto); + +#ifdef MEMORY_CONTEXT_CHECKING + /* ensure there's space for a sentinel byte */ + alloc_size += 1; +#endif + + /* perform the actual allocation */ + unaligned = MemoryContextAllocExtended(context, alloc_size, flags); + + /* set the aligned pointer */ + aligned = (void *) TYPEALIGN(alignto, (char *) unaligned + + sizeof(MemoryChunk)); + + alignedchunk = PointerGetMemoryChunk(aligned); + + /* + * We set the redirect MemoryChunk so that the block offset calculation is + * used to point back to the 'unaligned' allocated chunk. This allows us + * to use MemoryChunkGetBlock() to find the unaligned chunk when we need + * to perform operations such as pfree() and repalloc(). + * + * We store 'alignto' in the MemoryChunk's 'value' so that we know what + * the alignment was set to should we ever be asked to realloc this + * pointer. + */ + MemoryChunkSetHdrMask(alignedchunk, unaligned, alignto, + MCTX_ALIGNED_REDIRECT_ID); + + /* double check we produced a correctly aligned pointer */ + Assert((void *) TYPEALIGN(alignto, aligned) == aligned); + +#ifdef MEMORY_CONTEXT_CHECKING + alignedchunk->requested_size = size; + /* set mark to catch clobber of "unused" space */ + set_sentinel(aligned, size); +#endif + + /* Mark the bytes before the redirection header as noaccess */ + VALGRIND_MAKE_MEM_NOACCESS(unaligned, + (char *) alignedchunk - (char *) unaligned); + + /* Disallow access to the redirection chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(alignedchunk, sizeof(MemoryChunk)); + + return aligned; +} + +/* + * palloc_aligned + * Allocate 'size' bytes returning a pointer that's aligned to the + * 'alignto' boundary. + * + * Currently, we align addresses by requesting additional bytes from the + * MemoryContext's standard allocator function and then aligning the returned + * address by the required alignment. This means that the given MemoryContext + * must support providing us with a chunk of memory that's larger than 'size'. + * For allocators such as Slab, that's not going to work, as slab only allows + * chunks of the size that's specified when the context is created. + * + * 'alignto' must be a power of 2. + * 'flags' may be 0 or set the same as MemoryContextAllocExtended(). + */ + + /* * pfree * Release an allocated chunk. @@ -1039,10 +1356,17 @@ palloc0(Size size) void pfree(void *pointer) { +#ifdef USE_VALGRIND + MemoryContextMethodID method = GetMemoryChunkMethodID(pointer); MemoryContext context = GetMemoryChunkContext(pointer); +#endif + + MCXT_METHOD(pointer, free_p) (pointer); - context->methods->free_p(context, pointer); - VALGRIND_MEMPOOL_FREE(context, pointer); +#ifdef USE_VALGRIND + if (method != MCTX_ALIGNED_REDIRECT_ID) + VALGRIND_MEMPOOL_FREE(context, pointer); +#endif } /* @@ -1052,7 +1376,12 @@ pfree(void *pointer) void * repalloc(void *pointer, Size size) { +#ifdef USE_VALGRIND + MemoryContextMethodID method = GetMemoryChunkMethodID(pointer); +#endif +#if defined(USE_ASSERT_CHECKING) || defined(USE_VALGRIND) MemoryContext context = GetMemoryChunkContext(pointer); +#endif void *ret; if (!AllocSizeIsValid(size)) @@ -1063,22 +1392,42 @@ repalloc(void *pointer, Size size) /* isReset must be false already */ Assert(!context->isReset); - ret = context->methods->realloc(context, pointer, size); + ret = MCXT_METHOD(pointer, realloc) (pointer, size); if (unlikely(ret == NULL)) { + MemoryContext cxt = GetMemoryChunkContext(pointer); + MemoryContextStats(TopMemoryContext); ereport(ERROR, (errcode(ERRCODE_OUT_OF_MEMORY), errmsg("out of memory"), errdetail("Failed on request of size %zu in memory context \"%s\".", - size, context->name))); + size, cxt->name))); } - VALGRIND_MEMPOOL_CHANGE(context, pointer, ret, size); +#ifdef USE_VALGRIND + if (method != MCTX_ALIGNED_REDIRECT_ID) + VALGRIND_MEMPOOL_CHANGE(context, pointer, ret, size); +#endif return ret; } +/* + * repalloc_extended + * Adjust the size of a previously allocated chunk, + * with HUGE and NO_OOM options. + */ +#if defined(USE_ASSERT_CHECKING) || defined(USE_VALGRIND) +#endif + +/* + * repalloc0 + * Adjust the size of a previously allocated chunk and zero out the added + * space. + */ + + /* * MemoryContextAllocHuge * Allocate (possibly-expansive) space within the specified context. diff --git a/parser/src_backend_utils_mmgr_slab.c b/parser/src_backend_utils_mmgr_slab.c new file mode 100644 index 00000000..e961f78d --- /dev/null +++ b/parser/src_backend_utils_mmgr_slab.c @@ -0,0 +1,1021 @@ +/*-------------------------------------------------------------------- + * Symbols referenced in this file: + * - SlabAlloc + * - SlabBlocklistIndex + * - SlabGetNextFreeChunk + * - SlabFindNextBlockListIndex + * - SlabFree + * - SlabRealloc + * - SlabReset + * - SlabDelete + * - SlabGetChunkContext + * - SlabGetChunkSpace + * - SlabIsEmpty + * - SlabStats + * - SlabCheck + *-------------------------------------------------------------------- + */ + +/*------------------------------------------------------------------------- + * + * slab.c + * SLAB allocator definitions. + * + * SLAB is a MemoryContext implementation designed for cases where large + * numbers of equally-sized objects can be allocated and freed efficiently + * with minimal memory wastage and fragmentation. + * + * + * Portions Copyright (c) 2017-2023, PostgreSQL Global Development Group + * + * IDENTIFICATION + * src/backend/utils/mmgr/slab.c + * + * + * NOTE: + * The constant allocation size allows significant simplification and various + * optimizations over more general purpose allocators. The blocks are carved + * into chunks of exactly the right size, wasting only the space required to + * MAXALIGN the allocated chunks. + * + * Slab can also help reduce memory fragmentation in cases where longer-lived + * chunks remain stored on blocks while most of the other chunks have already + * been pfree'd. We give priority to putting new allocations into the + * "fullest" block. This help avoid having too many sparsely used blocks + * around and allows blocks to more easily become completely unused which + * allows them to be eventually free'd. + * + * We identify the "fullest" block to put new allocations on by using a block + * from the lowest populated element of the context's "blocklist" array. + * This is an array of dlists containing blocks which we partition by the + * number of free chunks which block has. Blocks with fewer free chunks are + * stored in a lower indexed dlist array slot. Full blocks go on the 0th + * element of the blocklist array. So that we don't have to have too many + * elements in the array, each dlist in the array is responsible for a range + * of free chunks. When a chunk is palloc'd or pfree'd we may need to move + * the block onto another dlist if the number of free chunks crosses the + * range boundary that the current list is responsible for. Having just a + * few blocklist elements reduces the number of times we must move the block + * onto another dlist element. + * + * We keep track of free chunks within each block by using a block-level free + * list. We consult this list when we allocate a new chunk in the block. + * The free list is a linked list, the head of which is pointed to with + * SlabBlock's freehead field. Each subsequent list item is stored in the + * free chunk's memory. We ensure chunks are large enough to store this + * address. + * + * When we allocate a new block, technically all chunks are free, however, to + * avoid having to write out the entire block to set the linked list for the + * free chunks for every chunk in the block, we instead store a pointer to + * the next "unused" chunk on the block and keep track of how many of these + * unused chunks there are. When a new block is malloc'd, all chunks are + * unused. The unused pointer starts with the first chunk on the block and + * as chunks are allocated, the unused pointer is incremented. As chunks are + * pfree'd, the unused pointer never goes backwards. The unused pointer can + * be thought of as a high watermark for the maximum number of chunks in the + * block which have been in use concurrently. When a chunk is pfree'd the + * chunk is put onto the head of the free list and the unused pointer is not + * changed. We only consume more unused chunks if we run out of free chunks + * on the free list. This method effectively gives priority to using + * previously used chunks over previously unused chunks, which should perform + * better due to CPU caching effects. + * + *------------------------------------------------------------------------- + */ + +#include "postgres.h" + +#include "lib/ilist.h" +#include "utils/memdebug.h" +#include "utils/memutils.h" +#include "utils/memutils_memorychunk.h" +#include "utils/memutils_internal.h" + +#define Slab_BLOCKHDRSZ MAXALIGN(sizeof(SlabBlock)) + +#ifdef MEMORY_CONTEXT_CHECKING +/* + * Size of the memory required to store the SlabContext. + * MEMORY_CONTEXT_CHECKING builds need some extra memory for the isChunkFree + * array. + */ +#define Slab_CONTEXT_HDRSZ(chunksPerBlock) \ + (sizeof(SlabContext) + ((chunksPerBlock) * sizeof(bool))) +#else +#define Slab_CONTEXT_HDRSZ(chunksPerBlock) sizeof(SlabContext) +#endif + +/* + * The number of partitions to divide the blocklist into based their number of + * free chunks. There must be at least 2. + */ +#define SLAB_BLOCKLIST_COUNT 3 + +/* The maximum number of completely empty blocks to keep around for reuse. */ +#define SLAB_MAXIMUM_EMPTY_BLOCKS 10 + +/* + * SlabContext is a specialized implementation of MemoryContext. + */ +typedef struct SlabContext +{ + MemoryContextData header; /* Standard memory-context fields */ + /* Allocation parameters for this context: */ + Size chunkSize; /* the requested (non-aligned) chunk size */ + Size fullChunkSize; /* chunk size with chunk header and alignment */ + Size blockSize; /* the size to make each block of chunks */ + int32 chunksPerBlock; /* number of chunks that fit in 1 block */ + int32 curBlocklistIndex; /* index into the blocklist[] element + * containing the fullest, blocks */ +#ifdef MEMORY_CONTEXT_CHECKING + bool *isChunkFree; /* array to mark free chunks in a block during + * SlabCheck */ +#endif + + int32 blocklist_shift; /* number of bits to shift the nfree count + * by to get the index into blocklist[] */ + dclist_head emptyblocks; /* empty blocks to use up first instead of + * mallocing new blocks */ + + /* + * Blocks with free space, grouped by the number of free chunks they + * contain. Completely full blocks are stored in the 0th element. + * Completely empty blocks are stored in emptyblocks or free'd if we have + * enough empty blocks already. + */ + dlist_head blocklist[SLAB_BLOCKLIST_COUNT]; +} SlabContext; + +/* + * SlabBlock + * Structure of a single slab block. + * + * slab: pointer back to the owning MemoryContext + * nfree: number of chunks on the block which are unallocated + * nunused: number of chunks on the block unallocated and not on the block's + * freelist. + * freehead: linked-list header storing a pointer to the first free chunk on + * the block. Subsequent pointers are stored in the chunk's memory. NULL + * indicates the end of the list. + * unused: pointer to the next chunk which has yet to be used. + * node: doubly-linked list node for the context's blocklist + */ +typedef struct SlabBlock +{ + SlabContext *slab; /* owning context */ + int32 nfree; /* number of chunks on free + unused chunks */ + int32 nunused; /* number of unused chunks */ + MemoryChunk *freehead; /* pointer to the first free chunk */ + MemoryChunk *unused; /* pointer to the next unused chunk */ + dlist_node node; /* doubly-linked list for blocklist[] */ +} SlabBlock; + + +#define Slab_CHUNKHDRSZ sizeof(MemoryChunk) +#define SlabChunkGetPointer(chk) \ + ((void *) (((char *) (chk)) + sizeof(MemoryChunk))) + +/* + * SlabBlockGetChunk + * Obtain a pointer to the nth (0-based) chunk in the block + */ +#define SlabBlockGetChunk(slab, block, n) \ + ((MemoryChunk *) ((char *) (block) + Slab_BLOCKHDRSZ \ + + ((n) * (slab)->fullChunkSize))) + +#if defined(MEMORY_CONTEXT_CHECKING) || defined(USE_ASSERT_CHECKING) + +/* + * SlabChunkIndex + * Get the 0-based index of how many chunks into the block the given + * chunk is. +*/ +#define SlabChunkIndex(slab, block, chunk) \ + (((char *) (chunk) - (char *) SlabBlockGetChunk(slab, block, 0)) / \ + (slab)->fullChunkSize) + +/* + * SlabChunkMod + * A MemoryChunk should always be at an address which is a multiple of + * fullChunkSize starting from the 0th chunk position. This will return + * non-zero if it's not. + */ +#define SlabChunkMod(slab, block, chunk) \ + (((char *) (chunk) - (char *) SlabBlockGetChunk(slab, block, 0)) % \ + (slab)->fullChunkSize) + +#endif + +/* + * SlabIsValid + * True iff set is a valid slab allocation set. + */ +#define SlabIsValid(set) (PointerIsValid(set) && IsA(set, SlabContext)) + +/* + * SlabBlockIsValid + * True iff block is a valid block of slab allocation set. + */ +#define SlabBlockIsValid(block) \ + (PointerIsValid(block) && SlabIsValid((block)->slab)) + +/* + * SlabBlocklistIndex + * Determine the blocklist index that a block should be in for the given + * number of free chunks. + */ +static inline int32 +SlabBlocklistIndex(SlabContext *slab, int nfree) +{ + int32 index; + int32 blocklist_shift = slab->blocklist_shift; + + Assert(nfree >= 0 && nfree <= slab->chunksPerBlock); + + /* + * Determine the blocklist index based on the number of free chunks. We + * must ensure that 0 free chunks is dedicated to index 0. Everything + * else must be >= 1 and < SLAB_BLOCKLIST_COUNT. + * + * To make this as efficient as possible, we exploit some two's complement + * arithmetic where we reverse the sign before bit shifting. This results + * in an nfree of 0 using index 0 and anything non-zero staying non-zero. + * This is exploiting 0 and -0 being the same in two's complement. When + * we're done, we just need to flip the sign back over again for a + * positive index. + */ + index = -((-nfree) >> blocklist_shift); + + if (nfree == 0) + Assert(index == 0); + else + Assert(index >= 1 && index < SLAB_BLOCKLIST_COUNT); + + return index; +} + +/* + * SlabFindNextBlockListIndex + * Search blocklist for blocks which have free chunks and return the + * index of the blocklist found containing at least 1 block with free + * chunks. If no block can be found we return 0. + * + * Note: We give priority to fuller blocks so that these are filled before + * emptier blocks. This is done to increase the chances that mostly-empty + * blocks will eventually become completely empty so they can be free'd. + */ +static int32 +SlabFindNextBlockListIndex(SlabContext *slab) +{ + /* start at 1 as blocklist[0] is for full blocks. */ + for (int i = 1; i < SLAB_BLOCKLIST_COUNT; i++) + { + /* return the first found non-empty index */ + if (!dlist_is_empty(&slab->blocklist[i])) + return i; + } + + /* no blocks with free space */ + return 0; +} + +/* + * SlabGetNextFreeChunk + * Return the next free chunk in block and update the block to account + * for the returned chunk now being used. + */ +static inline MemoryChunk * +SlabGetNextFreeChunk(SlabContext *slab, SlabBlock *block) +{ + MemoryChunk *chunk; + + Assert(block->nfree > 0); + + if (block->freehead != NULL) + { + chunk = block->freehead; + + /* + * Pop the chunk from the linked list of free chunks. The pointer to + * the next free chunk is stored in the chunk itself. + */ + VALGRIND_MAKE_MEM_DEFINED(SlabChunkGetPointer(chunk), sizeof(MemoryChunk *)); + block->freehead = *(MemoryChunk **) SlabChunkGetPointer(chunk); + + /* check nothing stomped on the free chunk's memory */ + Assert(block->freehead == NULL || + (block->freehead >= SlabBlockGetChunk(slab, block, 0) && + block->freehead <= SlabBlockGetChunk(slab, block, slab->chunksPerBlock - 1) && + SlabChunkMod(slab, block, block->freehead) == 0)); + } + else + { + Assert(block->nunused > 0); + + chunk = block->unused; + block->unused = (MemoryChunk *) (((char *) block->unused) + slab->fullChunkSize); + block->nunused--; + } + + block->nfree--; + + return chunk; +} + +/* + * SlabContextCreate + * Create a new Slab context. + * + * parent: parent context, or NULL if top-level context + * name: name of context (must be statically allocated) + * blockSize: allocation block size + * chunkSize: allocation chunk size + * + * The MAXALIGN(chunkSize) may not exceed MEMORYCHUNK_MAX_VALUE + */ +#ifdef MEMORY_CONTEXT_CHECKING +#else +#endif +#ifdef MEMORY_CONTEXT_CHECKING +#endif + +/* + * SlabReset + * Frees all memory which is allocated in the given set. + * + * The code simply frees all the blocks in the context - we don't keep any + * keeper blocks or anything like that. + */ +void +SlabReset(MemoryContext context) +{ + SlabContext *slab = (SlabContext *) context; + dlist_mutable_iter miter; + int i; + + Assert(SlabIsValid(slab)); + +#ifdef MEMORY_CONTEXT_CHECKING + /* Check for corruption and leaks before freeing */ + SlabCheck(context); +#endif + + /* release any retained empty blocks */ + dclist_foreach_modify(miter, &slab->emptyblocks) + { + SlabBlock *block = dlist_container(SlabBlock, node, miter.cur); + + dclist_delete_from(&slab->emptyblocks, miter.cur); + +#ifdef CLOBBER_FREED_MEMORY + wipe_mem(block, slab->blockSize); +#endif + free(block); + context->mem_allocated -= slab->blockSize; + } + + /* walk over blocklist and free the blocks */ + for (i = 0; i < SLAB_BLOCKLIST_COUNT; i++) + { + dlist_foreach_modify(miter, &slab->blocklist[i]) + { + SlabBlock *block = dlist_container(SlabBlock, node, miter.cur); + + dlist_delete(miter.cur); + +#ifdef CLOBBER_FREED_MEMORY + wipe_mem(block, slab->blockSize); +#endif + free(block); + context->mem_allocated -= slab->blockSize; + } + } + + slab->curBlocklistIndex = 0; + + Assert(context->mem_allocated == 0); +} + +/* + * SlabDelete + * Free all memory which is allocated in the given context. + */ +void +SlabDelete(MemoryContext context) +{ + /* Reset to release all the SlabBlocks */ + SlabReset(context); + /* And free the context header */ + free(context); +} + +/* + * SlabAlloc + * Returns a pointer to allocated memory of given size or NULL if + * request could not be completed; memory is added to the slab. + */ +void * +SlabAlloc(MemoryContext context, Size size) +{ + SlabContext *slab = (SlabContext *) context; + SlabBlock *block; + MemoryChunk *chunk; + + Assert(SlabIsValid(slab)); + + /* sanity check that this is pointing to a valid blocklist */ + Assert(slab->curBlocklistIndex >= 0); + Assert(slab->curBlocklistIndex <= SlabBlocklistIndex(slab, slab->chunksPerBlock)); + + /* make sure we only allow correct request size */ + if (unlikely(size != slab->chunkSize)) + elog(ERROR, "unexpected alloc chunk size %zu (expected %zu)", + size, slab->chunkSize); + + /* + * Handle the case when there are no partially filled blocks available. + * SlabFree() will have updated the curBlocklistIndex setting it to zero + * to indicate that it has freed the final block. Also later in + * SlabAlloc() we will set the curBlocklistIndex to zero if we end up + * filling the final block. + */ + if (unlikely(slab->curBlocklistIndex == 0)) + { + dlist_head *blocklist; + int blocklist_idx; + + /* to save allocating a new one, first check the empty blocks list */ + if (dclist_count(&slab->emptyblocks) > 0) + { + dlist_node *node = dclist_pop_head_node(&slab->emptyblocks); + + block = dlist_container(SlabBlock, node, node); + + /* + * SlabFree() should have left this block in a valid state with + * all chunks free. Ensure that's the case. + */ + Assert(block->nfree == slab->chunksPerBlock); + + /* fetch the next chunk from this block */ + chunk = SlabGetNextFreeChunk(slab, block); + } + else + { + block = (SlabBlock *) malloc(slab->blockSize); + + if (unlikely(block == NULL)) + return NULL; + + block->slab = slab; + context->mem_allocated += slab->blockSize; + + /* use the first chunk in the new block */ + chunk = SlabBlockGetChunk(slab, block, 0); + + block->nfree = slab->chunksPerBlock - 1; + block->unused = SlabBlockGetChunk(slab, block, 1); + block->freehead = NULL; + block->nunused = slab->chunksPerBlock - 1; + } + + /* find the blocklist element for storing blocks with 1 used chunk */ + blocklist_idx = SlabBlocklistIndex(slab, block->nfree); + blocklist = &slab->blocklist[blocklist_idx]; + + /* this better be empty. We just added a block thinking it was */ + Assert(dlist_is_empty(blocklist)); + + dlist_push_head(blocklist, &block->node); + + slab->curBlocklistIndex = blocklist_idx; + } + else + { + dlist_head *blocklist = &slab->blocklist[slab->curBlocklistIndex]; + int new_blocklist_idx; + + Assert(!dlist_is_empty(blocklist)); + + /* grab the block from the blocklist */ + block = dlist_head_element(SlabBlock, node, blocklist); + + /* make sure we actually got a valid block, with matching nfree */ + Assert(block != NULL); + Assert(slab->curBlocklistIndex == SlabBlocklistIndex(slab, block->nfree)); + Assert(block->nfree > 0); + + /* fetch the next chunk from this block */ + chunk = SlabGetNextFreeChunk(slab, block); + + /* get the new blocklist index based on the new free chunk count */ + new_blocklist_idx = SlabBlocklistIndex(slab, block->nfree); + + /* + * Handle the case where the blocklist index changes. This also deals + * with blocks becoming full as only full blocks go at index 0. + */ + if (unlikely(slab->curBlocklistIndex != new_blocklist_idx)) + { + dlist_delete_from(blocklist, &block->node); + dlist_push_head(&slab->blocklist[new_blocklist_idx], &block->node); + + if (dlist_is_empty(blocklist)) + slab->curBlocklistIndex = SlabFindNextBlockListIndex(slab); + } + } + + /* + * Check that the chunk pointer is actually somewhere on the block and is + * aligned as expected. + */ + Assert(chunk >= SlabBlockGetChunk(slab, block, 0)); + Assert(chunk <= SlabBlockGetChunk(slab, block, slab->chunksPerBlock - 1)); + Assert(SlabChunkMod(slab, block, chunk) == 0); + + /* Prepare to initialize the chunk header. */ + VALGRIND_MAKE_MEM_UNDEFINED(chunk, Slab_CHUNKHDRSZ); + + MemoryChunkSetHdrMask(chunk, block, MAXALIGN(slab->chunkSize), + MCTX_SLAB_ID); +#ifdef MEMORY_CONTEXT_CHECKING + /* slab mark to catch clobber of "unused" space */ + Assert(slab->chunkSize < (slab->fullChunkSize - Slab_CHUNKHDRSZ)); + set_sentinel(MemoryChunkGetPointer(chunk), size); + VALGRIND_MAKE_MEM_NOACCESS(((char *) chunk) + + Slab_CHUNKHDRSZ + slab->chunkSize, + slab->fullChunkSize - + (slab->chunkSize + Slab_CHUNKHDRSZ)); +#endif + +#ifdef RANDOMIZE_ALLOCATED_MEMORY + /* fill the allocated space with junk */ + randomize_mem((char *) MemoryChunkGetPointer(chunk), size); +#endif + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Slab_CHUNKHDRSZ); + + return MemoryChunkGetPointer(chunk); +} + +/* + * SlabFree + * Frees allocated memory; memory is removed from the slab. + */ +void +SlabFree(void *pointer) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + SlabBlock *block; + SlabContext *slab; + int curBlocklistIdx; + int newBlocklistIdx; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Slab_CHUNKHDRSZ); + + block = MemoryChunkGetBlock(chunk); + + /* + * For speed reasons we just Assert that the referenced block is good. + * Future field experience may show that this Assert had better become a + * regular runtime test-and-elog check. + */ + Assert(SlabBlockIsValid(block)); + slab = block->slab; + +#ifdef MEMORY_CONTEXT_CHECKING + /* Test for someone scribbling on unused space in chunk */ + Assert(slab->chunkSize < (slab->fullChunkSize - Slab_CHUNKHDRSZ)); + if (!sentinel_ok(pointer, slab->chunkSize)) + elog(WARNING, "detected write past chunk end in %s %p", + slab->header.name, chunk); +#endif + + /* push this chunk onto the head of the block's free list */ + *(MemoryChunk **) pointer = block->freehead; + block->freehead = chunk; + + block->nfree++; + + Assert(block->nfree > 0); + Assert(block->nfree <= slab->chunksPerBlock); + +#ifdef CLOBBER_FREED_MEMORY + /* don't wipe the free list MemoryChunk pointer stored in the chunk */ + wipe_mem((char *) pointer + sizeof(MemoryChunk *), + slab->chunkSize - sizeof(MemoryChunk *)); +#endif + + curBlocklistIdx = SlabBlocklistIndex(slab, block->nfree - 1); + newBlocklistIdx = SlabBlocklistIndex(slab, block->nfree); + + /* + * Check if the block needs to be moved to another element on the + * blocklist based on it now having 1 more free chunk. + */ + if (unlikely(curBlocklistIdx != newBlocklistIdx)) + { + /* do the move */ + dlist_delete_from(&slab->blocklist[curBlocklistIdx], &block->node); + dlist_push_head(&slab->blocklist[newBlocklistIdx], &block->node); + + /* + * The blocklist[curBlocklistIdx] may now be empty or we may now be + * able to use a lower-element blocklist. We'll need to redetermine + * what the slab->curBlocklistIndex is if the current blocklist was + * changed or if a lower element one was changed. We must ensure we + * use the list with the fullest block(s). + */ + if (slab->curBlocklistIndex >= curBlocklistIdx) + { + slab->curBlocklistIndex = SlabFindNextBlockListIndex(slab); + + /* + * We know there must be a block with at least 1 unused chunk as + * we just pfree'd one. Ensure curBlocklistIndex reflects this. + */ + Assert(slab->curBlocklistIndex > 0); + } + } + + /* Handle when a block becomes completely empty */ + if (unlikely(block->nfree == slab->chunksPerBlock)) + { + /* remove the block */ + dlist_delete_from(&slab->blocklist[newBlocklistIdx], &block->node); + + /* + * To avoid thrashing malloc/free, we keep a list of empty blocks that + * we can reuse again instead of having to malloc a new one. + */ + if (dclist_count(&slab->emptyblocks) < SLAB_MAXIMUM_EMPTY_BLOCKS) + dclist_push_head(&slab->emptyblocks, &block->node); + else + { + /* + * When we have enough empty blocks stored already, we actually + * free the block. + */ +#ifdef CLOBBER_FREED_MEMORY + wipe_mem(block, slab->blockSize); +#endif + free(block); + slab->header.mem_allocated -= slab->blockSize; + } + + /* + * Check if we need to reset the blocklist index. This is required + * when the blocklist this block is on has become completely empty. + */ + if (slab->curBlocklistIndex == newBlocklistIdx && + dlist_is_empty(&slab->blocklist[newBlocklistIdx])) + slab->curBlocklistIndex = SlabFindNextBlockListIndex(slab); + } +} + +/* + * SlabRealloc + * Change the allocated size of a chunk. + * + * As Slab is designed for allocating equally-sized chunks of memory, it can't + * do an actual chunk size change. We try to be gentle and allow calls with + * exactly the same size, as in that case we can simply return the same + * chunk. When the size differs, we throw an error. + * + * We could also allow requests with size < chunkSize. That however seems + * rather pointless - Slab is meant for chunks of constant size, and moreover + * realloc is usually used to enlarge the chunk. + */ +void * +SlabRealloc(void *pointer, Size size) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + SlabBlock *block; + SlabContext *slab; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Slab_CHUNKHDRSZ); + + block = MemoryChunkGetBlock(chunk); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Slab_CHUNKHDRSZ); + + /* + * Try to verify that we have a sane block pointer: the block header + * should reference a slab context. (We use a test-and-elog, not just + * Assert, because it seems highly likely that we're here in error in the + * first place.) + */ + if (!SlabBlockIsValid(block)) + elog(ERROR, "could not find block containing chunk %p", chunk); + slab = block->slab; + + /* can't do actual realloc with slab, but let's try to be gentle */ + if (size == slab->chunkSize) + return pointer; + + elog(ERROR, "slab allocator does not support realloc()"); + return NULL; /* keep compiler quiet */ +} + +/* + * SlabGetChunkContext + * Return the MemoryContext that 'pointer' belongs to. + */ +MemoryContext +SlabGetChunkContext(void *pointer) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + SlabBlock *block; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Slab_CHUNKHDRSZ); + + block = MemoryChunkGetBlock(chunk); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Slab_CHUNKHDRSZ); + + Assert(SlabBlockIsValid(block)); + + return &block->slab->header; +} + +/* + * SlabGetChunkSpace + * Given a currently-allocated chunk, determine the total space + * it occupies (including all memory-allocation overhead). + */ +Size +SlabGetChunkSpace(void *pointer) +{ + MemoryChunk *chunk = PointerGetMemoryChunk(pointer); + SlabBlock *block; + SlabContext *slab; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Slab_CHUNKHDRSZ); + + block = MemoryChunkGetBlock(chunk); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Slab_CHUNKHDRSZ); + + Assert(SlabBlockIsValid(block)); + slab = block->slab; + + return slab->fullChunkSize; +} + +/* + * SlabIsEmpty + * Is the slab empty of any allocated space? + */ +bool +SlabIsEmpty(MemoryContext context) +{ + Assert(SlabIsValid((SlabContext *) context)); + + return (context->mem_allocated == 0); +} + +/* + * SlabStats + * Compute stats about memory consumption of a Slab context. + * + * printfunc: if not NULL, pass a human-readable stats string to this. + * passthru: pass this pointer through to printfunc. + * totals: if not NULL, add stats about this context into *totals. + * print_to_stderr: print stats to stderr if true, elog otherwise. + */ +void +SlabStats(MemoryContext context, + MemoryStatsPrintFunc printfunc, void *passthru, + MemoryContextCounters *totals, + bool print_to_stderr) +{ + SlabContext *slab = (SlabContext *) context; + Size nblocks = 0; + Size freechunks = 0; + Size totalspace; + Size freespace = 0; + int i; + + Assert(SlabIsValid(slab)); + + /* Include context header in totalspace */ + totalspace = Slab_CONTEXT_HDRSZ(slab->chunksPerBlock); + + /* Add the space consumed by blocks in the emptyblocks list */ + totalspace += dclist_count(&slab->emptyblocks) * slab->blockSize; + + for (i = 0; i < SLAB_BLOCKLIST_COUNT; i++) + { + dlist_iter iter; + + dlist_foreach(iter, &slab->blocklist[i]) + { + SlabBlock *block = dlist_container(SlabBlock, node, iter.cur); + + nblocks++; + totalspace += slab->blockSize; + freespace += slab->fullChunkSize * block->nfree; + freechunks += block->nfree; + } + } + + if (printfunc) + { + char stats_string[200]; + + /* XXX should we include free chunks on empty blocks? */ + snprintf(stats_string, sizeof(stats_string), + "%zu total in %zu blocks; %u empty blocks; %zu free (%zu chunks); %zu used", + totalspace, nblocks, dclist_count(&slab->emptyblocks), + freespace, freechunks, totalspace - freespace); + printfunc(context, passthru, stats_string, print_to_stderr); + } + + if (totals) + { + totals->nblocks += nblocks; + totals->freechunks += freechunks; + totals->totalspace += totalspace; + totals->freespace += freespace; + } +} + + +#ifdef MEMORY_CONTEXT_CHECKING + +/* + * SlabCheck + * Walk through all blocks looking for inconsistencies. + * + * NOTE: report errors as WARNING, *not* ERROR or FATAL. Otherwise you'll + * find yourself in an infinite loop when trouble occurs, because this + * routine will be entered again when elog cleanup tries to release memory! + */ +void +SlabCheck(MemoryContext context) +{ + SlabContext *slab = (SlabContext *) context; + int i; + int nblocks = 0; + const char *name = slab->header.name; + dlist_iter iter; + + Assert(SlabIsValid(slab)); + Assert(slab->chunksPerBlock > 0); + + /* + * Have a look at the empty blocks. These should have all their chunks + * marked as free. Ensure that's the case. + */ + dclist_foreach(iter, &slab->emptyblocks) + { + SlabBlock *block = dlist_container(SlabBlock, node, iter.cur); + + if (block->nfree != slab->chunksPerBlock) + elog(WARNING, "problem in slab %s: empty block %p should have %d free chunks but has %d chunks free", + name, block, slab->chunksPerBlock, block->nfree); + } + + /* walk the non-empty block lists */ + for (i = 0; i < SLAB_BLOCKLIST_COUNT; i++) + { + int j, + nfree; + + /* walk all blocks on this blocklist */ + dlist_foreach(iter, &slab->blocklist[i]) + { + SlabBlock *block = dlist_container(SlabBlock, node, iter.cur); + MemoryChunk *cur_chunk; + + /* + * Make sure the number of free chunks (in the block header) + * matches the position in the blocklist. + */ + if (SlabBlocklistIndex(slab, block->nfree) != i) + elog(WARNING, "problem in slab %s: block %p is on blocklist %d but should be on blocklist %d", + name, block, i, SlabBlocklistIndex(slab, block->nfree)); + + /* make sure the block is not empty */ + if (block->nfree >= slab->chunksPerBlock) + elog(WARNING, "problem in slab %s: empty block %p incorrectly stored on blocklist element %d", + name, block, i); + + /* make sure the slab pointer correctly points to this context */ + if (block->slab != slab) + elog(WARNING, "problem in slab %s: bogus slab link in block %p", + name, block); + + /* reset the array of free chunks for this block */ + memset(slab->isChunkFree, 0, (slab->chunksPerBlock * sizeof(bool))); + nfree = 0; + + /* walk through the block's free list chunks */ + cur_chunk = block->freehead; + while (cur_chunk != NULL) + { + int chunkidx = SlabChunkIndex(slab, block, cur_chunk); + + /* + * Ensure the free list link points to something on the block + * at an address aligned according to the full chunk size. + */ + if (cur_chunk < SlabBlockGetChunk(slab, block, 0) || + cur_chunk > SlabBlockGetChunk(slab, block, slab->chunksPerBlock - 1) || + SlabChunkMod(slab, block, cur_chunk) != 0) + elog(WARNING, "problem in slab %s: bogus free list link %p in block %p", + name, cur_chunk, block); + + /* count the chunk and mark it free on the free chunk array */ + nfree++; + slab->isChunkFree[chunkidx] = true; + + /* read pointer of the next free chunk */ + VALGRIND_MAKE_MEM_DEFINED(MemoryChunkGetPointer(cur_chunk), sizeof(MemoryChunk *)); + cur_chunk = *(MemoryChunk **) SlabChunkGetPointer(cur_chunk); + } + + /* check that the unused pointer matches what nunused claims */ + if (SlabBlockGetChunk(slab, block, slab->chunksPerBlock - block->nunused) != + block->unused) + elog(WARNING, "problem in slab %s: mismatch detected between nunused chunks and unused pointer in block %p", + name, block); + + /* + * count the remaining free chunks that have yet to make it onto + * the block's free list. + */ + cur_chunk = block->unused; + for (j = 0; j < block->nunused; j++) + { + int chunkidx = SlabChunkIndex(slab, block, cur_chunk); + + + /* count the chunk as free and mark it as so in the array */ + nfree++; + if (chunkidx < slab->chunksPerBlock) + slab->isChunkFree[chunkidx] = true; + + /* move forward 1 chunk */ + cur_chunk = (MemoryChunk *) (((char *) cur_chunk) + slab->fullChunkSize); + } + + for (j = 0; j < slab->chunksPerBlock; j++) + { + if (!slab->isChunkFree[j]) + { + MemoryChunk *chunk = SlabBlockGetChunk(slab, block, j); + SlabBlock *chunkblock; + + /* Allow access to the chunk header. */ + VALGRIND_MAKE_MEM_DEFINED(chunk, Slab_CHUNKHDRSZ); + + chunkblock = (SlabBlock *) MemoryChunkGetBlock(chunk); + + /* Disallow access to the chunk header. */ + VALGRIND_MAKE_MEM_NOACCESS(chunk, Slab_CHUNKHDRSZ); + + /* + * check the chunk's blockoffset correctly points back to + * the block + */ + if (chunkblock != block) + elog(WARNING, "problem in slab %s: bogus block link in block %p, chunk %p", + name, block, chunk); + + /* check the sentinel byte is intact */ + Assert(slab->chunkSize < (slab->fullChunkSize - Slab_CHUNKHDRSZ)); + if (!sentinel_ok(chunk, Slab_CHUNKHDRSZ + slab->chunkSize)) + elog(WARNING, "problem in slab %s: detected write past chunk end in block %p, chunk %p", + name, block, chunk); + } + } + + /* + * Make sure we got the expected number of free chunks (as tracked + * in the block header). + */ + if (nfree != block->nfree) + elog(WARNING, "problem in slab %s: nfree in block %p is %d but %d chunk were found as free", + name, block, block->nfree, nfree); + + nblocks++; + } + } + + /* the stored empty blocks are tracked in mem_allocated too */ + nblocks += dclist_count(&slab->emptyblocks); + + Assert(nblocks * slab->blockSize == context->mem_allocated); +} + +#endif /* MEMORY_CONTEXT_CHECKING */ diff --git a/parser/src_common_encnames.c b/parser/src_common_encnames.c index faf70ff1..1f7bfb2e 100644 --- a/parser/src_common_encnames.c +++ b/parser/src_common_encnames.c @@ -9,7 +9,7 @@ * encnames.c * Encoding names and routines for working with them. * - * Portions Copyright (c) 2001-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 2001-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/common/encnames.c @@ -119,6 +119,9 @@ const pg_enc2name pg_enc2name_tbl[] = */ +StaticAssertDecl(lengthof(pg_enc2icu_tbl) == PG_ENCODING_BE_LAST + 1, + "pg_enc2icu_tbl incomplete"); + /* * Is this encoding supported by ICU? diff --git a/parser/src_common_hashfn.c b/parser/src_common_hashfn.c index 6c84e913..d084cf62 100644 --- a/parser/src_common_hashfn.c +++ b/parser/src_common_hashfn.c @@ -11,7 +11,7 @@ * hashtables * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_common_keywords.c b/parser/src_common_keywords.c index 4d8d827a..2c7eb3f8 100644 --- a/parser/src_common_keywords.c +++ b/parser/src_common_keywords.c @@ -10,7 +10,7 @@ * PostgreSQL's list of SQL keywords * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_common_kwlist_d.h b/parser/src_common_kwlist_d.h index dcb783fb..399c66db 100644 --- a/parser/src_common_kwlist_d.h +++ b/parser/src_common_kwlist_d.h @@ -12,7 +12,7 @@ * kwlist_d.h * List of keywords represented as a ScanKeywordList. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -32,6 +32,7 @@ static const char ScanKeywords_kw_string[] = "abort\0" + "absent\0" "absolute\0" "access\0" "action\0" @@ -181,6 +182,7 @@ static const char ScanKeywords_kw_string[] = "for\0" "force\0" "foreign\0" + "format\0" "forward\0" "freeze\0" "from\0" @@ -211,6 +213,7 @@ static const char ScanKeywords_kw_string[] = "include\0" "including\0" "increment\0" + "indent\0" "index\0" "indexes\0" "inherit\0" @@ -233,7 +236,13 @@ static const char ScanKeywords_kw_string[] = "isnull\0" "isolation\0" "join\0" + "json\0" + "json_array\0" + "json_arrayagg\0" + "json_object\0" + "json_objectagg\0" "key\0" + "keys\0" "label\0" "language\0" "large\0" @@ -373,6 +382,7 @@ static const char ScanKeywords_kw_string[] = "rows\0" "rule\0" "savepoint\0" + "scalar\0" "schema\0" "schemas\0" "scroll\0" @@ -415,6 +425,7 @@ static const char ScanKeywords_kw_string[] = "symmetric\0" "sysid\0" "system\0" + "system_user\0" "table\0" "tables\0" "tablesample\0" @@ -495,588 +506,601 @@ static const char ScanKeywords_kw_string[] = static const uint16 ScanKeywords_kw_offsets[] = { 0, 6, - 15, + 13, 22, 29, - 33, - 39, - 45, - 55, - 59, - 64, - 70, + 36, + 40, + 46, + 52, + 62, + 66, + 71, 77, - 85, - 93, - 97, - 101, - 107, - 110, + 84, + 92, + 100, + 104, + 108, 114, - 125, - 135, - 146, - 157, - 160, + 117, + 121, + 132, + 142, + 153, + 164, 167, 174, - 184, - 198, - 207, + 181, + 191, + 205, 214, - 220, - 228, + 221, + 227, 235, 242, - 246, - 254, - 259, - 267, - 270, - 276, - 281, + 249, + 253, + 261, + 266, + 274, + 277, + 283, 288, - 296, - 305, - 310, - 315, - 323, - 329, - 334, - 344, - 360, - 366, - 377, - 383, - 389, - 397, - 406, - 414, - 424, + 295, + 303, + 312, + 317, + 322, + 330, + 336, + 341, + 351, + 367, + 373, + 384, + 390, + 396, + 404, + 413, + 421, 431, - 439, - 447, - 456, + 438, + 446, + 454, 463, - 473, - 485, - 498, - 512, - 521, - 532, - 543, - 555, - 563, - 572, - 583, - 588, - 593, + 470, + 480, + 492, + 505, + 519, + 528, + 539, + 550, + 562, + 570, + 579, + 590, + 595, 600, - 606, - 610, - 615, - 623, - 639, - 652, - 665, - 680, - 693, - 711, - 724, + 607, + 613, + 617, + 622, + 630, + 646, + 659, + 672, + 687, + 700, + 718, 731, - 737, - 742, - 751, - 755, - 766, - 770, - 778, - 786, - 794, - 803, - 814, - 823, - 831, + 738, + 744, + 749, + 758, + 762, + 773, + 777, + 785, + 793, + 801, + 810, + 821, + 830, 838, - 848, - 859, - 867, - 873, - 878, + 845, + 855, + 866, + 874, + 880, 885, - 896, - 904, - 912, - 921, - 924, - 933, + 892, + 903, + 911, + 919, + 928, + 931, 940, 947, - 952, - 957, - 962, + 954, + 959, + 964, 969, - 978, - 988, - 992, - 997, + 976, + 985, + 995, + 999, 1004, - 1010, + 1011, 1017, - 1025, - 1035, - 1045, - 1053, + 1024, + 1032, + 1042, + 1052, 1060, - 1068, - 1079, - 1089, - 1098, - 1106, - 1112, + 1067, + 1075, + 1086, + 1096, + 1105, + 1113, 1119, - 1125, + 1126, 1132, - 1141, - 1147, - 1153, - 1163, - 1167, - 1173, - 1181, - 1189, - 1196, - 1201, - 1206, + 1139, + 1148, + 1154, + 1160, + 1170, + 1174, + 1180, + 1188, + 1195, + 1203, + 1210, 1215, - 1225, - 1235, - 1242, - 1248, + 1220, + 1229, + 1239, + 1249, 1256, - 1265, - 1271, - 1280, - 1287, - 1295, - 1302, + 1262, + 1270, + 1279, + 1285, + 1294, + 1301, 1309, - 1314, - 1319, + 1316, + 1323, 1328, - 1331, - 1337, - 1347, - 1357, - 1366, - 1373, - 1376, - 1384, - 1394, - 1404, - 1410, + 1333, + 1342, + 1345, + 1351, + 1361, + 1371, + 1380, + 1387, + 1390, + 1398, + 1408, 1418, - 1426, - 1435, - 1445, - 1452, - 1458, - 1464, - 1470, - 1482, - 1489, - 1497, - 1501, - 1509, - 1519, - 1528, - 1533, - 1541, - 1544, - 1551, - 1561, - 1566, - 1570, - 1576, - 1585, - 1591, - 1596, - 1604, - 1612, - 1622, - 1628, - 1633, - 1639, + 1425, + 1431, + 1439, + 1447, + 1456, + 1466, + 1473, + 1479, + 1485, + 1491, + 1503, + 1510, + 1518, + 1522, + 1530, + 1540, + 1549, + 1554, + 1562, + 1565, + 1572, + 1582, + 1587, + 1592, + 1603, + 1617, + 1629, 1644, - 1650, - 1657, - 1662, + 1648, + 1653, + 1659, 1668, - 1678, - 1693, - 1702, - 1707, - 1714, - 1721, - 1729, - 1735, - 1743, - 1756, - 1765, - 1771, - 1778, + 1674, + 1679, + 1687, + 1695, + 1705, + 1711, + 1716, + 1722, + 1727, + 1733, + 1740, + 1745, + 1751, + 1761, + 1776, 1785, - 1794, - 1799, - 1805, - 1810, - 1815, - 1821, - 1830, - 1838, - 1844, + 1790, + 1797, + 1804, + 1812, + 1818, + 1826, + 1839, 1848, - 1853, - 1857, + 1854, 1861, - 1866, - 1871, - 1874, - 1879, - 1889, - 1900, + 1868, + 1877, + 1882, + 1888, + 1893, + 1898, 1904, - 1912, - 1919, + 1913, + 1921, 1927, - 1934, - 1939, - 1946, - 1952, - 1960, - 1967, - 1970, - 1974, - 1981, - 1986, - 1990, - 1993, - 1998, - 2007, - 2014, + 1931, + 1936, + 1940, + 1944, + 1949, + 1954, + 1957, + 1962, + 1972, + 1983, + 1987, + 1995, + 2002, + 2010, + 2017, 2022, - 2025, - 2031, - 2042, - 2049, + 2029, + 2035, + 2043, + 2050, 2053, - 2059, + 2057, 2064, + 2069, 2073, + 2076, 2081, - 2092, - 2098, - 2104, - 2113, - 2123, - 2130, - 2138, - 2148, + 2090, + 2097, + 2105, + 2108, + 2114, + 2125, + 2132, + 2136, + 2142, + 2147, 2156, - 2165, - 2173, - 2179, - 2186, - 2195, - 2205, - 2215, - 2223, - 2232, - 2241, - 2249, - 2255, - 2266, - 2277, - 2287, + 2164, + 2175, + 2181, + 2187, + 2196, + 2206, + 2213, + 2221, + 2231, + 2239, + 2248, + 2256, + 2262, + 2269, + 2278, + 2288, 2298, 2306, - 2318, + 2315, 2324, - 2330, - 2335, - 2340, + 2332, + 2338, 2349, - 2357, - 2367, - 2371, - 2382, - 2394, - 2402, - 2410, - 2419, - 2427, - 2434, - 2445, - 2453, - 2461, - 2467, - 2475, - 2484, - 2491, - 2501, - 2509, - 2516, - 2522, - 2527, + 2360, + 2370, + 2381, + 2389, + 2401, + 2407, + 2413, + 2418, + 2423, + 2432, + 2440, + 2450, + 2454, + 2465, + 2477, + 2485, + 2493, + 2502, + 2510, + 2517, + 2528, 2536, - 2543, - 2551, - 2560, - 2564, - 2569, + 2544, + 2550, + 2558, + 2567, 2574, 2584, - 2591, + 2592, 2599, - 2606, - 2613, - 2620, - 2629, - 2636, - 2645, - 2655, - 2668, - 2675, - 2683, + 2605, + 2610, + 2619, + 2626, + 2634, + 2643, + 2647, + 2652, + 2657, + 2667, + 2674, + 2681, + 2689, 2696, - 2700, - 2706, - 2711, - 2717, - 2722, - 2730, - 2737, - 2742, - 2751, - 2760, + 2703, + 2710, + 2719, + 2726, + 2735, + 2745, + 2758, 2765, - 2769, - 2776, - 2787, - 2793, - 2803, - 2814, + 2773, + 2786, + 2790, + 2796, + 2801, + 2807, + 2812, 2820, 2827, - 2835, - 2842, - 2849, + 2832, + 2841, + 2850, 2855, - 2868, - 2878, - 2886, - 2896, - 2902, - 2909, - 2915, - 2922, - 2934, + 2859, + 2866, + 2877, + 2883, + 2893, + 2904, + 2910, + 2917, + 2925, + 2932, + 2939, 2945, - 2950, - 2959, - 2969, - 2974, - 2979, - 2984, - 2989, + 2958, + 2968, + 2976, + 2986, + 2992, 2999, - 3002, 3011, - 3023, - 3033, - 3039, + 3017, + 3024, + 3036, 3047, 3052, - 3057, - 3066, - 3074, - 3079, - 3085, - 3093, - 3103, - 3115, - 3127, - 3133, - 3140, - 3148, - 3157, - 3166, - 3172, - 3179, - 3184, - 3190, - 3197, - 3203, - 3212, - 3222, - 3228, + 3061, + 3071, + 3076, + 3081, + 3086, + 3091, + 3101, + 3104, + 3113, + 3125, + 3135, + 3141, + 3149, + 3154, + 3159, + 3168, + 3176, + 3181, + 3187, + 3195, + 3205, + 3217, + 3229, 3235, - 3243, - 3252, - 3260, + 3242, + 3250, + 3259, 3268, - 3276, + 3274, 3281, - 3287, - 3296, - 3301, - 3307, - 3318, - 3325, + 3286, + 3292, + 3299, + 3305, + 3314, + 3324, 3330, 3337, 3345, - 3350, - 3358, - 3364, - 3368, - 3382, - 3392, + 3354, + 3362, + 3370, + 3378, + 3383, + 3389, + 3398, 3403, - 3413, - 3423, - 3437, - 3446, + 3409, + 3420, + 3427, + 3432, + 3439, + 3447, 3452, 3460, - 3473, - 3482, - 3487, - 3491, + 3466, + 3470, + 3484, + 3494, + 3505, + 3515, + 3525, + 3539, + 3548, + 3554, + 3562, + 3575, + 3584, + 3589, + 3593, }; -#define SCANKEYWORDS_NUM_KEYWORDS 460 +#define SCANKEYWORDS_NUM_KEYWORDS 471 static int ScanKeywords_hash_func(const void *key, size_t keylen) { - static const int16 h[921] = { - 207, -201, 0, 223, -255, 28, 32767, -86, - 32767, 0, -35, -938, 32767, 32767, -13, 32767, - 450, 62, 42, 327, 309, -13, 0, 114, - 32767, -230, 135, -12, 424, 191, -114, 32767, - 45, 440, 673, 0, 0, 224, 286, 32767, - 32767, 16, 5, 0, 32767, 32767, -349, 32767, - -43, 32767, 32767, 32767, 32767, 32767, 0, 32767, - 32767, 262, 573, -75, 32767, 32767, 1113, 88, - 111, 32767, 7, -41, 223, 32767, 478, 275, - 32767, 0, 245, 1004, 59, 32767, 322, 256, - -130, 32767, 0, 378, 606, 994, -59, 32767, - -219, 32767, 489, 32767, -328, 32767, 88, 32767, - -228, 0, 1181, -705, 32767, 32767, 149, 32767, - 32767, 177, 0, 0, 32767, 32767, 32767, 473, - 142, 167, 130, 345, 461, 50, 426, 32767, - 32767, -104, 333, 32767, 5, 32767, 32767, 115, - 0, 34, 32767, -178, 32767, 32767, 0, 32767, - 32767, 32767, 429, 573, 32767, 3, 32767, 0, - 237, 32767, 324, 379, 32767, 409, 32767, 32767, - 362, -707, 638, 32767, 32767, -18, 23, 127, - 32767, 32767, -55, 0, 254, 32767, 0, 32767, - -16, 389, 32767, -287, 0, -43, 32767, 0, - 32767, 157, 23, 438, 907, 0, 32767, -213, - 299, 32767, 0, 32767, 32767, 229, 32767, 32767, - 32767, 32767, 186, 32767, 81, 32767, -707, 525, - 732, 515, 32767, 32767, 0, 32767, 32767, 126, - 32767, 32767, 0, 443, 32767, 102, -148, 188, - 393, 32767, 383, 32767, 212, 247, 32767, 389, - 54, -258, 0, 6, -32, 32767, 261, -190, - 112, 32767, 32767, 32767, 0, 32767, 0, 32767, - 32767, 215, 32767, 196, 32767, 445, 32767, 32767, - -456, -66, 161, 32767, 617, -484, 230, 32767, - 1078, 77, 124, 32767, 32767, -44, 32767, -271, - 148, 20, 344, 83, 32767, 32767, 32767, 108, - -768, 269, 32767, 32767, -66, 0, 32767, 32767, - 524, 433, 32767, 32767, 0, 32767, -564, -138, - 0, 4, 463, 354, 32767, 57, 0, 32767, - 552, 351, 32767, 32767, 0, 32767, 32767, 32767, - 65, 32767, 32767, 285, 158, 32767, 32767, -931, - 281, 32767, 32767, 32767, 32767, -357, -115, 32767, - 294, 435, 2, 32767, 305, 32767, 35, 434, - 32767, 172, 0, 32767, 326, -597, 263, 2, - 32767, -111, -79, 32767, 32767, -717, 198, 32767, - -715, 407, 32767, 32767, 159, 214, -135, 379, - 672, 656, 278, 0, 32767, 32767, 32767, 1109, - 830, -173, 32767, 32767, 334, 32767, 32767, 32767, - 32767, -447, 270, 61, 281, 32767, 0, 116, - 32767, 99, -302, 32767, 32767, 0, 39, 32767, - -61, 276, -45, 144, -121, 32767, 0, 198, - 325, 72, 294, -174, -218, 73, -489, 32767, - -372, 32767, 32767, 360, 345, 283, -453, 32767, - 32767, 32767, 283, 806, 0, 32767, 32767, 32767, - -65, 0, 32767, 8, 32767, 150, 32767, -251, - 132, 0, 32767, 32767, 272, 32767, 15, -417, - 889, -77, 0, 0, 16, 32767, 32767, 32767, - 94, 32767, 32767, 32767, 32767, 219, 32767, -416, - 391, 31, 208, 396, 0, 143, -37, 32767, - 252, 0, 32767, 185, 32767, -140, 0, 32767, - 456, -258, 32767, 381, 32767, 393, 32767, 32767, - 32767, 32767, 1160, 32767, 32767, 384, 201, 197, - 32767, 0, 131, 469, 89, 32767, 397, 0, - 32767, 211, 32767, 102, 138, 32767, -379, 264, - 32767, 386, 6, 32767, 32767, 162, 53, -81, - -135, 59, 338, 230, 0, 0, 19, 8, - 32767, 785, 423, 0, 257, 301, 523, -398, - 421, 0, 32767, 0, 32767, 32767, 0, -758, - 0, 562, 32767, 0, 32767, 32767, -213, 32767, - 28, 32767, -696, 173, -413, 352, -223, 472, - 275, 316, 32767, -186, 323, 32767, -163, 221, - 246, 29, 222, -1042, 0, 33, 184, 32767, - 32767, 0, 32767, 32767, 805, 32767, 305, 8, - 226, 84, 32767, 379, 0, 32767, 134, 82, - 32767, 399, 32767, 0, 0, 617, 32767, 32767, - 31, 0, 256, 0, 32767, 103, 302, 32767, - 208, 32767, -56, 0, -146, 32767, 243, 32767, - 0, 32767, 32767, 32767, 32767, 784, 32767, 32767, - 0, 197, 32767, 32767, 914, 155, -50, 32767, - 32767, 32767, 292, 1122, 32767, 0, 32767, -167, - 32767, 139, 113, 113, 32767, 410, 32767, 459, - 331, 0, 295, 0, 0, 483, -345, 32767, - 32767, -456, 32767, 32767, 0, 32767, 304, 32767, - 138, 32767, 520, 326, 412, -237, 453, 32767, - 50, 328, 32767, 32767, 0, -116, 0, -754, - 0, -149, 32767, 32767, 28, -398, 0, 32767, - 32767, -89, 353, -64, 51, 139, 32767, 32767, - 66, 32767, 314, 209, 1218, 32767, 32767, 325, - 0, 268, 32767, 32767, 446, 32767, 0, 32767, - -115, 32767, 32767, 32767, 239, 344, 32767, 5, - 32767, 0, -314, 0, -327, 32767, 181, 32767, - 107, 393, 0, 32767, 12, 582, 119, 32767, - -751, 32767, -578, 0, 349, 0, 32767, 404, - 307, 85, 32767, 452, 53, -307, 0, 0, - 32767, 32767, 664, 32767, 32767, 32767, -44, 32767, - 0, 259, 366, 32767, 0, 0, 32767, -97, - -131, 0, 32767, 178, 32767, 779, -231, -73, - 0, 0, 145, 487, 223, 0, 0, 86, - 32767, 0, 32767, 192, 321, 32767, 32767, 32767, - -360, -140, 32767, 32767, 32767, 507, 32767, 247, - 416, 32767, 0, 32767, 68, 98, 32767, 0, - -268, 0, 32767, 204, 32767, 0, 739, 112, - -283, 1180, 193, 32767, 32767, 220, 0, 0, - 0, 0, 0, 32767, 0, 32767, 32767, 32767, - 32767, 206, -374, 0, 315, 32767, 0, 0, - -37, -363, 32767, 32767, 258, 32767, 459, 32767, - 128, -1018, 374, 32767, 0, 32767, 0, -602, - 32767, 346, 76, 363, 387, 296, -186, 32, - 21, 32767, 32767, 32767, 32767, 32767, 32767, 32767, - 0, 32767, 0, 165, 32767, 32767, 32767, 0, - 790, -10, 32767, 32767, 32767, 32767, 0, 32767, - 0, 228, 32767, -993, 32, -878, -154, 32767, - 72, 369, 411, 585, 32767, 32767, 124, 32767, - -253, -177, 294, 32767, 335, 0, 9, 0, - 32767, 442, 0, 0, 32767, 449, 448, 0, - 0, 32767, 0, 593, 0, 32767, 242, 432, - 0, 32767, 0, 32767, 32767, 1360, 0, 32767, - 238 + static const int16 h[943] = { + 543, -186, 201, 0, 32767, 32767, 32767, 32767, + 221, -207, 32767, 0, 135, 283, 32767, 454, + 14, 79, 32767, 32767, 77, 32767, 102, 160, + 0, 32767, 151, 32767, 30, 392, -322, 452, + 32767, 0, 32767, 0, 0, 32767, 32767, 32767, + 234, 32767, 0, 32767, 0, 631, 32767, 368, + 80, 0, 0, -115, 32767, 285, 32767, 423, + 0, 32767, 155, 229, 32767, 126, 291, 165, + -22, 400, 327, 32767, 32767, 32767, 32767, -399, + 0, 406, 32767, 210, 1102, -203, 32767, 32767, + 32767, -944, 0, -188, 32767, 32767, 0, 347, + 32767, 0, 559, 316, 133, 32767, 202, 32767, + 305, 0, 32767, -94, 32767, 0, 32767, -222, + 32767, 138, 32767, -52, 32767, 32767, 279, 69, + -136, 0, 32767, 32767, 189, 32767, 32767, 88, + 0, 32767, 32767, 274, 32767, 514, 769, 248, + 32767, 32767, 32767, 32767, 32767, 32767, 0, 81, + 8, -29, 32767, 32767, 32767, -174, 258, 0, + 465, 211, 32767, 0, -229, 32767, -191, 32767, + 1263, 48, 32767, 343, 0, 58, 0, 32767, + 32767, 855, 0, 415, 0, -217, 32767, 1195, + 32767, 32767, 166, 32767, 42, 262, -736, 0, + 32767, 32767, 418, 178, 122, 32767, 46, 32767, + 32767, 32767, 229, 443, 32767, 32767, 250, 32767, + -300, 0, 32767, 1153, 32767, 108, 32767, -462, + 266, 32767, 478, -220, 235, 32767, 32767, -127, + 32767, 32767, 32767, 427, -231, 156, 32767, 0, + 0, 148, -218, 142, 73, 420, 32767, 32767, + 523, 32767, -36, 32767, 32767, 467, 844, -415, + 32767, 32767, -148, 179, 361, 32767, 151, 0, + 0, 32767, 145, 32767, 248, 110, 29, 125, + 282, 32767, -36, 43, 32767, 1125, 32767, 530, + 251, 519, 191, 0, 32767, -34, -502, 313, + 462, 845, 32767, 32767, -255, 412, 32767, 78, + 0, 32767, 444, 161, 0, 32767, 308, 32767, + -273, 400, 32767, 296, 32767, 32767, 72, 32767, + 32767, 34, 32767, 364, 151, -63, 4, 229, + 0, -276, 32767, 32767, 32767, 32767, -406, 32767, + 203, 32767, 140, 187, 160, 32767, 286, 0, + 32767, 32767, -88, 0, 100, -361, 32767, 9, + 0, -456, 32767, -37, -404, 32767, -969, 32767, + 371, 95, 0, 703, -31, 263, 373, -745, + 507, 14, 32767, -159, 0, 32767, 47, 299, + -126, 0, 32767, 83, 32767, 32767, 420, 236, + 32767, 32767, 0, 310, 89, 233, 32767, 93, + 32767, 0, 816, 60, 301, 211, 193, 0, + 452, -107, -403, -242, 353, 18, 32767, 32767, + 32767, 243, 104, 32767, 32767, 32767, -305, 32767, + -1048, 54, 0, 383, 32767, 32767, 32767, 226, + 319, 0, 32767, 32767, 32767, -130, 537, 32767, + 0, -206, 240, 696, 121, 32767, 180, 164, + 32767, 390, 185, 32767, 220, 545, 29, 32767, + 0, 32767, 32767, 1120, -163, 32767, 32767, 32767, + -368, 136, 445, 171, 233, 32767, 73, 32767, + 92, 32767, 0, 32767, 0, 208, 354, 32767, + 54, 32767, 32767, -246, -93, 389, 32767, 32767, + 32767, 32767, 50, 32767, 32767, 308, 32767, -278, + 0, 32767, 32767, -1172, 32767, 8, 32767, 0, + 32767, 341, 304, 242, -174, -92, 76, 419, + 32767, 87, 32767, -262, 32767, 32767, 32767, 109, + 200, 0, 32767, 0, 85, 530, 32767, -316, + 32767, 0, -286, 32767, 193, 268, 32767, 32767, + 278, 32767, 32767, 155, 445, 95, -310, 32767, + 207, -56, 32767, 32767, 0, -127, 232, -283, + 103, 32767, 1, 0, 32767, 32767, -485, 350, + 79, -56, -354, 32767, 121, 24, 81, 20, + 325, 40, 248, 32767, 32767, 32767, 358, 32767, + -56, 32767, 0, 174, -28, -301, -92, 32767, + 114, 295, 32767, 363, -355, 32767, 290, 0, + 32767, 32767, 32767, 122, 55, -142, 32767, 50, + 32767, 32767, 152, 571, 1397, 0, 472, -448, + 185, 140, 228, 435, 0, 32767, 32767, 414, + 32767, 379, 92, 185, 23, 299, 32767, 32767, + 0, 32767, 32767, 32767, 306, 439, -198, 219, + 340, 32767, 416, 0, -123, 377, 32767, 32767, + 0, 32767, 670, -670, 339, 32767, 32767, 32767, + 0, -256, 70, 514, 331, 0, 302, 469, + 0, 370, 32767, 32767, 42, 255, 212, 0, + 322, 277, 32767, -163, 32767, 216, 32767, 32767, + 0, 32767, 190, 32767, 32767, 0, 32767, 0, + -409, 1366, 32767, 32767, 32767, 193, 32767, 325, + 32767, 0, 142, 466, 32767, 32767, 32767, 113, + 32767, 32767, 62, 0, -62, 113, -90, 34, + -256, 32767, 32767, -936, 32767, 32767, 32767, 0, + -64, 0, -34, 451, 290, 108, 32767, 276, + 842, 0, 556, -153, 32767, 412, -168, 32767, + 32767, 1331, 407, 234, -60, 115, 457, -73, + 502, 772, 32767, 33, 404, -925, 32767, 32767, + 421, -123, 32767, 32767, 32767, 0, 0, 32767, + 32767, 32767, 429, 0, 3, 769, -81, 306, + 64, 32767, 192, 96, 0, 63, 44, 32767, + 32767, 32767, 32767, 0, 284, 32767, 575, 32767, + 32767, 12, 32767, 516, 116, 32767, 32767, 150, + 442, 134, 32767, 198, -45, 249, 40, 373, + 32767, 0, 32767, 32767, 0, 0, 352, 32767, + 117, 32767, 426, 0, 0, 32767, 32767, 32767, + 32767, -92, 32767, -442, 32767, 269, 32767, 32767, + 32767, 429, 32767, 0, 32767, 0, 143, 32767, + 508, -66, 32767, 280, 32767, 39, 162, 32767, + 32767, 0, 32767, 31, 32767, 32767, 32767, 0, + 32767, 257, -90, -249, 224, 272, 32767, 32767, + 313, -467, 214, 0, -85, 32767, 48, 0, + 32767, -336, 202, 0, 447, 90, 264, 32767, + 32767, 0, 101, 32767, 32767, 32767, 0, 32767, + 32767, 227, -1093, 32767, 0, 32767, 27, 174, + 32767, 7, 32767, -621, 146, 32767, 32767, 32767, + 854, 0, 32767, 161, 0, 137, 32767, 32767, + 32767, 32767, 0, 391, 219, 276, 32767, 168, + 32767, 32767, 0, 32767, 32767, 32767, 1, -4, + 32767, 0, 293, 0, 374, 256, 0, 0, + 32767, 355, 212, 404, 0, 186, 32767, 0, + 359, 32767, 32767, 172, 32767, 32767, -131, 0, + 402, 0, 56, 32767, 462, 389, 82, 0, + 32767, 0, 32767, 0, 32767, 32767, 32767, 32767, + 106, 425, -160, 31, 32767, 55, 0, 0, + 32767, 32767, 430, 1224, 179, -179, 0, 397, + 32767, 0, 0, 0, -60, 47, 32767, 396, + 32767, 326, 383, 369, 32767, 368, 32767 }; const unsigned char *k = (const unsigned char *) key; @@ -1088,9 +1112,9 @@ ScanKeywords_hash_func(const void *key, size_t keylen) unsigned char c = *k++ | 0x20; a = a * 257 + c; - b = b * 127 + c; + b = b * 31 + c; } - return h[a % 921] + h[b % 921]; + return h[a % 943] + h[b % 943]; } const ScanKeywordList ScanKeywords = { diff --git a/parser/src_common_kwlookup.c b/parser/src_common_kwlookup.c index 9fcad3ad..7b74f1de 100644 --- a/parser/src_common_kwlookup.c +++ b/parser/src_common_kwlookup.c @@ -10,7 +10,7 @@ * Key word lookup for PostgreSQL * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_common_pg_prng.c b/parser/src_common_pg_prng.c deleted file mode 100644 index 318f5310..00000000 --- a/parser/src_common_pg_prng.c +++ /dev/null @@ -1,152 +0,0 @@ -/*-------------------------------------------------------------------- - * Symbols referenced in this file: - * - pg_prng_double - * - xoroshiro128ss - * - rotl - * - pg_global_prng_state - *-------------------------------------------------------------------- - */ - -/*------------------------------------------------------------------------- - * - * Pseudo-Random Number Generator - * - * We use Blackman and Vigna's xoroshiro128** 1.0 algorithm - * to have a small, fast PRNG suitable for generating reasonably - * good-quality 64-bit data. This should not be considered - * cryptographically strong, however. - * - * About these generators: https://prng.di.unimi.it/ - * See also https://en.wikipedia.org/wiki/List_of_random_number_generators - * - * Copyright (c) 2021-2022, PostgreSQL Global Development Group - * - * src/common/pg_prng.c - * - *------------------------------------------------------------------------- - */ - -#include "c.h" - -#include /* for ldexp() */ - -#include "common/pg_prng.h" -#include "port/pg_bitutils.h" - -/* process-wide state vector */ -__thread pg_prng_state pg_global_prng_state; - - - -/* - * 64-bit rotate left - */ -static inline uint64 -rotl(uint64 x, int bits) -{ - return (x << bits) | (x >> (64 - bits)); -} - -/* - * The basic xoroshiro128** algorithm. - * Generates and returns a 64-bit uniformly distributed number, - * updating the state vector for next time. - * - * Note: the state vector must not be all-zeroes, as that is a fixed point. - */ -static uint64 -xoroshiro128ss(pg_prng_state *state) -{ - uint64 s0 = state->s0, - sx = state->s1 ^ s0, - val = rotl(s0 * 5, 7) * 9; - - /* update state */ - state->s0 = rotl(s0, 24) ^ sx ^ (sx << 16); - state->s1 = rotl(sx, 37); - - return val; -} - -/* - * We use this generator just to fill the xoroshiro128** state vector - * from a 64-bit seed. - */ - - -/* - * Initialize the PRNG state from a 64-bit integer, - * taking care that we don't produce all-zeroes. - */ - - -/* - * Initialize the PRNG state from a double in the range [-1.0, 1.0], - * taking care that we don't produce all-zeroes. - */ - - -/* - * Validate a PRNG seed value. - */ - - -/* - * Select a random uint64 uniformly from the range [0, PG_UINT64_MAX]. - */ - - -/* - * Select a random uint64 uniformly from the range [rmin, rmax]. - * If the range is empty, rmin is always produced. - */ - - -/* - * Select a random int64 uniformly from the range [PG_INT64_MIN, PG_INT64_MAX]. - */ - - -/* - * Select a random int64 uniformly from the range [0, PG_INT64_MAX]. - */ - - -/* - * Select a random uint32 uniformly from the range [0, PG_UINT32_MAX]. - */ - - -/* - * Select a random int32 uniformly from the range [PG_INT32_MIN, PG_INT32_MAX]. - */ - - -/* - * Select a random int32 uniformly from the range [0, PG_INT32_MAX]. - */ - - -/* - * Select a random double uniformly from the range [0.0, 1.0). - * - * Note: if you want a result in the range (0.0, 1.0], the standard way - * to get that is "1.0 - pg_prng_double(state)". - */ -double -pg_prng_double(pg_prng_state *state) -{ - uint64 v = xoroshiro128ss(state); - - /* - * As above, assume there's 52 mantissa bits in a double. This result - * could round to 1.0 if double's precision is less than that; but we - * assume IEEE float arithmetic elsewhere in Postgres, so this seems OK. - */ - return ldexp((double) (v >> (64 - 52)), -52); -} - -/* - * Select a random boolean value. - */ - diff --git a/parser/src_common_psprintf.c b/parser/src_common_psprintf.c index 4425ac72..c7507097 100644 --- a/parser/src_common_psprintf.c +++ b/parser/src_common_psprintf.c @@ -11,7 +11,7 @@ * sprintf into an allocated-on-demand buffer * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_common_string.c b/parser/src_common_string.c deleted file mode 100644 index 7af813c0..00000000 --- a/parser/src_common_string.c +++ /dev/null @@ -1,92 +0,0 @@ -/*-------------------------------------------------------------------- - * Symbols referenced in this file: - * - strtoint - *-------------------------------------------------------------------- - */ - -/*------------------------------------------------------------------------- - * - * string.c - * string handling helpers - * - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * - * IDENTIFICATION - * src/common/string.c - * - *------------------------------------------------------------------------- - */ - - -#ifndef FRONTEND -#include "postgres.h" -#else -#include "postgres_fe.h" -#endif - -#include "common/string.h" - - -/* - * Returns whether the string `str' has the postfix `end'. - */ - - - -/* - * strtoint --- just like strtol, but returns int not long - */ -int -strtoint(const char *pg_restrict str, char **pg_restrict endptr, int base) -{ - long val; - - val = strtol(str, endptr, base); - if (val != (int) val) - errno = ERANGE; - return (int) val; -} - - -/* - * pg_clean_ascii -- Replace any non-ASCII chars with a '?' char - * - * Modifies the string passed in which must be '\0'-terminated. - * - * This function exists specifically to deal with filtering out - * non-ASCII characters in a few places where the client can provide an almost - * arbitrary string (and it isn't checked to ensure it's a valid username or - * database name or similar) and we don't want to have control characters or other - * things ending up in the log file where server admins might end up with a - * messed up terminal when looking at them. - * - * In general, this function should NOT be used- instead, consider how to handle - * the string without needing to filter out the non-ASCII characters. - * - * Ultimately, we'd like to improve the situation to not require stripping out - * all non-ASCII but perform more intelligent filtering which would allow UTF or - * similar, but it's unclear exactly what we should allow, so stick to ASCII only - * for now. - */ - - - -/* - * pg_is_ascii -- Check if string is made only of ASCII characters - */ - - - -/* - * pg_strip_crlf -- Remove any trailing newline and carriage return - * - * Removes any trailing newline and carriage return characters (\r on - * Windows) in the input string, zero-terminating it. - * - * The passed in string must be zero-terminated. This function returns - * the new length of the string. - */ - diff --git a/parser/src_common_stringinfo.c b/parser/src_common_stringinfo.c index 3d9f85eb..2361e11f 100644 --- a/parser/src_common_stringinfo.c +++ b/parser/src_common_stringinfo.c @@ -21,7 +21,7 @@ * (null-terminated text) or arbitrary binary data. All storage is allocated * with palloc() (falling back to malloc in frontend code). * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/common/stringinfo.c @@ -215,8 +215,8 @@ appendStringInfoSpaces(StringInfo str, int count) enlargeStringInfo(str, count); /* OK, append the spaces */ - while (--count >= 0) - str->data[str->len++] = ' '; + memset(&str->data[str->len], ' ', count); + str->len += count; str->data[str->len] = '\0'; } } @@ -228,7 +228,7 @@ appendStringInfoSpaces(StringInfo str, int count) * if necessary. Ensures that a trailing null byte is present. */ void -appendBinaryStringInfo(StringInfo str, const char *data, int datalen) +appendBinaryStringInfo(StringInfo str, const void *data, int datalen) { Assert(str != NULL); diff --git a/parser/src_common_wchar.c b/parser/src_common_wchar.c index 14a832e2..653b2151 100644 --- a/parser/src_common_wchar.c +++ b/parser/src_common_wchar.c @@ -87,7 +87,7 @@ * wchar.c * Functions for working with multibyte characters in various encodings. * - * Portions Copyright (c) 1998-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1998-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/common/wchar.c @@ -704,7 +704,7 @@ mbbisearch(pg_wchar ucs, const struct mbinterval *table, int max) * value of -1. * * - Non-spacing and enclosing combining characters (general - * category code Mn or Me in the Unicode database) have a + * category code Mn, Me or Cf in the Unicode database) have a * column width of 0. * * - Spacing characters in the East Asian Wide (W) or East Asian @@ -722,7 +722,7 @@ mbbisearch(pg_wchar ucs, const struct mbinterval *table, int max) static int ucs_wcwidth(pg_wchar ucs) { -#include "common/unicode_combining_table.h" +#include "common/unicode_nonspacing_table.h" #include "common/unicode_east_asian_fw_table.h" /* test for 8-bit control characters */ @@ -741,8 +741,8 @@ ucs_wcwidth(pg_wchar ucs) * factor for display width leads to the correct behavior, so do that * search first. */ - if (mbbisearch(ucs, combining, - sizeof(combining) / sizeof(struct mbinterval) - 1)) + if (mbbisearch(ucs, nonspacing, + sizeof(nonspacing) / sizeof(struct mbinterval) - 1)) return 0; /* binary search in table of wide characters */ @@ -2003,10 +2003,11 @@ pg_utf8_verifystr(const unsigned char *s, int len) uint32 state = BGN; /* - * Sixteen seems to give the best balance of performance across different - * byte distributions. + * With a stride of two vector widths, gcc will unroll the loop. Even if + * the compiler can unroll a longer loop, it's not worth it because we + * must fall back to the byte-wise algorithm if we find any non-ASCII. */ -#define STRIDE_LENGTH 16 +#define STRIDE_LENGTH (2 * sizeof(Vector8)) if (len >= STRIDE_LENGTH) { diff --git a/parser/src_pl_plpgsql_src_pl_comp.c b/parser/src_pl_plpgsql_src_pl_comp.c index 51cadcc2..a79cbd49 100644 --- a/parser/src_pl_plpgsql_src_pl_comp.c +++ b/parser/src_pl_plpgsql_src_pl_comp.c @@ -39,7 +39,7 @@ * pl_comp.c - Compiler part of the PL/pgSQL * procedural language * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_pl_plpgsql_src_pl_funcs.c b/parser/src_pl_plpgsql_src_pl_funcs.c index 41d19162..a99944f1 100644 --- a/parser/src_pl_plpgsql_src_pl_funcs.c +++ b/parser/src_pl_plpgsql_src_pl_funcs.c @@ -49,7 +49,7 @@ * pl_funcs.c - Misc functions for the PL/pgSQL * procedural language * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -287,6 +287,8 @@ plpgsql_getdiag_kindname(PLpgSQL_getdiag_kind kind) { case PLPGSQL_GETDIAG_ROW_COUNT: return "ROW_COUNT"; + case PLPGSQL_GETDIAG_ROUTINE_OID: + return "PG_ROUTINE_OID"; case PLPGSQL_GETDIAG_CONTEXT: return "PG_CONTEXT"; case PLPGSQL_GETDIAG_ERROR_CONTEXT: diff --git a/parser/src_pl_plpgsql_src_pl_gram.c b/parser/src_pl_plpgsql_src_pl_gram.c index b0c1917e..0920316e 100644 --- a/parser/src_pl_plpgsql_src_pl_gram.c +++ b/parser/src_pl_plpgsql_src_pl_gram.c @@ -222,36 +222,37 @@ K_PG_EXCEPTION_CONTEXT = 354, K_PG_EXCEPTION_DETAIL = 355, K_PG_EXCEPTION_HINT = 356, - K_PRINT_STRICT_PARAMS = 357, - K_PRIOR = 358, - K_QUERY = 359, - K_RAISE = 360, - K_RELATIVE = 361, - K_RETURN = 362, - K_RETURNED_SQLSTATE = 363, - K_REVERSE = 364, - K_ROLLBACK = 365, - K_ROW_COUNT = 366, - K_ROWTYPE = 367, - K_SCHEMA = 368, - K_SCHEMA_NAME = 369, - K_SCROLL = 370, - K_SLICE = 371, - K_SQLSTATE = 372, - K_STACKED = 373, - K_STRICT = 374, - K_TABLE = 375, - K_TABLE_NAME = 376, - K_THEN = 377, - K_TO = 378, - K_TYPE = 379, - K_USE_COLUMN = 380, - K_USE_VARIABLE = 381, - K_USING = 382, - K_VARIABLE_CONFLICT = 383, - K_WARNING = 384, - K_WHEN = 385, - K_WHILE = 386 + K_PG_ROUTINE_OID = 357, + K_PRINT_STRICT_PARAMS = 358, + K_PRIOR = 359, + K_QUERY = 360, + K_RAISE = 361, + K_RELATIVE = 362, + K_RETURN = 363, + K_RETURNED_SQLSTATE = 364, + K_REVERSE = 365, + K_ROLLBACK = 366, + K_ROW_COUNT = 367, + K_ROWTYPE = 368, + K_SCHEMA = 369, + K_SCHEMA_NAME = 370, + K_SCROLL = 371, + K_SLICE = 372, + K_SQLSTATE = 373, + K_STACKED = 374, + K_STRICT = 375, + K_TABLE = 376, + K_TABLE_NAME = 377, + K_THEN = 378, + K_TO = 379, + K_TYPE = 380, + K_USE_COLUMN = 381, + K_USE_VARIABLE = 382, + K_USING = 383, + K_VARIABLE_CONFLICT = 384, + K_WARNING = 385, + K_WHEN = 386, + K_WHILE = 387 }; #endif /* Tokens. */ @@ -354,36 +355,37 @@ #define K_PG_EXCEPTION_CONTEXT 354 #define K_PG_EXCEPTION_DETAIL 355 #define K_PG_EXCEPTION_HINT 356 -#define K_PRINT_STRICT_PARAMS 357 -#define K_PRIOR 358 -#define K_QUERY 359 -#define K_RAISE 360 -#define K_RELATIVE 361 -#define K_RETURN 362 -#define K_RETURNED_SQLSTATE 363 -#define K_REVERSE 364 -#define K_ROLLBACK 365 -#define K_ROW_COUNT 366 -#define K_ROWTYPE 367 -#define K_SCHEMA 368 -#define K_SCHEMA_NAME 369 -#define K_SCROLL 370 -#define K_SLICE 371 -#define K_SQLSTATE 372 -#define K_STACKED 373 -#define K_STRICT 374 -#define K_TABLE 375 -#define K_TABLE_NAME 376 -#define K_THEN 377 -#define K_TO 378 -#define K_TYPE 379 -#define K_USE_COLUMN 380 -#define K_USE_VARIABLE 381 -#define K_USING 382 -#define K_VARIABLE_CONFLICT 383 -#define K_WARNING 384 -#define K_WHEN 385 -#define K_WHILE 386 +#define K_PG_ROUTINE_OID 357 +#define K_PRINT_STRICT_PARAMS 358 +#define K_PRIOR 359 +#define K_QUERY 360 +#define K_RAISE 361 +#define K_RELATIVE 362 +#define K_RETURN 363 +#define K_RETURNED_SQLSTATE 364 +#define K_REVERSE 365 +#define K_ROLLBACK 366 +#define K_ROW_COUNT 367 +#define K_ROWTYPE 368 +#define K_SCHEMA 369 +#define K_SCHEMA_NAME 370 +#define K_SCROLL 371 +#define K_SLICE 372 +#define K_SQLSTATE 373 +#define K_STACKED 374 +#define K_STRICT 375 +#define K_TABLE 376 +#define K_TABLE_NAME 377 +#define K_THEN 378 +#define K_TO 379 +#define K_TYPE 380 +#define K_USE_COLUMN 381 +#define K_USE_VARIABLE 382 +#define K_USING 383 +#define K_VARIABLE_CONFLICT 384 +#define K_WARNING 385 +#define K_WHEN 386 +#define K_WHILE 387 @@ -395,7 +397,7 @@ * * pl_gram.y - Parser for the PL/pgSQL procedural language * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * @@ -431,10 +433,7 @@ /* * Bison doesn't allocate anything that needs to live across parser calls, * so we can easily have it use palloc instead of malloc. This prevents - * memory leaks if we error out during parsing. Note this only works with - * bison >= 2.0. However, in bison 1.875 the default is to use alloca() - * if possible, so there's not really much problem anyhow, at least if - * you're building with gcc. + * memory leaks if we error out during parsing. */ #define YYMALLOC palloc #define YYFREE pfree @@ -524,7 +523,7 @@ static void check_raise_parameters(PLpgSQL_stmt_raise *stmt); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 120 "pl_gram.y" +#line 117 "pl_gram.y" { core_YYSTYPE core_yystype; /* these fields must match core_YYSTYPE: */ @@ -576,7 +575,7 @@ typedef union YYSTYPE PLpgSQL_case_when *casewhen; } /* Line 193 of yacc.c. */ -#line 531 "pl_gram.c" +#line 530 "pl_gram.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -601,7 +600,7 @@ typedef struct YYLTYPE /* Line 216 of yacc.c. */ -#line 556 "pl_gram.c" +#line 555 "pl_gram.c" #ifdef short # undef short @@ -818,20 +817,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 3 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1382 +#define YYLAST 1335 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 138 +#define YYNTOKENS 139 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 87 /* YYNRULES -- Number of rules. */ -#define YYNRULES 252 +#define YYNRULES 253 /* YYNRULES -- Number of states. */ -#define YYNSTATES 333 +#define YYNSTATES 334 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 386 +#define YYMAXUTOK 387 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -842,10 +841,10 @@ static const yytype_uint8 yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 132, 2, 2, 2, 2, - 134, 135, 2, 2, 136, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 133, - 2, 137, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 133, 2, 2, 2, 2, + 135, 136, 2, 2, 137, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 134, + 2, 138, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -877,7 +876,7 @@ static const yytype_uint8 yytranslate[] = 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131 + 125, 126, 127, 128, 129, 130, 131, 132 }; #if YYDEBUG @@ -910,57 +909,57 @@ static const yytype_uint16 yyprhs[] = 544, 546, 548, 550, 552, 554, 556, 558, 560, 562, 564, 566, 568, 570, 572, 574, 576, 578, 580, 582, 584, 586, 588, 590, 592, 594, 596, 598, 600, 602, - 604, 606, 608 + 604, 606, 608, 610 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 139, 0, -1, 140, 144, 143, -1, -1, 140, 141, - -1, 132, 94, 57, -1, 132, 102, 142, -1, 132, - 128, 62, -1, 132, 128, 126, -1, 132, 128, 125, - -1, 22, -1, 224, -1, -1, 133, -1, 145, 34, - 166, 210, 60, 221, -1, 219, -1, 219, 146, -1, - 219, 146, 147, -1, 52, -1, 147, 148, -1, 148, - -1, 149, -1, 52, -1, 25, 223, 26, -1, 158, - 159, 160, 161, 162, 163, -1, 158, 28, 68, 157, - 133, -1, -1, 158, 151, 49, 150, 153, 156, 152, - -1, -1, 89, 115, -1, 115, -1, -1, -1, 134, - 154, 135, -1, 155, -1, 154, 136, 155, -1, 158, - 160, -1, 80, -1, 68, -1, 22, -1, 224, -1, - 23, -1, 22, -1, 224, -1, -1, 44, -1, -1, - -1, 40, 22, -1, 40, 224, -1, 40, 23, -1, - -1, 90, 92, -1, 133, -1, 164, -1, 165, -1, - 53, -1, 137, -1, 15, -1, -1, 166, 167, -1, - 144, 133, -1, 170, -1, 177, -1, 180, -1, 185, - -1, 186, -1, 187, -1, 190, -1, 192, -1, 194, - -1, 195, -1, 196, -1, 198, -1, 199, -1, 168, - -1, 169, -1, 171, -1, 200, -1, 201, -1, 202, - -1, 204, -1, 205, -1, 206, -1, 207, -1, 96, - -1, 36, -1, 56, -1, 24, -1, 72, 172, 55, - 173, 133, -1, -1, 48, -1, 118, -1, 173, 136, - 174, -1, 174, -1, 176, 165, 175, -1, -1, 24, - -1, 22, -1, 23, -1, 74, 217, 166, 178, 179, - 60, 74, 133, -1, -1, 178, 59, 217, 166, -1, - -1, 58, 166, -1, 37, 181, 182, 184, 60, 37, - 133, -1, -1, 182, 183, -1, 183, -1, 130, 217, - 166, -1, -1, 58, 166, -1, 220, 83, 197, -1, - 220, 131, 218, 197, -1, 220, 68, 188, 197, -1, - 189, 76, -1, 24, -1, 22, -1, 23, -1, 220, - 69, 189, 191, 76, 31, 218, 197, -1, -1, 116, - 11, -1, 193, 221, 222, -1, 65, -1, 47, -1, - 107, -1, 105, -1, 32, -1, 166, 60, 83, 221, - 133, -1, 75, -1, 78, -1, 84, -1, 22, -1, - 23, -1, 64, -1, 93, 209, -1, 66, 203, 209, - 79, -1, 87, 203, 209, 133, -1, -1, 39, 209, - 133, -1, 92, 133, -1, 43, 208, 133, -1, 110, - 208, 133, -1, 30, 38, -1, 30, 89, 38, -1, + 140, 0, -1, 141, 145, 144, -1, -1, 141, 142, + -1, 133, 94, 57, -1, 133, 103, 143, -1, 133, + 129, 62, -1, 133, 129, 127, -1, 133, 129, 126, + -1, 22, -1, 225, -1, -1, 134, -1, 146, 34, + 167, 211, 60, 222, -1, 220, -1, 220, 147, -1, + 220, 147, 148, -1, 52, -1, 148, 149, -1, 149, + -1, 150, -1, 52, -1, 25, 224, 26, -1, 159, + 160, 161, 162, 163, 164, -1, 159, 28, 68, 158, + 134, -1, -1, 159, 152, 49, 151, 154, 157, 153, + -1, -1, 89, 116, -1, 116, -1, -1, -1, 135, + 155, 136, -1, 156, -1, 155, 137, 156, -1, 159, + 161, -1, 80, -1, 68, -1, 22, -1, 225, -1, + 23, -1, 22, -1, 225, -1, -1, 44, -1, -1, + -1, 40, 22, -1, 40, 225, -1, 40, 23, -1, + -1, 90, 92, -1, 134, -1, 165, -1, 166, -1, + 53, -1, 138, -1, 15, -1, -1, 167, 168, -1, + 145, 134, -1, 171, -1, 178, -1, 181, -1, 186, + -1, 187, -1, 188, -1, 191, -1, 193, -1, 195, + -1, 196, -1, 197, -1, 199, -1, 200, -1, 169, + -1, 170, -1, 172, -1, 201, -1, 202, -1, 203, + -1, 205, -1, 206, -1, 207, -1, 208, -1, 96, + -1, 36, -1, 56, -1, 24, -1, 72, 173, 55, + 174, 134, -1, -1, 48, -1, 119, -1, 174, 137, + 175, -1, 175, -1, 177, 166, 176, -1, -1, 24, + -1, 22, -1, 23, -1, 74, 218, 167, 179, 180, + 60, 74, 134, -1, -1, 179, 59, 218, 167, -1, + -1, 58, 167, -1, 37, 182, 183, 185, 60, 37, + 134, -1, -1, 183, 184, -1, 184, -1, 131, 218, + 167, -1, -1, 58, 167, -1, 221, 83, 198, -1, + 221, 132, 219, 198, -1, 221, 68, 189, 198, -1, + 190, 76, -1, 24, -1, 22, -1, 23, -1, 221, + 69, 190, 192, 76, 31, 219, 198, -1, -1, 117, + 11, -1, 194, 222, 223, -1, 65, -1, 47, -1, + 108, -1, 106, -1, 32, -1, 167, 60, 83, 222, + 134, -1, 75, -1, 78, -1, 84, -1, 22, -1, + 23, -1, 64, -1, 93, 210, -1, 66, 204, 210, + 79, -1, 87, 204, 210, 134, -1, -1, 39, 210, + 134, -1, 92, 134, -1, 43, 209, 134, -1, 111, + 209, 134, -1, 30, 38, -1, 30, 89, 38, -1, -1, 24, -1, 22, -1, 23, -1, -1, -1, 63, - 211, 212, -1, 212, 213, -1, 213, -1, 130, 214, - 122, 166, -1, 214, 95, 215, -1, 215, -1, 223, - -1, -1, -1, -1, -1, 25, 223, 26, -1, -1, - 25, 223, 26, -1, -1, 223, -1, 133, -1, 130, - 216, -1, 22, -1, 224, -1, 24, -1, 27, -1, + 212, 213, -1, 213, 214, -1, 214, -1, 131, 215, + 123, 167, -1, 215, 95, 216, -1, 216, -1, 224, + -1, -1, -1, -1, -1, 25, 224, 26, -1, -1, + 25, 224, 26, -1, -1, 224, -1, 134, -1, 131, + 217, -1, 22, -1, 225, -1, 24, -1, 27, -1, 28, -1, 30, -1, 31, -1, 32, -1, 33, -1, 36, -1, 38, -1, 39, -1, 40, -1, 41, -1, 42, -1, 43, -1, 44, -1, 45, -1, 46, -1, @@ -975,39 +974,40 @@ static const yytype_int16 yyrhs[] = 101, -1, 102, -1, 103, -1, 104, -1, 105, -1, 106, -1, 107, -1, 108, -1, 109, -1, 110, -1, 111, -1, 112, -1, 113, -1, 114, -1, 115, -1, - 116, -1, 117, -1, 118, -1, 120, -1, 121, -1, - 124, -1, 125, -1, 126, -1, 128, -1, 129, -1 + 116, -1, 117, -1, 118, -1, 119, -1, 121, -1, + 122, -1, 125, -1, 126, -1, 127, -1, 129, -1, + 130, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 362, 362, 368, 369, 372, 376, 385, 389, 393, - 399, 403, 408, 409, 412, 435, 443, 450, 459, 471, - 472, 475, 476, 480, 493, 531, 537, 536, 590, 593, - 597, 604, 610, 613, 644, 648, 654, 662, 663, 665, - 680, 695, 723, 751, 782, 783, 788, 799, 800, 805, - 810, 817, 818, 822, 824, 830, 831, 839, 840, 844, - 845, 855, 857, 859, 861, 863, 865, 867, 869, 871, - 873, 875, 877, 879, 881, 883, 885, 887, 889, 891, - 893, 895, 897, 899, 901, 905, 941, 959, 980, 1019, - 1082, 1085, 1089, 1095, 1099, 1105, 1118, 1162, 1180, 1185, - 1192, 1210, 1213, 1227, 1230, 1236, 1243, 1257, 1261, 1267, - 1279, 1282, 1297, 1315, 1334, 1368, 1627, 1653, 1667, 1674, - 1713, 1716, 1722, 1775, 1779, 1785, 1811, 1956, 1980, 1998, - 2002, 2006, 2010, 2021, 2034, 2098, 2176, 2206, 2219, 2224, - 2238, 2245, 2259, 2274, 2275, 2276, 2280, 2302, 2307, 2315, - 2317, 2316, 2358, 2362, 2368, 2381, 2390, 2396, 2433, 2437, - 2441, 2445, 2449, 2457, 2461, 2469, 2472, 2479, 2481, 2488, - 2492, 2496, 2505, 2506, 2507, 2508, 2509, 2510, 2511, 2512, - 2513, 2514, 2515, 2516, 2517, 2518, 2519, 2520, 2521, 2522, - 2523, 2524, 2525, 2526, 2527, 2528, 2529, 2530, 2531, 2532, - 2533, 2534, 2535, 2536, 2537, 2538, 2539, 2540, 2541, 2542, - 2543, 2544, 2545, 2546, 2547, 2548, 2549, 2550, 2551, 2552, - 2553, 2554, 2555, 2556, 2557, 2558, 2559, 2560, 2561, 2562, - 2563, 2564, 2565, 2566, 2567, 2568, 2569, 2570, 2571, 2572, - 2573, 2574, 2575, 2576, 2577, 2578, 2579, 2580, 2581, 2582, - 2583, 2584, 2585 + 0, 360, 360, 366, 367, 370, 374, 383, 387, 391, + 397, 401, 406, 407, 410, 433, 441, 448, 457, 469, + 470, 473, 474, 478, 491, 529, 535, 534, 561, 564, + 568, 575, 581, 584, 615, 619, 625, 633, 634, 636, + 651, 666, 694, 722, 753, 754, 759, 770, 771, 776, + 781, 788, 789, 793, 795, 801, 802, 810, 811, 815, + 816, 826, 828, 830, 832, 834, 836, 838, 840, 842, + 844, 846, 848, 850, 852, 854, 856, 858, 860, 862, + 864, 866, 868, 870, 872, 876, 912, 930, 951, 990, + 1054, 1057, 1061, 1067, 1071, 1077, 1090, 1137, 1155, 1160, + 1167, 1185, 1188, 1202, 1205, 1211, 1218, 1232, 1236, 1242, + 1254, 1257, 1272, 1290, 1309, 1343, 1602, 1628, 1642, 1649, + 1688, 1691, 1697, 1750, 1754, 1760, 1786, 1931, 1955, 1973, + 1977, 1981, 1985, 1996, 2009, 2073, 2151, 2181, 2194, 2199, + 2213, 2220, 2234, 2249, 2250, 2251, 2255, 2277, 2282, 2290, + 2292, 2291, 2333, 2337, 2343, 2356, 2365, 2371, 2408, 2412, + 2416, 2420, 2424, 2432, 2436, 2444, 2447, 2454, 2456, 2463, + 2467, 2471, 2480, 2481, 2482, 2483, 2484, 2485, 2486, 2487, + 2488, 2489, 2490, 2491, 2492, 2493, 2494, 2495, 2496, 2497, + 2498, 2499, 2500, 2501, 2502, 2503, 2504, 2505, 2506, 2507, + 2508, 2509, 2510, 2511, 2512, 2513, 2514, 2515, 2516, 2517, + 2518, 2519, 2520, 2521, 2522, 2523, 2524, 2525, 2526, 2527, + 2528, 2529, 2530, 2531, 2532, 2533, 2534, 2535, 2536, 2537, + 2538, 2539, 2540, 2541, 2542, 2543, 2544, 2545, 2546, 2547, + 2548, 2549, 2550, 2551, 2552, 2553, 2554, 2555, 2556, 2557, + 2558, 2559, 2560, 2561 }; #endif @@ -1034,10 +1034,10 @@ static const char *const yytname[] = "K_NEXT", "K_NO", "K_NOT", "K_NOTICE", "K_NULL", "K_OPEN", "K_OPTION", "K_OR", "K_PERFORM", "K_PG_CONTEXT", "K_PG_DATATYPE_NAME", "K_PG_EXCEPTION_CONTEXT", "K_PG_EXCEPTION_DETAIL", "K_PG_EXCEPTION_HINT", - "K_PRINT_STRICT_PARAMS", "K_PRIOR", "K_QUERY", "K_RAISE", "K_RELATIVE", - "K_RETURN", "K_RETURNED_SQLSTATE", "K_REVERSE", "K_ROLLBACK", - "K_ROW_COUNT", "K_ROWTYPE", "K_SCHEMA", "K_SCHEMA_NAME", "K_SCROLL", - "K_SLICE", "K_SQLSTATE", "K_STACKED", "K_STRICT", "K_TABLE", + "K_PG_ROUTINE_OID", "K_PRINT_STRICT_PARAMS", "K_PRIOR", "K_QUERY", + "K_RAISE", "K_RELATIVE", "K_RETURN", "K_RETURNED_SQLSTATE", "K_REVERSE", + "K_ROLLBACK", "K_ROW_COUNT", "K_ROWTYPE", "K_SCHEMA", "K_SCHEMA_NAME", + "K_SCROLL", "K_SLICE", "K_SQLSTATE", "K_STACKED", "K_STRICT", "K_TABLE", "K_TABLE_NAME", "K_THEN", "K_TO", "K_TYPE", "K_USE_COLUMN", "K_USE_VARIABLE", "K_USING", "K_VARIABLE_CONFLICT", "K_WARNING", "K_WHEN", "K_WHILE", "'#'", "';'", "'('", "')'", "','", "'='", "$accept", @@ -1084,39 +1084,39 @@ static const yytype_uint16 yytoknum[] = 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, - 385, 386, 35, 59, 40, 41, 44, 61 + 385, 386, 387, 35, 59, 40, 41, 44, 61 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint8 yyr1[] = { - 0, 138, 139, 140, 140, 141, 141, 141, 141, 141, - 142, 142, 143, 143, 144, 145, 145, 145, 146, 147, - 147, 148, 148, 148, 149, 149, 150, 149, 151, 151, - 151, 152, 153, 153, 154, 154, 155, 156, 156, 157, - 157, 157, 158, 158, 159, 159, 160, 161, 161, 161, - 161, 162, 162, 163, 163, 164, 164, 165, 165, 166, - 166, 167, 167, 167, 167, 167, 167, 167, 167, 167, - 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, - 167, 167, 167, 167, 167, 168, 169, 169, 170, 171, - 172, 172, 172, 173, 173, 174, 175, 176, 176, 176, - 177, 178, 178, 179, 179, 180, 181, 182, 182, 183, - 184, 184, 185, 186, 187, 188, 189, 189, 189, 190, - 191, 191, 192, 193, 193, 194, 195, 196, 197, 198, - 198, 198, 198, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 208, 208, 209, 209, 209, 210, - 211, 210, 212, 212, 213, 214, 214, 215, 216, 217, - 218, 219, 219, 220, 220, 221, 221, 222, 222, 223, - 223, 223, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224 + 0, 139, 140, 141, 141, 142, 142, 142, 142, 142, + 143, 143, 144, 144, 145, 146, 146, 146, 147, 148, + 148, 149, 149, 149, 150, 150, 151, 150, 152, 152, + 152, 153, 154, 154, 155, 155, 156, 157, 157, 158, + 158, 158, 159, 159, 160, 160, 161, 162, 162, 162, + 162, 163, 163, 164, 164, 165, 165, 166, 166, 167, + 167, 168, 168, 168, 168, 168, 168, 168, 168, 168, + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, + 168, 168, 168, 168, 168, 169, 170, 170, 171, 172, + 173, 173, 173, 174, 174, 175, 176, 177, 177, 177, + 178, 179, 179, 180, 180, 181, 182, 183, 183, 184, + 185, 185, 186, 187, 188, 189, 190, 190, 190, 191, + 192, 192, 193, 194, 194, 195, 196, 197, 198, 199, + 199, 199, 199, 199, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 209, 209, 210, 210, 210, 211, + 212, 211, 213, 213, 214, 215, 215, 216, 217, 218, + 219, 220, 220, 221, 221, 222, 222, 223, 223, 224, + 224, 224, 225, 225, 225, 225, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 225, 225, 225, 225, + 225, 225, 225, 225 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1147,7 +1147,7 @@ static const yytype_uint8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1 + 1, 1, 1, 1 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1164,100 +1164,100 @@ static const yytype_uint8 yydefact[] = 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 0, 170, 0, 0, 0, 13, 2, - 59, 18, 16, 162, 5, 10, 6, 11, 7, 9, - 8, 163, 42, 0, 22, 17, 20, 21, 44, 43, - 132, 133, 88, 0, 127, 86, 106, 0, 145, 124, - 87, 150, 134, 123, 138, 90, 159, 129, 130, 131, - 138, 0, 0, 85, 126, 125, 145, 0, 60, 75, - 76, 62, 77, 63, 64, 65, 66, 67, 68, 69, - 165, 70, 71, 72, 73, 74, 78, 79, 80, 81, - 82, 83, 84, 0, 0, 0, 19, 0, 45, 0, - 30, 0, 46, 0, 0, 147, 148, 146, 0, 0, - 0, 0, 0, 91, 92, 0, 59, 0, 140, 135, - 0, 61, 0, 166, 165, 0, 0, 59, 160, 23, - 0, 29, 26, 47, 164, 159, 110, 108, 139, 143, - 0, 141, 0, 151, 153, 0, 0, 163, 0, 142, - 158, 167, 122, 14, 117, 118, 116, 59, 0, 120, - 163, 112, 59, 39, 41, 0, 40, 32, 0, 51, - 59, 59, 107, 0, 144, 0, 156, 157, 152, 136, - 98, 99, 97, 0, 94, 0, 103, 137, 168, 114, - 115, 0, 0, 0, 113, 25, 0, 0, 48, 50, - 49, 0, 0, 163, 163, 0, 0, 59, 89, 0, - 58, 57, 96, 59, 159, 0, 121, 0, 165, 0, - 34, 46, 38, 37, 31, 52, 56, 53, 24, 54, - 55, 0, 155, 163, 93, 95, 163, 59, 0, 160, - 0, 33, 0, 36, 27, 105, 163, 0, 59, 128, - 35, 100, 119 + 250, 251, 252, 253, 0, 170, 0, 0, 0, 13, + 2, 59, 18, 16, 162, 5, 10, 6, 11, 7, + 9, 8, 163, 42, 0, 22, 17, 20, 21, 44, + 43, 132, 133, 88, 0, 127, 86, 106, 0, 145, + 124, 87, 150, 134, 123, 138, 90, 159, 129, 130, + 131, 138, 0, 0, 85, 126, 125, 145, 0, 60, + 75, 76, 62, 77, 63, 64, 65, 66, 67, 68, + 69, 165, 70, 71, 72, 73, 74, 78, 79, 80, + 81, 82, 83, 84, 0, 0, 0, 19, 0, 45, + 0, 30, 0, 46, 0, 0, 147, 148, 146, 0, + 0, 0, 0, 0, 91, 92, 0, 59, 0, 140, + 135, 0, 61, 0, 166, 165, 0, 0, 59, 160, + 23, 0, 29, 26, 47, 164, 159, 110, 108, 139, + 143, 0, 141, 0, 151, 153, 0, 0, 163, 0, + 142, 158, 167, 122, 14, 117, 118, 116, 59, 0, + 120, 163, 112, 59, 39, 41, 0, 40, 32, 0, + 51, 59, 59, 107, 0, 144, 0, 156, 157, 152, + 136, 98, 99, 97, 0, 94, 0, 103, 137, 168, + 114, 115, 0, 0, 0, 113, 25, 0, 0, 48, + 50, 49, 0, 0, 163, 163, 0, 0, 59, 89, + 0, 58, 57, 96, 59, 159, 0, 121, 0, 165, + 0, 34, 46, 38, 37, 31, 52, 56, 53, 24, + 54, 55, 0, 155, 163, 93, 95, 163, 59, 0, + 160, 0, 33, 0, 36, 27, 105, 163, 0, 59, + 128, 35, 100, 119 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 1, 2, 6, 106, 99, 147, 8, 102, 115, - 116, 117, 247, 181, 324, 277, 299, 300, 304, 245, - 118, 182, 213, 249, 282, 308, 309, 292, 240, 148, - 149, 150, 151, 152, 195, 263, 264, 315, 265, 153, - 266, 295, 154, 184, 216, 217, 253, 155, 156, 157, - 237, 238, 158, 272, 159, 160, 161, 162, 163, 241, - 164, 165, 166, 167, 168, 192, 169, 170, 171, 172, - 190, 188, 173, 191, 223, 224, 255, 256, 268, 196, - 242, 9, 174, 202, 232, 203, 94 + -1, 1, 2, 6, 107, 100, 148, 8, 103, 116, + 117, 118, 248, 182, 325, 278, 300, 301, 305, 246, + 119, 183, 214, 250, 283, 309, 310, 293, 241, 149, + 150, 151, 152, 153, 196, 264, 265, 316, 266, 154, + 267, 296, 155, 185, 217, 218, 254, 156, 157, 158, + 238, 239, 159, 273, 160, 161, 162, 163, 164, 242, + 165, 166, 167, 168, 169, 193, 170, 171, 172, 173, + 191, 189, 174, 192, 224, 225, 256, 257, 269, 197, + 243, 9, 175, 203, 233, 204, 95 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -253 +#define YYPACT_NINF -260 static const yytype_int16 yypact[] = { - -253, 36, -20, -253, 353, -49, -253, -87, 14, -2, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, -253, -253, 26, -253, -3, 674, -40, -253, -253, - -253, -253, 245, -253, -253, -253, -253, -253, -253, -253, - -253, 1041, -253, 353, -253, 245, -253, -253, -7, -253, - -253, -253, -253, 353, -253, -253, -253, 49, 38, -253, - -253, -253, -253, -253, -253, -38, -253, -253, -253, -253, - -253, -59, 49, -253, -253, -253, 38, -34, -253, -253, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - 353, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, -253, -253, 34, -50, 80, -253, 27, -253, -5, - -253, 58, -253, 85, -17, -253, -253, -253, -19, 1, - -16, -14, 49, -253, -253, 63, -253, 49, -253, -253, - -11, -253, -98, -253, 353, 69, 69, -253, -253, -253, - 461, -253, -253, 83, -8, -253, -41, -253, -253, -253, - 88, -253, 353, -14, -253, 48, 81, 887, -1, -253, - -253, -253, -253, -253, -253, -253, -253, -253, 52, 13, - 1118, -253, -253, -253, -253, 0, -253, 2, 569, 40, - -253, -253, -253, 71, -253, -64, -253, -253, -253, -253, - -253, -253, -253, -72, -253, -12, 18, -253, -253, -253, - -253, 123, 59, 54, -253, -253, 779, -39, -253, -253, - -253, 46, -13, -9, 1195, 102, 353, -253, -253, 81, - -253, -253, -253, -253, -253, 82, -253, 109, 353, -76, - -253, -253, -253, -253, -253, -253, -253, -253, -253, -253, - -253, 8, -253, 124, -253, -253, 1272, -253, 70, -253, - 10, -253, 779, -253, -253, -253, 964, 12, -253, -253, - -253, -253, -253 + -260, 21, -20, -260, 355, -61, -260, -99, 3, 7, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, 22, -260, 23, 679, -38, -260, + -260, -260, -260, 246, -260, -260, -260, -260, -260, -260, + -260, -260, 1026, -260, 355, -260, 246, -260, -260, -18, + -260, -260, -260, -260, 355, -260, -260, -260, 30, 49, + -260, -260, -260, -260, -260, -260, -37, -260, -260, -260, + -260, -260, -48, 30, -260, -260, -260, 49, -33, -260, + -260, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, 355, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, -260, -260, 36, -23, 78, -260, 37, -260, + -10, -260, 58, -260, 85, -17, -260, -260, -260, -22, + -19, -16, -15, 30, -260, -260, 62, -260, 30, -260, + -260, -11, -260, -95, -260, 355, 68, 68, -260, -260, + -260, 464, -260, -260, 79, -2, -260, -50, -260, -260, + -260, 86, -260, 355, -15, -260, 48, 71, 894, -6, + -260, -260, -260, -260, -260, -260, -260, -260, -260, 53, + 13, 1092, -260, -260, -260, -260, -3, -260, -1, 573, + 42, -260, -260, -260, 73, -260, -51, -260, -260, -260, + -260, -260, -260, -260, -76, -260, -12, 15, -260, -260, + -260, -260, 125, 59, 54, -260, -260, 785, -39, -260, + -260, -260, 46, -13, -9, 1158, 102, 355, -260, -260, + 71, -260, -260, -260, -260, -260, 80, -260, 110, 355, + -60, -260, -260, -260, -260, -260, -260, -260, -260, -260, + -260, -260, 8, -260, 124, -260, -260, 1224, -260, 69, + -260, 10, -260, 785, -260, -260, -260, 960, 11, -260, + -260, -260, -260, -260 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -253, -253, -253, -253, -253, -253, 148, -253, -253, -253, - 37, -253, -253, -253, -253, -253, -253, -171, -253, -253, - -252, -253, -144, -253, -253, -253, -253, -123, -96, -253, - -253, -253, -253, -253, -253, -253, -127, -253, -253, -253, - -253, -253, -253, -253, -253, -52, -253, -253, -253, -253, - -253, -37, -253, -253, -253, -253, -253, -253, -253, -231, - -253, -253, -253, -253, -253, 25, -253, -253, -253, -253, - 20, -130, -253, -253, -253, -55, -253, -116, -253, -206, - -147, -253, -253, -196, -253, -4, -95 + -260, -260, -260, -260, -260, -260, 148, -260, -260, -260, + 35, -260, -260, -260, -260, -260, -260, -171, -260, -260, + -259, -260, -145, -260, -260, -260, -260, -124, -97, -260, + -260, -260, -260, -260, -260, -260, -128, -260, -260, -260, + -260, -260, -260, -260, -260, -53, -260, -260, -260, -260, + -260, -42, -260, -260, -260, -260, -260, -260, -260, -221, + -260, -260, -260, -260, -260, 25, -260, -260, -260, -260, + 26, -131, -260, -260, -260, -56, -260, -118, -260, -210, + -150, -260, -260, -196, -260, -4, -96 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -1267,76 +1267,55 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -163 static const yytype_int16 yytable[] = { - 93, 107, 290, 290, 111, 4, 269, 119, 233, 250, - 193, 274, 199, 120, 121, 122, 123, 251, 205, 206, - 119, 177, 108, 124, 301, -161, -162, 125, 126, 302, - 127, 286, 230, 207, 128, 231, 3, 178, 129, 219, - 306, 303, -28, -161, -162, 95, 98, 130, 100, -109, - 101, -109, 103, 96, 104, 132, 133, 134, 287, 321, - 322, 288, 225, 135, 289, 136, 137, 228, 189, 138, - 301, 185, 186, 187, 198, 139, 293, 294, 140, 97, - 194, 208, 179, 141, 142, 109, 110, 143, 317, 215, - 220, 234, 235, 236, 204, 210, 144, 332, 145, 201, - 227, 146, 320, 260, 261, 262, 209, 212, 180, 175, - 211, 214, 5, 215, 218, 246, 222, 221, 226, 183, - 307, -109, 229, 248, 291, 291, 254, 259, 270, 271, - 281, 285, 267, 275, 296, 297, 276, 298, 305, 311, - 319, 325, 318, 329, 327, 331, 120, 121, 122, 123, - 7, 330, 176, 280, 283, 284, 124, 323, -161, 310, - 125, 126, 314, 127, 252, 197, 200, 128, 258, 239, - 312, 129, 328, 0, 0, 0, -161, 0, 0, 0, - 130, 119, 0, 0, -154, 0, 0, 0, 132, 133, - 134, 313, 0, 0, 0, 0, 135, 316, 136, 137, - 0, 0, 138, 0, 0, 0, 0, 0, 139, 0, - 0, 140, 0, 0, 0, 0, 141, 142, 257, 0, - 143, 326, 0, 0, 0, 0, 0, 119, 0, 144, - 0, 145, 0, 0, 146, 0, 0, 0, 0, 0, + 94, 108, 291, 291, 112, 4, 251, 120, 252, 234, + 178, 194, 200, 121, 122, 123, 124, 270, 302, 220, + 120, 3, 275, 125, 109, -161, 179, 126, 127, 303, + 128, -28, -162, 96, 129, 99, 231, 101, 130, 232, + 307, 304, 97, -161, 287, 206, 207, 131, 104, -109, + -162, -109, 186, 187, 188, 133, 134, 135, 289, 102, + 208, 290, 226, 136, 302, 137, 138, 229, 98, 139, + 221, 180, 288, 294, 295, 140, 322, 323, 141, 190, + 105, 216, 195, 142, 143, 318, 199, 144, 110, 111, + 235, 236, 237, 261, 262, 263, 205, 145, 181, 146, + 228, 202, 147, 321, 210, 211, 212, 213, 333, 209, + 176, 215, 219, 5, 216, 247, 223, 227, 222, 249, + 184, 308, -109, 230, 255, 292, 292, 260, 268, 271, + 272, 276, 282, 286, 277, 298, 297, 299, 306, 312, + 319, 320, 326, 328, 330, 332, 121, 122, 123, 124, + 7, 177, 331, 281, 284, 285, 125, 324, -161, 311, + 126, 127, 315, 128, 253, 240, 198, 129, 259, 313, + 329, 130, 0, 201, 0, 0, -161, 0, 0, 0, + 131, 120, 0, 0, -154, 0, 0, 0, 133, 134, + 135, 314, 0, 0, 0, 0, 136, 317, 137, 138, + 0, 0, 139, 0, 0, 0, 0, 0, 140, 0, + 0, 141, 0, 0, 0, 0, 142, 143, 0, 258, + 144, 327, 0, 0, 0, 0, 0, 120, 0, 0, + 145, 0, 146, 0, 0, 147, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -154, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 112, 0, 0, - 113, 0, 12, 13, 0, 14, 15, 16, 17, 0, - 0, 18, 257, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 114, 33, 34, + 0, 0, 0, 0, 0, -154, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 113, 0, + 0, 114, 0, 12, 13, 0, 14, 15, 16, 17, + 0, 0, 18, 258, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 115, 33, + 34, 35, 36, 37, 0, 38, 0, 39, 40, 41, + 0, 42, 43, 44, 0, 0, 45, 0, 46, 47, + 0, 48, 0, 49, 50, 0, 51, 52, 53, 0, + 54, 55, 56, 57, 58, 59, 0, 60, 0, 61, + 62, 0, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 0, 87, 88, 0, + 0, 89, 90, 91, 0, 92, 93, 10, 0, 11, + 0, 0, 12, 13, 0, 14, 15, 16, 17, 0, + 0, 18, 0, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 0, 33, 34, 35, 36, 37, 0, 38, 0, 39, 40, 41, 0, 42, 43, 44, 0, 0, 45, 0, 46, 47, 0, 48, 0, 49, 50, 0, 51, 52, 53, 0, 54, 55, 56, 57, 58, 59, 0, 60, 0, 61, 62, 0, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 0, 86, 87, 0, 0, 88, - 89, 90, 0, 91, 92, 10, 0, 11, 0, 0, - 12, 13, 0, 14, 15, 16, 17, 0, 0, 18, - 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 0, 33, 34, 35, 36, - 37, 0, 38, 0, 39, 40, 41, 0, 42, 43, - 44, 0, 0, 45, 0, 46, 47, 0, 48, 0, - 49, 50, 0, 51, 52, 53, 0, 54, 55, 56, - 57, 58, 59, 0, 60, 0, 61, 62, 0, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 0, 86, 87, 0, 0, 88, 89, 90, - 0, 91, 92, 243, 244, 0, 0, 0, 12, 13, - 0, 14, 15, 16, 17, 0, 0, 18, 0, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 0, 33, 34, 35, 36, 37, 0, - 38, 0, 39, 40, 41, 0, 42, 43, 44, 0, - 0, 45, 0, 46, 47, 0, 48, 0, 49, 50, - 0, 51, 52, 53, 0, 54, 55, 56, 57, 58, - 59, 0, 60, 0, 61, 62, 0, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 0, 86, 87, 0, 0, 88, 89, 90, 0, 91, - 92, 278, 279, 0, 0, 0, 12, 13, 0, 14, - 15, 16, 17, 0, 0, 18, 0, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 0, 33, 34, 35, 36, 37, 0, 38, 0, - 39, 40, 41, 0, 42, 43, 44, 0, 0, 45, - 0, 46, 47, 0, 48, 0, 49, 50, 0, 51, - 52, 53, 0, 54, 55, 56, 57, 58, 59, 0, - 60, 0, 61, 62, 0, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 0, 86, - 87, 0, 0, 88, 89, 90, 105, 91, 92, 0, + 82, 83, 84, 85, 86, 0, 87, 88, 0, 0, + 89, 90, 91, 0, 92, 93, 244, 245, 0, 0, 0, 12, 13, 0, 14, 15, 16, 17, 0, 0, 18, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 0, 33, 34, 35, @@ -1346,8 +1325,19 @@ static const yytype_int16 yytable[] = 56, 57, 58, 59, 0, 60, 0, 61, 62, 0, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 0, 86, 87, 0, 0, 88, 89, - 90, 112, 91, 92, 0, 0, 12, 13, 0, 14, + 83, 84, 85, 86, 0, 87, 88, 0, 0, 89, + 90, 91, 0, 92, 93, 279, 280, 0, 0, 0, + 12, 13, 0, 14, 15, 16, 17, 0, 0, 18, + 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 0, 33, 34, 35, 36, + 37, 0, 38, 0, 39, 40, 41, 0, 42, 43, + 44, 0, 0, 45, 0, 46, 47, 0, 48, 0, + 49, 50, 0, 51, 52, 53, 0, 54, 55, 56, + 57, 58, 59, 0, 60, 0, 61, 62, 0, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 0, 87, 88, 0, 0, 89, 90, + 91, 106, 92, 93, 0, 0, 12, 13, 0, 14, 15, 16, 17, 0, 0, 18, 0, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 0, 33, 34, 35, 36, 37, 0, 38, 0, @@ -1356,130 +1346,114 @@ static const yytype_int16 yytable[] = 52, 53, 0, 54, 55, 56, 57, 58, 59, 0, 60, 0, 61, 62, 0, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 0, 86, - 87, 0, 0, 88, 89, 90, 0, 91, 92, 120, - 121, 122, 123, 0, 0, 0, 0, 0, 0, 124, - 0, -161, 0, 125, 126, 0, 127, 0, 0, 0, - 128, 0, 0, 0, 129, 0, 0, 0, 0, -161, - 0, 0, 0, 130, 0, -101, -101, -101, 0, 0, - 0, 132, 133, 134, 0, 0, 0, 0, 0, 135, - 0, 136, 137, 0, 0, 138, 0, 0, 0, 0, - 0, 139, 0, 0, 140, 0, 0, 0, 0, 141, - 142, 0, 0, 143, 0, 0, 120, 121, 122, 123, - 0, 0, 144, 0, 145, 0, 124, 146, -161, 0, - 125, 126, 0, 127, 0, 0, 0, 128, 0, 0, - 0, 129, 0, 0, 0, 0, -161, 0, 0, 0, - 130, 0, -102, -102, -102, 0, 0, 0, 132, 133, - 134, 0, 0, 0, 0, 0, 135, 0, 136, 137, - 0, 0, 138, 0, 0, 0, 0, 0, 139, 0, - 0, 140, 0, 0, 0, 0, 141, 142, 0, 0, - 143, 0, 0, 120, 121, 122, 123, 0, 0, 144, - 0, 145, 0, 124, 146, -161, 0, 125, 126, 0, - 127, 0, 0, 0, 128, 0, 0, 0, 129, 0, - 0, 0, 0, -161, 0, 0, 0, 130, 0, 0, - 0, -149, 0, 0, 131, 132, 133, 134, 0, 0, - 0, 0, 0, 135, 0, 136, 137, 0, 0, 138, - 0, 0, 0, 0, 0, 139, 0, 0, 140, 0, - 0, 0, 0, 141, 142, 0, 0, 143, 0, 0, - 120, 121, 122, 123, 0, 0, 144, 0, 145, 0, - 124, 146, -161, 0, 125, 126, 0, 127, 0, 0, - 0, 128, 0, 0, 0, 129, 0, 0, 0, 0, - -161, 0, 0, 0, 130, 0, 0, 0, 273, 0, - 0, 0, 132, 133, 134, 0, 0, 0, 0, 0, - 135, 0, 136, 137, 0, 0, 138, 0, 0, 0, - 0, 0, 139, 0, 0, 140, 0, 0, 0, 0, - 141, 142, 0, 0, 143, 0, 0, 120, 121, 122, - 123, 0, 0, 144, 0, 145, 0, 124, 146, -161, - 0, 125, 126, 0, 127, 0, 0, 0, 128, 0, - 0, 0, 129, 0, 0, 0, 0, -161, 0, 0, - 0, 130, 0, 0, 0, -111, 0, 0, 0, 132, - 133, 134, 0, 0, 0, 0, 0, 135, 0, 136, - 137, 0, 0, 138, 0, 0, 0, 0, 0, 139, - 0, 0, 140, 0, 0, 0, 0, 141, 142, 0, - 0, 143, 0, 0, 120, 121, 122, 123, 0, 0, - 144, 0, 145, 0, 124, 146, -161, 0, 125, 126, - 0, 127, 0, 0, 0, 128, 0, 0, 0, 129, - 0, 0, 0, 0, -161, 0, 0, 0, 130, 0, - 0, 0, -104, 0, 0, 0, 132, 133, 134, 0, - 0, 0, 0, 0, 135, 0, 136, 137, 0, 0, - 138, 0, 0, 0, 0, 0, 139, 0, 0, 140, - 0, 0, 0, 0, 141, 142, 0, 0, 143, 0, - 0, 0, 0, 0, 0, 0, 0, 144, 0, 145, - 0, 0, 146 + 78, 79, 80, 81, 82, 83, 84, 85, 86, 0, + 87, 88, 0, 0, 89, 90, 91, 113, 92, 93, + 0, 0, 12, 13, 0, 14, 15, 16, 17, 0, + 0, 18, 0, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 0, 33, 34, + 35, 36, 37, 0, 38, 0, 39, 40, 41, 0, + 42, 43, 44, 0, 0, 45, 0, 46, 47, 0, + 48, 0, 49, 50, 0, 51, 52, 53, 0, 54, + 55, 56, 57, 58, 59, 0, 60, 0, 61, 62, + 0, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 0, 87, 88, 0, 0, + 89, 90, 91, 0, 92, 93, 121, 122, 123, 124, + 0, 0, 0, 0, 0, 0, 125, 0, -161, 0, + 126, 127, 0, 128, 0, 0, 0, 129, 0, 0, + 0, 130, 0, 0, 0, 0, -161, 0, 0, 0, + 131, 0, -101, -101, -101, 0, 0, 0, 133, 134, + 135, 0, 0, 0, 0, 0, 136, 0, 137, 138, + 0, 0, 139, 0, 0, 0, 0, 0, 140, 0, + 0, 141, 121, 122, 123, 124, 142, 143, 0, 0, + 144, 0, 125, 0, -161, 0, 126, 127, 0, 128, + 145, 0, 146, 129, 0, 147, 0, 130, 0, 0, + 0, 0, -161, 0, 0, 0, 131, 0, -102, -102, + -102, 0, 0, 0, 133, 134, 135, 0, 0, 0, + 0, 0, 136, 0, 137, 138, 0, 0, 139, 0, + 0, 0, 0, 0, 140, 0, 0, 141, 121, 122, + 123, 124, 142, 143, 0, 0, 144, 0, 125, 0, + -161, 0, 126, 127, 0, 128, 145, 0, 146, 129, + 0, 147, 0, 130, 0, 0, 0, 0, -161, 0, + 0, 0, 131, 0, 0, 0, -149, 0, 0, 132, + 133, 134, 135, 0, 0, 0, 0, 0, 136, 0, + 137, 138, 0, 0, 139, 0, 0, 0, 0, 0, + 140, 0, 0, 141, 121, 122, 123, 124, 142, 143, + 0, 0, 144, 0, 125, 0, -161, 0, 126, 127, + 0, 128, 145, 0, 146, 129, 0, 147, 0, 130, + 0, 0, 0, 0, -161, 0, 0, 0, 131, 0, + 0, 0, 274, 0, 0, 0, 133, 134, 135, 0, + 0, 0, 0, 0, 136, 0, 137, 138, 0, 0, + 139, 0, 0, 0, 0, 0, 140, 0, 0, 141, + 121, 122, 123, 124, 142, 143, 0, 0, 144, 0, + 125, 0, -161, 0, 126, 127, 0, 128, 145, 0, + 146, 129, 0, 147, 0, 130, 0, 0, 0, 0, + -161, 0, 0, 0, 131, 0, 0, 0, -111, 0, + 0, 0, 133, 134, 135, 0, 0, 0, 0, 0, + 136, 0, 137, 138, 0, 0, 139, 0, 0, 0, + 0, 0, 140, 0, 0, 141, 121, 122, 123, 124, + 142, 143, 0, 0, 144, 0, 125, 0, -161, 0, + 126, 127, 0, 128, 145, 0, 146, 129, 0, 147, + 0, 130, 0, 0, 0, 0, -161, 0, 0, 0, + 131, 0, 0, 0, -104, 0, 0, 0, 133, 134, + 135, 0, 0, 0, 0, 0, 136, 0, 137, 138, + 0, 0, 139, 0, 0, 0, 0, 0, 140, 0, + 0, 141, 0, 0, 0, 0, 142, 143, 0, 0, + 144, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 145, 0, 146, 0, 0, 147 }; static const yytype_int16 yycheck[] = { - 4, 96, 15, 15, 100, 25, 237, 102, 204, 215, - 48, 242, 142, 22, 23, 24, 25, 58, 68, 69, - 115, 28, 62, 32, 276, 34, 34, 36, 37, 68, - 39, 95, 130, 83, 43, 133, 0, 44, 47, 38, - 53, 80, 49, 52, 52, 94, 133, 56, 34, 58, - 52, 60, 26, 102, 57, 64, 65, 66, 122, 135, - 136, 133, 192, 72, 136, 74, 75, 197, 30, 78, - 322, 22, 23, 24, 133, 84, 58, 59, 87, 128, - 118, 131, 89, 92, 93, 125, 126, 96, 294, 130, - 89, 22, 23, 24, 60, 68, 105, 328, 107, 133, - 196, 110, 298, 22, 23, 24, 26, 49, 115, 113, - 115, 26, 132, 130, 133, 210, 130, 133, 55, 123, - 133, 130, 133, 40, 137, 137, 38, 79, 76, 116, - 90, 60, 133, 133, 11, 76, 134, 83, 92, 37, - 31, 133, 60, 133, 74, 133, 22, 23, 24, 25, - 2, 322, 115, 248, 250, 251, 32, 301, 34, 282, - 36, 37, 289, 39, 216, 140, 146, 43, 223, 206, - 286, 47, 319, -1, -1, -1, 52, -1, -1, -1, - 56, 276, -1, -1, 60, -1, -1, -1, 64, 65, - 66, 287, -1, -1, -1, -1, 72, 293, 74, 75, + 4, 97, 15, 15, 101, 25, 216, 103, 58, 205, + 28, 48, 143, 22, 23, 24, 25, 238, 277, 38, + 116, 0, 243, 32, 62, 34, 44, 36, 37, 68, + 39, 49, 34, 94, 43, 134, 131, 34, 47, 134, + 53, 80, 103, 52, 95, 68, 69, 56, 26, 58, + 52, 60, 22, 23, 24, 64, 65, 66, 134, 52, + 83, 137, 193, 72, 323, 74, 75, 198, 129, 78, + 89, 89, 123, 58, 59, 84, 136, 137, 87, 30, + 57, 131, 119, 92, 93, 295, 134, 96, 126, 127, + 22, 23, 24, 22, 23, 24, 60, 106, 116, 108, + 197, 134, 111, 299, 26, 68, 116, 49, 329, 132, + 114, 26, 134, 133, 131, 211, 131, 55, 134, 40, + 124, 134, 131, 134, 38, 138, 138, 79, 134, 76, + 117, 134, 90, 60, 135, 76, 11, 83, 92, 37, + 60, 31, 134, 74, 134, 134, 22, 23, 24, 25, + 2, 116, 323, 249, 251, 252, 32, 302, 34, 283, + 36, 37, 290, 39, 217, 207, 141, 43, 224, 287, + 320, 47, -1, 147, -1, -1, 52, -1, -1, -1, + 56, 277, -1, -1, 60, -1, -1, -1, 64, 65, + 66, 288, -1, -1, -1, -1, 72, 294, 74, 75, -1, -1, 78, -1, -1, -1, -1, -1, 84, -1, - -1, 87, -1, -1, -1, -1, 92, 93, 222, -1, - 96, 317, -1, -1, -1, -1, -1, 322, -1, 105, - -1, 107, -1, -1, 110, -1, -1, -1, -1, -1, + -1, 87, -1, -1, -1, -1, 92, 93, -1, 223, + 96, 318, -1, -1, -1, -1, -1, 323, -1, -1, + 106, -1, 108, -1, -1, 111, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 130, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 22, -1, -1, - 25, -1, 27, 28, -1, 30, 31, 32, 33, -1, - -1, 36, 286, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + -1, -1, -1, -1, -1, 131, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 22, -1, + -1, 25, -1, 27, 28, -1, 30, 31, 32, 33, + -1, -1, 36, 287, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, -1, 59, -1, 61, 62, 63, + -1, 65, 66, 67, -1, -1, 70, -1, 72, 73, + -1, 75, -1, 77, 78, -1, 80, 81, 82, -1, + 84, 85, 86, 87, 88, 89, -1, 91, -1, 93, + 94, -1, 96, 97, 98, 99, 100, 101, 102, 103, + 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, -1, 121, 122, -1, + -1, 125, 126, 127, -1, 129, 130, 22, -1, 24, + -1, -1, 27, 28, -1, 30, 31, 32, 33, -1, + -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, -1, 53, 54, 55, 56, 57, -1, 59, -1, 61, 62, 63, -1, 65, 66, 67, -1, -1, 70, -1, 72, 73, -1, 75, -1, 77, 78, -1, 80, 81, 82, -1, 84, 85, 86, 87, 88, 89, -1, 91, -1, 93, 94, -1, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, -1, 120, 121, -1, -1, 124, - 125, 126, -1, 128, 129, 22, -1, 24, -1, -1, - 27, 28, -1, 30, 31, 32, 33, -1, -1, 36, - -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, -1, 53, 54, 55, 56, - 57, -1, 59, -1, 61, 62, 63, -1, 65, 66, - 67, -1, -1, 70, -1, 72, 73, -1, 75, -1, - 77, 78, -1, 80, 81, 82, -1, 84, 85, 86, - 87, 88, 89, -1, 91, -1, 93, 94, -1, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, -1, 120, 121, -1, -1, 124, 125, 126, - -1, 128, 129, 22, 23, -1, -1, -1, 27, 28, - -1, 30, 31, 32, 33, -1, -1, 36, -1, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, -1, 53, 54, 55, 56, 57, -1, - 59, -1, 61, 62, 63, -1, 65, 66, 67, -1, - -1, 70, -1, 72, 73, -1, 75, -1, 77, 78, - -1, 80, 81, 82, -1, 84, 85, 86, 87, 88, - 89, -1, 91, -1, 93, 94, -1, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, -1, -1, 124, 125, 126, -1, 128, - 129, 22, 23, -1, -1, -1, 27, 28, -1, 30, - 31, 32, 33, -1, -1, 36, -1, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, -1, 53, 54, 55, 56, 57, -1, 59, -1, - 61, 62, 63, -1, 65, 66, 67, -1, -1, 70, - -1, 72, 73, -1, 75, -1, 77, 78, -1, 80, - 81, 82, -1, 84, 85, 86, 87, 88, 89, -1, - 91, -1, 93, 94, -1, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, -1, 120, - 121, -1, -1, 124, 125, 126, 22, 128, 129, -1, + 115, 116, 117, 118, 119, -1, 121, 122, -1, -1, + 125, 126, 127, -1, 129, 130, 22, 23, -1, -1, -1, 27, 28, -1, 30, 31, 32, 33, -1, -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, 53, 54, 55, @@ -1489,8 +1463,19 @@ static const yytype_int16 yycheck[] = 86, 87, 88, 89, -1, 91, -1, 93, 94, -1, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, -1, 120, 121, -1, -1, 124, 125, - 126, 22, 128, 129, -1, -1, 27, 28, -1, 30, + 116, 117, 118, 119, -1, 121, 122, -1, -1, 125, + 126, 127, -1, 129, 130, 22, 23, -1, -1, -1, + 27, 28, -1, 30, 31, 32, 33, -1, -1, 36, + -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, -1, 53, 54, 55, 56, + 57, -1, 59, -1, 61, 62, 63, -1, 65, 66, + 67, -1, -1, 70, -1, 72, 73, -1, 75, -1, + 77, 78, -1, 80, 81, 82, -1, 84, 85, 86, + 87, 88, 89, -1, 91, -1, 93, 94, -1, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, -1, 121, 122, -1, -1, 125, 126, + 127, 22, 129, 130, -1, -1, 27, 28, -1, 30, 31, 32, 33, -1, -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, 53, 54, 55, 56, 57, -1, 59, -1, @@ -1499,63 +1484,68 @@ static const yytype_int16 yycheck[] = 81, 82, -1, 84, 85, 86, 87, 88, 89, -1, 91, -1, 93, 94, -1, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, -1, 120, - 121, -1, -1, 124, 125, 126, -1, 128, 129, 22, - 23, 24, 25, -1, -1, -1, -1, -1, -1, 32, - -1, 34, -1, 36, 37, -1, 39, -1, -1, -1, - 43, -1, -1, -1, 47, -1, -1, -1, -1, 52, - -1, -1, -1, 56, -1, 58, 59, 60, -1, -1, - -1, 64, 65, 66, -1, -1, -1, -1, -1, 72, - -1, 74, 75, -1, -1, 78, -1, -1, -1, -1, - -1, 84, -1, -1, 87, -1, -1, -1, -1, 92, - 93, -1, -1, 96, -1, -1, 22, 23, 24, 25, - -1, -1, 105, -1, 107, -1, 32, 110, 34, -1, + 111, 112, 113, 114, 115, 116, 117, 118, 119, -1, + 121, 122, -1, -1, 125, 126, 127, 22, 129, 130, + -1, -1, 27, 28, -1, 30, 31, 32, 33, -1, + -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, -1, 53, 54, + 55, 56, 57, -1, 59, -1, 61, 62, 63, -1, + 65, 66, 67, -1, -1, 70, -1, 72, 73, -1, + 75, -1, 77, 78, -1, 80, 81, 82, -1, 84, + 85, 86, 87, 88, 89, -1, 91, -1, 93, 94, + -1, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, -1, 121, 122, -1, -1, + 125, 126, 127, -1, 129, 130, 22, 23, 24, 25, + -1, -1, -1, -1, -1, -1, 32, -1, 34, -1, 36, 37, -1, 39, -1, -1, -1, 43, -1, -1, -1, 47, -1, -1, -1, -1, 52, -1, -1, -1, 56, -1, 58, 59, 60, -1, -1, -1, 64, 65, 66, -1, -1, -1, -1, -1, 72, -1, 74, 75, -1, -1, 78, -1, -1, -1, -1, -1, 84, -1, - -1, 87, -1, -1, -1, -1, 92, 93, -1, -1, - 96, -1, -1, 22, 23, 24, 25, -1, -1, 105, - -1, 107, -1, 32, 110, 34, -1, 36, 37, -1, - 39, -1, -1, -1, 43, -1, -1, -1, 47, -1, - -1, -1, -1, 52, -1, -1, -1, 56, -1, -1, - -1, 60, -1, -1, 63, 64, 65, 66, -1, -1, - -1, -1, -1, 72, -1, 74, 75, -1, -1, 78, - -1, -1, -1, -1, -1, 84, -1, -1, 87, -1, - -1, -1, -1, 92, 93, -1, -1, 96, -1, -1, - 22, 23, 24, 25, -1, -1, 105, -1, 107, -1, - 32, 110, 34, -1, 36, 37, -1, 39, -1, -1, - -1, 43, -1, -1, -1, 47, -1, -1, -1, -1, - 52, -1, -1, -1, 56, -1, -1, -1, 60, -1, - -1, -1, 64, 65, 66, -1, -1, -1, -1, -1, - 72, -1, 74, 75, -1, -1, 78, -1, -1, -1, - -1, -1, 84, -1, -1, 87, -1, -1, -1, -1, - 92, 93, -1, -1, 96, -1, -1, 22, 23, 24, - 25, -1, -1, 105, -1, 107, -1, 32, 110, 34, - -1, 36, 37, -1, 39, -1, -1, -1, 43, -1, - -1, -1, 47, -1, -1, -1, -1, 52, -1, -1, - -1, 56, -1, -1, -1, 60, -1, -1, -1, 64, - 65, 66, -1, -1, -1, -1, -1, 72, -1, 74, - 75, -1, -1, 78, -1, -1, -1, -1, -1, 84, - -1, -1, 87, -1, -1, -1, -1, 92, 93, -1, - -1, 96, -1, -1, 22, 23, 24, 25, -1, -1, - 105, -1, 107, -1, 32, 110, 34, -1, 36, 37, - -1, 39, -1, -1, -1, 43, -1, -1, -1, 47, + -1, 87, 22, 23, 24, 25, 92, 93, -1, -1, + 96, -1, 32, -1, 34, -1, 36, 37, -1, 39, + 106, -1, 108, 43, -1, 111, -1, 47, -1, -1, + -1, -1, 52, -1, -1, -1, 56, -1, 58, 59, + 60, -1, -1, -1, 64, 65, 66, -1, -1, -1, + -1, -1, 72, -1, 74, 75, -1, -1, 78, -1, + -1, -1, -1, -1, 84, -1, -1, 87, 22, 23, + 24, 25, 92, 93, -1, -1, 96, -1, 32, -1, + 34, -1, 36, 37, -1, 39, 106, -1, 108, 43, + -1, 111, -1, 47, -1, -1, -1, -1, 52, -1, + -1, -1, 56, -1, -1, -1, 60, -1, -1, 63, + 64, 65, 66, -1, -1, -1, -1, -1, 72, -1, + 74, 75, -1, -1, 78, -1, -1, -1, -1, -1, + 84, -1, -1, 87, 22, 23, 24, 25, 92, 93, + -1, -1, 96, -1, 32, -1, 34, -1, 36, 37, + -1, 39, 106, -1, 108, 43, -1, 111, -1, 47, -1, -1, -1, -1, 52, -1, -1, -1, 56, -1, -1, -1, 60, -1, -1, -1, 64, 65, 66, -1, -1, -1, -1, -1, 72, -1, 74, 75, -1, -1, 78, -1, -1, -1, -1, -1, 84, -1, -1, 87, - -1, -1, -1, -1, 92, 93, -1, -1, 96, -1, - -1, -1, -1, -1, -1, -1, -1, 105, -1, 107, - -1, -1, 110 + 22, 23, 24, 25, 92, 93, -1, -1, 96, -1, + 32, -1, 34, -1, 36, 37, -1, 39, 106, -1, + 108, 43, -1, 111, -1, 47, -1, -1, -1, -1, + 52, -1, -1, -1, 56, -1, -1, -1, 60, -1, + -1, -1, 64, 65, 66, -1, -1, -1, -1, -1, + 72, -1, 74, 75, -1, -1, 78, -1, -1, -1, + -1, -1, 84, -1, -1, 87, 22, 23, 24, 25, + 92, 93, -1, -1, 96, -1, 32, -1, 34, -1, + 36, 37, -1, 39, 106, -1, 108, 43, -1, 111, + -1, 47, -1, -1, -1, -1, 52, -1, -1, -1, + 56, -1, -1, -1, 60, -1, -1, -1, 64, 65, + 66, -1, -1, -1, -1, -1, 72, -1, 74, 75, + -1, -1, 78, -1, -1, -1, -1, -1, 84, -1, + -1, 87, -1, -1, -1, -1, 92, 93, -1, -1, + 96, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 106, -1, 108, -1, -1, 111 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint8 yystos[] = { - 0, 139, 140, 0, 25, 132, 141, 144, 145, 219, + 0, 140, 141, 0, 25, 133, 142, 145, 146, 220, 22, 24, 27, 28, 30, 31, 32, 33, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 53, 54, 55, 56, 57, 59, 61, @@ -1563,32 +1553,32 @@ static const yytype_uint8 yystos[] = 78, 80, 81, 82, 84, 85, 86, 87, 88, 89, 91, 93, 94, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 120, 121, 124, 125, - 126, 128, 129, 223, 224, 94, 102, 128, 133, 143, - 34, 52, 146, 26, 57, 22, 142, 224, 62, 125, - 126, 166, 22, 25, 52, 147, 148, 149, 158, 224, - 22, 23, 24, 25, 32, 36, 37, 39, 43, 47, - 56, 63, 64, 65, 66, 72, 74, 75, 78, 84, - 87, 92, 93, 96, 105, 107, 110, 144, 167, 168, - 169, 170, 171, 177, 180, 185, 186, 187, 190, 192, - 193, 194, 195, 196, 198, 199, 200, 201, 202, 204, - 205, 206, 207, 210, 220, 223, 148, 28, 44, 89, - 115, 151, 159, 223, 181, 22, 23, 24, 209, 30, - 208, 211, 203, 48, 118, 172, 217, 203, 133, 209, - 208, 133, 221, 223, 60, 68, 69, 83, 131, 26, - 68, 115, 49, 160, 26, 130, 182, 183, 133, 38, - 89, 133, 130, 212, 213, 209, 55, 166, 209, 133, - 130, 133, 222, 221, 22, 23, 24, 188, 189, 189, - 166, 197, 218, 22, 23, 157, 224, 150, 40, 161, - 217, 58, 183, 184, 38, 214, 215, 223, 213, 79, - 22, 23, 24, 173, 174, 176, 178, 133, 216, 197, - 76, 116, 191, 60, 197, 133, 134, 153, 22, 23, - 224, 90, 162, 166, 166, 60, 95, 122, 133, 136, - 15, 137, 165, 58, 59, 179, 11, 76, 83, 154, - 155, 158, 68, 80, 156, 92, 53, 133, 163, 164, - 165, 37, 215, 166, 174, 175, 166, 217, 60, 31, - 221, 135, 136, 160, 152, 133, 166, 74, 218, 133, - 155, 133, 197 + 113, 114, 115, 116, 117, 118, 119, 121, 122, 125, + 126, 127, 129, 130, 224, 225, 94, 103, 129, 134, + 144, 34, 52, 147, 26, 57, 22, 143, 225, 62, + 126, 127, 167, 22, 25, 52, 148, 149, 150, 159, + 225, 22, 23, 24, 25, 32, 36, 37, 39, 43, + 47, 56, 63, 64, 65, 66, 72, 74, 75, 78, + 84, 87, 92, 93, 96, 106, 108, 111, 145, 168, + 169, 170, 171, 172, 178, 181, 186, 187, 188, 191, + 193, 194, 195, 196, 197, 199, 200, 201, 202, 203, + 205, 206, 207, 208, 211, 221, 224, 149, 28, 44, + 89, 116, 152, 160, 224, 182, 22, 23, 24, 210, + 30, 209, 212, 204, 48, 119, 173, 218, 204, 134, + 210, 209, 134, 222, 224, 60, 68, 69, 83, 132, + 26, 68, 116, 49, 161, 26, 131, 183, 184, 134, + 38, 89, 134, 131, 213, 214, 210, 55, 167, 210, + 134, 131, 134, 223, 222, 22, 23, 24, 189, 190, + 190, 167, 198, 219, 22, 23, 158, 225, 151, 40, + 162, 218, 58, 184, 185, 38, 215, 216, 224, 214, + 79, 22, 23, 24, 174, 175, 177, 179, 134, 217, + 198, 76, 117, 192, 60, 198, 134, 135, 154, 22, + 23, 225, 90, 163, 167, 167, 60, 95, 123, 134, + 137, 15, 138, 166, 58, 59, 180, 11, 76, 83, + 155, 156, 159, 68, 80, 157, 92, 53, 134, 164, + 165, 166, 37, 216, 167, 175, 176, 167, 218, 60, + 31, 222, 136, 137, 161, 153, 134, 167, 74, 219, + 134, 156, 134, 198 }; #define yyerrok (yyerrstatus = 0) @@ -2429,21 +2419,21 @@ yyparse () switch (yyn) { case 2: -#line 363 "pl_gram.y" +#line 361 "pl_gram.y" { plpgsql_parse_result = (PLpgSQL_stmt_block *) (yyvsp[(2) - (3)].stmt); ;} break; case 5: -#line 373 "pl_gram.y" +#line 371 "pl_gram.y" { plpgsql_DumpExecTree = true; ;} break; case 6: -#line 377 "pl_gram.y" +#line 375 "pl_gram.y" { if (strcmp((yyvsp[(3) - (3)].str), "on") == 0) plpgsql_curr_compile->print_strict_params = true; @@ -2455,42 +2445,42 @@ yyparse () break; case 7: -#line 386 "pl_gram.y" +#line 384 "pl_gram.y" { plpgsql_curr_compile->resolve_option = PLPGSQL_RESOLVE_ERROR; ;} break; case 8: -#line 390 "pl_gram.y" +#line 388 "pl_gram.y" { plpgsql_curr_compile->resolve_option = PLPGSQL_RESOLVE_VARIABLE; ;} break; case 9: -#line 394 "pl_gram.y" +#line 392 "pl_gram.y" { plpgsql_curr_compile->resolve_option = PLPGSQL_RESOLVE_COLUMN; ;} break; case 10: -#line 400 "pl_gram.y" +#line 398 "pl_gram.y" { (yyval.str) = (yyvsp[(1) - (1)].word).ident; ;} break; case 11: -#line 404 "pl_gram.y" +#line 402 "pl_gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; case 14: -#line 413 "pl_gram.y" +#line 411 "pl_gram.y" { PLpgSQL_stmt_block *new; @@ -2513,7 +2503,7 @@ yyparse () break; case 15: -#line 436 "pl_gram.y" +#line 434 "pl_gram.y" { /* done with decls, so resume identifier lookup */ plpgsql_IdentifierLookup = IDENTIFIER_LOOKUP_NORMAL; @@ -2524,7 +2514,7 @@ yyparse () break; case 16: -#line 444 "pl_gram.y" +#line 442 "pl_gram.y" { plpgsql_IdentifierLookup = IDENTIFIER_LOOKUP_NORMAL; (yyval.declhdr).label = (yyvsp[(1) - (2)].str); @@ -2534,7 +2524,7 @@ yyparse () break; case 17: -#line 451 "pl_gram.y" +#line 449 "pl_gram.y" { plpgsql_IdentifierLookup = IDENTIFIER_LOOKUP_NORMAL; (yyval.declhdr).label = (yyvsp[(1) - (3)].str); @@ -2544,7 +2534,7 @@ yyparse () break; case 18: -#line 460 "pl_gram.y" +#line 458 "pl_gram.y" { /* Forget any variables created before block */ plpgsql_add_initdatums(NULL); @@ -2557,14 +2547,14 @@ yyparse () break; case 22: -#line 477 "pl_gram.y" +#line 475 "pl_gram.y" { /* We allow useless extra DECLAREs */ ;} break; case 23: -#line 481 "pl_gram.y" +#line 479 "pl_gram.y" { /* * Throw a helpful error if user tries to put block @@ -2578,7 +2568,7 @@ yyparse () break; case 24: -#line 494 "pl_gram.y" +#line 492 "pl_gram.y" { PLpgSQL_variable *var; @@ -2619,7 +2609,7 @@ yyparse () break; case 25: -#line 532 "pl_gram.y" +#line 530 "pl_gram.y" { plpgsql_ns_additem((yyvsp[(4) - (5)].nsitem)->itemtype, (yyvsp[(4) - (5)].nsitem)->itemno, (yyvsp[(1) - (5)].varname).name); @@ -2627,18 +2617,14 @@ yyparse () break; case 26: -#line 537 "pl_gram.y" +#line 535 "pl_gram.y" { plpgsql_ns_push((yyvsp[(1) - (3)].varname).name, PLPGSQL_LABEL_OTHER); ;} break; case 27: -#line 539 "pl_gram.y" +#line 537 "pl_gram.y" { PLpgSQL_var *new; - PLpgSQL_expr *curname_def; - char buf[NAMEDATALEN * 2 + 64]; - char *cp1; - char *cp2; /* pop local namespace for cursor args */ plpgsql_ns_pop(); @@ -2651,29 +2637,6 @@ yyparse () NULL), true); - curname_def = palloc0(sizeof(PLpgSQL_expr)); - - /* Note: refname has been truncated to NAMEDATALEN */ - cp1 = new->refname; - cp2 = buf; - /* - * Don't trust standard_conforming_strings here; - * it might change before we use the string. - */ - if (strchr(cp1, '\\') != NULL) - *cp2++ = ESCAPE_STRING_SYNTAX; - *cp2++ = '\''; - while (*cp1) - { - if (SQL_STR_DOUBLE(*cp1, true)) - *cp2++ = *cp1; - *cp2++ = *cp1++; - } - strcpy(cp2, "'::pg_catalog.refcursor"); - curname_def->query = pstrdup(buf); - curname_def->parseMode = RAW_PARSE_PLPGSQL_EXPR; - new->default_val = curname_def; - new->cursor_explicit_expr = (yyvsp[(7) - (7)].expr); if ((yyvsp[(5) - (7)].datum) == NULL) new->cursor_explicit_argrow = -1; @@ -2684,42 +2647,42 @@ yyparse () break; case 28: -#line 590 "pl_gram.y" +#line 561 "pl_gram.y" { (yyval.ival) = 0; ;} break; case 29: -#line 594 "pl_gram.y" +#line 565 "pl_gram.y" { (yyval.ival) = CURSOR_OPT_NO_SCROLL; ;} break; case 30: -#line 598 "pl_gram.y" +#line 569 "pl_gram.y" { (yyval.ival) = CURSOR_OPT_SCROLL; ;} break; case 31: -#line 604 "pl_gram.y" +#line 575 "pl_gram.y" { (yyval.expr) = read_sql_stmt(); ;} break; case 32: -#line 610 "pl_gram.y" +#line 581 "pl_gram.y" { (yyval.datum) = NULL; ;} break; case 33: -#line 614 "pl_gram.y" +#line 585 "pl_gram.y" { PLpgSQL_row *new; int i; @@ -2751,21 +2714,21 @@ yyparse () break; case 34: -#line 645 "pl_gram.y" +#line 616 "pl_gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].datum)); ;} break; case 35: -#line 649 "pl_gram.y" +#line 620 "pl_gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].datum)); ;} break; case 36: -#line 655 "pl_gram.y" +#line 626 "pl_gram.y" { (yyval.datum) = (PLpgSQL_datum *) plpgsql_build_variable((yyvsp[(1) - (2)].varname).name, (yyvsp[(1) - (2)].varname).lineno, @@ -2774,7 +2737,7 @@ yyparse () break; case 39: -#line 666 "pl_gram.y" +#line 637 "pl_gram.y" { PLpgSQL_nsitem *nsi; @@ -2792,7 +2755,7 @@ yyparse () break; case 40: -#line 681 "pl_gram.y" +#line 652 "pl_gram.y" { PLpgSQL_nsitem *nsi; @@ -2810,7 +2773,7 @@ yyparse () break; case 41: -#line 696 "pl_gram.y" +#line 667 "pl_gram.y" { PLpgSQL_nsitem *nsi; @@ -2839,7 +2802,7 @@ yyparse () break; case 42: -#line 724 "pl_gram.y" +#line 695 "pl_gram.y" { (yyval.varname).name = (yyvsp[(1) - (1)].word).ident; (yyval.varname).lineno = plpgsql_location_to_lineno((yylsp[(1) - (1)])); @@ -2870,7 +2833,7 @@ yyparse () break; case 43: -#line 752 "pl_gram.y" +#line 723 "pl_gram.y" { (yyval.varname).name = pstrdup((yyvsp[(1) - (1)].keyword)); (yyval.varname).lineno = plpgsql_location_to_lineno((yylsp[(1) - (1)])); @@ -2901,17 +2864,17 @@ yyparse () break; case 44: -#line 782 "pl_gram.y" +#line 753 "pl_gram.y" { (yyval.boolean) = false; ;} break; case 45: -#line 784 "pl_gram.y" +#line 755 "pl_gram.y" { (yyval.boolean) = true; ;} break; case 46: -#line 788 "pl_gram.y" +#line 759 "pl_gram.y" { /* * If there's a lookahead token, read_datatype @@ -2923,12 +2886,12 @@ yyparse () break; case 47: -#line 799 "pl_gram.y" +#line 770 "pl_gram.y" { (yyval.oid) = InvalidOid; ;} break; case 48: -#line 801 "pl_gram.y" +#line 772 "pl_gram.y" { (yyval.oid) = get_collation_oid(list_make1(makeString((yyvsp[(2) - (2)].word).ident)), false); @@ -2936,7 +2899,7 @@ yyparse () break; case 49: -#line 806 "pl_gram.y" +#line 777 "pl_gram.y" { (yyval.oid) = get_collation_oid(list_make1(makeString(pstrdup((yyvsp[(2) - (2)].keyword)))), false); @@ -2944,41 +2907,41 @@ yyparse () break; case 50: -#line 811 "pl_gram.y" +#line 782 "pl_gram.y" { (yyval.oid) = get_collation_oid((yyvsp[(2) - (2)].cword).idents, false); ;} break; case 51: -#line 817 "pl_gram.y" +#line 788 "pl_gram.y" { (yyval.boolean) = false; ;} break; case 52: -#line 819 "pl_gram.y" +#line 790 "pl_gram.y" { (yyval.boolean) = true; ;} break; case 53: -#line 823 "pl_gram.y" +#line 794 "pl_gram.y" { (yyval.expr) = NULL; ;} break; case 54: -#line 825 "pl_gram.y" +#line 796 "pl_gram.y" { (yyval.expr) = read_sql_expression(';', ";"); ;} break; case 59: -#line 844 "pl_gram.y" +#line 815 "pl_gram.y" { (yyval.list) = NIL; ;} break; case 60: -#line 846 "pl_gram.y" +#line 817 "pl_gram.y" { /* don't bother linking null statements into list */ if ((yyvsp[(2) - (2)].stmt) == NULL) @@ -2989,127 +2952,127 @@ yyparse () break; case 61: -#line 856 "pl_gram.y" +#line 827 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (2)].stmt); ;} break; case 62: -#line 858 "pl_gram.y" +#line 829 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 63: -#line 860 "pl_gram.y" +#line 831 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 64: -#line 862 "pl_gram.y" +#line 833 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 65: -#line 864 "pl_gram.y" +#line 835 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 66: -#line 866 "pl_gram.y" +#line 837 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 67: -#line 868 "pl_gram.y" +#line 839 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 68: -#line 870 "pl_gram.y" +#line 841 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 69: -#line 872 "pl_gram.y" +#line 843 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 70: -#line 874 "pl_gram.y" +#line 845 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 71: -#line 876 "pl_gram.y" +#line 847 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 72: -#line 878 "pl_gram.y" +#line 849 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 73: -#line 880 "pl_gram.y" +#line 851 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 74: -#line 882 "pl_gram.y" +#line 853 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 75: -#line 884 "pl_gram.y" +#line 855 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 76: -#line 886 "pl_gram.y" +#line 857 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 77: -#line 888 "pl_gram.y" +#line 859 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 78: -#line 890 "pl_gram.y" +#line 861 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 79: -#line 892 "pl_gram.y" +#line 863 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 80: -#line 894 "pl_gram.y" +#line 865 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 81: -#line 896 "pl_gram.y" +#line 867 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 82: -#line 898 "pl_gram.y" +#line 869 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 83: -#line 900 "pl_gram.y" +#line 871 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 84: -#line 902 "pl_gram.y" +#line 873 "pl_gram.y" { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); ;} break; case 85: -#line 906 "pl_gram.y" +#line 877 "pl_gram.y" { PLpgSQL_stmt_perform *new; int startloc; @@ -3146,7 +3109,7 @@ yyparse () break; case 86: -#line 942 "pl_gram.y" +#line 913 "pl_gram.y" { PLpgSQL_stmt_call *new; @@ -3167,7 +3130,7 @@ yyparse () break; case 87: -#line 960 "pl_gram.y" +#line 931 "pl_gram.y" { /* use the same structures as for CALL, for simplicity */ PLpgSQL_stmt_call *new; @@ -3189,7 +3152,7 @@ yyparse () break; case 88: -#line 981 "pl_gram.y" +#line 952 "pl_gram.y" { PLpgSQL_stmt_assign *new; RawParseMode pmode; @@ -3229,7 +3192,7 @@ yyparse () break; case 89: -#line 1020 "pl_gram.y" +#line 991 "pl_gram.y" { PLpgSQL_stmt_getdiag *new; ListCell *lc; @@ -3252,6 +3215,7 @@ yyparse () { /* these fields are disallowed in stacked case */ case PLPGSQL_GETDIAG_ROW_COUNT: + case PLPGSQL_GETDIAG_ROUTINE_OID: if (new->is_stacked) ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), @@ -3292,42 +3256,42 @@ yyparse () break; case 90: -#line 1082 "pl_gram.y" +#line 1054 "pl_gram.y" { (yyval.boolean) = false; ;} break; case 91: -#line 1086 "pl_gram.y" +#line 1058 "pl_gram.y" { (yyval.boolean) = false; ;} break; case 92: -#line 1090 "pl_gram.y" +#line 1062 "pl_gram.y" { (yyval.boolean) = true; ;} break; case 93: -#line 1096 "pl_gram.y" +#line 1068 "pl_gram.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].diagitem)); ;} break; case 94: -#line 1100 "pl_gram.y" +#line 1072 "pl_gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].diagitem)); ;} break; case 95: -#line 1106 "pl_gram.y" +#line 1078 "pl_gram.y" { PLpgSQL_diag_item *new; @@ -3340,13 +3304,16 @@ yyparse () break; case 96: -#line 1118 "pl_gram.y" +#line 1090 "pl_gram.y" { int tok = yylex(); if (tok_is_keyword(tok, &yylval, K_ROW_COUNT, "row_count")) (yyval.ival) = PLPGSQL_GETDIAG_ROW_COUNT; + else if (tok_is_keyword(tok, &yylval, + K_PG_ROUTINE_OID, "pg_routine_oid")) + (yyval.ival) = PLPGSQL_GETDIAG_ROUTINE_OID; else if (tok_is_keyword(tok, &yylval, K_PG_CONTEXT, "pg_context")) (yyval.ival) = PLPGSQL_GETDIAG_CONTEXT; @@ -3386,7 +3353,7 @@ yyparse () break; case 97: -#line 1163 "pl_gram.y" +#line 1138 "pl_gram.y" { /* * In principle we should support a getdiag_target @@ -3407,7 +3374,7 @@ yyparse () break; case 98: -#line 1181 "pl_gram.y" +#line 1156 "pl_gram.y" { /* just to give a better message than "syntax error" */ word_is_not_variable(&((yyvsp[(1) - (1)].word)), (yylsp[(1) - (1)])); @@ -3415,7 +3382,7 @@ yyparse () break; case 99: -#line 1186 "pl_gram.y" +#line 1161 "pl_gram.y" { /* just to give a better message than "syntax error" */ cword_is_not_variable(&((yyvsp[(1) - (1)].cword)), (yylsp[(1) - (1)])); @@ -3423,7 +3390,7 @@ yyparse () break; case 100: -#line 1193 "pl_gram.y" +#line 1168 "pl_gram.y" { PLpgSQL_stmt_if *new; @@ -3441,14 +3408,14 @@ yyparse () break; case 101: -#line 1210 "pl_gram.y" +#line 1185 "pl_gram.y" { (yyval.list) = NIL; ;} break; case 102: -#line 1214 "pl_gram.y" +#line 1189 "pl_gram.y" { PLpgSQL_if_elsif *new; @@ -3462,28 +3429,28 @@ yyparse () break; case 103: -#line 1227 "pl_gram.y" +#line 1202 "pl_gram.y" { (yyval.list) = NIL; ;} break; case 104: -#line 1231 "pl_gram.y" +#line 1206 "pl_gram.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; case 105: -#line 1237 "pl_gram.y" +#line 1212 "pl_gram.y" { (yyval.stmt) = make_case((yylsp[(1) - (7)]), (yyvsp[(2) - (7)].expr), (yyvsp[(3) - (7)].list), (yyvsp[(4) - (7)].list)); ;} break; case 106: -#line 1243 "pl_gram.y" +#line 1218 "pl_gram.y" { PLpgSQL_expr *expr = NULL; int tok = yylex(); @@ -3499,21 +3466,21 @@ yyparse () break; case 107: -#line 1258 "pl_gram.y" +#line 1233 "pl_gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].casewhen)); ;} break; case 108: -#line 1262 "pl_gram.y" +#line 1237 "pl_gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].casewhen)); ;} break; case 109: -#line 1268 "pl_gram.y" +#line 1243 "pl_gram.y" { PLpgSQL_case_when *new = palloc(sizeof(PLpgSQL_case_when)); @@ -3525,14 +3492,14 @@ yyparse () break; case 110: -#line 1279 "pl_gram.y" +#line 1254 "pl_gram.y" { (yyval.list) = NIL; ;} break; case 111: -#line 1283 "pl_gram.y" +#line 1258 "pl_gram.y" { /* * proc_sect could return an empty list, but we @@ -3548,7 +3515,7 @@ yyparse () break; case 112: -#line 1298 "pl_gram.y" +#line 1273 "pl_gram.y" { PLpgSQL_stmt_loop *new; @@ -3567,7 +3534,7 @@ yyparse () break; case 113: -#line 1316 "pl_gram.y" +#line 1291 "pl_gram.y" { PLpgSQL_stmt_while *new; @@ -3587,7 +3554,7 @@ yyparse () break; case 114: -#line 1335 "pl_gram.y" +#line 1310 "pl_gram.y" { /* This runs after we've scanned the loop body */ if ((yyvsp[(3) - (4)].stmt)->cmd_type == PLPGSQL_STMT_FORI) @@ -3622,7 +3589,7 @@ yyparse () break; case 115: -#line 1369 "pl_gram.y" +#line 1344 "pl_gram.y" { int tok = yylex(); int tokloc = yylloc; @@ -3864,7 +3831,7 @@ yyparse () break; case 116: -#line 1628 "pl_gram.y" +#line 1603 "pl_gram.y" { (yyval.forvariable).name = NameOfDatum(&((yyvsp[(1) - (1)].wdatum))); (yyval.forvariable).lineno = plpgsql_location_to_lineno((yylsp[(1) - (1)])); @@ -3893,7 +3860,7 @@ yyparse () break; case 117: -#line 1654 "pl_gram.y" +#line 1629 "pl_gram.y" { int tok; @@ -3910,7 +3877,7 @@ yyparse () break; case 118: -#line 1668 "pl_gram.y" +#line 1643 "pl_gram.y" { /* just to give a better message than "syntax error" */ cword_is_not_variable(&((yyvsp[(1) - (1)].cword)), (yylsp[(1) - (1)])); @@ -3918,7 +3885,7 @@ yyparse () break; case 119: -#line 1675 "pl_gram.y" +#line 1650 "pl_gram.y" { PLpgSQL_stmt_foreach_a *new; @@ -3957,21 +3924,21 @@ yyparse () break; case 120: -#line 1713 "pl_gram.y" +#line 1688 "pl_gram.y" { (yyval.ival) = 0; ;} break; case 121: -#line 1717 "pl_gram.y" +#line 1692 "pl_gram.y" { (yyval.ival) = (yyvsp[(2) - (2)].ival); ;} break; case 122: -#line 1723 "pl_gram.y" +#line 1698 "pl_gram.y" { PLpgSQL_stmt_exit *new; @@ -4025,21 +3992,21 @@ yyparse () break; case 123: -#line 1776 "pl_gram.y" +#line 1751 "pl_gram.y" { (yyval.boolean) = true; ;} break; case 124: -#line 1780 "pl_gram.y" +#line 1755 "pl_gram.y" { (yyval.boolean) = false; ;} break; case 125: -#line 1786 "pl_gram.y" +#line 1761 "pl_gram.y" { int tok; @@ -4066,7 +4033,7 @@ yyparse () break; case 126: -#line 1812 "pl_gram.y" +#line 1787 "pl_gram.y" { PLpgSQL_stmt_raise *new; int tok; @@ -4212,7 +4179,7 @@ yyparse () break; case 127: -#line 1957 "pl_gram.y" +#line 1932 "pl_gram.y" { PLpgSQL_stmt_assert *new; int tok; @@ -4237,7 +4204,7 @@ yyparse () break; case 128: -#line 1981 "pl_gram.y" +#line 1956 "pl_gram.y" { (yyval.loop_body).stmts = (yyvsp[(1) - (5)].list); (yyval.loop_body).end_label = (yyvsp[(4) - (5)].str); @@ -4246,28 +4213,28 @@ yyparse () break; case 129: -#line 1999 "pl_gram.y" +#line 1974 "pl_gram.y" { (yyval.stmt) = make_execsql_stmt(K_IMPORT, (yylsp[(1) - (1)])); ;} break; case 130: -#line 2003 "pl_gram.y" +#line 1978 "pl_gram.y" { (yyval.stmt) = make_execsql_stmt(K_INSERT, (yylsp[(1) - (1)])); ;} break; case 131: -#line 2007 "pl_gram.y" +#line 1982 "pl_gram.y" { (yyval.stmt) = make_execsql_stmt(K_MERGE, (yylsp[(1) - (1)])); ;} break; case 132: -#line 2011 "pl_gram.y" +#line 1986 "pl_gram.y" { int tok; @@ -4281,7 +4248,7 @@ yyparse () break; case 133: -#line 2022 "pl_gram.y" +#line 1997 "pl_gram.y" { int tok; @@ -4295,7 +4262,7 @@ yyparse () break; case 134: -#line 2035 "pl_gram.y" +#line 2010 "pl_gram.y" { PLpgSQL_stmt_dynexecute *new; PLpgSQL_expr *expr; @@ -4359,7 +4326,7 @@ yyparse () break; case 135: -#line 2099 "pl_gram.y" +#line 2074 "pl_gram.y" { PLpgSQL_stmt_open *new; int tok; @@ -4438,7 +4405,7 @@ yyparse () break; case 136: -#line 2177 "pl_gram.y" +#line 2152 "pl_gram.y" { PLpgSQL_stmt_fetch *fetch = (yyvsp[(2) - (4)].fetch); PLpgSQL_variable *target; @@ -4469,7 +4436,7 @@ yyparse () break; case 137: -#line 2207 "pl_gram.y" +#line 2182 "pl_gram.y" { PLpgSQL_stmt_fetch *fetch = (yyvsp[(2) - (4)].fetch); @@ -4482,14 +4449,14 @@ yyparse () break; case 138: -#line 2219 "pl_gram.y" +#line 2194 "pl_gram.y" { (yyval.fetch) = read_fetch_direction(); ;} break; case 139: -#line 2225 "pl_gram.y" +#line 2200 "pl_gram.y" { PLpgSQL_stmt_close *new; @@ -4504,7 +4471,7 @@ yyparse () break; case 140: -#line 2239 "pl_gram.y" +#line 2214 "pl_gram.y" { /* We do not bother building a node for NULL */ (yyval.stmt) = NULL; @@ -4512,7 +4479,7 @@ yyparse () break; case 141: -#line 2246 "pl_gram.y" +#line 2221 "pl_gram.y" { PLpgSQL_stmt_commit *new; @@ -4527,7 +4494,7 @@ yyparse () break; case 142: -#line 2260 "pl_gram.y" +#line 2235 "pl_gram.y" { PLpgSQL_stmt_rollback *new; @@ -4542,22 +4509,22 @@ yyparse () break; case 143: -#line 2274 "pl_gram.y" +#line 2249 "pl_gram.y" { (yyval.ival) = true; ;} break; case 144: -#line 2275 "pl_gram.y" +#line 2250 "pl_gram.y" { (yyval.ival) = false; ;} break; case 145: -#line 2276 "pl_gram.y" +#line 2251 "pl_gram.y" { (yyval.ival) = false; ;} break; case 146: -#line 2281 "pl_gram.y" +#line 2256 "pl_gram.y" { /* * In principle we should support a cursor_variable @@ -4582,7 +4549,7 @@ yyparse () break; case 147: -#line 2303 "pl_gram.y" +#line 2278 "pl_gram.y" { /* just to give a better message than "syntax error" */ word_is_not_variable(&((yyvsp[(1) - (1)].word)), (yylsp[(1) - (1)])); @@ -4590,7 +4557,7 @@ yyparse () break; case 148: -#line 2308 "pl_gram.y" +#line 2283 "pl_gram.y" { /* just to give a better message than "syntax error" */ cword_is_not_variable(&((yyvsp[(1) - (1)].cword)), (yylsp[(1) - (1)])); @@ -4598,12 +4565,12 @@ yyparse () break; case 149: -#line 2315 "pl_gram.y" +#line 2290 "pl_gram.y" { (yyval.exception_block) = NULL; ;} break; case 150: -#line 2317 "pl_gram.y" +#line 2292 "pl_gram.y" { /* * We use a mid-rule action to add these @@ -4639,7 +4606,7 @@ yyparse () break; case 151: -#line 2350 "pl_gram.y" +#line 2325 "pl_gram.y" { PLpgSQL_exception_block *new = (yyvsp[(2) - (3)].exception_block); new->exc_list = (yyvsp[(3) - (3)].list); @@ -4649,21 +4616,21 @@ yyparse () break; case 152: -#line 2359 "pl_gram.y" +#line 2334 "pl_gram.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].exception)); ;} break; case 153: -#line 2363 "pl_gram.y" +#line 2338 "pl_gram.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].exception)); ;} break; case 154: -#line 2369 "pl_gram.y" +#line 2344 "pl_gram.y" { PLpgSQL_exception *new; @@ -4677,7 +4644,7 @@ yyparse () break; case 155: -#line 2382 "pl_gram.y" +#line 2357 "pl_gram.y" { PLpgSQL_condition *old; @@ -4689,14 +4656,14 @@ yyparse () break; case 156: -#line 2391 "pl_gram.y" +#line 2366 "pl_gram.y" { (yyval.condition) = (yyvsp[(1) - (1)].condition); ;} break; case 157: -#line 2397 "pl_gram.y" +#line 2372 "pl_gram.y" { if (strcmp((yyvsp[(1) - (1)].str), "sqlstate") != 0) { @@ -4733,22 +4700,22 @@ yyparse () break; case 158: -#line 2433 "pl_gram.y" +#line 2408 "pl_gram.y" { (yyval.expr) = read_sql_expression(';', ";"); ;} break; case 159: -#line 2437 "pl_gram.y" +#line 2412 "pl_gram.y" { (yyval.expr) = read_sql_expression(K_THEN, "THEN"); ;} break; case 160: -#line 2441 "pl_gram.y" +#line 2416 "pl_gram.y" { (yyval.expr) = read_sql_expression(K_LOOP, "LOOP"); ;} break; case 161: -#line 2445 "pl_gram.y" +#line 2420 "pl_gram.y" { plpgsql_ns_push(NULL, PLPGSQL_LABEL_BLOCK); (yyval.str) = NULL; @@ -4756,7 +4723,7 @@ yyparse () break; case 162: -#line 2450 "pl_gram.y" +#line 2425 "pl_gram.y" { plpgsql_ns_push((yyvsp[(2) - (3)].str), PLPGSQL_LABEL_BLOCK); (yyval.str) = (yyvsp[(2) - (3)].str); @@ -4764,7 +4731,7 @@ yyparse () break; case 163: -#line 2457 "pl_gram.y" +#line 2432 "pl_gram.y" { plpgsql_ns_push(NULL, PLPGSQL_LABEL_LOOP); (yyval.str) = NULL; @@ -4772,7 +4739,7 @@ yyparse () break; case 164: -#line 2462 "pl_gram.y" +#line 2437 "pl_gram.y" { plpgsql_ns_push((yyvsp[(2) - (3)].str), PLPGSQL_LABEL_LOOP); (yyval.str) = (yyvsp[(2) - (3)].str); @@ -4780,14 +4747,14 @@ yyparse () break; case 165: -#line 2469 "pl_gram.y" +#line 2444 "pl_gram.y" { (yyval.str) = NULL; ;} break; case 166: -#line 2473 "pl_gram.y" +#line 2448 "pl_gram.y" { /* label validity will be checked by outer production */ (yyval.str) = (yyvsp[(1) - (1)].str); @@ -4795,31 +4762,31 @@ yyparse () break; case 167: -#line 2480 "pl_gram.y" +#line 2455 "pl_gram.y" { (yyval.expr) = NULL; ;} break; case 168: -#line 2482 "pl_gram.y" +#line 2457 "pl_gram.y" { (yyval.expr) = (yyvsp[(2) - (2)].expr); ;} break; case 169: -#line 2489 "pl_gram.y" +#line 2464 "pl_gram.y" { (yyval.str) = (yyvsp[(1) - (1)].word).ident; ;} break; case 170: -#line 2493 "pl_gram.y" +#line 2468 "pl_gram.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; case 171: -#line 2497 "pl_gram.y" +#line 2472 "pl_gram.y" { if ((yyvsp[(1) - (1)].wdatum).ident == NULL) /* composite name not OK */ yyerror("syntax error"); @@ -4829,7 +4796,7 @@ yyparse () /* Line 1267 of yacc.c. */ -#line 4780 "pl_gram.c" +#line 4747 "pl_gram.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -5049,7 +5016,7 @@ yyparse () } -#line 2588 "pl_gram.y" +#line 2564 "pl_gram.y" /* diff --git a/parser/src_pl_plpgsql_src_pl_handler.c b/parser/src_pl_plpgsql_src_pl_handler.c index 26aa5912..873a9303 100644 --- a/parser/src_pl_plpgsql_src_pl_handler.c +++ b/parser/src_pl_plpgsql_src_pl_handler.c @@ -10,7 +10,7 @@ * pl_handler.c - Handler for the PL/pgSQL * procedural language * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_pl_plpgsql_src_pl_reserved_kwlist_d.h b/parser/src_pl_plpgsql_src_pl_reserved_kwlist_d.h index 5051c0a8..94e473e9 100644 --- a/parser/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +++ b/parser/src_pl_plpgsql_src_pl_reserved_kwlist_d.h @@ -12,7 +12,7 @@ * pl_reserved_kwlist_d.h * List of keywords represented as a ScanKeywordList. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES diff --git a/parser/src_pl_plpgsql_src_pl_scanner.c b/parser/src_pl_plpgsql_src_pl_scanner.c index ca623332..29a5c8ea 100644 --- a/parser/src_pl_plpgsql_src_pl_scanner.c +++ b/parser/src_pl_plpgsql_src_pl_scanner.c @@ -38,7 +38,7 @@ * lexical scanning for PL/pgSQL * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h b/parser/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h index 9e88f136..4ff19629 100644 --- a/parser/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +++ b/parser/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h @@ -12,7 +12,7 @@ * pl_unreserved_kwlist_d.h * List of keywords represented as a ScanKeywordList. * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * NOTES @@ -89,6 +89,7 @@ static const char UnreservedPLKeywords_kw_string[] = "pg_exception_context\0" "pg_exception_detail\0" "pg_exception_hint\0" + "pg_routine_oid\0" "print_strict_params\0" "prior\0" "query\0" @@ -174,63 +175,64 @@ static const uint16 UnreservedPLKeywords_kw_offsets[] = { 420, 440, 458, - 478, - 484, - 490, - 496, + 473, + 493, + 499, 505, - 512, - 530, - 538, - 547, - 557, - 565, + 511, + 520, + 527, + 545, + 553, + 562, 572, - 584, - 591, - 597, + 580, + 587, + 599, 606, - 614, - 620, - 631, - 636, - 647, - 660, - 678, + 612, + 621, + 629, + 635, + 646, + 651, + 662, + 675, + 693, }; -#define UNRESERVEDPLKEYWORDS_NUM_KEYWORDS 82 +#define UNRESERVEDPLKEYWORDS_NUM_KEYWORDS 83 static int UnreservedPLKeywords_hash_func(const void *key, size_t keylen) { - static const int16 h[165] = { - 58, 0, 26, 32767, 0, 0, 9, 32767, - 0, 32767, 37, 74, 32767, -7, 32767, 39, - 58, -5, 32767, 31, 32767, 32767, 75, -23, - 32767, 0, 32767, 32767, 32767, -14, 32767, 81, - 32767, 32767, 32767, -36, -9, 32767, 32767, 32767, - 40, 32767, 54, 10, 11, 43, 32767, 0, - 52, 105, -22, 15, 32767, -33, 49, -65, - 48, 32767, 32767, 32767, 25, 49, -47, 37, - 21, 32767, 32767, -15, 70, 32767, 32767, 64, - -10, 126, 32767, 51, 0, 36, 32767, -55, - -22, 32767, 32767, 32767, 32767, 32767, -26, -35, - 32767, 61, 32767, 32767, 32767, -23, 98, 48, - 23, 19, 32767, 7, 35, 5, -18, 71, - 28, 5, 32767, 32767, 32767, 74, 32767, 82, - 32767, 0, 32767, 32767, 66, 0, 0, 50, - 32767, 32767, 5, 2, 0, 32767, 55, 32767, - 32767, 45, 79, 32767, 32767, 73, 22, 0, - 103, 32767, -20, 72, 32767, 0, 29, 32767, - 0, 32767, 32767, 0, 50, 28, 32767, -40, - 32767, 32767, 34, 56, 32767, 32767, 32767, 17, - -36, 32767, 67, 32767, 0 + static const int16 h[167] = { + 0, -26, 32767, 0, 74, -36, 32767, 32767, + 93, 0, 35, 14, 34, -65, -42, 78, + -22, 8, 10, 0, 5, 32767, 10, 26, + 32767, 4, 32767, 32767, -81, -9, -25, 32767, + -17, 11, 0, -43, 11, 8, 45, 0, + 32767, 32767, 32767, 12, 0, 32767, 32, 32767, + 0, 32767, -18, 64, 32767, -2, 31, 32767, + 50, 80, -75, 32767, 32767, 32767, 0, 32767, + 32767, 0, 54, 82, 32767, 32767, 69, 60, + 43, 32767, 0, 95, 21, 1, 27, 0, + 120, 32767, -46, 32767, -57, 32767, 32767, 55, + 70, 32767, 28, 32767, 0, -14, -38, 32767, + 57, 0, 32767, 19, 98, 0, 32767, 68, + 32767, 32767, 32767, 32767, -26, 13, 27, 35, + 37, 32767, 49, -44, 65, -35, 0, 32767, + 32767, 32767, 30, 0, 0, 32767, 26, 42, + 7, 32767, 72, -43, 32767, 0, 32767, 89, + 36, 48, 32767, 32, 38, 3, 32767, 49, + 32767, 0, 51, 0, 32767, 73, 32767, 32767, + 79, 32767, 30, 32767, 0, 0, 50, 32767, + 0, 32767, 32767, 32767, 0, 32767, 32767 }; const unsigned char *k = (const unsigned char *) key; uint32 a = 0; - uint32 b = 0; + uint32 b = 1; while (keylen--) { @@ -239,7 +241,7 @@ UnreservedPLKeywords_hash_func(const void *key, size_t keylen) a = a * 257 + c; b = b * 8191 + c; } - return h[a % 165] + h[b % 165]; + return h[a % 167] + h[b % 167]; } static const ScanKeywordList UnreservedPLKeywords = { diff --git a/parser/src_port_pg_bitutils.c b/parser/src_port_pg_bitutils.c index 6889b8a7..aa6514ad 100644 --- a/parser/src_port_pg_bitutils.c +++ b/parser/src_port_pg_bitutils.c @@ -10,7 +10,7 @@ * pg_bitutils.c * Miscellaneous functions for bit-wise operations. * - * Copyright (c) 2019-2022, PostgreSQL Global Development Group + * Copyright (c) 2019-2023, PostgreSQL Global Development Group * * IDENTIFICATION * src/port/pg_bitutils.c diff --git a/parser/src_port_pgsleep.c b/parser/src_port_pgsleep.c deleted file mode 100644 index e1e87c16..00000000 --- a/parser/src_port_pgsleep.c +++ /dev/null @@ -1,69 +0,0 @@ -/*-------------------------------------------------------------------- - * Symbols referenced in this file: - * - pg_usleep - *-------------------------------------------------------------------- - */ - -/*------------------------------------------------------------------------- - * - * pgsleep.c - * Portable delay handling. - * - * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group - * - * src/port/pgsleep.c - * - *------------------------------------------------------------------------- - */ -#include "c.h" - -#include -#include -#ifdef HAVE_SYS_SELECT_H -#include -#endif - -/* - * In a Windows backend, we don't use this implementation, but rather - * the signal-aware version in src/backend/port/win32/signal.c. - */ -#if defined(FRONTEND) || !defined(WIN32) - -/* - * pg_usleep --- delay the specified number of microseconds. - * - * NOTE: although the delay is specified in microseconds, the effective - * resolution is only 1/HZ, or 10 milliseconds, on most Unixen. Expect - * the requested delay to be rounded up to the next resolution boundary. - * - * On machines where "long" is 32 bits, the maximum delay is ~2000 seconds. - * - * CAUTION: the behavior when a signal arrives during the sleep is platform - * dependent. On most Unix-ish platforms, a signal does not terminate the - * sleep; but on some, it will (the Windows implementation also allows signals - * to terminate pg_usleep). And there are platforms where not only does a - * signal not terminate the sleep, but it actually resets the timeout counter - * so that the sleep effectively starts over! It is therefore rather hazardous - * to use this for long sleeps; a continuing stream of signal events could - * prevent the sleep from ever terminating. Better practice for long sleeps - * is to use WaitLatch() with a timeout. - */ -void -pg_usleep(long microsec) -{ - if (microsec > 0) - { -#ifndef WIN32 - struct timeval delay; - - delay.tv_sec = microsec / 1000000L; - delay.tv_usec = microsec % 1000000L; - (void) select(0, NULL, NULL, NULL, &delay); -#else - SleepEx((microsec < 500 ? 1 : (microsec + 500) / 1000), FALSE); -#endif - } -} - -#endif /* defined(FRONTEND) || !defined(WIN32) */ diff --git a/parser/src_port_pgstrcasecmp.c b/parser/src_port_pgstrcasecmp.c index efa35edd..eb607083 100644 --- a/parser/src_port_pgstrcasecmp.c +++ b/parser/src_port_pgstrcasecmp.c @@ -1,5 +1,6 @@ /*-------------------------------------------------------------------- * Symbols referenced in this file: + * - pg_strcasecmp * - pg_toupper *-------------------------------------------------------------------- */ @@ -24,7 +25,7 @@ * C library thinks the locale is. * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * * src/port/pgstrcasecmp.c * @@ -38,7 +39,34 @@ /* * Case-independent comparison of two null-terminated strings. */ +int +pg_strcasecmp(const char *s1, const char *s2) +{ + for (;;) + { + unsigned char ch1 = (unsigned char) *s1++; + unsigned char ch2 = (unsigned char) *s2++; + + if (ch1 != ch2) + { + if (ch1 >= 'A' && ch1 <= 'Z') + ch1 += 'a' - 'A'; + else if (IS_HIGHBIT_SET(ch1) && isupper(ch1)) + ch1 = tolower(ch1); + if (ch2 >= 'A' && ch2 <= 'Z') + ch2 += 'a' - 'A'; + else if (IS_HIGHBIT_SET(ch2) && isupper(ch2)) + ch2 = tolower(ch2); + + if (ch1 != ch2) + return (int) ch1 - (int) ch2; + } + if (ch1 == 0) + break; + } + return 0; +} /* * Case-independent comparison of two not-necessarily-null-terminated strings. diff --git a/parser/src_port_snprintf.c b/parser/src_port_snprintf.c index 37cb3581..d119ca05 100644 --- a/parser/src_port_snprintf.c +++ b/parser/src_port_snprintf.c @@ -30,7 +30,7 @@ * Copyright (c) 1983, 1995, 1996 Eric P. Allman * Copyright (c) 1988, 1993 * The Regents of the University of California. All rights reserved. - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -780,12 +780,8 @@ find_arguments(const char *format, va_list args, int longflag; int fmtpos; int i; - int last_dollar; - PrintfArgType argtypes[PG_NL_ARGMAX + 1]; - - /* Initialize to "no dollar arguments known" */ - last_dollar = 0; - MemSet(argtypes, 0, sizeof(argtypes)); + int last_dollar = 0; /* Init to "no dollar arguments known" */ + PrintfArgType argtypes[PG_NL_ARGMAX + 1] = {0}; /* * This loop must accept the same format strings as the one in dopr(). diff --git a/parser/src_port_strerror.c b/parser/src_port_strerror.c index 45686d38..5ce298f3 100644 --- a/parser/src_port_strerror.c +++ b/parser/src_port_strerror.c @@ -11,7 +11,7 @@ * strerror.c * Replacements for standard strerror() and strerror_r() functions * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * diff --git a/parser/src_port_strnlen.c b/parser/src_port_strnlen.c index 91e640f4..477436af 100644 --- a/parser/src_port_strnlen.c +++ b/parser/src_port_strnlen.c @@ -10,7 +10,7 @@ * Fallback implementation of strnlen(). * * - * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group + * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION diff --git a/pg_query.go b/pg_query.go index 0c621f04..8fca99db 100644 --- a/pg_query.go +++ b/pg_query.go @@ -6,7 +6,7 @@ package pg_query import ( "google.golang.org/protobuf/proto" - "github.com/pganalyze/pg_query_go/v4/parser" + "github.com/pganalyze/pg_query_go/v5/parser" ) func Scan(input string) (result *ScanResult, err error) { diff --git a/pg_query.pb.go b/pg_query.pb.go index 057a989a..07a816b0 100644 --- a/pg_query.pb.go +++ b/pg_query.pb.go @@ -562,6 +562,58 @@ func (DefElemAction) EnumDescriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{8} } +type PartitionStrategy int32 + +const ( + PartitionStrategy_PARTITION_STRATEGY_UNDEFINED PartitionStrategy = 0 + PartitionStrategy_PARTITION_STRATEGY_LIST PartitionStrategy = 1 + PartitionStrategy_PARTITION_STRATEGY_RANGE PartitionStrategy = 2 + PartitionStrategy_PARTITION_STRATEGY_HASH PartitionStrategy = 3 +) + +// Enum value maps for PartitionStrategy. +var ( + PartitionStrategy_name = map[int32]string{ + 0: "PARTITION_STRATEGY_UNDEFINED", + 1: "PARTITION_STRATEGY_LIST", + 2: "PARTITION_STRATEGY_RANGE", + 3: "PARTITION_STRATEGY_HASH", + } + PartitionStrategy_value = map[string]int32{ + "PARTITION_STRATEGY_UNDEFINED": 0, + "PARTITION_STRATEGY_LIST": 1, + "PARTITION_STRATEGY_RANGE": 2, + "PARTITION_STRATEGY_HASH": 3, + } +) + +func (x PartitionStrategy) Enum() *PartitionStrategy { + p := new(PartitionStrategy) + *p = x + return p +} + +func (x PartitionStrategy) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (PartitionStrategy) Descriptor() protoreflect.EnumDescriptor { + return file_pg_query_proto_enumTypes[9].Descriptor() +} + +func (PartitionStrategy) Type() protoreflect.EnumType { + return &file_pg_query_proto_enumTypes[9] +} + +func (x PartitionStrategy) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use PartitionStrategy.Descriptor instead. +func (PartitionStrategy) EnumDescriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{9} +} + type PartitionRangeDatumKind int32 const ( @@ -598,11 +650,11 @@ func (x PartitionRangeDatumKind) String() string { } func (PartitionRangeDatumKind) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[9].Descriptor() + return file_pg_query_proto_enumTypes[10].Descriptor() } func (PartitionRangeDatumKind) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[9] + return &file_pg_query_proto_enumTypes[10] } func (x PartitionRangeDatumKind) Number() protoreflect.EnumNumber { @@ -611,7 +663,7 @@ func (x PartitionRangeDatumKind) Number() protoreflect.EnumNumber { // Deprecated: Use PartitionRangeDatumKind.Descriptor instead. func (PartitionRangeDatumKind) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{9} + return file_pg_query_proto_rawDescGZIP(), []int{10} } type RTEKind int32 @@ -668,11 +720,11 @@ func (x RTEKind) String() string { } func (RTEKind) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[10].Descriptor() + return file_pg_query_proto_enumTypes[11].Descriptor() } func (RTEKind) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[10] + return &file_pg_query_proto_enumTypes[11] } func (x RTEKind) Number() protoreflect.EnumNumber { @@ -681,7 +733,7 @@ func (x RTEKind) Number() protoreflect.EnumNumber { // Deprecated: Use RTEKind.Descriptor instead. func (RTEKind) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{10} + return file_pg_query_proto_rawDescGZIP(), []int{11} } type WCOKind int32 @@ -729,11 +781,11 @@ func (x WCOKind) String() string { } func (WCOKind) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[11].Descriptor() + return file_pg_query_proto_enumTypes[12].Descriptor() } func (WCOKind) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[11] + return &file_pg_query_proto_enumTypes[12] } func (x WCOKind) Number() protoreflect.EnumNumber { @@ -742,7 +794,7 @@ func (x WCOKind) Number() protoreflect.EnumNumber { // Deprecated: Use WCOKind.Descriptor instead. func (WCOKind) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{11} + return file_pg_query_proto_rawDescGZIP(), []int{12} } type GroupingSetKind int32 @@ -787,11 +839,11 @@ func (x GroupingSetKind) String() string { } func (GroupingSetKind) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[12].Descriptor() + return file_pg_query_proto_enumTypes[13].Descriptor() } func (GroupingSetKind) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[12] + return &file_pg_query_proto_enumTypes[13] } func (x GroupingSetKind) Number() protoreflect.EnumNumber { @@ -800,7 +852,7 @@ func (x GroupingSetKind) Number() protoreflect.EnumNumber { // Deprecated: Use GroupingSetKind.Descriptor instead. func (GroupingSetKind) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{12} + return file_pg_query_proto_rawDescGZIP(), []int{13} } type CTEMaterialize int32 @@ -839,11 +891,11 @@ func (x CTEMaterialize) String() string { } func (CTEMaterialize) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[13].Descriptor() + return file_pg_query_proto_enumTypes[14].Descriptor() } func (CTEMaterialize) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[13] + return &file_pg_query_proto_enumTypes[14] } func (x CTEMaterialize) Number() protoreflect.EnumNumber { @@ -852,7 +904,7 @@ func (x CTEMaterialize) Number() protoreflect.EnumNumber { // Deprecated: Use CTEMaterialize.Descriptor instead. func (CTEMaterialize) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{13} + return file_pg_query_proto_rawDescGZIP(), []int{14} } type SetOperation int32 @@ -894,11 +946,11 @@ func (x SetOperation) String() string { } func (SetOperation) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[14].Descriptor() + return file_pg_query_proto_enumTypes[15].Descriptor() } func (SetOperation) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[14] + return &file_pg_query_proto_enumTypes[15] } func (x SetOperation) Number() protoreflect.EnumNumber { @@ -907,7 +959,7 @@ func (x SetOperation) Number() protoreflect.EnumNumber { // Deprecated: Use SetOperation.Descriptor instead. func (SetOperation) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{14} + return file_pg_query_proto_rawDescGZIP(), []int{15} } type ObjectType int32 @@ -1093,11 +1145,11 @@ func (x ObjectType) String() string { } func (ObjectType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[15].Descriptor() + return file_pg_query_proto_enumTypes[16].Descriptor() } func (ObjectType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[15] + return &file_pg_query_proto_enumTypes[16] } func (x ObjectType) Number() protoreflect.EnumNumber { @@ -1106,7 +1158,7 @@ func (x ObjectType) Number() protoreflect.EnumNumber { // Deprecated: Use ObjectType.Descriptor instead. func (ObjectType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{15} + return file_pg_query_proto_rawDescGZIP(), []int{16} } type DropBehavior int32 @@ -1142,11 +1194,11 @@ func (x DropBehavior) String() string { } func (DropBehavior) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[16].Descriptor() + return file_pg_query_proto_enumTypes[17].Descriptor() } func (DropBehavior) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[16] + return &file_pg_query_proto_enumTypes[17] } func (x DropBehavior) Number() protoreflect.EnumNumber { @@ -1155,7 +1207,7 @@ func (x DropBehavior) Number() protoreflect.EnumNumber { // Deprecated: Use DropBehavior.Descriptor instead. func (DropBehavior) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{16} + return file_pg_query_proto_rawDescGZIP(), []int{17} } type AlterTableType int32 @@ -1163,76 +1215,71 @@ type AlterTableType int32 const ( AlterTableType_ALTER_TABLE_TYPE_UNDEFINED AlterTableType = 0 AlterTableType_AT_AddColumn AlterTableType = 1 - AlterTableType_AT_AddColumnRecurse AlterTableType = 2 - AlterTableType_AT_AddColumnToView AlterTableType = 3 - AlterTableType_AT_ColumnDefault AlterTableType = 4 - AlterTableType_AT_CookedColumnDefault AlterTableType = 5 - AlterTableType_AT_DropNotNull AlterTableType = 6 - AlterTableType_AT_SetNotNull AlterTableType = 7 - AlterTableType_AT_DropExpression AlterTableType = 8 - AlterTableType_AT_CheckNotNull AlterTableType = 9 - AlterTableType_AT_SetStatistics AlterTableType = 10 - AlterTableType_AT_SetOptions AlterTableType = 11 - AlterTableType_AT_ResetOptions AlterTableType = 12 - AlterTableType_AT_SetStorage AlterTableType = 13 - AlterTableType_AT_SetCompression AlterTableType = 14 - AlterTableType_AT_DropColumn AlterTableType = 15 - AlterTableType_AT_DropColumnRecurse AlterTableType = 16 - AlterTableType_AT_AddIndex AlterTableType = 17 - AlterTableType_AT_ReAddIndex AlterTableType = 18 - AlterTableType_AT_AddConstraint AlterTableType = 19 - AlterTableType_AT_AddConstraintRecurse AlterTableType = 20 - AlterTableType_AT_ReAddConstraint AlterTableType = 21 - AlterTableType_AT_ReAddDomainConstraint AlterTableType = 22 - AlterTableType_AT_AlterConstraint AlterTableType = 23 - AlterTableType_AT_ValidateConstraint AlterTableType = 24 - AlterTableType_AT_ValidateConstraintRecurse AlterTableType = 25 - AlterTableType_AT_AddIndexConstraint AlterTableType = 26 - AlterTableType_AT_DropConstraint AlterTableType = 27 - AlterTableType_AT_DropConstraintRecurse AlterTableType = 28 - AlterTableType_AT_ReAddComment AlterTableType = 29 - AlterTableType_AT_AlterColumnType AlterTableType = 30 - AlterTableType_AT_AlterColumnGenericOptions AlterTableType = 31 - AlterTableType_AT_ChangeOwner AlterTableType = 32 - AlterTableType_AT_ClusterOn AlterTableType = 33 - AlterTableType_AT_DropCluster AlterTableType = 34 - AlterTableType_AT_SetLogged AlterTableType = 35 - AlterTableType_AT_SetUnLogged AlterTableType = 36 - AlterTableType_AT_DropOids AlterTableType = 37 - AlterTableType_AT_SetAccessMethod AlterTableType = 38 - AlterTableType_AT_SetTableSpace AlterTableType = 39 - AlterTableType_AT_SetRelOptions AlterTableType = 40 - AlterTableType_AT_ResetRelOptions AlterTableType = 41 - AlterTableType_AT_ReplaceRelOptions AlterTableType = 42 - AlterTableType_AT_EnableTrig AlterTableType = 43 - AlterTableType_AT_EnableAlwaysTrig AlterTableType = 44 - AlterTableType_AT_EnableReplicaTrig AlterTableType = 45 - AlterTableType_AT_DisableTrig AlterTableType = 46 - AlterTableType_AT_EnableTrigAll AlterTableType = 47 - AlterTableType_AT_DisableTrigAll AlterTableType = 48 - AlterTableType_AT_EnableTrigUser AlterTableType = 49 - AlterTableType_AT_DisableTrigUser AlterTableType = 50 - AlterTableType_AT_EnableRule AlterTableType = 51 - AlterTableType_AT_EnableAlwaysRule AlterTableType = 52 - AlterTableType_AT_EnableReplicaRule AlterTableType = 53 - AlterTableType_AT_DisableRule AlterTableType = 54 - AlterTableType_AT_AddInherit AlterTableType = 55 - AlterTableType_AT_DropInherit AlterTableType = 56 - AlterTableType_AT_AddOf AlterTableType = 57 - AlterTableType_AT_DropOf AlterTableType = 58 - AlterTableType_AT_ReplicaIdentity AlterTableType = 59 - AlterTableType_AT_EnableRowSecurity AlterTableType = 60 - AlterTableType_AT_DisableRowSecurity AlterTableType = 61 - AlterTableType_AT_ForceRowSecurity AlterTableType = 62 - AlterTableType_AT_NoForceRowSecurity AlterTableType = 63 - AlterTableType_AT_GenericOptions AlterTableType = 64 - AlterTableType_AT_AttachPartition AlterTableType = 65 - AlterTableType_AT_DetachPartition AlterTableType = 66 - AlterTableType_AT_DetachPartitionFinalize AlterTableType = 67 - AlterTableType_AT_AddIdentity AlterTableType = 68 - AlterTableType_AT_SetIdentity AlterTableType = 69 - AlterTableType_AT_DropIdentity AlterTableType = 70 - AlterTableType_AT_ReAddStatistics AlterTableType = 71 + AlterTableType_AT_AddColumnToView AlterTableType = 2 + AlterTableType_AT_ColumnDefault AlterTableType = 3 + AlterTableType_AT_CookedColumnDefault AlterTableType = 4 + AlterTableType_AT_DropNotNull AlterTableType = 5 + AlterTableType_AT_SetNotNull AlterTableType = 6 + AlterTableType_AT_DropExpression AlterTableType = 7 + AlterTableType_AT_CheckNotNull AlterTableType = 8 + AlterTableType_AT_SetStatistics AlterTableType = 9 + AlterTableType_AT_SetOptions AlterTableType = 10 + AlterTableType_AT_ResetOptions AlterTableType = 11 + AlterTableType_AT_SetStorage AlterTableType = 12 + AlterTableType_AT_SetCompression AlterTableType = 13 + AlterTableType_AT_DropColumn AlterTableType = 14 + AlterTableType_AT_AddIndex AlterTableType = 15 + AlterTableType_AT_ReAddIndex AlterTableType = 16 + AlterTableType_AT_AddConstraint AlterTableType = 17 + AlterTableType_AT_ReAddConstraint AlterTableType = 18 + AlterTableType_AT_ReAddDomainConstraint AlterTableType = 19 + AlterTableType_AT_AlterConstraint AlterTableType = 20 + AlterTableType_AT_ValidateConstraint AlterTableType = 21 + AlterTableType_AT_AddIndexConstraint AlterTableType = 22 + AlterTableType_AT_DropConstraint AlterTableType = 23 + AlterTableType_AT_ReAddComment AlterTableType = 24 + AlterTableType_AT_AlterColumnType AlterTableType = 25 + AlterTableType_AT_AlterColumnGenericOptions AlterTableType = 26 + AlterTableType_AT_ChangeOwner AlterTableType = 27 + AlterTableType_AT_ClusterOn AlterTableType = 28 + AlterTableType_AT_DropCluster AlterTableType = 29 + AlterTableType_AT_SetLogged AlterTableType = 30 + AlterTableType_AT_SetUnLogged AlterTableType = 31 + AlterTableType_AT_DropOids AlterTableType = 32 + AlterTableType_AT_SetAccessMethod AlterTableType = 33 + AlterTableType_AT_SetTableSpace AlterTableType = 34 + AlterTableType_AT_SetRelOptions AlterTableType = 35 + AlterTableType_AT_ResetRelOptions AlterTableType = 36 + AlterTableType_AT_ReplaceRelOptions AlterTableType = 37 + AlterTableType_AT_EnableTrig AlterTableType = 38 + AlterTableType_AT_EnableAlwaysTrig AlterTableType = 39 + AlterTableType_AT_EnableReplicaTrig AlterTableType = 40 + AlterTableType_AT_DisableTrig AlterTableType = 41 + AlterTableType_AT_EnableTrigAll AlterTableType = 42 + AlterTableType_AT_DisableTrigAll AlterTableType = 43 + AlterTableType_AT_EnableTrigUser AlterTableType = 44 + AlterTableType_AT_DisableTrigUser AlterTableType = 45 + AlterTableType_AT_EnableRule AlterTableType = 46 + AlterTableType_AT_EnableAlwaysRule AlterTableType = 47 + AlterTableType_AT_EnableReplicaRule AlterTableType = 48 + AlterTableType_AT_DisableRule AlterTableType = 49 + AlterTableType_AT_AddInherit AlterTableType = 50 + AlterTableType_AT_DropInherit AlterTableType = 51 + AlterTableType_AT_AddOf AlterTableType = 52 + AlterTableType_AT_DropOf AlterTableType = 53 + AlterTableType_AT_ReplicaIdentity AlterTableType = 54 + AlterTableType_AT_EnableRowSecurity AlterTableType = 55 + AlterTableType_AT_DisableRowSecurity AlterTableType = 56 + AlterTableType_AT_ForceRowSecurity AlterTableType = 57 + AlterTableType_AT_NoForceRowSecurity AlterTableType = 58 + AlterTableType_AT_GenericOptions AlterTableType = 59 + AlterTableType_AT_AttachPartition AlterTableType = 60 + AlterTableType_AT_DetachPartition AlterTableType = 61 + AlterTableType_AT_DetachPartitionFinalize AlterTableType = 62 + AlterTableType_AT_AddIdentity AlterTableType = 63 + AlterTableType_AT_SetIdentity AlterTableType = 64 + AlterTableType_AT_DropIdentity AlterTableType = 65 + AlterTableType_AT_ReAddStatistics AlterTableType = 66 ) // Enum value maps for AlterTableType. @@ -1240,150 +1287,140 @@ var ( AlterTableType_name = map[int32]string{ 0: "ALTER_TABLE_TYPE_UNDEFINED", 1: "AT_AddColumn", - 2: "AT_AddColumnRecurse", - 3: "AT_AddColumnToView", - 4: "AT_ColumnDefault", - 5: "AT_CookedColumnDefault", - 6: "AT_DropNotNull", - 7: "AT_SetNotNull", - 8: "AT_DropExpression", - 9: "AT_CheckNotNull", - 10: "AT_SetStatistics", - 11: "AT_SetOptions", - 12: "AT_ResetOptions", - 13: "AT_SetStorage", - 14: "AT_SetCompression", - 15: "AT_DropColumn", - 16: "AT_DropColumnRecurse", - 17: "AT_AddIndex", - 18: "AT_ReAddIndex", - 19: "AT_AddConstraint", - 20: "AT_AddConstraintRecurse", - 21: "AT_ReAddConstraint", - 22: "AT_ReAddDomainConstraint", - 23: "AT_AlterConstraint", - 24: "AT_ValidateConstraint", - 25: "AT_ValidateConstraintRecurse", - 26: "AT_AddIndexConstraint", - 27: "AT_DropConstraint", - 28: "AT_DropConstraintRecurse", - 29: "AT_ReAddComment", - 30: "AT_AlterColumnType", - 31: "AT_AlterColumnGenericOptions", - 32: "AT_ChangeOwner", - 33: "AT_ClusterOn", - 34: "AT_DropCluster", - 35: "AT_SetLogged", - 36: "AT_SetUnLogged", - 37: "AT_DropOids", - 38: "AT_SetAccessMethod", - 39: "AT_SetTableSpace", - 40: "AT_SetRelOptions", - 41: "AT_ResetRelOptions", - 42: "AT_ReplaceRelOptions", - 43: "AT_EnableTrig", - 44: "AT_EnableAlwaysTrig", - 45: "AT_EnableReplicaTrig", - 46: "AT_DisableTrig", - 47: "AT_EnableTrigAll", - 48: "AT_DisableTrigAll", - 49: "AT_EnableTrigUser", - 50: "AT_DisableTrigUser", - 51: "AT_EnableRule", - 52: "AT_EnableAlwaysRule", - 53: "AT_EnableReplicaRule", - 54: "AT_DisableRule", - 55: "AT_AddInherit", - 56: "AT_DropInherit", - 57: "AT_AddOf", - 58: "AT_DropOf", - 59: "AT_ReplicaIdentity", - 60: "AT_EnableRowSecurity", - 61: "AT_DisableRowSecurity", - 62: "AT_ForceRowSecurity", - 63: "AT_NoForceRowSecurity", - 64: "AT_GenericOptions", - 65: "AT_AttachPartition", - 66: "AT_DetachPartition", - 67: "AT_DetachPartitionFinalize", - 68: "AT_AddIdentity", - 69: "AT_SetIdentity", - 70: "AT_DropIdentity", - 71: "AT_ReAddStatistics", + 2: "AT_AddColumnToView", + 3: "AT_ColumnDefault", + 4: "AT_CookedColumnDefault", + 5: "AT_DropNotNull", + 6: "AT_SetNotNull", + 7: "AT_DropExpression", + 8: "AT_CheckNotNull", + 9: "AT_SetStatistics", + 10: "AT_SetOptions", + 11: "AT_ResetOptions", + 12: "AT_SetStorage", + 13: "AT_SetCompression", + 14: "AT_DropColumn", + 15: "AT_AddIndex", + 16: "AT_ReAddIndex", + 17: "AT_AddConstraint", + 18: "AT_ReAddConstraint", + 19: "AT_ReAddDomainConstraint", + 20: "AT_AlterConstraint", + 21: "AT_ValidateConstraint", + 22: "AT_AddIndexConstraint", + 23: "AT_DropConstraint", + 24: "AT_ReAddComment", + 25: "AT_AlterColumnType", + 26: "AT_AlterColumnGenericOptions", + 27: "AT_ChangeOwner", + 28: "AT_ClusterOn", + 29: "AT_DropCluster", + 30: "AT_SetLogged", + 31: "AT_SetUnLogged", + 32: "AT_DropOids", + 33: "AT_SetAccessMethod", + 34: "AT_SetTableSpace", + 35: "AT_SetRelOptions", + 36: "AT_ResetRelOptions", + 37: "AT_ReplaceRelOptions", + 38: "AT_EnableTrig", + 39: "AT_EnableAlwaysTrig", + 40: "AT_EnableReplicaTrig", + 41: "AT_DisableTrig", + 42: "AT_EnableTrigAll", + 43: "AT_DisableTrigAll", + 44: "AT_EnableTrigUser", + 45: "AT_DisableTrigUser", + 46: "AT_EnableRule", + 47: "AT_EnableAlwaysRule", + 48: "AT_EnableReplicaRule", + 49: "AT_DisableRule", + 50: "AT_AddInherit", + 51: "AT_DropInherit", + 52: "AT_AddOf", + 53: "AT_DropOf", + 54: "AT_ReplicaIdentity", + 55: "AT_EnableRowSecurity", + 56: "AT_DisableRowSecurity", + 57: "AT_ForceRowSecurity", + 58: "AT_NoForceRowSecurity", + 59: "AT_GenericOptions", + 60: "AT_AttachPartition", + 61: "AT_DetachPartition", + 62: "AT_DetachPartitionFinalize", + 63: "AT_AddIdentity", + 64: "AT_SetIdentity", + 65: "AT_DropIdentity", + 66: "AT_ReAddStatistics", } AlterTableType_value = map[string]int32{ "ALTER_TABLE_TYPE_UNDEFINED": 0, "AT_AddColumn": 1, - "AT_AddColumnRecurse": 2, - "AT_AddColumnToView": 3, - "AT_ColumnDefault": 4, - "AT_CookedColumnDefault": 5, - "AT_DropNotNull": 6, - "AT_SetNotNull": 7, - "AT_DropExpression": 8, - "AT_CheckNotNull": 9, - "AT_SetStatistics": 10, - "AT_SetOptions": 11, - "AT_ResetOptions": 12, - "AT_SetStorage": 13, - "AT_SetCompression": 14, - "AT_DropColumn": 15, - "AT_DropColumnRecurse": 16, - "AT_AddIndex": 17, - "AT_ReAddIndex": 18, - "AT_AddConstraint": 19, - "AT_AddConstraintRecurse": 20, - "AT_ReAddConstraint": 21, - "AT_ReAddDomainConstraint": 22, - "AT_AlterConstraint": 23, - "AT_ValidateConstraint": 24, - "AT_ValidateConstraintRecurse": 25, - "AT_AddIndexConstraint": 26, - "AT_DropConstraint": 27, - "AT_DropConstraintRecurse": 28, - "AT_ReAddComment": 29, - "AT_AlterColumnType": 30, - "AT_AlterColumnGenericOptions": 31, - "AT_ChangeOwner": 32, - "AT_ClusterOn": 33, - "AT_DropCluster": 34, - "AT_SetLogged": 35, - "AT_SetUnLogged": 36, - "AT_DropOids": 37, - "AT_SetAccessMethod": 38, - "AT_SetTableSpace": 39, - "AT_SetRelOptions": 40, - "AT_ResetRelOptions": 41, - "AT_ReplaceRelOptions": 42, - "AT_EnableTrig": 43, - "AT_EnableAlwaysTrig": 44, - "AT_EnableReplicaTrig": 45, - "AT_DisableTrig": 46, - "AT_EnableTrigAll": 47, - "AT_DisableTrigAll": 48, - "AT_EnableTrigUser": 49, - "AT_DisableTrigUser": 50, - "AT_EnableRule": 51, - "AT_EnableAlwaysRule": 52, - "AT_EnableReplicaRule": 53, - "AT_DisableRule": 54, - "AT_AddInherit": 55, - "AT_DropInherit": 56, - "AT_AddOf": 57, - "AT_DropOf": 58, - "AT_ReplicaIdentity": 59, - "AT_EnableRowSecurity": 60, - "AT_DisableRowSecurity": 61, - "AT_ForceRowSecurity": 62, - "AT_NoForceRowSecurity": 63, - "AT_GenericOptions": 64, - "AT_AttachPartition": 65, - "AT_DetachPartition": 66, - "AT_DetachPartitionFinalize": 67, - "AT_AddIdentity": 68, - "AT_SetIdentity": 69, - "AT_DropIdentity": 70, - "AT_ReAddStatistics": 71, + "AT_AddColumnToView": 2, + "AT_ColumnDefault": 3, + "AT_CookedColumnDefault": 4, + "AT_DropNotNull": 5, + "AT_SetNotNull": 6, + "AT_DropExpression": 7, + "AT_CheckNotNull": 8, + "AT_SetStatistics": 9, + "AT_SetOptions": 10, + "AT_ResetOptions": 11, + "AT_SetStorage": 12, + "AT_SetCompression": 13, + "AT_DropColumn": 14, + "AT_AddIndex": 15, + "AT_ReAddIndex": 16, + "AT_AddConstraint": 17, + "AT_ReAddConstraint": 18, + "AT_ReAddDomainConstraint": 19, + "AT_AlterConstraint": 20, + "AT_ValidateConstraint": 21, + "AT_AddIndexConstraint": 22, + "AT_DropConstraint": 23, + "AT_ReAddComment": 24, + "AT_AlterColumnType": 25, + "AT_AlterColumnGenericOptions": 26, + "AT_ChangeOwner": 27, + "AT_ClusterOn": 28, + "AT_DropCluster": 29, + "AT_SetLogged": 30, + "AT_SetUnLogged": 31, + "AT_DropOids": 32, + "AT_SetAccessMethod": 33, + "AT_SetTableSpace": 34, + "AT_SetRelOptions": 35, + "AT_ResetRelOptions": 36, + "AT_ReplaceRelOptions": 37, + "AT_EnableTrig": 38, + "AT_EnableAlwaysTrig": 39, + "AT_EnableReplicaTrig": 40, + "AT_DisableTrig": 41, + "AT_EnableTrigAll": 42, + "AT_DisableTrigAll": 43, + "AT_EnableTrigUser": 44, + "AT_DisableTrigUser": 45, + "AT_EnableRule": 46, + "AT_EnableAlwaysRule": 47, + "AT_EnableReplicaRule": 48, + "AT_DisableRule": 49, + "AT_AddInherit": 50, + "AT_DropInherit": 51, + "AT_AddOf": 52, + "AT_DropOf": 53, + "AT_ReplicaIdentity": 54, + "AT_EnableRowSecurity": 55, + "AT_DisableRowSecurity": 56, + "AT_ForceRowSecurity": 57, + "AT_NoForceRowSecurity": 58, + "AT_GenericOptions": 59, + "AT_AttachPartition": 60, + "AT_DetachPartition": 61, + "AT_DetachPartitionFinalize": 62, + "AT_AddIdentity": 63, + "AT_SetIdentity": 64, + "AT_DropIdentity": 65, + "AT_ReAddStatistics": 66, } ) @@ -1398,11 +1435,11 @@ func (x AlterTableType) String() string { } func (AlterTableType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[17].Descriptor() + return file_pg_query_proto_enumTypes[18].Descriptor() } func (AlterTableType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[17] + return &file_pg_query_proto_enumTypes[18] } func (x AlterTableType) Number() protoreflect.EnumNumber { @@ -1411,7 +1448,7 @@ func (x AlterTableType) Number() protoreflect.EnumNumber { // Deprecated: Use AlterTableType.Descriptor instead. func (AlterTableType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{17} + return file_pg_query_proto_rawDescGZIP(), []int{18} } type GrantTargetType int32 @@ -1450,11 +1487,11 @@ func (x GrantTargetType) String() string { } func (GrantTargetType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[18].Descriptor() + return file_pg_query_proto_enumTypes[19].Descriptor() } func (GrantTargetType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[18] + return &file_pg_query_proto_enumTypes[19] } func (x GrantTargetType) Number() protoreflect.EnumNumber { @@ -1463,7 +1500,7 @@ func (x GrantTargetType) Number() protoreflect.EnumNumber { // Deprecated: Use GrantTargetType.Descriptor instead. func (GrantTargetType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{18} + return file_pg_query_proto_rawDescGZIP(), []int{19} } type VariableSetKind int32 @@ -1511,11 +1548,11 @@ func (x VariableSetKind) String() string { } func (VariableSetKind) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[19].Descriptor() + return file_pg_query_proto_enumTypes[20].Descriptor() } func (VariableSetKind) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[19] + return &file_pg_query_proto_enumTypes[20] } func (x VariableSetKind) Number() protoreflect.EnumNumber { @@ -1524,7 +1561,7 @@ func (x VariableSetKind) Number() protoreflect.EnumNumber { // Deprecated: Use VariableSetKind.Descriptor instead. func (VariableSetKind) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{19} + return file_pg_query_proto_rawDescGZIP(), []int{20} } type ConstrType int32 @@ -1596,11 +1633,11 @@ func (x ConstrType) String() string { } func (ConstrType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[20].Descriptor() + return file_pg_query_proto_enumTypes[21].Descriptor() } func (ConstrType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[20] + return &file_pg_query_proto_enumTypes[21] } func (x ConstrType) Number() protoreflect.EnumNumber { @@ -1609,7 +1646,7 @@ func (x ConstrType) Number() protoreflect.EnumNumber { // Deprecated: Use ConstrType.Descriptor instead. func (ConstrType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{20} + return file_pg_query_proto_rawDescGZIP(), []int{21} } type ImportForeignSchemaType int32 @@ -1648,11 +1685,11 @@ func (x ImportForeignSchemaType) String() string { } func (ImportForeignSchemaType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[21].Descriptor() + return file_pg_query_proto_enumTypes[22].Descriptor() } func (ImportForeignSchemaType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[21] + return &file_pg_query_proto_enumTypes[22] } func (x ImportForeignSchemaType) Number() protoreflect.EnumNumber { @@ -1661,7 +1698,7 @@ func (x ImportForeignSchemaType) Number() protoreflect.EnumNumber { // Deprecated: Use ImportForeignSchemaType.Descriptor instead. func (ImportForeignSchemaType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{21} + return file_pg_query_proto_rawDescGZIP(), []int{22} } type RoleStmtType int32 @@ -1700,11 +1737,11 @@ func (x RoleStmtType) String() string { } func (RoleStmtType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[22].Descriptor() + return file_pg_query_proto_enumTypes[23].Descriptor() } func (RoleStmtType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[22] + return &file_pg_query_proto_enumTypes[23] } func (x RoleStmtType) Number() protoreflect.EnumNumber { @@ -1713,7 +1750,7 @@ func (x RoleStmtType) Number() protoreflect.EnumNumber { // Deprecated: Use RoleStmtType.Descriptor instead. func (RoleStmtType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{22} + return file_pg_query_proto_rawDescGZIP(), []int{23} } type FetchDirection int32 @@ -1755,11 +1792,11 @@ func (x FetchDirection) String() string { } func (FetchDirection) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[23].Descriptor() + return file_pg_query_proto_enumTypes[24].Descriptor() } func (FetchDirection) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[23] + return &file_pg_query_proto_enumTypes[24] } func (x FetchDirection) Number() protoreflect.EnumNumber { @@ -1768,7 +1805,7 @@ func (x FetchDirection) Number() protoreflect.EnumNumber { // Deprecated: Use FetchDirection.Descriptor instead. func (FetchDirection) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{23} + return file_pg_query_proto_rawDescGZIP(), []int{24} } type FunctionParameterMode int32 @@ -1816,11 +1853,11 @@ func (x FunctionParameterMode) String() string { } func (FunctionParameterMode) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[24].Descriptor() + return file_pg_query_proto_enumTypes[25].Descriptor() } func (FunctionParameterMode) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[24] + return &file_pg_query_proto_enumTypes[25] } func (x FunctionParameterMode) Number() protoreflect.EnumNumber { @@ -1829,7 +1866,7 @@ func (x FunctionParameterMode) Number() protoreflect.EnumNumber { // Deprecated: Use FunctionParameterMode.Descriptor instead. func (FunctionParameterMode) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{24} + return file_pg_query_proto_rawDescGZIP(), []int{25} } type TransactionStmtKind int32 @@ -1889,11 +1926,11 @@ func (x TransactionStmtKind) String() string { } func (TransactionStmtKind) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[25].Descriptor() + return file_pg_query_proto_enumTypes[26].Descriptor() } func (TransactionStmtKind) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[25] + return &file_pg_query_proto_enumTypes[26] } func (x TransactionStmtKind) Number() protoreflect.EnumNumber { @@ -1902,7 +1939,7 @@ func (x TransactionStmtKind) Number() protoreflect.EnumNumber { // Deprecated: Use TransactionStmtKind.Descriptor instead. func (TransactionStmtKind) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{25} + return file_pg_query_proto_rawDescGZIP(), []int{26} } type ViewCheckOption int32 @@ -1941,11 +1978,11 @@ func (x ViewCheckOption) String() string { } func (ViewCheckOption) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[26].Descriptor() + return file_pg_query_proto_enumTypes[27].Descriptor() } func (ViewCheckOption) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[26] + return &file_pg_query_proto_enumTypes[27] } func (x ViewCheckOption) Number() protoreflect.EnumNumber { @@ -1954,7 +1991,7 @@ func (x ViewCheckOption) Number() protoreflect.EnumNumber { // Deprecated: Use ViewCheckOption.Descriptor instead. func (ViewCheckOption) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{26} + return file_pg_query_proto_rawDescGZIP(), []int{27} } type DiscardMode int32 @@ -1996,11 +2033,11 @@ func (x DiscardMode) String() string { } func (DiscardMode) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[27].Descriptor() + return file_pg_query_proto_enumTypes[28].Descriptor() } func (DiscardMode) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[27] + return &file_pg_query_proto_enumTypes[28] } func (x DiscardMode) Number() protoreflect.EnumNumber { @@ -2009,7 +2046,7 @@ func (x DiscardMode) Number() protoreflect.EnumNumber { // Deprecated: Use DiscardMode.Descriptor instead. func (DiscardMode) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{27} + return file_pg_query_proto_rawDescGZIP(), []int{28} } type ReindexObjectType int32 @@ -2054,11 +2091,11 @@ func (x ReindexObjectType) String() string { } func (ReindexObjectType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[28].Descriptor() + return file_pg_query_proto_enumTypes[29].Descriptor() } func (ReindexObjectType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[28] + return &file_pg_query_proto_enumTypes[29] } func (x ReindexObjectType) Number() protoreflect.EnumNumber { @@ -2067,7 +2104,7 @@ func (x ReindexObjectType) Number() protoreflect.EnumNumber { // Deprecated: Use ReindexObjectType.Descriptor instead. func (ReindexObjectType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{28} + return file_pg_query_proto_rawDescGZIP(), []int{29} } type AlterTSConfigType int32 @@ -2112,11 +2149,11 @@ func (x AlterTSConfigType) String() string { } func (AlterTSConfigType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[29].Descriptor() + return file_pg_query_proto_enumTypes[30].Descriptor() } func (AlterTSConfigType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[29] + return &file_pg_query_proto_enumTypes[30] } func (x AlterTSConfigType) Number() protoreflect.EnumNumber { @@ -2125,7 +2162,7 @@ func (x AlterTSConfigType) Number() protoreflect.EnumNumber { // Deprecated: Use AlterTSConfigType.Descriptor instead. func (AlterTSConfigType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{29} + return file_pg_query_proto_rawDescGZIP(), []int{30} } type PublicationObjSpecType int32 @@ -2167,11 +2204,11 @@ func (x PublicationObjSpecType) String() string { } func (PublicationObjSpecType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[30].Descriptor() + return file_pg_query_proto_enumTypes[31].Descriptor() } func (PublicationObjSpecType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[30] + return &file_pg_query_proto_enumTypes[31] } func (x PublicationObjSpecType) Number() protoreflect.EnumNumber { @@ -2180,7 +2217,7 @@ func (x PublicationObjSpecType) Number() protoreflect.EnumNumber { // Deprecated: Use PublicationObjSpecType.Descriptor instead. func (PublicationObjSpecType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{30} + return file_pg_query_proto_rawDescGZIP(), []int{31} } type AlterPublicationAction int32 @@ -2219,11 +2256,11 @@ func (x AlterPublicationAction) String() string { } func (AlterPublicationAction) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[31].Descriptor() + return file_pg_query_proto_enumTypes[32].Descriptor() } func (AlterPublicationAction) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[31] + return &file_pg_query_proto_enumTypes[32] } func (x AlterPublicationAction) Number() protoreflect.EnumNumber { @@ -2232,7 +2269,7 @@ func (x AlterPublicationAction) Number() protoreflect.EnumNumber { // Deprecated: Use AlterPublicationAction.Descriptor instead. func (AlterPublicationAction) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{31} + return file_pg_query_proto_rawDescGZIP(), []int{32} } type AlterSubscriptionType int32 @@ -2286,11 +2323,11 @@ func (x AlterSubscriptionType) String() string { } func (AlterSubscriptionType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[32].Descriptor() + return file_pg_query_proto_enumTypes[33].Descriptor() } func (AlterSubscriptionType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[32] + return &file_pg_query_proto_enumTypes[33] } func (x AlterSubscriptionType) Number() protoreflect.EnumNumber { @@ -2299,7 +2336,7 @@ func (x AlterSubscriptionType) Number() protoreflect.EnumNumber { // Deprecated: Use AlterSubscriptionType.Descriptor instead. func (AlterSubscriptionType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{32} + return file_pg_query_proto_rawDescGZIP(), []int{33} } type OnCommitAction int32 @@ -2341,11 +2378,11 @@ func (x OnCommitAction) String() string { } func (OnCommitAction) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[33].Descriptor() + return file_pg_query_proto_enumTypes[34].Descriptor() } func (OnCommitAction) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[33] + return &file_pg_query_proto_enumTypes[34] } func (x OnCommitAction) Number() protoreflect.EnumNumber { @@ -2354,7 +2391,7 @@ func (x OnCommitAction) Number() protoreflect.EnumNumber { // Deprecated: Use OnCommitAction.Descriptor instead. func (OnCommitAction) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{33} + return file_pg_query_proto_rawDescGZIP(), []int{34} } type ParamKind int32 @@ -2396,11 +2433,11 @@ func (x ParamKind) String() string { } func (ParamKind) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[34].Descriptor() + return file_pg_query_proto_enumTypes[35].Descriptor() } func (ParamKind) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[34] + return &file_pg_query_proto_enumTypes[35] } func (x ParamKind) Number() protoreflect.EnumNumber { @@ -2409,7 +2446,7 @@ func (x ParamKind) Number() protoreflect.EnumNumber { // Deprecated: Use ParamKind.Descriptor instead. func (ParamKind) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{34} + return file_pg_query_proto_rawDescGZIP(), []int{35} } type CoercionContext int32 @@ -2451,11 +2488,11 @@ func (x CoercionContext) String() string { } func (CoercionContext) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[35].Descriptor() + return file_pg_query_proto_enumTypes[36].Descriptor() } func (CoercionContext) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[35] + return &file_pg_query_proto_enumTypes[36] } func (x CoercionContext) Number() protoreflect.EnumNumber { @@ -2464,7 +2501,7 @@ func (x CoercionContext) Number() protoreflect.EnumNumber { // Deprecated: Use CoercionContext.Descriptor instead. func (CoercionContext) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{35} + return file_pg_query_proto_rawDescGZIP(), []int{36} } type CoercionForm int32 @@ -2506,11 +2543,11 @@ func (x CoercionForm) String() string { } func (CoercionForm) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[36].Descriptor() + return file_pg_query_proto_enumTypes[37].Descriptor() } func (CoercionForm) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[36] + return &file_pg_query_proto_enumTypes[37] } func (x CoercionForm) Number() protoreflect.EnumNumber { @@ -2519,7 +2556,7 @@ func (x CoercionForm) Number() protoreflect.EnumNumber { // Deprecated: Use CoercionForm.Descriptor instead. func (CoercionForm) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{36} + return file_pg_query_proto_rawDescGZIP(), []int{37} } type BoolExprType int32 @@ -2558,11 +2595,11 @@ func (x BoolExprType) String() string { } func (BoolExprType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[37].Descriptor() + return file_pg_query_proto_enumTypes[38].Descriptor() } func (BoolExprType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[37] + return &file_pg_query_proto_enumTypes[38] } func (x BoolExprType) Number() protoreflect.EnumNumber { @@ -2571,7 +2608,7 @@ func (x BoolExprType) Number() protoreflect.EnumNumber { // Deprecated: Use BoolExprType.Descriptor instead. func (BoolExprType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{37} + return file_pg_query_proto_rawDescGZIP(), []int{38} } type SubLinkType int32 @@ -2625,11 +2662,11 @@ func (x SubLinkType) String() string { } func (SubLinkType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[38].Descriptor() + return file_pg_query_proto_enumTypes[39].Descriptor() } func (SubLinkType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[38] + return &file_pg_query_proto_enumTypes[39] } func (x SubLinkType) Number() protoreflect.EnumNumber { @@ -2638,7 +2675,7 @@ func (x SubLinkType) Number() protoreflect.EnumNumber { // Deprecated: Use SubLinkType.Descriptor instead. func (SubLinkType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{38} + return file_pg_query_proto_rawDescGZIP(), []int{39} } type RowCompareType int32 @@ -2686,11 +2723,11 @@ func (x RowCompareType) String() string { } func (RowCompareType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[39].Descriptor() + return file_pg_query_proto_enumTypes[40].Descriptor() } func (RowCompareType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[39] + return &file_pg_query_proto_enumTypes[40] } func (x RowCompareType) Number() protoreflect.EnumNumber { @@ -2699,7 +2736,7 @@ func (x RowCompareType) Number() protoreflect.EnumNumber { // Deprecated: Use RowCompareType.Descriptor instead. func (RowCompareType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{39} + return file_pg_query_proto_rawDescGZIP(), []int{40} } type MinMaxOp int32 @@ -2735,11 +2772,11 @@ func (x MinMaxOp) String() string { } func (MinMaxOp) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[40].Descriptor() + return file_pg_query_proto_enumTypes[41].Descriptor() } func (MinMaxOp) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[40] + return &file_pg_query_proto_enumTypes[41] } func (x MinMaxOp) Number() protoreflect.EnumNumber { @@ -2748,7 +2785,7 @@ func (x MinMaxOp) Number() protoreflect.EnumNumber { // Deprecated: Use MinMaxOp.Descriptor instead. func (MinMaxOp) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{40} + return file_pg_query_proto_rawDescGZIP(), []int{41} } type SQLValueFunctionOp int32 @@ -2823,11 +2860,11 @@ func (x SQLValueFunctionOp) String() string { } func (SQLValueFunctionOp) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[41].Descriptor() + return file_pg_query_proto_enumTypes[42].Descriptor() } func (SQLValueFunctionOp) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[41] + return &file_pg_query_proto_enumTypes[42] } func (x SQLValueFunctionOp) Number() protoreflect.EnumNumber { @@ -2836,7 +2873,7 @@ func (x SQLValueFunctionOp) Number() protoreflect.EnumNumber { // Deprecated: Use SQLValueFunctionOp.Descriptor instead. func (SQLValueFunctionOp) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{41} + return file_pg_query_proto_rawDescGZIP(), []int{42} } type XmlExprOp int32 @@ -2890,11 +2927,11 @@ func (x XmlExprOp) String() string { } func (XmlExprOp) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[42].Descriptor() + return file_pg_query_proto_enumTypes[43].Descriptor() } func (XmlExprOp) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[42] + return &file_pg_query_proto_enumTypes[43] } func (x XmlExprOp) Number() protoreflect.EnumNumber { @@ -2903,7 +2940,7 @@ func (x XmlExprOp) Number() protoreflect.EnumNumber { // Deprecated: Use XmlExprOp.Descriptor instead. func (XmlExprOp) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{42} + return file_pg_query_proto_rawDescGZIP(), []int{43} } type XmlOptionType int32 @@ -2939,11 +2976,11 @@ func (x XmlOptionType) String() string { } func (XmlOptionType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[43].Descriptor() + return file_pg_query_proto_enumTypes[44].Descriptor() } func (XmlOptionType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[43] + return &file_pg_query_proto_enumTypes[44] } func (x XmlOptionType) Number() protoreflect.EnumNumber { @@ -2952,47 +2989,264 @@ func (x XmlOptionType) Number() protoreflect.EnumNumber { // Deprecated: Use XmlOptionType.Descriptor instead. func (XmlOptionType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{43} + return file_pg_query_proto_rawDescGZIP(), []int{44} } -type NullTestType int32 +type JsonEncoding int32 const ( - NullTestType_NULL_TEST_TYPE_UNDEFINED NullTestType = 0 - NullTestType_IS_NULL NullTestType = 1 - NullTestType_IS_NOT_NULL NullTestType = 2 + JsonEncoding_JSON_ENCODING_UNDEFINED JsonEncoding = 0 + JsonEncoding_JS_ENC_DEFAULT JsonEncoding = 1 + JsonEncoding_JS_ENC_UTF8 JsonEncoding = 2 + JsonEncoding_JS_ENC_UTF16 JsonEncoding = 3 + JsonEncoding_JS_ENC_UTF32 JsonEncoding = 4 ) -// Enum value maps for NullTestType. +// Enum value maps for JsonEncoding. var ( - NullTestType_name = map[int32]string{ - 0: "NULL_TEST_TYPE_UNDEFINED", - 1: "IS_NULL", - 2: "IS_NOT_NULL", - } - NullTestType_value = map[string]int32{ - "NULL_TEST_TYPE_UNDEFINED": 0, - "IS_NULL": 1, - "IS_NOT_NULL": 2, + JsonEncoding_name = map[int32]string{ + 0: "JSON_ENCODING_UNDEFINED", + 1: "JS_ENC_DEFAULT", + 2: "JS_ENC_UTF8", + 3: "JS_ENC_UTF16", + 4: "JS_ENC_UTF32", + } + JsonEncoding_value = map[string]int32{ + "JSON_ENCODING_UNDEFINED": 0, + "JS_ENC_DEFAULT": 1, + "JS_ENC_UTF8": 2, + "JS_ENC_UTF16": 3, + "JS_ENC_UTF32": 4, } ) -func (x NullTestType) Enum() *NullTestType { - p := new(NullTestType) +func (x JsonEncoding) Enum() *JsonEncoding { + p := new(JsonEncoding) *p = x return p } -func (x NullTestType) String() string { +func (x JsonEncoding) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } -func (NullTestType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[44].Descriptor() +func (JsonEncoding) Descriptor() protoreflect.EnumDescriptor { + return file_pg_query_proto_enumTypes[45].Descriptor() +} + +func (JsonEncoding) Type() protoreflect.EnumType { + return &file_pg_query_proto_enumTypes[45] +} + +func (x JsonEncoding) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use JsonEncoding.Descriptor instead. +func (JsonEncoding) EnumDescriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{45} +} + +type JsonFormatType int32 + +const ( + JsonFormatType_JSON_FORMAT_TYPE_UNDEFINED JsonFormatType = 0 + JsonFormatType_JS_FORMAT_DEFAULT JsonFormatType = 1 + JsonFormatType_JS_FORMAT_JSON JsonFormatType = 2 + JsonFormatType_JS_FORMAT_JSONB JsonFormatType = 3 +) + +// Enum value maps for JsonFormatType. +var ( + JsonFormatType_name = map[int32]string{ + 0: "JSON_FORMAT_TYPE_UNDEFINED", + 1: "JS_FORMAT_DEFAULT", + 2: "JS_FORMAT_JSON", + 3: "JS_FORMAT_JSONB", + } + JsonFormatType_value = map[string]int32{ + "JSON_FORMAT_TYPE_UNDEFINED": 0, + "JS_FORMAT_DEFAULT": 1, + "JS_FORMAT_JSON": 2, + "JS_FORMAT_JSONB": 3, + } +) + +func (x JsonFormatType) Enum() *JsonFormatType { + p := new(JsonFormatType) + *p = x + return p +} + +func (x JsonFormatType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (JsonFormatType) Descriptor() protoreflect.EnumDescriptor { + return file_pg_query_proto_enumTypes[46].Descriptor() +} + +func (JsonFormatType) Type() protoreflect.EnumType { + return &file_pg_query_proto_enumTypes[46] +} + +func (x JsonFormatType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use JsonFormatType.Descriptor instead. +func (JsonFormatType) EnumDescriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{46} +} + +type JsonConstructorType int32 + +const ( + JsonConstructorType_JSON_CONSTRUCTOR_TYPE_UNDEFINED JsonConstructorType = 0 + JsonConstructorType_JSCTOR_JSON_OBJECT JsonConstructorType = 1 + JsonConstructorType_JSCTOR_JSON_ARRAY JsonConstructorType = 2 + JsonConstructorType_JSCTOR_JSON_OBJECTAGG JsonConstructorType = 3 + JsonConstructorType_JSCTOR_JSON_ARRAYAGG JsonConstructorType = 4 +) + +// Enum value maps for JsonConstructorType. +var ( + JsonConstructorType_name = map[int32]string{ + 0: "JSON_CONSTRUCTOR_TYPE_UNDEFINED", + 1: "JSCTOR_JSON_OBJECT", + 2: "JSCTOR_JSON_ARRAY", + 3: "JSCTOR_JSON_OBJECTAGG", + 4: "JSCTOR_JSON_ARRAYAGG", + } + JsonConstructorType_value = map[string]int32{ + "JSON_CONSTRUCTOR_TYPE_UNDEFINED": 0, + "JSCTOR_JSON_OBJECT": 1, + "JSCTOR_JSON_ARRAY": 2, + "JSCTOR_JSON_OBJECTAGG": 3, + "JSCTOR_JSON_ARRAYAGG": 4, + } +) + +func (x JsonConstructorType) Enum() *JsonConstructorType { + p := new(JsonConstructorType) + *p = x + return p +} + +func (x JsonConstructorType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (JsonConstructorType) Descriptor() protoreflect.EnumDescriptor { + return file_pg_query_proto_enumTypes[47].Descriptor() +} + +func (JsonConstructorType) Type() protoreflect.EnumType { + return &file_pg_query_proto_enumTypes[47] +} + +func (x JsonConstructorType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use JsonConstructorType.Descriptor instead. +func (JsonConstructorType) EnumDescriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{47} +} + +type JsonValueType int32 + +const ( + JsonValueType_JSON_VALUE_TYPE_UNDEFINED JsonValueType = 0 + JsonValueType_JS_TYPE_ANY JsonValueType = 1 + JsonValueType_JS_TYPE_OBJECT JsonValueType = 2 + JsonValueType_JS_TYPE_ARRAY JsonValueType = 3 + JsonValueType_JS_TYPE_SCALAR JsonValueType = 4 +) + +// Enum value maps for JsonValueType. +var ( + JsonValueType_name = map[int32]string{ + 0: "JSON_VALUE_TYPE_UNDEFINED", + 1: "JS_TYPE_ANY", + 2: "JS_TYPE_OBJECT", + 3: "JS_TYPE_ARRAY", + 4: "JS_TYPE_SCALAR", + } + JsonValueType_value = map[string]int32{ + "JSON_VALUE_TYPE_UNDEFINED": 0, + "JS_TYPE_ANY": 1, + "JS_TYPE_OBJECT": 2, + "JS_TYPE_ARRAY": 3, + "JS_TYPE_SCALAR": 4, + } +) + +func (x JsonValueType) Enum() *JsonValueType { + p := new(JsonValueType) + *p = x + return p +} + +func (x JsonValueType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (JsonValueType) Descriptor() protoreflect.EnumDescriptor { + return file_pg_query_proto_enumTypes[48].Descriptor() +} + +func (JsonValueType) Type() protoreflect.EnumType { + return &file_pg_query_proto_enumTypes[48] +} + +func (x JsonValueType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use JsonValueType.Descriptor instead. +func (JsonValueType) EnumDescriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{48} +} + +type NullTestType int32 + +const ( + NullTestType_NULL_TEST_TYPE_UNDEFINED NullTestType = 0 + NullTestType_IS_NULL NullTestType = 1 + NullTestType_IS_NOT_NULL NullTestType = 2 +) + +// Enum value maps for NullTestType. +var ( + NullTestType_name = map[int32]string{ + 0: "NULL_TEST_TYPE_UNDEFINED", + 1: "IS_NULL", + 2: "IS_NOT_NULL", + } + NullTestType_value = map[string]int32{ + "NULL_TEST_TYPE_UNDEFINED": 0, + "IS_NULL": 1, + "IS_NOT_NULL": 2, + } +) + +func (x NullTestType) Enum() *NullTestType { + p := new(NullTestType) + *p = x + return p +} + +func (x NullTestType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (NullTestType) Descriptor() protoreflect.EnumDescriptor { + return file_pg_query_proto_enumTypes[49].Descriptor() } func (NullTestType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[44] + return &file_pg_query_proto_enumTypes[49] } func (x NullTestType) Number() protoreflect.EnumNumber { @@ -3001,7 +3255,7 @@ func (x NullTestType) Number() protoreflect.EnumNumber { // Deprecated: Use NullTestType.Descriptor instead. func (NullTestType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{44} + return file_pg_query_proto_rawDescGZIP(), []int{49} } type BoolTestType int32 @@ -3049,11 +3303,11 @@ func (x BoolTestType) String() string { } func (BoolTestType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[45].Descriptor() + return file_pg_query_proto_enumTypes[50].Descriptor() } func (BoolTestType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[45] + return &file_pg_query_proto_enumTypes[50] } func (x BoolTestType) Number() protoreflect.EnumNumber { @@ -3062,7 +3316,7 @@ func (x BoolTestType) Number() protoreflect.EnumNumber { // Deprecated: Use BoolTestType.Descriptor instead. func (BoolTestType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{45} + return file_pg_query_proto_rawDescGZIP(), []int{50} } type CmdType int32 @@ -3116,11 +3370,11 @@ func (x CmdType) String() string { } func (CmdType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[46].Descriptor() + return file_pg_query_proto_enumTypes[51].Descriptor() } func (CmdType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[46] + return &file_pg_query_proto_enumTypes[51] } func (x CmdType) Number() protoreflect.EnumNumber { @@ -3129,7 +3383,7 @@ func (x CmdType) Number() protoreflect.EnumNumber { // Deprecated: Use CmdType.Descriptor instead. func (CmdType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{46} + return file_pg_query_proto_rawDescGZIP(), []int{51} } type JoinType int32 @@ -3142,8 +3396,9 @@ const ( JoinType_JOIN_RIGHT JoinType = 4 JoinType_JOIN_SEMI JoinType = 5 JoinType_JOIN_ANTI JoinType = 6 - JoinType_JOIN_UNIQUE_OUTER JoinType = 7 - JoinType_JOIN_UNIQUE_INNER JoinType = 8 + JoinType_JOIN_RIGHT_ANTI JoinType = 7 + JoinType_JOIN_UNIQUE_OUTER JoinType = 8 + JoinType_JOIN_UNIQUE_INNER JoinType = 9 ) // Enum value maps for JoinType. @@ -3156,8 +3411,9 @@ var ( 4: "JOIN_RIGHT", 5: "JOIN_SEMI", 6: "JOIN_ANTI", - 7: "JOIN_UNIQUE_OUTER", - 8: "JOIN_UNIQUE_INNER", + 7: "JOIN_RIGHT_ANTI", + 8: "JOIN_UNIQUE_OUTER", + 9: "JOIN_UNIQUE_INNER", } JoinType_value = map[string]int32{ "JOIN_TYPE_UNDEFINED": 0, @@ -3167,8 +3423,9 @@ var ( "JOIN_RIGHT": 4, "JOIN_SEMI": 5, "JOIN_ANTI": 6, - "JOIN_UNIQUE_OUTER": 7, - "JOIN_UNIQUE_INNER": 8, + "JOIN_RIGHT_ANTI": 7, + "JOIN_UNIQUE_OUTER": 8, + "JOIN_UNIQUE_INNER": 9, } ) @@ -3183,11 +3440,11 @@ func (x JoinType) String() string { } func (JoinType) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[47].Descriptor() + return file_pg_query_proto_enumTypes[52].Descriptor() } func (JoinType) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[47] + return &file_pg_query_proto_enumTypes[52] } func (x JoinType) Number() protoreflect.EnumNumber { @@ -3196,7 +3453,7 @@ func (x JoinType) Number() protoreflect.EnumNumber { // Deprecated: Use JoinType.Descriptor instead. func (JoinType) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{47} + return file_pg_query_proto_rawDescGZIP(), []int{52} } type AggStrategy int32 @@ -3238,11 +3495,11 @@ func (x AggStrategy) String() string { } func (AggStrategy) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[48].Descriptor() + return file_pg_query_proto_enumTypes[53].Descriptor() } func (AggStrategy) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[48] + return &file_pg_query_proto_enumTypes[53] } func (x AggStrategy) Number() protoreflect.EnumNumber { @@ -3251,7 +3508,7 @@ func (x AggStrategy) Number() protoreflect.EnumNumber { // Deprecated: Use AggStrategy.Descriptor instead. func (AggStrategy) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{48} + return file_pg_query_proto_rawDescGZIP(), []int{53} } type AggSplit int32 @@ -3290,11 +3547,11 @@ func (x AggSplit) String() string { } func (AggSplit) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[49].Descriptor() + return file_pg_query_proto_enumTypes[54].Descriptor() } func (AggSplit) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[49] + return &file_pg_query_proto_enumTypes[54] } func (x AggSplit) Number() protoreflect.EnumNumber { @@ -3303,7 +3560,7 @@ func (x AggSplit) Number() protoreflect.EnumNumber { // Deprecated: Use AggSplit.Descriptor instead. func (AggSplit) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{49} + return file_pg_query_proto_rawDescGZIP(), []int{54} } type SetOpCmd int32 @@ -3345,11 +3602,11 @@ func (x SetOpCmd) String() string { } func (SetOpCmd) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[50].Descriptor() + return file_pg_query_proto_enumTypes[55].Descriptor() } func (SetOpCmd) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[50] + return &file_pg_query_proto_enumTypes[55] } func (x SetOpCmd) Number() protoreflect.EnumNumber { @@ -3358,7 +3615,7 @@ func (x SetOpCmd) Number() protoreflect.EnumNumber { // Deprecated: Use SetOpCmd.Descriptor instead. func (SetOpCmd) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{50} + return file_pg_query_proto_rawDescGZIP(), []int{55} } type SetOpStrategy int32 @@ -3394,11 +3651,11 @@ func (x SetOpStrategy) String() string { } func (SetOpStrategy) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[51].Descriptor() + return file_pg_query_proto_enumTypes[56].Descriptor() } func (SetOpStrategy) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[51] + return &file_pg_query_proto_enumTypes[56] } func (x SetOpStrategy) Number() protoreflect.EnumNumber { @@ -3407,7 +3664,7 @@ func (x SetOpStrategy) Number() protoreflect.EnumNumber { // Deprecated: Use SetOpStrategy.Descriptor instead. func (SetOpStrategy) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{51} + return file_pg_query_proto_rawDescGZIP(), []int{56} } type OnConflictAction int32 @@ -3446,11 +3703,11 @@ func (x OnConflictAction) String() string { } func (OnConflictAction) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[52].Descriptor() + return file_pg_query_proto_enumTypes[57].Descriptor() } func (OnConflictAction) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[52] + return &file_pg_query_proto_enumTypes[57] } func (x OnConflictAction) Number() protoreflect.EnumNumber { @@ -3459,7 +3716,7 @@ func (x OnConflictAction) Number() protoreflect.EnumNumber { // Deprecated: Use OnConflictAction.Descriptor instead. func (OnConflictAction) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{52} + return file_pg_query_proto_rawDescGZIP(), []int{57} } type LimitOption int32 @@ -3498,11 +3755,11 @@ func (x LimitOption) String() string { } func (LimitOption) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[53].Descriptor() + return file_pg_query_proto_enumTypes[58].Descriptor() } func (LimitOption) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[53] + return &file_pg_query_proto_enumTypes[58] } func (x LimitOption) Number() protoreflect.EnumNumber { @@ -3511,7 +3768,7 @@ func (x LimitOption) Number() protoreflect.EnumNumber { // Deprecated: Use LimitOption.Descriptor instead. func (LimitOption) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{53} + return file_pg_query_proto_rawDescGZIP(), []int{58} } type LockClauseStrength int32 @@ -3556,11 +3813,11 @@ func (x LockClauseStrength) String() string { } func (LockClauseStrength) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[54].Descriptor() + return file_pg_query_proto_enumTypes[59].Descriptor() } func (LockClauseStrength) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[54] + return &file_pg_query_proto_enumTypes[59] } func (x LockClauseStrength) Number() protoreflect.EnumNumber { @@ -3569,7 +3826,7 @@ func (x LockClauseStrength) Number() protoreflect.EnumNumber { // Deprecated: Use LockClauseStrength.Descriptor instead. func (LockClauseStrength) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{54} + return file_pg_query_proto_rawDescGZIP(), []int{59} } type LockWaitPolicy int32 @@ -3608,11 +3865,11 @@ func (x LockWaitPolicy) String() string { } func (LockWaitPolicy) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[55].Descriptor() + return file_pg_query_proto_enumTypes[60].Descriptor() } func (LockWaitPolicy) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[55] + return &file_pg_query_proto_enumTypes[60] } func (x LockWaitPolicy) Number() protoreflect.EnumNumber { @@ -3621,7 +3878,7 @@ func (x LockWaitPolicy) Number() protoreflect.EnumNumber { // Deprecated: Use LockWaitPolicy.Descriptor instead. func (LockWaitPolicy) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{55} + return file_pg_query_proto_rawDescGZIP(), []int{60} } type LockTupleMode int32 @@ -3663,11 +3920,11 @@ func (x LockTupleMode) String() string { } func (LockTupleMode) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[56].Descriptor() + return file_pg_query_proto_enumTypes[61].Descriptor() } func (LockTupleMode) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[56] + return &file_pg_query_proto_enumTypes[61] } func (x LockTupleMode) Number() protoreflect.EnumNumber { @@ -3676,7 +3933,7 @@ func (x LockTupleMode) Number() protoreflect.EnumNumber { // Deprecated: Use LockTupleMode.Descriptor instead. func (LockTupleMode) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{56} + return file_pg_query_proto_rawDescGZIP(), []int{61} } type KeywordKind int32 @@ -3718,11 +3975,11 @@ func (x KeywordKind) String() string { } func (KeywordKind) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[57].Descriptor() + return file_pg_query_proto_enumTypes[62].Descriptor() } func (KeywordKind) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[57] + return &file_pg_query_proto_enumTypes[62] } func (x KeywordKind) Number() protoreflect.EnumNumber { @@ -3731,7 +3988,7 @@ func (x KeywordKind) Number() protoreflect.EnumNumber { // Deprecated: Use KeywordKind.Descriptor instead. func (KeywordKind) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{57} + return file_pg_query_proto_rawDescGZIP(), []int{62} } type Token int32 @@ -3741,6 +3998,7 @@ const ( // Single-character tokens that are returned 1:1 (identical with "self" list in scan.l) // Either supporting syntax, or single-character operators (some can be both) // Also see https://www.postgresql.org/docs/12/sql-syntax-lexical.html#SQL-SYNTAX-SPECIAL-CHARS + Token_ASCII_36 Token = 36 // "$" Token_ASCII_37 Token = 37 // "%" Token_ASCII_40 Token = 40 // "(" Token_ASCII_41 Token = 41 // ")" @@ -3781,480 +4039,494 @@ const ( Token_SQL_COMMENT Token = 275 Token_C_COMMENT Token = 276 Token_ABORT_P Token = 277 - Token_ABSOLUTE_P Token = 278 - Token_ACCESS Token = 279 - Token_ACTION Token = 280 - Token_ADD_P Token = 281 - Token_ADMIN Token = 282 - Token_AFTER Token = 283 - Token_AGGREGATE Token = 284 - Token_ALL Token = 285 - Token_ALSO Token = 286 - Token_ALTER Token = 287 - Token_ALWAYS Token = 288 - Token_ANALYSE Token = 289 - Token_ANALYZE Token = 290 - Token_AND Token = 291 - Token_ANY Token = 292 - Token_ARRAY Token = 293 - Token_AS Token = 294 - Token_ASC Token = 295 - Token_ASENSITIVE Token = 296 - Token_ASSERTION Token = 297 - Token_ASSIGNMENT Token = 298 - Token_ASYMMETRIC Token = 299 - Token_ATOMIC Token = 300 - Token_AT Token = 301 - Token_ATTACH Token = 302 - Token_ATTRIBUTE Token = 303 - Token_AUTHORIZATION Token = 304 - Token_BACKWARD Token = 305 - Token_BEFORE Token = 306 - Token_BEGIN_P Token = 307 - Token_BETWEEN Token = 308 - Token_BIGINT Token = 309 - Token_BINARY Token = 310 - Token_BIT Token = 311 - Token_BOOLEAN_P Token = 312 - Token_BOTH Token = 313 - Token_BREADTH Token = 314 - Token_BY Token = 315 - Token_CACHE Token = 316 - Token_CALL Token = 317 - Token_CALLED Token = 318 - Token_CASCADE Token = 319 - Token_CASCADED Token = 320 - Token_CASE Token = 321 - Token_CAST Token = 322 - Token_CATALOG_P Token = 323 - Token_CHAIN Token = 324 - Token_CHAR_P Token = 325 - Token_CHARACTER Token = 326 - Token_CHARACTERISTICS Token = 327 - Token_CHECK Token = 328 - Token_CHECKPOINT Token = 329 - Token_CLASS Token = 330 - Token_CLOSE Token = 331 - Token_CLUSTER Token = 332 - Token_COALESCE Token = 333 - Token_COLLATE Token = 334 - Token_COLLATION Token = 335 - Token_COLUMN Token = 336 - Token_COLUMNS Token = 337 - Token_COMMENT Token = 338 - Token_COMMENTS Token = 339 - Token_COMMIT Token = 340 - Token_COMMITTED Token = 341 - Token_COMPRESSION Token = 342 - Token_CONCURRENTLY Token = 343 - Token_CONFIGURATION Token = 344 - Token_CONFLICT Token = 345 - Token_CONNECTION Token = 346 - Token_CONSTRAINT Token = 347 - Token_CONSTRAINTS Token = 348 - Token_CONTENT_P Token = 349 - Token_CONTINUE_P Token = 350 - Token_CONVERSION_P Token = 351 - Token_COPY Token = 352 - Token_COST Token = 353 - Token_CREATE Token = 354 - Token_CROSS Token = 355 - Token_CSV Token = 356 - Token_CUBE Token = 357 - Token_CURRENT_P Token = 358 - Token_CURRENT_CATALOG Token = 359 - Token_CURRENT_DATE Token = 360 - Token_CURRENT_ROLE Token = 361 - Token_CURRENT_SCHEMA Token = 362 - Token_CURRENT_TIME Token = 363 - Token_CURRENT_TIMESTAMP Token = 364 - Token_CURRENT_USER Token = 365 - Token_CURSOR Token = 366 - Token_CYCLE Token = 367 - Token_DATA_P Token = 368 - Token_DATABASE Token = 369 - Token_DAY_P Token = 370 - Token_DEALLOCATE Token = 371 - Token_DEC Token = 372 - Token_DECIMAL_P Token = 373 - Token_DECLARE Token = 374 - Token_DEFAULT Token = 375 - Token_DEFAULTS Token = 376 - Token_DEFERRABLE Token = 377 - Token_DEFERRED Token = 378 - Token_DEFINER Token = 379 - Token_DELETE_P Token = 380 - Token_DELIMITER Token = 381 - Token_DELIMITERS Token = 382 - Token_DEPENDS Token = 383 - Token_DEPTH Token = 384 - Token_DESC Token = 385 - Token_DETACH Token = 386 - Token_DICTIONARY Token = 387 - Token_DISABLE_P Token = 388 - Token_DISCARD Token = 389 - Token_DISTINCT Token = 390 - Token_DO Token = 391 - Token_DOCUMENT_P Token = 392 - Token_DOMAIN_P Token = 393 - Token_DOUBLE_P Token = 394 - Token_DROP Token = 395 - Token_EACH Token = 396 - Token_ELSE Token = 397 - Token_ENABLE_P Token = 398 - Token_ENCODING Token = 399 - Token_ENCRYPTED Token = 400 - Token_END_P Token = 401 - Token_ENUM_P Token = 402 - Token_ESCAPE Token = 403 - Token_EVENT Token = 404 - Token_EXCEPT Token = 405 - Token_EXCLUDE Token = 406 - Token_EXCLUDING Token = 407 - Token_EXCLUSIVE Token = 408 - Token_EXECUTE Token = 409 - Token_EXISTS Token = 410 - Token_EXPLAIN Token = 411 - Token_EXPRESSION Token = 412 - Token_EXTENSION Token = 413 - Token_EXTERNAL Token = 414 - Token_EXTRACT Token = 415 - Token_FALSE_P Token = 416 - Token_FAMILY Token = 417 - Token_FETCH Token = 418 - Token_FILTER Token = 419 - Token_FINALIZE Token = 420 - Token_FIRST_P Token = 421 - Token_FLOAT_P Token = 422 - Token_FOLLOWING Token = 423 - Token_FOR Token = 424 - Token_FORCE Token = 425 - Token_FOREIGN Token = 426 - Token_FORWARD Token = 427 - Token_FREEZE Token = 428 - Token_FROM Token = 429 - Token_FULL Token = 430 - Token_FUNCTION Token = 431 - Token_FUNCTIONS Token = 432 - Token_GENERATED Token = 433 - Token_GLOBAL Token = 434 - Token_GRANT Token = 435 - Token_GRANTED Token = 436 - Token_GREATEST Token = 437 - Token_GROUP_P Token = 438 - Token_GROUPING Token = 439 - Token_GROUPS Token = 440 - Token_HANDLER Token = 441 - Token_HAVING Token = 442 - Token_HEADER_P Token = 443 - Token_HOLD Token = 444 - Token_HOUR_P Token = 445 - Token_IDENTITY_P Token = 446 - Token_IF_P Token = 447 - Token_ILIKE Token = 448 - Token_IMMEDIATE Token = 449 - Token_IMMUTABLE Token = 450 - Token_IMPLICIT_P Token = 451 - Token_IMPORT_P Token = 452 - Token_IN_P Token = 453 - Token_INCLUDE Token = 454 - Token_INCLUDING Token = 455 - Token_INCREMENT Token = 456 - Token_INDEX Token = 457 - Token_INDEXES Token = 458 - Token_INHERIT Token = 459 - Token_INHERITS Token = 460 - Token_INITIALLY Token = 461 - Token_INLINE_P Token = 462 - Token_INNER_P Token = 463 - Token_INOUT Token = 464 - Token_INPUT_P Token = 465 - Token_INSENSITIVE Token = 466 - Token_INSERT Token = 467 - Token_INSTEAD Token = 468 - Token_INT_P Token = 469 - Token_INTEGER Token = 470 - Token_INTERSECT Token = 471 - Token_INTERVAL Token = 472 - Token_INTO Token = 473 - Token_INVOKER Token = 474 - Token_IS Token = 475 - Token_ISNULL Token = 476 - Token_ISOLATION Token = 477 - Token_JOIN Token = 478 - Token_KEY Token = 479 - Token_LABEL Token = 480 - Token_LANGUAGE Token = 481 - Token_LARGE_P Token = 482 - Token_LAST_P Token = 483 - Token_LATERAL_P Token = 484 - Token_LEADING Token = 485 - Token_LEAKPROOF Token = 486 - Token_LEAST Token = 487 - Token_LEFT Token = 488 - Token_LEVEL Token = 489 - Token_LIKE Token = 490 - Token_LIMIT Token = 491 - Token_LISTEN Token = 492 - Token_LOAD Token = 493 - Token_LOCAL Token = 494 - Token_LOCALTIME Token = 495 - Token_LOCALTIMESTAMP Token = 496 - Token_LOCATION Token = 497 - Token_LOCK_P Token = 498 - Token_LOCKED Token = 499 - Token_LOGGED Token = 500 - Token_MAPPING Token = 501 - Token_MATCH Token = 502 - Token_MATCHED Token = 503 - Token_MATERIALIZED Token = 504 - Token_MAXVALUE Token = 505 - Token_MERGE Token = 506 - Token_METHOD Token = 507 - Token_MINUTE_P Token = 508 - Token_MINVALUE Token = 509 - Token_MODE Token = 510 - Token_MONTH_P Token = 511 - Token_MOVE Token = 512 - Token_NAME_P Token = 513 - Token_NAMES Token = 514 - Token_NATIONAL Token = 515 - Token_NATURAL Token = 516 - Token_NCHAR Token = 517 - Token_NEW Token = 518 - Token_NEXT Token = 519 - Token_NFC Token = 520 - Token_NFD Token = 521 - Token_NFKC Token = 522 - Token_NFKD Token = 523 - Token_NO Token = 524 - Token_NONE Token = 525 - Token_NORMALIZE Token = 526 - Token_NORMALIZED Token = 527 - Token_NOT Token = 528 - Token_NOTHING Token = 529 - Token_NOTIFY Token = 530 - Token_NOTNULL Token = 531 - Token_NOWAIT Token = 532 - Token_NULL_P Token = 533 - Token_NULLIF Token = 534 - Token_NULLS_P Token = 535 - Token_NUMERIC Token = 536 - Token_OBJECT_P Token = 537 - Token_OF Token = 538 - Token_OFF Token = 539 - Token_OFFSET Token = 540 - Token_OIDS Token = 541 - Token_OLD Token = 542 - Token_ON Token = 543 - Token_ONLY Token = 544 - Token_OPERATOR Token = 545 - Token_OPTION Token = 546 - Token_OPTIONS Token = 547 - Token_OR Token = 548 - Token_ORDER Token = 549 - Token_ORDINALITY Token = 550 - Token_OTHERS Token = 551 - Token_OUT_P Token = 552 - Token_OUTER_P Token = 553 - Token_OVER Token = 554 - Token_OVERLAPS Token = 555 - Token_OVERLAY Token = 556 - Token_OVERRIDING Token = 557 - Token_OWNED Token = 558 - Token_OWNER Token = 559 - Token_PARALLEL Token = 560 - Token_PARAMETER Token = 561 - Token_PARSER Token = 562 - Token_PARTIAL Token = 563 - Token_PARTITION Token = 564 - Token_PASSING Token = 565 - Token_PASSWORD Token = 566 - Token_PLACING Token = 567 - Token_PLANS Token = 568 - Token_POLICY Token = 569 - Token_POSITION Token = 570 - Token_PRECEDING Token = 571 - Token_PRECISION Token = 572 - Token_PRESERVE Token = 573 - Token_PREPARE Token = 574 - Token_PREPARED Token = 575 - Token_PRIMARY Token = 576 - Token_PRIOR Token = 577 - Token_PRIVILEGES Token = 578 - Token_PROCEDURAL Token = 579 - Token_PROCEDURE Token = 580 - Token_PROCEDURES Token = 581 - Token_PROGRAM Token = 582 - Token_PUBLICATION Token = 583 - Token_QUOTE Token = 584 - Token_RANGE Token = 585 - Token_READ Token = 586 - Token_REAL Token = 587 - Token_REASSIGN Token = 588 - Token_RECHECK Token = 589 - Token_RECURSIVE Token = 590 - Token_REF_P Token = 591 - Token_REFERENCES Token = 592 - Token_REFERENCING Token = 593 - Token_REFRESH Token = 594 - Token_REINDEX Token = 595 - Token_RELATIVE_P Token = 596 - Token_RELEASE Token = 597 - Token_RENAME Token = 598 - Token_REPEATABLE Token = 599 - Token_REPLACE Token = 600 - Token_REPLICA Token = 601 - Token_RESET Token = 602 - Token_RESTART Token = 603 - Token_RESTRICT Token = 604 - Token_RETURN Token = 605 - Token_RETURNING Token = 606 - Token_RETURNS Token = 607 - Token_REVOKE Token = 608 - Token_RIGHT Token = 609 - Token_ROLE Token = 610 - Token_ROLLBACK Token = 611 - Token_ROLLUP Token = 612 - Token_ROUTINE Token = 613 - Token_ROUTINES Token = 614 - Token_ROW Token = 615 - Token_ROWS Token = 616 - Token_RULE Token = 617 - Token_SAVEPOINT Token = 618 - Token_SCHEMA Token = 619 - Token_SCHEMAS Token = 620 - Token_SCROLL Token = 621 - Token_SEARCH Token = 622 - Token_SECOND_P Token = 623 - Token_SECURITY Token = 624 - Token_SELECT Token = 625 - Token_SEQUENCE Token = 626 - Token_SEQUENCES Token = 627 - Token_SERIALIZABLE Token = 628 - Token_SERVER Token = 629 - Token_SESSION Token = 630 - Token_SESSION_USER Token = 631 - Token_SET Token = 632 - Token_SETS Token = 633 - Token_SETOF Token = 634 - Token_SHARE Token = 635 - Token_SHOW Token = 636 - Token_SIMILAR Token = 637 - Token_SIMPLE Token = 638 - Token_SKIP Token = 639 - Token_SMALLINT Token = 640 - Token_SNAPSHOT Token = 641 - Token_SOME Token = 642 - Token_SQL_P Token = 643 - Token_STABLE Token = 644 - Token_STANDALONE_P Token = 645 - Token_START Token = 646 - Token_STATEMENT Token = 647 - Token_STATISTICS Token = 648 - Token_STDIN Token = 649 - Token_STDOUT Token = 650 - Token_STORAGE Token = 651 - Token_STORED Token = 652 - Token_STRICT_P Token = 653 - Token_STRIP_P Token = 654 - Token_SUBSCRIPTION Token = 655 - Token_SUBSTRING Token = 656 - Token_SUPPORT Token = 657 - Token_SYMMETRIC Token = 658 - Token_SYSID Token = 659 - Token_SYSTEM_P Token = 660 - Token_TABLE Token = 661 - Token_TABLES Token = 662 - Token_TABLESAMPLE Token = 663 - Token_TABLESPACE Token = 664 - Token_TEMP Token = 665 - Token_TEMPLATE Token = 666 - Token_TEMPORARY Token = 667 - Token_TEXT_P Token = 668 - Token_THEN Token = 669 - Token_TIES Token = 670 - Token_TIME Token = 671 - Token_TIMESTAMP Token = 672 - Token_TO Token = 673 - Token_TRAILING Token = 674 - Token_TRANSACTION Token = 675 - Token_TRANSFORM Token = 676 - Token_TREAT Token = 677 - Token_TRIGGER Token = 678 - Token_TRIM Token = 679 - Token_TRUE_P Token = 680 - Token_TRUNCATE Token = 681 - Token_TRUSTED Token = 682 - Token_TYPE_P Token = 683 - Token_TYPES_P Token = 684 - Token_UESCAPE Token = 685 - Token_UNBOUNDED Token = 686 - Token_UNCOMMITTED Token = 687 - Token_UNENCRYPTED Token = 688 - Token_UNION Token = 689 - Token_UNIQUE Token = 690 - Token_UNKNOWN Token = 691 - Token_UNLISTEN Token = 692 - Token_UNLOGGED Token = 693 - Token_UNTIL Token = 694 - Token_UPDATE Token = 695 - Token_USER Token = 696 - Token_USING Token = 697 - Token_VACUUM Token = 698 - Token_VALID Token = 699 - Token_VALIDATE Token = 700 - Token_VALIDATOR Token = 701 - Token_VALUE_P Token = 702 - Token_VALUES Token = 703 - Token_VARCHAR Token = 704 - Token_VARIADIC Token = 705 - Token_VARYING Token = 706 - Token_VERBOSE Token = 707 - Token_VERSION_P Token = 708 - Token_VIEW Token = 709 - Token_VIEWS Token = 710 - Token_VOLATILE Token = 711 - Token_WHEN Token = 712 - Token_WHERE Token = 713 - Token_WHITESPACE_P Token = 714 - Token_WINDOW Token = 715 - Token_WITH Token = 716 - Token_WITHIN Token = 717 - Token_WITHOUT Token = 718 - Token_WORK Token = 719 - Token_WRAPPER Token = 720 - Token_WRITE Token = 721 - Token_XML_P Token = 722 - Token_XMLATTRIBUTES Token = 723 - Token_XMLCONCAT Token = 724 - Token_XMLELEMENT Token = 725 - Token_XMLEXISTS Token = 726 - Token_XMLFOREST Token = 727 - Token_XMLNAMESPACES Token = 728 - Token_XMLPARSE Token = 729 - Token_XMLPI Token = 730 - Token_XMLROOT Token = 731 - Token_XMLSERIALIZE Token = 732 - Token_XMLTABLE Token = 733 - Token_YEAR_P Token = 734 - Token_YES_P Token = 735 - Token_ZONE Token = 736 - Token_NOT_LA Token = 737 - Token_NULLS_LA Token = 738 - Token_WITH_LA Token = 739 - Token_MODE_TYPE_NAME Token = 740 - Token_MODE_PLPGSQL_EXPR Token = 741 - Token_MODE_PLPGSQL_ASSIGN1 Token = 742 - Token_MODE_PLPGSQL_ASSIGN2 Token = 743 - Token_MODE_PLPGSQL_ASSIGN3 Token = 744 - Token_UMINUS Token = 745 + Token_ABSENT Token = 278 + Token_ABSOLUTE_P Token = 279 + Token_ACCESS Token = 280 + Token_ACTION Token = 281 + Token_ADD_P Token = 282 + Token_ADMIN Token = 283 + Token_AFTER Token = 284 + Token_AGGREGATE Token = 285 + Token_ALL Token = 286 + Token_ALSO Token = 287 + Token_ALTER Token = 288 + Token_ALWAYS Token = 289 + Token_ANALYSE Token = 290 + Token_ANALYZE Token = 291 + Token_AND Token = 292 + Token_ANY Token = 293 + Token_ARRAY Token = 294 + Token_AS Token = 295 + Token_ASC Token = 296 + Token_ASENSITIVE Token = 297 + Token_ASSERTION Token = 298 + Token_ASSIGNMENT Token = 299 + Token_ASYMMETRIC Token = 300 + Token_ATOMIC Token = 301 + Token_AT Token = 302 + Token_ATTACH Token = 303 + Token_ATTRIBUTE Token = 304 + Token_AUTHORIZATION Token = 305 + Token_BACKWARD Token = 306 + Token_BEFORE Token = 307 + Token_BEGIN_P Token = 308 + Token_BETWEEN Token = 309 + Token_BIGINT Token = 310 + Token_BINARY Token = 311 + Token_BIT Token = 312 + Token_BOOLEAN_P Token = 313 + Token_BOTH Token = 314 + Token_BREADTH Token = 315 + Token_BY Token = 316 + Token_CACHE Token = 317 + Token_CALL Token = 318 + Token_CALLED Token = 319 + Token_CASCADE Token = 320 + Token_CASCADED Token = 321 + Token_CASE Token = 322 + Token_CAST Token = 323 + Token_CATALOG_P Token = 324 + Token_CHAIN Token = 325 + Token_CHAR_P Token = 326 + Token_CHARACTER Token = 327 + Token_CHARACTERISTICS Token = 328 + Token_CHECK Token = 329 + Token_CHECKPOINT Token = 330 + Token_CLASS Token = 331 + Token_CLOSE Token = 332 + Token_CLUSTER Token = 333 + Token_COALESCE Token = 334 + Token_COLLATE Token = 335 + Token_COLLATION Token = 336 + Token_COLUMN Token = 337 + Token_COLUMNS Token = 338 + Token_COMMENT Token = 339 + Token_COMMENTS Token = 340 + Token_COMMIT Token = 341 + Token_COMMITTED Token = 342 + Token_COMPRESSION Token = 343 + Token_CONCURRENTLY Token = 344 + Token_CONFIGURATION Token = 345 + Token_CONFLICT Token = 346 + Token_CONNECTION Token = 347 + Token_CONSTRAINT Token = 348 + Token_CONSTRAINTS Token = 349 + Token_CONTENT_P Token = 350 + Token_CONTINUE_P Token = 351 + Token_CONVERSION_P Token = 352 + Token_COPY Token = 353 + Token_COST Token = 354 + Token_CREATE Token = 355 + Token_CROSS Token = 356 + Token_CSV Token = 357 + Token_CUBE Token = 358 + Token_CURRENT_P Token = 359 + Token_CURRENT_CATALOG Token = 360 + Token_CURRENT_DATE Token = 361 + Token_CURRENT_ROLE Token = 362 + Token_CURRENT_SCHEMA Token = 363 + Token_CURRENT_TIME Token = 364 + Token_CURRENT_TIMESTAMP Token = 365 + Token_CURRENT_USER Token = 366 + Token_CURSOR Token = 367 + Token_CYCLE Token = 368 + Token_DATA_P Token = 369 + Token_DATABASE Token = 370 + Token_DAY_P Token = 371 + Token_DEALLOCATE Token = 372 + Token_DEC Token = 373 + Token_DECIMAL_P Token = 374 + Token_DECLARE Token = 375 + Token_DEFAULT Token = 376 + Token_DEFAULTS Token = 377 + Token_DEFERRABLE Token = 378 + Token_DEFERRED Token = 379 + Token_DEFINER Token = 380 + Token_DELETE_P Token = 381 + Token_DELIMITER Token = 382 + Token_DELIMITERS Token = 383 + Token_DEPENDS Token = 384 + Token_DEPTH Token = 385 + Token_DESC Token = 386 + Token_DETACH Token = 387 + Token_DICTIONARY Token = 388 + Token_DISABLE_P Token = 389 + Token_DISCARD Token = 390 + Token_DISTINCT Token = 391 + Token_DO Token = 392 + Token_DOCUMENT_P Token = 393 + Token_DOMAIN_P Token = 394 + Token_DOUBLE_P Token = 395 + Token_DROP Token = 396 + Token_EACH Token = 397 + Token_ELSE Token = 398 + Token_ENABLE_P Token = 399 + Token_ENCODING Token = 400 + Token_ENCRYPTED Token = 401 + Token_END_P Token = 402 + Token_ENUM_P Token = 403 + Token_ESCAPE Token = 404 + Token_EVENT Token = 405 + Token_EXCEPT Token = 406 + Token_EXCLUDE Token = 407 + Token_EXCLUDING Token = 408 + Token_EXCLUSIVE Token = 409 + Token_EXECUTE Token = 410 + Token_EXISTS Token = 411 + Token_EXPLAIN Token = 412 + Token_EXPRESSION Token = 413 + Token_EXTENSION Token = 414 + Token_EXTERNAL Token = 415 + Token_EXTRACT Token = 416 + Token_FALSE_P Token = 417 + Token_FAMILY Token = 418 + Token_FETCH Token = 419 + Token_FILTER Token = 420 + Token_FINALIZE Token = 421 + Token_FIRST_P Token = 422 + Token_FLOAT_P Token = 423 + Token_FOLLOWING Token = 424 + Token_FOR Token = 425 + Token_FORCE Token = 426 + Token_FOREIGN Token = 427 + Token_FORMAT Token = 428 + Token_FORWARD Token = 429 + Token_FREEZE Token = 430 + Token_FROM Token = 431 + Token_FULL Token = 432 + Token_FUNCTION Token = 433 + Token_FUNCTIONS Token = 434 + Token_GENERATED Token = 435 + Token_GLOBAL Token = 436 + Token_GRANT Token = 437 + Token_GRANTED Token = 438 + Token_GREATEST Token = 439 + Token_GROUP_P Token = 440 + Token_GROUPING Token = 441 + Token_GROUPS Token = 442 + Token_HANDLER Token = 443 + Token_HAVING Token = 444 + Token_HEADER_P Token = 445 + Token_HOLD Token = 446 + Token_HOUR_P Token = 447 + Token_IDENTITY_P Token = 448 + Token_IF_P Token = 449 + Token_ILIKE Token = 450 + Token_IMMEDIATE Token = 451 + Token_IMMUTABLE Token = 452 + Token_IMPLICIT_P Token = 453 + Token_IMPORT_P Token = 454 + Token_IN_P Token = 455 + Token_INCLUDE Token = 456 + Token_INCLUDING Token = 457 + Token_INCREMENT Token = 458 + Token_INDENT Token = 459 + Token_INDEX Token = 460 + Token_INDEXES Token = 461 + Token_INHERIT Token = 462 + Token_INHERITS Token = 463 + Token_INITIALLY Token = 464 + Token_INLINE_P Token = 465 + Token_INNER_P Token = 466 + Token_INOUT Token = 467 + Token_INPUT_P Token = 468 + Token_INSENSITIVE Token = 469 + Token_INSERT Token = 470 + Token_INSTEAD Token = 471 + Token_INT_P Token = 472 + Token_INTEGER Token = 473 + Token_INTERSECT Token = 474 + Token_INTERVAL Token = 475 + Token_INTO Token = 476 + Token_INVOKER Token = 477 + Token_IS Token = 478 + Token_ISNULL Token = 479 + Token_ISOLATION Token = 480 + Token_JOIN Token = 481 + Token_JSON Token = 482 + Token_JSON_ARRAY Token = 483 + Token_JSON_ARRAYAGG Token = 484 + Token_JSON_OBJECT Token = 485 + Token_JSON_OBJECTAGG Token = 486 + Token_KEY Token = 487 + Token_KEYS Token = 488 + Token_LABEL Token = 489 + Token_LANGUAGE Token = 490 + Token_LARGE_P Token = 491 + Token_LAST_P Token = 492 + Token_LATERAL_P Token = 493 + Token_LEADING Token = 494 + Token_LEAKPROOF Token = 495 + Token_LEAST Token = 496 + Token_LEFT Token = 497 + Token_LEVEL Token = 498 + Token_LIKE Token = 499 + Token_LIMIT Token = 500 + Token_LISTEN Token = 501 + Token_LOAD Token = 502 + Token_LOCAL Token = 503 + Token_LOCALTIME Token = 504 + Token_LOCALTIMESTAMP Token = 505 + Token_LOCATION Token = 506 + Token_LOCK_P Token = 507 + Token_LOCKED Token = 508 + Token_LOGGED Token = 509 + Token_MAPPING Token = 510 + Token_MATCH Token = 511 + Token_MATCHED Token = 512 + Token_MATERIALIZED Token = 513 + Token_MAXVALUE Token = 514 + Token_MERGE Token = 515 + Token_METHOD Token = 516 + Token_MINUTE_P Token = 517 + Token_MINVALUE Token = 518 + Token_MODE Token = 519 + Token_MONTH_P Token = 520 + Token_MOVE Token = 521 + Token_NAME_P Token = 522 + Token_NAMES Token = 523 + Token_NATIONAL Token = 524 + Token_NATURAL Token = 525 + Token_NCHAR Token = 526 + Token_NEW Token = 527 + Token_NEXT Token = 528 + Token_NFC Token = 529 + Token_NFD Token = 530 + Token_NFKC Token = 531 + Token_NFKD Token = 532 + Token_NO Token = 533 + Token_NONE Token = 534 + Token_NORMALIZE Token = 535 + Token_NORMALIZED Token = 536 + Token_NOT Token = 537 + Token_NOTHING Token = 538 + Token_NOTIFY Token = 539 + Token_NOTNULL Token = 540 + Token_NOWAIT Token = 541 + Token_NULL_P Token = 542 + Token_NULLIF Token = 543 + Token_NULLS_P Token = 544 + Token_NUMERIC Token = 545 + Token_OBJECT_P Token = 546 + Token_OF Token = 547 + Token_OFF Token = 548 + Token_OFFSET Token = 549 + Token_OIDS Token = 550 + Token_OLD Token = 551 + Token_ON Token = 552 + Token_ONLY Token = 553 + Token_OPERATOR Token = 554 + Token_OPTION Token = 555 + Token_OPTIONS Token = 556 + Token_OR Token = 557 + Token_ORDER Token = 558 + Token_ORDINALITY Token = 559 + Token_OTHERS Token = 560 + Token_OUT_P Token = 561 + Token_OUTER_P Token = 562 + Token_OVER Token = 563 + Token_OVERLAPS Token = 564 + Token_OVERLAY Token = 565 + Token_OVERRIDING Token = 566 + Token_OWNED Token = 567 + Token_OWNER Token = 568 + Token_PARALLEL Token = 569 + Token_PARAMETER Token = 570 + Token_PARSER Token = 571 + Token_PARTIAL Token = 572 + Token_PARTITION Token = 573 + Token_PASSING Token = 574 + Token_PASSWORD Token = 575 + Token_PLACING Token = 576 + Token_PLANS Token = 577 + Token_POLICY Token = 578 + Token_POSITION Token = 579 + Token_PRECEDING Token = 580 + Token_PRECISION Token = 581 + Token_PRESERVE Token = 582 + Token_PREPARE Token = 583 + Token_PREPARED Token = 584 + Token_PRIMARY Token = 585 + Token_PRIOR Token = 586 + Token_PRIVILEGES Token = 587 + Token_PROCEDURAL Token = 588 + Token_PROCEDURE Token = 589 + Token_PROCEDURES Token = 590 + Token_PROGRAM Token = 591 + Token_PUBLICATION Token = 592 + Token_QUOTE Token = 593 + Token_RANGE Token = 594 + Token_READ Token = 595 + Token_REAL Token = 596 + Token_REASSIGN Token = 597 + Token_RECHECK Token = 598 + Token_RECURSIVE Token = 599 + Token_REF_P Token = 600 + Token_REFERENCES Token = 601 + Token_REFERENCING Token = 602 + Token_REFRESH Token = 603 + Token_REINDEX Token = 604 + Token_RELATIVE_P Token = 605 + Token_RELEASE Token = 606 + Token_RENAME Token = 607 + Token_REPEATABLE Token = 608 + Token_REPLACE Token = 609 + Token_REPLICA Token = 610 + Token_RESET Token = 611 + Token_RESTART Token = 612 + Token_RESTRICT Token = 613 + Token_RETURN Token = 614 + Token_RETURNING Token = 615 + Token_RETURNS Token = 616 + Token_REVOKE Token = 617 + Token_RIGHT Token = 618 + Token_ROLE Token = 619 + Token_ROLLBACK Token = 620 + Token_ROLLUP Token = 621 + Token_ROUTINE Token = 622 + Token_ROUTINES Token = 623 + Token_ROW Token = 624 + Token_ROWS Token = 625 + Token_RULE Token = 626 + Token_SAVEPOINT Token = 627 + Token_SCALAR Token = 628 + Token_SCHEMA Token = 629 + Token_SCHEMAS Token = 630 + Token_SCROLL Token = 631 + Token_SEARCH Token = 632 + Token_SECOND_P Token = 633 + Token_SECURITY Token = 634 + Token_SELECT Token = 635 + Token_SEQUENCE Token = 636 + Token_SEQUENCES Token = 637 + Token_SERIALIZABLE Token = 638 + Token_SERVER Token = 639 + Token_SESSION Token = 640 + Token_SESSION_USER Token = 641 + Token_SET Token = 642 + Token_SETS Token = 643 + Token_SETOF Token = 644 + Token_SHARE Token = 645 + Token_SHOW Token = 646 + Token_SIMILAR Token = 647 + Token_SIMPLE Token = 648 + Token_SKIP Token = 649 + Token_SMALLINT Token = 650 + Token_SNAPSHOT Token = 651 + Token_SOME Token = 652 + Token_SQL_P Token = 653 + Token_STABLE Token = 654 + Token_STANDALONE_P Token = 655 + Token_START Token = 656 + Token_STATEMENT Token = 657 + Token_STATISTICS Token = 658 + Token_STDIN Token = 659 + Token_STDOUT Token = 660 + Token_STORAGE Token = 661 + Token_STORED Token = 662 + Token_STRICT_P Token = 663 + Token_STRIP_P Token = 664 + Token_SUBSCRIPTION Token = 665 + Token_SUBSTRING Token = 666 + Token_SUPPORT Token = 667 + Token_SYMMETRIC Token = 668 + Token_SYSID Token = 669 + Token_SYSTEM_P Token = 670 + Token_SYSTEM_USER Token = 671 + Token_TABLE Token = 672 + Token_TABLES Token = 673 + Token_TABLESAMPLE Token = 674 + Token_TABLESPACE Token = 675 + Token_TEMP Token = 676 + Token_TEMPLATE Token = 677 + Token_TEMPORARY Token = 678 + Token_TEXT_P Token = 679 + Token_THEN Token = 680 + Token_TIES Token = 681 + Token_TIME Token = 682 + Token_TIMESTAMP Token = 683 + Token_TO Token = 684 + Token_TRAILING Token = 685 + Token_TRANSACTION Token = 686 + Token_TRANSFORM Token = 687 + Token_TREAT Token = 688 + Token_TRIGGER Token = 689 + Token_TRIM Token = 690 + Token_TRUE_P Token = 691 + Token_TRUNCATE Token = 692 + Token_TRUSTED Token = 693 + Token_TYPE_P Token = 694 + Token_TYPES_P Token = 695 + Token_UESCAPE Token = 696 + Token_UNBOUNDED Token = 697 + Token_UNCOMMITTED Token = 698 + Token_UNENCRYPTED Token = 699 + Token_UNION Token = 700 + Token_UNIQUE Token = 701 + Token_UNKNOWN Token = 702 + Token_UNLISTEN Token = 703 + Token_UNLOGGED Token = 704 + Token_UNTIL Token = 705 + Token_UPDATE Token = 706 + Token_USER Token = 707 + Token_USING Token = 708 + Token_VACUUM Token = 709 + Token_VALID Token = 710 + Token_VALIDATE Token = 711 + Token_VALIDATOR Token = 712 + Token_VALUE_P Token = 713 + Token_VALUES Token = 714 + Token_VARCHAR Token = 715 + Token_VARIADIC Token = 716 + Token_VARYING Token = 717 + Token_VERBOSE Token = 718 + Token_VERSION_P Token = 719 + Token_VIEW Token = 720 + Token_VIEWS Token = 721 + Token_VOLATILE Token = 722 + Token_WHEN Token = 723 + Token_WHERE Token = 724 + Token_WHITESPACE_P Token = 725 + Token_WINDOW Token = 726 + Token_WITH Token = 727 + Token_WITHIN Token = 728 + Token_WITHOUT Token = 729 + Token_WORK Token = 730 + Token_WRAPPER Token = 731 + Token_WRITE Token = 732 + Token_XML_P Token = 733 + Token_XMLATTRIBUTES Token = 734 + Token_XMLCONCAT Token = 735 + Token_XMLELEMENT Token = 736 + Token_XMLEXISTS Token = 737 + Token_XMLFOREST Token = 738 + Token_XMLNAMESPACES Token = 739 + Token_XMLPARSE Token = 740 + Token_XMLPI Token = 741 + Token_XMLROOT Token = 742 + Token_XMLSERIALIZE Token = 743 + Token_XMLTABLE Token = 744 + Token_YEAR_P Token = 745 + Token_YES_P Token = 746 + Token_ZONE Token = 747 + Token_FORMAT_LA Token = 748 + Token_NOT_LA Token = 749 + Token_NULLS_LA Token = 750 + Token_WITH_LA Token = 751 + Token_WITHOUT_LA Token = 752 + Token_MODE_TYPE_NAME Token = 753 + Token_MODE_PLPGSQL_EXPR Token = 754 + Token_MODE_PLPGSQL_ASSIGN1 Token = 755 + Token_MODE_PLPGSQL_ASSIGN2 Token = 756 + Token_MODE_PLPGSQL_ASSIGN3 Token = 757 + Token_UMINUS Token = 758 ) // Enum value maps for Token. var ( Token_name = map[int32]string{ 0: "NUL", + 36: "ASCII_36", 37: "ASCII_37", 40: "ASCII_40", 41: "ASCII_41", @@ -4294,477 +4566,491 @@ var ( 275: "SQL_COMMENT", 276: "C_COMMENT", 277: "ABORT_P", - 278: "ABSOLUTE_P", - 279: "ACCESS", - 280: "ACTION", - 281: "ADD_P", - 282: "ADMIN", - 283: "AFTER", - 284: "AGGREGATE", - 285: "ALL", - 286: "ALSO", - 287: "ALTER", - 288: "ALWAYS", - 289: "ANALYSE", - 290: "ANALYZE", - 291: "AND", - 292: "ANY", - 293: "ARRAY", - 294: "AS", - 295: "ASC", - 296: "ASENSITIVE", - 297: "ASSERTION", - 298: "ASSIGNMENT", - 299: "ASYMMETRIC", - 300: "ATOMIC", - 301: "AT", - 302: "ATTACH", - 303: "ATTRIBUTE", - 304: "AUTHORIZATION", - 305: "BACKWARD", - 306: "BEFORE", - 307: "BEGIN_P", - 308: "BETWEEN", - 309: "BIGINT", - 310: "BINARY", - 311: "BIT", - 312: "BOOLEAN_P", - 313: "BOTH", - 314: "BREADTH", - 315: "BY", - 316: "CACHE", - 317: "CALL", - 318: "CALLED", - 319: "CASCADE", - 320: "CASCADED", - 321: "CASE", - 322: "CAST", - 323: "CATALOG_P", - 324: "CHAIN", - 325: "CHAR_P", - 326: "CHARACTER", - 327: "CHARACTERISTICS", - 328: "CHECK", - 329: "CHECKPOINT", - 330: "CLASS", - 331: "CLOSE", - 332: "CLUSTER", - 333: "COALESCE", - 334: "COLLATE", - 335: "COLLATION", - 336: "COLUMN", - 337: "COLUMNS", - 338: "COMMENT", - 339: "COMMENTS", - 340: "COMMIT", - 341: "COMMITTED", - 342: "COMPRESSION", - 343: "CONCURRENTLY", - 344: "CONFIGURATION", - 345: "CONFLICT", - 346: "CONNECTION", - 347: "CONSTRAINT", - 348: "CONSTRAINTS", - 349: "CONTENT_P", - 350: "CONTINUE_P", - 351: "CONVERSION_P", - 352: "COPY", - 353: "COST", - 354: "CREATE", - 355: "CROSS", - 356: "CSV", - 357: "CUBE", - 358: "CURRENT_P", - 359: "CURRENT_CATALOG", - 360: "CURRENT_DATE", - 361: "CURRENT_ROLE", - 362: "CURRENT_SCHEMA", - 363: "CURRENT_TIME", - 364: "CURRENT_TIMESTAMP", - 365: "CURRENT_USER", - 366: "CURSOR", - 367: "CYCLE", - 368: "DATA_P", - 369: "DATABASE", - 370: "DAY_P", - 371: "DEALLOCATE", - 372: "DEC", - 373: "DECIMAL_P", - 374: "DECLARE", - 375: "DEFAULT", - 376: "DEFAULTS", - 377: "DEFERRABLE", - 378: "DEFERRED", - 379: "DEFINER", - 380: "DELETE_P", - 381: "DELIMITER", - 382: "DELIMITERS", - 383: "DEPENDS", - 384: "DEPTH", - 385: "DESC", - 386: "DETACH", - 387: "DICTIONARY", - 388: "DISABLE_P", - 389: "DISCARD", - 390: "DISTINCT", - 391: "DO", - 392: "DOCUMENT_P", - 393: "DOMAIN_P", - 394: "DOUBLE_P", - 395: "DROP", - 396: "EACH", - 397: "ELSE", - 398: "ENABLE_P", - 399: "ENCODING", - 400: "ENCRYPTED", - 401: "END_P", - 402: "ENUM_P", - 403: "ESCAPE", - 404: "EVENT", - 405: "EXCEPT", - 406: "EXCLUDE", - 407: "EXCLUDING", - 408: "EXCLUSIVE", - 409: "EXECUTE", - 410: "EXISTS", - 411: "EXPLAIN", - 412: "EXPRESSION", - 413: "EXTENSION", - 414: "EXTERNAL", - 415: "EXTRACT", - 416: "FALSE_P", - 417: "FAMILY", - 418: "FETCH", - 419: "FILTER", - 420: "FINALIZE", - 421: "FIRST_P", - 422: "FLOAT_P", - 423: "FOLLOWING", - 424: "FOR", - 425: "FORCE", - 426: "FOREIGN", - 427: "FORWARD", - 428: "FREEZE", - 429: "FROM", - 430: "FULL", - 431: "FUNCTION", - 432: "FUNCTIONS", - 433: "GENERATED", - 434: "GLOBAL", - 435: "GRANT", - 436: "GRANTED", - 437: "GREATEST", - 438: "GROUP_P", - 439: "GROUPING", - 440: "GROUPS", - 441: "HANDLER", - 442: "HAVING", - 443: "HEADER_P", - 444: "HOLD", - 445: "HOUR_P", - 446: "IDENTITY_P", - 447: "IF_P", - 448: "ILIKE", - 449: "IMMEDIATE", - 450: "IMMUTABLE", - 451: "IMPLICIT_P", - 452: "IMPORT_P", - 453: "IN_P", - 454: "INCLUDE", - 455: "INCLUDING", - 456: "INCREMENT", - 457: "INDEX", - 458: "INDEXES", - 459: "INHERIT", - 460: "INHERITS", - 461: "INITIALLY", - 462: "INLINE_P", - 463: "INNER_P", - 464: "INOUT", - 465: "INPUT_P", - 466: "INSENSITIVE", - 467: "INSERT", - 468: "INSTEAD", - 469: "INT_P", - 470: "INTEGER", - 471: "INTERSECT", - 472: "INTERVAL", - 473: "INTO", - 474: "INVOKER", - 475: "IS", - 476: "ISNULL", - 477: "ISOLATION", - 478: "JOIN", - 479: "KEY", - 480: "LABEL", - 481: "LANGUAGE", - 482: "LARGE_P", - 483: "LAST_P", - 484: "LATERAL_P", - 485: "LEADING", - 486: "LEAKPROOF", - 487: "LEAST", - 488: "LEFT", - 489: "LEVEL", - 490: "LIKE", - 491: "LIMIT", - 492: "LISTEN", - 493: "LOAD", - 494: "LOCAL", - 495: "LOCALTIME", - 496: "LOCALTIMESTAMP", - 497: "LOCATION", - 498: "LOCK_P", - 499: "LOCKED", - 500: "LOGGED", - 501: "MAPPING", - 502: "MATCH", - 503: "MATCHED", - 504: "MATERIALIZED", - 505: "MAXVALUE", - 506: "MERGE", - 507: "METHOD", - 508: "MINUTE_P", - 509: "MINVALUE", - 510: "MODE", - 511: "MONTH_P", - 512: "MOVE", - 513: "NAME_P", - 514: "NAMES", - 515: "NATIONAL", - 516: "NATURAL", - 517: "NCHAR", - 518: "NEW", - 519: "NEXT", - 520: "NFC", - 521: "NFD", - 522: "NFKC", - 523: "NFKD", - 524: "NO", - 525: "NONE", - 526: "NORMALIZE", - 527: "NORMALIZED", - 528: "NOT", - 529: "NOTHING", - 530: "NOTIFY", - 531: "NOTNULL", - 532: "NOWAIT", - 533: "NULL_P", - 534: "NULLIF", - 535: "NULLS_P", - 536: "NUMERIC", - 537: "OBJECT_P", - 538: "OF", - 539: "OFF", - 540: "OFFSET", - 541: "OIDS", - 542: "OLD", - 543: "ON", - 544: "ONLY", - 545: "OPERATOR", - 546: "OPTION", - 547: "OPTIONS", - 548: "OR", - 549: "ORDER", - 550: "ORDINALITY", - 551: "OTHERS", - 552: "OUT_P", - 553: "OUTER_P", - 554: "OVER", - 555: "OVERLAPS", - 556: "OVERLAY", - 557: "OVERRIDING", - 558: "OWNED", - 559: "OWNER", - 560: "PARALLEL", - 561: "PARAMETER", - 562: "PARSER", - 563: "PARTIAL", - 564: "PARTITION", - 565: "PASSING", - 566: "PASSWORD", - 567: "PLACING", - 568: "PLANS", - 569: "POLICY", - 570: "POSITION", - 571: "PRECEDING", - 572: "PRECISION", - 573: "PRESERVE", - 574: "PREPARE", - 575: "PREPARED", - 576: "PRIMARY", - 577: "PRIOR", - 578: "PRIVILEGES", - 579: "PROCEDURAL", - 580: "PROCEDURE", - 581: "PROCEDURES", - 582: "PROGRAM", - 583: "PUBLICATION", - 584: "QUOTE", - 585: "RANGE", - 586: "READ", - 587: "REAL", - 588: "REASSIGN", - 589: "RECHECK", - 590: "RECURSIVE", - 591: "REF_P", - 592: "REFERENCES", - 593: "REFERENCING", - 594: "REFRESH", - 595: "REINDEX", - 596: "RELATIVE_P", - 597: "RELEASE", - 598: "RENAME", - 599: "REPEATABLE", - 600: "REPLACE", - 601: "REPLICA", - 602: "RESET", - 603: "RESTART", - 604: "RESTRICT", - 605: "RETURN", - 606: "RETURNING", - 607: "RETURNS", - 608: "REVOKE", - 609: "RIGHT", - 610: "ROLE", - 611: "ROLLBACK", - 612: "ROLLUP", - 613: "ROUTINE", - 614: "ROUTINES", - 615: "ROW", - 616: "ROWS", - 617: "RULE", - 618: "SAVEPOINT", - 619: "SCHEMA", - 620: "SCHEMAS", - 621: "SCROLL", - 622: "SEARCH", - 623: "SECOND_P", - 624: "SECURITY", - 625: "SELECT", - 626: "SEQUENCE", - 627: "SEQUENCES", - 628: "SERIALIZABLE", - 629: "SERVER", - 630: "SESSION", - 631: "SESSION_USER", - 632: "SET", - 633: "SETS", - 634: "SETOF", - 635: "SHARE", - 636: "SHOW", - 637: "SIMILAR", - 638: "SIMPLE", - 639: "SKIP", - 640: "SMALLINT", - 641: "SNAPSHOT", - 642: "SOME", - 643: "SQL_P", - 644: "STABLE", - 645: "STANDALONE_P", - 646: "START", - 647: "STATEMENT", - 648: "STATISTICS", - 649: "STDIN", - 650: "STDOUT", - 651: "STORAGE", - 652: "STORED", - 653: "STRICT_P", - 654: "STRIP_P", - 655: "SUBSCRIPTION", - 656: "SUBSTRING", - 657: "SUPPORT", - 658: "SYMMETRIC", - 659: "SYSID", - 660: "SYSTEM_P", - 661: "TABLE", - 662: "TABLES", - 663: "TABLESAMPLE", - 664: "TABLESPACE", - 665: "TEMP", - 666: "TEMPLATE", - 667: "TEMPORARY", - 668: "TEXT_P", - 669: "THEN", - 670: "TIES", - 671: "TIME", - 672: "TIMESTAMP", - 673: "TO", - 674: "TRAILING", - 675: "TRANSACTION", - 676: "TRANSFORM", - 677: "TREAT", - 678: "TRIGGER", - 679: "TRIM", - 680: "TRUE_P", - 681: "TRUNCATE", - 682: "TRUSTED", - 683: "TYPE_P", - 684: "TYPES_P", - 685: "UESCAPE", - 686: "UNBOUNDED", - 687: "UNCOMMITTED", - 688: "UNENCRYPTED", - 689: "UNION", - 690: "UNIQUE", - 691: "UNKNOWN", - 692: "UNLISTEN", - 693: "UNLOGGED", - 694: "UNTIL", - 695: "UPDATE", - 696: "USER", - 697: "USING", - 698: "VACUUM", - 699: "VALID", - 700: "VALIDATE", - 701: "VALIDATOR", - 702: "VALUE_P", - 703: "VALUES", - 704: "VARCHAR", - 705: "VARIADIC", - 706: "VARYING", - 707: "VERBOSE", - 708: "VERSION_P", - 709: "VIEW", - 710: "VIEWS", - 711: "VOLATILE", - 712: "WHEN", - 713: "WHERE", - 714: "WHITESPACE_P", - 715: "WINDOW", - 716: "WITH", - 717: "WITHIN", - 718: "WITHOUT", - 719: "WORK", - 720: "WRAPPER", - 721: "WRITE", - 722: "XML_P", - 723: "XMLATTRIBUTES", - 724: "XMLCONCAT", - 725: "XMLELEMENT", - 726: "XMLEXISTS", - 727: "XMLFOREST", - 728: "XMLNAMESPACES", - 729: "XMLPARSE", - 730: "XMLPI", - 731: "XMLROOT", - 732: "XMLSERIALIZE", - 733: "XMLTABLE", - 734: "YEAR_P", - 735: "YES_P", - 736: "ZONE", - 737: "NOT_LA", - 738: "NULLS_LA", - 739: "WITH_LA", - 740: "MODE_TYPE_NAME", - 741: "MODE_PLPGSQL_EXPR", - 742: "MODE_PLPGSQL_ASSIGN1", - 743: "MODE_PLPGSQL_ASSIGN2", - 744: "MODE_PLPGSQL_ASSIGN3", - 745: "UMINUS", + 278: "ABSENT", + 279: "ABSOLUTE_P", + 280: "ACCESS", + 281: "ACTION", + 282: "ADD_P", + 283: "ADMIN", + 284: "AFTER", + 285: "AGGREGATE", + 286: "ALL", + 287: "ALSO", + 288: "ALTER", + 289: "ALWAYS", + 290: "ANALYSE", + 291: "ANALYZE", + 292: "AND", + 293: "ANY", + 294: "ARRAY", + 295: "AS", + 296: "ASC", + 297: "ASENSITIVE", + 298: "ASSERTION", + 299: "ASSIGNMENT", + 300: "ASYMMETRIC", + 301: "ATOMIC", + 302: "AT", + 303: "ATTACH", + 304: "ATTRIBUTE", + 305: "AUTHORIZATION", + 306: "BACKWARD", + 307: "BEFORE", + 308: "BEGIN_P", + 309: "BETWEEN", + 310: "BIGINT", + 311: "BINARY", + 312: "BIT", + 313: "BOOLEAN_P", + 314: "BOTH", + 315: "BREADTH", + 316: "BY", + 317: "CACHE", + 318: "CALL", + 319: "CALLED", + 320: "CASCADE", + 321: "CASCADED", + 322: "CASE", + 323: "CAST", + 324: "CATALOG_P", + 325: "CHAIN", + 326: "CHAR_P", + 327: "CHARACTER", + 328: "CHARACTERISTICS", + 329: "CHECK", + 330: "CHECKPOINT", + 331: "CLASS", + 332: "CLOSE", + 333: "CLUSTER", + 334: "COALESCE", + 335: "COLLATE", + 336: "COLLATION", + 337: "COLUMN", + 338: "COLUMNS", + 339: "COMMENT", + 340: "COMMENTS", + 341: "COMMIT", + 342: "COMMITTED", + 343: "COMPRESSION", + 344: "CONCURRENTLY", + 345: "CONFIGURATION", + 346: "CONFLICT", + 347: "CONNECTION", + 348: "CONSTRAINT", + 349: "CONSTRAINTS", + 350: "CONTENT_P", + 351: "CONTINUE_P", + 352: "CONVERSION_P", + 353: "COPY", + 354: "COST", + 355: "CREATE", + 356: "CROSS", + 357: "CSV", + 358: "CUBE", + 359: "CURRENT_P", + 360: "CURRENT_CATALOG", + 361: "CURRENT_DATE", + 362: "CURRENT_ROLE", + 363: "CURRENT_SCHEMA", + 364: "CURRENT_TIME", + 365: "CURRENT_TIMESTAMP", + 366: "CURRENT_USER", + 367: "CURSOR", + 368: "CYCLE", + 369: "DATA_P", + 370: "DATABASE", + 371: "DAY_P", + 372: "DEALLOCATE", + 373: "DEC", + 374: "DECIMAL_P", + 375: "DECLARE", + 376: "DEFAULT", + 377: "DEFAULTS", + 378: "DEFERRABLE", + 379: "DEFERRED", + 380: "DEFINER", + 381: "DELETE_P", + 382: "DELIMITER", + 383: "DELIMITERS", + 384: "DEPENDS", + 385: "DEPTH", + 386: "DESC", + 387: "DETACH", + 388: "DICTIONARY", + 389: "DISABLE_P", + 390: "DISCARD", + 391: "DISTINCT", + 392: "DO", + 393: "DOCUMENT_P", + 394: "DOMAIN_P", + 395: "DOUBLE_P", + 396: "DROP", + 397: "EACH", + 398: "ELSE", + 399: "ENABLE_P", + 400: "ENCODING", + 401: "ENCRYPTED", + 402: "END_P", + 403: "ENUM_P", + 404: "ESCAPE", + 405: "EVENT", + 406: "EXCEPT", + 407: "EXCLUDE", + 408: "EXCLUDING", + 409: "EXCLUSIVE", + 410: "EXECUTE", + 411: "EXISTS", + 412: "EXPLAIN", + 413: "EXPRESSION", + 414: "EXTENSION", + 415: "EXTERNAL", + 416: "EXTRACT", + 417: "FALSE_P", + 418: "FAMILY", + 419: "FETCH", + 420: "FILTER", + 421: "FINALIZE", + 422: "FIRST_P", + 423: "FLOAT_P", + 424: "FOLLOWING", + 425: "FOR", + 426: "FORCE", + 427: "FOREIGN", + 428: "FORMAT", + 429: "FORWARD", + 430: "FREEZE", + 431: "FROM", + 432: "FULL", + 433: "FUNCTION", + 434: "FUNCTIONS", + 435: "GENERATED", + 436: "GLOBAL", + 437: "GRANT", + 438: "GRANTED", + 439: "GREATEST", + 440: "GROUP_P", + 441: "GROUPING", + 442: "GROUPS", + 443: "HANDLER", + 444: "HAVING", + 445: "HEADER_P", + 446: "HOLD", + 447: "HOUR_P", + 448: "IDENTITY_P", + 449: "IF_P", + 450: "ILIKE", + 451: "IMMEDIATE", + 452: "IMMUTABLE", + 453: "IMPLICIT_P", + 454: "IMPORT_P", + 455: "IN_P", + 456: "INCLUDE", + 457: "INCLUDING", + 458: "INCREMENT", + 459: "INDENT", + 460: "INDEX", + 461: "INDEXES", + 462: "INHERIT", + 463: "INHERITS", + 464: "INITIALLY", + 465: "INLINE_P", + 466: "INNER_P", + 467: "INOUT", + 468: "INPUT_P", + 469: "INSENSITIVE", + 470: "INSERT", + 471: "INSTEAD", + 472: "INT_P", + 473: "INTEGER", + 474: "INTERSECT", + 475: "INTERVAL", + 476: "INTO", + 477: "INVOKER", + 478: "IS", + 479: "ISNULL", + 480: "ISOLATION", + 481: "JOIN", + 482: "JSON", + 483: "JSON_ARRAY", + 484: "JSON_ARRAYAGG", + 485: "JSON_OBJECT", + 486: "JSON_OBJECTAGG", + 487: "KEY", + 488: "KEYS", + 489: "LABEL", + 490: "LANGUAGE", + 491: "LARGE_P", + 492: "LAST_P", + 493: "LATERAL_P", + 494: "LEADING", + 495: "LEAKPROOF", + 496: "LEAST", + 497: "LEFT", + 498: "LEVEL", + 499: "LIKE", + 500: "LIMIT", + 501: "LISTEN", + 502: "LOAD", + 503: "LOCAL", + 504: "LOCALTIME", + 505: "LOCALTIMESTAMP", + 506: "LOCATION", + 507: "LOCK_P", + 508: "LOCKED", + 509: "LOGGED", + 510: "MAPPING", + 511: "MATCH", + 512: "MATCHED", + 513: "MATERIALIZED", + 514: "MAXVALUE", + 515: "MERGE", + 516: "METHOD", + 517: "MINUTE_P", + 518: "MINVALUE", + 519: "MODE", + 520: "MONTH_P", + 521: "MOVE", + 522: "NAME_P", + 523: "NAMES", + 524: "NATIONAL", + 525: "NATURAL", + 526: "NCHAR", + 527: "NEW", + 528: "NEXT", + 529: "NFC", + 530: "NFD", + 531: "NFKC", + 532: "NFKD", + 533: "NO", + 534: "NONE", + 535: "NORMALIZE", + 536: "NORMALIZED", + 537: "NOT", + 538: "NOTHING", + 539: "NOTIFY", + 540: "NOTNULL", + 541: "NOWAIT", + 542: "NULL_P", + 543: "NULLIF", + 544: "NULLS_P", + 545: "NUMERIC", + 546: "OBJECT_P", + 547: "OF", + 548: "OFF", + 549: "OFFSET", + 550: "OIDS", + 551: "OLD", + 552: "ON", + 553: "ONLY", + 554: "OPERATOR", + 555: "OPTION", + 556: "OPTIONS", + 557: "OR", + 558: "ORDER", + 559: "ORDINALITY", + 560: "OTHERS", + 561: "OUT_P", + 562: "OUTER_P", + 563: "OVER", + 564: "OVERLAPS", + 565: "OVERLAY", + 566: "OVERRIDING", + 567: "OWNED", + 568: "OWNER", + 569: "PARALLEL", + 570: "PARAMETER", + 571: "PARSER", + 572: "PARTIAL", + 573: "PARTITION", + 574: "PASSING", + 575: "PASSWORD", + 576: "PLACING", + 577: "PLANS", + 578: "POLICY", + 579: "POSITION", + 580: "PRECEDING", + 581: "PRECISION", + 582: "PRESERVE", + 583: "PREPARE", + 584: "PREPARED", + 585: "PRIMARY", + 586: "PRIOR", + 587: "PRIVILEGES", + 588: "PROCEDURAL", + 589: "PROCEDURE", + 590: "PROCEDURES", + 591: "PROGRAM", + 592: "PUBLICATION", + 593: "QUOTE", + 594: "RANGE", + 595: "READ", + 596: "REAL", + 597: "REASSIGN", + 598: "RECHECK", + 599: "RECURSIVE", + 600: "REF_P", + 601: "REFERENCES", + 602: "REFERENCING", + 603: "REFRESH", + 604: "REINDEX", + 605: "RELATIVE_P", + 606: "RELEASE", + 607: "RENAME", + 608: "REPEATABLE", + 609: "REPLACE", + 610: "REPLICA", + 611: "RESET", + 612: "RESTART", + 613: "RESTRICT", + 614: "RETURN", + 615: "RETURNING", + 616: "RETURNS", + 617: "REVOKE", + 618: "RIGHT", + 619: "ROLE", + 620: "ROLLBACK", + 621: "ROLLUP", + 622: "ROUTINE", + 623: "ROUTINES", + 624: "ROW", + 625: "ROWS", + 626: "RULE", + 627: "SAVEPOINT", + 628: "SCALAR", + 629: "SCHEMA", + 630: "SCHEMAS", + 631: "SCROLL", + 632: "SEARCH", + 633: "SECOND_P", + 634: "SECURITY", + 635: "SELECT", + 636: "SEQUENCE", + 637: "SEQUENCES", + 638: "SERIALIZABLE", + 639: "SERVER", + 640: "SESSION", + 641: "SESSION_USER", + 642: "SET", + 643: "SETS", + 644: "SETOF", + 645: "SHARE", + 646: "SHOW", + 647: "SIMILAR", + 648: "SIMPLE", + 649: "SKIP", + 650: "SMALLINT", + 651: "SNAPSHOT", + 652: "SOME", + 653: "SQL_P", + 654: "STABLE", + 655: "STANDALONE_P", + 656: "START", + 657: "STATEMENT", + 658: "STATISTICS", + 659: "STDIN", + 660: "STDOUT", + 661: "STORAGE", + 662: "STORED", + 663: "STRICT_P", + 664: "STRIP_P", + 665: "SUBSCRIPTION", + 666: "SUBSTRING", + 667: "SUPPORT", + 668: "SYMMETRIC", + 669: "SYSID", + 670: "SYSTEM_P", + 671: "SYSTEM_USER", + 672: "TABLE", + 673: "TABLES", + 674: "TABLESAMPLE", + 675: "TABLESPACE", + 676: "TEMP", + 677: "TEMPLATE", + 678: "TEMPORARY", + 679: "TEXT_P", + 680: "THEN", + 681: "TIES", + 682: "TIME", + 683: "TIMESTAMP", + 684: "TO", + 685: "TRAILING", + 686: "TRANSACTION", + 687: "TRANSFORM", + 688: "TREAT", + 689: "TRIGGER", + 690: "TRIM", + 691: "TRUE_P", + 692: "TRUNCATE", + 693: "TRUSTED", + 694: "TYPE_P", + 695: "TYPES_P", + 696: "UESCAPE", + 697: "UNBOUNDED", + 698: "UNCOMMITTED", + 699: "UNENCRYPTED", + 700: "UNION", + 701: "UNIQUE", + 702: "UNKNOWN", + 703: "UNLISTEN", + 704: "UNLOGGED", + 705: "UNTIL", + 706: "UPDATE", + 707: "USER", + 708: "USING", + 709: "VACUUM", + 710: "VALID", + 711: "VALIDATE", + 712: "VALIDATOR", + 713: "VALUE_P", + 714: "VALUES", + 715: "VARCHAR", + 716: "VARIADIC", + 717: "VARYING", + 718: "VERBOSE", + 719: "VERSION_P", + 720: "VIEW", + 721: "VIEWS", + 722: "VOLATILE", + 723: "WHEN", + 724: "WHERE", + 725: "WHITESPACE_P", + 726: "WINDOW", + 727: "WITH", + 728: "WITHIN", + 729: "WITHOUT", + 730: "WORK", + 731: "WRAPPER", + 732: "WRITE", + 733: "XML_P", + 734: "XMLATTRIBUTES", + 735: "XMLCONCAT", + 736: "XMLELEMENT", + 737: "XMLEXISTS", + 738: "XMLFOREST", + 739: "XMLNAMESPACES", + 740: "XMLPARSE", + 741: "XMLPI", + 742: "XMLROOT", + 743: "XMLSERIALIZE", + 744: "XMLTABLE", + 745: "YEAR_P", + 746: "YES_P", + 747: "ZONE", + 748: "FORMAT_LA", + 749: "NOT_LA", + 750: "NULLS_LA", + 751: "WITH_LA", + 752: "WITHOUT_LA", + 753: "MODE_TYPE_NAME", + 754: "MODE_PLPGSQL_EXPR", + 755: "MODE_PLPGSQL_ASSIGN1", + 756: "MODE_PLPGSQL_ASSIGN2", + 757: "MODE_PLPGSQL_ASSIGN3", + 758: "UMINUS", } Token_value = map[string]int32{ "NUL": 0, + "ASCII_36": 36, "ASCII_37": 37, "ASCII_40": 40, "ASCII_41": 41, @@ -4804,474 +5090,487 @@ var ( "SQL_COMMENT": 275, "C_COMMENT": 276, "ABORT_P": 277, - "ABSOLUTE_P": 278, - "ACCESS": 279, - "ACTION": 280, - "ADD_P": 281, - "ADMIN": 282, - "AFTER": 283, - "AGGREGATE": 284, - "ALL": 285, - "ALSO": 286, - "ALTER": 287, - "ALWAYS": 288, - "ANALYSE": 289, - "ANALYZE": 290, - "AND": 291, - "ANY": 292, - "ARRAY": 293, - "AS": 294, - "ASC": 295, - "ASENSITIVE": 296, - "ASSERTION": 297, - "ASSIGNMENT": 298, - "ASYMMETRIC": 299, - "ATOMIC": 300, - "AT": 301, - "ATTACH": 302, - "ATTRIBUTE": 303, - "AUTHORIZATION": 304, - "BACKWARD": 305, - "BEFORE": 306, - "BEGIN_P": 307, - "BETWEEN": 308, - "BIGINT": 309, - "BINARY": 310, - "BIT": 311, - "BOOLEAN_P": 312, - "BOTH": 313, - "BREADTH": 314, - "BY": 315, - "CACHE": 316, - "CALL": 317, - "CALLED": 318, - "CASCADE": 319, - "CASCADED": 320, - "CASE": 321, - "CAST": 322, - "CATALOG_P": 323, - "CHAIN": 324, - "CHAR_P": 325, - "CHARACTER": 326, - "CHARACTERISTICS": 327, - "CHECK": 328, - "CHECKPOINT": 329, - "CLASS": 330, - "CLOSE": 331, - "CLUSTER": 332, - "COALESCE": 333, - "COLLATE": 334, - "COLLATION": 335, - "COLUMN": 336, - "COLUMNS": 337, - "COMMENT": 338, - "COMMENTS": 339, - "COMMIT": 340, - "COMMITTED": 341, - "COMPRESSION": 342, - "CONCURRENTLY": 343, - "CONFIGURATION": 344, - "CONFLICT": 345, - "CONNECTION": 346, - "CONSTRAINT": 347, - "CONSTRAINTS": 348, - "CONTENT_P": 349, - "CONTINUE_P": 350, - "CONVERSION_P": 351, - "COPY": 352, - "COST": 353, - "CREATE": 354, - "CROSS": 355, - "CSV": 356, - "CUBE": 357, - "CURRENT_P": 358, - "CURRENT_CATALOG": 359, - "CURRENT_DATE": 360, - "CURRENT_ROLE": 361, - "CURRENT_SCHEMA": 362, - "CURRENT_TIME": 363, - "CURRENT_TIMESTAMP": 364, - "CURRENT_USER": 365, - "CURSOR": 366, - "CYCLE": 367, - "DATA_P": 368, - "DATABASE": 369, - "DAY_P": 370, - "DEALLOCATE": 371, - "DEC": 372, - "DECIMAL_P": 373, - "DECLARE": 374, - "DEFAULT": 375, - "DEFAULTS": 376, - "DEFERRABLE": 377, - "DEFERRED": 378, - "DEFINER": 379, - "DELETE_P": 380, - "DELIMITER": 381, - "DELIMITERS": 382, - "DEPENDS": 383, - "DEPTH": 384, - "DESC": 385, - "DETACH": 386, - "DICTIONARY": 387, - "DISABLE_P": 388, - "DISCARD": 389, - "DISTINCT": 390, - "DO": 391, - "DOCUMENT_P": 392, - "DOMAIN_P": 393, - "DOUBLE_P": 394, - "DROP": 395, - "EACH": 396, - "ELSE": 397, - "ENABLE_P": 398, - "ENCODING": 399, - "ENCRYPTED": 400, - "END_P": 401, - "ENUM_P": 402, - "ESCAPE": 403, - "EVENT": 404, - "EXCEPT": 405, - "EXCLUDE": 406, - "EXCLUDING": 407, - "EXCLUSIVE": 408, - "EXECUTE": 409, - "EXISTS": 410, - "EXPLAIN": 411, - "EXPRESSION": 412, - "EXTENSION": 413, - "EXTERNAL": 414, - "EXTRACT": 415, - "FALSE_P": 416, - "FAMILY": 417, - "FETCH": 418, - "FILTER": 419, - "FINALIZE": 420, - "FIRST_P": 421, - "FLOAT_P": 422, - "FOLLOWING": 423, - "FOR": 424, - "FORCE": 425, - "FOREIGN": 426, - "FORWARD": 427, - "FREEZE": 428, - "FROM": 429, - "FULL": 430, - "FUNCTION": 431, - "FUNCTIONS": 432, - "GENERATED": 433, - "GLOBAL": 434, - "GRANT": 435, - "GRANTED": 436, - "GREATEST": 437, - "GROUP_P": 438, - "GROUPING": 439, - "GROUPS": 440, - "HANDLER": 441, - "HAVING": 442, - "HEADER_P": 443, - "HOLD": 444, - "HOUR_P": 445, - "IDENTITY_P": 446, - "IF_P": 447, - "ILIKE": 448, - "IMMEDIATE": 449, - "IMMUTABLE": 450, - "IMPLICIT_P": 451, - "IMPORT_P": 452, - "IN_P": 453, - "INCLUDE": 454, - "INCLUDING": 455, - "INCREMENT": 456, - "INDEX": 457, - "INDEXES": 458, - "INHERIT": 459, - "INHERITS": 460, - "INITIALLY": 461, - "INLINE_P": 462, - "INNER_P": 463, - "INOUT": 464, - "INPUT_P": 465, - "INSENSITIVE": 466, - "INSERT": 467, - "INSTEAD": 468, - "INT_P": 469, - "INTEGER": 470, - "INTERSECT": 471, - "INTERVAL": 472, - "INTO": 473, - "INVOKER": 474, - "IS": 475, - "ISNULL": 476, - "ISOLATION": 477, - "JOIN": 478, - "KEY": 479, - "LABEL": 480, - "LANGUAGE": 481, - "LARGE_P": 482, - "LAST_P": 483, - "LATERAL_P": 484, - "LEADING": 485, - "LEAKPROOF": 486, - "LEAST": 487, - "LEFT": 488, - "LEVEL": 489, - "LIKE": 490, - "LIMIT": 491, - "LISTEN": 492, - "LOAD": 493, - "LOCAL": 494, - "LOCALTIME": 495, - "LOCALTIMESTAMP": 496, - "LOCATION": 497, - "LOCK_P": 498, - "LOCKED": 499, - "LOGGED": 500, - "MAPPING": 501, - "MATCH": 502, - "MATCHED": 503, - "MATERIALIZED": 504, - "MAXVALUE": 505, - "MERGE": 506, - "METHOD": 507, - "MINUTE_P": 508, - "MINVALUE": 509, - "MODE": 510, - "MONTH_P": 511, - "MOVE": 512, - "NAME_P": 513, - "NAMES": 514, - "NATIONAL": 515, - "NATURAL": 516, - "NCHAR": 517, - "NEW": 518, - "NEXT": 519, - "NFC": 520, - "NFD": 521, - "NFKC": 522, - "NFKD": 523, - "NO": 524, - "NONE": 525, - "NORMALIZE": 526, - "NORMALIZED": 527, - "NOT": 528, - "NOTHING": 529, - "NOTIFY": 530, - "NOTNULL": 531, - "NOWAIT": 532, - "NULL_P": 533, - "NULLIF": 534, - "NULLS_P": 535, - "NUMERIC": 536, - "OBJECT_P": 537, - "OF": 538, - "OFF": 539, - "OFFSET": 540, - "OIDS": 541, - "OLD": 542, - "ON": 543, - "ONLY": 544, - "OPERATOR": 545, - "OPTION": 546, - "OPTIONS": 547, - "OR": 548, - "ORDER": 549, - "ORDINALITY": 550, - "OTHERS": 551, - "OUT_P": 552, - "OUTER_P": 553, - "OVER": 554, - "OVERLAPS": 555, - "OVERLAY": 556, - "OVERRIDING": 557, - "OWNED": 558, - "OWNER": 559, - "PARALLEL": 560, - "PARAMETER": 561, - "PARSER": 562, - "PARTIAL": 563, - "PARTITION": 564, - "PASSING": 565, - "PASSWORD": 566, - "PLACING": 567, - "PLANS": 568, - "POLICY": 569, - "POSITION": 570, - "PRECEDING": 571, - "PRECISION": 572, - "PRESERVE": 573, - "PREPARE": 574, - "PREPARED": 575, - "PRIMARY": 576, - "PRIOR": 577, - "PRIVILEGES": 578, - "PROCEDURAL": 579, - "PROCEDURE": 580, - "PROCEDURES": 581, - "PROGRAM": 582, - "PUBLICATION": 583, - "QUOTE": 584, - "RANGE": 585, - "READ": 586, - "REAL": 587, - "REASSIGN": 588, - "RECHECK": 589, - "RECURSIVE": 590, - "REF_P": 591, - "REFERENCES": 592, - "REFERENCING": 593, - "REFRESH": 594, - "REINDEX": 595, - "RELATIVE_P": 596, - "RELEASE": 597, - "RENAME": 598, - "REPEATABLE": 599, - "REPLACE": 600, - "REPLICA": 601, - "RESET": 602, - "RESTART": 603, - "RESTRICT": 604, - "RETURN": 605, - "RETURNING": 606, - "RETURNS": 607, - "REVOKE": 608, - "RIGHT": 609, - "ROLE": 610, - "ROLLBACK": 611, - "ROLLUP": 612, - "ROUTINE": 613, - "ROUTINES": 614, - "ROW": 615, - "ROWS": 616, - "RULE": 617, - "SAVEPOINT": 618, - "SCHEMA": 619, - "SCHEMAS": 620, - "SCROLL": 621, - "SEARCH": 622, - "SECOND_P": 623, - "SECURITY": 624, - "SELECT": 625, - "SEQUENCE": 626, - "SEQUENCES": 627, - "SERIALIZABLE": 628, - "SERVER": 629, - "SESSION": 630, - "SESSION_USER": 631, - "SET": 632, - "SETS": 633, - "SETOF": 634, - "SHARE": 635, - "SHOW": 636, - "SIMILAR": 637, - "SIMPLE": 638, - "SKIP": 639, - "SMALLINT": 640, - "SNAPSHOT": 641, - "SOME": 642, - "SQL_P": 643, - "STABLE": 644, - "STANDALONE_P": 645, - "START": 646, - "STATEMENT": 647, - "STATISTICS": 648, - "STDIN": 649, - "STDOUT": 650, - "STORAGE": 651, - "STORED": 652, - "STRICT_P": 653, - "STRIP_P": 654, - "SUBSCRIPTION": 655, - "SUBSTRING": 656, - "SUPPORT": 657, - "SYMMETRIC": 658, - "SYSID": 659, - "SYSTEM_P": 660, - "TABLE": 661, - "TABLES": 662, - "TABLESAMPLE": 663, - "TABLESPACE": 664, - "TEMP": 665, - "TEMPLATE": 666, - "TEMPORARY": 667, - "TEXT_P": 668, - "THEN": 669, - "TIES": 670, - "TIME": 671, - "TIMESTAMP": 672, - "TO": 673, - "TRAILING": 674, - "TRANSACTION": 675, - "TRANSFORM": 676, - "TREAT": 677, - "TRIGGER": 678, - "TRIM": 679, - "TRUE_P": 680, - "TRUNCATE": 681, - "TRUSTED": 682, - "TYPE_P": 683, - "TYPES_P": 684, - "UESCAPE": 685, - "UNBOUNDED": 686, - "UNCOMMITTED": 687, - "UNENCRYPTED": 688, - "UNION": 689, - "UNIQUE": 690, - "UNKNOWN": 691, - "UNLISTEN": 692, - "UNLOGGED": 693, - "UNTIL": 694, - "UPDATE": 695, - "USER": 696, - "USING": 697, - "VACUUM": 698, - "VALID": 699, - "VALIDATE": 700, - "VALIDATOR": 701, - "VALUE_P": 702, - "VALUES": 703, - "VARCHAR": 704, - "VARIADIC": 705, - "VARYING": 706, - "VERBOSE": 707, - "VERSION_P": 708, - "VIEW": 709, - "VIEWS": 710, - "VOLATILE": 711, - "WHEN": 712, - "WHERE": 713, - "WHITESPACE_P": 714, - "WINDOW": 715, - "WITH": 716, - "WITHIN": 717, - "WITHOUT": 718, - "WORK": 719, - "WRAPPER": 720, - "WRITE": 721, - "XML_P": 722, - "XMLATTRIBUTES": 723, - "XMLCONCAT": 724, - "XMLELEMENT": 725, - "XMLEXISTS": 726, - "XMLFOREST": 727, - "XMLNAMESPACES": 728, - "XMLPARSE": 729, - "XMLPI": 730, - "XMLROOT": 731, - "XMLSERIALIZE": 732, - "XMLTABLE": 733, - "YEAR_P": 734, - "YES_P": 735, - "ZONE": 736, - "NOT_LA": 737, - "NULLS_LA": 738, - "WITH_LA": 739, - "MODE_TYPE_NAME": 740, - "MODE_PLPGSQL_EXPR": 741, - "MODE_PLPGSQL_ASSIGN1": 742, - "MODE_PLPGSQL_ASSIGN2": 743, - "MODE_PLPGSQL_ASSIGN3": 744, - "UMINUS": 745, + "ABSENT": 278, + "ABSOLUTE_P": 279, + "ACCESS": 280, + "ACTION": 281, + "ADD_P": 282, + "ADMIN": 283, + "AFTER": 284, + "AGGREGATE": 285, + "ALL": 286, + "ALSO": 287, + "ALTER": 288, + "ALWAYS": 289, + "ANALYSE": 290, + "ANALYZE": 291, + "AND": 292, + "ANY": 293, + "ARRAY": 294, + "AS": 295, + "ASC": 296, + "ASENSITIVE": 297, + "ASSERTION": 298, + "ASSIGNMENT": 299, + "ASYMMETRIC": 300, + "ATOMIC": 301, + "AT": 302, + "ATTACH": 303, + "ATTRIBUTE": 304, + "AUTHORIZATION": 305, + "BACKWARD": 306, + "BEFORE": 307, + "BEGIN_P": 308, + "BETWEEN": 309, + "BIGINT": 310, + "BINARY": 311, + "BIT": 312, + "BOOLEAN_P": 313, + "BOTH": 314, + "BREADTH": 315, + "BY": 316, + "CACHE": 317, + "CALL": 318, + "CALLED": 319, + "CASCADE": 320, + "CASCADED": 321, + "CASE": 322, + "CAST": 323, + "CATALOG_P": 324, + "CHAIN": 325, + "CHAR_P": 326, + "CHARACTER": 327, + "CHARACTERISTICS": 328, + "CHECK": 329, + "CHECKPOINT": 330, + "CLASS": 331, + "CLOSE": 332, + "CLUSTER": 333, + "COALESCE": 334, + "COLLATE": 335, + "COLLATION": 336, + "COLUMN": 337, + "COLUMNS": 338, + "COMMENT": 339, + "COMMENTS": 340, + "COMMIT": 341, + "COMMITTED": 342, + "COMPRESSION": 343, + "CONCURRENTLY": 344, + "CONFIGURATION": 345, + "CONFLICT": 346, + "CONNECTION": 347, + "CONSTRAINT": 348, + "CONSTRAINTS": 349, + "CONTENT_P": 350, + "CONTINUE_P": 351, + "CONVERSION_P": 352, + "COPY": 353, + "COST": 354, + "CREATE": 355, + "CROSS": 356, + "CSV": 357, + "CUBE": 358, + "CURRENT_P": 359, + "CURRENT_CATALOG": 360, + "CURRENT_DATE": 361, + "CURRENT_ROLE": 362, + "CURRENT_SCHEMA": 363, + "CURRENT_TIME": 364, + "CURRENT_TIMESTAMP": 365, + "CURRENT_USER": 366, + "CURSOR": 367, + "CYCLE": 368, + "DATA_P": 369, + "DATABASE": 370, + "DAY_P": 371, + "DEALLOCATE": 372, + "DEC": 373, + "DECIMAL_P": 374, + "DECLARE": 375, + "DEFAULT": 376, + "DEFAULTS": 377, + "DEFERRABLE": 378, + "DEFERRED": 379, + "DEFINER": 380, + "DELETE_P": 381, + "DELIMITER": 382, + "DELIMITERS": 383, + "DEPENDS": 384, + "DEPTH": 385, + "DESC": 386, + "DETACH": 387, + "DICTIONARY": 388, + "DISABLE_P": 389, + "DISCARD": 390, + "DISTINCT": 391, + "DO": 392, + "DOCUMENT_P": 393, + "DOMAIN_P": 394, + "DOUBLE_P": 395, + "DROP": 396, + "EACH": 397, + "ELSE": 398, + "ENABLE_P": 399, + "ENCODING": 400, + "ENCRYPTED": 401, + "END_P": 402, + "ENUM_P": 403, + "ESCAPE": 404, + "EVENT": 405, + "EXCEPT": 406, + "EXCLUDE": 407, + "EXCLUDING": 408, + "EXCLUSIVE": 409, + "EXECUTE": 410, + "EXISTS": 411, + "EXPLAIN": 412, + "EXPRESSION": 413, + "EXTENSION": 414, + "EXTERNAL": 415, + "EXTRACT": 416, + "FALSE_P": 417, + "FAMILY": 418, + "FETCH": 419, + "FILTER": 420, + "FINALIZE": 421, + "FIRST_P": 422, + "FLOAT_P": 423, + "FOLLOWING": 424, + "FOR": 425, + "FORCE": 426, + "FOREIGN": 427, + "FORMAT": 428, + "FORWARD": 429, + "FREEZE": 430, + "FROM": 431, + "FULL": 432, + "FUNCTION": 433, + "FUNCTIONS": 434, + "GENERATED": 435, + "GLOBAL": 436, + "GRANT": 437, + "GRANTED": 438, + "GREATEST": 439, + "GROUP_P": 440, + "GROUPING": 441, + "GROUPS": 442, + "HANDLER": 443, + "HAVING": 444, + "HEADER_P": 445, + "HOLD": 446, + "HOUR_P": 447, + "IDENTITY_P": 448, + "IF_P": 449, + "ILIKE": 450, + "IMMEDIATE": 451, + "IMMUTABLE": 452, + "IMPLICIT_P": 453, + "IMPORT_P": 454, + "IN_P": 455, + "INCLUDE": 456, + "INCLUDING": 457, + "INCREMENT": 458, + "INDENT": 459, + "INDEX": 460, + "INDEXES": 461, + "INHERIT": 462, + "INHERITS": 463, + "INITIALLY": 464, + "INLINE_P": 465, + "INNER_P": 466, + "INOUT": 467, + "INPUT_P": 468, + "INSENSITIVE": 469, + "INSERT": 470, + "INSTEAD": 471, + "INT_P": 472, + "INTEGER": 473, + "INTERSECT": 474, + "INTERVAL": 475, + "INTO": 476, + "INVOKER": 477, + "IS": 478, + "ISNULL": 479, + "ISOLATION": 480, + "JOIN": 481, + "JSON": 482, + "JSON_ARRAY": 483, + "JSON_ARRAYAGG": 484, + "JSON_OBJECT": 485, + "JSON_OBJECTAGG": 486, + "KEY": 487, + "KEYS": 488, + "LABEL": 489, + "LANGUAGE": 490, + "LARGE_P": 491, + "LAST_P": 492, + "LATERAL_P": 493, + "LEADING": 494, + "LEAKPROOF": 495, + "LEAST": 496, + "LEFT": 497, + "LEVEL": 498, + "LIKE": 499, + "LIMIT": 500, + "LISTEN": 501, + "LOAD": 502, + "LOCAL": 503, + "LOCALTIME": 504, + "LOCALTIMESTAMP": 505, + "LOCATION": 506, + "LOCK_P": 507, + "LOCKED": 508, + "LOGGED": 509, + "MAPPING": 510, + "MATCH": 511, + "MATCHED": 512, + "MATERIALIZED": 513, + "MAXVALUE": 514, + "MERGE": 515, + "METHOD": 516, + "MINUTE_P": 517, + "MINVALUE": 518, + "MODE": 519, + "MONTH_P": 520, + "MOVE": 521, + "NAME_P": 522, + "NAMES": 523, + "NATIONAL": 524, + "NATURAL": 525, + "NCHAR": 526, + "NEW": 527, + "NEXT": 528, + "NFC": 529, + "NFD": 530, + "NFKC": 531, + "NFKD": 532, + "NO": 533, + "NONE": 534, + "NORMALIZE": 535, + "NORMALIZED": 536, + "NOT": 537, + "NOTHING": 538, + "NOTIFY": 539, + "NOTNULL": 540, + "NOWAIT": 541, + "NULL_P": 542, + "NULLIF": 543, + "NULLS_P": 544, + "NUMERIC": 545, + "OBJECT_P": 546, + "OF": 547, + "OFF": 548, + "OFFSET": 549, + "OIDS": 550, + "OLD": 551, + "ON": 552, + "ONLY": 553, + "OPERATOR": 554, + "OPTION": 555, + "OPTIONS": 556, + "OR": 557, + "ORDER": 558, + "ORDINALITY": 559, + "OTHERS": 560, + "OUT_P": 561, + "OUTER_P": 562, + "OVER": 563, + "OVERLAPS": 564, + "OVERLAY": 565, + "OVERRIDING": 566, + "OWNED": 567, + "OWNER": 568, + "PARALLEL": 569, + "PARAMETER": 570, + "PARSER": 571, + "PARTIAL": 572, + "PARTITION": 573, + "PASSING": 574, + "PASSWORD": 575, + "PLACING": 576, + "PLANS": 577, + "POLICY": 578, + "POSITION": 579, + "PRECEDING": 580, + "PRECISION": 581, + "PRESERVE": 582, + "PREPARE": 583, + "PREPARED": 584, + "PRIMARY": 585, + "PRIOR": 586, + "PRIVILEGES": 587, + "PROCEDURAL": 588, + "PROCEDURE": 589, + "PROCEDURES": 590, + "PROGRAM": 591, + "PUBLICATION": 592, + "QUOTE": 593, + "RANGE": 594, + "READ": 595, + "REAL": 596, + "REASSIGN": 597, + "RECHECK": 598, + "RECURSIVE": 599, + "REF_P": 600, + "REFERENCES": 601, + "REFERENCING": 602, + "REFRESH": 603, + "REINDEX": 604, + "RELATIVE_P": 605, + "RELEASE": 606, + "RENAME": 607, + "REPEATABLE": 608, + "REPLACE": 609, + "REPLICA": 610, + "RESET": 611, + "RESTART": 612, + "RESTRICT": 613, + "RETURN": 614, + "RETURNING": 615, + "RETURNS": 616, + "REVOKE": 617, + "RIGHT": 618, + "ROLE": 619, + "ROLLBACK": 620, + "ROLLUP": 621, + "ROUTINE": 622, + "ROUTINES": 623, + "ROW": 624, + "ROWS": 625, + "RULE": 626, + "SAVEPOINT": 627, + "SCALAR": 628, + "SCHEMA": 629, + "SCHEMAS": 630, + "SCROLL": 631, + "SEARCH": 632, + "SECOND_P": 633, + "SECURITY": 634, + "SELECT": 635, + "SEQUENCE": 636, + "SEQUENCES": 637, + "SERIALIZABLE": 638, + "SERVER": 639, + "SESSION": 640, + "SESSION_USER": 641, + "SET": 642, + "SETS": 643, + "SETOF": 644, + "SHARE": 645, + "SHOW": 646, + "SIMILAR": 647, + "SIMPLE": 648, + "SKIP": 649, + "SMALLINT": 650, + "SNAPSHOT": 651, + "SOME": 652, + "SQL_P": 653, + "STABLE": 654, + "STANDALONE_P": 655, + "START": 656, + "STATEMENT": 657, + "STATISTICS": 658, + "STDIN": 659, + "STDOUT": 660, + "STORAGE": 661, + "STORED": 662, + "STRICT_P": 663, + "STRIP_P": 664, + "SUBSCRIPTION": 665, + "SUBSTRING": 666, + "SUPPORT": 667, + "SYMMETRIC": 668, + "SYSID": 669, + "SYSTEM_P": 670, + "SYSTEM_USER": 671, + "TABLE": 672, + "TABLES": 673, + "TABLESAMPLE": 674, + "TABLESPACE": 675, + "TEMP": 676, + "TEMPLATE": 677, + "TEMPORARY": 678, + "TEXT_P": 679, + "THEN": 680, + "TIES": 681, + "TIME": 682, + "TIMESTAMP": 683, + "TO": 684, + "TRAILING": 685, + "TRANSACTION": 686, + "TRANSFORM": 687, + "TREAT": 688, + "TRIGGER": 689, + "TRIM": 690, + "TRUE_P": 691, + "TRUNCATE": 692, + "TRUSTED": 693, + "TYPE_P": 694, + "TYPES_P": 695, + "UESCAPE": 696, + "UNBOUNDED": 697, + "UNCOMMITTED": 698, + "UNENCRYPTED": 699, + "UNION": 700, + "UNIQUE": 701, + "UNKNOWN": 702, + "UNLISTEN": 703, + "UNLOGGED": 704, + "UNTIL": 705, + "UPDATE": 706, + "USER": 707, + "USING": 708, + "VACUUM": 709, + "VALID": 710, + "VALIDATE": 711, + "VALIDATOR": 712, + "VALUE_P": 713, + "VALUES": 714, + "VARCHAR": 715, + "VARIADIC": 716, + "VARYING": 717, + "VERBOSE": 718, + "VERSION_P": 719, + "VIEW": 720, + "VIEWS": 721, + "VOLATILE": 722, + "WHEN": 723, + "WHERE": 724, + "WHITESPACE_P": 725, + "WINDOW": 726, + "WITH": 727, + "WITHIN": 728, + "WITHOUT": 729, + "WORK": 730, + "WRAPPER": 731, + "WRITE": 732, + "XML_P": 733, + "XMLATTRIBUTES": 734, + "XMLCONCAT": 735, + "XMLELEMENT": 736, + "XMLEXISTS": 737, + "XMLFOREST": 738, + "XMLNAMESPACES": 739, + "XMLPARSE": 740, + "XMLPI": 741, + "XMLROOT": 742, + "XMLSERIALIZE": 743, + "XMLTABLE": 744, + "YEAR_P": 745, + "YES_P": 746, + "ZONE": 747, + "FORMAT_LA": 748, + "NOT_LA": 749, + "NULLS_LA": 750, + "WITH_LA": 751, + "WITHOUT_LA": 752, + "MODE_TYPE_NAME": 753, + "MODE_PLPGSQL_EXPR": 754, + "MODE_PLPGSQL_ASSIGN1": 755, + "MODE_PLPGSQL_ASSIGN2": 756, + "MODE_PLPGSQL_ASSIGN3": 757, + "UMINUS": 758, } ) @@ -5286,11 +5585,11 @@ func (x Token) String() string { } func (Token) Descriptor() protoreflect.EnumDescriptor { - return file_pg_query_proto_enumTypes[58].Descriptor() + return file_pg_query_proto_enumTypes[63].Descriptor() } func (Token) Type() protoreflect.EnumType { - return &file_pg_query_proto_enumTypes[58] + return &file_pg_query_proto_enumTypes[63] } func (x Token) Number() protoreflect.EnumNumber { @@ -5299,7 +5598,7 @@ func (x Token) Number() protoreflect.EnumNumber { // Deprecated: Use Token.Descriptor instead. func (Token) EnumDescriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{58} + return file_pg_query_proto_rawDescGZIP(), []int{63} } type ParseResult struct { @@ -5422,6 +5721,7 @@ type Node struct { // *Node_Alias // *Node_RangeVar // *Node_TableFunc + // *Node_IntoClause // *Node_Var // *Node_Param // *Node_Aggref @@ -5455,6 +5755,11 @@ type Node struct { // *Node_MinMaxExpr // *Node_SqlvalueFunction // *Node_XmlExpr + // *Node_JsonFormat + // *Node_JsonReturning + // *Node_JsonValueExpr + // *Node_JsonConstructorExpr + // *Node_JsonIsPredicate // *Node_NullTest // *Node_BooleanTest // *Node_CoerceToDomain @@ -5468,186 +5773,194 @@ type Node struct { // *Node_JoinExpr // *Node_FromExpr // *Node_OnConflictExpr - // *Node_IntoClause + // *Node_Query + // *Node_TypeName + // *Node_ColumnRef + // *Node_ParamRef + // *Node_AExpr + // *Node_TypeCast + // *Node_CollateClause + // *Node_RoleSpec + // *Node_FuncCall + // *Node_AStar + // *Node_AIndices + // *Node_AIndirection + // *Node_AArrayExpr + // *Node_ResTarget + // *Node_MultiAssignRef + // *Node_SortBy + // *Node_WindowDef + // *Node_RangeSubselect + // *Node_RangeFunction + // *Node_RangeTableFunc + // *Node_RangeTableFuncCol + // *Node_RangeTableSample + // *Node_ColumnDef + // *Node_TableLikeClause + // *Node_IndexElem + // *Node_DefElem + // *Node_LockingClause + // *Node_XmlSerialize + // *Node_PartitionElem + // *Node_PartitionSpec + // *Node_PartitionBoundSpec + // *Node_PartitionRangeDatum + // *Node_PartitionCmd + // *Node_RangeTblEntry + // *Node_RtepermissionInfo + // *Node_RangeTblFunction + // *Node_TableSampleClause + // *Node_WithCheckOption + // *Node_SortGroupClause + // *Node_GroupingSet + // *Node_WindowClause + // *Node_RowMarkClause + // *Node_WithClause + // *Node_InferClause + // *Node_OnConflictClause + // *Node_CtesearchClause + // *Node_CtecycleClause + // *Node_CommonTableExpr + // *Node_MergeWhenClause // *Node_MergeAction + // *Node_TriggerTransition + // *Node_JsonOutput + // *Node_JsonKeyValue + // *Node_JsonObjectConstructor + // *Node_JsonArrayConstructor + // *Node_JsonArrayQueryConstructor + // *Node_JsonAggConstructor + // *Node_JsonObjectAgg + // *Node_JsonArrayAgg // *Node_RawStmt - // *Node_Query // *Node_InsertStmt // *Node_DeleteStmt // *Node_UpdateStmt // *Node_MergeStmt // *Node_SelectStmt + // *Node_SetOperationStmt // *Node_ReturnStmt // *Node_PlassignStmt + // *Node_CreateSchemaStmt // *Node_AlterTableStmt + // *Node_ReplicaIdentityStmt // *Node_AlterTableCmd + // *Node_AlterCollationStmt // *Node_AlterDomainStmt - // *Node_SetOperationStmt // *Node_GrantStmt + // *Node_ObjectWithArgs + // *Node_AccessPriv // *Node_GrantRoleStmt // *Node_AlterDefaultPrivilegesStmt - // *Node_ClosePortalStmt - // *Node_ClusterStmt // *Node_CopyStmt + // *Node_VariableSetStmt + // *Node_VariableShowStmt // *Node_CreateStmt + // *Node_Constraint + // *Node_CreateTableSpaceStmt + // *Node_DropTableSpaceStmt + // *Node_AlterTableSpaceOptionsStmt + // *Node_AlterTableMoveAllStmt + // *Node_CreateExtensionStmt + // *Node_AlterExtensionStmt + // *Node_AlterExtensionContentsStmt + // *Node_CreateFdwStmt + // *Node_AlterFdwStmt + // *Node_CreateForeignServerStmt + // *Node_AlterForeignServerStmt + // *Node_CreateForeignTableStmt + // *Node_CreateUserMappingStmt + // *Node_AlterUserMappingStmt + // *Node_DropUserMappingStmt + // *Node_ImportForeignSchemaStmt + // *Node_CreatePolicyStmt + // *Node_AlterPolicyStmt + // *Node_CreateAmStmt + // *Node_CreateTrigStmt + // *Node_CreateEventTrigStmt + // *Node_AlterEventTrigStmt + // *Node_CreatePlangStmt + // *Node_CreateRoleStmt + // *Node_AlterRoleStmt + // *Node_AlterRoleSetStmt + // *Node_DropRoleStmt + // *Node_CreateSeqStmt + // *Node_AlterSeqStmt // *Node_DefineStmt + // *Node_CreateDomainStmt + // *Node_CreateOpClassStmt + // *Node_CreateOpClassItem + // *Node_CreateOpFamilyStmt + // *Node_AlterOpFamilyStmt // *Node_DropStmt // *Node_TruncateStmt // *Node_CommentStmt + // *Node_SecLabelStmt + // *Node_DeclareCursorStmt + // *Node_ClosePortalStmt // *Node_FetchStmt // *Node_IndexStmt + // *Node_CreateStatsStmt + // *Node_StatsElem + // *Node_AlterStatsStmt // *Node_CreateFunctionStmt + // *Node_FunctionParameter // *Node_AlterFunctionStmt // *Node_DoStmt + // *Node_InlineCodeBlock + // *Node_CallStmt + // *Node_CallContext // *Node_RenameStmt + // *Node_AlterObjectDependsStmt + // *Node_AlterObjectSchemaStmt + // *Node_AlterOwnerStmt + // *Node_AlterOperatorStmt + // *Node_AlterTypeStmt // *Node_RuleStmt // *Node_NotifyStmt // *Node_ListenStmt // *Node_UnlistenStmt // *Node_TransactionStmt + // *Node_CompositeTypeStmt + // *Node_CreateEnumStmt + // *Node_CreateRangeStmt + // *Node_AlterEnumStmt // *Node_ViewStmt // *Node_LoadStmt - // *Node_CreateDomainStmt // *Node_CreatedbStmt + // *Node_AlterDatabaseStmt + // *Node_AlterDatabaseRefreshCollStmt + // *Node_AlterDatabaseSetStmt // *Node_DropdbStmt + // *Node_AlterSystemStmt + // *Node_ClusterStmt // *Node_VacuumStmt + // *Node_VacuumRelation // *Node_ExplainStmt // *Node_CreateTableAsStmt - // *Node_CreateSeqStmt - // *Node_AlterSeqStmt - // *Node_VariableSetStmt - // *Node_VariableShowStmt + // *Node_RefreshMatViewStmt + // *Node_CheckPointStmt // *Node_DiscardStmt - // *Node_CreateTrigStmt - // *Node_CreatePlangStmt - // *Node_CreateRoleStmt - // *Node_AlterRoleStmt - // *Node_DropRoleStmt // *Node_LockStmt // *Node_ConstraintsSetStmt // *Node_ReindexStmt - // *Node_CheckPointStmt - // *Node_CreateSchemaStmt - // *Node_AlterDatabaseStmt - // *Node_AlterDatabaseRefreshCollStmt - // *Node_AlterDatabaseSetStmt - // *Node_AlterRoleSetStmt // *Node_CreateConversionStmt // *Node_CreateCastStmt - // *Node_CreateOpClassStmt - // *Node_CreateOpFamilyStmt - // *Node_AlterOpFamilyStmt + // *Node_CreateTransformStmt // *Node_PrepareStmt // *Node_ExecuteStmt // *Node_DeallocateStmt - // *Node_DeclareCursorStmt - // *Node_CreateTableSpaceStmt - // *Node_DropTableSpaceStmt - // *Node_AlterObjectDependsStmt - // *Node_AlterObjectSchemaStmt - // *Node_AlterOwnerStmt - // *Node_AlterOperatorStmt - // *Node_AlterTypeStmt // *Node_DropOwnedStmt // *Node_ReassignOwnedStmt - // *Node_CompositeTypeStmt - // *Node_CreateEnumStmt - // *Node_CreateRangeStmt - // *Node_AlterEnumStmt // *Node_AlterTsdictionaryStmt // *Node_AlterTsconfigurationStmt - // *Node_CreateFdwStmt - // *Node_AlterFdwStmt - // *Node_CreateForeignServerStmt - // *Node_AlterForeignServerStmt - // *Node_CreateUserMappingStmt - // *Node_AlterUserMappingStmt - // *Node_DropUserMappingStmt - // *Node_AlterTableSpaceOptionsStmt - // *Node_AlterTableMoveAllStmt - // *Node_SecLabelStmt - // *Node_CreateForeignTableStmt - // *Node_ImportForeignSchemaStmt - // *Node_CreateExtensionStmt - // *Node_AlterExtensionStmt - // *Node_AlterExtensionContentsStmt - // *Node_CreateEventTrigStmt - // *Node_AlterEventTrigStmt - // *Node_RefreshMatViewStmt - // *Node_ReplicaIdentityStmt - // *Node_AlterSystemStmt - // *Node_CreatePolicyStmt - // *Node_AlterPolicyStmt - // *Node_CreateTransformStmt - // *Node_CreateAmStmt + // *Node_PublicationTable + // *Node_PublicationObjSpec // *Node_CreatePublicationStmt // *Node_AlterPublicationStmt // *Node_CreateSubscriptionStmt // *Node_AlterSubscriptionStmt // *Node_DropSubscriptionStmt - // *Node_CreateStatsStmt - // *Node_AlterCollationStmt - // *Node_CallStmt - // *Node_AlterStatsStmt - // *Node_AExpr - // *Node_ColumnRef - // *Node_ParamRef - // *Node_FuncCall - // *Node_AStar - // *Node_AIndices - // *Node_AIndirection - // *Node_AArrayExpr - // *Node_ResTarget - // *Node_MultiAssignRef - // *Node_TypeCast - // *Node_CollateClause - // *Node_SortBy - // *Node_WindowDef - // *Node_RangeSubselect - // *Node_RangeFunction - // *Node_RangeTableSample - // *Node_RangeTableFunc - // *Node_RangeTableFuncCol - // *Node_TypeName - // *Node_ColumnDef - // *Node_IndexElem - // *Node_StatsElem - // *Node_Constraint - // *Node_DefElem - // *Node_RangeTblEntry - // *Node_RangeTblFunction - // *Node_TableSampleClause - // *Node_WithCheckOption - // *Node_SortGroupClause - // *Node_GroupingSet - // *Node_WindowClause - // *Node_ObjectWithArgs - // *Node_AccessPriv - // *Node_CreateOpClassItem - // *Node_TableLikeClause - // *Node_FunctionParameter - // *Node_LockingClause - // *Node_RowMarkClause - // *Node_XmlSerialize - // *Node_WithClause - // *Node_InferClause - // *Node_OnConflictClause - // *Node_CtesearchClause - // *Node_CtecycleClause - // *Node_CommonTableExpr - // *Node_MergeWhenClause - // *Node_RoleSpec - // *Node_TriggerTransition - // *Node_PartitionElem - // *Node_PartitionSpec - // *Node_PartitionBoundSpec - // *Node_PartitionRangeDatum - // *Node_PartitionCmd - // *Node_VacuumRelation - // *Node_PublicationObjSpec - // *Node_PublicationTable - // *Node_InlineCodeBlock - // *Node_CallContext // *Node_Integer // *Node_Float // *Node_Boolean @@ -5720,6 +6033,13 @@ func (x *Node) GetTableFunc() *TableFunc { return nil } +func (x *Node) GetIntoClause() *IntoClause { + if x, ok := x.GetNode().(*Node_IntoClause); ok { + return x.IntoClause + } + return nil +} + func (x *Node) GetVar() *Var { if x, ok := x.GetNode().(*Node_Var); ok { return x.Var @@ -5951,6 +6271,41 @@ func (x *Node) GetXmlExpr() *XmlExpr { return nil } +func (x *Node) GetJsonFormat() *JsonFormat { + if x, ok := x.GetNode().(*Node_JsonFormat); ok { + return x.JsonFormat + } + return nil +} + +func (x *Node) GetJsonReturning() *JsonReturning { + if x, ok := x.GetNode().(*Node_JsonReturning); ok { + return x.JsonReturning + } + return nil +} + +func (x *Node) GetJsonValueExpr() *JsonValueExpr { + if x, ok := x.GetNode().(*Node_JsonValueExpr); ok { + return x.JsonValueExpr + } + return nil +} + +func (x *Node) GetJsonConstructorExpr() *JsonConstructorExpr { + if x, ok := x.GetNode().(*Node_JsonConstructorExpr); ok { + return x.JsonConstructorExpr + } + return nil +} + +func (x *Node) GetJsonIsPredicate() *JsonIsPredicate { + if x, ok := x.GetNode().(*Node_JsonIsPredicate); ok { + return x.JsonIsPredicate + } + return nil +} + func (x *Node) GetNullTest() *NullTest { if x, ok := x.GetNode().(*Node_NullTest); ok { return x.NullTest @@ -6042,618 +6397,639 @@ func (x *Node) GetOnConflictExpr() *OnConflictExpr { return nil } -func (x *Node) GetIntoClause() *IntoClause { - if x, ok := x.GetNode().(*Node_IntoClause); ok { - return x.IntoClause +func (x *Node) GetQuery() *Query { + if x, ok := x.GetNode().(*Node_Query); ok { + return x.Query } return nil } -func (x *Node) GetMergeAction() *MergeAction { - if x, ok := x.GetNode().(*Node_MergeAction); ok { - return x.MergeAction +func (x *Node) GetTypeName() *TypeName { + if x, ok := x.GetNode().(*Node_TypeName); ok { + return x.TypeName } return nil } -func (x *Node) GetRawStmt() *RawStmt { - if x, ok := x.GetNode().(*Node_RawStmt); ok { - return x.RawStmt +func (x *Node) GetColumnRef() *ColumnRef { + if x, ok := x.GetNode().(*Node_ColumnRef); ok { + return x.ColumnRef } return nil } -func (x *Node) GetQuery() *Query { - if x, ok := x.GetNode().(*Node_Query); ok { - return x.Query +func (x *Node) GetParamRef() *ParamRef { + if x, ok := x.GetNode().(*Node_ParamRef); ok { + return x.ParamRef } return nil } -func (x *Node) GetInsertStmt() *InsertStmt { - if x, ok := x.GetNode().(*Node_InsertStmt); ok { - return x.InsertStmt +func (x *Node) GetAExpr() *A_Expr { + if x, ok := x.GetNode().(*Node_AExpr); ok { + return x.AExpr } return nil } -func (x *Node) GetDeleteStmt() *DeleteStmt { - if x, ok := x.GetNode().(*Node_DeleteStmt); ok { - return x.DeleteStmt - } +func (x *Node) GetTypeCast() *TypeCast { + if x, ok := x.GetNode().(*Node_TypeCast); ok { + return x.TypeCast + } return nil } -func (x *Node) GetUpdateStmt() *UpdateStmt { - if x, ok := x.GetNode().(*Node_UpdateStmt); ok { - return x.UpdateStmt +func (x *Node) GetCollateClause() *CollateClause { + if x, ok := x.GetNode().(*Node_CollateClause); ok { + return x.CollateClause } return nil } -func (x *Node) GetMergeStmt() *MergeStmt { - if x, ok := x.GetNode().(*Node_MergeStmt); ok { - return x.MergeStmt +func (x *Node) GetRoleSpec() *RoleSpec { + if x, ok := x.GetNode().(*Node_RoleSpec); ok { + return x.RoleSpec } return nil } -func (x *Node) GetSelectStmt() *SelectStmt { - if x, ok := x.GetNode().(*Node_SelectStmt); ok { - return x.SelectStmt +func (x *Node) GetFuncCall() *FuncCall { + if x, ok := x.GetNode().(*Node_FuncCall); ok { + return x.FuncCall } return nil } -func (x *Node) GetReturnStmt() *ReturnStmt { - if x, ok := x.GetNode().(*Node_ReturnStmt); ok { - return x.ReturnStmt +func (x *Node) GetAStar() *A_Star { + if x, ok := x.GetNode().(*Node_AStar); ok { + return x.AStar } return nil } -func (x *Node) GetPlassignStmt() *PLAssignStmt { - if x, ok := x.GetNode().(*Node_PlassignStmt); ok { - return x.PlassignStmt +func (x *Node) GetAIndices() *A_Indices { + if x, ok := x.GetNode().(*Node_AIndices); ok { + return x.AIndices } return nil } -func (x *Node) GetAlterTableStmt() *AlterTableStmt { - if x, ok := x.GetNode().(*Node_AlterTableStmt); ok { - return x.AlterTableStmt +func (x *Node) GetAIndirection() *A_Indirection { + if x, ok := x.GetNode().(*Node_AIndirection); ok { + return x.AIndirection } return nil } -func (x *Node) GetAlterTableCmd() *AlterTableCmd { - if x, ok := x.GetNode().(*Node_AlterTableCmd); ok { - return x.AlterTableCmd +func (x *Node) GetAArrayExpr() *A_ArrayExpr { + if x, ok := x.GetNode().(*Node_AArrayExpr); ok { + return x.AArrayExpr } return nil } -func (x *Node) GetAlterDomainStmt() *AlterDomainStmt { - if x, ok := x.GetNode().(*Node_AlterDomainStmt); ok { - return x.AlterDomainStmt +func (x *Node) GetResTarget() *ResTarget { + if x, ok := x.GetNode().(*Node_ResTarget); ok { + return x.ResTarget } return nil } -func (x *Node) GetSetOperationStmt() *SetOperationStmt { - if x, ok := x.GetNode().(*Node_SetOperationStmt); ok { - return x.SetOperationStmt +func (x *Node) GetMultiAssignRef() *MultiAssignRef { + if x, ok := x.GetNode().(*Node_MultiAssignRef); ok { + return x.MultiAssignRef } return nil } -func (x *Node) GetGrantStmt() *GrantStmt { - if x, ok := x.GetNode().(*Node_GrantStmt); ok { - return x.GrantStmt +func (x *Node) GetSortBy() *SortBy { + if x, ok := x.GetNode().(*Node_SortBy); ok { + return x.SortBy } return nil } -func (x *Node) GetGrantRoleStmt() *GrantRoleStmt { - if x, ok := x.GetNode().(*Node_GrantRoleStmt); ok { - return x.GrantRoleStmt +func (x *Node) GetWindowDef() *WindowDef { + if x, ok := x.GetNode().(*Node_WindowDef); ok { + return x.WindowDef } return nil } -func (x *Node) GetAlterDefaultPrivilegesStmt() *AlterDefaultPrivilegesStmt { - if x, ok := x.GetNode().(*Node_AlterDefaultPrivilegesStmt); ok { - return x.AlterDefaultPrivilegesStmt +func (x *Node) GetRangeSubselect() *RangeSubselect { + if x, ok := x.GetNode().(*Node_RangeSubselect); ok { + return x.RangeSubselect } return nil } -func (x *Node) GetClosePortalStmt() *ClosePortalStmt { - if x, ok := x.GetNode().(*Node_ClosePortalStmt); ok { - return x.ClosePortalStmt +func (x *Node) GetRangeFunction() *RangeFunction { + if x, ok := x.GetNode().(*Node_RangeFunction); ok { + return x.RangeFunction } return nil } -func (x *Node) GetClusterStmt() *ClusterStmt { - if x, ok := x.GetNode().(*Node_ClusterStmt); ok { - return x.ClusterStmt +func (x *Node) GetRangeTableFunc() *RangeTableFunc { + if x, ok := x.GetNode().(*Node_RangeTableFunc); ok { + return x.RangeTableFunc } return nil } -func (x *Node) GetCopyStmt() *CopyStmt { - if x, ok := x.GetNode().(*Node_CopyStmt); ok { - return x.CopyStmt +func (x *Node) GetRangeTableFuncCol() *RangeTableFuncCol { + if x, ok := x.GetNode().(*Node_RangeTableFuncCol); ok { + return x.RangeTableFuncCol } return nil } -func (x *Node) GetCreateStmt() *CreateStmt { - if x, ok := x.GetNode().(*Node_CreateStmt); ok { - return x.CreateStmt +func (x *Node) GetRangeTableSample() *RangeTableSample { + if x, ok := x.GetNode().(*Node_RangeTableSample); ok { + return x.RangeTableSample } return nil } -func (x *Node) GetDefineStmt() *DefineStmt { - if x, ok := x.GetNode().(*Node_DefineStmt); ok { - return x.DefineStmt +func (x *Node) GetColumnDef() *ColumnDef { + if x, ok := x.GetNode().(*Node_ColumnDef); ok { + return x.ColumnDef } return nil } -func (x *Node) GetDropStmt() *DropStmt { - if x, ok := x.GetNode().(*Node_DropStmt); ok { - return x.DropStmt +func (x *Node) GetTableLikeClause() *TableLikeClause { + if x, ok := x.GetNode().(*Node_TableLikeClause); ok { + return x.TableLikeClause } return nil } -func (x *Node) GetTruncateStmt() *TruncateStmt { - if x, ok := x.GetNode().(*Node_TruncateStmt); ok { - return x.TruncateStmt +func (x *Node) GetIndexElem() *IndexElem { + if x, ok := x.GetNode().(*Node_IndexElem); ok { + return x.IndexElem } return nil } -func (x *Node) GetCommentStmt() *CommentStmt { - if x, ok := x.GetNode().(*Node_CommentStmt); ok { - return x.CommentStmt +func (x *Node) GetDefElem() *DefElem { + if x, ok := x.GetNode().(*Node_DefElem); ok { + return x.DefElem } return nil } -func (x *Node) GetFetchStmt() *FetchStmt { - if x, ok := x.GetNode().(*Node_FetchStmt); ok { - return x.FetchStmt +func (x *Node) GetLockingClause() *LockingClause { + if x, ok := x.GetNode().(*Node_LockingClause); ok { + return x.LockingClause } return nil } -func (x *Node) GetIndexStmt() *IndexStmt { - if x, ok := x.GetNode().(*Node_IndexStmt); ok { - return x.IndexStmt +func (x *Node) GetXmlSerialize() *XmlSerialize { + if x, ok := x.GetNode().(*Node_XmlSerialize); ok { + return x.XmlSerialize } return nil } -func (x *Node) GetCreateFunctionStmt() *CreateFunctionStmt { - if x, ok := x.GetNode().(*Node_CreateFunctionStmt); ok { - return x.CreateFunctionStmt +func (x *Node) GetPartitionElem() *PartitionElem { + if x, ok := x.GetNode().(*Node_PartitionElem); ok { + return x.PartitionElem } return nil } -func (x *Node) GetAlterFunctionStmt() *AlterFunctionStmt { - if x, ok := x.GetNode().(*Node_AlterFunctionStmt); ok { - return x.AlterFunctionStmt +func (x *Node) GetPartitionSpec() *PartitionSpec { + if x, ok := x.GetNode().(*Node_PartitionSpec); ok { + return x.PartitionSpec } return nil } -func (x *Node) GetDoStmt() *DoStmt { - if x, ok := x.GetNode().(*Node_DoStmt); ok { - return x.DoStmt +func (x *Node) GetPartitionBoundSpec() *PartitionBoundSpec { + if x, ok := x.GetNode().(*Node_PartitionBoundSpec); ok { + return x.PartitionBoundSpec } return nil } -func (x *Node) GetRenameStmt() *RenameStmt { - if x, ok := x.GetNode().(*Node_RenameStmt); ok { - return x.RenameStmt +func (x *Node) GetPartitionRangeDatum() *PartitionRangeDatum { + if x, ok := x.GetNode().(*Node_PartitionRangeDatum); ok { + return x.PartitionRangeDatum } return nil } -func (x *Node) GetRuleStmt() *RuleStmt { - if x, ok := x.GetNode().(*Node_RuleStmt); ok { - return x.RuleStmt +func (x *Node) GetPartitionCmd() *PartitionCmd { + if x, ok := x.GetNode().(*Node_PartitionCmd); ok { + return x.PartitionCmd } return nil } -func (x *Node) GetNotifyStmt() *NotifyStmt { - if x, ok := x.GetNode().(*Node_NotifyStmt); ok { - return x.NotifyStmt +func (x *Node) GetRangeTblEntry() *RangeTblEntry { + if x, ok := x.GetNode().(*Node_RangeTblEntry); ok { + return x.RangeTblEntry } return nil } -func (x *Node) GetListenStmt() *ListenStmt { - if x, ok := x.GetNode().(*Node_ListenStmt); ok { - return x.ListenStmt +func (x *Node) GetRtepermissionInfo() *RTEPermissionInfo { + if x, ok := x.GetNode().(*Node_RtepermissionInfo); ok { + return x.RtepermissionInfo } return nil } -func (x *Node) GetUnlistenStmt() *UnlistenStmt { - if x, ok := x.GetNode().(*Node_UnlistenStmt); ok { - return x.UnlistenStmt +func (x *Node) GetRangeTblFunction() *RangeTblFunction { + if x, ok := x.GetNode().(*Node_RangeTblFunction); ok { + return x.RangeTblFunction } return nil } -func (x *Node) GetTransactionStmt() *TransactionStmt { - if x, ok := x.GetNode().(*Node_TransactionStmt); ok { - return x.TransactionStmt +func (x *Node) GetTableSampleClause() *TableSampleClause { + if x, ok := x.GetNode().(*Node_TableSampleClause); ok { + return x.TableSampleClause } return nil } -func (x *Node) GetViewStmt() *ViewStmt { - if x, ok := x.GetNode().(*Node_ViewStmt); ok { - return x.ViewStmt +func (x *Node) GetWithCheckOption() *WithCheckOption { + if x, ok := x.GetNode().(*Node_WithCheckOption); ok { + return x.WithCheckOption } return nil } -func (x *Node) GetLoadStmt() *LoadStmt { - if x, ok := x.GetNode().(*Node_LoadStmt); ok { - return x.LoadStmt +func (x *Node) GetSortGroupClause() *SortGroupClause { + if x, ok := x.GetNode().(*Node_SortGroupClause); ok { + return x.SortGroupClause } return nil } -func (x *Node) GetCreateDomainStmt() *CreateDomainStmt { - if x, ok := x.GetNode().(*Node_CreateDomainStmt); ok { - return x.CreateDomainStmt +func (x *Node) GetGroupingSet() *GroupingSet { + if x, ok := x.GetNode().(*Node_GroupingSet); ok { + return x.GroupingSet } return nil } -func (x *Node) GetCreatedbStmt() *CreatedbStmt { - if x, ok := x.GetNode().(*Node_CreatedbStmt); ok { - return x.CreatedbStmt +func (x *Node) GetWindowClause() *WindowClause { + if x, ok := x.GetNode().(*Node_WindowClause); ok { + return x.WindowClause } return nil } -func (x *Node) GetDropdbStmt() *DropdbStmt { - if x, ok := x.GetNode().(*Node_DropdbStmt); ok { - return x.DropdbStmt +func (x *Node) GetRowMarkClause() *RowMarkClause { + if x, ok := x.GetNode().(*Node_RowMarkClause); ok { + return x.RowMarkClause } return nil } -func (x *Node) GetVacuumStmt() *VacuumStmt { - if x, ok := x.GetNode().(*Node_VacuumStmt); ok { - return x.VacuumStmt +func (x *Node) GetWithClause() *WithClause { + if x, ok := x.GetNode().(*Node_WithClause); ok { + return x.WithClause } return nil } -func (x *Node) GetExplainStmt() *ExplainStmt { - if x, ok := x.GetNode().(*Node_ExplainStmt); ok { - return x.ExplainStmt +func (x *Node) GetInferClause() *InferClause { + if x, ok := x.GetNode().(*Node_InferClause); ok { + return x.InferClause } return nil } -func (x *Node) GetCreateTableAsStmt() *CreateTableAsStmt { - if x, ok := x.GetNode().(*Node_CreateTableAsStmt); ok { - return x.CreateTableAsStmt +func (x *Node) GetOnConflictClause() *OnConflictClause { + if x, ok := x.GetNode().(*Node_OnConflictClause); ok { + return x.OnConflictClause } return nil } -func (x *Node) GetCreateSeqStmt() *CreateSeqStmt { - if x, ok := x.GetNode().(*Node_CreateSeqStmt); ok { - return x.CreateSeqStmt +func (x *Node) GetCtesearchClause() *CTESearchClause { + if x, ok := x.GetNode().(*Node_CtesearchClause); ok { + return x.CtesearchClause } return nil } -func (x *Node) GetAlterSeqStmt() *AlterSeqStmt { - if x, ok := x.GetNode().(*Node_AlterSeqStmt); ok { - return x.AlterSeqStmt +func (x *Node) GetCtecycleClause() *CTECycleClause { + if x, ok := x.GetNode().(*Node_CtecycleClause); ok { + return x.CtecycleClause } return nil } -func (x *Node) GetVariableSetStmt() *VariableSetStmt { - if x, ok := x.GetNode().(*Node_VariableSetStmt); ok { - return x.VariableSetStmt +func (x *Node) GetCommonTableExpr() *CommonTableExpr { + if x, ok := x.GetNode().(*Node_CommonTableExpr); ok { + return x.CommonTableExpr } return nil } -func (x *Node) GetVariableShowStmt() *VariableShowStmt { - if x, ok := x.GetNode().(*Node_VariableShowStmt); ok { - return x.VariableShowStmt +func (x *Node) GetMergeWhenClause() *MergeWhenClause { + if x, ok := x.GetNode().(*Node_MergeWhenClause); ok { + return x.MergeWhenClause } return nil } -func (x *Node) GetDiscardStmt() *DiscardStmt { - if x, ok := x.GetNode().(*Node_DiscardStmt); ok { - return x.DiscardStmt +func (x *Node) GetMergeAction() *MergeAction { + if x, ok := x.GetNode().(*Node_MergeAction); ok { + return x.MergeAction } return nil } -func (x *Node) GetCreateTrigStmt() *CreateTrigStmt { - if x, ok := x.GetNode().(*Node_CreateTrigStmt); ok { - return x.CreateTrigStmt +func (x *Node) GetTriggerTransition() *TriggerTransition { + if x, ok := x.GetNode().(*Node_TriggerTransition); ok { + return x.TriggerTransition } return nil } -func (x *Node) GetCreatePlangStmt() *CreatePLangStmt { - if x, ok := x.GetNode().(*Node_CreatePlangStmt); ok { - return x.CreatePlangStmt +func (x *Node) GetJsonOutput() *JsonOutput { + if x, ok := x.GetNode().(*Node_JsonOutput); ok { + return x.JsonOutput } return nil } -func (x *Node) GetCreateRoleStmt() *CreateRoleStmt { - if x, ok := x.GetNode().(*Node_CreateRoleStmt); ok { - return x.CreateRoleStmt +func (x *Node) GetJsonKeyValue() *JsonKeyValue { + if x, ok := x.GetNode().(*Node_JsonKeyValue); ok { + return x.JsonKeyValue } return nil } -func (x *Node) GetAlterRoleStmt() *AlterRoleStmt { - if x, ok := x.GetNode().(*Node_AlterRoleStmt); ok { - return x.AlterRoleStmt +func (x *Node) GetJsonObjectConstructor() *JsonObjectConstructor { + if x, ok := x.GetNode().(*Node_JsonObjectConstructor); ok { + return x.JsonObjectConstructor } return nil } -func (x *Node) GetDropRoleStmt() *DropRoleStmt { - if x, ok := x.GetNode().(*Node_DropRoleStmt); ok { - return x.DropRoleStmt +func (x *Node) GetJsonArrayConstructor() *JsonArrayConstructor { + if x, ok := x.GetNode().(*Node_JsonArrayConstructor); ok { + return x.JsonArrayConstructor } return nil } -func (x *Node) GetLockStmt() *LockStmt { - if x, ok := x.GetNode().(*Node_LockStmt); ok { - return x.LockStmt +func (x *Node) GetJsonArrayQueryConstructor() *JsonArrayQueryConstructor { + if x, ok := x.GetNode().(*Node_JsonArrayQueryConstructor); ok { + return x.JsonArrayQueryConstructor } return nil } -func (x *Node) GetConstraintsSetStmt() *ConstraintsSetStmt { - if x, ok := x.GetNode().(*Node_ConstraintsSetStmt); ok { - return x.ConstraintsSetStmt +func (x *Node) GetJsonAggConstructor() *JsonAggConstructor { + if x, ok := x.GetNode().(*Node_JsonAggConstructor); ok { + return x.JsonAggConstructor } return nil } -func (x *Node) GetReindexStmt() *ReindexStmt { - if x, ok := x.GetNode().(*Node_ReindexStmt); ok { - return x.ReindexStmt +func (x *Node) GetJsonObjectAgg() *JsonObjectAgg { + if x, ok := x.GetNode().(*Node_JsonObjectAgg); ok { + return x.JsonObjectAgg } return nil } -func (x *Node) GetCheckPointStmt() *CheckPointStmt { - if x, ok := x.GetNode().(*Node_CheckPointStmt); ok { - return x.CheckPointStmt +func (x *Node) GetJsonArrayAgg() *JsonArrayAgg { + if x, ok := x.GetNode().(*Node_JsonArrayAgg); ok { + return x.JsonArrayAgg } return nil } -func (x *Node) GetCreateSchemaStmt() *CreateSchemaStmt { - if x, ok := x.GetNode().(*Node_CreateSchemaStmt); ok { - return x.CreateSchemaStmt +func (x *Node) GetRawStmt() *RawStmt { + if x, ok := x.GetNode().(*Node_RawStmt); ok { + return x.RawStmt } return nil } -func (x *Node) GetAlterDatabaseStmt() *AlterDatabaseStmt { - if x, ok := x.GetNode().(*Node_AlterDatabaseStmt); ok { - return x.AlterDatabaseStmt +func (x *Node) GetInsertStmt() *InsertStmt { + if x, ok := x.GetNode().(*Node_InsertStmt); ok { + return x.InsertStmt } return nil } -func (x *Node) GetAlterDatabaseRefreshCollStmt() *AlterDatabaseRefreshCollStmt { - if x, ok := x.GetNode().(*Node_AlterDatabaseRefreshCollStmt); ok { - return x.AlterDatabaseRefreshCollStmt +func (x *Node) GetDeleteStmt() *DeleteStmt { + if x, ok := x.GetNode().(*Node_DeleteStmt); ok { + return x.DeleteStmt } return nil } -func (x *Node) GetAlterDatabaseSetStmt() *AlterDatabaseSetStmt { - if x, ok := x.GetNode().(*Node_AlterDatabaseSetStmt); ok { - return x.AlterDatabaseSetStmt +func (x *Node) GetUpdateStmt() *UpdateStmt { + if x, ok := x.GetNode().(*Node_UpdateStmt); ok { + return x.UpdateStmt } return nil } -func (x *Node) GetAlterRoleSetStmt() *AlterRoleSetStmt { - if x, ok := x.GetNode().(*Node_AlterRoleSetStmt); ok { - return x.AlterRoleSetStmt +func (x *Node) GetMergeStmt() *MergeStmt { + if x, ok := x.GetNode().(*Node_MergeStmt); ok { + return x.MergeStmt } return nil } -func (x *Node) GetCreateConversionStmt() *CreateConversionStmt { - if x, ok := x.GetNode().(*Node_CreateConversionStmt); ok { - return x.CreateConversionStmt +func (x *Node) GetSelectStmt() *SelectStmt { + if x, ok := x.GetNode().(*Node_SelectStmt); ok { + return x.SelectStmt } return nil } -func (x *Node) GetCreateCastStmt() *CreateCastStmt { - if x, ok := x.GetNode().(*Node_CreateCastStmt); ok { - return x.CreateCastStmt +func (x *Node) GetSetOperationStmt() *SetOperationStmt { + if x, ok := x.GetNode().(*Node_SetOperationStmt); ok { + return x.SetOperationStmt } return nil } -func (x *Node) GetCreateOpClassStmt() *CreateOpClassStmt { - if x, ok := x.GetNode().(*Node_CreateOpClassStmt); ok { - return x.CreateOpClassStmt +func (x *Node) GetReturnStmt() *ReturnStmt { + if x, ok := x.GetNode().(*Node_ReturnStmt); ok { + return x.ReturnStmt } return nil } -func (x *Node) GetCreateOpFamilyStmt() *CreateOpFamilyStmt { - if x, ok := x.GetNode().(*Node_CreateOpFamilyStmt); ok { - return x.CreateOpFamilyStmt +func (x *Node) GetPlassignStmt() *PLAssignStmt { + if x, ok := x.GetNode().(*Node_PlassignStmt); ok { + return x.PlassignStmt } return nil } -func (x *Node) GetAlterOpFamilyStmt() *AlterOpFamilyStmt { - if x, ok := x.GetNode().(*Node_AlterOpFamilyStmt); ok { - return x.AlterOpFamilyStmt +func (x *Node) GetCreateSchemaStmt() *CreateSchemaStmt { + if x, ok := x.GetNode().(*Node_CreateSchemaStmt); ok { + return x.CreateSchemaStmt } return nil } -func (x *Node) GetPrepareStmt() *PrepareStmt { - if x, ok := x.GetNode().(*Node_PrepareStmt); ok { - return x.PrepareStmt +func (x *Node) GetAlterTableStmt() *AlterTableStmt { + if x, ok := x.GetNode().(*Node_AlterTableStmt); ok { + return x.AlterTableStmt } return nil } -func (x *Node) GetExecuteStmt() *ExecuteStmt { - if x, ok := x.GetNode().(*Node_ExecuteStmt); ok { - return x.ExecuteStmt +func (x *Node) GetReplicaIdentityStmt() *ReplicaIdentityStmt { + if x, ok := x.GetNode().(*Node_ReplicaIdentityStmt); ok { + return x.ReplicaIdentityStmt } return nil } -func (x *Node) GetDeallocateStmt() *DeallocateStmt { - if x, ok := x.GetNode().(*Node_DeallocateStmt); ok { - return x.DeallocateStmt +func (x *Node) GetAlterTableCmd() *AlterTableCmd { + if x, ok := x.GetNode().(*Node_AlterTableCmd); ok { + return x.AlterTableCmd } return nil } -func (x *Node) GetDeclareCursorStmt() *DeclareCursorStmt { - if x, ok := x.GetNode().(*Node_DeclareCursorStmt); ok { - return x.DeclareCursorStmt +func (x *Node) GetAlterCollationStmt() *AlterCollationStmt { + if x, ok := x.GetNode().(*Node_AlterCollationStmt); ok { + return x.AlterCollationStmt } return nil } -func (x *Node) GetCreateTableSpaceStmt() *CreateTableSpaceStmt { - if x, ok := x.GetNode().(*Node_CreateTableSpaceStmt); ok { - return x.CreateTableSpaceStmt +func (x *Node) GetAlterDomainStmt() *AlterDomainStmt { + if x, ok := x.GetNode().(*Node_AlterDomainStmt); ok { + return x.AlterDomainStmt } return nil } -func (x *Node) GetDropTableSpaceStmt() *DropTableSpaceStmt { - if x, ok := x.GetNode().(*Node_DropTableSpaceStmt); ok { - return x.DropTableSpaceStmt +func (x *Node) GetGrantStmt() *GrantStmt { + if x, ok := x.GetNode().(*Node_GrantStmt); ok { + return x.GrantStmt } return nil } -func (x *Node) GetAlterObjectDependsStmt() *AlterObjectDependsStmt { - if x, ok := x.GetNode().(*Node_AlterObjectDependsStmt); ok { - return x.AlterObjectDependsStmt +func (x *Node) GetObjectWithArgs() *ObjectWithArgs { + if x, ok := x.GetNode().(*Node_ObjectWithArgs); ok { + return x.ObjectWithArgs } return nil } -func (x *Node) GetAlterObjectSchemaStmt() *AlterObjectSchemaStmt { - if x, ok := x.GetNode().(*Node_AlterObjectSchemaStmt); ok { - return x.AlterObjectSchemaStmt +func (x *Node) GetAccessPriv() *AccessPriv { + if x, ok := x.GetNode().(*Node_AccessPriv); ok { + return x.AccessPriv } return nil } -func (x *Node) GetAlterOwnerStmt() *AlterOwnerStmt { - if x, ok := x.GetNode().(*Node_AlterOwnerStmt); ok { - return x.AlterOwnerStmt +func (x *Node) GetGrantRoleStmt() *GrantRoleStmt { + if x, ok := x.GetNode().(*Node_GrantRoleStmt); ok { + return x.GrantRoleStmt } return nil } -func (x *Node) GetAlterOperatorStmt() *AlterOperatorStmt { - if x, ok := x.GetNode().(*Node_AlterOperatorStmt); ok { - return x.AlterOperatorStmt +func (x *Node) GetAlterDefaultPrivilegesStmt() *AlterDefaultPrivilegesStmt { + if x, ok := x.GetNode().(*Node_AlterDefaultPrivilegesStmt); ok { + return x.AlterDefaultPrivilegesStmt } return nil } -func (x *Node) GetAlterTypeStmt() *AlterTypeStmt { - if x, ok := x.GetNode().(*Node_AlterTypeStmt); ok { - return x.AlterTypeStmt +func (x *Node) GetCopyStmt() *CopyStmt { + if x, ok := x.GetNode().(*Node_CopyStmt); ok { + return x.CopyStmt } return nil } -func (x *Node) GetDropOwnedStmt() *DropOwnedStmt { - if x, ok := x.GetNode().(*Node_DropOwnedStmt); ok { - return x.DropOwnedStmt +func (x *Node) GetVariableSetStmt() *VariableSetStmt { + if x, ok := x.GetNode().(*Node_VariableSetStmt); ok { + return x.VariableSetStmt } return nil } -func (x *Node) GetReassignOwnedStmt() *ReassignOwnedStmt { - if x, ok := x.GetNode().(*Node_ReassignOwnedStmt); ok { - return x.ReassignOwnedStmt +func (x *Node) GetVariableShowStmt() *VariableShowStmt { + if x, ok := x.GetNode().(*Node_VariableShowStmt); ok { + return x.VariableShowStmt } return nil } -func (x *Node) GetCompositeTypeStmt() *CompositeTypeStmt { - if x, ok := x.GetNode().(*Node_CompositeTypeStmt); ok { - return x.CompositeTypeStmt +func (x *Node) GetCreateStmt() *CreateStmt { + if x, ok := x.GetNode().(*Node_CreateStmt); ok { + return x.CreateStmt } return nil } -func (x *Node) GetCreateEnumStmt() *CreateEnumStmt { - if x, ok := x.GetNode().(*Node_CreateEnumStmt); ok { - return x.CreateEnumStmt +func (x *Node) GetConstraint() *Constraint { + if x, ok := x.GetNode().(*Node_Constraint); ok { + return x.Constraint } return nil } -func (x *Node) GetCreateRangeStmt() *CreateRangeStmt { - if x, ok := x.GetNode().(*Node_CreateRangeStmt); ok { - return x.CreateRangeStmt +func (x *Node) GetCreateTableSpaceStmt() *CreateTableSpaceStmt { + if x, ok := x.GetNode().(*Node_CreateTableSpaceStmt); ok { + return x.CreateTableSpaceStmt } return nil } -func (x *Node) GetAlterEnumStmt() *AlterEnumStmt { - if x, ok := x.GetNode().(*Node_AlterEnumStmt); ok { - return x.AlterEnumStmt +func (x *Node) GetDropTableSpaceStmt() *DropTableSpaceStmt { + if x, ok := x.GetNode().(*Node_DropTableSpaceStmt); ok { + return x.DropTableSpaceStmt } return nil } -func (x *Node) GetAlterTsdictionaryStmt() *AlterTSDictionaryStmt { - if x, ok := x.GetNode().(*Node_AlterTsdictionaryStmt); ok { - return x.AlterTsdictionaryStmt +func (x *Node) GetAlterTableSpaceOptionsStmt() *AlterTableSpaceOptionsStmt { + if x, ok := x.GetNode().(*Node_AlterTableSpaceOptionsStmt); ok { + return x.AlterTableSpaceOptionsStmt } return nil } -func (x *Node) GetAlterTsconfigurationStmt() *AlterTSConfigurationStmt { - if x, ok := x.GetNode().(*Node_AlterTsconfigurationStmt); ok { - return x.AlterTsconfigurationStmt +func (x *Node) GetAlterTableMoveAllStmt() *AlterTableMoveAllStmt { + if x, ok := x.GetNode().(*Node_AlterTableMoveAllStmt); ok { + return x.AlterTableMoveAllStmt + } + return nil +} + +func (x *Node) GetCreateExtensionStmt() *CreateExtensionStmt { + if x, ok := x.GetNode().(*Node_CreateExtensionStmt); ok { + return x.CreateExtensionStmt + } + return nil +} + +func (x *Node) GetAlterExtensionStmt() *AlterExtensionStmt { + if x, ok := x.GetNode().(*Node_AlterExtensionStmt); ok { + return x.AlterExtensionStmt + } + return nil +} + +func (x *Node) GetAlterExtensionContentsStmt() *AlterExtensionContentsStmt { + if x, ok := x.GetNode().(*Node_AlterExtensionContentsStmt); ok { + return x.AlterExtensionContentsStmt } return nil } @@ -6686,6 +7062,13 @@ func (x *Node) GetAlterForeignServerStmt() *AlterForeignServerStmt { return nil } +func (x *Node) GetCreateForeignTableStmt() *CreateForeignTableStmt { + if x, ok := x.GetNode().(*Node_CreateForeignTableStmt); ok { + return x.CreateForeignTableStmt + } + return nil +} + func (x *Node) GetCreateUserMappingStmt() *CreateUserMappingStmt { if x, ok := x.GetNode().(*Node_CreateUserMappingStmt); ok { return x.CreateUserMappingStmt @@ -6707,576 +7090,576 @@ func (x *Node) GetDropUserMappingStmt() *DropUserMappingStmt { return nil } -func (x *Node) GetAlterTableSpaceOptionsStmt() *AlterTableSpaceOptionsStmt { - if x, ok := x.GetNode().(*Node_AlterTableSpaceOptionsStmt); ok { - return x.AlterTableSpaceOptionsStmt +func (x *Node) GetImportForeignSchemaStmt() *ImportForeignSchemaStmt { + if x, ok := x.GetNode().(*Node_ImportForeignSchemaStmt); ok { + return x.ImportForeignSchemaStmt } return nil } -func (x *Node) GetAlterTableMoveAllStmt() *AlterTableMoveAllStmt { - if x, ok := x.GetNode().(*Node_AlterTableMoveAllStmt); ok { - return x.AlterTableMoveAllStmt +func (x *Node) GetCreatePolicyStmt() *CreatePolicyStmt { + if x, ok := x.GetNode().(*Node_CreatePolicyStmt); ok { + return x.CreatePolicyStmt } return nil } -func (x *Node) GetSecLabelStmt() *SecLabelStmt { - if x, ok := x.GetNode().(*Node_SecLabelStmt); ok { - return x.SecLabelStmt +func (x *Node) GetAlterPolicyStmt() *AlterPolicyStmt { + if x, ok := x.GetNode().(*Node_AlterPolicyStmt); ok { + return x.AlterPolicyStmt } return nil } -func (x *Node) GetCreateForeignTableStmt() *CreateForeignTableStmt { - if x, ok := x.GetNode().(*Node_CreateForeignTableStmt); ok { - return x.CreateForeignTableStmt +func (x *Node) GetCreateAmStmt() *CreateAmStmt { + if x, ok := x.GetNode().(*Node_CreateAmStmt); ok { + return x.CreateAmStmt } return nil } -func (x *Node) GetImportForeignSchemaStmt() *ImportForeignSchemaStmt { - if x, ok := x.GetNode().(*Node_ImportForeignSchemaStmt); ok { - return x.ImportForeignSchemaStmt +func (x *Node) GetCreateTrigStmt() *CreateTrigStmt { + if x, ok := x.GetNode().(*Node_CreateTrigStmt); ok { + return x.CreateTrigStmt } return nil } -func (x *Node) GetCreateExtensionStmt() *CreateExtensionStmt { - if x, ok := x.GetNode().(*Node_CreateExtensionStmt); ok { - return x.CreateExtensionStmt +func (x *Node) GetCreateEventTrigStmt() *CreateEventTrigStmt { + if x, ok := x.GetNode().(*Node_CreateEventTrigStmt); ok { + return x.CreateEventTrigStmt } return nil } -func (x *Node) GetAlterExtensionStmt() *AlterExtensionStmt { - if x, ok := x.GetNode().(*Node_AlterExtensionStmt); ok { - return x.AlterExtensionStmt +func (x *Node) GetAlterEventTrigStmt() *AlterEventTrigStmt { + if x, ok := x.GetNode().(*Node_AlterEventTrigStmt); ok { + return x.AlterEventTrigStmt } return nil } -func (x *Node) GetAlterExtensionContentsStmt() *AlterExtensionContentsStmt { - if x, ok := x.GetNode().(*Node_AlterExtensionContentsStmt); ok { - return x.AlterExtensionContentsStmt +func (x *Node) GetCreatePlangStmt() *CreatePLangStmt { + if x, ok := x.GetNode().(*Node_CreatePlangStmt); ok { + return x.CreatePlangStmt } return nil } -func (x *Node) GetCreateEventTrigStmt() *CreateEventTrigStmt { - if x, ok := x.GetNode().(*Node_CreateEventTrigStmt); ok { - return x.CreateEventTrigStmt +func (x *Node) GetCreateRoleStmt() *CreateRoleStmt { + if x, ok := x.GetNode().(*Node_CreateRoleStmt); ok { + return x.CreateRoleStmt } return nil } -func (x *Node) GetAlterEventTrigStmt() *AlterEventTrigStmt { - if x, ok := x.GetNode().(*Node_AlterEventTrigStmt); ok { - return x.AlterEventTrigStmt +func (x *Node) GetAlterRoleStmt() *AlterRoleStmt { + if x, ok := x.GetNode().(*Node_AlterRoleStmt); ok { + return x.AlterRoleStmt } return nil } -func (x *Node) GetRefreshMatViewStmt() *RefreshMatViewStmt { - if x, ok := x.GetNode().(*Node_RefreshMatViewStmt); ok { - return x.RefreshMatViewStmt +func (x *Node) GetAlterRoleSetStmt() *AlterRoleSetStmt { + if x, ok := x.GetNode().(*Node_AlterRoleSetStmt); ok { + return x.AlterRoleSetStmt } return nil } -func (x *Node) GetReplicaIdentityStmt() *ReplicaIdentityStmt { - if x, ok := x.GetNode().(*Node_ReplicaIdentityStmt); ok { - return x.ReplicaIdentityStmt +func (x *Node) GetDropRoleStmt() *DropRoleStmt { + if x, ok := x.GetNode().(*Node_DropRoleStmt); ok { + return x.DropRoleStmt } return nil } -func (x *Node) GetAlterSystemStmt() *AlterSystemStmt { - if x, ok := x.GetNode().(*Node_AlterSystemStmt); ok { - return x.AlterSystemStmt +func (x *Node) GetCreateSeqStmt() *CreateSeqStmt { + if x, ok := x.GetNode().(*Node_CreateSeqStmt); ok { + return x.CreateSeqStmt } return nil } -func (x *Node) GetCreatePolicyStmt() *CreatePolicyStmt { - if x, ok := x.GetNode().(*Node_CreatePolicyStmt); ok { - return x.CreatePolicyStmt +func (x *Node) GetAlterSeqStmt() *AlterSeqStmt { + if x, ok := x.GetNode().(*Node_AlterSeqStmt); ok { + return x.AlterSeqStmt } return nil } -func (x *Node) GetAlterPolicyStmt() *AlterPolicyStmt { - if x, ok := x.GetNode().(*Node_AlterPolicyStmt); ok { - return x.AlterPolicyStmt +func (x *Node) GetDefineStmt() *DefineStmt { + if x, ok := x.GetNode().(*Node_DefineStmt); ok { + return x.DefineStmt } return nil } -func (x *Node) GetCreateTransformStmt() *CreateTransformStmt { - if x, ok := x.GetNode().(*Node_CreateTransformStmt); ok { - return x.CreateTransformStmt +func (x *Node) GetCreateDomainStmt() *CreateDomainStmt { + if x, ok := x.GetNode().(*Node_CreateDomainStmt); ok { + return x.CreateDomainStmt } return nil } -func (x *Node) GetCreateAmStmt() *CreateAmStmt { - if x, ok := x.GetNode().(*Node_CreateAmStmt); ok { - return x.CreateAmStmt +func (x *Node) GetCreateOpClassStmt() *CreateOpClassStmt { + if x, ok := x.GetNode().(*Node_CreateOpClassStmt); ok { + return x.CreateOpClassStmt } return nil } -func (x *Node) GetCreatePublicationStmt() *CreatePublicationStmt { - if x, ok := x.GetNode().(*Node_CreatePublicationStmt); ok { - return x.CreatePublicationStmt +func (x *Node) GetCreateOpClassItem() *CreateOpClassItem { + if x, ok := x.GetNode().(*Node_CreateOpClassItem); ok { + return x.CreateOpClassItem } return nil } -func (x *Node) GetAlterPublicationStmt() *AlterPublicationStmt { - if x, ok := x.GetNode().(*Node_AlterPublicationStmt); ok { - return x.AlterPublicationStmt +func (x *Node) GetCreateOpFamilyStmt() *CreateOpFamilyStmt { + if x, ok := x.GetNode().(*Node_CreateOpFamilyStmt); ok { + return x.CreateOpFamilyStmt } return nil } -func (x *Node) GetCreateSubscriptionStmt() *CreateSubscriptionStmt { - if x, ok := x.GetNode().(*Node_CreateSubscriptionStmt); ok { - return x.CreateSubscriptionStmt +func (x *Node) GetAlterOpFamilyStmt() *AlterOpFamilyStmt { + if x, ok := x.GetNode().(*Node_AlterOpFamilyStmt); ok { + return x.AlterOpFamilyStmt } return nil } -func (x *Node) GetAlterSubscriptionStmt() *AlterSubscriptionStmt { - if x, ok := x.GetNode().(*Node_AlterSubscriptionStmt); ok { - return x.AlterSubscriptionStmt +func (x *Node) GetDropStmt() *DropStmt { + if x, ok := x.GetNode().(*Node_DropStmt); ok { + return x.DropStmt } return nil } -func (x *Node) GetDropSubscriptionStmt() *DropSubscriptionStmt { - if x, ok := x.GetNode().(*Node_DropSubscriptionStmt); ok { - return x.DropSubscriptionStmt +func (x *Node) GetTruncateStmt() *TruncateStmt { + if x, ok := x.GetNode().(*Node_TruncateStmt); ok { + return x.TruncateStmt } return nil } -func (x *Node) GetCreateStatsStmt() *CreateStatsStmt { - if x, ok := x.GetNode().(*Node_CreateStatsStmt); ok { - return x.CreateStatsStmt +func (x *Node) GetCommentStmt() *CommentStmt { + if x, ok := x.GetNode().(*Node_CommentStmt); ok { + return x.CommentStmt } return nil } -func (x *Node) GetAlterCollationStmt() *AlterCollationStmt { - if x, ok := x.GetNode().(*Node_AlterCollationStmt); ok { - return x.AlterCollationStmt +func (x *Node) GetSecLabelStmt() *SecLabelStmt { + if x, ok := x.GetNode().(*Node_SecLabelStmt); ok { + return x.SecLabelStmt } return nil } -func (x *Node) GetCallStmt() *CallStmt { - if x, ok := x.GetNode().(*Node_CallStmt); ok { - return x.CallStmt +func (x *Node) GetDeclareCursorStmt() *DeclareCursorStmt { + if x, ok := x.GetNode().(*Node_DeclareCursorStmt); ok { + return x.DeclareCursorStmt } return nil } -func (x *Node) GetAlterStatsStmt() *AlterStatsStmt { - if x, ok := x.GetNode().(*Node_AlterStatsStmt); ok { - return x.AlterStatsStmt +func (x *Node) GetClosePortalStmt() *ClosePortalStmt { + if x, ok := x.GetNode().(*Node_ClosePortalStmt); ok { + return x.ClosePortalStmt } return nil } -func (x *Node) GetAExpr() *A_Expr { - if x, ok := x.GetNode().(*Node_AExpr); ok { - return x.AExpr +func (x *Node) GetFetchStmt() *FetchStmt { + if x, ok := x.GetNode().(*Node_FetchStmt); ok { + return x.FetchStmt } return nil } -func (x *Node) GetColumnRef() *ColumnRef { - if x, ok := x.GetNode().(*Node_ColumnRef); ok { - return x.ColumnRef +func (x *Node) GetIndexStmt() *IndexStmt { + if x, ok := x.GetNode().(*Node_IndexStmt); ok { + return x.IndexStmt } return nil } -func (x *Node) GetParamRef() *ParamRef { - if x, ok := x.GetNode().(*Node_ParamRef); ok { - return x.ParamRef +func (x *Node) GetCreateStatsStmt() *CreateStatsStmt { + if x, ok := x.GetNode().(*Node_CreateStatsStmt); ok { + return x.CreateStatsStmt } return nil } -func (x *Node) GetFuncCall() *FuncCall { - if x, ok := x.GetNode().(*Node_FuncCall); ok { - return x.FuncCall +func (x *Node) GetStatsElem() *StatsElem { + if x, ok := x.GetNode().(*Node_StatsElem); ok { + return x.StatsElem } return nil } -func (x *Node) GetAStar() *A_Star { - if x, ok := x.GetNode().(*Node_AStar); ok { - return x.AStar +func (x *Node) GetAlterStatsStmt() *AlterStatsStmt { + if x, ok := x.GetNode().(*Node_AlterStatsStmt); ok { + return x.AlterStatsStmt } return nil } -func (x *Node) GetAIndices() *A_Indices { - if x, ok := x.GetNode().(*Node_AIndices); ok { - return x.AIndices +func (x *Node) GetCreateFunctionStmt() *CreateFunctionStmt { + if x, ok := x.GetNode().(*Node_CreateFunctionStmt); ok { + return x.CreateFunctionStmt } return nil } -func (x *Node) GetAIndirection() *A_Indirection { - if x, ok := x.GetNode().(*Node_AIndirection); ok { - return x.AIndirection +func (x *Node) GetFunctionParameter() *FunctionParameter { + if x, ok := x.GetNode().(*Node_FunctionParameter); ok { + return x.FunctionParameter } return nil } -func (x *Node) GetAArrayExpr() *A_ArrayExpr { - if x, ok := x.GetNode().(*Node_AArrayExpr); ok { - return x.AArrayExpr +func (x *Node) GetAlterFunctionStmt() *AlterFunctionStmt { + if x, ok := x.GetNode().(*Node_AlterFunctionStmt); ok { + return x.AlterFunctionStmt } return nil } -func (x *Node) GetResTarget() *ResTarget { - if x, ok := x.GetNode().(*Node_ResTarget); ok { - return x.ResTarget +func (x *Node) GetDoStmt() *DoStmt { + if x, ok := x.GetNode().(*Node_DoStmt); ok { + return x.DoStmt } return nil } -func (x *Node) GetMultiAssignRef() *MultiAssignRef { - if x, ok := x.GetNode().(*Node_MultiAssignRef); ok { - return x.MultiAssignRef +func (x *Node) GetInlineCodeBlock() *InlineCodeBlock { + if x, ok := x.GetNode().(*Node_InlineCodeBlock); ok { + return x.InlineCodeBlock } return nil } -func (x *Node) GetTypeCast() *TypeCast { - if x, ok := x.GetNode().(*Node_TypeCast); ok { - return x.TypeCast +func (x *Node) GetCallStmt() *CallStmt { + if x, ok := x.GetNode().(*Node_CallStmt); ok { + return x.CallStmt } return nil } -func (x *Node) GetCollateClause() *CollateClause { - if x, ok := x.GetNode().(*Node_CollateClause); ok { - return x.CollateClause +func (x *Node) GetCallContext() *CallContext { + if x, ok := x.GetNode().(*Node_CallContext); ok { + return x.CallContext } return nil } -func (x *Node) GetSortBy() *SortBy { - if x, ok := x.GetNode().(*Node_SortBy); ok { - return x.SortBy +func (x *Node) GetRenameStmt() *RenameStmt { + if x, ok := x.GetNode().(*Node_RenameStmt); ok { + return x.RenameStmt } return nil } -func (x *Node) GetWindowDef() *WindowDef { - if x, ok := x.GetNode().(*Node_WindowDef); ok { - return x.WindowDef +func (x *Node) GetAlterObjectDependsStmt() *AlterObjectDependsStmt { + if x, ok := x.GetNode().(*Node_AlterObjectDependsStmt); ok { + return x.AlterObjectDependsStmt } return nil } -func (x *Node) GetRangeSubselect() *RangeSubselect { - if x, ok := x.GetNode().(*Node_RangeSubselect); ok { - return x.RangeSubselect +func (x *Node) GetAlterObjectSchemaStmt() *AlterObjectSchemaStmt { + if x, ok := x.GetNode().(*Node_AlterObjectSchemaStmt); ok { + return x.AlterObjectSchemaStmt } return nil } -func (x *Node) GetRangeFunction() *RangeFunction { - if x, ok := x.GetNode().(*Node_RangeFunction); ok { - return x.RangeFunction +func (x *Node) GetAlterOwnerStmt() *AlterOwnerStmt { + if x, ok := x.GetNode().(*Node_AlterOwnerStmt); ok { + return x.AlterOwnerStmt } return nil } -func (x *Node) GetRangeTableSample() *RangeTableSample { - if x, ok := x.GetNode().(*Node_RangeTableSample); ok { - return x.RangeTableSample +func (x *Node) GetAlterOperatorStmt() *AlterOperatorStmt { + if x, ok := x.GetNode().(*Node_AlterOperatorStmt); ok { + return x.AlterOperatorStmt } return nil } -func (x *Node) GetRangeTableFunc() *RangeTableFunc { - if x, ok := x.GetNode().(*Node_RangeTableFunc); ok { - return x.RangeTableFunc +func (x *Node) GetAlterTypeStmt() *AlterTypeStmt { + if x, ok := x.GetNode().(*Node_AlterTypeStmt); ok { + return x.AlterTypeStmt } return nil } -func (x *Node) GetRangeTableFuncCol() *RangeTableFuncCol { - if x, ok := x.GetNode().(*Node_RangeTableFuncCol); ok { - return x.RangeTableFuncCol +func (x *Node) GetRuleStmt() *RuleStmt { + if x, ok := x.GetNode().(*Node_RuleStmt); ok { + return x.RuleStmt } return nil } -func (x *Node) GetTypeName() *TypeName { - if x, ok := x.GetNode().(*Node_TypeName); ok { - return x.TypeName +func (x *Node) GetNotifyStmt() *NotifyStmt { + if x, ok := x.GetNode().(*Node_NotifyStmt); ok { + return x.NotifyStmt } return nil } -func (x *Node) GetColumnDef() *ColumnDef { - if x, ok := x.GetNode().(*Node_ColumnDef); ok { - return x.ColumnDef +func (x *Node) GetListenStmt() *ListenStmt { + if x, ok := x.GetNode().(*Node_ListenStmt); ok { + return x.ListenStmt } return nil } -func (x *Node) GetIndexElem() *IndexElem { - if x, ok := x.GetNode().(*Node_IndexElem); ok { - return x.IndexElem +func (x *Node) GetUnlistenStmt() *UnlistenStmt { + if x, ok := x.GetNode().(*Node_UnlistenStmt); ok { + return x.UnlistenStmt } return nil } -func (x *Node) GetStatsElem() *StatsElem { - if x, ok := x.GetNode().(*Node_StatsElem); ok { - return x.StatsElem +func (x *Node) GetTransactionStmt() *TransactionStmt { + if x, ok := x.GetNode().(*Node_TransactionStmt); ok { + return x.TransactionStmt } return nil } -func (x *Node) GetConstraint() *Constraint { - if x, ok := x.GetNode().(*Node_Constraint); ok { - return x.Constraint +func (x *Node) GetCompositeTypeStmt() *CompositeTypeStmt { + if x, ok := x.GetNode().(*Node_CompositeTypeStmt); ok { + return x.CompositeTypeStmt } return nil } -func (x *Node) GetDefElem() *DefElem { - if x, ok := x.GetNode().(*Node_DefElem); ok { - return x.DefElem +func (x *Node) GetCreateEnumStmt() *CreateEnumStmt { + if x, ok := x.GetNode().(*Node_CreateEnumStmt); ok { + return x.CreateEnumStmt } return nil } -func (x *Node) GetRangeTblEntry() *RangeTblEntry { - if x, ok := x.GetNode().(*Node_RangeTblEntry); ok { - return x.RangeTblEntry +func (x *Node) GetCreateRangeStmt() *CreateRangeStmt { + if x, ok := x.GetNode().(*Node_CreateRangeStmt); ok { + return x.CreateRangeStmt } return nil } -func (x *Node) GetRangeTblFunction() *RangeTblFunction { - if x, ok := x.GetNode().(*Node_RangeTblFunction); ok { - return x.RangeTblFunction +func (x *Node) GetAlterEnumStmt() *AlterEnumStmt { + if x, ok := x.GetNode().(*Node_AlterEnumStmt); ok { + return x.AlterEnumStmt } return nil } -func (x *Node) GetTableSampleClause() *TableSampleClause { - if x, ok := x.GetNode().(*Node_TableSampleClause); ok { - return x.TableSampleClause +func (x *Node) GetViewStmt() *ViewStmt { + if x, ok := x.GetNode().(*Node_ViewStmt); ok { + return x.ViewStmt } return nil } -func (x *Node) GetWithCheckOption() *WithCheckOption { - if x, ok := x.GetNode().(*Node_WithCheckOption); ok { - return x.WithCheckOption +func (x *Node) GetLoadStmt() *LoadStmt { + if x, ok := x.GetNode().(*Node_LoadStmt); ok { + return x.LoadStmt } return nil } -func (x *Node) GetSortGroupClause() *SortGroupClause { - if x, ok := x.GetNode().(*Node_SortGroupClause); ok { - return x.SortGroupClause +func (x *Node) GetCreatedbStmt() *CreatedbStmt { + if x, ok := x.GetNode().(*Node_CreatedbStmt); ok { + return x.CreatedbStmt } return nil } -func (x *Node) GetGroupingSet() *GroupingSet { - if x, ok := x.GetNode().(*Node_GroupingSet); ok { - return x.GroupingSet +func (x *Node) GetAlterDatabaseStmt() *AlterDatabaseStmt { + if x, ok := x.GetNode().(*Node_AlterDatabaseStmt); ok { + return x.AlterDatabaseStmt } return nil } -func (x *Node) GetWindowClause() *WindowClause { - if x, ok := x.GetNode().(*Node_WindowClause); ok { - return x.WindowClause +func (x *Node) GetAlterDatabaseRefreshCollStmt() *AlterDatabaseRefreshCollStmt { + if x, ok := x.GetNode().(*Node_AlterDatabaseRefreshCollStmt); ok { + return x.AlterDatabaseRefreshCollStmt } return nil } -func (x *Node) GetObjectWithArgs() *ObjectWithArgs { - if x, ok := x.GetNode().(*Node_ObjectWithArgs); ok { - return x.ObjectWithArgs +func (x *Node) GetAlterDatabaseSetStmt() *AlterDatabaseSetStmt { + if x, ok := x.GetNode().(*Node_AlterDatabaseSetStmt); ok { + return x.AlterDatabaseSetStmt } return nil } -func (x *Node) GetAccessPriv() *AccessPriv { - if x, ok := x.GetNode().(*Node_AccessPriv); ok { - return x.AccessPriv +func (x *Node) GetDropdbStmt() *DropdbStmt { + if x, ok := x.GetNode().(*Node_DropdbStmt); ok { + return x.DropdbStmt } return nil } -func (x *Node) GetCreateOpClassItem() *CreateOpClassItem { - if x, ok := x.GetNode().(*Node_CreateOpClassItem); ok { - return x.CreateOpClassItem +func (x *Node) GetAlterSystemStmt() *AlterSystemStmt { + if x, ok := x.GetNode().(*Node_AlterSystemStmt); ok { + return x.AlterSystemStmt } return nil } -func (x *Node) GetTableLikeClause() *TableLikeClause { - if x, ok := x.GetNode().(*Node_TableLikeClause); ok { - return x.TableLikeClause +func (x *Node) GetClusterStmt() *ClusterStmt { + if x, ok := x.GetNode().(*Node_ClusterStmt); ok { + return x.ClusterStmt } return nil } -func (x *Node) GetFunctionParameter() *FunctionParameter { - if x, ok := x.GetNode().(*Node_FunctionParameter); ok { - return x.FunctionParameter +func (x *Node) GetVacuumStmt() *VacuumStmt { + if x, ok := x.GetNode().(*Node_VacuumStmt); ok { + return x.VacuumStmt } return nil } -func (x *Node) GetLockingClause() *LockingClause { - if x, ok := x.GetNode().(*Node_LockingClause); ok { - return x.LockingClause +func (x *Node) GetVacuumRelation() *VacuumRelation { + if x, ok := x.GetNode().(*Node_VacuumRelation); ok { + return x.VacuumRelation } return nil } -func (x *Node) GetRowMarkClause() *RowMarkClause { - if x, ok := x.GetNode().(*Node_RowMarkClause); ok { - return x.RowMarkClause +func (x *Node) GetExplainStmt() *ExplainStmt { + if x, ok := x.GetNode().(*Node_ExplainStmt); ok { + return x.ExplainStmt } return nil } -func (x *Node) GetXmlSerialize() *XmlSerialize { - if x, ok := x.GetNode().(*Node_XmlSerialize); ok { - return x.XmlSerialize +func (x *Node) GetCreateTableAsStmt() *CreateTableAsStmt { + if x, ok := x.GetNode().(*Node_CreateTableAsStmt); ok { + return x.CreateTableAsStmt } return nil } -func (x *Node) GetWithClause() *WithClause { - if x, ok := x.GetNode().(*Node_WithClause); ok { - return x.WithClause +func (x *Node) GetRefreshMatViewStmt() *RefreshMatViewStmt { + if x, ok := x.GetNode().(*Node_RefreshMatViewStmt); ok { + return x.RefreshMatViewStmt } return nil } -func (x *Node) GetInferClause() *InferClause { - if x, ok := x.GetNode().(*Node_InferClause); ok { - return x.InferClause +func (x *Node) GetCheckPointStmt() *CheckPointStmt { + if x, ok := x.GetNode().(*Node_CheckPointStmt); ok { + return x.CheckPointStmt } return nil } -func (x *Node) GetOnConflictClause() *OnConflictClause { - if x, ok := x.GetNode().(*Node_OnConflictClause); ok { - return x.OnConflictClause +func (x *Node) GetDiscardStmt() *DiscardStmt { + if x, ok := x.GetNode().(*Node_DiscardStmt); ok { + return x.DiscardStmt } return nil } -func (x *Node) GetCtesearchClause() *CTESearchClause { - if x, ok := x.GetNode().(*Node_CtesearchClause); ok { - return x.CtesearchClause +func (x *Node) GetLockStmt() *LockStmt { + if x, ok := x.GetNode().(*Node_LockStmt); ok { + return x.LockStmt } return nil } -func (x *Node) GetCtecycleClause() *CTECycleClause { - if x, ok := x.GetNode().(*Node_CtecycleClause); ok { - return x.CtecycleClause +func (x *Node) GetConstraintsSetStmt() *ConstraintsSetStmt { + if x, ok := x.GetNode().(*Node_ConstraintsSetStmt); ok { + return x.ConstraintsSetStmt } return nil } -func (x *Node) GetCommonTableExpr() *CommonTableExpr { - if x, ok := x.GetNode().(*Node_CommonTableExpr); ok { - return x.CommonTableExpr +func (x *Node) GetReindexStmt() *ReindexStmt { + if x, ok := x.GetNode().(*Node_ReindexStmt); ok { + return x.ReindexStmt } return nil } -func (x *Node) GetMergeWhenClause() *MergeWhenClause { - if x, ok := x.GetNode().(*Node_MergeWhenClause); ok { - return x.MergeWhenClause +func (x *Node) GetCreateConversionStmt() *CreateConversionStmt { + if x, ok := x.GetNode().(*Node_CreateConversionStmt); ok { + return x.CreateConversionStmt } return nil } -func (x *Node) GetRoleSpec() *RoleSpec { - if x, ok := x.GetNode().(*Node_RoleSpec); ok { - return x.RoleSpec +func (x *Node) GetCreateCastStmt() *CreateCastStmt { + if x, ok := x.GetNode().(*Node_CreateCastStmt); ok { + return x.CreateCastStmt } return nil } -func (x *Node) GetTriggerTransition() *TriggerTransition { - if x, ok := x.GetNode().(*Node_TriggerTransition); ok { - return x.TriggerTransition +func (x *Node) GetCreateTransformStmt() *CreateTransformStmt { + if x, ok := x.GetNode().(*Node_CreateTransformStmt); ok { + return x.CreateTransformStmt } return nil } -func (x *Node) GetPartitionElem() *PartitionElem { - if x, ok := x.GetNode().(*Node_PartitionElem); ok { - return x.PartitionElem +func (x *Node) GetPrepareStmt() *PrepareStmt { + if x, ok := x.GetNode().(*Node_PrepareStmt); ok { + return x.PrepareStmt } return nil } -func (x *Node) GetPartitionSpec() *PartitionSpec { - if x, ok := x.GetNode().(*Node_PartitionSpec); ok { - return x.PartitionSpec +func (x *Node) GetExecuteStmt() *ExecuteStmt { + if x, ok := x.GetNode().(*Node_ExecuteStmt); ok { + return x.ExecuteStmt } return nil } -func (x *Node) GetPartitionBoundSpec() *PartitionBoundSpec { - if x, ok := x.GetNode().(*Node_PartitionBoundSpec); ok { - return x.PartitionBoundSpec +func (x *Node) GetDeallocateStmt() *DeallocateStmt { + if x, ok := x.GetNode().(*Node_DeallocateStmt); ok { + return x.DeallocateStmt } return nil } -func (x *Node) GetPartitionRangeDatum() *PartitionRangeDatum { - if x, ok := x.GetNode().(*Node_PartitionRangeDatum); ok { - return x.PartitionRangeDatum +func (x *Node) GetDropOwnedStmt() *DropOwnedStmt { + if x, ok := x.GetNode().(*Node_DropOwnedStmt); ok { + return x.DropOwnedStmt } return nil } -func (x *Node) GetPartitionCmd() *PartitionCmd { - if x, ok := x.GetNode().(*Node_PartitionCmd); ok { - return x.PartitionCmd +func (x *Node) GetReassignOwnedStmt() *ReassignOwnedStmt { + if x, ok := x.GetNode().(*Node_ReassignOwnedStmt); ok { + return x.ReassignOwnedStmt } return nil } -func (x *Node) GetVacuumRelation() *VacuumRelation { - if x, ok := x.GetNode().(*Node_VacuumRelation); ok { - return x.VacuumRelation +func (x *Node) GetAlterTsdictionaryStmt() *AlterTSDictionaryStmt { + if x, ok := x.GetNode().(*Node_AlterTsdictionaryStmt); ok { + return x.AlterTsdictionaryStmt } return nil } -func (x *Node) GetPublicationObjSpec() *PublicationObjSpec { - if x, ok := x.GetNode().(*Node_PublicationObjSpec); ok { - return x.PublicationObjSpec +func (x *Node) GetAlterTsconfigurationStmt() *AlterTSConfigurationStmt { + if x, ok := x.GetNode().(*Node_AlterTsconfigurationStmt); ok { + return x.AlterTsconfigurationStmt } return nil } @@ -7288,46 +7671,74 @@ func (x *Node) GetPublicationTable() *PublicationTable { return nil } -func (x *Node) GetInlineCodeBlock() *InlineCodeBlock { - if x, ok := x.GetNode().(*Node_InlineCodeBlock); ok { - return x.InlineCodeBlock +func (x *Node) GetPublicationObjSpec() *PublicationObjSpec { + if x, ok := x.GetNode().(*Node_PublicationObjSpec); ok { + return x.PublicationObjSpec } return nil } -func (x *Node) GetCallContext() *CallContext { - if x, ok := x.GetNode().(*Node_CallContext); ok { - return x.CallContext +func (x *Node) GetCreatePublicationStmt() *CreatePublicationStmt { + if x, ok := x.GetNode().(*Node_CreatePublicationStmt); ok { + return x.CreatePublicationStmt } return nil } -func (x *Node) GetInteger() *Integer { - if x, ok := x.GetNode().(*Node_Integer); ok { - return x.Integer +func (x *Node) GetAlterPublicationStmt() *AlterPublicationStmt { + if x, ok := x.GetNode().(*Node_AlterPublicationStmt); ok { + return x.AlterPublicationStmt } return nil } -func (x *Node) GetFloat() *Float { - if x, ok := x.GetNode().(*Node_Float); ok { - return x.Float +func (x *Node) GetCreateSubscriptionStmt() *CreateSubscriptionStmt { + if x, ok := x.GetNode().(*Node_CreateSubscriptionStmt); ok { + return x.CreateSubscriptionStmt } return nil } -func (x *Node) GetBoolean() *Boolean { - if x, ok := x.GetNode().(*Node_Boolean); ok { - return x.Boolean +func (x *Node) GetAlterSubscriptionStmt() *AlterSubscriptionStmt { + if x, ok := x.GetNode().(*Node_AlterSubscriptionStmt); ok { + return x.AlterSubscriptionStmt } return nil } -func (x *Node) GetString_() *String { - if x, ok := x.GetNode().(*Node_String_); ok { - return x.String_ - } - return nil +func (x *Node) GetDropSubscriptionStmt() *DropSubscriptionStmt { + if x, ok := x.GetNode().(*Node_DropSubscriptionStmt); ok { + return x.DropSubscriptionStmt + } + return nil +} + +func (x *Node) GetInteger() *Integer { + if x, ok := x.GetNode().(*Node_Integer); ok { + return x.Integer + } + return nil +} + +func (x *Node) GetFloat() *Float { + if x, ok := x.GetNode().(*Node_Float); ok { + return x.Float + } + return nil +} + +func (x *Node) GetBoolean() *Boolean { + if x, ok := x.GetNode().(*Node_Boolean); ok { + return x.Boolean + } + return nil +} + +func (x *Node) GetString_() *String { + if x, ok := x.GetNode().(*Node_String_); ok { + return x.String_ + } + return nil } func (x *Node) GetBitString() *BitString { @@ -7381,944 +7792,1000 @@ type Node_TableFunc struct { TableFunc *TableFunc `protobuf:"bytes,3,opt,name=table_func,json=TableFunc,proto3,oneof"` } +type Node_IntoClause struct { + IntoClause *IntoClause `protobuf:"bytes,4,opt,name=into_clause,json=IntoClause,proto3,oneof"` +} + type Node_Var struct { - Var *Var `protobuf:"bytes,4,opt,name=var,json=Var,proto3,oneof"` + Var *Var `protobuf:"bytes,5,opt,name=var,json=Var,proto3,oneof"` } type Node_Param struct { - Param *Param `protobuf:"bytes,5,opt,name=param,json=Param,proto3,oneof"` + Param *Param `protobuf:"bytes,6,opt,name=param,json=Param,proto3,oneof"` } type Node_Aggref struct { - Aggref *Aggref `protobuf:"bytes,6,opt,name=aggref,json=Aggref,proto3,oneof"` + Aggref *Aggref `protobuf:"bytes,7,opt,name=aggref,json=Aggref,proto3,oneof"` } type Node_GroupingFunc struct { - GroupingFunc *GroupingFunc `protobuf:"bytes,7,opt,name=grouping_func,json=GroupingFunc,proto3,oneof"` + GroupingFunc *GroupingFunc `protobuf:"bytes,8,opt,name=grouping_func,json=GroupingFunc,proto3,oneof"` } type Node_WindowFunc struct { - WindowFunc *WindowFunc `protobuf:"bytes,8,opt,name=window_func,json=WindowFunc,proto3,oneof"` + WindowFunc *WindowFunc `protobuf:"bytes,9,opt,name=window_func,json=WindowFunc,proto3,oneof"` } type Node_SubscriptingRef struct { - SubscriptingRef *SubscriptingRef `protobuf:"bytes,9,opt,name=subscripting_ref,json=SubscriptingRef,proto3,oneof"` + SubscriptingRef *SubscriptingRef `protobuf:"bytes,10,opt,name=subscripting_ref,json=SubscriptingRef,proto3,oneof"` } type Node_FuncExpr struct { - FuncExpr *FuncExpr `protobuf:"bytes,10,opt,name=func_expr,json=FuncExpr,proto3,oneof"` + FuncExpr *FuncExpr `protobuf:"bytes,11,opt,name=func_expr,json=FuncExpr,proto3,oneof"` } type Node_NamedArgExpr struct { - NamedArgExpr *NamedArgExpr `protobuf:"bytes,11,opt,name=named_arg_expr,json=NamedArgExpr,proto3,oneof"` + NamedArgExpr *NamedArgExpr `protobuf:"bytes,12,opt,name=named_arg_expr,json=NamedArgExpr,proto3,oneof"` } type Node_OpExpr struct { - OpExpr *OpExpr `protobuf:"bytes,12,opt,name=op_expr,json=OpExpr,proto3,oneof"` + OpExpr *OpExpr `protobuf:"bytes,13,opt,name=op_expr,json=OpExpr,proto3,oneof"` } type Node_DistinctExpr struct { - DistinctExpr *DistinctExpr `protobuf:"bytes,13,opt,name=distinct_expr,json=DistinctExpr,proto3,oneof"` + DistinctExpr *DistinctExpr `protobuf:"bytes,14,opt,name=distinct_expr,json=DistinctExpr,proto3,oneof"` } type Node_NullIfExpr struct { - NullIfExpr *NullIfExpr `protobuf:"bytes,14,opt,name=null_if_expr,json=NullIfExpr,proto3,oneof"` + NullIfExpr *NullIfExpr `protobuf:"bytes,15,opt,name=null_if_expr,json=NullIfExpr,proto3,oneof"` } type Node_ScalarArrayOpExpr struct { - ScalarArrayOpExpr *ScalarArrayOpExpr `protobuf:"bytes,15,opt,name=scalar_array_op_expr,json=ScalarArrayOpExpr,proto3,oneof"` + ScalarArrayOpExpr *ScalarArrayOpExpr `protobuf:"bytes,16,opt,name=scalar_array_op_expr,json=ScalarArrayOpExpr,proto3,oneof"` } type Node_BoolExpr struct { - BoolExpr *BoolExpr `protobuf:"bytes,16,opt,name=bool_expr,json=BoolExpr,proto3,oneof"` + BoolExpr *BoolExpr `protobuf:"bytes,17,opt,name=bool_expr,json=BoolExpr,proto3,oneof"` } type Node_SubLink struct { - SubLink *SubLink `protobuf:"bytes,17,opt,name=sub_link,json=SubLink,proto3,oneof"` + SubLink *SubLink `protobuf:"bytes,18,opt,name=sub_link,json=SubLink,proto3,oneof"` } type Node_SubPlan struct { - SubPlan *SubPlan `protobuf:"bytes,18,opt,name=sub_plan,json=SubPlan,proto3,oneof"` + SubPlan *SubPlan `protobuf:"bytes,19,opt,name=sub_plan,json=SubPlan,proto3,oneof"` } type Node_AlternativeSubPlan struct { - AlternativeSubPlan *AlternativeSubPlan `protobuf:"bytes,19,opt,name=alternative_sub_plan,json=AlternativeSubPlan,proto3,oneof"` + AlternativeSubPlan *AlternativeSubPlan `protobuf:"bytes,20,opt,name=alternative_sub_plan,json=AlternativeSubPlan,proto3,oneof"` } type Node_FieldSelect struct { - FieldSelect *FieldSelect `protobuf:"bytes,20,opt,name=field_select,json=FieldSelect,proto3,oneof"` + FieldSelect *FieldSelect `protobuf:"bytes,21,opt,name=field_select,json=FieldSelect,proto3,oneof"` } type Node_FieldStore struct { - FieldStore *FieldStore `protobuf:"bytes,21,opt,name=field_store,json=FieldStore,proto3,oneof"` + FieldStore *FieldStore `protobuf:"bytes,22,opt,name=field_store,json=FieldStore,proto3,oneof"` } type Node_RelabelType struct { - RelabelType *RelabelType `protobuf:"bytes,22,opt,name=relabel_type,json=RelabelType,proto3,oneof"` + RelabelType *RelabelType `protobuf:"bytes,23,opt,name=relabel_type,json=RelabelType,proto3,oneof"` } type Node_CoerceViaIo struct { - CoerceViaIo *CoerceViaIO `protobuf:"bytes,23,opt,name=coerce_via_io,json=CoerceViaIO,proto3,oneof"` + CoerceViaIo *CoerceViaIO `protobuf:"bytes,24,opt,name=coerce_via_io,json=CoerceViaIO,proto3,oneof"` } type Node_ArrayCoerceExpr struct { - ArrayCoerceExpr *ArrayCoerceExpr `protobuf:"bytes,24,opt,name=array_coerce_expr,json=ArrayCoerceExpr,proto3,oneof"` + ArrayCoerceExpr *ArrayCoerceExpr `protobuf:"bytes,25,opt,name=array_coerce_expr,json=ArrayCoerceExpr,proto3,oneof"` } type Node_ConvertRowtypeExpr struct { - ConvertRowtypeExpr *ConvertRowtypeExpr `protobuf:"bytes,25,opt,name=convert_rowtype_expr,json=ConvertRowtypeExpr,proto3,oneof"` + ConvertRowtypeExpr *ConvertRowtypeExpr `protobuf:"bytes,26,opt,name=convert_rowtype_expr,json=ConvertRowtypeExpr,proto3,oneof"` } type Node_CollateExpr struct { - CollateExpr *CollateExpr `protobuf:"bytes,26,opt,name=collate_expr,json=CollateExpr,proto3,oneof"` + CollateExpr *CollateExpr `protobuf:"bytes,27,opt,name=collate_expr,json=CollateExpr,proto3,oneof"` } type Node_CaseExpr struct { - CaseExpr *CaseExpr `protobuf:"bytes,27,opt,name=case_expr,json=CaseExpr,proto3,oneof"` + CaseExpr *CaseExpr `protobuf:"bytes,28,opt,name=case_expr,json=CaseExpr,proto3,oneof"` } type Node_CaseWhen struct { - CaseWhen *CaseWhen `protobuf:"bytes,28,opt,name=case_when,json=CaseWhen,proto3,oneof"` + CaseWhen *CaseWhen `protobuf:"bytes,29,opt,name=case_when,json=CaseWhen,proto3,oneof"` } type Node_CaseTestExpr struct { - CaseTestExpr *CaseTestExpr `protobuf:"bytes,29,opt,name=case_test_expr,json=CaseTestExpr,proto3,oneof"` + CaseTestExpr *CaseTestExpr `protobuf:"bytes,30,opt,name=case_test_expr,json=CaseTestExpr,proto3,oneof"` } type Node_ArrayExpr struct { - ArrayExpr *ArrayExpr `protobuf:"bytes,30,opt,name=array_expr,json=ArrayExpr,proto3,oneof"` + ArrayExpr *ArrayExpr `protobuf:"bytes,31,opt,name=array_expr,json=ArrayExpr,proto3,oneof"` } type Node_RowExpr struct { - RowExpr *RowExpr `protobuf:"bytes,31,opt,name=row_expr,json=RowExpr,proto3,oneof"` + RowExpr *RowExpr `protobuf:"bytes,32,opt,name=row_expr,json=RowExpr,proto3,oneof"` } type Node_RowCompareExpr struct { - RowCompareExpr *RowCompareExpr `protobuf:"bytes,32,opt,name=row_compare_expr,json=RowCompareExpr,proto3,oneof"` + RowCompareExpr *RowCompareExpr `protobuf:"bytes,33,opt,name=row_compare_expr,json=RowCompareExpr,proto3,oneof"` } type Node_CoalesceExpr struct { - CoalesceExpr *CoalesceExpr `protobuf:"bytes,33,opt,name=coalesce_expr,json=CoalesceExpr,proto3,oneof"` + CoalesceExpr *CoalesceExpr `protobuf:"bytes,34,opt,name=coalesce_expr,json=CoalesceExpr,proto3,oneof"` } type Node_MinMaxExpr struct { - MinMaxExpr *MinMaxExpr `protobuf:"bytes,34,opt,name=min_max_expr,json=MinMaxExpr,proto3,oneof"` + MinMaxExpr *MinMaxExpr `protobuf:"bytes,35,opt,name=min_max_expr,json=MinMaxExpr,proto3,oneof"` } type Node_SqlvalueFunction struct { - SqlvalueFunction *SQLValueFunction `protobuf:"bytes,35,opt,name=sqlvalue_function,json=SQLValueFunction,proto3,oneof"` + SqlvalueFunction *SQLValueFunction `protobuf:"bytes,36,opt,name=sqlvalue_function,json=SQLValueFunction,proto3,oneof"` } type Node_XmlExpr struct { - XmlExpr *XmlExpr `protobuf:"bytes,36,opt,name=xml_expr,json=XmlExpr,proto3,oneof"` + XmlExpr *XmlExpr `protobuf:"bytes,37,opt,name=xml_expr,json=XmlExpr,proto3,oneof"` +} + +type Node_JsonFormat struct { + JsonFormat *JsonFormat `protobuf:"bytes,38,opt,name=json_format,json=JsonFormat,proto3,oneof"` +} + +type Node_JsonReturning struct { + JsonReturning *JsonReturning `protobuf:"bytes,39,opt,name=json_returning,json=JsonReturning,proto3,oneof"` +} + +type Node_JsonValueExpr struct { + JsonValueExpr *JsonValueExpr `protobuf:"bytes,40,opt,name=json_value_expr,json=JsonValueExpr,proto3,oneof"` +} + +type Node_JsonConstructorExpr struct { + JsonConstructorExpr *JsonConstructorExpr `protobuf:"bytes,41,opt,name=json_constructor_expr,json=JsonConstructorExpr,proto3,oneof"` +} + +type Node_JsonIsPredicate struct { + JsonIsPredicate *JsonIsPredicate `protobuf:"bytes,42,opt,name=json_is_predicate,json=JsonIsPredicate,proto3,oneof"` } type Node_NullTest struct { - NullTest *NullTest `protobuf:"bytes,37,opt,name=null_test,json=NullTest,proto3,oneof"` + NullTest *NullTest `protobuf:"bytes,43,opt,name=null_test,json=NullTest,proto3,oneof"` } type Node_BooleanTest struct { - BooleanTest *BooleanTest `protobuf:"bytes,38,opt,name=boolean_test,json=BooleanTest,proto3,oneof"` + BooleanTest *BooleanTest `protobuf:"bytes,44,opt,name=boolean_test,json=BooleanTest,proto3,oneof"` } type Node_CoerceToDomain struct { - CoerceToDomain *CoerceToDomain `protobuf:"bytes,39,opt,name=coerce_to_domain,json=CoerceToDomain,proto3,oneof"` + CoerceToDomain *CoerceToDomain `protobuf:"bytes,45,opt,name=coerce_to_domain,json=CoerceToDomain,proto3,oneof"` } type Node_CoerceToDomainValue struct { - CoerceToDomainValue *CoerceToDomainValue `protobuf:"bytes,40,opt,name=coerce_to_domain_value,json=CoerceToDomainValue,proto3,oneof"` + CoerceToDomainValue *CoerceToDomainValue `protobuf:"bytes,46,opt,name=coerce_to_domain_value,json=CoerceToDomainValue,proto3,oneof"` } type Node_SetToDefault struct { - SetToDefault *SetToDefault `protobuf:"bytes,41,opt,name=set_to_default,json=SetToDefault,proto3,oneof"` + SetToDefault *SetToDefault `protobuf:"bytes,47,opt,name=set_to_default,json=SetToDefault,proto3,oneof"` } type Node_CurrentOfExpr struct { - CurrentOfExpr *CurrentOfExpr `protobuf:"bytes,42,opt,name=current_of_expr,json=CurrentOfExpr,proto3,oneof"` + CurrentOfExpr *CurrentOfExpr `protobuf:"bytes,48,opt,name=current_of_expr,json=CurrentOfExpr,proto3,oneof"` } type Node_NextValueExpr struct { - NextValueExpr *NextValueExpr `protobuf:"bytes,43,opt,name=next_value_expr,json=NextValueExpr,proto3,oneof"` + NextValueExpr *NextValueExpr `protobuf:"bytes,49,opt,name=next_value_expr,json=NextValueExpr,proto3,oneof"` } type Node_InferenceElem struct { - InferenceElem *InferenceElem `protobuf:"bytes,44,opt,name=inference_elem,json=InferenceElem,proto3,oneof"` + InferenceElem *InferenceElem `protobuf:"bytes,50,opt,name=inference_elem,json=InferenceElem,proto3,oneof"` } type Node_TargetEntry struct { - TargetEntry *TargetEntry `protobuf:"bytes,45,opt,name=target_entry,json=TargetEntry,proto3,oneof"` + TargetEntry *TargetEntry `protobuf:"bytes,51,opt,name=target_entry,json=TargetEntry,proto3,oneof"` } type Node_RangeTblRef struct { - RangeTblRef *RangeTblRef `protobuf:"bytes,46,opt,name=range_tbl_ref,json=RangeTblRef,proto3,oneof"` + RangeTblRef *RangeTblRef `protobuf:"bytes,52,opt,name=range_tbl_ref,json=RangeTblRef,proto3,oneof"` } type Node_JoinExpr struct { - JoinExpr *JoinExpr `protobuf:"bytes,47,opt,name=join_expr,json=JoinExpr,proto3,oneof"` + JoinExpr *JoinExpr `protobuf:"bytes,53,opt,name=join_expr,json=JoinExpr,proto3,oneof"` } type Node_FromExpr struct { - FromExpr *FromExpr `protobuf:"bytes,48,opt,name=from_expr,json=FromExpr,proto3,oneof"` + FromExpr *FromExpr `protobuf:"bytes,54,opt,name=from_expr,json=FromExpr,proto3,oneof"` } type Node_OnConflictExpr struct { - OnConflictExpr *OnConflictExpr `protobuf:"bytes,49,opt,name=on_conflict_expr,json=OnConflictExpr,proto3,oneof"` + OnConflictExpr *OnConflictExpr `protobuf:"bytes,55,opt,name=on_conflict_expr,json=OnConflictExpr,proto3,oneof"` } -type Node_IntoClause struct { - IntoClause *IntoClause `protobuf:"bytes,50,opt,name=into_clause,json=IntoClause,proto3,oneof"` +type Node_Query struct { + Query *Query `protobuf:"bytes,56,opt,name=query,json=Query,proto3,oneof"` } -type Node_MergeAction struct { - MergeAction *MergeAction `protobuf:"bytes,51,opt,name=merge_action,json=MergeAction,proto3,oneof"` +type Node_TypeName struct { + TypeName *TypeName `protobuf:"bytes,57,opt,name=type_name,json=TypeName,proto3,oneof"` } -type Node_RawStmt struct { - RawStmt *RawStmt `protobuf:"bytes,52,opt,name=raw_stmt,json=RawStmt,proto3,oneof"` +type Node_ColumnRef struct { + ColumnRef *ColumnRef `protobuf:"bytes,58,opt,name=column_ref,json=ColumnRef,proto3,oneof"` } -type Node_Query struct { - Query *Query `protobuf:"bytes,53,opt,name=query,json=Query,proto3,oneof"` +type Node_ParamRef struct { + ParamRef *ParamRef `protobuf:"bytes,59,opt,name=param_ref,json=ParamRef,proto3,oneof"` } -type Node_InsertStmt struct { - InsertStmt *InsertStmt `protobuf:"bytes,54,opt,name=insert_stmt,json=InsertStmt,proto3,oneof"` +type Node_AExpr struct { + AExpr *A_Expr `protobuf:"bytes,60,opt,name=a_expr,json=A_Expr,proto3,oneof"` } -type Node_DeleteStmt struct { - DeleteStmt *DeleteStmt `protobuf:"bytes,55,opt,name=delete_stmt,json=DeleteStmt,proto3,oneof"` +type Node_TypeCast struct { + TypeCast *TypeCast `protobuf:"bytes,61,opt,name=type_cast,json=TypeCast,proto3,oneof"` } -type Node_UpdateStmt struct { - UpdateStmt *UpdateStmt `protobuf:"bytes,56,opt,name=update_stmt,json=UpdateStmt,proto3,oneof"` +type Node_CollateClause struct { + CollateClause *CollateClause `protobuf:"bytes,62,opt,name=collate_clause,json=CollateClause,proto3,oneof"` } -type Node_MergeStmt struct { - MergeStmt *MergeStmt `protobuf:"bytes,57,opt,name=merge_stmt,json=MergeStmt,proto3,oneof"` +type Node_RoleSpec struct { + RoleSpec *RoleSpec `protobuf:"bytes,63,opt,name=role_spec,json=RoleSpec,proto3,oneof"` } -type Node_SelectStmt struct { - SelectStmt *SelectStmt `protobuf:"bytes,58,opt,name=select_stmt,json=SelectStmt,proto3,oneof"` +type Node_FuncCall struct { + FuncCall *FuncCall `protobuf:"bytes,64,opt,name=func_call,json=FuncCall,proto3,oneof"` } -type Node_ReturnStmt struct { - ReturnStmt *ReturnStmt `protobuf:"bytes,59,opt,name=return_stmt,json=ReturnStmt,proto3,oneof"` +type Node_AStar struct { + AStar *A_Star `protobuf:"bytes,65,opt,name=a_star,json=A_Star,proto3,oneof"` } -type Node_PlassignStmt struct { - PlassignStmt *PLAssignStmt `protobuf:"bytes,60,opt,name=plassign_stmt,json=PLAssignStmt,proto3,oneof"` +type Node_AIndices struct { + AIndices *A_Indices `protobuf:"bytes,66,opt,name=a_indices,json=A_Indices,proto3,oneof"` } -type Node_AlterTableStmt struct { - AlterTableStmt *AlterTableStmt `protobuf:"bytes,61,opt,name=alter_table_stmt,json=AlterTableStmt,proto3,oneof"` +type Node_AIndirection struct { + AIndirection *A_Indirection `protobuf:"bytes,67,opt,name=a_indirection,json=A_Indirection,proto3,oneof"` } -type Node_AlterTableCmd struct { - AlterTableCmd *AlterTableCmd `protobuf:"bytes,62,opt,name=alter_table_cmd,json=AlterTableCmd,proto3,oneof"` +type Node_AArrayExpr struct { + AArrayExpr *A_ArrayExpr `protobuf:"bytes,68,opt,name=a_array_expr,json=A_ArrayExpr,proto3,oneof"` } -type Node_AlterDomainStmt struct { - AlterDomainStmt *AlterDomainStmt `protobuf:"bytes,63,opt,name=alter_domain_stmt,json=AlterDomainStmt,proto3,oneof"` +type Node_ResTarget struct { + ResTarget *ResTarget `protobuf:"bytes,69,opt,name=res_target,json=ResTarget,proto3,oneof"` } -type Node_SetOperationStmt struct { - SetOperationStmt *SetOperationStmt `protobuf:"bytes,64,opt,name=set_operation_stmt,json=SetOperationStmt,proto3,oneof"` +type Node_MultiAssignRef struct { + MultiAssignRef *MultiAssignRef `protobuf:"bytes,70,opt,name=multi_assign_ref,json=MultiAssignRef,proto3,oneof"` } -type Node_GrantStmt struct { - GrantStmt *GrantStmt `protobuf:"bytes,65,opt,name=grant_stmt,json=GrantStmt,proto3,oneof"` +type Node_SortBy struct { + SortBy *SortBy `protobuf:"bytes,71,opt,name=sort_by,json=SortBy,proto3,oneof"` } -type Node_GrantRoleStmt struct { - GrantRoleStmt *GrantRoleStmt `protobuf:"bytes,66,opt,name=grant_role_stmt,json=GrantRoleStmt,proto3,oneof"` +type Node_WindowDef struct { + WindowDef *WindowDef `protobuf:"bytes,72,opt,name=window_def,json=WindowDef,proto3,oneof"` } -type Node_AlterDefaultPrivilegesStmt struct { - AlterDefaultPrivilegesStmt *AlterDefaultPrivilegesStmt `protobuf:"bytes,67,opt,name=alter_default_privileges_stmt,json=AlterDefaultPrivilegesStmt,proto3,oneof"` +type Node_RangeSubselect struct { + RangeSubselect *RangeSubselect `protobuf:"bytes,73,opt,name=range_subselect,json=RangeSubselect,proto3,oneof"` } -type Node_ClosePortalStmt struct { - ClosePortalStmt *ClosePortalStmt `protobuf:"bytes,68,opt,name=close_portal_stmt,json=ClosePortalStmt,proto3,oneof"` +type Node_RangeFunction struct { + RangeFunction *RangeFunction `protobuf:"bytes,74,opt,name=range_function,json=RangeFunction,proto3,oneof"` } -type Node_ClusterStmt struct { - ClusterStmt *ClusterStmt `protobuf:"bytes,69,opt,name=cluster_stmt,json=ClusterStmt,proto3,oneof"` +type Node_RangeTableFunc struct { + RangeTableFunc *RangeTableFunc `protobuf:"bytes,75,opt,name=range_table_func,json=RangeTableFunc,proto3,oneof"` } -type Node_CopyStmt struct { - CopyStmt *CopyStmt `protobuf:"bytes,70,opt,name=copy_stmt,json=CopyStmt,proto3,oneof"` +type Node_RangeTableFuncCol struct { + RangeTableFuncCol *RangeTableFuncCol `protobuf:"bytes,76,opt,name=range_table_func_col,json=RangeTableFuncCol,proto3,oneof"` } -type Node_CreateStmt struct { - CreateStmt *CreateStmt `protobuf:"bytes,71,opt,name=create_stmt,json=CreateStmt,proto3,oneof"` +type Node_RangeTableSample struct { + RangeTableSample *RangeTableSample `protobuf:"bytes,77,opt,name=range_table_sample,json=RangeTableSample,proto3,oneof"` } -type Node_DefineStmt struct { - DefineStmt *DefineStmt `protobuf:"bytes,72,opt,name=define_stmt,json=DefineStmt,proto3,oneof"` +type Node_ColumnDef struct { + ColumnDef *ColumnDef `protobuf:"bytes,78,opt,name=column_def,json=ColumnDef,proto3,oneof"` } -type Node_DropStmt struct { - DropStmt *DropStmt `protobuf:"bytes,73,opt,name=drop_stmt,json=DropStmt,proto3,oneof"` +type Node_TableLikeClause struct { + TableLikeClause *TableLikeClause `protobuf:"bytes,79,opt,name=table_like_clause,json=TableLikeClause,proto3,oneof"` } -type Node_TruncateStmt struct { - TruncateStmt *TruncateStmt `protobuf:"bytes,74,opt,name=truncate_stmt,json=TruncateStmt,proto3,oneof"` +type Node_IndexElem struct { + IndexElem *IndexElem `protobuf:"bytes,80,opt,name=index_elem,json=IndexElem,proto3,oneof"` } -type Node_CommentStmt struct { - CommentStmt *CommentStmt `protobuf:"bytes,75,opt,name=comment_stmt,json=CommentStmt,proto3,oneof"` +type Node_DefElem struct { + DefElem *DefElem `protobuf:"bytes,81,opt,name=def_elem,json=DefElem,proto3,oneof"` } -type Node_FetchStmt struct { - FetchStmt *FetchStmt `protobuf:"bytes,76,opt,name=fetch_stmt,json=FetchStmt,proto3,oneof"` +type Node_LockingClause struct { + LockingClause *LockingClause `protobuf:"bytes,82,opt,name=locking_clause,json=LockingClause,proto3,oneof"` } -type Node_IndexStmt struct { - IndexStmt *IndexStmt `protobuf:"bytes,77,opt,name=index_stmt,json=IndexStmt,proto3,oneof"` +type Node_XmlSerialize struct { + XmlSerialize *XmlSerialize `protobuf:"bytes,83,opt,name=xml_serialize,json=XmlSerialize,proto3,oneof"` } -type Node_CreateFunctionStmt struct { - CreateFunctionStmt *CreateFunctionStmt `protobuf:"bytes,78,opt,name=create_function_stmt,json=CreateFunctionStmt,proto3,oneof"` +type Node_PartitionElem struct { + PartitionElem *PartitionElem `protobuf:"bytes,84,opt,name=partition_elem,json=PartitionElem,proto3,oneof"` } -type Node_AlterFunctionStmt struct { - AlterFunctionStmt *AlterFunctionStmt `protobuf:"bytes,79,opt,name=alter_function_stmt,json=AlterFunctionStmt,proto3,oneof"` +type Node_PartitionSpec struct { + PartitionSpec *PartitionSpec `protobuf:"bytes,85,opt,name=partition_spec,json=PartitionSpec,proto3,oneof"` } -type Node_DoStmt struct { - DoStmt *DoStmt `protobuf:"bytes,80,opt,name=do_stmt,json=DoStmt,proto3,oneof"` +type Node_PartitionBoundSpec struct { + PartitionBoundSpec *PartitionBoundSpec `protobuf:"bytes,86,opt,name=partition_bound_spec,json=PartitionBoundSpec,proto3,oneof"` } -type Node_RenameStmt struct { - RenameStmt *RenameStmt `protobuf:"bytes,81,opt,name=rename_stmt,json=RenameStmt,proto3,oneof"` +type Node_PartitionRangeDatum struct { + PartitionRangeDatum *PartitionRangeDatum `protobuf:"bytes,87,opt,name=partition_range_datum,json=PartitionRangeDatum,proto3,oneof"` } -type Node_RuleStmt struct { - RuleStmt *RuleStmt `protobuf:"bytes,82,opt,name=rule_stmt,json=RuleStmt,proto3,oneof"` +type Node_PartitionCmd struct { + PartitionCmd *PartitionCmd `protobuf:"bytes,88,opt,name=partition_cmd,json=PartitionCmd,proto3,oneof"` } -type Node_NotifyStmt struct { - NotifyStmt *NotifyStmt `protobuf:"bytes,83,opt,name=notify_stmt,json=NotifyStmt,proto3,oneof"` +type Node_RangeTblEntry struct { + RangeTblEntry *RangeTblEntry `protobuf:"bytes,89,opt,name=range_tbl_entry,json=RangeTblEntry,proto3,oneof"` } -type Node_ListenStmt struct { - ListenStmt *ListenStmt `protobuf:"bytes,84,opt,name=listen_stmt,json=ListenStmt,proto3,oneof"` +type Node_RtepermissionInfo struct { + RtepermissionInfo *RTEPermissionInfo `protobuf:"bytes,90,opt,name=rtepermission_info,json=RTEPermissionInfo,proto3,oneof"` } -type Node_UnlistenStmt struct { - UnlistenStmt *UnlistenStmt `protobuf:"bytes,85,opt,name=unlisten_stmt,json=UnlistenStmt,proto3,oneof"` +type Node_RangeTblFunction struct { + RangeTblFunction *RangeTblFunction `protobuf:"bytes,91,opt,name=range_tbl_function,json=RangeTblFunction,proto3,oneof"` } -type Node_TransactionStmt struct { - TransactionStmt *TransactionStmt `protobuf:"bytes,86,opt,name=transaction_stmt,json=TransactionStmt,proto3,oneof"` +type Node_TableSampleClause struct { + TableSampleClause *TableSampleClause `protobuf:"bytes,92,opt,name=table_sample_clause,json=TableSampleClause,proto3,oneof"` } -type Node_ViewStmt struct { - ViewStmt *ViewStmt `protobuf:"bytes,87,opt,name=view_stmt,json=ViewStmt,proto3,oneof"` +type Node_WithCheckOption struct { + WithCheckOption *WithCheckOption `protobuf:"bytes,93,opt,name=with_check_option,json=WithCheckOption,proto3,oneof"` } -type Node_LoadStmt struct { - LoadStmt *LoadStmt `protobuf:"bytes,88,opt,name=load_stmt,json=LoadStmt,proto3,oneof"` +type Node_SortGroupClause struct { + SortGroupClause *SortGroupClause `protobuf:"bytes,94,opt,name=sort_group_clause,json=SortGroupClause,proto3,oneof"` } -type Node_CreateDomainStmt struct { - CreateDomainStmt *CreateDomainStmt `protobuf:"bytes,89,opt,name=create_domain_stmt,json=CreateDomainStmt,proto3,oneof"` +type Node_GroupingSet struct { + GroupingSet *GroupingSet `protobuf:"bytes,95,opt,name=grouping_set,json=GroupingSet,proto3,oneof"` } -type Node_CreatedbStmt struct { - CreatedbStmt *CreatedbStmt `protobuf:"bytes,90,opt,name=createdb_stmt,json=CreatedbStmt,proto3,oneof"` +type Node_WindowClause struct { + WindowClause *WindowClause `protobuf:"bytes,96,opt,name=window_clause,json=WindowClause,proto3,oneof"` } -type Node_DropdbStmt struct { - DropdbStmt *DropdbStmt `protobuf:"bytes,91,opt,name=dropdb_stmt,json=DropdbStmt,proto3,oneof"` +type Node_RowMarkClause struct { + RowMarkClause *RowMarkClause `protobuf:"bytes,97,opt,name=row_mark_clause,json=RowMarkClause,proto3,oneof"` } -type Node_VacuumStmt struct { - VacuumStmt *VacuumStmt `protobuf:"bytes,92,opt,name=vacuum_stmt,json=VacuumStmt,proto3,oneof"` +type Node_WithClause struct { + WithClause *WithClause `protobuf:"bytes,98,opt,name=with_clause,json=WithClause,proto3,oneof"` } -type Node_ExplainStmt struct { - ExplainStmt *ExplainStmt `protobuf:"bytes,93,opt,name=explain_stmt,json=ExplainStmt,proto3,oneof"` +type Node_InferClause struct { + InferClause *InferClause `protobuf:"bytes,99,opt,name=infer_clause,json=InferClause,proto3,oneof"` } -type Node_CreateTableAsStmt struct { - CreateTableAsStmt *CreateTableAsStmt `protobuf:"bytes,94,opt,name=create_table_as_stmt,json=CreateTableAsStmt,proto3,oneof"` +type Node_OnConflictClause struct { + OnConflictClause *OnConflictClause `protobuf:"bytes,100,opt,name=on_conflict_clause,json=OnConflictClause,proto3,oneof"` } -type Node_CreateSeqStmt struct { - CreateSeqStmt *CreateSeqStmt `protobuf:"bytes,95,opt,name=create_seq_stmt,json=CreateSeqStmt,proto3,oneof"` +type Node_CtesearchClause struct { + CtesearchClause *CTESearchClause `protobuf:"bytes,101,opt,name=ctesearch_clause,json=CTESearchClause,proto3,oneof"` } -type Node_AlterSeqStmt struct { - AlterSeqStmt *AlterSeqStmt `protobuf:"bytes,96,opt,name=alter_seq_stmt,json=AlterSeqStmt,proto3,oneof"` +type Node_CtecycleClause struct { + CtecycleClause *CTECycleClause `protobuf:"bytes,102,opt,name=ctecycle_clause,json=CTECycleClause,proto3,oneof"` } -type Node_VariableSetStmt struct { - VariableSetStmt *VariableSetStmt `protobuf:"bytes,97,opt,name=variable_set_stmt,json=VariableSetStmt,proto3,oneof"` +type Node_CommonTableExpr struct { + CommonTableExpr *CommonTableExpr `protobuf:"bytes,103,opt,name=common_table_expr,json=CommonTableExpr,proto3,oneof"` } -type Node_VariableShowStmt struct { - VariableShowStmt *VariableShowStmt `protobuf:"bytes,98,opt,name=variable_show_stmt,json=VariableShowStmt,proto3,oneof"` +type Node_MergeWhenClause struct { + MergeWhenClause *MergeWhenClause `protobuf:"bytes,104,opt,name=merge_when_clause,json=MergeWhenClause,proto3,oneof"` } -type Node_DiscardStmt struct { - DiscardStmt *DiscardStmt `protobuf:"bytes,99,opt,name=discard_stmt,json=DiscardStmt,proto3,oneof"` +type Node_MergeAction struct { + MergeAction *MergeAction `protobuf:"bytes,105,opt,name=merge_action,json=MergeAction,proto3,oneof"` } -type Node_CreateTrigStmt struct { - CreateTrigStmt *CreateTrigStmt `protobuf:"bytes,100,opt,name=create_trig_stmt,json=CreateTrigStmt,proto3,oneof"` +type Node_TriggerTransition struct { + TriggerTransition *TriggerTransition `protobuf:"bytes,106,opt,name=trigger_transition,json=TriggerTransition,proto3,oneof"` } -type Node_CreatePlangStmt struct { - CreatePlangStmt *CreatePLangStmt `protobuf:"bytes,101,opt,name=create_plang_stmt,json=CreatePLangStmt,proto3,oneof"` +type Node_JsonOutput struct { + JsonOutput *JsonOutput `protobuf:"bytes,107,opt,name=json_output,json=JsonOutput,proto3,oneof"` } -type Node_CreateRoleStmt struct { - CreateRoleStmt *CreateRoleStmt `protobuf:"bytes,102,opt,name=create_role_stmt,json=CreateRoleStmt,proto3,oneof"` +type Node_JsonKeyValue struct { + JsonKeyValue *JsonKeyValue `protobuf:"bytes,108,opt,name=json_key_value,json=JsonKeyValue,proto3,oneof"` } -type Node_AlterRoleStmt struct { - AlterRoleStmt *AlterRoleStmt `protobuf:"bytes,103,opt,name=alter_role_stmt,json=AlterRoleStmt,proto3,oneof"` +type Node_JsonObjectConstructor struct { + JsonObjectConstructor *JsonObjectConstructor `protobuf:"bytes,109,opt,name=json_object_constructor,json=JsonObjectConstructor,proto3,oneof"` } -type Node_DropRoleStmt struct { - DropRoleStmt *DropRoleStmt `protobuf:"bytes,104,opt,name=drop_role_stmt,json=DropRoleStmt,proto3,oneof"` +type Node_JsonArrayConstructor struct { + JsonArrayConstructor *JsonArrayConstructor `protobuf:"bytes,110,opt,name=json_array_constructor,json=JsonArrayConstructor,proto3,oneof"` } -type Node_LockStmt struct { - LockStmt *LockStmt `protobuf:"bytes,105,opt,name=lock_stmt,json=LockStmt,proto3,oneof"` +type Node_JsonArrayQueryConstructor struct { + JsonArrayQueryConstructor *JsonArrayQueryConstructor `protobuf:"bytes,111,opt,name=json_array_query_constructor,json=JsonArrayQueryConstructor,proto3,oneof"` } -type Node_ConstraintsSetStmt struct { - ConstraintsSetStmt *ConstraintsSetStmt `protobuf:"bytes,106,opt,name=constraints_set_stmt,json=ConstraintsSetStmt,proto3,oneof"` +type Node_JsonAggConstructor struct { + JsonAggConstructor *JsonAggConstructor `protobuf:"bytes,112,opt,name=json_agg_constructor,json=JsonAggConstructor,proto3,oneof"` } -type Node_ReindexStmt struct { - ReindexStmt *ReindexStmt `protobuf:"bytes,107,opt,name=reindex_stmt,json=ReindexStmt,proto3,oneof"` +type Node_JsonObjectAgg struct { + JsonObjectAgg *JsonObjectAgg `protobuf:"bytes,113,opt,name=json_object_agg,json=JsonObjectAgg,proto3,oneof"` } -type Node_CheckPointStmt struct { - CheckPointStmt *CheckPointStmt `protobuf:"bytes,108,opt,name=check_point_stmt,json=CheckPointStmt,proto3,oneof"` +type Node_JsonArrayAgg struct { + JsonArrayAgg *JsonArrayAgg `protobuf:"bytes,114,opt,name=json_array_agg,json=JsonArrayAgg,proto3,oneof"` } -type Node_CreateSchemaStmt struct { - CreateSchemaStmt *CreateSchemaStmt `protobuf:"bytes,109,opt,name=create_schema_stmt,json=CreateSchemaStmt,proto3,oneof"` +type Node_RawStmt struct { + RawStmt *RawStmt `protobuf:"bytes,115,opt,name=raw_stmt,json=RawStmt,proto3,oneof"` } -type Node_AlterDatabaseStmt struct { - AlterDatabaseStmt *AlterDatabaseStmt `protobuf:"bytes,110,opt,name=alter_database_stmt,json=AlterDatabaseStmt,proto3,oneof"` +type Node_InsertStmt struct { + InsertStmt *InsertStmt `protobuf:"bytes,116,opt,name=insert_stmt,json=InsertStmt,proto3,oneof"` } -type Node_AlterDatabaseRefreshCollStmt struct { - AlterDatabaseRefreshCollStmt *AlterDatabaseRefreshCollStmt `protobuf:"bytes,111,opt,name=alter_database_refresh_coll_stmt,json=AlterDatabaseRefreshCollStmt,proto3,oneof"` +type Node_DeleteStmt struct { + DeleteStmt *DeleteStmt `protobuf:"bytes,117,opt,name=delete_stmt,json=DeleteStmt,proto3,oneof"` } -type Node_AlterDatabaseSetStmt struct { - AlterDatabaseSetStmt *AlterDatabaseSetStmt `protobuf:"bytes,112,opt,name=alter_database_set_stmt,json=AlterDatabaseSetStmt,proto3,oneof"` +type Node_UpdateStmt struct { + UpdateStmt *UpdateStmt `protobuf:"bytes,118,opt,name=update_stmt,json=UpdateStmt,proto3,oneof"` } -type Node_AlterRoleSetStmt struct { - AlterRoleSetStmt *AlterRoleSetStmt `protobuf:"bytes,113,opt,name=alter_role_set_stmt,json=AlterRoleSetStmt,proto3,oneof"` +type Node_MergeStmt struct { + MergeStmt *MergeStmt `protobuf:"bytes,119,opt,name=merge_stmt,json=MergeStmt,proto3,oneof"` } -type Node_CreateConversionStmt struct { - CreateConversionStmt *CreateConversionStmt `protobuf:"bytes,114,opt,name=create_conversion_stmt,json=CreateConversionStmt,proto3,oneof"` +type Node_SelectStmt struct { + SelectStmt *SelectStmt `protobuf:"bytes,120,opt,name=select_stmt,json=SelectStmt,proto3,oneof"` } -type Node_CreateCastStmt struct { - CreateCastStmt *CreateCastStmt `protobuf:"bytes,115,opt,name=create_cast_stmt,json=CreateCastStmt,proto3,oneof"` +type Node_SetOperationStmt struct { + SetOperationStmt *SetOperationStmt `protobuf:"bytes,121,opt,name=set_operation_stmt,json=SetOperationStmt,proto3,oneof"` } -type Node_CreateOpClassStmt struct { - CreateOpClassStmt *CreateOpClassStmt `protobuf:"bytes,116,opt,name=create_op_class_stmt,json=CreateOpClassStmt,proto3,oneof"` +type Node_ReturnStmt struct { + ReturnStmt *ReturnStmt `protobuf:"bytes,122,opt,name=return_stmt,json=ReturnStmt,proto3,oneof"` } -type Node_CreateOpFamilyStmt struct { - CreateOpFamilyStmt *CreateOpFamilyStmt `protobuf:"bytes,117,opt,name=create_op_family_stmt,json=CreateOpFamilyStmt,proto3,oneof"` +type Node_PlassignStmt struct { + PlassignStmt *PLAssignStmt `protobuf:"bytes,123,opt,name=plassign_stmt,json=PLAssignStmt,proto3,oneof"` } -type Node_AlterOpFamilyStmt struct { - AlterOpFamilyStmt *AlterOpFamilyStmt `protobuf:"bytes,118,opt,name=alter_op_family_stmt,json=AlterOpFamilyStmt,proto3,oneof"` +type Node_CreateSchemaStmt struct { + CreateSchemaStmt *CreateSchemaStmt `protobuf:"bytes,124,opt,name=create_schema_stmt,json=CreateSchemaStmt,proto3,oneof"` } -type Node_PrepareStmt struct { - PrepareStmt *PrepareStmt `protobuf:"bytes,119,opt,name=prepare_stmt,json=PrepareStmt,proto3,oneof"` +type Node_AlterTableStmt struct { + AlterTableStmt *AlterTableStmt `protobuf:"bytes,125,opt,name=alter_table_stmt,json=AlterTableStmt,proto3,oneof"` } -type Node_ExecuteStmt struct { - ExecuteStmt *ExecuteStmt `protobuf:"bytes,120,opt,name=execute_stmt,json=ExecuteStmt,proto3,oneof"` +type Node_ReplicaIdentityStmt struct { + ReplicaIdentityStmt *ReplicaIdentityStmt `protobuf:"bytes,126,opt,name=replica_identity_stmt,json=ReplicaIdentityStmt,proto3,oneof"` } -type Node_DeallocateStmt struct { - DeallocateStmt *DeallocateStmt `protobuf:"bytes,121,opt,name=deallocate_stmt,json=DeallocateStmt,proto3,oneof"` +type Node_AlterTableCmd struct { + AlterTableCmd *AlterTableCmd `protobuf:"bytes,127,opt,name=alter_table_cmd,json=AlterTableCmd,proto3,oneof"` } -type Node_DeclareCursorStmt struct { - DeclareCursorStmt *DeclareCursorStmt `protobuf:"bytes,122,opt,name=declare_cursor_stmt,json=DeclareCursorStmt,proto3,oneof"` +type Node_AlterCollationStmt struct { + AlterCollationStmt *AlterCollationStmt `protobuf:"bytes,128,opt,name=alter_collation_stmt,json=AlterCollationStmt,proto3,oneof"` } -type Node_CreateTableSpaceStmt struct { - CreateTableSpaceStmt *CreateTableSpaceStmt `protobuf:"bytes,123,opt,name=create_table_space_stmt,json=CreateTableSpaceStmt,proto3,oneof"` +type Node_AlterDomainStmt struct { + AlterDomainStmt *AlterDomainStmt `protobuf:"bytes,129,opt,name=alter_domain_stmt,json=AlterDomainStmt,proto3,oneof"` } -type Node_DropTableSpaceStmt struct { - DropTableSpaceStmt *DropTableSpaceStmt `protobuf:"bytes,124,opt,name=drop_table_space_stmt,json=DropTableSpaceStmt,proto3,oneof"` +type Node_GrantStmt struct { + GrantStmt *GrantStmt `protobuf:"bytes,130,opt,name=grant_stmt,json=GrantStmt,proto3,oneof"` } -type Node_AlterObjectDependsStmt struct { - AlterObjectDependsStmt *AlterObjectDependsStmt `protobuf:"bytes,125,opt,name=alter_object_depends_stmt,json=AlterObjectDependsStmt,proto3,oneof"` +type Node_ObjectWithArgs struct { + ObjectWithArgs *ObjectWithArgs `protobuf:"bytes,131,opt,name=object_with_args,json=ObjectWithArgs,proto3,oneof"` } -type Node_AlterObjectSchemaStmt struct { - AlterObjectSchemaStmt *AlterObjectSchemaStmt `protobuf:"bytes,126,opt,name=alter_object_schema_stmt,json=AlterObjectSchemaStmt,proto3,oneof"` +type Node_AccessPriv struct { + AccessPriv *AccessPriv `protobuf:"bytes,132,opt,name=access_priv,json=AccessPriv,proto3,oneof"` } -type Node_AlterOwnerStmt struct { - AlterOwnerStmt *AlterOwnerStmt `protobuf:"bytes,127,opt,name=alter_owner_stmt,json=AlterOwnerStmt,proto3,oneof"` +type Node_GrantRoleStmt struct { + GrantRoleStmt *GrantRoleStmt `protobuf:"bytes,133,opt,name=grant_role_stmt,json=GrantRoleStmt,proto3,oneof"` } -type Node_AlterOperatorStmt struct { - AlterOperatorStmt *AlterOperatorStmt `protobuf:"bytes,128,opt,name=alter_operator_stmt,json=AlterOperatorStmt,proto3,oneof"` +type Node_AlterDefaultPrivilegesStmt struct { + AlterDefaultPrivilegesStmt *AlterDefaultPrivilegesStmt `protobuf:"bytes,134,opt,name=alter_default_privileges_stmt,json=AlterDefaultPrivilegesStmt,proto3,oneof"` } -type Node_AlterTypeStmt struct { - AlterTypeStmt *AlterTypeStmt `protobuf:"bytes,129,opt,name=alter_type_stmt,json=AlterTypeStmt,proto3,oneof"` +type Node_CopyStmt struct { + CopyStmt *CopyStmt `protobuf:"bytes,135,opt,name=copy_stmt,json=CopyStmt,proto3,oneof"` } -type Node_DropOwnedStmt struct { - DropOwnedStmt *DropOwnedStmt `protobuf:"bytes,130,opt,name=drop_owned_stmt,json=DropOwnedStmt,proto3,oneof"` +type Node_VariableSetStmt struct { + VariableSetStmt *VariableSetStmt `protobuf:"bytes,136,opt,name=variable_set_stmt,json=VariableSetStmt,proto3,oneof"` } -type Node_ReassignOwnedStmt struct { - ReassignOwnedStmt *ReassignOwnedStmt `protobuf:"bytes,131,opt,name=reassign_owned_stmt,json=ReassignOwnedStmt,proto3,oneof"` +type Node_VariableShowStmt struct { + VariableShowStmt *VariableShowStmt `protobuf:"bytes,137,opt,name=variable_show_stmt,json=VariableShowStmt,proto3,oneof"` } -type Node_CompositeTypeStmt struct { - CompositeTypeStmt *CompositeTypeStmt `protobuf:"bytes,132,opt,name=composite_type_stmt,json=CompositeTypeStmt,proto3,oneof"` +type Node_CreateStmt struct { + CreateStmt *CreateStmt `protobuf:"bytes,138,opt,name=create_stmt,json=CreateStmt,proto3,oneof"` } -type Node_CreateEnumStmt struct { - CreateEnumStmt *CreateEnumStmt `protobuf:"bytes,133,opt,name=create_enum_stmt,json=CreateEnumStmt,proto3,oneof"` +type Node_Constraint struct { + Constraint *Constraint `protobuf:"bytes,139,opt,name=constraint,json=Constraint,proto3,oneof"` } -type Node_CreateRangeStmt struct { - CreateRangeStmt *CreateRangeStmt `protobuf:"bytes,134,opt,name=create_range_stmt,json=CreateRangeStmt,proto3,oneof"` +type Node_CreateTableSpaceStmt struct { + CreateTableSpaceStmt *CreateTableSpaceStmt `protobuf:"bytes,140,opt,name=create_table_space_stmt,json=CreateTableSpaceStmt,proto3,oneof"` } -type Node_AlterEnumStmt struct { - AlterEnumStmt *AlterEnumStmt `protobuf:"bytes,135,opt,name=alter_enum_stmt,json=AlterEnumStmt,proto3,oneof"` +type Node_DropTableSpaceStmt struct { + DropTableSpaceStmt *DropTableSpaceStmt `protobuf:"bytes,141,opt,name=drop_table_space_stmt,json=DropTableSpaceStmt,proto3,oneof"` } -type Node_AlterTsdictionaryStmt struct { - AlterTsdictionaryStmt *AlterTSDictionaryStmt `protobuf:"bytes,136,opt,name=alter_tsdictionary_stmt,json=AlterTSDictionaryStmt,proto3,oneof"` +type Node_AlterTableSpaceOptionsStmt struct { + AlterTableSpaceOptionsStmt *AlterTableSpaceOptionsStmt `protobuf:"bytes,142,opt,name=alter_table_space_options_stmt,json=AlterTableSpaceOptionsStmt,proto3,oneof"` } -type Node_AlterTsconfigurationStmt struct { - AlterTsconfigurationStmt *AlterTSConfigurationStmt `protobuf:"bytes,137,opt,name=alter_tsconfiguration_stmt,json=AlterTSConfigurationStmt,proto3,oneof"` +type Node_AlterTableMoveAllStmt struct { + AlterTableMoveAllStmt *AlterTableMoveAllStmt `protobuf:"bytes,143,opt,name=alter_table_move_all_stmt,json=AlterTableMoveAllStmt,proto3,oneof"` +} + +type Node_CreateExtensionStmt struct { + CreateExtensionStmt *CreateExtensionStmt `protobuf:"bytes,144,opt,name=create_extension_stmt,json=CreateExtensionStmt,proto3,oneof"` +} + +type Node_AlterExtensionStmt struct { + AlterExtensionStmt *AlterExtensionStmt `protobuf:"bytes,145,opt,name=alter_extension_stmt,json=AlterExtensionStmt,proto3,oneof"` +} + +type Node_AlterExtensionContentsStmt struct { + AlterExtensionContentsStmt *AlterExtensionContentsStmt `protobuf:"bytes,146,opt,name=alter_extension_contents_stmt,json=AlterExtensionContentsStmt,proto3,oneof"` } type Node_CreateFdwStmt struct { - CreateFdwStmt *CreateFdwStmt `protobuf:"bytes,138,opt,name=create_fdw_stmt,json=CreateFdwStmt,proto3,oneof"` + CreateFdwStmt *CreateFdwStmt `protobuf:"bytes,147,opt,name=create_fdw_stmt,json=CreateFdwStmt,proto3,oneof"` } type Node_AlterFdwStmt struct { - AlterFdwStmt *AlterFdwStmt `protobuf:"bytes,139,opt,name=alter_fdw_stmt,json=AlterFdwStmt,proto3,oneof"` + AlterFdwStmt *AlterFdwStmt `protobuf:"bytes,148,opt,name=alter_fdw_stmt,json=AlterFdwStmt,proto3,oneof"` } type Node_CreateForeignServerStmt struct { - CreateForeignServerStmt *CreateForeignServerStmt `protobuf:"bytes,140,opt,name=create_foreign_server_stmt,json=CreateForeignServerStmt,proto3,oneof"` + CreateForeignServerStmt *CreateForeignServerStmt `protobuf:"bytes,149,opt,name=create_foreign_server_stmt,json=CreateForeignServerStmt,proto3,oneof"` } type Node_AlterForeignServerStmt struct { - AlterForeignServerStmt *AlterForeignServerStmt `protobuf:"bytes,141,opt,name=alter_foreign_server_stmt,json=AlterForeignServerStmt,proto3,oneof"` + AlterForeignServerStmt *AlterForeignServerStmt `protobuf:"bytes,150,opt,name=alter_foreign_server_stmt,json=AlterForeignServerStmt,proto3,oneof"` +} + +type Node_CreateForeignTableStmt struct { + CreateForeignTableStmt *CreateForeignTableStmt `protobuf:"bytes,151,opt,name=create_foreign_table_stmt,json=CreateForeignTableStmt,proto3,oneof"` } type Node_CreateUserMappingStmt struct { - CreateUserMappingStmt *CreateUserMappingStmt `protobuf:"bytes,142,opt,name=create_user_mapping_stmt,json=CreateUserMappingStmt,proto3,oneof"` + CreateUserMappingStmt *CreateUserMappingStmt `protobuf:"bytes,152,opt,name=create_user_mapping_stmt,json=CreateUserMappingStmt,proto3,oneof"` } type Node_AlterUserMappingStmt struct { - AlterUserMappingStmt *AlterUserMappingStmt `protobuf:"bytes,143,opt,name=alter_user_mapping_stmt,json=AlterUserMappingStmt,proto3,oneof"` + AlterUserMappingStmt *AlterUserMappingStmt `protobuf:"bytes,153,opt,name=alter_user_mapping_stmt,json=AlterUserMappingStmt,proto3,oneof"` } type Node_DropUserMappingStmt struct { - DropUserMappingStmt *DropUserMappingStmt `protobuf:"bytes,144,opt,name=drop_user_mapping_stmt,json=DropUserMappingStmt,proto3,oneof"` + DropUserMappingStmt *DropUserMappingStmt `protobuf:"bytes,154,opt,name=drop_user_mapping_stmt,json=DropUserMappingStmt,proto3,oneof"` } -type Node_AlterTableSpaceOptionsStmt struct { - AlterTableSpaceOptionsStmt *AlterTableSpaceOptionsStmt `protobuf:"bytes,145,opt,name=alter_table_space_options_stmt,json=AlterTableSpaceOptionsStmt,proto3,oneof"` +type Node_ImportForeignSchemaStmt struct { + ImportForeignSchemaStmt *ImportForeignSchemaStmt `protobuf:"bytes,155,opt,name=import_foreign_schema_stmt,json=ImportForeignSchemaStmt,proto3,oneof"` } -type Node_AlterTableMoveAllStmt struct { - AlterTableMoveAllStmt *AlterTableMoveAllStmt `protobuf:"bytes,146,opt,name=alter_table_move_all_stmt,json=AlterTableMoveAllStmt,proto3,oneof"` +type Node_CreatePolicyStmt struct { + CreatePolicyStmt *CreatePolicyStmt `protobuf:"bytes,156,opt,name=create_policy_stmt,json=CreatePolicyStmt,proto3,oneof"` } -type Node_SecLabelStmt struct { - SecLabelStmt *SecLabelStmt `protobuf:"bytes,147,opt,name=sec_label_stmt,json=SecLabelStmt,proto3,oneof"` +type Node_AlterPolicyStmt struct { + AlterPolicyStmt *AlterPolicyStmt `protobuf:"bytes,157,opt,name=alter_policy_stmt,json=AlterPolicyStmt,proto3,oneof"` } -type Node_CreateForeignTableStmt struct { - CreateForeignTableStmt *CreateForeignTableStmt `protobuf:"bytes,148,opt,name=create_foreign_table_stmt,json=CreateForeignTableStmt,proto3,oneof"` +type Node_CreateAmStmt struct { + CreateAmStmt *CreateAmStmt `protobuf:"bytes,158,opt,name=create_am_stmt,json=CreateAmStmt,proto3,oneof"` } -type Node_ImportForeignSchemaStmt struct { - ImportForeignSchemaStmt *ImportForeignSchemaStmt `protobuf:"bytes,149,opt,name=import_foreign_schema_stmt,json=ImportForeignSchemaStmt,proto3,oneof"` +type Node_CreateTrigStmt struct { + CreateTrigStmt *CreateTrigStmt `protobuf:"bytes,159,opt,name=create_trig_stmt,json=CreateTrigStmt,proto3,oneof"` } -type Node_CreateExtensionStmt struct { - CreateExtensionStmt *CreateExtensionStmt `protobuf:"bytes,150,opt,name=create_extension_stmt,json=CreateExtensionStmt,proto3,oneof"` +type Node_CreateEventTrigStmt struct { + CreateEventTrigStmt *CreateEventTrigStmt `protobuf:"bytes,160,opt,name=create_event_trig_stmt,json=CreateEventTrigStmt,proto3,oneof"` } -type Node_AlterExtensionStmt struct { - AlterExtensionStmt *AlterExtensionStmt `protobuf:"bytes,151,opt,name=alter_extension_stmt,json=AlterExtensionStmt,proto3,oneof"` +type Node_AlterEventTrigStmt struct { + AlterEventTrigStmt *AlterEventTrigStmt `protobuf:"bytes,161,opt,name=alter_event_trig_stmt,json=AlterEventTrigStmt,proto3,oneof"` } -type Node_AlterExtensionContentsStmt struct { - AlterExtensionContentsStmt *AlterExtensionContentsStmt `protobuf:"bytes,152,opt,name=alter_extension_contents_stmt,json=AlterExtensionContentsStmt,proto3,oneof"` +type Node_CreatePlangStmt struct { + CreatePlangStmt *CreatePLangStmt `protobuf:"bytes,162,opt,name=create_plang_stmt,json=CreatePLangStmt,proto3,oneof"` } -type Node_CreateEventTrigStmt struct { - CreateEventTrigStmt *CreateEventTrigStmt `protobuf:"bytes,153,opt,name=create_event_trig_stmt,json=CreateEventTrigStmt,proto3,oneof"` +type Node_CreateRoleStmt struct { + CreateRoleStmt *CreateRoleStmt `protobuf:"bytes,163,opt,name=create_role_stmt,json=CreateRoleStmt,proto3,oneof"` } -type Node_AlterEventTrigStmt struct { - AlterEventTrigStmt *AlterEventTrigStmt `protobuf:"bytes,154,opt,name=alter_event_trig_stmt,json=AlterEventTrigStmt,proto3,oneof"` +type Node_AlterRoleStmt struct { + AlterRoleStmt *AlterRoleStmt `protobuf:"bytes,164,opt,name=alter_role_stmt,json=AlterRoleStmt,proto3,oneof"` } -type Node_RefreshMatViewStmt struct { - RefreshMatViewStmt *RefreshMatViewStmt `protobuf:"bytes,155,opt,name=refresh_mat_view_stmt,json=RefreshMatViewStmt,proto3,oneof"` +type Node_AlterRoleSetStmt struct { + AlterRoleSetStmt *AlterRoleSetStmt `protobuf:"bytes,165,opt,name=alter_role_set_stmt,json=AlterRoleSetStmt,proto3,oneof"` } -type Node_ReplicaIdentityStmt struct { - ReplicaIdentityStmt *ReplicaIdentityStmt `protobuf:"bytes,156,opt,name=replica_identity_stmt,json=ReplicaIdentityStmt,proto3,oneof"` +type Node_DropRoleStmt struct { + DropRoleStmt *DropRoleStmt `protobuf:"bytes,166,opt,name=drop_role_stmt,json=DropRoleStmt,proto3,oneof"` } -type Node_AlterSystemStmt struct { - AlterSystemStmt *AlterSystemStmt `protobuf:"bytes,157,opt,name=alter_system_stmt,json=AlterSystemStmt,proto3,oneof"` +type Node_CreateSeqStmt struct { + CreateSeqStmt *CreateSeqStmt `protobuf:"bytes,167,opt,name=create_seq_stmt,json=CreateSeqStmt,proto3,oneof"` } -type Node_CreatePolicyStmt struct { - CreatePolicyStmt *CreatePolicyStmt `protobuf:"bytes,158,opt,name=create_policy_stmt,json=CreatePolicyStmt,proto3,oneof"` +type Node_AlterSeqStmt struct { + AlterSeqStmt *AlterSeqStmt `protobuf:"bytes,168,opt,name=alter_seq_stmt,json=AlterSeqStmt,proto3,oneof"` } -type Node_AlterPolicyStmt struct { - AlterPolicyStmt *AlterPolicyStmt `protobuf:"bytes,159,opt,name=alter_policy_stmt,json=AlterPolicyStmt,proto3,oneof"` +type Node_DefineStmt struct { + DefineStmt *DefineStmt `protobuf:"bytes,169,opt,name=define_stmt,json=DefineStmt,proto3,oneof"` } -type Node_CreateTransformStmt struct { - CreateTransformStmt *CreateTransformStmt `protobuf:"bytes,160,opt,name=create_transform_stmt,json=CreateTransformStmt,proto3,oneof"` +type Node_CreateDomainStmt struct { + CreateDomainStmt *CreateDomainStmt `protobuf:"bytes,170,opt,name=create_domain_stmt,json=CreateDomainStmt,proto3,oneof"` } -type Node_CreateAmStmt struct { - CreateAmStmt *CreateAmStmt `protobuf:"bytes,161,opt,name=create_am_stmt,json=CreateAmStmt,proto3,oneof"` +type Node_CreateOpClassStmt struct { + CreateOpClassStmt *CreateOpClassStmt `protobuf:"bytes,171,opt,name=create_op_class_stmt,json=CreateOpClassStmt,proto3,oneof"` } -type Node_CreatePublicationStmt struct { - CreatePublicationStmt *CreatePublicationStmt `protobuf:"bytes,162,opt,name=create_publication_stmt,json=CreatePublicationStmt,proto3,oneof"` +type Node_CreateOpClassItem struct { + CreateOpClassItem *CreateOpClassItem `protobuf:"bytes,172,opt,name=create_op_class_item,json=CreateOpClassItem,proto3,oneof"` } -type Node_AlterPublicationStmt struct { - AlterPublicationStmt *AlterPublicationStmt `protobuf:"bytes,163,opt,name=alter_publication_stmt,json=AlterPublicationStmt,proto3,oneof"` +type Node_CreateOpFamilyStmt struct { + CreateOpFamilyStmt *CreateOpFamilyStmt `protobuf:"bytes,173,opt,name=create_op_family_stmt,json=CreateOpFamilyStmt,proto3,oneof"` } -type Node_CreateSubscriptionStmt struct { - CreateSubscriptionStmt *CreateSubscriptionStmt `protobuf:"bytes,164,opt,name=create_subscription_stmt,json=CreateSubscriptionStmt,proto3,oneof"` +type Node_AlterOpFamilyStmt struct { + AlterOpFamilyStmt *AlterOpFamilyStmt `protobuf:"bytes,174,opt,name=alter_op_family_stmt,json=AlterOpFamilyStmt,proto3,oneof"` } -type Node_AlterSubscriptionStmt struct { - AlterSubscriptionStmt *AlterSubscriptionStmt `protobuf:"bytes,165,opt,name=alter_subscription_stmt,json=AlterSubscriptionStmt,proto3,oneof"` +type Node_DropStmt struct { + DropStmt *DropStmt `protobuf:"bytes,175,opt,name=drop_stmt,json=DropStmt,proto3,oneof"` } -type Node_DropSubscriptionStmt struct { - DropSubscriptionStmt *DropSubscriptionStmt `protobuf:"bytes,166,opt,name=drop_subscription_stmt,json=DropSubscriptionStmt,proto3,oneof"` +type Node_TruncateStmt struct { + TruncateStmt *TruncateStmt `protobuf:"bytes,176,opt,name=truncate_stmt,json=TruncateStmt,proto3,oneof"` } -type Node_CreateStatsStmt struct { - CreateStatsStmt *CreateStatsStmt `protobuf:"bytes,167,opt,name=create_stats_stmt,json=CreateStatsStmt,proto3,oneof"` +type Node_CommentStmt struct { + CommentStmt *CommentStmt `protobuf:"bytes,177,opt,name=comment_stmt,json=CommentStmt,proto3,oneof"` } -type Node_AlterCollationStmt struct { - AlterCollationStmt *AlterCollationStmt `protobuf:"bytes,168,opt,name=alter_collation_stmt,json=AlterCollationStmt,proto3,oneof"` +type Node_SecLabelStmt struct { + SecLabelStmt *SecLabelStmt `protobuf:"bytes,178,opt,name=sec_label_stmt,json=SecLabelStmt,proto3,oneof"` } -type Node_CallStmt struct { - CallStmt *CallStmt `protobuf:"bytes,169,opt,name=call_stmt,json=CallStmt,proto3,oneof"` +type Node_DeclareCursorStmt struct { + DeclareCursorStmt *DeclareCursorStmt `protobuf:"bytes,179,opt,name=declare_cursor_stmt,json=DeclareCursorStmt,proto3,oneof"` } -type Node_AlterStatsStmt struct { - AlterStatsStmt *AlterStatsStmt `protobuf:"bytes,170,opt,name=alter_stats_stmt,json=AlterStatsStmt,proto3,oneof"` +type Node_ClosePortalStmt struct { + ClosePortalStmt *ClosePortalStmt `protobuf:"bytes,180,opt,name=close_portal_stmt,json=ClosePortalStmt,proto3,oneof"` } -type Node_AExpr struct { - AExpr *A_Expr `protobuf:"bytes,171,opt,name=a_expr,json=A_Expr,proto3,oneof"` +type Node_FetchStmt struct { + FetchStmt *FetchStmt `protobuf:"bytes,181,opt,name=fetch_stmt,json=FetchStmt,proto3,oneof"` } -type Node_ColumnRef struct { - ColumnRef *ColumnRef `protobuf:"bytes,172,opt,name=column_ref,json=ColumnRef,proto3,oneof"` +type Node_IndexStmt struct { + IndexStmt *IndexStmt `protobuf:"bytes,182,opt,name=index_stmt,json=IndexStmt,proto3,oneof"` } -type Node_ParamRef struct { - ParamRef *ParamRef `protobuf:"bytes,173,opt,name=param_ref,json=ParamRef,proto3,oneof"` +type Node_CreateStatsStmt struct { + CreateStatsStmt *CreateStatsStmt `protobuf:"bytes,183,opt,name=create_stats_stmt,json=CreateStatsStmt,proto3,oneof"` } -type Node_FuncCall struct { - FuncCall *FuncCall `protobuf:"bytes,174,opt,name=func_call,json=FuncCall,proto3,oneof"` +type Node_StatsElem struct { + StatsElem *StatsElem `protobuf:"bytes,184,opt,name=stats_elem,json=StatsElem,proto3,oneof"` } -type Node_AStar struct { - AStar *A_Star `protobuf:"bytes,175,opt,name=a_star,json=A_Star,proto3,oneof"` +type Node_AlterStatsStmt struct { + AlterStatsStmt *AlterStatsStmt `protobuf:"bytes,185,opt,name=alter_stats_stmt,json=AlterStatsStmt,proto3,oneof"` } -type Node_AIndices struct { - AIndices *A_Indices `protobuf:"bytes,176,opt,name=a_indices,json=A_Indices,proto3,oneof"` +type Node_CreateFunctionStmt struct { + CreateFunctionStmt *CreateFunctionStmt `protobuf:"bytes,186,opt,name=create_function_stmt,json=CreateFunctionStmt,proto3,oneof"` } -type Node_AIndirection struct { - AIndirection *A_Indirection `protobuf:"bytes,177,opt,name=a_indirection,json=A_Indirection,proto3,oneof"` +type Node_FunctionParameter struct { + FunctionParameter *FunctionParameter `protobuf:"bytes,187,opt,name=function_parameter,json=FunctionParameter,proto3,oneof"` } -type Node_AArrayExpr struct { - AArrayExpr *A_ArrayExpr `protobuf:"bytes,178,opt,name=a_array_expr,json=A_ArrayExpr,proto3,oneof"` +type Node_AlterFunctionStmt struct { + AlterFunctionStmt *AlterFunctionStmt `protobuf:"bytes,188,opt,name=alter_function_stmt,json=AlterFunctionStmt,proto3,oneof"` } -type Node_ResTarget struct { - ResTarget *ResTarget `protobuf:"bytes,179,opt,name=res_target,json=ResTarget,proto3,oneof"` +type Node_DoStmt struct { + DoStmt *DoStmt `protobuf:"bytes,189,opt,name=do_stmt,json=DoStmt,proto3,oneof"` } -type Node_MultiAssignRef struct { - MultiAssignRef *MultiAssignRef `protobuf:"bytes,180,opt,name=multi_assign_ref,json=MultiAssignRef,proto3,oneof"` +type Node_InlineCodeBlock struct { + InlineCodeBlock *InlineCodeBlock `protobuf:"bytes,190,opt,name=inline_code_block,json=InlineCodeBlock,proto3,oneof"` } -type Node_TypeCast struct { - TypeCast *TypeCast `protobuf:"bytes,181,opt,name=type_cast,json=TypeCast,proto3,oneof"` +type Node_CallStmt struct { + CallStmt *CallStmt `protobuf:"bytes,191,opt,name=call_stmt,json=CallStmt,proto3,oneof"` } -type Node_CollateClause struct { - CollateClause *CollateClause `protobuf:"bytes,182,opt,name=collate_clause,json=CollateClause,proto3,oneof"` +type Node_CallContext struct { + CallContext *CallContext `protobuf:"bytes,192,opt,name=call_context,json=CallContext,proto3,oneof"` } -type Node_SortBy struct { - SortBy *SortBy `protobuf:"bytes,183,opt,name=sort_by,json=SortBy,proto3,oneof"` +type Node_RenameStmt struct { + RenameStmt *RenameStmt `protobuf:"bytes,193,opt,name=rename_stmt,json=RenameStmt,proto3,oneof"` } -type Node_WindowDef struct { - WindowDef *WindowDef `protobuf:"bytes,184,opt,name=window_def,json=WindowDef,proto3,oneof"` +type Node_AlterObjectDependsStmt struct { + AlterObjectDependsStmt *AlterObjectDependsStmt `protobuf:"bytes,194,opt,name=alter_object_depends_stmt,json=AlterObjectDependsStmt,proto3,oneof"` } -type Node_RangeSubselect struct { - RangeSubselect *RangeSubselect `protobuf:"bytes,185,opt,name=range_subselect,json=RangeSubselect,proto3,oneof"` +type Node_AlterObjectSchemaStmt struct { + AlterObjectSchemaStmt *AlterObjectSchemaStmt `protobuf:"bytes,195,opt,name=alter_object_schema_stmt,json=AlterObjectSchemaStmt,proto3,oneof"` } -type Node_RangeFunction struct { - RangeFunction *RangeFunction `protobuf:"bytes,186,opt,name=range_function,json=RangeFunction,proto3,oneof"` +type Node_AlterOwnerStmt struct { + AlterOwnerStmt *AlterOwnerStmt `protobuf:"bytes,196,opt,name=alter_owner_stmt,json=AlterOwnerStmt,proto3,oneof"` } -type Node_RangeTableSample struct { - RangeTableSample *RangeTableSample `protobuf:"bytes,187,opt,name=range_table_sample,json=RangeTableSample,proto3,oneof"` +type Node_AlterOperatorStmt struct { + AlterOperatorStmt *AlterOperatorStmt `protobuf:"bytes,197,opt,name=alter_operator_stmt,json=AlterOperatorStmt,proto3,oneof"` } -type Node_RangeTableFunc struct { - RangeTableFunc *RangeTableFunc `protobuf:"bytes,188,opt,name=range_table_func,json=RangeTableFunc,proto3,oneof"` +type Node_AlterTypeStmt struct { + AlterTypeStmt *AlterTypeStmt `protobuf:"bytes,198,opt,name=alter_type_stmt,json=AlterTypeStmt,proto3,oneof"` } -type Node_RangeTableFuncCol struct { - RangeTableFuncCol *RangeTableFuncCol `protobuf:"bytes,189,opt,name=range_table_func_col,json=RangeTableFuncCol,proto3,oneof"` +type Node_RuleStmt struct { + RuleStmt *RuleStmt `protobuf:"bytes,199,opt,name=rule_stmt,json=RuleStmt,proto3,oneof"` } -type Node_TypeName struct { - TypeName *TypeName `protobuf:"bytes,190,opt,name=type_name,json=TypeName,proto3,oneof"` +type Node_NotifyStmt struct { + NotifyStmt *NotifyStmt `protobuf:"bytes,200,opt,name=notify_stmt,json=NotifyStmt,proto3,oneof"` } -type Node_ColumnDef struct { - ColumnDef *ColumnDef `protobuf:"bytes,191,opt,name=column_def,json=ColumnDef,proto3,oneof"` +type Node_ListenStmt struct { + ListenStmt *ListenStmt `protobuf:"bytes,201,opt,name=listen_stmt,json=ListenStmt,proto3,oneof"` } -type Node_IndexElem struct { - IndexElem *IndexElem `protobuf:"bytes,192,opt,name=index_elem,json=IndexElem,proto3,oneof"` +type Node_UnlistenStmt struct { + UnlistenStmt *UnlistenStmt `protobuf:"bytes,202,opt,name=unlisten_stmt,json=UnlistenStmt,proto3,oneof"` } -type Node_StatsElem struct { - StatsElem *StatsElem `protobuf:"bytes,193,opt,name=stats_elem,json=StatsElem,proto3,oneof"` +type Node_TransactionStmt struct { + TransactionStmt *TransactionStmt `protobuf:"bytes,203,opt,name=transaction_stmt,json=TransactionStmt,proto3,oneof"` } -type Node_Constraint struct { - Constraint *Constraint `protobuf:"bytes,194,opt,name=constraint,json=Constraint,proto3,oneof"` +type Node_CompositeTypeStmt struct { + CompositeTypeStmt *CompositeTypeStmt `protobuf:"bytes,204,opt,name=composite_type_stmt,json=CompositeTypeStmt,proto3,oneof"` } -type Node_DefElem struct { - DefElem *DefElem `protobuf:"bytes,195,opt,name=def_elem,json=DefElem,proto3,oneof"` +type Node_CreateEnumStmt struct { + CreateEnumStmt *CreateEnumStmt `protobuf:"bytes,205,opt,name=create_enum_stmt,json=CreateEnumStmt,proto3,oneof"` } -type Node_RangeTblEntry struct { - RangeTblEntry *RangeTblEntry `protobuf:"bytes,196,opt,name=range_tbl_entry,json=RangeTblEntry,proto3,oneof"` +type Node_CreateRangeStmt struct { + CreateRangeStmt *CreateRangeStmt `protobuf:"bytes,206,opt,name=create_range_stmt,json=CreateRangeStmt,proto3,oneof"` } -type Node_RangeTblFunction struct { - RangeTblFunction *RangeTblFunction `protobuf:"bytes,197,opt,name=range_tbl_function,json=RangeTblFunction,proto3,oneof"` +type Node_AlterEnumStmt struct { + AlterEnumStmt *AlterEnumStmt `protobuf:"bytes,207,opt,name=alter_enum_stmt,json=AlterEnumStmt,proto3,oneof"` } -type Node_TableSampleClause struct { - TableSampleClause *TableSampleClause `protobuf:"bytes,198,opt,name=table_sample_clause,json=TableSampleClause,proto3,oneof"` +type Node_ViewStmt struct { + ViewStmt *ViewStmt `protobuf:"bytes,208,opt,name=view_stmt,json=ViewStmt,proto3,oneof"` } -type Node_WithCheckOption struct { - WithCheckOption *WithCheckOption `protobuf:"bytes,199,opt,name=with_check_option,json=WithCheckOption,proto3,oneof"` +type Node_LoadStmt struct { + LoadStmt *LoadStmt `protobuf:"bytes,209,opt,name=load_stmt,json=LoadStmt,proto3,oneof"` } -type Node_SortGroupClause struct { - SortGroupClause *SortGroupClause `protobuf:"bytes,200,opt,name=sort_group_clause,json=SortGroupClause,proto3,oneof"` +type Node_CreatedbStmt struct { + CreatedbStmt *CreatedbStmt `protobuf:"bytes,210,opt,name=createdb_stmt,json=CreatedbStmt,proto3,oneof"` } -type Node_GroupingSet struct { - GroupingSet *GroupingSet `protobuf:"bytes,201,opt,name=grouping_set,json=GroupingSet,proto3,oneof"` +type Node_AlterDatabaseStmt struct { + AlterDatabaseStmt *AlterDatabaseStmt `protobuf:"bytes,211,opt,name=alter_database_stmt,json=AlterDatabaseStmt,proto3,oneof"` } -type Node_WindowClause struct { - WindowClause *WindowClause `protobuf:"bytes,202,opt,name=window_clause,json=WindowClause,proto3,oneof"` +type Node_AlterDatabaseRefreshCollStmt struct { + AlterDatabaseRefreshCollStmt *AlterDatabaseRefreshCollStmt `protobuf:"bytes,212,opt,name=alter_database_refresh_coll_stmt,json=AlterDatabaseRefreshCollStmt,proto3,oneof"` } -type Node_ObjectWithArgs struct { - ObjectWithArgs *ObjectWithArgs `protobuf:"bytes,203,opt,name=object_with_args,json=ObjectWithArgs,proto3,oneof"` +type Node_AlterDatabaseSetStmt struct { + AlterDatabaseSetStmt *AlterDatabaseSetStmt `protobuf:"bytes,213,opt,name=alter_database_set_stmt,json=AlterDatabaseSetStmt,proto3,oneof"` } -type Node_AccessPriv struct { - AccessPriv *AccessPriv `protobuf:"bytes,204,opt,name=access_priv,json=AccessPriv,proto3,oneof"` +type Node_DropdbStmt struct { + DropdbStmt *DropdbStmt `protobuf:"bytes,214,opt,name=dropdb_stmt,json=DropdbStmt,proto3,oneof"` } -type Node_CreateOpClassItem struct { - CreateOpClassItem *CreateOpClassItem `protobuf:"bytes,205,opt,name=create_op_class_item,json=CreateOpClassItem,proto3,oneof"` +type Node_AlterSystemStmt struct { + AlterSystemStmt *AlterSystemStmt `protobuf:"bytes,215,opt,name=alter_system_stmt,json=AlterSystemStmt,proto3,oneof"` } -type Node_TableLikeClause struct { - TableLikeClause *TableLikeClause `protobuf:"bytes,206,opt,name=table_like_clause,json=TableLikeClause,proto3,oneof"` +type Node_ClusterStmt struct { + ClusterStmt *ClusterStmt `protobuf:"bytes,216,opt,name=cluster_stmt,json=ClusterStmt,proto3,oneof"` } -type Node_FunctionParameter struct { - FunctionParameter *FunctionParameter `protobuf:"bytes,207,opt,name=function_parameter,json=FunctionParameter,proto3,oneof"` +type Node_VacuumStmt struct { + VacuumStmt *VacuumStmt `protobuf:"bytes,217,opt,name=vacuum_stmt,json=VacuumStmt,proto3,oneof"` } -type Node_LockingClause struct { - LockingClause *LockingClause `protobuf:"bytes,208,opt,name=locking_clause,json=LockingClause,proto3,oneof"` +type Node_VacuumRelation struct { + VacuumRelation *VacuumRelation `protobuf:"bytes,218,opt,name=vacuum_relation,json=VacuumRelation,proto3,oneof"` } -type Node_RowMarkClause struct { - RowMarkClause *RowMarkClause `protobuf:"bytes,209,opt,name=row_mark_clause,json=RowMarkClause,proto3,oneof"` +type Node_ExplainStmt struct { + ExplainStmt *ExplainStmt `protobuf:"bytes,219,opt,name=explain_stmt,json=ExplainStmt,proto3,oneof"` } -type Node_XmlSerialize struct { - XmlSerialize *XmlSerialize `protobuf:"bytes,210,opt,name=xml_serialize,json=XmlSerialize,proto3,oneof"` +type Node_CreateTableAsStmt struct { + CreateTableAsStmt *CreateTableAsStmt `protobuf:"bytes,220,opt,name=create_table_as_stmt,json=CreateTableAsStmt,proto3,oneof"` } -type Node_WithClause struct { - WithClause *WithClause `protobuf:"bytes,211,opt,name=with_clause,json=WithClause,proto3,oneof"` +type Node_RefreshMatViewStmt struct { + RefreshMatViewStmt *RefreshMatViewStmt `protobuf:"bytes,221,opt,name=refresh_mat_view_stmt,json=RefreshMatViewStmt,proto3,oneof"` } -type Node_InferClause struct { - InferClause *InferClause `protobuf:"bytes,212,opt,name=infer_clause,json=InferClause,proto3,oneof"` +type Node_CheckPointStmt struct { + CheckPointStmt *CheckPointStmt `protobuf:"bytes,222,opt,name=check_point_stmt,json=CheckPointStmt,proto3,oneof"` } -type Node_OnConflictClause struct { - OnConflictClause *OnConflictClause `protobuf:"bytes,213,opt,name=on_conflict_clause,json=OnConflictClause,proto3,oneof"` +type Node_DiscardStmt struct { + DiscardStmt *DiscardStmt `protobuf:"bytes,223,opt,name=discard_stmt,json=DiscardStmt,proto3,oneof"` } -type Node_CtesearchClause struct { - CtesearchClause *CTESearchClause `protobuf:"bytes,214,opt,name=ctesearch_clause,json=CTESearchClause,proto3,oneof"` +type Node_LockStmt struct { + LockStmt *LockStmt `protobuf:"bytes,224,opt,name=lock_stmt,json=LockStmt,proto3,oneof"` } -type Node_CtecycleClause struct { - CtecycleClause *CTECycleClause `protobuf:"bytes,215,opt,name=ctecycle_clause,json=CTECycleClause,proto3,oneof"` +type Node_ConstraintsSetStmt struct { + ConstraintsSetStmt *ConstraintsSetStmt `protobuf:"bytes,225,opt,name=constraints_set_stmt,json=ConstraintsSetStmt,proto3,oneof"` } -type Node_CommonTableExpr struct { - CommonTableExpr *CommonTableExpr `protobuf:"bytes,216,opt,name=common_table_expr,json=CommonTableExpr,proto3,oneof"` +type Node_ReindexStmt struct { + ReindexStmt *ReindexStmt `protobuf:"bytes,226,opt,name=reindex_stmt,json=ReindexStmt,proto3,oneof"` } -type Node_MergeWhenClause struct { - MergeWhenClause *MergeWhenClause `protobuf:"bytes,217,opt,name=merge_when_clause,json=MergeWhenClause,proto3,oneof"` +type Node_CreateConversionStmt struct { + CreateConversionStmt *CreateConversionStmt `protobuf:"bytes,227,opt,name=create_conversion_stmt,json=CreateConversionStmt,proto3,oneof"` } -type Node_RoleSpec struct { - RoleSpec *RoleSpec `protobuf:"bytes,218,opt,name=role_spec,json=RoleSpec,proto3,oneof"` +type Node_CreateCastStmt struct { + CreateCastStmt *CreateCastStmt `protobuf:"bytes,228,opt,name=create_cast_stmt,json=CreateCastStmt,proto3,oneof"` } -type Node_TriggerTransition struct { - TriggerTransition *TriggerTransition `protobuf:"bytes,219,opt,name=trigger_transition,json=TriggerTransition,proto3,oneof"` +type Node_CreateTransformStmt struct { + CreateTransformStmt *CreateTransformStmt `protobuf:"bytes,229,opt,name=create_transform_stmt,json=CreateTransformStmt,proto3,oneof"` } -type Node_PartitionElem struct { - PartitionElem *PartitionElem `protobuf:"bytes,220,opt,name=partition_elem,json=PartitionElem,proto3,oneof"` +type Node_PrepareStmt struct { + PrepareStmt *PrepareStmt `protobuf:"bytes,230,opt,name=prepare_stmt,json=PrepareStmt,proto3,oneof"` } -type Node_PartitionSpec struct { - PartitionSpec *PartitionSpec `protobuf:"bytes,221,opt,name=partition_spec,json=PartitionSpec,proto3,oneof"` +type Node_ExecuteStmt struct { + ExecuteStmt *ExecuteStmt `protobuf:"bytes,231,opt,name=execute_stmt,json=ExecuteStmt,proto3,oneof"` } -type Node_PartitionBoundSpec struct { - PartitionBoundSpec *PartitionBoundSpec `protobuf:"bytes,222,opt,name=partition_bound_spec,json=PartitionBoundSpec,proto3,oneof"` +type Node_DeallocateStmt struct { + DeallocateStmt *DeallocateStmt `protobuf:"bytes,232,opt,name=deallocate_stmt,json=DeallocateStmt,proto3,oneof"` } -type Node_PartitionRangeDatum struct { - PartitionRangeDatum *PartitionRangeDatum `protobuf:"bytes,223,opt,name=partition_range_datum,json=PartitionRangeDatum,proto3,oneof"` +type Node_DropOwnedStmt struct { + DropOwnedStmt *DropOwnedStmt `protobuf:"bytes,233,opt,name=drop_owned_stmt,json=DropOwnedStmt,proto3,oneof"` } -type Node_PartitionCmd struct { - PartitionCmd *PartitionCmd `protobuf:"bytes,224,opt,name=partition_cmd,json=PartitionCmd,proto3,oneof"` +type Node_ReassignOwnedStmt struct { + ReassignOwnedStmt *ReassignOwnedStmt `protobuf:"bytes,234,opt,name=reassign_owned_stmt,json=ReassignOwnedStmt,proto3,oneof"` } -type Node_VacuumRelation struct { - VacuumRelation *VacuumRelation `protobuf:"bytes,225,opt,name=vacuum_relation,json=VacuumRelation,proto3,oneof"` +type Node_AlterTsdictionaryStmt struct { + AlterTsdictionaryStmt *AlterTSDictionaryStmt `protobuf:"bytes,235,opt,name=alter_tsdictionary_stmt,json=AlterTSDictionaryStmt,proto3,oneof"` } -type Node_PublicationObjSpec struct { - PublicationObjSpec *PublicationObjSpec `protobuf:"bytes,226,opt,name=publication_obj_spec,json=PublicationObjSpec,proto3,oneof"` +type Node_AlterTsconfigurationStmt struct { + AlterTsconfigurationStmt *AlterTSConfigurationStmt `protobuf:"bytes,236,opt,name=alter_tsconfiguration_stmt,json=AlterTSConfigurationStmt,proto3,oneof"` } type Node_PublicationTable struct { - PublicationTable *PublicationTable `protobuf:"bytes,227,opt,name=publication_table,json=PublicationTable,proto3,oneof"` + PublicationTable *PublicationTable `protobuf:"bytes,237,opt,name=publication_table,json=PublicationTable,proto3,oneof"` } -type Node_InlineCodeBlock struct { - InlineCodeBlock *InlineCodeBlock `protobuf:"bytes,228,opt,name=inline_code_block,json=InlineCodeBlock,proto3,oneof"` +type Node_PublicationObjSpec struct { + PublicationObjSpec *PublicationObjSpec `protobuf:"bytes,238,opt,name=publication_obj_spec,json=PublicationObjSpec,proto3,oneof"` } -type Node_CallContext struct { - CallContext *CallContext `protobuf:"bytes,229,opt,name=call_context,json=CallContext,proto3,oneof"` +type Node_CreatePublicationStmt struct { + CreatePublicationStmt *CreatePublicationStmt `protobuf:"bytes,239,opt,name=create_publication_stmt,json=CreatePublicationStmt,proto3,oneof"` +} + +type Node_AlterPublicationStmt struct { + AlterPublicationStmt *AlterPublicationStmt `protobuf:"bytes,240,opt,name=alter_publication_stmt,json=AlterPublicationStmt,proto3,oneof"` +} + +type Node_CreateSubscriptionStmt struct { + CreateSubscriptionStmt *CreateSubscriptionStmt `protobuf:"bytes,241,opt,name=create_subscription_stmt,json=CreateSubscriptionStmt,proto3,oneof"` +} + +type Node_AlterSubscriptionStmt struct { + AlterSubscriptionStmt *AlterSubscriptionStmt `protobuf:"bytes,242,opt,name=alter_subscription_stmt,json=AlterSubscriptionStmt,proto3,oneof"` +} + +type Node_DropSubscriptionStmt struct { + DropSubscriptionStmt *DropSubscriptionStmt `protobuf:"bytes,243,opt,name=drop_subscription_stmt,json=DropSubscriptionStmt,proto3,oneof"` } type Node_Integer struct { - Integer *Integer `protobuf:"bytes,230,opt,name=integer,json=Integer,proto3,oneof"` + Integer *Integer `protobuf:"bytes,244,opt,name=integer,json=Integer,proto3,oneof"` } type Node_Float struct { - Float *Float `protobuf:"bytes,231,opt,name=float,json=Float,proto3,oneof"` + Float *Float `protobuf:"bytes,245,opt,name=float,json=Float,proto3,oneof"` } type Node_Boolean struct { - Boolean *Boolean `protobuf:"bytes,232,opt,name=boolean,json=Boolean,proto3,oneof"` + Boolean *Boolean `protobuf:"bytes,246,opt,name=boolean,json=Boolean,proto3,oneof"` } type Node_String_ struct { - String_ *String `protobuf:"bytes,233,opt,name=string,json=String,proto3,oneof"` + String_ *String `protobuf:"bytes,247,opt,name=string,json=String,proto3,oneof"` } type Node_BitString struct { - BitString *BitString `protobuf:"bytes,234,opt,name=bit_string,json=BitString,proto3,oneof"` + BitString *BitString `protobuf:"bytes,248,opt,name=bit_string,json=BitString,proto3,oneof"` } type Node_List struct { - List *List `protobuf:"bytes,235,opt,name=list,json=List,proto3,oneof"` + List *List `protobuf:"bytes,249,opt,name=list,json=List,proto3,oneof"` } type Node_IntList struct { - IntList *IntList `protobuf:"bytes,236,opt,name=int_list,json=IntList,proto3,oneof"` + IntList *IntList `protobuf:"bytes,250,opt,name=int_list,json=IntList,proto3,oneof"` } type Node_OidList struct { - OidList *OidList `protobuf:"bytes,237,opt,name=oid_list,json=OidList,proto3,oneof"` + OidList *OidList `protobuf:"bytes,251,opt,name=oid_list,json=OidList,proto3,oneof"` } type Node_AConst struct { - AConst *A_Const `protobuf:"bytes,238,opt,name=a_const,json=A_Const,proto3,oneof"` + AConst *A_Const `protobuf:"bytes,252,opt,name=a_const,json=A_Const,proto3,oneof"` } func (*Node_Alias) isNode_Node() {} @@ -8327,6 +8794,8 @@ func (*Node_RangeVar) isNode_Node() {} func (*Node_TableFunc) isNode_Node() {} +func (*Node_IntoClause) isNode_Node() {} + func (*Node_Var) isNode_Node() {} func (*Node_Param) isNode_Node() {} @@ -8393,6 +8862,16 @@ func (*Node_SqlvalueFunction) isNode_Node() {} func (*Node_XmlExpr) isNode_Node() {} +func (*Node_JsonFormat) isNode_Node() {} + +func (*Node_JsonReturning) isNode_Node() {} + +func (*Node_JsonValueExpr) isNode_Node() {} + +func (*Node_JsonConstructorExpr) isNode_Node() {} + +func (*Node_JsonIsPredicate) isNode_Node() {} + func (*Node_NullTest) isNode_Node() {} func (*Node_BooleanTest) isNode_Node() {} @@ -8419,181 +8898,187 @@ func (*Node_FromExpr) isNode_Node() {} func (*Node_OnConflictExpr) isNode_Node() {} -func (*Node_IntoClause) isNode_Node() {} +func (*Node_Query) isNode_Node() {} -func (*Node_MergeAction) isNode_Node() {} +func (*Node_TypeName) isNode_Node() {} -func (*Node_RawStmt) isNode_Node() {} +func (*Node_ColumnRef) isNode_Node() {} -func (*Node_Query) isNode_Node() {} +func (*Node_ParamRef) isNode_Node() {} -func (*Node_InsertStmt) isNode_Node() {} +func (*Node_AExpr) isNode_Node() {} -func (*Node_DeleteStmt) isNode_Node() {} +func (*Node_TypeCast) isNode_Node() {} -func (*Node_UpdateStmt) isNode_Node() {} +func (*Node_CollateClause) isNode_Node() {} -func (*Node_MergeStmt) isNode_Node() {} +func (*Node_RoleSpec) isNode_Node() {} -func (*Node_SelectStmt) isNode_Node() {} +func (*Node_FuncCall) isNode_Node() {} -func (*Node_ReturnStmt) isNode_Node() {} +func (*Node_AStar) isNode_Node() {} -func (*Node_PlassignStmt) isNode_Node() {} +func (*Node_AIndices) isNode_Node() {} -func (*Node_AlterTableStmt) isNode_Node() {} +func (*Node_AIndirection) isNode_Node() {} -func (*Node_AlterTableCmd) isNode_Node() {} +func (*Node_AArrayExpr) isNode_Node() {} -func (*Node_AlterDomainStmt) isNode_Node() {} +func (*Node_ResTarget) isNode_Node() {} -func (*Node_SetOperationStmt) isNode_Node() {} +func (*Node_MultiAssignRef) isNode_Node() {} -func (*Node_GrantStmt) isNode_Node() {} +func (*Node_SortBy) isNode_Node() {} -func (*Node_GrantRoleStmt) isNode_Node() {} +func (*Node_WindowDef) isNode_Node() {} -func (*Node_AlterDefaultPrivilegesStmt) isNode_Node() {} +func (*Node_RangeSubselect) isNode_Node() {} -func (*Node_ClosePortalStmt) isNode_Node() {} +func (*Node_RangeFunction) isNode_Node() {} -func (*Node_ClusterStmt) isNode_Node() {} +func (*Node_RangeTableFunc) isNode_Node() {} -func (*Node_CopyStmt) isNode_Node() {} +func (*Node_RangeTableFuncCol) isNode_Node() {} -func (*Node_CreateStmt) isNode_Node() {} +func (*Node_RangeTableSample) isNode_Node() {} -func (*Node_DefineStmt) isNode_Node() {} +func (*Node_ColumnDef) isNode_Node() {} -func (*Node_DropStmt) isNode_Node() {} +func (*Node_TableLikeClause) isNode_Node() {} -func (*Node_TruncateStmt) isNode_Node() {} +func (*Node_IndexElem) isNode_Node() {} -func (*Node_CommentStmt) isNode_Node() {} +func (*Node_DefElem) isNode_Node() {} -func (*Node_FetchStmt) isNode_Node() {} +func (*Node_LockingClause) isNode_Node() {} -func (*Node_IndexStmt) isNode_Node() {} +func (*Node_XmlSerialize) isNode_Node() {} -func (*Node_CreateFunctionStmt) isNode_Node() {} +func (*Node_PartitionElem) isNode_Node() {} -func (*Node_AlterFunctionStmt) isNode_Node() {} +func (*Node_PartitionSpec) isNode_Node() {} -func (*Node_DoStmt) isNode_Node() {} +func (*Node_PartitionBoundSpec) isNode_Node() {} -func (*Node_RenameStmt) isNode_Node() {} +func (*Node_PartitionRangeDatum) isNode_Node() {} -func (*Node_RuleStmt) isNode_Node() {} +func (*Node_PartitionCmd) isNode_Node() {} -func (*Node_NotifyStmt) isNode_Node() {} +func (*Node_RangeTblEntry) isNode_Node() {} -func (*Node_ListenStmt) isNode_Node() {} +func (*Node_RtepermissionInfo) isNode_Node() {} -func (*Node_UnlistenStmt) isNode_Node() {} +func (*Node_RangeTblFunction) isNode_Node() {} -func (*Node_TransactionStmt) isNode_Node() {} +func (*Node_TableSampleClause) isNode_Node() {} -func (*Node_ViewStmt) isNode_Node() {} +func (*Node_WithCheckOption) isNode_Node() {} -func (*Node_LoadStmt) isNode_Node() {} +func (*Node_SortGroupClause) isNode_Node() {} -func (*Node_CreateDomainStmt) isNode_Node() {} +func (*Node_GroupingSet) isNode_Node() {} -func (*Node_CreatedbStmt) isNode_Node() {} +func (*Node_WindowClause) isNode_Node() {} -func (*Node_DropdbStmt) isNode_Node() {} +func (*Node_RowMarkClause) isNode_Node() {} -func (*Node_VacuumStmt) isNode_Node() {} +func (*Node_WithClause) isNode_Node() {} -func (*Node_ExplainStmt) isNode_Node() {} +func (*Node_InferClause) isNode_Node() {} -func (*Node_CreateTableAsStmt) isNode_Node() {} +func (*Node_OnConflictClause) isNode_Node() {} -func (*Node_CreateSeqStmt) isNode_Node() {} +func (*Node_CtesearchClause) isNode_Node() {} -func (*Node_AlterSeqStmt) isNode_Node() {} +func (*Node_CtecycleClause) isNode_Node() {} -func (*Node_VariableSetStmt) isNode_Node() {} +func (*Node_CommonTableExpr) isNode_Node() {} -func (*Node_VariableShowStmt) isNode_Node() {} +func (*Node_MergeWhenClause) isNode_Node() {} -func (*Node_DiscardStmt) isNode_Node() {} +func (*Node_MergeAction) isNode_Node() {} -func (*Node_CreateTrigStmt) isNode_Node() {} +func (*Node_TriggerTransition) isNode_Node() {} -func (*Node_CreatePlangStmt) isNode_Node() {} +func (*Node_JsonOutput) isNode_Node() {} -func (*Node_CreateRoleStmt) isNode_Node() {} +func (*Node_JsonKeyValue) isNode_Node() {} -func (*Node_AlterRoleStmt) isNode_Node() {} +func (*Node_JsonObjectConstructor) isNode_Node() {} -func (*Node_DropRoleStmt) isNode_Node() {} +func (*Node_JsonArrayConstructor) isNode_Node() {} -func (*Node_LockStmt) isNode_Node() {} +func (*Node_JsonArrayQueryConstructor) isNode_Node() {} -func (*Node_ConstraintsSetStmt) isNode_Node() {} +func (*Node_JsonAggConstructor) isNode_Node() {} -func (*Node_ReindexStmt) isNode_Node() {} +func (*Node_JsonObjectAgg) isNode_Node() {} -func (*Node_CheckPointStmt) isNode_Node() {} +func (*Node_JsonArrayAgg) isNode_Node() {} -func (*Node_CreateSchemaStmt) isNode_Node() {} +func (*Node_RawStmt) isNode_Node() {} -func (*Node_AlterDatabaseStmt) isNode_Node() {} +func (*Node_InsertStmt) isNode_Node() {} -func (*Node_AlterDatabaseRefreshCollStmt) isNode_Node() {} +func (*Node_DeleteStmt) isNode_Node() {} -func (*Node_AlterDatabaseSetStmt) isNode_Node() {} +func (*Node_UpdateStmt) isNode_Node() {} -func (*Node_AlterRoleSetStmt) isNode_Node() {} +func (*Node_MergeStmt) isNode_Node() {} -func (*Node_CreateConversionStmt) isNode_Node() {} +func (*Node_SelectStmt) isNode_Node() {} -func (*Node_CreateCastStmt) isNode_Node() {} +func (*Node_SetOperationStmt) isNode_Node() {} -func (*Node_CreateOpClassStmt) isNode_Node() {} +func (*Node_ReturnStmt) isNode_Node() {} -func (*Node_CreateOpFamilyStmt) isNode_Node() {} +func (*Node_PlassignStmt) isNode_Node() {} -func (*Node_AlterOpFamilyStmt) isNode_Node() {} +func (*Node_CreateSchemaStmt) isNode_Node() {} -func (*Node_PrepareStmt) isNode_Node() {} +func (*Node_AlterTableStmt) isNode_Node() {} -func (*Node_ExecuteStmt) isNode_Node() {} +func (*Node_ReplicaIdentityStmt) isNode_Node() {} -func (*Node_DeallocateStmt) isNode_Node() {} +func (*Node_AlterTableCmd) isNode_Node() {} -func (*Node_DeclareCursorStmt) isNode_Node() {} +func (*Node_AlterCollationStmt) isNode_Node() {} -func (*Node_CreateTableSpaceStmt) isNode_Node() {} +func (*Node_AlterDomainStmt) isNode_Node() {} -func (*Node_DropTableSpaceStmt) isNode_Node() {} +func (*Node_GrantStmt) isNode_Node() {} -func (*Node_AlterObjectDependsStmt) isNode_Node() {} +func (*Node_ObjectWithArgs) isNode_Node() {} -func (*Node_AlterObjectSchemaStmt) isNode_Node() {} +func (*Node_AccessPriv) isNode_Node() {} -func (*Node_AlterOwnerStmt) isNode_Node() {} +func (*Node_GrantRoleStmt) isNode_Node() {} -func (*Node_AlterOperatorStmt) isNode_Node() {} +func (*Node_AlterDefaultPrivilegesStmt) isNode_Node() {} -func (*Node_AlterTypeStmt) isNode_Node() {} +func (*Node_CopyStmt) isNode_Node() {} -func (*Node_DropOwnedStmt) isNode_Node() {} +func (*Node_VariableSetStmt) isNode_Node() {} -func (*Node_ReassignOwnedStmt) isNode_Node() {} +func (*Node_VariableShowStmt) isNode_Node() {} -func (*Node_CompositeTypeStmt) isNode_Node() {} +func (*Node_CreateStmt) isNode_Node() {} -func (*Node_CreateEnumStmt) isNode_Node() {} +func (*Node_Constraint) isNode_Node() {} -func (*Node_CreateRangeStmt) isNode_Node() {} +func (*Node_CreateTableSpaceStmt) isNode_Node() {} -func (*Node_AlterEnumStmt) isNode_Node() {} +func (*Node_DropTableSpaceStmt) isNode_Node() {} -func (*Node_AlterTsdictionaryStmt) isNode_Node() {} +func (*Node_AlterTableSpaceOptionsStmt) isNode_Node() {} -func (*Node_AlterTsconfigurationStmt) isNode_Node() {} +func (*Node_AlterTableMoveAllStmt) isNode_Node() {} + +func (*Node_CreateExtensionStmt) isNode_Node() {} + +func (*Node_AlterExtensionStmt) isNode_Node() {} + +func (*Node_AlterExtensionContentsStmt) isNode_Node() {} func (*Node_CreateFdwStmt) isNode_Node() {} @@ -8603,181 +9088,191 @@ func (*Node_CreateForeignServerStmt) isNode_Node() {} func (*Node_AlterForeignServerStmt) isNode_Node() {} +func (*Node_CreateForeignTableStmt) isNode_Node() {} + func (*Node_CreateUserMappingStmt) isNode_Node() {} func (*Node_AlterUserMappingStmt) isNode_Node() {} func (*Node_DropUserMappingStmt) isNode_Node() {} -func (*Node_AlterTableSpaceOptionsStmt) isNode_Node() {} +func (*Node_ImportForeignSchemaStmt) isNode_Node() {} -func (*Node_AlterTableMoveAllStmt) isNode_Node() {} +func (*Node_CreatePolicyStmt) isNode_Node() {} -func (*Node_SecLabelStmt) isNode_Node() {} +func (*Node_AlterPolicyStmt) isNode_Node() {} -func (*Node_CreateForeignTableStmt) isNode_Node() {} +func (*Node_CreateAmStmt) isNode_Node() {} -func (*Node_ImportForeignSchemaStmt) isNode_Node() {} +func (*Node_CreateTrigStmt) isNode_Node() {} -func (*Node_CreateExtensionStmt) isNode_Node() {} +func (*Node_CreateEventTrigStmt) isNode_Node() {} -func (*Node_AlterExtensionStmt) isNode_Node() {} +func (*Node_AlterEventTrigStmt) isNode_Node() {} -func (*Node_AlterExtensionContentsStmt) isNode_Node() {} +func (*Node_CreatePlangStmt) isNode_Node() {} -func (*Node_CreateEventTrigStmt) isNode_Node() {} +func (*Node_CreateRoleStmt) isNode_Node() {} -func (*Node_AlterEventTrigStmt) isNode_Node() {} +func (*Node_AlterRoleStmt) isNode_Node() {} -func (*Node_RefreshMatViewStmt) isNode_Node() {} +func (*Node_AlterRoleSetStmt) isNode_Node() {} -func (*Node_ReplicaIdentityStmt) isNode_Node() {} +func (*Node_DropRoleStmt) isNode_Node() {} -func (*Node_AlterSystemStmt) isNode_Node() {} +func (*Node_CreateSeqStmt) isNode_Node() {} -func (*Node_CreatePolicyStmt) isNode_Node() {} +func (*Node_AlterSeqStmt) isNode_Node() {} -func (*Node_AlterPolicyStmt) isNode_Node() {} +func (*Node_DefineStmt) isNode_Node() {} -func (*Node_CreateTransformStmt) isNode_Node() {} +func (*Node_CreateDomainStmt) isNode_Node() {} -func (*Node_CreateAmStmt) isNode_Node() {} +func (*Node_CreateOpClassStmt) isNode_Node() {} -func (*Node_CreatePublicationStmt) isNode_Node() {} +func (*Node_CreateOpClassItem) isNode_Node() {} -func (*Node_AlterPublicationStmt) isNode_Node() {} +func (*Node_CreateOpFamilyStmt) isNode_Node() {} -func (*Node_CreateSubscriptionStmt) isNode_Node() {} +func (*Node_AlterOpFamilyStmt) isNode_Node() {} -func (*Node_AlterSubscriptionStmt) isNode_Node() {} +func (*Node_DropStmt) isNode_Node() {} -func (*Node_DropSubscriptionStmt) isNode_Node() {} +func (*Node_TruncateStmt) isNode_Node() {} -func (*Node_CreateStatsStmt) isNode_Node() {} +func (*Node_CommentStmt) isNode_Node() {} -func (*Node_AlterCollationStmt) isNode_Node() {} +func (*Node_SecLabelStmt) isNode_Node() {} -func (*Node_CallStmt) isNode_Node() {} +func (*Node_DeclareCursorStmt) isNode_Node() {} -func (*Node_AlterStatsStmt) isNode_Node() {} +func (*Node_ClosePortalStmt) isNode_Node() {} -func (*Node_AExpr) isNode_Node() {} +func (*Node_FetchStmt) isNode_Node() {} -func (*Node_ColumnRef) isNode_Node() {} +func (*Node_IndexStmt) isNode_Node() {} -func (*Node_ParamRef) isNode_Node() {} +func (*Node_CreateStatsStmt) isNode_Node() {} -func (*Node_FuncCall) isNode_Node() {} +func (*Node_StatsElem) isNode_Node() {} -func (*Node_AStar) isNode_Node() {} +func (*Node_AlterStatsStmt) isNode_Node() {} -func (*Node_AIndices) isNode_Node() {} +func (*Node_CreateFunctionStmt) isNode_Node() {} -func (*Node_AIndirection) isNode_Node() {} +func (*Node_FunctionParameter) isNode_Node() {} -func (*Node_AArrayExpr) isNode_Node() {} +func (*Node_AlterFunctionStmt) isNode_Node() {} -func (*Node_ResTarget) isNode_Node() {} +func (*Node_DoStmt) isNode_Node() {} -func (*Node_MultiAssignRef) isNode_Node() {} +func (*Node_InlineCodeBlock) isNode_Node() {} -func (*Node_TypeCast) isNode_Node() {} +func (*Node_CallStmt) isNode_Node() {} -func (*Node_CollateClause) isNode_Node() {} +func (*Node_CallContext) isNode_Node() {} -func (*Node_SortBy) isNode_Node() {} +func (*Node_RenameStmt) isNode_Node() {} -func (*Node_WindowDef) isNode_Node() {} +func (*Node_AlterObjectDependsStmt) isNode_Node() {} -func (*Node_RangeSubselect) isNode_Node() {} +func (*Node_AlterObjectSchemaStmt) isNode_Node() {} -func (*Node_RangeFunction) isNode_Node() {} +func (*Node_AlterOwnerStmt) isNode_Node() {} -func (*Node_RangeTableSample) isNode_Node() {} +func (*Node_AlterOperatorStmt) isNode_Node() {} -func (*Node_RangeTableFunc) isNode_Node() {} +func (*Node_AlterTypeStmt) isNode_Node() {} -func (*Node_RangeTableFuncCol) isNode_Node() {} +func (*Node_RuleStmt) isNode_Node() {} -func (*Node_TypeName) isNode_Node() {} +func (*Node_NotifyStmt) isNode_Node() {} -func (*Node_ColumnDef) isNode_Node() {} +func (*Node_ListenStmt) isNode_Node() {} -func (*Node_IndexElem) isNode_Node() {} +func (*Node_UnlistenStmt) isNode_Node() {} -func (*Node_StatsElem) isNode_Node() {} +func (*Node_TransactionStmt) isNode_Node() {} -func (*Node_Constraint) isNode_Node() {} +func (*Node_CompositeTypeStmt) isNode_Node() {} -func (*Node_DefElem) isNode_Node() {} +func (*Node_CreateEnumStmt) isNode_Node() {} -func (*Node_RangeTblEntry) isNode_Node() {} +func (*Node_CreateRangeStmt) isNode_Node() {} -func (*Node_RangeTblFunction) isNode_Node() {} +func (*Node_AlterEnumStmt) isNode_Node() {} -func (*Node_TableSampleClause) isNode_Node() {} +func (*Node_ViewStmt) isNode_Node() {} -func (*Node_WithCheckOption) isNode_Node() {} +func (*Node_LoadStmt) isNode_Node() {} -func (*Node_SortGroupClause) isNode_Node() {} +func (*Node_CreatedbStmt) isNode_Node() {} -func (*Node_GroupingSet) isNode_Node() {} +func (*Node_AlterDatabaseStmt) isNode_Node() {} -func (*Node_WindowClause) isNode_Node() {} +func (*Node_AlterDatabaseRefreshCollStmt) isNode_Node() {} -func (*Node_ObjectWithArgs) isNode_Node() {} +func (*Node_AlterDatabaseSetStmt) isNode_Node() {} -func (*Node_AccessPriv) isNode_Node() {} +func (*Node_DropdbStmt) isNode_Node() {} -func (*Node_CreateOpClassItem) isNode_Node() {} +func (*Node_AlterSystemStmt) isNode_Node() {} -func (*Node_TableLikeClause) isNode_Node() {} +func (*Node_ClusterStmt) isNode_Node() {} -func (*Node_FunctionParameter) isNode_Node() {} +func (*Node_VacuumStmt) isNode_Node() {} -func (*Node_LockingClause) isNode_Node() {} +func (*Node_VacuumRelation) isNode_Node() {} -func (*Node_RowMarkClause) isNode_Node() {} +func (*Node_ExplainStmt) isNode_Node() {} -func (*Node_XmlSerialize) isNode_Node() {} +func (*Node_CreateTableAsStmt) isNode_Node() {} -func (*Node_WithClause) isNode_Node() {} +func (*Node_RefreshMatViewStmt) isNode_Node() {} -func (*Node_InferClause) isNode_Node() {} +func (*Node_CheckPointStmt) isNode_Node() {} -func (*Node_OnConflictClause) isNode_Node() {} +func (*Node_DiscardStmt) isNode_Node() {} -func (*Node_CtesearchClause) isNode_Node() {} +func (*Node_LockStmt) isNode_Node() {} -func (*Node_CtecycleClause) isNode_Node() {} +func (*Node_ConstraintsSetStmt) isNode_Node() {} -func (*Node_CommonTableExpr) isNode_Node() {} +func (*Node_ReindexStmt) isNode_Node() {} -func (*Node_MergeWhenClause) isNode_Node() {} +func (*Node_CreateConversionStmt) isNode_Node() {} -func (*Node_RoleSpec) isNode_Node() {} +func (*Node_CreateCastStmt) isNode_Node() {} -func (*Node_TriggerTransition) isNode_Node() {} +func (*Node_CreateTransformStmt) isNode_Node() {} -func (*Node_PartitionElem) isNode_Node() {} +func (*Node_PrepareStmt) isNode_Node() {} -func (*Node_PartitionSpec) isNode_Node() {} +func (*Node_ExecuteStmt) isNode_Node() {} -func (*Node_PartitionBoundSpec) isNode_Node() {} +func (*Node_DeallocateStmt) isNode_Node() {} -func (*Node_PartitionRangeDatum) isNode_Node() {} +func (*Node_DropOwnedStmt) isNode_Node() {} -func (*Node_PartitionCmd) isNode_Node() {} +func (*Node_ReassignOwnedStmt) isNode_Node() {} -func (*Node_VacuumRelation) isNode_Node() {} +func (*Node_AlterTsdictionaryStmt) isNode_Node() {} -func (*Node_PublicationObjSpec) isNode_Node() {} +func (*Node_AlterTsconfigurationStmt) isNode_Node() {} func (*Node_PublicationTable) isNode_Node() {} -func (*Node_InlineCodeBlock) isNode_Node() {} +func (*Node_PublicationObjSpec) isNode_Node() {} -func (*Node_CallContext) isNode_Node() {} +func (*Node_CreatePublicationStmt) isNode_Node() {} + +func (*Node_AlterPublicationStmt) isNode_Node() {} + +func (*Node_CreateSubscriptionStmt) isNode_Node() {} + +func (*Node_AlterSubscriptionStmt) isNode_Node() {} + +func (*Node_DropSubscriptionStmt) isNode_Node() {} func (*Node_Integer) isNode_Node() {} @@ -9605,27 +10100,129 @@ func (x *TableFunc) GetLocation() int32 { return 0 } -type Var struct { +type IntoClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - Varno int32 `protobuf:"varint,2,opt,name=varno,proto3" json:"varno,omitempty"` - Varattno int32 `protobuf:"varint,3,opt,name=varattno,proto3" json:"varattno,omitempty"` - Vartype uint32 `protobuf:"varint,4,opt,name=vartype,proto3" json:"vartype,omitempty"` - Vartypmod int32 `protobuf:"varint,5,opt,name=vartypmod,proto3" json:"vartypmod,omitempty"` - Varcollid uint32 `protobuf:"varint,6,opt,name=varcollid,proto3" json:"varcollid,omitempty"` - Varlevelsup uint32 `protobuf:"varint,7,opt,name=varlevelsup,proto3" json:"varlevelsup,omitempty"` - Varnosyn uint32 `protobuf:"varint,8,opt,name=varnosyn,proto3" json:"varnosyn,omitempty"` - Varattnosyn int32 `protobuf:"varint,9,opt,name=varattnosyn,proto3" json:"varattnosyn,omitempty"` - Location int32 `protobuf:"varint,10,opt,name=location,proto3" json:"location,omitempty"` -} - + Rel *RangeVar `protobuf:"bytes,1,opt,name=rel,proto3" json:"rel,omitempty"` + ColNames []*Node `protobuf:"bytes,2,rep,name=col_names,json=colNames,proto3" json:"col_names,omitempty"` + AccessMethod string `protobuf:"bytes,3,opt,name=access_method,json=accessMethod,proto3" json:"access_method,omitempty"` + Options []*Node `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"` + OnCommit OnCommitAction `protobuf:"varint,5,opt,name=on_commit,json=onCommit,proto3,enum=pg_query.OnCommitAction" json:"on_commit,omitempty"` + TableSpaceName string `protobuf:"bytes,6,opt,name=table_space_name,json=tableSpaceName,proto3" json:"table_space_name,omitempty"` + ViewQuery *Node `protobuf:"bytes,7,opt,name=view_query,json=viewQuery,proto3" json:"view_query,omitempty"` + SkipData bool `protobuf:"varint,8,opt,name=skip_data,json=skipData,proto3" json:"skip_data,omitempty"` +} + +func (x *IntoClause) Reset() { + *x = IntoClause{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *IntoClause) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*IntoClause) ProtoMessage() {} + +func (x *IntoClause) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use IntoClause.ProtoReflect.Descriptor instead. +func (*IntoClause) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{15} +} + +func (x *IntoClause) GetRel() *RangeVar { + if x != nil { + return x.Rel + } + return nil +} + +func (x *IntoClause) GetColNames() []*Node { + if x != nil { + return x.ColNames + } + return nil +} + +func (x *IntoClause) GetAccessMethod() string { + if x != nil { + return x.AccessMethod + } + return "" +} + +func (x *IntoClause) GetOptions() []*Node { + if x != nil { + return x.Options + } + return nil +} + +func (x *IntoClause) GetOnCommit() OnCommitAction { + if x != nil { + return x.OnCommit + } + return OnCommitAction_ON_COMMIT_ACTION_UNDEFINED +} + +func (x *IntoClause) GetTableSpaceName() string { + if x != nil { + return x.TableSpaceName + } + return "" +} + +func (x *IntoClause) GetViewQuery() *Node { + if x != nil { + return x.ViewQuery + } + return nil +} + +func (x *IntoClause) GetSkipData() bool { + if x != nil { + return x.SkipData + } + return false +} + +type Var struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + Varno int32 `protobuf:"varint,2,opt,name=varno,proto3" json:"varno,omitempty"` + Varattno int32 `protobuf:"varint,3,opt,name=varattno,proto3" json:"varattno,omitempty"` + Vartype uint32 `protobuf:"varint,4,opt,name=vartype,proto3" json:"vartype,omitempty"` + Vartypmod int32 `protobuf:"varint,5,opt,name=vartypmod,proto3" json:"vartypmod,omitempty"` + Varcollid uint32 `protobuf:"varint,6,opt,name=varcollid,proto3" json:"varcollid,omitempty"` + Varnullingrels []uint64 `protobuf:"varint,7,rep,packed,name=varnullingrels,proto3" json:"varnullingrels,omitempty"` + Varlevelsup uint32 `protobuf:"varint,8,opt,name=varlevelsup,proto3" json:"varlevelsup,omitempty"` + Location int32 `protobuf:"varint,9,opt,name=location,proto3" json:"location,omitempty"` +} + func (x *Var) Reset() { *x = Var{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[15] + mi := &file_pg_query_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9638,7 +10235,7 @@ func (x *Var) String() string { func (*Var) ProtoMessage() {} func (x *Var) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[15] + mi := &file_pg_query_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9651,7 +10248,7 @@ func (x *Var) ProtoReflect() protoreflect.Message { // Deprecated: Use Var.ProtoReflect.Descriptor instead. func (*Var) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{15} + return file_pg_query_proto_rawDescGZIP(), []int{16} } func (x *Var) GetXpr() *Node { @@ -9696,23 +10293,16 @@ func (x *Var) GetVarcollid() uint32 { return 0 } -func (x *Var) GetVarlevelsup() uint32 { - if x != nil { - return x.Varlevelsup - } - return 0 -} - -func (x *Var) GetVarnosyn() uint32 { +func (x *Var) GetVarnullingrels() []uint64 { if x != nil { - return x.Varnosyn + return x.Varnullingrels } - return 0 + return nil } -func (x *Var) GetVarattnosyn() int32 { +func (x *Var) GetVarlevelsup() uint32 { if x != nil { - return x.Varattnosyn + return x.Varlevelsup } return 0 } @@ -9741,7 +10331,7 @@ type Param struct { func (x *Param) Reset() { *x = Param{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[16] + mi := &file_pg_query_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9754,7 +10344,7 @@ func (x *Param) String() string { func (*Param) ProtoMessage() {} func (x *Param) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[16] + mi := &file_pg_query_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9767,7 +10357,7 @@ func (x *Param) ProtoReflect() protoreflect.Message { // Deprecated: Use Param.ProtoReflect.Descriptor instead. func (*Param) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{16} + return file_pg_query_proto_rawDescGZIP(), []int{17} } func (x *Param) GetXpr() *Node { @@ -9829,27 +10419,26 @@ type Aggref struct { Aggtype uint32 `protobuf:"varint,3,opt,name=aggtype,proto3" json:"aggtype,omitempty"` Aggcollid uint32 `protobuf:"varint,4,opt,name=aggcollid,proto3" json:"aggcollid,omitempty"` Inputcollid uint32 `protobuf:"varint,5,opt,name=inputcollid,proto3" json:"inputcollid,omitempty"` - Aggtranstype uint32 `protobuf:"varint,6,opt,name=aggtranstype,proto3" json:"aggtranstype,omitempty"` - Aggargtypes []*Node `protobuf:"bytes,7,rep,name=aggargtypes,proto3" json:"aggargtypes,omitempty"` - Aggdirectargs []*Node `protobuf:"bytes,8,rep,name=aggdirectargs,proto3" json:"aggdirectargs,omitempty"` - Args []*Node `protobuf:"bytes,9,rep,name=args,proto3" json:"args,omitempty"` - Aggorder []*Node `protobuf:"bytes,10,rep,name=aggorder,proto3" json:"aggorder,omitempty"` - Aggdistinct []*Node `protobuf:"bytes,11,rep,name=aggdistinct,proto3" json:"aggdistinct,omitempty"` - Aggfilter *Node `protobuf:"bytes,12,opt,name=aggfilter,proto3" json:"aggfilter,omitempty"` - Aggstar bool `protobuf:"varint,13,opt,name=aggstar,proto3" json:"aggstar,omitempty"` - Aggvariadic bool `protobuf:"varint,14,opt,name=aggvariadic,proto3" json:"aggvariadic,omitempty"` - Aggkind string `protobuf:"bytes,15,opt,name=aggkind,proto3" json:"aggkind,omitempty"` - Agglevelsup uint32 `protobuf:"varint,16,opt,name=agglevelsup,proto3" json:"agglevelsup,omitempty"` - Aggsplit AggSplit `protobuf:"varint,17,opt,name=aggsplit,proto3,enum=pg_query.AggSplit" json:"aggsplit,omitempty"` - Aggno int32 `protobuf:"varint,18,opt,name=aggno,proto3" json:"aggno,omitempty"` - Aggtransno int32 `protobuf:"varint,19,opt,name=aggtransno,proto3" json:"aggtransno,omitempty"` - Location int32 `protobuf:"varint,20,opt,name=location,proto3" json:"location,omitempty"` + Aggargtypes []*Node `protobuf:"bytes,6,rep,name=aggargtypes,proto3" json:"aggargtypes,omitempty"` + Aggdirectargs []*Node `protobuf:"bytes,7,rep,name=aggdirectargs,proto3" json:"aggdirectargs,omitempty"` + Args []*Node `protobuf:"bytes,8,rep,name=args,proto3" json:"args,omitempty"` + Aggorder []*Node `protobuf:"bytes,9,rep,name=aggorder,proto3" json:"aggorder,omitempty"` + Aggdistinct []*Node `protobuf:"bytes,10,rep,name=aggdistinct,proto3" json:"aggdistinct,omitempty"` + Aggfilter *Node `protobuf:"bytes,11,opt,name=aggfilter,proto3" json:"aggfilter,omitempty"` + Aggstar bool `protobuf:"varint,12,opt,name=aggstar,proto3" json:"aggstar,omitempty"` + Aggvariadic bool `protobuf:"varint,13,opt,name=aggvariadic,proto3" json:"aggvariadic,omitempty"` + Aggkind string `protobuf:"bytes,14,opt,name=aggkind,proto3" json:"aggkind,omitempty"` + Agglevelsup uint32 `protobuf:"varint,15,opt,name=agglevelsup,proto3" json:"agglevelsup,omitempty"` + Aggsplit AggSplit `protobuf:"varint,16,opt,name=aggsplit,proto3,enum=pg_query.AggSplit" json:"aggsplit,omitempty"` + Aggno int32 `protobuf:"varint,17,opt,name=aggno,proto3" json:"aggno,omitempty"` + Aggtransno int32 `protobuf:"varint,18,opt,name=aggtransno,proto3" json:"aggtransno,omitempty"` + Location int32 `protobuf:"varint,19,opt,name=location,proto3" json:"location,omitempty"` } func (x *Aggref) Reset() { *x = Aggref{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[17] + mi := &file_pg_query_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9862,7 +10451,7 @@ func (x *Aggref) String() string { func (*Aggref) ProtoMessage() {} func (x *Aggref) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[17] + mi := &file_pg_query_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9875,7 +10464,7 @@ func (x *Aggref) ProtoReflect() protoreflect.Message { // Deprecated: Use Aggref.ProtoReflect.Descriptor instead. func (*Aggref) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{17} + return file_pg_query_proto_rawDescGZIP(), []int{18} } func (x *Aggref) GetXpr() *Node { @@ -9913,13 +10502,6 @@ func (x *Aggref) GetInputcollid() uint32 { return 0 } -func (x *Aggref) GetAggtranstype() uint32 { - if x != nil { - return x.Aggtranstype - } - return 0 -} - func (x *Aggref) GetAggargtypes() []*Node { if x != nil { return x.Aggargtypes @@ -10026,15 +10608,14 @@ type GroupingFunc struct { Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` Args []*Node `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"` Refs []*Node `protobuf:"bytes,3,rep,name=refs,proto3" json:"refs,omitempty"` - Cols []*Node `protobuf:"bytes,4,rep,name=cols,proto3" json:"cols,omitempty"` - Agglevelsup uint32 `protobuf:"varint,5,opt,name=agglevelsup,proto3" json:"agglevelsup,omitempty"` - Location int32 `protobuf:"varint,6,opt,name=location,proto3" json:"location,omitempty"` + Agglevelsup uint32 `protobuf:"varint,4,opt,name=agglevelsup,proto3" json:"agglevelsup,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } func (x *GroupingFunc) Reset() { *x = GroupingFunc{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[18] + mi := &file_pg_query_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10047,7 +10628,7 @@ func (x *GroupingFunc) String() string { func (*GroupingFunc) ProtoMessage() {} func (x *GroupingFunc) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[18] + mi := &file_pg_query_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10060,7 +10641,7 @@ func (x *GroupingFunc) ProtoReflect() protoreflect.Message { // Deprecated: Use GroupingFunc.ProtoReflect.Descriptor instead. func (*GroupingFunc) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{18} + return file_pg_query_proto_rawDescGZIP(), []int{19} } func (x *GroupingFunc) GetXpr() *Node { @@ -10084,13 +10665,6 @@ func (x *GroupingFunc) GetRefs() []*Node { return nil } -func (x *GroupingFunc) GetCols() []*Node { - if x != nil { - return x.Cols - } - return nil -} - func (x *GroupingFunc) GetAgglevelsup() uint32 { if x != nil { return x.Agglevelsup @@ -10126,7 +10700,7 @@ type WindowFunc struct { func (x *WindowFunc) Reset() { *x = WindowFunc{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[19] + mi := &file_pg_query_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10139,7 +10713,7 @@ func (x *WindowFunc) String() string { func (*WindowFunc) ProtoMessage() {} func (x *WindowFunc) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[19] + mi := &file_pg_query_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10152,7 +10726,7 @@ func (x *WindowFunc) ProtoReflect() protoreflect.Message { // Deprecated: Use WindowFunc.ProtoReflect.Descriptor instead. func (*WindowFunc) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{19} + return file_pg_query_proto_rawDescGZIP(), []int{20} } func (x *WindowFunc) GetXpr() *Node { @@ -10252,7 +10826,7 @@ type SubscriptingRef struct { func (x *SubscriptingRef) Reset() { *x = SubscriptingRef{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[20] + mi := &file_pg_query_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10265,7 +10839,7 @@ func (x *SubscriptingRef) String() string { func (*SubscriptingRef) ProtoMessage() {} func (x *SubscriptingRef) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[20] + mi := &file_pg_query_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10278,7 +10852,7 @@ func (x *SubscriptingRef) ProtoReflect() protoreflect.Message { // Deprecated: Use SubscriptingRef.ProtoReflect.Descriptor instead. func (*SubscriptingRef) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{20} + return file_pg_query_proto_rawDescGZIP(), []int{21} } func (x *SubscriptingRef) GetXpr() *Node { @@ -10371,7 +10945,7 @@ type FuncExpr struct { func (x *FuncExpr) Reset() { *x = FuncExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[21] + mi := &file_pg_query_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10384,7 +10958,7 @@ func (x *FuncExpr) String() string { func (*FuncExpr) ProtoMessage() {} func (x *FuncExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[21] + mi := &file_pg_query_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10397,7 +10971,7 @@ func (x *FuncExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use FuncExpr.ProtoReflect.Descriptor instead. func (*FuncExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{21} + return file_pg_query_proto_rawDescGZIP(), []int{22} } func (x *FuncExpr) GetXpr() *Node { @@ -10485,7 +11059,7 @@ type NamedArgExpr struct { func (x *NamedArgExpr) Reset() { *x = NamedArgExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[22] + mi := &file_pg_query_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10498,7 +11072,7 @@ func (x *NamedArgExpr) String() string { func (*NamedArgExpr) ProtoMessage() {} func (x *NamedArgExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[22] + mi := &file_pg_query_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10511,7 +11085,7 @@ func (x *NamedArgExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use NamedArgExpr.ProtoReflect.Descriptor instead. func (*NamedArgExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{22} + return file_pg_query_proto_rawDescGZIP(), []int{23} } func (x *NamedArgExpr) GetXpr() *Node { @@ -10556,19 +11130,18 @@ type OpExpr struct { Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` Opno uint32 `protobuf:"varint,2,opt,name=opno,proto3" json:"opno,omitempty"` - Opfuncid uint32 `protobuf:"varint,3,opt,name=opfuncid,proto3" json:"opfuncid,omitempty"` - Opresulttype uint32 `protobuf:"varint,4,opt,name=opresulttype,proto3" json:"opresulttype,omitempty"` - Opretset bool `protobuf:"varint,5,opt,name=opretset,proto3" json:"opretset,omitempty"` - Opcollid uint32 `protobuf:"varint,6,opt,name=opcollid,proto3" json:"opcollid,omitempty"` - Inputcollid uint32 `protobuf:"varint,7,opt,name=inputcollid,proto3" json:"inputcollid,omitempty"` - Args []*Node `protobuf:"bytes,8,rep,name=args,proto3" json:"args,omitempty"` - Location int32 `protobuf:"varint,9,opt,name=location,proto3" json:"location,omitempty"` + Opresulttype uint32 `protobuf:"varint,3,opt,name=opresulttype,proto3" json:"opresulttype,omitempty"` + Opretset bool `protobuf:"varint,4,opt,name=opretset,proto3" json:"opretset,omitempty"` + Opcollid uint32 `protobuf:"varint,5,opt,name=opcollid,proto3" json:"opcollid,omitempty"` + Inputcollid uint32 `protobuf:"varint,6,opt,name=inputcollid,proto3" json:"inputcollid,omitempty"` + Args []*Node `protobuf:"bytes,7,rep,name=args,proto3" json:"args,omitempty"` + Location int32 `protobuf:"varint,8,opt,name=location,proto3" json:"location,omitempty"` } func (x *OpExpr) Reset() { *x = OpExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[23] + mi := &file_pg_query_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10581,7 +11154,7 @@ func (x *OpExpr) String() string { func (*OpExpr) ProtoMessage() {} func (x *OpExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[23] + mi := &file_pg_query_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10594,7 +11167,7 @@ func (x *OpExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use OpExpr.ProtoReflect.Descriptor instead. func (*OpExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{23} + return file_pg_query_proto_rawDescGZIP(), []int{24} } func (x *OpExpr) GetXpr() *Node { @@ -10611,13 +11184,6 @@ func (x *OpExpr) GetOpno() uint32 { return 0 } -func (x *OpExpr) GetOpfuncid() uint32 { - if x != nil { - return x.Opfuncid - } - return 0 -} - func (x *OpExpr) GetOpresulttype() uint32 { if x != nil { return x.Opresulttype @@ -10667,19 +11233,18 @@ type DistinctExpr struct { Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` Opno uint32 `protobuf:"varint,2,opt,name=opno,proto3" json:"opno,omitempty"` - Opfuncid uint32 `protobuf:"varint,3,opt,name=opfuncid,proto3" json:"opfuncid,omitempty"` - Opresulttype uint32 `protobuf:"varint,4,opt,name=opresulttype,proto3" json:"opresulttype,omitempty"` - Opretset bool `protobuf:"varint,5,opt,name=opretset,proto3" json:"opretset,omitempty"` - Opcollid uint32 `protobuf:"varint,6,opt,name=opcollid,proto3" json:"opcollid,omitempty"` - Inputcollid uint32 `protobuf:"varint,7,opt,name=inputcollid,proto3" json:"inputcollid,omitempty"` - Args []*Node `protobuf:"bytes,8,rep,name=args,proto3" json:"args,omitempty"` - Location int32 `protobuf:"varint,9,opt,name=location,proto3" json:"location,omitempty"` + Opresulttype uint32 `protobuf:"varint,3,opt,name=opresulttype,proto3" json:"opresulttype,omitempty"` + Opretset bool `protobuf:"varint,4,opt,name=opretset,proto3" json:"opretset,omitempty"` + Opcollid uint32 `protobuf:"varint,5,opt,name=opcollid,proto3" json:"opcollid,omitempty"` + Inputcollid uint32 `protobuf:"varint,6,opt,name=inputcollid,proto3" json:"inputcollid,omitempty"` + Args []*Node `protobuf:"bytes,7,rep,name=args,proto3" json:"args,omitempty"` + Location int32 `protobuf:"varint,8,opt,name=location,proto3" json:"location,omitempty"` } func (x *DistinctExpr) Reset() { *x = DistinctExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[24] + mi := &file_pg_query_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10692,7 +11257,7 @@ func (x *DistinctExpr) String() string { func (*DistinctExpr) ProtoMessage() {} func (x *DistinctExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[24] + mi := &file_pg_query_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10705,7 +11270,7 @@ func (x *DistinctExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use DistinctExpr.ProtoReflect.Descriptor instead. func (*DistinctExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{24} + return file_pg_query_proto_rawDescGZIP(), []int{25} } func (x *DistinctExpr) GetXpr() *Node { @@ -10722,13 +11287,6 @@ func (x *DistinctExpr) GetOpno() uint32 { return 0 } -func (x *DistinctExpr) GetOpfuncid() uint32 { - if x != nil { - return x.Opfuncid - } - return 0 -} - func (x *DistinctExpr) GetOpresulttype() uint32 { if x != nil { return x.Opresulttype @@ -10778,19 +11336,18 @@ type NullIfExpr struct { Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` Opno uint32 `protobuf:"varint,2,opt,name=opno,proto3" json:"opno,omitempty"` - Opfuncid uint32 `protobuf:"varint,3,opt,name=opfuncid,proto3" json:"opfuncid,omitempty"` - Opresulttype uint32 `protobuf:"varint,4,opt,name=opresulttype,proto3" json:"opresulttype,omitempty"` - Opretset bool `protobuf:"varint,5,opt,name=opretset,proto3" json:"opretset,omitempty"` - Opcollid uint32 `protobuf:"varint,6,opt,name=opcollid,proto3" json:"opcollid,omitempty"` - Inputcollid uint32 `protobuf:"varint,7,opt,name=inputcollid,proto3" json:"inputcollid,omitempty"` - Args []*Node `protobuf:"bytes,8,rep,name=args,proto3" json:"args,omitempty"` - Location int32 `protobuf:"varint,9,opt,name=location,proto3" json:"location,omitempty"` + Opresulttype uint32 `protobuf:"varint,3,opt,name=opresulttype,proto3" json:"opresulttype,omitempty"` + Opretset bool `protobuf:"varint,4,opt,name=opretset,proto3" json:"opretset,omitempty"` + Opcollid uint32 `protobuf:"varint,5,opt,name=opcollid,proto3" json:"opcollid,omitempty"` + Inputcollid uint32 `protobuf:"varint,6,opt,name=inputcollid,proto3" json:"inputcollid,omitempty"` + Args []*Node `protobuf:"bytes,7,rep,name=args,proto3" json:"args,omitempty"` + Location int32 `protobuf:"varint,8,opt,name=location,proto3" json:"location,omitempty"` } func (x *NullIfExpr) Reset() { *x = NullIfExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[25] + mi := &file_pg_query_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10803,7 +11360,7 @@ func (x *NullIfExpr) String() string { func (*NullIfExpr) ProtoMessage() {} func (x *NullIfExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[25] + mi := &file_pg_query_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10816,7 +11373,7 @@ func (x *NullIfExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use NullIfExpr.ProtoReflect.Descriptor instead. func (*NullIfExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{25} + return file_pg_query_proto_rawDescGZIP(), []int{26} } func (x *NullIfExpr) GetXpr() *Node { @@ -10833,13 +11390,6 @@ func (x *NullIfExpr) GetOpno() uint32 { return 0 } -func (x *NullIfExpr) GetOpfuncid() uint32 { - if x != nil { - return x.Opfuncid - } - return 0 -} - func (x *NullIfExpr) GetOpresulttype() uint32 { if x != nil { return x.Opresulttype @@ -10889,19 +11439,16 @@ type ScalarArrayOpExpr struct { Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` Opno uint32 `protobuf:"varint,2,opt,name=opno,proto3" json:"opno,omitempty"` - Opfuncid uint32 `protobuf:"varint,3,opt,name=opfuncid,proto3" json:"opfuncid,omitempty"` - Hashfuncid uint32 `protobuf:"varint,4,opt,name=hashfuncid,proto3" json:"hashfuncid,omitempty"` - Negfuncid uint32 `protobuf:"varint,5,opt,name=negfuncid,proto3" json:"negfuncid,omitempty"` - UseOr bool `protobuf:"varint,6,opt,name=use_or,json=useOr,proto3" json:"use_or,omitempty"` - Inputcollid uint32 `protobuf:"varint,7,opt,name=inputcollid,proto3" json:"inputcollid,omitempty"` - Args []*Node `protobuf:"bytes,8,rep,name=args,proto3" json:"args,omitempty"` - Location int32 `protobuf:"varint,9,opt,name=location,proto3" json:"location,omitempty"` + UseOr bool `protobuf:"varint,3,opt,name=use_or,json=useOr,proto3" json:"use_or,omitempty"` + Inputcollid uint32 `protobuf:"varint,4,opt,name=inputcollid,proto3" json:"inputcollid,omitempty"` + Args []*Node `protobuf:"bytes,5,rep,name=args,proto3" json:"args,omitempty"` + Location int32 `protobuf:"varint,6,opt,name=location,proto3" json:"location,omitempty"` } func (x *ScalarArrayOpExpr) Reset() { *x = ScalarArrayOpExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[26] + mi := &file_pg_query_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10914,7 +11461,7 @@ func (x *ScalarArrayOpExpr) String() string { func (*ScalarArrayOpExpr) ProtoMessage() {} func (x *ScalarArrayOpExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[26] + mi := &file_pg_query_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10927,7 +11474,7 @@ func (x *ScalarArrayOpExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use ScalarArrayOpExpr.ProtoReflect.Descriptor instead. func (*ScalarArrayOpExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{26} + return file_pg_query_proto_rawDescGZIP(), []int{27} } func (x *ScalarArrayOpExpr) GetXpr() *Node { @@ -10944,27 +11491,6 @@ func (x *ScalarArrayOpExpr) GetOpno() uint32 { return 0 } -func (x *ScalarArrayOpExpr) GetOpfuncid() uint32 { - if x != nil { - return x.Opfuncid - } - return 0 -} - -func (x *ScalarArrayOpExpr) GetHashfuncid() uint32 { - if x != nil { - return x.Hashfuncid - } - return 0 -} - -func (x *ScalarArrayOpExpr) GetNegfuncid() uint32 { - if x != nil { - return x.Negfuncid - } - return 0 -} - func (x *ScalarArrayOpExpr) GetUseOr() bool { if x != nil { return x.UseOr @@ -11007,7 +11533,7 @@ type BoolExpr struct { func (x *BoolExpr) Reset() { *x = BoolExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[27] + mi := &file_pg_query_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11020,7 +11546,7 @@ func (x *BoolExpr) String() string { func (*BoolExpr) ProtoMessage() {} func (x *BoolExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[27] + mi := &file_pg_query_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11033,7 +11559,7 @@ func (x *BoolExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use BoolExpr.ProtoReflect.Descriptor instead. func (*BoolExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{27} + return file_pg_query_proto_rawDescGZIP(), []int{28} } func (x *BoolExpr) GetXpr() *Node { @@ -11081,7 +11607,7 @@ type SubLink struct { func (x *SubLink) Reset() { *x = SubLink{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[28] + mi := &file_pg_query_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11094,7 +11620,7 @@ func (x *SubLink) String() string { func (*SubLink) ProtoMessage() {} func (x *SubLink) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[28] + mi := &file_pg_query_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11107,7 +11633,7 @@ func (x *SubLink) ProtoReflect() protoreflect.Message { // Deprecated: Use SubLink.ProtoReflect.Descriptor instead. func (*SubLink) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{28} + return file_pg_query_proto_rawDescGZIP(), []int{29} } func (x *SubLink) GetXpr() *Node { @@ -11186,7 +11712,7 @@ type SubPlan struct { func (x *SubPlan) Reset() { *x = SubPlan{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[29] + mi := &file_pg_query_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11199,7 +11725,7 @@ func (x *SubPlan) String() string { func (*SubPlan) ProtoMessage() {} func (x *SubPlan) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[29] + mi := &file_pg_query_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11212,7 +11738,7 @@ func (x *SubPlan) ProtoReflect() protoreflect.Message { // Deprecated: Use SubPlan.ProtoReflect.Descriptor instead. func (*SubPlan) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{29} + return file_pg_query_proto_rawDescGZIP(), []int{30} } func (x *SubPlan) GetXpr() *Node { @@ -11346,7 +11872,7 @@ type AlternativeSubPlan struct { func (x *AlternativeSubPlan) Reset() { *x = AlternativeSubPlan{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[30] + mi := &file_pg_query_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11359,7 +11885,7 @@ func (x *AlternativeSubPlan) String() string { func (*AlternativeSubPlan) ProtoMessage() {} func (x *AlternativeSubPlan) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[30] + mi := &file_pg_query_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11372,7 +11898,7 @@ func (x *AlternativeSubPlan) ProtoReflect() protoreflect.Message { // Deprecated: Use AlternativeSubPlan.ProtoReflect.Descriptor instead. func (*AlternativeSubPlan) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{30} + return file_pg_query_proto_rawDescGZIP(), []int{31} } func (x *AlternativeSubPlan) GetXpr() *Node { @@ -11405,7 +11931,7 @@ type FieldSelect struct { func (x *FieldSelect) Reset() { *x = FieldSelect{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[31] + mi := &file_pg_query_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11418,7 +11944,7 @@ func (x *FieldSelect) String() string { func (*FieldSelect) ProtoMessage() {} func (x *FieldSelect) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[31] + mi := &file_pg_query_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11431,7 +11957,7 @@ func (x *FieldSelect) ProtoReflect() protoreflect.Message { // Deprecated: Use FieldSelect.ProtoReflect.Descriptor instead. func (*FieldSelect) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{31} + return file_pg_query_proto_rawDescGZIP(), []int{32} } func (x *FieldSelect) GetXpr() *Node { @@ -11491,7 +12017,7 @@ type FieldStore struct { func (x *FieldStore) Reset() { *x = FieldStore{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[32] + mi := &file_pg_query_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11504,7 +12030,7 @@ func (x *FieldStore) String() string { func (*FieldStore) ProtoMessage() {} func (x *FieldStore) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[32] + mi := &file_pg_query_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11517,7 +12043,7 @@ func (x *FieldStore) ProtoReflect() protoreflect.Message { // Deprecated: Use FieldStore.ProtoReflect.Descriptor instead. func (*FieldStore) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{32} + return file_pg_query_proto_rawDescGZIP(), []int{33} } func (x *FieldStore) GetXpr() *Node { @@ -11572,7 +12098,7 @@ type RelabelType struct { func (x *RelabelType) Reset() { *x = RelabelType{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[33] + mi := &file_pg_query_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11585,7 +12111,7 @@ func (x *RelabelType) String() string { func (*RelabelType) ProtoMessage() {} func (x *RelabelType) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[33] + mi := &file_pg_query_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11598,7 +12124,7 @@ func (x *RelabelType) ProtoReflect() protoreflect.Message { // Deprecated: Use RelabelType.ProtoReflect.Descriptor instead. func (*RelabelType) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{33} + return file_pg_query_proto_rawDescGZIP(), []int{34} } func (x *RelabelType) GetXpr() *Node { @@ -11666,7 +12192,7 @@ type CoerceViaIO struct { func (x *CoerceViaIO) Reset() { *x = CoerceViaIO{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[34] + mi := &file_pg_query_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11679,7 +12205,7 @@ func (x *CoerceViaIO) String() string { func (*CoerceViaIO) ProtoMessage() {} func (x *CoerceViaIO) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[34] + mi := &file_pg_query_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11692,7 +12218,7 @@ func (x *CoerceViaIO) ProtoReflect() protoreflect.Message { // Deprecated: Use CoerceViaIO.ProtoReflect.Descriptor instead. func (*CoerceViaIO) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{34} + return file_pg_query_proto_rawDescGZIP(), []int{35} } func (x *CoerceViaIO) GetXpr() *Node { @@ -11755,7 +12281,7 @@ type ArrayCoerceExpr struct { func (x *ArrayCoerceExpr) Reset() { *x = ArrayCoerceExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[35] + mi := &file_pg_query_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11768,7 +12294,7 @@ func (x *ArrayCoerceExpr) String() string { func (*ArrayCoerceExpr) ProtoMessage() {} func (x *ArrayCoerceExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[35] + mi := &file_pg_query_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11781,7 +12307,7 @@ func (x *ArrayCoerceExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use ArrayCoerceExpr.ProtoReflect.Descriptor instead. func (*ArrayCoerceExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{35} + return file_pg_query_proto_rawDescGZIP(), []int{36} } func (x *ArrayCoerceExpr) GetXpr() *Node { @@ -11855,7 +12381,7 @@ type ConvertRowtypeExpr struct { func (x *ConvertRowtypeExpr) Reset() { *x = ConvertRowtypeExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[36] + mi := &file_pg_query_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11868,7 +12394,7 @@ func (x *ConvertRowtypeExpr) String() string { func (*ConvertRowtypeExpr) ProtoMessage() {} func (x *ConvertRowtypeExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[36] + mi := &file_pg_query_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11881,7 +12407,7 @@ func (x *ConvertRowtypeExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use ConvertRowtypeExpr.ProtoReflect.Descriptor instead. func (*ConvertRowtypeExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{36} + return file_pg_query_proto_rawDescGZIP(), []int{37} } func (x *ConvertRowtypeExpr) GetXpr() *Node { @@ -11933,7 +12459,7 @@ type CollateExpr struct { func (x *CollateExpr) Reset() { *x = CollateExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[37] + mi := &file_pg_query_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11946,7 +12472,7 @@ func (x *CollateExpr) String() string { func (*CollateExpr) ProtoMessage() {} func (x *CollateExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[37] + mi := &file_pg_query_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11959,7 +12485,7 @@ func (x *CollateExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use CollateExpr.ProtoReflect.Descriptor instead. func (*CollateExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{37} + return file_pg_query_proto_rawDescGZIP(), []int{38} } func (x *CollateExpr) GetXpr() *Node { @@ -12007,7 +12533,7 @@ type CaseExpr struct { func (x *CaseExpr) Reset() { *x = CaseExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[38] + mi := &file_pg_query_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12020,7 +12546,7 @@ func (x *CaseExpr) String() string { func (*CaseExpr) ProtoMessage() {} func (x *CaseExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[38] + mi := &file_pg_query_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12033,7 +12559,7 @@ func (x *CaseExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use CaseExpr.ProtoReflect.Descriptor instead. func (*CaseExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{38} + return file_pg_query_proto_rawDescGZIP(), []int{39} } func (x *CaseExpr) GetXpr() *Node { @@ -12099,7 +12625,7 @@ type CaseWhen struct { func (x *CaseWhen) Reset() { *x = CaseWhen{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[39] + mi := &file_pg_query_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12112,7 +12638,7 @@ func (x *CaseWhen) String() string { func (*CaseWhen) ProtoMessage() {} func (x *CaseWhen) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[39] + mi := &file_pg_query_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12125,7 +12651,7 @@ func (x *CaseWhen) ProtoReflect() protoreflect.Message { // Deprecated: Use CaseWhen.ProtoReflect.Descriptor instead. func (*CaseWhen) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{39} + return file_pg_query_proto_rawDescGZIP(), []int{40} } func (x *CaseWhen) GetXpr() *Node { @@ -12170,7 +12696,7 @@ type CaseTestExpr struct { func (x *CaseTestExpr) Reset() { *x = CaseTestExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[40] + mi := &file_pg_query_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12183,7 +12709,7 @@ func (x *CaseTestExpr) String() string { func (*CaseTestExpr) ProtoMessage() {} func (x *CaseTestExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[40] + mi := &file_pg_query_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12196,7 +12722,7 @@ func (x *CaseTestExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use CaseTestExpr.ProtoReflect.Descriptor instead. func (*CaseTestExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{40} + return file_pg_query_proto_rawDescGZIP(), []int{41} } func (x *CaseTestExpr) GetXpr() *Node { @@ -12244,7 +12770,7 @@ type ArrayExpr struct { func (x *ArrayExpr) Reset() { *x = ArrayExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[41] + mi := &file_pg_query_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12257,7 +12783,7 @@ func (x *ArrayExpr) String() string { func (*ArrayExpr) ProtoMessage() {} func (x *ArrayExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[41] + mi := &file_pg_query_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12270,7 +12796,7 @@ func (x *ArrayExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use ArrayExpr.ProtoReflect.Descriptor instead. func (*ArrayExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{41} + return file_pg_query_proto_rawDescGZIP(), []int{42} } func (x *ArrayExpr) GetXpr() *Node { @@ -12338,7 +12864,7 @@ type RowExpr struct { func (x *RowExpr) Reset() { *x = RowExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[42] + mi := &file_pg_query_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12351,7 +12877,7 @@ func (x *RowExpr) String() string { func (*RowExpr) ProtoMessage() {} func (x *RowExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[42] + mi := &file_pg_query_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12364,7 +12890,7 @@ func (x *RowExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use RowExpr.ProtoReflect.Descriptor instead. func (*RowExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{42} + return file_pg_query_proto_rawDescGZIP(), []int{43} } func (x *RowExpr) GetXpr() *Node { @@ -12426,7 +12952,7 @@ type RowCompareExpr struct { func (x *RowCompareExpr) Reset() { *x = RowCompareExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[43] + mi := &file_pg_query_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12439,7 +12965,7 @@ func (x *RowCompareExpr) String() string { func (*RowCompareExpr) ProtoMessage() {} func (x *RowCompareExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[43] + mi := &file_pg_query_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12452,7 +12978,7 @@ func (x *RowCompareExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use RowCompareExpr.ProtoReflect.Descriptor instead. func (*RowCompareExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{43} + return file_pg_query_proto_rawDescGZIP(), []int{44} } func (x *RowCompareExpr) GetXpr() *Node { @@ -12519,7 +13045,7 @@ type CoalesceExpr struct { func (x *CoalesceExpr) Reset() { *x = CoalesceExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[44] + mi := &file_pg_query_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12532,7 +13058,7 @@ func (x *CoalesceExpr) String() string { func (*CoalesceExpr) ProtoMessage() {} func (x *CoalesceExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[44] + mi := &file_pg_query_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12545,7 +13071,7 @@ func (x *CoalesceExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use CoalesceExpr.ProtoReflect.Descriptor instead. func (*CoalesceExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{44} + return file_pg_query_proto_rawDescGZIP(), []int{45} } func (x *CoalesceExpr) GetXpr() *Node { @@ -12600,7 +13126,7 @@ type MinMaxExpr struct { func (x *MinMaxExpr) Reset() { *x = MinMaxExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[45] + mi := &file_pg_query_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12613,7 +13139,7 @@ func (x *MinMaxExpr) String() string { func (*MinMaxExpr) ProtoMessage() {} func (x *MinMaxExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[45] + mi := &file_pg_query_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12626,7 +13152,7 @@ func (x *MinMaxExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use MinMaxExpr.ProtoReflect.Descriptor instead. func (*MinMaxExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{45} + return file_pg_query_proto_rawDescGZIP(), []int{46} } func (x *MinMaxExpr) GetXpr() *Node { @@ -12693,7 +13219,7 @@ type SQLValueFunction struct { func (x *SQLValueFunction) Reset() { *x = SQLValueFunction{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[46] + mi := &file_pg_query_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12706,7 +13232,7 @@ func (x *SQLValueFunction) String() string { func (*SQLValueFunction) ProtoMessage() {} func (x *SQLValueFunction) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[46] + mi := &file_pg_query_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12719,7 +13245,7 @@ func (x *SQLValueFunction) ProtoReflect() protoreflect.Message { // Deprecated: Use SQLValueFunction.ProtoReflect.Descriptor instead. func (*SQLValueFunction) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{46} + return file_pg_query_proto_rawDescGZIP(), []int{47} } func (x *SQLValueFunction) GetXpr() *Node { @@ -12769,15 +13295,16 @@ type XmlExpr struct { ArgNames []*Node `protobuf:"bytes,5,rep,name=arg_names,proto3" json:"arg_names,omitempty"` Args []*Node `protobuf:"bytes,6,rep,name=args,proto3" json:"args,omitempty"` Xmloption XmlOptionType `protobuf:"varint,7,opt,name=xmloption,proto3,enum=pg_query.XmlOptionType" json:"xmloption,omitempty"` - Type uint32 `protobuf:"varint,8,opt,name=type,proto3" json:"type,omitempty"` - Typmod int32 `protobuf:"varint,9,opt,name=typmod,proto3" json:"typmod,omitempty"` - Location int32 `protobuf:"varint,10,opt,name=location,proto3" json:"location,omitempty"` + Indent bool `protobuf:"varint,8,opt,name=indent,proto3" json:"indent,omitempty"` + Type uint32 `protobuf:"varint,9,opt,name=type,proto3" json:"type,omitempty"` + Typmod int32 `protobuf:"varint,10,opt,name=typmod,proto3" json:"typmod,omitempty"` + Location int32 `protobuf:"varint,11,opt,name=location,proto3" json:"location,omitempty"` } func (x *XmlExpr) Reset() { *x = XmlExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[47] + mi := &file_pg_query_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12790,7 +13317,7 @@ func (x *XmlExpr) String() string { func (*XmlExpr) ProtoMessage() {} func (x *XmlExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[47] + mi := &file_pg_query_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12803,7 +13330,7 @@ func (x *XmlExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use XmlExpr.ProtoReflect.Descriptor instead. func (*XmlExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{47} + return file_pg_query_proto_rawDescGZIP(), []int{48} } func (x *XmlExpr) GetXpr() *Node { @@ -12855,6 +13382,13 @@ func (x *XmlExpr) GetXmloption() XmlOptionType { return XmlOptionType_XML_OPTION_TYPE_UNDEFINED } +func (x *XmlExpr) GetIndent() bool { + if x != nil { + return x.Indent + } + return false +} + func (x *XmlExpr) GetType() uint32 { if x != nil { return x.Type @@ -12876,35 +13410,33 @@ func (x *XmlExpr) GetLocation() int32 { return 0 } -type NullTest struct { +type JsonFormat struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - Arg *Node `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` - Nulltesttype NullTestType `protobuf:"varint,3,opt,name=nulltesttype,proto3,enum=pg_query.NullTestType" json:"nulltesttype,omitempty"` - Argisrow bool `protobuf:"varint,4,opt,name=argisrow,proto3" json:"argisrow,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + FormatType JsonFormatType `protobuf:"varint,1,opt,name=format_type,proto3,enum=pg_query.JsonFormatType" json:"format_type,omitempty"` + Encoding JsonEncoding `protobuf:"varint,2,opt,name=encoding,proto3,enum=pg_query.JsonEncoding" json:"encoding,omitempty"` + Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` } -func (x *NullTest) Reset() { - *x = NullTest{} +func (x *JsonFormat) Reset() { + *x = JsonFormat{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[48] + mi := &file_pg_query_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *NullTest) String() string { +func (x *JsonFormat) String() string { return protoimpl.X.MessageStringOf(x) } -func (*NullTest) ProtoMessage() {} +func (*JsonFormat) ProtoMessage() {} -func (x *NullTest) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[48] +func (x *JsonFormat) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12915,74 +13447,59 @@ func (x *NullTest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use NullTest.ProtoReflect.Descriptor instead. -func (*NullTest) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{48} -} - -func (x *NullTest) GetXpr() *Node { - if x != nil { - return x.Xpr - } - return nil -} - -func (x *NullTest) GetArg() *Node { - if x != nil { - return x.Arg - } - return nil +// Deprecated: Use JsonFormat.ProtoReflect.Descriptor instead. +func (*JsonFormat) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{49} } -func (x *NullTest) GetNulltesttype() NullTestType { +func (x *JsonFormat) GetFormatType() JsonFormatType { if x != nil { - return x.Nulltesttype + return x.FormatType } - return NullTestType_NULL_TEST_TYPE_UNDEFINED + return JsonFormatType_JSON_FORMAT_TYPE_UNDEFINED } -func (x *NullTest) GetArgisrow() bool { +func (x *JsonFormat) GetEncoding() JsonEncoding { if x != nil { - return x.Argisrow + return x.Encoding } - return false + return JsonEncoding_JSON_ENCODING_UNDEFINED } -func (x *NullTest) GetLocation() int32 { +func (x *JsonFormat) GetLocation() int32 { if x != nil { return x.Location } return 0 } -type BooleanTest struct { +type JsonReturning struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - Arg *Node `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` - Booltesttype BoolTestType `protobuf:"varint,3,opt,name=booltesttype,proto3,enum=pg_query.BoolTestType" json:"booltesttype,omitempty"` - Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` + Format *JsonFormat `protobuf:"bytes,1,opt,name=format,proto3" json:"format,omitempty"` + Typid uint32 `protobuf:"varint,2,opt,name=typid,proto3" json:"typid,omitempty"` + Typmod int32 `protobuf:"varint,3,opt,name=typmod,proto3" json:"typmod,omitempty"` } -func (x *BooleanTest) Reset() { - *x = BooleanTest{} +func (x *JsonReturning) Reset() { + *x = JsonReturning{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[49] + mi := &file_pg_query_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *BooleanTest) String() string { +func (x *JsonReturning) String() string { return protoimpl.X.MessageStringOf(x) } -func (*BooleanTest) ProtoMessage() {} +func (*JsonReturning) ProtoMessage() {} -func (x *BooleanTest) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[49] +func (x *JsonReturning) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12993,70 +13510,59 @@ func (x *BooleanTest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use BooleanTest.ProtoReflect.Descriptor instead. -func (*BooleanTest) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{49} -} - -func (x *BooleanTest) GetXpr() *Node { - if x != nil { - return x.Xpr - } - return nil +// Deprecated: Use JsonReturning.ProtoReflect.Descriptor instead. +func (*JsonReturning) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{50} } -func (x *BooleanTest) GetArg() *Node { +func (x *JsonReturning) GetFormat() *JsonFormat { if x != nil { - return x.Arg + return x.Format } return nil } -func (x *BooleanTest) GetBooltesttype() BoolTestType { +func (x *JsonReturning) GetTypid() uint32 { if x != nil { - return x.Booltesttype + return x.Typid } - return BoolTestType_BOOL_TEST_TYPE_UNDEFINED + return 0 } -func (x *BooleanTest) GetLocation() int32 { +func (x *JsonReturning) GetTypmod() int32 { if x != nil { - return x.Location + return x.Typmod } return 0 } -type CoerceToDomain struct { +type JsonValueExpr struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - Arg *Node `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` - Resulttype uint32 `protobuf:"varint,3,opt,name=resulttype,proto3" json:"resulttype,omitempty"` - Resulttypmod int32 `protobuf:"varint,4,opt,name=resulttypmod,proto3" json:"resulttypmod,omitempty"` - Resultcollid uint32 `protobuf:"varint,5,opt,name=resultcollid,proto3" json:"resultcollid,omitempty"` - Coercionformat CoercionForm `protobuf:"varint,6,opt,name=coercionformat,proto3,enum=pg_query.CoercionForm" json:"coercionformat,omitempty"` - Location int32 `protobuf:"varint,7,opt,name=location,proto3" json:"location,omitempty"` + RawExpr *Node `protobuf:"bytes,1,opt,name=raw_expr,proto3" json:"raw_expr,omitempty"` + FormattedExpr *Node `protobuf:"bytes,2,opt,name=formatted_expr,proto3" json:"formatted_expr,omitempty"` + Format *JsonFormat `protobuf:"bytes,3,opt,name=format,proto3" json:"format,omitempty"` } -func (x *CoerceToDomain) Reset() { - *x = CoerceToDomain{} +func (x *JsonValueExpr) Reset() { + *x = JsonValueExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[50] + mi := &file_pg_query_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CoerceToDomain) String() string { +func (x *JsonValueExpr) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CoerceToDomain) ProtoMessage() {} +func (*JsonValueExpr) ProtoMessage() {} -func (x *CoerceToDomain) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[50] +func (x *JsonValueExpr) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13067,89 +13573,65 @@ func (x *CoerceToDomain) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CoerceToDomain.ProtoReflect.Descriptor instead. -func (*CoerceToDomain) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{50} +// Deprecated: Use JsonValueExpr.ProtoReflect.Descriptor instead. +func (*JsonValueExpr) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{51} } -func (x *CoerceToDomain) GetXpr() *Node { +func (x *JsonValueExpr) GetRawExpr() *Node { if x != nil { - return x.Xpr + return x.RawExpr } return nil } -func (x *CoerceToDomain) GetArg() *Node { +func (x *JsonValueExpr) GetFormattedExpr() *Node { if x != nil { - return x.Arg + return x.FormattedExpr } return nil } -func (x *CoerceToDomain) GetResulttype() uint32 { - if x != nil { - return x.Resulttype - } - return 0 -} - -func (x *CoerceToDomain) GetResulttypmod() int32 { - if x != nil { - return x.Resulttypmod - } - return 0 -} - -func (x *CoerceToDomain) GetResultcollid() uint32 { - if x != nil { - return x.Resultcollid - } - return 0 -} - -func (x *CoerceToDomain) GetCoercionformat() CoercionForm { - if x != nil { - return x.Coercionformat - } - return CoercionForm_COERCION_FORM_UNDEFINED -} - -func (x *CoerceToDomain) GetLocation() int32 { +func (x *JsonValueExpr) GetFormat() *JsonFormat { if x != nil { - return x.Location + return x.Format } - return 0 + return nil } -type CoerceToDomainValue struct { +type JsonConstructorExpr struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - TypeId uint32 `protobuf:"varint,2,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` - TypeMod int32 `protobuf:"varint,3,opt,name=type_mod,json=typeMod,proto3" json:"type_mod,omitempty"` - Collation uint32 `protobuf:"varint,4,opt,name=collation,proto3" json:"collation,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + Type JsonConstructorType `protobuf:"varint,2,opt,name=type,proto3,enum=pg_query.JsonConstructorType" json:"type,omitempty"` + Args []*Node `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` + Func *Node `protobuf:"bytes,4,opt,name=func,proto3" json:"func,omitempty"` + Coercion *Node `protobuf:"bytes,5,opt,name=coercion,proto3" json:"coercion,omitempty"` + Returning *JsonReturning `protobuf:"bytes,6,opt,name=returning,proto3" json:"returning,omitempty"` + AbsentOnNull bool `protobuf:"varint,7,opt,name=absent_on_null,proto3" json:"absent_on_null,omitempty"` + Unique bool `protobuf:"varint,8,opt,name=unique,proto3" json:"unique,omitempty"` + Location int32 `protobuf:"varint,9,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CoerceToDomainValue) Reset() { - *x = CoerceToDomainValue{} +func (x *JsonConstructorExpr) Reset() { + *x = JsonConstructorExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[51] + mi := &file_pg_query_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CoerceToDomainValue) String() string { +func (x *JsonConstructorExpr) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CoerceToDomainValue) ProtoMessage() {} +func (*JsonConstructorExpr) ProtoMessage() {} -func (x *CoerceToDomainValue) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[51] +func (x *JsonConstructorExpr) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13160,138 +13642,88 @@ func (x *CoerceToDomainValue) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CoerceToDomainValue.ProtoReflect.Descriptor instead. -func (*CoerceToDomainValue) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{51} +// Deprecated: Use JsonConstructorExpr.ProtoReflect.Descriptor instead. +func (*JsonConstructorExpr) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{52} } -func (x *CoerceToDomainValue) GetXpr() *Node { +func (x *JsonConstructorExpr) GetXpr() *Node { if x != nil { return x.Xpr } return nil } -func (x *CoerceToDomainValue) GetTypeId() uint32 { - if x != nil { - return x.TypeId - } - return 0 -} - -func (x *CoerceToDomainValue) GetTypeMod() int32 { +func (x *JsonConstructorExpr) GetType() JsonConstructorType { if x != nil { - return x.TypeMod + return x.Type } - return 0 + return JsonConstructorType_JSON_CONSTRUCTOR_TYPE_UNDEFINED } -func (x *CoerceToDomainValue) GetCollation() uint32 { +func (x *JsonConstructorExpr) GetArgs() []*Node { if x != nil { - return x.Collation + return x.Args } - return 0 + return nil } -func (x *CoerceToDomainValue) GetLocation() int32 { +func (x *JsonConstructorExpr) GetFunc() *Node { if x != nil { - return x.Location - } - return 0 -} - -type SetToDefault struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - TypeId uint32 `protobuf:"varint,2,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` - TypeMod int32 `protobuf:"varint,3,opt,name=type_mod,json=typeMod,proto3" json:"type_mod,omitempty"` - Collation uint32 `protobuf:"varint,4,opt,name=collation,proto3" json:"collation,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` -} - -func (x *SetToDefault) Reset() { - *x = SetToDefault{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[52] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetToDefault) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetToDefault) ProtoMessage() {} - -func (x *SetToDefault) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[52] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms + return x.Func } - return mi.MessageOf(x) -} - -// Deprecated: Use SetToDefault.ProtoReflect.Descriptor instead. -func (*SetToDefault) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{52} + return nil } -func (x *SetToDefault) GetXpr() *Node { +func (x *JsonConstructorExpr) GetCoercion() *Node { if x != nil { - return x.Xpr + return x.Coercion } return nil } -func (x *SetToDefault) GetTypeId() uint32 { +func (x *JsonConstructorExpr) GetReturning() *JsonReturning { if x != nil { - return x.TypeId + return x.Returning } - return 0 + return nil } -func (x *SetToDefault) GetTypeMod() int32 { +func (x *JsonConstructorExpr) GetAbsentOnNull() bool { if x != nil { - return x.TypeMod + return x.AbsentOnNull } - return 0 + return false } -func (x *SetToDefault) GetCollation() uint32 { +func (x *JsonConstructorExpr) GetUnique() bool { if x != nil { - return x.Collation + return x.Unique } - return 0 + return false } -func (x *SetToDefault) GetLocation() int32 { +func (x *JsonConstructorExpr) GetLocation() int32 { if x != nil { return x.Location } return 0 } -type CurrentOfExpr struct { +type JsonIsPredicate struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - Cvarno uint32 `protobuf:"varint,2,opt,name=cvarno,proto3" json:"cvarno,omitempty"` - CursorName string `protobuf:"bytes,3,opt,name=cursor_name,proto3" json:"cursor_name,omitempty"` - CursorParam int32 `protobuf:"varint,4,opt,name=cursor_param,proto3" json:"cursor_param,omitempty"` + Expr *Node `protobuf:"bytes,1,opt,name=expr,proto3" json:"expr,omitempty"` + Format *JsonFormat `protobuf:"bytes,2,opt,name=format,proto3" json:"format,omitempty"` + ItemType JsonValueType `protobuf:"varint,3,opt,name=item_type,proto3,enum=pg_query.JsonValueType" json:"item_type,omitempty"` + UniqueKeys bool `protobuf:"varint,4,opt,name=unique_keys,proto3" json:"unique_keys,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CurrentOfExpr) Reset() { - *x = CurrentOfExpr{} +func (x *JsonIsPredicate) Reset() { + *x = JsonIsPredicate{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13299,13 +13731,13 @@ func (x *CurrentOfExpr) Reset() { } } -func (x *CurrentOfExpr) String() string { +func (x *JsonIsPredicate) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CurrentOfExpr) ProtoMessage() {} +func (*JsonIsPredicate) ProtoMessage() {} -func (x *CurrentOfExpr) ProtoReflect() protoreflect.Message { +func (x *JsonIsPredicate) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13317,51 +13749,60 @@ func (x *CurrentOfExpr) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CurrentOfExpr.ProtoReflect.Descriptor instead. -func (*CurrentOfExpr) Descriptor() ([]byte, []int) { +// Deprecated: Use JsonIsPredicate.ProtoReflect.Descriptor instead. +func (*JsonIsPredicate) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{53} } -func (x *CurrentOfExpr) GetXpr() *Node { +func (x *JsonIsPredicate) GetExpr() *Node { if x != nil { - return x.Xpr + return x.Expr } return nil } -func (x *CurrentOfExpr) GetCvarno() uint32 { +func (x *JsonIsPredicate) GetFormat() *JsonFormat { if x != nil { - return x.Cvarno + return x.Format } - return 0 + return nil } -func (x *CurrentOfExpr) GetCursorName() string { +func (x *JsonIsPredicate) GetItemType() JsonValueType { if x != nil { - return x.CursorName + return x.ItemType } - return "" + return JsonValueType_JSON_VALUE_TYPE_UNDEFINED } -func (x *CurrentOfExpr) GetCursorParam() int32 { +func (x *JsonIsPredicate) GetUniqueKeys() bool { if x != nil { - return x.CursorParam + return x.UniqueKeys + } + return false +} + +func (x *JsonIsPredicate) GetLocation() int32 { + if x != nil { + return x.Location } return 0 } -type NextValueExpr struct { +type NullTest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - Seqid uint32 `protobuf:"varint,2,opt,name=seqid,proto3" json:"seqid,omitempty"` - TypeId uint32 `protobuf:"varint,3,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + Arg *Node `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` + Nulltesttype NullTestType `protobuf:"varint,3,opt,name=nulltesttype,proto3,enum=pg_query.NullTestType" json:"nulltesttype,omitempty"` + Argisrow bool `protobuf:"varint,4,opt,name=argisrow,proto3" json:"argisrow,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *NextValueExpr) Reset() { - *x = NextValueExpr{} +func (x *NullTest) Reset() { + *x = NullTest{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13369,13 +13810,13 @@ func (x *NextValueExpr) Reset() { } } -func (x *NextValueExpr) String() string { +func (x *NullTest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*NextValueExpr) ProtoMessage() {} +func (*NullTest) ProtoMessage() {} -func (x *NextValueExpr) ProtoReflect() protoreflect.Message { +func (x *NullTest) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13387,45 +13828,59 @@ func (x *NextValueExpr) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use NextValueExpr.ProtoReflect.Descriptor instead. -func (*NextValueExpr) Descriptor() ([]byte, []int) { +// Deprecated: Use NullTest.ProtoReflect.Descriptor instead. +func (*NullTest) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{54} } -func (x *NextValueExpr) GetXpr() *Node { +func (x *NullTest) GetXpr() *Node { if x != nil { return x.Xpr } return nil } -func (x *NextValueExpr) GetSeqid() uint32 { +func (x *NullTest) GetArg() *Node { if x != nil { - return x.Seqid + return x.Arg } - return 0 + return nil } -func (x *NextValueExpr) GetTypeId() uint32 { +func (x *NullTest) GetNulltesttype() NullTestType { if x != nil { - return x.TypeId + return x.Nulltesttype + } + return NullTestType_NULL_TEST_TYPE_UNDEFINED +} + +func (x *NullTest) GetArgisrow() bool { + if x != nil { + return x.Argisrow + } + return false +} + +func (x *NullTest) GetLocation() int32 { + if x != nil { + return x.Location } return 0 } -type InferenceElem struct { +type BooleanTest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` - Infercollid uint32 `protobuf:"varint,3,opt,name=infercollid,proto3" json:"infercollid,omitempty"` - Inferopclass uint32 `protobuf:"varint,4,opt,name=inferopclass,proto3" json:"inferopclass,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + Arg *Node `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` + Booltesttype BoolTestType `protobuf:"varint,3,opt,name=booltesttype,proto3,enum=pg_query.BoolTestType" json:"booltesttype,omitempty"` + Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` } -func (x *InferenceElem) Reset() { - *x = InferenceElem{} +func (x *BooleanTest) Reset() { + *x = BooleanTest{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13433,13 +13888,13 @@ func (x *InferenceElem) Reset() { } } -func (x *InferenceElem) String() string { +func (x *BooleanTest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*InferenceElem) ProtoMessage() {} +func (*BooleanTest) ProtoMessage() {} -func (x *InferenceElem) ProtoReflect() protoreflect.Message { +func (x *BooleanTest) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13451,56 +13906,55 @@ func (x *InferenceElem) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use InferenceElem.ProtoReflect.Descriptor instead. -func (*InferenceElem) Descriptor() ([]byte, []int) { +// Deprecated: Use BooleanTest.ProtoReflect.Descriptor instead. +func (*BooleanTest) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{55} } -func (x *InferenceElem) GetXpr() *Node { +func (x *BooleanTest) GetXpr() *Node { if x != nil { return x.Xpr } return nil } -func (x *InferenceElem) GetExpr() *Node { +func (x *BooleanTest) GetArg() *Node { if x != nil { - return x.Expr + return x.Arg } return nil } -func (x *InferenceElem) GetInfercollid() uint32 { +func (x *BooleanTest) GetBooltesttype() BoolTestType { if x != nil { - return x.Infercollid + return x.Booltesttype } - return 0 + return BoolTestType_BOOL_TEST_TYPE_UNDEFINED } -func (x *InferenceElem) GetInferopclass() uint32 { +func (x *BooleanTest) GetLocation() int32 { if x != nil { - return x.Inferopclass + return x.Location } return 0 } -type TargetEntry struct { +type CoerceToDomain struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` - Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` - Resno int32 `protobuf:"varint,3,opt,name=resno,proto3" json:"resno,omitempty"` - Resname string `protobuf:"bytes,4,opt,name=resname,proto3" json:"resname,omitempty"` - Ressortgroupref uint32 `protobuf:"varint,5,opt,name=ressortgroupref,proto3" json:"ressortgroupref,omitempty"` - Resorigtbl uint32 `protobuf:"varint,6,opt,name=resorigtbl,proto3" json:"resorigtbl,omitempty"` - Resorigcol int32 `protobuf:"varint,7,opt,name=resorigcol,proto3" json:"resorigcol,omitempty"` - Resjunk bool `protobuf:"varint,8,opt,name=resjunk,proto3" json:"resjunk,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + Arg *Node `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` + Resulttype uint32 `protobuf:"varint,3,opt,name=resulttype,proto3" json:"resulttype,omitempty"` + Resulttypmod int32 `protobuf:"varint,4,opt,name=resulttypmod,proto3" json:"resulttypmod,omitempty"` + Resultcollid uint32 `protobuf:"varint,5,opt,name=resultcollid,proto3" json:"resultcollid,omitempty"` + Coercionformat CoercionForm `protobuf:"varint,6,opt,name=coercionformat,proto3,enum=pg_query.CoercionForm" json:"coercionformat,omitempty"` + Location int32 `protobuf:"varint,7,opt,name=location,proto3" json:"location,omitempty"` } -func (x *TargetEntry) Reset() { - *x = TargetEntry{} +func (x *CoerceToDomain) Reset() { + *x = CoerceToDomain{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13508,13 +13962,13 @@ func (x *TargetEntry) Reset() { } } -func (x *TargetEntry) String() string { +func (x *CoerceToDomain) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TargetEntry) ProtoMessage() {} +func (*CoerceToDomain) ProtoMessage() {} -func (x *TargetEntry) ProtoReflect() protoreflect.Message { +func (x *CoerceToDomain) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13526,77 +13980,74 @@ func (x *TargetEntry) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use TargetEntry.ProtoReflect.Descriptor instead. -func (*TargetEntry) Descriptor() ([]byte, []int) { +// Deprecated: Use CoerceToDomain.ProtoReflect.Descriptor instead. +func (*CoerceToDomain) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{56} } -func (x *TargetEntry) GetXpr() *Node { +func (x *CoerceToDomain) GetXpr() *Node { if x != nil { return x.Xpr } return nil } -func (x *TargetEntry) GetExpr() *Node { +func (x *CoerceToDomain) GetArg() *Node { if x != nil { - return x.Expr + return x.Arg } return nil } -func (x *TargetEntry) GetResno() int32 { +func (x *CoerceToDomain) GetResulttype() uint32 { if x != nil { - return x.Resno + return x.Resulttype } return 0 } -func (x *TargetEntry) GetResname() string { +func (x *CoerceToDomain) GetResulttypmod() int32 { if x != nil { - return x.Resname + return x.Resulttypmod } - return "" + return 0 } -func (x *TargetEntry) GetRessortgroupref() uint32 { +func (x *CoerceToDomain) GetResultcollid() uint32 { if x != nil { - return x.Ressortgroupref + return x.Resultcollid } return 0 } -func (x *TargetEntry) GetResorigtbl() uint32 { +func (x *CoerceToDomain) GetCoercionformat() CoercionForm { if x != nil { - return x.Resorigtbl + return x.Coercionformat } - return 0 + return CoercionForm_COERCION_FORM_UNDEFINED } -func (x *TargetEntry) GetResorigcol() int32 { +func (x *CoerceToDomain) GetLocation() int32 { if x != nil { - return x.Resorigcol + return x.Location } return 0 } -func (x *TargetEntry) GetResjunk() bool { - if x != nil { - return x.Resjunk - } - return false -} - -type RangeTblRef struct { +type CoerceToDomainValue struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Rtindex int32 `protobuf:"varint,1,opt,name=rtindex,proto3" json:"rtindex,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + TypeId uint32 `protobuf:"varint,2,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` + TypeMod int32 `protobuf:"varint,3,opt,name=type_mod,json=typeMod,proto3" json:"type_mod,omitempty"` + Collation uint32 `protobuf:"varint,4,opt,name=collation,proto3" json:"collation,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *RangeTblRef) Reset() { - *x = RangeTblRef{} +func (x *CoerceToDomainValue) Reset() { + *x = CoerceToDomainValue{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13604,13 +14055,13 @@ func (x *RangeTblRef) Reset() { } } -func (x *RangeTblRef) String() string { +func (x *CoerceToDomainValue) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RangeTblRef) ProtoMessage() {} +func (*CoerceToDomainValue) ProtoMessage() {} -func (x *RangeTblRef) ProtoReflect() protoreflect.Message { +func (x *CoerceToDomainValue) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13622,36 +14073,60 @@ func (x *RangeTblRef) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RangeTblRef.ProtoReflect.Descriptor instead. -func (*RangeTblRef) Descriptor() ([]byte, []int) { +// Deprecated: Use CoerceToDomainValue.ProtoReflect.Descriptor instead. +func (*CoerceToDomainValue) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{57} } -func (x *RangeTblRef) GetRtindex() int32 { +func (x *CoerceToDomainValue) GetXpr() *Node { if x != nil { - return x.Rtindex + return x.Xpr + } + return nil +} + +func (x *CoerceToDomainValue) GetTypeId() uint32 { + if x != nil { + return x.TypeId } return 0 } -type JoinExpr struct { +func (x *CoerceToDomainValue) GetTypeMod() int32 { + if x != nil { + return x.TypeMod + } + return 0 +} + +func (x *CoerceToDomainValue) GetCollation() uint32 { + if x != nil { + return x.Collation + } + return 0 +} + +func (x *CoerceToDomainValue) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type SetToDefault struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Jointype JoinType `protobuf:"varint,1,opt,name=jointype,proto3,enum=pg_query.JoinType" json:"jointype,omitempty"` - IsNatural bool `protobuf:"varint,2,opt,name=is_natural,json=isNatural,proto3" json:"is_natural,omitempty"` - Larg *Node `protobuf:"bytes,3,opt,name=larg,proto3" json:"larg,omitempty"` - Rarg *Node `protobuf:"bytes,4,opt,name=rarg,proto3" json:"rarg,omitempty"` - UsingClause []*Node `protobuf:"bytes,5,rep,name=using_clause,json=usingClause,proto3" json:"using_clause,omitempty"` - JoinUsingAlias *Alias `protobuf:"bytes,6,opt,name=join_using_alias,proto3" json:"join_using_alias,omitempty"` - Quals *Node `protobuf:"bytes,7,opt,name=quals,proto3" json:"quals,omitempty"` - Alias *Alias `protobuf:"bytes,8,opt,name=alias,proto3" json:"alias,omitempty"` - Rtindex int32 `protobuf:"varint,9,opt,name=rtindex,proto3" json:"rtindex,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + TypeId uint32 `protobuf:"varint,2,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` + TypeMod int32 `protobuf:"varint,3,opt,name=type_mod,json=typeMod,proto3" json:"type_mod,omitempty"` + Collation uint32 `protobuf:"varint,4,opt,name=collation,proto3" json:"collation,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *JoinExpr) Reset() { - *x = JoinExpr{} +func (x *SetToDefault) Reset() { + *x = SetToDefault{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13659,13 +14134,13 @@ func (x *JoinExpr) Reset() { } } -func (x *JoinExpr) String() string { +func (x *SetToDefault) String() string { return protoimpl.X.MessageStringOf(x) } -func (*JoinExpr) ProtoMessage() {} +func (*SetToDefault) ProtoMessage() {} -func (x *JoinExpr) ProtoReflect() protoreflect.Message { +func (x *SetToDefault) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13677,85 +14152,59 @@ func (x *JoinExpr) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use JoinExpr.ProtoReflect.Descriptor instead. -func (*JoinExpr) Descriptor() ([]byte, []int) { +// Deprecated: Use SetToDefault.ProtoReflect.Descriptor instead. +func (*SetToDefault) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{58} } -func (x *JoinExpr) GetJointype() JoinType { - if x != nil { - return x.Jointype - } - return JoinType_JOIN_TYPE_UNDEFINED -} - -func (x *JoinExpr) GetIsNatural() bool { - if x != nil { - return x.IsNatural - } - return false -} - -func (x *JoinExpr) GetLarg() *Node { - if x != nil { - return x.Larg - } - return nil -} - -func (x *JoinExpr) GetRarg() *Node { - if x != nil { - return x.Rarg - } - return nil -} - -func (x *JoinExpr) GetUsingClause() []*Node { +func (x *SetToDefault) GetXpr() *Node { if x != nil { - return x.UsingClause + return x.Xpr } return nil } -func (x *JoinExpr) GetJoinUsingAlias() *Alias { +func (x *SetToDefault) GetTypeId() uint32 { if x != nil { - return x.JoinUsingAlias + return x.TypeId } - return nil + return 0 } -func (x *JoinExpr) GetQuals() *Node { +func (x *SetToDefault) GetTypeMod() int32 { if x != nil { - return x.Quals + return x.TypeMod } - return nil + return 0 } -func (x *JoinExpr) GetAlias() *Alias { +func (x *SetToDefault) GetCollation() uint32 { if x != nil { - return x.Alias + return x.Collation } - return nil + return 0 } -func (x *JoinExpr) GetRtindex() int32 { +func (x *SetToDefault) GetLocation() int32 { if x != nil { - return x.Rtindex + return x.Location } return 0 } -type FromExpr struct { +type CurrentOfExpr struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Fromlist []*Node `protobuf:"bytes,1,rep,name=fromlist,proto3" json:"fromlist,omitempty"` - Quals *Node `protobuf:"bytes,2,opt,name=quals,proto3" json:"quals,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + Cvarno uint32 `protobuf:"varint,2,opt,name=cvarno,proto3" json:"cvarno,omitempty"` + CursorName string `protobuf:"bytes,3,opt,name=cursor_name,proto3" json:"cursor_name,omitempty"` + CursorParam int32 `protobuf:"varint,4,opt,name=cursor_param,proto3" json:"cursor_param,omitempty"` } -func (x *FromExpr) Reset() { - *x = FromExpr{} +func (x *CurrentOfExpr) Reset() { + *x = CurrentOfExpr{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13763,13 +14212,13 @@ func (x *FromExpr) Reset() { } } -func (x *FromExpr) String() string { +func (x *CurrentOfExpr) String() string { return protoimpl.X.MessageStringOf(x) } -func (*FromExpr) ProtoMessage() {} +func (*CurrentOfExpr) ProtoMessage() {} -func (x *FromExpr) ProtoReflect() protoreflect.Message { +func (x *CurrentOfExpr) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13781,42 +14230,51 @@ func (x *FromExpr) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use FromExpr.ProtoReflect.Descriptor instead. -func (*FromExpr) Descriptor() ([]byte, []int) { +// Deprecated: Use CurrentOfExpr.ProtoReflect.Descriptor instead. +func (*CurrentOfExpr) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{59} } -func (x *FromExpr) GetFromlist() []*Node { +func (x *CurrentOfExpr) GetXpr() *Node { if x != nil { - return x.Fromlist + return x.Xpr } return nil } -func (x *FromExpr) GetQuals() *Node { +func (x *CurrentOfExpr) GetCvarno() uint32 { if x != nil { - return x.Quals + return x.Cvarno } - return nil + return 0 } -type OnConflictExpr struct { +func (x *CurrentOfExpr) GetCursorName() string { + if x != nil { + return x.CursorName + } + return "" +} + +func (x *CurrentOfExpr) GetCursorParam() int32 { + if x != nil { + return x.CursorParam + } + return 0 +} + +type NextValueExpr struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Action OnConflictAction `protobuf:"varint,1,opt,name=action,proto3,enum=pg_query.OnConflictAction" json:"action,omitempty"` - ArbiterElems []*Node `protobuf:"bytes,2,rep,name=arbiter_elems,json=arbiterElems,proto3" json:"arbiter_elems,omitempty"` - ArbiterWhere *Node `protobuf:"bytes,3,opt,name=arbiter_where,json=arbiterWhere,proto3" json:"arbiter_where,omitempty"` - Constraint uint32 `protobuf:"varint,4,opt,name=constraint,proto3" json:"constraint,omitempty"` - OnConflictSet []*Node `protobuf:"bytes,5,rep,name=on_conflict_set,json=onConflictSet,proto3" json:"on_conflict_set,omitempty"` - OnConflictWhere *Node `protobuf:"bytes,6,opt,name=on_conflict_where,json=onConflictWhere,proto3" json:"on_conflict_where,omitempty"` - ExclRelIndex int32 `protobuf:"varint,7,opt,name=excl_rel_index,json=exclRelIndex,proto3" json:"excl_rel_index,omitempty"` - ExclRelTlist []*Node `protobuf:"bytes,8,rep,name=excl_rel_tlist,json=exclRelTlist,proto3" json:"excl_rel_tlist,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + Seqid uint32 `protobuf:"varint,2,opt,name=seqid,proto3" json:"seqid,omitempty"` + TypeId uint32 `protobuf:"varint,3,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` } -func (x *OnConflictExpr) Reset() { - *x = OnConflictExpr{} +func (x *NextValueExpr) Reset() { + *x = NextValueExpr{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13824,13 +14282,13 @@ func (x *OnConflictExpr) Reset() { } } -func (x *OnConflictExpr) String() string { +func (x *NextValueExpr) String() string { return protoimpl.X.MessageStringOf(x) } -func (*OnConflictExpr) ProtoMessage() {} +func (*NextValueExpr) ProtoMessage() {} -func (x *OnConflictExpr) ProtoReflect() protoreflect.Message { +func (x *NextValueExpr) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13842,84 +14300,45 @@ func (x *OnConflictExpr) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use OnConflictExpr.ProtoReflect.Descriptor instead. -func (*OnConflictExpr) Descriptor() ([]byte, []int) { +// Deprecated: Use NextValueExpr.ProtoReflect.Descriptor instead. +func (*NextValueExpr) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{60} } -func (x *OnConflictExpr) GetAction() OnConflictAction { - if x != nil { - return x.Action - } - return OnConflictAction_ON_CONFLICT_ACTION_UNDEFINED -} - -func (x *OnConflictExpr) GetArbiterElems() []*Node { - if x != nil { - return x.ArbiterElems - } - return nil -} - -func (x *OnConflictExpr) GetArbiterWhere() *Node { +func (x *NextValueExpr) GetXpr() *Node { if x != nil { - return x.ArbiterWhere + return x.Xpr } return nil } -func (x *OnConflictExpr) GetConstraint() uint32 { +func (x *NextValueExpr) GetSeqid() uint32 { if x != nil { - return x.Constraint + return x.Seqid } return 0 } -func (x *OnConflictExpr) GetOnConflictSet() []*Node { +func (x *NextValueExpr) GetTypeId() uint32 { if x != nil { - return x.OnConflictSet + return x.TypeId } - return nil + return 0 } -func (x *OnConflictExpr) GetOnConflictWhere() *Node { - if x != nil { - return x.OnConflictWhere - } - return nil -} - -func (x *OnConflictExpr) GetExclRelIndex() int32 { - if x != nil { - return x.ExclRelIndex - } - return 0 -} - -func (x *OnConflictExpr) GetExclRelTlist() []*Node { - if x != nil { - return x.ExclRelTlist - } - return nil -} - -type IntoClause struct { +type InferenceElem struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Rel *RangeVar `protobuf:"bytes,1,opt,name=rel,proto3" json:"rel,omitempty"` - ColNames []*Node `protobuf:"bytes,2,rep,name=col_names,json=colNames,proto3" json:"col_names,omitempty"` - AccessMethod string `protobuf:"bytes,3,opt,name=access_method,json=accessMethod,proto3" json:"access_method,omitempty"` - Options []*Node `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"` - OnCommit OnCommitAction `protobuf:"varint,5,opt,name=on_commit,json=onCommit,proto3,enum=pg_query.OnCommitAction" json:"on_commit,omitempty"` - TableSpaceName string `protobuf:"bytes,6,opt,name=table_space_name,json=tableSpaceName,proto3" json:"table_space_name,omitempty"` - ViewQuery *Node `protobuf:"bytes,7,opt,name=view_query,json=viewQuery,proto3" json:"view_query,omitempty"` - SkipData bool `protobuf:"varint,8,opt,name=skip_data,json=skipData,proto3" json:"skip_data,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` + Infercollid uint32 `protobuf:"varint,3,opt,name=infercollid,proto3" json:"infercollid,omitempty"` + Inferopclass uint32 `protobuf:"varint,4,opt,name=inferopclass,proto3" json:"inferopclass,omitempty"` } -func (x *IntoClause) Reset() { - *x = IntoClause{} +func (x *InferenceElem) Reset() { + *x = InferenceElem{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13927,13 +14346,13 @@ func (x *IntoClause) Reset() { } } -func (x *IntoClause) String() string { +func (x *InferenceElem) String() string { return protoimpl.X.MessageStringOf(x) } -func (*IntoClause) ProtoMessage() {} +func (*InferenceElem) ProtoMessage() {} -func (x *IntoClause) ProtoReflect() protoreflect.Message { +func (x *InferenceElem) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13945,82 +14364,56 @@ func (x *IntoClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use IntoClause.ProtoReflect.Descriptor instead. -func (*IntoClause) Descriptor() ([]byte, []int) { +// Deprecated: Use InferenceElem.ProtoReflect.Descriptor instead. +func (*InferenceElem) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{61} } -func (x *IntoClause) GetRel() *RangeVar { - if x != nil { - return x.Rel - } - return nil -} - -func (x *IntoClause) GetColNames() []*Node { +func (x *InferenceElem) GetXpr() *Node { if x != nil { - return x.ColNames + return x.Xpr } return nil } -func (x *IntoClause) GetAccessMethod() string { - if x != nil { - return x.AccessMethod - } - return "" -} - -func (x *IntoClause) GetOptions() []*Node { +func (x *InferenceElem) GetExpr() *Node { if x != nil { - return x.Options + return x.Expr } return nil } -func (x *IntoClause) GetOnCommit() OnCommitAction { - if x != nil { - return x.OnCommit - } - return OnCommitAction_ON_COMMIT_ACTION_UNDEFINED -} - -func (x *IntoClause) GetTableSpaceName() string { - if x != nil { - return x.TableSpaceName - } - return "" -} - -func (x *IntoClause) GetViewQuery() *Node { +func (x *InferenceElem) GetInfercollid() uint32 { if x != nil { - return x.ViewQuery + return x.Infercollid } - return nil + return 0 } -func (x *IntoClause) GetSkipData() bool { +func (x *InferenceElem) GetInferopclass() uint32 { if x != nil { - return x.SkipData + return x.Inferopclass } - return false + return 0 } -type MergeAction struct { +type TargetEntry struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Matched bool `protobuf:"varint,1,opt,name=matched,proto3" json:"matched,omitempty"` - CommandType CmdType `protobuf:"varint,2,opt,name=command_type,json=commandType,proto3,enum=pg_query.CmdType" json:"command_type,omitempty"` - Override OverridingKind `protobuf:"varint,3,opt,name=override,proto3,enum=pg_query.OverridingKind" json:"override,omitempty"` - Qual *Node `protobuf:"bytes,4,opt,name=qual,proto3" json:"qual,omitempty"` - TargetList []*Node `protobuf:"bytes,5,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` - UpdateColnos []*Node `protobuf:"bytes,6,rep,name=update_colnos,json=updateColnos,proto3" json:"update_colnos,omitempty"` + Xpr *Node `protobuf:"bytes,1,opt,name=xpr,proto3" json:"xpr,omitempty"` + Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` + Resno int32 `protobuf:"varint,3,opt,name=resno,proto3" json:"resno,omitempty"` + Resname string `protobuf:"bytes,4,opt,name=resname,proto3" json:"resname,omitempty"` + Ressortgroupref uint32 `protobuf:"varint,5,opt,name=ressortgroupref,proto3" json:"ressortgroupref,omitempty"` + Resorigtbl uint32 `protobuf:"varint,6,opt,name=resorigtbl,proto3" json:"resorigtbl,omitempty"` + Resorigcol int32 `protobuf:"varint,7,opt,name=resorigcol,proto3" json:"resorigcol,omitempty"` + Resjunk bool `protobuf:"varint,8,opt,name=resjunk,proto3" json:"resjunk,omitempty"` } -func (x *MergeAction) Reset() { - *x = MergeAction{} +func (x *TargetEntry) Reset() { + *x = TargetEntry{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14028,13 +14421,13 @@ func (x *MergeAction) Reset() { } } -func (x *MergeAction) String() string { +func (x *TargetEntry) String() string { return protoimpl.X.MessageStringOf(x) } -func (*MergeAction) ProtoMessage() {} +func (*TargetEntry) ProtoMessage() {} -func (x *MergeAction) ProtoReflect() protoreflect.Message { +func (x *TargetEntry) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14046,65 +14439,77 @@ func (x *MergeAction) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use MergeAction.ProtoReflect.Descriptor instead. -func (*MergeAction) Descriptor() ([]byte, []int) { +// Deprecated: Use TargetEntry.ProtoReflect.Descriptor instead. +func (*TargetEntry) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{62} } -func (x *MergeAction) GetMatched() bool { +func (x *TargetEntry) GetXpr() *Node { if x != nil { - return x.Matched + return x.Xpr } - return false + return nil } -func (x *MergeAction) GetCommandType() CmdType { +func (x *TargetEntry) GetExpr() *Node { if x != nil { - return x.CommandType + return x.Expr } - return CmdType_CMD_TYPE_UNDEFINED + return nil } -func (x *MergeAction) GetOverride() OverridingKind { +func (x *TargetEntry) GetResno() int32 { if x != nil { - return x.Override + return x.Resno } - return OverridingKind_OVERRIDING_KIND_UNDEFINED + return 0 } -func (x *MergeAction) GetQual() *Node { +func (x *TargetEntry) GetResname() string { if x != nil { - return x.Qual + return x.Resname } - return nil + return "" } -func (x *MergeAction) GetTargetList() []*Node { +func (x *TargetEntry) GetRessortgroupref() uint32 { if x != nil { - return x.TargetList + return x.Ressortgroupref } - return nil + return 0 } -func (x *MergeAction) GetUpdateColnos() []*Node { +func (x *TargetEntry) GetResorigtbl() uint32 { if x != nil { - return x.UpdateColnos + return x.Resorigtbl } - return nil + return 0 } -type RawStmt struct { +func (x *TargetEntry) GetResorigcol() int32 { + if x != nil { + return x.Resorigcol + } + return 0 +} + +func (x *TargetEntry) GetResjunk() bool { + if x != nil { + return x.Resjunk + } + return false +} + +type RangeTblRef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Stmt *Node `protobuf:"bytes,1,opt,name=stmt,proto3" json:"stmt,omitempty"` - StmtLocation int32 `protobuf:"varint,2,opt,name=stmt_location,proto3" json:"stmt_location,omitempty"` - StmtLen int32 `protobuf:"varint,3,opt,name=stmt_len,proto3" json:"stmt_len,omitempty"` + Rtindex int32 `protobuf:"varint,1,opt,name=rtindex,proto3" json:"rtindex,omitempty"` } -func (x *RawStmt) Reset() { - *x = RawStmt{} +func (x *RangeTblRef) Reset() { + *x = RangeTblRef{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14112,13 +14517,13 @@ func (x *RawStmt) Reset() { } } -func (x *RawStmt) String() string { +func (x *RangeTblRef) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RawStmt) ProtoMessage() {} +func (*RangeTblRef) ProtoMessage() {} -func (x *RawStmt) ProtoReflect() protoreflect.Message { +func (x *RangeTblRef) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14130,81 +14535,36 @@ func (x *RawStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RawStmt.ProtoReflect.Descriptor instead. -func (*RawStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use RangeTblRef.ProtoReflect.Descriptor instead. +func (*RangeTblRef) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{63} } -func (x *RawStmt) GetStmt() *Node { - if x != nil { - return x.Stmt - } - return nil -} - -func (x *RawStmt) GetStmtLocation() int32 { - if x != nil { - return x.StmtLocation - } - return 0 -} - -func (x *RawStmt) GetStmtLen() int32 { +func (x *RangeTblRef) GetRtindex() int32 { if x != nil { - return x.StmtLen + return x.Rtindex } return 0 } -type Query struct { +type JoinExpr struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - CommandType CmdType `protobuf:"varint,1,opt,name=command_type,json=commandType,proto3,enum=pg_query.CmdType" json:"command_type,omitempty"` - QuerySource QuerySource `protobuf:"varint,2,opt,name=query_source,json=querySource,proto3,enum=pg_query.QuerySource" json:"query_source,omitempty"` - CanSetTag bool `protobuf:"varint,3,opt,name=can_set_tag,json=canSetTag,proto3" json:"can_set_tag,omitempty"` - UtilityStmt *Node `protobuf:"bytes,4,opt,name=utility_stmt,json=utilityStmt,proto3" json:"utility_stmt,omitempty"` - ResultRelation int32 `protobuf:"varint,5,opt,name=result_relation,json=resultRelation,proto3" json:"result_relation,omitempty"` - HasAggs bool `protobuf:"varint,6,opt,name=has_aggs,json=hasAggs,proto3" json:"has_aggs,omitempty"` - HasWindowFuncs bool `protobuf:"varint,7,opt,name=has_window_funcs,json=hasWindowFuncs,proto3" json:"has_window_funcs,omitempty"` - HasTargetSrfs bool `protobuf:"varint,8,opt,name=has_target_srfs,json=hasTargetSRFs,proto3" json:"has_target_srfs,omitempty"` - HasSubLinks bool `protobuf:"varint,9,opt,name=has_sub_links,json=hasSubLinks,proto3" json:"has_sub_links,omitempty"` - HasDistinctOn bool `protobuf:"varint,10,opt,name=has_distinct_on,json=hasDistinctOn,proto3" json:"has_distinct_on,omitempty"` - HasRecursive bool `protobuf:"varint,11,opt,name=has_recursive,json=hasRecursive,proto3" json:"has_recursive,omitempty"` - HasModifyingCte bool `protobuf:"varint,12,opt,name=has_modifying_cte,json=hasModifyingCTE,proto3" json:"has_modifying_cte,omitempty"` - HasForUpdate bool `protobuf:"varint,13,opt,name=has_for_update,json=hasForUpdate,proto3" json:"has_for_update,omitempty"` - HasRowSecurity bool `protobuf:"varint,14,opt,name=has_row_security,json=hasRowSecurity,proto3" json:"has_row_security,omitempty"` - IsReturn bool `protobuf:"varint,15,opt,name=is_return,json=isReturn,proto3" json:"is_return,omitempty"` - CteList []*Node `protobuf:"bytes,16,rep,name=cte_list,json=cteList,proto3" json:"cte_list,omitempty"` - Rtable []*Node `protobuf:"bytes,17,rep,name=rtable,proto3" json:"rtable,omitempty"` - Jointree *FromExpr `protobuf:"bytes,18,opt,name=jointree,proto3" json:"jointree,omitempty"` - MergeActionList []*Node `protobuf:"bytes,19,rep,name=merge_action_list,json=mergeActionList,proto3" json:"merge_action_list,omitempty"` - MergeUseOuterJoin bool `protobuf:"varint,20,opt,name=merge_use_outer_join,json=mergeUseOuterJoin,proto3" json:"merge_use_outer_join,omitempty"` - TargetList []*Node `protobuf:"bytes,21,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` - Override OverridingKind `protobuf:"varint,22,opt,name=override,proto3,enum=pg_query.OverridingKind" json:"override,omitempty"` - OnConflict *OnConflictExpr `protobuf:"bytes,23,opt,name=on_conflict,json=onConflict,proto3" json:"on_conflict,omitempty"` - ReturningList []*Node `protobuf:"bytes,24,rep,name=returning_list,json=returningList,proto3" json:"returning_list,omitempty"` - GroupClause []*Node `protobuf:"bytes,25,rep,name=group_clause,json=groupClause,proto3" json:"group_clause,omitempty"` - GroupDistinct bool `protobuf:"varint,26,opt,name=group_distinct,json=groupDistinct,proto3" json:"group_distinct,omitempty"` - GroupingSets []*Node `protobuf:"bytes,27,rep,name=grouping_sets,json=groupingSets,proto3" json:"grouping_sets,omitempty"` - HavingQual *Node `protobuf:"bytes,28,opt,name=having_qual,json=havingQual,proto3" json:"having_qual,omitempty"` - WindowClause []*Node `protobuf:"bytes,29,rep,name=window_clause,json=windowClause,proto3" json:"window_clause,omitempty"` - DistinctClause []*Node `protobuf:"bytes,30,rep,name=distinct_clause,json=distinctClause,proto3" json:"distinct_clause,omitempty"` - SortClause []*Node `protobuf:"bytes,31,rep,name=sort_clause,json=sortClause,proto3" json:"sort_clause,omitempty"` - LimitOffset *Node `protobuf:"bytes,32,opt,name=limit_offset,json=limitOffset,proto3" json:"limit_offset,omitempty"` - LimitCount *Node `protobuf:"bytes,33,opt,name=limit_count,json=limitCount,proto3" json:"limit_count,omitempty"` - LimitOption LimitOption `protobuf:"varint,34,opt,name=limit_option,json=limitOption,proto3,enum=pg_query.LimitOption" json:"limit_option,omitempty"` - RowMarks []*Node `protobuf:"bytes,35,rep,name=row_marks,json=rowMarks,proto3" json:"row_marks,omitempty"` - SetOperations *Node `protobuf:"bytes,36,opt,name=set_operations,json=setOperations,proto3" json:"set_operations,omitempty"` - ConstraintDeps []*Node `protobuf:"bytes,37,rep,name=constraint_deps,json=constraintDeps,proto3" json:"constraint_deps,omitempty"` - WithCheckOptions []*Node `protobuf:"bytes,38,rep,name=with_check_options,json=withCheckOptions,proto3" json:"with_check_options,omitempty"` - StmtLocation int32 `protobuf:"varint,39,opt,name=stmt_location,proto3" json:"stmt_location,omitempty"` - StmtLen int32 `protobuf:"varint,40,opt,name=stmt_len,proto3" json:"stmt_len,omitempty"` + Jointype JoinType `protobuf:"varint,1,opt,name=jointype,proto3,enum=pg_query.JoinType" json:"jointype,omitempty"` + IsNatural bool `protobuf:"varint,2,opt,name=is_natural,json=isNatural,proto3" json:"is_natural,omitempty"` + Larg *Node `protobuf:"bytes,3,opt,name=larg,proto3" json:"larg,omitempty"` + Rarg *Node `protobuf:"bytes,4,opt,name=rarg,proto3" json:"rarg,omitempty"` + UsingClause []*Node `protobuf:"bytes,5,rep,name=using_clause,json=usingClause,proto3" json:"using_clause,omitempty"` + JoinUsingAlias *Alias `protobuf:"bytes,6,opt,name=join_using_alias,proto3" json:"join_using_alias,omitempty"` + Quals *Node `protobuf:"bytes,7,opt,name=quals,proto3" json:"quals,omitempty"` + Alias *Alias `protobuf:"bytes,8,opt,name=alias,proto3" json:"alias,omitempty"` + Rtindex int32 `protobuf:"varint,9,opt,name=rtindex,proto3" json:"rtindex,omitempty"` } -func (x *Query) Reset() { - *x = Query{} +func (x *JoinExpr) Reset() { + *x = JoinExpr{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14212,13 +14572,13 @@ func (x *Query) Reset() { } } -func (x *Query) String() string { +func (x *JoinExpr) String() string { return protoimpl.X.MessageStringOf(x) } -func (*Query) ProtoMessage() {} +func (*JoinExpr) ProtoMessage() {} -func (x *Query) ProtoReflect() protoreflect.Message { +func (x *JoinExpr) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14230,566 +14590,616 @@ func (x *Query) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use Query.ProtoReflect.Descriptor instead. -func (*Query) Descriptor() ([]byte, []int) { +// Deprecated: Use JoinExpr.ProtoReflect.Descriptor instead. +func (*JoinExpr) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{64} } -func (x *Query) GetCommandType() CmdType { - if x != nil { - return x.CommandType - } - return CmdType_CMD_TYPE_UNDEFINED -} - -func (x *Query) GetQuerySource() QuerySource { +func (x *JoinExpr) GetJointype() JoinType { if x != nil { - return x.QuerySource + return x.Jointype } - return QuerySource_QUERY_SOURCE_UNDEFINED + return JoinType_JOIN_TYPE_UNDEFINED } -func (x *Query) GetCanSetTag() bool { +func (x *JoinExpr) GetIsNatural() bool { if x != nil { - return x.CanSetTag + return x.IsNatural } return false } -func (x *Query) GetUtilityStmt() *Node { +func (x *JoinExpr) GetLarg() *Node { if x != nil { - return x.UtilityStmt + return x.Larg } return nil } -func (x *Query) GetResultRelation() int32 { +func (x *JoinExpr) GetRarg() *Node { if x != nil { - return x.ResultRelation + return x.Rarg } - return 0 + return nil } -func (x *Query) GetHasAggs() bool { +func (x *JoinExpr) GetUsingClause() []*Node { if x != nil { - return x.HasAggs + return x.UsingClause } - return false + return nil } -func (x *Query) GetHasWindowFuncs() bool { +func (x *JoinExpr) GetJoinUsingAlias() *Alias { if x != nil { - return x.HasWindowFuncs + return x.JoinUsingAlias } - return false + return nil } -func (x *Query) GetHasTargetSrfs() bool { +func (x *JoinExpr) GetQuals() *Node { if x != nil { - return x.HasTargetSrfs + return x.Quals } - return false + return nil } -func (x *Query) GetHasSubLinks() bool { +func (x *JoinExpr) GetAlias() *Alias { if x != nil { - return x.HasSubLinks + return x.Alias } - return false + return nil } -func (x *Query) GetHasDistinctOn() bool { +func (x *JoinExpr) GetRtindex() int32 { if x != nil { - return x.HasDistinctOn + return x.Rtindex } - return false + return 0 } -func (x *Query) GetHasRecursive() bool { - if x != nil { - return x.HasRecursive - } - return false +type FromExpr struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Fromlist []*Node `protobuf:"bytes,1,rep,name=fromlist,proto3" json:"fromlist,omitempty"` + Quals *Node `protobuf:"bytes,2,opt,name=quals,proto3" json:"quals,omitempty"` } -func (x *Query) GetHasModifyingCte() bool { - if x != nil { - return x.HasModifyingCte +func (x *FromExpr) Reset() { + *x = FromExpr{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[65] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return false } -func (x *Query) GetHasForUpdate() bool { - if x != nil { - return x.HasForUpdate - } - return false +func (x *FromExpr) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *Query) GetHasRowSecurity() bool { - if x != nil { - return x.HasRowSecurity +func (*FromExpr) ProtoMessage() {} + +func (x *FromExpr) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[65] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return false + return mi.MessageOf(x) } -func (x *Query) GetIsReturn() bool { - if x != nil { - return x.IsReturn - } - return false +// Deprecated: Use FromExpr.ProtoReflect.Descriptor instead. +func (*FromExpr) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{65} } -func (x *Query) GetCteList() []*Node { +func (x *FromExpr) GetFromlist() []*Node { if x != nil { - return x.CteList + return x.Fromlist } return nil } -func (x *Query) GetRtable() []*Node { +func (x *FromExpr) GetQuals() *Node { if x != nil { - return x.Rtable + return x.Quals } return nil } -func (x *Query) GetJointree() *FromExpr { - if x != nil { - return x.Jointree - } - return nil +type OnConflictExpr struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action OnConflictAction `protobuf:"varint,1,opt,name=action,proto3,enum=pg_query.OnConflictAction" json:"action,omitempty"` + ArbiterElems []*Node `protobuf:"bytes,2,rep,name=arbiter_elems,json=arbiterElems,proto3" json:"arbiter_elems,omitempty"` + ArbiterWhere *Node `protobuf:"bytes,3,opt,name=arbiter_where,json=arbiterWhere,proto3" json:"arbiter_where,omitempty"` + Constraint uint32 `protobuf:"varint,4,opt,name=constraint,proto3" json:"constraint,omitempty"` + OnConflictSet []*Node `protobuf:"bytes,5,rep,name=on_conflict_set,json=onConflictSet,proto3" json:"on_conflict_set,omitempty"` + OnConflictWhere *Node `protobuf:"bytes,6,opt,name=on_conflict_where,json=onConflictWhere,proto3" json:"on_conflict_where,omitempty"` + ExclRelIndex int32 `protobuf:"varint,7,opt,name=excl_rel_index,json=exclRelIndex,proto3" json:"excl_rel_index,omitempty"` + ExclRelTlist []*Node `protobuf:"bytes,8,rep,name=excl_rel_tlist,json=exclRelTlist,proto3" json:"excl_rel_tlist,omitempty"` } -func (x *Query) GetMergeActionList() []*Node { - if x != nil { - return x.MergeActionList +func (x *OnConflictExpr) Reset() { + *x = OnConflictExpr{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[66] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *Query) GetMergeUseOuterJoin() bool { - if x != nil { - return x.MergeUseOuterJoin - } - return false +func (x *OnConflictExpr) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *Query) GetTargetList() []*Node { - if x != nil { - return x.TargetList +func (*OnConflictExpr) ProtoMessage() {} + +func (x *OnConflictExpr) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[66] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *Query) GetOverride() OverridingKind { - if x != nil { - return x.Override - } - return OverridingKind_OVERRIDING_KIND_UNDEFINED +// Deprecated: Use OnConflictExpr.ProtoReflect.Descriptor instead. +func (*OnConflictExpr) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{66} } -func (x *Query) GetOnConflict() *OnConflictExpr { +func (x *OnConflictExpr) GetAction() OnConflictAction { if x != nil { - return x.OnConflict + return x.Action } - return nil + return OnConflictAction_ON_CONFLICT_ACTION_UNDEFINED } -func (x *Query) GetReturningList() []*Node { +func (x *OnConflictExpr) GetArbiterElems() []*Node { if x != nil { - return x.ReturningList + return x.ArbiterElems } return nil } -func (x *Query) GetGroupClause() []*Node { +func (x *OnConflictExpr) GetArbiterWhere() *Node { if x != nil { - return x.GroupClause + return x.ArbiterWhere } return nil } -func (x *Query) GetGroupDistinct() bool { +func (x *OnConflictExpr) GetConstraint() uint32 { if x != nil { - return x.GroupDistinct + return x.Constraint } - return false + return 0 } -func (x *Query) GetGroupingSets() []*Node { +func (x *OnConflictExpr) GetOnConflictSet() []*Node { if x != nil { - return x.GroupingSets + return x.OnConflictSet } return nil } -func (x *Query) GetHavingQual() *Node { +func (x *OnConflictExpr) GetOnConflictWhere() *Node { if x != nil { - return x.HavingQual + return x.OnConflictWhere } return nil } -func (x *Query) GetWindowClause() []*Node { +func (x *OnConflictExpr) GetExclRelIndex() int32 { if x != nil { - return x.WindowClause + return x.ExclRelIndex } - return nil + return 0 } -func (x *Query) GetDistinctClause() []*Node { +func (x *OnConflictExpr) GetExclRelTlist() []*Node { if x != nil { - return x.DistinctClause + return x.ExclRelTlist } return nil } -func (x *Query) GetSortClause() []*Node { - if x != nil { - return x.SortClause - } - return nil +type Query struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CommandType CmdType `protobuf:"varint,1,opt,name=command_type,json=commandType,proto3,enum=pg_query.CmdType" json:"command_type,omitempty"` + QuerySource QuerySource `protobuf:"varint,2,opt,name=query_source,json=querySource,proto3,enum=pg_query.QuerySource" json:"query_source,omitempty"` + CanSetTag bool `protobuf:"varint,3,opt,name=can_set_tag,json=canSetTag,proto3" json:"can_set_tag,omitempty"` + UtilityStmt *Node `protobuf:"bytes,4,opt,name=utility_stmt,json=utilityStmt,proto3" json:"utility_stmt,omitempty"` + ResultRelation int32 `protobuf:"varint,5,opt,name=result_relation,json=resultRelation,proto3" json:"result_relation,omitempty"` + HasAggs bool `protobuf:"varint,6,opt,name=has_aggs,json=hasAggs,proto3" json:"has_aggs,omitempty"` + HasWindowFuncs bool `protobuf:"varint,7,opt,name=has_window_funcs,json=hasWindowFuncs,proto3" json:"has_window_funcs,omitempty"` + HasTargetSrfs bool `protobuf:"varint,8,opt,name=has_target_srfs,json=hasTargetSRFs,proto3" json:"has_target_srfs,omitempty"` + HasSubLinks bool `protobuf:"varint,9,opt,name=has_sub_links,json=hasSubLinks,proto3" json:"has_sub_links,omitempty"` + HasDistinctOn bool `protobuf:"varint,10,opt,name=has_distinct_on,json=hasDistinctOn,proto3" json:"has_distinct_on,omitempty"` + HasRecursive bool `protobuf:"varint,11,opt,name=has_recursive,json=hasRecursive,proto3" json:"has_recursive,omitempty"` + HasModifyingCte bool `protobuf:"varint,12,opt,name=has_modifying_cte,json=hasModifyingCTE,proto3" json:"has_modifying_cte,omitempty"` + HasForUpdate bool `protobuf:"varint,13,opt,name=has_for_update,json=hasForUpdate,proto3" json:"has_for_update,omitempty"` + HasRowSecurity bool `protobuf:"varint,14,opt,name=has_row_security,json=hasRowSecurity,proto3" json:"has_row_security,omitempty"` + IsReturn bool `protobuf:"varint,15,opt,name=is_return,json=isReturn,proto3" json:"is_return,omitempty"` + CteList []*Node `protobuf:"bytes,16,rep,name=cte_list,json=cteList,proto3" json:"cte_list,omitempty"` + Rtable []*Node `protobuf:"bytes,17,rep,name=rtable,proto3" json:"rtable,omitempty"` + Rteperminfos []*Node `protobuf:"bytes,18,rep,name=rteperminfos,proto3" json:"rteperminfos,omitempty"` + Jointree *FromExpr `protobuf:"bytes,19,opt,name=jointree,proto3" json:"jointree,omitempty"` + MergeActionList []*Node `protobuf:"bytes,20,rep,name=merge_action_list,json=mergeActionList,proto3" json:"merge_action_list,omitempty"` + MergeUseOuterJoin bool `protobuf:"varint,21,opt,name=merge_use_outer_join,json=mergeUseOuterJoin,proto3" json:"merge_use_outer_join,omitempty"` + TargetList []*Node `protobuf:"bytes,22,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` + Override OverridingKind `protobuf:"varint,23,opt,name=override,proto3,enum=pg_query.OverridingKind" json:"override,omitempty"` + OnConflict *OnConflictExpr `protobuf:"bytes,24,opt,name=on_conflict,json=onConflict,proto3" json:"on_conflict,omitempty"` + ReturningList []*Node `protobuf:"bytes,25,rep,name=returning_list,json=returningList,proto3" json:"returning_list,omitempty"` + GroupClause []*Node `protobuf:"bytes,26,rep,name=group_clause,json=groupClause,proto3" json:"group_clause,omitempty"` + GroupDistinct bool `protobuf:"varint,27,opt,name=group_distinct,json=groupDistinct,proto3" json:"group_distinct,omitempty"` + GroupingSets []*Node `protobuf:"bytes,28,rep,name=grouping_sets,json=groupingSets,proto3" json:"grouping_sets,omitempty"` + HavingQual *Node `protobuf:"bytes,29,opt,name=having_qual,json=havingQual,proto3" json:"having_qual,omitempty"` + WindowClause []*Node `protobuf:"bytes,30,rep,name=window_clause,json=windowClause,proto3" json:"window_clause,omitempty"` + DistinctClause []*Node `protobuf:"bytes,31,rep,name=distinct_clause,json=distinctClause,proto3" json:"distinct_clause,omitempty"` + SortClause []*Node `protobuf:"bytes,32,rep,name=sort_clause,json=sortClause,proto3" json:"sort_clause,omitempty"` + LimitOffset *Node `protobuf:"bytes,33,opt,name=limit_offset,json=limitOffset,proto3" json:"limit_offset,omitempty"` + LimitCount *Node `protobuf:"bytes,34,opt,name=limit_count,json=limitCount,proto3" json:"limit_count,omitempty"` + LimitOption LimitOption `protobuf:"varint,35,opt,name=limit_option,json=limitOption,proto3,enum=pg_query.LimitOption" json:"limit_option,omitempty"` + RowMarks []*Node `protobuf:"bytes,36,rep,name=row_marks,json=rowMarks,proto3" json:"row_marks,omitempty"` + SetOperations *Node `protobuf:"bytes,37,opt,name=set_operations,json=setOperations,proto3" json:"set_operations,omitempty"` + ConstraintDeps []*Node `protobuf:"bytes,38,rep,name=constraint_deps,json=constraintDeps,proto3" json:"constraint_deps,omitempty"` + WithCheckOptions []*Node `protobuf:"bytes,39,rep,name=with_check_options,json=withCheckOptions,proto3" json:"with_check_options,omitempty"` + StmtLocation int32 `protobuf:"varint,40,opt,name=stmt_location,proto3" json:"stmt_location,omitempty"` + StmtLen int32 `protobuf:"varint,41,opt,name=stmt_len,proto3" json:"stmt_len,omitempty"` } -func (x *Query) GetLimitOffset() *Node { - if x != nil { - return x.LimitOffset +func (x *Query) Reset() { + *x = Query{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[67] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *Query) GetLimitCount() *Node { - if x != nil { - return x.LimitCount - } - return nil +func (x *Query) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *Query) GetLimitOption() LimitOption { - if x != nil { - return x.LimitOption +func (*Query) ProtoMessage() {} + +func (x *Query) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[67] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return LimitOption_LIMIT_OPTION_UNDEFINED + return mi.MessageOf(x) } -func (x *Query) GetRowMarks() []*Node { +// Deprecated: Use Query.ProtoReflect.Descriptor instead. +func (*Query) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{67} +} + +func (x *Query) GetCommandType() CmdType { if x != nil { - return x.RowMarks + return x.CommandType } - return nil + return CmdType_CMD_TYPE_UNDEFINED } -func (x *Query) GetSetOperations() *Node { +func (x *Query) GetQuerySource() QuerySource { if x != nil { - return x.SetOperations + return x.QuerySource } - return nil + return QuerySource_QUERY_SOURCE_UNDEFINED } -func (x *Query) GetConstraintDeps() []*Node { +func (x *Query) GetCanSetTag() bool { if x != nil { - return x.ConstraintDeps + return x.CanSetTag } - return nil + return false } -func (x *Query) GetWithCheckOptions() []*Node { +func (x *Query) GetUtilityStmt() *Node { if x != nil { - return x.WithCheckOptions + return x.UtilityStmt } return nil } -func (x *Query) GetStmtLocation() int32 { +func (x *Query) GetResultRelation() int32 { if x != nil { - return x.StmtLocation + return x.ResultRelation } return 0 } -func (x *Query) GetStmtLen() int32 { +func (x *Query) GetHasAggs() bool { if x != nil { - return x.StmtLen + return x.HasAggs } - return 0 + return false } -type InsertStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +func (x *Query) GetHasWindowFuncs() bool { + if x != nil { + return x.HasWindowFuncs + } + return false +} - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - Cols []*Node `protobuf:"bytes,2,rep,name=cols,proto3" json:"cols,omitempty"` - SelectStmt *Node `protobuf:"bytes,3,opt,name=select_stmt,json=selectStmt,proto3" json:"select_stmt,omitempty"` - OnConflictClause *OnConflictClause `protobuf:"bytes,4,opt,name=on_conflict_clause,json=onConflictClause,proto3" json:"on_conflict_clause,omitempty"` - ReturningList []*Node `protobuf:"bytes,5,rep,name=returning_list,json=returningList,proto3" json:"returning_list,omitempty"` - WithClause *WithClause `protobuf:"bytes,6,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` - Override OverridingKind `protobuf:"varint,7,opt,name=override,proto3,enum=pg_query.OverridingKind" json:"override,omitempty"` +func (x *Query) GetHasTargetSrfs() bool { + if x != nil { + return x.HasTargetSrfs + } + return false } -func (x *InsertStmt) Reset() { - *x = InsertStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[65] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *Query) GetHasSubLinks() bool { + if x != nil { + return x.HasSubLinks } + return false } -func (x *InsertStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *Query) GetHasDistinctOn() bool { + if x != nil { + return x.HasDistinctOn + } + return false } -func (*InsertStmt) ProtoMessage() {} +func (x *Query) GetHasRecursive() bool { + if x != nil { + return x.HasRecursive + } + return false +} -func (x *InsertStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[65] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *Query) GetHasModifyingCte() bool { + if x != nil { + return x.HasModifyingCte } - return mi.MessageOf(x) + return false } -// Deprecated: Use InsertStmt.ProtoReflect.Descriptor instead. -func (*InsertStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{65} +func (x *Query) GetHasForUpdate() bool { + if x != nil { + return x.HasForUpdate + } + return false } -func (x *InsertStmt) GetRelation() *RangeVar { +func (x *Query) GetHasRowSecurity() bool { if x != nil { - return x.Relation + return x.HasRowSecurity + } + return false +} + +func (x *Query) GetIsReturn() bool { + if x != nil { + return x.IsReturn + } + return false +} + +func (x *Query) GetCteList() []*Node { + if x != nil { + return x.CteList } return nil } -func (x *InsertStmt) GetCols() []*Node { +func (x *Query) GetRtable() []*Node { if x != nil { - return x.Cols + return x.Rtable } return nil } -func (x *InsertStmt) GetSelectStmt() *Node { +func (x *Query) GetRteperminfos() []*Node { if x != nil { - return x.SelectStmt + return x.Rteperminfos } return nil } -func (x *InsertStmt) GetOnConflictClause() *OnConflictClause { +func (x *Query) GetJointree() *FromExpr { if x != nil { - return x.OnConflictClause + return x.Jointree } return nil } -func (x *InsertStmt) GetReturningList() []*Node { +func (x *Query) GetMergeActionList() []*Node { if x != nil { - return x.ReturningList + return x.MergeActionList } return nil } -func (x *InsertStmt) GetWithClause() *WithClause { +func (x *Query) GetMergeUseOuterJoin() bool { if x != nil { - return x.WithClause + return x.MergeUseOuterJoin + } + return false +} + +func (x *Query) GetTargetList() []*Node { + if x != nil { + return x.TargetList } return nil } -func (x *InsertStmt) GetOverride() OverridingKind { +func (x *Query) GetOverride() OverridingKind { if x != nil { return x.Override } return OverridingKind_OVERRIDING_KIND_UNDEFINED } -type DeleteStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - UsingClause []*Node `protobuf:"bytes,2,rep,name=using_clause,json=usingClause,proto3" json:"using_clause,omitempty"` - WhereClause *Node `protobuf:"bytes,3,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` - ReturningList []*Node `protobuf:"bytes,4,rep,name=returning_list,json=returningList,proto3" json:"returning_list,omitempty"` - WithClause *WithClause `protobuf:"bytes,5,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` +func (x *Query) GetOnConflict() *OnConflictExpr { + if x != nil { + return x.OnConflict + } + return nil } -func (x *DeleteStmt) Reset() { - *x = DeleteStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[66] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *Query) GetReturningList() []*Node { + if x != nil { + return x.ReturningList } + return nil } -func (x *DeleteStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *Query) GetGroupClause() []*Node { + if x != nil { + return x.GroupClause + } + return nil } -func (*DeleteStmt) ProtoMessage() {} - -func (x *DeleteStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[66] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *Query) GetGroupDistinct() bool { + if x != nil { + return x.GroupDistinct } - return mi.MessageOf(x) + return false } -// Deprecated: Use DeleteStmt.ProtoReflect.Descriptor instead. -func (*DeleteStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{66} +func (x *Query) GetGroupingSets() []*Node { + if x != nil { + return x.GroupingSets + } + return nil } -func (x *DeleteStmt) GetRelation() *RangeVar { +func (x *Query) GetHavingQual() *Node { if x != nil { - return x.Relation + return x.HavingQual } return nil } -func (x *DeleteStmt) GetUsingClause() []*Node { +func (x *Query) GetWindowClause() []*Node { if x != nil { - return x.UsingClause + return x.WindowClause } return nil } -func (x *DeleteStmt) GetWhereClause() *Node { +func (x *Query) GetDistinctClause() []*Node { if x != nil { - return x.WhereClause + return x.DistinctClause } return nil } -func (x *DeleteStmt) GetReturningList() []*Node { +func (x *Query) GetSortClause() []*Node { if x != nil { - return x.ReturningList + return x.SortClause } return nil } -func (x *DeleteStmt) GetWithClause() *WithClause { +func (x *Query) GetLimitOffset() *Node { if x != nil { - return x.WithClause + return x.LimitOffset } return nil } -type UpdateStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - TargetList []*Node `protobuf:"bytes,2,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` - WhereClause *Node `protobuf:"bytes,3,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` - FromClause []*Node `protobuf:"bytes,4,rep,name=from_clause,json=fromClause,proto3" json:"from_clause,omitempty"` - ReturningList []*Node `protobuf:"bytes,5,rep,name=returning_list,json=returningList,proto3" json:"returning_list,omitempty"` - WithClause *WithClause `protobuf:"bytes,6,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` +func (x *Query) GetLimitCount() *Node { + if x != nil { + return x.LimitCount + } + return nil } -func (x *UpdateStmt) Reset() { - *x = UpdateStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[67] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateStmt) ProtoMessage() {} - -func (x *UpdateStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[67] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *Query) GetLimitOption() LimitOption { + if x != nil { + return x.LimitOption } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateStmt.ProtoReflect.Descriptor instead. -func (*UpdateStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{67} + return LimitOption_LIMIT_OPTION_UNDEFINED } -func (x *UpdateStmt) GetRelation() *RangeVar { +func (x *Query) GetRowMarks() []*Node { if x != nil { - return x.Relation + return x.RowMarks } return nil } -func (x *UpdateStmt) GetTargetList() []*Node { +func (x *Query) GetSetOperations() *Node { if x != nil { - return x.TargetList + return x.SetOperations } return nil } -func (x *UpdateStmt) GetWhereClause() *Node { +func (x *Query) GetConstraintDeps() []*Node { if x != nil { - return x.WhereClause + return x.ConstraintDeps } return nil } -func (x *UpdateStmt) GetFromClause() []*Node { +func (x *Query) GetWithCheckOptions() []*Node { if x != nil { - return x.FromClause + return x.WithCheckOptions } return nil } -func (x *UpdateStmt) GetReturningList() []*Node { +func (x *Query) GetStmtLocation() int32 { if x != nil { - return x.ReturningList + return x.StmtLocation } - return nil + return 0 } -func (x *UpdateStmt) GetWithClause() *WithClause { +func (x *Query) GetStmtLen() int32 { if x != nil { - return x.WithClause + return x.StmtLen } - return nil + return 0 } -type MergeStmt struct { +type TypeName struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - SourceRelation *Node `protobuf:"bytes,2,opt,name=source_relation,json=sourceRelation,proto3" json:"source_relation,omitempty"` - JoinCondition *Node `protobuf:"bytes,3,opt,name=join_condition,json=joinCondition,proto3" json:"join_condition,omitempty"` - MergeWhenClauses []*Node `protobuf:"bytes,4,rep,name=merge_when_clauses,json=mergeWhenClauses,proto3" json:"merge_when_clauses,omitempty"` - WithClause *WithClause `protobuf:"bytes,5,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` + Names []*Node `protobuf:"bytes,1,rep,name=names,proto3" json:"names,omitempty"` + TypeOid uint32 `protobuf:"varint,2,opt,name=type_oid,json=typeOid,proto3" json:"type_oid,omitempty"` + Setof bool `protobuf:"varint,3,opt,name=setof,proto3" json:"setof,omitempty"` + PctType bool `protobuf:"varint,4,opt,name=pct_type,proto3" json:"pct_type,omitempty"` + Typmods []*Node `protobuf:"bytes,5,rep,name=typmods,proto3" json:"typmods,omitempty"` + Typemod int32 `protobuf:"varint,6,opt,name=typemod,proto3" json:"typemod,omitempty"` + ArrayBounds []*Node `protobuf:"bytes,7,rep,name=array_bounds,json=arrayBounds,proto3" json:"array_bounds,omitempty"` + Location int32 `protobuf:"varint,8,opt,name=location,proto3" json:"location,omitempty"` } -func (x *MergeStmt) Reset() { - *x = MergeStmt{} +func (x *TypeName) Reset() { + *x = TypeName{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14797,13 +15207,13 @@ func (x *MergeStmt) Reset() { } } -func (x *MergeStmt) String() string { +func (x *TypeName) String() string { return protoimpl.X.MessageStringOf(x) } -func (*MergeStmt) ProtoMessage() {} +func (*TypeName) ProtoMessage() {} -func (x *MergeStmt) ProtoReflect() protoreflect.Message { +func (x *TypeName) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14815,75 +15225,78 @@ func (x *MergeStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use MergeStmt.ProtoReflect.Descriptor instead. -func (*MergeStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use TypeName.ProtoReflect.Descriptor instead. +func (*TypeName) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{68} } -func (x *MergeStmt) GetRelation() *RangeVar { +func (x *TypeName) GetNames() []*Node { if x != nil { - return x.Relation + return x.Names } return nil } -func (x *MergeStmt) GetSourceRelation() *Node { +func (x *TypeName) GetTypeOid() uint32 { if x != nil { - return x.SourceRelation + return x.TypeOid } - return nil + return 0 } -func (x *MergeStmt) GetJoinCondition() *Node { +func (x *TypeName) GetSetof() bool { if x != nil { - return x.JoinCondition + return x.Setof } - return nil + return false } -func (x *MergeStmt) GetMergeWhenClauses() []*Node { +func (x *TypeName) GetPctType() bool { if x != nil { - return x.MergeWhenClauses + return x.PctType + } + return false +} + +func (x *TypeName) GetTypmods() []*Node { + if x != nil { + return x.Typmods } return nil } -func (x *MergeStmt) GetWithClause() *WithClause { +func (x *TypeName) GetTypemod() int32 { if x != nil { - return x.WithClause + return x.Typemod + } + return 0 +} + +func (x *TypeName) GetArrayBounds() []*Node { + if x != nil { + return x.ArrayBounds } return nil } -type SelectStmt struct { +func (x *TypeName) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type ColumnRef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - DistinctClause []*Node `protobuf:"bytes,1,rep,name=distinct_clause,json=distinctClause,proto3" json:"distinct_clause,omitempty"` - IntoClause *IntoClause `protobuf:"bytes,2,opt,name=into_clause,json=intoClause,proto3" json:"into_clause,omitempty"` - TargetList []*Node `protobuf:"bytes,3,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` - FromClause []*Node `protobuf:"bytes,4,rep,name=from_clause,json=fromClause,proto3" json:"from_clause,omitempty"` - WhereClause *Node `protobuf:"bytes,5,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` - GroupClause []*Node `protobuf:"bytes,6,rep,name=group_clause,json=groupClause,proto3" json:"group_clause,omitempty"` - GroupDistinct bool `protobuf:"varint,7,opt,name=group_distinct,json=groupDistinct,proto3" json:"group_distinct,omitempty"` - HavingClause *Node `protobuf:"bytes,8,opt,name=having_clause,json=havingClause,proto3" json:"having_clause,omitempty"` - WindowClause []*Node `protobuf:"bytes,9,rep,name=window_clause,json=windowClause,proto3" json:"window_clause,omitempty"` - ValuesLists []*Node `protobuf:"bytes,10,rep,name=values_lists,json=valuesLists,proto3" json:"values_lists,omitempty"` - SortClause []*Node `protobuf:"bytes,11,rep,name=sort_clause,json=sortClause,proto3" json:"sort_clause,omitempty"` - LimitOffset *Node `protobuf:"bytes,12,opt,name=limit_offset,json=limitOffset,proto3" json:"limit_offset,omitempty"` - LimitCount *Node `protobuf:"bytes,13,opt,name=limit_count,json=limitCount,proto3" json:"limit_count,omitempty"` - LimitOption LimitOption `protobuf:"varint,14,opt,name=limit_option,json=limitOption,proto3,enum=pg_query.LimitOption" json:"limit_option,omitempty"` - LockingClause []*Node `protobuf:"bytes,15,rep,name=locking_clause,json=lockingClause,proto3" json:"locking_clause,omitempty"` - WithClause *WithClause `protobuf:"bytes,16,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` - Op SetOperation `protobuf:"varint,17,opt,name=op,proto3,enum=pg_query.SetOperation" json:"op,omitempty"` - All bool `protobuf:"varint,18,opt,name=all,proto3" json:"all,omitempty"` - Larg *SelectStmt `protobuf:"bytes,19,opt,name=larg,proto3" json:"larg,omitempty"` - Rarg *SelectStmt `protobuf:"bytes,20,opt,name=rarg,proto3" json:"rarg,omitempty"` + Fields []*Node `protobuf:"bytes,1,rep,name=fields,proto3" json:"fields,omitempty"` + Location int32 `protobuf:"varint,2,opt,name=location,proto3" json:"location,omitempty"` } -func (x *SelectStmt) Reset() { - *x = SelectStmt{} +func (x *ColumnRef) Reset() { + *x = ColumnRef{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14891,13 +15304,13 @@ func (x *SelectStmt) Reset() { } } -func (x *SelectStmt) String() string { +func (x *ColumnRef) String() string { return protoimpl.X.MessageStringOf(x) } -func (*SelectStmt) ProtoMessage() {} +func (*ColumnRef) ProtoMessage() {} -func (x *SelectStmt) ProtoReflect() protoreflect.Message { +func (x *ColumnRef) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -14909,176 +15322,186 @@ func (x *SelectStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use SelectStmt.ProtoReflect.Descriptor instead. -func (*SelectStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use ColumnRef.ProtoReflect.Descriptor instead. +func (*ColumnRef) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{69} } -func (x *SelectStmt) GetDistinctClause() []*Node { +func (x *ColumnRef) GetFields() []*Node { if x != nil { - return x.DistinctClause + return x.Fields } return nil } -func (x *SelectStmt) GetIntoClause() *IntoClause { +func (x *ColumnRef) GetLocation() int32 { if x != nil { - return x.IntoClause + return x.Location } - return nil + return 0 } -func (x *SelectStmt) GetTargetList() []*Node { - if x != nil { - return x.TargetList - } - return nil -} +type ParamRef struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (x *SelectStmt) GetFromClause() []*Node { - if x != nil { - return x.FromClause - } - return nil + Number int32 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"` + Location int32 `protobuf:"varint,2,opt,name=location,proto3" json:"location,omitempty"` } -func (x *SelectStmt) GetWhereClause() *Node { - if x != nil { - return x.WhereClause +func (x *ParamRef) Reset() { + *x = ParamRef{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[70] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *SelectStmt) GetGroupClause() []*Node { - if x != nil { - return x.GroupClause - } - return nil +func (x *ParamRef) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *SelectStmt) GetGroupDistinct() bool { - if x != nil { - return x.GroupDistinct - } - return false -} +func (*ParamRef) ProtoMessage() {} -func (x *SelectStmt) GetHavingClause() *Node { - if x != nil { - return x.HavingClause +func (x *ParamRef) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[70] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *SelectStmt) GetWindowClause() []*Node { - if x != nil { - return x.WindowClause - } - return nil +// Deprecated: Use ParamRef.ProtoReflect.Descriptor instead. +func (*ParamRef) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{70} } -func (x *SelectStmt) GetValuesLists() []*Node { +func (x *ParamRef) GetNumber() int32 { if x != nil { - return x.ValuesLists + return x.Number } - return nil + return 0 } -func (x *SelectStmt) GetSortClause() []*Node { +func (x *ParamRef) GetLocation() int32 { if x != nil { - return x.SortClause + return x.Location } - return nil + return 0 } -func (x *SelectStmt) GetLimitOffset() *Node { - if x != nil { - return x.LimitOffset - } - return nil +type A_Expr struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Kind A_Expr_Kind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.A_Expr_Kind" json:"kind,omitempty"` + Name []*Node `protobuf:"bytes,2,rep,name=name,proto3" json:"name,omitempty"` + Lexpr *Node `protobuf:"bytes,3,opt,name=lexpr,proto3" json:"lexpr,omitempty"` + Rexpr *Node `protobuf:"bytes,4,opt,name=rexpr,proto3" json:"rexpr,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *SelectStmt) GetLimitCount() *Node { - if x != nil { - return x.LimitCount +func (x *A_Expr) Reset() { + *x = A_Expr{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[71] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *SelectStmt) GetLimitOption() LimitOption { - if x != nil { - return x.LimitOption - } - return LimitOption_LIMIT_OPTION_UNDEFINED +func (x *A_Expr) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *SelectStmt) GetLockingClause() []*Node { - if x != nil { - return x.LockingClause +func (*A_Expr) ProtoMessage() {} + +func (x *A_Expr) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[71] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *SelectStmt) GetWithClause() *WithClause { +// Deprecated: Use A_Expr.ProtoReflect.Descriptor instead. +func (*A_Expr) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{71} +} + +func (x *A_Expr) GetKind() A_Expr_Kind { if x != nil { - return x.WithClause + return x.Kind } - return nil + return A_Expr_Kind_A_EXPR_KIND_UNDEFINED } -func (x *SelectStmt) GetOp() SetOperation { +func (x *A_Expr) GetName() []*Node { if x != nil { - return x.Op + return x.Name } - return SetOperation_SET_OPERATION_UNDEFINED + return nil } -func (x *SelectStmt) GetAll() bool { +func (x *A_Expr) GetLexpr() *Node { if x != nil { - return x.All + return x.Lexpr } - return false + return nil } -func (x *SelectStmt) GetLarg() *SelectStmt { +func (x *A_Expr) GetRexpr() *Node { if x != nil { - return x.Larg + return x.Rexpr } return nil } -func (x *SelectStmt) GetRarg() *SelectStmt { +func (x *A_Expr) GetLocation() int32 { if x != nil { - return x.Rarg + return x.Location } - return nil + return 0 } -type ReturnStmt struct { +type TypeCast struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Returnval *Node `protobuf:"bytes,1,opt,name=returnval,proto3" json:"returnval,omitempty"` + Arg *Node `protobuf:"bytes,1,opt,name=arg,proto3" json:"arg,omitempty"` + TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` } -func (x *ReturnStmt) Reset() { - *x = ReturnStmt{} +func (x *TypeCast) Reset() { + *x = TypeCast{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[70] + mi := &file_pg_query_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ReturnStmt) String() string { +func (x *TypeCast) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReturnStmt) ProtoMessage() {} +func (*TypeCast) ProtoMessage() {} -func (x *ReturnStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[70] +func (x *TypeCast) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15089,47 +15512,59 @@ func (x *ReturnStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ReturnStmt.ProtoReflect.Descriptor instead. -func (*ReturnStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{70} +// Deprecated: Use TypeCast.ProtoReflect.Descriptor instead. +func (*TypeCast) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{72} } -func (x *ReturnStmt) GetReturnval() *Node { +func (x *TypeCast) GetArg() *Node { if x != nil { - return x.Returnval + return x.Arg } return nil } -type PLAssignStmt struct { +func (x *TypeCast) GetTypeName() *TypeName { + if x != nil { + return x.TypeName + } + return nil +} + +func (x *TypeCast) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type CollateClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Indirection []*Node `protobuf:"bytes,2,rep,name=indirection,proto3" json:"indirection,omitempty"` - Nnames int32 `protobuf:"varint,3,opt,name=nnames,proto3" json:"nnames,omitempty"` - Val *SelectStmt `protobuf:"bytes,4,opt,name=val,proto3" json:"val,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + Arg *Node `protobuf:"bytes,1,opt,name=arg,proto3" json:"arg,omitempty"` + Collname []*Node `protobuf:"bytes,2,rep,name=collname,proto3" json:"collname,omitempty"` + Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` } -func (x *PLAssignStmt) Reset() { - *x = PLAssignStmt{} +func (x *CollateClause) Reset() { + *x = CollateClause{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[71] + mi := &file_pg_query_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *PLAssignStmt) String() string { +func (x *CollateClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PLAssignStmt) ProtoMessage() {} +func (*CollateClause) ProtoMessage() {} -func (x *PLAssignStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[71] +func (x *CollateClause) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15140,74 +15575,59 @@ func (x *PLAssignStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PLAssignStmt.ProtoReflect.Descriptor instead. -func (*PLAssignStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{71} -} - -func (x *PLAssignStmt) GetName() string { - if x != nil { - return x.Name - } - return "" +// Deprecated: Use CollateClause.ProtoReflect.Descriptor instead. +func (*CollateClause) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{73} } -func (x *PLAssignStmt) GetIndirection() []*Node { +func (x *CollateClause) GetArg() *Node { if x != nil { - return x.Indirection + return x.Arg } return nil } -func (x *PLAssignStmt) GetNnames() int32 { - if x != nil { - return x.Nnames - } - return 0 -} - -func (x *PLAssignStmt) GetVal() *SelectStmt { +func (x *CollateClause) GetCollname() []*Node { if x != nil { - return x.Val + return x.Collname } return nil } -func (x *PLAssignStmt) GetLocation() int32 { +func (x *CollateClause) GetLocation() int32 { if x != nil { return x.Location } return 0 } -type AlterTableStmt struct { +type RoleSpec struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - Cmds []*Node `protobuf:"bytes,2,rep,name=cmds,proto3" json:"cmds,omitempty"` - Objtype ObjectType `protobuf:"varint,3,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` - MissingOk bool `protobuf:"varint,4,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + Roletype RoleSpecType `protobuf:"varint,1,opt,name=roletype,proto3,enum=pg_query.RoleSpecType" json:"roletype,omitempty"` + Rolename string `protobuf:"bytes,2,opt,name=rolename,proto3" json:"rolename,omitempty"` + Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` } -func (x *AlterTableStmt) Reset() { - *x = AlterTableStmt{} +func (x *RoleSpec) Reset() { + *x = RoleSpec{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[72] + mi := &file_pg_query_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterTableStmt) String() string { +func (x *RoleSpec) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterTableStmt) ProtoMessage() {} +func (*RoleSpec) ProtoMessage() {} -func (x *AlterTableStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[72] +func (x *RoleSpec) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15218,71 +15638,67 @@ func (x *AlterTableStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterTableStmt.ProtoReflect.Descriptor instead. -func (*AlterTableStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{72} -} - -func (x *AlterTableStmt) GetRelation() *RangeVar { - if x != nil { - return x.Relation - } - return nil +// Deprecated: Use RoleSpec.ProtoReflect.Descriptor instead. +func (*RoleSpec) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{74} } -func (x *AlterTableStmt) GetCmds() []*Node { +func (x *RoleSpec) GetRoletype() RoleSpecType { if x != nil { - return x.Cmds + return x.Roletype } - return nil + return RoleSpecType_ROLE_SPEC_TYPE_UNDEFINED } -func (x *AlterTableStmt) GetObjtype() ObjectType { +func (x *RoleSpec) GetRolename() string { if x != nil { - return x.Objtype + return x.Rolename } - return ObjectType_OBJECT_TYPE_UNDEFINED + return "" } -func (x *AlterTableStmt) GetMissingOk() bool { +func (x *RoleSpec) GetLocation() int32 { if x != nil { - return x.MissingOk + return x.Location } - return false + return 0 } -type AlterTableCmd struct { +type FuncCall struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Subtype AlterTableType `protobuf:"varint,1,opt,name=subtype,proto3,enum=pg_query.AlterTableType" json:"subtype,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Num int32 `protobuf:"varint,3,opt,name=num,proto3" json:"num,omitempty"` - Newowner *RoleSpec `protobuf:"bytes,4,opt,name=newowner,proto3" json:"newowner,omitempty"` - Def *Node `protobuf:"bytes,5,opt,name=def,proto3" json:"def,omitempty"` - Behavior DropBehavior `protobuf:"varint,6,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` - MissingOk bool `protobuf:"varint,7,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` - Recurse bool `protobuf:"varint,8,opt,name=recurse,proto3" json:"recurse,omitempty"` + Funcname []*Node `protobuf:"bytes,1,rep,name=funcname,proto3" json:"funcname,omitempty"` + Args []*Node `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"` + AggOrder []*Node `protobuf:"bytes,3,rep,name=agg_order,proto3" json:"agg_order,omitempty"` + AggFilter *Node `protobuf:"bytes,4,opt,name=agg_filter,proto3" json:"agg_filter,omitempty"` + Over *WindowDef `protobuf:"bytes,5,opt,name=over,proto3" json:"over,omitempty"` + AggWithinGroup bool `protobuf:"varint,6,opt,name=agg_within_group,proto3" json:"agg_within_group,omitempty"` + AggStar bool `protobuf:"varint,7,opt,name=agg_star,proto3" json:"agg_star,omitempty"` + AggDistinct bool `protobuf:"varint,8,opt,name=agg_distinct,proto3" json:"agg_distinct,omitempty"` + FuncVariadic bool `protobuf:"varint,9,opt,name=func_variadic,proto3" json:"func_variadic,omitempty"` + Funcformat CoercionForm `protobuf:"varint,10,opt,name=funcformat,proto3,enum=pg_query.CoercionForm" json:"funcformat,omitempty"` + Location int32 `protobuf:"varint,11,opt,name=location,proto3" json:"location,omitempty"` } -func (x *AlterTableCmd) Reset() { - *x = AlterTableCmd{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[73] +func (x *FuncCall) Reset() { + *x = FuncCall{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterTableCmd) String() string { +func (x *FuncCall) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterTableCmd) ProtoMessage() {} +func (*FuncCall) ProtoMessage() {} -func (x *AlterTableCmd) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[73] +func (x *FuncCall) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15293,97 +15709,111 @@ func (x *AlterTableCmd) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterTableCmd.ProtoReflect.Descriptor instead. -func (*AlterTableCmd) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{73} +// Deprecated: Use FuncCall.ProtoReflect.Descriptor instead. +func (*FuncCall) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{75} } -func (x *AlterTableCmd) GetSubtype() AlterTableType { +func (x *FuncCall) GetFuncname() []*Node { if x != nil { - return x.Subtype + return x.Funcname } - return AlterTableType_ALTER_TABLE_TYPE_UNDEFINED + return nil } -func (x *AlterTableCmd) GetName() string { +func (x *FuncCall) GetArgs() []*Node { if x != nil { - return x.Name + return x.Args } - return "" + return nil } -func (x *AlterTableCmd) GetNum() int32 { +func (x *FuncCall) GetAggOrder() []*Node { if x != nil { - return x.Num + return x.AggOrder } - return 0 + return nil } -func (x *AlterTableCmd) GetNewowner() *RoleSpec { +func (x *FuncCall) GetAggFilter() *Node { if x != nil { - return x.Newowner + return x.AggFilter } return nil } -func (x *AlterTableCmd) GetDef() *Node { +func (x *FuncCall) GetOver() *WindowDef { if x != nil { - return x.Def + return x.Over } return nil } -func (x *AlterTableCmd) GetBehavior() DropBehavior { +func (x *FuncCall) GetAggWithinGroup() bool { if x != nil { - return x.Behavior + return x.AggWithinGroup } - return DropBehavior_DROP_BEHAVIOR_UNDEFINED + return false } -func (x *AlterTableCmd) GetMissingOk() bool { +func (x *FuncCall) GetAggStar() bool { if x != nil { - return x.MissingOk + return x.AggStar } return false } -func (x *AlterTableCmd) GetRecurse() bool { +func (x *FuncCall) GetAggDistinct() bool { if x != nil { - return x.Recurse + return x.AggDistinct } return false } -type AlterDomainStmt struct { +func (x *FuncCall) GetFuncVariadic() bool { + if x != nil { + return x.FuncVariadic + } + return false +} + +func (x *FuncCall) GetFuncformat() CoercionForm { + if x != nil { + return x.Funcformat + } + return CoercionForm_COERCION_FORM_UNDEFINED +} + +func (x *FuncCall) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type A_Star struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - - Subtype string `protobuf:"bytes,1,opt,name=subtype,proto3" json:"subtype,omitempty"` - TypeName []*Node `protobuf:"bytes,2,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` - Def *Node `protobuf:"bytes,4,opt,name=def,proto3" json:"def,omitempty"` - Behavior DropBehavior `protobuf:"varint,5,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` - MissingOk bool `protobuf:"varint,6,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *AlterDomainStmt) Reset() { - *x = AlterDomainStmt{} +func (x *A_Star) Reset() { + *x = A_Star{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[74] + mi := &file_pg_query_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterDomainStmt) String() string { +func (x *A_Star) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterDomainStmt) ProtoMessage() {} +func (*A_Star) ProtoMessage() {} -func (x *AlterDomainStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[74] +func (x *A_Star) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15394,85 +15824,100 @@ func (x *AlterDomainStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterDomainStmt.ProtoReflect.Descriptor instead. -func (*AlterDomainStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{74} +// Deprecated: Use A_Star.ProtoReflect.Descriptor instead. +func (*A_Star) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{76} } -func (x *AlterDomainStmt) GetSubtype() string { - if x != nil { - return x.Subtype - } - return "" +type A_Indices struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IsSlice bool `protobuf:"varint,1,opt,name=is_slice,proto3" json:"is_slice,omitempty"` + Lidx *Node `protobuf:"bytes,2,opt,name=lidx,proto3" json:"lidx,omitempty"` + Uidx *Node `protobuf:"bytes,3,opt,name=uidx,proto3" json:"uidx,omitempty"` } -func (x *AlterDomainStmt) GetTypeName() []*Node { - if x != nil { - return x.TypeName +func (x *A_Indices) Reset() { + *x = A_Indices{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[77] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *AlterDomainStmt) GetName() string { - if x != nil { - return x.Name +func (x *A_Indices) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*A_Indices) ProtoMessage() {} + +func (x *A_Indices) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[77] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return "" + return mi.MessageOf(x) } -func (x *AlterDomainStmt) GetDef() *Node { +// Deprecated: Use A_Indices.ProtoReflect.Descriptor instead. +func (*A_Indices) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{77} +} + +func (x *A_Indices) GetIsSlice() bool { if x != nil { - return x.Def + return x.IsSlice } - return nil + return false } -func (x *AlterDomainStmt) GetBehavior() DropBehavior { +func (x *A_Indices) GetLidx() *Node { if x != nil { - return x.Behavior + return x.Lidx } - return DropBehavior_DROP_BEHAVIOR_UNDEFINED + return nil } -func (x *AlterDomainStmt) GetMissingOk() bool { +func (x *A_Indices) GetUidx() *Node { if x != nil { - return x.MissingOk + return x.Uidx } - return false + return nil } -type SetOperationStmt struct { +type A_Indirection struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Op SetOperation `protobuf:"varint,1,opt,name=op,proto3,enum=pg_query.SetOperation" json:"op,omitempty"` - All bool `protobuf:"varint,2,opt,name=all,proto3" json:"all,omitempty"` - Larg *Node `protobuf:"bytes,3,opt,name=larg,proto3" json:"larg,omitempty"` - Rarg *Node `protobuf:"bytes,4,opt,name=rarg,proto3" json:"rarg,omitempty"` - ColTypes []*Node `protobuf:"bytes,5,rep,name=col_types,json=colTypes,proto3" json:"col_types,omitempty"` - ColTypmods []*Node `protobuf:"bytes,6,rep,name=col_typmods,json=colTypmods,proto3" json:"col_typmods,omitempty"` - ColCollations []*Node `protobuf:"bytes,7,rep,name=col_collations,json=colCollations,proto3" json:"col_collations,omitempty"` - GroupClauses []*Node `protobuf:"bytes,8,rep,name=group_clauses,json=groupClauses,proto3" json:"group_clauses,omitempty"` + Arg *Node `protobuf:"bytes,1,opt,name=arg,proto3" json:"arg,omitempty"` + Indirection []*Node `protobuf:"bytes,2,rep,name=indirection,proto3" json:"indirection,omitempty"` } -func (x *SetOperationStmt) Reset() { - *x = SetOperationStmt{} +func (x *A_Indirection) Reset() { + *x = A_Indirection{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[75] + mi := &file_pg_query_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *SetOperationStmt) String() string { +func (x *A_Indirection) String() string { return protoimpl.X.MessageStringOf(x) } -func (*SetOperationStmt) ProtoMessage() {} +func (*A_Indirection) ProtoMessage() {} -func (x *SetOperationStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[75] +func (x *A_Indirection) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15483,100 +15928,108 @@ func (x *SetOperationStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use SetOperationStmt.ProtoReflect.Descriptor instead. -func (*SetOperationStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{75} -} - -func (x *SetOperationStmt) GetOp() SetOperation { - if x != nil { - return x.Op - } - return SetOperation_SET_OPERATION_UNDEFINED -} - -func (x *SetOperationStmt) GetAll() bool { - if x != nil { - return x.All - } - return false +// Deprecated: Use A_Indirection.ProtoReflect.Descriptor instead. +func (*A_Indirection) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{78} } -func (x *SetOperationStmt) GetLarg() *Node { +func (x *A_Indirection) GetArg() *Node { if x != nil { - return x.Larg + return x.Arg } return nil } -func (x *SetOperationStmt) GetRarg() *Node { +func (x *A_Indirection) GetIndirection() []*Node { if x != nil { - return x.Rarg + return x.Indirection } return nil } -func (x *SetOperationStmt) GetColTypes() []*Node { - if x != nil { - return x.ColTypes - } - return nil -} +type A_ArrayExpr struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (x *SetOperationStmt) GetColTypmods() []*Node { - if x != nil { - return x.ColTypmods - } - return nil + Elements []*Node `protobuf:"bytes,1,rep,name=elements,proto3" json:"elements,omitempty"` + Location int32 `protobuf:"varint,2,opt,name=location,proto3" json:"location,omitempty"` } -func (x *SetOperationStmt) GetColCollations() []*Node { - if x != nil { - return x.ColCollations +func (x *A_ArrayExpr) Reset() { + *x = A_ArrayExpr{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[79] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *SetOperationStmt) GetGroupClauses() []*Node { +func (x *A_ArrayExpr) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*A_ArrayExpr) ProtoMessage() {} + +func (x *A_ArrayExpr) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[79] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use A_ArrayExpr.ProtoReflect.Descriptor instead. +func (*A_ArrayExpr) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{79} +} + +func (x *A_ArrayExpr) GetElements() []*Node { if x != nil { - return x.GroupClauses + return x.Elements } return nil } -type GrantStmt struct { +func (x *A_ArrayExpr) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type ResTarget struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - IsGrant bool `protobuf:"varint,1,opt,name=is_grant,proto3" json:"is_grant,omitempty"` - Targtype GrantTargetType `protobuf:"varint,2,opt,name=targtype,proto3,enum=pg_query.GrantTargetType" json:"targtype,omitempty"` - Objtype ObjectType `protobuf:"varint,3,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` - Objects []*Node `protobuf:"bytes,4,rep,name=objects,proto3" json:"objects,omitempty"` - Privileges []*Node `protobuf:"bytes,5,rep,name=privileges,proto3" json:"privileges,omitempty"` - Grantees []*Node `protobuf:"bytes,6,rep,name=grantees,proto3" json:"grantees,omitempty"` - GrantOption bool `protobuf:"varint,7,opt,name=grant_option,proto3" json:"grant_option,omitempty"` - Grantor *RoleSpec `protobuf:"bytes,8,opt,name=grantor,proto3" json:"grantor,omitempty"` - Behavior DropBehavior `protobuf:"varint,9,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Indirection []*Node `protobuf:"bytes,2,rep,name=indirection,proto3" json:"indirection,omitempty"` + Val *Node `protobuf:"bytes,3,opt,name=val,proto3" json:"val,omitempty"` + Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` } -func (x *GrantStmt) Reset() { - *x = GrantStmt{} +func (x *ResTarget) Reset() { + *x = ResTarget{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[76] + mi := &file_pg_query_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *GrantStmt) String() string { +func (x *ResTarget) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GrantStmt) ProtoMessage() {} +func (*ResTarget) ProtoMessage() {} -func (x *GrantStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[76] +func (x *ResTarget) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15587,104 +16040,131 @@ func (x *GrantStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GrantStmt.ProtoReflect.Descriptor instead. -func (*GrantStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{76} +// Deprecated: Use ResTarget.ProtoReflect.Descriptor instead. +func (*ResTarget) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{80} } -func (x *GrantStmt) GetIsGrant() bool { +func (x *ResTarget) GetName() string { if x != nil { - return x.IsGrant + return x.Name } - return false + return "" } -func (x *GrantStmt) GetTargtype() GrantTargetType { +func (x *ResTarget) GetIndirection() []*Node { if x != nil { - return x.Targtype + return x.Indirection } - return GrantTargetType_GRANT_TARGET_TYPE_UNDEFINED + return nil } -func (x *GrantStmt) GetObjtype() ObjectType { +func (x *ResTarget) GetVal() *Node { if x != nil { - return x.Objtype + return x.Val } - return ObjectType_OBJECT_TYPE_UNDEFINED + return nil } -func (x *GrantStmt) GetObjects() []*Node { +func (x *ResTarget) GetLocation() int32 { if x != nil { - return x.Objects + return x.Location } - return nil + return 0 } -func (x *GrantStmt) GetPrivileges() []*Node { - if x != nil { - return x.Privileges +type MultiAssignRef struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Source *Node `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"` + Colno int32 `protobuf:"varint,2,opt,name=colno,proto3" json:"colno,omitempty"` + Ncolumns int32 `protobuf:"varint,3,opt,name=ncolumns,proto3" json:"ncolumns,omitempty"` +} + +func (x *MultiAssignRef) Reset() { + *x = MultiAssignRef{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[81] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *GrantStmt) GetGrantees() []*Node { - if x != nil { - return x.Grantees +func (x *MultiAssignRef) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MultiAssignRef) ProtoMessage() {} + +func (x *MultiAssignRef) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[81] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *GrantStmt) GetGrantOption() bool { +// Deprecated: Use MultiAssignRef.ProtoReflect.Descriptor instead. +func (*MultiAssignRef) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{81} +} + +func (x *MultiAssignRef) GetSource() *Node { if x != nil { - return x.GrantOption + return x.Source } - return false + return nil } -func (x *GrantStmt) GetGrantor() *RoleSpec { +func (x *MultiAssignRef) GetColno() int32 { if x != nil { - return x.Grantor + return x.Colno } - return nil + return 0 } -func (x *GrantStmt) GetBehavior() DropBehavior { +func (x *MultiAssignRef) GetNcolumns() int32 { if x != nil { - return x.Behavior + return x.Ncolumns } - return DropBehavior_DROP_BEHAVIOR_UNDEFINED + return 0 } -type GrantRoleStmt struct { +type SortBy struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GrantedRoles []*Node `protobuf:"bytes,1,rep,name=granted_roles,proto3" json:"granted_roles,omitempty"` - GranteeRoles []*Node `protobuf:"bytes,2,rep,name=grantee_roles,proto3" json:"grantee_roles,omitempty"` - IsGrant bool `protobuf:"varint,3,opt,name=is_grant,proto3" json:"is_grant,omitempty"` - AdminOpt bool `protobuf:"varint,4,opt,name=admin_opt,proto3" json:"admin_opt,omitempty"` - Grantor *RoleSpec `protobuf:"bytes,5,opt,name=grantor,proto3" json:"grantor,omitempty"` - Behavior DropBehavior `protobuf:"varint,6,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` + Node *Node `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"` + SortbyDir SortByDir `protobuf:"varint,2,opt,name=sortby_dir,proto3,enum=pg_query.SortByDir" json:"sortby_dir,omitempty"` + SortbyNulls SortByNulls `protobuf:"varint,3,opt,name=sortby_nulls,proto3,enum=pg_query.SortByNulls" json:"sortby_nulls,omitempty"` + UseOp []*Node `protobuf:"bytes,4,rep,name=use_op,json=useOp,proto3" json:"use_op,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *GrantRoleStmt) Reset() { - *x = GrantRoleStmt{} +func (x *SortBy) Reset() { + *x = SortBy{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[77] + mi := &file_pg_query_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *GrantRoleStmt) String() string { +func (x *SortBy) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GrantRoleStmt) ProtoMessage() {} +func (*SortBy) ProtoMessage() {} -func (x *GrantRoleStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[77] +func (x *SortBy) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15695,79 +16175,78 @@ func (x *GrantRoleStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GrantRoleStmt.ProtoReflect.Descriptor instead. -func (*GrantRoleStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{77} -} - -func (x *GrantRoleStmt) GetGrantedRoles() []*Node { - if x != nil { - return x.GrantedRoles - } - return nil +// Deprecated: Use SortBy.ProtoReflect.Descriptor instead. +func (*SortBy) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{82} } -func (x *GrantRoleStmt) GetGranteeRoles() []*Node { +func (x *SortBy) GetNode() *Node { if x != nil { - return x.GranteeRoles + return x.Node } return nil } -func (x *GrantRoleStmt) GetIsGrant() bool { +func (x *SortBy) GetSortbyDir() SortByDir { if x != nil { - return x.IsGrant + return x.SortbyDir } - return false + return SortByDir_SORT_BY_DIR_UNDEFINED } -func (x *GrantRoleStmt) GetAdminOpt() bool { +func (x *SortBy) GetSortbyNulls() SortByNulls { if x != nil { - return x.AdminOpt + return x.SortbyNulls } - return false + return SortByNulls_SORT_BY_NULLS_UNDEFINED } -func (x *GrantRoleStmt) GetGrantor() *RoleSpec { +func (x *SortBy) GetUseOp() []*Node { if x != nil { - return x.Grantor + return x.UseOp } return nil } -func (x *GrantRoleStmt) GetBehavior() DropBehavior { +func (x *SortBy) GetLocation() int32 { if x != nil { - return x.Behavior + return x.Location } - return DropBehavior_DROP_BEHAVIOR_UNDEFINED + return 0 } -type AlterDefaultPrivilegesStmt struct { +type WindowDef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Options []*Node `protobuf:"bytes,1,rep,name=options,proto3" json:"options,omitempty"` - Action *GrantStmt `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Refname string `protobuf:"bytes,2,opt,name=refname,proto3" json:"refname,omitempty"` + PartitionClause []*Node `protobuf:"bytes,3,rep,name=partition_clause,json=partitionClause,proto3" json:"partition_clause,omitempty"` + OrderClause []*Node `protobuf:"bytes,4,rep,name=order_clause,json=orderClause,proto3" json:"order_clause,omitempty"` + FrameOptions int32 `protobuf:"varint,5,opt,name=frame_options,json=frameOptions,proto3" json:"frame_options,omitempty"` + StartOffset *Node `protobuf:"bytes,6,opt,name=start_offset,json=startOffset,proto3" json:"start_offset,omitempty"` + EndOffset *Node `protobuf:"bytes,7,opt,name=end_offset,json=endOffset,proto3" json:"end_offset,omitempty"` + Location int32 `protobuf:"varint,8,opt,name=location,proto3" json:"location,omitempty"` } -func (x *AlterDefaultPrivilegesStmt) Reset() { - *x = AlterDefaultPrivilegesStmt{} +func (x *WindowDef) Reset() { + *x = WindowDef{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[78] + mi := &file_pg_query_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterDefaultPrivilegesStmt) String() string { +func (x *WindowDef) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterDefaultPrivilegesStmt) ProtoMessage() {} +func (*WindowDef) ProtoMessage() {} -func (x *AlterDefaultPrivilegesStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[78] +func (x *WindowDef) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15778,99 +16257,94 @@ func (x *AlterDefaultPrivilegesStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterDefaultPrivilegesStmt.ProtoReflect.Descriptor instead. -func (*AlterDefaultPrivilegesStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{78} +// Deprecated: Use WindowDef.ProtoReflect.Descriptor instead. +func (*WindowDef) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{83} } -func (x *AlterDefaultPrivilegesStmt) GetOptions() []*Node { +func (x *WindowDef) GetName() string { if x != nil { - return x.Options + return x.Name } - return nil + return "" } -func (x *AlterDefaultPrivilegesStmt) GetAction() *GrantStmt { +func (x *WindowDef) GetRefname() string { if x != nil { - return x.Action + return x.Refname } - return nil + return "" } -type ClosePortalStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Portalname string `protobuf:"bytes,1,opt,name=portalname,proto3" json:"portalname,omitempty"` +func (x *WindowDef) GetPartitionClause() []*Node { + if x != nil { + return x.PartitionClause + } + return nil } -func (x *ClosePortalStmt) Reset() { - *x = ClosePortalStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[79] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *WindowDef) GetOrderClause() []*Node { + if x != nil { + return x.OrderClause } + return nil } -func (x *ClosePortalStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *WindowDef) GetFrameOptions() int32 { + if x != nil { + return x.FrameOptions + } + return 0 } -func (*ClosePortalStmt) ProtoMessage() {} - -func (x *ClosePortalStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[79] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *WindowDef) GetStartOffset() *Node { + if x != nil { + return x.StartOffset } - return mi.MessageOf(x) + return nil } -// Deprecated: Use ClosePortalStmt.ProtoReflect.Descriptor instead. -func (*ClosePortalStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{79} +func (x *WindowDef) GetEndOffset() *Node { + if x != nil { + return x.EndOffset + } + return nil } -func (x *ClosePortalStmt) GetPortalname() string { +func (x *WindowDef) GetLocation() int32 { if x != nil { - return x.Portalname + return x.Location } - return "" + return 0 } -type ClusterStmt struct { +type RangeSubselect struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - Indexname string `protobuf:"bytes,2,opt,name=indexname,proto3" json:"indexname,omitempty"` - Params []*Node `protobuf:"bytes,3,rep,name=params,proto3" json:"params,omitempty"` + Lateral bool `protobuf:"varint,1,opt,name=lateral,proto3" json:"lateral,omitempty"` + Subquery *Node `protobuf:"bytes,2,opt,name=subquery,proto3" json:"subquery,omitempty"` + Alias *Alias `protobuf:"bytes,3,opt,name=alias,proto3" json:"alias,omitempty"` } -func (x *ClusterStmt) Reset() { - *x = ClusterStmt{} +func (x *RangeSubselect) Reset() { + *x = RangeSubselect{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[80] + mi := &file_pg_query_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ClusterStmt) String() string { +func (x *RangeSubselect) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ClusterStmt) ProtoMessage() {} +func (*RangeSubselect) ProtoMessage() {} -func (x *ClusterStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[80] +func (x *RangeSubselect) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15881,64 +16355,62 @@ func (x *ClusterStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ClusterStmt.ProtoReflect.Descriptor instead. -func (*ClusterStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{80} +// Deprecated: Use RangeSubselect.ProtoReflect.Descriptor instead. +func (*RangeSubselect) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{84} } -func (x *ClusterStmt) GetRelation() *RangeVar { +func (x *RangeSubselect) GetLateral() bool { if x != nil { - return x.Relation + return x.Lateral } - return nil + return false } -func (x *ClusterStmt) GetIndexname() string { +func (x *RangeSubselect) GetSubquery() *Node { if x != nil { - return x.Indexname + return x.Subquery } - return "" + return nil } -func (x *ClusterStmt) GetParams() []*Node { +func (x *RangeSubselect) GetAlias() *Alias { if x != nil { - return x.Params + return x.Alias } return nil } -type CopyStmt struct { +type RangeFunction struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - Query *Node `protobuf:"bytes,2,opt,name=query,proto3" json:"query,omitempty"` - Attlist []*Node `protobuf:"bytes,3,rep,name=attlist,proto3" json:"attlist,omitempty"` - IsFrom bool `protobuf:"varint,4,opt,name=is_from,proto3" json:"is_from,omitempty"` - IsProgram bool `protobuf:"varint,5,opt,name=is_program,proto3" json:"is_program,omitempty"` - Filename string `protobuf:"bytes,6,opt,name=filename,proto3" json:"filename,omitempty"` - Options []*Node `protobuf:"bytes,7,rep,name=options,proto3" json:"options,omitempty"` - WhereClause *Node `protobuf:"bytes,8,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` + Lateral bool `protobuf:"varint,1,opt,name=lateral,proto3" json:"lateral,omitempty"` + Ordinality bool `protobuf:"varint,2,opt,name=ordinality,proto3" json:"ordinality,omitempty"` + IsRowsfrom bool `protobuf:"varint,3,opt,name=is_rowsfrom,proto3" json:"is_rowsfrom,omitempty"` + Functions []*Node `protobuf:"bytes,4,rep,name=functions,proto3" json:"functions,omitempty"` + Alias *Alias `protobuf:"bytes,5,opt,name=alias,proto3" json:"alias,omitempty"` + Coldeflist []*Node `protobuf:"bytes,6,rep,name=coldeflist,proto3" json:"coldeflist,omitempty"` } -func (x *CopyStmt) Reset() { - *x = CopyStmt{} +func (x *RangeFunction) Reset() { + *x = RangeFunction{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[81] + mi := &file_pg_query_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CopyStmt) String() string { +func (x *RangeFunction) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CopyStmt) ProtoMessage() {} +func (*RangeFunction) ProtoMessage() {} -func (x *CopyStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[81] +func (x *RangeFunction) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15949,103 +16421,84 @@ func (x *CopyStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CopyStmt.ProtoReflect.Descriptor instead. -func (*CopyStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{81} -} - -func (x *CopyStmt) GetRelation() *RangeVar { - if x != nil { - return x.Relation - } - return nil -} - -func (x *CopyStmt) GetQuery() *Node { - if x != nil { - return x.Query - } - return nil +// Deprecated: Use RangeFunction.ProtoReflect.Descriptor instead. +func (*RangeFunction) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{85} } -func (x *CopyStmt) GetAttlist() []*Node { +func (x *RangeFunction) GetLateral() bool { if x != nil { - return x.Attlist + return x.Lateral } - return nil + return false } -func (x *CopyStmt) GetIsFrom() bool { +func (x *RangeFunction) GetOrdinality() bool { if x != nil { - return x.IsFrom + return x.Ordinality } return false } -func (x *CopyStmt) GetIsProgram() bool { +func (x *RangeFunction) GetIsRowsfrom() bool { if x != nil { - return x.IsProgram + return x.IsRowsfrom } return false } -func (x *CopyStmt) GetFilename() string { +func (x *RangeFunction) GetFunctions() []*Node { if x != nil { - return x.Filename + return x.Functions } - return "" + return nil } -func (x *CopyStmt) GetOptions() []*Node { +func (x *RangeFunction) GetAlias() *Alias { if x != nil { - return x.Options + return x.Alias } return nil } -func (x *CopyStmt) GetWhereClause() *Node { +func (x *RangeFunction) GetColdeflist() []*Node { if x != nil { - return x.WhereClause + return x.Coldeflist } return nil } -type CreateStmt struct { +type RangeTableFunc struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - TableElts []*Node `protobuf:"bytes,2,rep,name=table_elts,json=tableElts,proto3" json:"table_elts,omitempty"` - InhRelations []*Node `protobuf:"bytes,3,rep,name=inh_relations,json=inhRelations,proto3" json:"inh_relations,omitempty"` - Partbound *PartitionBoundSpec `protobuf:"bytes,4,opt,name=partbound,proto3" json:"partbound,omitempty"` - Partspec *PartitionSpec `protobuf:"bytes,5,opt,name=partspec,proto3" json:"partspec,omitempty"` - OfTypename *TypeName `protobuf:"bytes,6,opt,name=of_typename,json=ofTypename,proto3" json:"of_typename,omitempty"` - Constraints []*Node `protobuf:"bytes,7,rep,name=constraints,proto3" json:"constraints,omitempty"` - Options []*Node `protobuf:"bytes,8,rep,name=options,proto3" json:"options,omitempty"` - Oncommit OnCommitAction `protobuf:"varint,9,opt,name=oncommit,proto3,enum=pg_query.OnCommitAction" json:"oncommit,omitempty"` - Tablespacename string `protobuf:"bytes,10,opt,name=tablespacename,proto3" json:"tablespacename,omitempty"` - AccessMethod string `protobuf:"bytes,11,opt,name=access_method,json=accessMethod,proto3" json:"access_method,omitempty"` - IfNotExists bool `protobuf:"varint,12,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` + Lateral bool `protobuf:"varint,1,opt,name=lateral,proto3" json:"lateral,omitempty"` + Docexpr *Node `protobuf:"bytes,2,opt,name=docexpr,proto3" json:"docexpr,omitempty"` + Rowexpr *Node `protobuf:"bytes,3,opt,name=rowexpr,proto3" json:"rowexpr,omitempty"` + Namespaces []*Node `protobuf:"bytes,4,rep,name=namespaces,proto3" json:"namespaces,omitempty"` + Columns []*Node `protobuf:"bytes,5,rep,name=columns,proto3" json:"columns,omitempty"` + Alias *Alias `protobuf:"bytes,6,opt,name=alias,proto3" json:"alias,omitempty"` + Location int32 `protobuf:"varint,7,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CreateStmt) Reset() { - *x = CreateStmt{} +func (x *RangeTableFunc) Reset() { + *x = RangeTableFunc{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[82] + mi := &file_pg_query_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateStmt) String() string { +func (x *RangeTableFunc) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateStmt) ProtoMessage() {} +func (*RangeTableFunc) ProtoMessage() {} -func (x *CreateStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[82] +func (x *RangeTableFunc) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16056,126 +16509,91 @@ func (x *CreateStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateStmt.ProtoReflect.Descriptor instead. -func (*CreateStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{82} +// Deprecated: Use RangeTableFunc.ProtoReflect.Descriptor instead. +func (*RangeTableFunc) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{86} } -func (x *CreateStmt) GetRelation() *RangeVar { +func (x *RangeTableFunc) GetLateral() bool { if x != nil { - return x.Relation + return x.Lateral } - return nil + return false } -func (x *CreateStmt) GetTableElts() []*Node { +func (x *RangeTableFunc) GetDocexpr() *Node { if x != nil { - return x.TableElts + return x.Docexpr } return nil } -func (x *CreateStmt) GetInhRelations() []*Node { +func (x *RangeTableFunc) GetRowexpr() *Node { if x != nil { - return x.InhRelations + return x.Rowexpr } return nil } -func (x *CreateStmt) GetPartbound() *PartitionBoundSpec { +func (x *RangeTableFunc) GetNamespaces() []*Node { if x != nil { - return x.Partbound + return x.Namespaces } return nil } -func (x *CreateStmt) GetPartspec() *PartitionSpec { +func (x *RangeTableFunc) GetColumns() []*Node { if x != nil { - return x.Partspec + return x.Columns } return nil } -func (x *CreateStmt) GetOfTypename() *TypeName { +func (x *RangeTableFunc) GetAlias() *Alias { if x != nil { - return x.OfTypename + return x.Alias } return nil } -func (x *CreateStmt) GetConstraints() []*Node { +func (x *RangeTableFunc) GetLocation() int32 { if x != nil { - return x.Constraints + return x.Location } - return nil -} - -func (x *CreateStmt) GetOptions() []*Node { - if x != nil { - return x.Options - } - return nil -} - -func (x *CreateStmt) GetOncommit() OnCommitAction { - if x != nil { - return x.Oncommit - } - return OnCommitAction_ON_COMMIT_ACTION_UNDEFINED -} - -func (x *CreateStmt) GetTablespacename() string { - if x != nil { - return x.Tablespacename - } - return "" -} - -func (x *CreateStmt) GetAccessMethod() string { - if x != nil { - return x.AccessMethod - } - return "" -} - -func (x *CreateStmt) GetIfNotExists() bool { - if x != nil { - return x.IfNotExists - } - return false + return 0 } -type DefineStmt struct { +type RangeTableFuncCol struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Kind ObjectType `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.ObjectType" json:"kind,omitempty"` - Oldstyle bool `protobuf:"varint,2,opt,name=oldstyle,proto3" json:"oldstyle,omitempty"` - Defnames []*Node `protobuf:"bytes,3,rep,name=defnames,proto3" json:"defnames,omitempty"` - Args []*Node `protobuf:"bytes,4,rep,name=args,proto3" json:"args,omitempty"` - Definition []*Node `protobuf:"bytes,5,rep,name=definition,proto3" json:"definition,omitempty"` - IfNotExists bool `protobuf:"varint,6,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` - Replace bool `protobuf:"varint,7,opt,name=replace,proto3" json:"replace,omitempty"` + Colname string `protobuf:"bytes,1,opt,name=colname,proto3" json:"colname,omitempty"` + TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + ForOrdinality bool `protobuf:"varint,3,opt,name=for_ordinality,proto3" json:"for_ordinality,omitempty"` + IsNotNull bool `protobuf:"varint,4,opt,name=is_not_null,proto3" json:"is_not_null,omitempty"` + Colexpr *Node `protobuf:"bytes,5,opt,name=colexpr,proto3" json:"colexpr,omitempty"` + Coldefexpr *Node `protobuf:"bytes,6,opt,name=coldefexpr,proto3" json:"coldefexpr,omitempty"` + Location int32 `protobuf:"varint,7,opt,name=location,proto3" json:"location,omitempty"` } -func (x *DefineStmt) Reset() { - *x = DefineStmt{} +func (x *RangeTableFuncCol) Reset() { + *x = RangeTableFuncCol{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[83] + mi := &file_pg_query_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *DefineStmt) String() string { +func (x *RangeTableFuncCol) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DefineStmt) ProtoMessage() {} +func (*RangeTableFuncCol) ProtoMessage() {} -func (x *DefineStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[83] +func (x *RangeTableFuncCol) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16186,89 +16604,89 @@ func (x *DefineStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DefineStmt.ProtoReflect.Descriptor instead. -func (*DefineStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{83} +// Deprecated: Use RangeTableFuncCol.ProtoReflect.Descriptor instead. +func (*RangeTableFuncCol) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{87} } -func (x *DefineStmt) GetKind() ObjectType { +func (x *RangeTableFuncCol) GetColname() string { if x != nil { - return x.Kind + return x.Colname } - return ObjectType_OBJECT_TYPE_UNDEFINED + return "" } -func (x *DefineStmt) GetOldstyle() bool { +func (x *RangeTableFuncCol) GetTypeName() *TypeName { if x != nil { - return x.Oldstyle + return x.TypeName } - return false + return nil } -func (x *DefineStmt) GetDefnames() []*Node { +func (x *RangeTableFuncCol) GetForOrdinality() bool { if x != nil { - return x.Defnames + return x.ForOrdinality } - return nil + return false } -func (x *DefineStmt) GetArgs() []*Node { +func (x *RangeTableFuncCol) GetIsNotNull() bool { if x != nil { - return x.Args + return x.IsNotNull } - return nil + return false } -func (x *DefineStmt) GetDefinition() []*Node { +func (x *RangeTableFuncCol) GetColexpr() *Node { if x != nil { - return x.Definition + return x.Colexpr } return nil } -func (x *DefineStmt) GetIfNotExists() bool { +func (x *RangeTableFuncCol) GetColdefexpr() *Node { if x != nil { - return x.IfNotExists + return x.Coldefexpr } - return false + return nil } -func (x *DefineStmt) GetReplace() bool { +func (x *RangeTableFuncCol) GetLocation() int32 { if x != nil { - return x.Replace + return x.Location } - return false + return 0 } -type DropStmt struct { +type RangeTableSample struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Objects []*Node `protobuf:"bytes,1,rep,name=objects,proto3" json:"objects,omitempty"` - RemoveType ObjectType `protobuf:"varint,2,opt,name=remove_type,json=removeType,proto3,enum=pg_query.ObjectType" json:"remove_type,omitempty"` - Behavior DropBehavior `protobuf:"varint,3,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` - MissingOk bool `protobuf:"varint,4,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` - Concurrent bool `protobuf:"varint,5,opt,name=concurrent,proto3" json:"concurrent,omitempty"` + Relation *Node `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + Method []*Node `protobuf:"bytes,2,rep,name=method,proto3" json:"method,omitempty"` + Args []*Node `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` + Repeatable *Node `protobuf:"bytes,4,opt,name=repeatable,proto3" json:"repeatable,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *DropStmt) Reset() { - *x = DropStmt{} +func (x *RangeTableSample) Reset() { + *x = RangeTableSample{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[84] + mi := &file_pg_query_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *DropStmt) String() string { +func (x *RangeTableSample) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DropStmt) ProtoMessage() {} +func (*RangeTableSample) ProtoMessage() {} -func (x *DropStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[84] +func (x *RangeTableSample) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16279,73 +16697,89 @@ func (x *DropStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DropStmt.ProtoReflect.Descriptor instead. -func (*DropStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{84} +// Deprecated: Use RangeTableSample.ProtoReflect.Descriptor instead. +func (*RangeTableSample) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{88} } -func (x *DropStmt) GetObjects() []*Node { +func (x *RangeTableSample) GetRelation() *Node { if x != nil { - return x.Objects + return x.Relation } return nil } -func (x *DropStmt) GetRemoveType() ObjectType { +func (x *RangeTableSample) GetMethod() []*Node { if x != nil { - return x.RemoveType + return x.Method } - return ObjectType_OBJECT_TYPE_UNDEFINED + return nil } -func (x *DropStmt) GetBehavior() DropBehavior { +func (x *RangeTableSample) GetArgs() []*Node { if x != nil { - return x.Behavior + return x.Args } - return DropBehavior_DROP_BEHAVIOR_UNDEFINED + return nil } -func (x *DropStmt) GetMissingOk() bool { +func (x *RangeTableSample) GetRepeatable() *Node { if x != nil { - return x.MissingOk + return x.Repeatable } - return false + return nil } -func (x *DropStmt) GetConcurrent() bool { +func (x *RangeTableSample) GetLocation() int32 { if x != nil { - return x.Concurrent + return x.Location } - return false + return 0 } -type TruncateStmt struct { +type ColumnDef struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relations []*Node `protobuf:"bytes,1,rep,name=relations,proto3" json:"relations,omitempty"` - RestartSeqs bool `protobuf:"varint,2,opt,name=restart_seqs,proto3" json:"restart_seqs,omitempty"` - Behavior DropBehavior `protobuf:"varint,3,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` + Colname string `protobuf:"bytes,1,opt,name=colname,proto3" json:"colname,omitempty"` + TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + Compression string `protobuf:"bytes,3,opt,name=compression,proto3" json:"compression,omitempty"` + Inhcount int32 `protobuf:"varint,4,opt,name=inhcount,proto3" json:"inhcount,omitempty"` + IsLocal bool `protobuf:"varint,5,opt,name=is_local,proto3" json:"is_local,omitempty"` + IsNotNull bool `protobuf:"varint,6,opt,name=is_not_null,proto3" json:"is_not_null,omitempty"` + IsFromType bool `protobuf:"varint,7,opt,name=is_from_type,proto3" json:"is_from_type,omitempty"` + Storage string `protobuf:"bytes,8,opt,name=storage,proto3" json:"storage,omitempty"` + StorageName string `protobuf:"bytes,9,opt,name=storage_name,proto3" json:"storage_name,omitempty"` + RawDefault *Node `protobuf:"bytes,10,opt,name=raw_default,proto3" json:"raw_default,omitempty"` + CookedDefault *Node `protobuf:"bytes,11,opt,name=cooked_default,proto3" json:"cooked_default,omitempty"` + Identity string `protobuf:"bytes,12,opt,name=identity,proto3" json:"identity,omitempty"` + IdentitySequence *RangeVar `protobuf:"bytes,13,opt,name=identity_sequence,json=identitySequence,proto3" json:"identity_sequence,omitempty"` + Generated string `protobuf:"bytes,14,opt,name=generated,proto3" json:"generated,omitempty"` + CollClause *CollateClause `protobuf:"bytes,15,opt,name=coll_clause,json=collClause,proto3" json:"coll_clause,omitempty"` + CollOid uint32 `protobuf:"varint,16,opt,name=coll_oid,json=collOid,proto3" json:"coll_oid,omitempty"` + Constraints []*Node `protobuf:"bytes,17,rep,name=constraints,proto3" json:"constraints,omitempty"` + Fdwoptions []*Node `protobuf:"bytes,18,rep,name=fdwoptions,proto3" json:"fdwoptions,omitempty"` + Location int32 `protobuf:"varint,19,opt,name=location,proto3" json:"location,omitempty"` } -func (x *TruncateStmt) Reset() { - *x = TruncateStmt{} +func (x *ColumnDef) Reset() { + *x = ColumnDef{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[85] + mi := &file_pg_query_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *TruncateStmt) String() string { +func (x *ColumnDef) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TruncateStmt) ProtoMessage() {} +func (*ColumnDef) ProtoMessage() {} -func (x *TruncateStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[85] +func (x *ColumnDef) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16356,123 +16790,171 @@ func (x *TruncateStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use TruncateStmt.ProtoReflect.Descriptor instead. -func (*TruncateStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{85} +// Deprecated: Use ColumnDef.ProtoReflect.Descriptor instead. +func (*ColumnDef) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{89} } -func (x *TruncateStmt) GetRelations() []*Node { +func (x *ColumnDef) GetColname() string { if x != nil { - return x.Relations + return x.Colname } - return nil + return "" } -func (x *TruncateStmt) GetRestartSeqs() bool { +func (x *ColumnDef) GetTypeName() *TypeName { if x != nil { - return x.RestartSeqs + return x.TypeName } - return false + return nil } -func (x *TruncateStmt) GetBehavior() DropBehavior { +func (x *ColumnDef) GetCompression() string { if x != nil { - return x.Behavior + return x.Compression } - return DropBehavior_DROP_BEHAVIOR_UNDEFINED + return "" } -type CommentStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Objtype ObjectType `protobuf:"varint,1,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` - Object *Node `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` - Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment,omitempty"` +func (x *ColumnDef) GetInhcount() int32 { + if x != nil { + return x.Inhcount + } + return 0 } -func (x *CommentStmt) Reset() { - *x = CommentStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[86] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *ColumnDef) GetIsLocal() bool { + if x != nil { + return x.IsLocal } + return false } -func (x *CommentStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *ColumnDef) GetIsNotNull() bool { + if x != nil { + return x.IsNotNull + } + return false } -func (*CommentStmt) ProtoMessage() {} - -func (x *CommentStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[86] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *ColumnDef) GetIsFromType() bool { + if x != nil { + return x.IsFromType } - return mi.MessageOf(x) + return false } -// Deprecated: Use CommentStmt.ProtoReflect.Descriptor instead. -func (*CommentStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{86} +func (x *ColumnDef) GetStorage() string { + if x != nil { + return x.Storage + } + return "" } -func (x *CommentStmt) GetObjtype() ObjectType { +func (x *ColumnDef) GetStorageName() string { if x != nil { - return x.Objtype + return x.StorageName } - return ObjectType_OBJECT_TYPE_UNDEFINED + return "" } -func (x *CommentStmt) GetObject() *Node { +func (x *ColumnDef) GetRawDefault() *Node { if x != nil { - return x.Object + return x.RawDefault } return nil } -func (x *CommentStmt) GetComment() string { +func (x *ColumnDef) GetCookedDefault() *Node { if x != nil { - return x.Comment + return x.CookedDefault + } + return nil +} + +func (x *ColumnDef) GetIdentity() string { + if x != nil { + return x.Identity } return "" } -type FetchStmt struct { +func (x *ColumnDef) GetIdentitySequence() *RangeVar { + if x != nil { + return x.IdentitySequence + } + return nil +} + +func (x *ColumnDef) GetGenerated() string { + if x != nil { + return x.Generated + } + return "" +} + +func (x *ColumnDef) GetCollClause() *CollateClause { + if x != nil { + return x.CollClause + } + return nil +} + +func (x *ColumnDef) GetCollOid() uint32 { + if x != nil { + return x.CollOid + } + return 0 +} + +func (x *ColumnDef) GetConstraints() []*Node { + if x != nil { + return x.Constraints + } + return nil +} + +func (x *ColumnDef) GetFdwoptions() []*Node { + if x != nil { + return x.Fdwoptions + } + return nil +} + +func (x *ColumnDef) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type TableLikeClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Direction FetchDirection `protobuf:"varint,1,opt,name=direction,proto3,enum=pg_query.FetchDirection" json:"direction,omitempty"` - HowMany int64 `protobuf:"varint,2,opt,name=how_many,json=howMany,proto3" json:"how_many,omitempty"` - Portalname string `protobuf:"bytes,3,opt,name=portalname,proto3" json:"portalname,omitempty"` - Ismove bool `protobuf:"varint,4,opt,name=ismove,proto3" json:"ismove,omitempty"` + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + Options uint32 `protobuf:"varint,2,opt,name=options,proto3" json:"options,omitempty"` + RelationOid uint32 `protobuf:"varint,3,opt,name=relation_oid,json=relationOid,proto3" json:"relation_oid,omitempty"` } -func (x *FetchStmt) Reset() { - *x = FetchStmt{} +func (x *TableLikeClause) Reset() { + *x = TableLikeClause{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[87] + mi := &file_pg_query_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *FetchStmt) String() string { +func (x *TableLikeClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*FetchStmt) ProtoMessage() {} +func (*TableLikeClause) ProtoMessage() {} -func (x *FetchStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[87] +func (x *TableLikeClause) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16483,87 +16965,64 @@ func (x *FetchStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use FetchStmt.ProtoReflect.Descriptor instead. -func (*FetchStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{87} +// Deprecated: Use TableLikeClause.ProtoReflect.Descriptor instead. +func (*TableLikeClause) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{90} } -func (x *FetchStmt) GetDirection() FetchDirection { +func (x *TableLikeClause) GetRelation() *RangeVar { if x != nil { - return x.Direction + return x.Relation } - return FetchDirection_FETCH_DIRECTION_UNDEFINED + return nil } -func (x *FetchStmt) GetHowMany() int64 { +func (x *TableLikeClause) GetOptions() uint32 { if x != nil { - return x.HowMany + return x.Options } return 0 } -func (x *FetchStmt) GetPortalname() string { - if x != nil { - return x.Portalname - } - return "" -} - -func (x *FetchStmt) GetIsmove() bool { +func (x *TableLikeClause) GetRelationOid() uint32 { if x != nil { - return x.Ismove + return x.RelationOid } - return false + return 0 } -type IndexStmt struct { +type IndexElem struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Idxname string `protobuf:"bytes,1,opt,name=idxname,proto3" json:"idxname,omitempty"` - Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` - AccessMethod string `protobuf:"bytes,3,opt,name=access_method,json=accessMethod,proto3" json:"access_method,omitempty"` - TableSpace string `protobuf:"bytes,4,opt,name=table_space,json=tableSpace,proto3" json:"table_space,omitempty"` - IndexParams []*Node `protobuf:"bytes,5,rep,name=index_params,json=indexParams,proto3" json:"index_params,omitempty"` - IndexIncludingParams []*Node `protobuf:"bytes,6,rep,name=index_including_params,json=indexIncludingParams,proto3" json:"index_including_params,omitempty"` - Options []*Node `protobuf:"bytes,7,rep,name=options,proto3" json:"options,omitempty"` - WhereClause *Node `protobuf:"bytes,8,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` - ExcludeOpNames []*Node `protobuf:"bytes,9,rep,name=exclude_op_names,json=excludeOpNames,proto3" json:"exclude_op_names,omitempty"` - Idxcomment string `protobuf:"bytes,10,opt,name=idxcomment,proto3" json:"idxcomment,omitempty"` - IndexOid uint32 `protobuf:"varint,11,opt,name=index_oid,json=indexOid,proto3" json:"index_oid,omitempty"` - OldNode uint32 `protobuf:"varint,12,opt,name=old_node,json=oldNode,proto3" json:"old_node,omitempty"` - OldCreateSubid uint32 `protobuf:"varint,13,opt,name=old_create_subid,json=oldCreateSubid,proto3" json:"old_create_subid,omitempty"` - OldFirstRelfilenodeSubid uint32 `protobuf:"varint,14,opt,name=old_first_relfilenode_subid,json=oldFirstRelfilenodeSubid,proto3" json:"old_first_relfilenode_subid,omitempty"` - Unique bool `protobuf:"varint,15,opt,name=unique,proto3" json:"unique,omitempty"` - NullsNotDistinct bool `protobuf:"varint,16,opt,name=nulls_not_distinct,proto3" json:"nulls_not_distinct,omitempty"` - Primary bool `protobuf:"varint,17,opt,name=primary,proto3" json:"primary,omitempty"` - Isconstraint bool `protobuf:"varint,18,opt,name=isconstraint,proto3" json:"isconstraint,omitempty"` - Deferrable bool `protobuf:"varint,19,opt,name=deferrable,proto3" json:"deferrable,omitempty"` - Initdeferred bool `protobuf:"varint,20,opt,name=initdeferred,proto3" json:"initdeferred,omitempty"` - Transformed bool `protobuf:"varint,21,opt,name=transformed,proto3" json:"transformed,omitempty"` - Concurrent bool `protobuf:"varint,22,opt,name=concurrent,proto3" json:"concurrent,omitempty"` - IfNotExists bool `protobuf:"varint,23,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` - ResetDefaultTblspc bool `protobuf:"varint,24,opt,name=reset_default_tblspc,proto3" json:"reset_default_tblspc,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` + Indexcolname string `protobuf:"bytes,3,opt,name=indexcolname,proto3" json:"indexcolname,omitempty"` + Collation []*Node `protobuf:"bytes,4,rep,name=collation,proto3" json:"collation,omitempty"` + Opclass []*Node `protobuf:"bytes,5,rep,name=opclass,proto3" json:"opclass,omitempty"` + Opclassopts []*Node `protobuf:"bytes,6,rep,name=opclassopts,proto3" json:"opclassopts,omitempty"` + Ordering SortByDir `protobuf:"varint,7,opt,name=ordering,proto3,enum=pg_query.SortByDir" json:"ordering,omitempty"` + NullsOrdering SortByNulls `protobuf:"varint,8,opt,name=nulls_ordering,proto3,enum=pg_query.SortByNulls" json:"nulls_ordering,omitempty"` } -func (x *IndexStmt) Reset() { - *x = IndexStmt{} +func (x *IndexElem) Reset() { + *x = IndexElem{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[88] + mi := &file_pg_query_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *IndexStmt) String() string { +func (x *IndexElem) String() string { return protoimpl.X.MessageStringOf(x) } -func (*IndexStmt) ProtoMessage() {} +func (*IndexElem) ProtoMessage() {} -func (x *IndexStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[88] +func (x *IndexElem) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16574,210 +17033,238 @@ func (x *IndexStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use IndexStmt.ProtoReflect.Descriptor instead. -func (*IndexStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{88} +// Deprecated: Use IndexElem.ProtoReflect.Descriptor instead. +func (*IndexElem) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{91} } -func (x *IndexStmt) GetIdxname() string { +func (x *IndexElem) GetName() string { if x != nil { - return x.Idxname + return x.Name } return "" } -func (x *IndexStmt) GetRelation() *RangeVar { +func (x *IndexElem) GetExpr() *Node { if x != nil { - return x.Relation + return x.Expr } return nil } -func (x *IndexStmt) GetAccessMethod() string { - if x != nil { - return x.AccessMethod - } - return "" -} - -func (x *IndexStmt) GetTableSpace() string { +func (x *IndexElem) GetIndexcolname() string { if x != nil { - return x.TableSpace + return x.Indexcolname } return "" } -func (x *IndexStmt) GetIndexParams() []*Node { +func (x *IndexElem) GetCollation() []*Node { if x != nil { - return x.IndexParams + return x.Collation } return nil } -func (x *IndexStmt) GetIndexIncludingParams() []*Node { +func (x *IndexElem) GetOpclass() []*Node { if x != nil { - return x.IndexIncludingParams + return x.Opclass } return nil } -func (x *IndexStmt) GetOptions() []*Node { +func (x *IndexElem) GetOpclassopts() []*Node { if x != nil { - return x.Options + return x.Opclassopts } return nil } -func (x *IndexStmt) GetWhereClause() *Node { +func (x *IndexElem) GetOrdering() SortByDir { if x != nil { - return x.WhereClause + return x.Ordering } - return nil + return SortByDir_SORT_BY_DIR_UNDEFINED } -func (x *IndexStmt) GetExcludeOpNames() []*Node { +func (x *IndexElem) GetNullsOrdering() SortByNulls { if x != nil { - return x.ExcludeOpNames + return x.NullsOrdering } - return nil + return SortByNulls_SORT_BY_NULLS_UNDEFINED } -func (x *IndexStmt) GetIdxcomment() string { - if x != nil { - return x.Idxcomment - } - return "" -} +type DefElem struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (x *IndexStmt) GetIndexOid() uint32 { - if x != nil { - return x.IndexOid - } - return 0 + Defnamespace string `protobuf:"bytes,1,opt,name=defnamespace,proto3" json:"defnamespace,omitempty"` + Defname string `protobuf:"bytes,2,opt,name=defname,proto3" json:"defname,omitempty"` + Arg *Node `protobuf:"bytes,3,opt,name=arg,proto3" json:"arg,omitempty"` + Defaction DefElemAction `protobuf:"varint,4,opt,name=defaction,proto3,enum=pg_query.DefElemAction" json:"defaction,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *IndexStmt) GetOldNode() uint32 { - if x != nil { - return x.OldNode +func (x *DefElem) Reset() { + *x = DefElem{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[92] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return 0 } -func (x *IndexStmt) GetOldCreateSubid() uint32 { - if x != nil { - return x.OldCreateSubid - } - return 0 +func (x *DefElem) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *IndexStmt) GetOldFirstRelfilenodeSubid() uint32 { - if x != nil { - return x.OldFirstRelfilenodeSubid - } - return 0 -} +func (*DefElem) ProtoMessage() {} -func (x *IndexStmt) GetUnique() bool { - if x != nil { - return x.Unique +func (x *DefElem) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[92] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return false + return mi.MessageOf(x) } -func (x *IndexStmt) GetNullsNotDistinct() bool { +// Deprecated: Use DefElem.ProtoReflect.Descriptor instead. +func (*DefElem) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{92} +} + +func (x *DefElem) GetDefnamespace() string { if x != nil { - return x.NullsNotDistinct + return x.Defnamespace } - return false + return "" } -func (x *IndexStmt) GetPrimary() bool { +func (x *DefElem) GetDefname() string { if x != nil { - return x.Primary + return x.Defname } - return false + return "" } -func (x *IndexStmt) GetIsconstraint() bool { +func (x *DefElem) GetArg() *Node { if x != nil { - return x.Isconstraint + return x.Arg } - return false + return nil } -func (x *IndexStmt) GetDeferrable() bool { +func (x *DefElem) GetDefaction() DefElemAction { if x != nil { - return x.Deferrable + return x.Defaction } - return false + return DefElemAction_DEF_ELEM_ACTION_UNDEFINED } -func (x *IndexStmt) GetInitdeferred() bool { +func (x *DefElem) GetLocation() int32 { if x != nil { - return x.Initdeferred + return x.Location } - return false + return 0 } -func (x *IndexStmt) GetTransformed() bool { - if x != nil { - return x.Transformed +type LockingClause struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LockedRels []*Node `protobuf:"bytes,1,rep,name=locked_rels,json=lockedRels,proto3" json:"locked_rels,omitempty"` + Strength LockClauseStrength `protobuf:"varint,2,opt,name=strength,proto3,enum=pg_query.LockClauseStrength" json:"strength,omitempty"` + WaitPolicy LockWaitPolicy `protobuf:"varint,3,opt,name=wait_policy,json=waitPolicy,proto3,enum=pg_query.LockWaitPolicy" json:"wait_policy,omitempty"` +} + +func (x *LockingClause) Reset() { + *x = LockingClause{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[93] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return false } -func (x *IndexStmt) GetConcurrent() bool { +func (x *LockingClause) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LockingClause) ProtoMessage() {} + +func (x *LockingClause) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[93] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LockingClause.ProtoReflect.Descriptor instead. +func (*LockingClause) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{93} +} + +func (x *LockingClause) GetLockedRels() []*Node { if x != nil { - return x.Concurrent + return x.LockedRels } - return false + return nil } -func (x *IndexStmt) GetIfNotExists() bool { +func (x *LockingClause) GetStrength() LockClauseStrength { if x != nil { - return x.IfNotExists + return x.Strength } - return false + return LockClauseStrength_LOCK_CLAUSE_STRENGTH_UNDEFINED } -func (x *IndexStmt) GetResetDefaultTblspc() bool { +func (x *LockingClause) GetWaitPolicy() LockWaitPolicy { if x != nil { - return x.ResetDefaultTblspc + return x.WaitPolicy } - return false + return LockWaitPolicy_LOCK_WAIT_POLICY_UNDEFINED } -type CreateFunctionStmt struct { +type XmlSerialize struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - IsProcedure bool `protobuf:"varint,1,opt,name=is_procedure,proto3" json:"is_procedure,omitempty"` - Replace bool `protobuf:"varint,2,opt,name=replace,proto3" json:"replace,omitempty"` - Funcname []*Node `protobuf:"bytes,3,rep,name=funcname,proto3" json:"funcname,omitempty"` - Parameters []*Node `protobuf:"bytes,4,rep,name=parameters,proto3" json:"parameters,omitempty"` - ReturnType *TypeName `protobuf:"bytes,5,opt,name=return_type,json=returnType,proto3" json:"return_type,omitempty"` - Options []*Node `protobuf:"bytes,6,rep,name=options,proto3" json:"options,omitempty"` - SqlBody *Node `protobuf:"bytes,7,opt,name=sql_body,proto3" json:"sql_body,omitempty"` + Xmloption XmlOptionType `protobuf:"varint,1,opt,name=xmloption,proto3,enum=pg_query.XmlOptionType" json:"xmloption,omitempty"` + Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` + TypeName *TypeName `protobuf:"bytes,3,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + Indent bool `protobuf:"varint,4,opt,name=indent,proto3" json:"indent,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CreateFunctionStmt) Reset() { - *x = CreateFunctionStmt{} +func (x *XmlSerialize) Reset() { + *x = XmlSerialize{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[89] + mi := &file_pg_query_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateFunctionStmt) String() string { +func (x *XmlSerialize) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateFunctionStmt) ProtoMessage() {} +func (*XmlSerialize) ProtoMessage() {} -func (x *CreateFunctionStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[89] +func (x *XmlSerialize) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16788,87 +17275,75 @@ func (x *CreateFunctionStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateFunctionStmt.ProtoReflect.Descriptor instead. -func (*CreateFunctionStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{89} -} - -func (x *CreateFunctionStmt) GetIsProcedure() bool { - if x != nil { - return x.IsProcedure - } - return false -} - -func (x *CreateFunctionStmt) GetReplace() bool { - if x != nil { - return x.Replace - } - return false +// Deprecated: Use XmlSerialize.ProtoReflect.Descriptor instead. +func (*XmlSerialize) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{94} } -func (x *CreateFunctionStmt) GetFuncname() []*Node { +func (x *XmlSerialize) GetXmloption() XmlOptionType { if x != nil { - return x.Funcname + return x.Xmloption } - return nil + return XmlOptionType_XML_OPTION_TYPE_UNDEFINED } -func (x *CreateFunctionStmt) GetParameters() []*Node { +func (x *XmlSerialize) GetExpr() *Node { if x != nil { - return x.Parameters + return x.Expr } return nil } -func (x *CreateFunctionStmt) GetReturnType() *TypeName { +func (x *XmlSerialize) GetTypeName() *TypeName { if x != nil { - return x.ReturnType + return x.TypeName } return nil } -func (x *CreateFunctionStmt) GetOptions() []*Node { +func (x *XmlSerialize) GetIndent() bool { if x != nil { - return x.Options + return x.Indent } - return nil + return false } -func (x *CreateFunctionStmt) GetSqlBody() *Node { +func (x *XmlSerialize) GetLocation() int32 { if x != nil { - return x.SqlBody + return x.Location } - return nil + return 0 } -type AlterFunctionStmt struct { +type PartitionElem struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Objtype ObjectType `protobuf:"varint,1,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` - Func *ObjectWithArgs `protobuf:"bytes,2,opt,name=func,proto3" json:"func,omitempty"` - Actions []*Node `protobuf:"bytes,3,rep,name=actions,proto3" json:"actions,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` + Collation []*Node `protobuf:"bytes,3,rep,name=collation,proto3" json:"collation,omitempty"` + Opclass []*Node `protobuf:"bytes,4,rep,name=opclass,proto3" json:"opclass,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *AlterFunctionStmt) Reset() { - *x = AlterFunctionStmt{} +func (x *PartitionElem) Reset() { + *x = PartitionElem{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[90] + mi := &file_pg_query_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterFunctionStmt) String() string { +func (x *PartitionElem) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterFunctionStmt) ProtoMessage() {} +func (*PartitionElem) ProtoMessage() {} -func (x *AlterFunctionStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[90] +func (x *PartitionElem) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16879,57 +17354,73 @@ func (x *AlterFunctionStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterFunctionStmt.ProtoReflect.Descriptor instead. -func (*AlterFunctionStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{90} +// Deprecated: Use PartitionElem.ProtoReflect.Descriptor instead. +func (*PartitionElem) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{95} } -func (x *AlterFunctionStmt) GetObjtype() ObjectType { +func (x *PartitionElem) GetName() string { if x != nil { - return x.Objtype + return x.Name } - return ObjectType_OBJECT_TYPE_UNDEFINED + return "" } -func (x *AlterFunctionStmt) GetFunc() *ObjectWithArgs { +func (x *PartitionElem) GetExpr() *Node { if x != nil { - return x.Func + return x.Expr } return nil } -func (x *AlterFunctionStmt) GetActions() []*Node { +func (x *PartitionElem) GetCollation() []*Node { if x != nil { - return x.Actions + return x.Collation } return nil } -type DoStmt struct { +func (x *PartitionElem) GetOpclass() []*Node { + if x != nil { + return x.Opclass + } + return nil +} + +func (x *PartitionElem) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type PartitionSpec struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Args []*Node `protobuf:"bytes,1,rep,name=args,proto3" json:"args,omitempty"` + Strategy PartitionStrategy `protobuf:"varint,1,opt,name=strategy,proto3,enum=pg_query.PartitionStrategy" json:"strategy,omitempty"` + PartParams []*Node `protobuf:"bytes,2,rep,name=part_params,json=partParams,proto3" json:"part_params,omitempty"` + Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` } -func (x *DoStmt) Reset() { - *x = DoStmt{} +func (x *PartitionSpec) Reset() { + *x = PartitionSpec{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[91] + mi := &file_pg_query_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *DoStmt) String() string { +func (x *PartitionSpec) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DoStmt) ProtoMessage() {} +func (*PartitionSpec) ProtoMessage() {} -func (x *DoStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[91] +func (x *PartitionSpec) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16940,50 +17431,64 @@ func (x *DoStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DoStmt.ProtoReflect.Descriptor instead. -func (*DoStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{91} -} - -func (x *DoStmt) GetArgs() []*Node { +// Deprecated: Use PartitionSpec.ProtoReflect.Descriptor instead. +func (*PartitionSpec) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{96} +} + +func (x *PartitionSpec) GetStrategy() PartitionStrategy { if x != nil { - return x.Args + return x.Strategy + } + return PartitionStrategy_PARTITION_STRATEGY_UNDEFINED +} + +func (x *PartitionSpec) GetPartParams() []*Node { + if x != nil { + return x.PartParams } return nil } -type RenameStmt struct { +func (x *PartitionSpec) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type PartitionBoundSpec struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RenameType ObjectType `protobuf:"varint,1,opt,name=rename_type,json=renameType,proto3,enum=pg_query.ObjectType" json:"rename_type,omitempty"` - RelationType ObjectType `protobuf:"varint,2,opt,name=relation_type,json=relationType,proto3,enum=pg_query.ObjectType" json:"relation_type,omitempty"` - Relation *RangeVar `protobuf:"bytes,3,opt,name=relation,proto3" json:"relation,omitempty"` - Object *Node `protobuf:"bytes,4,opt,name=object,proto3" json:"object,omitempty"` - Subname string `protobuf:"bytes,5,opt,name=subname,proto3" json:"subname,omitempty"` - Newname string `protobuf:"bytes,6,opt,name=newname,proto3" json:"newname,omitempty"` - Behavior DropBehavior `protobuf:"varint,7,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` - MissingOk bool `protobuf:"varint,8,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + Strategy string `protobuf:"bytes,1,opt,name=strategy,proto3" json:"strategy,omitempty"` + IsDefault bool `protobuf:"varint,2,opt,name=is_default,proto3" json:"is_default,omitempty"` + Modulus int32 `protobuf:"varint,3,opt,name=modulus,proto3" json:"modulus,omitempty"` + Remainder int32 `protobuf:"varint,4,opt,name=remainder,proto3" json:"remainder,omitempty"` + Listdatums []*Node `protobuf:"bytes,5,rep,name=listdatums,proto3" json:"listdatums,omitempty"` + Lowerdatums []*Node `protobuf:"bytes,6,rep,name=lowerdatums,proto3" json:"lowerdatums,omitempty"` + Upperdatums []*Node `protobuf:"bytes,7,rep,name=upperdatums,proto3" json:"upperdatums,omitempty"` + Location int32 `protobuf:"varint,8,opt,name=location,proto3" json:"location,omitempty"` } -func (x *RenameStmt) Reset() { - *x = RenameStmt{} +func (x *PartitionBoundSpec) Reset() { + *x = PartitionBoundSpec{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[92] + mi := &file_pg_query_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RenameStmt) String() string { +func (x *PartitionBoundSpec) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RenameStmt) ProtoMessage() {} +func (*PartitionBoundSpec) ProtoMessage() {} -func (x *RenameStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[92] +func (x *PartitionBoundSpec) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16994,98 +17499,94 @@ func (x *RenameStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RenameStmt.ProtoReflect.Descriptor instead. -func (*RenameStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{92} +// Deprecated: Use PartitionBoundSpec.ProtoReflect.Descriptor instead. +func (*PartitionBoundSpec) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{97} } -func (x *RenameStmt) GetRenameType() ObjectType { +func (x *PartitionBoundSpec) GetStrategy() string { if x != nil { - return x.RenameType + return x.Strategy } - return ObjectType_OBJECT_TYPE_UNDEFINED + return "" } -func (x *RenameStmt) GetRelationType() ObjectType { +func (x *PartitionBoundSpec) GetIsDefault() bool { if x != nil { - return x.RelationType + return x.IsDefault } - return ObjectType_OBJECT_TYPE_UNDEFINED + return false } -func (x *RenameStmt) GetRelation() *RangeVar { +func (x *PartitionBoundSpec) GetModulus() int32 { if x != nil { - return x.Relation + return x.Modulus } - return nil + return 0 } -func (x *RenameStmt) GetObject() *Node { +func (x *PartitionBoundSpec) GetRemainder() int32 { if x != nil { - return x.Object + return x.Remainder } - return nil + return 0 } -func (x *RenameStmt) GetSubname() string { +func (x *PartitionBoundSpec) GetListdatums() []*Node { if x != nil { - return x.Subname + return x.Listdatums } - return "" + return nil } -func (x *RenameStmt) GetNewname() string { +func (x *PartitionBoundSpec) GetLowerdatums() []*Node { if x != nil { - return x.Newname + return x.Lowerdatums } - return "" + return nil } -func (x *RenameStmt) GetBehavior() DropBehavior { +func (x *PartitionBoundSpec) GetUpperdatums() []*Node { if x != nil { - return x.Behavior + return x.Upperdatums } - return DropBehavior_DROP_BEHAVIOR_UNDEFINED + return nil } -func (x *RenameStmt) GetMissingOk() bool { +func (x *PartitionBoundSpec) GetLocation() int32 { if x != nil { - return x.MissingOk + return x.Location } - return false + return 0 } -type RuleStmt struct { +type PartitionRangeDatum struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - Rulename string `protobuf:"bytes,2,opt,name=rulename,proto3" json:"rulename,omitempty"` - WhereClause *Node `protobuf:"bytes,3,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` - Event CmdType `protobuf:"varint,4,opt,name=event,proto3,enum=pg_query.CmdType" json:"event,omitempty"` - Instead bool `protobuf:"varint,5,opt,name=instead,proto3" json:"instead,omitempty"` - Actions []*Node `protobuf:"bytes,6,rep,name=actions,proto3" json:"actions,omitempty"` - Replace bool `protobuf:"varint,7,opt,name=replace,proto3" json:"replace,omitempty"` + Kind PartitionRangeDatumKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.PartitionRangeDatumKind" json:"kind,omitempty"` + Value *Node `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` } -func (x *RuleStmt) Reset() { - *x = RuleStmt{} +func (x *PartitionRangeDatum) Reset() { + *x = PartitionRangeDatum{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[93] + mi := &file_pg_query_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RuleStmt) String() string { +func (x *PartitionRangeDatum) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RuleStmt) ProtoMessage() {} +func (*PartitionRangeDatum) ProtoMessage() {} -func (x *RuleStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[93] +func (x *PartitionRangeDatum) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17096,86 +17597,59 @@ func (x *RuleStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RuleStmt.ProtoReflect.Descriptor instead. -func (*RuleStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{93} -} - -func (x *RuleStmt) GetRelation() *RangeVar { - if x != nil { - return x.Relation - } - return nil -} - -func (x *RuleStmt) GetRulename() string { - if x != nil { - return x.Rulename - } - return "" -} - -func (x *RuleStmt) GetWhereClause() *Node { - if x != nil { - return x.WhereClause - } - return nil -} - -func (x *RuleStmt) GetEvent() CmdType { - if x != nil { - return x.Event - } - return CmdType_CMD_TYPE_UNDEFINED +// Deprecated: Use PartitionRangeDatum.ProtoReflect.Descriptor instead. +func (*PartitionRangeDatum) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{98} } -func (x *RuleStmt) GetInstead() bool { +func (x *PartitionRangeDatum) GetKind() PartitionRangeDatumKind { if x != nil { - return x.Instead + return x.Kind } - return false + return PartitionRangeDatumKind_PARTITION_RANGE_DATUM_KIND_UNDEFINED } -func (x *RuleStmt) GetActions() []*Node { +func (x *PartitionRangeDatum) GetValue() *Node { if x != nil { - return x.Actions + return x.Value } return nil } -func (x *RuleStmt) GetReplace() bool { +func (x *PartitionRangeDatum) GetLocation() int32 { if x != nil { - return x.Replace + return x.Location } - return false + return 0 } -type NotifyStmt struct { +type PartitionCmd struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Conditionname string `protobuf:"bytes,1,opt,name=conditionname,proto3" json:"conditionname,omitempty"` - Payload string `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"` + Name *RangeVar `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Bound *PartitionBoundSpec `protobuf:"bytes,2,opt,name=bound,proto3" json:"bound,omitempty"` + Concurrent bool `protobuf:"varint,3,opt,name=concurrent,proto3" json:"concurrent,omitempty"` } -func (x *NotifyStmt) Reset() { - *x = NotifyStmt{} +func (x *PartitionCmd) Reset() { + *x = PartitionCmd{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[94] + mi := &file_pg_query_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *NotifyStmt) String() string { +func (x *PartitionCmd) String() string { return protoimpl.X.MessageStringOf(x) } -func (*NotifyStmt) ProtoMessage() {} +func (*PartitionCmd) ProtoMessage() {} -func (x *NotifyStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[94] +func (x *PartitionCmd) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17186,50 +17660,88 @@ func (x *NotifyStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use NotifyStmt.ProtoReflect.Descriptor instead. -func (*NotifyStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{94} +// Deprecated: Use PartitionCmd.ProtoReflect.Descriptor instead. +func (*PartitionCmd) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{99} } -func (x *NotifyStmt) GetConditionname() string { +func (x *PartitionCmd) GetName() *RangeVar { if x != nil { - return x.Conditionname + return x.Name } - return "" + return nil } -func (x *NotifyStmt) GetPayload() string { +func (x *PartitionCmd) GetBound() *PartitionBoundSpec { if x != nil { - return x.Payload + return x.Bound } - return "" + return nil } -type ListenStmt struct { +func (x *PartitionCmd) GetConcurrent() bool { + if x != nil { + return x.Concurrent + } + return false +} + +type RangeTblEntry struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Conditionname string `protobuf:"bytes,1,opt,name=conditionname,proto3" json:"conditionname,omitempty"` + Rtekind RTEKind `protobuf:"varint,1,opt,name=rtekind,proto3,enum=pg_query.RTEKind" json:"rtekind,omitempty"` + Relid uint32 `protobuf:"varint,2,opt,name=relid,proto3" json:"relid,omitempty"` + Relkind string `protobuf:"bytes,3,opt,name=relkind,proto3" json:"relkind,omitempty"` + Rellockmode int32 `protobuf:"varint,4,opt,name=rellockmode,proto3" json:"rellockmode,omitempty"` + Tablesample *TableSampleClause `protobuf:"bytes,5,opt,name=tablesample,proto3" json:"tablesample,omitempty"` + Perminfoindex uint32 `protobuf:"varint,6,opt,name=perminfoindex,proto3" json:"perminfoindex,omitempty"` + Subquery *Query `protobuf:"bytes,7,opt,name=subquery,proto3" json:"subquery,omitempty"` + SecurityBarrier bool `protobuf:"varint,8,opt,name=security_barrier,proto3" json:"security_barrier,omitempty"` + Jointype JoinType `protobuf:"varint,9,opt,name=jointype,proto3,enum=pg_query.JoinType" json:"jointype,omitempty"` + Joinmergedcols int32 `protobuf:"varint,10,opt,name=joinmergedcols,proto3" json:"joinmergedcols,omitempty"` + Joinaliasvars []*Node `protobuf:"bytes,11,rep,name=joinaliasvars,proto3" json:"joinaliasvars,omitempty"` + Joinleftcols []*Node `protobuf:"bytes,12,rep,name=joinleftcols,proto3" json:"joinleftcols,omitempty"` + Joinrightcols []*Node `protobuf:"bytes,13,rep,name=joinrightcols,proto3" json:"joinrightcols,omitempty"` + JoinUsingAlias *Alias `protobuf:"bytes,14,opt,name=join_using_alias,proto3" json:"join_using_alias,omitempty"` + Functions []*Node `protobuf:"bytes,15,rep,name=functions,proto3" json:"functions,omitempty"` + Funcordinality bool `protobuf:"varint,16,opt,name=funcordinality,proto3" json:"funcordinality,omitempty"` + Tablefunc *TableFunc `protobuf:"bytes,17,opt,name=tablefunc,proto3" json:"tablefunc,omitempty"` + ValuesLists []*Node `protobuf:"bytes,18,rep,name=values_lists,proto3" json:"values_lists,omitempty"` + Ctename string `protobuf:"bytes,19,opt,name=ctename,proto3" json:"ctename,omitempty"` + Ctelevelsup uint32 `protobuf:"varint,20,opt,name=ctelevelsup,proto3" json:"ctelevelsup,omitempty"` + SelfReference bool `protobuf:"varint,21,opt,name=self_reference,proto3" json:"self_reference,omitempty"` + Coltypes []*Node `protobuf:"bytes,22,rep,name=coltypes,proto3" json:"coltypes,omitempty"` + Coltypmods []*Node `protobuf:"bytes,23,rep,name=coltypmods,proto3" json:"coltypmods,omitempty"` + Colcollations []*Node `protobuf:"bytes,24,rep,name=colcollations,proto3" json:"colcollations,omitempty"` + Enrname string `protobuf:"bytes,25,opt,name=enrname,proto3" json:"enrname,omitempty"` + Enrtuples float64 `protobuf:"fixed64,26,opt,name=enrtuples,proto3" json:"enrtuples,omitempty"` + Alias *Alias `protobuf:"bytes,27,opt,name=alias,proto3" json:"alias,omitempty"` + Eref *Alias `protobuf:"bytes,28,opt,name=eref,proto3" json:"eref,omitempty"` + Lateral bool `protobuf:"varint,29,opt,name=lateral,proto3" json:"lateral,omitempty"` + Inh bool `protobuf:"varint,30,opt,name=inh,proto3" json:"inh,omitempty"` + InFromCl bool `protobuf:"varint,31,opt,name=in_from_cl,json=inFromCl,proto3" json:"in_from_cl,omitempty"` + SecurityQuals []*Node `protobuf:"bytes,32,rep,name=security_quals,json=securityQuals,proto3" json:"security_quals,omitempty"` } -func (x *ListenStmt) Reset() { - *x = ListenStmt{} +func (x *RangeTblEntry) Reset() { + *x = RangeTblEntry{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[95] + mi := &file_pg_query_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ListenStmt) String() string { +func (x *RangeTblEntry) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ListenStmt) ProtoMessage() {} +func (*RangeTblEntry) ProtoMessage() {} -func (x *ListenStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[95] +func (x *RangeTblEntry) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17240,256 +17752,266 @@ func (x *ListenStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ListenStmt.ProtoReflect.Descriptor instead. -func (*ListenStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{95} +// Deprecated: Use RangeTblEntry.ProtoReflect.Descriptor instead. +func (*RangeTblEntry) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{100} } -func (x *ListenStmt) GetConditionname() string { +func (x *RangeTblEntry) GetRtekind() RTEKind { if x != nil { - return x.Conditionname + return x.Rtekind } - return "" + return RTEKind_RTEKIND_UNDEFINED } -type UnlistenStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +func (x *RangeTblEntry) GetRelid() uint32 { + if x != nil { + return x.Relid + } + return 0 +} - Conditionname string `protobuf:"bytes,1,opt,name=conditionname,proto3" json:"conditionname,omitempty"` +func (x *RangeTblEntry) GetRelkind() string { + if x != nil { + return x.Relkind + } + return "" } -func (x *UnlistenStmt) Reset() { - *x = UnlistenStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[96] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *RangeTblEntry) GetRellockmode() int32 { + if x != nil { + return x.Rellockmode } + return 0 } -func (x *UnlistenStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *RangeTblEntry) GetTablesample() *TableSampleClause { + if x != nil { + return x.Tablesample + } + return nil } -func (*UnlistenStmt) ProtoMessage() {} +func (x *RangeTblEntry) GetPerminfoindex() uint32 { + if x != nil { + return x.Perminfoindex + } + return 0 +} -func (x *UnlistenStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[96] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *RangeTblEntry) GetSubquery() *Query { + if x != nil { + return x.Subquery } - return mi.MessageOf(x) + return nil } -// Deprecated: Use UnlistenStmt.ProtoReflect.Descriptor instead. -func (*UnlistenStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{96} +func (x *RangeTblEntry) GetSecurityBarrier() bool { + if x != nil { + return x.SecurityBarrier + } + return false } -func (x *UnlistenStmt) GetConditionname() string { +func (x *RangeTblEntry) GetJointype() JoinType { if x != nil { - return x.Conditionname + return x.Jointype } - return "" + return JoinType_JOIN_TYPE_UNDEFINED } -type TransactionStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +func (x *RangeTblEntry) GetJoinmergedcols() int32 { + if x != nil { + return x.Joinmergedcols + } + return 0 +} - Kind TransactionStmtKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.TransactionStmtKind" json:"kind,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` - SavepointName string `protobuf:"bytes,3,opt,name=savepoint_name,proto3" json:"savepoint_name,omitempty"` - Gid string `protobuf:"bytes,4,opt,name=gid,proto3" json:"gid,omitempty"` - Chain bool `protobuf:"varint,5,opt,name=chain,proto3" json:"chain,omitempty"` +func (x *RangeTblEntry) GetJoinaliasvars() []*Node { + if x != nil { + return x.Joinaliasvars + } + return nil } -func (x *TransactionStmt) Reset() { - *x = TransactionStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[97] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *RangeTblEntry) GetJoinleftcols() []*Node { + if x != nil { + return x.Joinleftcols } + return nil } -func (x *TransactionStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *RangeTblEntry) GetJoinrightcols() []*Node { + if x != nil { + return x.Joinrightcols + } + return nil } -func (*TransactionStmt) ProtoMessage() {} +func (x *RangeTblEntry) GetJoinUsingAlias() *Alias { + if x != nil { + return x.JoinUsingAlias + } + return nil +} -func (x *TransactionStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[97] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *RangeTblEntry) GetFunctions() []*Node { + if x != nil { + return x.Functions } - return mi.MessageOf(x) + return nil } -// Deprecated: Use TransactionStmt.ProtoReflect.Descriptor instead. -func (*TransactionStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{97} +func (x *RangeTblEntry) GetFuncordinality() bool { + if x != nil { + return x.Funcordinality + } + return false } -func (x *TransactionStmt) GetKind() TransactionStmtKind { +func (x *RangeTblEntry) GetTablefunc() *TableFunc { if x != nil { - return x.Kind + return x.Tablefunc } - return TransactionStmtKind_TRANSACTION_STMT_KIND_UNDEFINED + return nil } -func (x *TransactionStmt) GetOptions() []*Node { +func (x *RangeTblEntry) GetValuesLists() []*Node { if x != nil { - return x.Options + return x.ValuesLists } return nil } -func (x *TransactionStmt) GetSavepointName() string { +func (x *RangeTblEntry) GetCtename() string { if x != nil { - return x.SavepointName + return x.Ctename } return "" } -func (x *TransactionStmt) GetGid() string { +func (x *RangeTblEntry) GetCtelevelsup() uint32 { if x != nil { - return x.Gid + return x.Ctelevelsup } - return "" + return 0 } -func (x *TransactionStmt) GetChain() bool { +func (x *RangeTblEntry) GetSelfReference() bool { if x != nil { - return x.Chain + return x.SelfReference } return false } -type ViewStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - View *RangeVar `protobuf:"bytes,1,opt,name=view,proto3" json:"view,omitempty"` - Aliases []*Node `protobuf:"bytes,2,rep,name=aliases,proto3" json:"aliases,omitempty"` - Query *Node `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"` - Replace bool `protobuf:"varint,4,opt,name=replace,proto3" json:"replace,omitempty"` - Options []*Node `protobuf:"bytes,5,rep,name=options,proto3" json:"options,omitempty"` - WithCheckOption ViewCheckOption `protobuf:"varint,6,opt,name=with_check_option,json=withCheckOption,proto3,enum=pg_query.ViewCheckOption" json:"with_check_option,omitempty"` +func (x *RangeTblEntry) GetColtypes() []*Node { + if x != nil { + return x.Coltypes + } + return nil } -func (x *ViewStmt) Reset() { - *x = ViewStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[98] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *RangeTblEntry) GetColtypmods() []*Node { + if x != nil { + return x.Coltypmods } + return nil } -func (x *ViewStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *RangeTblEntry) GetColcollations() []*Node { + if x != nil { + return x.Colcollations + } + return nil } -func (*ViewStmt) ProtoMessage() {} - -func (x *ViewStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[98] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *RangeTblEntry) GetEnrname() string { + if x != nil { + return x.Enrname } - return mi.MessageOf(x) + return "" } -// Deprecated: Use ViewStmt.ProtoReflect.Descriptor instead. -func (*ViewStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{98} +func (x *RangeTblEntry) GetEnrtuples() float64 { + if x != nil { + return x.Enrtuples + } + return 0 } -func (x *ViewStmt) GetView() *RangeVar { +func (x *RangeTblEntry) GetAlias() *Alias { if x != nil { - return x.View + return x.Alias } return nil } -func (x *ViewStmt) GetAliases() []*Node { +func (x *RangeTblEntry) GetEref() *Alias { if x != nil { - return x.Aliases + return x.Eref } return nil } -func (x *ViewStmt) GetQuery() *Node { +func (x *RangeTblEntry) GetLateral() bool { if x != nil { - return x.Query + return x.Lateral } - return nil + return false } -func (x *ViewStmt) GetReplace() bool { +func (x *RangeTblEntry) GetInh() bool { if x != nil { - return x.Replace + return x.Inh } return false } -func (x *ViewStmt) GetOptions() []*Node { +func (x *RangeTblEntry) GetInFromCl() bool { if x != nil { - return x.Options + return x.InFromCl } - return nil + return false } -func (x *ViewStmt) GetWithCheckOption() ViewCheckOption { +func (x *RangeTblEntry) GetSecurityQuals() []*Node { if x != nil { - return x.WithCheckOption + return x.SecurityQuals } - return ViewCheckOption_VIEW_CHECK_OPTION_UNDEFINED + return nil } -type LoadStmt struct { +type RTEPermissionInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Filename string `protobuf:"bytes,1,opt,name=filename,proto3" json:"filename,omitempty"` + Relid uint32 `protobuf:"varint,1,opt,name=relid,proto3" json:"relid,omitempty"` + Inh bool `protobuf:"varint,2,opt,name=inh,proto3" json:"inh,omitempty"` + RequiredPerms int64 `protobuf:"varint,3,opt,name=required_perms,json=requiredPerms,proto3" json:"required_perms,omitempty"` + CheckAsUser uint32 `protobuf:"varint,4,opt,name=check_as_user,json=checkAsUser,proto3" json:"check_as_user,omitempty"` + SelectedCols []uint64 `protobuf:"varint,5,rep,packed,name=selected_cols,json=selectedCols,proto3" json:"selected_cols,omitempty"` + InsertedCols []uint64 `protobuf:"varint,6,rep,packed,name=inserted_cols,json=insertedCols,proto3" json:"inserted_cols,omitempty"` + UpdatedCols []uint64 `protobuf:"varint,7,rep,packed,name=updated_cols,json=updatedCols,proto3" json:"updated_cols,omitempty"` } -func (x *LoadStmt) Reset() { - *x = LoadStmt{} +func (x *RTEPermissionInfo) Reset() { + *x = RTEPermissionInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[99] + mi := &file_pg_query_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *LoadStmt) String() string { +func (x *RTEPermissionInfo) String() string { return protoimpl.X.MessageStringOf(x) } -func (*LoadStmt) ProtoMessage() {} +func (*RTEPermissionInfo) ProtoMessage() {} -func (x *LoadStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[99] +func (x *RTEPermissionInfo) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17500,115 +18022,91 @@ func (x *LoadStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use LoadStmt.ProtoReflect.Descriptor instead. -func (*LoadStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{99} +// Deprecated: Use RTEPermissionInfo.ProtoReflect.Descriptor instead. +func (*RTEPermissionInfo) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{101} } -func (x *LoadStmt) GetFilename() string { +func (x *RTEPermissionInfo) GetRelid() uint32 { if x != nil { - return x.Filename + return x.Relid } - return "" -} - -type CreateDomainStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Domainname []*Node `protobuf:"bytes,1,rep,name=domainname,proto3" json:"domainname,omitempty"` - TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - CollClause *CollateClause `protobuf:"bytes,3,opt,name=coll_clause,json=collClause,proto3" json:"coll_clause,omitempty"` - Constraints []*Node `protobuf:"bytes,4,rep,name=constraints,proto3" json:"constraints,omitempty"` + return 0 } -func (x *CreateDomainStmt) Reset() { - *x = CreateDomainStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[100] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *RTEPermissionInfo) GetInh() bool { + if x != nil { + return x.Inh } + return false } -func (x *CreateDomainStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateDomainStmt) ProtoMessage() {} - -func (x *CreateDomainStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[100] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *RTEPermissionInfo) GetRequiredPerms() int64 { + if x != nil { + return x.RequiredPerms } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateDomainStmt.ProtoReflect.Descriptor instead. -func (*CreateDomainStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{100} + return 0 } -func (x *CreateDomainStmt) GetDomainname() []*Node { +func (x *RTEPermissionInfo) GetCheckAsUser() uint32 { if x != nil { - return x.Domainname + return x.CheckAsUser } - return nil + return 0 } -func (x *CreateDomainStmt) GetTypeName() *TypeName { +func (x *RTEPermissionInfo) GetSelectedCols() []uint64 { if x != nil { - return x.TypeName + return x.SelectedCols } return nil } -func (x *CreateDomainStmt) GetCollClause() *CollateClause { +func (x *RTEPermissionInfo) GetInsertedCols() []uint64 { if x != nil { - return x.CollClause + return x.InsertedCols } return nil } -func (x *CreateDomainStmt) GetConstraints() []*Node { +func (x *RTEPermissionInfo) GetUpdatedCols() []uint64 { if x != nil { - return x.Constraints + return x.UpdatedCols } return nil } -type CreatedbStmt struct { +type RangeTblFunction struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + Funcexpr *Node `protobuf:"bytes,1,opt,name=funcexpr,proto3" json:"funcexpr,omitempty"` + Funccolcount int32 `protobuf:"varint,2,opt,name=funccolcount,proto3" json:"funccolcount,omitempty"` + Funccolnames []*Node `protobuf:"bytes,3,rep,name=funccolnames,proto3" json:"funccolnames,omitempty"` + Funccoltypes []*Node `protobuf:"bytes,4,rep,name=funccoltypes,proto3" json:"funccoltypes,omitempty"` + Funccoltypmods []*Node `protobuf:"bytes,5,rep,name=funccoltypmods,proto3" json:"funccoltypmods,omitempty"` + Funccolcollations []*Node `protobuf:"bytes,6,rep,name=funccolcollations,proto3" json:"funccolcollations,omitempty"` + Funcparams []uint64 `protobuf:"varint,7,rep,packed,name=funcparams,proto3" json:"funcparams,omitempty"` } -func (x *CreatedbStmt) Reset() { - *x = CreatedbStmt{} +func (x *RangeTblFunction) Reset() { + *x = RangeTblFunction{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[101] + mi := &file_pg_query_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreatedbStmt) String() string { +func (x *RangeTblFunction) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreatedbStmt) ProtoMessage() {} +func (*RangeTblFunction) ProtoMessage() {} -func (x *CreatedbStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[101] +func (x *RangeTblFunction) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17619,100 +18117,72 @@ func (x *CreatedbStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreatedbStmt.ProtoReflect.Descriptor instead. -func (*CreatedbStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{101} +// Deprecated: Use RangeTblFunction.ProtoReflect.Descriptor instead. +func (*RangeTblFunction) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{102} } -func (x *CreatedbStmt) GetDbname() string { +func (x *RangeTblFunction) GetFuncexpr() *Node { if x != nil { - return x.Dbname + return x.Funcexpr } - return "" + return nil } -func (x *CreatedbStmt) GetOptions() []*Node { +func (x *RangeTblFunction) GetFunccolcount() int32 { if x != nil { - return x.Options + return x.Funccolcount } - return nil -} - -type DropdbStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` - MissingOk bool `protobuf:"varint,2,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` - Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` + return 0 } -func (x *DropdbStmt) Reset() { - *x = DropdbStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[102] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *RangeTblFunction) GetFunccolnames() []*Node { + if x != nil { + return x.Funccolnames } + return nil } -func (x *DropdbStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DropdbStmt) ProtoMessage() {} - -func (x *DropdbStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[102] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *RangeTblFunction) GetFunccoltypes() []*Node { + if x != nil { + return x.Funccoltypes } - return mi.MessageOf(x) -} - -// Deprecated: Use DropdbStmt.ProtoReflect.Descriptor instead. -func (*DropdbStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{102} + return nil } -func (x *DropdbStmt) GetDbname() string { +func (x *RangeTblFunction) GetFunccoltypmods() []*Node { if x != nil { - return x.Dbname + return x.Funccoltypmods } - return "" + return nil } -func (x *DropdbStmt) GetMissingOk() bool { +func (x *RangeTblFunction) GetFunccolcollations() []*Node { if x != nil { - return x.MissingOk + return x.Funccolcollations } - return false + return nil } -func (x *DropdbStmt) GetOptions() []*Node { +func (x *RangeTblFunction) GetFuncparams() []uint64 { if x != nil { - return x.Options + return x.Funcparams } return nil } -type VacuumStmt struct { +type TableSampleClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Options []*Node `protobuf:"bytes,1,rep,name=options,proto3" json:"options,omitempty"` - Rels []*Node `protobuf:"bytes,2,rep,name=rels,proto3" json:"rels,omitempty"` - IsVacuumcmd bool `protobuf:"varint,3,opt,name=is_vacuumcmd,proto3" json:"is_vacuumcmd,omitempty"` + Tsmhandler uint32 `protobuf:"varint,1,opt,name=tsmhandler,proto3" json:"tsmhandler,omitempty"` + Args []*Node `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"` + Repeatable *Node `protobuf:"bytes,3,opt,name=repeatable,proto3" json:"repeatable,omitempty"` } -func (x *VacuumStmt) Reset() { - *x = VacuumStmt{} +func (x *TableSampleClause) Reset() { + *x = TableSampleClause{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -17720,13 +18190,13 @@ func (x *VacuumStmt) Reset() { } } -func (x *VacuumStmt) String() string { +func (x *TableSampleClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*VacuumStmt) ProtoMessage() {} +func (*TableSampleClause) ProtoMessage() {} -func (x *VacuumStmt) ProtoReflect() protoreflect.Message { +func (x *TableSampleClause) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -17738,43 +18208,46 @@ func (x *VacuumStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use VacuumStmt.ProtoReflect.Descriptor instead. -func (*VacuumStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use TableSampleClause.ProtoReflect.Descriptor instead. +func (*TableSampleClause) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{103} } -func (x *VacuumStmt) GetOptions() []*Node { +func (x *TableSampleClause) GetTsmhandler() uint32 { if x != nil { - return x.Options + return x.Tsmhandler } - return nil + return 0 } -func (x *VacuumStmt) GetRels() []*Node { +func (x *TableSampleClause) GetArgs() []*Node { if x != nil { - return x.Rels + return x.Args } return nil } -func (x *VacuumStmt) GetIsVacuumcmd() bool { +func (x *TableSampleClause) GetRepeatable() *Node { if x != nil { - return x.IsVacuumcmd + return x.Repeatable } - return false + return nil } -type ExplainStmt struct { +type WithCheckOption struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Query *Node `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + Kind WCOKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.WCOKind" json:"kind,omitempty"` + Relname string `protobuf:"bytes,2,opt,name=relname,proto3" json:"relname,omitempty"` + Polname string `protobuf:"bytes,3,opt,name=polname,proto3" json:"polname,omitempty"` + Qual *Node `protobuf:"bytes,4,opt,name=qual,proto3" json:"qual,omitempty"` + Cascaded bool `protobuf:"varint,5,opt,name=cascaded,proto3" json:"cascaded,omitempty"` } -func (x *ExplainStmt) Reset() { - *x = ExplainStmt{} +func (x *WithCheckOption) Reset() { + *x = WithCheckOption{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -17782,13 +18255,13 @@ func (x *ExplainStmt) Reset() { } } -func (x *ExplainStmt) String() string { +func (x *WithCheckOption) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ExplainStmt) ProtoMessage() {} +func (*WithCheckOption) ProtoMessage() {} -func (x *ExplainStmt) ProtoReflect() protoreflect.Message { +func (x *WithCheckOption) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -17800,39 +18273,60 @@ func (x *ExplainStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ExplainStmt.ProtoReflect.Descriptor instead. -func (*ExplainStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use WithCheckOption.ProtoReflect.Descriptor instead. +func (*WithCheckOption) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{104} } -func (x *ExplainStmt) GetQuery() *Node { +func (x *WithCheckOption) GetKind() WCOKind { if x != nil { - return x.Query + return x.Kind } - return nil + return WCOKind_WCOKIND_UNDEFINED } -func (x *ExplainStmt) GetOptions() []*Node { +func (x *WithCheckOption) GetRelname() string { if x != nil { - return x.Options + return x.Relname } - return nil + return "" } -type CreateTableAsStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Query *Node `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` - Into *IntoClause `protobuf:"bytes,2,opt,name=into,proto3" json:"into,omitempty"` - Objtype ObjectType `protobuf:"varint,3,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` - IsSelectInto bool `protobuf:"varint,4,opt,name=is_select_into,proto3" json:"is_select_into,omitempty"` - IfNotExists bool `protobuf:"varint,5,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` +func (x *WithCheckOption) GetPolname() string { + if x != nil { + return x.Polname + } + return "" } -func (x *CreateTableAsStmt) Reset() { - *x = CreateTableAsStmt{} +func (x *WithCheckOption) GetQual() *Node { + if x != nil { + return x.Qual + } + return nil +} + +func (x *WithCheckOption) GetCascaded() bool { + if x != nil { + return x.Cascaded + } + return false +} + +type SortGroupClause struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TleSortGroupRef uint32 `protobuf:"varint,1,opt,name=tle_sort_group_ref,json=tleSortGroupRef,proto3" json:"tle_sort_group_ref,omitempty"` + Eqop uint32 `protobuf:"varint,2,opt,name=eqop,proto3" json:"eqop,omitempty"` + Sortop uint32 `protobuf:"varint,3,opt,name=sortop,proto3" json:"sortop,omitempty"` + NullsFirst bool `protobuf:"varint,4,opt,name=nulls_first,proto3" json:"nulls_first,omitempty"` + Hashable bool `protobuf:"varint,5,opt,name=hashable,proto3" json:"hashable,omitempty"` +} + +func (x *SortGroupClause) Reset() { + *x = SortGroupClause{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -17840,13 +18334,13 @@ func (x *CreateTableAsStmt) Reset() { } } -func (x *CreateTableAsStmt) String() string { +func (x *SortGroupClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateTableAsStmt) ProtoMessage() {} +func (*SortGroupClause) ProtoMessage() {} -func (x *CreateTableAsStmt) ProtoReflect() protoreflect.Message { +func (x *SortGroupClause) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -17858,60 +18352,58 @@ func (x *CreateTableAsStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateTableAsStmt.ProtoReflect.Descriptor instead. -func (*CreateTableAsStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use SortGroupClause.ProtoReflect.Descriptor instead. +func (*SortGroupClause) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{105} } -func (x *CreateTableAsStmt) GetQuery() *Node { +func (x *SortGroupClause) GetTleSortGroupRef() uint32 { if x != nil { - return x.Query + return x.TleSortGroupRef } - return nil + return 0 } -func (x *CreateTableAsStmt) GetInto() *IntoClause { +func (x *SortGroupClause) GetEqop() uint32 { if x != nil { - return x.Into + return x.Eqop } - return nil + return 0 } -func (x *CreateTableAsStmt) GetObjtype() ObjectType { +func (x *SortGroupClause) GetSortop() uint32 { if x != nil { - return x.Objtype + return x.Sortop } - return ObjectType_OBJECT_TYPE_UNDEFINED + return 0 } -func (x *CreateTableAsStmt) GetIsSelectInto() bool { +func (x *SortGroupClause) GetNullsFirst() bool { if x != nil { - return x.IsSelectInto + return x.NullsFirst } return false } -func (x *CreateTableAsStmt) GetIfNotExists() bool { +func (x *SortGroupClause) GetHashable() bool { if x != nil { - return x.IfNotExists + return x.Hashable } return false } -type CreateSeqStmt struct { +type GroupingSet struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Sequence *RangeVar `protobuf:"bytes,1,opt,name=sequence,proto3" json:"sequence,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` - OwnerId uint32 `protobuf:"varint,3,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` - ForIdentity bool `protobuf:"varint,4,opt,name=for_identity,proto3" json:"for_identity,omitempty"` - IfNotExists bool `protobuf:"varint,5,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` + Kind GroupingSetKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.GroupingSetKind" json:"kind,omitempty"` + Content []*Node `protobuf:"bytes,2,rep,name=content,proto3" json:"content,omitempty"` + Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CreateSeqStmt) Reset() { - *x = CreateSeqStmt{} +func (x *GroupingSet) Reset() { + *x = GroupingSet{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -17919,13 +18411,13 @@ func (x *CreateSeqStmt) Reset() { } } -func (x *CreateSeqStmt) String() string { +func (x *GroupingSet) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateSeqStmt) ProtoMessage() {} +func (*GroupingSet) ProtoMessage() {} -func (x *CreateSeqStmt) ProtoReflect() protoreflect.Message { +func (x *GroupingSet) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -17937,59 +18429,56 @@ func (x *CreateSeqStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateSeqStmt.ProtoReflect.Descriptor instead. -func (*CreateSeqStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use GroupingSet.ProtoReflect.Descriptor instead. +func (*GroupingSet) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{106} } -func (x *CreateSeqStmt) GetSequence() *RangeVar { +func (x *GroupingSet) GetKind() GroupingSetKind { if x != nil { - return x.Sequence + return x.Kind } - return nil + return GroupingSetKind_GROUPING_SET_KIND_UNDEFINED } -func (x *CreateSeqStmt) GetOptions() []*Node { +func (x *GroupingSet) GetContent() []*Node { if x != nil { - return x.Options + return x.Content } return nil } -func (x *CreateSeqStmt) GetOwnerId() uint32 { +func (x *GroupingSet) GetLocation() int32 { if x != nil { - return x.OwnerId + return x.Location } return 0 } -func (x *CreateSeqStmt) GetForIdentity() bool { - if x != nil { - return x.ForIdentity - } - return false -} - -func (x *CreateSeqStmt) GetIfNotExists() bool { - if x != nil { - return x.IfNotExists - } - return false -} - -type AlterSeqStmt struct { +type WindowClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Sequence *RangeVar `protobuf:"bytes,1,opt,name=sequence,proto3" json:"sequence,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` - ForIdentity bool `protobuf:"varint,3,opt,name=for_identity,proto3" json:"for_identity,omitempty"` - MissingOk bool `protobuf:"varint,4,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Refname string `protobuf:"bytes,2,opt,name=refname,proto3" json:"refname,omitempty"` + PartitionClause []*Node `protobuf:"bytes,3,rep,name=partition_clause,json=partitionClause,proto3" json:"partition_clause,omitempty"` + OrderClause []*Node `protobuf:"bytes,4,rep,name=order_clause,json=orderClause,proto3" json:"order_clause,omitempty"` + FrameOptions int32 `protobuf:"varint,5,opt,name=frame_options,json=frameOptions,proto3" json:"frame_options,omitempty"` + StartOffset *Node `protobuf:"bytes,6,opt,name=start_offset,json=startOffset,proto3" json:"start_offset,omitempty"` + EndOffset *Node `protobuf:"bytes,7,opt,name=end_offset,json=endOffset,proto3" json:"end_offset,omitempty"` + RunCondition []*Node `protobuf:"bytes,8,rep,name=run_condition,json=runCondition,proto3" json:"run_condition,omitempty"` + StartInRangeFunc uint32 `protobuf:"varint,9,opt,name=start_in_range_func,json=startInRangeFunc,proto3" json:"start_in_range_func,omitempty"` + EndInRangeFunc uint32 `protobuf:"varint,10,opt,name=end_in_range_func,json=endInRangeFunc,proto3" json:"end_in_range_func,omitempty"` + InRangeColl uint32 `protobuf:"varint,11,opt,name=in_range_coll,json=inRangeColl,proto3" json:"in_range_coll,omitempty"` + InRangeAsc bool `protobuf:"varint,12,opt,name=in_range_asc,json=inRangeAsc,proto3" json:"in_range_asc,omitempty"` + InRangeNullsFirst bool `protobuf:"varint,13,opt,name=in_range_nulls_first,json=inRangeNullsFirst,proto3" json:"in_range_nulls_first,omitempty"` + Winref uint32 `protobuf:"varint,14,opt,name=winref,proto3" json:"winref,omitempty"` + CopiedOrder bool `protobuf:"varint,15,opt,name=copied_order,json=copiedOrder,proto3" json:"copied_order,omitempty"` } -func (x *AlterSeqStmt) Reset() { - *x = AlterSeqStmt{} +func (x *WindowClause) Reset() { + *x = WindowClause{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -17997,13 +18486,13 @@ func (x *AlterSeqStmt) Reset() { } } -func (x *AlterSeqStmt) String() string { +func (x *WindowClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterSeqStmt) ProtoMessage() {} +func (*WindowClause) ProtoMessage() {} -func (x *AlterSeqStmt) ProtoReflect() protoreflect.Message { +func (x *WindowClause) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -18015,135 +18504,144 @@ func (x *AlterSeqStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterSeqStmt.ProtoReflect.Descriptor instead. -func (*AlterSeqStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use WindowClause.ProtoReflect.Descriptor instead. +func (*WindowClause) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{107} } -func (x *AlterSeqStmt) GetSequence() *RangeVar { +func (x *WindowClause) GetName() string { if x != nil { - return x.Sequence + return x.Name } - return nil + return "" } -func (x *AlterSeqStmt) GetOptions() []*Node { +func (x *WindowClause) GetRefname() string { if x != nil { - return x.Options + return x.Refname } - return nil + return "" } -func (x *AlterSeqStmt) GetForIdentity() bool { +func (x *WindowClause) GetPartitionClause() []*Node { if x != nil { - return x.ForIdentity + return x.PartitionClause } - return false + return nil } -func (x *AlterSeqStmt) GetMissingOk() bool { +func (x *WindowClause) GetOrderClause() []*Node { if x != nil { - return x.MissingOk + return x.OrderClause } - return false + return nil } -type VariableSetStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Kind VariableSetKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.VariableSetKind" json:"kind,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Args []*Node `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` - IsLocal bool `protobuf:"varint,4,opt,name=is_local,proto3" json:"is_local,omitempty"` +func (x *WindowClause) GetFrameOptions() int32 { + if x != nil { + return x.FrameOptions + } + return 0 } -func (x *VariableSetStmt) Reset() { - *x = VariableSetStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[108] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *WindowClause) GetStartOffset() *Node { + if x != nil { + return x.StartOffset } + return nil } -func (x *VariableSetStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *WindowClause) GetEndOffset() *Node { + if x != nil { + return x.EndOffset + } + return nil } -func (*VariableSetStmt) ProtoMessage() {} - -func (x *VariableSetStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[108] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *WindowClause) GetRunCondition() []*Node { + if x != nil { + return x.RunCondition } - return mi.MessageOf(x) + return nil } -// Deprecated: Use VariableSetStmt.ProtoReflect.Descriptor instead. -func (*VariableSetStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{108} +func (x *WindowClause) GetStartInRangeFunc() uint32 { + if x != nil { + return x.StartInRangeFunc + } + return 0 } -func (x *VariableSetStmt) GetKind() VariableSetKind { +func (x *WindowClause) GetEndInRangeFunc() uint32 { if x != nil { - return x.Kind + return x.EndInRangeFunc } - return VariableSetKind_VARIABLE_SET_KIND_UNDEFINED + return 0 } -func (x *VariableSetStmt) GetName() string { +func (x *WindowClause) GetInRangeColl() uint32 { if x != nil { - return x.Name + return x.InRangeColl } - return "" + return 0 } -func (x *VariableSetStmt) GetArgs() []*Node { +func (x *WindowClause) GetInRangeAsc() bool { if x != nil { - return x.Args + return x.InRangeAsc } - return nil + return false } -func (x *VariableSetStmt) GetIsLocal() bool { +func (x *WindowClause) GetInRangeNullsFirst() bool { if x != nil { - return x.IsLocal + return x.InRangeNullsFirst } return false } -type VariableShowStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +func (x *WindowClause) GetWinref() uint32 { + if x != nil { + return x.Winref + } + return 0 } -func (x *VariableShowStmt) Reset() { - *x = VariableShowStmt{} +func (x *WindowClause) GetCopiedOrder() bool { + if x != nil { + return x.CopiedOrder + } + return false +} + +type RowMarkClause struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Rti uint32 `protobuf:"varint,1,opt,name=rti,proto3" json:"rti,omitempty"` + Strength LockClauseStrength `protobuf:"varint,2,opt,name=strength,proto3,enum=pg_query.LockClauseStrength" json:"strength,omitempty"` + WaitPolicy LockWaitPolicy `protobuf:"varint,3,opt,name=wait_policy,json=waitPolicy,proto3,enum=pg_query.LockWaitPolicy" json:"wait_policy,omitempty"` + PushedDown bool `protobuf:"varint,4,opt,name=pushed_down,json=pushedDown,proto3" json:"pushed_down,omitempty"` +} + +func (x *RowMarkClause) Reset() { + *x = RowMarkClause{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[109] + mi := &file_pg_query_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *VariableShowStmt) String() string { +func (x *RowMarkClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*VariableShowStmt) ProtoMessage() {} +func (*RowMarkClause) ProtoMessage() {} -func (x *VariableShowStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[109] +func (x *RowMarkClause) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18154,43 +18652,66 @@ func (x *VariableShowStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use VariableShowStmt.ProtoReflect.Descriptor instead. -func (*VariableShowStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{109} +// Deprecated: Use RowMarkClause.ProtoReflect.Descriptor instead. +func (*RowMarkClause) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{108} } -func (x *VariableShowStmt) GetName() string { +func (x *RowMarkClause) GetRti() uint32 { if x != nil { - return x.Name + return x.Rti } - return "" + return 0 } -type DiscardStmt struct { +func (x *RowMarkClause) GetStrength() LockClauseStrength { + if x != nil { + return x.Strength + } + return LockClauseStrength_LOCK_CLAUSE_STRENGTH_UNDEFINED +} + +func (x *RowMarkClause) GetWaitPolicy() LockWaitPolicy { + if x != nil { + return x.WaitPolicy + } + return LockWaitPolicy_LOCK_WAIT_POLICY_UNDEFINED +} + +func (x *RowMarkClause) GetPushedDown() bool { + if x != nil { + return x.PushedDown + } + return false +} + +type WithClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Target DiscardMode `protobuf:"varint,1,opt,name=target,proto3,enum=pg_query.DiscardMode" json:"target,omitempty"` + Ctes []*Node `protobuf:"bytes,1,rep,name=ctes,proto3" json:"ctes,omitempty"` + Recursive bool `protobuf:"varint,2,opt,name=recursive,proto3" json:"recursive,omitempty"` + Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` } -func (x *DiscardStmt) Reset() { - *x = DiscardStmt{} +func (x *WithClause) Reset() { + *x = WithClause{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[110] + mi := &file_pg_query_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *DiscardStmt) String() string { +func (x *WithClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DiscardStmt) ProtoMessage() {} +func (*WithClause) ProtoMessage() {} -func (x *DiscardStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[110] +func (x *WithClause) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18201,57 +18722,60 @@ func (x *DiscardStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DiscardStmt.ProtoReflect.Descriptor instead. -func (*DiscardStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{110} +// Deprecated: Use WithClause.ProtoReflect.Descriptor instead. +func (*WithClause) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{109} } -func (x *DiscardStmt) GetTarget() DiscardMode { +func (x *WithClause) GetCtes() []*Node { if x != nil { - return x.Target + return x.Ctes } - return DiscardMode_DISCARD_MODE_UNDEFINED + return nil } -type CreateTrigStmt struct { +func (x *WithClause) GetRecursive() bool { + if x != nil { + return x.Recursive + } + return false +} + +func (x *WithClause) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type InferClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Replace bool `protobuf:"varint,1,opt,name=replace,proto3" json:"replace,omitempty"` - Isconstraint bool `protobuf:"varint,2,opt,name=isconstraint,proto3" json:"isconstraint,omitempty"` - Trigname string `protobuf:"bytes,3,opt,name=trigname,proto3" json:"trigname,omitempty"` - Relation *RangeVar `protobuf:"bytes,4,opt,name=relation,proto3" json:"relation,omitempty"` - Funcname []*Node `protobuf:"bytes,5,rep,name=funcname,proto3" json:"funcname,omitempty"` - Args []*Node `protobuf:"bytes,6,rep,name=args,proto3" json:"args,omitempty"` - Row bool `protobuf:"varint,7,opt,name=row,proto3" json:"row,omitempty"` - Timing int32 `protobuf:"varint,8,opt,name=timing,proto3" json:"timing,omitempty"` - Events int32 `protobuf:"varint,9,opt,name=events,proto3" json:"events,omitempty"` - Columns []*Node `protobuf:"bytes,10,rep,name=columns,proto3" json:"columns,omitempty"` - WhenClause *Node `protobuf:"bytes,11,opt,name=when_clause,json=whenClause,proto3" json:"when_clause,omitempty"` - TransitionRels []*Node `protobuf:"bytes,12,rep,name=transition_rels,json=transitionRels,proto3" json:"transition_rels,omitempty"` - Deferrable bool `protobuf:"varint,13,opt,name=deferrable,proto3" json:"deferrable,omitempty"` - Initdeferred bool `protobuf:"varint,14,opt,name=initdeferred,proto3" json:"initdeferred,omitempty"` - Constrrel *RangeVar `protobuf:"bytes,15,opt,name=constrrel,proto3" json:"constrrel,omitempty"` + IndexElems []*Node `protobuf:"bytes,1,rep,name=index_elems,json=indexElems,proto3" json:"index_elems,omitempty"` + WhereClause *Node `protobuf:"bytes,2,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` + Conname string `protobuf:"bytes,3,opt,name=conname,proto3" json:"conname,omitempty"` + Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CreateTrigStmt) Reset() { - *x = CreateTrigStmt{} +func (x *InferClause) Reset() { + *x = InferClause{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[111] + mi := &file_pg_query_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateTrigStmt) String() string { +func (x *InferClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateTrigStmt) ProtoMessage() {} +func (*InferClause) ProtoMessage() {} -func (x *CreateTrigStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[111] +func (x *InferClause) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18262,131 +18786,131 @@ func (x *CreateTrigStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateTrigStmt.ProtoReflect.Descriptor instead. -func (*CreateTrigStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{111} +// Deprecated: Use InferClause.ProtoReflect.Descriptor instead. +func (*InferClause) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{110} } -func (x *CreateTrigStmt) GetReplace() bool { +func (x *InferClause) GetIndexElems() []*Node { if x != nil { - return x.Replace + return x.IndexElems } - return false + return nil } -func (x *CreateTrigStmt) GetIsconstraint() bool { +func (x *InferClause) GetWhereClause() *Node { if x != nil { - return x.Isconstraint + return x.WhereClause } - return false + return nil } -func (x *CreateTrigStmt) GetTrigname() string { +func (x *InferClause) GetConname() string { if x != nil { - return x.Trigname + return x.Conname } return "" } -func (x *CreateTrigStmt) GetRelation() *RangeVar { +func (x *InferClause) GetLocation() int32 { if x != nil { - return x.Relation + return x.Location } - return nil + return 0 } -func (x *CreateTrigStmt) GetFuncname() []*Node { - if x != nil { - return x.Funcname - } - return nil +type OnConflictClause struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action OnConflictAction `protobuf:"varint,1,opt,name=action,proto3,enum=pg_query.OnConflictAction" json:"action,omitempty"` + Infer *InferClause `protobuf:"bytes,2,opt,name=infer,proto3" json:"infer,omitempty"` + TargetList []*Node `protobuf:"bytes,3,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` + WhereClause *Node `protobuf:"bytes,4,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CreateTrigStmt) GetArgs() []*Node { - if x != nil { - return x.Args +func (x *OnConflictClause) Reset() { + *x = OnConflictClause{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[111] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *CreateTrigStmt) GetRow() bool { - if x != nil { - return x.Row - } - return false +func (x *OnConflictClause) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *CreateTrigStmt) GetTiming() int32 { - if x != nil { - return x.Timing +func (*OnConflictClause) ProtoMessage() {} + +func (x *OnConflictClause) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[111] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return 0 + return mi.MessageOf(x) } -func (x *CreateTrigStmt) GetEvents() int32 { +// Deprecated: Use OnConflictClause.ProtoReflect.Descriptor instead. +func (*OnConflictClause) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{111} +} + +func (x *OnConflictClause) GetAction() OnConflictAction { if x != nil { - return x.Events + return x.Action } - return 0 + return OnConflictAction_ON_CONFLICT_ACTION_UNDEFINED } -func (x *CreateTrigStmt) GetColumns() []*Node { +func (x *OnConflictClause) GetInfer() *InferClause { if x != nil { - return x.Columns + return x.Infer } return nil } -func (x *CreateTrigStmt) GetWhenClause() *Node { +func (x *OnConflictClause) GetTargetList() []*Node { if x != nil { - return x.WhenClause + return x.TargetList } return nil } -func (x *CreateTrigStmt) GetTransitionRels() []*Node { +func (x *OnConflictClause) GetWhereClause() *Node { if x != nil { - return x.TransitionRels + return x.WhereClause } return nil } -func (x *CreateTrigStmt) GetDeferrable() bool { +func (x *OnConflictClause) GetLocation() int32 { if x != nil { - return x.Deferrable + return x.Location } - return false + return 0 } -func (x *CreateTrigStmt) GetInitdeferred() bool { - if x != nil { - return x.Initdeferred - } - return false -} - -func (x *CreateTrigStmt) GetConstrrel() *RangeVar { - if x != nil { - return x.Constrrel - } - return nil -} - -type CreatePLangStmt struct { +type CTESearchClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Replace bool `protobuf:"varint,1,opt,name=replace,proto3" json:"replace,omitempty"` - Plname string `protobuf:"bytes,2,opt,name=plname,proto3" json:"plname,omitempty"` - Plhandler []*Node `protobuf:"bytes,3,rep,name=plhandler,proto3" json:"plhandler,omitempty"` - Plinline []*Node `protobuf:"bytes,4,rep,name=plinline,proto3" json:"plinline,omitempty"` - Plvalidator []*Node `protobuf:"bytes,5,rep,name=plvalidator,proto3" json:"plvalidator,omitempty"` - Pltrusted bool `protobuf:"varint,6,opt,name=pltrusted,proto3" json:"pltrusted,omitempty"` + SearchColList []*Node `protobuf:"bytes,1,rep,name=search_col_list,proto3" json:"search_col_list,omitempty"` + SearchBreadthFirst bool `protobuf:"varint,2,opt,name=search_breadth_first,proto3" json:"search_breadth_first,omitempty"` + SearchSeqColumn string `protobuf:"bytes,3,opt,name=search_seq_column,proto3" json:"search_seq_column,omitempty"` + Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CreatePLangStmt) Reset() { - *x = CreatePLangStmt{} +func (x *CTESearchClause) Reset() { + *x = CTESearchClause{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -18394,13 +18918,13 @@ func (x *CreatePLangStmt) Reset() { } } -func (x *CreatePLangStmt) String() string { +func (x *CTESearchClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreatePLangStmt) ProtoMessage() {} +func (*CTESearchClause) ProtoMessage() {} -func (x *CreatePLangStmt) ProtoReflect() protoreflect.Message { +func (x *CTESearchClause) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -18412,65 +18936,58 @@ func (x *CreatePLangStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreatePLangStmt.ProtoReflect.Descriptor instead. -func (*CreatePLangStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use CTESearchClause.ProtoReflect.Descriptor instead. +func (*CTESearchClause) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{112} } -func (x *CreatePLangStmt) GetReplace() bool { - if x != nil { - return x.Replace - } - return false -} - -func (x *CreatePLangStmt) GetPlname() string { - if x != nil { - return x.Plname - } - return "" -} - -func (x *CreatePLangStmt) GetPlhandler() []*Node { +func (x *CTESearchClause) GetSearchColList() []*Node { if x != nil { - return x.Plhandler + return x.SearchColList } return nil } -func (x *CreatePLangStmt) GetPlinline() []*Node { +func (x *CTESearchClause) GetSearchBreadthFirst() bool { if x != nil { - return x.Plinline + return x.SearchBreadthFirst } - return nil + return false } -func (x *CreatePLangStmt) GetPlvalidator() []*Node { +func (x *CTESearchClause) GetSearchSeqColumn() string { if x != nil { - return x.Plvalidator + return x.SearchSeqColumn } - return nil + return "" } -func (x *CreatePLangStmt) GetPltrusted() bool { +func (x *CTESearchClause) GetLocation() int32 { if x != nil { - return x.Pltrusted + return x.Location } - return false + return 0 } -type CreateRoleStmt struct { +type CTECycleClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - StmtType RoleStmtType `protobuf:"varint,1,opt,name=stmt_type,proto3,enum=pg_query.RoleStmtType" json:"stmt_type,omitempty"` - Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"` - Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` + CycleColList []*Node `protobuf:"bytes,1,rep,name=cycle_col_list,proto3" json:"cycle_col_list,omitempty"` + CycleMarkColumn string `protobuf:"bytes,2,opt,name=cycle_mark_column,proto3" json:"cycle_mark_column,omitempty"` + CycleMarkValue *Node `protobuf:"bytes,3,opt,name=cycle_mark_value,proto3" json:"cycle_mark_value,omitempty"` + CycleMarkDefault *Node `protobuf:"bytes,4,opt,name=cycle_mark_default,proto3" json:"cycle_mark_default,omitempty"` + CyclePathColumn string `protobuf:"bytes,5,opt,name=cycle_path_column,proto3" json:"cycle_path_column,omitempty"` + Location int32 `protobuf:"varint,6,opt,name=location,proto3" json:"location,omitempty"` + CycleMarkType uint32 `protobuf:"varint,7,opt,name=cycle_mark_type,proto3" json:"cycle_mark_type,omitempty"` + CycleMarkTypmod int32 `protobuf:"varint,8,opt,name=cycle_mark_typmod,proto3" json:"cycle_mark_typmod,omitempty"` + CycleMarkCollation uint32 `protobuf:"varint,9,opt,name=cycle_mark_collation,proto3" json:"cycle_mark_collation,omitempty"` + CycleMarkNeop uint32 `protobuf:"varint,10,opt,name=cycle_mark_neop,proto3" json:"cycle_mark_neop,omitempty"` } -func (x *CreateRoleStmt) Reset() { - *x = CreateRoleStmt{} +func (x *CTECycleClause) Reset() { + *x = CTECycleClause{} if protoimpl.UnsafeEnabled { mi := &file_pg_query_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -18478,13 +18995,13 @@ func (x *CreateRoleStmt) Reset() { } } -func (x *CreateRoleStmt) String() string { +func (x *CTECycleClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateRoleStmt) ProtoMessage() {} +func (*CTECycleClause) ProtoMessage() {} -func (x *CreateRoleStmt) ProtoReflect() protoreflect.Message { +func (x *CTECycleClause) ProtoReflect() protoreflect.Message { mi := &file_pg_query_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -18496,121 +19013,118 @@ func (x *CreateRoleStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateRoleStmt.ProtoReflect.Descriptor instead. -func (*CreateRoleStmt) Descriptor() ([]byte, []int) { +// Deprecated: Use CTECycleClause.ProtoReflect.Descriptor instead. +func (*CTECycleClause) Descriptor() ([]byte, []int) { return file_pg_query_proto_rawDescGZIP(), []int{113} } -func (x *CreateRoleStmt) GetStmtType() RoleStmtType { +func (x *CTECycleClause) GetCycleColList() []*Node { if x != nil { - return x.StmtType + return x.CycleColList } - return RoleStmtType_ROLE_STMT_TYPE_UNDEFINED + return nil } -func (x *CreateRoleStmt) GetRole() string { +func (x *CTECycleClause) GetCycleMarkColumn() string { if x != nil { - return x.Role + return x.CycleMarkColumn } return "" } -func (x *CreateRoleStmt) GetOptions() []*Node { +func (x *CTECycleClause) GetCycleMarkValue() *Node { if x != nil { - return x.Options + return x.CycleMarkValue } return nil } -type AlterRoleStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Role *RoleSpec `protobuf:"bytes,1,opt,name=role,proto3" json:"role,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` - Action int32 `protobuf:"varint,3,opt,name=action,proto3" json:"action,omitempty"` -} - -func (x *AlterRoleStmt) Reset() { - *x = AlterRoleStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[114] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *CTECycleClause) GetCycleMarkDefault() *Node { + if x != nil { + return x.CycleMarkDefault } + return nil } -func (x *AlterRoleStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *CTECycleClause) GetCyclePathColumn() string { + if x != nil { + return x.CyclePathColumn + } + return "" } -func (*AlterRoleStmt) ProtoMessage() {} - -func (x *AlterRoleStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[114] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *CTECycleClause) GetLocation() int32 { + if x != nil { + return x.Location } - return mi.MessageOf(x) + return 0 } -// Deprecated: Use AlterRoleStmt.ProtoReflect.Descriptor instead. -func (*AlterRoleStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{114} +func (x *CTECycleClause) GetCycleMarkType() uint32 { + if x != nil { + return x.CycleMarkType + } + return 0 } -func (x *AlterRoleStmt) GetRole() *RoleSpec { +func (x *CTECycleClause) GetCycleMarkTypmod() int32 { if x != nil { - return x.Role + return x.CycleMarkTypmod } - return nil + return 0 } -func (x *AlterRoleStmt) GetOptions() []*Node { +func (x *CTECycleClause) GetCycleMarkCollation() uint32 { if x != nil { - return x.Options + return x.CycleMarkCollation } - return nil + return 0 } -func (x *AlterRoleStmt) GetAction() int32 { +func (x *CTECycleClause) GetCycleMarkNeop() uint32 { if x != nil { - return x.Action + return x.CycleMarkNeop } return 0 } -type DropRoleStmt struct { +type CommonTableExpr struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Roles []*Node `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"` - MissingOk bool `protobuf:"varint,2,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + Ctename string `protobuf:"bytes,1,opt,name=ctename,proto3" json:"ctename,omitempty"` + Aliascolnames []*Node `protobuf:"bytes,2,rep,name=aliascolnames,proto3" json:"aliascolnames,omitempty"` + Ctematerialized CTEMaterialize `protobuf:"varint,3,opt,name=ctematerialized,proto3,enum=pg_query.CTEMaterialize" json:"ctematerialized,omitempty"` + Ctequery *Node `protobuf:"bytes,4,opt,name=ctequery,proto3" json:"ctequery,omitempty"` + SearchClause *CTESearchClause `protobuf:"bytes,5,opt,name=search_clause,proto3" json:"search_clause,omitempty"` + CycleClause *CTECycleClause `protobuf:"bytes,6,opt,name=cycle_clause,proto3" json:"cycle_clause,omitempty"` + Location int32 `protobuf:"varint,7,opt,name=location,proto3" json:"location,omitempty"` + Cterecursive bool `protobuf:"varint,8,opt,name=cterecursive,proto3" json:"cterecursive,omitempty"` + Cterefcount int32 `protobuf:"varint,9,opt,name=cterefcount,proto3" json:"cterefcount,omitempty"` + Ctecolnames []*Node `protobuf:"bytes,10,rep,name=ctecolnames,proto3" json:"ctecolnames,omitempty"` + Ctecoltypes []*Node `protobuf:"bytes,11,rep,name=ctecoltypes,proto3" json:"ctecoltypes,omitempty"` + Ctecoltypmods []*Node `protobuf:"bytes,12,rep,name=ctecoltypmods,proto3" json:"ctecoltypmods,omitempty"` + Ctecolcollations []*Node `protobuf:"bytes,13,rep,name=ctecolcollations,proto3" json:"ctecolcollations,omitempty"` } -func (x *DropRoleStmt) Reset() { - *x = DropRoleStmt{} +func (x *CommonTableExpr) Reset() { + *x = CommonTableExpr{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[115] + mi := &file_pg_query_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *DropRoleStmt) String() string { +func (x *CommonTableExpr) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DropRoleStmt) ProtoMessage() {} +func (*CommonTableExpr) ProtoMessage() {} -func (x *DropRoleStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[115] +func (x *CommonTableExpr) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18621,171 +19135,132 @@ func (x *DropRoleStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DropRoleStmt.ProtoReflect.Descriptor instead. -func (*DropRoleStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{115} +// Deprecated: Use CommonTableExpr.ProtoReflect.Descriptor instead. +func (*CommonTableExpr) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{114} } -func (x *DropRoleStmt) GetRoles() []*Node { +func (x *CommonTableExpr) GetCtename() string { if x != nil { - return x.Roles + return x.Ctename } - return nil + return "" } -func (x *DropRoleStmt) GetMissingOk() bool { +func (x *CommonTableExpr) GetAliascolnames() []*Node { if x != nil { - return x.MissingOk + return x.Aliascolnames } - return false -} - -type LockStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Relations []*Node `protobuf:"bytes,1,rep,name=relations,proto3" json:"relations,omitempty"` - Mode int32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"` - Nowait bool `protobuf:"varint,3,opt,name=nowait,proto3" json:"nowait,omitempty"` + return nil } -func (x *LockStmt) Reset() { - *x = LockStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[116] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *CommonTableExpr) GetCtematerialized() CTEMaterialize { + if x != nil { + return x.Ctematerialized } + return CTEMaterialize_CTEMATERIALIZE_UNDEFINED } -func (x *LockStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*LockStmt) ProtoMessage() {} - -func (x *LockStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[116] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *CommonTableExpr) GetCtequery() *Node { + if x != nil { + return x.Ctequery } - return mi.MessageOf(x) + return nil } -// Deprecated: Use LockStmt.ProtoReflect.Descriptor instead. -func (*LockStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{116} +func (x *CommonTableExpr) GetSearchClause() *CTESearchClause { + if x != nil { + return x.SearchClause + } + return nil } -func (x *LockStmt) GetRelations() []*Node { +func (x *CommonTableExpr) GetCycleClause() *CTECycleClause { if x != nil { - return x.Relations + return x.CycleClause } return nil } -func (x *LockStmt) GetMode() int32 { +func (x *CommonTableExpr) GetLocation() int32 { if x != nil { - return x.Mode + return x.Location } return 0 } -func (x *LockStmt) GetNowait() bool { +func (x *CommonTableExpr) GetCterecursive() bool { if x != nil { - return x.Nowait + return x.Cterecursive } return false } -type ConstraintsSetStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Constraints []*Node `protobuf:"bytes,1,rep,name=constraints,proto3" json:"constraints,omitempty"` - Deferred bool `protobuf:"varint,2,opt,name=deferred,proto3" json:"deferred,omitempty"` -} - -func (x *ConstraintsSetStmt) Reset() { - *x = ConstraintsSetStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[117] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *CommonTableExpr) GetCterefcount() int32 { + if x != nil { + return x.Cterefcount } + return 0 } -func (x *ConstraintsSetStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ConstraintsSetStmt) ProtoMessage() {} - -func (x *ConstraintsSetStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[117] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *CommonTableExpr) GetCtecolnames() []*Node { + if x != nil { + return x.Ctecolnames } - return mi.MessageOf(x) + return nil } -// Deprecated: Use ConstraintsSetStmt.ProtoReflect.Descriptor instead. -func (*ConstraintsSetStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{117} +func (x *CommonTableExpr) GetCtecoltypes() []*Node { + if x != nil { + return x.Ctecoltypes + } + return nil } -func (x *ConstraintsSetStmt) GetConstraints() []*Node { +func (x *CommonTableExpr) GetCtecoltypmods() []*Node { if x != nil { - return x.Constraints + return x.Ctecoltypmods } return nil } -func (x *ConstraintsSetStmt) GetDeferred() bool { +func (x *CommonTableExpr) GetCtecolcollations() []*Node { if x != nil { - return x.Deferred + return x.Ctecolcollations } - return false + return nil } -type ReindexStmt struct { +type MergeWhenClause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Kind ReindexObjectType `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.ReindexObjectType" json:"kind,omitempty"` - Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` - Params []*Node `protobuf:"bytes,4,rep,name=params,proto3" json:"params,omitempty"` + Matched bool `protobuf:"varint,1,opt,name=matched,proto3" json:"matched,omitempty"` + CommandType CmdType `protobuf:"varint,2,opt,name=command_type,json=commandType,proto3,enum=pg_query.CmdType" json:"command_type,omitempty"` + Override OverridingKind `protobuf:"varint,3,opt,name=override,proto3,enum=pg_query.OverridingKind" json:"override,omitempty"` + Condition *Node `protobuf:"bytes,4,opt,name=condition,proto3" json:"condition,omitempty"` + TargetList []*Node `protobuf:"bytes,5,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` + Values []*Node `protobuf:"bytes,6,rep,name=values,proto3" json:"values,omitempty"` } -func (x *ReindexStmt) Reset() { - *x = ReindexStmt{} +func (x *MergeWhenClause) Reset() { + *x = MergeWhenClause{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[118] + mi := &file_pg_query_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ReindexStmt) String() string { +func (x *MergeWhenClause) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReindexStmt) ProtoMessage() {} +func (*MergeWhenClause) ProtoMessage() {} -func (x *ReindexStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[118] +func (x *MergeWhenClause) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18796,105 +19271,83 @@ func (x *ReindexStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ReindexStmt.ProtoReflect.Descriptor instead. -func (*ReindexStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{118} +// Deprecated: Use MergeWhenClause.ProtoReflect.Descriptor instead. +func (*MergeWhenClause) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{115} } -func (x *ReindexStmt) GetKind() ReindexObjectType { +func (x *MergeWhenClause) GetMatched() bool { if x != nil { - return x.Kind + return x.Matched } - return ReindexObjectType_REINDEX_OBJECT_TYPE_UNDEFINED + return false } -func (x *ReindexStmt) GetRelation() *RangeVar { +func (x *MergeWhenClause) GetCommandType() CmdType { if x != nil { - return x.Relation + return x.CommandType } - return nil + return CmdType_CMD_TYPE_UNDEFINED } -func (x *ReindexStmt) GetName() string { +func (x *MergeWhenClause) GetOverride() OverridingKind { if x != nil { - return x.Name + return x.Override } - return "" + return OverridingKind_OVERRIDING_KIND_UNDEFINED } -func (x *ReindexStmt) GetParams() []*Node { +func (x *MergeWhenClause) GetCondition() *Node { if x != nil { - return x.Params + return x.Condition } return nil } -type CheckPointStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CheckPointStmt) Reset() { - *x = CheckPointStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[119] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *MergeWhenClause) GetTargetList() []*Node { + if x != nil { + return x.TargetList } + return nil } -func (x *CheckPointStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CheckPointStmt) ProtoMessage() {} - -func (x *CheckPointStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[119] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *MergeWhenClause) GetValues() []*Node { + if x != nil { + return x.Values } - return mi.MessageOf(x) -} - -// Deprecated: Use CheckPointStmt.ProtoReflect.Descriptor instead. -func (*CheckPointStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{119} + return nil } -type CreateSchemaStmt struct { +type MergeAction struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Schemaname string `protobuf:"bytes,1,opt,name=schemaname,proto3" json:"schemaname,omitempty"` - Authrole *RoleSpec `protobuf:"bytes,2,opt,name=authrole,proto3" json:"authrole,omitempty"` - SchemaElts []*Node `protobuf:"bytes,3,rep,name=schema_elts,json=schemaElts,proto3" json:"schema_elts,omitempty"` - IfNotExists bool `protobuf:"varint,4,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` + Matched bool `protobuf:"varint,1,opt,name=matched,proto3" json:"matched,omitempty"` + CommandType CmdType `protobuf:"varint,2,opt,name=command_type,json=commandType,proto3,enum=pg_query.CmdType" json:"command_type,omitempty"` + Override OverridingKind `protobuf:"varint,3,opt,name=override,proto3,enum=pg_query.OverridingKind" json:"override,omitempty"` + Qual *Node `protobuf:"bytes,4,opt,name=qual,proto3" json:"qual,omitempty"` + TargetList []*Node `protobuf:"bytes,5,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` + UpdateColnos []*Node `protobuf:"bytes,6,rep,name=update_colnos,json=updateColnos,proto3" json:"update_colnos,omitempty"` } -func (x *CreateSchemaStmt) Reset() { - *x = CreateSchemaStmt{} +func (x *MergeAction) Reset() { + *x = MergeAction{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[120] + mi := &file_pg_query_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateSchemaStmt) String() string { +func (x *MergeAction) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateSchemaStmt) ProtoMessage() {} +func (*MergeAction) ProtoMessage() {} -func (x *CreateSchemaStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[120] +func (x *MergeAction) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18905,65 +19358,80 @@ func (x *CreateSchemaStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateSchemaStmt.ProtoReflect.Descriptor instead. -func (*CreateSchemaStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{120} +// Deprecated: Use MergeAction.ProtoReflect.Descriptor instead. +func (*MergeAction) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{116} } -func (x *CreateSchemaStmt) GetSchemaname() string { +func (x *MergeAction) GetMatched() bool { if x != nil { - return x.Schemaname + return x.Matched } - return "" + return false } -func (x *CreateSchemaStmt) GetAuthrole() *RoleSpec { +func (x *MergeAction) GetCommandType() CmdType { if x != nil { - return x.Authrole + return x.CommandType + } + return CmdType_CMD_TYPE_UNDEFINED +} + +func (x *MergeAction) GetOverride() OverridingKind { + if x != nil { + return x.Override + } + return OverridingKind_OVERRIDING_KIND_UNDEFINED +} + +func (x *MergeAction) GetQual() *Node { + if x != nil { + return x.Qual } return nil } -func (x *CreateSchemaStmt) GetSchemaElts() []*Node { +func (x *MergeAction) GetTargetList() []*Node { if x != nil { - return x.SchemaElts + return x.TargetList } return nil } -func (x *CreateSchemaStmt) GetIfNotExists() bool { +func (x *MergeAction) GetUpdateColnos() []*Node { if x != nil { - return x.IfNotExists + return x.UpdateColnos } - return false + return nil } -type AlterDatabaseStmt struct { +type TriggerTransition struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + IsNew bool `protobuf:"varint,2,opt,name=is_new,json=isNew,proto3" json:"is_new,omitempty"` + IsTable bool `protobuf:"varint,3,opt,name=is_table,json=isTable,proto3" json:"is_table,omitempty"` } -func (x *AlterDatabaseStmt) Reset() { - *x = AlterDatabaseStmt{} +func (x *TriggerTransition) Reset() { + *x = TriggerTransition{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[121] + mi := &file_pg_query_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterDatabaseStmt) String() string { +func (x *TriggerTransition) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterDatabaseStmt) ProtoMessage() {} +func (*TriggerTransition) ProtoMessage() {} -func (x *AlterDatabaseStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[121] +func (x *TriggerTransition) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18974,50 +19442,58 @@ func (x *AlterDatabaseStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterDatabaseStmt.ProtoReflect.Descriptor instead. -func (*AlterDatabaseStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{121} +// Deprecated: Use TriggerTransition.ProtoReflect.Descriptor instead. +func (*TriggerTransition) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{117} } -func (x *AlterDatabaseStmt) GetDbname() string { +func (x *TriggerTransition) GetName() string { if x != nil { - return x.Dbname + return x.Name } return "" } -func (x *AlterDatabaseStmt) GetOptions() []*Node { +func (x *TriggerTransition) GetIsNew() bool { if x != nil { - return x.Options + return x.IsNew } - return nil + return false } -type AlterDatabaseRefreshCollStmt struct { +func (x *TriggerTransition) GetIsTable() bool { + if x != nil { + return x.IsTable + } + return false +} + +type JsonOutput struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` + TypeName *TypeName `protobuf:"bytes,1,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + Returning *JsonReturning `protobuf:"bytes,2,opt,name=returning,proto3" json:"returning,omitempty"` } -func (x *AlterDatabaseRefreshCollStmt) Reset() { - *x = AlterDatabaseRefreshCollStmt{} +func (x *JsonOutput) Reset() { + *x = JsonOutput{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[122] + mi := &file_pg_query_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterDatabaseRefreshCollStmt) String() string { +func (x *JsonOutput) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterDatabaseRefreshCollStmt) ProtoMessage() {} +func (*JsonOutput) ProtoMessage() {} -func (x *AlterDatabaseRefreshCollStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[122] +func (x *JsonOutput) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19028,44 +19504,51 @@ func (x *AlterDatabaseRefreshCollStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterDatabaseRefreshCollStmt.ProtoReflect.Descriptor instead. -func (*AlterDatabaseRefreshCollStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{122} +// Deprecated: Use JsonOutput.ProtoReflect.Descriptor instead. +func (*JsonOutput) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{118} } -func (x *AlterDatabaseRefreshCollStmt) GetDbname() string { +func (x *JsonOutput) GetTypeName() *TypeName { if x != nil { - return x.Dbname + return x.TypeName } - return "" + return nil } -type AlterDatabaseSetStmt struct { +func (x *JsonOutput) GetReturning() *JsonReturning { + if x != nil { + return x.Returning + } + return nil +} + +type JsonKeyValue struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` - Setstmt *VariableSetStmt `protobuf:"bytes,2,opt,name=setstmt,proto3" json:"setstmt,omitempty"` + Key *Node `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + Value *JsonValueExpr `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` } -func (x *AlterDatabaseSetStmt) Reset() { - *x = AlterDatabaseSetStmt{} +func (x *JsonKeyValue) Reset() { + *x = JsonKeyValue{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[123] + mi := &file_pg_query_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterDatabaseSetStmt) String() string { +func (x *JsonKeyValue) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterDatabaseSetStmt) ProtoMessage() {} +func (*JsonKeyValue) ProtoMessage() {} -func (x *AlterDatabaseSetStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[123] +func (x *JsonKeyValue) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19076,52 +19559,54 @@ func (x *AlterDatabaseSetStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterDatabaseSetStmt.ProtoReflect.Descriptor instead. -func (*AlterDatabaseSetStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{123} +// Deprecated: Use JsonKeyValue.ProtoReflect.Descriptor instead. +func (*JsonKeyValue) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{119} } -func (x *AlterDatabaseSetStmt) GetDbname() string { +func (x *JsonKeyValue) GetKey() *Node { if x != nil { - return x.Dbname + return x.Key } - return "" + return nil } -func (x *AlterDatabaseSetStmt) GetSetstmt() *VariableSetStmt { +func (x *JsonKeyValue) GetValue() *JsonValueExpr { if x != nil { - return x.Setstmt + return x.Value } return nil } -type AlterRoleSetStmt struct { +type JsonObjectConstructor struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Role *RoleSpec `protobuf:"bytes,1,opt,name=role,proto3" json:"role,omitempty"` - Database string `protobuf:"bytes,2,opt,name=database,proto3" json:"database,omitempty"` - Setstmt *VariableSetStmt `protobuf:"bytes,3,opt,name=setstmt,proto3" json:"setstmt,omitempty"` + Exprs []*Node `protobuf:"bytes,1,rep,name=exprs,proto3" json:"exprs,omitempty"` + Output *JsonOutput `protobuf:"bytes,2,opt,name=output,proto3" json:"output,omitempty"` + AbsentOnNull bool `protobuf:"varint,3,opt,name=absent_on_null,proto3" json:"absent_on_null,omitempty"` + Unique bool `protobuf:"varint,4,opt,name=unique,proto3" json:"unique,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *AlterRoleSetStmt) Reset() { - *x = AlterRoleSetStmt{} +func (x *JsonObjectConstructor) Reset() { + *x = JsonObjectConstructor{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[124] + mi := &file_pg_query_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterRoleSetStmt) String() string { +func (x *JsonObjectConstructor) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterRoleSetStmt) ProtoMessage() {} +func (*JsonObjectConstructor) ProtoMessage() {} -func (x *AlterRoleSetStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[124] +func (x *JsonObjectConstructor) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19132,61 +19617,74 @@ func (x *AlterRoleSetStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterRoleSetStmt.ProtoReflect.Descriptor instead. -func (*AlterRoleSetStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{124} +// Deprecated: Use JsonObjectConstructor.ProtoReflect.Descriptor instead. +func (*JsonObjectConstructor) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{120} } -func (x *AlterRoleSetStmt) GetRole() *RoleSpec { +func (x *JsonObjectConstructor) GetExprs() []*Node { if x != nil { - return x.Role + return x.Exprs } return nil } -func (x *AlterRoleSetStmt) GetDatabase() string { +func (x *JsonObjectConstructor) GetOutput() *JsonOutput { if x != nil { - return x.Database + return x.Output } - return "" + return nil } -func (x *AlterRoleSetStmt) GetSetstmt() *VariableSetStmt { +func (x *JsonObjectConstructor) GetAbsentOnNull() bool { if x != nil { - return x.Setstmt + return x.AbsentOnNull } - return nil + return false } -type CreateConversionStmt struct { +func (x *JsonObjectConstructor) GetUnique() bool { + if x != nil { + return x.Unique + } + return false +} + +func (x *JsonObjectConstructor) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type JsonArrayConstructor struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ConversionName []*Node `protobuf:"bytes,1,rep,name=conversion_name,proto3" json:"conversion_name,omitempty"` - ForEncodingName string `protobuf:"bytes,2,opt,name=for_encoding_name,proto3" json:"for_encoding_name,omitempty"` - ToEncodingName string `protobuf:"bytes,3,opt,name=to_encoding_name,proto3" json:"to_encoding_name,omitempty"` - FuncName []*Node `protobuf:"bytes,4,rep,name=func_name,proto3" json:"func_name,omitempty"` - Def bool `protobuf:"varint,5,opt,name=def,proto3" json:"def,omitempty"` + Exprs []*Node `protobuf:"bytes,1,rep,name=exprs,proto3" json:"exprs,omitempty"` + Output *JsonOutput `protobuf:"bytes,2,opt,name=output,proto3" json:"output,omitempty"` + AbsentOnNull bool `protobuf:"varint,3,opt,name=absent_on_null,proto3" json:"absent_on_null,omitempty"` + Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CreateConversionStmt) Reset() { - *x = CreateConversionStmt{} +func (x *JsonArrayConstructor) Reset() { + *x = JsonArrayConstructor{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[125] + mi := &file_pg_query_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateConversionStmt) String() string { +func (x *JsonArrayConstructor) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateConversionStmt) ProtoMessage() {} +func (*JsonArrayConstructor) ProtoMessage() {} -func (x *CreateConversionStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[125] +func (x *JsonArrayConstructor) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19197,75 +19695,68 @@ func (x *CreateConversionStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateConversionStmt.ProtoReflect.Descriptor instead. -func (*CreateConversionStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{125} +// Deprecated: Use JsonArrayConstructor.ProtoReflect.Descriptor instead. +func (*JsonArrayConstructor) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{121} } -func (x *CreateConversionStmt) GetConversionName() []*Node { +func (x *JsonArrayConstructor) GetExprs() []*Node { if x != nil { - return x.ConversionName + return x.Exprs } return nil } -func (x *CreateConversionStmt) GetForEncodingName() string { - if x != nil { - return x.ForEncodingName - } - return "" -} - -func (x *CreateConversionStmt) GetToEncodingName() string { +func (x *JsonArrayConstructor) GetOutput() *JsonOutput { if x != nil { - return x.ToEncodingName + return x.Output } - return "" + return nil } -func (x *CreateConversionStmt) GetFuncName() []*Node { +func (x *JsonArrayConstructor) GetAbsentOnNull() bool { if x != nil { - return x.FuncName + return x.AbsentOnNull } - return nil + return false } -func (x *CreateConversionStmt) GetDef() bool { +func (x *JsonArrayConstructor) GetLocation() int32 { if x != nil { - return x.Def + return x.Location } - return false + return 0 } -type CreateCastStmt struct { +type JsonArrayQueryConstructor struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Sourcetype *TypeName `protobuf:"bytes,1,opt,name=sourcetype,proto3" json:"sourcetype,omitempty"` - Targettype *TypeName `protobuf:"bytes,2,opt,name=targettype,proto3" json:"targettype,omitempty"` - Func *ObjectWithArgs `protobuf:"bytes,3,opt,name=func,proto3" json:"func,omitempty"` - Context CoercionContext `protobuf:"varint,4,opt,name=context,proto3,enum=pg_query.CoercionContext" json:"context,omitempty"` - Inout bool `protobuf:"varint,5,opt,name=inout,proto3" json:"inout,omitempty"` + Query *Node `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` + Output *JsonOutput `protobuf:"bytes,2,opt,name=output,proto3" json:"output,omitempty"` + Format *JsonFormat `protobuf:"bytes,3,opt,name=format,proto3" json:"format,omitempty"` + AbsentOnNull bool `protobuf:"varint,4,opt,name=absent_on_null,proto3" json:"absent_on_null,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CreateCastStmt) Reset() { - *x = CreateCastStmt{} +func (x *JsonArrayQueryConstructor) Reset() { + *x = JsonArrayQueryConstructor{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[126] + mi := &file_pg_query_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateCastStmt) String() string { +func (x *JsonArrayQueryConstructor) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateCastStmt) ProtoMessage() {} +func (*JsonArrayQueryConstructor) ProtoMessage() {} -func (x *CreateCastStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[126] +func (x *JsonArrayQueryConstructor) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19276,76 +19767,75 @@ func (x *CreateCastStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateCastStmt.ProtoReflect.Descriptor instead. -func (*CreateCastStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{126} +// Deprecated: Use JsonArrayQueryConstructor.ProtoReflect.Descriptor instead. +func (*JsonArrayQueryConstructor) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{122} } -func (x *CreateCastStmt) GetSourcetype() *TypeName { +func (x *JsonArrayQueryConstructor) GetQuery() *Node { if x != nil { - return x.Sourcetype + return x.Query } return nil } -func (x *CreateCastStmt) GetTargettype() *TypeName { +func (x *JsonArrayQueryConstructor) GetOutput() *JsonOutput { if x != nil { - return x.Targettype + return x.Output } return nil } -func (x *CreateCastStmt) GetFunc() *ObjectWithArgs { +func (x *JsonArrayQueryConstructor) GetFormat() *JsonFormat { if x != nil { - return x.Func + return x.Format } return nil } -func (x *CreateCastStmt) GetContext() CoercionContext { +func (x *JsonArrayQueryConstructor) GetAbsentOnNull() bool { if x != nil { - return x.Context + return x.AbsentOnNull } - return CoercionContext_COERCION_CONTEXT_UNDEFINED + return false } -func (x *CreateCastStmt) GetInout() bool { +func (x *JsonArrayQueryConstructor) GetLocation() int32 { if x != nil { - return x.Inout + return x.Location } - return false + return 0 } -type CreateOpClassStmt struct { +type JsonAggConstructor struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Opclassname []*Node `protobuf:"bytes,1,rep,name=opclassname,proto3" json:"opclassname,omitempty"` - Opfamilyname []*Node `protobuf:"bytes,2,rep,name=opfamilyname,proto3" json:"opfamilyname,omitempty"` - Amname string `protobuf:"bytes,3,opt,name=amname,proto3" json:"amname,omitempty"` - Datatype *TypeName `protobuf:"bytes,4,opt,name=datatype,proto3" json:"datatype,omitempty"` - Items []*Node `protobuf:"bytes,5,rep,name=items,proto3" json:"items,omitempty"` - IsDefault bool `protobuf:"varint,6,opt,name=is_default,json=isDefault,proto3" json:"is_default,omitempty"` + Output *JsonOutput `protobuf:"bytes,1,opt,name=output,proto3" json:"output,omitempty"` + AggFilter *Node `protobuf:"bytes,2,opt,name=agg_filter,proto3" json:"agg_filter,omitempty"` + AggOrder []*Node `protobuf:"bytes,3,rep,name=agg_order,proto3" json:"agg_order,omitempty"` + Over *WindowDef `protobuf:"bytes,4,opt,name=over,proto3" json:"over,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CreateOpClassStmt) Reset() { - *x = CreateOpClassStmt{} +func (x *JsonAggConstructor) Reset() { + *x = JsonAggConstructor{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[127] + mi := &file_pg_query_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateOpClassStmt) String() string { +func (x *JsonAggConstructor) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateOpClassStmt) ProtoMessage() {} +func (*JsonAggConstructor) ProtoMessage() {} -func (x *CreateOpClassStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[127] +func (x *JsonAggConstructor) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19356,79 +19846,74 @@ func (x *CreateOpClassStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateOpClassStmt.ProtoReflect.Descriptor instead. -func (*CreateOpClassStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{127} +// Deprecated: Use JsonAggConstructor.ProtoReflect.Descriptor instead. +func (*JsonAggConstructor) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{123} } -func (x *CreateOpClassStmt) GetOpclassname() []*Node { +func (x *JsonAggConstructor) GetOutput() *JsonOutput { if x != nil { - return x.Opclassname + return x.Output } return nil } -func (x *CreateOpClassStmt) GetOpfamilyname() []*Node { +func (x *JsonAggConstructor) GetAggFilter() *Node { if x != nil { - return x.Opfamilyname + return x.AggFilter } return nil } -func (x *CreateOpClassStmt) GetAmname() string { - if x != nil { - return x.Amname - } - return "" -} - -func (x *CreateOpClassStmt) GetDatatype() *TypeName { +func (x *JsonAggConstructor) GetAggOrder() []*Node { if x != nil { - return x.Datatype + return x.AggOrder } return nil } -func (x *CreateOpClassStmt) GetItems() []*Node { +func (x *JsonAggConstructor) GetOver() *WindowDef { if x != nil { - return x.Items + return x.Over } return nil } -func (x *CreateOpClassStmt) GetIsDefault() bool { +func (x *JsonAggConstructor) GetLocation() int32 { if x != nil { - return x.IsDefault + return x.Location } - return false + return 0 } -type CreateOpFamilyStmt struct { +type JsonObjectAgg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Opfamilyname []*Node `protobuf:"bytes,1,rep,name=opfamilyname,proto3" json:"opfamilyname,omitempty"` - Amname string `protobuf:"bytes,2,opt,name=amname,proto3" json:"amname,omitempty"` + Constructor *JsonAggConstructor `protobuf:"bytes,1,opt,name=constructor,proto3" json:"constructor,omitempty"` + Arg *JsonKeyValue `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` + AbsentOnNull bool `protobuf:"varint,3,opt,name=absent_on_null,proto3" json:"absent_on_null,omitempty"` + Unique bool `protobuf:"varint,4,opt,name=unique,proto3" json:"unique,omitempty"` } -func (x *CreateOpFamilyStmt) Reset() { - *x = CreateOpFamilyStmt{} +func (x *JsonObjectAgg) Reset() { + *x = JsonObjectAgg{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[128] + mi := &file_pg_query_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateOpFamilyStmt) String() string { +func (x *JsonObjectAgg) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateOpFamilyStmt) ProtoMessage() {} +func (*JsonObjectAgg) ProtoMessage() {} -func (x *CreateOpFamilyStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[128] +func (x *JsonObjectAgg) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19439,53 +19924,66 @@ func (x *CreateOpFamilyStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateOpFamilyStmt.ProtoReflect.Descriptor instead. -func (*CreateOpFamilyStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{128} +// Deprecated: Use JsonObjectAgg.ProtoReflect.Descriptor instead. +func (*JsonObjectAgg) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{124} } -func (x *CreateOpFamilyStmt) GetOpfamilyname() []*Node { +func (x *JsonObjectAgg) GetConstructor() *JsonAggConstructor { if x != nil { - return x.Opfamilyname + return x.Constructor } return nil } -func (x *CreateOpFamilyStmt) GetAmname() string { +func (x *JsonObjectAgg) GetArg() *JsonKeyValue { if x != nil { - return x.Amname + return x.Arg } - return "" + return nil } -type AlterOpFamilyStmt struct { +func (x *JsonObjectAgg) GetAbsentOnNull() bool { + if x != nil { + return x.AbsentOnNull + } + return false +} + +func (x *JsonObjectAgg) GetUnique() bool { + if x != nil { + return x.Unique + } + return false +} + +type JsonArrayAgg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Opfamilyname []*Node `protobuf:"bytes,1,rep,name=opfamilyname,proto3" json:"opfamilyname,omitempty"` - Amname string `protobuf:"bytes,2,opt,name=amname,proto3" json:"amname,omitempty"` - IsDrop bool `protobuf:"varint,3,opt,name=is_drop,json=isDrop,proto3" json:"is_drop,omitempty"` - Items []*Node `protobuf:"bytes,4,rep,name=items,proto3" json:"items,omitempty"` + Constructor *JsonAggConstructor `protobuf:"bytes,1,opt,name=constructor,proto3" json:"constructor,omitempty"` + Arg *JsonValueExpr `protobuf:"bytes,2,opt,name=arg,proto3" json:"arg,omitempty"` + AbsentOnNull bool `protobuf:"varint,3,opt,name=absent_on_null,proto3" json:"absent_on_null,omitempty"` } -func (x *AlterOpFamilyStmt) Reset() { - *x = AlterOpFamilyStmt{} +func (x *JsonArrayAgg) Reset() { + *x = JsonArrayAgg{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[129] + mi := &file_pg_query_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterOpFamilyStmt) String() string { +func (x *JsonArrayAgg) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterOpFamilyStmt) ProtoMessage() {} +func (*JsonArrayAgg) ProtoMessage() {} -func (x *AlterOpFamilyStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[129] +func (x *JsonArrayAgg) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19496,66 +19994,59 @@ func (x *AlterOpFamilyStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterOpFamilyStmt.ProtoReflect.Descriptor instead. -func (*AlterOpFamilyStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{129} +// Deprecated: Use JsonArrayAgg.ProtoReflect.Descriptor instead. +func (*JsonArrayAgg) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{125} } -func (x *AlterOpFamilyStmt) GetOpfamilyname() []*Node { +func (x *JsonArrayAgg) GetConstructor() *JsonAggConstructor { if x != nil { - return x.Opfamilyname + return x.Constructor } return nil } -func (x *AlterOpFamilyStmt) GetAmname() string { +func (x *JsonArrayAgg) GetArg() *JsonValueExpr { if x != nil { - return x.Amname + return x.Arg } - return "" + return nil } -func (x *AlterOpFamilyStmt) GetIsDrop() bool { +func (x *JsonArrayAgg) GetAbsentOnNull() bool { if x != nil { - return x.IsDrop + return x.AbsentOnNull } return false } -func (x *AlterOpFamilyStmt) GetItems() []*Node { - if x != nil { - return x.Items - } - return nil -} - -type PrepareStmt struct { +type RawStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Argtypes []*Node `protobuf:"bytes,2,rep,name=argtypes,proto3" json:"argtypes,omitempty"` - Query *Node `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"` + Stmt *Node `protobuf:"bytes,1,opt,name=stmt,proto3" json:"stmt,omitempty"` + StmtLocation int32 `protobuf:"varint,2,opt,name=stmt_location,proto3" json:"stmt_location,omitempty"` + StmtLen int32 `protobuf:"varint,3,opt,name=stmt_len,proto3" json:"stmt_len,omitempty"` } -func (x *PrepareStmt) Reset() { - *x = PrepareStmt{} +func (x *RawStmt) Reset() { + *x = RawStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[130] + mi := &file_pg_query_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *PrepareStmt) String() string { +func (x *RawStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PrepareStmt) ProtoMessage() {} +func (*RawStmt) ProtoMessage() {} -func (x *PrepareStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[130] +func (x *RawStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19566,58 +20057,63 @@ func (x *PrepareStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PrepareStmt.ProtoReflect.Descriptor instead. -func (*PrepareStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{130} +// Deprecated: Use RawStmt.ProtoReflect.Descriptor instead. +func (*RawStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{126} } -func (x *PrepareStmt) GetName() string { +func (x *RawStmt) GetStmt() *Node { if x != nil { - return x.Name + return x.Stmt } - return "" + return nil } -func (x *PrepareStmt) GetArgtypes() []*Node { +func (x *RawStmt) GetStmtLocation() int32 { if x != nil { - return x.Argtypes + return x.StmtLocation } - return nil + return 0 } -func (x *PrepareStmt) GetQuery() *Node { +func (x *RawStmt) GetStmtLen() int32 { if x != nil { - return x.Query + return x.StmtLen } - return nil + return 0 } -type ExecuteStmt struct { +type InsertStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Params []*Node `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty"` + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + Cols []*Node `protobuf:"bytes,2,rep,name=cols,proto3" json:"cols,omitempty"` + SelectStmt *Node `protobuf:"bytes,3,opt,name=select_stmt,json=selectStmt,proto3" json:"select_stmt,omitempty"` + OnConflictClause *OnConflictClause `protobuf:"bytes,4,opt,name=on_conflict_clause,json=onConflictClause,proto3" json:"on_conflict_clause,omitempty"` + ReturningList []*Node `protobuf:"bytes,5,rep,name=returning_list,json=returningList,proto3" json:"returning_list,omitempty"` + WithClause *WithClause `protobuf:"bytes,6,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` + Override OverridingKind `protobuf:"varint,7,opt,name=override,proto3,enum=pg_query.OverridingKind" json:"override,omitempty"` } -func (x *ExecuteStmt) Reset() { - *x = ExecuteStmt{} +func (x *InsertStmt) Reset() { + *x = InsertStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[131] + mi := &file_pg_query_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ExecuteStmt) String() string { +func (x *InsertStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ExecuteStmt) ProtoMessage() {} +func (*InsertStmt) ProtoMessage() {} -func (x *ExecuteStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[131] +func (x *InsertStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19628,99 +20124,89 @@ func (x *ExecuteStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ExecuteStmt.ProtoReflect.Descriptor instead. -func (*ExecuteStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{131} +// Deprecated: Use InsertStmt.ProtoReflect.Descriptor instead. +func (*InsertStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{127} } -func (x *ExecuteStmt) GetName() string { +func (x *InsertStmt) GetRelation() *RangeVar { if x != nil { - return x.Name + return x.Relation } - return "" + return nil } -func (x *ExecuteStmt) GetParams() []*Node { +func (x *InsertStmt) GetCols() []*Node { if x != nil { - return x.Params + return x.Cols } return nil } -type DeallocateStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` -} - -func (x *DeallocateStmt) Reset() { - *x = DeallocateStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[132] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *InsertStmt) GetSelectStmt() *Node { + if x != nil { + return x.SelectStmt } + return nil } -func (x *DeallocateStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *InsertStmt) GetOnConflictClause() *OnConflictClause { + if x != nil { + return x.OnConflictClause + } + return nil } -func (*DeallocateStmt) ProtoMessage() {} - -func (x *DeallocateStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[132] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *InsertStmt) GetReturningList() []*Node { + if x != nil { + return x.ReturningList } - return mi.MessageOf(x) + return nil } -// Deprecated: Use DeallocateStmt.ProtoReflect.Descriptor instead. -func (*DeallocateStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{132} +func (x *InsertStmt) GetWithClause() *WithClause { + if x != nil { + return x.WithClause + } + return nil } -func (x *DeallocateStmt) GetName() string { +func (x *InsertStmt) GetOverride() OverridingKind { if x != nil { - return x.Name + return x.Override } - return "" + return OverridingKind_OVERRIDING_KIND_UNDEFINED } -type DeclareCursorStmt struct { +type DeleteStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Portalname string `protobuf:"bytes,1,opt,name=portalname,proto3" json:"portalname,omitempty"` - Options int32 `protobuf:"varint,2,opt,name=options,proto3" json:"options,omitempty"` - Query *Node `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"` + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + UsingClause []*Node `protobuf:"bytes,2,rep,name=using_clause,json=usingClause,proto3" json:"using_clause,omitempty"` + WhereClause *Node `protobuf:"bytes,3,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` + ReturningList []*Node `protobuf:"bytes,4,rep,name=returning_list,json=returningList,proto3" json:"returning_list,omitempty"` + WithClause *WithClause `protobuf:"bytes,5,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` } -func (x *DeclareCursorStmt) Reset() { - *x = DeclareCursorStmt{} +func (x *DeleteStmt) Reset() { + *x = DeleteStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[133] + mi := &file_pg_query_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *DeclareCursorStmt) String() string { +func (x *DeleteStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DeclareCursorStmt) ProtoMessage() {} +func (*DeleteStmt) ProtoMessage() {} -func (x *DeclareCursorStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[133] +func (x *DeleteStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19731,60 +20217,76 @@ func (x *DeclareCursorStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DeclareCursorStmt.ProtoReflect.Descriptor instead. -func (*DeclareCursorStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{133} +// Deprecated: Use DeleteStmt.ProtoReflect.Descriptor instead. +func (*DeleteStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{128} } -func (x *DeclareCursorStmt) GetPortalname() string { +func (x *DeleteStmt) GetRelation() *RangeVar { if x != nil { - return x.Portalname + return x.Relation } - return "" + return nil } -func (x *DeclareCursorStmt) GetOptions() int32 { +func (x *DeleteStmt) GetUsingClause() []*Node { if x != nil { - return x.Options + return x.UsingClause } - return 0 + return nil } -func (x *DeclareCursorStmt) GetQuery() *Node { +func (x *DeleteStmt) GetWhereClause() *Node { if x != nil { - return x.Query + return x.WhereClause } return nil } -type CreateTableSpaceStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Tablespacename string `protobuf:"bytes,1,opt,name=tablespacename,proto3" json:"tablespacename,omitempty"` - Owner *RoleSpec `protobuf:"bytes,2,opt,name=owner,proto3" json:"owner,omitempty"` - Location string `protobuf:"bytes,3,opt,name=location,proto3" json:"location,omitempty"` - Options []*Node `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"` +func (x *DeleteStmt) GetReturningList() []*Node { + if x != nil { + return x.ReturningList + } + return nil } -func (x *CreateTableSpaceStmt) Reset() { - *x = CreateTableSpaceStmt{} +func (x *DeleteStmt) GetWithClause() *WithClause { + if x != nil { + return x.WithClause + } + return nil +} + +type UpdateStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + TargetList []*Node `protobuf:"bytes,2,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` + WhereClause *Node `protobuf:"bytes,3,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` + FromClause []*Node `protobuf:"bytes,4,rep,name=from_clause,json=fromClause,proto3" json:"from_clause,omitempty"` + ReturningList []*Node `protobuf:"bytes,5,rep,name=returning_list,json=returningList,proto3" json:"returning_list,omitempty"` + WithClause *WithClause `protobuf:"bytes,6,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` +} + +func (x *UpdateStmt) Reset() { + *x = UpdateStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[134] + mi := &file_pg_query_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateTableSpaceStmt) String() string { +func (x *UpdateStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateTableSpaceStmt) ProtoMessage() {} +func (*UpdateStmt) ProtoMessage() {} -func (x *CreateTableSpaceStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[134] +func (x *UpdateStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19795,123 +20297,82 @@ func (x *CreateTableSpaceStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateTableSpaceStmt.ProtoReflect.Descriptor instead. -func (*CreateTableSpaceStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{134} +// Deprecated: Use UpdateStmt.ProtoReflect.Descriptor instead. +func (*UpdateStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{129} } -func (x *CreateTableSpaceStmt) GetTablespacename() string { +func (x *UpdateStmt) GetRelation() *RangeVar { if x != nil { - return x.Tablespacename + return x.Relation } - return "" + return nil } -func (x *CreateTableSpaceStmt) GetOwner() *RoleSpec { +func (x *UpdateStmt) GetTargetList() []*Node { if x != nil { - return x.Owner + return x.TargetList } return nil } -func (x *CreateTableSpaceStmt) GetLocation() string { +func (x *UpdateStmt) GetWhereClause() *Node { if x != nil { - return x.Location + return x.WhereClause } - return "" + return nil } -func (x *CreateTableSpaceStmt) GetOptions() []*Node { +func (x *UpdateStmt) GetFromClause() []*Node { if x != nil { - return x.Options + return x.FromClause } return nil } -type DropTableSpaceStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Tablespacename string `protobuf:"bytes,1,opt,name=tablespacename,proto3" json:"tablespacename,omitempty"` - MissingOk bool `protobuf:"varint,2,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` -} - -func (x *DropTableSpaceStmt) Reset() { - *x = DropTableSpaceStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[135] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DropTableSpaceStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DropTableSpaceStmt) ProtoMessage() {} - -func (x *DropTableSpaceStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[135] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DropTableSpaceStmt.ProtoReflect.Descriptor instead. -func (*DropTableSpaceStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{135} -} - -func (x *DropTableSpaceStmt) GetTablespacename() string { +func (x *UpdateStmt) GetReturningList() []*Node { if x != nil { - return x.Tablespacename + return x.ReturningList } - return "" + return nil } -func (x *DropTableSpaceStmt) GetMissingOk() bool { +func (x *UpdateStmt) GetWithClause() *WithClause { if x != nil { - return x.MissingOk + return x.WithClause } - return false + return nil } -type AlterObjectDependsStmt struct { +type MergeStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ObjectType ObjectType `protobuf:"varint,1,opt,name=object_type,json=objectType,proto3,enum=pg_query.ObjectType" json:"object_type,omitempty"` - Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` - Object *Node `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` - Extname *String `protobuf:"bytes,4,opt,name=extname,proto3" json:"extname,omitempty"` - Remove bool `protobuf:"varint,5,opt,name=remove,proto3" json:"remove,omitempty"` + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + SourceRelation *Node `protobuf:"bytes,2,opt,name=source_relation,json=sourceRelation,proto3" json:"source_relation,omitempty"` + JoinCondition *Node `protobuf:"bytes,3,opt,name=join_condition,json=joinCondition,proto3" json:"join_condition,omitempty"` + MergeWhenClauses []*Node `protobuf:"bytes,4,rep,name=merge_when_clauses,json=mergeWhenClauses,proto3" json:"merge_when_clauses,omitempty"` + WithClause *WithClause `protobuf:"bytes,5,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` } -func (x *AlterObjectDependsStmt) Reset() { - *x = AlterObjectDependsStmt{} +func (x *MergeStmt) Reset() { + *x = MergeStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[136] + mi := &file_pg_query_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterObjectDependsStmt) String() string { +func (x *MergeStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterObjectDependsStmt) ProtoMessage() {} +func (*MergeStmt) ProtoMessage() {} -func (x *AlterObjectDependsStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[136] +func (x *MergeStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19922,75 +20383,90 @@ func (x *AlterObjectDependsStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterObjectDependsStmt.ProtoReflect.Descriptor instead. -func (*AlterObjectDependsStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{136} +// Deprecated: Use MergeStmt.ProtoReflect.Descriptor instead. +func (*MergeStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{130} } -func (x *AlterObjectDependsStmt) GetObjectType() ObjectType { +func (x *MergeStmt) GetRelation() *RangeVar { if x != nil { - return x.ObjectType + return x.Relation } - return ObjectType_OBJECT_TYPE_UNDEFINED + return nil } -func (x *AlterObjectDependsStmt) GetRelation() *RangeVar { +func (x *MergeStmt) GetSourceRelation() *Node { if x != nil { - return x.Relation + return x.SourceRelation } return nil } -func (x *AlterObjectDependsStmt) GetObject() *Node { +func (x *MergeStmt) GetJoinCondition() *Node { if x != nil { - return x.Object + return x.JoinCondition } return nil } -func (x *AlterObjectDependsStmt) GetExtname() *String { +func (x *MergeStmt) GetMergeWhenClauses() []*Node { if x != nil { - return x.Extname + return x.MergeWhenClauses } return nil } -func (x *AlterObjectDependsStmt) GetRemove() bool { +func (x *MergeStmt) GetWithClause() *WithClause { if x != nil { - return x.Remove + return x.WithClause } - return false + return nil } -type AlterObjectSchemaStmt struct { +type SelectStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ObjectType ObjectType `protobuf:"varint,1,opt,name=object_type,json=objectType,proto3,enum=pg_query.ObjectType" json:"object_type,omitempty"` - Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` - Object *Node `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` - Newschema string `protobuf:"bytes,4,opt,name=newschema,proto3" json:"newschema,omitempty"` - MissingOk bool `protobuf:"varint,5,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + DistinctClause []*Node `protobuf:"bytes,1,rep,name=distinct_clause,json=distinctClause,proto3" json:"distinct_clause,omitempty"` + IntoClause *IntoClause `protobuf:"bytes,2,opt,name=into_clause,json=intoClause,proto3" json:"into_clause,omitempty"` + TargetList []*Node `protobuf:"bytes,3,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` + FromClause []*Node `protobuf:"bytes,4,rep,name=from_clause,json=fromClause,proto3" json:"from_clause,omitempty"` + WhereClause *Node `protobuf:"bytes,5,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` + GroupClause []*Node `protobuf:"bytes,6,rep,name=group_clause,json=groupClause,proto3" json:"group_clause,omitempty"` + GroupDistinct bool `protobuf:"varint,7,opt,name=group_distinct,json=groupDistinct,proto3" json:"group_distinct,omitempty"` + HavingClause *Node `protobuf:"bytes,8,opt,name=having_clause,json=havingClause,proto3" json:"having_clause,omitempty"` + WindowClause []*Node `protobuf:"bytes,9,rep,name=window_clause,json=windowClause,proto3" json:"window_clause,omitempty"` + ValuesLists []*Node `protobuf:"bytes,10,rep,name=values_lists,json=valuesLists,proto3" json:"values_lists,omitempty"` + SortClause []*Node `protobuf:"bytes,11,rep,name=sort_clause,json=sortClause,proto3" json:"sort_clause,omitempty"` + LimitOffset *Node `protobuf:"bytes,12,opt,name=limit_offset,json=limitOffset,proto3" json:"limit_offset,omitempty"` + LimitCount *Node `protobuf:"bytes,13,opt,name=limit_count,json=limitCount,proto3" json:"limit_count,omitempty"` + LimitOption LimitOption `protobuf:"varint,14,opt,name=limit_option,json=limitOption,proto3,enum=pg_query.LimitOption" json:"limit_option,omitempty"` + LockingClause []*Node `protobuf:"bytes,15,rep,name=locking_clause,json=lockingClause,proto3" json:"locking_clause,omitempty"` + WithClause *WithClause `protobuf:"bytes,16,opt,name=with_clause,json=withClause,proto3" json:"with_clause,omitempty"` + Op SetOperation `protobuf:"varint,17,opt,name=op,proto3,enum=pg_query.SetOperation" json:"op,omitempty"` + All bool `protobuf:"varint,18,opt,name=all,proto3" json:"all,omitempty"` + Larg *SelectStmt `protobuf:"bytes,19,opt,name=larg,proto3" json:"larg,omitempty"` + Rarg *SelectStmt `protobuf:"bytes,20,opt,name=rarg,proto3" json:"rarg,omitempty"` } -func (x *AlterObjectSchemaStmt) Reset() { - *x = AlterObjectSchemaStmt{} +func (x *SelectStmt) Reset() { + *x = SelectStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[137] + mi := &file_pg_query_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterObjectSchemaStmt) String() string { +func (x *SelectStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterObjectSchemaStmt) ProtoMessage() {} +func (*SelectStmt) ProtoMessage() {} -func (x *AlterObjectSchemaStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[137] +func (x *SelectStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20001,198 +20477,183 @@ func (x *AlterObjectSchemaStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterObjectSchemaStmt.ProtoReflect.Descriptor instead. -func (*AlterObjectSchemaStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{137} +// Deprecated: Use SelectStmt.ProtoReflect.Descriptor instead. +func (*SelectStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{131} } -func (x *AlterObjectSchemaStmt) GetObjectType() ObjectType { +func (x *SelectStmt) GetDistinctClause() []*Node { if x != nil { - return x.ObjectType + return x.DistinctClause } - return ObjectType_OBJECT_TYPE_UNDEFINED + return nil } -func (x *AlterObjectSchemaStmt) GetRelation() *RangeVar { +func (x *SelectStmt) GetIntoClause() *IntoClause { if x != nil { - return x.Relation + return x.IntoClause } return nil } -func (x *AlterObjectSchemaStmt) GetObject() *Node { +func (x *SelectStmt) GetTargetList() []*Node { if x != nil { - return x.Object + return x.TargetList } return nil } -func (x *AlterObjectSchemaStmt) GetNewschema() string { +func (x *SelectStmt) GetFromClause() []*Node { if x != nil { - return x.Newschema + return x.FromClause } - return "" + return nil } -func (x *AlterObjectSchemaStmt) GetMissingOk() bool { +func (x *SelectStmt) GetWhereClause() *Node { if x != nil { - return x.MissingOk + return x.WhereClause } - return false + return nil } -type AlterOwnerStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ObjectType ObjectType `protobuf:"varint,1,opt,name=object_type,json=objectType,proto3,enum=pg_query.ObjectType" json:"object_type,omitempty"` - Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` - Object *Node `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` - Newowner *RoleSpec `protobuf:"bytes,4,opt,name=newowner,proto3" json:"newowner,omitempty"` -} - -func (x *AlterOwnerStmt) Reset() { - *x = AlterOwnerStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[138] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *SelectStmt) GetGroupClause() []*Node { + if x != nil { + return x.GroupClause } + return nil } -func (x *AlterOwnerStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *SelectStmt) GetGroupDistinct() bool { + if x != nil { + return x.GroupDistinct + } + return false } -func (*AlterOwnerStmt) ProtoMessage() {} - -func (x *AlterOwnerStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[138] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *SelectStmt) GetHavingClause() *Node { + if x != nil { + return x.HavingClause } - return mi.MessageOf(x) + return nil } -// Deprecated: Use AlterOwnerStmt.ProtoReflect.Descriptor instead. -func (*AlterOwnerStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{138} +func (x *SelectStmt) GetWindowClause() []*Node { + if x != nil { + return x.WindowClause + } + return nil } -func (x *AlterOwnerStmt) GetObjectType() ObjectType { +func (x *SelectStmt) GetValuesLists() []*Node { if x != nil { - return x.ObjectType + return x.ValuesLists } - return ObjectType_OBJECT_TYPE_UNDEFINED + return nil } -func (x *AlterOwnerStmt) GetRelation() *RangeVar { +func (x *SelectStmt) GetSortClause() []*Node { if x != nil { - return x.Relation + return x.SortClause } return nil } -func (x *AlterOwnerStmt) GetObject() *Node { +func (x *SelectStmt) GetLimitOffset() *Node { if x != nil { - return x.Object + return x.LimitOffset } return nil } -func (x *AlterOwnerStmt) GetNewowner() *RoleSpec { +func (x *SelectStmt) GetLimitCount() *Node { if x != nil { - return x.Newowner + return x.LimitCount } return nil } -type AlterOperatorStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Opername *ObjectWithArgs `protobuf:"bytes,1,opt,name=opername,proto3" json:"opername,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` +func (x *SelectStmt) GetLimitOption() LimitOption { + if x != nil { + return x.LimitOption + } + return LimitOption_LIMIT_OPTION_UNDEFINED } -func (x *AlterOperatorStmt) Reset() { - *x = AlterOperatorStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[139] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *SelectStmt) GetLockingClause() []*Node { + if x != nil { + return x.LockingClause } + return nil } -func (x *AlterOperatorStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *SelectStmt) GetWithClause() *WithClause { + if x != nil { + return x.WithClause + } + return nil } -func (*AlterOperatorStmt) ProtoMessage() {} - -func (x *AlterOperatorStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[139] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *SelectStmt) GetOp() SetOperation { + if x != nil { + return x.Op } - return mi.MessageOf(x) + return SetOperation_SET_OPERATION_UNDEFINED } -// Deprecated: Use AlterOperatorStmt.ProtoReflect.Descriptor instead. -func (*AlterOperatorStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{139} +func (x *SelectStmt) GetAll() bool { + if x != nil { + return x.All + } + return false } -func (x *AlterOperatorStmt) GetOpername() *ObjectWithArgs { +func (x *SelectStmt) GetLarg() *SelectStmt { if x != nil { - return x.Opername + return x.Larg } return nil } -func (x *AlterOperatorStmt) GetOptions() []*Node { +func (x *SelectStmt) GetRarg() *SelectStmt { if x != nil { - return x.Options + return x.Rarg } return nil } -type AlterTypeStmt struct { +type SetOperationStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - TypeName []*Node `protobuf:"bytes,1,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + Op SetOperation `protobuf:"varint,1,opt,name=op,proto3,enum=pg_query.SetOperation" json:"op,omitempty"` + All bool `protobuf:"varint,2,opt,name=all,proto3" json:"all,omitempty"` + Larg *Node `protobuf:"bytes,3,opt,name=larg,proto3" json:"larg,omitempty"` + Rarg *Node `protobuf:"bytes,4,opt,name=rarg,proto3" json:"rarg,omitempty"` + ColTypes []*Node `protobuf:"bytes,5,rep,name=col_types,json=colTypes,proto3" json:"col_types,omitempty"` + ColTypmods []*Node `protobuf:"bytes,6,rep,name=col_typmods,json=colTypmods,proto3" json:"col_typmods,omitempty"` + ColCollations []*Node `protobuf:"bytes,7,rep,name=col_collations,json=colCollations,proto3" json:"col_collations,omitempty"` + GroupClauses []*Node `protobuf:"bytes,8,rep,name=group_clauses,json=groupClauses,proto3" json:"group_clauses,omitempty"` } -func (x *AlterTypeStmt) Reset() { - *x = AlterTypeStmt{} +func (x *SetOperationStmt) Reset() { + *x = SetOperationStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[140] + mi := &file_pg_query_proto_msgTypes[132] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterTypeStmt) String() string { +func (x *SetOperationStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterTypeStmt) ProtoMessage() {} +func (*SetOperationStmt) ProtoMessage() {} -func (x *AlterTypeStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[140] +func (x *SetOperationStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[132] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20203,106 +20664,92 @@ func (x *AlterTypeStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterTypeStmt.ProtoReflect.Descriptor instead. -func (*AlterTypeStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{140} +// Deprecated: Use SetOperationStmt.ProtoReflect.Descriptor instead. +func (*SetOperationStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{132} } -func (x *AlterTypeStmt) GetTypeName() []*Node { +func (x *SetOperationStmt) GetOp() SetOperation { if x != nil { - return x.TypeName + return x.Op } - return nil + return SetOperation_SET_OPERATION_UNDEFINED } -func (x *AlterTypeStmt) GetOptions() []*Node { +func (x *SetOperationStmt) GetAll() bool { if x != nil { - return x.Options + return x.All } - return nil -} - -type DropOwnedStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Roles []*Node `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"` - Behavior DropBehavior `protobuf:"varint,2,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` + return false } -func (x *DropOwnedStmt) Reset() { - *x = DropOwnedStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[141] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *SetOperationStmt) GetLarg() *Node { + if x != nil { + return x.Larg } + return nil } -func (x *DropOwnedStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *SetOperationStmt) GetRarg() *Node { + if x != nil { + return x.Rarg + } + return nil } -func (*DropOwnedStmt) ProtoMessage() {} - -func (x *DropOwnedStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[141] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *SetOperationStmt) GetColTypes() []*Node { + if x != nil { + return x.ColTypes } - return mi.MessageOf(x) + return nil } -// Deprecated: Use DropOwnedStmt.ProtoReflect.Descriptor instead. -func (*DropOwnedStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{141} +func (x *SetOperationStmt) GetColTypmods() []*Node { + if x != nil { + return x.ColTypmods + } + return nil } -func (x *DropOwnedStmt) GetRoles() []*Node { +func (x *SetOperationStmt) GetColCollations() []*Node { if x != nil { - return x.Roles + return x.ColCollations } return nil } -func (x *DropOwnedStmt) GetBehavior() DropBehavior { +func (x *SetOperationStmt) GetGroupClauses() []*Node { if x != nil { - return x.Behavior + return x.GroupClauses } - return DropBehavior_DROP_BEHAVIOR_UNDEFINED + return nil } -type ReassignOwnedStmt struct { +type ReturnStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Roles []*Node `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"` - Newrole *RoleSpec `protobuf:"bytes,2,opt,name=newrole,proto3" json:"newrole,omitempty"` + Returnval *Node `protobuf:"bytes,1,opt,name=returnval,proto3" json:"returnval,omitempty"` } -func (x *ReassignOwnedStmt) Reset() { - *x = ReassignOwnedStmt{} +func (x *ReturnStmt) Reset() { + *x = ReturnStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[142] + mi := &file_pg_query_proto_msgTypes[133] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ReassignOwnedStmt) String() string { +func (x *ReturnStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReassignOwnedStmt) ProtoMessage() {} +func (*ReturnStmt) ProtoMessage() {} -func (x *ReassignOwnedStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[142] +func (x *ReturnStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[133] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20313,51 +20760,47 @@ func (x *ReassignOwnedStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ReassignOwnedStmt.ProtoReflect.Descriptor instead. -func (*ReassignOwnedStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{142} +// Deprecated: Use ReturnStmt.ProtoReflect.Descriptor instead. +func (*ReturnStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{133} } -func (x *ReassignOwnedStmt) GetRoles() []*Node { +func (x *ReturnStmt) GetReturnval() *Node { if x != nil { - return x.Roles + return x.Returnval } return nil } -func (x *ReassignOwnedStmt) GetNewrole() *RoleSpec { - if x != nil { - return x.Newrole - } - return nil -} - -type CompositeTypeStmt struct { +type PLAssignStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Typevar *RangeVar `protobuf:"bytes,1,opt,name=typevar,proto3" json:"typevar,omitempty"` - Coldeflist []*Node `protobuf:"bytes,2,rep,name=coldeflist,proto3" json:"coldeflist,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Indirection []*Node `protobuf:"bytes,2,rep,name=indirection,proto3" json:"indirection,omitempty"` + Nnames int32 `protobuf:"varint,3,opt,name=nnames,proto3" json:"nnames,omitempty"` + Val *SelectStmt `protobuf:"bytes,4,opt,name=val,proto3" json:"val,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` } -func (x *CompositeTypeStmt) Reset() { - *x = CompositeTypeStmt{} +func (x *PLAssignStmt) Reset() { + *x = PLAssignStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[143] + mi := &file_pg_query_proto_msgTypes[134] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CompositeTypeStmt) String() string { +func (x *PLAssignStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CompositeTypeStmt) ProtoMessage() {} +func (*PLAssignStmt) ProtoMessage() {} -func (x *CompositeTypeStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[143] +func (x *PLAssignStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[134] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20368,51 +20811,74 @@ func (x *CompositeTypeStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CompositeTypeStmt.ProtoReflect.Descriptor instead. -func (*CompositeTypeStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{143} +// Deprecated: Use PLAssignStmt.ProtoReflect.Descriptor instead. +func (*PLAssignStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{134} } -func (x *CompositeTypeStmt) GetTypevar() *RangeVar { +func (x *PLAssignStmt) GetName() string { if x != nil { - return x.Typevar + return x.Name + } + return "" +} + +func (x *PLAssignStmt) GetIndirection() []*Node { + if x != nil { + return x.Indirection } return nil } -func (x *CompositeTypeStmt) GetColdeflist() []*Node { +func (x *PLAssignStmt) GetNnames() int32 { if x != nil { - return x.Coldeflist + return x.Nnames + } + return 0 +} + +func (x *PLAssignStmt) GetVal() *SelectStmt { + if x != nil { + return x.Val } return nil } -type CreateEnumStmt struct { +func (x *PLAssignStmt) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type CreateSchemaStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - TypeName []*Node `protobuf:"bytes,1,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - Vals []*Node `protobuf:"bytes,2,rep,name=vals,proto3" json:"vals,omitempty"` + Schemaname string `protobuf:"bytes,1,opt,name=schemaname,proto3" json:"schemaname,omitempty"` + Authrole *RoleSpec `protobuf:"bytes,2,opt,name=authrole,proto3" json:"authrole,omitempty"` + SchemaElts []*Node `protobuf:"bytes,3,rep,name=schema_elts,json=schemaElts,proto3" json:"schema_elts,omitempty"` + IfNotExists bool `protobuf:"varint,4,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` } -func (x *CreateEnumStmt) Reset() { - *x = CreateEnumStmt{} +func (x *CreateSchemaStmt) Reset() { + *x = CreateSchemaStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[144] + mi := &file_pg_query_proto_msgTypes[135] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateEnumStmt) String() string { +func (x *CreateSchemaStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateEnumStmt) ProtoMessage() {} +func (*CreateSchemaStmt) ProtoMessage() {} -func (x *CreateEnumStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[144] +func (x *CreateSchemaStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[135] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20423,51 +20889,67 @@ func (x *CreateEnumStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateEnumStmt.ProtoReflect.Descriptor instead. -func (*CreateEnumStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{144} +// Deprecated: Use CreateSchemaStmt.ProtoReflect.Descriptor instead. +func (*CreateSchemaStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{135} } -func (x *CreateEnumStmt) GetTypeName() []*Node { +func (x *CreateSchemaStmt) GetSchemaname() string { if x != nil { - return x.TypeName + return x.Schemaname + } + return "" +} + +func (x *CreateSchemaStmt) GetAuthrole() *RoleSpec { + if x != nil { + return x.Authrole } return nil } -func (x *CreateEnumStmt) GetVals() []*Node { +func (x *CreateSchemaStmt) GetSchemaElts() []*Node { if x != nil { - return x.Vals + return x.SchemaElts } return nil } -type CreateRangeStmt struct { +func (x *CreateSchemaStmt) GetIfNotExists() bool { + if x != nil { + return x.IfNotExists + } + return false +} + +type AlterTableStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - TypeName []*Node `protobuf:"bytes,1,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - Params []*Node `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty"` + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + Cmds []*Node `protobuf:"bytes,2,rep,name=cmds,proto3" json:"cmds,omitempty"` + Objtype ObjectType `protobuf:"varint,3,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` + MissingOk bool `protobuf:"varint,4,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *CreateRangeStmt) Reset() { - *x = CreateRangeStmt{} +func (x *AlterTableStmt) Reset() { + *x = AlterTableStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[145] + mi := &file_pg_query_proto_msgTypes[136] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateRangeStmt) String() string { +func (x *AlterTableStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateRangeStmt) ProtoMessage() {} +func (*AlterTableStmt) ProtoMessage() {} -func (x *CreateRangeStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[145] +func (x *AlterTableStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[136] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20478,55 +20960,65 @@ func (x *CreateRangeStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateRangeStmt.ProtoReflect.Descriptor instead. -func (*CreateRangeStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{145} +// Deprecated: Use AlterTableStmt.ProtoReflect.Descriptor instead. +func (*AlterTableStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{136} } -func (x *CreateRangeStmt) GetTypeName() []*Node { +func (x *AlterTableStmt) GetRelation() *RangeVar { if x != nil { - return x.TypeName + return x.Relation } return nil } -func (x *CreateRangeStmt) GetParams() []*Node { +func (x *AlterTableStmt) GetCmds() []*Node { if x != nil { - return x.Params + return x.Cmds } return nil } -type AlterEnumStmt struct { +func (x *AlterTableStmt) GetObjtype() ObjectType { + if x != nil { + return x.Objtype + } + return ObjectType_OBJECT_TYPE_UNDEFINED +} + +func (x *AlterTableStmt) GetMissingOk() bool { + if x != nil { + return x.MissingOk + } + return false +} + +type ReplicaIdentityStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - TypeName []*Node `protobuf:"bytes,1,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - OldVal string `protobuf:"bytes,2,opt,name=old_val,json=oldVal,proto3" json:"old_val,omitempty"` - NewVal string `protobuf:"bytes,3,opt,name=new_val,json=newVal,proto3" json:"new_val,omitempty"` - NewValNeighbor string `protobuf:"bytes,4,opt,name=new_val_neighbor,json=newValNeighbor,proto3" json:"new_val_neighbor,omitempty"` - NewValIsAfter bool `protobuf:"varint,5,opt,name=new_val_is_after,json=newValIsAfter,proto3" json:"new_val_is_after,omitempty"` - SkipIfNewValExists bool `protobuf:"varint,6,opt,name=skip_if_new_val_exists,json=skipIfNewValExists,proto3" json:"skip_if_new_val_exists,omitempty"` + IdentityType string `protobuf:"bytes,1,opt,name=identity_type,proto3" json:"identity_type,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` } -func (x *AlterEnumStmt) Reset() { - *x = AlterEnumStmt{} +func (x *ReplicaIdentityStmt) Reset() { + *x = ReplicaIdentityStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[146] + mi := &file_pg_query_proto_msgTypes[137] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterEnumStmt) String() string { +func (x *ReplicaIdentityStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterEnumStmt) ProtoMessage() {} +func (*ReplicaIdentityStmt) ProtoMessage() {} -func (x *AlterEnumStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[146] +func (x *ReplicaIdentityStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[137] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20537,79 +21029,57 @@ func (x *AlterEnumStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterEnumStmt.ProtoReflect.Descriptor instead. -func (*AlterEnumStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{146} -} - -func (x *AlterEnumStmt) GetTypeName() []*Node { - if x != nil { - return x.TypeName - } - return nil -} - -func (x *AlterEnumStmt) GetOldVal() string { - if x != nil { - return x.OldVal - } - return "" +// Deprecated: Use ReplicaIdentityStmt.ProtoReflect.Descriptor instead. +func (*ReplicaIdentityStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{137} } -func (x *AlterEnumStmt) GetNewVal() string { +func (x *ReplicaIdentityStmt) GetIdentityType() string { if x != nil { - return x.NewVal + return x.IdentityType } return "" } -func (x *AlterEnumStmt) GetNewValNeighbor() string { +func (x *ReplicaIdentityStmt) GetName() string { if x != nil { - return x.NewValNeighbor + return x.Name } return "" } -func (x *AlterEnumStmt) GetNewValIsAfter() bool { - if x != nil { - return x.NewValIsAfter - } - return false -} - -func (x *AlterEnumStmt) GetSkipIfNewValExists() bool { - if x != nil { - return x.SkipIfNewValExists - } - return false -} - -type AlterTSDictionaryStmt struct { +type AlterTableCmd struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Dictname []*Node `protobuf:"bytes,1,rep,name=dictname,proto3" json:"dictname,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + Subtype AlterTableType `protobuf:"varint,1,opt,name=subtype,proto3,enum=pg_query.AlterTableType" json:"subtype,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Num int32 `protobuf:"varint,3,opt,name=num,proto3" json:"num,omitempty"` + Newowner *RoleSpec `protobuf:"bytes,4,opt,name=newowner,proto3" json:"newowner,omitempty"` + Def *Node `protobuf:"bytes,5,opt,name=def,proto3" json:"def,omitempty"` + Behavior DropBehavior `protobuf:"varint,6,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` + MissingOk bool `protobuf:"varint,7,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + Recurse bool `protobuf:"varint,8,opt,name=recurse,proto3" json:"recurse,omitempty"` } -func (x *AlterTSDictionaryStmt) Reset() { - *x = AlterTSDictionaryStmt{} +func (x *AlterTableCmd) Reset() { + *x = AlterTableCmd{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[147] + mi := &file_pg_query_proto_msgTypes[138] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterTSDictionaryStmt) String() string { +func (x *AlterTableCmd) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterTSDictionaryStmt) ProtoMessage() {} +func (*AlterTableCmd) ProtoMessage() {} -func (x *AlterTSDictionaryStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[147] +func (x *AlterTableCmd) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[138] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20620,147 +21090,92 @@ func (x *AlterTSDictionaryStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterTSDictionaryStmt.ProtoReflect.Descriptor instead. -func (*AlterTSDictionaryStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{147} -} - -func (x *AlterTSDictionaryStmt) GetDictname() []*Node { - if x != nil { - return x.Dictname - } - return nil +// Deprecated: Use AlterTableCmd.ProtoReflect.Descriptor instead. +func (*AlterTableCmd) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{138} } -func (x *AlterTSDictionaryStmt) GetOptions() []*Node { +func (x *AlterTableCmd) GetSubtype() AlterTableType { if x != nil { - return x.Options - } - return nil -} - -type AlterTSConfigurationStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Kind AlterTSConfigType `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.AlterTSConfigType" json:"kind,omitempty"` - Cfgname []*Node `protobuf:"bytes,2,rep,name=cfgname,proto3" json:"cfgname,omitempty"` - Tokentype []*Node `protobuf:"bytes,3,rep,name=tokentype,proto3" json:"tokentype,omitempty"` - Dicts []*Node `protobuf:"bytes,4,rep,name=dicts,proto3" json:"dicts,omitempty"` - Override bool `protobuf:"varint,5,opt,name=override,proto3" json:"override,omitempty"` - Replace bool `protobuf:"varint,6,opt,name=replace,proto3" json:"replace,omitempty"` - MissingOk bool `protobuf:"varint,7,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` -} - -func (x *AlterTSConfigurationStmt) Reset() { - *x = AlterTSConfigurationStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[148] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AlterTSConfigurationStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AlterTSConfigurationStmt) ProtoMessage() {} - -func (x *AlterTSConfigurationStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[148] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms + return x.Subtype } - return mi.MessageOf(x) -} - -// Deprecated: Use AlterTSConfigurationStmt.ProtoReflect.Descriptor instead. -func (*AlterTSConfigurationStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{148} + return AlterTableType_ALTER_TABLE_TYPE_UNDEFINED } -func (x *AlterTSConfigurationStmt) GetKind() AlterTSConfigType { +func (x *AlterTableCmd) GetName() string { if x != nil { - return x.Kind + return x.Name } - return AlterTSConfigType_ALTER_TSCONFIG_TYPE_UNDEFINED + return "" } -func (x *AlterTSConfigurationStmt) GetCfgname() []*Node { +func (x *AlterTableCmd) GetNum() int32 { if x != nil { - return x.Cfgname + return x.Num } - return nil + return 0 } -func (x *AlterTSConfigurationStmt) GetTokentype() []*Node { +func (x *AlterTableCmd) GetNewowner() *RoleSpec { if x != nil { - return x.Tokentype + return x.Newowner } return nil } -func (x *AlterTSConfigurationStmt) GetDicts() []*Node { +func (x *AlterTableCmd) GetDef() *Node { if x != nil { - return x.Dicts + return x.Def } return nil } -func (x *AlterTSConfigurationStmt) GetOverride() bool { +func (x *AlterTableCmd) GetBehavior() DropBehavior { if x != nil { - return x.Override + return x.Behavior } - return false + return DropBehavior_DROP_BEHAVIOR_UNDEFINED } -func (x *AlterTSConfigurationStmt) GetReplace() bool { +func (x *AlterTableCmd) GetMissingOk() bool { if x != nil { - return x.Replace + return x.MissingOk } return false } -func (x *AlterTSConfigurationStmt) GetMissingOk() bool { +func (x *AlterTableCmd) GetRecurse() bool { if x != nil { - return x.MissingOk + return x.Recurse } return false } -type CreateFdwStmt struct { +type AlterCollationStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Fdwname string `protobuf:"bytes,1,opt,name=fdwname,proto3" json:"fdwname,omitempty"` - FuncOptions []*Node `protobuf:"bytes,2,rep,name=func_options,proto3" json:"func_options,omitempty"` - Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` + Collname []*Node `protobuf:"bytes,1,rep,name=collname,proto3" json:"collname,omitempty"` } -func (x *CreateFdwStmt) Reset() { - *x = CreateFdwStmt{} +func (x *AlterCollationStmt) Reset() { + *x = AlterCollationStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[149] + mi := &file_pg_query_proto_msgTypes[139] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateFdwStmt) String() string { +func (x *AlterCollationStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateFdwStmt) ProtoMessage() {} +func (*AlterCollationStmt) ProtoMessage() {} -func (x *CreateFdwStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[149] +func (x *AlterCollationStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[139] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20771,59 +21186,48 @@ func (x *CreateFdwStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateFdwStmt.ProtoReflect.Descriptor instead. -func (*CreateFdwStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{149} -} - -func (x *CreateFdwStmt) GetFdwname() string { - if x != nil { - return x.Fdwname - } - return "" -} - -func (x *CreateFdwStmt) GetFuncOptions() []*Node { - if x != nil { - return x.FuncOptions - } - return nil +// Deprecated: Use AlterCollationStmt.ProtoReflect.Descriptor instead. +func (*AlterCollationStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{139} } -func (x *CreateFdwStmt) GetOptions() []*Node { +func (x *AlterCollationStmt) GetCollname() []*Node { if x != nil { - return x.Options + return x.Collname } return nil } -type AlterFdwStmt struct { +type AlterDomainStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Fdwname string `protobuf:"bytes,1,opt,name=fdwname,proto3" json:"fdwname,omitempty"` - FuncOptions []*Node `protobuf:"bytes,2,rep,name=func_options,proto3" json:"func_options,omitempty"` - Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` + Subtype string `protobuf:"bytes,1,opt,name=subtype,proto3" json:"subtype,omitempty"` + TypeName []*Node `protobuf:"bytes,2,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` + Def *Node `protobuf:"bytes,4,opt,name=def,proto3" json:"def,omitempty"` + Behavior DropBehavior `protobuf:"varint,5,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` + MissingOk bool `protobuf:"varint,6,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *AlterFdwStmt) Reset() { - *x = AlterFdwStmt{} +func (x *AlterDomainStmt) Reset() { + *x = AlterDomainStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[150] + mi := &file_pg_query_proto_msgTypes[140] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterFdwStmt) String() string { +func (x *AlterDomainStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterFdwStmt) ProtoMessage() {} +func (*AlterDomainStmt) ProtoMessage() {} -func (x *AlterFdwStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[150] +func (x *AlterDomainStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[140] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20834,62 +21238,86 @@ func (x *AlterFdwStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterFdwStmt.ProtoReflect.Descriptor instead. -func (*AlterFdwStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{150} +// Deprecated: Use AlterDomainStmt.ProtoReflect.Descriptor instead. +func (*AlterDomainStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{140} } -func (x *AlterFdwStmt) GetFdwname() string { +func (x *AlterDomainStmt) GetSubtype() string { if x != nil { - return x.Fdwname + return x.Subtype } return "" } -func (x *AlterFdwStmt) GetFuncOptions() []*Node { +func (x *AlterDomainStmt) GetTypeName() []*Node { if x != nil { - return x.FuncOptions + return x.TypeName } return nil } -func (x *AlterFdwStmt) GetOptions() []*Node { +func (x *AlterDomainStmt) GetName() string { if x != nil { - return x.Options + return x.Name + } + return "" +} + +func (x *AlterDomainStmt) GetDef() *Node { + if x != nil { + return x.Def } return nil } -type CreateForeignServerStmt struct { +func (x *AlterDomainStmt) GetBehavior() DropBehavior { + if x != nil { + return x.Behavior + } + return DropBehavior_DROP_BEHAVIOR_UNDEFINED +} + +func (x *AlterDomainStmt) GetMissingOk() bool { + if x != nil { + return x.MissingOk + } + return false +} + +type GrantStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Servername string `protobuf:"bytes,1,opt,name=servername,proto3" json:"servername,omitempty"` - Servertype string `protobuf:"bytes,2,opt,name=servertype,proto3" json:"servertype,omitempty"` - Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty"` - Fdwname string `protobuf:"bytes,4,opt,name=fdwname,proto3" json:"fdwname,omitempty"` - IfNotExists bool `protobuf:"varint,5,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` - Options []*Node `protobuf:"bytes,6,rep,name=options,proto3" json:"options,omitempty"` + IsGrant bool `protobuf:"varint,1,opt,name=is_grant,proto3" json:"is_grant,omitempty"` + Targtype GrantTargetType `protobuf:"varint,2,opt,name=targtype,proto3,enum=pg_query.GrantTargetType" json:"targtype,omitempty"` + Objtype ObjectType `protobuf:"varint,3,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` + Objects []*Node `protobuf:"bytes,4,rep,name=objects,proto3" json:"objects,omitempty"` + Privileges []*Node `protobuf:"bytes,5,rep,name=privileges,proto3" json:"privileges,omitempty"` + Grantees []*Node `protobuf:"bytes,6,rep,name=grantees,proto3" json:"grantees,omitempty"` + GrantOption bool `protobuf:"varint,7,opt,name=grant_option,proto3" json:"grant_option,omitempty"` + Grantor *RoleSpec `protobuf:"bytes,8,opt,name=grantor,proto3" json:"grantor,omitempty"` + Behavior DropBehavior `protobuf:"varint,9,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` } -func (x *CreateForeignServerStmt) Reset() { - *x = CreateForeignServerStmt{} +func (x *GrantStmt) Reset() { + *x = GrantStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[151] + mi := &file_pg_query_proto_msgTypes[141] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateForeignServerStmt) String() string { +func (x *GrantStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateForeignServerStmt) ProtoMessage() {} +func (*GrantStmt) ProtoMessage() {} -func (x *CreateForeignServerStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[151] +func (x *GrantStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[141] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20900,81 +21328,102 @@ func (x *CreateForeignServerStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateForeignServerStmt.ProtoReflect.Descriptor instead. -func (*CreateForeignServerStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{151} +// Deprecated: Use GrantStmt.ProtoReflect.Descriptor instead. +func (*GrantStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{141} } -func (x *CreateForeignServerStmt) GetServername() string { +func (x *GrantStmt) GetIsGrant() bool { if x != nil { - return x.Servername + return x.IsGrant } - return "" + return false } -func (x *CreateForeignServerStmt) GetServertype() string { +func (x *GrantStmt) GetTargtype() GrantTargetType { if x != nil { - return x.Servertype + return x.Targtype } - return "" + return GrantTargetType_GRANT_TARGET_TYPE_UNDEFINED } -func (x *CreateForeignServerStmt) GetVersion() string { +func (x *GrantStmt) GetObjtype() ObjectType { if x != nil { - return x.Version + return x.Objtype } - return "" + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *CreateForeignServerStmt) GetFdwname() string { +func (x *GrantStmt) GetObjects() []*Node { if x != nil { - return x.Fdwname + return x.Objects } - return "" + return nil } -func (x *CreateForeignServerStmt) GetIfNotExists() bool { +func (x *GrantStmt) GetPrivileges() []*Node { if x != nil { - return x.IfNotExists + return x.Privileges + } + return nil +} + +func (x *GrantStmt) GetGrantees() []*Node { + if x != nil { + return x.Grantees + } + return nil +} + +func (x *GrantStmt) GetGrantOption() bool { + if x != nil { + return x.GrantOption } return false } -func (x *CreateForeignServerStmt) GetOptions() []*Node { +func (x *GrantStmt) GetGrantor() *RoleSpec { if x != nil { - return x.Options + return x.Grantor } return nil } -type AlterForeignServerStmt struct { +func (x *GrantStmt) GetBehavior() DropBehavior { + if x != nil { + return x.Behavior + } + return DropBehavior_DROP_BEHAVIOR_UNDEFINED +} + +type ObjectWithArgs struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Servername string `protobuf:"bytes,1,opt,name=servername,proto3" json:"servername,omitempty"` - Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` - Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` - HasVersion bool `protobuf:"varint,4,opt,name=has_version,proto3" json:"has_version,omitempty"` + Objname []*Node `protobuf:"bytes,1,rep,name=objname,proto3" json:"objname,omitempty"` + Objargs []*Node `protobuf:"bytes,2,rep,name=objargs,proto3" json:"objargs,omitempty"` + Objfuncargs []*Node `protobuf:"bytes,3,rep,name=objfuncargs,proto3" json:"objfuncargs,omitempty"` + ArgsUnspecified bool `protobuf:"varint,4,opt,name=args_unspecified,proto3" json:"args_unspecified,omitempty"` } -func (x *AlterForeignServerStmt) Reset() { - *x = AlterForeignServerStmt{} +func (x *ObjectWithArgs) Reset() { + *x = ObjectWithArgs{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[152] + mi := &file_pg_query_proto_msgTypes[142] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterForeignServerStmt) String() string { +func (x *ObjectWithArgs) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterForeignServerStmt) ProtoMessage() {} +func (*ObjectWithArgs) ProtoMessage() {} -func (x *AlterForeignServerStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[152] +func (x *ObjectWithArgs) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[142] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20985,67 +21434,65 @@ func (x *AlterForeignServerStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterForeignServerStmt.ProtoReflect.Descriptor instead. -func (*AlterForeignServerStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{152} +// Deprecated: Use ObjectWithArgs.ProtoReflect.Descriptor instead. +func (*ObjectWithArgs) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{142} } -func (x *AlterForeignServerStmt) GetServername() string { +func (x *ObjectWithArgs) GetObjname() []*Node { if x != nil { - return x.Servername + return x.Objname } - return "" + return nil } -func (x *AlterForeignServerStmt) GetVersion() string { +func (x *ObjectWithArgs) GetObjargs() []*Node { if x != nil { - return x.Version + return x.Objargs } - return "" + return nil } -func (x *AlterForeignServerStmt) GetOptions() []*Node { +func (x *ObjectWithArgs) GetObjfuncargs() []*Node { if x != nil { - return x.Options + return x.Objfuncargs } return nil } -func (x *AlterForeignServerStmt) GetHasVersion() bool { +func (x *ObjectWithArgs) GetArgsUnspecified() bool { if x != nil { - return x.HasVersion + return x.ArgsUnspecified } return false } -type CreateUserMappingStmt struct { +type AccessPriv struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - User *RoleSpec `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` - Servername string `protobuf:"bytes,2,opt,name=servername,proto3" json:"servername,omitempty"` - IfNotExists bool `protobuf:"varint,3,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` - Options []*Node `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"` + PrivName string `protobuf:"bytes,1,opt,name=priv_name,proto3" json:"priv_name,omitempty"` + Cols []*Node `protobuf:"bytes,2,rep,name=cols,proto3" json:"cols,omitempty"` } -func (x *CreateUserMappingStmt) Reset() { - *x = CreateUserMappingStmt{} +func (x *AccessPriv) Reset() { + *x = AccessPriv{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[153] + mi := &file_pg_query_proto_msgTypes[143] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateUserMappingStmt) String() string { +func (x *AccessPriv) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateUserMappingStmt) ProtoMessage() {} +func (*AccessPriv) ProtoMessage() {} -func (x *CreateUserMappingStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[153] +func (x *AccessPriv) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[143] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21056,66 +21503,55 @@ func (x *CreateUserMappingStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateUserMappingStmt.ProtoReflect.Descriptor instead. -func (*CreateUserMappingStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{153} -} - -func (x *CreateUserMappingStmt) GetUser() *RoleSpec { - if x != nil { - return x.User - } - return nil +// Deprecated: Use AccessPriv.ProtoReflect.Descriptor instead. +func (*AccessPriv) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{143} } -func (x *CreateUserMappingStmt) GetServername() string { +func (x *AccessPriv) GetPrivName() string { if x != nil { - return x.Servername + return x.PrivName } return "" } -func (x *CreateUserMappingStmt) GetIfNotExists() bool { - if x != nil { - return x.IfNotExists - } - return false -} - -func (x *CreateUserMappingStmt) GetOptions() []*Node { +func (x *AccessPriv) GetCols() []*Node { if x != nil { - return x.Options + return x.Cols } return nil } -type AlterUserMappingStmt struct { +type GrantRoleStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - User *RoleSpec `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` - Servername string `protobuf:"bytes,2,opt,name=servername,proto3" json:"servername,omitempty"` - Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` + GrantedRoles []*Node `protobuf:"bytes,1,rep,name=granted_roles,proto3" json:"granted_roles,omitempty"` + GranteeRoles []*Node `protobuf:"bytes,2,rep,name=grantee_roles,proto3" json:"grantee_roles,omitempty"` + IsGrant bool `protobuf:"varint,3,opt,name=is_grant,proto3" json:"is_grant,omitempty"` + Opt []*Node `protobuf:"bytes,4,rep,name=opt,proto3" json:"opt,omitempty"` + Grantor *RoleSpec `protobuf:"bytes,5,opt,name=grantor,proto3" json:"grantor,omitempty"` + Behavior DropBehavior `protobuf:"varint,6,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` } -func (x *AlterUserMappingStmt) Reset() { - *x = AlterUserMappingStmt{} +func (x *GrantRoleStmt) Reset() { + *x = GrantRoleStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[154] + mi := &file_pg_query_proto_msgTypes[144] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterUserMappingStmt) String() string { +func (x *GrantRoleStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterUserMappingStmt) ProtoMessage() {} +func (*GrantRoleStmt) ProtoMessage() {} -func (x *AlterUserMappingStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[154] +func (x *GrantRoleStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[144] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21126,59 +21562,79 @@ func (x *AlterUserMappingStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterUserMappingStmt.ProtoReflect.Descriptor instead. -func (*AlterUserMappingStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{154} +// Deprecated: Use GrantRoleStmt.ProtoReflect.Descriptor instead. +func (*GrantRoleStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{144} } -func (x *AlterUserMappingStmt) GetUser() *RoleSpec { +func (x *GrantRoleStmt) GetGrantedRoles() []*Node { if x != nil { - return x.User + return x.GrantedRoles } return nil } -func (x *AlterUserMappingStmt) GetServername() string { +func (x *GrantRoleStmt) GetGranteeRoles() []*Node { if x != nil { - return x.Servername + return x.GranteeRoles } - return "" + return nil } -func (x *AlterUserMappingStmt) GetOptions() []*Node { +func (x *GrantRoleStmt) GetIsGrant() bool { if x != nil { - return x.Options + return x.IsGrant + } + return false +} + +func (x *GrantRoleStmt) GetOpt() []*Node { + if x != nil { + return x.Opt } return nil } -type DropUserMappingStmt struct { +func (x *GrantRoleStmt) GetGrantor() *RoleSpec { + if x != nil { + return x.Grantor + } + return nil +} + +func (x *GrantRoleStmt) GetBehavior() DropBehavior { + if x != nil { + return x.Behavior + } + return DropBehavior_DROP_BEHAVIOR_UNDEFINED +} + +type AlterDefaultPrivilegesStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - User *RoleSpec `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` - Servername string `protobuf:"bytes,2,opt,name=servername,proto3" json:"servername,omitempty"` - MissingOk bool `protobuf:"varint,3,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + Options []*Node `protobuf:"bytes,1,rep,name=options,proto3" json:"options,omitempty"` + Action *GrantStmt `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"` } -func (x *DropUserMappingStmt) Reset() { - *x = DropUserMappingStmt{} +func (x *AlterDefaultPrivilegesStmt) Reset() { + *x = AlterDefaultPrivilegesStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[155] + mi := &file_pg_query_proto_msgTypes[145] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *DropUserMappingStmt) String() string { +func (x *AlterDefaultPrivilegesStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DropUserMappingStmt) ProtoMessage() {} +func (*AlterDefaultPrivilegesStmt) ProtoMessage() {} -func (x *DropUserMappingStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[155] +func (x *AlterDefaultPrivilegesStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[145] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21189,59 +21645,57 @@ func (x *DropUserMappingStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DropUserMappingStmt.ProtoReflect.Descriptor instead. -func (*DropUserMappingStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{155} +// Deprecated: Use AlterDefaultPrivilegesStmt.ProtoReflect.Descriptor instead. +func (*AlterDefaultPrivilegesStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{145} } -func (x *DropUserMappingStmt) GetUser() *RoleSpec { +func (x *AlterDefaultPrivilegesStmt) GetOptions() []*Node { if x != nil { - return x.User + return x.Options } return nil } -func (x *DropUserMappingStmt) GetServername() string { - if x != nil { - return x.Servername - } - return "" -} - -func (x *DropUserMappingStmt) GetMissingOk() bool { +func (x *AlterDefaultPrivilegesStmt) GetAction() *GrantStmt { if x != nil { - return x.MissingOk + return x.Action } - return false + return nil } -type AlterTableSpaceOptionsStmt struct { +type CopyStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Tablespacename string `protobuf:"bytes,1,opt,name=tablespacename,proto3" json:"tablespacename,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` - IsReset bool `protobuf:"varint,3,opt,name=is_reset,json=isReset,proto3" json:"is_reset,omitempty"` -} - -func (x *AlterTableSpaceOptionsStmt) Reset() { - *x = AlterTableSpaceOptionsStmt{} + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + Query *Node `protobuf:"bytes,2,opt,name=query,proto3" json:"query,omitempty"` + Attlist []*Node `protobuf:"bytes,3,rep,name=attlist,proto3" json:"attlist,omitempty"` + IsFrom bool `protobuf:"varint,4,opt,name=is_from,proto3" json:"is_from,omitempty"` + IsProgram bool `protobuf:"varint,5,opt,name=is_program,proto3" json:"is_program,omitempty"` + Filename string `protobuf:"bytes,6,opt,name=filename,proto3" json:"filename,omitempty"` + Options []*Node `protobuf:"bytes,7,rep,name=options,proto3" json:"options,omitempty"` + WhereClause *Node `protobuf:"bytes,8,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` +} + +func (x *CopyStmt) Reset() { + *x = CopyStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[156] + mi := &file_pg_query_proto_msgTypes[146] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterTableSpaceOptionsStmt) String() string { +func (x *CopyStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterTableSpaceOptionsStmt) ProtoMessage() {} +func (*CopyStmt) ProtoMessage() {} -func (x *AlterTableSpaceOptionsStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[156] +func (x *CopyStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[146] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21252,139 +21706,95 @@ func (x *AlterTableSpaceOptionsStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterTableSpaceOptionsStmt.ProtoReflect.Descriptor instead. -func (*AlterTableSpaceOptionsStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{156} +// Deprecated: Use CopyStmt.ProtoReflect.Descriptor instead. +func (*CopyStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{146} } -func (x *AlterTableSpaceOptionsStmt) GetTablespacename() string { +func (x *CopyStmt) GetRelation() *RangeVar { if x != nil { - return x.Tablespacename + return x.Relation } - return "" + return nil } -func (x *AlterTableSpaceOptionsStmt) GetOptions() []*Node { +func (x *CopyStmt) GetQuery() *Node { if x != nil { - return x.Options + return x.Query } return nil } -func (x *AlterTableSpaceOptionsStmt) GetIsReset() bool { +func (x *CopyStmt) GetAttlist() []*Node { if x != nil { - return x.IsReset - } - return false -} - -type AlterTableMoveAllStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OrigTablespacename string `protobuf:"bytes,1,opt,name=orig_tablespacename,proto3" json:"orig_tablespacename,omitempty"` - Objtype ObjectType `protobuf:"varint,2,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` - Roles []*Node `protobuf:"bytes,3,rep,name=roles,proto3" json:"roles,omitempty"` - NewTablespacename string `protobuf:"bytes,4,opt,name=new_tablespacename,proto3" json:"new_tablespacename,omitempty"` - Nowait bool `protobuf:"varint,5,opt,name=nowait,proto3" json:"nowait,omitempty"` -} - -func (x *AlterTableMoveAllStmt) Reset() { - *x = AlterTableMoveAllStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[157] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AlterTableMoveAllStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AlterTableMoveAllStmt) ProtoMessage() {} - -func (x *AlterTableMoveAllStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[157] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms + return x.Attlist } - return mi.MessageOf(x) -} - -// Deprecated: Use AlterTableMoveAllStmt.ProtoReflect.Descriptor instead. -func (*AlterTableMoveAllStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{157} + return nil } -func (x *AlterTableMoveAllStmt) GetOrigTablespacename() string { +func (x *CopyStmt) GetIsFrom() bool { if x != nil { - return x.OrigTablespacename + return x.IsFrom } - return "" + return false } -func (x *AlterTableMoveAllStmt) GetObjtype() ObjectType { +func (x *CopyStmt) GetIsProgram() bool { if x != nil { - return x.Objtype + return x.IsProgram } - return ObjectType_OBJECT_TYPE_UNDEFINED + return false } -func (x *AlterTableMoveAllStmt) GetRoles() []*Node { +func (x *CopyStmt) GetFilename() string { if x != nil { - return x.Roles + return x.Filename } - return nil + return "" } -func (x *AlterTableMoveAllStmt) GetNewTablespacename() string { +func (x *CopyStmt) GetOptions() []*Node { if x != nil { - return x.NewTablespacename + return x.Options } - return "" + return nil } -func (x *AlterTableMoveAllStmt) GetNowait() bool { +func (x *CopyStmt) GetWhereClause() *Node { if x != nil { - return x.Nowait + return x.WhereClause } - return false + return nil } -type SecLabelStmt struct { +type VariableSetStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Objtype ObjectType `protobuf:"varint,1,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` - Object *Node `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` - Provider string `protobuf:"bytes,3,opt,name=provider,proto3" json:"provider,omitempty"` - Label string `protobuf:"bytes,4,opt,name=label,proto3" json:"label,omitempty"` + Kind VariableSetKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.VariableSetKind" json:"kind,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Args []*Node `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` + IsLocal bool `protobuf:"varint,4,opt,name=is_local,proto3" json:"is_local,omitempty"` } -func (x *SecLabelStmt) Reset() { - *x = SecLabelStmt{} +func (x *VariableSetStmt) Reset() { + *x = VariableSetStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[158] + mi := &file_pg_query_proto_msgTypes[147] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *SecLabelStmt) String() string { +func (x *VariableSetStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*SecLabelStmt) ProtoMessage() {} +func (*VariableSetStmt) ProtoMessage() {} -func (x *SecLabelStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[158] +func (x *VariableSetStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[147] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21395,66 +21805,64 @@ func (x *SecLabelStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use SecLabelStmt.ProtoReflect.Descriptor instead. -func (*SecLabelStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{158} +// Deprecated: Use VariableSetStmt.ProtoReflect.Descriptor instead. +func (*VariableSetStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{147} } -func (x *SecLabelStmt) GetObjtype() ObjectType { +func (x *VariableSetStmt) GetKind() VariableSetKind { if x != nil { - return x.Objtype + return x.Kind } - return ObjectType_OBJECT_TYPE_UNDEFINED + return VariableSetKind_VARIABLE_SET_KIND_UNDEFINED } -func (x *SecLabelStmt) GetObject() *Node { +func (x *VariableSetStmt) GetName() string { if x != nil { - return x.Object + return x.Name } - return nil + return "" } -func (x *SecLabelStmt) GetProvider() string { +func (x *VariableSetStmt) GetArgs() []*Node { if x != nil { - return x.Provider + return x.Args } - return "" + return nil } -func (x *SecLabelStmt) GetLabel() string { +func (x *VariableSetStmt) GetIsLocal() bool { if x != nil { - return x.Label + return x.IsLocal } - return "" + return false } -type CreateForeignTableStmt struct { +type VariableShowStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - BaseStmt *CreateStmt `protobuf:"bytes,1,opt,name=base_stmt,json=base,proto3" json:"base_stmt,omitempty"` - Servername string `protobuf:"bytes,2,opt,name=servername,proto3" json:"servername,omitempty"` - Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` } -func (x *CreateForeignTableStmt) Reset() { - *x = CreateForeignTableStmt{} +func (x *VariableShowStmt) Reset() { + *x = VariableShowStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[159] + mi := &file_pg_query_proto_msgTypes[148] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateForeignTableStmt) String() string { +func (x *VariableShowStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateForeignTableStmt) ProtoMessage() {} +func (*VariableShowStmt) ProtoMessage() {} -func (x *CreateForeignTableStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[159] +func (x *VariableShowStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[148] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21465,62 +21873,54 @@ func (x *CreateForeignTableStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateForeignTableStmt.ProtoReflect.Descriptor instead. -func (*CreateForeignTableStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{159} -} - -func (x *CreateForeignTableStmt) GetBaseStmt() *CreateStmt { - if x != nil { - return x.BaseStmt - } - return nil +// Deprecated: Use VariableShowStmt.ProtoReflect.Descriptor instead. +func (*VariableShowStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{148} } -func (x *CreateForeignTableStmt) GetServername() string { +func (x *VariableShowStmt) GetName() string { if x != nil { - return x.Servername + return x.Name } return "" } -func (x *CreateForeignTableStmt) GetOptions() []*Node { - if x != nil { - return x.Options - } - return nil -} - -type ImportForeignSchemaStmt struct { +type CreateStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ServerName string `protobuf:"bytes,1,opt,name=server_name,proto3" json:"server_name,omitempty"` - RemoteSchema string `protobuf:"bytes,2,opt,name=remote_schema,proto3" json:"remote_schema,omitempty"` - LocalSchema string `protobuf:"bytes,3,opt,name=local_schema,proto3" json:"local_schema,omitempty"` - ListType ImportForeignSchemaType `protobuf:"varint,4,opt,name=list_type,proto3,enum=pg_query.ImportForeignSchemaType" json:"list_type,omitempty"` - TableList []*Node `protobuf:"bytes,5,rep,name=table_list,proto3" json:"table_list,omitempty"` - Options []*Node `protobuf:"bytes,6,rep,name=options,proto3" json:"options,omitempty"` + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + TableElts []*Node `protobuf:"bytes,2,rep,name=table_elts,json=tableElts,proto3" json:"table_elts,omitempty"` + InhRelations []*Node `protobuf:"bytes,3,rep,name=inh_relations,json=inhRelations,proto3" json:"inh_relations,omitempty"` + Partbound *PartitionBoundSpec `protobuf:"bytes,4,opt,name=partbound,proto3" json:"partbound,omitempty"` + Partspec *PartitionSpec `protobuf:"bytes,5,opt,name=partspec,proto3" json:"partspec,omitempty"` + OfTypename *TypeName `protobuf:"bytes,6,opt,name=of_typename,json=ofTypename,proto3" json:"of_typename,omitempty"` + Constraints []*Node `protobuf:"bytes,7,rep,name=constraints,proto3" json:"constraints,omitempty"` + Options []*Node `protobuf:"bytes,8,rep,name=options,proto3" json:"options,omitempty"` + Oncommit OnCommitAction `protobuf:"varint,9,opt,name=oncommit,proto3,enum=pg_query.OnCommitAction" json:"oncommit,omitempty"` + Tablespacename string `protobuf:"bytes,10,opt,name=tablespacename,proto3" json:"tablespacename,omitempty"` + AccessMethod string `protobuf:"bytes,11,opt,name=access_method,json=accessMethod,proto3" json:"access_method,omitempty"` + IfNotExists bool `protobuf:"varint,12,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` } -func (x *ImportForeignSchemaStmt) Reset() { - *x = ImportForeignSchemaStmt{} +func (x *CreateStmt) Reset() { + *x = CreateStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[160] + mi := &file_pg_query_proto_msgTypes[149] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ImportForeignSchemaStmt) String() string { +func (x *CreateStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ImportForeignSchemaStmt) ProtoMessage() {} +func (*CreateStmt) ProtoMessage() {} -func (x *ImportForeignSchemaStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[160] +func (x *CreateStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[149] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21531,142 +21931,149 @@ func (x *ImportForeignSchemaStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ImportForeignSchemaStmt.ProtoReflect.Descriptor instead. -func (*ImportForeignSchemaStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{160} +// Deprecated: Use CreateStmt.ProtoReflect.Descriptor instead. +func (*CreateStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{149} } -func (x *ImportForeignSchemaStmt) GetServerName() string { +func (x *CreateStmt) GetRelation() *RangeVar { if x != nil { - return x.ServerName + return x.Relation } - return "" + return nil } -func (x *ImportForeignSchemaStmt) GetRemoteSchema() string { +func (x *CreateStmt) GetTableElts() []*Node { if x != nil { - return x.RemoteSchema + return x.TableElts } - return "" + return nil } -func (x *ImportForeignSchemaStmt) GetLocalSchema() string { +func (x *CreateStmt) GetInhRelations() []*Node { if x != nil { - return x.LocalSchema + return x.InhRelations } - return "" + return nil } -func (x *ImportForeignSchemaStmt) GetListType() ImportForeignSchemaType { +func (x *CreateStmt) GetPartbound() *PartitionBoundSpec { if x != nil { - return x.ListType + return x.Partbound } - return ImportForeignSchemaType_IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED + return nil } -func (x *ImportForeignSchemaStmt) GetTableList() []*Node { +func (x *CreateStmt) GetPartspec() *PartitionSpec { if x != nil { - return x.TableList + return x.Partspec } return nil } -func (x *ImportForeignSchemaStmt) GetOptions() []*Node { +func (x *CreateStmt) GetOfTypename() *TypeName { if x != nil { - return x.Options + return x.OfTypename } return nil } -type CreateExtensionStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Extname string `protobuf:"bytes,1,opt,name=extname,proto3" json:"extname,omitempty"` - IfNotExists bool `protobuf:"varint,2,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` - Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` -} - -func (x *CreateExtensionStmt) Reset() { - *x = CreateExtensionStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[161] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *CreateStmt) GetConstraints() []*Node { + if x != nil { + return x.Constraints } + return nil } -func (x *CreateExtensionStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateExtensionStmt) ProtoMessage() {} - -func (x *CreateExtensionStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[161] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *CreateStmt) GetOptions() []*Node { + if x != nil { + return x.Options } - return mi.MessageOf(x) + return nil } -// Deprecated: Use CreateExtensionStmt.ProtoReflect.Descriptor instead. -func (*CreateExtensionStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{161} +func (x *CreateStmt) GetOncommit() OnCommitAction { + if x != nil { + return x.Oncommit + } + return OnCommitAction_ON_COMMIT_ACTION_UNDEFINED } -func (x *CreateExtensionStmt) GetExtname() string { +func (x *CreateStmt) GetTablespacename() string { if x != nil { - return x.Extname + return x.Tablespacename } return "" } -func (x *CreateExtensionStmt) GetIfNotExists() bool { +func (x *CreateStmt) GetAccessMethod() string { if x != nil { - return x.IfNotExists + return x.AccessMethod } - return false + return "" } -func (x *CreateExtensionStmt) GetOptions() []*Node { +func (x *CreateStmt) GetIfNotExists() bool { if x != nil { - return x.Options + return x.IfNotExists } - return nil + return false } -type AlterExtensionStmt struct { +type Constraint struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Extname string `protobuf:"bytes,1,opt,name=extname,proto3" json:"extname,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + Contype ConstrType `protobuf:"varint,1,opt,name=contype,proto3,enum=pg_query.ConstrType" json:"contype,omitempty"` + Conname string `protobuf:"bytes,2,opt,name=conname,proto3" json:"conname,omitempty"` + Deferrable bool `protobuf:"varint,3,opt,name=deferrable,proto3" json:"deferrable,omitempty"` + Initdeferred bool `protobuf:"varint,4,opt,name=initdeferred,proto3" json:"initdeferred,omitempty"` + Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + IsNoInherit bool `protobuf:"varint,6,opt,name=is_no_inherit,proto3" json:"is_no_inherit,omitempty"` + RawExpr *Node `protobuf:"bytes,7,opt,name=raw_expr,proto3" json:"raw_expr,omitempty"` + CookedExpr string `protobuf:"bytes,8,opt,name=cooked_expr,proto3" json:"cooked_expr,omitempty"` + GeneratedWhen string `protobuf:"bytes,9,opt,name=generated_when,proto3" json:"generated_when,omitempty"` + NullsNotDistinct bool `protobuf:"varint,10,opt,name=nulls_not_distinct,proto3" json:"nulls_not_distinct,omitempty"` + Keys []*Node `protobuf:"bytes,11,rep,name=keys,proto3" json:"keys,omitempty"` + Including []*Node `protobuf:"bytes,12,rep,name=including,proto3" json:"including,omitempty"` + Exclusions []*Node `protobuf:"bytes,13,rep,name=exclusions,proto3" json:"exclusions,omitempty"` + Options []*Node `protobuf:"bytes,14,rep,name=options,proto3" json:"options,omitempty"` + Indexname string `protobuf:"bytes,15,opt,name=indexname,proto3" json:"indexname,omitempty"` + Indexspace string `protobuf:"bytes,16,opt,name=indexspace,proto3" json:"indexspace,omitempty"` + ResetDefaultTblspc bool `protobuf:"varint,17,opt,name=reset_default_tblspc,proto3" json:"reset_default_tblspc,omitempty"` + AccessMethod string `protobuf:"bytes,18,opt,name=access_method,proto3" json:"access_method,omitempty"` + WhereClause *Node `protobuf:"bytes,19,opt,name=where_clause,proto3" json:"where_clause,omitempty"` + Pktable *RangeVar `protobuf:"bytes,20,opt,name=pktable,proto3" json:"pktable,omitempty"` + FkAttrs []*Node `protobuf:"bytes,21,rep,name=fk_attrs,proto3" json:"fk_attrs,omitempty"` + PkAttrs []*Node `protobuf:"bytes,22,rep,name=pk_attrs,proto3" json:"pk_attrs,omitempty"` + FkMatchtype string `protobuf:"bytes,23,opt,name=fk_matchtype,proto3" json:"fk_matchtype,omitempty"` + FkUpdAction string `protobuf:"bytes,24,opt,name=fk_upd_action,proto3" json:"fk_upd_action,omitempty"` + FkDelAction string `protobuf:"bytes,25,opt,name=fk_del_action,proto3" json:"fk_del_action,omitempty"` + FkDelSetCols []*Node `protobuf:"bytes,26,rep,name=fk_del_set_cols,proto3" json:"fk_del_set_cols,omitempty"` + OldConpfeqop []*Node `protobuf:"bytes,27,rep,name=old_conpfeqop,proto3" json:"old_conpfeqop,omitempty"` + OldPktableOid uint32 `protobuf:"varint,28,opt,name=old_pktable_oid,proto3" json:"old_pktable_oid,omitempty"` + SkipValidation bool `protobuf:"varint,29,opt,name=skip_validation,proto3" json:"skip_validation,omitempty"` + InitiallyValid bool `protobuf:"varint,30,opt,name=initially_valid,proto3" json:"initially_valid,omitempty"` } -func (x *AlterExtensionStmt) Reset() { - *x = AlterExtensionStmt{} +func (x *Constraint) Reset() { + *x = Constraint{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[162] + mi := &file_pg_query_proto_msgTypes[150] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterExtensionStmt) String() string { +func (x *Constraint) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterExtensionStmt) ProtoMessage() {} +func (*Constraint) ProtoMessage() {} -func (x *AlterExtensionStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[162] +func (x *Constraint) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[150] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21677,249 +22084,249 @@ func (x *AlterExtensionStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterExtensionStmt.ProtoReflect.Descriptor instead. -func (*AlterExtensionStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{162} +// Deprecated: Use Constraint.ProtoReflect.Descriptor instead. +func (*Constraint) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{150} } -func (x *AlterExtensionStmt) GetExtname() string { +func (x *Constraint) GetContype() ConstrType { if x != nil { - return x.Extname + return x.Contype } - return "" + return ConstrType_CONSTR_TYPE_UNDEFINED } -func (x *AlterExtensionStmt) GetOptions() []*Node { +func (x *Constraint) GetConname() string { if x != nil { - return x.Options + return x.Conname } - return nil + return "" } -type AlterExtensionContentsStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Extname string `protobuf:"bytes,1,opt,name=extname,proto3" json:"extname,omitempty"` - Action int32 `protobuf:"varint,2,opt,name=action,proto3" json:"action,omitempty"` - Objtype ObjectType `protobuf:"varint,3,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` - Object *Node `protobuf:"bytes,4,opt,name=object,proto3" json:"object,omitempty"` +func (x *Constraint) GetDeferrable() bool { + if x != nil { + return x.Deferrable + } + return false } -func (x *AlterExtensionContentsStmt) Reset() { - *x = AlterExtensionContentsStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[163] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *Constraint) GetInitdeferred() bool { + if x != nil { + return x.Initdeferred } + return false } -func (x *AlterExtensionContentsStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *Constraint) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 } -func (*AlterExtensionContentsStmt) ProtoMessage() {} - -func (x *AlterExtensionContentsStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[163] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *Constraint) GetIsNoInherit() bool { + if x != nil { + return x.IsNoInherit } - return mi.MessageOf(x) + return false } -// Deprecated: Use AlterExtensionContentsStmt.ProtoReflect.Descriptor instead. -func (*AlterExtensionContentsStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{163} +func (x *Constraint) GetRawExpr() *Node { + if x != nil { + return x.RawExpr + } + return nil } -func (x *AlterExtensionContentsStmt) GetExtname() string { +func (x *Constraint) GetCookedExpr() string { if x != nil { - return x.Extname + return x.CookedExpr } return "" } -func (x *AlterExtensionContentsStmt) GetAction() int32 { +func (x *Constraint) GetGeneratedWhen() string { if x != nil { - return x.Action + return x.GeneratedWhen } - return 0 + return "" } -func (x *AlterExtensionContentsStmt) GetObjtype() ObjectType { +func (x *Constraint) GetNullsNotDistinct() bool { if x != nil { - return x.Objtype + return x.NullsNotDistinct } - return ObjectType_OBJECT_TYPE_UNDEFINED + return false } -func (x *AlterExtensionContentsStmt) GetObject() *Node { +func (x *Constraint) GetKeys() []*Node { if x != nil { - return x.Object + return x.Keys } return nil } -type CreateEventTrigStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Trigname string `protobuf:"bytes,1,opt,name=trigname,proto3" json:"trigname,omitempty"` - Eventname string `protobuf:"bytes,2,opt,name=eventname,proto3" json:"eventname,omitempty"` - Whenclause []*Node `protobuf:"bytes,3,rep,name=whenclause,proto3" json:"whenclause,omitempty"` - Funcname []*Node `protobuf:"bytes,4,rep,name=funcname,proto3" json:"funcname,omitempty"` -} - -func (x *CreateEventTrigStmt) Reset() { - *x = CreateEventTrigStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[164] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *Constraint) GetIncluding() []*Node { + if x != nil { + return x.Including } + return nil } -func (x *CreateEventTrigStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *Constraint) GetExclusions() []*Node { + if x != nil { + return x.Exclusions + } + return nil } -func (*CreateEventTrigStmt) ProtoMessage() {} - -func (x *CreateEventTrigStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[164] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *Constraint) GetOptions() []*Node { + if x != nil { + return x.Options } - return mi.MessageOf(x) + return nil } -// Deprecated: Use CreateEventTrigStmt.ProtoReflect.Descriptor instead. -func (*CreateEventTrigStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{164} +func (x *Constraint) GetIndexname() string { + if x != nil { + return x.Indexname + } + return "" } -func (x *CreateEventTrigStmt) GetTrigname() string { +func (x *Constraint) GetIndexspace() string { if x != nil { - return x.Trigname + return x.Indexspace } return "" } -func (x *CreateEventTrigStmt) GetEventname() string { +func (x *Constraint) GetResetDefaultTblspc() bool { if x != nil { - return x.Eventname + return x.ResetDefaultTblspc + } + return false +} + +func (x *Constraint) GetAccessMethod() string { + if x != nil { + return x.AccessMethod } return "" } -func (x *CreateEventTrigStmt) GetWhenclause() []*Node { +func (x *Constraint) GetWhereClause() *Node { if x != nil { - return x.Whenclause + return x.WhereClause } return nil } -func (x *CreateEventTrigStmt) GetFuncname() []*Node { +func (x *Constraint) GetPktable() *RangeVar { if x != nil { - return x.Funcname + return x.Pktable } return nil } -type AlterEventTrigStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +func (x *Constraint) GetFkAttrs() []*Node { + if x != nil { + return x.FkAttrs + } + return nil +} - Trigname string `protobuf:"bytes,1,opt,name=trigname,proto3" json:"trigname,omitempty"` - Tgenabled string `protobuf:"bytes,2,opt,name=tgenabled,proto3" json:"tgenabled,omitempty"` +func (x *Constraint) GetPkAttrs() []*Node { + if x != nil { + return x.PkAttrs + } + return nil } -func (x *AlterEventTrigStmt) Reset() { - *x = AlterEventTrigStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[165] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *Constraint) GetFkMatchtype() string { + if x != nil { + return x.FkMatchtype } + return "" } -func (x *AlterEventTrigStmt) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *Constraint) GetFkUpdAction() string { + if x != nil { + return x.FkUpdAction + } + return "" } -func (*AlterEventTrigStmt) ProtoMessage() {} +func (x *Constraint) GetFkDelAction() string { + if x != nil { + return x.FkDelAction + } + return "" +} -func (x *AlterEventTrigStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[165] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *Constraint) GetFkDelSetCols() []*Node { + if x != nil { + return x.FkDelSetCols } - return mi.MessageOf(x) + return nil } -// Deprecated: Use AlterEventTrigStmt.ProtoReflect.Descriptor instead. -func (*AlterEventTrigStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{165} +func (x *Constraint) GetOldConpfeqop() []*Node { + if x != nil { + return x.OldConpfeqop + } + return nil } -func (x *AlterEventTrigStmt) GetTrigname() string { +func (x *Constraint) GetOldPktableOid() uint32 { if x != nil { - return x.Trigname + return x.OldPktableOid } - return "" + return 0 } -func (x *AlterEventTrigStmt) GetTgenabled() string { +func (x *Constraint) GetSkipValidation() bool { if x != nil { - return x.Tgenabled + return x.SkipValidation } - return "" + return false } -type RefreshMatViewStmt struct { +func (x *Constraint) GetInitiallyValid() bool { + if x != nil { + return x.InitiallyValid + } + return false +} + +type CreateTableSpaceStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Concurrent bool `protobuf:"varint,1,opt,name=concurrent,proto3" json:"concurrent,omitempty"` - SkipData bool `protobuf:"varint,2,opt,name=skip_data,json=skipData,proto3" json:"skip_data,omitempty"` - Relation *RangeVar `protobuf:"bytes,3,opt,name=relation,proto3" json:"relation,omitempty"` + Tablespacename string `protobuf:"bytes,1,opt,name=tablespacename,proto3" json:"tablespacename,omitempty"` + Owner *RoleSpec `protobuf:"bytes,2,opt,name=owner,proto3" json:"owner,omitempty"` + Location string `protobuf:"bytes,3,opt,name=location,proto3" json:"location,omitempty"` + Options []*Node `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"` } -func (x *RefreshMatViewStmt) Reset() { - *x = RefreshMatViewStmt{} +func (x *CreateTableSpaceStmt) Reset() { + *x = CreateTableSpaceStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[166] + mi := &file_pg_query_proto_msgTypes[151] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RefreshMatViewStmt) String() string { +func (x *CreateTableSpaceStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RefreshMatViewStmt) ProtoMessage() {} +func (*CreateTableSpaceStmt) ProtoMessage() {} -func (x *RefreshMatViewStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[166] +func (x *CreateTableSpaceStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[151] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21930,58 +22337,65 @@ func (x *RefreshMatViewStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RefreshMatViewStmt.ProtoReflect.Descriptor instead. -func (*RefreshMatViewStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{166} +// Deprecated: Use CreateTableSpaceStmt.ProtoReflect.Descriptor instead. +func (*CreateTableSpaceStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{151} } -func (x *RefreshMatViewStmt) GetConcurrent() bool { +func (x *CreateTableSpaceStmt) GetTablespacename() string { if x != nil { - return x.Concurrent + return x.Tablespacename } - return false + return "" } -func (x *RefreshMatViewStmt) GetSkipData() bool { +func (x *CreateTableSpaceStmt) GetOwner() *RoleSpec { if x != nil { - return x.SkipData + return x.Owner } - return false + return nil } -func (x *RefreshMatViewStmt) GetRelation() *RangeVar { +func (x *CreateTableSpaceStmt) GetLocation() string { if x != nil { - return x.Relation + return x.Location + } + return "" +} + +func (x *CreateTableSpaceStmt) GetOptions() []*Node { + if x != nil { + return x.Options } return nil } -type ReplicaIdentityStmt struct { +type DropTableSpaceStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - IdentityType string `protobuf:"bytes,1,opt,name=identity_type,proto3" json:"identity_type,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Tablespacename string `protobuf:"bytes,1,opt,name=tablespacename,proto3" json:"tablespacename,omitempty"` + MissingOk bool `protobuf:"varint,2,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *ReplicaIdentityStmt) Reset() { - *x = ReplicaIdentityStmt{} +func (x *DropTableSpaceStmt) Reset() { + *x = DropTableSpaceStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[167] + mi := &file_pg_query_proto_msgTypes[152] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ReplicaIdentityStmt) String() string { +func (x *DropTableSpaceStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReplicaIdentityStmt) ProtoMessage() {} +func (*DropTableSpaceStmt) ProtoMessage() {} -func (x *ReplicaIdentityStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[167] +func (x *DropTableSpaceStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[152] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21992,50 +22406,52 @@ func (x *ReplicaIdentityStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ReplicaIdentityStmt.ProtoReflect.Descriptor instead. -func (*ReplicaIdentityStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{167} +// Deprecated: Use DropTableSpaceStmt.ProtoReflect.Descriptor instead. +func (*DropTableSpaceStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{152} } -func (x *ReplicaIdentityStmt) GetIdentityType() string { +func (x *DropTableSpaceStmt) GetTablespacename() string { if x != nil { - return x.IdentityType + return x.Tablespacename } return "" } -func (x *ReplicaIdentityStmt) GetName() string { +func (x *DropTableSpaceStmt) GetMissingOk() bool { if x != nil { - return x.Name + return x.MissingOk } - return "" + return false } -type AlterSystemStmt struct { +type AlterTableSpaceOptionsStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Setstmt *VariableSetStmt `protobuf:"bytes,1,opt,name=setstmt,proto3" json:"setstmt,omitempty"` + Tablespacename string `protobuf:"bytes,1,opt,name=tablespacename,proto3" json:"tablespacename,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + IsReset bool `protobuf:"varint,3,opt,name=is_reset,json=isReset,proto3" json:"is_reset,omitempty"` } -func (x *AlterSystemStmt) Reset() { - *x = AlterSystemStmt{} +func (x *AlterTableSpaceOptionsStmt) Reset() { + *x = AlterTableSpaceOptionsStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[168] + mi := &file_pg_query_proto_msgTypes[153] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterSystemStmt) String() string { +func (x *AlterTableSpaceOptionsStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterSystemStmt) ProtoMessage() {} +func (*AlterTableSpaceOptionsStmt) ProtoMessage() {} -func (x *AlterSystemStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[168] +func (x *AlterTableSpaceOptionsStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[153] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22046,49 +22462,61 @@ func (x *AlterSystemStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterSystemStmt.ProtoReflect.Descriptor instead. -func (*AlterSystemStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{168} +// Deprecated: Use AlterTableSpaceOptionsStmt.ProtoReflect.Descriptor instead. +func (*AlterTableSpaceOptionsStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{153} } -func (x *AlterSystemStmt) GetSetstmt() *VariableSetStmt { +func (x *AlterTableSpaceOptionsStmt) GetTablespacename() string { if x != nil { - return x.Setstmt + return x.Tablespacename } - return nil + return "" } -type CreatePolicyStmt struct { - state protoimpl.MessageState +func (x *AlterTableSpaceOptionsStmt) GetOptions() []*Node { + if x != nil { + return x.Options + } + return nil +} + +func (x *AlterTableSpaceOptionsStmt) GetIsReset() bool { + if x != nil { + return x.IsReset + } + return false +} + +type AlterTableMoveAllStmt struct { + state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - PolicyName string `protobuf:"bytes,1,opt,name=policy_name,proto3" json:"policy_name,omitempty"` - Table *RangeVar `protobuf:"bytes,2,opt,name=table,proto3" json:"table,omitempty"` - CmdName string `protobuf:"bytes,3,opt,name=cmd_name,proto3" json:"cmd_name,omitempty"` - Permissive bool `protobuf:"varint,4,opt,name=permissive,proto3" json:"permissive,omitempty"` - Roles []*Node `protobuf:"bytes,5,rep,name=roles,proto3" json:"roles,omitempty"` - Qual *Node `protobuf:"bytes,6,opt,name=qual,proto3" json:"qual,omitempty"` - WithCheck *Node `protobuf:"bytes,7,opt,name=with_check,proto3" json:"with_check,omitempty"` + OrigTablespacename string `protobuf:"bytes,1,opt,name=orig_tablespacename,proto3" json:"orig_tablespacename,omitempty"` + Objtype ObjectType `protobuf:"varint,2,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` + Roles []*Node `protobuf:"bytes,3,rep,name=roles,proto3" json:"roles,omitempty"` + NewTablespacename string `protobuf:"bytes,4,opt,name=new_tablespacename,proto3" json:"new_tablespacename,omitempty"` + Nowait bool `protobuf:"varint,5,opt,name=nowait,proto3" json:"nowait,omitempty"` } -func (x *CreatePolicyStmt) Reset() { - *x = CreatePolicyStmt{} +func (x *AlterTableMoveAllStmt) Reset() { + *x = AlterTableMoveAllStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[169] + mi := &file_pg_query_proto_msgTypes[154] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreatePolicyStmt) String() string { +func (x *AlterTableMoveAllStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreatePolicyStmt) ProtoMessage() {} +func (*AlterTableMoveAllStmt) ProtoMessage() {} -func (x *CreatePolicyStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[169] +func (x *AlterTableMoveAllStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[154] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22099,89 +22527,73 @@ func (x *CreatePolicyStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreatePolicyStmt.ProtoReflect.Descriptor instead. -func (*CreatePolicyStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{169} -} - -func (x *CreatePolicyStmt) GetPolicyName() string { - if x != nil { - return x.PolicyName - } - return "" -} - -func (x *CreatePolicyStmt) GetTable() *RangeVar { - if x != nil { - return x.Table - } - return nil +// Deprecated: Use AlterTableMoveAllStmt.ProtoReflect.Descriptor instead. +func (*AlterTableMoveAllStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{154} } -func (x *CreatePolicyStmt) GetCmdName() string { +func (x *AlterTableMoveAllStmt) GetOrigTablespacename() string { if x != nil { - return x.CmdName + return x.OrigTablespacename } return "" } -func (x *CreatePolicyStmt) GetPermissive() bool { +func (x *AlterTableMoveAllStmt) GetObjtype() ObjectType { if x != nil { - return x.Permissive + return x.Objtype } - return false + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *CreatePolicyStmt) GetRoles() []*Node { +func (x *AlterTableMoveAllStmt) GetRoles() []*Node { if x != nil { return x.Roles } return nil } -func (x *CreatePolicyStmt) GetQual() *Node { +func (x *AlterTableMoveAllStmt) GetNewTablespacename() string { if x != nil { - return x.Qual + return x.NewTablespacename } - return nil + return "" } -func (x *CreatePolicyStmt) GetWithCheck() *Node { +func (x *AlterTableMoveAllStmt) GetNowait() bool { if x != nil { - return x.WithCheck + return x.Nowait } - return nil + return false } -type AlterPolicyStmt struct { +type CreateExtensionStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - PolicyName string `protobuf:"bytes,1,opt,name=policy_name,proto3" json:"policy_name,omitempty"` - Table *RangeVar `protobuf:"bytes,2,opt,name=table,proto3" json:"table,omitempty"` - Roles []*Node `protobuf:"bytes,3,rep,name=roles,proto3" json:"roles,omitempty"` - Qual *Node `protobuf:"bytes,4,opt,name=qual,proto3" json:"qual,omitempty"` - WithCheck *Node `protobuf:"bytes,5,opt,name=with_check,proto3" json:"with_check,omitempty"` + Extname string `protobuf:"bytes,1,opt,name=extname,proto3" json:"extname,omitempty"` + IfNotExists bool `protobuf:"varint,2,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` + Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` } -func (x *AlterPolicyStmt) Reset() { - *x = AlterPolicyStmt{} +func (x *CreateExtensionStmt) Reset() { + *x = CreateExtensionStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[170] + mi := &file_pg_query_proto_msgTypes[155] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterPolicyStmt) String() string { +func (x *CreateExtensionStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterPolicyStmt) ProtoMessage() {} +func (*CreateExtensionStmt) ProtoMessage() {} -func (x *AlterPolicyStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[170] +func (x *CreateExtensionStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[155] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22192,75 +22604,58 @@ func (x *AlterPolicyStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterPolicyStmt.ProtoReflect.Descriptor instead. -func (*AlterPolicyStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{170} +// Deprecated: Use CreateExtensionStmt.ProtoReflect.Descriptor instead. +func (*CreateExtensionStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{155} } -func (x *AlterPolicyStmt) GetPolicyName() string { +func (x *CreateExtensionStmt) GetExtname() string { if x != nil { - return x.PolicyName + return x.Extname } return "" } -func (x *AlterPolicyStmt) GetTable() *RangeVar { - if x != nil { - return x.Table - } - return nil -} - -func (x *AlterPolicyStmt) GetRoles() []*Node { - if x != nil { - return x.Roles - } - return nil -} - -func (x *AlterPolicyStmt) GetQual() *Node { +func (x *CreateExtensionStmt) GetIfNotExists() bool { if x != nil { - return x.Qual + return x.IfNotExists } - return nil + return false } -func (x *AlterPolicyStmt) GetWithCheck() *Node { +func (x *CreateExtensionStmt) GetOptions() []*Node { if x != nil { - return x.WithCheck + return x.Options } return nil } -type CreateTransformStmt struct { +type AlterExtensionStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Replace bool `protobuf:"varint,1,opt,name=replace,proto3" json:"replace,omitempty"` - TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,proto3" json:"type_name,omitempty"` - Lang string `protobuf:"bytes,3,opt,name=lang,proto3" json:"lang,omitempty"` - Fromsql *ObjectWithArgs `protobuf:"bytes,4,opt,name=fromsql,proto3" json:"fromsql,omitempty"` - Tosql *ObjectWithArgs `protobuf:"bytes,5,opt,name=tosql,proto3" json:"tosql,omitempty"` + Extname string `protobuf:"bytes,1,opt,name=extname,proto3" json:"extname,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` } -func (x *CreateTransformStmt) Reset() { - *x = CreateTransformStmt{} +func (x *AlterExtensionStmt) Reset() { + *x = AlterExtensionStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[171] + mi := &file_pg_query_proto_msgTypes[156] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateTransformStmt) String() string { +func (x *AlterExtensionStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateTransformStmt) ProtoMessage() {} +func (*AlterExtensionStmt) ProtoMessage() {} -func (x *CreateTransformStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[171] +func (x *AlterExtensionStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[156] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22271,73 +22666,53 @@ func (x *CreateTransformStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateTransformStmt.ProtoReflect.Descriptor instead. -func (*CreateTransformStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{171} -} - -func (x *CreateTransformStmt) GetReplace() bool { - if x != nil { - return x.Replace - } - return false -} - -func (x *CreateTransformStmt) GetTypeName() *TypeName { - if x != nil { - return x.TypeName - } - return nil +// Deprecated: Use AlterExtensionStmt.ProtoReflect.Descriptor instead. +func (*AlterExtensionStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{156} } -func (x *CreateTransformStmt) GetLang() string { +func (x *AlterExtensionStmt) GetExtname() string { if x != nil { - return x.Lang + return x.Extname } return "" } -func (x *CreateTransformStmt) GetFromsql() *ObjectWithArgs { - if x != nil { - return x.Fromsql - } - return nil -} - -func (x *CreateTransformStmt) GetTosql() *ObjectWithArgs { +func (x *AlterExtensionStmt) GetOptions() []*Node { if x != nil { - return x.Tosql + return x.Options } return nil } -type CreateAmStmt struct { +type AlterExtensionContentsStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Amname string `protobuf:"bytes,1,opt,name=amname,proto3" json:"amname,omitempty"` - HandlerName []*Node `protobuf:"bytes,2,rep,name=handler_name,proto3" json:"handler_name,omitempty"` - Amtype string `protobuf:"bytes,3,opt,name=amtype,proto3" json:"amtype,omitempty"` + Extname string `protobuf:"bytes,1,opt,name=extname,proto3" json:"extname,omitempty"` + Action int32 `protobuf:"varint,2,opt,name=action,proto3" json:"action,omitempty"` + Objtype ObjectType `protobuf:"varint,3,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` + Object *Node `protobuf:"bytes,4,opt,name=object,proto3" json:"object,omitempty"` } -func (x *CreateAmStmt) Reset() { - *x = CreateAmStmt{} +func (x *AlterExtensionContentsStmt) Reset() { + *x = AlterExtensionContentsStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[172] + mi := &file_pg_query_proto_msgTypes[157] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateAmStmt) String() string { +func (x *AlterExtensionContentsStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateAmStmt) ProtoMessage() {} +func (*AlterExtensionContentsStmt) ProtoMessage() {} -func (x *CreateAmStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[172] +func (x *AlterExtensionContentsStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[157] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22348,60 +22723,66 @@ func (x *CreateAmStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateAmStmt.ProtoReflect.Descriptor instead. -func (*CreateAmStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{172} +// Deprecated: Use AlterExtensionContentsStmt.ProtoReflect.Descriptor instead. +func (*AlterExtensionContentsStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{157} } -func (x *CreateAmStmt) GetAmname() string { +func (x *AlterExtensionContentsStmt) GetExtname() string { if x != nil { - return x.Amname + return x.Extname } return "" } -func (x *CreateAmStmt) GetHandlerName() []*Node { +func (x *AlterExtensionContentsStmt) GetAction() int32 { if x != nil { - return x.HandlerName + return x.Action } - return nil + return 0 } -func (x *CreateAmStmt) GetAmtype() string { +func (x *AlterExtensionContentsStmt) GetObjtype() ObjectType { if x != nil { - return x.Amtype + return x.Objtype } - return "" + return ObjectType_OBJECT_TYPE_UNDEFINED } -type CreatePublicationStmt struct { +func (x *AlterExtensionContentsStmt) GetObject() *Node { + if x != nil { + return x.Object + } + return nil +} + +type CreateFdwStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Pubname string `protobuf:"bytes,1,opt,name=pubname,proto3" json:"pubname,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` - Pubobjects []*Node `protobuf:"bytes,3,rep,name=pubobjects,proto3" json:"pubobjects,omitempty"` - ForAllTables bool `protobuf:"varint,4,opt,name=for_all_tables,proto3" json:"for_all_tables,omitempty"` + Fdwname string `protobuf:"bytes,1,opt,name=fdwname,proto3" json:"fdwname,omitempty"` + FuncOptions []*Node `protobuf:"bytes,2,rep,name=func_options,proto3" json:"func_options,omitempty"` + Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` } -func (x *CreatePublicationStmt) Reset() { - *x = CreatePublicationStmt{} +func (x *CreateFdwStmt) Reset() { + *x = CreateFdwStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[173] + mi := &file_pg_query_proto_msgTypes[158] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreatePublicationStmt) String() string { +func (x *CreateFdwStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreatePublicationStmt) ProtoMessage() {} +func (*CreateFdwStmt) ProtoMessage() {} -func (x *CreatePublicationStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[173] +func (x *CreateFdwStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[158] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22412,68 +22793,59 @@ func (x *CreatePublicationStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreatePublicationStmt.ProtoReflect.Descriptor instead. -func (*CreatePublicationStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{173} +// Deprecated: Use CreateFdwStmt.ProtoReflect.Descriptor instead. +func (*CreateFdwStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{158} } -func (x *CreatePublicationStmt) GetPubname() string { +func (x *CreateFdwStmt) GetFdwname() string { if x != nil { - return x.Pubname + return x.Fdwname } return "" } -func (x *CreatePublicationStmt) GetOptions() []*Node { +func (x *CreateFdwStmt) GetFuncOptions() []*Node { if x != nil { - return x.Options + return x.FuncOptions } return nil } -func (x *CreatePublicationStmt) GetPubobjects() []*Node { +func (x *CreateFdwStmt) GetOptions() []*Node { if x != nil { - return x.Pubobjects + return x.Options } return nil } -func (x *CreatePublicationStmt) GetForAllTables() bool { - if x != nil { - return x.ForAllTables - } - return false -} - -type AlterPublicationStmt struct { +type AlterFdwStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Pubname string `protobuf:"bytes,1,opt,name=pubname,proto3" json:"pubname,omitempty"` - Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` - Pubobjects []*Node `protobuf:"bytes,3,rep,name=pubobjects,proto3" json:"pubobjects,omitempty"` - ForAllTables bool `protobuf:"varint,4,opt,name=for_all_tables,proto3" json:"for_all_tables,omitempty"` - Action AlterPublicationAction `protobuf:"varint,5,opt,name=action,proto3,enum=pg_query.AlterPublicationAction" json:"action,omitempty"` + Fdwname string `protobuf:"bytes,1,opt,name=fdwname,proto3" json:"fdwname,omitempty"` + FuncOptions []*Node `protobuf:"bytes,2,rep,name=func_options,proto3" json:"func_options,omitempty"` + Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` } -func (x *AlterPublicationStmt) Reset() { - *x = AlterPublicationStmt{} +func (x *AlterFdwStmt) Reset() { + *x = AlterFdwStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[174] + mi := &file_pg_query_proto_msgTypes[159] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterPublicationStmt) String() string { +func (x *AlterFdwStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterPublicationStmt) ProtoMessage() {} +func (*AlterFdwStmt) ProtoMessage() {} -func (x *AlterPublicationStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[174] +func (x *AlterFdwStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[159] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22484,74 +22856,62 @@ func (x *AlterPublicationStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterPublicationStmt.ProtoReflect.Descriptor instead. -func (*AlterPublicationStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{174} +// Deprecated: Use AlterFdwStmt.ProtoReflect.Descriptor instead. +func (*AlterFdwStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{159} } -func (x *AlterPublicationStmt) GetPubname() string { +func (x *AlterFdwStmt) GetFdwname() string { if x != nil { - return x.Pubname + return x.Fdwname } return "" } -func (x *AlterPublicationStmt) GetOptions() []*Node { +func (x *AlterFdwStmt) GetFuncOptions() []*Node { if x != nil { - return x.Options + return x.FuncOptions } return nil } -func (x *AlterPublicationStmt) GetPubobjects() []*Node { +func (x *AlterFdwStmt) GetOptions() []*Node { if x != nil { - return x.Pubobjects + return x.Options } return nil } -func (x *AlterPublicationStmt) GetForAllTables() bool { - if x != nil { - return x.ForAllTables - } - return false -} - -func (x *AlterPublicationStmt) GetAction() AlterPublicationAction { - if x != nil { - return x.Action - } - return AlterPublicationAction_ALTER_PUBLICATION_ACTION_UNDEFINED -} - -type CreateSubscriptionStmt struct { +type CreateForeignServerStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Subname string `protobuf:"bytes,1,opt,name=subname,proto3" json:"subname,omitempty"` - Conninfo string `protobuf:"bytes,2,opt,name=conninfo,proto3" json:"conninfo,omitempty"` - Publication []*Node `protobuf:"bytes,3,rep,name=publication,proto3" json:"publication,omitempty"` - Options []*Node `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"` + Servername string `protobuf:"bytes,1,opt,name=servername,proto3" json:"servername,omitempty"` + Servertype string `protobuf:"bytes,2,opt,name=servertype,proto3" json:"servertype,omitempty"` + Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty"` + Fdwname string `protobuf:"bytes,4,opt,name=fdwname,proto3" json:"fdwname,omitempty"` + IfNotExists bool `protobuf:"varint,5,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` + Options []*Node `protobuf:"bytes,6,rep,name=options,proto3" json:"options,omitempty"` } -func (x *CreateSubscriptionStmt) Reset() { - *x = CreateSubscriptionStmt{} +func (x *CreateForeignServerStmt) Reset() { + *x = CreateForeignServerStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[175] + mi := &file_pg_query_proto_msgTypes[160] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateSubscriptionStmt) String() string { +func (x *CreateForeignServerStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateSubscriptionStmt) ProtoMessage() {} +func (*CreateForeignServerStmt) ProtoMessage() {} -func (x *CreateSubscriptionStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[175] +func (x *CreateForeignServerStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[160] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22562,68 +22922,81 @@ func (x *CreateSubscriptionStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateSubscriptionStmt.ProtoReflect.Descriptor instead. -func (*CreateSubscriptionStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{175} +// Deprecated: Use CreateForeignServerStmt.ProtoReflect.Descriptor instead. +func (*CreateForeignServerStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{160} } -func (x *CreateSubscriptionStmt) GetSubname() string { +func (x *CreateForeignServerStmt) GetServername() string { if x != nil { - return x.Subname + return x.Servername } return "" } -func (x *CreateSubscriptionStmt) GetConninfo() string { +func (x *CreateForeignServerStmt) GetServertype() string { if x != nil { - return x.Conninfo + return x.Servertype } return "" } -func (x *CreateSubscriptionStmt) GetPublication() []*Node { +func (x *CreateForeignServerStmt) GetVersion() string { if x != nil { - return x.Publication + return x.Version } - return nil + return "" } -func (x *CreateSubscriptionStmt) GetOptions() []*Node { +func (x *CreateForeignServerStmt) GetFdwname() string { + if x != nil { + return x.Fdwname + } + return "" +} + +func (x *CreateForeignServerStmt) GetIfNotExists() bool { + if x != nil { + return x.IfNotExists + } + return false +} + +func (x *CreateForeignServerStmt) GetOptions() []*Node { if x != nil { return x.Options } return nil } -type AlterSubscriptionStmt struct { +type AlterForeignServerStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Kind AlterSubscriptionType `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.AlterSubscriptionType" json:"kind,omitempty"` - Subname string `protobuf:"bytes,2,opt,name=subname,proto3" json:"subname,omitempty"` - Conninfo string `protobuf:"bytes,3,opt,name=conninfo,proto3" json:"conninfo,omitempty"` - Publication []*Node `protobuf:"bytes,4,rep,name=publication,proto3" json:"publication,omitempty"` - Options []*Node `protobuf:"bytes,5,rep,name=options,proto3" json:"options,omitempty"` + Servername string `protobuf:"bytes,1,opt,name=servername,proto3" json:"servername,omitempty"` + Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` + Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` + HasVersion bool `protobuf:"varint,4,opt,name=has_version,proto3" json:"has_version,omitempty"` } -func (x *AlterSubscriptionStmt) Reset() { - *x = AlterSubscriptionStmt{} +func (x *AlterForeignServerStmt) Reset() { + *x = AlterForeignServerStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[176] + mi := &file_pg_query_proto_msgTypes[161] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterSubscriptionStmt) String() string { +func (x *AlterForeignServerStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterSubscriptionStmt) ProtoMessage() {} +func (*AlterForeignServerStmt) ProtoMessage() {} -func (x *AlterSubscriptionStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[176] +func (x *AlterForeignServerStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[161] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22634,73 +23007,66 @@ func (x *AlterSubscriptionStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterSubscriptionStmt.ProtoReflect.Descriptor instead. -func (*AlterSubscriptionStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{176} -} - -func (x *AlterSubscriptionStmt) GetKind() AlterSubscriptionType { - if x != nil { - return x.Kind - } - return AlterSubscriptionType_ALTER_SUBSCRIPTION_TYPE_UNDEFINED +// Deprecated: Use AlterForeignServerStmt.ProtoReflect.Descriptor instead. +func (*AlterForeignServerStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{161} } -func (x *AlterSubscriptionStmt) GetSubname() string { +func (x *AlterForeignServerStmt) GetServername() string { if x != nil { - return x.Subname + return x.Servername } return "" } -func (x *AlterSubscriptionStmt) GetConninfo() string { +func (x *AlterForeignServerStmt) GetVersion() string { if x != nil { - return x.Conninfo + return x.Version } return "" } -func (x *AlterSubscriptionStmt) GetPublication() []*Node { +func (x *AlterForeignServerStmt) GetOptions() []*Node { if x != nil { - return x.Publication + return x.Options } return nil } -func (x *AlterSubscriptionStmt) GetOptions() []*Node { +func (x *AlterForeignServerStmt) GetHasVersion() bool { if x != nil { - return x.Options + return x.HasVersion } - return nil + return false } -type DropSubscriptionStmt struct { +type CreateForeignTableStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Subname string `protobuf:"bytes,1,opt,name=subname,proto3" json:"subname,omitempty"` - MissingOk bool `protobuf:"varint,2,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` - Behavior DropBehavior `protobuf:"varint,3,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` + BaseStmt *CreateStmt `protobuf:"bytes,1,opt,name=base_stmt,json=base,proto3" json:"base_stmt,omitempty"` + Servername string `protobuf:"bytes,2,opt,name=servername,proto3" json:"servername,omitempty"` + Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` } -func (x *DropSubscriptionStmt) Reset() { - *x = DropSubscriptionStmt{} +func (x *CreateForeignTableStmt) Reset() { + *x = CreateForeignTableStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[177] + mi := &file_pg_query_proto_msgTypes[162] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *DropSubscriptionStmt) String() string { +func (x *CreateForeignTableStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DropSubscriptionStmt) ProtoMessage() {} +func (*CreateForeignTableStmt) ProtoMessage() {} -func (x *DropSubscriptionStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[177] +func (x *CreateForeignTableStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[162] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22711,63 +23077,60 @@ func (x *DropSubscriptionStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DropSubscriptionStmt.ProtoReflect.Descriptor instead. -func (*DropSubscriptionStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{177} +// Deprecated: Use CreateForeignTableStmt.ProtoReflect.Descriptor instead. +func (*CreateForeignTableStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{162} } -func (x *DropSubscriptionStmt) GetSubname() string { +func (x *CreateForeignTableStmt) GetBaseStmt() *CreateStmt { if x != nil { - return x.Subname + return x.BaseStmt } - return "" + return nil } -func (x *DropSubscriptionStmt) GetMissingOk() bool { +func (x *CreateForeignTableStmt) GetServername() string { if x != nil { - return x.MissingOk + return x.Servername } - return false + return "" } -func (x *DropSubscriptionStmt) GetBehavior() DropBehavior { +func (x *CreateForeignTableStmt) GetOptions() []*Node { if x != nil { - return x.Behavior + return x.Options } - return DropBehavior_DROP_BEHAVIOR_UNDEFINED + return nil } -type CreateStatsStmt struct { +type CreateUserMappingStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Defnames []*Node `protobuf:"bytes,1,rep,name=defnames,proto3" json:"defnames,omitempty"` - StatTypes []*Node `protobuf:"bytes,2,rep,name=stat_types,proto3" json:"stat_types,omitempty"` - Exprs []*Node `protobuf:"bytes,3,rep,name=exprs,proto3" json:"exprs,omitempty"` - Relations []*Node `protobuf:"bytes,4,rep,name=relations,proto3" json:"relations,omitempty"` - Stxcomment string `protobuf:"bytes,5,opt,name=stxcomment,proto3" json:"stxcomment,omitempty"` - Transformed bool `protobuf:"varint,6,opt,name=transformed,proto3" json:"transformed,omitempty"` - IfNotExists bool `protobuf:"varint,7,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` + User *RoleSpec `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` + Servername string `protobuf:"bytes,2,opt,name=servername,proto3" json:"servername,omitempty"` + IfNotExists bool `protobuf:"varint,3,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` + Options []*Node `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"` } -func (x *CreateStatsStmt) Reset() { - *x = CreateStatsStmt{} +func (x *CreateUserMappingStmt) Reset() { + *x = CreateUserMappingStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[178] + mi := &file_pg_query_proto_msgTypes[163] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateStatsStmt) String() string { +func (x *CreateUserMappingStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateStatsStmt) ProtoMessage() {} +func (*CreateUserMappingStmt) ProtoMessage() {} -func (x *CreateStatsStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[178] +func (x *CreateUserMappingStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[163] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22778,134 +23141,66 @@ func (x *CreateStatsStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateStatsStmt.ProtoReflect.Descriptor instead. -func (*CreateStatsStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{178} -} - -func (x *CreateStatsStmt) GetDefnames() []*Node { - if x != nil { - return x.Defnames - } - return nil -} - -func (x *CreateStatsStmt) GetStatTypes() []*Node { - if x != nil { - return x.StatTypes - } - return nil -} - -func (x *CreateStatsStmt) GetExprs() []*Node { - if x != nil { - return x.Exprs - } - return nil +// Deprecated: Use CreateUserMappingStmt.ProtoReflect.Descriptor instead. +func (*CreateUserMappingStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{163} } -func (x *CreateStatsStmt) GetRelations() []*Node { +func (x *CreateUserMappingStmt) GetUser() *RoleSpec { if x != nil { - return x.Relations + return x.User } return nil } -func (x *CreateStatsStmt) GetStxcomment() string { +func (x *CreateUserMappingStmt) GetServername() string { if x != nil { - return x.Stxcomment + return x.Servername } return "" } -func (x *CreateStatsStmt) GetTransformed() bool { - if x != nil { - return x.Transformed - } - return false -} - -func (x *CreateStatsStmt) GetIfNotExists() bool { +func (x *CreateUserMappingStmt) GetIfNotExists() bool { if x != nil { return x.IfNotExists } return false } -type AlterCollationStmt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Collname []*Node `protobuf:"bytes,1,rep,name=collname,proto3" json:"collname,omitempty"` -} - -func (x *AlterCollationStmt) Reset() { - *x = AlterCollationStmt{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[179] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AlterCollationStmt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AlterCollationStmt) ProtoMessage() {} - -func (x *AlterCollationStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[179] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use AlterCollationStmt.ProtoReflect.Descriptor instead. -func (*AlterCollationStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{179} -} - -func (x *AlterCollationStmt) GetCollname() []*Node { +func (x *CreateUserMappingStmt) GetOptions() []*Node { if x != nil { - return x.Collname + return x.Options } return nil } -type CallStmt struct { +type AlterUserMappingStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Funccall *FuncCall `protobuf:"bytes,1,opt,name=funccall,proto3" json:"funccall,omitempty"` - Funcexpr *FuncExpr `protobuf:"bytes,2,opt,name=funcexpr,proto3" json:"funcexpr,omitempty"` - Outargs []*Node `protobuf:"bytes,3,rep,name=outargs,proto3" json:"outargs,omitempty"` + User *RoleSpec `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` + Servername string `protobuf:"bytes,2,opt,name=servername,proto3" json:"servername,omitempty"` + Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` } -func (x *CallStmt) Reset() { - *x = CallStmt{} +func (x *AlterUserMappingStmt) Reset() { + *x = AlterUserMappingStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[180] + mi := &file_pg_query_proto_msgTypes[164] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CallStmt) String() string { +func (x *AlterUserMappingStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CallStmt) ProtoMessage() {} +func (*AlterUserMappingStmt) ProtoMessage() {} -func (x *CallStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[180] +func (x *AlterUserMappingStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[164] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22916,59 +23211,59 @@ func (x *CallStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CallStmt.ProtoReflect.Descriptor instead. -func (*CallStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{180} +// Deprecated: Use AlterUserMappingStmt.ProtoReflect.Descriptor instead. +func (*AlterUserMappingStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{164} } -func (x *CallStmt) GetFunccall() *FuncCall { +func (x *AlterUserMappingStmt) GetUser() *RoleSpec { if x != nil { - return x.Funccall + return x.User } return nil } -func (x *CallStmt) GetFuncexpr() *FuncExpr { +func (x *AlterUserMappingStmt) GetServername() string { if x != nil { - return x.Funcexpr + return x.Servername } - return nil + return "" } -func (x *CallStmt) GetOutargs() []*Node { +func (x *AlterUserMappingStmt) GetOptions() []*Node { if x != nil { - return x.Outargs + return x.Options } return nil } -type AlterStatsStmt struct { +type DropUserMappingStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Defnames []*Node `protobuf:"bytes,1,rep,name=defnames,proto3" json:"defnames,omitempty"` - Stxstattarget int32 `protobuf:"varint,2,opt,name=stxstattarget,proto3" json:"stxstattarget,omitempty"` - MissingOk bool `protobuf:"varint,3,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + User *RoleSpec `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` + Servername string `protobuf:"bytes,2,opt,name=servername,proto3" json:"servername,omitempty"` + MissingOk bool `protobuf:"varint,3,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *AlterStatsStmt) Reset() { - *x = AlterStatsStmt{} +func (x *DropUserMappingStmt) Reset() { + *x = DropUserMappingStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[181] + mi := &file_pg_query_proto_msgTypes[165] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AlterStatsStmt) String() string { +func (x *DropUserMappingStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AlterStatsStmt) ProtoMessage() {} +func (*DropUserMappingStmt) ProtoMessage() {} -func (x *AlterStatsStmt) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[181] +func (x *DropUserMappingStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[165] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22979,61 +23274,62 @@ func (x *AlterStatsStmt) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AlterStatsStmt.ProtoReflect.Descriptor instead. -func (*AlterStatsStmt) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{181} +// Deprecated: Use DropUserMappingStmt.ProtoReflect.Descriptor instead. +func (*DropUserMappingStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{165} } -func (x *AlterStatsStmt) GetDefnames() []*Node { +func (x *DropUserMappingStmt) GetUser() *RoleSpec { if x != nil { - return x.Defnames + return x.User } return nil } -func (x *AlterStatsStmt) GetStxstattarget() int32 { +func (x *DropUserMappingStmt) GetServername() string { if x != nil { - return x.Stxstattarget + return x.Servername } - return 0 + return "" } -func (x *AlterStatsStmt) GetMissingOk() bool { +func (x *DropUserMappingStmt) GetMissingOk() bool { if x != nil { return x.MissingOk } return false } -type A_Expr struct { +type ImportForeignSchemaStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Kind A_Expr_Kind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.A_Expr_Kind" json:"kind,omitempty"` - Name []*Node `protobuf:"bytes,2,rep,name=name,proto3" json:"name,omitempty"` - Lexpr *Node `protobuf:"bytes,3,opt,name=lexpr,proto3" json:"lexpr,omitempty"` - Rexpr *Node `protobuf:"bytes,4,opt,name=rexpr,proto3" json:"rexpr,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + ServerName string `protobuf:"bytes,1,opt,name=server_name,proto3" json:"server_name,omitempty"` + RemoteSchema string `protobuf:"bytes,2,opt,name=remote_schema,proto3" json:"remote_schema,omitempty"` + LocalSchema string `protobuf:"bytes,3,opt,name=local_schema,proto3" json:"local_schema,omitempty"` + ListType ImportForeignSchemaType `protobuf:"varint,4,opt,name=list_type,proto3,enum=pg_query.ImportForeignSchemaType" json:"list_type,omitempty"` + TableList []*Node `protobuf:"bytes,5,rep,name=table_list,proto3" json:"table_list,omitempty"` + Options []*Node `protobuf:"bytes,6,rep,name=options,proto3" json:"options,omitempty"` } -func (x *A_Expr) Reset() { - *x = A_Expr{} +func (x *ImportForeignSchemaStmt) Reset() { + *x = ImportForeignSchemaStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[182] + mi := &file_pg_query_proto_msgTypes[166] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *A_Expr) String() string { +func (x *ImportForeignSchemaStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*A_Expr) ProtoMessage() {} +func (*ImportForeignSchemaStmt) ProtoMessage() {} -func (x *A_Expr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[182] +func (x *ImportForeignSchemaStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[166] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23044,72 +23340,84 @@ func (x *A_Expr) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use A_Expr.ProtoReflect.Descriptor instead. -func (*A_Expr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{182} +// Deprecated: Use ImportForeignSchemaStmt.ProtoReflect.Descriptor instead. +func (*ImportForeignSchemaStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{166} } -func (x *A_Expr) GetKind() A_Expr_Kind { +func (x *ImportForeignSchemaStmt) GetServerName() string { if x != nil { - return x.Kind + return x.ServerName } - return A_Expr_Kind_A_EXPR_KIND_UNDEFINED + return "" } -func (x *A_Expr) GetName() []*Node { +func (x *ImportForeignSchemaStmt) GetRemoteSchema() string { if x != nil { - return x.Name + return x.RemoteSchema } - return nil + return "" } -func (x *A_Expr) GetLexpr() *Node { +func (x *ImportForeignSchemaStmt) GetLocalSchema() string { if x != nil { - return x.Lexpr + return x.LocalSchema } - return nil + return "" } -func (x *A_Expr) GetRexpr() *Node { +func (x *ImportForeignSchemaStmt) GetListType() ImportForeignSchemaType { if x != nil { - return x.Rexpr + return x.ListType + } + return ImportForeignSchemaType_IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED +} + +func (x *ImportForeignSchemaStmt) GetTableList() []*Node { + if x != nil { + return x.TableList } return nil } -func (x *A_Expr) GetLocation() int32 { +func (x *ImportForeignSchemaStmt) GetOptions() []*Node { if x != nil { - return x.Location + return x.Options } - return 0 + return nil } -type ColumnRef struct { +type CreatePolicyStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Fields []*Node `protobuf:"bytes,1,rep,name=fields,proto3" json:"fields,omitempty"` - Location int32 `protobuf:"varint,2,opt,name=location,proto3" json:"location,omitempty"` + PolicyName string `protobuf:"bytes,1,opt,name=policy_name,proto3" json:"policy_name,omitempty"` + Table *RangeVar `protobuf:"bytes,2,opt,name=table,proto3" json:"table,omitempty"` + CmdName string `protobuf:"bytes,3,opt,name=cmd_name,proto3" json:"cmd_name,omitempty"` + Permissive bool `protobuf:"varint,4,opt,name=permissive,proto3" json:"permissive,omitempty"` + Roles []*Node `protobuf:"bytes,5,rep,name=roles,proto3" json:"roles,omitempty"` + Qual *Node `protobuf:"bytes,6,opt,name=qual,proto3" json:"qual,omitempty"` + WithCheck *Node `protobuf:"bytes,7,opt,name=with_check,proto3" json:"with_check,omitempty"` } -func (x *ColumnRef) Reset() { - *x = ColumnRef{} +func (x *CreatePolicyStmt) Reset() { + *x = CreatePolicyStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[183] + mi := &file_pg_query_proto_msgTypes[167] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ColumnRef) String() string { +func (x *CreatePolicyStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ColumnRef) ProtoMessage() {} +func (*CreatePolicyStmt) ProtoMessage() {} -func (x *ColumnRef) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[183] +func (x *CreatePolicyStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[167] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23120,115 +23428,89 @@ func (x *ColumnRef) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ColumnRef.ProtoReflect.Descriptor instead. -func (*ColumnRef) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{183} +// Deprecated: Use CreatePolicyStmt.ProtoReflect.Descriptor instead. +func (*CreatePolicyStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{167} } -func (x *ColumnRef) GetFields() []*Node { +func (x *CreatePolicyStmt) GetPolicyName() string { if x != nil { - return x.Fields + return x.PolicyName } - return nil + return "" } -func (x *ColumnRef) GetLocation() int32 { +func (x *CreatePolicyStmt) GetTable() *RangeVar { if x != nil { - return x.Location + return x.Table } - return 0 -} - -type ParamRef struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Number int32 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"` - Location int32 `protobuf:"varint,2,opt,name=location,proto3" json:"location,omitempty"` + return nil } -func (x *ParamRef) Reset() { - *x = ParamRef{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[184] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *CreatePolicyStmt) GetCmdName() string { + if x != nil { + return x.CmdName } + return "" } -func (x *ParamRef) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ParamRef) ProtoMessage() {} - -func (x *ParamRef) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[184] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *CreatePolicyStmt) GetPermissive() bool { + if x != nil { + return x.Permissive } - return mi.MessageOf(x) + return false } -// Deprecated: Use ParamRef.ProtoReflect.Descriptor instead. -func (*ParamRef) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{184} +func (x *CreatePolicyStmt) GetRoles() []*Node { + if x != nil { + return x.Roles + } + return nil } -func (x *ParamRef) GetNumber() int32 { +func (x *CreatePolicyStmt) GetQual() *Node { if x != nil { - return x.Number + return x.Qual } - return 0 + return nil } -func (x *ParamRef) GetLocation() int32 { +func (x *CreatePolicyStmt) GetWithCheck() *Node { if x != nil { - return x.Location + return x.WithCheck } - return 0 + return nil } -type FuncCall struct { +type AlterPolicyStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Funcname []*Node `protobuf:"bytes,1,rep,name=funcname,proto3" json:"funcname,omitempty"` - Args []*Node `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"` - AggOrder []*Node `protobuf:"bytes,3,rep,name=agg_order,proto3" json:"agg_order,omitempty"` - AggFilter *Node `protobuf:"bytes,4,opt,name=agg_filter,proto3" json:"agg_filter,omitempty"` - Over *WindowDef `protobuf:"bytes,5,opt,name=over,proto3" json:"over,omitempty"` - AggWithinGroup bool `protobuf:"varint,6,opt,name=agg_within_group,proto3" json:"agg_within_group,omitempty"` - AggStar bool `protobuf:"varint,7,opt,name=agg_star,proto3" json:"agg_star,omitempty"` - AggDistinct bool `protobuf:"varint,8,opt,name=agg_distinct,proto3" json:"agg_distinct,omitempty"` - FuncVariadic bool `protobuf:"varint,9,opt,name=func_variadic,proto3" json:"func_variadic,omitempty"` - Funcformat CoercionForm `protobuf:"varint,10,opt,name=funcformat,proto3,enum=pg_query.CoercionForm" json:"funcformat,omitempty"` - Location int32 `protobuf:"varint,11,opt,name=location,proto3" json:"location,omitempty"` + PolicyName string `protobuf:"bytes,1,opt,name=policy_name,proto3" json:"policy_name,omitempty"` + Table *RangeVar `protobuf:"bytes,2,opt,name=table,proto3" json:"table,omitempty"` + Roles []*Node `protobuf:"bytes,3,rep,name=roles,proto3" json:"roles,omitempty"` + Qual *Node `protobuf:"bytes,4,opt,name=qual,proto3" json:"qual,omitempty"` + WithCheck *Node `protobuf:"bytes,5,opt,name=with_check,proto3" json:"with_check,omitempty"` } -func (x *FuncCall) Reset() { - *x = FuncCall{} +func (x *AlterPolicyStmt) Reset() { + *x = AlterPolicyStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[185] + mi := &file_pg_query_proto_msgTypes[168] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *FuncCall) String() string { +func (x *AlterPolicyStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*FuncCall) ProtoMessage() {} +func (*AlterPolicyStmt) ProtoMessage() {} -func (x *FuncCall) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[185] +func (x *AlterPolicyStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[168] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23239,111 +23521,73 @@ func (x *FuncCall) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use FuncCall.ProtoReflect.Descriptor instead. -func (*FuncCall) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{185} +// Deprecated: Use AlterPolicyStmt.ProtoReflect.Descriptor instead. +func (*AlterPolicyStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{168} } -func (x *FuncCall) GetFuncname() []*Node { +func (x *AlterPolicyStmt) GetPolicyName() string { if x != nil { - return x.Funcname + return x.PolicyName } - return nil + return "" } -func (x *FuncCall) GetArgs() []*Node { +func (x *AlterPolicyStmt) GetTable() *RangeVar { if x != nil { - return x.Args + return x.Table } return nil } -func (x *FuncCall) GetAggOrder() []*Node { +func (x *AlterPolicyStmt) GetRoles() []*Node { if x != nil { - return x.AggOrder + return x.Roles } return nil } -func (x *FuncCall) GetAggFilter() *Node { +func (x *AlterPolicyStmt) GetQual() *Node { if x != nil { - return x.AggFilter + return x.Qual } return nil } -func (x *FuncCall) GetOver() *WindowDef { +func (x *AlterPolicyStmt) GetWithCheck() *Node { if x != nil { - return x.Over + return x.WithCheck } return nil } -func (x *FuncCall) GetAggWithinGroup() bool { - if x != nil { - return x.AggWithinGroup - } - return false -} - -func (x *FuncCall) GetAggStar() bool { - if x != nil { - return x.AggStar - } - return false -} - -func (x *FuncCall) GetAggDistinct() bool { - if x != nil { - return x.AggDistinct - } - return false -} - -func (x *FuncCall) GetFuncVariadic() bool { - if x != nil { - return x.FuncVariadic - } - return false -} - -func (x *FuncCall) GetFuncformat() CoercionForm { - if x != nil { - return x.Funcformat - } - return CoercionForm_COERCION_FORM_UNDEFINED -} - -func (x *FuncCall) GetLocation() int32 { - if x != nil { - return x.Location - } - return 0 -} - -type A_Star struct { +type CreateAmStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + Amname string `protobuf:"bytes,1,opt,name=amname,proto3" json:"amname,omitempty"` + HandlerName []*Node `protobuf:"bytes,2,rep,name=handler_name,proto3" json:"handler_name,omitempty"` + Amtype string `protobuf:"bytes,3,opt,name=amtype,proto3" json:"amtype,omitempty"` } -func (x *A_Star) Reset() { - *x = A_Star{} +func (x *CreateAmStmt) Reset() { + *x = CreateAmStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[186] + mi := &file_pg_query_proto_msgTypes[169] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *A_Star) String() string { +func (x *CreateAmStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*A_Star) ProtoMessage() {} +func (*CreateAmStmt) ProtoMessage() {} -func (x *A_Star) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[186] +func (x *CreateAmStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[169] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23354,38 +23598,71 @@ func (x *A_Star) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use A_Star.ProtoReflect.Descriptor instead. -func (*A_Star) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{186} +// Deprecated: Use CreateAmStmt.ProtoReflect.Descriptor instead. +func (*CreateAmStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{169} } -type A_Indices struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - IsSlice bool `protobuf:"varint,1,opt,name=is_slice,proto3" json:"is_slice,omitempty"` - Lidx *Node `protobuf:"bytes,2,opt,name=lidx,proto3" json:"lidx,omitempty"` - Uidx *Node `protobuf:"bytes,3,opt,name=uidx,proto3" json:"uidx,omitempty"` +func (x *CreateAmStmt) GetAmname() string { + if x != nil { + return x.Amname + } + return "" } -func (x *A_Indices) Reset() { - *x = A_Indices{} +func (x *CreateAmStmt) GetHandlerName() []*Node { + if x != nil { + return x.HandlerName + } + return nil +} + +func (x *CreateAmStmt) GetAmtype() string { + if x != nil { + return x.Amtype + } + return "" +} + +type CreateTrigStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Replace bool `protobuf:"varint,1,opt,name=replace,proto3" json:"replace,omitempty"` + Isconstraint bool `protobuf:"varint,2,opt,name=isconstraint,proto3" json:"isconstraint,omitempty"` + Trigname string `protobuf:"bytes,3,opt,name=trigname,proto3" json:"trigname,omitempty"` + Relation *RangeVar `protobuf:"bytes,4,opt,name=relation,proto3" json:"relation,omitempty"` + Funcname []*Node `protobuf:"bytes,5,rep,name=funcname,proto3" json:"funcname,omitempty"` + Args []*Node `protobuf:"bytes,6,rep,name=args,proto3" json:"args,omitempty"` + Row bool `protobuf:"varint,7,opt,name=row,proto3" json:"row,omitempty"` + Timing int32 `protobuf:"varint,8,opt,name=timing,proto3" json:"timing,omitempty"` + Events int32 `protobuf:"varint,9,opt,name=events,proto3" json:"events,omitempty"` + Columns []*Node `protobuf:"bytes,10,rep,name=columns,proto3" json:"columns,omitempty"` + WhenClause *Node `protobuf:"bytes,11,opt,name=when_clause,json=whenClause,proto3" json:"when_clause,omitempty"` + TransitionRels []*Node `protobuf:"bytes,12,rep,name=transition_rels,json=transitionRels,proto3" json:"transition_rels,omitempty"` + Deferrable bool `protobuf:"varint,13,opt,name=deferrable,proto3" json:"deferrable,omitempty"` + Initdeferred bool `protobuf:"varint,14,opt,name=initdeferred,proto3" json:"initdeferred,omitempty"` + Constrrel *RangeVar `protobuf:"bytes,15,opt,name=constrrel,proto3" json:"constrrel,omitempty"` +} + +func (x *CreateTrigStmt) Reset() { + *x = CreateTrigStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[187] + mi := &file_pg_query_proto_msgTypes[170] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *A_Indices) String() string { +func (x *CreateTrigStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*A_Indices) ProtoMessage() {} +func (*CreateTrigStmt) ProtoMessage() {} -func (x *A_Indices) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[187] +func (x *CreateTrigStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[170] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23396,113 +23673,144 @@ func (x *A_Indices) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use A_Indices.ProtoReflect.Descriptor instead. -func (*A_Indices) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{187} +// Deprecated: Use CreateTrigStmt.ProtoReflect.Descriptor instead. +func (*CreateTrigStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{170} } -func (x *A_Indices) GetIsSlice() bool { +func (x *CreateTrigStmt) GetReplace() bool { if x != nil { - return x.IsSlice + return x.Replace } return false } -func (x *A_Indices) GetLidx() *Node { +func (x *CreateTrigStmt) GetIsconstraint() bool { if x != nil { - return x.Lidx + return x.Isconstraint } - return nil + return false } -func (x *A_Indices) GetUidx() *Node { +func (x *CreateTrigStmt) GetTrigname() string { if x != nil { - return x.Uidx + return x.Trigname + } + return "" +} + +func (x *CreateTrigStmt) GetRelation() *RangeVar { + if x != nil { + return x.Relation } return nil } -type A_Indirection struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +func (x *CreateTrigStmt) GetFuncname() []*Node { + if x != nil { + return x.Funcname + } + return nil +} - Arg *Node `protobuf:"bytes,1,opt,name=arg,proto3" json:"arg,omitempty"` - Indirection []*Node `protobuf:"bytes,2,rep,name=indirection,proto3" json:"indirection,omitempty"` +func (x *CreateTrigStmt) GetArgs() []*Node { + if x != nil { + return x.Args + } + return nil } -func (x *A_Indirection) Reset() { - *x = A_Indirection{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[188] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *CreateTrigStmt) GetRow() bool { + if x != nil { + return x.Row } + return false } -func (x *A_Indirection) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *CreateTrigStmt) GetTiming() int32 { + if x != nil { + return x.Timing + } + return 0 } -func (*A_Indirection) ProtoMessage() {} +func (x *CreateTrigStmt) GetEvents() int32 { + if x != nil { + return x.Events + } + return 0 +} -func (x *A_Indirection) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[188] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *CreateTrigStmt) GetColumns() []*Node { + if x != nil { + return x.Columns } - return mi.MessageOf(x) + return nil } -// Deprecated: Use A_Indirection.ProtoReflect.Descriptor instead. -func (*A_Indirection) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{188} +func (x *CreateTrigStmt) GetWhenClause() *Node { + if x != nil { + return x.WhenClause + } + return nil } -func (x *A_Indirection) GetArg() *Node { +func (x *CreateTrigStmt) GetTransitionRels() []*Node { if x != nil { - return x.Arg + return x.TransitionRels } return nil } -func (x *A_Indirection) GetIndirection() []*Node { +func (x *CreateTrigStmt) GetDeferrable() bool { if x != nil { - return x.Indirection + return x.Deferrable + } + return false +} + +func (x *CreateTrigStmt) GetInitdeferred() bool { + if x != nil { + return x.Initdeferred + } + return false +} + +func (x *CreateTrigStmt) GetConstrrel() *RangeVar { + if x != nil { + return x.Constrrel } return nil } -type A_ArrayExpr struct { +type CreateEventTrigStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Elements []*Node `protobuf:"bytes,1,rep,name=elements,proto3" json:"elements,omitempty"` - Location int32 `protobuf:"varint,2,opt,name=location,proto3" json:"location,omitempty"` + Trigname string `protobuf:"bytes,1,opt,name=trigname,proto3" json:"trigname,omitempty"` + Eventname string `protobuf:"bytes,2,opt,name=eventname,proto3" json:"eventname,omitempty"` + Whenclause []*Node `protobuf:"bytes,3,rep,name=whenclause,proto3" json:"whenclause,omitempty"` + Funcname []*Node `protobuf:"bytes,4,rep,name=funcname,proto3" json:"funcname,omitempty"` } -func (x *A_ArrayExpr) Reset() { - *x = A_ArrayExpr{} +func (x *CreateEventTrigStmt) Reset() { + *x = CreateEventTrigStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[189] + mi := &file_pg_query_proto_msgTypes[171] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *A_ArrayExpr) String() string { +func (x *CreateEventTrigStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*A_ArrayExpr) ProtoMessage() {} +func (*CreateEventTrigStmt) ProtoMessage() {} -func (x *A_ArrayExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[189] +func (x *CreateEventTrigStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[171] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23513,53 +23821,65 @@ func (x *A_ArrayExpr) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use A_ArrayExpr.ProtoReflect.Descriptor instead. -func (*A_ArrayExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{189} +// Deprecated: Use CreateEventTrigStmt.ProtoReflect.Descriptor instead. +func (*CreateEventTrigStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{171} } -func (x *A_ArrayExpr) GetElements() []*Node { +func (x *CreateEventTrigStmt) GetTrigname() string { if x != nil { - return x.Elements + return x.Trigname + } + return "" +} + +func (x *CreateEventTrigStmt) GetEventname() string { + if x != nil { + return x.Eventname + } + return "" +} + +func (x *CreateEventTrigStmt) GetWhenclause() []*Node { + if x != nil { + return x.Whenclause } return nil } -func (x *A_ArrayExpr) GetLocation() int32 { +func (x *CreateEventTrigStmt) GetFuncname() []*Node { if x != nil { - return x.Location + return x.Funcname } - return 0 + return nil } -type ResTarget struct { +type AlterEventTrigStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Indirection []*Node `protobuf:"bytes,2,rep,name=indirection,proto3" json:"indirection,omitempty"` - Val *Node `protobuf:"bytes,3,opt,name=val,proto3" json:"val,omitempty"` - Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` + Trigname string `protobuf:"bytes,1,opt,name=trigname,proto3" json:"trigname,omitempty"` + Tgenabled string `protobuf:"bytes,2,opt,name=tgenabled,proto3" json:"tgenabled,omitempty"` } -func (x *ResTarget) Reset() { - *x = ResTarget{} +func (x *AlterEventTrigStmt) Reset() { + *x = AlterEventTrigStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[190] + mi := &file_pg_query_proto_msgTypes[172] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ResTarget) String() string { +func (x *AlterEventTrigStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ResTarget) ProtoMessage() {} +func (*AlterEventTrigStmt) ProtoMessage() {} -func (x *ResTarget) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[190] +func (x *AlterEventTrigStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[172] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23570,66 +23890,55 @@ func (x *ResTarget) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ResTarget.ProtoReflect.Descriptor instead. -func (*ResTarget) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{190} +// Deprecated: Use AlterEventTrigStmt.ProtoReflect.Descriptor instead. +func (*AlterEventTrigStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{172} } -func (x *ResTarget) GetName() string { +func (x *AlterEventTrigStmt) GetTrigname() string { if x != nil { - return x.Name + return x.Trigname } return "" } -func (x *ResTarget) GetIndirection() []*Node { +func (x *AlterEventTrigStmt) GetTgenabled() string { if x != nil { - return x.Indirection + return x.Tgenabled } - return nil + return "" } -func (x *ResTarget) GetVal() *Node { - if x != nil { - return x.Val - } - return nil -} - -func (x *ResTarget) GetLocation() int32 { - if x != nil { - return x.Location - } - return 0 -} - -type MultiAssignRef struct { +type CreatePLangStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Source *Node `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"` - Colno int32 `protobuf:"varint,2,opt,name=colno,proto3" json:"colno,omitempty"` - Ncolumns int32 `protobuf:"varint,3,opt,name=ncolumns,proto3" json:"ncolumns,omitempty"` + Replace bool `protobuf:"varint,1,opt,name=replace,proto3" json:"replace,omitempty"` + Plname string `protobuf:"bytes,2,opt,name=plname,proto3" json:"plname,omitempty"` + Plhandler []*Node `protobuf:"bytes,3,rep,name=plhandler,proto3" json:"plhandler,omitempty"` + Plinline []*Node `protobuf:"bytes,4,rep,name=plinline,proto3" json:"plinline,omitempty"` + Plvalidator []*Node `protobuf:"bytes,5,rep,name=plvalidator,proto3" json:"plvalidator,omitempty"` + Pltrusted bool `protobuf:"varint,6,opt,name=pltrusted,proto3" json:"pltrusted,omitempty"` } -func (x *MultiAssignRef) Reset() { - *x = MultiAssignRef{} +func (x *CreatePLangStmt) Reset() { + *x = CreatePLangStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[191] + mi := &file_pg_query_proto_msgTypes[173] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *MultiAssignRef) String() string { +func (x *CreatePLangStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*MultiAssignRef) ProtoMessage() {} +func (*CreatePLangStmt) ProtoMessage() {} -func (x *MultiAssignRef) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[191] +func (x *CreatePLangStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[173] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23640,59 +23949,80 @@ func (x *MultiAssignRef) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use MultiAssignRef.ProtoReflect.Descriptor instead. -func (*MultiAssignRef) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{191} +// Deprecated: Use CreatePLangStmt.ProtoReflect.Descriptor instead. +func (*CreatePLangStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{173} } -func (x *MultiAssignRef) GetSource() *Node { +func (x *CreatePLangStmt) GetReplace() bool { if x != nil { - return x.Source + return x.Replace + } + return false +} + +func (x *CreatePLangStmt) GetPlname() string { + if x != nil { + return x.Plname + } + return "" +} + +func (x *CreatePLangStmt) GetPlhandler() []*Node { + if x != nil { + return x.Plhandler } return nil } -func (x *MultiAssignRef) GetColno() int32 { +func (x *CreatePLangStmt) GetPlinline() []*Node { if x != nil { - return x.Colno + return x.Plinline } - return 0 + return nil } -func (x *MultiAssignRef) GetNcolumns() int32 { +func (x *CreatePLangStmt) GetPlvalidator() []*Node { if x != nil { - return x.Ncolumns + return x.Plvalidator } - return 0 + return nil } -type TypeCast struct { +func (x *CreatePLangStmt) GetPltrusted() bool { + if x != nil { + return x.Pltrusted + } + return false +} + +type CreateRoleStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Arg *Node `protobuf:"bytes,1,opt,name=arg,proto3" json:"arg,omitempty"` - TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` + StmtType RoleStmtType `protobuf:"varint,1,opt,name=stmt_type,proto3,enum=pg_query.RoleStmtType" json:"stmt_type,omitempty"` + Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"` + Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` } -func (x *TypeCast) Reset() { - *x = TypeCast{} +func (x *CreateRoleStmt) Reset() { + *x = CreateRoleStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[192] + mi := &file_pg_query_proto_msgTypes[174] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *TypeCast) String() string { +func (x *CreateRoleStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TypeCast) ProtoMessage() {} +func (*CreateRoleStmt) ProtoMessage() {} -func (x *TypeCast) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[192] +func (x *CreateRoleStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[174] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23703,59 +24033,59 @@ func (x *TypeCast) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use TypeCast.ProtoReflect.Descriptor instead. -func (*TypeCast) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{192} +// Deprecated: Use CreateRoleStmt.ProtoReflect.Descriptor instead. +func (*CreateRoleStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{174} } -func (x *TypeCast) GetArg() *Node { +func (x *CreateRoleStmt) GetStmtType() RoleStmtType { if x != nil { - return x.Arg + return x.StmtType } - return nil + return RoleStmtType_ROLE_STMT_TYPE_UNDEFINED } -func (x *TypeCast) GetTypeName() *TypeName { +func (x *CreateRoleStmt) GetRole() string { if x != nil { - return x.TypeName + return x.Role } - return nil + return "" } -func (x *TypeCast) GetLocation() int32 { +func (x *CreateRoleStmt) GetOptions() []*Node { if x != nil { - return x.Location + return x.Options } - return 0 + return nil } -type CollateClause struct { +type AlterRoleStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Arg *Node `protobuf:"bytes,1,opt,name=arg,proto3" json:"arg,omitempty"` - Collname []*Node `protobuf:"bytes,2,rep,name=collname,proto3" json:"collname,omitempty"` - Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` + Role *RoleSpec `protobuf:"bytes,1,opt,name=role,proto3" json:"role,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + Action int32 `protobuf:"varint,3,opt,name=action,proto3" json:"action,omitempty"` } -func (x *CollateClause) Reset() { - *x = CollateClause{} +func (x *AlterRoleStmt) Reset() { + *x = AlterRoleStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[193] + mi := &file_pg_query_proto_msgTypes[175] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CollateClause) String() string { +func (x *AlterRoleStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CollateClause) ProtoMessage() {} +func (*AlterRoleStmt) ProtoMessage() {} -func (x *CollateClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[193] +func (x *AlterRoleStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[175] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23766,61 +24096,59 @@ func (x *CollateClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CollateClause.ProtoReflect.Descriptor instead. -func (*CollateClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{193} +// Deprecated: Use AlterRoleStmt.ProtoReflect.Descriptor instead. +func (*AlterRoleStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{175} } -func (x *CollateClause) GetArg() *Node { +func (x *AlterRoleStmt) GetRole() *RoleSpec { if x != nil { - return x.Arg + return x.Role } return nil } -func (x *CollateClause) GetCollname() []*Node { +func (x *AlterRoleStmt) GetOptions() []*Node { if x != nil { - return x.Collname + return x.Options } return nil } -func (x *CollateClause) GetLocation() int32 { +func (x *AlterRoleStmt) GetAction() int32 { if x != nil { - return x.Location + return x.Action } return 0 } -type SortBy struct { +type AlterRoleSetStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Node *Node `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"` - SortbyDir SortByDir `protobuf:"varint,2,opt,name=sortby_dir,proto3,enum=pg_query.SortByDir" json:"sortby_dir,omitempty"` - SortbyNulls SortByNulls `protobuf:"varint,3,opt,name=sortby_nulls,proto3,enum=pg_query.SortByNulls" json:"sortby_nulls,omitempty"` - UseOp []*Node `protobuf:"bytes,4,rep,name=use_op,json=useOp,proto3" json:"use_op,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + Role *RoleSpec `protobuf:"bytes,1,opt,name=role,proto3" json:"role,omitempty"` + Database string `protobuf:"bytes,2,opt,name=database,proto3" json:"database,omitempty"` + Setstmt *VariableSetStmt `protobuf:"bytes,3,opt,name=setstmt,proto3" json:"setstmt,omitempty"` } -func (x *SortBy) Reset() { - *x = SortBy{} +func (x *AlterRoleSetStmt) Reset() { + *x = AlterRoleSetStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[194] + mi := &file_pg_query_proto_msgTypes[176] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *SortBy) String() string { +func (x *AlterRoleSetStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*SortBy) ProtoMessage() {} +func (*AlterRoleSetStmt) ProtoMessage() {} -func (x *SortBy) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[194] +func (x *AlterRoleSetStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[176] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23831,78 +24159,58 @@ func (x *SortBy) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use SortBy.ProtoReflect.Descriptor instead. -func (*SortBy) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{194} +// Deprecated: Use AlterRoleSetStmt.ProtoReflect.Descriptor instead. +func (*AlterRoleSetStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{176} } -func (x *SortBy) GetNode() *Node { +func (x *AlterRoleSetStmt) GetRole() *RoleSpec { if x != nil { - return x.Node + return x.Role } return nil } -func (x *SortBy) GetSortbyDir() SortByDir { - if x != nil { - return x.SortbyDir - } - return SortByDir_SORT_BY_DIR_UNDEFINED -} - -func (x *SortBy) GetSortbyNulls() SortByNulls { +func (x *AlterRoleSetStmt) GetDatabase() string { if x != nil { - return x.SortbyNulls + return x.Database } - return SortByNulls_SORT_BY_NULLS_UNDEFINED + return "" } -func (x *SortBy) GetUseOp() []*Node { +func (x *AlterRoleSetStmt) GetSetstmt() *VariableSetStmt { if x != nil { - return x.UseOp + return x.Setstmt } return nil } -func (x *SortBy) GetLocation() int32 { - if x != nil { - return x.Location - } - return 0 -} - -type WindowDef struct { +type DropRoleStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Refname string `protobuf:"bytes,2,opt,name=refname,proto3" json:"refname,omitempty"` - PartitionClause []*Node `protobuf:"bytes,3,rep,name=partition_clause,json=partitionClause,proto3" json:"partition_clause,omitempty"` - OrderClause []*Node `protobuf:"bytes,4,rep,name=order_clause,json=orderClause,proto3" json:"order_clause,omitempty"` - FrameOptions int32 `protobuf:"varint,5,opt,name=frame_options,json=frameOptions,proto3" json:"frame_options,omitempty"` - StartOffset *Node `protobuf:"bytes,6,opt,name=start_offset,json=startOffset,proto3" json:"start_offset,omitempty"` - EndOffset *Node `protobuf:"bytes,7,opt,name=end_offset,json=endOffset,proto3" json:"end_offset,omitempty"` - Location int32 `protobuf:"varint,8,opt,name=location,proto3" json:"location,omitempty"` + Roles []*Node `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"` + MissingOk bool `protobuf:"varint,2,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *WindowDef) Reset() { - *x = WindowDef{} +func (x *DropRoleStmt) Reset() { + *x = DropRoleStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[195] + mi := &file_pg_query_proto_msgTypes[177] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *WindowDef) String() string { +func (x *DropRoleStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*WindowDef) ProtoMessage() {} +func (*DropRoleStmt) ProtoMessage() {} -func (x *WindowDef) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[195] +func (x *DropRoleStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[177] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23913,94 +24221,132 @@ func (x *WindowDef) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use WindowDef.ProtoReflect.Descriptor instead. -func (*WindowDef) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{195} -} +// Deprecated: Use DropRoleStmt.ProtoReflect.Descriptor instead. +func (*DropRoleStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{177} +} -func (x *WindowDef) GetName() string { +func (x *DropRoleStmt) GetRoles() []*Node { if x != nil { - return x.Name + return x.Roles } - return "" + return nil } -func (x *WindowDef) GetRefname() string { +func (x *DropRoleStmt) GetMissingOk() bool { if x != nil { - return x.Refname + return x.MissingOk } - return "" + return false } -func (x *WindowDef) GetPartitionClause() []*Node { - if x != nil { - return x.PartitionClause +type CreateSeqStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Sequence *RangeVar `protobuf:"bytes,1,opt,name=sequence,proto3" json:"sequence,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + OwnerId uint32 `protobuf:"varint,3,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` + ForIdentity bool `protobuf:"varint,4,opt,name=for_identity,proto3" json:"for_identity,omitempty"` + IfNotExists bool `protobuf:"varint,5,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` +} + +func (x *CreateSeqStmt) Reset() { + *x = CreateSeqStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[178] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *WindowDef) GetOrderClause() []*Node { +func (x *CreateSeqStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateSeqStmt) ProtoMessage() {} + +func (x *CreateSeqStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[178] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateSeqStmt.ProtoReflect.Descriptor instead. +func (*CreateSeqStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{178} +} + +func (x *CreateSeqStmt) GetSequence() *RangeVar { if x != nil { - return x.OrderClause + return x.Sequence } return nil } -func (x *WindowDef) GetFrameOptions() int32 { +func (x *CreateSeqStmt) GetOptions() []*Node { if x != nil { - return x.FrameOptions + return x.Options } - return 0 + return nil } -func (x *WindowDef) GetStartOffset() *Node { +func (x *CreateSeqStmt) GetOwnerId() uint32 { if x != nil { - return x.StartOffset + return x.OwnerId } - return nil + return 0 } -func (x *WindowDef) GetEndOffset() *Node { +func (x *CreateSeqStmt) GetForIdentity() bool { if x != nil { - return x.EndOffset + return x.ForIdentity } - return nil + return false } -func (x *WindowDef) GetLocation() int32 { +func (x *CreateSeqStmt) GetIfNotExists() bool { if x != nil { - return x.Location + return x.IfNotExists } - return 0 + return false } -type RangeSubselect struct { +type AlterSeqStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Lateral bool `protobuf:"varint,1,opt,name=lateral,proto3" json:"lateral,omitempty"` - Subquery *Node `protobuf:"bytes,2,opt,name=subquery,proto3" json:"subquery,omitempty"` - Alias *Alias `protobuf:"bytes,3,opt,name=alias,proto3" json:"alias,omitempty"` + Sequence *RangeVar `protobuf:"bytes,1,opt,name=sequence,proto3" json:"sequence,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + ForIdentity bool `protobuf:"varint,3,opt,name=for_identity,proto3" json:"for_identity,omitempty"` + MissingOk bool `protobuf:"varint,4,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *RangeSubselect) Reset() { - *x = RangeSubselect{} +func (x *AlterSeqStmt) Reset() { + *x = AlterSeqStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[196] + mi := &file_pg_query_proto_msgTypes[179] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RangeSubselect) String() string { +func (x *AlterSeqStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RangeSubselect) ProtoMessage() {} +func (*AlterSeqStmt) ProtoMessage() {} -func (x *RangeSubselect) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[196] +func (x *AlterSeqStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[179] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24011,62 +24357,70 @@ func (x *RangeSubselect) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RangeSubselect.ProtoReflect.Descriptor instead. -func (*RangeSubselect) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{196} +// Deprecated: Use AlterSeqStmt.ProtoReflect.Descriptor instead. +func (*AlterSeqStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{179} } -func (x *RangeSubselect) GetLateral() bool { +func (x *AlterSeqStmt) GetSequence() *RangeVar { if x != nil { - return x.Lateral + return x.Sequence } - return false + return nil } -func (x *RangeSubselect) GetSubquery() *Node { +func (x *AlterSeqStmt) GetOptions() []*Node { if x != nil { - return x.Subquery + return x.Options } return nil } -func (x *RangeSubselect) GetAlias() *Alias { +func (x *AlterSeqStmt) GetForIdentity() bool { if x != nil { - return x.Alias + return x.ForIdentity } - return nil + return false } -type RangeFunction struct { +func (x *AlterSeqStmt) GetMissingOk() bool { + if x != nil { + return x.MissingOk + } + return false +} + +type DefineStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Lateral bool `protobuf:"varint,1,opt,name=lateral,proto3" json:"lateral,omitempty"` - Ordinality bool `protobuf:"varint,2,opt,name=ordinality,proto3" json:"ordinality,omitempty"` - IsRowsfrom bool `protobuf:"varint,3,opt,name=is_rowsfrom,proto3" json:"is_rowsfrom,omitempty"` - Functions []*Node `protobuf:"bytes,4,rep,name=functions,proto3" json:"functions,omitempty"` - Alias *Alias `protobuf:"bytes,5,opt,name=alias,proto3" json:"alias,omitempty"` - Coldeflist []*Node `protobuf:"bytes,6,rep,name=coldeflist,proto3" json:"coldeflist,omitempty"` + Kind ObjectType `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.ObjectType" json:"kind,omitempty"` + Oldstyle bool `protobuf:"varint,2,opt,name=oldstyle,proto3" json:"oldstyle,omitempty"` + Defnames []*Node `protobuf:"bytes,3,rep,name=defnames,proto3" json:"defnames,omitempty"` + Args []*Node `protobuf:"bytes,4,rep,name=args,proto3" json:"args,omitempty"` + Definition []*Node `protobuf:"bytes,5,rep,name=definition,proto3" json:"definition,omitempty"` + IfNotExists bool `protobuf:"varint,6,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` + Replace bool `protobuf:"varint,7,opt,name=replace,proto3" json:"replace,omitempty"` } -func (x *RangeFunction) Reset() { - *x = RangeFunction{} +func (x *DefineStmt) Reset() { + *x = DefineStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[197] + mi := &file_pg_query_proto_msgTypes[180] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RangeFunction) String() string { +func (x *DefineStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RangeFunction) ProtoMessage() {} +func (*DefineStmt) ProtoMessage() {} -func (x *RangeFunction) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[197] +func (x *DefineStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[180] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24077,82 +24431,88 @@ func (x *RangeFunction) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RangeFunction.ProtoReflect.Descriptor instead. -func (*RangeFunction) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{197} +// Deprecated: Use DefineStmt.ProtoReflect.Descriptor instead. +func (*DefineStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{180} } -func (x *RangeFunction) GetLateral() bool { +func (x *DefineStmt) GetKind() ObjectType { if x != nil { - return x.Lateral + return x.Kind } - return false + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *RangeFunction) GetOrdinality() bool { +func (x *DefineStmt) GetOldstyle() bool { if x != nil { - return x.Ordinality + return x.Oldstyle } return false } -func (x *RangeFunction) GetIsRowsfrom() bool { +func (x *DefineStmt) GetDefnames() []*Node { if x != nil { - return x.IsRowsfrom + return x.Defnames } - return false + return nil } -func (x *RangeFunction) GetFunctions() []*Node { +func (x *DefineStmt) GetArgs() []*Node { if x != nil { - return x.Functions + return x.Args } return nil } -func (x *RangeFunction) GetAlias() *Alias { +func (x *DefineStmt) GetDefinition() []*Node { if x != nil { - return x.Alias + return x.Definition } return nil } -func (x *RangeFunction) GetColdeflist() []*Node { +func (x *DefineStmt) GetIfNotExists() bool { if x != nil { - return x.Coldeflist + return x.IfNotExists } - return nil + return false } -type RangeTableSample struct { +func (x *DefineStmt) GetReplace() bool { + if x != nil { + return x.Replace + } + return false +} + +type CreateDomainStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relation *Node `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - Method []*Node `protobuf:"bytes,2,rep,name=method,proto3" json:"method,omitempty"` - Args []*Node `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` - Repeatable *Node `protobuf:"bytes,4,opt,name=repeatable,proto3" json:"repeatable,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + Domainname []*Node `protobuf:"bytes,1,rep,name=domainname,proto3" json:"domainname,omitempty"` + TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + CollClause *CollateClause `protobuf:"bytes,3,opt,name=coll_clause,json=collClause,proto3" json:"coll_clause,omitempty"` + Constraints []*Node `protobuf:"bytes,4,rep,name=constraints,proto3" json:"constraints,omitempty"` } -func (x *RangeTableSample) Reset() { - *x = RangeTableSample{} +func (x *CreateDomainStmt) Reset() { + *x = CreateDomainStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[198] + mi := &file_pg_query_proto_msgTypes[181] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RangeTableSample) String() string { +func (x *CreateDomainStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RangeTableSample) ProtoMessage() {} +func (*CreateDomainStmt) ProtoMessage() {} -func (x *RangeTableSample) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[198] +func (x *CreateDomainStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[181] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24163,77 +24523,69 @@ func (x *RangeTableSample) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RangeTableSample.ProtoReflect.Descriptor instead. -func (*RangeTableSample) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{198} +// Deprecated: Use CreateDomainStmt.ProtoReflect.Descriptor instead. +func (*CreateDomainStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{181} } -func (x *RangeTableSample) GetRelation() *Node { +func (x *CreateDomainStmt) GetDomainname() []*Node { if x != nil { - return x.Relation + return x.Domainname } return nil } -func (x *RangeTableSample) GetMethod() []*Node { +func (x *CreateDomainStmt) GetTypeName() *TypeName { if x != nil { - return x.Method + return x.TypeName } return nil } -func (x *RangeTableSample) GetArgs() []*Node { +func (x *CreateDomainStmt) GetCollClause() *CollateClause { if x != nil { - return x.Args + return x.CollClause } return nil } -func (x *RangeTableSample) GetRepeatable() *Node { +func (x *CreateDomainStmt) GetConstraints() []*Node { if x != nil { - return x.Repeatable + return x.Constraints } return nil } -func (x *RangeTableSample) GetLocation() int32 { - if x != nil { - return x.Location - } - return 0 -} - -type RangeTableFunc struct { +type CreateOpClassStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Lateral bool `protobuf:"varint,1,opt,name=lateral,proto3" json:"lateral,omitempty"` - Docexpr *Node `protobuf:"bytes,2,opt,name=docexpr,proto3" json:"docexpr,omitempty"` - Rowexpr *Node `protobuf:"bytes,3,opt,name=rowexpr,proto3" json:"rowexpr,omitempty"` - Namespaces []*Node `protobuf:"bytes,4,rep,name=namespaces,proto3" json:"namespaces,omitempty"` - Columns []*Node `protobuf:"bytes,5,rep,name=columns,proto3" json:"columns,omitempty"` - Alias *Alias `protobuf:"bytes,6,opt,name=alias,proto3" json:"alias,omitempty"` - Location int32 `protobuf:"varint,7,opt,name=location,proto3" json:"location,omitempty"` + Opclassname []*Node `protobuf:"bytes,1,rep,name=opclassname,proto3" json:"opclassname,omitempty"` + Opfamilyname []*Node `protobuf:"bytes,2,rep,name=opfamilyname,proto3" json:"opfamilyname,omitempty"` + Amname string `protobuf:"bytes,3,opt,name=amname,proto3" json:"amname,omitempty"` + Datatype *TypeName `protobuf:"bytes,4,opt,name=datatype,proto3" json:"datatype,omitempty"` + Items []*Node `protobuf:"bytes,5,rep,name=items,proto3" json:"items,omitempty"` + IsDefault bool `protobuf:"varint,6,opt,name=is_default,json=isDefault,proto3" json:"is_default,omitempty"` } -func (x *RangeTableFunc) Reset() { - *x = RangeTableFunc{} +func (x *CreateOpClassStmt) Reset() { + *x = CreateOpClassStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[199] + mi := &file_pg_query_proto_msgTypes[182] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RangeTableFunc) String() string { +func (x *CreateOpClassStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RangeTableFunc) ProtoMessage() {} +func (*CreateOpClassStmt) ProtoMessage() {} -func (x *RangeTableFunc) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[199] +func (x *CreateOpClassStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[182] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24244,91 +24596,83 @@ func (x *RangeTableFunc) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RangeTableFunc.ProtoReflect.Descriptor instead. -func (*RangeTableFunc) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{199} -} - -func (x *RangeTableFunc) GetLateral() bool { - if x != nil { - return x.Lateral - } - return false +// Deprecated: Use CreateOpClassStmt.ProtoReflect.Descriptor instead. +func (*CreateOpClassStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{182} } -func (x *RangeTableFunc) GetDocexpr() *Node { +func (x *CreateOpClassStmt) GetOpclassname() []*Node { if x != nil { - return x.Docexpr + return x.Opclassname } return nil } -func (x *RangeTableFunc) GetRowexpr() *Node { +func (x *CreateOpClassStmt) GetOpfamilyname() []*Node { if x != nil { - return x.Rowexpr + return x.Opfamilyname } return nil } -func (x *RangeTableFunc) GetNamespaces() []*Node { +func (x *CreateOpClassStmt) GetAmname() string { if x != nil { - return x.Namespaces + return x.Amname } - return nil + return "" } -func (x *RangeTableFunc) GetColumns() []*Node { +func (x *CreateOpClassStmt) GetDatatype() *TypeName { if x != nil { - return x.Columns + return x.Datatype } return nil } -func (x *RangeTableFunc) GetAlias() *Alias { +func (x *CreateOpClassStmt) GetItems() []*Node { if x != nil { - return x.Alias + return x.Items } return nil } -func (x *RangeTableFunc) GetLocation() int32 { +func (x *CreateOpClassStmt) GetIsDefault() bool { if x != nil { - return x.Location + return x.IsDefault } - return 0 + return false } -type RangeTableFuncCol struct { +type CreateOpClassItem struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Colname string `protobuf:"bytes,1,opt,name=colname,proto3" json:"colname,omitempty"` - TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - ForOrdinality bool `protobuf:"varint,3,opt,name=for_ordinality,proto3" json:"for_ordinality,omitempty"` - IsNotNull bool `protobuf:"varint,4,opt,name=is_not_null,proto3" json:"is_not_null,omitempty"` - Colexpr *Node `protobuf:"bytes,5,opt,name=colexpr,proto3" json:"colexpr,omitempty"` - Coldefexpr *Node `protobuf:"bytes,6,opt,name=coldefexpr,proto3" json:"coldefexpr,omitempty"` - Location int32 `protobuf:"varint,7,opt,name=location,proto3" json:"location,omitempty"` + Itemtype int32 `protobuf:"varint,1,opt,name=itemtype,proto3" json:"itemtype,omitempty"` + Name *ObjectWithArgs `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Number int32 `protobuf:"varint,3,opt,name=number,proto3" json:"number,omitempty"` + OrderFamily []*Node `protobuf:"bytes,4,rep,name=order_family,proto3" json:"order_family,omitempty"` + ClassArgs []*Node `protobuf:"bytes,5,rep,name=class_args,proto3" json:"class_args,omitempty"` + Storedtype *TypeName `protobuf:"bytes,6,opt,name=storedtype,proto3" json:"storedtype,omitempty"` } -func (x *RangeTableFuncCol) Reset() { - *x = RangeTableFuncCol{} +func (x *CreateOpClassItem) Reset() { + *x = CreateOpClassItem{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[200] + mi := &file_pg_query_proto_msgTypes[183] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RangeTableFuncCol) String() string { +func (x *CreateOpClassItem) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RangeTableFuncCol) ProtoMessage() {} +func (*CreateOpClassItem) ProtoMessage() {} -func (x *RangeTableFuncCol) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[200] +func (x *CreateOpClassItem) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[183] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24339,92 +24683,79 @@ func (x *RangeTableFuncCol) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RangeTableFuncCol.ProtoReflect.Descriptor instead. -func (*RangeTableFuncCol) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{200} +// Deprecated: Use CreateOpClassItem.ProtoReflect.Descriptor instead. +func (*CreateOpClassItem) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{183} } -func (x *RangeTableFuncCol) GetColname() string { +func (x *CreateOpClassItem) GetItemtype() int32 { if x != nil { - return x.Colname + return x.Itemtype } - return "" + return 0 } -func (x *RangeTableFuncCol) GetTypeName() *TypeName { +func (x *CreateOpClassItem) GetName() *ObjectWithArgs { if x != nil { - return x.TypeName + return x.Name } return nil } -func (x *RangeTableFuncCol) GetForOrdinality() bool { - if x != nil { - return x.ForOrdinality - } - return false -} - -func (x *RangeTableFuncCol) GetIsNotNull() bool { +func (x *CreateOpClassItem) GetNumber() int32 { if x != nil { - return x.IsNotNull + return x.Number } - return false + return 0 } -func (x *RangeTableFuncCol) GetColexpr() *Node { +func (x *CreateOpClassItem) GetOrderFamily() []*Node { if x != nil { - return x.Colexpr + return x.OrderFamily } return nil } -func (x *RangeTableFuncCol) GetColdefexpr() *Node { +func (x *CreateOpClassItem) GetClassArgs() []*Node { if x != nil { - return x.Coldefexpr + return x.ClassArgs } return nil } -func (x *RangeTableFuncCol) GetLocation() int32 { +func (x *CreateOpClassItem) GetStoredtype() *TypeName { if x != nil { - return x.Location + return x.Storedtype } - return 0 + return nil } -type TypeName struct { +type CreateOpFamilyStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Names []*Node `protobuf:"bytes,1,rep,name=names,proto3" json:"names,omitempty"` - TypeOid uint32 `protobuf:"varint,2,opt,name=type_oid,json=typeOid,proto3" json:"type_oid,omitempty"` - Setof bool `protobuf:"varint,3,opt,name=setof,proto3" json:"setof,omitempty"` - PctType bool `protobuf:"varint,4,opt,name=pct_type,proto3" json:"pct_type,omitempty"` - Typmods []*Node `protobuf:"bytes,5,rep,name=typmods,proto3" json:"typmods,omitempty"` - Typemod int32 `protobuf:"varint,6,opt,name=typemod,proto3" json:"typemod,omitempty"` - ArrayBounds []*Node `protobuf:"bytes,7,rep,name=array_bounds,json=arrayBounds,proto3" json:"array_bounds,omitempty"` - Location int32 `protobuf:"varint,8,opt,name=location,proto3" json:"location,omitempty"` + Opfamilyname []*Node `protobuf:"bytes,1,rep,name=opfamilyname,proto3" json:"opfamilyname,omitempty"` + Amname string `protobuf:"bytes,2,opt,name=amname,proto3" json:"amname,omitempty"` } -func (x *TypeName) Reset() { - *x = TypeName{} +func (x *CreateOpFamilyStmt) Reset() { + *x = CreateOpFamilyStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[201] + mi := &file_pg_query_proto_msgTypes[184] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *TypeName) String() string { +func (x *CreateOpFamilyStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TypeName) ProtoMessage() {} +func (*CreateOpFamilyStmt) ProtoMessage() {} -func (x *TypeName) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[201] +func (x *CreateOpFamilyStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[184] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24435,109 +24766,125 @@ func (x *TypeName) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use TypeName.ProtoReflect.Descriptor instead. -func (*TypeName) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{201} +// Deprecated: Use CreateOpFamilyStmt.ProtoReflect.Descriptor instead. +func (*CreateOpFamilyStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{184} } -func (x *TypeName) GetNames() []*Node { +func (x *CreateOpFamilyStmt) GetOpfamilyname() []*Node { if x != nil { - return x.Names + return x.Opfamilyname } return nil } -func (x *TypeName) GetTypeOid() uint32 { +func (x *CreateOpFamilyStmt) GetAmname() string { if x != nil { - return x.TypeOid + return x.Amname } - return 0 + return "" } -func (x *TypeName) GetSetof() bool { - if x != nil { - return x.Setof - } - return false +type AlterOpFamilyStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Opfamilyname []*Node `protobuf:"bytes,1,rep,name=opfamilyname,proto3" json:"opfamilyname,omitempty"` + Amname string `protobuf:"bytes,2,opt,name=amname,proto3" json:"amname,omitempty"` + IsDrop bool `protobuf:"varint,3,opt,name=is_drop,json=isDrop,proto3" json:"is_drop,omitempty"` + Items []*Node `protobuf:"bytes,4,rep,name=items,proto3" json:"items,omitempty"` } -func (x *TypeName) GetPctType() bool { - if x != nil { - return x.PctType +func (x *AlterOpFamilyStmt) Reset() { + *x = AlterOpFamilyStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[185] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return false } -func (x *TypeName) GetTypmods() []*Node { - if x != nil { - return x.Typmods - } - return nil +func (x *AlterOpFamilyStmt) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *TypeName) GetTypemod() int32 { - if x != nil { - return x.Typemod +func (*AlterOpFamilyStmt) ProtoMessage() {} + +func (x *AlterOpFamilyStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[185] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return 0 + return mi.MessageOf(x) } -func (x *TypeName) GetArrayBounds() []*Node { +// Deprecated: Use AlterOpFamilyStmt.ProtoReflect.Descriptor instead. +func (*AlterOpFamilyStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{185} +} + +func (x *AlterOpFamilyStmt) GetOpfamilyname() []*Node { if x != nil { - return x.ArrayBounds + return x.Opfamilyname } return nil } -func (x *TypeName) GetLocation() int32 { +func (x *AlterOpFamilyStmt) GetAmname() string { if x != nil { - return x.Location + return x.Amname } - return 0 + return "" } -type ColumnDef struct { +func (x *AlterOpFamilyStmt) GetIsDrop() bool { + if x != nil { + return x.IsDrop + } + return false +} + +func (x *AlterOpFamilyStmt) GetItems() []*Node { + if x != nil { + return x.Items + } + return nil +} + +type DropStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Colname string `protobuf:"bytes,1,opt,name=colname,proto3" json:"colname,omitempty"` - TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - Compression string `protobuf:"bytes,3,opt,name=compression,proto3" json:"compression,omitempty"` - Inhcount int32 `protobuf:"varint,4,opt,name=inhcount,proto3" json:"inhcount,omitempty"` - IsLocal bool `protobuf:"varint,5,opt,name=is_local,proto3" json:"is_local,omitempty"` - IsNotNull bool `protobuf:"varint,6,opt,name=is_not_null,proto3" json:"is_not_null,omitempty"` - IsFromType bool `protobuf:"varint,7,opt,name=is_from_type,proto3" json:"is_from_type,omitempty"` - Storage string `protobuf:"bytes,8,opt,name=storage,proto3" json:"storage,omitempty"` - RawDefault *Node `protobuf:"bytes,9,opt,name=raw_default,proto3" json:"raw_default,omitempty"` - CookedDefault *Node `protobuf:"bytes,10,opt,name=cooked_default,proto3" json:"cooked_default,omitempty"` - Identity string `protobuf:"bytes,11,opt,name=identity,proto3" json:"identity,omitempty"` - IdentitySequence *RangeVar `protobuf:"bytes,12,opt,name=identity_sequence,json=identitySequence,proto3" json:"identity_sequence,omitempty"` - Generated string `protobuf:"bytes,13,opt,name=generated,proto3" json:"generated,omitempty"` - CollClause *CollateClause `protobuf:"bytes,14,opt,name=coll_clause,json=collClause,proto3" json:"coll_clause,omitempty"` - CollOid uint32 `protobuf:"varint,15,opt,name=coll_oid,json=collOid,proto3" json:"coll_oid,omitempty"` - Constraints []*Node `protobuf:"bytes,16,rep,name=constraints,proto3" json:"constraints,omitempty"` - Fdwoptions []*Node `protobuf:"bytes,17,rep,name=fdwoptions,proto3" json:"fdwoptions,omitempty"` - Location int32 `protobuf:"varint,18,opt,name=location,proto3" json:"location,omitempty"` + Objects []*Node `protobuf:"bytes,1,rep,name=objects,proto3" json:"objects,omitempty"` + RemoveType ObjectType `protobuf:"varint,2,opt,name=remove_type,json=removeType,proto3,enum=pg_query.ObjectType" json:"remove_type,omitempty"` + Behavior DropBehavior `protobuf:"varint,3,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` + MissingOk bool `protobuf:"varint,4,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + Concurrent bool `protobuf:"varint,5,opt,name=concurrent,proto3" json:"concurrent,omitempty"` } -func (x *ColumnDef) Reset() { - *x = ColumnDef{} +func (x *DropStmt) Reset() { + *x = DropStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[202] + mi := &file_pg_query_proto_msgTypes[186] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ColumnDef) String() string { +func (x *DropStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ColumnDef) ProtoMessage() {} +func (*DropStmt) ProtoMessage() {} -func (x *ColumnDef) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[202] +func (x *DropStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[186] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24548,169 +24895,200 @@ func (x *ColumnDef) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ColumnDef.ProtoReflect.Descriptor instead. -func (*ColumnDef) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{202} -} - -func (x *ColumnDef) GetColname() string { - if x != nil { - return x.Colname - } - return "" +// Deprecated: Use DropStmt.ProtoReflect.Descriptor instead. +func (*DropStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{186} } -func (x *ColumnDef) GetTypeName() *TypeName { +func (x *DropStmt) GetObjects() []*Node { if x != nil { - return x.TypeName + return x.Objects } return nil } -func (x *ColumnDef) GetCompression() string { +func (x *DropStmt) GetRemoveType() ObjectType { if x != nil { - return x.Compression + return x.RemoveType } - return "" + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *ColumnDef) GetInhcount() int32 { +func (x *DropStmt) GetBehavior() DropBehavior { if x != nil { - return x.Inhcount + return x.Behavior } - return 0 + return DropBehavior_DROP_BEHAVIOR_UNDEFINED } -func (x *ColumnDef) GetIsLocal() bool { +func (x *DropStmt) GetMissingOk() bool { if x != nil { - return x.IsLocal + return x.MissingOk } return false } -func (x *ColumnDef) GetIsNotNull() bool { +func (x *DropStmt) GetConcurrent() bool { if x != nil { - return x.IsNotNull + return x.Concurrent } return false } -func (x *ColumnDef) GetIsFromType() bool { - if x != nil { - return x.IsFromType - } - return false +type TruncateStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Relations []*Node `protobuf:"bytes,1,rep,name=relations,proto3" json:"relations,omitempty"` + RestartSeqs bool `protobuf:"varint,2,opt,name=restart_seqs,proto3" json:"restart_seqs,omitempty"` + Behavior DropBehavior `protobuf:"varint,3,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` } -func (x *ColumnDef) GetStorage() string { - if x != nil { - return x.Storage +func (x *TruncateStmt) Reset() { + *x = TruncateStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[187] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return "" } -func (x *ColumnDef) GetRawDefault() *Node { - if x != nil { - return x.RawDefault +func (x *TruncateStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TruncateStmt) ProtoMessage() {} + +func (x *TruncateStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[187] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *ColumnDef) GetCookedDefault() *Node { +// Deprecated: Use TruncateStmt.ProtoReflect.Descriptor instead. +func (*TruncateStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{187} +} + +func (x *TruncateStmt) GetRelations() []*Node { if x != nil { - return x.CookedDefault + return x.Relations } return nil } -func (x *ColumnDef) GetIdentity() string { +func (x *TruncateStmt) GetRestartSeqs() bool { if x != nil { - return x.Identity + return x.RestartSeqs } - return "" + return false } -func (x *ColumnDef) GetIdentitySequence() *RangeVar { +func (x *TruncateStmt) GetBehavior() DropBehavior { if x != nil { - return x.IdentitySequence + return x.Behavior } - return nil + return DropBehavior_DROP_BEHAVIOR_UNDEFINED } -func (x *ColumnDef) GetGenerated() string { - if x != nil { - return x.Generated - } - return "" +type CommentStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Objtype ObjectType `protobuf:"varint,1,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` + Object *Node `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment,omitempty"` } -func (x *ColumnDef) GetCollClause() *CollateClause { - if x != nil { - return x.CollClause +func (x *CommentStmt) Reset() { + *x = CommentStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[188] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *ColumnDef) GetCollOid() uint32 { - if x != nil { - return x.CollOid +func (x *CommentStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CommentStmt) ProtoMessage() {} + +func (x *CommentStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[188] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return 0 + return mi.MessageOf(x) } -func (x *ColumnDef) GetConstraints() []*Node { +// Deprecated: Use CommentStmt.ProtoReflect.Descriptor instead. +func (*CommentStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{188} +} + +func (x *CommentStmt) GetObjtype() ObjectType { if x != nil { - return x.Constraints + return x.Objtype } - return nil + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *ColumnDef) GetFdwoptions() []*Node { +func (x *CommentStmt) GetObject() *Node { if x != nil { - return x.Fdwoptions + return x.Object } return nil } -func (x *ColumnDef) GetLocation() int32 { +func (x *CommentStmt) GetComment() string { if x != nil { - return x.Location + return x.Comment } - return 0 + return "" } -type IndexElem struct { +type SecLabelStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` - Indexcolname string `protobuf:"bytes,3,opt,name=indexcolname,proto3" json:"indexcolname,omitempty"` - Collation []*Node `protobuf:"bytes,4,rep,name=collation,proto3" json:"collation,omitempty"` - Opclass []*Node `protobuf:"bytes,5,rep,name=opclass,proto3" json:"opclass,omitempty"` - Opclassopts []*Node `protobuf:"bytes,6,rep,name=opclassopts,proto3" json:"opclassopts,omitempty"` - Ordering SortByDir `protobuf:"varint,7,opt,name=ordering,proto3,enum=pg_query.SortByDir" json:"ordering,omitempty"` - NullsOrdering SortByNulls `protobuf:"varint,8,opt,name=nulls_ordering,proto3,enum=pg_query.SortByNulls" json:"nulls_ordering,omitempty"` + Objtype ObjectType `protobuf:"varint,1,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` + Object *Node `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` + Provider string `protobuf:"bytes,3,opt,name=provider,proto3" json:"provider,omitempty"` + Label string `protobuf:"bytes,4,opt,name=label,proto3" json:"label,omitempty"` } -func (x *IndexElem) Reset() { - *x = IndexElem{} +func (x *SecLabelStmt) Reset() { + *x = SecLabelStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[203] + mi := &file_pg_query_proto_msgTypes[189] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *IndexElem) String() string { +func (x *SecLabelStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*IndexElem) ProtoMessage() {} +func (*SecLabelStmt) ProtoMessage() {} -func (x *IndexElem) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[203] +func (x *SecLabelStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[189] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24721,93 +25099,127 @@ func (x *IndexElem) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use IndexElem.ProtoReflect.Descriptor instead. -func (*IndexElem) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{203} +// Deprecated: Use SecLabelStmt.ProtoReflect.Descriptor instead. +func (*SecLabelStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{189} } -func (x *IndexElem) GetName() string { +func (x *SecLabelStmt) GetObjtype() ObjectType { if x != nil { - return x.Name + return x.Objtype } - return "" + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *IndexElem) GetExpr() *Node { +func (x *SecLabelStmt) GetObject() *Node { if x != nil { - return x.Expr + return x.Object } return nil } -func (x *IndexElem) GetIndexcolname() string { +func (x *SecLabelStmt) GetProvider() string { if x != nil { - return x.Indexcolname + return x.Provider } return "" } -func (x *IndexElem) GetCollation() []*Node { +func (x *SecLabelStmt) GetLabel() string { if x != nil { - return x.Collation + return x.Label } - return nil + return "" } -func (x *IndexElem) GetOpclass() []*Node { - if x != nil { - return x.Opclass +type DeclareCursorStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Portalname string `protobuf:"bytes,1,opt,name=portalname,proto3" json:"portalname,omitempty"` + Options int32 `protobuf:"varint,2,opt,name=options,proto3" json:"options,omitempty"` + Query *Node `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"` +} + +func (x *DeclareCursorStmt) Reset() { + *x = DeclareCursorStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[190] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *IndexElem) GetOpclassopts() []*Node { +func (x *DeclareCursorStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeclareCursorStmt) ProtoMessage() {} + +func (x *DeclareCursorStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[190] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeclareCursorStmt.ProtoReflect.Descriptor instead. +func (*DeclareCursorStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{190} +} + +func (x *DeclareCursorStmt) GetPortalname() string { if x != nil { - return x.Opclassopts + return x.Portalname } - return nil + return "" } -func (x *IndexElem) GetOrdering() SortByDir { +func (x *DeclareCursorStmt) GetOptions() int32 { if x != nil { - return x.Ordering + return x.Options } - return SortByDir_SORT_BY_DIR_UNDEFINED + return 0 } -func (x *IndexElem) GetNullsOrdering() SortByNulls { +func (x *DeclareCursorStmt) GetQuery() *Node { if x != nil { - return x.NullsOrdering + return x.Query } - return SortByNulls_SORT_BY_NULLS_UNDEFINED + return nil } -type StatsElem struct { +type ClosePortalStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` + Portalname string `protobuf:"bytes,1,opt,name=portalname,proto3" json:"portalname,omitempty"` } -func (x *StatsElem) Reset() { - *x = StatsElem{} +func (x *ClosePortalStmt) Reset() { + *x = ClosePortalStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[204] + mi := &file_pg_query_proto_msgTypes[191] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *StatsElem) String() string { +func (x *ClosePortalStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*StatsElem) ProtoMessage() {} +func (*ClosePortalStmt) ProtoMessage() {} -func (x *StatsElem) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[204] +func (x *ClosePortalStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[191] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24818,79 +25230,46 @@ func (x *StatsElem) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use StatsElem.ProtoReflect.Descriptor instead. -func (*StatsElem) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{204} +// Deprecated: Use ClosePortalStmt.ProtoReflect.Descriptor instead. +func (*ClosePortalStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{191} } -func (x *StatsElem) GetName() string { +func (x *ClosePortalStmt) GetPortalname() string { if x != nil { - return x.Name + return x.Portalname } return "" } -func (x *StatsElem) GetExpr() *Node { - if x != nil { - return x.Expr - } - return nil -} - -type Constraint struct { +type FetchStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Contype ConstrType `protobuf:"varint,1,opt,name=contype,proto3,enum=pg_query.ConstrType" json:"contype,omitempty"` - Conname string `protobuf:"bytes,2,opt,name=conname,proto3" json:"conname,omitempty"` - Deferrable bool `protobuf:"varint,3,opt,name=deferrable,proto3" json:"deferrable,omitempty"` - Initdeferred bool `protobuf:"varint,4,opt,name=initdeferred,proto3" json:"initdeferred,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` - IsNoInherit bool `protobuf:"varint,6,opt,name=is_no_inherit,proto3" json:"is_no_inherit,omitempty"` - RawExpr *Node `protobuf:"bytes,7,opt,name=raw_expr,proto3" json:"raw_expr,omitempty"` - CookedExpr string `protobuf:"bytes,8,opt,name=cooked_expr,proto3" json:"cooked_expr,omitempty"` - GeneratedWhen string `protobuf:"bytes,9,opt,name=generated_when,proto3" json:"generated_when,omitempty"` - NullsNotDistinct bool `protobuf:"varint,10,opt,name=nulls_not_distinct,proto3" json:"nulls_not_distinct,omitempty"` - Keys []*Node `protobuf:"bytes,11,rep,name=keys,proto3" json:"keys,omitempty"` - Including []*Node `protobuf:"bytes,12,rep,name=including,proto3" json:"including,omitempty"` - Exclusions []*Node `protobuf:"bytes,13,rep,name=exclusions,proto3" json:"exclusions,omitempty"` - Options []*Node `protobuf:"bytes,14,rep,name=options,proto3" json:"options,omitempty"` - Indexname string `protobuf:"bytes,15,opt,name=indexname,proto3" json:"indexname,omitempty"` - Indexspace string `protobuf:"bytes,16,opt,name=indexspace,proto3" json:"indexspace,omitempty"` - ResetDefaultTblspc bool `protobuf:"varint,17,opt,name=reset_default_tblspc,proto3" json:"reset_default_tblspc,omitempty"` - AccessMethod string `protobuf:"bytes,18,opt,name=access_method,proto3" json:"access_method,omitempty"` - WhereClause *Node `protobuf:"bytes,19,opt,name=where_clause,proto3" json:"where_clause,omitempty"` - Pktable *RangeVar `protobuf:"bytes,20,opt,name=pktable,proto3" json:"pktable,omitempty"` - FkAttrs []*Node `protobuf:"bytes,21,rep,name=fk_attrs,proto3" json:"fk_attrs,omitempty"` - PkAttrs []*Node `protobuf:"bytes,22,rep,name=pk_attrs,proto3" json:"pk_attrs,omitempty"` - FkMatchtype string `protobuf:"bytes,23,opt,name=fk_matchtype,proto3" json:"fk_matchtype,omitempty"` - FkUpdAction string `protobuf:"bytes,24,opt,name=fk_upd_action,proto3" json:"fk_upd_action,omitempty"` - FkDelAction string `protobuf:"bytes,25,opt,name=fk_del_action,proto3" json:"fk_del_action,omitempty"` - FkDelSetCols []*Node `protobuf:"bytes,26,rep,name=fk_del_set_cols,proto3" json:"fk_del_set_cols,omitempty"` - OldConpfeqop []*Node `protobuf:"bytes,27,rep,name=old_conpfeqop,proto3" json:"old_conpfeqop,omitempty"` - OldPktableOid uint32 `protobuf:"varint,28,opt,name=old_pktable_oid,proto3" json:"old_pktable_oid,omitempty"` - SkipValidation bool `protobuf:"varint,29,opt,name=skip_validation,proto3" json:"skip_validation,omitempty"` - InitiallyValid bool `protobuf:"varint,30,opt,name=initially_valid,proto3" json:"initially_valid,omitempty"` + Direction FetchDirection `protobuf:"varint,1,opt,name=direction,proto3,enum=pg_query.FetchDirection" json:"direction,omitempty"` + HowMany int64 `protobuf:"varint,2,opt,name=how_many,json=howMany,proto3" json:"how_many,omitempty"` + Portalname string `protobuf:"bytes,3,opt,name=portalname,proto3" json:"portalname,omitempty"` + Ismove bool `protobuf:"varint,4,opt,name=ismove,proto3" json:"ismove,omitempty"` } -func (x *Constraint) Reset() { - *x = Constraint{} +func (x *FetchStmt) Reset() { + *x = FetchStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[205] + mi := &file_pg_query_proto_msgTypes[192] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *Constraint) String() string { +func (x *FetchStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*Constraint) ProtoMessage() {} +func (*FetchStmt) ProtoMessage() {} -func (x *Constraint) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[205] +func (x *FetchStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[192] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24901,250 +25280,301 @@ func (x *Constraint) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use Constraint.ProtoReflect.Descriptor instead. -func (*Constraint) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{205} +// Deprecated: Use FetchStmt.ProtoReflect.Descriptor instead. +func (*FetchStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{192} } -func (x *Constraint) GetContype() ConstrType { +func (x *FetchStmt) GetDirection() FetchDirection { if x != nil { - return x.Contype + return x.Direction } - return ConstrType_CONSTR_TYPE_UNDEFINED + return FetchDirection_FETCH_DIRECTION_UNDEFINED } -func (x *Constraint) GetConname() string { +func (x *FetchStmt) GetHowMany() int64 { if x != nil { - return x.Conname + return x.HowMany } - return "" + return 0 } -func (x *Constraint) GetDeferrable() bool { +func (x *FetchStmt) GetPortalname() string { if x != nil { - return x.Deferrable + return x.Portalname } - return false + return "" } -func (x *Constraint) GetInitdeferred() bool { +func (x *FetchStmt) GetIsmove() bool { if x != nil { - return x.Initdeferred + return x.Ismove } return false } -func (x *Constraint) GetLocation() int32 { - if x != nil { - return x.Location - } - return 0 +type IndexStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Idxname string `protobuf:"bytes,1,opt,name=idxname,proto3" json:"idxname,omitempty"` + Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` + AccessMethod string `protobuf:"bytes,3,opt,name=access_method,json=accessMethod,proto3" json:"access_method,omitempty"` + TableSpace string `protobuf:"bytes,4,opt,name=table_space,json=tableSpace,proto3" json:"table_space,omitempty"` + IndexParams []*Node `protobuf:"bytes,5,rep,name=index_params,json=indexParams,proto3" json:"index_params,omitempty"` + IndexIncludingParams []*Node `protobuf:"bytes,6,rep,name=index_including_params,json=indexIncludingParams,proto3" json:"index_including_params,omitempty"` + Options []*Node `protobuf:"bytes,7,rep,name=options,proto3" json:"options,omitempty"` + WhereClause *Node `protobuf:"bytes,8,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` + ExcludeOpNames []*Node `protobuf:"bytes,9,rep,name=exclude_op_names,json=excludeOpNames,proto3" json:"exclude_op_names,omitempty"` + Idxcomment string `protobuf:"bytes,10,opt,name=idxcomment,proto3" json:"idxcomment,omitempty"` + IndexOid uint32 `protobuf:"varint,11,opt,name=index_oid,json=indexOid,proto3" json:"index_oid,omitempty"` + OldNumber uint32 `protobuf:"varint,12,opt,name=old_number,json=oldNumber,proto3" json:"old_number,omitempty"` + OldCreateSubid uint32 `protobuf:"varint,13,opt,name=old_create_subid,json=oldCreateSubid,proto3" json:"old_create_subid,omitempty"` + OldFirstRelfilelocatorSubid uint32 `protobuf:"varint,14,opt,name=old_first_relfilelocator_subid,json=oldFirstRelfilelocatorSubid,proto3" json:"old_first_relfilelocator_subid,omitempty"` + Unique bool `protobuf:"varint,15,opt,name=unique,proto3" json:"unique,omitempty"` + NullsNotDistinct bool `protobuf:"varint,16,opt,name=nulls_not_distinct,proto3" json:"nulls_not_distinct,omitempty"` + Primary bool `protobuf:"varint,17,opt,name=primary,proto3" json:"primary,omitempty"` + Isconstraint bool `protobuf:"varint,18,opt,name=isconstraint,proto3" json:"isconstraint,omitempty"` + Deferrable bool `protobuf:"varint,19,opt,name=deferrable,proto3" json:"deferrable,omitempty"` + Initdeferred bool `protobuf:"varint,20,opt,name=initdeferred,proto3" json:"initdeferred,omitempty"` + Transformed bool `protobuf:"varint,21,opt,name=transformed,proto3" json:"transformed,omitempty"` + Concurrent bool `protobuf:"varint,22,opt,name=concurrent,proto3" json:"concurrent,omitempty"` + IfNotExists bool `protobuf:"varint,23,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` + ResetDefaultTblspc bool `protobuf:"varint,24,opt,name=reset_default_tblspc,proto3" json:"reset_default_tblspc,omitempty"` } -func (x *Constraint) GetIsNoInherit() bool { - if x != nil { - return x.IsNoInherit +func (x *IndexStmt) Reset() { + *x = IndexStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[193] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return false } -func (x *Constraint) GetRawExpr() *Node { - if x != nil { - return x.RawExpr +func (x *IndexStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*IndexStmt) ProtoMessage() {} + +func (x *IndexStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[193] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *Constraint) GetCookedExpr() string { +// Deprecated: Use IndexStmt.ProtoReflect.Descriptor instead. +func (*IndexStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{193} +} + +func (x *IndexStmt) GetIdxname() string { if x != nil { - return x.CookedExpr + return x.Idxname } return "" } -func (x *Constraint) GetGeneratedWhen() string { +func (x *IndexStmt) GetRelation() *RangeVar { if x != nil { - return x.GeneratedWhen + return x.Relation } - return "" + return nil } -func (x *Constraint) GetNullsNotDistinct() bool { +func (x *IndexStmt) GetAccessMethod() string { if x != nil { - return x.NullsNotDistinct + return x.AccessMethod } - return false + return "" } -func (x *Constraint) GetKeys() []*Node { +func (x *IndexStmt) GetTableSpace() string { if x != nil { - return x.Keys + return x.TableSpace } - return nil + return "" } -func (x *Constraint) GetIncluding() []*Node { +func (x *IndexStmt) GetIndexParams() []*Node { if x != nil { - return x.Including + return x.IndexParams } return nil } -func (x *Constraint) GetExclusions() []*Node { +func (x *IndexStmt) GetIndexIncludingParams() []*Node { if x != nil { - return x.Exclusions + return x.IndexIncludingParams } return nil } -func (x *Constraint) GetOptions() []*Node { +func (x *IndexStmt) GetOptions() []*Node { if x != nil { return x.Options } return nil } -func (x *Constraint) GetIndexname() string { +func (x *IndexStmt) GetWhereClause() *Node { if x != nil { - return x.Indexname + return x.WhereClause } - return "" + return nil } -func (x *Constraint) GetIndexspace() string { +func (x *IndexStmt) GetExcludeOpNames() []*Node { if x != nil { - return x.Indexspace + return x.ExcludeOpNames + } + return nil +} + +func (x *IndexStmt) GetIdxcomment() string { + if x != nil { + return x.Idxcomment } return "" } -func (x *Constraint) GetResetDefaultTblspc() bool { +func (x *IndexStmt) GetIndexOid() uint32 { if x != nil { - return x.ResetDefaultTblspc + return x.IndexOid } - return false + return 0 } -func (x *Constraint) GetAccessMethod() string { +func (x *IndexStmt) GetOldNumber() uint32 { if x != nil { - return x.AccessMethod + return x.OldNumber } - return "" + return 0 } -func (x *Constraint) GetWhereClause() *Node { +func (x *IndexStmt) GetOldCreateSubid() uint32 { if x != nil { - return x.WhereClause + return x.OldCreateSubid } - return nil + return 0 } -func (x *Constraint) GetPktable() *RangeVar { +func (x *IndexStmt) GetOldFirstRelfilelocatorSubid() uint32 { if x != nil { - return x.Pktable + return x.OldFirstRelfilelocatorSubid } - return nil + return 0 } -func (x *Constraint) GetFkAttrs() []*Node { +func (x *IndexStmt) GetUnique() bool { if x != nil { - return x.FkAttrs + return x.Unique } - return nil + return false } -func (x *Constraint) GetPkAttrs() []*Node { +func (x *IndexStmt) GetNullsNotDistinct() bool { if x != nil { - return x.PkAttrs + return x.NullsNotDistinct } - return nil + return false } -func (x *Constraint) GetFkMatchtype() string { +func (x *IndexStmt) GetPrimary() bool { if x != nil { - return x.FkMatchtype + return x.Primary } - return "" + return false } -func (x *Constraint) GetFkUpdAction() string { +func (x *IndexStmt) GetIsconstraint() bool { if x != nil { - return x.FkUpdAction + return x.Isconstraint } - return "" + return false } -func (x *Constraint) GetFkDelAction() string { +func (x *IndexStmt) GetDeferrable() bool { if x != nil { - return x.FkDelAction + return x.Deferrable } - return "" + return false } -func (x *Constraint) GetFkDelSetCols() []*Node { +func (x *IndexStmt) GetInitdeferred() bool { if x != nil { - return x.FkDelSetCols + return x.Initdeferred } - return nil + return false } -func (x *Constraint) GetOldConpfeqop() []*Node { +func (x *IndexStmt) GetTransformed() bool { if x != nil { - return x.OldConpfeqop + return x.Transformed } - return nil + return false } -func (x *Constraint) GetOldPktableOid() uint32 { +func (x *IndexStmt) GetConcurrent() bool { if x != nil { - return x.OldPktableOid + return x.Concurrent } - return 0 + return false } -func (x *Constraint) GetSkipValidation() bool { +func (x *IndexStmt) GetIfNotExists() bool { if x != nil { - return x.SkipValidation + return x.IfNotExists } return false } -func (x *Constraint) GetInitiallyValid() bool { +func (x *IndexStmt) GetResetDefaultTblspc() bool { if x != nil { - return x.InitiallyValid + return x.ResetDefaultTblspc } return false } -type DefElem struct { +type CreateStatsStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Defnamespace string `protobuf:"bytes,1,opt,name=defnamespace,proto3" json:"defnamespace,omitempty"` - Defname string `protobuf:"bytes,2,opt,name=defname,proto3" json:"defname,omitempty"` - Arg *Node `protobuf:"bytes,3,opt,name=arg,proto3" json:"arg,omitempty"` - Defaction DefElemAction `protobuf:"varint,4,opt,name=defaction,proto3,enum=pg_query.DefElemAction" json:"defaction,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + Defnames []*Node `protobuf:"bytes,1,rep,name=defnames,proto3" json:"defnames,omitempty"` + StatTypes []*Node `protobuf:"bytes,2,rep,name=stat_types,proto3" json:"stat_types,omitempty"` + Exprs []*Node `protobuf:"bytes,3,rep,name=exprs,proto3" json:"exprs,omitempty"` + Relations []*Node `protobuf:"bytes,4,rep,name=relations,proto3" json:"relations,omitempty"` + Stxcomment string `protobuf:"bytes,5,opt,name=stxcomment,proto3" json:"stxcomment,omitempty"` + Transformed bool `protobuf:"varint,6,opt,name=transformed,proto3" json:"transformed,omitempty"` + IfNotExists bool `protobuf:"varint,7,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` } -func (x *DefElem) Reset() { - *x = DefElem{} +func (x *CreateStatsStmt) Reset() { + *x = CreateStatsStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[206] + mi := &file_pg_query_proto_msgTypes[194] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *DefElem) String() string { +func (x *CreateStatsStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DefElem) ProtoMessage() {} +func (*CreateStatsStmt) ProtoMessage() {} -func (x *DefElem) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[206] +func (x *CreateStatsStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[194] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25155,107 +25585,86 @@ func (x *DefElem) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DefElem.ProtoReflect.Descriptor instead. -func (*DefElem) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{206} +// Deprecated: Use CreateStatsStmt.ProtoReflect.Descriptor instead. +func (*CreateStatsStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{194} } -func (x *DefElem) GetDefnamespace() string { +func (x *CreateStatsStmt) GetDefnames() []*Node { if x != nil { - return x.Defnamespace + return x.Defnames } - return "" + return nil } -func (x *DefElem) GetDefname() string { +func (x *CreateStatsStmt) GetStatTypes() []*Node { if x != nil { - return x.Defname + return x.StatTypes } - return "" + return nil } -func (x *DefElem) GetArg() *Node { +func (x *CreateStatsStmt) GetExprs() []*Node { if x != nil { - return x.Arg + return x.Exprs } return nil } -func (x *DefElem) GetDefaction() DefElemAction { +func (x *CreateStatsStmt) GetRelations() []*Node { if x != nil { - return x.Defaction + return x.Relations } - return DefElemAction_DEF_ELEM_ACTION_UNDEFINED + return nil } -func (x *DefElem) GetLocation() int32 { +func (x *CreateStatsStmt) GetStxcomment() string { if x != nil { - return x.Location + return x.Stxcomment } - return 0 + return "" } -type RangeTblEntry struct { +func (x *CreateStatsStmt) GetTransformed() bool { + if x != nil { + return x.Transformed + } + return false +} + +func (x *CreateStatsStmt) GetIfNotExists() bool { + if x != nil { + return x.IfNotExists + } + return false +} + +type StatsElem struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Rtekind RTEKind `protobuf:"varint,1,opt,name=rtekind,proto3,enum=pg_query.RTEKind" json:"rtekind,omitempty"` - Relid uint32 `protobuf:"varint,2,opt,name=relid,proto3" json:"relid,omitempty"` - Relkind string `protobuf:"bytes,3,opt,name=relkind,proto3" json:"relkind,omitempty"` - Rellockmode int32 `protobuf:"varint,4,opt,name=rellockmode,proto3" json:"rellockmode,omitempty"` - Tablesample *TableSampleClause `protobuf:"bytes,5,opt,name=tablesample,proto3" json:"tablesample,omitempty"` - Subquery *Query `protobuf:"bytes,6,opt,name=subquery,proto3" json:"subquery,omitempty"` - SecurityBarrier bool `protobuf:"varint,7,opt,name=security_barrier,proto3" json:"security_barrier,omitempty"` - Jointype JoinType `protobuf:"varint,8,opt,name=jointype,proto3,enum=pg_query.JoinType" json:"jointype,omitempty"` - Joinmergedcols int32 `protobuf:"varint,9,opt,name=joinmergedcols,proto3" json:"joinmergedcols,omitempty"` - Joinaliasvars []*Node `protobuf:"bytes,10,rep,name=joinaliasvars,proto3" json:"joinaliasvars,omitempty"` - Joinleftcols []*Node `protobuf:"bytes,11,rep,name=joinleftcols,proto3" json:"joinleftcols,omitempty"` - Joinrightcols []*Node `protobuf:"bytes,12,rep,name=joinrightcols,proto3" json:"joinrightcols,omitempty"` - JoinUsingAlias *Alias `protobuf:"bytes,13,opt,name=join_using_alias,proto3" json:"join_using_alias,omitempty"` - Functions []*Node `protobuf:"bytes,14,rep,name=functions,proto3" json:"functions,omitempty"` - Funcordinality bool `protobuf:"varint,15,opt,name=funcordinality,proto3" json:"funcordinality,omitempty"` - Tablefunc *TableFunc `protobuf:"bytes,16,opt,name=tablefunc,proto3" json:"tablefunc,omitempty"` - ValuesLists []*Node `protobuf:"bytes,17,rep,name=values_lists,proto3" json:"values_lists,omitempty"` - Ctename string `protobuf:"bytes,18,opt,name=ctename,proto3" json:"ctename,omitempty"` - Ctelevelsup uint32 `protobuf:"varint,19,opt,name=ctelevelsup,proto3" json:"ctelevelsup,omitempty"` - SelfReference bool `protobuf:"varint,20,opt,name=self_reference,proto3" json:"self_reference,omitempty"` - Coltypes []*Node `protobuf:"bytes,21,rep,name=coltypes,proto3" json:"coltypes,omitempty"` - Coltypmods []*Node `protobuf:"bytes,22,rep,name=coltypmods,proto3" json:"coltypmods,omitempty"` - Colcollations []*Node `protobuf:"bytes,23,rep,name=colcollations,proto3" json:"colcollations,omitempty"` - Enrname string `protobuf:"bytes,24,opt,name=enrname,proto3" json:"enrname,omitempty"` - Enrtuples float64 `protobuf:"fixed64,25,opt,name=enrtuples,proto3" json:"enrtuples,omitempty"` - Alias *Alias `protobuf:"bytes,26,opt,name=alias,proto3" json:"alias,omitempty"` - Eref *Alias `protobuf:"bytes,27,opt,name=eref,proto3" json:"eref,omitempty"` - Lateral bool `protobuf:"varint,28,opt,name=lateral,proto3" json:"lateral,omitempty"` - Inh bool `protobuf:"varint,29,opt,name=inh,proto3" json:"inh,omitempty"` - InFromCl bool `protobuf:"varint,30,opt,name=in_from_cl,json=inFromCl,proto3" json:"in_from_cl,omitempty"` - RequiredPerms uint32 `protobuf:"varint,31,opt,name=required_perms,json=requiredPerms,proto3" json:"required_perms,omitempty"` - CheckAsUser uint32 `protobuf:"varint,32,opt,name=check_as_user,json=checkAsUser,proto3" json:"check_as_user,omitempty"` - SelectedCols []uint64 `protobuf:"varint,33,rep,packed,name=selected_cols,json=selectedCols,proto3" json:"selected_cols,omitempty"` - InsertedCols []uint64 `protobuf:"varint,34,rep,packed,name=inserted_cols,json=insertedCols,proto3" json:"inserted_cols,omitempty"` - UpdatedCols []uint64 `protobuf:"varint,35,rep,packed,name=updated_cols,json=updatedCols,proto3" json:"updated_cols,omitempty"` - ExtraUpdatedCols []uint64 `protobuf:"varint,36,rep,packed,name=extra_updated_cols,json=extraUpdatedCols,proto3" json:"extra_updated_cols,omitempty"` - SecurityQuals []*Node `protobuf:"bytes,37,rep,name=security_quals,json=securityQuals,proto3" json:"security_quals,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` } -func (x *RangeTblEntry) Reset() { - *x = RangeTblEntry{} +func (x *StatsElem) Reset() { + *x = StatsElem{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[207] + mi := &file_pg_query_proto_msgTypes[195] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RangeTblEntry) String() string { +func (x *StatsElem) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RangeTblEntry) ProtoMessage() {} +func (*StatsElem) ProtoMessage() {} -func (x *RangeTblEntry) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[207] +func (x *StatsElem) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[195] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25266,301 +25675,281 @@ func (x *RangeTblEntry) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RangeTblEntry.ProtoReflect.Descriptor instead. -func (*RangeTblEntry) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{207} +// Deprecated: Use StatsElem.ProtoReflect.Descriptor instead. +func (*StatsElem) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{195} } -func (x *RangeTblEntry) GetRtekind() RTEKind { +func (x *StatsElem) GetName() string { if x != nil { - return x.Rtekind + return x.Name } - return RTEKind_RTEKIND_UNDEFINED + return "" } -func (x *RangeTblEntry) GetRelid() uint32 { +func (x *StatsElem) GetExpr() *Node { if x != nil { - return x.Relid + return x.Expr } - return 0 + return nil } -func (x *RangeTblEntry) GetRelkind() string { - if x != nil { - return x.Relkind - } - return "" +type AlterStatsStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Defnames []*Node `protobuf:"bytes,1,rep,name=defnames,proto3" json:"defnames,omitempty"` + Stxstattarget int32 `protobuf:"varint,2,opt,name=stxstattarget,proto3" json:"stxstattarget,omitempty"` + MissingOk bool `protobuf:"varint,3,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *RangeTblEntry) GetRellockmode() int32 { - if x != nil { - return x.Rellockmode +func (x *AlterStatsStmt) Reset() { + *x = AlterStatsStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[196] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return 0 } -func (x *RangeTblEntry) GetTablesample() *TableSampleClause { - if x != nil { - return x.Tablesample +func (x *AlterStatsStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AlterStatsStmt) ProtoMessage() {} + +func (x *AlterStatsStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[196] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *RangeTblEntry) GetSubquery() *Query { +// Deprecated: Use AlterStatsStmt.ProtoReflect.Descriptor instead. +func (*AlterStatsStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{196} +} + +func (x *AlterStatsStmt) GetDefnames() []*Node { if x != nil { - return x.Subquery + return x.Defnames } return nil } -func (x *RangeTblEntry) GetSecurityBarrier() bool { - if x != nil { - return x.SecurityBarrier - } - return false -} - -func (x *RangeTblEntry) GetJointype() JoinType { - if x != nil { - return x.Jointype - } - return JoinType_JOIN_TYPE_UNDEFINED -} - -func (x *RangeTblEntry) GetJoinmergedcols() int32 { +func (x *AlterStatsStmt) GetStxstattarget() int32 { if x != nil { - return x.Joinmergedcols + return x.Stxstattarget } return 0 } -func (x *RangeTblEntry) GetJoinaliasvars() []*Node { - if x != nil { - return x.Joinaliasvars - } - return nil -} - -func (x *RangeTblEntry) GetJoinleftcols() []*Node { +func (x *AlterStatsStmt) GetMissingOk() bool { if x != nil { - return x.Joinleftcols + return x.MissingOk } - return nil + return false } -func (x *RangeTblEntry) GetJoinrightcols() []*Node { - if x != nil { - return x.Joinrightcols - } - return nil -} +type CreateFunctionStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (x *RangeTblEntry) GetJoinUsingAlias() *Alias { - if x != nil { - return x.JoinUsingAlias - } - return nil + IsProcedure bool `protobuf:"varint,1,opt,name=is_procedure,proto3" json:"is_procedure,omitempty"` + Replace bool `protobuf:"varint,2,opt,name=replace,proto3" json:"replace,omitempty"` + Funcname []*Node `protobuf:"bytes,3,rep,name=funcname,proto3" json:"funcname,omitempty"` + Parameters []*Node `protobuf:"bytes,4,rep,name=parameters,proto3" json:"parameters,omitempty"` + ReturnType *TypeName `protobuf:"bytes,5,opt,name=return_type,json=returnType,proto3" json:"return_type,omitempty"` + Options []*Node `protobuf:"bytes,6,rep,name=options,proto3" json:"options,omitempty"` + SqlBody *Node `protobuf:"bytes,7,opt,name=sql_body,proto3" json:"sql_body,omitempty"` } -func (x *RangeTblEntry) GetFunctions() []*Node { - if x != nil { - return x.Functions +func (x *CreateFunctionStmt) Reset() { + *x = CreateFunctionStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[197] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *RangeTblEntry) GetFuncordinality() bool { - if x != nil { - return x.Funcordinality - } - return false +func (x *CreateFunctionStmt) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *RangeTblEntry) GetTablefunc() *TableFunc { - if x != nil { - return x.Tablefunc - } - return nil -} +func (*CreateFunctionStmt) ProtoMessage() {} -func (x *RangeTblEntry) GetValuesLists() []*Node { - if x != nil { - return x.ValuesLists +func (x *CreateFunctionStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[197] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *RangeTblEntry) GetCtename() string { - if x != nil { - return x.Ctename - } - return "" +// Deprecated: Use CreateFunctionStmt.ProtoReflect.Descriptor instead. +func (*CreateFunctionStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{197} } -func (x *RangeTblEntry) GetCtelevelsup() uint32 { +func (x *CreateFunctionStmt) GetIsProcedure() bool { if x != nil { - return x.Ctelevelsup + return x.IsProcedure } - return 0 + return false } -func (x *RangeTblEntry) GetSelfReference() bool { +func (x *CreateFunctionStmt) GetReplace() bool { if x != nil { - return x.SelfReference + return x.Replace } return false } -func (x *RangeTblEntry) GetColtypes() []*Node { +func (x *CreateFunctionStmt) GetFuncname() []*Node { if x != nil { - return x.Coltypes + return x.Funcname } return nil } -func (x *RangeTblEntry) GetColtypmods() []*Node { +func (x *CreateFunctionStmt) GetParameters() []*Node { if x != nil { - return x.Coltypmods + return x.Parameters } return nil } -func (x *RangeTblEntry) GetColcollations() []*Node { +func (x *CreateFunctionStmt) GetReturnType() *TypeName { if x != nil { - return x.Colcollations + return x.ReturnType } return nil } -func (x *RangeTblEntry) GetEnrname() string { - if x != nil { - return x.Enrname - } - return "" -} - -func (x *RangeTblEntry) GetEnrtuples() float64 { - if x != nil { - return x.Enrtuples - } - return 0 -} - -func (x *RangeTblEntry) GetAlias() *Alias { +func (x *CreateFunctionStmt) GetOptions() []*Node { if x != nil { - return x.Alias + return x.Options } return nil } -func (x *RangeTblEntry) GetEref() *Alias { +func (x *CreateFunctionStmt) GetSqlBody() *Node { if x != nil { - return x.Eref + return x.SqlBody } return nil } -func (x *RangeTblEntry) GetLateral() bool { - if x != nil { - return x.Lateral - } - return false -} +type FunctionParameter struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (x *RangeTblEntry) GetInh() bool { - if x != nil { - return x.Inh - } - return false + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + ArgType *TypeName `protobuf:"bytes,2,opt,name=arg_type,json=argType,proto3" json:"arg_type,omitempty"` + Mode FunctionParameterMode `protobuf:"varint,3,opt,name=mode,proto3,enum=pg_query.FunctionParameterMode" json:"mode,omitempty"` + Defexpr *Node `protobuf:"bytes,4,opt,name=defexpr,proto3" json:"defexpr,omitempty"` } -func (x *RangeTblEntry) GetInFromCl() bool { - if x != nil { - return x.InFromCl +func (x *FunctionParameter) Reset() { + *x = FunctionParameter{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[198] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return false } -func (x *RangeTblEntry) GetRequiredPerms() uint32 { - if x != nil { - return x.RequiredPerms - } - return 0 +func (x *FunctionParameter) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *RangeTblEntry) GetCheckAsUser() uint32 { - if x != nil { - return x.CheckAsUser +func (*FunctionParameter) ProtoMessage() {} + +func (x *FunctionParameter) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[198] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return 0 + return mi.MessageOf(x) } -func (x *RangeTblEntry) GetSelectedCols() []uint64 { - if x != nil { - return x.SelectedCols - } - return nil +// Deprecated: Use FunctionParameter.ProtoReflect.Descriptor instead. +func (*FunctionParameter) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{198} } -func (x *RangeTblEntry) GetInsertedCols() []uint64 { +func (x *FunctionParameter) GetName() string { if x != nil { - return x.InsertedCols + return x.Name } - return nil + return "" } -func (x *RangeTblEntry) GetUpdatedCols() []uint64 { +func (x *FunctionParameter) GetArgType() *TypeName { if x != nil { - return x.UpdatedCols + return x.ArgType } return nil } -func (x *RangeTblEntry) GetExtraUpdatedCols() []uint64 { +func (x *FunctionParameter) GetMode() FunctionParameterMode { if x != nil { - return x.ExtraUpdatedCols + return x.Mode } - return nil + return FunctionParameterMode_FUNCTION_PARAMETER_MODE_UNDEFINED } -func (x *RangeTblEntry) GetSecurityQuals() []*Node { +func (x *FunctionParameter) GetDefexpr() *Node { if x != nil { - return x.SecurityQuals + return x.Defexpr } return nil } -type RangeTblFunction struct { +type AlterFunctionStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Funcexpr *Node `protobuf:"bytes,1,opt,name=funcexpr,proto3" json:"funcexpr,omitempty"` - Funccolcount int32 `protobuf:"varint,2,opt,name=funccolcount,proto3" json:"funccolcount,omitempty"` - Funccolnames []*Node `protobuf:"bytes,3,rep,name=funccolnames,proto3" json:"funccolnames,omitempty"` - Funccoltypes []*Node `protobuf:"bytes,4,rep,name=funccoltypes,proto3" json:"funccoltypes,omitempty"` - Funccoltypmods []*Node `protobuf:"bytes,5,rep,name=funccoltypmods,proto3" json:"funccoltypmods,omitempty"` - Funccolcollations []*Node `protobuf:"bytes,6,rep,name=funccolcollations,proto3" json:"funccolcollations,omitempty"` - Funcparams []uint64 `protobuf:"varint,7,rep,packed,name=funcparams,proto3" json:"funcparams,omitempty"` + Objtype ObjectType `protobuf:"varint,1,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` + Func *ObjectWithArgs `protobuf:"bytes,2,opt,name=func,proto3" json:"func,omitempty"` + Actions []*Node `protobuf:"bytes,3,rep,name=actions,proto3" json:"actions,omitempty"` } -func (x *RangeTblFunction) Reset() { - *x = RangeTblFunction{} +func (x *AlterFunctionStmt) Reset() { + *x = AlterFunctionStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[208] + mi := &file_pg_query_proto_msgTypes[199] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RangeTblFunction) String() string { +func (x *AlterFunctionStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RangeTblFunction) ProtoMessage() {} +func (*AlterFunctionStmt) ProtoMessage() {} -func (x *RangeTblFunction) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[208] +func (x *AlterFunctionStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[199] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25571,87 +25960,57 @@ func (x *RangeTblFunction) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RangeTblFunction.ProtoReflect.Descriptor instead. -func (*RangeTblFunction) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{208} +// Deprecated: Use AlterFunctionStmt.ProtoReflect.Descriptor instead. +func (*AlterFunctionStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{199} } -func (x *RangeTblFunction) GetFuncexpr() *Node { +func (x *AlterFunctionStmt) GetObjtype() ObjectType { if x != nil { - return x.Funcexpr + return x.Objtype } - return nil + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *RangeTblFunction) GetFunccolcount() int32 { +func (x *AlterFunctionStmt) GetFunc() *ObjectWithArgs { if x != nil { - return x.Funccolcount - } - return 0 -} - -func (x *RangeTblFunction) GetFunccolnames() []*Node { - if x != nil { - return x.Funccolnames - } - return nil -} - -func (x *RangeTblFunction) GetFunccoltypes() []*Node { - if x != nil { - return x.Funccoltypes - } - return nil -} - -func (x *RangeTblFunction) GetFunccoltypmods() []*Node { - if x != nil { - return x.Funccoltypmods - } - return nil -} - -func (x *RangeTblFunction) GetFunccolcollations() []*Node { - if x != nil { - return x.Funccolcollations + return x.Func } return nil } -func (x *RangeTblFunction) GetFuncparams() []uint64 { +func (x *AlterFunctionStmt) GetActions() []*Node { if x != nil { - return x.Funcparams + return x.Actions } return nil } -type TableSampleClause struct { +type DoStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Tsmhandler uint32 `protobuf:"varint,1,opt,name=tsmhandler,proto3" json:"tsmhandler,omitempty"` - Args []*Node `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"` - Repeatable *Node `protobuf:"bytes,3,opt,name=repeatable,proto3" json:"repeatable,omitempty"` + Args []*Node `protobuf:"bytes,1,rep,name=args,proto3" json:"args,omitempty"` } -func (x *TableSampleClause) Reset() { - *x = TableSampleClause{} +func (x *DoStmt) Reset() { + *x = DoStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[209] + mi := &file_pg_query_proto_msgTypes[200] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *TableSampleClause) String() string { +func (x *DoStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TableSampleClause) ProtoMessage() {} +func (*DoStmt) ProtoMessage() {} -func (x *TableSampleClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[209] +func (x *DoStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[200] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25662,61 +26021,46 @@ func (x *TableSampleClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use TableSampleClause.ProtoReflect.Descriptor instead. -func (*TableSampleClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{209} -} - -func (x *TableSampleClause) GetTsmhandler() uint32 { - if x != nil { - return x.Tsmhandler - } - return 0 +// Deprecated: Use DoStmt.ProtoReflect.Descriptor instead. +func (*DoStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{200} } -func (x *TableSampleClause) GetArgs() []*Node { +func (x *DoStmt) GetArgs() []*Node { if x != nil { return x.Args } return nil } -func (x *TableSampleClause) GetRepeatable() *Node { - if x != nil { - return x.Repeatable - } - return nil -} - -type WithCheckOption struct { +type InlineCodeBlock struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Kind WCOKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.WCOKind" json:"kind,omitempty"` - Relname string `protobuf:"bytes,2,opt,name=relname,proto3" json:"relname,omitempty"` - Polname string `protobuf:"bytes,3,opt,name=polname,proto3" json:"polname,omitempty"` - Qual *Node `protobuf:"bytes,4,opt,name=qual,proto3" json:"qual,omitempty"` - Cascaded bool `protobuf:"varint,5,opt,name=cascaded,proto3" json:"cascaded,omitempty"` + SourceText string `protobuf:"bytes,1,opt,name=source_text,proto3" json:"source_text,omitempty"` + LangOid uint32 `protobuf:"varint,2,opt,name=lang_oid,json=langOid,proto3" json:"lang_oid,omitempty"` + LangIsTrusted bool `protobuf:"varint,3,opt,name=lang_is_trusted,json=langIsTrusted,proto3" json:"lang_is_trusted,omitempty"` + Atomic bool `protobuf:"varint,4,opt,name=atomic,proto3" json:"atomic,omitempty"` } -func (x *WithCheckOption) Reset() { - *x = WithCheckOption{} +func (x *InlineCodeBlock) Reset() { + *x = InlineCodeBlock{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[210] + mi := &file_pg_query_proto_msgTypes[201] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *WithCheckOption) String() string { +func (x *InlineCodeBlock) String() string { return protoimpl.X.MessageStringOf(x) } -func (*WithCheckOption) ProtoMessage() {} +func (*InlineCodeBlock) ProtoMessage() {} -func (x *WithCheckOption) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[210] +func (x *InlineCodeBlock) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[201] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25727,75 +26071,66 @@ func (x *WithCheckOption) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use WithCheckOption.ProtoReflect.Descriptor instead. -func (*WithCheckOption) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{210} -} - -func (x *WithCheckOption) GetKind() WCOKind { - if x != nil { - return x.Kind - } - return WCOKind_WCOKIND_UNDEFINED +// Deprecated: Use InlineCodeBlock.ProtoReflect.Descriptor instead. +func (*InlineCodeBlock) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{201} } -func (x *WithCheckOption) GetRelname() string { +func (x *InlineCodeBlock) GetSourceText() string { if x != nil { - return x.Relname + return x.SourceText } return "" } -func (x *WithCheckOption) GetPolname() string { +func (x *InlineCodeBlock) GetLangOid() uint32 { if x != nil { - return x.Polname + return x.LangOid } - return "" + return 0 } -func (x *WithCheckOption) GetQual() *Node { +func (x *InlineCodeBlock) GetLangIsTrusted() bool { if x != nil { - return x.Qual + return x.LangIsTrusted } - return nil + return false } -func (x *WithCheckOption) GetCascaded() bool { +func (x *InlineCodeBlock) GetAtomic() bool { if x != nil { - return x.Cascaded + return x.Atomic } return false } -type SortGroupClause struct { +type CallStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - TleSortGroupRef uint32 `protobuf:"varint,1,opt,name=tle_sort_group_ref,json=tleSortGroupRef,proto3" json:"tle_sort_group_ref,omitempty"` - Eqop uint32 `protobuf:"varint,2,opt,name=eqop,proto3" json:"eqop,omitempty"` - Sortop uint32 `protobuf:"varint,3,opt,name=sortop,proto3" json:"sortop,omitempty"` - NullsFirst bool `protobuf:"varint,4,opt,name=nulls_first,proto3" json:"nulls_first,omitempty"` - Hashable bool `protobuf:"varint,5,opt,name=hashable,proto3" json:"hashable,omitempty"` + Funccall *FuncCall `protobuf:"bytes,1,opt,name=funccall,proto3" json:"funccall,omitempty"` + Funcexpr *FuncExpr `protobuf:"bytes,2,opt,name=funcexpr,proto3" json:"funcexpr,omitempty"` + Outargs []*Node `protobuf:"bytes,3,rep,name=outargs,proto3" json:"outargs,omitempty"` } -func (x *SortGroupClause) Reset() { - *x = SortGroupClause{} +func (x *CallStmt) Reset() { + *x = CallStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[211] + mi := &file_pg_query_proto_msgTypes[202] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *SortGroupClause) String() string { +func (x *CallStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*SortGroupClause) ProtoMessage() {} +func (*CallStmt) ProtoMessage() {} -func (x *SortGroupClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[211] +func (x *CallStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[202] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25806,73 +26141,57 @@ func (x *SortGroupClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use SortGroupClause.ProtoReflect.Descriptor instead. -func (*SortGroupClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{211} -} - -func (x *SortGroupClause) GetTleSortGroupRef() uint32 { - if x != nil { - return x.TleSortGroupRef - } - return 0 -} - -func (x *SortGroupClause) GetEqop() uint32 { - if x != nil { - return x.Eqop - } - return 0 +// Deprecated: Use CallStmt.ProtoReflect.Descriptor instead. +func (*CallStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{202} } -func (x *SortGroupClause) GetSortop() uint32 { +func (x *CallStmt) GetFunccall() *FuncCall { if x != nil { - return x.Sortop + return x.Funccall } - return 0 + return nil } -func (x *SortGroupClause) GetNullsFirst() bool { +func (x *CallStmt) GetFuncexpr() *FuncExpr { if x != nil { - return x.NullsFirst + return x.Funcexpr } - return false + return nil } -func (x *SortGroupClause) GetHashable() bool { +func (x *CallStmt) GetOutargs() []*Node { if x != nil { - return x.Hashable + return x.Outargs } - return false + return nil } -type GroupingSet struct { +type CallContext struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Kind GroupingSetKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.GroupingSetKind" json:"kind,omitempty"` - Content []*Node `protobuf:"bytes,2,rep,name=content,proto3" json:"content,omitempty"` - Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` + Atomic bool `protobuf:"varint,1,opt,name=atomic,proto3" json:"atomic,omitempty"` } -func (x *GroupingSet) Reset() { - *x = GroupingSet{} +func (x *CallContext) Reset() { + *x = CallContext{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[212] + mi := &file_pg_query_proto_msgTypes[203] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *GroupingSet) String() string { +func (x *CallContext) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GroupingSet) ProtoMessage() {} +func (*CallContext) ProtoMessage() {} -func (x *GroupingSet) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[212] +func (x *CallContext) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[203] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25883,71 +26202,50 @@ func (x *GroupingSet) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GroupingSet.ProtoReflect.Descriptor instead. -func (*GroupingSet) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{212} +// Deprecated: Use CallContext.ProtoReflect.Descriptor instead. +func (*CallContext) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{203} } -func (x *GroupingSet) GetKind() GroupingSetKind { +func (x *CallContext) GetAtomic() bool { if x != nil { - return x.Kind + return x.Atomic } - return GroupingSetKind_GROUPING_SET_KIND_UNDEFINED + return false } -func (x *GroupingSet) GetContent() []*Node { - if x != nil { - return x.Content - } - return nil +type RenameStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RenameType ObjectType `protobuf:"varint,1,opt,name=rename_type,json=renameType,proto3,enum=pg_query.ObjectType" json:"rename_type,omitempty"` + RelationType ObjectType `protobuf:"varint,2,opt,name=relation_type,json=relationType,proto3,enum=pg_query.ObjectType" json:"relation_type,omitempty"` + Relation *RangeVar `protobuf:"bytes,3,opt,name=relation,proto3" json:"relation,omitempty"` + Object *Node `protobuf:"bytes,4,opt,name=object,proto3" json:"object,omitempty"` + Subname string `protobuf:"bytes,5,opt,name=subname,proto3" json:"subname,omitempty"` + Newname string `protobuf:"bytes,6,opt,name=newname,proto3" json:"newname,omitempty"` + Behavior DropBehavior `protobuf:"varint,7,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` + MissingOk bool `protobuf:"varint,8,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *GroupingSet) GetLocation() int32 { - if x != nil { - return x.Location +func (x *RenameStmt) Reset() { + *x = RenameStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[204] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return 0 } -type WindowClause struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Refname string `protobuf:"bytes,2,opt,name=refname,proto3" json:"refname,omitempty"` - PartitionClause []*Node `protobuf:"bytes,3,rep,name=partition_clause,json=partitionClause,proto3" json:"partition_clause,omitempty"` - OrderClause []*Node `protobuf:"bytes,4,rep,name=order_clause,json=orderClause,proto3" json:"order_clause,omitempty"` - FrameOptions int32 `protobuf:"varint,5,opt,name=frame_options,json=frameOptions,proto3" json:"frame_options,omitempty"` - StartOffset *Node `protobuf:"bytes,6,opt,name=start_offset,json=startOffset,proto3" json:"start_offset,omitempty"` - EndOffset *Node `protobuf:"bytes,7,opt,name=end_offset,json=endOffset,proto3" json:"end_offset,omitempty"` - RunCondition []*Node `protobuf:"bytes,8,rep,name=run_condition,json=runCondition,proto3" json:"run_condition,omitempty"` - StartInRangeFunc uint32 `protobuf:"varint,9,opt,name=start_in_range_func,json=startInRangeFunc,proto3" json:"start_in_range_func,omitempty"` - EndInRangeFunc uint32 `protobuf:"varint,10,opt,name=end_in_range_func,json=endInRangeFunc,proto3" json:"end_in_range_func,omitempty"` - InRangeColl uint32 `protobuf:"varint,11,opt,name=in_range_coll,json=inRangeColl,proto3" json:"in_range_coll,omitempty"` - InRangeAsc bool `protobuf:"varint,12,opt,name=in_range_asc,json=inRangeAsc,proto3" json:"in_range_asc,omitempty"` - InRangeNullsFirst bool `protobuf:"varint,13,opt,name=in_range_nulls_first,json=inRangeNullsFirst,proto3" json:"in_range_nulls_first,omitempty"` - Winref uint32 `protobuf:"varint,14,opt,name=winref,proto3" json:"winref,omitempty"` - CopiedOrder bool `protobuf:"varint,15,opt,name=copied_order,json=copiedOrder,proto3" json:"copied_order,omitempty"` -} - -func (x *WindowClause) Reset() { - *x = WindowClause{} - if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[213] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *WindowClause) String() string { +func (x *RenameStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*WindowClause) ProtoMessage() {} +func (*RenameStmt) ProtoMessage() {} -func (x *WindowClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[213] +func (x *RenameStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[204] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25958,144 +26256,175 @@ func (x *WindowClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use WindowClause.ProtoReflect.Descriptor instead. -func (*WindowClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{213} +// Deprecated: Use RenameStmt.ProtoReflect.Descriptor instead. +func (*RenameStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{204} } -func (x *WindowClause) GetName() string { +func (x *RenameStmt) GetRenameType() ObjectType { if x != nil { - return x.Name + return x.RenameType } - return "" + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *WindowClause) GetRefname() string { +func (x *RenameStmt) GetRelationType() ObjectType { if x != nil { - return x.Refname + return x.RelationType } - return "" + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *WindowClause) GetPartitionClause() []*Node { +func (x *RenameStmt) GetRelation() *RangeVar { if x != nil { - return x.PartitionClause + return x.Relation } return nil } -func (x *WindowClause) GetOrderClause() []*Node { +func (x *RenameStmt) GetObject() *Node { if x != nil { - return x.OrderClause + return x.Object } return nil } -func (x *WindowClause) GetFrameOptions() int32 { +func (x *RenameStmt) GetSubname() string { if x != nil { - return x.FrameOptions + return x.Subname } - return 0 + return "" } -func (x *WindowClause) GetStartOffset() *Node { +func (x *RenameStmt) GetNewname() string { if x != nil { - return x.StartOffset + return x.Newname } - return nil + return "" } -func (x *WindowClause) GetEndOffset() *Node { +func (x *RenameStmt) GetBehavior() DropBehavior { if x != nil { - return x.EndOffset + return x.Behavior } - return nil + return DropBehavior_DROP_BEHAVIOR_UNDEFINED } -func (x *WindowClause) GetRunCondition() []*Node { +func (x *RenameStmt) GetMissingOk() bool { if x != nil { - return x.RunCondition + return x.MissingOk } - return nil + return false } -func (x *WindowClause) GetStartInRangeFunc() uint32 { - if x != nil { - return x.StartInRangeFunc +type AlterObjectDependsStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ObjectType ObjectType `protobuf:"varint,1,opt,name=object_type,json=objectType,proto3,enum=pg_query.ObjectType" json:"object_type,omitempty"` + Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` + Object *Node `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` + Extname *String `protobuf:"bytes,4,opt,name=extname,proto3" json:"extname,omitempty"` + Remove bool `protobuf:"varint,5,opt,name=remove,proto3" json:"remove,omitempty"` +} + +func (x *AlterObjectDependsStmt) Reset() { + *x = AlterObjectDependsStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[205] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return 0 } -func (x *WindowClause) GetEndInRangeFunc() uint32 { - if x != nil { - return x.EndInRangeFunc +func (x *AlterObjectDependsStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AlterObjectDependsStmt) ProtoMessage() {} + +func (x *AlterObjectDependsStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[205] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return 0 + return mi.MessageOf(x) } -func (x *WindowClause) GetInRangeColl() uint32 { +// Deprecated: Use AlterObjectDependsStmt.ProtoReflect.Descriptor instead. +func (*AlterObjectDependsStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{205} +} + +func (x *AlterObjectDependsStmt) GetObjectType() ObjectType { if x != nil { - return x.InRangeColl + return x.ObjectType } - return 0 + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *WindowClause) GetInRangeAsc() bool { +func (x *AlterObjectDependsStmt) GetRelation() *RangeVar { if x != nil { - return x.InRangeAsc + return x.Relation } - return false + return nil } -func (x *WindowClause) GetInRangeNullsFirst() bool { +func (x *AlterObjectDependsStmt) GetObject() *Node { if x != nil { - return x.InRangeNullsFirst + return x.Object } - return false + return nil } -func (x *WindowClause) GetWinref() uint32 { +func (x *AlterObjectDependsStmt) GetExtname() *String { if x != nil { - return x.Winref + return x.Extname } - return 0 + return nil } -func (x *WindowClause) GetCopiedOrder() bool { +func (x *AlterObjectDependsStmt) GetRemove() bool { if x != nil { - return x.CopiedOrder + return x.Remove } return false } -type ObjectWithArgs struct { +type AlterObjectSchemaStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Objname []*Node `protobuf:"bytes,1,rep,name=objname,proto3" json:"objname,omitempty"` - Objargs []*Node `protobuf:"bytes,2,rep,name=objargs,proto3" json:"objargs,omitempty"` - Objfuncargs []*Node `protobuf:"bytes,3,rep,name=objfuncargs,proto3" json:"objfuncargs,omitempty"` - ArgsUnspecified bool `protobuf:"varint,4,opt,name=args_unspecified,proto3" json:"args_unspecified,omitempty"` + ObjectType ObjectType `protobuf:"varint,1,opt,name=object_type,json=objectType,proto3,enum=pg_query.ObjectType" json:"object_type,omitempty"` + Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` + Object *Node `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` + Newschema string `protobuf:"bytes,4,opt,name=newschema,proto3" json:"newschema,omitempty"` + MissingOk bool `protobuf:"varint,5,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` } -func (x *ObjectWithArgs) Reset() { - *x = ObjectWithArgs{} +func (x *AlterObjectSchemaStmt) Reset() { + *x = AlterObjectSchemaStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[214] + mi := &file_pg_query_proto_msgTypes[206] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ObjectWithArgs) String() string { +func (x *AlterObjectSchemaStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ObjectWithArgs) ProtoMessage() {} +func (*AlterObjectSchemaStmt) ProtoMessage() {} -func (x *ObjectWithArgs) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[214] +func (x *AlterObjectSchemaStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[206] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26106,65 +26435,74 @@ func (x *ObjectWithArgs) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ObjectWithArgs.ProtoReflect.Descriptor instead. -func (*ObjectWithArgs) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{214} +// Deprecated: Use AlterObjectSchemaStmt.ProtoReflect.Descriptor instead. +func (*AlterObjectSchemaStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{206} } -func (x *ObjectWithArgs) GetObjname() []*Node { +func (x *AlterObjectSchemaStmt) GetObjectType() ObjectType { if x != nil { - return x.Objname + return x.ObjectType } - return nil + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *ObjectWithArgs) GetObjargs() []*Node { +func (x *AlterObjectSchemaStmt) GetRelation() *RangeVar { if x != nil { - return x.Objargs + return x.Relation } return nil } -func (x *ObjectWithArgs) GetObjfuncargs() []*Node { +func (x *AlterObjectSchemaStmt) GetObject() *Node { if x != nil { - return x.Objfuncargs + return x.Object } return nil } -func (x *ObjectWithArgs) GetArgsUnspecified() bool { +func (x *AlterObjectSchemaStmt) GetNewschema() string { if x != nil { - return x.ArgsUnspecified + return x.Newschema + } + return "" +} + +func (x *AlterObjectSchemaStmt) GetMissingOk() bool { + if x != nil { + return x.MissingOk } return false } -type AccessPriv struct { +type AlterOwnerStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - PrivName string `protobuf:"bytes,1,opt,name=priv_name,proto3" json:"priv_name,omitempty"` - Cols []*Node `protobuf:"bytes,2,rep,name=cols,proto3" json:"cols,omitempty"` + ObjectType ObjectType `protobuf:"varint,1,opt,name=object_type,json=objectType,proto3,enum=pg_query.ObjectType" json:"object_type,omitempty"` + Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` + Object *Node `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` + Newowner *RoleSpec `protobuf:"bytes,4,opt,name=newowner,proto3" json:"newowner,omitempty"` } -func (x *AccessPriv) Reset() { - *x = AccessPriv{} +func (x *AlterOwnerStmt) Reset() { + *x = AlterOwnerStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[215] + mi := &file_pg_query_proto_msgTypes[207] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AccessPriv) String() string { +func (x *AlterOwnerStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AccessPriv) ProtoMessage() {} +func (*AlterOwnerStmt) ProtoMessage() {} -func (x *AccessPriv) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[215] +func (x *AlterOwnerStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[207] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26175,55 +26513,65 @@ func (x *AccessPriv) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AccessPriv.ProtoReflect.Descriptor instead. -func (*AccessPriv) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{215} +// Deprecated: Use AlterOwnerStmt.ProtoReflect.Descriptor instead. +func (*AlterOwnerStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{207} } -func (x *AccessPriv) GetPrivName() string { +func (x *AlterOwnerStmt) GetObjectType() ObjectType { if x != nil { - return x.PrivName + return x.ObjectType } - return "" + return ObjectType_OBJECT_TYPE_UNDEFINED } -func (x *AccessPriv) GetCols() []*Node { +func (x *AlterOwnerStmt) GetRelation() *RangeVar { if x != nil { - return x.Cols + return x.Relation } return nil } -type CreateOpClassItem struct { - state protoimpl.MessageState +func (x *AlterOwnerStmt) GetObject() *Node { + if x != nil { + return x.Object + } + return nil +} + +func (x *AlterOwnerStmt) GetNewowner() *RoleSpec { + if x != nil { + return x.Newowner + } + return nil +} + +type AlterOperatorStmt struct { + state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Itemtype int32 `protobuf:"varint,1,opt,name=itemtype,proto3" json:"itemtype,omitempty"` - Name *ObjectWithArgs `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Number int32 `protobuf:"varint,3,opt,name=number,proto3" json:"number,omitempty"` - OrderFamily []*Node `protobuf:"bytes,4,rep,name=order_family,proto3" json:"order_family,omitempty"` - ClassArgs []*Node `protobuf:"bytes,5,rep,name=class_args,proto3" json:"class_args,omitempty"` - Storedtype *TypeName `protobuf:"bytes,6,opt,name=storedtype,proto3" json:"storedtype,omitempty"` + Opername *ObjectWithArgs `protobuf:"bytes,1,opt,name=opername,proto3" json:"opername,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` } -func (x *CreateOpClassItem) Reset() { - *x = CreateOpClassItem{} +func (x *AlterOperatorStmt) Reset() { + *x = AlterOperatorStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[216] + mi := &file_pg_query_proto_msgTypes[208] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateOpClassItem) String() string { +func (x *AlterOperatorStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateOpClassItem) ProtoMessage() {} +func (*AlterOperatorStmt) ProtoMessage() {} -func (x *CreateOpClassItem) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[216] +func (x *AlterOperatorStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[208] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26234,80 +26582,51 @@ func (x *CreateOpClassItem) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateOpClassItem.ProtoReflect.Descriptor instead. -func (*CreateOpClassItem) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{216} -} - -func (x *CreateOpClassItem) GetItemtype() int32 { - if x != nil { - return x.Itemtype - } - return 0 -} - -func (x *CreateOpClassItem) GetName() *ObjectWithArgs { - if x != nil { - return x.Name - } - return nil -} - -func (x *CreateOpClassItem) GetNumber() int32 { - if x != nil { - return x.Number - } - return 0 -} - -func (x *CreateOpClassItem) GetOrderFamily() []*Node { - if x != nil { - return x.OrderFamily - } - return nil +// Deprecated: Use AlterOperatorStmt.ProtoReflect.Descriptor instead. +func (*AlterOperatorStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{208} } -func (x *CreateOpClassItem) GetClassArgs() []*Node { +func (x *AlterOperatorStmt) GetOpername() *ObjectWithArgs { if x != nil { - return x.ClassArgs + return x.Opername } return nil } -func (x *CreateOpClassItem) GetStoredtype() *TypeName { +func (x *AlterOperatorStmt) GetOptions() []*Node { if x != nil { - return x.Storedtype + return x.Options } return nil } -type TableLikeClause struct { +type AlterTypeStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - Options uint32 `protobuf:"varint,2,opt,name=options,proto3" json:"options,omitempty"` - RelationOid uint32 `protobuf:"varint,3,opt,name=relation_oid,json=relationOid,proto3" json:"relation_oid,omitempty"` + TypeName []*Node `protobuf:"bytes,1,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` } -func (x *TableLikeClause) Reset() { - *x = TableLikeClause{} +func (x *AlterTypeStmt) Reset() { + *x = AlterTypeStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[217] + mi := &file_pg_query_proto_msgTypes[209] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *TableLikeClause) String() string { +func (x *AlterTypeStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TableLikeClause) ProtoMessage() {} +func (*AlterTypeStmt) ProtoMessage() {} -func (x *TableLikeClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[217] +func (x *AlterTypeStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[209] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26318,60 +26637,56 @@ func (x *TableLikeClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use TableLikeClause.ProtoReflect.Descriptor instead. -func (*TableLikeClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{217} +// Deprecated: Use AlterTypeStmt.ProtoReflect.Descriptor instead. +func (*AlterTypeStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{209} } -func (x *TableLikeClause) GetRelation() *RangeVar { +func (x *AlterTypeStmt) GetTypeName() []*Node { if x != nil { - return x.Relation + return x.TypeName } return nil } -func (x *TableLikeClause) GetOptions() uint32 { +func (x *AlterTypeStmt) GetOptions() []*Node { if x != nil { return x.Options } - return 0 -} - -func (x *TableLikeClause) GetRelationOid() uint32 { - if x != nil { - return x.RelationOid - } - return 0 + return nil } -type FunctionParameter struct { +type RuleStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - ArgType *TypeName `protobuf:"bytes,2,opt,name=arg_type,json=argType,proto3" json:"arg_type,omitempty"` - Mode FunctionParameterMode `protobuf:"varint,3,opt,name=mode,proto3,enum=pg_query.FunctionParameterMode" json:"mode,omitempty"` - Defexpr *Node `protobuf:"bytes,4,opt,name=defexpr,proto3" json:"defexpr,omitempty"` + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + Rulename string `protobuf:"bytes,2,opt,name=rulename,proto3" json:"rulename,omitempty"` + WhereClause *Node `protobuf:"bytes,3,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` + Event CmdType `protobuf:"varint,4,opt,name=event,proto3,enum=pg_query.CmdType" json:"event,omitempty"` + Instead bool `protobuf:"varint,5,opt,name=instead,proto3" json:"instead,omitempty"` + Actions []*Node `protobuf:"bytes,6,rep,name=actions,proto3" json:"actions,omitempty"` + Replace bool `protobuf:"varint,7,opt,name=replace,proto3" json:"replace,omitempty"` } -func (x *FunctionParameter) Reset() { - *x = FunctionParameter{} +func (x *RuleStmt) Reset() { + *x = RuleStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[218] + mi := &file_pg_query_proto_msgTypes[210] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *FunctionParameter) String() string { +func (x *RuleStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*FunctionParameter) ProtoMessage() {} +func (*RuleStmt) ProtoMessage() {} -func (x *FunctionParameter) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[218] +func (x *RuleStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[210] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26382,66 +26697,86 @@ func (x *FunctionParameter) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use FunctionParameter.ProtoReflect.Descriptor instead. -func (*FunctionParameter) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{218} +// Deprecated: Use RuleStmt.ProtoReflect.Descriptor instead. +func (*RuleStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{210} } -func (x *FunctionParameter) GetName() string { +func (x *RuleStmt) GetRelation() *RangeVar { if x != nil { - return x.Name + return x.Relation + } + return nil +} + +func (x *RuleStmt) GetRulename() string { + if x != nil { + return x.Rulename } return "" } -func (x *FunctionParameter) GetArgType() *TypeName { +func (x *RuleStmt) GetWhereClause() *Node { if x != nil { - return x.ArgType + return x.WhereClause } return nil } -func (x *FunctionParameter) GetMode() FunctionParameterMode { +func (x *RuleStmt) GetEvent() CmdType { if x != nil { - return x.Mode + return x.Event } - return FunctionParameterMode_FUNCTION_PARAMETER_MODE_UNDEFINED + return CmdType_CMD_TYPE_UNDEFINED } -func (x *FunctionParameter) GetDefexpr() *Node { +func (x *RuleStmt) GetInstead() bool { if x != nil { - return x.Defexpr + return x.Instead + } + return false +} + +func (x *RuleStmt) GetActions() []*Node { + if x != nil { + return x.Actions } return nil } -type LockingClause struct { +func (x *RuleStmt) GetReplace() bool { + if x != nil { + return x.Replace + } + return false +} + +type NotifyStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - LockedRels []*Node `protobuf:"bytes,1,rep,name=locked_rels,json=lockedRels,proto3" json:"locked_rels,omitempty"` - Strength LockClauseStrength `protobuf:"varint,2,opt,name=strength,proto3,enum=pg_query.LockClauseStrength" json:"strength,omitempty"` - WaitPolicy LockWaitPolicy `protobuf:"varint,3,opt,name=wait_policy,json=waitPolicy,proto3,enum=pg_query.LockWaitPolicy" json:"wait_policy,omitempty"` + Conditionname string `protobuf:"bytes,1,opt,name=conditionname,proto3" json:"conditionname,omitempty"` + Payload string `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"` } -func (x *LockingClause) Reset() { - *x = LockingClause{} +func (x *NotifyStmt) Reset() { + *x = NotifyStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[219] + mi := &file_pg_query_proto_msgTypes[211] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *LockingClause) String() string { +func (x *NotifyStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*LockingClause) ProtoMessage() {} +func (*NotifyStmt) ProtoMessage() {} -func (x *LockingClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[219] +func (x *NotifyStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[211] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26452,60 +26787,50 @@ func (x *LockingClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use LockingClause.ProtoReflect.Descriptor instead. -func (*LockingClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{219} -} - -func (x *LockingClause) GetLockedRels() []*Node { - if x != nil { - return x.LockedRels - } - return nil +// Deprecated: Use NotifyStmt.ProtoReflect.Descriptor instead. +func (*NotifyStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{211} } -func (x *LockingClause) GetStrength() LockClauseStrength { +func (x *NotifyStmt) GetConditionname() string { if x != nil { - return x.Strength + return x.Conditionname } - return LockClauseStrength_LOCK_CLAUSE_STRENGTH_UNDEFINED + return "" } -func (x *LockingClause) GetWaitPolicy() LockWaitPolicy { +func (x *NotifyStmt) GetPayload() string { if x != nil { - return x.WaitPolicy + return x.Payload } - return LockWaitPolicy_LOCK_WAIT_POLICY_UNDEFINED + return "" } -type RowMarkClause struct { +type ListenStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Rti uint32 `protobuf:"varint,1,opt,name=rti,proto3" json:"rti,omitempty"` - Strength LockClauseStrength `protobuf:"varint,2,opt,name=strength,proto3,enum=pg_query.LockClauseStrength" json:"strength,omitempty"` - WaitPolicy LockWaitPolicy `protobuf:"varint,3,opt,name=wait_policy,json=waitPolicy,proto3,enum=pg_query.LockWaitPolicy" json:"wait_policy,omitempty"` - PushedDown bool `protobuf:"varint,4,opt,name=pushed_down,json=pushedDown,proto3" json:"pushed_down,omitempty"` + Conditionname string `protobuf:"bytes,1,opt,name=conditionname,proto3" json:"conditionname,omitempty"` } -func (x *RowMarkClause) Reset() { - *x = RowMarkClause{} +func (x *ListenStmt) Reset() { + *x = ListenStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[220] + mi := &file_pg_query_proto_msgTypes[212] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RowMarkClause) String() string { +func (x *ListenStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RowMarkClause) ProtoMessage() {} +func (*ListenStmt) ProtoMessage() {} -func (x *RowMarkClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[220] +func (x *ListenStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[212] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26516,67 +26841,94 @@ func (x *RowMarkClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RowMarkClause.ProtoReflect.Descriptor instead. -func (*RowMarkClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{220} +// Deprecated: Use ListenStmt.ProtoReflect.Descriptor instead. +func (*ListenStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{212} } -func (x *RowMarkClause) GetRti() uint32 { +func (x *ListenStmt) GetConditionname() string { if x != nil { - return x.Rti + return x.Conditionname } - return 0 + return "" } -func (x *RowMarkClause) GetStrength() LockClauseStrength { - if x != nil { - return x.Strength +type UnlistenStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Conditionname string `protobuf:"bytes,1,opt,name=conditionname,proto3" json:"conditionname,omitempty"` +} + +func (x *UnlistenStmt) Reset() { + *x = UnlistenStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[213] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return LockClauseStrength_LOCK_CLAUSE_STRENGTH_UNDEFINED } -func (x *RowMarkClause) GetWaitPolicy() LockWaitPolicy { - if x != nil { - return x.WaitPolicy +func (x *UnlistenStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UnlistenStmt) ProtoMessage() {} + +func (x *UnlistenStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[213] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return LockWaitPolicy_LOCK_WAIT_POLICY_UNDEFINED + return mi.MessageOf(x) } -func (x *RowMarkClause) GetPushedDown() bool { +// Deprecated: Use UnlistenStmt.ProtoReflect.Descriptor instead. +func (*UnlistenStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{213} +} + +func (x *UnlistenStmt) GetConditionname() string { if x != nil { - return x.PushedDown + return x.Conditionname } - return false + return "" } -type XmlSerialize struct { +type TransactionStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Xmloption XmlOptionType `protobuf:"varint,1,opt,name=xmloption,proto3,enum=pg_query.XmlOptionType" json:"xmloption,omitempty"` - Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` - TypeName *TypeName `protobuf:"bytes,3,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` + Kind TransactionStmtKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.TransactionStmtKind" json:"kind,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + SavepointName string `protobuf:"bytes,3,opt,name=savepoint_name,proto3" json:"savepoint_name,omitempty"` + Gid string `protobuf:"bytes,4,opt,name=gid,proto3" json:"gid,omitempty"` + Chain bool `protobuf:"varint,5,opt,name=chain,proto3" json:"chain,omitempty"` } -func (x *XmlSerialize) Reset() { - *x = XmlSerialize{} +func (x *TransactionStmt) Reset() { + *x = TransactionStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[221] + mi := &file_pg_query_proto_msgTypes[214] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *XmlSerialize) String() string { +func (x *TransactionStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*XmlSerialize) ProtoMessage() {} +func (*TransactionStmt) ProtoMessage() {} -func (x *XmlSerialize) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[221] +func (x *TransactionStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[214] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26587,66 +26939,72 @@ func (x *XmlSerialize) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use XmlSerialize.ProtoReflect.Descriptor instead. -func (*XmlSerialize) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{221} +// Deprecated: Use TransactionStmt.ProtoReflect.Descriptor instead. +func (*TransactionStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{214} } -func (x *XmlSerialize) GetXmloption() XmlOptionType { +func (x *TransactionStmt) GetKind() TransactionStmtKind { if x != nil { - return x.Xmloption + return x.Kind } - return XmlOptionType_XML_OPTION_TYPE_UNDEFINED + return TransactionStmtKind_TRANSACTION_STMT_KIND_UNDEFINED } -func (x *XmlSerialize) GetExpr() *Node { +func (x *TransactionStmt) GetOptions() []*Node { if x != nil { - return x.Expr + return x.Options } return nil } -func (x *XmlSerialize) GetTypeName() *TypeName { +func (x *TransactionStmt) GetSavepointName() string { if x != nil { - return x.TypeName + return x.SavepointName } - return nil + return "" } -func (x *XmlSerialize) GetLocation() int32 { +func (x *TransactionStmt) GetGid() string { if x != nil { - return x.Location + return x.Gid } - return 0 + return "" } -type WithClause struct { +func (x *TransactionStmt) GetChain() bool { + if x != nil { + return x.Chain + } + return false +} + +type CompositeTypeStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Ctes []*Node `protobuf:"bytes,1,rep,name=ctes,proto3" json:"ctes,omitempty"` - Recursive bool `protobuf:"varint,2,opt,name=recursive,proto3" json:"recursive,omitempty"` - Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` + Typevar *RangeVar `protobuf:"bytes,1,opt,name=typevar,proto3" json:"typevar,omitempty"` + Coldeflist []*Node `protobuf:"bytes,2,rep,name=coldeflist,proto3" json:"coldeflist,omitempty"` } -func (x *WithClause) Reset() { - *x = WithClause{} +func (x *CompositeTypeStmt) Reset() { + *x = CompositeTypeStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[222] + mi := &file_pg_query_proto_msgTypes[215] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *WithClause) String() string { +func (x *CompositeTypeStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*WithClause) ProtoMessage() {} +func (*CompositeTypeStmt) ProtoMessage() {} -func (x *WithClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[222] +func (x *CompositeTypeStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[215] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26657,60 +27015,51 @@ func (x *WithClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use WithClause.ProtoReflect.Descriptor instead. -func (*WithClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{222} +// Deprecated: Use CompositeTypeStmt.ProtoReflect.Descriptor instead. +func (*CompositeTypeStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{215} } -func (x *WithClause) GetCtes() []*Node { +func (x *CompositeTypeStmt) GetTypevar() *RangeVar { if x != nil { - return x.Ctes + return x.Typevar } return nil } -func (x *WithClause) GetRecursive() bool { - if x != nil { - return x.Recursive - } - return false -} - -func (x *WithClause) GetLocation() int32 { +func (x *CompositeTypeStmt) GetColdeflist() []*Node { if x != nil { - return x.Location + return x.Coldeflist } - return 0 + return nil } -type InferClause struct { +type CreateEnumStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - IndexElems []*Node `protobuf:"bytes,1,rep,name=index_elems,json=indexElems,proto3" json:"index_elems,omitempty"` - WhereClause *Node `protobuf:"bytes,2,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` - Conname string `protobuf:"bytes,3,opt,name=conname,proto3" json:"conname,omitempty"` - Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` + TypeName []*Node `protobuf:"bytes,1,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + Vals []*Node `protobuf:"bytes,2,rep,name=vals,proto3" json:"vals,omitempty"` } -func (x *InferClause) Reset() { - *x = InferClause{} +func (x *CreateEnumStmt) Reset() { + *x = CreateEnumStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[223] + mi := &file_pg_query_proto_msgTypes[216] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *InferClause) String() string { +func (x *CreateEnumStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*InferClause) ProtoMessage() {} +func (*CreateEnumStmt) ProtoMessage() {} -func (x *InferClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[223] +func (x *CreateEnumStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[216] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26721,68 +27070,51 @@ func (x *InferClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use InferClause.ProtoReflect.Descriptor instead. -func (*InferClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{223} +// Deprecated: Use CreateEnumStmt.ProtoReflect.Descriptor instead. +func (*CreateEnumStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{216} } -func (x *InferClause) GetIndexElems() []*Node { +func (x *CreateEnumStmt) GetTypeName() []*Node { if x != nil { - return x.IndexElems + return x.TypeName } return nil } -func (x *InferClause) GetWhereClause() *Node { +func (x *CreateEnumStmt) GetVals() []*Node { if x != nil { - return x.WhereClause + return x.Vals } return nil } -func (x *InferClause) GetConname() string { - if x != nil { - return x.Conname - } - return "" -} - -func (x *InferClause) GetLocation() int32 { - if x != nil { - return x.Location - } - return 0 -} - -type OnConflictClause struct { +type CreateRangeStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Action OnConflictAction `protobuf:"varint,1,opt,name=action,proto3,enum=pg_query.OnConflictAction" json:"action,omitempty"` - Infer *InferClause `protobuf:"bytes,2,opt,name=infer,proto3" json:"infer,omitempty"` - TargetList []*Node `protobuf:"bytes,3,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` - WhereClause *Node `protobuf:"bytes,4,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + TypeName []*Node `protobuf:"bytes,1,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + Params []*Node `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty"` } -func (x *OnConflictClause) Reset() { - *x = OnConflictClause{} +func (x *CreateRangeStmt) Reset() { + *x = CreateRangeStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[224] + mi := &file_pg_query_proto_msgTypes[217] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *OnConflictClause) String() string { +func (x *CreateRangeStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*OnConflictClause) ProtoMessage() {} +func (*CreateRangeStmt) ProtoMessage() {} -func (x *OnConflictClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[224] +func (x *CreateRangeStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[217] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26793,74 +27125,55 @@ func (x *OnConflictClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use OnConflictClause.ProtoReflect.Descriptor instead. -func (*OnConflictClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{224} +// Deprecated: Use CreateRangeStmt.ProtoReflect.Descriptor instead. +func (*CreateRangeStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{217} } -func (x *OnConflictClause) GetAction() OnConflictAction { +func (x *CreateRangeStmt) GetTypeName() []*Node { if x != nil { - return x.Action + return x.TypeName } - return OnConflictAction_ON_CONFLICT_ACTION_UNDEFINED + return nil } -func (x *OnConflictClause) GetInfer() *InferClause { +func (x *CreateRangeStmt) GetParams() []*Node { if x != nil { - return x.Infer - } - return nil -} - -func (x *OnConflictClause) GetTargetList() []*Node { - if x != nil { - return x.TargetList - } - return nil -} - -func (x *OnConflictClause) GetWhereClause() *Node { - if x != nil { - return x.WhereClause + return x.Params } return nil } -func (x *OnConflictClause) GetLocation() int32 { - if x != nil { - return x.Location - } - return 0 -} - -type CTESearchClause struct { +type AlterEnumStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - SearchColList []*Node `protobuf:"bytes,1,rep,name=search_col_list,proto3" json:"search_col_list,omitempty"` - SearchBreadthFirst bool `protobuf:"varint,2,opt,name=search_breadth_first,proto3" json:"search_breadth_first,omitempty"` - SearchSeqColumn string `protobuf:"bytes,3,opt,name=search_seq_column,proto3" json:"search_seq_column,omitempty"` - Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` + TypeName []*Node `protobuf:"bytes,1,rep,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` + OldVal string `protobuf:"bytes,2,opt,name=old_val,json=oldVal,proto3" json:"old_val,omitempty"` + NewVal string `protobuf:"bytes,3,opt,name=new_val,json=newVal,proto3" json:"new_val,omitempty"` + NewValNeighbor string `protobuf:"bytes,4,opt,name=new_val_neighbor,json=newValNeighbor,proto3" json:"new_val_neighbor,omitempty"` + NewValIsAfter bool `protobuf:"varint,5,opt,name=new_val_is_after,json=newValIsAfter,proto3" json:"new_val_is_after,omitempty"` + SkipIfNewValExists bool `protobuf:"varint,6,opt,name=skip_if_new_val_exists,json=skipIfNewValExists,proto3" json:"skip_if_new_val_exists,omitempty"` } -func (x *CTESearchClause) Reset() { - *x = CTESearchClause{} +func (x *AlterEnumStmt) Reset() { + *x = AlterEnumStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[225] + mi := &file_pg_query_proto_msgTypes[218] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CTESearchClause) String() string { +func (x *AlterEnumStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CTESearchClause) ProtoMessage() {} +func (*AlterEnumStmt) ProtoMessage() {} -func (x *CTESearchClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[225] +func (x *AlterEnumStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[218] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26871,73 +27184,83 @@ func (x *CTESearchClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CTESearchClause.ProtoReflect.Descriptor instead. -func (*CTESearchClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{225} +// Deprecated: Use AlterEnumStmt.ProtoReflect.Descriptor instead. +func (*AlterEnumStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{218} } -func (x *CTESearchClause) GetSearchColList() []*Node { +func (x *AlterEnumStmt) GetTypeName() []*Node { if x != nil { - return x.SearchColList + return x.TypeName } return nil } -func (x *CTESearchClause) GetSearchBreadthFirst() bool { +func (x *AlterEnumStmt) GetOldVal() string { if x != nil { - return x.SearchBreadthFirst + return x.OldVal } - return false + return "" } -func (x *CTESearchClause) GetSearchSeqColumn() string { +func (x *AlterEnumStmt) GetNewVal() string { if x != nil { - return x.SearchSeqColumn + return x.NewVal } return "" } -func (x *CTESearchClause) GetLocation() int32 { +func (x *AlterEnumStmt) GetNewValNeighbor() string { if x != nil { - return x.Location + return x.NewValNeighbor } - return 0 + return "" } -type CTECycleClause struct { +func (x *AlterEnumStmt) GetNewValIsAfter() bool { + if x != nil { + return x.NewValIsAfter + } + return false +} + +func (x *AlterEnumStmt) GetSkipIfNewValExists() bool { + if x != nil { + return x.SkipIfNewValExists + } + return false +} + +type ViewStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - CycleColList []*Node `protobuf:"bytes,1,rep,name=cycle_col_list,proto3" json:"cycle_col_list,omitempty"` - CycleMarkColumn string `protobuf:"bytes,2,opt,name=cycle_mark_column,proto3" json:"cycle_mark_column,omitempty"` - CycleMarkValue *Node `protobuf:"bytes,3,opt,name=cycle_mark_value,proto3" json:"cycle_mark_value,omitempty"` - CycleMarkDefault *Node `protobuf:"bytes,4,opt,name=cycle_mark_default,proto3" json:"cycle_mark_default,omitempty"` - CyclePathColumn string `protobuf:"bytes,5,opt,name=cycle_path_column,proto3" json:"cycle_path_column,omitempty"` - Location int32 `protobuf:"varint,6,opt,name=location,proto3" json:"location,omitempty"` - CycleMarkType uint32 `protobuf:"varint,7,opt,name=cycle_mark_type,proto3" json:"cycle_mark_type,omitempty"` - CycleMarkTypmod int32 `protobuf:"varint,8,opt,name=cycle_mark_typmod,proto3" json:"cycle_mark_typmod,omitempty"` - CycleMarkCollation uint32 `protobuf:"varint,9,opt,name=cycle_mark_collation,proto3" json:"cycle_mark_collation,omitempty"` - CycleMarkNeop uint32 `protobuf:"varint,10,opt,name=cycle_mark_neop,proto3" json:"cycle_mark_neop,omitempty"` + View *RangeVar `protobuf:"bytes,1,opt,name=view,proto3" json:"view,omitempty"` + Aliases []*Node `protobuf:"bytes,2,rep,name=aliases,proto3" json:"aliases,omitempty"` + Query *Node `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"` + Replace bool `protobuf:"varint,4,opt,name=replace,proto3" json:"replace,omitempty"` + Options []*Node `protobuf:"bytes,5,rep,name=options,proto3" json:"options,omitempty"` + WithCheckOption ViewCheckOption `protobuf:"varint,6,opt,name=with_check_option,json=withCheckOption,proto3,enum=pg_query.ViewCheckOption" json:"with_check_option,omitempty"` } -func (x *CTECycleClause) Reset() { - *x = CTECycleClause{} +func (x *ViewStmt) Reset() { + *x = ViewStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[226] + mi := &file_pg_query_proto_msgTypes[219] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CTECycleClause) String() string { +func (x *ViewStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CTECycleClause) ProtoMessage() {} +func (*ViewStmt) ProtoMessage() {} -func (x *CTECycleClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[226] +func (x *ViewStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[219] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26948,118 +27271,126 @@ func (x *CTECycleClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CTECycleClause.ProtoReflect.Descriptor instead. -func (*CTECycleClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{226} +// Deprecated: Use ViewStmt.ProtoReflect.Descriptor instead. +func (*ViewStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{219} } -func (x *CTECycleClause) GetCycleColList() []*Node { +func (x *ViewStmt) GetView() *RangeVar { if x != nil { - return x.CycleColList + return x.View } return nil } -func (x *CTECycleClause) GetCycleMarkColumn() string { +func (x *ViewStmt) GetAliases() []*Node { if x != nil { - return x.CycleMarkColumn + return x.Aliases } - return "" + return nil } -func (x *CTECycleClause) GetCycleMarkValue() *Node { +func (x *ViewStmt) GetQuery() *Node { if x != nil { - return x.CycleMarkValue + return x.Query } return nil } -func (x *CTECycleClause) GetCycleMarkDefault() *Node { +func (x *ViewStmt) GetReplace() bool { if x != nil { - return x.CycleMarkDefault + return x.Replace } - return nil + return false } -func (x *CTECycleClause) GetCyclePathColumn() string { +func (x *ViewStmt) GetOptions() []*Node { if x != nil { - return x.CyclePathColumn + return x.Options } - return "" + return nil } -func (x *CTECycleClause) GetLocation() int32 { +func (x *ViewStmt) GetWithCheckOption() ViewCheckOption { if x != nil { - return x.Location + return x.WithCheckOption } - return 0 + return ViewCheckOption_VIEW_CHECK_OPTION_UNDEFINED } -func (x *CTECycleClause) GetCycleMarkType() uint32 { - if x != nil { - return x.CycleMarkType - } - return 0 +type LoadStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Filename string `protobuf:"bytes,1,opt,name=filename,proto3" json:"filename,omitempty"` } -func (x *CTECycleClause) GetCycleMarkTypmod() int32 { - if x != nil { - return x.CycleMarkTypmod +func (x *LoadStmt) Reset() { + *x = LoadStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[220] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return 0 } -func (x *CTECycleClause) GetCycleMarkCollation() uint32 { - if x != nil { - return x.CycleMarkCollation +func (x *LoadStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LoadStmt) ProtoMessage() {} + +func (x *LoadStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[220] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return 0 + return mi.MessageOf(x) } -func (x *CTECycleClause) GetCycleMarkNeop() uint32 { +// Deprecated: Use LoadStmt.ProtoReflect.Descriptor instead. +func (*LoadStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{220} +} + +func (x *LoadStmt) GetFilename() string { if x != nil { - return x.CycleMarkNeop + return x.Filename } - return 0 + return "" } -type CommonTableExpr struct { +type CreatedbStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Ctename string `protobuf:"bytes,1,opt,name=ctename,proto3" json:"ctename,omitempty"` - Aliascolnames []*Node `protobuf:"bytes,2,rep,name=aliascolnames,proto3" json:"aliascolnames,omitempty"` - Ctematerialized CTEMaterialize `protobuf:"varint,3,opt,name=ctematerialized,proto3,enum=pg_query.CTEMaterialize" json:"ctematerialized,omitempty"` - Ctequery *Node `protobuf:"bytes,4,opt,name=ctequery,proto3" json:"ctequery,omitempty"` - SearchClause *CTESearchClause `protobuf:"bytes,5,opt,name=search_clause,proto3" json:"search_clause,omitempty"` - CycleClause *CTECycleClause `protobuf:"bytes,6,opt,name=cycle_clause,proto3" json:"cycle_clause,omitempty"` - Location int32 `protobuf:"varint,7,opt,name=location,proto3" json:"location,omitempty"` - Cterecursive bool `protobuf:"varint,8,opt,name=cterecursive,proto3" json:"cterecursive,omitempty"` - Cterefcount int32 `protobuf:"varint,9,opt,name=cterefcount,proto3" json:"cterefcount,omitempty"` - Ctecolnames []*Node `protobuf:"bytes,10,rep,name=ctecolnames,proto3" json:"ctecolnames,omitempty"` - Ctecoltypes []*Node `protobuf:"bytes,11,rep,name=ctecoltypes,proto3" json:"ctecoltypes,omitempty"` - Ctecoltypmods []*Node `protobuf:"bytes,12,rep,name=ctecoltypmods,proto3" json:"ctecoltypmods,omitempty"` - Ctecolcollations []*Node `protobuf:"bytes,13,rep,name=ctecolcollations,proto3" json:"ctecolcollations,omitempty"` + Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` } -func (x *CommonTableExpr) Reset() { - *x = CommonTableExpr{} +func (x *CreatedbStmt) Reset() { + *x = CreatedbStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[227] + mi := &file_pg_query_proto_msgTypes[221] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CommonTableExpr) String() string { +func (x *CreatedbStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CommonTableExpr) ProtoMessage() {} +func (*CreatedbStmt) ProtoMessage() {} -func (x *CommonTableExpr) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[227] +func (x *CreatedbStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[221] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27070,132 +27401,105 @@ func (x *CommonTableExpr) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CommonTableExpr.ProtoReflect.Descriptor instead. -func (*CommonTableExpr) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{227} +// Deprecated: Use CreatedbStmt.ProtoReflect.Descriptor instead. +func (*CreatedbStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{221} } -func (x *CommonTableExpr) GetCtename() string { +func (x *CreatedbStmt) GetDbname() string { if x != nil { - return x.Ctename + return x.Dbname } return "" } -func (x *CommonTableExpr) GetAliascolnames() []*Node { +func (x *CreatedbStmt) GetOptions() []*Node { if x != nil { - return x.Aliascolnames + return x.Options } return nil } -func (x *CommonTableExpr) GetCtematerialized() CTEMaterialize { - if x != nil { - return x.Ctematerialized - } - return CTEMaterialize_CTEMATERIALIZE_UNDEFINED -} - -func (x *CommonTableExpr) GetCtequery() *Node { - if x != nil { - return x.Ctequery - } - return nil -} - -func (x *CommonTableExpr) GetSearchClause() *CTESearchClause { - if x != nil { - return x.SearchClause - } - return nil -} +type AlterDatabaseStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (x *CommonTableExpr) GetCycleClause() *CTECycleClause { - if x != nil { - return x.CycleClause - } - return nil + Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` } -func (x *CommonTableExpr) GetLocation() int32 { - if x != nil { - return x.Location +func (x *AlterDatabaseStmt) Reset() { + *x = AlterDatabaseStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[222] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return 0 } -func (x *CommonTableExpr) GetCterecursive() bool { - if x != nil { - return x.Cterecursive - } - return false +func (x *AlterDatabaseStmt) String() string { + return protoimpl.X.MessageStringOf(x) } -func (x *CommonTableExpr) GetCterefcount() int32 { - if x != nil { - return x.Cterefcount - } - return 0 -} +func (*AlterDatabaseStmt) ProtoMessage() {} -func (x *CommonTableExpr) GetCtecolnames() []*Node { - if x != nil { - return x.Ctecolnames +func (x *AlterDatabaseStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[222] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *CommonTableExpr) GetCtecoltypes() []*Node { - if x != nil { - return x.Ctecoltypes - } - return nil +// Deprecated: Use AlterDatabaseStmt.ProtoReflect.Descriptor instead. +func (*AlterDatabaseStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{222} } -func (x *CommonTableExpr) GetCtecoltypmods() []*Node { +func (x *AlterDatabaseStmt) GetDbname() string { if x != nil { - return x.Ctecoltypmods + return x.Dbname } - return nil + return "" } -func (x *CommonTableExpr) GetCtecolcollations() []*Node { +func (x *AlterDatabaseStmt) GetOptions() []*Node { if x != nil { - return x.Ctecolcollations + return x.Options } return nil } -type MergeWhenClause struct { +type AlterDatabaseRefreshCollStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Matched bool `protobuf:"varint,1,opt,name=matched,proto3" json:"matched,omitempty"` - CommandType CmdType `protobuf:"varint,2,opt,name=command_type,json=commandType,proto3,enum=pg_query.CmdType" json:"command_type,omitempty"` - Override OverridingKind `protobuf:"varint,3,opt,name=override,proto3,enum=pg_query.OverridingKind" json:"override,omitempty"` - Condition *Node `protobuf:"bytes,4,opt,name=condition,proto3" json:"condition,omitempty"` - TargetList []*Node `protobuf:"bytes,5,rep,name=target_list,json=targetList,proto3" json:"target_list,omitempty"` - Values []*Node `protobuf:"bytes,6,rep,name=values,proto3" json:"values,omitempty"` + Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` } -func (x *MergeWhenClause) Reset() { - *x = MergeWhenClause{} +func (x *AlterDatabaseRefreshCollStmt) Reset() { + *x = AlterDatabaseRefreshCollStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[228] + mi := &file_pg_query_proto_msgTypes[223] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *MergeWhenClause) String() string { +func (x *AlterDatabaseRefreshCollStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*MergeWhenClause) ProtoMessage() {} +func (*AlterDatabaseRefreshCollStmt) ProtoMessage() {} -func (x *MergeWhenClause) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[228] +func (x *AlterDatabaseRefreshCollStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[223] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27206,80 +27510,44 @@ func (x *MergeWhenClause) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use MergeWhenClause.ProtoReflect.Descriptor instead. -func (*MergeWhenClause) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{228} -} - -func (x *MergeWhenClause) GetMatched() bool { - if x != nil { - return x.Matched - } - return false -} - -func (x *MergeWhenClause) GetCommandType() CmdType { - if x != nil { - return x.CommandType - } - return CmdType_CMD_TYPE_UNDEFINED -} - -func (x *MergeWhenClause) GetOverride() OverridingKind { - if x != nil { - return x.Override - } - return OverridingKind_OVERRIDING_KIND_UNDEFINED -} - -func (x *MergeWhenClause) GetCondition() *Node { - if x != nil { - return x.Condition - } - return nil -} - -func (x *MergeWhenClause) GetTargetList() []*Node { - if x != nil { - return x.TargetList - } - return nil +// Deprecated: Use AlterDatabaseRefreshCollStmt.ProtoReflect.Descriptor instead. +func (*AlterDatabaseRefreshCollStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{223} } -func (x *MergeWhenClause) GetValues() []*Node { +func (x *AlterDatabaseRefreshCollStmt) GetDbname() string { if x != nil { - return x.Values + return x.Dbname } - return nil + return "" } -type RoleSpec struct { +type AlterDatabaseSetStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Roletype RoleSpecType `protobuf:"varint,1,opt,name=roletype,proto3,enum=pg_query.RoleSpecType" json:"roletype,omitempty"` - Rolename string `protobuf:"bytes,2,opt,name=rolename,proto3" json:"rolename,omitempty"` - Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` + Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` + Setstmt *VariableSetStmt `protobuf:"bytes,2,opt,name=setstmt,proto3" json:"setstmt,omitempty"` } -func (x *RoleSpec) Reset() { - *x = RoleSpec{} +func (x *AlterDatabaseSetStmt) Reset() { + *x = AlterDatabaseSetStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[229] + mi := &file_pg_query_proto_msgTypes[224] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *RoleSpec) String() string { +func (x *AlterDatabaseSetStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RoleSpec) ProtoMessage() {} +func (*AlterDatabaseSetStmt) ProtoMessage() {} -func (x *RoleSpec) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[229] +func (x *AlterDatabaseSetStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[224] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27290,59 +27558,52 @@ func (x *RoleSpec) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RoleSpec.ProtoReflect.Descriptor instead. -func (*RoleSpec) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{229} -} - -func (x *RoleSpec) GetRoletype() RoleSpecType { - if x != nil { - return x.Roletype - } - return RoleSpecType_ROLE_SPEC_TYPE_UNDEFINED +// Deprecated: Use AlterDatabaseSetStmt.ProtoReflect.Descriptor instead. +func (*AlterDatabaseSetStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{224} } -func (x *RoleSpec) GetRolename() string { +func (x *AlterDatabaseSetStmt) GetDbname() string { if x != nil { - return x.Rolename + return x.Dbname } return "" } -func (x *RoleSpec) GetLocation() int32 { +func (x *AlterDatabaseSetStmt) GetSetstmt() *VariableSetStmt { if x != nil { - return x.Location + return x.Setstmt } - return 0 + return nil } -type TriggerTransition struct { +type DropdbStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - IsNew bool `protobuf:"varint,2,opt,name=is_new,json=isNew,proto3" json:"is_new,omitempty"` - IsTable bool `protobuf:"varint,3,opt,name=is_table,json=isTable,proto3" json:"is_table,omitempty"` + Dbname string `protobuf:"bytes,1,opt,name=dbname,proto3" json:"dbname,omitempty"` + MissingOk bool `protobuf:"varint,2,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + Options []*Node `protobuf:"bytes,3,rep,name=options,proto3" json:"options,omitempty"` } -func (x *TriggerTransition) Reset() { - *x = TriggerTransition{} +func (x *DropdbStmt) Reset() { + *x = DropdbStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[230] + mi := &file_pg_query_proto_msgTypes[225] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *TriggerTransition) String() string { +func (x *DropdbStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TriggerTransition) ProtoMessage() {} +func (*DropdbStmt) ProtoMessage() {} -func (x *TriggerTransition) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[230] +func (x *DropdbStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[225] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27353,61 +27614,57 @@ func (x *TriggerTransition) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use TriggerTransition.ProtoReflect.Descriptor instead. -func (*TriggerTransition) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{230} +// Deprecated: Use DropdbStmt.ProtoReflect.Descriptor instead. +func (*DropdbStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{225} } -func (x *TriggerTransition) GetName() string { +func (x *DropdbStmt) GetDbname() string { if x != nil { - return x.Name + return x.Dbname } return "" } -func (x *TriggerTransition) GetIsNew() bool { +func (x *DropdbStmt) GetMissingOk() bool { if x != nil { - return x.IsNew + return x.MissingOk } return false } -func (x *TriggerTransition) GetIsTable() bool { +func (x *DropdbStmt) GetOptions() []*Node { if x != nil { - return x.IsTable + return x.Options } - return false + return nil } -type PartitionElem struct { +type AlterSystemStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Expr *Node `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` - Collation []*Node `protobuf:"bytes,3,rep,name=collation,proto3" json:"collation,omitempty"` - Opclass []*Node `protobuf:"bytes,4,rep,name=opclass,proto3" json:"opclass,omitempty"` - Location int32 `protobuf:"varint,5,opt,name=location,proto3" json:"location,omitempty"` + Setstmt *VariableSetStmt `protobuf:"bytes,1,opt,name=setstmt,proto3" json:"setstmt,omitempty"` } -func (x *PartitionElem) Reset() { - *x = PartitionElem{} +func (x *AlterSystemStmt) Reset() { + *x = AlterSystemStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[231] + mi := &file_pg_query_proto_msgTypes[226] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *PartitionElem) String() string { +func (x *AlterSystemStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PartitionElem) ProtoMessage() {} +func (*AlterSystemStmt) ProtoMessage() {} -func (x *PartitionElem) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[231] +func (x *AlterSystemStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[226] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27418,73 +27675,45 @@ func (x *PartitionElem) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PartitionElem.ProtoReflect.Descriptor instead. -func (*PartitionElem) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{231} -} - -func (x *PartitionElem) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *PartitionElem) GetExpr() *Node { - if x != nil { - return x.Expr - } - return nil -} - -func (x *PartitionElem) GetCollation() []*Node { - if x != nil { - return x.Collation - } - return nil +// Deprecated: Use AlterSystemStmt.ProtoReflect.Descriptor instead. +func (*AlterSystemStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{226} } -func (x *PartitionElem) GetOpclass() []*Node { +func (x *AlterSystemStmt) GetSetstmt() *VariableSetStmt { if x != nil { - return x.Opclass + return x.Setstmt } return nil } -func (x *PartitionElem) GetLocation() int32 { - if x != nil { - return x.Location - } - return 0 -} - -type PartitionSpec struct { +type ClusterStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Strategy string `protobuf:"bytes,1,opt,name=strategy,proto3" json:"strategy,omitempty"` - PartParams []*Node `protobuf:"bytes,2,rep,name=part_params,json=partParams,proto3" json:"part_params,omitempty"` - Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + Indexname string `protobuf:"bytes,2,opt,name=indexname,proto3" json:"indexname,omitempty"` + Params []*Node `protobuf:"bytes,3,rep,name=params,proto3" json:"params,omitempty"` } -func (x *PartitionSpec) Reset() { - *x = PartitionSpec{} +func (x *ClusterStmt) Reset() { + *x = ClusterStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[232] + mi := &file_pg_query_proto_msgTypes[227] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *PartitionSpec) String() string { +func (x *ClusterStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PartitionSpec) ProtoMessage() {} +func (*ClusterStmt) ProtoMessage() {} -func (x *PartitionSpec) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[232] +func (x *ClusterStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[227] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27495,64 +27724,59 @@ func (x *PartitionSpec) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PartitionSpec.ProtoReflect.Descriptor instead. -func (*PartitionSpec) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{232} +// Deprecated: Use ClusterStmt.ProtoReflect.Descriptor instead. +func (*ClusterStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{227} } -func (x *PartitionSpec) GetStrategy() string { +func (x *ClusterStmt) GetRelation() *RangeVar { if x != nil { - return x.Strategy + return x.Relation } - return "" + return nil } -func (x *PartitionSpec) GetPartParams() []*Node { +func (x *ClusterStmt) GetIndexname() string { if x != nil { - return x.PartParams + return x.Indexname } - return nil + return "" } -func (x *PartitionSpec) GetLocation() int32 { +func (x *ClusterStmt) GetParams() []*Node { if x != nil { - return x.Location + return x.Params } - return 0 + return nil } -type PartitionBoundSpec struct { +type VacuumStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Strategy string `protobuf:"bytes,1,opt,name=strategy,proto3" json:"strategy,omitempty"` - IsDefault bool `protobuf:"varint,2,opt,name=is_default,proto3" json:"is_default,omitempty"` - Modulus int32 `protobuf:"varint,3,opt,name=modulus,proto3" json:"modulus,omitempty"` - Remainder int32 `protobuf:"varint,4,opt,name=remainder,proto3" json:"remainder,omitempty"` - Listdatums []*Node `protobuf:"bytes,5,rep,name=listdatums,proto3" json:"listdatums,omitempty"` - Lowerdatums []*Node `protobuf:"bytes,6,rep,name=lowerdatums,proto3" json:"lowerdatums,omitempty"` - Upperdatums []*Node `protobuf:"bytes,7,rep,name=upperdatums,proto3" json:"upperdatums,omitempty"` - Location int32 `protobuf:"varint,8,opt,name=location,proto3" json:"location,omitempty"` + Options []*Node `protobuf:"bytes,1,rep,name=options,proto3" json:"options,omitempty"` + Rels []*Node `protobuf:"bytes,2,rep,name=rels,proto3" json:"rels,omitempty"` + IsVacuumcmd bool `protobuf:"varint,3,opt,name=is_vacuumcmd,proto3" json:"is_vacuumcmd,omitempty"` } -func (x *PartitionBoundSpec) Reset() { - *x = PartitionBoundSpec{} +func (x *VacuumStmt) Reset() { + *x = VacuumStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[233] + mi := &file_pg_query_proto_msgTypes[228] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *PartitionBoundSpec) String() string { +func (x *VacuumStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PartitionBoundSpec) ProtoMessage() {} +func (*VacuumStmt) ProtoMessage() {} -func (x *PartitionBoundSpec) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[233] +func (x *VacuumStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[228] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27563,94 +27787,59 @@ func (x *PartitionBoundSpec) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PartitionBoundSpec.ProtoReflect.Descriptor instead. -func (*PartitionBoundSpec) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{233} -} - -func (x *PartitionBoundSpec) GetStrategy() string { - if x != nil { - return x.Strategy - } - return "" -} - -func (x *PartitionBoundSpec) GetIsDefault() bool { - if x != nil { - return x.IsDefault - } - return false -} - -func (x *PartitionBoundSpec) GetModulus() int32 { - if x != nil { - return x.Modulus - } - return 0 -} - -func (x *PartitionBoundSpec) GetRemainder() int32 { - if x != nil { - return x.Remainder - } - return 0 -} - -func (x *PartitionBoundSpec) GetListdatums() []*Node { - if x != nil { - return x.Listdatums - } - return nil +// Deprecated: Use VacuumStmt.ProtoReflect.Descriptor instead. +func (*VacuumStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{228} } -func (x *PartitionBoundSpec) GetLowerdatums() []*Node { +func (x *VacuumStmt) GetOptions() []*Node { if x != nil { - return x.Lowerdatums + return x.Options } return nil } -func (x *PartitionBoundSpec) GetUpperdatums() []*Node { +func (x *VacuumStmt) GetRels() []*Node { if x != nil { - return x.Upperdatums + return x.Rels } return nil } -func (x *PartitionBoundSpec) GetLocation() int32 { +func (x *VacuumStmt) GetIsVacuumcmd() bool { if x != nil { - return x.Location + return x.IsVacuumcmd } - return 0 + return false } -type PartitionRangeDatum struct { +type VacuumRelation struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Kind PartitionRangeDatumKind `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.PartitionRangeDatumKind" json:"kind,omitempty"` - Value *Node `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` - Location int32 `protobuf:"varint,3,opt,name=location,proto3" json:"location,omitempty"` + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + Oid uint32 `protobuf:"varint,2,opt,name=oid,proto3" json:"oid,omitempty"` + VaCols []*Node `protobuf:"bytes,3,rep,name=va_cols,proto3" json:"va_cols,omitempty"` } -func (x *PartitionRangeDatum) Reset() { - *x = PartitionRangeDatum{} +func (x *VacuumRelation) Reset() { + *x = VacuumRelation{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[234] + mi := &file_pg_query_proto_msgTypes[229] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *PartitionRangeDatum) String() string { +func (x *VacuumRelation) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PartitionRangeDatum) ProtoMessage() {} +func (*VacuumRelation) ProtoMessage() {} -func (x *PartitionRangeDatum) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[234] +func (x *VacuumRelation) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[229] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27661,59 +27850,58 @@ func (x *PartitionRangeDatum) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PartitionRangeDatum.ProtoReflect.Descriptor instead. -func (*PartitionRangeDatum) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{234} +// Deprecated: Use VacuumRelation.ProtoReflect.Descriptor instead. +func (*VacuumRelation) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{229} } -func (x *PartitionRangeDatum) GetKind() PartitionRangeDatumKind { +func (x *VacuumRelation) GetRelation() *RangeVar { if x != nil { - return x.Kind + return x.Relation } - return PartitionRangeDatumKind_PARTITION_RANGE_DATUM_KIND_UNDEFINED + return nil } -func (x *PartitionRangeDatum) GetValue() *Node { +func (x *VacuumRelation) GetOid() uint32 { if x != nil { - return x.Value + return x.Oid } - return nil + return 0 } -func (x *PartitionRangeDatum) GetLocation() int32 { +func (x *VacuumRelation) GetVaCols() []*Node { if x != nil { - return x.Location + return x.VaCols } - return 0 + return nil } -type PartitionCmd struct { +type ExplainStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name *RangeVar `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Bound *PartitionBoundSpec `protobuf:"bytes,2,opt,name=bound,proto3" json:"bound,omitempty"` - Concurrent bool `protobuf:"varint,3,opt,name=concurrent,proto3" json:"concurrent,omitempty"` + Query *Node `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` } -func (x *PartitionCmd) Reset() { - *x = PartitionCmd{} +func (x *ExplainStmt) Reset() { + *x = ExplainStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[235] + mi := &file_pg_query_proto_msgTypes[230] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *PartitionCmd) String() string { +func (x *ExplainStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PartitionCmd) ProtoMessage() {} +func (*ExplainStmt) ProtoMessage() {} -func (x *PartitionCmd) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[235] +func (x *ExplainStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[230] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27724,59 +27912,54 @@ func (x *PartitionCmd) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PartitionCmd.ProtoReflect.Descriptor instead. -func (*PartitionCmd) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{235} +// Deprecated: Use ExplainStmt.ProtoReflect.Descriptor instead. +func (*ExplainStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{230} } -func (x *PartitionCmd) GetName() *RangeVar { +func (x *ExplainStmt) GetQuery() *Node { if x != nil { - return x.Name + return x.Query } return nil } -func (x *PartitionCmd) GetBound() *PartitionBoundSpec { +func (x *ExplainStmt) GetOptions() []*Node { if x != nil { - return x.Bound + return x.Options } return nil } -func (x *PartitionCmd) GetConcurrent() bool { - if x != nil { - return x.Concurrent - } - return false -} - -type VacuumRelation struct { +type CreateTableAsStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - Oid uint32 `protobuf:"varint,2,opt,name=oid,proto3" json:"oid,omitempty"` - VaCols []*Node `protobuf:"bytes,3,rep,name=va_cols,proto3" json:"va_cols,omitempty"` + Query *Node `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` + Into *IntoClause `protobuf:"bytes,2,opt,name=into,proto3" json:"into,omitempty"` + Objtype ObjectType `protobuf:"varint,3,opt,name=objtype,proto3,enum=pg_query.ObjectType" json:"objtype,omitempty"` + IsSelectInto bool `protobuf:"varint,4,opt,name=is_select_into,proto3" json:"is_select_into,omitempty"` + IfNotExists bool `protobuf:"varint,5,opt,name=if_not_exists,proto3" json:"if_not_exists,omitempty"` } -func (x *VacuumRelation) Reset() { - *x = VacuumRelation{} +func (x *CreateTableAsStmt) Reset() { + *x = CreateTableAsStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[236] + mi := &file_pg_query_proto_msgTypes[231] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *VacuumRelation) String() string { +func (x *CreateTableAsStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*VacuumRelation) ProtoMessage() {} +func (*CreateTableAsStmt) ProtoMessage() {} -func (x *VacuumRelation) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[236] +func (x *CreateTableAsStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[231] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27787,60 +27970,73 @@ func (x *VacuumRelation) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use VacuumRelation.ProtoReflect.Descriptor instead. -func (*VacuumRelation) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{236} +// Deprecated: Use CreateTableAsStmt.ProtoReflect.Descriptor instead. +func (*CreateTableAsStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{231} } -func (x *VacuumRelation) GetRelation() *RangeVar { +func (x *CreateTableAsStmt) GetQuery() *Node { if x != nil { - return x.Relation + return x.Query } return nil } -func (x *VacuumRelation) GetOid() uint32 { +func (x *CreateTableAsStmt) GetInto() *IntoClause { if x != nil { - return x.Oid + return x.Into } - return 0 + return nil } -func (x *VacuumRelation) GetVaCols() []*Node { +func (x *CreateTableAsStmt) GetObjtype() ObjectType { if x != nil { - return x.VaCols + return x.Objtype } - return nil + return ObjectType_OBJECT_TYPE_UNDEFINED } -type PublicationObjSpec struct { +func (x *CreateTableAsStmt) GetIsSelectInto() bool { + if x != nil { + return x.IsSelectInto + } + return false +} + +func (x *CreateTableAsStmt) GetIfNotExists() bool { + if x != nil { + return x.IfNotExists + } + return false +} + +type RefreshMatViewStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Pubobjtype PublicationObjSpecType `protobuf:"varint,1,opt,name=pubobjtype,proto3,enum=pg_query.PublicationObjSpecType" json:"pubobjtype,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Pubtable *PublicationTable `protobuf:"bytes,3,opt,name=pubtable,proto3" json:"pubtable,omitempty"` - Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` + Concurrent bool `protobuf:"varint,1,opt,name=concurrent,proto3" json:"concurrent,omitempty"` + SkipData bool `protobuf:"varint,2,opt,name=skip_data,json=skipData,proto3" json:"skip_data,omitempty"` + Relation *RangeVar `protobuf:"bytes,3,opt,name=relation,proto3" json:"relation,omitempty"` } -func (x *PublicationObjSpec) Reset() { - *x = PublicationObjSpec{} +func (x *RefreshMatViewStmt) Reset() { + *x = RefreshMatViewStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[237] + mi := &file_pg_query_proto_msgTypes[232] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *PublicationObjSpec) String() string { +func (x *RefreshMatViewStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PublicationObjSpec) ProtoMessage() {} +func (*RefreshMatViewStmt) ProtoMessage() {} -func (x *PublicationObjSpec) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[237] +func (x *RefreshMatViewStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[232] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27851,66 +28047,55 @@ func (x *PublicationObjSpec) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PublicationObjSpec.ProtoReflect.Descriptor instead. -func (*PublicationObjSpec) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{237} +// Deprecated: Use RefreshMatViewStmt.ProtoReflect.Descriptor instead. +func (*RefreshMatViewStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{232} } -func (x *PublicationObjSpec) GetPubobjtype() PublicationObjSpecType { +func (x *RefreshMatViewStmt) GetConcurrent() bool { if x != nil { - return x.Pubobjtype + return x.Concurrent } - return PublicationObjSpecType_PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED + return false } -func (x *PublicationObjSpec) GetName() string { +func (x *RefreshMatViewStmt) GetSkipData() bool { if x != nil { - return x.Name + return x.SkipData } - return "" + return false } -func (x *PublicationObjSpec) GetPubtable() *PublicationTable { +func (x *RefreshMatViewStmt) GetRelation() *RangeVar { if x != nil { - return x.Pubtable + return x.Relation } return nil } -func (x *PublicationObjSpec) GetLocation() int32 { - if x != nil { - return x.Location - } - return 0 -} - -type PublicationTable struct { +type CheckPointStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - - Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` - WhereClause *Node `protobuf:"bytes,2,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` - Columns []*Node `protobuf:"bytes,3,rep,name=columns,proto3" json:"columns,omitempty"` } -func (x *PublicationTable) Reset() { - *x = PublicationTable{} +func (x *CheckPointStmt) Reset() { + *x = CheckPointStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[238] + mi := &file_pg_query_proto_msgTypes[233] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *PublicationTable) String() string { +func (x *CheckPointStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PublicationTable) ProtoMessage() {} +func (*CheckPointStmt) ProtoMessage() {} -func (x *PublicationTable) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[238] +func (x *CheckPointStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[233] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27921,60 +28106,85 @@ func (x *PublicationTable) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PublicationTable.ProtoReflect.Descriptor instead. -func (*PublicationTable) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{238} +// Deprecated: Use CheckPointStmt.ProtoReflect.Descriptor instead. +func (*CheckPointStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{233} } -func (x *PublicationTable) GetRelation() *RangeVar { - if x != nil { - return x.Relation +type DiscardStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Target DiscardMode `protobuf:"varint,1,opt,name=target,proto3,enum=pg_query.DiscardMode" json:"target,omitempty"` +} + +func (x *DiscardStmt) Reset() { + *x = DiscardStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[234] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return nil } -func (x *PublicationTable) GetWhereClause() *Node { - if x != nil { - return x.WhereClause +func (x *DiscardStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DiscardStmt) ProtoMessage() {} + +func (x *DiscardStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[234] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return nil + return mi.MessageOf(x) } -func (x *PublicationTable) GetColumns() []*Node { +// Deprecated: Use DiscardStmt.ProtoReflect.Descriptor instead. +func (*DiscardStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{234} +} + +func (x *DiscardStmt) GetTarget() DiscardMode { if x != nil { - return x.Columns + return x.Target } - return nil + return DiscardMode_DISCARD_MODE_UNDEFINED } -type InlineCodeBlock struct { +type LockStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - SourceText string `protobuf:"bytes,1,opt,name=source_text,proto3" json:"source_text,omitempty"` - LangOid uint32 `protobuf:"varint,2,opt,name=lang_oid,json=langOid,proto3" json:"lang_oid,omitempty"` - LangIsTrusted bool `protobuf:"varint,3,opt,name=lang_is_trusted,json=langIsTrusted,proto3" json:"lang_is_trusted,omitempty"` - Atomic bool `protobuf:"varint,4,opt,name=atomic,proto3" json:"atomic,omitempty"` + Relations []*Node `protobuf:"bytes,1,rep,name=relations,proto3" json:"relations,omitempty"` + Mode int32 `protobuf:"varint,2,opt,name=mode,proto3" json:"mode,omitempty"` + Nowait bool `protobuf:"varint,3,opt,name=nowait,proto3" json:"nowait,omitempty"` } -func (x *InlineCodeBlock) Reset() { - *x = InlineCodeBlock{} +func (x *LockStmt) Reset() { + *x = LockStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[239] + mi := &file_pg_query_proto_msgTypes[235] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *InlineCodeBlock) String() string { +func (x *LockStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*InlineCodeBlock) ProtoMessage() {} +func (*LockStmt) ProtoMessage() {} -func (x *InlineCodeBlock) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[239] +func (x *LockStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[235] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27985,64 +28195,58 @@ func (x *InlineCodeBlock) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use InlineCodeBlock.ProtoReflect.Descriptor instead. -func (*InlineCodeBlock) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{239} +// Deprecated: Use LockStmt.ProtoReflect.Descriptor instead. +func (*LockStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{235} } -func (x *InlineCodeBlock) GetSourceText() string { +func (x *LockStmt) GetRelations() []*Node { if x != nil { - return x.SourceText + return x.Relations } - return "" + return nil } -func (x *InlineCodeBlock) GetLangOid() uint32 { +func (x *LockStmt) GetMode() int32 { if x != nil { - return x.LangOid + return x.Mode } return 0 } -func (x *InlineCodeBlock) GetLangIsTrusted() bool { - if x != nil { - return x.LangIsTrusted - } - return false -} - -func (x *InlineCodeBlock) GetAtomic() bool { +func (x *LockStmt) GetNowait() bool { if x != nil { - return x.Atomic + return x.Nowait } return false } -type CallContext struct { +type ConstraintsSetStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Atomic bool `protobuf:"varint,1,opt,name=atomic,proto3" json:"atomic,omitempty"` + Constraints []*Node `protobuf:"bytes,1,rep,name=constraints,proto3" json:"constraints,omitempty"` + Deferred bool `protobuf:"varint,2,opt,name=deferred,proto3" json:"deferred,omitempty"` } -func (x *CallContext) Reset() { - *x = CallContext{} +func (x *ConstraintsSetStmt) Reset() { + *x = ConstraintsSetStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[240] + mi := &file_pg_query_proto_msgTypes[236] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CallContext) String() string { +func (x *ConstraintsSetStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CallContext) ProtoMessage() {} +func (*ConstraintsSetStmt) ProtoMessage() {} -func (x *CallContext) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[240] +func (x *ConstraintsSetStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[236] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28053,46 +28257,53 @@ func (x *CallContext) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CallContext.ProtoReflect.Descriptor instead. -func (*CallContext) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{240} +// Deprecated: Use ConstraintsSetStmt.ProtoReflect.Descriptor instead. +func (*ConstraintsSetStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{236} } -func (x *CallContext) GetAtomic() bool { +func (x *ConstraintsSetStmt) GetConstraints() []*Node { if x != nil { - return x.Atomic + return x.Constraints + } + return nil +} + +func (x *ConstraintsSetStmt) GetDeferred() bool { + if x != nil { + return x.Deferred } return false } -type ScanToken struct { +type ReindexStmt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Start int32 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"` - End int32 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"` - Token Token `protobuf:"varint,4,opt,name=token,proto3,enum=pg_query.Token" json:"token,omitempty"` - KeywordKind KeywordKind `protobuf:"varint,5,opt,name=keyword_kind,json=keywordKind,proto3,enum=pg_query.KeywordKind" json:"keyword_kind,omitempty"` + Kind ReindexObjectType `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.ReindexObjectType" json:"kind,omitempty"` + Relation *RangeVar `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` + Params []*Node `protobuf:"bytes,4,rep,name=params,proto3" json:"params,omitempty"` } -func (x *ScanToken) Reset() { - *x = ScanToken{} +func (x *ReindexStmt) Reset() { + *x = ReindexStmt{} if protoimpl.UnsafeEnabled { - mi := &file_pg_query_proto_msgTypes[241] + mi := &file_pg_query_proto_msgTypes[237] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ScanToken) String() string { +func (x *ReindexStmt) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ScanToken) ProtoMessage() {} +func (*ReindexStmt) ProtoMessage() {} -func (x *ScanToken) ProtoReflect() protoreflect.Message { - mi := &file_pg_query_proto_msgTypes[241] +func (x *ReindexStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[237] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28103,3716 +28314,4619 @@ func (x *ScanToken) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ScanToken.ProtoReflect.Descriptor instead. -func (*ScanToken) Descriptor() ([]byte, []int) { - return file_pg_query_proto_rawDescGZIP(), []int{241} +// Deprecated: Use ReindexStmt.ProtoReflect.Descriptor instead. +func (*ReindexStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{237} } -func (x *ScanToken) GetStart() int32 { +func (x *ReindexStmt) GetKind() ReindexObjectType { if x != nil { - return x.Start + return x.Kind } - return 0 + return ReindexObjectType_REINDEX_OBJECT_TYPE_UNDEFINED } -func (x *ScanToken) GetEnd() int32 { +func (x *ReindexStmt) GetRelation() *RangeVar { if x != nil { - return x.End + return x.Relation } - return 0 + return nil } -func (x *ScanToken) GetToken() Token { +func (x *ReindexStmt) GetName() string { if x != nil { - return x.Token + return x.Name } - return Token_NUL + return "" } -func (x *ScanToken) GetKeywordKind() KeywordKind { +func (x *ReindexStmt) GetParams() []*Node { if x != nil { - return x.KeywordKind + return x.Params } - return KeywordKind_NO_KEYWORD + return nil } -var File_pg_query_proto protoreflect.FileDescriptor +type CreateConversionStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -var file_pg_query_proto_rawDesc = []byte{ - 0x0a, 0x0e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x12, 0x08, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0x50, 0x0a, 0x0b, 0x50, 0x61, - 0x72, 0x73, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x05, 0x73, 0x74, 0x6d, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, - 0x77, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x05, 0x73, 0x74, 0x6d, 0x74, 0x73, 0x22, 0x53, 0x0a, 0x0a, - 0x53, 0x63, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x53, 0x63, 0x61, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x73, 0x22, 0xa0, 0x7d, 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x27, 0x0a, 0x05, 0x61, 0x6c, - 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48, 0x00, 0x52, 0x05, 0x41, 0x6c, - 0x69, 0x61, 0x73, 0x12, 0x31, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x76, 0x61, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x48, 0x00, 0x52, 0x08, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x12, 0x34, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, - 0x66, 0x75, 0x6e, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x48, - 0x00, 0x52, 0x09, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x21, 0x0a, 0x03, - 0x76, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x72, 0x48, 0x00, 0x52, 0x03, 0x56, 0x61, 0x72, 0x12, - 0x27, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x48, - 0x00, 0x52, 0x05, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x2a, 0x0a, 0x06, 0x61, 0x67, 0x67, 0x72, - 0x65, 0x66, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x66, 0x48, 0x00, 0x52, 0x06, 0x41, 0x67, - 0x67, 0x72, 0x65, 0x66, 0x12, 0x3d, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, - 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x46, - 0x75, 0x6e, 0x63, 0x48, 0x00, 0x52, 0x0c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x46, - 0x75, 0x6e, 0x63, 0x12, 0x37, 0x0a, 0x0b, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x66, 0x75, - 0x6e, 0x63, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x46, 0x75, 0x6e, 0x63, 0x48, 0x00, - 0x52, 0x0a, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x46, 0x0a, 0x10, - 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x66, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, - 0x66, 0x48, 0x00, 0x52, 0x0f, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, - 0x67, 0x52, 0x65, 0x66, 0x12, 0x31, 0x0a, 0x09, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x65, 0x78, 0x70, - 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x08, 0x46, - 0x75, 0x6e, 0x63, 0x45, 0x78, 0x70, 0x72, 0x12, 0x3e, 0x0a, 0x0e, 0x6e, 0x61, 0x6d, 0x65, 0x64, - 0x5f, 0x61, 0x72, 0x67, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x64, - 0x41, 0x72, 0x67, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0c, 0x4e, 0x61, 0x6d, 0x65, 0x64, - 0x41, 0x72, 0x67, 0x45, 0x78, 0x70, 0x72, 0x12, 0x2b, 0x0a, 0x07, 0x6f, 0x70, 0x5f, 0x65, 0x78, - 0x70, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x70, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x06, 0x4f, 0x70, - 0x45, 0x78, 0x70, 0x72, 0x12, 0x3d, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, - 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x45, - 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0c, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x45, - 0x78, 0x70, 0x72, 0x12, 0x38, 0x0a, 0x0c, 0x6e, 0x75, 0x6c, 0x6c, 0x5f, 0x69, 0x66, 0x5f, 0x65, - 0x78, 0x70, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x75, 0x6c, 0x6c, 0x49, 0x66, 0x45, 0x78, 0x70, 0x72, 0x48, - 0x00, 0x52, 0x0a, 0x4e, 0x75, 0x6c, 0x6c, 0x49, 0x66, 0x45, 0x78, 0x70, 0x72, 0x12, 0x4e, 0x0a, - 0x14, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x6f, 0x70, - 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x41, 0x72, 0x72, - 0x61, 0x79, 0x4f, 0x70, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x11, 0x53, 0x63, 0x61, 0x6c, - 0x61, 0x72, 0x41, 0x72, 0x72, 0x61, 0x79, 0x4f, 0x70, 0x45, 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, - 0x09, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, - 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x08, 0x42, 0x6f, 0x6f, 0x6c, 0x45, 0x78, 0x70, 0x72, - 0x12, 0x2e, 0x0a, 0x08, 0x73, 0x75, 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x11, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x75, - 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 0x07, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, - 0x12, 0x2e, 0x0a, 0x08, 0x73, 0x75, 0x62, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x12, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x75, - 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x48, 0x00, 0x52, 0x07, 0x53, 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, - 0x12, 0x50, 0x0a, 0x14, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x73, 0x75, 0x62, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x74, 0x69, 0x76, 0x65, 0x53, 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x48, 0x00, 0x52, 0x12, - 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x53, 0x75, 0x62, 0x50, 0x6c, - 0x61, 0x6e, 0x12, 0x3a, 0x0a, 0x0c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x73, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, - 0x00, 0x52, 0x0b, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x37, - 0x0a, 0x0b, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x18, 0x15, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, - 0x69, 0x65, 0x6c, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x48, 0x00, 0x52, 0x0a, 0x46, 0x69, 0x65, - 0x6c, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x62, - 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x52, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, 0x0d, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x5f, 0x76, 0x69, - 0x61, 0x5f, 0x69, 0x6f, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x56, 0x69, 0x61, 0x49, - 0x4f, 0x48, 0x00, 0x52, 0x0b, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x56, 0x69, 0x61, 0x49, 0x4f, - 0x12, 0x47, 0x0a, 0x11, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, - 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x43, 0x6f, 0x65, 0x72, - 0x63, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0f, 0x41, 0x72, 0x72, 0x61, 0x79, 0x43, - 0x6f, 0x65, 0x72, 0x63, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x50, 0x0a, 0x14, 0x63, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x74, 0x5f, 0x72, 0x6f, 0x77, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x65, 0x78, 0x70, - 0x72, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x52, 0x6f, 0x77, 0x74, 0x79, 0x70, - 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x12, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, - 0x52, 0x6f, 0x77, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x3a, 0x0a, 0x0c, 0x63, - 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x1a, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6c, - 0x6c, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x43, 0x6f, 0x6c, 0x6c, - 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, 0x09, 0x63, 0x61, 0x73, 0x65, 0x5f, - 0x65, 0x78, 0x70, 0x72, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, - 0x52, 0x08, 0x43, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, 0x09, 0x63, 0x61, - 0x73, 0x65, 0x5f, 0x77, 0x68, 0x65, 0x6e, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x61, 0x73, 0x65, 0x57, 0x68, 0x65, - 0x6e, 0x48, 0x00, 0x52, 0x08, 0x43, 0x61, 0x73, 0x65, 0x57, 0x68, 0x65, 0x6e, 0x12, 0x3e, 0x0a, - 0x0e, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, - 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x43, 0x61, 0x73, 0x65, 0x54, 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, - 0x0c, 0x43, 0x61, 0x73, 0x65, 0x54, 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x34, 0x0a, - 0x0a, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x1e, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x72, 0x72, - 0x61, 0x79, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x09, 0x41, 0x72, 0x72, 0x61, 0x79, 0x45, - 0x78, 0x70, 0x72, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x6f, 0x77, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, - 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x52, 0x6f, 0x77, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x07, 0x52, 0x6f, 0x77, 0x45, - 0x78, 0x70, 0x72, 0x12, 0x44, 0x0a, 0x10, 0x72, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, - 0x72, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x77, 0x43, 0x6f, 0x6d, 0x70, - 0x61, 0x72, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0e, 0x52, 0x6f, 0x77, 0x43, 0x6f, - 0x6d, 0x70, 0x61, 0x72, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x3d, 0x0a, 0x0d, 0x63, 0x6f, 0x61, - 0x6c, 0x65, 0x73, 0x63, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x61, 0x6c, - 0x65, 0x73, 0x63, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0c, 0x43, 0x6f, 0x61, 0x6c, - 0x65, 0x73, 0x63, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x38, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x5f, - 0x6d, 0x61, 0x78, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4d, 0x69, 0x6e, 0x4d, 0x61, 0x78, - 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0a, 0x4d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x45, 0x78, - 0x70, 0x72, 0x12, 0x49, 0x0a, 0x11, 0x73, 0x71, 0x6c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x66, - 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x51, 0x4c, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x53, 0x51, 0x4c, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, - 0x08, 0x78, 0x6d, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x58, 0x6d, 0x6c, 0x45, 0x78, - 0x70, 0x72, 0x48, 0x00, 0x52, 0x07, 0x58, 0x6d, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, - 0x09, 0x6e, 0x75, 0x6c, 0x6c, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x75, 0x6c, 0x6c, - 0x54, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x4e, 0x75, 0x6c, 0x6c, 0x54, 0x65, 0x73, 0x74, - 0x12, 0x3a, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x5f, 0x74, 0x65, 0x73, 0x74, - 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x54, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, - 0x0b, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x54, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x10, - 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, - 0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, - 0x48, 0x00, 0x52, 0x0e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x6d, 0x61, - 0x69, 0x6e, 0x12, 0x54, 0x0a, 0x16, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x6f, 0x5f, - 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x28, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, - 0x65, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x48, 0x00, 0x52, 0x13, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x6d, - 0x61, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3e, 0x0a, 0x0e, 0x73, 0x65, 0x74, 0x5f, - 0x74, 0x6f, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x74, 0x54, - 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x53, 0x65, 0x74, 0x54, - 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x41, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, - 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x2a, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x66, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x43, 0x75, - 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x66, 0x45, 0x78, 0x70, 0x72, 0x12, 0x41, 0x0a, 0x0f, 0x6e, - 0x65, 0x78, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x2b, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, - 0x0d, 0x4e, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x40, - 0x0a, 0x0e, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x65, 0x6c, 0x65, 0x6d, - 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x48, - 0x00, 0x52, 0x0d, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x6c, 0x65, 0x6d, - 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x79, - 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x48, 0x00, 0x52, - 0x0b, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x3b, 0x0a, 0x0d, - 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x62, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x2e, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, - 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x52, 0x65, 0x66, 0x48, 0x00, 0x52, 0x0b, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x52, 0x65, 0x66, 0x12, 0x31, 0x0a, 0x09, 0x6a, 0x6f, 0x69, - 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x78, 0x70, 0x72, - 0x48, 0x00, 0x52, 0x08, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, 0x09, - 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x30, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x45, - 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x08, 0x46, 0x72, 0x6f, 0x6d, 0x45, 0x78, 0x70, 0x72, 0x12, - 0x44, 0x0a, 0x10, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x5f, 0x65, - 0x78, 0x70, 0x72, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x45, - 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, - 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x37, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x6f, 0x5f, 0x63, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x6f, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, - 0x48, 0x00, 0x52, 0x0a, 0x49, 0x6e, 0x74, 0x6f, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x3a, - 0x0a, 0x0c, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x33, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4d, 0x65, 0x72, 0x67, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0b, 0x4d, - 0x65, 0x72, 0x67, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x61, - 0x77, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x07, 0x52, 0x61, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x27, 0x0a, 0x05, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x48, 0x00, 0x52, 0x05, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x12, 0x37, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x5f, 0x73, 0x74, - 0x6d, 0x74, 0x18, 0x36, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, - 0x52, 0x0a, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, - 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x37, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x34, - 0x0a, 0x0a, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x39, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4d, 0x65, - 0x72, 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x09, 0x4d, 0x65, 0x72, 0x67, 0x65, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, 0x73, - 0x74, 0x6d, 0x74, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x0a, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, - 0x0b, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x3b, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x52, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3d, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x73, 0x73, 0x69, - 0x67, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x4c, 0x41, 0x73, 0x73, 0x69, 0x67, - 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x50, 0x4c, 0x41, 0x73, 0x73, 0x69, 0x67, - 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x44, 0x0a, 0x10, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, - 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, - 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x41, 0x6c, 0x74, - 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x41, 0x0a, 0x0f, 0x61, - 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6d, 0x64, 0x18, 0x3e, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x48, 0x00, 0x52, - 0x0d, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x12, 0x47, - 0x0a, 0x11, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x73, - 0x74, 0x6d, 0x74, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, - 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x6f, 0x6d, - 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4a, 0x0a, 0x12, 0x73, 0x65, 0x74, 0x5f, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x40, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, - 0x65, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x10, 0x53, 0x65, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x34, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x6d, - 0x74, 0x18, 0x41, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x09, - 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x41, 0x0a, 0x0f, 0x67, 0x72, 0x61, - 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x42, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x47, 0x72, - 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x47, - 0x72, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x69, 0x0a, 0x1d, - 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x70, 0x72, - 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x43, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, - 0x6c, 0x74, 0x65, 0x72, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x69, 0x76, 0x69, - 0x6c, 0x65, 0x67, 0x65, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x1a, 0x41, 0x6c, 0x74, - 0x65, 0x72, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, - 0x67, 0x65, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x47, 0x0a, 0x11, 0x63, 0x6c, 0x6f, 0x73, 0x65, - 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x44, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6c, - 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, - 0x0f, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x3a, 0x0a, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, - 0x18, 0x45, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, - 0x0b, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x31, 0x0a, 0x09, - 0x63, 0x6f, 0x70, 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x70, 0x79, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, 0x43, 0x6f, 0x70, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, - 0x37, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x47, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x48, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x31, 0x0a, 0x09, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x49, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x44, 0x72, 0x6f, 0x70, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, 0x44, 0x72, 0x6f, 0x70, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3d, 0x0a, 0x0d, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, - 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x3a, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, - 0x74, 0x6d, 0x74, 0x18, 0x4b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, - 0x34, 0x0a, 0x0a, 0x66, 0x65, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x4c, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, - 0x65, 0x74, 0x63, 0x68, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x09, 0x46, 0x65, 0x74, 0x63, - 0x68, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x34, 0x0a, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, - 0x74, 0x6d, 0x74, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, - 0x52, 0x09, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x50, 0x0a, 0x14, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, - 0x74, 0x6d, 0x74, 0x18, 0x4e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4d, 0x0a, - 0x13, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x4f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, - 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2b, 0x0a, 0x07, - 0x64, 0x6f, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x50, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x6f, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x06, 0x44, 0x6f, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x72, 0x65, 0x6e, - 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x51, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, - 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x31, 0x0a, 0x09, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, - 0x52, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x52, 0x75, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, 0x52, 0x75, 0x6c, - 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x53, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x0a, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, - 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x54, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, - 0x69, 0x73, 0x74, 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x4c, 0x69, 0x73, - 0x74, 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3d, 0x0a, 0x0d, 0x75, 0x6e, 0x6c, 0x69, 0x73, - 0x74, 0x65, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x55, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x55, 0x6e, 0x6c, 0x69, 0x73, 0x74, - 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x55, 0x6e, 0x6c, 0x69, 0x73, 0x74, - 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x46, 0x0a, 0x10, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x56, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x31, - 0x0a, 0x09, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x57, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x69, 0x65, - 0x77, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, 0x56, 0x69, 0x65, 0x77, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x31, 0x0a, 0x09, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x58, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4c, 0x6f, 0x61, 0x64, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, 0x4c, 0x6f, 0x61, 0x64, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4a, 0x0a, 0x12, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x64, - 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x59, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x10, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x3d, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x62, 0x5f, 0x73, 0x74, 0x6d, - 0x74, 0x18, 0x5a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x62, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x62, 0x53, 0x74, 0x6d, 0x74, 0x12, - 0x37, 0x0a, 0x0b, 0x64, 0x72, 0x6f, 0x70, 0x64, 0x62, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x5b, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x44, 0x72, 0x6f, 0x70, 0x64, 0x62, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x44, 0x72, - 0x6f, 0x70, 0x64, 0x62, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x76, 0x61, 0x63, 0x75, - 0x75, 0x6d, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x5c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x56, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x3a, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x6d, - 0x74, 0x18, 0x5d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, - 0x52, 0x0b, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4e, 0x0a, - 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x73, - 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x5e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x41, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x41, 0x0a, - 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x73, 0x74, 0x6d, 0x74, - 0x18, 0x5f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x3e, 0x0a, 0x0e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x73, 0x74, - 0x6d, 0x74, 0x18, 0x60, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x71, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x0c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x71, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x47, 0x0a, 0x11, 0x76, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, - 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x61, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, - 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, - 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4a, 0x0a, 0x12, 0x76, 0x61, 0x72, - 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, - 0x62, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x6d, - 0x74, 0x48, 0x00, 0x52, 0x10, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x68, 0x6f, - 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3a, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, - 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x63, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x53, 0x74, - 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x44, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x72, 0x69, 0x67, - 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x72, 0x69, - 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, - 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x47, 0x0a, 0x11, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x65, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x50, 0x4c, 0x61, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, - 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x4c, 0x61, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x44, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x66, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, - 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, - 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x41, 0x0a, 0x0f, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, - 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x67, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, - 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x41, 0x6c, 0x74, 0x65, - 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3e, 0x0a, 0x0e, 0x64, 0x72, 0x6f, - 0x70, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x68, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, - 0x70, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x44, 0x72, 0x6f, - 0x70, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x31, 0x0a, 0x09, 0x6c, 0x6f, 0x63, - 0x6b, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x69, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x08, 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x50, 0x0a, 0x14, - 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x65, 0x74, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x6a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, - 0x73, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x43, 0x6f, 0x6e, 0x73, - 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3a, - 0x0a, 0x0c, 0x72, 0x65, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x6b, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x52, 0x65, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x52, - 0x65, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x44, 0x0a, 0x10, 0x63, 0x68, - 0x65, 0x63, 0x6b, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x6c, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, - 0x52, 0x0e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x4a, 0x0a, 0x12, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x6d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x10, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4d, 0x0a, 0x13, - 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x73, - 0x74, 0x6d, 0x74, 0x18, 0x6e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x70, 0x0a, 0x20, 0x61, - 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, - 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, - 0x6f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, - 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, - 0x1c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, - 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x57, 0x0a, - 0x17, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, - 0x73, 0x65, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x70, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, - 0x52, 0x14, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x53, - 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4b, 0x0a, 0x13, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, - 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x71, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, - 0x6c, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x10, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x56, 0x0a, 0x16, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x72, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x44, 0x0a, 0x10, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, - 0x73, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x73, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x73, 0x74, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x4e, 0x0a, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x70, 0x5f, 0x63, - 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x74, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x4f, 0x70, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x51, 0x0a, 0x15, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x70, 0x5f, 0x66, - 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x75, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x4f, 0x70, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, - 0x52, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4e, 0x0a, 0x14, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x6f, 0x70, - 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x76, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x4f, 0x70, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x70, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3a, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x77, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x53, 0x74, 0x6d, - 0x74, 0x48, 0x00, 0x52, 0x0b, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x3a, 0x0a, 0x0c, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, - 0x18, 0x78, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, - 0x0b, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x43, 0x0a, 0x0f, - 0x64, 0x65, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, - 0x79, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x44, 0x65, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x0e, 0x44, 0x65, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x4d, 0x0a, 0x13, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x5f, 0x63, 0x75, 0x72, - 0x73, 0x6f, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x7a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x63, 0x6c, 0x61, 0x72, - 0x65, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x44, - 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x57, 0x0a, 0x17, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, - 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x7b, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6d, - 0x74, 0x48, 0x00, 0x52, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x53, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x51, 0x0a, 0x15, 0x64, 0x72, 0x6f, - 0x70, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x74, - 0x6d, 0x74, 0x18, 0x7c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, - 0x63, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5d, 0x0a, 0x19, - 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x64, 0x65, 0x70, - 0x65, 0x6e, 0x64, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x7d, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x20, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, - 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x73, 0x53, 0x74, 0x6d, - 0x74, 0x48, 0x00, 0x52, 0x16, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5a, 0x0a, 0x18, 0x61, - 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x7e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, - 0x52, 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x44, 0x0a, 0x10, 0x61, 0x6c, 0x74, 0x65, 0x72, - 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x7f, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, - 0x65, 0x72, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x41, - 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4e, 0x0a, - 0x13, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x80, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x41, 0x6c, 0x74, 0x65, - 0x72, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x42, 0x0a, - 0x0f, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, - 0x18, 0x81, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x0d, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x42, 0x0a, 0x0f, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x82, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x64, - 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x44, 0x72, 0x6f, 0x70, 0x4f, 0x77, 0x6e, 0x65, - 0x64, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4e, 0x0a, 0x13, 0x72, 0x65, 0x61, 0x73, 0x73, 0x69, 0x67, - 0x6e, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x83, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, - 0x65, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x11, 0x52, 0x65, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x4f, 0x77, 0x6e, 0x65, - 0x64, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4e, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x84, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, - 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x11, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x45, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, - 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x85, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x45, 0x6e, 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x11, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6d, - 0x74, 0x18, 0x86, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x42, 0x0a, 0x0f, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, - 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x87, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, - 0x72, 0x45, 0x6e, 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x41, 0x6c, 0x74, - 0x65, 0x72, 0x45, 0x6e, 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5a, 0x0a, 0x17, 0x61, 0x6c, - 0x74, 0x65, 0x72, 0x5f, 0x74, 0x73, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, - 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x88, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, 0x44, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, - 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x72, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x63, 0x0a, 0x1a, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, - 0x74, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x89, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x18, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x42, 0x0a, 0x0f, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x64, 0x77, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x8a, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, - 0x52, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, - 0x3f, 0x0a, 0x0e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x66, 0x64, 0x77, 0x5f, 0x73, 0x74, 0x6d, - 0x74, 0x18, 0x8b, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x0c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x61, 0x0a, 0x1a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x69, - 0x67, 0x6e, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x8c, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x17, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x5e, 0x0a, 0x19, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x66, 0x6f, 0x72, - 0x65, 0x69, 0x67, 0x6e, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, - 0x18, 0x8d, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x16, 0x41, 0x6c, 0x74, - 0x65, 0x72, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x5b, 0x0a, 0x18, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x73, - 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, - 0x8e, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x70, - 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x58, 0x0a, 0x17, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d, - 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x8f, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, - 0x6d, 0x74, 0x48, 0x00, 0x52, 0x14, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x55, 0x0a, 0x16, 0x64, 0x72, - 0x6f, 0x70, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x90, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x13, 0x44, 0x72, - 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x6b, 0x0a, 0x1e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, - 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x73, - 0x74, 0x6d, 0x74, 0x18, 0x91, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x1a, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, - 0x61, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5c, - 0x0a, 0x19, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x6f, - 0x76, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x92, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, - 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3f, 0x0a, 0x0e, - 0x73, 0x65, 0x63, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x93, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x53, 0x65, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, - 0x0c, 0x53, 0x65, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5e, 0x0a, - 0x19, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x94, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, - 0x65, 0x69, 0x67, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x61, 0x0a, - 0x1a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x95, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6d, - 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x17, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, - 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x54, 0x0a, 0x15, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, - 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x96, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, - 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x51, 0x0a, 0x14, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, - 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x97, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x74, 0x65, - 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x6a, 0x0a, 0x1d, 0x61, 0x6c, 0x74, - 0x65, 0x72, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x98, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, - 0x65, 0x72, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x1a, 0x41, 0x6c, 0x74, 0x65, 0x72, - 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x55, 0x0a, 0x16, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, - 0x99, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, - 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x52, 0x0a, 0x15, - 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x72, 0x69, 0x67, - 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9a, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x52, 0x0a, 0x15, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x6d, 0x61, 0x74, 0x5f, - 0x76, 0x69, 0x65, 0x77, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9b, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x66, 0x72, - 0x65, 0x73, 0x68, 0x4d, 0x61, 0x74, 0x56, 0x69, 0x65, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, - 0x52, 0x12, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x4d, 0x61, 0x74, 0x56, 0x69, 0x65, 0x77, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x54, 0x0a, 0x15, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, - 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9c, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x13, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x11, 0x61, 0x6c, - 0x74, 0x65, 0x72, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, - 0x9d, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x6d, - 0x74, 0x48, 0x00, 0x52, 0x0f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4b, 0x0a, 0x12, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x70, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9e, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, - 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x48, 0x0a, 0x11, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9f, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x41, 0x6c, 0x74, 0x65, - 0x72, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x54, 0x0a, 0x15, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa0, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x13, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x3f, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x6d, 0x5f, 0x73, - 0x74, 0x6d, 0x74, 0x18, 0xa1, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x6d, 0x53, 0x74, - 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x6d, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x5a, 0x0a, 0x17, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x75, 0x62, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa2, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x57, - 0x0a, 0x16, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, - 0x00, 0x52, 0x14, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5d, 0x0a, 0x18, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, - 0x74, 0x6d, 0x74, 0x18, 0xa4, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x16, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5a, 0x0a, 0x17, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, - 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, - 0x74, 0x18, 0xa5, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x15, 0x41, 0x6c, 0x74, - 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x57, 0x0a, 0x16, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa6, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, - 0x72, 0x6f, 0x70, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x14, 0x44, 0x72, 0x6f, 0x70, 0x53, 0x75, 0x62, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x11, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, - 0x18, 0xa7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, - 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x51, 0x0a, 0x14, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x63, - 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa8, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x41, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x09, 0x63, 0x61, 0x6c, 0x6c, - 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa9, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, - 0x48, 0x00, 0x52, 0x08, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x45, 0x0a, 0x10, - 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, - 0x18, 0xaa, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, 0x6d, - 0x74, 0x48, 0x00, 0x52, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x2b, 0x0a, 0x06, 0x61, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0xab, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x41, 0x5f, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x06, 0x41, 0x5f, 0x45, 0x78, 0x70, 0x72, - 0x12, 0x35, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x72, 0x65, 0x66, 0x18, 0xac, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x65, 0x66, 0x48, 0x00, 0x52, 0x09, 0x43, 0x6f, - 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x32, 0x0a, 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x5f, 0x72, 0x65, 0x66, 0x18, 0xad, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x66, 0x48, - 0x00, 0x52, 0x08, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x66, 0x12, 0x32, 0x0a, 0x09, 0x66, - 0x75, 0x6e, 0x63, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x18, 0xae, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x43, - 0x61, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x08, 0x46, 0x75, 0x6e, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x12, - 0x2b, 0x0a, 0x06, 0x61, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x18, 0xaf, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x53, 0x74, - 0x61, 0x72, 0x48, 0x00, 0x52, 0x06, 0x41, 0x5f, 0x53, 0x74, 0x61, 0x72, 0x12, 0x34, 0x0a, 0x09, - 0x61, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0xb0, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x49, 0x6e, - 0x64, 0x69, 0x63, 0x65, 0x73, 0x48, 0x00, 0x52, 0x09, 0x41, 0x5f, 0x49, 0x6e, 0x64, 0x69, 0x63, - 0x65, 0x73, 0x12, 0x40, 0x0a, 0x0d, 0x61, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0xb1, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x49, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0d, 0x41, 0x5f, 0x49, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0c, 0x61, 0x5f, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, - 0x65, 0x78, 0x70, 0x72, 0x18, 0xb2, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x41, 0x72, 0x72, 0x61, 0x79, 0x45, 0x78, - 0x70, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x41, 0x5f, 0x41, 0x72, 0x72, 0x61, 0x79, 0x45, 0x78, 0x70, - 0x72, 0x12, 0x35, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, - 0xb3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x52, 0x65, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x00, 0x52, 0x09, 0x52, - 0x65, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x45, 0x0a, 0x10, 0x6d, 0x75, 0x6c, 0x74, - 0x69, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x65, 0x66, 0x18, 0xb4, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4d, - 0x75, 0x6c, 0x74, 0x69, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x66, 0x48, 0x00, 0x52, - 0x0e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x66, 0x12, - 0x32, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x63, 0x61, 0x73, 0x74, 0x18, 0xb5, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, - 0x79, 0x70, 0x65, 0x43, 0x61, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x54, 0x79, 0x70, 0x65, 0x43, - 0x61, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x0e, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x63, - 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0xb6, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x43, - 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, - 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x07, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x62, - 0x79, 0x18, 0xb7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x48, 0x00, 0x52, 0x06, 0x53, 0x6f, - 0x72, 0x74, 0x42, 0x79, 0x12, 0x35, 0x0a, 0x0a, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x64, - 0x65, 0x66, 0x18, 0xb8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x44, 0x65, 0x66, 0x48, 0x00, - 0x52, 0x09, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x44, 0x65, 0x66, 0x12, 0x44, 0x0a, 0x0f, 0x72, - 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x18, 0xb9, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, - 0x00, 0x52, 0x0e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x73, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x12, 0x41, 0x0a, 0x0e, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0xba, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x12, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x18, 0xbb, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x48, 0x00, 0x52, - 0x10, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, - 0x65, 0x12, 0x45, 0x0a, 0x10, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, - 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x18, 0xbc, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x48, 0x00, 0x52, 0x0e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, - 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x4f, 0x0a, 0x14, 0x72, 0x61, 0x6e, 0x67, - 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x63, 0x6f, 0x6c, - 0x18, 0xbd, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, - 0x63, 0x43, 0x6f, 0x6c, 0x48, 0x00, 0x52, 0x11, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x43, 0x6f, 0x6c, 0x12, 0x32, 0x0a, 0x09, 0x74, 0x79, 0x70, - 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0xbe, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x48, 0x00, 0x52, 0x08, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x35, 0x0a, - 0x0a, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x64, 0x65, 0x66, 0x18, 0xbf, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, - 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x65, 0x66, 0x48, 0x00, 0x52, 0x09, 0x43, 0x6f, 0x6c, 0x75, 0x6d, - 0x6e, 0x44, 0x65, 0x66, 0x12, 0x35, 0x0a, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x65, 0x6c, - 0x65, 0x6d, 0x18, 0xc0, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x45, 0x6c, 0x65, 0x6d, 0x48, 0x00, - 0x52, 0x09, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x35, 0x0a, 0x0a, 0x73, - 0x74, 0x61, 0x74, 0x73, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x18, 0xc1, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x45, 0x6c, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x09, 0x53, 0x74, 0x61, 0x74, 0x73, 0x45, 0x6c, - 0x65, 0x6d, 0x12, 0x37, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, - 0x18, 0xc2, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x48, 0x00, 0x52, - 0x0a, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x08, 0x64, - 0x65, 0x66, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x18, 0xc3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x66, 0x45, 0x6c, 0x65, - 0x6d, 0x48, 0x00, 0x52, 0x07, 0x44, 0x65, 0x66, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x42, 0x0a, 0x0f, - 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x62, 0x6c, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x18, - 0xc4, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x48, - 0x00, 0x52, 0x0d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x12, 0x4b, 0x0a, 0x12, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x62, 0x6c, 0x5f, 0x66, 0x75, - 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xc5, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, - 0x6c, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x54, 0x62, 0x6c, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4e, 0x0a, - 0x13, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x18, 0xc6, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, - 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x11, 0x54, 0x61, 0x62, 0x6c, - 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x48, 0x0a, - 0x11, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x6f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0xc7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0f, 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x11, 0x73, 0x6f, 0x72, 0x74, 0x5f, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0xc8, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, - 0x6f, 0x72, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, - 0x52, 0x0f, 0x53, 0x6f, 0x72, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x12, 0x3b, 0x0a, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, - 0x74, 0x18, 0xc9, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x74, 0x48, - 0x00, 0x52, 0x0b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x74, 0x12, 0x3e, - 0x0a, 0x0d, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, - 0xca, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, - 0x52, 0x0c, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x45, - 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x61, 0x72, - 0x67, 0x73, 0x18, 0xcb, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, - 0x72, 0x67, 0x73, 0x48, 0x00, 0x52, 0x0e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, - 0x68, 0x41, 0x72, 0x67, 0x73, 0x12, 0x38, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, - 0x70, 0x72, 0x69, 0x76, 0x18, 0xcc, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x72, 0x69, - 0x76, 0x48, 0x00, 0x52, 0x0a, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x72, 0x69, 0x76, 0x12, - 0x4f, 0x0a, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x70, 0x5f, 0x63, 0x6c, 0x61, - 0x73, 0x73, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x18, 0xcd, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x4f, 0x70, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x11, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x74, 0x65, 0x6d, - 0x12, 0x48, 0x0a, 0x11, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x69, 0x6b, 0x65, 0x5f, 0x63, - 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0xce, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x6b, - 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x4c, 0x69, 0x6b, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x12, 0x66, 0x75, - 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, - 0x18, 0xcf, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x65, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x11, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x41, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, - 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0xd0, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x6f, - 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x4c, - 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0f, - 0x72, 0x6f, 0x77, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, - 0xd1, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x52, 0x6f, 0x77, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, - 0x00, 0x52, 0x0d, 0x52, 0x6f, 0x77, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, - 0x12, 0x3e, 0x0a, 0x0d, 0x78, 0x6d, 0x6c, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, - 0x65, 0x18, 0xd2, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x58, 0x6d, 0x6c, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, - 0x48, 0x00, 0x52, 0x0c, 0x58, 0x6d, 0x6c, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, - 0x12, 0x38, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, - 0xd3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0a, - 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0c, 0x69, 0x6e, - 0x66, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0xd4, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x66, - 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x49, 0x6e, 0x66, 0x65, - 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x12, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, - 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0xd5, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, - 0x48, 0x00, 0x52, 0x10, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x10, 0x63, 0x74, 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, - 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0xd6, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x54, 0x45, 0x53, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x43, 0x54, - 0x45, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x44, 0x0a, - 0x0f, 0x63, 0x74, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, - 0x18, 0xd7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x43, 0x54, 0x45, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x54, 0x45, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x43, 0x6c, 0x61, - 0x75, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0xd8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0f, 0x43, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x48, 0x0a, - 0x11, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x5f, 0x77, 0x68, 0x65, 0x6e, 0x5f, 0x63, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x18, 0xd9, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x57, 0x68, 0x65, 0x6e, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x57, 0x68, 0x65, - 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x5f, - 0x73, 0x70, 0x65, 0x63, 0x18, 0xda, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x48, - 0x00, 0x52, 0x08, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x4d, 0x0a, 0x12, 0x74, - 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0xdb, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x11, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, - 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x41, 0x0a, 0x0e, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x18, 0xdc, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6c, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x0d, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x41, 0x0a, - 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, - 0xdd, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x48, - 0x00, 0x52, 0x0d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, - 0x12, 0x51, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0xde, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, - 0x12, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x53, - 0x70, 0x65, 0x63, 0x12, 0x54, 0x0a, 0x15, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x75, 0x6d, 0x18, 0xdf, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, - 0x75, 0x6d, 0x48, 0x00, 0x52, 0x13, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x61, 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, 0x75, 0x6d, 0x12, 0x3e, 0x0a, 0x0d, 0x70, 0x61, 0x72, - 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6d, 0x64, 0x18, 0xe0, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6d, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6d, 0x64, 0x12, 0x44, 0x0a, 0x0f, 0x76, 0x61, 0x63, - 0x75, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xe1, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, - 0x61, 0x63, 0x75, 0x75, 0x6d, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, - 0x0e, 0x56, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x51, 0x0a, 0x14, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, - 0x62, 0x6a, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0xe2, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x12, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x53, 0x70, - 0x65, 0x63, 0x12, 0x4a, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0xe3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x48, 0x00, 0x52, 0x10, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x48, - 0x0a, 0x11, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x18, 0xe4, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x64, 0x65, - 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x00, 0x52, 0x0f, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x43, - 0x6f, 0x64, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x3b, 0x0a, 0x0c, 0x63, 0x61, 0x6c, 0x6c, - 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0xe5, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x61, 0x6c, 0x6c, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x2e, 0x0a, 0x07, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, - 0x18, 0xe6, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x48, 0x00, 0x52, 0x07, 0x49, 0x6e, - 0x74, 0x65, 0x67, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x18, 0xe7, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x48, 0x00, 0x52, 0x05, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, - 0x2e, 0x0a, 0x07, 0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x18, 0xe8, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, 0x6f, 0x6f, - 0x6c, 0x65, 0x61, 0x6e, 0x48, 0x00, 0x52, 0x07, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x12, - 0x2b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0xe9, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x48, 0x00, 0x52, 0x06, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x35, 0x0a, 0x0a, - 0x62, 0x69, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0xea, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, 0x69, 0x74, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x09, 0x42, 0x69, 0x74, 0x53, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x12, 0x25, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0xeb, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x48, 0x00, 0x52, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x08, 0x69, 0x6e, - 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0xec, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, - 0x48, 0x00, 0x52, 0x07, 0x49, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x08, 0x6f, - 0x69, 0x64, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0xed, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x69, 0x64, 0x4c, 0x69, 0x73, - 0x74, 0x48, 0x00, 0x52, 0x07, 0x4f, 0x69, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x07, - 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0xee, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x43, 0x6f, 0x6e, 0x73, - 0x74, 0x48, 0x00, 0x52, 0x07, 0x41, 0x5f, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x42, 0x06, 0x0a, 0x04, - 0x6e, 0x6f, 0x64, 0x65, 0x22, 0x1d, 0x0a, 0x07, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x12, - 0x12, 0x0a, 0x04, 0x69, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x69, - 0x76, 0x61, 0x6c, 0x22, 0x1b, 0x0a, 0x05, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, - 0x66, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x76, 0x61, 0x6c, - 0x22, 0x23, 0x0a, 0x07, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x62, - 0x6f, 0x6f, 0x6c, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x62, 0x6f, - 0x6f, 0x6c, 0x76, 0x61, 0x6c, 0x22, 0x1c, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, - 0x12, 0x0a, 0x04, 0x73, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, - 0x76, 0x61, 0x6c, 0x22, 0x21, 0x0a, 0x09, 0x42, 0x69, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x12, 0x14, 0x0a, 0x05, 0x62, 0x73, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x62, 0x73, 0x76, 0x61, 0x6c, 0x22, 0x2c, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, - 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x73, 0x22, 0x2f, 0x0a, 0x07, 0x4f, 0x69, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, - 0x24, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x2f, 0x0a, 0x07, 0x49, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, - 0x12, 0x24, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x98, 0x02, 0x0a, 0x07, 0x41, 0x5f, 0x43, 0x6f, 0x6e, - 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x65, - 0x67, 0x65, 0x72, 0x48, 0x00, 0x52, 0x04, 0x69, 0x76, 0x61, 0x6c, 0x12, 0x25, 0x0a, 0x04, 0x66, - 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x48, 0x00, 0x52, 0x04, 0x66, 0x76, - 0x61, 0x6c, 0x12, 0x2d, 0x0a, 0x07, 0x62, 0x6f, 0x6f, 0x6c, 0x76, 0x61, 0x6c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, - 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x48, 0x00, 0x52, 0x07, 0x62, 0x6f, 0x6f, 0x6c, 0x76, 0x61, - 0x6c, 0x12, 0x26, 0x0a, 0x04, 0x73, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x48, 0x00, 0x52, 0x04, 0x73, 0x76, 0x61, 0x6c, 0x12, 0x2b, 0x0a, 0x05, 0x62, 0x73, 0x76, - 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x42, 0x69, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, - 0x05, 0x62, 0x73, 0x76, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x6e, 0x75, 0x6c, 0x6c, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x6e, 0x75, 0x6c, 0x6c, 0x12, 0x1a, - 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x05, 0x0a, 0x03, 0x76, 0x61, - 0x6c, 0x22, 0x51, 0x0a, 0x05, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x6c, - 0x69, 0x61, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, - 0x6c, 0x69, 0x61, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x22, 0xe3, 0x01, 0x0a, 0x08, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, - 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, - 0x03, 0x69, 0x6e, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x69, 0x6e, 0x68, 0x12, - 0x26, 0x0a, 0x0e, 0x72, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, - 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1a, - 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xaf, 0x04, 0x0a, 0x09, 0x54, - 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x28, 0x0a, 0x07, 0x6e, 0x73, 0x5f, 0x75, - 0x72, 0x69, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6e, 0x73, 0x5f, 0x75, 0x72, - 0x69, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x28, - 0x0a, 0x07, 0x64, 0x6f, 0x63, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x07, 0x64, 0x6f, 0x63, 0x65, 0x78, 0x70, 0x72, 0x12, 0x28, 0x0a, 0x07, 0x72, 0x6f, 0x77, 0x65, - 0x78, 0x70, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x72, 0x6f, 0x77, 0x65, 0x78, - 0x70, 0x72, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2a, - 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x63, 0x6f, - 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, - 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x6f, - 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x73, 0x12, 0x30, 0x0a, 0x0b, - 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0b, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x73, 0x12, 0x1a, - 0x0a, 0x08, 0x6e, 0x6f, 0x74, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x04, - 0x52, 0x08, 0x6e, 0x6f, 0x74, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x72, - 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x63, 0x6f, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0d, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x63, 0x6f, 0x6c, - 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xab, 0x02, 0x0a, - 0x03, 0x56, 0x61, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x72, 0x6e, 0x6f, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x72, 0x6e, 0x6f, 0x12, 0x1a, 0x0a, 0x08, - 0x76, 0x61, 0x72, 0x61, 0x74, 0x74, 0x6e, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x76, 0x61, 0x72, 0x61, 0x74, 0x74, 0x6e, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x61, 0x72, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x61, 0x72, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x61, 0x72, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x76, 0x61, 0x72, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, - 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x61, 0x72, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x76, 0x61, 0x72, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, - 0x0a, 0x0b, 0x76, 0x61, 0x72, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x76, 0x61, 0x72, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, - 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x61, 0x72, 0x6e, 0x6f, 0x73, 0x79, 0x6e, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x72, 0x6e, 0x6f, 0x73, 0x79, 0x6e, 0x12, 0x20, 0x0a, 0x0b, - 0x76, 0x61, 0x72, 0x61, 0x74, 0x74, 0x6e, 0x6f, 0x73, 0x79, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0b, 0x76, 0x61, 0x72, 0x61, 0x74, 0x74, 0x6e, 0x6f, 0x73, 0x79, 0x6e, 0x12, 0x1a, - 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf4, 0x01, 0x0a, 0x05, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x6b, - 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x09, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x74, 0x79, 0x70, - 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x74, 0x79, 0x70, - 0x6d, 0x6f, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x63, 0x6f, 0x6c, 0x6c, - 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x63, - 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0xd6, 0x05, 0x0a, 0x06, 0x41, 0x67, 0x67, 0x72, 0x65, 0x66, 0x12, 0x20, 0x0a, 0x03, - 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x1a, - 0x0a, 0x08, 0x61, 0x67, 0x67, 0x66, 0x6e, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x61, 0x67, 0x67, 0x66, 0x6e, 0x6f, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x67, - 0x67, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x67, 0x67, - 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x67, 0x67, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x67, 0x67, 0x63, 0x6f, 0x6c, 0x6c, - 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, - 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x67, 0x67, 0x74, 0x72, 0x61, 0x6e, 0x73, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x67, 0x67, 0x74, - 0x72, 0x61, 0x6e, 0x73, 0x74, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x61, 0x67, 0x67, 0x61, - 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x61, - 0x67, 0x67, 0x61, 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x61, 0x67, - 0x67, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x61, 0x72, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0d, 0x61, 0x67, 0x67, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x61, 0x72, 0x67, 0x73, - 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, - 0x61, 0x72, 0x67, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x61, 0x67, 0x67, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x61, 0x67, 0x67, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x12, 0x30, 0x0a, 0x0b, 0x61, 0x67, 0x67, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x18, - 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x61, 0x67, 0x67, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, - 0x63, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x61, 0x67, 0x67, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x61, 0x67, 0x67, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, - 0x12, 0x18, 0x0a, 0x07, 0x61, 0x67, 0x67, 0x73, 0x74, 0x61, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x61, 0x67, 0x67, 0x73, 0x74, 0x61, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x67, - 0x67, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0b, 0x61, 0x67, 0x67, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, 0x12, 0x18, 0x0a, 0x07, - 0x61, 0x67, 0x67, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, - 0x67, 0x67, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x67, 0x67, 0x6c, 0x65, 0x76, - 0x65, 0x6c, 0x73, 0x75, 0x70, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x67, 0x67, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x12, 0x2e, 0x0a, 0x08, 0x61, 0x67, 0x67, 0x73, - 0x70, 0x6c, 0x69, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x67, 0x67, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x52, 0x08, - 0x61, 0x67, 0x67, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x67, 0x67, 0x6e, - 0x6f, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x61, 0x67, 0x67, 0x6e, 0x6f, 0x12, 0x1e, - 0x0a, 0x0a, 0x61, 0x67, 0x67, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6e, 0x6f, 0x18, 0x13, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x61, 0x67, 0x67, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6e, 0x6f, 0x12, 0x1a, - 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xda, 0x01, 0x0a, 0x0c, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x20, 0x0a, 0x03, 0x78, - 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, - 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, - 0x73, 0x12, 0x22, 0x0a, 0x04, 0x72, 0x65, 0x66, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x04, 0x72, 0x65, 0x66, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x6c, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x67, 0x67, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x61, 0x67, 0x67, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xdc, 0x02, 0x0a, 0x0a, 0x57, 0x69, 0x6e, 0x64, - 0x6f, 0x77, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x69, 0x6e, 0x66, - 0x6e, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x77, 0x69, 0x6e, 0x66, - 0x6e, 0x6f, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x69, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x77, 0x69, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x77, 0x69, 0x6e, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x77, 0x69, 0x6e, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, - 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, - 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, - 0x67, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x61, 0x67, 0x67, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x61, 0x67, 0x67, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, - 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x72, 0x65, 0x66, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x77, 0x69, 0x6e, 0x72, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x77, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x61, 0x67, 0x67, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x06, 0x77, 0x69, 0x6e, 0x61, 0x67, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xaf, 0x03, 0x0a, 0x0f, 0x53, 0x75, 0x62, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x66, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x2a, 0x0a, 0x10, - 0x72, 0x65, 0x66, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x66, 0x63, 0x6f, 0x6e, 0x74, 0x61, - 0x69, 0x6e, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x65, - 0x6c, 0x65, 0x6d, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, - 0x65, 0x66, 0x65, 0x6c, 0x65, 0x6d, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, - 0x66, 0x72, 0x65, 0x73, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, - 0x66, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, - 0x65, 0x66, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x66, 0x63, - 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, 0x66, - 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x38, 0x0a, 0x0f, 0x72, 0x65, 0x66, 0x75, 0x70, 0x70, - 0x65, 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x70, 0x72, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x0f, 0x72, 0x65, 0x66, 0x75, 0x70, 0x70, 0x65, 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x70, 0x72, - 0x12, 0x38, 0x0a, 0x0f, 0x72, 0x65, 0x66, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x70, 0x72, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x72, 0x65, 0x66, 0x6c, 0x6f, - 0x77, 0x65, 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x70, 0x72, 0x12, 0x28, 0x0a, 0x07, 0x72, 0x65, - 0x66, 0x65, 0x78, 0x70, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x72, 0x65, 0x66, - 0x65, 0x78, 0x70, 0x72, 0x12, 0x32, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x61, 0x73, 0x73, 0x67, 0x6e, - 0x65, 0x78, 0x70, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x61, - 0x73, 0x73, 0x67, 0x6e, 0x65, 0x78, 0x70, 0x72, 0x22, 0xea, 0x02, 0x0a, 0x08, 0x46, 0x75, 0x6e, - 0x63, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x75, 0x6e, 0x63, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x66, 0x75, 0x6e, 0x63, 0x69, 0x64, 0x12, - 0x26, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x63, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, 0x75, 0x6e, 0x63, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x72, - 0x65, 0x74, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x66, 0x75, 0x6e, - 0x63, 0x72, 0x65, 0x74, 0x73, 0x65, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x76, - 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, - 0x75, 0x6e, 0x63, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, 0x12, 0x36, 0x0a, 0x0a, 0x66, - 0x75, 0x6e, 0x63, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, - 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, - 0x6c, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, - 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, - 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x09, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa0, 0x01, 0x0a, 0x0c, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x41, - 0x72, 0x67, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x61, 0x72, 0x67, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x61, 0x72, 0x67, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x98, 0x02, 0x0a, 0x06, 0x4f, 0x70, 0x45, - 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x66, - 0x75, 0x6e, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x70, 0x66, - 0x75, 0x6e, 0x63, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6f, 0x70, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x72, - 0x65, 0x74, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70, 0x72, - 0x65, 0x74, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, - 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x02, 0x0a, 0x0c, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, - 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, - 0x66, 0x75, 0x6e, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x70, - 0x66, 0x75, 0x6e, 0x63, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6f, 0x70, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, - 0x72, 0x65, 0x74, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70, - 0x72, 0x65, 0x74, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, - 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, - 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, - 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9c, 0x02, 0x0a, 0x0a, 0x4e, 0x75, 0x6c, 0x6c, 0x49, 0x66, 0x45, - 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x66, - 0x75, 0x6e, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x70, 0x66, - 0x75, 0x6e, 0x63, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6f, 0x70, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x72, - 0x65, 0x74, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70, 0x72, - 0x65, 0x74, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, - 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x9c, 0x02, 0x0a, 0x11, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x41, 0x72, - 0x72, 0x61, 0x79, 0x4f, 0x70, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6f, - 0x70, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x12, - 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x66, 0x75, 0x6e, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x6f, 0x70, 0x66, 0x75, 0x6e, 0x63, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x68, - 0x61, 0x73, 0x68, 0x66, 0x75, 0x6e, 0x63, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x68, 0x61, 0x73, 0x68, 0x66, 0x75, 0x6e, 0x63, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6e, - 0x65, 0x67, 0x66, 0x75, 0x6e, 0x63, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x6e, 0x65, 0x67, 0x66, 0x75, 0x6e, 0x63, 0x69, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x75, 0x73, 0x65, - 0x5f, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x75, 0x73, 0x65, 0x4f, 0x72, - 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, - 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x9c, 0x01, 0x0a, 0x08, 0x42, 0x6f, 0x6f, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x12, - 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, - 0x72, 0x12, 0x2e, 0x0a, 0x06, 0x62, 0x6f, 0x6f, 0x6c, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, 0x6f, 0x6f, - 0x6c, 0x45, 0x78, 0x70, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x62, 0x6f, 0x6f, 0x6c, 0x6f, - 0x70, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0xa9, 0x02, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x20, 0x0a, - 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, - 0x39, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x73, - 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x75, - 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x73, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x74, 0x65, - 0x73, 0x74, 0x65, 0x78, 0x70, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x65, - 0x73, 0x74, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2b, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x73, 0x75, 0x62, 0x73, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb5, 0x05, - 0x0a, 0x07, 0x53, 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x39, 0x0a, 0x0d, 0x73, - 0x75, 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x75, - 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x4c, 0x69, - 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x74, 0x65, 0x73, 0x74, 0x65, 0x78, - 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x65, 0x73, 0x74, 0x65, 0x78, - 0x70, 0x72, 0x12, 0x2b, 0x0a, 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x49, 0x64, 0x73, 0x12, - 0x18, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x70, 0x6c, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, - 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, - 0x61, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, - 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0c, 0x66, 0x69, 0x72, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, - 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x6d, 0x6f, - 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x43, 0x6f, - 0x6c, 0x54, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x69, 0x72, 0x73, 0x74, - 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x43, 0x6f, - 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x75, 0x73, 0x65, 0x5f, 0x68, - 0x61, 0x73, 0x68, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0c, 0x75, 0x73, 0x65, 0x48, 0x61, 0x73, 0x68, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x28, 0x0a, - 0x10, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x65, 0x71, 0x5f, 0x66, 0x61, 0x6c, 0x73, - 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, - 0x45, 0x71, 0x46, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x61, 0x6c, - 0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x61, 0x66, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, - 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x61, 0x66, 0x65, 0x12, 0x2b, 0x0a, - 0x09, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x08, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x2b, 0x0a, 0x09, 0x70, 0x61, - 0x72, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x70, - 0x61, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, - 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, - 0x01, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x12, - 0x24, 0x0a, 0x0d, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x73, 0x74, - 0x18, 0x11, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x6c, 0x6c, - 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x22, 0x62, 0x0a, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, - 0x74, 0x69, 0x76, 0x65, 0x53, 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x20, 0x0a, 0x03, 0x78, - 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x2a, 0x0a, - 0x08, 0x73, 0x75, 0x62, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x08, 0x73, 0x75, 0x62, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x22, 0xd5, 0x01, 0x0a, 0x0b, 0x46, 0x69, - 0x65, 0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, - 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x1a, 0x0a, - 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x22, 0x0a, - 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x22, 0xc8, 0x01, 0x0a, 0x0a, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, - 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, - 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x03, 0x61, 0x72, 0x67, 0x12, 0x28, 0x0a, 0x07, 0x6e, 0x65, 0x77, 0x76, 0x61, 0x6c, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x76, 0x61, 0x6c, 0x73, 0x12, 0x2c, - 0x0a, 0x09, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x75, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x09, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x75, 0x6d, 0x73, 0x12, 0x1e, 0x0a, 0x0a, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x22, 0x93, 0x02, 0x0a, - 0x0b, 0x52, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x03, - 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, - 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, - 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, - 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, - 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, - 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x3c, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, - 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0xed, 0x01, 0x0a, 0x0b, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x56, 0x69, 0x61, - 0x49, 0x4f, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x3a, 0x0a, 0x0c, 0x63, 0x6f, - 0x65, 0x72, 0x63, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, - 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0c, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0xc1, 0x02, 0x0a, 0x0f, 0x41, 0x72, 0x72, 0x61, 0x79, 0x43, 0x6f, 0x65, 0x72, - 0x63, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x2a, 0x0a, 0x08, 0x65, 0x6c, - 0x65, 0x6d, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x65, 0x6c, - 0x65, 0x6d, 0x65, 0x78, 0x70, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x3a, - 0x0a, 0x0c, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0c, 0x63, 0x6f, - 0x65, 0x72, 0x63, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xd2, 0x01, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x74, 0x52, 0x6f, 0x77, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, - 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, - 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, - 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, - 0x65, 0x12, 0x3c, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, - 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, - 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x88, 0x01, 0x0a, 0x0b, - 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, - 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, - 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, - 0x19, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x5f, 0x6f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x6c, 0x4f, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf8, 0x01, 0x0a, 0x08, 0x43, 0x61, 0x73, 0x65, 0x45, - 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x73, 0x65, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x61, 0x73, 0x65, 0x74, 0x79, 0x70, - 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, - 0x61, 0x72, 0x67, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x64, 0x65, 0x66, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x08, 0x43, 0x61, 0x73, 0x65, 0x57, 0x68, 0x65, 0x6e, 0x12, 0x20, - 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, - 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, - 0x65, 0x78, 0x70, 0x72, 0x12, 0x26, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, + ConversionName []*Node `protobuf:"bytes,1,rep,name=conversion_name,proto3" json:"conversion_name,omitempty"` + ForEncodingName string `protobuf:"bytes,2,opt,name=for_encoding_name,proto3" json:"for_encoding_name,omitempty"` + ToEncodingName string `protobuf:"bytes,3,opt,name=to_encoding_name,proto3" json:"to_encoding_name,omitempty"` + FuncName []*Node `protobuf:"bytes,4,rep,name=func_name,proto3" json:"func_name,omitempty"` + Def bool `protobuf:"varint,5,opt,name=def,proto3" json:"def,omitempty"` +} + +func (x *CreateConversionStmt) Reset() { + *x = CreateConversionStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[238] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateConversionStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateConversionStmt) ProtoMessage() {} + +func (x *CreateConversionStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[238] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateConversionStmt.ProtoReflect.Descriptor instead. +func (*CreateConversionStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{238} +} + +func (x *CreateConversionStmt) GetConversionName() []*Node { + if x != nil { + return x.ConversionName + } + return nil +} + +func (x *CreateConversionStmt) GetForEncodingName() string { + if x != nil { + return x.ForEncodingName + } + return "" +} + +func (x *CreateConversionStmt) GetToEncodingName() string { + if x != nil { + return x.ToEncodingName + } + return "" +} + +func (x *CreateConversionStmt) GetFuncName() []*Node { + if x != nil { + return x.FuncName + } + return nil +} + +func (x *CreateConversionStmt) GetDef() bool { + if x != nil { + return x.Def + } + return false +} + +type CreateCastStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Sourcetype *TypeName `protobuf:"bytes,1,opt,name=sourcetype,proto3" json:"sourcetype,omitempty"` + Targettype *TypeName `protobuf:"bytes,2,opt,name=targettype,proto3" json:"targettype,omitempty"` + Func *ObjectWithArgs `protobuf:"bytes,3,opt,name=func,proto3" json:"func,omitempty"` + Context CoercionContext `protobuf:"varint,4,opt,name=context,proto3,enum=pg_query.CoercionContext" json:"context,omitempty"` + Inout bool `protobuf:"varint,5,opt,name=inout,proto3" json:"inout,omitempty"` +} + +func (x *CreateCastStmt) Reset() { + *x = CreateCastStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[239] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateCastStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateCastStmt) ProtoMessage() {} + +func (x *CreateCastStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[239] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateCastStmt.ProtoReflect.Descriptor instead. +func (*CreateCastStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{239} +} + +func (x *CreateCastStmt) GetSourcetype() *TypeName { + if x != nil { + return x.Sourcetype + } + return nil +} + +func (x *CreateCastStmt) GetTargettype() *TypeName { + if x != nil { + return x.Targettype + } + return nil +} + +func (x *CreateCastStmt) GetFunc() *ObjectWithArgs { + if x != nil { + return x.Func + } + return nil +} + +func (x *CreateCastStmt) GetContext() CoercionContext { + if x != nil { + return x.Context + } + return CoercionContext_COERCION_CONTEXT_UNDEFINED +} + +func (x *CreateCastStmt) GetInout() bool { + if x != nil { + return x.Inout + } + return false +} + +type CreateTransformStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Replace bool `protobuf:"varint,1,opt,name=replace,proto3" json:"replace,omitempty"` + TypeName *TypeName `protobuf:"bytes,2,opt,name=type_name,proto3" json:"type_name,omitempty"` + Lang string `protobuf:"bytes,3,opt,name=lang,proto3" json:"lang,omitempty"` + Fromsql *ObjectWithArgs `protobuf:"bytes,4,opt,name=fromsql,proto3" json:"fromsql,omitempty"` + Tosql *ObjectWithArgs `protobuf:"bytes,5,opt,name=tosql,proto3" json:"tosql,omitempty"` +} + +func (x *CreateTransformStmt) Reset() { + *x = CreateTransformStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[240] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateTransformStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateTransformStmt) ProtoMessage() {} + +func (x *CreateTransformStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[240] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateTransformStmt.ProtoReflect.Descriptor instead. +func (*CreateTransformStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{240} +} + +func (x *CreateTransformStmt) GetReplace() bool { + if x != nil { + return x.Replace + } + return false +} + +func (x *CreateTransformStmt) GetTypeName() *TypeName { + if x != nil { + return x.TypeName + } + return nil +} + +func (x *CreateTransformStmt) GetLang() string { + if x != nil { + return x.Lang + } + return "" +} + +func (x *CreateTransformStmt) GetFromsql() *ObjectWithArgs { + if x != nil { + return x.Fromsql + } + return nil +} + +func (x *CreateTransformStmt) GetTosql() *ObjectWithArgs { + if x != nil { + return x.Tosql + } + return nil +} + +type PrepareStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Argtypes []*Node `protobuf:"bytes,2,rep,name=argtypes,proto3" json:"argtypes,omitempty"` + Query *Node `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"` +} + +func (x *PrepareStmt) Reset() { + *x = PrepareStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[241] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PrepareStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PrepareStmt) ProtoMessage() {} + +func (x *PrepareStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[241] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PrepareStmt.ProtoReflect.Descriptor instead. +func (*PrepareStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{241} +} + +func (x *PrepareStmt) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *PrepareStmt) GetArgtypes() []*Node { + if x != nil { + return x.Argtypes + } + return nil +} + +func (x *PrepareStmt) GetQuery() *Node { + if x != nil { + return x.Query + } + return nil +} + +type ExecuteStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Params []*Node `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty"` +} + +func (x *ExecuteStmt) Reset() { + *x = ExecuteStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[242] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ExecuteStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ExecuteStmt) ProtoMessage() {} + +func (x *ExecuteStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[242] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ExecuteStmt.ProtoReflect.Descriptor instead. +func (*ExecuteStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{242} +} + +func (x *ExecuteStmt) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *ExecuteStmt) GetParams() []*Node { + if x != nil { + return x.Params + } + return nil +} + +type DeallocateStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *DeallocateStmt) Reset() { + *x = DeallocateStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[243] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeallocateStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeallocateStmt) ProtoMessage() {} + +func (x *DeallocateStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[243] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeallocateStmt.ProtoReflect.Descriptor instead. +func (*DeallocateStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{243} +} + +func (x *DeallocateStmt) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +type DropOwnedStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Roles []*Node `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"` + Behavior DropBehavior `protobuf:"varint,2,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` +} + +func (x *DropOwnedStmt) Reset() { + *x = DropOwnedStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[244] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DropOwnedStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DropOwnedStmt) ProtoMessage() {} + +func (x *DropOwnedStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[244] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DropOwnedStmt.ProtoReflect.Descriptor instead. +func (*DropOwnedStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{244} +} + +func (x *DropOwnedStmt) GetRoles() []*Node { + if x != nil { + return x.Roles + } + return nil +} + +func (x *DropOwnedStmt) GetBehavior() DropBehavior { + if x != nil { + return x.Behavior + } + return DropBehavior_DROP_BEHAVIOR_UNDEFINED +} + +type ReassignOwnedStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Roles []*Node `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"` + Newrole *RoleSpec `protobuf:"bytes,2,opt,name=newrole,proto3" json:"newrole,omitempty"` +} + +func (x *ReassignOwnedStmt) Reset() { + *x = ReassignOwnedStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[245] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ReassignOwnedStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReassignOwnedStmt) ProtoMessage() {} + +func (x *ReassignOwnedStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[245] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReassignOwnedStmt.ProtoReflect.Descriptor instead. +func (*ReassignOwnedStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{245} +} + +func (x *ReassignOwnedStmt) GetRoles() []*Node { + if x != nil { + return x.Roles + } + return nil +} + +func (x *ReassignOwnedStmt) GetNewrole() *RoleSpec { + if x != nil { + return x.Newrole + } + return nil +} + +type AlterTSDictionaryStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Dictname []*Node `protobuf:"bytes,1,rep,name=dictname,proto3" json:"dictname,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` +} + +func (x *AlterTSDictionaryStmt) Reset() { + *x = AlterTSDictionaryStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[246] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AlterTSDictionaryStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AlterTSDictionaryStmt) ProtoMessage() {} + +func (x *AlterTSDictionaryStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[246] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AlterTSDictionaryStmt.ProtoReflect.Descriptor instead. +func (*AlterTSDictionaryStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{246} +} + +func (x *AlterTSDictionaryStmt) GetDictname() []*Node { + if x != nil { + return x.Dictname + } + return nil +} + +func (x *AlterTSDictionaryStmt) GetOptions() []*Node { + if x != nil { + return x.Options + } + return nil +} + +type AlterTSConfigurationStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Kind AlterTSConfigType `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.AlterTSConfigType" json:"kind,omitempty"` + Cfgname []*Node `protobuf:"bytes,2,rep,name=cfgname,proto3" json:"cfgname,omitempty"` + Tokentype []*Node `protobuf:"bytes,3,rep,name=tokentype,proto3" json:"tokentype,omitempty"` + Dicts []*Node `protobuf:"bytes,4,rep,name=dicts,proto3" json:"dicts,omitempty"` + Override bool `protobuf:"varint,5,opt,name=override,proto3" json:"override,omitempty"` + Replace bool `protobuf:"varint,6,opt,name=replace,proto3" json:"replace,omitempty"` + MissingOk bool `protobuf:"varint,7,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` +} + +func (x *AlterTSConfigurationStmt) Reset() { + *x = AlterTSConfigurationStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[247] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AlterTSConfigurationStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AlterTSConfigurationStmt) ProtoMessage() {} + +func (x *AlterTSConfigurationStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[247] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AlterTSConfigurationStmt.ProtoReflect.Descriptor instead. +func (*AlterTSConfigurationStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{247} +} + +func (x *AlterTSConfigurationStmt) GetKind() AlterTSConfigType { + if x != nil { + return x.Kind + } + return AlterTSConfigType_ALTER_TSCONFIG_TYPE_UNDEFINED +} + +func (x *AlterTSConfigurationStmt) GetCfgname() []*Node { + if x != nil { + return x.Cfgname + } + return nil +} + +func (x *AlterTSConfigurationStmt) GetTokentype() []*Node { + if x != nil { + return x.Tokentype + } + return nil +} + +func (x *AlterTSConfigurationStmt) GetDicts() []*Node { + if x != nil { + return x.Dicts + } + return nil +} + +func (x *AlterTSConfigurationStmt) GetOverride() bool { + if x != nil { + return x.Override + } + return false +} + +func (x *AlterTSConfigurationStmt) GetReplace() bool { + if x != nil { + return x.Replace + } + return false +} + +func (x *AlterTSConfigurationStmt) GetMissingOk() bool { + if x != nil { + return x.MissingOk + } + return false +} + +type PublicationTable struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Relation *RangeVar `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"` + WhereClause *Node `protobuf:"bytes,2,opt,name=where_clause,json=whereClause,proto3" json:"where_clause,omitempty"` + Columns []*Node `protobuf:"bytes,3,rep,name=columns,proto3" json:"columns,omitempty"` +} + +func (x *PublicationTable) Reset() { + *x = PublicationTable{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[248] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PublicationTable) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PublicationTable) ProtoMessage() {} + +func (x *PublicationTable) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[248] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PublicationTable.ProtoReflect.Descriptor instead. +func (*PublicationTable) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{248} +} + +func (x *PublicationTable) GetRelation() *RangeVar { + if x != nil { + return x.Relation + } + return nil +} + +func (x *PublicationTable) GetWhereClause() *Node { + if x != nil { + return x.WhereClause + } + return nil +} + +func (x *PublicationTable) GetColumns() []*Node { + if x != nil { + return x.Columns + } + return nil +} + +type PublicationObjSpec struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Pubobjtype PublicationObjSpecType `protobuf:"varint,1,opt,name=pubobjtype,proto3,enum=pg_query.PublicationObjSpecType" json:"pubobjtype,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Pubtable *PublicationTable `protobuf:"bytes,3,opt,name=pubtable,proto3" json:"pubtable,omitempty"` + Location int32 `protobuf:"varint,4,opt,name=location,proto3" json:"location,omitempty"` +} + +func (x *PublicationObjSpec) Reset() { + *x = PublicationObjSpec{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[249] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PublicationObjSpec) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PublicationObjSpec) ProtoMessage() {} + +func (x *PublicationObjSpec) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[249] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PublicationObjSpec.ProtoReflect.Descriptor instead. +func (*PublicationObjSpec) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{249} +} + +func (x *PublicationObjSpec) GetPubobjtype() PublicationObjSpecType { + if x != nil { + return x.Pubobjtype + } + return PublicationObjSpecType_PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED +} + +func (x *PublicationObjSpec) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *PublicationObjSpec) GetPubtable() *PublicationTable { + if x != nil { + return x.Pubtable + } + return nil +} + +func (x *PublicationObjSpec) GetLocation() int32 { + if x != nil { + return x.Location + } + return 0 +} + +type CreatePublicationStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Pubname string `protobuf:"bytes,1,opt,name=pubname,proto3" json:"pubname,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + Pubobjects []*Node `protobuf:"bytes,3,rep,name=pubobjects,proto3" json:"pubobjects,omitempty"` + ForAllTables bool `protobuf:"varint,4,opt,name=for_all_tables,proto3" json:"for_all_tables,omitempty"` +} + +func (x *CreatePublicationStmt) Reset() { + *x = CreatePublicationStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[250] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreatePublicationStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreatePublicationStmt) ProtoMessage() {} + +func (x *CreatePublicationStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[250] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreatePublicationStmt.ProtoReflect.Descriptor instead. +func (*CreatePublicationStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{250} +} + +func (x *CreatePublicationStmt) GetPubname() string { + if x != nil { + return x.Pubname + } + return "" +} + +func (x *CreatePublicationStmt) GetOptions() []*Node { + if x != nil { + return x.Options + } + return nil +} + +func (x *CreatePublicationStmt) GetPubobjects() []*Node { + if x != nil { + return x.Pubobjects + } + return nil +} + +func (x *CreatePublicationStmt) GetForAllTables() bool { + if x != nil { + return x.ForAllTables + } + return false +} + +type AlterPublicationStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Pubname string `protobuf:"bytes,1,opt,name=pubname,proto3" json:"pubname,omitempty"` + Options []*Node `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"` + Pubobjects []*Node `protobuf:"bytes,3,rep,name=pubobjects,proto3" json:"pubobjects,omitempty"` + ForAllTables bool `protobuf:"varint,4,opt,name=for_all_tables,proto3" json:"for_all_tables,omitempty"` + Action AlterPublicationAction `protobuf:"varint,5,opt,name=action,proto3,enum=pg_query.AlterPublicationAction" json:"action,omitempty"` +} + +func (x *AlterPublicationStmt) Reset() { + *x = AlterPublicationStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[251] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AlterPublicationStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AlterPublicationStmt) ProtoMessage() {} + +func (x *AlterPublicationStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[251] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AlterPublicationStmt.ProtoReflect.Descriptor instead. +func (*AlterPublicationStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{251} +} + +func (x *AlterPublicationStmt) GetPubname() string { + if x != nil { + return x.Pubname + } + return "" +} + +func (x *AlterPublicationStmt) GetOptions() []*Node { + if x != nil { + return x.Options + } + return nil +} + +func (x *AlterPublicationStmt) GetPubobjects() []*Node { + if x != nil { + return x.Pubobjects + } + return nil +} + +func (x *AlterPublicationStmt) GetForAllTables() bool { + if x != nil { + return x.ForAllTables + } + return false +} + +func (x *AlterPublicationStmt) GetAction() AlterPublicationAction { + if x != nil { + return x.Action + } + return AlterPublicationAction_ALTER_PUBLICATION_ACTION_UNDEFINED +} + +type CreateSubscriptionStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Subname string `protobuf:"bytes,1,opt,name=subname,proto3" json:"subname,omitempty"` + Conninfo string `protobuf:"bytes,2,opt,name=conninfo,proto3" json:"conninfo,omitempty"` + Publication []*Node `protobuf:"bytes,3,rep,name=publication,proto3" json:"publication,omitempty"` + Options []*Node `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"` +} + +func (x *CreateSubscriptionStmt) Reset() { + *x = CreateSubscriptionStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[252] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateSubscriptionStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateSubscriptionStmt) ProtoMessage() {} + +func (x *CreateSubscriptionStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[252] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateSubscriptionStmt.ProtoReflect.Descriptor instead. +func (*CreateSubscriptionStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{252} +} + +func (x *CreateSubscriptionStmt) GetSubname() string { + if x != nil { + return x.Subname + } + return "" +} + +func (x *CreateSubscriptionStmt) GetConninfo() string { + if x != nil { + return x.Conninfo + } + return "" +} + +func (x *CreateSubscriptionStmt) GetPublication() []*Node { + if x != nil { + return x.Publication + } + return nil +} + +func (x *CreateSubscriptionStmt) GetOptions() []*Node { + if x != nil { + return x.Options + } + return nil +} + +type AlterSubscriptionStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Kind AlterSubscriptionType `protobuf:"varint,1,opt,name=kind,proto3,enum=pg_query.AlterSubscriptionType" json:"kind,omitempty"` + Subname string `protobuf:"bytes,2,opt,name=subname,proto3" json:"subname,omitempty"` + Conninfo string `protobuf:"bytes,3,opt,name=conninfo,proto3" json:"conninfo,omitempty"` + Publication []*Node `protobuf:"bytes,4,rep,name=publication,proto3" json:"publication,omitempty"` + Options []*Node `protobuf:"bytes,5,rep,name=options,proto3" json:"options,omitempty"` +} + +func (x *AlterSubscriptionStmt) Reset() { + *x = AlterSubscriptionStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[253] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AlterSubscriptionStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AlterSubscriptionStmt) ProtoMessage() {} + +func (x *AlterSubscriptionStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[253] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AlterSubscriptionStmt.ProtoReflect.Descriptor instead. +func (*AlterSubscriptionStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{253} +} + +func (x *AlterSubscriptionStmt) GetKind() AlterSubscriptionType { + if x != nil { + return x.Kind + } + return AlterSubscriptionType_ALTER_SUBSCRIPTION_TYPE_UNDEFINED +} + +func (x *AlterSubscriptionStmt) GetSubname() string { + if x != nil { + return x.Subname + } + return "" +} + +func (x *AlterSubscriptionStmt) GetConninfo() string { + if x != nil { + return x.Conninfo + } + return "" +} + +func (x *AlterSubscriptionStmt) GetPublication() []*Node { + if x != nil { + return x.Publication + } + return nil +} + +func (x *AlterSubscriptionStmt) GetOptions() []*Node { + if x != nil { + return x.Options + } + return nil +} + +type DropSubscriptionStmt struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Subname string `protobuf:"bytes,1,opt,name=subname,proto3" json:"subname,omitempty"` + MissingOk bool `protobuf:"varint,2,opt,name=missing_ok,proto3" json:"missing_ok,omitempty"` + Behavior DropBehavior `protobuf:"varint,3,opt,name=behavior,proto3,enum=pg_query.DropBehavior" json:"behavior,omitempty"` +} + +func (x *DropSubscriptionStmt) Reset() { + *x = DropSubscriptionStmt{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[254] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DropSubscriptionStmt) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DropSubscriptionStmt) ProtoMessage() {} + +func (x *DropSubscriptionStmt) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[254] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DropSubscriptionStmt.ProtoReflect.Descriptor instead. +func (*DropSubscriptionStmt) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{254} +} + +func (x *DropSubscriptionStmt) GetSubname() string { + if x != nil { + return x.Subname + } + return "" +} + +func (x *DropSubscriptionStmt) GetMissingOk() bool { + if x != nil { + return x.MissingOk + } + return false +} + +func (x *DropSubscriptionStmt) GetBehavior() DropBehavior { + if x != nil { + return x.Behavior + } + return DropBehavior_DROP_BEHAVIOR_UNDEFINED +} + +type ScanToken struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Start int32 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"` + End int32 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"` + Token Token `protobuf:"varint,4,opt,name=token,proto3,enum=pg_query.Token" json:"token,omitempty"` + KeywordKind KeywordKind `protobuf:"varint,5,opt,name=keyword_kind,json=keywordKind,proto3,enum=pg_query.KeywordKind" json:"keyword_kind,omitempty"` +} + +func (x *ScanToken) Reset() { + *x = ScanToken{} + if protoimpl.UnsafeEnabled { + mi := &file_pg_query_proto_msgTypes[255] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ScanToken) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ScanToken) ProtoMessage() {} + +func (x *ScanToken) ProtoReflect() protoreflect.Message { + mi := &file_pg_query_proto_msgTypes[255] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ScanToken.ProtoReflect.Descriptor instead. +func (*ScanToken) Descriptor() ([]byte, []int) { + return file_pg_query_proto_rawDescGZIP(), []int{255} +} + +func (x *ScanToken) GetStart() int32 { + if x != nil { + return x.Start + } + return 0 +} + +func (x *ScanToken) GetEnd() int32 { + if x != nil { + return x.End + } + return 0 +} + +func (x *ScanToken) GetToken() Token { + if x != nil { + return x.Token + } + return Token_NUL +} + +func (x *ScanToken) GetKeywordKind() KeywordKind { + if x != nil { + return x.KeywordKind + } + return KeywordKind_NO_KEYWORD +} + +var File_pg_query_proto protoreflect.FileDescriptor + +var file_pg_query_proto_rawDesc = []byte{ + 0x0a, 0x0e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x12, 0x08, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0x50, 0x0a, 0x0b, 0x50, 0x61, + 0x72, 0x73, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x05, 0x73, 0x74, 0x6d, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, + 0x77, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x05, 0x73, 0x74, 0x6d, 0x74, 0x73, 0x22, 0x53, 0x0a, 0x0a, + 0x53, 0x63, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x53, 0x63, 0x61, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x06, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x73, 0x22, 0xc1, 0x85, 0x01, 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x27, 0x0a, 0x05, 0x61, + 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48, 0x00, 0x52, 0x05, 0x41, + 0x6c, 0x69, 0x61, 0x73, 0x12, 0x31, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x76, 0x61, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x48, 0x00, 0x52, 0x08, 0x52, + 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x12, 0x34, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, + 0x48, 0x00, 0x52, 0x09, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x37, 0x0a, + 0x0b, 0x69, 0x6e, 0x74, 0x6f, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, + 0x74, 0x6f, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0a, 0x49, 0x6e, 0x74, 0x6f, + 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x03, 0x76, 0x61, 0x72, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, + 0x61, 0x72, 0x48, 0x00, 0x52, 0x03, 0x56, 0x61, 0x72, 0x12, 0x27, 0x0a, 0x05, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x48, 0x00, 0x52, 0x05, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x12, 0x2a, 0x0a, 0x06, 0x61, 0x67, 0x67, 0x72, 0x65, 0x66, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x67, + 0x67, 0x72, 0x65, 0x66, 0x48, 0x00, 0x52, 0x06, 0x41, 0x67, 0x67, 0x72, 0x65, 0x66, 0x12, 0x3d, + 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x63, 0x48, 0x00, 0x52, + 0x0c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x37, 0x0a, + 0x0b, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, + 0x6e, 0x64, 0x6f, 0x77, 0x46, 0x75, 0x6e, 0x63, 0x48, 0x00, 0x52, 0x0a, 0x57, 0x69, 0x6e, 0x64, + 0x6f, 0x77, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x46, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x66, 0x48, 0x00, 0x52, 0x0f, 0x53, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x66, 0x12, 0x31, + 0x0a, 0x09, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, + 0x63, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x08, 0x46, 0x75, 0x6e, 0x63, 0x45, 0x78, 0x70, + 0x72, 0x12, 0x3e, 0x0a, 0x0e, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x5f, 0x61, 0x72, 0x67, 0x5f, 0x65, + 0x78, 0x70, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x41, 0x72, 0x67, 0x45, 0x78, 0x70, + 0x72, 0x48, 0x00, 0x52, 0x0c, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x41, 0x72, 0x67, 0x45, 0x78, 0x70, + 0x72, 0x12, 0x2b, 0x0a, 0x07, 0x6f, 0x70, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x70, + 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x06, 0x4f, 0x70, 0x45, 0x78, 0x70, 0x72, 0x12, 0x3d, + 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, + 0x0c, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x38, 0x0a, + 0x0c, 0x6e, 0x75, 0x6c, 0x6c, 0x5f, 0x69, 0x66, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x75, 0x6c, 0x6c, 0x49, 0x66, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0a, 0x4e, 0x75, 0x6c, + 0x6c, 0x49, 0x66, 0x45, 0x78, 0x70, 0x72, 0x12, 0x4e, 0x0a, 0x14, 0x73, 0x63, 0x61, 0x6c, 0x61, + 0x72, 0x5f, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x6f, 0x70, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x41, 0x72, 0x72, 0x61, 0x79, 0x4f, 0x70, 0x45, 0x78, + 0x70, 0x72, 0x48, 0x00, 0x52, 0x11, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x41, 0x72, 0x72, 0x61, + 0x79, 0x4f, 0x70, 0x45, 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, + 0x65, 0x78, 0x70, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, + 0x52, 0x08, 0x42, 0x6f, 0x6f, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x12, 0x2e, 0x0a, 0x08, 0x73, 0x75, + 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x48, + 0x00, 0x52, 0x07, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x2e, 0x0a, 0x08, 0x73, 0x75, + 0x62, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x48, + 0x00, 0x52, 0x07, 0x53, 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x50, 0x0a, 0x14, 0x61, 0x6c, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x5f, 0x70, 0x6c, + 0x61, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x53, + 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x48, 0x00, 0x52, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x74, 0x69, 0x76, 0x65, 0x53, 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x3a, 0x0a, 0x0c, + 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x18, 0x15, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x69, + 0x65, 0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x46, 0x69, 0x65, + 0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x74, + 0x6f, 0x72, 0x65, 0x48, 0x00, 0x52, 0x0a, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x74, 0x6f, 0x72, + 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, + 0x52, 0x0b, 0x52, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, + 0x0d, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x69, 0x6f, 0x18, 0x18, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x56, 0x69, 0x61, 0x49, 0x4f, 0x48, 0x00, 0x52, 0x0b, 0x43, + 0x6f, 0x65, 0x72, 0x63, 0x65, 0x56, 0x69, 0x61, 0x49, 0x4f, 0x12, 0x47, 0x0a, 0x11, 0x61, 0x72, + 0x72, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, + 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x45, 0x78, 0x70, 0x72, + 0x48, 0x00, 0x52, 0x0f, 0x41, 0x72, 0x72, 0x61, 0x79, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x45, + 0x78, 0x70, 0x72, 0x12, 0x50, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x5f, 0x72, + 0x6f, 0x77, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x1a, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6e, + 0x76, 0x65, 0x72, 0x74, 0x52, 0x6f, 0x77, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, + 0x00, 0x52, 0x12, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x52, 0x6f, 0x77, 0x74, 0x79, 0x70, + 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x3a, 0x0a, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, + 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x45, 0x78, + 0x70, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, + 0x72, 0x12, 0x31, 0x0a, 0x09, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x1c, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x43, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x08, 0x43, 0x61, 0x73, 0x65, + 0x45, 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, 0x09, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x77, 0x68, 0x65, + 0x6e, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x43, 0x61, 0x73, 0x65, 0x57, 0x68, 0x65, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x43, + 0x61, 0x73, 0x65, 0x57, 0x68, 0x65, 0x6e, 0x12, 0x3e, 0x0a, 0x0e, 0x63, 0x61, 0x73, 0x65, 0x5f, + 0x74, 0x65, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x61, 0x73, 0x65, 0x54, + 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0c, 0x43, 0x61, 0x73, 0x65, 0x54, + 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x34, 0x0a, 0x0a, 0x61, 0x72, 0x72, 0x61, 0x79, + 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x45, 0x78, 0x70, 0x72, + 0x48, 0x00, 0x52, 0x09, 0x41, 0x72, 0x72, 0x61, 0x79, 0x45, 0x78, 0x70, 0x72, 0x12, 0x2e, 0x0a, + 0x08, 0x72, 0x6f, 0x77, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x77, 0x45, 0x78, + 0x70, 0x72, 0x48, 0x00, 0x52, 0x07, 0x52, 0x6f, 0x77, 0x45, 0x78, 0x70, 0x72, 0x12, 0x44, 0x0a, + 0x10, 0x72, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x5f, 0x65, 0x78, 0x70, + 0x72, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x77, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x45, 0x78, 0x70, + 0x72, 0x48, 0x00, 0x52, 0x0e, 0x52, 0x6f, 0x77, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x45, + 0x78, 0x70, 0x72, 0x12, 0x3d, 0x0a, 0x0d, 0x63, 0x6f, 0x61, 0x6c, 0x65, 0x73, 0x63, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x72, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x61, 0x6c, 0x65, 0x73, 0x63, 0x65, 0x45, 0x78, + 0x70, 0x72, 0x48, 0x00, 0x52, 0x0c, 0x43, 0x6f, 0x61, 0x6c, 0x65, 0x73, 0x63, 0x65, 0x45, 0x78, + 0x70, 0x72, 0x12, 0x38, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x65, 0x78, + 0x70, 0x72, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, + 0x52, 0x0a, 0x4d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x45, 0x78, 0x70, 0x72, 0x12, 0x49, 0x0a, 0x11, + 0x73, 0x71, 0x6c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x53, 0x51, 0x4c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x53, 0x51, 0x4c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, + 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x08, 0x78, 0x6d, 0x6c, 0x5f, 0x65, + 0x78, 0x70, 0x72, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x58, 0x6d, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x07, + 0x58, 0x6d, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x12, 0x37, 0x0a, 0x0b, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x4a, 0x73, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x12, 0x40, 0x0a, 0x0e, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, + 0x6e, 0x67, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, + 0x67, 0x48, 0x00, 0x52, 0x0d, 0x4a, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, + 0x6e, 0x67, 0x12, 0x41, 0x0a, 0x0f, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x4a, 0x73, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x53, 0x0a, 0x15, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, + 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x29, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4a, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x45, + 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x13, 0x4a, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x45, 0x78, 0x70, 0x72, 0x12, 0x47, 0x0a, 0x11, 0x6a, 0x73, + 0x6f, 0x6e, 0x5f, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, + 0x2a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x49, 0x73, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, + 0x48, 0x00, 0x52, 0x0f, 0x4a, 0x73, 0x6f, 0x6e, 0x49, 0x73, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x61, 0x74, 0x65, 0x12, 0x31, 0x0a, 0x09, 0x6e, 0x75, 0x6c, 0x6c, 0x5f, 0x74, 0x65, 0x73, 0x74, + 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x75, 0x6c, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x4e, 0x75, + 0x6c, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, + 0x6e, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x54, + 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x54, 0x65, + 0x73, 0x74, 0x12, 0x44, 0x0a, 0x10, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x6f, 0x5f, + 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x54, 0x6f, + 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, + 0x54, 0x6f, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x54, 0x0a, 0x16, 0x63, 0x6f, 0x65, 0x72, + 0x63, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x6d, 0x61, + 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x13, 0x43, 0x6f, 0x65, 0x72, 0x63, + 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3e, + 0x0a, 0x0e, 0x73, 0x65, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x53, 0x65, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x48, 0x00, + 0x52, 0x0c, 0x53, 0x65, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x41, + 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x65, 0x78, 0x70, + 0x72, 0x18, 0x30, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x66, 0x45, 0x78, 0x70, 0x72, + 0x48, 0x00, 0x52, 0x0d, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x66, 0x45, 0x78, 0x70, + 0x72, 0x12, 0x41, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x72, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x45, + 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x4e, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x45, 0x78, 0x70, 0x72, 0x12, 0x40, 0x0a, 0x0e, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x0d, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x48, 0x00, 0x52, 0x0b, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x3b, 0x0a, 0x0d, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x62, 0x6c, 0x5f, + 0x72, 0x65, 0x66, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x52, 0x65, 0x66, + 0x48, 0x00, 0x52, 0x0b, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x52, 0x65, 0x66, 0x12, + 0x31, 0x0a, 0x09, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x35, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x6f, + 0x69, 0x6e, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x08, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x78, + 0x70, 0x72, 0x12, 0x31, 0x0a, 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, + 0x36, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x08, 0x46, 0x72, 0x6f, + 0x6d, 0x45, 0x78, 0x70, 0x72, 0x12, 0x44, 0x0a, 0x10, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, + 0x6c, 0x69, 0x63, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, + 0x66, 0x6c, 0x69, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0e, 0x4f, 0x6e, 0x43, + 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x27, 0x0a, 0x05, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x48, 0x00, 0x52, 0x05, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x12, 0x31, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x39, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x00, 0x52, 0x08, 0x54, + 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x75, 0x6d, + 0x6e, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x65, 0x66, + 0x48, 0x00, 0x52, 0x09, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x31, 0x0a, + 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x52, 0x65, 0x66, 0x48, 0x00, 0x52, 0x08, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x66, + 0x12, 0x2a, 0x0a, 0x06, 0x61, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x45, 0x78, + 0x70, 0x72, 0x48, 0x00, 0x52, 0x06, 0x41, 0x5f, 0x45, 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, 0x09, + 0x74, 0x79, 0x70, 0x65, 0x5f, 0x63, 0x61, 0x73, 0x74, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x43, + 0x61, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x54, 0x79, 0x70, 0x65, 0x43, 0x61, 0x73, 0x74, 0x12, + 0x40, 0x0a, 0x0e, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x48, 0x00, 0x52, 0x0d, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x12, 0x31, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x3f, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x08, 0x52, 0x6f, 0x6c, 0x65, + 0x53, 0x70, 0x65, 0x63, 0x12, 0x31, 0x0a, 0x09, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x63, 0x61, 0x6c, + 0x6c, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x08, 0x46, + 0x75, 0x6e, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x2a, 0x0a, 0x06, 0x61, 0x5f, 0x73, 0x74, 0x61, + 0x72, 0x18, 0x41, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x53, 0x74, 0x61, 0x72, 0x48, 0x00, 0x52, 0x06, 0x41, 0x5f, 0x53, + 0x74, 0x61, 0x72, 0x12, 0x33, 0x0a, 0x09, 0x61, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, + 0x18, 0x42, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x41, 0x5f, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x48, 0x00, 0x52, 0x09, 0x41, + 0x5f, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0d, 0x61, 0x5f, 0x69, 0x6e, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x49, 0x6e, 0x64, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0d, 0x41, 0x5f, 0x49, 0x6e, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x0a, 0x0c, 0x61, 0x5f, 0x61, + 0x72, 0x72, 0x61, 0x79, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x44, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x41, 0x72, 0x72, + 0x61, 0x79, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x41, 0x5f, 0x41, 0x72, 0x72, 0x61, + 0x79, 0x45, 0x78, 0x70, 0x72, 0x12, 0x34, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x5f, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x18, 0x45, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x00, + 0x52, 0x09, 0x52, 0x65, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x44, 0x0a, 0x10, 0x6d, + 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x72, 0x65, 0x66, 0x18, + 0x46, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x66, 0x48, + 0x00, 0x52, 0x0e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x52, 0x65, + 0x66, 0x12, 0x2b, 0x0a, 0x07, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x62, 0x79, 0x18, 0x47, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x6f, + 0x72, 0x74, 0x42, 0x79, 0x48, 0x00, 0x52, 0x06, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x12, 0x34, + 0x0a, 0x0a, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x48, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, + 0x6e, 0x64, 0x6f, 0x77, 0x44, 0x65, 0x66, 0x48, 0x00, 0x52, 0x09, 0x57, 0x69, 0x6e, 0x64, 0x6f, + 0x77, 0x44, 0x65, 0x66, 0x12, 0x43, 0x0a, 0x0f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x73, 0x75, + 0x62, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x18, 0x49, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, + 0x62, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x53, 0x75, 0x62, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x40, 0x0a, 0x0e, 0x72, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x4a, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0d, 0x52, 0x61, + 0x6e, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x44, 0x0a, 0x10, 0x72, + 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x18, + 0x4b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x48, + 0x00, 0x52, 0x0e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, + 0x63, 0x12, 0x4e, 0x0a, 0x14, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x63, 0x6f, 0x6c, 0x18, 0x4c, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x43, 0x6f, 0x6c, 0x48, 0x00, 0x52, 0x11, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x43, 0x6f, + 0x6c, 0x12, 0x4a, 0x0a, 0x12, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x48, 0x00, 0x52, 0x10, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x12, 0x34, 0x0a, + 0x0a, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x4e, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6c, + 0x75, 0x6d, 0x6e, 0x44, 0x65, 0x66, 0x48, 0x00, 0x52, 0x09, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, + 0x44, 0x65, 0x66, 0x12, 0x47, 0x0a, 0x11, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x69, 0x6b, + 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x4f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4c, + 0x69, 0x6b, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x54, 0x61, 0x62, + 0x6c, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x0a, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x18, 0x50, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x45, 0x6c, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x09, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x45, 0x6c, + 0x65, 0x6d, 0x12, 0x2e, 0x0a, 0x08, 0x64, 0x65, 0x66, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x18, 0x51, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x44, 0x65, 0x66, 0x45, 0x6c, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x07, 0x44, 0x65, 0x66, 0x45, 0x6c, + 0x65, 0x6d, 0x12, 0x40, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x18, 0x52, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, + 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x4c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0d, 0x78, 0x6d, 0x6c, 0x5f, 0x73, 0x65, 0x72, 0x69, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x18, 0x53, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x58, 0x6d, 0x6c, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, + 0x69, 0x7a, 0x65, 0x48, 0x00, 0x52, 0x0c, 0x58, 0x6d, 0x6c, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, + 0x69, 0x7a, 0x65, 0x12, 0x40, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x18, 0x54, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x45, 0x6c, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x0d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x40, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x55, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x0d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x50, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, + 0x56, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x53, + 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x12, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x63, 0x12, 0x53, 0x0a, 0x15, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x64, 0x61, 0x74, + 0x75, 0x6d, 0x18, 0x57, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x44, 0x61, 0x74, 0x75, 0x6d, 0x48, 0x00, 0x52, 0x13, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, 0x75, 0x6d, 0x12, 0x3d, + 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6d, 0x64, 0x18, + 0x58, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6d, 0x64, 0x48, 0x00, 0x52, + 0x0c, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6d, 0x64, 0x12, 0x41, 0x0a, + 0x0f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x62, 0x6c, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x79, + 0x18, 0x59, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x48, + 0x00, 0x52, 0x0d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x4c, 0x0a, 0x12, 0x72, 0x74, 0x65, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x5a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x54, 0x45, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00, 0x52, 0x11, 0x52, 0x54, 0x45, + 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4a, + 0x0a, 0x12, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x62, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x5b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x46, 0x75, + 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, + 0x62, 0x6c, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4d, 0x0a, 0x13, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x18, 0x5c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x11, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, + 0x70, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x11, 0x77, 0x69, 0x74, + 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x5d, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, + 0x00, 0x52, 0x0f, 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x47, 0x0a, 0x11, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x5e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x53, 0x6f, 0x72, 0x74, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x5f, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x74, 0x12, 0x3d, 0x0a, 0x0d, 0x77, 0x69, 0x6e, 0x64, 0x6f, + 0x77, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x60, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, + 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0c, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, + 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0f, 0x72, 0x6f, 0x77, 0x5f, 0x6d, 0x61, + 0x72, 0x6b, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x61, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x77, 0x4d, 0x61, + 0x72, 0x6b, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x52, 0x6f, 0x77, 0x4d, + 0x61, 0x72, 0x6b, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0b, 0x77, 0x69, 0x74, + 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x62, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0a, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x18, 0x63, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, + 0x00, 0x52, 0x0b, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x4a, + 0x0a, 0x12, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x5f, 0x63, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, + 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x10, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, + 0x6c, 0x69, 0x63, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x10, 0x63, 0x74, + 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x65, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x43, 0x54, 0x45, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, + 0x00, 0x52, 0x0f, 0x43, 0x54, 0x45, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x43, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0f, 0x63, 0x74, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x63, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x66, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x54, 0x45, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x43, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x54, 0x45, 0x43, 0x79, 0x63, 0x6c, + 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x67, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, + 0x0f, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x78, 0x70, 0x72, + 0x12, 0x47, 0x0a, 0x11, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x5f, 0x77, 0x68, 0x65, 0x6e, 0x5f, 0x63, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x68, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x57, 0x68, 0x65, 0x6e, + 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x57, + 0x68, 0x65, 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x6d, 0x65, 0x72, + 0x67, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x69, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0b, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4c, 0x0a, 0x12, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, + 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x6a, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x72, 0x69, + 0x67, 0x67, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, + 0x52, 0x11, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x0b, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x6f, 0x75, 0x74, 0x70, + 0x75, 0x74, 0x18, 0x6b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x48, 0x00, + 0x52, 0x0a, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x3e, 0x0a, 0x0e, + 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x6c, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x0c, + 0x4a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x59, 0x0a, 0x17, + 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x6d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x00, + 0x52, 0x15, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x56, 0x0a, 0x16, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, + 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, + 0x72, 0x18, 0x6e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x14, 0x4a, 0x73, 0x6f, 0x6e, 0x41, + 0x72, 0x72, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, + 0x66, 0x0a, 0x1c, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x18, + 0x6f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, + 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x19, 0x4a, 0x73, + 0x6f, 0x6e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x50, 0x0a, 0x14, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, + 0x61, 0x67, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x18, + 0x70, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x67, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x12, 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x67, 0x67, 0x43, 0x6f, + 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x41, 0x0a, 0x0f, 0x6a, 0x73, 0x6f, + 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x67, 0x67, 0x18, 0x71, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, + 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x67, 0x67, 0x48, 0x00, 0x52, 0x0d, 0x4a, + 0x73, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x67, 0x67, 0x12, 0x3e, 0x0a, 0x0e, + 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x61, 0x67, 0x67, 0x18, 0x72, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x41, 0x67, 0x67, 0x48, 0x00, 0x52, 0x0c, + 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x41, 0x67, 0x67, 0x12, 0x2e, 0x0a, 0x08, + 0x72, 0x61, 0x77, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x73, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x77, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x07, 0x52, 0x61, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, + 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x74, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x73, + 0x65, 0x72, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x49, 0x6e, 0x73, 0x65, 0x72, + 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, + 0x73, 0x74, 0x6d, 0x74, 0x18, 0x75, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, + 0x48, 0x00, 0x52, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, + 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x76, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x34, 0x0a, 0x0a, 0x6d, 0x65, 0x72, 0x67, 0x65, + 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x77, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, + 0x48, 0x00, 0x52, 0x09, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, + 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x78, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4a, 0x0a, 0x12, 0x73, 0x65, 0x74, 0x5f, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x79, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, + 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, + 0x52, 0x10, 0x53, 0x65, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x73, 0x74, 0x6d, + 0x74, 0x18, 0x7a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, + 0x0a, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3d, 0x0a, 0x0d, 0x70, + 0x6c, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x7b, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x4c, + 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x50, 0x4c, + 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4a, 0x0a, 0x12, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x73, 0x74, 0x6d, 0x74, + 0x18, 0x7c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, + 0x6d, 0x74, 0x48, 0x00, 0x52, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x44, 0x0a, 0x10, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x7d, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, + 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x41, 0x6c, + 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x53, 0x0a, 0x15, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x7e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x13, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x41, 0x0a, 0x0f, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x5f, 0x63, 0x6d, 0x64, 0x18, 0x7f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x43, 0x6d, 0x64, 0x48, 0x00, 0x52, 0x0d, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x43, 0x6d, 0x64, 0x12, 0x51, 0x0a, 0x14, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, + 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x80, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, + 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x11, 0x61, 0x6c, 0x74, 0x65, 0x72, + 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x81, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, + 0x6c, 0x74, 0x65, 0x72, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, + 0x52, 0x0f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x35, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, + 0x82, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x09, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x45, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x18, 0x83, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x48, 0x00, 0x52, + 0x0e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x12, + 0x38, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x18, 0x84, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x72, 0x69, 0x76, 0x48, 0x00, 0x52, 0x0a, 0x41, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x72, 0x69, 0x76, 0x12, 0x42, 0x0a, 0x0f, 0x67, 0x72, 0x61, + 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x85, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0d, + 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x6a, 0x0a, + 0x1d, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x70, + 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x86, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x69, + 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x1a, 0x41, + 0x6c, 0x74, 0x65, 0x72, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x69, 0x76, 0x69, + 0x6c, 0x65, 0x67, 0x65, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x09, 0x63, 0x6f, 0x70, + 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x87, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x70, 0x79, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x08, 0x43, 0x6f, 0x70, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, + 0x11, 0x76, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x74, + 0x6d, 0x74, 0x18, 0x88, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, + 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, + 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4b, 0x0a, 0x12, 0x76, 0x61, 0x72, 0x69, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x89, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x6d, 0x74, + 0x48, 0x00, 0x52, 0x10, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x77, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x38, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, + 0x74, 0x6d, 0x74, 0x18, 0x8a, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, + 0x48, 0x00, 0x52, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, + 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x18, 0x8b, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, + 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x43, 0x6f, 0x6e, + 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x58, 0x0a, 0x17, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x74, + 0x6d, 0x74, 0x18, 0x8c, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x53, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x14, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x52, 0x0a, 0x15, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x8d, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, + 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, + 0x00, 0x52, 0x12, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, + 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x6b, 0x0a, 0x1e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x8e, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, + 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x1a, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, + 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x5c, 0x0a, 0x19, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, + 0x8f, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x6f, 0x76, 0x65, + 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x54, 0x0a, 0x15, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x90, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, + 0x00, 0x52, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, + 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x51, 0x0a, 0x14, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, + 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x91, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x6a, 0x0a, 0x1d, 0x61, 0x6c, 0x74, + 0x65, 0x72, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x92, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, + 0x65, 0x72, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x1a, 0x41, 0x6c, 0x74, 0x65, 0x72, + 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x42, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, + 0x66, 0x64, 0x77, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x93, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3f, 0x0a, 0x0e, 0x61, 0x6c, 0x74, + 0x65, 0x72, 0x5f, 0x66, 0x64, 0x77, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x94, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, + 0x74, 0x65, 0x72, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x41, 0x6c, + 0x74, 0x65, 0x72, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x61, 0x0a, 0x1a, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x95, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, + 0x6d, 0x74, 0x48, 0x00, 0x52, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, + 0x69, 0x67, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5e, 0x0a, + 0x19, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x96, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, + 0x65, 0x72, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x16, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x65, + 0x69, 0x67, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5e, 0x0a, + 0x19, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x97, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, + 0x65, 0x69, 0x67, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5b, 0x0a, + 0x18, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x70, + 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x98, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x58, 0x0a, 0x17, 0x61, 0x6c, + 0x74, 0x65, 0x72, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, + 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x99, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x14, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x55, 0x0a, 0x16, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x75, 0x73, 0x65, + 0x72, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9a, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, + 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x13, 0x44, 0x72, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x61, 0x0a, 0x1a, 0x69, + 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x5f, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9b, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x21, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6d, 0x70, 0x6f, + 0x72, 0x74, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x17, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, + 0x65, 0x69, 0x67, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4b, + 0x0a, 0x12, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, + 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9c, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, + 0x69, 0x63, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x11, 0x61, + 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, + 0x18, 0x9d, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x53, 0x74, + 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x6f, 0x6c, 0x69, 0x63, + 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3f, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, + 0x61, 0x6d, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9e, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x41, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x41, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x45, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x5f, 0x74, 0x72, 0x69, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x9f, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x55, 0x0a, + 0x16, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x72, + 0x69, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa0, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, + 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, 0x67, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x52, 0x0a, 0x15, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa1, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, + 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x11, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa2, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x4c, 0x61, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x48, + 0x00, 0x52, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x4c, 0x61, 0x6e, 0x67, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x45, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x6f, 0x6c, + 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, + 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x42, 0x0a, 0x0f, 0x61, 0x6c, 0x74, + 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa4, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, + 0x6c, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0d, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4c, 0x0a, + 0x13, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, + 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa5, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, + 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x10, 0x41, 0x6c, 0x74, 0x65, 0x72, + 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3f, 0x0a, 0x0e, 0x64, + 0x72, 0x6f, 0x70, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xa6, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x44, 0x72, 0x6f, 0x70, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, + 0x44, 0x72, 0x6f, 0x70, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x42, 0x0a, 0x0f, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, + 0xa7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x53, 0x74, 0x6d, 0x74, 0x48, + 0x00, 0x52, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x3f, 0x0a, 0x0e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x73, 0x74, + 0x6d, 0x74, 0x18, 0xa8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x71, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x0c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x71, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x38, 0x0a, 0x0b, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, + 0x18, 0xa9, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, + 0x0a, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4b, 0x0a, 0x12, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x6d, + 0x74, 0x18, 0xaa, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, + 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x6f, + 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4f, 0x0a, 0x14, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x5f, 0x6f, 0x70, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, + 0x18, 0xab, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x43, 0x6c, 0x61, 0x73, 0x73, + 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, + 0x43, 0x6c, 0x61, 0x73, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4f, 0x0a, 0x14, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x70, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x69, 0x74, 0x65, + 0x6d, 0x18, 0xac, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x43, 0x6c, 0x61, 0x73, + 0x73, 0x49, 0x74, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, + 0x70, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x52, 0x0a, 0x15, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x70, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x5f, 0x73, + 0x74, 0x6d, 0x74, 0x18, 0xad, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x46, 0x61, + 0x6d, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x4f, 0x70, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4f, + 0x0a, 0x14, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x6f, 0x70, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, + 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xae, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x70, + 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x41, 0x6c, + 0x74, 0x65, 0x72, 0x4f, 0x70, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x32, 0x0a, 0x09, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xaf, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, + 0x72, 0x6f, 0x70, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, 0x44, 0x72, 0x6f, 0x70, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x3e, 0x0a, 0x0d, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, + 0x73, 0x74, 0x6d, 0x74, 0x18, 0xb0, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x3b, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, + 0x74, 0x6d, 0x74, 0x18, 0xb1, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x3f, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x73, 0x74, + 0x6d, 0x74, 0x18, 0xb2, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x0c, 0x53, 0x65, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x4e, 0x0a, 0x13, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x5f, 0x63, 0x75, 0x72, + 0x73, 0x6f, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xb3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x63, 0x6c, 0x61, + 0x72, 0x65, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, + 0x44, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x48, 0x0a, 0x11, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x61, + 0x6c, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xb4, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x50, 0x6f, + 0x72, 0x74, 0x61, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x43, 0x6c, 0x6f, 0x73, + 0x65, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0a, 0x66, + 0x65, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xb5, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, + 0x68, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x09, 0x46, 0x65, 0x74, 0x63, 0x68, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, 0x74, 0x6d, 0x74, + 0x18, 0xb6, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x09, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x11, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xb7, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, 0x6d, 0x74, + 0x48, 0x00, 0x52, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x65, 0x6c, 0x65, + 0x6d, 0x18, 0xb8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x45, 0x6c, 0x65, 0x6d, 0x48, 0x00, 0x52, + 0x09, 0x53, 0x74, 0x61, 0x74, 0x73, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x45, 0x0a, 0x10, 0x61, 0x6c, + 0x74, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xb9, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x48, + 0x00, 0x52, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x51, 0x0a, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xba, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, + 0x52, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4d, 0x0a, 0x12, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0xbb, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x48, 0x00, + 0x52, 0x11, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x12, 0x4e, 0x0a, 0x13, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x66, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xbc, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, + 0x65, 0x72, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, + 0x52, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x64, 0x6f, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xbd, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x44, 0x6f, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x06, 0x44, 0x6f, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x48, 0x0a, 0x11, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, + 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0xbe, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x43, + 0x6f, 0x64, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x00, 0x52, 0x0f, 0x49, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x32, 0x0a, 0x09, 0x63, + 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xbf, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x61, 0x6c, 0x6c, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x3b, 0x0a, 0x0c, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, + 0xc0, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, + 0x0b, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x38, 0x0a, 0x0b, + 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xc1, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, + 0x6e, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x52, 0x65, 0x6e, 0x61, + 0x6d, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5e, 0x0a, 0x19, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x73, 0x5f, 0x73, + 0x74, 0x6d, 0x74, 0x18, 0xc2, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x16, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x70, 0x65, 0x6e, + 0x64, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5b, 0x0a, 0x18, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x73, 0x74, + 0x6d, 0x74, 0x18, 0xc3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x15, 0x41, 0x6c, + 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x45, 0x0a, 0x10, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x6f, 0x77, 0x6e, + 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xc4, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, + 0x77, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x41, 0x6c, 0x74, 0x65, + 0x72, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4e, 0x0a, 0x13, 0x61, 0x6c, + 0x74, 0x65, 0x72, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x74, 0x6d, + 0x74, 0x18, 0xc5, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, + 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x42, 0x0a, 0x0f, 0x61, 0x6c, + 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xc6, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, + 0x0d, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, + 0x0a, 0x09, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xc7, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x75, + 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, 0x52, 0x75, 0x6c, 0x65, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x38, 0x0a, 0x0b, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x5f, 0x73, 0x74, 0x6d, + 0x74, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, + 0x52, 0x0a, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x38, 0x0a, 0x0b, + 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xc9, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x69, + 0x73, 0x74, 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x4c, 0x69, 0x73, 0x74, + 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3e, 0x0a, 0x0d, 0x75, 0x6e, 0x6c, 0x69, 0x73, 0x74, + 0x65, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xca, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x55, 0x6e, 0x6c, 0x69, 0x73, 0x74, + 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x55, 0x6e, 0x6c, 0x69, 0x73, 0x74, + 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x47, 0x0a, 0x10, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xcb, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x4e, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xcc, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x43, 0x6f, + 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x45, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x73, + 0x74, 0x6d, 0x74, 0x18, 0xcd, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x75, 0x6d, + 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, + 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x11, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xce, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, + 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x42, 0x0a, 0x0f, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x73, + 0x74, 0x6d, 0x74, 0x18, 0xcf, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x75, 0x6d, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x75, 0x6d, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x09, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x73, 0x74, 0x6d, + 0x74, 0x18, 0xd0, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, + 0x56, 0x69, 0x65, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x09, 0x6c, 0x6f, 0x61, 0x64, + 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xd1, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x6f, 0x61, 0x64, 0x53, 0x74, 0x6d, 0x74, + 0x48, 0x00, 0x52, 0x08, 0x4c, 0x6f, 0x61, 0x64, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3e, 0x0a, 0x0d, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x62, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xd2, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x62, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0c, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x62, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4e, 0x0a, 0x13, + 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x73, + 0x74, 0x6d, 0x74, 0x18, 0xd3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, + 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x71, 0x0a, 0x20, + 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, + 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x6d, 0x74, + 0x18, 0xd4, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x48, + 0x00, 0x52, 0x1c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x58, 0x0a, 0x17, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xd5, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x14, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, + 0x73, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x38, 0x0a, 0x0b, 0x64, 0x72, 0x6f, + 0x70, 0x64, 0x62, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xd6, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x64, + 0x62, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x44, 0x72, 0x6f, 0x70, 0x64, 0x62, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x11, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x79, 0x73, + 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xd7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, + 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x41, 0x6c, + 0x74, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3b, 0x0a, + 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xd8, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x43, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x38, 0x0a, 0x0b, 0x76, 0x61, + 0x63, 0x75, 0x75, 0x6d, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xd9, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x63, 0x75, + 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x56, 0x61, 0x63, 0x75, 0x75, 0x6d, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x44, 0x0a, 0x0f, 0x76, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x5f, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xda, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x63, 0x75, 0x75, 0x6d, + 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0e, 0x56, 0x61, 0x63, 0x75, + 0x75, 0x6d, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0c, 0x65, 0x78, + 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xdb, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x45, 0x78, 0x70, + 0x6c, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x45, 0x78, 0x70, 0x6c, + 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4f, 0x0a, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x73, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, + 0xdc, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x73, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, + 0x6c, 0x65, 0x41, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x52, 0x0a, 0x15, 0x72, 0x65, 0x66, 0x72, + 0x65, 0x73, 0x68, 0x5f, 0x6d, 0x61, 0x74, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x73, 0x74, 0x6d, + 0x74, 0x18, 0xdd, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x4d, 0x61, 0x74, 0x56, 0x69, + 0x65, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x12, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x4d, 0x61, 0x74, 0x56, 0x69, 0x65, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x45, 0x0a, 0x10, + 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, + 0x18, 0xde, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x3b, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x73, + 0x74, 0x6d, 0x74, 0x18, 0xdf, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x0b, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x32, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xe0, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x08, 0x4c, 0x6f, 0x63, 0x6b, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x51, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, + 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xe1, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, + 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x12, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, + 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3b, 0x0a, 0x0c, 0x72, 0x65, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xe2, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x52, 0x65, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x57, 0x0a, 0x16, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x63, + 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xe3, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, + 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x45, 0x0a, + 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x6d, + 0x74, 0x18, 0xe4, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x73, 0x74, 0x53, 0x74, + 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x73, 0x74, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x54, 0x0a, 0x15, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xe5, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3b, 0x0a, 0x0c, 0x70, 0x72, + 0x65, 0x70, 0x61, 0x72, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xe6, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x72, 0x65, + 0x70, 0x61, 0x72, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x50, 0x72, 0x65, 0x70, + 0x61, 0x72, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x3b, 0x0a, 0x0c, 0x65, 0x78, 0x65, 0x63, 0x75, + 0x74, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xe7, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, + 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x44, 0x0a, 0x0f, 0x64, 0x65, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x65, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xe8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x61, 0x6c, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x44, 0x65, 0x61, 0x6c, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x42, 0x0a, 0x0f, 0x64, 0x72, + 0x6f, 0x70, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xe9, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x44, 0x72, 0x6f, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, + 0x0d, 0x44, 0x72, 0x6f, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x4e, + 0x0a, 0x13, 0x72, 0x65, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x64, + 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xea, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, + 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x11, 0x52, 0x65, 0x61, + 0x73, 0x73, 0x69, 0x67, 0x6e, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x5a, + 0x0a, 0x17, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x73, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xeb, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, + 0x72, 0x54, 0x53, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, 0x44, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x63, 0x0a, 0x1a, 0x61, 0x6c, + 0x74, 0x65, 0x72, 0x5f, 0x74, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xec, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x22, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, + 0x54, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x18, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x4a, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x18, 0xed, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x48, 0x00, 0x52, 0x10, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x51, 0x0a, 0x14, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x5f, 0x73, + 0x70, 0x65, 0x63, 0x18, 0xee, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x4f, 0x62, 0x6a, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x12, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x53, 0x70, 0x65, 0x63, 0x12, 0x5a, + 0x0a, 0x17, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xef, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, + 0x74, 0x48, 0x00, 0x52, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x57, 0x0a, 0x16, 0x61, 0x6c, + 0x74, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x73, 0x74, 0x6d, 0x74, 0x18, 0xf0, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x14, 0x41, + 0x6c, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x5d, 0x0a, 0x18, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, + 0xf1, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x16, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x5a, 0x0a, 0x17, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xf2, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, 0x00, 0x52, 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x57, + 0x0a, 0x16, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0xf3, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x53, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x48, + 0x00, 0x52, 0x14, 0x44, 0x72, 0x6f, 0x70, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x07, 0x69, 0x6e, 0x74, 0x65, 0x67, + 0x65, 0x72, 0x18, 0xf4, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x48, 0x00, 0x52, 0x07, + 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x61, 0x74, + 0x18, 0xf5, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x48, 0x00, 0x52, 0x05, 0x46, 0x6c, 0x6f, 0x61, + 0x74, 0x12, 0x2e, 0x0a, 0x07, 0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x18, 0xf6, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, + 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x48, 0x00, 0x52, 0x07, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, + 0x6e, 0x12, 0x2b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0xf7, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x06, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x35, + 0x0a, 0x0a, 0x62, 0x69, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0xf8, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, + 0x69, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x09, 0x42, 0x69, 0x74, 0x53, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x25, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0xf9, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1a, 0x0a, 0x08, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x82, 0x01, 0x0a, 0x0c, 0x43, 0x61, 0x73, - 0x65, 0x54, 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x74, - 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x79, - 0x70, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6d, 0x6f, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x4d, 0x6f, 0x64, 0x12, - 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x83, 0x02, - 0x0a, 0x09, 0x41, 0x72, 0x72, 0x61, 0x79, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, - 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, - 0x0c, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x69, - 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x63, - 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x65, - 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x69, 0x64, 0x12, 0x2a, 0x0a, - 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x75, 0x6c, - 0x74, 0x69, 0x64, 0x69, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6d, 0x75, - 0x6c, 0x74, 0x69, 0x64, 0x69, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0xef, 0x01, 0x0a, 0x07, 0x52, 0x6f, 0x77, 0x45, 0x78, 0x70, 0x72, 0x12, - 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, - 0x72, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x69, 0x64, 0x12, 0x36, 0x0a, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, - 0x6d, 0x52, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x2a, 0x0a, - 0x08, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x4c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x08, + 0x69, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0xfa, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x4c, 0x69, + 0x73, 0x74, 0x48, 0x00, 0x52, 0x07, 0x49, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2f, 0x0a, + 0x08, 0x6f, 0x69, 0x64, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0xfb, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x69, 0x64, 0x4c, + 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x07, 0x4f, 0x69, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2e, + 0x0a, 0x07, 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0xfc, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x43, 0x6f, + 0x6e, 0x73, 0x74, 0x48, 0x00, 0x52, 0x07, 0x41, 0x5f, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x42, 0x06, + 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x22, 0x1d, 0x0a, 0x07, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, + 0x72, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x69, 0x76, 0x61, 0x6c, 0x22, 0x1b, 0x0a, 0x05, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x66, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x76, + 0x61, 0x6c, 0x22, 0x23, 0x0a, 0x07, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x12, 0x18, 0x0a, + 0x07, 0x62, 0x6f, 0x6f, 0x6c, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x62, 0x6f, 0x6f, 0x6c, 0x76, 0x61, 0x6c, 0x22, 0x1c, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x73, 0x76, 0x61, 0x6c, 0x22, 0x21, 0x0a, 0x09, 0x42, 0x69, 0x74, 0x53, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x73, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x62, 0x73, 0x76, 0x61, 0x6c, 0x22, 0x2c, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x24, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x08, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xba, 0x02, 0x0a, 0x0e, 0x52, 0x6f, 0x77, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x72, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x30, 0x0a, 0x06, 0x72, 0x63, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x77, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x72, 0x63, 0x74, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x05, - 0x6f, 0x70, 0x6e, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6f, 0x70, 0x6e, - 0x6f, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x69, 0x65, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x69, - 0x65, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, - 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x05, 0x6c, 0x61, 0x72, 0x67, 0x73, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6c, 0x61, 0x72, 0x67, 0x73, 0x12, 0x24, 0x0a, 0x05, - 0x72, 0x61, 0x72, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x72, 0x61, 0x72, - 0x67, 0x73, 0x22, 0xbc, 0x01, 0x0a, 0x0c, 0x43, 0x6f, 0x61, 0x6c, 0x65, 0x73, 0x63, 0x65, 0x45, - 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x2f, 0x0a, 0x07, 0x4f, 0x69, 0x64, 0x4c, 0x69, 0x73, + 0x74, 0x12, 0x24, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x61, 0x6c, 0x65, 0x73, 0x63, - 0x65, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x61, - 0x6c, 0x65, 0x73, 0x63, 0x65, 0x74, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x61, - 0x6c, 0x65, 0x73, 0x63, 0x65, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x61, 0x6c, 0x65, 0x73, 0x63, 0x65, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0xf8, 0x01, 0x0a, 0x0a, 0x4d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x45, 0x78, 0x70, 0x72, - 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, - 0x70, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x6e, 0x6d, 0x61, 0x78, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x6d, 0x61, 0x78, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x6d, 0x61, 0x78, 0x63, 0x6f, 0x6c, 0x6c, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x6d, 0x61, 0x78, - 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, - 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, - 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x4f, 0x70, 0x52, 0x02, 0x6f, 0x70, 0x12, 0x22, 0x0a, 0x04, - 0x61, 0x72, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, + 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x2f, 0x0a, 0x07, 0x49, 0x6e, 0x74, 0x4c, 0x69, + 0x73, 0x74, 0x12, 0x24, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x98, 0x02, 0x0a, 0x07, 0x41, 0x5f, 0x43, + 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, + 0x74, 0x65, 0x67, 0x65, 0x72, 0x48, 0x00, 0x52, 0x04, 0x69, 0x76, 0x61, 0x6c, 0x12, 0x25, 0x0a, + 0x04, 0x66, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x48, 0x00, 0x52, 0x04, + 0x66, 0x76, 0x61, 0x6c, 0x12, 0x2d, 0x0a, 0x07, 0x62, 0x6f, 0x6f, 0x6c, 0x76, 0x61, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x48, 0x00, 0x52, 0x07, 0x62, 0x6f, 0x6f, 0x6c, + 0x76, 0x61, 0x6c, 0x12, 0x26, 0x0a, 0x04, 0x73, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x04, 0x73, 0x76, 0x61, 0x6c, 0x12, 0x2b, 0x0a, 0x05, 0x62, + 0x73, 0x76, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, 0x69, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x48, + 0x00, 0x52, 0x05, 0x62, 0x73, 0x76, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x6e, 0x75, + 0x6c, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x6e, 0x75, 0x6c, 0x6c, + 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x05, 0x0a, 0x03, + 0x76, 0x61, 0x6c, 0x22, 0x51, 0x0a, 0x05, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x61, 0x6c, 0x69, 0x61, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, + 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, + 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xe3, 0x01, 0x0a, 0x08, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x56, 0x61, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, + 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6c, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x10, 0x0a, 0x03, 0x69, 0x6e, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x69, 0x6e, + 0x68, 0x12, 0x26, 0x0a, 0x0e, 0x72, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, + 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x70, 0x65, + 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x05, 0x61, 0x6c, 0x69, + 0x61, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xaa, 0x01, 0x0a, - 0x10, 0x53, 0x51, 0x4c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, - 0x78, 0x70, 0x72, 0x12, 0x2c, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x51, 0x4c, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x52, 0x02, 0x6f, - 0x70, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x1a, 0x0a, - 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe5, 0x02, 0x0a, 0x07, 0x58, 0x6d, - 0x6c, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xaf, 0x04, 0x0a, + 0x09, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x28, 0x0a, 0x07, 0x6e, 0x73, + 0x5f, 0x75, 0x72, 0x69, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6e, 0x73, 0x5f, + 0x75, 0x72, 0x69, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x12, 0x28, 0x0a, 0x07, 0x64, 0x6f, 0x63, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x07, 0x64, 0x6f, 0x63, 0x65, 0x78, 0x70, 0x72, 0x12, 0x28, 0x0a, 0x07, 0x72, 0x6f, + 0x77, 0x65, 0x78, 0x70, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x72, 0x6f, 0x77, + 0x65, 0x78, 0x70, 0x72, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x23, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x58, - 0x6d, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x4f, 0x70, 0x52, 0x02, 0x6f, 0x70, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x2e, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x18, 0x04, + 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0a, + 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x12, 0x34, 0x0a, 0x0d, + 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x5f, 0x61, 0x72, 0x67, 0x73, - 0x12, 0x2c, 0x0a, 0x09, 0x61, 0x72, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x73, 0x12, 0x30, + 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x09, 0x61, 0x72, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, - 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, - 0x67, 0x73, 0x12, 0x35, 0x0a, 0x09, 0x78, 0x6d, 0x6c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x58, 0x6d, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, - 0x78, 0x6d, 0x6c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, - 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0xc2, 0x01, 0x0a, 0x08, 0x4e, 0x75, 0x6c, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x12, 0x20, + 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x6f, 0x74, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, + 0x28, 0x04, 0x52, 0x08, 0x6e, 0x6f, 0x74, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x12, 0x24, 0x0a, 0x0d, + 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x63, 0x6f, 0x6c, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x63, + 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xdb, + 0x02, 0x0a, 0x0a, 0x49, 0x6e, 0x74, 0x6f, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x24, 0x0a, + 0x03, 0x72, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x03, + 0x72, 0x65, 0x6c, 0x12, 0x2b, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4d, + 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x35, 0x0a, 0x09, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, + 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6f, 0x6e, + 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x2d, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x76, 0x69, 0x65, 0x77, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, + 0x1b, 0x0a, 0x09, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x08, 0x73, 0x6b, 0x69, 0x70, 0x44, 0x61, 0x74, 0x61, 0x22, 0x95, 0x02, 0x0a, + 0x03, 0x56, 0x61, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x72, 0x6e, 0x6f, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x72, 0x6e, 0x6f, 0x12, 0x1a, 0x0a, 0x08, + 0x76, 0x61, 0x72, 0x61, 0x74, 0x74, 0x6e, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x76, 0x61, 0x72, 0x61, 0x74, 0x74, 0x6e, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x61, 0x72, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x61, 0x72, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x61, 0x72, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x76, 0x61, 0x72, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, + 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x61, 0x72, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x76, 0x61, 0x72, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x26, + 0x0a, 0x0e, 0x76, 0x61, 0x72, 0x6e, 0x75, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x6c, 0x73, + 0x18, 0x07, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0e, 0x76, 0x61, 0x72, 0x6e, 0x75, 0x6c, 0x6c, 0x69, + 0x6e, 0x67, 0x72, 0x65, 0x6c, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x76, 0x61, 0x72, 0x6c, 0x65, 0x76, + 0x65, 0x6c, 0x73, 0x75, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x76, 0x61, 0x72, + 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf4, 0x01, 0x0a, 0x05, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, - 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, - 0x72, 0x67, 0x12, 0x3a, 0x0a, 0x0c, 0x6e, 0x75, 0x6c, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x75, 0x6c, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x0c, 0x6e, 0x75, 0x6c, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x61, 0x72, 0x67, 0x69, 0x73, 0x72, 0x6f, 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x08, 0x61, 0x72, 0x67, 0x69, 0x73, 0x72, 0x6f, 0x77, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa9, 0x01, 0x0a, 0x0b, 0x42, 0x6f, 0x6f, 0x6c, 0x65, - 0x61, 0x6e, 0x54, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x3a, 0x0a, 0x0c, 0x62, 0x6f, - 0x6f, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, - 0x54, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x62, 0x6f, 0x6f, 0x6c, 0x74, 0x65, - 0x73, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x98, 0x02, 0x0a, 0x0e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x44, - 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x22, 0x0a, - 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x12, 0x3e, 0x0a, 0x0e, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, - 0x6d, 0x52, 0x0e, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, - 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa5, 0x01, - 0x0a, 0x13, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, - 0x12, 0x19, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x4d, 0x6f, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, - 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x01, 0x0a, 0x0c, 0x53, 0x65, 0x74, 0x54, 0x6f, 0x44, - 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, + 0x12, 0x31, 0x0a, 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x6b, + 0x69, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x1c, 0x0a, + 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x74, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x20, 0x0a, + 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, + 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb2, 0x05, 0x0a, 0x06, + 0x41, 0x67, 0x67, 0x72, 0x65, 0x66, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, - 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x4d, 0x6f, 0x64, 0x12, 0x1c, 0x0a, 0x09, - 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8f, 0x01, 0x0a, 0x0d, 0x43, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x4f, 0x66, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, + 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x67, 0x67, 0x66, + 0x6e, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x67, 0x67, 0x66, + 0x6e, 0x6f, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x67, 0x67, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x67, 0x67, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x61, 0x67, 0x67, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x61, 0x67, 0x67, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x30, + 0x0a, 0x0b, 0x61, 0x67, 0x67, 0x61, 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x06, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x61, 0x67, 0x67, 0x61, 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, 0x73, + 0x12, 0x34, 0x0a, 0x0d, 0x61, 0x67, 0x67, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x61, 0x72, 0x67, + 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x61, 0x67, 0x67, 0x64, 0x69, 0x72, 0x65, + 0x63, 0x74, 0x61, 0x72, 0x67, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x08, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x61, 0x67, + 0x67, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x61, 0x67, + 0x67, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x0b, 0x61, 0x67, 0x67, 0x64, 0x69, 0x73, + 0x74, 0x69, 0x6e, 0x63, 0x74, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x61, 0x67, 0x67, + 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x61, 0x67, 0x67, 0x66, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x61, 0x67, 0x67, + 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x67, 0x67, 0x73, 0x74, 0x61, + 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x67, 0x67, 0x73, 0x74, 0x61, 0x72, + 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x67, 0x67, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x67, 0x67, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, + 0x69, 0x63, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x67, 0x67, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x67, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x20, 0x0a, 0x0b, + 0x61, 0x67, 0x67, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x61, 0x67, 0x67, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x12, 0x2e, + 0x0a, 0x08, 0x61, 0x67, 0x67, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x67, 0x67, 0x53, + 0x70, 0x6c, 0x69, 0x74, 0x52, 0x08, 0x61, 0x67, 0x67, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x12, 0x14, + 0x0a, 0x05, 0x61, 0x67, 0x67, 0x6e, 0x6f, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x61, + 0x67, 0x67, 0x6e, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x67, 0x67, 0x74, 0x72, 0x61, 0x6e, 0x73, + 0x6e, 0x6f, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x61, 0x67, 0x67, 0x74, 0x72, 0x61, + 0x6e, 0x73, 0x6e, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0xb6, 0x01, 0x0a, 0x0c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6e, + 0x63, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, + 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x72, 0x65, 0x66, 0x73, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x72, 0x65, 0x66, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, + 0x67, 0x67, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0b, 0x61, 0x67, 0x67, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x12, 0x1a, 0x0a, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xdc, 0x02, 0x0a, 0x0a, 0x57, 0x69, + 0x6e, 0x64, 0x6f, 0x77, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x76, - 0x61, 0x72, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x63, 0x76, 0x61, 0x72, - 0x6e, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x5f, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x73, - 0x6f, 0x72, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x22, 0x60, 0x0a, 0x0d, 0x4e, 0x65, 0x78, 0x74, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x73, - 0x65, 0x71, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x65, 0x71, 0x69, - 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, 0x22, 0x9b, 0x01, 0x0a, 0x0d, 0x49, - 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x20, 0x0a, 0x03, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x69, + 0x6e, 0x66, 0x6e, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x77, 0x69, + 0x6e, 0x66, 0x6e, 0x6f, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x69, 0x6e, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x77, 0x69, 0x6e, 0x74, 0x79, 0x70, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x69, 0x6e, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x69, 0x6e, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, + 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, + 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, + 0x61, 0x72, 0x67, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x61, 0x67, 0x67, 0x66, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x61, 0x67, 0x67, 0x66, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x72, 0x65, 0x66, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x77, 0x69, 0x6e, 0x72, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x77, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x61, 0x67, 0x67, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x77, 0x69, 0x6e, 0x61, 0x67, 0x67, 0x12, 0x1a, 0x0a, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xaf, 0x03, 0x0a, 0x0f, 0x53, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x66, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x22, - 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, - 0x70, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x63, 0x6f, 0x6c, 0x6c, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x63, 0x6f, - 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x6f, 0x70, 0x63, - 0x6c, 0x61, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6e, 0x66, 0x65, - 0x72, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, 0x87, 0x02, 0x0a, 0x0b, 0x54, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x2a, + 0x0a, 0x10, 0x72, 0x65, 0x66, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x66, 0x63, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, + 0x66, 0x65, 0x6c, 0x65, 0x6d, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x72, 0x65, 0x66, 0x65, 0x6c, 0x65, 0x6d, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x72, 0x65, 0x66, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x72, 0x65, 0x66, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, + 0x66, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, + 0x65, 0x66, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x38, 0x0a, 0x0f, 0x72, 0x65, 0x66, 0x75, + 0x70, 0x70, 0x65, 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x70, 0x72, 0x18, 0x07, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x0f, 0x72, 0x65, 0x66, 0x75, 0x70, 0x70, 0x65, 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x70, 0x72, 0x12, 0x38, 0x0a, 0x0f, 0x72, 0x65, 0x66, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x70, 0x72, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x72, 0x65, 0x66, + 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x70, 0x72, 0x12, 0x28, 0x0a, 0x07, + 0x72, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x72, + 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x12, 0x32, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x61, 0x73, 0x73, + 0x67, 0x6e, 0x65, 0x78, 0x70, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x72, 0x65, + 0x66, 0x61, 0x73, 0x73, 0x67, 0x6e, 0x65, 0x78, 0x70, 0x72, 0x22, 0xea, 0x02, 0x0a, 0x08, 0x46, + 0x75, 0x6e, 0x63, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x75, 0x6e, + 0x63, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x66, 0x75, 0x6e, 0x63, 0x69, + 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x63, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, 0x75, 0x6e, 0x63, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x75, 0x6e, + 0x63, 0x72, 0x65, 0x74, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x66, + 0x75, 0x6e, 0x63, 0x72, 0x65, 0x74, 0x73, 0x65, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x75, 0x6e, + 0x63, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, 0x12, 0x36, 0x0a, + 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, + 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, + 0x6c, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x63, + 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, + 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, + 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa0, 0x01, 0x0a, 0x0c, 0x4e, 0x61, 0x6d, 0x65, + 0x64, 0x41, 0x72, 0x67, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, - 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x14, - 0x0a, 0x05, 0x72, 0x65, 0x73, 0x6e, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, - 0x65, 0x73, 0x6e, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, - 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x72, 0x65, - 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x74, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x72, 0x65, 0x66, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x6f, - 0x72, 0x69, 0x67, 0x74, 0x62, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, - 0x73, 0x6f, 0x72, 0x69, 0x67, 0x74, 0x62, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x6f, - 0x72, 0x69, 0x67, 0x63, 0x6f, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, - 0x73, 0x6f, 0x72, 0x69, 0x67, 0x63, 0x6f, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x6a, - 0x75, 0x6e, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x73, 0x6a, 0x75, - 0x6e, 0x6b, 0x22, 0x27, 0x0a, 0x0b, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x52, 0x65, - 0x66, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x72, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xf8, 0x02, 0x0a, 0x08, - 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x78, 0x70, 0x72, 0x12, 0x2e, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x6f, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, - 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x6e, - 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, - 0x4e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x12, 0x22, 0x0a, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x12, 0x22, 0x0a, 0x04, 0x72, - 0x61, 0x72, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x72, 0x61, 0x72, 0x67, 0x12, - 0x31, 0x0a, 0x0c, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x10, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, - 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x10, 0x6a, - 0x6f, 0x69, 0x6e, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, - 0x24, 0x0a, 0x05, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, - 0x71, 0x75, 0x61, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x72, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, - 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x5c, 0x0a, 0x08, 0x46, 0x72, 0x6f, 0x6d, 0x45, 0x78, - 0x70, 0x72, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x72, 0x6f, 0x6d, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x66, 0x72, 0x6f, 0x6d, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x24, - 0x0a, 0x05, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, - 0x75, 0x61, 0x6c, 0x73, 0x22, 0x9e, 0x03, 0x0a, 0x0e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, - 0x69, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x32, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0d, 0x61, - 0x72, 0x62, 0x69, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0c, 0x61, 0x72, 0x62, 0x69, 0x74, 0x65, 0x72, 0x45, 0x6c, 0x65, 0x6d, 0x73, - 0x12, 0x33, 0x0a, 0x0d, 0x61, 0x72, 0x62, 0x69, 0x74, 0x65, 0x72, 0x5f, 0x77, 0x68, 0x65, 0x72, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x61, 0x72, 0x62, 0x69, 0x74, 0x65, 0x72, - 0x57, 0x68, 0x65, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, - 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, - 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x0f, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, - 0x6c, 0x69, 0x63, 0x74, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, - 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x53, 0x65, 0x74, 0x12, 0x3a, 0x0a, - 0x11, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x5f, 0x77, 0x68, 0x65, - 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, - 0x6c, 0x69, 0x63, 0x74, 0x57, 0x68, 0x65, 0x72, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x78, 0x63, - 0x6c, 0x5f, 0x72, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x52, 0x65, 0x6c, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x34, 0x0a, 0x0e, 0x65, 0x78, 0x63, 0x6c, 0x5f, 0x72, 0x65, 0x6c, 0x5f, 0x74, 0x6c, 0x69, 0x73, - 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x52, 0x65, 0x6c, - 0x54, 0x6c, 0x69, 0x73, 0x74, 0x22, 0xdb, 0x02, 0x0a, 0x0a, 0x49, 0x6e, 0x74, 0x6f, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x03, 0x72, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x12, 0x2b, 0x0a, 0x09, 0x63, 0x6f, - 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, - 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x28, 0x0a, 0x07, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, 0x0a, 0x09, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6d, - 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x28, 0x0a, - 0x10, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, - 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x76, 0x69, 0x65, - 0x77, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x73, 0x6b, 0x69, 0x70, 0x44, - 0x61, 0x74, 0x61, 0x22, 0x9d, 0x02, 0x0a, 0x0b, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x34, 0x0a, - 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, - 0x6d, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x4b, 0x69, 0x6e, 0x64, 0x52, - 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x71, 0x75, 0x61, - 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x12, 0x2f, 0x0a, - 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, + 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x67, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x72, 0x67, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, + 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xfc, 0x01, 0x0a, 0x06, 0x4f, + 0x70, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x33, - 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6e, 0x6f, 0x73, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, - 0x6e, 0x6f, 0x73, 0x22, 0x6f, 0x0a, 0x07, 0x52, 0x61, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x22, - 0x0a, 0x04, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x73, 0x74, - 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x74, 0x6d, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x74, 0x6d, 0x74, 0x5f, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x6d, 0x74, - 0x5f, 0x6c, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x74, 0x6d, 0x74, - 0x5f, 0x6c, 0x65, 0x6e, 0x22, 0xcd, 0x0e, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x34, - 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x43, 0x6d, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1e, - 0x0a, 0x0b, 0x63, 0x61, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x53, 0x65, 0x74, 0x54, 0x61, 0x67, 0x12, 0x31, - 0x0a, 0x0c, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x04, + 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x12, 0x22, 0x0a, 0x0c, 0x6f, + 0x70, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x6f, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x72, 0x65, 0x74, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x08, 0x6f, 0x70, 0x72, 0x65, 0x74, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6f, + 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6f, + 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, + 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x82, 0x02, 0x0a, 0x0c, 0x44, 0x69, + 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x12, 0x0a, 0x04, + 0x6f, 0x70, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6f, 0x70, 0x6e, 0x6f, + 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6f, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x72, 0x65, 0x74, 0x73, 0x65, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70, 0x72, 0x65, 0x74, 0x73, 0x65, 0x74, + 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, + 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, + 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x80, + 0x02, 0x0a, 0x0a, 0x4e, 0x75, 0x6c, 0x6c, 0x49, 0x66, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, + 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, + 0x12, 0x0a, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6f, + 0x70, 0x6e, 0x6f, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6f, 0x70, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x72, 0x65, 0x74, + 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70, 0x72, 0x65, 0x74, + 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x70, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, + 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, + 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0xc2, 0x01, 0x0a, 0x11, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x41, 0x72, 0x72, 0x61, + 0x79, 0x4f, 0x70, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x61, - 0x73, 0x5f, 0x61, 0x67, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x61, - 0x73, 0x41, 0x67, 0x67, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x68, 0x61, 0x73, 0x5f, 0x77, 0x69, 0x6e, - 0x64, 0x6f, 0x77, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0e, 0x68, 0x61, 0x73, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x46, 0x75, 0x6e, 0x63, 0x73, 0x12, - 0x26, 0x0a, 0x0f, 0x68, 0x61, 0x73, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x72, - 0x66, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x61, 0x73, 0x54, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x53, 0x52, 0x46, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x68, 0x61, 0x73, 0x5f, 0x73, - 0x75, 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, - 0x68, 0x61, 0x73, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x68, - 0x61, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x5f, 0x6f, 0x6e, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x61, 0x73, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, - 0x74, 0x4f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, - 0x73, 0x69, 0x76, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x68, 0x61, 0x73, 0x52, - 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x61, 0x73, 0x5f, - 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x74, 0x65, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x61, 0x73, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x69, 0x6e, - 0x67, 0x43, 0x54, 0x45, 0x12, 0x24, 0x0a, 0x0e, 0x68, 0x61, 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x5f, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x68, 0x61, - 0x73, 0x46, 0x6f, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x68, 0x61, - 0x73, 0x5f, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0e, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x68, 0x61, 0x73, 0x52, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, - 0x72, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x52, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x12, 0x29, 0x0a, 0x08, 0x63, 0x74, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x10, 0x20, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6f, 0x70, 0x6e, + 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6f, 0x70, 0x6e, 0x6f, 0x12, 0x15, 0x0a, + 0x06, 0x75, 0x73, 0x65, 0x5f, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x75, + 0x73, 0x65, 0x4f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, + 0x6c, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9c, 0x01, 0x0a, 0x08, 0x42, 0x6f, 0x6f, 0x6c, 0x45, + 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x2e, 0x0a, 0x06, 0x62, 0x6f, 0x6f, 0x6c, 0x6f, 0x70, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x62, + 0x6f, 0x6f, 0x6c, 0x6f, 0x70, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x06, - 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x72, 0x74, - 0x61, 0x62, 0x6c, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x72, 0x65, 0x65, - 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x45, 0x78, 0x70, 0x72, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, - 0x74, 0x72, 0x65, 0x65, 0x12, 0x3a, 0x0a, 0x11, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x5f, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x0f, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, - 0x12, 0x2f, 0x0a, 0x14, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x6f, 0x75, - 0x74, 0x65, 0x72, 0x5f, 0x6a, 0x6f, 0x69, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, - 0x6d, 0x65, 0x72, 0x67, 0x65, 0x55, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x65, 0x72, 0x4a, 0x6f, 0x69, - 0x6e, 0x12, 0x2f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, - 0x18, 0x15, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, - 0x73, 0x74, 0x12, 0x34, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x16, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x08, - 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x39, 0x0a, 0x0b, 0x6f, 0x6e, 0x5f, 0x63, - 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, - 0x69, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x52, 0x0a, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, - 0x69, 0x63, 0x74, 0x12, 0x35, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, - 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x18, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x74, - 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x0c, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x19, 0x20, 0x03, 0x28, 0x0b, + 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa9, 0x02, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, + 0x6b, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, + 0x78, 0x70, 0x72, 0x12, 0x39, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, + 0x0a, 0x0b, 0x73, 0x75, 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x2a, + 0x0a, 0x08, 0x74, 0x65, 0x73, 0x74, 0x65, 0x78, 0x70, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x0b, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x25, 0x0a, - 0x0e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x18, - 0x1a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x44, 0x69, 0x73, 0x74, - 0x69, 0x6e, 0x63, 0x74, 0x12, 0x33, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, - 0x5f, 0x73, 0x65, 0x74, 0x73, 0x18, 0x1b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x0b, 0x68, 0x61, 0x76, - 0x69, 0x6e, 0x67, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, - 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x51, 0x75, 0x61, 0x6c, 0x12, 0x33, 0x0a, 0x0d, 0x77, 0x69, - 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x1d, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0c, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, - 0x37, 0x0a, 0x0f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, - 0x63, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x0b, 0x73, 0x6f, 0x72, 0x74, - 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x73, - 0x6f, 0x72, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x0b, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2f, 0x0a, 0x0b, - 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0a, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x38, 0x0a, - 0x0c, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x22, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x6d, - 0x61, 0x72, 0x6b, 0x73, 0x18, 0x23, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x4d, - 0x61, 0x72, 0x6b, 0x73, 0x12, 0x35, 0x0a, 0x0e, 0x73, 0x65, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x73, 0x65, - 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x37, 0x0a, 0x0f, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x73, 0x18, 0x25, + 0x52, 0x08, 0x74, 0x65, 0x73, 0x74, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2b, 0x0a, 0x09, 0x6f, 0x70, + 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x6f, + 0x70, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x73, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x73, 0x75, 0x62, 0x73, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0xb5, 0x05, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x20, 0x0a, + 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, + 0x39, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x73, + 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x74, 0x65, + 0x73, 0x74, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x65, + 0x73, 0x74, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2b, 0x0a, 0x09, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x5f, + 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x49, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x12, 0x1c, 0x0a, + 0x09, 0x70, 0x6c, 0x61, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x70, 0x6c, 0x61, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x66, + 0x69, 0x72, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x66, 0x69, 0x72, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x74, + 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x66, 0x69, 0x72, + 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x66, + 0x69, 0x72, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x43, + 0x6f, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x75, + 0x73, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0c, 0x75, 0x73, 0x65, 0x48, 0x61, 0x73, 0x68, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x12, 0x28, 0x0a, 0x10, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x65, 0x71, 0x5f, + 0x66, 0x61, 0x6c, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x75, 0x6e, 0x6b, + 0x6e, 0x6f, 0x77, 0x6e, 0x45, 0x71, 0x46, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x70, + 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x61, 0x66, 0x65, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x5f, 0x73, 0x61, 0x66, + 0x65, 0x12, 0x2b, 0x0a, 0x09, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, - 0x44, 0x65, 0x70, 0x73, 0x12, 0x3c, 0x0a, 0x12, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, - 0x63, 0x6b, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x10, 0x77, 0x69, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x74, 0x6d, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x27, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x74, 0x6d, 0x74, 0x5f, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x6d, 0x74, - 0x5f, 0x6c, 0x65, 0x6e, 0x18, 0x28, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x74, 0x6d, 0x74, - 0x5f, 0x6c, 0x65, 0x6e, 0x22, 0xff, 0x02, 0x0a, 0x0a, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x04, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x2b, + 0x0a, 0x09, 0x70, 0x61, 0x72, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x04, 0x63, 0x6f, 0x6c, 0x73, 0x12, 0x2f, 0x0a, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x73, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x12, 0x6f, 0x6e, 0x5f, 0x63, - 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, - 0x52, 0x10, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x43, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, - 0x6c, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x77, 0x69, 0x74, - 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, - 0x12, 0x34, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x76, - 0x65, 0x72, 0x72, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x08, 0x6f, 0x76, - 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x22, 0x90, 0x02, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x0c, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x63, - 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x75, 0x73, 0x69, - 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, - 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, - 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0e, 0x72, - 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, + 0x65, 0x52, 0x08, 0x70, 0x61, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x22, 0x0a, 0x04, 0x61, + 0x72, 0x67, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, + 0x22, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x5f, 0x63, + 0x6f, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, + 0x63, 0x6f, 0x73, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x5f, + 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x22, 0x62, 0x0a, 0x12, 0x41, 0x6c, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x53, 0x75, 0x62, 0x50, 0x6c, 0x61, 0x6e, 0x12, + 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, + 0x72, 0x12, 0x2a, 0x0a, 0x08, 0x73, 0x75, 0x62, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4c, 0x69, - 0x73, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x77, - 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x22, 0xbf, 0x02, 0x0a, 0x0a, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, - 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, - 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x0b, - 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x6f, 0x64, 0x65, 0x52, 0x08, 0x73, 0x75, 0x62, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x22, 0xd5, 0x01, + 0x0a, 0x0b, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x20, 0x0a, + 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, + 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, + 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, + 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, + 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, + 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, + 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, + 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x22, 0xc8, 0x01, 0x0a, 0x0a, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, + 0x74, 0x6f, 0x72, 0x65, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x35, 0x0a, - 0x0e, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, - 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x61, - 0x75, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, - 0x0a, 0x77, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x22, 0xa0, 0x02, 0x0a, 0x09, - 0x4d, 0x65, 0x72, 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, - 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x0f, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x0e, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x6a, 0x6f, 0x69, 0x6e, - 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x12, 0x6d, 0x65, 0x72, - 0x67, 0x65, 0x5f, 0x77, 0x68, 0x65, 0x6e, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x73, 0x18, + 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x28, 0x0a, 0x07, 0x6e, 0x65, 0x77, 0x76, + 0x61, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x76, 0x61, + 0x6c, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x75, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x10, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x57, 0x68, 0x65, 0x6e, - 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, - 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x22, 0xd3, - 0x07, 0x0a, 0x0a, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x37, 0x0a, - 0x0f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, - 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x6f, 0x5f, 0x63, - 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x6f, 0x43, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x6f, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2f, 0x0a, - 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2f, - 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, - 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x63, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x43, - 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x64, - 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x12, 0x33, 0x0a, 0x0d, - 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x08, 0x20, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x75, 0x6d, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x93, 0x02, 0x0a, 0x0b, 0x52, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, + 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x03, 0x61, 0x72, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, + 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x3c, 0x0a, 0x0d, + 0x72, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, + 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0d, 0x72, 0x65, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xed, 0x01, 0x0a, 0x0b, 0x43, 0x6f, 0x65, 0x72, 0x63, + 0x65, 0x56, 0x69, 0x61, 0x49, 0x4f, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x12, 0x33, 0x0a, 0x0d, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x63, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, - 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, - 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x0b, 0x73, 0x6f, 0x72, - 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, - 0x73, 0x6f, 0x72, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x6c, 0x69, - 0x6d, 0x69, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, + 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x3a, + 0x0a, 0x0c, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0c, 0x63, 0x6f, + 0x65, 0x72, 0x63, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc1, 0x02, 0x0a, 0x0f, 0x41, 0x72, 0x72, 0x61, 0x79, + 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, + 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x2a, + 0x0a, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x0b, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2f, 0x0a, - 0x0b, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0a, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x38, - 0x0a, 0x0c, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x6b, - 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, + 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x78, 0x70, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x22, + 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, + 0x69, 0x64, 0x12, 0x3a, 0x0a, 0x0c, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, + 0x52, 0x0c, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, + 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xd2, 0x01, 0x0a, 0x12, 0x43, + 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x52, 0x6f, 0x77, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78, 0x70, + 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, + 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, - 0x35, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x10, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, - 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x11, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, - 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x02, 0x6f, 0x70, 0x12, 0x10, - 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x61, 0x6c, 0x6c, - 0x12, 0x28, 0x0a, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, - 0x53, 0x74, 0x6d, 0x74, 0x52, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x12, 0x28, 0x0a, 0x04, 0x72, 0x61, - 0x72, 0x67, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x04, - 0x72, 0x61, 0x72, 0x67, 0x22, 0x3a, 0x0a, 0x0a, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x76, 0x61, 0x6c, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x76, 0x61, 0x6c, - 0x22, 0xb0, 0x01, 0x0a, 0x0c, 0x50, 0x4c, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x69, 0x6e, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6e, 0x61, 0x6d, 0x65, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, - 0x26, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, - 0x6d, 0x74, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0xb4, 0x01, 0x0a, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x04, 0x63, 0x6d, 0x64, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6d, 0x64, 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, - 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0xa9, 0x02, 0x0a, 0x0d, 0x41, - 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x12, 0x32, 0x0a, 0x07, - 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x12, 0x2e, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x6f, 0x77, 0x6e, - 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x08, 0x6e, 0x65, - 0x77, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x64, 0x65, 0x66, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x03, 0x64, 0x65, 0x66, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, - 0x76, 0x69, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, - 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x12, 0x18, 0x0a, 0x07, - 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, - 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x22, 0xe2, 0x01, 0x0a, 0x0f, 0x41, 0x6c, 0x74, 0x65, 0x72, - 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, - 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, - 0x74, 0x79, 0x70, 0x65, 0x12, 0x2b, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x03, 0x64, 0x65, 0x66, 0x18, 0x04, 0x20, 0x01, + 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3c, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, + 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x88, 0x01, 0x0a, 0x0b, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, + 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, + 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, + 0x61, 0x72, 0x67, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x5f, 0x6f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x6c, 0x4f, 0x69, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf8, 0x01, 0x0a, 0x08, 0x43, + 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x73, + 0x65, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x61, 0x73, + 0x65, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x63, 0x6f, 0x6c, + 0x6c, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x61, 0x73, 0x65, 0x63, + 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x03, 0x64, 0x65, 0x66, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, - 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0xde, 0x02, 0x0a, 0x10, - 0x53, 0x65, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x26, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x02, 0x6f, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12, 0x22, 0x0a, 0x04, 0x6c, 0x61, - 0x72, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x12, 0x22, - 0x0a, 0x04, 0x72, 0x61, 0x72, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x72, 0x61, - 0x72, 0x67, 0x12, 0x2b, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, + 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, - 0x2f, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x06, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, - 0x12, 0x35, 0x0a, 0x0e, 0x63, 0x6f, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x43, 0x6f, 0x6c, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x33, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x73, 0x22, 0x9a, 0x03, 0x0a, - 0x09, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, - 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, - 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x35, 0x0a, 0x08, 0x74, 0x61, 0x72, 0x67, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x08, 0x74, 0x61, 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, - 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, - 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x69, - 0x6c, 0x65, 0x67, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x70, 0x72, 0x69, - 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x67, 0x72, 0x61, 0x6e, 0x74, - 0x65, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x72, 0x61, 0x6e, 0x74, - 0x65, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x67, 0x72, 0x61, 0x6e, 0x74, - 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x07, 0x67, 0x72, 0x61, 0x6e, 0x74, - 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x67, 0x72, - 0x61, 0x6e, 0x74, 0x6f, 0x72, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, - 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, - 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0x97, 0x02, 0x0a, 0x0d, 0x47, 0x72, - 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x34, 0x0a, 0x0d, 0x67, - 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0d, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x6f, 0x6c, 0x65, - 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x5f, 0x72, 0x6f, 0x6c, - 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, - 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x67, 0x72, - 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x5f, 0x67, 0x72, - 0x61, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x6f, 0x70, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x6f, 0x70, - 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, - 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x6f, 0x72, 0x12, - 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, - 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x22, 0x73, 0x0a, 0x1a, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x64, + 0x65, 0x66, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, + 0x64, 0x65, 0x66, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x08, 0x43, 0x61, 0x73, 0x65, 0x57, 0x68, + 0x65, 0x6e, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x03, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x06, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, - 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x31, 0x0a, 0x0f, 0x43, 0x6c, 0x6f, 0x73, - 0x65, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, - 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x83, 0x01, 0x0a, 0x0b, - 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, - 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, - 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x22, 0xbd, 0x02, 0x0a, 0x08, 0x43, 0x6f, 0x70, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, - 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, - 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, - 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x07, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x18, - 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x69, 0x73, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, - 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, - 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, - 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x08, + 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x26, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x82, 0x01, 0x0a, + 0x0c, 0x43, 0x61, 0x73, 0x65, 0x54, 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, + 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, + 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, + 0x5f, 0x6d, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, + 0x4d, 0x6f, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x83, 0x02, 0x0a, 0x09, 0x41, 0x72, 0x72, 0x61, 0x79, 0x45, 0x78, 0x70, 0x72, 0x12, + 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, + 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x63, + 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x72, 0x72, + 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x65, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x69, + 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, + 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x64, 0x69, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x64, 0x69, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xef, 0x01, 0x0a, 0x07, 0x52, 0x6f, 0x77, 0x45, + 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x6f, 0x77, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, + 0x6f, 0x77, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x69, 0x64, 0x12, 0x36, 0x0a, 0x0a, 0x72, 0x6f, 0x77, + 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, + 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1a, 0x0a, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xba, 0x02, 0x0a, 0x0e, 0x52, 0x6f, + 0x77, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, + 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x30, + 0x0a, 0x06, 0x72, 0x63, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x77, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x72, 0x63, 0x74, 0x79, 0x70, 0x65, + 0x12, 0x24, 0x0a, 0x05, 0x6f, 0x70, 0x6e, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x05, 0x6f, 0x70, 0x6e, 0x6f, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, + 0x6c, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6f, 0x70, 0x66, 0x61, + 0x6d, 0x69, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, + 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x05, 0x6c, 0x61, + 0x72, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6c, 0x61, 0x72, 0x67, 0x73, + 0x12, 0x24, 0x0a, 0x05, 0x72, 0x61, 0x72, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x05, 0x72, 0x61, 0x72, 0x67, 0x73, 0x22, 0xbc, 0x01, 0x0a, 0x0c, 0x43, 0x6f, 0x61, 0x6c, 0x65, + 0x73, 0x63, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x22, 0xcb, 0x04, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x2d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x6c, 0x74, 0x73, 0x18, 0x02, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x61, + 0x6c, 0x65, 0x73, 0x63, 0x65, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x63, 0x6f, 0x61, 0x6c, 0x65, 0x73, 0x63, 0x65, 0x74, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, + 0x0e, 0x63, 0x6f, 0x61, 0x6c, 0x65, 0x73, 0x63, 0x65, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x61, 0x6c, 0x65, 0x73, 0x63, 0x65, 0x63, + 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf8, 0x01, 0x0a, 0x0a, 0x4d, 0x69, 0x6e, 0x4d, 0x61, 0x78, + 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x6e, 0x6d, 0x61, 0x78, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x6d, + 0x61, 0x78, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x6d, 0x61, 0x78, + 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x69, + 0x6e, 0x6d, 0x61, 0x78, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x02, + 0x6f, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x4f, 0x70, 0x52, 0x02, 0x6f, 0x70, + 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, + 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0xaa, 0x01, 0x0a, 0x10, 0x53, 0x51, 0x4c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x2c, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, + 0x51, 0x4c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, + 0x70, 0x52, 0x02, 0x6f, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x79, 0x70, + 0x6d, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x79, 0x70, 0x6d, 0x6f, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xfd, 0x02, + 0x0a, 0x07, 0x58, 0x6d, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x23, 0x0a, 0x02, 0x6f, + 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x58, 0x6d, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x4f, 0x70, 0x52, 0x02, 0x6f, 0x70, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x5f, 0x61, 0x72, + 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x5f, + 0x61, 0x72, 0x67, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x61, 0x72, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x61, 0x72, 0x67, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x35, 0x0a, 0x09, 0x78, 0x6d, 0x6c, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x58, 0x6d, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x09, 0x78, 0x6d, 0x6c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, + 0x06, 0x69, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, + 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x79, 0x70, + 0x6d, 0x6f, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x79, 0x70, 0x6d, 0x6f, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x98, 0x01, + 0x0a, 0x0a, 0x4a, 0x73, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x0b, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, + 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x32, 0x0a, 0x08, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, + 0x6e, 0x67, 0x52, 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x1a, 0x0a, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6b, 0x0a, 0x0d, 0x4a, 0x73, 0x6f, 0x6e, + 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x2c, 0x0a, 0x06, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, + 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x79, 0x70, 0x69, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, + 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x22, 0xa1, 0x01, 0x0a, 0x0d, 0x4a, 0x73, 0x6f, 0x6e, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x61, 0x77, 0x5f, 0x65, + 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x72, 0x61, 0x77, 0x5f, 0x65, + 0x78, 0x70, 0x72, 0x12, 0x36, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, + 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2c, 0x0a, 0x06, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xf1, 0x02, 0x0a, 0x13, 0x4a, 0x73, + 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x45, 0x78, 0x70, + 0x72, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, + 0x78, 0x70, 0x72, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, + 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x6c, 0x74, 0x73, 0x12, - 0x33, 0x0a, 0x0d, 0x69, 0x6e, 0x68, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x69, 0x6e, 0x68, 0x52, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3a, 0x0a, 0x09, 0x70, 0x61, 0x72, 0x74, 0x62, 0x6f, 0x75, 0x6e, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6f, 0x75, 0x6e, - 0x64, 0x53, 0x70, 0x65, 0x63, 0x52, 0x09, 0x70, 0x61, 0x72, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x12, 0x33, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x73, 0x70, 0x65, 0x63, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x08, 0x70, 0x61, 0x72, - 0x74, 0x73, 0x70, 0x65, 0x63, 0x12, 0x33, 0x0a, 0x0b, 0x6f, 0x66, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0a, - 0x6f, 0x66, 0x54, 0x79, 0x70, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x6f, - 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x66, 0x75, + 0x6e, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x66, 0x75, 0x6e, 0x63, 0x12, 0x2a, + 0x0a, 0x08, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x08, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x09, 0x72, 0x65, + 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x74, + 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, + 0x67, 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x62, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, + 0x75, 0x6c, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x65, 0x6e, + 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x69, + 0x71, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xd8, 0x01, + 0x0a, 0x0f, 0x4a, 0x73, 0x6f, 0x6e, 0x49, 0x73, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, + 0x65, 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x34, 0x0a, 0x08, 0x6f, 0x6e, 0x63, 0x6f, 0x6d, 0x6d, - 0x69, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x08, 0x6f, 0x6e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x26, 0x0a, 0x0e, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d, - 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, - 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, - 0x92, 0x02, 0x0a, 0x0a, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x28, - 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x6c, 0x64, 0x73, - 0x74, 0x79, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x6c, 0x64, 0x73, - 0x74, 0x79, 0x6c, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, - 0x61, 0x72, 0x67, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, - 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, - 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, - 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x70, - 0x6c, 0x61, 0x63, 0x65, 0x22, 0xdf, 0x01, 0x0a, 0x08, 0x44, 0x72, 0x6f, 0x70, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2c, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x75, 0x6e, + 0x69, 0x71, 0x75, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0b, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x12, 0x1a, 0x0a, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc2, 0x01, 0x0a, 0x08, 0x4e, 0x75, 0x6c, + 0x6c, 0x54, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x35, 0x0a, 0x0b, 0x72, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, - 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, - 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x63, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x22, 0x94, 0x01, 0x0a, 0x0c, 0x54, 0x72, 0x75, 0x6e, 0x63, - 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x5f, 0x73, 0x65, 0x71, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x65, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x5f, 0x73, 0x65, 0x71, 0x73, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, - 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0x7f, 0x0a, - 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x07, - 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x06, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x96, - 0x01, 0x0a, 0x09, 0x46, 0x65, 0x74, 0x63, 0x68, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x36, 0x0a, 0x09, - 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, - 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x6f, 0x77, 0x5f, 0x6d, 0x61, 0x6e, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x68, 0x6f, 0x77, 0x4d, 0x61, 0x6e, 0x79, 0x12, - 0x1e, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x69, 0x73, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x06, 0x69, 0x73, 0x6d, 0x6f, 0x76, 0x65, 0x22, 0xd2, 0x07, 0x0a, 0x09, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x64, 0x78, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x64, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x65, - 0x74, 0x68, 0x6f, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, - 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x44, 0x0a, 0x16, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x5f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x14, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x49, - 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x28, - 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x3a, 0x0a, 0x0c, 0x6e, 0x75, 0x6c, + 0x6c, 0x74, 0x65, 0x73, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x75, 0x6c, 0x6c, 0x54, + 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x6e, 0x75, 0x6c, 0x6c, 0x74, 0x65, 0x73, + 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x67, 0x69, 0x73, 0x72, 0x6f, + 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x61, 0x72, 0x67, 0x69, 0x73, 0x72, 0x6f, + 0x77, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa9, 0x01, + 0x0a, 0x0b, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x54, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, + 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, + 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, + 0x67, 0x12, 0x3a, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x0c, 0x62, 0x6f, 0x6f, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x98, 0x02, 0x0a, 0x0e, 0x43, 0x6f, + 0x65, 0x72, 0x63, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x20, 0x0a, 0x03, + 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x20, + 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, + 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, + 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x74, 0x79, + 0x70, 0x6d, 0x6f, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x63, 0x6f, + 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x3e, 0x0a, 0x0e, 0x63, 0x6f, 0x65, 0x72, + 0x63, 0x69, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, + 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0e, 0x63, 0x6f, 0x65, 0x72, 0x63, 0x69, + 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa5, 0x01, 0x0a, 0x13, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x65, 0x54, + 0x6f, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x20, 0x0a, 0x03, + 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x17, + 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, + 0x6d, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x4d, + 0x6f, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x01, 0x0a, + 0x0c, 0x53, 0x65, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x20, 0x0a, + 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, + 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, + 0x5f, 0x6d, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, + 0x4d, 0x6f, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8f, 0x01, + 0x0a, 0x0d, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x66, 0x45, 0x78, 0x70, 0x72, 0x12, + 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, + 0x72, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x76, 0x61, 0x72, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x63, 0x76, 0x61, 0x72, 0x6e, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x75, 0x72, + 0x73, 0x6f, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x63, + 0x75, 0x72, 0x73, 0x6f, 0x72, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x22, + 0x60, 0x0a, 0x0d, 0x4e, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x45, 0x78, 0x70, 0x72, + 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, + 0x70, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x65, 0x71, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x05, 0x73, 0x65, 0x71, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, + 0x64, 0x22, 0x9b, 0x01, 0x0a, 0x0d, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x45, + 0x6c, 0x65, 0x6d, 0x12, 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x03, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x66, + 0x65, 0x72, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x69, 0x6e, 0x66, 0x65, 0x72, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x69, + 0x6e, 0x66, 0x65, 0x72, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x22, + 0x87, 0x02, 0x0a, 0x0b, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x20, 0x0a, 0x03, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x78, 0x70, + 0x72, 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, - 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, - 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x10, 0x65, - 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x6f, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, - 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x4f, 0x70, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x64, 0x78, 0x63, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x64, 0x78, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6f, - 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4f, - 0x69, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x6c, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x6c, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x28, 0x0a, - 0x10, 0x6f, 0x6c, 0x64, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x69, - 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, 0x6c, 0x64, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x53, 0x75, 0x62, 0x69, 0x64, 0x12, 0x3d, 0x0a, 0x1b, 0x6f, 0x6c, 0x64, 0x5f, 0x66, - 0x69, 0x72, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x6c, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x6f, 0x64, 0x65, - 0x5f, 0x73, 0x75, 0x62, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x6f, 0x6c, - 0x64, 0x46, 0x69, 0x72, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x6f, 0x64, - 0x65, 0x53, 0x75, 0x62, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, - 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x12, 0x2e, - 0x0a, 0x12, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x74, - 0x69, 0x6e, 0x63, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x6e, 0x75, 0x6c, 0x6c, - 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x12, 0x18, - 0x0a, 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x63, 0x6f, - 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, - 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, - 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0a, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, - 0x69, 0x6e, 0x69, 0x74, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x18, 0x14, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, - 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x18, - 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, - 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, - 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, - 0x73, 0x74, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, - 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x32, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x65, - 0x74, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x62, 0x6c, 0x73, 0x70, 0x63, - 0x18, 0x18, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x64, 0x65, - 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x62, 0x6c, 0x73, 0x70, 0x63, 0x22, 0xb9, 0x02, 0x0a, - 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x64, - 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x5f, 0x70, 0x72, - 0x6f, 0x63, 0x65, 0x64, 0x75, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, - 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, - 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, - 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x33, 0x0a, - 0x0b, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, - 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x08, - 0x73, 0x71, 0x6c, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, - 0x73, 0x71, 0x6c, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x9b, 0x01, 0x0a, 0x11, 0x41, 0x6c, 0x74, - 0x65, 0x72, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, - 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, - 0x0a, 0x04, 0x66, 0x75, 0x6e, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, - 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x52, 0x04, 0x66, 0x75, 0x6e, 0x63, 0x12, 0x28, 0x0a, 0x07, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x2c, 0x0a, 0x06, 0x44, 0x6f, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, - 0x61, 0x72, 0x67, 0x73, 0x22, 0xde, 0x02, 0x0a, 0x0a, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, - 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x39, 0x0a, 0x0d, 0x72, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x77, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, - 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, - 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, - 0x5f, 0x6f, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0x90, 0x02, 0x0a, 0x08, 0x52, 0x75, 0x6c, 0x65, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x75, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x75, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x31, - 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, + 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x73, 0x6e, 0x6f, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x65, 0x73, 0x6e, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x72, + 0x65, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, + 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x74, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x72, 0x65, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, + 0x72, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x72, 0x65, 0x66, 0x12, + 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x6f, 0x72, 0x69, 0x67, 0x74, 0x62, 0x6c, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x6f, 0x72, 0x69, 0x67, 0x74, 0x62, 0x6c, 0x12, + 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x6f, 0x72, 0x69, 0x67, 0x63, 0x6f, 0x6c, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x6f, 0x72, 0x69, 0x67, 0x63, 0x6f, 0x6c, 0x12, + 0x18, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x6a, 0x75, 0x6e, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x72, 0x65, 0x73, 0x6a, 0x75, 0x6e, 0x6b, 0x22, 0x27, 0x0a, 0x0b, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x54, 0x62, 0x6c, 0x52, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x74, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x74, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x22, 0xf8, 0x02, 0x0a, 0x08, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x78, 0x70, 0x72, 0x12, + 0x2e, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x6f, 0x69, + 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x4e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x12, 0x22, + 0x0a, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6c, 0x61, + 0x72, 0x67, 0x12, 0x22, 0x0a, 0x04, 0x72, 0x61, 0x72, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x04, 0x72, 0x61, 0x72, 0x67, 0x12, 0x31, 0x0a, 0x0c, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, + 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x75, 0x73, + 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x10, 0x6a, 0x6f, 0x69, + 0x6e, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, + 0x6c, 0x69, 0x61, 0x73, 0x52, 0x10, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, + 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x05, + 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, + 0x69, 0x61, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x5c, 0x0a, + 0x08, 0x46, 0x72, 0x6f, 0x6d, 0x45, 0x78, 0x70, 0x72, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x72, 0x6f, + 0x6d, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x66, 0x72, 0x6f, + 0x6d, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x12, 0x27, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6d, 0x64, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, - 0x73, 0x74, 0x65, 0x61, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x6e, 0x73, - 0x74, 0x65, 0x61, 0x64, 0x12, 0x28, 0x0a, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, - 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x22, 0x4c, 0x0a, 0x0a, 0x4e, 0x6f, 0x74, 0x69, - 0x66, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, - 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, - 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x32, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x34, 0x0a, 0x0c, 0x55, 0x6e, - 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, - 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, - 0x22, 0xbe, 0x01, 0x0a, 0x0f, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x31, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x72, - 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x4b, 0x69, 0x6e, - 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x61, 0x76, 0x65, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x61, 0x76, 0x65, 0x70, - 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x22, 0x8d, 0x02, 0x0a, 0x08, 0x56, 0x69, 0x65, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, - 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, - 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x28, 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, - 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x22, 0x9e, 0x03, 0x0a, 0x0e, + 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x32, + 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, + 0x6c, 0x69, 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0d, 0x61, 0x72, 0x62, 0x69, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x6c, + 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x61, 0x72, 0x62, 0x69, 0x74, + 0x65, 0x72, 0x45, 0x6c, 0x65, 0x6d, 0x73, 0x12, 0x33, 0x0a, 0x0d, 0x61, 0x72, 0x62, 0x69, 0x74, + 0x65, 0x72, 0x5f, 0x77, 0x68, 0x65, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, + 0x61, 0x72, 0x62, 0x69, 0x74, 0x65, 0x72, 0x57, 0x68, 0x65, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x0f, + 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x5f, 0x73, 0x65, 0x74, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, + 0x74, 0x53, 0x65, 0x74, 0x12, 0x3a, 0x0a, 0x11, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x6c, + 0x69, 0x63, 0x74, 0x5f, 0x77, 0x68, 0x65, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, - 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x11, 0x77, 0x69, - 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x56, 0x69, 0x65, 0x77, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x0f, 0x77, 0x69, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0x26, 0x0a, 0x08, 0x4c, 0x6f, 0x61, 0x64, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1a, 0x0a, - 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xdf, 0x01, 0x0a, 0x10, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, - 0x0a, 0x0a, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0a, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2f, - 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x38, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x6c, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x63, - 0x6f, 0x6c, 0x6c, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, - 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, - 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x50, 0x0a, 0x0c, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x62, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, - 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x62, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, + 0x0f, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x57, 0x68, 0x65, 0x72, 0x65, + 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x78, 0x63, 0x6c, 0x5f, 0x72, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x52, 0x65, + 0x6c, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x34, 0x0a, 0x0e, 0x65, 0x78, 0x63, 0x6c, 0x5f, 0x72, + 0x65, 0x6c, 0x5f, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, + 0x65, 0x78, 0x63, 0x6c, 0x52, 0x65, 0x6c, 0x54, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x81, 0x0f, 0x0a, + 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x34, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6d, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x0c, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x63, 0x61, 0x6e, 0x5f, 0x73, 0x65, + 0x74, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, + 0x53, 0x65, 0x74, 0x54, 0x61, 0x67, 0x12, 0x31, 0x0a, 0x0c, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x75, 0x74, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x61, 0x73, 0x5f, 0x61, 0x67, 0x67, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x61, 0x73, 0x41, 0x67, 0x67, 0x73, 0x12, 0x28, 0x0a, + 0x10, 0x68, 0x61, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x66, 0x75, 0x6e, 0x63, + 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x68, 0x61, 0x73, 0x57, 0x69, 0x6e, 0x64, + 0x6f, 0x77, 0x46, 0x75, 0x6e, 0x63, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x61, 0x73, 0x5f, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x72, 0x66, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0d, 0x68, 0x61, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x52, 0x46, 0x73, 0x12, + 0x22, 0x0a, 0x0d, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x73, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x68, 0x61, 0x73, 0x53, 0x75, 0x62, 0x4c, 0x69, + 0x6e, 0x6b, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x61, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, + 0x6e, 0x63, 0x74, 0x5f, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x61, + 0x73, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x4f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x68, + 0x61, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0c, 0x68, 0x61, 0x73, 0x52, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, + 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x61, 0x73, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x69, 0x6e, + 0x67, 0x5f, 0x63, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x61, 0x73, + 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x43, 0x54, 0x45, 0x12, 0x24, 0x0a, 0x0e, + 0x68, 0x61, 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x68, 0x61, 0x73, 0x46, 0x6f, 0x72, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x68, 0x61, 0x73, 0x5f, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x65, + 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x68, 0x61, + 0x73, 0x52, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, + 0x69, 0x73, 0x5f, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x69, 0x73, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x12, 0x29, 0x0a, 0x08, 0x63, 0x74, 0x65, + 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, 0x74, 0x65, + 0x4c, 0x69, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x06, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x6e, 0x0a, - 0x0a, 0x44, 0x72, 0x6f, 0x70, 0x64, 0x62, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, - 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x62, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, - 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, - 0x5f, 0x6f, 0x6b, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x32, 0x0a, 0x0c, + 0x72, 0x74, 0x65, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x12, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x0c, 0x72, 0x74, 0x65, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x73, + 0x12, 0x2e, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x72, 0x65, 0x65, 0x18, 0x13, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x72, + 0x6f, 0x6d, 0x45, 0x78, 0x70, 0x72, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x72, 0x65, 0x65, + 0x12, 0x3a, 0x0a, 0x11, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x6d, 0x65, 0x72, + 0x67, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x14, + 0x6d, 0x65, 0x72, 0x67, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, + 0x6a, 0x6f, 0x69, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x6d, 0x65, 0x72, 0x67, + 0x65, 0x55, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x65, 0x72, 0x4a, 0x6f, 0x69, 0x6e, 0x12, 0x2f, 0x0a, + 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x16, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x34, + 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x76, 0x65, 0x72, + 0x72, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x08, 0x6f, 0x76, 0x65, 0x72, + 0x72, 0x69, 0x64, 0x65, 0x12, 0x39, 0x0a, 0x0b, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x6c, + 0x69, 0x63, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x45, + 0x78, 0x70, 0x72, 0x52, 0x0a, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x12, + 0x35, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69, 0x73, + 0x74, 0x18, 0x19, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, + 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, + 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x1a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x18, 0x1b, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, + 0x12, 0x33, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x74, + 0x73, 0x18, 0x1c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, + 0x67, 0x53, 0x65, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x0b, 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x5f, + 0x71, 0x75, 0x61, 0x6c, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x68, 0x61, 0x76, 0x69, + 0x6e, 0x67, 0x51, 0x75, 0x61, 0x6c, 0x12, 0x33, 0x0a, 0x0d, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, + 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x77, + 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0f, 0x64, + 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x7e, 0x0a, - 0x0a, 0x56, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x28, 0x0a, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x72, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x04, 0x72, 0x65, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x5f, - 0x76, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x63, 0x6d, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0c, 0x69, 0x73, 0x5f, 0x76, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x63, 0x6d, 0x64, 0x22, 0x5d, 0x0a, - 0x0b, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x05, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xe1, 0x01, 0x0a, - 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x73, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x43, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x0b, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6c, 0x61, + 0x75, 0x73, 0x65, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x43, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6f, + 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x6c, 0x69, 0x6d, + 0x69, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2f, 0x0a, 0x0b, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x38, 0x0a, 0x0c, 0x6c, 0x69, 0x6d, + 0x69, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x69, 0x6d, 0x69, 0x74, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x73, + 0x18, 0x24, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x4d, 0x61, 0x72, 0x6b, 0x73, + 0x12, 0x35, 0x0a, 0x0e, 0x73, 0x65, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x73, 0x65, 0x74, 0x4f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x37, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x72, 0x61, 0x69, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x44, 0x65, 0x70, 0x73, + 0x12, 0x3c, 0x0a, 0x12, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x27, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x10, 0x77, 0x69, + 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x24, + 0x0a, 0x0d, 0x73, 0x74, 0x6d, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x28, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x74, 0x6d, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x6d, 0x74, 0x5f, 0x6c, 0x65, 0x6e, + 0x18, 0x29, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x74, 0x6d, 0x74, 0x5f, 0x6c, 0x65, 0x6e, + 0x22, 0x90, 0x02, 0x0a, 0x08, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, + 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x4f, 0x69, 0x64, 0x12, 0x14, + 0x0a, 0x05, 0x73, 0x65, 0x74, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x73, + 0x65, 0x74, 0x6f, 0x66, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x70, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x12, 0x28, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x04, 0x69, 0x6e, 0x74, 0x6f, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x6f, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x04, 0x69, 0x6e, - 0x74, 0x6f, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, - 0x69, 0x6e, 0x74, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x73, 0x5f, 0x73, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x6f, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, - 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, - 0x22, 0xce, 0x01, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, + 0x65, 0x52, 0x07, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x79, + 0x70, 0x65, 0x6d, 0x6f, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x79, 0x70, + 0x65, 0x6d, 0x6f, 0x64, 0x12, 0x31, 0x0a, 0x0c, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x61, 0x72, 0x72, 0x61, + 0x79, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x4f, 0x0a, 0x09, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x65, 0x66, + 0x12, 0x26, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x0a, 0x08, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x66, + 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xbf, 0x01, 0x0a, 0x06, 0x41, 0x5f, 0x45, 0x78, 0x70, 0x72, 0x12, + 0x29, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x45, 0x78, 0x70, 0x72, 0x5f, + 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, + 0x0a, 0x05, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6c, + 0x65, 0x78, 0x70, 0x72, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x65, 0x78, 0x70, 0x72, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x05, 0x72, 0x65, 0x78, 0x70, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x79, 0x0a, 0x08, 0x54, 0x79, 0x70, 0x65, 0x43, 0x61, + 0x73, 0x74, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x03, 0x61, 0x72, 0x67, 0x12, 0x2f, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, + 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x79, 0x0a, 0x0d, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x03, 0x61, 0x72, 0x67, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x76, 0x0a, 0x08, + 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x32, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x72, 0x6f, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x72, 0x6f, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc7, 0x03, 0x0a, 0x08, 0x46, 0x75, 0x6e, 0x63, 0x43, 0x61, 0x6c, + 0x6c, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, 0x0a, 0x08, - 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x6f, 0x72, 0x5f, 0x69, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, - 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x24, 0x0a, 0x0d, 0x69, - 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, - 0x73, 0x22, 0xac, 0x01, 0x0a, 0x0c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x71, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, + 0x6f, 0x64, 0x65, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, + 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, + 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x61, 0x67, 0x67, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x61, 0x67, 0x67, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, + 0x2e, 0x0a, 0x0a, 0x61, 0x67, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x61, 0x67, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, + 0x27, 0x0a, 0x04, 0x6f, 0x76, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x44, + 0x65, 0x66, 0x52, 0x04, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x10, 0x61, 0x67, 0x67, 0x5f, + 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x10, 0x61, 0x67, 0x67, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x5f, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x67, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x72, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x61, 0x67, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x72, + 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x67, 0x67, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x67, 0x67, 0x5f, 0x64, 0x69, 0x73, 0x74, + 0x69, 0x6e, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x76, 0x61, 0x72, + 0x69, 0x61, 0x64, 0x69, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x66, 0x75, 0x6e, + 0x63, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, 0x12, 0x36, 0x0a, 0x0a, 0x66, 0x75, + 0x6e, 0x63, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, + 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x08, + 0x0a, 0x06, 0x41, 0x5f, 0x53, 0x74, 0x61, 0x72, 0x22, 0x6f, 0x0a, 0x09, 0x41, 0x5f, 0x49, 0x6e, + 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x73, 0x6c, 0x69, 0x63, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x5f, 0x73, 0x6c, 0x69, 0x63, + 0x65, 0x12, 0x22, 0x0a, 0x04, 0x6c, 0x69, 0x64, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x04, 0x6c, 0x69, 0x64, 0x78, 0x12, 0x22, 0x0a, 0x04, 0x75, 0x69, 0x64, 0x78, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x04, 0x75, 0x69, 0x64, 0x78, 0x22, 0x63, 0x0a, 0x0d, 0x41, 0x5f, 0x49, + 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, + 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x30, 0x0a, 0x0b, + 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x0b, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x55, + 0x0a, 0x0b, 0x41, 0x5f, 0x41, 0x72, 0x72, 0x61, 0x79, 0x45, 0x78, 0x70, 0x72, 0x12, 0x2a, 0x0a, + 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8f, 0x01, 0x0a, 0x09, 0x52, 0x65, 0x73, 0x54, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x69, 0x6e, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x03, 0x76, 0x61, 0x6c, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6a, 0x0a, 0x0e, 0x4d, 0x75, 0x6c, 0x74, 0x69, + 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x26, 0x0a, 0x06, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6e, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6e, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x63, 0x6f, 0x6c, 0x75, + 0x6d, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6e, 0x63, 0x6f, 0x6c, 0x75, + 0x6d, 0x6e, 0x73, 0x22, 0xdf, 0x01, 0x0a, 0x06, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x12, 0x22, + 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6e, 0x6f, + 0x64, 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x62, 0x79, 0x5f, 0x64, 0x69, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x44, 0x69, 0x72, 0x52, 0x0a, 0x73, 0x6f, 0x72, + 0x74, 0x62, 0x79, 0x5f, 0x64, 0x69, 0x72, 0x12, 0x39, 0x0a, 0x0c, 0x73, 0x6f, 0x72, 0x74, 0x62, + 0x79, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x4e, + 0x75, 0x6c, 0x6c, 0x73, 0x52, 0x0c, 0x73, 0x6f, 0x72, 0x74, 0x62, 0x79, 0x5f, 0x6e, 0x75, 0x6c, + 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x5f, 0x6f, 0x70, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x05, 0x75, 0x73, 0x65, 0x4f, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xca, 0x02, 0x0a, 0x09, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, + 0x44, 0x65, 0x66, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x66, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x66, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x39, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, + 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, + 0x23, 0x0a, 0x0d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6f, 0x66, + 0x66, 0x73, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2d, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x6f, + 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x65, 0x6e, 0x64, + 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0x7d, 0x0a, 0x0e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x73, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x2a, + 0x0a, 0x08, 0x73, 0x75, 0x62, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x08, 0x73, 0x75, 0x62, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x25, 0x0a, 0x05, 0x61, 0x6c, + 0x69, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, + 0x73, 0x22, 0xf0, 0x01, 0x0a, 0x0d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x1e, 0x0a, + 0x0a, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0a, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, + 0x0b, 0x69, 0x73, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x66, 0x72, 0x6f, 0x6d, 0x12, + 0x2c, 0x0a, 0x09, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x09, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x25, 0x0a, + 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, + 0x6c, 0x69, 0x61, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x6c, 0x69, + 0x73, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, + 0x6c, 0x69, 0x73, 0x74, 0x22, 0x9b, 0x02, 0x0a, 0x0e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, + 0x6c, 0x12, 0x28, 0x0a, 0x07, 0x64, 0x6f, 0x63, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x07, 0x64, 0x6f, 0x63, 0x65, 0x78, 0x70, 0x72, 0x12, 0x28, 0x0a, 0x07, 0x72, + 0x6f, 0x77, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x72, 0x6f, + 0x77, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2e, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, + 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, + 0x25, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, + 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0x9e, 0x02, 0x0a, 0x11, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x46, 0x75, 0x6e, 0x63, 0x43, 0x6f, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x5f, 0x6f, 0x72, 0x64, 0x69, 0x6e, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x66, 0x6f, 0x72, + 0x5f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x69, + 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0b, 0x69, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x12, 0x28, 0x0a, + 0x07, 0x63, 0x6f, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, + 0x63, 0x6f, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x65, + 0x66, 0x65, 0x78, 0x70, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, + 0x64, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0xd6, 0x01, 0x0a, 0x10, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, + 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x22, 0x0a, 0x04, + 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, + 0x12, 0x2e, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xec, 0x05, 0x0a, + 0x09, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, + 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6c, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, + 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, + 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x68, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x6e, 0x68, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x12, + 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6e, 0x75, 0x6c, + 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x5f, 0x66, 0x72, 0x6f, 0x6d, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, + 0x22, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x72, 0x61, 0x77, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x72, 0x61, 0x77, 0x5f, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x36, 0x0a, 0x0e, 0x63, 0x6f, 0x6f, 0x6b, 0x65, 0x64, 0x5f, + 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x63, + 0x6f, 0x6f, 0x6b, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1a, 0x0a, + 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x3f, 0x0a, 0x11, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x10, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x12, 0x38, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x6c, + 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, + 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x43, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x5f, 0x6f, 0x69, 0x64, 0x18, 0x10, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x6c, 0x4f, 0x69, 0x64, 0x12, 0x30, 0x0a, + 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x11, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, + 0x2e, 0x0a, 0x0a, 0x66, 0x64, 0x77, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0c, - 0x66, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0c, 0x66, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, - 0x22, 0x94, 0x01, 0x0a, 0x0f, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2d, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, - 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x69, - 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, - 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x22, 0x26, 0x0a, 0x10, 0x56, 0x61, 0x72, 0x69, 0x61, - 0x62, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, - 0x3c, 0x0a, 0x0b, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2d, - 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, - 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0xb6, 0x04, - 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, - 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0c, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x1a, - 0x0a, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, - 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x75, - 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x66, 0x75, - 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x06, + 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x66, 0x64, 0x77, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7e, 0x0a, 0x0f, 0x54, + 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2e, + 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, + 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, + 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x69, 0x64, 0x22, 0xe1, 0x02, 0x0a, 0x09, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, + 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, + 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x63, 0x6f, + 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x30, 0x0a, + 0x0b, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6f, 0x70, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x0b, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6f, 0x70, 0x74, 0x73, 0x12, + 0x2f, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x6f, 0x72, + 0x74, 0x42, 0x79, 0x44, 0x69, 0x72, 0x52, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, + 0x12, 0x3d, 0x0a, 0x0e, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, + 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x4e, 0x75, 0x6c, 0x6c, 0x73, 0x52, + 0x0e, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x22, + 0xbc, 0x01, 0x0a, 0x07, 0x44, 0x65, 0x66, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x64, + 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x35, 0x0a, 0x09, 0x64, + 0x65, 0x66, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x66, 0x45, 0x6c, 0x65, + 0x6d, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x65, 0x66, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb5, + 0x01, 0x0a, 0x0d, 0x4c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x12, 0x2f, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x6c, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x52, 0x65, 0x6c, + 0x73, 0x12, 0x38, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, + 0x6f, 0x63, 0x6b, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x52, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x39, 0x0a, 0x0b, 0x77, + 0x61, 0x69, 0x74, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x6f, 0x63, 0x6b, + 0x57, 0x61, 0x69, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0a, 0x77, 0x61, 0x69, 0x74, + 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0xce, 0x01, 0x0a, 0x0c, 0x58, 0x6d, 0x6c, 0x53, 0x65, + 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x12, 0x35, 0x0a, 0x09, 0x78, 0x6d, 0x6c, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x58, 0x6d, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x09, 0x78, 0x6d, 0x6c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, + 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, + 0x70, 0x72, 0x12, 0x2f, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xbb, 0x01, 0x0a, 0x0d, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, + 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, + 0x72, 0x12, 0x2c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x6f, - 0x77, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x72, 0x6f, 0x77, 0x12, 0x16, 0x0a, 0x06, - 0x74, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x69, - 0x6d, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, - 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, - 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x2f, 0x0a, 0x0b, 0x77, 0x68, 0x65, 0x6e, 0x5f, 0x63, - 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x77, 0x68, 0x65, - 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x6c, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x73, - 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x61, 0x62, 0x6c, 0x65, - 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x64, 0x65, 0x66, 0x65, - 0x72, 0x72, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x72, 0x65, - 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x09, 0x63, 0x6f, 0x6e, - 0x73, 0x74, 0x72, 0x72, 0x65, 0x6c, 0x22, 0xed, 0x01, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x50, 0x4c, 0x61, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, - 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x70, - 0x6c, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x09, - 0x70, 0x6c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x52, 0x07, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x95, 0x01, 0x0a, 0x0d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x37, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, + 0x65, 0x67, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, + 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, + 0x12, 0x2f, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb8, 0x02, + 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6f, 0x75, 0x6e, 0x64, + 0x53, 0x70, 0x65, 0x63, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, + 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, + 0x6d, 0x61, 0x69, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, + 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x0a, 0x6c, 0x69, 0x73, 0x74, + 0x64, 0x61, 0x74, 0x75, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6c, 0x69, + 0x73, 0x74, 0x64, 0x61, 0x74, 0x75, 0x6d, 0x73, 0x12, 0x30, 0x0a, 0x0b, 0x6c, 0x6f, 0x77, 0x65, + 0x72, 0x64, 0x61, 0x74, 0x75, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x6c, + 0x6f, 0x77, 0x65, 0x72, 0x64, 0x61, 0x74, 0x75, 0x6d, 0x73, 0x12, 0x30, 0x0a, 0x0b, 0x75, 0x70, + 0x70, 0x65, 0x72, 0x64, 0x61, 0x74, 0x75, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x09, 0x70, 0x6c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x08, 0x70, 0x6c, - 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x70, 0x6c, - 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x70, 0x6c, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x70, 0x6c, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x74, 0x72, - 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x70, 0x6c, 0x74, - 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x22, 0x84, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x34, 0x0a, 0x09, 0x73, 0x74, 0x6d, - 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x73, 0x74, 0x6d, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, - 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, - 0x6f, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, + 0x0b, 0x75, 0x70, 0x70, 0x65, 0x72, 0x64, 0x61, 0x74, 0x75, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8e, 0x01, 0x0a, 0x13, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, 0x75, 0x6d, + 0x12, 0x35, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, 0x75, 0x6d, 0x4b, 0x69, 0x6e, + 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8a, 0x01, 0x0a, 0x0c, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6d, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x63, 0x52, + 0x05, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, + 0x72, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x63, + 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x22, 0xb9, 0x0a, 0x0a, 0x0d, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x54, 0x62, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x2b, 0x0a, 0x07, 0x72, 0x74, 0x65, 0x6b, + 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x54, 0x45, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x07, 0x72, 0x74, + 0x65, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x6c, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x72, 0x65, 0x6c, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, + 0x65, 0x6c, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, + 0x6c, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x6c, 0x6f, 0x63, 0x6b, + 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x6c, + 0x6f, 0x63, 0x6b, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x3d, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, + 0x70, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x6e, + 0x66, 0x6f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, + 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x2b, 0x0a, 0x08, + 0x73, 0x75, 0x62, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, + 0x08, 0x73, 0x75, 0x62, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x63, + 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x62, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x62, 0x61, + 0x72, 0x72, 0x69, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4a, 0x6f, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x6a, 0x6f, 0x69, + 0x6e, 0x74, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6a, 0x6f, 0x69, 0x6e, 0x6d, 0x65, 0x72, + 0x67, 0x65, 0x64, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6a, + 0x6f, 0x69, 0x6e, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x63, 0x6f, 0x6c, 0x73, 0x12, 0x34, 0x0a, + 0x0d, 0x6a, 0x6f, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x76, 0x61, 0x72, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x79, 0x0a, - 0x0d, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, - 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, - 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x0a, 0x0c, 0x44, 0x72, 0x6f, 0x70, - 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x1e, - 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0x64, - 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x72, - 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x6e, 0x6f, 0x77, 0x61, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6e, 0x6f, - 0x77, 0x61, 0x69, 0x74, 0x22, 0x62, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, - 0x6e, 0x74, 0x73, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x6f, - 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x6a, 0x6f, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x76, + 0x61, 0x72, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x6a, 0x6f, 0x69, 0x6e, 0x6c, 0x65, 0x66, 0x74, 0x63, + 0x6f, 0x6c, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x6a, 0x6f, 0x69, 0x6e, 0x6c, + 0x65, 0x66, 0x74, 0x63, 0x6f, 0x6c, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x6a, 0x6f, 0x69, 0x6e, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, + 0x6a, 0x6f, 0x69, 0x6e, 0x72, 0x69, 0x67, 0x68, 0x74, 0x63, 0x6f, 0x6c, 0x73, 0x12, 0x3b, 0x0a, + 0x10, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x69, 0x61, + 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x10, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x75, + 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x66, 0x75, + 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x66, + 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x63, + 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0e, 0x66, 0x75, 0x6e, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x12, 0x31, 0x0a, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x66, 0x75, 0x6e, 0x63, 0x18, 0x11, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, + 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x66, + 0x75, 0x6e, 0x63, 0x12, 0x32, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x6c, 0x69, + 0x73, 0x74, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x74, 0x65, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x74, 0x65, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x74, 0x65, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, + 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x74, 0x65, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x73, 0x75, 0x70, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x72, 0x65, 0x66, 0x65, + 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x65, 0x6c, + 0x66, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x63, + 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x16, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, + 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x74, 0x79, + 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, + 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x63, 0x6f, + 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x18, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, + 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, + 0x07, 0x65, 0x6e, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x65, 0x6e, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6e, 0x72, 0x74, 0x75, + 0x70, 0x6c, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x65, 0x6e, 0x72, 0x74, + 0x75, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x1b, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x23, 0x0a, 0x04, + 0x65, 0x72, 0x65, 0x66, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x04, 0x65, 0x72, 0x65, + 0x66, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x1d, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x69, + 0x6e, 0x68, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x69, 0x6e, 0x68, 0x12, 0x1c, 0x0a, + 0x0a, 0x69, 0x6e, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6c, 0x18, 0x1f, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x08, 0x69, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6c, 0x12, 0x35, 0x0a, 0x0e, 0x73, + 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x18, 0x20, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x51, 0x75, 0x61, + 0x6c, 0x73, 0x22, 0xf3, 0x01, 0x0a, 0x11, 0x52, 0x54, 0x45, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x6c, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x72, 0x65, 0x6c, 0x69, 0x64, 0x12, 0x10, + 0x0a, 0x03, 0x69, 0x6e, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x69, 0x6e, 0x68, + 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72, + 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, + 0x5f, 0x61, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x63, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x73, 0x55, 0x73, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x73, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, + 0x28, 0x04, 0x52, 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x73, + 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6c, + 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x65, + 0x64, 0x43, 0x6f, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x5f, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0b, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x73, 0x22, 0xe0, 0x02, 0x0a, 0x10, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x54, 0x62, 0x6c, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, + 0x08, 0x66, 0x75, 0x6e, 0x63, 0x65, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, - 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, - 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x22, 0xaa, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x52, 0x65, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, - 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, - 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x10, 0x0a, 0x0e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x22, 0xb9, 0x01, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x08, - 0x61, 0x75, 0x74, 0x68, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, - 0x65, 0x63, 0x52, 0x08, 0x61, 0x75, 0x74, 0x68, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x0b, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x65, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x45, 0x6c, 0x74, 0x73, 0x12, 0x24, 0x0a, - 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, - 0x73, 0x74, 0x73, 0x22, 0x55, 0x0a, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, - 0x62, 0x61, 0x73, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x62, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x36, 0x0a, 0x1c, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x66, 0x72, 0x65, - 0x73, 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x62, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x62, 0x6e, 0x61, - 0x6d, 0x65, 0x22, 0x63, 0x0a, 0x14, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, - 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x62, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x62, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x73, 0x65, 0x74, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, - 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x07, - 0x73, 0x65, 0x74, 0x73, 0x74, 0x6d, 0x74, 0x22, 0x8b, 0x01, 0x0a, 0x10, 0x41, 0x6c, 0x74, 0x65, - 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, - 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, - 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, - 0x12, 0x33, 0x0a, 0x07, 0x73, 0x65, 0x74, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x72, - 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x07, 0x73, 0x65, - 0x74, 0x73, 0x74, 0x6d, 0x74, 0x22, 0xea, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x38, - 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x66, 0x6f, 0x72, 0x5f, - 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x6f, 0x72, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, - 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x74, 0x6f, 0x5f, 0x65, 0x6e, 0x63, - 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x10, 0x74, 0x6f, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x64, 0x65, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x64, - 0x65, 0x66, 0x22, 0xf1, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x73, - 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0a, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x74, 0x79, 0x70, 0x65, 0x12, 0x32, 0x0a, 0x0a, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, - 0x04, 0x66, 0x75, 0x6e, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, - 0x68, 0x41, 0x72, 0x67, 0x73, 0x52, 0x04, 0x66, 0x75, 0x6e, 0x63, 0x12, 0x33, 0x0a, 0x07, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x6f, 0x75, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x05, 0x69, 0x6e, 0x6f, 0x75, 0x74, 0x22, 0x86, 0x02, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x4f, 0x70, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x30, 0x0a, 0x0b, - 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0b, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, - 0x0a, 0x0c, 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x08, 0x66, 0x75, 0x6e, 0x63, 0x65, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x75, 0x6e, + 0x63, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, + 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, + 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, + 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x66, + 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x12, 0x3c, 0x0a, + 0x11, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x11, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, + 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x66, + 0x75, 0x6e, 0x63, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x04, 0x52, + 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x87, 0x01, 0x0a, 0x11, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x73, 0x6d, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x73, 0x6d, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, + 0x72, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x65, 0x61, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x22, 0xac, 0x01, 0x0a, 0x0f, 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x04, 0x6b, 0x69, 0x6e, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x57, 0x43, 0x4f, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x72, 0x65, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, + 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x6c, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x73, 0x63, + 0x61, 0x64, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x61, 0x73, 0x63, + 0x61, 0x64, 0x65, 0x64, 0x22, 0xa8, 0x01, 0x0a, 0x0f, 0x53, 0x6f, 0x72, 0x74, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x12, 0x74, 0x6c, 0x65, 0x5f, + 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x6c, 0x65, 0x53, 0x6f, 0x72, 0x74, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x52, 0x65, 0x66, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x71, 0x6f, 0x70, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x04, 0x65, 0x71, 0x6f, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x72, + 0x74, 0x6f, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x72, 0x74, 0x6f, + 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x5f, 0x66, 0x69, + 0x72, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x61, 0x73, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x22, + 0x82, 0x01, 0x0a, 0x0b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x74, 0x12, + 0x2d, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, + 0x67, 0x53, 0x65, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x28, + 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf2, 0x04, 0x0a, 0x0c, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x43, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x66, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x66, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x70, + 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, + 0x0a, 0x0c, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x64, 0x61, - 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x69, 0x74, - 0x65, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, - 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22, - 0x60, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x46, 0x61, 0x6d, 0x69, 0x6c, - 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x0c, 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, - 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x6f, 0x70, 0x66, - 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, - 0x65, 0x22, 0x9e, 0x01, 0x0a, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x70, 0x46, 0x61, 0x6d, - 0x69, 0x6c, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x0c, 0x6f, 0x70, 0x66, 0x61, 0x6d, - 0x69, 0x6c, 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x6f, - 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, - 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x44, 0x72, 0x6f, 0x70, 0x12, 0x24, 0x0a, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x69, 0x74, 0x65, - 0x6d, 0x73, 0x22, 0x73, 0x0a, 0x0b, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x61, 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x61, 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0x49, 0x0a, 0x0b, 0x45, 0x78, 0x65, 0x63, 0x75, - 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x22, 0x24, 0x0a, 0x0e, 0x44, 0x65, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x73, 0x0a, 0x11, 0x44, 0x65, 0x63, 0x6c, - 0x61, 0x72, 0x65, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0xae, 0x01, - 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, - 0x63, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, - 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, - 0x63, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x5c, - 0x0a, 0x12, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0xeb, 0x01, 0x0a, - 0x16, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x70, 0x65, - 0x6e, 0x64, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, - 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, - 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, - 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x65, 0x78, 0x74, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x65, 0x78, 0x74, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x22, 0xe4, 0x01, 0x0a, 0x15, 0x41, - 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, - 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, - 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x06, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x77, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, - 0x6b, 0x22, 0xcf, 0x01, 0x0a, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x77, 0x6e, 0x65, 0x72, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, - 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, - 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x06, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x08, 0x6e, 0x65, 0x77, 0x6f, 0x77, - 0x6e, 0x65, 0x72, 0x22, 0x73, 0x0a, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x34, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, - 0x41, 0x72, 0x67, 0x73, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, - 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, + 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2d, 0x0a, 0x0a, 0x65, 0x6e, 0x64, + 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x65, + 0x6e, 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x33, 0x0a, 0x0d, 0x72, 0x75, 0x6e, 0x5f, + 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x66, 0x0a, 0x0d, 0x41, 0x6c, 0x74, 0x65, - 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2b, 0x0a, 0x09, 0x74, 0x79, 0x70, - 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x79, - 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x22, 0x69, 0x0a, 0x0d, 0x44, 0x72, 0x6f, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, - 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0x67, 0x0a, 0x11, 0x52, - 0x65, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x6d, 0x74, - 0x12, 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0c, 0x72, 0x75, 0x6e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2d, 0x0a, + 0x13, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, + 0x66, 0x75, 0x6e, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x49, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x29, 0x0a, 0x11, + 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x66, 0x75, 0x6e, + 0x63, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x52, 0x61, + 0x6e, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x6e, 0x5f, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x69, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x12, 0x20, 0x0a, 0x0c, 0x69, + 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x61, 0x73, 0x63, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0a, 0x69, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x73, 0x63, 0x12, 0x2f, 0x0a, + 0x14, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x5f, + 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x52, + 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x75, 0x6c, 0x6c, 0x73, 0x46, 0x69, 0x72, 0x73, 0x74, 0x12, 0x16, + 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x72, 0x65, 0x66, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x77, 0x69, 0x6e, 0x72, 0x65, 0x66, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x70, 0x69, 0x65, 0x64, + 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x63, 0x6f, + 0x70, 0x69, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x22, 0xb7, 0x01, 0x0a, 0x0d, 0x52, 0x6f, + 0x77, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x72, + 0x74, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72, 0x74, 0x69, 0x12, 0x38, 0x0a, + 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x6f, 0x63, 0x6b, 0x43, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x08, 0x73, + 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x39, 0x0a, 0x0b, 0x77, 0x61, 0x69, 0x74, 0x5f, + 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x6f, 0x63, 0x6b, 0x57, 0x61, 0x69, 0x74, + 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0a, 0x77, 0x61, 0x69, 0x74, 0x50, 0x6f, 0x6c, 0x69, + 0x63, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x64, 0x6f, 0x77, + 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x44, + 0x6f, 0x77, 0x6e, 0x22, 0x6a, 0x0a, 0x0a, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x12, 0x22, 0x0a, 0x04, 0x63, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x07, 0x6e, 0x65, 0x77, 0x72, 0x6f, 0x6c, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x6e, 0x65, 0x77, - 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x71, 0x0a, 0x11, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x74, 0x79, 0x70, - 0x65, 0x76, 0x61, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x07, - 0x74, 0x79, 0x70, 0x65, 0x76, 0x61, 0x72, 0x12, 0x2e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x65, - 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, - 0x64, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x61, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x45, 0x6e, 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2b, 0x0a, 0x09, 0x74, 0x79, 0x70, - 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x79, - 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x76, 0x61, 0x6c, 0x73, 0x18, 0x02, + 0x04, 0x63, 0x74, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, + 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, + 0x69, 0x76, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0xa7, 0x01, 0x0a, 0x0b, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, + 0x2f, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x76, 0x61, 0x6c, 0x73, 0x22, 0x66, 0x0a, 0x0f, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2b, 0x0a, - 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x22, 0xf5, 0x01, 0x0a, 0x0d, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x75, 0x6d, - 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2b, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x17, 0x0a, 0x07, 0x6f, 0x6c, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x6f, 0x6c, 0x64, 0x56, 0x61, 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x65, - 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x65, 0x77, - 0x56, 0x61, 0x6c, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x65, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x5f, 0x6e, - 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6e, - 0x65, 0x77, 0x56, 0x61, 0x6c, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x12, 0x27, 0x0a, - 0x10, 0x6e, 0x65, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x5f, 0x69, 0x73, 0x5f, 0x61, 0x66, 0x74, 0x65, - 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6e, 0x65, 0x77, 0x56, 0x61, 0x6c, 0x49, - 0x73, 0x41, 0x66, 0x74, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x16, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x69, - 0x66, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x73, 0x6b, 0x69, 0x70, 0x49, 0x66, 0x4e, 0x65, - 0x77, 0x56, 0x61, 0x6c, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x6d, 0x0a, 0x15, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x54, 0x53, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x2a, 0x0a, 0x08, 0x64, 0x69, 0x63, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x64, 0x69, 0x63, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x45, 0x6c, 0x65, 0x6d, 0x73, + 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, + 0x75, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf3, 0x01, 0x0a, 0x10, 0x4f, 0x6e, + 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x32, + 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, + 0x6c, 0x69, 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x05, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x66, + 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x05, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x12, + 0x2f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, + 0x75, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0xc9, 0x01, 0x0a, 0x0f, 0x43, 0x54, 0x45, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x43, 0x6c, 0x61, + 0x75, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x0f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x63, 0x6f, + 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x73, 0x65, + 0x61, 0x72, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x32, 0x0a, + 0x14, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x64, 0x74, 0x68, 0x5f, + 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x73, 0x65, 0x61, + 0x72, 0x63, 0x68, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x64, 0x74, 0x68, 0x5f, 0x66, 0x69, 0x72, 0x73, + 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x71, 0x5f, + 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x65, + 0x61, 0x72, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, + 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf2, 0x03, 0x0a, 0x0e, + 0x43, 0x54, 0x45, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x36, + 0x0a, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x6f, + 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, + 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x63, 0x6f, + 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x3a, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, + 0x72, 0x6b, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x10, + 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x12, 0x3e, 0x0a, 0x12, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x12, 0x63, 0x79, + 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x12, 0x2c, 0x0a, 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x63, + 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x79, 0x63, + 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x1a, + 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x79, + 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, + 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x6d, + 0x6f, 0x64, 0x12, 0x32, 0x0a, 0x14, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, + 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x14, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6c, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, + 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x6e, 0x65, 0x6f, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0f, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x6e, 0x65, 0x6f, 0x70, + 0x22, 0x88, 0x05, 0x0a, 0x0f, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x45, 0x78, 0x70, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x74, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x74, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x34, + 0x0a, 0x0d, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x63, 0x6f, 0x6c, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0f, 0x63, 0x74, 0x65, 0x6d, 0x61, 0x74, 0x65, 0x72, + 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x54, 0x45, 0x4d, 0x61, 0x74, 0x65, + 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x0f, 0x63, 0x74, 0x65, 0x6d, 0x61, 0x74, 0x65, + 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x74, 0x65, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x74, 0x65, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x12, 0x3f, 0x0a, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x63, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x54, 0x45, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, + 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x63, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x0c, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x63, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x54, 0x45, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x43, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0c, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x61, + 0x75, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x22, 0x0a, 0x0c, 0x63, 0x74, 0x65, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x74, 0x65, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, + 0x69, 0x76, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x74, 0x65, 0x72, 0x65, 0x66, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x74, 0x65, 0x72, 0x65, 0x66, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x74, 0x65, 0x63, 0x6f, 0x6c, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x63, 0x74, 0x65, 0x63, + 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x74, 0x65, 0x63, 0x6f, + 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x63, 0x74, + 0x65, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x74, 0x65, + 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x9f, 0x02, 0x0a, 0x18, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x54, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, - 0x65, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x07, 0x63, 0x66, 0x67, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, 0x66, 0x67, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, + 0x52, 0x0d, 0x63, 0x74, 0x65, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x12, + 0x3a, 0x0a, 0x10, 0x63, 0x74, 0x65, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x10, 0x63, 0x74, 0x65, 0x63, 0x6f, + 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x9e, 0x02, 0x0a, 0x0f, + 0x4d, 0x65, 0x72, 0x67, 0x65, 0x57, 0x68, 0x65, 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6d, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x34, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x76, 0x65, + 0x72, 0x72, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x08, 0x6f, 0x76, 0x65, + 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, + 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x4c, 0x69, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x12, - 0x24, 0x0a, 0x05, 0x64, 0x69, 0x63, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, - 0x64, 0x69, 0x63, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0x87, 0x01, 0x0a, 0x0d, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x5f, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x66, - 0x75, 0x6e, 0x63, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x86, 0x01, 0x0a, 0x0c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, - 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x32, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x9d, 0x02, 0x0a, + 0x0b, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6d, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x08, + 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, + 0x64, 0x69, 0x6e, 0x67, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, + 0x64, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x12, 0x2f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6e, 0x6f, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6e, 0x6f, 0x73, 0x22, 0x59, 0x0a, 0x11, + 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x6e, 0x65, 0x77, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x4e, 0x65, 0x77, 0x12, 0x19, 0x0a, 0x08, + 0x69, 0x73, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x69, 0x73, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x74, 0x0a, 0x0a, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x2f, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x74, 0x79, + 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, + 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, + 0x6e, 0x67, 0x52, 0x09, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x5f, 0x0a, + 0x0c, 0x4a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x20, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x2d, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x45, 0x78, 0x70, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc7, + 0x01, 0x0a, 0x15, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x24, 0x0a, 0x05, 0x65, 0x78, 0x70, 0x72, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x65, 0x78, 0x70, 0x72, 0x73, 0x12, 0x2c, + 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x75, + 0x74, 0x70, 0x75, 0x74, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x26, 0x0a, 0x0e, + 0x61, 0x62, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, + 0x6e, 0x75, 0x6c, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xae, 0x01, 0x0a, 0x14, 0x4a, 0x73, 0x6f, + 0x6e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, + 0x72, 0x12, 0x24, 0x0a, 0x05, 0x65, 0x78, 0x70, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x05, 0x65, 0x78, 0x70, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x06, 0x6f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x62, 0x73, 0x65, 0x6e, 0x74, 0x5f, + 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, + 0x62, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x12, 0x1a, 0x0a, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe1, 0x01, 0x0a, 0x19, 0x4a, 0x73, + 0x6f, 0x6e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x2c, 0x0a, + 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x75, 0x74, + 0x70, 0x75, 0x74, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x2c, 0x0a, 0x06, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x62, 0x73, + 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6c, + 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe5, 0x01, + 0x0a, 0x12, 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x67, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x6f, 0x72, 0x12, 0x2c, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, + 0x75, 0x74, 0x12, 0x2e, 0x0a, 0x0a, 0x61, 0x67, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x61, 0x67, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x09, 0x61, 0x67, 0x67, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xdd, - 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, - 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, - 0x69, 0x73, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x9e, - 0x01, 0x0a, 0x16, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x20, 0x0a, - 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, - 0xaf, 0x01, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, - 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x75, 0x73, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x75, 0x73, 0x65, - 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, - 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, - 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x22, 0x88, 0x01, 0x0a, 0x14, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x75, 0x73, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x75, 0x73, - 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x61, 0x67, 0x67, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, + 0x12, 0x27, 0x0a, 0x04, 0x6f, 0x76, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, + 0x44, 0x65, 0x66, 0x52, 0x04, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb9, 0x01, 0x0a, 0x0d, 0x4a, 0x73, 0x6f, 0x6e, 0x4f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x41, 0x67, 0x67, 0x12, 0x3e, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x67, 0x67, 0x43, + 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x28, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x03, 0x61, 0x72, + 0x67, 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x62, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, + 0x75, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x65, 0x6e, + 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x69, + 0x71, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, + 0x65, 0x22, 0xa1, 0x01, 0x0a, 0x0c, 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x41, + 0x67, 0x67, 0x12, 0x3e, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x41, 0x67, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x6f, 0x72, 0x12, 0x29, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x45, 0x78, 0x70, 0x72, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x26, 0x0a, + 0x0e, 0x61, 0x62, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, + 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x22, 0x6f, 0x0a, 0x07, 0x52, 0x61, 0x77, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x22, 0x0a, 0x04, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, + 0x73, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x74, 0x6d, 0x74, 0x5f, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x74, 0x6d, + 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, + 0x6d, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x74, + 0x6d, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x22, 0xff, 0x02, 0x0a, 0x0a, 0x49, 0x6e, 0x73, 0x65, 0x72, + 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x04, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x7d, 0x0a, 0x13, - 0x44, 0x72, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, - 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0x89, 0x01, 0x0a, 0x1a, - 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x4f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, + 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x6c, 0x73, 0x12, 0x2f, 0x0a, 0x0b, 0x73, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x48, 0x0a, 0x12, 0x6f, 0x6e, + 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x43, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x52, 0x10, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x43, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, + 0x67, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x72, 0x65, + 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x77, + 0x69, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, + 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x12, 0x34, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x08, + 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x22, 0x90, 0x02, 0x0a, 0x0a, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x0c, 0x75, 0x73, 0x69, 0x6e, 0x67, + 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x75, + 0x73, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, + 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x35, 0x0a, + 0x0e, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, + 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x61, + 0x75, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, + 0x0a, 0x77, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x22, 0xbf, 0x02, 0x0a, 0x0a, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, + 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x0b, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x0c, 0x77, + 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2f, + 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, 0x0a, 0x08, - 0x69, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, - 0x69, 0x73, 0x52, 0x65, 0x73, 0x65, 0x74, 0x22, 0xe7, 0x01, 0x0a, 0x15, 0x41, 0x6c, 0x74, 0x65, - 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x30, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, - 0x6f, 0x72, 0x69, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, + 0x35, 0x0a, 0x0e, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69, 0x73, + 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, + 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, + 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x22, 0xa0, 0x02, + 0x0a, 0x09, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, + 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x0f, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x0e, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x6a, 0x6f, + 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x12, 0x6d, + 0x65, 0x72, 0x67, 0x65, 0x5f, 0x77, 0x68, 0x65, 0x6e, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x10, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x57, 0x68, + 0x65, 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x0b, 0x77, 0x69, 0x74, + 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x22, 0xd3, 0x07, 0x0a, 0x0a, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x37, 0x0a, 0x0f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, + 0x63, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x6f, + 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x6f, 0x43, 0x6c, 0x61, + 0x75, 0x73, 0x65, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x6f, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, + 0x2f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x2f, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x63, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x12, 0x33, + 0x0a, 0x0d, 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, + 0x75, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x0d, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x63, 0x6c, + 0x61, 0x75, 0x73, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x77, 0x69, 0x6e, 0x64, + 0x6f, 0x77, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x73, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x0b, 0x73, + 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x6e, 0x65, 0x77, - 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x77, - 0x61, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6e, 0x6f, 0x77, 0x61, 0x69, - 0x74, 0x22, 0x98, 0x01, 0x0a, 0x0c, 0x53, 0x65, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x64, 0x65, 0x52, 0x0b, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, + 0x2f, 0x0a, 0x0b, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x38, 0x0a, 0x0c, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x0e, 0x6c, 0x6f, + 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x91, 0x01, 0x0a, - 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2d, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, - 0x73, 0x74, 0x6d, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, - 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x22, 0xa0, 0x02, 0x0a, 0x17, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x65, 0x69, - 0x67, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x20, 0x0a, 0x0b, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, - 0x0a, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x12, 0x22, 0x0a, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, - 0x6c, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x3f, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, - 0x65, 0x69, 0x67, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, - 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x0a, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, - 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x22, 0x7f, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x78, 0x74, - 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, - 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x78, 0x74, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, - 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, - 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x58, 0x0a, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x74, - 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, - 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x78, 0x74, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xa6, - 0x01, 0x0a, 0x1a, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, - 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x65, 0x78, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x65, 0x78, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x2e, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, - 0x26, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x64, 0x65, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, + 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x77, 0x69, + 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x53, 0x65, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x02, 0x6f, 0x70, + 0x12, 0x10, 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x61, + 0x6c, 0x6c, 0x12, 0x28, 0x0a, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x12, 0x28, 0x0a, 0x04, + 0x72, 0x61, 0x72, 0x67, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x74, 0x6d, 0x74, + 0x52, 0x04, 0x72, 0x61, 0x72, 0x67, 0x22, 0xde, 0x02, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x02, 0x6f, + 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x53, 0x65, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x02, 0x6f, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12, 0x22, 0x0a, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6c, 0x61, 0x72, 0x67, 0x12, 0x22, 0x0a, 0x04, 0x72, 0x61, 0x72, + 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x72, 0x61, 0x72, 0x67, 0x12, 0x2b, 0x0a, + 0x09, 0x63, 0x6f, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x0b, 0x63, 0x6f, + 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0xab, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, - 0x1a, 0x0a, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x0a, 0x77, 0x68, 0x65, - 0x6e, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x77, - 0x68, 0x65, 0x6e, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x75, 0x6e, - 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x66, 0x75, 0x6e, - 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x4e, 0x0a, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x74, - 0x72, 0x69, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, - 0x72, 0x69, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x67, 0x65, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x67, 0x65, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x81, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, - 0x68, 0x4d, 0x61, 0x74, 0x56, 0x69, 0x65, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, - 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, - 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x08, 0x73, 0x6b, 0x69, 0x70, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, - 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4f, 0x0a, 0x13, 0x52, 0x65, 0x70, + 0x0a, 0x63, 0x6f, 0x6c, 0x54, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x12, 0x35, 0x0a, 0x0e, 0x63, + 0x6f, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x33, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x63, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x73, 0x22, 0x3a, 0x0a, 0x0a, 0x52, 0x65, 0x74, 0x75, 0x72, + 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x76, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, + 0x76, 0x61, 0x6c, 0x22, 0xb0, 0x01, 0x0a, 0x0c, 0x50, 0x4c, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x69, + 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6e, + 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6e, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x12, 0x26, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb9, 0x01, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x61, + 0x75, 0x74, 0x68, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, + 0x63, 0x52, 0x08, 0x61, 0x75, 0x74, 0x68, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x0b, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x65, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x0a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x45, 0x6c, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0d, + 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, + 0x74, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x04, 0x63, 0x6d, 0x64, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6d, 0x64, 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, 0x6a, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0x4f, 0x0a, 0x13, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x46, 0x0a, 0x0f, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x33, 0x0a, - 0x07, 0x73, 0x65, 0x74, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, - 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x07, 0x73, 0x65, 0x74, 0x73, 0x74, - 0x6d, 0x74, 0x22, 0x94, 0x02, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x05, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x05, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6d, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6d, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x76, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x76, 0x65, 0x12, - 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, - 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x18, 0x06, 0x20, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa9, 0x02, 0x0a, 0x0d, 0x41, + 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x12, 0x32, 0x0a, 0x07, + 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x12, 0x2e, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x6f, 0x77, 0x6e, + 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x08, 0x6e, 0x65, + 0x77, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x03, 0x64, 0x65, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x12, 0x2e, 0x0a, 0x0a, 0x77, 0x69, 0x74, - 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x77, - 0x69, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x22, 0xd7, 0x01, 0x0a, 0x0f, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x20, 0x0a, - 0x0b, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x28, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, - 0x61, 0x72, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, - 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, - 0x22, 0x0a, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x71, - 0x75, 0x61, 0x6c, 0x12, 0x2e, 0x0a, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, - 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x68, - 0x65, 0x63, 0x6b, 0x22, 0xd9, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x72, - 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72, - 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, - 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x30, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x09, 0x74, 0x79, - 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x67, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x67, 0x12, 0x32, 0x0a, 0x07, 0x66, - 0x72, 0x6f, 0x6d, 0x73, 0x71, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, - 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x52, 0x07, 0x66, 0x72, 0x6f, 0x6d, 0x73, 0x71, 0x6c, 0x12, - 0x2e, 0x0a, 0x05, 0x74, 0x6f, 0x73, 0x71, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x52, 0x05, 0x74, 0x6f, 0x73, 0x71, 0x6c, 0x22, - 0x72, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, - 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, - 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x68, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, - 0x6d, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x74, - 0x79, 0x70, 0x65, 0x22, 0xb3, 0x01, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x70, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x70, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x66, 0x6f, 0x72, 0x5f, 0x61, - 0x6c, 0x6c, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x22, 0xec, 0x01, 0x0a, 0x14, 0x41, 0x6c, - 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x5f, 0x61, 0x6c, - 0x6c, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, - 0x66, 0x6f, 0x72, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x38, - 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xaa, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x63, 0x6f, 0x6e, 0x6e, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x63, 0x6f, 0x6e, 0x6e, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, 0x0b, 0x70, 0x75, 0x62, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, - 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xde, 0x01, 0x0a, 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, - 0x33, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, - 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x6e, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x6e, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, 0x0b, 0x70, 0x75, - 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x07, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x84, 0x01, 0x0a, 0x14, 0x44, 0x72, 0x6f, 0x70, 0x53, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, - 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, - 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, + 0x6f, 0x64, 0x65, 0x52, 0x03, 0x64, 0x65, 0x66, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, + 0x76, 0x69, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, + 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x12, 0x18, 0x0a, 0x07, + 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, + 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x22, 0x40, 0x0a, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x43, + 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2a, 0x0a, 0x08, + 0x63, 0x6f, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, + 0x63, 0x6f, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xe2, 0x01, 0x0a, 0x0f, 0x41, 0x6c, 0x74, + 0x65, 0x72, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, + 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2b, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x03, 0x64, 0x65, 0x66, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x64, 0x65, 0x66, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, + 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0xa9, 0x02, - 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, 0x6d, - 0x74, 0x12, 0x2a, 0x0a, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2e, 0x0a, - 0x0a, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x24, 0x0a, - 0x05, 0x65, 0x78, 0x70, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x65, 0x78, - 0x70, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x78, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x78, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, - 0x6d, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, - 0x69, 0x73, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, - 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x40, 0x0a, 0x12, 0x41, 0x6c, 0x74, - 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, - 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x94, 0x01, 0x0a, 0x08, - 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, - 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x08, - 0x66, 0x75, 0x6e, 0x63, 0x63, 0x61, 0x6c, 0x6c, 0x12, 0x2e, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, - 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x45, 0x78, 0x70, 0x72, 0x52, 0x08, - 0x66, 0x75, 0x6e, 0x63, 0x65, 0x78, 0x70, 0x72, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x61, - 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x61, 0x72, - 0x67, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2a, 0x0a, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, - 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x74, 0x78, 0x73, 0x74, 0x61, 0x74, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x74, 0x78, 0x73, 0x74, 0x61, - 0x74, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0xbf, 0x01, 0x0a, 0x06, 0x41, 0x5f, 0x45, 0x78, - 0x70, 0x72, 0x12, 0x29, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x5f, 0x45, 0x78, - 0x70, 0x72, 0x5f, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x22, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x24, 0x0a, 0x05, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x05, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x65, 0x78, 0x70, 0x72, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x72, 0x65, 0x78, 0x70, 0x72, 0x12, 0x1a, 0x0a, - 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4f, 0x0a, 0x09, 0x43, 0x6f, 0x6c, - 0x75, 0x6d, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x26, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x1a, - 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x0a, 0x08, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x52, 0x65, 0x66, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, - 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc7, 0x03, 0x0a, 0x08, 0x46, - 0x75, 0x6e, 0x63, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x61, 0x67, 0x67, 0x5f, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x61, 0x67, 0x67, 0x5f, - 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x0a, 0x61, 0x67, 0x67, 0x5f, 0x66, 0x69, 0x6c, - 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x61, 0x67, 0x67, 0x5f, 0x66, - 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x04, 0x6f, 0x76, 0x65, 0x72, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, - 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x44, 0x65, 0x66, 0x52, 0x04, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x2a, - 0x0a, 0x10, 0x61, 0x67, 0x67, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x67, 0x67, 0x5f, 0x77, 0x69, - 0x74, 0x68, 0x69, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x67, - 0x67, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x61, 0x67, - 0x67, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x67, 0x67, 0x5f, 0x64, 0x69, - 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x67, - 0x67, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x66, 0x75, - 0x6e, 0x63, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x64, 0x69, 0x63, - 0x12, 0x36, 0x0a, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x52, 0x0a, 0x66, 0x75, - 0x6e, 0x63, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x08, 0x0a, 0x06, 0x41, 0x5f, 0x53, 0x74, 0x61, 0x72, 0x22, 0x6f, - 0x0a, 0x09, 0x41, 0x5f, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x69, - 0x73, 0x5f, 0x73, 0x6c, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, - 0x73, 0x5f, 0x73, 0x6c, 0x69, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x6c, 0x69, 0x64, 0x78, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6c, 0x69, 0x64, 0x78, 0x12, 0x22, 0x0a, 0x04, 0x75, - 0x69, 0x64, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x75, 0x69, 0x64, 0x78, 0x22, - 0x63, 0x0a, 0x0d, 0x41, 0x5f, 0x49, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, - 0x72, 0x67, 0x12, 0x30, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x55, 0x0a, 0x0b, 0x41, 0x5f, 0x41, 0x72, 0x72, 0x61, 0x79, 0x45, - 0x78, 0x70, 0x72, 0x12, 0x2a, 0x0a, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, - 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8f, 0x01, 0x0a, 0x09, - 0x52, 0x65, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, - 0x0b, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0b, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x20, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x76, 0x61, - 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6a, 0x0a, - 0x0e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x66, 0x12, - 0x26, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1e, 0x0a, + 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0x9a, 0x03, + 0x0a, 0x09, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, + 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, + 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x35, 0x0a, 0x08, 0x74, 0x61, 0x72, 0x67, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x74, 0x61, 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2e, + 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x28, + 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6e, 0x6f, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6e, 0x6f, 0x12, 0x1a, 0x0a, - 0x08, 0x6e, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x6e, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x22, 0x79, 0x0a, 0x08, 0x54, 0x79, 0x70, - 0x65, 0x43, 0x61, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x2f, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, - 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x79, 0x0a, 0x0d, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x43, - 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, 0x67, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, - 0xdf, 0x01, 0x0a, 0x06, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x12, 0x22, 0x0a, 0x04, 0x6e, 0x6f, - 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x12, 0x33, - 0x0a, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x62, 0x79, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x6f, - 0x72, 0x74, 0x42, 0x79, 0x44, 0x69, 0x72, 0x52, 0x0a, 0x73, 0x6f, 0x72, 0x74, 0x62, 0x79, 0x5f, - 0x64, 0x69, 0x72, 0x12, 0x39, 0x0a, 0x0c, 0x73, 0x6f, 0x72, 0x74, 0x62, 0x79, 0x5f, 0x6e, 0x75, - 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x4e, 0x75, 0x6c, 0x6c, 0x73, - 0x52, 0x0c, 0x73, 0x6f, 0x72, 0x74, 0x62, 0x79, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x12, 0x25, - 0x0a, 0x06, 0x75, 0x73, 0x65, 0x5f, 0x6f, 0x70, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, + 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x70, 0x72, + 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x67, 0x72, 0x61, 0x6e, + 0x74, 0x65, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x72, 0x61, 0x6e, + 0x74, 0x65, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x67, 0x72, 0x61, 0x6e, + 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x07, 0x67, 0x72, 0x61, 0x6e, + 0x74, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x67, + 0x72, 0x61, 0x6e, 0x74, 0x6f, 0x72, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, + 0x6f, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, + 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0xc2, 0x01, 0x0a, 0x0e, 0x4f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x12, 0x28, 0x0a, + 0x07, 0x6f, 0x62, 0x6a, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, + 0x6f, 0x62, 0x6a, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x61, 0x72, + 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x61, 0x72, 0x67, + 0x73, 0x12, 0x30, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x66, 0x75, 0x6e, 0x63, 0x61, 0x72, 0x67, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x6f, 0x62, 0x6a, 0x66, 0x75, 0x6e, 0x63, 0x61, + 0x72, 0x67, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x61, 0x72, 0x67, 0x73, 0x5f, 0x75, 0x6e, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, + 0x72, 0x67, 0x73, 0x5f, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x22, + 0x4e, 0x0a, 0x0a, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x72, 0x69, 0x76, 0x12, 0x1c, 0x0a, + 0x09, 0x70, 0x72, 0x69, 0x76, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x70, 0x72, 0x69, 0x76, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x63, + 0x6f, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x6c, 0x73, 0x22, + 0x9b, 0x02, 0x0a, 0x0d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x34, 0x0a, 0x0d, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x6f, 0x6c, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, + 0x64, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x67, 0x72, 0x61, 0x6e, 0x74, + 0x65, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, + 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x1a, 0x0a, + 0x08, 0x69, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x69, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x03, 0x6f, 0x70, 0x74, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x6f, 0x70, 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x67, + 0x72, 0x61, 0x6e, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, + 0x52, 0x07, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x6f, 0x72, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, + 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, + 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0x73, 0x0a, + 0x1a, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x69, + 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x28, 0x0a, 0x07, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0xbd, 0x02, 0x0a, 0x08, 0x43, 0x6f, 0x70, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, - 0x75, 0x73, 0x65, 0x4f, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0xca, 0x02, 0x0a, 0x09, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x44, 0x65, 0x66, 0x12, - 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, - 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, - 0x6f, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x66, - 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0c, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x31, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x66, - 0x73, 0x65, 0x74, 0x12, 0x2d, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, - 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x65, 0x6e, 0x64, 0x4f, 0x66, 0x66, 0x73, - 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7d, - 0x0a, 0x0e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x08, 0x73, 0x75, - 0x62, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x73, 0x75, - 0x62, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x25, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0xf0, 0x01, - 0x0a, 0x0d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x18, 0x0a, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x72, 0x64, - 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6f, - 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x5f, - 0x72, 0x6f, 0x77, 0x73, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, - 0x69, 0x73, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x2c, 0x0a, 0x09, 0x66, - 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, - 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x05, 0x61, 0x6c, 0x69, - 0x61, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, - 0x12, 0x2e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x06, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, - 0x22, 0xd6, 0x01, 0x0a, 0x10, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, - 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x26, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x07, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x74, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x69, 0x73, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x5f, + 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, + 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, + 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, + 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, + 0x73, 0x65, 0x22, 0x94, 0x01, 0x0a, 0x0f, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, + 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2d, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x52, + 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x2e, 0x0a, - 0x0a, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9b, 0x02, 0x0a, 0x0e, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x18, 0x0a, 0x07, - 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, - 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x28, 0x0a, 0x07, 0x64, 0x6f, 0x63, 0x65, 0x78, 0x70, - 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x64, 0x6f, 0x63, 0x65, 0x78, 0x70, 0x72, - 0x12, 0x28, 0x0a, 0x07, 0x72, 0x6f, 0x77, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x07, 0x72, 0x6f, 0x77, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2e, 0x0a, 0x0a, 0x6e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, - 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x63, 0x6f, - 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, 0x6f, 0x6c, - 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, - 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x02, 0x0a, 0x11, 0x52, 0x61, 0x6e, 0x67, - 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x43, 0x6f, 0x6c, 0x12, 0x18, 0x0a, - 0x07, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, - 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x5f, - 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0e, 0x66, 0x6f, 0x72, 0x5f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, - 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6e, 0x75, - 0x6c, 0x6c, 0x12, 0x28, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2e, 0x0a, 0x0a, - 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x12, 0x1a, 0x0a, 0x08, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x90, 0x02, 0x0a, 0x08, 0x54, 0x79, 0x70, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x1a, 0x0a, + 0x08, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x22, 0x26, 0x0a, 0x10, 0x56, 0x61, 0x72, + 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0xcb, 0x04, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, + 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x2d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, - 0x79, 0x70, 0x65, 0x5f, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, - 0x79, 0x70, 0x65, 0x4f, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x65, 0x74, 0x6f, 0x66, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x73, 0x65, 0x74, 0x6f, 0x66, 0x12, 0x1a, 0x0a, 0x08, - 0x70, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, - 0x70, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x6d, - 0x6f, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x74, 0x79, 0x70, 0x6d, 0x6f, - 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x6d, 0x6f, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x6d, 0x6f, 0x64, 0x12, 0x31, 0x0a, 0x0c, - 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0b, 0x61, 0x72, 0x72, 0x61, 0x79, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x12, - 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc8, 0x05, 0x0a, 0x09, - 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6c, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x68, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x6e, 0x68, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x20, - 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, - 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x30, - 0x0a, 0x0b, 0x72, 0x61, 0x77, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x72, 0x61, 0x77, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, - 0x12, 0x36, 0x0a, 0x0e, 0x63, 0x6f, 0x6f, 0x6b, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, - 0x6c, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x63, 0x6f, 0x6f, 0x6b, 0x65, 0x64, - 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x12, 0x3f, 0x0a, 0x11, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, - 0x56, 0x61, 0x72, 0x52, 0x10, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x71, - 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x65, 0x64, 0x12, 0x38, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x6c, 0x5f, 0x63, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x19, 0x0a, - 0x08, 0x63, 0x6f, 0x6c, 0x6c, 0x5f, 0x6f, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x63, 0x6f, 0x6c, 0x6c, 0x4f, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x73, - 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x66, 0x64, - 0x77, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, - 0x66, 0x64, 0x77, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe1, 0x02, 0x0a, 0x09, 0x49, 0x6e, 0x64, 0x65, 0x78, - 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x0c, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x2c, 0x0a, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x09, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, - 0x0a, 0x07, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x6c, 0x74, 0x73, 0x12, + 0x33, 0x0a, 0x0d, 0x69, 0x6e, 0x68, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x69, 0x6e, 0x68, 0x52, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3a, 0x0a, 0x09, 0x70, 0x61, 0x72, 0x74, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6f, 0x75, 0x6e, + 0x64, 0x53, 0x70, 0x65, 0x63, 0x52, 0x09, 0x70, 0x61, 0x72, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x12, 0x33, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x73, 0x70, 0x65, 0x63, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x08, 0x70, 0x61, 0x72, + 0x74, 0x73, 0x70, 0x65, 0x63, 0x12, 0x33, 0x0a, 0x0b, 0x6f, 0x66, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0a, + 0x6f, 0x66, 0x54, 0x79, 0x70, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x6f, + 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x07, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x30, 0x0a, 0x0b, 0x6f, 0x70, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x6f, 0x70, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x6f, - 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6f, 0x70, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x08, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x44, 0x69, - 0x72, 0x52, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x3d, 0x0a, 0x0e, 0x6e, - 0x75, 0x6c, 0x6c, 0x73, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, - 0x6f, 0x72, 0x74, 0x42, 0x79, 0x4e, 0x75, 0x6c, 0x6c, 0x73, 0x52, 0x0e, 0x6e, 0x75, 0x6c, 0x6c, - 0x73, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x43, 0x0a, 0x09, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x65, - 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x22, + 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, + 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x34, 0x0a, 0x08, 0x6f, 0x6e, 0x63, 0x6f, 0x6d, 0x6d, + 0x69, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x08, 0x6f, 0x6e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x26, 0x0a, 0x0e, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d, + 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, + 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0xde, 0x09, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, @@ -31891,1757 +33005,2347 @@ var file_pg_query_proto_rawDesc = []byte{ 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x22, 0xbc, 0x01, 0x0a, 0x07, 0x44, 0x65, 0x66, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x22, 0x0a, 0x0c, - 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x03, 0x61, 0x72, - 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x03, 0x61, 0x72, 0x67, 0x12, 0x35, 0x0a, 0x09, - 0x64, 0x65, 0x66, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x65, 0x66, 0x45, 0x6c, - 0x65, 0x6d, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x65, 0x66, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, - 0xf9, 0x0b, 0x0a, 0x0d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x2b, 0x0a, 0x07, 0x72, 0x74, 0x65, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x54, - 0x45, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x07, 0x72, 0x74, 0x65, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x14, - 0x0a, 0x05, 0x72, 0x65, 0x6c, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x72, - 0x65, 0x6c, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6c, 0x6b, 0x69, 0x6e, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6c, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x20, - 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x6c, 0x6f, 0x63, 0x6b, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x6c, 0x6f, 0x63, 0x6b, 0x6d, 0x6f, 0x64, 0x65, - 0x12, 0x3d, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x52, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x12, - 0x2b, 0x0a, 0x08, 0x73, 0x75, 0x62, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x52, 0x08, 0x73, 0x75, 0x62, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x10, - 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x62, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, - 0x5f, 0x62, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4a, 0x6f, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, - 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6a, 0x6f, 0x69, 0x6e, - 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0e, 0x6a, 0x6f, 0x69, 0x6e, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x63, 0x6f, 0x6c, 0x73, - 0x12, 0x34, 0x0a, 0x0d, 0x6a, 0x6f, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x76, 0x61, 0x72, - 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x6a, 0x6f, 0x69, 0x6e, 0x61, 0x6c, 0x69, - 0x61, 0x73, 0x76, 0x61, 0x72, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x6a, 0x6f, 0x69, 0x6e, 0x6c, 0x65, - 0x66, 0x74, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x6a, 0x6f, - 0x69, 0x6e, 0x6c, 0x65, 0x66, 0x74, 0x63, 0x6f, 0x6c, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x6a, 0x6f, - 0x69, 0x6e, 0x72, 0x69, 0x67, 0x68, 0x74, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0d, 0x6a, 0x6f, 0x69, 0x6e, 0x72, 0x69, 0x67, 0x68, 0x74, 0x63, 0x6f, 0x6c, 0x73, - 0x12, 0x3b, 0x0a, 0x10, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x61, - 0x6c, 0x69, 0x61, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x10, 0x6a, 0x6f, 0x69, - 0x6e, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x2c, 0x0a, - 0x09, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x09, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x66, - 0x75, 0x6e, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0e, 0x66, 0x75, 0x6e, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, - 0x69, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x66, 0x75, 0x6e, 0x63, - 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x52, 0x09, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x66, 0x75, 0x6e, 0x63, 0x12, 0x32, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, - 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x74, - 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x74, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x74, 0x65, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x73, 0x75, 0x70, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x74, 0x65, 0x6c, 0x65, - 0x76, 0x65, 0x6c, 0x73, 0x75, 0x70, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x72, - 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, - 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2a, - 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x15, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x08, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x63, 0x6f, - 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x16, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, - 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x6f, - 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, + 0x22, 0xae, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x53, 0x70, 0x61, 0x63, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x28, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, + 0x53, 0x70, 0x65, 0x63, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x22, 0x5c, 0x0a, 0x12, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, + 0x61, 0x63, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, + 0x89, 0x01, 0x0a, 0x1a, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, + 0x61, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, + 0x0a, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x52, 0x65, 0x73, 0x65, 0x74, 0x22, 0xe7, 0x01, 0x0a, 0x15, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x41, 0x6c, + 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x30, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x5f, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, + 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x2e, 0x0a, + 0x12, 0x6e, 0x65, 0x77, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x5f, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x6e, 0x6f, 0x77, 0x61, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6e, + 0x6f, 0x77, 0x61, 0x69, 0x74, 0x22, 0x7f, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x65, 0x78, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, + 0x78, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, + 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, + 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, + 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x58, 0x0a, 0x12, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x65, 0x78, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, + 0x78, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x22, 0xa6, 0x01, 0x0a, 0x1a, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x65, 0x78, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x65, 0x78, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, + 0x65, 0x12, 0x26, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x65, 0x6e, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6e, - 0x72, 0x74, 0x75, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x65, - 0x6e, 0x72, 0x74, 0x75, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, - 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, - 0x23, 0x0a, 0x04, 0x65, 0x72, 0x65, 0x66, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x04, - 0x65, 0x72, 0x65, 0x66, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x18, - 0x1c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x12, 0x10, - 0x0a, 0x03, 0x69, 0x6e, 0x68, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x69, 0x6e, 0x68, - 0x12, 0x1c, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6c, 0x18, 0x1e, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6c, 0x12, 0x25, - 0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x73, - 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, - 0x50, 0x65, 0x72, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x61, - 0x73, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, - 0x65, 0x63, 0x6b, 0x41, 0x73, 0x55, 0x73, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x21, 0x20, 0x03, 0x28, 0x04, - 0x52, 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x73, 0x12, 0x23, - 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x73, 0x18, - 0x22, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0c, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x65, 0x64, 0x43, - 0x6f, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x63, - 0x6f, 0x6c, 0x73, 0x18, 0x23, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x24, 0x20, 0x03, - 0x28, 0x04, 0x52, 0x10, 0x65, 0x78, 0x74, 0x72, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x43, 0x6f, 0x6c, 0x73, 0x12, 0x35, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, - 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x18, 0x25, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x73, 0x65, - 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x51, 0x75, 0x61, 0x6c, 0x73, 0x22, 0xe0, 0x02, 0x0a, 0x10, - 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x62, 0x6c, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x65, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x65, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x87, 0x01, 0x0a, 0x0d, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x46, 0x64, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x66, + 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x64, + 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x66, 0x75, 0x6e, + 0x63, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x22, 0x86, 0x01, 0x0a, 0x0c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x64, 0x77, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, + 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xdd, 0x01, 0x0a, + 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x64, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, + 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, + 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x9e, 0x01, 0x0a, + 0x16, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x65, 0x78, 0x70, 0x72, 0x12, 0x22, 0x0a, 0x0c, - 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x32, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x68, + 0x61, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x91, 0x01, + 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x54, + 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2d, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, + 0x5f, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, + 0x74, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x22, 0xaf, 0x01, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x75, + 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x75, + 0x73, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, + 0x69, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, + 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x14, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, + 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, + 0x75, 0x73, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x7d, + 0x0a, 0x13, 0x44, 0x72, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, + 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, + 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x1e, 0x0a, + 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0xa0, 0x02, + 0x0a, 0x17, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x72, + 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x12, 0x22, 0x0a, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x3f, 0x0a, 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, + 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x6c, 0x69, 0x73, + 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, + 0x6c, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x22, 0x94, 0x02, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, + 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x6f, 0x6c, 0x69, + 0x63, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6d, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6d, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x76, 0x65, 0x12, 0x24, 0x0a, + 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x72, 0x6f, + 0x6c, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x12, 0x2e, 0x0a, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x5f, + 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x77, 0x69, 0x74, + 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x22, 0xd7, 0x01, 0x0a, 0x0f, 0x41, 0x6c, 0x74, 0x65, + 0x72, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x70, + 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, + 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, + 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x74, - 0x79, 0x70, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x66, 0x75, 0x6e, 0x63, - 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x63, - 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x0e, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, - 0x12, 0x3c, 0x0a, 0x11, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x11, 0x66, 0x75, 0x6e, - 0x63, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, - 0x0a, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, - 0x28, 0x04, 0x52, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x87, - 0x01, 0x0a, 0x11, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x73, 0x6d, 0x68, 0x61, 0x6e, 0x64, 0x6c, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x73, 0x6d, 0x68, 0x61, 0x6e, - 0x64, 0x6c, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x22, 0x0a, + 0x04, 0x71, 0x75, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x71, 0x75, 0x61, + 0x6c, 0x12, 0x2e, 0x0a, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, + 0x6b, 0x22, 0x72, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x6d, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x0c, 0x68, 0x61, 0x6e, + 0x64, 0x6c, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x61, 0x6d, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, + 0x6d, 0x74, 0x79, 0x70, 0x65, 0x22, 0xb6, 0x04, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, + 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, + 0x63, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x73, + 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, + 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, + 0x67, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x6f, 0x77, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x03, 0x72, 0x6f, 0x77, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x06, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, + 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x2f, + 0x0a, 0x0b, 0x77, 0x68, 0x65, 0x6e, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x77, 0x68, 0x65, 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, + 0x37, 0x0a, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, + 0x6c, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x66, 0x65, + 0x72, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, + 0x66, 0x65, 0x72, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, + 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, + 0x69, 0x6e, 0x69, 0x74, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x09, + 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x72, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x56, 0x61, 0x72, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x72, 0x65, 0x6c, 0x22, 0xab, + 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x72, + 0x69, 0x67, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x2e, 0x0a, 0x0a, 0x77, 0x68, 0x65, 0x6e, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x77, 0x68, 0x65, 0x6e, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x4e, 0x0a, 0x12, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, 0x67, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x69, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x74, 0x67, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x74, 0x67, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0xed, 0x01, 0x0a, + 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x4c, 0x61, 0x6e, 0x67, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6c, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x70, 0x6c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x70, 0x6c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, + 0x12, 0x2a, 0x0a, 0x08, 0x70, 0x6c, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x65, - 0x61, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x72, 0x65, - 0x70, 0x65, 0x61, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x22, 0xac, 0x01, 0x0a, 0x0f, 0x57, 0x69, 0x74, - 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x04, - 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x57, 0x43, 0x4f, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x70, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x70, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x71, 0x75, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, - 0x61, 0x73, 0x63, 0x61, 0x64, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, - 0x61, 0x73, 0x63, 0x61, 0x64, 0x65, 0x64, 0x22, 0xa8, 0x01, 0x0a, 0x0f, 0x53, 0x6f, 0x72, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x12, 0x74, - 0x6c, 0x65, 0x5f, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x72, 0x65, - 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x6c, 0x65, 0x53, 0x6f, 0x72, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x66, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x71, 0x6f, 0x70, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x65, 0x71, 0x6f, 0x70, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x6f, 0x72, 0x74, 0x6f, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, - 0x72, 0x74, 0x6f, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x5f, 0x66, 0x69, - 0x72, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6e, 0x75, 0x6c, 0x6c, 0x73, - 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x61, 0x73, 0x68, 0x61, 0x62, - 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, 0x68, 0x61, 0x62, - 0x6c, 0x65, 0x22, 0x82, 0x01, 0x0a, 0x0b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x53, - 0x65, 0x74, 0x12, 0x2d, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, - 0x64, 0x12, 0x28, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x03, + 0x64, 0x65, 0x52, 0x08, 0x70, 0x6c, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x30, 0x0a, 0x0b, + 0x70, 0x6c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x0b, 0x70, 0x6c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1c, + 0x0a, 0x09, 0x70, 0x6c, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x09, 0x70, 0x6c, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x22, 0x84, 0x01, 0x0a, + 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x34, 0x0a, 0x09, 0x73, 0x74, 0x6d, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, + 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x73, 0x74, 0x6d, 0x74, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x22, 0x79, 0x0a, 0x0d, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, + 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x07, + 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8b, + 0x01, 0x0a, 0x10, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, + 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x73, 0x65, 0x74, 0x73, 0x74, + 0x6d, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, + 0x74, 0x6d, 0x74, 0x52, 0x07, 0x73, 0x65, 0x74, 0x73, 0x74, 0x6d, 0x74, 0x22, 0x54, 0x0a, 0x0c, + 0x44, 0x72, 0x6f, 0x70, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x05, + 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, + 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, + 0x6f, 0x6b, 0x22, 0xce, 0x01, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, + 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x6f, 0x72, + 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0c, 0x66, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x24, 0x0a, + 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, + 0x73, 0x74, 0x73, 0x22, 0xac, 0x01, 0x0a, 0x0c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x71, + 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, + 0x0a, 0x0c, 0x66, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, + 0x6f, 0x6b, 0x22, 0x92, 0x02, 0x0a, 0x0a, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x28, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6f, + 0x6c, 0x64, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, + 0x6c, 0x64, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x64, 0x65, 0x66, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, + 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, + 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x18, 0x0a, + 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x22, 0xdf, 0x01, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x0a, + 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x0a, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x09, + 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, + 0x0b, 0x63, 0x6f, 0x6c, 0x6c, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6f, + 0x6c, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, + 0x6c, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x63, 0x6f, + 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x86, 0x02, 0x0a, 0x11, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x30, 0x0a, 0x0b, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x6f, 0x70, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x32, 0x0a, 0x0c, 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, + 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, + 0x08, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, + 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x69, 0x74, + 0x65, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x22, 0x8d, 0x02, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x43, + 0x6c, 0x61, 0x73, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x0c, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x0c, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x2e, + 0x0a, 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf2, 0x04, 0x0a, 0x0c, 0x57, 0x69, 0x6e, 0x64, - 0x6f, 0x77, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x72, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, - 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x64, 0x65, 0x52, 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x12, 0x32, + 0x0a, 0x0a, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, + 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0a, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x74, 0x79, + 0x70, 0x65, 0x22, 0x60, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x46, 0x61, + 0x6d, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x0c, 0x6f, 0x70, 0x66, 0x61, + 0x6d, 0x69, 0x6c, 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0c, + 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6d, + 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x9e, 0x01, 0x0a, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x70, + 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x0c, 0x6f, 0x70, + 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x0c, 0x6f, 0x70, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x61, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x64, 0x72, 0x6f, + 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x44, 0x72, 0x6f, 0x70, 0x12, + 0x24, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, + 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0xdf, 0x01, 0x0a, 0x08, 0x44, 0x72, 0x6f, 0x70, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x35, 0x0a, 0x0b, + 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, + 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x6f, 0x6e, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x22, 0x94, 0x01, 0x0a, 0x0c, 0x54, 0x72, 0x75, 0x6e, + 0x63, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x72, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x5f, 0x73, 0x65, 0x71, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x65, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x73, 0x65, 0x71, 0x73, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, + 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, + 0x76, 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0x7f, + 0x0a, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, + 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, + 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, + 0x98, 0x01, 0x0a, 0x0c, 0x53, 0x65, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, + 0x12, 0x26, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x66, 0x72, 0x61, - 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x0a, 0x0c, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x73, 0x0a, 0x11, 0x44, 0x65, + 0x63, 0x6c, 0x61, 0x72, 0x65, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x1e, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, + 0x31, 0x0a, 0x0f, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, + 0x6d, 0x65, 0x22, 0x96, 0x01, 0x0a, 0x09, 0x46, 0x65, 0x74, 0x63, 0x68, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x36, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, + 0x65, 0x74, 0x63, 0x68, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x6f, 0x77, 0x5f, + 0x6d, 0x61, 0x6e, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x68, 0x6f, 0x77, 0x4d, + 0x61, 0x6e, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x6d, 0x6f, 0x76, 0x65, 0x22, 0xdc, 0x07, 0x0a, 0x09, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x64, 0x78, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x64, 0x78, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x65, + 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x31, 0x0a, 0x0c, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2d, 0x0a, 0x0a, - 0x65, 0x6e, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, + 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x44, 0x0a, 0x16, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x5f, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x14, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x49, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x0a, 0x0c, + 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, + 0x38, 0x0a, 0x10, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x6f, 0x70, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x65, 0x78, 0x63, 0x6c, 0x75, + 0x64, 0x65, 0x4f, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x64, 0x78, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, + 0x64, 0x78, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x5f, 0x6f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x4f, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x6c, 0x64, 0x5f, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6f, 0x6c, 0x64, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x6c, 0x64, 0x5f, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x6f, 0x6c, 0x64, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x69, 0x64, 0x12, + 0x43, 0x0a, 0x1e, 0x6f, 0x6c, 0x64, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x6c, + 0x66, 0x69, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x75, 0x62, 0x69, + 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x6f, 0x6c, 0x64, 0x46, 0x69, 0x72, 0x73, + 0x74, 0x52, 0x65, 0x6c, 0x66, 0x69, 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x53, + 0x75, 0x62, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x12, 0x2e, 0x0a, 0x12, + 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, + 0x63, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x6e, 0x75, 0x6c, 0x6c, 0x73, 0x5f, + 0x6e, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, + 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x73, + 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, + 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, + 0x66, 0x65, 0x72, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, + 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, + 0x69, 0x74, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x12, 0x20, + 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x18, 0x15, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x16, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, + 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, + 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, + 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x32, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, + 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x62, 0x6c, 0x73, 0x70, 0x63, 0x18, 0x18, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x62, 0x6c, 0x73, 0x70, 0x63, 0x22, 0xa9, 0x02, 0x0a, 0x0f, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2a, + 0x0a, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x73, 0x74, + 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, + 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x05, 0x65, 0x78, + 0x70, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x65, 0x78, 0x70, 0x72, 0x73, + 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, + 0x0a, 0x0a, 0x73, 0x74, 0x78, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x78, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x20, + 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, + 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, + 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, + 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x43, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x74, 0x73, 0x45, + 0x6c, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x22, 0x82, 0x01, 0x0a, 0x0e, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2a, + 0x0a, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x09, 0x65, 0x6e, 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x33, 0x0a, 0x0d, 0x72, - 0x75, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x03, + 0x52, 0x08, 0x64, 0x65, 0x66, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x74, + 0x78, 0x73, 0x74, 0x61, 0x74, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0d, 0x73, 0x74, 0x78, 0x73, 0x74, 0x61, 0x74, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, + 0x22, 0xb9, 0x02, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x70, 0x72, + 0x6f, 0x63, 0x65, 0x64, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, + 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x64, 0x75, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, + 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, + 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x2e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, + 0x73, 0x12, 0x33, 0x0a, 0x0b, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x74, 0x75, + 0x72, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x12, 0x2a, 0x0a, 0x08, 0x73, 0x71, 0x6c, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x2d, 0x0a, 0x13, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6e, - 0x67, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x49, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, - 0x29, 0x0a, 0x11, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x66, 0x75, 0x6e, 0x63, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x49, - 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x6e, - 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x12, 0x20, - 0x0a, 0x0c, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x61, 0x73, 0x63, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x73, 0x63, - 0x12, 0x2f, 0x0a, 0x14, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6c, - 0x6c, 0x73, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, - 0x69, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x75, 0x6c, 0x6c, 0x73, 0x46, 0x69, 0x72, 0x73, - 0x74, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x72, 0x65, 0x66, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x77, 0x69, 0x6e, 0x72, 0x65, 0x66, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x70, - 0x69, 0x65, 0x64, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0b, 0x63, 0x6f, 0x70, 0x69, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x22, 0xc2, 0x01, 0x0a, - 0x0e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x12, - 0x28, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x64, 0x65, 0x52, 0x08, 0x73, 0x71, 0x6c, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x22, 0xb5, 0x01, 0x0a, + 0x11, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, + 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x08, 0x61, 0x72, 0x67, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x07, 0x61, 0x72, + 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, + 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, + 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x64, 0x65, + 0x66, 0x65, 0x78, 0x70, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x64, 0x65, 0x66, + 0x65, 0x78, 0x70, 0x72, 0x22, 0x9b, 0x01, 0x0a, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x46, 0x75, + 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, + 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x04, 0x66, 0x75, + 0x6e, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, + 0x67, 0x73, 0x52, 0x04, 0x66, 0x75, 0x6e, 0x63, 0x12, 0x28, 0x0a, 0x07, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x22, 0x2c, 0x0a, 0x06, 0x44, 0x6f, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x22, 0x0a, 0x04, + 0x61, 0x72, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, + 0x22, 0x8e, 0x01, 0x0a, 0x0f, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, + 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x5f, 0x6f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6c, 0x61, 0x6e, 0x67, 0x4f, 0x69, + 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x61, 0x6e, 0x67, 0x5f, 0x69, 0x73, 0x5f, 0x74, 0x72, 0x75, + 0x73, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6c, 0x61, 0x6e, 0x67, + 0x49, 0x73, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x74, 0x6f, + 0x6d, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x74, 0x6f, 0x6d, 0x69, + 0x63, 0x22, 0x94, 0x01, 0x0a, 0x08, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, + 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, 0x63, + 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x63, 0x61, 0x6c, 0x6c, 0x12, 0x2e, + 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, 0x63, + 0x45, 0x78, 0x70, 0x72, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x65, 0x78, 0x70, 0x72, 0x12, 0x28, + 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x07, 0x6f, 0x75, 0x74, 0x61, 0x72, 0x67, 0x73, 0x22, 0x25, 0x0a, 0x0b, 0x43, 0x61, 0x6c, 0x6c, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x74, 0x6f, 0x6d, 0x69, + 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x22, + 0xde, 0x02, 0x0a, 0x0a, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x35, + 0x0a, 0x0b, 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x6e, 0x61, 0x6d, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x39, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, + 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x26, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x62, 0x6a, - 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x61, - 0x72, 0x67, 0x73, 0x12, 0x30, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x66, 0x75, 0x6e, 0x63, 0x61, 0x72, - 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x6f, 0x62, 0x6a, 0x66, 0x75, 0x6e, - 0x63, 0x61, 0x72, 0x67, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x61, 0x72, 0x67, 0x73, 0x5f, 0x75, 0x6e, - 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x10, 0x61, 0x72, 0x67, 0x73, 0x5f, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, - 0x64, 0x22, 0x4e, 0x0a, 0x0a, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x72, 0x69, 0x76, 0x12, - 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x76, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x69, 0x76, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, - 0x04, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x6c, - 0x73, 0x22, 0x8d, 0x02, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x43, 0x6c, - 0x61, 0x73, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x0c, 0x6f, 0x72, 0x64, - 0x65, 0x72, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x08, + 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, + 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, + 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, + 0x22, 0xeb, 0x01, 0x0a, 0x16, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x6f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x65, 0x78, + 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x65, + 0x78, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x22, 0xe4, + 0x01, 0x0a, 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x26, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x73, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x77, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, + 0x5f, 0x6f, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0xcf, 0x01, 0x0a, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x4f, + 0x77, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x35, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x26, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x0c, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x2e, 0x0a, - 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x6f, 0x77, + 0x6e, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x08, 0x6e, + 0x65, 0x77, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x22, 0x73, 0x0a, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x34, 0x0a, 0x08, + 0x6f, 0x70, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x66, 0x0a, 0x0d, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2b, 0x0a, + 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x90, 0x02, 0x0a, 0x08, 0x52, 0x75, 0x6c, 0x65, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, + 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x75, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x75, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, + 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, + 0x12, 0x27, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6d, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x73, + 0x74, 0x65, 0x61, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x6e, 0x73, 0x74, + 0x65, 0x61, 0x64, 0x12, 0x28, 0x0a, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, + 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x22, 0x4c, 0x0a, 0x0a, 0x4e, 0x6f, 0x74, 0x69, 0x66, + 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, + 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, + 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x32, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x34, 0x0a, 0x0c, 0x55, 0x6e, 0x6c, + 0x69, 0x73, 0x74, 0x65, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0xbe, 0x01, 0x0a, 0x0f, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x31, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x1d, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x4b, 0x69, 0x6e, 0x64, + 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x61, 0x76, 0x65, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x61, 0x76, 0x65, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x22, 0x71, 0x0a, 0x11, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x76, 0x61, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, + 0x76, 0x61, 0x72, 0x12, 0x2e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x6c, 0x69, 0x73, + 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x64, 0x65, 0x66, 0x6c, + 0x69, 0x73, 0x74, 0x22, 0x61, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x75, + 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2b, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x76, 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x04, 0x76, 0x61, 0x6c, 0x73, 0x22, 0x66, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2b, 0x0a, 0x09, 0x74, 0x79, 0x70, + 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x79, + 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xf5, + 0x01, 0x0a, 0x0d, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x2b, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, + 0x07, 0x6f, 0x6c, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x6f, 0x6c, 0x64, 0x56, 0x61, 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x65, 0x77, 0x5f, 0x76, 0x61, + 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x65, 0x77, 0x56, 0x61, 0x6c, 0x12, + 0x28, 0x0a, 0x10, 0x6e, 0x65, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x5f, 0x6e, 0x65, 0x69, 0x67, 0x68, + 0x62, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6e, 0x65, 0x77, 0x56, 0x61, + 0x6c, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x12, 0x27, 0x0a, 0x10, 0x6e, 0x65, 0x77, + 0x5f, 0x76, 0x61, 0x6c, 0x5f, 0x69, 0x73, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6e, 0x65, 0x77, 0x56, 0x61, 0x6c, 0x49, 0x73, 0x41, 0x66, 0x74, + 0x65, 0x72, 0x12, 0x32, 0x0a, 0x16, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x69, 0x66, 0x5f, 0x6e, 0x65, + 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x12, 0x73, 0x6b, 0x69, 0x70, 0x49, 0x66, 0x4e, 0x65, 0x77, 0x56, 0x61, 0x6c, + 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x8d, 0x02, 0x0a, 0x08, 0x56, 0x69, 0x65, 0x77, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x28, 0x0a, 0x07, 0x61, + 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, + 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x61, 0x6c, + 0x69, 0x61, 0x73, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x72, + 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, + 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x45, 0x0a, 0x11, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x77, 0x69, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x26, 0x0a, 0x08, 0x4c, 0x6f, 0x61, 0x64, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x50, + 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x62, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x16, + 0x0a, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x22, 0x55, 0x0a, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, + 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, + 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x36, 0x0a, 0x1c, 0x41, 0x6c, 0x74, 0x65, 0x72, + 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, + 0x6f, 0x6c, 0x6c, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x63, 0x0a, 0x14, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x33, 0x0a, 0x07, 0x73, 0x65, 0x74, 0x73, 0x74, 0x6d, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x72, 0x69, + 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x52, 0x07, 0x73, 0x65, 0x74, + 0x73, 0x74, 0x6d, 0x74, 0x22, 0x6e, 0x0a, 0x0a, 0x44, 0x72, 0x6f, 0x70, 0x64, 0x62, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x64, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x46, 0x0a, 0x0f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x79, 0x73, + 0x74, 0x65, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x33, 0x0a, 0x07, 0x73, 0x65, 0x74, 0x73, 0x74, + 0x6d, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x53, + 0x74, 0x6d, 0x74, 0x52, 0x07, 0x73, 0x65, 0x74, 0x73, 0x74, 0x6d, 0x74, 0x22, 0x83, 0x01, 0x0a, + 0x0b, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2e, 0x0a, 0x08, + 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, + 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x22, 0x7e, 0x0a, 0x0a, 0x56, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x53, 0x74, 0x6d, 0x74, + 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x12, 0x32, 0x0a, - 0x0a, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0a, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x74, 0x79, 0x70, - 0x65, 0x22, 0x7e, 0x0a, 0x0f, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x04, 0x72, 0x65, + 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x72, 0x65, 0x6c, 0x73, 0x12, 0x22, + 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x76, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x63, 0x6d, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x5f, 0x76, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x63, + 0x6d, 0x64, 0x22, 0x7c, 0x0a, 0x0e, 0x56, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x52, 0x65, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, - 0x0a, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x69, - 0x64, 0x22, 0xb5, 0x01, 0x0a, 0x11, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x08, 0x61, - 0x72, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x52, 0x07, 0x61, 0x72, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x04, 0x6d, 0x6f, - 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x65, 0x74, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, - 0x28, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x07, 0x64, 0x65, 0x66, 0x65, 0x78, 0x70, 0x72, 0x22, 0xb5, 0x01, 0x0a, 0x0d, 0x4c, 0x6f, - 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x0b, 0x6c, - 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x03, 0x6f, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x07, 0x76, 0x61, 0x5f, 0x63, 0x6f, 0x6c, + 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x76, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x73, + 0x22, 0x5d, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, + 0xe1, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x41, + 0x73, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x04, 0x69, + 0x6e, 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x74, 0x6f, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, + 0x04, 0x69, 0x6e, 0x74, 0x6f, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, + 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, + 0x73, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x6f, 0x12, 0x24, 0x0a, + 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x66, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x65, 0x78, 0x69, + 0x73, 0x74, 0x73, 0x22, 0x81, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x4d, + 0x61, 0x74, 0x56, 0x69, 0x65, 0x77, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, + 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, + 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6b, + 0x69, 0x70, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x73, + 0x6b, 0x69, 0x70, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x10, 0x0a, 0x0e, 0x43, 0x68, 0x65, 0x63, 0x6b, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x22, 0x3c, 0x0a, 0x0b, 0x44, 0x69, 0x73, + 0x63, 0x61, 0x72, 0x64, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2d, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x52, + 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x64, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x6b, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x77, 0x61, 0x69, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6e, 0x6f, 0x77, 0x61, 0x69, 0x74, 0x22, 0x62, 0x0a, + 0x12, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x74, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, + 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, + 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, + 0x64, 0x22, 0xaa, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xea, + 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x38, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x52, 0x65, 0x6c, 0x73, 0x12, 0x38, 0x0a, 0x08, - 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x6f, 0x63, 0x6b, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x08, 0x73, 0x74, - 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x39, 0x0a, 0x0b, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x70, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4c, 0x6f, 0x63, 0x6b, 0x57, 0x61, 0x69, 0x74, 0x50, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0a, 0x77, 0x61, 0x69, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x22, 0xb7, 0x01, 0x0a, 0x0d, 0x52, 0x6f, 0x77, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6c, 0x61, - 0x75, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x74, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x03, 0x72, 0x74, 0x69, 0x12, 0x38, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4c, 0x6f, 0x63, 0x6b, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x53, 0x74, 0x72, - 0x65, 0x6e, 0x67, 0x74, 0x68, 0x52, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, - 0x39, 0x0a, 0x0b, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4c, 0x6f, 0x63, 0x6b, 0x57, 0x61, 0x69, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0a, - 0x77, 0x61, 0x69, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x75, - 0x73, 0x68, 0x65, 0x64, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0a, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x44, 0x6f, 0x77, 0x6e, 0x22, 0xb6, 0x01, 0x0a, 0x0c, - 0x58, 0x6d, 0x6c, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x12, 0x35, 0x0a, 0x09, - 0x78, 0x6d, 0x6c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x17, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x58, 0x6d, 0x6c, 0x4f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x78, 0x6d, 0x6c, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2f, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x08, - 0x74, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6a, 0x0a, 0x0a, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x75, - 0x73, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x63, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x66, 0x6f, 0x72, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, + 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x6f, + 0x72, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x2a, 0x0a, 0x10, 0x74, 0x6f, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x74, 0x6f, 0x5f, 0x65, 0x6e, + 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x66, + 0x75, 0x6e, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, + 0x66, 0x75, 0x6e, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x65, 0x66, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x64, 0x65, 0x66, 0x22, 0xf1, 0x01, 0x0a, 0x0e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x61, 0x73, 0x74, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x32, + 0x0a, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x79, + 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x32, 0x0a, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x04, 0x66, 0x75, 0x6e, 0x63, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, 0x67, 0x73, 0x52, 0x04, + 0x66, 0x75, 0x6e, 0x63, 0x12, 0x33, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x6f, + 0x75, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x6e, 0x6f, 0x75, 0x74, 0x22, + 0xd9, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, + 0x6f, 0x72, 0x6d, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, + 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, + 0x65, 0x12, 0x30, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x67, 0x12, 0x32, 0x0a, 0x07, 0x66, 0x72, 0x6f, 0x6d, 0x73, + 0x71, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x72, + 0x67, 0x73, 0x52, 0x07, 0x66, 0x72, 0x6f, 0x6d, 0x73, 0x71, 0x6c, 0x12, 0x2e, 0x0a, 0x05, 0x74, + 0x6f, 0x73, 0x71, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x57, 0x69, 0x74, 0x68, + 0x41, 0x72, 0x67, 0x73, 0x52, 0x05, 0x74, 0x6f, 0x73, 0x71, 0x6c, 0x22, 0x73, 0x0a, 0x0b, 0x50, + 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, + 0x0a, 0x08, 0x61, 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x04, 0x63, 0x74, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, - 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, - 0x73, 0x69, 0x76, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0xa7, 0x01, 0x0a, 0x0b, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, - 0x12, 0x2f, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x45, 0x6c, 0x65, 0x6d, - 0x73, 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf3, 0x01, 0x0a, 0x10, 0x4f, - 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, - 0x32, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, - 0x66, 0x6c, 0x69, 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x05, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x49, 0x6e, - 0x66, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x05, 0x69, 0x6e, 0x66, 0x65, 0x72, - 0x12, 0x2f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x69, 0x73, - 0x74, 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0xc9, 0x01, 0x0a, 0x0f, 0x43, 0x54, 0x45, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x43, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x0f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x63, - 0x6f, 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x73, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x32, - 0x0a, 0x14, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x64, 0x74, 0x68, - 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x73, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x64, 0x74, 0x68, 0x5f, 0x66, 0x69, 0x72, - 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x71, - 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, - 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf2, 0x03, 0x0a, - 0x0e, 0x43, 0x54, 0x45, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, - 0x36, 0x0a, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x6c, 0x69, 0x73, - 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x63, - 0x6f, 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, - 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x63, - 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x3a, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, - 0x61, 0x72, 0x6b, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x10, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x12, 0x3e, 0x0a, 0x12, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, - 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x12, 0x63, - 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, - 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, - 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x79, - 0x63, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, - 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x63, - 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, - 0x61, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x11, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, - 0x6d, 0x6f, 0x64, 0x12, 0x32, 0x0a, 0x14, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, - 0x6b, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x14, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x63, 0x6f, - 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x79, 0x63, 0x6c, 0x65, - 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x6e, 0x65, 0x6f, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0f, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x6e, 0x65, 0x6f, - 0x70, 0x22, 0x88, 0x05, 0x0a, 0x0f, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, - 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x74, 0x65, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x74, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x34, 0x0a, 0x0d, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x63, 0x6f, 0x6c, - 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0f, 0x63, 0x74, 0x65, 0x6d, 0x61, 0x74, 0x65, - 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x54, 0x45, 0x4d, 0x61, 0x74, - 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x0f, 0x63, 0x74, 0x65, 0x6d, 0x61, 0x74, - 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x74, 0x65, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x63, 0x74, 0x65, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x3f, 0x0a, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, - 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x54, 0x45, 0x53, 0x65, 0x61, 0x72, 0x63, - 0x68, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, - 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x0c, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, - 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x54, 0x45, 0x43, 0x79, 0x63, 0x6c, 0x65, - 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0c, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x6c, - 0x61, 0x75, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x74, 0x65, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x74, 0x65, 0x72, 0x65, 0x63, 0x75, 0x72, - 0x73, 0x69, 0x76, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x74, 0x65, 0x72, 0x65, 0x66, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x74, 0x65, 0x72, 0x65, - 0x66, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x74, 0x65, 0x63, 0x6f, 0x6c, - 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x63, 0x74, 0x65, - 0x63, 0x6f, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x0b, 0x63, 0x74, 0x65, 0x63, - 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x63, - 0x74, 0x65, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x74, - 0x65, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, + 0x52, 0x08, 0x61, 0x72, 0x67, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x05, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x22, 0x49, 0x0a, 0x0b, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x24, 0x0a, 0x0e, 0x44, + 0x65, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x69, 0x0a, 0x0d, 0x44, 0x72, 0x6f, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x53, 0x74, + 0x6d, 0x74, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0d, 0x63, 0x74, 0x65, 0x63, 0x6f, 0x6c, 0x74, 0x79, 0x70, 0x6d, 0x6f, 0x64, 0x73, - 0x12, 0x3a, 0x0a, 0x10, 0x63, 0x74, 0x65, 0x63, 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x10, 0x63, 0x74, 0x65, 0x63, - 0x6f, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x9e, 0x02, 0x0a, - 0x0f, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x57, 0x68, 0x65, 0x6e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x0c, 0x63, 0x6f, - 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x11, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x6d, 0x64, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x34, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4f, 0x76, - 0x65, 0x72, 0x72, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x08, 0x6f, 0x76, - 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, - 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x76, 0x0a, - 0x08, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x32, 0x0a, 0x08, 0x72, 0x6f, 0x6c, - 0x65, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x59, 0x0a, 0x11, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, - 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x15, - 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x6e, 0x65, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, - 0x69, 0x73, 0x4e, 0x65, 0x77, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x74, 0x61, 0x62, 0x6c, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x22, 0xbb, 0x01, 0x0a, 0x0d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6c, - 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2c, 0x0a, 0x09, 0x63, 0x6f, - 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x63, - 0x6f, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x63, 0x6c, 0x61, - 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x78, - 0x0a, 0x0d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, - 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x2f, 0x0a, 0x0b, 0x70, - 0x61, 0x72, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, + 0x76, 0x69, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, + 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0x67, 0x0a, 0x11, + 0x52, 0x65, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, - 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb8, 0x02, 0x0a, 0x12, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x63, 0x12, - 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x69, - 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0a, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, - 0x6f, 0x64, 0x75, 0x6c, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x6f, - 0x64, 0x75, 0x6c, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x64, - 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, - 0x64, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x75, 0x6d, - 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, - 0x75, 0x6d, 0x73, 0x12, 0x30, 0x0a, 0x0b, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x64, 0x61, 0x74, 0x75, - 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x64, - 0x61, 0x74, 0x75, 0x6d, 0x73, 0x12, 0x30, 0x0a, 0x0b, 0x75, 0x70, 0x70, 0x65, 0x72, 0x64, 0x61, - 0x74, 0x75, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x75, 0x70, 0x70, 0x65, - 0x72, 0x64, 0x61, 0x74, 0x75, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x8e, 0x01, 0x0a, 0x13, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, 0x75, 0x6d, 0x12, 0x35, 0x0a, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, 0x75, 0x6d, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, - 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x07, 0x6e, 0x65, 0x77, 0x72, 0x6f, + 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x6e, 0x65, + 0x77, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x6d, 0x0a, 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, + 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x2a, + 0x0a, 0x08, 0x64, 0x69, 0x63, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x08, 0x64, 0x69, 0x63, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x9f, 0x02, 0x0a, 0x18, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, + 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x1b, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, + 0x54, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x07, 0x63, 0x66, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, 0x66, 0x67, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x09, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x09, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x64, 0x69, + 0x63, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x64, 0x69, 0x63, 0x74, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, + 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x22, 0x9f, 0x01, 0x0a, 0x10, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, + 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, + 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x0c, 0x77, + 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8a, 0x01, 0x0a, 0x0c, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x43, 0x6d, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x52, - 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, - 0x05, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, - 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x63, 0x52, 0x05, 0x62, 0x6f, 0x75, 0x6e, - 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x74, 0x22, 0x7c, 0x0a, 0x0e, 0x56, 0x61, 0x63, 0x75, 0x75, 0x6d, 0x52, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x03, 0x6f, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x07, 0x76, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x76, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x73, 0x22, - 0xbe, 0x01, 0x0a, 0x12, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, - 0x62, 0x6a, 0x53, 0x70, 0x65, 0x63, 0x12, 0x40, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6f, 0x62, 0x6a, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4f, 0x62, 0x6a, 0x53, 0x70, 0x65, 0x63, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x70, 0x75, - 0x62, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x08, - 0x70, 0x75, 0x62, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x08, 0x70, 0x75, 0x62, 0x74, - 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0x9f, 0x01, 0x0a, 0x10, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x52, 0x08, 0x72, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x0c, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, - 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, - 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x75, - 0x6d, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, - 0x6e, 0x73, 0x22, 0x8e, 0x01, 0x0a, 0x0f, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x64, - 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, - 0x5f, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6c, 0x61, 0x6e, 0x67, - 0x4f, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x61, 0x6e, 0x67, 0x5f, 0x69, 0x73, 0x5f, 0x74, - 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6c, 0x61, - 0x6e, 0x67, 0x49, 0x73, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, - 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x74, 0x6f, - 0x6d, 0x69, 0x63, 0x22, 0x25, 0x0a, 0x0b, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x78, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x06, 0x61, 0x74, 0x6f, 0x6d, 0x69, 0x63, 0x22, 0x94, 0x01, 0x0a, 0x09, 0x53, - 0x63, 0x61, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, - 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x65, 0x6e, 0x64, - 0x12, 0x25, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x38, 0x0a, 0x0c, 0x6b, 0x65, 0x79, 0x77, 0x6f, - 0x72, 0x64, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, - 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, - 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x0b, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x4b, 0x69, 0x6e, - 0x64, 0x2a, 0x7f, 0x0a, 0x0e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x4b, - 0x69, 0x6e, 0x64, 0x12, 0x1d, 0x0a, 0x19, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x49, 0x4e, - 0x47, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x49, 0x4e, 0x47, - 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x4f, 0x56, - 0x45, 0x52, 0x52, 0x49, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x41, - 0x4c, 0x55, 0x45, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, - 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, - 0x10, 0x03, 0x2a, 0x9b, 0x01, 0x0a, 0x0b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x51, 0x55, 0x45, 0x52, 0x59, 0x5f, 0x53, 0x4f, 0x55, 0x52, - 0x43, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, - 0x0a, 0x0d, 0x51, 0x53, 0x52, 0x43, 0x5f, 0x4f, 0x52, 0x49, 0x47, 0x49, 0x4e, 0x41, 0x4c, 0x10, - 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x51, 0x53, 0x52, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x53, 0x45, 0x52, - 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x51, 0x53, 0x52, 0x43, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x45, - 0x41, 0x44, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x51, 0x53, 0x52, - 0x43, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x45, 0x41, 0x44, 0x5f, 0x52, - 0x55, 0x4c, 0x45, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x51, 0x53, 0x52, 0x43, 0x5f, 0x4e, 0x4f, - 0x4e, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x45, 0x41, 0x44, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x10, 0x05, - 0x2a, 0x6d, 0x0a, 0x09, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x44, 0x69, 0x72, 0x12, 0x19, 0x0a, - 0x15, 0x53, 0x4f, 0x52, 0x54, 0x5f, 0x42, 0x59, 0x5f, 0x44, 0x49, 0x52, 0x5f, 0x55, 0x4e, 0x44, - 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x4f, 0x52, 0x54, - 0x42, 0x59, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, - 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, 0x41, 0x53, 0x43, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, - 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, 0x44, 0x45, 0x53, 0x43, 0x10, 0x03, 0x12, 0x10, 0x0a, - 0x0c, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, 0x55, 0x53, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x2a, - 0x73, 0x0a, 0x0b, 0x53, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x4e, 0x75, 0x6c, 0x6c, 0x73, 0x12, 0x1b, - 0x0a, 0x17, 0x53, 0x4f, 0x52, 0x54, 0x5f, 0x42, 0x59, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, - 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x53, - 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x44, 0x45, 0x46, 0x41, - 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, - 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x10, 0x02, 0x12, 0x15, 0x0a, - 0x11, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x4c, 0x41, - 0x53, 0x54, 0x10, 0x03, 0x2a, 0x7e, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x51, 0x75, 0x61, 0x6e, 0x74, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x18, 0x53, 0x45, 0x54, 0x5f, 0x51, 0x55, 0x41, - 0x4e, 0x54, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, - 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x45, 0x54, 0x5f, 0x51, 0x55, 0x41, 0x4e, 0x54, - 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, - 0x16, 0x0a, 0x12, 0x53, 0x45, 0x54, 0x5f, 0x51, 0x55, 0x41, 0x4e, 0x54, 0x49, 0x46, 0x49, 0x45, - 0x52, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x45, 0x54, 0x5f, 0x51, - 0x55, 0x41, 0x4e, 0x54, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x44, 0x49, 0x53, 0x54, 0x49, 0x4e, - 0x43, 0x54, 0x10, 0x03, 0x2a, 0xb6, 0x02, 0x0a, 0x0b, 0x41, 0x5f, 0x45, 0x78, 0x70, 0x72, 0x5f, - 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4b, - 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x0c, 0x0a, 0x08, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x10, 0x0a, - 0x0c, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4f, 0x50, 0x5f, 0x41, 0x4e, 0x59, 0x10, 0x02, 0x12, - 0x10, 0x0a, 0x0c, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4f, 0x50, 0x5f, 0x41, 0x4c, 0x4c, 0x10, - 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x44, 0x49, 0x53, 0x54, 0x49, - 0x4e, 0x43, 0x54, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4e, - 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x54, 0x49, 0x4e, 0x43, 0x54, 0x10, 0x05, 0x12, 0x10, 0x0a, - 0x0c, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x49, 0x46, 0x10, 0x06, 0x12, - 0x0c, 0x0a, 0x08, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x49, 0x4e, 0x10, 0x07, 0x12, 0x0e, 0x0a, - 0x0a, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x10, 0x08, 0x12, 0x0f, 0x0a, - 0x0b, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x49, 0x4c, 0x49, 0x4b, 0x45, 0x10, 0x09, 0x12, 0x11, - 0x0a, 0x0d, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x53, 0x49, 0x4d, 0x49, 0x4c, 0x41, 0x52, 0x10, - 0x0a, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x42, 0x45, 0x54, 0x57, 0x45, - 0x45, 0x4e, 0x10, 0x0b, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4e, 0x4f, - 0x54, 0x5f, 0x42, 0x45, 0x54, 0x57, 0x45, 0x45, 0x4e, 0x10, 0x0c, 0x12, 0x15, 0x0a, 0x11, 0x41, - 0x45, 0x58, 0x50, 0x52, 0x5f, 0x42, 0x45, 0x54, 0x57, 0x45, 0x45, 0x4e, 0x5f, 0x53, 0x59, 0x4d, - 0x10, 0x0d, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, - 0x42, 0x45, 0x54, 0x57, 0x45, 0x45, 0x4e, 0x5f, 0x53, 0x59, 0x4d, 0x10, 0x0e, 0x2a, 0xa8, 0x01, - 0x0a, 0x0c, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, - 0x0a, 0x18, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, - 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x43, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, - 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x43, - 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, - 0x15, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, - 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x4f, 0x4c, 0x45, - 0x53, 0x50, 0x45, 0x43, 0x5f, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x53, 0x45, - 0x52, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x50, 0x45, 0x43, 0x5f, - 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x10, 0x05, 0x2a, 0xf4, 0x02, 0x0a, 0x0f, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, - 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, + 0x65, 0x52, 0x0b, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x28, + 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, + 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x22, 0xbe, 0x01, 0x0a, 0x12, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x53, 0x70, 0x65, 0x63, 0x12, + 0x40, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x53, 0x70, 0x65, + 0x63, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6f, 0x62, 0x6a, 0x74, 0x79, 0x70, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x08, 0x70, 0x75, 0x62, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x52, 0x08, 0x70, 0x75, 0x62, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb3, 0x01, 0x0a, 0x15, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, + 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, + 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x07, + 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x70, 0x75, 0x62, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x5f, 0x61, + 0x6c, 0x6c, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0e, 0x66, 0x6f, 0x72, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x22, + 0xec, 0x01, 0x0a, 0x14, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x75, 0x62, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x0a, + 0x70, 0x75, 0x62, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0e, + 0x66, 0x6f, 0x72, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x66, 0x6f, 0x72, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xaa, + 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x6e, 0x69, 0x6e, 0x66, 0x6f, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x6e, 0x69, 0x6e, 0x66, 0x6f, 0x12, + 0x30, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xde, 0x01, 0x0a, 0x15, + 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x33, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x41, + 0x6c, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, + 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x6e, 0x69, 0x6e, 0x66, 0x6f, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x6e, 0x69, 0x6e, 0x66, 0x6f, + 0x12, 0x30, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, + 0x6f, 0x64, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x84, 0x01, 0x0a, + 0x14, 0x44, 0x72, 0x6f, 0x70, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6b, 0x12, + 0x32, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, 0x72, 0x6f, + 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, + 0x69, 0x6f, 0x72, 0x22, 0x94, 0x01, 0x0a, 0x09, 0x53, 0x63, 0x61, 0x6e, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x12, 0x25, 0x0a, 0x05, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x12, 0x38, 0x0a, 0x0c, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x6b, 0x69, 0x6e, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x0b, 0x6b, + 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x4b, 0x69, 0x6e, 0x64, 0x2a, 0x7f, 0x0a, 0x0e, 0x4f, 0x76, + 0x65, 0x72, 0x72, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1d, 0x0a, 0x19, + 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, + 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x4f, + 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x53, 0x45, + 0x54, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x49, 0x4e, + 0x47, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x02, 0x12, 0x1b, + 0x0a, 0x17, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x03, 0x2a, 0x9b, 0x01, 0x0a, 0x0b, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x51, + 0x55, 0x45, 0x52, 0x59, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, + 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x51, 0x53, 0x52, 0x43, 0x5f, + 0x4f, 0x52, 0x49, 0x47, 0x49, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x51, 0x53, + 0x52, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x53, 0x45, 0x52, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x51, + 0x53, 0x52, 0x43, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x45, 0x41, 0x44, 0x5f, 0x52, 0x55, 0x4c, 0x45, + 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x51, 0x53, 0x52, 0x43, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x5f, + 0x49, 0x4e, 0x53, 0x54, 0x45, 0x41, 0x44, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x10, 0x04, 0x12, 0x19, + 0x0a, 0x15, 0x51, 0x53, 0x52, 0x43, 0x5f, 0x4e, 0x4f, 0x4e, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x45, + 0x41, 0x44, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x10, 0x05, 0x2a, 0x6d, 0x0a, 0x09, 0x53, 0x6f, 0x72, + 0x74, 0x42, 0x79, 0x44, 0x69, 0x72, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x4f, 0x52, 0x54, 0x5f, 0x42, + 0x59, 0x5f, 0x44, 0x49, 0x52, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, 0x44, 0x45, 0x46, 0x41, + 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, + 0x41, 0x53, 0x43, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, + 0x44, 0x45, 0x53, 0x43, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, + 0x5f, 0x55, 0x53, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x2a, 0x73, 0x0a, 0x0b, 0x53, 0x6f, 0x72, 0x74, + 0x42, 0x79, 0x4e, 0x75, 0x6c, 0x6c, 0x73, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x4f, 0x52, 0x54, 0x5f, + 0x42, 0x59, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, + 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, 0x4e, + 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x16, + 0x0a, 0x12, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x46, + 0x49, 0x52, 0x53, 0x54, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x4f, 0x52, 0x54, 0x42, 0x59, + 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x4c, 0x41, 0x53, 0x54, 0x10, 0x03, 0x2a, 0x7e, 0x0a, + 0x0d, 0x53, 0x65, 0x74, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x1c, + 0x0a, 0x18, 0x53, 0x45, 0x54, 0x5f, 0x51, 0x55, 0x41, 0x4e, 0x54, 0x49, 0x46, 0x49, 0x45, 0x52, + 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, + 0x53, 0x45, 0x54, 0x5f, 0x51, 0x55, 0x41, 0x4e, 0x54, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x44, + 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x45, 0x54, 0x5f, + 0x51, 0x55, 0x41, 0x4e, 0x54, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x02, + 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x45, 0x54, 0x5f, 0x51, 0x55, 0x41, 0x4e, 0x54, 0x49, 0x46, 0x49, + 0x45, 0x52, 0x5f, 0x44, 0x49, 0x53, 0x54, 0x49, 0x4e, 0x43, 0x54, 0x10, 0x03, 0x2a, 0xb6, 0x02, + 0x0a, 0x0b, 0x41, 0x5f, 0x45, 0x78, 0x70, 0x72, 0x5f, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x19, 0x0a, + 0x15, 0x41, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, + 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x45, 0x58, 0x50, + 0x52, 0x5f, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, + 0x4f, 0x50, 0x5f, 0x41, 0x4e, 0x59, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x45, 0x58, 0x50, + 0x52, 0x5f, 0x4f, 0x50, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x45, + 0x58, 0x50, 0x52, 0x5f, 0x44, 0x49, 0x53, 0x54, 0x49, 0x4e, 0x43, 0x54, 0x10, 0x04, 0x12, 0x16, + 0x0a, 0x12, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x54, + 0x49, 0x4e, 0x43, 0x54, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, + 0x4e, 0x55, 0x4c, 0x4c, 0x49, 0x46, 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x45, 0x58, 0x50, + 0x52, 0x5f, 0x49, 0x4e, 0x10, 0x07, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, + 0x4c, 0x49, 0x4b, 0x45, 0x10, 0x08, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, + 0x49, 0x4c, 0x49, 0x4b, 0x45, 0x10, 0x09, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x45, 0x58, 0x50, 0x52, + 0x5f, 0x53, 0x49, 0x4d, 0x49, 0x4c, 0x41, 0x52, 0x10, 0x0a, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x45, + 0x58, 0x50, 0x52, 0x5f, 0x42, 0x45, 0x54, 0x57, 0x45, 0x45, 0x4e, 0x10, 0x0b, 0x12, 0x15, 0x0a, + 0x11, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x54, 0x57, 0x45, + 0x45, 0x4e, 0x10, 0x0c, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x42, 0x45, + 0x54, 0x57, 0x45, 0x45, 0x4e, 0x5f, 0x53, 0x59, 0x4d, 0x10, 0x0d, 0x12, 0x19, 0x0a, 0x15, 0x41, + 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x54, 0x57, 0x45, 0x45, 0x4e, + 0x5f, 0x53, 0x59, 0x4d, 0x10, 0x0e, 0x2a, 0xa8, 0x01, 0x0a, 0x0c, 0x52, 0x6f, 0x6c, 0x65, 0x53, + 0x70, 0x65, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x52, 0x4f, 0x4c, 0x45, 0x5f, + 0x53, 0x50, 0x45, 0x43, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, + 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x50, 0x45, + 0x43, 0x5f, 0x43, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x52, + 0x4f, 0x4c, 0x45, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, + 0x52, 0x4f, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x50, + 0x45, 0x43, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, + 0x03, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x53, 0x45, + 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, + 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x10, + 0x05, 0x2a, 0xf4, 0x02, 0x0a, 0x0f, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, + 0x49, 0x4b, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, + 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, + 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, + 0x45, 0x4e, 0x54, 0x53, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, + 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x50, + 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x52, 0x45, + 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x43, + 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x54, 0x53, 0x10, 0x03, 0x12, 0x1e, 0x0a, 0x1a, + 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, + 0x45, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x04, 0x12, 0x1f, 0x0a, 0x1b, + 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, + 0x45, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x41, 0x54, 0x45, 0x44, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, - 0x4b, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x10, 0x01, 0x12, 0x21, 0x0a, - 0x1d, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, - 0x4b, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x02, - 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, - 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x54, - 0x53, 0x10, 0x03, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, - 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, - 0x53, 0x10, 0x04, 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, - 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x41, 0x54, - 0x45, 0x44, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, - 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x49, 0x44, 0x45, 0x4e, 0x54, 0x49, - 0x54, 0x59, 0x10, 0x06, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, - 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x45, - 0x53, 0x10, 0x07, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, - 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x49, 0x53, 0x54, - 0x49, 0x43, 0x53, 0x10, 0x08, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, - 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, - 0x47, 0x45, 0x10, 0x09, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, - 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x0a, 0x2a, - 0x76, 0x0a, 0x0d, 0x44, 0x65, 0x66, 0x45, 0x6c, 0x65, 0x6d, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x45, 0x46, 0x5f, 0x45, 0x4c, 0x45, 0x4d, 0x5f, 0x41, 0x43, 0x54, - 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x12, 0x0a, 0x0e, 0x44, 0x45, 0x46, 0x45, 0x4c, 0x45, 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, - 0x43, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x45, 0x46, 0x45, 0x4c, 0x45, 0x4d, 0x5f, 0x53, - 0x45, 0x54, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x45, 0x46, 0x45, 0x4c, 0x45, 0x4d, 0x5f, - 0x41, 0x44, 0x44, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x45, 0x46, 0x45, 0x4c, 0x45, 0x4d, - 0x5f, 0x44, 0x52, 0x4f, 0x50, 0x10, 0x04, 0x2a, 0xac, 0x01, 0x0a, 0x17, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, 0x75, 0x6d, 0x4b, - 0x69, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x24, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x52, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x55, 0x4d, 0x5f, 0x4b, 0x49, 0x4e, - 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x22, 0x0a, - 0x1e, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x4e, 0x47, 0x45, - 0x5f, 0x44, 0x41, 0x54, 0x55, 0x4d, 0x5f, 0x4d, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, - 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, - 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x55, 0x4d, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, - 0x10, 0x02, 0x12, 0x22, 0x0a, 0x1e, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x52, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x55, 0x4d, 0x5f, 0x4d, 0x41, 0x58, 0x56, - 0x41, 0x4c, 0x55, 0x45, 0x10, 0x03, 0x2a, 0xbd, 0x01, 0x0a, 0x07, 0x52, 0x54, 0x45, 0x4b, 0x69, - 0x6e, 0x64, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x54, 0x45, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, - 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x54, 0x45, - 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x52, - 0x54, 0x45, 0x5f, 0x53, 0x55, 0x42, 0x51, 0x55, 0x45, 0x52, 0x59, 0x10, 0x02, 0x12, 0x0c, 0x0a, - 0x08, 0x52, 0x54, 0x45, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x52, - 0x54, 0x45, 0x5f, 0x46, 0x55, 0x4e, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x11, 0x0a, - 0x0d, 0x52, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x46, 0x55, 0x4e, 0x43, 0x10, 0x05, - 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x54, 0x45, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x53, 0x10, 0x06, - 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x54, 0x45, 0x5f, 0x43, 0x54, 0x45, 0x10, 0x07, 0x12, 0x17, 0x0a, - 0x13, 0x52, 0x54, 0x45, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x44, 0x54, 0x55, 0x50, 0x4c, 0x45, 0x53, - 0x54, 0x4f, 0x52, 0x45, 0x10, 0x08, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x54, 0x45, 0x5f, 0x52, 0x45, - 0x53, 0x55, 0x4c, 0x54, 0x10, 0x09, 0x2a, 0xc4, 0x01, 0x0a, 0x07, 0x57, 0x43, 0x4f, 0x4b, 0x69, - 0x6e, 0x64, 0x12, 0x15, 0x0a, 0x11, 0x57, 0x43, 0x4f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, - 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x57, 0x43, 0x4f, - 0x5f, 0x56, 0x49, 0x45, 0x57, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x01, 0x12, 0x18, 0x0a, - 0x14, 0x57, 0x43, 0x4f, 0x5f, 0x52, 0x4c, 0x53, 0x5f, 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, 0x5f, - 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x57, 0x43, 0x4f, 0x5f, 0x52, - 0x4c, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, - 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x57, 0x43, 0x4f, 0x5f, 0x52, 0x4c, 0x53, 0x5f, 0x43, 0x4f, 0x4e, - 0x46, 0x4c, 0x49, 0x43, 0x54, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x04, 0x12, 0x1e, 0x0a, - 0x1a, 0x57, 0x43, 0x4f, 0x5f, 0x52, 0x4c, 0x53, 0x5f, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x5f, 0x55, - 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x05, 0x12, 0x1e, 0x0a, - 0x1a, 0x57, 0x43, 0x4f, 0x5f, 0x52, 0x4c, 0x53, 0x5f, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x5f, 0x44, - 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x06, 0x2a, 0xaa, 0x01, - 0x0a, 0x0f, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x74, 0x4b, 0x69, 0x6e, - 0x64, 0x12, 0x1f, 0x0a, 0x1b, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x45, - 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x53, - 0x45, 0x54, 0x5f, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x47, 0x52, - 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x49, 0x4d, 0x50, 0x4c, - 0x45, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, - 0x53, 0x45, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x4c, 0x55, 0x50, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, - 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x43, 0x55, 0x42, - 0x45, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, - 0x53, 0x45, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x53, 0x10, 0x05, 0x2a, 0x7c, 0x0a, 0x0e, 0x43, 0x54, - 0x45, 0x4d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x12, 0x1c, 0x0a, 0x18, - 0x43, 0x54, 0x45, 0x4d, 0x41, 0x54, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x5f, 0x55, - 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x54, - 0x45, 0x4d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x44, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x54, 0x45, 0x4d, 0x61, 0x74, 0x65, - 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x41, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x10, 0x02, 0x12, - 0x17, 0x0a, 0x13, 0x43, 0x54, 0x45, 0x4d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, - 0x65, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x10, 0x03, 0x2a, 0x73, 0x0a, 0x0c, 0x53, 0x65, 0x74, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x45, 0x54, 0x5f, - 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, - 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x4e, - 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x55, - 0x4e, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, - 0x49, 0x4e, 0x54, 0x45, 0x52, 0x53, 0x45, 0x43, 0x54, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x53, - 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, 0x10, 0x04, 0x2a, 0x99, 0x09, - 0x0a, 0x0a, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, - 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, - 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, - 0x54, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x10, - 0x01, 0x12, 0x14, 0x0a, 0x10, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x47, 0x47, 0x52, - 0x45, 0x47, 0x41, 0x54, 0x45, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, 0x43, - 0x54, 0x5f, 0x41, 0x4d, 0x4f, 0x50, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x42, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x41, 0x4d, 0x50, 0x52, 0x4f, 0x43, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x4f, - 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, 0x10, - 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x41, 0x53, 0x54, - 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x4f, 0x4c, - 0x55, 0x4d, 0x4e, 0x10, 0x07, 0x12, 0x14, 0x0a, 0x10, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, - 0x43, 0x4f, 0x4c, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x4f, - 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, - 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x41, 0x54, - 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, 0x0a, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x42, 0x4a, 0x45, 0x43, - 0x54, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x0b, 0x12, 0x11, 0x0a, 0x0d, 0x4f, - 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x43, 0x4c, 0x10, 0x0c, 0x12, 0x11, - 0x0a, 0x0d, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x4f, 0x4d, 0x41, 0x49, 0x4e, 0x10, - 0x0d, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x4f, 0x4d, 0x43, - 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x54, 0x10, 0x0e, 0x12, 0x18, 0x0a, 0x14, 0x4f, - 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x52, 0x49, 0x47, - 0x47, 0x45, 0x52, 0x10, 0x0f, 0x12, 0x14, 0x0a, 0x10, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, - 0x45, 0x58, 0x54, 0x45, 0x4e, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x10, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, - 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x44, 0x57, 0x10, 0x11, 0x12, 0x19, 0x0a, 0x15, 0x4f, - 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x4f, 0x52, 0x45, 0x49, 0x47, 0x4e, 0x5f, 0x53, 0x45, - 0x52, 0x56, 0x45, 0x52, 0x10, 0x12, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, - 0x5f, 0x46, 0x4f, 0x52, 0x45, 0x49, 0x47, 0x4e, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x13, - 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x55, 0x4e, 0x43, 0x54, - 0x49, 0x4f, 0x4e, 0x10, 0x14, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, - 0x49, 0x4e, 0x44, 0x45, 0x58, 0x10, 0x15, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, - 0x54, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x10, 0x16, 0x12, 0x16, 0x0a, 0x12, - 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4c, 0x41, 0x52, 0x47, 0x45, 0x4f, 0x42, 0x4a, 0x45, - 0x43, 0x54, 0x10, 0x17, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4d, - 0x41, 0x54, 0x56, 0x49, 0x45, 0x57, 0x10, 0x18, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x42, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x4f, 0x50, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x10, 0x19, 0x12, 0x13, 0x0a, 0x0f, - 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x4f, 0x52, 0x10, - 0x1a, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4f, 0x50, 0x46, 0x41, - 0x4d, 0x49, 0x4c, 0x59, 0x10, 0x1b, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, - 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x45, 0x54, 0x45, 0x52, 0x5f, 0x41, 0x43, 0x4c, 0x10, 0x1c, - 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, - 0x59, 0x10, 0x1d, 0x12, 0x14, 0x0a, 0x10, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x52, - 0x4f, 0x43, 0x45, 0x44, 0x55, 0x52, 0x45, 0x10, 0x1e, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x42, 0x4a, - 0x45, 0x43, 0x54, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, - 0x1f, 0x12, 0x20, 0x0a, 0x1c, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x55, 0x42, 0x4c, - 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x53, 0x50, 0x41, 0x43, - 0x45, 0x10, 0x20, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x55, - 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x4c, 0x10, 0x21, 0x12, - 0x0f, 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0x22, - 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x4f, 0x55, 0x54, 0x49, - 0x4e, 0x45, 0x10, 0x23, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x52, - 0x55, 0x4c, 0x45, 0x10, 0x24, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, - 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0x25, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x53, 0x45, 0x51, 0x55, 0x45, 0x4e, 0x43, 0x45, 0x10, 0x26, 0x12, 0x17, 0x0a, - 0x13, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, - 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x27, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, - 0x5f, 0x53, 0x54, 0x41, 0x54, 0x49, 0x53, 0x54, 0x49, 0x43, 0x5f, 0x45, 0x58, 0x54, 0x10, 0x28, - 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x41, 0x42, 0x43, 0x4f, - 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x54, 0x10, 0x29, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x42, - 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x2a, 0x12, 0x15, 0x0a, 0x11, - 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, 0x50, 0x41, 0x43, - 0x45, 0x10, 0x2b, 0x12, 0x14, 0x0a, 0x10, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x52, - 0x41, 0x4e, 0x53, 0x46, 0x4f, 0x52, 0x4d, 0x10, 0x2c, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x42, 0x4a, - 0x45, 0x43, 0x54, 0x5f, 0x54, 0x52, 0x49, 0x47, 0x47, 0x45, 0x52, 0x10, 0x2d, 0x12, 0x1a, 0x0a, - 0x16, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, - 0x55, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x2e, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x42, 0x4a, - 0x45, 0x43, 0x54, 0x5f, 0x54, 0x53, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x52, 0x59, - 0x10, 0x2f, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x53, 0x50, - 0x41, 0x52, 0x53, 0x45, 0x52, 0x10, 0x30, 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x42, 0x4a, 0x45, 0x43, - 0x54, 0x5f, 0x54, 0x53, 0x54, 0x45, 0x4d, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x31, 0x12, 0x0f, - 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x32, 0x12, - 0x17, 0x0a, 0x13, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x4d, - 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x33, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x56, 0x49, 0x45, 0x57, 0x10, 0x34, 0x2a, 0x50, 0x0a, 0x0c, 0x44, 0x72, 0x6f, - 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x52, 0x4f, - 0x50, 0x5f, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, - 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x52, - 0x45, 0x53, 0x54, 0x52, 0x49, 0x43, 0x54, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x52, 0x4f, - 0x50, 0x5f, 0x43, 0x41, 0x53, 0x43, 0x41, 0x44, 0x45, 0x10, 0x02, 0x2a, 0x86, 0x0d, 0x0a, 0x0e, - 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, - 0x0a, 0x1a, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, - 0x0a, 0x0c, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x10, 0x01, - 0x12, 0x17, 0x0a, 0x13, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, - 0x52, 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, + 0x4b, 0x45, 0x5f, 0x49, 0x44, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x10, 0x06, 0x12, 0x1d, 0x0a, + 0x19, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, + 0x4b, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x45, 0x53, 0x10, 0x07, 0x12, 0x20, 0x0a, 0x1c, + 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4b, + 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x49, 0x53, 0x54, 0x49, 0x43, 0x53, 0x10, 0x08, 0x12, 0x1d, + 0x0a, 0x19, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, + 0x49, 0x4b, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x10, 0x09, 0x12, 0x19, 0x0a, + 0x15, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4c, 0x49, + 0x4b, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x0a, 0x2a, 0x76, 0x0a, 0x0d, 0x44, 0x65, 0x66, 0x45, + 0x6c, 0x65, 0x6d, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x45, 0x46, + 0x5f, 0x45, 0x4c, 0x45, 0x4d, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, + 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x45, 0x46, 0x45, + 0x4c, 0x45, 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, + 0x44, 0x45, 0x46, 0x45, 0x4c, 0x45, 0x4d, 0x5f, 0x53, 0x45, 0x54, 0x10, 0x02, 0x12, 0x0f, 0x0a, + 0x0b, 0x44, 0x45, 0x46, 0x45, 0x4c, 0x45, 0x4d, 0x5f, 0x41, 0x44, 0x44, 0x10, 0x03, 0x12, 0x10, + 0x0a, 0x0c, 0x44, 0x45, 0x46, 0x45, 0x4c, 0x45, 0x4d, 0x5f, 0x44, 0x52, 0x4f, 0x50, 0x10, 0x04, + 0x2a, 0x8d, 0x01, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, + 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x55, 0x4e, 0x44, + 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x41, 0x52, 0x54, + 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x4c, + 0x49, 0x53, 0x54, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x52, 0x41, 0x4e, 0x47, + 0x45, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x10, 0x03, + 0x2a, 0xac, 0x01, 0x0a, 0x17, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, + 0x6e, 0x67, 0x65, 0x44, 0x61, 0x74, 0x75, 0x6d, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x24, + 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x4e, 0x47, 0x45, 0x5f, + 0x44, 0x41, 0x54, 0x55, 0x4d, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, + 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x22, 0x0a, 0x1e, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x55, 0x4d, 0x5f, + 0x4d, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x41, + 0x52, 0x54, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x44, 0x41, + 0x54, 0x55, 0x4d, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x02, 0x12, 0x22, 0x0a, 0x1e, 0x50, + 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x44, + 0x41, 0x54, 0x55, 0x4d, 0x5f, 0x4d, 0x41, 0x58, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x03, 0x2a, + 0xbd, 0x01, 0x0a, 0x07, 0x52, 0x54, 0x45, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x15, 0x0a, 0x11, 0x52, + 0x54, 0x45, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x54, 0x45, 0x5f, 0x53, 0x55, 0x42, 0x51, + 0x55, 0x45, 0x52, 0x59, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x54, 0x45, 0x5f, 0x4a, 0x4f, + 0x49, 0x4e, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x54, 0x45, 0x5f, 0x46, 0x55, 0x4e, 0x43, + 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x54, 0x45, 0x5f, 0x54, 0x41, + 0x42, 0x4c, 0x45, 0x46, 0x55, 0x4e, 0x43, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x54, 0x45, + 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x53, 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x54, 0x45, + 0x5f, 0x43, 0x54, 0x45, 0x10, 0x07, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x54, 0x45, 0x5f, 0x4e, 0x41, + 0x4d, 0x45, 0x44, 0x54, 0x55, 0x50, 0x4c, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x10, 0x08, 0x12, + 0x0e, 0x0a, 0x0a, 0x52, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x10, 0x09, 0x2a, + 0xc4, 0x01, 0x0a, 0x07, 0x57, 0x43, 0x4f, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x15, 0x0a, 0x11, 0x57, + 0x43, 0x4f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x57, 0x43, 0x4f, 0x5f, 0x56, 0x49, 0x45, 0x57, 0x5f, 0x43, + 0x48, 0x45, 0x43, 0x4b, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x57, 0x43, 0x4f, 0x5f, 0x52, 0x4c, + 0x53, 0x5f, 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x02, + 0x12, 0x18, 0x0a, 0x14, 0x57, 0x43, 0x4f, 0x5f, 0x52, 0x4c, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, + 0x54, 0x45, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x57, 0x43, + 0x4f, 0x5f, 0x52, 0x4c, 0x53, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, 0x5f, 0x43, + 0x48, 0x45, 0x43, 0x4b, 0x10, 0x04, 0x12, 0x1e, 0x0a, 0x1a, 0x57, 0x43, 0x4f, 0x5f, 0x52, 0x4c, + 0x53, 0x5f, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x43, + 0x48, 0x45, 0x43, 0x4b, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, 0x57, 0x43, 0x4f, 0x5f, 0x52, 0x4c, + 0x53, 0x5f, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x43, + 0x48, 0x45, 0x43, 0x4b, 0x10, 0x06, 0x2a, 0xaa, 0x01, 0x0a, 0x0f, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x69, 0x6e, 0x67, 0x53, 0x65, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x1b, 0x47, 0x52, + 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, + 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x47, + 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x45, 0x4d, 0x50, 0x54, + 0x59, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, + 0x53, 0x45, 0x54, 0x5f, 0x53, 0x49, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, + 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x52, 0x4f, 0x4c, + 0x4c, 0x55, 0x50, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, + 0x47, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x43, 0x55, 0x42, 0x45, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, + 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x45, 0x54, + 0x53, 0x10, 0x05, 0x2a, 0x7c, 0x0a, 0x0e, 0x43, 0x54, 0x45, 0x4d, 0x61, 0x74, 0x65, 0x72, 0x69, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x54, 0x45, 0x4d, 0x41, 0x54, 0x45, + 0x52, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x54, 0x45, 0x4d, 0x61, 0x74, 0x65, 0x72, 0x69, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x10, 0x01, 0x12, 0x18, + 0x0a, 0x14, 0x43, 0x54, 0x45, 0x4d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, + 0x41, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x54, 0x45, 0x4d, + 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x10, + 0x03, 0x2a, 0x73, 0x0a, 0x0c, 0x53, 0x65, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x45, 0x54, 0x5f, 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, + 0x0a, 0x0a, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x0f, + 0x0a, 0x0b, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x55, 0x4e, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, + 0x13, 0x0a, 0x0f, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x53, 0x45, + 0x43, 0x54, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x45, 0x58, + 0x43, 0x45, 0x50, 0x54, 0x10, 0x04, 0x2a, 0x99, 0x09, 0x0a, 0x0a, 0x4f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, + 0x53, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x4f, 0x42, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x47, 0x47, 0x52, 0x45, 0x47, 0x41, 0x54, 0x45, 0x10, 0x02, + 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x4d, 0x4f, 0x50, 0x10, + 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x4d, 0x50, 0x52, + 0x4f, 0x43, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, + 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x42, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x41, 0x53, 0x54, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x4f, + 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x4f, 0x4c, 0x55, 0x4d, 0x4e, 0x10, 0x07, 0x12, 0x14, + 0x0a, 0x10, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x4f, 0x4c, 0x4c, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x43, + 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x4f, + 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, 0x0a, + 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, + 0x4c, 0x54, 0x10, 0x0b, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, + 0x45, 0x46, 0x41, 0x43, 0x4c, 0x10, 0x0c, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x42, 0x4a, 0x45, 0x43, + 0x54, 0x5f, 0x44, 0x4f, 0x4d, 0x41, 0x49, 0x4e, 0x10, 0x0d, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x4f, 0x4d, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, + 0x4e, 0x54, 0x10, 0x0e, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x52, 0x49, 0x47, 0x47, 0x45, 0x52, 0x10, 0x0f, 0x12, 0x14, + 0x0a, 0x10, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x4e, 0x53, 0x49, + 0x4f, 0x4e, 0x10, 0x10, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x46, + 0x44, 0x57, 0x10, 0x11, 0x12, 0x19, 0x0a, 0x15, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x46, + 0x4f, 0x52, 0x45, 0x49, 0x47, 0x4e, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x10, 0x12, 0x12, + 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x4f, 0x52, 0x45, 0x49, 0x47, + 0x4e, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x13, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x46, 0x55, 0x4e, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x14, 0x12, 0x10, + 0x0a, 0x0c, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x10, 0x15, + 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, + 0x41, 0x47, 0x45, 0x10, 0x16, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, + 0x4c, 0x41, 0x52, 0x47, 0x45, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x17, 0x12, 0x12, 0x0a, + 0x0e, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4d, 0x41, 0x54, 0x56, 0x49, 0x45, 0x57, 0x10, + 0x18, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4f, 0x50, 0x43, 0x4c, + 0x41, 0x53, 0x53, 0x10, 0x19, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, + 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x4f, 0x52, 0x10, 0x1a, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4f, 0x50, 0x46, 0x41, 0x4d, 0x49, 0x4c, 0x59, 0x10, 0x1b, 0x12, + 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x45, + 0x54, 0x45, 0x52, 0x5f, 0x41, 0x43, 0x4c, 0x10, 0x1c, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x42, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x10, 0x1d, 0x12, 0x14, 0x0a, 0x10, + 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, 0x55, 0x52, 0x45, + 0x10, 0x1e, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x1f, 0x12, 0x20, 0x0a, 0x1c, 0x4f, 0x42, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x20, 0x12, 0x1a, 0x0a, 0x16, + 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x4c, 0x10, 0x21, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, + 0x43, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0x22, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x42, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x52, 0x4f, 0x55, 0x54, 0x49, 0x4e, 0x45, 0x10, 0x23, 0x12, 0x0f, 0x0a, + 0x0b, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x10, 0x24, 0x12, 0x11, + 0x0a, 0x0d, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, + 0x25, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x45, 0x51, 0x55, + 0x45, 0x4e, 0x43, 0x45, 0x10, 0x26, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, + 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x27, 0x12, + 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x49, 0x53, + 0x54, 0x49, 0x43, 0x5f, 0x45, 0x58, 0x54, 0x10, 0x28, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x42, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x54, 0x41, 0x42, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, + 0x54, 0x10, 0x29, 0x12, 0x10, 0x0a, 0x0c, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x41, + 0x42, 0x4c, 0x45, 0x10, 0x2a, 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, + 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x2b, 0x12, 0x14, 0x0a, 0x10, + 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x46, 0x4f, 0x52, 0x4d, + 0x10, 0x2c, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x52, 0x49, + 0x47, 0x47, 0x45, 0x52, 0x10, 0x2d, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, + 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x55, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x10, 0x2e, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x53, 0x44, + 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x2f, 0x12, 0x13, 0x0a, 0x0f, 0x4f, + 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x53, 0x50, 0x41, 0x52, 0x53, 0x45, 0x52, 0x10, 0x30, + 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x53, 0x54, 0x45, 0x4d, + 0x50, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x31, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, 0x43, + 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x32, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x42, 0x4a, 0x45, + 0x43, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, + 0x33, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x56, 0x49, 0x45, 0x57, + 0x10, 0x34, 0x2a, 0x50, 0x0a, 0x0c, 0x44, 0x72, 0x6f, 0x70, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, + 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x42, 0x45, 0x48, 0x41, 0x56, + 0x49, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, + 0x11, 0x0a, 0x0d, 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x52, 0x45, 0x53, 0x54, 0x52, 0x49, 0x43, 0x54, + 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x43, 0x41, 0x53, 0x43, 0x41, + 0x44, 0x45, 0x10, 0x02, 0x2a, 0xf6, 0x0b, 0x0a, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x4c, 0x54, 0x45, 0x52, + 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, + 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x54, 0x5f, 0x41, 0x64, + 0x64, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x54, 0x6f, 0x56, 0x69, 0x65, 0x77, 0x10, - 0x03, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x65, - 0x66, 0x61, 0x75, 0x6c, 0x74, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x54, 0x5f, 0x43, 0x6f, + 0x02, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x54, 0x5f, 0x43, 0x6f, 0x6f, 0x6b, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, - 0x74, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x4e, 0x6f, - 0x74, 0x4e, 0x75, 0x6c, 0x6c, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, 0x53, 0x65, - 0x74, 0x4e, 0x6f, 0x74, 0x4e, 0x75, 0x6c, 0x6c, 0x10, 0x07, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, + 0x74, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x4e, 0x6f, + 0x74, 0x4e, 0x75, 0x6c, 0x6c, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, 0x53, 0x65, + 0x74, 0x4e, 0x6f, 0x74, 0x4e, 0x75, 0x6c, 0x6c, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, - 0x08, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x54, 0x5f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4e, 0x6f, 0x74, - 0x4e, 0x75, 0x6c, 0x6c, 0x10, 0x09, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, - 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x10, 0x0a, 0x12, 0x11, 0x0a, 0x0d, - 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x0b, 0x12, + 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x54, 0x5f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4e, 0x6f, 0x74, + 0x4e, 0x75, 0x6c, 0x6c, 0x10, 0x08, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x10, 0x09, 0x12, 0x11, 0x0a, 0x0d, + 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x0a, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x10, 0x0c, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x53, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x10, 0x0d, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, 0x5f, 0x53, 0x65, - 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x0e, 0x12, 0x11, + 0x6e, 0x73, 0x10, 0x0b, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x53, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x10, 0x0c, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, 0x5f, 0x53, 0x65, + 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x0d, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x10, - 0x0f, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x43, 0x6f, 0x6c, 0x75, - 0x6d, 0x6e, 0x52, 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x10, 0x10, 0x12, 0x0f, 0x0a, 0x0b, 0x41, - 0x54, 0x5f, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x10, 0x11, 0x12, 0x11, 0x0a, 0x0d, - 0x41, 0x54, 0x5f, 0x52, 0x65, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x10, 0x12, 0x12, - 0x14, 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, - 0x69, 0x6e, 0x74, 0x10, 0x13, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x43, - 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, - 0x10, 0x14, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x41, 0x64, 0x64, 0x43, 0x6f, - 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, 0x15, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x54, - 0x5f, 0x52, 0x65, 0x41, 0x64, 0x64, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x73, - 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, 0x16, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x41, - 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, 0x17, - 0x12, 0x19, 0x0a, 0x15, 0x41, 0x54, 0x5f, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x43, - 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, 0x18, 0x12, 0x20, 0x0a, 0x1c, 0x41, - 0x54, 0x5f, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, - 0x61, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x10, 0x19, 0x12, 0x19, 0x0a, - 0x15, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x73, - 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, 0x1a, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, 0x5f, 0x44, - 0x72, 0x6f, 0x70, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, 0x1b, 0x12, - 0x1c, 0x0a, 0x18, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, - 0x61, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x75, 0x72, 0x73, 0x65, 0x10, 0x1c, 0x12, 0x13, 0x0a, - 0x0f, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x10, 0x1d, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, - 0x6c, 0x75, 0x6d, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x10, 0x1e, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x54, - 0x5f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x69, 0x63, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x1f, 0x12, 0x12, 0x0a, 0x0e, - 0x41, 0x54, 0x5f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x10, 0x20, - 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x54, 0x5f, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4f, 0x6e, - 0x10, 0x21, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x43, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x10, 0x22, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, - 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x10, 0x23, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x53, - 0x65, 0x74, 0x55, 0x6e, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x10, 0x24, 0x12, 0x0f, 0x0a, 0x0b, - 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x4f, 0x69, 0x64, 0x73, 0x10, 0x25, 0x12, 0x16, 0x0a, - 0x12, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x65, 0x74, - 0x68, 0x6f, 0x64, 0x10, 0x26, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x54, - 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x10, 0x27, 0x12, 0x14, 0x0a, 0x10, 0x41, - 0x54, 0x5f, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, - 0x28, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x6c, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x29, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x54, 0x5f, - 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x52, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x10, 0x2a, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x54, 0x72, 0x69, 0x67, 0x10, 0x2b, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x41, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x54, 0x72, 0x69, 0x67, 0x10, 0x2c, 0x12, - 0x18, 0x0a, 0x14, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x54, 0x72, 0x69, 0x67, 0x10, 0x2d, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, - 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x72, 0x69, 0x67, 0x10, 0x2e, 0x12, 0x14, 0x0a, - 0x10, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x72, 0x69, 0x67, 0x41, 0x6c, - 0x6c, 0x10, 0x2f, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, - 0x65, 0x54, 0x72, 0x69, 0x67, 0x41, 0x6c, 0x6c, 0x10, 0x30, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, - 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x72, 0x69, 0x67, 0x55, 0x73, 0x65, 0x72, 0x10, - 0x31, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, - 0x72, 0x69, 0x67, 0x55, 0x73, 0x65, 0x72, 0x10, 0x32, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, - 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x10, 0x33, 0x12, 0x17, 0x0a, 0x13, - 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x52, - 0x75, 0x6c, 0x65, 0x10, 0x34, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x75, 0x6c, 0x65, 0x10, 0x35, 0x12, - 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, - 0x65, 0x10, 0x36, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x68, - 0x65, 0x72, 0x69, 0x74, 0x10, 0x37, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, - 0x70, 0x49, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x10, 0x38, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x54, - 0x5f, 0x41, 0x64, 0x64, 0x4f, 0x66, 0x10, 0x39, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x54, 0x5f, 0x44, - 0x72, 0x6f, 0x70, 0x4f, 0x66, 0x10, 0x3a, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x52, 0x65, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x3b, 0x12, - 0x18, 0x0a, 0x14, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x6f, 0x77, 0x53, - 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x10, 0x3c, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x54, 0x5f, - 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, - 0x74, 0x79, 0x10, 0x3d, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x54, 0x5f, 0x46, 0x6f, 0x72, 0x63, 0x65, - 0x52, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x10, 0x3e, 0x12, 0x19, 0x0a, - 0x15, 0x41, 0x54, 0x5f, 0x4e, 0x6f, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x52, 0x6f, 0x77, 0x53, 0x65, - 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x10, 0x3f, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, 0x5f, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x40, 0x12, - 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x41, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x44, 0x65, - 0x74, 0x61, 0x63, 0x68, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x42, 0x12, - 0x1e, 0x0a, 0x1a, 0x41, 0x54, 0x5f, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x10, 0x43, 0x12, - 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x10, 0x44, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x49, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x45, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x54, 0x5f, 0x44, 0x72, - 0x6f, 0x70, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x46, 0x12, 0x16, 0x0a, 0x12, - 0x41, 0x54, 0x5f, 0x52, 0x65, 0x41, 0x64, 0x64, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, - 0x63, 0x73, 0x10, 0x47, 0x2a, 0x80, 0x01, 0x0a, 0x0f, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x47, 0x52, 0x41, 0x4e, - 0x54, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, - 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4c, - 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x01, - 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x43, 0x4c, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x41, - 0x4c, 0x4c, 0x5f, 0x49, 0x4e, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0x02, 0x12, 0x17, - 0x0a, 0x13, 0x41, 0x43, 0x4c, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x44, 0x45, 0x46, - 0x41, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x03, 0x2a, 0xa4, 0x01, 0x0a, 0x0f, 0x56, 0x61, 0x72, 0x69, - 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x1b, 0x56, - 0x41, 0x52, 0x49, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, - 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, - 0x56, 0x41, 0x52, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x01, 0x12, - 0x13, 0x0a, 0x0f, 0x56, 0x41, 0x52, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, - 0x4c, 0x54, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x56, 0x41, 0x52, 0x5f, 0x53, 0x45, 0x54, 0x5f, - 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x41, 0x52, - 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, - 0x56, 0x41, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x45, 0x54, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x56, - 0x41, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x45, 0x54, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x06, 0x2a, 0xdf, - 0x02, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, - 0x15, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, - 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x4e, 0x53, - 0x54, 0x52, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4f, 0x4e, - 0x53, 0x54, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x4e, 0x55, 0x4c, 0x4c, 0x10, 0x02, 0x12, 0x12, 0x0a, - 0x0e, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, - 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x49, 0x44, 0x45, 0x4e, - 0x54, 0x49, 0x54, 0x59, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, - 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x41, 0x54, 0x45, 0x44, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, - 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x12, - 0x0a, 0x0e, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, - 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x55, 0x4e, 0x49, - 0x51, 0x55, 0x45, 0x10, 0x08, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, - 0x45, 0x58, 0x43, 0x4c, 0x55, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x43, - 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x46, 0x4f, 0x52, 0x45, 0x49, 0x47, 0x4e, 0x10, 0x0a, 0x12, - 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x44, - 0x45, 0x46, 0x45, 0x52, 0x52, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x0b, 0x12, 0x1e, 0x0a, 0x1a, 0x43, - 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x44, - 0x45, 0x46, 0x45, 0x52, 0x52, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x0c, 0x12, 0x18, 0x0a, 0x14, 0x43, - 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x44, 0x45, 0x46, 0x45, 0x52, - 0x52, 0x45, 0x44, 0x10, 0x0d, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, - 0x41, 0x54, 0x54, 0x52, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x0e, - 0x2a, 0x9c, 0x01, 0x0a, 0x17, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x65, 0x69, - 0x67, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x24, - 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x46, 0x4f, 0x52, 0x45, 0x49, 0x47, 0x4e, 0x5f, 0x53, - 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, - 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x46, 0x44, 0x57, 0x5f, 0x49, 0x4d, - 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x41, 0x4c, 0x4c, 0x10, - 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x46, 0x44, 0x57, 0x5f, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, - 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x54, 0x4f, 0x10, - 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x46, 0x44, 0x57, 0x5f, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, - 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, 0x10, 0x03, 0x2a, - 0x66, 0x0a, 0x0c, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x6d, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x1c, 0x0a, 0x18, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, - 0x0d, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0x01, - 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x55, 0x53, 0x45, - 0x52, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x54, 0x4d, 0x54, 0x5f, - 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x03, 0x2a, 0x7e, 0x0a, 0x0e, 0x46, 0x65, 0x74, 0x63, 0x68, - 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x45, 0x54, - 0x43, 0x48, 0x5f, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, - 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x46, 0x45, 0x54, 0x43, - 0x48, 0x5f, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x46, - 0x45, 0x54, 0x43, 0x48, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x57, 0x41, 0x52, 0x44, 0x10, 0x02, 0x12, - 0x12, 0x0a, 0x0e, 0x46, 0x45, 0x54, 0x43, 0x48, 0x5f, 0x41, 0x42, 0x53, 0x4f, 0x4c, 0x55, 0x54, - 0x45, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x45, 0x54, 0x43, 0x48, 0x5f, 0x52, 0x45, 0x4c, - 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x04, 0x2a, 0xc2, 0x01, 0x0a, 0x15, 0x46, 0x75, 0x6e, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x4d, 0x6f, 0x64, - 0x65, 0x12, 0x25, 0x0a, 0x21, 0x46, 0x55, 0x4e, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x41, - 0x52, 0x41, 0x4d, 0x45, 0x54, 0x45, 0x52, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x44, - 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x46, 0x55, 0x4e, 0x43, - 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x46, - 0x55, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x4f, 0x55, 0x54, 0x10, 0x02, 0x12, - 0x14, 0x0a, 0x10, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x49, 0x4e, - 0x4f, 0x55, 0x54, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x50, 0x41, - 0x52, 0x41, 0x4d, 0x5f, 0x56, 0x41, 0x52, 0x49, 0x41, 0x44, 0x49, 0x43, 0x10, 0x04, 0x12, 0x14, - 0x0a, 0x10, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x54, 0x41, 0x42, - 0x4c, 0x45, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, - 0x41, 0x4d, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x06, 0x2a, 0xbe, 0x02, 0x0a, - 0x13, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, - 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x23, 0x0a, 0x1f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x41, 0x43, 0x54, - 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, - 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x52, 0x41, - 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x10, 0x01, 0x12, - 0x14, 0x0a, 0x10, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x53, 0x54, - 0x41, 0x52, 0x54, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, - 0x54, 0x4d, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, - 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x4c, 0x42, - 0x41, 0x43, 0x4b, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, - 0x54, 0x4d, 0x54, 0x5f, 0x53, 0x41, 0x56, 0x45, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0x05, 0x12, - 0x16, 0x0a, 0x12, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x52, 0x45, - 0x4c, 0x45, 0x41, 0x53, 0x45, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x54, 0x52, 0x41, 0x4e, 0x53, - 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x4c, 0x42, 0x41, 0x43, 0x4b, 0x5f, 0x54, - 0x4f, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, - 0x54, 0x5f, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x10, 0x08, 0x12, 0x1e, 0x0a, 0x1a, 0x54, - 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, - 0x5f, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x44, 0x10, 0x09, 0x12, 0x20, 0x0a, 0x1c, 0x54, - 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x4c, 0x42, 0x41, - 0x43, 0x4b, 0x5f, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x44, 0x10, 0x0a, 0x2a, 0x7a, 0x0a, - 0x0f, 0x56, 0x69, 0x65, 0x77, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x1f, 0x0a, 0x1b, 0x56, 0x49, 0x45, 0x57, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, 0x4f, - 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, - 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x4f, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, 0x4f, 0x50, - 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, - 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x19, - 0x0a, 0x15, 0x43, 0x41, 0x53, 0x43, 0x41, 0x44, 0x45, 0x44, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, - 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x2a, 0x76, 0x0a, 0x0b, 0x44, 0x69, 0x73, - 0x63, 0x61, 0x72, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x49, 0x53, 0x43, - 0x41, 0x52, 0x44, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, - 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x5f, - 0x41, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, - 0x5f, 0x50, 0x4c, 0x41, 0x4e, 0x53, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x49, 0x53, 0x43, - 0x41, 0x52, 0x44, 0x5f, 0x53, 0x45, 0x51, 0x55, 0x45, 0x4e, 0x43, 0x45, 0x53, 0x10, 0x03, 0x12, - 0x10, 0x0a, 0x0c, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x54, 0x45, 0x4d, 0x50, 0x10, - 0x04, 0x2a, 0xbd, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x52, 0x45, 0x49, 0x4e, 0x44, - 0x45, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, - 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, - 0x49, 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x44, - 0x45, 0x58, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x5f, - 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x19, - 0x0a, 0x15, 0x52, 0x45, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, - 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x49, - 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x59, 0x53, 0x54, - 0x45, 0x4d, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, 0x52, 0x45, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x5f, - 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, - 0x05, 0x2a, 0xef, 0x01, 0x0a, 0x11, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x41, 0x4c, 0x54, 0x45, 0x52, - 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, - 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x4c, - 0x54, 0x45, 0x52, 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x41, 0x44, 0x44, - 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x41, 0x4c, - 0x54, 0x45, 0x52, 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x41, 0x4c, 0x54, - 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x54, - 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x02, 0x12, 0x1f, 0x0a, 0x1b, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, - 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, - 0x5f, 0x44, 0x49, 0x43, 0x54, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x41, 0x4c, 0x54, 0x45, 0x52, - 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, - 0x45, 0x5f, 0x44, 0x49, 0x43, 0x54, 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, - 0x10, 0x04, 0x12, 0x1f, 0x0a, 0x1b, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x53, 0x43, 0x4f, - 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, - 0x47, 0x10, 0x05, 0x2a, 0xca, 0x01, 0x0a, 0x16, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x53, 0x70, 0x65, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, - 0x0a, 0x23, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x42, - 0x4a, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, - 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x55, 0x42, 0x4c, 0x49, - 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x4f, 0x42, 0x4a, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, - 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, - 0x4f, 0x42, 0x4a, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, 0x5f, 0x49, 0x4e, 0x5f, 0x53, 0x43, - 0x48, 0x45, 0x4d, 0x41, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, - 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x4f, 0x42, 0x4a, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, 0x5f, - 0x49, 0x4e, 0x5f, 0x43, 0x55, 0x52, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0x03, 0x12, - 0x1f, 0x0a, 0x1b, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x4f, 0x42, - 0x4a, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x49, 0x4e, 0x55, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, - 0x2a, 0x7a, 0x0a, 0x16, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x22, 0x41, 0x4c, - 0x54, 0x45, 0x52, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x50, 0x5f, 0x41, 0x64, 0x64, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x73, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x50, 0x5f, 0x44, 0x72, 0x6f, 0x70, - 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x50, 0x5f, - 0x53, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x10, 0x03, 0x2a, 0xd7, 0x02, 0x0a, - 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x25, 0x0a, 0x21, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, - 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, - 0x1a, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, - 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x10, 0x01, 0x12, 0x21, 0x0a, - 0x1d, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, - 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, - 0x12, 0x26, 0x0a, 0x22, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, - 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, - 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x26, 0x0a, 0x22, 0x41, 0x4c, 0x54, 0x45, - 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, - 0x44, 0x44, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, - 0x12, 0x27, 0x0a, 0x23, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, - 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x50, 0x55, 0x42, 0x4c, - 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x4c, 0x54, - 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x52, 0x45, 0x46, 0x52, 0x45, 0x53, 0x48, 0x10, 0x06, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x4c, 0x54, + 0x0e, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x10, 0x0f, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x41, 0x64, 0x64, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x10, 0x10, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x43, + 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, 0x11, 0x12, 0x16, 0x0a, 0x12, 0x41, + 0x54, 0x5f, 0x52, 0x65, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, + 0x74, 0x10, 0x12, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x41, 0x64, 0x64, 0x44, + 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, + 0x13, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, + 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, 0x14, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x54, 0x5f, + 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, + 0x6e, 0x74, 0x10, 0x15, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x10, 0x16, 0x12, + 0x15, 0x0a, 0x11, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, + 0x61, 0x69, 0x6e, 0x74, 0x10, 0x17, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x41, + 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0x18, 0x12, 0x16, 0x0a, 0x12, 0x41, + 0x54, 0x5f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x54, 0x79, 0x70, + 0x65, 0x10, 0x19, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x54, 0x5f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x43, + 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x10, 0x1a, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x10, 0x1b, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x54, 0x5f, + 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4f, 0x6e, 0x10, 0x1c, 0x12, 0x12, 0x0a, 0x0e, 0x41, + 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x10, 0x1d, 0x12, + 0x10, 0x0a, 0x0c, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x10, + 0x1e, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x55, 0x6e, 0x4c, 0x6f, 0x67, + 0x67, 0x65, 0x64, 0x10, 0x1f, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, + 0x4f, 0x69, 0x64, 0x73, 0x10, 0x20, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, + 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x10, 0x21, 0x12, 0x14, + 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x70, 0x61, + 0x63, 0x65, 0x10, 0x22, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x52, 0x65, + 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x23, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, + 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x10, 0x24, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, + 0x52, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x25, 0x12, 0x11, 0x0a, 0x0d, + 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x72, 0x69, 0x67, 0x10, 0x26, 0x12, + 0x17, 0x0a, 0x13, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x6c, 0x77, 0x61, + 0x79, 0x73, 0x54, 0x72, 0x69, 0x67, 0x10, 0x27, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x54, 0x5f, 0x45, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x54, 0x72, 0x69, 0x67, + 0x10, 0x28, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x54, 0x72, 0x69, 0x67, 0x10, 0x29, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x54, 0x72, 0x69, 0x67, 0x41, 0x6c, 0x6c, 0x10, 0x2a, 0x12, 0x15, 0x0a, 0x11, + 0x41, 0x54, 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x72, 0x69, 0x67, 0x41, 0x6c, + 0x6c, 0x10, 0x2b, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x54, 0x72, 0x69, 0x67, 0x55, 0x73, 0x65, 0x72, 0x10, 0x2c, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, + 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x72, 0x69, 0x67, 0x55, 0x73, 0x65, 0x72, + 0x10, 0x2d, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x52, + 0x75, 0x6c, 0x65, 0x10, 0x2e, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x41, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x10, 0x2f, 0x12, 0x18, + 0x0a, 0x14, 0x41, 0x54, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x52, 0x75, 0x6c, 0x65, 0x10, 0x30, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x44, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x10, 0x31, 0x12, 0x11, 0x0a, 0x0d, + 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x10, 0x32, 0x12, + 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x49, 0x6e, 0x68, 0x65, 0x72, 0x69, + 0x74, 0x10, 0x33, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x54, 0x5f, 0x41, 0x64, 0x64, 0x4f, 0x66, 0x10, + 0x34, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x4f, 0x66, 0x10, 0x35, + 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x36, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x54, 0x5f, 0x45, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, + 0x10, 0x37, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x54, 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x52, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x10, 0x38, 0x12, 0x17, 0x0a, + 0x13, 0x41, 0x54, 0x5f, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x52, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, + 0x72, 0x69, 0x74, 0x79, 0x10, 0x39, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x54, 0x5f, 0x4e, 0x6f, 0x46, + 0x6f, 0x72, 0x63, 0x65, 0x52, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x10, + 0x3a, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x3b, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x41, + 0x74, 0x74, 0x61, 0x63, 0x68, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x3c, + 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x3d, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x54, 0x5f, 0x44, + 0x65, 0x74, 0x61, 0x63, 0x68, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, + 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x10, 0x3e, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x54, 0x5f, 0x41, + 0x64, 0x64, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x3f, 0x12, 0x12, 0x0a, 0x0e, + 0x41, 0x54, 0x5f, 0x53, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x40, + 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x54, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x49, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x10, 0x41, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x54, 0x5f, 0x52, 0x65, 0x41, 0x64, + 0x64, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x10, 0x42, 0x2a, 0x80, 0x01, + 0x0a, 0x0f, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, + 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4c, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, + 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x43, 0x4c, + 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x41, 0x4c, 0x4c, 0x5f, 0x49, 0x4e, 0x5f, 0x53, + 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x43, 0x4c, 0x5f, 0x54, + 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x03, + 0x2a, 0xa4, 0x01, 0x0a, 0x0f, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x74, + 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x1b, 0x56, 0x41, 0x52, 0x49, 0x41, 0x42, 0x4c, 0x45, + 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, + 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x41, 0x52, 0x5f, 0x53, 0x45, 0x54, + 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x56, 0x41, 0x52, 0x5f, + 0x53, 0x45, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x02, 0x12, 0x13, 0x0a, + 0x0f, 0x56, 0x41, 0x52, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, + 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x41, 0x52, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x4d, 0x55, + 0x4c, 0x54, 0x49, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x56, 0x41, 0x52, 0x5f, 0x52, 0x45, 0x53, + 0x45, 0x54, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x41, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x45, + 0x54, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x06, 0x2a, 0xdf, 0x02, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x73, + 0x74, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, + 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x4e, 0x4f, 0x54, + 0x4e, 0x55, 0x4c, 0x4c, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, + 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x4f, + 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x49, 0x44, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x10, 0x04, 0x12, + 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x41, + 0x54, 0x45, 0x44, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, + 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4f, 0x4e, 0x53, 0x54, + 0x52, 0x5f, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x43, + 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x55, 0x4e, 0x49, 0x51, 0x55, 0x45, 0x10, 0x08, 0x12, 0x14, + 0x0a, 0x10, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x45, 0x58, 0x43, 0x4c, 0x55, 0x53, 0x49, + 0x4f, 0x4e, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x46, + 0x4f, 0x52, 0x45, 0x49, 0x47, 0x4e, 0x10, 0x0a, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4e, 0x53, + 0x54, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x44, 0x45, 0x46, 0x45, 0x52, 0x52, 0x41, 0x42, + 0x4c, 0x45, 0x10, 0x0b, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x41, + 0x54, 0x54, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x45, 0x52, 0x52, 0x41, 0x42, + 0x4c, 0x45, 0x10, 0x0c, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x41, + 0x54, 0x54, 0x52, 0x5f, 0x44, 0x45, 0x46, 0x45, 0x52, 0x52, 0x45, 0x44, 0x10, 0x0d, 0x12, 0x19, + 0x0a, 0x15, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x5f, 0x49, 0x4d, + 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x0e, 0x2a, 0x9c, 0x01, 0x0a, 0x17, 0x49, 0x6d, + 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x24, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, + 0x46, 0x4f, 0x52, 0x45, 0x49, 0x47, 0x4e, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, + 0x19, 0x0a, 0x15, 0x46, 0x44, 0x57, 0x5f, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x43, + 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x46, 0x44, + 0x57, 0x5f, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, + 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x54, 0x4f, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x46, 0x44, + 0x57, 0x5f, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, + 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, 0x10, 0x03, 0x2a, 0x66, 0x0a, 0x0c, 0x52, 0x6f, 0x6c, 0x65, + 0x53, 0x74, 0x6d, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x52, 0x4f, 0x4c, 0x45, + 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, + 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x54, + 0x4d, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x4c, + 0x45, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, + 0x52, 0x4f, 0x4c, 0x45, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x03, + 0x2a, 0x7e, 0x0a, 0x0e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x45, 0x54, 0x43, 0x48, 0x5f, 0x44, 0x49, 0x52, 0x45, + 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x46, 0x45, 0x54, 0x43, 0x48, 0x5f, 0x46, 0x4f, 0x52, 0x57, 0x41, + 0x52, 0x44, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x45, 0x54, 0x43, 0x48, 0x5f, 0x42, 0x41, + 0x43, 0x4b, 0x57, 0x41, 0x52, 0x44, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x45, 0x54, 0x43, + 0x48, 0x5f, 0x41, 0x42, 0x53, 0x4f, 0x4c, 0x55, 0x54, 0x45, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, + 0x46, 0x45, 0x54, 0x43, 0x48, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x04, + 0x2a, 0xc2, 0x01, 0x0a, 0x15, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x21, 0x46, 0x55, + 0x4e, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x45, 0x54, 0x45, 0x52, + 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, + 0x49, 0x4e, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, + 0x41, 0x4d, 0x5f, 0x4f, 0x55, 0x54, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x55, 0x4e, 0x43, + 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x4f, 0x55, 0x54, 0x10, 0x03, 0x12, 0x17, + 0x0a, 0x13, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x56, 0x41, 0x52, + 0x49, 0x41, 0x44, 0x49, 0x43, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x55, 0x4e, 0x43, 0x5f, + 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x05, 0x12, 0x16, 0x0a, + 0x12, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x44, 0x45, 0x46, 0x41, + 0x55, 0x4c, 0x54, 0x10, 0x06, 0x2a, 0xbe, 0x02, 0x0a, 0x13, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x23, 0x0a, + 0x1f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x4d, + 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, + 0x5f, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x52, 0x41, 0x4e, + 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x02, 0x12, 0x15, + 0x0a, 0x11, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x43, 0x4f, 0x4d, + 0x4d, 0x49, 0x54, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, + 0x54, 0x4d, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x4c, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x04, 0x12, 0x18, + 0x0a, 0x14, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x53, 0x41, 0x56, + 0x45, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x54, 0x52, 0x41, 0x4e, + 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x45, 0x41, 0x53, 0x45, 0x10, 0x06, + 0x12, 0x1a, 0x0a, 0x16, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x52, + 0x4f, 0x4c, 0x4c, 0x42, 0x41, 0x43, 0x4b, 0x5f, 0x54, 0x4f, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, + 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x4d, 0x54, 0x5f, 0x50, 0x52, 0x45, 0x50, 0x41, + 0x52, 0x45, 0x10, 0x08, 0x12, 0x1e, 0x0a, 0x1a, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, + 0x4d, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, + 0x45, 0x44, 0x10, 0x09, 0x12, 0x20, 0x0a, 0x1c, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x5f, 0x53, 0x54, + 0x4d, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x4c, 0x42, 0x41, 0x43, 0x4b, 0x5f, 0x50, 0x52, 0x45, 0x50, + 0x41, 0x52, 0x45, 0x44, 0x10, 0x0a, 0x2a, 0x7a, 0x0a, 0x0f, 0x56, 0x69, 0x65, 0x77, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x56, 0x49, 0x45, + 0x57, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, + 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x4f, + 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, + 0x16, 0x0a, 0x12, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, 0x4f, + 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x41, 0x53, 0x43, 0x41, + 0x44, 0x45, 0x44, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, + 0x10, 0x03, 0x2a, 0x76, 0x0a, 0x0b, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x4d, 0x6f, 0x64, + 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x4d, 0x4f, 0x44, + 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, + 0x0b, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x11, + 0x0a, 0x0d, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x50, 0x4c, 0x41, 0x4e, 0x53, 0x10, + 0x02, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x53, 0x45, 0x51, + 0x55, 0x45, 0x4e, 0x43, 0x45, 0x53, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x49, 0x53, 0x43, + 0x41, 0x52, 0x44, 0x5f, 0x54, 0x45, 0x4d, 0x50, 0x10, 0x04, 0x2a, 0xbd, 0x01, 0x0a, 0x11, 0x52, + 0x65, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x21, 0x0a, 0x1d, 0x52, 0x45, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, + 0x43, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x4f, + 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x10, 0x01, 0x12, 0x18, 0x0a, + 0x14, 0x52, 0x45, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, + 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x49, 0x4e, 0x44, + 0x45, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, + 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x4f, 0x42, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x10, 0x04, 0x12, 0x1b, 0x0a, + 0x17, 0x52, 0x45, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, + 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, 0x05, 0x2a, 0xef, 0x01, 0x0a, 0x11, 0x41, + 0x6c, 0x74, 0x65, 0x72, 0x54, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x21, 0x0a, 0x1d, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, + 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x53, 0x43, + 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, + 0x47, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x53, 0x43, + 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x50, 0x50, + 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x02, 0x12, + 0x1f, 0x0a, 0x1b, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, 0x49, + 0x47, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x5f, 0x44, 0x49, 0x43, 0x54, 0x10, 0x03, + 0x12, 0x29, 0x0a, 0x25, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, + 0x49, 0x47, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x5f, 0x44, 0x49, 0x43, 0x54, 0x5f, + 0x46, 0x4f, 0x52, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x04, 0x12, 0x1f, 0x0a, 0x1b, 0x41, + 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x53, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x44, 0x52, + 0x4f, 0x50, 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x2a, 0xca, 0x01, 0x0a, + 0x16, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x53, + 0x70, 0x65, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x23, 0x50, 0x55, 0x42, 0x4c, 0x49, + 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x42, 0x4a, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x18, 0x0a, 0x14, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x4f, + 0x42, 0x4a, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x55, + 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x4f, 0x42, 0x4a, 0x5f, 0x54, 0x41, 0x42, + 0x4c, 0x45, 0x53, 0x5f, 0x49, 0x4e, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0x02, 0x12, + 0x27, 0x0a, 0x23, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x4f, 0x42, + 0x4a, 0x5f, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, 0x5f, 0x49, 0x4e, 0x5f, 0x43, 0x55, 0x52, 0x5f, + 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x4f, 0x42, 0x4a, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x49, + 0x4e, 0x55, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x2a, 0x7a, 0x0a, 0x16, 0x41, 0x6c, 0x74, + 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x22, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x50, 0x55, 0x42, + 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, + 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x41, + 0x50, 0x5f, 0x41, 0x64, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x10, 0x01, 0x12, 0x12, + 0x0a, 0x0e, 0x41, 0x50, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, + 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x50, 0x5f, 0x53, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x73, 0x10, 0x03, 0x2a, 0xd7, 0x02, 0x0a, 0x15, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x53, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x25, 0x0a, 0x21, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, + 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, + 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, + 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x50, 0x54, + 0x49, 0x4f, 0x4e, 0x53, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, + 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, + 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x07, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x4c, 0x54, + 0x53, 0x45, 0x54, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, + 0x03, 0x12, 0x26, 0x0a, 0x22, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, + 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x50, 0x55, 0x42, 0x4c, + 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x27, 0x0a, 0x23, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x53, 0x4b, 0x49, 0x50, 0x10, 0x08, 0x2a, 0x8c, 0x01, 0x0a, 0x0e, 0x4f, 0x6e, 0x43, 0x6f, 0x6d, - 0x6d, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x1a, 0x4f, 0x4e, 0x5f, - 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, - 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x4e, 0x43, - 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x4e, 0x4f, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, - 0x4f, 0x4e, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x50, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, - 0x45, 0x5f, 0x52, 0x4f, 0x57, 0x53, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x4e, 0x43, 0x4f, - 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x52, 0x4f, 0x57, 0x53, - 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x4e, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x44, - 0x52, 0x4f, 0x50, 0x10, 0x04, 0x2a, 0x6f, 0x0a, 0x09, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x4b, 0x69, - 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x4b, 0x49, 0x4e, 0x44, - 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, - 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x10, 0x01, 0x12, 0x0e, - 0x0a, 0x0a, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x45, 0x58, 0x45, 0x43, 0x10, 0x02, 0x12, 0x11, - 0x0a, 0x0d, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, - 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, - 0x45, 0x58, 0x50, 0x52, 0x10, 0x04, 0x2a, 0x8e, 0x01, 0x0a, 0x0f, 0x43, 0x6f, 0x65, 0x72, 0x63, - 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, - 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x55, - 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, - 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x10, - 0x01, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x53, - 0x53, 0x49, 0x47, 0x4e, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, - 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4c, 0x50, 0x47, 0x53, 0x51, 0x4c, 0x10, 0x03, - 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, 0x45, 0x58, 0x50, - 0x4c, 0x49, 0x43, 0x49, 0x54, 0x10, 0x04, 0x2a, 0x90, 0x01, 0x0a, 0x0c, 0x43, 0x6f, 0x65, 0x72, - 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x4f, 0x45, 0x52, - 0x43, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, - 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x45, 0x5f, - 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x5f, 0x43, 0x41, 0x4c, 0x4c, 0x10, 0x01, 0x12, - 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x45, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, - 0x49, 0x54, 0x5f, 0x43, 0x41, 0x53, 0x54, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x45, - 0x52, 0x43, 0x45, 0x5f, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x5f, 0x43, 0x41, 0x53, - 0x54, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x45, 0x5f, 0x53, 0x51, - 0x4c, 0x5f, 0x53, 0x59, 0x4e, 0x54, 0x41, 0x58, 0x10, 0x04, 0x2a, 0x55, 0x0a, 0x0c, 0x42, 0x6f, - 0x6f, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x42, 0x4f, - 0x4f, 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, - 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x4e, 0x44, 0x5f, - 0x45, 0x58, 0x50, 0x52, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x52, 0x5f, 0x45, 0x58, 0x50, - 0x52, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x10, - 0x03, 0x2a, 0xc5, 0x01, 0x0a, 0x0b, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x55, 0x42, 0x5f, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, - 0x0a, 0x0e, 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, - 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x4c, 0x4c, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, - 0x4b, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x4e, 0x59, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, - 0x4e, 0x4b, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, - 0x52, 0x45, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, - 0x45, 0x58, 0x50, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x05, 0x12, 0x15, - 0x0a, 0x11, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x4c, - 0x49, 0x4e, 0x4b, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x52, 0x52, 0x41, 0x59, 0x5f, 0x53, - 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x54, 0x45, 0x5f, - 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x08, 0x2a, 0xa2, 0x01, 0x0a, 0x0e, 0x52, 0x6f, - 0x77, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, - 0x52, 0x4f, 0x57, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, - 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x4c, 0x54, 0x10, 0x01, 0x12, - 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x4c, 0x45, - 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, - 0x5f, 0x45, 0x51, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, - 0x41, 0x52, 0x45, 0x5f, 0x47, 0x45, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x57, 0x43, - 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x47, 0x54, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x52, - 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x4e, 0x45, 0x10, 0x06, 0x2a, 0x43, - 0x0a, 0x08, 0x4d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x4f, 0x70, 0x12, 0x18, 0x0a, 0x14, 0x4d, 0x49, - 0x4e, 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x4f, 0x50, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, - 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x53, 0x5f, 0x47, 0x52, 0x45, 0x41, 0x54, - 0x45, 0x53, 0x54, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x53, 0x5f, 0x4c, 0x45, 0x41, 0x53, - 0x54, 0x10, 0x02, 0x2a, 0xad, 0x03, 0x0a, 0x12, 0x53, 0x51, 0x4c, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x51, - 0x4c, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x46, 0x55, 0x4e, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x4f, 0x50, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, - 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, - 0x44, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, - 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x02, 0x12, 0x18, - 0x0a, 0x14, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, - 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x4e, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x56, 0x46, 0x4f, - 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, - 0x41, 0x4d, 0x50, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, - 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, - 0x5f, 0x4e, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x4c, 0x4f, - 0x43, 0x41, 0x4c, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x56, 0x46, - 0x4f, 0x50, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x4e, 0x10, 0x07, - 0x12, 0x18, 0x0a, 0x14, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x54, - 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x08, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x56, - 0x46, 0x4f, 0x50, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, - 0x4d, 0x50, 0x5f, 0x4e, 0x10, 0x09, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, - 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0x0a, 0x12, 0x16, - 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, - 0x55, 0x53, 0x45, 0x52, 0x10, 0x0b, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, - 0x55, 0x53, 0x45, 0x52, 0x10, 0x0c, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, - 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x0d, 0x12, 0x19, - 0x0a, 0x15, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, - 0x43, 0x41, 0x54, 0x41, 0x4c, 0x4f, 0x47, 0x10, 0x0e, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x56, 0x46, - 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, - 0x41, 0x10, 0x0f, 0x2a, 0xb2, 0x01, 0x0a, 0x09, 0x58, 0x6d, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x4f, - 0x70, 0x12, 0x19, 0x0a, 0x15, 0x58, 0x4d, 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4f, 0x50, - 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, - 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x43, 0x4f, 0x4e, 0x43, 0x41, 0x54, 0x10, 0x01, 0x12, 0x11, - 0x0a, 0x0d, 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, - 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x46, 0x4f, 0x52, 0x45, 0x53, - 0x54, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x50, 0x41, 0x52, - 0x53, 0x45, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x50, 0x49, - 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x52, 0x4f, 0x4f, 0x54, - 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x53, 0x45, 0x52, 0x49, - 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x10, 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x53, 0x5f, 0x44, 0x4f, - 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x08, 0x2a, 0x5d, 0x0a, 0x0d, 0x58, 0x6d, 0x6c, 0x4f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x58, 0x4d, 0x4c, - 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, - 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x58, 0x4d, 0x4c, 0x4f, - 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x4f, 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x01, - 0x12, 0x15, 0x0a, 0x11, 0x58, 0x4d, 0x4c, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, - 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x2a, 0x4a, 0x0a, 0x0c, 0x4e, 0x75, 0x6c, 0x6c, 0x54, - 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x4e, 0x55, 0x4c, 0x4c, 0x5f, - 0x54, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, - 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x49, 0x53, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, - 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4e, 0x55, 0x4c, - 0x4c, 0x10, 0x02, 0x2a, 0x8e, 0x01, 0x0a, 0x0c, 0x42, 0x6f, 0x6f, 0x6c, 0x54, 0x65, 0x73, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x42, 0x4f, 0x4f, 0x4c, 0x5f, 0x54, 0x45, 0x53, - 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x49, 0x53, 0x5f, 0x54, 0x52, 0x55, 0x45, 0x10, 0x01, 0x12, - 0x0f, 0x0a, 0x0b, 0x49, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x54, 0x52, 0x55, 0x45, 0x10, 0x02, - 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x53, 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x03, 0x12, 0x10, - 0x0a, 0x0c, 0x49, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x04, - 0x12, 0x0e, 0x0a, 0x0a, 0x49, 0x53, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x05, - 0x12, 0x12, 0x0a, 0x0e, 0x49, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, - 0x57, 0x4e, 0x10, 0x06, 0x2a, 0xa3, 0x01, 0x0a, 0x07, 0x43, 0x6d, 0x64, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x16, 0x0a, 0x12, 0x43, 0x4d, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, - 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4d, 0x44, 0x5f, - 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x4d, 0x44, - 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x4d, 0x44, - 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x4d, 0x44, - 0x5f, 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x4d, 0x44, - 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4d, 0x44, - 0x5f, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4d, 0x44, 0x5f, - 0x55, 0x54, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x10, 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4d, 0x44, - 0x5f, 0x4e, 0x4f, 0x54, 0x48, 0x49, 0x4e, 0x47, 0x10, 0x08, 0x2a, 0xad, 0x01, 0x0a, 0x08, 0x4a, - 0x6f, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, + 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, + 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x46, 0x52, 0x45, 0x53, 0x48, + 0x10, 0x06, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, + 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, + 0x10, 0x07, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x53, + 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x4b, 0x49, 0x50, 0x10, 0x08, 0x2a, + 0x8c, 0x01, 0x0a, 0x0e, 0x4f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x1a, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, + 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x4e, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x4e, + 0x4f, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x4e, 0x43, 0x4f, 0x4d, 0x4d, 0x49, + 0x54, 0x5f, 0x50, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x45, 0x5f, 0x52, 0x4f, 0x57, 0x53, 0x10, + 0x02, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x4e, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x44, 0x45, + 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x52, 0x4f, 0x57, 0x53, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x4f, + 0x4e, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x44, 0x52, 0x4f, 0x50, 0x10, 0x04, 0x2a, 0x6f, + 0x0a, 0x09, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x14, 0x50, + 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, + 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x5f, 0x45, + 0x58, 0x54, 0x45, 0x52, 0x4e, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x41, 0x52, 0x41, 0x4d, + 0x5f, 0x45, 0x58, 0x45, 0x43, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x41, 0x52, 0x41, 0x4d, + 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x41, + 0x52, 0x41, 0x4d, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x45, 0x58, 0x50, 0x52, 0x10, 0x04, 0x2a, + 0x8e, 0x01, 0x0a, 0x0f, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x78, 0x74, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, + 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, + 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4f, + 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x4d, 0x45, 0x4e, + 0x54, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, + 0x50, 0x4c, 0x50, 0x47, 0x53, 0x51, 0x4c, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x45, + 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x10, 0x04, + 0x2a, 0x90, 0x01, 0x0a, 0x0c, 0x43, 0x6f, 0x65, 0x72, 0x63, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, + 0x6d, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x4f, + 0x52, 0x4d, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, + 0x0a, 0x14, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x45, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, 0x49, + 0x54, 0x5f, 0x43, 0x41, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x45, 0x52, + 0x43, 0x45, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x5f, 0x43, 0x41, 0x53, 0x54, + 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x45, 0x52, 0x43, 0x45, 0x5f, 0x49, 0x4d, 0x50, + 0x4c, 0x49, 0x43, 0x49, 0x54, 0x5f, 0x43, 0x41, 0x53, 0x54, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, + 0x43, 0x4f, 0x45, 0x52, 0x43, 0x45, 0x5f, 0x53, 0x51, 0x4c, 0x5f, 0x53, 0x59, 0x4e, 0x54, 0x41, + 0x58, 0x10, 0x04, 0x2a, 0x55, 0x0a, 0x0c, 0x42, 0x6f, 0x6f, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x42, 0x4f, 0x4f, 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x52, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x4e, 0x44, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x10, 0x01, 0x12, + 0x0b, 0x0a, 0x07, 0x4f, 0x52, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, + 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x10, 0x03, 0x2a, 0xc5, 0x01, 0x0a, 0x0b, 0x53, + 0x75, 0x62, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x55, + 0x42, 0x5f, 0x4c, 0x49, 0x4e, 0x4b, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, + 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x58, 0x49, 0x53, 0x54, + 0x53, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x41, + 0x4c, 0x4c, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, + 0x41, 0x4e, 0x59, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x03, 0x12, 0x16, 0x0a, + 0x12, 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x53, 0x55, 0x42, 0x4c, + 0x49, 0x4e, 0x4b, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x53, 0x55, + 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x05, 0x12, 0x15, 0x0a, 0x11, 0x4d, 0x55, 0x4c, 0x54, 0x49, + 0x45, 0x58, 0x50, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, 0x06, 0x12, 0x11, + 0x0a, 0x0d, 0x41, 0x52, 0x52, 0x41, 0x59, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, 0x10, + 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x54, 0x45, 0x5f, 0x53, 0x55, 0x42, 0x4c, 0x49, 0x4e, 0x4b, + 0x10, 0x08, 0x2a, 0xa2, 0x01, 0x0a, 0x0e, 0x52, 0x6f, 0x77, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x52, 0x4f, 0x57, 0x5f, 0x43, 0x4f, 0x4d, + 0x50, 0x41, 0x52, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, + 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, + 0x41, 0x52, 0x45, 0x5f, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x57, 0x43, + 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x52, + 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x45, 0x51, 0x10, 0x03, 0x12, 0x11, + 0x0a, 0x0d, 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x47, 0x45, 0x10, + 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x52, 0x45, 0x5f, + 0x47, 0x54, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x4f, 0x57, 0x43, 0x4f, 0x4d, 0x50, 0x41, + 0x52, 0x45, 0x5f, 0x4e, 0x45, 0x10, 0x06, 0x2a, 0x43, 0x0a, 0x08, 0x4d, 0x69, 0x6e, 0x4d, 0x61, + 0x78, 0x4f, 0x70, 0x12, 0x18, 0x0a, 0x14, 0x4d, 0x49, 0x4e, 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x4f, + 0x50, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, + 0x0b, 0x49, 0x53, 0x5f, 0x47, 0x52, 0x45, 0x41, 0x54, 0x45, 0x53, 0x54, 0x10, 0x01, 0x12, 0x0c, + 0x0a, 0x08, 0x49, 0x53, 0x5f, 0x4c, 0x45, 0x41, 0x53, 0x54, 0x10, 0x02, 0x2a, 0xad, 0x03, 0x0a, + 0x12, 0x53, 0x51, 0x4c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x4f, 0x70, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x51, 0x4c, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, + 0x46, 0x55, 0x4e, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x50, 0x5f, 0x55, 0x4e, 0x44, 0x45, + 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, + 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, + 0x16, 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, + 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x56, 0x46, 0x4f, 0x50, + 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x4e, 0x10, + 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, + 0x4e, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x04, 0x12, 0x1d, + 0x0a, 0x19, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, + 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x5f, 0x4e, 0x10, 0x05, 0x12, 0x13, 0x0a, + 0x0f, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x54, 0x49, 0x4d, 0x45, + 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x4c, 0x4f, 0x43, 0x41, + 0x4c, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x4e, 0x10, 0x07, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x56, 0x46, + 0x4f, 0x50, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, + 0x50, 0x10, 0x08, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x4c, 0x4f, 0x43, + 0x41, 0x4c, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x5f, 0x4e, 0x10, 0x09, 0x12, + 0x16, 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, + 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0x0a, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, + 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x0b, 0x12, + 0x0e, 0x0a, 0x0a, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x0c, 0x12, + 0x16, 0x0a, 0x12, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, + 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x0d, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x56, 0x46, 0x4f, 0x50, + 0x5f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x41, 0x54, 0x41, 0x4c, 0x4f, 0x47, + 0x10, 0x0e, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x56, 0x46, 0x4f, 0x50, 0x5f, 0x43, 0x55, 0x52, 0x52, + 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0x0f, 0x2a, 0xb2, 0x01, 0x0a, + 0x09, 0x58, 0x6d, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x4f, 0x70, 0x12, 0x19, 0x0a, 0x15, 0x58, 0x4d, + 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x5f, 0x4f, 0x50, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, + 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x43, + 0x4f, 0x4e, 0x43, 0x41, 0x54, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x53, 0x5f, 0x58, 0x4d, + 0x4c, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x53, + 0x5f, 0x58, 0x4d, 0x4c, 0x46, 0x4f, 0x52, 0x45, 0x53, 0x54, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, + 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x50, 0x41, 0x52, 0x53, 0x45, 0x10, 0x04, 0x12, 0x0c, 0x0a, + 0x08, 0x49, 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x50, 0x49, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x49, + 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x52, 0x4f, 0x4f, 0x54, 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x49, + 0x53, 0x5f, 0x58, 0x4d, 0x4c, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x10, 0x07, + 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x53, 0x5f, 0x44, 0x4f, 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x10, + 0x08, 0x2a, 0x5d, 0x0a, 0x0d, 0x58, 0x6d, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x58, 0x4d, 0x4c, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x16, 0x0a, 0x12, 0x58, 0x4d, 0x4c, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, + 0x4f, 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x58, 0x4d, 0x4c, + 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x10, 0x02, + 0x2a, 0x74, 0x0a, 0x0c, 0x4a, 0x73, 0x6f, 0x6e, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, + 0x12, 0x1b, 0x0a, 0x17, 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, + 0x47, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, + 0x0e, 0x4a, 0x53, 0x5f, 0x45, 0x4e, 0x43, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, + 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x4a, 0x53, 0x5f, 0x45, 0x4e, 0x43, 0x5f, 0x55, 0x54, 0x46, 0x38, + 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x4a, 0x53, 0x5f, 0x45, 0x4e, 0x43, 0x5f, 0x55, 0x54, 0x46, + 0x31, 0x36, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x4a, 0x53, 0x5f, 0x45, 0x4e, 0x43, 0x5f, 0x55, + 0x54, 0x46, 0x33, 0x32, 0x10, 0x04, 0x2a, 0x70, 0x0a, 0x0e, 0x4a, 0x73, 0x6f, 0x6e, 0x46, 0x6f, + 0x72, 0x6d, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x4a, 0x53, 0x4f, 0x4e, + 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, + 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x4a, 0x53, 0x5f, 0x46, + 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, + 0x12, 0x0a, 0x0e, 0x4a, 0x53, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x4a, 0x53, 0x4f, + 0x4e, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x4a, 0x53, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, + 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x42, 0x10, 0x03, 0x2a, 0x9e, 0x01, 0x0a, 0x13, 0x4a, 0x73, 0x6f, + 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x23, 0x0a, 0x1f, 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x55, + 0x43, 0x54, 0x4f, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, + 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x4a, 0x53, 0x43, 0x54, 0x4f, 0x52, 0x5f, + 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x01, 0x12, 0x15, 0x0a, + 0x11, 0x4a, 0x53, 0x43, 0x54, 0x4f, 0x52, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x41, 0x52, 0x52, + 0x41, 0x59, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x4a, 0x53, 0x43, 0x54, 0x4f, 0x52, 0x5f, 0x4a, + 0x53, 0x4f, 0x4e, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x41, 0x47, 0x47, 0x10, 0x03, 0x12, + 0x18, 0x0a, 0x14, 0x4a, 0x53, 0x43, 0x54, 0x4f, 0x52, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x41, + 0x52, 0x52, 0x41, 0x59, 0x41, 0x47, 0x47, 0x10, 0x04, 0x2a, 0x7a, 0x0a, 0x0d, 0x4a, 0x73, 0x6f, + 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x4a, 0x53, + 0x4f, 0x4e, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, + 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x4a, 0x53, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x4e, 0x59, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4a, 0x53, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x02, 0x12, 0x11, + 0x0a, 0x0d, 0x4a, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x52, 0x52, 0x41, 0x59, 0x10, + 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x4a, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x43, 0x41, + 0x4c, 0x41, 0x52, 0x10, 0x04, 0x2a, 0x4a, 0x0a, 0x0c, 0x4e, 0x75, 0x6c, 0x6c, 0x54, 0x65, 0x73, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x4e, 0x55, 0x4c, 0x4c, 0x5f, 0x54, 0x45, + 0x53, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x49, 0x53, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x10, 0x01, + 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x10, + 0x02, 0x2a, 0x8e, 0x01, 0x0a, 0x0c, 0x42, 0x6f, 0x6f, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x42, 0x4f, 0x4f, 0x4c, 0x5f, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, - 0x12, 0x0e, 0x0a, 0x0a, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x49, 0x4e, 0x4e, 0x45, 0x52, 0x10, 0x01, - 0x12, 0x0d, 0x0a, 0x09, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x02, 0x12, - 0x0d, 0x0a, 0x09, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x03, 0x12, 0x0e, - 0x0a, 0x0a, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x04, 0x12, 0x0d, - 0x0a, 0x09, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x53, 0x45, 0x4d, 0x49, 0x10, 0x05, 0x12, 0x0d, 0x0a, - 0x09, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x41, 0x4e, 0x54, 0x49, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, - 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x55, 0x4e, 0x49, 0x51, 0x55, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x45, - 0x52, 0x10, 0x07, 0x12, 0x15, 0x0a, 0x11, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x55, 0x4e, 0x49, 0x51, - 0x55, 0x45, 0x5f, 0x49, 0x4e, 0x4e, 0x45, 0x52, 0x10, 0x08, 0x2a, 0x67, 0x0a, 0x0b, 0x41, 0x67, - 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x47, 0x47, - 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, - 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x47, 0x47, 0x5f, 0x50, 0x4c, 0x41, - 0x49, 0x4e, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x47, 0x47, 0x5f, 0x53, 0x4f, 0x52, 0x54, - 0x45, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x47, 0x47, 0x5f, 0x48, 0x41, 0x53, 0x48, - 0x45, 0x44, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x47, 0x47, 0x5f, 0x4d, 0x49, 0x58, 0x45, - 0x44, 0x10, 0x04, 0x2a, 0x72, 0x0a, 0x08, 0x41, 0x67, 0x67, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x12, - 0x17, 0x0a, 0x13, 0x41, 0x47, 0x47, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x5f, 0x55, 0x4e, 0x44, - 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x47, 0x47, 0x53, - 0x50, 0x4c, 0x49, 0x54, 0x5f, 0x53, 0x49, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x1b, 0x0a, - 0x17, 0x41, 0x47, 0x47, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, - 0x4c, 0x5f, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x47, - 0x47, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x5f, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x5f, 0x44, 0x45, 0x53, - 0x45, 0x52, 0x49, 0x41, 0x4c, 0x10, 0x03, 0x2a, 0x86, 0x01, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x4f, - 0x70, 0x43, 0x6d, 0x64, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x45, 0x54, 0x5f, 0x4f, 0x50, 0x5f, 0x43, - 0x4d, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, - 0x0a, 0x12, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x43, 0x4d, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, - 0x53, 0x45, 0x43, 0x54, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x43, - 0x4d, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x53, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x4c, 0x4c, - 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x43, 0x4d, 0x44, 0x5f, 0x45, - 0x58, 0x43, 0x45, 0x50, 0x54, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x45, 0x54, 0x4f, 0x50, - 0x43, 0x4d, 0x44, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x04, - 0x2a, 0x52, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x4f, 0x70, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, - 0x79, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x45, 0x54, 0x5f, 0x4f, 0x50, 0x5f, 0x53, 0x54, 0x52, 0x41, - 0x54, 0x45, 0x47, 0x59, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, - 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x53, 0x4f, 0x52, 0x54, 0x45, 0x44, - 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x48, 0x41, 0x53, 0x48, - 0x45, 0x44, 0x10, 0x02, 0x2a, 0x78, 0x0a, 0x10, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x6c, 0x69, - 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x1c, 0x4f, 0x4e, 0x5f, 0x43, - 0x4f, 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, - 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x4e, - 0x43, 0x4f, 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, - 0x16, 0x0a, 0x12, 0x4f, 0x4e, 0x43, 0x4f, 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, 0x5f, 0x4e, 0x4f, - 0x54, 0x48, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x4e, 0x43, 0x4f, 0x4e, - 0x46, 0x4c, 0x49, 0x43, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x03, 0x2a, 0x77, - 0x0a, 0x0b, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, - 0x16, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, - 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x4c, 0x49, 0x4d, - 0x49, 0x54, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, - 0x54, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x4f, 0x50, 0x54, - 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4c, - 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x57, 0x49, 0x54, 0x48, - 0x5f, 0x54, 0x49, 0x45, 0x53, 0x10, 0x03, 0x2a, 0x98, 0x01, 0x0a, 0x12, 0x4c, 0x6f, 0x63, 0x6b, - 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x22, - 0x0a, 0x1e, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x43, 0x4c, 0x41, 0x55, 0x53, 0x45, 0x5f, 0x53, 0x54, - 0x52, 0x45, 0x4e, 0x47, 0x54, 0x48, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4c, 0x43, 0x53, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x01, - 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x43, 0x53, 0x5f, 0x46, 0x4f, 0x52, 0x4b, 0x45, 0x59, 0x53, 0x48, - 0x41, 0x52, 0x45, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x43, 0x53, 0x5f, 0x46, 0x4f, 0x52, - 0x53, 0x48, 0x41, 0x52, 0x45, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x43, 0x53, 0x5f, 0x46, - 0x4f, 0x52, 0x4e, 0x4f, 0x4b, 0x45, 0x59, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, - 0x11, 0x0a, 0x0d, 0x4c, 0x43, 0x53, 0x5f, 0x46, 0x4f, 0x52, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, - 0x10, 0x05, 0x2a, 0x68, 0x0a, 0x0e, 0x4c, 0x6f, 0x63, 0x6b, 0x57, 0x61, 0x69, 0x74, 0x50, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1e, 0x0a, 0x1a, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x57, 0x41, 0x49, - 0x54, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, - 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x6f, 0x63, 0x6b, 0x57, 0x61, 0x69, 0x74, - 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x6f, 0x63, 0x6b, 0x57, - 0x61, 0x69, 0x74, 0x53, 0x6b, 0x69, 0x70, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x6f, 0x63, - 0x6b, 0x57, 0x61, 0x69, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x2a, 0x8e, 0x01, 0x0a, - 0x0d, 0x4c, 0x6f, 0x63, 0x6b, 0x54, 0x75, 0x70, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1d, - 0x0a, 0x19, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x54, 0x55, 0x50, 0x4c, 0x45, 0x5f, 0x4d, 0x4f, 0x44, - 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, - 0x11, 0x4c, 0x6f, 0x63, 0x6b, 0x54, 0x75, 0x70, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x53, 0x68, 0x61, - 0x72, 0x65, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x6f, 0x63, 0x6b, 0x54, 0x75, 0x70, 0x6c, - 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x4c, 0x6f, 0x63, 0x6b, - 0x54, 0x75, 0x70, 0x6c, 0x65, 0x4e, 0x6f, 0x4b, 0x65, 0x79, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x73, - 0x69, 0x76, 0x65, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x6f, 0x63, 0x6b, 0x54, 0x75, 0x70, - 0x6c, 0x65, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x10, 0x04, 0x2a, 0x7d, 0x0a, - 0x0b, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x0e, 0x0a, 0x0a, - 0x4e, 0x4f, 0x5f, 0x4b, 0x45, 0x59, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, - 0x55, 0x4e, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x45, 0x44, 0x5f, 0x4b, 0x45, 0x59, 0x57, 0x4f, - 0x52, 0x44, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4c, 0x5f, 0x4e, 0x41, 0x4d, 0x45, - 0x5f, 0x4b, 0x45, 0x59, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x4b, 0x45, 0x59, - 0x57, 0x4f, 0x52, 0x44, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, - 0x45, 0x44, 0x5f, 0x4b, 0x45, 0x59, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x04, 0x2a, 0xe1, 0x37, 0x0a, - 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x55, 0x4c, 0x10, 0x00, 0x12, - 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x33, 0x37, 0x10, 0x25, 0x12, 0x0c, 0x0a, - 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x30, 0x10, 0x28, 0x12, 0x0c, 0x0a, 0x08, 0x41, - 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x31, 0x10, 0x29, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, - 0x49, 0x49, 0x5f, 0x34, 0x32, 0x10, 0x2a, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, - 0x5f, 0x34, 0x33, 0x10, 0x2b, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, - 0x34, 0x10, 0x2c, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x35, 0x10, - 0x2d, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x36, 0x10, 0x2e, 0x12, - 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x37, 0x10, 0x2f, 0x12, 0x0c, 0x0a, - 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x35, 0x38, 0x10, 0x3a, 0x12, 0x0c, 0x0a, 0x08, 0x41, - 0x53, 0x43, 0x49, 0x49, 0x5f, 0x35, 0x39, 0x10, 0x3b, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, - 0x49, 0x49, 0x5f, 0x36, 0x30, 0x10, 0x3c, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, - 0x5f, 0x36, 0x31, 0x10, 0x3d, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x36, - 0x32, 0x10, 0x3e, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x36, 0x33, 0x10, - 0x3f, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x39, 0x31, 0x10, 0x5b, 0x12, - 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x39, 0x32, 0x10, 0x5c, 0x12, 0x0c, 0x0a, - 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x39, 0x33, 0x10, 0x5d, 0x12, 0x0c, 0x0a, 0x08, 0x41, - 0x53, 0x43, 0x49, 0x49, 0x5f, 0x39, 0x34, 0x10, 0x5e, 0x12, 0x0a, 0x0a, 0x05, 0x49, 0x44, 0x45, - 0x4e, 0x54, 0x10, 0x82, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x55, 0x49, 0x44, 0x45, 0x4e, 0x54, 0x10, - 0x83, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x46, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x84, 0x02, 0x12, - 0x0b, 0x0a, 0x06, 0x53, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x85, 0x02, 0x12, 0x0c, 0x0a, 0x07, - 0x55, 0x53, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x86, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x42, 0x43, - 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x87, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x58, 0x43, 0x4f, 0x4e, 0x53, - 0x54, 0x10, 0x88, 0x02, 0x12, 0x07, 0x0a, 0x02, 0x4f, 0x70, 0x10, 0x89, 0x02, 0x12, 0x0b, 0x0a, - 0x06, 0x49, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x8a, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x50, 0x41, - 0x52, 0x41, 0x4d, 0x10, 0x8b, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x54, 0x59, 0x50, 0x45, 0x43, 0x41, - 0x53, 0x54, 0x10, 0x8c, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x44, 0x4f, 0x54, 0x5f, 0x44, 0x4f, 0x54, - 0x10, 0x8d, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x43, 0x4f, 0x4c, 0x4f, 0x4e, 0x5f, 0x45, 0x51, 0x55, - 0x41, 0x4c, 0x53, 0x10, 0x8e, 0x02, 0x12, 0x13, 0x0a, 0x0e, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x53, - 0x5f, 0x47, 0x52, 0x45, 0x41, 0x54, 0x45, 0x52, 0x10, 0x8f, 0x02, 0x12, 0x10, 0x0a, 0x0b, 0x4c, - 0x45, 0x53, 0x53, 0x5f, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x53, 0x10, 0x90, 0x02, 0x12, 0x13, 0x0a, - 0x0e, 0x47, 0x52, 0x45, 0x41, 0x54, 0x45, 0x52, 0x5f, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x53, 0x10, - 0x91, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x53, - 0x10, 0x92, 0x02, 0x12, 0x10, 0x0a, 0x0b, 0x53, 0x51, 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x45, - 0x4e, 0x54, 0x10, 0x93, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x43, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x45, - 0x4e, 0x54, 0x10, 0x94, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x41, 0x42, 0x4f, 0x52, 0x54, 0x5f, 0x50, - 0x10, 0x95, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x41, 0x42, 0x53, 0x4f, 0x4c, 0x55, 0x54, 0x45, 0x5f, - 0x50, 0x10, 0x96, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x97, - 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x98, 0x02, 0x12, 0x0a, - 0x0a, 0x05, 0x41, 0x44, 0x44, 0x5f, 0x50, 0x10, 0x99, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x41, 0x44, - 0x4d, 0x49, 0x4e, 0x10, 0x9a, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x41, 0x46, 0x54, 0x45, 0x52, 0x10, - 0x9b, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x41, 0x47, 0x47, 0x52, 0x45, 0x47, 0x41, 0x54, 0x45, 0x10, - 0x9c, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x41, 0x4c, 0x4c, 0x10, 0x9d, 0x02, 0x12, 0x09, 0x0a, 0x04, - 0x41, 0x4c, 0x53, 0x4f, 0x10, 0x9e, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x41, 0x4c, 0x54, 0x45, 0x52, - 0x10, 0x9f, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x4c, 0x57, 0x41, 0x59, 0x53, 0x10, 0xa0, 0x02, - 0x12, 0x0c, 0x0a, 0x07, 0x41, 0x4e, 0x41, 0x4c, 0x59, 0x53, 0x45, 0x10, 0xa1, 0x02, 0x12, 0x0c, - 0x0a, 0x07, 0x41, 0x4e, 0x41, 0x4c, 0x59, 0x5a, 0x45, 0x10, 0xa2, 0x02, 0x12, 0x08, 0x0a, 0x03, - 0x41, 0x4e, 0x44, 0x10, 0xa3, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x41, 0x4e, 0x59, 0x10, 0xa4, 0x02, - 0x12, 0x0a, 0x0a, 0x05, 0x41, 0x52, 0x52, 0x41, 0x59, 0x10, 0xa5, 0x02, 0x12, 0x07, 0x0a, 0x02, - 0x41, 0x53, 0x10, 0xa6, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x41, 0x53, 0x43, 0x10, 0xa7, 0x02, 0x12, - 0x0f, 0x0a, 0x0a, 0x41, 0x53, 0x45, 0x4e, 0x53, 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 0xa8, 0x02, - 0x12, 0x0e, 0x0a, 0x09, 0x41, 0x53, 0x53, 0x45, 0x52, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xa9, 0x02, - 0x12, 0x0f, 0x0a, 0x0a, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0xaa, - 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x41, 0x53, 0x59, 0x4d, 0x4d, 0x45, 0x54, 0x52, 0x49, 0x43, 0x10, - 0xab, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x54, 0x4f, 0x4d, 0x49, 0x43, 0x10, 0xac, 0x02, 0x12, - 0x07, 0x0a, 0x02, 0x41, 0x54, 0x10, 0xad, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x54, 0x54, 0x41, - 0x43, 0x48, 0x10, 0xae, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, - 0x54, 0x45, 0x10, 0xaf, 0x02, 0x12, 0x12, 0x0a, 0x0d, 0x41, 0x55, 0x54, 0x48, 0x4f, 0x52, 0x49, - 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xb0, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x42, 0x41, 0x43, - 0x4b, 0x57, 0x41, 0x52, 0x44, 0x10, 0xb1, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x42, 0x45, 0x46, 0x4f, - 0x52, 0x45, 0x10, 0xb2, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x5f, 0x50, - 0x10, 0xb3, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x42, 0x45, 0x54, 0x57, 0x45, 0x45, 0x4e, 0x10, 0xb4, - 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x42, 0x49, 0x47, 0x49, 0x4e, 0x54, 0x10, 0xb5, 0x02, 0x12, 0x0b, - 0x0a, 0x06, 0x42, 0x49, 0x4e, 0x41, 0x52, 0x59, 0x10, 0xb6, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x42, - 0x49, 0x54, 0x10, 0xb7, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x42, 0x4f, 0x4f, 0x4c, 0x45, 0x41, 0x4e, - 0x5f, 0x50, 0x10, 0xb8, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x42, 0x4f, 0x54, 0x48, 0x10, 0xb9, 0x02, - 0x12, 0x0c, 0x0a, 0x07, 0x42, 0x52, 0x45, 0x41, 0x44, 0x54, 0x48, 0x10, 0xba, 0x02, 0x12, 0x07, - 0x0a, 0x02, 0x42, 0x59, 0x10, 0xbb, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x41, 0x43, 0x48, 0x45, - 0x10, 0xbc, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, 0x41, 0x4c, 0x4c, 0x10, 0xbd, 0x02, 0x12, 0x0b, - 0x0a, 0x06, 0x43, 0x41, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0xbe, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x43, - 0x41, 0x53, 0x43, 0x41, 0x44, 0x45, 0x10, 0xbf, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x43, 0x41, 0x53, - 0x43, 0x41, 0x44, 0x45, 0x44, 0x10, 0xc0, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, 0x41, 0x53, 0x45, - 0x10, 0xc1, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, 0x41, 0x53, 0x54, 0x10, 0xc2, 0x02, 0x12, 0x0e, - 0x0a, 0x09, 0x43, 0x41, 0x54, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x50, 0x10, 0xc3, 0x02, 0x12, 0x0a, - 0x0a, 0x05, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0xc4, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x43, 0x48, - 0x41, 0x52, 0x5f, 0x50, 0x10, 0xc5, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x43, 0x48, 0x41, 0x52, 0x41, - 0x43, 0x54, 0x45, 0x52, 0x10, 0xc6, 0x02, 0x12, 0x14, 0x0a, 0x0f, 0x43, 0x48, 0x41, 0x52, 0x41, - 0x43, 0x54, 0x45, 0x52, 0x49, 0x53, 0x54, 0x49, 0x43, 0x53, 0x10, 0xc7, 0x02, 0x12, 0x0a, 0x0a, - 0x05, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0xc8, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x43, 0x48, 0x45, - 0x43, 0x4b, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0xc9, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x4c, - 0x41, 0x53, 0x53, 0x10, 0xca, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x10, - 0xcb, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x10, 0xcc, 0x02, - 0x12, 0x0d, 0x0a, 0x08, 0x43, 0x4f, 0x41, 0x4c, 0x45, 0x53, 0x43, 0x45, 0x10, 0xcd, 0x02, 0x12, - 0x0c, 0x0a, 0x07, 0x43, 0x4f, 0x4c, 0x4c, 0x41, 0x54, 0x45, 0x10, 0xce, 0x02, 0x12, 0x0e, 0x0a, - 0x09, 0x43, 0x4f, 0x4c, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xcf, 0x02, 0x12, 0x0b, 0x0a, - 0x06, 0x43, 0x4f, 0x4c, 0x55, 0x4d, 0x4e, 0x10, 0xd0, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x43, 0x4f, - 0x4c, 0x55, 0x4d, 0x4e, 0x53, 0x10, 0xd1, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x43, 0x4f, 0x4d, 0x4d, - 0x45, 0x4e, 0x54, 0x10, 0xd2, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x4d, 0x45, 0x4e, - 0x54, 0x53, 0x10, 0xd3, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x10, - 0xd4, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, - 0xd5, 0x02, 0x12, 0x10, 0x0a, 0x0b, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, - 0x4e, 0x10, 0xd6, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x43, 0x4f, 0x4e, 0x43, 0x55, 0x52, 0x52, 0x45, - 0x4e, 0x54, 0x4c, 0x59, 0x10, 0xd7, 0x02, 0x12, 0x12, 0x0a, 0x0d, 0x43, 0x4f, 0x4e, 0x46, 0x49, - 0x47, 0x55, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xd8, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x43, - 0x4f, 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, 0x10, 0xd9, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x43, 0x4f, - 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xda, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x43, - 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x54, 0x10, 0xdb, 0x02, 0x12, 0x10, 0x0a, 0x0b, - 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x54, 0x53, 0x10, 0xdc, 0x02, 0x12, 0x0e, - 0x0a, 0x09, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x10, 0xdd, 0x02, 0x12, 0x0f, - 0x0a, 0x0a, 0x43, 0x4f, 0x4e, 0x54, 0x49, 0x4e, 0x55, 0x45, 0x5f, 0x50, 0x10, 0xde, 0x02, 0x12, - 0x11, 0x0a, 0x0c, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x10, - 0xdf, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, 0x4f, 0x50, 0x59, 0x10, 0xe0, 0x02, 0x12, 0x09, 0x0a, - 0x04, 0x43, 0x4f, 0x53, 0x54, 0x10, 0xe1, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x43, 0x52, 0x45, 0x41, - 0x54, 0x45, 0x10, 0xe2, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x52, 0x4f, 0x53, 0x53, 0x10, 0xe3, - 0x02, 0x12, 0x08, 0x0a, 0x03, 0x43, 0x53, 0x56, 0x10, 0xe4, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, - 0x55, 0x42, 0x45, 0x10, 0xe5, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, - 0x54, 0x5f, 0x50, 0x10, 0xe6, 0x02, 0x12, 0x14, 0x0a, 0x0f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, - 0x54, 0x5f, 0x43, 0x41, 0x54, 0x41, 0x4c, 0x4f, 0x47, 0x10, 0xe7, 0x02, 0x12, 0x11, 0x0a, 0x0c, - 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x41, 0x54, 0x45, 0x10, 0xe8, 0x02, 0x12, - 0x11, 0x0a, 0x0c, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, - 0xe9, 0x02, 0x12, 0x13, 0x0a, 0x0e, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x43, - 0x48, 0x45, 0x4d, 0x41, 0x10, 0xea, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x43, 0x55, 0x52, 0x52, 0x45, - 0x4e, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0xeb, 0x02, 0x12, 0x16, 0x0a, 0x11, 0x43, 0x55, - 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, - 0xec, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x53, - 0x45, 0x52, 0x10, 0xed, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x43, 0x55, 0x52, 0x53, 0x4f, 0x52, 0x10, - 0xee, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x59, 0x43, 0x4c, 0x45, 0x10, 0xef, 0x02, 0x12, 0x0b, - 0x0a, 0x06, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x50, 0x10, 0xf0, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x44, - 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, 0xf1, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x44, 0x41, - 0x59, 0x5f, 0x50, 0x10, 0xf2, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x44, 0x45, 0x41, 0x4c, 0x4c, 0x4f, - 0x43, 0x41, 0x54, 0x45, 0x10, 0xf3, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x44, 0x45, 0x43, 0x10, 0xf4, - 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x44, 0x45, 0x43, 0x49, 0x4d, 0x41, 0x4c, 0x5f, 0x50, 0x10, 0xf5, - 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x44, 0x45, 0x43, 0x4c, 0x41, 0x52, 0x45, 0x10, 0xf6, 0x02, 0x12, - 0x0c, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0xf7, 0x02, 0x12, 0x0d, 0x0a, - 0x08, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x53, 0x10, 0xf8, 0x02, 0x12, 0x0f, 0x0a, 0x0a, - 0x44, 0x45, 0x46, 0x45, 0x52, 0x52, 0x41, 0x42, 0x4c, 0x45, 0x10, 0xf9, 0x02, 0x12, 0x0d, 0x0a, - 0x08, 0x44, 0x45, 0x46, 0x45, 0x52, 0x52, 0x45, 0x44, 0x10, 0xfa, 0x02, 0x12, 0x0c, 0x0a, 0x07, - 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x52, 0x10, 0xfb, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x44, 0x45, - 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x50, 0x10, 0xfc, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x44, 0x45, 0x4c, - 0x49, 0x4d, 0x49, 0x54, 0x45, 0x52, 0x10, 0xfd, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x44, 0x45, 0x4c, - 0x49, 0x4d, 0x49, 0x54, 0x45, 0x52, 0x53, 0x10, 0xfe, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x44, 0x45, - 0x50, 0x45, 0x4e, 0x44, 0x53, 0x10, 0xff, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x44, 0x45, 0x50, 0x54, - 0x48, 0x10, 0x80, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x44, 0x45, 0x53, 0x43, 0x10, 0x81, 0x03, 0x12, - 0x0b, 0x0a, 0x06, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x10, 0x82, 0x03, 0x12, 0x0f, 0x0a, 0x0a, - 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x83, 0x03, 0x12, 0x0e, 0x0a, - 0x09, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x50, 0x10, 0x84, 0x03, 0x12, 0x0c, 0x0a, - 0x07, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x10, 0x85, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x44, - 0x49, 0x53, 0x54, 0x49, 0x4e, 0x43, 0x54, 0x10, 0x86, 0x03, 0x12, 0x07, 0x0a, 0x02, 0x44, 0x4f, - 0x10, 0x87, 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x44, 0x4f, 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x5f, - 0x50, 0x10, 0x88, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x44, 0x4f, 0x4d, 0x41, 0x49, 0x4e, 0x5f, 0x50, - 0x10, 0x89, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x5f, 0x50, 0x10, - 0x8a, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x44, 0x52, 0x4f, 0x50, 0x10, 0x8b, 0x03, 0x12, 0x09, 0x0a, - 0x04, 0x45, 0x41, 0x43, 0x48, 0x10, 0x8c, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x45, 0x4c, 0x53, 0x45, - 0x10, 0x8d, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x50, 0x10, - 0x8e, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x8f, - 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x45, 0x44, 0x10, 0x90, - 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x45, 0x4e, 0x44, 0x5f, 0x50, 0x10, 0x91, 0x03, 0x12, 0x0b, 0x0a, - 0x06, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x50, 0x10, 0x92, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x45, 0x53, - 0x43, 0x41, 0x50, 0x45, 0x10, 0x93, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x10, 0x94, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, 0x10, 0x95, 0x03, - 0x12, 0x0c, 0x0a, 0x07, 0x45, 0x58, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x10, 0x96, 0x03, 0x12, 0x0e, - 0x0a, 0x09, 0x45, 0x58, 0x43, 0x4c, 0x55, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x97, 0x03, 0x12, 0x0e, - 0x0a, 0x09, 0x45, 0x58, 0x43, 0x4c, 0x55, 0x53, 0x49, 0x56, 0x45, 0x10, 0x98, 0x03, 0x12, 0x0c, - 0x0a, 0x07, 0x45, 0x58, 0x45, 0x43, 0x55, 0x54, 0x45, 0x10, 0x99, 0x03, 0x12, 0x0b, 0x0a, 0x06, - 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x10, 0x9a, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x45, 0x58, 0x50, - 0x4c, 0x41, 0x49, 0x4e, 0x10, 0x9b, 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x45, 0x58, 0x50, 0x52, 0x45, - 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x9c, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x45, 0x58, 0x54, 0x45, - 0x4e, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x9d, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x45, 0x58, 0x54, 0x45, - 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x9e, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x45, 0x58, 0x54, 0x52, 0x41, - 0x43, 0x54, 0x10, 0x9f, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x5f, 0x50, - 0x10, 0xa0, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x46, 0x41, 0x4d, 0x49, 0x4c, 0x59, 0x10, 0xa1, 0x03, - 0x12, 0x0a, 0x0a, 0x05, 0x46, 0x45, 0x54, 0x43, 0x48, 0x10, 0xa2, 0x03, 0x12, 0x0b, 0x0a, 0x06, - 0x46, 0x49, 0x4c, 0x54, 0x45, 0x52, 0x10, 0xa3, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x46, 0x49, 0x4e, - 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x10, 0xa4, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x49, 0x52, 0x53, - 0x54, 0x5f, 0x50, 0x10, 0xa5, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x5f, - 0x50, 0x10, 0xa6, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x46, 0x4f, 0x4c, 0x4c, 0x4f, 0x57, 0x49, 0x4e, - 0x47, 0x10, 0xa7, 0x03, 0x12, 0x08, 0x0a, 0x03, 0x46, 0x4f, 0x52, 0x10, 0xa8, 0x03, 0x12, 0x0a, - 0x0a, 0x05, 0x46, 0x4f, 0x52, 0x43, 0x45, 0x10, 0xa9, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x4f, - 0x52, 0x45, 0x49, 0x47, 0x4e, 0x10, 0xaa, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x4f, 0x52, 0x57, - 0x41, 0x52, 0x44, 0x10, 0xab, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x46, 0x52, 0x45, 0x45, 0x5a, 0x45, - 0x10, 0xac, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x46, 0x52, 0x4f, 0x4d, 0x10, 0xad, 0x03, 0x12, 0x09, - 0x0a, 0x04, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0xae, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x46, 0x55, 0x4e, - 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xaf, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x46, 0x55, 0x4e, 0x43, - 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x10, 0xb0, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x47, 0x45, 0x4e, 0x45, - 0x52, 0x41, 0x54, 0x45, 0x44, 0x10, 0xb1, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x47, 0x4c, 0x4f, 0x42, - 0x41, 0x4c, 0x10, 0xb2, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x10, 0xb3, - 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x45, 0x44, 0x10, 0xb4, 0x03, 0x12, - 0x0d, 0x0a, 0x08, 0x47, 0x52, 0x45, 0x41, 0x54, 0x45, 0x53, 0x54, 0x10, 0xb5, 0x03, 0x12, 0x0c, - 0x0a, 0x07, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x50, 0x10, 0xb6, 0x03, 0x12, 0x0d, 0x0a, 0x08, - 0x47, 0x52, 0x4f, 0x55, 0x50, 0x49, 0x4e, 0x47, 0x10, 0xb7, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x47, - 0x52, 0x4f, 0x55, 0x50, 0x53, 0x10, 0xb8, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x48, 0x41, 0x4e, 0x44, - 0x4c, 0x45, 0x52, 0x10, 0xb9, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x48, 0x41, 0x56, 0x49, 0x4e, 0x47, - 0x10, 0xba, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x5f, 0x50, 0x10, - 0xbb, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x48, 0x4f, 0x4c, 0x44, 0x10, 0xbc, 0x03, 0x12, 0x0b, 0x0a, - 0x06, 0x48, 0x4f, 0x55, 0x52, 0x5f, 0x50, 0x10, 0xbd, 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x49, 0x44, - 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x10, 0xbe, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x49, - 0x46, 0x5f, 0x50, 0x10, 0xbf, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x49, 0x4c, 0x49, 0x4b, 0x45, 0x10, - 0xc0, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, - 0xc1, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, 0x4d, 0x4d, 0x55, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, - 0xc2, 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x5f, 0x50, - 0x10, 0xc3, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x50, 0x10, - 0xc4, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x49, 0x4e, 0x5f, 0x50, 0x10, 0xc5, 0x03, 0x12, 0x0c, 0x0a, - 0x07, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x10, 0xc6, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, - 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x49, 0x4e, 0x47, 0x10, 0xc7, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, - 0x4e, 0x43, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0xc8, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x49, - 0x4e, 0x44, 0x45, 0x58, 0x10, 0xc9, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x44, 0x45, 0x58, - 0x45, 0x53, 0x10, 0xca, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x48, 0x45, 0x52, 0x49, 0x54, - 0x10, 0xcb, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x49, 0x4e, 0x48, 0x45, 0x52, 0x49, 0x54, 0x53, 0x10, - 0xcc, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x4c, 0x4c, 0x59, 0x10, - 0xcd, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x49, 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x5f, 0x50, 0x10, 0xce, - 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x4e, 0x45, 0x52, 0x5f, 0x50, 0x10, 0xcf, 0x03, 0x12, - 0x0a, 0x0a, 0x05, 0x49, 0x4e, 0x4f, 0x55, 0x54, 0x10, 0xd0, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, - 0x4e, 0x50, 0x55, 0x54, 0x5f, 0x50, 0x10, 0xd1, 0x03, 0x12, 0x10, 0x0a, 0x0b, 0x49, 0x4e, 0x53, - 0x45, 0x4e, 0x53, 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 0xd2, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x49, - 0x4e, 0x53, 0x45, 0x52, 0x54, 0x10, 0xd3, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x53, 0x54, - 0x45, 0x41, 0x44, 0x10, 0xd4, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x5f, 0x50, 0x10, - 0xd5, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x54, 0x45, 0x47, 0x45, 0x52, 0x10, 0xd6, 0x03, - 0x12, 0x0e, 0x0a, 0x09, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x53, 0x45, 0x43, 0x54, 0x10, 0xd7, 0x03, - 0x12, 0x0d, 0x0a, 0x08, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x56, 0x41, 0x4c, 0x10, 0xd8, 0x03, 0x12, - 0x09, 0x0a, 0x04, 0x49, 0x4e, 0x54, 0x4f, 0x10, 0xd9, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, - 0x56, 0x4f, 0x4b, 0x45, 0x52, 0x10, 0xda, 0x03, 0x12, 0x07, 0x0a, 0x02, 0x49, 0x53, 0x10, 0xdb, - 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x49, 0x53, 0x4e, 0x55, 0x4c, 0x4c, 0x10, 0xdc, 0x03, 0x12, 0x0e, - 0x0a, 0x09, 0x49, 0x53, 0x4f, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xdd, 0x03, 0x12, 0x09, - 0x0a, 0x04, 0x4a, 0x4f, 0x49, 0x4e, 0x10, 0xde, 0x03, 0x12, 0x08, 0x0a, 0x03, 0x4b, 0x45, 0x59, - 0x10, 0xdf, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x10, 0xe0, 0x03, 0x12, - 0x0d, 0x0a, 0x08, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x10, 0xe1, 0x03, 0x12, 0x0c, - 0x0a, 0x07, 0x4c, 0x41, 0x52, 0x47, 0x45, 0x5f, 0x50, 0x10, 0xe2, 0x03, 0x12, 0x0b, 0x0a, 0x06, - 0x4c, 0x41, 0x53, 0x54, 0x5f, 0x50, 0x10, 0xe3, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x4c, 0x41, 0x54, - 0x45, 0x52, 0x41, 0x4c, 0x5f, 0x50, 0x10, 0xe4, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x4c, 0x45, 0x41, - 0x44, 0x49, 0x4e, 0x47, 0x10, 0xe5, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x4c, 0x45, 0x41, 0x4b, 0x50, - 0x52, 0x4f, 0x4f, 0x46, 0x10, 0xe6, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x4c, 0x45, 0x41, 0x53, 0x54, - 0x10, 0xe7, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x4c, 0x45, 0x46, 0x54, 0x10, 0xe8, 0x03, 0x12, 0x0a, - 0x0a, 0x05, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x10, 0xe9, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x4c, 0x49, - 0x4b, 0x45, 0x10, 0xea, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x10, 0xeb, - 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x4c, 0x49, 0x53, 0x54, 0x45, 0x4e, 0x10, 0xec, 0x03, 0x12, 0x09, - 0x0a, 0x04, 0x4c, 0x4f, 0x41, 0x44, 0x10, 0xed, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x4c, 0x4f, 0x43, - 0x41, 0x4c, 0x10, 0xee, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x54, 0x49, - 0x4d, 0x45, 0x10, 0xef, 0x03, 0x12, 0x13, 0x0a, 0x0e, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x54, 0x49, - 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0xf0, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x4c, 0x4f, - 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xf1, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x4c, 0x4f, 0x43, - 0x4b, 0x5f, 0x50, 0x10, 0xf2, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, - 0x10, 0xf3, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x4c, 0x4f, 0x47, 0x47, 0x45, 0x44, 0x10, 0xf4, 0x03, - 0x12, 0x0c, 0x0a, 0x07, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0xf5, 0x03, 0x12, 0x0a, - 0x0a, 0x05, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0xf6, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x4d, 0x41, - 0x54, 0x43, 0x48, 0x45, 0x44, 0x10, 0xf7, 0x03, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x41, 0x54, 0x45, - 0x52, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x44, 0x10, 0xf8, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x4d, - 0x41, 0x58, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0xf9, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x4d, 0x45, - 0x52, 0x47, 0x45, 0x10, 0xfa, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, - 0x10, 0xfb, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x4d, 0x49, 0x4e, 0x55, 0x54, 0x45, 0x5f, 0x50, 0x10, - 0xfc, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x4d, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0xfd, - 0x03, 0x12, 0x09, 0x0a, 0x04, 0x4d, 0x4f, 0x44, 0x45, 0x10, 0xfe, 0x03, 0x12, 0x0c, 0x0a, 0x07, - 0x4d, 0x4f, 0x4e, 0x54, 0x48, 0x5f, 0x50, 0x10, 0xff, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x4d, 0x4f, - 0x56, 0x45, 0x10, 0x80, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x10, - 0x81, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x4e, 0x41, 0x4d, 0x45, 0x53, 0x10, 0x82, 0x04, 0x12, 0x0d, - 0x0a, 0x08, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x83, 0x04, 0x12, 0x0c, 0x0a, - 0x07, 0x4e, 0x41, 0x54, 0x55, 0x52, 0x41, 0x4c, 0x10, 0x84, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x4e, - 0x43, 0x48, 0x41, 0x52, 0x10, 0x85, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4e, 0x45, 0x57, 0x10, 0x86, - 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4e, 0x45, 0x58, 0x54, 0x10, 0x87, 0x04, 0x12, 0x08, 0x0a, 0x03, - 0x4e, 0x46, 0x43, 0x10, 0x88, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4e, 0x46, 0x44, 0x10, 0x89, 0x04, - 0x12, 0x09, 0x0a, 0x04, 0x4e, 0x46, 0x4b, 0x43, 0x10, 0x8a, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4e, - 0x46, 0x4b, 0x44, 0x10, 0x8b, 0x04, 0x12, 0x07, 0x0a, 0x02, 0x4e, 0x4f, 0x10, 0x8c, 0x04, 0x12, - 0x09, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x8d, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x4e, 0x4f, - 0x52, 0x4d, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x10, 0x8e, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x4e, 0x4f, - 0x52, 0x4d, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x44, 0x10, 0x8f, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4e, - 0x4f, 0x54, 0x10, 0x90, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4e, 0x4f, 0x54, 0x48, 0x49, 0x4e, 0x47, - 0x10, 0x91, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x10, 0x92, 0x04, - 0x12, 0x0c, 0x0a, 0x07, 0x4e, 0x4f, 0x54, 0x4e, 0x55, 0x4c, 0x4c, 0x10, 0x93, 0x04, 0x12, 0x0b, - 0x0a, 0x06, 0x4e, 0x4f, 0x57, 0x41, 0x49, 0x54, 0x10, 0x94, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4e, - 0x55, 0x4c, 0x4c, 0x5f, 0x50, 0x10, 0x95, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4e, 0x55, 0x4c, 0x4c, - 0x49, 0x46, 0x10, 0x96, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x50, - 0x10, 0x97, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43, 0x10, 0x98, - 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x10, 0x99, 0x04, - 0x12, 0x07, 0x0a, 0x02, 0x4f, 0x46, 0x10, 0x9a, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4f, 0x46, 0x46, - 0x10, 0x9b, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x10, 0x9c, 0x04, - 0x12, 0x09, 0x0a, 0x04, 0x4f, 0x49, 0x44, 0x53, 0x10, 0x9d, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4f, - 0x4c, 0x44, 0x10, 0x9e, 0x04, 0x12, 0x07, 0x0a, 0x02, 0x4f, 0x4e, 0x10, 0x9f, 0x04, 0x12, 0x09, - 0x0a, 0x04, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0xa0, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x4f, 0x50, 0x45, - 0x52, 0x41, 0x54, 0x4f, 0x52, 0x10, 0xa1, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4f, 0x50, 0x54, 0x49, - 0x4f, 0x4e, 0x10, 0xa2, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x53, - 0x10, 0xa3, 0x04, 0x12, 0x07, 0x0a, 0x02, 0x4f, 0x52, 0x10, 0xa4, 0x04, 0x12, 0x0a, 0x0a, 0x05, - 0x4f, 0x52, 0x44, 0x45, 0x52, 0x10, 0xa5, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x4f, 0x52, 0x44, 0x49, - 0x4e, 0x41, 0x4c, 0x49, 0x54, 0x59, 0x10, 0xa6, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4f, 0x54, 0x48, - 0x45, 0x52, 0x53, 0x10, 0xa7, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x4f, 0x55, 0x54, 0x5f, 0x50, 0x10, - 0xa8, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4f, 0x55, 0x54, 0x45, 0x52, 0x5f, 0x50, 0x10, 0xa9, 0x04, - 0x12, 0x09, 0x0a, 0x04, 0x4f, 0x56, 0x45, 0x52, 0x10, 0xaa, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x4f, - 0x56, 0x45, 0x52, 0x4c, 0x41, 0x50, 0x53, 0x10, 0xab, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4f, 0x56, - 0x45, 0x52, 0x4c, 0x41, 0x59, 0x10, 0xac, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x4f, 0x56, 0x45, 0x52, - 0x52, 0x49, 0x44, 0x49, 0x4e, 0x47, 0x10, 0xad, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x4f, 0x57, 0x4e, - 0x45, 0x44, 0x10, 0xae, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x4f, 0x57, 0x4e, 0x45, 0x52, 0x10, 0xaf, - 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x50, 0x41, 0x52, 0x41, 0x4c, 0x4c, 0x45, 0x4c, 0x10, 0xb0, 0x04, - 0x12, 0x0e, 0x0a, 0x09, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x45, 0x54, 0x45, 0x52, 0x10, 0xb1, 0x04, - 0x12, 0x0b, 0x0a, 0x06, 0x50, 0x41, 0x52, 0x53, 0x45, 0x52, 0x10, 0xb2, 0x04, 0x12, 0x0c, 0x0a, - 0x07, 0x50, 0x41, 0x52, 0x54, 0x49, 0x41, 0x4c, 0x10, 0xb3, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x50, - 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xb4, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, - 0x41, 0x53, 0x53, 0x49, 0x4e, 0x47, 0x10, 0xb5, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x50, 0x41, 0x53, - 0x53, 0x57, 0x4f, 0x52, 0x44, 0x10, 0xb6, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, 0x4c, 0x41, 0x43, - 0x49, 0x4e, 0x47, 0x10, 0xb7, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x50, 0x4c, 0x41, 0x4e, 0x53, 0x10, - 0xb8, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x10, 0xb9, 0x04, 0x12, - 0x0d, 0x0a, 0x08, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xba, 0x04, 0x12, 0x0e, - 0x0a, 0x09, 0x50, 0x52, 0x45, 0x43, 0x45, 0x44, 0x49, 0x4e, 0x47, 0x10, 0xbb, 0x04, 0x12, 0x0e, - 0x0a, 0x09, 0x50, 0x52, 0x45, 0x43, 0x49, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0xbc, 0x04, 0x12, 0x0d, - 0x0a, 0x08, 0x50, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x45, 0x10, 0xbd, 0x04, 0x12, 0x0c, 0x0a, - 0x07, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x10, 0xbe, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x50, - 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x44, 0x10, 0xbf, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, 0x52, - 0x49, 0x4d, 0x41, 0x52, 0x59, 0x10, 0xc0, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x50, 0x52, 0x49, 0x4f, - 0x52, 0x10, 0xc1, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x50, 0x52, 0x49, 0x56, 0x49, 0x4c, 0x45, 0x47, - 0x45, 0x53, 0x10, 0xc2, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, 0x55, - 0x52, 0x41, 0x4c, 0x10, 0xc3, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, - 0x55, 0x52, 0x45, 0x10, 0xc4, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, - 0x55, 0x52, 0x45, 0x53, 0x10, 0xc5, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, 0x52, 0x4f, 0x47, 0x52, - 0x41, 0x4d, 0x10, 0xc6, 0x04, 0x12, 0x10, 0x0a, 0x0b, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, - 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xc7, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x51, 0x55, 0x4f, 0x54, 0x45, - 0x10, 0xc8, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x52, 0x41, 0x4e, 0x47, 0x45, 0x10, 0xc9, 0x04, 0x12, - 0x09, 0x0a, 0x04, 0x52, 0x45, 0x41, 0x44, 0x10, 0xca, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x52, 0x45, - 0x41, 0x4c, 0x10, 0xcb, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x52, 0x45, 0x41, 0x53, 0x53, 0x49, 0x47, - 0x4e, 0x10, 0xcc, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, - 0xcd, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x52, 0x45, 0x43, 0x55, 0x52, 0x53, 0x49, 0x56, 0x45, 0x10, - 0xce, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x52, 0x45, 0x46, 0x5f, 0x50, 0x10, 0xcf, 0x04, 0x12, 0x0f, - 0x0a, 0x0a, 0x52, 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x53, 0x10, 0xd0, 0x04, 0x12, - 0x10, 0x0a, 0x0b, 0x52, 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x49, 0x4e, 0x47, 0x10, 0xd1, - 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x46, 0x52, 0x45, 0x53, 0x48, 0x10, 0xd2, 0x04, 0x12, - 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x10, 0xd3, 0x04, 0x12, 0x0f, 0x0a, - 0x0a, 0x52, 0x45, 0x4c, 0x41, 0x54, 0x49, 0x56, 0x45, 0x5f, 0x50, 0x10, 0xd4, 0x04, 0x12, 0x0c, - 0x0a, 0x07, 0x52, 0x45, 0x4c, 0x45, 0x41, 0x53, 0x45, 0x10, 0xd5, 0x04, 0x12, 0x0b, 0x0a, 0x06, - 0x52, 0x45, 0x4e, 0x41, 0x4d, 0x45, 0x10, 0xd6, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x52, 0x45, 0x50, - 0x45, 0x41, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0xd7, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, - 0x50, 0x4c, 0x41, 0x43, 0x45, 0x10, 0xd8, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x50, 0x4c, - 0x49, 0x43, 0x41, 0x10, 0xd9, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x52, 0x45, 0x53, 0x45, 0x54, 0x10, - 0xda, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0xdb, 0x04, - 0x12, 0x0d, 0x0a, 0x08, 0x52, 0x45, 0x53, 0x54, 0x52, 0x49, 0x43, 0x54, 0x10, 0xdc, 0x04, 0x12, - 0x0b, 0x0a, 0x06, 0x52, 0x45, 0x54, 0x55, 0x52, 0x4e, 0x10, 0xdd, 0x04, 0x12, 0x0e, 0x0a, 0x09, - 0x52, 0x45, 0x54, 0x55, 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0xde, 0x04, 0x12, 0x0c, 0x0a, 0x07, - 0x52, 0x45, 0x54, 0x55, 0x52, 0x4e, 0x53, 0x10, 0xdf, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x52, 0x45, - 0x56, 0x4f, 0x4b, 0x45, 0x10, 0xe0, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x52, 0x49, 0x47, 0x48, 0x54, - 0x10, 0xe1, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0xe2, 0x04, 0x12, 0x0d, - 0x0a, 0x08, 0x52, 0x4f, 0x4c, 0x4c, 0x42, 0x41, 0x43, 0x4b, 0x10, 0xe3, 0x04, 0x12, 0x0b, 0x0a, - 0x06, 0x52, 0x4f, 0x4c, 0x4c, 0x55, 0x50, 0x10, 0xe4, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x4f, - 0x55, 0x54, 0x49, 0x4e, 0x45, 0x10, 0xe5, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x52, 0x4f, 0x55, 0x54, - 0x49, 0x4e, 0x45, 0x53, 0x10, 0xe6, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x52, 0x4f, 0x57, 0x10, 0xe7, - 0x04, 0x12, 0x09, 0x0a, 0x04, 0x52, 0x4f, 0x57, 0x53, 0x10, 0xe8, 0x04, 0x12, 0x09, 0x0a, 0x04, - 0x52, 0x55, 0x4c, 0x45, 0x10, 0xe9, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x53, 0x41, 0x56, 0x45, 0x50, - 0x4f, 0x49, 0x4e, 0x54, 0x10, 0xea, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x43, 0x48, 0x45, 0x4d, - 0x41, 0x10, 0xeb, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x53, 0x10, - 0xec, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x43, 0x52, 0x4f, 0x4c, 0x4c, 0x10, 0xed, 0x04, 0x12, - 0x0b, 0x0a, 0x06, 0x53, 0x45, 0x41, 0x52, 0x43, 0x48, 0x10, 0xee, 0x04, 0x12, 0x0d, 0x0a, 0x08, - 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x5f, 0x50, 0x10, 0xef, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x53, - 0x45, 0x43, 0x55, 0x52, 0x49, 0x54, 0x59, 0x10, 0xf0, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x45, - 0x4c, 0x45, 0x43, 0x54, 0x10, 0xf1, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x53, 0x45, 0x51, 0x55, 0x45, - 0x4e, 0x43, 0x45, 0x10, 0xf2, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x53, 0x45, 0x51, 0x55, 0x45, 0x4e, - 0x43, 0x45, 0x53, 0x10, 0xf3, 0x04, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, - 0x49, 0x5a, 0x41, 0x42, 0x4c, 0x45, 0x10, 0xf4, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x45, 0x52, - 0x56, 0x45, 0x52, 0x10, 0xf5, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, - 0x4e, 0x10, 0xf6, 0x04, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, - 0x55, 0x53, 0x45, 0x52, 0x10, 0xf7, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x53, 0x45, 0x54, 0x10, 0xf8, - 0x04, 0x12, 0x09, 0x0a, 0x04, 0x53, 0x45, 0x54, 0x53, 0x10, 0xf9, 0x04, 0x12, 0x0a, 0x0a, 0x05, - 0x53, 0x45, 0x54, 0x4f, 0x46, 0x10, 0xfa, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x53, 0x48, 0x41, 0x52, - 0x45, 0x10, 0xfb, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x53, 0x48, 0x4f, 0x57, 0x10, 0xfc, 0x04, 0x12, - 0x0c, 0x0a, 0x07, 0x53, 0x49, 0x4d, 0x49, 0x4c, 0x41, 0x52, 0x10, 0xfd, 0x04, 0x12, 0x0b, 0x0a, - 0x06, 0x53, 0x49, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0xfe, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x53, 0x4b, - 0x49, 0x50, 0x10, 0xff, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x53, 0x4d, 0x41, 0x4c, 0x4c, 0x49, 0x4e, - 0x54, 0x10, 0x80, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, - 0x10, 0x81, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x53, 0x4f, 0x4d, 0x45, 0x10, 0x82, 0x05, 0x12, 0x0a, - 0x0a, 0x05, 0x53, 0x51, 0x4c, 0x5f, 0x50, 0x10, 0x83, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x54, - 0x41, 0x42, 0x4c, 0x45, 0x10, 0x84, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x54, 0x41, 0x4e, 0x44, - 0x41, 0x4c, 0x4f, 0x4e, 0x45, 0x5f, 0x50, 0x10, 0x85, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x53, 0x54, - 0x41, 0x52, 0x54, 0x10, 0x86, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x53, 0x54, 0x41, 0x54, 0x45, 0x4d, - 0x45, 0x4e, 0x54, 0x10, 0x87, 0x05, 0x12, 0x0f, 0x0a, 0x0a, 0x53, 0x54, 0x41, 0x54, 0x49, 0x53, - 0x54, 0x49, 0x43, 0x53, 0x10, 0x88, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x53, 0x54, 0x44, 0x49, 0x4e, - 0x10, 0x89, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x54, 0x44, 0x4f, 0x55, 0x54, 0x10, 0x8a, 0x05, - 0x12, 0x0c, 0x0a, 0x07, 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x10, 0x8b, 0x05, 0x12, 0x0b, - 0x0a, 0x06, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x44, 0x10, 0x8c, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x53, - 0x54, 0x52, 0x49, 0x43, 0x54, 0x5f, 0x50, 0x10, 0x8d, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x53, 0x54, - 0x52, 0x49, 0x50, 0x5f, 0x50, 0x10, 0x8e, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x55, 0x42, 0x53, - 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x8f, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x53, - 0x55, 0x42, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x90, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x53, - 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x91, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x53, 0x59, 0x4d, - 0x4d, 0x45, 0x54, 0x52, 0x49, 0x43, 0x10, 0x92, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x53, 0x59, 0x53, - 0x49, 0x44, 0x10, 0x93, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x5f, - 0x50, 0x10, 0x94, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x95, 0x05, - 0x12, 0x0b, 0x0a, 0x06, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, 0x10, 0x96, 0x05, 0x12, 0x10, 0x0a, - 0x0b, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0x97, 0x05, 0x12, - 0x0f, 0x0a, 0x0a, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x98, 0x05, - 0x12, 0x09, 0x0a, 0x04, 0x54, 0x45, 0x4d, 0x50, 0x10, 0x99, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x54, - 0x45, 0x4d, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x9a, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x45, - 0x4d, 0x50, 0x4f, 0x52, 0x41, 0x52, 0x59, 0x10, 0x9b, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x54, 0x45, - 0x58, 0x54, 0x5f, 0x50, 0x10, 0x9c, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x54, 0x48, 0x45, 0x4e, 0x10, - 0x9d, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x54, 0x49, 0x45, 0x53, 0x10, 0x9e, 0x05, 0x12, 0x09, 0x0a, - 0x04, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x9f, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x49, 0x4d, 0x45, - 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0xa0, 0x05, 0x12, 0x07, 0x0a, 0x02, 0x54, 0x4f, 0x10, 0xa1, - 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x54, 0x52, 0x41, 0x49, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0xa2, 0x05, - 0x12, 0x10, 0x0a, 0x0b, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, - 0xa3, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x46, 0x4f, 0x52, 0x4d, 0x10, - 0xa4, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x54, 0x52, 0x45, 0x41, 0x54, 0x10, 0xa5, 0x05, 0x12, 0x0c, - 0x0a, 0x07, 0x54, 0x52, 0x49, 0x47, 0x47, 0x45, 0x52, 0x10, 0xa6, 0x05, 0x12, 0x09, 0x0a, 0x04, - 0x54, 0x52, 0x49, 0x4d, 0x10, 0xa7, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x54, 0x52, 0x55, 0x45, 0x5f, - 0x50, 0x10, 0xa8, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x54, 0x52, 0x55, 0x4e, 0x43, 0x41, 0x54, 0x45, - 0x10, 0xa9, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x54, 0x52, 0x55, 0x53, 0x54, 0x45, 0x44, 0x10, 0xaa, - 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x10, 0xab, 0x05, 0x12, 0x0c, - 0x0a, 0x07, 0x54, 0x59, 0x50, 0x45, 0x53, 0x5f, 0x50, 0x10, 0xac, 0x05, 0x12, 0x0c, 0x0a, 0x07, - 0x55, 0x45, 0x53, 0x43, 0x41, 0x50, 0x45, 0x10, 0xad, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x55, 0x4e, - 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x45, 0x44, 0x10, 0xae, 0x05, 0x12, 0x10, 0x0a, 0x0b, 0x55, 0x4e, - 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0xaf, 0x05, 0x12, 0x10, 0x0a, 0x0b, - 0x55, 0x4e, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x45, 0x44, 0x10, 0xb0, 0x05, 0x12, 0x0a, - 0x0a, 0x05, 0x55, 0x4e, 0x49, 0x4f, 0x4e, 0x10, 0xb1, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x55, 0x4e, - 0x49, 0x51, 0x55, 0x45, 0x10, 0xb2, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, - 0x57, 0x4e, 0x10, 0xb3, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x55, 0x4e, 0x4c, 0x49, 0x53, 0x54, 0x45, - 0x4e, 0x10, 0xb4, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x55, 0x4e, 0x4c, 0x4f, 0x47, 0x47, 0x45, 0x44, - 0x10, 0xb5, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x55, 0x4e, 0x54, 0x49, 0x4c, 0x10, 0xb6, 0x05, 0x12, - 0x0b, 0x0a, 0x06, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0xb7, 0x05, 0x12, 0x09, 0x0a, 0x04, - 0x55, 0x53, 0x45, 0x52, 0x10, 0xb8, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x55, 0x53, 0x49, 0x4e, 0x47, - 0x10, 0xb9, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x56, 0x41, 0x43, 0x55, 0x55, 0x4d, 0x10, 0xba, 0x05, - 0x12, 0x0a, 0x0a, 0x05, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0xbb, 0x05, 0x12, 0x0d, 0x0a, 0x08, - 0x56, 0x41, 0x4c, 0x49, 0x44, 0x41, 0x54, 0x45, 0x10, 0xbc, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x56, - 0x41, 0x4c, 0x49, 0x44, 0x41, 0x54, 0x4f, 0x52, 0x10, 0xbd, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x56, - 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x50, 0x10, 0xbe, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x56, 0x41, 0x4c, - 0x55, 0x45, 0x53, 0x10, 0xbf, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x56, 0x41, 0x52, 0x43, 0x48, 0x41, - 0x52, 0x10, 0xc0, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x56, 0x41, 0x52, 0x49, 0x41, 0x44, 0x49, 0x43, - 0x10, 0xc1, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x56, 0x41, 0x52, 0x59, 0x49, 0x4e, 0x47, 0x10, 0xc2, - 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x56, 0x45, 0x52, 0x42, 0x4f, 0x53, 0x45, 0x10, 0xc3, 0x05, 0x12, - 0x0e, 0x0a, 0x09, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x10, 0xc4, 0x05, 0x12, - 0x09, 0x0a, 0x04, 0x56, 0x49, 0x45, 0x57, 0x10, 0xc5, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x56, 0x49, - 0x45, 0x57, 0x53, 0x10, 0xc6, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x56, 0x4f, 0x4c, 0x41, 0x54, 0x49, - 0x4c, 0x45, 0x10, 0xc7, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x57, 0x48, 0x45, 0x4e, 0x10, 0xc8, 0x05, - 0x12, 0x0a, 0x0a, 0x05, 0x57, 0x48, 0x45, 0x52, 0x45, 0x10, 0xc9, 0x05, 0x12, 0x11, 0x0a, 0x0c, - 0x57, 0x48, 0x49, 0x54, 0x45, 0x53, 0x50, 0x41, 0x43, 0x45, 0x5f, 0x50, 0x10, 0xca, 0x05, 0x12, - 0x0b, 0x0a, 0x06, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0xcb, 0x05, 0x12, 0x09, 0x0a, 0x04, - 0x57, 0x49, 0x54, 0x48, 0x10, 0xcc, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x57, 0x49, 0x54, 0x48, 0x49, - 0x4e, 0x10, 0xcd, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x57, 0x49, 0x54, 0x48, 0x4f, 0x55, 0x54, 0x10, - 0xce, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x57, 0x4f, 0x52, 0x4b, 0x10, 0xcf, 0x05, 0x12, 0x0c, 0x0a, - 0x07, 0x57, 0x52, 0x41, 0x50, 0x50, 0x45, 0x52, 0x10, 0xd0, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x57, - 0x52, 0x49, 0x54, 0x45, 0x10, 0xd1, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x58, 0x4d, 0x4c, 0x5f, 0x50, - 0x10, 0xd2, 0x05, 0x12, 0x12, 0x0a, 0x0d, 0x58, 0x4d, 0x4c, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, - 0x55, 0x54, 0x45, 0x53, 0x10, 0xd3, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x58, 0x4d, 0x4c, 0x43, 0x4f, - 0x4e, 0x43, 0x41, 0x54, 0x10, 0xd4, 0x05, 0x12, 0x0f, 0x0a, 0x0a, 0x58, 0x4d, 0x4c, 0x45, 0x4c, - 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0xd5, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x58, 0x4d, 0x4c, 0x45, - 0x58, 0x49, 0x53, 0x54, 0x53, 0x10, 0xd6, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x58, 0x4d, 0x4c, 0x46, - 0x4f, 0x52, 0x45, 0x53, 0x54, 0x10, 0xd7, 0x05, 0x12, 0x12, 0x0a, 0x0d, 0x58, 0x4d, 0x4c, 0x4e, - 0x41, 0x4d, 0x45, 0x53, 0x50, 0x41, 0x43, 0x45, 0x53, 0x10, 0xd8, 0x05, 0x12, 0x0d, 0x0a, 0x08, - 0x58, 0x4d, 0x4c, 0x50, 0x41, 0x52, 0x53, 0x45, 0x10, 0xd9, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x58, - 0x4d, 0x4c, 0x50, 0x49, 0x10, 0xda, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x58, 0x4d, 0x4c, 0x52, 0x4f, - 0x4f, 0x54, 0x10, 0xdb, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x58, 0x4d, 0x4c, 0x53, 0x45, 0x52, 0x49, - 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x10, 0xdc, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x58, 0x4d, 0x4c, 0x54, - 0x41, 0x42, 0x4c, 0x45, 0x10, 0xdd, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x59, 0x45, 0x41, 0x52, 0x5f, - 0x50, 0x10, 0xde, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x59, 0x45, 0x53, 0x5f, 0x50, 0x10, 0xdf, 0x05, - 0x12, 0x09, 0x0a, 0x04, 0x5a, 0x4f, 0x4e, 0x45, 0x10, 0xe0, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x4e, - 0x4f, 0x54, 0x5f, 0x4c, 0x41, 0x10, 0xe1, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x4e, 0x55, 0x4c, 0x4c, - 0x53, 0x5f, 0x4c, 0x41, 0x10, 0xe2, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x57, 0x49, 0x54, 0x48, 0x5f, - 0x4c, 0x41, 0x10, 0xe3, 0x05, 0x12, 0x13, 0x0a, 0x0e, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x10, 0xe4, 0x05, 0x12, 0x16, 0x0a, 0x11, 0x4d, 0x4f, - 0x44, 0x45, 0x5f, 0x50, 0x4c, 0x50, 0x47, 0x53, 0x51, 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x10, - 0xe5, 0x05, 0x12, 0x19, 0x0a, 0x14, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x4c, 0x50, 0x47, 0x53, - 0x51, 0x4c, 0x5f, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x31, 0x10, 0xe6, 0x05, 0x12, 0x19, 0x0a, - 0x14, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x4c, 0x50, 0x47, 0x53, 0x51, 0x4c, 0x5f, 0x41, 0x53, - 0x53, 0x49, 0x47, 0x4e, 0x32, 0x10, 0xe7, 0x05, 0x12, 0x19, 0x0a, 0x14, 0x4d, 0x4f, 0x44, 0x45, - 0x5f, 0x50, 0x4c, 0x50, 0x47, 0x53, 0x51, 0x4c, 0x5f, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x33, - 0x10, 0xe8, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x55, 0x4d, 0x49, 0x4e, 0x55, 0x53, 0x10, 0xe9, 0x05, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x12, 0x0b, 0x0a, 0x07, 0x49, 0x53, 0x5f, 0x54, 0x52, 0x55, 0x45, 0x10, 0x01, 0x12, 0x0f, 0x0a, + 0x0b, 0x49, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x54, 0x52, 0x55, 0x45, 0x10, 0x02, 0x12, 0x0c, + 0x0a, 0x08, 0x49, 0x53, 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, + 0x49, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x04, 0x12, 0x0e, + 0x0a, 0x0a, 0x49, 0x53, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x05, 0x12, 0x12, + 0x0a, 0x0e, 0x49, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, + 0x10, 0x06, 0x2a, 0xa3, 0x01, 0x0a, 0x07, 0x43, 0x6d, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, + 0x0a, 0x12, 0x43, 0x4d, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, + 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4d, 0x44, 0x5f, 0x55, 0x4e, + 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x4d, 0x44, 0x5f, 0x53, + 0x45, 0x4c, 0x45, 0x43, 0x54, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x4d, 0x44, 0x5f, 0x55, + 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x4d, 0x44, 0x5f, 0x49, + 0x4e, 0x53, 0x45, 0x52, 0x54, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x4d, 0x44, 0x5f, 0x44, + 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4d, 0x44, 0x5f, 0x4d, + 0x45, 0x52, 0x47, 0x45, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4d, 0x44, 0x5f, 0x55, 0x54, + 0x49, 0x4c, 0x49, 0x54, 0x59, 0x10, 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4d, 0x44, 0x5f, 0x4e, + 0x4f, 0x54, 0x48, 0x49, 0x4e, 0x47, 0x10, 0x08, 0x2a, 0xc2, 0x01, 0x0a, 0x08, 0x4a, 0x6f, 0x69, + 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, + 0x0a, 0x0a, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x49, 0x4e, 0x4e, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0d, + 0x0a, 0x09, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x02, 0x12, 0x0d, 0x0a, + 0x09, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, + 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, + 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x53, 0x45, 0x4d, 0x49, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x4a, + 0x4f, 0x49, 0x4e, 0x5f, 0x41, 0x4e, 0x54, 0x49, 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x4a, 0x4f, + 0x49, 0x4e, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x41, 0x4e, 0x54, 0x49, 0x10, 0x07, 0x12, + 0x15, 0x0a, 0x11, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x55, 0x4e, 0x49, 0x51, 0x55, 0x45, 0x5f, 0x4f, + 0x55, 0x54, 0x45, 0x52, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x55, + 0x4e, 0x49, 0x51, 0x55, 0x45, 0x5f, 0x49, 0x4e, 0x4e, 0x45, 0x52, 0x10, 0x09, 0x2a, 0x67, 0x0a, + 0x0b, 0x41, 0x67, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x1a, 0x0a, 0x16, + 0x41, 0x47, 0x47, 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x55, 0x4e, 0x44, + 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x47, 0x47, 0x5f, + 0x50, 0x4c, 0x41, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x47, 0x47, 0x5f, 0x53, + 0x4f, 0x52, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x47, 0x47, 0x5f, 0x48, + 0x41, 0x53, 0x48, 0x45, 0x44, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x47, 0x47, 0x5f, 0x4d, + 0x49, 0x58, 0x45, 0x44, 0x10, 0x04, 0x2a, 0x72, 0x0a, 0x08, 0x41, 0x67, 0x67, 0x53, 0x70, 0x6c, + 0x69, 0x74, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x47, 0x47, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x5f, + 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x41, + 0x47, 0x47, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x5f, 0x53, 0x49, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0x01, + 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x47, 0x47, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x5f, 0x49, 0x4e, 0x49, + 0x54, 0x49, 0x41, 0x4c, 0x5f, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1b, 0x0a, + 0x17, 0x41, 0x47, 0x47, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x5f, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x5f, + 0x44, 0x45, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x10, 0x03, 0x2a, 0x86, 0x01, 0x0a, 0x08, 0x53, + 0x65, 0x74, 0x4f, 0x70, 0x43, 0x6d, 0x64, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x45, 0x54, 0x5f, 0x4f, + 0x50, 0x5f, 0x43, 0x4d, 0x44, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x43, 0x4d, 0x44, 0x5f, 0x49, 0x4e, + 0x54, 0x45, 0x52, 0x53, 0x45, 0x43, 0x54, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x45, 0x54, + 0x4f, 0x50, 0x43, 0x4d, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x53, 0x45, 0x43, 0x54, 0x5f, + 0x41, 0x4c, 0x4c, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x43, 0x4d, + 0x44, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x45, + 0x54, 0x4f, 0x50, 0x43, 0x4d, 0x44, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, 0x5f, 0x41, 0x4c, + 0x4c, 0x10, 0x04, 0x2a, 0x52, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x4f, 0x70, 0x53, 0x74, 0x72, 0x61, + 0x74, 0x65, 0x67, 0x79, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x45, 0x54, 0x5f, 0x4f, 0x50, 0x5f, 0x53, + 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x53, 0x4f, 0x52, + 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x54, 0x4f, 0x50, 0x5f, 0x48, + 0x41, 0x53, 0x48, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x78, 0x0a, 0x10, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, + 0x66, 0x6c, 0x69, 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x1c, 0x4f, + 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, + 0x0f, 0x4f, 0x4e, 0x43, 0x4f, 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, + 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x4e, 0x43, 0x4f, 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, + 0x5f, 0x4e, 0x4f, 0x54, 0x48, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x4e, + 0x43, 0x4f, 0x4e, 0x46, 0x4c, 0x49, 0x43, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, + 0x03, 0x2a, 0x77, 0x0a, 0x0b, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, + 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x45, 0x46, + 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, + 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x1a, + 0x0a, 0x16, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x57, + 0x49, 0x54, 0x48, 0x5f, 0x54, 0x49, 0x45, 0x53, 0x10, 0x03, 0x2a, 0x98, 0x01, 0x0a, 0x12, 0x4c, + 0x6f, 0x63, 0x6b, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x12, 0x22, 0x0a, 0x1e, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x43, 0x4c, 0x41, 0x55, 0x53, 0x45, + 0x5f, 0x53, 0x54, 0x52, 0x45, 0x4e, 0x47, 0x54, 0x48, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, + 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4c, 0x43, 0x53, 0x5f, 0x4e, 0x4f, 0x4e, + 0x45, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x43, 0x53, 0x5f, 0x46, 0x4f, 0x52, 0x4b, 0x45, + 0x59, 0x53, 0x48, 0x41, 0x52, 0x45, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x43, 0x53, 0x5f, + 0x46, 0x4f, 0x52, 0x53, 0x48, 0x41, 0x52, 0x45, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x43, + 0x53, 0x5f, 0x46, 0x4f, 0x52, 0x4e, 0x4f, 0x4b, 0x45, 0x59, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, + 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x43, 0x53, 0x5f, 0x46, 0x4f, 0x52, 0x55, 0x50, 0x44, + 0x41, 0x54, 0x45, 0x10, 0x05, 0x2a, 0x68, 0x0a, 0x0e, 0x4c, 0x6f, 0x63, 0x6b, 0x57, 0x61, 0x69, + 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1e, 0x0a, 0x1a, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, + 0x57, 0x41, 0x49, 0x54, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x55, 0x4e, 0x44, 0x45, + 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x6f, 0x63, 0x6b, 0x57, + 0x61, 0x69, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x6f, + 0x63, 0x6b, 0x57, 0x61, 0x69, 0x74, 0x53, 0x6b, 0x69, 0x70, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, + 0x4c, 0x6f, 0x63, 0x6b, 0x57, 0x61, 0x69, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x2a, + 0x8e, 0x01, 0x0a, 0x0d, 0x4c, 0x6f, 0x63, 0x6b, 0x54, 0x75, 0x70, 0x6c, 0x65, 0x4d, 0x6f, 0x64, + 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x54, 0x55, 0x50, 0x4c, 0x45, 0x5f, + 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x6f, 0x63, 0x6b, 0x54, 0x75, 0x70, 0x6c, 0x65, 0x4b, 0x65, 0x79, + 0x53, 0x68, 0x61, 0x72, 0x65, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x6f, 0x63, 0x6b, 0x54, + 0x75, 0x70, 0x6c, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x4c, + 0x6f, 0x63, 0x6b, 0x54, 0x75, 0x70, 0x6c, 0x65, 0x4e, 0x6f, 0x4b, 0x65, 0x79, 0x45, 0x78, 0x63, + 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x6f, 0x63, 0x6b, + 0x54, 0x75, 0x70, 0x6c, 0x65, 0x45, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x10, 0x04, + 0x2a, 0x7d, 0x0a, 0x0b, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x4b, 0x69, 0x6e, 0x64, 0x12, + 0x0e, 0x0a, 0x0a, 0x4e, 0x4f, 0x5f, 0x4b, 0x45, 0x59, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x00, 0x12, + 0x16, 0x0a, 0x12, 0x55, 0x4e, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x45, 0x44, 0x5f, 0x4b, 0x45, + 0x59, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4c, 0x5f, 0x4e, + 0x41, 0x4d, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x02, 0x12, 0x1a, 0x0a, + 0x16, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x55, 0x4e, 0x43, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x5f, + 0x4b, 0x45, 0x59, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x45, 0x53, + 0x45, 0x52, 0x56, 0x45, 0x44, 0x5f, 0x4b, 0x45, 0x59, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x04, 0x2a, + 0xb8, 0x39, 0x0a, 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x55, 0x4c, + 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x33, 0x36, 0x10, 0x24, + 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x33, 0x37, 0x10, 0x25, 0x12, 0x0c, + 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x30, 0x10, 0x28, 0x12, 0x0c, 0x0a, 0x08, + 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x31, 0x10, 0x29, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, + 0x43, 0x49, 0x49, 0x5f, 0x34, 0x32, 0x10, 0x2a, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, + 0x49, 0x5f, 0x34, 0x33, 0x10, 0x2b, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, + 0x34, 0x34, 0x10, 0x2c, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x35, + 0x10, 0x2d, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x36, 0x10, 0x2e, + 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x34, 0x37, 0x10, 0x2f, 0x12, 0x0c, + 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x35, 0x38, 0x10, 0x3a, 0x12, 0x0c, 0x0a, 0x08, + 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x35, 0x39, 0x10, 0x3b, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, + 0x43, 0x49, 0x49, 0x5f, 0x36, 0x30, 0x10, 0x3c, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, + 0x49, 0x5f, 0x36, 0x31, 0x10, 0x3d, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, + 0x36, 0x32, 0x10, 0x3e, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x36, 0x33, + 0x10, 0x3f, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x39, 0x31, 0x10, 0x5b, + 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x39, 0x32, 0x10, 0x5c, 0x12, 0x0c, + 0x0a, 0x08, 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x39, 0x33, 0x10, 0x5d, 0x12, 0x0c, 0x0a, 0x08, + 0x41, 0x53, 0x43, 0x49, 0x49, 0x5f, 0x39, 0x34, 0x10, 0x5e, 0x12, 0x0a, 0x0a, 0x05, 0x49, 0x44, + 0x45, 0x4e, 0x54, 0x10, 0x82, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x55, 0x49, 0x44, 0x45, 0x4e, 0x54, + 0x10, 0x83, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x46, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x84, 0x02, + 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x85, 0x02, 0x12, 0x0c, 0x0a, + 0x07, 0x55, 0x53, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x86, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x42, + 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x87, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x58, 0x43, 0x4f, 0x4e, + 0x53, 0x54, 0x10, 0x88, 0x02, 0x12, 0x07, 0x0a, 0x02, 0x4f, 0x70, 0x10, 0x89, 0x02, 0x12, 0x0b, + 0x0a, 0x06, 0x49, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x10, 0x8a, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x50, + 0x41, 0x52, 0x41, 0x4d, 0x10, 0x8b, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x54, 0x59, 0x50, 0x45, 0x43, + 0x41, 0x53, 0x54, 0x10, 0x8c, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x44, 0x4f, 0x54, 0x5f, 0x44, 0x4f, + 0x54, 0x10, 0x8d, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x43, 0x4f, 0x4c, 0x4f, 0x4e, 0x5f, 0x45, 0x51, + 0x55, 0x41, 0x4c, 0x53, 0x10, 0x8e, 0x02, 0x12, 0x13, 0x0a, 0x0e, 0x45, 0x51, 0x55, 0x41, 0x4c, + 0x53, 0x5f, 0x47, 0x52, 0x45, 0x41, 0x54, 0x45, 0x52, 0x10, 0x8f, 0x02, 0x12, 0x10, 0x0a, 0x0b, + 0x4c, 0x45, 0x53, 0x53, 0x5f, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x53, 0x10, 0x90, 0x02, 0x12, 0x13, + 0x0a, 0x0e, 0x47, 0x52, 0x45, 0x41, 0x54, 0x45, 0x52, 0x5f, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x53, + 0x10, 0x91, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x51, 0x55, 0x41, 0x4c, + 0x53, 0x10, 0x92, 0x02, 0x12, 0x10, 0x0a, 0x0b, 0x53, 0x51, 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, + 0x45, 0x4e, 0x54, 0x10, 0x93, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x43, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, + 0x45, 0x4e, 0x54, 0x10, 0x94, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x41, 0x42, 0x4f, 0x52, 0x54, 0x5f, + 0x50, 0x10, 0x95, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x42, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x96, + 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x41, 0x42, 0x53, 0x4f, 0x4c, 0x55, 0x54, 0x45, 0x5f, 0x50, 0x10, + 0x97, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x98, 0x02, 0x12, + 0x0b, 0x0a, 0x06, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x99, 0x02, 0x12, 0x0a, 0x0a, 0x05, + 0x41, 0x44, 0x44, 0x5f, 0x50, 0x10, 0x9a, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x41, 0x44, 0x4d, 0x49, + 0x4e, 0x10, 0x9b, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x41, 0x46, 0x54, 0x45, 0x52, 0x10, 0x9c, 0x02, + 0x12, 0x0e, 0x0a, 0x09, 0x41, 0x47, 0x47, 0x52, 0x45, 0x47, 0x41, 0x54, 0x45, 0x10, 0x9d, 0x02, + 0x12, 0x08, 0x0a, 0x03, 0x41, 0x4c, 0x4c, 0x10, 0x9e, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x41, 0x4c, + 0x53, 0x4f, 0x10, 0x9f, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x41, 0x4c, 0x54, 0x45, 0x52, 0x10, 0xa0, + 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x4c, 0x57, 0x41, 0x59, 0x53, 0x10, 0xa1, 0x02, 0x12, 0x0c, + 0x0a, 0x07, 0x41, 0x4e, 0x41, 0x4c, 0x59, 0x53, 0x45, 0x10, 0xa2, 0x02, 0x12, 0x0c, 0x0a, 0x07, + 0x41, 0x4e, 0x41, 0x4c, 0x59, 0x5a, 0x45, 0x10, 0xa3, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x41, 0x4e, + 0x44, 0x10, 0xa4, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x41, 0x4e, 0x59, 0x10, 0xa5, 0x02, 0x12, 0x0a, + 0x0a, 0x05, 0x41, 0x52, 0x52, 0x41, 0x59, 0x10, 0xa6, 0x02, 0x12, 0x07, 0x0a, 0x02, 0x41, 0x53, + 0x10, 0xa7, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x41, 0x53, 0x43, 0x10, 0xa8, 0x02, 0x12, 0x0f, 0x0a, + 0x0a, 0x41, 0x53, 0x45, 0x4e, 0x53, 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 0xa9, 0x02, 0x12, 0x0e, + 0x0a, 0x09, 0x41, 0x53, 0x53, 0x45, 0x52, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xaa, 0x02, 0x12, 0x0f, + 0x0a, 0x0a, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0xab, 0x02, 0x12, + 0x0f, 0x0a, 0x0a, 0x41, 0x53, 0x59, 0x4d, 0x4d, 0x45, 0x54, 0x52, 0x49, 0x43, 0x10, 0xac, 0x02, + 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x54, 0x4f, 0x4d, 0x49, 0x43, 0x10, 0xad, 0x02, 0x12, 0x07, 0x0a, + 0x02, 0x41, 0x54, 0x10, 0xae, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, + 0x10, 0xaf, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, + 0x10, 0xb0, 0x02, 0x12, 0x12, 0x0a, 0x0d, 0x41, 0x55, 0x54, 0x48, 0x4f, 0x52, 0x49, 0x5a, 0x41, + 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xb1, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x42, 0x41, 0x43, 0x4b, 0x57, + 0x41, 0x52, 0x44, 0x10, 0xb2, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x42, 0x45, 0x46, 0x4f, 0x52, 0x45, + 0x10, 0xb3, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x5f, 0x50, 0x10, 0xb4, + 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x42, 0x45, 0x54, 0x57, 0x45, 0x45, 0x4e, 0x10, 0xb5, 0x02, 0x12, + 0x0b, 0x0a, 0x06, 0x42, 0x49, 0x47, 0x49, 0x4e, 0x54, 0x10, 0xb6, 0x02, 0x12, 0x0b, 0x0a, 0x06, + 0x42, 0x49, 0x4e, 0x41, 0x52, 0x59, 0x10, 0xb7, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x42, 0x49, 0x54, + 0x10, 0xb8, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x42, 0x4f, 0x4f, 0x4c, 0x45, 0x41, 0x4e, 0x5f, 0x50, + 0x10, 0xb9, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x42, 0x4f, 0x54, 0x48, 0x10, 0xba, 0x02, 0x12, 0x0c, + 0x0a, 0x07, 0x42, 0x52, 0x45, 0x41, 0x44, 0x54, 0x48, 0x10, 0xbb, 0x02, 0x12, 0x07, 0x0a, 0x02, + 0x42, 0x59, 0x10, 0xbc, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x41, 0x43, 0x48, 0x45, 0x10, 0xbd, + 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, 0x41, 0x4c, 0x4c, 0x10, 0xbe, 0x02, 0x12, 0x0b, 0x0a, 0x06, + 0x43, 0x41, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0xbf, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x43, 0x41, 0x53, + 0x43, 0x41, 0x44, 0x45, 0x10, 0xc0, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x43, 0x41, 0x53, 0x43, 0x41, + 0x44, 0x45, 0x44, 0x10, 0xc1, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, 0x41, 0x53, 0x45, 0x10, 0xc2, + 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, 0x41, 0x53, 0x54, 0x10, 0xc3, 0x02, 0x12, 0x0e, 0x0a, 0x09, + 0x43, 0x41, 0x54, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x50, 0x10, 0xc4, 0x02, 0x12, 0x0a, 0x0a, 0x05, + 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0xc5, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x43, 0x48, 0x41, 0x52, + 0x5f, 0x50, 0x10, 0xc6, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, + 0x45, 0x52, 0x10, 0xc7, 0x02, 0x12, 0x14, 0x0a, 0x0f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, + 0x45, 0x52, 0x49, 0x53, 0x54, 0x49, 0x43, 0x53, 0x10, 0xc8, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, + 0x48, 0x45, 0x43, 0x4b, 0x10, 0xc9, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x43, 0x48, 0x45, 0x43, 0x4b, + 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0xca, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x4c, 0x41, 0x53, + 0x53, 0x10, 0xcb, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x10, 0xcc, 0x02, + 0x12, 0x0c, 0x0a, 0x07, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x10, 0xcd, 0x02, 0x12, 0x0d, + 0x0a, 0x08, 0x43, 0x4f, 0x41, 0x4c, 0x45, 0x53, 0x43, 0x45, 0x10, 0xce, 0x02, 0x12, 0x0c, 0x0a, + 0x07, 0x43, 0x4f, 0x4c, 0x4c, 0x41, 0x54, 0x45, 0x10, 0xcf, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x43, + 0x4f, 0x4c, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xd0, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x43, + 0x4f, 0x4c, 0x55, 0x4d, 0x4e, 0x10, 0xd1, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x43, 0x4f, 0x4c, 0x55, + 0x4d, 0x4e, 0x53, 0x10, 0xd2, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x43, 0x4f, 0x4d, 0x4d, 0x45, 0x4e, + 0x54, 0x10, 0xd3, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x4d, 0x45, 0x4e, 0x54, 0x53, + 0x10, 0xd4, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x10, 0xd5, 0x02, + 0x12, 0x0e, 0x0a, 0x09, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0xd6, 0x02, + 0x12, 0x10, 0x0a, 0x0b, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, + 0xd7, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x43, 0x4f, 0x4e, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, + 0x4c, 0x59, 0x10, 0xd8, 0x02, 0x12, 0x12, 0x0a, 0x0d, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x55, + 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xd9, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x43, 0x4f, 0x4e, + 0x46, 0x4c, 0x49, 0x43, 0x54, 0x10, 0xda, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x43, 0x4f, 0x4e, 0x4e, + 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xdb, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x43, 0x4f, 0x4e, + 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x54, 0x10, 0xdc, 0x02, 0x12, 0x10, 0x0a, 0x0b, 0x43, 0x4f, + 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x54, 0x53, 0x10, 0xdd, 0x02, 0x12, 0x0e, 0x0a, 0x09, + 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x10, 0xde, 0x02, 0x12, 0x0f, 0x0a, 0x0a, + 0x43, 0x4f, 0x4e, 0x54, 0x49, 0x4e, 0x55, 0x45, 0x5f, 0x50, 0x10, 0xdf, 0x02, 0x12, 0x11, 0x0a, + 0x0c, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x10, 0xe0, 0x02, + 0x12, 0x09, 0x0a, 0x04, 0x43, 0x4f, 0x50, 0x59, 0x10, 0xe1, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, + 0x4f, 0x53, 0x54, 0x10, 0xe2, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, + 0x10, 0xe3, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x52, 0x4f, 0x53, 0x53, 0x10, 0xe4, 0x02, 0x12, + 0x08, 0x0a, 0x03, 0x43, 0x53, 0x56, 0x10, 0xe5, 0x02, 0x12, 0x09, 0x0a, 0x04, 0x43, 0x55, 0x42, + 0x45, 0x10, 0xe6, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, + 0x50, 0x10, 0xe7, 0x02, 0x12, 0x14, 0x0a, 0x0f, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, + 0x43, 0x41, 0x54, 0x41, 0x4c, 0x4f, 0x47, 0x10, 0xe8, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x43, 0x55, + 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x41, 0x54, 0x45, 0x10, 0xe9, 0x02, 0x12, 0x11, 0x0a, + 0x0c, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0xea, 0x02, + 0x12, 0x13, 0x0a, 0x0e, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x43, 0x48, 0x45, + 0x4d, 0x41, 0x10, 0xeb, 0x02, 0x12, 0x11, 0x0a, 0x0c, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, + 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0xec, 0x02, 0x12, 0x16, 0x0a, 0x11, 0x43, 0x55, 0x52, 0x52, + 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0xed, 0x02, + 0x12, 0x11, 0x0a, 0x0c, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, + 0x10, 0xee, 0x02, 0x12, 0x0b, 0x0a, 0x06, 0x43, 0x55, 0x52, 0x53, 0x4f, 0x52, 0x10, 0xef, 0x02, + 0x12, 0x0a, 0x0a, 0x05, 0x43, 0x59, 0x43, 0x4c, 0x45, 0x10, 0xf0, 0x02, 0x12, 0x0b, 0x0a, 0x06, + 0x44, 0x41, 0x54, 0x41, 0x5f, 0x50, 0x10, 0xf1, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x44, 0x41, 0x54, + 0x41, 0x42, 0x41, 0x53, 0x45, 0x10, 0xf2, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x44, 0x41, 0x59, 0x5f, + 0x50, 0x10, 0xf3, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x44, 0x45, 0x41, 0x4c, 0x4c, 0x4f, 0x43, 0x41, + 0x54, 0x45, 0x10, 0xf4, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x44, 0x45, 0x43, 0x10, 0xf5, 0x02, 0x12, + 0x0e, 0x0a, 0x09, 0x44, 0x45, 0x43, 0x49, 0x4d, 0x41, 0x4c, 0x5f, 0x50, 0x10, 0xf6, 0x02, 0x12, + 0x0c, 0x0a, 0x07, 0x44, 0x45, 0x43, 0x4c, 0x41, 0x52, 0x45, 0x10, 0xf7, 0x02, 0x12, 0x0c, 0x0a, + 0x07, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0xf8, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x44, + 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x53, 0x10, 0xf9, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x44, 0x45, + 0x46, 0x45, 0x52, 0x52, 0x41, 0x42, 0x4c, 0x45, 0x10, 0xfa, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x44, + 0x45, 0x46, 0x45, 0x52, 0x52, 0x45, 0x44, 0x10, 0xfb, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x44, 0x45, + 0x46, 0x49, 0x4e, 0x45, 0x52, 0x10, 0xfc, 0x02, 0x12, 0x0d, 0x0a, 0x08, 0x44, 0x45, 0x4c, 0x45, + 0x54, 0x45, 0x5f, 0x50, 0x10, 0xfd, 0x02, 0x12, 0x0e, 0x0a, 0x09, 0x44, 0x45, 0x4c, 0x49, 0x4d, + 0x49, 0x54, 0x45, 0x52, 0x10, 0xfe, 0x02, 0x12, 0x0f, 0x0a, 0x0a, 0x44, 0x45, 0x4c, 0x49, 0x4d, + 0x49, 0x54, 0x45, 0x52, 0x53, 0x10, 0xff, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x44, 0x45, 0x50, 0x45, + 0x4e, 0x44, 0x53, 0x10, 0x80, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x44, 0x45, 0x50, 0x54, 0x48, 0x10, + 0x81, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x44, 0x45, 0x53, 0x43, 0x10, 0x82, 0x03, 0x12, 0x0b, 0x0a, + 0x06, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x10, 0x83, 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x44, 0x49, + 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x84, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x44, + 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x50, 0x10, 0x85, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x44, + 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x10, 0x86, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x44, 0x49, 0x53, + 0x54, 0x49, 0x4e, 0x43, 0x54, 0x10, 0x87, 0x03, 0x12, 0x07, 0x0a, 0x02, 0x44, 0x4f, 0x10, 0x88, + 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x44, 0x4f, 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x10, + 0x89, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x44, 0x4f, 0x4d, 0x41, 0x49, 0x4e, 0x5f, 0x50, 0x10, 0x8a, + 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x5f, 0x50, 0x10, 0x8b, 0x03, + 0x12, 0x09, 0x0a, 0x04, 0x44, 0x52, 0x4f, 0x50, 0x10, 0x8c, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x45, + 0x41, 0x43, 0x48, 0x10, 0x8d, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x45, 0x4c, 0x53, 0x45, 0x10, 0x8e, + 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x50, 0x10, 0x8f, 0x03, + 0x12, 0x0d, 0x0a, 0x08, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x90, 0x03, 0x12, + 0x0e, 0x0a, 0x09, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x45, 0x44, 0x10, 0x91, 0x03, 0x12, + 0x0a, 0x0a, 0x05, 0x45, 0x4e, 0x44, 0x5f, 0x50, 0x10, 0x92, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x45, + 0x4e, 0x55, 0x4d, 0x5f, 0x50, 0x10, 0x93, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x45, 0x53, 0x43, 0x41, + 0x50, 0x45, 0x10, 0x94, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x95, + 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, 0x10, 0x96, 0x03, 0x12, 0x0c, + 0x0a, 0x07, 0x45, 0x58, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x10, 0x97, 0x03, 0x12, 0x0e, 0x0a, 0x09, + 0x45, 0x58, 0x43, 0x4c, 0x55, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x98, 0x03, 0x12, 0x0e, 0x0a, 0x09, + 0x45, 0x58, 0x43, 0x4c, 0x55, 0x53, 0x49, 0x56, 0x45, 0x10, 0x99, 0x03, 0x12, 0x0c, 0x0a, 0x07, + 0x45, 0x58, 0x45, 0x43, 0x55, 0x54, 0x45, 0x10, 0x9a, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x45, 0x58, + 0x49, 0x53, 0x54, 0x53, 0x10, 0x9b, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x4c, 0x41, + 0x49, 0x4e, 0x10, 0x9c, 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x45, 0x58, 0x50, 0x52, 0x45, 0x53, 0x53, + 0x49, 0x4f, 0x4e, 0x10, 0x9d, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x45, 0x58, 0x54, 0x45, 0x4e, 0x53, + 0x49, 0x4f, 0x4e, 0x10, 0x9e, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, + 0x41, 0x4c, 0x10, 0x9f, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x45, 0x58, 0x54, 0x52, 0x41, 0x43, 0x54, + 0x10, 0xa0, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x5f, 0x50, 0x10, 0xa1, + 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x46, 0x41, 0x4d, 0x49, 0x4c, 0x59, 0x10, 0xa2, 0x03, 0x12, 0x0a, + 0x0a, 0x05, 0x46, 0x45, 0x54, 0x43, 0x48, 0x10, 0xa3, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x46, 0x49, + 0x4c, 0x54, 0x45, 0x52, 0x10, 0xa4, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x46, 0x49, 0x4e, 0x41, 0x4c, + 0x49, 0x5a, 0x45, 0x10, 0xa5, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, + 0x50, 0x10, 0xa6, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x5f, 0x50, 0x10, + 0xa7, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x46, 0x4f, 0x4c, 0x4c, 0x4f, 0x57, 0x49, 0x4e, 0x47, 0x10, + 0xa8, 0x03, 0x12, 0x08, 0x0a, 0x03, 0x46, 0x4f, 0x52, 0x10, 0xa9, 0x03, 0x12, 0x0a, 0x0a, 0x05, + 0x46, 0x4f, 0x52, 0x43, 0x45, 0x10, 0xaa, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x4f, 0x52, 0x45, + 0x49, 0x47, 0x4e, 0x10, 0xab, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, + 0x10, 0xac, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44, 0x10, 0xad, + 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x46, 0x52, 0x45, 0x45, 0x5a, 0x45, 0x10, 0xae, 0x03, 0x12, 0x09, + 0x0a, 0x04, 0x46, 0x52, 0x4f, 0x4d, 0x10, 0xaf, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x46, 0x55, 0x4c, + 0x4c, 0x10, 0xb0, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x46, 0x55, 0x4e, 0x43, 0x54, 0x49, 0x4f, 0x4e, + 0x10, 0xb1, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x46, 0x55, 0x4e, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x53, + 0x10, 0xb2, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x41, 0x54, 0x45, 0x44, + 0x10, 0xb3, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x47, 0x4c, 0x4f, 0x42, 0x41, 0x4c, 0x10, 0xb4, 0x03, + 0x12, 0x0a, 0x0a, 0x05, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x10, 0xb5, 0x03, 0x12, 0x0c, 0x0a, 0x07, + 0x47, 0x52, 0x41, 0x4e, 0x54, 0x45, 0x44, 0x10, 0xb6, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x47, 0x52, + 0x45, 0x41, 0x54, 0x45, 0x53, 0x54, 0x10, 0xb7, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x47, 0x52, 0x4f, + 0x55, 0x50, 0x5f, 0x50, 0x10, 0xb8, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x47, 0x52, 0x4f, 0x55, 0x50, + 0x49, 0x4e, 0x47, 0x10, 0xb9, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x53, + 0x10, 0xba, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x48, 0x41, 0x4e, 0x44, 0x4c, 0x45, 0x52, 0x10, 0xbb, + 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x48, 0x41, 0x56, 0x49, 0x4e, 0x47, 0x10, 0xbc, 0x03, 0x12, 0x0d, + 0x0a, 0x08, 0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x5f, 0x50, 0x10, 0xbd, 0x03, 0x12, 0x09, 0x0a, + 0x04, 0x48, 0x4f, 0x4c, 0x44, 0x10, 0xbe, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x48, 0x4f, 0x55, 0x52, + 0x5f, 0x50, 0x10, 0xbf, 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x49, 0x44, 0x45, 0x4e, 0x54, 0x49, 0x54, + 0x59, 0x5f, 0x50, 0x10, 0xc0, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x49, 0x46, 0x5f, 0x50, 0x10, 0xc1, + 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x49, 0x4c, 0x49, 0x4b, 0x45, 0x10, 0xc2, 0x03, 0x12, 0x0e, 0x0a, + 0x09, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0xc3, 0x03, 0x12, 0x0e, 0x0a, + 0x09, 0x49, 0x4d, 0x4d, 0x55, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0xc4, 0x03, 0x12, 0x0f, 0x0a, + 0x0a, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x5f, 0x50, 0x10, 0xc5, 0x03, 0x12, 0x0d, + 0x0a, 0x08, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x50, 0x10, 0xc6, 0x03, 0x12, 0x09, 0x0a, + 0x04, 0x49, 0x4e, 0x5f, 0x50, 0x10, 0xc7, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x10, 0xc8, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, 0x4e, 0x43, 0x4c, 0x55, 0x44, + 0x49, 0x4e, 0x47, 0x10, 0xc9, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, 0x4e, 0x43, 0x52, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x10, 0xca, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x49, 0x4e, 0x44, 0x45, 0x4e, 0x54, + 0x10, 0xcb, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x10, 0xcc, 0x03, 0x12, + 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x45, 0x53, 0x10, 0xcd, 0x03, 0x12, 0x0c, 0x0a, + 0x07, 0x49, 0x4e, 0x48, 0x45, 0x52, 0x49, 0x54, 0x10, 0xce, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x49, + 0x4e, 0x48, 0x45, 0x52, 0x49, 0x54, 0x53, 0x10, 0xcf, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, 0x4e, + 0x49, 0x54, 0x49, 0x41, 0x4c, 0x4c, 0x59, 0x10, 0xd0, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x49, 0x4e, + 0x4c, 0x49, 0x4e, 0x45, 0x5f, 0x50, 0x10, 0xd1, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x4e, + 0x45, 0x52, 0x5f, 0x50, 0x10, 0xd2, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x49, 0x4e, 0x4f, 0x55, 0x54, + 0x10, 0xd3, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x5f, 0x50, 0x10, 0xd4, + 0x03, 0x12, 0x10, 0x0a, 0x0b, 0x49, 0x4e, 0x53, 0x45, 0x4e, 0x53, 0x49, 0x54, 0x49, 0x56, 0x45, + 0x10, 0xd5, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x49, 0x4e, 0x53, 0x45, 0x52, 0x54, 0x10, 0xd6, 0x03, + 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x53, 0x54, 0x45, 0x41, 0x44, 0x10, 0xd7, 0x03, 0x12, 0x0a, + 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x5f, 0x50, 0x10, 0xd8, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, + 0x54, 0x45, 0x47, 0x45, 0x52, 0x10, 0xd9, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, 0x4e, 0x54, 0x45, + 0x52, 0x53, 0x45, 0x43, 0x54, 0x10, 0xda, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x49, 0x4e, 0x54, 0x45, + 0x52, 0x56, 0x41, 0x4c, 0x10, 0xdb, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x49, 0x4e, 0x54, 0x4f, 0x10, + 0xdc, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x49, 0x4e, 0x56, 0x4f, 0x4b, 0x45, 0x52, 0x10, 0xdd, 0x03, + 0x12, 0x07, 0x0a, 0x02, 0x49, 0x53, 0x10, 0xde, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x49, 0x53, 0x4e, + 0x55, 0x4c, 0x4c, 0x10, 0xdf, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x49, 0x53, 0x4f, 0x4c, 0x41, 0x54, + 0x49, 0x4f, 0x4e, 0x10, 0xe0, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x4a, 0x4f, 0x49, 0x4e, 0x10, 0xe1, + 0x03, 0x12, 0x09, 0x0a, 0x04, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0xe2, 0x03, 0x12, 0x0f, 0x0a, 0x0a, + 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x41, 0x52, 0x52, 0x41, 0x59, 0x10, 0xe3, 0x03, 0x12, 0x12, 0x0a, + 0x0d, 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x41, 0x52, 0x52, 0x41, 0x59, 0x41, 0x47, 0x47, 0x10, 0xe4, + 0x03, 0x12, 0x10, 0x0a, 0x0b, 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, + 0x10, 0xe5, 0x03, 0x12, 0x13, 0x0a, 0x0e, 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x4f, 0x42, 0x4a, 0x45, + 0x43, 0x54, 0x41, 0x47, 0x47, 0x10, 0xe6, 0x03, 0x12, 0x08, 0x0a, 0x03, 0x4b, 0x45, 0x59, 0x10, + 0xe7, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x4b, 0x45, 0x59, 0x53, 0x10, 0xe8, 0x03, 0x12, 0x0a, 0x0a, + 0x05, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x10, 0xe9, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x4c, 0x41, 0x4e, + 0x47, 0x55, 0x41, 0x47, 0x45, 0x10, 0xea, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x4c, 0x41, 0x52, 0x47, + 0x45, 0x5f, 0x50, 0x10, 0xeb, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x4c, 0x41, 0x53, 0x54, 0x5f, 0x50, + 0x10, 0xec, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x4c, 0x41, 0x54, 0x45, 0x52, 0x41, 0x4c, 0x5f, 0x50, + 0x10, 0xed, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x4c, 0x45, 0x41, 0x44, 0x49, 0x4e, 0x47, 0x10, 0xee, + 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x4c, 0x45, 0x41, 0x4b, 0x50, 0x52, 0x4f, 0x4f, 0x46, 0x10, 0xef, + 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x4c, 0x45, 0x41, 0x53, 0x54, 0x10, 0xf0, 0x03, 0x12, 0x09, 0x0a, + 0x04, 0x4c, 0x45, 0x46, 0x54, 0x10, 0xf1, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x4c, 0x45, 0x56, 0x45, + 0x4c, 0x10, 0xf2, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x4c, 0x49, 0x4b, 0x45, 0x10, 0xf3, 0x03, 0x12, + 0x0a, 0x0a, 0x05, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x10, 0xf4, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x4c, + 0x49, 0x53, 0x54, 0x45, 0x4e, 0x10, 0xf5, 0x03, 0x12, 0x09, 0x0a, 0x04, 0x4c, 0x4f, 0x41, 0x44, + 0x10, 0xf6, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0xf7, 0x03, 0x12, + 0x0e, 0x0a, 0x09, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x54, 0x49, 0x4d, 0x45, 0x10, 0xf8, 0x03, 0x12, + 0x13, 0x0a, 0x0e, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, + 0x50, 0x10, 0xf9, 0x03, 0x12, 0x0d, 0x0a, 0x08, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x10, 0xfa, 0x03, 0x12, 0x0b, 0x0a, 0x06, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x50, 0x10, 0xfb, 0x03, + 0x12, 0x0b, 0x0a, 0x06, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0xfc, 0x03, 0x12, 0x0b, 0x0a, + 0x06, 0x4c, 0x4f, 0x47, 0x47, 0x45, 0x44, 0x10, 0xfd, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x4d, 0x41, + 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0xfe, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x4d, 0x41, 0x54, 0x43, + 0x48, 0x10, 0xff, 0x03, 0x12, 0x0c, 0x0a, 0x07, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x45, 0x44, 0x10, + 0x80, 0x04, 0x12, 0x11, 0x0a, 0x0c, 0x4d, 0x41, 0x54, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x49, 0x5a, + 0x45, 0x44, 0x10, 0x81, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x4d, 0x41, 0x58, 0x56, 0x41, 0x4c, 0x55, + 0x45, 0x10, 0x82, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x4d, 0x45, 0x52, 0x47, 0x45, 0x10, 0x83, 0x04, + 0x12, 0x0b, 0x0a, 0x06, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x10, 0x84, 0x04, 0x12, 0x0d, 0x0a, + 0x08, 0x4d, 0x49, 0x4e, 0x55, 0x54, 0x45, 0x5f, 0x50, 0x10, 0x85, 0x04, 0x12, 0x0d, 0x0a, 0x08, + 0x4d, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x86, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4d, + 0x4f, 0x44, 0x45, 0x10, 0x87, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4d, 0x4f, 0x4e, 0x54, 0x48, 0x5f, + 0x50, 0x10, 0x88, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x89, 0x04, 0x12, + 0x0b, 0x0a, 0x06, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x10, 0x8a, 0x04, 0x12, 0x0a, 0x0a, 0x05, + 0x4e, 0x41, 0x4d, 0x45, 0x53, 0x10, 0x8b, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x4e, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x8c, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4e, 0x41, 0x54, 0x55, 0x52, + 0x41, 0x4c, 0x10, 0x8d, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x4e, 0x43, 0x48, 0x41, 0x52, 0x10, 0x8e, + 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4e, 0x45, 0x57, 0x10, 0x8f, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4e, + 0x45, 0x58, 0x54, 0x10, 0x90, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4e, 0x46, 0x43, 0x10, 0x91, 0x04, + 0x12, 0x08, 0x0a, 0x03, 0x4e, 0x46, 0x44, 0x10, 0x92, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4e, 0x46, + 0x4b, 0x43, 0x10, 0x93, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4e, 0x46, 0x4b, 0x44, 0x10, 0x94, 0x04, + 0x12, 0x07, 0x0a, 0x02, 0x4e, 0x4f, 0x10, 0x95, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, + 0x45, 0x10, 0x96, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x49, 0x5a, + 0x45, 0x10, 0x97, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x49, 0x5a, + 0x45, 0x44, 0x10, 0x98, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4e, 0x4f, 0x54, 0x10, 0x99, 0x04, 0x12, + 0x0c, 0x0a, 0x07, 0x4e, 0x4f, 0x54, 0x48, 0x49, 0x4e, 0x47, 0x10, 0x9a, 0x04, 0x12, 0x0b, 0x0a, + 0x06, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x10, 0x9b, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4e, 0x4f, + 0x54, 0x4e, 0x55, 0x4c, 0x4c, 0x10, 0x9c, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4e, 0x4f, 0x57, 0x41, + 0x49, 0x54, 0x10, 0x9d, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4e, 0x55, 0x4c, 0x4c, 0x5f, 0x50, 0x10, + 0x9e, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4e, 0x55, 0x4c, 0x4c, 0x49, 0x46, 0x10, 0x9f, 0x04, 0x12, + 0x0c, 0x0a, 0x07, 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x50, 0x10, 0xa0, 0x04, 0x12, 0x0c, 0x0a, + 0x07, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43, 0x10, 0xa1, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x4f, + 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x10, 0xa2, 0x04, 0x12, 0x07, 0x0a, 0x02, 0x4f, 0x46, + 0x10, 0xa3, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4f, 0x46, 0x46, 0x10, 0xa4, 0x04, 0x12, 0x0b, 0x0a, + 0x06, 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x10, 0xa5, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4f, 0x49, + 0x44, 0x53, 0x10, 0xa6, 0x04, 0x12, 0x08, 0x0a, 0x03, 0x4f, 0x4c, 0x44, 0x10, 0xa7, 0x04, 0x12, + 0x07, 0x0a, 0x02, 0x4f, 0x4e, 0x10, 0xa8, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4f, 0x4e, 0x4c, 0x59, + 0x10, 0xa9, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x4f, 0x52, 0x10, + 0xaa, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xab, 0x04, 0x12, + 0x0c, 0x0a, 0x07, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x10, 0xac, 0x04, 0x12, 0x07, 0x0a, + 0x02, 0x4f, 0x52, 0x10, 0xad, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x10, + 0xae, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x4f, 0x52, 0x44, 0x49, 0x4e, 0x41, 0x4c, 0x49, 0x54, 0x59, + 0x10, 0xaf, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x53, 0x10, 0xb0, 0x04, + 0x12, 0x0a, 0x0a, 0x05, 0x4f, 0x55, 0x54, 0x5f, 0x50, 0x10, 0xb1, 0x04, 0x12, 0x0c, 0x0a, 0x07, + 0x4f, 0x55, 0x54, 0x45, 0x52, 0x5f, 0x50, 0x10, 0xb2, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x4f, 0x56, + 0x45, 0x52, 0x10, 0xb3, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x4f, 0x56, 0x45, 0x52, 0x4c, 0x41, 0x50, + 0x53, 0x10, 0xb4, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x4f, 0x56, 0x45, 0x52, 0x4c, 0x41, 0x59, 0x10, + 0xb5, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x49, 0x4e, 0x47, + 0x10, 0xb6, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x4f, 0x57, 0x4e, 0x45, 0x44, 0x10, 0xb7, 0x04, 0x12, + 0x0a, 0x0a, 0x05, 0x4f, 0x57, 0x4e, 0x45, 0x52, 0x10, 0xb8, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x50, + 0x41, 0x52, 0x41, 0x4c, 0x4c, 0x45, 0x4c, 0x10, 0xb9, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x50, 0x41, + 0x52, 0x41, 0x4d, 0x45, 0x54, 0x45, 0x52, 0x10, 0xba, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x50, 0x41, + 0x52, 0x53, 0x45, 0x52, 0x10, 0xbb, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, 0x41, 0x52, 0x54, 0x49, + 0x41, 0x4c, 0x10, 0xbc, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x50, 0x41, 0x52, 0x54, 0x49, 0x54, 0x49, + 0x4f, 0x4e, 0x10, 0xbd, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, 0x41, 0x53, 0x53, 0x49, 0x4e, 0x47, + 0x10, 0xbe, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x10, + 0xbf, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, 0x4c, 0x41, 0x43, 0x49, 0x4e, 0x47, 0x10, 0xc0, 0x04, + 0x12, 0x0a, 0x0a, 0x05, 0x50, 0x4c, 0x41, 0x4e, 0x53, 0x10, 0xc1, 0x04, 0x12, 0x0b, 0x0a, 0x06, + 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x10, 0xc2, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x50, 0x4f, 0x53, + 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xc3, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x50, 0x52, 0x45, 0x43, + 0x45, 0x44, 0x49, 0x4e, 0x47, 0x10, 0xc4, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x50, 0x52, 0x45, 0x43, + 0x49, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0xc5, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x50, 0x52, 0x45, 0x53, + 0x45, 0x52, 0x56, 0x45, 0x10, 0xc6, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, 0x52, 0x45, 0x50, 0x41, + 0x52, 0x45, 0x10, 0xc7, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, + 0x44, 0x10, 0xc8, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x10, + 0xc9, 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x10, 0xca, 0x04, 0x12, 0x0f, + 0x0a, 0x0a, 0x50, 0x52, 0x49, 0x56, 0x49, 0x4c, 0x45, 0x47, 0x45, 0x53, 0x10, 0xcb, 0x04, 0x12, + 0x0f, 0x0a, 0x0a, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, 0x55, 0x52, 0x41, 0x4c, 0x10, 0xcc, 0x04, + 0x12, 0x0e, 0x0a, 0x09, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, 0x55, 0x52, 0x45, 0x10, 0xcd, 0x04, + 0x12, 0x0f, 0x0a, 0x0a, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, 0x55, 0x52, 0x45, 0x53, 0x10, 0xce, + 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x50, 0x52, 0x4f, 0x47, 0x52, 0x41, 0x4d, 0x10, 0xcf, 0x04, 0x12, + 0x10, 0x0a, 0x0b, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xd0, + 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x51, 0x55, 0x4f, 0x54, 0x45, 0x10, 0xd1, 0x04, 0x12, 0x0a, 0x0a, + 0x05, 0x52, 0x41, 0x4e, 0x47, 0x45, 0x10, 0xd2, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x52, 0x45, 0x41, + 0x44, 0x10, 0xd3, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x52, 0x45, 0x41, 0x4c, 0x10, 0xd4, 0x04, 0x12, + 0x0d, 0x0a, 0x08, 0x52, 0x45, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x10, 0xd5, 0x04, 0x12, 0x0c, + 0x0a, 0x07, 0x52, 0x45, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x10, 0xd6, 0x04, 0x12, 0x0e, 0x0a, 0x09, + 0x52, 0x45, 0x43, 0x55, 0x52, 0x53, 0x49, 0x56, 0x45, 0x10, 0xd7, 0x04, 0x12, 0x0a, 0x0a, 0x05, + 0x52, 0x45, 0x46, 0x5f, 0x50, 0x10, 0xd8, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x52, 0x45, 0x46, 0x45, + 0x52, 0x45, 0x4e, 0x43, 0x45, 0x53, 0x10, 0xd9, 0x04, 0x12, 0x10, 0x0a, 0x0b, 0x52, 0x45, 0x46, + 0x45, 0x52, 0x45, 0x4e, 0x43, 0x49, 0x4e, 0x47, 0x10, 0xda, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, + 0x45, 0x46, 0x52, 0x45, 0x53, 0x48, 0x10, 0xdb, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x49, + 0x4e, 0x44, 0x45, 0x58, 0x10, 0xdc, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x52, 0x45, 0x4c, 0x41, 0x54, + 0x49, 0x56, 0x45, 0x5f, 0x50, 0x10, 0xdd, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x4c, 0x45, + 0x41, 0x53, 0x45, 0x10, 0xde, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x52, 0x45, 0x4e, 0x41, 0x4d, 0x45, + 0x10, 0xdf, 0x04, 0x12, 0x0f, 0x0a, 0x0a, 0x52, 0x45, 0x50, 0x45, 0x41, 0x54, 0x41, 0x42, 0x4c, + 0x45, 0x10, 0xe0, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x10, + 0xe1, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10, 0xe2, 0x04, + 0x12, 0x0a, 0x0a, 0x05, 0x52, 0x45, 0x53, 0x45, 0x54, 0x10, 0xe3, 0x04, 0x12, 0x0c, 0x0a, 0x07, + 0x52, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0xe4, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x52, 0x45, + 0x53, 0x54, 0x52, 0x49, 0x43, 0x54, 0x10, 0xe5, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x52, 0x45, 0x54, + 0x55, 0x52, 0x4e, 0x10, 0xe6, 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x52, 0x45, 0x54, 0x55, 0x52, 0x4e, + 0x49, 0x4e, 0x47, 0x10, 0xe7, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x45, 0x54, 0x55, 0x52, 0x4e, + 0x53, 0x10, 0xe8, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x52, 0x45, 0x56, 0x4f, 0x4b, 0x45, 0x10, 0xe9, + 0x04, 0x12, 0x0a, 0x0a, 0x05, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0xea, 0x04, 0x12, 0x09, 0x0a, + 0x04, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0xeb, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x52, 0x4f, 0x4c, 0x4c, + 0x42, 0x41, 0x43, 0x4b, 0x10, 0xec, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x52, 0x4f, 0x4c, 0x4c, 0x55, + 0x50, 0x10, 0xed, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x52, 0x4f, 0x55, 0x54, 0x49, 0x4e, 0x45, 0x10, + 0xee, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x52, 0x4f, 0x55, 0x54, 0x49, 0x4e, 0x45, 0x53, 0x10, 0xef, + 0x04, 0x12, 0x08, 0x0a, 0x03, 0x52, 0x4f, 0x57, 0x10, 0xf0, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x52, + 0x4f, 0x57, 0x53, 0x10, 0xf1, 0x04, 0x12, 0x09, 0x0a, 0x04, 0x52, 0x55, 0x4c, 0x45, 0x10, 0xf2, + 0x04, 0x12, 0x0e, 0x0a, 0x09, 0x53, 0x41, 0x56, 0x45, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0xf3, + 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x43, 0x41, 0x4c, 0x41, 0x52, 0x10, 0xf4, 0x04, 0x12, 0x0b, + 0x0a, 0x06, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0xf5, 0x04, 0x12, 0x0c, 0x0a, 0x07, 0x53, + 0x43, 0x48, 0x45, 0x4d, 0x41, 0x53, 0x10, 0xf6, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x43, 0x52, + 0x4f, 0x4c, 0x4c, 0x10, 0xf7, 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x45, 0x41, 0x52, 0x43, 0x48, + 0x10, 0xf8, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x5f, 0x50, 0x10, + 0xf9, 0x04, 0x12, 0x0d, 0x0a, 0x08, 0x53, 0x45, 0x43, 0x55, 0x52, 0x49, 0x54, 0x59, 0x10, 0xfa, + 0x04, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x10, 0xfb, 0x04, 0x12, 0x0d, + 0x0a, 0x08, 0x53, 0x45, 0x51, 0x55, 0x45, 0x4e, 0x43, 0x45, 0x10, 0xfc, 0x04, 0x12, 0x0e, 0x0a, + 0x09, 0x53, 0x45, 0x51, 0x55, 0x45, 0x4e, 0x43, 0x45, 0x53, 0x10, 0xfd, 0x04, 0x12, 0x11, 0x0a, + 0x0c, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x41, 0x42, 0x4c, 0x45, 0x10, 0xfe, 0x04, + 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x10, 0xff, 0x04, 0x12, 0x0c, 0x0a, + 0x07, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x80, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x53, + 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x81, 0x05, 0x12, 0x08, + 0x0a, 0x03, 0x53, 0x45, 0x54, 0x10, 0x82, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x53, 0x45, 0x54, 0x53, + 0x10, 0x83, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x53, 0x45, 0x54, 0x4f, 0x46, 0x10, 0x84, 0x05, 0x12, + 0x0a, 0x0a, 0x05, 0x53, 0x48, 0x41, 0x52, 0x45, 0x10, 0x85, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x53, + 0x48, 0x4f, 0x57, 0x10, 0x86, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x53, 0x49, 0x4d, 0x49, 0x4c, 0x41, + 0x52, 0x10, 0x87, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x49, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0x88, + 0x05, 0x12, 0x09, 0x0a, 0x04, 0x53, 0x4b, 0x49, 0x50, 0x10, 0x89, 0x05, 0x12, 0x0d, 0x0a, 0x08, + 0x53, 0x4d, 0x41, 0x4c, 0x4c, 0x49, 0x4e, 0x54, 0x10, 0x8a, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x53, + 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x10, 0x8b, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x53, 0x4f, + 0x4d, 0x45, 0x10, 0x8c, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x53, 0x51, 0x4c, 0x5f, 0x50, 0x10, 0x8d, + 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x8e, 0x05, 0x12, 0x11, + 0x0a, 0x0c, 0x53, 0x54, 0x41, 0x4e, 0x44, 0x41, 0x4c, 0x4f, 0x4e, 0x45, 0x5f, 0x50, 0x10, 0x8f, + 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x90, 0x05, 0x12, 0x0e, 0x0a, + 0x09, 0x53, 0x54, 0x41, 0x54, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x91, 0x05, 0x12, 0x0f, 0x0a, + 0x0a, 0x53, 0x54, 0x41, 0x54, 0x49, 0x53, 0x54, 0x49, 0x43, 0x53, 0x10, 0x92, 0x05, 0x12, 0x0a, + 0x0a, 0x05, 0x53, 0x54, 0x44, 0x49, 0x4e, 0x10, 0x93, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x54, + 0x44, 0x4f, 0x55, 0x54, 0x10, 0x94, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x53, 0x54, 0x4f, 0x52, 0x41, + 0x47, 0x45, 0x10, 0x95, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x44, 0x10, + 0x96, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x53, 0x54, 0x52, 0x49, 0x43, 0x54, 0x5f, 0x50, 0x10, 0x97, + 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x53, 0x54, 0x52, 0x49, 0x50, 0x5f, 0x50, 0x10, 0x98, 0x05, 0x12, + 0x11, 0x0a, 0x0c, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, + 0x99, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x53, 0x55, 0x42, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, + 0x9a, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x9b, 0x05, + 0x12, 0x0e, 0x0a, 0x09, 0x53, 0x59, 0x4d, 0x4d, 0x45, 0x54, 0x52, 0x49, 0x43, 0x10, 0x9c, 0x05, + 0x12, 0x0a, 0x0a, 0x05, 0x53, 0x59, 0x53, 0x49, 0x44, 0x10, 0x9d, 0x05, 0x12, 0x0d, 0x0a, 0x08, + 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x5f, 0x50, 0x10, 0x9e, 0x05, 0x12, 0x10, 0x0a, 0x0b, 0x53, + 0x59, 0x53, 0x54, 0x45, 0x4d, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x9f, 0x05, 0x12, 0x0a, 0x0a, + 0x05, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0xa0, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x54, 0x41, 0x42, + 0x4c, 0x45, 0x53, 0x10, 0xa1, 0x05, 0x12, 0x10, 0x0a, 0x0b, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x53, + 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0xa2, 0x05, 0x12, 0x0f, 0x0a, 0x0a, 0x54, 0x41, 0x42, 0x4c, + 0x45, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0xa3, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x54, 0x45, 0x4d, + 0x50, 0x10, 0xa4, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x54, 0x45, 0x4d, 0x50, 0x4c, 0x41, 0x54, 0x45, + 0x10, 0xa5, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x45, 0x4d, 0x50, 0x4f, 0x52, 0x41, 0x52, 0x59, + 0x10, 0xa6, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x50, 0x10, 0xa7, 0x05, + 0x12, 0x09, 0x0a, 0x04, 0x54, 0x48, 0x45, 0x4e, 0x10, 0xa8, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x54, + 0x49, 0x45, 0x53, 0x10, 0xa9, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x54, 0x49, 0x4d, 0x45, 0x10, 0xaa, + 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0xab, + 0x05, 0x12, 0x07, 0x0a, 0x02, 0x54, 0x4f, 0x10, 0xac, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x54, 0x52, + 0x41, 0x49, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0xad, 0x05, 0x12, 0x10, 0x0a, 0x0b, 0x54, 0x52, 0x41, + 0x4e, 0x53, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0xae, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x54, + 0x52, 0x41, 0x4e, 0x53, 0x46, 0x4f, 0x52, 0x4d, 0x10, 0xaf, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x54, + 0x52, 0x45, 0x41, 0x54, 0x10, 0xb0, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x54, 0x52, 0x49, 0x47, 0x47, + 0x45, 0x52, 0x10, 0xb1, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x54, 0x52, 0x49, 0x4d, 0x10, 0xb2, 0x05, + 0x12, 0x0b, 0x0a, 0x06, 0x54, 0x52, 0x55, 0x45, 0x5f, 0x50, 0x10, 0xb3, 0x05, 0x12, 0x0d, 0x0a, + 0x08, 0x54, 0x52, 0x55, 0x4e, 0x43, 0x41, 0x54, 0x45, 0x10, 0xb4, 0x05, 0x12, 0x0c, 0x0a, 0x07, + 0x54, 0x52, 0x55, 0x53, 0x54, 0x45, 0x44, 0x10, 0xb5, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x50, 0x10, 0xb6, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x54, 0x59, 0x50, 0x45, 0x53, + 0x5f, 0x50, 0x10, 0xb7, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x55, 0x45, 0x53, 0x43, 0x41, 0x50, 0x45, + 0x10, 0xb8, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x55, 0x4e, 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x45, 0x44, + 0x10, 0xb9, 0x05, 0x12, 0x10, 0x0a, 0x0b, 0x55, 0x4e, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x54, + 0x45, 0x44, 0x10, 0xba, 0x05, 0x12, 0x10, 0x0a, 0x0b, 0x55, 0x4e, 0x45, 0x4e, 0x43, 0x52, 0x59, + 0x50, 0x54, 0x45, 0x44, 0x10, 0xbb, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x55, 0x4e, 0x49, 0x4f, 0x4e, + 0x10, 0xbc, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x55, 0x4e, 0x49, 0x51, 0x55, 0x45, 0x10, 0xbd, 0x05, + 0x12, 0x0c, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0xbe, 0x05, 0x12, 0x0d, + 0x0a, 0x08, 0x55, 0x4e, 0x4c, 0x49, 0x53, 0x54, 0x45, 0x4e, 0x10, 0xbf, 0x05, 0x12, 0x0d, 0x0a, + 0x08, 0x55, 0x4e, 0x4c, 0x4f, 0x47, 0x47, 0x45, 0x44, 0x10, 0xc0, 0x05, 0x12, 0x0a, 0x0a, 0x05, + 0x55, 0x4e, 0x54, 0x49, 0x4c, 0x10, 0xc1, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x55, 0x50, 0x44, 0x41, + 0x54, 0x45, 0x10, 0xc2, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x55, 0x53, 0x45, 0x52, 0x10, 0xc3, 0x05, + 0x12, 0x0a, 0x0a, 0x05, 0x55, 0x53, 0x49, 0x4e, 0x47, 0x10, 0xc4, 0x05, 0x12, 0x0b, 0x0a, 0x06, + 0x56, 0x41, 0x43, 0x55, 0x55, 0x4d, 0x10, 0xc5, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x56, 0x41, 0x4c, + 0x49, 0x44, 0x10, 0xc6, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x41, 0x54, + 0x45, 0x10, 0xc7, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x41, 0x54, 0x4f, + 0x52, 0x10, 0xc8, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x50, 0x10, + 0xc9, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x53, 0x10, 0xca, 0x05, 0x12, + 0x0c, 0x0a, 0x07, 0x56, 0x41, 0x52, 0x43, 0x48, 0x41, 0x52, 0x10, 0xcb, 0x05, 0x12, 0x0d, 0x0a, + 0x08, 0x56, 0x41, 0x52, 0x49, 0x41, 0x44, 0x49, 0x43, 0x10, 0xcc, 0x05, 0x12, 0x0c, 0x0a, 0x07, + 0x56, 0x41, 0x52, 0x59, 0x49, 0x4e, 0x47, 0x10, 0xcd, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x56, 0x45, + 0x52, 0x42, 0x4f, 0x53, 0x45, 0x10, 0xce, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x56, 0x45, 0x52, 0x53, + 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x10, 0xcf, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x56, 0x49, 0x45, 0x57, + 0x10, 0xd0, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x56, 0x49, 0x45, 0x57, 0x53, 0x10, 0xd1, 0x05, 0x12, + 0x0d, 0x0a, 0x08, 0x56, 0x4f, 0x4c, 0x41, 0x54, 0x49, 0x4c, 0x45, 0x10, 0xd2, 0x05, 0x12, 0x09, + 0x0a, 0x04, 0x57, 0x48, 0x45, 0x4e, 0x10, 0xd3, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x57, 0x48, 0x45, + 0x52, 0x45, 0x10, 0xd4, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x57, 0x48, 0x49, 0x54, 0x45, 0x53, 0x50, + 0x41, 0x43, 0x45, 0x5f, 0x50, 0x10, 0xd5, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x57, 0x49, 0x4e, 0x44, + 0x4f, 0x57, 0x10, 0xd6, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x57, 0x49, 0x54, 0x48, 0x10, 0xd7, 0x05, + 0x12, 0x0b, 0x0a, 0x06, 0x57, 0x49, 0x54, 0x48, 0x49, 0x4e, 0x10, 0xd8, 0x05, 0x12, 0x0c, 0x0a, + 0x07, 0x57, 0x49, 0x54, 0x48, 0x4f, 0x55, 0x54, 0x10, 0xd9, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x57, + 0x4f, 0x52, 0x4b, 0x10, 0xda, 0x05, 0x12, 0x0c, 0x0a, 0x07, 0x57, 0x52, 0x41, 0x50, 0x50, 0x45, + 0x52, 0x10, 0xdb, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x57, 0x52, 0x49, 0x54, 0x45, 0x10, 0xdc, 0x05, + 0x12, 0x0a, 0x0a, 0x05, 0x58, 0x4d, 0x4c, 0x5f, 0x50, 0x10, 0xdd, 0x05, 0x12, 0x12, 0x0a, 0x0d, + 0x58, 0x4d, 0x4c, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, 0x53, 0x10, 0xde, 0x05, + 0x12, 0x0e, 0x0a, 0x09, 0x58, 0x4d, 0x4c, 0x43, 0x4f, 0x4e, 0x43, 0x41, 0x54, 0x10, 0xdf, 0x05, + 0x12, 0x0f, 0x0a, 0x0a, 0x58, 0x4d, 0x4c, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0xe0, + 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x58, 0x4d, 0x4c, 0x45, 0x58, 0x49, 0x53, 0x54, 0x53, 0x10, 0xe1, + 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x58, 0x4d, 0x4c, 0x46, 0x4f, 0x52, 0x45, 0x53, 0x54, 0x10, 0xe2, + 0x05, 0x12, 0x12, 0x0a, 0x0d, 0x58, 0x4d, 0x4c, 0x4e, 0x41, 0x4d, 0x45, 0x53, 0x50, 0x41, 0x43, + 0x45, 0x53, 0x10, 0xe3, 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x58, 0x4d, 0x4c, 0x50, 0x41, 0x52, 0x53, + 0x45, 0x10, 0xe4, 0x05, 0x12, 0x0a, 0x0a, 0x05, 0x58, 0x4d, 0x4c, 0x50, 0x49, 0x10, 0xe5, 0x05, + 0x12, 0x0c, 0x0a, 0x07, 0x58, 0x4d, 0x4c, 0x52, 0x4f, 0x4f, 0x54, 0x10, 0xe6, 0x05, 0x12, 0x11, + 0x0a, 0x0c, 0x58, 0x4d, 0x4c, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x10, 0xe7, + 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x58, 0x4d, 0x4c, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x10, 0xe8, 0x05, + 0x12, 0x0b, 0x0a, 0x06, 0x59, 0x45, 0x41, 0x52, 0x5f, 0x50, 0x10, 0xe9, 0x05, 0x12, 0x0a, 0x0a, + 0x05, 0x59, 0x45, 0x53, 0x5f, 0x50, 0x10, 0xea, 0x05, 0x12, 0x09, 0x0a, 0x04, 0x5a, 0x4f, 0x4e, + 0x45, 0x10, 0xeb, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x4c, + 0x41, 0x10, 0xec, 0x05, 0x12, 0x0b, 0x0a, 0x06, 0x4e, 0x4f, 0x54, 0x5f, 0x4c, 0x41, 0x10, 0xed, + 0x05, 0x12, 0x0d, 0x0a, 0x08, 0x4e, 0x55, 0x4c, 0x4c, 0x53, 0x5f, 0x4c, 0x41, 0x10, 0xee, 0x05, + 0x12, 0x0c, 0x0a, 0x07, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x4c, 0x41, 0x10, 0xef, 0x05, 0x12, 0x0f, + 0x0a, 0x0a, 0x57, 0x49, 0x54, 0x48, 0x4f, 0x55, 0x54, 0x5f, 0x4c, 0x41, 0x10, 0xf0, 0x05, 0x12, + 0x13, 0x0a, 0x0e, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x41, 0x4d, + 0x45, 0x10, 0xf1, 0x05, 0x12, 0x16, 0x0a, 0x11, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x4c, 0x50, + 0x47, 0x53, 0x51, 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x10, 0xf2, 0x05, 0x12, 0x19, 0x0a, 0x14, + 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x4c, 0x50, 0x47, 0x53, 0x51, 0x4c, 0x5f, 0x41, 0x53, 0x53, + 0x49, 0x47, 0x4e, 0x31, 0x10, 0xf3, 0x05, 0x12, 0x19, 0x0a, 0x14, 0x4d, 0x4f, 0x44, 0x45, 0x5f, + 0x50, 0x4c, 0x50, 0x47, 0x53, 0x51, 0x4c, 0x5f, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x32, 0x10, + 0xf4, 0x05, 0x12, 0x19, 0x0a, 0x14, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x4c, 0x50, 0x47, 0x53, + 0x51, 0x4c, 0x5f, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x33, 0x10, 0xf5, 0x05, 0x12, 0x0b, 0x0a, + 0x06, 0x55, 0x4d, 0x49, 0x4e, 0x55, 0x53, 0x10, 0xf6, 0x05, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, } var ( @@ -33656,8 +35360,8 @@ func file_pg_query_proto_rawDescGZIP() []byte { return file_pg_query_proto_rawDescData } -var file_pg_query_proto_enumTypes = make([]protoimpl.EnumInfo, 59) -var file_pg_query_proto_msgTypes = make([]protoimpl.MessageInfo, 242) +var file_pg_query_proto_enumTypes = make([]protoimpl.EnumInfo, 64) +var file_pg_query_proto_msgTypes = make([]protoimpl.MessageInfo, 256) var file_pg_query_proto_goTypes = []interface{}{ (OverridingKind)(0), // 0: pg_query.OverridingKind (QuerySource)(0), // 1: pg_query.QuerySource @@ -33668,1209 +35372,1278 @@ var file_pg_query_proto_goTypes = []interface{}{ (RoleSpecType)(0), // 6: pg_query.RoleSpecType (TableLikeOption)(0), // 7: pg_query.TableLikeOption (DefElemAction)(0), // 8: pg_query.DefElemAction - (PartitionRangeDatumKind)(0), // 9: pg_query.PartitionRangeDatumKind - (RTEKind)(0), // 10: pg_query.RTEKind - (WCOKind)(0), // 11: pg_query.WCOKind - (GroupingSetKind)(0), // 12: pg_query.GroupingSetKind - (CTEMaterialize)(0), // 13: pg_query.CTEMaterialize - (SetOperation)(0), // 14: pg_query.SetOperation - (ObjectType)(0), // 15: pg_query.ObjectType - (DropBehavior)(0), // 16: pg_query.DropBehavior - (AlterTableType)(0), // 17: pg_query.AlterTableType - (GrantTargetType)(0), // 18: pg_query.GrantTargetType - (VariableSetKind)(0), // 19: pg_query.VariableSetKind - (ConstrType)(0), // 20: pg_query.ConstrType - (ImportForeignSchemaType)(0), // 21: pg_query.ImportForeignSchemaType - (RoleStmtType)(0), // 22: pg_query.RoleStmtType - (FetchDirection)(0), // 23: pg_query.FetchDirection - (FunctionParameterMode)(0), // 24: pg_query.FunctionParameterMode - (TransactionStmtKind)(0), // 25: pg_query.TransactionStmtKind - (ViewCheckOption)(0), // 26: pg_query.ViewCheckOption - (DiscardMode)(0), // 27: pg_query.DiscardMode - (ReindexObjectType)(0), // 28: pg_query.ReindexObjectType - (AlterTSConfigType)(0), // 29: pg_query.AlterTSConfigType - (PublicationObjSpecType)(0), // 30: pg_query.PublicationObjSpecType - (AlterPublicationAction)(0), // 31: pg_query.AlterPublicationAction - (AlterSubscriptionType)(0), // 32: pg_query.AlterSubscriptionType - (OnCommitAction)(0), // 33: pg_query.OnCommitAction - (ParamKind)(0), // 34: pg_query.ParamKind - (CoercionContext)(0), // 35: pg_query.CoercionContext - (CoercionForm)(0), // 36: pg_query.CoercionForm - (BoolExprType)(0), // 37: pg_query.BoolExprType - (SubLinkType)(0), // 38: pg_query.SubLinkType - (RowCompareType)(0), // 39: pg_query.RowCompareType - (MinMaxOp)(0), // 40: pg_query.MinMaxOp - (SQLValueFunctionOp)(0), // 41: pg_query.SQLValueFunctionOp - (XmlExprOp)(0), // 42: pg_query.XmlExprOp - (XmlOptionType)(0), // 43: pg_query.XmlOptionType - (NullTestType)(0), // 44: pg_query.NullTestType - (BoolTestType)(0), // 45: pg_query.BoolTestType - (CmdType)(0), // 46: pg_query.CmdType - (JoinType)(0), // 47: pg_query.JoinType - (AggStrategy)(0), // 48: pg_query.AggStrategy - (AggSplit)(0), // 49: pg_query.AggSplit - (SetOpCmd)(0), // 50: pg_query.SetOpCmd - (SetOpStrategy)(0), // 51: pg_query.SetOpStrategy - (OnConflictAction)(0), // 52: pg_query.OnConflictAction - (LimitOption)(0), // 53: pg_query.LimitOption - (LockClauseStrength)(0), // 54: pg_query.LockClauseStrength - (LockWaitPolicy)(0), // 55: pg_query.LockWaitPolicy - (LockTupleMode)(0), // 56: pg_query.LockTupleMode - (KeywordKind)(0), // 57: pg_query.KeywordKind - (Token)(0), // 58: pg_query.Token - (*ParseResult)(nil), // 59: pg_query.ParseResult - (*ScanResult)(nil), // 60: pg_query.ScanResult - (*Node)(nil), // 61: pg_query.Node - (*Integer)(nil), // 62: pg_query.Integer - (*Float)(nil), // 63: pg_query.Float - (*Boolean)(nil), // 64: pg_query.Boolean - (*String)(nil), // 65: pg_query.String - (*BitString)(nil), // 66: pg_query.BitString - (*List)(nil), // 67: pg_query.List - (*OidList)(nil), // 68: pg_query.OidList - (*IntList)(nil), // 69: pg_query.IntList - (*A_Const)(nil), // 70: pg_query.A_Const - (*Alias)(nil), // 71: pg_query.Alias - (*RangeVar)(nil), // 72: pg_query.RangeVar - (*TableFunc)(nil), // 73: pg_query.TableFunc - (*Var)(nil), // 74: pg_query.Var - (*Param)(nil), // 75: pg_query.Param - (*Aggref)(nil), // 76: pg_query.Aggref - (*GroupingFunc)(nil), // 77: pg_query.GroupingFunc - (*WindowFunc)(nil), // 78: pg_query.WindowFunc - (*SubscriptingRef)(nil), // 79: pg_query.SubscriptingRef - (*FuncExpr)(nil), // 80: pg_query.FuncExpr - (*NamedArgExpr)(nil), // 81: pg_query.NamedArgExpr - (*OpExpr)(nil), // 82: pg_query.OpExpr - (*DistinctExpr)(nil), // 83: pg_query.DistinctExpr - (*NullIfExpr)(nil), // 84: pg_query.NullIfExpr - (*ScalarArrayOpExpr)(nil), // 85: pg_query.ScalarArrayOpExpr - (*BoolExpr)(nil), // 86: pg_query.BoolExpr - (*SubLink)(nil), // 87: pg_query.SubLink - (*SubPlan)(nil), // 88: pg_query.SubPlan - (*AlternativeSubPlan)(nil), // 89: pg_query.AlternativeSubPlan - (*FieldSelect)(nil), // 90: pg_query.FieldSelect - (*FieldStore)(nil), // 91: pg_query.FieldStore - (*RelabelType)(nil), // 92: pg_query.RelabelType - (*CoerceViaIO)(nil), // 93: pg_query.CoerceViaIO - (*ArrayCoerceExpr)(nil), // 94: pg_query.ArrayCoerceExpr - (*ConvertRowtypeExpr)(nil), // 95: pg_query.ConvertRowtypeExpr - (*CollateExpr)(nil), // 96: pg_query.CollateExpr - (*CaseExpr)(nil), // 97: pg_query.CaseExpr - (*CaseWhen)(nil), // 98: pg_query.CaseWhen - (*CaseTestExpr)(nil), // 99: pg_query.CaseTestExpr - (*ArrayExpr)(nil), // 100: pg_query.ArrayExpr - (*RowExpr)(nil), // 101: pg_query.RowExpr - (*RowCompareExpr)(nil), // 102: pg_query.RowCompareExpr - (*CoalesceExpr)(nil), // 103: pg_query.CoalesceExpr - (*MinMaxExpr)(nil), // 104: pg_query.MinMaxExpr - (*SQLValueFunction)(nil), // 105: pg_query.SQLValueFunction - (*XmlExpr)(nil), // 106: pg_query.XmlExpr - (*NullTest)(nil), // 107: pg_query.NullTest - (*BooleanTest)(nil), // 108: pg_query.BooleanTest - (*CoerceToDomain)(nil), // 109: pg_query.CoerceToDomain - (*CoerceToDomainValue)(nil), // 110: pg_query.CoerceToDomainValue - (*SetToDefault)(nil), // 111: pg_query.SetToDefault - (*CurrentOfExpr)(nil), // 112: pg_query.CurrentOfExpr - (*NextValueExpr)(nil), // 113: pg_query.NextValueExpr - (*InferenceElem)(nil), // 114: pg_query.InferenceElem - (*TargetEntry)(nil), // 115: pg_query.TargetEntry - (*RangeTblRef)(nil), // 116: pg_query.RangeTblRef - (*JoinExpr)(nil), // 117: pg_query.JoinExpr - (*FromExpr)(nil), // 118: pg_query.FromExpr - (*OnConflictExpr)(nil), // 119: pg_query.OnConflictExpr - (*IntoClause)(nil), // 120: pg_query.IntoClause - (*MergeAction)(nil), // 121: pg_query.MergeAction - (*RawStmt)(nil), // 122: pg_query.RawStmt - (*Query)(nil), // 123: pg_query.Query - (*InsertStmt)(nil), // 124: pg_query.InsertStmt - (*DeleteStmt)(nil), // 125: pg_query.DeleteStmt - (*UpdateStmt)(nil), // 126: pg_query.UpdateStmt - (*MergeStmt)(nil), // 127: pg_query.MergeStmt - (*SelectStmt)(nil), // 128: pg_query.SelectStmt - (*ReturnStmt)(nil), // 129: pg_query.ReturnStmt - (*PLAssignStmt)(nil), // 130: pg_query.PLAssignStmt - (*AlterTableStmt)(nil), // 131: pg_query.AlterTableStmt - (*AlterTableCmd)(nil), // 132: pg_query.AlterTableCmd - (*AlterDomainStmt)(nil), // 133: pg_query.AlterDomainStmt - (*SetOperationStmt)(nil), // 134: pg_query.SetOperationStmt - (*GrantStmt)(nil), // 135: pg_query.GrantStmt - (*GrantRoleStmt)(nil), // 136: pg_query.GrantRoleStmt - (*AlterDefaultPrivilegesStmt)(nil), // 137: pg_query.AlterDefaultPrivilegesStmt - (*ClosePortalStmt)(nil), // 138: pg_query.ClosePortalStmt - (*ClusterStmt)(nil), // 139: pg_query.ClusterStmt - (*CopyStmt)(nil), // 140: pg_query.CopyStmt - (*CreateStmt)(nil), // 141: pg_query.CreateStmt - (*DefineStmt)(nil), // 142: pg_query.DefineStmt - (*DropStmt)(nil), // 143: pg_query.DropStmt - (*TruncateStmt)(nil), // 144: pg_query.TruncateStmt - (*CommentStmt)(nil), // 145: pg_query.CommentStmt - (*FetchStmt)(nil), // 146: pg_query.FetchStmt - (*IndexStmt)(nil), // 147: pg_query.IndexStmt - (*CreateFunctionStmt)(nil), // 148: pg_query.CreateFunctionStmt - (*AlterFunctionStmt)(nil), // 149: pg_query.AlterFunctionStmt - (*DoStmt)(nil), // 150: pg_query.DoStmt - (*RenameStmt)(nil), // 151: pg_query.RenameStmt - (*RuleStmt)(nil), // 152: pg_query.RuleStmt - (*NotifyStmt)(nil), // 153: pg_query.NotifyStmt - (*ListenStmt)(nil), // 154: pg_query.ListenStmt - (*UnlistenStmt)(nil), // 155: pg_query.UnlistenStmt - (*TransactionStmt)(nil), // 156: pg_query.TransactionStmt - (*ViewStmt)(nil), // 157: pg_query.ViewStmt - (*LoadStmt)(nil), // 158: pg_query.LoadStmt - (*CreateDomainStmt)(nil), // 159: pg_query.CreateDomainStmt - (*CreatedbStmt)(nil), // 160: pg_query.CreatedbStmt - (*DropdbStmt)(nil), // 161: pg_query.DropdbStmt - (*VacuumStmt)(nil), // 162: pg_query.VacuumStmt - (*ExplainStmt)(nil), // 163: pg_query.ExplainStmt - (*CreateTableAsStmt)(nil), // 164: pg_query.CreateTableAsStmt - (*CreateSeqStmt)(nil), // 165: pg_query.CreateSeqStmt - (*AlterSeqStmt)(nil), // 166: pg_query.AlterSeqStmt - (*VariableSetStmt)(nil), // 167: pg_query.VariableSetStmt - (*VariableShowStmt)(nil), // 168: pg_query.VariableShowStmt - (*DiscardStmt)(nil), // 169: pg_query.DiscardStmt - (*CreateTrigStmt)(nil), // 170: pg_query.CreateTrigStmt - (*CreatePLangStmt)(nil), // 171: pg_query.CreatePLangStmt - (*CreateRoleStmt)(nil), // 172: pg_query.CreateRoleStmt - (*AlterRoleStmt)(nil), // 173: pg_query.AlterRoleStmt - (*DropRoleStmt)(nil), // 174: pg_query.DropRoleStmt - (*LockStmt)(nil), // 175: pg_query.LockStmt - (*ConstraintsSetStmt)(nil), // 176: pg_query.ConstraintsSetStmt - (*ReindexStmt)(nil), // 177: pg_query.ReindexStmt - (*CheckPointStmt)(nil), // 178: pg_query.CheckPointStmt - (*CreateSchemaStmt)(nil), // 179: pg_query.CreateSchemaStmt - (*AlterDatabaseStmt)(nil), // 180: pg_query.AlterDatabaseStmt - (*AlterDatabaseRefreshCollStmt)(nil), // 181: pg_query.AlterDatabaseRefreshCollStmt - (*AlterDatabaseSetStmt)(nil), // 182: pg_query.AlterDatabaseSetStmt - (*AlterRoleSetStmt)(nil), // 183: pg_query.AlterRoleSetStmt - (*CreateConversionStmt)(nil), // 184: pg_query.CreateConversionStmt - (*CreateCastStmt)(nil), // 185: pg_query.CreateCastStmt - (*CreateOpClassStmt)(nil), // 186: pg_query.CreateOpClassStmt - (*CreateOpFamilyStmt)(nil), // 187: pg_query.CreateOpFamilyStmt - (*AlterOpFamilyStmt)(nil), // 188: pg_query.AlterOpFamilyStmt - (*PrepareStmt)(nil), // 189: pg_query.PrepareStmt - (*ExecuteStmt)(nil), // 190: pg_query.ExecuteStmt - (*DeallocateStmt)(nil), // 191: pg_query.DeallocateStmt - (*DeclareCursorStmt)(nil), // 192: pg_query.DeclareCursorStmt - (*CreateTableSpaceStmt)(nil), // 193: pg_query.CreateTableSpaceStmt - (*DropTableSpaceStmt)(nil), // 194: pg_query.DropTableSpaceStmt - (*AlterObjectDependsStmt)(nil), // 195: pg_query.AlterObjectDependsStmt - (*AlterObjectSchemaStmt)(nil), // 196: pg_query.AlterObjectSchemaStmt - (*AlterOwnerStmt)(nil), // 197: pg_query.AlterOwnerStmt - (*AlterOperatorStmt)(nil), // 198: pg_query.AlterOperatorStmt - (*AlterTypeStmt)(nil), // 199: pg_query.AlterTypeStmt - (*DropOwnedStmt)(nil), // 200: pg_query.DropOwnedStmt - (*ReassignOwnedStmt)(nil), // 201: pg_query.ReassignOwnedStmt - (*CompositeTypeStmt)(nil), // 202: pg_query.CompositeTypeStmt - (*CreateEnumStmt)(nil), // 203: pg_query.CreateEnumStmt - (*CreateRangeStmt)(nil), // 204: pg_query.CreateRangeStmt - (*AlterEnumStmt)(nil), // 205: pg_query.AlterEnumStmt - (*AlterTSDictionaryStmt)(nil), // 206: pg_query.AlterTSDictionaryStmt - (*AlterTSConfigurationStmt)(nil), // 207: pg_query.AlterTSConfigurationStmt - (*CreateFdwStmt)(nil), // 208: pg_query.CreateFdwStmt - (*AlterFdwStmt)(nil), // 209: pg_query.AlterFdwStmt - (*CreateForeignServerStmt)(nil), // 210: pg_query.CreateForeignServerStmt - (*AlterForeignServerStmt)(nil), // 211: pg_query.AlterForeignServerStmt - (*CreateUserMappingStmt)(nil), // 212: pg_query.CreateUserMappingStmt - (*AlterUserMappingStmt)(nil), // 213: pg_query.AlterUserMappingStmt - (*DropUserMappingStmt)(nil), // 214: pg_query.DropUserMappingStmt - (*AlterTableSpaceOptionsStmt)(nil), // 215: pg_query.AlterTableSpaceOptionsStmt - (*AlterTableMoveAllStmt)(nil), // 216: pg_query.AlterTableMoveAllStmt - (*SecLabelStmt)(nil), // 217: pg_query.SecLabelStmt - (*CreateForeignTableStmt)(nil), // 218: pg_query.CreateForeignTableStmt - (*ImportForeignSchemaStmt)(nil), // 219: pg_query.ImportForeignSchemaStmt - (*CreateExtensionStmt)(nil), // 220: pg_query.CreateExtensionStmt - (*AlterExtensionStmt)(nil), // 221: pg_query.AlterExtensionStmt - (*AlterExtensionContentsStmt)(nil), // 222: pg_query.AlterExtensionContentsStmt - (*CreateEventTrigStmt)(nil), // 223: pg_query.CreateEventTrigStmt - (*AlterEventTrigStmt)(nil), // 224: pg_query.AlterEventTrigStmt - (*RefreshMatViewStmt)(nil), // 225: pg_query.RefreshMatViewStmt - (*ReplicaIdentityStmt)(nil), // 226: pg_query.ReplicaIdentityStmt - (*AlterSystemStmt)(nil), // 227: pg_query.AlterSystemStmt - (*CreatePolicyStmt)(nil), // 228: pg_query.CreatePolicyStmt - (*AlterPolicyStmt)(nil), // 229: pg_query.AlterPolicyStmt - (*CreateTransformStmt)(nil), // 230: pg_query.CreateTransformStmt - (*CreateAmStmt)(nil), // 231: pg_query.CreateAmStmt - (*CreatePublicationStmt)(nil), // 232: pg_query.CreatePublicationStmt - (*AlterPublicationStmt)(nil), // 233: pg_query.AlterPublicationStmt - (*CreateSubscriptionStmt)(nil), // 234: pg_query.CreateSubscriptionStmt - (*AlterSubscriptionStmt)(nil), // 235: pg_query.AlterSubscriptionStmt - (*DropSubscriptionStmt)(nil), // 236: pg_query.DropSubscriptionStmt - (*CreateStatsStmt)(nil), // 237: pg_query.CreateStatsStmt - (*AlterCollationStmt)(nil), // 238: pg_query.AlterCollationStmt - (*CallStmt)(nil), // 239: pg_query.CallStmt - (*AlterStatsStmt)(nil), // 240: pg_query.AlterStatsStmt - (*A_Expr)(nil), // 241: pg_query.A_Expr - (*ColumnRef)(nil), // 242: pg_query.ColumnRef - (*ParamRef)(nil), // 243: pg_query.ParamRef - (*FuncCall)(nil), // 244: pg_query.FuncCall - (*A_Star)(nil), // 245: pg_query.A_Star - (*A_Indices)(nil), // 246: pg_query.A_Indices - (*A_Indirection)(nil), // 247: pg_query.A_Indirection - (*A_ArrayExpr)(nil), // 248: pg_query.A_ArrayExpr - (*ResTarget)(nil), // 249: pg_query.ResTarget - (*MultiAssignRef)(nil), // 250: pg_query.MultiAssignRef - (*TypeCast)(nil), // 251: pg_query.TypeCast - (*CollateClause)(nil), // 252: pg_query.CollateClause - (*SortBy)(nil), // 253: pg_query.SortBy - (*WindowDef)(nil), // 254: pg_query.WindowDef - (*RangeSubselect)(nil), // 255: pg_query.RangeSubselect - (*RangeFunction)(nil), // 256: pg_query.RangeFunction - (*RangeTableSample)(nil), // 257: pg_query.RangeTableSample - (*RangeTableFunc)(nil), // 258: pg_query.RangeTableFunc - (*RangeTableFuncCol)(nil), // 259: pg_query.RangeTableFuncCol - (*TypeName)(nil), // 260: pg_query.TypeName - (*ColumnDef)(nil), // 261: pg_query.ColumnDef - (*IndexElem)(nil), // 262: pg_query.IndexElem - (*StatsElem)(nil), // 263: pg_query.StatsElem - (*Constraint)(nil), // 264: pg_query.Constraint - (*DefElem)(nil), // 265: pg_query.DefElem - (*RangeTblEntry)(nil), // 266: pg_query.RangeTblEntry - (*RangeTblFunction)(nil), // 267: pg_query.RangeTblFunction - (*TableSampleClause)(nil), // 268: pg_query.TableSampleClause - (*WithCheckOption)(nil), // 269: pg_query.WithCheckOption - (*SortGroupClause)(nil), // 270: pg_query.SortGroupClause - (*GroupingSet)(nil), // 271: pg_query.GroupingSet - (*WindowClause)(nil), // 272: pg_query.WindowClause - (*ObjectWithArgs)(nil), // 273: pg_query.ObjectWithArgs - (*AccessPriv)(nil), // 274: pg_query.AccessPriv - (*CreateOpClassItem)(nil), // 275: pg_query.CreateOpClassItem - (*TableLikeClause)(nil), // 276: pg_query.TableLikeClause - (*FunctionParameter)(nil), // 277: pg_query.FunctionParameter - (*LockingClause)(nil), // 278: pg_query.LockingClause - (*RowMarkClause)(nil), // 279: pg_query.RowMarkClause - (*XmlSerialize)(nil), // 280: pg_query.XmlSerialize - (*WithClause)(nil), // 281: pg_query.WithClause - (*InferClause)(nil), // 282: pg_query.InferClause - (*OnConflictClause)(nil), // 283: pg_query.OnConflictClause - (*CTESearchClause)(nil), // 284: pg_query.CTESearchClause - (*CTECycleClause)(nil), // 285: pg_query.CTECycleClause - (*CommonTableExpr)(nil), // 286: pg_query.CommonTableExpr - (*MergeWhenClause)(nil), // 287: pg_query.MergeWhenClause - (*RoleSpec)(nil), // 288: pg_query.RoleSpec - (*TriggerTransition)(nil), // 289: pg_query.TriggerTransition - (*PartitionElem)(nil), // 290: pg_query.PartitionElem - (*PartitionSpec)(nil), // 291: pg_query.PartitionSpec - (*PartitionBoundSpec)(nil), // 292: pg_query.PartitionBoundSpec - (*PartitionRangeDatum)(nil), // 293: pg_query.PartitionRangeDatum - (*PartitionCmd)(nil), // 294: pg_query.PartitionCmd - (*VacuumRelation)(nil), // 295: pg_query.VacuumRelation - (*PublicationObjSpec)(nil), // 296: pg_query.PublicationObjSpec - (*PublicationTable)(nil), // 297: pg_query.PublicationTable - (*InlineCodeBlock)(nil), // 298: pg_query.InlineCodeBlock - (*CallContext)(nil), // 299: pg_query.CallContext - (*ScanToken)(nil), // 300: pg_query.ScanToken + (PartitionStrategy)(0), // 9: pg_query.PartitionStrategy + (PartitionRangeDatumKind)(0), // 10: pg_query.PartitionRangeDatumKind + (RTEKind)(0), // 11: pg_query.RTEKind + (WCOKind)(0), // 12: pg_query.WCOKind + (GroupingSetKind)(0), // 13: pg_query.GroupingSetKind + (CTEMaterialize)(0), // 14: pg_query.CTEMaterialize + (SetOperation)(0), // 15: pg_query.SetOperation + (ObjectType)(0), // 16: pg_query.ObjectType + (DropBehavior)(0), // 17: pg_query.DropBehavior + (AlterTableType)(0), // 18: pg_query.AlterTableType + (GrantTargetType)(0), // 19: pg_query.GrantTargetType + (VariableSetKind)(0), // 20: pg_query.VariableSetKind + (ConstrType)(0), // 21: pg_query.ConstrType + (ImportForeignSchemaType)(0), // 22: pg_query.ImportForeignSchemaType + (RoleStmtType)(0), // 23: pg_query.RoleStmtType + (FetchDirection)(0), // 24: pg_query.FetchDirection + (FunctionParameterMode)(0), // 25: pg_query.FunctionParameterMode + (TransactionStmtKind)(0), // 26: pg_query.TransactionStmtKind + (ViewCheckOption)(0), // 27: pg_query.ViewCheckOption + (DiscardMode)(0), // 28: pg_query.DiscardMode + (ReindexObjectType)(0), // 29: pg_query.ReindexObjectType + (AlterTSConfigType)(0), // 30: pg_query.AlterTSConfigType + (PublicationObjSpecType)(0), // 31: pg_query.PublicationObjSpecType + (AlterPublicationAction)(0), // 32: pg_query.AlterPublicationAction + (AlterSubscriptionType)(0), // 33: pg_query.AlterSubscriptionType + (OnCommitAction)(0), // 34: pg_query.OnCommitAction + (ParamKind)(0), // 35: pg_query.ParamKind + (CoercionContext)(0), // 36: pg_query.CoercionContext + (CoercionForm)(0), // 37: pg_query.CoercionForm + (BoolExprType)(0), // 38: pg_query.BoolExprType + (SubLinkType)(0), // 39: pg_query.SubLinkType + (RowCompareType)(0), // 40: pg_query.RowCompareType + (MinMaxOp)(0), // 41: pg_query.MinMaxOp + (SQLValueFunctionOp)(0), // 42: pg_query.SQLValueFunctionOp + (XmlExprOp)(0), // 43: pg_query.XmlExprOp + (XmlOptionType)(0), // 44: pg_query.XmlOptionType + (JsonEncoding)(0), // 45: pg_query.JsonEncoding + (JsonFormatType)(0), // 46: pg_query.JsonFormatType + (JsonConstructorType)(0), // 47: pg_query.JsonConstructorType + (JsonValueType)(0), // 48: pg_query.JsonValueType + (NullTestType)(0), // 49: pg_query.NullTestType + (BoolTestType)(0), // 50: pg_query.BoolTestType + (CmdType)(0), // 51: pg_query.CmdType + (JoinType)(0), // 52: pg_query.JoinType + (AggStrategy)(0), // 53: pg_query.AggStrategy + (AggSplit)(0), // 54: pg_query.AggSplit + (SetOpCmd)(0), // 55: pg_query.SetOpCmd + (SetOpStrategy)(0), // 56: pg_query.SetOpStrategy + (OnConflictAction)(0), // 57: pg_query.OnConflictAction + (LimitOption)(0), // 58: pg_query.LimitOption + (LockClauseStrength)(0), // 59: pg_query.LockClauseStrength + (LockWaitPolicy)(0), // 60: pg_query.LockWaitPolicy + (LockTupleMode)(0), // 61: pg_query.LockTupleMode + (KeywordKind)(0), // 62: pg_query.KeywordKind + (Token)(0), // 63: pg_query.Token + (*ParseResult)(nil), // 64: pg_query.ParseResult + (*ScanResult)(nil), // 65: pg_query.ScanResult + (*Node)(nil), // 66: pg_query.Node + (*Integer)(nil), // 67: pg_query.Integer + (*Float)(nil), // 68: pg_query.Float + (*Boolean)(nil), // 69: pg_query.Boolean + (*String)(nil), // 70: pg_query.String + (*BitString)(nil), // 71: pg_query.BitString + (*List)(nil), // 72: pg_query.List + (*OidList)(nil), // 73: pg_query.OidList + (*IntList)(nil), // 74: pg_query.IntList + (*A_Const)(nil), // 75: pg_query.A_Const + (*Alias)(nil), // 76: pg_query.Alias + (*RangeVar)(nil), // 77: pg_query.RangeVar + (*TableFunc)(nil), // 78: pg_query.TableFunc + (*IntoClause)(nil), // 79: pg_query.IntoClause + (*Var)(nil), // 80: pg_query.Var + (*Param)(nil), // 81: pg_query.Param + (*Aggref)(nil), // 82: pg_query.Aggref + (*GroupingFunc)(nil), // 83: pg_query.GroupingFunc + (*WindowFunc)(nil), // 84: pg_query.WindowFunc + (*SubscriptingRef)(nil), // 85: pg_query.SubscriptingRef + (*FuncExpr)(nil), // 86: pg_query.FuncExpr + (*NamedArgExpr)(nil), // 87: pg_query.NamedArgExpr + (*OpExpr)(nil), // 88: pg_query.OpExpr + (*DistinctExpr)(nil), // 89: pg_query.DistinctExpr + (*NullIfExpr)(nil), // 90: pg_query.NullIfExpr + (*ScalarArrayOpExpr)(nil), // 91: pg_query.ScalarArrayOpExpr + (*BoolExpr)(nil), // 92: pg_query.BoolExpr + (*SubLink)(nil), // 93: pg_query.SubLink + (*SubPlan)(nil), // 94: pg_query.SubPlan + (*AlternativeSubPlan)(nil), // 95: pg_query.AlternativeSubPlan + (*FieldSelect)(nil), // 96: pg_query.FieldSelect + (*FieldStore)(nil), // 97: pg_query.FieldStore + (*RelabelType)(nil), // 98: pg_query.RelabelType + (*CoerceViaIO)(nil), // 99: pg_query.CoerceViaIO + (*ArrayCoerceExpr)(nil), // 100: pg_query.ArrayCoerceExpr + (*ConvertRowtypeExpr)(nil), // 101: pg_query.ConvertRowtypeExpr + (*CollateExpr)(nil), // 102: pg_query.CollateExpr + (*CaseExpr)(nil), // 103: pg_query.CaseExpr + (*CaseWhen)(nil), // 104: pg_query.CaseWhen + (*CaseTestExpr)(nil), // 105: pg_query.CaseTestExpr + (*ArrayExpr)(nil), // 106: pg_query.ArrayExpr + (*RowExpr)(nil), // 107: pg_query.RowExpr + (*RowCompareExpr)(nil), // 108: pg_query.RowCompareExpr + (*CoalesceExpr)(nil), // 109: pg_query.CoalesceExpr + (*MinMaxExpr)(nil), // 110: pg_query.MinMaxExpr + (*SQLValueFunction)(nil), // 111: pg_query.SQLValueFunction + (*XmlExpr)(nil), // 112: pg_query.XmlExpr + (*JsonFormat)(nil), // 113: pg_query.JsonFormat + (*JsonReturning)(nil), // 114: pg_query.JsonReturning + (*JsonValueExpr)(nil), // 115: pg_query.JsonValueExpr + (*JsonConstructorExpr)(nil), // 116: pg_query.JsonConstructorExpr + (*JsonIsPredicate)(nil), // 117: pg_query.JsonIsPredicate + (*NullTest)(nil), // 118: pg_query.NullTest + (*BooleanTest)(nil), // 119: pg_query.BooleanTest + (*CoerceToDomain)(nil), // 120: pg_query.CoerceToDomain + (*CoerceToDomainValue)(nil), // 121: pg_query.CoerceToDomainValue + (*SetToDefault)(nil), // 122: pg_query.SetToDefault + (*CurrentOfExpr)(nil), // 123: pg_query.CurrentOfExpr + (*NextValueExpr)(nil), // 124: pg_query.NextValueExpr + (*InferenceElem)(nil), // 125: pg_query.InferenceElem + (*TargetEntry)(nil), // 126: pg_query.TargetEntry + (*RangeTblRef)(nil), // 127: pg_query.RangeTblRef + (*JoinExpr)(nil), // 128: pg_query.JoinExpr + (*FromExpr)(nil), // 129: pg_query.FromExpr + (*OnConflictExpr)(nil), // 130: pg_query.OnConflictExpr + (*Query)(nil), // 131: pg_query.Query + (*TypeName)(nil), // 132: pg_query.TypeName + (*ColumnRef)(nil), // 133: pg_query.ColumnRef + (*ParamRef)(nil), // 134: pg_query.ParamRef + (*A_Expr)(nil), // 135: pg_query.A_Expr + (*TypeCast)(nil), // 136: pg_query.TypeCast + (*CollateClause)(nil), // 137: pg_query.CollateClause + (*RoleSpec)(nil), // 138: pg_query.RoleSpec + (*FuncCall)(nil), // 139: pg_query.FuncCall + (*A_Star)(nil), // 140: pg_query.A_Star + (*A_Indices)(nil), // 141: pg_query.A_Indices + (*A_Indirection)(nil), // 142: pg_query.A_Indirection + (*A_ArrayExpr)(nil), // 143: pg_query.A_ArrayExpr + (*ResTarget)(nil), // 144: pg_query.ResTarget + (*MultiAssignRef)(nil), // 145: pg_query.MultiAssignRef + (*SortBy)(nil), // 146: pg_query.SortBy + (*WindowDef)(nil), // 147: pg_query.WindowDef + (*RangeSubselect)(nil), // 148: pg_query.RangeSubselect + (*RangeFunction)(nil), // 149: pg_query.RangeFunction + (*RangeTableFunc)(nil), // 150: pg_query.RangeTableFunc + (*RangeTableFuncCol)(nil), // 151: pg_query.RangeTableFuncCol + (*RangeTableSample)(nil), // 152: pg_query.RangeTableSample + (*ColumnDef)(nil), // 153: pg_query.ColumnDef + (*TableLikeClause)(nil), // 154: pg_query.TableLikeClause + (*IndexElem)(nil), // 155: pg_query.IndexElem + (*DefElem)(nil), // 156: pg_query.DefElem + (*LockingClause)(nil), // 157: pg_query.LockingClause + (*XmlSerialize)(nil), // 158: pg_query.XmlSerialize + (*PartitionElem)(nil), // 159: pg_query.PartitionElem + (*PartitionSpec)(nil), // 160: pg_query.PartitionSpec + (*PartitionBoundSpec)(nil), // 161: pg_query.PartitionBoundSpec + (*PartitionRangeDatum)(nil), // 162: pg_query.PartitionRangeDatum + (*PartitionCmd)(nil), // 163: pg_query.PartitionCmd + (*RangeTblEntry)(nil), // 164: pg_query.RangeTblEntry + (*RTEPermissionInfo)(nil), // 165: pg_query.RTEPermissionInfo + (*RangeTblFunction)(nil), // 166: pg_query.RangeTblFunction + (*TableSampleClause)(nil), // 167: pg_query.TableSampleClause + (*WithCheckOption)(nil), // 168: pg_query.WithCheckOption + (*SortGroupClause)(nil), // 169: pg_query.SortGroupClause + (*GroupingSet)(nil), // 170: pg_query.GroupingSet + (*WindowClause)(nil), // 171: pg_query.WindowClause + (*RowMarkClause)(nil), // 172: pg_query.RowMarkClause + (*WithClause)(nil), // 173: pg_query.WithClause + (*InferClause)(nil), // 174: pg_query.InferClause + (*OnConflictClause)(nil), // 175: pg_query.OnConflictClause + (*CTESearchClause)(nil), // 176: pg_query.CTESearchClause + (*CTECycleClause)(nil), // 177: pg_query.CTECycleClause + (*CommonTableExpr)(nil), // 178: pg_query.CommonTableExpr + (*MergeWhenClause)(nil), // 179: pg_query.MergeWhenClause + (*MergeAction)(nil), // 180: pg_query.MergeAction + (*TriggerTransition)(nil), // 181: pg_query.TriggerTransition + (*JsonOutput)(nil), // 182: pg_query.JsonOutput + (*JsonKeyValue)(nil), // 183: pg_query.JsonKeyValue + (*JsonObjectConstructor)(nil), // 184: pg_query.JsonObjectConstructor + (*JsonArrayConstructor)(nil), // 185: pg_query.JsonArrayConstructor + (*JsonArrayQueryConstructor)(nil), // 186: pg_query.JsonArrayQueryConstructor + (*JsonAggConstructor)(nil), // 187: pg_query.JsonAggConstructor + (*JsonObjectAgg)(nil), // 188: pg_query.JsonObjectAgg + (*JsonArrayAgg)(nil), // 189: pg_query.JsonArrayAgg + (*RawStmt)(nil), // 190: pg_query.RawStmt + (*InsertStmt)(nil), // 191: pg_query.InsertStmt + (*DeleteStmt)(nil), // 192: pg_query.DeleteStmt + (*UpdateStmt)(nil), // 193: pg_query.UpdateStmt + (*MergeStmt)(nil), // 194: pg_query.MergeStmt + (*SelectStmt)(nil), // 195: pg_query.SelectStmt + (*SetOperationStmt)(nil), // 196: pg_query.SetOperationStmt + (*ReturnStmt)(nil), // 197: pg_query.ReturnStmt + (*PLAssignStmt)(nil), // 198: pg_query.PLAssignStmt + (*CreateSchemaStmt)(nil), // 199: pg_query.CreateSchemaStmt + (*AlterTableStmt)(nil), // 200: pg_query.AlterTableStmt + (*ReplicaIdentityStmt)(nil), // 201: pg_query.ReplicaIdentityStmt + (*AlterTableCmd)(nil), // 202: pg_query.AlterTableCmd + (*AlterCollationStmt)(nil), // 203: pg_query.AlterCollationStmt + (*AlterDomainStmt)(nil), // 204: pg_query.AlterDomainStmt + (*GrantStmt)(nil), // 205: pg_query.GrantStmt + (*ObjectWithArgs)(nil), // 206: pg_query.ObjectWithArgs + (*AccessPriv)(nil), // 207: pg_query.AccessPriv + (*GrantRoleStmt)(nil), // 208: pg_query.GrantRoleStmt + (*AlterDefaultPrivilegesStmt)(nil), // 209: pg_query.AlterDefaultPrivilegesStmt + (*CopyStmt)(nil), // 210: pg_query.CopyStmt + (*VariableSetStmt)(nil), // 211: pg_query.VariableSetStmt + (*VariableShowStmt)(nil), // 212: pg_query.VariableShowStmt + (*CreateStmt)(nil), // 213: pg_query.CreateStmt + (*Constraint)(nil), // 214: pg_query.Constraint + (*CreateTableSpaceStmt)(nil), // 215: pg_query.CreateTableSpaceStmt + (*DropTableSpaceStmt)(nil), // 216: pg_query.DropTableSpaceStmt + (*AlterTableSpaceOptionsStmt)(nil), // 217: pg_query.AlterTableSpaceOptionsStmt + (*AlterTableMoveAllStmt)(nil), // 218: pg_query.AlterTableMoveAllStmt + (*CreateExtensionStmt)(nil), // 219: pg_query.CreateExtensionStmt + (*AlterExtensionStmt)(nil), // 220: pg_query.AlterExtensionStmt + (*AlterExtensionContentsStmt)(nil), // 221: pg_query.AlterExtensionContentsStmt + (*CreateFdwStmt)(nil), // 222: pg_query.CreateFdwStmt + (*AlterFdwStmt)(nil), // 223: pg_query.AlterFdwStmt + (*CreateForeignServerStmt)(nil), // 224: pg_query.CreateForeignServerStmt + (*AlterForeignServerStmt)(nil), // 225: pg_query.AlterForeignServerStmt + (*CreateForeignTableStmt)(nil), // 226: pg_query.CreateForeignTableStmt + (*CreateUserMappingStmt)(nil), // 227: pg_query.CreateUserMappingStmt + (*AlterUserMappingStmt)(nil), // 228: pg_query.AlterUserMappingStmt + (*DropUserMappingStmt)(nil), // 229: pg_query.DropUserMappingStmt + (*ImportForeignSchemaStmt)(nil), // 230: pg_query.ImportForeignSchemaStmt + (*CreatePolicyStmt)(nil), // 231: pg_query.CreatePolicyStmt + (*AlterPolicyStmt)(nil), // 232: pg_query.AlterPolicyStmt + (*CreateAmStmt)(nil), // 233: pg_query.CreateAmStmt + (*CreateTrigStmt)(nil), // 234: pg_query.CreateTrigStmt + (*CreateEventTrigStmt)(nil), // 235: pg_query.CreateEventTrigStmt + (*AlterEventTrigStmt)(nil), // 236: pg_query.AlterEventTrigStmt + (*CreatePLangStmt)(nil), // 237: pg_query.CreatePLangStmt + (*CreateRoleStmt)(nil), // 238: pg_query.CreateRoleStmt + (*AlterRoleStmt)(nil), // 239: pg_query.AlterRoleStmt + (*AlterRoleSetStmt)(nil), // 240: pg_query.AlterRoleSetStmt + (*DropRoleStmt)(nil), // 241: pg_query.DropRoleStmt + (*CreateSeqStmt)(nil), // 242: pg_query.CreateSeqStmt + (*AlterSeqStmt)(nil), // 243: pg_query.AlterSeqStmt + (*DefineStmt)(nil), // 244: pg_query.DefineStmt + (*CreateDomainStmt)(nil), // 245: pg_query.CreateDomainStmt + (*CreateOpClassStmt)(nil), // 246: pg_query.CreateOpClassStmt + (*CreateOpClassItem)(nil), // 247: pg_query.CreateOpClassItem + (*CreateOpFamilyStmt)(nil), // 248: pg_query.CreateOpFamilyStmt + (*AlterOpFamilyStmt)(nil), // 249: pg_query.AlterOpFamilyStmt + (*DropStmt)(nil), // 250: pg_query.DropStmt + (*TruncateStmt)(nil), // 251: pg_query.TruncateStmt + (*CommentStmt)(nil), // 252: pg_query.CommentStmt + (*SecLabelStmt)(nil), // 253: pg_query.SecLabelStmt + (*DeclareCursorStmt)(nil), // 254: pg_query.DeclareCursorStmt + (*ClosePortalStmt)(nil), // 255: pg_query.ClosePortalStmt + (*FetchStmt)(nil), // 256: pg_query.FetchStmt + (*IndexStmt)(nil), // 257: pg_query.IndexStmt + (*CreateStatsStmt)(nil), // 258: pg_query.CreateStatsStmt + (*StatsElem)(nil), // 259: pg_query.StatsElem + (*AlterStatsStmt)(nil), // 260: pg_query.AlterStatsStmt + (*CreateFunctionStmt)(nil), // 261: pg_query.CreateFunctionStmt + (*FunctionParameter)(nil), // 262: pg_query.FunctionParameter + (*AlterFunctionStmt)(nil), // 263: pg_query.AlterFunctionStmt + (*DoStmt)(nil), // 264: pg_query.DoStmt + (*InlineCodeBlock)(nil), // 265: pg_query.InlineCodeBlock + (*CallStmt)(nil), // 266: pg_query.CallStmt + (*CallContext)(nil), // 267: pg_query.CallContext + (*RenameStmt)(nil), // 268: pg_query.RenameStmt + (*AlterObjectDependsStmt)(nil), // 269: pg_query.AlterObjectDependsStmt + (*AlterObjectSchemaStmt)(nil), // 270: pg_query.AlterObjectSchemaStmt + (*AlterOwnerStmt)(nil), // 271: pg_query.AlterOwnerStmt + (*AlterOperatorStmt)(nil), // 272: pg_query.AlterOperatorStmt + (*AlterTypeStmt)(nil), // 273: pg_query.AlterTypeStmt + (*RuleStmt)(nil), // 274: pg_query.RuleStmt + (*NotifyStmt)(nil), // 275: pg_query.NotifyStmt + (*ListenStmt)(nil), // 276: pg_query.ListenStmt + (*UnlistenStmt)(nil), // 277: pg_query.UnlistenStmt + (*TransactionStmt)(nil), // 278: pg_query.TransactionStmt + (*CompositeTypeStmt)(nil), // 279: pg_query.CompositeTypeStmt + (*CreateEnumStmt)(nil), // 280: pg_query.CreateEnumStmt + (*CreateRangeStmt)(nil), // 281: pg_query.CreateRangeStmt + (*AlterEnumStmt)(nil), // 282: pg_query.AlterEnumStmt + (*ViewStmt)(nil), // 283: pg_query.ViewStmt + (*LoadStmt)(nil), // 284: pg_query.LoadStmt + (*CreatedbStmt)(nil), // 285: pg_query.CreatedbStmt + (*AlterDatabaseStmt)(nil), // 286: pg_query.AlterDatabaseStmt + (*AlterDatabaseRefreshCollStmt)(nil), // 287: pg_query.AlterDatabaseRefreshCollStmt + (*AlterDatabaseSetStmt)(nil), // 288: pg_query.AlterDatabaseSetStmt + (*DropdbStmt)(nil), // 289: pg_query.DropdbStmt + (*AlterSystemStmt)(nil), // 290: pg_query.AlterSystemStmt + (*ClusterStmt)(nil), // 291: pg_query.ClusterStmt + (*VacuumStmt)(nil), // 292: pg_query.VacuumStmt + (*VacuumRelation)(nil), // 293: pg_query.VacuumRelation + (*ExplainStmt)(nil), // 294: pg_query.ExplainStmt + (*CreateTableAsStmt)(nil), // 295: pg_query.CreateTableAsStmt + (*RefreshMatViewStmt)(nil), // 296: pg_query.RefreshMatViewStmt + (*CheckPointStmt)(nil), // 297: pg_query.CheckPointStmt + (*DiscardStmt)(nil), // 298: pg_query.DiscardStmt + (*LockStmt)(nil), // 299: pg_query.LockStmt + (*ConstraintsSetStmt)(nil), // 300: pg_query.ConstraintsSetStmt + (*ReindexStmt)(nil), // 301: pg_query.ReindexStmt + (*CreateConversionStmt)(nil), // 302: pg_query.CreateConversionStmt + (*CreateCastStmt)(nil), // 303: pg_query.CreateCastStmt + (*CreateTransformStmt)(nil), // 304: pg_query.CreateTransformStmt + (*PrepareStmt)(nil), // 305: pg_query.PrepareStmt + (*ExecuteStmt)(nil), // 306: pg_query.ExecuteStmt + (*DeallocateStmt)(nil), // 307: pg_query.DeallocateStmt + (*DropOwnedStmt)(nil), // 308: pg_query.DropOwnedStmt + (*ReassignOwnedStmt)(nil), // 309: pg_query.ReassignOwnedStmt + (*AlterTSDictionaryStmt)(nil), // 310: pg_query.AlterTSDictionaryStmt + (*AlterTSConfigurationStmt)(nil), // 311: pg_query.AlterTSConfigurationStmt + (*PublicationTable)(nil), // 312: pg_query.PublicationTable + (*PublicationObjSpec)(nil), // 313: pg_query.PublicationObjSpec + (*CreatePublicationStmt)(nil), // 314: pg_query.CreatePublicationStmt + (*AlterPublicationStmt)(nil), // 315: pg_query.AlterPublicationStmt + (*CreateSubscriptionStmt)(nil), // 316: pg_query.CreateSubscriptionStmt + (*AlterSubscriptionStmt)(nil), // 317: pg_query.AlterSubscriptionStmt + (*DropSubscriptionStmt)(nil), // 318: pg_query.DropSubscriptionStmt + (*ScanToken)(nil), // 319: pg_query.ScanToken } var file_pg_query_proto_depIdxs = []int32{ - 122, // 0: pg_query.ParseResult.stmts:type_name -> pg_query.RawStmt - 300, // 1: pg_query.ScanResult.tokens:type_name -> pg_query.ScanToken - 71, // 2: pg_query.Node.alias:type_name -> pg_query.Alias - 72, // 3: pg_query.Node.range_var:type_name -> pg_query.RangeVar - 73, // 4: pg_query.Node.table_func:type_name -> pg_query.TableFunc - 74, // 5: pg_query.Node.var:type_name -> pg_query.Var - 75, // 6: pg_query.Node.param:type_name -> pg_query.Param - 76, // 7: pg_query.Node.aggref:type_name -> pg_query.Aggref - 77, // 8: pg_query.Node.grouping_func:type_name -> pg_query.GroupingFunc - 78, // 9: pg_query.Node.window_func:type_name -> pg_query.WindowFunc - 79, // 10: pg_query.Node.subscripting_ref:type_name -> pg_query.SubscriptingRef - 80, // 11: pg_query.Node.func_expr:type_name -> pg_query.FuncExpr - 81, // 12: pg_query.Node.named_arg_expr:type_name -> pg_query.NamedArgExpr - 82, // 13: pg_query.Node.op_expr:type_name -> pg_query.OpExpr - 83, // 14: pg_query.Node.distinct_expr:type_name -> pg_query.DistinctExpr - 84, // 15: pg_query.Node.null_if_expr:type_name -> pg_query.NullIfExpr - 85, // 16: pg_query.Node.scalar_array_op_expr:type_name -> pg_query.ScalarArrayOpExpr - 86, // 17: pg_query.Node.bool_expr:type_name -> pg_query.BoolExpr - 87, // 18: pg_query.Node.sub_link:type_name -> pg_query.SubLink - 88, // 19: pg_query.Node.sub_plan:type_name -> pg_query.SubPlan - 89, // 20: pg_query.Node.alternative_sub_plan:type_name -> pg_query.AlternativeSubPlan - 90, // 21: pg_query.Node.field_select:type_name -> pg_query.FieldSelect - 91, // 22: pg_query.Node.field_store:type_name -> pg_query.FieldStore - 92, // 23: pg_query.Node.relabel_type:type_name -> pg_query.RelabelType - 93, // 24: pg_query.Node.coerce_via_io:type_name -> pg_query.CoerceViaIO - 94, // 25: pg_query.Node.array_coerce_expr:type_name -> pg_query.ArrayCoerceExpr - 95, // 26: pg_query.Node.convert_rowtype_expr:type_name -> pg_query.ConvertRowtypeExpr - 96, // 27: pg_query.Node.collate_expr:type_name -> pg_query.CollateExpr - 97, // 28: pg_query.Node.case_expr:type_name -> pg_query.CaseExpr - 98, // 29: pg_query.Node.case_when:type_name -> pg_query.CaseWhen - 99, // 30: pg_query.Node.case_test_expr:type_name -> pg_query.CaseTestExpr - 100, // 31: pg_query.Node.array_expr:type_name -> pg_query.ArrayExpr - 101, // 32: pg_query.Node.row_expr:type_name -> pg_query.RowExpr - 102, // 33: pg_query.Node.row_compare_expr:type_name -> pg_query.RowCompareExpr - 103, // 34: pg_query.Node.coalesce_expr:type_name -> pg_query.CoalesceExpr - 104, // 35: pg_query.Node.min_max_expr:type_name -> pg_query.MinMaxExpr - 105, // 36: pg_query.Node.sqlvalue_function:type_name -> pg_query.SQLValueFunction - 106, // 37: pg_query.Node.xml_expr:type_name -> pg_query.XmlExpr - 107, // 38: pg_query.Node.null_test:type_name -> pg_query.NullTest - 108, // 39: pg_query.Node.boolean_test:type_name -> pg_query.BooleanTest - 109, // 40: pg_query.Node.coerce_to_domain:type_name -> pg_query.CoerceToDomain - 110, // 41: pg_query.Node.coerce_to_domain_value:type_name -> pg_query.CoerceToDomainValue - 111, // 42: pg_query.Node.set_to_default:type_name -> pg_query.SetToDefault - 112, // 43: pg_query.Node.current_of_expr:type_name -> pg_query.CurrentOfExpr - 113, // 44: pg_query.Node.next_value_expr:type_name -> pg_query.NextValueExpr - 114, // 45: pg_query.Node.inference_elem:type_name -> pg_query.InferenceElem - 115, // 46: pg_query.Node.target_entry:type_name -> pg_query.TargetEntry - 116, // 47: pg_query.Node.range_tbl_ref:type_name -> pg_query.RangeTblRef - 117, // 48: pg_query.Node.join_expr:type_name -> pg_query.JoinExpr - 118, // 49: pg_query.Node.from_expr:type_name -> pg_query.FromExpr - 119, // 50: pg_query.Node.on_conflict_expr:type_name -> pg_query.OnConflictExpr - 120, // 51: pg_query.Node.into_clause:type_name -> pg_query.IntoClause - 121, // 52: pg_query.Node.merge_action:type_name -> pg_query.MergeAction - 122, // 53: pg_query.Node.raw_stmt:type_name -> pg_query.RawStmt - 123, // 54: pg_query.Node.query:type_name -> pg_query.Query - 124, // 55: pg_query.Node.insert_stmt:type_name -> pg_query.InsertStmt - 125, // 56: pg_query.Node.delete_stmt:type_name -> pg_query.DeleteStmt - 126, // 57: pg_query.Node.update_stmt:type_name -> pg_query.UpdateStmt - 127, // 58: pg_query.Node.merge_stmt:type_name -> pg_query.MergeStmt - 128, // 59: pg_query.Node.select_stmt:type_name -> pg_query.SelectStmt - 129, // 60: pg_query.Node.return_stmt:type_name -> pg_query.ReturnStmt - 130, // 61: pg_query.Node.plassign_stmt:type_name -> pg_query.PLAssignStmt - 131, // 62: pg_query.Node.alter_table_stmt:type_name -> pg_query.AlterTableStmt - 132, // 63: pg_query.Node.alter_table_cmd:type_name -> pg_query.AlterTableCmd - 133, // 64: pg_query.Node.alter_domain_stmt:type_name -> pg_query.AlterDomainStmt - 134, // 65: pg_query.Node.set_operation_stmt:type_name -> pg_query.SetOperationStmt - 135, // 66: pg_query.Node.grant_stmt:type_name -> pg_query.GrantStmt - 136, // 67: pg_query.Node.grant_role_stmt:type_name -> pg_query.GrantRoleStmt - 137, // 68: pg_query.Node.alter_default_privileges_stmt:type_name -> pg_query.AlterDefaultPrivilegesStmt - 138, // 69: pg_query.Node.close_portal_stmt:type_name -> pg_query.ClosePortalStmt - 139, // 70: pg_query.Node.cluster_stmt:type_name -> pg_query.ClusterStmt - 140, // 71: pg_query.Node.copy_stmt:type_name -> pg_query.CopyStmt - 141, // 72: pg_query.Node.create_stmt:type_name -> pg_query.CreateStmt - 142, // 73: pg_query.Node.define_stmt:type_name -> pg_query.DefineStmt - 143, // 74: pg_query.Node.drop_stmt:type_name -> pg_query.DropStmt - 144, // 75: pg_query.Node.truncate_stmt:type_name -> pg_query.TruncateStmt - 145, // 76: pg_query.Node.comment_stmt:type_name -> pg_query.CommentStmt - 146, // 77: pg_query.Node.fetch_stmt:type_name -> pg_query.FetchStmt - 147, // 78: pg_query.Node.index_stmt:type_name -> pg_query.IndexStmt - 148, // 79: pg_query.Node.create_function_stmt:type_name -> pg_query.CreateFunctionStmt - 149, // 80: pg_query.Node.alter_function_stmt:type_name -> pg_query.AlterFunctionStmt - 150, // 81: pg_query.Node.do_stmt:type_name -> pg_query.DoStmt - 151, // 82: pg_query.Node.rename_stmt:type_name -> pg_query.RenameStmt - 152, // 83: pg_query.Node.rule_stmt:type_name -> pg_query.RuleStmt - 153, // 84: pg_query.Node.notify_stmt:type_name -> pg_query.NotifyStmt - 154, // 85: pg_query.Node.listen_stmt:type_name -> pg_query.ListenStmt - 155, // 86: pg_query.Node.unlisten_stmt:type_name -> pg_query.UnlistenStmt - 156, // 87: pg_query.Node.transaction_stmt:type_name -> pg_query.TransactionStmt - 157, // 88: pg_query.Node.view_stmt:type_name -> pg_query.ViewStmt - 158, // 89: pg_query.Node.load_stmt:type_name -> pg_query.LoadStmt - 159, // 90: pg_query.Node.create_domain_stmt:type_name -> pg_query.CreateDomainStmt - 160, // 91: pg_query.Node.createdb_stmt:type_name -> pg_query.CreatedbStmt - 161, // 92: pg_query.Node.dropdb_stmt:type_name -> pg_query.DropdbStmt - 162, // 93: pg_query.Node.vacuum_stmt:type_name -> pg_query.VacuumStmt - 163, // 94: pg_query.Node.explain_stmt:type_name -> pg_query.ExplainStmt - 164, // 95: pg_query.Node.create_table_as_stmt:type_name -> pg_query.CreateTableAsStmt - 165, // 96: pg_query.Node.create_seq_stmt:type_name -> pg_query.CreateSeqStmt - 166, // 97: pg_query.Node.alter_seq_stmt:type_name -> pg_query.AlterSeqStmt - 167, // 98: pg_query.Node.variable_set_stmt:type_name -> pg_query.VariableSetStmt - 168, // 99: pg_query.Node.variable_show_stmt:type_name -> pg_query.VariableShowStmt - 169, // 100: pg_query.Node.discard_stmt:type_name -> pg_query.DiscardStmt - 170, // 101: pg_query.Node.create_trig_stmt:type_name -> pg_query.CreateTrigStmt - 171, // 102: pg_query.Node.create_plang_stmt:type_name -> pg_query.CreatePLangStmt - 172, // 103: pg_query.Node.create_role_stmt:type_name -> pg_query.CreateRoleStmt - 173, // 104: pg_query.Node.alter_role_stmt:type_name -> pg_query.AlterRoleStmt - 174, // 105: pg_query.Node.drop_role_stmt:type_name -> pg_query.DropRoleStmt - 175, // 106: pg_query.Node.lock_stmt:type_name -> pg_query.LockStmt - 176, // 107: pg_query.Node.constraints_set_stmt:type_name -> pg_query.ConstraintsSetStmt - 177, // 108: pg_query.Node.reindex_stmt:type_name -> pg_query.ReindexStmt - 178, // 109: pg_query.Node.check_point_stmt:type_name -> pg_query.CheckPointStmt - 179, // 110: pg_query.Node.create_schema_stmt:type_name -> pg_query.CreateSchemaStmt - 180, // 111: pg_query.Node.alter_database_stmt:type_name -> pg_query.AlterDatabaseStmt - 181, // 112: pg_query.Node.alter_database_refresh_coll_stmt:type_name -> pg_query.AlterDatabaseRefreshCollStmt - 182, // 113: pg_query.Node.alter_database_set_stmt:type_name -> pg_query.AlterDatabaseSetStmt - 183, // 114: pg_query.Node.alter_role_set_stmt:type_name -> pg_query.AlterRoleSetStmt - 184, // 115: pg_query.Node.create_conversion_stmt:type_name -> pg_query.CreateConversionStmt - 185, // 116: pg_query.Node.create_cast_stmt:type_name -> pg_query.CreateCastStmt - 186, // 117: pg_query.Node.create_op_class_stmt:type_name -> pg_query.CreateOpClassStmt - 187, // 118: pg_query.Node.create_op_family_stmt:type_name -> pg_query.CreateOpFamilyStmt - 188, // 119: pg_query.Node.alter_op_family_stmt:type_name -> pg_query.AlterOpFamilyStmt - 189, // 120: pg_query.Node.prepare_stmt:type_name -> pg_query.PrepareStmt - 190, // 121: pg_query.Node.execute_stmt:type_name -> pg_query.ExecuteStmt - 191, // 122: pg_query.Node.deallocate_stmt:type_name -> pg_query.DeallocateStmt - 192, // 123: pg_query.Node.declare_cursor_stmt:type_name -> pg_query.DeclareCursorStmt - 193, // 124: pg_query.Node.create_table_space_stmt:type_name -> pg_query.CreateTableSpaceStmt - 194, // 125: pg_query.Node.drop_table_space_stmt:type_name -> pg_query.DropTableSpaceStmt - 195, // 126: pg_query.Node.alter_object_depends_stmt:type_name -> pg_query.AlterObjectDependsStmt - 196, // 127: pg_query.Node.alter_object_schema_stmt:type_name -> pg_query.AlterObjectSchemaStmt - 197, // 128: pg_query.Node.alter_owner_stmt:type_name -> pg_query.AlterOwnerStmt - 198, // 129: pg_query.Node.alter_operator_stmt:type_name -> pg_query.AlterOperatorStmt - 199, // 130: pg_query.Node.alter_type_stmt:type_name -> pg_query.AlterTypeStmt - 200, // 131: pg_query.Node.drop_owned_stmt:type_name -> pg_query.DropOwnedStmt - 201, // 132: pg_query.Node.reassign_owned_stmt:type_name -> pg_query.ReassignOwnedStmt - 202, // 133: pg_query.Node.composite_type_stmt:type_name -> pg_query.CompositeTypeStmt - 203, // 134: pg_query.Node.create_enum_stmt:type_name -> pg_query.CreateEnumStmt - 204, // 135: pg_query.Node.create_range_stmt:type_name -> pg_query.CreateRangeStmt - 205, // 136: pg_query.Node.alter_enum_stmt:type_name -> pg_query.AlterEnumStmt - 206, // 137: pg_query.Node.alter_tsdictionary_stmt:type_name -> pg_query.AlterTSDictionaryStmt - 207, // 138: pg_query.Node.alter_tsconfiguration_stmt:type_name -> pg_query.AlterTSConfigurationStmt - 208, // 139: pg_query.Node.create_fdw_stmt:type_name -> pg_query.CreateFdwStmt - 209, // 140: pg_query.Node.alter_fdw_stmt:type_name -> pg_query.AlterFdwStmt - 210, // 141: pg_query.Node.create_foreign_server_stmt:type_name -> pg_query.CreateForeignServerStmt - 211, // 142: pg_query.Node.alter_foreign_server_stmt:type_name -> pg_query.AlterForeignServerStmt - 212, // 143: pg_query.Node.create_user_mapping_stmt:type_name -> pg_query.CreateUserMappingStmt - 213, // 144: pg_query.Node.alter_user_mapping_stmt:type_name -> pg_query.AlterUserMappingStmt - 214, // 145: pg_query.Node.drop_user_mapping_stmt:type_name -> pg_query.DropUserMappingStmt - 215, // 146: pg_query.Node.alter_table_space_options_stmt:type_name -> pg_query.AlterTableSpaceOptionsStmt - 216, // 147: pg_query.Node.alter_table_move_all_stmt:type_name -> pg_query.AlterTableMoveAllStmt - 217, // 148: pg_query.Node.sec_label_stmt:type_name -> pg_query.SecLabelStmt - 218, // 149: pg_query.Node.create_foreign_table_stmt:type_name -> pg_query.CreateForeignTableStmt - 219, // 150: pg_query.Node.import_foreign_schema_stmt:type_name -> pg_query.ImportForeignSchemaStmt - 220, // 151: pg_query.Node.create_extension_stmt:type_name -> pg_query.CreateExtensionStmt - 221, // 152: pg_query.Node.alter_extension_stmt:type_name -> pg_query.AlterExtensionStmt - 222, // 153: pg_query.Node.alter_extension_contents_stmt:type_name -> pg_query.AlterExtensionContentsStmt - 223, // 154: pg_query.Node.create_event_trig_stmt:type_name -> pg_query.CreateEventTrigStmt - 224, // 155: pg_query.Node.alter_event_trig_stmt:type_name -> pg_query.AlterEventTrigStmt - 225, // 156: pg_query.Node.refresh_mat_view_stmt:type_name -> pg_query.RefreshMatViewStmt - 226, // 157: pg_query.Node.replica_identity_stmt:type_name -> pg_query.ReplicaIdentityStmt - 227, // 158: pg_query.Node.alter_system_stmt:type_name -> pg_query.AlterSystemStmt - 228, // 159: pg_query.Node.create_policy_stmt:type_name -> pg_query.CreatePolicyStmt - 229, // 160: pg_query.Node.alter_policy_stmt:type_name -> pg_query.AlterPolicyStmt - 230, // 161: pg_query.Node.create_transform_stmt:type_name -> pg_query.CreateTransformStmt - 231, // 162: pg_query.Node.create_am_stmt:type_name -> pg_query.CreateAmStmt - 232, // 163: pg_query.Node.create_publication_stmt:type_name -> pg_query.CreatePublicationStmt - 233, // 164: pg_query.Node.alter_publication_stmt:type_name -> pg_query.AlterPublicationStmt - 234, // 165: pg_query.Node.create_subscription_stmt:type_name -> pg_query.CreateSubscriptionStmt - 235, // 166: pg_query.Node.alter_subscription_stmt:type_name -> pg_query.AlterSubscriptionStmt - 236, // 167: pg_query.Node.drop_subscription_stmt:type_name -> pg_query.DropSubscriptionStmt - 237, // 168: pg_query.Node.create_stats_stmt:type_name -> pg_query.CreateStatsStmt - 238, // 169: pg_query.Node.alter_collation_stmt:type_name -> pg_query.AlterCollationStmt - 239, // 170: pg_query.Node.call_stmt:type_name -> pg_query.CallStmt - 240, // 171: pg_query.Node.alter_stats_stmt:type_name -> pg_query.AlterStatsStmt - 241, // 172: pg_query.Node.a_expr:type_name -> pg_query.A_Expr - 242, // 173: pg_query.Node.column_ref:type_name -> pg_query.ColumnRef - 243, // 174: pg_query.Node.param_ref:type_name -> pg_query.ParamRef - 244, // 175: pg_query.Node.func_call:type_name -> pg_query.FuncCall - 245, // 176: pg_query.Node.a_star:type_name -> pg_query.A_Star - 246, // 177: pg_query.Node.a_indices:type_name -> pg_query.A_Indices - 247, // 178: pg_query.Node.a_indirection:type_name -> pg_query.A_Indirection - 248, // 179: pg_query.Node.a_array_expr:type_name -> pg_query.A_ArrayExpr - 249, // 180: pg_query.Node.res_target:type_name -> pg_query.ResTarget - 250, // 181: pg_query.Node.multi_assign_ref:type_name -> pg_query.MultiAssignRef - 251, // 182: pg_query.Node.type_cast:type_name -> pg_query.TypeCast - 252, // 183: pg_query.Node.collate_clause:type_name -> pg_query.CollateClause - 253, // 184: pg_query.Node.sort_by:type_name -> pg_query.SortBy - 254, // 185: pg_query.Node.window_def:type_name -> pg_query.WindowDef - 255, // 186: pg_query.Node.range_subselect:type_name -> pg_query.RangeSubselect - 256, // 187: pg_query.Node.range_function:type_name -> pg_query.RangeFunction - 257, // 188: pg_query.Node.range_table_sample:type_name -> pg_query.RangeTableSample - 258, // 189: pg_query.Node.range_table_func:type_name -> pg_query.RangeTableFunc - 259, // 190: pg_query.Node.range_table_func_col:type_name -> pg_query.RangeTableFuncCol - 260, // 191: pg_query.Node.type_name:type_name -> pg_query.TypeName - 261, // 192: pg_query.Node.column_def:type_name -> pg_query.ColumnDef - 262, // 193: pg_query.Node.index_elem:type_name -> pg_query.IndexElem - 263, // 194: pg_query.Node.stats_elem:type_name -> pg_query.StatsElem - 264, // 195: pg_query.Node.constraint:type_name -> pg_query.Constraint - 265, // 196: pg_query.Node.def_elem:type_name -> pg_query.DefElem - 266, // 197: pg_query.Node.range_tbl_entry:type_name -> pg_query.RangeTblEntry - 267, // 198: pg_query.Node.range_tbl_function:type_name -> pg_query.RangeTblFunction - 268, // 199: pg_query.Node.table_sample_clause:type_name -> pg_query.TableSampleClause - 269, // 200: pg_query.Node.with_check_option:type_name -> pg_query.WithCheckOption - 270, // 201: pg_query.Node.sort_group_clause:type_name -> pg_query.SortGroupClause - 271, // 202: pg_query.Node.grouping_set:type_name -> pg_query.GroupingSet - 272, // 203: pg_query.Node.window_clause:type_name -> pg_query.WindowClause - 273, // 204: pg_query.Node.object_with_args:type_name -> pg_query.ObjectWithArgs - 274, // 205: pg_query.Node.access_priv:type_name -> pg_query.AccessPriv - 275, // 206: pg_query.Node.create_op_class_item:type_name -> pg_query.CreateOpClassItem - 276, // 207: pg_query.Node.table_like_clause:type_name -> pg_query.TableLikeClause - 277, // 208: pg_query.Node.function_parameter:type_name -> pg_query.FunctionParameter - 278, // 209: pg_query.Node.locking_clause:type_name -> pg_query.LockingClause - 279, // 210: pg_query.Node.row_mark_clause:type_name -> pg_query.RowMarkClause - 280, // 211: pg_query.Node.xml_serialize:type_name -> pg_query.XmlSerialize - 281, // 212: pg_query.Node.with_clause:type_name -> pg_query.WithClause - 282, // 213: pg_query.Node.infer_clause:type_name -> pg_query.InferClause - 283, // 214: pg_query.Node.on_conflict_clause:type_name -> pg_query.OnConflictClause - 284, // 215: pg_query.Node.ctesearch_clause:type_name -> pg_query.CTESearchClause - 285, // 216: pg_query.Node.ctecycle_clause:type_name -> pg_query.CTECycleClause - 286, // 217: pg_query.Node.common_table_expr:type_name -> pg_query.CommonTableExpr - 287, // 218: pg_query.Node.merge_when_clause:type_name -> pg_query.MergeWhenClause - 288, // 219: pg_query.Node.role_spec:type_name -> pg_query.RoleSpec - 289, // 220: pg_query.Node.trigger_transition:type_name -> pg_query.TriggerTransition - 290, // 221: pg_query.Node.partition_elem:type_name -> pg_query.PartitionElem - 291, // 222: pg_query.Node.partition_spec:type_name -> pg_query.PartitionSpec - 292, // 223: pg_query.Node.partition_bound_spec:type_name -> pg_query.PartitionBoundSpec - 293, // 224: pg_query.Node.partition_range_datum:type_name -> pg_query.PartitionRangeDatum - 294, // 225: pg_query.Node.partition_cmd:type_name -> pg_query.PartitionCmd - 295, // 226: pg_query.Node.vacuum_relation:type_name -> pg_query.VacuumRelation - 296, // 227: pg_query.Node.publication_obj_spec:type_name -> pg_query.PublicationObjSpec - 297, // 228: pg_query.Node.publication_table:type_name -> pg_query.PublicationTable - 298, // 229: pg_query.Node.inline_code_block:type_name -> pg_query.InlineCodeBlock - 299, // 230: pg_query.Node.call_context:type_name -> pg_query.CallContext - 62, // 231: pg_query.Node.integer:type_name -> pg_query.Integer - 63, // 232: pg_query.Node.float:type_name -> pg_query.Float - 64, // 233: pg_query.Node.boolean:type_name -> pg_query.Boolean - 65, // 234: pg_query.Node.string:type_name -> pg_query.String - 66, // 235: pg_query.Node.bit_string:type_name -> pg_query.BitString - 67, // 236: pg_query.Node.list:type_name -> pg_query.List - 69, // 237: pg_query.Node.int_list:type_name -> pg_query.IntList - 68, // 238: pg_query.Node.oid_list:type_name -> pg_query.OidList - 70, // 239: pg_query.Node.a_const:type_name -> pg_query.A_Const - 61, // 240: pg_query.List.items:type_name -> pg_query.Node - 61, // 241: pg_query.OidList.items:type_name -> pg_query.Node - 61, // 242: pg_query.IntList.items:type_name -> pg_query.Node - 62, // 243: pg_query.A_Const.ival:type_name -> pg_query.Integer - 63, // 244: pg_query.A_Const.fval:type_name -> pg_query.Float - 64, // 245: pg_query.A_Const.boolval:type_name -> pg_query.Boolean - 65, // 246: pg_query.A_Const.sval:type_name -> pg_query.String - 66, // 247: pg_query.A_Const.bsval:type_name -> pg_query.BitString - 61, // 248: pg_query.Alias.colnames:type_name -> pg_query.Node - 71, // 249: pg_query.RangeVar.alias:type_name -> pg_query.Alias - 61, // 250: pg_query.TableFunc.ns_uris:type_name -> pg_query.Node - 61, // 251: pg_query.TableFunc.ns_names:type_name -> pg_query.Node - 61, // 252: pg_query.TableFunc.docexpr:type_name -> pg_query.Node - 61, // 253: pg_query.TableFunc.rowexpr:type_name -> pg_query.Node - 61, // 254: pg_query.TableFunc.colnames:type_name -> pg_query.Node - 61, // 255: pg_query.TableFunc.coltypes:type_name -> pg_query.Node - 61, // 256: pg_query.TableFunc.coltypmods:type_name -> pg_query.Node - 61, // 257: pg_query.TableFunc.colcollations:type_name -> pg_query.Node - 61, // 258: pg_query.TableFunc.colexprs:type_name -> pg_query.Node - 61, // 259: pg_query.TableFunc.coldefexprs:type_name -> pg_query.Node - 61, // 260: pg_query.Var.xpr:type_name -> pg_query.Node - 61, // 261: pg_query.Param.xpr:type_name -> pg_query.Node - 34, // 262: pg_query.Param.paramkind:type_name -> pg_query.ParamKind - 61, // 263: pg_query.Aggref.xpr:type_name -> pg_query.Node - 61, // 264: pg_query.Aggref.aggargtypes:type_name -> pg_query.Node - 61, // 265: pg_query.Aggref.aggdirectargs:type_name -> pg_query.Node - 61, // 266: pg_query.Aggref.args:type_name -> pg_query.Node - 61, // 267: pg_query.Aggref.aggorder:type_name -> pg_query.Node - 61, // 268: pg_query.Aggref.aggdistinct:type_name -> pg_query.Node - 61, // 269: pg_query.Aggref.aggfilter:type_name -> pg_query.Node - 49, // 270: pg_query.Aggref.aggsplit:type_name -> pg_query.AggSplit - 61, // 271: pg_query.GroupingFunc.xpr:type_name -> pg_query.Node - 61, // 272: pg_query.GroupingFunc.args:type_name -> pg_query.Node - 61, // 273: pg_query.GroupingFunc.refs:type_name -> pg_query.Node - 61, // 274: pg_query.GroupingFunc.cols:type_name -> pg_query.Node - 61, // 275: pg_query.WindowFunc.xpr:type_name -> pg_query.Node - 61, // 276: pg_query.WindowFunc.args:type_name -> pg_query.Node - 61, // 277: pg_query.WindowFunc.aggfilter:type_name -> pg_query.Node - 61, // 278: pg_query.SubscriptingRef.xpr:type_name -> pg_query.Node - 61, // 279: pg_query.SubscriptingRef.refupperindexpr:type_name -> pg_query.Node - 61, // 280: pg_query.SubscriptingRef.reflowerindexpr:type_name -> pg_query.Node - 61, // 281: pg_query.SubscriptingRef.refexpr:type_name -> pg_query.Node - 61, // 282: pg_query.SubscriptingRef.refassgnexpr:type_name -> pg_query.Node - 61, // 283: pg_query.FuncExpr.xpr:type_name -> pg_query.Node - 36, // 284: pg_query.FuncExpr.funcformat:type_name -> pg_query.CoercionForm - 61, // 285: pg_query.FuncExpr.args:type_name -> pg_query.Node - 61, // 286: pg_query.NamedArgExpr.xpr:type_name -> pg_query.Node - 61, // 287: pg_query.NamedArgExpr.arg:type_name -> pg_query.Node - 61, // 288: pg_query.OpExpr.xpr:type_name -> pg_query.Node - 61, // 289: pg_query.OpExpr.args:type_name -> pg_query.Node - 61, // 290: pg_query.DistinctExpr.xpr:type_name -> pg_query.Node - 61, // 291: pg_query.DistinctExpr.args:type_name -> pg_query.Node - 61, // 292: pg_query.NullIfExpr.xpr:type_name -> pg_query.Node - 61, // 293: pg_query.NullIfExpr.args:type_name -> pg_query.Node - 61, // 294: pg_query.ScalarArrayOpExpr.xpr:type_name -> pg_query.Node - 61, // 295: pg_query.ScalarArrayOpExpr.args:type_name -> pg_query.Node - 61, // 296: pg_query.BoolExpr.xpr:type_name -> pg_query.Node - 37, // 297: pg_query.BoolExpr.boolop:type_name -> pg_query.BoolExprType - 61, // 298: pg_query.BoolExpr.args:type_name -> pg_query.Node - 61, // 299: pg_query.SubLink.xpr:type_name -> pg_query.Node - 38, // 300: pg_query.SubLink.sub_link_type:type_name -> pg_query.SubLinkType - 61, // 301: pg_query.SubLink.testexpr:type_name -> pg_query.Node - 61, // 302: pg_query.SubLink.oper_name:type_name -> pg_query.Node - 61, // 303: pg_query.SubLink.subselect:type_name -> pg_query.Node - 61, // 304: pg_query.SubPlan.xpr:type_name -> pg_query.Node - 38, // 305: pg_query.SubPlan.sub_link_type:type_name -> pg_query.SubLinkType - 61, // 306: pg_query.SubPlan.testexpr:type_name -> pg_query.Node - 61, // 307: pg_query.SubPlan.param_ids:type_name -> pg_query.Node - 61, // 308: pg_query.SubPlan.set_param:type_name -> pg_query.Node - 61, // 309: pg_query.SubPlan.par_param:type_name -> pg_query.Node - 61, // 310: pg_query.SubPlan.args:type_name -> pg_query.Node - 61, // 311: pg_query.AlternativeSubPlan.xpr:type_name -> pg_query.Node - 61, // 312: pg_query.AlternativeSubPlan.subplans:type_name -> pg_query.Node - 61, // 313: pg_query.FieldSelect.xpr:type_name -> pg_query.Node - 61, // 314: pg_query.FieldSelect.arg:type_name -> pg_query.Node - 61, // 315: pg_query.FieldStore.xpr:type_name -> pg_query.Node - 61, // 316: pg_query.FieldStore.arg:type_name -> pg_query.Node - 61, // 317: pg_query.FieldStore.newvals:type_name -> pg_query.Node - 61, // 318: pg_query.FieldStore.fieldnums:type_name -> pg_query.Node - 61, // 319: pg_query.RelabelType.xpr:type_name -> pg_query.Node - 61, // 320: pg_query.RelabelType.arg:type_name -> pg_query.Node - 36, // 321: pg_query.RelabelType.relabelformat:type_name -> pg_query.CoercionForm - 61, // 322: pg_query.CoerceViaIO.xpr:type_name -> pg_query.Node - 61, // 323: pg_query.CoerceViaIO.arg:type_name -> pg_query.Node - 36, // 324: pg_query.CoerceViaIO.coerceformat:type_name -> pg_query.CoercionForm - 61, // 325: pg_query.ArrayCoerceExpr.xpr:type_name -> pg_query.Node - 61, // 326: pg_query.ArrayCoerceExpr.arg:type_name -> pg_query.Node - 61, // 327: pg_query.ArrayCoerceExpr.elemexpr:type_name -> pg_query.Node - 36, // 328: pg_query.ArrayCoerceExpr.coerceformat:type_name -> pg_query.CoercionForm - 61, // 329: pg_query.ConvertRowtypeExpr.xpr:type_name -> pg_query.Node - 61, // 330: pg_query.ConvertRowtypeExpr.arg:type_name -> pg_query.Node - 36, // 331: pg_query.ConvertRowtypeExpr.convertformat:type_name -> pg_query.CoercionForm - 61, // 332: pg_query.CollateExpr.xpr:type_name -> pg_query.Node - 61, // 333: pg_query.CollateExpr.arg:type_name -> pg_query.Node - 61, // 334: pg_query.CaseExpr.xpr:type_name -> pg_query.Node - 61, // 335: pg_query.CaseExpr.arg:type_name -> pg_query.Node - 61, // 336: pg_query.CaseExpr.args:type_name -> pg_query.Node - 61, // 337: pg_query.CaseExpr.defresult:type_name -> pg_query.Node - 61, // 338: pg_query.CaseWhen.xpr:type_name -> pg_query.Node - 61, // 339: pg_query.CaseWhen.expr:type_name -> pg_query.Node - 61, // 340: pg_query.CaseWhen.result:type_name -> pg_query.Node - 61, // 341: pg_query.CaseTestExpr.xpr:type_name -> pg_query.Node - 61, // 342: pg_query.ArrayExpr.xpr:type_name -> pg_query.Node - 61, // 343: pg_query.ArrayExpr.elements:type_name -> pg_query.Node - 61, // 344: pg_query.RowExpr.xpr:type_name -> pg_query.Node - 61, // 345: pg_query.RowExpr.args:type_name -> pg_query.Node - 36, // 346: pg_query.RowExpr.row_format:type_name -> pg_query.CoercionForm - 61, // 347: pg_query.RowExpr.colnames:type_name -> pg_query.Node - 61, // 348: pg_query.RowCompareExpr.xpr:type_name -> pg_query.Node - 39, // 349: pg_query.RowCompareExpr.rctype:type_name -> pg_query.RowCompareType - 61, // 350: pg_query.RowCompareExpr.opnos:type_name -> pg_query.Node - 61, // 351: pg_query.RowCompareExpr.opfamilies:type_name -> pg_query.Node - 61, // 352: pg_query.RowCompareExpr.inputcollids:type_name -> pg_query.Node - 61, // 353: pg_query.RowCompareExpr.largs:type_name -> pg_query.Node - 61, // 354: pg_query.RowCompareExpr.rargs:type_name -> pg_query.Node - 61, // 355: pg_query.CoalesceExpr.xpr:type_name -> pg_query.Node - 61, // 356: pg_query.CoalesceExpr.args:type_name -> pg_query.Node - 61, // 357: pg_query.MinMaxExpr.xpr:type_name -> pg_query.Node - 40, // 358: pg_query.MinMaxExpr.op:type_name -> pg_query.MinMaxOp - 61, // 359: pg_query.MinMaxExpr.args:type_name -> pg_query.Node - 61, // 360: pg_query.SQLValueFunction.xpr:type_name -> pg_query.Node - 41, // 361: pg_query.SQLValueFunction.op:type_name -> pg_query.SQLValueFunctionOp - 61, // 362: pg_query.XmlExpr.xpr:type_name -> pg_query.Node - 42, // 363: pg_query.XmlExpr.op:type_name -> pg_query.XmlExprOp - 61, // 364: pg_query.XmlExpr.named_args:type_name -> pg_query.Node - 61, // 365: pg_query.XmlExpr.arg_names:type_name -> pg_query.Node - 61, // 366: pg_query.XmlExpr.args:type_name -> pg_query.Node - 43, // 367: pg_query.XmlExpr.xmloption:type_name -> pg_query.XmlOptionType - 61, // 368: pg_query.NullTest.xpr:type_name -> pg_query.Node - 61, // 369: pg_query.NullTest.arg:type_name -> pg_query.Node - 44, // 370: pg_query.NullTest.nulltesttype:type_name -> pg_query.NullTestType - 61, // 371: pg_query.BooleanTest.xpr:type_name -> pg_query.Node - 61, // 372: pg_query.BooleanTest.arg:type_name -> pg_query.Node - 45, // 373: pg_query.BooleanTest.booltesttype:type_name -> pg_query.BoolTestType - 61, // 374: pg_query.CoerceToDomain.xpr:type_name -> pg_query.Node - 61, // 375: pg_query.CoerceToDomain.arg:type_name -> pg_query.Node - 36, // 376: pg_query.CoerceToDomain.coercionformat:type_name -> pg_query.CoercionForm - 61, // 377: pg_query.CoerceToDomainValue.xpr:type_name -> pg_query.Node - 61, // 378: pg_query.SetToDefault.xpr:type_name -> pg_query.Node - 61, // 379: pg_query.CurrentOfExpr.xpr:type_name -> pg_query.Node - 61, // 380: pg_query.NextValueExpr.xpr:type_name -> pg_query.Node - 61, // 381: pg_query.InferenceElem.xpr:type_name -> pg_query.Node - 61, // 382: pg_query.InferenceElem.expr:type_name -> pg_query.Node - 61, // 383: pg_query.TargetEntry.xpr:type_name -> pg_query.Node - 61, // 384: pg_query.TargetEntry.expr:type_name -> pg_query.Node - 47, // 385: pg_query.JoinExpr.jointype:type_name -> pg_query.JoinType - 61, // 386: pg_query.JoinExpr.larg:type_name -> pg_query.Node - 61, // 387: pg_query.JoinExpr.rarg:type_name -> pg_query.Node - 61, // 388: pg_query.JoinExpr.using_clause:type_name -> pg_query.Node - 71, // 389: pg_query.JoinExpr.join_using_alias:type_name -> pg_query.Alias - 61, // 390: pg_query.JoinExpr.quals:type_name -> pg_query.Node - 71, // 391: pg_query.JoinExpr.alias:type_name -> pg_query.Alias - 61, // 392: pg_query.FromExpr.fromlist:type_name -> pg_query.Node - 61, // 393: pg_query.FromExpr.quals:type_name -> pg_query.Node - 52, // 394: pg_query.OnConflictExpr.action:type_name -> pg_query.OnConflictAction - 61, // 395: pg_query.OnConflictExpr.arbiter_elems:type_name -> pg_query.Node - 61, // 396: pg_query.OnConflictExpr.arbiter_where:type_name -> pg_query.Node - 61, // 397: pg_query.OnConflictExpr.on_conflict_set:type_name -> pg_query.Node - 61, // 398: pg_query.OnConflictExpr.on_conflict_where:type_name -> pg_query.Node - 61, // 399: pg_query.OnConflictExpr.excl_rel_tlist:type_name -> pg_query.Node - 72, // 400: pg_query.IntoClause.rel:type_name -> pg_query.RangeVar - 61, // 401: pg_query.IntoClause.col_names:type_name -> pg_query.Node - 61, // 402: pg_query.IntoClause.options:type_name -> pg_query.Node - 33, // 403: pg_query.IntoClause.on_commit:type_name -> pg_query.OnCommitAction - 61, // 404: pg_query.IntoClause.view_query:type_name -> pg_query.Node - 46, // 405: pg_query.MergeAction.command_type:type_name -> pg_query.CmdType - 0, // 406: pg_query.MergeAction.override:type_name -> pg_query.OverridingKind - 61, // 407: pg_query.MergeAction.qual:type_name -> pg_query.Node - 61, // 408: pg_query.MergeAction.target_list:type_name -> pg_query.Node - 61, // 409: pg_query.MergeAction.update_colnos:type_name -> pg_query.Node - 61, // 410: pg_query.RawStmt.stmt:type_name -> pg_query.Node - 46, // 411: pg_query.Query.command_type:type_name -> pg_query.CmdType - 1, // 412: pg_query.Query.query_source:type_name -> pg_query.QuerySource - 61, // 413: pg_query.Query.utility_stmt:type_name -> pg_query.Node - 61, // 414: pg_query.Query.cte_list:type_name -> pg_query.Node - 61, // 415: pg_query.Query.rtable:type_name -> pg_query.Node - 118, // 416: pg_query.Query.jointree:type_name -> pg_query.FromExpr - 61, // 417: pg_query.Query.merge_action_list:type_name -> pg_query.Node - 61, // 418: pg_query.Query.target_list:type_name -> pg_query.Node - 0, // 419: pg_query.Query.override:type_name -> pg_query.OverridingKind - 119, // 420: pg_query.Query.on_conflict:type_name -> pg_query.OnConflictExpr - 61, // 421: pg_query.Query.returning_list:type_name -> pg_query.Node - 61, // 422: pg_query.Query.group_clause:type_name -> pg_query.Node - 61, // 423: pg_query.Query.grouping_sets:type_name -> pg_query.Node - 61, // 424: pg_query.Query.having_qual:type_name -> pg_query.Node - 61, // 425: pg_query.Query.window_clause:type_name -> pg_query.Node - 61, // 426: pg_query.Query.distinct_clause:type_name -> pg_query.Node - 61, // 427: pg_query.Query.sort_clause:type_name -> pg_query.Node - 61, // 428: pg_query.Query.limit_offset:type_name -> pg_query.Node - 61, // 429: pg_query.Query.limit_count:type_name -> pg_query.Node - 53, // 430: pg_query.Query.limit_option:type_name -> pg_query.LimitOption - 61, // 431: pg_query.Query.row_marks:type_name -> pg_query.Node - 61, // 432: pg_query.Query.set_operations:type_name -> pg_query.Node - 61, // 433: pg_query.Query.constraint_deps:type_name -> pg_query.Node - 61, // 434: pg_query.Query.with_check_options:type_name -> pg_query.Node - 72, // 435: pg_query.InsertStmt.relation:type_name -> pg_query.RangeVar - 61, // 436: pg_query.InsertStmt.cols:type_name -> pg_query.Node - 61, // 437: pg_query.InsertStmt.select_stmt:type_name -> pg_query.Node - 283, // 438: pg_query.InsertStmt.on_conflict_clause:type_name -> pg_query.OnConflictClause - 61, // 439: pg_query.InsertStmt.returning_list:type_name -> pg_query.Node - 281, // 440: pg_query.InsertStmt.with_clause:type_name -> pg_query.WithClause - 0, // 441: pg_query.InsertStmt.override:type_name -> pg_query.OverridingKind - 72, // 442: pg_query.DeleteStmt.relation:type_name -> pg_query.RangeVar - 61, // 443: pg_query.DeleteStmt.using_clause:type_name -> pg_query.Node - 61, // 444: pg_query.DeleteStmt.where_clause:type_name -> pg_query.Node - 61, // 445: pg_query.DeleteStmt.returning_list:type_name -> pg_query.Node - 281, // 446: pg_query.DeleteStmt.with_clause:type_name -> pg_query.WithClause - 72, // 447: pg_query.UpdateStmt.relation:type_name -> pg_query.RangeVar - 61, // 448: pg_query.UpdateStmt.target_list:type_name -> pg_query.Node - 61, // 449: pg_query.UpdateStmt.where_clause:type_name -> pg_query.Node - 61, // 450: pg_query.UpdateStmt.from_clause:type_name -> pg_query.Node - 61, // 451: pg_query.UpdateStmt.returning_list:type_name -> pg_query.Node - 281, // 452: pg_query.UpdateStmt.with_clause:type_name -> pg_query.WithClause - 72, // 453: pg_query.MergeStmt.relation:type_name -> pg_query.RangeVar - 61, // 454: pg_query.MergeStmt.source_relation:type_name -> pg_query.Node - 61, // 455: pg_query.MergeStmt.join_condition:type_name -> pg_query.Node - 61, // 456: pg_query.MergeStmt.merge_when_clauses:type_name -> pg_query.Node - 281, // 457: pg_query.MergeStmt.with_clause:type_name -> pg_query.WithClause - 61, // 458: pg_query.SelectStmt.distinct_clause:type_name -> pg_query.Node - 120, // 459: pg_query.SelectStmt.into_clause:type_name -> pg_query.IntoClause - 61, // 460: pg_query.SelectStmt.target_list:type_name -> pg_query.Node - 61, // 461: pg_query.SelectStmt.from_clause:type_name -> pg_query.Node - 61, // 462: pg_query.SelectStmt.where_clause:type_name -> pg_query.Node - 61, // 463: pg_query.SelectStmt.group_clause:type_name -> pg_query.Node - 61, // 464: pg_query.SelectStmt.having_clause:type_name -> pg_query.Node - 61, // 465: pg_query.SelectStmt.window_clause:type_name -> pg_query.Node - 61, // 466: pg_query.SelectStmt.values_lists:type_name -> pg_query.Node - 61, // 467: pg_query.SelectStmt.sort_clause:type_name -> pg_query.Node - 61, // 468: pg_query.SelectStmt.limit_offset:type_name -> pg_query.Node - 61, // 469: pg_query.SelectStmt.limit_count:type_name -> pg_query.Node - 53, // 470: pg_query.SelectStmt.limit_option:type_name -> pg_query.LimitOption - 61, // 471: pg_query.SelectStmt.locking_clause:type_name -> pg_query.Node - 281, // 472: pg_query.SelectStmt.with_clause:type_name -> pg_query.WithClause - 14, // 473: pg_query.SelectStmt.op:type_name -> pg_query.SetOperation - 128, // 474: pg_query.SelectStmt.larg:type_name -> pg_query.SelectStmt - 128, // 475: pg_query.SelectStmt.rarg:type_name -> pg_query.SelectStmt - 61, // 476: pg_query.ReturnStmt.returnval:type_name -> pg_query.Node - 61, // 477: pg_query.PLAssignStmt.indirection:type_name -> pg_query.Node - 128, // 478: pg_query.PLAssignStmt.val:type_name -> pg_query.SelectStmt - 72, // 479: pg_query.AlterTableStmt.relation:type_name -> pg_query.RangeVar - 61, // 480: pg_query.AlterTableStmt.cmds:type_name -> pg_query.Node - 15, // 481: pg_query.AlterTableStmt.objtype:type_name -> pg_query.ObjectType - 17, // 482: pg_query.AlterTableCmd.subtype:type_name -> pg_query.AlterTableType - 288, // 483: pg_query.AlterTableCmd.newowner:type_name -> pg_query.RoleSpec - 61, // 484: pg_query.AlterTableCmd.def:type_name -> pg_query.Node - 16, // 485: pg_query.AlterTableCmd.behavior:type_name -> pg_query.DropBehavior - 61, // 486: pg_query.AlterDomainStmt.type_name:type_name -> pg_query.Node - 61, // 487: pg_query.AlterDomainStmt.def:type_name -> pg_query.Node - 16, // 488: pg_query.AlterDomainStmt.behavior:type_name -> pg_query.DropBehavior - 14, // 489: pg_query.SetOperationStmt.op:type_name -> pg_query.SetOperation - 61, // 490: pg_query.SetOperationStmt.larg:type_name -> pg_query.Node - 61, // 491: pg_query.SetOperationStmt.rarg:type_name -> pg_query.Node - 61, // 492: pg_query.SetOperationStmt.col_types:type_name -> pg_query.Node - 61, // 493: pg_query.SetOperationStmt.col_typmods:type_name -> pg_query.Node - 61, // 494: pg_query.SetOperationStmt.col_collations:type_name -> pg_query.Node - 61, // 495: pg_query.SetOperationStmt.group_clauses:type_name -> pg_query.Node - 18, // 496: pg_query.GrantStmt.targtype:type_name -> pg_query.GrantTargetType - 15, // 497: pg_query.GrantStmt.objtype:type_name -> pg_query.ObjectType - 61, // 498: pg_query.GrantStmt.objects:type_name -> pg_query.Node - 61, // 499: pg_query.GrantStmt.privileges:type_name -> pg_query.Node - 61, // 500: pg_query.GrantStmt.grantees:type_name -> pg_query.Node - 288, // 501: pg_query.GrantStmt.grantor:type_name -> pg_query.RoleSpec - 16, // 502: pg_query.GrantStmt.behavior:type_name -> pg_query.DropBehavior - 61, // 503: pg_query.GrantRoleStmt.granted_roles:type_name -> pg_query.Node - 61, // 504: pg_query.GrantRoleStmt.grantee_roles:type_name -> pg_query.Node - 288, // 505: pg_query.GrantRoleStmt.grantor:type_name -> pg_query.RoleSpec - 16, // 506: pg_query.GrantRoleStmt.behavior:type_name -> pg_query.DropBehavior - 61, // 507: pg_query.AlterDefaultPrivilegesStmt.options:type_name -> pg_query.Node - 135, // 508: pg_query.AlterDefaultPrivilegesStmt.action:type_name -> pg_query.GrantStmt - 72, // 509: pg_query.ClusterStmt.relation:type_name -> pg_query.RangeVar - 61, // 510: pg_query.ClusterStmt.params:type_name -> pg_query.Node - 72, // 511: pg_query.CopyStmt.relation:type_name -> pg_query.RangeVar - 61, // 512: pg_query.CopyStmt.query:type_name -> pg_query.Node - 61, // 513: pg_query.CopyStmt.attlist:type_name -> pg_query.Node - 61, // 514: pg_query.CopyStmt.options:type_name -> pg_query.Node - 61, // 515: pg_query.CopyStmt.where_clause:type_name -> pg_query.Node - 72, // 516: pg_query.CreateStmt.relation:type_name -> pg_query.RangeVar - 61, // 517: pg_query.CreateStmt.table_elts:type_name -> pg_query.Node - 61, // 518: pg_query.CreateStmt.inh_relations:type_name -> pg_query.Node - 292, // 519: pg_query.CreateStmt.partbound:type_name -> pg_query.PartitionBoundSpec - 291, // 520: pg_query.CreateStmt.partspec:type_name -> pg_query.PartitionSpec - 260, // 521: pg_query.CreateStmt.of_typename:type_name -> pg_query.TypeName - 61, // 522: pg_query.CreateStmt.constraints:type_name -> pg_query.Node - 61, // 523: pg_query.CreateStmt.options:type_name -> pg_query.Node - 33, // 524: pg_query.CreateStmt.oncommit:type_name -> pg_query.OnCommitAction - 15, // 525: pg_query.DefineStmt.kind:type_name -> pg_query.ObjectType - 61, // 526: pg_query.DefineStmt.defnames:type_name -> pg_query.Node - 61, // 527: pg_query.DefineStmt.args:type_name -> pg_query.Node - 61, // 528: pg_query.DefineStmt.definition:type_name -> pg_query.Node - 61, // 529: pg_query.DropStmt.objects:type_name -> pg_query.Node - 15, // 530: pg_query.DropStmt.remove_type:type_name -> pg_query.ObjectType - 16, // 531: pg_query.DropStmt.behavior:type_name -> pg_query.DropBehavior - 61, // 532: pg_query.TruncateStmt.relations:type_name -> pg_query.Node - 16, // 533: pg_query.TruncateStmt.behavior:type_name -> pg_query.DropBehavior - 15, // 534: pg_query.CommentStmt.objtype:type_name -> pg_query.ObjectType - 61, // 535: pg_query.CommentStmt.object:type_name -> pg_query.Node - 23, // 536: pg_query.FetchStmt.direction:type_name -> pg_query.FetchDirection - 72, // 537: pg_query.IndexStmt.relation:type_name -> pg_query.RangeVar - 61, // 538: pg_query.IndexStmt.index_params:type_name -> pg_query.Node - 61, // 539: pg_query.IndexStmt.index_including_params:type_name -> pg_query.Node - 61, // 540: pg_query.IndexStmt.options:type_name -> pg_query.Node - 61, // 541: pg_query.IndexStmt.where_clause:type_name -> pg_query.Node - 61, // 542: pg_query.IndexStmt.exclude_op_names:type_name -> pg_query.Node - 61, // 543: pg_query.CreateFunctionStmt.funcname:type_name -> pg_query.Node - 61, // 544: pg_query.CreateFunctionStmt.parameters:type_name -> pg_query.Node - 260, // 545: pg_query.CreateFunctionStmt.return_type:type_name -> pg_query.TypeName - 61, // 546: pg_query.CreateFunctionStmt.options:type_name -> pg_query.Node - 61, // 547: pg_query.CreateFunctionStmt.sql_body:type_name -> pg_query.Node - 15, // 548: pg_query.AlterFunctionStmt.objtype:type_name -> pg_query.ObjectType - 273, // 549: pg_query.AlterFunctionStmt.func:type_name -> pg_query.ObjectWithArgs - 61, // 550: pg_query.AlterFunctionStmt.actions:type_name -> pg_query.Node - 61, // 551: pg_query.DoStmt.args:type_name -> pg_query.Node - 15, // 552: pg_query.RenameStmt.rename_type:type_name -> pg_query.ObjectType - 15, // 553: pg_query.RenameStmt.relation_type:type_name -> pg_query.ObjectType - 72, // 554: pg_query.RenameStmt.relation:type_name -> pg_query.RangeVar - 61, // 555: pg_query.RenameStmt.object:type_name -> pg_query.Node - 16, // 556: pg_query.RenameStmt.behavior:type_name -> pg_query.DropBehavior - 72, // 557: pg_query.RuleStmt.relation:type_name -> pg_query.RangeVar - 61, // 558: pg_query.RuleStmt.where_clause:type_name -> pg_query.Node - 46, // 559: pg_query.RuleStmt.event:type_name -> pg_query.CmdType - 61, // 560: pg_query.RuleStmt.actions:type_name -> pg_query.Node - 25, // 561: pg_query.TransactionStmt.kind:type_name -> pg_query.TransactionStmtKind - 61, // 562: pg_query.TransactionStmt.options:type_name -> pg_query.Node - 72, // 563: pg_query.ViewStmt.view:type_name -> pg_query.RangeVar - 61, // 564: pg_query.ViewStmt.aliases:type_name -> pg_query.Node - 61, // 565: pg_query.ViewStmt.query:type_name -> pg_query.Node - 61, // 566: pg_query.ViewStmt.options:type_name -> pg_query.Node - 26, // 567: pg_query.ViewStmt.with_check_option:type_name -> pg_query.ViewCheckOption - 61, // 568: pg_query.CreateDomainStmt.domainname:type_name -> pg_query.Node - 260, // 569: pg_query.CreateDomainStmt.type_name:type_name -> pg_query.TypeName - 252, // 570: pg_query.CreateDomainStmt.coll_clause:type_name -> pg_query.CollateClause - 61, // 571: pg_query.CreateDomainStmt.constraints:type_name -> pg_query.Node - 61, // 572: pg_query.CreatedbStmt.options:type_name -> pg_query.Node - 61, // 573: pg_query.DropdbStmt.options:type_name -> pg_query.Node - 61, // 574: pg_query.VacuumStmt.options:type_name -> pg_query.Node - 61, // 575: pg_query.VacuumStmt.rels:type_name -> pg_query.Node - 61, // 576: pg_query.ExplainStmt.query:type_name -> pg_query.Node - 61, // 577: pg_query.ExplainStmt.options:type_name -> pg_query.Node - 61, // 578: pg_query.CreateTableAsStmt.query:type_name -> pg_query.Node - 120, // 579: pg_query.CreateTableAsStmt.into:type_name -> pg_query.IntoClause - 15, // 580: pg_query.CreateTableAsStmt.objtype:type_name -> pg_query.ObjectType - 72, // 581: pg_query.CreateSeqStmt.sequence:type_name -> pg_query.RangeVar - 61, // 582: pg_query.CreateSeqStmt.options:type_name -> pg_query.Node - 72, // 583: pg_query.AlterSeqStmt.sequence:type_name -> pg_query.RangeVar - 61, // 584: pg_query.AlterSeqStmt.options:type_name -> pg_query.Node - 19, // 585: pg_query.VariableSetStmt.kind:type_name -> pg_query.VariableSetKind - 61, // 586: pg_query.VariableSetStmt.args:type_name -> pg_query.Node - 27, // 587: pg_query.DiscardStmt.target:type_name -> pg_query.DiscardMode - 72, // 588: pg_query.CreateTrigStmt.relation:type_name -> pg_query.RangeVar - 61, // 589: pg_query.CreateTrigStmt.funcname:type_name -> pg_query.Node - 61, // 590: pg_query.CreateTrigStmt.args:type_name -> pg_query.Node - 61, // 591: pg_query.CreateTrigStmt.columns:type_name -> pg_query.Node - 61, // 592: pg_query.CreateTrigStmt.when_clause:type_name -> pg_query.Node - 61, // 593: pg_query.CreateTrigStmt.transition_rels:type_name -> pg_query.Node - 72, // 594: pg_query.CreateTrigStmt.constrrel:type_name -> pg_query.RangeVar - 61, // 595: pg_query.CreatePLangStmt.plhandler:type_name -> pg_query.Node - 61, // 596: pg_query.CreatePLangStmt.plinline:type_name -> pg_query.Node - 61, // 597: pg_query.CreatePLangStmt.plvalidator:type_name -> pg_query.Node - 22, // 598: pg_query.CreateRoleStmt.stmt_type:type_name -> pg_query.RoleStmtType - 61, // 599: pg_query.CreateRoleStmt.options:type_name -> pg_query.Node - 288, // 600: pg_query.AlterRoleStmt.role:type_name -> pg_query.RoleSpec - 61, // 601: pg_query.AlterRoleStmt.options:type_name -> pg_query.Node - 61, // 602: pg_query.DropRoleStmt.roles:type_name -> pg_query.Node - 61, // 603: pg_query.LockStmt.relations:type_name -> pg_query.Node - 61, // 604: pg_query.ConstraintsSetStmt.constraints:type_name -> pg_query.Node - 28, // 605: pg_query.ReindexStmt.kind:type_name -> pg_query.ReindexObjectType - 72, // 606: pg_query.ReindexStmt.relation:type_name -> pg_query.RangeVar - 61, // 607: pg_query.ReindexStmt.params:type_name -> pg_query.Node - 288, // 608: pg_query.CreateSchemaStmt.authrole:type_name -> pg_query.RoleSpec - 61, // 609: pg_query.CreateSchemaStmt.schema_elts:type_name -> pg_query.Node - 61, // 610: pg_query.AlterDatabaseStmt.options:type_name -> pg_query.Node - 167, // 611: pg_query.AlterDatabaseSetStmt.setstmt:type_name -> pg_query.VariableSetStmt - 288, // 612: pg_query.AlterRoleSetStmt.role:type_name -> pg_query.RoleSpec - 167, // 613: pg_query.AlterRoleSetStmt.setstmt:type_name -> pg_query.VariableSetStmt - 61, // 614: pg_query.CreateConversionStmt.conversion_name:type_name -> pg_query.Node - 61, // 615: pg_query.CreateConversionStmt.func_name:type_name -> pg_query.Node - 260, // 616: pg_query.CreateCastStmt.sourcetype:type_name -> pg_query.TypeName - 260, // 617: pg_query.CreateCastStmt.targettype:type_name -> pg_query.TypeName - 273, // 618: pg_query.CreateCastStmt.func:type_name -> pg_query.ObjectWithArgs - 35, // 619: pg_query.CreateCastStmt.context:type_name -> pg_query.CoercionContext - 61, // 620: pg_query.CreateOpClassStmt.opclassname:type_name -> pg_query.Node - 61, // 621: pg_query.CreateOpClassStmt.opfamilyname:type_name -> pg_query.Node - 260, // 622: pg_query.CreateOpClassStmt.datatype:type_name -> pg_query.TypeName - 61, // 623: pg_query.CreateOpClassStmt.items:type_name -> pg_query.Node - 61, // 624: pg_query.CreateOpFamilyStmt.opfamilyname:type_name -> pg_query.Node - 61, // 625: pg_query.AlterOpFamilyStmt.opfamilyname:type_name -> pg_query.Node - 61, // 626: pg_query.AlterOpFamilyStmt.items:type_name -> pg_query.Node - 61, // 627: pg_query.PrepareStmt.argtypes:type_name -> pg_query.Node - 61, // 628: pg_query.PrepareStmt.query:type_name -> pg_query.Node - 61, // 629: pg_query.ExecuteStmt.params:type_name -> pg_query.Node - 61, // 630: pg_query.DeclareCursorStmt.query:type_name -> pg_query.Node - 288, // 631: pg_query.CreateTableSpaceStmt.owner:type_name -> pg_query.RoleSpec - 61, // 632: pg_query.CreateTableSpaceStmt.options:type_name -> pg_query.Node - 15, // 633: pg_query.AlterObjectDependsStmt.object_type:type_name -> pg_query.ObjectType - 72, // 634: pg_query.AlterObjectDependsStmt.relation:type_name -> pg_query.RangeVar - 61, // 635: pg_query.AlterObjectDependsStmt.object:type_name -> pg_query.Node - 65, // 636: pg_query.AlterObjectDependsStmt.extname:type_name -> pg_query.String - 15, // 637: pg_query.AlterObjectSchemaStmt.object_type:type_name -> pg_query.ObjectType - 72, // 638: pg_query.AlterObjectSchemaStmt.relation:type_name -> pg_query.RangeVar - 61, // 639: pg_query.AlterObjectSchemaStmt.object:type_name -> pg_query.Node - 15, // 640: pg_query.AlterOwnerStmt.object_type:type_name -> pg_query.ObjectType - 72, // 641: pg_query.AlterOwnerStmt.relation:type_name -> pg_query.RangeVar - 61, // 642: pg_query.AlterOwnerStmt.object:type_name -> pg_query.Node - 288, // 643: pg_query.AlterOwnerStmt.newowner:type_name -> pg_query.RoleSpec - 273, // 644: pg_query.AlterOperatorStmt.opername:type_name -> pg_query.ObjectWithArgs - 61, // 645: pg_query.AlterOperatorStmt.options:type_name -> pg_query.Node - 61, // 646: pg_query.AlterTypeStmt.type_name:type_name -> pg_query.Node - 61, // 647: pg_query.AlterTypeStmt.options:type_name -> pg_query.Node - 61, // 648: pg_query.DropOwnedStmt.roles:type_name -> pg_query.Node - 16, // 649: pg_query.DropOwnedStmt.behavior:type_name -> pg_query.DropBehavior - 61, // 650: pg_query.ReassignOwnedStmt.roles:type_name -> pg_query.Node - 288, // 651: pg_query.ReassignOwnedStmt.newrole:type_name -> pg_query.RoleSpec - 72, // 652: pg_query.CompositeTypeStmt.typevar:type_name -> pg_query.RangeVar - 61, // 653: pg_query.CompositeTypeStmt.coldeflist:type_name -> pg_query.Node - 61, // 654: pg_query.CreateEnumStmt.type_name:type_name -> pg_query.Node - 61, // 655: pg_query.CreateEnumStmt.vals:type_name -> pg_query.Node - 61, // 656: pg_query.CreateRangeStmt.type_name:type_name -> pg_query.Node - 61, // 657: pg_query.CreateRangeStmt.params:type_name -> pg_query.Node - 61, // 658: pg_query.AlterEnumStmt.type_name:type_name -> pg_query.Node - 61, // 659: pg_query.AlterTSDictionaryStmt.dictname:type_name -> pg_query.Node - 61, // 660: pg_query.AlterTSDictionaryStmt.options:type_name -> pg_query.Node - 29, // 661: pg_query.AlterTSConfigurationStmt.kind:type_name -> pg_query.AlterTSConfigType - 61, // 662: pg_query.AlterTSConfigurationStmt.cfgname:type_name -> pg_query.Node - 61, // 663: pg_query.AlterTSConfigurationStmt.tokentype:type_name -> pg_query.Node - 61, // 664: pg_query.AlterTSConfigurationStmt.dicts:type_name -> pg_query.Node - 61, // 665: pg_query.CreateFdwStmt.func_options:type_name -> pg_query.Node - 61, // 666: pg_query.CreateFdwStmt.options:type_name -> pg_query.Node - 61, // 667: pg_query.AlterFdwStmt.func_options:type_name -> pg_query.Node - 61, // 668: pg_query.AlterFdwStmt.options:type_name -> pg_query.Node - 61, // 669: pg_query.CreateForeignServerStmt.options:type_name -> pg_query.Node - 61, // 670: pg_query.AlterForeignServerStmt.options:type_name -> pg_query.Node - 288, // 671: pg_query.CreateUserMappingStmt.user:type_name -> pg_query.RoleSpec - 61, // 672: pg_query.CreateUserMappingStmt.options:type_name -> pg_query.Node - 288, // 673: pg_query.AlterUserMappingStmt.user:type_name -> pg_query.RoleSpec - 61, // 674: pg_query.AlterUserMappingStmt.options:type_name -> pg_query.Node - 288, // 675: pg_query.DropUserMappingStmt.user:type_name -> pg_query.RoleSpec - 61, // 676: pg_query.AlterTableSpaceOptionsStmt.options:type_name -> pg_query.Node - 15, // 677: pg_query.AlterTableMoveAllStmt.objtype:type_name -> pg_query.ObjectType - 61, // 678: pg_query.AlterTableMoveAllStmt.roles:type_name -> pg_query.Node - 15, // 679: pg_query.SecLabelStmt.objtype:type_name -> pg_query.ObjectType - 61, // 680: pg_query.SecLabelStmt.object:type_name -> pg_query.Node - 141, // 681: pg_query.CreateForeignTableStmt.base_stmt:type_name -> pg_query.CreateStmt - 61, // 682: pg_query.CreateForeignTableStmt.options:type_name -> pg_query.Node - 21, // 683: pg_query.ImportForeignSchemaStmt.list_type:type_name -> pg_query.ImportForeignSchemaType - 61, // 684: pg_query.ImportForeignSchemaStmt.table_list:type_name -> pg_query.Node - 61, // 685: pg_query.ImportForeignSchemaStmt.options:type_name -> pg_query.Node - 61, // 686: pg_query.CreateExtensionStmt.options:type_name -> pg_query.Node - 61, // 687: pg_query.AlterExtensionStmt.options:type_name -> pg_query.Node - 15, // 688: pg_query.AlterExtensionContentsStmt.objtype:type_name -> pg_query.ObjectType - 61, // 689: pg_query.AlterExtensionContentsStmt.object:type_name -> pg_query.Node - 61, // 690: pg_query.CreateEventTrigStmt.whenclause:type_name -> pg_query.Node - 61, // 691: pg_query.CreateEventTrigStmt.funcname:type_name -> pg_query.Node - 72, // 692: pg_query.RefreshMatViewStmt.relation:type_name -> pg_query.RangeVar - 167, // 693: pg_query.AlterSystemStmt.setstmt:type_name -> pg_query.VariableSetStmt - 72, // 694: pg_query.CreatePolicyStmt.table:type_name -> pg_query.RangeVar - 61, // 695: pg_query.CreatePolicyStmt.roles:type_name -> pg_query.Node - 61, // 696: pg_query.CreatePolicyStmt.qual:type_name -> pg_query.Node - 61, // 697: pg_query.CreatePolicyStmt.with_check:type_name -> pg_query.Node - 72, // 698: pg_query.AlterPolicyStmt.table:type_name -> pg_query.RangeVar - 61, // 699: pg_query.AlterPolicyStmt.roles:type_name -> pg_query.Node - 61, // 700: pg_query.AlterPolicyStmt.qual:type_name -> pg_query.Node - 61, // 701: pg_query.AlterPolicyStmt.with_check:type_name -> pg_query.Node - 260, // 702: pg_query.CreateTransformStmt.type_name:type_name -> pg_query.TypeName - 273, // 703: pg_query.CreateTransformStmt.fromsql:type_name -> pg_query.ObjectWithArgs - 273, // 704: pg_query.CreateTransformStmt.tosql:type_name -> pg_query.ObjectWithArgs - 61, // 705: pg_query.CreateAmStmt.handler_name:type_name -> pg_query.Node - 61, // 706: pg_query.CreatePublicationStmt.options:type_name -> pg_query.Node - 61, // 707: pg_query.CreatePublicationStmt.pubobjects:type_name -> pg_query.Node - 61, // 708: pg_query.AlterPublicationStmt.options:type_name -> pg_query.Node - 61, // 709: pg_query.AlterPublicationStmt.pubobjects:type_name -> pg_query.Node - 31, // 710: pg_query.AlterPublicationStmt.action:type_name -> pg_query.AlterPublicationAction - 61, // 711: pg_query.CreateSubscriptionStmt.publication:type_name -> pg_query.Node - 61, // 712: pg_query.CreateSubscriptionStmt.options:type_name -> pg_query.Node - 32, // 713: pg_query.AlterSubscriptionStmt.kind:type_name -> pg_query.AlterSubscriptionType - 61, // 714: pg_query.AlterSubscriptionStmt.publication:type_name -> pg_query.Node - 61, // 715: pg_query.AlterSubscriptionStmt.options:type_name -> pg_query.Node - 16, // 716: pg_query.DropSubscriptionStmt.behavior:type_name -> pg_query.DropBehavior - 61, // 717: pg_query.CreateStatsStmt.defnames:type_name -> pg_query.Node - 61, // 718: pg_query.CreateStatsStmt.stat_types:type_name -> pg_query.Node - 61, // 719: pg_query.CreateStatsStmt.exprs:type_name -> pg_query.Node - 61, // 720: pg_query.CreateStatsStmt.relations:type_name -> pg_query.Node - 61, // 721: pg_query.AlterCollationStmt.collname:type_name -> pg_query.Node - 244, // 722: pg_query.CallStmt.funccall:type_name -> pg_query.FuncCall - 80, // 723: pg_query.CallStmt.funcexpr:type_name -> pg_query.FuncExpr - 61, // 724: pg_query.CallStmt.outargs:type_name -> pg_query.Node - 61, // 725: pg_query.AlterStatsStmt.defnames:type_name -> pg_query.Node - 5, // 726: pg_query.A_Expr.kind:type_name -> pg_query.A_Expr_Kind - 61, // 727: pg_query.A_Expr.name:type_name -> pg_query.Node - 61, // 728: pg_query.A_Expr.lexpr:type_name -> pg_query.Node - 61, // 729: pg_query.A_Expr.rexpr:type_name -> pg_query.Node - 61, // 730: pg_query.ColumnRef.fields:type_name -> pg_query.Node - 61, // 731: pg_query.FuncCall.funcname:type_name -> pg_query.Node - 61, // 732: pg_query.FuncCall.args:type_name -> pg_query.Node - 61, // 733: pg_query.FuncCall.agg_order:type_name -> pg_query.Node - 61, // 734: pg_query.FuncCall.agg_filter:type_name -> pg_query.Node - 254, // 735: pg_query.FuncCall.over:type_name -> pg_query.WindowDef - 36, // 736: pg_query.FuncCall.funcformat:type_name -> pg_query.CoercionForm - 61, // 737: pg_query.A_Indices.lidx:type_name -> pg_query.Node - 61, // 738: pg_query.A_Indices.uidx:type_name -> pg_query.Node - 61, // 739: pg_query.A_Indirection.arg:type_name -> pg_query.Node - 61, // 740: pg_query.A_Indirection.indirection:type_name -> pg_query.Node - 61, // 741: pg_query.A_ArrayExpr.elements:type_name -> pg_query.Node - 61, // 742: pg_query.ResTarget.indirection:type_name -> pg_query.Node - 61, // 743: pg_query.ResTarget.val:type_name -> pg_query.Node - 61, // 744: pg_query.MultiAssignRef.source:type_name -> pg_query.Node - 61, // 745: pg_query.TypeCast.arg:type_name -> pg_query.Node - 260, // 746: pg_query.TypeCast.type_name:type_name -> pg_query.TypeName - 61, // 747: pg_query.CollateClause.arg:type_name -> pg_query.Node - 61, // 748: pg_query.CollateClause.collname:type_name -> pg_query.Node - 61, // 749: pg_query.SortBy.node:type_name -> pg_query.Node - 2, // 750: pg_query.SortBy.sortby_dir:type_name -> pg_query.SortByDir - 3, // 751: pg_query.SortBy.sortby_nulls:type_name -> pg_query.SortByNulls - 61, // 752: pg_query.SortBy.use_op:type_name -> pg_query.Node - 61, // 753: pg_query.WindowDef.partition_clause:type_name -> pg_query.Node - 61, // 754: pg_query.WindowDef.order_clause:type_name -> pg_query.Node - 61, // 755: pg_query.WindowDef.start_offset:type_name -> pg_query.Node - 61, // 756: pg_query.WindowDef.end_offset:type_name -> pg_query.Node - 61, // 757: pg_query.RangeSubselect.subquery:type_name -> pg_query.Node - 71, // 758: pg_query.RangeSubselect.alias:type_name -> pg_query.Alias - 61, // 759: pg_query.RangeFunction.functions:type_name -> pg_query.Node - 71, // 760: pg_query.RangeFunction.alias:type_name -> pg_query.Alias - 61, // 761: pg_query.RangeFunction.coldeflist:type_name -> pg_query.Node - 61, // 762: pg_query.RangeTableSample.relation:type_name -> pg_query.Node - 61, // 763: pg_query.RangeTableSample.method:type_name -> pg_query.Node - 61, // 764: pg_query.RangeTableSample.args:type_name -> pg_query.Node - 61, // 765: pg_query.RangeTableSample.repeatable:type_name -> pg_query.Node - 61, // 766: pg_query.RangeTableFunc.docexpr:type_name -> pg_query.Node - 61, // 767: pg_query.RangeTableFunc.rowexpr:type_name -> pg_query.Node - 61, // 768: pg_query.RangeTableFunc.namespaces:type_name -> pg_query.Node - 61, // 769: pg_query.RangeTableFunc.columns:type_name -> pg_query.Node - 71, // 770: pg_query.RangeTableFunc.alias:type_name -> pg_query.Alias - 260, // 771: pg_query.RangeTableFuncCol.type_name:type_name -> pg_query.TypeName - 61, // 772: pg_query.RangeTableFuncCol.colexpr:type_name -> pg_query.Node - 61, // 773: pg_query.RangeTableFuncCol.coldefexpr:type_name -> pg_query.Node - 61, // 774: pg_query.TypeName.names:type_name -> pg_query.Node - 61, // 775: pg_query.TypeName.typmods:type_name -> pg_query.Node - 61, // 776: pg_query.TypeName.array_bounds:type_name -> pg_query.Node - 260, // 777: pg_query.ColumnDef.type_name:type_name -> pg_query.TypeName - 61, // 778: pg_query.ColumnDef.raw_default:type_name -> pg_query.Node - 61, // 779: pg_query.ColumnDef.cooked_default:type_name -> pg_query.Node - 72, // 780: pg_query.ColumnDef.identity_sequence:type_name -> pg_query.RangeVar - 252, // 781: pg_query.ColumnDef.coll_clause:type_name -> pg_query.CollateClause - 61, // 782: pg_query.ColumnDef.constraints:type_name -> pg_query.Node - 61, // 783: pg_query.ColumnDef.fdwoptions:type_name -> pg_query.Node - 61, // 784: pg_query.IndexElem.expr:type_name -> pg_query.Node - 61, // 785: pg_query.IndexElem.collation:type_name -> pg_query.Node - 61, // 786: pg_query.IndexElem.opclass:type_name -> pg_query.Node - 61, // 787: pg_query.IndexElem.opclassopts:type_name -> pg_query.Node - 2, // 788: pg_query.IndexElem.ordering:type_name -> pg_query.SortByDir - 3, // 789: pg_query.IndexElem.nulls_ordering:type_name -> pg_query.SortByNulls - 61, // 790: pg_query.StatsElem.expr:type_name -> pg_query.Node - 20, // 791: pg_query.Constraint.contype:type_name -> pg_query.ConstrType - 61, // 792: pg_query.Constraint.raw_expr:type_name -> pg_query.Node - 61, // 793: pg_query.Constraint.keys:type_name -> pg_query.Node - 61, // 794: pg_query.Constraint.including:type_name -> pg_query.Node - 61, // 795: pg_query.Constraint.exclusions:type_name -> pg_query.Node - 61, // 796: pg_query.Constraint.options:type_name -> pg_query.Node - 61, // 797: pg_query.Constraint.where_clause:type_name -> pg_query.Node - 72, // 798: pg_query.Constraint.pktable:type_name -> pg_query.RangeVar - 61, // 799: pg_query.Constraint.fk_attrs:type_name -> pg_query.Node - 61, // 800: pg_query.Constraint.pk_attrs:type_name -> pg_query.Node - 61, // 801: pg_query.Constraint.fk_del_set_cols:type_name -> pg_query.Node - 61, // 802: pg_query.Constraint.old_conpfeqop:type_name -> pg_query.Node - 61, // 803: pg_query.DefElem.arg:type_name -> pg_query.Node - 8, // 804: pg_query.DefElem.defaction:type_name -> pg_query.DefElemAction - 10, // 805: pg_query.RangeTblEntry.rtekind:type_name -> pg_query.RTEKind - 268, // 806: pg_query.RangeTblEntry.tablesample:type_name -> pg_query.TableSampleClause - 123, // 807: pg_query.RangeTblEntry.subquery:type_name -> pg_query.Query - 47, // 808: pg_query.RangeTblEntry.jointype:type_name -> pg_query.JoinType - 61, // 809: pg_query.RangeTblEntry.joinaliasvars:type_name -> pg_query.Node - 61, // 810: pg_query.RangeTblEntry.joinleftcols:type_name -> pg_query.Node - 61, // 811: pg_query.RangeTblEntry.joinrightcols:type_name -> pg_query.Node - 71, // 812: pg_query.RangeTblEntry.join_using_alias:type_name -> pg_query.Alias - 61, // 813: pg_query.RangeTblEntry.functions:type_name -> pg_query.Node - 73, // 814: pg_query.RangeTblEntry.tablefunc:type_name -> pg_query.TableFunc - 61, // 815: pg_query.RangeTblEntry.values_lists:type_name -> pg_query.Node - 61, // 816: pg_query.RangeTblEntry.coltypes:type_name -> pg_query.Node - 61, // 817: pg_query.RangeTblEntry.coltypmods:type_name -> pg_query.Node - 61, // 818: pg_query.RangeTblEntry.colcollations:type_name -> pg_query.Node - 71, // 819: pg_query.RangeTblEntry.alias:type_name -> pg_query.Alias - 71, // 820: pg_query.RangeTblEntry.eref:type_name -> pg_query.Alias - 61, // 821: pg_query.RangeTblEntry.security_quals:type_name -> pg_query.Node - 61, // 822: pg_query.RangeTblFunction.funcexpr:type_name -> pg_query.Node - 61, // 823: pg_query.RangeTblFunction.funccolnames:type_name -> pg_query.Node - 61, // 824: pg_query.RangeTblFunction.funccoltypes:type_name -> pg_query.Node - 61, // 825: pg_query.RangeTblFunction.funccoltypmods:type_name -> pg_query.Node - 61, // 826: pg_query.RangeTblFunction.funccolcollations:type_name -> pg_query.Node - 61, // 827: pg_query.TableSampleClause.args:type_name -> pg_query.Node - 61, // 828: pg_query.TableSampleClause.repeatable:type_name -> pg_query.Node - 11, // 829: pg_query.WithCheckOption.kind:type_name -> pg_query.WCOKind - 61, // 830: pg_query.WithCheckOption.qual:type_name -> pg_query.Node - 12, // 831: pg_query.GroupingSet.kind:type_name -> pg_query.GroupingSetKind - 61, // 832: pg_query.GroupingSet.content:type_name -> pg_query.Node - 61, // 833: pg_query.WindowClause.partition_clause:type_name -> pg_query.Node - 61, // 834: pg_query.WindowClause.order_clause:type_name -> pg_query.Node - 61, // 835: pg_query.WindowClause.start_offset:type_name -> pg_query.Node - 61, // 836: pg_query.WindowClause.end_offset:type_name -> pg_query.Node - 61, // 837: pg_query.WindowClause.run_condition:type_name -> pg_query.Node - 61, // 838: pg_query.ObjectWithArgs.objname:type_name -> pg_query.Node - 61, // 839: pg_query.ObjectWithArgs.objargs:type_name -> pg_query.Node - 61, // 840: pg_query.ObjectWithArgs.objfuncargs:type_name -> pg_query.Node - 61, // 841: pg_query.AccessPriv.cols:type_name -> pg_query.Node - 273, // 842: pg_query.CreateOpClassItem.name:type_name -> pg_query.ObjectWithArgs - 61, // 843: pg_query.CreateOpClassItem.order_family:type_name -> pg_query.Node - 61, // 844: pg_query.CreateOpClassItem.class_args:type_name -> pg_query.Node - 260, // 845: pg_query.CreateOpClassItem.storedtype:type_name -> pg_query.TypeName - 72, // 846: pg_query.TableLikeClause.relation:type_name -> pg_query.RangeVar - 260, // 847: pg_query.FunctionParameter.arg_type:type_name -> pg_query.TypeName - 24, // 848: pg_query.FunctionParameter.mode:type_name -> pg_query.FunctionParameterMode - 61, // 849: pg_query.FunctionParameter.defexpr:type_name -> pg_query.Node - 61, // 850: pg_query.LockingClause.locked_rels:type_name -> pg_query.Node - 54, // 851: pg_query.LockingClause.strength:type_name -> pg_query.LockClauseStrength - 55, // 852: pg_query.LockingClause.wait_policy:type_name -> pg_query.LockWaitPolicy - 54, // 853: pg_query.RowMarkClause.strength:type_name -> pg_query.LockClauseStrength - 55, // 854: pg_query.RowMarkClause.wait_policy:type_name -> pg_query.LockWaitPolicy - 43, // 855: pg_query.XmlSerialize.xmloption:type_name -> pg_query.XmlOptionType - 61, // 856: pg_query.XmlSerialize.expr:type_name -> pg_query.Node - 260, // 857: pg_query.XmlSerialize.type_name:type_name -> pg_query.TypeName - 61, // 858: pg_query.WithClause.ctes:type_name -> pg_query.Node - 61, // 859: pg_query.InferClause.index_elems:type_name -> pg_query.Node - 61, // 860: pg_query.InferClause.where_clause:type_name -> pg_query.Node - 52, // 861: pg_query.OnConflictClause.action:type_name -> pg_query.OnConflictAction - 282, // 862: pg_query.OnConflictClause.infer:type_name -> pg_query.InferClause - 61, // 863: pg_query.OnConflictClause.target_list:type_name -> pg_query.Node - 61, // 864: pg_query.OnConflictClause.where_clause:type_name -> pg_query.Node - 61, // 865: pg_query.CTESearchClause.search_col_list:type_name -> pg_query.Node - 61, // 866: pg_query.CTECycleClause.cycle_col_list:type_name -> pg_query.Node - 61, // 867: pg_query.CTECycleClause.cycle_mark_value:type_name -> pg_query.Node - 61, // 868: pg_query.CTECycleClause.cycle_mark_default:type_name -> pg_query.Node - 61, // 869: pg_query.CommonTableExpr.aliascolnames:type_name -> pg_query.Node - 13, // 870: pg_query.CommonTableExpr.ctematerialized:type_name -> pg_query.CTEMaterialize - 61, // 871: pg_query.CommonTableExpr.ctequery:type_name -> pg_query.Node - 284, // 872: pg_query.CommonTableExpr.search_clause:type_name -> pg_query.CTESearchClause - 285, // 873: pg_query.CommonTableExpr.cycle_clause:type_name -> pg_query.CTECycleClause - 61, // 874: pg_query.CommonTableExpr.ctecolnames:type_name -> pg_query.Node - 61, // 875: pg_query.CommonTableExpr.ctecoltypes:type_name -> pg_query.Node - 61, // 876: pg_query.CommonTableExpr.ctecoltypmods:type_name -> pg_query.Node - 61, // 877: pg_query.CommonTableExpr.ctecolcollations:type_name -> pg_query.Node - 46, // 878: pg_query.MergeWhenClause.command_type:type_name -> pg_query.CmdType - 0, // 879: pg_query.MergeWhenClause.override:type_name -> pg_query.OverridingKind - 61, // 880: pg_query.MergeWhenClause.condition:type_name -> pg_query.Node - 61, // 881: pg_query.MergeWhenClause.target_list:type_name -> pg_query.Node - 61, // 882: pg_query.MergeWhenClause.values:type_name -> pg_query.Node - 6, // 883: pg_query.RoleSpec.roletype:type_name -> pg_query.RoleSpecType - 61, // 884: pg_query.PartitionElem.expr:type_name -> pg_query.Node - 61, // 885: pg_query.PartitionElem.collation:type_name -> pg_query.Node - 61, // 886: pg_query.PartitionElem.opclass:type_name -> pg_query.Node - 61, // 887: pg_query.PartitionSpec.part_params:type_name -> pg_query.Node - 61, // 888: pg_query.PartitionBoundSpec.listdatums:type_name -> pg_query.Node - 61, // 889: pg_query.PartitionBoundSpec.lowerdatums:type_name -> pg_query.Node - 61, // 890: pg_query.PartitionBoundSpec.upperdatums:type_name -> pg_query.Node - 9, // 891: pg_query.PartitionRangeDatum.kind:type_name -> pg_query.PartitionRangeDatumKind - 61, // 892: pg_query.PartitionRangeDatum.value:type_name -> pg_query.Node - 72, // 893: pg_query.PartitionCmd.name:type_name -> pg_query.RangeVar - 292, // 894: pg_query.PartitionCmd.bound:type_name -> pg_query.PartitionBoundSpec - 72, // 895: pg_query.VacuumRelation.relation:type_name -> pg_query.RangeVar - 61, // 896: pg_query.VacuumRelation.va_cols:type_name -> pg_query.Node - 30, // 897: pg_query.PublicationObjSpec.pubobjtype:type_name -> pg_query.PublicationObjSpecType - 297, // 898: pg_query.PublicationObjSpec.pubtable:type_name -> pg_query.PublicationTable - 72, // 899: pg_query.PublicationTable.relation:type_name -> pg_query.RangeVar - 61, // 900: pg_query.PublicationTable.where_clause:type_name -> pg_query.Node - 61, // 901: pg_query.PublicationTable.columns:type_name -> pg_query.Node - 58, // 902: pg_query.ScanToken.token:type_name -> pg_query.Token - 57, // 903: pg_query.ScanToken.keyword_kind:type_name -> pg_query.KeywordKind - 904, // [904:904] is the sub-list for method output_type - 904, // [904:904] is the sub-list for method input_type - 904, // [904:904] is the sub-list for extension type_name - 904, // [904:904] is the sub-list for extension extendee - 0, // [0:904] is the sub-list for field type_name + 190, // 0: pg_query.ParseResult.stmts:type_name -> pg_query.RawStmt + 319, // 1: pg_query.ScanResult.tokens:type_name -> pg_query.ScanToken + 76, // 2: pg_query.Node.alias:type_name -> pg_query.Alias + 77, // 3: pg_query.Node.range_var:type_name -> pg_query.RangeVar + 78, // 4: pg_query.Node.table_func:type_name -> pg_query.TableFunc + 79, // 5: pg_query.Node.into_clause:type_name -> pg_query.IntoClause + 80, // 6: pg_query.Node.var:type_name -> pg_query.Var + 81, // 7: pg_query.Node.param:type_name -> pg_query.Param + 82, // 8: pg_query.Node.aggref:type_name -> pg_query.Aggref + 83, // 9: pg_query.Node.grouping_func:type_name -> pg_query.GroupingFunc + 84, // 10: pg_query.Node.window_func:type_name -> pg_query.WindowFunc + 85, // 11: pg_query.Node.subscripting_ref:type_name -> pg_query.SubscriptingRef + 86, // 12: pg_query.Node.func_expr:type_name -> pg_query.FuncExpr + 87, // 13: pg_query.Node.named_arg_expr:type_name -> pg_query.NamedArgExpr + 88, // 14: pg_query.Node.op_expr:type_name -> pg_query.OpExpr + 89, // 15: pg_query.Node.distinct_expr:type_name -> pg_query.DistinctExpr + 90, // 16: pg_query.Node.null_if_expr:type_name -> pg_query.NullIfExpr + 91, // 17: pg_query.Node.scalar_array_op_expr:type_name -> pg_query.ScalarArrayOpExpr + 92, // 18: pg_query.Node.bool_expr:type_name -> pg_query.BoolExpr + 93, // 19: pg_query.Node.sub_link:type_name -> pg_query.SubLink + 94, // 20: pg_query.Node.sub_plan:type_name -> pg_query.SubPlan + 95, // 21: pg_query.Node.alternative_sub_plan:type_name -> pg_query.AlternativeSubPlan + 96, // 22: pg_query.Node.field_select:type_name -> pg_query.FieldSelect + 97, // 23: pg_query.Node.field_store:type_name -> pg_query.FieldStore + 98, // 24: pg_query.Node.relabel_type:type_name -> pg_query.RelabelType + 99, // 25: pg_query.Node.coerce_via_io:type_name -> pg_query.CoerceViaIO + 100, // 26: pg_query.Node.array_coerce_expr:type_name -> pg_query.ArrayCoerceExpr + 101, // 27: pg_query.Node.convert_rowtype_expr:type_name -> pg_query.ConvertRowtypeExpr + 102, // 28: pg_query.Node.collate_expr:type_name -> pg_query.CollateExpr + 103, // 29: pg_query.Node.case_expr:type_name -> pg_query.CaseExpr + 104, // 30: pg_query.Node.case_when:type_name -> pg_query.CaseWhen + 105, // 31: pg_query.Node.case_test_expr:type_name -> pg_query.CaseTestExpr + 106, // 32: pg_query.Node.array_expr:type_name -> pg_query.ArrayExpr + 107, // 33: pg_query.Node.row_expr:type_name -> pg_query.RowExpr + 108, // 34: pg_query.Node.row_compare_expr:type_name -> pg_query.RowCompareExpr + 109, // 35: pg_query.Node.coalesce_expr:type_name -> pg_query.CoalesceExpr + 110, // 36: pg_query.Node.min_max_expr:type_name -> pg_query.MinMaxExpr + 111, // 37: pg_query.Node.sqlvalue_function:type_name -> pg_query.SQLValueFunction + 112, // 38: pg_query.Node.xml_expr:type_name -> pg_query.XmlExpr + 113, // 39: pg_query.Node.json_format:type_name -> pg_query.JsonFormat + 114, // 40: pg_query.Node.json_returning:type_name -> pg_query.JsonReturning + 115, // 41: pg_query.Node.json_value_expr:type_name -> pg_query.JsonValueExpr + 116, // 42: pg_query.Node.json_constructor_expr:type_name -> pg_query.JsonConstructorExpr + 117, // 43: pg_query.Node.json_is_predicate:type_name -> pg_query.JsonIsPredicate + 118, // 44: pg_query.Node.null_test:type_name -> pg_query.NullTest + 119, // 45: pg_query.Node.boolean_test:type_name -> pg_query.BooleanTest + 120, // 46: pg_query.Node.coerce_to_domain:type_name -> pg_query.CoerceToDomain + 121, // 47: pg_query.Node.coerce_to_domain_value:type_name -> pg_query.CoerceToDomainValue + 122, // 48: pg_query.Node.set_to_default:type_name -> pg_query.SetToDefault + 123, // 49: pg_query.Node.current_of_expr:type_name -> pg_query.CurrentOfExpr + 124, // 50: pg_query.Node.next_value_expr:type_name -> pg_query.NextValueExpr + 125, // 51: pg_query.Node.inference_elem:type_name -> pg_query.InferenceElem + 126, // 52: pg_query.Node.target_entry:type_name -> pg_query.TargetEntry + 127, // 53: pg_query.Node.range_tbl_ref:type_name -> pg_query.RangeTblRef + 128, // 54: pg_query.Node.join_expr:type_name -> pg_query.JoinExpr + 129, // 55: pg_query.Node.from_expr:type_name -> pg_query.FromExpr + 130, // 56: pg_query.Node.on_conflict_expr:type_name -> pg_query.OnConflictExpr + 131, // 57: pg_query.Node.query:type_name -> pg_query.Query + 132, // 58: pg_query.Node.type_name:type_name -> pg_query.TypeName + 133, // 59: pg_query.Node.column_ref:type_name -> pg_query.ColumnRef + 134, // 60: pg_query.Node.param_ref:type_name -> pg_query.ParamRef + 135, // 61: pg_query.Node.a_expr:type_name -> pg_query.A_Expr + 136, // 62: pg_query.Node.type_cast:type_name -> pg_query.TypeCast + 137, // 63: pg_query.Node.collate_clause:type_name -> pg_query.CollateClause + 138, // 64: pg_query.Node.role_spec:type_name -> pg_query.RoleSpec + 139, // 65: pg_query.Node.func_call:type_name -> pg_query.FuncCall + 140, // 66: pg_query.Node.a_star:type_name -> pg_query.A_Star + 141, // 67: pg_query.Node.a_indices:type_name -> pg_query.A_Indices + 142, // 68: pg_query.Node.a_indirection:type_name -> pg_query.A_Indirection + 143, // 69: pg_query.Node.a_array_expr:type_name -> pg_query.A_ArrayExpr + 144, // 70: pg_query.Node.res_target:type_name -> pg_query.ResTarget + 145, // 71: pg_query.Node.multi_assign_ref:type_name -> pg_query.MultiAssignRef + 146, // 72: pg_query.Node.sort_by:type_name -> pg_query.SortBy + 147, // 73: pg_query.Node.window_def:type_name -> pg_query.WindowDef + 148, // 74: pg_query.Node.range_subselect:type_name -> pg_query.RangeSubselect + 149, // 75: pg_query.Node.range_function:type_name -> pg_query.RangeFunction + 150, // 76: pg_query.Node.range_table_func:type_name -> pg_query.RangeTableFunc + 151, // 77: pg_query.Node.range_table_func_col:type_name -> pg_query.RangeTableFuncCol + 152, // 78: pg_query.Node.range_table_sample:type_name -> pg_query.RangeTableSample + 153, // 79: pg_query.Node.column_def:type_name -> pg_query.ColumnDef + 154, // 80: pg_query.Node.table_like_clause:type_name -> pg_query.TableLikeClause + 155, // 81: pg_query.Node.index_elem:type_name -> pg_query.IndexElem + 156, // 82: pg_query.Node.def_elem:type_name -> pg_query.DefElem + 157, // 83: pg_query.Node.locking_clause:type_name -> pg_query.LockingClause + 158, // 84: pg_query.Node.xml_serialize:type_name -> pg_query.XmlSerialize + 159, // 85: pg_query.Node.partition_elem:type_name -> pg_query.PartitionElem + 160, // 86: pg_query.Node.partition_spec:type_name -> pg_query.PartitionSpec + 161, // 87: pg_query.Node.partition_bound_spec:type_name -> pg_query.PartitionBoundSpec + 162, // 88: pg_query.Node.partition_range_datum:type_name -> pg_query.PartitionRangeDatum + 163, // 89: pg_query.Node.partition_cmd:type_name -> pg_query.PartitionCmd + 164, // 90: pg_query.Node.range_tbl_entry:type_name -> pg_query.RangeTblEntry + 165, // 91: pg_query.Node.rtepermission_info:type_name -> pg_query.RTEPermissionInfo + 166, // 92: pg_query.Node.range_tbl_function:type_name -> pg_query.RangeTblFunction + 167, // 93: pg_query.Node.table_sample_clause:type_name -> pg_query.TableSampleClause + 168, // 94: pg_query.Node.with_check_option:type_name -> pg_query.WithCheckOption + 169, // 95: pg_query.Node.sort_group_clause:type_name -> pg_query.SortGroupClause + 170, // 96: pg_query.Node.grouping_set:type_name -> pg_query.GroupingSet + 171, // 97: pg_query.Node.window_clause:type_name -> pg_query.WindowClause + 172, // 98: pg_query.Node.row_mark_clause:type_name -> pg_query.RowMarkClause + 173, // 99: pg_query.Node.with_clause:type_name -> pg_query.WithClause + 174, // 100: pg_query.Node.infer_clause:type_name -> pg_query.InferClause + 175, // 101: pg_query.Node.on_conflict_clause:type_name -> pg_query.OnConflictClause + 176, // 102: pg_query.Node.ctesearch_clause:type_name -> pg_query.CTESearchClause + 177, // 103: pg_query.Node.ctecycle_clause:type_name -> pg_query.CTECycleClause + 178, // 104: pg_query.Node.common_table_expr:type_name -> pg_query.CommonTableExpr + 179, // 105: pg_query.Node.merge_when_clause:type_name -> pg_query.MergeWhenClause + 180, // 106: pg_query.Node.merge_action:type_name -> pg_query.MergeAction + 181, // 107: pg_query.Node.trigger_transition:type_name -> pg_query.TriggerTransition + 182, // 108: pg_query.Node.json_output:type_name -> pg_query.JsonOutput + 183, // 109: pg_query.Node.json_key_value:type_name -> pg_query.JsonKeyValue + 184, // 110: pg_query.Node.json_object_constructor:type_name -> pg_query.JsonObjectConstructor + 185, // 111: pg_query.Node.json_array_constructor:type_name -> pg_query.JsonArrayConstructor + 186, // 112: pg_query.Node.json_array_query_constructor:type_name -> pg_query.JsonArrayQueryConstructor + 187, // 113: pg_query.Node.json_agg_constructor:type_name -> pg_query.JsonAggConstructor + 188, // 114: pg_query.Node.json_object_agg:type_name -> pg_query.JsonObjectAgg + 189, // 115: pg_query.Node.json_array_agg:type_name -> pg_query.JsonArrayAgg + 190, // 116: pg_query.Node.raw_stmt:type_name -> pg_query.RawStmt + 191, // 117: pg_query.Node.insert_stmt:type_name -> pg_query.InsertStmt + 192, // 118: pg_query.Node.delete_stmt:type_name -> pg_query.DeleteStmt + 193, // 119: pg_query.Node.update_stmt:type_name -> pg_query.UpdateStmt + 194, // 120: pg_query.Node.merge_stmt:type_name -> pg_query.MergeStmt + 195, // 121: pg_query.Node.select_stmt:type_name -> pg_query.SelectStmt + 196, // 122: pg_query.Node.set_operation_stmt:type_name -> pg_query.SetOperationStmt + 197, // 123: pg_query.Node.return_stmt:type_name -> pg_query.ReturnStmt + 198, // 124: pg_query.Node.plassign_stmt:type_name -> pg_query.PLAssignStmt + 199, // 125: pg_query.Node.create_schema_stmt:type_name -> pg_query.CreateSchemaStmt + 200, // 126: pg_query.Node.alter_table_stmt:type_name -> pg_query.AlterTableStmt + 201, // 127: pg_query.Node.replica_identity_stmt:type_name -> pg_query.ReplicaIdentityStmt + 202, // 128: pg_query.Node.alter_table_cmd:type_name -> pg_query.AlterTableCmd + 203, // 129: pg_query.Node.alter_collation_stmt:type_name -> pg_query.AlterCollationStmt + 204, // 130: pg_query.Node.alter_domain_stmt:type_name -> pg_query.AlterDomainStmt + 205, // 131: pg_query.Node.grant_stmt:type_name -> pg_query.GrantStmt + 206, // 132: pg_query.Node.object_with_args:type_name -> pg_query.ObjectWithArgs + 207, // 133: pg_query.Node.access_priv:type_name -> pg_query.AccessPriv + 208, // 134: pg_query.Node.grant_role_stmt:type_name -> pg_query.GrantRoleStmt + 209, // 135: pg_query.Node.alter_default_privileges_stmt:type_name -> pg_query.AlterDefaultPrivilegesStmt + 210, // 136: pg_query.Node.copy_stmt:type_name -> pg_query.CopyStmt + 211, // 137: pg_query.Node.variable_set_stmt:type_name -> pg_query.VariableSetStmt + 212, // 138: pg_query.Node.variable_show_stmt:type_name -> pg_query.VariableShowStmt + 213, // 139: pg_query.Node.create_stmt:type_name -> pg_query.CreateStmt + 214, // 140: pg_query.Node.constraint:type_name -> pg_query.Constraint + 215, // 141: pg_query.Node.create_table_space_stmt:type_name -> pg_query.CreateTableSpaceStmt + 216, // 142: pg_query.Node.drop_table_space_stmt:type_name -> pg_query.DropTableSpaceStmt + 217, // 143: pg_query.Node.alter_table_space_options_stmt:type_name -> pg_query.AlterTableSpaceOptionsStmt + 218, // 144: pg_query.Node.alter_table_move_all_stmt:type_name -> pg_query.AlterTableMoveAllStmt + 219, // 145: pg_query.Node.create_extension_stmt:type_name -> pg_query.CreateExtensionStmt + 220, // 146: pg_query.Node.alter_extension_stmt:type_name -> pg_query.AlterExtensionStmt + 221, // 147: pg_query.Node.alter_extension_contents_stmt:type_name -> pg_query.AlterExtensionContentsStmt + 222, // 148: pg_query.Node.create_fdw_stmt:type_name -> pg_query.CreateFdwStmt + 223, // 149: pg_query.Node.alter_fdw_stmt:type_name -> pg_query.AlterFdwStmt + 224, // 150: pg_query.Node.create_foreign_server_stmt:type_name -> pg_query.CreateForeignServerStmt + 225, // 151: pg_query.Node.alter_foreign_server_stmt:type_name -> pg_query.AlterForeignServerStmt + 226, // 152: pg_query.Node.create_foreign_table_stmt:type_name -> pg_query.CreateForeignTableStmt + 227, // 153: pg_query.Node.create_user_mapping_stmt:type_name -> pg_query.CreateUserMappingStmt + 228, // 154: pg_query.Node.alter_user_mapping_stmt:type_name -> pg_query.AlterUserMappingStmt + 229, // 155: pg_query.Node.drop_user_mapping_stmt:type_name -> pg_query.DropUserMappingStmt + 230, // 156: pg_query.Node.import_foreign_schema_stmt:type_name -> pg_query.ImportForeignSchemaStmt + 231, // 157: pg_query.Node.create_policy_stmt:type_name -> pg_query.CreatePolicyStmt + 232, // 158: pg_query.Node.alter_policy_stmt:type_name -> pg_query.AlterPolicyStmt + 233, // 159: pg_query.Node.create_am_stmt:type_name -> pg_query.CreateAmStmt + 234, // 160: pg_query.Node.create_trig_stmt:type_name -> pg_query.CreateTrigStmt + 235, // 161: pg_query.Node.create_event_trig_stmt:type_name -> pg_query.CreateEventTrigStmt + 236, // 162: pg_query.Node.alter_event_trig_stmt:type_name -> pg_query.AlterEventTrigStmt + 237, // 163: pg_query.Node.create_plang_stmt:type_name -> pg_query.CreatePLangStmt + 238, // 164: pg_query.Node.create_role_stmt:type_name -> pg_query.CreateRoleStmt + 239, // 165: pg_query.Node.alter_role_stmt:type_name -> pg_query.AlterRoleStmt + 240, // 166: pg_query.Node.alter_role_set_stmt:type_name -> pg_query.AlterRoleSetStmt + 241, // 167: pg_query.Node.drop_role_stmt:type_name -> pg_query.DropRoleStmt + 242, // 168: pg_query.Node.create_seq_stmt:type_name -> pg_query.CreateSeqStmt + 243, // 169: pg_query.Node.alter_seq_stmt:type_name -> pg_query.AlterSeqStmt + 244, // 170: pg_query.Node.define_stmt:type_name -> pg_query.DefineStmt + 245, // 171: pg_query.Node.create_domain_stmt:type_name -> pg_query.CreateDomainStmt + 246, // 172: pg_query.Node.create_op_class_stmt:type_name -> pg_query.CreateOpClassStmt + 247, // 173: pg_query.Node.create_op_class_item:type_name -> pg_query.CreateOpClassItem + 248, // 174: pg_query.Node.create_op_family_stmt:type_name -> pg_query.CreateOpFamilyStmt + 249, // 175: pg_query.Node.alter_op_family_stmt:type_name -> pg_query.AlterOpFamilyStmt + 250, // 176: pg_query.Node.drop_stmt:type_name -> pg_query.DropStmt + 251, // 177: pg_query.Node.truncate_stmt:type_name -> pg_query.TruncateStmt + 252, // 178: pg_query.Node.comment_stmt:type_name -> pg_query.CommentStmt + 253, // 179: pg_query.Node.sec_label_stmt:type_name -> pg_query.SecLabelStmt + 254, // 180: pg_query.Node.declare_cursor_stmt:type_name -> pg_query.DeclareCursorStmt + 255, // 181: pg_query.Node.close_portal_stmt:type_name -> pg_query.ClosePortalStmt + 256, // 182: pg_query.Node.fetch_stmt:type_name -> pg_query.FetchStmt + 257, // 183: pg_query.Node.index_stmt:type_name -> pg_query.IndexStmt + 258, // 184: pg_query.Node.create_stats_stmt:type_name -> pg_query.CreateStatsStmt + 259, // 185: pg_query.Node.stats_elem:type_name -> pg_query.StatsElem + 260, // 186: pg_query.Node.alter_stats_stmt:type_name -> pg_query.AlterStatsStmt + 261, // 187: pg_query.Node.create_function_stmt:type_name -> pg_query.CreateFunctionStmt + 262, // 188: pg_query.Node.function_parameter:type_name -> pg_query.FunctionParameter + 263, // 189: pg_query.Node.alter_function_stmt:type_name -> pg_query.AlterFunctionStmt + 264, // 190: pg_query.Node.do_stmt:type_name -> pg_query.DoStmt + 265, // 191: pg_query.Node.inline_code_block:type_name -> pg_query.InlineCodeBlock + 266, // 192: pg_query.Node.call_stmt:type_name -> pg_query.CallStmt + 267, // 193: pg_query.Node.call_context:type_name -> pg_query.CallContext + 268, // 194: pg_query.Node.rename_stmt:type_name -> pg_query.RenameStmt + 269, // 195: pg_query.Node.alter_object_depends_stmt:type_name -> pg_query.AlterObjectDependsStmt + 270, // 196: pg_query.Node.alter_object_schema_stmt:type_name -> pg_query.AlterObjectSchemaStmt + 271, // 197: pg_query.Node.alter_owner_stmt:type_name -> pg_query.AlterOwnerStmt + 272, // 198: pg_query.Node.alter_operator_stmt:type_name -> pg_query.AlterOperatorStmt + 273, // 199: pg_query.Node.alter_type_stmt:type_name -> pg_query.AlterTypeStmt + 274, // 200: pg_query.Node.rule_stmt:type_name -> pg_query.RuleStmt + 275, // 201: pg_query.Node.notify_stmt:type_name -> pg_query.NotifyStmt + 276, // 202: pg_query.Node.listen_stmt:type_name -> pg_query.ListenStmt + 277, // 203: pg_query.Node.unlisten_stmt:type_name -> pg_query.UnlistenStmt + 278, // 204: pg_query.Node.transaction_stmt:type_name -> pg_query.TransactionStmt + 279, // 205: pg_query.Node.composite_type_stmt:type_name -> pg_query.CompositeTypeStmt + 280, // 206: pg_query.Node.create_enum_stmt:type_name -> pg_query.CreateEnumStmt + 281, // 207: pg_query.Node.create_range_stmt:type_name -> pg_query.CreateRangeStmt + 282, // 208: pg_query.Node.alter_enum_stmt:type_name -> pg_query.AlterEnumStmt + 283, // 209: pg_query.Node.view_stmt:type_name -> pg_query.ViewStmt + 284, // 210: pg_query.Node.load_stmt:type_name -> pg_query.LoadStmt + 285, // 211: pg_query.Node.createdb_stmt:type_name -> pg_query.CreatedbStmt + 286, // 212: pg_query.Node.alter_database_stmt:type_name -> pg_query.AlterDatabaseStmt + 287, // 213: pg_query.Node.alter_database_refresh_coll_stmt:type_name -> pg_query.AlterDatabaseRefreshCollStmt + 288, // 214: pg_query.Node.alter_database_set_stmt:type_name -> pg_query.AlterDatabaseSetStmt + 289, // 215: pg_query.Node.dropdb_stmt:type_name -> pg_query.DropdbStmt + 290, // 216: pg_query.Node.alter_system_stmt:type_name -> pg_query.AlterSystemStmt + 291, // 217: pg_query.Node.cluster_stmt:type_name -> pg_query.ClusterStmt + 292, // 218: pg_query.Node.vacuum_stmt:type_name -> pg_query.VacuumStmt + 293, // 219: pg_query.Node.vacuum_relation:type_name -> pg_query.VacuumRelation + 294, // 220: pg_query.Node.explain_stmt:type_name -> pg_query.ExplainStmt + 295, // 221: pg_query.Node.create_table_as_stmt:type_name -> pg_query.CreateTableAsStmt + 296, // 222: pg_query.Node.refresh_mat_view_stmt:type_name -> pg_query.RefreshMatViewStmt + 297, // 223: pg_query.Node.check_point_stmt:type_name -> pg_query.CheckPointStmt + 298, // 224: pg_query.Node.discard_stmt:type_name -> pg_query.DiscardStmt + 299, // 225: pg_query.Node.lock_stmt:type_name -> pg_query.LockStmt + 300, // 226: pg_query.Node.constraints_set_stmt:type_name -> pg_query.ConstraintsSetStmt + 301, // 227: pg_query.Node.reindex_stmt:type_name -> pg_query.ReindexStmt + 302, // 228: pg_query.Node.create_conversion_stmt:type_name -> pg_query.CreateConversionStmt + 303, // 229: pg_query.Node.create_cast_stmt:type_name -> pg_query.CreateCastStmt + 304, // 230: pg_query.Node.create_transform_stmt:type_name -> pg_query.CreateTransformStmt + 305, // 231: pg_query.Node.prepare_stmt:type_name -> pg_query.PrepareStmt + 306, // 232: pg_query.Node.execute_stmt:type_name -> pg_query.ExecuteStmt + 307, // 233: pg_query.Node.deallocate_stmt:type_name -> pg_query.DeallocateStmt + 308, // 234: pg_query.Node.drop_owned_stmt:type_name -> pg_query.DropOwnedStmt + 309, // 235: pg_query.Node.reassign_owned_stmt:type_name -> pg_query.ReassignOwnedStmt + 310, // 236: pg_query.Node.alter_tsdictionary_stmt:type_name -> pg_query.AlterTSDictionaryStmt + 311, // 237: pg_query.Node.alter_tsconfiguration_stmt:type_name -> pg_query.AlterTSConfigurationStmt + 312, // 238: pg_query.Node.publication_table:type_name -> pg_query.PublicationTable + 313, // 239: pg_query.Node.publication_obj_spec:type_name -> pg_query.PublicationObjSpec + 314, // 240: pg_query.Node.create_publication_stmt:type_name -> pg_query.CreatePublicationStmt + 315, // 241: pg_query.Node.alter_publication_stmt:type_name -> pg_query.AlterPublicationStmt + 316, // 242: pg_query.Node.create_subscription_stmt:type_name -> pg_query.CreateSubscriptionStmt + 317, // 243: pg_query.Node.alter_subscription_stmt:type_name -> pg_query.AlterSubscriptionStmt + 318, // 244: pg_query.Node.drop_subscription_stmt:type_name -> pg_query.DropSubscriptionStmt + 67, // 245: pg_query.Node.integer:type_name -> pg_query.Integer + 68, // 246: pg_query.Node.float:type_name -> pg_query.Float + 69, // 247: pg_query.Node.boolean:type_name -> pg_query.Boolean + 70, // 248: pg_query.Node.string:type_name -> pg_query.String + 71, // 249: pg_query.Node.bit_string:type_name -> pg_query.BitString + 72, // 250: pg_query.Node.list:type_name -> pg_query.List + 74, // 251: pg_query.Node.int_list:type_name -> pg_query.IntList + 73, // 252: pg_query.Node.oid_list:type_name -> pg_query.OidList + 75, // 253: pg_query.Node.a_const:type_name -> pg_query.A_Const + 66, // 254: pg_query.List.items:type_name -> pg_query.Node + 66, // 255: pg_query.OidList.items:type_name -> pg_query.Node + 66, // 256: pg_query.IntList.items:type_name -> pg_query.Node + 67, // 257: pg_query.A_Const.ival:type_name -> pg_query.Integer + 68, // 258: pg_query.A_Const.fval:type_name -> pg_query.Float + 69, // 259: pg_query.A_Const.boolval:type_name -> pg_query.Boolean + 70, // 260: pg_query.A_Const.sval:type_name -> pg_query.String + 71, // 261: pg_query.A_Const.bsval:type_name -> pg_query.BitString + 66, // 262: pg_query.Alias.colnames:type_name -> pg_query.Node + 76, // 263: pg_query.RangeVar.alias:type_name -> pg_query.Alias + 66, // 264: pg_query.TableFunc.ns_uris:type_name -> pg_query.Node + 66, // 265: pg_query.TableFunc.ns_names:type_name -> pg_query.Node + 66, // 266: pg_query.TableFunc.docexpr:type_name -> pg_query.Node + 66, // 267: pg_query.TableFunc.rowexpr:type_name -> pg_query.Node + 66, // 268: pg_query.TableFunc.colnames:type_name -> pg_query.Node + 66, // 269: pg_query.TableFunc.coltypes:type_name -> pg_query.Node + 66, // 270: pg_query.TableFunc.coltypmods:type_name -> pg_query.Node + 66, // 271: pg_query.TableFunc.colcollations:type_name -> pg_query.Node + 66, // 272: pg_query.TableFunc.colexprs:type_name -> pg_query.Node + 66, // 273: pg_query.TableFunc.coldefexprs:type_name -> pg_query.Node + 77, // 274: pg_query.IntoClause.rel:type_name -> pg_query.RangeVar + 66, // 275: pg_query.IntoClause.col_names:type_name -> pg_query.Node + 66, // 276: pg_query.IntoClause.options:type_name -> pg_query.Node + 34, // 277: pg_query.IntoClause.on_commit:type_name -> pg_query.OnCommitAction + 66, // 278: pg_query.IntoClause.view_query:type_name -> pg_query.Node + 66, // 279: pg_query.Var.xpr:type_name -> pg_query.Node + 66, // 280: pg_query.Param.xpr:type_name -> pg_query.Node + 35, // 281: pg_query.Param.paramkind:type_name -> pg_query.ParamKind + 66, // 282: pg_query.Aggref.xpr:type_name -> pg_query.Node + 66, // 283: pg_query.Aggref.aggargtypes:type_name -> pg_query.Node + 66, // 284: pg_query.Aggref.aggdirectargs:type_name -> pg_query.Node + 66, // 285: pg_query.Aggref.args:type_name -> pg_query.Node + 66, // 286: pg_query.Aggref.aggorder:type_name -> pg_query.Node + 66, // 287: pg_query.Aggref.aggdistinct:type_name -> pg_query.Node + 66, // 288: pg_query.Aggref.aggfilter:type_name -> pg_query.Node + 54, // 289: pg_query.Aggref.aggsplit:type_name -> pg_query.AggSplit + 66, // 290: pg_query.GroupingFunc.xpr:type_name -> pg_query.Node + 66, // 291: pg_query.GroupingFunc.args:type_name -> pg_query.Node + 66, // 292: pg_query.GroupingFunc.refs:type_name -> pg_query.Node + 66, // 293: pg_query.WindowFunc.xpr:type_name -> pg_query.Node + 66, // 294: pg_query.WindowFunc.args:type_name -> pg_query.Node + 66, // 295: pg_query.WindowFunc.aggfilter:type_name -> pg_query.Node + 66, // 296: pg_query.SubscriptingRef.xpr:type_name -> pg_query.Node + 66, // 297: pg_query.SubscriptingRef.refupperindexpr:type_name -> pg_query.Node + 66, // 298: pg_query.SubscriptingRef.reflowerindexpr:type_name -> pg_query.Node + 66, // 299: pg_query.SubscriptingRef.refexpr:type_name -> pg_query.Node + 66, // 300: pg_query.SubscriptingRef.refassgnexpr:type_name -> pg_query.Node + 66, // 301: pg_query.FuncExpr.xpr:type_name -> pg_query.Node + 37, // 302: pg_query.FuncExpr.funcformat:type_name -> pg_query.CoercionForm + 66, // 303: pg_query.FuncExpr.args:type_name -> pg_query.Node + 66, // 304: pg_query.NamedArgExpr.xpr:type_name -> pg_query.Node + 66, // 305: pg_query.NamedArgExpr.arg:type_name -> pg_query.Node + 66, // 306: pg_query.OpExpr.xpr:type_name -> pg_query.Node + 66, // 307: pg_query.OpExpr.args:type_name -> pg_query.Node + 66, // 308: pg_query.DistinctExpr.xpr:type_name -> pg_query.Node + 66, // 309: pg_query.DistinctExpr.args:type_name -> pg_query.Node + 66, // 310: pg_query.NullIfExpr.xpr:type_name -> pg_query.Node + 66, // 311: pg_query.NullIfExpr.args:type_name -> pg_query.Node + 66, // 312: pg_query.ScalarArrayOpExpr.xpr:type_name -> pg_query.Node + 66, // 313: pg_query.ScalarArrayOpExpr.args:type_name -> pg_query.Node + 66, // 314: pg_query.BoolExpr.xpr:type_name -> pg_query.Node + 38, // 315: pg_query.BoolExpr.boolop:type_name -> pg_query.BoolExprType + 66, // 316: pg_query.BoolExpr.args:type_name -> pg_query.Node + 66, // 317: pg_query.SubLink.xpr:type_name -> pg_query.Node + 39, // 318: pg_query.SubLink.sub_link_type:type_name -> pg_query.SubLinkType + 66, // 319: pg_query.SubLink.testexpr:type_name -> pg_query.Node + 66, // 320: pg_query.SubLink.oper_name:type_name -> pg_query.Node + 66, // 321: pg_query.SubLink.subselect:type_name -> pg_query.Node + 66, // 322: pg_query.SubPlan.xpr:type_name -> pg_query.Node + 39, // 323: pg_query.SubPlan.sub_link_type:type_name -> pg_query.SubLinkType + 66, // 324: pg_query.SubPlan.testexpr:type_name -> pg_query.Node + 66, // 325: pg_query.SubPlan.param_ids:type_name -> pg_query.Node + 66, // 326: pg_query.SubPlan.set_param:type_name -> pg_query.Node + 66, // 327: pg_query.SubPlan.par_param:type_name -> pg_query.Node + 66, // 328: pg_query.SubPlan.args:type_name -> pg_query.Node + 66, // 329: pg_query.AlternativeSubPlan.xpr:type_name -> pg_query.Node + 66, // 330: pg_query.AlternativeSubPlan.subplans:type_name -> pg_query.Node + 66, // 331: pg_query.FieldSelect.xpr:type_name -> pg_query.Node + 66, // 332: pg_query.FieldSelect.arg:type_name -> pg_query.Node + 66, // 333: pg_query.FieldStore.xpr:type_name -> pg_query.Node + 66, // 334: pg_query.FieldStore.arg:type_name -> pg_query.Node + 66, // 335: pg_query.FieldStore.newvals:type_name -> pg_query.Node + 66, // 336: pg_query.FieldStore.fieldnums:type_name -> pg_query.Node + 66, // 337: pg_query.RelabelType.xpr:type_name -> pg_query.Node + 66, // 338: pg_query.RelabelType.arg:type_name -> pg_query.Node + 37, // 339: pg_query.RelabelType.relabelformat:type_name -> pg_query.CoercionForm + 66, // 340: pg_query.CoerceViaIO.xpr:type_name -> pg_query.Node + 66, // 341: pg_query.CoerceViaIO.arg:type_name -> pg_query.Node + 37, // 342: pg_query.CoerceViaIO.coerceformat:type_name -> pg_query.CoercionForm + 66, // 343: pg_query.ArrayCoerceExpr.xpr:type_name -> pg_query.Node + 66, // 344: pg_query.ArrayCoerceExpr.arg:type_name -> pg_query.Node + 66, // 345: pg_query.ArrayCoerceExpr.elemexpr:type_name -> pg_query.Node + 37, // 346: pg_query.ArrayCoerceExpr.coerceformat:type_name -> pg_query.CoercionForm + 66, // 347: pg_query.ConvertRowtypeExpr.xpr:type_name -> pg_query.Node + 66, // 348: pg_query.ConvertRowtypeExpr.arg:type_name -> pg_query.Node + 37, // 349: pg_query.ConvertRowtypeExpr.convertformat:type_name -> pg_query.CoercionForm + 66, // 350: pg_query.CollateExpr.xpr:type_name -> pg_query.Node + 66, // 351: pg_query.CollateExpr.arg:type_name -> pg_query.Node + 66, // 352: pg_query.CaseExpr.xpr:type_name -> pg_query.Node + 66, // 353: pg_query.CaseExpr.arg:type_name -> pg_query.Node + 66, // 354: pg_query.CaseExpr.args:type_name -> pg_query.Node + 66, // 355: pg_query.CaseExpr.defresult:type_name -> pg_query.Node + 66, // 356: pg_query.CaseWhen.xpr:type_name -> pg_query.Node + 66, // 357: pg_query.CaseWhen.expr:type_name -> pg_query.Node + 66, // 358: pg_query.CaseWhen.result:type_name -> pg_query.Node + 66, // 359: pg_query.CaseTestExpr.xpr:type_name -> pg_query.Node + 66, // 360: pg_query.ArrayExpr.xpr:type_name -> pg_query.Node + 66, // 361: pg_query.ArrayExpr.elements:type_name -> pg_query.Node + 66, // 362: pg_query.RowExpr.xpr:type_name -> pg_query.Node + 66, // 363: pg_query.RowExpr.args:type_name -> pg_query.Node + 37, // 364: pg_query.RowExpr.row_format:type_name -> pg_query.CoercionForm + 66, // 365: pg_query.RowExpr.colnames:type_name -> pg_query.Node + 66, // 366: pg_query.RowCompareExpr.xpr:type_name -> pg_query.Node + 40, // 367: pg_query.RowCompareExpr.rctype:type_name -> pg_query.RowCompareType + 66, // 368: pg_query.RowCompareExpr.opnos:type_name -> pg_query.Node + 66, // 369: pg_query.RowCompareExpr.opfamilies:type_name -> pg_query.Node + 66, // 370: pg_query.RowCompareExpr.inputcollids:type_name -> pg_query.Node + 66, // 371: pg_query.RowCompareExpr.largs:type_name -> pg_query.Node + 66, // 372: pg_query.RowCompareExpr.rargs:type_name -> pg_query.Node + 66, // 373: pg_query.CoalesceExpr.xpr:type_name -> pg_query.Node + 66, // 374: pg_query.CoalesceExpr.args:type_name -> pg_query.Node + 66, // 375: pg_query.MinMaxExpr.xpr:type_name -> pg_query.Node + 41, // 376: pg_query.MinMaxExpr.op:type_name -> pg_query.MinMaxOp + 66, // 377: pg_query.MinMaxExpr.args:type_name -> pg_query.Node + 66, // 378: pg_query.SQLValueFunction.xpr:type_name -> pg_query.Node + 42, // 379: pg_query.SQLValueFunction.op:type_name -> pg_query.SQLValueFunctionOp + 66, // 380: pg_query.XmlExpr.xpr:type_name -> pg_query.Node + 43, // 381: pg_query.XmlExpr.op:type_name -> pg_query.XmlExprOp + 66, // 382: pg_query.XmlExpr.named_args:type_name -> pg_query.Node + 66, // 383: pg_query.XmlExpr.arg_names:type_name -> pg_query.Node + 66, // 384: pg_query.XmlExpr.args:type_name -> pg_query.Node + 44, // 385: pg_query.XmlExpr.xmloption:type_name -> pg_query.XmlOptionType + 46, // 386: pg_query.JsonFormat.format_type:type_name -> pg_query.JsonFormatType + 45, // 387: pg_query.JsonFormat.encoding:type_name -> pg_query.JsonEncoding + 113, // 388: pg_query.JsonReturning.format:type_name -> pg_query.JsonFormat + 66, // 389: pg_query.JsonValueExpr.raw_expr:type_name -> pg_query.Node + 66, // 390: pg_query.JsonValueExpr.formatted_expr:type_name -> pg_query.Node + 113, // 391: pg_query.JsonValueExpr.format:type_name -> pg_query.JsonFormat + 66, // 392: pg_query.JsonConstructorExpr.xpr:type_name -> pg_query.Node + 47, // 393: pg_query.JsonConstructorExpr.type:type_name -> pg_query.JsonConstructorType + 66, // 394: pg_query.JsonConstructorExpr.args:type_name -> pg_query.Node + 66, // 395: pg_query.JsonConstructorExpr.func:type_name -> pg_query.Node + 66, // 396: pg_query.JsonConstructorExpr.coercion:type_name -> pg_query.Node + 114, // 397: pg_query.JsonConstructorExpr.returning:type_name -> pg_query.JsonReturning + 66, // 398: pg_query.JsonIsPredicate.expr:type_name -> pg_query.Node + 113, // 399: pg_query.JsonIsPredicate.format:type_name -> pg_query.JsonFormat + 48, // 400: pg_query.JsonIsPredicate.item_type:type_name -> pg_query.JsonValueType + 66, // 401: pg_query.NullTest.xpr:type_name -> pg_query.Node + 66, // 402: pg_query.NullTest.arg:type_name -> pg_query.Node + 49, // 403: pg_query.NullTest.nulltesttype:type_name -> pg_query.NullTestType + 66, // 404: pg_query.BooleanTest.xpr:type_name -> pg_query.Node + 66, // 405: pg_query.BooleanTest.arg:type_name -> pg_query.Node + 50, // 406: pg_query.BooleanTest.booltesttype:type_name -> pg_query.BoolTestType + 66, // 407: pg_query.CoerceToDomain.xpr:type_name -> pg_query.Node + 66, // 408: pg_query.CoerceToDomain.arg:type_name -> pg_query.Node + 37, // 409: pg_query.CoerceToDomain.coercionformat:type_name -> pg_query.CoercionForm + 66, // 410: pg_query.CoerceToDomainValue.xpr:type_name -> pg_query.Node + 66, // 411: pg_query.SetToDefault.xpr:type_name -> pg_query.Node + 66, // 412: pg_query.CurrentOfExpr.xpr:type_name -> pg_query.Node + 66, // 413: pg_query.NextValueExpr.xpr:type_name -> pg_query.Node + 66, // 414: pg_query.InferenceElem.xpr:type_name -> pg_query.Node + 66, // 415: pg_query.InferenceElem.expr:type_name -> pg_query.Node + 66, // 416: pg_query.TargetEntry.xpr:type_name -> pg_query.Node + 66, // 417: pg_query.TargetEntry.expr:type_name -> pg_query.Node + 52, // 418: pg_query.JoinExpr.jointype:type_name -> pg_query.JoinType + 66, // 419: pg_query.JoinExpr.larg:type_name -> pg_query.Node + 66, // 420: pg_query.JoinExpr.rarg:type_name -> pg_query.Node + 66, // 421: pg_query.JoinExpr.using_clause:type_name -> pg_query.Node + 76, // 422: pg_query.JoinExpr.join_using_alias:type_name -> pg_query.Alias + 66, // 423: pg_query.JoinExpr.quals:type_name -> pg_query.Node + 76, // 424: pg_query.JoinExpr.alias:type_name -> pg_query.Alias + 66, // 425: pg_query.FromExpr.fromlist:type_name -> pg_query.Node + 66, // 426: pg_query.FromExpr.quals:type_name -> pg_query.Node + 57, // 427: pg_query.OnConflictExpr.action:type_name -> pg_query.OnConflictAction + 66, // 428: pg_query.OnConflictExpr.arbiter_elems:type_name -> pg_query.Node + 66, // 429: pg_query.OnConflictExpr.arbiter_where:type_name -> pg_query.Node + 66, // 430: pg_query.OnConflictExpr.on_conflict_set:type_name -> pg_query.Node + 66, // 431: pg_query.OnConflictExpr.on_conflict_where:type_name -> pg_query.Node + 66, // 432: pg_query.OnConflictExpr.excl_rel_tlist:type_name -> pg_query.Node + 51, // 433: pg_query.Query.command_type:type_name -> pg_query.CmdType + 1, // 434: pg_query.Query.query_source:type_name -> pg_query.QuerySource + 66, // 435: pg_query.Query.utility_stmt:type_name -> pg_query.Node + 66, // 436: pg_query.Query.cte_list:type_name -> pg_query.Node + 66, // 437: pg_query.Query.rtable:type_name -> pg_query.Node + 66, // 438: pg_query.Query.rteperminfos:type_name -> pg_query.Node + 129, // 439: pg_query.Query.jointree:type_name -> pg_query.FromExpr + 66, // 440: pg_query.Query.merge_action_list:type_name -> pg_query.Node + 66, // 441: pg_query.Query.target_list:type_name -> pg_query.Node + 0, // 442: pg_query.Query.override:type_name -> pg_query.OverridingKind + 130, // 443: pg_query.Query.on_conflict:type_name -> pg_query.OnConflictExpr + 66, // 444: pg_query.Query.returning_list:type_name -> pg_query.Node + 66, // 445: pg_query.Query.group_clause:type_name -> pg_query.Node + 66, // 446: pg_query.Query.grouping_sets:type_name -> pg_query.Node + 66, // 447: pg_query.Query.having_qual:type_name -> pg_query.Node + 66, // 448: pg_query.Query.window_clause:type_name -> pg_query.Node + 66, // 449: pg_query.Query.distinct_clause:type_name -> pg_query.Node + 66, // 450: pg_query.Query.sort_clause:type_name -> pg_query.Node + 66, // 451: pg_query.Query.limit_offset:type_name -> pg_query.Node + 66, // 452: pg_query.Query.limit_count:type_name -> pg_query.Node + 58, // 453: pg_query.Query.limit_option:type_name -> pg_query.LimitOption + 66, // 454: pg_query.Query.row_marks:type_name -> pg_query.Node + 66, // 455: pg_query.Query.set_operations:type_name -> pg_query.Node + 66, // 456: pg_query.Query.constraint_deps:type_name -> pg_query.Node + 66, // 457: pg_query.Query.with_check_options:type_name -> pg_query.Node + 66, // 458: pg_query.TypeName.names:type_name -> pg_query.Node + 66, // 459: pg_query.TypeName.typmods:type_name -> pg_query.Node + 66, // 460: pg_query.TypeName.array_bounds:type_name -> pg_query.Node + 66, // 461: pg_query.ColumnRef.fields:type_name -> pg_query.Node + 5, // 462: pg_query.A_Expr.kind:type_name -> pg_query.A_Expr_Kind + 66, // 463: pg_query.A_Expr.name:type_name -> pg_query.Node + 66, // 464: pg_query.A_Expr.lexpr:type_name -> pg_query.Node + 66, // 465: pg_query.A_Expr.rexpr:type_name -> pg_query.Node + 66, // 466: pg_query.TypeCast.arg:type_name -> pg_query.Node + 132, // 467: pg_query.TypeCast.type_name:type_name -> pg_query.TypeName + 66, // 468: pg_query.CollateClause.arg:type_name -> pg_query.Node + 66, // 469: pg_query.CollateClause.collname:type_name -> pg_query.Node + 6, // 470: pg_query.RoleSpec.roletype:type_name -> pg_query.RoleSpecType + 66, // 471: pg_query.FuncCall.funcname:type_name -> pg_query.Node + 66, // 472: pg_query.FuncCall.args:type_name -> pg_query.Node + 66, // 473: pg_query.FuncCall.agg_order:type_name -> pg_query.Node + 66, // 474: pg_query.FuncCall.agg_filter:type_name -> pg_query.Node + 147, // 475: pg_query.FuncCall.over:type_name -> pg_query.WindowDef + 37, // 476: pg_query.FuncCall.funcformat:type_name -> pg_query.CoercionForm + 66, // 477: pg_query.A_Indices.lidx:type_name -> pg_query.Node + 66, // 478: pg_query.A_Indices.uidx:type_name -> pg_query.Node + 66, // 479: pg_query.A_Indirection.arg:type_name -> pg_query.Node + 66, // 480: pg_query.A_Indirection.indirection:type_name -> pg_query.Node + 66, // 481: pg_query.A_ArrayExpr.elements:type_name -> pg_query.Node + 66, // 482: pg_query.ResTarget.indirection:type_name -> pg_query.Node + 66, // 483: pg_query.ResTarget.val:type_name -> pg_query.Node + 66, // 484: pg_query.MultiAssignRef.source:type_name -> pg_query.Node + 66, // 485: pg_query.SortBy.node:type_name -> pg_query.Node + 2, // 486: pg_query.SortBy.sortby_dir:type_name -> pg_query.SortByDir + 3, // 487: pg_query.SortBy.sortby_nulls:type_name -> pg_query.SortByNulls + 66, // 488: pg_query.SortBy.use_op:type_name -> pg_query.Node + 66, // 489: pg_query.WindowDef.partition_clause:type_name -> pg_query.Node + 66, // 490: pg_query.WindowDef.order_clause:type_name -> pg_query.Node + 66, // 491: pg_query.WindowDef.start_offset:type_name -> pg_query.Node + 66, // 492: pg_query.WindowDef.end_offset:type_name -> pg_query.Node + 66, // 493: pg_query.RangeSubselect.subquery:type_name -> pg_query.Node + 76, // 494: pg_query.RangeSubselect.alias:type_name -> pg_query.Alias + 66, // 495: pg_query.RangeFunction.functions:type_name -> pg_query.Node + 76, // 496: pg_query.RangeFunction.alias:type_name -> pg_query.Alias + 66, // 497: pg_query.RangeFunction.coldeflist:type_name -> pg_query.Node + 66, // 498: pg_query.RangeTableFunc.docexpr:type_name -> pg_query.Node + 66, // 499: pg_query.RangeTableFunc.rowexpr:type_name -> pg_query.Node + 66, // 500: pg_query.RangeTableFunc.namespaces:type_name -> pg_query.Node + 66, // 501: pg_query.RangeTableFunc.columns:type_name -> pg_query.Node + 76, // 502: pg_query.RangeTableFunc.alias:type_name -> pg_query.Alias + 132, // 503: pg_query.RangeTableFuncCol.type_name:type_name -> pg_query.TypeName + 66, // 504: pg_query.RangeTableFuncCol.colexpr:type_name -> pg_query.Node + 66, // 505: pg_query.RangeTableFuncCol.coldefexpr:type_name -> pg_query.Node + 66, // 506: pg_query.RangeTableSample.relation:type_name -> pg_query.Node + 66, // 507: pg_query.RangeTableSample.method:type_name -> pg_query.Node + 66, // 508: pg_query.RangeTableSample.args:type_name -> pg_query.Node + 66, // 509: pg_query.RangeTableSample.repeatable:type_name -> pg_query.Node + 132, // 510: pg_query.ColumnDef.type_name:type_name -> pg_query.TypeName + 66, // 511: pg_query.ColumnDef.raw_default:type_name -> pg_query.Node + 66, // 512: pg_query.ColumnDef.cooked_default:type_name -> pg_query.Node + 77, // 513: pg_query.ColumnDef.identity_sequence:type_name -> pg_query.RangeVar + 137, // 514: pg_query.ColumnDef.coll_clause:type_name -> pg_query.CollateClause + 66, // 515: pg_query.ColumnDef.constraints:type_name -> pg_query.Node + 66, // 516: pg_query.ColumnDef.fdwoptions:type_name -> pg_query.Node + 77, // 517: pg_query.TableLikeClause.relation:type_name -> pg_query.RangeVar + 66, // 518: pg_query.IndexElem.expr:type_name -> pg_query.Node + 66, // 519: pg_query.IndexElem.collation:type_name -> pg_query.Node + 66, // 520: pg_query.IndexElem.opclass:type_name -> pg_query.Node + 66, // 521: pg_query.IndexElem.opclassopts:type_name -> pg_query.Node + 2, // 522: pg_query.IndexElem.ordering:type_name -> pg_query.SortByDir + 3, // 523: pg_query.IndexElem.nulls_ordering:type_name -> pg_query.SortByNulls + 66, // 524: pg_query.DefElem.arg:type_name -> pg_query.Node + 8, // 525: pg_query.DefElem.defaction:type_name -> pg_query.DefElemAction + 66, // 526: pg_query.LockingClause.locked_rels:type_name -> pg_query.Node + 59, // 527: pg_query.LockingClause.strength:type_name -> pg_query.LockClauseStrength + 60, // 528: pg_query.LockingClause.wait_policy:type_name -> pg_query.LockWaitPolicy + 44, // 529: pg_query.XmlSerialize.xmloption:type_name -> pg_query.XmlOptionType + 66, // 530: pg_query.XmlSerialize.expr:type_name -> pg_query.Node + 132, // 531: pg_query.XmlSerialize.type_name:type_name -> pg_query.TypeName + 66, // 532: pg_query.PartitionElem.expr:type_name -> pg_query.Node + 66, // 533: pg_query.PartitionElem.collation:type_name -> pg_query.Node + 66, // 534: pg_query.PartitionElem.opclass:type_name -> pg_query.Node + 9, // 535: pg_query.PartitionSpec.strategy:type_name -> pg_query.PartitionStrategy + 66, // 536: pg_query.PartitionSpec.part_params:type_name -> pg_query.Node + 66, // 537: pg_query.PartitionBoundSpec.listdatums:type_name -> pg_query.Node + 66, // 538: pg_query.PartitionBoundSpec.lowerdatums:type_name -> pg_query.Node + 66, // 539: pg_query.PartitionBoundSpec.upperdatums:type_name -> pg_query.Node + 10, // 540: pg_query.PartitionRangeDatum.kind:type_name -> pg_query.PartitionRangeDatumKind + 66, // 541: pg_query.PartitionRangeDatum.value:type_name -> pg_query.Node + 77, // 542: pg_query.PartitionCmd.name:type_name -> pg_query.RangeVar + 161, // 543: pg_query.PartitionCmd.bound:type_name -> pg_query.PartitionBoundSpec + 11, // 544: pg_query.RangeTblEntry.rtekind:type_name -> pg_query.RTEKind + 167, // 545: pg_query.RangeTblEntry.tablesample:type_name -> pg_query.TableSampleClause + 131, // 546: pg_query.RangeTblEntry.subquery:type_name -> pg_query.Query + 52, // 547: pg_query.RangeTblEntry.jointype:type_name -> pg_query.JoinType + 66, // 548: pg_query.RangeTblEntry.joinaliasvars:type_name -> pg_query.Node + 66, // 549: pg_query.RangeTblEntry.joinleftcols:type_name -> pg_query.Node + 66, // 550: pg_query.RangeTblEntry.joinrightcols:type_name -> pg_query.Node + 76, // 551: pg_query.RangeTblEntry.join_using_alias:type_name -> pg_query.Alias + 66, // 552: pg_query.RangeTblEntry.functions:type_name -> pg_query.Node + 78, // 553: pg_query.RangeTblEntry.tablefunc:type_name -> pg_query.TableFunc + 66, // 554: pg_query.RangeTblEntry.values_lists:type_name -> pg_query.Node + 66, // 555: pg_query.RangeTblEntry.coltypes:type_name -> pg_query.Node + 66, // 556: pg_query.RangeTblEntry.coltypmods:type_name -> pg_query.Node + 66, // 557: pg_query.RangeTblEntry.colcollations:type_name -> pg_query.Node + 76, // 558: pg_query.RangeTblEntry.alias:type_name -> pg_query.Alias + 76, // 559: pg_query.RangeTblEntry.eref:type_name -> pg_query.Alias + 66, // 560: pg_query.RangeTblEntry.security_quals:type_name -> pg_query.Node + 66, // 561: pg_query.RangeTblFunction.funcexpr:type_name -> pg_query.Node + 66, // 562: pg_query.RangeTblFunction.funccolnames:type_name -> pg_query.Node + 66, // 563: pg_query.RangeTblFunction.funccoltypes:type_name -> pg_query.Node + 66, // 564: pg_query.RangeTblFunction.funccoltypmods:type_name -> pg_query.Node + 66, // 565: pg_query.RangeTblFunction.funccolcollations:type_name -> pg_query.Node + 66, // 566: pg_query.TableSampleClause.args:type_name -> pg_query.Node + 66, // 567: pg_query.TableSampleClause.repeatable:type_name -> pg_query.Node + 12, // 568: pg_query.WithCheckOption.kind:type_name -> pg_query.WCOKind + 66, // 569: pg_query.WithCheckOption.qual:type_name -> pg_query.Node + 13, // 570: pg_query.GroupingSet.kind:type_name -> pg_query.GroupingSetKind + 66, // 571: pg_query.GroupingSet.content:type_name -> pg_query.Node + 66, // 572: pg_query.WindowClause.partition_clause:type_name -> pg_query.Node + 66, // 573: pg_query.WindowClause.order_clause:type_name -> pg_query.Node + 66, // 574: pg_query.WindowClause.start_offset:type_name -> pg_query.Node + 66, // 575: pg_query.WindowClause.end_offset:type_name -> pg_query.Node + 66, // 576: pg_query.WindowClause.run_condition:type_name -> pg_query.Node + 59, // 577: pg_query.RowMarkClause.strength:type_name -> pg_query.LockClauseStrength + 60, // 578: pg_query.RowMarkClause.wait_policy:type_name -> pg_query.LockWaitPolicy + 66, // 579: pg_query.WithClause.ctes:type_name -> pg_query.Node + 66, // 580: pg_query.InferClause.index_elems:type_name -> pg_query.Node + 66, // 581: pg_query.InferClause.where_clause:type_name -> pg_query.Node + 57, // 582: pg_query.OnConflictClause.action:type_name -> pg_query.OnConflictAction + 174, // 583: pg_query.OnConflictClause.infer:type_name -> pg_query.InferClause + 66, // 584: pg_query.OnConflictClause.target_list:type_name -> pg_query.Node + 66, // 585: pg_query.OnConflictClause.where_clause:type_name -> pg_query.Node + 66, // 586: pg_query.CTESearchClause.search_col_list:type_name -> pg_query.Node + 66, // 587: pg_query.CTECycleClause.cycle_col_list:type_name -> pg_query.Node + 66, // 588: pg_query.CTECycleClause.cycle_mark_value:type_name -> pg_query.Node + 66, // 589: pg_query.CTECycleClause.cycle_mark_default:type_name -> pg_query.Node + 66, // 590: pg_query.CommonTableExpr.aliascolnames:type_name -> pg_query.Node + 14, // 591: pg_query.CommonTableExpr.ctematerialized:type_name -> pg_query.CTEMaterialize + 66, // 592: pg_query.CommonTableExpr.ctequery:type_name -> pg_query.Node + 176, // 593: pg_query.CommonTableExpr.search_clause:type_name -> pg_query.CTESearchClause + 177, // 594: pg_query.CommonTableExpr.cycle_clause:type_name -> pg_query.CTECycleClause + 66, // 595: pg_query.CommonTableExpr.ctecolnames:type_name -> pg_query.Node + 66, // 596: pg_query.CommonTableExpr.ctecoltypes:type_name -> pg_query.Node + 66, // 597: pg_query.CommonTableExpr.ctecoltypmods:type_name -> pg_query.Node + 66, // 598: pg_query.CommonTableExpr.ctecolcollations:type_name -> pg_query.Node + 51, // 599: pg_query.MergeWhenClause.command_type:type_name -> pg_query.CmdType + 0, // 600: pg_query.MergeWhenClause.override:type_name -> pg_query.OverridingKind + 66, // 601: pg_query.MergeWhenClause.condition:type_name -> pg_query.Node + 66, // 602: pg_query.MergeWhenClause.target_list:type_name -> pg_query.Node + 66, // 603: pg_query.MergeWhenClause.values:type_name -> pg_query.Node + 51, // 604: pg_query.MergeAction.command_type:type_name -> pg_query.CmdType + 0, // 605: pg_query.MergeAction.override:type_name -> pg_query.OverridingKind + 66, // 606: pg_query.MergeAction.qual:type_name -> pg_query.Node + 66, // 607: pg_query.MergeAction.target_list:type_name -> pg_query.Node + 66, // 608: pg_query.MergeAction.update_colnos:type_name -> pg_query.Node + 132, // 609: pg_query.JsonOutput.type_name:type_name -> pg_query.TypeName + 114, // 610: pg_query.JsonOutput.returning:type_name -> pg_query.JsonReturning + 66, // 611: pg_query.JsonKeyValue.key:type_name -> pg_query.Node + 115, // 612: pg_query.JsonKeyValue.value:type_name -> pg_query.JsonValueExpr + 66, // 613: pg_query.JsonObjectConstructor.exprs:type_name -> pg_query.Node + 182, // 614: pg_query.JsonObjectConstructor.output:type_name -> pg_query.JsonOutput + 66, // 615: pg_query.JsonArrayConstructor.exprs:type_name -> pg_query.Node + 182, // 616: pg_query.JsonArrayConstructor.output:type_name -> pg_query.JsonOutput + 66, // 617: pg_query.JsonArrayQueryConstructor.query:type_name -> pg_query.Node + 182, // 618: pg_query.JsonArrayQueryConstructor.output:type_name -> pg_query.JsonOutput + 113, // 619: pg_query.JsonArrayQueryConstructor.format:type_name -> pg_query.JsonFormat + 182, // 620: pg_query.JsonAggConstructor.output:type_name -> pg_query.JsonOutput + 66, // 621: pg_query.JsonAggConstructor.agg_filter:type_name -> pg_query.Node + 66, // 622: pg_query.JsonAggConstructor.agg_order:type_name -> pg_query.Node + 147, // 623: pg_query.JsonAggConstructor.over:type_name -> pg_query.WindowDef + 187, // 624: pg_query.JsonObjectAgg.constructor:type_name -> pg_query.JsonAggConstructor + 183, // 625: pg_query.JsonObjectAgg.arg:type_name -> pg_query.JsonKeyValue + 187, // 626: pg_query.JsonArrayAgg.constructor:type_name -> pg_query.JsonAggConstructor + 115, // 627: pg_query.JsonArrayAgg.arg:type_name -> pg_query.JsonValueExpr + 66, // 628: pg_query.RawStmt.stmt:type_name -> pg_query.Node + 77, // 629: pg_query.InsertStmt.relation:type_name -> pg_query.RangeVar + 66, // 630: pg_query.InsertStmt.cols:type_name -> pg_query.Node + 66, // 631: pg_query.InsertStmt.select_stmt:type_name -> pg_query.Node + 175, // 632: pg_query.InsertStmt.on_conflict_clause:type_name -> pg_query.OnConflictClause + 66, // 633: pg_query.InsertStmt.returning_list:type_name -> pg_query.Node + 173, // 634: pg_query.InsertStmt.with_clause:type_name -> pg_query.WithClause + 0, // 635: pg_query.InsertStmt.override:type_name -> pg_query.OverridingKind + 77, // 636: pg_query.DeleteStmt.relation:type_name -> pg_query.RangeVar + 66, // 637: pg_query.DeleteStmt.using_clause:type_name -> pg_query.Node + 66, // 638: pg_query.DeleteStmt.where_clause:type_name -> pg_query.Node + 66, // 639: pg_query.DeleteStmt.returning_list:type_name -> pg_query.Node + 173, // 640: pg_query.DeleteStmt.with_clause:type_name -> pg_query.WithClause + 77, // 641: pg_query.UpdateStmt.relation:type_name -> pg_query.RangeVar + 66, // 642: pg_query.UpdateStmt.target_list:type_name -> pg_query.Node + 66, // 643: pg_query.UpdateStmt.where_clause:type_name -> pg_query.Node + 66, // 644: pg_query.UpdateStmt.from_clause:type_name -> pg_query.Node + 66, // 645: pg_query.UpdateStmt.returning_list:type_name -> pg_query.Node + 173, // 646: pg_query.UpdateStmt.with_clause:type_name -> pg_query.WithClause + 77, // 647: pg_query.MergeStmt.relation:type_name -> pg_query.RangeVar + 66, // 648: pg_query.MergeStmt.source_relation:type_name -> pg_query.Node + 66, // 649: pg_query.MergeStmt.join_condition:type_name -> pg_query.Node + 66, // 650: pg_query.MergeStmt.merge_when_clauses:type_name -> pg_query.Node + 173, // 651: pg_query.MergeStmt.with_clause:type_name -> pg_query.WithClause + 66, // 652: pg_query.SelectStmt.distinct_clause:type_name -> pg_query.Node + 79, // 653: pg_query.SelectStmt.into_clause:type_name -> pg_query.IntoClause + 66, // 654: pg_query.SelectStmt.target_list:type_name -> pg_query.Node + 66, // 655: pg_query.SelectStmt.from_clause:type_name -> pg_query.Node + 66, // 656: pg_query.SelectStmt.where_clause:type_name -> pg_query.Node + 66, // 657: pg_query.SelectStmt.group_clause:type_name -> pg_query.Node + 66, // 658: pg_query.SelectStmt.having_clause:type_name -> pg_query.Node + 66, // 659: pg_query.SelectStmt.window_clause:type_name -> pg_query.Node + 66, // 660: pg_query.SelectStmt.values_lists:type_name -> pg_query.Node + 66, // 661: pg_query.SelectStmt.sort_clause:type_name -> pg_query.Node + 66, // 662: pg_query.SelectStmt.limit_offset:type_name -> pg_query.Node + 66, // 663: pg_query.SelectStmt.limit_count:type_name -> pg_query.Node + 58, // 664: pg_query.SelectStmt.limit_option:type_name -> pg_query.LimitOption + 66, // 665: pg_query.SelectStmt.locking_clause:type_name -> pg_query.Node + 173, // 666: pg_query.SelectStmt.with_clause:type_name -> pg_query.WithClause + 15, // 667: pg_query.SelectStmt.op:type_name -> pg_query.SetOperation + 195, // 668: pg_query.SelectStmt.larg:type_name -> pg_query.SelectStmt + 195, // 669: pg_query.SelectStmt.rarg:type_name -> pg_query.SelectStmt + 15, // 670: pg_query.SetOperationStmt.op:type_name -> pg_query.SetOperation + 66, // 671: pg_query.SetOperationStmt.larg:type_name -> pg_query.Node + 66, // 672: pg_query.SetOperationStmt.rarg:type_name -> pg_query.Node + 66, // 673: pg_query.SetOperationStmt.col_types:type_name -> pg_query.Node + 66, // 674: pg_query.SetOperationStmt.col_typmods:type_name -> pg_query.Node + 66, // 675: pg_query.SetOperationStmt.col_collations:type_name -> pg_query.Node + 66, // 676: pg_query.SetOperationStmt.group_clauses:type_name -> pg_query.Node + 66, // 677: pg_query.ReturnStmt.returnval:type_name -> pg_query.Node + 66, // 678: pg_query.PLAssignStmt.indirection:type_name -> pg_query.Node + 195, // 679: pg_query.PLAssignStmt.val:type_name -> pg_query.SelectStmt + 138, // 680: pg_query.CreateSchemaStmt.authrole:type_name -> pg_query.RoleSpec + 66, // 681: pg_query.CreateSchemaStmt.schema_elts:type_name -> pg_query.Node + 77, // 682: pg_query.AlterTableStmt.relation:type_name -> pg_query.RangeVar + 66, // 683: pg_query.AlterTableStmt.cmds:type_name -> pg_query.Node + 16, // 684: pg_query.AlterTableStmt.objtype:type_name -> pg_query.ObjectType + 18, // 685: pg_query.AlterTableCmd.subtype:type_name -> pg_query.AlterTableType + 138, // 686: pg_query.AlterTableCmd.newowner:type_name -> pg_query.RoleSpec + 66, // 687: pg_query.AlterTableCmd.def:type_name -> pg_query.Node + 17, // 688: pg_query.AlterTableCmd.behavior:type_name -> pg_query.DropBehavior + 66, // 689: pg_query.AlterCollationStmt.collname:type_name -> pg_query.Node + 66, // 690: pg_query.AlterDomainStmt.type_name:type_name -> pg_query.Node + 66, // 691: pg_query.AlterDomainStmt.def:type_name -> pg_query.Node + 17, // 692: pg_query.AlterDomainStmt.behavior:type_name -> pg_query.DropBehavior + 19, // 693: pg_query.GrantStmt.targtype:type_name -> pg_query.GrantTargetType + 16, // 694: pg_query.GrantStmt.objtype:type_name -> pg_query.ObjectType + 66, // 695: pg_query.GrantStmt.objects:type_name -> pg_query.Node + 66, // 696: pg_query.GrantStmt.privileges:type_name -> pg_query.Node + 66, // 697: pg_query.GrantStmt.grantees:type_name -> pg_query.Node + 138, // 698: pg_query.GrantStmt.grantor:type_name -> pg_query.RoleSpec + 17, // 699: pg_query.GrantStmt.behavior:type_name -> pg_query.DropBehavior + 66, // 700: pg_query.ObjectWithArgs.objname:type_name -> pg_query.Node + 66, // 701: pg_query.ObjectWithArgs.objargs:type_name -> pg_query.Node + 66, // 702: pg_query.ObjectWithArgs.objfuncargs:type_name -> pg_query.Node + 66, // 703: pg_query.AccessPriv.cols:type_name -> pg_query.Node + 66, // 704: pg_query.GrantRoleStmt.granted_roles:type_name -> pg_query.Node + 66, // 705: pg_query.GrantRoleStmt.grantee_roles:type_name -> pg_query.Node + 66, // 706: pg_query.GrantRoleStmt.opt:type_name -> pg_query.Node + 138, // 707: pg_query.GrantRoleStmt.grantor:type_name -> pg_query.RoleSpec + 17, // 708: pg_query.GrantRoleStmt.behavior:type_name -> pg_query.DropBehavior + 66, // 709: pg_query.AlterDefaultPrivilegesStmt.options:type_name -> pg_query.Node + 205, // 710: pg_query.AlterDefaultPrivilegesStmt.action:type_name -> pg_query.GrantStmt + 77, // 711: pg_query.CopyStmt.relation:type_name -> pg_query.RangeVar + 66, // 712: pg_query.CopyStmt.query:type_name -> pg_query.Node + 66, // 713: pg_query.CopyStmt.attlist:type_name -> pg_query.Node + 66, // 714: pg_query.CopyStmt.options:type_name -> pg_query.Node + 66, // 715: pg_query.CopyStmt.where_clause:type_name -> pg_query.Node + 20, // 716: pg_query.VariableSetStmt.kind:type_name -> pg_query.VariableSetKind + 66, // 717: pg_query.VariableSetStmt.args:type_name -> pg_query.Node + 77, // 718: pg_query.CreateStmt.relation:type_name -> pg_query.RangeVar + 66, // 719: pg_query.CreateStmt.table_elts:type_name -> pg_query.Node + 66, // 720: pg_query.CreateStmt.inh_relations:type_name -> pg_query.Node + 161, // 721: pg_query.CreateStmt.partbound:type_name -> pg_query.PartitionBoundSpec + 160, // 722: pg_query.CreateStmt.partspec:type_name -> pg_query.PartitionSpec + 132, // 723: pg_query.CreateStmt.of_typename:type_name -> pg_query.TypeName + 66, // 724: pg_query.CreateStmt.constraints:type_name -> pg_query.Node + 66, // 725: pg_query.CreateStmt.options:type_name -> pg_query.Node + 34, // 726: pg_query.CreateStmt.oncommit:type_name -> pg_query.OnCommitAction + 21, // 727: pg_query.Constraint.contype:type_name -> pg_query.ConstrType + 66, // 728: pg_query.Constraint.raw_expr:type_name -> pg_query.Node + 66, // 729: pg_query.Constraint.keys:type_name -> pg_query.Node + 66, // 730: pg_query.Constraint.including:type_name -> pg_query.Node + 66, // 731: pg_query.Constraint.exclusions:type_name -> pg_query.Node + 66, // 732: pg_query.Constraint.options:type_name -> pg_query.Node + 66, // 733: pg_query.Constraint.where_clause:type_name -> pg_query.Node + 77, // 734: pg_query.Constraint.pktable:type_name -> pg_query.RangeVar + 66, // 735: pg_query.Constraint.fk_attrs:type_name -> pg_query.Node + 66, // 736: pg_query.Constraint.pk_attrs:type_name -> pg_query.Node + 66, // 737: pg_query.Constraint.fk_del_set_cols:type_name -> pg_query.Node + 66, // 738: pg_query.Constraint.old_conpfeqop:type_name -> pg_query.Node + 138, // 739: pg_query.CreateTableSpaceStmt.owner:type_name -> pg_query.RoleSpec + 66, // 740: pg_query.CreateTableSpaceStmt.options:type_name -> pg_query.Node + 66, // 741: pg_query.AlterTableSpaceOptionsStmt.options:type_name -> pg_query.Node + 16, // 742: pg_query.AlterTableMoveAllStmt.objtype:type_name -> pg_query.ObjectType + 66, // 743: pg_query.AlterTableMoveAllStmt.roles:type_name -> pg_query.Node + 66, // 744: pg_query.CreateExtensionStmt.options:type_name -> pg_query.Node + 66, // 745: pg_query.AlterExtensionStmt.options:type_name -> pg_query.Node + 16, // 746: pg_query.AlterExtensionContentsStmt.objtype:type_name -> pg_query.ObjectType + 66, // 747: pg_query.AlterExtensionContentsStmt.object:type_name -> pg_query.Node + 66, // 748: pg_query.CreateFdwStmt.func_options:type_name -> pg_query.Node + 66, // 749: pg_query.CreateFdwStmt.options:type_name -> pg_query.Node + 66, // 750: pg_query.AlterFdwStmt.func_options:type_name -> pg_query.Node + 66, // 751: pg_query.AlterFdwStmt.options:type_name -> pg_query.Node + 66, // 752: pg_query.CreateForeignServerStmt.options:type_name -> pg_query.Node + 66, // 753: pg_query.AlterForeignServerStmt.options:type_name -> pg_query.Node + 213, // 754: pg_query.CreateForeignTableStmt.base_stmt:type_name -> pg_query.CreateStmt + 66, // 755: pg_query.CreateForeignTableStmt.options:type_name -> pg_query.Node + 138, // 756: pg_query.CreateUserMappingStmt.user:type_name -> pg_query.RoleSpec + 66, // 757: pg_query.CreateUserMappingStmt.options:type_name -> pg_query.Node + 138, // 758: pg_query.AlterUserMappingStmt.user:type_name -> pg_query.RoleSpec + 66, // 759: pg_query.AlterUserMappingStmt.options:type_name -> pg_query.Node + 138, // 760: pg_query.DropUserMappingStmt.user:type_name -> pg_query.RoleSpec + 22, // 761: pg_query.ImportForeignSchemaStmt.list_type:type_name -> pg_query.ImportForeignSchemaType + 66, // 762: pg_query.ImportForeignSchemaStmt.table_list:type_name -> pg_query.Node + 66, // 763: pg_query.ImportForeignSchemaStmt.options:type_name -> pg_query.Node + 77, // 764: pg_query.CreatePolicyStmt.table:type_name -> pg_query.RangeVar + 66, // 765: pg_query.CreatePolicyStmt.roles:type_name -> pg_query.Node + 66, // 766: pg_query.CreatePolicyStmt.qual:type_name -> pg_query.Node + 66, // 767: pg_query.CreatePolicyStmt.with_check:type_name -> pg_query.Node + 77, // 768: pg_query.AlterPolicyStmt.table:type_name -> pg_query.RangeVar + 66, // 769: pg_query.AlterPolicyStmt.roles:type_name -> pg_query.Node + 66, // 770: pg_query.AlterPolicyStmt.qual:type_name -> pg_query.Node + 66, // 771: pg_query.AlterPolicyStmt.with_check:type_name -> pg_query.Node + 66, // 772: pg_query.CreateAmStmt.handler_name:type_name -> pg_query.Node + 77, // 773: pg_query.CreateTrigStmt.relation:type_name -> pg_query.RangeVar + 66, // 774: pg_query.CreateTrigStmt.funcname:type_name -> pg_query.Node + 66, // 775: pg_query.CreateTrigStmt.args:type_name -> pg_query.Node + 66, // 776: pg_query.CreateTrigStmt.columns:type_name -> pg_query.Node + 66, // 777: pg_query.CreateTrigStmt.when_clause:type_name -> pg_query.Node + 66, // 778: pg_query.CreateTrigStmt.transition_rels:type_name -> pg_query.Node + 77, // 779: pg_query.CreateTrigStmt.constrrel:type_name -> pg_query.RangeVar + 66, // 780: pg_query.CreateEventTrigStmt.whenclause:type_name -> pg_query.Node + 66, // 781: pg_query.CreateEventTrigStmt.funcname:type_name -> pg_query.Node + 66, // 782: pg_query.CreatePLangStmt.plhandler:type_name -> pg_query.Node + 66, // 783: pg_query.CreatePLangStmt.plinline:type_name -> pg_query.Node + 66, // 784: pg_query.CreatePLangStmt.plvalidator:type_name -> pg_query.Node + 23, // 785: pg_query.CreateRoleStmt.stmt_type:type_name -> pg_query.RoleStmtType + 66, // 786: pg_query.CreateRoleStmt.options:type_name -> pg_query.Node + 138, // 787: pg_query.AlterRoleStmt.role:type_name -> pg_query.RoleSpec + 66, // 788: pg_query.AlterRoleStmt.options:type_name -> pg_query.Node + 138, // 789: pg_query.AlterRoleSetStmt.role:type_name -> pg_query.RoleSpec + 211, // 790: pg_query.AlterRoleSetStmt.setstmt:type_name -> pg_query.VariableSetStmt + 66, // 791: pg_query.DropRoleStmt.roles:type_name -> pg_query.Node + 77, // 792: pg_query.CreateSeqStmt.sequence:type_name -> pg_query.RangeVar + 66, // 793: pg_query.CreateSeqStmt.options:type_name -> pg_query.Node + 77, // 794: pg_query.AlterSeqStmt.sequence:type_name -> pg_query.RangeVar + 66, // 795: pg_query.AlterSeqStmt.options:type_name -> pg_query.Node + 16, // 796: pg_query.DefineStmt.kind:type_name -> pg_query.ObjectType + 66, // 797: pg_query.DefineStmt.defnames:type_name -> pg_query.Node + 66, // 798: pg_query.DefineStmt.args:type_name -> pg_query.Node + 66, // 799: pg_query.DefineStmt.definition:type_name -> pg_query.Node + 66, // 800: pg_query.CreateDomainStmt.domainname:type_name -> pg_query.Node + 132, // 801: pg_query.CreateDomainStmt.type_name:type_name -> pg_query.TypeName + 137, // 802: pg_query.CreateDomainStmt.coll_clause:type_name -> pg_query.CollateClause + 66, // 803: pg_query.CreateDomainStmt.constraints:type_name -> pg_query.Node + 66, // 804: pg_query.CreateOpClassStmt.opclassname:type_name -> pg_query.Node + 66, // 805: pg_query.CreateOpClassStmt.opfamilyname:type_name -> pg_query.Node + 132, // 806: pg_query.CreateOpClassStmt.datatype:type_name -> pg_query.TypeName + 66, // 807: pg_query.CreateOpClassStmt.items:type_name -> pg_query.Node + 206, // 808: pg_query.CreateOpClassItem.name:type_name -> pg_query.ObjectWithArgs + 66, // 809: pg_query.CreateOpClassItem.order_family:type_name -> pg_query.Node + 66, // 810: pg_query.CreateOpClassItem.class_args:type_name -> pg_query.Node + 132, // 811: pg_query.CreateOpClassItem.storedtype:type_name -> pg_query.TypeName + 66, // 812: pg_query.CreateOpFamilyStmt.opfamilyname:type_name -> pg_query.Node + 66, // 813: pg_query.AlterOpFamilyStmt.opfamilyname:type_name -> pg_query.Node + 66, // 814: pg_query.AlterOpFamilyStmt.items:type_name -> pg_query.Node + 66, // 815: pg_query.DropStmt.objects:type_name -> pg_query.Node + 16, // 816: pg_query.DropStmt.remove_type:type_name -> pg_query.ObjectType + 17, // 817: pg_query.DropStmt.behavior:type_name -> pg_query.DropBehavior + 66, // 818: pg_query.TruncateStmt.relations:type_name -> pg_query.Node + 17, // 819: pg_query.TruncateStmt.behavior:type_name -> pg_query.DropBehavior + 16, // 820: pg_query.CommentStmt.objtype:type_name -> pg_query.ObjectType + 66, // 821: pg_query.CommentStmt.object:type_name -> pg_query.Node + 16, // 822: pg_query.SecLabelStmt.objtype:type_name -> pg_query.ObjectType + 66, // 823: pg_query.SecLabelStmt.object:type_name -> pg_query.Node + 66, // 824: pg_query.DeclareCursorStmt.query:type_name -> pg_query.Node + 24, // 825: pg_query.FetchStmt.direction:type_name -> pg_query.FetchDirection + 77, // 826: pg_query.IndexStmt.relation:type_name -> pg_query.RangeVar + 66, // 827: pg_query.IndexStmt.index_params:type_name -> pg_query.Node + 66, // 828: pg_query.IndexStmt.index_including_params:type_name -> pg_query.Node + 66, // 829: pg_query.IndexStmt.options:type_name -> pg_query.Node + 66, // 830: pg_query.IndexStmt.where_clause:type_name -> pg_query.Node + 66, // 831: pg_query.IndexStmt.exclude_op_names:type_name -> pg_query.Node + 66, // 832: pg_query.CreateStatsStmt.defnames:type_name -> pg_query.Node + 66, // 833: pg_query.CreateStatsStmt.stat_types:type_name -> pg_query.Node + 66, // 834: pg_query.CreateStatsStmt.exprs:type_name -> pg_query.Node + 66, // 835: pg_query.CreateStatsStmt.relations:type_name -> pg_query.Node + 66, // 836: pg_query.StatsElem.expr:type_name -> pg_query.Node + 66, // 837: pg_query.AlterStatsStmt.defnames:type_name -> pg_query.Node + 66, // 838: pg_query.CreateFunctionStmt.funcname:type_name -> pg_query.Node + 66, // 839: pg_query.CreateFunctionStmt.parameters:type_name -> pg_query.Node + 132, // 840: pg_query.CreateFunctionStmt.return_type:type_name -> pg_query.TypeName + 66, // 841: pg_query.CreateFunctionStmt.options:type_name -> pg_query.Node + 66, // 842: pg_query.CreateFunctionStmt.sql_body:type_name -> pg_query.Node + 132, // 843: pg_query.FunctionParameter.arg_type:type_name -> pg_query.TypeName + 25, // 844: pg_query.FunctionParameter.mode:type_name -> pg_query.FunctionParameterMode + 66, // 845: pg_query.FunctionParameter.defexpr:type_name -> pg_query.Node + 16, // 846: pg_query.AlterFunctionStmt.objtype:type_name -> pg_query.ObjectType + 206, // 847: pg_query.AlterFunctionStmt.func:type_name -> pg_query.ObjectWithArgs + 66, // 848: pg_query.AlterFunctionStmt.actions:type_name -> pg_query.Node + 66, // 849: pg_query.DoStmt.args:type_name -> pg_query.Node + 139, // 850: pg_query.CallStmt.funccall:type_name -> pg_query.FuncCall + 86, // 851: pg_query.CallStmt.funcexpr:type_name -> pg_query.FuncExpr + 66, // 852: pg_query.CallStmt.outargs:type_name -> pg_query.Node + 16, // 853: pg_query.RenameStmt.rename_type:type_name -> pg_query.ObjectType + 16, // 854: pg_query.RenameStmt.relation_type:type_name -> pg_query.ObjectType + 77, // 855: pg_query.RenameStmt.relation:type_name -> pg_query.RangeVar + 66, // 856: pg_query.RenameStmt.object:type_name -> pg_query.Node + 17, // 857: pg_query.RenameStmt.behavior:type_name -> pg_query.DropBehavior + 16, // 858: pg_query.AlterObjectDependsStmt.object_type:type_name -> pg_query.ObjectType + 77, // 859: pg_query.AlterObjectDependsStmt.relation:type_name -> pg_query.RangeVar + 66, // 860: pg_query.AlterObjectDependsStmt.object:type_name -> pg_query.Node + 70, // 861: pg_query.AlterObjectDependsStmt.extname:type_name -> pg_query.String + 16, // 862: pg_query.AlterObjectSchemaStmt.object_type:type_name -> pg_query.ObjectType + 77, // 863: pg_query.AlterObjectSchemaStmt.relation:type_name -> pg_query.RangeVar + 66, // 864: pg_query.AlterObjectSchemaStmt.object:type_name -> pg_query.Node + 16, // 865: pg_query.AlterOwnerStmt.object_type:type_name -> pg_query.ObjectType + 77, // 866: pg_query.AlterOwnerStmt.relation:type_name -> pg_query.RangeVar + 66, // 867: pg_query.AlterOwnerStmt.object:type_name -> pg_query.Node + 138, // 868: pg_query.AlterOwnerStmt.newowner:type_name -> pg_query.RoleSpec + 206, // 869: pg_query.AlterOperatorStmt.opername:type_name -> pg_query.ObjectWithArgs + 66, // 870: pg_query.AlterOperatorStmt.options:type_name -> pg_query.Node + 66, // 871: pg_query.AlterTypeStmt.type_name:type_name -> pg_query.Node + 66, // 872: pg_query.AlterTypeStmt.options:type_name -> pg_query.Node + 77, // 873: pg_query.RuleStmt.relation:type_name -> pg_query.RangeVar + 66, // 874: pg_query.RuleStmt.where_clause:type_name -> pg_query.Node + 51, // 875: pg_query.RuleStmt.event:type_name -> pg_query.CmdType + 66, // 876: pg_query.RuleStmt.actions:type_name -> pg_query.Node + 26, // 877: pg_query.TransactionStmt.kind:type_name -> pg_query.TransactionStmtKind + 66, // 878: pg_query.TransactionStmt.options:type_name -> pg_query.Node + 77, // 879: pg_query.CompositeTypeStmt.typevar:type_name -> pg_query.RangeVar + 66, // 880: pg_query.CompositeTypeStmt.coldeflist:type_name -> pg_query.Node + 66, // 881: pg_query.CreateEnumStmt.type_name:type_name -> pg_query.Node + 66, // 882: pg_query.CreateEnumStmt.vals:type_name -> pg_query.Node + 66, // 883: pg_query.CreateRangeStmt.type_name:type_name -> pg_query.Node + 66, // 884: pg_query.CreateRangeStmt.params:type_name -> pg_query.Node + 66, // 885: pg_query.AlterEnumStmt.type_name:type_name -> pg_query.Node + 77, // 886: pg_query.ViewStmt.view:type_name -> pg_query.RangeVar + 66, // 887: pg_query.ViewStmt.aliases:type_name -> pg_query.Node + 66, // 888: pg_query.ViewStmt.query:type_name -> pg_query.Node + 66, // 889: pg_query.ViewStmt.options:type_name -> pg_query.Node + 27, // 890: pg_query.ViewStmt.with_check_option:type_name -> pg_query.ViewCheckOption + 66, // 891: pg_query.CreatedbStmt.options:type_name -> pg_query.Node + 66, // 892: pg_query.AlterDatabaseStmt.options:type_name -> pg_query.Node + 211, // 893: pg_query.AlterDatabaseSetStmt.setstmt:type_name -> pg_query.VariableSetStmt + 66, // 894: pg_query.DropdbStmt.options:type_name -> pg_query.Node + 211, // 895: pg_query.AlterSystemStmt.setstmt:type_name -> pg_query.VariableSetStmt + 77, // 896: pg_query.ClusterStmt.relation:type_name -> pg_query.RangeVar + 66, // 897: pg_query.ClusterStmt.params:type_name -> pg_query.Node + 66, // 898: pg_query.VacuumStmt.options:type_name -> pg_query.Node + 66, // 899: pg_query.VacuumStmt.rels:type_name -> pg_query.Node + 77, // 900: pg_query.VacuumRelation.relation:type_name -> pg_query.RangeVar + 66, // 901: pg_query.VacuumRelation.va_cols:type_name -> pg_query.Node + 66, // 902: pg_query.ExplainStmt.query:type_name -> pg_query.Node + 66, // 903: pg_query.ExplainStmt.options:type_name -> pg_query.Node + 66, // 904: pg_query.CreateTableAsStmt.query:type_name -> pg_query.Node + 79, // 905: pg_query.CreateTableAsStmt.into:type_name -> pg_query.IntoClause + 16, // 906: pg_query.CreateTableAsStmt.objtype:type_name -> pg_query.ObjectType + 77, // 907: pg_query.RefreshMatViewStmt.relation:type_name -> pg_query.RangeVar + 28, // 908: pg_query.DiscardStmt.target:type_name -> pg_query.DiscardMode + 66, // 909: pg_query.LockStmt.relations:type_name -> pg_query.Node + 66, // 910: pg_query.ConstraintsSetStmt.constraints:type_name -> pg_query.Node + 29, // 911: pg_query.ReindexStmt.kind:type_name -> pg_query.ReindexObjectType + 77, // 912: pg_query.ReindexStmt.relation:type_name -> pg_query.RangeVar + 66, // 913: pg_query.ReindexStmt.params:type_name -> pg_query.Node + 66, // 914: pg_query.CreateConversionStmt.conversion_name:type_name -> pg_query.Node + 66, // 915: pg_query.CreateConversionStmt.func_name:type_name -> pg_query.Node + 132, // 916: pg_query.CreateCastStmt.sourcetype:type_name -> pg_query.TypeName + 132, // 917: pg_query.CreateCastStmt.targettype:type_name -> pg_query.TypeName + 206, // 918: pg_query.CreateCastStmt.func:type_name -> pg_query.ObjectWithArgs + 36, // 919: pg_query.CreateCastStmt.context:type_name -> pg_query.CoercionContext + 132, // 920: pg_query.CreateTransformStmt.type_name:type_name -> pg_query.TypeName + 206, // 921: pg_query.CreateTransformStmt.fromsql:type_name -> pg_query.ObjectWithArgs + 206, // 922: pg_query.CreateTransformStmt.tosql:type_name -> pg_query.ObjectWithArgs + 66, // 923: pg_query.PrepareStmt.argtypes:type_name -> pg_query.Node + 66, // 924: pg_query.PrepareStmt.query:type_name -> pg_query.Node + 66, // 925: pg_query.ExecuteStmt.params:type_name -> pg_query.Node + 66, // 926: pg_query.DropOwnedStmt.roles:type_name -> pg_query.Node + 17, // 927: pg_query.DropOwnedStmt.behavior:type_name -> pg_query.DropBehavior + 66, // 928: pg_query.ReassignOwnedStmt.roles:type_name -> pg_query.Node + 138, // 929: pg_query.ReassignOwnedStmt.newrole:type_name -> pg_query.RoleSpec + 66, // 930: pg_query.AlterTSDictionaryStmt.dictname:type_name -> pg_query.Node + 66, // 931: pg_query.AlterTSDictionaryStmt.options:type_name -> pg_query.Node + 30, // 932: pg_query.AlterTSConfigurationStmt.kind:type_name -> pg_query.AlterTSConfigType + 66, // 933: pg_query.AlterTSConfigurationStmt.cfgname:type_name -> pg_query.Node + 66, // 934: pg_query.AlterTSConfigurationStmt.tokentype:type_name -> pg_query.Node + 66, // 935: pg_query.AlterTSConfigurationStmt.dicts:type_name -> pg_query.Node + 77, // 936: pg_query.PublicationTable.relation:type_name -> pg_query.RangeVar + 66, // 937: pg_query.PublicationTable.where_clause:type_name -> pg_query.Node + 66, // 938: pg_query.PublicationTable.columns:type_name -> pg_query.Node + 31, // 939: pg_query.PublicationObjSpec.pubobjtype:type_name -> pg_query.PublicationObjSpecType + 312, // 940: pg_query.PublicationObjSpec.pubtable:type_name -> pg_query.PublicationTable + 66, // 941: pg_query.CreatePublicationStmt.options:type_name -> pg_query.Node + 66, // 942: pg_query.CreatePublicationStmt.pubobjects:type_name -> pg_query.Node + 66, // 943: pg_query.AlterPublicationStmt.options:type_name -> pg_query.Node + 66, // 944: pg_query.AlterPublicationStmt.pubobjects:type_name -> pg_query.Node + 32, // 945: pg_query.AlterPublicationStmt.action:type_name -> pg_query.AlterPublicationAction + 66, // 946: pg_query.CreateSubscriptionStmt.publication:type_name -> pg_query.Node + 66, // 947: pg_query.CreateSubscriptionStmt.options:type_name -> pg_query.Node + 33, // 948: pg_query.AlterSubscriptionStmt.kind:type_name -> pg_query.AlterSubscriptionType + 66, // 949: pg_query.AlterSubscriptionStmt.publication:type_name -> pg_query.Node + 66, // 950: pg_query.AlterSubscriptionStmt.options:type_name -> pg_query.Node + 17, // 951: pg_query.DropSubscriptionStmt.behavior:type_name -> pg_query.DropBehavior + 63, // 952: pg_query.ScanToken.token:type_name -> pg_query.Token + 62, // 953: pg_query.ScanToken.keyword_kind:type_name -> pg_query.KeywordKind + 954, // [954:954] is the sub-list for method output_type + 954, // [954:954] is the sub-list for method input_type + 954, // [954:954] is the sub-list for extension type_name + 954, // [954:954] is the sub-list for extension extendee + 0, // [0:954] is the sub-list for field type_name } func init() { file_pg_query_proto_init() } @@ -35060,7 +36833,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Var); i { + switch v := v.(*IntoClause); i { case 0: return &v.state case 1: @@ -35072,7 +36845,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Param); i { + switch v := v.(*Var); i { case 0: return &v.state case 1: @@ -35084,7 +36857,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Aggref); i { + switch v := v.(*Param); i { case 0: return &v.state case 1: @@ -35096,7 +36869,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupingFunc); i { + switch v := v.(*Aggref); i { case 0: return &v.state case 1: @@ -35108,7 +36881,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WindowFunc); i { + switch v := v.(*GroupingFunc); i { case 0: return &v.state case 1: @@ -35120,7 +36893,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubscriptingRef); i { + switch v := v.(*WindowFunc); i { case 0: return &v.state case 1: @@ -35132,7 +36905,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FuncExpr); i { + switch v := v.(*SubscriptingRef); i { case 0: return &v.state case 1: @@ -35144,7 +36917,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*NamedArgExpr); i { + switch v := v.(*FuncExpr); i { case 0: return &v.state case 1: @@ -35156,7 +36929,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OpExpr); i { + switch v := v.(*NamedArgExpr); i { case 0: return &v.state case 1: @@ -35168,7 +36941,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DistinctExpr); i { + switch v := v.(*OpExpr); i { case 0: return &v.state case 1: @@ -35180,7 +36953,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*NullIfExpr); i { + switch v := v.(*DistinctExpr); i { case 0: return &v.state case 1: @@ -35192,7 +36965,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ScalarArrayOpExpr); i { + switch v := v.(*NullIfExpr); i { case 0: return &v.state case 1: @@ -35204,7 +36977,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BoolExpr); i { + switch v := v.(*ScalarArrayOpExpr); i { case 0: return &v.state case 1: @@ -35216,7 +36989,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubLink); i { + switch v := v.(*BoolExpr); i { case 0: return &v.state case 1: @@ -35228,7 +37001,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SubPlan); i { + switch v := v.(*SubLink); i { case 0: return &v.state case 1: @@ -35240,7 +37013,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlternativeSubPlan); i { + switch v := v.(*SubPlan); i { case 0: return &v.state case 1: @@ -35252,7 +37025,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FieldSelect); i { + switch v := v.(*AlternativeSubPlan); i { case 0: return &v.state case 1: @@ -35264,7 +37037,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FieldStore); i { + switch v := v.(*FieldSelect); i { case 0: return &v.state case 1: @@ -35276,7 +37049,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RelabelType); i { + switch v := v.(*FieldStore); i { case 0: return &v.state case 1: @@ -35288,7 +37061,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CoerceViaIO); i { + switch v := v.(*RelabelType); i { case 0: return &v.state case 1: @@ -35300,7 +37073,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArrayCoerceExpr); i { + switch v := v.(*CoerceViaIO); i { case 0: return &v.state case 1: @@ -35312,7 +37085,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ConvertRowtypeExpr); i { + switch v := v.(*ArrayCoerceExpr); i { case 0: return &v.state case 1: @@ -35324,7 +37097,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CollateExpr); i { + switch v := v.(*ConvertRowtypeExpr); i { case 0: return &v.state case 1: @@ -35336,7 +37109,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CaseExpr); i { + switch v := v.(*CollateExpr); i { case 0: return &v.state case 1: @@ -35348,7 +37121,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CaseWhen); i { + switch v := v.(*CaseExpr); i { case 0: return &v.state case 1: @@ -35360,7 +37133,7 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CaseTestExpr); i { + switch v := v.(*CaseWhen); i { case 0: return &v.state case 1: @@ -35372,6 +37145,18 @@ func file_pg_query_proto_init() { } } file_pg_query_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CaseTestExpr); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArrayExpr); i { case 0: return &v.state @@ -35383,8 +37168,164 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RowExpr); i { + file_pg_query_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RowExpr); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RowCompareExpr); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CoalesceExpr); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MinMaxExpr); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SQLValueFunction); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XmlExpr); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonFormat); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonReturning); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonValueExpr); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonConstructorExpr); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonIsPredicate); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*NullTest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BooleanTest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pg_query_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CoerceToDomain); i { case 0: return &v.state case 1: @@ -35395,8 +37336,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RowCompareExpr); i { + file_pg_query_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CoerceToDomainValue); i { case 0: return &v.state case 1: @@ -35407,8 +37348,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CoalesceExpr); i { + file_pg_query_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SetToDefault); i { case 0: return &v.state case 1: @@ -35419,8 +37360,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MinMaxExpr); i { + file_pg_query_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CurrentOfExpr); i { case 0: return &v.state case 1: @@ -35431,8 +37372,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SQLValueFunction); i { + file_pg_query_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*NextValueExpr); i { case 0: return &v.state case 1: @@ -35443,8 +37384,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XmlExpr); i { + file_pg_query_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InferenceElem); i { case 0: return &v.state case 1: @@ -35455,8 +37396,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*NullTest); i { + file_pg_query_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TargetEntry); i { case 0: return &v.state case 1: @@ -35467,8 +37408,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BooleanTest); i { + file_pg_query_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RangeTblRef); i { case 0: return &v.state case 1: @@ -35479,8 +37420,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CoerceToDomain); i { + file_pg_query_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JoinExpr); i { case 0: return &v.state case 1: @@ -35491,8 +37432,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CoerceToDomainValue); i { + file_pg_query_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FromExpr); i { case 0: return &v.state case 1: @@ -35503,8 +37444,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetToDefault); i { + file_pg_query_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OnConflictExpr); i { case 0: return &v.state case 1: @@ -35515,8 +37456,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CurrentOfExpr); i { + file_pg_query_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Query); i { case 0: return &v.state case 1: @@ -35527,8 +37468,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*NextValueExpr); i { + file_pg_query_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TypeName); i { case 0: return &v.state case 1: @@ -35539,8 +37480,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InferenceElem); i { + file_pg_query_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ColumnRef); i { case 0: return &v.state case 1: @@ -35551,8 +37492,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TargetEntry); i { + file_pg_query_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ParamRef); i { case 0: return &v.state case 1: @@ -35563,8 +37504,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RangeTblRef); i { + file_pg_query_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*A_Expr); i { case 0: return &v.state case 1: @@ -35575,8 +37516,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*JoinExpr); i { + file_pg_query_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TypeCast); i { case 0: return &v.state case 1: @@ -35587,8 +37528,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FromExpr); i { + file_pg_query_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CollateClause); i { case 0: return &v.state case 1: @@ -35599,8 +37540,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OnConflictExpr); i { + file_pg_query_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RoleSpec); i { case 0: return &v.state case 1: @@ -35611,8 +37552,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IntoClause); i { + file_pg_query_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FuncCall); i { case 0: return &v.state case 1: @@ -35623,8 +37564,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MergeAction); i { + file_pg_query_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*A_Star); i { case 0: return &v.state case 1: @@ -35635,8 +37576,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RawStmt); i { + file_pg_query_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*A_Indices); i { case 0: return &v.state case 1: @@ -35647,8 +37588,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Query); i { + file_pg_query_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*A_Indirection); i { case 0: return &v.state case 1: @@ -35659,8 +37600,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InsertStmt); i { + file_pg_query_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*A_ArrayExpr); i { case 0: return &v.state case 1: @@ -35671,8 +37612,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteStmt); i { + file_pg_query_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ResTarget); i { case 0: return &v.state case 1: @@ -35683,8 +37624,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateStmt); i { + file_pg_query_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MultiAssignRef); i { case 0: return &v.state case 1: @@ -35695,8 +37636,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MergeStmt); i { + file_pg_query_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SortBy); i { case 0: return &v.state case 1: @@ -35707,8 +37648,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SelectStmt); i { + file_pg_query_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WindowDef); i { case 0: return &v.state case 1: @@ -35719,8 +37660,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReturnStmt); i { + file_pg_query_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RangeSubselect); i { case 0: return &v.state case 1: @@ -35731,8 +37672,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PLAssignStmt); i { + file_pg_query_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RangeFunction); i { case 0: return &v.state case 1: @@ -35743,8 +37684,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterTableStmt); i { + file_pg_query_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RangeTableFunc); i { case 0: return &v.state case 1: @@ -35755,8 +37696,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterTableCmd); i { + file_pg_query_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RangeTableFuncCol); i { case 0: return &v.state case 1: @@ -35767,8 +37708,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterDomainStmt); i { + file_pg_query_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RangeTableSample); i { case 0: return &v.state case 1: @@ -35779,8 +37720,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetOperationStmt); i { + file_pg_query_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ColumnDef); i { case 0: return &v.state case 1: @@ -35791,8 +37732,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GrantStmt); i { + file_pg_query_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TableLikeClause); i { case 0: return &v.state case 1: @@ -35803,8 +37744,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GrantRoleStmt); i { + file_pg_query_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*IndexElem); i { case 0: return &v.state case 1: @@ -35815,8 +37756,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterDefaultPrivilegesStmt); i { + file_pg_query_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DefElem); i { case 0: return &v.state case 1: @@ -35827,8 +37768,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ClosePortalStmt); i { + file_pg_query_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LockingClause); i { case 0: return &v.state case 1: @@ -35839,8 +37780,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ClusterStmt); i { + file_pg_query_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*XmlSerialize); i { case 0: return &v.state case 1: @@ -35851,8 +37792,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CopyStmt); i { + file_pg_query_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PartitionElem); i { case 0: return &v.state case 1: @@ -35863,8 +37804,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateStmt); i { + file_pg_query_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PartitionSpec); i { case 0: return &v.state case 1: @@ -35875,8 +37816,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DefineStmt); i { + file_pg_query_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PartitionBoundSpec); i { case 0: return &v.state case 1: @@ -35887,8 +37828,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DropStmt); i { + file_pg_query_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PartitionRangeDatum); i { case 0: return &v.state case 1: @@ -35899,8 +37840,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TruncateStmt); i { + file_pg_query_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PartitionCmd); i { case 0: return &v.state case 1: @@ -35911,8 +37852,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CommentStmt); i { + file_pg_query_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RangeTblEntry); i { case 0: return &v.state case 1: @@ -35923,8 +37864,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FetchStmt); i { + file_pg_query_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RTEPermissionInfo); i { case 0: return &v.state case 1: @@ -35935,8 +37876,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IndexStmt); i { + file_pg_query_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RangeTblFunction); i { case 0: return &v.state case 1: @@ -35947,8 +37888,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateFunctionStmt); i { + file_pg_query_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TableSampleClause); i { case 0: return &v.state case 1: @@ -35959,8 +37900,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterFunctionStmt); i { + file_pg_query_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WithCheckOption); i { case 0: return &v.state case 1: @@ -35971,8 +37912,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DoStmt); i { + file_pg_query_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SortGroupClause); i { case 0: return &v.state case 1: @@ -35983,8 +37924,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RenameStmt); i { + file_pg_query_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GroupingSet); i { case 0: return &v.state case 1: @@ -35995,8 +37936,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RuleStmt); i { + file_pg_query_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WindowClause); i { case 0: return &v.state case 1: @@ -36007,8 +37948,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*NotifyStmt); i { + file_pg_query_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RowMarkClause); i { case 0: return &v.state case 1: @@ -36019,8 +37960,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListenStmt); i { + file_pg_query_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WithClause); i { case 0: return &v.state case 1: @@ -36031,8 +37972,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UnlistenStmt); i { + file_pg_query_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InferClause); i { case 0: return &v.state case 1: @@ -36043,8 +37984,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TransactionStmt); i { + file_pg_query_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OnConflictClause); i { case 0: return &v.state case 1: @@ -36055,8 +37996,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ViewStmt); i { + file_pg_query_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CTESearchClause); i { case 0: return &v.state case 1: @@ -36067,8 +38008,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LoadStmt); i { + file_pg_query_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CTECycleClause); i { case 0: return &v.state case 1: @@ -36079,8 +38020,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateDomainStmt); i { + file_pg_query_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CommonTableExpr); i { case 0: return &v.state case 1: @@ -36091,8 +38032,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreatedbStmt); i { + file_pg_query_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MergeWhenClause); i { case 0: return &v.state case 1: @@ -36103,8 +38044,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DropdbStmt); i { + file_pg_query_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MergeAction); i { case 0: return &v.state case 1: @@ -36115,8 +38056,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*VacuumStmt); i { + file_pg_query_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TriggerTransition); i { case 0: return &v.state case 1: @@ -36127,8 +38068,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ExplainStmt); i { + file_pg_query_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonOutput); i { case 0: return &v.state case 1: @@ -36139,8 +38080,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateTableAsStmt); i { + file_pg_query_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonKeyValue); i { case 0: return &v.state case 1: @@ -36151,8 +38092,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateSeqStmt); i { + file_pg_query_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonObjectConstructor); i { case 0: return &v.state case 1: @@ -36163,8 +38104,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterSeqStmt); i { + file_pg_query_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonArrayConstructor); i { case 0: return &v.state case 1: @@ -36175,8 +38116,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*VariableSetStmt); i { + file_pg_query_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonArrayQueryConstructor); i { case 0: return &v.state case 1: @@ -36187,8 +38128,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*VariableShowStmt); i { + file_pg_query_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonAggConstructor); i { case 0: return &v.state case 1: @@ -36199,8 +38140,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DiscardStmt); i { + file_pg_query_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonObjectAgg); i { case 0: return &v.state case 1: @@ -36211,8 +38152,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateTrigStmt); i { + file_pg_query_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*JsonArrayAgg); i { case 0: return &v.state case 1: @@ -36223,8 +38164,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreatePLangStmt); i { + file_pg_query_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RawStmt); i { case 0: return &v.state case 1: @@ -36235,8 +38176,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateRoleStmt); i { + file_pg_query_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InsertStmt); i { case 0: return &v.state case 1: @@ -36247,8 +38188,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterRoleStmt); i { + file_pg_query_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteStmt); i { case 0: return &v.state case 1: @@ -36259,8 +38200,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DropRoleStmt); i { + file_pg_query_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateStmt); i { case 0: return &v.state case 1: @@ -36271,8 +38212,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LockStmt); i { + file_pg_query_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MergeStmt); i { case 0: return &v.state case 1: @@ -36283,8 +38224,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ConstraintsSetStmt); i { + file_pg_query_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SelectStmt); i { case 0: return &v.state case 1: @@ -36295,8 +38236,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReindexStmt); i { + file_pg_query_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SetOperationStmt); i { case 0: return &v.state case 1: @@ -36307,8 +38248,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CheckPointStmt); i { + file_pg_query_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReturnStmt); i { case 0: return &v.state case 1: @@ -36319,8 +38260,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateSchemaStmt); i { + file_pg_query_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PLAssignStmt); i { case 0: return &v.state case 1: @@ -36331,8 +38272,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterDatabaseStmt); i { + file_pg_query_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateSchemaStmt); i { case 0: return &v.state case 1: @@ -36343,8 +38284,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterDatabaseRefreshCollStmt); i { + file_pg_query_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterTableStmt); i { case 0: return &v.state case 1: @@ -36355,8 +38296,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterDatabaseSetStmt); i { + file_pg_query_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaIdentityStmt); i { case 0: return &v.state case 1: @@ -36367,8 +38308,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterRoleSetStmt); i { + file_pg_query_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterTableCmd); i { case 0: return &v.state case 1: @@ -36379,8 +38320,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateConversionStmt); i { + file_pg_query_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterCollationStmt); i { case 0: return &v.state case 1: @@ -36391,8 +38332,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateCastStmt); i { + file_pg_query_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterDomainStmt); i { case 0: return &v.state case 1: @@ -36403,8 +38344,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateOpClassStmt); i { + file_pg_query_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GrantStmt); i { case 0: return &v.state case 1: @@ -36415,8 +38356,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateOpFamilyStmt); i { + file_pg_query_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ObjectWithArgs); i { case 0: return &v.state case 1: @@ -36427,8 +38368,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterOpFamilyStmt); i { + file_pg_query_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AccessPriv); i { case 0: return &v.state case 1: @@ -36439,8 +38380,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PrepareStmt); i { + file_pg_query_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GrantRoleStmt); i { case 0: return &v.state case 1: @@ -36451,8 +38392,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ExecuteStmt); i { + file_pg_query_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterDefaultPrivilegesStmt); i { case 0: return &v.state case 1: @@ -36463,8 +38404,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeallocateStmt); i { + file_pg_query_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CopyStmt); i { case 0: return &v.state case 1: @@ -36475,8 +38416,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeclareCursorStmt); i { + file_pg_query_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VariableSetStmt); i { case 0: return &v.state case 1: @@ -36487,8 +38428,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateTableSpaceStmt); i { + file_pg_query_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VariableShowStmt); i { case 0: return &v.state case 1: @@ -36499,8 +38440,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DropTableSpaceStmt); i { + file_pg_query_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateStmt); i { case 0: return &v.state case 1: @@ -36511,8 +38452,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterObjectDependsStmt); i { + file_pg_query_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Constraint); i { case 0: return &v.state case 1: @@ -36523,8 +38464,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterObjectSchemaStmt); i { + file_pg_query_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateTableSpaceStmt); i { case 0: return &v.state case 1: @@ -36535,8 +38476,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterOwnerStmt); i { + file_pg_query_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DropTableSpaceStmt); i { case 0: return &v.state case 1: @@ -36547,8 +38488,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterOperatorStmt); i { + file_pg_query_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterTableSpaceOptionsStmt); i { case 0: return &v.state case 1: @@ -36559,8 +38500,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterTypeStmt); i { + file_pg_query_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterTableMoveAllStmt); i { case 0: return &v.state case 1: @@ -36571,8 +38512,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DropOwnedStmt); i { + file_pg_query_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateExtensionStmt); i { case 0: return &v.state case 1: @@ -36583,8 +38524,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReassignOwnedStmt); i { + file_pg_query_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterExtensionStmt); i { case 0: return &v.state case 1: @@ -36595,8 +38536,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CompositeTypeStmt); i { + file_pg_query_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterExtensionContentsStmt); i { case 0: return &v.state case 1: @@ -36607,8 +38548,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateEnumStmt); i { + file_pg_query_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateFdwStmt); i { case 0: return &v.state case 1: @@ -36619,8 +38560,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateRangeStmt); i { + file_pg_query_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterFdwStmt); i { case 0: return &v.state case 1: @@ -36631,8 +38572,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterEnumStmt); i { + file_pg_query_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateForeignServerStmt); i { case 0: return &v.state case 1: @@ -36643,8 +38584,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterTSDictionaryStmt); i { + file_pg_query_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterForeignServerStmt); i { case 0: return &v.state case 1: @@ -36655,8 +38596,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterTSConfigurationStmt); i { + file_pg_query_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateForeignTableStmt); i { case 0: return &v.state case 1: @@ -36667,8 +38608,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateFdwStmt); i { + file_pg_query_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateUserMappingStmt); i { case 0: return &v.state case 1: @@ -36679,8 +38620,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterFdwStmt); i { + file_pg_query_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterUserMappingStmt); i { case 0: return &v.state case 1: @@ -36691,8 +38632,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateForeignServerStmt); i { + file_pg_query_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DropUserMappingStmt); i { case 0: return &v.state case 1: @@ -36703,8 +38644,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterForeignServerStmt); i { + file_pg_query_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImportForeignSchemaStmt); i { case 0: return &v.state case 1: @@ -36715,8 +38656,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateUserMappingStmt); i { + file_pg_query_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreatePolicyStmt); i { case 0: return &v.state case 1: @@ -36727,8 +38668,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterUserMappingStmt); i { + file_pg_query_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterPolicyStmt); i { case 0: return &v.state case 1: @@ -36739,8 +38680,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DropUserMappingStmt); i { + file_pg_query_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateAmStmt); i { case 0: return &v.state case 1: @@ -36751,8 +38692,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterTableSpaceOptionsStmt); i { + file_pg_query_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateTrigStmt); i { case 0: return &v.state case 1: @@ -36763,8 +38704,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterTableMoveAllStmt); i { + file_pg_query_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateEventTrigStmt); i { case 0: return &v.state case 1: @@ -36775,8 +38716,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SecLabelStmt); i { + file_pg_query_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterEventTrigStmt); i { case 0: return &v.state case 1: @@ -36787,8 +38728,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateForeignTableStmt); i { + file_pg_query_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreatePLangStmt); i { case 0: return &v.state case 1: @@ -36799,8 +38740,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportForeignSchemaStmt); i { + file_pg_query_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateRoleStmt); i { case 0: return &v.state case 1: @@ -36811,8 +38752,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateExtensionStmt); i { + file_pg_query_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterRoleStmt); i { case 0: return &v.state case 1: @@ -36823,8 +38764,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterExtensionStmt); i { + file_pg_query_proto_msgTypes[176].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterRoleSetStmt); i { case 0: return &v.state case 1: @@ -36835,8 +38776,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterExtensionContentsStmt); i { + file_pg_query_proto_msgTypes[177].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DropRoleStmt); i { case 0: return &v.state case 1: @@ -36847,8 +38788,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateEventTrigStmt); i { + file_pg_query_proto_msgTypes[178].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateSeqStmt); i { case 0: return &v.state case 1: @@ -36859,8 +38800,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterEventTrigStmt); i { + file_pg_query_proto_msgTypes[179].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterSeqStmt); i { case 0: return &v.state case 1: @@ -36871,8 +38812,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RefreshMatViewStmt); i { + file_pg_query_proto_msgTypes[180].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DefineStmt); i { case 0: return &v.state case 1: @@ -36883,8 +38824,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReplicaIdentityStmt); i { + file_pg_query_proto_msgTypes[181].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateDomainStmt); i { case 0: return &v.state case 1: @@ -36895,8 +38836,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterSystemStmt); i { + file_pg_query_proto_msgTypes[182].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateOpClassStmt); i { case 0: return &v.state case 1: @@ -36907,8 +38848,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreatePolicyStmt); i { + file_pg_query_proto_msgTypes[183].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateOpClassItem); i { case 0: return &v.state case 1: @@ -36919,8 +38860,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterPolicyStmt); i { + file_pg_query_proto_msgTypes[184].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateOpFamilyStmt); i { case 0: return &v.state case 1: @@ -36931,8 +38872,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateTransformStmt); i { + file_pg_query_proto_msgTypes[185].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterOpFamilyStmt); i { case 0: return &v.state case 1: @@ -36943,8 +38884,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateAmStmt); i { + file_pg_query_proto_msgTypes[186].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DropStmt); i { case 0: return &v.state case 1: @@ -36955,8 +38896,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreatePublicationStmt); i { + file_pg_query_proto_msgTypes[187].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TruncateStmt); i { case 0: return &v.state case 1: @@ -36967,8 +38908,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterPublicationStmt); i { + file_pg_query_proto_msgTypes[188].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CommentStmt); i { case 0: return &v.state case 1: @@ -36979,8 +38920,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateSubscriptionStmt); i { + file_pg_query_proto_msgTypes[189].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SecLabelStmt); i { case 0: return &v.state case 1: @@ -36991,8 +38932,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[176].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterSubscriptionStmt); i { + file_pg_query_proto_msgTypes[190].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeclareCursorStmt); i { case 0: return &v.state case 1: @@ -37003,8 +38944,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[177].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DropSubscriptionStmt); i { + file_pg_query_proto_msgTypes[191].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ClosePortalStmt); i { case 0: return &v.state case 1: @@ -37015,8 +38956,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[178].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateStatsStmt); i { + file_pg_query_proto_msgTypes[192].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FetchStmt); i { case 0: return &v.state case 1: @@ -37027,8 +38968,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[179].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterCollationStmt); i { + file_pg_query_proto_msgTypes[193].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*IndexStmt); i { case 0: return &v.state case 1: @@ -37039,8 +38980,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[180].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CallStmt); i { + file_pg_query_proto_msgTypes[194].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateStatsStmt); i { case 0: return &v.state case 1: @@ -37051,8 +38992,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[181].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterStatsStmt); i { + file_pg_query_proto_msgTypes[195].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*StatsElem); i { case 0: return &v.state case 1: @@ -37063,8 +39004,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[182].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*A_Expr); i { + file_pg_query_proto_msgTypes[196].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterStatsStmt); i { case 0: return &v.state case 1: @@ -37075,8 +39016,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[183].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ColumnRef); i { + file_pg_query_proto_msgTypes[197].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateFunctionStmt); i { case 0: return &v.state case 1: @@ -37087,8 +39028,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[184].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ParamRef); i { + file_pg_query_proto_msgTypes[198].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FunctionParameter); i { case 0: return &v.state case 1: @@ -37099,8 +39040,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[185].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FuncCall); i { + file_pg_query_proto_msgTypes[199].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterFunctionStmt); i { case 0: return &v.state case 1: @@ -37111,8 +39052,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[186].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*A_Star); i { + file_pg_query_proto_msgTypes[200].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DoStmt); i { case 0: return &v.state case 1: @@ -37123,8 +39064,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[187].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*A_Indices); i { + file_pg_query_proto_msgTypes[201].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InlineCodeBlock); i { case 0: return &v.state case 1: @@ -37135,8 +39076,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[188].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*A_Indirection); i { + file_pg_query_proto_msgTypes[202].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CallStmt); i { case 0: return &v.state case 1: @@ -37147,8 +39088,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[189].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*A_ArrayExpr); i { + file_pg_query_proto_msgTypes[203].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CallContext); i { case 0: return &v.state case 1: @@ -37159,8 +39100,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[190].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResTarget); i { + file_pg_query_proto_msgTypes[204].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RenameStmt); i { case 0: return &v.state case 1: @@ -37171,8 +39112,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[191].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MultiAssignRef); i { + file_pg_query_proto_msgTypes[205].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterObjectDependsStmt); i { case 0: return &v.state case 1: @@ -37183,8 +39124,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[192].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TypeCast); i { + file_pg_query_proto_msgTypes[206].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterObjectSchemaStmt); i { case 0: return &v.state case 1: @@ -37195,8 +39136,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[193].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CollateClause); i { + file_pg_query_proto_msgTypes[207].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterOwnerStmt); i { case 0: return &v.state case 1: @@ -37207,8 +39148,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[194].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SortBy); i { + file_pg_query_proto_msgTypes[208].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterOperatorStmt); i { case 0: return &v.state case 1: @@ -37219,8 +39160,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[195].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WindowDef); i { + file_pg_query_proto_msgTypes[209].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterTypeStmt); i { case 0: return &v.state case 1: @@ -37231,8 +39172,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[196].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RangeSubselect); i { + file_pg_query_proto_msgTypes[210].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RuleStmt); i { case 0: return &v.state case 1: @@ -37243,8 +39184,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[197].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RangeFunction); i { + file_pg_query_proto_msgTypes[211].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*NotifyStmt); i { case 0: return &v.state case 1: @@ -37255,8 +39196,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[198].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RangeTableSample); i { + file_pg_query_proto_msgTypes[212].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListenStmt); i { case 0: return &v.state case 1: @@ -37267,8 +39208,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[199].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RangeTableFunc); i { + file_pg_query_proto_msgTypes[213].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UnlistenStmt); i { case 0: return &v.state case 1: @@ -37279,8 +39220,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[200].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RangeTableFuncCol); i { + file_pg_query_proto_msgTypes[214].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TransactionStmt); i { case 0: return &v.state case 1: @@ -37291,8 +39232,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[201].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TypeName); i { + file_pg_query_proto_msgTypes[215].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CompositeTypeStmt); i { case 0: return &v.state case 1: @@ -37303,8 +39244,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[202].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ColumnDef); i { + file_pg_query_proto_msgTypes[216].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateEnumStmt); i { case 0: return &v.state case 1: @@ -37315,8 +39256,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[203].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IndexElem); i { + file_pg_query_proto_msgTypes[217].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateRangeStmt); i { case 0: return &v.state case 1: @@ -37327,8 +39268,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[204].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StatsElem); i { + file_pg_query_proto_msgTypes[218].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterEnumStmt); i { case 0: return &v.state case 1: @@ -37339,8 +39280,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[205].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Constraint); i { + file_pg_query_proto_msgTypes[219].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ViewStmt); i { case 0: return &v.state case 1: @@ -37351,8 +39292,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[206].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DefElem); i { + file_pg_query_proto_msgTypes[220].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LoadStmt); i { case 0: return &v.state case 1: @@ -37363,8 +39304,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[207].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RangeTblEntry); i { + file_pg_query_proto_msgTypes[221].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreatedbStmt); i { case 0: return &v.state case 1: @@ -37375,8 +39316,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[208].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RangeTblFunction); i { + file_pg_query_proto_msgTypes[222].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterDatabaseStmt); i { case 0: return &v.state case 1: @@ -37387,8 +39328,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[209].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TableSampleClause); i { + file_pg_query_proto_msgTypes[223].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterDatabaseRefreshCollStmt); i { case 0: return &v.state case 1: @@ -37399,8 +39340,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[210].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WithCheckOption); i { + file_pg_query_proto_msgTypes[224].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterDatabaseSetStmt); i { case 0: return &v.state case 1: @@ -37411,8 +39352,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[211].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SortGroupClause); i { + file_pg_query_proto_msgTypes[225].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DropdbStmt); i { case 0: return &v.state case 1: @@ -37423,8 +39364,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[212].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupingSet); i { + file_pg_query_proto_msgTypes[226].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterSystemStmt); i { case 0: return &v.state case 1: @@ -37435,8 +39376,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[213].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WindowClause); i { + file_pg_query_proto_msgTypes[227].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ClusterStmt); i { case 0: return &v.state case 1: @@ -37447,8 +39388,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[214].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ObjectWithArgs); i { + file_pg_query_proto_msgTypes[228].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VacuumStmt); i { case 0: return &v.state case 1: @@ -37459,8 +39400,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[215].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AccessPriv); i { + file_pg_query_proto_msgTypes[229].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VacuumRelation); i { case 0: return &v.state case 1: @@ -37471,8 +39412,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[216].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateOpClassItem); i { + file_pg_query_proto_msgTypes[230].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ExplainStmt); i { case 0: return &v.state case 1: @@ -37483,8 +39424,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[217].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TableLikeClause); i { + file_pg_query_proto_msgTypes[231].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateTableAsStmt); i { case 0: return &v.state case 1: @@ -37495,8 +39436,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[218].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FunctionParameter); i { + file_pg_query_proto_msgTypes[232].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshMatViewStmt); i { case 0: return &v.state case 1: @@ -37507,8 +39448,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[219].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LockingClause); i { + file_pg_query_proto_msgTypes[233].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CheckPointStmt); i { case 0: return &v.state case 1: @@ -37519,8 +39460,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[220].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RowMarkClause); i { + file_pg_query_proto_msgTypes[234].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiscardStmt); i { case 0: return &v.state case 1: @@ -37531,8 +39472,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[221].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*XmlSerialize); i { + file_pg_query_proto_msgTypes[235].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LockStmt); i { case 0: return &v.state case 1: @@ -37543,8 +39484,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[222].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WithClause); i { + file_pg_query_proto_msgTypes[236].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ConstraintsSetStmt); i { case 0: return &v.state case 1: @@ -37555,8 +39496,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[223].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InferClause); i { + file_pg_query_proto_msgTypes[237].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReindexStmt); i { case 0: return &v.state case 1: @@ -37567,8 +39508,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[224].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OnConflictClause); i { + file_pg_query_proto_msgTypes[238].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateConversionStmt); i { case 0: return &v.state case 1: @@ -37579,8 +39520,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[225].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CTESearchClause); i { + file_pg_query_proto_msgTypes[239].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateCastStmt); i { case 0: return &v.state case 1: @@ -37591,8 +39532,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[226].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CTECycleClause); i { + file_pg_query_proto_msgTypes[240].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateTransformStmt); i { case 0: return &v.state case 1: @@ -37603,8 +39544,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[227].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CommonTableExpr); i { + file_pg_query_proto_msgTypes[241].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PrepareStmt); i { case 0: return &v.state case 1: @@ -37615,8 +39556,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[228].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MergeWhenClause); i { + file_pg_query_proto_msgTypes[242].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ExecuteStmt); i { case 0: return &v.state case 1: @@ -37627,8 +39568,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[229].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RoleSpec); i { + file_pg_query_proto_msgTypes[243].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeallocateStmt); i { case 0: return &v.state case 1: @@ -37639,8 +39580,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[230].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TriggerTransition); i { + file_pg_query_proto_msgTypes[244].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DropOwnedStmt); i { case 0: return &v.state case 1: @@ -37651,8 +39592,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[231].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PartitionElem); i { + file_pg_query_proto_msgTypes[245].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReassignOwnedStmt); i { case 0: return &v.state case 1: @@ -37663,8 +39604,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[232].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PartitionSpec); i { + file_pg_query_proto_msgTypes[246].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterTSDictionaryStmt); i { case 0: return &v.state case 1: @@ -37675,8 +39616,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[233].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PartitionBoundSpec); i { + file_pg_query_proto_msgTypes[247].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterTSConfigurationStmt); i { case 0: return &v.state case 1: @@ -37687,8 +39628,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[234].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PartitionRangeDatum); i { + file_pg_query_proto_msgTypes[248].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublicationTable); i { case 0: return &v.state case 1: @@ -37699,8 +39640,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[235].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PartitionCmd); i { + file_pg_query_proto_msgTypes[249].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublicationObjSpec); i { case 0: return &v.state case 1: @@ -37711,8 +39652,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[236].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*VacuumRelation); i { + file_pg_query_proto_msgTypes[250].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreatePublicationStmt); i { case 0: return &v.state case 1: @@ -37723,8 +39664,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[237].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublicationObjSpec); i { + file_pg_query_proto_msgTypes[251].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterPublicationStmt); i { case 0: return &v.state case 1: @@ -37735,8 +39676,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[238].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublicationTable); i { + file_pg_query_proto_msgTypes[252].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateSubscriptionStmt); i { case 0: return &v.state case 1: @@ -37747,8 +39688,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[239].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InlineCodeBlock); i { + file_pg_query_proto_msgTypes[253].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AlterSubscriptionStmt); i { case 0: return &v.state case 1: @@ -37759,8 +39700,8 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[240].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CallContext); i { + file_pg_query_proto_msgTypes[254].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DropSubscriptionStmt); i { case 0: return &v.state case 1: @@ -37771,7 +39712,7 @@ func file_pg_query_proto_init() { return nil } } - file_pg_query_proto_msgTypes[241].Exporter = func(v interface{}, i int) interface{} { + file_pg_query_proto_msgTypes[255].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ScanToken); i { case 0: return &v.state @@ -37788,6 +39729,7 @@ func file_pg_query_proto_init() { (*Node_Alias)(nil), (*Node_RangeVar)(nil), (*Node_TableFunc)(nil), + (*Node_IntoClause)(nil), (*Node_Var)(nil), (*Node_Param)(nil), (*Node_Aggref)(nil), @@ -37821,6 +39763,11 @@ func file_pg_query_proto_init() { (*Node_MinMaxExpr)(nil), (*Node_SqlvalueFunction)(nil), (*Node_XmlExpr)(nil), + (*Node_JsonFormat)(nil), + (*Node_JsonReturning)(nil), + (*Node_JsonValueExpr)(nil), + (*Node_JsonConstructorExpr)(nil), + (*Node_JsonIsPredicate)(nil), (*Node_NullTest)(nil), (*Node_BooleanTest)(nil), (*Node_CoerceToDomain)(nil), @@ -37834,186 +39781,194 @@ func file_pg_query_proto_init() { (*Node_JoinExpr)(nil), (*Node_FromExpr)(nil), (*Node_OnConflictExpr)(nil), - (*Node_IntoClause)(nil), + (*Node_Query)(nil), + (*Node_TypeName)(nil), + (*Node_ColumnRef)(nil), + (*Node_ParamRef)(nil), + (*Node_AExpr)(nil), + (*Node_TypeCast)(nil), + (*Node_CollateClause)(nil), + (*Node_RoleSpec)(nil), + (*Node_FuncCall)(nil), + (*Node_AStar)(nil), + (*Node_AIndices)(nil), + (*Node_AIndirection)(nil), + (*Node_AArrayExpr)(nil), + (*Node_ResTarget)(nil), + (*Node_MultiAssignRef)(nil), + (*Node_SortBy)(nil), + (*Node_WindowDef)(nil), + (*Node_RangeSubselect)(nil), + (*Node_RangeFunction)(nil), + (*Node_RangeTableFunc)(nil), + (*Node_RangeTableFuncCol)(nil), + (*Node_RangeTableSample)(nil), + (*Node_ColumnDef)(nil), + (*Node_TableLikeClause)(nil), + (*Node_IndexElem)(nil), + (*Node_DefElem)(nil), + (*Node_LockingClause)(nil), + (*Node_XmlSerialize)(nil), + (*Node_PartitionElem)(nil), + (*Node_PartitionSpec)(nil), + (*Node_PartitionBoundSpec)(nil), + (*Node_PartitionRangeDatum)(nil), + (*Node_PartitionCmd)(nil), + (*Node_RangeTblEntry)(nil), + (*Node_RtepermissionInfo)(nil), + (*Node_RangeTblFunction)(nil), + (*Node_TableSampleClause)(nil), + (*Node_WithCheckOption)(nil), + (*Node_SortGroupClause)(nil), + (*Node_GroupingSet)(nil), + (*Node_WindowClause)(nil), + (*Node_RowMarkClause)(nil), + (*Node_WithClause)(nil), + (*Node_InferClause)(nil), + (*Node_OnConflictClause)(nil), + (*Node_CtesearchClause)(nil), + (*Node_CtecycleClause)(nil), + (*Node_CommonTableExpr)(nil), + (*Node_MergeWhenClause)(nil), (*Node_MergeAction)(nil), + (*Node_TriggerTransition)(nil), + (*Node_JsonOutput)(nil), + (*Node_JsonKeyValue)(nil), + (*Node_JsonObjectConstructor)(nil), + (*Node_JsonArrayConstructor)(nil), + (*Node_JsonArrayQueryConstructor)(nil), + (*Node_JsonAggConstructor)(nil), + (*Node_JsonObjectAgg)(nil), + (*Node_JsonArrayAgg)(nil), (*Node_RawStmt)(nil), - (*Node_Query)(nil), (*Node_InsertStmt)(nil), (*Node_DeleteStmt)(nil), (*Node_UpdateStmt)(nil), (*Node_MergeStmt)(nil), (*Node_SelectStmt)(nil), + (*Node_SetOperationStmt)(nil), (*Node_ReturnStmt)(nil), (*Node_PlassignStmt)(nil), + (*Node_CreateSchemaStmt)(nil), (*Node_AlterTableStmt)(nil), + (*Node_ReplicaIdentityStmt)(nil), (*Node_AlterTableCmd)(nil), + (*Node_AlterCollationStmt)(nil), (*Node_AlterDomainStmt)(nil), - (*Node_SetOperationStmt)(nil), (*Node_GrantStmt)(nil), + (*Node_ObjectWithArgs)(nil), + (*Node_AccessPriv)(nil), (*Node_GrantRoleStmt)(nil), (*Node_AlterDefaultPrivilegesStmt)(nil), - (*Node_ClosePortalStmt)(nil), - (*Node_ClusterStmt)(nil), (*Node_CopyStmt)(nil), + (*Node_VariableSetStmt)(nil), + (*Node_VariableShowStmt)(nil), (*Node_CreateStmt)(nil), + (*Node_Constraint)(nil), + (*Node_CreateTableSpaceStmt)(nil), + (*Node_DropTableSpaceStmt)(nil), + (*Node_AlterTableSpaceOptionsStmt)(nil), + (*Node_AlterTableMoveAllStmt)(nil), + (*Node_CreateExtensionStmt)(nil), + (*Node_AlterExtensionStmt)(nil), + (*Node_AlterExtensionContentsStmt)(nil), + (*Node_CreateFdwStmt)(nil), + (*Node_AlterFdwStmt)(nil), + (*Node_CreateForeignServerStmt)(nil), + (*Node_AlterForeignServerStmt)(nil), + (*Node_CreateForeignTableStmt)(nil), + (*Node_CreateUserMappingStmt)(nil), + (*Node_AlterUserMappingStmt)(nil), + (*Node_DropUserMappingStmt)(nil), + (*Node_ImportForeignSchemaStmt)(nil), + (*Node_CreatePolicyStmt)(nil), + (*Node_AlterPolicyStmt)(nil), + (*Node_CreateAmStmt)(nil), + (*Node_CreateTrigStmt)(nil), + (*Node_CreateEventTrigStmt)(nil), + (*Node_AlterEventTrigStmt)(nil), + (*Node_CreatePlangStmt)(nil), + (*Node_CreateRoleStmt)(nil), + (*Node_AlterRoleStmt)(nil), + (*Node_AlterRoleSetStmt)(nil), + (*Node_DropRoleStmt)(nil), + (*Node_CreateSeqStmt)(nil), + (*Node_AlterSeqStmt)(nil), (*Node_DefineStmt)(nil), + (*Node_CreateDomainStmt)(nil), + (*Node_CreateOpClassStmt)(nil), + (*Node_CreateOpClassItem)(nil), + (*Node_CreateOpFamilyStmt)(nil), + (*Node_AlterOpFamilyStmt)(nil), (*Node_DropStmt)(nil), (*Node_TruncateStmt)(nil), (*Node_CommentStmt)(nil), + (*Node_SecLabelStmt)(nil), + (*Node_DeclareCursorStmt)(nil), + (*Node_ClosePortalStmt)(nil), (*Node_FetchStmt)(nil), (*Node_IndexStmt)(nil), + (*Node_CreateStatsStmt)(nil), + (*Node_StatsElem)(nil), + (*Node_AlterStatsStmt)(nil), (*Node_CreateFunctionStmt)(nil), + (*Node_FunctionParameter)(nil), (*Node_AlterFunctionStmt)(nil), (*Node_DoStmt)(nil), + (*Node_InlineCodeBlock)(nil), + (*Node_CallStmt)(nil), + (*Node_CallContext)(nil), (*Node_RenameStmt)(nil), + (*Node_AlterObjectDependsStmt)(nil), + (*Node_AlterObjectSchemaStmt)(nil), + (*Node_AlterOwnerStmt)(nil), + (*Node_AlterOperatorStmt)(nil), + (*Node_AlterTypeStmt)(nil), (*Node_RuleStmt)(nil), (*Node_NotifyStmt)(nil), (*Node_ListenStmt)(nil), (*Node_UnlistenStmt)(nil), (*Node_TransactionStmt)(nil), + (*Node_CompositeTypeStmt)(nil), + (*Node_CreateEnumStmt)(nil), + (*Node_CreateRangeStmt)(nil), + (*Node_AlterEnumStmt)(nil), (*Node_ViewStmt)(nil), (*Node_LoadStmt)(nil), - (*Node_CreateDomainStmt)(nil), (*Node_CreatedbStmt)(nil), + (*Node_AlterDatabaseStmt)(nil), + (*Node_AlterDatabaseRefreshCollStmt)(nil), + (*Node_AlterDatabaseSetStmt)(nil), (*Node_DropdbStmt)(nil), + (*Node_AlterSystemStmt)(nil), + (*Node_ClusterStmt)(nil), (*Node_VacuumStmt)(nil), + (*Node_VacuumRelation)(nil), (*Node_ExplainStmt)(nil), (*Node_CreateTableAsStmt)(nil), - (*Node_CreateSeqStmt)(nil), - (*Node_AlterSeqStmt)(nil), - (*Node_VariableSetStmt)(nil), - (*Node_VariableShowStmt)(nil), + (*Node_RefreshMatViewStmt)(nil), + (*Node_CheckPointStmt)(nil), (*Node_DiscardStmt)(nil), - (*Node_CreateTrigStmt)(nil), - (*Node_CreatePlangStmt)(nil), - (*Node_CreateRoleStmt)(nil), - (*Node_AlterRoleStmt)(nil), - (*Node_DropRoleStmt)(nil), (*Node_LockStmt)(nil), (*Node_ConstraintsSetStmt)(nil), (*Node_ReindexStmt)(nil), - (*Node_CheckPointStmt)(nil), - (*Node_CreateSchemaStmt)(nil), - (*Node_AlterDatabaseStmt)(nil), - (*Node_AlterDatabaseRefreshCollStmt)(nil), - (*Node_AlterDatabaseSetStmt)(nil), - (*Node_AlterRoleSetStmt)(nil), (*Node_CreateConversionStmt)(nil), (*Node_CreateCastStmt)(nil), - (*Node_CreateOpClassStmt)(nil), - (*Node_CreateOpFamilyStmt)(nil), - (*Node_AlterOpFamilyStmt)(nil), + (*Node_CreateTransformStmt)(nil), (*Node_PrepareStmt)(nil), (*Node_ExecuteStmt)(nil), (*Node_DeallocateStmt)(nil), - (*Node_DeclareCursorStmt)(nil), - (*Node_CreateTableSpaceStmt)(nil), - (*Node_DropTableSpaceStmt)(nil), - (*Node_AlterObjectDependsStmt)(nil), - (*Node_AlterObjectSchemaStmt)(nil), - (*Node_AlterOwnerStmt)(nil), - (*Node_AlterOperatorStmt)(nil), - (*Node_AlterTypeStmt)(nil), (*Node_DropOwnedStmt)(nil), (*Node_ReassignOwnedStmt)(nil), - (*Node_CompositeTypeStmt)(nil), - (*Node_CreateEnumStmt)(nil), - (*Node_CreateRangeStmt)(nil), - (*Node_AlterEnumStmt)(nil), (*Node_AlterTsdictionaryStmt)(nil), (*Node_AlterTsconfigurationStmt)(nil), - (*Node_CreateFdwStmt)(nil), - (*Node_AlterFdwStmt)(nil), - (*Node_CreateForeignServerStmt)(nil), - (*Node_AlterForeignServerStmt)(nil), - (*Node_CreateUserMappingStmt)(nil), - (*Node_AlterUserMappingStmt)(nil), - (*Node_DropUserMappingStmt)(nil), - (*Node_AlterTableSpaceOptionsStmt)(nil), - (*Node_AlterTableMoveAllStmt)(nil), - (*Node_SecLabelStmt)(nil), - (*Node_CreateForeignTableStmt)(nil), - (*Node_ImportForeignSchemaStmt)(nil), - (*Node_CreateExtensionStmt)(nil), - (*Node_AlterExtensionStmt)(nil), - (*Node_AlterExtensionContentsStmt)(nil), - (*Node_CreateEventTrigStmt)(nil), - (*Node_AlterEventTrigStmt)(nil), - (*Node_RefreshMatViewStmt)(nil), - (*Node_ReplicaIdentityStmt)(nil), - (*Node_AlterSystemStmt)(nil), - (*Node_CreatePolicyStmt)(nil), - (*Node_AlterPolicyStmt)(nil), - (*Node_CreateTransformStmt)(nil), - (*Node_CreateAmStmt)(nil), + (*Node_PublicationTable)(nil), + (*Node_PublicationObjSpec)(nil), (*Node_CreatePublicationStmt)(nil), (*Node_AlterPublicationStmt)(nil), (*Node_CreateSubscriptionStmt)(nil), (*Node_AlterSubscriptionStmt)(nil), (*Node_DropSubscriptionStmt)(nil), - (*Node_CreateStatsStmt)(nil), - (*Node_AlterCollationStmt)(nil), - (*Node_CallStmt)(nil), - (*Node_AlterStatsStmt)(nil), - (*Node_AExpr)(nil), - (*Node_ColumnRef)(nil), - (*Node_ParamRef)(nil), - (*Node_FuncCall)(nil), - (*Node_AStar)(nil), - (*Node_AIndices)(nil), - (*Node_AIndirection)(nil), - (*Node_AArrayExpr)(nil), - (*Node_ResTarget)(nil), - (*Node_MultiAssignRef)(nil), - (*Node_TypeCast)(nil), - (*Node_CollateClause)(nil), - (*Node_SortBy)(nil), - (*Node_WindowDef)(nil), - (*Node_RangeSubselect)(nil), - (*Node_RangeFunction)(nil), - (*Node_RangeTableSample)(nil), - (*Node_RangeTableFunc)(nil), - (*Node_RangeTableFuncCol)(nil), - (*Node_TypeName)(nil), - (*Node_ColumnDef)(nil), - (*Node_IndexElem)(nil), - (*Node_StatsElem)(nil), - (*Node_Constraint)(nil), - (*Node_DefElem)(nil), - (*Node_RangeTblEntry)(nil), - (*Node_RangeTblFunction)(nil), - (*Node_TableSampleClause)(nil), - (*Node_WithCheckOption)(nil), - (*Node_SortGroupClause)(nil), - (*Node_GroupingSet)(nil), - (*Node_WindowClause)(nil), - (*Node_ObjectWithArgs)(nil), - (*Node_AccessPriv)(nil), - (*Node_CreateOpClassItem)(nil), - (*Node_TableLikeClause)(nil), - (*Node_FunctionParameter)(nil), - (*Node_LockingClause)(nil), - (*Node_RowMarkClause)(nil), - (*Node_XmlSerialize)(nil), - (*Node_WithClause)(nil), - (*Node_InferClause)(nil), - (*Node_OnConflictClause)(nil), - (*Node_CtesearchClause)(nil), - (*Node_CtecycleClause)(nil), - (*Node_CommonTableExpr)(nil), - (*Node_MergeWhenClause)(nil), - (*Node_RoleSpec)(nil), - (*Node_TriggerTransition)(nil), - (*Node_PartitionElem)(nil), - (*Node_PartitionSpec)(nil), - (*Node_PartitionBoundSpec)(nil), - (*Node_PartitionRangeDatum)(nil), - (*Node_PartitionCmd)(nil), - (*Node_VacuumRelation)(nil), - (*Node_PublicationObjSpec)(nil), - (*Node_PublicationTable)(nil), - (*Node_InlineCodeBlock)(nil), - (*Node_CallContext)(nil), (*Node_Integer)(nil), (*Node_Float)(nil), (*Node_Boolean)(nil), @@ -38036,8 +39991,8 @@ func file_pg_query_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pg_query_proto_rawDesc, - NumEnums: 59, - NumMessages: 242, + NumEnums: 64, + NumMessages: 256, NumExtensions: 0, NumServices: 0, }, diff --git a/split_test.go b/split_test.go index 919f266c..6b2a8f65 100644 --- a/split_test.go +++ b/split_test.go @@ -6,7 +6,7 @@ package pg_query_test import ( "testing" - pg_query "github.com/pganalyze/pg_query_go/v4" + pg_query "github.com/pganalyze/pg_query_go/v5" ) var splitTests = []struct {